Snap for 6157194 from bff90e1be8eb06c56db1ccd693f76b384e1b8288 to r-keystone-qcom-release
Change-Id: Id67fd6ad692dce07c018e1664e1265d41ad5f5c7
diff --git a/codec2/Android.bp b/codec2/Android.bp
deleted file mode 100644
index 9addc79..0000000
--- a/codec2/Android.bp
+++ /dev/null
@@ -1,42 +0,0 @@
-cc_library_shared {
- name: "libstagefright_codec2",
- vendor_available: true,
-
- srcs: ["C2.cpp"],
-
- cflags: [
- "-Wall",
- "-Werror",
- ],
-
- include_dirs: [
- "frameworks/native/include/media/hardware",
- ],
-
- export_include_dirs: [
- "include",
- ],
-
- header_libs: [
- "libhardware_headers",
- "libutils_headers",
- ],
-
- export_header_lib_headers: [
- "libhardware_headers",
- "libutils_headers",
- ],
-
- sanitize: {
- misc_undefined: [
- "unsigned-integer-overflow",
- "signed-integer-overflow",
- ],
- cfi: false, // true,
- diag: {
- cfi: false, // true,
- },
- },
-
- ldflags: ["-Wl,-Bsymbolic"],
-}
diff --git a/codec2/C2.cpp b/codec2/C2.cpp
deleted file mode 100644
index 359d4e5..0000000
--- a/codec2/C2.cpp
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <C2.h>
-#include <C2Buffer.h>
-#include <C2Component.h>
-#include <C2Config.h>
-#include <C2Param.h>
-#include <C2ParamDef.h>
-#include <C2Work.h>
-
-/**
- * There is nothing here yet. This library is built to see what symbols and methods get
- * defined as part of the API include files.
- *
- * Going forward, the Codec2 library will contain utility methods that are useful for
- * Codec2 clients.
- */
-
-
diff --git a/codec2/faultinjection/Android.bp b/codec2/faultinjection/Android.bp
deleted file mode 100644
index ef7871e..0000000
--- a/codec2/faultinjection/Android.bp
+++ /dev/null
@@ -1,29 +0,0 @@
-cc_library_shared {
- name: "libc2_component_wrapper",
- vendor_available: true,
-
- srcs: [
- "C2ComponentWrapper.cpp",
- "SimpleMethodState.cpp",
- ],
-
- shared_libs: [
- "libcutils",
- "liblog",
- "libstagefright_codec2",
- "libstagefright_codec2_vndk",
- "libstagefright_foundation",
- "libutils",
- ],
-
- sanitize: {
- misc_undefined: [
- "unsigned-integer-overflow",
- "signed-integer-overflow",
- ],
- cfi: true,
- },
-
- ldflags: ["-Wl,-Bsymbolic"],
-}
-
diff --git a/codec2/faultinjection/C2ComponentWrapper.cpp b/codec2/faultinjection/C2ComponentWrapper.cpp
deleted file mode 100644
index c45f8bf..0000000
--- a/codec2/faultinjection/C2ComponentWrapper.cpp
+++ /dev/null
@@ -1,129 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#define LOG_NDEBUG 0
-#define LOG_TAG "C2ComponentWrapper"
-
-#include <chrono>
-#include <functional>
-#include <thread>
-
-#include <C2ComponentWrapper.h>
-#include <C2Config.h>
-#include <C2PlatformSupport.h>
-
-namespace android {
-
-namespace {
-
-using namespace std::chrono_literals;
-
-c2_status_t WrapSimpleMethod(
- std::function<c2_status_t(void)> op, const SimpleMethodState &state) {
- c2_status_t result = C2_OK;
- switch (state.getMode()) {
- case SimpleMethodState::EXECUTE:
- result = op();
- break;
- case SimpleMethodState::NO_OP:
- break;
- case SimpleMethodState::HANG:
- while (true) {
- std::this_thread::sleep_for(1s);
- }
- break;
- }
- (void)state.overrideResult(&result);
- return result;
-}
-
-} // namespace
-
-C2ComponentWrapper::Injecter::Injecter(C2ComponentWrapper *thiz) : mThiz(thiz) {}
-
-SimpleMethodState::Injecter C2ComponentWrapper::Injecter::start() {
- return SimpleMethodState::Injecter(&mThiz->mStartState);
-}
-
-C2ComponentWrapper::Listener::Listener(
- const std::shared_ptr<C2Component::Listener> &listener) : mListener(listener) {}
-
-void C2ComponentWrapper::Listener::onWorkDone_nb(std::weak_ptr<C2Component> component,
- std::list<std::unique_ptr<C2Work>> workItems) {
- mListener->onWorkDone_nb(component, std::move(workItems));
-}
-
-void C2ComponentWrapper::Listener::onTripped_nb(std::weak_ptr<C2Component> component,
- std::vector<std::shared_ptr<C2SettingResult>> settingResult) {
- mListener->onTripped_nb(component,settingResult);
-}
-
-void C2ComponentWrapper::Listener::onError_nb(
- std::weak_ptr<C2Component> component, uint32_t errorCode) {
- mListener->onError_nb(component, errorCode);
-}
-
-C2ComponentWrapper::C2ComponentWrapper(
- const std::shared_ptr<C2Component> &comp) : mComp(comp) {}
-
-c2_status_t C2ComponentWrapper::setListener_vb(
- const std::shared_ptr<C2Component::Listener> &listener, c2_blocking_t mayBlock) {
- mListener = std::make_shared<Listener>(listener);
- return mComp->setListener_vb(mListener, mayBlock);
-}
-
-c2_status_t C2ComponentWrapper::queue_nb(std::list<std::unique_ptr<C2Work>>* const items) {
- return mComp->queue_nb(items);
-}
-
-c2_status_t C2ComponentWrapper::announce_nb(const std::vector<C2WorkOutline> &items) {
- return mComp->announce_nb(items);
-}
-
-c2_status_t C2ComponentWrapper::flush_sm(
- C2Component::flush_mode_t mode, std::list<std::unique_ptr<C2Work>>* const flushedWork) {
- return mComp->flush_sm(mode, flushedWork);
-}
-
-c2_status_t C2ComponentWrapper::drain_nb(C2Component::drain_mode_t mode) {
- return mComp->drain_nb(mode);
-}
-
-c2_status_t C2ComponentWrapper::start() {
- return WrapSimpleMethod([this] { return mComp->start(); }, mStartState);
-}
-
-c2_status_t C2ComponentWrapper::stop() {
- return mComp->stop();
-}
-
-c2_status_t C2ComponentWrapper::reset() {
- return mComp->reset();
-}
-
-c2_status_t C2ComponentWrapper::release() {
- return mComp->release();
-}
-
-std::shared_ptr<C2ComponentInterface> C2ComponentWrapper::intf(){
- return mComp->intf();
-}
-
-C2ComponentWrapper::Injecter C2ComponentWrapper::inject() {
- return Injecter(this);
-}
-
-} // namespace android
diff --git a/codec2/faultinjection/C2ComponentWrapper.h b/codec2/faultinjection/C2ComponentWrapper.h
deleted file mode 100644
index 737350d..0000000
--- a/codec2/faultinjection/C2ComponentWrapper.h
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2_COMPONENT_WRAPPER_H_
-#define C2_COMPONENT_WRAPPER_H_
-
-#include <C2Component.h>
-
-#include "SimpleMethodState.h"
-
-namespace android {
-
-/**
- * Creates a Wrapper around the class C2Component and its methods. The wrapper is used to
- * simulate errors in the android media components by fault injection technique.
- * This is done to check how the framework handles the error situation.
- */
-class C2ComponentWrapper
- : public C2Component, public std::enable_shared_from_this<C2ComponentWrapper> {
-public:
- class Injecter {
- public:
- explicit Injecter(C2ComponentWrapper *thiz);
-
- SimpleMethodState::Injecter start();
- private:
- C2ComponentWrapper *const mThiz;
- };
-
- /**
- * A wrapper around the listener class inside C2Component class.
- */
- class Listener : public C2Component::Listener {
- public:
- explicit Listener(const std::shared_ptr<C2Component::Listener> &listener);
- virtual ~Listener() = default;
-
- void onWorkDone_nb(std::weak_ptr<C2Component> component,
- std::list<std::unique_ptr<C2Work>> workItems) override;
- void onTripped_nb(std::weak_ptr<C2Component> component,
- std::vector<std::shared_ptr<C2SettingResult>> settingResult) override;
- void onError_nb(std::weak_ptr<C2Component> component, uint32_t errorCode) override;
-
- private:
- std::shared_ptr<C2Component::Listener> mListener;
- };
-
- explicit C2ComponentWrapper(const std::shared_ptr<C2Component> &comp);
- virtual ~C2ComponentWrapper() = default;
-
- virtual c2_status_t setListener_vb(
- const std::shared_ptr<C2Component::Listener> &listener,
- c2_blocking_t mayBlock) override;
- virtual c2_status_t queue_nb(std::list<std::unique_ptr<C2Work>>* const items) override;
- virtual c2_status_t announce_nb(const std::vector<C2WorkOutline> &items) override;
- virtual c2_status_t flush_sm(
- flush_mode_t mode, std::list<std::unique_ptr<C2Work>>* const flushedWork) override;
- virtual c2_status_t drain_nb(drain_mode_t mode) override;
- virtual c2_status_t start() override;
- virtual c2_status_t stop() override;
- virtual c2_status_t reset() override;
- virtual c2_status_t release() override;
- virtual std::shared_ptr<C2ComponentInterface> intf() override;
-
- Injecter inject();
-
-private:
- std::shared_ptr<Listener> mListener;
- std::shared_ptr<C2Component> mComp;
-
- SimpleMethodState mStartState;
-};
-
-} // namespace android
-
-#endif // C2_COMPONENT_WRAPPER_H_
diff --git a/codec2/faultinjection/SimpleMethodState.cpp b/codec2/faultinjection/SimpleMethodState.cpp
deleted file mode 100644
index 179d64e..0000000
--- a/codec2/faultinjection/SimpleMethodState.cpp
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#define LOG_NDEBUG 0
-#define LOG_TAG "SimpleMethodState"
-#include <log/log.h>
-
-#include "SimpleMethodState.h"
-
-namespace android {
-
-SimpleMethodState::Injecter::Injecter(SimpleMethodState *thiz) : mThiz(thiz) {}
-
-void SimpleMethodState::Injecter::hang() {
- mThiz->mMode = HANG;
-}
-
-void SimpleMethodState::Injecter::fail(c2_status_t err, bool execute) {
- mThiz->mMode = execute ? EXECUTE : NO_OP;
- mThiz->mOverride = true;
- mThiz->mResultOverride = err;
-}
-
-SimpleMethodState::SimpleMethodState()
- : mMode(EXECUTE), mOverride(false), mResultOverride(C2_OK) {}
-
-SimpleMethodState::Mode SimpleMethodState::getMode() const {
- return mMode;
-}
-
-bool SimpleMethodState::overrideResult(c2_status_t *result) const {
- if (!mOverride) {
- return false;
- }
- *result = mResultOverride;
- return true;
-}
-
-} // namespace android
diff --git a/codec2/faultinjection/SimpleMethodState.h b/codec2/faultinjection/SimpleMethodState.h
deleted file mode 100644
index dc0459d..0000000
--- a/codec2/faultinjection/SimpleMethodState.h
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef SIMPLE_METHOD_STATE_H_
-#define SIMPLE_METHOD_STATE_H_
-
-#include <C2.h>
-
-namespace android {
-
-/**
- * State for a simple method which returns c2_status_t and takes no parameters.
- */
-class SimpleMethodState {
-public:
- enum Mode {
- // Execute the normal operation
- EXECUTE,
- // Don't do anything
- NO_OP,
- // Hang; never return
- HANG,
- };
-
- /**
- * Injecter class that modifies the internal states of this class.
- */
- class Injecter {
- public:
- explicit Injecter(SimpleMethodState *thiz);
-
- /**
- * Hang the operation.
- */
- void hang();
-
- /**
- * Fail the operation with given params.
- *
- * \param err error code to replace the actual return value
- * \param execute whether the wrapper should execute the operation
- */
- void fail(c2_status_t err, bool execute = false);
-
- private:
- SimpleMethodState *const mThiz;
- };
-
- SimpleMethodState();
-
- /**
- * Get execution mode.
- */
- Mode getMode() const;
-
- /**
- * Override result from running the operation if configured so.
- */
- bool overrideResult(c2_status_t *result) const;
-
-private:
- Mode mMode;
- bool mOverride;
- c2_status_t mResultOverride;
-};
-
-} // namespace android
-
-#endif // SIMPLE_METHOD_STATE_H_
diff --git a/codec2/hidl/1.0/mts/audio/Android.bp b/codec2/hidl/1.0/mts/audio/Android.bp
deleted file mode 100644
index 6675b09..0000000
--- a/codec2/hidl/1.0/mts/audio/Android.bp
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-cc_test {
- name: "MtsHidlC2V1_0TargetAudioDecTest",
- defaults: ["MtsMediaC2V1_0Defaults"],
- srcs: [
- "MtsHidlC2V1_0TargetAudioDecTest.cpp",
- //"media_audio_hidl_test_common.cpp"
- ],
-}
-
-cc_test {
- name: "MtsHidlC2V1_0TargetAudioEncTest",
- defaults: ["MtsMediaC2V1_0Defaults"],
- srcs: [
- "MtsHidlC2V1_0TargetAudioEncTest.cpp",
- //"media_audio_hidl_test_common.cpp"
- ],
-}
\ No newline at end of file
diff --git a/codec2/hidl/1.0/mts/audio/MtsHidlC2V1_0TargetAudioDecTest.cpp b/codec2/hidl/1.0/mts/audio/MtsHidlC2V1_0TargetAudioDecTest.cpp
deleted file mode 100644
index 1e87f38..0000000
--- a/codec2/hidl/1.0/mts/audio/MtsHidlC2V1_0TargetAudioDecTest.cpp
+++ /dev/null
@@ -1,880 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// #define LOG_NDEBUG 0
-#define LOG_TAG "codec2_hidl_hal_audio_dec_test"
-
-#include <android-base/logging.h>
-#include <gtest/gtest.h>
-#include <algorithm>
-#include <stdio.h>
-#include <fstream>
-
-#include <codec2/hidl/client.h>
-#include <C2AllocatorIon.h>
-#include <C2Config.h>
-#include <C2Debug.h>
-#include <C2Buffer.h>
-#include <C2BufferPriv.h>
-
-using android::C2AllocatorIon;
-
-#include <VtsHalHidlTargetTestBase.h>
-#include "media_c2_audio_hidl_test_common.h"
-#include "media_c2_hidl_test_common.h"
-
-struct FrameInfo {
- int bytesCount;
- uint32_t flags;
- int64_t timestamp;
-};
-
-class LinearBuffer : public C2Buffer {
- public:
- explicit LinearBuffer(const std::shared_ptr<C2LinearBlock>& block)
- : C2Buffer(
- {block->share(block->offset(), block->size(), ::C2Fence())}) {}
-};
-
-static ComponentTestEnvironment* gEnv = nullptr;
-
-namespace {
-
-class Codec2AudioDecHidlTest : public ::testing::VtsHalHidlTargetTestBase {
- private:
- typedef ::testing::VtsHalHidlTargetTestBase Super;
-
- public:
- ::std::string getTestCaseInfo() const override {
- return ::std::string() +
- "Component: " + gEnv->getComponent().c_str() + " | " +
- "Instance: " + gEnv->getInstance().c_str() + " | " +
- "Res: " + gEnv->getRes().c_str();
- }
-
- // google.codec2 Audio test setup
- virtual void SetUp() override {
- Super::SetUp();
- mDisableTest = false;
- ALOGV("Codec2AudioDecHidlTest SetUp");
- mClient = android::Codec2Client::CreateFromService(
- gEnv->getInstance().c_str());
- ASSERT_NE(mClient, nullptr);
- mListener.reset(new CodecListener(
- [this](std::list<std::unique_ptr<C2Work>>& workItems) {
- handleWorkDone(workItems);
- }));
- ASSERT_NE(mListener, nullptr);
- for (int i = 0; i < MAX_INPUT_BUFFERS; ++i) {
- mWorkQueue.emplace_back(new C2Work);
- }
- mClient->createComponent(gEnv->getComponent().c_str(), mListener,
- &mComponent);
- ASSERT_NE(mComponent, nullptr);
-
- std::shared_ptr<C2AllocatorStore> store =
- android::GetCodec2PlatformAllocatorStore();
- CHECK_EQ(store->fetchAllocator(C2AllocatorStore::DEFAULT_LINEAR,
- &mLinearAllocator),
- C2_OK);
- mLinearPool = std::make_shared<C2PooledBlockPool>(mLinearAllocator,
- mBlockPoolId++);
- ASSERT_NE(mLinearPool, nullptr);
-
- mCompName = unknown_comp;
- struct StringToName {
- const char* Name;
- standardComp CompName;
- };
- const StringToName kStringToName[] = {
- {"xaac", xaac},
- {"mp3", mp3},
- {"amrnb", amrnb},
- {"amrwb", amrwb},
- {"aac", aac},
- {"vorbis", vorbis},
- {"opus", opus},
- {"pcm", pcm},
- {"g711.alaw", g711alaw},
- {"g711.mlaw", g711mlaw},
- {"gsm", gsm},
- {"raw", raw},
- {"flac", flac},
- };
- const size_t kNumStringToName =
- sizeof(kStringToName) / sizeof(kStringToName[0]);
-
- std::string substring;
- std::string comp;
- substring = std::string(gEnv->getComponent());
- /* TODO: better approach to find the component */
- /* "c2.android." => 11th position */
- size_t pos = 11;
- size_t len = substring.find(".decoder", pos);
- comp = substring.substr(pos, len - pos);
-
- for (size_t i = 0; i < kNumStringToName; ++i) {
- if (!strcasecmp(comp.c_str(), kStringToName[i].Name)) {
- mCompName = kStringToName[i].CompName;
- break;
- }
- }
- mEos = false;
- mFramesReceived = 0;
- mTimestampUs = 0u;
- mTimestampDevTest = false;
- if (mCompName == unknown_comp) mDisableTest = true;
- if (mDisableTest) std::cout << "[ WARN ] Test Disabled \n";
- }
-
- virtual void TearDown() override {
- if (mComponent != nullptr) {
- if (::testing::Test::HasFatalFailure()) return;
- mComponent->release();
- mComponent = nullptr;
- }
- Super::TearDown();
- }
-
- struct outputMetaData {
- uint64_t timestampUs;
- uint32_t rangeLength;
- };
- // callback function to process onWorkDone received by Listener
- void handleWorkDone(std::list<std::unique_ptr<C2Work>>& workItems) {
- for (std::unique_ptr<C2Work>& work : workItems) {
- if (!work->worklets.empty()) {
- // For decoder components current timestamp always exceeds
- // previous timestamp
- bool codecConfig = ((work->worklets.front()->output.flags &
- C2FrameData::FLAG_CODEC_CONFIG) != 0);
- if (!codecConfig &&
- !work->worklets.front()->output.buffers.empty()) {
- EXPECT_GE(work->worklets.front()->output.ordinal.timestamp.peeku(),
- mTimestampUs);
- mTimestampUs =
- work->worklets.front()->output.ordinal.timestamp.peeku();
- uint32_t rangeLength =
- work->worklets.front()->output.buffers[0]->data()
- .linearBlocks().front().map().get().capacity();
- //List of timestamp values and output size to calculate timestamp
- if (mTimestampDevTest) {
- outputMetaData meta = {mTimestampUs, rangeLength};
- oBufferMetaData.push_back(meta);
- }
- }
- bool mCsd = false;
- workDone(mComponent, work, mFlushedIndices, mQueueLock,
- mQueueCondition, mWorkQueue, mEos, mCsd,
- mFramesReceived);
- (void)mCsd;
- }
- }
- }
-
- enum standardComp {
- xaac,
- mp3,
- amrnb,
- amrwb,
- aac,
- vorbis,
- opus,
- pcm,
- g711alaw,
- g711mlaw,
- gsm,
- raw,
- flac,
- unknown_comp,
- };
-
- bool mEos;
- bool mDisableTest;
- bool mTimestampDevTest;
- standardComp mCompName;
- uint64_t mTimestampUs;
- uint32_t mFramesReceived;
- std::list<uint64_t> mFlushedIndices;
- std::list<uint64_t> mTimestampUslist;
- ::android::List<outputMetaData> oBufferMetaData;
-
- C2BlockPool::local_id_t mBlockPoolId;
- std::shared_ptr<C2BlockPool> mLinearPool;
- std::shared_ptr<C2Allocator> mLinearAllocator;
-
- std::mutex mQueueLock;
- std::condition_variable mQueueCondition;
- std::list<std::unique_ptr<C2Work>> mWorkQueue;
-
- std::shared_ptr<android::Codec2Client> mClient;
- std::shared_ptr<android::Codec2Client::Listener> mListener;
- std::shared_ptr<android::Codec2Client::Component> mComponent;
-
- protected:
- static void description(const std::string& description) {
- RecordProperty("description", description);
- }
-};
-
-void validateComponent(
- const std::shared_ptr<android::Codec2Client::Component>& component,
- Codec2AudioDecHidlTest::standardComp compName, bool& disableTest) {
- // Validate its a C2 Component
- if (component->getName().find("c2") == std::string::npos) {
- ALOGE("Not a c2 component");
- disableTest = true;
- return;
- }
-
- // Validate its not an encoder and the component to be tested is audio
- if (component->getName().find("encoder") != std::string::npos) {
- ALOGE("Expected Decoder, given Encoder");
- disableTest = true;
- return;
- }
- std::vector<std::unique_ptr<C2Param>> queried;
- c2_status_t c2err =
- component->query({}, {C2PortMediaTypeSetting::input::PARAM_TYPE},
- C2_DONT_BLOCK, &queried);
- if (c2err != C2_OK && queried.size() == 0) {
- ALOGE("Query media type failed => %d", c2err);
- } else {
- std::string inputDomain =
- ((C2StreamMediaTypeSetting::input*)queried[0].get())->m.value;
- if (inputDomain.find("audio/") == std::string::npos) {
- ALOGE("Expected Audio Component");
- disableTest = true;
- return;
- }
- }
-
- // Validates component name
- if (compName == Codec2AudioDecHidlTest::unknown_comp) {
- ALOGE("Component InValid");
- disableTest = true;
- return;
- }
- ALOGV("Component Valid");
-}
-
-// Set Default config param.
-void setupConfigParam(
- const std::shared_ptr<android::Codec2Client::Component>& component,
- int32_t* bitStreamInfo) {
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- C2StreamSampleRateInfo::output sampleRateInfo(0u, bitStreamInfo[0]);
- C2StreamChannelCountInfo::output channelCountInfo(0u, bitStreamInfo[1]);
-
- std::vector<C2Param*> configParam{&sampleRateInfo, &channelCountInfo};
- c2_status_t status =
- component->config(configParam, C2_DONT_BLOCK, &failures);
- ASSERT_EQ(failures.size(), 0u);
- ASSERT_EQ(status, C2_OK);
-}
-
-// In decoder components, often the input parameters get updated upon
-// parsing the header of elementary stream. Client needs to collect this
-// information and reconfigure
-void getInputChannelInfo(
- const std::shared_ptr<android::Codec2Client::Component>& component,
- Codec2AudioDecHidlTest::standardComp compName, int32_t* bitStreamInfo) {
- // query nSampleRate and nChannels
- std::initializer_list<C2Param::Index> indices{
- C2StreamSampleRateInfo::output::PARAM_TYPE,
- C2StreamChannelCountInfo::output::PARAM_TYPE,
- };
- std::vector<std::unique_ptr<C2Param>> inParams;
- c2_status_t status =
- component->query({}, indices, C2_DONT_BLOCK, &inParams);
- if (status != C2_OK && inParams.size() == 0) {
- ALOGE("Query media type failed => %d", status);
- ASSERT_TRUE(false);
- } else {
- size_t offset = sizeof(C2Param);
- for (size_t i = 0; i < inParams.size(); ++i) {
- C2Param* param = inParams[i].get();
- bitStreamInfo[i] = *(int32_t*)((uint8_t*)param + offset);
- }
- switch (compName) {
- case Codec2AudioDecHidlTest::amrnb: {
- ASSERT_EQ(bitStreamInfo[0], 8000);
- ASSERT_EQ(bitStreamInfo[1], 1);
- break;
- }
- case Codec2AudioDecHidlTest::amrwb: {
- ASSERT_EQ(bitStreamInfo[0], 16000);
- ASSERT_EQ(bitStreamInfo[1], 1);
- break;
- }
- case Codec2AudioDecHidlTest::gsm: {
- ASSERT_EQ(bitStreamInfo[0], 8000);
- break;
- }
- default:
- break;
- }
- }
-}
-
-// LookUpTable of clips and metadata for component testing
-void GetURLForComponent(Codec2AudioDecHidlTest::standardComp comp, char* mURL,
- char* info) {
- struct CompToURL {
- Codec2AudioDecHidlTest::standardComp comp;
- const char* mURL;
- const char* info;
- };
- static const CompToURL kCompToURL[] = {
- {Codec2AudioDecHidlTest::standardComp::xaac,
- "bbb_aac_stereo_128kbps_48000hz.aac",
- "bbb_aac_stereo_128kbps_48000hz.info"},
- {Codec2AudioDecHidlTest::standardComp::mp3,
- "bbb_mp3_stereo_192kbps_48000hz.mp3",
- "bbb_mp3_stereo_192kbps_48000hz.info"},
- {Codec2AudioDecHidlTest::standardComp::aac,
- "bbb_aac_stereo_128kbps_48000hz.aac",
- "bbb_aac_stereo_128kbps_48000hz.info"},
- {Codec2AudioDecHidlTest::standardComp::amrnb,
- "sine_amrnb_1ch_12kbps_8000hz.amrnb",
- "sine_amrnb_1ch_12kbps_8000hz.info"},
- {Codec2AudioDecHidlTest::standardComp::amrwb,
- "bbb_amrwb_1ch_14kbps_16000hz.amrwb",
- "bbb_amrwb_1ch_14kbps_16000hz.info"},
- {Codec2AudioDecHidlTest::standardComp::vorbis,
- "bbb_vorbis_stereo_128kbps_48000hz.vorbis",
- "bbb_vorbis_stereo_128kbps_48000hz.info"},
- {Codec2AudioDecHidlTest::standardComp::opus,
- "bbb_opus_stereo_128kbps_48000hz.opus",
- "bbb_opus_stereo_128kbps_48000hz.info"},
- {Codec2AudioDecHidlTest::standardComp::g711alaw,
- "bbb_g711alaw_1ch_8khz.raw",
- "bbb_g711alaw_1ch_8khz.info"},
- {Codec2AudioDecHidlTest::standardComp::g711mlaw,
- "bbb_g711mulaw_1ch_8khz.raw",
- "bbb_g711mulaw_1ch_8khz.info"},
- {Codec2AudioDecHidlTest::standardComp::gsm,
- "bbb_gsm_1ch_8khz_13kbps.raw",
- "bbb_gsm_1ch_8khz_13kbps.info"},
- {Codec2AudioDecHidlTest::standardComp::raw,
- "bbb_raw_1ch_8khz_s32le.raw",
- "bbb_raw_1ch_8khz_s32le.info"},
- {Codec2AudioDecHidlTest::standardComp::flac,
- "bbb_flac_stereo_680kbps_48000hz.flac",
- "bbb_flac_stereo_680kbps_48000hz.info"},
- };
-
- for (size_t i = 0; i < sizeof(kCompToURL) / sizeof(kCompToURL[0]); ++i) {
- if (kCompToURL[i].comp == comp) {
- strcat(mURL, kCompToURL[i].mURL);
- strcat(info, kCompToURL[i].info);
- return;
- }
- }
-}
-
-void decodeNFrames(const std::shared_ptr<android::Codec2Client::Component>& component,
- std::mutex &queueLock, std::condition_variable& queueCondition,
- std::list<std::unique_ptr<C2Work>>& workQueue,
- std::list<uint64_t>& flushedIndices,
- std::shared_ptr<C2BlockPool>& linearPool,
- std::ifstream& eleStream,
- android::Vector<FrameInfo>* Info,
- int offset, int range, bool signalEOS = true) {
- typedef std::unique_lock<std::mutex> ULock;
- int frameID = offset;
- int maxRetry = 0;
- while (1) {
- if (frameID == (int)Info->size() || frameID == (offset + range)) break;
- uint32_t flags = 0;
- std::unique_ptr<C2Work> work;
- // Prepare C2Work
- while (!work && (maxRetry < MAX_RETRY)) {
- ULock l(queueLock);
- if (!workQueue.empty()) {
- work.swap(workQueue.front());
- workQueue.pop_front();
- } else {
- queueCondition.wait_for(l, TIME_OUT);
- maxRetry++;
- }
- }
- if (!work && (maxRetry >= MAX_RETRY)) {
- ASSERT_TRUE(false) << "Wait for generating C2Work exceeded timeout";
- }
- int64_t timestamp = (*Info)[frameID].timestamp;
- if ((*Info)[frameID].flags) flags = 1u << ((*Info)[frameID].flags - 1);
- if (signalEOS && ((frameID == (int)Info->size() - 1) ||
- (frameID == (offset + range - 1))))
- flags |= C2FrameData::FLAG_END_OF_STREAM;
-
- work->input.flags = (C2FrameData::flags_t)flags;
- work->input.ordinal.timestamp = timestamp;
- work->input.ordinal.frameIndex = frameID;
- {
- ULock l(queueLock);
- flushedIndices.emplace_back(frameID);
- }
- int size = (*Info)[frameID].bytesCount;
- char* data = (char*)malloc(size);
- ASSERT_NE(data, nullptr);
-
- eleStream.read(data, size);
- ASSERT_EQ(eleStream.gcount(), size);
-
- work->input.buffers.clear();
- if (size) {
- std::shared_ptr<C2LinearBlock> block;
- ASSERT_EQ(C2_OK,
- linearPool->fetchLinearBlock(
- size, {C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE},
- &block));
- ASSERT_TRUE(block);
-
- // Write View
- C2WriteView view = block->map().get();
- if (view.error() != C2_OK) {
- fprintf(stderr, "C2LinearBlock::map() failed : %d", view.error());
- break;
- }
- ASSERT_EQ((size_t)size, view.capacity());
- ASSERT_EQ(0u, view.offset());
- ASSERT_EQ((size_t)size, view.size());
-
- memcpy(view.base(), data, size);
-
- work->input.buffers.emplace_back(new LinearBuffer(block));
- free(data);
- }
- work->worklets.clear();
- work->worklets.emplace_back(new C2Worklet);
-
- std::list<std::unique_ptr<C2Work>> items;
- items.push_back(std::move(work));
-
- // DO THE DECODING
- ASSERT_EQ(component->queue(&items), C2_OK);
- ALOGV("Frame #%d size = %d queued", frameID, size);
- frameID++;
- maxRetry = 0;
- }
-}
-
-TEST_F(Codec2AudioDecHidlTest, validateCompName) {
- if (mDisableTest) return;
- ALOGV("Checks if the given component is a valid audio component");
- validateComponent(mComponent, mCompName, mDisableTest);
- ASSERT_EQ(mDisableTest, false);
-}
-
-TEST_F(Codec2AudioDecHidlTest, configComp) {
- description("Tests component specific configuration");
- if (mDisableTest) return;
- ASSERT_EQ(mComponent->start(), C2_OK);
- int32_t bitStreamInfo[2] = {0};
- ASSERT_NO_FATAL_FAILURE(
- getInputChannelInfo(mComponent, mCompName, bitStreamInfo));
- setupConfigParam(mComponent, bitStreamInfo);
- ASSERT_EQ(mComponent->stop(), C2_OK);
-}
-
-TEST_F(Codec2AudioDecHidlTest, DecodeTest) {
- description("Decodes input file");
- if (mDisableTest) return;
-
- ASSERT_EQ(mComponent->start(), C2_OK);
- mTimestampDevTest = true;
- char mURL[512], info[512];
- std::ifstream eleStream, eleInfo;
-
- strcpy(mURL, gEnv->getRes().c_str());
- strcpy(info, gEnv->getRes().c_str());
- GetURLForComponent(mCompName, mURL, info);
-
- eleInfo.open(info);
- ASSERT_EQ(eleInfo.is_open(), true);
- android::Vector<FrameInfo> Info;
- int bytesCount = 0;
- uint32_t flags = 0;
- uint32_t timestamp = 0;
- while (1) {
- if (!(eleInfo >> bytesCount)) break;
- eleInfo >> flags;
- eleInfo >> timestamp;
- bool codecConfig =
- ((1 << (flags - 1)) & C2FrameData::FLAG_CODEC_CONFIG) != 0;
- if (mTimestampDevTest && !codecConfig)
- mTimestampUslist.push_back(timestamp);
- Info.push_back({bytesCount, flags, timestamp});
- }
- eleInfo.close();
- int32_t bitStreamInfo[2] = {0};
- if (mCompName == raw) {
- bitStreamInfo[0] = 8000;
- bitStreamInfo[1] = 1;
- } else {
- ASSERT_NO_FATAL_FAILURE(
- getInputChannelInfo(mComponent, mCompName, bitStreamInfo));
- }
- setupConfigParam(mComponent, bitStreamInfo);
- ALOGV("mURL : %s", mURL);
- eleStream.open(mURL, std::ifstream::binary);
- ASSERT_EQ(eleStream.is_open(), true);
- ASSERT_NO_FATAL_FAILURE(decodeNFrames(
- mComponent, mQueueLock, mQueueCondition, mWorkQueue, mFlushedIndices,
- mLinearPool, eleStream, &Info, 0, (int)Info.size()));
- // blocking call to ensures application to Wait till all the inputs are
- // consumed
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue));
- eleStream.close();
- if (mFramesReceived != Info.size()) {
- ALOGE("Input buffer count and Output buffer count mismatch");
- ALOGE("framesReceived : %d inputFrames : %zu", mFramesReceived,
- Info.size());
- ASSERT_TRUE(false);
- }
- ASSERT_EQ(mEos, true);
- if (mTimestampDevTest) {
- uint64_t expTs;
- uint32_t samplesReceived = 0;
- // Update SampleRate and ChannelCount
- ASSERT_NO_FATAL_FAILURE(
- getInputChannelInfo(mComponent, mCompName, bitStreamInfo));
- int nSampleRate = bitStreamInfo[0];
- int nChannels = bitStreamInfo[1];
- std::list<uint64_t>::iterator itIn = mTimestampUslist.begin();
- android::List<outputMetaData>::iterator itOut = oBufferMetaData.begin();
- EXPECT_EQ(*itIn, itOut->timestampUs);
- expTs = *itIn;
- while (itOut != oBufferMetaData.end()) {
- EXPECT_EQ(expTs, itOut->timestampUs);
- if (expTs != itOut->timestampUs) break;
- // buffer samples = ((total bytes) / (ac * (bits per sample / 8))
- samplesReceived += ((itOut->rangeLength) / (nChannels * 2));
- expTs = samplesReceived * 1000000ll / nSampleRate;
- itOut++;
- }
- itIn = mTimestampUslist.end();
- --itIn;
- EXPECT_GT(expTs, *itIn);
- oBufferMetaData.clear();
- mTimestampUslist.clear();
- }
- ASSERT_EQ(mComponent->stop(), C2_OK);
-}
-
-// thumbnail test
-TEST_F(Codec2AudioDecHidlTest, ThumbnailTest) {
- description("Test Request for thumbnail");
- if (mDisableTest) return;
-
- ASSERT_EQ(mComponent->start(), C2_OK);
- char mURL[512], info[512];
- std::ifstream eleStream, eleInfo;
-
- strcpy(mURL, gEnv->getRes().c_str());
- strcpy(info, gEnv->getRes().c_str());
- GetURLForComponent(mCompName, mURL, info);
-
- eleInfo.open(info);
- ASSERT_EQ(eleInfo.is_open(), true);
- android::Vector<FrameInfo> Info;
- int bytesCount = 0;
- uint32_t flags = 0;
- uint32_t timestamp = 0;
- while (1) {
- if (!(eleInfo >> bytesCount)) break;
- eleInfo >> flags;
- eleInfo >> timestamp;
- Info.push_back({bytesCount, flags, timestamp});
- }
- eleInfo.close();
- int32_t bitStreamInfo[2] = {0};
- if (mCompName == raw) {
- bitStreamInfo[0] = 8000;
- bitStreamInfo[1] = 1;
- } else {
- ASSERT_NO_FATAL_FAILURE(
- getInputChannelInfo(mComponent, mCompName, bitStreamInfo));
- }
- setupConfigParam(mComponent, bitStreamInfo);
- ALOGV("mURL : %s", mURL);
-
- // request EOS for thumbnail
- // signal EOS flag with last frame
- size_t i = -1;
- do {
- i++;
- flags = 0;
- if (Info[i].flags) flags = 1u << (Info[i].flags - 1);
-
- } while (!(flags & SYNC_FRAME));
- eleStream.open(mURL, std::ifstream::binary);
- ASSERT_EQ(eleStream.is_open(), true);
- ASSERT_NO_FATAL_FAILURE(decodeNFrames(
- mComponent, mQueueLock, mQueueCondition, mWorkQueue, mFlushedIndices,
- mLinearPool, eleStream, &Info, 0, i + 1));
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue));
- eleStream.close();
- EXPECT_GE(mFramesReceived, 1U);
- ASSERT_EQ(mEos, true);
- ASSERT_EQ(mComponent->stop(), C2_OK);
-}
-
-TEST_F(Codec2AudioDecHidlTest, EOSTest) {
- description("Test empty input buffer with EOS flag");
- if (mDisableTest) return;
- typedef std::unique_lock<std::mutex> ULock;
- ASSERT_EQ(mComponent->start(), C2_OK);
- std::unique_ptr<C2Work> work;
- // Prepare C2Work
- {
- ULock l(mQueueLock);
- if (!mWorkQueue.empty()) {
- work.swap(mWorkQueue.front());
- mWorkQueue.pop_front();
- } else {
- ASSERT_TRUE(false) << "mWorkQueue Empty at the start of test";
- }
- }
- ASSERT_NE(work, nullptr);
-
- work->input.flags = (C2FrameData::flags_t)C2FrameData::FLAG_END_OF_STREAM;
- work->input.ordinal.timestamp = 0;
- work->input.ordinal.frameIndex = 0;
- work->input.buffers.clear();
- work->worklets.clear();
- work->worklets.emplace_back(new C2Worklet);
-
- std::list<std::unique_ptr<C2Work>> items;
- items.push_back(std::move(work));
- ASSERT_EQ(mComponent->queue(&items), C2_OK);
-
- {
- ULock l(mQueueLock);
- if (mWorkQueue.size() != MAX_INPUT_BUFFERS) {
- mQueueCondition.wait_for(l, TIME_OUT);
- }
- }
- ASSERT_EQ(mEos, true);
- ASSERT_EQ(mWorkQueue.size(), (size_t)MAX_INPUT_BUFFERS);
- ASSERT_EQ(mComponent->stop(), C2_OK);
-}
-
-TEST_F(Codec2AudioDecHidlTest, FlushTest) {
- description("Tests Flush calls");
- if (mDisableTest) return;
- typedef std::unique_lock<std::mutex> ULock;
- ASSERT_EQ(mComponent->start(), C2_OK);
- char mURL[512], info[512];
- std::ifstream eleStream, eleInfo;
-
- strcpy(mURL, gEnv->getRes().c_str());
- strcpy(info, gEnv->getRes().c_str());
- GetURLForComponent(mCompName, mURL, info);
-
- eleInfo.open(info);
- ASSERT_EQ(eleInfo.is_open(), true);
- android::Vector<FrameInfo> Info;
- int bytesCount = 0;
- uint32_t flags = 0;
- uint32_t timestamp = 0;
- mFlushedIndices.clear();
- while (1) {
- if (!(eleInfo >> bytesCount)) break;
- eleInfo >> flags;
- eleInfo >> timestamp;
- Info.push_back({bytesCount, flags, timestamp});
- }
- eleInfo.close();
- int32_t bitStreamInfo[2] = {0};
- if (mCompName == raw) {
- bitStreamInfo[0] = 8000;
- bitStreamInfo[1] = 1;
- } else {
- ASSERT_NO_FATAL_FAILURE(
- getInputChannelInfo(mComponent, mCompName, bitStreamInfo));
- }
- setupConfigParam(mComponent, bitStreamInfo);
- ALOGV("mURL : %s", mURL);
- eleStream.open(mURL, std::ifstream::binary);
- ASSERT_EQ(eleStream.is_open(), true);
- // Decode 128 frames and flush. here 128 is chosen to ensure there is a key
- // frame after this so that the below section can be covered for all
- // components
- uint32_t numFramesFlushed = 128;
- ASSERT_NO_FATAL_FAILURE(decodeNFrames(
- mComponent, mQueueLock, mQueueCondition, mWorkQueue, mFlushedIndices,
- mLinearPool, eleStream, &Info, 0, numFramesFlushed, false));
- // flush
- std::list<std::unique_ptr<C2Work>> flushedWork;
- c2_status_t err =
- mComponent->flush(C2Component::FLUSH_COMPONENT, &flushedWork);
- ASSERT_EQ(err, C2_OK);
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue,
- (size_t)MAX_INPUT_BUFFERS - flushedWork.size()));
- uint64_t frameIndex;
- {
- //Update mFlushedIndices based on the index received from flush()
- ULock l(mQueueLock);
- for (std::unique_ptr<C2Work>& work : flushedWork) {
- ASSERT_NE(work, nullptr);
- frameIndex = work->input.ordinal.frameIndex.peeku();
- std::list<uint64_t>::iterator frameIndexIt =
- std::find(mFlushedIndices.begin(), mFlushedIndices.end(),
- frameIndex);
- if (!mFlushedIndices.empty() &&
- (frameIndexIt != mFlushedIndices.end())) {
- mFlushedIndices.erase(frameIndexIt);
- work->input.buffers.clear();
- work->worklets.clear();
- mWorkQueue.push_back(std::move(work));
- }
- }
- }
- // Seek to next key frame and start decoding till the end
- mFlushedIndices.clear();
- int index = numFramesFlushed;
- bool keyFrame = false;
- flags = 0;
- while (index < (int)Info.size()) {
- if (Info[index].flags) flags = 1u << (Info[index].flags - 1);
- if ((flags & SYNC_FRAME) == SYNC_FRAME) {
- keyFrame = true;
- break;
- }
- flags = 0;
- eleStream.ignore(Info[index].bytesCount);
- index++;
- }
- if (keyFrame) {
- ASSERT_NO_FATAL_FAILURE(
- decodeNFrames(mComponent, mQueueLock, mQueueCondition, mWorkQueue,
- mFlushedIndices, mLinearPool, eleStream, &Info, index,
- (int)Info.size() - index));
- }
- eleStream.close();
- err =
- mComponent->flush(C2Component::FLUSH_COMPONENT, &flushedWork);
- ASSERT_EQ(err, C2_OK);
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue,
- (size_t)MAX_INPUT_BUFFERS - flushedWork.size()));
- {
- //Update mFlushedIndices based on the index received from flush()
- ULock l(mQueueLock);
- for (std::unique_ptr<C2Work>& work : flushedWork) {
- ASSERT_NE(work, nullptr);
- frameIndex = work->input.ordinal.frameIndex.peeku();
- std::list<uint64_t>::iterator frameIndexIt =
- std::find(mFlushedIndices.begin(), mFlushedIndices.end(),
- frameIndex);
- if (!mFlushedIndices.empty() &&
- (frameIndexIt != mFlushedIndices.end())) {
- mFlushedIndices.erase(frameIndexIt);
- work->input.buffers.clear();
- work->worklets.clear();
- mWorkQueue.push_back(std::move(work));
- }
- }
- }
- ASSERT_EQ(mFlushedIndices.empty(), true);
- ASSERT_EQ(mComponent->stop(), C2_OK);
-}
-
-TEST_F(Codec2AudioDecHidlTest, DecodeTestEmptyBuffersInserted) {
- description("Decode with multiple empty input frames");
- if (mDisableTest) return;
-
- ASSERT_EQ(mComponent->start(), C2_OK);
-
- char mURL[512], info[512];
- std::ifstream eleStream, eleInfo;
-
- strcpy(mURL, gEnv->getRes().c_str());
- strcpy(info, gEnv->getRes().c_str());
- GetURLForComponent(mCompName, mURL, info);
-
- eleInfo.open(info);
- ASSERT_EQ(eleInfo.is_open(), true) << mURL << " - file not found";
- android::Vector<FrameInfo> Info;
- int bytesCount = 0;
- uint32_t frameId = 0;
- uint32_t flags = 0;
- uint32_t timestamp = 0;
- bool codecConfig = false;
- // This test introduces empty CSD after every 20th frame
- // and empty input frames at an interval of 5 frames.
- while (1) {
- if (!(frameId % 5)) {
- if (!(frameId % 20)) flags = 32;
- else flags = 0;
- bytesCount = 0;
- } else {
- if (!(eleInfo >> bytesCount)) break;
- eleInfo >> flags;
- eleInfo >> timestamp;
- codecConfig = flags ?
- ((1 << (flags - 1)) & C2FrameData::FLAG_CODEC_CONFIG) != 0 : 0;
- }
- Info.push_back({bytesCount, flags, timestamp});
- frameId++;
- }
- eleInfo.close();
-
- ALOGV("mURL : %s", mURL);
- eleStream.open(mURL, std::ifstream::binary);
- ASSERT_EQ(eleStream.is_open(), true);
- ASSERT_NO_FATAL_FAILURE(decodeNFrames(
- mComponent, mQueueLock, mQueueCondition, mWorkQueue, mFlushedIndices,
- mLinearPool, eleStream, &Info, 0, (int)Info.size()));
-
- // blocking call to ensures application to Wait till all the inputs are
- // consumed
- if (!mEos) {
- ALOGV("Waiting for input consumption");
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue));
- }
-
- eleStream.close();
- if (mFramesReceived != Info.size()) {
- ALOGE("Input buffer count and Output buffer count mismatch");
- ALOGV("framesReceived : %d inputFrames : %zu", mFramesReceived,
- Info.size());
- ASSERT_TRUE(false);
- }
-
- ASSERT_EQ(mComponent->stop(), C2_OK);
-}
-
-} // anonymous namespace
-
-int main(int argc, char** argv) {
- gEnv = new ComponentTestEnvironment();
- ::testing::AddGlobalTestEnvironment(gEnv);
- ::testing::InitGoogleTest(&argc, argv);
- gEnv->init(&argc, argv);
- int status = gEnv->initFromOptions(argc, argv);
- if (status == 0) {
- int status = RUN_ALL_TESTS();
- LOG(INFO) << "C2 Test result = " << status;
- }
- return status;
-}
diff --git a/codec2/hidl/1.0/mts/audio/MtsHidlC2V1_0TargetAudioEncTest.cpp b/codec2/hidl/1.0/mts/audio/MtsHidlC2V1_0TargetAudioEncTest.cpp
deleted file mode 100644
index 5d66ee5..0000000
--- a/codec2/hidl/1.0/mts/audio/MtsHidlC2V1_0TargetAudioEncTest.cpp
+++ /dev/null
@@ -1,598 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// #define LOG_NDEBUG 0
-#define LOG_TAG "codec2_hidl_hal_audio_enc_test"
-
-#include <android-base/logging.h>
-#include <gtest/gtest.h>
-#include <stdio.h>
-#include <fstream>
-#include <algorithm>
-
-#include <codec2/hidl/client.h>
-#include <C2AllocatorIon.h>
-#include <C2Config.h>
-#include <C2Debug.h>
-#include <C2Buffer.h>
-#include <C2BufferPriv.h>
-
-using android::C2AllocatorIon;
-
-#include <VtsHalHidlTargetTestBase.h>
-#include "media_c2_audio_hidl_test_common.h"
-#include "media_c2_hidl_test_common.h"
-
-class LinearBuffer : public C2Buffer {
- public:
- explicit LinearBuffer(const std::shared_ptr<C2LinearBlock>& block)
- : C2Buffer(
- {block->share(block->offset(), block->size(), ::C2Fence())}) {}
-};
-
-static ComponentTestEnvironment* gEnv = nullptr;
-
-namespace {
-
-class Codec2AudioEncHidlTest : public ::testing::VtsHalHidlTargetTestBase {
- private:
- typedef ::testing::VtsHalHidlTargetTestBase Super;
-
- public:
- ::std::string getTestCaseInfo() const override {
- return ::std::string() +
- "Component: " + gEnv->getComponent().c_str() + " | " +
- "Instance: " + gEnv->getInstance().c_str() + " | " +
- "Res: " + gEnv->getRes().c_str();
- }
-
- // google.codec2 Audio test setup
- virtual void SetUp() override {
- Super::SetUp();
- mDisableTest = false;
- ALOGV("Codec2AudioEncHidlTest SetUp");
- mClient = android::Codec2Client::CreateFromService(
- gEnv->getInstance().c_str());
- ASSERT_NE(mClient, nullptr);
- mListener.reset(new CodecListener(
- [this](std::list<std::unique_ptr<C2Work>>& workItems) {
- handleWorkDone(workItems);
- }));
- ASSERT_NE(mListener, nullptr);
- for (int i = 0; i < MAX_INPUT_BUFFERS; ++i) {
- mWorkQueue.emplace_back(new C2Work);
- }
- mClient->createComponent(gEnv->getComponent().c_str(), mListener,
- &mComponent);
- ASSERT_NE(mComponent, nullptr);
-
- std::shared_ptr<C2AllocatorStore> store =
- android::GetCodec2PlatformAllocatorStore();
- CHECK_EQ(store->fetchAllocator(C2AllocatorStore::DEFAULT_LINEAR,
- &mLinearAllocator),
- C2_OK);
- mLinearPool = std::make_shared<C2PooledBlockPool>(mLinearAllocator,
- mBlockPoolId++);
- ASSERT_NE(mLinearPool, nullptr);
-
- mCompName = unknown_comp;
- struct StringToName {
- const char* Name;
- standardComp CompName;
- };
- const StringToName kStringToName[] = {
- {"aac", aac},
- {"flac", flac},
- {"opus", opus},
- {"amrnb", amrnb},
- {"amrwb", amrwb},
- };
- const size_t kNumStringToName =
- sizeof(kStringToName) / sizeof(kStringToName[0]);
-
- std::string substring;
- std::string comp;
- substring = std::string(gEnv->getComponent());
- /* TODO: better approach to find the component */
- /* "c2.android." => 11th position */
- size_t pos = 11;
- size_t len = substring.find(".encoder", pos);
- comp = substring.substr(pos, len - pos);
-
- for (size_t i = 0; i < kNumStringToName; ++i) {
- if (!strcasecmp(comp.c_str(), kStringToName[i].Name)) {
- mCompName = kStringToName[i].CompName;
- break;
- }
- }
- mEos = false;
- mCsd = false;
- mFramesReceived = 0;
- if (mCompName == unknown_comp) mDisableTest = true;
- if (mDisableTest) std::cout << "[ WARN ] Test Disabled \n";
- }
-
- virtual void TearDown() override {
- if (mComponent != nullptr) {
- if (::testing::Test::HasFatalFailure()) return;
- mComponent->release();
- mComponent = nullptr;
- }
- Super::TearDown();
- }
- // callback function to process onWorkDone received by Listener
- void handleWorkDone(std::list<std::unique_ptr<C2Work>>& workItems) {
- for (std::unique_ptr<C2Work>& work : workItems) {
- if (!work->worklets.empty()) {
- workDone(mComponent, work, mFlushedIndices, mQueueLock,
- mQueueCondition, mWorkQueue, mEos, mCsd,
- mFramesReceived);
- }
- }
- }
- enum standardComp {
- aac,
- flac,
- opus,
- amrnb,
- amrwb,
- unknown_comp,
- };
-
- bool mEos;
- bool mCsd;
- bool mDisableTest;
- standardComp mCompName;
- uint32_t mFramesReceived;
- std::list<uint64_t> mFlushedIndices;
-
- C2BlockPool::local_id_t mBlockPoolId;
- std::shared_ptr<C2BlockPool> mLinearPool;
- std::shared_ptr<C2Allocator> mLinearAllocator;
-
- std::mutex mQueueLock;
- std::condition_variable mQueueCondition;
- std::list<std::unique_ptr<C2Work>> mWorkQueue;
-
- std::shared_ptr<android::Codec2Client> mClient;
- std::shared_ptr<android::Codec2Client::Listener> mListener;
- std::shared_ptr<android::Codec2Client::Component> mComponent;
-
- protected:
- static void description(const std::string& description) {
- RecordProperty("description", description);
- }
-};
-
-void validateComponent(
- const std::shared_ptr<android::Codec2Client::Component>& component,
- Codec2AudioEncHidlTest::standardComp compName, bool& disableTest) {
- // Validate its a C2 Component
- if (component->getName().find("c2") == std::string::npos) {
- ALOGE("Not a c2 component");
- disableTest = true;
- return;
- }
-
- // Validate its not an encoder and the component to be tested is audio
- if (component->getName().find("decoder") != std::string::npos) {
- ALOGE("Expected Encoder, given Decoder");
- disableTest = true;
- return;
- }
- std::vector<std::unique_ptr<C2Param>> queried;
- c2_status_t c2err =
- component->query({}, {C2PortMediaTypeSetting::input::PARAM_TYPE},
- C2_DONT_BLOCK, &queried);
- if (c2err != C2_OK && queried.size() == 0) {
- ALOGE("Query media type failed => %d", c2err);
- } else {
- std::string inputDomain =
- ((C2StreamMediaTypeSetting::input*)queried[0].get())->m.value;
- if (inputDomain.find("audio/") == std::string::npos) {
- ALOGE("Expected Audio Component");
- disableTest = true;
- return;
- }
- }
-
- // Validates component name
- if (compName == Codec2AudioEncHidlTest::unknown_comp) {
- ALOGE("Component InValid");
- disableTest = true;
- return;
- }
- ALOGV("Component Valid");
-}
-
-// Set Default config param.
-void setupConfigParam(
- const std::shared_ptr<android::Codec2Client::Component>& component,
- int32_t nChannels, int32_t nSampleRate) {
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- C2StreamSampleRateInfo::input sampleRateInfo(0u, nSampleRate);
- C2StreamChannelCountInfo::input channelCountInfo(0u, nChannels);
-
- std::vector<C2Param*> configParam{&sampleRateInfo, &channelCountInfo};
- c2_status_t status =
- component->config(configParam, C2_DONT_BLOCK, &failures);
- ASSERT_EQ(failures.size(), 0u);
- ASSERT_EQ(status, C2_OK);
-}
-
-// LookUpTable of clips and metadata for component testing
-void GetURLForComponent(Codec2AudioEncHidlTest::standardComp comp, char* mURL) {
- struct CompToURL {
- Codec2AudioEncHidlTest::standardComp comp;
- const char* mURL;
- };
- static const CompToURL kCompToURL[] = {
- {Codec2AudioEncHidlTest::standardComp::aac,
- "bbb_raw_2ch_48khz_s16le.raw"},
- {Codec2AudioEncHidlTest::standardComp::amrnb,
- "bbb_raw_1ch_8khz_s16le.raw"},
- {Codec2AudioEncHidlTest::standardComp::amrwb,
- "bbb_raw_1ch_16khz_s16le.raw"},
- {Codec2AudioEncHidlTest::standardComp::flac,
- "bbb_raw_2ch_48khz_s16le.raw"},
- {Codec2AudioEncHidlTest::standardComp::opus,
- "bbb_raw_2ch_48khz_s16le.raw"},
- };
-
- for (size_t i = 0; i < sizeof(kCompToURL) / sizeof(kCompToURL[0]); ++i) {
- if (kCompToURL[i].comp == comp) {
- strcat(mURL, kCompToURL[i].mURL);
- return;
- }
- }
-}
-
-void encodeNFrames(const std::shared_ptr<android::Codec2Client::Component>& component,
- std::mutex &queueLock, std::condition_variable& queueCondition,
- std::list<std::unique_ptr<C2Work>>& workQueue,
- std::list<uint64_t>& flushedIndices,
- std::shared_ptr<C2BlockPool>& linearPool,
- std::ifstream& eleStream, uint32_t nFrames,
- int32_t samplesPerFrame, int32_t nChannels,
- int32_t nSampleRate, bool flushed = false,
- bool signalEOS = true) {
- typedef std::unique_lock<std::mutex> ULock;
-
- uint32_t frameID = 0;
- uint32_t maxRetry = 0;
- int bytesCount = samplesPerFrame * nChannels * 2;
- int32_t timestampIncr =
- (int)(((float)samplesPerFrame / nSampleRate) * 1000000);
- uint64_t timestamp = 0;
- while (1) {
- if (nFrames == 0) break;
- uint32_t flags = 0;
- std::unique_ptr<C2Work> work;
- // Prepare C2Work
- while (!work && (maxRetry < MAX_RETRY)) {
- ULock l(queueLock);
- if (!workQueue.empty()) {
- work.swap(workQueue.front());
- workQueue.pop_front();
- } else {
- queueCondition.wait_for(l, TIME_OUT);
- maxRetry++;
- }
- }
- if (!work && (maxRetry >= MAX_RETRY)) {
- ASSERT_TRUE(false) << "Wait for generating C2Work exceeded timeout";
- }
- if (signalEOS && (nFrames == 1))
- flags |= C2FrameData::FLAG_END_OF_STREAM;
- if (flushed) {
- flags |= SYNC_FRAME;
- flushed = false;
- }
- work->input.flags = (C2FrameData::flags_t)flags;
- work->input.ordinal.timestamp = timestamp;
- work->input.ordinal.frameIndex = frameID;
- {
- ULock l(queueLock);
- flushedIndices.emplace_back(frameID);
- }
- char* data = (char*)malloc(bytesCount);
- ASSERT_NE(data, nullptr);
- eleStream.read(data, bytesCount);
- ASSERT_EQ(eleStream.gcount(), bytesCount);
- std::shared_ptr<C2LinearBlock> block;
- ASSERT_EQ(C2_OK, linearPool->fetchLinearBlock(
- bytesCount, {C2MemoryUsage::CPU_READ,
- C2MemoryUsage::CPU_WRITE},
- &block));
- ASSERT_TRUE(block);
- // Write View
- C2WriteView view = block->map().get();
- if (view.error() != C2_OK) {
- fprintf(stderr, "C2LinearBlock::map() failed : %d", view.error());
- break;
- }
- ASSERT_EQ((size_t)bytesCount, view.capacity());
- ASSERT_EQ(0u, view.offset());
- ASSERT_EQ((size_t)bytesCount, view.size());
-
- memcpy(view.base(), data, bytesCount);
- work->input.buffers.clear();
- work->input.buffers.emplace_back(new LinearBuffer(block));
- work->worklets.clear();
- work->worklets.emplace_back(new C2Worklet);
- free(data);
-
- std::list<std::unique_ptr<C2Work>> items;
- items.push_back(std::move(work));
-
- // DO THE DECODING
- ASSERT_EQ(component->queue(&items), C2_OK);
- ALOGV("Frame #%d size = %d queued", frameID, bytesCount);
- nFrames--;
- timestamp += timestampIncr;
- frameID++;
- maxRetry = 0;
- }
-}
-
-TEST_F(Codec2AudioEncHidlTest, validateCompName) {
- if (mDisableTest) return;
- ALOGV("Checks if the given component is a valid audio component");
- validateComponent(mComponent, mCompName, mDisableTest);
- ASSERT_EQ(mDisableTest, false);
-}
-
-TEST_F(Codec2AudioEncHidlTest, EncodeTest) {
- ALOGV("EncodeTest");
- if (mDisableTest) return;
- ASSERT_EQ(mComponent->start(), C2_OK);
- char mURL[512];
- strcpy(mURL, gEnv->getRes().c_str());
- GetURLForComponent(mCompName, mURL);
-
- // Setting default configuration
- int32_t nChannels = 2;
- int32_t nSampleRate = 44100;
- int32_t samplesPerFrame = 1024;
- switch (mCompName) {
- case aac:
- nChannels = 2;
- nSampleRate = 48000;
- samplesPerFrame = 1024;
- break;
- case flac:
- nChannels = 2;
- nSampleRate = 48000;
- samplesPerFrame = 1152;
- break;
- case opus:
- nChannels = 2;
- nSampleRate = 48000;
- samplesPerFrame = 960;
- break;
- case amrnb:
- nChannels = 1;
- nSampleRate = 8000;
- samplesPerFrame = 160;
- break;
- case amrwb:
- nChannels = 1;
- nSampleRate = 16000;
- samplesPerFrame = 160;
- break;
- default:
- ASSERT_TRUE(false);
- }
- setupConfigParam(mComponent, nChannels, nSampleRate);
- std::ifstream eleStream;
- uint32_t numFrames = 128;
- eleStream.open(mURL, std::ifstream::binary);
- ASSERT_EQ(eleStream.is_open(), true);
- ALOGV("mURL : %s", mURL);
- ASSERT_NO_FATAL_FAILURE(
- encodeNFrames(mComponent, mQueueLock, mQueueCondition, mWorkQueue,
- mFlushedIndices, mLinearPool, eleStream, numFrames,
- samplesPerFrame, nChannels, nSampleRate));
- // blocking call to ensures application to Wait till all the inputs are
- // consumed
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue));
- eleStream.close();
- if (mFramesReceived != numFrames) {
- ALOGE("Input buffer count and Output buffer count mismatch");
- ALOGE("framesReceived : %d inputFrames : %u", mFramesReceived, numFrames);
- ASSERT_TRUE(false);
- }
- if ((mCompName == flac || mCompName == opus || mCompName == aac)) {
- if (!mCsd) {
- ALOGE("CSD buffer missing");
- ASSERT_TRUE(false);
- }
- }
- ASSERT_EQ(mEos, true);
- ASSERT_EQ(mComponent->stop(), C2_OK);
-}
-
-TEST_F(Codec2AudioEncHidlTest, EOSTest) {
- description("Test empty input buffer with EOS flag");
- if (mDisableTest) return;
- ASSERT_EQ(mComponent->start(), C2_OK);
-
- typedef std::unique_lock<std::mutex> ULock;
- std::unique_ptr<C2Work> work;
- {
- ULock l(mQueueLock);
- if (!mWorkQueue.empty()) {
- work.swap(mWorkQueue.front());
- mWorkQueue.pop_front();
- } else {
- ALOGE("mWorkQueue Empty is not expected at the start of the test");
- ASSERT_TRUE(false);
- }
- }
- ASSERT_NE(work, nullptr);
- work->input.flags = (C2FrameData::flags_t)C2FrameData::FLAG_END_OF_STREAM;
- work->input.ordinal.timestamp = 0;
- work->input.ordinal.frameIndex = 0;
- work->input.buffers.clear();
- work->worklets.clear();
- work->worklets.emplace_back(new C2Worklet);
-
- std::list<std::unique_ptr<C2Work>> items;
- items.push_back(std::move(work));
- ASSERT_EQ(mComponent->queue(&items), C2_OK);
- uint32_t queueSize;
- {
- ULock l(mQueueLock);
- queueSize = mWorkQueue.size();
- if (queueSize < MAX_INPUT_BUFFERS) {
- mQueueCondition.wait_for(l, TIME_OUT);
- }
- }
- ASSERT_EQ(mEos, true);
- ASSERT_EQ(mComponent->stop(), C2_OK);
-}
-
-TEST_F(Codec2AudioEncHidlTest, FlushTest) {
- description("Test Request for flush");
- if (mDisableTest) return;
- ASSERT_EQ(mComponent->start(), C2_OK);
-
- typedef std::unique_lock<std::mutex> ULock;
- char mURL[512];
- strcpy(mURL, gEnv->getRes().c_str());
- GetURLForComponent(mCompName, mURL);
-
- // Setting default configuration
- mFlushedIndices.clear();
- int32_t nChannels = 2;
- int32_t nSampleRate = 44100;
- int32_t samplesPerFrame = 1024;
- switch (mCompName) {
- case aac:
- nChannels = 2;
- nSampleRate = 48000;
- samplesPerFrame = 1024;
- break;
- case flac:
- nChannels = 2;
- nSampleRate = 48000;
- samplesPerFrame = 1152;
- break;
- case opus:
- nChannels = 2;
- nSampleRate = 48000;
- samplesPerFrame = 960;
- break;
- case amrnb:
- nChannels = 1;
- nSampleRate = 8000;
- samplesPerFrame = 160;
- break;
- case amrwb:
- nChannels = 1;
- nSampleRate = 16000;
- samplesPerFrame = 160;
- break;
- default:
- ASSERT_TRUE(false);
- }
- setupConfigParam(mComponent, nChannels, nSampleRate);
- std::ifstream eleStream;
- uint32_t numFramesFlushed = 30;
- uint32_t numFrames = 128;
- eleStream.open(mURL, std::ifstream::binary);
- ASSERT_EQ(eleStream.is_open(), true);
- ALOGV("mURL : %s", mURL);
- ASSERT_NO_FATAL_FAILURE(
- encodeNFrames(mComponent, mQueueLock, mQueueCondition, mWorkQueue,
- mFlushedIndices, mLinearPool, eleStream, numFramesFlushed,
- samplesPerFrame, nChannels, nSampleRate));
- std::list<std::unique_ptr<C2Work>> flushedWork;
- c2_status_t err =
- mComponent->flush(C2Component::FLUSH_COMPONENT, &flushedWork);
- ASSERT_EQ(err, C2_OK);
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue,
- (size_t)MAX_INPUT_BUFFERS - flushedWork.size()));
- uint64_t frameIndex;
- {
- //Update mFlushedIndices based on the index received from flush()
- ULock l(mQueueLock);
- for (std::unique_ptr<C2Work>& work : flushedWork) {
- ASSERT_NE(work, nullptr);
- frameIndex = work->input.ordinal.frameIndex.peeku();
- std::list<uint64_t>::iterator frameIndexIt =
- std::find(mFlushedIndices.begin(), mFlushedIndices.end(),
- frameIndex);
- if (!mFlushedIndices.empty() &&
- (frameIndexIt != mFlushedIndices.end())) {
- mFlushedIndices.erase(frameIndexIt);
- work->input.buffers.clear();
- work->worklets.clear();
- mWorkQueue.push_back(std::move(work));
- }
- }
- }
- mFlushedIndices.clear();
- ASSERT_NO_FATAL_FAILURE(
- encodeNFrames(mComponent, mQueueLock, mQueueCondition, mWorkQueue,
- mFlushedIndices, mLinearPool, eleStream,
- numFrames - numFramesFlushed, samplesPerFrame,
- nChannels, nSampleRate, true));
- eleStream.close();
- err =
- mComponent->flush(C2Component::FLUSH_COMPONENT, &flushedWork);
- ASSERT_EQ(err, C2_OK);
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue,
- (size_t)MAX_INPUT_BUFFERS - flushedWork.size()));
- {
- //Update mFlushedIndices based on the index received from flush()
- ULock l(mQueueLock);
- for (std::unique_ptr<C2Work>& work : flushedWork) {
- ASSERT_NE(work, nullptr);
- frameIndex = work->input.ordinal.frameIndex.peeku();
- std::list<uint64_t>::iterator frameIndexIt =
- std::find(mFlushedIndices.begin(), mFlushedIndices.end(),
- frameIndex);
- if (!mFlushedIndices.empty() &&
- (frameIndexIt != mFlushedIndices.end())) {
- mFlushedIndices.erase(frameIndexIt);
- work->input.buffers.clear();
- work->worklets.clear();
- mWorkQueue.push_back(std::move(work));
- }
- }
- }
- ASSERT_EQ(mFlushedIndices.empty(), true);
- ASSERT_EQ(mComponent->stop(), C2_OK);
-}
-
-} // anonymous namespace
-
-int main(int argc, char** argv) {
- gEnv = new ComponentTestEnvironment();
- ::testing::AddGlobalTestEnvironment(gEnv);
- ::testing::InitGoogleTest(&argc, argv);
- gEnv->init(&argc, argv);
- int status = gEnv->initFromOptions(argc, argv);
- if (status == 0) {
- int status = RUN_ALL_TESTS();
- LOG(INFO) << "C2 Test result = " << status;
- }
- return status;
-}
diff --git a/codec2/hidl/1.0/mts/audio/media_c2_audio_hidl_test_common.h b/codec2/hidl/1.0/mts/audio/media_c2_audio_hidl_test_common.h
deleted file mode 100644
index 4d773ce..0000000
--- a/codec2/hidl/1.0/mts/audio/media_c2_audio_hidl_test_common.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef MEDIA_C2_AUDIO_HIDL_TEST_COMMON_H
-#define MEDIA_C2_AUDIO_HIDL_TEST_COMMON_H
-
-
-#endif // MEDIA_C2_AUDIO_HIDL_TEST_COMMON_H
diff --git a/codec2/hidl/1.0/mts/common/Android.bp b/codec2/hidl/1.0/mts/common/Android.bp
deleted file mode 100644
index 403e470..0000000
--- a/codec2/hidl/1.0/mts/common/Android.bp
+++ /dev/null
@@ -1,33 +0,0 @@
-cc_library_static {
- name: "MtsMediaC2V1_0CommonUtil",
- defaults: [
- "VtsHalTargetTestDefaults",
- "libstagefright_codec2-hidl-defaults",
- ],
-
- include_dirs: [
- "hardware/google/av/codec2/hidl/client/include",
- ],
-
- srcs: [
- "media_c2_hidl_test_common.cpp",
- ],
-
- export_include_dirs: ["."],
-}
-
-cc_defaults {
- name: "MtsMediaC2V1_0Defaults",
- defaults: [
- "VtsHalTargetTestDefaults",
- "libstagefright_codec2-hidl-defaults",
- ],
-
- static_libs: [
- "MtsMediaC2V1_0CommonUtil",
- ],
-
- shared_libs: [
- "libcodec2_hidl_client",
- ],
-}
diff --git a/codec2/hidl/1.0/mts/common/README.md b/codec2/hidl/1.0/mts/common/README.md
deleted file mode 100644
index da569a8..0000000
--- a/codec2/hidl/1.0/mts/common/README.md
+++ /dev/null
@@ -1,22 +0,0 @@
-## Codec2 Hal @ 1.0 tests ##
----
-#### master :
-Functionality of master is to enumerate all the Codec2 components available in C2 media service.
-
-usage: MtsHidlC2V1\_0TargetMasterTest -I software
-
-#### component :
-Functionality of component is to test common functionality across all the Codec2 components available in C2 media service. For a standard C2 component, these tests are expected to pass.
-
-usage: MtsHidlC2V1\_0TargetComponentTest -I software -C <comp name>
-
-#### audio :
-Functionality of audio test is to validate audio specific functionality Codec2 components. The resource files for this test are taken from hardware/interfaces/media/res. The path to these files on the device is required to be given for bitstream tests.
-
-usage: MtsHidlC2V1\_0TargetAudioDecTest -I software -C <comp name> -P /sdcard/media
-
-#### video :
-Functionality of video test is to validate video specific functionality Codec2 components. The resource files for this test are taken from hardware/interfaces/media/res. The path to these files on the device is required to be given for bitstream tests.
-
-usage: MtsHidlC2V1\_0TargetVideoDecTest -I software -C <comp name> -P /sdcard/media
-
diff --git a/codec2/hidl/1.0/mts/common/media_c2_hidl_test_common.cpp b/codec2/hidl/1.0/mts/common/media_c2_hidl_test_common.cpp
deleted file mode 100644
index 64a458c..0000000
--- a/codec2/hidl/1.0/mts/common/media_c2_hidl_test_common.cpp
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// #define LOG_NDEBUG 0
-#define LOG_TAG "media_c2_hidl_test_common"
-#include <stdio.h>
-
-#include "media_c2_hidl_test_common.h"
-
-// Test the codecs for NullBuffer, Empty Input Buffer with(out) flags set
-void testInputBuffer(
- const std::shared_ptr<android::Codec2Client::Component>& component,
- std::mutex& queueLock, std::list<std::unique_ptr<C2Work>>& workQueue,
- uint32_t flags, bool isNullBuffer) {
- std::unique_ptr<C2Work> work;
- {
- typedef std::unique_lock<std::mutex> ULock;
- ULock l(queueLock);
- if (!workQueue.empty()) {
- work.swap(workQueue.front());
- workQueue.pop_front();
- } else {
- ASSERT_TRUE(false) << "workQueue Empty at the start of test";
- }
- }
- ASSERT_NE(work, nullptr);
-
- work->input.flags = (C2FrameData::flags_t)flags;
- work->input.ordinal.timestamp = 0;
- work->input.ordinal.frameIndex = 0;
- work->input.buffers.clear();
- if (isNullBuffer) {
- work->input.buffers.emplace_back(nullptr);
- }
- work->worklets.clear();
- work->worklets.emplace_back(new C2Worklet);
-
- std::list<std::unique_ptr<C2Work>> items;
- items.push_back(std::move(work));
- ASSERT_EQ(component->queue(&items), C2_OK);
-}
-
-// Wait for all the inputs to be consumed by the plugin.
-void waitOnInputConsumption(std::mutex& queueLock,
- std::condition_variable& queueCondition,
- std::list<std::unique_ptr<C2Work>>& workQueue,
- size_t bufferCount) {
- typedef std::unique_lock<std::mutex> ULock;
- uint32_t queueSize;
- uint32_t maxRetry = 0;
- {
- ULock l(queueLock);
- queueSize = workQueue.size();
- }
- while ((maxRetry < MAX_RETRY) && (queueSize < bufferCount)) {
- ULock l(queueLock);
- if (queueSize != workQueue.size()) {
- queueSize = workQueue.size();
- maxRetry = 0;
- } else {
- queueCondition.wait_for(l, TIME_OUT);
- maxRetry++;
- }
- }
-}
-
-// process onWorkDone received by Listener
-void workDone(
- const std::shared_ptr<android::Codec2Client::Component>& component,
- std::unique_ptr<C2Work>& work, std::list<uint64_t>& flushedIndices,
- std::mutex& queueLock, std::condition_variable& queueCondition,
- std::list<std::unique_ptr<C2Work>>& workQueue, bool& eos, bool& csd,
- uint32_t& framesReceived) {
- // handle configuration changes in work done
- if (work->worklets.front()->output.configUpdate.size() != 0) {
- ALOGV("Config Update");
- std::vector<std::unique_ptr<C2Param>> updates =
- std::move(work->worklets.front()->output.configUpdate);
- std::vector<C2Param*> configParam;
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- for (size_t i = 0; i < updates.size(); ++i) {
- C2Param* param = updates[i].get();
- if (param->index() == C2StreamCsdInfo::output::PARAM_TYPE) {
- csd = true;
- } else if ((param->index() ==
- C2StreamSampleRateInfo::output::PARAM_TYPE) ||
- (param->index() ==
- C2StreamChannelCountInfo::output::PARAM_TYPE) ||
- (param->index() ==
- C2VideoSizeStreamInfo::output::PARAM_TYPE)) {
- configParam.push_back(param);
- }
- }
- component->config(configParam, C2_DONT_BLOCK, &failures);
- ASSERT_EQ(failures.size(), 0u);
- }
- framesReceived++;
- eos = (work->worklets.front()->output.flags &
- C2FrameData::FLAG_END_OF_STREAM) != 0;
- auto frameIndexIt = std::find(flushedIndices.begin(), flushedIndices.end(),
- work->input.ordinal.frameIndex.peeku());
- ALOGV("WorkDone: frameID received %d",
- (int)work->worklets.front()->output.ordinal.frameIndex.peeku());
- work->input.buffers.clear();
- work->worklets.clear();
- {
- typedef std::unique_lock<std::mutex> ULock;
- ULock l(queueLock);
- workQueue.push_back(std::move(work));
- if (!flushedIndices.empty()) {
- flushedIndices.erase(frameIndexIt);
- }
- queueCondition.notify_all();
- }
-}
\ No newline at end of file
diff --git a/codec2/hidl/1.0/mts/common/media_c2_hidl_test_common.h b/codec2/hidl/1.0/mts/common/media_c2_hidl_test_common.h
deleted file mode 100644
index 04e02c9..0000000
--- a/codec2/hidl/1.0/mts/common/media_c2_hidl_test_common.h
+++ /dev/null
@@ -1,201 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef MEDIA_C2_HIDL_TEST_COMMON_H
-#define MEDIA_C2_HIDL_TEST_COMMON_H
-
-#include <codec2/hidl/client.h>
-
-#include <hardware/google/media/c2/1.0/types.h>
-
-#include <C2Component.h>
-#include <C2Config.h>
-#include <getopt.h>
-#include <hidl/HidlSupport.h>
-#include <media/stagefright/foundation/ALooper.h>
-#include <media/stagefright/foundation/Mutexed.h>
-
-using namespace ::hardware::google::media::c2::V1_0;
-using namespace ::hardware::google::media::c2::V1_0::utils;
-
-using ::android::Mutexed;
-using ::android::hardware::Void;
-using ::android::hardware::Return;
-using ::android::hardware::hidl_vec;
-using ::android::hardware::hidl_string;
-
-#include <VtsHalHidlTargetTestEnvBase.h>
-
-#define MAX_RETRY 20
-#define TIME_OUT 400ms
-#define MAX_INPUT_BUFFERS 8
-
-/*
- * Handle Callback functions onWorkDone(), onTripped(),
- * onError(), onDeath(), onFramesRendered()
- */
-struct CodecListener : public android::Codec2Client::Listener {
- public:
- CodecListener(
- const std::function<void(std::list<std::unique_ptr<C2Work>>& workItems)> fn =
- nullptr)
- : callBack(fn) {}
- virtual void onWorkDone(
- const std::weak_ptr<android::Codec2Client::Component>& comp,
- std::list<std::unique_ptr<C2Work>>& workItems,
- size_t numDiscardedInputBuffers) override {
- /* TODO */
- ALOGD("onWorkDone called");
- (void)comp;
- (void)numDiscardedInputBuffers;
- if (callBack) callBack(workItems);
- }
-
- virtual void onTripped(
- const std::weak_ptr<android::Codec2Client::Component>& comp,
- const std::vector<std::shared_ptr<C2SettingResult>>& settingResults)
- override {
- /* TODO */
- (void)comp;
- (void)settingResults;
- }
-
- virtual void onError(
- const std::weak_ptr<android::Codec2Client::Component>& comp,
- uint32_t errorCode) override {
- /* TODO */
- (void)comp;
- ALOGD("onError called");
- if (errorCode != 0) ALOGE("Error : %u", errorCode);
- }
-
- virtual void onDeath(
- const std::weak_ptr<android::Codec2Client::Component>& comp) override {
- /* TODO */
- (void)comp;
- }
-
- virtual void onInputBufferDone(
- const std::shared_ptr<C2Buffer>& buffer) override {
- /* TODO */
- (void)buffer;
- }
-
- virtual void onFramesRendered(
- const std::vector<RenderedFrame>& renderedFrames) override {
- /* TODO */
- (void)renderedFrames;
- }
- // std::mutex mQueueLock;
- // std::condition_variable mQueueCondition;
- // std::list<std::unique_ptr<C2Work>> mWorkQueue;
- std::function<void(std::list<std::unique_ptr<C2Work>>& workItems)> callBack;
-};
-
-// A class for test environment setup
-class ComponentTestEnvironment : public ::testing::VtsHalHidlTargetTestEnvBase {
- private:
- typedef ::testing::VtsHalHidlTargetTestEnvBase Super;
-
- public:
- virtual void registerTestServices() override {
- registerTestService<IComponentStore>();
- }
-
- ComponentTestEnvironment() : res("/sdcard/media/") {}
-
- void setComponent(const char* _component) { component = _component; }
-
- void setInstance(const char* _instance) { instance = _instance; }
-
- void setRes(const char* _res) { res = _res; }
-
- const hidl_string getInstance() const { return instance; }
-
- const hidl_string getComponent() const { return component; }
-
- const hidl_string getRes() const { return res; }
-
- int initFromOptions(int argc, char** argv) {
- static struct option options[] = {
- {"instance", required_argument, 0, 'I'},
- {"component", required_argument, 0, 'C'},
- {"res", required_argument, 0, 'P'},
- {0, 0, 0, 0}};
-
- while (true) {
- int index = 0;
- int c = getopt_long(argc, argv, "I:C:P:", options, &index);
- if (c == -1) {
- break;
- }
-
- switch (c) {
- case 'I':
- setInstance(optarg);
- break;
- case 'C':
- setComponent(optarg);
- break;
- case 'P':
- setRes(optarg);
- break;
- case '?':
- break;
- }
- }
-
- if (optind < argc) {
- fprintf(stderr,
- "unrecognized option: %s\n\n"
- "usage: %s <gtest options> <test options>\n\n"
- "test options are:\n\n"
- "-I, --instance: software for C2 components, else default\n"
- "-C, --component: C2 component to test\n"
- "-P, --res: Resource files directory location\n",
- argv[optind ?: 1], argv[0]);
- return 2;
- }
- return 0;
- }
-
- private:
- hidl_string instance;
- hidl_string component;
- hidl_string res;
-};
-
-/*
- * common functions declarations
- */
-void testInputBuffer(
- const std::shared_ptr<android::Codec2Client::Component>& component,
- std::mutex& queueLock, std::list<std::unique_ptr<C2Work>>& workQueue,
- uint32_t flags, bool isNullBuffer);
-
-void waitOnInputConsumption(std::mutex& queueLock,
- std::condition_variable& queueCondition,
- std::list<std::unique_ptr<C2Work>>& workQueue,
- size_t bufferCount = MAX_INPUT_BUFFERS);
-
-void workDone(
- const std::shared_ptr<android::Codec2Client::Component>& component,
- std::unique_ptr<C2Work>& work, std::list<uint64_t>& flushedIndices,
- std::mutex& queueLock, std::condition_variable& queueCondition,
- std::list<std::unique_ptr<C2Work>>& workQueue, bool& eos, bool& csd,
- uint32_t& framesReceived);
-
-#endif // MEDIA_C2_HIDL_TEST_COMMON_H
diff --git a/codec2/hidl/1.0/mts/component/Android.bp b/codec2/hidl/1.0/mts/component/Android.bp
deleted file mode 100644
index 77f1d49..0000000
--- a/codec2/hidl/1.0/mts/component/Android.bp
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-cc_test {
- name: "MtsHidlC2V1_0TargetComponentTest",
- defaults: ["MtsMediaC2V1_0Defaults"],
- srcs: ["MtsHidlC2V1_0TargetComponentTest.cpp"],
-}
-
diff --git a/codec2/hidl/1.0/mts/component/MtsHidlC2V1_0TargetComponentTest.cpp b/codec2/hidl/1.0/mts/component/MtsHidlC2V1_0TargetComponentTest.cpp
deleted file mode 100644
index ec803d7..0000000
--- a/codec2/hidl/1.0/mts/component/MtsHidlC2V1_0TargetComponentTest.cpp
+++ /dev/null
@@ -1,262 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "codec2_hidl_hal_component_test"
-
-#include <android-base/logging.h>
-#include <gtest/gtest.h>
-
-#include <C2Config.h>
-#include <codec2/hidl/client.h>
-
-#include <VtsHalHidlTargetTestBase.h>
-#include "media_c2_hidl_test_common.h"
-
-static ComponentTestEnvironment* gEnv = nullptr;
-
-namespace {
-
-// google.codec2 Component test setup
-class Codec2ComponentHidlTest : public ::testing::VtsHalHidlTargetTestBase {
- private:
- typedef ::testing::VtsHalHidlTargetTestBase Super;
-
- public:
- virtual void SetUp() override {
- Super::SetUp();
- mEos = false;
- mClient = android::Codec2Client::CreateFromService(
- gEnv->getInstance().c_str());
- ASSERT_NE(mClient, nullptr);
- mListener.reset(new CodecListener(
- [this](std::list<std::unique_ptr<C2Work>>& workItems) {
- handleWorkDone(workItems);
- }));
- ASSERT_NE(mListener, nullptr);
- mClient->createComponent(gEnv->getComponent().c_str(), mListener,
- &mComponent);
- ASSERT_NE(mComponent, nullptr);
- for (int i = 0; i < MAX_INPUT_BUFFERS; ++i) {
- mWorkQueue.emplace_back(new C2Work);
- }
- }
-
- virtual void TearDown() override {
- if (mComponent != nullptr) {
- // If you have encountered a fatal failure, it is possible that
- // freeNode() will not go through. Instead of hanging the app.
- // let it pass through and report errors
- if (::testing::Test::HasFatalFailure()) return;
- mComponent->release();
- mComponent = nullptr;
- }
- Super::TearDown();
- }
- // callback function to process onWorkDone received by Listener
- void handleWorkDone(std::list<std::unique_ptr<C2Work>>& workItems) {
- for (std::unique_ptr<C2Work>& work : workItems) {
- if (!work->worklets.empty()) {
- bool mCsd = false;
- uint32_t mFramesReceived = 0;
- std::list<uint64_t> mFlushedIndices;
- workDone(mComponent, work, mFlushedIndices, mQueueLock, mQueueCondition,
- mWorkQueue, mEos, mCsd, mFramesReceived);
- }
- }
- }
-
- bool mEos;
- std::mutex mQueueLock;
- std::condition_variable mQueueCondition;
- std::list<std::unique_ptr<C2Work>> mWorkQueue;
-
- std::shared_ptr<android::Codec2Client> mClient;
- std::shared_ptr<android::Codec2Client::Listener> mListener;
- std::shared_ptr<android::Codec2Client::Component> mComponent;
-
- protected:
- static void description(const std::string& description) {
- RecordProperty("description", description);
- }
-};
-
-// Test Empty Flush
-TEST_F(Codec2ComponentHidlTest, EmptyFlush) {
- ALOGV("Empty Flush Test");
- c2_status_t err = mComponent->start();
- ASSERT_EQ(err, C2_OK);
-
- std::list<std::unique_ptr<C2Work>> flushedWork;
- err = mComponent->flush(C2Component::FLUSH_COMPONENT, &flushedWork);
- ASSERT_EQ(err, C2_OK);
-
- err = mComponent->stop();
- ASSERT_EQ(err, C2_OK);
- // Empty Flush should not return any work
- ASSERT_EQ(flushedWork.size(), 0u);
-}
-
-// Test Queue Empty Work
-TEST_F(Codec2ComponentHidlTest, QueueEmptyWork) {
- ALOGV("Queue Empty Work Test");
- c2_status_t err = mComponent->start();
- ASSERT_EQ(err, C2_OK);
-
- // Queueing an empty WorkBundle
- std::list<std::unique_ptr<C2Work>> workList;
- err = mComponent->queue(&workList);
- ASSERT_EQ(err, C2_OK);
-
- err = mComponent->reset();
- ASSERT_EQ(err, C2_OK);
-}
-
-// Test Component Configuration
-TEST_F(Codec2ComponentHidlTest, Config) {
- ALOGV("Configuration Test");
-
- C2String name = mComponent->getName();
- EXPECT_NE(name.empty(), true) << "Invalid Component Name";
-
- c2_status_t err = C2_OK;
- std::vector<std::unique_ptr<C2Param>> queried;
- std::vector<std::unique_ptr<C2SettingResult>> failures;
-
- // Query supported params by the component
- std::vector<std::shared_ptr<C2ParamDescriptor>> params;
- err = mComponent->querySupportedParams(¶ms);
- ASSERT_EQ(err, C2_OK);
- ALOGV("Number of total params - %zu", params.size());
-
- // Query and config all the supported params
- for (std::shared_ptr<C2ParamDescriptor> p : params) {
- ALOGD("Querying index %d", (int)p->index());
- err = mComponent->query({}, {p->index()}, C2_DONT_BLOCK, &queried);
- EXPECT_NE(queried.size(), 0u);
- EXPECT_EQ(err, C2_OK);
- err = mComponent->config({queried[0].get()}, C2_DONT_BLOCK, &failures);
- ASSERT_EQ(err, C2_OK);
- ASSERT_EQ(failures.size(), 0u);
- }
-}
-
-// Test Multiple Start Stop Reset Test
-TEST_F(Codec2ComponentHidlTest, MultipleStartStopReset) {
- ALOGV("Multiple Start Stop and Reset Test");
- c2_status_t err = C2_OK;
-
- for (size_t i = 0; i < MAX_RETRY; i++) {
- err = mComponent->start();
- ASSERT_EQ(err, C2_OK);
-
- err = mComponent->stop();
- ASSERT_EQ(err, C2_OK);
- }
-
- err = mComponent->start();
- ASSERT_EQ(err, C2_OK);
-
- for (size_t i = 0; i < MAX_RETRY; i++) {
- err = mComponent->reset();
- ASSERT_EQ(err, C2_OK);
- }
-
- err = mComponent->start();
- ASSERT_EQ(err, C2_OK);
-
- err = mComponent->stop();
- ASSERT_EQ(err, C2_OK);
-
- // Second stop should return error
- err = mComponent->stop();
- ASSERT_NE(err, C2_OK);
-}
-
-// Test Component Release API
-TEST_F(Codec2ComponentHidlTest, MultipleRelease) {
- ALOGV("Multiple Release Test");
- c2_status_t err = mComponent->start();
- ASSERT_EQ(err, C2_OK);
-
- // Query Component Domain Type
- std::vector<std::unique_ptr<C2Param>> queried;
- err = mComponent->query({}, {C2PortMediaTypeSetting::input::PARAM_TYPE},
- C2_DONT_BLOCK, &queried);
- EXPECT_NE(queried.size(), 0u);
-
- // Configure Component Domain
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- C2PortMediaTypeSetting::input* portMediaType =
- C2PortMediaTypeSetting::input::From(queried[0].get());
- err = mComponent->config({portMediaType}, C2_DONT_BLOCK, &failures);
- ASSERT_EQ(err, C2_OK);
- ASSERT_EQ(failures.size(), 0u);
-
- for (size_t i = 0; i < MAX_RETRY; i++) {
- err = mComponent->release();
- ASSERT_EQ(err, C2_OK);
- }
-}
-
-class Codec2ComponentInputTests : public Codec2ComponentHidlTest,
- public ::testing::WithParamInterface<std::pair<uint32_t, bool> > {
-};
-
-TEST_P(Codec2ComponentInputTests, InputBufferTest) {
- description("Tests for different inputs");
-
- uint32_t flags = GetParam().first;
- bool isNullBuffer = GetParam().second;
- if (isNullBuffer) ALOGD("Testing for null input buffer with flag : %u", flags);
- else ALOGD("Testing for empty input buffer with flag : %u", flags);
- mEos = false;
- ASSERT_EQ(mComponent->start(), C2_OK);
- ASSERT_NO_FATAL_FAILURE(testInputBuffer(
- mComponent, mQueueLock, mWorkQueue, flags, isNullBuffer));
-
- ALOGD("Waiting for input consumption");
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue));
-
- if (flags == C2FrameData::FLAG_END_OF_STREAM) ASSERT_EQ(mEos, true);
- ASSERT_EQ(mComponent->stop(), C2_OK);
- ASSERT_EQ(mComponent->reset(), C2_OK);
-}
-
-INSTANTIATE_TEST_CASE_P(NonStdInputs, Codec2ComponentInputTests, ::testing::Values(
- std::make_pair(0, true),
- std::make_pair(C2FrameData::FLAG_END_OF_STREAM, true),
- std::make_pair(0, false),
- std::make_pair(C2FrameData::FLAG_CODEC_CONFIG, false),
- std::make_pair(C2FrameData::FLAG_END_OF_STREAM, false)));
-
-} // anonymous namespace
-
-// TODO: Add test for Invalid work,
-// TODO: Add test for Invalid states
-int main(int argc, char** argv) {
- gEnv = new ComponentTestEnvironment();
- ::testing::AddGlobalTestEnvironment(gEnv);
- ::testing::InitGoogleTest(&argc, argv);
- gEnv->init(&argc, argv);
- int status = gEnv->initFromOptions(argc, argv);
- if (status == 0) {
- status = RUN_ALL_TESTS();
- LOG(INFO) << "C2 Test result = " << status;
- }
- return status;
-}
diff --git a/codec2/hidl/1.0/mts/master/Android.bp b/codec2/hidl/1.0/mts/master/Android.bp
deleted file mode 100644
index 42b3a44..0000000
--- a/codec2/hidl/1.0/mts/master/Android.bp
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-cc_test {
- name: "MtsHidlC2V1_0TargetMasterTest",
- defaults: ["MtsMediaC2V1_0Defaults"],
- srcs: ["MtsHidlC2V1_0TargetMasterTest.cpp"],
-}
-
diff --git a/codec2/hidl/1.0/mts/master/MtsHidlC2V1_0TargetMasterTest.cpp b/codec2/hidl/1.0/mts/master/MtsHidlC2V1_0TargetMasterTest.cpp
deleted file mode 100644
index 01e64cb..0000000
--- a/codec2/hidl/1.0/mts/master/MtsHidlC2V1_0TargetMasterTest.cpp
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "codec2_hidl_hal_master_test"
-
-#include <android-base/logging.h>
-#include <gtest/gtest.h>
-
-#include <codec2/hidl/client.h>
-
-#include <VtsHalHidlTargetTestBase.h>
-#include "media_c2_hidl_test_common.h"
-
-static ComponentTestEnvironment* gEnv = nullptr;
-
-namespace {
-
-// google.codec2 Master test setup
-class Codec2MasterHalTest : public ::testing::VtsHalHidlTargetTestBase {
- private:
- typedef ::testing::VtsHalHidlTargetTestBase Super;
-
- public:
- virtual void SetUp() override {
- Super::SetUp();
- mClient = android::Codec2Client::CreateFromService(
- gEnv->getInstance().c_str());
- ASSERT_NE(mClient, nullptr);
- }
-
- protected:
- static void description(const std::string& description) {
- RecordProperty("description", description);
- }
-
- std::shared_ptr<android::Codec2Client> mClient;
-};
-
-void displayComponentInfo(const std::vector<C2Component::Traits>& compList) {
- for (size_t i = 0; i < compList.size(); i++) {
- std::cout << compList[i].name << " | " << compList[i].domain;
- std::cout << " | " << compList[i].kind << "\n";
- }
-}
-
-// List Components
-TEST_F(Codec2MasterHalTest, ListComponents) {
- ALOGV("ListComponents Test");
-
- C2String name = mClient->getName();
- EXPECT_NE(name.empty(), true) << "Invalid Codec2Client Name";
-
- // Get List of components from HIDL Codec2Client instance
- const std::vector<C2Component::Traits> listTraits =
- mClient->ListComponents();
-
- if (listTraits.size() == 0)
- ALOGE("Warning, ComponentInfo list empty");
- else {
- (void)displayComponentInfo;
- for (size_t i = 0; i < listTraits.size(); i++) {
- std::shared_ptr<android::Codec2Client::Listener> listener;
- std::shared_ptr<android::Codec2Client::Component> component;
- listener.reset(new CodecListener());
- ASSERT_NE(listener, nullptr);
-
- mClient->createComponent(listTraits[i].name.c_str(), listener,
- &component);
- ASSERT_NE(component, nullptr) << "Create component failed for "
- << listTraits[i].name.c_str();
- }
- }
-}
-
-} // anonymous namespace
-
-int main(int argc, char** argv) {
- gEnv = new ComponentTestEnvironment();
- ::testing::InitGoogleTest(&argc, argv);
- gEnv->init(&argc, argv);
- int status = gEnv->initFromOptions(argc, argv);
- if (status == 0) {
- status = RUN_ALL_TESTS();
- LOG(INFO) << "C2 Test result = " << status;
- }
- return status;
-}
diff --git a/codec2/hidl/1.0/mts/res/bbb_352x288_420p_30fps_32frames.yuv b/codec2/hidl/1.0/mts/res/bbb_352x288_420p_30fps_32frames.yuv
deleted file mode 100644
index b5a3e4b..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_352x288_420p_30fps_32frames.yuv
+++ /dev/null
@@ -1 +0,0 @@
-ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÒÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;<?;?<=<?>?A=AA>CCDB@A>:;?DDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌÌÌËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<C9;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;>BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÔÓÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677<;>:=:::88:;;88::;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::>;D<=:<<98:9::9;<::;9><>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA=366:;<8C<AA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖËËËÌËËËËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9>CE?<;999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNG¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖËËÌÌËËËËËËËËËËËËÊÊËËËËÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÚÛÛÛÙÙÙÙÙÙÙÙÚÚÚÚÚÚØÖ×××××××Ø×Ø×××ÚÛÚÚÚÚÚÚÚÛÜÛÛÛÜÜÜÜÜÜÜÜÝÜÛÛÛÛÚÔÓÓÓÓÓÓÓÓÓÓÔÔÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXdIILN@99:3;@<7=9AC=@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMMF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÏÐÏÏÏÏÏÏÏÏÏÏÏÏÖÞÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`ccccccccccdde¦º¸¸¸¸¸¸¸¸¸¸¸¹´ÓÓÓÓÓÓÓÒÒÒÒÓÓÓÛâáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃrliNRbLLVM<::77>C?8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKPFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÌÐÒÒÒÒÒÒÒÒÒÒÒÒÑÞëëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¤XRSSSSSSSSSSSTMCDDDDDDCCCDC?]ÑÓÓÓÓÓÓÒÒÒÒÒÒÒßêëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËwliJN_MRUM><<7;@C>6:7>?;=B@9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÌÐÒÒÒÒÒÒÒÒÒÒÒÒÑÝêééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¦\VWWWWWWWWWWWXQIIIIIIIIHHHHD`ÐÓÒÒÒÒÒÒÒÒÒÒÒÑßêêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;>@@8:;8<<<;>::;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÍÏÑÑÒÒÒÒÒÒÑÒÑÑÐÜèççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbabaabbbbbb^¬©©©©©©©©©©©ª£gabbbbbbbbbbbb\TTTTTTTTTTTUQkÐÒÒÒÒÒÒÒÒÒÒÒÒÑßéééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9::=<;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÍÎÎÎÎÎÎÎÎÎÍÌÌÌÎÏÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÎÎÎÎÎÍËÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÅÆÆÆËÌËÌËÌÌÌÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÑÍÌÌÌÌÌÌÌÌÌËËËËÊÊÊÊÊÊÊÊËËÊÊËËÍÕÕÕÖÖÖÖÖÖÖÖÖÖÕ×ØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<7@A<=8:;898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÒÓÏÏÏÒÔÏÏÒÔÕÔÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÐÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÕÖÖÖÖÖÖ××××××××ÖÖÖÖÖÖÖ×××××××××××ØØ×ÖÖÖÖÖ×××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?89:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀÌÏÎÎÎÎÎÒ«ÏÐÓ¹ÑÐÈÏÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLB@==<=:<=B>BB@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÒ¶¥£Õ²µ¶¸¹¯¢ÒÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?><7:>9?D>@98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÏÎ⦫Ò}~¯°ÑÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>><<96?B?B9648:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÑ¿ ²ÈÕÒÍÃÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>?>:8E@?B;749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÓ´ª¸¤Û£ÕÓÀ ÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<=<964:98::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯Ê £¿Ê¥§ØªªÔÏÏÏÔ«~£ Ø¡ÕÕ°¢©ÔÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>9<97659:6:<;7<@@<::=:<?>=<9@<<::9?@==<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÔ¬§¡Ù¡ÕÔ£¡ºÔÑÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖ×××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CGDAA8;?<=;<<7558968;:9<:>?<==9<?>=::>9=::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÓ¶²²¥©Ú¡®ÖÍÉÒÑÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF?HHFE@<<>><==<756:96:;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÄ¢´Ú£¯Ø¡ÒÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸« ÇÕ¢«¤ÌØ¡Ú²¤¦ÖÒÒÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKK@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÓÈ´ÕÔ±ÃÖ¹¿ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUij[L_MJLJULFB<<?FEGKH=667:979:;:<=9>99:8;=>>A>=9<<:=>>;=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÔÈÁÕÑÒÑÃÕÒÑÂÓÒÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?ADLL@>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÑÓÔÒÒÒÒÕÓÓÓÕÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ==786977899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9599:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EIKAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDCI;AA;<886586987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFID<AA<;876797799=?A?<:9@?<>B?:8776=?@@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD88867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE><HF89757875898;>>=;89A>=@?A>7596;>AB??@@AB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCDECALH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HQA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßßààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELBA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<<DDDD>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAD?@;<88996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDE><<8:87995686673:>;>=7:>99996::87<CEG??;?>@=>A<;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;99:86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AD?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
¼ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkqtywt|}spxyÈÞÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxu|v}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsnupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9886543956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µ¶¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿½¾¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78473156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;;>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¸¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565454688686;:9<==;:86688:767>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®¯³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸¸·······¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPF>8;727967443588797;9:==<::974:98668??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹º¹¹¸··¶µµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269664737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³µµ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´µ´¶¶··¶µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶······¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸···¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B@?C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬«««¬¯°±¯¯°²µµ¶·µµ¶µµµµµ¶µ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©©¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶···¸·¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@AA:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬«ª§¥¥¥¥¥¦¨¨¨¨¨¥§¨¨§¨¨§¨¨©ª§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸·¶······¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637465738:::::<=::A<6=8378837;@??@@:BEC@BDCA?;;@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¥¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¥§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§¦¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©«««¬ªªª¨¦¦¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤¤£¢¢£¢¡ ¢¡¢£££¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¥¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@?BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡¤¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747578;=8::99;=;;89>6789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥£¢¡¡¡¡¢£¥§¦¦§¬«§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥¤¥¤¥¥¦¨¨§¨§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡££££¢£¥¦¦¦§§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¦¤£¡ ¡¡ ¡¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364689:89788:<;<9;;::67899>?@><=@>@:9@A?=A?>AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§§¥¤¢¡£§¦¥¥£¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¢¢¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB?DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¤¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846799=88;:;?;:;<:9:7768;<;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¦¦¥¤¦§¦¥¥¦¦¥¥£ ¡¡ ¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:737959989<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢£¢£¤¤¦¦¥¤¤£¢¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::78:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££¤¤¤¤¢¡¡¡µ¡¡ ¢¡ ¢¡¢£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;866:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¢¤¡¢¢¡¡ «¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86:756::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¢¢¢¡ ¥³¬ ®jv ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>99;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ¡ ¦« ¨D ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9<<>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢ b¦¡£QG ¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8:;<=:<>9?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¦f]£ ®uIL ¡¡¡ ¡¢¡ }xjabb\Q<@<68CVHDB:8;:>;7796=:99647:;<>9::;>;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq ¤Rx¢ ¤_VN¡£¥¢¡¢¢¡¡ ¢¡ ¡
wqgjd\\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?=CEB=B@<<<:g¤¢ ¨}ges{zs¢ [_£dZL¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[[LF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡]]v¢dYM~¢ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡`a`tcUN¢¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y i^[ej_PR¡¡}
£ª¡¢¤¢«±·´¹µ±´¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B@AB>>;CDD@CC>>>9a
y}{
kxvwsq}r ¡ shaTv\VPW
¡§ ¤£ª©³¶±µ°¨ª¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v} £¤nLOc
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VQQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;?<:=:>BA8?<:?86429;B@?B>=8@B??@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{ l¥_r
§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=99974869388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A>?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
~¢|nRuZq}|~}|¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¦ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>89875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
}wXOLpL`oqw
¢±®©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~£U/0=wwvAD^km¨®²°°µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWMO_^\NUUbQDTM;?9<895875795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
¡¡¢¦gAZH;wykgE/8[ls ¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUJTOOJDPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ªª©§¢¥¨©«©©¯Ko¡xA{wcbPPZG`n¡¡¤¤§¤©«®¬¥¤¨«¯±´®ª¬®³¯¬¬´´´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdWOYKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®««¬¤¡¢¦©§¨£x`¿Ö¦C{uOmuRd£¨§ ¢¡®¬«ª§®¨¥¤©©ª©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_VZNRNQOSe\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨§¦¨©§©©¤§§¤¥£¢b½À¯w£eLaxmQt¢¢ ¡¡¡¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOWP^edlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@<><99<ABEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤ ¢¡¢§¡¦®¦¦jº¦Ð¡±¨XL¬Se ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvxb_\UYQUW[c_s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?B?:8:>?C@DA:;>=@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯««¬¨¨«¯©¨ª¨¢ ¡¨ª±²¯«¢¢w~}rÎɱ§¯kUª°bZ¦¥¢¡¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\U\hdocmiib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9><B??ADB9:¤§¡ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£ £ªª§¯··´µ¶³®n͹¢tTozsn{¦ª§££¡¤¢§ £ ¡¥ ¤§ª©¨ª¬¥©¤¥©§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§£¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxjb[__\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>AE@=9;@B>C=;9>9@@@?BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ «²·»»»¹¹Á¸´µ ydY·À¦¨wkqoxxz}¢¥¦«¥¤¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨©«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥ ¡¨§¦¥£¡¤¢ ¡¥ vxyxc[RYT__amhvkqhiibZSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;>CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°²´µ·ÁÆÌÏÎÌɾ³¤sfRD~xqngflikqrqqrt|©ÄÄ»¢§ª¬§«©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¡¤§§¡ |xa^YSaiaftotitdidb[LK>:9898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÄÇÃÅÇÛããÚ˼¯¤tYZQCizlounkeeYW^X\ciihe`h´ÀÀ¹©¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`b_^kcbnxuwom[bRV\MG;<97979:7444143768<;:<<@@=@?>?>::9:7:?>EEE<==@BBBAA;<8@CC@D?;5^
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅƾÍÑÕʹ§r^QTKD[f^dkea`hYTXRVXY\XZt¶»«´²³©®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklgnvrrvrg^`\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@93[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÄ¿ÂÁÇËÈ·ueUPOTH>^k^_eb`]daSVVUSTWr«°ª¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|uklndomiqxoyjia]gaQFDA<997644:8465333656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB<89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄù¸ÃaIDGKD=[ebahc`[c_WQNOOU´º¬®¥¤¢§¤ ¥ª´±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{wnkihvZgsxszgg^d[RXIF?;78876169744333646;8:;;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÄÄÂÄÁOFME;M[_eke_[`YXRMT¢ª¹µ³«©£¡ª¬§¬´´¿Ã¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyvvefijh^kpnyxcba`^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈÌÊÂÂÄÉÌÍÎÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈÇÂÆjXG??G^cbj`ZXWSUv¶¾»¼º¼¬¦©»º¹·¿³µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««¬±££ £¢ £ }qtqocahvijjunyl^d[V`YLHD6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÁÃÄÆÉÅÌÐÍÇÌÉÂÂÇÂËËÈÇÌÉÎÅÆƽ©rPK0XSUfaSNOp©ÈÈÂÄÆÀ¼¾´±°°Á¾¾ÁÆÀ¾·¶Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®¯µ¥¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r}xpg`kjwmifvotc]cUWUTMG:7;9977:748784523425;:9>:=<?=8:=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÃÿ¿¾ÄËÈÊËɼ¼ÈÇÉÍÈÃÈÉÉÅÅÂÃÂÁ¼?Nv~VLo¤ËÔŶ¿¿À¿ºº½µ³³À¿¹¿Â¹Á·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£ ¦yzyspfegdkebknoo_Y]WVNPJF99;97677637895613527<<<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ãº¸¹¼¾ÁÇÁÆ»¹ÈÈÃÅÄÀÃÁÁÀÄÁ½¼Å§wjo©ÈÈÇÑÁ¯½½¸¹»»¾¸µ±º¿´¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬°§¦¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥£ ¤¢£¢¡£ ©¥¨}zxnfaebacddjcgd[ZZ]YQOE=;9:;77996499:5314527:;;@=?<<977;:9:<>@?>D<BAD@?>=BDBBB=:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹¾ºº´À¸µ·²®º»·À·¼ÊÏÀº¿À¼»Å½ºÀÄ¿½¾¯se}ÑÅ¿¿É¿°Á¿º·»¾¹¶¸´¸¼µ½¸µ´¯³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qdacchkggjfj^VVTYOTLF8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ¹¿»ÁÖ·¿»ÃµºÇ¶µ¸º¼¸¹¶ª£É¿¿»Á¾¹Æ½Â¿¼Å¸··µ¸¶¶¼»¹¶´¸ºµ³¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zyqmeegojelhYYOKKKRJLHD9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹º»¿¼ÏÄw§Ì½Ç·¹·¶´·¹³µ±¼ÉÃKzʾ¿¾½¼¿ÈÃÅžǸµ³³¾¸¹¸¾»º¹¼»º´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knqgqktfcn`\UHKJDJCCG?:;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼»À·ª¤®°¸»²½¾»Ä¶µ¸µ·¿¾Ä¼ÂÄÖ¯tºÈÏÂÀ¸®´´»½·¹±½ÃÊCtÍÿ¾½¼ÇÌÇÇÄǼ¶µ·Á½»¼Àû¿Â¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qfljouoxdhc\cQKUHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£°¹½¼²¼¾¼Å¸±¸¹¼ÆÉÊÂÆÉÒqr«ÒÑÌÊĵº¿ÄȾ¾´¿ÀÀyRmËƾÁ¼¿ÃÌÊÇÅÆÁ¹¾½Ä¿À¿ÂȽÇÆÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tpmmtlmo`c_bbNIM?E@?DC;;::;:8;<:9<>::>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´»ÄÐú¾¼Ä¾·¼À¿ÉÏÇÈÊÊÂrs£ËÌËÍÊÆÂÃËÎÁ¼¸½º±pcb»ÈÄÀÀ¿ÄÀÊÉÃÃÃùþ¾¹À½ÃÆÂÊÎÇƽºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢¦¡{z{mmx|`qd\_``TI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼·»»«Úþ¶¾À¾¾º¦©²¶Ã¿¥zvxÄÇËÈÁÃÀÀÉÊÁ¿»¹±¡}sjÈÅÄ¿ÀÁ¿ËÇÃÀÈÀ»Â»¹´»»ÃÃÁÍÐÊĽµ¼»¹¿¹ºµµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsythp^\_]ZRFEDMIAD=H;;59;:<<:;;;<?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯··²µ³·¹¼»¶»»Ä¹m¬Î½¶¹À¼«~nhnlrsw|½¿ÆÀ¹À¼¾ÅĽ½¸±°~ÊÂü½¿¿Ãþ¿È½¾À¸È¾«¡¡¡¦¹ÁÉŸ²¸¸·½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|wmu{qoj\`aZTQAFIGK@ECI<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÀÍ´v³½¶µÂ¥iZ]`MR[Znsw¸¸Âº³»·»½¿º»»®¤~ÀÄþ¼¿»»¸¶Á¶À»È¬¼º¸£·´°´´µ¼¹¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶¼´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦{zsvwxnra_g][UJ=??GG=GCC9:5;99><<9:<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Âɨx ¯µkefVX_IIMPSlw
¥°·¾¹²µ²»¹¼¶¹¾´§¡p®ÉÄÀ½¿¹³®²½»®»»ÎÜæâѸ¯®³º·º¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtwrm`db\^OIB?=IDFMD@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·¿Å«|v `TCWVHakVOFI` «¯¶ºµ´²¬¼¹¸µ¸Á½²£¦r¥Ë¿¹ºµ®¥¬³°¦³¹èãÛÕ×ÕϺujl¬§¯¶³²ºµ»»»µ¸¶°µÄ²¾¼¾¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´¶¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wp|ovsod^hY]^SONB?JCAKJ@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸¸¿µxoNJ?cZANwkMA\°µ³µ²´¯¬»º¸¶¹¿Ævªe§¿¸µ²±¤§§«¢½Ë«¨µÊÏÏËtklr ¤ª®§°¬¯±±±®®¯¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvtmvjl]\kU^\PNHDGMBGNG8665:5:=8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³·¶{XFANZJJXvc@R¢¹³´²°±°¹¸¶»·º½¢²¬¤s«°©««£¨ ®³Z8KyªÅÊÆ¢
£©¨ ¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±¬ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wryiutoeUbdX]ROMI@ISDNC=8875:7<=:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯±»ªiN@RxqPIIKgYEQ»±¬³¯®¬¶¶²´µ®©¦¦¨ ¨©¡§¬}2RhVt¯µ±¢¢£¢¤ ¤¬¥¦¨¤¢££«¬³®©®®®§ª¨¬¡ª¨««¦¢£¦¢ ¥¢¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ª©¤©«¦©¬«¦¡y|vzcxmn\QiUPOGPMMCPR@?;>4::5;:=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢ª¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬¨¼Â«¤¾iERQWII_KSadb®µª²´®ª«¯°²³¥ ¢ £¤¨ c^tZ£¡¤§¦ ¡£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ ¤ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£~}uv}nl{dhVSdNJHGOSNKNH<E@=2@859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶¶º¹º··»®¨ ¡©¡ªÆ¿Ê¡PArxOnKKbeus`[^p±¯®³µª¦¬¬£¢¢¤¤nº¿£cg£¢¦¢¦£¦¨£¦ªªª®§¨°¥£¤¦§¬¦¡¥¢¯¨®²«¦«ª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ |~wy}eyyabSVaIIKLSUJSQM9>A67=65;:<<9;;8:<=;;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??855=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥£ÇÇWSId£]e~or]Pkc[d_]k´°°¸¬¦¡¢¢z¤ÇÖÕOl«£¡°££¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««¨¬¬§¡ £±®²±´ª²¯£¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨¢§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvshme\S[ZMRKOOVMTMB7>C78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=?758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢«¤zUiruuqbvvXWc`cgYXWe¬®¬¯§¢¡ ¡£wÊÚ²²gFfzx{µ¯¦³¬¡£¯¥¤¦¡©¨®µ³²½¶¾°¬±®©ª´±°¨«¨³µ¸³¸²´¤ ¥ ¬¡¡¢¡ ¥¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xvjwu^m[RaIRVHFVWKCMH=KI8E<77;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©¨®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¢¡ ¤np`cXL[SZMLPXRHMMG¬ª©¥ ¥ p½²Suyqeije^Pk¬º¬´´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ·»¶«®±¸·¼¯³°µÁ¼·¾³³µ¢¬¢©©²©«¨§¨ª§ ¨ ¨¨¥¥ª¢¢¨ ¤§ £§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vrmiwmhn]X[CWNJGNGCGN=>L>5<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©©ª ±¢·¤°¦£bW^e`WMQG>>?CC?>BQx¨©ª¦ ¡£
©¢¬ {z¥sZK_ZI@§Áµ¹»Àù½»¬®§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¸Â¾¸´»ÆĽü¸´ª³ª³´¯³®ª¯£¬¨·²£°¦¡£°±®°¤¥®£¡ ¡¦¡¤ªª £ ¦¨¡¢¤££¡¤¦¢¤|trkkurqhW\QFUHDJPI?FB4FH96<>7;<><<::89<89;8;:9;<7;>=>=68@9;;=@<=@97<<;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ }`^e`QGD=C?E<?96Nª³§¤¤¢ ¥¬¦xl¢¡©©´y£¤¦bnk®LD·Ä¿ÄÈÍÐÈËò·µ¾²¾Å»¾ÌÍÆÌÌÌÒǾ¿À½ÇǸÄÊÉÄÁÇ¿º´º»´»·°¶²«»²®»·À»º«¸«ª¸»µ¼®®¸£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢
~zrkdioxkfZ\FLMEDTMEBE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;:::??=B>?7:A@=<=866<:<@?AAA>« §®§¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡}sjaWNE>IY|pbB=\®¬¡vrplo¤«²§svynll{
YVyÀ§anÌÄÄËÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÍÓÐÓÓÌÊÁÆÆÆÊÈÏ¿ÉÑÍÇÆÉƽÄÁ¾¾¿µ¾³¿ÀÃÄÈÅÈį¿¹²¸½ÄÂÁ»¼¼µ®§§®¨ ¢©¤ ¨«©£¤¤ £
yusebgrog_ZZDOMCFQIDCA55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>9;AA;;>786:;>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £kf]TID@?K
¥ ²£yqqnjv¡·µoef\MVpzho_´§lÓÏÄÍÔÕØÑ×ÍÆÇÉÌÃÅÊÏÊÒ×Ò×ÒÕÖÓÔÈÌÇÌÍÊÓÍÎÓÍÆÉÊËÂÇÌÇÉÉƿó³ÈÅËËÌÏÇÊ¿¾¿½ÁÇÅÌÌÉÉÀÃÀ®°³¨¡ª£¦©¬¤¥¦
{ruvgcgwjeWXRDNG@IQC>B=:22A<E<78<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡cSLJDC?BRѽ²¯¦ ¤¡}yqlebhrpr{
upmprm¬iWcX_dpm~rOsÆÐÑÂÏÓÖØÕÕÒËÉÎÐËÆÍÒÉÒÕ×ÙÖØÓÖØÍÒÊÎÑÌÏÑÍÓÐÀÉÈËÄÌÍÌÏÐÆÇȶÀËÀÒÍÌÐÇÊÉÀÄÃÈÏÍÐÑÏÍÊÈ͸·»¨¥«§£ª¥©¨¨}xsvpcaesc]R\JKGAFIJ?;A8>5586;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¥¥ ¢£[I@ADAFPu±¯¦ wida_``_^__]alusponkpnrbO\T\`Qf^XeZMjwyÕÑÐËÐÍÓ×ÖÓÕÐÏÒÓÑÉÓÑÇÐ××ØÒØÒ×ÙÔÖÌÏÏÉÍÒÌÏÑÀÇÄÉÇÏÎÒÑÑÈÌÍÀËÍÆÔÏÍÏÈÅËÇÇÉÌËÔÔÑÕÏÒÌÓ¹ű¥¨µ®¨¨«¥²¨°³¬¬
|zqstmacim_VQ`JJCFCSN?<>43:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B<:<74:><?@=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¥®·¨«·×ÔÕÙÙÑÎп¼Ìɶ¾®§ª¨¡£¬gC8=>DXª¨}qecb__a_^a`^a`_`emppmjmost{qkeTGIQPGE=JP\_u[sÕÔÐÉÎÌÒÖÒÑÖÍÏÕÕÑÅÑÓÊÐÔÕÖÎÓÑØ×××ÌÈÎÄÊÏÍÊÍÀÊÁÉÊÎÏÐÌÐÎÎÌÏÐÈÌÑÑËÎËÃÊÈÊÍËÌÒÓÎÔÒÑÐÐʽȹ°®»¹µ«¶°¨¸³¿»±
zvopokadnpaX\[IFFEMYE;@=33<<87865;>@=9<<8<>9<@;@:=8?98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÁ±©¬©¤²|HFB;V¡k^^^adb``aa```^__]\bmrnmqqrqwiO~jQXKWOK`@K[RmbvÑÒÎÆÍÌÍÔËÎÒÌÊÖÖÐÌÐÓËÌÐÒÓÊÎÑÕÒÕÖÊÀÊÂÆÍÃÉÊÃÍÄÆÉËËÏËÎÍÑÎÔÌÇÉÐÍÉÇËÆÇÂÆÊÌÎÑÑÇÐÏÍÎÌÐÅÇÁ¸¹½Ä½ù²²¾°»Ãõª¥¡yqrkmh``qhYXhVMGMIQQB;D?;68:8:;57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±Ç¸ÊÕÖÙÚÛØÌÌÏÈÖÕĵ¯´¨ xloov{ebbb`]^acb`__`aa`_][]gqqopqminpf}zfg[JV]c<AVKaiwÎÍÆÄÆÍÊÑÇÊÍÍÅÐÒÏÍÌÔÊÇÊÎÏÇÆÎÒËÐÏźĿÆʽÃÇÉÎÅÃÈÀÇÎÈÄÍËÍÐÉÅÅÐÉÆÂÆÉÅ¿ÁÈÍÌÌÏÃÊÌÉÇÌÐÅÅÈ»ÇÃÉÉÂÏÀ½¼¿°ÁÉƹ½ª°²§¥¢£xoudk`^fqa[W`GIHGIMUG?J=64355==48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼¹ÌÌÆÐÕÕØÚÛØÐÉÏÏÑÓÈ·»»¤¶~g¡©
}s_[^]^`^`cdc_]\^_``_[Z\akrpmmhgijv}hhTWfPBE\VW]yÊĿ¿ÂÇÉÈÈÉÇ¿ÄËÅÇÊÌÉÄÁÊÉÁÁËÏÄËÈ¿¹Á¼ÆȾÀÆÏËÄÀûÊÇÈ»ÉÆÅÊÁ¾ÂËÆÅľƾ½ÁÄÆÌÆż¿ÊÃÅÇÒÅÁÉÀÊÊÇÈÆÐÃÃÆîÄËÇÃÊ·¿¼º³©¬¤¥¬£¡¦£ |wsufj[anmZ\XRDLGCGDLDFS@54335@=3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¾¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÃ¾²°¶m^z{z
uxurp_Z[\``bcdded`[\^]^]_[YZ\anqmifgkhlseZ[SABEORSV·¸»¹·ÀÁÁý½¸¼¾¸ÃÉÄÆÁ¼Æ¿·ºÃÈ¿ÁÉ»¶»»Åÿ¼ÂÎÃƾ¾µÁ¾Ä»½Ç¼Ãºµ½ÆÄÂ÷À¶¶¿¿¼ÍĽ¶ºÈ»¿¾ÌÄÂÆÃÆÉÇÉÆÐÆÂÌDzÇÉÃÎÌÀÅ¿¼²·°²§¨¨¹°¥°ª¬zwxkeh`hodV^YJFJFHKAFBFJA9:658853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µ«·´²¡¦¢·ÅÂÄÈÎÒÊÊÊÇÍÍÎÑÈÐÆÖÔÕ×ÍÊÏÅÉÅÇÁºÅ½¬®§`cwx}{ttc\\]^_`bcbbdeb]\[\^\^]Z[\]grokdciikr¢fYQQSN@;GLp ³®²²²²²º´»°¶¯³®±ºÁ»ÀÄ»¿º´±º¾À¸Ç¸´¼¶Á½¸½ÆÁûµ¯³µ»¿´Å¸»µ¬¹½¾À½±º¶°·º³Æ½·¯¼¿µ·µÅ½¾ÃÆÀÄÆÆÇÌÅ¿ÅÆ»ÇË¿ÏÉÇÃÅÁ÷ý½¶¹¾Ç¿¬µ»µ·¶ytxggebkn^V^`FKHHJGBDAEF?=:566633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐËÍÈÉÈÊÉÊÄÐÍÒÏÍÅÇÁÅÁ¿º¸É·«°[go
zx~
vw|sh]]]]^`_`da^cec_^\[^\]^Z[[]_kolfcfhgjum_SXd]ODD]£¦ª¨ª§²¬´¯±§¦«²º¹µÂ¹¹¹¯ª´¹º³Á¹¯À±½¼»µ»Ç¹Ã¶ª¨°²À¶¸½°±¨²³µ»¼«®¶§®¶®¼²°ª¸°®»®»¸»ÀÀ¾ºÃ¿ÆÃÅÀ¼ÆÁÇʸÅÇÅ¿ÇùÄÆ»ÆÉÌ˳¹Â½»³tvwki`bliYWW[ALLMJEAC?FA;::996854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÍÒËÃÅÁÄÏÆÍÁÃÆ¿ÄÄÃÃÊÂÉÊ¿À¼Âº³µµÃ¯ª±[i~{x}
y{wn^]\\]_`__dcbdcb`_]Z[ZZ]ZZZZ\cmmfdddfgjx~oh\cliqs¤ª¡¦¡©¨«©¯¢¥©¬´µ°¼¸¯¶®§·³³»·³¼¯¸¹µ²»Á²Á¯¥©£«±³³¨½ª«¨«¬®µ´¦¨®¡¤°©³¦§¨®¦¨·¬±³·ºº»²¼¾¾¾Ä¿µÁÀÇÈ·¾¿Å·Äÿ»¿Ä¾ÄÈÌÊ¿¿ÄÀÀ©stsji\aodWVXPHZSSKFFE>?@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃǹ¹ËÁ˾»É¶½Ã¾ºÊ¸Áõ¶¼¶±¯µ¼®¨«cmz}~xt~|swe_]\\^_`^_ccab`a_]]\ZXY[[XWY\_ejdbcaddhmzwqqhthk¤ ££¥¥¬£¥«°¯¶¶¦¯«¦©³«³¹°µµ¶¹²°ºº±¶¥ ¤ ¦±¨¬©¹ª¥§§¨§³ §¦¤¥¬§¤¡¡±¬²µ³³°µ¼¶»ÁÀ²º¾ÃÁ±¹¹Â³À½Àµ¸»½¾¼ÂÇÄÃÄ¿¿Ä xqlbf`ko`UY_HNhOTHFKF<=@=:;;826536999;9::<:7<?<<;<88<9;:;78::<98>:?=98<:;>97776788666;::;9:;<859<:>>@;ȵ¶½¸ºÁº½¶ ¦º¶«³³»³ÄÏÉËŸ·ÇÀÌ¿¸Ê·»Å¸³Å¸³¿À¬¶¼²¬¦¯´¡£ir
|xusomjiipi_`]\\\^__acb``a`^\[\\XYXXXVXZ]^cb`cccbefivxto||Rg¢¡£¡¥¡©®¬°´¢¨¨©««¤´¸¬¶¯¬²´®³µ¯°ª¤¢²¤¦ª¸¢¦¦ ¨ª¥£°©¬¨ª«¬°²¸¯¸¹º°¶¼»º«³²¹³½´·²±µ´¿µ½À½Ã»»½{sl_e^ddXTW^IW]KPGJJGA<??A;?<05635:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»¸ÁÁÁ´¤¤¤¦À²¯¶¬´·ÅÏÈÈÀÆ»»ÃÃϾ¹È¸¸¿·²Â´±»»¬ºº±¢©«§m~
xrmomkb^bff]]^]]]\]_`abccba_\[[ZZYXWWWWWXWZ]abccbbcddmzrnw~g=e¢¡¤ ¢¬¬¬° ¤¡¬ª¦¡´¯°±¬¨¯²§º³¦µ ¢£¢£¢ª¶ª¢£¦¦¦£ ¡¬¨£¤¦«²³ªµ°²«²¹µ¯ª¯²²³·³¯©®±·±º¶º½¿·³±zvf_f_[YVSZUK[QLJEHKIC=?BB@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ¸½¿¶¾¼¿²¥£¥±Ãµ¶½´¸ÂÌÈƿŶÁÀÇηÀý³¹¹²À¶±¹»²µ¯¤ª xxoqtqhedhdc\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWUW`bcaab``dfrpkr{P9[}
¦¡¥©¤®©¡¡¶¨ ¨µ©¦§°¤·°£· £ª¦¡¹¯£¡¤¢ ¡©ª¤¢£ªª°¨´¬ª¦²°¥«³±¯°¯¯§¨§²±´°»´º·®£zwe_aWYXSRTKM^LPLGHMLE=@>=B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´ºÂ±¾·½§§¢ª»À½À¹®´¸ÁÌÈÅÂýŸÈ̲ÁÂÁ®¼»µ»¼µ¹¹°°±ª¡ª|wqilrtphhedfa\\ZYZ\\\]^]\[\^\[[Y[[ZXVWWVWXWWVUZbb``a__`bgpinn9.0L£¢ ¤¤¤©¤ ¡µ¦ ¢§²¡¥§¥¯¥±«µ ©¡¢±±¢£ §§¡¢¤¥¥«¤¥°§¥¢«¬¦©®¯¯«¨ªª³¦¦«¯´±®¼¶±°¯{xseb\[]XNLQHRaMVPOJNOEBD?9=69:764599;9887;89=>;>;<69;7;6;7;;:85:;:;;6<;8847763321./2556;:8;7876<;:;;A8x»»±¶½°¼±·¬¥¦¬¸»¼Áź²¹µÄÉÉÀÂÆÅǶÆijÁ¿Å«··½¶½º»µ²¬¨ ¤t~vncafihfgifil`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWTTVVRTRT__]^_\]]`ahkka.+Lu
¡©¢¡¡¡¢ §¨¢¢°© ¤©§¢¬¬ª©¢¡¡¢«¨°¢¡£¤¡¢ ¢¤¥£«¥¢¤ª¤«¥²©¦¥¦¦µ¦©¨³µ´¹º¯«¬sqpa[WVVRGQOHZ\ORJTKSLEGJC8;;=<9667:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:8698598989;9@9{µ´¬´»²°«±¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÉÌȵɽ±¾Ãɱ¸Áµ¼À¼´µª¬¦r{tiijlgjlmkjle]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURRNPX\Z[\\\]\_bijb=+=Ln¤¤¦¤¨¤§¤ £«¢£§®ª³¥¦££¡©©¡ ¡ ££¡£¡¢¨£¢¨« «¯£¸¥£¤¢¬ª¨«¯´·²½µ³«®
uti\YYSURFXLQ[XMUOPLQRIOIB=??A?=75799<<977:79:;<=>;7;::=68:;8976989:6:=99577571141-+/434988::8::748=8?9~³§³¶®¨¨¯®©¨¬·¶¬¼Ê»¶¿¬ÌÆŸÀÎÏdzĻ·»Âȱ¸¿·¼¾»³¶¦© ztvwnmhmmmpggifd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNPPXYYY\[Z[]^cnsSDP[`|}¦¤¢ª¨¥¡¥©¢§¥§ª¥ ¨ª¥
¡¤¡¢¥¥¨¨¨ °°¦±½§£¬´ª®§¯´°¹µÀ±®°«stbWTUNRJGVPRRLLXNKLOSGNKACFDC>B75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8´¬¦±·ª¥¢±«ª§©²°¤¶Æ´¹º³ÊŹºÁËÐʱ¶¸¼½Àñ°±·®´´»³´££vkglnqnqjokdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVTQMNMRWXYXXWZ[[`jifn_n\jx£¥£¢¨¤¢¡
££¢¥§¡ ¢¢¦¥§¨§¡ ´²¨³¸¡£¶¬ª¤²²¦µ¼´«¬±¢ztn^NQQMODNNNPKFNNJJNNQHMJAHLIHD?958889:;69:68;99><8:>9;?8789:885857688974577820301+)-/12876:999984988A7w¶§¤¶°¤§¤ª¥ ©¦¤³ª¢²Äµµ²³ÆÅ·ºÃÊÌƳ¬º½´¸À¯©°¦®»¯ |n__frpuqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRRSPQTQSUQNMKKSWWVWWWWZ\aeY_\l_^xoz £s}
{ £
~~sz¢£ ¡£¤¢´¯¬¯¦¸¦¥°¡±®±»ª©¯©xtdVMRPPMCSNLPMBPQHINSNIJJEKMGKK>849888;;69;7:<9::;79?9>@79:<89764445874312485/0102)(,-02764789::65:87A7x·¡£´¨¦¥¨£¦¥¦¦¦²§¦´Á¸¯´°Éĸ¹ÀÎƾ³»Á¬Ä§¡¦¦·£ ~xfWV_gfighnciifb\XWXXXYYYYYYZ[[[YYYVWWWSTPNONOOPSTQMMJGNSSSTTSUXZ\hXZWimedEOiy~
~^;Vn{ry{}xqo~¡ §®©©©³¢¥«¨´£©¢tn`[NSRWLDTJPLLFNOIELQMKPJINPGJJ=7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· ¢¡¦¦ª §©§£ª°¨§´Â¹°µ°Ç¸³½Ï¿¹¯®µÂ§ªÄª¢±£~sv]PLQUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MNQMKHFHNQQLORTUWY``TRbncE87yu
w~_IPmw}m~wuvxpQ|~yvgw~¤£¨©¥¥°ª¡¤¤¦ª¢ª¡¦§wnf^\HQQSMIUMSILKOIHFJNLMUKQRPGJD=769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')+*,4833989:99::::?9w¶¢§¡®¡§¨¥§§¯¬ªµ¼¶¸·³Á»¶§¹È¸¶¨¨µ¶ª²¼§©~xqoXMKMNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDCINOhYNQSSUZf\T`gWXPJ|lw{w~x~s~wqmtptz~ªz{hv{prmxx{{wsrxhu
||© ¡ ©¥§¤ ¤sib]]JWPRHKXROJMLRJJJLPHLQLRUNFIB=78;99>=:;<98@?::>=7==79937785675251472/2.,//200/-+(().12721987:8775:<;7v®£¡´©¯ª¥«°±ª½´²»¸¶º´±·º²ª¬©¨²¯¢wx|vpojYKHIHGEHHPTTTWWSUUUUVWXWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LNQQSV^b^\aUe~s`rypsyx~nztynj}|t~z|tfu|lohs|mzq}qmvqhq~pD
wxz}{u}£¡¥yongc[XXUQJSUTOPNPVKNKOOJQOIOPLFD=;79;::?=9<:99??;8;=7<9999266856633611224.,,--.-0-+*''*.1362/876966527995y¦ ¦°¬®«§©°¯±«»¸«º¾¸³¬§°§¬¥©¤¡zvq|muqjmjXKFGEA@CDHLLMQQOQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zYJNOQTX\\[WVw»zko[sphvsuxlivrwhh~q}Ingw~mjdly
ksl|nr|imps
{}~{wputyyp|ojoooYVXTRRYORUTSXUMOHMKMOKCINGF@:99;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¤¬¯¢ª¨µ¯®¬³¿«¼Â¿¦¢¤¡¢szuotlqmekkYNDFC@<>>BFFGKKKLORRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_JMNORVZQVRPzW_ho]vigyt
q}qjrqzhhLyf1vrk}}tfeu~
filukp|hqq|n{t}}qqovmwyujyyxlkpheXR[XYY[NPUVYXNIHEJJHGB@GECG=998;9:9<:9;:::@<9:<98>787715234533645031.**+),,++)(+'),,226,,4775478iO8;5m¤¨±§º¯«²°Â±»ÃÇ
zqtzpsqopdpg_TFIC?<;9:?@ADCEGIKOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQUKAHPF]¥©fqndufk|{|vvoqw~qs5q§ ¡¢
vp{|shgbjnrmpuioXupvm{}nrnp{svnbu
ux~}|trqm`\]^\ZYa_RN[ZXWLHIFIH?CABH?CD=;:7=;:;;9:99;:?<88=:8;66650121253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥´©±®Á²»ÁÅ|n
ul|uxxmxnwdj^IPG>?7448;:;=>@BEHKLLLNPQRTUVWXZXVUTSPLE<5*K[@-gI94/?©®_GLMMPL7CMPQBF{itrrmvfpvx~{zsw|`
©zv~s{]dqtz|wmhjbyo
zoxu
zptzxkni]v}|
}q}vw{|xqtugh`[\^S\g^WPTX[UGJJELG?F@DD?AA=;97<;;=<::99;;=>79>9985654244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¦ « ±¨¯À²»Åºzvk}xs }}p~zhwkRXL@E211276688:<>AEFFGIKMOQRSTUWVVVTSPMF@:2= #c[5311i?GoIFIKMNQKJSZVNF_w}qqtju
uwzt¤¬©H¬¯®©tm|~hghyn
qGmwryvhmk_v}yzuv|xmow~uusm\^^\cdXgf\UPPWYPDLKFOICFCCA@CA=978:::;;:888::?>6;>7585773344236656778;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|} ¬ ¦¸¯³½³}tp~~}}~¤
x~sx_cWKB60./23124668:=>?BEGHJLNQSTUTTVUSQOGC?80,#[??84.]ps£UFIKLMOW_ViWXZa{x|y}y|¤¬»±¦ºÇç¡¥|qw
ihptrw{v|mvuf ª¢zzyogkx~|ulf^Z[^j^ag`ZPLNWRQIPJDNGCJDC@DDB<:87=<:<:88778:==8<=68656623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nuofwz¤¡¬¦ª®°¡xw|lpj]BA4.-//..02234778;=?BDHINQRTRSSTRPOHEB<87/9C><<63.lMPHJLKJMU_^wcbgl¦¢¡©§´¡§ÁÂǯx¹|¡
¡
lpuwqm
r ¤´¨¢}kjj|uc^e`[hl]ml_WKHNRPNLLFIPCDNFBCEFC>:96=<:;:987767;:6=:785456344566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYooupv~§ ©ge¤~y}xxgMR>//.,/.-/000212567:?CENORTPPQSQNPIED>;<:DF?><752<?R5HHHLKMNQ]iwmzu¤£¦¥¨§¨³ª½ª´ÆȶÈÐϾ piª©
¦£wz~¡{wª²|£¡¥µ¯§lss}~sjb^b`bhe`gg\REJKPOIJLFGMCHLFFCBGEB;85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppt`m|aw}{ªªBD}x|
v^bP560-1/,.0/./..0015>AAMPRSQRSTRNSLEE@<>=FG@A@8662<9;FHGIIMNPYi~rª´°§¥§£¤°§²®®ª¸¯±¼±Ãª¸É˷ÿ·¥¢°³¬¬ª£¥¦ £¦¢ª¨¥
¤¡¡ª ¤©°£¦·º ¢¯¢¡¢¡«®«²´¡¤©yz~ibi]fc_dd_gg_[OCIHSNFHKFJGFFHAKFCFFB;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLhbWinXyv
ÚÈsV|z
qna@E64<2/110-,+-0..4>CAMUPRSUUVUN[PGHD<>>FHCDA7;<5C;=FKIFHQNPW}¥¦ §·À¼¥®À³¨¯¼¯´º²¼²¿´¹¹¢·Ä§µÈǵ½¸´¨£³°±§¯«¥v¤¡¬²´ª®¨¯¶º²º¬¯µ¢±«±µ»¶´´¦§¢¦¨¯¬±¸··§µ¨¤x
x[cfWgcbdaaga[TJDDLTPHIIDIGEA@@KDBMG=867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AFWQJL[YQbbWyuq}u
{¿»£¼´y{xn]W@DN<6:46AB7640/6CHCQ[OQUWU\WP_UIKKA?>GKFED;>@7D7?BJJEFVSO^§«¬¸«¯¸Åı·Áº°°¾´µ¾±¼®µs¯²¤¹Ä£¯Æ¸°³±³§¤µ¶ª° ¢¢¥°®¦«§¤¡´»¢¨²ºµ¼¿Ì¿ÅŽ½³Á·º·¾¶º·¸««°¤¯¨¬½¯¼ºÁÁ«¹§©}~mXecYlfkfW\dYVSIGFLPGCHIAHD>?BBL@?MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALQVSYUZvjp~
nzsxb¹¡£{z|}}xzufP\dGEL;Qca[^SG?;HPDZcQQYXZgYT`_LRODA?IJHEEA@C<E6B>HGJLSZT]¨±¯µ²Á·³·ÅÉ·¹¿ºµ³¹¸µ¼²¸°Ä_s°¤±ª¼¨¤¨«ª£¢²µ¡ª¨ ®¥§¦¥¤£¨±´¨²³½¶Â¾ÓÉÉÓÆÂÅÌÂÊÃÀ½¼¾»»¶´¯¸¶¶Â¹Å½Âǯ¸©¡«¤§µtadc_Yc`jgSXaVRUIEEMJ@>GD=KA=B@=F>;H@796379>489:57045/26389374426?8@>GKRTSQPOQQPJA9/,,,*+((,-+/P>(.48}<2Kq9>CKE@IMPRKQ]glkp
skrrsÕÀµ }~x{{z~t}zlepuY^\Pedb`ed]\XW\MdmURmm_n_XgdTYUJDBKKIFHHHGBI:D?HKSTU\Z[´»´¹±ÁºµµÇÈ·´¸´·¸±µ³²´µct§p^¢¬ ¢¤ª¥¨¦¤¥ª°¸°½¹ÔÑÏ×ÐÊÌÒÌÏÍÊÆ¿¾ÁɼÀ¼ÀÀÄÄÄɾÇͲ£º°´®«·»|n_b^[`cZdcQ\`SQJCAEFE<@F?AHB?C<:E>=J?47535;=468977022/24169775555D3ELM>51/006:477@IOI;-&**(-./,@M+/54mI0Ht?>BD@CDFKODQ[Yi_onkotu´¬¡¡
~|s|
{ts{ylmu{hreilifjji`fiilZms¤¼g\og]YYTHKNPJKPKSQILAJFJO_^afi`³Âµ¯·¹²¯Âij®·¯¯¹ª±°¥ª¶«µ§¦M¦¥¡§¬¯©°¨´´ÔÔÔÖÓÌÐÓÕÍÒÏÌÄÁÉнÉÉÊÉÑÆÌÍÂÏÑ·¯Ã¼Ã¹¤µ¹Á¢qe^__ZbYZgZQ]XNPABHEBH;@C>AG??A7;C>@H=46655;:687654/10146278875367C5B8?-0-1349=97,.,1;FK=),(.0007K?-46TW0DwC;B>EBACJM?UYReVrgqoxy¡ª¦}
|p{r}qxvlpx~qzmxsmiqmcjmpxiw|~˾Áߧmcxnc[a`JPRUNY^O]\NPNTPTT\nmvq¬µ©±¤³¨«º¾¯©³¥£·¥ª «³¢°¦«¬¥¨¢¬ÏÒÕÒÎÌÓÔÔÏÔÑÎÇÃÔÑÆÍÒÓÓÖÌÑÑÄÑÖÅÀÎÇǨ½¶Î|qh`d_XaT_[PQTQOH>@FABE<@A>DC>??:==<<JA45465<888664412/03526768533;=<E=@11+/249>5901022-2DN3)/3.32=N238C}_2AtD:==I>@CFH<UQMNZt
wlwp}~¡¡
y
~{q~zu
ovsls}{w{sxrksripqzyrz¾Ë}±vrvgaj]CZY[VecXcjSX\]`c]cwz}¨££¦¤©®·©¥²¡¡¬ ¢¡¦±¦j¢~¨°¢¡¡¥¤©ÉÍÏÈÃÌÑÕÒÔÒÎÓÍÆÖÒÌÔØÖÖØÔ×ÕÉÔÚÍÈ××ÑÊ«ÂÂËuqebaZV[T]QKGJJJ@;:;DAD<BC>GB>BB:<9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/--;R017/532FD28>nb5=tM99@I<AD?A;OLFJXpu}hrxr
x~xs{}wznwpmvvx|t|zmvto}vux{µ;AÅ¥~|ieWICfcecgjcmw[^fhknhm¢£¤°££±¡¤¨¢±
~
y©£~«³¨§¾Ãƹ·ÇÎÒÑÒÐÌÒËÈÔÎÐÕÚ××ØÔÙØÍØÛÎÉÙÚÑÕ¾Ê˵zypg_[TWS\XFGKIEE=:7:@@B9GD?DCACB;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BS39254/7K75<`bA<svV87AH:?C><9QECJTknnpbpqt}~|x
zyqz{
uy
yp|ppzq{qnzuw||u~|¯sX©Â¶pmb=^hrpqpnxvehoruxqy¨ «¡¤«{~lz|®ª§¯¶½©®¾ÇÌÉÊÌËÐÉÃÒÊÔ×Ù×Ø×ÕÛ×ÓÙÛÕÐÚÚÑÖÈÔÊ|~kk]\QUTaJCFJH>A>=7:=?;=G<?AAADA>?:87DB755479.556435532323647553458EBDCEB56<FNSM[nfcnskaV>,4LG865434BF4=W_hLux^8;?F<<B<99D>CGRj^mdbfkvqz~~{|}
wyo{{ty vutu~toou|
zv{·Å¤ÁɹwpeOfczw¢xyv{{vm¤¢ª
z}¡¼¡©¦¦®¨¶¿ÀÁ¹ÈÊÎÎÄÍÊÑÖÕÕÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÛÆ}|jlhbVYWXNLENC;==<8:;=9=@6=??<>==9867CA6455=80665547745613955564557HH=DJE7925;H>;9:7IP][RUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Xea][htzylwvz{~~|z}
z{u}tm|}s~{~x~ynt}
|~z©Ã¡½£}}r~s¦
{hGq ¤~¥
¥·¢§¡¤¯·ºµ¬ÀÆÊÐÈÇÌÏÓÓÒØÓÕ×À×ØÙÛØÚÚÙÙ×Û¸{|{nlhZb]TQOIDLB<<>99;:99;<6?=><=99;;37D?7378>70688357<37804976755546FP5DNI8938AK=;3C@I<:DWN<MTHN?96333>C;[X>5YypZ<<A<=>8689?=CQSRX^UXfmmmiqry{z|{z|{}t
yrysm~~w
¡o¨
z¡|}££ ¤¯
Wr«\¢
¡¡¤
²¡¢¨²¸¦½ÂÇÍÈÆÏÍÐÌÏ×ÑÑÕ®ÖÕØÚØÚÚ×ÖÙÙ rwji_`ZUXYC@IC?>>:48:;7:;:3;;?=>7;::1:G=:27=@50677255?65;55858:57735HR7GOK994=EJB>1FCLA98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcczma~nmwxy~z|{{wsp
zuvvt~¦£¥¢§s²¨
¢£©° n·
ÄȲ¡¥±d¤ÍÈ
~ª¢¡¥¨¡£³µ¦£¼Â¾ÈÅÅÉÈÉÂËÔÍÍÔ©ÒÑÖÕÖØÚÔÒÙÎ
ukfa``QKV\BBGC;A=837;<:9=649:<:82?992:I:>67BC32:96264>=4;>6949;57944JQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBeGu||m}xz~z~vv{ln~y|wx|~£´¨¤«³¡§ ¦¤¯¢¸³¡ ¤¯£¤¨©®°¤ À£É¸«£¥²
¨¢
s²£ } ¡±®£¤¸¿´ÄÇĽÃÿÇÎËÉÒ§ÏÌÓÒÐÖØÒÏؼu}z`cXcYRIKOFBCD5>;76:?;<7=42669774=5;5<K<>;<BA75<;5277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=89567=:JFDGM\]YJha;Hz{m
y|x}px|}|ory}{x¨¼©³½°¥®³´©£¢°µ£¹¥¬£©¸¦¤£©ª¤°±ª »»Ê¡i¶¸ª°£«½£^©²||
³ª¡¡ ¦®¨¢¤³¸«ÂÈĵº½»ÆÈÈÂСÆÉÍÍÄ×ÖÐÊÔ£s}l_]VbSQHD><CAA7?874>F<<6<35355454B39:BM:A;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPgHa`bpJ@~s|u~m}||~pww{«ÃÀ°½Æ¼³´Á½´¬³·¨²®®½«º£¨¹¸«§¦¢¡££ª¯²±«£¢¥¥£¹®¨¿»¬²¹¥£§}¼°z§°ª £¬ ¨§¤¢£°³¦ÀÆ𰻶ÅÅÿͧÇÃÇüÖÐÌÄÊwve_]b^OLCL@EG?A>B<:4>A==5=6>333242A17@BM>G@CNCA=C<;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\iF_ig[]\{u
n~{~q~zz¨´ÆÉÀÂÌÂùȽº°«¹»²¶¹²À®¥À£«°¼½ª®«££§¬¯µ±ª ª¢¯³§£ººµÁ¼«¨²¤£¨ªÄäz ¥®©¡³¡¤ §¤¦§¤¯¥¿Ã®¨·µÉþ¶Î²Ä¾Ã»³ÑÉÈÁµx|p_[_mTNIDLLLJ@A=BD<5AD;:3=8B332262A15IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBh]Me\fTcjy
r{wy¡¨º¾ÉÈÊÂÒÉËÂͽÁ³¼¿§º¿½¼Ä¸¬Á©¬³¼¾ª°ª¤¥£¬®µ®·¶ ®¦££³¼©¨¼Á£¶·¯«°¬ª¬ª§¥¤uy¢¡©¤|¢ ¢¶¦¥¤£¥¦¥£¨¨¢²¬¨»¿Ã¯¥³·ÌÀº®Ã³»½Á¹¬ÂÂÁ¿q|d\Y^]LMNKGECHAAADK:4DH:;4<7F.12352A26SHN<JBJQEKCEE:ELB<7EV=<=89?<I?:EUIAWQF7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>lJ_XaZdeXw
~ ®§¤Ä¾ÈÄÈÆÒÍÎÍ˼¸°º¼´½Ë»Ã·¶¼´¿º¼®¯¨¡©¨¶®¯ª²¸¬¢¨¢«··ª¥¯¾Ä±½¹³§ª´³®¥© ±Å§|}©¤ ¡¡Z¤f¤³¥£«¬«¨¦¢¤¨¦µ«©º¼Â´¦´µËÁ¸ª¶¬³»¸®¨¸º¼·oq][WXPGKTNK?AGDDHFF85FM;>7>AK.32025B55PWN<LFKRLOGGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|hV<>@BFBsFiIRfdMF¦¡¨¥¡¯¾®¡È¾ÅÅÈÇÎÎÏÒʾ¼¶±»»¼¿Ï¶Ä¾¸¹·³³¶³¸´¬§«¬¹«©¨¯°£®¥¨¤¥µÀ°«¬´¾Ã¹À¸³§¸´·²¯¤°°¥ sÁ|°¤¢§ _J¥T°¯¥¯¯¦¡¦ ¦¡´©ª³¼»»«°²ÇÀ¸¥««±±£¡²²´¥srh_]QSMFQQPQ;HJHFGAC=9KT?A:=FM/7534:B44NWN<JKOUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@CAF3>58JKCA=C;5FA:A?>H@5*B52,>c]g:35tde@R7}iW<:BC@=REWStbVFHª¡¨®§ £¥µÉµ©Ç¼ÃÄÉËÉÈÌÎÇ¿»³¯º¹ÀÂ͵ȻÁ¹¶º²¯¯´µ§¤«´µ«ª¦®¬¤¦¥©¬º¿¨«··¾ÁÀ¾¸²²Â°·¼¬£®µº¦¥u¾® ¨¦© ¦mu¢¢®²¢«ª««¯¥¥¡¥ª¢°¦©ªº¶¾³²®¾¹¶ £¦¨¥¦©©fidbTMNHIOJVL=LDMIJ@CD<QU<AABEO18=77?B75UXN?HNQXRPQTJQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CC:9C><@>;;G7-2>-1hNz\/0kh`<=BB86{fW<:=..SaLVH~e^HF¬¡»®ªª¢££¤¶Ç½´Á»ÂÂÈÉÆÂÎȾº²¯¹µÁÃʶƲÁ¼µ»¬©±¤£ªµ»§ª§¬ª¨¯¨¤««¾»¨½´·¾Ç¼¶µ¸À°½À³ªµ¶¬¿¦¢ »¶¨¤¢ §¤± ¥§©¤¡¢¡µ¯¥¥²¬«¥¤« ¨¤¡¡³´º¶¨µ²²£¥ª¡xd`b`LIGHNQIMEFFBQJH@DGAVSDH<AGQ1:B7:BF79]YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:h]FDCpbGD¨¤Ã¬¤¨ª¨¦¬¡«·ÅÁ»¿¸ÁÂÀÈÄ¿ÍǼ¾º²°¸´¿ÃȶÀ°¼¶º·§¤«¬¡¡««Ä¢¥¨¬¦«¯¢ª¨¾¸¦¿°··Ç·´¹¸¿±¾Á¶´²µ°¾¤£¡¢¤¢¢¾¤¨¨« ¥¼¢£¡¨ª ¤ ¶¬¥³§°© «¢
¡¥¤«±¶²«¥ª¬ ©if\c_QJHKOMHEDI@=OH@;FIH[ROK=HNU4BF8>HG5Cb[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0--0Mv\4KZ5,MnW<-=)#zbQ5CKQ9oSF<KxfcXN¢£Å¬ «¢¤ ¦ª«·±£ª³¶Å½À¶¿Á¼É¿Êȶ¸¶´±´´·ÂÆ·¿±¸µº¶ §«¥¤Á¥¡ª® ¤©°¢¦¨½µ¥±¼·¶¶Ä²³·º¾²ÃÀ·¸´µµ£¤ ¬¡¨¨ª¢Â¬¨«¥½¡¤ª««¥ W¥¡ ¹«§·£³¢¡±¡ ¢£¥®²¬©¢¢¥¤¤cg\ebNJKKOFEAGK>=IA:8JJN]QQI=LV\9FI=EMI8Hc\KCLPSYYVWOZ^IA=WQIK?H?5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+waS6SZkWsHE6=ue\LP¡Ã§¥¢³ ±¦©££©«¼±©¬µ²ÈÃÁóÂýÇĽÅʽ°±¶®±µ°¿Åµº±°º¶©°ª«¦¡¨Á±©¢®±ª¤¨½·¦¶»½¯·Ä³´Â¿²Æ³º·«µ¶ª¢¥¢« §ª®¯¯»±¥©©¡£¸ £®¯«¤¥ ¢¨µ§§µ£° °¡¢ ¥¬°¥¦¢ dh]igKJMJSAC@IG;;F>99NMU_RSJ>O^^=HPBMMI8Nd\LELRTY[SUO\bHA?ZQAHAKA7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0;v]^?[U_gr@8<HweA4¤Â§£©± £´©±ª¦¢¤²¬©»³°´´Ç¿Äõ¿Ä¾ÊŶÁɶ¬µ©±¸¬ÀÄ´¸¯¶º¥«²¬«¡§»´¨°¬®´²¨«º²§¹´·²¹Áª·³Ã½´Å§¾®·µ©¨¬¡¥£¢¢¤®·±´¶¨¤£ ¶¢¤¥±±¥¨¤ ¨ ¢¯³¢¦¯¥ § ¨©«¡§ zek^mkNQNNT=CANC;:I?77QN]_RVQAWa]BISHWKH:Td]NFON[W[RPQX]GAB[PBG>NC9HGHNP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1[cZ33906p[bH05JqjWDWFyfC;¤¤ ¥¿¥¨®® ©µ©·¯«£ª´¶±°¸·°··¸Å¼Ãǽ¼ÃÂÈÁºÂÆ»ª¶¥»®Áø¸«®²¼£®±®³¦¨ªº©¡§°ª ¯´³«ª¶µ¬»¬³²º·¬¹°Âº¾¿¦Ãª°·¯©««¦ª ¡ °®³ª°¸ª¦¶¨¤¢¢¯°³«±¦ª¥¡£´°¦¡ª¤¢©¨§£}linbnoXQRZTACDU@;:IA7:XPd^PWWEY_^MLSN^LJ?Zd^NIQN[UYPKSWZI?DXPDF>N?=IGGQPB=DFBM?:2D?77547?=95E4+75/251.-.,1>*'+=\p=>1.1e[e@1747gYaF(@8m}i\V;{cC=¨¡©¼¡ª¯ª¢°·¨¤³²«¡¬µ½®³¹½»½·¶Á¿ÉùÄÃÁÁ¹Å¾Á¹°¶¨¬·²¼¿¿µª¯²¸¬©¯©©§»¥³«¢±°³¬ªµ³µ¼¯±µ¬°µ²ÀºÅ·«½¯±·¬©¢±¥¥¨£²©²©©²§ ¦¤´®§¢¬¬°§²ª°©¢¨£¡¨·©¢ ¡¦¥£ {gmrhqs_GYfVDCNXDZ9HB5>]Qh\NZ]H[_^NMSXdJKC]c`PLMNXWXPJVVWL=EUJEDAM?AFHHQPA;GDFK=87B=68719><65D0+80/05/*,/-*=,+%2+*5K1.'__aU151=`V_8)C3YU\hK5zfL@¥ ¤¬µ£¬¨¥®µ¨®²¸¦§°·Å·±·¿Á¶µºÅ¾ËĹÃÁ»ÀºÅ¸Áº³´¬ªº·»»¾µ«¯±·¨¬¬¬««½«¯±£©±³¯®¶±¹¶ª¯²¨¶°´º¼Ê²ªµ´±´°¯§¡³¨¬¤±¢ ¥¯¢¤¢¥§²©¡¦±«©´¥®¯³®£§¬¹£¡®¢ ¥¢£¡{
zlnyov}aF`jZIHZ\={JGE6AcTi[M\aK\][RRSbaLKE`a`QLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`Va.5(C^Q\.+A/JGP[G3cXTLE°¨°©¬¤£®µ¨¶²·£¬³·É»µ»¼À¾µ´·ÃÀÌǼý¸¿ÀÀ¸À½²½®¨ºº¸·Ã·¬®²º§¯¨¤²ª¯»¤¬²²§§£²´±²±µ°·³©®¬²§¸¯¶´ÃŶ©µµ«°ª§£¶§±£±§©©£¥¥¤·§¢±³«§°§¯´¬¤ ¬¨ª¹¢©¥¢¨¤ v{nqxv|\Lel\KNc]>b{GI8GhWe[L^bMYZWTXUj]PPHa^_PKGQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANIg27'FaLV%-B.=ELQ<3qjLED¤¤¬ª¥£°±³©¶¯µ«´¹Èº®Â½Ã¸³²µÂÃÎÄÀ¾µ¾ÁÀ»¿½´Ä©«º±·¸À¼°´´¡§±®¦¦±¥±µ¬©²°«¨©µº¬µ²µ«³¬ª«©¬©¹®²°Ç¿¸¤¹¯©¦§±¥¤£®£¨®£¢¢£¬£ ¡©¦¥¸¤«´´¤ª«©¬®¶®¢£¨ª ¤´£¡£§¡w~|}~rts~}\Scn_NYg\FD[G:MnXb[NabOVWVWTYh^QSMc[[UKFOTSNGIVS\N;P^JBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3De;6*HdHJ+:I?3CIS,>l@HI¨©¡¨¯¤¦¢³³°³´¯° «½Ì»®Á½Ç±´®´ÂÃÑÄſ³¿Âü¿¸½Å¨·¬´¹½À±¬³®¢¤§®ª¨¥°£©°ªª±®®¬«³»§¶°²©³©«¦¥¤®º¬ª±Ã¹´«¹©©¨©§±¥©¤£©¨¢¢¬¤¬¢§¨¡¬¦£¬·±° ©¢ ª®°¬§¨©£¡¨¡¡¥{w
ttrwl_Y`ncQsr\K;|F>WuXaYOd\NVVUWQ\b_SPOhYWWKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=398;*35>10485(5/*,.30;),,'%234$,2-860)(2=^K0.IgDF8<B05EKX1@]ANF¬§ ©±§¨°µ¬·´ª¤«ª½É¼±¿¹Ã¯±³ÄÃÍÎÿÀ´ÀÃĺÁ´ÉĬ¯·®³ºÀ¾´¯¯¬§¨ª±©§¨±¥³¬ª¯±®²³»¥¸³¬«®§« £±¸«ªº¶¤µµ¤ª§¬¬ª ¨§§°±£¦¥¡¡¬ª¡ ¦¤¢ª£¬¢¦±¶¬¬¡¥¢©ª®ª¡¥¤¤
¡
¥£|zuux¢xj^`nfWedN@gLDbzWbXRfUMVVVTO\]aUKOiWVVHJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<.2,&07XZ.0JgAA<<C+:JO^4DCJID¯¤¡ª¯¨§µªµ°ª¤«ª¨¼ÁÀ¹º´¼µ¦²¯ÄÉËÑ¿Á»¸¿ÀúºÂÄ®²µ²´¼Á½³²¯¬§¶ª¦¯ª·§°°®±«µª¶¶§µ·«¬¤©©¤´³©¨¤³´µ¡ª¨ª¨¬§«¬©¸µ©©ª©¡© ª¡ ¤£¦£ª¦´®§¤©¢£¤¦§ª¢¤£
£ t~xu{x~pqfgqx\atjO]VHmyUeVSdPMVUUQOX[bVIPjUWTGOXUI>IHOQPxMNV=<KD?@A<@CUC9AK=5;E23;:7*4:=+-341*8**+*,)*(/*&)%3;,$2)2/22%/3Rc02?f=NX?C,?LT_/Il8RF;¯ ¤ª«©£®²´¯©¥¯©¨»¿¼Á²°¹¢¶¯ÈÇÇÐÀ¿½»¼Ã¾»Ä¿¿¯²³²¶¾¼Â±²´«´©¥µ©¥²²·®¢¬´±¯±¹«¸®©®·¬ªª« £¡¶©¡¯²¡´ª¨§ª¢ª¡¡¬¨½®«®¡§§¬°¢¢¡¨§§©°©¢«¡¡¡¢£§©¥}
¤¡xt|twy{ut{k¤vi^elug|RVo^KxsTdSR_MMSZgNMWYeYGSiRR?BNQaQ:IHLSIqQLS;<I?;<=;@@W<<>H73CB15:93-5::)-31--6)(+-,52#2)',%.;.&1.0-14%,0Mh:38_=ad?F1CP[[+HO;YD3± ¤¥©£¤¢¬¦³²°¨¤°§ª¸¾Á¼±©¹ª§®°ÉÆÇÐþÀ¾¹¿À½É¼Á¸±°µ²º¼¹À³´¼¬¹¬£´¦¦«°µ·±¥¦¹´¬³»¯¼¥¶«©¯¤¤¬ª¨ª²¤³¨«§ª¤¨¢©§ª½ª´°®©¤ ®³£¥¥¤¥¨«¥¨¡ ¤©ª
~
£qzy}|hv|zuqr~jy
d_gcr
{mhy]^UAW{mTaPRYLLNpt]IZ[hZFVfPC>JODCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KI1%90%,,09/,,+6'17#-/GjI14X=fbAJ7GS`U*=;F]@*°¨¤¢¡«¤¶±±¤©°¦¹Á½¶±¤¹¬¨¨°ÂÈÈÌ·½¿µ¸Á¹È¶Âµµ³µ²½¹º½¶¯¹¶¿¬¢³¦ªª®´¶³¨¹»¨°¾²º ®´¶©«±£¥¨©£¥°¦¯ «©§¡©£¨ ¼§®°®¡ª¢¤®¦¡¢£ª¢¢¤¡¥¬{}£}yk}vxxbzzqoqtxkukgcgbnsmbjo`o@\ylU^NQRKJMTYVM\^mWEY`P^OHMDF;7HEKO<rhJK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*L>*49&'.34.0+/4&,:$40AhZ13S=e_DL6KVdN)=3R^>#¬§¢ §£·¯¡¯¯¨¬¸Ã»´® ¹¯«¨´ºÇÊÇ¿¸Á½¯´¿·Ä·Ã³°º±²À¶»¾·ª¹¸¾ª¤µ§¨©¯¬¸¯§¹»£¾´´ ·µ§¦§°³ ¥¦§ ¤¬§¨ ª¯§ ¦¢¨±¸¤±¯ «¡¬¤¦§¨£©¦¨¡ª}}|¡z}
|sp|qst_xwinqqpktezlgedbf`[rjrMMiXZMQLKHPSPGL[`oTFYZRgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e\FO=RZgH*?0]\5(¦¬¡£ ¶ª¯£´³©©¹Å·³® ·¬°µÅÇÀ·¿Á¹°µ½·¿»¾°¬¾°³¿²¼Â¸ª»º¸§¨µ§§ª¯ª±®¤»µ£ªºµ¯±¸¯©¥§¯±¡¤ ¤£ ¯¥¡¢¨¯¡ ¡£¤¢·°¡¦±««£®ª¥¨¤¥©¥¢©¢z~z{~z{prwnos^wwdlllkj
ogrijei]ds`[kviZJ^[YNOKHHSVG38^_lPEYVZeMIIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<"8R=*113>D5,-'42*;+139cm74GAf[HTDT]hD.<2dW,1¡¡ª£¡¢¡¶© »·¥¬½Å´°¯£¶°¬¬®´Ãü³¾º¶°³¹¸º·º¯®À³³¹¯¿À·¬½ºµ¥¢²©¦¨±©«°¿´¤§´µ¨²¼©¨¥©¯«¢§£¥ ±¤¤©¨¡¤ ¤¸©¤§®§¤¡¨ ©¢¡¡¢ª ¤©¤z{
|{
zw~|ltrlks`wthhjggphhhdfij`jcjh[f{b`StT\[RLJGIPT@!*h_iMEXU_`LJHEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,?0-N?.+-7,1195,&.5-80576`tA3CDh[JWGU`hB379gP'2¢¤£§£³¬§ªº¶¦¬ÃÁ¸±¬£¶®§®¶¿¿¼²Á¶°²¶¶¸¶¶ª½³®²±¼¾·¯¼»±¥µ©¤¤³¦¨Àª§¤¯³©¬µ»©©¬°¥©¦¤¥¬¡¤©¡¡§µ¦°ª® ¡ ¦ ¢ ¥¬¡© y
v~zs~~fyojjketskbgddvceffejjckr[_Y]lcaNiXZ`VJGHKMSW>9^lhHDVT][IJGFA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=+*,0B*JK./*+3722(57$+7.72685]yN2>Hi[LZJVbf@:3BhH%5£ «¡ ¤²±¢²½¶¡±Å¼º²±£·¬ª©¸¼ººÀ±®®®¶¯²¸³©«¹±¯®³µºµ°¸½¬¦´© °¢¨¢¿°£®±¯·®µ¯¢¦¨¥§¥¤¢¨¬¯¦º¨®¢¡¤¤¨ª§ª§|s
}
ofymgkifprk\gcctbfgjnlgjjin]llrp`TcicfZIFMMOXQPUaeUAWSYTGIFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9A1-+.3<;K60.+,-24;6#3*)6.55465Z|]19Kj[M[KXdd@A1JfC&4¡¯¡©±¯¸¿µ ´Á»¾º±¦·°§¤·¸·¶¬»®¬ª«·ª³·®¦²µ²®©°µµ°²µ¹¦¨´§¨ §«§½¬£®°µµ ±°¨¡£«§¦£©¢¤¤ª«ª» §¤ ¡k¢p£u©§¢ymjwql~
q_dag
ktw~gguheW\hsnMPicgr
h_efnmj]`aeNKD9GTh^JHQQUULHSapteF[QUPFHEC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=A@@=28@E=1,,08=G701.*.*/568,#1'214:276Xl16Ok[N\K[fb>G1Qd=*.¤° ª¬ª£½Å®©·Â·½¼§·°¤ª¢·³±²°¹¬©¦¬´¥¯´£©·µµ¨§«¶²´³¡¨²©¡£¤¥«¹¥¥¯³·¯¥ª®ª¬¤¡ ¦¦ ¥¤§¦¨©¤¶°¤£¢£¡ ¥¦ªsx
¡vif~sx o~}¡ }sulmieczlraS
mbliqXiqoY^i[ll[rnzr
fZ_GN?G_NFRVVQQRWUg]MVIRROFHG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82*/1<I9/01.*.(-4573%&2115>1<8Xu25Rk[N\L\g_=K1Wa7/(§«ª©§ª¿Ã®±º¼·À¿ª¥·°¨¬¥²´®®³¶ª¨¤°¥´²®µ¶´¦§§²°¬²¨© °§£¢¡²£¥¥µ½¦§«ª¬¨¥ ¦£¥¢£¤¨¢£¥¦¡¸¤¤ £¯©¡
±£¬yÔ¨ÁÆyx±¥·eÀ¿y
z}Êr»Åzrµ¦»{m±«°yhlX±®nei¼¼ngznrØ~Skc¶²~ss¡ªWOWbOVNFU[XQPS]W[QA]DPNEHI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>:B<?A8:J>52*22BE/.32.+/(-/186- /416A1=9Ww21Tk\O[M^g\>L1[]41!§§©¥¬±¨°Â½²µÀµ¶¾Á«¦³¬¬¨¦®³©®¶³¦§¥´¥§·³±µ«¦¤§°¬°¦©¦£¯¢ «¢³º£«©¢®¥¡¡§§¦§¦¡¦¢¡±££
¯kjª~fdp¦p®¡¤~x»}l¡v±_j´[¥eag{gkyk©e¾qg¦u±j{±xtcnm§n[¡EhfEu`~g|¤§Z`«hxyj§7J¯\XSld[KOX`\WV;NOWW/ITSJDFF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=03.33E4..53/+/(.0.:6/'$203B/>;Uv2-Vj\OYL_gY:M5_X30¢§¥£¤ª±·¬µ½¾°¶Ä±·ºÁ¦¨°ª®¨¨¯®£°º¯£¤²£©·§²²°£¥¡©¬®«¯¦¦¢¡¯¡¬¤¡³³¢¬£ ¡¨£¡¦¤¢ ª§¦¡ ¡
µµx
©µv³·~©k¦{w«gk±\«ztrx °vwqlll|N¤XHbb~ch¦_yruS^Q©mcq}b.Q¡o[Skh`LJ\eY\ZB>²{XXA#MhFCEA@A19>88:84;99<9:A:E::;6:CB8=?KNG:5:@FB@AD<FD;0201;F-0.940,.(/3,>831/2-D1=<S}n3+Xj\OXM_gX7J8aU50 ³¦¦¡¯©¨²¬©»¶Â°»Á¸·¿©¬¥¬±© ®»ª §³£ª´£¦²²§£¢¦ª±§¯§¤®¬ ¤¨µ¯¢ªª¨ª ¥§¢¢¤¢¢©¦¢¡Õ¹p°Á~Å|Ö»|¥¤{¤¥z¬yV¯z~k¹[ºw~¦{zªxz±nt¼
oP¯§ÅQ zc`ªbsrm`Sµ´È
|c¤3Bv]PjicP@XhZdaJHMqQ\QOYfZCE?E?0=<59;74<;8=:<C:F:;>6:@C;6@OLH<9;DHCBCD<EF81211DB./0483+-).323971#%5*>3==Qwj6*Yi[K]O_fT7H:aP71%¢²¨¨¦´ª¥´©¤¼·Á°¹¿°µ´º²´§°¯¢¯²¥µ¨§¸¢¯°³´° ¤¦©°¨³¨£ª ©§°©£¢¨ ¥ ¡ ¡ ¡¡§¡¦ §¡²nhµq«n¦r´sr¶{¤¢~¡¦±wÒÒv\®{
¤oª¦k
}}{±qw³etogQÈZÂ\ yb_¬`usb^YÊo¿uMKµSUÆdTQjceXAPk`lhPVGJ9=URZWXID?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>HI91746A?/.24252-).26,742&60;5:=Pqh9'Wi\BOT_eP5G=`L620¢¤±£«¼¦´¦§µº¼²º¾¶µ³¹¸²¤´² °±¢«¯£¦¸¤±°´·© ¥¡©¤±§¬©£§¡§¥ª°¦¢ ¦£¥¥¦ ¢¡¡¥¢
¬{w¨v£©o§¡¢®³\r³R®}£rØ~x~v¯v´aemZ°XKuyf`¬^uwhk]¯wxl5yÈ®²_BTo^g`EPm`pmVVM.feiSYP;BE@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK96<46:>/04333.2..18*.32%!03767=Pke>&Vg\@>V_cN6GB_H:99 ¹±´Â®¨²¨©²º·³·¾¸·±´º´¤·²³¬¨«§µ«¨°±ª³£© §¡µ¦¥©¢¤ ¢¤¦¯¦¡© ¢¡§¤¤¨¤¬¡¡¢ ¦©}}¥x¡ªp§¡£«}yo±Z¨ztÙwt¨¤{z²^d ~m]«[Zhgªcq{ks]«Z koeOJC¡\[Lt]bgM[a_qs_KW7JXGE=HGAM35A8.;>05A78@<6=<F?:<6?=B7.HVJEAH6KIN@IK@EN::@5.;>102144+*05/7,&21($$6671<PeeA&Uf[?2U_bL7FH^B2?8£Á«´Â®«¬©¦´°·°µ¾¹¸±°µº¨º³¯¤¤¦¦©¯¨®¨µ«©®¡ ¦¤£¹¡¢« ¡©°°§¨¦ £§ª¦¨§ ¢¤¡¡¡ ¡ª®mr´s©u§s´xs³¤£¤w¸p{¢jk¶Z¡
ei ¢§nr´t~²j
ju³af¢ok]`M¡|Rs£ky~oq\¯V<wfTon.\§OcSkebmYc]ap{cT[S>=nq3CB@?L:!7@6.;@37C58??3;<CDBJFMIF62JTKEBI6IJP?HNCFP=<E50;;010/75,+,426/#00,,289/9N`eD'UdY>/U^aL5FM^81C8¦¼¡²À¯««§·©·®µ¿´º¯®·¶ªÀµ¨© ¥£¡©©§´¢²§© §¤«¸¢¬£¢ «¶±¨¬©¥¤¬¢ª±£¦«±¡£¢ ¡©ªÔ»s°ÃÃ~Õ¸x§z¤¶u~wv²`ºyÀ}v¸cµ©}«©q{t¼§ ia¦¯¡~u«}¾os¼t²txnqn¤t½^w}Zay¼kZV\jy^j`fgcmxoY\ZC@@t@CG+4G"';?10<?7:B99=C4<@NZ^```__ZPPRKEFJ4HLR@JNEFOB=E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7A9¨£½¡²Ã°©ª¬±¦·¯¶Ã°¸°¸®À°«£¢£¡¨£ª²¤´¥¬¤ª¦¬¸¢¤¢¯¹²¬¤¨§¤£¬¨«¨¢³£¥§¡¢£¯©
¶·xµwmknsoy
tÁ»½{±¨ps¹}||¤»¹½ty´£twvt°ufj¶trqx¶^z}hynzc¬pu
X[§jEdZTf`c^cQggpluCNQLC:ZM?K2;/ 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7LT_G'SbW8*O^]=+:VU'>;<¨¡¢À¥µÄ´¬ª¨¬ª©¹®°Å³²µ¦´¸¬©¡¡¥ ª£¬ª¥µ§¦ £¬¤¼¥ ©¡¡§¡²µ·¤¤¢¥¤ª¨¤¥¡¨¦§¤ª¡¤¯¨¥¡j}i¥wr}tyd{½¾ÀºoraskZ_ack`dnwcle^`bpir}gkrtx}b\xthP]n}{kXkzsJJopNtLEX]gaL[Xfc_O[muiqRQDEM;GI=M?2,2A?8/5?C<9;@;=C>RVVWYZ[[\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7JR_I'S_V4)P_L(2=[O'?2>© ¨¢Â£µ»¶¢¬¥®§§´±¬Ç«¯²ª³¢½°°¥¢§£«¦®£¤´©¤ ¦¨½§¨¤¤©¨°³¿¬§§¢©§£ª ££§¬£ ¬£±§ °¤ §¡¡¤¡gm}qw¶«¡ z¥
mk}}uqxyvu|jstuev}wkozm_d]phMYZfj_WZoymmfUOFR9NYMRO(+:KB635=@A::C><ENSSTVWXZZ\\`bba_^^[TKCSGKNDGPLOI<:;389,2;810)6IRO8")+/2#4;*7FO[J&R^S10T^:+=8\J,<-@³¡³£À¡¤²²· ©¥²§¥¯´ªÇª¬¯¤³¤À§³ ¤¤£ª¦¬¢£¶«©¥Àª£¡¢§©¨³Ä°««¨ª« ¢¤¯§¢¦¨ ¯§ ¯ ¥¡ ®|«©
z£g¡³¯
v{}wyzofykuysis{vjudzf`jecdfkYk{oij]SLPD^TE@?>,4@F;45;>A;<?>>HNNOPSUVVXZ[_bca_^^]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMMD/T\Q05N[17E3[G5<,@´¡¹°¿¬«¯²± ª§²¢¬²¯Ä¯©ª¢±¼¢³¦¢¡§¥©¥¤¥²´°¥¾ «¢¡¨¬¬£´È´ ª¤«¦¨£ª ª¯ª¦¤¬£¯ ¤®£§¢§e|e~cymhk{¥«je}geeih{¢lh£wkj¢skmzzXf^^mv\hswvmwxsnytv|jY^lue]sik{pkc_RNWIdXAJ4>F7?FD71<=?AD;;DGHHILNPRRUW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AJ[J/7ZO6)EY/DO2YC;?.=¥ º¼º¯¬´±ª¥¨®°¦¬°»°¨¦£¬°¬£¢¦ª£¥§¨²®¢¢¯¥µ¸¥¢ ¥|¥¯£¨µÅ¸¥¢§¯¢£¢¨¨ ¡ª°«¬¤«¡ª§§« ¥¯£¨¢©}½r´rhx¹Ä¸q££z¦r«|ËÀÀ»q£|À½ÁÁ||ÃÀ~l¥²ooÊzvuyyqzpw
ymxbg`xd_eb^sglddYLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNQSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>I[L*#BP.#F[3PY/UAB;/8£¹Ãµ°°Áª¨£¯¨°®¥²³®©¤¥¥¯«ª¢ª¦¡«¢¤¨¤¤´¤¢¥«·³§¢¥ ¡§¥¬®ÁÀ±¡©®©¡¡¢©£ ¬¯«®§¤¤¨¡¦¥¬¨£¨¬©§ª£¡~Îxz¤y_®^¨£¡|§s«¯^cª{¨
t³c« ³j¯u}·bZ£Ínv{Ú{p}v}ezvvk|n}
~m`qlph`_ye\qgjdg`RTRW]KOD5AHDD8>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-J0';\;L-!P@F4.1ÂÀ¿µ´°¸£ª¨³«¥²ª«ª¢«¦®©¦¥¢¯ ¨§£¥ °«¦«°ª¨«¤¥§£¯¦±©Àdz¨©±®¡¨© °©¬«¨¨¥¢««²¤¡ª©¢¥¤®¥ q
u
¨q±}r¬¢¥v«}s¬v{|~ª¡}«{ {WÅ{pÁ}lupmeve
oawnronfpuuqagmf_ohingdWT]aZRSC9JI@D<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1' '45-&7=WJ-<(=1)3W@F!G:C1.+°ÓÆƲ³¢£¢¢¬®¶®¨±¥¨©¦ªª§¡£¢¥«¡¥¨¨¢°¬©§®«¨¦§£¡¡§£¯¥®¶«ºÎ±¦®«¢« ©³««««¥£¬®±¡§«¥¤©§§¯ ¢¢¤j¤uz©tz²p¦q ¤`aR¬
®v¨
{
zf£¤£}©~®_|©V£z£{îÄr¯³³¹qb©¯Âthnqozxyplfferpf}jc]W`jXYUMMQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ('"+-"$.!3-&@DWH,G+55*2PKL# A9D4,'ÃÉÖÔ¿¡«§ ®¢¯´°®©¬¢§¥©ªª¨¤¦ ¤¦§§£«¢¬¡£¯¡«¤´®® §¦¢¢¨ ¦±¦¦©²·É²µª«©¢¥³ §¬¥°«££ª¡²¡©²°¡¨§¬³¡¡¥{©lu«y|°o¥ Ò¸´·É²_`©¥ zxªÉt¤©©ÆÆyg¡¥t}¯]o´b°uK£m§Gd|qq{u~|n\fjsqfk_aYdn\_YIMMKEDAB>A<B?I;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75685/)(%&%$&),4ENPPMFKJVF*L0/=-5OTQ;<F2,$§¤ÀƸ¨²¬¤¢²¸¬ª ¥¨¤©«ª§¦¦ª£ ¯«¥ ¬©¥§µ¢©ªµ±¬¤ ¥¬§£¡ª§®¢¦¨ª±µÃ²³ª¬¨¤¡£®¥¡¥¦±®©§«¢¶¬ °¸®¦°±°¢¦¡Nxz£}¤
¦¸{|y¹Ìƶx¡~v¥¤©°
¬}c¦m¤p
|r¬`£rp`¼}RUt£{~v{sq]mnxrjo[d_joce]KMQTAIHFI:9K?B108866877-*5==?BDGILNPTVYYZ[\__^]__\ZZZYUSOH@882.,*.+*''?QTVWWWYXXWUOUF<E3:P[T6?H,- ©«¤ª¸ª® ¬²³¥ ¥ª§¦§£¨¡³¯£©§² ¨¤¢µ¢¢¢©´¸£¡£¡±§¦¡¢°®¦©£¶³Å°©¬©§¢¤¥¦¥«±¢¯¥¦¯¤»¡µµ¬³°¶¯°¤®¢
ѵ÷y
¦y¡w ¥qª
µnri¤}s¯¦£¦nq²]¥tzl{|m©a¢qq~bs²¸hw¦}z}ynjyizsou^eeonfh`J[XX<HH@U4@F><*)63.013)&4:;<=>@CEIKNPRTVWWY]__^^`_][Z[XURRQF:223//++(@QRTUTSTVWWXXWUUUUQOQ[U%!2AH$)%s½¾¼¹´§¤µ¡¡£§¦«¬¦£¦¡¡¶¨£©§°£«£¥£ª³³¤£¨® §¤¨¶£«¤¶Ä°©«©¢¢ ¦¢§¦¨¨¯£¥¬¦½¬¼¯¬¡®°·©°¤§¯¡¦y¨}|°w¤¥m²p¡|¡¨¬
®
ª ¢{~«ªw z¯^¤}¦§d|rj¯]¤jp]`[ m¦||knctnz`gfqoihgCZa[=KU3U8BBC8$$3+''3, /6674359@CFIKMNQSSSVZ]_a`aaa]][ZWSPONI7042.*,ATVVVTTUTUUTTUTSTVWWXVUUQHFIJ#((½¨ÅÁ¶À³¬ ·¥£¤¢ °°«¥ ¹¡£« ¯©¡«¨¤°¬¦¥¬¡¡¥¡¥¯¢©§·ªÁ¯¥¨¤¦¦¥¦ª¬¤¤©¨¾¥Áª©¡ ª°·©«¤²¦¨u¯~
~ºe°e}¡§¬°
¦¤¡¢
¡]lk³`{{±mgn±[~µ\¤kÈ¢d{»WvµY²}R®z¬W¡m¨|z ducxu}bkhrngfePUd\AV`>I(>9=4!",%2. *1/04579:<ACFHJLNPQRTWZ^```ab^_\[XUPNJGC553./@UYXWXWXXWWWWVWWVWXWWXYZZ[\XWWGB;Ò²±¶½º³Á²¢¬¦¤µ¨ ³³ª¤¡¶¡´¨ª¬°«¯§¡¯«¨¦¡¥®¨¢¥¤£¦¡£ª³ª½¯¤¨} © £©®¨¥¥¢¤¨ºÄ¥£§©²³ª¬¤¹«ª«©£¯¤¸Ãº§¬¯§¦«~ֽªb¤¿½}~£×»¸µ½¾m£o«lz²°Çi«°¼¬wv¡¾¼s¦ {|c~{egz|alfmkcQa[Sj\@UbCN)=:4/$%2 $(0496678;>ACEGIKMNNQTW]a\__a^`[\YTQMHC?=A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ»³³°¿¸±¼²¢¦¥²¦¥Àª¸²¨¢À§¨³²º¨®¯¥¦°«®¥¢¬ £ª£§§¡©¤ ¢¬®ªº¨£|¥©¡ª©¡ª§ £ªº¨Ã¢¬¡©°²¨§¸¥¬¬svª¤¸d ph®nnw¤u®pq¨¤¯¤smmmfxonpzjqigrij
gqd]bjoY\f}v¦_apnee¡¡}wfxil{zemdhmcKdXJkZ;QfFQ'K:+# #,)-2.5:457:<?ABDFHKLMOQSV\WZ\``a]][TPLHD=:AB7MXZZYYZYXXYXWWWWY]^^]\\\]^]^][[UW^©¬³¨¹¸±³ª©¡£²ª¿³Å˾·«Á®¤¢© º£¤®¬¥®©
¬¦ª ¤£ ¤§©¤«¢§¦¨°»«¬|¥¨ ©£°¦¢«¹¯¿§£±¤ª®¯¨«©¥µ¢¬¶¡©¦·£ª©³¢ª ²¢¡¢¡¥¢¬§¥~g~tusp§lz¢¥tkwrxx}zjmfepeU`Y@j[HdbPY+F=+'!750.!%2(*699469;>?ABDEJKKMPPQXUWY^`ac]^TQKEC>9=@ASX[\ZWXXXXXYXXZZ[\^__`^^^__```_YY`¦©©¤´µ®®¢°£ µ±¬È¾Æ»º«£¦§²ª¤·§©µ§§¢§¬¤¨£¨¨§¢¤¨¡¶»§ª| ¦ © µ£¦ª¶§®À¢µ¤®ª§¦°¶¬º¥£§¶¢§ ª £«° £°¨°£ £ª¬¢« ¡~e
utwsj}£¤
}tt|s|jof_qj`[`ZndPafQZ:GGE>2=>9/*&+)&&3166589==?AACIJGJKLMSSTUZ``iaeVPKACB:9EMV[^^[Z\[[[\]]^_]^_`abbaaa`bbbdb\[c£¦¢¯±«®£©¦¬§µª¤µ½°£¤|¤³¥¦±©¸¦£ª¢®¢¨ ®ªª©©¹¶¤¥y£¨¸¢®µ¢®®t¢»¡°vx§¯¸t«£«d\bv ¥}m³¢¦ª£esyq©m£¨e¦
wjv
pz
`hZughs|¨f{
zjpzkqf`wplki\ffbcqT[>NNNSG>@UD:1/&4:306678<;>@AAFHBGFIKMSTUY\`hfgWQJ<DG<8UR[`ab`^__`aa_\]__`aabcdabaaedchd^]f¥¢ ®¯««©¥¨¢¦¥«·±³§¬¨t± ¨«§¹ ¤«¢§¡
v§ª¤»³§ uw¡¡§±´³¹¥}§¢y ¬´¥±ª¯¤z¬
¡¦¨§
w¥z§{³z¡cz
mpyp}
s
wht t}£ kly|rqhfypjlk\eljgu]^ITLR@E6.[UU7)!09>>743468;:=>>@DI?IEJLGSX[Y\bahfYQH9EL;>aV^bded`aa`bb_]`aabbbcfgcba`edcgcaah¢¥¬¬«§¬ §°¦¦©¦¯ÉÀ²¢¨ª·
§¢ ¾ }«¢ ¡
§£¥ º±§
pv ¡¤«´´Ê¨¬¶
¯®«¨¦}¨s{w§h¤y´ ¥§Â«¡r¥~
³¡}¡¡}
ms
~yq{tÅf©£k
¤
qjyv|xhivqhhl^dpmgnYgG]QM3E57Nbd7&3<EGD:64658;8>==?BM?NJJLCPZ]\Wb^jm\QE=KM@IcX]cfhgbbbbdc`_babccceiicbbbecafcbbi¡¯¦§¨¥«¤·°©«§ £¥¬¥¦¬¹¤°¢©¦¼¡z«¢
w¥£¹¤~bm ¡§~¡§ ¨¬
£©¢ukvM«x§¦©«}¡{z§jlg·~n`dY|dhr}yl]}n_Rp\_kx_Xd|p§ªk£nr¥p
jg m\p~gZ`cXQpwfnvtljp_kqnljYiO]XF9A5HE_l5,IDRMN=84859;6@;;>BP>QRLMBJ\]_W]^cv`MD:MONTa\\ffiibbdbddbab`cdcacjkdbddgdbgeach¸©£¦¬¡µ»ª®£¡¢¥®¡°¶¤©¢¡ §´u§~
¬¥ª¦±§¡in£¡¤¢ v§¥~
§ª¥x|~¢ps|ym¨{¢sv¦f~w¤_z}t¢n·´ºtµ¨dƸ{p¶r£cs¬«`|i³~m|q£lr£t
¤`´s}³ut\²kcpuxripYkmtsg]j^bLE=D6RBZs3=SG`JR=<395::6D;;@JP?UMOQ@E__[ZX``|dHC8MWUWbaZefkkbbeadd`ab`dc_`cknccddhdbgfchh¢·ª¤·´¬ ¢¤¤¦¯³¯¢¡¥«y
q }¨¡¤©¨¥~j{~}¡w¡q¡©£¥¨|~z z£xt}¥
¢d¡|mho{§~sit«tªh]
v
gªk¸f\¨o`^§vu~guoo¨^©y¼lª\]´h]or{xlj\qkzzd`gXbBQFO7WDRo5K[[_NZD@151<;7H?:CHU>YRY]>Db^V`Qac}jEB9N\^YdfXfgnmbbe_aa__``eb^bdoq`deekecihgki©³¦c«º±°¬¦© ¯²©®¥¡ £jr{z¤©£ ixz¢ rhp© ¤¥{°£¢¸w£³£¤y{«~¢q¡|
¯µ}k¡y~µ£¤«¨|}tªZ]o{xbL{z
cyBLX¢iq{lux±³§wnt~ptk¤^vHedatrofaliw|eebQ_W^UW@ZFQhETW]bX^ID=B8@A:IF8LEXAWR[WDFb\Z`K`m}rEB<U_bZeiVghmobfg^aa\]^`hb_edvl]egfkdeliiki¯¬S^ ¦³¹²²©£¬ª¢¥£© ¡woy
|r¡s¡ª|l
q¡x
|£¢}µ{¥y©{§hwm~t¡sr|p®}£¥£o^¨gu¢co¥aÓ}{xstb¢£t¤vk³`sª²¨¼wm~¿¦©´]m{pmr¢q]¤gs¦`h¦mÔ}p{{l}xsn©¤gafzr
lhfeowxiacS\gRRbHXJUaXT\fk\eQECKMJKBKE8O@QNXSYOSQ`fejRdwywIFEc^fZhjTihjocjg`c_]]]_hbaie|d^dgdkdjlfhlh¯«T[J~©¯±³¯²£
ª ¢¥¦©¡«¡{p}h}wol|¥«yvnw£z¢¢³¡¢¶y¬§¤®¥o¨
z¤¡r¤®¯¤ vµ¶µÉ¡s`©mz¡u¢w ~pMf£ps¥{ytak} kqd_q}shzi³µ³Æ¦r}zk«v
nxyj|vsQE}³_jwlzgkhcuvqoW_TYiQSiJWMYTV^iloVgWMKAJMKHKOBQKPecjmetrsy|nu{{TQOl^i\kiRjhilglfce_]]]^ibdik{_]dhcjfomeile ®¥d?¡²ª®¯µ¢¢ª¢£¦¦¨§zjye yui
z§ªz}xp¡y ¤¦fnxl¢d{p¥wpe¦z¤ysw¹n¢b} mriªku mo¦`iiu¢~`uobh e~iuocfmq¢Y^Zb¡l]mz}sqd¥mx¢dg§hsp¢pUp `f¨U^TnntlsnqikytkpRYWWfZTmJZP]IXiisjYkVQRFV]LXSbUik_xt{}p||r{svv^RrbgbpgPjhhllnhdg_]^]`jbjivt]\chcjjslfkmc£¥ydsl¦£©°±¦¬§£¢¤£{qh|su~{e|¨£~ri¦} ©¥¦x~¥±®¤v
x©s¥n¤¢»n}¥¯
|¥zr¨ g~o¬dw¨mª¢vx«¦k°kv³©k
mm_}«ªv}~¤v|¤ jx¬h®¶ux¾¤Z§«avsur|uqckohmTW[Vab]lM]R^J^mow`[qY\`[guenorbrt`xz~yrys~{{vbxddnsdRkgholrjfia_^\akbllzo\\bibljwmglnb¤©£©©¨¦¤¬¦¦«
t{p
~ttrn
}|§§§
vnl©©¢t~x®¢~p
v}{r§q~}zy{~v {}k
[yyrzqin~ruqe`wusuoynml^ugwe
§}t{jpv}wnnitz|x
\lXyioxsspxxp]lojhW[`W]fkdWcU_R`pyymkwgjkkw}rsusaovbt{xuyvy
~{nldyn^Vngiukxjiie\`ZcielqtnZ[bldllynhloa¶§¦ ¡¦£¥«¢¡¢¨ªr|}~{trq
{|
y~¥|¨¡
vr©¦ª~~¬§¥wnxn}¨
q~qkp} hl\sqtkwtYrn~i]je{`iy{{u
gwj`oqu^q¥enwqzqhif}{[]khnv\|zxvotsh]nllcZZ_ZYmr\`bZ_^ft|vpudkkk|~s|yudnuhm|~vz|{yz~o
{}t~ysiT\qilvpugkgd]aXjhkkqrnW[enlgsyohjm`¨¯ ¢ ¨£¢~® £¦|}s~v
ror~{
¡¨¢xy ©¡¡£¢© ¦¤
yv§~²¦±¤k|wxe|
w|zt ~}tns}v
£}zn
~zksiatq~{wwpwu]^ohna_Z]]SiqVe]]bmhv|}topekji}nyrjpqmg{sx}
zm|zx{}zyNdvjsnpzekecb`[tepgrqmV^ltmhyzqgikd¸¡ ¤ |¬¡~y|nys~mk~z~}
¬ s}zª¤¡
¦¤~tz
¥{}«¡©~pxru`u
nyvt¢
s|{qpzzv¤w~rn}oilnh^zh~}wvwu|x]`q~nuad[]_RgnTf\^bkiw{rlmdkjhltlmupzpynv}
vq~{|||`h{juiidjc`i\duhobumlUcqyepz{sejmmµ ¢{y§¦z{}n|ys
~}kh}|}
}©q ¡
|§x¢~¢ ¢|w ~|¤¢¢¦~~utqwa~r}rixrx~r{{owzyx£zv|ht~z|rmlh_~si}vvu~sk_atwqxedY__RkiVfZ`ahjwzrgldlhfkn~horly{ls~tv|{~irntiahlb_qVtoln`xhmWjtvcuz{rbjoz°¤¤ |w¥¡£y|r{tv
~xgc}x}y¡p
¥¦
w y~£wv~s£¢¡~|vq~n{d}
ql
fvo{
|x{{zp}wxvw|xbzzuxhmfbjkxtuw~r}ddasnusnaZa_[meSdYaaikvzrckcmfh}liuinpi}znrt|~z~|mvsumeljbbuVipn`xglbjvpfy|zq`rl
¬¦§~xª{y|~}|xtzzt}d_}t}~~¥£s{¦ r¥qkzo¤
{zqzlul|~nxp~erj{~tx|tv~|{¡xt}tu
qc|v{r~pbpde|copwsyxtubw`plvnp]\`^^k^Q^Ycaint|l`jejchwngmikmh}{xos
}t{}z}}ryxxmlkh_ircgqoewgnlazij}{xpaxm©£¨~x¯~w~|}|wxput|p||a\~rz{§}}£m¡ lezp£}{
tsvlqnv}toqu|}fqmy||tsxm~|{¦z{}w~qpfizuvq|c_qakt_qk{zzmsqfz^omsmsX[_`bl[QXYecgqrg]jigbgqodjheiizwvo
t|ux
|x
zw~{{sxjk_phtkromrgole|cnzvqlww~¢¡§¡¦v¬¡t|w
xyss{lsp{nvop[Y~vu¡¢y
m¡h¡e~w~}{|ovplmoq|jtqwuzgsnuzyyusozx¡{uxxnk_tutrry[_qaqk_pk~|qnnknwappkrmYYbaboXQT[fgcup
c]kmdbfkn`gg_hkurspuyvx
xw
|{wjqc|c|nqmtjholvx`qy|tut~¤¬§ v zrxupr
trwlpnvmv~mmUQªw~wr{¢y{£{r
~|f
f
qwzz||kvkoklm{az~w{x}zhtls}
{qyovyx|{zv|vpjl{ayqomstV_pcrb`mozripfguuirlbwe]WfaasTQO]ge^yp}`]irbbffj_he[gp~plqt}v}uv~y{
xs
{zxfqk`}ookz`jnuu_t}yxts
}x °¥
wtwtqp
tprpljwnn}}mtsRMßÈÖ{pu
w
¢x|s
¡~wz~xte
k¡cqz{y
{m|erokm{z\z{~{{isjs
|l~~m}{x|uwxrmgq
nkupjkvnT_pepZ`msyhlkcgysqqd`xa`Vl`_wQNLbgc]zqv]\evabfedagbYissnkrw}tzuv~s{r|~vesn|e~oplYlnyys`vz{wswwy®
w~}
uxpyqo
pmoseeyq}my}jhkc¤ÁÜ®ð rlv
w¥o¢r¢
}ztwuul|¢
^m{}
v
}~k}dxvkoysX{zzfrikum|x}trwusqguzcunqckwhSarhlV`ouzasd`iqso[dsabWn[^yNMMegb^wtn\]ey_`ee
`cc_Yjsknksx~twxw{q}~{t~shuqyl{ntqWqzvyrdwyiwr§£}qxy
¡|{sxptjpljm}u_ayw{qu{g`d|ëÚµÉÃÜrltwkq|{
uxr
u}n¡ai|}q~qwhvsjuxlZ}~
wark~~|mkwz{}mpy
tkqkryaujp^lwaResifS`qwuapa]hrtkXhiciYnW\vMKMfg^bstk\\ey_^dg{ad_]Ykoenjtx~st~{vzs
}wv{ulwvyxtnx{}Xzqogxwdvp
¡¢toqw~} xrtnodrigmxx\`y{{qqiagaÕ¶¦wnqx}rl{i|{}zszzptt~~b
g|~~m|ulmwutwvlc}
p_qo{{~zpey
z|}mny~umnjl|dilkZnwYSjsibQcsxmcf^Zk
ouc\h_em`oU\pOIOgf\hormZ\cs`[clwee]]Zlmcmjtwqp|}txx
}uy|voxy{on{w^tmiztsgs|q vvmw}w}vqoljau}gbjuzZ`x|zlp~ecggW_rt¾Å
xrtsj{|}|~t
vv}quq~sz
f}r}g}{y}i}vfpyxsxtlkzk^pvz}{~rhwwz~|mkz|vtohh~xe]rcYqtTTosibNhuyga^]XppuZec^knaqPZlSDThbZlon|pZ[^mcZcowdg\]`kjcliswqo~{tuz|v~xtryy~oo{qjyz~nm|vkjxtk
o}vjyyoysqljd`t{i_fr{[as}zfpzaed±²wKcZ¥ÛÒs|zol
yy|yxnqs}{jy¥~n}tw
pz~nxh
xr|e|~vcqsizqov}xy
{k\o|r|zqmo
qwvll}~vzehjraZx\ZrnOXrtg`Knwub^\[YvtpXg^gkr`oOXiS?Zg_[qkgzr\[YleYdqy_h]^elhfkiqwol~upzv
qq{
|zyukzlp~u~or|{poxg¡gpgz
|ixrllf_aozn_cpy]dlz`pv_deÕë¾3:>szx
nm
u|
|xnv
vmkt{uey§|m~rtx{y
lrixm||wayrdqinvrutv~sp[k|swz|xypjpw}}smjuuu\iiyqYW~T[rfM[srf\Jryq^\[Z]vvjZb[hfodjNXgR>_f\^vf`uq[YUodZeqy[h^`fmhjkhpx~mjyn{}{v
pnx}{{i{~jt|r{sw~zx~|km~li|~}kuqgic[cgso`bluahpzass^bd n]6[°¶ukwuwpm
tyx}zsgu}|no
}hvynez
¤}m}t}{
|q|~|i~mk{yjzwr_w~rdrhvnu|~pxz|umWm}us
vuzwrlq}{|ymmhltn\hfurR\|O]r]O\spdVKtykXZYZarvb^]agdijfOZiNAbe\awa\unXXSubZeosXj_bhkgmlipw|li}}p~|{wq{orw{j~{nxyvw}x~~zm£
{vykm
y~|~prpcf^Xg_pp`ahqfjotaso[acjv{¿¨¥Ê¹rt~zurspzsutwyyqcv
xhqvfvucj|~|q}rw}v{lyzuh{ilysizv}g`w}kjth|jv|r}w|ubUu{qr{pwwon}|w|zstgpgkqo]hctoLfwM_oVUZtnbQPuycSXX]brt]b\ieedleQ\qIDeb\dr_]xhUWVx^[fniWl^ajgeonipwzniy~s{~y|v}pwsnw~q|xzzuxzun}~{w|huz|wgpn`e\XeZnsaaaqmlhn`siX^cmw©Ú©È³szqw}{utu}vopn
txul`yxdqngum[m}x|wzl
s}r{nuwmhwem|vmkww|`bxzhuvc~|hu}vwr{}nZVq|os
}wksxjs~|y{wzqzrfrdllsZj`vfIooM]cXWVynbPSuwZQVX^as
p]acned^ocU^sGCg`^gi]Z|cRV]v[[glbWk`anfflphpvxtkvwx}w|u}oququ~
{wx|}
x|}}{~rux{wuz^~yt
w{bnm\b[[aVjtda\hopgqaqfW\ck|Êκ¢knonss~{
zytyttzjlvcvvpg^|xdqjjqcXm{rv}zmop{yrrp~ghrcnxqjlrx}|y]dyxiuygwhu~skpyn}]Wo|lr}zmnpvfv~~tzoyr
zwpdq`mkrWk_y]IplNXV_TU|kbOTvsRRTW^cvj^akkfcZobYdqHAi]ag_\V|^OVfqZ[jh]Xha_rfjhqgqsvynu{x~yut
po{xwuz
z|u}~~}|xvyv~}nuzdsp
zucnjY`Z]^ThseaYdrrgrakeWZ_ix¾®{ ·ncuiv}s{
{~wxswnzvejo`usjb^}vxep}gkkZVox£
ppvsl~r
}yuspizajmamvjgkkywzwZf}}xer~n
tfvqhl{umub[mzjryzet}mpgt}v}~pzjyywvodk`l}lmUj`xVLlmPSPhNY}hbOUvlMQTU_hwg^aqig`Wj]]ljJEk[ceWYVzZNWokY]le\Zec^ufleqgsptxp
vx|}vtnsy{{ss
y}v}
z~{w|vvzjv~}m
rq~pflgX]Z\[Teqe_XcsuivpeecW[[hporsefzkvwtu
x
zwtvnjzpahkgtnf^^{my|glwfjdUWsp¦|{vs{qzxlyyu|}uqsmhu]mi`ludggizo{rYgvuhpxvbw
}oln|qfse`jxfpuy|atvikpsyoyxr{e}}}vumbd`l|ljUibrTLklPMOpH^|faNVueKOSXblxf^gske`WdXcr^LLlXdbUTVtWMYweZ_la\[de_vgmbpjtoq~utxx~z}v~
nrt|{tq
zvt|
|~z~vz£¦y
lu}|v{osz
}uojieV][[ZScoe[Yat{jhmh`aX^Ziilohmbi{zkuuupz~wvnzhjyj_enhwgeXavh}xnioff]UXoh¨vz|xtn}mqtx~wtvjtwhio\me^ns_gbjxh{m[mrtjo~zxbw
ytspzrcqh[mudoqzwarpgiwsqkwvsuby|utocbal||kkUibgTLniPHSkFbyfbMTr^JNUZfmx{f_nrjd]VaVooXKTiXg^XNVlTK]z`\_l]][bf`zhlaoovnowuz}wyzyz}qst~zvt
~}ls|
}{v«z
lq{vuon}tjpnedX_ZZZUbkg\Z_ui^ml\aW[\kert}jk^mxwivxso|~~zvrlzhiwg]dshzwcbTcneuvfhiaWVYhd§n~wypn{ewmyzvq~ndwtehi]lb^po[h_luezh]tnrkq{vvcu|ysv~taplXpqanozscqlalynihyxspdsxxsoc`cls}ikTh^_ULudQHVbHcwfbLTqYKMXYilw{eenrgcZX^YxgUJ]dXiYYIWfPIcy[^_m[^]bd^ij`otymonvyr}~vvx}suuyzz}
jt{~~z{~|sq{|~fq{t~}wspl|~mzcppbe^eVZYWdfl`]]t
hXpm[^XZ\l{cqwvnc\ouuivwroyzwnotehte[gufvvy_]Reeis|abi\TX^cd¤hxt
wlmxfvl{ytry}yifwmaga_j`^ukYf]oobze[w|knopxytues{wps}raxcYnn`nozreqd^muhcfwzrlmsq{qpa]dln|eiSgYZUNz`RKZYHcudaJUnUKMZWjms{dlmtcaYZ\bx]TLd^YjTWHYaNHkwY_an\\_bc\
ihbnxzmojvym~wuttrvvx}}~~px}ywy~ssp¡{{yeuzsywluply|ps^poahblT[ZWidnf\\reSrn[ZYW`lvcjukk_[ournuuuk}|wonldipc[krdtvs\VSc_p~}p\ac^SZa\derq
skixknnyyzqvs{z{dfvh^b[ah\_whWb_phawa[|vjjrnxttuiqvtkp|lfwW[ilaop~wseo}[`opb^ip}kjr}povin_ZdklzafSfUXSQx]SPYRHdtbaGVlQIPZVlll|emora\ZXZmqXSQgWWjTUFZ]OIsvY`cncYaaa^jcemzyloivy{k}|y}nqnvz}t}tx
uspvo¢s{{fwon|pgyr{lsvsk^tobgfkS^\Vhbmm[\qdNom]VXUfishcuee^[pwoqvvzl}}wscdkoa\nmcsxkZTVabv{{o\c^cSZ`Zccnp
rifxmdruqzkytuo{v_gsd[^WbdYbueU`amdaq]\~ohisqtquwlm
}rsgo|oqoRZeidoq~trbluUbqjZ^nd{dkt{pqqhl^Xcijx^eSdUWQVoXRWTPHes`bFXkOIXTWnie|ilykbW]V\ueTSXiRZgUTI[ZPNyw[_emiZba_^nbgkyvnoivv~l}{krgs{u~s}
{ss}un¤swxnz`e}qgztymmqwgd|mcggiT`_Ug`mp\^nhMil`UVSogskfxef^Zrvns|ytn{wzykaelm^`ojeqy~gZUW_kvzyn^a]hVY`Xdbkp|vkiuk[upjyiurno|sYkn`Y^VbdXeqcT_biablZ`~kfltuomxwlh|nqfp{lqlaX_gfmqrr^ilSepdUbmaxaotztinji^W`fhu\dUaVTOYgSO\OPIep]cGZjNJ`LYme`xioe`U_U^v\USahO^cUTK]ZQZvv]_fmhXca[^qchjxqsmgvtysz|zntlst
z}{rstwqn~zz|~~}}~~}~~~~~~~}z{|~~}}~~~~~~~~~~~|z|}}~}}~}}}~}~~~~~~|z||}~|}~}|}~~}~~~~~>.1110/o]-0000-F¡¡¡¡¡¡
wegfffh\CDDDDCGdhgggggkonmnnqJ+....+H
}}{{z}~||~}}}~}}~~~~~
.h
S7¤¤¤¤¤¤£r]____aR4555549\`_____egggggj<;|}zzz|}{|~}}}~}}~~~~
|y{z||{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wwx{}|{}}||}}~~~~~
}{wvw{|||}}}}}}~~~~
}|vvx||{|}}}}}~~~~~~~
}wxz{zz|||{}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{z{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{~~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~
rtx|||{||}}~~~~~~}~~~~uxrvy|}|z}|}}~~~~~~~~p|tssvx}~|y}|}}~~~}~~sorx
ty}zxurkeimolffggpsswy}~yz{|}}~~~~}~~wm{sx{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||~~~~}~~~
sno{uv
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\YXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxz}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzoq{xy{|{xw{xuwttvuuvwtb^d_akqfhklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFEEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkiffggghhb]jl]efgeccbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFFHIJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__ac_\_]`]^ZZjwlbnrjbYY_[XWSNMKKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSTPMJMNPROM[krkamtrfQQSPPNNOMJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTtsuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMN]cokXisupSMOPPPONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKKFBFHUbglopomlZLLNMNOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHECFGHMZghgrnnhfd`^^XLJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:;>IZ]Z\elnjommlkihkdSGEEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@:;><;;;=K[imnojomkjlmfQGEDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnppsttsqrvxy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<979;:=HcosmnlklhUC>CFDCCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtstrqtxxy}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::979::78:99=J`ssphT?:;=@A@=;;><=<@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyz{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==?@===?C;==><:Bl}j@:;>=>?@@@??A?@@A@@@=??=<:;==<?@@BBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCDA?=>@A?@;[n@>DE?@AD_d;==;:=>AA??@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJKHVppqssttuyz{||~~~~~~mLPQNOPNNOPPO><<=>??@>@@???BFD><<=@=8::mwH8;:=>A;Hd=<=<8:;@?=<=<<@==<<>;=<=>A@BA@@@BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII`pprrrtuvy{}}|~~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABA@YR=<=ILFEuvN788:;>?WjA;<<::;>>>==79?==>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@CrzJ;\z|wW<=?==>EhtL:=>?==>NSURLC@@?>A=;?B@BCB@BCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGEE?AGGFCFDGHJGC>Hloppqtuvy|||||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCEAGrzkb}^>@C@@=Js{Y:=AEBAGfhlha_OCAA?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{{{}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Ent}~}vMACE@?>Y{]?CEIIIWjjhihfgODGEEEDECA?@>>BFJJGEEGFFJNNKJIGGHKLIGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z|{}}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEhs}|~y
rCDEDCWu~XGHJMMSmwpimoqeKJIHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHHHGFEFFFDFHGEEHHFHGHFQnnpqruvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJG`{w
lAAVtWHLNMTrxxrnoolMGIGFHFHECDDFEDDHHCCCFIKKLLLLLLIJKJJHIIHJHHGHIHGGHFFFHJIIIIH]ooqrtwwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLN[|
Vl
|PLMJ[wzqnmmlKCCBCFFEB@>>@AB@BD?>?DFHDFGIKIJHHHGIIJJIHFJJJJIJIJJJFILLJJKKfoprrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLKJT
uJJG[ghjfiszqC=;:<AA@><998<<<;>;8;?AB@ACCB@AADDBCFHIHHHLMLGIJMMNMJJKKJLMSlpqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJIIe
gEVdjlaelxe796479;<:8567789787588;;;=@;999=<>;<=ACEHJMLLGIGORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIh~eboplhkqmxQ3873568:876565676767:67889:7578979866:<@GFIGIFEFOSRSSROPPRTepqsttvy{{{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@6788=:=ECBe
quvppupjnK488557699776765:9:::;798987669:98878589;A=>>BA?AKLOQPQOOORWkqrttuvy{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B:=q
vxwvxrmmJ8;<9:;9:;::9;:9===>;;<<:>;9;;<;<;9:<8::::999<?<<ABDIJMKIKLWorsusvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<:89989:::;?>H~
ux{xrqjHAAB>@CA@>=>>@???@?@==?B>@A?A?=@@@>?A<><;:;:9;?=;<==AACABCAXpqtttvz{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<<::;==?@BR
x{zzkWLHHHEFHGECA@BECCABCB?@DHECECEDAFDFDEFD@B>=@>=?@>?>?>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD:7:>:<;>???=A@CDFW
~yzwYNSMKKIJJJIEDDGHFDDEFDBHIKGHGFHGEKIKIJKJCECCDBAACBDCCDDCA=;=@hpsttwwyx{||}}~~~}}}~~~~~}~OA>=?DLKABBA98<>;<;>@?A>BBGGIY
zzu]QTOLNKJKHKGDGIIIEFIFFELLMIJGGHIJNMOLLNKGFGGEECFEFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?EGG=<@@87<;;=:>@>?@CFIIP_
yzt^QPNNLJIFJIEKIGKJIJGGGKLNLLHHIJMQNONLOKIGIJHIDIHHFFGGIGCBACTnpuwwyzxyz{||}~~~~}~}~~~~~TDAABGHB?8?@9:<8=>;=A>?ADHJLUq
vvxmTSPMLIGDHKHMLGKOLKJJLMLOPNHIKLOQQPQOOJHJJLJKFGHGFFIFEEBABB\orwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAGKLPVy
dgmYXUQOMLEFGMPOPWUQPOQSRMSTOMSLPSUVRSQPLJMMMKNHGJFEHJEDEEBECcpuyyzzz{z{zz|~}}~}}}}|}~~TFFGGGGHF>@B=?==B@BBGVNFNPPTX{
oacodHUSSRK;;STR`u]UVTVYYRXXRZfPUWZ]RTWQOMRQPPQLLKHHJHEFIIIHIirvyxyyz{{|z{|}|}~}}}}}}~~~SHJIHGGFE??AAEACGEDELXRMTUVXZ|
~asbjY>[[ZUR?@WVY\d`VYbr]]W]ZVEQYZ[Y_TYgRVVXUTVTOOMKLJIILMKOMSotvxyxxzzz{zz|}|~~}~}}}~}~~~~VJJIHGEDDBA?HMIMPKIKPTSSXZZ\\x
g;~}ts[^^]TUSWWV[[uYU}a\X]_WIV]][[_YHYXY[]XXYWRQMPQMMOSQQURassvwwvxxxz{z|}}}~}~}}}~~xy}YNKIIHFBD@A:PQQWXPQOQSTTXXYZ[n
nj]]^[VWUXTSXVcRerXZW_hP`f[[X\gaGOZhg][\]]WROSPPRVVVVYZnrtwvvuxxx{{|}}}~~~}~}|~}r}ot|]SPNMKJEC?@;PPZZ[SSQPRRRUSVTW_ux
~}`UY[VTWTRRMPMLfz[]TYUV]ZLTZUST^ZXWWWzjX[\\^TQQPINOWVX[Zdprvvttvxyy{{||}~~}}}~}}~~~zxwvsu{tk~kry^[VUSROKFCDAM^lVRSNOQOQURSRRUcdv
~zpsZNOQQMOLJKEFIFC?TdURQQNKQTQMOYRMNQSVUMQSRPOMLHCIHRTUZ\lquuusswzz{{|}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YVQLILIaltPQSNQRQR[RSRQRUTas{|}{{
va`PHBEEDDDAEQCEAC>CIGV@HNLG]iPHFNFDEFIGHBDHGIKGDBAD@OQMSdrtvustuz|{{{{||}|{~}}}~~||}}vt{mh|gnqfiedb\XSQPURsWe[OONLQSPUYSUQQTROV_klrv{{xyurnstsyx}lOIBC=<>@A@@?kQK`EFHIEB?GLNGMRUIBE?><=<==?=?ACC@?==B>JNGUnttustvxz|{|||}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QQZ\Y^JJPPNKLQRQTUUWQQWUPX[a]agmmlokg`nrjmlqu{z}{xz||xwxeEBBC>;CCBBDB\]O{NOONKLMOOQLKMWMHG@B<:77599=;;;8:8:?<BH?\stuvuvwy|||}||}}~}|}}}}~}xuvz{zwyxuw{|yxuywcqhipmnmmhf^OP_]ZIHPRQOMPQNQRTVXSSYTOYZ\WY]^^_e_]^qvk^`gkwooljonnlebYHGHHCBGIFFFDMROaWSWQPSSRU[OOQVPMICF?:96587979:365795<C>essvwwyy{}}||{|}~~}{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`VW^ZXMKTTSPQUOLRSTWXTTYRMXYZVXXVXY]WWXhsk]Vatkaa_^da_^YUQNOOMIHJLJIFCQPSZWTTNQSYS\eUOSTRNKIHC?A999897885757859:Gnqtwxz{{|~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOUVXXYSUTLKTVUUUWPSTWTUR]n_RNZ`[WY;DVXT[fJLPSRONMNNNLJFQPUYSTOJOOUST\VRUSROMLIHHF??<:787659967675Wppswyz{|}~}~||}|~}}y}}|~~~}||}}~}|rvqxxrvuqqnppopuvtnjddjppqrpnfedc\]RTZWXUTWTRXXYYYSUOJGOPOOMRJOPOPNNOTLMIPOSTU2=XMI@Q=caQSQPNPQPNNMQNTRPSMIMKORPRRSTQROLMKLLHCBA=::876;B5566:doqtwx{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqnhihpVVTUXUWURWVUZYXWUQSFEAFGGHFJDHJIGEHLHJHFLMPMG/E_R>3?>joaSRQ@GTQPQPQNQOQPLJLLOPNNPQQNPOJLMMKGEECA;=<<:=G6677Dmptvy{{}|}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknaePSTRSTOWVVYYVQQQO@=;=?ABAC@BEDA@GHGHEFHJMLEGCORC8ENS]gTQSAGUPOQQPMMOMKLKLNOOQLOOMHLKIKKLKGFFED<AA>;@E;<89Sprtx{{{}{|{y|z{~~|{uturvvz{xzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLONLQSLTUTWWULLKI<987;>@><=A@B=>EHFCEFIGJJ@FAA@FHEJOHQRb\RPROSOOPLMOMLMMNON[WKMQOGIHCIJLLKFFFE?BC><BG?B?Adpsvzz{{|{zzw{wy~~|{qstprswsxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCD=9779?B>;?B@@>@DJECGGIGIEBB?>=CBAGIDMObeQMONWKLNKLNMMLLONSdNJLRIIIEAHJLMNJGIGBAB@?EFEHDKnovyyy{{z|zwsxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGMMJMPMPOHJD?A=989:?B?<ABAADEGJFDHHGGHCD?B??@A>CECKNRTLJIMTFIIJLJKLIJMMOPRPJGCLGCBJILMONIJIGCCCDHJMLIYrmwyxz{zy|vrpurtxyvxjqnjllnttmtu{stxrompovsnporpopstyjN`gsjt|ygosqiqhdqHKDGHIGJKIJKDFB=>=:9:;@B?=ABCCGFIKJEIIFGGCC;A@B>@@CECIMPHHKGHKDHJLMHJLHIJLKM]RHHDNFACJJMLPMKLJKFGGJNNQNLbmivvwzy{z}rmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoiktgdoFKCFFGEFFGEGBC@><=9::;@C@>ACEEIEIJLFIIGFFCB;ABC>@CDCDGLNHKNHDHEILNMGILGFGIILNKIGENHBFMKMLOMMNMKIHIORRSNRfffrosxv{z|lhjnekqlspfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGIDFFECCBE@DB>?>:;;=:<>CA>ACDFJFIHLHGGGFEC@=DDB>ACCCEGIIGMQJFFGKNOKFHIFEDEIJHKIFHOKCILKOMONOONJJILRUUSOWd``mgproryzgehhdilgqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutwljuumrvqlnlerLHEEHCBABD=BA>A=::=?:>=@B>@ADGJFIFIHFFGDCBAAFFCBBCDEEGGHFLQLIOJJMLIGHEGEDCIIHKJGKRMBNNLONOOMNOKKKOUWVUSX_^\ianjnhrsbdfedhhfnjfmmhkkmriqvtsqmvnoqrswsrstuvvvvwvwwvtwujsunutsqrkkrMGGFHBBADE<A@@C<8:<>9?<?B@@@DFHEHFFHGFFDCECDIECFEBEGEFGGEIMKIQMJKHHIEFHHECIJIKLKPSNDQROPQNOMNPMLMSWVXXUX]Z]d`icjigk_defcgggkggkmkmlprhttursnvoqprtxqssuvuyvvtxuuwxmouorsuqqinyMHGHHBBBFE<?BBD<7;=>:>:@B>??BEFDGDEHEDFCDFEFJEEIGCGHFHGECFKJHNKLKHJLFIIKHEKKLMNORTOHSTRPROQMNQNMPWZVZYVZ]YXa`a`^hec`dehgjhhifhnllnmqpiuuxrrpupppruvpusuwu{~}xvtwvvvxplupmstnprrxNHHHIDBCHE<@EBE=89>>=<<AB<?>AAFCFCDIDDEEFGGGIFGKHDHHGIGFDHKIGKIMKJKLHLKLKJNKONORUVOKUVSPSQRLOQPOTYZY\ZY[]^]`c^\ackb`dghr
hgifjmnponsrjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqvptLIKIKFBEGE<@GCD@:<>@?>?BB<@>BAFCEEEIFFEGFGHFHHIKJFJHHKHFFLIHGJGLLMLLIMKMMMPLPPQUVWOKVUTRSQRLORRQVZZ]^[\^^^``ad]c`ef`ehjdssfjgfkorqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrvnvJKLJLGCEDE<@FDDC;??A@@@CA?B?ACHCFFGIFJFGDIHGIHJLHHJJILJFJKHIKJGKKMMJJMLNNNPKOPRUXVMMTUTRQQPMNTSRW[]^_]]`_`aa`acebdhbdijgvljiglosqpqppryvruutsmmssmqrotutrpswtuuwvuuteqskpqjrunwKLLLMGDCAE<?EEEC=AACBBCDACEAAEGCHHIHGJGCGIGHJFIMHIJMKNLGKIHKKNQKRQMSMKNNOPPOTOWXX[NRPW\ZRWPNTUTTXZ_bb_da^`b^`eaacingchhhnxvlhimosrpqrrrvtsusssnksqmprotvrqquvuswywutucmtkopjqtowLNLLLGEA@D>>DEFC@DBEDDFBCEGCCIFCIJJIIKGDKJGIJIILHJJNLOKILHKLKZfJd\KlSHON_nUks[qpbwcSPavuhucav`Xnqbdvinzf[lt`ljT_wvijghfglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqrqyLNJJJFB?@B?=DEFDCDCEEDFBFFGDEKFFJMLKLLGGMIGJKHKKIKKNLMLLLILML[sbdp^lmUMNfs]ffqlntgpi_aYnnbppbkjjfoqtetno\ougpMJqyvka`keemxlkvlmpsrprqpqrqrrrtrmmsnnopsutqsstuuutwxvutbmukpplrrqzKLIHGED?AB@>CFGCFCFEFEDCHHHDEKHGLNNLMMFJNHJKJILKJJKLMNNMMJMMN[roonpplkMPQlWMibtrpamnu\YlP\nmZqmkomxxtsip]_rkqjUuyxoc^kfbgpojjnoprspqpqqrrqqrrtlmrmnnorutqtrtuutuuzvutenukpolsrryIKGGEEEBBB>@@FHCGDIFEEBFIHHEHLKGMMOLMNGLMILKIJMIKJJJNPONLLNNL\hdu]lqWlNPQmTYk^klvaldsSecNmYl\tpkilxjwuhp]^rkhWbcw|oc`ggaditxknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvHLFIDEECAB=BACFDHGLHECCHKIHFJLLFNLLSRLGLLHNJHHNHJJIHNOMNLJNMJZsppoqqmlOQRnYrkgooqqomt]nXat_nopoqronusttj[^tcwxrjnzhaacfbbimtupsuvsqppqoqt{~}wlkqnlmnprsqttsuutxxyxtukoumtonssvsHKHIBEDEAA>DDBGDHIMIFCFJLJGFKNLFOJKWQKGKJJNJHJLIKJHHKMMMMIKKKSkc[i^_icrrZ_Yjn_eeUk_c[aaQ`lh]j\niid[oedp]Z\k[mqcpsldgccg``jmqpntyruqopqny
vsnkmmonqrttrtuuvyxxsunqunvqqutwrGGFIDEDFA@BFEDGBHJLHFDGKLIEFJOLIPILZPJEHHKMIHJJKKIHIFKKKLGHKKLMMLJKMNT[\TPTLPONOOVQONQNOQJJOPQdqiTYV\[\VY[]X]\\cfaaebcf__fknimtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusGCDGEEAEC@DHDFGCIKLHFCGKLIEGIPKLOKLWLIEEHIJHIKIMJHFGGIGHIEFLIJLOMJP\W^P\[`^MXYS\\b^MXZMXaRKYaZR_d\aX[ddVVX\YZX\VY\]b^daa_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtrxrxsqrurtOBCDLMBDDBEIEGGFKJKHEEIJKFEHHPKMMJMRIGE@HFKIKLJLJHFDIFDFGEFJHCJMLLU_Y`X`a[`TXYT^^Z_RY\P^\YN^\^SZ^c^Z]`c`Y_c[`^[TXWY^]cbcacehekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaRJJMIECBCGHFHGIKJJIDFKKKEFIJNKNKHLNGGE>GGKIKLJKKIGDIDCDEAFJEAKLJO[cY_^a_RTRW_`\]Y^QY\MV_WKQY[PZ_aa]^ca`bbbcceZQYUU\Y]c`__cdbhomnllllu
yu|
}wrrtxyyyy~}yuyvvrnzwvxYQKFDGEBEGHFGHHFGIGHGHKILDDKKNMLKHJJHIF?GGNKKKMKKKIFGCD@DAHIC@JKHP]aZ[d]_TQRX]\\\_ZKW\LR\YIM^PO\_accccb]dcbdcfXQVTQZWZ`_^^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMC@IFDFKJFFFHGGIGFFILJNFDKKMNJLIKJHHFBHHQMLKOMJKIGGED?ECIICCHGET]Y^X_Y_[]UXXP]]QKJV^X^[]UYaRQ__bb``bb`cbaddbXOQPQZR[]]]]^__chgljnnp{{|~{
srw
|x\SKCAHFDGMRHCQJEGHHEFKJMPEFIJKNLLIKKIIGDHKQOMMPLLKKHICDAEDIGCCHFDWUE\T]SV_XOTUNZZMIJT`a[_X^^a]NXa\``_bcb]abW__TPOOOWQ\[[\\^_affeleoow|{{}
zo
~JNFDFFHDIRbPCV^IGGHDFMJPPEIIJKNLKJLKIJGEJNQQNOOMNLMHKADBCDGDCCFGBMHBKKOONLFMFGIJHGLKMOPILOPOSPKOSRUZYWYXXdWOSTPPNMNTRZXXZ]\``decgcklpsryy{z
~{}{
}KIEEHFGDKM]LGGXLGHJHGMLQPHKKKKNMUNOJJKGGKPSSNPONONNGKF`ED_LEgdFN\I^[rmOMUmYLDP`UkWgJ]WU^DLQULLSVQRTXWTXUT\UPfZhhdXRjRVUT[\[`_abab_fhfnkhrz|}~}|zr{z{
~z{LIEGFHEEKOSIJF`SGJOJIOMRPLMLLORUROOIKNGHMQ[YOPPNOOOIJQQI|YYrtYQmHqnoaVPqqsPCksmqspSo_ZnX]V\XUkhU]VcZ`Y[_VVXjtuu^_v^Wa[[f[^`aaa]_agmpl_pwtx~}vxzlv~tx}|~|z~wwNJEHMNBDLLFIKEQULKNIKRXWQNNOMQTNOQOKKNGMOS[ZTQROPPPJHZx]TxehZSURvgtlpbnfjQrOMwmjrpsrqrooo]ezuxqqzq~s}ku}bRh|essorr{|o~xnr_``baZ`_gknkblfglw~}{xwtvzir~ns|~wx{~x|u|||ssNLG`]GAELMGJJGIONMMJNV^YULQSNXZMSSRMKOHQRTYWWPTPPPQKHgxlcxrm[LNVypumubovPeeJfvqmwojfxwiWrQhzmijzz}lxzohoYvvjvup_rf}ilx|o^__baZ]bdgiidgbcdllppstssszqrxblugry{rrvy~suzn|}yxrnNKSuNCBFPPHJKIKPNNOMPZ`ZWKTWPa^RVQYRLPISTUXWWPUPONRJKrouuquqdiaWnLqp^FhyWvTKhy}x`y{sna]mocRgqunmypwlvttrln]t~zkmy|ktl|kpvux^__b^\_ddiggee^abiiijknokqomjpacfcowxompsynqpk{ztromLL[VHGEGRPILMJKPQPPPPW\YUMUYUeXRRY]SLNITTWWYWOSNNNQIRmHiwK`dvwVXlOnl{sajgvULWkh}lmlx_Zpz{^`zscroxqhd}ir|^TLl_vukiu{zm~xk|p\^^b[^addfeeebZccikkrsrvglihdgaakagsrlgmmr}kmhk{tmmkmOHKKHJHHQPLNOLKRRROSRWRVTPWZVVTTTa_PNMJTSTQVVNNLMOPKHQNPULKLSTSSTPVUQQNQQXYRNPUTXXX[[URSW[WXWZOSUWXXR^YW^WUPYRWWWWX^Zgr^[[Y\]_cZ_ccdfdccbZcbgfemnmueegcaf_]g`dlhfgkhpzhggjujhgilPIKLLMKJSQMQQOLVUTPTUXUZUQZ]UUTWUYWOOKMVTQNUSNOMLQPLJRQKQMKLPRUSQRSSIHLNOQRQPQTVRXW\WSRPRTUUSZQNSRXVTYWUZVTRVTTUWXV\Y]`][ZZ\\_c[]bcdfdddaY`acabhhimbad^_c\Zd\ama^fefmsdigjkedcfhPJKLOOLMSPNSQPMXWUTUWWWYUS\`VWVYUXRPPJNWSPNUPNQNLSPMOUSNRNMOQUQUQRTUNKMOQTTRRQVWUYZ[YSURTWVVY[TPTUXUUZVXZUSRXVUW[XY^\UX^\^\[]``][bbcgfedbX_ab^`gdfea^_]]^ZZ_Z_g`^]]bhkagfgfd`bcbOLMLQQLOTOOSQOQ[YWWXZYXYV]jdVXYZWVSSOJNVTPOTPPPMMRRPRXTQQOMPTVOXRTUUONMQTUUTTRTWV[]\ZVVQQVXV[[WQTVVVVYTXXVSSYWVZ^Y\^^U^\^`\[___^ZbbdhgddbXa`b^^fcc`b]\\\\YZ[X[a\_]\_b__bdebd__`\PMNNRQMRROSTQOU\ZZW[[\YZ[dqmhd_[XUUWQLMVSMNROQROLPSRUZUSPPMQXWRWSSSXMOOQTXVUUSUYX[^][[VQNUVU[[WRSWVWXVTY[UTSZXW\^Z^__Ta\`a]`b_\`]c`cghdf`Yc`a__ed_`b[Z\[\ZZYXW\Z\[`^_[^^a`_b\Y`[QNONVQPTQOTTSPW\\\X^\^V[^jqwyc\[UUWPMOVSNQQORTRLRTTY[WUOROSXWTSURRZOPRRV[VWWSVZX\][[]VRMTUU[\VRUVVXYSUZ\USS]XZ]^\``_Va[cb]ad^\bab^cfidf][d`a``ce_b^YZ^[\ZYXYWWZZZa\][]\\Z]`W[[ZPOOOYPUTRQWRTP[^^][`\`U\]hjr}slg[TWWQNRZSRQTRTUTKRWV[YZSOSQVVVTOWRRZRTTTX]WXYSX]X^]YZ]TTNUVW^[XRUUYYYUWZ\VTW^Z]]`]bb]Y_[ea_dd^^cca]efidf]]da`aabd`b^XZ_Z\[XXXWW[Y[`\[[\[XY[^V^Y]QOORZPZTUVVSTT^^`^^b\`U]^bkytl}kZTYTPPS\TUTUTVYWLR[W][]ROUSXWWTPXRSWSVUU[]X[YUZ^X_^Y\YRVQYXY_[ZTUVZYZWXZ\WU[^]^`a_cc\^]]eaafd^^dc`\gdheda_da`a`bb_`^WX^Z\\ZYYWV]Z]^ZY[\[WY\]VXW]SOPVYQ]UVYWWUX__aa`c]_U]^beeuzhWXYSUSV[XWWVVW]XOU]Z^]\TRXSWWUSTXRSVTXWX]^X][V]_X__X\VQXTYZZaZ\VWX[Z[YYZ[YW^_`_cbadd\b\`fadfd^_dba[fchecf`f__aaaa`_^VU]Y[\[Y[YX]Z[[XXY[YZZ]_]TY]UNSYVS\TVWYVV\`abc`c^_V[`da_zuohYZYTWTW[ZZ[YXY`WPU^\``\TTXPUWVTVWRSUWZZ[_^Z_\V__Y]^Y]URXWYY]bZ^WX[\[\[[Z\ZZ__``dbcddbdZaebffe^ab`c]bcidcg_g^aacaa`^_XT[ZZ[[X[XX\[Z[XVYXW\[[`]V]]SOVYVVZUXUXWX]_badad`^YYadb`lfh^\\ZVWXY\\]_[Y[bVUX^]ac\RVYPWWWWWVSUTX\\^``]`\Wa^[^[Z^WUXX[Z_`\_YY\\]^_\[]Y[`a^`dcdeeebXcedhgd^c``ec\eidei_f]cbcaa`__[XYZYZZXYXW[[Z[WXZTY]\Z`\U^bNSWYVWYX[\XWY^`badada]^Yacb_a``^\\\WW[[]]__\Z]cYZX]`cd_RXYPWWXYYWVWV\]^`a`_b^Ya]]^Y\^YXUV[\`^]_[Z^]^^a][[Z\`b_becefefbZdffigb_c^afdYhhbfice^bbca``_]\ZX\YYXXZXWZ[ZYWXUU[]]]``bbxKXW[YV\[\]ZW\]_`bdaba]`Xbcbacab][\[XW\\_]`_][`d]\X[becaR\ZOYXZ[[ZWZY`]`bb`ac_\b]_][^]YXTW]^_`_`\[^^`bc\\X\^`bbcedfdefd\efgifcab[cg_\ihbhied`baca_`_\]\Y\YXWXYXW\ZZWVXOXZ]acefrkJYW\ZZ_\[^[X][^_acbaa]b[bdb`bbb\[[ZWXiq`\`_]\ac_^YYcedaS_ZRYX\]][Z[[c`bbc`bda`c^`\^^^YXU[_^]ab`^[`abfc_]T]``cddfegeffe^efhhgdd`Zeg]aghchhfc`bacb___]][Z[YXXXVZV\[ZVVUMXW\hikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyz{{{{{{{zzzzzzzz{{{{zz{{{{{{{||||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvuvvvvuvvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{zzzzzzzz{{{{{zz{|{{||}|||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||v}}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ¼ÌÓÒÒÒÓÓĽ¾¿¾¾À¢~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}v~~y1333332j{éääääèÊÝæääåäåÓÌÌÌÌÌϪ}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vxxxxxxxwwwwwwwxyyyyyzwopppppprrrrrrrwzyyzzz~||||||}~|}}}}}}|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvuuuyvvvz{x{xwvwzwyyz~|yyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{yyyyyyyyyyyyyz{{{|||||||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwvy}||{y|{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwvz}|z{x|zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z{xwv{}{y{x|yxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzyz}zy{y|xxxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyx{xyzyyxxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyyyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{|||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|||||||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrsuuttssssrrqpoooopqsssrrrrstttsqqqrststttttsstsssttttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqsttssrqqqponnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqrsssssqpqpponnnnnonoppqqqqqppqroonopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrrrsssrrppppppoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpqqqsqrrqpn|oppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqqqpprqornpppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqq}¡pro|nppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqu¡wqw}oqqqqpppppqqqpqpppqpppppppppppppppqqqpqqpppqppqqqqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrrq¨o£~pqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxwwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssssrstr©¤y |rsssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz~|~}|vvwwvuxzxxxxxwxyy´©¤¨¨}{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{|{{¯¦¡µ«¬£~{zzxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}}}}}¥¡² §}}}}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~ ¯ ¢~~~~~~
~~}~~~}}}~~~~~~±¡
|~~~~~~~
|||{|}||~~~~~~~~~~~~«¥¤ ~}|}||}}~²¨¢ ¦¨¨
}||~~
±¦ ¡¤£
}}}
~~
}}~~
~~~~
~~}|}¡
~}}}}{££
~~}~
¡
}~
}}}
~}~~~
~}~
~
~}~
¡
~{z £¢
~}}}}~~|{{¡
~}}~~~~~~}~}}
}|}~~~}|}~|z
}}}~~}|}}{zz
~
~~~~~}~}~~}}}}~}|z{{~~}~~}}~
||}~}}~~}~}~}}~}}}}|{{{zzz{~~~~~~~}~~}|~~~~~~
~}~~}~~~}~~~}}}}{{|zzzzy~~|~~~~}|~~~~~~~~~~~}}}}
~}}}~~~~}}}}}|||{zzzzy~~~~~~~~~}~~}{|~~
~~}}}~~}}}}}}}}}|zzyyy{~~||~}~~~
}}}}}}~~}}}}}}|}}|{yyyyy|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxxyyz}}~
~~}~~
~}}|}~}}}}}}}}}}}}}|{{|z|yyz{}|
~~
~}|||}}||}}}}}}}}}}||{z|yzzzz{~}{||}~
~
~~
~}}||}}|||}||}|}}}|||{z{|zyz{|yx|}~}{{~}}|~||}
~{z|
~~}}}||||||||||||||}|||~~{z{zxz{{|}{~~~~~~}}|}~}~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||}|yz{{xxy{{z|}}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{||||||||||}}|{}|||{|||zzy{|z}
~~
~~~
~~}|~~}}}}~{|}}~
{z{ywz}
~~~}}|||}~}|}}}}}}|~|}|{}||z{z|}}
}~}~~~}||~}|}}|{}|~~~~~}|~}~~~
}|||}~{{}w~vx~}|}|}~~z~~|~~~~~~~~~~~}~~}|~}~}}}{|||{{z}~~|||}||~~|{{}~}~}}|{{}|{{{{~~}||~~~y}~v{vx}|||{}}~}}~}~~~~~|}~}}}{{}}|z||}}}}|||||}|~{~{{{|||}|{|{{||zz}z~~
~{|~~|z~xyvw|||{{}{~~~~~~~}||}}|}}}}{|~~~~~~||}||}|}~{|{||||}|}|}|}|{{{|y{|{{}z}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~~}~|y|~}~}}~~}}~{{}}}|}|}}}}}}|}{}|}}~}~}}~}|{{{|{||{z{{zzz{~}
~zxyyz~~{yzx~s|||{|||~~~~~~~~~~{~|}~~}}}~}}~}}||}}}}|}}}~}}~~|{{{|{}|{z{{yzzyz{~
~~{zy{}}x|zr}{{}||~~}}}~~|~~~}|}}~}}}~~|}}|}}~~}~|}|{|}~||{|}zzzyyyz{~~
~~~z{y}}zzz}q~z{}}}}}zx
~}~~}~}~~~}~}}
}~}~~~}}||~~~}}}}|}||{|}{{{zzzz{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv}
~~~~~}~~~~}~~~|}}|~~~~}|}}{}~}||{||{{{|{||}}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||{|{|~
~~~~~~~~~z{z}}uqz|zqz~}yxtt
~~~~~}~}}}}~~~}}}~}~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}}~~~~~}}|}}~~~~}~~~}~
~~~}{z{z|{z
~~}~~~~}~}}z{|
{{sy{|pwuvwyutz
}}}~}~~}~|}}~~~|z{z|{|~~}~~}}}~}}{{zx|vyz|qtxwvxury
|}}~}~}|~~~~}}z{{|||}|}}~}}~~~~}}}~}}}}}}z{{|v}yxzzruyyvwwsu
~~~}}}~~~~}}|~~
~~{{|||}}}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~}}}~|~~~
~~~
}}}|{||yz{z~y{yx~{|{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst
}~}~}~~|~}~~}~}~~}
~}|}||{yvyyzyvyv~|{{{~}{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtu
~~}}}}~||~~~~}~~~~}~~~~}~~}~~~|}||{|uyyxxxyw{|{{{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~|~}~~~}}}~~~~~}}~~~|~~~~~~~~|}||{|xw{xuywwy|{{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~||}~~}}|~~~~}|~~|}~}~~
~}|{{{|yw{ywxwwx{{{{|
}{zwz|}}||}}}~|}~~}}}|}}~}}||{zz|{{zyzz{zxswuqqsoxwq{
~~}|~~}~~}}|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y|||{zzzzzzxsvupprowvr{
~}~}~~|~|~}~~~|}~~z}~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxzxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyytuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{wwy{|{}||||{}|}}}}|}|~~~~|z|}{}}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z||{zxxy|||}{||}}}||}}~}}}~~}{|||||{zy{{yysrunvrpxquv
~~~}~~}~}~~{}|}{||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|{}|{}~xwvyyz{}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~}}}|}z}{zvzxy{{|}}{|}}}}~|~~~}yy{zzzysrtowqwysw{
~}|z||{w|yyy{z}~}||||}~~}~{{{z{ztpxqytvxtv{~
~||}|x|yzyz|}|{||}}}||{{{zzzupxwyvu|uv|
~
{}~|y|zzz}||}z||}}|z{~~~}}|}}|vrwxxvtvu}
}
{||}zz{}}||z|~}|}}~~~~~|}}~~}||xvvw
~
}}||{||}}~~~}~|||}}~~~~}~~~}}}~}}~~|}
~
~}}||||~}}{|}}}}}~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uy~
}z}~{
}~~~}{}~~}|||}}}}|}}~}}|
hj|{qq|sstt}usqspurstv{}uvy
hzrss|r~}}~~}~|}}}||||}}||~}~}}}
}p{pyv~nypus|vyyrpvxqvtturstvinrotvnulwmzsnzm}rsvsvmnwlpylu}|~}}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoolw}xpqzprtfu~n{ysoy}~{~}~~~~~~~}}~~~
~
quprsoszy~ttu~vnr
ynjrqmsw|ut|~xquwnyuzqvxuzyrioyxpkyszozwvvp~~z~}|~}~}}~~~~~
xyrz{pp
x
xyks~y{krz|mzyyt}vnoot|uwqy}}m~uo
zrr{|upozks|nv~~}}{}{|}}~}~~}~}~|}~~
}w
~~{|{~{|}~}|~}~~~~~~~}}}~|{|~||
}{{|~{||}~~||~}}~~}}|}~~~~||}~{|||{{~
~|{}~{|{~~}||~}~~}~}}~~}}||~~|}|||}|||~z{{|~
{{}}|||~}|||}~|}|~}||}||||}|~}{|}|}|~|||zz||}
{|~}|||~}||}|}{||{||}}{{{}|{~}{|}}|}}~}|zz{{||
zz
~~|~~||}}|}}|~{{{z{|||{{{~{{}{{{~||||}~}{z|z||
|
~~~~~||}}{}}|~zz{y{|}{{{{~||||z{}||||~}|{{{{||
z{
}~}|}}~}{~}|}yzzy{|}zz{{}|}||zz}||}|~~{{{|~}|
}|{
|~~}}|}~}~{~}||yzzyz}}yz{{|{|{{z{}}|}|~~|{{}~}|
~~yz}
~|}~~~~~}}~}~{}{zyzzyz|}yz{{{z|{{{{|}}}|~}|||~|{
~}}{
~|}}}~~~~~}}{|{zyyzyz{|yzzz{{|z{{{|}}}}}}|{}}|
~|~~
}~~~~~{||~}~|~~}}~{~{{zyzzyzz{yzzz{{|z||{|~~}|}||}~
~~~|}~~
~}}~~|~~|~||~}|~}}|||{{zzzzy{yzzyzzz{|y{}{{~}~}~}
~}~~~}}~~~~~
~~||~}|~}{~|}}}~}||}}{{zyzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌÌÌËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<C9;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;>BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÔÓÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937676=;>:=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<:<<98:9:::;<::;9><>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA=366:;<8C<AA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖËËËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9>CE?<;999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNG¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖËËÑÓÓÓÓÓÓÓÓÓÓÓÓÓÎÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×Ø×××ÚÛÚÚÚÚÚÚÚÛÜÛÛÜÙ××××××××ÖÖÖÖÖ×ÚÛÚÚÚÚÚÚÚÚÚÛÜÜ×ÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXdIILN@99:4;@<7=9AC=@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMMF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖËÌmpppppppppppj§ãÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¹´¡¿½½½½½½¼¼¼¼¼½´½æáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃrliNRbLLVM<::77>C?8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKPFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ËÍN&+++++++++++"ôëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¤XRSSSSSSSSSSSNz®ªªªªªªª©©©©¬TSSSSSSSSSSSSKªòëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËwliJN_MRUM><<7;?C>6:7>?;=B@9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ËÍR,11111111111'óééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¦\VWWWWWWWWWWWS}°««««««««ªªªYXXWWWWWWWWWWO«ñêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<<<;>::;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÌÎ\9===========5ðççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©ª¢fabbbbbbbbbbb^
³¯¯¯¯¯¯¯¯¯¯¯±¡cbbbbbbbbbbbb[¯ïééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9::=<;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÌÍÄÂÃÃÃÃÃÃÃÃÃÃÃÂÉÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÎÎÎÎÎÍËÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÑÍÌÌÌÌÌÌÌÌÌËËËËÎÒÒÒÒÒÒÒÒÒÒÒÓÓÑÌÍÍÍÍÍÍÍÍÍÍÍÍÍÔØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<7@A<=8:;898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÍÍÏÐÐÏÏÏÏÏÏÏÐÔÐÐÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÒÓÏÏÐÔÒÏÏÏÓÒÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÖÖÖÖÖÖÕÕÖÖÖÖÕÖÖÖÖÖ×ÖÖ×ØØØØÙÙÙÙÙÙÙÙÙØ×ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?89:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎÒ«ÏÑȧÒÑÇ«ÑÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLB@==<=:<=B>BB@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÒ¶¥¤Ñ¬°Ñ¬²ÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?><7:>9?D>@98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÏμÄÍÏÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>><<96?B?B:648:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÑ¿ ²®ÁÉżÉÅÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8E@?B:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÓ´ª¸¤ÖÎÑ¡ÏÐÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<=<964:98::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯Ê £¿Ê¥§ØªªÔÏÏÏÔ«~£¤³ÃÚ£¿ÕÑÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>9<97659:6:<;7<@@<::=:<?>=<9@<<::9?@==<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÔ¬§¡ÐÇËÈÒÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖ×××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CGDAA8;?<=;<<7558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÓ¶²²¥ªÑÛ¥³ÐÛ£µÕÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF?HHFE@<<>><==<756:96:;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÄ¢«§ §»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸« ÇÕ¢«¤±¤¥¨ ¯§¢©ÐÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKK@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÓÈ´ÖºÕ¾ÖÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUij[L_MJLJULFB<<?FEGKH=667:979:;:<=9>99:8;=>>A>=9<<:=>>;=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÔÈÁÕÓÓ¹ÇÕÓÓ¹ÈÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?ADLL@>775:8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÑÓÔÒÒÒÕÔÓÓÓÖÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ==786977899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9599:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EIKAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDCI;AA;<886586987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFID<AA<;876797799=?A?<:9@?<>B?:8776=?@@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD88867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE><HF89757875898;>>=;89A>=@?A>7596;>AB??@@AB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCDECALH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HQA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELBA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<<DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAD?@;<88996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8:87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;99:86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
¼ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkqtywt|}spxyÈÞÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxu|v}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsnupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9886543956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿½¾¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78473156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;;>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:767>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸¸·······¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPF>8;727967443588797;9:==<::974:98668??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹º¹¹¸··¶µµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269664737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³µµ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶··¶µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶······¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸···¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B@?C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬«««¬¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©©¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶···¸·¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@AA:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¥¥¥¥¦¨¨¨¨¨¥§¨¨§¨¨§¨¨©ª§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸·¶······¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637465738:::::<=::A<6=8378837;@??@@:BEC@BDCA?;;@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥¤¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¥§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§¦¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©«««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤¤£¢¢£¢¡ ¢¡¢£££¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@?BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡¤¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747578;=8::99;=;;89>6789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥£¢¡¡¡¡¢£¥§¦¦§¬«§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¦¦§§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¦¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364689:89788:<;<9;;::67899>?@><=@>@:9@A?=A?>AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§§¥¤¢¡£§¦¥¥£¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB?DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¤¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846799=88;:;?;:;<:9:7768;<;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¦¦¥¤¦§¦¥¥¦¦¥¥£ ¡¡ ¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ xlcdbdQGA=C;KHD:;;<>9::9:737959989<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢£¢£¤¤¦¦¥¤¤£¢¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::78:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££¤¤¤¤¢¡¡¡µ¡¡ ¢¡ ¢¡¢£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;866:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££ ¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¢¤¡¢¢¡¡ «¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86:756::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¢¢¢¡ ¥³¬ ®jv ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>99;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ¡ ¦« ¨D ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9<<>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢ b¦¡£QG ¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8:;<=:<>9?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¦f]£ ®uIL ¡¡¡ ¡¢¡ }xjabb\Q<@<68CVHDB:8;:>;7796=:99647:;<>9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq ¤Rx¢ ¤_VN¡£¥¢¡¢¢¡¡ ¢¡ ¡
wqgjd\\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢ [_£dZL¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[[LF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡]]v¢dYM~¢ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<9798:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡`a`tcUN¢¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y i^[ej_PR¡¡}
£ª¡¢¤¢«±·´¹µ±´¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B@AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡ shaTv\VPW
¡§ ¤£ª©³¶±µ°¨ª¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v} £¤nLOc
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VQQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{ l¥_r
§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974869388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
~¢|nRuZq}|~}|¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¦ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
}wXOLpL`pqw
¢±®©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~£U/0=wwvAE^km¨®²°°µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWMO_^\NUTbQDTM;?9<895875795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
¡¡¢¦gAZH;wykgE08Yls ¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUJTOOJDPK_bXZQ\T_MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ªª©§¢¥¨©«©©¯Jo¡xA{wdaPQ[G`n¡¡¤¤§¤©«®¬¥¤¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdWOYKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®««¬¤¡¢¦©§¨£x`ÀÖ¦C{uOmvSd£¨§ ¢¡®¬«ª§®¨¥¤©©ª©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_VZNRNQOSe\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨§¦¨©§©©¤§§¤¥£¢b½À¯w£eLaxmQt¢¢ ¡¡¡¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOXO^edlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤ ¢¡¢§¡¦®¦¦jº¦Ð¡±¨XL¬Se ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvxb_\UYQUW[c_s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?B?:8:>?C@DA:;>=@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯««¬¨¨«¯©¨ª¨¢ ¡¨ª±²¯«¢¢w~}rÏɱ§¯kUª°bZ¦¥¢¡¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\U\hdocmiib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¡ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£ £ªª§¯··´µ¶³®n͹£tTozsn{¦ª§££¡¤¢§ £ ¡¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxjb[__\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>BE@=9;@A>C<;9?9@@@?BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ «²·»»»¹¹Á¸´µ ydY·À¦©wkqoxxz}¢¥¦«¥¤¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__amhvkqhiibZSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°²´µ·ÁÆÌÏÎÌɾ³¤sfRD~xqngflikqrqqrt|©ÄÄ»¢§ª¬§«©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YSaiaftotitdidb[LK>:9898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÄÇÃÅÇÛããÚ˼¯¤tYZQCizlounkeeYW^X\ciihe`h´ÀÀ¹©¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`b_^kcbnxuwom[bRV\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAA;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅƾÍÑÕʹ§r^QTKD[f^dkea`hYTXRVXY\XZt¶»«´²³©®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklgnvrrvrg^`\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÄ¿ÂÁÇËÈ·ueUPOTH>^k^_eb`]daSVVUSTWr«°ª¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|uklndomiqxoyjia]gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄù¸ÃaIDGKD=[ebahc`[c_WQNOOU´º¬®¥¤£§¤ ¥ª´±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{wnkihvZgsxszgg^d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÄÄÂÄÁOFME;M[_eke_[`YXRMT¢ª¹µ²¬©£¡ª¬§¬´´¿Ã¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyvvefjjh^kpnyxcba`^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÎÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈÇÂÆjXG??G^cbj`ZXWSUv¶¾»¼º¼¬¦©»º¹·¿³µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««¬±££ £¢ £ }qtqocahvhjjunyl^d[V`YLHD6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÌÐÍÇÌÉÂÂÇÂËËÈÇÌÉÎÅÆƽ©rPK0XSUfaSNOp©ÈÈÂÄÆÀ¼¾´±°°Á¾¾ÁÆÀ¾·¶Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®¯µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r}xpg`kjwmifvotc]cUWUSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÃÿ¿¾ÄËÈÊËɼ¼ÈÇÉÍÈÃÈÉÉÅÅÂÃÂÁ¼?Ov~VLo¤ËÔŶ¿¿À¿º»½µ³³À¿¹¿Â¹Á·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyspfegdlebknoo_Y]WVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ãº¸¹¼¾ÁÇÁÆ»¹ÈÈÃÅÄÀÃÁÁÀÄÁ½¼Å§wko©ÈÈÇÑÁ¯½½¸¹»»¾·´±º¿´¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}zxnfaebacddjcgd[ZZ]YQOE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹¾ºº´À¸µ·²®º»·À·¼ÊÏÀº¿À¼»Å½ºÀÄ¿½¾¯se}ÑÅ¿¿É¿°Á¿º·»¾¹µ¸´¸¼µ½¸µ´¯³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qdacchkggjfj^VVTYOSLF8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ¹¿»ÁÖ·¿»ÃµºÇ¶µ¸º¼¸¹¶ª£É¿¿»Á¾¹Æ½Â¿¼Å¸··´¸¶¶¼»¹¶´·ºµ³¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zyqmeegojelhYYOKKKRJLHD9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹º»¿¼ÏÄw§Ì½Ç·¹·¶´·¹³µ±¼ÉÃKzʾ¿¾½¼¿ÈÃÅžǸ¶³µ½¸¸¸¾»º¹¼»º´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knqgqktfcn`\UHKJDJCCG?:;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼»À·ª¤®°¸»²½¾»Ä¶µ¸µ·¿¾Ä¼ÂÄÖ¯tºÈÏÂÀ¸®´´»½·¹±½ÃÊCtÍÿ¾½¼ÇÌÇÇÄǼ´ÀÁÀ½»¼ÀúÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qfljouoxdhc\cQKUHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£°¹½¼²¼¾¼Å¸±¸¹¼ÆÉÊÂÆÉÒqr«ÒÑÌÊĵº¿ÄȾ¾´¿ÀÀyRmËƾÁ¼¿ÃÌÊÇÅÆÁ¹ÂºÅ¿À¿ÂȽÇÇÆżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tpmmtlmo`c_bbNIM?E@?DC;;::;:8;<:9<>::>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´»ÄÐú¾¼Ä¾·¼À¿ÉÏÇÈÊÊÂrs£ËÌËÍÊÆÂÃËÎÁ¼¸½º±pcb»ÈÄÀÀ¿ÄÀÊÉÃÃÃû·´Á¹À½ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢¦¡{z{mmx|`qd\_`_TI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼·»»«Úþ¶¾À¾¾º¦©²¶Ã¿¥zvxÄÇËÈÁÃÀÀÉÊÁ¿»¹±¡}sjÈÅÄ¿ÀÁ¿ËÇÃÀÈÀ½¬«À³»»Á¾ÀÊÎÊĽµ¼»¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsythp^\_]ZRFEDMIAD=H;;59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯··²µ³·¹¼»¶»»Ä¹m¬Î½¶¹À¼«~nhnlrsw|½¿ÆÀ¹À¼¾ÅĽ½¸±°~ÊÂü½¿¿Ãþ¿È½¿¥Ã´¶µ½¾¾ÎÌ̸²¸¸·½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|wmu{qoj\`aZTQAFIGK@ECI<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÀÍ´v³½¶µÂ¥iZ]`MR[Znsw¸¸Âº³»·»½¿º»»®¤~ÀÄþ¼¿»»¸¶Á¶ §¶ª°¾ÂºÒÉÈñ°´´µ¼¹¾ºº»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶¼´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦{zsvwxnra_g][UJ=??GG=GCC9:5;99><<9:<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Âɨx ¯µkefVX_IIMPSlw
¥°·¾¹²µ²»¹¼¶¹¾´§¡p®ÉÄÀ½¿¹³®²½»®¿rz£¥Ã¿½¬ª¯²º·º¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtwrm`db\^OIB?=IDFMD@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·¿Å«|v `TCWVHakVOFI` «¯¶ºµ´²¬¼¹¸µ¸Á½²£¦r¥Ë¿¹ºµ®¥¬³°¦´¡y§°´¥¨©®Áµ³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´¶¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wp|ovsod^hY]^SONB?JCAKJ@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸¸¿µxoNJ?cZANwkMA\°µ³µ²´¯¬»º¸¶¹¿Ævªe§¿¸µ²±¤§§§ªºÅËÓÀ¤ ¤¥¼Ä¬®§°«¯±±±®®¯¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvtmvjl]\kU^\PNHDGMBGNG8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³·¶{XFANZJJXvc@R¢¹³´²°±°¹¸¶»·º½¢²¬¤s«°©««£¨ ÎæááßÕƧymq¡©Á¦¨¨¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±¬ª©®¯°¥¦ª¤¨³®«¨¦¦©«¦ª§«²¬¯³±«©wryiutoeUbdX]ROMI@IRDNC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯±»ªiN@RxqPIIKgYEQ»±¬³¯®¬¶¶²´µ®©¦¦¨ ¨©¡§ÛÏÆÆÌÏÌ¿}lje{¥Æª¢¢¥ ¤¬¥¦¨¤¢££«¬³®©®®®§ª¨¬¡ª¨««¦¢£¦¢ ¥¢¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ª©¤©«¦©¬«¦¡y|vzcxmn\QiUPOGPMMCPR@>;>4::5;:=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢ª¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬¨¼Â«¤¾iERQWII_KS`cb®µª²´®ª«¯°²³¥ ¢ £¤¨®cr´ÆÇÇ«|iinfµ¡¡£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ ¤ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£~}uv}nl{dhVSdNJHGOSNKNH<E@=2@859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶¶º¹º··»®¨ ¡©¡ªÆ¿Ê¡PArxOnKKbeus_Z^p±¯®³µª¦¬¬£¢¢¤¤¡K-HZ³ÂÁ«qx}¢¦£¦¨£¦ªªª®§¨°¥£¤¦§¬¦¡¥¢¯¨®²«¦«ª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ |~wy|eyyabSVaIIKLSUJSQM9>A67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥£ÇÇWSId£\e~or]Pkc[d_]k´°°¸¬¦¡¢¢Rki`¯®£ªª¥¡°££¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««¨¬¬§¡ £±®²±´ª²¯£¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨¢§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvsime\S[ZMRKOOVMTMB7>C78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢«¤zUhruuqbvvXWc`cgYXWe¬®¬¯§¢¡ ¡£|k¢^p£¥§§·µ°¦³¬¡£¯¥¤¦¡©¨®µ³²½¶¾°¬±®©ª´±°¨«¨³µ¸³¸²´¤ ¥ ¬¡¡¢¡ ¥¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xvjwv^m[RaIRVHFVWKCMH=KI8F<77;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©¨®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¢¡ ¤np`cXL[SZMLPXRHMMG¬ª©¥ ¥³ÊÊb
£¡®¼¾¸¬´´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ·»¶«®±¸·¼¯³°µÁ¼·¾³³µ¢¬¢©©²©«¨§¨ª§ ¨ ¨¨¥¥ª¢¢¨ ¤§ £§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vrmiwmhn]X[CWNJGMHCFN=>L>4<:6:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©©ª ±¢·¤°¦£bW^e`WMQG>>?CC?>BQx¨©ª¦ ¡£
ª¥~°ÔÒ±tas{x¥ÀÀ¾µ¹»Àù½»¬®§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¸Â¾¸´»ÆĽü¸´ª³ª³´¯³®ª¯£¬¨·²£°¦¡£°±®°¤¥®£¡ ¡¦¡¤ªª £ ¦¨¡¢¤££¡¤¦¢¤|trklurqhW\QFUHDJPI?EB4FH96<>7;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<<;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ }`^e`QGD=C?E<?96Nª³§¤£¢ ¥¬¦xl¢¡©}p¤Õ{KZptqzx½È¿ÄÈÍÐÈËò·µ¾²¾Å»¾ÌÍÆÌÌÌÒǾ¿À½ÇǸÄÊÉÄÁÇ¿º´º»µ»·°¶²«»²®»·À»º«¸«ª¸»µ¼®®¸£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢
~zrkdioxkfZ\FLMEDTMEBE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<@?AAA>« §®§¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡}sjaWNE>IY|pbB=\®¬¡vrplo¤«®®
f¨|v_b`dihc[RvÀÊÄÄËÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÍÓÐÓÓÌÊÁÆÆÆÊÈÏ¿ÉÑÍÇÆÉƽÄÁ¿¿¿µ¾³¿ÀÃÄÈÅÈį¿¹²¸½ÄÂÁ»¼¼µ®§§®¨ ¢©¥ ¨«©£¤¤ £
yusebgrog_ZZDOMCFQIDCA55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>9;AA;;>786:;>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £kf]TID@?K
¥ ²£yqqnjv¢¶²t}|zz~y{e\PliZ<nÎÏÐÄÍÔÕØÑ×ÍÆÇÉÌÃÅÊÏÊÒ×Ò×ÒÕÖÓÔÈÌÇÌÍÊÓÍÎÓÍÆÉÊËÂÇÌÇÉÉƿó³ÈÅËËÌÏÇÊ¿¾¿½ÁÇÅÌÌÉÉÀÃÀ®°³¨¢ª£¦©¬¤¥¦
{ruvgcgwjeWXRDNG@IQC>B=:22A<E<78<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<969:>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡cSLJDC?BRѽ²¯¦ ¤¡}yqlebhrpr{
upmprm¤e|xwihfd¨¥u?¤ØÏÑÂÏÓÖØÕÕÒËÉÎÐËÆÍÒÊÒÕ×ÙÖØÓÖØÍÒÊÎÑÌÏÑÍÓÐÀÉÈËÄÌÍÌÏÏÆÇȶÀËÀÒÍÌÐÇÊÉÀÄÃÈÏÍÐÑÏÍÊÈ͸·»¨¥«§£ª¥©¨¨}xsvpcaesc]R\JKGAFIJ?;A8>5586;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¥¥ ¢£[I@ADAFPu±¯¦ wida_``_^__]alusponkpnr^_^YWq}|\SqU·cÏÕÒÐÌÐÍÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐ××ØÒØÒ×ÙÔÖÌÏÏÉÍÒÌÏÑÀÇÄÉÇÏÎÒÑÒÈÌÍÀËÍÆÔÏÍÏÈÅËÇÇÉÌËÔÔÑÕÏÒÌÓ¹ű¥¨µ®¨¨«¥²¨°³¬¬
|zqstmacim_VQ`JJCFCSN?<>43:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B<:<74:><?@=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¥®·¨«·×ÔÕÙÙÑÎп¼Ìɶ¾®§ª¨¡£¬gC8=>DXª¨}qecb__a_^a`^a`_`emppmjmost~OORJQo{l~lSrZ¬ÐÕÔÐÉÏÌÒÖÒÑÖÍÏÕÕÑÅÑÓÊÐÔÕÖÎÓÑØ×××ÌÈÎÄÊÏÍÊÍÀÊÁÉÊÎÏÐÌÐÎÎÌÏÐÈÌÑÑËÎËÃÊÈÊÍËÌÒÓÎÔÒÑÐÐʽȹ°®»¹µ«¶°¨¸³¿»±
zvopokadnpaX\[IFFEMYE;@=33<<87865;>@=9<<8<>9<@;@:=8?98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÁ±©¬©¤²|HFB;V¡k^^^adb``aa```^__^\bmrnmqqrrvqTONM\aufz
vYgtÌÒÑÍÆÎÌÍÔËÎÒÌÊÖÖÐÌÐÓËÌÐÒÓÊÎÑÕÒÕÖÊÀÊÂÆÍÃÉÊÃÍÄÆÉËËÏËÎÍÑÎÔÌÇÉÐÍÉÇËÆÇÂÆÊÌÎÑÑÇÐÏÍÍÌÐÅÇÁ¸¹½Ã½ù²²¾°»Ãõª¥¡yqrkmh``qhYXhVMGMIQQB;D?;68:8:;57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±Ç¸ÊÕÖÙÚÛØÌÌÏÈÖÕĵ¯´¨ xloov{ebbb`]^acb`__`aa`_][]gqqopqmimrq]JCMN][`qbH]ogVÆÍÍÆÄÆÍÊÑÇÊÍÍÅÐÒÏÍÌÔÊÇÊÎÏÇÆÎÒËÐÏźĿÆʽÃÇÉÎÅÃÈÀÇÎÈÄÍËÍÐÉÅÅÐÉÆÂÆÉÅ¿ÁÈÍÌÌÏÃÊÌÉÇÌÐÄÅÈ»ÇÃÉÉÂÏÀ½¼¿°ÁÉƹ½ª°²§¥¢£xoudk`^fqa[W`GIHGIMUG?J=64355==48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼¹ÌÌÆÐÕÕØÚÛØÐÉÏÏÑÓÈ·»»¤¶~g¡©
}s_[^]^`^`cdc_]\^_``_[Z\akrpmmhgiiw`FDHGB?MLQTg^N½ÇÄÀ¿ÂÇÉÈÈÉÇ¿ÄËÅÇÊÌÉÄÁÊÉÁÁËÏÄËÈ¿¹Á¼ÆȾÀÆÏËÄÀûÊÇÈ»ÉÆÅÊÁ¾ÂËÆÅľƾ½ÁÄÆÌÆż¿ÊÃÅÇÒÅÁÉÀÊÊÇÈÆÐÃÃÆîÄËÇÃÊ·¿¼º³©¬¤¥¬£¡¦£ |wsufj[anmZ\XRDLGCGDLDFS?54335@=3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¾¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÃ¾²°¶m^z{z
uxurp_Z[\``bcdded`[\^]^]_[YZ\anqmifgkhl~q[MIG8F?CSJTdX¯¿¸¸»¹·ÀÁÁý½¸¼¾¸ÃÉÄÆÁ¼Æ¿·ºÃÈ¿ÁÉ»¶»»Åÿ¼ÂÎÃƾ¾µÁ¾Ä»½Ç¼Ãºµ½ÆÄÂ÷À¶¶¿¿¼ÍĽ¶ºÈ»¿¾ÌÄÂÆÃÆÉÇÉÆÐÆÂÌDzÇÉÃÎÌÀÅ¿¼²·°²§¨¨¹°¥°ª¬zwxkeh`hodV^YJFJFHKAEBFJ@9:658853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µ«·´²¡¦¢·ÅÂÄÈÎÒÊÊÊÇÍÍÎÑÈÐÆÕÔÕ×ÍÊÏÅÉÅÇÁºÅ½¬®§`cwx}{ttc\\]^_`bcbbdeb]\[\^\^]Z[\]grokdciiktmXKCNW9:MFH[T¢³°³²²²²º´»°¶¯³®±ºÁ»ÀÄ»¿º´±º¾À¸Ç¸´¼¶Á½¸½ÆÁûµ¯³µ»¿´Å¸»µ¬¹½¾À½±»¶°·º³Æ½·¯¼¿µ·µÅ½¾ÃÅÀÄÆÆÇÌÅ¿ÅÆ»ÇË¿ÏÉÇÃÅÁ÷ý½¶¹¾Ç¿¬µ»µ·¶ytxggebkn^V^`FKHHJGBDADF?=:566633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐËÍÈÉÈÊÉÊÄÐÍÒÏÍÅÇÁÅÁ¿º¸É·«°[go
zx~
vw|sh]]]]^`_`da^cec_^\[^\]^Z[[]_kolfcfhhjw{_OQYE98FIDJa¤§®ª¨ª§²¬´¯±§¦«²»¹µÂ¹¹¹¯ª´¹»³Áº¯À±½¼»µ»Ç¹Ã·ª¨°²À¶¸½°±¨²³µ»¼«®¶§®¶®¼²°ª¸°®»®»¸»ÀÁ¾ºÃ¿ÆÃÅÀ¼ÆÁÇʸÅÇÅ¿ÇùÄÆ»ÆÉÌ˳¹Â½»³tvwki`bliYWW[ALLMJEAC?FA:::996854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÍÒËÃÅÁÄÏÆÍÁÂÆ¿ÄÄÃÃÊÂÉÊ¿À¼Âº³µµÃ¯ª±[i~{x}
y{wn^]\\]_`__dcbdcb`_]Z[ZZ]ZZZZ\cmmfdddfgjzlOZ[D@;6:=M¤ª¡¦¡©¨«©¯¢¥©¬´µ°¼¸¯¶®§·´³»·³¼¯¸¹µ²»Á²À¯¥©£«±³³¨½ª«¨«¬®µ´¦¨®¡¥°©³§§¨®¦¨·¬±³·ºº»²¼¾¾¾Ä¿µÁÀÇÈ·¾¿Å·Åÿ»¿Ä¾ÄÈÌÊ¿¿ÄÀÀ©stsji\aodWVXPHZSSKFFE>?@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃǹ¹ËÁ˾»É¶½Ã¾ºÊ¸Áõ¶¼¶±¯µ¼®¨«cmz}~xt~|swe_]\\^_`^_ccab`a_]]\ZXY[[XWY\_ejdbcaddhmw]LJVVQQ>Bz¥ ££¥¥¬£¤«±®¶¶¦¯«¦©³«³¹°µµ¶¹²°ºº±¶¥ ¥ ¦±¨¬©¹ª¥§§¨§³ §¦¤¥¬§¤¡¡±¬²µ³³°µ¼¶»ÁÀ²º¾ÃÁ±¹¹Â³À½Àµ¸»½¾¼ÂÇÄÃÄ¿¿Ä xqlbf`ko`UY_HNhOTHFKF<=@=:;;826536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;>97776788666;::;9:;<859<:>>@;ȵ¶½¸ºÁº½¶ ¦º¶«³³»³ÄÏÉËŸ·ÇÀÌ¿¸Ê·»Å¸³Å¸³¿À¬¶¼²¬¦¯´¡£ir
|xusomjiipi_`]\\\^__acb````^\[\\XYXXXVXZ]^cb`cccbefkrWP`gojZ|¢¡£¡¥¡©®¬°´¢¨¨©««¤´¸¬¶¯¬²´®³µ¯°ª¤¢²¤¦ª¸¢¦¦¨ª¥£°©¬¨ª«¬°²¸¯¸¹»°¶¼»º«³²¹³½´·²±µµ¿µ½À½Ã»»½{sl_e^ddXTW^IW]KPGJJGA<??A;?<05635:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»¸ÁÁÁ´¤¤¤¦À²¯¶¬´·ÅÏÈÈÀÆ»»ÃÃϾ¹È¸¸¿·²Â´±»»¬ºº±¢©«§m~
xrmomkb^bff]]^]]]\]_`abccba_\[[ZZYXWWWWWXWZ]abccbbcddolet|oJO
£¢¤ ¢¬«¬° ¤¡¬ª¦¡´¯°±¬¨¯²§º³¦µ ¢£¢£¢ª¶ª¢£¦¦¦£ ¡¬¨£¤¦«²³ªµ°²«²¹µ¯ª¯²²³·³®©®±·±º¶º½¿·³±zvf_f_[YVSZUK[QLJEHKIC=?BB@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ¸½¿¶¾¼¿²¥£¥±Ãµ¶½´¸ÂÌÈƿŶÁÀÇηÀý³¹¹²À¶±¹»²µ¯¤ª xxoqtqhedhdc\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWUW`bcaab``dfqqvy`>L`r¦¡¦©¤®©¡¢¶¨ ¨µ©¦§°¤·°£· £ª¦¡¹¯£¡¤¢ ¡©ª¤¢£ªª°¨´¬ª¦²°¥«³±°°¯¯§¨§²±´°¼´º·®£zwe_aWYXSRTKM^LPLGHMLE=@>=B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾·½§§¢ª»À½À¹®´¸ÁÌÈÅÂýŸÈ̲ÁÂÁ®¼»µ»¼µ¹¹°°±ª¡ª|wqilrtphhedfa\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWVUZbb``a__`bgpotR1,)?x¤¢ ¤¤¤©¤ ¡µ¦ ¢§²¡¥§¥¯¥±®«µ ©¡¢±±¢£ §§¢¢¤¥¥«¤¥°§¥¢«¬¦©®¯¯«¨ªª³¦¦«¯´±®¼¶±°¯{xseb\[]XNLQHRaMVPOJNOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847763321./2556;:8;7876<;:;;A8x»»±µ½°¼±·¬¥¦¬¸»¼Áź²¹µÄÉÉÀÂÆÅǶÆijÁ¿Å«··½¶½º»µ²¬¨ ¤t~vncafihfgifil`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWTTVVRTRT__]^_\]]`ahonI+)Eo¡©¢¡¢¡¡ §©¢¢°© ¤©§¢¬¬ª©¢¡¡¢«¨°¢¡£¥¡¢ ¢¤¥£«¥¢¤ª¤ª¥²©¦¥¦¦µ¦©¨³µ´¹º¯«¬sqpa[WVVRGQOHZ\ORJTKSLEGJC8;;=<9667:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:8698598989;9@9{µ´¬´»²°«±¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÉÌȵɽ±¾Ãɱ¸Áµ¼À¼´µª¬¦r{tiijlgjlmkjle]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURRNPX\Z[\\\]\_bkjJ;/=I\
¤¤¦¤©¤§¤¡£«¢£§®ª³¥¦££¡©©¡ ¡ ££¡£¡¢¨£¢¨« «¯¤®¸¥£¤¢¬ª¨«¯´·²½µ³«®
uti\YYSURFXLQ[XMUOPLQRIOIB=??A?=75799<<977:79:;<=>;7;;:=68:;8976989:6:=99577571141-+/434988::8::748=8?9~³§³¶®¨¨¯®©¨¬·¶¬¼Ê»¶¿¬ÌÆŸÀÎÏdzĻ·»Âȱ¸¿·¼¾»³¶¦© ztvwnmhmmmpggifd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNPPXYYY\[Z[]^cplMBOtlk¦¤¢ª¨¥¢¥©¢§¥§ª¥ ¨ª¥
¡¤¡¢¥¥¨¨¨ °°§±½§£¬´ª®§¯´°¹µÀ±®°«stbWTUNRJGVPRRLLXNKLOSGNKACFDC>B75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8´¬¦±·ª¥¢±«ª§©²°¤¶Æ´¹º³ÊŹºÁËÐʱ¶¸¼½Àñ°±·®´´»³´££vkglnqnqjokdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVTQMNMRWXYXXWZ[[`ijflduva{|£¦£¢¨¤¢¡
££¢¥§¡ ¢¢¦¥§¨§¡ ´²¨³¸¡£¶¬ª¤²²¦µ»´«¬±¢ztn^NQQMODNNNPKFNNJJNNQHMJAHLIHC>958889:;69:68;99><8:>9;?8789:885857688974577820301+)-/12876:999984988A7w¶§¤¶°¤§¤ª¥ ©¦¤³ª¢²Äµµ²³ÆÅ·ºÃÊÌƳ¬º½´¸À¯©°¦®»¯ |n__frpuqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRRRPQTQSUQNMKKSWWVWWWWZ\aeZ`[nxevr
z
£
s}
{ £
~~sz££ ¡£¤¢´¯¬¯ ¦¸¦¥°¡±®±¼ª©¯©xtdVMRPPMCSNLPMBPQHINSNIJJEKMGKK>849888;;69;7:<9::;79?9>@79:<89764445874312485/0102)(,-02764789::65:87A7x·¡£´¨¦¥¨£¦¥¦¦¦²§¦´Á¸¯´°Éĸ¹ÀÎƾ³»Á¬Ä¨¡¦¦·£ ~xfWV_gfighnciigb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTQMMJGNSSSTTSUXZ\hXZXiqkfFPiz
~^;Vn{ry{}xqo~¡ §®©©¨³¢¥«¨´£©¢tn`[NSRWLDTJPLLFNOIELQMKPJINPGJJ=7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· ¢¡¦¦ª §©§£ª°¨§´Â¹°µ°Ç¸³½Ï¿¹¯®µÂ§ªÄª¢±£~sv]PLQUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MNQMKHFHNQQLORTUWY``USdlcF98zv
w~_IPmw}m~wuvxpQ|~yvgw~¤£¨©¥¤°ª¡¤¤¦ª¢ª¡¦§wnf^\HQQSMIUMSILKOIHFJNMMUKQRPGJD=769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.115221/,')+*,4833989:99::::?9w¶¢§¡®¡§¨¥§§¯¬ªµ¼¶¸·³Á»¶§¹È¸¶¨¨µ¶ª²¼§©~xqoXMKMNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDCINOhYNQSSUZf]VaiZZQK}lw{w~y}s~wqmtptz~ªz{hv{prmxx{{wsrxhu
||© ¡ ©¥§¤ ¤sib]]JWPRHKXROJMLRJJJLPILQMRUNFIB=78;99>=:;<98@?::><7==79937785675251472/2.,./200/-+(().12721987:8775:<;7v®£¡´©¯ª¥«°±ª½´²»¸¶º´±·º²ª¬©¨²¯¢wx|vpojYKHIHGEHHPTTTWWSUUUUVWXWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LNQQSV^ba`cVht`rzpszy~ozuynj}|t~z|tfu|lohs|mzq}qmvqhq~pD
wxz}{u}£¡¥yongc[XXUQJSUTOPNPVKNKOOJQOIOPLFD=;79;::?=9<:99??;8;=7<9999266856633611224.,,-..-0-+*''*.1362/876966527995y¦ ¦°¬®«§©°¯±«»¸«º¾¸³¬§°§¬¥©¤¡yvq|muqjmjXKFGEA@CDHLLMQQOQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zYJNOQTX\^`\Yy¼{mp\tqivsvymjwrwhiq}Ingw~mjdly
ksl|nr|imps
{}~{wputyyp|ojoooYVXTRRYORUTRXUMOHMKMOKCINGF@:99;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¤¬¯¢ª¨µ¯®¬³¿«¼Â¿¦¢¤¡¢szuotlqmekkYNDFC@<>>BFFGKKKLORRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_JMNORVZQWUS{X`jp^wjhyu
r~qjrqziiLyf1vrk}}tfeu~
filukp|hqq|n{t}}qqovmwyujyyxlkpheXR[XYY[NPUVYXNIHEJJHGB@GECG=998;9:9<:9;:::@<9:<98>787715234533645031.**+),,++)(+'),,226,,4775478iO8;5m¤¨±§º¯«²°Â±»ÃÇ
zqtzpsqopdpg_TFIC?<;9:?@ADCEGIKOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQUKAHOG^¦ªgroevgl}|}vvorw~qs5q§ ¡¢
vp{|shfbjnrmpuioXupvm{}nrnp{svnbu
ux~}|trqm`\]^\ZYa_RN[ZXWLHIFIH?CABH?CD=;:7=;:;;9:99;:?<88=:8;66650121253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥´©®°®Á²»ÁÅ|n
ul|uxxmxnwdj^IPG>?7448;:;=>@BEHKLLLNPQRTUVWXZXVUTSPLE<5*K[@-gI94/?©®_GLMMPL7CMPQBF|jurrnwgpwy{{sx|~`
©zv~s{\dqtz|wmhjbyo
zoxu
zptzxkni]v}|
}q}vw{|xqtugh`[\^S\g^WPTX[UGJJELG?F@DC?AA=;97<;;=<::99;;=>79>9985654244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¦ « ±¨¯À²»Åºzvk}xs }}p~zhwkRXL@E211276688:<>AEFFGIKMOQRSTUWVVVTSPMF@:2= #c[5311i?GoIFIKMNQKJSZVOG`xrrtkvuxzu¤¬©H¬¯®
©tm|~hghyn
qGmwryvhmk_v}yzuv|xmow~uusm\^^\cdXgf\UPPWYPDLKFOICFCCA?CA=978:::;;:888::?>6;>7585773344236656778;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|}
¬ ¦¸¯³¼³}tp~~}}~¤
x~sx_cWKB60./23124668:=>?BEGHJLNQSTUTTVUSQOGC?80,#[??84.]ps£UFIKLMOW_VkWYZb|y|zz}¤¬»±¦ºÇç¡¥|qw
ihptrw{v|mvuf ª¢zzyogkx~|ulf^Z[^j^ag`ZOLNWRQHPJDNGCJDCADCB<:87=<:<:88778:==8<=68656623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nuofwz¤¡¬¦ª®°¡xw|lpj]BA4.-//..02234778;=?BDHINQRTRSSTRPOHEB<87/9C><<63.lMPHJLKJNV__zdchm §¢¡©§´¡§ÁÂǯx¹|¡
¡
lpuwqm
r ¤´¨¢}kjj|uc^e`[hl]ml_WKHNRPNLLFIPCDNFBCEFC>:96=<:;:987767;:6=:785456344566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYooupv~§ ©ge¤~y}xxgMR>//.,/.-/000212567;?CENORTPPQSQNPIED>;<:DF?><752<?R5HHHLKMNQ^jxo{v¤¤§¦©§¨³ª½ªµÇȶÈÐϾ piª©
¦£xz~¡{wª²|£¡¥µ¯§lss}~sjb^b`bhe`gg\REJKONIILFGMCHMFFCBGEB;85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppt`m|aw}{ªªBD}x|
v^bP560-1/,.0/./..0015>AAMPRSQRSTRNSLEE@<>=FG@A@8662<9;FHGIIMNPYjs«µ±¨¦¨£¤°¨³®®ª¸¯±¼±Ãª¹É˷ÿ·¥¢°³¬¬ª£¥¦ £¦¢ª¨¥
¤¡¡ª ¤©°£¦·º ¢¯¢¡¢¡«®«²´¡¤©yz~ibi]fc_dd_gg_[OCIHSNFHKFJGFFHAKFDFFB;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLhbWhoXyv
ÚÈsV|z
qna@E64<2/110-,+-0.-4?CAMUPRSUUVUM[PGHD<>>FHCDA7;<5C;=FKIFHQNPW~¦¨ ¨¸Á½¥¯Á³©°½°µº³¼²¿´¹¹¢·Ä§µÈǵ½¸´¨£³°±§¯«¥v¤¡¬²´ª®¨¯¶º²º¬¯µ¢±«±µ»¶´´¦§¢¦¨¯¬±¸··§µ¨¤x
x[cfWgcbdaaga[TJDDLTPHIIDIGEA@@KDBMG=867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AFWQJL[YQabWytq}u
{¿»£¼´y{xn]W@DN<6:45AB7640/6CHCQ[OQUWU\WO_UIKKA?>GKFED;>@7D7?BJJEFVSO^¨¬¹¬°¹ÆIJ¸Á»±±¾´µ¿²¼®µs¯²¤¹Ä£¯Æ¸°³±³§¤µ¶ª° ¢¢¥°®¦«§¤¡´»¢¨²ºµ¼¿Ì¿ÅŽ½³Á·º·¾¶º·¸««°¤¯¨¬½¯¼ºÁÁ«¹§©}~mXecYlfkfW\dYVSIGFLPGCHIAHD>?BBL@?MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALQVSYUZvjp~
nzsxb¹¡£{z||}xzueP\dGEL;Qca[^SG?;HPDZcQQYXZgYS`_LSPEA?IJHEEA@C<E6B>HGJLSZT]ª²°¶²Â·´·Åʸ¹¿º¶³¹¹µ¼²¸°Ä_s°¤±ª¼¨¤¨«ª£¢²µ¡ª¨ ®¥§¦¥¤£§±´¨²³½¶Â¾ÓÉÉÓÆÂÅÌÂÊÃÀ½¼¾»»¶´¯¸¶¶Â¹Å½Âǯ¸©¡«¤§µtadd_Yc`jgSXaVRUIEEMJA>GD=KA=B@=F>;H@796379>489:57045/26389374426?8@>GKRTSQPOQQPJA9/,,,*+((,-+/P>(.48}<2Kq9>CKE@IMPRKQ]glkp
skrrsÕÀµ }~x{{y~t}zkepuY^\Pedb`ed]\XW\MdmURmm_n_XgdTYUJDBKKIFHHHGBI:D?HKSTU\Z[´»´º±Áº¶µÇÈ·´¸´·¸±µ³²´µct§o^¢¬ ¢¤ª¥¨¦ ¤¥ª°¸°½¹ÔÑÏ×ÐÊÌÒÌÏÎÊÆ¿¾ÁɼÀ¼ÀÀÄÄÄɾÇͲ£º°´®«·»|n_b^Z`cZddQ\`SQJCAEFE<@F>AHB?C=:E>=J?47535;=468977022/24169775555D3ELM>51/006:477@IOI;-&**(-./,@M+/54mI0Ht?>BD@CDFKODQ[Yh_onkotu´¬¡¡~|s{
{ts{ylmu{hreilifjjh`fiilZms¤¼g\og]ZZTHKNPJKPKSQILAJFJO_^afi`´Ã®µ®¸¹²¯Âij®·¯¯ºª±°¥ª¶«µ§¦M¦¥¡§¬¯©°¨´´ÔÔÔÖÓÌÐÓÕÍÒÏÌÄÁÉнÉÉÊÉÑÆÌÍÂÏÑ·¯Ã¼Ã¹¤µ¹Á¢qe^__ZbYZfZQ]XNPABHEBH;AC>AG??A7;C>@H=46655;:687654/10146278875367C5B8?-0-1349=97,.,1;FK=),(.0007K?-46TW0DwC;B>EBACJM?UYReVsgqoxy¡ª¦}
|p{r}qxulpx~qzmxsmipmcjmpxhw|~˾Áߧmcxnc[a`JPRUNY^O]\NPNTPTT\nmvq¬µª±¤³¨«º¾¯©³¥£·¥ª «³¢°¦«¬¥¨¢¬ÏÒÕÒÎÌÓÔÔÏÔÑÎÇÃÔÑÆÍÒÓÓ×ÌÑÑÄÑÖÅÀÎÇǨ½¶Î|qh`d_XbS_[PQTQOH>@FABE<@A>DC>??:==<<JA45465<888664412/03526768533;=<E=@11+/249>5901022-2DN3)/3.32=N238C}_2AtD:==I>@CFH<UQMNZu
wlwp}~¡¡
y
~{q~zu
ovsls}{w{sxrksripqzyrz¾Ë}±vrvhaj]CZY[VecXcjSX\]`c]cwz}¨££¦¤©®·©¥²¡¡ ¢¡¦±¦j¢~¨°¢¡¡¥¤©ÉÍÏÈÃÌÑÔÒÔÒÎÓÍÆÖÒÌÔØÖÖØÔ×ÕÉÔÚÍÈ××ÑÊ«ÂÂËuqebaZVZT]QKGJJJ@;:;DAD<BC>GB>BB:<9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/--;R017/532FD28>nb5=tM99@I<AD?A;OLFJXpu}hrxr
x~xs{}wznwpmvvx}t
|zmvuo}vux{µ;AÅ¥~|ieWICfcecgjcmw[^fhknhm¢£¤°¢£±¡¤¨¢±
~
y©£~«³¨§¾Ãƹ·ÇÎÒÑÒÐÌÒËÈÔÎÐÕÚ××ØÔÙØÍØÛÎÉÙÚÑÕ¾Ê˵zypg_[TWR\XFGKIEE=:7:@@B:GD?DCACB;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BS39254/7K75<`bA<svV87AH:?C><9QECJTknnpbpqt|~|x
zyqz{
uy
yo|ppzq{qnzuw||u~|¯sX©Â¶pmb=^hrpqpnxvehoruxqy¨ «¡¤«{~lz|®ª§¯¶½©®¾ÇÌÉÉÌËÐÉÃÒÊÔ×Ù×Ø×ÕÛ×ÓÙÛÕÐÚÚÑÖÈÔÊ|~kk]\QUTaJCFJH>A>=7:=?;=G<?AAADA>?:87DB755479.556435532323647553458EBDCEB56<FNSM[nfcnskaV>,4LG865434BF4=W_hLux^8;?F<<B<99D>CGRj^mdbfkvqz~~{|}
wyo{{ty vutu~toou|
zv{·Å¤ÁɹwpeNfczw¢xyv{{vm¤¢ª
z}¡¼¡©¦¦®¨¶¿ÀÁ¹ÈÊÎÎÅÍÉÑÖÕÕÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÛÆ}|jlhbVYWXNLENC;==<8:;=9=@6=??<>==9867CA6455=80665547745613854564557HH=DJE7925;H>;9:7IP][RUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Xea][htzylwvz{~~|z}
z{u}tm|}~s~{~x~ynt}
|~z©Ã¡½£}}r~s¦
{hGq ¤~¥
¥·¢§¡¤¯·ºµ¬ÀÆÊÐÈÇÌÏÓÓÒØÓÕ×À×ØÙÛØÚÚÙÙ×Û¸{|{nlhZb]TQOIDLB<<>99::99;<6?=><=99;;37D?7378>70688357<37804976755546FP5DNI8938AK=;3C@I<:DWN<MTHN?96333>C;[X>5YypZ<<A<=>8689?=CQSRX^UXfmmmiqry{z|{z|{}t
yrysm~~w
¡n¨
z¡|}££ ¤¯
Wr«\¢
¢¢ ¤
²¡¢¨³¹¦½ÂÇÍÈÆÏÍÐÌÏ×ÑÑÕ®ÖÕØÚØÚÚ×ÕÙÙ rwji_`ZUXYC@IC?>>:48:;7:;:3;;?=>7;::1:G=:27=@50677255?65;55858:57735HR7GOK994=EJB>1FCLA98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcbzma~omwxy~z}{{wsp
zuvvt~¦£¥¢§r²¨
¢£ª°n·
ÄȲ¡¥±d¤ÍÈ
~ª¢¢¤¨¡£³µ¦£¼Â¾ÇÅÅÉÈÉÂËÔÍÍÔ©ÒÑÖÕÖØÚÔÒÚÎ
ukga``QKV\BBGC;A=837;<:9=649:<:82?992:I:>67BC32:96264>=4;>6949;57944JQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBeGu||m~xz~z~vv{ln~y|wx|~£´¨¤«³¡§ ¦¤¯¢¸³¡ ¤¯£¥§©®°¤ À£É¸«£¥²
¨¢
s²£¡} ¡±®£¤¸¿´ÄÇĽÃÿÇÎËÉÒ§ÏÌÓÒÐÖØÒÏؼu}z`cWcXRIKOFBCD5>;76:?;<7=42669774=5;5<K<>;<BA75<;5277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=89567=:JFDGM\]YJha;Hzzm
y|x
}px|}|ory}{x¨¼©³½°¥®³´©£¢°µ£¹¥¬¤©¸¦¥£©ª¤°±ª »»Ê¡i¶¸ª°¢«½£^©²||
´ª¢¡ ¦®§¢¤³¸«ÂÈĵº½¼ÆÈÈÂСÆÉÍÍÄ×ÖÐÊÓ£s}l`]VbTQGD><CAA7?874>F<<6<35355454B39:BM:A;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPgHa`bpJ@~r|um}||~pww{«ÃÀ°½Æ¼³´Á½´¬³¶¨²®½«»£¨¹¸«§¦¢¡££ª¯²±ª£¢¦¥£¹¯¨¿¼¬²¹¥£§}¼°y§±ª £¬ ¨§¤¢£°³¦ÀÆ𰻶ÅÄþ̧ÇÃÇüÖÐÌÄÊwve_]b^OLCL@EG?A>B<:4>A==5=6>333242A17@BM>G@CNCA=C<;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\iF_ig[]\{uo~{~q~zz¨´ÆÉÀÂÌÂùȽº°«¹»²¶¹²À®¥À¤«°¼½ª®«££§¬¯µ±© ª¢°´§£ººµÁ»«¨²¤¤¨ªÄäy ¥ ®©¡³¡¤ ¦¤¥§¤¯¥¿Ã®¨·µÉþ¶Î²Ä¾Ã»³ÑÉÈÁµx|p_[_mTNIDLLLJ@A=BD<5AD;:3=8B332262A15IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBh]Me\fTcjyr{wy¡¨º¾ÉÈÊÂÒÉËÂͽÁ³¼¿§ºÀ½¼Ä¸¬Á©³¼¾ª±ª¤¥£¬®´®·µ ®¦¢£´¼©¨¼Á£¶¶¯«°¬ª¬ª§¥¤uy¢¡©¤|¢ ¢¶¦¤¤£¥¦¥£¨¨¢²¬¨»Àį¥³·ÌÀº®Ã³»½Á¹¬ÂÂÁ¿q|d[Z^]LMNKGECHAAADK:4DH:;4<7F.12352A26SHN<JBJQEKCEE:ELB<7EV=<=89?<I?:EUIAWQF7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>lJ_XaZdeXx
~ ®§¤Ã¾ÈÄÈÆÒÍÎÍ˼¸°º½´½Ë»Ä¶¶¼´¿º¼®¯¨¡¨¨¶®®©²·¬¢¨¢«··ª¥¯¾Ä±½¹³§ª´³¥© ±Å§||©¤ ¡¡Z¤f£³¥£««§¦¡¤¨¦µ«©º¼Â´¦´µËÁ¸ªµ¬³»¸®¨¸º¼·pq][WXPGKTNK?AGDDHFF85FM;>7>AK.32025B55PWN<LFKRLOGGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|hV<>@BFBsFiIRfdMF¦¡¨¥¡¯¾®¡Ç¾ÅÅÈÇÎÎÎÒʾ»¶±»»¼¿Ï¶Ä¾·¹·³²µ³¸´¬§«¬¹«©¨°°£®¥¨¤¥´À°«¬´¾Â¹À¹³§¸´·²¯¤°°¥ sÁ}°¤¢¨¡_J¤T°¯¥¯°¥¡¥¦¡´©ª³¼»»«°²ÇÀ¸¦««±±£¡²²´¥srh_]QSMFQQPQ;HJHFGAC=9KT?A:=EM/7534:B44NWN<JKOUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@CAF3>58JKCA=C;5FA:A?>H@5*B52,>c]g:35tde@R7}hX<:BC@=REWStbVFH«¡¨®§ £¥µÉµ©Ç¼ÃÄÉËÉÈÍÍÇ¿»³¯º¸ÀÂ͵ȻÁ¹¶º²¯¯´µ§¤«´µ«ª¦®¬¤¦¥©¬º¿¨«··¾ÁÀ¾·²²Ã°·½¬£®µº¦¥u¾® ¨¦© ¦mu¢¢®²¢«ªª«¯¥¥¡¥ª¢°¦©ªº¶¾³²®¾¹¶ £§¨¥¦©©ficbTMNHIOJUL=LDMIJ@CD<QU<AABDO18=77?B75UXN?HNQXRPQTJQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CC:9C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW<:=..SaLVH~e^HF¬¡»®ªª¢££¤¶Ç½´Á»ÂÂÈÉÅÂÎȾº²¯¹µÀÂʶƲÁ¼µ»¬©±££ªµ»¦ª§¬ª¨¯¨¤«ª½»¨¬½´·¾Ç¼¶µ¸À°½À³ªµ·¬¿¦¢ » ¶¨¤¢ §¤± ¥§©¤¡¢ µ°¤¥²««¥¤ª ©¥¡¡³´º¶¨µ²²£¥ª¡xd`a`LIGHNQIMEFFBQJH@DGAVSDH<AGQ1:B7:BF79]YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:h]FDCpbGD¨¤Ã¬¤¨ª¨¦¬¢«·Å¼¿¸ÁÂÀÈÄ¿ÍƼ¾¹²°¹´¿ÂȶÀ°¼·º·§¤«¬¡¡««Ä¢¥¨¬¦«¯¢ª¨¾¸¦¾°··Ç·´¹¸¿°¾Á·µ²µ°¾¤£¡¢¤¢¢½¤¨¨« ¥¼¢£¡¨ª ¤ ¶¬¦³§°¨ «¢
¡¥¥«±¶²ª¥ª¬ ©if\c_QJHKOLGEDI@=OH@;FIH[RPK=HNU4BF8>HG5Cb[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0--0Mv\4KZ5,MnW<-=)#zbQ5CKQ9oSF<KxfcXN¢£Å« «¢¤¦ª«¶±£ª³¶ÅýÀ¶¿Á¼É¿Êȶ¹µ´±´´·ÂÆ·¿±¸µºµ §¬«¬¥¤Á¥ ª® ¤©°¢¦¨½µ¥±¼·¶¶Ã²³·º¾²ÃÀ·¸®´µµ£¤ ¬¡¨¨ª¢Á¬¨«¥½¡¤ªª«¥ W¥¡ ¹ª§·£³¢¡°¡ ¢£¥®²¬©¢¢¥¤¤cg\ebNJKKNFEAGK>=IA:8JJN]QQI=LV\9FI=DMI8Hc\KCLPSYYVWOZ^IA=WQIK?H?5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+waS6SZkWsHE6=ue\LP 礢³ ±¦©££©«»±©¬µ±ÈÄÁóÂýÇĽÅʽ°±¶®±µ¯¿Åµº±±º¶¬©°ªª¦¡§Á¬±©¢®±ª¤¨½·¦¶»½¯·Ä³´Â¿²Æ³º·«µ¶®«¢¥¢« §ª®®¯»±¥¨©¢£· ¡£®«¤¥ ¢¨µ§§µ£¯°¡¢ ¡¦¬°¥§¢
dh]hfKJLKSAC@IG;;F>99NMU_RSJ>O^^=HPBMLI8Nd]LELRTY[SUO\bHA?ZQAHAKA7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<w]^?[U_gr@8<HweA4¤ §£©± £´©±«¦¢¤²¬©»³°µ´Ç¿Äõ¿Ä¾ÊŶÁɵ¬µ©°¹¬¿Ä´¸¯¶º¦«²¬«¡§»´¨°¬®´²§ªº²§¹´¸²¹Áª·³Ã½´Å§¾®·µ©¨¬¡¥£¡¡¤®·±´¶¨¤£ ¶¢¤¥±±¥¨¤ ¨ ¢¯³¢¦¯¥¬§ ©©«¡§ zek^lkNQNNT=CANC;:I?77QN]_RVQBW`]BJSHWKH:Td]NFON[W[RPQX]GAB[PBG>NC9HGHNP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1\cZ33906p[bH05JqjWDWFyfC;¤¤ ¥¾¥¨®® ©µª·¯«£ª´¶±°¸·°·¸¸Å½Ãǽ¼ÃÂÈÁºÂƺª¶¥»Áø¸ª²¼£®°®³¦¨ªºª ¦°ª ¯´³ªª¶µ¬»¬³²º·¬¹°Âº½¿¦Ãª°·¯©««¦ª ¡ °®³ª°¸©¦ ¶¨¥¢¢¯°³«±¦ª¥¡£´°¦¡©£¢©©§£~
linbnoXQQZTACDU@;:IA7:XPd^QWWEY_^MLSO^LJ>Zd^NIQN[UYPKSWZI?DXPDF>N?=IGGQPB=DFBM?:2D?77547?=95E4+75/251.-.,1>*'+=\p=>1.1e[d@1747gYaF(@8m}i\V;{cC=¨¡©¼ ª¯ª¢°·¨¤³²«¡µ½¯³¹½»½··Á¿ÉùÄÃÁÀ¹Å¾Á¸°¶¨«·²¼¿¿´ª¯²¸«©®©©§»¥³«¢±°³¬ªµ³µ¼°±µ¬°µ²ÀºÅ¶«½¯±·¬ª£±¥¥¨£²©²©©²§¦¤´®§¢¬¬°§²ª°©¢§£¡¨¶©¡ ¡¦¦£ {gmrhqs_GYfVDCMXDZ9HB5>]Qh\OZ]G[_^NMSXcJKC\c`PLMNXWXPJVVWL=EUJEDAM?AFHHQPA;GDFK=87B=68719><65D0+80/05/*,/-*=,+%2+*5K1.'__aV151=`V_8)C3YU\hK5zfL@¥¤¬µ£¬¨¤®µ¨®³¸¦§°·Æ·±·¿Á¶µºÅ¾ÌŹÃÁºÀºÅ¸Áº³´¬ªº·»º¾µ«¯±·¨¬«¬®««½«®±£©±³®®µ±¹¶ª¯²¨¶°´º¼É²ªµ´±´°¯§¡³¨«¤±¢ ¥¯¢¤¢¥§²©¡¦±«©´¥®¯³®£§¬¸¢¡®¡¥££¡{
{lnyov}aF`jZIHZ[={JGE6AcTi[M]aK\][RRSbaLKE`a`QLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`Va.5(C^Q\.+A/JGP[G3cXTLE°¨°©¬¤£®µ¨¶³·£¬³·É»µ»»¿¾µ´·ÃÀÌǼý·¿¿Á¸À½²½®¨ºº¸·Â·¬®±º§®©¤²©¯»¤¬²²¦§¢²´±²±µ°·³©®¬²§¸¯¶´ÃŶ©µµ«°ª§£¶§°£±§©©¢¥¥¤·§¢±³«§°§¯´¬¤ ¬¨ª¹¢¨¤¡¨¥¡v{nqxv|\Lel\KOd]?b{GI8GhWe\L^bMYZWTXUj]OPHa^_PKGQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANIg27'FaLV%-B.=ELQ<3rjLED¤¤¬ª¥¢°±²©·¯µ«´¹È¹®Á¼Ã¸³²µÂÃÎÄÀ¾µ¾ÀÀ»¿½´Ä©ª¹±¶·À¼°¬´´¡§±¯¦§±¥±µ¬ª²°«¨¨µº¬µ²µ«³¬ª«©¬©¹®²±È¿¸¤¹°©¦¨±¥¤£®£¨®£¢¢£¬£ ¡©¦¥¸¤«´´¤ª«©¬®µ®¢£¨ª ¤µ£¡£§¡ w~}|}rts~}\Scn^NZg]FD[G:MnXa[MabNVWVWUYh^QSMc[[TKFOTSNGIVS\N;P^JBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3De;6*HdHJ+:I?3CIS,>k@HI¨©¡¨¯¤¦£³³°³´°° «½Ì»®Â½Ç²´®´ÂÃÑÄſ³¾Âü¿¸½Å¨·¬³¹½À±¬²¢¤§®«¨¥°£ª°ª®ª±®®¬«³»§·°±¨²ª«¥¥£¯º¬ª±Â¹´¬¹©©¨©§±¥©¤¢©¨¢¢¬¥¬¡§¨¡¬¦£¬¶°± ©¢ ª°¬§§©¤¡¨¡¡¥|w
utrwl_Y_nbQsq\K;|F>WuWaYOd\NVVUWQ\b_SPNhYXWKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=398;*35>10485(5/*,.30;),,'%234$,2-860)(2=^K0.IgDF8<B05EKX1@]@NF¬§ ©±§¨°µ¬¸µ©¤«ª½É¼±¿¹Ã¯°³ÄÃÍÎÿÀ³ÀÃĺÁ´ÉĬ¯·®³ºÀ¾´®®¬§©ª±©§¨±¥³ª¯°®²³»¥·³¬¬®¨«£±·«ªº¶¤µµ¤ª§«¬ª ¨¦¦°±£§¥¡¡«ª¡ ¦£¢ª£¬¢¦±¶¬¬¢¥¢©ª®©¡¥¤¤
¥£|zu~ux¢xj]_nfWedN@gLDbzWbXRfUMVVVTO\]aVKOiXVVHJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<.2,&07XZ.0JgAA<<C+:JO^4DBIID®¤¡ª¯©¨µªµ±ª¤«ª©¼ÁÀ¸º´¼µ¦³¯ÄÉËÒ¿Á»¸¿¿ÃºÂºÁÄ®±µ²´¼Á¾³²¯¬§·ª¦¯ª·®§°¯®±ªµª¶¶§´·«¬¤©ª¤´³¨¨¤³´µ¡ª¨«¨«§«¬¨¸µ©ª©©¢¨ª¡ ¤¢¦¢ª¦´®§¥©¢£¤¦§ª¢¤£
£ t~xu{x~pqffpw\atjO]VHmyUdVRcPMVTUQOX[bUIQjUWTGOXUI>IHOQPxMNV=<KD?@A<@CUC9AK=5;E23;:7*4:=+-341*8**+*,)*(/*&)%3;,$2)2/22%/3Rc02?f=NX?C,?LT_/Ik7RF;¯ ¤ª¬©£®²´¯©¤¯©¨»¿¼Á²°¹¢¶¯ÈÇÈÐÀ¿½º¼Ã¾»Ä¿¿¯²³²µ½¼Á²²´«´©¥µ©¥³²¸®¡¬´±¯±¹«¹®ª®·«ªª« £¡¶©¡®² ´ª¨§ª¢ª¡¡¬¨½®«®¡§§¬°¢¢ ¨§§©°¨¢«¢¡¡¢¢§©¥}
¤¡xt|twy{ut{k¤vi^ekug|RVo^KxsTdSQ_MMSZgNMWYeYGSjRR?BNQaQ:IHLSIqQLS;<I?;<=;@@W<<>H73CB15:93-5::)-31--6)(+-,52#2)',%.;.&1.0-14%,0Mh:38_=ad?F1CP[[+HP;YC3± £¥ª££¢¬¦³²±¨¤°§ª¸¾Á½±©ºª§®°ÉÆÈÐþ¿½¹¿À½É¼Á¸±°µ²º¼¹¿³´¼¬¹¬£´¦¦«±µ·±¥¦¹´¬³¼¯¼¥µ«©¯¤¤¬ª¨ª²£³¨«§©¤¨¢©§©½ª´°®©¤ ®³¢¤¥¤¥¨ª¥©¡ ¤¨©
~
¢qzy}{gv|zuqr~jy
d_gcr
{mhy]^UAW{mTbPRYKLNpt]IZ[hZFVfPC>JODCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KI1%90%,,09/,,+6'17#-/GjI14X=fbAJ7GS`U*=<F\@*°¨¤¡¡«¤¶±±¤©°¦¹Á½·±¤¹¬¨¨¯ÃÉÈÌ·½¿µ¸ÁºÈ¶Âµ´²µ²½¹º½¶®¹¶¿¬¢³¦ªª®´¶³¨¹»¨°¾²º ®´¶©«°£¥©©£¤°¦¯ ª©§¡©£¨ ¼§®°®¡ª¢¤®¦¡¢£ª¢££ ¡¥¬{}¤}yk}vxxbzzqoqtxjukgcgansmbjo`o@\ykV^NQRKIMTYVM\^mWEY`P^OHMDF;7HEKO<rhJK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*L>*49&'.34.0+/4&,:$40AhZ13S=e_DL6KVdN)=3R^>#¬§¢ §£·¯¢¯¯¨¬¸Ã»´® ¹¯«¨³ºÇÊÇ¿¸Á½¯´¿·Ä¶Ã²¯º±²À¶»½·ª¹¸¾ª¤´¦¨©¯¸¯§¸¼£¾´´ ¸µ§¦§°³¥¦¨ ¥¬§¨ ª¯§ ¦¢¨°¸¤±¯ «¡¬¤¦§¨£©¦¨¡ª}~||¡z }
|sp}qss_xwinqqpksdzlgecaf`[rjrMMiXZMQLKHPSPGL[`oTFYZRhOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZgH*?0]\5(¥¬¡£ ¶«°£´³©©¹Å·³®¡¸¬¯µÅÇÀ·¿Á¹°µ½·¿»¾°¬¾°³¿²¼Â¸ª»º¸§§´§§ª¯«²¯¤»µ¤«ºµ¯±¹¯©¥§¯±¡¤ ¤£ ¯¦¡¢¨¯¡ ¡¤¤¡·°¡¦±««£®ª¥¨¤¥©¤¢©¢z~y{
~z{prwnos^wvdlllkj
nfrijeh]ds`[kviZJ^[XOOKHHSVG39^_lPEYVYfMIIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<"8R=*113>D5,-'42*;+139cm74GAf[HTDT]hD.<2dW,1¡¡ª£¡¢¡¶ª »·¥¬½Å´°¯£µ¯¬¬¯´Ãü³¾º¶°³¹¸º·º¯À³³¸¯¿À·¬½ºµ¥¢²©§©±©«°¿´¤§´µ¨²¼©¨¥©¯«¢§£¥ ²¤¤©©¢¤ ¤¸©¥§®§¥¡¨ ©¢¡¡¡ª ¤¨¤z{}{
{w~|ltrlksawthhjhgphhidfii`jcjh[f{b`StT\[RLJGIPT@!*h_iMDWU^`LJHEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,?0-N?.+-7,1195,&.5-80576`tA3CDg[KWGU`hB379gP'2¢¤£§£³¬§ªº¶§¬ÃÁ¸±¬£¶®§¯·¿¿¼²Á¶°®²¶¶¸¶¶ª½³®²°¼¾·¯»»±¥µ©¥¤³¦¨Àª§¥¯³ª¬µ»©©¬°¥©¦¤¥¬¢¤©¡¡§µ¦°ª® ¡ ¦ ¢ ¥¬¡© y
v~{s~~fyojjkftskbgddvceffejickr[_Y]lcaNiXZ`VJGIKMSX>9_lhHCVT\[IJGFA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=+*,0B*JK./*+3722(57$+7.72685]yN2>HiZLZJVbf@:3BhH%5£ ¬¡ ¤²±¢²½¶¡±Å¼º²±£·¬ª©¸¼ººÀ±®®®¶¯³¸³©«¹±¯®³µºµ°¸¼«¦´©¯¢¨¡¿°£®±¯·®µ¯¢¦¨¥§¥¤¢¨¬¯¦º¨®¢¡¤¤¨ª§ª§{s
}
ofymgkifprk\gcctbfgjnlgjjhn]llrp`TcicfZIFLMOXQQUaeUAWSYTFIFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9A1-+.3<;K60.+,-24;6#3*)6.55465Z|]19Kj[M[KXdd@A1JfC&4¡¯¡©±¯¸¿µ ´Â»¾º±¦·¯§¤¶··¶¬»®¬ª«¶ª³·®¦²µ±®©°µµ°³µ¹¦¨µ§¨ §«§½¬£®°µµ ±°¨¡£«§¦£©¢¤¤ª«©» §¤ ¡k¢p£u©§¢ymiwql~
q_dag
ktw~gguheW\hsnMPicgr
h_efnmj]`aeNKD9GTh^JHQPUULHSapteF[QUPFHEC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=A@@=28@E=1,,08=G701.*.*/568,#1'214:176Xl16Ok[N\K[fb>G1Qd=*.¤° ª¬ª£½Å¯©·Â·½¼¦·°¥ª¢¶³²²°¹¬©¦¬´¥¯´£©·µµ¨§«¶²´²¡¨²©¡£¤¥«¹¥¥¯³·¯¥ª®ª¬¤¡ ¦¦ ¥¤§¦§©¤¶°¤¢¢£¡ ¥¥ªsx
¡vif~sx o~}¡ }sulmieczlraS
mbliqXiqpY^i[ll[rnzr
fZ_GN?G_NFRVVQQRWUg]MVIRROFHG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82*/1<I9/01.*.(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Wa7/(§«ª©§ª¿Ã¯±º¼¶À¾ª¥·°¨¬¥²´®®³¶ª¨¤°¥´²®µ¶´¦§§²°¬²§© °§£¢¡¬³£¥¥µ½¦§«ª¬¨¤¡ ¦£¥¢£¤¨¢£¥¦¡·¤¤ £¯©¡
±£¬yÔ¨ÁÆyx±¥·eÀ¿y
z}Êr»Åzrµ§º{m±«°yhlX±®nei¼¼ngznrØ~Skc¶²~rs¡ªWOWbOVNFU[XQQS]W[QA]DQNEHI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>:B<?A8:J>52*22BE/.32.+/(-/186- /416A1=9Ww21Tk\O[M^g\>L1[]41!§§ª¥¬±¨°Â½²µÀµ¶¾Áª¦³¬¬¨¦®³©®µ³¦§¥´¥§¸³±µ«¦¤§±°¦ª¦£¯¢ «¢³º£«©¢®¥¡¡§§¦§¦¡¦¢¡±££
¯kjª~fdp¦p®¡¤~x»}l¡v±_j´[¥eag{gkyk©e¾qg¦u±j{±xtcnm§n[¡EhfEu`~g|¤§Z`«hxyj§7J¯\XSld[KOX_\WV;NOWW/ITSJDFF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=03.33E3..53/+/(.0.:5/'$203B/=;Uv2-Vj\OYL_gY:M5_X30¢§¥£¤ª±·¬µ½¾°¶Ä²·ºÁ¦¨°ª®¨¨¯®£°º¯£¤²£©¸§²²°£¥¡©¬®«¯¦¦¢¡¯¡«¥¡³³¢¬£¬ ¡¨£¡¦¤¢ ª§¦¡ ¡
µµx
©µv³·~©k¦{w«gk±\«ztrx °vwqlll|N¤XHbb~ch¦`yruS^Q©mcq}b.Q¡o[Skh`LJ[dX\ZB>²{XXA#MhFCEA@A19>88:84;99<9:A:E::;6:CB8=?KNG:5:@FB@AD<FD;0201;F,0.840,.(/3,>831/2-D1<<S}n3+Xj\OXM_gX7J8aU50 ³¦¦¡¯©¨³¬©»¶Â°»Á¸·¿©¬¥¬±© ®»ª §³¬£«´£¦²²§£¢¦ª±§¯§¤®¬ ¤¨µ¯¢ªª¨ª ¥§¢¢¤¢¢©¦¢¡Õ¹p°Á~Å|Ö»|¥¤{¤¥z¬yV¯z~k¹[ºw~¦{zªxz±nt¼
oP¯§ÅQ zc`ªbsrm`Sµ´È
|c¤3Bv]PjicP@XhZdaJHMqP\QOYfZCE?E?0=<59;74<;8=:<C:F:;>6:@C;6@OLH<9;DHCBCD<EF81211DC./0483+-).323971#%5*>3==Qwj6*Yi[K]O_fT7H:aP71%¢²¨¨¦´ª¥´©¤¼·Á°¹¿°µ´º²´§°¯¢¯²¥µ§§¸¢¯±³´° ¤¦©°¨³¨£ª ©§°©£¢¨ ¥ ¡ ¡ ¡¡§¡¦ §¡²nhµq«n¦r´sr¶{¤¢~¡¦±wÒÒv\®{
¤oª¦k
}}{±qw³etogQÈZÂ\ yb_¬`usb^YÊo¿uMKµSUÆdTQjceXAPk`lhPVGJ9=URZWXID?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>HI91746A>/.24252-).26,742&60;5:=Pqh9'Wi\BOT_eP5G=`L620¢¥±£«¼¦´¦§µº¼±º¾¶µ³¹¸²¤´² °±¢«¯£¦¸¤±°´·© ¥¡©¤±§¬©£§¡¦¥ª°¦¢ ¦£¥¥¦ ¢¡¡¥¢
¬{w¨v£©o§¡¢®³\r³R®}£rØ~x~v¯v´aemZ°XKuyf`¬^uwhk]¯wxl5yÈ®²_BTo^g`EPl`pmVVM.feiSYP;BE@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK96<46:>/04333.2..18*.32%!03767=Pke>&Vg\@>V_cN6GB_H:99 ¹°´Â®¨³¨©²º·³·¾¸·±´º´¤·²³¬¨«§µ«¨°±ª³£© §¡µ¦¥©¢¤ ¡¤¦¯¦¡ª ¢¡§¤¥¨¤¬¡¡¢ ¦©}}¥x¡ªp§¡£«}yo±Z¨ztÙwt¨¤{z²^d ~m]«[Zhgªcq|ks]«Z koeOJC¡\[Lt]bgN[a_qs_KW7JXGE=HGAM35A8.;>05A78@<6=<F?:<6?=B7.HVJEAH6KIN@IK@EN::@5.:>102144+*05/7,&21($$6671<PeeA&Uf[?2U_bL7FH_C2?8¢Á«´Â®«©¥´°·°µ¾¹¸±°µº¨º³¯¤¤¦¦©¯¨®¨´«©®¡ ¦¤£¹¡¢« ¡¨°°§¨¦ £§ª¦¨§ ¢¤¡¡¡ ¡ª®mr´s©u§s´xs³¤£¤w¸p{¢jk¶Z¡
ei ¢§nr´t~²j
ju³af¢ok]`M¡|Rs£kx~oq\¯V<wfTon.\§OcSkebmYc]ap{cT[R>=nq3CB@?L:!7@6.;@37C58??3;<CDBJFMIF62JTKEBI6IJP?HNCFP=<E50;;010/75,+,426/#00,,289/9N`eD'UdY>/U^aL5FL^81C8¦¼¡²À¯««§·©·®µ¿´º¯®·¶ªÀµ¨©¡¥£¡©©§´¢²§© §¤«¸£¬£¢ ª¶°¨¬©¥¤¬¢ª±£¦«±¡£¢¡©ªÔ»s°ÃÃ~Õ¸x§z¤¶u~wv²`ºyÀ}v¸cµ©}«©q{t¼§ ia¦¯¡~uª}¾os¼t²txnqn¤t½^w}Zay¼kZV\jy^jafgcmwoY\ZC@@t@CG+4G"';?10<?7:B99=C4<@NZ^```__ZPPRKEFJ4HLR@JNEFOB=E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7A9§¢½¡²Ã°ªª«±¦·¯¶Ã¯¸°¸®À°«£¢£¡¨£©²¤´¥¬¤ª¦¬¸¡¤¢¯¹²¬¤¨§¤£¬¨«¨£´£¥§¡¢£¯©
¶·xµwmknsoy
tÁ»½{±¨ps¹}||¤»¹½ty´£twvt°ufjµtrqx¶^z}hynzc¬pu
X[§jEeZTf`c^cQggpluCNQMD:[M?J3;/ 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7LT_G'SbW8*O^]=+:VU'>;<§¡¢À¥µÃ´«ª¨¬ª©¹®°Å³²µ¦³·«©¡¡¤ ª£¬ª¥µ§¦ £«¤½¦ ©¡¡§¡±µ·®¤¤¢¦¥ª§¤¥¡¨¥§¤ª¡¤¯¨¥¡j}i¥wr}tyd{½¾ÀºoraskZ_ack`dnwcle^`bpir}gkrtx}b[wthP]m}{kXkzsJJopNtLEX]gaL[Wgc_O[mtiqRQDEM;GI<M?2,2A?8/5?C<9;@;=C>RVVWYZ[[\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7JR_I'S_V4)P_L(2=[O'?2>© ¨¢Â£µ»¶£¬¥®§§´±¬È«®²ª³¢½°±¥¢§£«¦®£¤´¨¤ ¥§¾§¨¤¤©¨°³¿§§¢©¨£ª ££§¬£ ¬£±§ °¤ §¡¡¤¡gm}qw¶«¡ z¥
mk}}uqxyvu|jstuew}wkozm_d]phMYZfj`WZoxmmfUOFR9OYMRO(+:KB635=@A9:C><ENSSTVWXZZ\\`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J&R^S10T^:+=8\J,<-@³ ³¢À¡¤²²· ©¥²§¥¯´ªÇª«¯¥³¤À§³ £¤£ª¦¬¢¢¶«©¤À«£¡¢§¨§³Ä°««¨ª«¡¢¤¯§¢¦¨®§ ¯ ¡¥¡ ®|«©
z£g¡³¯
v{}wyzofyjuysis{vjudzf`jecdfkYl{oij]SLPD^TE@?>,4@F;45;>A;<?>>HNNOPSUVVXZ[_bca_^^]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMMD/T\Q05N[17E3[G5<,@´ ¹°¿¬¬¯²± ª§²¬¢¬²¯Ä¯©ª¢±¼¢³¦¢¡§¥©¥¤¥²´¯¥¾ «¢¡¨«¬£´È´ ª¤ª¦¨£ª ª¯ª¦¤¬£¯ ¡¤®£§¢§e|e~cymhk{¥«je}geeih{¢lh£wkj¢skmzzXf^^mv\hswvnxxsnytv|jY^ltd]sik|pkc_RNWIdXAJ4>F7?FD71<=?AD;;DGHHILNPRRUW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AJ[J/7ZO6)EY/DO2YC;?.=¦ º¼º¯¬´±ª¥¨®°¦¬°»°¨¦£°«£¡¦ª£¥§©²®£¢¯¥µ¹¥¢ ¥|¦®£¨´Å¸¥¢§¯¢£¢¨¨¡¡ª°¬¬¥«¡ª§¨ ¬ ¥¯£¨¢©}½r´rhx¹Ä¸q££z¦r«|ËÀÀ»q£|À½ÁÁ||ÃÀ}l¥²ooÊzwuyyqzpw
ymxcg`xd`eb^sglddYLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNQSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>I[L*#BP.#F[3PY/UAB;/8£¹Ãµ°°Áª¨£¯©°®¥²³®©¤¥¥¯ª«¢ª¦¡«¢¤¨£¤´¤¢¥ª¶³§¡¤¡ §¥¬®ÀÀ±¡©¯©¡¢£©£ ¡¯«®¨¤¤¨¡¦¥¬¨£¨¬©§ª£¡~Îxz¤y_®^¨£¡|§s«¯^cª{¨
t³c« ³j¯u}·bZ£Ínv{Ú{p}v}e{vvk|n}
~m`rmph`_ye\qgidg`RTSW]KOD5AHDD8>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-J0';\;L-!P@F4.1ÂÀ¿µ´°¸£ª¨´«¥²««ª¢«¦®ª¦¥¢¯ ¨§¢¥ °«¦®«°ª¨«¤¥§£®¦¬±¨¿Ç³¨©±®¡©ª ®°©¬«©¨¥¢«¬²¤¡ª©¢¥¤®¥ q
u
¨q±}r¬¢¥v«}s¬v{|~ª¡}«{ {WÅ{pÁ}lupmevdnawnronfpuuqagmf_ohingdWT]aZRSC9II@D<>=@FECEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1' '45-&7=WJ-<(=1)3W@F!G:C1.+°ÓÆƲ³ ¢¢¢¢¬®¶®¨±¥¨©¦««¦¡£¢¥«¡¥¨¨¢°¬¨§®«¨¦§¢¡ §£°¥µ«ºÍ±¦®«¢®¬ ©³««««¥£¬®±¡§«¥¤©§§¯ ¢¢¤j¤uz©tz²p¦q ¤`aR¬
®v¨
{
zf£¤£}©~®_|©V£z£{îÄr¯³³¹qb©¯Âthnqozxyplfferpf}jc]W`jXYUMMQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ('"+-"$.!3-&@DWH,G+55*2PKL# A9D4,'ÃÉÖÔ¿¡«§ ®¢¯´°®¨¬¢§¥¨ª«©¤¦ ¤¥§§£«¢¬ £¯¡«¤´®® §¦¢¢¨ ¦±¦¦©²·È²µª«©¢¥³¡§¬¥°«££ª¡²¡©²°¡¨§¬³¡¡¥{©lu«y|°o¥ Ò¸´·É²_`©¥ zxªÉt¤¨©ÆÆyg¡¥t}¯]o´b°uK£m§Gd|qq{u~|n\fjsqfk_aYdn\_YIMMKEDAB>A<B?I;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75685/)(%&%$&),4ENPPMFKJVF*L0/=-5OTQ;<F2,$§¤ÀƸ©²¬¬¥¢²¸«ª¡¥§¤©«ª¦¦¦ª£®«¥ ¬©¥§µ¢©ªµ±¬¥ ¥¬§£¡ª§®¢¥§ª°µÃ±³ª¬¨¥¡£®¥¡¦¦±®©§¬£¶¬ ±¸®¦°±°¢¦¡Nxz£}¤
¦¸{|y¹Ìƶx¡~v¥¤©°
¬}c¦m¤p
|r¬`£rq`¼}RUt£{~v{sq]mnxrjo[d`iocd]KLQTAIHFI:9K?B108866877-*5==?BDGILNPTVYYZ[\__^]__\ZZZYUSOH@882.,*.+*''?QTVWWWYXXWUOUF<E3:P[T6?H,- ©«¤«¸ª® ¬³²¥ ¥®ª§¦§£¨¡³®¢©¦² ©¤£µ¢¢¢©´¸£¡¢¡±§¦¡¢°®¦©£¶³Å±©¬©§¢¤¥¦¥«±¢¯¥¦¯¤»¡¶µ¬³°¶¯°¤®¢
ѵ÷y
¦y¡w ¥qª
µnri¤}s¯¦£¦nq²]¥tzl{|m©a¢qqbs²¸hw¦}z}ynjyizsou^eeonfh`J[XX<HG@U4@F><*)63.013)&4:;<=>@CEIKNPRTVWWY]__^^`_][Z[XURRQF:223//++(@QRTUTSTVWWXXWUUUUQOQ[U%!2AH$)%s¾¾¼¹´§¤´¡¡¢§¦®ª«¦£¥¡ ¶§£¨§°£«£¤£ª³³¤¤¨®§¤¨¶£«¤¶¬Ä°©«¨¡¢ ¦¢§¦¨¨¯£¦¬¦½¬¼¯¬¡®±·©°¤§¯¡¦y¨}|°w¤¥m²p¡|¡¨¬
®
ª ¢{~«ªw z¯^¤}¦§d|rj¯]¤kp]`[ m¦||knctnz`hfqoihgCYa[=KT3U8BBC8$$3+''3, /6674359@CFIKMNQRSSVZ]_a`aaa]][ZWSPONI7042.*,ATVVVTTUTUUTTUTSTVWWXVUUQHFIJ#((½¨Å¶À³¬ ·¥£¤¢ °¯ª¥ ¹¡£« ¯©®¡«¨¤¯¬¦¥¬¬¡¡¥¡¥¯¢©§·ªÁ¯¤©£¦¦¥¦ª¬¤¥©¨¾¤Áª©¡ ª°·©«¤²¦¨u¯~
~ºe°e}¡§¬°§¤¡¢
¡]lk³`{{±mgn±[~µ\¤kÈ¢d{»WvµY²|R®z¬W¡m¨|z ducxu}bjgqngfePUd[AV`>I(>9=4!",%2. *1/045799<ACFHJLNOQRTWZ^```ab^_\[XUPNJFC553./@UYXWXWXXWWWWVWWVWXWWXYZZ[\XWWGB;Ò²±¶½º³Á²¢¬¦¤µ¨ ³³©¤¡¶¡´¨ª¬¯«¯§¡¯«¨¦¡¥®¨¡¥¤£¦¡£ª³ª½¯¤§} © £©®¨¥¦¢¤¨»Å¥£§©²³ª¬¤¹«ª«©£¯¤¸Ãº§¬¯§¦«Ö½Âªb¤¿½}~£×»¸µ½¾m£o«lz²°Çi«°¼¬wv¡¾¼s¦ {|c~{egz|alfkkcQa[Sj\@UbCN)=:4/$%2 $(0496677;>ACFGIKMNNQTW]a\__a^`[\YTQMHC?=A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ»³³°¿¸±¼²¢¥¥²¦¥Àª¸²¨¢À§¨³²º¨¯¥¦°«®¥¢¬ £ª£¦§¡©¤ ¢¬®ªº¨£|¥©¡ª©¡ª§ £ªº¨Ã¢¬¡©±²§§¸¥¬¬svª¤¸d ph®nnw¤u®pq¨¤¯¤smmmfxonpzjqigrij
gqd]bjoY\f}v¦_apnee¡¡}wfxilzzemdgmcKdXJkZ:QfER'K:+# #,)-2.5:457:<?ABDEHKLMOQSV\WZ\``a]][TPLHD=:AB7MXZZYYZYXXYXWWWWY]^^]\\\]^]^][[UW^©¬³¨¹¸±³ª©¡£²ª¿³Åʾ·ªÁ®¤¢¨¬º£¤®¬¥®©
¬¦ª ¤£ ¤§©¤«¢§¦¨°»«¬|¥© ©£±¦¢«¹¯À¦£±¤«®¯¨«©¥µ¢¬¶¡©¦·£ª©³¢ª ²¢¡¢¡¥¢¬§
¥~g~tusp§lz¢¥tjwrxx}zjmedpeU`Y@j\HdbPY+F=+'!750.!%2(*699469;>?ABDEJKKMPPQXUWY^`ac]^TQKEC>9=@ASX[\YWXXXXXYXXZZ[\^__`^^^__```_YY`¦©©¤´µ®®¢°£µ±¬È¾Æ»º«£¦§±©£¶§©µ§§¢§¬¤¨£¨¨§¢¤¨¢¶º¨ª| ¦ © ¶£¦«·§®À¢µ¤®®ª§§±¶¬º¥£§¶¢§ ª £«° £°¨°£ £ª¬¢« ¡~e
utwsj
}£¤
}ss{s|joe_qj`[`ZndQaeQZ:GGE>2=>9/*&+)&&316668:==?AACIJGJKLMSSTUZ``iaeVPKACB:9EMV[^^[Z\[[[\]]^_]^_`abbaaa`bbbdb\[c£¦¢¯±«®£©¦¬§µª¤µ½°£¤|¤²¤¥±©¸¦£ª¢®¢¨ ®©©ª©¹·¤¥y£¨¸£¯µ¢®®t¢»¡°vx§¯¸t«£«d\bv ¥}m³¢§ª£esyq©m¢©e¦
wjv
pz
`hZughs|¨f{
yj
ozkqe`wplki\febbqT[>NNNSG>@UD:1/&4:306678<;>@AAFHBGFIKMSTUY\`hfgWQJ<DG<8UR[`ab`^__`aa_\]__`aabcdabaaedchd^]f¥¢ ®¯««©¥¨¢§¤«¶±³§«¨t± ¨«§¹ ¤¬¢§¡
v§©¥»´§ uw¡¡§±´²¹¥}§¢y ¬µ¥°ª¯¤z¬
¡¦¨§
w¥z§{³z¡cz
mpyp}
s
wht t}£
kly|rqheypjlk\elkfu]^ITLR@E6.[UU7)!09>>743568;:=>>@DI?IEJLGSX[Y[bahfYQH9EL;>aV^bdfd`aa`bb_]`aabbbcfgcba`edcgcaah¢¥¬¬«§¬ §°¦¦©¥¯È¿±¢¨ª·
§¢ ¾ }¬¡¡
§£¤º²§
qv ¡¤«´´Ê¨¬¶
¯®«¨¦}¨s{w§h¤y´ ¥§Â«¡r¥~
³¡}¡¡}
ms
~yq{tÅf©£k
¤qiyv|xhivrhhl^dpmgnYgG]RM3E57Nbd7&3<EGD:64658;8>==?BM?NJJLCPZ]\Wa^il\QE=KM@IcX]cfhgbbbbdc`_babccceiicbbbecafcbbi¡¯¦§¨¥«¤·°©«¦ £¤¬¥¦¬¹¤°¢©¦¼¡z«¢w¥£¹¤~bm ¡¡ §~¡§ ¨¬
£©¢ukvM«x§¦©«}¡{z§jlg·~n`dY|dhr}yl]}m_Rp\_kx_Xd|p§ªk£nr¥p
jg m\p~gZ`cXQpwfnuskjp^kqnljYiO]YF9A5HE_l5,IDRMN=84859;6@;;>BP>QRLMBJ\]_W]^bu`MD:MONTa\\ffiibbdbddbab`bdcacikdbddgdbgeach¸©£¦¬¡µ»ª®¢¡¢¥¯¡°¶¤©¢¡ §´u¦~
¬¤«¦±§¡in£¡¤¢ v§¥~
§ª¥x|~¢ps|ym¨{¢sv¦f~w¤_z}t¢n·´ºtµ¨dƸ{p¶r£cs¬«`|i³~m|q£lr£t
¤a´s}³ut\²kcpuwripYlmssg]j^bLE=D6RBZs3=SG`JR=<395::6D;;@JP?UMOQ@E__[ZX``|dHC8MWUWbaZefkkbbeadd`ab`dd_`cknccddhdbgfchh¢·ª¤·´¬ ¢¤£¦¯³¯¢¡¥«x
q¡}¨¡¤©¨¥~j{~}¡ w¡q¡©¤¥¨|~z z£xt}¥
¢d¡|mho{§}rit«tªh]
v
gªk¸f\¨p`^§vu~guon§^©y»k~ª\]´h]nrzxlj\qkyzdagXbBRFO7WDRo5K[[_NZDA251<;7H?:CHU>YRY]>Db^V`Qac}jEB9N\^YdfXfgnmbbe_aa__``ec^bdoq`deekecihgki©³¦c«º±¯¬¦© ¯²©®¤¡ £ir{z¤©£ ixz¢ rhp© ¤¥{°£¢¸w£³£¤y{«~¢q¡|
¯µ}k¡y~µ£¤«¨|}tªZ]o{xbL{z
cyBLX¢iq{lux±³§wnt~ptk¤^vHedatr~ofaliw|eebQ_W]UW@ZFQhETW]bX^ID=B8@A:IF8LEXAWR[WDFb\Z`K`m}rEB<U_bZeiVghmobfg^aa\]^`hb_ecvl]egfkdeliiki¯¬S^ ¦³¹±²¨¢¬ª¢¥£©¡woy
|r¡s¡
ª|l
q¡x|¤ ¢}µ{¥y©{§hwm~t¡sr|p®}£¥£o^¨gu¢co¥aÓ}{xstb¢~£t¤vk³`sª²¨¼wm~¿¦©´]m{pmr¢q]¤gs¦`h¦mÔ~p{{l|xsn©¤gaezr
lhfdovxhacS\fQRbHXJUaXT\fk\eQFCKMJKBKE8O@QNXSYOSQ`ffjRdwywIFEc^fZhjTihjocjg`c_]]]_hbaie|d^dgdkdjlfhlh¯«T[J~©¯±³¯²£
ª ¢¥¦©¡«¡
{p}h}wol|¥«yvmw£{¢£³¡¢¶y¬§¤®¥o¨
z¤¡r¤®¯¤ vµ¶µÉ¡s`©mz¡u¢w ~pMf£ps¥{ytak} kqd_q}shzi³µ³Æ¦r}zk«v
nwyj|vsQE}³_jwlzgkhcuvqoW_TYiPSiJWMYTV^iloVhWMKAJMKHJOBQKPecjmetrsy|nu{{TQOl^i\kiRjhilglfce_]]]^ibdik{_]dhcjfomeile ®¥d?¡²ª®®´¢¢ª¢£¦¦¨§zjye yui
z¦ªz}xp¡y ¥§fnxl¢d{p¥wpe¦z¤ysw¹n¢b} mriªku mo¦`iiu¢~`upbh e~iuocfmq¢Y^Zb¡l]mz}sqd¥mx¢dg§hsp¢pUp `f¨U^TnntlsnqikytkpRYWWfZTmJZP]IXiisjYlWQRFV\LXSbUik_xt{}p||r{svv^RrbgcpgPjhhllnhdg_]^]`jbjivt]\chcjjslfkmc£¥ydsl¦£©°±¦¬§£¢¤£{qh|st~{e|¨£~ri¦} ©¥¦x~¥±®¤u
x©s¥n¤¢»n}¥¯
|¥zr¨ g~o¬dw¨mª¢vw«¦k°kv³©k
mm_}«ªv}~¤v|¤ jx¬h®¶ux¾¤Z§«ausur|uqckohmTW[Vab]lM]R^J^mow`[qY[`[gtenorbrt`xz~yrys~{{vbxdcnrdRkgholrjfia_^\akbml{o\\bibljwmglnb¤©£©©¨¦¤¬¦¦«
t{p
~ttrn}|§§§
vnl©©¢t~x®¢~p
v}{r§q~}zy{~v {~k
[yyrzqin~ruqe_wusuoynml^ugwe
¨}t{jpv}wnnhtz|x
\lXyioxsrpxxp]lojhW[`W]gkdWcU_R`pyymkwfkkkw}rrusaovbt{xuzuy
}{nldyn^Vnghukxjiie\`ZcielqunZ[bldllynhkoa¶§¦ ¡¦£¥«¢¡¢¨ªr|}~{tsq
{|
y~¥|¨¡
vr©¦ª~~¬§¥wnxn}¨
q~qkp} hl\sqtkwtYrn~j]je{`iy{{u
gwj`oqu^q¥enwqzqhif}
{[]khnv\|zxvotsh]nllcZZ_ZYmr\`bZ_^ft|vpudkkk|}s|yudnuhm|~vz}{yz~o
{}t~ysiT\qilvpugkgd]aXjhkkqrnW[enlgsyohjl`¨¯ ¢ ¨£¢~® £¦|}s~v
ror~{
¡¨¢xy¬¡©¡¡£¢© ¦¤
zv§~²¦±¥k|wxe|
w|zt ~}tns}v
¤}zn~zksiatq~{xwpxu]^oio`_Z]]SirVe]]bmhv|}topekji}nyrjpqmg{sw~
zm|zx{}zyNdvjsnpzekecb`[tepfrqmV^ltmhyzqgike¸¡ ¤ |¬¡~y|nys~mk~z~}
¬ r}z©¤¡
¦¤~tz¥{}«¡©~pxru`u
nyvt¢
s||qqzzv¤w~rm}oilnh^zh~}wvwv{x]`q~nuad[]_RgnUf\^bkiw{rlmdkjhltllupzpynv}
vq~{||{`h{juhidjc`i\duhobumlUcqyepz{sejmmµ ¢{x§¦z{}n|ys
~}kh}|}}©p¡
|§x¢~¢ £|w ~|¤¢¢¦~~utqwa~r}r
ixrx~r{{owzyx£zv}hs~z|rmlh_~si}vvt}tk_`twqxedY__RkiVfZ`aijwzrgldlhfkn~hoqly{ls~tv|{}irntiahlb_qVtoln`xhmWjtvcuz{rbjoz°¤¤ |w¥¡£y|r{tv
~xgc}x}y¡p
¥¦
w y~£wv~s£¢¡~|vq~n{d}
ql
fvo{
|x{{zp}wxvw|xazzuxhmfbjkxttw~r}cdasnusnaZa^[meSdYaailvzrckcmfh}liuhnpj}znrt|~z~|mvsumeljbbuVipn`xglbjvpfy|zq`rl
¬¦§~xªzy|~}|xtzzt}d_}t}~~¥¢s{¦ r¥qkzo¤
{zqzlul|~nwp~erj{~tx|tv~|{¡xt}tu
qb|v{r~pbpde|copwsyxtubw`plvnp]\`^^k^Q^Ycaint|l`jekchwngmikmi}{xot}t{}z}}ryxxmljh_ircgqoewgnlazij}{xpaxm©£¨~x¯~w~|}|wxput|p}|a\~rz{¦}}£m¢ lezp£}{
tsvlqnv}toqu||fqmy||tsxm~|{¦z{~w~qpfizuvq|c_qakt_qk{zzmsqfz^omsmsX[_`bl[PXYechrrg]jigbgqodjheiizwvp
t|u
x
|x
zw~{{sxjk_phtkromrgole|cnzvqlww~¢¡§ ¦v«¡t|w
xyss{lsp{nvop[Y~vu¡¢y
m¡h¡e~w~}{|ovplmoq|jtqwuygsnu{yyurnzx¡{uxxnk_tutrry[_qapk_pk~|qnnknwappkrmYYbaboXQT[fgcup
c]kmdbfkn`gg_hkursquyvx
xw
|{wjqc|c|nqmtjholvx`qy|tut~¤¬§ v zrxupr
trwlpnvmv~mmUQªw~wrz¢y{£{r
~|f
f
qwzz||kvkoklm{az~wzx|zhtls}
{qyouyx|{zv|wpjl|ayqomstV_pbrb`mozripfguuirlbwe]Wfa`sTQO]ge^yp}`\irbbffj_he[gp~plqt}v}
uu~y{
xs
|zxfqk`}ookz`jntu_t}yxts
}x °¥
wtwtqp
tprpljwnn}}mtrRMßÈÖ{puv
¡x|s
¡~wz~xte
k¢cqz{y
|m|erokl{z\z{}zzisjs
|l~~m}
{x|uwxsmgp
nkupikunT_pepZ`msyhlkcgyspqd`xa`Vl__wQNLbgc]zqv]\evabfedagbYissnkrw}tzuv}s{~r|~vesn|e~oplYlnyys`vz{vrwwy®
w~}
uxpyqopmoseeyq}my}jgkc¤ÁÜ®ð rlv
w¤o¡q¢
}ztwuul|¢
^l{}
v
}~k}dxvjnysX{zzfrikum}x}trwusqguzcunqckwhRarhlV`ouzard`iqso[drabWn[]yNMMegb^wsn\]dy^`ee
`cc_Yjsknksx~twxw{q}~zt~shuqyl{ntqWqzvyrdwyivr§£}qxy
¡|{sxpsjpljm}u_axw{qu{g`d|ëÚµÉÃÜrltwkq|{
uxr
u}n¡ai|}q~qwhvsjuwlZ|~
vark~~}nkwz{}mpy
tkpkryaujp]lwaResifS`qwuap`]hrtkXhiciYnW\vMKMfg^bstk\\ey^^dg{ad_]Ykoenjtx~st~{vzs
|vv{ulwvyxtnx{}Xyqogxwdv
p
¡¢toqw~} xrtnodrifmxx\`y{{qqjagaÕ¶¦wnqx}qk{h|{}zszzptt~~b
g|~~m|ulmwutwvlc}
p_qo{|~zpey
z|}mny~umnkk{dilkZnwZSjsibQcsxmcf^Zkntb\h_em`oU\pOIOgf\hormZ\cs`\clwee]]Zlmcmjtwrp|}txx
}ux|voxy{on{w^tmiztsgs|q vvmw}w}vqoljau}gbjuzZ`x|zlpecggW_rs½Å
wrtsj{|}|~t
vv}quq~szf~r~g}{y}i}vfpyxsxtlkyk^pvz}{~rhw
wz~|mkz|vtohh~we]rdYqtTTosibNhuyga^]YpptZec^knaqPZlSDThbZlon|pZ[^mcZcowdg\]`kjcljswqo~{tuz|v~xtryy~oo{qjyz~nm|vkjxtk
o~vjyyoysqljd`t{i`fr{[ar}zfpzaed±²wKbZ¥ÛÒs|y
ol
zy|yxnqs}{jy¥~n}tw
p{~nxh
xr|e|~vcqsizqov}wy
{k\o|r|zqmo
qw~wml}~vzehj~raZx[ZsnOXrtg`Knwub^\[Yu~toXg^fkq_oOXiS?Zg_[qkgzr\[YleYdqy_h]^elhfkiqwol~upzv
qq{
|zyukzlp~u}or|{poxf¡gpgz
|ixrllf_aozn_cpy\dlz`pv_deÕë¾3:>szw
nm
u|
|xnvvmku{uey§|m~rtx{y
lrixm||xbyrdqinvrusv~sp[k|sx{|xypjpw}}smjvuu\iiyqYW~T[rfM[srf\Jryp]\[Z]vvjZb[hfocjNXgR>_f]^vf`uq[YUodZeqy[h^`fmhjkhpx~mjyn{}zu
pnx}{{i{~jt|r{sv~zx~|km~li|~}kuqgic[cgso`bltahpzass^bc n]6[°¶uk~wuwpm
tyx}zsgu}|no
}hvynez
¤}m}t}{
|q|~|i~mk{yjzwr`w~rdrgvnu|~pwz|umWm}us
vtzwrlq}{|ymmhltn\hfurR\}O]r]O\spdVKtykXZZZarvb^]agdijfOZiNAbe\awa\unXXSub[eosXj_bhkgmlipw|li}|p~{{wr{orw{j~{nxyvw}x~~zm£
{vykm
y~|~prpcf^Yg_pp``hqfjotaso[`djv{¿¨¥Ê¹r
t~ztrspzsutwyyqcv
yhqufvucj|~|q}rw~v{lyzuh{ilysizv}h`w}kjth{jv|r|w|tbUu{qr{pwxon}|w|zsugpglqo]hctoLfwM_oVTZtncQPuybRXX]brt]b\ieeckdR\qIDeb\dq^]xhVWVx^\fniWl^ajgeonhpwzniy}s{~y}v}pvsnw~q|xzzuxzun}~{w|huz|vgon`e\XfYnsaaaqllhn`siY^cmw©Ú©È³szqv}{utu}vopm
txul`yxeqngum[m}x|wzl
s~r{muwmhwem|vmkww|abxzhuvc~|hu}vvrz}mZUq|os
}wksxjs|y{wzq{rfsdmlsZj`vfIooM\cXWVynbPSuwYQVX^as
p]acmec^ocU^sGCg`^gi]Z|cRV]v[[glbWk`anfflphpvxtkvvx}w{t}oququ~
{wx|}
x|}}{~rux{wuz^~yt
w{bnm\b[[aVjtda\hopgqapfW\ck|Êκ¢knonr
s~{
zytyttzjlvcvvpg^|xdqjjqcXm{rv}zmop{yrrp~ghrcnxqjlrx}|y]eyxiuygwhu~sjp~xn}]Wo|ls~znnpvfv~~uzoyr
zxqeq`mkrWk_y]IplNXV_UV|kbOTvsRRTW^cvj^akkfcZobYcqHAi]ag_\V|^OVfqZ[jh]Xha_rfjhqgqsvynu{x~yus
po{xwuz
z|u}~~}|xvyv~}nuzdso
zudnjY_[]]ThsfaYdrrgrakdWZ_ix¾®{ ·ncuiu}s{
{~wxswnzvejo`usjb^}vxep}gkkZVox£
~pqvsl~q
}yuspizajmamvjgkkywzwZf}}xer~n
tfvqhl{tmub[mzjszzet}mpgt}v}~pzjyyxvodk`m}lmUj`xVLlmPSPiNY|hbOUvlMQTU_gwg^aqigaWi]]ljJEk[ceWYVzZNWokY]le\Zec^ufleqgsptxp
vx|}vsnsy{{ss
y}v}
z~{w|vvziv~}m
rq~pflgX][\[Seqe_XcsuivpdebW[[hporsefzkvwtu
x
zwtvnjzpahkgtnf^^{ny|glwfjdVWsp¦|{vs{qzxlyzu|}uqsmhu]mi`mudggizo{rYgwuhpxvbw
}okn{qese`jxfpuy|auvjkptyoyxr{e}}}vumcd`l|ljUjbrTLklPMOqH^|faNVueKNTXakxf^gsje`WdXcr^LLlYdbUTUtWMYweZ_la\[de_wgmbojtoq~utxx~z}v~
nrt|{tq
zvt|
|~z~v{£¦y
lu}|v{osz
}unjieV][[ZScoe[Xat{jhmh`aX^Ziikphmbi{zkuuupz~wvnzhjyj_enhwgeXavh}ynioff]UXoh¨wz|xtn}mqtx~wtvjswhio\me^ns_gbjxh{m[mstjo~zxbw
ysrpzrcqh[mudnqzwaspgiwsqkwvsuby}utocbbl}|kkUibgTLniPHSlFbyfbMTr^JMUZfmx{f_mqjd]V`VooXKTiXg^XNVlTK]z`\_l]][be`zhlaopvnowuz}wyzyz}qtt~zvt
~}ls{
}~{v¬zlr{vuon}tjonedX_ZZZUbkg\Z_vi^ml\aW[\kert}jj^mxwiuxso|~~zvrlzhiwg]dshzwcbTcneuvfhiaWVYhd¨o~wypn{fwmyzvq~ndwtehi]lb^po[h_muezh]tnrkq{vvcu|xrv~taplXpqanozscqlamznjhyxspdtxxtoc`cms}ikTh^_ULudQHWbHcwfbLTqYKLXYilw{eenrfcZX^YwgUJ]dXiYYIWeQIcy[^_m[^]bd^ij`ntxmonvyr}~vvx}tuuyzz}
jt{}~
y{~|sq®{{~fq{t~}wspm|~mzcppbe]eVZYWdfl`]]thYpm[^XZ\l{bqwvmc\ouuivwroyzwnotehte[gtfvvy_]Reeis|abi\TX^cd¥hxt
wlmxfwl{ytry}yiewm`ga_j`^ukYf]oobze[w|knopxytues{wpr}raxcZmn`nozseqd^nuhcfwzrkmsq{qpa]dmo}diShYZUNz`RKZYHcudaJUnUJLZWjms{dlltcaYZ\bw\TLd^YjTWHYaNHkwY_an[[_bc]
ihbnxymojvym~wuttrvvw}}~~px}yxy~ssp¡{{yeuzsywltply|ps^poagblT[ZWidnf\\reSrm[YXW`lvcjujj_[ournutuk}|wonldipc[krdtvs\VSc_p~~p\ac^SZa\derq
skixknnyyzqvs{z{dfvh^c[ah\_whWb_phawa[|vjjrnxttuiq
vskp{lfwW[ilaoq~xseo~[`ppa^ip}kjr}povio`Zdkm{afSfUXSQx]SPZRHdtbaGVlQIPZVlll|emora[ZXZmqXSPgXWjTUFZ]OIsvY`cncXaaa^jcemzyloivy{k}|y}mqovz}t}txutpvo¢s{{fwon|pgxq{lsvsk^tobgfkS^\Vhbmm[\qdNom\VWUfishctee^[pwoqvvzl}}wscdkoa\nmcsxkZTVabw{|o\c^cSZ`Zccnp
rifxmdruqzkytuo{v_gsd\_WbdYbueU`amdaq]]~ohisqtquwlm
|rrgn{oqoRZdidoq~tsbmuUbqj[^ne|dku|pqqhl^Xcijx^fTdUWQVoXRWTPHes`bFXkOIYUWnie|ilykbW\V\ueTSWiRZgUTI[ZPNyw[_emjZba^^nbglzvnoivv~m}{krgt{u~s}
{ss}un¤swxnz`e}qgztymmqwgd|mcgghS`_Ug`mp\^nhNjl`UVSogskfxef^Zrvns|ytn{w{zkaelm^`ojeqy~gZUW_kwzzn^a]hVY`Xdbkp|vkiuk[upjyiurno|sYkn`Y^VbdXeqcT_biablZ`~kfltuomxwlh{nqfp{lqlaX_ggmqrr^ilSeqdUbmaxaotztinji^W`fhu\dUaVTOYgSO]OPIep]cGZjNJ`LYme`xioe`U^T^v\USagO^cUTK]ZQZvv]_fmhXca[^qchjxrsmgvtysz|zntlst
z}|rstwqn~zz}~~}}~~}~~~~~~~}z{|~~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~ÎÚØØØØÚ]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDCGdhgggge¢ £dggggfo
}}{{z}~||~}}}~}}~~~~~
Ûéççççê~S7¤¤¤¤¤¤£r]____aR4555549\`____]¦¤¤¤¤§|]____^j|}zzz|}{|~}}}~}}~~~~
|y{z||{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
}{wvx{|||}}}}}}~~~~
}|vvx||{|}}}}}~~~~~~~
}wxz{zz|||{}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{z{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{~~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~
rtx|||{||}}~~~~~~}~~~~uxrvy|}|z}|}}~~~~~~~~p|tssvx}~|y}|}}~~~}~~sorx
ty}zxurkeimolffggpsswy}~yz{|}}~~~~}~~wm{sx{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||~~~~}~~~
sno{uv
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\YXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxz}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzoq{xy{|{xw{xuwttvuuvwtb^d_akqfhklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkiffggghhb]jl]efgeccbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFFHIJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__ac_\_]`]^ZZjwlbnrjbYY_[XWSNMKKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSTPMJMNPROM[krkamtrfQQSPPNNOMJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTtsuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMN]cokXisupSMOPPPONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKKFBFHUbglopomlZLLNMNOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHECFGHMZghgrnnhfd`^^XLJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:;>IZ]Z\elnjommlkihkdSGEEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@:;><;;;=K[imnojomkjlmfQGEDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnppsttsqrvxy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<979;:=HcosmnlklhUC>CFDCCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtstrqtxxy}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::979::78:99=J`ssphT?:;=@A@=;;><=<@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyz{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==?@===?C;==><:Bl}j@:;>=>??A@??A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCDA?=>@A?@;[n@>DE?@AD_d;==;:=?AA??@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJKHVppqssttuyz{||~~~~~~mLPQNOPNNOPPO><<=>??@>@@???BFD><<=@=8::mwH8;:=>A;Hd=<=<8:;DD<<=<<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII`pprrrtuvz{}}|~~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABA@YR=<=ILFEuvN788:;>?WjA;<<::;LR===9:?<=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@CrzJ;\z|wW<=?==>EhtL:=>?=<OhK@<8<A?>>A=;?B@BCB@BCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGEE?AGGFCFDGHJGC>Hloppqtuvy|||||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCEAGrzkb}^>@C@@=Js{Y:=AEBAPn^TPHACCAA?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{{{}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Ent}~}vMACE@?>Y{]?CEIJIThge_`XFMMFEEEDECA?@>>BFJJGEEGFFJNNKJIGGHKLIGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z|{}}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEhs}|~y
rCDEDCWu~XGHJMM\ihjebgZaNIIHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHHHGFEFFFDFHGEEHHFHGHFQnnpqruvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJG`{w
lAAVtWHLNMfvohkilnaGHHGFHFHECDDFEDDHHCCCFIKKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrtwwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLN[|
Vl
|PLMNlxvnmoqpQ?DCBCFFEB@>>@AB@BD?>?DFHDFGIKIJHHHGIIJJIHFJJJJIJIJJJFILLJJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLKJT
uJIRtzwpmlnV;?;:<AA@><998<<=;>;8;?AB@ACCB@AADDBCFHIHHHLMLGIJMMNMJJKKJLMSlpqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJIIe
gEYkoznloqsO696479;<:8567789787588;;;=@;999=<>;<=ACEHJMLLGIGORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIh~gdjlceius<4873568:876565676767:67889:7578979776:<@GFIGIFEFOSRSSROPPRTepqsttvy{{{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@6788=:=ECBe
sqofgpr}e4688557699776765:9:::;798987669:98868589;A=>>BA?AKLOQPQOOORWkqrttuvy{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B:=q
xsnosmqa9:;<9:;9:;::9;:9===>;;<<:>;9;;<;<;9:<8::::999<?<<ABDIJMKIKLWorsusvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<:89989:::;?>H~
wuyroo]BBAB>@CA@>=>>@???@?@==?B>@A?@?=@@@>?A<><;:;:9;?=;<==AACABCAXpqtttvz{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<<:;;==?@BR
{{vsqVKHHHEFHGECA@BECCABCB?@DHECECEDAFEFDEFD@B><@>=?@>?>?>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@CDFW
z{t^ORLKKIJJJIFDDGHFDDEFDBHIKGHGFHGEKIKIJKJCECCDBABCBDCCDDCA=;=@hpsttwwyx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@?A>BBGGIY
{zp\QRNLNKJKIKGDGIIIEFIFFELLMIJGGHIJNMOLLNKGFGGEECFEFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?EGG=<@@87<;;=:>@>?@CFIIP_
zzxdPOMNLJIFJIEKIGKJIJGGGKLNLLHHIJMQNONLOKIGIJHIDIHHFFGGIGCBACTnpuwwyzxyz{||}~~~~}~}~~~~~TDAABGHB?8?@9:<8=>;=A>?ADHJLUq
vwtqURPMLIGDHJHMLGKOLKJJLMLOPNHIKLOQQPQOOJHJJLJKFGHGFFIFEEBABB\orwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAGKLPVy
~d`h]WUQOMLEFGMPOPWUQPOQSRMSTOMSLPSUVRSQPLJMMMKNHGJFEHJEDEEBECcpuyyzzz{z{zz|~}}~}}}}|}~~UFFGGGGHF>@B=?==B@BBGVNFNPPTX{
o_^odHUSSRK;;STR`u]UVTVYYRXXRZfPUWZ]RTWQOMRQPPQLLKHHJHEFIIIHIirvyxyyz{{|z{|}|}~}}}}}}~~~SHJIHGGFE??AAEACGEDELXRMTUVXZ|
~asbiY=[ZYTR?@WVY\d`VYbr]]W]ZVEQYZ[Y_TYgRVVXUTVTOOMKLJIILMKOMSotvxyxxzzz{zz|}|~~}~}}}~}~~~~VJJIHGEDDBA?HMIMPKIKPTSSXZZ\\x
g;~}ss[^]\SUSWWU[ZuYU}a\X]_WIV]][[_YHYXY[]XXYWRQMPQMMOSQQURassvwwvxxxz{z|}}}~}~}}}~~xy}YNKIIHFBD@A:PQQWXPPOQSTTXXYZ[n
ni\\][VWUXTRXVcRerXZW_hP`f[[X\gaGOZhg][\]]WROSPPRVVVVYZnrtwvvuxxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQPRRRUSVTW_ux
~}`TX[VTVSRRMPMLfz[]TYUV]ZLTZUST^ZXWWWzkX[\\^TQQPINOWVX[Zdprvvttvxyy{{||}~~}}}~}}~~~zxwvsu{tk~~kry^[VUSROKFCDAM^lVRSNOQOQURSRRUcdv
~zosZNNQQMOLJKEFIFC?TdURQQNKQTQMOYRMNQSUUMQSRPOMLHCIHRTUZ\lquuusswzz{{|}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^\YUQLILIaltPQSNQRQR[RSRQRUTas{|}z{
va^OGAEEDDCAEQCEAC>CIGV@HNLG]iPHFNFDEFIGHBDHGIKGDBAD@OQMSdrtvustuz|{{{{||}|{~}}}~~||}}vt{mh|gnqfiedb\XSQPURsWe[OONLQSPUYSUQQTROV_klrv{{xytrnstsyx}lOIBB<<>@A@@?kQK`EFHIEB?GLNGMRUIBE?><=<==?=?ACC@?==B>JNGUnttustvxz|{|||}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QQZ\Y^JJPQNKLQRQTUUWQQWUPX[a]agmmlokg`nrjmlqu{z}{xz||xwxeDBBB>;CCBBDB\]O{NOONKLMOOQLKMWMHG@B<:77599=;;;8:8:?<BH?\stuuuvwy|||}||}}~~|}}}}~}xuvz{zwyxuw{|yxuywcqhipmnmmhf^OP_]ZIHPRQOMPQNQRTVXSSYTOYZ\WY]^^_e_]^qvk^`gkwooljonnlebYHGHHCBGIFFFDMROaWSWQPSSRU[OOQVPMIDF>:96587979:365795<C>essvwwzy{}}||{|}~~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`VW^ZXMKTTSPQUOLRSTWXTTYRMXYZVXXVXY]WWXhsk]Vatkaa_^da_^YUQNOOMIHJLJIFCQPSZWTTNQSYS\eUOSTRNKIHC?A999897885757859:Gnqtwxz{{|~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOUVXXYSUTLKTVUUUWPSTWTUR]n_RNZ`[WY;DVXT[fJLPSRONMNNNLJFQPUYSTOJNOUST\VRUSROMLIHHF??=:787659967675Wppswyz{|}~}~||}|~}}y}}|~~~}||}}~}|rvqxxrvuqqnppopuvtnjddjppqrpnfedc\]RTZWXUTWTRXXYYYSUOJGOPOOMRJOPOPNNOTLMIPOSTU2=XMI@Q=caQSQPNPQPNNMQNTRPSMILJORPRRSTQROLMKLLHCBA=::876;B5566:doqtwx{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqnhihpVVTUXUWURWVUZYXWUQSFEAFGGHFJDHJIGEHLHJHFLMPMG/E_R>3?>joaSRQ@GTQPQPQNQOQPLJLLOPNNPQQNPOJLMMKGEEDB;=<<9=G6677Dmptvy{{}}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknaePSTRSTOWVVYYVQQQO@=;=?ABAC@BEDA@GHGHEFHJMLEGCORC8ENS]gTQSAGUPOQQPMMOMKLKLNOOQLOOMHLLIKKLKGFFED<AA>;@E;<89Sprtx{z{}||{y|zz~~|{uturvvz{xzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLONLQSLTUTXWULLKI<987;>@><=A@B=>EHGCEFIGJJ@FAA@FHEJOHQRb\QPROSOOPLMONLMMNON[WKMQOGIHCHJLLKFFFE?BC><BG?B?Adptvzzz{|{zzw{wy~~|{qstprswsxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCD=9779?B>;?B@@>ADJECGGIGIEBB?>=CBAGIDMObeQMONWKLNKLNMMLLONSdNJLRIIIEAHJLMNJGIGBAB@?EFEHDKnovyyy{{z|zwsxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGMMJMPMPOHJD?A=989:?B?<ABAADEGKFCHHGGHCD?B??@A>CECKNRTLJIMTGIIJLJKLIJMMOPRPJGCLGCBJILMONIJIGCCCDHJMLIYrmwyxz{zy|vrpurtxyvxjqnjllnttmtu{stxrompovsnporpopstyjN`gsjt|ygosqiqhdqGKDGHHGJKIJKDFB=>=:9:;@B?=ABCCGFIKJDIIFGGCC;A@B>@@CECIMPHHKGHKDHJLMHJLHIJLKM]RHHDNFACJJMLPMKMJKFGGJNNQNLbmivvwzy{z}rmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoiktgdoFKDFEGEFFGEGBC@><=9::;@C@>ACDEIEIJLFIIGFFCB;ABC>@CDCDGLNHKNHDHEILNMGILGFGIILNKIGENHBFMKMLOMMNMKHHIORRSNRfffqosxu{z|lhjnekqlspfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGIDFFECCBE@DB>?>:;;=:<>CA>ACDFJFIHLHGGGFEC@=DDB>ACCCDGHIGMQIFFGKNOKFHIFEDEIJHKIFHOKCILKOLNMOONJJILRUUROWd`amgqroryzgehhdilgqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutwljuumrvqlnlerLHEEHCBABD<BA>A=::=?;>>@B>@ADGJEIFIHGFGDCBAAFFCBBBDEDGGHFLQLIOJJMLIGHEGEDCIIHKJGKRMBNNLPNOOMNOKKKOUWVUSX_^\iaminhrsbdfedhhfnjfmmhkkmriqvtsqmvnoqrswsrstuvvvvwvwwvtwujsunutsqrjksMGHFHBBADE<A@@C<8:<>9?<?B@@@DFHEHFFHGFFDCECDIECFEBEGEFGGEIMKHQMJKHHIEFHHECIIIKMKOSNDQROPQNOMNPMLMSWVXXUX]Z]d`ibjigk_defcgggkggkmkmlprhttursnvoqprtxqssuvuyvvtxuuwxmouorsuqqinyMHGHHBBBFE<?BBD<7;=>:>:@B>??BEFDGDEHEDECDEFGJEEIGCGHFHGECFJJGNKLKHJLFIIKHEKKLMNORTOHSTRPROQMNQNMPWZVZYVZ]ZXa`a`^hec`dehgjhhifhnllnmqpiuuxrrpupppruvpusuwu{~}xvtwvvvxplupmstnprrxNHHGIDBCHE<@ECE=89>>=<<AB<?>AAFCFCDIDDEEFGGGIFGKHDIHGIGFDHKIGKHMKJKLHLKLKIMKONORUVOKUVSPSQRLOQPOTYZY\ZY[^^]`c^\ackb`dghr
hgifjmnponsrjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqvptLIKIKFBEGE<@GCD@:<>@?>?BA<@>BAFCEEEIEFEGFHHFHHIKJFJHHKHFFLHHHJGLLMLLIMKMMMOLPPQUVWOKVUTRRQRLORRQV[[]^[\^^^``ad]c`ef`ehjdssfjggkorqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrvnvJKLJLGCEDE<@FDDC;??B@@@DA?B?ACHCFFGIFJFGDIHGIHJLHHJJILJFJLHIKJGKKMMJJMLNNMPKOPRTXVMMTUTRRQPMNTSRW[]^_]]`_`aa`acebdhbdijgvljigmosqpqppryvruutsmmssmqrotutrpswtuuwvuuteqskpqjrunwKLLLMGDCAD<?EEEC=AACBBCDACEAAEGCHHIHGJGCGJGHJFIMHIJMKNLGKIHKKNQKRQMSMKNNOPPOTOWXX[NRPW\ZRWPNTUTTXZ_bb_da^`b^`eaacingbihhnxvlhimosrpqrrrvtsusssnksqmprotvrqquvuswywutucmtkopjqtowLNLLLGEA@D>>DEFC@DBEDDFBCEGCCIFCIJJIIKGDKJGIJIILHJJNLOKILHJLKZfJd\KlSHON_nUks[qpbwcSPavuhucav`Xnqbdvinzf[lt`ljT_wvijghfglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqrqyLNJJJFC?@B?=DEFDCDCEEDFBFFGDEKFFJMLKLLGGMIGJKHKKIKKNLMLLLILML[sbdp^lmUMNfs]ffqlntgpi_aYnnbppbkjjfoqtetno\ougpMJqyvka`keemxlkvlmpsrprqpqrqrrrtrmmsnnopsutqsstuuutwxvutbmukpplrrqzKLIHGED?AB@>CFGCFCFEFEDCHHHDEKHGLNNLMMFJNHJKJILKJJKLMNNMMJMMN[roonpplkMPQlWMibtrpamnu\YlP\nmZqmkomxxtsip]_rkqjUuyxoc^kfbgpojjnoprspqpqqrrqqrrtlmrmnnorutqtrtuutuuzvutenukpolsrryIKGGEEEBBB>@@FHCGDIFEEBFIHHEHLKGMMOLMNGLMILKIJMIKJJKOPONLLNNL\hdu]lqWlNPQmTYk^klvaldsSecNmYl\tpkilxjwuhp]^rkhWbcw|oc`ggaditxknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvHLFIDEECAB=BACFDHGLHECCHKIHFJLLFNLLSRLGLLHNJIHNHJJIHNOMNLJNMJZsppoqqmlOQRnYrkgooqqomt]nXat_nopoqronusttj[^tcwxrjnzhaacfbbimtupsuvsqppqoqt{~}wlkqnlmnprsqttsuutxxyxtukoumtonssvsHKHIBEEEAA>DDBGDHIMIFCFJLJGFKNLFOJKWRKGKJJNIHJLIKJHHKMMMMIKKKSkc[i^_icrrZ_Yjn_eeUk_c[aaQ`lh]j\niid[pfdp]Z\k[mqcpsldgcdg``jmqpntyruqopqny
vsnkmmonqrttrtuuvyxxsunqunvqqvtwrGGFIDECFA@BFEDGBHJLHFDGKLIEFJOLIPIL[QJEHHKMIHJJKKIHIFKKKLGHKKLMMLJKMNT[\TPTLPONOOVQONQNOQJJOPQdqiTYW\[\VY[]X]\\cfaaebcf__fknimtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusGCEGEEAEC@DHDFGCIKLHFDGKLIEGIPKLOKLWLIEEHIJHIKIMJHFGGIGHIEFLIJLOMJP\W^P\[`^MXYS\\b^MXZMXaRKYaZR_d\aX[ddVVX\YZX\VY\]b^d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtrxrxsqrurtOBCDLMBDDBEIEGGFKJKHEEIJKFEHHPKMMJMRHGEAHFJIKLJLJHFDIFDFGEFKHCJMLLU_Y`X`a[`TXYT^^Z_RY\P^\YN^\^SZ^c^Z]`c`Y_c[`^[TXWY^]cbcacehekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaRJJMIECBCGHFHGHKJJIDFKKKEFIJNKNKHLNGHE>GGLIKLKKKIGDHDCDEAFJEAKLJO[cY_^a_RTRW_`\]Y^QY\MV_WKQY[PZ_aa]^ca`bbbcceZQYUU\Y]c`__cdbhomnllllu
yu|
}wrrtxyyyy~}yuyvvrnzwvxYQKFDGEBEGIFGHHFFIGHGHKILDDKKNMLKHKJHIF?GGNKKKMKKKIFGCD@DAHIC@JKHP]aZ[d]_TQRX]\\\_ZKW\LR\YIM^QO\_accccb]dcbdcfXQVTQZWZ`_^^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMC@IFDFKJFFFHGGIGFFILJNFDKKMNJLIKJHIFBHHQMLKOMJKIGGED?ECIICCHGET]Y^X_Y_[]UXXP]]QKJV^X^[]UYaRQ__bb``bb`cbaddbXOQPQZR[]]]]^__dhgljnnp{{|~{
srw
|x\SKCAHFDGMRHCQJEGHHEFKJMPEFIJKNLLIKLIIHDHKQOMMPLLKKHICDAEDIGCCHFDWUE\T]SV_XOTUNZZMIJT`a[_X^^a]NXa\``_bcb]abW__TPOOOWQ\[[\\^_bffeleoow|{{}
zo
~JNFDFFHDIRbPCV^IGGHDFMJPPEIIJKNLKKLKIJGEJNQQNOOMMLMHKADACDGDCCFGBMHBKKOONLFMFGIJHGLKMOPILOPOSPKOSRUZYWYXXdWOSTPPNMNTRZXXZ]\`adecgcklpsryy{z
~{}{
}KIEEHFGDKM]LFGXLGHJHGMLQPHKKKKMMUNOJJKGGKPSSNPOMNNNGKF`ED_LEgdFN\I^[rmOMUmYLDP`UkWgJ]WU^DLQULLSVQRTXWTXUT\UPfZhhdXRjRVUT[\[``abab_fhfnkhrz|}~}|zr{z{
~z{LIEGFHEEKOSIJF`SHJOJIOMRQLMLLORUROOILNGHMQ[YOPPNOOOIJQQI|YYrtYQmHqnoaVPqqsPCksmqspSo_ZnX]V\XUkhU]VcZ`Y[_VVXjtuu^_v^Wa[[f[_`aaa]_agmpl_pwtx~}vxzlv~tx}|~|z~wwNJEHMNBDLLFIKEQULKNIKRXWQNNOMQTNOQOKKNGMPS[ZTQROPPPJHZx]TxehZSURvgtlpbnfjQrOMwmjrpsrqrooo]ezuxqqzq~s}ku}bRh|essorr{|o~xnr_``baZ`_gknkblfgmw~}{xwtvzir~ns|~wx{~x|u|||ssNLG`]GAEMMHJJGIONMMJNV^YULQSNXZMSSRMKOHQRTYWWQTPPPQKHgxlcxrm[KNVypumubovPeeIfvqmwojfxwiWrQhzmijzz}lxzohoYvvjvup_rf}ilx|o^__baZ]bdgiidgbcdllppstssszqrxblugry{srvy~suzn|}yxrnNKSuNCBFPPHJKIKPNNOMPZ`ZWKTWPa^RVQYRLPISTUXWWPUPONRJKrouuquqdibWnLqp^FhyWvTLiy}x`y{sna]mocRgqunmypwlvttrln]t~zkmy|ktl|kpvux^__b^\_ddiggee^abiiijknokqomjpacfcowxompsynqpk{ztromLL[VHGEGRPILMJKPQPPPPW\YUMUYUeXRRY]SLNITTWWYWOSNNNQIRmHiwK`dvvVXlOnl{sajgvULWkh}lmlx_Zpz{^`zscroxqhd}ir|^TLl_vukiu{zm~xk|p\^^b[^addfeeebZccikkrsrvglihdgaakagsrlgmmr}kmhk{tmmkmOHKKHJHHQPLNOLKRRROSRWRVTPWZVVUTTa_PNMJTSTQVVNNLMOPKHQNPULKLSTTSTPVUQQNQQXYRNPUTXXX[[URSW[WXWZOSUWXXR^YW^WUPYRWWWWX^Zgr^[[Y\]_cZ_ccdfdccbZcbgfemnmueegcaf_]g`dlhfgkhpzhggjujhgilPIKLLMKJSQMQQOLVUTPTUXUZUQZ]UUTWUYWOOKMVTQNUSNOMLQPLJRQKQMKLPRUSQRSSIHLNOQRQPQTVRXW\WSRPRTUUSZQNSRXVTYWUZVTRVTTUWXV\Y]`][ZZ\\_c[]bcdfdddaY`acabhhimbad^_c]Zd\bma^fefmsdigjkedcfhPJKLOOLMSPNSQPMXWUTUWWWYUS\`VWVYUXRPPJNWSPNUPNQNLSPMOUSNRNMOQUQUQRTUNKMOQTTRRQVWUYZ[YSURTWVVY[TPTUXUUZVXZUSRXVUW[XY^\UX^\^\[]``][bbcgfedbX_ab^`gdfea^_]]^ZZ_Z_g`^]]bhkagfgfd`bcbOLMLQQLOTOOSQOQ[YWWXZYXYV]jdVXYZWVSSOJNVTPOTPPPMMRRPRXTQQOMPTVOXRTUUONMQTUUTTRTWVZ]\ZVVQQVXV[[WQTVVVVYTXXVSRYWVZ^Y\^^U^\^`\[___^ZbbdhgddbXa`b^^fcc`b]\\\\YZ[X[a\_]\_b__bdebd__`\PMNNRQMRROSTQOU\ZZW[[\XZ[dqmhd_[XUUWQLMVSMNROQROLQSRUZUSPPMQXWRWSSSXMOOQTXVUUSUYX[^][[VQNUVU[[WRSWVWXVTY[UTRZXW\^Z^__Ta\`a]`b_\`]c`cghdf`Yc`a__ed_`b[Z\[\YZYXW\Z\[`^_[^^a`_c\Y`[QNONVQPTQOTTSPW\\\X^\^V\^jqwyc\[UUWPMOVSNQQORTRLRTTYZWUOROSXWTSURRZOPRRV[VWWSVZX\][[]VRMTUU[\VRUVVXYSUZ\USS]XZ]^\``_Va[cb]ad^\bab^cfidf][d`a``ce_b^YZ^[\[XXYWWZZZa\][]\\Z]`W[[ZPOOOYPUTRQWRTP[^^][`\`U\]hjr}slg[TWWQNRZSRQTRTUTKRWV[ZZSOSQVVVTOWRSZRTTTX]WXYSX]X^]YZ]TTNUVW^[XRUUYYYUWZ\VSW^Z]]`]bb]Y_[ea_dd^^cca]efidf]]da`aabd`b^XZ_Z\[XXXWW[Y[`\[[\[XZ[^V^Y]QOORZPZTUVVSTT^^`^^b\`U]^bkytl}kZTYTPPS\TUTUTVYWLR[W][]ROUSXWWTPXRSWSVUU[]X[YUZ^X_^Y\YRVQYXY_[ZTUVZYZWXZ\WU[^]^`a_cc\^]]eaafd^^dc`\gdheda_da`a`bb_`^WX^Z\\ZYYWV]Z]^ZY[\[WY\]VXW]SOPVYQ]UVYWWUX__aa`c]_U]^beeuzhWXYSUSV\XWWVVW]XOU]Z^]\TRXSWWUSTXRSVTXWX]^X][V]_X__X\VQXTYZZaZ\VWX[Z[YYZ[YW^_`_cbadd\b\`fadfd^_dba[fchecf`f__aaaa`_^VU]Y[\[Y[YX]Z[[XXY[YZZ]_]TY]UNSYVS\TVWYVV\`abc`c^_V[`da_zuohYZYUWTW[ZZ\YXY`WPU^\``\TTXPUWVTVWRSUWZZ[_^Z_\V__Z]^Y]URXWYY]bZ^WX[\[\\[Z\ZZ__``dbcdebdZaecffe]ab`c]bcidcg_g^aacaa`^_XT[ZZ[[X[XX\[Z[XVYXW\[[`]V]]SOVYVVZUXUXWX]_badad`^YYadb`lfh^\\ZVWXY\\]_[Y[bVTX^]ac\RVYPWWWWWVSUTX\\^``]`\Wa^[^[Z^WUWW[[_`\_XY\\]^^\[]Y[`a^`dcdeefbXcedhgd^c``ec\eidei_f]cbcaa`__[XYZYZZXYXW[[Z[WXZTY]\Z`\U^bNSWYVWYX[\XWY^`badada]^Yacb_a``^\\\WW[[]]__\Z]cYZX]`cd_RXYPWWXYYWVWV\]^`a`_b^Ya]]^Y\^YXUV[\`^]_ZZ^]^^a]\[Z\`b_becefefbZdffigb_c^afdYhhbfice^bbca``_]]ZX\YYXXZXWZ[ZYWXUU[]]]``bbxKXW[YV\[[]ZW\]_`bdaba]`Xbcbacab][\[XW\\_]`_][`d]\X[becaR\ZOYXZ[[ZWZY`]`bb`ac_\b]_][^]YXTX]]_`_`\[^^`bc\\X\^`bbcedfdefd\efgifcab[cg_\ihbhied`baca_`_\]\Y\YXWXYXW\ZZWVXOXZ]acffrkJYW\ZZ_\[^[X][^_acbaa]b[bdb`bbb\[[ZWXiq`\`_]\ac_^YYcedaS_ZRYX\]][Z[[c`bbc`bda`c^`\^^^YXU[_^]ab`^[`abfc_]T]`acddfegeffe^efhhgdd`Zeg]aghchhfc`bacb___\][Z[YXXXVZV\[ZVVVMXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{zzzzzzz{||||{|{zzzzz{{|||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvvvvvvwwvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyyz{{{{{zzzzzzzz|}}|||}|{zzzz{{||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||upooooppz~}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ¼ÌÓÒÒÒÓØZ%****"ÛÒÒÒÒÖº}~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}upnoooooz~y1333332j{éääääèÊÝæääååëTïååååéÇ}~}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vuuuuuuuvwwwwwwxyyyyyzxopppppprrrrrrrwzyyzzz~||||||}xssssss}
|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvvvvywvvz{x{xwvwzxzyy}zyyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{yyyyyyy|}}}}}}{zzzzzz{||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwvy}{{}z|{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwvz}|{~y|zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z{xwv{}|y|z|{wxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzyz}{{|{}{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyx{xzzy{yxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyxyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{|||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|||||||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrsuuttssssrrqpoooopqsssrrrrstttsqqqrstttttttsstsssttttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqsttssrqqqponnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqrsssssrqqpponnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrrrsssrrqqppppoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpqqqsqrrqqo|oppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqqqpprqpsnpppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqq}¡pro|nppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqu¡wqw}oqqqqpppppqqqpqpppqpppppppppppppppqqqpqqpppqppqqqqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrrq¨o£~pqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxwwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssssrstr©¤y |rsssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz~|~}|vvwwvuxzxxxxxwxyy´©¤¨¨}{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{|{{¯¦¡µ«¬£~{zzxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}}}}}¥¡² §}}}}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~ ¯ ¢~~~~~~
~~}~~~}}}~~~~~~±¡
|~~~~~~~
|||{|}||~~~~~~~~~~~~«¥¤ ~}|}||}}~²¨¢ ¦¨¨
}||~~
±¦ ¡¤£
}}}
~~
}}~~
~~~~
~~}|}
~}}}}{¡¥
~~}~
¦¥
¡
}~
}}}
~}~~~
~}~
~
~}~}
~{z¡
~}}}}~~|{{£¡¡
~}}~~~~~~}~}} ¡
}|}~~~}|}~|z
}}}~~}|}}{zz~
~~~~~}~}~~}}}}~}|z{{
~}~~}}~
|}}~}}~~}~}~}}~}}}}|{{{zzz{~~~~~~}~~}|~~~~~~
~|~~}~~~}~~~}}}}{{|zzzzy~~|~~~~}|~~~~~~~~~~~~}}}}
~}}}~~~~}}}}}|||{zzzzy~~~~~~~~~}~~}{|~~
~~}}}~~}}}}}}}}}|zzyyyz~~||~}~~~
}}}}}}~~}}}}}}|}}|{yyyyy|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxxyyz~}~
~~}~~
~}}|}~}}}}}}}}}}}}}|{{|z|yyz{}|
~~
~}|||}}||}}}}}}}}}}||{z|yzzz{{~}{||}
~
~~
~}}||}}|||}||}|}}}|||{z{|zyz{|yx|}~}{|~}}|~||}
~{z|
~~}}}||||||||||||||}|||~~{z{zxz{{|}{~~~~~~}}|}~}~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||}|yz{{xxy{{z|}}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{||||||||||}}|{}|||{|||zzy{|z}
~~
~~~
~~}|~~}}}}~{|}}~
{z{ywz}
~~~}}|||}~}|||}}}}|~|}|{}||z{z|}}
}~}~~~}||~}}}}|{}|~~~~~}|~}~~~
}|||}~{{}w~vx~}|}|}~~z~~|~~~~~~~~~~~}~~}|~}~}}}{|||{{z}~~|||}||~~|{{}~}~~}{{{}|{{{{~~}||~~~y}~v{vx}|||{}}~}}~}~~~~|}~}}}{{}}|z||}}}}|||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}{~~~~~~~}||}}|}}}}{|~~~~~~||}||}|}~{|{||||}|}|}|}|{{{|y{|{{}z}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~~}~|y|~}~}}~~}}~{{}}}|}|}}}}}}|}{}|}}~}~}}}}|{{{|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~~~~{~|}~~}}}~}}~}}||}}}}|}}}~}}~~|{{{||}|{z{{yzyyy{~
~~{zy{}}x|zr}{{}||~~}}
}~~|~~}|}}~}}}~~|}}|}}~~}~|}|{|}~||{|}zzyyyyz{~~
~~~z{y}}zzz}q~z{}}}}}zx
~}~~}~}~~~}~}}
}~}~~~}}||~~~}}}}|}||{|}{{{zzzz{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv}
~~}~~}~~~}~~|}}|~~~~}|}}{}~}||{||{{{|{||}}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||{|{|~
~~~~~~~~~z{z}}uqz|zqz~}yxtt
~~~~~}~}}}~~~~}}}~}~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}}~~~~~}}|}}~~~~}~~~}~
~~~}{z{z|{z
~~}~~~~}~}}z{|
{{sy{|pwuvwyutz
}}}~}~~}~|}}~~|z|z|{|~~}~~}}}~}}{{zx|vyz|qtxwvxury
|}}~}~~}|~~~~}}z{{||}}|}}~}}~~~}}}~}}}}}}z{{|v}yxzzruyyvwwsu
~~~}}}~~~~}||~~~~{{|||}~}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~}}}~|~~~
~~~
}}}|{||yz{z~y{yx~{|{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst
}~}~}~|~~}~~}~}~~}~~~||||zyvyyzyvyv~|{{{~}{}~}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}}}~||~~~~}~~~~}~~~~}~~}~~~|}||{|uyyxxxyw{|{{{
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~|~}~~~~}}~~~~~}}~~~|~~~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~||}~~}}|~~~~}|~~|}~}~~~
~}|{{{|yw{ywxwwx{{z{|
}{zwz|}}||}}}~|}~~}}}|}~~}}||{zz|{{zyzz{zxswuqqsoxwq{
~~}|~~}~~}}|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y|||{zzzzzzxsvupprowvr{
~}~}~~|~|~}~~~|}~~z}~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxzxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyytuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{wwy{|{}||||{}|}}}}|}|~~~~|z|}{}}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z||{zxxy|||}{||}}}||}}~}}}~~}{|||||{zy{{yysrunvrpxquv
~~~}~~}~}~~{}|}{||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|{}|{}~xwvyyz{}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~}}}|}z}{zvzxy{{|}}{|}}}}~|~~~}yy{zzzysrtowqwysw{
~~}|z||{w|yyy{z}~}||||}~~}~{{{z{ztpxqytvxtv{~
~||}|x|yzyz{}|{||}}}||{{{zzzupxwyvu|uv|
~
{}~|y|zzz}||}z||}}|z{~~~}}||}|vrwxxvtvu}
}
{||}zz{}}||z|~}|}}~~~~~|}~~~}||xvvw
~
}}||{||}}~~~}~|||}}~~~~}~~~}~}~}}~~|}
~
~}}||||~}}{|}}}}}~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uy~
}z}~{
}~~~}{}~~}|||}}}}|}}~}}|
h
j|{qq|sstt}usqspurstv{}uvy
hzrss|r~}}~~|}}}||||}}||~}~}}}
}p{pyv~nypus|vyyrpvxqvtturstvinrotvnulwmzsnzm}rsvsvmnwlpylu}~|~}}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoolw}xpqzprtfu~n{ysoy}~{~}~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyrioyxpkyszozwvvp~~z~}}~}~}}~~~~~
xyrz{pp
x
xyks~y{krz|mzyyt}vnoot|uwqy}}m~uo
zrr{|upozks|nv~~}}{}{|}}~}~~}~}~|}~~
}w
~~{|{~{|}~}|~}~~~~~~~}}}~|{|~||
}{{|~{||}~~||~}~}~~}}|}~~~~||}~{|||{{~
~|{}~{|{~~}||~}~~}~}}~~|}||~~|}|||}|||~z{{|~
{{~}|||~}|||}~|}|~}||}||||}|~}{|}|}|~|||zz||}
{}}|||~}||}|}{||{||}}{{{}|{~}{|}}|}}~}|zz{{||
zz
~|~||}}|}}|~{{{z{|||{{{~{{}{z{~||||}~}{z|z||
|
~~~~||}}{}}|~zz{y{|}{{{{~||||z{}||||~}|{{{{||
z{
}~||}}~}{~}|}yzzy{}}zz{{}|}||zz}||}|~~{{{|~}|
}|{
|~~}}|}~}~{~}||yzzyz}}yz{{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~|}~~~~}}~}{}{zyzzyz|}yz{{{z|{{{{|}}}|~}|||~|{
~}}{
~|}}}~~~~~}}{|{zyyzyz{|yzzz{{|z{{{|}}}}}}||}}|
~|~~
}~~~~~{||}}~}~~}}~{~{{zyzzyzz{yzzz{{|z{|{|~~}|}||}~
~~}|}~~
~}}~~|~~|~||~~|~}}|||{{zzzzy{y{zyzzz{|y{}{{~}}}}
~}~~~~}}~~~~~~
~~||~}|~}{~|}}}~}||}}{{zyzyy{yzzyzz{{{z{}}|~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌÌÌËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<C9;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;>BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937676=;>:=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi`dSXlHHHK@=78476::?;D<<:<<98:9:::;<::;9><>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA=366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖËËËËËÊÊÊËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÒÓÓÓÓÓÔÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9>CE?<;999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNG¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖËËÐÑÐÐÐÐÐÑÑÑÑÑÑÑÍÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×Ø×××ÚÛÚÚÚÚÚÚÚÛÜÛÛÜÙ××××××××ÖÖÖÖÖÖÓÒÒÓÓÓÓÓÓÔÕÔÔÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILN@99:4;@<7=9AC=@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMMF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖËÌ
²âÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¹´¡¿½½½½½½½¼¼¼¼»¿ÒÒÒÓÓÓÓÒÒÓÔÓÓÓÛâáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃrliNSbLLVM<::77>C?8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKPFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ËÌnPSSSSSTTTTTTL óëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¤XRSSSSSSSSSSSNz®ªªªªªªª©©©©¨°ÒÒÒÓÓÓÓÒÒÒÒÒÒÒßëêëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËwliJN_MRUM><<7;?C>6:7>?;=B@9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ËÌqUXWWWXXXXXXXQ¡ñééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¦\VWWWWWWWWWWWS}°««««««««ªªª©²ÒÒÒÒÒÒÒÒÒÒÒÒÒÑßêêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<<<;>::;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÌÍx^a````aaaaaaZ¤îççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©ª¢fabbbbbbbbbbb^
³¯¯¯¯¯¯¯¯¯¯¯®¶ÒÒÒÒÒÒÒÒÒÒÒÒÒÑßéééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9::=<;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÌÌÇÅÅÅÅÅÅÅÅÅÅÅÅÅÊÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÎÏÎÎÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÑÍÌÌÌÌÌÌÌÌÌËËËËÎÒÒÒÒÒÒÒÒÒÒÒÓÓÒÕÓÔÖÖÖÖÖÖÖÖÖÖÕ×ØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<7@A<=8:;898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÍÍÏÏÏÏÏÏÏÏÏÏÏÓÏÏÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÒÓÏÎÑÔÔÓÎÎÓÓÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖ×××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoVJ_cRQZKHAA<B==;:>><>?==?89:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎÒ«ÏÒÏÑ¥¢ÐÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==<=:<=B>BB@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÒ¶¥¤Ê¼¸µ³ ¢ªÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?><7:>9?D>@98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÏγ¦ÆÇÏÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>><<96?B?B:648:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÑ¿ µ£«Öº¢¯±ÒÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8E@?B:74:::9;;8;=?=>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÓ´ª»«¥±°³©ÔÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<=<964:98::97;?@<<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯Ê £¿Ê¥§ØªªÔÏÏÏÔ«~£¥§£ÕÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>9<97659:6:<;7<@@<::=:<?>=<9@<<::9?@==<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÔ¬§¢¨´ª ©
¥ÕÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CGDAA8;?<=;<<7558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÓ¶²²¥«ÏØÁ¼¦¯ÖÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF?HHFE@<<>><==<756:96:;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÄ¢§¡¨ºÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:7:;::;9==:::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸« ÇÕ¢«¤¸¤«£Ã «¤ÐÒÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKK@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÓÈ´Ù©¬×»ÔÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUij[L_MJLJULFB<<?FEGKI=667:979:;:<=9>99:8;=>>A>=9<<:=>>;=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÔÈÁÕÒÕÀ¿ÖÒÕÅÄÕÑÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??>>ADLLA>775:8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÑÓÔÒÒÒÔÕÓÓÓÔÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ==786977899;;=?@<<89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9599:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EIKAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDCI;AA;<886586987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFID<BA<;876797799=?A?<:9@?<>B?:8776=?@@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD88867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE><HF89757875898;>>=;89A>=@?A>7596;>AB??@@AB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCDECALH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HQA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELBA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<<DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAD?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8:87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
¼ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9768579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsnupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9886553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿½¾¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;;>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545659756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455588686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸¸·······¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPF>8;727967453588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@BD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³µµ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶······¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸···¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬«««¯°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899::;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©©¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶···¸·¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¥¥¥¥¦¨¨¨¨¨¥§¨¨§¨¨§¨¨©ª§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸·¶······¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::9:9<>::A<6=8378837;@??@@:BEC@BDCA?;;@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥¤¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¥§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§¦¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?A?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©«««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤¤£¢¢£¢¡ ¢¡¢£££¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@?BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡¤¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747578;=8::99;=;;89>6789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥£¢¡¡¡¡¢£¥§¦¦§¬«§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¦¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¦¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¦¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364689:89788:<;<9;;::67899>?@><=@>@:9@A?=A?>AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥£¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;989:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB?DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¤¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;=::;7768;<;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¦¦¥¤¦§¦¥¥¥¦¥¥£ ¡¡ ¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ xlcdbdQGA=C;KHD:;;<>9::9:737959888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢£¢£¤¤¦¦¥¤¤£¢¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::78:64795<968979<;;<::<;:<<8687>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££¤¤¤¤¢¡¡¡µ¡¡ ¢¡ ¢¡¢£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡ ¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¢¤¡¢¢¢¡ «¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¢¢¢¡ ¥³¬ ®jv ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>99;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ¡ ¦« ¨D ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9<<>98;9:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢ b¦¡£QH ¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:<>9?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¦f]£ ®uIL¡ ¡¡¡ ¡¢¡ }xjabb\Q<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq ¤Rx¢ ¤_VN¡£¥¢¡¢¢¡¡ ¢¡ ¡
wqgjd\\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢ [_£dZM¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[[LF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡]]v¢dYM¢ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡`a`tcUO¢¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;979:;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y i^[ej_PS¡¡}
£ª¡¢¤¢«±·´¹µ±´¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;6397:9>8::<=998;9;<:>=;@@;<B<@:847<;B@AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡ shaTv\VPW
¡§ ¤£ª©³¶±µ°¨ª¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥£¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v} £¤nLOc
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VQQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{ k¥_r
§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974869388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
~¢|nRuYq}|~}|¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¦ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=;?:8<999=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
}wXOLqK_pqw
¢±®©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~£T/0=xww@D]km¨®²°°µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWMO_^\NUUbQDTM;?9<895875795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
¡¡¢¦gB[H;xykgE18Zls ¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUJTOOJDPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ªª©§¢¥¨©«©©¯Jr¢yA|xdbQS]I`n¡¡¤¤§¤©«®¬¥¤¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdWOYKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®««¬¤¡¢¦©§¨£x`ÁÖ¥C|uOmvSd£¨§ ¢¡®¬«ª§®¨¥¤©©ª©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_VZNRNQOSe\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@DB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨§¦¨©§©©¤§§¤¥£¢b½À®x £eLaxmQt¢¢ ¡¡¡¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOXO^edlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤ ¢¡¢§¡¦®¦¦jº¨Ñ¢³¨XL¬Se ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvxb_\UYQUW[c_s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?B?:8:>?C@DA:;>=@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯««¬¨¨«¯©¨ª¨¢ ¡¨ª±²¯«¢¢w~}rÏÈ°§¯kUª°c[¥¥¢¡ ¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\U\hdocmiib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¡ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£ £ªª§¯··´µ¶³®nÌ»¤tTozsp}¦ª§¤ £¡¤¢§ £ ¡¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxjb[__\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>BE@=9;@A>C<;9?9@@@@CC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ «²·»»»¹¹Á¸´µ ydX¶½¦§wkqoxy{~£¥¦«¥¤¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__amhvkqhiibZSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°²´µ·ÁÆÌÏÎÌɾ³¤sfRD}xqngflilrrqrru}©ÄÄ»¢§ª¬§«©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YSaiaftotitdidb[LK>:9898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÄÇÃÅÇÛããÚ˼¯¤tYZQDixkntnkeeYW]X\cjjifaiµÁÀ¹©¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`b_^kcbnxuwom[bRV\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAA;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅƾÍÒÕʹ§r^QTKD[e^cjea`hYTXSVYZ]Y[u·¼¬´²³©®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklgnvrrvrg^`\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÄ¿ÂÁÇËÈ·ueUPOTH>^l^_eb`]daSUWVUUXs±ª¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|uklndomiqxoyjia]gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄù¸ÃaIDGKD=[ebbic`[c_WROPPV´º¬®¥¤£¨¤ ¥©´±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{wnkihvZgsxszgg^d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÄÄÂÄÁOFME;M[_eke_[`YYSNU£«¹µ²¬©£¡©¬§¬´´¿Ã¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyvvefjjh^kpnyxcba`^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÎÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈÇÂÆjXG??G^cbj`ZXWTVw·À»¼º¼¬¦©»º¹·¿³µ¸²Áƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««¬±££ £¢ £ }qtqocahvhjjunyl^d[V`YLHD6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÌÐÍÇÌÉÂÂÇÂËËÈÇÌÉÎÅÆƽ©rPK0XSUfaSNPq©ÈÈÂÄÇÀ¼¾´°°°Â¾¾ÁÆÀ¾·¶Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®¯µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r}xpg`kjwmifvotc]cUWUSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÃÿ¿¾ÄËÈÊËɼ¼ÈÇÉÍÈÃÈÉÉÅÅÂÃÂÁ¼?Ov~VLo¥ËÔŶ¿¿À¿º»½µ³³À¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyspfegdlebknoo_Y]WVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ãº¸¹¼¾ÁÇÁÆ»¹ÈÈÃÅÄÀÃÁÁÀÄÁ½¼Å§wkoªÉÈÇÑÁ¯½½¸¹»»¾·´°¹¾³¼¾±¹µ¸¼¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfaebacddjcgd[ZZ]YQOE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹¾ºº´À¸µ·²®º»·À·¼ÊÏÀº¿À¼»Å½ºÀÄ¿½¾¯se}ÑÅ¿¿É¿°Á¿º·»¾¹µ¸´¸¼´½¸µ´°³¼±··¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qdacchkggjfj^VVTYOSLF8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=96<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ¹¿»ÁÕ¸¿»ÃµºÇ¶µ¸º¼¸¹¶ª¤~É¿¿»Á¾¹Æ½Â¿¼Å¸¶·´¸¶¶»»¸¶´·ºµ³¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zyqmeegpjelhYYOKKKRJLHD9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹º»¿¼ÏÄw¨Ì½Ç·¹·¶´·¹³µ±½ÉÄJ{ʾ¿¾½¼¿ÈÃÅžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~}knqgqktfcn`\UHKKDJCCG?:;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼»À·ª¤®°¸»²½¾»Ä¶µ¸µ·¿¾Ä¼ÂÄÖ®t»ÈÏÂÀ¸®´´»½·¹±½ÃÊCuÍÿ¾½¼ÇÌÇÇÄǽµµ¶Á½»»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢rfljouoxdhc\cQKUHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£°¹½¼²¼¾¼Å¸±¸¹¼ÆÉÊÂÆÉÒqr«ÑÑÌÊĵº¿ÄȾ¾´¿ÀÀyRnËƾÁ¼¿ÃÌÊÇÅÆÀ¹½¼Ä¿¿¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tpmmtlmo`c_bbNIM?E@?DC;;::;:8;<:9<>::>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´»ÅÐú¾¼Ä¾·¼À¿ÉÏÇÈÊÊÂrs£ÌÌËÍÊÆÂÃËÎÁ¼¸½º²pcb»ÈÄÀÀ¿ÄÀÊÉÃÃÄùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{z{mmx|`qd\_`_TI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼·»»«Úþ¶¾À¾¾º¦©²¶Ã¿¥yuxÄÇËÈÁÃÀÀÉÊÁ¿»¹±¡}skÈÅÄ¿ÀÁ¿ËÇÃÀÈÀºÁ¿Ã³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsxthp^\_]ZRFEDMIAD=H;;59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯··²µ³·¹¼»¶»»Ä¹m¬Î½¶¹À¼¬}nhnmrsw|½¿ÆÀ¹À¼¾ÅĽ½¸±°}ÊÂü½¿¿Ãÿ¿Ç¼¼Âµ¬®´´¼¾¿ÎÍË·²¸··½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|wmu{qoj\`aZTQAFIGK@ECI<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹Àδv³½¶µÂ¥iZ^`MR[Znsw¸¸Âº³»·»½¿º»»®¤~ÀÄþ¼¿»»¸¶ÁµÁº °¬¯½À¹ÏÊÉñ°µ´´½º¾ºº»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶¼´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦{zsvvxnra_g][UJ=??GG=GCC9:5;99><<9:<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Âɨx ¯µjegVY`IIMPSlw¥°·¾¹²µ²»¹¼¶¹¾´¥¡p®ÉÄÀ½¿¹³®²¼º®Á~p¢«¦¬º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtwrm`db\^OIB?=IDFMD@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·¿Å«|v `TCXUGajVOEJ` ¬¯¶ºµ´²¬¼¹¸µ¸Á½°¢¥r¥Ë¿¹ºµ®¥¬³°©¤T¡¥¶´Á¶µ³¥§ª¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´¶¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wp|pvsod^hY]^SONB?JCAKJ@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸¸¿µxoNJ?dYBNwjNA]°µ³µ²´¯¬»º¸¶¹¿Ævªd§¿¸µ²±¤¦§¥I©¸«ªª¤©¤«®¯§°«¯±±±®®¯¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvtmvjl]\kU^\PNHDGMBGNG8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³··{XFANYJJXwcAS£¹³´²°±°¹¸¶»·º½¢²«£r«°©««£¨ ¤oJ{
¨£¢£«¯¡£©¨¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wryiutoeUbdX]ROMI@IRDNC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²¼ªiN@RxqPIIKfYER®»±¬³¯®¬¶¶²´µ¯©¦¦¨ ¨©¡§§zbnl{~¨¡º¤¥££ ¥ ¤¬¥¦¨¥¢££«¬³®©®®®§ª¨¬¡ª¨««¦¢£¦¢ ¥¢¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ª©¤©«¦©¬«¦¡x|vzcxmn]QiUPOGPMMCPRA?;>4::5;:=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢ª¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬¨½Â«¥¾iERQWIJ_IS`cb®µª²´®ª«¯°²³¥ ¢ £¤¨ µ~z{§ªª ¡¡£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ ¤ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£~|uv}nl|diVSdNJHGOSNKNH<E@=2@859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶¶º¹º··»®¨ ¡© ªÆ¿Ë¡PAsxOnKKbets`Z^p±¯®³µª¦¬¬£¢¢¤¤ÃÚú¶¡skz±«¡ §£¦¨£¦ªªª®§¨°¥£¤¦§¬¦¢¥¢¯¨®²«¦«ª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ |~wy|eyyabSVaIIKLSUJSQM9?A67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¤ÇÇWSId¤\e~or]Pkc[d_]k´°°¸¬¦¡¢¢ªáÝÕÕѹ¡uf`¼¡rª®«¦¢±££¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§¡ £±®²±´ª²®£¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvsime\S[ZMRKOOVMTMB7>C78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢«¤zUirvupcvvXWc`cgYXWf®¬¯§¢ ¡£½µ²¾ÃÄÁ±xlia´q·¸¶°§´¬¢£¯¥¤¦¡©¨®µ³²½¶¾°¬±®©ª´±°¨«¨³µ¸³¸²´¤ ¥ ¬¡¡¢¡ ¥¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xvjwu^m[RaIRVHFVWKCMH=KI8F<77;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©¨®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¢¡ ¤np`cXL[SZMLPXRHMMH¬ª©¥ ¬OZ£·¼¶¢nehir_ªº½¿ºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ·»¶«®±¹·¼¯³°µÁ¼·¾³³µ¢¬¢©©²©«¨§¨ª§ § ¨¨¥¥ª¢¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vrmiwmhn\X\CWNJGMHCFN=>L>4<:6:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©©ª ±¢·¤°¦£bW^e`WMQG>>?CC?>BQx©©ª¦ ¢£
¬fARZz£²·¨hahqp`Ǿ¿Â¿¶º»Àù½»¬®§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¸Â¾¸´»ÆĽü¸´ª³ª³´¯³®ª¯£¬¨·²£°¦¡£°±®°¤¥¯£¡ ¡¦¡¤ªª ¢ ¦¨¡¢¤££¡¤¦¢¤|trklurqhW\QFUHDJPI?EB4FH96<>7;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<<;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ }`^e`QGD<C>E<?96N~ª³§¤£¢ ¥¬¦xl¢¤lo{ja¦®¦fhy~³ÇÄÂÇÁÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÆÌÌÌÒǾ¿ÀþÇǸÄÊÉÄÁÇ¿º´º»µ»·°¶²«»²¯¼·À»º«¸«ª¸»µ¼®®¸£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢
~zrkdioxkeZ\FLMEDTMEBE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<@?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡~sjaWNE>IY|obB=\®¬ vrplo¤t|¢efyh|¢©ÁÍËÆÈÄÅÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÍÓÐÓÓÌÊÁÆÇÆÊÈÏÀÉÑÍÇÆÈƽÄÁ¿¿¿µ¾³¿ÀÃÃÇÅÈį¿¹²¸½ÄÂÁ»¼¼µ®§§®¨ ¢©¥ ¨«©£¤¤ £
yusebgrog^ZZDOMCFQIDCA55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>9;AA;;>786:;>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £kf]TID@?K¥ ²£yqqnjv¢±r¸Åb{
tq¡¥¥¸ÑÌÌÍÏÄÍÔÕØÑ×ÍÆÇÉÌÃÅÊÏÊÒ×Ò×ÒÕÖÓÔÈÌÇÌÍÊÓÍÎÓÍÆÉÊÊÂÇÌÇÉÉƿó³ÈÅËËËÏÇÊ¿¾¿½ÁÇÅÌÌÉÉÀÃÀ®°³¨¢ª£¦©¬¤¥¦
{ruvgcgvjeVXRDNG@IQC>B=:22A<E<78<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>9:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡cSLJDC?CR®Ñ½²¯¦ ¤¡}yqlebhrpr{
upmprm
iµ×jlvrxw¶ÔÓÒÏÒÃÐÓÖØÕÕÒËÉÎÐËÆÍÒÊÒÕ×ÙÖØÓÖØÍÒÊÏÑÌÏÑÍÓÐÀÉÈËÄÌÍÌÏÏÆÇȶÀËÀÒÍÌÐÇÊÉÀÄÃÈÏÍÐÑÏÍÊÈ͸·»¨¥«§£ª¥©¨¨}xsvpcaerc]R\JKGAFIJ?;A8>5586;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¥¥ ¢¢[I@ADAFQv²¯¦ wida____^__]alusponkpnsfl§µh|c_etpx§ÕÓÓÑÑÌÐÍÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐ××ØÒØÒ×ÙÕÖÌÏÏÉÍÒÌÎÑÀÇÄÉÇÏÎÑÑÒÈÌÍÀËÍÆÔÏÍÏÉÅËÇÇÉÌËÔÔÑÕÏÒÌÓ¹ű¥¨µ®¨¨«¥²¨°³¬¬
|zqstmacim_VQ`JJCECSN?<>43:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><?@=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¥®·¨«·×ÔÕÙÙÑÎп¼Ìɶ¾®§ª¨¡£¬gC8=>DXª¨}qecb__a__a`^``_`emppmjmosuh^YLZgbqxrjhÔÌÕÔÑÊÏÌÓÖÒÑÕÍÏÕÕÑÅÑÓÊÐÔÕÖÎÓÑØØØ×ËÈÎÄÊÏÍÊÌÀÉÁÉÊÎÏÐÌÐÎÎÌÏÐÈÌÐÑËÎËÃÊÈÊÍËÌÒÓÎÔÒÑÐÐʽȹ°®»¹µ«¶°¨¸³¿»±
zvopokadnpaX\[IFFDMYE;@=33<<87855;>@=9<<8<>9<@;@:=8?98:?<=8;>B::=<:A==<:6==?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÁ±©¬©¤²|HFB;V¡k^^^adb```````^`_^\bmrnmpprrvsgipqdXPQWXab\WK§ÐÉÒÒÎÆÎÌÍÔËÎÒÌÊÖÖÐÌÐÓËÌÐÑÓÊÎÑÕÒÕÖÊ¿ÊÂÆÍÃÈÊÃÍÄÆÉËËÏËÎÍÑÎÔÌÇÉÐÍÉÇËÆÇÂÆÊÌÎÑÑÇÐÏÎÎÌÐÅÇÁ¸¹½Ã½ù²²¾°»Ãõª¥¡yqrkmh``qhYXhVMGLIQQB;D?;68:8:;57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;776?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±Ç¸ÊÕÖÙÚÛØÌÌÏÈÖÕĵ¯´¨ xlopw|ebbb`]^acb`__`aa`_][]gqqopqmimuneqsrxpVONTywUnÁÀÃÎÎÇÅÇÍÊÑÇÊÍÍÅÐÒÏÍÌÔÊÇÊÎÏÇÇÏÒËÐÏźĿÆʽÃÇÉÎÅÃÈÀÇÎÈÄÍËÍÐÉÅÅÐÉÆÂÆÉÅ¿ÁÈÍÌÌÏÃÊÌÉÇÌÐÅÅÈ»ÇÃÉÉÂÏÁ½¼¿°ÁÉƹ½ª°²§¥¢£xoudk`^fqa[W`GIHGIMUG?J=64355==48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼¹ÌÌÆÐÕÕØÚÛØÐÉÏÏÑÓÈ·»»¤¶~g¢ª
}~s_[^]^`^`cdc_]\^_``_[Z\akrpmmhgijs_e|
hWZNV eº¶»ÇÅÁÃÀÃÈÉÈÈÉÇ¿ÄËÅÇÊÌÉÄÁÊÉÁÁËÏÄËÈ¿¹Á¼ÆȾÀÆÏËÄÀûÊÇÈ»ÉÆÅÊÁ¾ÂËÆÅľƾ½ÁÄÆÌÆż¿ÊÃÅÇÒÅÁÉÀÊÊÇÈÆÐÃÃÆîÄËÇÃÊ·¿¼º³©¬¤¥¬£¡¦£ |wsufj[anmZ\XRDLGCGDLDFS?54335@=3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¾¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÃ¾²°¶m^z|z
uxurp_Z[]``bcdded`[\^]^]_[YZ\anqmifgkhnr[mpoYK]^y¡m ±®À¹¹»¹¸ÀÁÁý½¸¼¾¸ÃÉÄƽÆÀ·»ÃÈ¿ÁÉ»¶»»Åÿ¼ÂÎÃƾ¾µÁ¾Ä»½Ç¼Ãºµ½ÆÄÂ÷À¶¶¿¿¼ÍĽ¶ºÈ»¿¾ÌÄÂÆÃÆÉÇÉÆÐÆÂÌȲÇÉÃÎÌÀÅÿ¼²·°²§¨¨¹°¥°ª¬zwxkeh`hodV^YJFJFHKAEBFJA9:658853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µ«·´²¡¦¢·ÅÂÄÈÎÒÊÊÊÇÍÍÎÑÈÐÆÕÔÕ×ÍÊÏÅÉÅÇÁºÅ½¬®§`cvx}{ttc\\]^``bcbbdeb]\[\^\^]Z[\]grokdciikvwf`h`Ffbwo^ª¨¢´±´³²²³»´»°¶¯³®±ºÁ»Àļ¿º´²º¾À¸Ç¸´¼¶À½¸½ÇÁûµ¯³µ»¿´Å¸»µ¬¹½¾À½±»¶°·º³Æ½·¯¼¿µ·µÅ½¾ÃÆÀÄÆÆÇÌÅ¿ÆÆ»ÇË¿ÏÉÇÃÆÁ÷ý½¶¹¾Ç¿¬µ»µ·¶ytxggebkn^V^`FKHHJGBDAEF?=:566633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÅËÍÈÅÈÍÌÐËÍÈÉÈÊÉÊÄÐÍÒÏÍÅÇÁÅÁ¿º¸É·«°[gozx~
vw|sh]]]]_`_`da^cec_^\[^\]^Z[[\_kolfcfhhjxpSend]Wb]LZ¦¢¦¨¯«©«¨²¬´¯±§¦«²»¹µÂ¹º¹°ª´¹»³Á¹¯À±½¼»µ»Ç¹Ã·ª¨°²À¶¸½°±¨²³µ»¼«®¶§®¶®¼²°ª¸°®»®»¸»ÀÁ¾ºÃ¿ÆÃÅÀ¼ÆÁÇʸÅÇÅ¿ÇÃùÄÆ»ÆÉÌ˳¹Â½»³tvwki`bliYWW[ALLMJEAC?FA:::996854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÄÏÇÍÁÂÆ¿ÄÄÃÃÊÂÉÊ¿À¼Âº³µµÃ®ª±[i~{x}
y{wn^]\\]_`__dcbdcb`_]Z[ZZ]ZZZZ\cmmfdddfglyYRhcEKZS>] ¦«¢¦¡ª¨«ª¯¢¥©¬´µ°¼¸¯·¯¨¸´³»·³¼¯¸¹µ²¼Á²À®¥©£«±³³¨½ª«¨«¬®µ´¦©®¡¥°©³¦§¨®¦¨·¬±³·º»»²¼¾¾¾Ä¿µÁÀÇÈ·¾¿Å·ÅÃÀ»¿Ä¾ÄÈÌÊ¿¿ÄÀÀ©stsji\aodWVXPHZSSKFFE>?@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃǹ¹ËÂ˾»É¶½Ã¾ºÊ·Áõ¶¼¶±¯µ¼©«cmz}~xt~|swe_]\\^_`^_ccab`a_]]\ZXY[[XWY\_ejdbcaddhnrBFEDDFSI^¥¡¡¤¤¦¥¬£¥¬²°¶¶§°«§ª´«³¹°µµ¶¹²°ºº±¶¤ ¤ ¦±¨¬©¹ª¥§§¨§³ §§¥¦¬§¤¡¡±¬²µ³´°µ¼¶»ÁÀ²»¾ÃÁ±¹¹Â³À½Àµ¸¼½¾¼ÂÇÄÃÄ¿ÀÄ yqlbf`ko`UY_HNhOTHFKF<=@=:;<826536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;>97776788666;::;9:;<859<:>>@;ȵ¶½¸ºÁº½¶ ¦º¶«³³»³ÄÏÉËŸ·ÇÀÌ¿¸Ê·»Å¸³Å¸³¿À¬¶¼²¬¦¯´¡£ir
|xusomjiipi_`]\\\^__acb````^\[\\XYXXXVXZ]^cb`cccbeemf35B=5GCn£¢¤¢¦¡ª®¬±´£¨©©«¬¤´¸¬¶¯¬²´®³µ¯°ª¤¢²¥¦ª¸¢¦¦¨« ¥£°©¬¨ª«¬°³¹¯¸¹º°¶¼»º«³²¹³½´·²±¶µ¿µ½À½Ã»»½{sl_e^ddXTW^IW]KPGJJGA<??A;?<05636:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»¸ÁÁÁ´¤¤¤¦À²¯¶¬´·ÅÏÈÈÀÆ»»ÃÃϾ¹È¸¸¿·²Â´±»»¬ºº±¢©«§m~
xrmomkb^bff]]^]]]\]_`abccba_\[[ZZYXWWWWWXWZ]abccbbcdeqR1:4/8B^c¥£¥¡£¬®± ¤¢«§¡µ°±±¬¨¯²§º³§¶¡¢£¡£¢ª¶ª¢£¦¦¦£ ¡¬¨£¤¦«³³ªµ°²«²¹´¯ª¯²²³·³®©®²¸°º¶º½¿·³±zvf_f_[YVSZUK[QLJEHKIC=?BB@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ¸½¿¶¾¼¿²¥£¥±Ãµ¶½´¸ÂÌÈÆÀŶÁÀÇηÀý³¹¹²¿¶±¹»²µ¯£ª¡xxoqtqhfdiec\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWUW`bcaab``dgpPQ?,1+$:k¥§¢¦ª¦®°©¢¢·©¡ ®¨µª¦§°¤·°¤· £ª¦¡¹°£¡¤¢ ¡©ª¤¢£ªª±¨´¬ª§³°¥«®³±¯°¯¯§¨¨²®²´°¼´º¸®£zwe_aWYXSRTKM^LPLGHMLE=@>=B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾·½§§¢ª»À½À¹®´¸ÁÌÇÅÂýŸÈ̲ÁÂÁ®¼»µ»¼µ¹¹°°±ª¡©|wqilrtphhedfa\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWVUZbba`a__`bhphJ1"&JI¤£¡¤¥¥ª®¥ ¢¶§¡¡¢¨³¢¥§¥¯¥±®«µ¡©¡¢±±££ §§¢¢¤¥¥«¤¥°§¥£«¬¦©®¯¯«¨ªª³¦¦«¯´±®¼¶±¯¯{xseb\[]XNLQHRaMVPOJNOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847763321./2556;:8;7876<;:;;A8x»»±µ½°»±·¬¥¦¬¸»¼Áź²¹µÄÉÉÀÂÆÅǶÆijÁ¿Å«··½¶½º»µ²¬¨£t~vncafihfgifil`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWTTVVRTRT__]^_\]^_ajiG:4/:i|p¢©£¢¢¡¢¡¨ª££°©¡ ¤ª¨¢¬¬ª©®¢¢¢¢«©°¢¡£¥¡¢ ¢¤¥£«¥¢¤ª¤«¥®²©¦¥§¦µ¦ª¨³µ´¹º¯ª¬sqp`[WVVRGQOHZ\ORJTKSLEGJC8;;=<8667:9;:976977:;:=<<7;<8>598:88659:;<97?<9678452121..1426:8698598989;9@9{µ´¬´»²°«±¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÉÌȵɼ±¾Ãɱ¸Áµ¼À¼´µª¬¦r{tiiilgjlmkjle]\\[[\ZXZ][[^``\XXZYXWXWTUVUTUURSNPY\[[\\\]\_bkK5BBR}w{¤¥§¥©¥¨¥¡¤¬¢¤¨®ª³¥¦££¡©©¡ ¡ ££¡£¡¢¨£¢¨« «°¤®¸¥£¤£¬ª¨«¯´·²½µ³«®
uti[YYSURFXLQ[XMUOPLQRIOJB=??A?=75799<<977:79:;<=>;7;;:=68:;8976989:6:=99577571141-+/434988::8::748=8?9~³§³·®¨¨¯®©¨¬·¶¬¼Ê»¶¿¬ÌÆŸÀÎÏdzĻ·»Âȱ¸¿·¼¾»³¶¦© ztvwnmhmmmpggifd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNOQXYYY\[Z[]^fcUXlm|z§¥£«©¦®£¦ª£§¥§ª¥ ¨ª¥ ¡¤¡¢¥¥§©¨ °°¦±½§£¬´ª®§¯´°¹µÀ±®°«~rtcVTUNQJGVPRRLLXNKLOSGNKACFEC>B75889;9:7::7<=:;?>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8´¬¦±·ª¥¢±«ª§©²°¤¶Æ´¹º³ÊŹºÁËÐʱ·¸¼½Àñ°±·®´´»³´££vkglnqnqjokdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVTQMNMRWXYXXWZ[[`jpjpew}x}¤§¤¤©¥£¡
£¢¢¥§¡ ¢¢¦¤§©§¡ ´²¨³¸¡£¶¬ª®¤²²¦µ»´«¬±¢zsn^NQQMODNNNPKFNNJJNNQHMJAHLIHC>958889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12876:999984988A7w¶§¤¶°¤§¤ª¥ ©¦¤³ª¢²Äµµ²³ÆÅ·ºÃÊÌƳº½´¸À¯®©°¦®»¯ |n__frpuqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQNMKKSWWVWWWWZ]ag_c^rxs|t}¡¡¤s}{ £
~~tz££ ¡¤¤¢´¯¬°¦¸¦¥°¡±®±¼ª©¯©xtdVMRPPMCSNLPMBPQHINSNIJJEKMGKK>849888;;69;7:<9::;79?9>@79:<89764445874312485/0102)(,-02764789::66:87A7x·¡£´¨¦¥¨£¥¥¦¦¦²§¦´Á¸¯´°Éĸ¹ÀÎƾ³¬ºÁ¬Ä¨¢¦¦·£ ~xfWV_gfighnciigb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTQMMJGNSSSTTSUYZ]h\^[lumiGRk|_;Wo{ry{}xqp}¡ §®©©©³¢¥«¨´£©£tn`[NSRWLDTJPMLFNOIELQMKPJINPGJJ=7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· ¢¡¦¦ª ¦©§£ª°¨§´Â¹°µ°Ç¸³½Ï¿¹¯®µÂ§ªÄª¢±£~sv]PLQUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MNQMKHFHNQQLORTUXYacZVhpeH;:{x
x`JQnw~m~wuvxpQ|~yvgw~
¤¢¨©¥¤°ª¡¤¤¦ª¢ª¡¦§wnf^\HQQSMIUMRILKOIHFJNMMUKQRPGJD=768:8:;;8:;8>?99>=8;<6;;478;7775344696/3/.115221/,')+*,4833989:99::::?9w¶¢§¡®¡§¨¥§¨¯¬ªµ¼¶¸·³Á»¶§¹È¸¶¨¨µ¶ª²¼§©~xqoXMKMNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDCINOhYOQSSUZhf\dm\]SMoy|xz~txrnuptz~«
z{hv{prmxx{{wsrxhu
||© ¡ ©¥§¤ ¤sib]]JWPRHKXROJMLRJJJLPILQMRUMFIB=78;99>=:;<98@?::><7==79947785675251472/2.,./200/-+(().12721987:8775:<;7v®£¡´©¯ª¥«°±ª½´²»¸¶º´±·º²ª¬©¨²¯¢wx|vpojYKHIHGEHHPTTTWVSUUUUVWXWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LNQQSV^hmihYkvbt{ru{
zp
zvznk~|tz|tfu|lohs|mzq}qmvqhq~pD
wwz}{u}£¡¥xongc[XXUQJSUTOPNPVKNKOOJQOIOPLFD=;79;::?=9<:99??;8;=7<9999266856633611224.,,-..-0-+*''*.1362/876966527995y¦ ¦°¬®«§©°¯±«»¸«»¾¸³¬§°§¬¥©¥¡yvq|muqjmjXKFGEA@CDHLLMQROQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zYJNOQTX]agc^| ½|nr^vsjwt
wznkwsxijq}Ingw~mjdly
ksl|nr|imps
{~{wpttyyp|pjoooYVXTRRYORUTRXUMOHMKMOKCINGF@:99;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¤¬¯¢ª¨µ¯®¬³¿«¼Ã¿¦¢¤¡¡szuotlqmekkYNDFC@<>>AFFGKKKLORRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORVZQWXW~[blr`yki{v
s
rkrr{ijLy
f1vrk}}tfeu
filukp|hqq|n{t~}qqoumwyujyyxlkpheXR[XYY[NPUVYXNIHEJJHGB@GECG=998;9:9<:9;:::@<9:<98>787715234533645031.**+),,++)(+'),,226,,4775478iO8;5m¤¨±§º¯«²°Â±»ÃÇ
zqtzpsqopdpg_TFIC?<;9:?@ADCEGIKOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQUKAIPH_©jtqgxhm~}~wwprwrt5p¨ ¡¢
vp{|t®hgbjnrmpuioXupvm{}nrnp{svnbu
ux~}|srqm`\]^\ZYa_RN[ZXWLHIFIH?CABH?CD=;:7=;:;;9:99;9?<88=:8;66650121253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥´©®°®Á²»ÁÅ|nul|uxxmxnwdj^IPG>?7448;:;=>@BEHLLLLNPQSTUVWXZXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRRCH~mxutpyhrxz|{tx}
aªzw~t{]dqtz|wmhjbyo
zoxu
zptzxkni]v}|
}q}vw{|xqtugh`[\^S\g^WQTX[UGJJELG?F@DC>AA=;97<;;=<::99;;=>79>9985654244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¥ « ±¨¯À²»Äºzvk}xs }}p~zhwkRXL@E211376688:<>AEFFGIKMOQRSTUWVVVTSPMF@:2= #c[5311i?GoIFIKMOQKJT[WPHb{ttvmxvy
{u¥¬©H¯®©tm|~hghyn
qHlwryvhmk_v}yzuv|xmow~uusm\^^\cdXge\UPPWYPDLKFOICFCCA@CA=978:::;;:888::?>6;>7595773344236656778;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|}
¬ ¦¸¯³½³}tp~~}}~¤
x~sx_cWKB60./23123668:=>?BEGHJLNQSTUTTVUSQOGC?80,#[??94.]ps£UFIKLMOW`WlXZ[d~{~|{
~¥»±¦ºÇç¡¥|qw
ihptrw{v|mvuf ª¢zyyogkx~|ule^[[^j^bg`ZOLNWRQHPJDNGCJDC@DCA<:87=<:<:88778:==8<=68756623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfwz¤¡¬¦ª®°¡xw|lpj]B@4--//./02234779;=?BDHINQRTRSSTRPOHEB<87/9C><<63.lMPHJLKJMV_a{edio ¨£¢ª¨µ¡§ÁÂǯx¹|¡
¡
lpuwqm
r ¤´¨¢}kjj|uc_e`[hl^ll^WKHNRPNLLFIPCDNFBCEFC>:96=<:;:987767;:6=:785456344566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYoouqv~§ ©ge¤~y}
xx~gMR>/..,/.-/000212467;?CENORTPPQSQNPIED>;<:DF?><852<?R5HHHLKMNR^kyp}x ¥¥¨¦ª¨©´«¾«µÇȶÈÐϾ pi«©
¦£xz~¡{wª²|£¡¥µ¯§lss}~sja^b`bhd`hg\REJKONIILFGMCHLFFCBGEB;85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppt`m}aw}{ªªBD}x|
w^bP460-2/,.0/./..0015>AAMQRSQRSURNSLEE@<>=FG@A@8662<9;FHGIJMNQYkt
¡·³ ©¨©¤¦±©®´¯¯«¹°²½²Ã«¹É˷ÿ·¥¢°³¬ª£¥¦ £¦¢ª¨¥
¤¡¡ª ¤¨±£¦·º ¢¯¢¡¢¡«®«²´¡¤©yz~ibi]fc_ed^gg_[OCIHSNFHKFJGFFHAKFDFFB;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLhbWinXzv
ÚÈsV|z
qna@E64<3/110-,+-0.-4?CAMUPRSUUVUN[PGHD<>>FHCDA8;<5C;=FKIFHQNPW¨ª£ªºÂ¿§°Â´ª±¾±¶»³½³Àµ»º¢¸Å¨µÈǵ½¸´¨£´°±§¯«¥v¤¡¬²´ª®¨¯¶º²º¬°µ¢±¬±µ»¶´´¦§¢¦¨¯¬±¸·¸¦µ¨¤x
x[ceWgcbdaag`[TJDDLTPHIIDIGEA@@KDBMG=867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AFWQJL[YQbbWyuq}u
{¿»£¼´yzxn]W@EN<6:45AB764//6CHBQ[OQUWU\WP_UIKKA?>GKFED;>@7D7?BJJEFVSP^ ª ®®»¯²»Èų¹Ã»²²¿µ¶À³½¯¶t°³¥ºÄ£¯Æ¸°³±³§¤µ¶ª± ¢¢¥°®¦«§¤¡´»¢¨²ºµ¼¿Ì¿ÅŽ½³Á·º·¾¶º·¸««°¤¯¨¬½¯¼ºÁÁ«¹§©~~mXdbYlfkfX\cYVSIGFLPGCHIAHD>?BBL@?MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALQVSXUZvjp~nzsxb¹¡£{z||}wzueP\dGEL;Qca[^SF?;HPEZcQQYXZgYT`_LSPEA?IJHEEA@D<E6B>HGJLSZT]«³±·³Ä¹¶¹ÇʹºÀ»¶´º¹µ¼³¹±Å`t±¤±ª½©¥¨«ª£¢²µ¡«¨ ®¥§¦¥¤£§±´¨²³½¶Â¾ÓÉÉÓÆÃÅÌÂÊÃÀ½¼¾»»¶´¯¸¶¶Â¹Å½Âǯ¸©¡«¤§µtacc_Xc`jgSX`VRUIEEMJA>GD=KA=B@=G>;H@796379>489:57045/26389374426?8@>GKRTSQPOQQPJA9/,,,*+((,-+/P>(.48}<2Kq9>CKE@IMPRKQ]glkp
slrrsÕÀµ }~x{{y~s}zkfpuY^\Pedb`ed][XW\MdmURmm_n_XgdTYUJDBKKIFHHHHBI:D?HKSTU\Z[¶½µ»³Â¼·¶Èɸµºµ·¸²¶³²µ¶du§p^¢¬ ¢¤ª¥¨¦ ¤¥ª°¸°½¹ÔÑÏ×ÐÊÌÒÌÏÍÊÆ¿¾ÁɼÀ¼ÀÀÄÄÄɾÇͲ£º°´®«·»|m_b^Z`cZdcQ[`SPKCAEFE<@F?AHB?C=:E>=J?47535;=468977022/24169775555D3ELM>51/006:477@IOI;-&**(-./,@M+/54mI0Ht?>BD@CDFKODQ[Yh_onlotu´¬¡¡~|s{
{ts{ylmu{hreilifjji`fiilZms¤¼g\og]ZZTHKNPJKPKSQILAJFJO_^afiaµÄ®¶°¹º³¯ÂÅ´®¸°°»«²°¥ª·«µ§§M¦¥¡§¬¯¨°¨´´ÔÔÔÖÓÌÐÓÕÍÒÏÌÄÁÉнÉÉÊÉÑÆÌÍÂÏÑ·¯Ã¼Ã¹¤µ¹Á¢qe^__ZbYZgZQ]XOPBBHEBH;@C>AG??A7;C>@H=46655;:687654/10146278875367C5B8?-0-1349=97,.,1;FK=),(.0007K?-46TW0DwC;B>EBACJM?UYReVsgqoyy¡ª¦}
|p{r}qxulqx~qzmxsmipmcimpxiw|~˾Áߧmcxnc[b`JPRUNY^O]\NPNTPTT\nmvq¬¶«²¥¯´©«»¿°ª´¦¤¸¦««´£°¦«¬¥¨¢¬ÏÒÕÒÎÌÓÔÔÐÔÑÎÇÃÔÑÆÍÒÓÓ×ÌÑÑÄÒÖÅÁÎÇǨ½·Î|qh`e_XbS_[PQTQOH>@FABE<@A>DC>??:==<<JA45465<888664412/03526768533;=<E=@11+/249>5901022-2DN3)/3.32=N238C}_2AtD:==I>@CFH<UQMNZu
wlwp}~¡¡
y
~{q~zu
ovrks}{w{sxrksrioqzyqz¾Ë}±vrvhak]CZZ[VecXdjSX\]`c]cwz}©£¤ §¥ª¯¸ª¥³¢¡¡£¡¦±¦j¢~¨°¢¡¡¥¤©ÉÍÏÈÂÌÑÔÒÔÒÎÓÍÆÖÒÌÔØÖÖØÔ×ÕÉÔÚÍÉ××ÑʬÃÂËuqebaZVZT\QKGJJJ@;:;DAD<BC>GB>BB:<9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/--;R017/532FD28>nb5=tM99@I<AD?A;OLFJXpu}hsxr
x~xs{}wznwpmuux}t
|ymvtn}vtx{µ;AÅ¥~|ieWICfcecgjcmw[^fhknhn ££¥±£¤²¡¥ ¨¢±
y©£~«³¨§¾Ãƹ¶ÆÎÒÑÒÐÌÒËÈÔÎÐÕÚ××ØÔÙØÍØÛÎÉÙÚÑÕ¾Ê˵zypg_[TWR\WFGJIEE=:7:@@B9GD?DCACB;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BS39254/7K75<`bA<svV87AH:?C><9QECJTknnpbpqt|~|x
zyqz{
uy
yp|oozq{qnzuw}|t~|¯sX©Â¶pmb=^hrpqpnxvehoruxqz © «¡¤«|
~lz|®ª§¯¶½©¾ÇÌÉÉÌËÐÉÃÒÊÔ×Ø×Ø×ÕÛ×ÓÚÛÕÐÚÚÑÖÈÔË|~kk]\QUTaICFIH>A>=7:=?;=G<?AAADA>?:87DB755479/556435532323647553458EBDCEB56<FNSM[nfcnskaV>,4LG865434BF4=W_hLux^8;?F<<B<99D>CGRj^mdbfkvqz~~{|~
wyn{{ty vusu}soou|
zv{·Å¤ÁɸwpeNfczw¢xyv{{vm¤¢«
z}¡¼¡©¦¦®¨¶¿ÀÁ¹ÈÊÎÎÅÍÉÑÖÕÕÙÕ×ÛÔÖÙÚÛ×ÚÚÙØÎÛÆ}|jlhbVYWWNLENC;==<8:;=9=@6=??<>==9867CA6455=80665547745613854564557HH=DJE7925;H>;9:7IP][SUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Xea][htzylwvz{~~|z~
y{u}tm|}~s~{~x~xnt~{~z©Ã¡½¤}}r~s¦
{hGq ¤ ~¥
¥¸¢§¡¤¯·ºµ¬ÀÆÊÐÈÇÌÏÓÓÒØÓÕ×À×ØÙÛØÚÚÙÙ×Û¸{|{nlhZb]TPOIDLB<<>99;:99;<6?=><=99;;37D@8378>60688357<37804976755546FP5DNI8938AK=;3C@I<:DWN<MTHN?96333>C;[X>5YypZ<<A<=>8689?=CQSRX^UXfmmmiqry{z|{z|{}t
yszsm~~w
¢n¨
z¡|}£¢ ¤¯
Wr«\¢¢¢ ¤
³¡¢¨²¸¦½ÂÇÍÈÆÏÍÐÌÏ×ÑÑÕ®ÖÕØÚØÚÚ×ÕÙÙ rwji_`ZUYYCAIC?>>:48:;7:;:3;;?=>7;::1:G=:37=@50677255?65;55858:57735HR7GOK994=EJB>1FCLB:8:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcbzma~omwxyz||{wsp
zuwvt~¦¤¥¢¨s²¨
¢£©°n·
ÄȲ¡¥²d¤ÍÈ
ª¢¢¤¨¡£³´¦£¼Â¾ÇÆÅÉÈÉÂËÓÍÍÔ©ÒÑÖÖÖØÚÔÒÚÎ
ukga``QKV\BBGC;A=837;<:9=649:<:82?992:I:>67BC32:96264>=4;>6949;57944JQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBeGu||m~xz~z~vv{ln~y|wx|~£´¨¤«³¡§ ¥¤¯¢¸³¡ ¤¯¢¤§©°¤ À£É¸«¢¥²
¨¢
s²£¡} ¡±£¤¸¿´ÄÇĽÃÿÆÎÊÉÒ§ÏÌÓÑÐÖØÒÏؼu}y`cWcXRIKOEBCD5>;76:?;<7=42669774=5;5<L<>;<BA75<;5277?@6??784987;<55OMDPRL8@=EAGA5:IENED:6A@BS>9DO323575=v\<R\tiZM]S<=89567=:JFDGM\\YJha;Hzzm
y|x
}px|}|orz}{x¨¼©³½°¥®³³©£¢°µ£¹¥¤©·¦¤£©ª¤¯±ª »»Ê¡i¶·ª°¢«½¤^©²||
´ª¢¡ ¦®¨¢¤³¸«ÂÈĶº½¼ÅÈÈÂСÆÉÍÍÄ×ÖÐÊÓ£s}l`]VbTQGD><CAA8?874>F<<6<35355454B39:BM:A;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPfHa`bpJ@r|u~m}||~pww{«ÃÀ°½Æ¼³´Á¼´¬«³¶¨²®½«»£¨¹¸«¦¦¢¢¤£ª¯²±ª£¢¦¥£¹¯¨¿¼¬²¹¥£§}½°y§±ª £¬ §§¤¢¤°³¦ÀÆ𰻶ÅÅÿͧÇÃÇüÕÐÌÄÊwve_]b^OLCL@EG?A?B<:4>A==5=6>333241A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EJHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\hF_ig[]\{uo~{~q~zz¨´ÇÉÀÂÌÂùǼº¯«¹»²¶¹²Á®¥À¤«°¼¼ª®«££§¬¯µ±© ª¢°´§£ººµÁ»«¨²¤¤¨©ÄĤy ¥ ®©¡ ² ¡¤ §¤¦§¤¯¥¿Ã®¨·µÉþ¶Î²Ä¾Ã»³ÑÉÈÁµx|p_[_mTNIDLLLJ@A=BD<5AD;:3=8B332263A15IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBg\Me\fTcjyr{wy¡¨º¾ÉÈÊÂÒÉËÂͽÁ³¼¿§º¿½¼Ä¸¬Á©³¼½ª°ª¤¥£¬®´®·µ ®¦¢£´½©¨¼Á£¶¶¯«°¬ª¬ª§¥¤uy¢¡©¤|¢ ¢µ¦ ¥¤£¥¦¥£¨¨¢²¨»Àį¥³·ÌÀº®Ã³»½Á¹ÂÂÁ¿q|d[Z_^LMNKGECHAAADK:4DH:;4<7F.12352A26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQF7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>lI_XaZdeXx
~¡§¤Ã¾ÉÄÈÆÓÍÎÍ˼·°º½´½Ë»Ä¶¶¼´¿¹¼®¯¨¡©¨¶®®©²·¬¢¨¢«··ª¥¯¾Ä±½¹³§ª´³¥¨ ±Å§||©¤ ¡¡Z¤f£³¥¢¬¬§¦¡£¨¦µ«©º»Ã´¦´µËÁ¸ª¶¬³»¸®¨¸º¼·pq][VWPGKTNK?AGDDHFF85FM;>7>AK.32025B55PWN<LFKRLOGGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|hV<>@BFBsFiIRfdMF¦¡¨¥¢¯¾®¡Ç¾ÆÅÈÇÎÎÏÒʾ»¶±»»¼¿Ï¶Ä¾·¹·³²µ³¸³¬§«¬¹«©¨°°£®¥¨¤¥µÁ°«´¾Ã¹À¹³§¸´·²¯¤°¯¥ sÁ}°¤¢¨¡_J¤T°¯¥¯¯¦¡¦¦¡´©ª³¼¼»«°²ÇÀ¸¦¬«±±£¡²²´¥srh_]QRLFQQPQ;HJHFGAC=9KT?A:=EM/7534:B44NWN<JKOUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@CAF3>58JKCA=C;5EA:A?>H@5*B52,>c]g:35tde@R7}hX<:BC@=REWStbVFH«¡¨®§
£¤µÉµ©Ç¼ÄÄÉËÉÈÌÎǾº³¯º¸ÀÁ͵ȻÁ¹¶º²¯¯³´§¤«´µ«ª¦®¬¤¦¥©¬º¿¨«··¾ÁÀ¾·²²Ã°·½¬£®µº¦¥u¾® ¨¦© ¦mu¢¢®²¢«©ªª¯¦¥¡¥ª¢°§©ªº·¾³²®¾¹¶ £§¨¥¦©©ficbTMMGIOJUL=LDMIJ@CD<QU<AABDO18=77?B75UXN?HNQXRPQTJQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CC:9C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW<:=..SaMVH~e^HF¬¡»®ªª¢££¤¶Ç½´Á»ÂÂÈÉÅÂÎȽ¹²¯¹µÀÃʶƲÁ¼µ»¬©±££ªµ»¦ª§¬ª¨¯¨¤«ª¾»¨½´·¾Ç¼¶µ¸À°½¿³©µ·¬¿¥¢¡¼ ¶¨¥¢ §¤± ¥§©¤¡¢ µ°¥¦±««¥¤ª ©¥¡¡³´»¶¨µ²²£¥ª¡xd_a`LIFHNQINEFFBQJH@DGAVSDH<AGQ1;B7:BF79]YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:h]FDCpbGD¨¤Ã¬¤¨ª¨¦¬¢«·Å¼¿¸ÁÂÀÈÄ¿ÍÆ»¾¹²°¹´¾ÃȶÀ°¼¶º·§¤«¬¡¡««Ä¢¥¨¬¦«¯¢ª¨¾¸¦¾°··Ç·´¸¸¾±¾À¶´²µ¯¾££¡¡¤¢¢¾¤¨¨« ¥¼¢£¡¨ª ¤ ¶¬¦³§°¨ «¢¡¥¥«±¶²ª¥ª¬ ©if\b^PJHKOLHEDI@=OH@;FIH[RPK=HNU4BF8>HG5Cb[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0--0Mv\4KZ5,MnW<-=)#zbQ5CKQ9oRF<KxfcXN¢£Å« «¢¤¦ª«¶±£ª³¶ÅýÀ¶¿Á¼É¿Êȶ¸µ´±´´·ÂÆ·¿±¹µº¶ §¬«¬ ¥¤Á¥¡ª® ¤©°¢¦¨½µ¥±¼·¶¶Ã²²·º¾²ÃÀ¸¸´´µ£¤ ¬¡¨¨ª¢Â¬¨«¥½¡¤«««¥ X¦¡ ¹ª§·£³¢¡°¡ ¢£¥®²¬©¢¢¥¤¤cg\eaMJKKOFEAGK>=IA99JJN]QQI=LV]9FI=DMI8Hc\KCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+waS6SZkWsHE6=ue\LP 礢³ ±§ª££©¬»±©¬µ±ÈÄÁóÂýÇĽÄʽ°±¶®±µ°Àŵº±±º¶©°ªª¦¡§Â±©¢®±ª¤¨½·¦µ»½¯·Ä³³Â¿²Æ³º·«´¶ª¢¦¢«¡§ª®®¯»±¥©©¢£· ¡£®®«¤¥¡£¨µ§§µ£¯ °¡¢ ¡¦¬°¥§¢
dh]hfKJLKSAC@IG;;F>89NMU_RSJ>O^^=HPBMLI8Nd]LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<w]^?[U_gr@8<HweA4¤ §£©± £´©±«¦¢¤²¬©»²°µ´Ç¿Äõ¿Ä¾ÊŶÀɵ¬µ©°¹¬ÀÄ´¸¯¶º¥«²¬«¡§»´¨°¬®´²§ªº²¦¸³¸²¹Áª·²Ã½´Å§¾®·µ©§¬¡¥£¡¡¤®·±´¶¨¤£ ¶¢¤¥±±¥¨¤¡¨ ¢¯³¢¦¯¥¬§ ©©«¡§¡zek^lkNQNNT=CANC;:I?77QN]_RVQBW`]BJSHVKH:Td]NFON[W[RPQX]GAB[PBG>NC9HGHNP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1\cZ33906p[bH05JqjVCWFyfC;¤¤ ¥¿¦¨®® ©µª·¯«£ª´¶°°¸·°·¸¸Å½Ãǽ¼ÃÂÈÁºÁÆÁºª¶¥»Áø¸ª²¼£°®³¦¨ª¹ª¡§°ª ¯´³ªª¶µ¬º«³²º·¬¸°Áº½¿¦Ãª°¶®©««¦ª ¡ °®³ª°¸©¦ ¶¨¥¢¢¯°³«±§«¥¡£´°¦¡©¤¢©©§£~linbnnXQQZTACDU@;;H@7:XPd^QWWEY_^NLSO_LJ>Zd^NIQN[UYPKSWZI?DXPDF>N?=IGGQPB=CFBM?:2D?77547?=95E4+75/251.-.,1>*'+=\p=>1.1e[d@1747gYaF(@8m}h\V:{cC=¨¡©¼ ª¯ª¢°·©¥´²«¡µ½¯³¸¼»½··Á¿ÉùÄÃÁÀ¹Å½Á¸¯¶¨«·²¼¿¿´ª¯²¸«©®©©§»¥³«¢±°³¬ªµ³µ»¬¯±µ¬°µ²ÀºÅ¶«¼¯±·¬ª£±¥¥¨£²©²©©²§¦¤´®§¢¬¬°§²«±©¢¨¤¡¨¶©¡ ®¡¦¦£ {gmrhqs`GYfVDCMXDZ9HB6>]Qh\OZ]G[^^OMSXdJKC\c`PLMNXWXPJVVWL=EUJEDAM?AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,+%2+*5K1.'__aV151=`V_8)C3YU\gK5zfL@¥¤«¶£¬¨¤®µ©¯³¹¦§°·Æ·±·¿Á¶µºÅ¾ÌŹÃÁºÀºÅ¸Áº³´¬ªº¸»º¾µ«¯±·¨««¬®««½«®±£ª±³®®µ±¹·ª¯²¨¶¯³º¼É³ªµµ±´°¯§¡³¨¬ ¥±¢ ¥¯¢¤¢¥§²©¡¦±«©´¥®¯³®£§¬¸¢¡®¡¥££ {
{lnyov}bF`jZIHZ[={JGE6AcTi[M\aK\\ZRRRbaLKE`aaQMIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`Va.5(C^Q\.+A/JGP[G3cXTLE°¨±©¬¤£®µ¨·³·£¬´·É»µ»»À¾µ´·ÃÀÌǼý·¿¿Á¸À½²½®¨º¹¸·Â·¬®±º§®¬¨¤²©¯»¤¬²²¦§£²´±²±µ°·³©®¬²§¸¯µ³ÄŶ©µµ«°®ª§£¶¦° £°§©©¢¥¥¤·§¢°³«§°§¯´¬¤¡¬¨ª¹¢¨¤¡
¨¥¡w|nqxv|]Lel\KOd]?b{GI8GhWe[M^bMYYWUXUj]OPHa^_PKGQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANHg27'FaLV%-B.=ELQ<3rjLED¤¤¬ª¦¢°±²ª·°µ«µ¹É¹®Á¼Ã¸³²µÂÃÎÄÀ¾µ¾ÀÀ»¿½´Ä©ª¹±¶·À¼¯¬´´¡§±®¥¦±¥²µ¬ª²°«¨¨µº¬µ²µ«´ª«©¬©¹²°Ç¿¸¥¹°©¦¨±¥¤£®£¨¯¢¢¢£¬£ ¡©¦¥¸¤«´´¤ª«©¬®µ®¢£¨« ¤µ£¡£§ x~
}|}rts~~]Scn^NZg]FD[G:MnXa[NabNVVVWUYh^QSMcZ[TKFOTSNGIVS\N;P^JBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Dd;6*HdHJ+:I?3CIS,>k@HI¨©¡©°¤§£³³°´µ°° «½Ì»®Â½Ç²´®´ÂÃÑÄſ³¾Âü¿¸½Å¨·¬´¸¼À±¬²¢¤§®ª¨¥±£ª±ª®ª±®®¬«³»§·°²©²ª«¦¥¤®º¬ª°Â¹´¬¹©©¨©§±¥©¤¢®©¨¢¢¬¥¬¡§¨¡¬¦£¬¶°± ©¢ ª°¬§§©£ ¨¡¡¥
|w
utrwl_Y_nbQsq\K;|F>WuWaYOc\NUVUWQ\b_SOOhXXWKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=398;*35>10485(5/*,.30;),,'%234$,2-860)(1<^K0.JgDF8<B05EKX1@]@NF¬§ ©±§¨°µ¬¸µª¤ªª½É¼±¿¹Ã¯°³ÄÃÍÎÿÀ³ÀÃĺÁ´ÉĬ¯·®³ºÀ¾´®®¬§©ª±©¦©±¦´ª¯±®²´»¥·³¬¬®¨« £±·«ª¹¶¤µµ¤ª§¬¬ª ¨¦§±±¤§¥¡¡¬ª¡ ¦£¢ª£¬¢¦±¶¬¬¢¥¢©ª®©¡¥¤¤
¥£|zu~uw¢xj^_nfWedN@gLEbzWbXRfUMVVUTO\]aVLOjXVVHJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06XZ.0JgAA<<C+:JO^4DBIID®¤¡ª¯¨¨µªµ±ª¥«ª©½ÀÀ¸º´¼µ¦³¯ÄÉËÒ¿Á»¸¿¿ÃºÂºÁÄ®±µ²´¼Á¾³±¯¬§·ª¥°«¸®§°¯®±«µª¶µ§´·«¬¤ªª¤´³¨¨¤³´µ¡ª¨«¨«§««¨¹¶©ªªª¢©ª¡ ¤¢¦¢ª¦´®§¥©¢£¤¦§ª¢¤£
£t~xu{x~pqffpw\atjO]VHmyUdVSdPMUUUQOX[bVIQjUWTGOXUI>IHOQPxMNV=<KD?@A<@CUC9AK=5;E23;:7*4:=+-341*8**+*,)*(/*&)%3;,$2)2021%/2Rc02@f=NX?C,?LT_/Ik7RF;¯ ¤ª¬©£®²´¯ª¤¯©¨»¿¼Á²°¹¢¶¯ÈÇÇÐÀ¿½º¼Ã¾»ÄÂÀ¿®²³³¶½¼Á±²´«´©¥µ©¥³²¸®¡¬´±¯±¹«¹®ª®·«ªª« £¡µ¨¡¯²¡´ª¨§ª¢ª¡¡¬¨½®«®¡§¨¬°¢¢ ¨§§©°©¢¬¢¡¡¢¢§©¦}
¤
¡xt}txz{ut{k¤vi^ekug|RVp_KxsTdSQ_MMSZfNMWYeYGSjRR>BNQaQ:IHLSIqQLS;<I?;<=;@@W<<>H73CB15:93-5::)-31--6)(+-,52#2)',%.;.&1.0-14%,0Mh:38_=ad?F1CP[[+HP;YC3± ¤¥ª£¤¢¬¦³²±¨¤°§ª¸¿Á½±©ºª§°ÉÆÇÐþÀ½¹¿À½É¼Â¸±°µ²º¼¹À³µ¼¬¹¬£´¦¦«±µ·±¥¦¹´´¼¯¼¥¶«©¯¤¤¬ª¨ª²¤³¨«§©¤¨¢©§©½«´°®©¤ ¯³¢¤¥¤¥¨ª¥©¡ ¤©ª
~
¡rzy}{gv|{uqr~jy
d_gcr
{mgy]^VBW{mTbPRYKLNpt]IZ[hYFVgOC>KODCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KI1%90%,,09/,,+6'17#-/GjI14X=fbAJ7GS`U*=<F\@*°©¤¢¡«¤¶²±¤©°¦¹Â½·±¤¹¬©¨°ÂÈÈÌ·½¿µ¸ÁºÈ¶Ãµ´³µ²½¹º½¶®¹¶¿¬¢³¦ªª®´¶³¨¹»¨±¾²º ®´¶©«±£¥¨©£¥°¦¯ ª©§¡©£¨ ¼§®±®¡ª¢¤®¦¡¢£ª¢££ ¡¦¬{}
£}zl}vxxbzzrpqtxjukgcgansmbjo_pA]ykV^NQQKIMSYVM\^lWEXaO^PHMDF;7HEKO<rhJK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*L>*49&'.34.0+/4&,:$40AhZ13S=e_DL6KVdN)=3R]>#¬§£¡§£·¯¢¯¯¨¬¸Ã»´® ¹¯«§³ºÇÊÇ¿¸Â½¯´¿·Ä¶Ã²°º±²À¶»½·ª¹¸¾ª¤´¦¨©¯¸¯§¸¼£¾´´¡¸µ§¦¨°³ ¥¥§ ¥¬§¨ ª¯§ ¦¢¨°¸£±¯¡«¡¬¤§§¨¢©¦¨¡ª}~||¡z
|
|tp|qss_xxjoqqpksdzlgecaf`[rjrMNiXZMQLKHPRPGM[_oTEYZRgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZgH*?0][5(¥¬¡£ ¶«°£´³©©ºÅ·³®¡¸«¯µÅÇÀ·¿Â¹°µ½·¿»¾°¬¾°³¿²¼Â¸ª»º¸§§´§§ª¯«²¯¤»µ¤«ºµ¯±¹¯©¥§¯²¡¤ ¤£ ¯¥¡¢¨¯¡ ¡£¤¢¶°¡¦±«¬£®ª¥¨£¥ª¥¢©¢z~z{
~z{prvnos^xwelllkj
nfrijeh]ds`[kviZJ^[XOOKHHRUG39]^lPEYUYeMIIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<"8R=*113>D5,-'42*;+139cm74GAf[HTDT]hD.<2dW,2¡¡ª£¡¢¡¶© »·¥¬¾Å´°¯£µ¯¬¬®´Ãü³¿º·±³¹¸º¸º¯®À³³¸¯¿À·½ºµ¥¢²©§©±©«°¿´¤§´µ¨²¼©¨¥©¯¬¢§¤¥ ±¤¤©©¢¤ ¤¸©¤§®¦¥¡¨ ©¢¡¡¡ª ¤¨¤z{}{
{w~|ltrlksawuhhjhgphhidfii`jcjh[f{c`StT\[RLJFIOS@!*h^iLDWU^`KIHEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,?0-N?.+-7,1195,&.5-80576`tA3CDg[KWGU`hB379gP'2¢¤¤§£´¬§ªº¶§¬ÃÁ¸±¬£¶®§®·À¿¼²Â¶°®²¶¶¹¶¶ª½³®²±¼¿·¯»»±¥µ©¥¤³¦¨Àª§¥¯³ª¬µ»©ª«±¥ª¦¤¥¬¡¤©¡¡§µ¦°ª®¡¡¡ ¦ ¢ ¥¬¡© y
w~
{s~~fyojjkftskcgddvceffejickr[_Y]ldaNiXZ`VJGHKMRX>9_lhHCUT][IIGFA.<?9A89RG@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=++,0B*JK./*+3722(57$+7.72685]yN2>HiZLZJVbf@:3BhH%5£ ¬¡ ¤³±¢²½¶¡±Å¼»²±£·¬ª©¸¼»ºÀ±®®®¶¯³¸³©«¹±¯®³¶º¶¯¸½¬¦´©¯¢¨¡¿°£®±¯·®µ¯¢§©¥§¥¤¢¨¬¯¦º¨®¢¡¤¤¨ª§ª§{s
|
ofymgkifprk\gcctbfgjnlgjjhn]llrp`TcicfYIFLMOXRQUaeUAWSYTGIFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9A1-+.3<;K6/.+,-24;6#3*)6.55465Z|]19Kj[M[KXdd@A1JfC&4¡¯¡©±¯¹¿µ ´Â»¾º±¦·¯§¤·¸··¬»®¬ª«·ª³·®¦²µ²®©°¶¶°³µº¦©µ§¨ §«§½¬¤®°¶µ¬±°©¢£«¨¦£©¢¤¤ª«ª¼§¤ ¡k¢p£u©§¢ymiwql}
q^cag
ktw~gguheW\hsnMPicgs
h_efnmj]`aeNKD9GTh^JGPPUULHSapteF[QUPFHEC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=A@@=28@E=1,,08=G701.*.*/568,#1'214:175Xl16Ok[N\K[fb>G1Qd=*.¤° ªª£½Å¯©·Â·½½¦·°¥ª¢·³²²°¹¬©¦¬´¦¯´¢©·¶¶¨§¬¶²®´³¡©²©¡£¤¥«¹¥¥¯³·®¥©®«¬¥¡¡§¦ ¥¤§¦§©¤¶°¤£¢£¡¡ ¥¥ªsx
¡vif~sx o~}¡ }sulmieczlraS
mbliqXiqpY^i[ll[rnzr
fZ_GN?G_MERVVQQRWUg]MVHRROFHG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82*/1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Wa7/(§«ª©§ª¿Ã¯±º¼¶À¿ª¥·°¨¬¥²´®®²µ©¨¥°¥´²µ¶µ¦§¨²°¬²§© °§£¢¡¬³£¥¥¶½¦§«ª¬¨¥¡ ¦£¥¢£¤¨¢£¥¦¡·¤¤ £¯©¡
±£¬yÔ¨ÁÆyx±¥·eÀ¿y
z|Êr»Åzrµ§º{m±«°yhlX±®nei¼¼ngzorØ~Skc¶²~rs¡ªWOWbOVNFU[XQQS]W[QA\DQNEHI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>:B<?A8:J>52*22BE/.32.+/(-/186- /416A1=:Ww21Tk\O[M^g\>L1[]41!§§ª¥¬²©°Â½²µÀµ¶¾Á«§´¬¬¨¦®³©¯µ²¦§¥´¥§¸³²¶«¥¤§±¬°¦ª¦£¯¢ «¢³º£ª©¢®¥¡¢§§¦§¦¡¦¢¡±££
¯kjª~fdp¦q®¡¤~x»}l¡v±_j´[¥e`g{gjxk©e¾qg¦u±j{±xtcnm§n[¡EhfEu`~g|¤§Z`«hxyj§7J¯\XSld[KNX_\WV;NOWW/ITSJDFF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=03.33E3..53/+/(.0.:5/'$203B/=;Uv2-Vj\OYL_gY:M5_Y30¢§¥£¤ª±·¬µ½¿°¶Ä²·ºÁ¦©°ª®¨¨°®£°¹®£¤²£©¸§³³°£¥ ©¬¯«¯¦§£¡¯¡«¤¡´³¢«£ ¢¨£¡¦¤¢ ª¦¦ ¡
µµx
©µv³·~©~k¦{w«gk±\«ztrx °vwqlll|N¤XHbb~ch¦`yruS^Q©mcq~b.Q¡o[Skh`LK[dX\ZB>²{XXA#MhFCEA@A19>88:84;99<9:A:E::;6:CB8=?KNG:5:AFB@AD<FD;0201;F,0.840,.(/3,>831/2-D1=<S}n3+Xj\OXM_gW7J8aU50 ³¦¦¡¯©§²¬©»¶Â°»Á¸·¿©¬¥¬±© ®»ª §³¬£«´£¦²²§£¢§ª±§°§¥®¬¡¤¨µ¯¢ªª¨ª ¥§££¥£¢©¦¢ Õ¹p°Á~Å|Ö»|¥¤{¤¥z¬yV¯z~j¹Z¹v~¦{zªxz±nt¼
oP¯§ÅQ zc`ªbsrm`Sµ´È
|c¤3Bv]PjicP@XgZdaJHMqP\QOYfYCD?E?0=<59;74<;8=:<C:F:;>6:@C;6@OLH<:;DHCBCD<EF81211DC./0483+-).323971#%5*>3==Qwj6*Yi[K]O_fT7G:aP71%¢²¨¨¦´ª¥´©¤¼·Á°¹¿±µ´º²´§°¯¢¯²¥µ¨§¸¢¯°³´° ¤¦©°¨´¨£ª ©§°©££¨¡¥¡¡¢¡¡¢§ ¦ §¡²nhµq«n¦r´sr¶{¤¢¡¦±vÒÒv\®{
¤oª¦k
}}{±qx³etogQÈZÂ\yb_`vsb^YÊo¿uMKµSUÆdTQjceXAOk`lhPVGJ9=URZWXIC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>HI91746A>/.24252-).26,742&60;5:=Pqh9'Wi\BOT_eP5G=aL620¢¥±£«¼¦´¦§¶»¼²º¾¶¶´¹¸²¤´² °±¢«¯£¦¸¤±°´·© ¥¡©¤±§¬©£§¡¦¥ª°¦¢ ¦ ¤¥¥§¡£ ¡¥¢
¬{w¨v£©o§¡¢®
³\r³R®}¤q×}x
~v¯w´aemZ°XKuyf`^vwhl]¯wxl5yÈ®²_BTo^g`EPl`pmVVM.feiSYP;AD@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK96<46:>/04333.2..18*.32%!03767=Pke>&Vg\@>V_cN6GC`H:99 ¹°´Â¨³¨©²º·³·¾¹·±´º´¤·²³¬¨«§µ«¨¯±ª³£© §¡µ¦¦©¢¤ ¡¤¦¯¦¡ª £¡§¤ ¥¨¤¡ ¢ ¦©}}¥x¡ªp§¡£ª|xo±Z¨ ytØvt¨¤{{²^d ~m]«[Zhgªdr{ks^«Z koeOJC¡\[Lt]bgN[a_rs_KW7JXHE=GFAM35A8.;>05A78@<6=<F?:<6?=B7.HVJEAH6KIN@IK@EN::@5.:>102144+*05/7,&21($$6671<PeeA&Uf[?2U_bL7FI_C2?8¢Á«´Â®«©¥´°·°µ¾¹¹±°´¹¨º³¯¤¤¦¦©°©¯©´«©®¡ ¦¤£¹¢¢« ¡¨°°§¨¦ ¤¦ª§©§ ¢¤¡ ¡¡ª®mr´s©u§s´xs³¤£¤w¸p{¢jk¶Z¡
ei¡¢§mr´t~²j
ju³af¢ok]`M¡|Rs£ly~or]¯V<wfTon.\§OcSkebmZc]ap{cT[R>=np3CB@?M:!7@6.;@37C58??3;<CDBJFMIF62JTKEBI6IJP?HNCFP=<E50;;010/75,+,426/#00,,289/9N`eD'UdY>/U^aL5FM^81C8¦¼¡²À®«¬§·©·¯µ¿´»¯®¶µªÀµ¨©¡¥£¡©©§µ¢²§© §¤«¸¢¬£¢ ª¶°¨¬©¥£¬¢«±£¦«±¡¢¢¡©ªÔ»s°ÃÃ}Õ¸x§z¤¶u~wv²`ºyÀ|u¸cµ©}«©q{t¼§ ia¦¯¡~uª}¾os¼t²uxnrn¤t½^w}Zay¼kZV\jy^jaegcmxoY\ZC@@s@CF+5G"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB=E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7A9§¢½¡²Ã°ª«¬±§·¯¶Ã°¸°¹®À°«£¢£¡¨£ª²¤´¥¬¤ª¦¬¸¢¤¢¯¹²¬¤¨§¤£ ¨«¨£´¢¤§¢¢£¯©¶·xµwmknsoy
tÁ»½{±¨qs¹}||¤»¹½ty´£twvt°ufjµtrqw¶^z}hynzc¬pu
X[§jEeZTf`c^cQggpluCNQMD:ZM?J3;0 8>;.3=A99?=;<C6BSYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7LT_G'SbW9*O^]=+:VU'>;<§¡¢À¥µÃ´¬«¨¬«©º®°Å³²¶¦³·«©¡¡¥ ª£¬©¥µ§§ £«¤½¦¡©¡¡§¡±µ·¤¤¢¦¥ª©¥¥¡¨¥§¤ª ¤¯¨¥¡j}i¥wr}tyd{½¾ÀºoraskZ^`ck`dnwcle^`bpir}gkrtx}b[wthP\m}{kXkzsJJopNtLEX]gaL[Wgc_O[mtiqRQDEM;GI=M?2,2A?8/5?C<9;@;=C>RVVWYZ[\\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7JR_I'S_V4)P_L(3>[O'?2>© ¨¢Â£µº¶£¬¥®§§µ±¬È«¯²ª³¢½°±¥¢§£«¦®£¤´¨¥ ¥¨½§¨¤¤©¨°²¿¬§§¢©¨£« ££§¬£ «¢±§ °¤ §¡¡¤¡gm}qw¶«¡ z¥
mk}}uqxyvu|jstuew}wkozm_d]phMYZfj`WZoxmmfUPFS9OZMRO(+:KB635=@A9:C><ENSSTVWXYZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J&R^S10T^:+=8\J,<-@³¡³¢À¡¤²²¶ ©¥²§¥°´ªÈª¬¯¥´¥À§³ ¤¤£ª¦¬¢£¶«©¥À«£¡¢§¨§²Ä°««¨ª¬¡¢¤¯§¢¥§®§ ¯ ¡¥¡ ®|«©
z£g¡³¯
v{}wyzofyjuysis{vjudzf`jecdfkYl{oik]SLPD^TF@?>,4@F;45;>A;<?>>HNNOPSUVVXZ\_bca_^^]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMMD/T\Q05N[17E4[G5<,@´ ¹°¿¬¬¯²± ª¦²¢¬³¯Ä¯©ª¢±»¢³¦¢¡§¥©¥¤¥²µ¯¥¾ «¢¡¨«¬£´È´ ª¤«¦©¤« ª¯©¥£«¢¯ ¤®£§£§e|e~cymhk{¥«je}geeih{¢lh£wkj¢skmzzXf^^mv\hswvmwxsmytv|jY^ltd^sik|pkd_RNXIdXAJ4>F7?FD71<=?AD;;DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AJ[J/7ZO6)EY/DO2YC;?.=¦ º½º¯¬´±ª¥¨®°¦°¼°¨¦£®°«£¡¦ª£¥§©²£¢¯¥¶¹¥®¢¡ ¥|¦®£¨´Ä¸¥¢§¯¢££©¨¡¡ª°««¤ª ª§§ ¬ ¥¯£©£©}½r´rhx¹Ä¸q££z¦r«|ËÀÀ»q£|À½ÁÁ||ÃÀ}l¥²ooÊzvuyyqzpw
ymxcg`xd`eb^sglddYLVIQZHOD2IE?DB>/<?>@A:8CCBCEHIKMNPSVY^__a_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>I[L*#BP.#F[3PY/VAB;/8£¹Ãµ°°À©¨£¯¨°®¦²³®©¤¥¦¯ª«¢ª¦¡«¢¤¨£¤´¤¢¥«·³§®¢¥¡ §¥«®ÀÀ±¡©¯©¢¢¤ª£ ¢¯ª§££¨¡¥¥¬¨£¨¬©§ª£¡Îxz¤y_®^¨£¡|§s«¯^cª{¨
t³c« ³j¯u}·aZ£Ínv{Ú{p}v}ezvvk|n}~m`rmph``zd\qgidg`RTSW]KOD5AHDD8>6;@?A;=7@>>?BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-K0';\;L-!P@F4.1ÂÀ¿µ´°¸£ª§³«¦²««ª¢«¦®ª¦¥¢¯ ¨§¢¥ °«¦®¬°ª¨«¤¤§£®¦¬±¨¿Ç³¨©±®¡©ª¡®°©¬ª¨¨¥¢«¬²¤¡ª©¢¥¤®¥ q
u
¨q±}r¬¢¥v«}s¬v{|~ª¢~«{{WÅ{pÁ}muomevd
nawnronfpuuqagme_oiiogdXT]aZRSC9II@C<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^\[ZRC>;92478452&# 1' 1' '45-&7=WJ-<(>1)3W@F!G:C1.+°ÓÆƲ´ ££¢¢¬¯¶®¨±¥¨©¦««¦¡£¢¥«¡¥¨¨¢°¬¨§®«§¦§¢¡ §¤°¥µ«ºÍ±¦®«¢®¬ ©³«««¬«¥£¬®±¡§«¥¤©§§¯ ¢¢¤j¤uz©tz²p¦q ¤``R«
®v¨
{
zf£¤£}©~®_|©V£z£{ïÅr¯³³¹qb©¯Âthnqozxypmgeerpf}jc]W`jXYUMMQLCCAB;CA@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^aa`_^]\][SIB6799664,&$" ('"+-"$.!3-&@DWH,G+56*2PKL# A9D4,'ÃÉÖÔ¿¡«§ ¯¢°´°®©¬¢§¥¨ª«©¤¦ ¤¥§§£«¢¬ £¯¡«¤µ¯® §¦¢¢¨ ¦±¦¦©²·È²µª«©¢ ¥³¡§¬¤°«££ª¡²¡©²°¡¨§¬³¡¡¥{ªlu«y|°o¥ Ò¸´¸É²_`©¥ zxªÉt¤¨©ÆÆyg¡¥t}¯]p´b°uK£m§Gd|qq|u~|n\fjsqfk_aYdn\_YIMMKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75685/)(%&%$&),4ENPPMFKJVF*L0/=-5OTQ;<F2,$§¤ÀƸ¨²¬¥¢²¸¬ª¡¥§¤©«ª¦¦¦ª£®«¥ ¬©¥§¶¢©ªµ²¬¥ ¥¬§£¡ª§®¢¥§ª°µÃ±³ª¬¨¥¡£®¥¡¦¦±®©§¬£¶¬ ±¸®¦°±°¢¦¡Nxz£}¤
¦¸{{y¹Ìƶx¡~v¥¤©°
¬}c¦m¤p
}r¬`£sq`¼}RUt£{~w{sq\nnxrjo[d`iocd]KLQTAIHFI:9K>B108866877-*5==?BDGILNPTVYYZ[\__^]__]ZZZXUSOH@882.,*.+*''?QTVWWWYXXWUOUF<E3:P[T6?H,- ©«¤«¹ª®¡¬²³¥ ¥®ª§¦§£¨¡³®¢©¦² ©¤£¶¢¢¢©´¸£¡¢¡±§¦¡¢°®¦©£¶³Å±©¬©¨¢¤¥¦¥«°¢¯¥¦¯¤»¡¶µ¬³°¶¯°¤®¢
ѵ÷y
¦y¡w ¥qª
´nrj¤}s¯¦£¦nq²]¥tzl{|m©a£qqbs²¸hw¦}z~ynjyizsou^eeonfh`J[XX<HH@U4@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^__][[ZXURRQF:223//++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH$)%r¾¿¼º´§¤µ¡¢¢§¦®ª«¦£¥¡¡¶§£¨§°£«£¤¢ª³³¤¤¨®§¤¨¶£«¤¶¬Ä°©«¨¡¢ ¦£§¦§¨¯£¥¬¦½¬¼¯¬¡®±·©°¤§¯¡¦y¨}|°w¤¥m²p¡|¡¨¬
ª ¢{~««x¡z¯^¤}¦§d|sj¯]¥kp
]`[ m¦||knctnz`hfqoihgCYa[>KU3U8BBC7$$3+''3, /6674359@CFIKMNQRSSVZ]_a``aa^][ZXSPONI7042.*,ATVVVUTUUUUTTUTTTVWWXVUUQHFIJ#((½¨Å¶À³¬ ·¥£¤¢ °¯ª¥ ¹¡£« ¯©®¡«¨£®°¬¦¥¬¬¡¡¥ ¥®¢©§·ªÁ¯¤©£¦¦¥¦ª¬¤¥©¨¾¤Â«©¡ ª°·©«¤²¦¨u¯~
~ºe°e}¡§¬°
¦¤¡¢
¡\lj³`{{±mgo±[~µ\¤kÈ¢d{¼Xv´Y²}R®z¬X¡n¨|z ducxu}bjgqngfePUd\AU`>I(>9=4!",%2. *1/045799<ACFHJLNPQRTWZ^````b^_\[XUPNJFC553./@UYXWXWXXWWXWVWWVWXWWXYZZ[\XWWGB;Ò²±·½º³Á²¢¬¦¤µ© ³³©¤¡¶ ´¨ª¬¯¬¯§¡¯«¨¦¡¥®©¢¤££¥¡£ª³ª½¯¤§~¡ © £©®¨¦¦¢¥¨»Å¦£§©³³ª¬£º«ª«©£¯¤¸Ãº§¬¯§¦«Ö½Âªb£¿½}~£×º¸µ
½¾m£o«lz²°Çi«°½¬xw¢¾¼s§ {|c~{egz|alfkkcQa[Sj\@UbCN)=:4/$%2 $(0496677;>ACFGIKMNNQTW]a\__a^`[\YTQMHC?=A?5=SYXXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ¼³³°¿¸±¼²¢®¦¥²¦¥Àª¸²¨¢À§¨³²º¨¯¥§°«®¥¢¬ £ª £¦¦¡©£ ¢¬®ªº¨£}¦©¡ª©¡«§ £ªº¨Ã¢¢©²²¨§¸¥¬¬svª¥¸d ph®nnw¤u®pq¨¤¯¤smmlfxonqzjqigqiigqd]bjoY\f}v¦_aqned¢¡}wfxil{zemdgmcKdXJkZ:QfER'K:+# #,)-2.5:457:<?ABDEHKLMOQSV\WZ\``a]][TPLHD=:AB7MXZZYYZYXXYXWWWWY]^^]\\\]^]^][[UW^©¬³©¹¸²³ª©¡®£³ª¿³ÅÊ¿·ªÁ®¤¢¨¬º£¤®«¦®©
¥© ¤£ ¥§¨£«¡¦¦¨°»«¬|¥© ª£±¦¢«¹¯À¦£±¤«®¯¨«©¥µ¢¬¶¡¨¦·£ª©³£ª ²¢¡¢¡¥¢¬§
¥~g~tusp§lz¢¥tjwrxx}zjmedpeU`Y@j\HdbPY+F=+'!750.!%2(*699469;>?ABDEJKKMPPQXUWY^`ac]^TQKEC>9=@ASX[\YWXXXXXYXXZZ[\^__`^^^__```_YY`¦¨ª¤´¶®®¡°£ ¶±¬È¾Æ¼º«£¦§±©£¶§©´¦¨¬¢§«£§£¨§¦¢¥§¢¶º¨ª|¡¦ ª ¶£¦«·§®À¢µ¥®®ª§§±¶¬º¥¤¦¶¢§ ª £«° £°¨°£ £ª¬¢«¡~e
uuxsj
}£¤
}st|s|joe_qj`[`ZndQaeQZ:GGE>2=>9/*&+)&&416668:==?AACIJGJKLMSSTUZ``iaeVPKACB:9EMV[^^[Z\[[[\]]^_]^_`abcaaa`bbbdb\[c£§¢¯±«®£©¦¬§µª¥µ½°®£¤|¤²¤¥±©¹¦£ª£¢¨ ®¨¨ª©¹·¤¥y£©¸£¯µ¢®®t¢»¡±vw¨¯¸t«£«d\bv ¥}m³£§ª£esyp©m¢¨e¦
wjvp{
`hZughs|¨f{
yjozkre`wplki\febbqT[>NNNSG>@UD:1/&4:306678<;>@AAFHBGFIKMSUUY]`hfgXQJ<DG<8UR[`ab`^__`aa_\]__`aabcdabaaedchd^]f¦£ ®¯¬«©¥¨¢§¤«¶±³§«¨t± ¨«§¹ ¤«¢§¡
u§ª¥»´§ uw¡¡§²´²º¥}§¡y ¬µ¥°ª¯¤z¬
¡§¨§
w¥z§{³z¡c{
mpyp~
s
xht u}£
kly|rqheypjlk\elkfu]^ITLR@E6.ZUU7)!09>>743568;:=>>@DI?IEJLGSX[Y\bahfZQH9EL;>aV^bdfd`aa`bb_]`aabbbcfgcba`edcgcaah¢¦¬«¨¬ §°¦¦©¥¯È¿±¢¨ª·
§¢ ¾ |¬¢
§£¤º²§
qv ¡¤«´´Ê©¬¶
¯®«¨¦}¨s{w§h¤y´¦§Â«¡r¥}
³¡}¡¡}
ms
~yq{tÅf©£k
¤qiyv|xhivrhhl^dpmgnYgG]RM3E57Nbd7&3<EGD:64658;8>==?BM?NIJLCPZ]\Wa^il\QE=KM@JcX]cfhgbbbbdc`_babccceiicbbbecafcbbi¢¯§¨¨¥«¤·°©«¦ £¤¬¥¦¬¹¤°¢©¦½¡y«¡w¥£¹¤~bm ¡¡¡§~¡§ ¨¬
£©¢ukvM«x¨¦©«}¡{z§jkg·~n`dY|dhr}yl]}m_Rp\_kx_Xd|p§ªk£nr¥p
jg m\p~gZ`cXQpwfnuskjp^kqnljYiO]YF9A5HD_l5,IDRMN=84859;6@;;>BP>QRLMBJ\]_W]^bu`MD:MONTb\\ffiibbdbddbab`bdcacikdbddgdbgeach ¸ ©£¦¬¡µ»ª®¢¡¢¥¯¡°¶¤©¢¡ §´u¦~
¬¤ª¦±§¡in£¢¤¢ v§¥~
§ª¥x|~¢ps|ym¨{¢sv¦f~w¤_z}t¢n·´ºtµ¨dƸ{p¶r£cs¬«`|i³~m|q£lr£t
¤a´s}³ut\²kcpuwripYlmssg]j^bLE=D6QBZs3=SG`JR=<395:96D;;@JP?UMOQ@E__[ZX``|dHC8MWUWbaZefkkbbeadd`ab`dd_`cknccddhdbgfchh£·ª¤·´ ¢¤£¦¯³¯¢¡¥«x
q¡}¨¡¤©¨¥~j{~}¡ w¡q¡©¤¥¨|~z z£xt}¥
¢d¡|mhoz§}rit«tªh]
v
gªk¸f\¨p`^§vu~huon§^©y»k~ª\]´h]nrzxlj\qkyzdagXbBRFO7WCRo5L[[_NZDA251<:7H?:CHU>YRY]>Db^V`Qac}jEB9N[^YdfXfgnmbbe_aa__``ec^bdoq`deekecihgki©´§c«º±¯¬¦© ¯²©®¥¡ £jr{z¤©£ iy{¢¡rhp©¡¥¥{°£¢¸w£³£¤y{«~¢q¡|
¯µ}k¡y~µ¢¤«¨|}tªZ]o{xbL{z
cyBLX¢jq{lux±³§wnt~ptk¤^vHedatrofaliw|eebQ_W]UW@ZFQhETW]bX^ID=B8?B:IF8LEXAWR[VDFb\Z`K`m~rEB<U_bZeiVghmobfg^aa\]^`hb_ecvl]egfkdeliiki°S^ ¦³¹²²©¢¬ª¢¥£© ¡woy
|r¡s¡
ª|l
q¡x|¤ ¢}µ{¥z©{§hwm~t¡sr|p®}¤¥£o^©gu¢co¥aÓ}{xssb¢~£t¤vk³`sª²¨¼wm~¿¦©´]m|pmr¢r]¤gs¦`h¦mÔ~p{{l|xsn©¤gaezr
lhfdovxhacS\fQRbHYJUaWT\fk\eQFCKMJKBKE8O@QNXSYOSQ`ffjRcwywIFEc]eZhjTihjocjg`c_]]]_hbaie|d^dgdkdjlfhlh¯ªT\K~©¯±³¯²£
© ¢¥¦©¡«¡
{p}h}wo
l|¥«yvnw£{¢£³¡¢¶z¬§¤®¥p©
z¤¡r¤®¯¤ vµ¶µÉ¡s`©my t¢w ~pMf£ps¥{ytak~ kqd_q}shyi³µ´Æ¦s}zk«v
nwyj{vsQE}³_jwlzgkhcuvqoW_TYiPShIWMYTV^iloVhWNKAJMKHJOAQKPecjmetrsy|nu{{TQOl^i\kiRjhilglfce_\]]^ibdik{_]dgcjfomeile¡®¥d?¡²ª®¯µ¢¢ª¢£¦¦¨§zjye yui
y¦ªz}xp¡z ¤¦fnxl¢d{q¥wpf¦z¤zsw¹n¢b} nriªku mo¦`iiu¢~`upbh e~iuocfmq¢Y^Zb¡l]nz}srd¥mx¢dg§hsp¢pUo _f¨U^TnntksnqilytkpRYWWfZTmIZP]IXiisjYlWQRFV\LXSaUik_wt{}p||r{svv^RrbgcpgPjhhklnhdg_]^]`jbjivu]\chcjjslfkmc£¥ydsm¦£©°±¦«§£¢¤£{qi|su~{d|¨£~ri¦} ©¥¦x~¤±¯¤u
x©s¥n¤¢»n}¥¯
|¥zr¨ g~o¬dw¨mª¢vw«¦k°kv³©k
mm_}«ªv~~¥v|¤ jx¬h®¶tw¾¤Z§«avsur|uqckohmTW[Vab]kM]R^J^mow`[qY\`[gtenorcrt`wz~yrys{{vbxdcnrdRkgholrjfia`^\akbmlzo\\bibljwmglnb¤©£©©¨¦®¤¬¦¦«
t{o
~ttsm}{§§§
vnl©©¢t~y®¢qw}{r§r~}zy{~v {}k
[yyrzqin~quqe_wusuoynml^ugwe¨}t{jpv}wnnhtz|x
\lXyioxsrpxxp]lojhW[`W]fkdVcU_R`pyymkwfkkkw}rrutaovbt{xuzuy
}{nldyn^Wnghukxjije\`Zcjemqtn[[bldllynhkoa·¨¦ ¢¦£¥«¢¡¢¨ªr|}~{trq
{}y~¥|¨¢
vr©¦ª~~§¥woxn~¨
q~qkp} hl\sqtkwtYrn~j]je{`ixz{u
gwj`oqu^q¦
enwqzqhif|{[]khnv\|zxvotsh]nllcZZ_[Ylq\_aZ_^ft|vpudkkk|}s|yuenuhm|~wz|{yz~o
{}t~yshT\qilvpugkhd]aXkhkkqrnW[enlgsyohjl`©°¡¢¡¨£¢~® £¦|}s~v
ror~z¡¨¢yz¡©¡¡££ª¡§¦zv§~²¦±¥k|wxe|
w|zt ~}tnr}v
¥
}zn
~zksiatq~{xwpxu]^oio`_Z]]ShrVd]]bmhv|}topekji}nyrjpqlg{rx}zm|zx{}zxNcvjsnpzekecb`[tfpgrqmU]ltmhyzqgike¹¡ ¤¡|¬ }y|nys~mk~z~
|
¬ s}{ª¤¡
¦¤tz¥{|«¢©~oxru`t
nyvt¢
s|{qqzzw¦
w~rm}oilnh^zi~}wvwv{x]`q~nu`c[]_RgnUf[^bkivzrlmdkjhltllupzpynv~
vq~{||{`h{juiidjc`i\cuhobumlUcqyepz{sejmm¶ £{x§¥z{}n|ys
~}kh}{}|©q ¡
|¨x¢~¢ £|w ~|¥¢¢¦~~utqwa~q}r
hxrx~r{{owzyx¤
{v}hs~z|rmlh_~ti}vvt}sk_`tvpwdcY__RkiVfZ`aijvyrgldlhfkn~hoqlyzls~tv|{}irntiahlb_qVtolm`xhmWjtvcuz{rbjoz±¥¤ |w¥¡£y|r{tv
~xgc}x|y¡p¥¦
v y~£wv~s£¢¢~|vq~n{d|
pl
fuo{
|x{{zp}w
x¡vw|xazzuyhmfbjkxttw~r}cdasnurmaZa^[meSdYaaikuyrckcmfh}liuhnpj}ymr~t|~z~|mvsumeljbbuVipn`xglbjvpfy|zq`rl
¦§~xªzy|~||xtyzt}d_}t|~}¤¢s{¦ r¥qkzo¤{yrzlul|~m
wp~~eri{~tx}tv~|{£xt}tv
qb|v{r~pcpde|copwsyxtubv`plvno\\`^^k^Q^Ycaint{l`jekchwngmikmi}{wos}t{}z}}rzxxmljh_ircgqoewgnlayik}{xpaxm©¤¨~x¯}w~|}|wxput|o}|a\~rzz¦}}£m¢ lezp£}{
ssvlqnu|toqu||eply||tsxn|
{§z{~
x~qp
fizuvq|c_qakt_qk{zylsqey^olsmrX[_`bl[PXYechrrg]jigbgqodjheiizwuo
t{u
x
|x
zw{{rxjk_phtkromrgole|cnzvqlww~¢¡§ ¦v«¡t|w
xyrs{kspznvop[Y~ut ¢y
m¡h¡e~w ~}{|ovplmop{itqwuyfrnu{yyusozy¢{uxynl
_tutrry[_qapk_pk~|qnnkmvapokqmYYbaboXQT[fgcup
c]kmdbfkn`gg_hkurspuyvx
xw
|{vjqc|c|nqmtjholvx_qy|tut~¤§
v zryupr
tqvlpnvmv~mmUQªwvqz¡x{£{r
~|f
f
qw{z||kwjnkll{az~w{x}ygsls}
zqyouyy{{zv|wqjl{ayqonstV_pbrb`mozqipfgsuirlbwe]WfaasTQO]ge^yp}`]irbbffj_he[gp~plqt}v|uv~y{
xs
~|yxfrj`~ookz`jntu_t}yxts
}x ±¥
wtwtqo
tprpkiwnn}}mtrRMßÈÖ{puv
¡x{s
¡~wz~xte
k¢cqz{y
|m|esoklzz[yz~{{isjs
|k}~m}
|x|uwxrmgq
nlupikvoS_pepZ`msyhlkcgxrpqd`xa`Vl__wQNLbgc]zrv^]evabeedagbYissnkqv|tzuv}s{r|~vesn|e~oplYlnyys`vz{vrwwy®
w~|
txpyqopmoseeyq}my}jgkc¤ÁÜ®ð¡slv
w¤o¢r¢
}ztwuul|¢
^m{}
v
}~k}dxvjnysX{
z~yfri~kum}x~trwusqgvzcunqckxhRarhlV`ouzard`i}pso[drabWn[]yOMLegb^wtn]]dy^_ee
`cc_Yjsknksw}twxw{q}~{t~sguryl{ntqWqzvyrdwyivr§£}qwy
¡|{swptjpljm|u_axw{qu{g`d|ëÚµÉÃÜsltwkq
|{
uxru}n¡ai|}q~qwhvsjtwlZ}
}vark~~}mkw
{{}mpy
tkqlsyaujp^mxaResifS`qwuap`]hqtkXhiciYnW\vMKLfg^bstk\\ey^^dg{ad_]Ykofojtx~ss~{vzt
|vw{ulwvyxtnx{}Xyqogxwdv
p
¡¢toqw~} xrtnodrifmxx\`y{{qqjagaÕ¶¦xoqx}qk{i|{}zszzptt}~b
g|~~m|tlmwutwvlc
~}p_qo{{~ypey
z|~mny~umnkl{dilkZoxZSjsibQcsxmcf^Zkntb\h_em`oU\pOHOgf\hoqn[\cs`\clwee]]Zlmcmjswrq|}txx
}uy|vpxy{on{w^tmiztsgs|q vvmw}w~vrpljau}gbjuz[`x|zlpecggW_qs½Å
wrtsk{|}|~t
vv}quq~syf~r}g}{y}i|vfpyxswtlkyk^pvz}{~rhx
w{|mkz|vtoih~we]rdYquTTosibNhuyga^]YoptZec^knaqPZlRDThbZlom{pZ[^mcZcowdg\]`kjcliswro~{tuz|v~xtsyy~oo{qjyz~nm|vkjxtk
o~vjyyozsqljd`t{i`fr{[ar}zfpzaed±²wKbZ¥ÚÒs|z
ol
yy|yxnqs}{jy¥~n}tv
p{~oxh
xr|e|~ucqsiyqou|wyzk\o|r}
zqmp
qwwml~vzehj~raZx[ZsoOXrtg`Knwvb^\[Yu~spXg^fkr_oOXiS?Yg_[qkgyr\[YleZcpy_h]^elhflirxpn}vp{v
qq{|zyukzlp~u}or|{poyf¡gpgz
|ixrllf_aoym`coy\dlzaqv_deÕë¾3:>ryxnm
u}
|xnvvmku{uey§|l~rtx{y
lrixm||xbyrdqinurutv~sp[k|sx{|wypkpw}}smjvuu]iiyqZW~T[rfM[srf\Jryq][[Z^vviZb[hfocjNXgR>^f]^vf_uq[YUodZeqy[h^`gmhjkipx~mjyn{}zu
pnw}{{i{}kt|r{sv}~zx~|km~li|~}kuqgic[cgso`altahpzast^bc n]6[°¶uj~xuwpm
tyx}zsgv}|no
}hvynez
¥}m}t}{
|q|~|i~mk{yjzwr`w~rdrgvnu{}pwz|umWm}us
vtzwrmq}{|ynmhmun]hgurR\}O]r]O\spdVKtykXYYZbrva^]agdijfOZiNAbd\`wa]unXXSub[eosXj_bhkgmlipw|lh}|p~{zwr{oqw{j~{nxyvw}x~~zm£
|vzkm
z}{~prpcf^Yg_pp`ahpfjotato[`djv{¿¨¥É¸r
t~ztrspzsutwyyqdwyhqufwvdj|~|q}rw~v{lyzuh{ilysizv}h`w}kjth{jv|~~q|w|tbUu{qr{pwxoo}|w|zsuhpglrp]hctoLfwM_oVTZtnbQOuybRXX]bqt\b]ieeckdR\qIDeb\dq^]xhVWVx^\fniVl^ajgeonhpwzniy}s{~y|v}pvsnw~q|xzzux~zuo}~{w|huz|vgpn`e\XfYmsaaaqllhn`siX^cmw©Ú©È³ryqv}{utu~vopm
txul`yxeqngun[m}x|wzl
s~r{muwmhwem|vmkww|`bxzhuvc~{hu}uvr{}mZUq|os
}wksxjt|y{wzq{rgsdmls[j`vfIooM\cXWVymbPSuwYQVX^ar
p]acmec^ocU^sGCg`^gi]Z{cRV]v[[glbVk``nfflphpvxtkvvx}w{t}oququ}
{wx|}
x|}}{~rvx{wuz^~zt
w{bnm\b[[aUjtd`[hopgqaqfW\ck|Êκ¢knonr
s~{
zytzutzjlvcvvog_|xdqjjqcXm{rv}zmop{yrrp~ghrcnxqjlrx}|y]ezxiuygwhu}sjo~xn}]Wo|ls~znnpvfv~uzoyr
zxqer`mkrXk_y]IplOXV_UV|kbOTvsRRTW^cuj]akkfcZobYcqHAi]ag_\U{^OVfqZ[jh]Xha_rfjhqgqsvynu{x~yus
pp{xwuy
z|u}~~}|xvyv~}nuzdto
zucnjY_[]]Uhse`YdrrgrakdWZ_ix¾®{ ·nbtiu}s{
{~wxswozvejoausjb^}wxep}gkk[Vox¤
pqvsl~r
}yuspizajmamvjgkkywzw[g}|yfr~n
tfupgk{tmub[mzjszzet|mpgt~w}~pzjyyxvodlal}lnVjaxVLlmPSPiNY}hbOUvlMQTU_hwg^aqigaWi]]ljJEl[beWYTyZNWokY]le\Zec^tfleqgsptxp
vx|
}usnsy{{sr
y}v}
z~{w|wvzjv~}m
sqpflgW][\[Sepe_XcruivpdebW[[hporsefzjvwuu
x
zwtvnkzpahkgtng^_|ny|glwfjdVWsp§}{vt{qzxlyzu|}uqsmhu]mi`mudggizo{sYgvuhpxvbw
}okm{qese`jwfpuy|auvjkqtzpywr{e}}}vumce`l|mkVjcrTLklPMOpG^|faNVueKNTXalxf^gsje`WdXcr^LLlXdbUTUsWMYweZ_la\[de_wgmbojtoq~utxx~z}v~
nrt|{uq
zut|
|~z~v{£¦y
lu||u{otz
}unjieV][[ZScne\Ybt{jhmh`aW]Ziikphmbi{zkuuupz~wvn{hjyj_enhwgeXavi}ynioff]UXoh¨w{|xtn}mqtx~wtvjtwhio\me^ns_gbjxh{m[mstjo~zwaw
zsrpzrcqh[mudnqzwasphjxtqkwvsuby}utocbbl}|kkUibgTLniPHRlEayfbNTr^JMUZfmx{f_mqjd]V`VpoWJTiXg^XNVlTK]z`\_l]][be`zhlanpvnowuz}wyzyz}qttzvt
~}ls{
}~{u¬zlrzvuoo}tjonedX_ZZZUbjg\Z_ui^ml\aVZ[kert}jj^mxwhuxso|~~zvslzhiwg]dsgzwccTdofuvfhiaWVYhd¨owzpn{fwmyzvq~ndwtehi]lb^po[h_muezh]tnrkq{vubu|xru~taplXpqanozscqlam{pjgywspdtxxtoc`cms}jlTi^_ULudQHWbGcwfbLTqYKLXYilw{eenrfcZX^YwfTI]dXiYYIWeQIcy[^_m[^]bd^ij`ntxmonvyr}~uvx}tuuyzz}
jt{}~
y{~|sq®||~fqzt~}wspm|~mzcppbe]eVZYWcfk`]]thYpm[^WY[l{bqwvmc\ntuhvwroyzwootehte[gufvvy_]Seejs|abi\TX^cd¥iyt
wlmxfwl{ytry}yifwmaga_k`^ukYf]oobze[w|knopxytueszvor}raxcYnn`opzseqd_nvjcfxzrlmsq{qpa]dmo}eiThYZUNz`RKZYHcudaJUnUJLZWjms{dlltcaYZ\bw\TKd^YjTWHYaNHkwY_an[[_bc]
ihbnxymojvyn~vuttqvvw}}~~px}yxy~ssp¢{{yeuzsywltply|ps^poagblT[ZWidmf\\reSrm[YXW`lvcjujj_[ntrmutuk}|wonldipc[krdtvs\WTd`q~~p\ac^SZa\derq
skixknnyyzqvs{z{dfvh^c[ah\_whWb_phawa[|vjjrnxtttiq
vsjp|mfwW[ilaoqxseo~[aqqb_io|kjr}povjp`Zdkm{agTgUXSQx]SPYRHdtbaGVlQIPZVlll|emora[ZXZmqXSPgXWjTUFZ]OIsvY`cncXaaa^jcemzyloivy{k}
|y}mqovz}t}tx
utpvo¢t{{fwon|pgxq{lsvsk^tobgfkS^\Vhbll[\qdNom\VWUfishctee^Zpvoqvvzl}}wscdkoa\nmcsxkZTVbcw{|o\c^cT[`Zccnp
rifxmdruqzkytuo{v_gsd\_WbdYbueU`amdaq]]~ohisqtquvlm
|
qrgn|oqoRZeidprtsbmuUcrk\^nd{dku|pqqim_Xcijx^fUdUWQVoXRWTPHes`bFXkOIYUWnie|ilykbW\V\ueTSWiRZgUTI[ZPNyw[_emjZba^^nbglzvnoivv~m~{krgt{v~s}
{ss}un¤swxnz`e}qgztymmqwgd|mcgghS`_Ug`lo\^nhNjl`UVSogskfxef^Zrvns|ytn{w{zkaelm^`njeqy~gZVX_lxzzn^a]hVX`Xdbkp|vkiuk[upjyiurno|sYkn`Y^VcdYeqcT_biablZ`~kfltuomxvlh{mqfp{lqlaX_gfnrrr^ilSfqeVbmaxaotztinkj_W`fhu\dVbVTOYgSO]OPHep]cGZjNJ`LYme`xioe`U^T^v\USagO^cUTK]ZQZvv]_fmhXca[^qchjxrsmgvsys{~|zntlst
z}|rstwqn~zz}~~}}~~}~~~~~~~}z{|~~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~mfggggg}
]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDCGdhgggge¢ ¥^*....+H
}}{{z}~||~}}}~}}~~~~~
g_```_^yS7¤¤¤¤¤¤£r]____aR4555549\`____]¦¤¤¤¤ªV;|}zzz|}{|~}~}~}}~~~~
|y{z||{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
~|vvx||{|}}}}}~~~~~~
~wxz|zz|||{}}~~~~~~~}xyzyz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{z{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz||||}~~}}~~
zy}{{{z||||~~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{~~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}~~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~
rtx|||{||}}~~~~~~}~~~~uxrvy|}|z}|}}~~~~~~~~~p
|ussvx}~|y}|}}~~~}~~sorx
ty}zxurkeimolffggpsswy}~yz{|}|~~~~}~~wm{sx{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
sno{uv
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\YXXWTPQRSRSMMJIFEHJGGHGGLNIgsuxz}zxwy||||~~~~~~~g^`cacnq}{z{}w||vxz{xxzoq{xy{|{xw{xuwttvuuvwtb^d_akqfhklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkiffggghhb]jl]ffgeccbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHIJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__ac_\_]`]^ZZjwmbnsjaYY_[XWSNMKKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSTPMJMNPROM[krlanurfQQSPPNNOMJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTtsuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMN]cokYisupSMOPPPONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKKFBFHUbhlopomlZLLNMNOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtttwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHECFGHMZghgrnnhfd`^^XLJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:;>IZ][\elnkommlkihkdSGEEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxz}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@:;><;;;=K\imnojomkjlmfQGEDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnppsttsqrvxy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<979;:=HcosmnlkliUC>CFDBCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtstrqtxxy}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::979::78:99=J`ssphT?:;=@A@=;;><=<@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyz{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==?@===?C;==><:Bl}j@:;>=>?@A@??A@@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCDA?=>@A?@;[n@>DE?@AD_d;==;:=>AA@>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJGVppqssttuyz{||~~~~~~mLPQNOPNNOPPO><<=>??@>@@???BFD><<=@=8::mwI8;:=>A;Hd=<=<8:;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}|~~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABA@YR=<=ILFEuvN788:;>?WjA;<<::;>??==9:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@CszJ;\z|wW<=?==>EhtL:=>?=<ASD?<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hlopoqtuvy|||||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCEAGrzkb}^>@C@@=Js{Y:=AEA@YaGC==@DDA@?>=@A>>>?<>@DGE@>@A?@CFECBBC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqprutwz|{{{}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Eot}~}vMACE@?>Y{]?CEIJIjfQMECGFGEGEEEDECA?@>>BFJJGEEGFFJNNKJIGGHKLIGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEhs}|~y
rCDEDCWu~XGHJLNig[[VLHNMHIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHHHGFEFFFDFHGEEHHFHFHFQnnpqruvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJG`{w
lAAVtWHLMVedb`e`N_IGGGGFHFHECDDFEDDHHCCCFIKKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrtwwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLN[|
Vl
|PLMcjihcfhg_@@CCCCFFEB@>>@AA@BD?>?DFHDFGIJIJHHHGIIIJIHFJJJJIJIJJJFILLJJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLKJT
uIMmumjiiikI:<>;:<AA@><998<<=;>;8;?AB@ACCB@AADDBCFHIHHHLMKGIJMMNMJJKKJLMSloqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJIIe
fQuxtmmnolD7896479;<:8567789787588;;;=@;999=<>;<=ACEHJMLLGIGORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIh~mv|qoponK26873568:876565676767:67889:7578979776:<@GFIFIFEFOSRSSROPPRTepqsttvy{|{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@6788=:=ECBe
rs|rqnonD3688557699776765:9:::;798987669:98868689;A=>>BA?AKLOQPQOOORWkqrttuvz{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B:=q
lhloy}f>;;;<9:;9:;::9;:9===>;;<<:>;9;;<;<;9:<8::::999<?<<ABDIJMKIKLWorsusux{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<:89989:::;?>H~
floy~^ECBAB>@CA@>=>>@???@?@==?B>@A?@?=@@@>?A<><;:;:9;?=;;==AACABCAXpqtttvz{{|}{}~~}}}~~~~~~~REBAGJNOLIGK:8:;9::<=:;;==?@BR
yprov]KLHHHEFHGECA@CEDCABCB?@DHECECEDAFEFDEFD@B><@>=?@>?>?>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@CDFW
|srpXLRLKKIJJJIFDDGHGDDEFDBHIKGHGFHGEKIKIJKJCFCCDBAACBDCCDDC@=;=@hpsttwwyx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@?A>BBGGIY
ywuocQNLNKJKHKGDGIIIEFIFFELLMIJGGHIJNMOLLNKHFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~}}}}~~~~~QA?>?EGG=<@@88<;;=:>@>?@CFIIP_
y|xrYNMNLJIFJIFKIGKJIJGGGKLNLMHHIJMQNONMOKIGIJHIDIHHFFGGIGCBACTnpuwwyzxyz{||}~~~~}~}~~~~~TDAABGHB?8?@9:<8=>;=A>?ADHJLUq
yrb][PPMLIGDHJHMLGKOLKJJLMLOPNHIKLOQPPQOOJHJJLJLFGHGFFHFEEBABB\orwxyzyyyzz{|~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAGKLPVy
`\WWWUQOMLEFGMPOPWUQPOQSRMSTOMSLPSUVRSQPLJMMMLNGGJFFHJEDEEBECcpuyyzzz{z{zz|~}}~}}}}|}~~UFFGGGGHF>@B=?==B@BBGVNFNPPTX{
n_[mdHUSSRK;;STS`u]UVTVYYRXXRZfPUWZ]RTWQOMRQPPQKLKHHJHEFIIIHIirvyxyxz{{|z{|}|}~}}}}}}~~~SHJIHGGFE??AAEACGEDELXRMTUVXZ|
~arahX=[ZYTR?@WVY\d`VYbr]]W]ZVEQYZ[Y_TYgRVVXUTVTOOMJLJIILMKOMSosvxyxxzyz{z{|}{~~}~}}}~}~~~~VJJIHGEDDBA?HMIMPKIKPTSSXZZ\\x
g;~|rs[^]\SUSWWU[ZuYU}a\X]_WIV]][[_YHYXY[]XXYWRQMPQMMOSQQURassvwwvxxxz{z|}}}~}~}}}~~xy}YNKIIHFBD@A:PQQWXPPOQSTTXXYZ[n
ni\\][VWUXTRXVcRerXZW_hP`f[[X\gaGOZhg][\]]WROSPPRVVVVYZnrtwvvuxxx{{|}}}~~~}~}}}}r}ot|]SPOMKJEC?@;PPZZ[RSQPRRRVSVTW_ux
~}`TX[VTVSRRMPMLfz[]TYUV]ZLTZUST^ZXWWWzkX[\\^TQQPINOWVX[Zdprvvttvxyy{{|}}}~}}}~}}~~~zxwvsu{tk~kry^[VUSROKFCDAM^lVRSNOQOQURSRRUcdv
~zosZMNQQMOLJKEFIFC?TdURQQNKQTQMOYRMNQSUUMQSRPOMLHCIHRTUZ\lquuusswzz{{|}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^\YUPLILIaltPQSNQRQR[RSRQRUTbs{|}{{
va^OFAEEDDCAEQCEAC>CIGV@HNLG]iPHFNFDEFIGHBDHGIKGDBAD@OQMSdrtvustuz|{{{{|}}|{~}}}~~||}}vt{mh|gnqfiedb\XSQPURsWe[OONLQSQUYSUQQTSOV`klrv{{xytrnstsyx~lOIBB<<>@A@@?kQK`EFHIEB?GLNGMQUIAE??<=<==?=?ACC@?==B>JNGUnutustvx{|{||||}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljjf`[QRZ\Y^JJPQNKLQRQTVUWQQWUPX[b]agmmlokg`nrjmlqu{z}{xz||xwxeDBBB>;CCBBDB\]O{NOONKLMOOQLKMWMHG@A<977599=;;;8:8:?<BH?\stuuuvwy|||}||}}}~|~}}}~}xuvz{zwyxuw{|yxuywcqhipmnmmhf^OP_]ZIHPRQOMPQNQRTVXSSYTOYZ[WY]^^_e`]^qvk^`gkwooljonnlfbYHGHHCBGIFFFDMRPaWSXQPSSRU[OOQVPMIDF>:96587979:365795<C>essvwwyy{}}||{|}~~~{~~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`VW^ZXMKTTSPQUOLRSTWXTTYRMWYZVXXVXY]WWXhsk]Vaskba_^da_^YUQNOOMIHJLJIFCQPS[WTTNQSYS\eUOSTRNKIHC?A9998978857578599Gmrtwxy{{|~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOUVXXYSUTLKTVUUUWPSUWTUR]n^RNZ_[VY;DVXT[fJLPSRONMNNNLJFQPUYSTOJNOUST\VRUSROMLIHHF??<:787659967665Wppswyz{|}}}~||}|~}}y}}|~~~}||}}~}|rvqxxrvuqqnppopuvtnjddjppqrpofedc\]RTZVWUTWTRXXYYYSUOJGOPOOMRJPPOPNNOTLMIPOSTU2=XMI@Q=caQSQPNPQPNNMQNTRPSMILJORPRRSTQROLMKLLHCBA=::876;B5566:doqtwx{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqnhihpVVTUXUWURWVUZYXWUQSFEAFGGHFJDHJIGEHLHKHFLMPMG/E_R>3?>joaSRQ@GTQPQPQNQOQPLJLLOPONPQQNPOJLMMKGEEDB;==<9=G6677Dmptvy{{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknaePSTRSTOWVVYYVQQQO@=;=?ABAC@BEDA@GHGHEFHJMLEGCORC8ENS]gTQSAGUPOQQPMMOMKLKLNOOQLOOMHLLIKKLKGFFED<AA>;@E;<89Sprtx{z{}||{y|zz~~|{uturvvz{xzr|{|yymqoxrqunnqroootssrutkgg^ejmpknqmimcLOOMQSLTUTXWULLKI<987;>@><=A@B=>EHGCEFIGJJ@FAA@FHEJOHQRb\QPROSOOPLMONLMMNON[WKMQOGIHCHJLLKFFFE?BC><BG?B?Adptvzzz{|{zzw{wy~~|{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCD=9779?B>;?B@@>@DIECGGJGIEBB?>=CBAGIDMObeQMONWKLNKLNMMLLONSdNJLRIIIEAHJLMNJGIGBAB@?EFEHDKnovyyy{{z{zwtxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGMMJMPMPOHJD?A=98::?B?<ABAADEGKFCHHGGHCC?B??@A>DECKNRTLJIMTFIIJLJKLIJMMOPRPJGCKGCBIILMONIJIGCCCDHJMLIYrmwyxz{zy|vrpurtxyvxjqnjllnttmtu{stxronqovsnporpopstyjN`gsjt|ygosqiqhdqGKDGHHGJKIJKDFB=>=:9:;@B?=ABCCGFIKJDIIFGGCC;A@B>@@BECIMPHHKGHKDHJLMHJLHIJLKM]RHHDNFACJJMLPMKMJKFGGJNNQNLbmivvwzy{z}rmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoiktgdoFKDFEGEFFGDGBC@><=9:::@C@>ACDEIEIJLFHHGFFCB;ABC>@CDCDGLNHKNHDHEIMNMGILGFGIILNKIGENHBFMKMLOMMNMKHHIORRSNRfffqosxu{y|lhjnekqlspfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGIDFFECCCE@DB>?>:;;=:<>CA>ACEFJFIHLHGGGFEC@=DDB>ACCCDGHIGMPJFFGKNOKFHIFEDEIJHJIFHOKDILKOMONOONJJILRUUROWd`amgqroryzgehhdilgqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutwljuumrvqlnlerLHEEHCBABD<BA>A=::=?;=>@B>@BDGJEIFIHGFGECBAAFFCBBBDEDGGIFLQLIOJJMLIGHEGEDCIIHKJGKRMBNNLPNOOMNOKKKOUWVUSX_^\iaminhrsbeffdhhfnjfmmhkkmriqvtsqmvnoqrswsrstuvvvvwvwwvtwujsunutsqrjksMGHFHBBADE<A@@C<8:<>9?<?B@@@DFHEHFFHGFFDCECDIECGEBEGEFGGEJMKHQMJKHHIEFHHECIIIKMKOSNDQROPQNOMNPMLMSWVXXUX]Z]d`ibjigk_eefcgggkggkmkmlprhttursnvoqprtxqssuvuyvvtxuuwxmouorsuqqinyMHGHHBBBFE<?BBD<7;==:>:@B>??CEFDFDEHEDECDEFGJEEJGCGHFHGECFJJGNKLKHJLFIIKHEKKLMNORTOHSTSPROQMNQNMPWZVZYVZ]ZXa`a`^hec`dfhgjhhifhnllnmqpiuuxrrpupppruvpusuwu{~}xvtwvvvxplupmstnprrxNHHGIDBCHE<@EBE=89>>=<<AB<?>AAFCFCDIDDEEFGGGIFGKHDIHGIGFDHKIGKHMKJKLHLKMKIMKONORUVOKUVSPSQRLOQPOTYZY\ZY[^^]`b^\ackb`dfgr
hgifjmnponsrjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqvptLIKIKFBEGE<@GCD@:<?@?>?BA<@>BAFCEEEIEFEGFHHFHHIKJFJHHKHFFLIHHJGLLMLLIMKMMMOLPPQUVWOKVVUSRQRLORRPV[[]^[\^^^``ad]c`ef`ehjdssfjggkorqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrvnvJKLJLGBEDE<@FDDC;??A@@@CA?B?ACHCFFGIFJFGDIHGIHJLHHJJILJFJKHIKJGKKMMJJMLNNMPKOPRTXVMNTUTRRQPMNTSRW[]^_]]`_`aa`acebdhbdijgvljigmosqpqppryvruutsmmssmqrotutrpswtuuwvuuteqskpqjrvnwKMLLMGCCAD<?EEEC=AACBCCDACDAAEGCHHIHGJGCHIGHJFIMHIJMKNLGKIHKKNQKRQMSMKNNOPPOTOWXX[NSPW\ZRWPNTUTTXZ_bb_da^`b^`eaacingbihhnxvlhimosrpqrrrvtsusssnksqmprotvrqquvuswywutucmtkopjqtowLNLLLGEA@D>>DEFC@DBEDDFBCEGCCIFCIJJIIKGDKJGHJIILHJJNLOKILHJLKZfJd\KlSHON_nUks[qpbwcSPavuhucav`Xnqbdvinzf[lt`ljT_wvijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqrqyLNJJJFC?@B?=DEFDCDCEEDFBFFGDEKFFJMLKLLGGMIGJKHKKIKKNLMLLLILML[sbdp^lmUMNfs]ffqlntgpi_aYnnbppbkjjfoqtetno\ougpMJqyvka`keemxlkvmnpsrprqpqrqrrrtrmmsnnopsutqsstuuutwxvttbmukpplrrqzKLIHGED?AB@>CFGCFCFEFEDCHHHDEKHGLNNLMMFJNHJKJILKJJKLMNNMMJMMN[roonpplkMPQlWMibtrpamnu\YlP\nmZqmkomxxtsip]_rkqjUuyxoc^kfbgpojjopprspqpqqrrqqrrtlmrmnnorutqtrtuutuuzvutenukpolsrryIKGGEEEBBB>@@FHCGDIFEEBFIHHEHLJGMMOLMNGLMILKIJMIKJJKOPONLLNNL\hdu]lqWlNPQmTYk^klvaldsSecNmYl\tpkilxjwuhp]^rkhWbcw|oc`ggadityknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvHLFIDEECAB=BACFDHGLHECCHKIHFJLLFNLLSRLGLLHNJIHNHJJIHNOMNLJNMJZsppoqqmlOQRnYrkgooqqomt]nXat_nopoqronusttj[^tcwxrjnzhaacfbbimtupsuvsqppqoqt{~}wlkqnlmnprsqttsuutxxyxtukoumtontsvsHKHIBEEEAA>DDBGDHIMIFCFJLJGFKNLFOJKWRKGKJJNIHJLIKJHHKMMMMIKKKSkc[i^_icrrZ_Yjn_eeUk_c[aaQ`lh]j\niid[pfdp]Z\k[mqcpsldgcdg``kmqpntyruqopqny
vsnkmmonqrttrtuuvyxxsunqunvqqvtwrGGFIDECFA@BFEDGBHJLHFCGKLIEFJOLIPIL[QJEHHKMIHJJKKIHIFKKKLGHKKLMMLJKMNT[\TPTLPONOOVQONQNOQJJOPQdqiTYW\[\VY[]X]\\cfaaebcf__fkmhmtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusGCDGEEAEC@DHDFGCIKLHFDGKLIEGIPKLOKLWLIEEHIJHIKIMJHFGGIHHIEFLIJLOMJP\W^P\[`^MXYS\\b^MXZMXaRKYaZR_d\aX[ddVVX\YZX\VY\]b^daa_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtrxrxsqrurtOBCDLMBDDBEIEHGFKJKHEFIJKFEHHPKMMJMRIGEAHFJIKLJMJHFDIFDFGEFKHCJNLLU_Y`X`a[`TXYT^^Z_RY\P^\YN^\^SZ^c^Z]`c`Y_c[`^[TXWY^]cbcacehekrpoppnow
{
uqprrsvyyzyyxxxvryvxrqxvuvaSJJMIECBCGHFHGHKJJIDFKKKEFIJNKNKHLNGHE>GGLIKLKKKIGDHDCDEAFJEAKLJO[cY_^a_RTRW_`\]Y^QY\MV_WKQY[PZ_aa]^ca`bbbcceZQXUU\Y]c`__cdbhomnllllu
yu|
}wrrtxyyyy~}yuyvvrnzwvxYQKFCGEBEHIFGHHFFIGHGIKILDDKKNMLKHKJHIF?GGNKKKMKKKIFGCD@DAHIC@JKHP]aZ[d]_TQRX]\\\_ZKW\LR\YIM^QO\_accccb\dcbdcfXQUTQ[WZ`_]^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMC@IFCFKJFFFHGGIGFFILJNFDKJMNJLIKJHIFBHHQMLKOMJKIGGED?ECIICCHGET]Y^X_Y_[]UXXO]]QKJV^X^[]UY`RQ__bb``bb`cbaddbXOQQQZRZ]]]]^__dhgljnnp{{|~{
srw
|x\SKCAHFDGMRHCQJEGHHEFKIMPEFIJKNLLIKLIIHDHKQOMMPLLJKHICDAEDIGCCHFDWUE\T]SV_XOTUNZZMIJT`a[_X^^a]OYa\``_bcb]abW`_TPOOOWQ\[[\\^_bffeleoow|{{}
zo
~INFDFFHDIRbPCV^IGGHDFMKPPEIIJKNLKKLKIJGEJNQQNOOMNLMHKADACDGECCFGBMHBKKOONLFMFGIJHGLLMOPILOPOSOLPSRUZYWYXXdWOSTPPNMNTRZXXZ]\`adecgcklpsryy{z
~{}{
}KIEEHFGDKM]LGGXLGHJHGMLQQHLKKKNMUNOJJKGGKPSSNPONNNNHKF`ED_LEgdFN\I^[rmOMUmYLDP`UkWgJ]WU^DLQULLSVQRTXWTXUT\UPfZhhdXRjRVUT[\[``abab`fhfnkhrz|}~}|zr{z{
~z{LIFGFHEEKOSIJF`THIOJIOMRQKMLLORUROOILMGHMQ[YOPPNOOOIJQQI|YYrtYQmHqnoaVPqqsPCksmqspSo_ZnX]V\XUkhU]VcZ`Y[_VVXjtuu^_v^Wa[[f[_`a`a]`agmpl`pwtx}vxzlv~tx}|~|z~wwNJEHMNBDLLGIKERVLKNIKRXWQMOOLQTNOQOKKNGMPS[ZSQROPPPJHZx]TxehZSURvgtlpbnfjQrOMwmjrpsrqrooo]ezuxqqzq~s}ku}bRh|essorr{|o~xnr_``baZ`_gknkblfgmw~~{xwtvzir~ns|~wx{~x|u|||ssNKG`]GAEMMHJJGJPOMMJNV^YULQSNXZMSSRNLOHQRTYWVPTPPPQKHgxlcxrm[KNVypumubovPeeJfvqmwojfxwiWrQhzmijzz~lxzohoYvvjvup_rf}ilx|o^__ba[]bdgijdgbcdllppstsssyqrxblugqy{sruy~suzn|}yxrnNKSuNCBFPOHJKIKPOOOMPZ`ZXKTWPa^RVQYRLOISTUXWWPUPONRJKrouuquqdibWnLqp^FhyWvTLiy}x`y{sna]mocRhqunmypwlvttrln]t~zkmy|ktl|kpvux^__b^\_ddighee^abiiijknokqomjpacfcowxompsy~nqpk{ztromLL[VHGEGRPILMJKPQPPPPW\XUMUYUeXRRY^SLNITTWWYWOSNNNQIRmHiwK`dvvVXlOnl{sajgvULWkh}lmlx_Zpz{^`zscroxqhd}ir|^ULl`vukiu{zm~xk|p\^^b[^addgeeebZccikkrsrvglihdgaakagsrlglmr|kmhk{tmmkmOHKKHJHHQPLNOLKRRROSRWRVTPWZVVTTTa_PNMKTSTQVVNNLMOPKHQNPULKLSTTSTPVUQQNQQXYRNPUTXXX[[URSW[WXXZOSUWXXR^YW^VTPYRWWWWX^Zgr^[[Y\]_cZ_ccdfdccbZcbgfemnmueegcaf_]g`dlhfgkhpzhggjujhgilQIKLLMKJSQMQPOLVUTPTUXUYUQZ]VUTWUYWOOLMVTQNUSNOMLQPLJRQKQMKLPSUSQRSSIHLNOQRQPQTVRXW\WSRPRTUVSZQNSRXVTYVUZVTRUSTUWXV\Y^`]\ZZ\\_c[]bcdfdddaY`acabhhimbad^_c]Zd\bma^fefmsdigjkedcfhPJKLOOLMSPNSQQMXWUTUWWWZUS\`VWVYUXSPPJNWSPNUPNQNLSPMOUSNRNMOQUQUQRTUNKMOQTTRRQVWUYZ[YSURTWVVY[TPTUXUUZUWZVSRWVUW[XZ_\UX^\^][]``][bbcgfedbX_ab^`gdfea^_]]^ZZ_Z_g`^]]chkagfhfd`bcbOLMLQQLOTOOSQOQ[YWWX[YXXV]jdVXYZWVSSOJNVTPOUPPPNMRRPRXTQQOMPTVOXRTUUONMQSVUTTRTWVZ]\ZVVQQVXV[[WQTVVVVYTXXVSRYWVZ^Y]_^U^\^`\[___^ZbbdhgddbXa`b^^fcd`b]\\\\YZ[X[a[^]\_b__bdebd__`\PMNNRQMRROSTQOU\ZZW[[\YZ[dqmhd_[XVUWQLMVSMNROQROLQSRUZUSPPMQXWRWSSSXMOOQTXVUUSUXX[^][[VQNUVU[\WRSWVWXVTY[UTRZXW\^Z^_`Ua\aa]`b_\`]cacghdf`Yc`a__ed_`b[Z\[\YZYXW\Z\[`^_[^^a`^b\Y`[QNONVQPTQOTTSPW\\\X^\^W\^jqwyc\[UUWPMOVSNQQORTQLRTTY[WUOROSXWTSURRZOPRRV[VWWTVZX\][[]VSMTUU[\VRUVVXYSUZ\USS]XZ]^\```Va[cb]ad^\bac_cfidf^[d`a``ce_b^YZ^[\[YXYVWZZZa\][]\\Z]`W[[ZPOOOYPUTRQWRTP[^^][`\`U\]hjr}slg\TWWQORZSRQTRTUTKRWV[YZSOSQVVWTOWRSZRTTTX]WXYSX\X^]YZ]TUNUVW^[XRUUYYYUWZ\VSW^Z]]`]bb]Y_[ea_dd^^cca^efidf^]da`aabd`b^XZ_[\[XXXWW[Y[`\[[\[XZ[^V^Y]QOORZPZTUVVTTT^^`^^b\`U]^bkytl}kZUYTPPS\TUTUTVYWLR[W][]ROUSXWWTPXRSWSVUU[]X[ZUZ^X_^Y\YQWRYYY_[ZTUVZYZWXZ]WU[^]^`a_dc\^]]eaafd^^dc`\gdhedb_da`a`bb_`^WX^Z\\ZYYWV]Z]^ZY[\[WY\]VXW]SNPVYQ]UVYWWUX__aa`c]_T]_beeuzhWYYSUSV\XWWVVW]XOU]Z^]\TRXSWWUSTXRSVTXWX]^X][V]_X__X\VQXTYZZaZ\VWX[Z[YYZ[YW^_`_cbadd\b\`fadfd^_dbb[fchecf`f__aaaa`_^VU]Y[\[Y[YY][[[XXY[YZZ]_]TY]UNSYVS\TVWYVV\`abc`c^_V[`da_zuohY[YUWTW[ZZ\YXY`WPU^\``\TTXPUWVTVWRSUWZZ[_^Z_\V__Z]^Y]URYWYY]bZ^WX[\[\[[Z\ZZ__``dbcddbdYafcffe^ab`c^bcidcg_g^aacaa`^_XT[ZZ[[X[XX\[Z[XWYXW\[[`]V]]SOVYVVZUXUXWX]_badad`^YYadb`lfh^[\ZVWXY\\]_[Y[bVTX^]ac\RVYPWWWWWVSUTX\\^``]`\Wa^[^[Z^XUXW[[_`\_XY\\]^_\[]Y[`a^`ecdeefbXcedhgd^c``ec\eidei_f]cbcaa`__[XY[YZZXYXW[[Z[WXZTY]\Z`\U^bNSWYVWYX[\XWY^`badada]^Yacb_a``^\\\WW[[]]__\Z]cYZX]`cd_RXYPWWXYYWVWV\]^`a`_b^Ya]]^Y\^YXUW[\`^]_ZZ^]^^a]\[Z\`b_becefefbZdffigb_c^afdZhhbfice^bbca``_]]ZX[YYXXZXWZ[ZYWXUU[]]]``bbxKXW[YV\[\]ZW\]_`bdaba]`Xbcbacab][\[XW[\_]`_][`d]\X[becaR\ZOYXZ[[ZWZY`]`bb`ac_\b]_][^]YYTX]]_`_`\[^^`bc]\X\^`bbcedfdefd\efgifcab[cg`\ihbhied`baca_`_\]\Y\YXWXYXW\ZZWWXOXZ]acffrkJYW\ZZ_\[^\X][^_acbaa]b[bdb`bbb\[[ZWXiq`\`_]\ac_^YYcedaS_ZRYX\]][Z[[c`bbc`bda`c^`\^^^YXU[_^]ab`^[`abfc_]T]`acddfegeffe^efhhgdd`Zeg^aghchhfc`bacb___\][Z[YXXXVZV\[ZVVVMXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vuuuuuuuvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{zzzzzzz{||||||{{{{{{{||||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vutuuuutuvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{zzzzzzzz|}}}}|||{||{{||||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||xÅÔÒÒÒÒÔ{}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½ÌÓÒÒÒÓØZ%+++*%c~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}xÕçääääç{~y1333332j{éääääèÊÝæääååëT]}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}v~ywwwwwwxyyyyy{xpoooppprrrrrrrwzyyzzz~||||||}
xssssssy}||}}}}|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vtttttwtvwz{x{xwvwzxzzy~yxxyxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{yyyyyyy|}}}}}}|{{{||||||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwvy}|}z{~{wwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwvz}}|}|~|wxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z{xwv{}|y{}~|xxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzyz}{|}|~{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyx{xz{y|xxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyxyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||
{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxyyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oxyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{{{|||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|}}}|||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrsuuttssssrrqpoooopqsssrrrrstttsqqqrstttttttsstsssttttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqsttssrqqqponnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqrsssssrqqpponnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnnnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrrrsssrrqqppppoooooooopopooooppqooopppppopoppqrqqqrrqrqqqqqqqqpppppqoonnnmmnnnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpqqqsqrrqqo|oppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqqqpprqpsnpppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqq}¡pro|oppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqrqt¡vqw}oqqqqpppppqqqpqpppqpppppppppppppppqqqpqqpppqppqqqqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrrq¨o£~pqqrqqqqqqqqqqqpqqqqqqrssrrssuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssssrstr©¤y |rsssrssttuuuuutuwxwwwwwxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz~|~}|vvwwvuxzxxxxxwxyy´©¤¨¨}{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{|{{¯¦¡µ«¬£~{zzxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}}}}}¥¢² §}}}}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~ ° ¢~~~~~~
~~}~~~}}}~~~~~~²¡
|~~~~~~~
|||{|}||~~~~~~~~~~~«¤¤ ~~|}||}}~²¨¢ ¦¨¨
}||~~
±¦ ¡¤£
}}}
~~
}}~~
~~~~
~~}|}
~}}}}{
~~}~
¡}~
}}} ª¨
~}~~
¥¤
~}~
~
~~
~{z
~}}}}~~|{|
~}}~~~~~~}~}}
}|}~~~}|}~|z
}}}~~}|}}{zy ~
~~~~~}~}~~}}}}~}|z{z~~}~}}~
|}}~}}~}~}~}}~~}}}|{{{zzz{~~~~~~~~~~}|~~~~~
~|~~}~~~}~~~}}}}{{|zzzzy~~|~~~~}|~~~~~~~~~~~}}}}
~}}}~~~~}}}}}|||{zzzzy~~~~~~~~}~}}{|
~~
~}}}~~}}}}}}}}}|zzyyy{~~||~}~~~
}}}}}}~~}}}}}}}}}|{yyyyy|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxxyyz~}~
~~}~~
~}}|}~}}}}}}}}}}}}}|{{|z|yyz|}~~
~}|||}}||}}}}}}}}}}||{z|yzzz{}~}{||}
}
~~
~}}||}}|||}||}|}}}|||{z{|zyz{|yy}~}{|~}}|~||}
~{z|
~~}~}||||||||||||||}|||~{z{zxz{{|}{~~~~~~}|~~}~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||}|yz{{xxy{{z|}}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{||||||||||}}|{}|||{|||zzy{|{}
~~
~~~
~~}|~~}}}}~{|}}~
{z{ywz}
~~~~}}||}~}|}}}}}}|}|}|{}||z{z|}}
}~}~~~}||~~}}}}|{}|~~~~~}|~}~~~
}|||}~{{}w~vx~}|}}}~~z~~|~~~~~~~~~~~}~~}|~}~}}}{|||{{z}~~|||}|}~~|{{}~}~~}{{{}|{{{{~~}||~~~y}~v{vx}|||{}}~}}~}~~~~|}~}}}{{}}|z||}}}}|||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}{~~~~~~~}||}}|}}}}{|~~~~~||}||}|~~{|{||||}|}|~|}|{{{|y{|{{}z}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}}}|}|}}}}}~|}|}|}}~}~}}}}|{{{|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}}}}||}}}}|}}}~}}~~|{{{||}|{z{{yzyxy{~
~~{zy{}}x|zr}{{}||~~}}
}~~|~~}|}}~}}|~|}}|}}~~}~|}|{|}~||{|}zzyyyyz{~~
~~~z{y}}zzz}q~z{}}}}}zx
~}~~}~}~~~}~}}
}~}~~~}}||~~~}}}}|}||{|}{{{zzz{{|}~~
~~~}yzz}|yw{t{|tw}~}{{vv}
~~}~~}~~~}~~|}}|~~~~}|}}{}}}||||}{{{|{||}}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{}~|}|||{|{|~
~~~~~~~~~z{z}}uqz|zqz~}yxtt
~~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}}~~~~~}}|}}~~~~}~~}~~
~~~~}{z{z|{z
~~}~~~~}~}}z{|
{{sy{|pwuvwyutz
}}}~}~~}~|}}~~|{{z|{|~~}~~}}}~}~{{zx|vyz|qtxwvxury
|}}~}~~}|~~~~}}z{{||}~}}}~}}~~~}}}~}}}}}}z{{|v}yxzzruyyvwwsu
~~~}}}~~~~}||~~~~{{|||}~}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vwvst
}~}}}~~}}}~|~~~
~~~
}}}|{||yz{z~y{yx~{||~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst}~}~}~|~}~~}~}~~~~
~~||||zyvyyzyvyv~|{{{~}|}~}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}}}~||~~~}~~~~}~~~~}~~}~~~|}||{|uxyxxxyw{|{{{
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~|~}~~~~}}~~~~~}}~~~|~~~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~||~~~~}}|~~~~}|~~|}~}~~~
~}|{{{|yw{ywxwwx{{z{|
}{zwz|}}||}}}~|}~~}}}|}~~}}||{zz|{{zyzz{zxswuqqsoxwq{
~~}|~~}~~}}|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{||{zzzzzzxsvupprowvr{
}}~}~~~~|~|~}~~~|}~~z}~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxzxy{||}|||||||}}}||}|~}~~~}|z||{}}{yzzzyytuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{wwy||{}|{|||}|}}}}|}|~~~~|z|}{}}{yz{zyxstunsqpxruz
~}~~}~~~}~}{~~{|}{z||{zxxy|||}{||}|}||}}~}}}~~}{|||||{zy{{yysrunvrpxqvv
~~~}~}~}~~{}|}||}xxuxxy{||}{{|||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|{}|{}xwvyyz{||||{||}}~~~}~|~}}~|w{zz{yysqunwpuzrvy
~~}}}|}z}{yvzxy{{|}}{|}}}}~|~~~}yy{zzzysrtowqwysw{
~~~}|z||{w|yyy{z}~}|}||}~~}~{{{z{ztqxqytvxtv{
~
~||}|x|yzyz|}|{||}}}||{{{zzzupxwyvu|uv|
~
{}~|y|zzz}||}z||}}|z{~~~}}||}{vrvxxvtvu}
}
{||}zz|}}||z|~}|}}~~~~~|}~~~}||xvvw
~
}}||{||}}~~~}~|||}}~~~~}~~~}~}~~~~~|}
~
~}}||||~}}{|}}}}}~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~
}uz
}z}~{
}~~~}{}~~}|||}}}}|}}~}}|
h
j|{qq|sstt}usqspurstv{}uvy
hzrss|r~}}~~|}}}||||}}||~}~}}}
}p{pyv~nypus|vyyspvxqvtturstvinrotvnulwmzsnym}rsvsvmnwlpylu}~|~}}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpur~ozyymonzoolw}xpqzprtfu~n{ysoy}~{~}~~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyrioyxpkyszozwvvp~~z~}}}~}}~~}~~~
xyrz{pp
x
xyks~y{krz|mzyyt}vnoot|uwpy}}m~uo
zrr{|upozks|nv~~}}{}{|}}}}~~}~}~|}~~
}w
~~{|{~||}~}}~}~~~~~~~}}}~|{|~||
}{{|~{||}~~||~}~}~~}}|}~~~~~|}}~{|||{{~
~|{}~{|{~~}||~}~~}~}}~~}}||~~|}|||}|||~z{{|~
{{~~|||~}|||}~|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}~~|||~}||}|}{|||||}}{{{}|{~}{|}}|}}~}|zz{{||
zz
~|~~||}}|}}|~{{{z{|||{{{~{{}{z{~||||}~}{z|z||
|
~~~~||}}{}}|~zz{y{|}{{{{~||||z{}||||~}|{{{{||
z{
}~~||}}~}{~}|}zzzy{}}zz{{}|}||zz}||}|~~{{{|~}|
}|{
|~~}}|}~}~{~}||yzzyz}}yz{{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~|}~~~~}}~}{}{zyzzyz|}yz{{{z|{{{{|}}}|~}||}~|{
~}}{
~|}}}~~~~~}}{|{zyzzyz{|yzzz{{|z{{{|}~}}}}||}}|
~|~~
}~~~~~{||}}~}~~}}~{~{{zyzzyzz{yzzz{{|z||||~~}|}||}~
~~}|}~~
~}}~~|~~|~||~~|~}}|||{{zzzzy{y{zyzzz{|y{}{{~}}}}
~}~~~~}}~~~~~~
~~||~}|~}{~|}}}~}||}}{{zyzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌÌÌËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<C9;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;>BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937676=;>:=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<:<<98:9:::;<::;9><>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA=366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖËËËÌËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÓÓÔÔÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9>CE?<;999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNG¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖËËÌÌËËËËËËËËËËËËÊÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×Ø×××ÚÛÚÚÚÚÚÚÚÛÜÛÛÛÙ××××××××××××Ö×ÚÛÚÚÚÚÚÚÚÚÚÛÜÜ×ÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILN@99:4;@<7=9AC=@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMMF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÏÐÏÏÏÏÏÏÏÏÏÏÏÏÖÞÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¹´»¹¹¹¹¹¹¸¸¸¸¸¹°½æáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃrliNSbLLVM<::77>C?8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKPFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÌÐÒÒÒÒÒÒÒÒÒÒÒÒÑÞìëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¤XRSSSSSSSSSSSOw¨¤¤£££££££££¥SSSSSSSSSSSSSKªòëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËwliJN_MRUM><<7;?C>6:7>?;=B@9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÌÐÒÒÒÒÒÒÒÒÒÒÒÒÑÝêééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¦\VWWWWWWWWWWWSz©¥¥¥¤¤¤¤¤¤¤¤¦WWWWWWWWWWWWWO«ñêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<<<;>::;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÍÏÑÑÒÒÒÒÒÒÑÒÑÑÑÜèççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©ª¢fabbbbbbbbbbb^©©©©©©©©©©©«cabbbbbbbbbbb[¯ïééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9::=<;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÍÎÎÎÎÎÎÎÎÎÎÍÍÍÎÏÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÏÎÎÎÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÑÍÌÌÌÌÌÌÌÌÌËËËËÍÒÒÒÒÒÒÒÒÒÒÒÒÒÑÍÌÍÍÍÍÍÍÍÍÍÍÍÍÔØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<7@A<=8:;898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÒÓÏÏÎÐÓÐÎÒÔÕÔÐÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÖÖ××ÖØØØØØÙÙÙÙÙÙÙÙÙØ×ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoVJ_cRQZKHAA<B==;:>><>?==?89:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÎÍÍÍйÇÓÀËÏÎÎÎÎÎÒ«ÏÏÒ¹¾ÔÆÏÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==<=:<=B>BB@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÒ¶¥£ÔÀ°±¸¹¯¡ÒÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?><7:>9?D>@98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÏÎŤ Ã}~¯°ÑÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>><<96?B?B:648:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÑ¿ ³§ºÔÒÍÃÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8E@?B:74:::9;;8;=?=>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÓ´ª¹ ÒÓÀ ÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<=<964:98::97;?@<<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÔ«~£¬¯¡¹×¯¢©ÔÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>9<97659:6:<;7<?@<::=:<?>=<9@<<::9?@==<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÔ¬§¡©Ø£¡ºÔÑÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CGDAA8;?<=;<<7558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÓ¶²²¥¦Å¢ÑÉÒÑÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF?HHFE@<<>><==<756:96:;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÄ¢¯Ç¡ÒÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:7:;::;9==:::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸« ÇÕ¢«¤Ï¦«¤Å´¤¦ÖÒÒÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKK@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÓÈ´Ö̧׹¿ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUij[L_MJLJULFB<<?FEGKI=667:979:;:<=9>99:8;=>>A>=9<<:=>>;=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÔÈÁÕÑÔʽÕÒÑÂÓÒÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?ADLLA>775:8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÑÓÔÒÒÒÓÕÓÓÓÕÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ==786977899;;=?@<<89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9599:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EIKAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDI;AA;<886586987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<AA<;876797799=?A?<:9@?<>B?:8776=?@@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD88867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE><HF89757875898;>>=;89A>=@?A>7596;>AB??@@AB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCDECALH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HQA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELBA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<<DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAD?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8:87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
¼ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9768579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsnupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9886553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿½¾¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;;>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>=<=>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸¸·······¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPF>8;727967453588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³µµ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶······¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸···¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬«««¯°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899::;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©©¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶···¸·¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¥¥¥¥¦¨¨¨¨¨¥§¨¨§¨¨§¨¨©ª§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸·¶······¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::9:9<=::A<6=8378837;@??@@:BEC@BDCA?;;@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥¤¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¥§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§¦¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?A?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©«««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤¤£¢¢£¢¡ ¢¡¢£££¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@?BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡¤¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747578;=8::99;=;;89>6789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥£¢¡¡¡¡¢£¥§¦¦§¬«§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¦¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¦¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364689:89788:<;<9;;::67899>?@><=@>@:9@A?=A?>AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥£¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB?DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¤¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;<;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¦¦¥¤¦§¦¥¥¥¦¥¥£ ¡¡ ¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ xlcdbdQGA=C;KHD:;;<>9::9:737959888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢£¢£¤¤¦¦¥¤¤£¢¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::78:64795<968979<;;<::<;:<<8687>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££¤¤¤¤¢¡¡¡µ¡¡ ¢¡ ¢¡¢£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡ ¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¢¤¡¢¢¢¡ «¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86:746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¢¢¢¡ ¥³¬ ®jv ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>99;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ¡ ¦« ¨D ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9<<>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢ b¦¡£QH ¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:<>9?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¦f]£ ®uIL¡ ¡¡¡ ¡¢¡ }xjabb\Q<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq ¤Rx¢ ¤_VN¡£¥¢¡¢¢¡¡ ¢¡ ¡
wqgjd\\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢ [_£dZM¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[[LF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡]]v¢dYM¢ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡`a`tcUO¢¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;879:;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y i^[ej_QS¡¡}
£ª¡¢¤¢«±·´¹µ±´¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B@AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡ shaTv\WPW
¡§ ¤£ª©³¶±µ°¨ª¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥£¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v} £¤nMPc
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VQQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{ ~j¥}_r
§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974869388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
~¢{mQuZq}|~}|¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¦ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
}wWNKrM_oqw
¢±®©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~£T//=xwvAD]km¨®²°°µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWMO_^\NUUbQDTM;?9<895875795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
¡¡¢¦gB[H;xykgE18Zls ¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUJTOOJDPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ªª©§¢¥¨©«©©¯Jr¢yA|xdbQT^I`n¡¡¤¤§¤©«®¬¥¤¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdWOYKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®««¬¤¡¢¦©§¨£x`ÁÖ¥C|uOnvSd£¨§ ¢¡®¬«ª§®¨¥¤©©ª©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_VZNRNQOSe\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨§¦¨©§©©¤§§¤¥£¢b½À®y¡¤eL_xmQt¢¢ ¡¡¡¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOXO^edlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤ ¢¡¢§¡¦®¦¦jº©Ñ¢³¨XLSe ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvxb_\UYQUW[c_s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?B?:8:>?C@DA:;>=@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯««¬¨¨«¯©¨ª¨¢ ¡¨ª±²¯«¢¢
w~}rÎƯ¦¯kUª°c[¥¥¢¡ ¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\U\hdocmiib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¡ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£ £ªª§¯··´µ¶³®¬n̼¥tTozsp}¦ª§¤ £¡¤¢§ £ ¡¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxjb[__\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>BE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ «²·»»»¹¹Á¸´µydXµ»¦§wkqoxy{~
£¥¦«¥¤¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__amhvkqhiibZSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°²´µ·ÁÆÌÏÎÌɾ³¤rfRD
}xqngflilrrqrru}©ÄÄ»¢§ª¬§«©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YSaiaftotitdidb[LK>:9898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÄÇÃÅÇÛããÚ˼®£tYZQDiwjntnkeeYW]X\cjjifai¶ÁÀ¹©¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`b_^kcbnxuwom[bRV\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAA;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅƾÍÒÕʹ¦
r^QTKD[e^cjea`hYTXSWYZ]Y[u·¼¬´²³©®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklgnvrrvrg^`\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÄ¿ÂÁÇËȶtcUPOTH>^l__eb`]daSUWVUUXs±ª¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|uklndomiqxoyjia]gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄù¸ÃaIDGKD=[eabic`[c_WROPPW´º¬®¥¤£¨¤ ¥©´±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{wnkihvZgsxszgg^d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÄÄÂÄÁOFME;MZ]ele_[`YYSNU£«¹µ²¬©£¡©¬§¬´´¿Ã¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyvvefjjh^kpnyxcba`^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÎÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈÇÂÆjXG??F]baj`ZXWTVw·¿»¼º¼¬¦©»º¹·¿³µ¸²Áƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««¬±££ £¢ £ }qtqocahvhjjunyl^d[V`YLHD6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÌÐÍÇÌÉÂÂÇÂËËÈÇÌÉÎÅÆƽ©rPK0XSVeaSNPq©ÈÈÂÄÇÀ¼¾´°°°Â¾¾ÁÆÀ¾·¶Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®¯µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r}xpg`kjwmifvotc]cUWUSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÃÿ¿¾ÄËÈÊËɼ¼ÈÇÉÍÈÃÈÉÉÅÅÂÃÂÁ¼?OwVLo¥ËÔŶ¿¿À¿º»½µ³³À¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyspfegdlebknoo_Y]WVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ãº¸¹¼¾ÁÇÁÆ»¹ÈÈÃÅÄÀÃÁÁÀÄÁ½¼Å§wko«ÈÈÇÑÁ¯½½¸¹»»¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfaebacddjcgd[ZZ]YQOE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹¾ºº´À¸µ·²®º»·À·¼ÊÏÀº¿À¼»Å½ºÀÄ¿½¾¯sd}ÑÅ¿¿É¿°Á¿º·»¾¹µ¸´¸¼´½¸µ´°³¼±··¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qdacchkggjfj^VVTYOSLF8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ¹¿»ÁÕ¸¿»ÃµºÇ¶µ¸º¼¸¹¶ª¤~É¿¿»Á¾¹Æ½Â¿¼Å¸¶·´¸¶¶»»¸¶´·ºµ³¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zyqmeegpjelhYYOKKKRJLHD9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹º»¿¼ÏÄw¨Ì½Ç·¹·¶´·¹³µ±½ÉÄI{ʾ¿¾½¼¿ÈÃÅžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~}knqgqktfcn`\UHKKDJCCG?:;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼»À·ª¤®°¸»²½¾»Ä¶µ¸µ·¿¾Ä¼ÂÄÖ®t»ÈÏÂÀ¸®´´»½·¹±½ÃÊCuÍÿ¾½¼ÇÌÇÇÄǽµµ¶Á½»»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢rfljouoydhc\cQKUHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£°¹½¼²¼¾¼Å¸±¸¹¼ÆÉÊÂÆÉÒqr«ÑÑÌÊĵº¿ÄȾ¾´¿ÀÁxRnËƾÁ¼¿ÃÌÊÇÅÆÀ¹½¼Ä¿¿¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tpmmtlmo`c_bbNIM?E@?DC;;::;:8;<:9<>::>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´»ÅÐú¾¼Ä¾·¼À¿ÉÏÇÈÊÊÂrs£ÌÌËÍÊÆÂÃËÎÁ¼¸½º±ocb»ÈÄÀÀ¿ÄÀÊÉÃÃÄùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{z{mmx|`qd\_`_TI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼·»»«Ûþ¶¾À¾¾º¦©²¶Ã¿¥yuxÄÇËÈÁÃÀÀÉÊÁ¿»¹± |rlÈÅÄ¿ÀÁ¿ËÇÃÀÈÀºÂ»¹³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsxthp^\_]ZRFEDMIAD=H;;59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯··²µ³·¹¼»¶»»Ä¸mν¶¹À¼¬}nhnmrsw|½¿ÆÀ¹À¼¾ÅĽ½¸±°}ÊÂü½¿¿Ãÿ¿Ç¼¼À´³®´´¼¾¿ÎÍË·²¸··½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|wmu{qoj\`aZTQAFIGK@ECI<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹Àͳv³½¶µÂ¥iZ^`MR[Znsw¸¸Âº³»·»½¿º»»®¤~ÀÄþ¼¿»»¸¶Áµ¿º´®¬¯½À¹ÏÊÉñ°µ´´½º¾ºº»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶¼´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦{zsvvxnra_g][UJ=??GG=GCC9:5;99><<9:<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Âɨx ¯µjegVY`IIMPSlw¥°·¾¹²µ²»¹¼¶¹¾´¥¡q®ÉÄÀ½¿¹³®²¼º®»´³¥ª¦¬º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtwrm`db\^OIB?=IDFMD@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·¿Åª|u `TCXUGajVOEJ` ¬¯¶ºµ´²¬¼¹¸µ¸Á½°¡¥r¥Ë¿¹ºµ®¥¬³±¦²°¨ ¤¶´Á¶µ³¥§ª¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´¶¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wp|pvsod^hY]^SONB?JCAKJ@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸¸¿µxoNJ?dYBNwjNA]°µ³µ²´¯¬»º¸¶¹¿Åuªc©¿¸µ²±¤§¦¢®¦¨¸«ªª¤¨¤«®¯§°«¯±±±®®¯¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvtmvjl]\kU^\PNHDGMBGNG8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³·¶{XFANYJJXwcAS£¹³´²°±°¹¸¶»·º¼¡²«£r¬°©««£¨ ¥
§£¢£¡¦¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wryiutoeUbdX]ROMI@IRDNC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²¼©iN@RxqPIIKgYER®»±¬³¯®¬¶¶²´µ®¨¦¦¨ ¨©¡§U¢§¡¢¡¥¥££ ¥ ¤¬¥¦¨¥¢££«¬³®©®®®§ª¨¬¡ª¨««¦¢£¦¢ ¥¢¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ª©¤©«¦©¬«¦¡x|vzcxmn]QiUPOGPMMCPRA?;>4::5;:=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢ª¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬¨½Â«¥¾iERQWIJ`JT`cb®µª²´®ª«¯°²³¥ ¡ £¤¨£UV § £¥¨ ¡¡£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ ¤ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£~|uv}nl{diVSdNJHGOSNKNH<E@=2@859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶¶º¹º··»®¨ ¡© ªÆ¿Ë¡PArwOnKKcfus`Z^p±¯®³µª¦¬¬£¢¢¤¤:d¢©¡ ¦§«¢ §£¦¨£¦ªªª®§¨°¥£¤¦§¬¦¢¥¢¯¨®²«¦«ª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ |~wy|eyyabSVaIIKLSUJSQM9?A67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¤ÇÇWSIe£[e~or]Qkc[d_]k´°°¸¬¦¡¢¢£=d{y££§¦«§®®ª¦¢±££¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§¡ £±®²±´ª²®£¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvsime\S[ZMRKOOVMTMB7>C78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢«¤zUirvupcvvXWc`cgYXWf®¬¯§¢ ¡£ jcfpzxu~¦©«¥µ²´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½¶¾°¬±®©ª´±°¨«¨³µ¸³¸²´¤ ¥ ¬¡¡¢¡ ¥¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xvjwu^m[RaIRVHFVWKCMH=KI8F<77;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©¨®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¢¡ ¤np`cXL[SZMLPXRHMMH¬ª©¥ ¶«g}uy{´®³Á©·¸½¿ºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ·»¶«®±¹·¼¯³°µÁ¼·¾³³µ¢¬¢©©²©«¨§¨ª§ § ¨¨¥¥ª¢¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vrmiwmhn\X\CWNJGMHCFN=>L>4<:6:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©©ª ±¢·¤°¦£bW^e`WMQG>>?CC?>BQx©©ª¦ ¢£
¼Õ¹
zqpl©»Ä¹Ã¾¿Â¿¶º»Àù½»¬®§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¸Â¾¸´»ÆĽü¸´ª³ª³´¯³®ª¯£¬¨·²£°¦¡£°±®°¤¥¯£¡ ¡¦¡¤ªª £ ¦¨¡¢¤££¡¤¦¢¤|trklurqhW\QFUHDJPI?EB4FH96<>7;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ }`^e`QGD<C>E<?96N~ª³§¤£¢ ¥¬¦xm³ÛÔ¼«rh]]ζsÇÅÅÃÈÂÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÆÌÌÌÒǾ¿ÀþÇǸÄÊÉÄÁÇ¿º´º»µ»·°¶²«»²¯¼·À»º«¸«ª¸»µ¼®®¸£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢
~zrkdioxkeZ\FLMEDTMEBE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<@?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡~sjaWNE>IY|obB=\®¬ vrpmp»ÃÇÄÀ·r`W
¹ÐÌÌÌÇÊÅÅÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÍÓÐÓÓÌÊÁÆÇÆÊÈÏÀÉÑÍÇÆÈƽÄÁ¿¿¿µ¾³¿ÀÃÃÇÅÈį¿¹²¸½ÄÂÁ»¼¼µ®§§®¨ ¢©¥ ¨«©£¤¤ £
yusebgrog^ZZDOMCFQIDCA55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>9;AA;;>786:;>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £kf]TID@?K¥ ²£yqrol{g¶µ¡}zzkheq_ºÔÑÑÍÍÎÐÄÍÔÕØÑ×ÍÆÇÉÌÃÅÊÏÊÒ×Ò×ÒÕÖÓÔÈÌÇÌÍÊÓÍÎÓÍÆÉÊÊÂÇÌÇÉÉƿó³ÈÅËËËÏÇÊ¿¾¿½ÁÇÅÌÌÉÉÀÃÀ®°³¨¢ª£¦©¬¤¥¦
{ruvgcgvjeVXRDNG@IQC>B=:22A<E<78<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡cSLJDC?CR®Ñ½²¯¦ ¤¡}yqlebhrpr{
upmqqpyQY|¤£~ojcfjf]ØÑÒÓÔÒÏÑÃÐÓÖØÕÕÒËÉÎÐËÆÍÒÊÒÕ×ÙÖØÓÖØÍÒÊÏÑÌÏÑÍÓÐÀÉÈËÄÌÍÌÏÏÆÇȶÀËÀÒÍÌÐÇÊÉÀÄÃÈÏÍÐÑÏÍÊÈ͸·»¨¥«§£ª¥©¨¨}xsvpcaerc]R\JKGAFIJ?;A8>5586;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¥¥ ¢¢[I@ADAFQv²¯¦ wida____^__]alusppnlqoucZw
ia_cicyÌÔÍÏÕÔÔÑÑÌÐÍÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐ××ØÒØÒ×ÙÕÖÌÏÏÉÍÒÌÎÑÀÇÄÉÇÏÎÑÑÒÈÌÍÀËÍÆÔÏÌÏÉÅËÇÇÉÌËÔÔÑÕÏÒÌÓ¹ű¥¨µ®¨¨«¥²¨°³¬¬
|zqstmacim_VQ`JJCECSN?<>43:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><?@=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¥®·¨«·×ÔÕÙÙÑÎп¼Ìɶ¾®§ª¨¡£¬gC8=>DXª¨}qecb__a_^a`^a`_`emppmknqrv|`]gYY^muÇÔÎËÒÍÕÔÑÊÏÌÓÖÒÑÖÍÏÕÕÑÅÑÓÊÐÔÕÖÎÓÑØØØ×ËÈÎÄÊÏÍÊÌÀÉÁÉÊÎÏÐÌÐÎÎÌÏÐÈÌÐÑËÎËÃÊÈÊÍËÌÒÓÎÔÒÑÐÐʽȹ°®»¹µ«¶°¨¸³¿»±
zvopokadnpaX\[IFFDMYE;@=33<<87855;>@=9<<8<>9<@;@:=8?98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÁ±©¬©¤²|HFB;V¡k^^^adb``aa```^__^\bmqnnqqrqww[gbUYj³ÍÎÄÍÊÒÒÎÆÎÌÍÔËÎÒÍË×ÖÐÌÑÔËÌÐÑÓÊÎÑÕÒÕÖÊÀÊÂÆÍÃÈÊÃÍÄÆÉËËÏËÎÍÑÎÔÌÇÉÐÍÉÇËÆÇÂÆÊÌÎÑÑÇÐÏÎÎÌÐÅÇÁ¸¹½Ã½ù²²¾°»Ãĵª¥¡yqrkmh``qhYXhVMGLIQQB;D?;68:8::57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±Ç¸ÊÕÖÙÚÛØÌÌÏÈÖÕĵ¯´¨ xlopw|ebbb`]^acb`__`aa`_][]gqqpqqmimxhUx|[Ti®ÅÆ¿ÁÄÎÎÇÅÇÍÊÑÇÊÍÍÆÑÒÏÍÌÔÊÇÊÎÏÇÇÏÒËÐÏźĿÆʽÃÇÉÎÅÃÈÀÇÎÈÄÍËÍÐÉÅÅÐÉÆÂÆÉÅ¿ÁÈÍÌÌÏÃÊÌÉÇÌÐÅÅÈ»ÇÃÉÉÂÏÁ½¼¿°ÁÉǹ½ª±²§¥¢£xoudk`^fqa[W`GIHGIMUG?J=64355==48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼¹ÌÌÆÐÕÕØÚÛØÐÉÏÏÑÓÈ·»»¤¶~g
¢ª
}~s_[^]^`^`cdc_]\^_``_[Z\akrpmmhgikq_eojX\w¢·ºº¸»ÈÅÁÃÀÃÈÉÈÈÉÇÁÅËÅÇÊÍÉÄÁÊÉÁÁËÏÄËÈ¿¹Á¼ÆȾÀÆÏËÄÀûÊÇÈ»ÉÆÅÊÁ¾ÂËÆÅľƾ½ÁÄÆÌÆż¿ÊÃÅÇÒÅÁÉÀÊÊÆÈÆÐÃÃÆîÄËÇÃÊ·¿¼º³©¬¤¥¬£¡¦£ |wsufj[anmZ\XRDLGCGDLDFS?54335@=3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¾¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÃ¾²°¶m^z|z
uxurp_Z[]``bcdded`[\^]^]_[YZ\bnqnifgkinv\ZZ\`s~®¯±¯®À¹º»¹¸ÀÁÁý½¹¼¿¹ÄÉÅƽÆÀ·»ÃÈ¿ÁÉ»¶»»Åÿ¼ÂÎÃƾ¾µÁ¾Ä»½Ç¼Ãºµ½ÆÄÂ÷À¶¶¿¿¼ÍĽ¶ºÈ»¿¾ÌÄÂÆÃÆÉÇÉÆÐÆÂÌȲÇÉÃÎÌÀÅÿ¼²·°²§¨¨¹°¥°ª¬zwxkeh`hodV^YJFJFHKAEBFJA9:658853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µ«·´²¡¦¢·ÅÂÄÈÎÒÊÊÊÇÍÍÎÑÈÐÆÕÔÕ×ÍÊÏÅÉÅÇÁºÅ½¬®§`cvx}{ttc\\]^``bcbbdeb]\[\^\^]Z[\]grpkdcijjupHO\Yhsoid¥¦ª¨£µ±µ³²²³»µ¼°¶¯³¯²»Â»Áļ¿º´²º¾À¸È¸´¼¶À½¸½ÇÁûµ¯³µ»¿´Å¸»µ¬¹½¾À½±»¶°·º³Æ½·¯¼¿µ·µÅ½¾ÃÆÀÄÆÆÇÌÅ¿ÆÆ»ÇË¿ÏÉÇÃÆÁ÷ý½¶¹¾Ç¿¬µ»µ·¶ytxggebkn^V^`FKHHJGBDAEF?=:566633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÅËÍÈÅÈÍÌÐËÍÈÉÈÊÉÊÄÐÍÒÏÍÅÇÁÅÁ¿º¸É·«°[gozx~
vw|sh]]]]_`_`da^cec_^\[^\]^Z[[\_kolfcfhgjy_CPL\\VRs¡¦¢§©¯«©«¨³µ¯±§¦¬³»º¶Ã¹º¹°ª´¹»³Â¹¯À±½¼»µ»Ç¹Ã·ª¨°²À¶¸½°±¨²³µ»¼«®¶§®¶®¼²°ª¸°®»®»¸»ÀÁ¾ºÃ¿ÆÃÅÀ¼ÆÁÇʸÅÇÅ¿ÇÃùÄÆ»ÆÉÌ˳¹Â½»³tvwki`bliYWW[ALLMJEAC?FA:::996854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÄÏÇÍÁÂÆ¿ÄÄÃÃÊÂÉÊ¿À¼Âº³µµÃ®ª±[i~{x}
y{wn^]\\]_`__dcbdcb`_]Z[ZZ]ZZZZ]cmmfdddeglxQ=ELX_Z¥¡§«¢¦¡ª©«ª¯¢¥ªµ¶±½¸¯·¯¨¸´³¼·³¼°¸¹µ²¼Á²À®¥©£«±³³¨½ª«¨«¬®µ´¦©®¡¥°©³¦§¨®¦¨·¬±³·º»»²¼¾¾¾Ä¿µÁÀÇÈ·¾¿Å·ÅÃÀ»¿Ä¾ÄÈÌÊ¿¿ÄÀÀ©stsji\aodWVXPHZSSKFFE>?@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃǹ¹ËÂ˾»É¶½Ã¾ºÊ·Áõ¶¼¶±¯µ¼©«dmz}~xt~|swe_]\\^_`^_ccab`a_]]\ZXY[[XWY\_ejdbcaddhnsFDdp]®¦¡¡¤¥¦¥¬¤¥¬²°¶¶§°«§ª´«³¹°µµ®¶¹³°ºº±¶¤ ¤ ¦±¨¬©¹ª¥§§¨§³ §§¥¦¬§¤¡¡±¬²µ³´°µ¼¶»ÁÀ²»¾ÃÁ±¹¹Â³À½Àµ¸¼½¾¼ÂÇÄÃÄ¿ÀÄ yqlbf`ko`UY_HNhOTHFKF<=@=:;<826536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;>97776788666;::;9:;<859<:>>@;ȵ¶½¸ºÁº½¶ ¦º¶«³³»³ÄÏÉËŸ·ÇÀÌ¿¸Ê·»Å¸³Å¸³¿À¬¶¼²¬¦¯´¡£ir
|xusomjiipi_`]\\\^__acb````^\[\\XYXXXVXZ]^cb`cccbeelkY{y_T\D^b¤¤¢¤¢¦¢ª®¬±´£¨©©«¬¤´¸¬¶¯³µ¯³µ¯°ª¤¢²¥¦ª¸¢¦¦¨« ¥£°©¬¨ª«¬°³¹¯¸¹º°¶¼»º«³²¹³½´·²±¶µ¿µ½À½Ã»»½{sl_e^ddXTW^IW]KPGJJGA<??A;?<05636:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»¸ÁÁÁ´¤¤¤¦À²¯¶¬´·ÅÏÈÈÀÆ»»ÃÃϾ¹È¸¸¿·²Â´±»»¬ºº±¢©«§m~
xrmomkb^bff]]^]]]\]_`abccba_\[[ZZYXWWWWWXWZ]abccbbcdeofYXH2!"\X_¥£¥¡¤ ®± ¤¢«§¡µ°±±¬©¯³¨º³§¶¡¢£¡£¢ª¶ª¢£¦¦¦£ ¡¬¨£¤¦«³³ªµ°²«²¹´¯ª¯²²³·³®©®²¸°º¶º½¿·³±zvf_f_[YVSZUK[QLJEHKIC=?BB@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ¸½¿¶¾¼¿²¥£¥±Ãµ¶½´¸ÂÌÈÆÀŶÁÀÇηÀý³¹¹²¿¶±¹»²µ¯£ª¡xxoqtqhediec\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWUW`bcaab``dfqQ:3!+hx¨¢§ª¦®°ª¢£·©¡ ®¨µª¦§®±¤¸°¤· £ª¦¡¹°£¡¤¢ ¡©ª¤¢£ªª±¨´¬ª§³°¥«®³±¯°¯¯§¨¨²®²´°¼´º¸®£zwe_aWYXSRTKM^LPLGHMLE=@>=B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´ºÂ±¾·½§§¢ª»À½À¹®´¸ÁÌÇÅÂýŸÈ̲ÁÂÁ®¼»µ»¼µ¹¹°°±ª¡©|wqilrtphhedfa\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWVUZbb``a__`bii=3-2N¥¤¢¥¦¥ª®¥¡£¶§¡¡¢©³¢¥¨¥°¦±®«µ¡©¡¢±±££ §§¢¢¤¥¥«¤¥°§¥£«¬¦©®¯¯«¨ªª³¦¦«¯´±®¼¶±¯¯{xseb\[]XNLQHRaMVPOJNOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847763321./2556;:8;7876<;:;;A8x»»±¶½°»±·¬¥¦¬¸»¼Áź²¹µÄÉÉÀÂÆÅǶÆijÁ¿Å«··½¶½º»µ²¬¨£t~vncafihfgifil`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWTTVVRTRT__]^_\]]`akX4?Mt£ «¤££¢£¡©ª£¤±©¡ ¥ª¨¢¬ª©®¢¢¢¢¬©°¢¡£¥¡¢ ¢¤¥£«¥¢¤ª¤«¥®²©¦¥¦¦µ¦ª¨³µ´¹º¯ª¬sqpa[WVVRGQOHZ\ORJTKSLEGJC8;;=<9667:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:8698598989;9@9{µ´¬´»²°«±¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÉÌȵɼ±¾Ãɱ¸Áµ¼À¼´µª¬¦r{tiijlgjlmkjle]\\[[\ZXZ][[^``\XXZYXWXWTUVUTUURSNPY][[\\\]\_ch@Rq{
¥¦©¦ª¦¨¥¢¤£¤®© ®ª³¥¦££¡©©¡ ¡ ££¡£¡¢¨£¢¨« «°¤®¸¥£¤£¬ª¨«¯´·²½µ³«®
uti[YYSURFXLQ[XMUOPLQRIOIB=??A?=75799<<977:79:;<=>;7;;:=68:;8976989:6:=99577571141-+/434988::8::748=8?9~³§³·®¨¨¯®©¨¬·¶¬¼Ê»¶¿¬ÌÆŸÀÎÏdzĻ·»Âȱ¸¿·¼¾»³¶¦© ztvwnmhmmmpggifd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNOQXYYY\[Z[]^eqyvs
¨§¤¬ª§¯£¦«£¨¦®§ª¥ ¨ª¥ ¡¤¡¢¥¥§©¨ °°¦±½§£¬´ª®§¯´°¹µÀ±®°«~rtcVTUNRJGVPRRLLXNKLOSGNKACFEC>A75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8´¬¦±·ª¥¢±«ª§©²°¤¶Æ´¹º³ÊŹºÁËÐʱ·¸¼½Àñ°±·®´´»³´££vkglnqnqjokdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVTQMNMRWXYXXWZ[[`jtlri{|¥¨¥¤ª¦¤¢
¤¢¢¥§¡ ¢¢¦¤§©§¡ ´²¨³¸¡£¶¬ª®¤²²¦µ»´«¬±¢zsn^NQQMODNNNPKFNNJJNNQHMJAHLIHC>958889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12876:999984988A7w¶§¤¶°¤§¤ª¥ ©¦¤³ª¢²Äµµ²³ÆÅ·ºÃÊÌƳº½´¸À¯®©°¦®»¯ |n__frpuqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQNMKKSWWVWWWVZ]aidhcv|v~w~
¢ ¢¤ s~{ £
~~tz££ ¡¤¤¢´¯¬°¦¸¦¥°¡±®°»ª©¯©xtdVMRPPMCSNLPMBPQHINSNIJJEKMGKK=749888;;69;7:<9::;79?9>@79:<89764445874312485/0102)(,-02764789::66:87A7x·¡£´¨¦¥¨£¥¥¦¦¦²§¦´Á¸¯´°Éĸ¹ÀÎƾ³¬ºÁ¬Ä¨¢¦¦·£ ~xfWV_gfighnciigb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTQMMJGNSSSTTSUYZ]h_c`qxqkISm}_;Vo|ry{}xqp}¡ §®©©©³¢¥¬§³£©£tn`[NSRWLDTJPMLFNOIELQMKPJINPGJJ=7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· ¢¡¦¦ª ¦©§£ª°¨§´Â¹°µ°Ç¸³½Ï¿¹¯®µÂ§ªÄª¢±£~sv]PLQUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MNQMKHFHNQQLORTUXY`e^[muiJ=;|y
x`JQnx~m~wuvxpQ|~yvgw~
¤¢¨©¥¤°ª¡¤¤¦ª¡©¡¦§wnf^\HQQSMIUMSILKOIHFJNLMUKQRPGJD=769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.115221/,')+*,4833989:99::::?9w¶¢§¡®¡§¨¥§¨¯¬ªµ¼¶¸·³Á»¶§¹È¸¶¨¨µ¶ª²¼§©~xqoXMKMMNLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDCINOhYNQSSUZktdhq`_UOpz}yz
txrnuptz~«
z{hv{prmxx{{wsrxhu
||© ¡ ©¥§¤ ¤sib]]JWPRHKXROJMLRJJJLPHLQMRUMFIB<78;99>=:;<98@?::><7==79937785675251472/2.,./200/-+(().12721987:8775:<;7v®£¡´©¯ª¥«°±ª½´²»¸¶º´±·º²ª¬©¨²¯¢wx|vpojYKHIHGEHHPTTTWWSUUUUVWXWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LNQQSV^qzpk\nwcu}su|{p{vznk~|tz|tfu|lohs|mzq}qmvqhq~pD
wwz}{u}£¡¥xongc[XXUQJSUTOPNPVKNKOOKROIOPLFD=;79;::?=9<:99??;8;=7<9999266856633611224.,,-..-0-+*''*.1362/876966527995y¦ ¦°¬®«¨©±¯±«¼¸«»¾¸³¬§°§¬¥©¥¡yvq|muqjmjXKFGEA@CDHLLMQQOQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zYJNOQTX]dmib£¾|pt_wtkxuxznkxsxijq}Ingw~mjdly
ksl|nr|imps
{~{wpttyyp|pjoooYVXTRRYORUTRXUMNHMKMOKCINGF@:99;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¤¬¯¢ª¨µ¯®¬´¿«¼Ã¿¦¢¤¡¡szuotlqmekkYNDFC@<>>AFFGKKKLORRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORVZQXZZ ]cmtazlj|wt
sksr{ijLy
f1vrk}}tfeu
filukp|hqq|n{t~}qqoumwyujyyxlkpheXR[XYY[NPUVYXNIHEJJHGB@GECG=998;9:9<:9;:::@<9:<98>787715234533645031.**+),,++)(+'),,226,,4775478iO8;5m¤¨±§º¯«²°Â±»ÃÇ
zqtzpsqopdpg_TFIC><;9:?@ADCEGIKOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQUKAIQH`ª®lurhyin~xxqswrt5p¨ ¡¢
vp{|t®hgbjnrmpuioXupvm{}nrnp{svnbu
ux~}|srqm`\]^\ZYa_RN[ZXWLHJFIH?CABH?CD=;:7=;:;;9:99;:?<88=:8;66650121253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥´©®°®Á²»ÁÅ|nul|uxxmxnwdj^IPG=?7449;:;=>@BEHLLLLNPQRTUVWXZXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMQRCHozwvqzis
y{}|t y}
aªzw~t{]dqtz|wmhjbyo
zoxu
zptzxkni]v}|
}q}vw{|xqtugh`[\^S\g^WQTX[UGJJDKG?F@DC>AA=;97<;;=<::99;;=>79>9985654244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¦ ª ±¨¯À²»Äºzvk}xs }}p~zhwkRXL@E211376688:<>AEFFGJKMOQRSTUWVVVTSPMF@:2= #c[5311i?GoIFIKMOQKJT[WQId}vuwnywz}
v¥¬©H¯®©tm|~hghyn
qHlwryvhmk_v}
yzuv|xmow~uusm\^^\cdXge\UPPWYPDLKFOICFCCA@CA=978:::;;:888::?>6;>7585773344236656778;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|}
¬ ¦¸¯³½³}tp~~}}~¤
x~sx_cWKB60./23123668:=>?BEGHJMNQSTUTTVUSQOFC?80,#[??84.]ps£UFIKLMOW`XmXZ\e|}| ¥»±§»Çç¡¥|qw
ihptrw{v|muuf ª¢zzyogkx~|ule^[[^j^bg`ZOLNXRQHPJDNGCJDCADDB<:87=<:<:88778:==8<=68756623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfwz¤¡¬¦ª®°¡xw|lpj]B@4--//..02234778;=?BDHINQRTRSSTRPOHDB<87/9C><<63.lMPHJLKJMV_a|eejq
¡©¤¢ª¨µ¡§ÁÂǯx¹|¡
¡
lpuwqm
q ¤´¨¢}kjj|uc_e`[hl^ll^WKHNRQNLLFIPCDNFBCEFC=:96=<:;:987767;:6=:785456344566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYoouqv~§ ©ge¤~y}
xx~gMR>/..,/.-/000212467;?CENORTPPQSQNPIED>;<:DF?><752<?R5HHHLKMNR^lzq~y¢ ¦¦©§«¨©´«¾«¶ÇÈ·ÈÐϾ pi«©
¦£xz~¢{wª²|£¡¥µ¯§lss}~sja^b`bhd`hg\REJKPOIILFFMCHLFFCBGDA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppt`m}aw}{ªªBD}x|
w^bP460-2/,.0/./..0015>AAMQRSQRSURNSLEE@<>=FG@A@8662<9;FHGIIMOQYlu £¯¹´ ª©ª¥¦²©®´°°¬º°²½²Ã«ºÉ˸ÿ·¥¢°³¬ª£¥¦ £¦¢ª¨¥
¤¡ «¡¤¨±£¦·º ¢¯¢¡£¡«®«²´¡¤©yz~ibi]fc_ed^gg_[OCIHSNFHLFJGFFHAKFCFFA;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLhbWinXzv
ÚÈsV|z
qna@E64<3/110-,+-0.-4?CAMUPRSUUVUN[PGGD<>>FHCEA7;<5C;=FKIFHQNPWª¥¬¼ÄÀ§°Ãµª±¾±¶¼´½³Àµ»º¢¸Å¨µÉǵ½¸´¨£´°±§¯«¥v¤¡¬²´ª®¨®¶»²º¬°µ¢±¬±µ»¶´®´¦§¡¦©¯¬±¸·¸¦µ¨¤x
x[ceWgcbdaag`[TJDDLUQHIJDIGEA@@KDBMG<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AFWQJL[YQbbWyuq}u
{¿»£¼´yzxn]W@EN<6:45AB764//6CHBQ[OQUWU\WP_UIKJA?>GKFED;>@7D7?BJJEFVSP^¡ª¡®°½°³¼ÉÆ´¹Ã¼²²¿µ¶À³¾¯¶t°³¥ºÄ¤¯Æ¹°³±³§¤µ¶ª± ¢¢¥°®¦«§¤¡´»¢¨²ºµ¼¿Ì¿ÅŽ½³Á·º·¾¶º·¹¬«°¤¯©½°¼ºÁÁ«¹§©~~mXdbYlfkfX\cYVSIGFLQGCHIAHD>?BBL@@MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALQVSYUZvjp~nzsxb¹¡£{z||}wzueP\dGEL;Qca[^SF?;HPEZcQRYXZgYT`_LSPEA?IJHEEA@D<E6B>HGJLSZT]¬´²¸µÅ»¶ºÇ˹ºÀ»¶´º¹¶½³¹±Å`t±¤±ª½©¥¨«ª£¢²µ «¨ ®¥§¦¥¤£§±´¨²³½¶Á¾ÓÉÉÓÆÃÅÌÂÊÃÀ¾½¾»¼·´¯¸·¶Ã¹Å½Âǯ¸©¡«¤§µtacc_Yc`jgSX`VRUIEENKA>GD=KA=B@=F>;H@796379>489:57045/26389374426?8@>GKRTSQPOQQPJA9/,,,*+((+-,/P>(.48}<2Kq9>CKE@IMPRKQ]glkp
slrrsÕÀµ }~x{{y~t}zkfpuY^\Pedb`ed][XW\MdmURmm_n_XgdTYUJDBKKIFHHHHBI:D?HKSTU\Z[¶¾¶»´Ã¼¸·Èɹµ¹µ·¸²¶´³®µµdu§p^¢¬ ¢¤ª¥¨¦ ¤¥ª°¸°½¹ÔÑÏ×ÐÊÌÒÌÏÎÊÆ¿¾ÂɽÁ¼ÁÀÄÄÅʾÇͲ£º°´®«·»|m_b^Z_cZdcQ[`SPKCAEFE<@F>AHB@C=:E>=J?47535;=468977022/24169775555D3ELM>51/006:477@IOI;-&**(-./,@M+/54mI0Ht?>BD@CDFKODQ[Yh_onlotu´¬¡¡
~|s{
{ts{ylmu{hreiligjji`fiilZms¤¼g[og]ZZTHKNPJKPKSQILAJFJO_^afiaµÅ¯·±¹»³°ÃÅ´¯¸°°»«²°¦ª·«µ§§M¦¥¡§¬¯¨°¨´´ÔÔÔÖÓÌÐÓÕÍÒÏÌÅÂÉоÉÉÊÉÑÇÌÍÂÏÑ·¯Ã¼Ã¹¤µ¹Á¢qe^__ZbYZgZQ]XOPBBHEBH;AC>AG??A7;D>@H=46655;:687654/10146278875367C5B8?-0-1349=97,.,1;FK=),(.0007K?-46TW0DwC;B>EBACJM?UYReVsgqoyy¡ª¦}|p{r}qxulqx~qzmxsmipmcimpxiw|~Ë¿Áߧmcxnc[b`JPRUNY^O]\NPNTPTT\nmvq·«²¥¯´©«»¿°ª´¦¤¸¦«® «´£°¦«¬¥¨¢¬ÏÒÕÒÎÌÓÔÔÏÔÑÎÇÃÔÑÇÍÒÓÓ×ÌÑÑÄÒÖÅÁÎÇǨ½·Î|qh`e_XbS_[PQTQOH>@FABE<@A>ED>??:==<<JA45465<888664412/03526768533;=<E=@11+/249>5901022-2DN3)/3.32=N238C}_2AtD:==I>@CFH<UQMNZu
wlwp}~¡¡
y
~{r~zu
ovrks}{w{sxrksrioqzyqz¾Ë~²vrvhak]CZZ[VecXdjSX\]`c]cwz}©£¤ §¥ª¯¸ª¥³¢¡¡£¡§±¦j¢~¨°¢¡¡¥¤©ÉÍÏÈÂÌÑÔÒÔÒÎÓÍÆÖÒÌÔØÖÖØÔ×ÕÉÔÚÍÉ××ÑʬÃÂËuqebaZVZU\QKGJJJ@;:;DAD<BC>GB>BB;<9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/--;R017/532FD28>nb5=tM99@I<AD?A;OLFJXpu}hsxr
x~ws{}wznwpmuux}t
|ylvtn}vtx{µ;AÅ¥~|ieWICfcecgjcmw[^fhknhn ££¥±£¤²¡¥ ¨ £±
y©£~«³¨§¾Ãƹ¶ÆÎÒÑÒÐÌÒËÈÔÎÐÕÚ××ØÔÙØÍØÛÎÉÙÚÑÕ¾Ê˵zypg_\TWR]WFGJIEE=:7:@@B:FD?DCADB;?;;7DC75655;0679443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BS39254/7K75<`bA<svV87AH:?C><9QECJTknnpbpqt|~|x
zxqz{
uy
yp|oozq{qnzuw}|t~|¯sX©Â¶pmb=^hrpqpnxvehoruxqz ©¡¬¡¥«|
~lz|®ª§¯¶½©¾ÇÌÉÉÌËÐÉÃÒÊÔ×Ù×Ø×ÕÛ×ÓÙÛÕÐÚÚÑÖÈÔË|}kj]\QUTaICFIH>A>=7:=?;=G=?AAADA>>:87DB755479.556435532323647553458EBDCEB56<FNSM[nfcnskaV>,4LG865434BF4=W_hLux^8;?F<<B<99D>CGRj^mdbfkvqz~~{|~
wyn{{ty vusu}soou|
zv{·Å¤ÁɸwpeNfczw¢xyv{{vm¥¢«
z}¡¼¡©¦¦®¨¶¿ÀÁ¹ÇÊÎÎÅÍÉÑÖÕÕÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÛÆ}|ikgaVYWWNLENC;==<8:;=9=@6=?@<?=<9867CA6455=80665547745613854564557HH=DJE7925;H>;::7IP][SUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Xea][htzylwvz{~~|z~
z{u}tm|}~s~{~x~xnt~{~z©Ã¡½¤}}r~s¦
{hGq ¤
~¥
¥¸¢¨¡¤¯·ºµ¬ÀÆÊÐÈÇÌÏÓÓÒØÓÕ×À×ØÙÛØÚÚÙÙ×Û¸{|znkhYb]TPOIDLB<<>99::99;=6?>><=9:;;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<:DWN<MTHN?96333>C;[X>5YypZ<<A<=>8689?=CQSRX^UXfmmmiqry{z|{z|{}t
yszsm~~w
¢n¨
z¡|}£¢ ¤¯
Wr«\¢¢¢ ¤
³¡¡¨²¸¦½ÂÇÍÈÆÏÍÐÌÏ×ÑÑÕ®ÖÕØÚØÚÚ×ÕÙÙ rwjh__ZUYYCAIC?>>:49:;7:;:3;;?=>7;9:1:G=:37=@50677255?65;55858:57735HR7GOK994=EJB>1FCLB:8:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcbzma~omwxyz||{wsp
zuwvt~¦¤¥¢¨s²¨
¢£©°n·
ÄȲ¡¥²d¤ÍÈ
ª¢¢¤¨¡£³´¦£¼Á¾ÇÅÅÉÈÉÂËÓÍÍÔ©ÒÑÖÖÖØÚÔÒÚÎ
ukf``_QKV\BBGC;A=837;<:8=649:<:82?992:I:>67BC32:96264>=4;>6949;57944JQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBeGu||m~xz~z~vv{ln~y|wx|~£´¨¤«³¡§ ¥¤¯¢¸³¡ ¤¯¢¤§©°¤ À£É¸«¢¥²
¨¢
s²£¡} ¡¡±£¤·¾³ÅÇĽÃÿÆÎÊÉÒ§ÏÌÓÑÐÖØÒÏؼu}y`bWbXRIKOEBCD5>;76:?;<7=42669774=5;5<L<>;<BA75<;4277?@6??784987;<55OMDPRL8@=EAGA5:IENED:6A@BS>9DO323575=v\<R\tiZM]S<=89567=:JFDGM\\YJha;Hzzm
y|x
}px|}|osz}{x¨¼©³½°¥®³³©£¢°µ£¹¥¤©·¦¤£©ª¤¯±ª »»Ê¡i¶·ª°¢«½¤^ª²|}´ª¢¡ ¦®¨¢¤³¸«ÂÈĶº½¼ÅÈÈÂСÆÉÍÍÄ×ÖÐÊÓ£s}l_\UaSQHD><CAA8?874>F<<6<35355454B39:BM:A;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPfHa`bpJ@r|u~m}||~pww{«ÂÀ°½Æ¼³´Á¼´¬«³¶¨²½«»£¨¹¸«¦¦¢¢¤£ª¯²±ª¤¢¦¥£¹¯¨¿¼¬²¹¥£§}½°z§±« ¤¬ ¨§¤¢¤°³¦ÀÆ𰻶ÅÅÿͧÇÃÇüÕÐÌÄÊvud_]b]OLCL@EG>A?B<:4>A==5=6>333241A17@BN>G@CNCA=C=;86CB5BIB:878;5B>79VKDWOF8=4K@C>4EJHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\hF_ig[]\{un~{~q~zz¨´ÇÉÀÂÌÂùǼº¯«¹»²¶º²À¯¥À£«°¼¼ª®«££§¬¯µ±© ª¢°´§£ººµÁ»«¨²¤¤¨©ÄĤz¡ ¥ ®ª¡ ² ¡¤ §¤¦§¤¯¥¿Ã®¨·µÉþ¶Î²Ä¾Ã»³ÑÉÇÁµw{o^[_mTNIDMKKJ@A=BD<5AD;:3=8B332263A15IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBg\Me\fTcjyr{wy¡¨»¾ÉÈÊÂÒÉÊÂͽÁ³¼¿§º¿½¼Ä¸Á©¬³¼½ª°ª¤¥£¬®´®¶µ ®¦¢£´½©¨¼Á£¶¶¯«°¬ª¬ª§¥¤uy
£¡©¥|¢ ¢µ¦ ¥¤£¥¦¥£¨¨¢²¨»Àį¥³·ÌÀº®Ã³»½Á¹Â¿p{c[Y_^LMNKGDCHBAADK:4DH:;4<7F.12352A26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQF7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>lI_XaZdeXx
~¡®§£Ã¾ÉÄÈÆÓÍÎÍ˼·°º½´½Ë»ÃÁ¶·¼´À¹¼®¯¨¡©¨¶®®©²·¬¢¨¢«··ª¥¯¾Ä±½¹³§ª´³¥¨ ±Å§}}ª¥ ¡¡Z¤f£³¥¢¬¬§¦¡£¨¦µ«©º»Ã´¦´µËÁ¸ª¶¬³»¸®¨¸º¼·op\ZVWPGLTNK?AHDDHFF85FM;>7>AK.32025B55PWN<LFKRLOGGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|hV<>@BFBsFiIRfdMF¦¡¨¥¢¯¾®¡Ç¾ÆÅÈÇÎÎÏÒʾ»¶±»»¼¿ÏµÄ½·¹·³²¶³¸³¬§«¬¹«©¨¯¯£®¥¨¤¥µÁ°«´¾Â¹À¹³§¸´·²¯¤°¯¥ sÁ}±¥£¨¡ `J¤T°¯¥¯¯¦¡¦¦¡´©ª³¼¼»«°²ÇÀ¸¦¬«±±£¡²²´¥sqg^\PRMFQQPQ;HKHFGAC=9KT?A:=EM/7534:B44NWN<JKOUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@CAF3>58JKCA=C;5EA:A?>H@5*B52,>c]g:35tde@R7}hX<:BC@=REWStbVFH«¡¨®§
£¤µÉ´©Ç¼ÃÄÉËÉÈÌÎƾº³¯º¸ÀÁ͵ȺÁ¹µº²¯¯³´§¤«´µ«ª§¬¤®¦¥©¬º¿¨«··¾ÁÀ¾·²²Ã°·½¬£®´º¦¥u¾®¡ ©§ ©¡§mu¢¢®²¢«©ªª¯¦¥¡¥ª¢°§©ªº·¾³²®¾¹¶ £§¨¥¦©©fhc`SMMGIOJUL=LEMIJ@CD<QU<AABDO18=77?B75UXN?HNQXRPQTJQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CC:9C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW<:=..SaMVH~e^HF¬¡»®ªª¢£¬£¤¶Ç½´Â»ÃÂÈÉÅÂÎȽ¹²¯¹µÀÃʶƲÁ¼µ»¬©¬°££ªµ»¦ª§¬ª¨¯¨¤««¾¼¨¼´·¾Æ¼¶µ¸À°½¿³©µ·¬¿¥¢¡¼ ·¨¥£ §¥²¡¥§©¤¡¢ µ°¥¦±««¥¤ª ©¥¡¡´´º¶¨µ²²£¥ª¡xc_a_LIFHNQINEFFBQJH@DGAVSDH<AGQ1;B7:BF79]YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:h]FDCpbGE¨¤Ã¬¤¨ª¨¦¬¢«·Å¼¿·ÁÂÀÈÄ¿ÍÆ»¾¹²°¹´¾ÃȵÀ°¼¶º·§¤««¡¡««Ä¢¥¨¬¦«¯¬¢ª¨¾¸¦¾°··Æ·´¸¸¾±¾À¶´²µ°¾££¡¡¤¢£¾¤¨¨« ¦½¢¤¢©« ¤ ¶¬¦³§°¨ «¢¡¥¤«±µ±ª¥ª¬ ©ie\b^PJHKOLHEDI@=OH@;FIH[RPK=HNU4BF8>HG5Cb[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0--0Mv\4KZ5,MnW<-=)#zbQ5CKQ9oRF<KxfcXN¢£Å« «¢¤¦ª«¶±£©³¶Å½À¶À¼É¿Êȶ¸µ´±´´·ÂÆ·¿±¹µº¶ §¬«¬ ¥¤Á¥¡ª ¤©°¢§¨½µ¥±»·¶µÃ²²·º¾²ÃÀ¸¸´µµ£¤ ¡¨¨ª¢Â¬¨«¦ ½¡¤««¬¦¡X¦¡ ¹ª§·£³¢¡°¡ ¢£¥®³«©¢¢¥¤¤cg\eaMJKKOFEAGK>=IA99JJN]QQI=LV]9FI=DMI8Hc\KCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+waS6SZkWsHE6=ue\LP 礢³ ²§ª££©¬»±©¬µ±ÈÃÁóÂþÇĽÄʽ°±¶®±µ°Àŵº±±º¶©°©ª¦¡§Â±ª¢®±ª¤¨½·¦¶»½¯·Ã³³Â¿²Æ³º·«µ¶®ª¢¦¢«¡§«¯¯¯»±¥©©¢¤¸ ¡£®¯«¤¥¡£¨µ§§µ£¯ °¡¢ ¦¬°¥§¢
dh]hfKJLKSAC@IG;;F>89NMU_RSJ>O^^=HPBMLI8Nd]LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<w]^?[U_gr@8<HweA4¤ §£©± £´©±«¦¢¤²¬©»²°µ´Æ¿ÄĶ¿Ä¾ÊŶÀɵ¬µ©°¹¬ÀÄ´¸¯¶º¥«²¬ª¡§»´¨°®µ²§ª»³§¹³¸²¸Àª·²Ã½´Å§¾®·µ©§¬¡¥¤¡¡¤®·±´¶¨¤£ ·£¤¥®±±¥©¥¡¨ ¢¯³¢¦¯¥¬§ ©©ª¢§¡zej]lkNQNNT=CANC;:I?77QN]_RVQBW`]BJSHVKH:Td]NFON[W[RPQX]GAB[PBG>NC9HGHNP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1\cZ33906p[bH05JqjVCWFyfC;¤¤ ¥¿¦¨®® ©µª·¯«£ª´¶°°¸·°·¸·Ä½Ãǽ¼ÃÂÇÁºÁÆÁºª¶¥»Áø¸ª²¼£±²¦¨ª¹ª¡§°« ¯´³ªª·µ¬»¬³²¹·¬¸°Áº½¿¦Ãª°¶®©««¦ª¡¡ °¯³«°¸©¦ ·©¥¢¢¯±³«±§« ¥¡£´°¦¡©¤¢©©§ £~limbnnXQQZTACDU@;;H@7:XPd^QWWEY_^NLSO_LJ>Zd^NIQN[UYPKSWZI?DXPDF>N?=IGGQPB=CFBM?:2D?77547?=95E4+75/251.-.,1>*'+=\p=>1.1e[d@1747gYaF(@8m}h\V:{cC=¨¡©¼ ª¯ª£±·©¥´²«¡µ½¯³¸¼»½·¶À¿ÉĹÄÃÀÀ¹Å½Á¸¯¶¨«·²¼¿¿´ª¯²¸¬¨®©©§»¥³«¢±°³¬ª¶³µ¼°±µ¬°µ²ÀºÅ¶«¼¯±·¬ª£±¥¥¨£²ª³©ª²§ ¦¤´®§¡¬¬±§³«±©£¨¤¡¨¶©¡ ¡§¥£ {gmrhqs`GYfVDCMXDZ9HB5>]Qh\OZ]G[^^OMSXdJKC\c`PLMNXWXPJVVWL=EUJEDAM?AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,+%2+*5K1.'__aV151=`V_8)C3YU\gK5zfL@¥¤«¶£¬¨¥®µ©¯³¹¦§°·Æ·±·¿Â¶µºÅ¾ÌŹÃÁºÀºÅ¸Áº³´¬ªº¸»º¾µ«¯±·¨««¬®««¾«¯±£ª±³®®µ±¹·ª®±§µ°³º¼É²ªµµ±´°®¦ ³ ¨¬ ¥±¢ ¥¯¡¤¢¥§²©¡¦±¬ªµ¥®°´¯£§¬¸¢¡®¡¥££¡{
{lnyov}bF`jZIHZ[={JGE6AbUi[M\aK\\ZRSSbaLKE`a`PMIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`Va.5(C^Q\.+A/JGP[G3cYTLE°¨±©¬¤£®µ¨·³·£¬´·É»µ»»À¾µ´·ÃÀÌǻĽ·¿¿Á¸À½²½®¨º¹¸·Â·¬®²º§¯¬¨¤²©¯»¤¬²²¦§£²´±²±µ°·³©®«²¦¸¯µ³ÄŶ©µµ«°®©§¢¶¦° £°§©©¢¥¥¤·§¢°³«§°§¯´¬¤¡¬¨ª¹£¨¤¡¨¥¡w|nqxv|]Lel\JOd]?b{GI8GgWf[M^bMYYWUXUi]OPHa^_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANHg27'FaLV%-B.=ELQ<3rkLED¤¤¬ª¦£°²²ª·°µ«µ¹É¹®Á¼Ã¸³²µÂÃÏÄÀ¾µ¾ÀÀ»¿½´Ä©ª¹±¶·À¼¯¬´´¡§±®¥¦±¥²µª²±«¨¨µº¬µ²µ«´ª«¨¬©¹²°Ç¿¸¥¹°©¦§°¥¤£®£¨¯¢¢¢£¬£ ¡©¦¥¸¤«´´¤ª«©¬®¶®¢£¨« ¤µ£¡£§ x~
}}}rts~~]Scn^NZg]FD[G:NmXb[NabNVVVWUYh^QSMcZ[TKGOTSNGIVS\N;P^JBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Dd;6*HdHJ+:I?3CIS,>l@HI¨©¡©°¤§£³´°´´°° «½Ì»®Â½Ç²´®´ÁÃÑÄÆ¿Á²¾Âü¿¸½Å¨·¬´¸¼À±¬²®¡£§®ª¨¥±£ª°ª®«±®®¬«³»§·°²©²ª«¦¥£º«°Â¹´¬¹©©¨©§±¥©¤¢®©¨¢¢¬¥¬¢§¨¡¬¦£¬¶°± ©£ ª°¬§§©£ ¨ ¡¥|w
utrwl_Y`ncQsq\K;|F>WuX`YOc\NUVUWQ\b_SOOhYWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=397;*35>10485(5/*,.30;),,'%234$,2-860)(1<^K0.JgDF8<B05EKX1@]@NF¬§ ©±§¨°µ¬¸µª¤ªª½É¼±¿¹Ã¯°³ÃÄÎÎÿÀ´ÀÃĺÁ´ÉĬ¯·®³ºÀ¾´®®¬¦¨ª±©¦©²¦´ª¯±®²´»¥·³¬¬®¨« £°·¬ª¹¶¤µµ¤ª§¬¬ª ¨¦§±±¤§¥¡¡«ª¡ ¦¤£ª£¬¢¦±¶¬¬¢¥£©«®©¡¥¤¤
¥£|zu~uw¢xj^`nfWfdN@gLEbzWbXRfUMVVUTO\]aVLOjWVVIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72;::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06XZ.0JgAA<<C+:JO^4DBIID®¤¡ª¯©¨µªµ±ª¥«ª©¼ÀÀ¹º´¼µ¦³¯ÃÉËÑ¿Á»¹¿¿ÃºÂºÁÄ®±µ²´¼Á¾³±¯¬¬§·ª¥°«¸®¨°¯®±«µª¶µ§´·«¬¤ªª¤³³©¨¤³´µ¡ª¨«¨«§««¨¹¶©ªª©¢©ª¡ ¤£¦¢ª¦´®§¥©¢¤¥¦§ª¢¤£
£t~xuzx~pqfgqx\atjO]VHmyUdVScPMUUUQOX[bVIQjTVTGPYUI>IHOQPxMNV=<KD?@A<@CUC9AK=5;E23;97*4:=+-341*8**+*,)*(/*&)%3;,$2)2021%/2Rc02@f=NX?C,?LT_/Ik7RF;¯ ¥ª¬ª£®²´¯ª¤¯©¨»¿¼Á²°¹¢¶¯ÈÇÈÑÀ¿½º¼Ã¾»ÄÂÀ¿¯²³³¶½¼Á±²´«´©¥¶©¥³²¸¯¢´±¯±¹«¹®ª®·«ªª« £¡µ©¡®²¡´ª¨§«£ª¡¡¬¨½®«®¡§¨¬°¡¢ ¨¦§©°©¢¬¢¡¢¢£§©¦}
¤¡xt}txz{tt{j¤vi^ekug|RVp_KxsTdSQ_MMSZfNMWYeYGSjRQ>BNQaQ:IHLSIqQLS;<I?;<=;@@W<<>H73CB15:93-5::)-31--6)(+-,52#2)',%.;.&1.0-14%,0Mh:38_=ad?F1CP[[+HP;YC3° ¤¥ª£¤£¬¦´³±¨¤°§ª¸¿Á½±©ºª§°ÉÆÈÐþÀ½¹¿À½É¼Â¸±°µ²º¼¹À³µ¼¬¹¬£µ§§¬±¶¸²¥§¹µ´¼¯¼¥¶«©¯¤¤¬ª¨ª²¤³¨ª§ª¤©¢©§©½«´°®©¤ ¯³¢¥¥¤¥¨ª¥©¡ ¤©ª
~¢rzy~|hv|{uqq~jz
d_gcr
{mgy]^VBW{mTaPRYKLNpt]IZ[hYFVgOC>KNDCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KI1%90%,,09/,,+6'17#-/GjI14X=fbAJ7GS`U*=<F\@*°©¤¢¡«¤¶²±¤©°¦¹Â½·°¤¹¬©¨°ÂÈÉÌ·½¿µ¸ÁºÈ¶Ãµ´³µ²½¹º½¶®¹¶¿¬¢´¦ª«®µ·´©¹»¨±¾²º ®´¶©«±£¥¨©£¤°¦¯¡ª©§¢ª£¨ ¼§®±®¡ª¢¤®¬¦¡¢£ª¢££¡¦¬{}¤}zl}vyxbzzrpqsxjukgcgansmbjo_pA]ykV^NQQKIMSYVM\^lWEXaO^PHMDF;7HEKO<rhJK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*L>*49&'.34.0+/4&,:$40AhZ13S=e_DL6KVdN)=3R]>#«§¢¡¨¤·¯¢¯¯¨¬¸Ãº´® ¹¯«§³ºÇÊÇ¿¸Â½¯´¿·Ä¶Ã²°º±²À¶»½·ª¹¸¾ª¤µ§¨ª¯¸¯¨¸¼¤¾´´¡¸µ§¦¨°³ ¥¥§¡¥¬§¨ ª¯§ ¦¢¨°¸£±¯¡«¡¬¤§¦¨¢©¦¨¡ª}~||¡z |
|tp|qst`xxjoqqpksdzlhecaf`[rjrMNiXZMQLKHPRPGM[_oTEYZRgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZgH*?0][5(¥¬¡¤¡·«°£´³©©ºÅ·³®¡¸«¯µÅÇÀ·¿Â¹°µ½·¿»¾°¬¾°³¿²¼Â¸ª»º¸§¨µ¨§«¯«²¯¤»¶¤«ºµ¯±¹¯©¥§¯²¡¤ ¤£ ¯¦¡¢¨¯¡ ¢£¤¢¶°¡¦±«¬£®ª¥¨£¥ª¥¢©¢z~zz
~z{prvnos_xwellljj
nfrikeh]ds`[kviZJ^\XOOKHHRUG39]^lPEYUYeMIIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<"8R=*113>D5,-'42*;+139cm74GAf[HTDT]hD.<2dW,2¡¡ª£¡¢¡·ª »·¥¬½Å´±¯£µ¯¬¬®´Ãü³¿º·±³¹¸º¸º¯®À³³¸¯¿À·½ºµ¥¢²©§©±ª±¿µ¤§´µ¨²¼©¨¥©¯¬¢§¤¥ ²¤£¨©¢¤ ¤¸©¤§®¦¥¡¨ ©¢¡¡¡ª ¤¨¤z{}z
{w~|ltrllsawuhhjggphhidfii`jcjh[f{c`StT\[RLJFIOS@!*h^iLDWU^`KIHEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,?0-N?.+-7,1195,&.5-80576`tA3CDg[KWGU`hB379gP'2¢¤¤¦£´§ªº¶§¬ÄÁ¸±¬£¶®§®·À¿¼²Â·°®²¶¶¹¶¶ª½³®²±¼¿·®»»±¥¶ª¥¥³§©À«§¥¯³ª¬µ»©ª«±¥ª¦¤¥¬¢¤©¡¡§µ¦°ª®¡¡¡ ¦¡ ¥¬¡©y
w}
{s~~fyojjkftskcgddvbefffjickr[_Y^mdaNiXZ`VJGHKMRX>9_lhHCUT][IIGEA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=+*,0B*JK./*+3722(57$+7.72685]yN2>HiZLYJVbf@:3BhH%5£ ¡ ¤³±¢²½¶¡±Æ¼º²±£·¬ª©¸¼»ºÀ²®®®¶¯³¸³©«¹±¯®³¶º¶¯¸½¬¦µª ¯£©®¡¿ °£®±¯·®µ¯¢§©¥§¥¤¢¨¬¯¦º¨®¢¡¤¤¨ª§©¦{s
|
ofymgkifqrk\hcctbfgjnlgjjhn]llsp`TcicfYIFLMOXRQUaeUAWSYTGIFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24;6#3*)6.55465Z|]19Kj[M[KXdd@A1JfC&4¡°¡©±¯¹¿µ ´Â»¾º±¦·¯§¤·¸··»®ª«·ª³·®¦²µ²®©°¶¶°³µº¦©µ¨¨ ¨¬§½¬¤®¯¶µ¬±°©¢£«¨§£©¢¤¤ª«ª¼§¤ ¡k¢p£u©§¡ymiwql}
q^cagktw~gguheW\hsmNPjcgs
h_efnmj]`aeNKD9GTh^JGPPUULHR`oteF[QUPFHEC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=A@@=28@E=1,+08=G701.*.*/568,#1'214:175Xl16Ok[N\K[fb>G1Qd=*.¤° ªª£½Å¯©·Â·½½¦·°¥ª¢·³²²±¹¬©¦¬´¦¯´¢©·¶¶¨§¬¶²®´³¡©³©¡£¥¦«¹¥¥¯³·®¥©®«¬¥¡¡§¦ ¥¥§¦§©¤¶°¤£¢£¡¡ ¥¥ªsx
¡vif~sx o~}¡ }tulmieczlraS
mbliqXiqpX^i[ll[rnzr
gZ_GN?G_MERVVQQSWTg]MVHRROFHG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82).1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Wa7/(§«ª©§ª¿Ã¯±º¼·À¿ª¥·°©¬¤²´®®³·ª¨¥°¥´²µ¶µ¦§¨²°¬²§© ±§£¢¡¬³£¥¥¶½¦§«ª¬¨¥¡ ¦£¥£¤¤©¢£¥¦¡·¤¤ £¯©¡
±£¬yÔ¨ÁÇyx±¥·eÀ¿y
z|Êr¼Åzrµ¦»{m±«°yhlX±®nei½¼ngzorØ~Skc¶²~rs¡ªWOWbOVNFU[XQQS\W[PA\DQNEHI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>:B<?A8:J>52*22BE/.32.+/(-/186- /416A1=:Ww21Tk\O[M^g\>L1[]41!§§ª¥¬²©°Â¾²µ¿µ¶¾Á«§´¬¬©¦®³©¯¶³§§¦´¥§¸³²¶«¥¤§±¬°¦ª¦¤°¢¡«¢³º£ª©¢®¥¡¢§§ §§¦¡¦¢¡±££
¯kjª~fdp¦q®¡¤~x»}k¡v±_j´[¥e`g{gjxk©e¾rg¦u±j|±xtcnm§n[¡EhfEu`~g|¤§Z_«hxyj§7J¯\XSld[KNX_\WV;NOWW/ITSJCFF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:5/'$203B/=;Uv2-Vj\OYL_gY:M5_Y30¢§¥£¤ª±·¬µ½¿°¶Ä²·ºÁ¦©°ª®¨¨¯®£°º¯£¤²£©¸§³³°£¥ ©¬¯«¯¦§£¡¯¢«¥¡´³¢«£ ¢¨£¡¦¤¢ ª¦¦ ¡
µµx
©µv³·~©~k¦{w«gk±\«ztrx °vwqlll|N¤XHbb~ch¦`yruS^P©mcq~b.Q¡o[Skh`LK[dX\ZB>±yWXA#MhFCEA@A19>88:84;:9<8:A:E::;6:CB8=?KNG:5:AFB@AD<FD;0201;F,0.840,.(/3,>831/2-D1=<S}n3+Xj\OXM_gW7J8aU50 ³¦¦¡¯©§³¬©»¶Â°»Á¸·¿©¬¦±© ®»ª §´¬£«´¤¦²³§£¢§ª±§°§¥®¬ ¤¨µ¯¢ªª¨ª ¥¨¢£¥£¢©¦¢ Õ¹p°Á~Å|Ö»|¥¤{¤¥z¬yV¯z~j¹Z¹v~¦{zªxz±nt¼
oP¯§ÅQ zc`ªbsrm`Sµ´È
|c¤3Bv]PjicP@XgZdaJHMnN\QOYfYCD?E?0=<59;74<;8=:<C:F:;>6:@C;6@OLH<:;DHCBCD<EF81211DB./0483+-).323971#%5*>3==Qwj6*Yi[K]O_fT7G:aP71%¢²¨¨¦´ª¥´©¤¼·Á°¹¿±µ´º²´§±¯¢°²¦µ§§¹¢¯°³´°¡¤¦©°¨´¨£ª ©§°©££¨¡¥¡¡¡¡¡¡¢§ ¦ §¡²nhµq«n¦r´sr¶{¤¢¡¦±vÒÒv\®{
¤oª¦k
}}{±qx³etofQÈZÂ\yb_`vsb^YÊo¿uMKµSUÆdTQjceXAOk`lhPVGI9=URZWXIC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>HI91746A>/.24252-).26,742&60;5:=Pqh9'Wi\BOT_eP5G=aL620¢¥°¬£«¼¦´¦§¶»¼²º¾¶¶´¹¸²¥´³ ±±¢«¯¤¦¹¤±°´¸ª ¥¡©¤±§¬©£§¡¦¥ª°¦¢ ¦ ¤¦¥¦¡£ ¡¥¢
¬{w¨v£©o§¡¢®
³\r³R®}¤q×}x
~v¯w´aemZ°XKuyf`^vwhl]¯wxl5yÈ®²_BTo^g`EPl`pmVVM.fdiSYP;AD@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK96<46:>/04333.2..18*.32%!03767=Pke>&Vg\@>V_cN6GC`H:99 ¹°´Â¨³¨©²º·³·¾¹·±´º´¤·²³¬¨«§µ«¨¯±ª´¤© §¡µ¦¦©¢¤ ¡¤¦¯¦¡ª £¡¨¤ ¥¨¤¡ ¡¢ ¦©}}¥x¡ªp§¡£ª|xo±Z¨ ytØvt¨¤{{²^d ~m\«[Zhgªdr{ks^«Z koeOJC¡\[Lt]bgN[a_rs_KV7JYGE=GFAM35A8.;>05A78@<6=<F?:<6?=B7.HVJEAH6KIN@IK@EN::@5.;>102144+*05/7,&21($$6671<PeeA&Uf[?2U_bL7FI_C2?8¢À«´Â®«©¥´°·°µ¾¹¹±°µº¨º´¯¤¤§§©°©¯©´«ª®¡ ¦¤£¹¢¢« ¡¨°°§¨¦ ¤¨ª§©§ ¢¤¡¢¡ ¡«®mr´s©u§s´xs³¤£¤w¸p{¢jk¶Z¡
ei¡¢§mr´t~²j
ju³af¢ok\_M¡|Rs£ly~or]¯V<wfTon.\§OcSkebmZc]ap{cTZR>?np3CB@?M:!7@6.;@37C58??3;<CDBJFMIF62JTKEBI6IJP?HNCFP=<E50;;010/75,+,426/#00,,289/9N`eD'UdY>/U^aL5FM^81C8¦¼¡²À®«¬§·©·¯µ¿´»¯®·¶ªÀµ¨© ¥£¡ª©§µ¢²§®© §¤«¸¢¬£¢ ª¶°¨¬©¥¥¬¢ª²£¦«±¡£¢¡©«Ô»s°ÃÃ~Õ¸x§z¤¶u~wv²`ºyÀ|u¸cµ©}«©q{t¼§ ia¦¯¡~tª}¾os¼t²uxnrn¤t½^w}Zay¼kZV\jy^jaegcmxoZ\YCAAs@CF+5G"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB=E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7A9§¢½¡²Ã°ª«¬±§·¯¶Ä°¸°¹®À°«£¡£¡¨£ª²¤´¥¬¥ª¦¬¸¢¤¢¯¹²¬¤¨§¤¤¬ ¨«¨£³£¥§¢¢£¯ ©¶·xµwmknsoy
tÁ»½{±¨qs¹|||¤»¹½tz´£twvt°ufjµtrqw¶^z}hynzc¬pu
X[§jEeZTf`c^cQggpluCNPMD;ZM?J3;0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITAKNGEOF?G<7>7070/9:.,/-*8/%&2(4$(>7/7LT_G'SbW8*O]]=+:VU'>;<§¡¢¿¥´Ã´¬«¨¬«©º®°Å³²¶¦³¸«©¡¡¥ ª£¬©¥µ§§ £«¤½¦¡©¡¡§¡±µ·¤¤¢¦¥ª©¥¥¡¨¥§¤©¡¤¯¨¦¡j}i¦wr}tyd{½¾Àºor`rjZ^`ck`cmwble^`cpir}gkrux}~b[wthP\m}{kXkzsJJopNtMEX]gaL[Wgc_O[muiqRQDEM;GI=M?2,2A?8/5?C<9;@;=C>RVVWYZ[\\]`aaa`\UG5DFUEKOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7JR_I'S`V4)P_L(3>[O'?2>© ¨¢Â£µº¶£¬¥®§§µ±¬È«¯²ª³¢½°±¦¢§£«¦®£¤´¨¥ ¦¨½§¨¤¤¨¨°²¿¬§§¢©¨£« ££§¬£ «£°§ °¥¡§¢¢¥¡gm}qw
µª ¡ z¥
mk}|uqxyvu|jstuew}wkozm`c]phMYZfj`WZoymmfTPFS9OZMQO(+:KB635=@A9:C><ENSSTVWXYZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J&R^S10T^:+=8\J,<-@³¡³¢À¡¤²²¶ ©¥²§¥°´ªÈª¬¯¥´¥À¦³ ¤¤£ª¦¬¢£¶«©¥À«£¡¢§¨§²Ä°««¨ª¬¡¢¤¯§¢¥¨®§ ¯ ¡¦ ¢ ®|ª©
z¤g¡³¯
v{}wyzofyjuysis{vkudyf`jecdfkYl{oik]SLPD^TE@?>,4@F;45;>A;<?>>HNNOPSUVVXZ\_bca_]^]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMMD/T]Q05M[17E4[G5<,@´ ¹°¿¬«®²± ª¦²¢¬³¯Ä¯©ª¢±¼¢³¦¢¡§¥©¥¤¥²µ¯¥¾ «¢¡¨«¬£´È´ ª¤«¦©¤« ª¯ª¦¤«¢® ¤¯£§£§e|e~cymhk{¤ªje}geeih{¡kg£wkj£slmzzXf^^mv\hswvmwxsmytv|kY^ltd^sik|qkd_RNXIdXAJ4>G7?FD71<=?AD;;DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AJ[J/7ZO6)EY/DO2YC;?.=¦ º½º¯¬´±ª¥¨®°¦°¼°¨¦£®°¬£¡¦ª£¥§©²£¢¯¥¶¹¥®¢¡ ¤|¦®£¨´Ä¸¥¢§¯¢££©¨¡¡ª°««¤« ª§§ ¬¡¥°¤© £©}½r´rhx¹Ä¸q¢£z¦r«|ËÀÀ»q£}À½ÂÁ||ÃÀ}l¥²ooÊzvuyyqzpw
ynxcg`xd`ec^tglddYLVIQZHOD2IE?DB>/<?>@A:8CCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>I[L*#BP.#F[3PY/VAB;/8£¹Ãµ°°À©¨£¯¨°®¦²³®©¤¥¦¯«ª¢ª¦¡«¢¤¨¤¤´¤¢¦«·³§®¢¥¡§¥¬®ÀÀ±¡©¯©¢¢¤ª£ ¢¯ª§¤¤¨¡¦¥¬¨£¨©¨« ¤¢~Îxz¤y_®^§¢ |§s«¯^cª{¨
u³c«¡³j¯t}·aZ£Ínv{Ú{p}v}ezvvk|n}~marmph``zd\qhjdg`RTSW]KOC5AHDD8>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-K0';\;L-!P@F4.1ÂÀ¿µ´°¸£ª§³«¦²««ª£ª¦¯©¦¥¢¯ ¨§¢¥ °«§®¬°ª¨«¤¥§£®¦¬±©Àdz¨©±®¢©ª¡®°©¬ª¨¨¥¢«¬²¥¢ªª¢¥¤ ®¦ q
u
¨q±}r¬~¢¥v«}s¬v{|~ª¢~«{{WÅ{pÁ}muomeveoawnronfpuuqagme_oiiogdXT]aZRSD9II@D<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^\[ZRC>;91478452&# 1' 1' '45-&7=WJ-<'>1)3W@F!G:C1.+°ÓÆƲ´ ££¢¢¬¯¶®¨±¦¨ª¦««¦¡£¢¥«¡¥¨¨¢°¬¨§®«§¦§£¡ §£°¥¶«ºÎ²¦®¬¢®¬ ©³««««¥£«®±¡§«¥¤©¨¨¯¡¢£¤j¤uz©tz²p¦q ¤``R«
®v¨
z{f£¤£}©~®_|©V£z£{ïÅr¯³³¹rb©¯Âthnqozxypmgeerpf}jc]W`jXYUMMQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ('"+-"$.!3-&@DWH,G+56*2PKL# A9D4,'ÂÉÕÔ¿¡«§ ¯¢°´°®©¬¢§¦¨ª«©¤¦ ¤¥§§£«¢¬¡£¯¡«¤µ¯® §¦¢¢¨ ¦±¦¦©²®·È²µª¬©¢ ¥³¡§¬¤°«££ª¡³¡ª³±¡¨§®´¡¢¦{ªlu«y|°o¥ Ò¸´¸É²_`©¥ zxªÉt¤¨©ÆÆyg¡¥t}¯]p´b°uK£m§Gd|qq|u~|n\fjsqfk_aYdn\_YINMKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75685/)(%&%$&),4ENPPMFKJVF*L0/=-5OTQ;<F2,$§¤ÀƸ¨²¬¥¢²¸¬ª¡¥¨¤ª«ª¦¦¦ª£®«¥ ¬©¥§¶¢©«µ²¬¥ ¥¬¨£¡ª§®¢¥§©°µÃ²³ª¨¥¡£®¥¡¦¦±¯©§¬£·¬¡±¸¯®¦±²±£¦¢Nxz£}¤
¦¸{{y¹Ìƶx¡~v¤£©°
¬}c¦m¤p
}r¬`£sq`¼}RUt£{~w{sq\nnxrjp[d`iocd]LMQTAIHFI:9K>B108866877-*5==?BDGILNPTVYYZ[\__^]__]ZZZXUSOH@882.,*.+*''?QTVWWWYXXWUOUF<E3:P[T6?H,- ©«¤«¹ª®¡¬²³¥ ¥®ª§¦§£¨¡³®¢©¦² ©¤£¶¢¢¢©´¸£¡¢¡±§¦¡¢°®¦©¢¶²Å±©©¨¢¤¥¦¥«°¢¯¥§¯¤»¬¡¶¶´±·¯±¥®¢
ѵ÷y
¦y¡w ¥qª
´nri¤|s¯¥¢¦nq²]¥tzl{|m©a£qqbs²¸hw¦}z~ynjyizsou^eeonfh`K[XX<HH@U4@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^__][[ZXURRQF:223//++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH$)%s¾¿¼º´§¤µ¡¢¢¨¦®««¦£¥¡¡¶§£¨§°£¬£¤¢ª³³¤¤¨®§¤¨¶£«¤¶¬Ä°©«©¢¢ ¦¢§¦§¨¯¤¦¦½¬½¯¬¡¯²·©²¥¨°¢§y¨}|°w¤¥m²p¡|¡§¬
ª ¢{~««x¡z¯^¤}¦§d|sj¯]¥kp
]`[ m¦||knctnz`hfqoihhCZa[>KU3U8BBC7$$3+''3, /6674359@CFIKMNQRSSVZ]_a`aaa^][ZXSPONI7042.*,ATVVVUTUUUUTTUTTTVWWXVUUQHFIJ#((½¨Å¶À³¬ ·¥£¤¢°°ª¥ ¹¡£« ¯©®¡«¨£®°¬¦¥¬¬¡¡¦¡¥®¡¨§·©Á¯¤©¤§¦¥¦ª¬¤¥©¨¾¤Â¬ª¢ ª±·¨¬¥²§¨u¯~
~ºe°e}¡¦¬°
¦¤¡¡
¡\lj³`{{±mgo±[~µ\¤kÈ¢d{¼Xv´Y²}R®z¬X¡m¨|zeucxt}bjgqngffPUd\AU`>I(>9=4!",%2. *1/045799<ACFHJLNPQRTWZ^`_`ab^_\[XUPNJFC553./@UYXWXWWXWWWWVWWVWXWWXYZZ[\XWWGB;Ò²±·½º³Á²¢¬¦¤µ© ³³©¤¡¶ ´¨ª¬¯¬¯§¡¯«¨¦¡¥®©¢¥££¥ ¢ª³©½¯¤¨~¡¡© ¢©®¨¦¦¢¤©» Ʀ¤¨ ©³³ª¥º¬««©£¯¤¸Ãº§¬¯§¦ª~սªb£¿½}~£×º¸µ
½¾m£o«lz²°Çi«°½¬xw¢¾¼s§ {{d~{egy|alfkkcQb[Sj\?UbCM)=:4/$%2 $(0496677;>ACFGIKMNNQTW]a\__a^`[\YTQMHC?=A?5=SYXXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ¼³³°¿¸±¼²¢®¦¥²¦¥Àª¸²¨¢À§¨³²º¨¯¥§°«®¥¢¬ £ª £¦§¡©£¡¬®ªº§£}¦©¡ª©¡«§ £ª»¨Ä¢¢¨²²§®©¹¦svª¥¸d ph®nnw¤u®pq¨£®¤rlllfxonqzjqigqiigqd]bjoY\f}v¦_aqned¢¢~wgxikyzemdgmcKeXJkZ:QfFQ'K:+# #,)-2.5:457:<?ABDEHKLMOQSV\WZ\`_a]][TPLHD=:AB7MXZZYYZYXXYXWWWWY]^^]\\\]^]^][[UW^©¬³©¹¸²³ª©¡®£³ª¿³ÅÊ¿·ªÁ®¤¢¨¬º£¤®«¦®©
¦ª ¤£ ¥§©£ª¡¦§¨°»««|¦© ©£±¦¢«¹¯Á§£²¥ª®°©«©¥µ¢¬¶¡¨¦·£ª©³£ª ²¢¡¢¡¥¢«§
¥
~g~tusp§lz¢¥skwqxw}zjmedpeUaY@j\HcbPY+F=+'!750.!%2(*699469;>?ABDEJKKMPPQXTVY^`ac]^TQKEC>9=@ASX[\YWXXXXXYXXZZ[\^__`^^^__```_YY`¦¨ª¤´¶®®¡°£ ¶±¬È¾Æ¼º«£¦§±©£¶§©´¦¨¬¢§¬¤§£¨¨¦¡¤©¢¶»§ª}¢¦ ª ¶£¦«·§®À¢¶¥®®¯«§§±¶»¥¤¦¶¢§ ª £«° £°¨¯£ £ª¬¡«¡
~f
uuxsj
}£¤
}tt{s|joe_qj`[`ZndPafQZ:GGE>2=>9/*&+)&&416668:==?AACIJGJKLMSSSUZ``iaeVPKACB:9EMV[^^[Z\[[[\]]^_]^_`abbaaa`bbbdb\[c£§¢¯±«®£©¦¬§µª¥µ½°®£¤|¤²¤¥±©¹¦£ª¢®¢¨ ®©¨¨ªº·¤¤z£©¸£¯µ¢¯®t£¼¢°wx§¯¸u¬£«d\bv ¥}m³£§ª¢esyq¨m¢¨e¦
wjvp{
`hZughs{¨f{
zj
ozkre`wplki\ffbbqT[>NNNSG>@UD:1/&4:306678<;>@AAFHBGFIKMSTUY]`hfgXQJ<DG<8UR[`ab`^__`aa_\]__`aabcdabaaedchd^]f¦£ ®¯¬«©¥¨¢§¤«·±³§«¨t± ¨«§¹ ¤«¡§¡v§©¥»´¨ uw¡¡§²µ³º¦}§¢y ¬´¥°ª¯¤z¬
¡§¨§
w¥z§{²z¡bz
mpyp~
s
xht u}
£
kly|qqhexpjlk\eljfu]^ITLR@E6.ZUU7)!09>>743568;:=>>@DI?JEJKGSX[Y\bahfZQH9EL;>aV^bdfd`aa`bb_]`aabbbcfgcba`edcgcaah¢¦¬«¨¬ §¯¦¦©¥¯ÉÀ±¢¨ª·
§¢ ¾ |
ª §£¤º²¨
qv ¡¤«´´Ê©¬¶
°¯¬¨¦}¨s{w§h¤y´¦§Â«¡r¥}
²¡}¡¡}
mr
~yq{tÅf©£k
¤
qiyu|xhivrhhl^dpmgnYgG]RM3E47Nbd7&3<EGD:64658;8>==?BM?NIJLCPZ]\Wa^il\QE=KM@JcX]cfhgbbbbcc`_babccceiicbbbecafcbbi¢¯§¨¨¥«£·°©«¦ ¤¥¬¥¦¬¹¤°¢©¦½¡yª¡w¥¤¹®¥~bm ¡¡¡§~¡§
©¬
£©¢ulvM«x¨¦©«}¡{z§jkg·~n`dY{dhr}yl]}m_Rp\_kx_Xd|p§ªk£nr¥p
jg m[o}gZ`cXQpwfnuskjo]jqnljYiO]YF9A5HD_l5,IDRMN=84859;6@;;>BP>QRLMBJ\]_W]^bu`MD:MONTb\\ffiibbdbddbab`bdcacikdbddgdbgeach ¸ ©£¦¬ ¶»ª®¢¡£¦¯¡°¶¤©¢¡ §´u¦~
¬¤ª§±§¢in£¢¤¢¡ v§ ¦
§«¥x|~¢ps|ym¨{¢sv¦f~w¤_z}t¢n·´ºtµ¨dƸ{p¶r£bs¬«`|i³~m|q£lr£t
¤a³r}³ut\²kcpuwrioXkmssg]i^bLE=D6QBZs3=SG`JR=<395:96D;;@JP?UMOQ@D__[ZX``|dHC8MWUWbaZefkkbbeadc`ab`dd_`cknccddhdbgfchh£·ª¤¶´ ¢¤£¦¯³¯¢¡¥«x
q }¨ ¤©¨¥
~j{~}¡ w¢q¡©¥¦©}~z z£xt}¥
¢d¡|mhoz§}rit«tªh]
v
gªk¸f\¨p`^§vu~huon§]©y»k~ª\]´h]nrzxki\qkyzd`fXbBQFO7WCRo5L[[_NZDA251<;7H?:CHU>YRY]>Db^V`Qac}jEB9N[^YdfXfgnmbbe_aa__``ec^bdoq`deekecihgki©´§c«¹±¯¬¦© ¯²©®¥¡ £jr{z¤©£ iy{¢¡rhp©¡¥¦{°£¢¸w£³£¤y{«~¢q¡|
¯µ}k¡y~µ¢¤«¨|}tªZ]o{xbL{z
cyBLX¢jq{lux±³§wns}ptk¤^vHedatrof`liw|eeaQ_W]TW@ZFQhETW]bX^ID=B8?B:IF8LEXAWR[VDFb\Z`K`m~rEB<U_bZeiVghmobfg^aa\]^`hb_ecvm]egfkdeliiki°S^ ¦³¹²²©¢¬ª¢¥£© ¡woy
{r¡s¡
©}l
q¡x|£ ¢}µ{¥z©|§hwm~t¡sr|p®}¤¥£o^¨gu¢co¥aÓ}{xssb¢~£t¤vk³`sª²¨¼wm~¿¦©´]m|pmr¢r]¤gs¦`h¦mÔ~pz{l|xsn©¤gaezr
lhfdovxh`cS\fQQbHYJUaWT\fk\eQFCKMJKBKE8O@QNXSYOSQ`ffjRcwywIFEc]eZhjTihjocjg`c`\]]_hbaie|d^dgdkdjlghlh¯ªT\K~©¯±³¯²£
ª¡¢¥¦©¡«¡
{p}h}wo
l|¥«yvnx£{¢£³¡¢¶z¬§¤®¥p©
{¤¡r¤®¯¤ vµ¶µÉ¡s`©my t¢w ~pMf£ps¤{ytak~ kqd_q}shyh²µ´Æ¦s}zk«v
nwyj{urQE}³_jwlzgkhcuuqnW_TYiPShIWMYTV^iloVhWNKAJMKHJOAQKPecjmetrsy|nu{{TQOl^i\kiRjhilhlfce_\]]^ibdik{_]dgcjfomeile¡®¥d?¡²ª®¯µ¢¢«££¦¦¨§zjye yui
z¦ªz}yp¡z ¥¨fnxl¢d{q¥wpg¦z¤zsw¹n¢b} nriªku mo¦`iiu¢~`upbh e~iuocfmq¢Z^[b¡l]nz}qqd¥mx¢dg§hsp¢pUo _f¨T^TnntksnqilytkpRYWWfZTmIZP]IXiisjYlWQRFV\LXSaUik_wt{}p||r{svv^RrbgcpgPjhhklnhdg_]^]`jbjivu]\chcjjsmfkmc£¥ydsm¦£©°±¦¬§£¢¤£{qi|su~{d|¨£~ti¦} ©¦¦x~¤±¯¥vx©s¥n¤¢»n}¥¯
|¥zr¨ g~o¬dw¨mª¢vw«¦k°kv³©k
mm`~«ªv~~¤w|¤ jx¬h®¶tw¾¤Z§«avsur|uqckoimSW[Vab]kM]R^J^mow`[qY\`[gtenorcrt`wz~yrys{{vbxdcnrdRkgholrjfia`^\akbmlzo\\bibljxmglnb¤©£©©¨¦®¤¬¦¦«
szo}ttsm}{§§§
vol©ª¢u~y®¢qw}{r§r~}zy{~v {}k
[yyrzqin~quqe_wtruoynml
]ugwe§}t{jpv}wnnhtz|x
\lXyioxsrpxxp]lnjgV[`W]fkdVcU_R`pyymkwfkkkw}rrutaovbt{xuzux
}{nldyn^Wnghukxjije\`Zcjemqtn[[bldllynhloa·¨¦ ¢¦£¤«¢¡¢¨ªq|}~{trq
{}y~¥|¨¢
vr©§ª~~§¥woxn~¨
q~qkp} hl\sqtkwtYrn~j]je{`ixz{u
gwj_oqu^q¤
enwqzqhif|{[\khnv[|yxvotsh]nkkbZZ_[Ylq\_aZ_^ft|vpudkkk|}s|yudnuhm|~wz|{yz~o{}t~yshT\qilvpugkhd]aXkhkkqrnW[enlgszohjm`©°¡¢¡¨£¢~® £¦|}r}v
ror~z¡¨¢yz¡ª¡¢¤£ª¡§¦zv§~²¦±¥k|wxe|
w|zt ~}tnr}v
¤
}zn
~zksiatq~{xwpxu]^ohn_^Z]]ShrVd]]bmhv|}topekji}nyrjpqlg{rx}{m|zx{}zxNcvjsnpzekecb`[tfpgrqmU]ltmiyzqgikd¹¡ ¤¡|¬ }y|nys}mk~z~
|
¬ s}{ª¥¢
§¥u{¥{|«¢©~oxru`u
nyvt¡
s{|qqzzw¥
w~rm}oilnh^zi~}wvwv{x]`q~nt`c[]_RgnTf[^bkivzrlmdkjhltlluozpznv~
vq~{||{`h{juiidjc`i\cuhobumlUcqyepz{sejmm¶ £{x§¥zz}n|ys}}kh}{}|©q ¡
|¨x£ ~£¡£}w ~|¥¢¢¦~~utqwa~r}r
hxrx~r{|pwzyx¤
{v}hs~z|rmlh_~ti}vvt}sk_`tvpwdcY__RkiVfZ`ahjvyqgkdlhfkn~hoql~x{ls~tv|{}irntiahlb_qVtolm`xhmWjtvcuz{rbjoz±¥¤ }w¥¡£y|r{tv
}wgc~x|y¡p¥¦
v ¡x~¤xw~s£¢¢~|vq~n{d|
ql
fuo{|x{{zq}w
x¡vw|xazzuyhmfbjkxttw~r}cdasnurmaZa^[leSdYaahkvyqckcmfh|miuhnpi}znr~t|~{~|mvsumeljbbuVipn`xglbjvpfy|zq`rl
¦§~xª{y|~||xtyzt}d_}t}~}¤¢s{¦ r¦rkzo¤{yqzlul|~nxq~~eri{~tx}uw|{£xt}tv
qb|v{r~pcpde|copwsyxtubw`plvno\\_^^k^P^Ycahnt{l`iekciwngmikmh}{xos}t{}z}}rzxxmljh_ircgqoewgnlayik}{xpaxm©¤¨~x¯~w~|}|wxput|o}|a\~s{z¦}}£m¢ me
zp£}{
ssvlqnu|tnqu||eply{|tsxn|
{§z{~
x~qp
fizuvq|c_qakt_qk{zylsqfz^olsmrX[_`al\PWXecgqqg]iigbgqodjheiizwuo
t{u
x
|x
zw{{rxjk_phtkromrgole|cnzwqlww~¢¡§ ¦v«¡t|w
xyrs{kspznvop[Y~vu ¢x
l¡i¢e~w~}{|ovplmop{itqwuyfrnu{yyusozy
¢{uxynl
_tutrry[_qapk_pk~|qnnknwapokqmYYbaboYQTZfgcupc]kndcfkn`gg_hkurspuyvy
xw
|{vjqc|c|nqmtjholvx_qy|tut~¤¬§
v zryupr
tqvlpnvmv~mmUQ«wwrz¡x{£{r
}gg
qw{z||kwjnkll{bz~v{x}ygsls~
zqyouyy|{zv|wqjl{ayqomstV_pbrb`mozqipfguuirlbwe]Wfa`sTQO\fe]yp}`\irbbefj_he[gp~pkqt}v|uv~y{
xs
~|yxfrj`~ookz`jntu_t}yxts
}x °¥
wtwtqp
tprpkiwnn}}mtsRMßÈÖ{puv
¡w{s
¡~wz~yuf
k¢cqz{z|m|esoklzz[yz~{{isjs
|k}~m}
|y|uwxsmgq
nlupijunS_pepZ`msyhlkcgyspqd`xa`Vl__vPNLbgc]zqu]\evabeedagbYissnkqv|tzuv}s{r|~vesn|e~nplYlnyys`vz{vrwwy®
w~|
txpyqopmoseeyq}my}jhkc¤ÁÜ®ð¡slv
w¤p¡r¢
}zuxvum
|¢
^m{}
v~~k}dxvjnysX{
z~yfri~kum}x~trwusqgvzcunqcjvhRarhlV`ouzard`iqso[drabWn[]xNMLegb^wsn\\dy^_ee
`cc_Yjsknksw}twxw{q}~{t~sguryl{ntqWqzvyrdwyivr§£}qwy
¡|{swptjpljm|u_axw{qu{g`d|ëÚµÉÃÜsltwjq
|{
uxr
u}o¡ai|}rqwhvsjtwlZ}
}vark~~}mkw
{|}mpy
tkplsyaujp^lwaResifS`qwuap`]hrtkXhhciYmW\uLKLfg^bss
j\\ey^^dg{ad_]Ykofojtx~ss~{vzs
|vw{ulwvyxtnx{}Xyqogxwdv
p
¡¢toqw~} xrtnodrifmxx\`y{{qqiagaÕ¶¦xoqx}qk{i|{}zsz{qt
u~b
g|~~m|ulmwuuxvlc
~}p_qp{{~ypey
z|~mny~umnkl{dilkZnwZSjsibQcsxmcf^Zkntb\h_em`oU\pOHOgf\horn[\cs`\clwee]]Zlmcmjswqp|}txx
|uy|vpxy{on{w^tmiztsgs|q vvmw}w~vrpljau}gbjuz[`x|zlp~ecggW_qs½Å
wrtsk{|}|~t
vv}quq~szf}r}g}{y}i}vfpyxtxtlkyk^pvz}{~rhx
w{|mkz|vtohh~we]rdYptSTosibNhuyga^]YoptZec]knaqPZlRDThbZlon|pZ[^mcZcowdg\]`kjcliswqn~{tuz|
v~xtsyy~oo{qjyz~nm|vkjxtk
o~vjyyozsqljd`t{i`fr{[ar}zfpzaed±²wKbZ¥ÚÒs|z
ol
yy|yxnqs}{jy¥n~uw
pz~oxh
xr|e|~vcqsjzqou|wyzk\p|r}
zqmp
qwwml}~vzehj~raZx[ZrnNXrtg`Knwvb^\[Yu~spXg^fkq_oOXiS?Yg_[qkhzr\[YkeYcpy_h]^elhfliqxom}up{v
qq{|zyukzlp~t}or|{poyf¡gpgz
|ixrllf_aoym_boy\dlzaqv_deÕë¾3:>ryx
nm
u}
|xnvvmku{uey§}msux{y
lri~xm|{xbyrdqinvrutv~so[k}sx{|wypkpw}}smjvuu]iiyqZW~T[rfM[srf\Jryq][[Z^vviZb[gfocjNXfQ=^f]^vf_uq[YUodZdqz\h^`gmgjkipx}mjyn{}zu
pnw}{{i{}kt|r{sv}zx~|km~li|~}kuqgic[cgso`altahpzast^bc n]6[°¶uj~wuwpm
tyx}zsgv}|no
}hvynez
¥}m}t~{
|q|~|i~mk{yjzvr`w~rdrgvnu|}pwz|u~mWm}us
vtzwrmq}{|ymmhlun]hgurR\}O]r]O\spdVKtykXYYZbrva^]agdijfOZhNAad\`wa\umXXSubZeosXj_bhkgmlipw|li}|p~{zwr{oqw{j~{nxyww}x~~zm£
|vzkm
z}{~prpcf^Yg_pp`ahpfjotato[`djv{¿¨¥É¸r
t~ztrspzsutwyyqdwyhqufwvdj|}q~rx~w{lyzuh{ilysizv}h`w}kjth{jv|~~q|v|t~bUu{qr{pwxoo}|w|zsugpglrp]hctoLfwM_oVTZtnbQOuybRXX]bqt\b]ieeckdR\qIDdb\dq^\xhUWVx^\fniWl^ajgennhpwzniy~s{~y|v}pvsnw~q|xzzuxzuo}~{w|huz|vgpn`e\XfYmsaaaqllhn`siX^cmw©Ú©È³ryqv}{utu~vopm
txul`yyeqngun[m}y}wzl
tr{muwmhwem|vmjwv|`bxzhuvc~|hu}uvrz}mYVr}os
}wksxjt|y{wzq{rfsdmls[j`vfIooM\cXWVymbPSuwYQVX^ar
p]acmec^ocU^rGBf_^gi]Z{cRV]v[[gkaWk``nfflqhpvxtkvwx}w{t}oququ}
{wx|}
x|}}{~rvx{wuz^~zt
w{bnm\b[[aUjtd`[hopgqaqfW\ck|Êκ¢knonr
s~{
zytzutzjlvcvvog_|ydqjjqcXm{rw}{mop{yrrp~ghrcnxqjlqw}|y]ezxiuygwhu}sjo~xn}]Wp}ms~znnpvfv~~uzoyr
zxqeq`mkrXk_y]IplOXV_UV|kbOTvsRRTW^cuj]akkfcZobYcpGAh]ag_\V|^OVfqZ[jh]Xha_rfjhqgqsvynu{w~yus
pp{xwuy
z|u~}~~}|xvyv~}nuzdto
zucnjY_[]]Uhse`YdrrgrakdWZ_ix¾®{¸nbtiu}s{
{~wxswozvejoausjb^}wyep}gkk[Vox¤
pqwtlr
}yuspizajmamvjgkkywzw[g}|yfr~n
tfvpgk{tlub[nzjszzet|mpgt}v|~pzjyyxvodk`m}lnVjaxVLlmPSPiNY}hbOUvlMQTU_hwg^aqigaWi]]liJDjZbeWYUyZNWokY]le]Zec^tfleqfsptxp
vx|
}usnsy{{sr
y}v}z~{w|wvzjv~}m
sqpflgX][\[Tepe_XcruivpdebW[[hporsefzjvwtt
x
zwtvnkzpahkgtmg^_|oz|hlwfjdVWsp§}|vs{q{xlyzu{}uqsmhu]mi`ludgfizo{rYgvuhpxwcx
}okm{qfse`kxfpuy|auuikqtyoxwr{e}}}vumcd`l|mkVjcrTLklPMOpG^|faNVueKNTXalxf^gsje`WdXcr^LKkYdbVTUsVMYweZ_l`\[de_wgmboitoq~utxxz}v~
nrt|{uq
zut}
|~z~v{£¦y
lu||u{otz
}unjieV][[ZScne\Ybt{jhmh`aW^Ziikphmbi{zkuuupz~wvn{hjyj_enhwgeXavi}ynioff]UXoh¨wz|xtn}mqtx~wtvjswhio\me^ns_gbjxh{m[mstjo~zxbw
zsrpzrcqh[mudnqzwarogixsqkwvsuby}utocbbl}|kkUibgTLnhPHRlEayfbMTr^JMUZfmy{f_mqjd]V`VooXKTiXg_YNUlTK]z_\_l]][be`zhlanpvnowuz}wyzyz}qttzvt
~}ls{
}~{u¬zlrzvuoo}tjonedX_ZZZUbjg\Z_ui^ml\aW[\kert}jj^mxwhuxso|~~zvslzhiwg]dsgzwccTdofvvfhiaWVYhd¨owzpo{fwmyzvq~ndwtehi]lb^pp[g_muezh]tnrkq{vvdu|xru~taplXpqanozscqk`lznihywspdtxxtoc`cms}jlTi^_ULucQGWbGcwfaLTqYKLXYimw{eenrfcZX^YwfUK]dXiXZIWeQIcx[]_m[^\bd^ij`ntxmonvyr}~uvx}tuuyzz}
jt{}~
y{~|sq®||~fqzt~}wspm|~mzcppbe]eVZYWcfk`]]thXpm[^XZ\l{bqwvmc\ntuivwrnyzwootehte[gufvvy_]Seejs|abi\TX^cd¥iyt
xlmyfwl{ytry}yiewm`ga_k`^ukYf]oobze[w|knopxytufszvor}raxcYnn`opzseqd^muhcfxzrlmsq{qpa]dmo}eiThYZUNy_RJZYHcudaJUnUJL[Wjms{dllucaYZ\bw\TLd^YjTWHYaNHjvX_an[[_bc]
ihbnxymojvyn~vuttqvvw}}~~px}yxy~ssp¢{{yeuzsywltply|ps^poagblT[ZWidmf\\reSrn[YXW`lvcjujj_[nusnutuk}|wonldipc[krdtvs\WTd`q~q\ac^SZa\derq
skjxlnnyyzqvs{z{dfvh^c[ah\_whWb^phawa[|vjjrnxttujr
vsjp|mfwW[ilaoqyseo~Z`ppa^io|kjr}povjp`Zdkm{agTgUXSQw\RPYRHdsb`GVlQIPZUklk|emora[ZXZmqXSPgXWiTUGZ\OIsuX`cncXaaa^jcemzyloivy{k}
|y}mqovz}t}tx
utpvo¢t{{fwon|pgxq{lsvsk^tobgfkS^\Vhbll[\qdNom\VWUgishctee^Zpvprvvzl}}wscdkoa\nmcsxkZTVbcw||p\c^cT[`Zccnp
rifyndruqzkytuo{v_gsd\_WbdYbueU_`mdaq]]~ohisqtquwmm
|
qrgn|oqoRZeidprusbluUbqj[^nd{dku|pqqim_Xcijx^fUdUWQVoXQWTPHer_aFXkOIYTVnid|ilykbW\V\ueTRViRYgUTIZ[PNyw[_emjZba^^nbglzvnoivv~m~{krgt{u~s}
{ss}un¤swxnz`e}qgztymmqwgd|mdgghS`_Ug`lo\^nhMil`UVSogskfxef^Zrvot|ytn{w{zkaelm^`njeqy~gZVX_lx{zo^a]hVX`Xdbkp|vkjvl[upjyiurno|sYkn`Y^VcdYeqcT_biablZ`~kfltuomxwmi{mqfp{lqlaX_gfnrsr^ilSepdUbmaxaotztinkj_W`fhu\dVbVTOYgSO]OPHep]cGZjNJ`KXme_xioe`U^T^v\UR`gP^bUTK\ZQZvv]_fmhXca[^qchjxrsmgvsys{~|yntlst
z}|rstwqn~zz}~~}}~~}~~~~~~~}z{|~~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~?/1110/o]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDCGdhgggghMBCCDDCXhfgggfo
}}{{z}~||~}}}~}}~~~~~
-hS7¤¤¤¤¤¤£r]____aR4555549\`___`aA565554Ma____^j|}zzz|}{|~}~}~}}~~~~
|y{z||{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
~|vvx||{|}}}}}~~~~~~
~wxz{zz|||{}}~~~~~~~}xyzyy{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{z{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz||||}~~}}~~
zy}{{{z||||~~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{~~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}~~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~
rtx|||{||}}~~~~~~}~~~~uxrvy|}|z}|}}~~~~~~~~~p
|ussvx}~|y}|}}~~~}~~sorx
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~wm{sx{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~
sno{uv
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\YXXWTPQRSRSMMJIFEHJGGHGGLNIgsuxz}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzoq{xy{|{xw{xuwttvuuvwtb^d_blqfhklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkiffggghhb]jl]ffgeccbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHIJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__ac_\_]`]^ZZjwmbnrjaYY_[XWSNMKKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSTPMJMNPROM[krlamurfQQSPPNNOMJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTtsuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMN]cokYisupSMOPPPONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKKFBFHUbhkopomlZLLNMNOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHECFGHMZghgrnnhfd`^^XLJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:;>IZ]Z\elnkommlkihkdSGEEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@:;><;;;=K[imnojomkilmfQGEDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnppsttsqrvxy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<979;:=HcosmnljkhUC>CFDBCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtstrqtxxy}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::979::78:99=J`stpgT?:;=@A@=;;><=<@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyz{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==?@===?C;==><:Bl|j?9;>=>?@@@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCDA?=>@A?@;[n@>DE?@AD_d;==;:=>AA@>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJGVppqssttuyz{||~~~~~~mLPQNOPNNOPPO><<=>??@>@@???BFD><<=@=8::mwI8;:=>A;Hd=<=<8:;??=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}|~~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABA@YR<==ILFEuvN788:;>?WjA;<<::;>??==9:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@CsyI;\z|wW<=?==>EhtL:=>?==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy|||||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCEAGrykb}^>@C@@=Js{Y:=AEABBFHC=<@DDA@?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{{{}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Eot}~}vMACE@?>Y{]?CEIILQMMKECFGGEGEEEDECA?@>>BFJJGEEGFFJNNKJIGGHKLIGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEhs}|~y
rCDEDCWu~XGHJNiZOPNIGIHHIIHHGGHHECEEEFFHJJFEGIJMOOMMKJKJMNKIHGHHHGFEFFFDFHGEEHHFHGHFQnnpqruvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJG`{w
lAAVtWHKVs^VQKHHHHDGGGGFHFHECDDFEDDHHCCCFIKKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrtwwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLN[|
Vl|PJYne^]TGCMF@@CCCCFFEB@>>@AA@BD?>?DFHDFGIJIJHHHGIIJJIHFJJJJIJIJJJFILLJJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLKJT
uJ`baaceSNX<<<>;:<AA@><998<<=;>;8;?AB@ACCB@AADDBCFHIHHHLMLGIJMMNMJJKKJLMSlpqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJIIe
qhhgegifhF68896479;<:8567789787588;;;=@;999=<>;<=ACEHJMLLGIGORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIh~xmlihijY5655873568:876565676767:67889:7578979776:<@GFIFIFEFOSRSSROPPRTepqsttvy{{{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@6788=:=ECBe
vmmmllU785688557699776765:9:::;798987669:98868589;A=>>BA?AKLOQPQOOORWkqrttuvz{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B:=q
rnoope@>:;;<9:;9:;::9;:9===>;;<<:>;9;;<;<;9:<8::::999<?<<ABDIJMKIKLWorsusvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<:89989:::;?>H~
rrqqcGFCBAB>@CA@>=>>@???@?@==?B>@A?@?=@@@>?A<><;:;:9;?=;<==AACABCAXpqtttvz{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<=:;;==?@BR
~rsrSKJKHHHEFHGECA@BECCABCB?@DHECECEDAFEFDEFD@B><@>=?@>?>?>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@CDFW
{zt^g]PKKKIJJJIFDDGHGDCEFDBHIKGHGFHGEKIKIJKJCFCCDBAACBDCCDDCA=;=@hpsttwwyx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@?A>BBGGIY
{x{ogUMLMJJKHKGDGIHIEEHFFELLMIJGGHIJNMOLLNKHFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?EGG=<@@88<;;=:>@>?@CFIIP_
xrURROMNKIIFJIEKIGKJIJGGGKLNLLHHIJMQNPNMOKIGIJHIDIHHFFGGIGCBACTnpuwwyzxyz{||}~~~~}~}~~~~~TDAABGHB?8?@9:<8=>;=A>?ADHJLUq
s[VTQQOLKHGCHJHMLGKOLKJJLMLOPNHIKLOQQPQOOJHJJLJLFGHGFFIFEEBABB\orwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAGKLPVy
|\[WVWUQNLKEFGMPOPWUQPOQSRMSTOMSLPSUVRSRPLJMMMKNGGJFFHJEDEEBECcpuyyzzz{z{zz|~}}~}}}}|}~~UFFGGGGHF>@B=?==B@BBGVNFNPPTX{
l]ZmbGUSRQK;;STS`u]UVTVYYRXXRZfPUWZ]RTWQOMRQPPQKKKHHJHEFIIIHIirvyxyxz{{|z{|}|}~}}}}}}~~~SHJIHGGFE??AAEACGEDELXRMTUVXZ|
~ao_gX<YZYTQ?@WVY\d`VYbr]]W]ZVEQYZ[Y_TYgRVVXUTVTOOMJLJIILMKOMSosvxyxwyyz{z{|}{~~}~}}}~}~~~~VJJIHGEDDBA?HMIMPKIKPTSSXZZ\\x
g;~{qrZ]]\SUSWWU[ZuYU}a\X]_WIV]][[_YHYXY[]XXYWRQMPQMMOSQQURassvwwvxxxz{z|}}}~}~}}}~~xy}YNKIIHFBD@A:PQQWXPPOQSTTXXYZ[n
nh[\]ZUWUXSRXVcRerXZW_hP`f[[X\gaGOZhg][\]]WROSPPRVVVVYZnrtwvvuxxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQPRRRUSVTW_ux
~}_SWZVSVTRRMPMLfz[]TYUV]ZLTZUST^ZXWWWzkX[\\^TQQPINOWVX[Zdprvvttvxyy{{|}}}~}}}~}}~~~zxwvsu{tk~kry^[VUSROKFCDAM^lVRSNOQOQURSRRUcdv
~zorYLMPPMOLJKEFIFC?TdURQQNKQTQMOYRMNQSUUMQSRPOMLHCIHRTUZ\lquuusswzz{{|}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^\YUPLILIaltPQSNQRQR[RSRQRUTbs{|}{{
v`^NE@DDDDCAEQCEAC>CIGV@HNLG]iPHFNFDEFIGHBDHGIKGDBAD@OQMRdrtvustuz|{{{{||}|{~}}}~~||}}vt{mh|gnqfiedb\XSQPURsWe[OONLQSQUYSUQQTSOV`klrv{{xytrnstsyx~lNHAA<<>@A@@?kQK`EFHIEB?GLNGMQUIAE??<=<==?=?ACC@?==B>JNGUnutustvx{|{||||}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QRZ\Y^JJPQNKLQRQTVUWQQWUPX[b]agmmlokg`nrjmlqu{z}{xz||xwxeDBAB=;CCBBDB\]O{NOONKLMOOQLKMWMHG@A<977599=;;;8:8:?<BH?\stuuuvwy|||}||}}}~|}}}}~}xuvz{zwyxuw{|yxuywcqhipmnmmhf^OP_\ZIHPRQOMPQNQRTVXSSYTOYZ[WY]^^_e`]^qvk^`gkwooljonnlfbYHGHHCBGIFFEDMRPaWSXQPSSRU[OOQVPMIDF>:96587979:365795<C>essvwwyy{}}||{|}~~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`VW^ZXMKTTSPQUOLRSTXXTTYRMWYZVXXVXY]WWXhsk]Vaskba_^da_^YUQNOOMIHJLJIFCQPS[WTTNQSYS\eUOSTRNKIHC?A999897885757859:Gmrtwxy{{|~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOUVXXYSUTLKTVUUUWPSUWTUR]n^RNZ_[VY;DVXT[fJLPSRONMNNNLJFQPUYSTOJOOUST\VRUSROMLIHHF?><:787659967675Wopswyz{|}}}}|}}|~}}y}}|~~~}||}}~}|rvqxxrvuqqnppopuvtnjddjppqrpofedc\]RTZVWUTWTRXXYYYSUOJGOPOOMRJPPOPNNOTLMIPOSTU2=XMI@Q=caQSQPNPQPNNMQNTRPSMILKORPRRSTQROLMKLLHCBA=::876;B5566:doqtwx{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqniihpVVTUXUWURWVUZYXWUQSFEAFGGHFJDHJIGEHLHKHFLMPMG/E_R>3?>joaSRQ@GTQPQPQNQOQPLJLLOPNNPQQNPOJLMMKGEEDB;=<<9=G6677Dmptuy{{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknaePSTRSTOWVVYYVQQQO@=;=?ABAC@BEDA@GHGHEFHJMLEGCORC8ENS]gTQSAGUPOQQPNMNMKLKLNOOQLOOMHLLIKKLKGFFED<AA>;@E;<89Sprtx{z{}{|{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLOOMQSLTUTXWULLKI<987;>@><=A@B=>EHGCEFIGJJ@FAA@FHEJOHQRb\QPROSOOPLLOMLMMNON[WKMQOGIHCHJLLKFFFE?BC><BG?B?Adpswzzz{|{zzw{wy~~|{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCD=9779?B>;?B@@>@DIECGGIGIEBB?>=CBAGIDMObeQMONWKLNKLMMMLLONSdNJLRHIIEAHJLMNJGIGBAB@?EFEHDKnovyyy{{z|zwsxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGMMJMPMPOHJD?A=98::?B?<ABAADEGKFCHIGGHCC?B??@A>DECKNRTLJIMTFIIJLJKLIJMMOPRPJGCLGCBJILMONIJIGCCCDHJMLIYrmwyxz{zy|vrpurtxyvxjqnjllnttmtu{stxronqovsnporpopstyjN`gsjt|ygosqiqhdqGKDGHHGJKIJKDFB=>=99:;@B?=ABCCGFIKJDIIFGGCC;A@B>@@BECIMPHHKGHKDHJLMHJLHIJLKM]RHHDNFACJJMLPMKMJKFGGJNNQNLbmivvwzy{z}rmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoiktgdoFKDFEGEFFGEGBC@><=9:::@C@>ACDEIEIJLFIIGFFDB;ACC>@CDCDGLNHKNHDHEILNMHILGFGIILNKIGENHBFMKMLOMMNMKHHIORRSNRfffqosxu{z|lhjnekqlspfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGIDFFECCCE@DB>?>:;;=:=>CA>ACEFJFIHLHGGGFEC@=DEB>ACCCDGHIGMPJFFGKNOKFHIFEDEIJHJIFHOKCIMKOMONOPNJJILRUUROWd`amgproryzgehhdilgqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutwljuumrvqlnlerLHEEHCBABD=BA>A=::=?;=>@B>@BDGJEIFIHGFGECBAAFFCBBBDEDGGIFLQLIOJJMLIGHEGFDCIIHKJGKRMBNNMPNOOMNOKKKOUWVUSX_^\iaminhrsbeffdhhfnjfmmhkkmriqvtsqmvnoqrswsrstuvvvvwvwwvtwujsunutsqrjksMGHFHBBADE<A@@C<8:=>9?<?B@@@DFHEHFFHGFFDCECDIECGEBEGEFGGEJMKHQMJKHHIEFHHECIIIKMKOSNDQRPPQNOMNPMLMSWVXXUX]Z]d`hbjigk_eefcgggkggkmkmlprhttursnvoqprtxqssuvuyvvtxuuwxmouorsuqqinyMHGHHBBBFE<?BBD<7:>=:>:@B>??CEFDFDEHFDECDEFGJEEJGCGHFHGECFJJGNKLKHJLFIIKHEKKLMNORTOHSUSPROQMNQNMPWZVZYVZ]YXa`a`^hec`dfhgjhhifhnllnmqpiuuxrrpupppruvpusuwu{~}xvtwvvvxplupmstnprrxNHHGIDBCHE<@EBE=89>>=<<AB<?>AAFCFCDIEDEEFGGGIFGKHDIHGIGFDHKIGKHMKJKLHLKMKJNKONORUVOKUWSPSQRLOQPOTYZY\ZY[^^]`c^\ackb`dggr
hgifjmnponsrjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqvptLIKIKFBEGE<@GCD@:<?@?>?BA<@>AAFCEEEIEFEGFHHFHHIKJFJHHKHFFLIHHJGLLMLLIMKNMMPLPPQUVWOKVVUSSQRLORRPV[[]^[\^__a`ad]c`ef`ehjdssfjggkorqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrvnvJKLJLGCEDE<@FDDC;??B@@@CA?B?ACHCFFGIFIFGDIHGIHJLHHJJILJFJKHIKJGKKMMJJMMNNNPKOQRTXVMNTVTRRQPMNTSRW[]^_]]`_`aa`acebdhbdijgvljigmosqpqppryvruutsmmssmqrotutrpswtuuwvuuteqskpqjrvnwKLLLMGDCAD<?EEEC=AACBBCDACDAAEGCHHIHGJGCHIGHJFILHIJMKNLGKIHKKNQKRQMSMKNNOPPOTOWXX[NSPW\ZRWPNTUTTXZ_bb_da^`b^`eaacingbihhnxvlhimosrpqrrrvtsusssnksqmprotvrqquvuswywutucmtkopjqtowLNLLLGEA@D>>DEFC@DBEDDFBCEGCCIFCHJKIIKGDKJGHJIIKHJJNLOKILHJLKZfJd\KlSHON_nUks[qpbwcSPavuhucav`Xnqbdvinzf[lt`ljT_wvijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqrqyLNJJJFC?@B?=DEFDCDCFEDFBFFGDEKFFJMLKLLGGMIGJKHKKIKKNLMLLLILML[sbdp^lmUMNfs]ffqlntgpi_aYnnbppbkjjfoqtetno\ougpMJqyvka`keemxlkvmnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIHGED?AB@>CFGBFCFEFEDCHHHDEKHGLNNLMMFJNHJKJILJJJKLMNNMMJMMN[roonpplkMPQlWMibtrpamnu\YlP\nmZqmkomxxtsip]_rkqjUuyxoc^kfbgppjjopprspqpqqrrqqrrtlmrmnnorutqtrtuutuuzvutenukpolsrryIKGGEEEBBB>@@FGBGDIFEEBFIHIEHLJGMMOLMNGLMILKIJMIKJJKOPONMLNNL\hdu]lqWlNPQmTYk^klvaldsSecNmYl\tpkilxjwuhp]^rkhWbcw|oc`ggadiuyknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvHLFIDEECAB=BACGDHGLHECCHJIHFJLLFNLLSRLGLLHNJIHNHJJIHNOMNLJNMJZsppoqqmlOQRnYrkgooqqomt]nXat_nopoqronusttj[^tcwxrjnzhaacfbbimtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyxtukoumtonssvsHKHIBEEEAA>DDBGDHIMIFCFJLJGFKNLFOJKWRKGKJJNIHJLIKJHHKMMMMIKKKSkc[i^_icrrZ_Yjn_eeUk_c[aaQ`lh]j\niid[pfdp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrvtwrGGFIDECFA@BFEDGBHJLHFDGKLIEFJOLIPIL[QJEHHKMIHJJKKIHIGKKKLGHKKLMMLJKMNT[\TPTLPONOOVQOOQNOQJJOPQdqiTYW\[\VY[]X]\\cfaaebcf__fkmhmtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusGCEGFEAEC@DHDFGCIKLHFDGKLIEGIPKLOKLWLIEEHIJHIKIMJHFGGIGHIEFLIJLOMJP\W^P\[`^MXYS\\b^MXZMXaRKYaZR_d\aX[ddVVX\YZX\VY\]b^d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCDLMBDCBEIEGGFKJKHEEIJKFEHHPKMMJMRIGEAHFJIKLJLJHFDIFDFGEFKHCJNLLU_Y`X`a[`TXYT^^Z_RY\P^\YN_\^SZ^c^Z]`c`Y_c[`^[TXWY^]cbcacehekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIECBCGHFHGHKJJIDFKKKEFIJNKNKHLNGHE>GGLIKLKKKIGDHDCDEAFJE@JLJO[cY_^a_RTRW_`\]Y^QY\MV_WKQY[PZ_aa]^ca`bbbcceZQXUU\Y]c`__cdbhomnllllu
yu|
}wrrtxyyyy~}yuyvvrnzwvxXQKFCGEBEGIFGHHFFIGHGHKILDDKKNMLKHKJHIF?GGNKKKMKKKIFGCD@DAHIC@IJHP]aZ[d]_TQRX]\\\_ZKW\LR\YIM^QO\_accccb\dcbdcfXQUTQ[WZ`_^^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMC@IFDFKJFFFHGGIGFFILJNFDKKMNJLIKJHHFBHHQMKKOMJKIGGED?ECIIBBGFET]Y^X_Y_[]UXXO]]QKJV^X^[]UY`RQ__bb``bb`cbaddbXOQQQZR[]]]]^__dhgljnnp{{|~{
srw
|x\SKCAHFDGMRHCQJEGHHEFKJMPEFIJKNLLIKLIHGDHKQOMMPLLJKHICDAEDIGCBGFDWUE\T]SV_XOTUNZZMIJT`a[_X^^a]OYa\``_bcb]abW`_TPOOOWQ\[[\\^_bffeleoow|{{}
zo
~INFDFFHDIRbPCV^IGGHDFMKPPEIIJKNLKKLKIJGEJNQQNOOMNLMHKADACDGECBEGBMHBKKOONLFMFGIJHGLKMOPILOPOSOLPSRUZYWYXXdWOSTPPNMOTSZXXZ]\`adecgcklpsryy{z
~{}{
}KIEEGFGDKM]LGGXLGHJHGMLQQHKKKKNMUNOJJKGGKPSSNPONNNNGKF`ED_LEfdEN\I^[rmOMUmYLDP`UkWgJ]WU^DLQULLSVQRTXWTXUT\UPfZhhdXRjRVUT[\[``abab`fhfnkhrz|}~}|zr{z{
~z{LIFGFHEEKOSIJF`THIOJIOMRQLMLLORUROOIKMGHMQ[YOPPNOOOIJQQI|YYrtYQmHqnoaVPqqsPCksmqspSo_[nX]V\XUkhU]VcZ`Y[_VVXjtuu^_v^Wa[[f[_`a`a]`agmpl`pwtx}vxzlv~tx}|~|z~wwNJEHMNBDLLFIKERVLKNIKRXWQMOOMQTNOQOKKNGMPS[ZSQROPPPJHZx]TxehZSURvgtlpbnfjQrOMwmjrpsrqrpoo]ezuxqqzq~s}ku}bRh|essorr{|o~xnr_``baZ`_gknkblfgmw~~{xwtvzir~ns|~wx{~x|u|||ssNKG`]GAEMMHJJGJPOMMJNV^YULQSNXZMSSRNKOHQRTYWVPTPPPQKHgxlcxrm[KNVypumubovPeeJfvqmwojfxxiWrQhzmijzz}lxzohoYvvjvup_rf}ilx|o^__ba[]bdgiidgbcdllppstsssyqrxblugqy{srvy~suzn|}yxroNKSuNCBFPPHJKIKPOOOMPZ`ZWKTWPa^RVQYRLPISTVXWWOUPONRJKrouuquqdibWnLqp^FhyWvTLiy}x`y{sna]mocRhqunmypwlvttrln]t~zkmy|ktl|kpvux^__b^]_ddiggee^abiiijknokqomjpacfcowxompsy~nqpk{ztsomLL[VHGEGRPILMJKPQPPPPW\XUMUYUeXRRY^SLNITTVWYWOSNNNRIRmHiwK`dvvVXlOnl{sajgvULWkh}lmlx_Zpz{^`zscroxqhd}ir|^TLl`vukiu{zm~xk|p\^^b[^bddgeeebZccikkrsrvglihdg`akagsrlgmmr|kmhk{tmnkmOHKKHJHHQPLNOLKRRROSRWRVTPWZVVTTTa_PNMKTSTQVVNNLMOPKHQNPULKLSTTSTPVUQQNQQXYRNPUTXXX[[URSW[WXXZOSUWXXR^YW^VTPYRWWWWX^Zgr^[[Y\]_cZ_ccdfdccbZcbgfemnmueegcaf_]g`dlhfgkhpzhggjujhgilQIKLLMKJSQMQPOLVUTPTUXUYUQZ]VUTWUYWOOLMVTQNUSNOMLQPLJQQKQMKLPRUSQRSSIHLNOQRQQQTVRXW\WSRPRTUVSZQNSRXVTYVUZVTRUTTUWXV\Y^`]\ZZ\\_c[]bcdfdddaY`acabhhimbad^_c]Zd\bma^fefmsdigjkedcfhPJKLOOLMSPNSQQMXWUTUWWWZUS\`VWVYUXSPPJNWSPNUPNQNLSPMOUSNRNMOQUQUQRTUNKMOQTTRRQVWUYZ[YSURTWVVY[TPTUXUUZUWZVSRWVUW[XZ_\UX^\^][]aa^[bbcgfedbX_ab]`gdfea^_]]^ZZ`Z_g`^]]bhkagfhfd`bcbOLMLQQLOTOOSQOQ[YWWX[YXYV]jdVXYZWVSSOJNVTPOUPPPMMRRPRXTQQOMPTVOXRTUUONMQTVUTTRTWVZ]\ZVVQQVXV[[WQTVVVVYTXXVSRYWVZ^Y]_^U^\^`\[____ZbbdhgddbXa`b^^fcc`b]\\\\YZ[X[a[^]\_b__bdebd__`\PMNNRQMRROSTQOU\ZZW[[\XZ[dqmhd_[XVUWQLMVSMNROQROLQSRUZUSPPMQXWRWSSSXMOOQTXVUUSUYX[^][[VQNUVU[\WRSWVWXVTY[UTRZXW\^Z^_`Ua\aa]`b_\`]cacghdf`Yc`a__ed_`b[Z\[\YZYXW\Z\[`^_[^^a`^b\Y`[QNONVQPTQOTTSPW\\\X^\^V\^jqwyc\[UUWQMOVSNQQORTRLRTTYZWUOROSXWTSURRZOPSRV[VWWSVZX\][[]VSMTUU\\WRUVVXYSUZ\USS]XZ]^\```Va[cb]ad^\bac_cfidf^[d`a``ce_b^YZ^[\[YXYWWZZZa\][]\\Z]`W[[ZPOOOYPUTRQWRTP[^^][`\`U\]hjr}slg\TWWQNRZSRQTRTUTKRWV[ZZSOSQVVVTOWRSZRTTTX]WXYSX]X^]YZ]TUNUVW^[YRUUYYYUWZ\VSW^Z]]`\bb]Y_[ea_dd^^cca^efidf^]da`aabd`b^XZ_[\[XXXWW[Y[`\[[\[XZ[^V^Y]QOORZPZTUVVSTT^^`^^b\`U]^bkytl}kZUYTPPS\TUTUTVYWLR[W][]ROUSXWWTPXRSWSVUU[]X[YUZ^X_^Y\YQWRYXY_[ZTUVZYZWXZ]WU[^]^`a_dc\^]]eabfd^^dc`\gdhedb_da`a`bb_`^WX^Z\\ZYYWV]Z]^ZY[\[WY\]VXW]SNPVYQ]UVYWWUX__aa`c]_T]_beeuzhWYYSUSV\XWWVVW]XOU]Z^]\TRWSWWUSTXRSVTXWX]^X][V]_X__X\VQXTYZZaY\VWX[Z[YYZ[YW^_`_cbadd\b\`fadfd^_dbb[fchecf`f__aaaa`_^VU]Y[\[Y[YY][[[XXY[YZZ]_]TY]UNSYVS\TVWYVV\`abc`c^_V[`da_zuohY[YUWTW[ZZ\YXY`WPU^\``\TTXPUWVTVWRSUWZZ[_^Z_\V__Z]^Y]URYWYY]bZ^WX[\[\[[Z\ZZ__``dbcddbdYafcffe^ab`c^bcidcg_g^abcaa`^_XT[ZZ[[X[XX\[Z[XWYXW\[[`]V]]SOVYVVZUXUXWX]_badad`^YYadb`lfh^[\ZVWXY\\]_[Y[bVTX^]ac\RVYPWWWWWVSUTX\\^``]`\Wa^[^[Z^XUXW[[_`\_XY\\]^_\[]Y[`a^`ecdeefbXcedhgd^c``ec\eidei_f]cbcaa`__[XY[YZZXYXW[[Z[WXZTY]\Z`\U^bNSWYVWYX[\XWY^`badada]^Yacb_a``^\\\WW[[]]__\Z]cYZX]`cd_RXYPWWXYYWVWV]]^`a`_b^Ya]]^Y\^YXUW[\`^]_ZZ^]^^a]\[Z\`b_becefefbZdffigb_c^afdZihbfice^bbca``_]]ZX\YYXXZXWZ[ZYWXUU[]]]``bbxKXW[YV\[\]ZW\]_`bdaba]`Xbcbacab][\[XW[\_]`_][`d]\X[becaR\ZOYXZ[[ZWZY`]`bb`ac_\b]_][^]YYTX]]_`_`\[^^`bc]\X\^`bbcedfdefd\efgifcab\cg`\ihbhied`baca_`_\]\Y\YXWXYXW\ZZWWXOXZ]acffrkJYW\ZZ_\[^\X][^_acbaa]b[bdb`bbb\[[ZWXiq`\`_]\ac_^YYcedaS_ZRYX\]][Z[[c`bbc`bda`c^`\^^^YXU[_^]ab`^[`abfc_]T]`acddfegeffe^efhhgdd`[fg^ahhbhhfc`b`cb___\][Z[YXXXVZV\[ZVVUMXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{zzzzzzz{{{|{{{{zzzzz{{|||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvuvvvvuvvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{zzzzzzzz{{{{{{{{zzzzz{{||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||v}}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½ÌÓÒÒÒÓÕ³ÖÒÒÒÒÖº}~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}v~~y1333332j{éääääèÊÝæääåä祿éååååéÇ}~}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vxxxxxxxwwwwwwwxyyyyyywopppppprrrrrrrwzyyzzz~||||||}
~|||||{
|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvuuuyvvvz{x{xwvwzwyzz~|yyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{yyyyyyyz{{z{{{zzzzzzz{||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwvy}||zy|{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwvz}}~}y{zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z{xwv{}|||z|yxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzyz}{|}z|xxxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyx{xz{yyxxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyyyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||
{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{{{|||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}||}}|||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrsuuttssssrrqpoooopqsssrrrrstttsqqqrstttttttsstsssttttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqsttssrqqqponnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqrsssssrqqpponnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnnnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrrrsssrrqqppppoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnnnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpqqqsqrrqqo|oppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqqqpprqpsnpppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqq}¡oro|oppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqrqu¡vqw}oqqqqpppppqqqpqpppqpppppppppppppppqqqpqqpppqppqqqqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrrq¨o£~pqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssssrstr©¤y¡|rsssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz~|~}|vvwwvuxzxxxxxwxyy´©¤§©}{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{|{{¯¦¡µª¬£~{zzxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}}}}}¥¢² §}}}}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~ ° ¢~~~~~~
~~}~~~}}}~~~~~~±¡
|~~~~~~~
|||{|}||~~~~~~~~~~~~«¤¤¡}}|}||}}~²¨¢ ¦¨¬¨
}||~~
±¦ ¡¤£
}}}
~~
}}~~
~~~~
~~}|}
~}}}}{
~~}~
¡}~
}}}
~}~~
~}~
~
£«¢
~~¥¦¦¢
~{y¡
~}}}}~}|{~
~}}~~~~~~}~}}
}|}~~~}|}~|z
}}}~~}|}}{{z~
~~~~~}~}~~}}}}~}|z|{~}~~}}~
|}}~}}~}~}~}}~~}}}|{{{z{{|}~~~~~}~~}|~~~~~
~|~~}~~~}~~~}}}}{{|zzzzy~~~|~~~~}|~~~~~~~~~~~}}}}
~}}}~~~~}}}}}|||{zzzzy~~~~~~~~~}~~}{|~~
~~}}}~~}}}}}}}}}|zzyyy{
~~||~}~~~
}}}}}}~~}}}}}}|}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxxyyz}~
~~}~~
~}}|}~}}}}}}}}}}}}}|{{|z|yyy|}~~
~}|||}}||}}}}}}}}}}||{z|yzz{|}~}{||}
}
~~
~}}||}}|||}||}|}}}|||{z{|zyz{|yy}~}{|~}}|~||}
~{z|
~~}}}||||||||||||||}|||~~{z{zxz{{|}{~~~~~~}|~~}~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||}|yz{{xxy{{z|}}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{||||||||||}}|{||||{|||zzy{|z}
~~
~~~
~~}|~~}}}}~{|}}~
{z{ywz}
~~~}}}||}~}||}}}}}|~|}|{}||z{z|}}
}~}~~~}||~}}}}|{}|~~~~~}|~}~~~
}|||}~{{}w~vx~}|}|}~~z~~|~~~~~~~~~~~}~~}|~}~}}}{|||{{z}~~|||}||~~|{{}~}~~}{{{}|{{{{~~}||~~~y}~v{vx}|||{}}~}}~~}~~~~|}~}}}{{}}|z||}}}}|||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}{~~~~~~~}||}}|}}}}{|~~~~~||}||}|~~{|{||||}|}|~|}|{{{|y{|{{}z}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~~~|z|}}~}}~~}}~{{}}}|}|}}}}}~|}{}|}}~}~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~~}~}|||~}}}|}}}~}}~~|{{{||}|{z{{yzzyy{~
~{zy{}}x|zr}{{}||~~}}
}~~|~~}|}}~}}|~|}}|}}~~}~|}|{|}~||{|}zzyyyyz{~~
~~~z{y}}zzz}q~z{}}}}}zx
~}~~}~}~~~}~}}
}~}~~~}}||~~~}}}}|}||{|}{{{zzz{{|}~~
~~~}yzz}|yw{t{|tw}~}{{vv}
~~}~~}~~~}~~|}}|~~~~}|}}{}}}||||}{{{|{||}}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{}~|}|||{|{|~
~~~~~~~~~z{z}}uqz|zqz~}yxtt
~~~~~}~}}}~~~~}}}~}~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}}~~~~~}}|}}~~~~~~~}~~
~~~}{z{z|{z
~~}~~~~}~}}z{|
{{sy{|pwuvwyutz
}}}~}~~}~|}}~~|z|z|{|~~}~~}}}~}}{{zx|vyz|qtxwvxury
|}}~}~~}|~~~~}}z{{||}}|}}~}}~~~}}}~}}}}}}z{{|v}yxzzruyyvwwsu
~~~}}}~~~~}||~~~~{{|||}~}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~
}}}|{||yz{z}y{yx~{|{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst
}~}~}~|~}~~}~}~~~~~~||||zyvyyzyvyv~|{{{~}{}~}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}}}~||~~}~~~~}~~~~}~~}~~~|}||{|uyyxxxyw{|{{{
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~|~}~~~}}~~~~~}}~~~|~~~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~||~}~~}}|~~~~}|~~|}~}~~~
~}|{{||yw{ywxwwx{{z{|
}{zwz|}}||}}}~|}~~}}}|}~~}}||{zz|{{zyzz{zxswuqqsoxwq{
~~}|~~}~~}}|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{||{zzzzzzxsvupprowvr{
}}~}~~~~|~|~}~~~|}~~z}~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxzxy|||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyytuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{wwy{|{}||||{}|}}}}|}|~~~~|z|}{|}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z||{zxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~~}~}~~{}|}{|}xxuxxy{||}{||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|{}|{}xwvyyz|||||{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~}}}|}z}{zvzxy{{|}}{|}}}}~|~~~}yy{zzzysrtowqwysw{
~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxqytvxtv{~
~||}|x|yzyz|}|{||}}}||{{{zzzupxwyvu|uv|
~
{}~|y|zzz}||~z||}}|z{~~~}}||}|vrvxxvtvu}
}
{||}zz|}}||z|~}|}}~~~~~|}~~~}||xvvw
~
}}||{||}}~~~}~|||}}~~~~}~~~}~}~}}~~|}
~
~}}||||~~}}{|}}}}}~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uz~
}y}~{
}~~~}{}~~}|||}}}}|}}~}}|
h
j|{qq|sstt}usqspurstv{}uvy
hzrss|r~}}~~|}}}||||}|||~}~}}}
}p{pyv~nypus|vyyrpvxqvtturstvinrotvnulwmzsnym}rsvsvmnwlpylu}~|~}}}}||}}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoolw}xpqzprtfu~n{ysoy}~{~}~~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyrioyxpkyszozwvvp~~z~}}}~}}~~}~~~
xyrz{pp
x
xyks~y{krz|mzyyt}vnoot|uwpy}}m}uo
zrr{|upozks|nv~~}}{}{|}}~}~~}~}~|}~~
}w
~~{|{~{|}~}|~}~~~~~~~}}}~|{|~||
}{{|~{||}~~||~}~}~~}}|}~~~~||}~{|||{{~
~|{}~{|{~~}||~}~~}~}}~~|}||~~|}|||}|||~z{{|~
{{~}|||~}|||}~|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}}|||~}|}}|}{||{||}}{{{}|{~}{|}}|}}~}|zz{{||
zz
~|~||}}|}}|~{{{z{|||{{{~{{}{z{~||||}~}{z|z||
|
~~~||}}{}}|~zz{y{|}{{{{~||||z{}||||~}|{{{{||
z{
}~~||}}~}{~}|}yzzy{|}zz{{}|}||zz}||}|~~{{{|~}|
}|{
|~~}}|}~}~{~}|{yzzyz}}yzz{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~|}~~~~}}~}{}{zyzzyz|}yzz{{z|{{{{|}}}|~}|||~|{
~}}{
~|}}}~~~~~}}{|{zyzzyz{|yzz{{{|z{{{|}}}}}}||}}|
~|~~
}~~~~~{||}}~}~~}}~{~{{zy{zyzz{yzzz{{|z||||~~}|}||}~
~~}|}~~
~}}~~|~~|~||~~|~}}|||{{zzzzy{y{zyzzz{|y{}{{~}}}}
~}~~~~}}~~~~~~
~~||~}|~}{~|}}}~}|||}{{zyzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌÌÌËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<C9;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;>BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937676=<>:=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<:<<98:9:::;<::;9><>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA=366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖËËËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9>CE?<;999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNG¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖËËÑÓÓÓÓÓÓÓÓÓÓÓÓÓÎÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×Ø×××ÚÛÚÚÚÚÚÚÚÛÜÛÛÛÙ×××××××××××××ÖÔÓÓÓÓÓÓÓÓÓÓÔÔÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILN@99:4;@<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMMF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖËÌmpppppppppppj§ãÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¹´»¹¹¹¹¹¹¸¸¸¸¸·½ÓÓÓÓÓÓÓÒÒÒÒÓÓÓÛâáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃrliNSbLLVM<::77>C?8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKPFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ËÍN&+++++++++++"ôëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¤XRSSSSSSSSSSSOw¨¤¤£££££££££¢«ÓÒÒÓÓÓÓÒÒÒÒÒÒÒßëêëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËwliJN_MRUM><<7;?C>6:7>?;=B@9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ËÍR,11111111111'óééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¦\VWWWWWWWWWWWSz©¥¥¥¤¤¤¤¤¤¤¤£¬ÒÒÒÒÒÒÒÒÒÒÒÒÒÑßêêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<<<;>::;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÌÎ\9===========5ðççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©ª¢fabbbbbbbbbbb^©©©©©©©©©©©¨°ÒÒÒÒÒÒÒÒÒÒÒÒÒÑßéééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9::=<;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÌÍÄÂÃÃÃÃÃÃÃÃÃÃÃÂÉÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÎÎÎÎÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÑÍÌÌÌÌÌÌÌÌÌËËËËÍÒÒÒÒÒÒÒÒÒÒÒÒÒÒÔÓÔÖÖÖÖÖÖÖÖÖÖÕ×ØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<7@A<=8:;898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÍÍÏÐÐÏÏÏÏÏÏÏÐÔÐÐÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÒÓÏÏÏÓÓÏÏÐÓÒÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖ×××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoVJ_cRQZKHAA<B==;:>><>?==?89:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎÒ«ÏÐСËÓÇ«ÑÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==<=:<=B>BB@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÒ¶¥£Ö§ «Ï¬²ÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?><7:>9?D>@98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÏι¡´ÍÏÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>><<96?B?B:648:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÑ¿ µ ¨µ¿ÉÅÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8E@?B:74:::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÓ´ª¹¦ ÄÓ¡ÏÐÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<=<964:98::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯Ê £¿Ê¥§ØªªÔÏÏÏÔ«~£¥ÇÉØ£¿ÕÑÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ×××××××××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>9<97659:6:<;7<@@<::=:<?>=<9@<<::9?@==<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÔ¬§¤»ÍÈÒÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CGDAA8;?<=;<<7558968;:9<:>?<<=9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÓ¶²²¥¯³¥ÐÛ£µÕÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF?HHFE@<<>><==<756:96:;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÄ¢ £¢§»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:7:;::;9==:::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸« ÇÕ¢«¤¾¨¡£¨¢©ÐÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFRQKK@>=D<?CF=557;96:;:;=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÓÈ´Ù¯¥Ô¾ÖÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUij[L_MJLJTLFB<<?FEGKI=667:979:;:;=9>98:8;=>>A>=9<<:=>>;=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÔÈÁÕÒÕÀ½ÖÔÓ¹ÈÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?ADLLA>775:88899:<><>7::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÑÓÔÒÒÒÔÕÓÓÓÖÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ==786977899;;=?@<<89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9599:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EIKAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDI;AA;<886586987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<AA<;876797799=?A?<:9@?<>B?:8776=?@@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDKIMKFIE>BD88867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE><HF89757875898;>>=;89A>=@?A>7596;>AB??@@AB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCDECALH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÔÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HQA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELBA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD;:<864887666?>>:<9<;:==<<8;<<DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDE@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<877966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<::;868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAD?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8:87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;99:86885668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßá mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
¼ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9768579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsnupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9886553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿½¾¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956535658756578;><;999:8779769=;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¹¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455588686<:9<==;:86688:767>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸¸·······¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPF>8;728967443588797;9:==<::974:98668?>@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269664737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³µµ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶······¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸···¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬«««¯°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:9358963:=>@?@:@BBB??@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·³°°¬«ª©©¨§¨©©©¨¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶···¸·¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<699367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¥¥¥¥¦¨¨§¨¨¥¦¨¨§¨¨§¨¨©ª§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸·¶······¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<>::A<7<8378837;@??@@:BEC@BDCA?;;@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬¬¬«ª©¨¥£¤¥¦¦¥¦§§ª¨¦¦§§§¨¨§§¨¨§¥¤¤¢¡¡¡ ¡¡£¥¤££¤¤¤¥§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§¦¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°«©©®«¨¥¥¦¦§¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<?=?A?<?BC?BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©«««¬ªªª¨¦¥¥£¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢£¢¡ ¢¡¢£££¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>>;:99=7669656>B>>A?=>CA>CC@@;@?BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¤¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747578;=8::99;=;;89>6789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥£¢¡¡¡¡¢£¥§¦¦§¬«§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899898=;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡££¢££¤¤¥¦¦¥¤¤¢¡¡££££¢£¥¦¦¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¦¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364689:89788:=;<9;;::67899>?@><=@>@:9@A?=A?>AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡ ¤§§¦¥£¢¡£§¦¦¥££¦¦¦¦¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢£¥¤¥¥¥¥¥¥¥¤£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB?DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¥¤£¢¢¦§§¦£¤¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢££¤¥¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:865846789=88;:;?;:;<:::7768;<;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¦¦¥¤¦§¦¥¥¥¦¥¥£ ¡¡ ¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¥¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢£¢£¤¤¦¦¥¤¤£¢¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::78:64795<968979<;;<::<;:<<8687>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££¤¤¤¤¢¡¡£·¡¡ ¢¡ ¢¡¢£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££ ¡¢¤£¢£¤¢§W^]TW_nk ¡ ¡¡ ¡¡¢¦¡¢¢¢¡ ¡©¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA==;::;;;75;86;746::>;:=>>=;;;><:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¥¡ ¡¢¢¢¡ ¥² ®fx ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>99;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ¦¬ ªD ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9<<=98;8:;79:589;=<9=;=><=>;??:9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢¢¢ a¨£¡OH ¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;BC9<??;:97;8887489<;<8;;<=:<>9?A<:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe §j\¢ ¯rJL¡ ¡¡¡ ¡¢¡ }xjabb\Q<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq ¥Sw¢ £_WN¡£¥¢¡¢¢¡¡ ¢¡ ¡
wqgjd\\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢ \`£eZM¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[[LF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡]^u¢eZM¢ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<9=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ab`~tcUO¢¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799:=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y i][c}i^PS¡¡}
£ª¡¢¤¢ª±·´¹µ±´¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;63:7:9>8::<=998:9;<:>=;@@;<B<@:847<;B@AB>>;CDD@CC=>>9ay}{
kxvwsq}r ¡ vnfVy[TPY
¡§ ¤£ª©³¶±µ°¨ª¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::8;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v¢¥¦tOPd
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VQQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8::@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
¢|f¥{ct
§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974869388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
~~£ylQsXp{|~|
¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¦ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:8758885979:=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
}uSKKs
L^oqw
¢±®©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:=88;:9:<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~£P0/;xvu@B[jn¨®²°°µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWMO_^\NUUbQDTM;?:<895875795:::9<8:<=:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
¡¡¢§cC_K<xxifG16Wmr ¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUJTOOJDPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FC>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ªª©§¢¥¨©«©ª®Ixª~@|xebQVcJ^o¡¡¤¤§¤©«®¬¥¤¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdWOYKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GE>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®««¬¤¡¢¦©§¨¢vcÂÔ¥E}xOmxVb£¨§ ¢¡®¬«ª§®¨¥¤©©ª©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_VZNRNQOSe\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@DB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨§¦¨©§ª©¤§§¤¥£¢c»À®|¤£lI\{pRt£¢ ¡¡¡¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOXO^edlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;@AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤ ¢ ¢§¡¦®¦¦l¹¬Ó£´¬\M¯Ue¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvxb_\UYQUW[c_s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?B?:8:>?C@DA:;>=@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯««¬¨¨«¯©¨ª¨¢ ¡¨ª±²¯«££w~zsÑÄ°£lV§®f]¦ ¥¢¡¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\U\hdocmiib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¡ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£ £ªª§¯··µµ¶²°m˽¦tVmwus¦ª§¤¡£¡¤¢§ £ ¡¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxjb[__\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>BE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ «²¸»¼¼ººÂ¹µ´vaVµ»¦§xmrpxyz}¡¦§¬¦¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__amhvkqhiibZSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°²´µ¸ÂÈÎÒÐÌȽ±£peRD
}xrofekhkqsqqrt{©ÆÆ»¢§ª¬§«©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YSaiaftotitdidb[LK>:9898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÄÇÃÅÇÛäãÙÉ»®£rYZQDfwjntnkeeYX]X\bijheak¸ÁÀ¹©¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`b_^kcbnxuwnm[bRV\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAA;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅƾÌÐÔʹ¦p\QTKD[f^cjebah[UYTWYZ\Y]y¸º«´²³©®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklgnvrrurg^`\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅľÃÁÇËɸtaTOOSH>_l__ecb_dbTVWVTU[y¢®°ª¨«¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|uklndomiqxoyjia]gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄù¸ÃfKDGKD=Zdbbjda\d_XSPPR\¶º¬®¥¤£¨¤ ¥©´±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{wnkihvZgrxszgg^d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÄÄÂÄÁ°SGME;KZ_flg_\`YZTOY§¬¸µ²¬©£¡©¬§¬´´¿Ã¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyvvefjjh^konyxcba`^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÎÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈÇÂÇq\H??D^bakb[XWSY¡¹¿»¼º¼¬¦©»º¹·¿³µ¸²Áƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqocahvhjjtnyl^d[U`YLHD6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÌÐÍÇÌÉÂÂÇÂËËÈÇÌÉÎÆÆÆÀ¯zUN/VTWhaRNTz²ÉÈÂÄÇÀ¼¾´°°°Â¾¾ÁÆÀ¾·¶Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r}xpg`kjwmifvotc]cUWUSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÃÿ¿¾ÄËÈÊËɼ¼ÈÇÉÍÈÃÈÉÉÅÅÂÂÂÃÁCNyVPyÍÓŶ¿¿À¿º»½µ³³À¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyspfegdlebknoo_Y]WVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ãº¸¹¼¾ÁÇÁÆ»¹ÈÈÃÅÄÀÃÁÁÀÄÁ¾¼Ç¦ymr´ÌÈÇÑÁ¯½½¸¹»»¾·´°¹¾³¼¾±¹µ¸¼¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}zxnfaebacddjcgd[ZZ]YQOE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹¾ºº´À¸µ·²®º»·À·¼ÉÏÀº¿À¼»Å½ºÀÄ¿½¿®pa|ÑÅ¿¿É¿°Á¿º·»¾¹µ¸´¸¼´½¸µ´°³¼±··¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬¬§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ §¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qdacchkggjfj^VVTYOSLF8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=96<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ¹¿»ÁÔ¸¿»ÃµºÇ¶µ¸º¼¸¹¶«¥|É¿¿»Á¾¹Æ½Â¿¼Å¸¶·´¸¶¶»»¸¶´·ºµ³¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¡¢¡¡£¢ £ ¢¦zyqmeegpjelhYYOKKKRJLHD9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹º»¿¼ÏÃv¨Ì½Ç·¹·¶´·¹³µ±½ÉÅH|ʾ¿¾½¼¿ÈÃÅžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~}knqgqktfcn`\UHKKDJCCG?:;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼»À·ª¤®°¸»²½¾»Ä¶µ¸µ·¿¾Ä¼ÂÄ×s»ÈÏÂÀ¸®´´»½·¹±½ÃÊDvÍÿ¾½¼ÇÌÇÇÄǽµµ¶Á½»»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢rfljnuoydhc\cQKUHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£°¹½¼²¼¾¼Å¸±¸¹¼ÆÉÊÂÆÉÑps¬ÑÑÌÊĵº¿ÄȾ¾´¿ÀÀwQoËƾÁ¼¿ÃÌÊÇÅÆÀ¹½¼Ä¿¿¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tpmltlmo`c_bbNHN?E@?DC;;::;:8;<:9<>::>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´»ÅÑú¾¼Ä¾·¼À¿ÉÏÇÈÊÉÁ
qs¥ÌÌËÍÊÆÂÃËÎÁ¼¸½º°ncc¼ÈÄÀÀ¿ÄÀÊÉÃÃÄùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{z{mmx|`qd\_`_TI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼·»»«Ûþ¶¾À¾¾º¦©²¶Ã¿¥xuxÄÆËÈÁÃÀ¿ÉÊÁ¿»¹± |rk®ÈÅÄ¿ÀÁ¿ËÇÃÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¤¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsxthp^\_]ZRFEDMIAD=H;;59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯··²µ³·¹¼»¶»»Ä·mν¶¹À¼¬}nhnmrsw|½¿ÆÀ¹À¼¾ÅĽ½¸±°|ÊÂü½¿¿Ãÿ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸··½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|wmu{poj\`aZTQAFIGK@ECI<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÀͲv³½¶µÂ¥iZ^`MR[Znsw¸¸Âº³»·»½¿º»»®¤~ÀÄþ¼¿»»¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ°µ´´½º¾ºº»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶¼´±¬£¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦{zsvvwnra_f][UJ=??GG=GCC9:5;99><<9:<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Âɧ
x ¯µjegVY`IIMPSlw¥°·¾¹²µ²»¹¼¶¹¾´¥ q®ÉÄÀ½¿¹³®²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtwrl_ca\^OIB?=IDFMD@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·¿Åª|u `TCXUGajVOEJa ¬¯¶ºµ´²¬¼¹¸µ¸Á½¯¡¥r¥Ë¿¹ºµ®¥¬³°¦¯¨ ¥¶µÂ·¶´¥¨ª¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´¶¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wp|ovsnc^gY]^SONB?JCAKJ@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸¸¾´xoNJ?dYBNwjNA]°µ³µ²´¯¬»º¸¶¹¿Åu¨c©¿¸µ²±¤¦¦£¥©®¹¬««¥¨¤«®¯§°«¯±±±®®¯¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmujl]\kT^\PNHDGMBGNG8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³·¶{XFANYJJXwcAS£¸³´²°±°¹¸¶»·º¼¡±ª£r¬°©««£¨ ¡¨®¤£¤ ¢¦¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wryhutoeUadW]ROMI@IRDNC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²¼ªiM@RxqPIIKgYDR®»±¬³¯®¬¶¶²´µ®¨¦¦¨ ¨©¡§£¨ ¡¢¡¦¥££ ¥ ¤¬¥¦¨¥¢££«¬³®©®®®§ª¨¬¡ª¨««¦¢£¦¢ ¥¢¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ª©¤©«¦©¬«¦¡x|vzcxmn]QiUPOGPMMCPRA?;>4::5;:=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢ª¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬¨½Â«¥¾iERQWIJ`KTacb®µª²´®ª«¯°²³¥ ¡ £¤¨¡© £¥¨ ¡¡£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ ¤ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£~|uv}nl{diVRdNIHGOSNKNH<E@=2@859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶¶º¹º··»®¨ ¡© ªÆ¿Ë¡PAswPnKLcfus`Z^p±¯®³µª¦¬¬£¢¢¤¤£© ¦§«¢ §£¦¨£¦ªªª®§¨°¥£¤¦§¬¦¢¥¢¯¨®²«¦«ª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ |~wy|eyyabSVaHIKLSUJSQM9?A67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¤ÇÇWSJe£Ze~or]Qkc[d_\k´°°¸¬¦¡¢§¥¡£¤¨¥£§®®ª¦¢±££¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§¡ £±®²±´ª²®£¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvsime\S[ZMQKOOVMTMB7>C78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢«¤zUirvupcvvXWc`cgYXWg®¬¯§¢ ¡££n} ¢¢¢¦«§«¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½¶¾°¬±®©ª´±°¨«¨³µ¸³¸²´¤ ¥ ¬¡¡¢¡ ¥¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xvjwu^m[RaIRVHFVWKCMH=KI8F<77;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©¨®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¢¡ ¤np`cXL[SZMLPXRHMMH¬ª©¥ HG¦£®§¤¬ ¨«µ°´°°¶¸½¿ºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ·»¶«®±¹·¼¯³°µÁ¼·¾³³µ¢¬¢©©²©«¨§¨ª§ § ¨¨¥¥ª¢¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vrmiwmhn\X\CWNJGMHCFN=>L>4<:6:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©©ª ±¢·¤°¦£aW^e`WMQG>>?CC?>BQx©©ª¦ ¢£
¦v*`£«®¸¯¯®¯¯¸¼»»¸µ¸Ã¾¿Â¿¶º»Àù½»¬®§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¸Â¾¸´»ÆĽü¸´ª³ª³´¯³®ª¯£¬¨·²£°¦¡£°±®°¤¥¯£¡ ¡¦¡¤ªª £ ¦¨¡¢¤££¡¤¦¢¤|trklurqhW\QFUHDJPI?EB4FH96<>7;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ |_^e`QGD<C>E<?96N~ª³§¤£¢ ¥¬¦xlW5f
|y¼¼¼°¹ÁÃÂÆ¿¾ÂÆÆÅÃÈÂÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÆÌÌÌÒǾ¿ÀþÇƸÄÊÉÄÁÇ¿º´º»µ»·°¶²«»²¯¼·À»º«¸«ª¸»µ¼®®¸£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢
~zrkdioxkeZ\FLMEDTMEBE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<@?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡}sjaWNE>IY|obB=\®¬ vrplplT`kprns®Ä¾ÁÌÍÐÈÄÈÐÌÌÌÇÊÅÅÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÍÓÐÓÓÌÊÁÆÇÆÊÈÏÀÉÑÍÇÆÈƽÄÁ¿¿¿µ¾³¿ÀÃÃÇÅÈį¿¹²¸½ÄÂÁ»¼¼µ®§§®¨ ¢©¥ ¨«©£¤¤ £
yusebgrog^ZZDOMCFQIDCA55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>9;AA;;>786:;>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £kf]TID@?K¥ ²£yqqnj{dXwwrnr¾ÏÍÓʳÑÐÐÑÑÍÍÎÐÄÍÔÕØÑ×ÍÆÇÉÌÃÅÊÏÊÒ×Ò×ÒÕÖÓÔÈÌÇÌÍÉÓÍÎÓÍÆÉÊÊÂÇÌÇÉÉƿó³ÈÅËËËÏÇÊ¿¾¿½ÁÇÅÌÌÉÉÀÃÀ®°³¨¢ª£¦©¬¤¥¦
{ruvgcgvjeVXRDNG@IQC>B=:22A<E<78<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡cTLJDC?CR®Ñ½²¯¦ ¤¡}yqlebhrpr{
upmpro{v}truotÏÐÓ¶×ÓÑÒÔÔÒÏÑÃÐÓÖØÕÕÒËÉÎÐËÆÍÒÊÒÕ×ÙÖØÓÖØÍÒÊÏÑÌÏÑÍÓÐÀÉÈËÄÌÍÌÏÏÆÇȶÀËÀÒÍÌÐÇÊÉÀÄÃÈÏÍÐÑÏÍÊÈ͸·»¨¥«§£ª¥©¨¨}xsvpcaerc]R\JKGAFIJ?;A8>5586;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¥¥ ¢¢[I@ADAFQv²¯¦ wida____^__]alusponkpos{ymih^m¾Ó£ÒÖÔÎÏÕÔÔÑÑÌÐÍÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐ××ØÒØÒ×ÙÕÖÌÏÏÉÍÒÌÎÑÀÇÄÉÇÏÎÑÑÒÈÌÍÀËÍÆÔÏÌÏÉÅËÇÇÉÌËÔÔÑÕÏÒÌÓ¹ű¥¨µ®¨¨«¥²¨°³¬¬
|zqstmacim_VQ`JJCECSN?<>43:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><?@=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¥®·¨«·×ÔÕÙÙÑÎп¼Ìɶ¾®§ª¨¡£¬fC8=>DXª¨}qecb__a_^a`^a`_`emppmjlosv}ryrb\SY£r«ÚÏÓÎËÒÍÕÔÑÊÏÌÓÖÒÑÖÍÏÕÕÑÅÑÓÊÐÔÕÖÎÓÑØØØ×ËÈÎÄÉÏÍÊÌÀÉÁÉÊÎÏÐÌÐÎÎÌÏÐÈÌÐÑËÎËÃÊÈÊÍËÌÒÓÎÔÒÑÐÐʽȹ°®»¹µ«¶°¨¸³¿»±
zvopokadnpaX\[IFFDMYE;@=33<<87855;>@=9<<8<>9<@;@:=8?98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÁ±©¬©¤²{HFB;W¡k^^^adb``aa```^__^\bmrnnpqrqvtowytc[\{wÑÔÉÌÍÄÍÊÒÒÎÆÎÌÍÔËÎÒÍË×ÖÐÌÑÔËÌÐÒÓÊÎÑÕÒÕÖÊÀÊÂÆÍÃÈÊÃÍÄÆÉËËÏËÎÍÑÎÔÌÇÉÐÍÉÇËÆÇÂÆÊÌÎÑÑÇÐÏÎÎÌÐÅÇÁ¸¹½Ã½ù²²¾°»Ãĵª¥¡yqrkmh``qhYXhVMGLIQQB;D?;68:8:;57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±Ç¸ÊÕÖÙÚÛØÌÌÏÈÖÕĵ¯´¨ xlopw|ebbb`]^acb`__`aa`_][]gqqopqmimsphrtgfc]wÂÅÇÇÄĽÁÅÎÎÇÅÆÍÊÑÈËÍÍÆÑÒÏÍÌÔÊÇÊÎÏÇÇÏÒËÐÏźĿÆʽÃÇÉÎÅÃÈÀÇÎÈÄÍËÍÐÉÅÅÐÉÆÂÆÉÅ¿ÁÈÍÌÌÏÃÊÌÉÇÌÐÅÅÈ»ÇÃÉÉÂÏÁ½¼¿°ÁÉǹ½ª±²§¥¢£xoudk`^fqa[W`GIHGIMUG?J=64355==48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<::79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼¹ÌÌÆÐÕÕØÚÛØÐÉÏÏÑÓÈ·»»¤¶~g
¢ª
}~s_[^]^`^`cdc_]\^_``_[Z\akrpmmhgijujcb^be]¨Æ¸¿Á¹¹¸¸½ÈÅÁÃÀÃÇÊÈÈÉÈÁÅÌÆÈÊÍÉÄÁÊÉÁÁËÏÄËÈ¿¹Á¼ÆȾÀÆÏËÄÀûÊÇÈ»ÉÆÅÊÁ¾ÂËÆÅľƾ½ÁÄÆÌÆƼ¿ÊÃÅÇÒÅÁÉÀÊÊÆÈÆÐÃÃÆîÄËÇÃÊ·¿¼º³©¬¤¥¬£¡¦£ |wsufj[anmZ\XRDLGCGDLDFS?54335@=3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¾¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÃ¾²°¶l^y|z
uxurp_Z[]``bcdded`[\^]^]`[YZ\anqmifgkinw\XV]aiªÁµ¸°°±¯¯Áºº»º¸ÀÁÁľ½¹½À¹ÄÊÅƽÆÀ·»ÃÈ¿ÁÉ»¶»»Åÿ¼ÂÎÃƾ¾µÁ¾Ä»½Ç¼Ãºµ½ÆÄÂ÷À¶¶¿¿¼ÍĽ¶ºÈ»¿¾ÌÄÂÆÃÆÉÇÉÆÐÆÂÌȲÇÉÃÎÌÀÅÿ¼²·°²§¨¨¹°¥°ª¬zwxkeh`hodV^YJFJFHKAEBFJA9:658853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µ«·´²¡¦¢·ÅÂÄÈÎÒÊÊÊÇÍÍÎÑÈÐÆÕÔÕ×ÍÊÏÅÉÅÇÁºÅ½¬®¦`cvx}{ttc\\]^``bcbbdeb]\[\^\^]Z[\]grokdcijkwrOQWbq´«®®¤§«©¤µ²µ³²³´»µ½±·°µ¯²»Â»Áļ¿º´²º¾À¸È¸´¼¶À½¸½ÇÁûµ¯³µ»¿´Å¸»µ¬¹½¾À½±»¶°·º³Æ½·¯¼¿µ·µÅ½¾ÃÆÀÄÆÆÇÌÅ¿ÆÆ»ÇË¿ÏÉÇÃÆÁ÷ý½¶¹¾Ç¿¬µ»µ·¶ytxggebkn^V^`FKHHJGBDAEF?=:566633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÅËÍÈÅÈÍÌÐËÍÈÉÈÊÉÊÄÐÍÒÏÍÅÇÁÅÁ¿º¸É·«°[gozx~
vw|sh]]]]_`_`da^cec_^\[^\]^Z[[]_kolfcfhhl{eI\u¨¨¨£§¤¨©°¬©«©³µ°²¨§¬³»º¶Ã¹º¹°ª´¹»³Â¹¯À±½¼»µ»Ç¹Ã·ª¨°²À¶¸½°±¨²³µ»¼«®¶§®¶®¼²±ª¸°®»®»¸»ÀÁ¾ºÃ¿ÆÃÅÀ¼ÆÁÇʸÅÇÅ¿ÇÃùÄÆ»ÆÉÌ˳¹Â½»³tvwki`bliYWW[ALLMJEAC?FA:::996854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÄÏÇÍÁÂÆ¿ÄÄÃÃÊÂÉÊ¿À¼Âº³µµÃ®ª°[i~{x}
y{wn^]\\]_`__dcbdcb`_]Z[ZZ]ZZZZ\cmmfdddfhmydm¢¥®¡¢¨¬£§¡«©««°£¦©µ¶±½¸¯·¯¨¸´³¼·³½°¸¹µ²¼Á²À¯¥©£«±³³¨½ª«¨«¬®µ´¦©®¡¥¯©³¦¨¨®¦¨·¬±³·º»»²¼¾¾¾Ä¿µÁÀÇÈ·¿¿Å·ÅÃÀ»¿Ä¾ÄÈÌÊ¿¿ÄÀÀ©stsji\aodWVXPHZSSKFFE>?@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃǹ¹ËÂ˾»É¶½Ã¾ºÊ·ÁÄÁ´¶¼¶±¯µ¼©«dmz}~xt~|swe_]\\^_`^_ccab`a_]]\ZXY[[XWY\_ejdbcaddhmyy¦ §¢¢¤¤¦¥£¥¬²°¶·§°¬¨ª´«³¹°¶¶®¶º³°ºº±¶¤ ¤ ¦±¨¬©¹ª¥§§¨§³ §§¤¦¬§¤¡¡±¬²µ³´°µ¼¶»ÁÀ²»¾ÃÁ±¹¹Â³À½Àµ¸¼½¾¼ÂÇÄÃÄ¿ÀÄ yqlbf`ko`UY_HNhOTHFKF<=@=:;;826536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;>97776788666;::;9:;<859<:>>@;ȵ¶½¸ºÁº½¶ ¦º¶«³³»³ÄÏÉËŸ·ÇÀÌ¿¸Ê·»Å¸³Å¸³¿À¬¶¼²¬¦¯´¡£ir
|xusomjiipi_`]\\\^__acb````^\[\\XYXXXVXZ]^cb`cccbeflysqjX[oE{ ¥¢¤¢§¢ª®¬±µ¤¨ª©¬¬¤´¸¬·°¬³µ¯³µ¯°ª¤¢²¥¦ª¸¢¦¦¨« ¥£°©¬¨ª«¬°³¹¯¸¹º°¶¼»º«³²¹³½´·²±¶µ¿µ½À½Ã»»½{sl_e^ddXTW^IW]KPGJJGA<??A;?<05636:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»¸ÁÁÁ´¤¤¤¦À²¯¶¬´·ÅÏÈÈÀÆ»»ÃÃϾ¹È¸¸¿·²Â´±»»¬¹º±¢©«§m~
xrmomkb^bff]]^]]]\]_`abccba_\[[ZZYXXWWWWXWZ]abccbbcdepjXA":qhi¦£¥¡¤ ®¯² ¤¢«§¡µ°±²¬©°³¨º³§¶¡¢£¡£¢ª¶«¢£¦¦¦£¡¬¨£¤¦«³³ªµ°²«²¹´¯ª¯²²³·³®©®²¸°º¶º½¿·³±zvf_f_[YVSZUK[QLJEHKIC=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ¸½¿¶¾¼¿²¥£¥±Ãµ¶½´¸ÂÌÈÆÀŶÁÀÇηÀý³¹¹²¿¶±¹»²µ¯£ª¡xxoqtqhediec\\[[]]\[^`a^__`^\[Z\ZYXVWVVXWXWUW`bcaab``dfrDH§¢§«§¯°ª££·©¡ ®¨µª§§®±¤¸°¤· £ª¦¡¹°£¡¤¢ ¡©ª¤¢£ªª±¨´¬ª§³°¥«®³±¯°¯¯§¨¨²®²´°¼´º¸®£zwe_aWYXSRTKM^LPLGHMLE=@>=B<:7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´ºÂ±¾·½§§¢ª»À½À¹®´¸ÁÌÇÅÂýŸÈ̲ÁÂÁ®¼»µ»¼µ¹¹°¯°ª¡©|wqilrtphhedfa\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWVUZbb``a__`bj_%7n¥¤¢¥¦¦ «¯¦¡£¶§¡¡¢©³¢¥¨¥°¦±®«µ¡©¡¢±±££ §§¢¢¤¥¥«¤¥°§¥£«¬¦©®¯¯«¨ªª³¦¦«¯´±®¼¶±¯¯{xseb\[]XNLQHRaMVPOJNOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847763321./2556;:8;7876<;:;;A8x»»±¶½°»±·¬¥¦¬¸»¼Áź²¹µÄÉÉÀÂÆÅǶÆijÁ¿Å«··½¶½º»µ²¬¨£t~vncafihfgifil`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWUTVVRTRT__]^_\]]`alW\ £ «¤££¢¤¢ª«¤¥±ª¡¡¥ª¨¢¬ª©®¢¢¢¢«©°¢¡£¥¡¢ ¢¤¥£«¥¢¤ª¤«¥®²©¦¥¦¦µ¦ª¨³µ´¹º¯ª¬sqp`[WVVRGQOHZ\ORJTKSLEGJC8;;=<9666:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:8698598989;9@9{µ´¬´»²°«±¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÉÌȵɼ±¾Ãɱ¸Áµ¼À¼´µª¬¦r{tiijlgjlmkjle]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSNPY][[\\\]\_bk} ¦§ª§«§©¥¢¤®¤¤¯© ®ª³¦¦££¡©©¡¡¡ ££¡£¡¢¨£¢¨« «°¤®¸¥£¤£¬ª¨«¯´·²½µ³«®
uti[YYSURFXLQ[XMUOPLQRIOIB=??A?=75799<<977:79:;<=>;7;;:=67:;8976989:6:=99577571141-+/434988::8::748=8?9~³§³·®¨¨¯®©¨¬·¶¬¼Ê»¶¿¬ÌÆŸÀÎÏdzĻ·»Âȱ¸¿·¼¾»³¶¦© ztvwnmhmmmpgghfd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNOQXYYY\[Z[]^dzzw©¨¥«©°£§¬ £¨§®§ª¥ ¨ª¥ ¡¤¡¢¥¥§©¨ °°¦±½§£¬´ª®§¯´°¹µÀ±®°«~rtcVTUNQJGVPRRLLXNKLOSGNKACFEC>A75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8´¬¦±·ª¥¢±«ª§©²°¤¶Æ´¹º³ÊŹºÁËÐʱ·¸¼½Àñ°±·®´´»³´££vkglnqnqjokdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVTRMNMRWXYXXWZ[[`iwpvm
¦©¦¥«¦¥¢
¤¢¢¥§¡ ¢¢¦¤§©§¡ ´²¨³¸¡£¶¬ª®¤²²¦µ»µ«¬±¢zsn^NQQMODNNNPKFNNJJNNQHMJAHLIHC>958889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12876:999984988A7w¶§¤¶°¤§¤ª¥ ©¦¤³ª¢²Ãµµ²³ÆÅ·ºÃÊÌƳº½´¸À¯®©°¦®»¯ |n__frpuqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQNMKKSWWVWWWVZ]alimg{zz£¡£¤¡s~{ £
~~tz££ ¡¤¤¢´¯¬°¦¸¦¥°¡±®±¼ª©¯©xtdVMRPPMCSNLPMBPQHINSNIJJEKMGKK=749888;;69;7:<9::;79?9>@79:<89764445874312485/0102)(,-02764789::66:87A7x·¡£´¨¦¥¨£¥¥¦¦¦²§¦´Á¸¯´°Éĸ¹ÀÎƾ³¬ºÁ¬Ä¨¢¦¦·£ ~xfWV_gfighnciigb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTQMMJGNSSSTTSUX[]idgdu|tmKUn_;Vo|ry{}xqp}¡ §®©©©³¢¥«¨´£©£tn`[NSRWLDTJPMLFNOIELQMKPJINPGJJ=7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· ¢¡¦¦ª ¦©§£ª°¨§´Á¹°µ°Ç¸³½Ï¿¹¯®µÂ§ªÄª¢±£~sv]PLQUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MNQMKHFHNQQLORTUXY`id^qylL?=}z
y`JQnx~m~wuvxpQ|~yvgw~
¤¢¨©¥¤°ª¡¤¤¦ª¢ª¡¦§wnf^\HQQSMIUMRILKOIHFJNLMUKQRPGJD=768:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.115221/,')+*,4833989:99::::?9w¶¢§¡®¡§¨¥§¨¯¬ª¶¼¶¸·³Á»¶§¹È¸¶¨¨µ¶ª²¼§©~xqoXMKMMNKMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDCINOhYNQSTUZm}jmvccXR
q|~zz
uxsouptz~«
z{hv{prmxx{{wsrxhu
||© ¡ ©¥§£ ¤sib]]JWPRHKXROJMLRJJJLPHLQMRUMFIB=78;99>=:;<98@?::>=7==79947785675251472/2.,./200/-+(().12721987:8775:<;7v®£¡´©¯ª¥«°±ª½´²»¸¶º´±·º²ª¬©¨²¯¢~ww|wpojYKHIHGEHHPTTTWWSTUUUVWXWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LNQQSV^s~vraqydw~tv}|p{v{ok~|tz|tfu|lohs|myq}qmvqhq~pD
wwz}{u}£¡¥xongc[XXUQJSUTOPNPVKNKOOJROIOPLFD=;79;::?=9<:99??;8;=7<9999266856633511224.,,-..-0-+*''*.1362/876966527995y¦ ¦°¬®«¨©±¯±«¼¸«»¾¸³¬§°§¬¥©¥¡yvq|mupjmjXKFGEA@CDHLLMQRPQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zYJNOQTX]eoog¥©À}qv`yvlywy{
nkxsxijq}Ingw~mjdly
krl|nr|imps
{~{wpttyyp|pjoooYVXTRRYORUTRXUMNHMKMOKCINGF@:99;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¤¬¯¢ª¨µ¯®¬´¿«¼Ã¿¦¢¤¡¡szuotlpmekkYNDFC@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORVZQX[^¥aeoub|mk}xu
skts|ijLy
f1vrk}}tfeu
filukp|hqq|n{t~}qqoumwyujyyxlkpheXR[XYY[NPUVYXNIHEJJHGB@GECG=998;9:9<:9;:::@<9:<98>787715233533645031.**+),,++)(+'),,226,,4775478iO8;5m¤¨±§º¯«²°Â±»ÃÇ
zqtzpsqopdpg_TFIC><;9:?@ADCEGJLOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQULBIQIb®²nwtizjoy
yr txst5p¨¡¡¢
vp{|t®hgbjnrmpuioXupvm{}nrnp{svnbu
ux~}|srqm`\]^\ZYa_RN[ZXWLHJFIG?CABH?CD=;:7=;:;;9:99;:?<88=:8;66651111253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥´©®°®Á²»ÁÅ|nul{uxxlwnwdj^IPG=?7448;:;=>@BEHLLLLNPQSTUVWXZXVUTSPLE<5*K[@-gI94/?©®_GLMNPL8DNRSDJs|yys{jt
z|~}u¡y~
aªzw~s{]dqtz|wmhjbyo
zoxu
zptzxkni]v}|
}q}vw{|xqtugh`[\^S\g^WQTX[UGJJDKG?F@DC>AA=;97<;;=<::99;;=>79>9985653244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¦ ª ±¨¯À²»Äºzvk}xs¡}}p~zhwkRXL@E211376688:<>AEFFGJKMOQRSTUWVVVTSPMF@:2= #c[5311i?GoIFILMOQLKT\XRKg
xwyozx{
~v ¥¬©H®°®©tm|~hghyn
qHlwryvhmk_v}
yzuv|xmow~uusm\^^\cdXgf\UPPWYPDLKFOICFCCA@CA=978:::;;:888::?>6;>7585773344236656778;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|}
¬ ¦¸¯³½³}tp~~}}~¤
x~sx_cWKB60./23123668:=>?BEGHJMNQSTUTTVUSQOGC?80,#[??94.]ps£UFIKMMPW`XoY[]g~| ¦»±§»Çè¡¥|qw
ihptrw{v|muuf ª¢zyyogkx~|ule^[[^j^bg`ZOLNXRQIPJDNGCJDCADDB<:87=<:<:88778:==8<=68656623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfwz¤¡¬¦ª®°¡xw|~lpj]B@4--//..02234778;=?BDHINQRTRSSTRPOHDB<87/9C><<63.lMPHJLLKNV_b~ffkr¢©¤£«©¶¢¨ÁÂǯxº|¡
¡
lpuwqm
q ¤´¨¢}kjj|uc_e`[hl^ll^WKHNRQMLLFIPCDNFBCEFC=:96=<:;:987767;:6=:785456344566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYoouqv~§ ©ge¤~y}
xx~gMR>/..,/.-/000212467;?CENORTPPQSQNPIED>;<:DF?><852<?R5HHHLLMNR^m{r{¤¢ §§ª§«©ªµ«¿«¶ÇÈ·ÈÐϾ pi«©
¦¢xz~¢{wª²|£¡¥µ¯§lss}~sja^b`bhd`hg\REJKPOIILFFMCHLFFCBGDA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppt`m}aw}{ªªBD}x|
w^bP460-1/,.0/./..0015>AAMQRSQRSURNSLEE@<>=FG@A@8662<9;FHGIJNOQYlv¢¦±»¶¢¬ª«¦§³ª¯µ±±º±³½²Ã«ºÉ˷ÿ¸¥¢°³¬ª£¥¦ £¦¢«¨¥
¤¡ «¡¤¨±£¦·º ¢¯£¢£¡«®«²´¡¤©yz~ibi]fc_ed^gg_[OCIHSNFHLFJGFFHAKFCFFA;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLhbWinXzv
ÚÈsV|z
qna@E64<2/110-,+-0.-4?CAMUPRSUUVUN[PGGD<>>FHCEA8;<5C;=FKIGHQOQW«¡¯§®¾ÅÁ¨±Äµ«²¿²·½µ¾´Á¶»º£¸Å¨µÈǵ½¹´¨£´°±§¯«¥v¤¡¬²´ª®¨®¶»²º¬°µ¢±¬±µ»¶´®´ §¨£§©¯¬±¸·¸¦µ¨¤x
x[ceWgcbdaag`[TJDDLUQHIJDIGEA@@KDBMG<967;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AFWQJL[YQbbWyup}u
{¿»£¼´yzxn]V@EN<6:45AB764//6CHBQ[OQUWU\WP_UIKJA?>GKFFD;>@7D7?BJJEFVTP^£¬¢°±¿²µ¾ÊǵºÄ½²³À¶·Á´¾°·t±³¦ºÄ¤°Æ¹°²±´¨¤µ¶ª± ¢¢¥°®¦«§¤ ¬´»¢¨²ºµ¼¿Ì¿ÅŽ½³Á·º·¾¶º·¹¬¬±¥°©½°¼ºÁÁ«¹§©~~mXdbYlfkfX\cYVSIGFLQGCHIAHD>?BBL@@MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALQVSYUZvjo~nzsxb¹¡£{z||}wzueP\dGEL;Qca[^SF?;HPEZcQRXXZgYT`_LSPEA?IJHEEA@D<E6B>HGJLSYT]¶³¹¶Ç¼¸»É̺»À»·µ»º¶½³¹±Å`u²¤±ª½©¥¨«ª¤¢²µ «¨ ®¥§¦¥££§±´¨²³½¶Á¾ÓÉÉÓÆÃÅÌÂÊÃÀ½¼¾»¼·´¯¸·¶Ã¹Å½Âǯ¸©¡«¤§µtacc_Yc`jgSX`VRUIEENK@>GD=KA=B@=F>;H@796379>489:57045/26389374426?8@>GKRTSQPOQQPJA9/,,,*+((,-,/P>(.48}<2Kq9>CKEAIMPRKQ]glkp
slrrsÕÀµ }~x{{y~t}zkfpuY^\Pedb`ed][XW\MdmURmm_n_XgdTYUJDBKKIFHHHHBI:D?HKSTU\Z[·¾·¼µÄ¾¹¸Éʺ¶¹µ·¹²·´³®µ¶du§p^¢¬ ¢¤ª¥¨¦ ¤¬¥ª°¸°½¹ÔÑÏ×ÐÊÌÒÌÏÎÊÆ¿¾ÂʽÁ¼ÁÀÄÄÅʾÇͲ£º°´®«¸»|m_b^Z_cZdcQ[`SPKCAEFE<@E>AHB@C=:E>=J?47535;=468977022/24169775555D3ELM>51/006:477@IOI;-&**(-./,@M+/54mI0Ht?>BD@CDFKODQ[Yh_onlotu´¬¡¡
~|s{
{ts{ylmu{hreiligjji`fiilZms¤¼g[og]ZZTHKNPJKPKSQILAJFJO_^afiaµÅ°¸²º»³°ÄƵ¯¸°°»«²±¦ª·«µ§§N¦¥¡§¬¯¨°¨´´ÔÔÔÖÓÌÐÓÕÍÒÏÌÄÂÉоÉÉÊÉÑÇÌÍÂÏÑ·¯Ã¼Ã¹¤µ¹Á¢qe^__ZbYZgZQ]XOPBBHEBH;AC>AG??A7;D>@H=46655;:687654/10146278875367C5B8?-0-1349=97,.,1;FK=),(.0007K?-46TW0DwC;B>EBACJM?UYReVsgqoyy¡ª¦}|p{r}qxulqx~qzmxsmipmcimpxiw|~Ë¿Áߧmcxnc[b`JPRUNY^O]\NPNTPTT\nmvq¬·«³¦¯µ©«»¿°ª´¥¤¸¦«® «´£°¦«¬¥¨¢¬ÏÒÕÒÎÌÓÔÔÏÔÑÎÇÃÔÑÇÍÒÓÓ×ÌÑÑÄÒÖÅÁÎÇǨ½·Î|qh`e_XbS_[PQTQOH>@FABE<@A>ED>??:==<<JA45465<888664412/03526768533;=<E=@11+/249>5901022-2DN3)/3.32=N238C}_2AtD:==I>@CFH<UQMNZu
wlwp}~¡¡
y
~{r~zu
ovrks}{w{sxrksrioqzyqz¾Ë~²vrvhak]CZZ[VecXdjSX\]`c]cwz}©¤¤¡ §¥ª¯¸ª¥²¡¡¡£¡§±¦j¢~¨°¢¡¡¥¤©ÉÍÏÈÂÌÑÔÒÔÒÎÓÍÆÖÒÌÔØÖÖØÔ×ÕÉÔÚÍÉ××ÑʬÃÂËuqebaZVZU\QKGJJJ@;:;DAD<BC>GB>BB;<9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/--;R017/532FD28>nb5=tM99@I<AD?A;OLFJXpu}hsxr
x~ws{}wznwpmuux}t
|ylvtn}vtx{µ;AÅ¥~|ieWICfcecgjcmw[^fhknhn ££¥±££±¡¥ ¨ £±
y©£~«³¨§¾Ãƹ¶ÆÎÒÑÒÐÌÒËÈÔÎÐÕÚ××ØÔÙØÍØÛÎÉÙÚÑÕ¾Ê˵zypg_\TWR]WFGJIEE=:7:@@B:FD?DCADB;?;;7DC75655;0679443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BS39254/7K75<`bA<svV87AH:?C><9QECJTknnpbpqt|~|x
zxqz{
uy
yp|oozq{qnzuw}|t~|¯sX©Â¶pmb=^hrpqpnxvehoruxqz © ¬¡¥«
}
~lz|®ª§¯¶½©¾ÇÌÉÉÌËÐÉÃÒÊÔ×Ù×Ø×ÕÛ×ÓÙÛÕÐÚÚÑÖÈÔË{}kj]\QTU`ICFIH>A>=7:=?;=G=?AAADA>>:87DB755479.566435542323647553458EBDCEB56<FNSM[nfcnskaV>,4LG865434BF4=W_hLux^8;?F<<B<99D>CGRj^mdbfkvqz~~{|~
wyn{{ty vusu}soou|
zv{·Å¤ÁɸwpeNfczw¢xyv{{vm¥¢«
z}¡¼¡©¦¦®¨¶¿ÀÁ¹ÇÊÎÎÅÍÉÑÖÕÕÙÕ×ÛÔÖÙÚÛ×ÛÚÙØÎÛÆ}{ikgaUYVWNLENC;==<8:;=9=@6=?@<?=<9867CA6455=80665547745613854564557HH=DJE7925;H>;::7IP]ZRUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Xea][htzylwvz{~~|z}
z{u}tm|}~t{~x~xnt~{~z©Ã¡½¤}}r~s¦
{hGq ¤
~¥
¥¸¢¨¡¤¯·ºµ¬ÀÆÊÐÈÇÌÏÓÓÒØÓÕ×À×ØÙÛØÚÚÙÙ×Û¹{{znkhYb]TPOIDLB<<>99::99;=6?>><=9:;;37D?7378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8689?=CQSRX^UXfmmmiqry{z|{z|{}t
yszsm~~w
¢n¨
z |}£¢ ¤¯
Wr«\¢¢¢ ¤
³¡¡¨²¸¦½ÂÇÍÈÆÏÍÐÌÏ×ÑÑÕ®ÖÕØÚØÚÚ×ÕÙÙ rwjh_^YUYYCAIC?>>:49:;7:;:3;;?=>7;9:0:G=:37=@50677255?65;55858:57735HR7GOK994=EJB>1FCLB98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcbzma~omwxyz|
{{v
sp
zuwvt~¦¤¥¢¨s±§
¢£©°n·
ÄȲ¡¥²d¤ÍÈ
ª££¤¨¡£³´¦£¼Á¾ÇÅÅÉÈÉÂËÓÍÍÔ©ÒÑÖÖÖØÚÔÒÚÎukf``_PKV\BBGC;A=837;<:8=649:<:82?9929I:>67BC32:96264>=4;>6949;57944JQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBeGu||m~xz~z~vv{ln~y|wx|~£´¨¤ª³¡§ ¥¤¯¢¸³¡ ¤¯¢¤§©°¤ À£É¸«¢¥²
¨¢
t²¤¡} ¡¡±£¤·¾³ÅÇĽÃÿÆÎÊÉÒ§ÎÌÓÑÐÖØÒÏؼu|x_bWbXRIKOEBCD5>;76:?;<7=42669774=5;5<L<>;<BA75<;4277?@6??784987;<55OMDPRL8@=EAGA5:IENED:6A@BS>9DO323575=v\<R\tiZM]S<=89567=:JFDGM\\YJha;Hzzm
y|x
}px|}|osz}{x¨¼©²½°¥®³³©£¢°µ¢¸¥¤©·¦¤£©ª¤¯±ª »»Ê¡i¶·ª°¢«½¤^ª²|}´« ¢¡ ¦®¨¢¤³¸«ÂÈĶº½¼ÅÈÈÂСÆÉÍÍÄ×ÖÐÊÓ£s}k_[UaSQGD><CAB8?874>F<<6<35355454B39:BM:A;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAE@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPfHa`bpJ@r|u~m}||~pww{«ÂÀ°½Æ¼³´Á¼´¬«³¶¨²½«»£¨¹¸«¦¦¢¢¤£ª¯²±ª¤¢¦¥£¹¯¨¿¼¬²¹¥£§}½°z§°« ¤¬¡ §§¤¢¤°³¦ÀÆ𰻶ÅÅÿͧÇÃÇüÕÐÌÄÊvvd_\b]OLCL@EG>A?B<:4>A==5=6>333241A17@BN>G@CNCA=C=;86CB5BIB:878;5B>79VKDWOF8=4K@C>4EJHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\hF_ig[]\{un~{~q~zz¨´ÇÉÀÂÌÂùǼº¯«¹»²¶º²À¯¥À£«°¼¼ª®«£¢§¬¯µ±© ª¢°´§£ººµÁ»«¨²¤¤¨©ÄĤz¡ ¥ ®ª¡ ² ¡¤ §¤¦§¤¯¥¿Ã®¨·µÉþ¶Î²Ä¾Ã»³ÑÉÇÁµw{o^[^lTNIDMKKJ@A=BD<5AD;:3=8B332263A05IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBg\Me\fTcjyr{wy¡¨»¾ÉÈÊÂÒÉÊÂͽÁ³¼¿§º¿½¼Ä¸Á©¬³¼½ª°ª¤¥£¬®´®¶µ ®¦¢£´½©¨¼Á£¶¶¯«°¬ª¬ª§¥¤uy
£¢©¥|£ ¢µ¦ ¥¤£¥¦¥£¨¨¢²¬¨»Àį¥³·ÌÀº®Ã³»½Á¹Â¿p{c[Y^]MMNKGDCHBAADK:4DH:;4<7F.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQF7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>lI_XaZdeXx
~¡®§£Ã¾ÉÄÈÆÓÍÎÍ˼·°º½´½Ë»ÃÁ¶·¼´À¹¼®¯¨¡©¨¶®®©²·¬¢¨¢«··ª¥¯¾Ä±½¹³§ª´³¥¨ ±Å§}}ª¥ ¢¡Z¤f£³¥¢¬¬§§¡£¨¦µ«©º»Ã´¦´µËÁ¸ª¶¬³»¸®¨¸º¼·op\ZVWPGLTNK?AHDDHFF85FM;>7>AK.32025B55PWN<LFKRLOGGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|hV<>@BFBsFiIRfdMF¦¡¨¥¢¯¾®¡Ç¾ÆÅÈÇÎÎÏÒʾ»¶±»»¼¿ÏµÄ½·¹·³²¶³¸³¬§««¹«©¨¯¯£®¥¨¤¥µÁ°«´¾Â¹À¹³§¸´·²¯¤°¯¥ sÁ}±¥£¨¡ `J¥T°¯¥¯¯¦¡¦¦¡´©ª³¼¼»«°²ÇÀ¸¦¬«±±£¡²²´¥sqg^\PSMFQQPQ;HKHFGAC=9KT?A:=EM/7534:B34NWN<JKOUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@CAF3>58JKCA=C;5EA:A?>H@5*B52,>c]g:35tde@R7}hX<:BC@=REWStbVFH«¡¨®§
£¤µÉ´©Ç¼ÃÄÉËÉÈÌÎƾº³¯º¸ÀÁ͵ȺÁ¹µº²¯¯³´§¤ª´µ«ª§¬¤®¦¥©¬ºÀ¨«··¾ÁÀ¾·²²Ã°·½¬£®µº¦¥u¾®¡ ©§ ª¡§mu¢¢²¢«©ªª¯¦¥¡¥ª¢°§©ªº·¾³²®¾¹¶ £§¨¥¦©©fhc`SMMGIOJUL=MEMIJ@CD<QU<AABDO18=77?B75UXN?HNQXRPQTJQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CC:9C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW<:=..SaMVH~e^HF¬¡»®ªª¡£¬£¤¶Ç½´Â»ÃÂÈÉÅÂÎȽ¹²¯¹µÀÃʶƱÁ¼µ»¬©¬°££ª´»¦ª§¬ª¨¯¨¤««¾¼¨¼´·¾Æ¼¶µ¸À°½¿³©µ·¬¿¥¢¡¼ ·©¥£¡§¤³¡¥§©¤¢£ µ°¥¦±««¥¤ª ©¤¡¡´µº¶¨µ²²¢¦«¡xc_a_LIFHNQINEFGBQJH@DGAVSDH<AGQ1;B7:BF79]YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:h]FDCpbGE¨¤Ã¬¤¨ª¨¦¬¢«·Å¼¿·ÁÂÀÈÄ¿ÍÆ»¾¹²°¹´¾Ãȵ¿°¼¶º·§¤««¡¡«ªÄ¢¥¨¬¦«¯¬¢ª¨¾¸¦¾°··Æ·´¸¸¾±¾À¶´²µ¯¾££¡¡¤¢£¾¤©©¬¡¦½¢£¢©« ¤ ¶¬¦²¦°¨ «¡¡¥¤«±µ±ª¥ª¬ ¡©ie\b^PJHKOLHEDI@=OH@;FIH[ROK=HNU4BF8>HG5Cb[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0--0Mv\4KZ5,MnW<-=)#zbQ5CKQ9oRF<KxfcXN££Å« «¢¤¦ª«¶±£©³¶Å½À¶À¼É¿Êȶ¸µ´±´´·ÂÆ·¾±¸´º¶ §¬ª«¥¤Á¥¡ª ¤©°¢§¨½µ¥±»·¶µÃ²²·º¾²ÃÀ¸¸´´µ£¤ ¬¡¨¨ª¢Â¬¨¬¦ ½¡¤««¬¦¡X¦¡ ¹ª§¶£³¢¡± ¢£¥®³«©¢¢¥¤¤cg\eaMJKKOFEAGK>=IA99JJN]QQI=LV\8FI=DMI8Hc\KCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+waS6SZkWsHE6=ue\LP 礢³ ²§ª££©¬»±©¬µ±ÈÃÁóÂþÇĽÄʽ°±¶®±µ°Àŵº±°º¶©°©©¦¡§Â±ª¢®±ª¤¨½·¦¶»½¯·Ã³³Â¿²Æ³º·«´¶ª¢¦¢«¡§«¯¯¯»²¥©©¢¤¸ ¡£®¯«¤¥¡£¨µ§§´£¯ °¡¢ ¦¬°¥§¢
dh]hfKJLKSAC@IG;;F>89NMU_RSJ>O^]=HPBMLI8Nd]LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<w]^?[U_gr@8<HweA4¤ §£©± £´©±«¦¢¤²¬©»²°µ´Æ¿ÄĶ¿Ä¾ÊŶÀɵ¬µ©°¹¬ÀÄ´·¯¶º¥«²¬ª¡§»´¨°®µ²§ª»³§¹³¸²¸Àª·²Ã½´Å§¾®·µ©§¬¡¥¤¡¡¤®·±´¶©¤£ ·£¤¥®±±¥©¥¡¨ ¢¯³£¦¯¥«§ ©©ª¢§¡zej]lkNQNNT=CANC;:I?77QN]_RVQAW`\BJSHVKH:Td]NFON[W[RPQX]GAB[PBG>NC9HGHNP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1\cZ33906p[bH05JqiVCWFyfC;¤¤¡¥¿¦¨®® ©µª·¯«£ª´¶±°¸·°·¸·Ä½Ãǽ¼ÃÂÇÁºÁÆÁºª¶¥»Á÷·ª²¼£±²¦¨ª¹ª¡§°« ¯´³ªª·µ¬»¬³²¹·¬¸°Áº½¿¦Ãª°¶®©««¦ª¡¡ °¯³«°¹©¦ ·©¥¢¢¯±³«±§« ¥¡¤´°¦¡©£¡©©§ £~limbnnXQQZTACDU@;;H@7:XPd^PWWDY^^NLSN_LJ>Zd^NIQN[UYPKSWZI?DXPDF>N?=IGGQPB=CFBM?:2D?77547?=95E4+75/251.-.,1>*'+=\p=>1.1e[d@1747gYaF(@8l}h\V:{cC=¨¡©¼ ª¯ª£±·©¥´²«¡µ½¯³¸¼»½·¶À¿ÉĹÄÃÀÀ¹Å½Á¸¯¶¨«·²¼¿¿´ª®²¸¬¨®¨©§»¥³«¢±°³¬ª¶³µ¼°±µ¬°µ²ÀºÅ¶«¼¯±·¬ª£±¥¤¨£²ª³©ª³§ ¦¤´®§¡¬¬±§³«±©£¨¤¡¨¶©¡ §¦£
{gmrhqs`GYfVDCMXDZ9HB5>]Qh\NZ]G[^]OMSXdJKC\c`PLMNXWXPJVVWL=EUJEDAM?AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,+%2+*5K1.'__aV151=`V_8)C3YU\gK5zfL@¥¤«¶£«¨¥®µ©®³¸¦§°·Æ¶°·¿Á¶´ºÅ¾ÌŹÃÁºÀºÄ¸Áº³µ¬ªº¸»º¾µ«¯±·¨««¬®««¾«¯±£ª±³®®¶±¸¶ª®±§µ°³º¼É²ªµµ±´°®¦ ³ ¨¬ ¤±¢ ¥¯¢¤¢¥§²©¡¦±¬ªµ¤®°´¯£§¬¸¢¡®¡¥££¡{
{lnyov}bF`jZIHZ[={JGE6AbUi[M\aJ\\ZRSSbaLKE`a`PMIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`Va.5(C^Q\.+A/JGP[G3cYTLE°¨±©¬¤£®µ¨·³·£¬´·Éº´»»À¾´³·ÃÀÌǻĽ·¿ÀÀ¸À½²½®¨º¹¸·Â·¬®²º§¯¬¨¤³©¯»¤¬²²¦§£²´±²±µ°·²©®«²¦¸¯µ³ÄŶ©µµ«°®©§¢¶¦° £°§©©¢¥¥¤·§¢°³«§±§¯µ¬¤ ¬¨ª¹£¨¤
¨¥¡w|nqxv|\Lel\JOd]?b{GI8GgWf[L^bLYYWUXUi]OPHa^_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANHg27'FaLV%-B.=ELQ<3rkLED¤¤¬ª¦£°²²ª·°µ«µ¹É¸®Á¼Ã·³±µÂÃÏÄÀ¾µ¾ÁÀ»¿¼´Ä¨ª¹±¶·À¼¯¬´´¡§±®¥¦±¥²µ¬ª²±«¨¨µº¬µ²µ«³¬ª«¨¬©¹²°Ç¿¸¥¹°©¦§°¥¤£®£¨¯¢¢¢£¬£ ¡©¦¥¸¤«´´¤ª«¨¬®¶®¢£¨« ¤µ£¡¢§ x~}}}rts~~\Scn^NZg]FD[G:NmXbZMabNVVVWUYh^QSMcZ[TKGOTSNGIVS\N;P^JBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Dd;6*HdHJ+:I?3CIS,>l@HI¨©¡©¯¤§£³´°´´°° «½Ìº®Á¼Ç±´³ÁÃÑÄÆ¿Á²¾Ã¼¿¸½Å¨·¬´¸¼À±¬²®¡£§®ª¨¥±£ª°ª®«±®®¬«³»§·°²©²©ª¦¥£º«°Â¹´¬¹©©¨©§±¥©¤¢®ª¨¡£¬¥«¡§¨¡¬¦£¬¶°± ©¢ª°«§§©£ ¨ ¡¥}w
utrwl_Y`ncQsq\K;|F?WuX`YOc\MUVUWQ\b_SOOhYWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=397;*35>10485(5/*,.30;),,'%234$,2-860)(1<^K0.JgDF8<B05EKX1@]@NF¬§ ©±¨¨°µ¬¸µ©¤«ª½É¼±¾¸Ã¯°¬³ÃÄÎÎÿÀ´ÀÄĺÁµÉĬ¯·®³ºÀ¾´®®¬¦¨ª±©¦©²¦´ª¯±®²´»¥¸³¬¬§« £°·¬ª¹¶¤µµ¤ª§¬¬ª ¨¦§±±¤¦¥¡¡«ª¡ ¥££ª£¬¢¦±¶¬¬¢¥£©«©¡¥¤¤
¥£|{u~uw£xj^`nfWfdN@gLEbzWbXReUMVVUTO\]aVLOjWVVIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72;::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06XZ.0JgAA<<C+:JO^4DBIID®¤¡©¯©¨µªµ°ª¤«ª©¼ÀÀ¹¹´¼µ¦²¯ÃÉËÑ¿Á»¹ÀÀºÁºÂÄ®±µ²´¼Á¾³±¯¬¬§·ª¥°«¸®¨°¯®±«µª¶µ§µ·¬¬¤©ª¤³³©¨¤³´µ¡ª¨«¨«§««¨¹¶©ªª©¡©ª¡ ££¦¢ª¦´®§¥©¢¤¤¦§ª¢¤£ ~
£t~xuzx~pqfgqx\atjO]VHmyUdVRbOLUUUQOX[bVIQjTVTGPYUI>IHOQPxMNV=<KD?@A<@CUC9AK=5;E23;97*4:=+-341*8**+*,)*(/*&)%3;,$2)2021%/2Rc02@f=NX?C,?LT_/Ik7RF;¯ ¥©¬ª£®²´¯ª¤¯©¨»¿¼Á²°¹¢¶¯ÈÇÈÑÀ¿½º¼Ã¾»ÄÁÀ¿¯²³³¶½¼Á²²´«´©¥¶©¥³²¸¯¢µ±¯±¹«¹®ª®·«ªª« £¡µ©¡®²¡´ª¨§«£ª¡¡¬¨½®«®¡§¨¬°¡¢ ¨§§©°©¢¬¢¡¡¢£§©¦|
¤
xt}txz{tt{j¤vi^elug|RVp^KxsTdSQ_MMSZfNMWYeYGSjRQ>BNQaQ:IHLSIqQLS;<I?;<=;@@W<<>H73CB15:93-5::)-31--6)(+-,52#2)',%.;.&1.0-14%,0Mh:38_=ad?F1CP[[+HP;YC3° ¤¥ª¢¥£¬¦´³±¨¤°§ª¸¿Á½±©ºª§°ÉÆÈÐþÀ½¹¿À½É¼Â¸±°µ²º¼¹À³µ¼¹¬£µ¦§¬±¶¸²¦§¹µ´¼¯¼¥µ«©¯¤¤¬ª¨ª²¤³¨ª§ª¤©¢©§©½«³°®©¤ ¯³¢¥¥¤¥¨ª¥©¡ ¤©ª
}~
¢rzy~|hv|{uqq~jz
d_hcr
{mgy]^VBW{mTaPRYKLNpt]IZ[hYFVgOC>KNDCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KI1%90%,,09/,,+6'17#-/GjI14X=fbAJ7GS`U*=<F\@*°©¤¢¡«¤¶²±¤©°¦¹Â½·°¤¹¬©¨°ÂÈÉÌ·½¿µ¸ÁºÈ¶Ãµ´³µ²½¹º½¶®¹¶¿¢³¦ª«®´·´©¹»¨±¾²º ®´¶©«±£¥¨©£¤°¦¯¡ª©§¢ª£¨ ¼§®±®¡ª¢¤®¬¦¡¢£ª¢££¡¦¬{}£}zl}vyxbzzrpqsxjukgcgansmbjo_pA]ykV^NQQKIMSYVM\^lWEXaO^PHMDF;7HEKO<rhJK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*L>*49&'.34.0+/4&,:$40AhZ13S=e_DL6KVdN)=3R]>#«§¢¡¨¤·¯¢¯¯¨¬¸Ãº´® ¹¯«§³ºÇÊÇ¿¸Â½¯´¿·Ä¶Ã²°º±²À¶»½·ªº¸¾ª¤µ§¨ª¯¸°¨¸¼£¾´´¡·µ¦¦¨°³ ¥¥§¡¤¬§¨ ª¯§ ¦¢¨°¸£±¯¡«¡¬¤§¦¨¢©¦¨¡ª}||¡z
|
|tp|qst`xxjoqqpksdzlhedaf`[rjrMNiXZMQLKHPRPGM[_oTEYZRgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZgH*?0][5(¥¬¡¤¡·«°£´³©©ºÅ·³®¡¸«¯µÅÇÀ·¿Â¹°µ½·¿»¾°¬¾°³¿²¼Â¸ª»º¸§¨µ¨§«¯«²¯¤»¶¤«ºµ¯±¸¯©¥§¯²¡¤ ¤£ ¯¦¡¢¨¯¡ ¢£¤¢¶°¡¦±«¬£®ª¥¨£¥ª¥¢©¢z~yz
~z{prvnos_xwellljj
ofrikfh^ds`[kviZJ^\XOOKHHRUG39]^lPEYUYeMIIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<"8R=*113>D5,-'42*;+139cm74GAf[HTDU]hD.<2dW,2¡¡ª£¡¢¡·ª »·¥¬½Å´±¯£µ¯¬¬®´Ãü³¿º·±³¹¸º¸º¯®À³³¸¯¿À·½ºµ¦¢²©§©±ª± ¿µ¤§´µ¨²¼©¨¥©°¬¢§¤¥ ²¤£¨©¢¤ ¤¸©¤§®¦¥¡¨ ©¢¡¡¡ª ¤¨¤y{}z
{w~|ltrllsawuhhjggphhicfjj`kcjh[f{c`StT\[RLJFIOS@!*h^iLDWU^`KIHEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,?0-N?.+-7,1195,&.5-80576`tA3CDg[KWGU`hB379gP'2¢¤¤¦£´§ªº¶§¬ÄÁ¸°¬£¶®§®¶À¿¼²Â¶°®²¶µ¸¶¶ª½³®²±¼¿·¯¼»±¥¶ª¥¥³§©À«§¥¯³ª¬µ»¨ª«±¥ª¦¤¥¬¢¤©¡¢§µ¦°ª®¡¡¡ ¦¡ ¥¬¡©x
v}
{s~~fyokjkfuskcgddvbefffjjckr[_Y^mdaNiXZ`VJGHKMRX>9_lhHCUT][IIGEA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=++,0B*JK./*+3722(57$+7.72685]yN2>HiZLYJVbf@:3BhH%5£ ¡ ¤³±¢²½¶¡±Æ¼º±±£·¬ª©¸¼»ºÀ²®®®¶®²¸³©«¹±¯®³¶º¶¯¸½¬¦µ©¯£©®¡¿ °£®±¯·®µ¯®¢§©¥§¥¤¢¨¬¯¦º¨®¢¡¤¤¨ª§©¦{s
|
ofymhkifqrk\hcctbfgjnlgkjhn]llsp`TcicfYIFLMOXQQUaeUAWSYTFHFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24;6#3*)6.55465Z|]19Kj[M[KXdd@A1JfC&4¡°¡©±¯¹¿µ ´Â»½º±¦·¯§¤··¶·»®¬ª«¶©³·®¦²µ²®©°¶¶°³¶º¦©µ¨¨ ¨¬§½¬¤®¯¶µ¬±°©¢£«¨§¤©¢¤¤ª«ª¼§¤ ¡k¢p£u©§¡ymi~vql}
p^cag
ktw~gguheW\hsmNPjcgs
h_efnmj^_aeNKD9GTh^JGQPTULHR`oteF[QUPFHEC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=A@@=28@E=1,+08=G701.*.*/568,#1'214:175Xl16Ok[N\K[fb>G1Qd=*.¤° ªª£½Å¯©·Â·½½¦·°¥ª¢¶³±²±¹¬©¦¬´¥¯´¢©·¶¶¨§¬¶²®´³¡©³ª £¥¦«¹¥¥¯³·®¥©®«¬¥¡¡§¦ ¥¥§¦¨©¤¶°¤£¢£¡ ¥¥ªsx
¡vif}sx o~|¡ |tulmieczlraS
mbliqXiqpX^i[ll[rnzr
gZ_GN?G_MERVVQQSWTg]MVHRROFGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82).1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Wa7/(§«©©§ª¿Ã¯±º¼¶À¿ª¥·¯©¬¤²´®®³¶ª¨¥°¥´²µ¶µ¦§¨²°¬²§ª ±§¢¢ ¡¬³£¥¥¶½¦§«ª¬¨¦¡ ¦£¥£¤¤©¢£¥¦¡·¤¤ £¯©¡
±£¬yÔ¨ÁÇyx±¥·dÀ¿yy|Êr¼Åzrµ¦»{m±«°yhlX±®nei½¼ngzorØ~Skc¶²rs¡ªWOWbOVNFU[XQPR\W[PA\DQNEGI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>:B<?A8:J>52*22BE/.32.+/(-/186- /416A1=:Ww21Tk\O[M^g\>L1[]41!§§ª¥¬²¨°Â¾²µ¿µ¶¾Á«§³¬¬©¦®³©®¶³§§¦´¥§·³²¶«¥¤§±¬°¦ª¦£°¢¡«¢´º£ª©¢®¥¡¢§§ §§¦¡¦¢¡±££
¯kjª~fdp¦q®¡¤~x»}k¡v±_j´[¥e`f{fjxk©e¾rg¦u±j|±xtcnm§n[¡EhfEu`~g|¤§Z_«hxyj§7J¯\XSld[KNX_\WV;NOWW/ITSJCFF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:5/'$203B/=;Uv2-Vj\OYL_gY:M5_Y30¢§¥£¤ª±·¬µ½¿°¶Ä²·ºÁ¦©°ª®¨¨¯®¢°º¯£¤²£¨¸§³³°£¥ ©¬¯«¯¦§£¡¯¢«¥¡´³¢«£ ¢¨£¡¦¤¢ ª¦¦ ¡
µµx
©µv³·~©~k¦{w«gk±\«ztrx °vwqlll|N¤XHbb~ch¦`yruS^P©mcq~b.Q¡o[Skh`LK[dX\ZB>±yWXA#MhFCEA@A19>88:84;:9<9:A:E::;6:CB8=?KNG:5:AFB@AD<FD;0201;F,0.840,.(/3,>831/2-D1<<S}n3+Xj\OXM_gX7J9aU50 ³¦¦¡¯©§³¬©»¶Â°»Á¸·¿©¬¦±© ®»ª §´¬£«´¤¦²³§£¢§ª±§°§¥®« ¤¨µ¯¢©©¨ª ¥¨¢£¥£¢©¦¢ Õ¹p°Á~Å|Ö»|¥¤{¤¥z¬yV¯z~j¹Z¹v}¦|zªxz±nt¼
oP¯§ÅQ zc`©bsrm`Sµ´È|c¤3Bv]PjicP@XgZdaJHMnN\QOYfYCD?E?0=<59;74<<8=:<C:F::?6:@C;6@OLH<:;DHCBCD<EF81211DC./0483+-).323971#%5*>3==Qwj6*Yi[K]O_fT7G:aP71%¢²¨¨¦´ª¥´©¤¼·Á°¹¿±µ´º²´§±¯¢°²¦µ§§¹¢¯°³´°¡¤¦©°¨´¨£ª ¨¨°©£¢¨ ¥¡¡¡¡¡¡¢§ ¦ §¡²nhµq«n¦r´sr¶{¤¢¡¥~°vÒÒv\®{
¤oª¦k|}{°rx³etofQÈZÂ\yb_`vsb^YÊo¿uMKµSUÆdTQjceXAOk`lhPVGI9=URZWXIC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>HI91746A>/.24252-).26,742&60;5:=Pqh9'Wi\BOT_eP5G=aL620¢¥°¬£«¼¦´¦§¶»¼²º¾¶¶´¹¸²¥´³ ±±¢«¯¤¦¹¤±°´¸ª ¥¡©¤±§¬©£§¡¦¥«°¦¢ ¥ ¤¦¥¦¡£ ¡¥¢
¬{w¨v£©o§¡¢®
³\r³R®}¤q×}x
~
v¯w´aemZ°XKuyf`^vwhl]¯wxl5yÈ®²_BTo^g`EPl`pmVVM.fdiSYP;AD@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK96<46:>/04333.2..18*.32%!03767=Pke>&Vg\@>V_cN6GC`H:99 ¹°´Â¨³¨©²º·³·¾¹·±´º´¤·²³¬¨«§µ«¨¯±ª´¤© §¡µ¦¦©¢¤ ¡¤¦¯¦ © ¢¡¨¤ ¥¨¤¡ ¡¢ ¦©}}¥x¡ªp§¡£ª|xo±Z¨ ytØvs¨¤|{²^d ~m\«[Zhgªdr{ks^«Z koeOJC¡\[Lt]bgN[a_rs_KV7JXGE=GFAM35A8.;>05A78@<6=<F?:<6?=B7.HVJEAH6KIN@IK@EN::@5.;>102144+*05/7,&21($$6671<PeeA&Uf[?2U_bL7FI_C2?8¢À«´Â®«©¥´°·°µ¾¹¹±°µº¨º´¯¤¤§§©°©¯©µ«ª®¡ ¦¤£¹¢£« ¡¨°°§¨¦¤¨ª§©§ ¢¤¡¢¡ ¡«®mr´s©u§s´xs³¤£¤w¸o{¢jk¶Z¡
ei¡¢§mr´t²j
ju³af¢ok\_M¡|Rs£ly~or]¯V<wfTon.\§OcSkebmZc]ap{cTZR>>mo3CB@?M:!7@6.;@37C58??3;<CDBJFMIF62JTKEBI6IJP?HNCFP=<E50;;010/75,+,426/#00,,289/9N`eD'UdY>/U^aL5FM^81C8¦¼¡²À®«¬§·©·¯µ¿´»¯®·¶ªÀµ¨© ¥£¡ª©§µ¢²§®© §¤«¸¢¬£¢ ª¶°¨¬ª¥¥¬¢ª²£¦«±¡£¢¡©«Ô»s°ÃÃ~Õ¸x§z¤¶u}wv²`ºyÀ|u¸cµ©|¬©q{t¼§ ia¦¯¡~tª}¾os¼t²uxnrn¤t½^w}Zay¼kZV\jy^jaegcmxoZ\YCA@s@CF+5G"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7A9§¢½¡²Ã°ª«¬±§·¯¶Ä°¸°¹®À°«£¡£¡©£ª²¤´¥¬¥ª¦¬¸¢¤¢¯¹²¬¤¨§¤¤ ¨«¨£³£¥§¢¢£¯ ©¶·xµwmknsoy
tÁ»½{±¨qs¹|||¤»¹½uz´£twvt°ufjµtrqw¶^z}hynzc¬pu
X[§jEeZTf`c^cQggpluCNPMD:ZM?J3;0 8>;.3=A99?=;<C6BSYZZ[[Z[^`b`]SGGH4DITAKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7LT_G'SbW8*O^]=+:VU'>;<§ ¢¿¥´Ã´¬«¨¬«©º®°Å³²µ¦³¸«©¡¡¥ «¤¬©¥µ§§ £«¤½¦¡©¡¡§¡±µ·¤¤¢¦¥ª©¤¥¡¨¥§¤©¡¤¯¨¦¡j}i¦xr}tyd{½¾Àºor`rjZ^`ck`cmwble^`cqir}gkrux}~b[wthP\n}{kXkzsJJopNtMEX]gaL[Xgc_O[muiqRQDEM;GI=M?2,2A?8/5?C<9;@;=C>RVVWYZ[\\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7JR_I'S`V4)P_L(3>[O'?2>© ¨¢Â£µº¶£¬¥®§§µ±¬È«¯²ª³¢½°±¦¢§£«¦®£¤´¨¤ ¦¨½§¨¤¤¨¨°²¿¬§§¢©¨£« ££§¬£ «£°§ °¥¡§¢£¥¡gm}qw
µª ¡¡z¥
mk}|uqxyvv|kstuew}wkozm`c]phMYZfj`WZoymmfTPFS9OZMQO(+:KB635=@A9:C><ENSSTVWXYZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J&R^S10T^:+=8\J,<-@³ ³¢À¡¤²²¶ ©¥²§¥°´ªÈª¬¯¤´¥À¦³ ¤¤£ª¦¬¢£¶«©¥À«£¡¢§¨§²Ä°««§ª¬¡¢¤¯§¢¥¨®§ ¯ ¡¦ ¢ ®|ª©
z¤g¡³¯
v{}wyzofykuzsis{vkudyf`jfcdfkYl{oik]SLPD^TE@?>,4@F;45;>A;<?>>HNNOPSUVVXZ\_bca_]^]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMMD/T]Q05M[17E4[G5<,@´ ¹¯¿¬«®²± ª¦²¢¬³¯Ä¯©ª¢±¼¢³¦¢¡§¥©¥¤¥²µ¯¥¾ «¢¡¨ª«£´È´ ª¤«¥©£« ©¯ª¦¤«¢® ¤¯£§£§e|e~cymhk{¤ªje}geeih{¡kg£wkj£slnzzXf^^mv\hswvnxxsmytv|kY^ltd^sik|qkd_RNXIdXAJ4>G7?FD71<=?AD;;DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AJ[J/7ZO6)EY/DO2YC;?.=¥º¼º¯¬´±ª¥¨®°¦°¼°¨¦£®°¬£¡¦ª¬£¥§¨²£¢¯¥¶¹¥®¢¡ ¤{¥¢¨´Ä¸¥¢§¯¡£¢©¨¡ ©°««¤« ª§§ ¬¡¥°¤© £©}½r´rhx¹Ä¸q¢£z¦r«|ËÀÀ»q£}À½ÂÁ||ÃÀ}l¥²ooÊzwvyyqzpw
ynxcg`xd`ec^tglddYLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__a_^^^^___^\SMPGUNA??=6468276*&%#)*&.+*)109*#>I[L*#BP.#F[3PY/VAB;/8£¹Ãµ°°À©¨£¯¨°®¦²³®©¤¥¦¯«ª¢ª§¢«¢¤¨¤¤´£¢¦«·³§®¢¥¡¦¬¤¬ÀÀ±¡©¯©¢¡£ª£¡¢¬®ª§¤¤§¡¦¥¬¨£¨©¨« ¤ ¢~Îxz¤y_®^§¢ |§s«¯^cª{¨
u³c«¡³j¯u}·aZ£Ínv{Ú{p~v~e{vvk|n}~marmph``yd\qhjdg`RTSW]KOC5AHDD8>6;@?A;=8@>>?BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-K0';\;L-!P@F4.1ÂÀ¿µ´°¸£ª§³«¦²««ª£ª¦¯©¦¤¢¯ ¨§¢¥ °¬§®¬°ª¨«¤¤§£¥«°¨Àdz¨©±®¡©©¡¬®¨¬ª¨¨¤¢«¬²¥¢ªª¢¥¤ ®¦ q
u
¨q±}r¬~¢¥v«}r~«v{|~ª¢~«{{WÅ{pÁ}muomeveoawnronfpuuqagme_oiingdXS]aYRSC9II@D<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1' '45-&7=WJ-<'>1)3W@F!G:C1.+°ÓÆƲ´ ££¢¢¬¯¶®¨±¦¨ª¦««¦¡£¡¥«¡¥¨¨¢°¬¨§®«§¦§£¡ ¬¦£¯¬¤¬µªºÎ²¦®¬¢®¬ ¨±ª«««¥£«®±¡¨«®¥¤©¨¨¯¡¢£¤j¤uz©tz²p¦q ¤``R«
®v§
z{f£¤£}©~®_|©V£z£{ïÅr¯³³¹rb©¯Âthnqozxypmgeerpf|ic]W`jXYULLQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^aa`_^]\][SIB6799664,&$" ('"+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÂÉÕÔ¿¡«§ ¯¢°´°®©¬¢§¦¨ª«©¤¥¤¥§§£«¢¬¡£¯¡«£µ¯® §¦¢¢§¥±¥¤¨±·È²µª¬©¢¥³¡¦¬¤°ª££ª¡³¡ª³±¡¨§®´¡¢¦|©lu«y|°o¥ Ò¸´¸É²_`©¤ zxªÉt¤¨©ÆÆyg¡¥t}¯]p´b°uK£m§Gd|qq|u~|n\fjsqfk^aYdm\_YIMLKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75685/)(%&%$&),4ENPPMFKJVF*L0/=-5OTQ;<F2,$§¤ÀƸ¨²¬¥¢²¸¬ª¡¥¨¤ª«ª¦¦¥ª£®«¥ ¬©¥§¶¢¨ªµ²¬¥ ¥¬§£©§®¡¥§©°µÃ²³ª¨¥¡£¯¥¡¥¦±®¨¦¬£·¬¡²¸¯®¦±²±£¦¢Nxz£}¤
¦¸{{y¹Ìƶx¡~v¥¤©°
¬}c¦m¤p
}r¬`£sq`¼}RUt£{~v{sq\nnxrjo[d_inbd^LLQTAIHFI:9K>B108866877-*5==?BDGILNPTVXYZ[\__^]__]ZZZXUSOH@882.,*.+*''?QTVWWWYXXWUOUF<E3:P[T6?H,- ©«¤«¹ª®¡¬²³¥ ¥®ª§¦¦£§¡³®¢©¦² ©¤£¶¢¢¡©´¸£¡¢¡±¦¥ ¡¯®¥¨¢¶²Å±©©¨¢¤¥¦¤«°¢®¤¦¯¤»¬¡¶¶´±·¯±¥® £
ѵ÷y
¦y¡w ¥qª
´nrj£|s¯¦£¦nq²]¥tzl{|m©a£qqbs²¸hw¦}y~ynjyizsou^eeomfg`J[XX<HH@U4@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^__][[ZXURRQF:223//++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH$)%s¾¿¼º´§¤µ¡¢¢¨¦®««¦¢¦ ¶§£¨§°£¬£¤¢ª³³¤¤¨®¦¢§µ¢ª¤¶¬Ä°©«©¡¢ ¦¢¦¥¨¨®£¥¦½¬½¯¬¡¯²¸©²¥¨°¢§y¨}|°w¤¥m²p¡|¡§¬
®
ª ¡{~««x¡z¯^¤}¦§d}sj¯]¥kp
]`[ m¦||knctnz`gfqnhghCYa[>KU3U8BBC7$$3+''3, /6674359@CFIKMNQRSSVZ]_a`aaa^][ZXSPONI7042.*,ATVVVTTUTUUTTUTSTVWWXVUUQHFIJ#((½¨Å¶À³¬ ¸¥£¤¢°°ª¤¹ £« ¯©®¡«¨£®°¬¦¥¬¬¡ ¦¡¤®¡¨§·©Á¯¥©¤¦¦¥¦ª¬¬¤¥©¨¾¤Â¬ª¢ «²¸©¬¥²§¨u¯~
~ºe°e} ¦¬°
¦¤¡¡ \lj³`{{±mgo±[~µ\¤kÈ¢d{¼XvµY²}R®z¬X¡m¨|zeu~cxt|ajgpmgefOUd\AU_>I(>9=4!",%2. *1/045799<ACFHJLNPQRTWZ^`_`aa^_\[XUPNJFC553./@UYXWXWWXWWXWVWWWWXWWXYZZ[\XWWGB;Ò²±·½º³Á²¢¬¦¤µ¨ ³³©£ µ ´¨ª¬¯¬¯§¡¯«¨¦¡¥®¨¡¥££¥ ¢ª³©½°¥¨}¡ © ¢©®¨¦¦¢¥©» Ʀ¤¨ ª´´«¥º¬««©£¯¤¸Ãº§¬¯§¦ª~սªb£¿½}~£×º¸µ
½¾m£o«lz²°Çi«°½¬xw¢¾¼s¦ {{d~{egy{alekjcPb[Sj\?TaCN)=:4/$%2 $(0496677;>ACFGIKMNNQTW]a\__a^`[\YTQMHC?=A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ¼³³°¿¸±¼²¢®¦¤²¦¥Àª¸²¨¡¿¦§²±º¨¯¥§°«®¥¢¬ £ª £¦§¡©£¡¬ªº®¨£|¦©¡ª©¡«§ £ª»¨Ä¢¢©³³©®¨¹¦svª¥¸d ph®nnw¤u®pq¨£®¤rlllfxonqzjqigqii
gqd]bjoY\f}v¦_aqned¡¢~vgxikyyemcflbKeXJlZ:PeER'K:+# #,)-2.5:457:<?ABDEHKLMOQSV\WZ\``a]][TPLHD=:AB7MXZZYYZYXXYXWWVWY\^^]\\\]^]^][[UW^©¬³©¹¸²³ª©¡®£²©¿³ÅÊ¿·«À¬¤¢§¬º£¤®«¦®©
¦ª ¤£ ¤¦©£ª¡¦¦§¯º¬¬{¥© ©£±¦¢«¹¯Á§£²¥«¯°©¬ª¦µ¢¬¶¡¨¦·£ª©²£ª ²¢¡¢¡¥¡«§¥}g~tusp§lz¢¥sjwqxw}zjmdcodUaY@j\HcaOY+F=+'!750.!%2(*699469;>?ABDEJKKMPPQXUVY^`ac]^TQJED>9=@ASX[\YWXXXXXYXXZZ\\^__`^^^__```_YY`¦¨ª¤´¶®®¡°£ µ±¬È¾Æ¼º«£¥§±©£¶§©´¦¨¬¢§¬¤§£§¨¦¡¤¨¡µº¨«|¡¦ ª¶£¦«·§®À¢¶¥®¯¯«¨¨±· »¥¤¦¶¢§ ª £«¯ £¯¨¯£ £ª«¡«¡
}f
uuxsj
}£¤
|ss{s|jod^pj`[`ZndP`ePZ:GGE>2=>9/*&+)&&416668:==?AACIJGJKLMSSSUZ``iaeVPJACB:9EMV[^^[Z\[[[\]]^_]^__aabaaa`bbbdb\[c£§¢¯±«®£©¦¬§µª¥µ½°®¢£z£²¤¥±©¹¦£ª¢®¢¨ ©¨©©¹¶¤¥y£©¸£¯µ¢¯®t£¼¢±wx¨°¹u¬£«d\bv ¥}m³£§ª¢esyp¨m¢¨e¦
wjvp{
`hZughs{¨f{yj
ozkre_vqlkh\ffbbpS[>NNNSG>@UD:1/&4:306678<;>@AAFHBGFIKMSTUY]`hfhXPJ<DG<8UR[`ab`^__`aa_\]__`aabcdabaaedchd^]f¦£ ®°¬«©¥¨¢§¤«¶±³§«§¬s° ¨«§¹ ¤¬¢§¡u§©¤º³¨ uw¡¡§²µ³º¦ ~§¢z¡µ¥±ª¯¤z¬¡§¨§
w¥z§{²z¡
bz
mpyp~
s
xht u}
£
klx{qqgdwojlk\ekjft\^ITLR@E6.ZUU7)!09>>743568;:=>>@DI?IEJLGSX[Y\bahfZQH9DL;>aV^bdfd`aa`bb_]`aabbbcfgcba`edcgcaah¢¦¬«¨¬ §¯¦¦©¥¯È¿±¢¨©¶¬§¢ ¾ |¬¡ §£¤º²¨
qv¡¥«´´Ê©¬¶
°¯¬¨¦}¨r{w§h¤y´¦§Â«¡r¥}
²¡}¡¡}
mr
~yq{tÅf©£k
¤
q
hxu|xhhvphhl^dplgnYgG]RM3E47Nbd7&3<EGD:64658;8>==?BM?NIJLCPZ]\Wa^il\QE=KM@JcX]cfhgbbbbcc`_babccceiicbbbecafcbbi¢¯§¨¨¥«£·°©«¦ £¤«¤¦«¸£¯¡¨¦½¡y«¡w¤£¹®¥~bm ¡¡¡§~¡§
©
£©¢ukvM«x¨¦©«}¡{z§jkg·~n`dY{dhr}yl]}m_Rp\_kx_Xd|p§ªk£nr¥p
jg m[o}gZ`bXPowfmtrkjo]jplljYiO]YF9A5HD_l5,IDRMN=84859;6@;;>BO>QRLMBJ\]_W]^bu`MD:MONTb\\ffiibbdbddbab`bdcacikdbddgdbgeach ¸ ©£¦¬ ¶»ª®¢¡¢¥®¡¯µ£¨¡ §´u¦~
¬¤©¦±§¢in£ ¡¤¢¡ v§ ¦
§«¥x|~¢ps|ym¨{¢sv¦f~w¤_z}t¢n·´ºtµ¨dƸ{p¶r£bs¬«`|i³~m|q£lr£t
¤a³r}³us[²jbotvqioXklrsg]i^bLE=D6QBZs3=SG`JR=<395:96D;;@JP?UMOQ@E__[ZX``|dHC8MWUWbaZefkkbbeadc`ab`dd_`cknccddhdbgfchh£·ª¤¶´ ¢¤£¦®²®¬¢¡¤«x
q¡}¨ ¤©¨¥
~j{~}¡ w¢q¡©¥¦©}~z z£xt}¥
¢d¡|mhoz§}rit«tªh]
v
gªk¸f\¨p`^§vu~huon§]©y»k~ª\]´g\nrzxki\qjxyd`fXbBQFO7WCRo5L[[_NZDA251<;6H?:CHU>YRY]>Db^V`Qac}jEB9N[^YdfXfgnmbbe_aa__``ec^bdoq`deekecihgki©´§c«¹±°¬¦© ¯±©¤¡ £jr{z£©£ iy{£ ¡rhp©¡¥¦{°£¢¸w£³£¤y{«~¢q¡|
¯µ}k¡y~µ¢¤«¨|}tªZ]o{xbL{z
cyBLX¢jq{lux±³§wns}ptk¤]vHed`tq~~of`liv|eeaQ_W]TW@ZFQhETW]bX^ID=B8?B:IF8LEXAWR[VDFb\Z`K`m~rEB<U_bZeiVghmobfg^aa\]^`hb_ecvm]egfkdflihki°S^ ¦³¹²²©¢¬ª¢¬¤£¨ ¡woy
|r¡s¡
©|l
q¡x|¤ ¢}µ{¥z©|§hwm~t¡sr|p®}¤¥£o^©gu¢co¥aÓ}{xssb¢~£t¤vk³`sª²¨¼wm~¿¦©´]n|pmr¢r]¤gs¦`h¦mÔ~pz{l|xsn©¤g`ezq
lhfdnuxh`cS\fQQbHYJUaWT\fk\eQFCKMJKBKE8O@QNXSYOSQ`ffjRcwywIFEc]eZhjTihjocjg`c`\]]_hbaie|d^dgdkdjmghlh¯ªT\K~©¯±³¯²£
© ¡¤¦©¡ª¡
{p}h}wol|¥«yvnw£{£¤³¡¢¶z¬§¤®¥p©
{¤¡r¤®¯¤ vµ¶µÉ¡s`©my t¢w ~pMf£ps¤{ytak~ kqd_q}shyi³µ´Æ¦s}zk«v
mvxj{urQE}³_jvkzfkhcuuqnW_TYiPShIWMYTV^iloVhWNKAJMKHJOAQKPecjmetrsy|nu{{TQOl^i\kiRjhilhlfce_\]]^ibdik{_]dhcjfomeile¡®¥d?¡²ª®¯µ¢¢ª¢£¥¥§¦zjye yui
y¦ªz}yp¡y ¥¨fnxl¢d{q¥wpg¦z¤zsw¹n¢b} nriªku mo¦`iiu¢~`upbh e~iuocfmq¢Z^[b¡m]nz}srd¥mx¢dg§hsp¢oUo _f¨T^TnmskrmpilytkpRYWWfZTmIYO]IXiiskYlWQRFV\LXSaUik_wt{}p||r{svv^RrbgcpgPjhhklnhdg_]^]`jbjivu]\chcjjsmfkmc£¥ydsm¦£©°±¦«¦£¢£¢{qi|su~{d|¨£~si¦} ©¦¦x~¤±¯¥vx©s¥n¤¢»n}¥¯
|¥zr¨ g~o¬dw¨mª¢vw«¦k°kv³©k
mm`~«ªv~~¥v|¤ jx¬h¶tw¾¤Z§«aurtp|uqckoimSW[Vab]kM]R]J^mow`[qY\`[gtenorcrt`wz~yrys{{vbxdcnrdRkgholrjfia`^\akbmlzo\\bibljxmglnb¤©£©©¨¦®¤¬¥¦©
t{o
~ttsm}{¦§§
vol©ª¢u~y®¢qw}{r§r~}zy{~v {}k
[yyrzqin~quqe_wtruoynml
^ugwe
¨}t{jpv}wnnhsz|x
\lXyioxrqoxxp]knjgV[`W]fkdVcU_Q_pyymkwfkkkw}rrutaovbt{xuzux
}{nldyn^Wnghukxjije\`Zcjemqtn[[bldllynhloa·¨¦ ¢¦£¤«¢¡¡§©r|}~
{trq
{}y~¥|¨¢
wr©§ª~~§¦woxn~¨
q~qkp} hl\sqtkwtYrn~j]jd{`ixz{u
gwjapqt^q¥
enwqzqhhe|{[\khnv[|yxunssg\mkkbZZ_[Ylq\_aZ_]et|vpudkkk|}s|yudnuhm|~wz|{yz~o{}t~yshT\qilvpugkhd]aXkhkkqrnW[enlgszohjm`©°¡¢¡¨£¢~® ¢¥|}s~v
ror~z¡§¢yz¡ª¡¢££ª¡§¦zv§~²¦±¥k|wxe|
w|zt ~}uor~w
¥
}zm
~zksiatq~zwwowt]^ohn_^Z]]ShrVd]]blhv|}topekji}nyrjpqlg{rx}{m|zx{}zxNcvjsnpzekecb`[tfpgrqmU]ltmiyzqgikd¹¡ ¤ |¬ }y|nys~mk~z
|
¬ s}{ª¥¢
¦¥u{¥{|«¢©~oxru`u
nyvt¡
s{|rqzzw¦
w~qm|ohlmh_zh~|vuvu{x\_q~nt`c[]_RgnTe[^bkivzrlmdkjhltlluozpynv~
vr~{||{`h{juiidjc`i\cuhobumlUcqyepz{sejmm¶ £{x§¥yz
|n|ys
~}kh}|~|©q ¡
|¨x£ ¢ £}w ~|¤¡¢¦~~utqwa~r}r
hxrx}r{|pwzxx¥
{
v|gs}y{qmkg_~sh|uvt|sj^`tvpwdcY__RkiUeY`ahjvyqgkdlhfkn~hoql~yzls~tv|{}irntiahlb_qVtomm`xhmWjtvcuz{rbjoz±¥¤ }w¥¡£y{~r{tv
~xgc~y}y¡p¥¦
w ¡y~£xw~s£¢¢~|vq~n{d|
ql
fuo{
|w{{zq}wx¡vw|x`zy~txgmeajjwstv~q|cc`snurmaZa^[leRcYaahkvyqckcmfh|miuhnpi}ymr~t|~{~|mvsumeljbbvVipn`xglbjvpfy|zq`rl
¦§~xªzy|~||xtyzt}d_}
u}~}¤¢s{¦ s¦rkzo¤{yqzlul|~nxq~~eri{~sx}uw|{£xt}tv
pb|v{r}pbocd|cnpvsxwstbv`olvno\\_^^j^P]Ycahnt{l`iekciwnglikmh}{wos}t{}z}}rzxxmljh_ircgqoewgnlayik}{xpaxm©¤¨~x¯}w~{}|wxput|o}|a\~s{z¦}}£n¢ me
zp£}{
ssvlqnu|tnqu||eply||tsxn|
{§z{~
w~qp
fizuvq|b_pakt_qj{yylspey^nlsmrX[_`ak[PWXecgqqg]iigbgqodiheiizwuo
t{u
x
|x
zw{{rxjk_phtkromrgole|cnzwqlww~¢¡§ ¦v«¡s|v
xyss{kspznvoq[Y~vu ¢x
m¡
i¢e~w~}{|ovplmop{itqwuyfrnu{yyusozy
¢{uwynl
_tusqqyZ_qapk^pj}{qmmjmv`ookqmYYbabnXQTZfgcupc]kndcfkn`gg_hkurspuyvy
xw
|{vjqc|c|nqmtjholvx_qy|uut~¤¬§
v yqxtpr
tqvlpnvmv~nnUQ«xwrz x{£|s
}hg
qw{z||kwjnkll{bz~v{x}ygsls~
zqyovyy|{zv|wqjl{ayqnmrtV_pbra`mozqhoffstiqkbwe]Wf``rSQO\fe]yp}`\irbbefj_he[gp~pkqt}v|uv~y{
xs
~|yxfrk`~ookz`jntu_t}yxts
}x °¥
vtwtqp
tprpkiwnn}}musRMßÈÖ{puv w{s
¡wz~yuf
k¢cqz{z|m|esoklzz[yz~{zhrjs
|k}~m}
|x|uwxrmgq
nkuphjunS_oepZ`lrxgkjbfxrpqc_w``Vk_^vPNLagc]zqu]\evabeedagbYissnkqv|tzuv~s{r|~vesn|e~nplYlnyys`vz{vrwwy®
w~|
txpyqoomoseeyq}mz}jhkc¤ÁÜ®ð¡slvv
£p¡r¢
~zuxvum
|¢
^m{}
v~~k}dxvjnysX{
z~yeri~kum}x~trwusqgvzcunqcjvhRaqglV_otzard`i}pso[cr`bVnY\xNMLdfb^wsn\\dy^_ee
`cc_Yjsknksw}twxw{q}~{t~sguryl{ntqWqzvyrewyivr¦£}qwy
¡|{swptjplim|u_axw|qu|h`d|ëÚµÉÃÜsltwjq
|{
vxr
u~o¡ai|}rqwhvsjtwlZ}
}vark~~}mkw{|~npy
tkqlsyaujo]lwaRerifS`pvuap`]hqskWghbiXmV[uLKLeg^bss
j\\ey^^dg{ad_]Ykofojtx~ss~{vzs
|vw{ulwvyxtnx{}Xyqogywdv
p
¢toqw~} xrtnodrifmxx\`y{{qqjagaÕ¶¦xnqw|qk{i||}ztz{qu
t~b
g|~~m|ulmwuuxvlc
~}p_qo{{~ypey
z|~mny~umnkl{diljYnwZSjsibQcrxmcf^Zjntb\h_dl_nU[pOHOge\goqmZ\cs`\clwee]]Zklcmjswqp|}txx
|uy|vpxy{on{w^tmiztsgs|q vvmw|w~vqpljau|gbjuz[`x|zmqechgW_qs¼Äwqtsk{|}|t
vv}quq~szf}r}g}{y}i}vfpyxtxtlkyk^pwz}
{~rhxwz|mkz|vtoih~we]qcXptSTosibNhuyga^]XootYec]jm`pOYlRDThbZlom{oY[^mcZcowdg\]`kjcliswqn~{tuz|
v~xtsyy~oo{qjyz~nm|vkjxtk
o~vjyyozsqljd`t{i`fr{[as}zgpzaed±²wKbZ¥ÚÑr{y
ol
yy|yxoqt}{jy¥n~uw
pz~oxh
xr|e|~vcqsjzqou|wyzk\o|r}
zqmp
qwwmm~vzehj~raZxZYrnNXrtf`Kmwub^\[Yu}rpWg^fjq_oNWiS?Yg_[pkgyq[[YkeYcpy_h]^elhfliqxom}vp{v
qq{|zyukzlp~t}or|{poyf¡gpgz~
|ixrllf_aoym_boy\dlzaqv_deÕë¾2:>ryw
nm
u}
|xnv
wnku{tey§}msux{x
lsi~xm|{xbyrdqinvrutv~soZk}sx{|wypkqw}}tmjvuu\iiyqZW}SZrfM[srf\Jqxp][[Z]uuiYb[genbiMWfQ=^f]^vf_uq[YUodZdpy[h^`gmgjkipx}mjyn{}zu
pnw}{{i{~kt|r{sw}zx~|kl~kh|~}kuqgic[cgso`altahpzast^bc n\5Z¯µuj~wuwpm
tyx}zsgu~}oq
}hvynez
¥}m}t~{
|r|~
|i~mk{yjzvr`w~rdrgvnu|}pwz|u~mXm}usvtzwrmq}{|zmmhmun]hftrR\|N\q]O\spdVKtykXYYZaqua]]`fdhhfNZhNAad\`va\umXXSta[eorWj_bhkgmlipw|li}|p~{zwr{oqw{j~{nxyww}x~~zm£
{vzkm
y}{}prpcf^Yg_pp`ahpfjotato[`djv{¾§¤É¸r
s}ytrspzsutwyyqdwzhqufwvdj|}q~rx~wzlyzuhzilysizv}h`x}kjth{jv|~~q|v|t~bUu{qr{pwxoo}|w|{tuhpglrp]hctoLfvL^oVTZtnbQOtybRXX]aps[a]heecjdQ[qIDdb\dq^\xhUWVw^\fnhVl^ajgennhpwzniy}s{~y|v}pvsnw~q|xzztxzuo}~{w{guz|vgpn`e\XfYmsaaaqllhn`siX^cmw©Ú©Ç³rypv}{utu~vopm
txul`yyeqogun[m}y}wzl
tr{muvmhwfm|vmjwv|`bxzhuvc~|hu}uvrz}mYVr}os~wksxjt|y{wyq{rgsdmls[j_vfIooL[cXWVymbPSuvYQVX^`ro\`cmdc]ocT]rGBf_^fi]Z{cRV\u[[gkaVk``nfflqhpvxtkvvx}w{t~oququ}
{wx|}
x|}}{~rvx{wuz^~ytw{bnm\b[[aUjtd`[hopgqaqfW\ck|Êκ¢knomrr~{
zytzutzjlvcvvog_|yeqjjqcXm{rw}{mop{yrrp~ghrcnxqjlqw}|y]ezxiuygwhu}sjo~xn}]Wp}ms~{mnpvfv~~u{pxr
{xqer`mkrXk_x]IplNWV_TU|kbOTvrQRTW^bti]`kjfbYnaXcpGAh]af_\V|^OVeqY[jh]Xha_rfjhqgqswynu{w~yus
pp{xwuy
z|u~}~~}|xvyv~}nuzdto
zucnjY_[]]Uhse`YdrrgrakdWZ_ix¾®z¸nbtiu|rz{~wxswozvejoausjb^}wxep}hkkZVox¤
pqwtlr
}yusoiyajmamvjgkkywzw[g}|yfr~n
tfvpgk{tlub[nzjsz{et|mpgt}v|~pzjxyxwoelal}lnVjaxVKklOROiNY}hbOUukMQTU^fvg]aqhgaWi\\kiJEjZbeWXUyZNWnjY]le\Zec^tfleqfsptxp
vx|
}utnsy{{sr
y}v}z~{w|wvzjv~}lrq~oflgX][\[Tepe_XcruivpdebW[[hporsefzjuwttx
zwtvnkzpahkgtnf^_|oz}hmwfjdVWsp§}|vs{q{xlyzu|}uqsmhu]mi`mudgfizo{sYgvuhpxvbw
}okm{qfse_kxfquz}auuikqtyoxwr{e|}~wunce`l|mkVjcrTLjkPLOpH^|faNVtdKOTXakw~f]gsie_WcWcq]KKkXdbUTUsVMYveZ_l`\[de_wgmbpitoq~utxxz}v~
nrt|{tq
zut}
|~z~v{£¦y
lu||u{o
sz
}unjieV][[ZScne[Xbt{jimh`aW^Ziilogmbi{zktuuoz~wvn{hjyj_enhwgeXavi}ynioff]UXoi¨wz|xtn}mqtx~wt
vjsvhio\me^ns_gbjxh{m[mstjo~zwaw
zsrpzrcqh[mvdorzwarogixsqkwvsubz}vuocbbm||kkUibgTLnhPHRlEayfbMTr_JMUYelx{f_mpjc]V`VpoWJShXg^XMUlTK]z_\_l]][be`zhlaoovnowuz}wyzyz}qtt~zvt
~}ls{
}~{u¬zlrzvuno}tjonedX_ZZZUbjg\Z_ui^ml\aW[\kequ}ij^mxwhuxsn|~~zvslzhiwg]dsgzwccTdofvvfhjaWVYhc¨owzpo{fwmyzvq}ndwtehi]lb^pp[g_muezh]tnrkq{vubu|xru~taplXpraopztcqk`lznihywspdtxxtpd`cmr}jlTi^_ULucQGWbGcwfaLTqYKLXXhlvzedmqfcZX]XwgTJ\cXiXXHWeQIcx[]_m[^\bd^ij`otxmonvyr}~uvx}tuuyzz}
jt{}~
y{~|sq®||~fqzt~}vrol|~mzcppbe]eVZYWcfk`]]siYqn[^XZ\l{bqwvlc\ntuhuwqnyzwootehte[gufvvz_]Seejs|aci\TW^bd¥iyt
xlmyfwl{ytrx|yiewm`ga_k`^ukYf]oobze[w|knopxytueszvor}raxcZno`opzseqd^muhcfxzrkmsr{qqa^emn}diThYZUNy_RJZYHcudaJUnUJLZWilr{dllsbaYZ[aw]TKc]YjSVGYaNHjvX_an[[_bc]
ihbnxymojvyn~vuttqvvw}}~~px}yxy~ssp¢{{yeuzsywltply|ps^poagblT[ZWidmf\\qeSrn[YXW`kudjujj_[ntrmttuk}}wonldipc[krdtvs\WTc_p~q\bc^SZa\derq
skjxlnnyyzqvs{z{dfvh^c[ah\^whWb^phawa[|vjjrnxtttiq
vsjp|mfwW[ilapqxseo~Z`ppa^io|kjr}qovio`[dkl{afTgUXSQw\RPYRHdsb`GVlQIPZUklk|emora[ZXYlpWSPfWWiSTFZ\OIsuX`cncXaaa^jcemzylnivy{k}
|y}mqovz}t}tx
utpvo¢t{{fwon|pgxq{lsvsk^tobgfkS^\Vhbll[\qdOom\VWUfhshctee^Zpvoqvvzl}}wscdkoa\nmcsxkZTVbbv||p\c_cTZ`Zccnp
rifyndruqzkytuo{v_gsd\_WbdYaueU_`mdaq]]~ohisqtquvlm
|
qrgn|oqoRZeidprusbluUbqj[^nd{dkt|qqqil_Xdijx^fUdUWQVoXQWTPHer_aFXkOIYTVnid|ikxkaW\U[tdSRVhQYgTSHZ[PNyw[_emjZba^^nbglyvnnivv~m~{krgt{u~s}
{ss}un¤swxnz`e}qgztylmqwgd|mdgghS`_Ug`lo\^nhMil`UVSoerkfxee]Zrvns{ysn{w{zkaelm^`njepy~gZVX_jw{zo_b^gVY`Xdbkp|wkjvl[upjyiurno{sXko`Y^VcdXeqcT_biablZ`~kfltuomxvlh{mqfp{lqlaX_ggnrsr^ilSepdUbmaxaotztinkj^W`fhu\dVbVTOYgSO]OPHep]cGZjNJ`KXme_xhn~d`U^T]u[TR`gN^bUSJ\ZQZvv]_fmhXca[^qchjxrsmhvsys{~|yntlss
z}|rstwqn~zz}~~}}~~}~~~~~~~}z{|~~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~ÎÚØØØØÚ]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDCGdhgggghMBCCDDE9.....+H
}}{{z}~||~}}}~}}~~~~~
Ûéççççê~S7¤¤¤¤¤¤£r]____aR4555549\`___`aA565557';|}zzz|}{|~}~}~}}~~~~
|y{z||{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
~|vvx||{|}}}}}~~~~~~
~wxz|zz|||{}}~~~~~~~}xyzyz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{z{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz||||}~~}}~~
zy}{{{z||||~~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{~~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}}~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~
rtx|||{||}}~~~~~~}~~~~uxrvy|}|z}|}}~~~~~~~~~p|ussvx}~|y}}}}~~~}~~sorx
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~vn{sx{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
smnztv
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\YXXWTPQRSRSMMJIFEHJGGHGGLNIgsuxz}zxwy||||~~~~~~~g^`cacnq}{z{}w||vxz{xxzoq{xy{|{xw{xuwttvuuvwtb^d_bkqfhklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkiffggghhb^ll]fggebcbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHIJHHHIIHIVpsuyz{yvvyzz{}~}}~~~~~~l[YVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__ac_\_]`]^ZZkwmbnsjbZY_[XWSNMKKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{yvwxwz{}~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSTPMJMNPROM[krlamtrgQQSPPNNOMJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTtsuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMN\dokYisupSMOPPPONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKKFBEIVcgkopnmlZMLNMNOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHECGHIN[gigrnnifd`__XLJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:;>IZ][]flnkommlkiikcRGEEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@:;><;;;=J[innojomkjllePGEDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnppsttsqrvxy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<979::=GbnsnnlklgTB?CFDBCC?;>>@CCA?>?A>@@B?@<?B@ACEFEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtstrqtxxy}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::979::78:99<I_stqfR?:;=@A@=;;><=<@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyz{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==?@===?C;==><:Bl}i>:;>=>?@@@>?A@@@A@@@=??=<:;==<?@ABBA@ADFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCDA?=>@A?@<\n@>DE??AD_d<==;;=>AA@>@@?A??=<><=;;<=>A@?@>@CCDBCEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVppqssttuyz{||~~~~~~mLPQNOPNNOPPO><<=>??@>@@???BFD><<=@=8:;mwH8;:=>A:Ie=<=<8:;??=<=;<@==<==;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIGHHHJIJKJJNLII_pprrrtuvz{}}|~~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABA@YR<<=ILFFuwM788:;>?WjA;<<:;;>??==8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@CryI;\z|wW<=?==>EhtL:=>?==?AC@<9;A?>>A=;?A@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy||}||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCEAGrykb}^>@C@@=Js{Y:=AEABBFHC=<@DDA@?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{{{}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Ent}~}vMACE@?>Y{]?CEIJJIMMKECFFGEGEEEDECA?@>>BFJJGEEGFFJNNKJIGGHKLIGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEhs}|~y
rCDEDCWu~XGHJLNOPPMIGIGHIIHHGGHHECEEEFFHJJFEGIJMOOMMKJKJMNKIHGHHHGFEFFFDFHGEEHHFHGHFQnnpqruvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJG`{w
lAAVtWHJONOOMKGGGGDGGGGFHFHECDDFEDDHHCCCFIKKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrtwwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLN[|
Vl|OXdLIIGGDDCC@@CCCCFFEB@>>@AA@BD?>?DFHDFGIJIJHHHGIIJJIHFJJJJIJIJJJFILLJJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLKJT
voiSM@>A???<<<>;:<AA@><998<<=;>;8;?AB@ACCB@AADDBCFHIHHHLMLGIJMMNMJJKKJLMSlpqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJIIe
~lbaR>8?@778896479;<:8567789787588;;;=@;999=<>;<=ACEHJMLLGIGORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIh~o`deYAW=5655873568:876565676777:67889:7578979776:<@GFIFIFEFOSRSSROPPRTepqsttvy{|{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@6788=:=ECBe
jfkifQ7885588557699776765:9:::;798987669:98868589;A=>>BA?AKLOQPQOOORWkqrttuvz{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B:=q
klkb?<>?99;<9:;9:;::9;:9===>;;<<:>;9;;<;<;9:<8::::999<?<<ABDIJMKIKLWorsusvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<:89989:::;?>H~
ml`EDFFBAAB?@CA@>=>>@???@?@==?B>@A?@?=@@@>?A<><;:;:9;?=;<==AACABCAXpqtttvz{{}}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<=:;;==?@BR
{mkOKMKJGHHEFHGECA@BECCABCB?@DHECECEDAFEFDEFD@B>=@>=?@>?>?>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@CDFW
xmamdMOKKKIIJJIFDDGHGDCEFDBHIKGHGFHGEKIKIJKJCFCCDBAACBDCCDDCA=;=@hpsttwwyx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@?A>BBGGIY
yyeaOOMLMJIJHKGDGIHIEEHFFELLMIJGGHIJNMNLLNKHFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?EGG=<@@88<;;=:>@>?@CFIIP_
iRRONNMNJHHEJIEKIGKJIJGGGKLNLMHHIJMQNPNMOKIGIJHIDIHHFFGGIGCBACTnpuwwyzxyz{||}~~~~}~}~~~~~TDAABGHB?8?@9:<8=>;=A>?ADHJLUq
aTUSPPOLKHGCHJGLKGKOLKJJLMLOPNHIKLOQQPQOOJHJJLJLFGHGFFIFEEBABB\orwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAGKLPVy
}ZXUUVUPNLKEFFLONPWUQPOQSRMSTOMSLPSUVRSRPLJMMMKNGGJFFHJEDEEBECcpuyyzzz{z{zz|~}}~}}}}|}~~UFFGGGGHF>@B=?==B@BBGVNFNPPTX{
jZXlcGTRRQK;;RSR`u]UVTVYYRXXRZfPUWZ]RTWQOMRQPPQKKKHHJHEFIIIHIirvyxyxz{{|z{|}|}~}}}}}}~~~SHJIHGGFE??AAEACGEDELXRMTUVXZ|
~an]eV;YZYTQ?@VUX\d`VYbr]]W]ZVEQYZ[Y_TYgRVVXUTVTOOMJLJIILMKOMSosvxyxwzzz{z{|}{~~}~}}}~~~~~~VJJIHGEDDBA?HMIMPKIKPTSSXZZ\\x
g;~zopZ\]\SUSVVU[ZuYU}a\X]^WIV]][[_YHYXY[]XXYWRQMPQMMOSQQURassvwwvxxxz{z|}}}~}~}}}~~xy}YNKIIHFBD@A:PQQWXPPOQSTTXXYZ[n
n~gZZ\ZUWUWRQWVcRerXZW_hP`f[[X\gaGOZhg][\]]WROSPPRVVVVYZnrtwvvuxxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[SSQORRRUSVTW_ux
~|^RWYVSVSRQLOMKfy[]TYUV]ZLTZUST^ZXWWWzkX[\\^TQQPINOWVX[Zdprvvttvxyy{{||}~~}}}~}}~~~zxwvsu{tk~kry^[VUSROKFCDAN^lVRSNOQOQURSRRUcdv
~yorXKMOPMOLJKDEIEC>TdURQQNKQTQMOYRMNQSUUMQSRPOMLHCIHRTUZ\lquuusswzz{{|}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^\YUPLILIaltPQSNQRQR[RSRQRUTbs{|}{{
v`^ME@DDDDCAEPBCAC=CIGV@HNLG]iPHFNFDEFIGHBDHGIKGDBAD@OQMRdrtvustuz|{{{{||}|{~}}}~~||}}vt{mh|gnqfiedb\XSQPURsWe[OONLQSQUYSUQQTSOV`klrv{{xytrnstsyx~lNH@A;<>@@?@?kPJ`EFHIEB?GLNGMQUIAE>?<=<==?=?ACC@?==B>JNGUnutustvx{|{|||}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QRZ\Y^JJPQNKLQRQTVUWQQWUPX[b]agmmlokg`nrjmlqu{z}{xz||xwxeDBAB=:BCAADB\]O{NOONKLMOOQLKMWMHG@A<977599=;;;8:8:?<BH?\stuuuvwy|||}||}}~~|~}}}~}xuvz{zwyxuw{|yxuywcqhipmnmmhf^OP_]ZIHPRQOMPQNQRTVXSSYTOYZ[WY]^^_e`]^qvk^`gkwooljonnlfbYHGHHBAGIEEFDMRPaWRWQPSSRU[OOQVPMIDF>:96587979:365795<C>essvwwyy{}}||{|}~~~{~~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`VW^ZXMLTTSPQUOLRSTXXTTYRMWYZVXXVXY]WWXhsk]Vaskba_^da_^YTQNONLIHJLIIFCQPS[WTTNQSYS\eUOSTQNKIHC?A9998978857578599Gmrtwxy{{|~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOUVXXYSUTLKTVUUUWPSUWTUR]n^RNZ_[VY;DVXT[fJLPSROMMNNNLJFQPUYSTOJNOUST\VRUSROMLIHHF?><:787659967665Wppswyz{|}~}~||}|~}}y}}|~~~}||}}~}|rvqxxrvuqqnppopuvtnjddjppqrpofedc\]RTZVWUTWTRXXYYYSUOJGOPOOMRJPPOPNNOTLMIPOSTU2=XMI@Q=caQSQPNPQPNNMQNTRPSMILJORPRRSTQROLMKLLHCBA=::876;B5566:doqtwx{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqniihpVVTUXUWURWVUZYXWUQSFEAFGGHFJDHJIGEHLHKHFLMPMG/E_R>3?>joaSRQ@GUQPQPQNQOQPLJLLOPONPQQNPOJLMMKGEEDB;=<<9=G6677Dmptuy{{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknaePSTRSTOWVVYYVQQQO@=;=?ABAC@BEDA@GHGHEFHJMLEGCORC8ENS]gTQSAGUPOQQPNMNMKLKKNOOQLOOMHLLIKKLKGFFED<AA>;@E;<89Sprtx{z{}||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpknqmimcLOOMQSLTUTXWULLKI<987;>@><=A@B=>EHGCEFIGJJ@FAA@FHEJOHQRb\QPROSOOPLLOMLMLMON[WKMQOGIHCHJLLJFFFE?BC><BG?B?Adpswzz{{|{zzw{wy~~|{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCD=9779?B>;?A@@>@DIECGGIGIEBB?>=CBAGIDMObeQMONWKLMKLMMMLLONSdNKLRIIIEAHJLMNJGIGBAB@?EFEHDKnovyyy{{z|zwtxux||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGMMJMPMPOHJD?A=98::?B?<@BAADEGKFCHIGGHCC?B??@A>DECKNRTLJIMTGIIJLIKLIJMMOPRPKGCKGCBIILMONIJIGCCCDIJMLIYrmwyxz{zy|vrpurtxyvxjqnjllnttmtu{stxronqovsnporpopstyjN`gsjt|ygosqiqhdqHKDGHHGJKIJKDFB=>=99:;@B?=BBCCGFIKJDIIFGGCC;A@B>@@BECIMPHHKGHKDHILMHJLHIJLKM]RHHDNFACJJMLPMKMJKFGGJMNQNLbmivvwzy{z}rmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoiktgdoFKDFEGEFFGEGBC@><=9:::@C@>BCDEIEIJLFIIGFFDB;ACC>@CDCDGLNHKNHDHEILNMGILGFGIILNKIGENHBFMKMLOMMNMKHHIORQRNRfffqosxu{z|lhjnekqlspfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGIDFFECCBE@DA>?>:;;=:<>CA>ACEFJFIHLHGGGFEC@=DEB>ACCCDGHIGMPJFFGKNOKFHIFEDEIJHJIFHOKCIMKOMONOONJJILRUUROWd`amgproryzgehhdilgqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutwljuumrvqlnlerLHEEHCBABD=BA>A=::=?:=>@B>@BDGJEIFIHFFGECBAAFFCBBBDEDGGIFLQLIOJJLLIGHEGFDCIIHKJGKRMBNNMPNOOMNOKKKOUWVUSX_^\iaminhrsbeffdhhfnjfmmhkkmriqvtsqmvnoqrswsrstuuvvvwvwwvtwujsunutsqrjksMGHFHBBADE<A@@C<8:=>9?<?B@@@DFHEHFFHGFFDCECDIECGEBEGEFGGEJMKHQMJKHHIEFHHECIIIKMKOSNDQRPPQNOMNPMLMSWVXXUX]Z]d`hbjigk_eefcgggkggkmkmlprhttursnvoqprtxqssuvuyvvtxuuwxmouorsuqqinyMHGHHBBBFE<?BBD<7:>>:>:@B>??CEFDFDEHEDECDEFGJEEJGCGHFHGECFJJGNKLKHJLFIIKHEKKLMNORTOHSUSPROQMNQNMPWZVZYVZ]YXa`a`^hec`dfhgjhhifhnllnmqpiuuxrrpupppruvpusuwu{~}xvtwvvvxplupmstnorrxNHHGIDBCHE<@EBE=89>>=<<AB<?>AAFCECCIDDEEFGGGIFGKHDIHGIGFDHKIGKHMKJKLHLKMKJNKONORUVOKUWSPSQRLOQPOTYZY\ZY[^^]`c^\ackb`dfgr
hgifjmnponsrjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqvptLIKIKFBEGE<@GCD@:<?@?>?BA<@>AAFCEEDIEFEGFHHFHHIKJFJHHKHFFLIHHJGLLMLLIMKNMMOLPPQUVWOKVVUSRQQLORRPV[[]^[\^__a`ad]c`ef`ehjcssfjggkorqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrvnvJKLJLGBEDE<@FDDC;??A@@@CA?B?ACHCFEFIFIFGDIIGIHJLHHJJILJFJKHIKJGKKMMJJMMNNNPKOPRTXVMNTVTRRQPLNTSRW[]^_]]`_`aa`acebdhbdijgvljigmnsqpqppryvruutsmmssmqrotutrpswtuuwvuuteqskpqjrvnwKLLLMGCCAD<?EEEC=AACBBCDACDAAEGCHGHHGJGCHIGHJFILHIJMKNLGKIHKKNQKRQMSMKNNOPPOTOWXX[NSPW\ZRWPNTUTTXZ_bb_da^`b^`eaacingbihhnxvlhimnsrpqrrrvtsusssnksqmprotvrqquvuswywutucmtkopjqtowLNLLLGEA@D>>DEFC@CAEDDFBCEGCCIFCIJJIIKGDKJGHJIIKHJJNLOKILHJLKZfJd\KlSHON_nUks[qpbwcSPavuhucav`Xnqbdvinzf[lt`ljT_wvijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqrqyLNJJJFC?@B?=DEFDCDBEEDFBFFGDEKFEJMLKLLGGMIGJKHKKIKKNLNLLLILLL[sbdp^lmUMNfs]ffqlntgpi_aYnnbppbkjjfoqtetno\ougpMJqyvka`keemxlkvmnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvttbmukpplrrqzKLIHGED?AB@>CFGBFCFEFEDCHHGDEKHGLNNLMLFJNHJKJILJJJKLMNNMMJMMN[roonpplkMPQlWMibtrpamnu\YlQ\mmZqmkomxxtsip]_rkqjUuyxoc^kfbgppjiopprspqpqprrqqrrtlmrmnnorutqtrtuutuuzvutenukpolsrryIKGGEEEBBB>@@FGBGDIFEEBFIHHEHLJGMMNKMNGLNILKIJMIKJJKOPONMLNNL\hdu]lqWlNPQmTYk^klvaldsSecNmYl\tpkilxjwuhp]^rkhWbcw|oc`ggadiuyknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvHLFIDEECAB=BACGDHGLHECCHKIHFJLLFNLLSRLGLLHNJIHNHJJIHNOMNLJNMJZsppoqqmlOQRnYrkgooqqomt]nXat_nopoqronusttj[^tcwxrjnzhaacfbbimtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyxtukoumtonssvsHKHIBEEEAA>DDBGDHIMIFCFJLJGFKNLEOJKWRKGKJJNIHJLIKJHHKMMMMIKKKSkc[i^_icrrZ_Yjn_eeUk_c[aaQ`lh]j\niid[pfdp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrvtwrGGFIDECFA@BFEDGBHJLHFDGKLIEFJOLIPIL[QJEHHKMIHJJKKIHIGKKKLGHKKLMMLJKMNT[\TPTLPONOOVQOOQNOQJJOPQdqiTYW\[\VY[]X]\\cfaaebcf__fkmhmtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusGCEGFEAEC@DHDFGCIKLHFDGKLIEGIPKLOKLWLIEEHIJHIKIMJHFGGIGHIEFLIJLOMJP\W^P\[`^MXYS\\b^MXZMXaRKYaZR_d\aX[ddVVX\YZX\VY\]b^daa_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCDLMBDCBEIEGGFKJKHEFIJKFEHHPKMMJMRIGEAHFJIKLJLJHFDIFDFGEFJHCJNKLU_Y`X`a[`TXYT^^Z_RY\P^\YN_\^SZ^c^Z]`c`Y_c[`^[TXWY^]cbcacehekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIECBCGHFHGHKJJIDFKKKEFIJNKNKHLNGHE>GGLIKLKKKIGDHDCDEAFJD@JLJO[cY_^a_RTRW_`\]Y^QY\MV_WKQY[PZ_aa]^ca`bbbcceZQXUU\Y]c`__cdbhomnllllu
yu|
}wrrtxyyyy~}yuyvvrnzwvxXQKFCGEBEGIFGHHFFIGHGHKILDDKKNMLKHKJHIF?GGNKKKMKKKIFGCD@DAHIB?IJHO]aZ[d]_TQRX]\\\_ZKW\LR\YIM^QO\_accccb\dcbdcfXQUTQ[WZ`_^^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMC@IFCFKJFFFHGGIGFFILJNFDKKMNJLIKJHHFBHHQMKKOLJKIGGED?ECIIBBGFET]Y^X_Y_[]UXXO]]QKJV^X^[]UY`RQ__bb``bb`cbaddbXOQQQZR[]]]]^__dhgljnnp{{|~{
srw
|x\SKCAHFDGMRHCQJEGHHEFKJMPEFIJKNLLIKLIHGDHKQOMMPLLJKHICDAEDIGCBGFDWUE\T]SV_XOTUNZZMIJT`a[_X^^a]OYa\``_bcb]abW`_TPOOOXQ\[[\\^_bffeleoow|{{}
zo
~INFDFFHDIRbPCV^IGGHDFMKPPEIIJKNLLKLKIJGEJNQQNOOMNLMHKADACDGECBEGBMHBKKOONLFMFGIJHGLKMOPILOPOSOLPSRUZYWYXXdWOSTPPNMOTSZXXZ]\`adecgcklpsryy{z
~{}{
}KIEEGFGDKM]LGGXLGHJHGMLQQHLKKKNMUNOJJKGGKPSSNPONNNNGKF`ED_LEfdEN\I^[rmOMUmYLDQ`UkWgJ]WU^DLQULLSVQRTXWTXUT\UPfZhhdXRjRVUT[\[``abab`fhfnkhrz|}~}|zr{z{
~z{LIFGFHEEKOSIJF`THIOJIOMRQLMLLORUROOILMGHMQ[YOPPNOOOIJQQI|YYrtYQmHqnoaVPqqsPCksmqspSo_[nX]V\XUkhU]VcZ`Y[_VVXjtuu^_v^Wa[[f[_`a`a]`agmpl`pwtx}vxzlv~tx}|~|z~wwNJEHMNBDLLFIKEQVLKNIKRXWQNOOMQTNOQOKKNGMPS[ZSQROPPPJHZx]TxehZSURvgtlpbnfjQrOMwmjrpsrqrpoo]ezuxqqzq~s}ku}bRh|essorr{|o~xnr_``baZ`_gknkblfgmw~~{xwtvzir~ns|~wx{~x|u|||ssNKG`]GAEMMHJJGJPOMMJNV^YULQSNXZMSSRNKOHQRTYWVPTPPPQKHgxlcxrm[KNVypumubovPeeJfvqmwojfxxiWrQhzmijzz~lxzohoYvvjvup_rf}ilx|o^__ba[]bdgijdgbcdllppstsssyqrxblugqy{srvy~suzn|}yxrnNKSuNCBFPPHJKIKPOOOMPZ`ZWKTWPa^RVQYRLPISTVXWWOUPONRJKrouuquqdibWnLqp^FhyWvTLiy}x`y{sna]mocRhqunmypwlvttrln]t~zkmy|ktl|kpvux^__b^]_ddighee^abiiijknokqomjpacfcowxompsynqpk{ztsomLL[VHGEGRPILMJKPQPPPPW\XUMUYUeXRRY^SLNITTVWYWOSNNNQHRmHiwK`dvvVXlOnl{sajgvULWkh}lmlx_Zpz{^`zscroxqhd}ir|^TLl`vukiu{zm~xk|p\^^b[^bddgeeebZccikkrsrvglihdg`akagsrlgmmr|kmhk{tmnkmOHKKHJHHQPLNOLKRRROSRWRVTPWZVVTTTa_PNMKTSTQVVNNLMOPJHQNPULKLSTTSTPVUQQNQQXYRNPUTXXX[[URSW[WXXZOSUWXXR^YW^VTPYRWWWWX^Zgr^[[Y\]_cZ_ccdfdccbZcbgfemnmueegcaf_]g`dlhfgkhpzhggjujhgilQIKLLMKJSQMQPOLVUTPTUXUYUQZ]VUTWUYWOOLMVTQNUSNOMLQPLJQQKQMKKPSUSQQSSIHLNOQRQQQTVRXW\WSRPRTUVSZQNSRWVTYVUZVTRUTTTWXV\Y^`]\ZZ\\_c[]bcdfdddaY`acabhhimbad^_c]Zd\bma^fefmsdigjkedcfhPJKLOOLMSPNSQQMXWUTUWWWZUS\`VWVYUXSPPJNWSPNUPNQNLSPMOUSNQNMNQUQUQRTUNKMOQTTRRQVWUYZ[YSURTWVVY[TPTUXUUZUWZVSRWVUW[XZ_\UX^\^][]`a^[bbcgfedbX_ab]`gdfea^_]]^ZZ`Z_g`^]]bhkagfhfd`bcaOLMLQQLOTOOSQOQ[YWWX[YXXV\jdVXYZWVSSOJNVTPOTPPPMMRRPRXTQQOMOSVOXRTUUONMQTVUTTRTWVZ]\ZVVQQVXV[[WQTWVVVYTXXVSRYWUZ^Y]_^U^\^`\[____ZbbdhgddaXa`b^^fcc`b]\\\\YZ[X[a[^]\_b__bdebd__`\PMNNRQMRROSTQOU\ZZW[[\YZ[dqmhd_[XVUWQLMVSMNROQROLQSRUZUSPPMQWWRWSSSXMOOQTXVUUSUYX[^][[VQNUVU[\WRTWVWXVTX[UTRZXW\^Z^_`Ua\aa]`b_\`]c`cghdf`Yc`a__ed_`b[Z\[\YZYXW\Z\[`^_[^^a`^c\Y`ZQNONVQPTQOTTSPW\\\X^\^W\^jqwyc\[UUWQMOVSNQQORTRLRTTYZWUOROSXWTSURRZOPSRV[VWWTV[X\][[]VSMTUU\\VRUVVXYSUZ\USS]XZ]^\```Va[cb]ad^\bab_cfidf^[d`a``ce_b^YZ^[\[YXYWWZZZa\][]\\Z]`W[[ZPOOOYPUTRQWRTP[^^][`\`U\]hjr}slg\TWWQNRZSRQTRTUTKRWV[ZZSOSQVVVTOWRSZRTTTX]WXYSX]X^]YZ]TUNUVW^[XRUUYYYUWZ\VTW^Z]]`]bb]Y_[ea_dd^^cca^efidf^]da`aabd`b^XZ_[\[XXXWW[Y[`\[[\[XZ[^V^Y]QOORZPZTUVVSTT^^`^^b\`U]^bkytl}kZUYTPPS\TUTUTVYWLR[W][]ROUSXWWTPXRSWSVUU[]X[YUZ^X_^Y\YQWRYXY_[ZTUVZYZWXZ\WU[^\^`a_dc\^]]eaafd^^dc`\gdhedb_da`a`bb_`^WX^Z\\ZYYWV]Z]^ZY[\[WY\]VXW]SNPVYQ]UVYWWUX__aa`c]_T]_beeuzhWYYSUSV\XWWVVW]XOU]Z^]\TRWSWWUSTXRSVTXWX]^X][V]_X__X\VQXTYZZaY\VWX[Z[YYZ[YW^_`_cbadd\b\`fadfd^_dbb[fchecf`f__aaaa`_^VU]Y[\[Y[YY][[[XXY[YZZ]_]TY]UNSYVS\TVWYVV\`abc`c^_V[`da_zuohY[YUWTW[ZZ\ZXY`WPU^\``\TTXPUWVTVWRSUWZZ[_^Z_\V__Z]^Y]URYWYY]bZ^VW[\[\\[Z\ZZ__``dbcddbdYafbffe^ab`c^bcidcg_g^abcaa`^_XT[ZZ[[X[XX\[Z[WWYXW\[\`]V]]SOVYVVZUXUXWX]_badad`^YYadb`lfh^[\ZVWXY\\]_[Y[bVTX^]ac\RVYPWWWWWVSUTX\\^``]`\Wa^[^[Z^XUXW[[_`\_XY\\]^_\[]Y\`a^`ecdeefbXcedhgd^c``ec\eidei_f]cbcaa`__[XY[YZZXYXW[[Z[WXZTY]\Z`\U^bNSWYVWYX[\XWY^`badada]^Yacb_a``^\\\WW[[]]__\Z]cYZX]`cd_RXYPWWXYYWVWV\]^`a`_b^Ya]]^Y\^YXUW[\`^]_ZZ^]^^a]\[Z\`b_becefefbZdffigb_c^afdZihbfice^bbca``_]\ZX[YYXXZXWZ[ZYWXUU[]]]``bbxKXW[YV\[\]ZW\]_`bdaba]`Xbcb`cab][\[XW[\_]`_][`d]\X[becaR\ZOYXZ[[ZWZY`]`bb`ac_\b]_][^]YYTX]]_`_`\[^^`bc]\X\^`bbcedfdefd\efgifcab\cg`\ihbhied`baca_`_]]\Y\YXWXYXW\ZZWWXOXZ]acffrkJYW\ZZ_\[^\X][^_acbaa]b[bdb`bbb\[[ZWXiq`\`_]\ac_^YYcedaS_ZRYX\]][Z[[c`bbc`bda`c^`\^^^YXU[_^]aa`^[`abfc_]T]``cddfegeffe^efhhgdd`Zfg^ahhbhhfc`b`cb___\][Z[YXXXVZV\[ZVVUMXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{zzzzzzz{{{|{{{{{{{{{{||||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvvvvvvwwvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{zzzzzzzz{{{{{{{{{{{{{}|||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||upooooppz~}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½ÌÓÒÒÒÓÕ~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}upnoooooz~y1333332j{éääääèÊÝæääåäç¥}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vuuuuuuuvwwwwwwxyyyyyzxooooppprrrrrrrwzyyzzz~||||||}~|||||||}||}}}}|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvvvvywvvz{x{xwvwzxzzy}yxxyxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{yyyyyyyz{{z{{{{{{{||||||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwvy}|}}z|{wwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwvz}}}}y|zwxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z{xwv{|}|{z|{wxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzyz}|}|{}{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyx{xz{y{yxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyxyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||
{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxyyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oxyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{{||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|}}}|||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrsuuttssssrrqpoooopqsssrrrrstttsqqqrstttttttsstsssttttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqsttssrqqqponnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqrsssssrqqpponnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnnnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrrrsssrrqqppppoooooooopopooooppqooopppppopoppqrqqqrrqrqqqqqqqqpppppqoonnnmmnnnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpqqqtqrrqqo~nppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqqqpprqptnpppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqq}¢oro|oppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqrqu¢wqw }oqqqqpppppqqqpqpppqpppppppppppppppqqqpqqpppqppqqqqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrrq©o£~pqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssssrstr©¤{¡|rsssrssttuuuuutuwxwwwwwxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz~|~}|vvwwvuxzxxxxxwxyy ´©¦©©}{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{|{{¯¤¡µª¬£{zzxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}}}}}¥¢± §}}}}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~ ° ¢~~~~~~
~~}~~~}}}~~~~~~±¡
}~~~~~~~
|||{|}||~~~~~~~~~~¡«¥¤¢ ~~|}||}}~¡²§¡ ¦¨¬©¡
}||~~
±¦ ¡¤£
}}}
~~
}}~
~~~~
~~}|}
~}}}}{
~~}~
¡
}~
}}}
~}~~
~}~
~
~~
~{z§¤
~}}}}~~|{}§¤¢
~}}~~~~~~}~}|
}|}~~~}|}~|z
}}}~~}|}}{zy
~
~~~~~}~}~~}}}}~}|zz{
~}~}}~
|}}~}}~}~}~}}~~}}}|{{{zzz{~~~~~~~}~~}|~~~~~
~|~~}~~~}~~~}}}|{{|zzzzy~~~|~~~~}|~~~~~~~~~~~}}}}
~}}}~~~~}}}}}|||{zzzzy
~~~~~~~~~}~}}{|~~
~}}}~~}}}}}}}}||zzyyyz
~~||~}~~~
}}}}}}~~}}}}}}|}}|{yyyyy|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxxyyy}~
~~}~~
~}}|}~}}}}}}}}}}}}}|{{|z|yyy|~~~
~}|||}}||}}}}}}}}}}||{z|yzz{|~~}{||}
}
~~
~}}||}}|||}||}|}}}|||{z{|zyz{|yy}}}{{~}}|~||}
~{z|
~~}}}||||||||||||||}|||~{z{zxz{{|}|~~~~~~}|}~}~~||~}{}~
~}|{||}|zx{
~~~|||||||||||||}|||||}|yz{{xxy{{z|}}~~~~}|}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||}}|{}|||{|||zzy{|{}
~
~~~
~~}|~~}}}}~{|}}~
{z{ywz}
~~~~}}||}~}||}}}}}|~|}|{}||z{z|}}
}~}~~~}||~}}}}|{}|~~~~~}|~}~~~
}|||}~{{}w~vx~}|}|}~~z~~|~~~~~~~~~~~}~~}|~}~}}}{|||{{z}~~|||}|}~~|{{}~}~~}{{{}|{{{{~~}||~~~y}~v{vx}|||{}}~}}~~}~~~~|}~}}}{{}}|z||}}}}|||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}{~~~~~~~}||}}|}}}}{|~~~~~~||}||}|~~{|{||||}|}|~|}|{{{|z{|{|}z}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}}}}}|}}}}}~|}|}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~~}~}|||~}|}|}}}~}}~~|{{{||}|{{{{yzyyy{~
~~{zy{}}x|zr}{{}||~~}}
}~~|~~}|}}~}}|~~|}}|}}~~}~|}}{|}~||{|}zzyyyyz{~~
~~~z{y}}zzz}q~z{}}}}}zx
~}~~}~}~~~}~}}
}~}~~~|}||~~~}}}}|}||{|}{{{zzz{{|}~~
~~~}yzz}|yw{t{|tw}~}{{vv}
~~}~~}~~}~~|}}|~~~~}|}}{}}}||{|}{{{|{||}}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{}~|}|||{|{|~
~~~~~~~~~z{z}}uqz|zqz~}yxtt
~~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}}~~{{z~~xry}qzx{xyuu}
~}}~~~~~}}|}}~~~~~~~~}~~
~~~~}{z{z|{z
~~}~~~~}~}}z{|
{{sy{|pwuvwyutz
}}}~}~~}~|}}~~|z|z|{|~~}~~}}}~}}{{zx|vyz|qtxwvxury
|}}~}~~}|~~~~}}z{{||}~|}}~}}~~~}}}~}}}}}}z{{|v}yxzzruyyvwwsu
~~~}}}~~~~}||~~~~{{|||}~}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~
}}}|{||yz{z}y{yx~{||~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzswvst}~}~}~|~}~~}~}~~~~~~||||zyvyyzyvyv~|{{{~}{}~}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}}}~||~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{{{
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~|~}~~~}}~~~~~}}~~~|~~~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~||~}~~}}|~~~~}|~~|}~}~~~
~}}{{||yw{ywxwwx{{{{|
}{zwz|}}||}}}~|}~~}}}|}~~}}||{zz|{{zyzz{zxswuqqsoxwq{
~~}|~~}~~}}|}~~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{||{zzzzzzxsvupprowvr{
}}~}~~~~|~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~~}~{z|}|{}y{zzxzxy|||}|||||||}}}||}|~}~~~}|z||{}}{yzzzyytuuooqpwst}
~~~|~~}~~}}~|||~{{~yz{z{wwy{|{}||||{}|}}}}|}|~~~~|z|}{|}{yz{zyxstunsqpxruz
~}~~}~~~}~}{~~{|}{z||{zxxy|||}{||}}}|}}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~~}~}~~{}|}{|}xxuxxy{||}{||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|{}|{}xwvyyz{}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~}}}|}{}{zvzxy{{|}}{|}}}}~|~~~}yy{zzzysrtowqwysw{
~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxqytvxtv{
~
~||}|x|yzyz|}|{||}}}||{{{zzzupxwyvu|uv|
~
{}~|y|zzz}||}z||}}|z{~~~}}||}|vrvxxvtvu}
}
{||}zz|}}||z|~}|}}~~~~~|}~~~}||xvvw
~
}}||{||}}~~~}~|||}}~~~}}~~~}~}~~~~~|}
~
~}}||||~~}}{|}}}}}~~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~
}uz~
}y|~{
}~~~}{}~~}|||}}}}|}}~}}|
h
j|{qq|sstt}usqspurstv{}uvy
hzrss|r}}~~|}}}||||}|||~}~}}}
}p{pyv~nypus|vyyrpvxqvtturstvinrotvnulwmzsnym}rsvsvmnwlpylu}~|~}}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoolw}xpqzprufu~n{ysoy}~{~|~~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyrioyxpkyszozwvvp~~z~}|}~}}~~}~~~
xyrz{pp
x
xyks~y{krz|mzyyt}vnoot|uwpy}}m}uo
zrr{|upozks|nv~~}}{}{|}|}}~~}~}~|}~~
}w
~~{|{~|||}}}~}~~~~~~~}}}~|{|~||
}{{|~{||}~~||~}~}~~}}|}}~~~||}~{|||{{~
~|{}~{|{~~}||~}~~}~}}~~|}||~~|}|||}|||~z{{|~
{{~~|||~}|||}~|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}~~|||~}|}}|}{||{||}}{{{}|{~}{|}}|}}~}|zz{{||
zz
~|~~||}}|}}|~{{{z{|||{{{~{|}{z{~||||}~}{z|z||
|
~~~~~||}}{}}|~zz{y{|}{{{{~||||z{}||||~}|{{{{||
z{
}~~||}}~}{~}|}yzzy{}}zz{{}|}||zz}||}|~~{{{|~}|
}|{
|~~}}|}~}~{~}|{yzzyz}}yz{{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~|}~~~~}}~}{}{zyzzyz|}yzz{{z|{{{{|}}}|~}|||~|{
~}}{
~|~}}~~~~~}}{|{zyzzyz{|yzzz{{|z{{{|}~}}}}||}}|
~|~~
}~~~~~{||}}~|~~}}~{~{{zyzzyzz{yzzz{{|z||||~~}|}||}~
~~}|}~~~
~}}~~|~~|~||~~|~}}|||{{zzzzy{yzzyzzz{|y{}{{~}}}}
~}~~~~}}~~~~~~
~~||~}|~}{~|}}}~}|||}{{zyzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌÌÌËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<C9;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;>BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÔÓÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937676=;>:=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<:<<98:9:::;<::;9><>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA=366:;<8C<BA>;A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖËËËËËÊÊÊËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÔÔÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9>CE?<;999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNG¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖËËÐÑÐÐÐÐÐÑÑÑÑÑÑÑÍÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ØÙØØØØØØØØÙÙÙÙÛÜÜÜÜÜÜÜÝÜÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÜÜ×ÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILN@99:4;@<7=9AC=@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMMF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖËÌ
²âÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¸·©§§§§§§§§§§§§©½æáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃrliNSbLLVM<::77>C?8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKPFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ËÌnPSSSSSTTTTTTL óëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§££££££££££££ g@DDDDDDCCCDDCFSSSSSSSSSSSSSKªòëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËwliJN_MRUM><<7;?C>6:7>?;=B@9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ËÌqUXWWWXXXXXXXQ¡ñééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¥¢jFIIIIIIIHHHHGJWWWWWWWWWWWWWO«ñêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<<<;>::;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÌÍx^a````aaaaaaZ¤îççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©©§sQTTTTTTTTTTUTV`bbbbbbbbbbbb[¯ïééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9::=<;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÌÌÇÅÅÅÅÅÅÅÅÅÅÅÅÅÊÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÎÏÎÎÏÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÒÐÐÐÐÐÏÏÏÏÏÏÏÏÏÍÊÊÊÊÊÊÊËËÊËËËËÍÍÍÍÍÍÍÍÍÍÍÍÍÍÔØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<7@A<=8:;898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÍÍÏÏÏÏÏÏÏÏÏÏÏÓÏÏÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÑÔÏÏÎÒÒÏÎÎÓÓÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÖ×××××××××××ØØ×ØØØØØÙÙÙÙÙÙÙÙÙØ×ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?89:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎÓ»ÏÏÒ§ÐÏÑ¥¢ÐÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<=B>BB@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÒµ³Ö³£¦Ö° ¢ªÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?><7:>9?D>@98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÏÑ ª®ÐÀÇÏÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>><<96?B?B:648:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏÑÅ´À¡´¢¯±ÒÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8E@?B:74:::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÏÖ§µ¶¹°³©ÔÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<=<964:98::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯Ê £¿Ê¥§ØªªÔÏÏÏÏÏÕ¥¶ x£ÕÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>9<97659:6:<;7<@@<::=:<?>=<9@<<::9?@==<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÐÖ¥¶®¨y©
¥ÕÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CGDAA8;?<=;<<7558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÐÕ¥¶·µ¯¦½¦¯ÖÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF?HHFE@<<>><==<756996:;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÓÐÖ¦´Æ£¥§ºÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÇÒ×¥±Ø«¤Ð«¤ÐÒÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKK@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÑÔµÃÕÅ·×»ÔÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUij[L_MJLJULFB<<?FEGKI=667:979:;:<=9>99:8;=>>A>=9<<:=>>;=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÑÑÃÔÑÔÇÃÕÑÕÅÄÕÑÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?ADLLA=775:8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÒÒÔÒÒÒÔÕÓÓÓÔÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ==786977899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9599:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EIKAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDI;AA;<886586987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFID<AA<;876797799=?A?<:9@?<>B?:8776=?@@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD88867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE><HF89757875898;>>=;89A>=@?A>7596;>AB??@@AB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCDECALH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HQA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELBA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<<DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAD?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
¼ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsnupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9886553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿½¾¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;;>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸¸·······¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶······¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸···¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶···¸·¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨§¨¨§¨¨©ª§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸·¶······¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;;@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥¤¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¥§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§¦¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©«««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤¤£¢¢£¢¡ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@?BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡¤¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747578;=8::99;=;;89>6789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥£¢¡¡¡¡¢£¥§¦¦§¬«§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¦¦§§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¦¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364689:89788:<;<9;;::67899>?@><=@>@:9@A?=A?>AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥£¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB?DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;<;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¦¦¥¤¦§¦¥¥¦¦¥¥£ ¡¡ ¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢£¢£¤¤¦¦¥¤¤£¢¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::78:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢¢£¤¤¤¤¢¡¡¦¹¡¡ ¢¡ ¢¡¢£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ £¦¡¢¡¢¡ £¦¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¢¢¢¡ ¦±® ay ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>99;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ¦ «{C ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9<<>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡a¨¤MI ¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:<>9?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe §lZ ¯nKL¡ ¡¡¡ ¡¢¡ }xjabb\Q<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq ¥Tt¢¡¡`XN¡£¥¢¡¢¢¡¡ ¢¡ ¡
wqgjd\\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢ ]`£eZL¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[[LF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡^_s¡eZM¢ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ab`|scUO¡¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y j\Za{i^PT¡¡}
£ª¡¢¤¢«±·´¹µ±´¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B@AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡ xskX|[TPY
¡§ ¤£ª©³¶±µ°¨ª¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v¤§¦yUOd
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VQQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
¤zb£s
hu
§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974869388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
~~¢vjPqWny{~|
¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¦ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
}rNGIsJ\nov
¢±®©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~£L32;yur?=Vjm¨®²°°µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWMO_^\NUUbQDTM;?9<895875795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
¡¡¢§_EdN=ywgdH56Tnq ¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUJTOOJDPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ªª©§¢¥¨©«©©®K¶@{{hcR_qQ[o¡¡¤¤§¤©«®¬¥¤¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdWOYKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®««¬¤¡¢¦©§¨¢thÅÒ¨I}Ol{Z`£¨§ ¢¡®¬«ª§®¨¥¤©©ª©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_VZNRNQOSe\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨§¦¨©§©©¤§§¤¥£¢b¸¿ª
¯£wGWrRs¢¢ ¡¡¡¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOXO^edlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤ ¢¡¢§¡¦®¦¦o³¶Ö¦¸±bP´£Vd¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvxb_\UYQUW[c_s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?B?:8:>?C@DA:;>=@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯««¬¨¨«¯©¨ª¨¢ ¡¨ª±²¯«££wuxÓ»©¨lU¡ªh_§ ¥¢¡¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\U\hdocmiib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¡ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£ £ªª§¯··µ´¶²¬°lÇĪvZisuu¥©§¤ £¡¤¢§ £ ¡¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxjb[__\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>BE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ ª²·»¼¼ººÂ¹´³t^Q°¯¤¢wnsqwxy| ¥§¬¦¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__amhvkphiibZSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°²´µ¸ÃÉÐÔÑÌǼ¯¡mcRC~~yuomddigjqrqqqry©ÇǼ¢§ª¬§«©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YSai`ftotitdidb[LK>:9898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÄÇÃÄÇÛäã×ǹ¢oWXPDargkrkhceXW\W[`higd`lºÀ¿¹©¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`b_^kcbnxuwnm[bRV\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAA;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅƾËÏÔ˹¥nZPTJC\f]ahdaai\TXUWXY[X_}¡¸¹«´²³©®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklgnurrurg^`\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅľÃÁÇËɺt_RNORG=^l`_eca^dcTUWVTU]§®¯ª¨«¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|uklndomiqxoyjia]gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄù·Ä£jLCEJD=Yaadlda\e_YSPPUa·¹¬®¥¤£§¤ ¥©´±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{wnkihvZgrxszgg^d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÄÄÂÄÁ³VHMF;IX_hmh_\_YZTP]ª¬¸µ²¬©£¡©¬§¬´´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyvuefjjh^konyxcba`^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÎÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈÇÂÈ£w`H??A^]\kd[XVR]¨º¾º¼º¼¬¦©»º¹·¿³µ¸²Áƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqocahvhjjtnyl^d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÌÐÍÇÌÉÂÂÇÂËËÈÇÌÉÍÆÆǵ]T/UY]l_QMW¹ÊÇÂÄÆÀ¼¾´°°°Â¾¾ÁÆÀ¾·¶Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r}xpg`kjwmifvotc]cUWUSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÃÿ¿¾ÄËÈÊËɼ¼ÈÇÉÍÈÃÈÉÉÅÅÁÂÂÅÆNRUTµÎÒŶ¿¿À¿º»½µ³³À¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyspfegdlebknoo_Y]WVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ãº¸¹¼¾ÁÇÁÆ»¹ÈÈÃÅÄÀÃÁÁÀÄÁ¾¼Å§|tu¼ÎÇÇÐÀ¯½½¸¹»»¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfaebacddjcgc[ZZ]YQOE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹¾ºº´À¸µ·²®º»·À·¼ÉÏÀº¿À¼»Å½ºÀÄ¿½¾±saÏÄ¿Àɾ°Á¿º·»¾¹µ¸´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qdabcgjggjfj^VVTYOSLF8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ¹¿»ÁÔ¸¿»ÃµºÇ¶µ¸º¼¸¹¶³¶tÉ¿¿»Á¾¹Æ½Â¿¼Å¸¶·´¸¶¶»»¸¶´·ºµ³¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zyqmeefpjelhYYOKKKRJLHD9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹º»¿¼ÏÃv¨Ì½Ç·¹·¶´·¹³µ±»ÆÇB|ʾ¿¾½¼¿ÈÃÅžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knqgqktfcn`\UHKKDJCCG?:;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼»À·ª¤®°¸»²½¾»Ä¶µ¸µ·¿¾Ä¼ÂÄ×s»ÈÏÂÀ¸®´´»½·¹°½ÃÈFvÍÿ¾½¼ÇÌÇÇÄǽµµ¶Á½»»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢rfljnuoxchc\cQKUHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£°¹½¼²¼¾¼Å¸±¸¹¼ÆÉÊÂÆÉÑps¬ÑÑÌÊĵº¿ÄȾ¾´¿À¿wSoËƾÁ¼¿ÃÌÊÇÅÆÀ¹½¼Ä¿¿¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tpmltlln_c_bbNHN?E@?DC;;::;:8;<:9<>::>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´»Åк¾¼Ä¾·¼À¿ÉÏÇÈÊÉÁqs¥ÌÌËÍÊÆÂÃËÎÁ¼¸½º°odc»ÈÄÀÀ¿ÄÀÊÉÃÃÄùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{z{mmx|`qc[_`_TI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼·»»«Úþ¶¾À¾¾º¦©²¶Ã¿¥xuxÄÆËÈÁÃÀÀÉÊÁ¿»¹± ~slÈÅÄ¿ÀÁ¿ËÇÃÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³µ¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsxthp^\_]ZRFEDMIAD=H;;59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯··²µ³·¹¼»¶»»Ä·mν¶¹À¼¬}nhnmrrw|½¿ÆÀ¹À¼¾ÅĽ½¸±°~ÊÂü½¿¿Ãÿ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸··½¹»±¶²ÈÀ»¶´±±·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|wmu{poj\`aZSQAFIGK@ECI<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÀͲu³½¶µÂ¥iZ^`MR[Znsv¸¸Âº³»·»½¿º»»¯¤~ÀÄþ¼¿»»¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ°µ´´½º¾ºº»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶¼´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦{zsvvwnra_f][UJ=??GG=GCC9:5;99><<9:<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Âɧx ¯µjegVY`IIMPSlv¥°·¾¹²µ²»¹¼¶¹¾´¦¡r®ÉÄÀ½¿¹³®²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtwrl_ca\^OIB?=IDFMD@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·¿Åª|u `TCXUGajVOEJ` ¬¯¶ºµ´²¬¼¹¸µ¸Á½°¡¦s¥Ë¿¹ºµ®¥¬³±¦°¨ ¥¶µÂ·¶´¥¨ª¨°¶³²ºµ»»»µ¸¶°¶Ä²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´¶¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wp|ovsnc^gY]^SONA?JCAKJ@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸¸¾´xoNJ?dYBNwjN@\¯µ³µ²´¯¬»º¸¶¹¿Åu©d§¿¸µ²±¤¦§¤¥©®¹¬««¥¨¤«®¯§°«¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrwsmujl]\kT^\PNHDGMBGNG8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³·¶{XFANYJJXwc@S£¹³´²°±°¹¸¶»·º¼¡±«¤s«°©««£¨ ¨®¤£¤ ¢¦¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wryhutoeUadW]ROMI@IRDNC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²¼ªhN@RxpPIIKgYDR®»±¬³¯®¬¶¶²´µ®¨¦¦¨ ¨©¡§¤¨ ¢¢¡¥¥££ ¥ ¤¬¥¦¨¤¢££«¬³®©®®®§ª¨¬¡ª¨««¦¢£¦¢ ¥¢¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ª©¤©«¦©¬«¦¡x|vzcwmn]QiUPOGPMMCPR@>;>49:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢ª¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬¨½Â«¥½hERQWIJ`JT`cb®µª²´®ª«¯°²³¥ ¢ £¤¨¢ª £¥¨ ¡¡£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ ¤ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£~|uv}nk{diVRdNIHGOSNKNH<E@=2@859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶¶º¹º··»®¨ ¡© ªÆ¿Ë PAswPnKKcfts_Z^p±¯®³µª¦¬¬£¢¢¤¤ ¤ª¡¡¦§«¢ §£¦¨£¦ªªª®§¨°¥£¤¦§¬¦¢¥¢¯¨®²«¦«ª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ |~wy|eyz`bSVaHIKKSTJSQM9?A67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¤ÇÇWSJe£Ze~or\Qkc[d_\j´°°¸¬¦¡¢¢¥¥© ¦¤§®®ª¦¢±££¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§¡ £±®²±´ª²®£¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvsilf[S[ZMQKOOVMSMB7>C78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢«¤yUirvupcvvXWc`cgXWVg®¬¯§¢ ¡£¢¤ £¤¨¬¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½¶¾°¬±®©ª´±°¨«¨³µ¸³¸²´¤ ¥ ¬¡¡¢¡ ¥¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xvjxu^m[RaIRVHFVWJCMH=KI8F<77;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©¨®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¢¡ £np`cXL[SZMLPXRGLLG¬ª©¥ ¦ §¥°©¦¢ª¶°µ²°¶¸½¿ºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«®±¹·¼¯³°µÁ¼·¾³³µ¢¬¢©©²©«¨§¨ª§ § ¨¨¥¤ª¢¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vrmiwmhn\X\CWNJGMHCFN=>L>4<:6:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©©ª ±¢·¤°¦£aW^e`WMQG>>?CC?>BQx©©ª¦ ¢£
«£«±¯¹±±°±°º½¼¼¹¶¸Ã¾¿Â¿¶º»Àù½»¬®§±±Â¶¸ÂÆÀÈÊÀÉ¿°¹¹½¸Â¾¸´»ÆĽü¸´ª³ª³´¯³®ª®£¬¨¶²£°¦¡£°±®°¤¥¯£¡ ¡¦¡¤ªª £ ¦¨¡¢¤££¡¤¦¢¤|trklurqhW\QFUHEJPI?EB4FH96<>7;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ |_^e`QGD<C>E<?96N~ª³§¤£¢ ¥¬¦xl¥¢¢««²¼¶Ã½¾²»ÁÃÂÅ¿¿ÂÆÆÅÃÈÂÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÆÌÌÌÒǾ¿ÀþÇƸÄÊÉÄÁÇ¿º´º»µ»·°¶²«»²¯¼·¿»º«¸«ª¸»µ¼®®¸£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢
~zrkdioxkeZ\FLMEDTMEBE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<@?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡}sjaWNE>IY|obB=\®¬ vrpmp¥¬´¸ÄºÍÇ˾ÂÌÍÍÌÇÈÐÌÌÌÇÊÅÅÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÍÓÐÓÓÌÊÁÆÇÆÊÈÏÀÉÑÍÇÆÈƼÃÁ¿¿¿µ¾³¿ÀÃÃÇÅÇį¿¹²¸½Äº¼¼µ®§§®¨ ¢©¥ ¨«©£¤¤ £
yusebgrog^ZZDOMCEPIDCA55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>9;AA;;>786:;>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £kf]TID@?K¥ ²£yqrokx¢¶»¹¼ÊÁÓÒÒÈÍÎÑÓÑÑÐÐÑÑÍÍÎÐÄÍÔÕØÑ×ÍÆÇÉÌÃÅÊÏÊÒ×Ò×ÒÕÖÓÔÈÌÇÌÍÉÓÍÎÓÍÆÉÊÊÂÆÌÇÉÉƿó³ÈÅËËËÏÇÊ¿¾¿½ÁÇÅÌÌÉÉÀÃÀ®°³¨¢ª£¦©¬¤¥¦
{ruvgcgvjeVXRDNG@IQC>B=:22A<E<78<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡cTLJDC?CR®Ñ½²¯¦ ¤¡}xqkebhrpr{
upmqro¼ÇÑÑ×ÖÕÑÖÍÔÖÖÓÓÑÒÔÔÒÏÑÃÐÓÖØÕÕÒËÉÎÐËÆÍÒÊÒÕ×ÙÖØÓÖØÍÒÊÏÑÌÏÑÍÓÐÀÉÈËÄÌÍÌÏÏÆÇȶÀËÀÒÍÌÐÇÊÈÀÄÃÈÏÍÐÑÏÍÊÈ͸·»¨¥«§£ª¥©¨¨}xsvpcaerc]R\JKGAFIJ?;A8>5586;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¥¥ ¢¢[I@ADAFQv²¯¦ wica____^__]alusppnlpouw¸Õ×Ö×ÖÓ×ÏÕÔÙÔÔÎÏÕÔÔÑÑÌÐÍÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐ××ØÒØÒ×ÙÕÖÌÏÏÉÍÒÌÎÑÀÇÄÉÇÏÎÒÑÒÈÌÍÀËÍÆÔÏÌÎÉÅËÇÇÉÌËÔÔÑÕÏÒÌÓ¹ű¥¨µ®¨¨«¥²¨°³¬¬
|zqstmacim_VQ`JJCECSM@<>43:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><?@=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¥®·¨«·×ÔÕÙÙÑÎп¼Ìɶ¾®§ª¨¡£¬fC8=>DXª¨}qecb__a_^a`^a`_`emppmknptyvi|©ÍÔØØØÑÅÓÒ×ÏÓÎËÒÍÕÔÑÊÏÌÓÖÒÑÖÍÏÕÕÑÅÑÓÊÐÔÕÖÎÓÑØØØ×ËÈÎÄÉÏÍÊÌÀÉÁÉÊÎÎÐÌÐÎÎÌÏÏÈÌÐÑËÎËÃÉÇÊÍËÌÒÓÎÓÒÑÐÐʽȹ°®»¹µ«¶°¨¸³¿»±
zvopokadnpaX\[IFFDMYE;@=33<<87855;>@=9<<8<>9<@;@:=8?98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÁ±©¬©¤²{HFB;W¡k^^^adb``aa```^__^\bmqnnrrtuzqbmÇÕÔФÊÏÎÓÊÍÎÄÍÊÒÒÎÆÎÌÍÔËÎÒÍÊÖÖÐÌÑÔËÌÐÑÓÊÎÑÕÒÕÖÊÀÊÁÆÍÃÈÊÃÍÄÆÉËËÏËÎÍÐÎÔÌÆÉÐÍÉÇËÆÇÂÆÊÌÎÑÑÇÐÏÎÎÌÐÅÇÁ¸¹½Ã½ù²²¾°»Ãĵª¥¡yqrkmh``qhYXhVMGLIQQB;D?;68:8:;57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±Ç¸ÊÕÖÙÚÛØÌÌÏÈÖÕĵ¯´¨ xlopw|ebbb`]^acb`__`aa`_][]gqqpqrokqytenÏÍÖÉÃÈÈÅƾÂÅÎÎÇÅÆÍÊÑÈËÍÍÅÐÒÏÍÌÔÊÇÊÎÏÇÇÏÒËÐÏźĿÆʽÃÇÉÎÅÃÈÀÇÎÈÄÍÊÌÐÈÅÅÐÉÆÂÆÉÅ¿ÁÈÍÌÌÏÃÊÌÉÇÌÐÅÅÈ»ÇÃÉÉÂÏÁ½¼¿°ÁÉǹ½ª±²§¥¢£xoudk`^fqa[W`GIHGIMTG?J=64355==48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼¹ÌÌÆÐÕÕØÚÛØÐÉÏÏÑÓÈ·»»¤¶~g
¢ª
}~s_[^]^`^`cdc_]\^_``_[Z\akrpnnijmnzgUÀ¢y»Ïø¿Âººº¸½ÈÅÁÃÀÃÇÊÈÈÉÇÀÅËÆÈÊÍÉÄÁÊÉÁÁËÏÄËÈ¿¹Á¼ÆȾÀÆÏËÄÀûÊÇÈ»ÉÆÅÊÁ¾ÂËÆÅľƾ½ÁÄÆÌÆƼ¿ÊÃÅÇÒÅÁÉÀÊÊÆÈÆÐÃÃÆîÄËÇÃÊ·¿¼º³©¬¤¥¬£¡¦£ |wsufj[anmZ\XRDLGBGDLDFR@54335@=3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¾¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÃ¾²°¶l^y|z
uxurp_Z[]``bcdded`[\^]^^`[YZ\bnqnjhinmsyVj{«ÃÅÀ®µ¸°±²°°Á»»»¹¸ÀÁÁľ½¹½¿¹ÄÉÅƽÆÀ·»ÃÈ¿ÁÉ»¶»»Åÿ¼ÂÎÃƾ¾µÁ¾Ä»½Ç¼Ãºµ½ÆÄÂ÷À¶¶¿¿¼ÍĽ¶ºÈ»¿¾ÌÄÂÆÃÆÉÇÉÆÐÆÂÌȲÇÉÃÎÌÀÅÿ¼²·°²§¨¨¹°¥°ª¬zwxkeh`hodV^YJFJFHKAEBFJA9:658853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µ«·´²¡¦¢·ÅÂÄÈÎÒÊÊÊÇÍÍÎÑÈÐÆÕÔÕ×ÍÊÏÅÉÅÇÁºÅ½¬®¦`cvx}{ttc\\]^``bcbbdeb]\[\^\^]Z[\]grplfelmo{x^fǹ¿·¬¯®¥¨¬ª¥·³µ³²³´»µ½±·°µ®²»Â»Áļ¿º´²º¾À¸È¸´¼¶À½¸½ÇÁûµ¯³µ»¿´Å¸»µ¬¹½¾À½±»¶°·º³Æ½·¯¼¿µ·µÅ½¾ÃÆÀÄÆÆÇËÅ¿ÆÆ»ÇË¿ÏÉÇÃÆÁ÷ý½¶¹¾Ç¿¬µ»µ·¶ytxggebkn^V^`FKHHJGBDAEF?=:566633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐËÍÈÉÈÊÉÊÄÐÍÒÏÍÅÇÁÅÁ¿º¸É·«°[gozx~
vw|sh]]]]_`_`da^cec_^\[^\]^Z[[\_komgehklo~mhº¸¶³®¨«¥ §¥©ª±¬©«©³µ°²¨¦¬³»º¶Ã¹º¹°ª´¹»³Â¹¯À±½¼»µ»Ç¹Ã·ª¨°²À¶¸½°±¨²³µ»¼«®¶§®¶®¼²±ª¸°®»®»¸»ÀÁ¾ºÃ¿ÆÃÅÀ¼ÆÁÇʸÅÇÅ¿ÇÃùÄÆ»ÆÉÌ˳¹Â½»³tvwki`bliYWW[ALLMJEAC?FA:::996854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÄÏÇÍÁÂÆ¿ÄÄÃÃÊÂÉÊ¿À¼Âº³µµÃ®ª°[i~{x}
y{wn^]\\]_`__dcbdcb`_]Z[ZZ]ZZZZ\dmnfefgikpz·¯´¬£¢¤¤¢£©¬£§¡«©¬«°£¦ª´¶±½¸¯·¯¨¸´³¼·³½°¸¹µ²¼Á²À¯¥©£«±³³¨½ª«¨«¬®µ´¦©®¡¥¯©³¦¨¨®¦¨·¬±³·ºº»²¼¾¿¾Ä¿µÁÀÇÈ·¿¿Å·ÅÃÀ»¿Ä¾ÄÈÌÊ¿¿ÄÀÀ©stsji\aodWVXPHZSSKFFE>?@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃǹ¹ËÂ˾»É¶½Ã¾ºÊ·ÁÄÁ´¶¼¶±¯µ¼©«cmz}~xt~|swe_]\\^_`^_ccab`a_]]\ZXY[[XWY\_fkecedfhlq¥¤ª¢¡¢ §¢¢¥¥§¥¤¦¬²°¶·§°¬¨ª´«³¹°¶¶®¶º³°ºº±¶¤ ¤ ¦±¨¬©¹ª¥§§¨§³ §§¤¦¬§¤¡¡±¬²µ³³°µ¼¶»ÁÀ²»¾ÃÁ±¹¹Â³À½Àµ¸¼½¾¼ÂÇÄÃÄ¿ÀÄ yqlbf`ko`UY_HNhOTHFKF<=@=:;;826536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;>97776788666;::;9:;<859<:>>@;ȵ¶½¸ºÁº½¶ ¦º¶«³³»³ÄÏÉËŸ·ÇÀÌ¿¸Ê·»Å¸³Å¸³¿À¬¶¼²¬¦¯´¡£ir
|xusomjiipi_`]\\\^__acb````^\[\\XYXXXVX[]^dbadeedhjl§¥¢ ¥£¥¢§¢ª¯±µ¤¨ª©¬¬¤´¸¬·°¬³µ¯³µ¯°ª¤¢²¥¦ª¸¢¦¦ ¨« ¥£°©¬¨ª«¬°²¹¯¸¹º°¶¼»º«³²¹³½´·²±¶µ¿µ½À½Ã»»½{sl_e^ddXTW^IW]KPGJJGA<??A;?<05635:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»¸ÁÁÁ´¤¤¤¦À²¯¶¬´·ÅÏÈÈÀÆ»»ÃÃϾ¹Ç¸¸¿·²Â´±»»¬¹º±¢©«§m~
xrmomkb^bff]]^]]]\]_`abccba_\[[ZZYXXWWWWXWZ]accddefgiq«¦¤¦¡¤¡®®² ¤¢«§¡µ°±²¬©°³¨º³§¶¡¢£¡£¢ª¶«¢£¦¦¦£¡¬¨£¤¦«³³ªµ°²«²¹´¯ª¯²²³·³®©®²¸°º¶º½¿·³±zuf_f_[YVSZUK[QLJEHKIC=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ¸½¿¶¾¼¿²¥£¥±Ãµ¶½´¸ÁÌÈƿŶÁÀÇζÀý³¹¹²¿¶±¹»²µ¯£ª¡xxoqtqhediec\\[[]]\[^`a^__`^\[Z\ZYXVWVVXWXWUWacdbbcccfissGM} ¨£¨«§®°ª££·©¡ ®¨µª§§®±¤¸°¤· £ª¦¡¹°£¡¤£ ¡©ª¤¢£ªª±¨´¬ª§³°¥«®³±¯°¯¯§¨¨²®²´°¼´º¸®£zve_aWYXSRTKM^LPLGHLKE=@>=B<:7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´ºÂ±¾·½§§¢ª»À½À¹®´¸ÁÌÇÅÂýŸÈ̲ÁÂÁ®¼»µ»¼µ¹¹°¯°ª¡©|wqilrtphhedfa\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWVUZbbaab`acdkregn¦¥£¦§¦ ª¯¦¡£¶§¡¡¢©³¢¥¨¥°¦±®«µ¡©¡¢±±¢£ §§¡¢¤¥¥«¤¥°§¥£«¬¦¨®¯¯«¨ªª³¦¦«¯´±®¼¶±¯¯{xseb\[]XNLQHRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847763321./2556;:8;7876<;:;;A8x»»±¶½°»±·¬¥¦¬¸»¼Áź²¹µÄÉÉÀÂÆÅǶÅijÁ¿Å«··½¶½º»µ²¬¨£t~vncafihfgifil`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWTTVVRTRT__^_`]__aci
¡¤¡¬¥¤¤££¢ª«¤¥±ª¡¡¥ª¨¢¬ª©®¢¢¢¢«©°¢¡£¤ ¢ ¢¤¥£«¥¢¤ª¤«¥®²©¦¥¦¦´¦ª¨³µ´¹º¯ª¬sqp`[WVVRGQOHZ\ORJTKSLEGIC8;;=<9667:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:8698598989;9@9{µ´¬´»²°«±¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÉÌȵɼ±¾Ãɱ¸Áµ¼À¼´µª¬¦r{tiijlgjlmkjle]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSNPY][\]]]^^acl~¡§¨ª¨«§©¦£¥¯¤¥¯© ®ª³¦¦££¡©©¡¡¡ ££¡£¡¢¨£¢¨« «°¤®¸¥£¤£¬ª¨«¯´·²½µ³«®
uti[XYSURFXLQ[XMUOPLQRIOIB=??A?=75799<<977:79:;<=>;7;;:=67:;8976989:6:=99577571141-+/434988::8::748=8?9~³§³·®¨¨¯®©¨¬·¶¬¼Ê»¶¿¬ÌÆŸÀÎÏdzĻ·»Âȱ¸¿·¼¾»³¶¦© ztvwnmhmmmpggifd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNOQYYYY\\\]^_dz|y
ª¨¦®¬©°¤¨¬ ¤¨§®§ª¥ ¨ª¥ ¡¤¡¢¥¥§©¨ °°¦±½§£¬´«®§¯´°¹µÀ±®°«~rtcVTUNQJGVPRRLLXNKMORGNKACFDC>A75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8´¬¦±·ª¥¢±«ª§©²°¤¶Æ´¹º³ÊŹºÁËÐʱ·¸¼½Àñ°±·®´´»³´££vkglnqnqjokdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVTQMNMRWXYXYX[[\`iztyo
§ª¦¦«§ ¥£
¤¢¢¥§¡ ¢¢¦¤§©§¡ ´²¨³¸¡£·¬ª®¤²²¦µ»µ«¬±¢zsn^NQQMODNNNPKFNNJJNNQIMJAHLIHC>958889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12876:999984988A7w¶§¤¶°¤§¤ª¥ ©¦¤³ª¢²Ãµµ²³ÆÅ·ºÃÊÌƳº½´¸À¯®©°¦®»¯ |n__frpuqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQNMKLSWWVWXXWZ]allpj~}| £¡£¤¡s~{ £
~~tz££ ¡¤¤¢´¯¬°¦¸¦¥°¡±®±¼ª©¯©xtdVMRPPMCSNLPMBPQHINSMHJJDKMFKK=749888;;69;7:<9::;79?9>@79:<89764445874312485/0102)(,-02764789::66:87A7x·¡£´¨¦¥¨£¥¥¦¦¦²§¦´Á¸¯´°Éĸ¹ÀÎƾ³¬ºÁ¬Ä¨¢¦¦·£ ~xfWV_gfighnciigb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTQMMJGNSSSTUTVXZ]ifkgywpLVo_;Vo|ry{}xqp}¡ §®©©©³¢¦«¨´£©¢tn`[NSRWLDTJPMLFNOIELQMKOJIMPFIJ=7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· ¢¡¦¦ª ¦©§£ª°¨§´Á¹°µ°Ç¸³½Ï¿¹¯®µÂ§ªÄª¢±£~sv]PLQUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MNQMKHFHNQQMORTUXY`jhbu|oM@>~{
y`JQnx~m~wuvxpQ|~yvgw~
¤¢¨©¥¤°ª¡¤¤¦ª¢ª¡¦§wnf^\HQQSMIUMSILKOIHFJNLMTKQQOFJD=769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.115221/,')+*,4833989:99::::?9w¶¢¦¡®¡§¨¥§¨¯¬ª¶¼¶¸·³Á»¶§¹È¸¶¨¨µ¶ª²¼§©~xqoXMKMMNLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDCINOhYNQSTUZnnpxeeYRr}
{{uxsouptz~«
z{hv{prmxx{{wsrxhu
||© ¡ ©¥§£ ¤sib]]JWPRHKXROJMLRJJJLPHLQMRTMFIB=78;99>=:;<98@?::>=7==79937785675251472/2.,./200/-+(().12721987:8775:<;7v®£¡´©¯ª¥«°±ª½´²»¸¶º´±·º²ª¬©¨²¯¢~ww|wpojYKHIHGEHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LNQQSV^uytbszexuw~|q{v{ok~|tz|tfu|lohs|myq}qmvqhq~pD
wwz}{u}£¡¥xongc[XXUQJSUTOPNPVKNKOOJROIOPLFD=;79;::?=9<:99??;8;=7<9999266856633611224.,,-..-0-+*''*.1362/876966527995y¦ ¦°¬®«¨©±¯±«¼¸«»¾¸³¬§°§¬¥©¤¡yvq|mupjmjXKFGEA@CDHLLMQRPQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zYJNOQTX]fppi
¥©À}rwazwmzwy{
olxsxijq}Ingw~mjdly
krl|nr|imps
{~{wpttyyp|pjoooYVXTRRYORUTRXUMNHMKMOKCINGF@:99;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¤¬¯¢ª¨µ¯®¬´¿«¼Ã¿¥¢¤¡¡szuotlpleljYNDFC@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORVZQY[_¦afpwc|nl~yu
tlts|ijLy
f1vrk}}tfeu
filukp|hqq|n{t~}qqoumwyujyyxlkpheXR[XYY[NPUVYXNIHEJJHGB@GECG=998;9:9<:9;:::@<9:<98>787715234533645031.**+),,++)(+'),,226,,4775478iO8;5m¤¨±§º¯«²°Â±»ÃÇ
zqtzpsqopdpg_TFIC><;9:?@ADCEGJLOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQULBIQIb®²pyuj{kpz
yr txst5p¨¡¡¢
vp{|t®hgbjnrmpuioXupvm{}nrnp{svnbu
ux~}|srqm`\]^\ZYa_RN[ZXWLHJFIG?CABH?CD=;:7=;:;;9:99;:?<88=:8;66651121253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥´©®°®Á²»ÁÅ|nul{uxxlwnwcj^IPG=?7449;:;=>@BEHLLLLNPQRTUVWXZXVUTSPLE<5*K[@-gI94/?©®_GLMNPL8DNRSDJs~zzt}ku{|~}u¡y~
aªzw~s{]dqtz|wmhjbyo
zoxu
zptzxkni]v}|
}q}vw{|xqtugh`[\^S\g^WQTX[UGJJDKG?F@DC>AA=;97<;;=<::99;;=>79>9985653244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¦ ª ±¨¯À²»Åºzvk}xs }}p~zhvkRXL@E211376688:<>AEGFGJKMOQRSTUWVVVTSPMF@:2= #c[5311i?GoIFILMOQLKT\XRKgzxzp{y{~v¡¥¬©H®°®©tm|~hghyn
qHlwryvhmk_v}
yzuv|xmow~uusm\^^\cdXgf\UPPWYPDLKFOICFCCA@CA=978:::;;:888::?>6;>7585773344236656778;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|}
¬ ¦¸¯³½³}tp~~}}~¤
x~sx_cWKB60./23124668:=>?BEGHJMNQSTUTTVUSQOGC?80,#[??84.]ps£UFIKMMPW`XoY[]h
}
¡¦»±§»Çè¡¥|qw
ihptrw{v|muuf ª¢zzyogkx~|ule^[[^j^bg`ZOLNXRQIPJDNGCJDCADDB<:87=<:<:88778:==8<=68656623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfwz¤¡¬¦ª®°¡xw|~lpj]B@4--//..02234778;=?BDHINQRTRSSTRPOHDB<87/9C><<63.lMPHILLKNV`cfflt £ª¥£«©¶¢¨ÁÂǯxº|¡
¡
lpuwqm
q ¤´¨¢}kjj|uc_e`[hl^ll^WKHNRQMLLFIPCDNFBCEFC=:96=<:;:987767;:6=:785456344566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYoouqv~§ ©ge¤~y}
xx~gMR>/..,/.-/000212467;?CENORTPPQSQNPIED>;<:DF?><752<?R5HHHLLMNR^n{r|¥¤ ¡§¨ª¨¬©ªµ«¿«¶ÇÈ·ÈÐϾ pi«©
¦¢xz~¢{wª²|£¡¥µ¯§lss}~sja^b`bhd`hg\REJKPOIILFFMCHLFFCBGDA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppt`m}aw}{ªªBD}x|
w^bP460-1/,.0/./..0015>AAMQRSQRSURNSLEE@<>=FG@A@8662<9;FHGIJNOQYm
v ¤§²¼·£««¦¨³«¯µ±±»±³½²Ã«ºÉ˷ÿ¸¥¢°³¬ª£¥¦ £¦¢«¨¥
¤¡ «¡¤¨±£¦·º ¢¯¡¢£¡«®«²´¡¤©yz~ibi]fc_ed^gg_[OCIHSNFHLFJGFFHAKFCFFA;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLhbWinXzv
ÚÈsV|z
qna@E64<2/110-,+-0.-4?CAMUPRSUUVUN[PGGD<>>FHCEA7;<5C;=FKIGHQOPW¬¢±©°¿Æ©²Åµ«²¿²·½µ¿´Á¶»º£¸Å¨µÈǵ½¹´¨£´°±§¯«¥v¤¡¬²´ª®¨®¶»²º¬°µ¢±¬±µ»¶´®´¦§£§©¯¬±¸·¸¦µ¨¤x
w[ceWgcbdaag`[TJDDLUQHIJDIGEA@@KDBMG=867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AFWQJL[YQbbWyup}u
{¿»£¼´yzxn]V@EN<6:45AB764//6CHBQ[OQUWU\WP_UIKJA?>GKFFD;>@7D7?BJJEFVTP^£¬¢±³Á´¶ÀËȵ»Ä½²³¿¶·Á´¿°·t±³¦ºÄ¤°Æ¹°²±´¨¤µ¶ª± ¢¢¥°®¦«§¤ ¬´»¢¨²ºµ¼¿Ì¿ÅŽ½³Á·º·¾¶º·¹¬«°¥°©½°¼ºÁÁ«¹§©~~lXdbYlfkfX\cYVSIGFLQGCHIAHD>?BBL@@MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALQVSYUZvjo~nzsxb¹¡£{z|}}wzueP\dGEK;Qca[^SF?;HPEZcQRYXZgYT`_LSPEA?IJHEEA@D<E6B>HGJLSYT]®·´¹·È¾¸¼É̺»À»·µ»º¶½³¹±Å`u±¤±ª½©¥¨«ª¤¢²µ «¨ ®¥§¦¥££§±´¨²³½¶Á¾ÓÉÉÓÆÃÅÌÂÊÃÀ¾½¾»¼·´¯¸·¶Ã¹Å½Âǯ¸©¡«¤§µsacc_Yc`jgSX`VRUIEENK@>GD=KA=B@=F>;H@796379>489:57045/26389374426?8@>GKRTSQPOQQPJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRKQ]glkp
slrrsÕÀµ }~x{{y~t}zkfpuY]\Pedb`ed][XW\MdmURmm_n_XgdTYUJDBKKIFHHHHBI:D?HKSTU\Z[¸¿¸½¶Å¿º¸Éʺ¶¹µ·¹²·´³®µ¶du§p^¢¬ ¢¤ª¥¨¦ ¤¬¥ª°¸°½¹ÔÑÏ×ÐÊÌÒÌÏÎÊÆ¿¾ÂʽÁ¼ÁÀÄÄÅʾÇͲ£º°´®«¸º{m_a]Z_bZdcQ[`SPKCAEFE<@E>AHB@C=:E>=J?47535;=468977022/24169775555D3ELM>51/006:477@IOI;-&**(-./,@M+/54mI0Ht?>BD@CDFKODQ[Yh_onlotu³« ¡
~|s{
{ts{ylmu{hreiligjji`fiilZms¤¼g[og]YZTHKNPJKPKSQILAJFJO_^afia¶Æ°¸²º¼´°ÄƵ¯¸°°»«²±¦ª·«µ§§N¦¥¡§¬¯¨°¨´´ÔÔÔÖÓÌÐÓÕÍÒÏÌÅÂÉоÉÉÊÉÑÇÌÍÂÏÑ·¯Ã¼Ã¹¤µ¹Á¢pe^__ZaXZgZQ]XOPBBHEBH;AC>AG??A7;D>@H=46655;:687654/10146278875367C5B8?-0-1349=97,.,1;FK=),(.0007K?-46TW0DwC;B>EBACJM?UYReVsgqoyy ©¦}|p{r}qxulqx~qznxsmipmcimpxiw|~Ë¿Áߧmcxnc[b`JPRUNY^O]\NPNTPTT\nmvq·«³¦¯µ©¬»¿°ª´¦¤¸¦«® «´£°¦«¬¥¨¢¬ÏÒÕÒÎÌÓÔÔÏÔÑÎÇÃÔÑÇÍÒÓÓ×ÌÑÑÄÒÖÅÁÎÇǨ½·Î|pg_d_WaS_[PQTQOH>@FABE<@A>ED>??:==<<JA45465<888664412/03526768533;=<E=@11+/249>5901022-2DN3)/3.32=N238C}_2AtD:==I>@CFH<UQMNZu
wlwp}~¡¡
y
~{r~zu
ovrks}{w{sxrksrioqzyqz¾Ë~±vrvhak]CZZ[VecXdjSX\]`c]cwz}©¤¤¡ §¥ª¯¸ª¥³¢¡¡£¡§±¦j¢~¨°¢¡¡¥¤©ÉÍÏÈÂÌÑÔÒÔÒÎÓÍÆÖÒÌÔØÖÖØÔ×ÕÉÔÚÍÉ××ÑʬÃÂËupebaYUZT\QKGJJJ@;:;DAD<BC>GB>BB;<9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/--;R017/532FD28>nb5=tM99@I<AD?A;OLFJXpu}hsxr
x~ws{}wznwpmuux}t
|ylvtn}vtx{µ;@Å¥~|ieWICfcecgjcmw[^fhknhn ££¥±£¤²¡¥ ¨ £±
y©£~«³¨§¾Ãƹ¶ÆÎÒÑÒÐÌÒËÈÔÎÐÕÚ××ØÔÙØÍØÛÎÉÙÚÑÕ¾Ê˵zypf_[SWR\WFGJIEE=:7:@@B:FD?DCADB;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BS39254/7K75<`bA<svV87AH:?C><9QECJTknnpbpqt|~|x
zxqz{uy
yp|oozq{qnzuw}|t~|¯sXªÂ¶pmb=^hrpqpnxvehoruxqz ©¡¬¡¥«
}
~lz|®ª§¯¶½©¾ÇÌÉÉÌËÐÉÃÒÊÔ×Ù×Ø×ÕÛ×ÓÙÛÕÐÚÚÑÖÈÔË{}jj]\QTT`ICFIH>A>=7:=?;=G=?AAADA>>:87DB755479.556435532323647553458EBDCEB56<FNSM[nfcnskaV>,4LG865434BF4=W_hLux^8;?F<<B<99D>CGRj^mdbfkvqz~~{|~
vyn{{ty vusu}soou|
zv{·Å¤ÁɸwpeNfczw¢xyv{{vm¥¢«
z}¡¼¡©¦¦®¨¶¿ÀÁ¹ÇÊÎÎÅÍÉÑÖÕÕÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÛÆ}{ikgaUYVWNLENC;==<8:;=9=@6=?@<?=<9867CA6455=80665547745613854564557HH=DJE7925;H>;::7IP]ZRUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Xea][htzylwvz{~~|z}
zzu}tm|}~t{~x~xnt~{~z©Ã¡½¤}}r~s¦
{hGq ¤
~¥
¤¸¢¨¡¤¯·ºµ¬ÀÆÊÐÈÇÌÏÓÓÒØÓÕ×À×ØÙÛØÚÚÙÙ×Û¹{{znkhYb]TPOIDLB<<>99::99;=6?>><=9:;;37D?7378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8689?=CQSRX^UXfmmmiqry{z|{z|{}t
yrzsm~~w
¢n¨
z |}£¢ ¤¯
Wr«\¢¢¢
¤³¡¡¨²¸¦½ÂÇÍÈÆÏÍÐÌÏ×ÑÑÕ®ÖÕØÚØÚÚ×ÕÙÙ rwjh_^YUYYCAIC?>>:49:;7:;:3;;?=>7;9:0:G=:37=@50677255?65;55858:57735HR7GOK994=EJB>1FCLB98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcbzma~omwxyz|
{{v
sp
zuvvt~¦¤¥¢¨r±§
¢£©°n·
ÄȲ¡¥²d¤ÍÇ
ª££¤¨¡£³´¦£¼Á¾ÇÅÅÉÈÉÂËÓÍÍÔ©ÒÑÖÖÖØÚÔÒÚÎukf``_PKV\BBGC;A=837;<:8=649:<:82?9929I:>67BC32:96264>=4;>6949;57944JQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBeGu||m~xz~z~vv{lo~y|wx|~£´¨¤ª³¡§ ¥¤¯¢¸³¡ ¤¯¢¤§©°¤ À£É¸«¢¥²
¨¢
t²¤¡} ¡¡±£¤·¾³ÅÇĽÃÿÆÎÊÉÒ§ÎÌÓÑÐÖØÒÏؼu|x_bWbXRIKOEBCD5>:76:?;<7=42669774=5;5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=89567=:JFDGM\\YJha;Hzzm
y|x
}px|}|osy}{x¨¼©²½°¥®³³©£¢°¬µ¢¸¥¤©·¦¤£©ª¤¯±© »»Ê¡i¶·ª°£«½¤^ª³|}´« ¢¡ ¥®¨¢¤³¸«ÂÈĶº½¼ÅÈÈÂСÆÉÍÍÄ×ÖÐÊÓ£s}k_[UaSQGD><CAB8?874>F<<6<35355454B39:BM:A;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPfHa`bpJ@~r|u~m}||~pww{«ÃÀ°½Æ¼³´Á¼´¬«³¶¨²½«»£¨¹¸«¦¦¢¢¤£ª¯²±ª£¢¥¥£¹¯¨À»¬²¹¥£§}½°z§°« ¤¬¡ §§¤¢¤°³¦ÀÆ𰻶ÅÅÿͧÇÃÇüÕÐÌÄÊvvd_\b]OLCL@EG>A?B<:4>A==5=6>333242A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\hF_ig[]\{un~{~q~zz¨´ÇÉÀÂÌÂùǼº¯«¹»²¶º²À¯¥À£«°¼¼ª®«£¢§¬¯µ±© ª¢°³§¢ººµÁ»«¨²¤£¨©ÄĤz¡ ¥ ®ª¡ ² ¡¤ §¤¦§¤¯¥¿Ã®¨·µÉþ¶Î²Ä¾Ã»³ÑÉÈÁµw{o^[^lTNIDMKKI@A=BD<5AD;:3=8B332263A05IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBg\Me\fTcjyr{wy¡¨»¾ÉÈÊÂÒÉÊÂͽÁ³¼¿§º¿½¼Ä¸Á©¬³¼½ª°ª¤¥£¬®´®¶µ ®¦¢£´¼©©¼Á£¶¶¯«¯«ª¬ª§¥¤uy
£¢©¥|£ ¢µ¦ ¥¤£¥¦¥£¨¨¢²¬¨»Àį¥³·ÌÀº®Ã³»½Á¹Â¿p{c[Y^]MMNKGDCHBAACK:4DH:;4<7F.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQF7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>lI_XaZdeWx
~¡®§£Ã¾ÉÄÈÆÓÍÎÍ˼·°º½´½Ë»ÃÁ¶·¼´À¹¼®¯¨¡©¨¶®®©²·¬¢¨¢«··©¥¯¾Ä±½¸³§ª´³®¥¨ ±Å§}}ª¥ ¢¡Z¤f£³¥¢¬¬§§¡£¨¦µ«©º»Ã´¦´µËÁ¸ª¶¬³»¸®¨¸º¼·op\ZVWPGLTNK?AHDDHFF85FM;>7>AK.32025B55PWN<LFKRLOGGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|hV<>@BFBsFiIRfcMF¦¡¨¥¢¯¾®¡Ç¾ÆÅÈÇÎÎÏÒʾ»¶±»»¼¿ÏµÄ½·¹·³²¶³¸³¬§««¹«©¨¯¯£®¥¨¤¥µÁ°«¬´¾Ã¹À¸³§¸´·²¯¤°¯¤ sÁ}±¥£¨¡ `J¥T°¯¥¯¯¦¡¦¦¡´©ª³¼¼»«°²ÇÀ¸¦¬«±±£¡²²´¥sqg^\PSMFQQPQ;HKHFGAC=9KT?A:=EM/7544:B34NWN<JKNUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@CAF3>58JKCA=C;5EA:A?>H@5*B52,>c]g:35tde@R7}hX<:BC@=REWSsbVFH«¡¨®§
£¤µÉ´©Ç¼ÃÄÉËÉÈÌÎǾº³¯º¸ÀÁ͵ȺÁ¹µº²¯¯³´§¤ª´µ«ª§¬¤®¦¥©¬ºÀ¨«·¶¾ÁÀ¾·²²Ã°·¼¬£®µº¥¥u¾®¡ ©§ ª¡§mu¢£²¢«©ªª¯¦¥¡¥ª¢°§©ªº·¾³²®¾¹¶ £§¨¥¦¬©©fhc`SMMGIOJUL=MEMIJ@CD<QU<AABDO18=77?B75UXN?HNQXRPQTJQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CC:9C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW<:=..SaMVH~e^HF¬¡»®ªª¡£¬£¤¶Ç½´Â»ÃÂÈÉÅÂÎȽ¹²¯¹µÀÃʶƱÁ¼µ»¬©¬°££ª´»¦ª§¬ª¨¯¨¤«ª¾¼¨¼´·¾Æ¼¶µ¸À°½¿³©µ·¬¿¥¢¡¼ ¶©¥£ §¥³¡¥¨ª¤¡¢ µ°¥¦±««¥¤ª ©¤¡¡´µº¶¨µ²²¢¦ª¡xc_a_LIFHNQINEFGBQJH@DGAVSDH<AGQ1;B7:BF79]YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:h]FDCpbGE¨¤Ã¬¤¨ª¨¦¬¢«·Å¼¿·ÁÂÀÈÄ¿ÍÆ»¾¹²°¹´¾Ãȵ¿°¼¶º·§¤««¡¡«ªÄ¢¥¨¬¦«¯¬¢ª¨¾¸¦¾°··Æ·´¸¸¾±¾À¶´²µ¯¾££¡¡¤¢£¾¤¨©¬ ¦½¢£¢©« ¤ ¶¬¦²¦°¨ «¡¡¥¤«±µ±ª¥ª¬ ¡©ie\b^PJHKOLHEDI@=OH@;FIH[ROK=HNU4BF8>HG5Cb[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0--0Mv\4KZ5,MnW<-=)#zbQ5CKQ9oRF<KxfcXN££Å« «¢¤¦ª«¶±£©³¶Å½À¶À¼É¿Êȶ¸µ´±´´·ÂÆ·¾±¸´º¶ §¬ª«¥¤Á¥¡ª ¤©°¢¦¨½µ¥±»·¶µÃ²²·º¾²ÃÀ¸¸´´µ£¤ ¬¡¨¨ª¢Â¬¨¬¦ ½¡¤«««¦ X¦¡ ¹ª¦¶£³¢¡± ¢£¥®³«©¢¢¥¤¤cg\eaMJKKOFEAGK>=IA99JJN]QQI=LV\8FI=DMI8Hc\KCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+waS6SZkWsHE6=ue\LP 礢³ ²§©££©¬»±©¬µ±ÈÃÁóÂþÇĽÄʽ°±¶®±µ°Àŵº±°º¶©°©©¦¡§Â±ª¢®±©¤§½·¦¶»½¯·Ã³³Â¿²Æ³º·«´¶ª¢¦¢«¡§«¯¯¯»²¥©©¢¤¸ ¡£®¯«¤¥¡£¨µ§§´£¯ °¡¢ ¦¬°¥§¢
dh]hfKJLKSAC@HG;;F>89NMU_RSJ>O^]=HPBMLI8Nd]LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<w]^?[U_gr@8<HweA4¤ §£©± £´©±«¦¢¤²¬©»²°µ´Æ¿ÄĶ¿Ä¾ÊŶÀɵ¬µ©°¹¬ÀÄ´·¯¶º¥«²¬ª¡§»´¨°®´±§ªº³§¹³¸²¸Àª·²Ã½´Å§¾®·µ©§« ¥¤¡¡¤®·±´¶©¤£ ·£¤¥®±²¥©¥¡¨¢¯³¢¦¯¥«§ ©©ª¢§¡zej]lkNQNNT=CANC;:I?77QN]_RVQAW`\BJSHVKH:Td]NFON[W[RPQX]GAB[PBG>NC9HGHNP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1\cZ33906p[bH05JqiVCWFyfC;¤¤ ¥¿¦¨®® ©µª·¯«£ª´¶±°¸·°·¸·Ä½Ãǽ¼ÃÂÇÁºÁÆÁºª¶¥»Á÷·ª²¼£±²¦¨ª¹ª¡§°« ¯´³ªª·µ¬»¬³²¹·¬¸°Áº½¿¦Ãª°¶®©««¦ª¡¡ °¯³«°¹©¦ ·©¥¢¢¯±³«±§« ¥¡£´°¦¡©£¡©©§ £~limbnnXQQZTACDT@;;H@7:XPd^PWWDY^^NLSN_LJ>Zd^NIQN[UYPKSWZI?DXPDF>N?=IGGQPB=CFBM?:2D?77547?=95E4+75/251.-.,1>*'+=\p=>1.1e[d@1747gYaF(@8l}h\V:{cC=¨¡¨¼ ©¯ª¢±·¨¤´±ª¡µ½¯³¸¼»½·¶À¿ÉĹÄÃÀÀ¹Å½Á¸¯¶¨«·²¼¿¿´ª®²¸¬¨®¨©§»¥³«¢±°³¬ª¶³µ¼°±µ¬°´²ÀºÅ¶«¼¯±·¬©£±¥¤¨£²ª³©ª³§ ¦¤´®§¡¬¬±§²«±©£¨¤ ¨¶©¡ §¦£
{gmrhqs`GYfVDCMXDZ9HB5>]Qh\NZ]G[^]OMSXdJKC\c`PLMNXWXPJVVWL=EUJEDAM?AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,+%2+*5K1.'__aV151=`V_8)C3YU\gK5zfL@¤ ¤«¶£«¨¤®µ©®³¸¦§°·Æ¶°·¿Á¶´ºÅ¾ÌŹÃÁºÀºÄ¸Áº³µ¬ªº¸»º¾µ«¯±¶¨««¬®««¾«¯±£ª±³®®¶±¸¶ª®±§µ°³º¼É²ªµ´°´°®¦ ³ ¨¬ ¤±¢ ¥¯¢¤¢¥§²©¡¦±¬ªµ¤®°´¯£§¬¸¢¡®¡¥££¡{
{lnyov}bF`jZIHZ[={JGE6AbUi[M\aJ\\ZRSSbaLKE`a`PMIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`Va.5(C^Q\.+A/JGP[G3cXTKE °§±©¬¤£®´¨·³·£¬´·Éº´»»À¾´³·ÃÀÌǻĽ·¿ÀÀ¸À½²½®¨º¹¸·Â·¬®±¹§¯¬¨¤³©¯»¤¬²²¦§£²´°²±´°·²©®«²¦¸¯µ³ÄŶ©µµ«°©§¢¶¦° £°§©©¢¥¥¤·§¢°³«§±§¯µ¬¤ ¬¨ª¹£¨¤
¨¥¡w|nqxv|\Lel\JOd]?b{GI8GgWf[L^bLYYWUXUi]OPHa^_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANHg27'FaLV%-B.=ELQ<3rkLDD¤£¬ª¦£°²²ª·°µ«µ¹É¸®Á¼Ã·³±µÂÃÏÄÀ¾µ¾ÁÀ»¿¼´Ä¨ª¹±¶·À¼¯¬´´¡§±®¥¦±¥²µ¬ª²±«¨¨´º¬´²´«³¬ª«¨¬©¹²°Ç¿¸¤¹°©¦§°¥¤£®£¨¯¢¢¢£¬£ ¡©¦¥¸¤«´´¤ª«¨¬®¶®¢£¨« ¤µ£¡¢§ x~}}}rts~~\Scn^NZg]FD[G:NmXbZMabNVVVWUYh^QSMcZ[TKGOTSNGIVS\N;P^JBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Dd;6*HdHJ+:I?3CIS,>k?HI©©¡©¯¤§£³³°´´°° «½Ìº®Á¼Ç±´³ÁÃÑÄÆ¿Á²¾Ã¼¿¸½Å¨·¬´¸¼À±¬²¡£§®ª¨¥±£ª°ª®«±®®¬«³º¦·°²©²©ª¦¥£º¬ª°Â¹´¬¹¨¨¨©§±¥©¤¢®ª¨¡£¬¥«¡§¨¡¬¦£¬¶°± ©¢ª°«§§©£ ¨ ¡¥}w
utrwl_Y`ncQsq\K;{F?WuX`YOc\MUVUWQ\b_SOOhYWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*35>10485(5/*,.30;),,'%234$,2-860)(1<^K0.IgDF8<B05EKX1@]@NF¬§ ©±¨¨°µ¬¸µ©¤«ª½É¼±¾¸Ã¯°¬³ÃÄÎÎÿÀ´ÀÄĺÁµÉĬ¯·®³ºÀ¾´®®¬¦¨©±©¦©²¦´ª¯±®²³º¤¸³¬¬§« £°·«ª¹¶¤µµ£©§¬¬ª ¨¦§±±¤¦¥¡¡«ª¡ ¥££ª£¬¢¦±¶¬¬¢¥£©«©¡¥¤¤
¥£|{u~uw£xj^`nfWfdN@gLDbzWbXReUMVVUTO\]aVLOjWVVIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06XZ.0JgAA<<C+:JO^4DBIID¯¤¢©¯©¨µªµ°ª¤«ª©¼ÀÀ¹¹´¼µ¦²¯ÃÉËÑ¿Á»¹ÀÀºÁºÂÄ®±µ²´¼Á¾³±®¬¬§·ª¥°«¸®¨°¯®±«µª¶µ¦´·¬¬¤©ª¤³³¨¨¤³´µ¡©¨«¨«§««¨¹¶©ªª©¡©ª¡ ££¦¢ª¦´®§¥©¢¤¤¦§ª¢¤£ ~
£t~xuzx~pqfgqx\atjO]VHmyUdVRbOLUUUQOX[bVIQjTVTGPYUI>IHOQPxMNV=<KD?@A<@CUC9AK=5;E13;97*4:=+-341*8**+*,)*(/*&)%3;,$2)2021%/2Rc02?f=NX?C,?LT_/Ik7RF;¯ ¥©¬ª£¬®²´¯ª¤¯©¨»¿¼Â²¯¹¢¶¯ÈÇÈÑÀ¿½º¼Ã½»ÃÁ¿¿¯±³²¶½¼Á²²´«´©¥¶©¥³²¸¯¢µ±¯±¹ª¸®ª®·«ªª« £¡µ©¡®²¡´ª¨§«£ª¡¡¬¨½®«®¡§§«°¢¢ ¨§§©°©¢¬¡¡¡¢£§¨¥|
¤
¡xt}txy{tt{j¤vi^elug|RVp^JxsTdSQ_MMSZfNMWYeYGSjRQ>BNQaQ:IHLSIqQLS;<I?;<=;@@W<<>H73CB15:93-5::)-31--6)(+-,52#2)',%.;.&1.0-14%,0Mh:38_=ad?F1CP[[+HP;YC3° ¤¥ª¢¥£¬¦´³±¨¤°§ª¸¾Á½°¨¹ª§°ÉÆÈн¿½¹¿¿½É¼Â¸±°µ±º¼¹À³´¼¹¬£µ¦§¬±¶¸²¦§¹µ´¼¯»¥µ«©¯¤¤¬ª¨ª²¤³¨ª§ª¤©¢©§©½«³°®©£ ®³¢¥¥¤¥¨ª¥© ¤©©
}~
¢rzy~|hv|{upr~jz
d_hcr
{mgy]^VBW{mTaPRYKLNpt]IZ[hYFVgOC>KNDCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KI1%90%,,09/,,+6'17#-/GjI14X=fbAJ7GS`U*=<F\@*°©¤¢¡«¤¶²±¤©°¦¹Â½·°¤¹¬©¨°ÂÈÉÌÁ·½¿µ¸ÁºÈµÃµ´³µ²½¹º½¶®¹¶¿¢³¦ª«®´·´©¹»¨±¾²º ®´¶©«±£¥¨©£¤°¦¯¡ª©§¢ª£¨ ¼§®±®¡ª¢£®¬¦¡¢£ª¢££¡¦¬{}£}zl}vyxbzzrppsxjukgcgansmbjo_pA]ykV^NQQKIMSYVM\^lWEXaO^PHMDF;7HEKO<rhJK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*L>*49&'.34.0+/4&,:$40AhZ13S=e_DL6KVdN)=3R]>#«§¢¡§£·¯¢¯¯¨«¸Âº³ ¹¯«§³ºÇÊÇ¿·Â½¯´¾·Ä¶Â²°¹±²À¶»½·ª¹¸¾ª¤µ§¨ª¯¸°¨¸¼£¾´´¡·µ¦¦¨°³ ¥¥§¡¤¬§¨ ª¯§ ¦¢¨°¸£±¯¡«¡¬¤¦¦¨¢©¦¨¡ª}||¡z
|
|tp|qst`xxiopqpksdzlhedaf`[rjrMNiXZMQLKHPRPGM[_oTEYZRgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZgH*?0][5(¥¬¡¤¡·«°£´³©©ºÄ·²®¡¸«¯µÅÇÀ·¿Á¹°´½·¿»¾°¬¾°³¿±¼Â¸©»º¸§¨µ¨§«¯«²¯¤»¶¤«ºµ¯±¸¯©¥§¯²¡¤ ¤£ ¯¦¡¢¨¯¡ ¢£¤¢¶°¡¦±«¬£®ª¥¨£¥ª¥¢¨¡z~yz
~z{prvnos_xwdllljj
ofrikfh^ds`[kviZJ^\XOOKHHRUG39]^lPEYUYeMIIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<"8R=*113>D5,-'42*;+139cm74GAf[HTDU]hD.<2dW,2¡¡ª£¡¢¡·ª »·¥¬½Å´±¯£µ¯¬¬®´Ãü³¿º·±³¹¸º·º¯®À³´¹¯¿À·¬½ºµ¦¢²©§©±ª± ¿µ¤§´µ¨²¼©¨¥©°¬¢§¤¥ ²¤£¨©¢¤ ¤¸©¤§®¦¥¡¨©¢¡¡¡ª¡¤¨¤y{}z
{w~|ltrllsawthhjggphhicfii`jcjh[f{c`StT\[RLJFIOS@!*h^iLDWU^`KIHEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,?0-N?.+-7,1195,&.5-80576`tA3CDg[KWGU`hB379gP'2¢£¤¦£´§ªº¶§¬ÄÁ·±¬£¶®§®¶À¿¼²Â¶°®²¶µ¸¶¶ª½³®²±¼¿·®¼»±¥¶ª¥¥³§©À«§¤¯²©¬µ»¨ª«±¥ª¦¤¥¬¢¤©¡¢§µ¦°ª®¡¡¡ ¦¡ ¥¬¡¨x
v}
{s~~fyokjkftskcgddvbefffjjckr[_Y^mdaNiXZ`VJGHKMRX>9_lhHCUT][IIGFA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=+*,0B*JK./*+3722(57$+7.72685]yN2>HiZLZJVbf@:3BhH%5£ ¡ ¤³±¢²½¶¡±Æ¼º±±£·¬ª©¸¼»ºÀ²®®®¶®²¸³©«¹±¯®³¶º¶°¸½¬¦µ©¯£©®¡¿ °£®°®·®µ¯®¢§©¥§¥¤¢¨¬¯¦º¨®¢¡¤¤¨ª§©¦{s
|
ofymhkifqrk\hcctbfgjnlgkjhn]llsp`TcicfYIFLMOXQQUaeUAWSYTFHFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24;6#3*)6.55465Z|]19Kj[M[KXdd@A1JfC&4¡°¡©±¯¹¿µ ´Â»½º±¦·¯§¤··¶·»®¬ª«¶©³·®¦²µ²®©°¶¶°³¶º§¨µ¨¨ ¨¬§½¬£®¯µµ±°©¢£«¨¦¤©¢¤£ª«ª¼§¤ ¡k¢p£u©§¡ymi~vql}
p^cag
ktw~gguheW\hsmNPjcgs
h_efnmj^_aeNKD9GTh^JGQPTULHR`oteF[QUPFHEC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=A@@=28@E=1,+08=G701.*.*/568,#1'214:175Xl16Ok[N\K[fb>G1Qd=*.£
° ªª£½Å¯©·Â·½½¦·°¥ª¢¶³±²±¹¬©¦¬´¥¯´¢©·¶¶¨§¬¶²®´³¡©³ª £¥¦«¹¥¥¯³·®¥©®«¬¥¡¡§¦ ¥¥§¦¨©¤¶°¤£¢£¡ ¥¥ªrx
¡vif}sx o~|¡ |tulmieczlraS
mbliqXiqpX^i[ll[rnzr
gZ_GN?G_MERVVQQSWTg]MVHRROFGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82).1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Wa7/(¦«©©§ª¿Ã®±º¼¶À¿ª¥·¯©¬¤²´®®³¶ª¨¥°¥´²µ¶µ¦§¨²°¬²§©±§¢¢ ¡¬³£¤¥µ¼¦§«ª¬¨¦¡ ¦£¥£¤¤©¢£¥¦¡·¤¤ £¯©¡
±£¬yÔ¨ÁÇyx±¥·dÀ¿yy|Êr¼Åzrµ¦»{m±«°yhlX±®nei½¼ngzorØ~Skc¶²rs¡ªWOWbOVNFU[XQPR\W[PA\DQNEGI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>:B<?A8:J>52*22BE/.32.+/(-/186- /416A1=:Ww21Tk\O[M^g\>L1[]41!¦§ª¥¬²¨°Â½±µ¿µ¶¾Á«§³¬¬©¦®³©®¶³§§¦´¥§·³²¶«¥¤§±¬°¦ª¦£°¢¡«¢´º£ª©¢®¥¡¢§§ §§¦¡¦¢¡±££
¯kjª~fdp¦q®¡¤~x»}k¡v±_j´[¥e`f{fjxk©e¾rg¦u±j|±xtcnm§n[ EhfEu`~g|¤§Z_«hxyj§7J¯\XSld[KNX_\WV;NOWW/ITSJCFF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:5/'$203B/=;Uv2-Vj\OYL_gY:M5_Y30¢§¥£¤ª±·¬´½¿¯¶Ä²·ºÁ¦©°ª®¨¨¯®¢°º¯£¤²£¨¸§³³°£¥ ©¬¯«¯¦§£¡¯¢«¥¡´³¢«£ ¢¨£¡¦¤¢ ª¦¦ ¡
µµx
©µv³·~©~k¦{w«gk±\«ztrx °vwqlll|N¤XHbb~ch¦`yruS^P©mcq~b.Q¡o[Skh`LK[dX\ZB>±yWXA#MhFCEA@A19>88:84;:9<9:A:E::;6:CB8=?KNG:5:AFB@AD<FD;0201;F,0.840,.(/3,>831/2-D1<<S}n3+Xj\OXM_gX7J8aT50 ³¦¦¡¯©§³¬©»¶Â°»Á¸·¿©¬¦±© ®»ª §´¬£«´¤¦²³§£¢§ª±§°§¤®« ¤¨´¯¢©©¨ª ¥¨¢£¥£¢©¦¢ Õ¹p°Á~Å|Ö»|¥¤{£¥z¬yV¯z~j¹Z¹v}¦|zªxz±nt¼
oP¯§ÅQ zc`©bsrm`Sµ´È|c¤3Bv]PjicP@XgZdaJHMnN\QOYfYCD?E?0=<59;74<;8=:<C:F:;>6:@C;6@OLH<:;DHCBCD<EF81211DC./0483+-).323971#%5*>3==Qwj6*Yi[K]O_fT7G:aP71%¢²¨¨¦´ª¥´©¤¼·Á°¹¿±µ´º²´§±¯¢°²¦µ§§¹¢¯°³´°¡¤¦©°¨´¨£ª ¨§°©£¢¨ ¥¡¡¡¡¡¡¢§ ¦ §¡²nhµq«n¦r´sr¶{¤£¡¥~°vÒÒv\®{
¤oª¦k|}{°rx³etofQÈZÂ\yb_`vsb^YÊo¿uMKµSUÆdTQjceXAOk`lhPVGI9=URZWXIC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>HI91746A>/.24252-).26,742&60;5:=Pqh9'Wi\BOT_eP5G=aL620¡¥°¬£«¼¦´¦§¶»¼²º¾¶¶´¹¸²¥´³ ±±¢«¯¤¦¹¤±°´¸ª ¥¡©¤±§¬©£§¡¦¥ª°¦¢ ¥ ¤¦¥¦¡¢¬ ¡¥¢
¬{w¨v£©o§¡¢®
³\r³R®}¤q×}x
~
v¯w´aemZ°XKuyf`^vwhl]¯wxl5yÈ®²_BTo^g`EPl_pmVVM.fdiSYP;AD@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK96<46:>/04333.2..18*.32%!03767=Pke>&Vg\@>V_cN6GC`H:99 ¹°´Â¨³¨©²º·³·¾¸·±´º´¤·²³¬¨«§µ«¨¯±ª´¤© §¡µ¦¦©¢¤ ¡¤¦¯¦ © ¢¡¨¤ ¥¨¤¬¡ ¡¢ ¦©}}¥x¡ªp§¡£ª|xo±Z¨ ytØvs¨¤|{²^d ~m\«[Zhgªdr{ks^«Z koeOJC¡\[Lt]bgN[a_rs_KV7JXGE=GFAM35A8.;>05A78@<6=<F?:<6?=B7.HVJEAH6KIN@IK@EN::@5.;>102144+*05/7,&21($$6671<PeeA&Uf[?2U_bL7FI_C2?8¢¿«´Â®«©¥´°·°µ¾¸¸±°µº¨º´¯¤¤§§©°©¯©´«ª®¡ ¦¤£¹¢£« ¡¨°¯§¨¦¤¨ª§©§ ¢¤¡¢¡ ¡«®mr´s©u§s´xs³¤£¤w¸o{¢jk¶Z¡
ei¡¢§mr´t²j
ju³af¢ok\_M¡|Rs£ly~or]¯V<wfTon.\§OcSkebmZc]`p{cTZR>>mo3CB@?M:!7@6.;@37C58??3;<CDBJFMIF62JTKEBI6IJP?HNCFP=<E50;;010/75,+,426/#00,,289/9N`eD'UdY>/U^aL5FM^81C8¦»¡²À®«¬§·©·¯µ¿´º¯®·¶ªÀµ¨© ¥£¡ª©§µ¢²§®© §¤«¸¢¬£¢ ª¶°¨¬ª¥¥¬¢ª²£¦«±¡£¢¡©«Ô»s°ÃÃ~Õ¸x§z¤¶u}wv²`ºyÀ|u¸cµ©|¬©q{t¼§ ia¦¯¡~tª}¾os¼t²uxnrn¤t½^w}Zay¼kZV\jy^jaegbmxoZ\YCA@s@CF+5G"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7A9§¢½¡²Ã°ª«¬±§·¯¶Ã°¸°¹®À°«£¡¢¡©£ª²¤´¥¬¥ª¦¬¸¢¤¢¯¹²¬£§§¤¤¬ ¨«¨£³£¥§¢¢£¯ ©¶·xµwmknsoy
tÁ»½{±¨ps¹|||¤»¹½uz´£twvt°ufjµtrqw¶^z}hynzc¬pu
X[§jEeZTf`c^cQgfpluCNPMD:ZM?J3;0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7LT_G'SbW8*O^]=+:VU'>;<§ ¢¿¥´Ã´¬«¨¬«©º®°Å³²µ¦³¸«©¢¡¥ «£¬©¥µ§§ £«¤½¦¡©¡¡§¡±µ·¤¤¢¦¥ª©¤¥¡¨¥§¤©¡¤¯¨¦¡j}i¦xr}tyd{½¾Àºor`rjZ^`ck`cmwbke^`cphr}gkrux}~b[wthP\n}{kXkzsJJopNtMEX]gaLZXgc_O[muiqRPDEM;GI=M?2,2A?8/5?C<9;@;=C>RVVWYZ[\\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7JR_I'S`V4)P_L(3>[O'?2>© ¨¢Â£µº¶£¬¥®§§µ±¬È«¯²ª³¢½°±¦¢§£«¦®£¤´¨¤ ¦¨½§¨¤¤¨¨°²¿¬§§¢©¨£« ££§¬£ «£°§ °¥¡§¢£¥¡gm}qw
µª ¡ z¥
mk}|uqxyvv|jstuew}wkozm`c]phMXZfj`WZoymmfTOFS9OZMQO(+:KB635=@A9:C><ENSSTVWXYZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J&R^S10T^:+=8\J,<-@³ ³¢À¡¤²²¶ ©¥²§¥°´ªÈª¬¯¤´¥À¦³ ¤¤£ª¦¬¢£¶«©¥À«£¡¢§¨§²Ä°«ª¨ª¬¡¢¤¯§¢¥¨®§ ¯ ¡¦ ¢ ®|ª©
z¤g¡³¯
v{}wyzofykuzsis{vkudyf`jecdfkYl{oik\SLPD^TE@?>,4@F;45;>A;<?>>HNNOPSUVVXZ\_bca_^^]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMMD/T]Q05M[17E4[G5<,@´ ¹¯¿¬«®²± ª¦²¢¬³¯Ä¯©ª¢±¼¢³¦¢¡§¥©¥¤¥²µ¯¥¾ «¢¡¨ª«£´È´ª¤ª¦©£« ©¯ª¦¤«¢® ¤¯£§£§e|e~cymik{¤ªje}geeih{¡kg£wkj£slnzzXf^^mv\hswvnwxsmytv|kY^ltd^sik|qkd_RNXIdXAJ4>G7?FD71<=?AD;;DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AJ[J/7ZO6)EY/DO2YC;?.=¥º¼º¯¬´±ª¥¨®°¦°¼°¨¦£®°¬£¡¦ª¬£¥§¨²£¢¯¥¶¹¥®¢¡ ¤{¥¢¨´Ä¸¥¢§¯¢£¢©¨¡ ©°««¤« ª§§ ¬¡¥°¤© £©}½r´rhx¹Ä¸q¢£z¦r«|ËÀÀ»q£}À½ÂÁ||ÃÀ}l¥²ooÊzwvyyqzpw
ynxcg`xd`ec^tgldcXLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>I[L*#BP.#F[3PY/VAB;/8£¹Ãµ°°À©¨£¯¨°®¦²³®©¤¥¦¯«ª¢ª§¢«¢¤¨¤¤´£¢¦«·³§®¡¥¡¦¬¤¬ÀÀ±¡©¯©¢¡£ª£¡¢¬¯ª§¤¤§¡¦¥¬¨£¨©¨« ¤ ¢~Îxz¤y_®^§¢ |§s«¯^cª{¨
t³c«¡³j¯u}·aZ£Ínv{Ú{p~v~e{vvk|n}~marmph``yd\qhjdg`RTSW]KOC5AHDD8>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-K0';\;L-!P@F4.1ÂÀ¿µ´°¸£ª§³«¦²««ª£ª¦¯©¦¤¢¯ ¨§¢¥ °¬§®¬°ª¨«¤¥§£¥«°¨Àdz¨©±®¢©©¡¯©¬ª¨¨¥¢«¬²¥¢ªª¢¥¤ ®¦ q
u
¨q±}r¬~¡¥v«}r~«v{|~ª¢~«{{WÅ{pÁ}muomeveoawnrnnfpuuqagme_oiingdXS]aYRSC9II@D<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1' '45-&7=WJ-<'>1)3V@F!G:C1.+°ÓÆƲ´ ££¢¢¬¯¶®¨±¦¨ª¦««¦¡£¡¥«¡¥¨¨¢°¬¨§®«§¦§£¡ ¦£¯¬¤¬µªºÎ²¦®¬¢®¬ ©²««««¥£«®±¡¨«®¥¤©¨¨¯¡¢£¤j¤uz©tz²p¦q ¤``R¬
®v§
z{f£¤£}©~®_|©V£z£{ïÅr¯³³¹qb©¯Âthnqozxypmgeerpf|ic]W`jXYULLQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ('"+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÂÉÕÔ¿¡«§ ¯¢°´°®©¬¢§¦¨ª«©¤¥¤¥§§£«¢¬¡£¯¡«£µ¯® §¦¢¢¨ ¥±¥¤¨±·È²µª¬©¢¥³¡§¬¤°ª££ª¡³¡ª³±¡¨§®´¡¢¦|©lu«y|°o¥Ò¸´¸É²_`©¤ zxªÉt¤¨©ÆÆyg¡¥t}¯]p´b°uK£m§Gd|qq|u~|n\fjsqfk^aYdm\_YIMLKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75685/)(%&%$&),4ENPPMFKJVF*L0/=-5OTQ;<F2,$§¤ÀƸ¨²¬¥¢²¸¬ª¡¥¨¤ª«ª¦¦¥ª£®«¥ ¬©¥§¶¢¨ªµ²¬¥ ¥¬¨£ ª§®¡¥§©°µÃ²³ª¨¥¡£¯¥¡¥¦±¯©§¬£·¬¡±¸¯®¦±²±£¦¢Nxz£}¤
¦¸{{y¹Ìƶx¡~v¥¤©°
¬}c¦m¤p
}r¬`£sq`¼}RUt£{~v{sq\nnxrjo[d_inbd^LLQTAIHFI:9K>B108866877-*5==?BDGILNPTVXYZ[\__^]__]ZZZXUSOH@882.,*.+*''?QTVWWWYXXWUOUF<E3:P[T6?H,- ©«¤«¹ª®¡¬²³¥ ¥®ª§¦¦£§¡³®¢©¦² ©¤£¶¢¢¡©´¸£¡¢¡±§¦¡¢°®¥¨¢¶²Å±©©¨¢¤¥¦¤«°¢¯¥§¯¤»¬¡¶µ´±·¯±¥® £
ѵ÷y
¦y¡w ¥qª
´nrj£|s¯¦£¦nq²]¥tzl{|m©a£qqbs²¸hw¦}y~ynjyizsou^eeomfg`J[XX<HH@U4@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^__][[ZXURRQF:223//++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH$)%s¾¿¼º´§¤µ¡¢¢¨¦®««¦¢¦ ¶§£¨§°£¬£¤¢ª³³¤¤¨®§¤¨µ¢ª¤¶¬Ä°©«©¡¢ ¦¢¦¥¨¨¯¤¦¦½¬½¯¬¡¯²¸©²¥¨°¢§y¨}|°w¤¥m²p¡|¡§¬
®
ª ¡{~««x¡z¯^¤}¦§d|sj¯]¥kp
]`[ m¦||knctnz`gfqnhghCYa[>KU3U8BBC7$$3+''3, /6674359@CFIKMNQRSSVZ]_a`aaa^][ZWSPONI7042.*,ATVVVTTUTUUTTUTSTVWWXVUUQHFIJ#((½¨Å¶À³¬ ¸¥£¤¢¯°ª¤¹ £« ¯©®¡«¨£®°¬¦¥¬¬¡ ¦¡¥®¡¨§·©Á¯¥©¤¦¦¥¦ª¬¤¥©¨¾¤Ã¬©¢ «²¸©¬¥²§¨u¯~
}ºe°e} ¦¬°
¦¤¡¡ \lj³`{{±mgo±[~µ\¤kÈ¢d{¼XvµY²}R®z¬X¡m¨|zeu~cxt|ajgpmgefOUd\AU_>I(>9=4!",%2. *1/045799<ACFHJLNPQRTWZ^```ab^_\[XUPNJFC553./@UYXWXWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò²±·½º³Á²¢¬¦¤µ¨ ³³©£ µ ´¨ª¬¯¬¯§¡¯«¨¦¡¥®¨¡¥££¥ ¢ª³©½°¥¨}¡ © ¢©®¨¦¦¢¤©» Ʀ¤¨ ª´´«¥º¬««©£¯¤¸Ãº§¬¯§¦ª~սªb£¿½}~£×º¸µ
½¾m£o«lz²°Çi«°½¬xw¢¾¼s¦{{d~{egy{alekjcPb[Sj\?TaCN)=:4/$%2 $(0496677;>ACFGIKMNNQTW]a\__a^`[\YTQMHC?=A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ¼³³°¿¸±¼²¢®¦¤²¦¥Àª¸²¨¡¿¦§²±º¨¯¥§°«®¥¢¬ £ª £¦§¡©£¡¬ªº®¨£|¦©¡ª©¡«§ £ª»¨Ä¢¢©³³©®¨¹¦svª¥¸d ph®nnw¤u®pq¨£®¤rlllfxonqzjqigqii
gqd]bjoY\f}v¦_aqnee¡¡~wgxikyyemcflbKeXJlZ:PeER'K:+# #,)-2.5:457:<?ABDEHKLMOQSV\WZ\``a]][TPLHD=:AB7MXZZYYZYXXYXWWVWY\^^]\\\]^]^][[UW^©¬³©¹¸²³ª©¡®£²©¿³ÅÊ¿·ªÀ¬¤¢§¬º£¤®«¦®©
¦ª ¤£ ¤§©£ª¡¦¦§°»¬¬{¥© ©£±¦¢«¹¯Á§£²¥«¯°©¬ª¦µ¢¬¶¡¨¦·£ª©²£ª ²¢¡¢¡¥¡«§¥}g~tusp§lz¢¤sjwqxw}zjmdcodUaY@j\HcaOY+F=+'!750.!%2(*699469;>?ABDEJKKMPPQXUVY^`ac]^UQJED>9=@ASX[\YWXXXXXYXXZZ\\^__`^^^__```_YY`¦¨ª¤´¶®®¡°£ µ±¬È¾Å»¹«¢¥§±©£¶§©´¦¨¬¢§¬¤§£¨¨¦¡¤¨¡¶»¨«|¡¦ ª¶£¦«·§®À¢¶¥®¯¯«¨¨±· »¥¤¦¶¢§ ª £«¯ £¯¨¯£ £ª«¡«¡
}f
uuxsj
|£¤
|ss{s|jod^pj`[`ZndP`ePZ:GGE>2=>9/*&+)&&416668:==?AACIJGJKLMSSSUZ``i`eVPJACB:9EMV[^^[Z\[[[\]]^_]^__aabaaa`bbbdb\[c£§¢¯±«®£©¦¬§µª¥µ¼°¢£z£²¤¥±©¹¦£ª¢®¢¨ ®ª¨©©º·¤¥y£©¸£¯µ¢¯®t£¼¢±wx¨°¹u¬£«d\bv ¥}m³£§ª¢esyp¨m¢¨e¦
wjvp{
`hZughs{¨fzyj
ozkre_vqlkh\ffbbpS[>NNNSG>@UD:1/&4:306678<;>@AAFHBGFIKMSTUY]`hfgXPJ<DG<8UR[`ab`^__`aa_\]__`aabcdabaaedchd^]f¦£ ®¯¬«©¥¨¢§¤«¶±³§«§¬s° ¨«§¹ ¤¬¢§¡u§©¤»´¨ uw¡¡§²µ³º¦ ~§¢z¡µ¥±ª¯¤z¬¡§¨§
w¥z§{²z¡
bz
mpyp~
s
xgt u}
£
klx{qqgdwojlk\ekjet\^ITLR@E6.ZUU7)!09>>743568;:=>>@DI?IEJLGSX[Y[aahfZQH9DL;>aV^bdfd`aa`bb_]`aabbbcfgcba`edcgcaah¢¥¬¬«¨¬ §¯¦¦©¥¯È¿±¢¨©¶¬§¢ ¾ |¬¡ §£¤º²¨
qv¡¥«´´Ê©¬¶
°¯¬¨¦}¨r{w§h¤y´¦§Â«¡r¥}
²¡}¡¡}
mr
~yq{tÅf©£k
¤q
hxu|xhhvphhl^dplflXgG]RM3E46Nbd7&3<EGD:64658;8>==?BM?NIJLCPZ]\Wa^il\QE=KM@JcX]cfhgbbbbcc`_babccceiicbbbecafcbbi¢¯§¨¨¥«£·°©«¦ £¤«¤¦«¸£¯¡¨¦½¡y«¡w¤£¹®¥~bm ¡¡¡§~¡§
©
£©¢ukvM«x¨¦©«}¡{z§jkg·~n`dY{dhr}yl]}m_Rp\_kx_Xd|p§ªk£nr¥p
jg m[o}gZ`bXPowfmtrkjo]jqmkiXiO]YF9A5HD_l5,ICRMN=84859;6@;;>BO>QRLMBJ\]_W]^bu`MD:MONTb\\ffiibbdbddbab`bdcacikdbddgdbgeach ¸ ©£¦¬ ¶»ª®¢¡¢¥®¡¯µ£¨¡ §´u¦~
¬¤©¦±§¢in£ ¡¤¢¡ v§ ¦
§«¥x|~¢ps|ym¨{¢sv¦f~w¤_z}t¢n·´ºtµ¨dƸ{p¶r£bs¬«`|i³~m|q£lr£t
¤a³r}³us[²jbotvqioXkmsrf]i^bLE=D6QBZs3=SG_JR=<395::6D;;@JP?UMOQ@E__[ZX``|dHC8MWUWbaZefkkbbeadc`ab`dd_`cknccddhdbgfchh£·ª¤¶´¬ ¢¤£¦®²®¬¢¡¤«x
q¡}¨ ¤©¨¥
~j{~}¡ w¢q¡©¥¦©}~z z£xt}¥
¢d¡|mhoz§}rit«tªh]
v
gªk¸f\¨p`^§vu~huon§]©y»k~ª\]´g\nrzxki\qkyyc`fXbBQFO7WCRo5K[Z_NZDA251;;6H?:CHU>YRY]>Db^V`Qac}jEB9N[^YdfXfgnmbbe_aa__``ec^bdoq`deekecihgki©´§c«¹±¯¬¦© ¯±©¤¡ £jr{z£©£ iy{£ ¡rhp©¡¥¦{°£¢¸w£³£¤y{«~¢q¡|
¯µ}k¡y~µ¢¤«¨|}tªZ]o{xbL{z
cyBLX¢jq{lux±³§wns}ptk¤]vHed`tq~~of`liv|debQ_W]TW@ZFQhDSW\bX^ID=B8?B:IF8LEXAWR[VDFb\Z`K`m~rEB<U_bZeiVghmobfg^aa\]^`hb_ecvm]egfkdflihki°S^ ¦³¹²²¨¢¬ª¢¬¤£¨ ¡woy
|r¡s¡
©|l
q¡x|¤ ¢}µ{¥z©|§hwm~t¡sr|p®}¤¥£o^¨gu¢co¥aÓ}{xssb¢~£t¤vk³`sª²¨¼wm~¿¦©´]m|pmr¢r]¤gs¦`h¦mÔ~py{l|xsn©¤g`ezq
lhfdnvxg`cS\fQQbHXJUaWT[ej\eQFCKMJKBKE8O@QNXSYOSQ`ffjRcwywIFEc]eZhjTihjocjg`c`\]]_hbaie|d^dgdkdjmghlh¯ªT\K~©¯±³¯²£
© ¡¤¦©¡ª¡
{p}h}wol|¥«yvnx£{£¤³¡¢¶z¬§¤®¥p©
{¤¡r¤®¯¤ vµ¶µÉ¡s`©mz t¢w ~pMf£ps¤{ytak} kqd_q}shyi³µ´Æ¦s}zk«v
mvxj{urQE}³_jvkzfkhcuuqnW_TYiPShIVMYTV]hknVgWNKAJMKHJOAQKPecjmetrsy|nu{{TPNl^i\kiRjhilhlfce`\]]^ibdik{_]dhcjfnmeile¡®¥d?¡²ª®¯µ¢¢ª¢£¥¥§¦zjye yui
y¦ªz}yp¡z ¥¨fnxl¢d{q¥wpg¦z¤zrw¹n¢b} mriªku mo¦_iiu¢~`upbh e~iuocfmq¢Z^[b¡m]nz}srd¥mx¢dg§hsp¢oUo _f¨T^TnmskrmpilytkpRYWWfZTmIYO]IXiisjYkVQRFV\LXSaUik_wt{}p||r{svv^QrbgcpgPjhhklnhdg_]^]`jbjivu]\chcjjsmfkmc£¥ydsm¦£©°±¦«¦£¢£¢{qi|su}{d|¨£¬~si¦} ©¦¦x~¤±¯¥vx©s¥n¤¢»n}¥¯
|¥zr¨ f~o¬dw¨mª¢vw«¦k°kv³©k
mm`~«ªv~~¥v|¤ jx¬h¶tw¾¤Z§«aurtp|uqckoimSW[Vab]kM]R]J^mnw_[qY\`[gtenorcrt`wz~yrys{{vbxdcnrdRkgholrjfia`^\akbmlzo\\bibmjxmglnb¤©£©©¨¦®¤¬¥¦©
t{o
~ttrm}{¦¦§
vol©ª¢u~y®¢qw}{r§q}}zy{~v {}k
[yyrzqin~quqe_wtruoynml
^ugwe
¨}t{jpv}wnnhsz|x
\lXyioxrqoxxp]knjgV[`W]fkdVcU_Q_pxylkvfkkkw}rrutaovbt{xuzux
}{nldyn^Wnghukxjije\`Zcjemqtn[[bldllynhloa·¨¦ ¢¦£¤«¢¡¡§©r|}~
{trp
{}y~¥|¨¡
wr©§ª~~§¦woxn~¨
p}qkp} hl\sqtkvtYrn~j]jd{`ixz{u
gwjapqt^q¥
enwqzqhhe|{[\khnv[|yxunssg\mkkbZZ_[Ylq\_aZ_]et{uptdkkk|}s|yudnuhm|~wz|{yz~o{}t~yshT\qilvpugkhd]aXkhkkqrnW[enlgszohjm`©°¡¢¡¨£¢~® ¢¥{
}s~v
ror~z¡§¢yz¡ª¡¢££ª¡§¦zv§~²¦±¥k|wxe|
w|zt ~}uor~w¥
}zm
~zksiatq~zwwowt]^ohn_^Z]]ShrVd]]blhu||sopdkji}nyrjpqlg{rx}{m|zy{}zxNcvjsnpzekecb`[tfpgrqmU]ltmhyzqgikd¹¡ ¤ |¬ }y{nys~mk~z
|
« s}{ª¥¢
¦¥u{¥{|«¡©~oxqu`u
nyvt¡
s{|rqzzw¦
w~qm|ohlmh_zh~|vuvu{x\_q~nt`c[]_RgnTe[^bkivyqlmdkjhltlluozpynv~
vq~{{|{`h{juhidjc`i\cuhobumlUcqyepz{sejmm¶ £{x§¥yz
|n|ys
~}kh}|~|¨p ¡
|¨x£ ¢ £}w ~|¤¡¢¦~~uspwa~r}r
hxrx}q{|pwzyy¤
{
v|gs}y{qmkg_~sh|uvt|sj^`tvpwdcY__RkiUeY`ahjvyqgkdlhfkn~hoql~yzls~tv|z}irntiahlb_qVtomm`xhmWjtvcuz{rbjoz±¥¤ }w¥¡£y{~r{tv
~xgc~y}y¡~p¥¦
w ¡y~£xw~s£¢¢~|vq}n{d|
ql
fuo{
|w{
{zq}wy¡vw|x`zy~txgmeajjwstv~q|cc`snurmaZa^[leRcYaahkvyqckcmfh|miuhnpi}ymrt|}z~|mvsumeljbbvVipn`xglbjvpfy|zq`rl
¦§~xªzy|~||xtyzt}d_}~u}~}¤¢r{¦ s¦rkzo¤{yqykul|~nxq~~eri{~sx|uw|{£xt}tv
pa|v{r}pbocd|cnpvsxwstbv`olvno\\_^^j^P]Ycahnt{k`iekciwnglikmh}{wos}t{}z}}rzxxmljh_ircgqoewgnlayik}{xpaxm©£¨
~x¯}w~{}|wxput|o}|a\~s{z¦}}£n¢ me
zp£}{
ssvkpnu|tnqu||eply||tsxn|
{§z{~
w~qpehyuvq|b_pakt_qj{yylspey^nlsmrX[_`ak[PWXecgqqf]iigbgqodiheiizwuo
t{u
x
|x
zw{{rxjk_phtkromrgole|cnzwqlww~¢¡§ ¦v«¡s|v
xyss{kspznvoq[Y~vu ¢x
m¡
i¢e~w~}{|ovplmop{itqwuyfrnu{yyusozy
¢{uwynl
^susqqyZ_qapk^pj}{qmmjmv`pokqmYYbabnXQTZfgcupb]kndcfkn`gg_hkurspuxuy
xw
|{vjqc|c|nqmtjholvx_qy|uut~¤¬§
v yqxtpr
tqvlpnvmv~nnUQ«xwrz x{£|s
}hg
qw{z||kvjnkll{bz~v{x}ygsls}
zpyovyy|{zv|wqjl{`xqnmrtV_pbra`mozqhoffstiqkbwe]Wf``rSQO\fe]yp|`\irbbefj_he[gp~pkqt}v|uu~y{
xs
~|yxfrk`}ookz`jnuu_t}yxts
}x °¥
vtwtqp
tprpkiwnn}}musRMßÈÖ{puv w{s
¡wz~yuf
k¢cqz{y
|l{espklzz[yz~{zhrjs|k}~m}
|x|uwxrmgq
nkuphjunS_oepZ`lrxgkjbfxrppc`w``Vk_^vPNLagb]zqu]\evabeedagbYissnkqv|tzuv~s{r|~vesn|e~oplYlnyys`vz{vrwwy®
w~|
txpyqoomoseeyq}mz}jhkc¤ÁÜ®ð¡slvv
£p¡r¢
~zuxvtm
|¢
^m{}
v
}~k}dxujnysX{
z~yeri~kum}x~trwusqgvzcunqcjvhRaqglV_otzard`i}prn[cr`bVnY\xNMLdfb^wsn\\dy^_ee
`cc_Yjsknksw}twxw{q}~{t~sguryl{ntqWqzvyrewyivr¦£}qwy
¡|{swptjplim|u_axw|qu|h`d|ëÚµÉÃÜsltwjq
|{
vxr
u~o¡ai|}q~qwhvritwlZ}
}vark~~}mkw{|~npy
tkqlsyaujo]lwaRerifS`pvuap`]hqsjWghbiXmV[uLKLeg^bss
j\\ey^^dg{ad_]Ykofojtx~ss~{vzs
|vw{ulwvyxtnx{}Xzqogywdv
p
¢toqw~| xrtnodrifmxx\`y{{qqjagaÕ¶¦xnqw|qk{i||}ztz{qt
t~b
g|~~m|tkmwutwvlc
~}p_qo{{~ypey
z|~mny~umnkl{diljYnwZSjsibQcrxmcf^Zjnsb[g_dl_nU[pOHOge\goqmZ\cs`\clwee]]Zklcmjswqp|}txx
|uy|vpxy{on{w^tmiztsgs|q vvmw}v~vqpljau|gbjuz[`x|zmqechgW_qs¼Äwqtsk{|}|t
vv}quq~szf}r}g}{y}i|vfoyxswtlkyk^pwz}{~rhxwz|mkz|vtoih~we]qcXptSTosibNhuyga^]XootYda]jm`pOYlRDThbZlom{oY[^mcZcowdg\]`kjcliswqn~{tuz|
v~xtsyy~oo{qiyz~nm|vkjxtk
o~vjyzozsqljd`t{i`fr{[as}zgpzaed±²wKbZ¥ÚÑr{y
ol
yy|yxoqt}{jy¥~n~uw
pz~oxh
xr|e|~vcpsiyqou|wyzk\o|r}
zqmp
qwwmm~vzehj~raZxZYrnNXrtf`Kmwub^\[Yu}rpWf]fjq_oNWiS?Yg_[pkgyq[[YkeYcpy_h]^elhfliqxom}up{v
qq{|zyukzko~t}or|{poyf¡gpgz~
|ixrllf_aoym`boy\dlzaqv_deÕë¾2:>ryw
nm
u}
|xnv
wnku{tey§}msux~{x
lri~xm|{xbyqdqh~nurutv~so[k}sx{|wypkqw}}tmjvuu\iiyqZW}SZrfM[srf\Jqxp][[Z]uuiYb[genbiMWfQ=^f]^vf_uq[YUodZdpy[h^`gmgjkhpx}mjyn{}zu
pnw}{{i{~jt|r{sw}zx~|kl~kh|~}kuqgic[cgso`altahpzast^bc n\5Z¯µuj~wuwpm
tyx}z~sgu~}oq}hvynez
¥}m}t~{|r|~
|i~mk{yjzvr`w~qdrgunu{}pwz|u~mWm}usvtzwrmq}{|zmmhmun]hftrR\|N\q]O\spdVKsyjXYYZaqua]]`fdhhfNZhNAad\`va\umXXSta[eorWj_bhkgmlipw|lh}|p~{zwr{oqw{j~{nxyww}x~~zm£
{vzkm
y}{}prpcf^Yg_pp`ahpfjotato[`djv{¾§¤É¸r
s}ytrspzsutwyyqdwzhqufwvdj|}q~rx~wzlyzuhzilysizv}h`x}jjth{jv|~~q|v|t~bUu{qr{pwxoo}|w|{suhpglrp]hctoLfvL^oVTZtnbQOtybRXX]aps[a]heecjdQ[qIDdb\dq^\xhUWVw^\fnhVl^ajgennhpwzniy}s{~y|v}pvsnw~q|xzztxzuo}~{w{guz|vgpn`e\XfYmsaaaqllhn`siX^cmw©Ú©Ç³rypv}{utu~vopm
txtl`yyeqogun[m}y}wzl
tr
{muvmhwfm|vmjwv|`bxzhuvc~{hu}uvrz}mYVr}os~wksxjt|y{wzq{rgsdmls[j_vfIooL[cXWVymbPSuwYQVX^`ro\`cmdc]ocT]rGBf_^fi]Z{cRV\u[[gkaVk``nfflqhpvxtkuvx}w{t~oququ}
{wx|}
x|}~
{~rvx{wuz^~ytw{bnm\b[[aUjtd`[hopgqaqfW\ck|Êκ¢knomrr~{
zytyutzjlvcvvog_|yeqjjqcXm{rw}{mop{yrrp~ghrcmxqjlqw}|y]eywiuxfwhu}sjo~xn}]Wp}ms~{mnpvfv~~u{pys
{xqer`mkrXk_x]IplNWV_TU|kbOTvsRRUW^bti]`kjfbYnaXcpGAh]af_\V|^OVeqY[jh]Xha_rfjhqgqsvynt{w~yus
pp{xwuy
z|u~}~}|xvyv~}nuzdto
zucnjY_[]]Uhse`YdrrgrakdWZ_ix¾®z¸nbtiu|rz{~wxrwozvejoausjb^}wxep}hkkZVox¤
pqwtlr
}yusoiyajmamvjgkkywzw[g}|xer}ntfupgk{tlub[nzjsz{et|mpgt}v|~pzjyzxvoelal}lnVjaxVKklOROiNY}hbOUvlMQTU^fvg]aqhgaWi\\kiJEkZbeWXUyZNWnjY]le]Zec^tfleqfsptxp
vx|
}usnsy{{sr
y}v}{~{w|wvzjv~}lrq
~oflgX][\[Tepe_XcruivpdebW[[hporsefzjuwtt
x
zwtunkzpahkgtnf^_|oz}hmwfjdVWsp§}|vs{q{xlyzu|}uqsmhu]mi`mudgfizo{rYgvuhpxvbw
|okm{qfse`kxfquz}auuikqtyoxwr{e}}~wunbe`l|mkVjcrTLjkPLOpH^|faNVueJOSXakw~f]gsie_WcWbq]KKkXdbUTUsVMYveZ_l`\[ce_wgmbpitoq~utwxz}v~
nrt|{tq
zut}
}~z~v{£¥y
lu||u{o
sz
}unjieV][[ZScne[Xbt{jimh`aW^Ziilogmbi{zktuuoz~vunzhjyj_enhwheXavi}yniofg]UXoi¨wz|xtn}mqtx~wt
vjsvhio\me^ns_gbjxh{m[mrtjo~ywaw
xsrpzrcqh[mvdorzwarogixsqkwvsubz}vuocbbm||kkUibgTLnhPHRlEayfbMTr^JMUYelx{f_mpjc]V`UonWJShXg^XMUlTK]z_\_l]][be`zhlaoovnowuz}wyzyz}qtt~zvt
~}ls{
}~{u¬zlrzvuno}tjonedX_ZZZUbjg\Z_ui^ml\aW[\kequ}ij^mxwhuxsn|~~zvslzgiwg]dsgzwccTdofvvfhjaWVYhc¨owzpo{fwmyzvq}ndwtehi]lb^pp[g_muezh]tnrkq{~uubu{xru~taplXpraopztcqk`lznihywspdtxxtpd`cmr}jlTi^_ULucQGWbGcwfaLTpYKLXXhlvzedmqfcZX]XvfTJ\cXiXXHWeQIcx[]_m[^\bc^ij`ntxmonvyr}~uvx}tuuyzz}~
jt{}~
y{~|sq®{{~fqzt~}vrol|~mzcppbe]eVZYWcfk`]]shYqn[^XZ\l{bqwvlc\ntuhuwqn
yzwootehte[gufvvz_]Seejs|aci\TW^bd¥iyt
xlmyfwl{ytrx|yiewm`ga_k`^ukYf]oobze[w|knnpxytueszvor}raxcZno`opzseqd^muhcfxzrkmsr{qqa^emn}diThYZUNy_RJZYHcudaJTmUJLZWilr{dllsbaYZ[av\TKc]YjSVGYaNHjvX_an[[_bc]
ihbnwymojvxm~vuttqvvw}}~~px}yxy~ssp¢z{yeuzsywltply|ps^poagblT[ZWidmf\\qeSrn[YXW`lvdjujj_[ntrmttuk}}wonldipc[krdtvs\WTd`q~q\bc^SZa\derq
skjxlnnyyzqvs{z{dfvh^c[ah\^whWb^phawa[|vjjroxtstiq
vsjp|mfwW[ilapqxseo~Z`ppa^io|kjr}qovio`[dkl{afTgUXSQw\RPYRHdsb`GVkQIPZUklk|emora[ZXYlpWSPfWWiSTFZ\OIsuX`cncXaab]jcemzylnivyzk}
|y}mqovz}t}tx
utpvo¢s{{fwon|pgxq{lsvsk^tobgekS^\Vhbll[\qdNom\VWUgithctee^Zpvoqvvzl}}wscdkoa\nmcsxkZTVbcw||p\c_cTZ`Zccnp
rifyndruqzkytuo{v_gsd\_WbdYaueU_`mdaq]]~ohisqtpuvlm
|
qrgn|oqoRZeidprusbluUbqj[^nd{dkt|qqqil_Xdijx^fUdUWQVoXQWTPHer_aFXkOIXTVnid|ikxkaW\U[tdSRVhQYgTSHZ[PNyw[_emjZb`_^nagkyvnnivv~m~{krgt{u~s}
{ss}un¤swxnz`e}qgztylmqwgd|mcgghS`_Ug`lo\^nhMil`UVSofskfxee]Zrvns{ysn{w{zkaelm^`njepy~gZVX_lx{zo_b^gVY`Xdbkp|wkjvl[upjyiurno|sXko`Y^VcdXeqcT_biablZ`~kflsuomxvlh{mqfp{lqlaX_ggnrsr^ilSepdUbmaxaotztinkj^W`fhu\dVbVTOYgSO]OPHep]cGZjNJ`KXme_xhn~d`U^T]u[TR`gN^bUSJ\ZQZvv]_fmhXca[^pchjwrsmhvtysz~|yntlss
z}|rstwqn~zz}~~}}~~}~~~~~~~}z{|~~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~mfggggg}
]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDBKzlnmnnojfggggfo
}}{{z}~||~}}}~}}~~~~~
g_```_^yS7¤¤¤¤¤¤£r]____aR455553?wegggghc_____^j|}zzz|}{|~}}}~}}~~~~
|y{z||{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}}}}~~~~~~~
~wxz|zz|||{}}~~~~~~~}xyzyz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{z{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{~~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~
rtx|||{||}}~~~~~~}~~~~uxrvy|}|z}|}}~~~~~~~~p{ussvx}~|y}|}}~~~}~~snrx
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~vmzsx{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
smmytu
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\YXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxz}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzoq{xy{|{xw{xuwttvuuvwta^d_bjpfhklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkiffggghha_ml]fggebcbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__ac_\_]`]^ZZkwlbosjbZY_[XWSNMKKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSTPMJMNPROM[jrk_ltsgQQSPPNNOMJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTtsuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMN\cnkZisupSMOPPPONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKKECEIVbfkqpnmlZMLNMNOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHECGHIN[ghgqnnifd`__XLJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:<=HY\[^flnkommlkiijbQGEEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@:;><;;;=JZhnnpjnmkjlldOGEDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnppsttsqrvxy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<979;:=E`nsnnlllfQB?CFDCCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtstrqtxxy}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::979::78:99<H\tuqeP>:;=@A@=;;><=<@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyz{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==?@===?C;==><:Aj|i=9;>=>?@@@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCDA?=>@A?@<\n@>DE?@AA[c<==;:=>AA@>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVppqssttuyz{||~~~~~~mLPQNOPNNOPPO><<=>??@>@@???BFD><<=@=8:;mwH8;:=>A:Id=<=<8:;??=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}|~~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABA@YR<==ILFFuwM788:;>>VjA;<<::;>??==9:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@CryI;\z|wW<=?==>EhtL:=>?==?AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy|||||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCEAGrykb}^>@C@@=Js{Y:=AEABBFHC=<@DDA@?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{|{}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Ent}~}vMACE@?>Y{]?CEIJIIMMKECFGGEGEEEDDCA?@>>BFJJGEEGFFJNNKJIGGHKLIGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z{{~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEhs}|~y
rCDEDCWu~XGHJMLNOOLHGHGHIIHHGGHHECEEEFFHJJFEGIJMOOMMKJKJMNKIHGHHHGFEFFFDFHGEEHHFHGHFQnnpqruvy{{{z|}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJG`{w
lAAVtWHLMLMNLIFGGGDGGGGFHFHECDDFEDDHHCCCFIKKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrtwwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLN[|
Vl|PKLKHHFFDDCC@@CCCCFFEB@>>@AA@BD?>?DFHDEGIJIJHHHGIIJJIHFJJJJIJIJJJFILLJJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLKJT
uKJFB??@???<<<>;:<AA@><998<<=;>;8;?AB@ACCB@AADDBCFHIHHHLMLGIJMMNMJJKKJLMSlpqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJIIe
hCA=88::9878896479;<:8567789787588;;;=@;999=<>;<=ACEHJMLLGIGORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIh~`C7555766655873568:876565676767:67889:7578979776:<@GFIGIFEFOSRSSROPPRTepqsttvy{{{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@6788=:=ECBe
fI59@58874578557699776765:9:::;798987669:98868589;A=>>BA?AKLOQPQOOORWkqrttuvz{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B:=q
ePZC:<=>99:;8:;9:;::9;:9===>;;<<:>;9;;<;<;9:<8::::999<?<<ABDHIMKIKLWorsusvx{{||{}~~}}}}~~~TFEFILNNLJJMB?:;<:89989:::;?>H~
}jS=BDEEBA@B?@CA@>=>>@???@>?==?B>@A?@?=@@@>?A<><;:;:9;?=;<==AACABCAXpqtttvz{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<=:;;==?@BR
tECGJLJJGGHEFHGEBA@CEDCABBB?@DHECECEDAFEFDEFD@B><@>=?@>?>?>?>>:;=<`qrttuwzz{}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@CDFW
ZJPNNLOJJKIIJJIECDFGFDCEFDBHIKGHGFHGEKIKIJKJCFCCDBAACBDCCDDCA=;=@hpsttwwyx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@?A>BBGGIY
lmUNMOLJLJIJHJFDGIHIEEHFFELLMIJGGHIJNMNLLNKHFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?EGG=<@@87<;;=:>@>?@CFIIP_
}`XPONMLMJHHEIIEKIGJJIJGGGKLNLLHHIJMQNPNMOKIGIJHIDIHHFFGGIGCBACTnpuwwyzxyz{||}~~~~}~}~~~~~TDAABGHB?8?@9:<8=>;=A>?ADHJLUq
_TTROONKJGFBGJGLKFKOLKJJLMLOPNHIKLOQQPQOOJHJJLJKFGHGFFHFEEBABB\orwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAGKLPVy
}ZXTTVTOMKJDEGLONOWUQPOQSRMSTOMSLPSUVRSQPLJMMMKNGGJFFHJDDEEBECcpuyyzzz{z{zz|~}}~}}}}|}~~UFFGGGGHF>@B=?==B@BBGVNFNPPTX{
iYXkbFTQQPJ;;RSR`u]UVTVYYRXXRZfPUWZ]RTWQOMRQPPQKKKHHJHEFIIIHIirvyxyyz{{|z{|}|}~}}}}}}~~~SHJIHGFFE??AAEACGEDELXRMTUVXZ|
~am\eV:YYXSQ?@VUX\d`VYbr]]W]ZVEQYZ[Y_TYgRVVXTTVTOOMJLJIILMKOMSotvxyxwzyz{zz|}{~~}~}}}~}~~~~VJJIHGEDDBA?HMIMPKIKPTSSXZZ\\x
g;~zopY[\[RTRVVU[ZuYU}a\X]^WIV]][[_YHYXY[]XXYWRQMPQMMOSQQURassvwwvxxxz{z|}}}~}~}}}~~xy}YNKIIHFBD@A:PQQWXPPOQSTTXXYZ[n
n~gYY\YTVTWRQWVcQerXZW_hP`f[[X\gaGOZhg][\]]WROSPPRVVVVYZnrtwvvuxxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQORRRUSVTW_ux
~|]QVXURUSQQLOMKfy[]TYUV]ZLTZUST^ZXWWWzkX[\\^TQQPINOWVX[Zdprvvttvxyy{{||}~~}}}~}}~~~zxwvsu{tk~~kry^[VUSROKFCDAM^lVRSNOQOQURSRRUcdv
~ymqWJLNOKNKIJDEIEC>TdURQQNKQTQMOYRMNQSUUMQSRPOMLHCIHRTUZ\lquuusswzz{{|}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^\YUPLILIaltPQSNQRQR[RSRQRUTbs{|}{{
u_]LD?CCCCB@DPBCAC=CIGV@HNLG]iPHFNFDEFIGHBDHGIKGDBAD@OQMRdrtvustuz|{{{{||}|{~}}}~~||}}vt{mh|gnqfiedb\XSQPURsWe[OONLQSQUYSUQQTSOV`klrv{{xytrnstsyx}kMG?@;;>????>kPJ`EFHIEB?GLNGMRUIBE??<=<==?=?ACC@?==B>JNGUnttustvxz|{|||}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QRZ\Y^JJPQNKLQRQTUUWQQWUPX[b]agmmlokg`nrjmlqu{z}{xz||xwxeC@@B=:BCAADB\]O{NONNKLMOOQLKMWMHG@B<977599=;;;898:?<BH?\stuuuvwy|||}||}}~~|}}}}~}xuvz{zwyxuw{|yxuywcqhipmnmmhf^OP_]ZIHPRQOMPQNQRTVXSRYTOYZ[WY]^^_e`]^qvk^`gkwooljonnlfbYHFFHBAGIEEFDMRPaWRWQPSSRU[OOQVPMIDF>:96587979:365795<C>essvwwyy{}}||{|}~~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`VW^ZXMKTTSPQUOLRSTXXTTYRMWYZVXXVXY]WWXhsk]Vaskaa_^da_^YTQNONLIHJLIIFCQPS[WTTNQSYS\eUOSSQNKIHC?A999897885757859:Gnqtwxy{{|~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOTVXXYSUTLKTVUUUWPSUWTUR]n^RNY_[VY;DVXT[fJLPSSOMMNNNLJFQPUYSTOJNOUST\VRUSROMLIHHF?>=:787659967675Wppswyz{|}~}~||}|~}}y}}|~~~}||}}~}|rvqxxrvuqqnppopuvtnjddjppqrpnfedc\]RTZVWUTWTRXXYYYSUOJGOPOOMRJPPOPNNOTLMIPOSTU2=XMI@Q=caQSQPNPQPNNMQNTRPRMILJORPRRSTQROLMKLLHCBA=::876;B5566:doqtwx{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqniihpVVTUXUWURWVUZYXWUQSFEAFGGHFJDHJIGEHLHKHFLMPMG/E_R>3?>joaSRQ@GUQPQPQNQOPOLJLLOPNNPQQNPOJLMMKGEEDB;=<<9=G6677Dmptuy{{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknaePSTRSTOWVVYYVQQQO@=;=?ABAC@BEDA@GHGHEFHJMLEGCORC8ENS]gSQSAGUPOQQPNMNMKLKKNOOQMOOMHLLIKKLKGFFED<AA>;@E;<89Sprtx{z{}||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLOOMQSLTUTXWULLKI<987;>@><=A@B=>EHGCEFIGJJ@FAA@FHEJOHQRa\QPROSOOPLLOMLMLMON[WKMQOGIHCHJLLJFFFE?BC><BG?B?Adpswzzz{|{zzw{wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCD=9779?B>;?B@@>@DIECGGIGIEBB?>=CBAGIDMObeQMONWKLMKLMMMLLONSdNJLRIIIEAHJLMNJGIGBAB@?EFEHDKnovyyy{{z|zwsxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGMMJMPMPOHJD?A=98::?B?<@BAADEGKFCHIGGHCC?B??@A>DECKNRTLJIMTGIIJLJKLIJMMOPRPKGCLGCBJJLMONIJIGCCCDIJMLIYrmwyxz{zy|vrpurtxyvxjqnjllnttmtu{stxronqovsnporpopstyjN`gsjt|ygosqiqhdqHKDGHHGJKIJKDFB=>=99:;@B?=BBCCGFIKJDIIFGGCC;A@B>@@BECIMPHHKGHKDHILMHJLHIJLKM]RHHDNFACJJMLPMKMJKFGGJMNQNLbmivvwzy{z}rmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoiktgdoFKDFEGEFFGEGBC@><=9:::@C@>BCDEIEIJLFIIGFFDB;ACC>@CDCDGLNHKNHDHEILNMGILGFGIILNKIGENHBFMKMLOMMNMKHHIORQRNRfffqosxu{z|lhjnekqlspfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGIDFFECCBE@DB>?>:;;=:=>CA>ACEFJFIHLHGGGFEC@=DEB>ACCCDGHIGMPJFFGKNOKFHIFEDEIJHJIFHOKCIMKOMONOPNJJILRUUROWd`amgproryzgehhdilgqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutwljuumrvqlnlerLHEEGCBABD=BA>A=::=?:=>@B>@BDFJEIFIHFFGECBAAFFCBBBDEDGGIFLQLIOJJLLIGHEGFDCIIHKJGKRMBNNMPNOOMNOKKKOUWVUSX_^\iaminhrsbeffdhhfnjfmmhkkmriqvtsqmvnoqrswsrstuvvvvwvwvvtwujsunutsqrjksMGHFHBBADE<A@@C<8:=>9?<?B@@@DFHEHFFHGFFDCECDIECGEBEGEFGGEJMKHQMJKHHIEFHHECIIIKMKOSNDQRPPQNOMNPMLMSWVXXUX]Z]d`hbjigk_eefcgggkggkmkmlprhttursnvoqprtxqssuvuyvvtxuuwxmouorsuqqinyMHGHHBBBFE<?BBD<7:>=:>:@B>??CEFDFDEHEDECDEFGJEEJGCGHFHGECFJJGNKLKHJLFIIKHEKKLMNORTOHSUSPROQMNQNMPWZVZYVZ]YXa```^hec`dfhgjhhifhnllnmqpiuuxrrpupppruvpusuwu{~}xvtwvvvxplupmstnprrxNHHGIDBCHE<@EBE=89>>=<<AB=?>ABFCECCIDCEEFGGGIFGKHDIHGIGFDHKIGKHMKJKLHLKMKJNKONORUVOKUWSPSQRLOQPOTYZY\ZY[^^]`c^\ackb`dggr
hgifjmnponsrjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqvptLIKIKFBEGE<@GCD@:<?@?>?BA<@>AAFCEEDIEFEGFHHFHHIKJFJHHKHFFLIHGJGLLMLLIMKMMMOLPPQUVWOKVVUSSQQLORRPV[[]^[\^__a`ad]c`ef`ehjdssfjggkorqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrvnvJKLJLGCEDE<@FDDC;??B@@@CA?B?ACHCFEFIFIFGDIIGIHJLHHJJILJFJKHIKJGKKMMJJMLNNNPKOQRTXVMNTVTRRQPLNTSRW[]^_]]`_`aa`acebdhbdijgvljigmosqpqppryvruutsmmssmqrotutrpswtuuwvuuteqskpqjrvnwKLLLMGDCAD<?EEEC=AACBBCDACDAAEGCHGHHGJGCHIGHJFILHIJMKMLGKIHKKNQKRQMSMKNNOPPOTOWXX[NSPW\ZRWPNTUTTXZ_bb_da^`b^`eaacingbihhnxvlhimosrpqrrrvtsusssnksqmprotvrqquvuswywutucmtkopjqtowLNLLLGEA@D>>DEFC@CAEDDFBCEGCCIFCIJJIIKGDKJGHJIIKHJJNLNKILHJLKZfJd\KlSHON_nUks[qpbwcSPavuhucav`Xnqbdvinzf[lt`ljT_wvijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqrqyLNJJJFC?@B?=DEFDCDBEEDFBFFGDEKFEJMLKLLGGMIGJKHKKIKKNLNLLLILML[sbdp^lmUMNfs]ffqlntgpi_aYnnbppbkjjfoqtetno\ougpMJqyvka`keemxlkvmnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIHGED?AB@>CFGBFCFEFEDCHHGDEKHGLNNKMMFJNHJKJILKJJKLMNNMMJMMN[roonpplkMPQlWMibtrpamnu\YlQ\mmZqmkomxxtsip]_rkqjUuyxoc^kfbgppjjopprspqpqqrrqqrrtlmrmnnorutqtrtuutuuzvutenukpolsrryIKGGEEEBBB>@@FGBGDIEEEBFIHHEHLJGMMNKMNGLMILKIJMIKIJKOPONMLNNL\hdu]lqWlNPQmTYk^klvaldsSecNmYl\tpkilxjwuhp]^rkhWbcw|oc`ggadiuyknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvHLFIDEECAB=BACGDHGLHECCHKIHFJLLFNLLSRLGLLHNJIHNHJJIHNOMNLJNMJZsppoqqmlOQRnYrkgooqqomt]nXat_nopoqronusttj[^tcwxrjnzhaacfbbimtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyxtukoumtonssvsHKHIBEEEAA>DDBGDHIMIFCFJLJGFKNLEOJKWRKGKJJNIHJLIKJHHKMMMMIKKKSkc[i^_icrrZ_Yjn_eeUk_c[aaQ`lh]j\niid[pfdp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrvtwrGGFIDECFA@BFEDGBHJLHFDGKLIEFJOLIPIL[QJEHHKMIHJJKKIHIGKKKLGHKKLMMLJKMNT[\TPTLPONOOVQOOQNOQJINPQdqiTYW\[\VY[]X]\\cfaaebcf__fkmhmtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusGCEGFEAEC@DHDFGCIKLHFDGKLIEGIPKLOKLWLIEEHIJHIKIMJHFGGIGHIEFLIJLOLIP\W^P\[`^MXYS\\b^MXZMXaRJYaZR_d\aX[ddVVX\YZX\VY\]b^d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCDLMBDCBEIEGGFKJKHEEIJKFEHHPKMMJMRIGEAHFJIKLJLJHFDIFDFGEFJHCJMKLU_Y`X`a[`TXYT^^Z_RY\P^\YN^\^SZ^c^Z]`c`Y_c[`^[TXWY^]cbcacehekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIECBCGHFHGHKJJIDFKKKEFIJNKNKHLNGHE>GGLIKLKKKIGDHDCDEAFJD@JLJO[cY_^a_RTRW_`\]Y^QY\MV_WKQY[PZ_aa]^ca`bbbcceZQXUU\Y]c`__cdbhomnllllu
yu|
}wrrtxyyyy~}yuyvvrnzwvxXQKFCGEBEGIFGHHFFIGHGHKILDDKKNMLKHKJHIF?GGNKKKMKKKIFGCD@DAHIB?IJHO]aZ[d]_TQRX]\\\_ZKW\LR\YIM^QO\_accccb\dcbdcfXQUTQ[WZ`_^^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMC@IFCFKJFFFHGGIGFFILJNFDKKMNJLIKJHHFBHHQMKKOLJKIGGED?ECIIBBGFET]Y^X_Y_[]UXXO]]QKJV^X^[]UY`RQ__bb``bb`cbaddbXOQQQZR[]]]]^__dhgljnnp{{|~{
srw
|x\SKCAHFDGMRHCQJEGHHEFKJMPEFIJKNLLIKLIHGDHKQOMMPLLJKHICDAEDIGCBGFDWUE\T]SV_XOTUNZZMIJT`a[_X^^a]OYa\``_bcb]abW__TPOOOWQ\[[\\^_bffeleoow|{{}
zo
~INFDFFHDIRbPCV^IGGHDFMKPPEIIJKNLKKLKIJGEJNQQNOOMNLMHKADACDGECBEGBMHBKKOONLFMFGIJHGLKMOPILOPOSOLPSRUZYWYXXdWOSTPPNMOTSZXXZ]\`adecgcklpsryy{z
~{}{
}KIEEHFGDKM]LGGXLGHJHGMLQQHLKKKNMUNOJJKGGKOSSNPONNNNGKF`ED_LEfdEN[I^[rmOMUmYLDP`UkWgJ]WU^DLQULLSVQRTXWTXUT\UPfZhhdXRjRVUT[\[``abab`fhfnkhrz|}~}|zr{z{
~z{LIFGFHEEKOSIJF`THIOJIOMRQKMLLORUROOILMGHLP[YOPPNOOOIJQQI|YYqtYQmHqnoaVPqqsPCksmqspSo_[nX]V\XUkhU]VcZ`Y[_VVXjtuu^_v^Wa[[f[_`aaa]`agmpl`pwtx}vxzlv~tx}|~|z~wwNJEHMNBDLLFIKEQVLKNIKRXWQMOOMQTNOQOKKNGMOR[ZSQROPPPJHZx]TxehZSURvgtlpbnfjQrOMwmjrpsrqrpoo]ezuxqqzq~s}ku}bRh|essorr{|o~xnr_``baZ`_gknkblfgmw~~{xwtvzir~ns|~wx{~x|u|||ssNKF`]GAEMMHJJGJPOMMJNV^YULQSNXZMSSRNKOHQRTYWVPTPPPQKHgxlcxrm[KNVypumubovPeeIfvqmwojfxxiWrQhzmijzz}lxzohoYvvjuup_rf}ilx|o^__ba[]bdgiidgbcdllppstsssyqrxblugqy{srvy~suzn|}yxrnNJSuNCBFPPHJKIKPOOOMPZ`ZWKTWPa^RVQYRLOISTUXWWPUPONRJKrouuquqdibWnLqp^FhyWvTLiy}x`y{sna]mocRhqunmypwlvttrln]t~zkmy|ktl|kpvux^__b^]_ddighee^abiiijknokqomjpacfcowxompsy~nqpk{ztsomLL[VHGEGRPILMJKPQPPPPW\XUMUYUeXRRY^SMMITTVWYWOSNNNQHRmHiwK`dvvVXlOnl{sajgvULWkh}lmlx_Zpz{^`zscroxqhd}ir|^TLl`vukiu{zm~xk|p\^^b[^bddgeeebZccikkrsrvglihdg`akagsrlgmmr|kmhk{tmmkmOHKKHJHHQPLNOLKRRROSRWRVTPWZVVTTTa_PNMJTSTQVVNNLMOPJHQNPULKLSTSSTPVUQQNQQXYRNPUTXXX[[URSW[WXXZOSUWXXR^YW^VTPYRWWWWX^Zgr^[[Y\]_cZ_ccdfdccbZcbgfemnmueegcaf_]g`dlhfgkhpzhggjujhgilQIKLLMKJSQMQPOLVUTPTUXUYUQZ]VUTWUYWOOLMVTQNUSNOMLQPKJQQKQMKKPRUSQRSSIHLNOQRQQQTVRXW\WSRPRTUVSZQNSRWVTYVTZVTRUTTTWXV\Y^`]\ZZ\\_c[]bcdfdddaY`acabhhimbad^_c]Zd\bma^fefmsdigjkedcfhPJKLOOLMSPNSQQMXWUTUWWWZUS\`VWVYUXSPPJNWSPNUPNQNLSPMOUSNQNMNQUQUQRTUNKMOQTTRRQVWUYZ[YSURTWVVY[TPTUXUUZUWZVSRWVUW[XZ_\UX^\^][]`a^[bbcgfedbX_ab]`gdfea^_]]^ZZ_Z_g`^]]bhkagfhfd`bcaOLMLQQLOTOOSQOQ[YWWX[YXYV\jdVXYZWVSSOJNVTPOTPPPMMRRPRXTQQOMOSVOXRTUUONMQSVUTTRTWVZ]\ZVVQQVXV[[WQTWVVVYTXXUSRYWUZ^Y]_^U^\^`\[____ZbbdhgddbXa`b^^fcc`b]\\\\YZ[X[a[^]\_b__bdebd__`\PMNNRQMRROSTQOU\ZZW[[\XZ[dqmhd_[XVUWQLMVSMNROQROLQSRUZUSPPMQXWRWSSSXMOOQTXVUUSUXX[^][[VQNUVU[\WRTWVWXVTX[TSRZXW\^Z^_`Ua\aa]`b_\`]c`cghdf`Yc`a__ed_`b[Z\[\YZYXW\Z\[`^_[^^a`^b\Y`ZQNONVQPTQOTTSPW\\\X^\^V\^jqwyc\[UUWQMOVSNQQORTRLRTTYZWUOROSXWTSURRZOPSRV[VWWTVZX\][[]VSMTUU\\VRTVVXYSUZ\USS]XZ]^\```Va[cb]ad^\bab_cfidf^[d`a``ce_b^YZ^[\[YXYWWZZZa\][]\\Z]`W[[ZPOOOYPUTRQWRTP[^^][`\`U\]hjr}slg\TWWQNRZSRQTRTUTKRWV[ZZSOSQVVVTOWRSZRTTTX]WXYSX\X^]YZ]TUNUVW^[XRUUYYYUWZ\VTW^Z]]`]bb]Y_[ea_dd^^cca^efidf^]da`aabd`b^XZ_[\[XXXWW[Y[`\[[\[XZ[^V^Y]POORZPZTUVVSTT^^`^^b\`U]^bkytl}kZUYTPPS\TUTUTVYWLR[W][]ROUSXWWTPXRSWSVUU[]X[YUZ^X_^Y\YQWRYXY_[ZTUVZYZWXZ\VU[^\^`a^dc\^]]eaafd^^dc`\gdhedb_da`a`bb_`^WX^Z\\ZYYWV]Z]^ZY[\[WY\]VXW]SNPVYQ]UVYWWUX__aa`c]_T]_beeuzhWYYSUSV\XWWVVW]XOU]Z^]\TRWSWWUSTXRSVTXWX]^X][V]_X__X\VQXTYZZaY\VWX[Z[YYZ[XW^_`_cbadd\b\`fadfd^_dbb[fchecf`f__aaaa`_^VU]Y[\[Y[YY][[[XXY[YZZ]_]TY]UNSYVS\TVWYVV\`abc`c^_V[`da_zuohY[YUWTW[ZZ\YXY`WPV^\``\TTXPUWVTVWRSUWZZ[_^Z_\V__Z]^Y]URYWYY]bZ^VW[\[\[[Z\YZ__``dbcddbdYafcffe^ab`c^bcidcg_g^abcaa`^_XT[ZZ[[X[XX\[Z[WWYXW\[\`]V]]SOVYVVZUXUXWX]_badad`^YYadb`lfh^[\ZVWXY\\]_[Y[bVTX^]ac\RVYPWWWWWVSUTX\\^``]`\Wa^[^[Z^XUXW[[_`\_XY\\]^_\[]X[`a^`ecdeefbXcedhgd^c``ec\eidei_f]cbcaa`__[XY[YZZXYXW[[Z[WXZTY]\Z`\U^bNSWYVWYX[\XWY^`badada]^Yacb_a``^\\\WW[[]]__\Z]cYZX]`cd_RXYPWWXYYWVWV]]^`a`_b^Ya]]^Y\^YXUW[\`^]_ZZ^]^^a]\[Z\`b_becefefbZdffigb_c^afdZihbfice^bbca``_]\ZX\YYXXZXWZ[ZYWXUU[]]]``bbxKXW[YV\[\]ZW\]_`bdaba]`Xbcbacab][\[XW[\_]`_][`d]\X[becaR\ZOYXZ[[ZWZY`]`bb`ac_\b]_][^]YYTX]]_`_`\[^^`bc]\X\^`bbcedfdefd\efgifcab\cg`\ihbhied`baca_`_\]\Y\YXWXYXW\ZZWWXOXZ]acffrkJYW\ZZ_\[^\X][^_acbaa]b[bdb`bbb\[[ZWXiq`\`_]\ac_^YYcedaS_ZRYX\]][Z[[c`bbc`bda`c^`\^^^YXU[_^]aa`^[`abfc_]T]``cddfegeffe^efhhgdd`Zfg^ahhbhhfc`b`cb___\][Z[YXXXVZV\[ZVVUMXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vuuuuuuuvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyz{{{{{{{{{{{{{{{{{{{{zzzzzzz{{|||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vutuuuutuvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{|||||||z{{{{z{{{zzzz{{||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||xÅÔÒÒÒÒÔ{}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ¼E>????;þ¿¾¾½ÊÔÒÒÒÒÖº}~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}xÕçääääç{~y1333332j{éääääèÊ:23333.¡ÒÌÌÌÌËÙåååååéÇ}~}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}v~ywwwwwwxyyyzzzxopppppprrrrrrrwzyyzzz~|||||||vuuuuuu~
|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vtttttwtvwz{x{xwvwzxzzy~zyyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{|||||||zyyyyyzzzzzzzz{||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwwx}y}}|}{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwww|z}}|}}xxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z{xwww|z}{|}|xxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzx|z}|{}{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyxzyzzx{xxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyxyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{|||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|||||||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrsuuttssssrrqpoooopqsssrrrrstttsqqqrstttttttsstsssttttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqsttssrqqqponnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqrsssssrqqpponnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrrrrssrrqqppppoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpqqqtqrrqqnnppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqqqppqqptnpppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqq|¢prp|nppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqu£xpx }oqqqqpppppqqqpqpppqpppppppppppppppqqqpqqpppqppqqqqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrrq©o£~pqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrsssssssrª¥|¡|rsssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz~|~}|vvwwvuxzxxxxxwxxy¡³©§©ª}{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{|{{¯¢¡µ©«¤{zzxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}}}}}¤¡±¦}}}}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~°¡ ¢~~~~~~
~~}~~~}}}~~~~~~° |~~~~~~~
|||{|}||~~~~~~~~~~¡¬¥¢¢¡~~|}||}}~¢²¦ ¡¦§¬©¡
}||~~
¯¤ ¤¢
}}}
~~
}}~~
~~~~
~~}|}
~}}}}{
~~}~
¡
}~
}}}
~}~~
~}~
~
~~
~{{
~}}}}~~|{{
~}}~~~~~~}~}}
}|}~~~}|}~|z
}}}~~}|}}{zz~
~~~~~}~}~~}}}}~}|z{{
~~}~~}}~~
|}}~}}~}~}~}}~~}}}|{{{zzz{~~~}~~~}~~}|~~~~~~~
~|~~}~~~}~~~}}}|{{|zzzzy~~~~|~~~~}|~~~~~~~~~~~}}}}
~~}}~~~~}}}}}|||{zzzyy~~~~~~~~~}~~}{|~~
~}}}~~}}}}}}}}}|zzyyyz
~~||~}~~~
}}}}}}~~}}}}}}|}}|{yyyyx}
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxxyyy}~
~~}~~
~}}|}~}}}}}}}}}}}}}|{{|z|yyy|~~~
~}|||}}||}}}}}}}}}}||{z|yzz{|~~}{||}
~
~~
~}}||}}|||}||}|}}}|||{z{|zyz{|yy}}|{{~~}}|~||}
~{z|
~~}}}||||||||||||||}|||~~{z{zxz{{|}|~~~~~}}}|}~}~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||}|yz{{xxy{{z|}~~}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||}}|{}|||{|||zzy{|z}
~~~
~~~
~~}|~~}}}}~{|}}~
{z{ywz}
~~~}}}||}~}||}}}}}|~|}|{}||z{z|}}
}~}~~~}||~}}}}|{}|~~~~~}|~}~~~
}|||}~{{}w~vx~}|}|}~~z~~|~~~~~~~~~~~}~~}|~}~}}}{|||{{z}~~|||}||~~|{{}~}~~}{{{}|{{{{~~}||~~~y}~v{vx}|||{}}~}}~~}~~~~|}~}}}{{}}|z||}}}}|||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}{~~~~~~~}||}}|}}}}{|~~~~~~||}||}|}~{|{||||}|}|~|}|{{{|y{|{{}z}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}}}|}|}}}}}}|}|}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||~}|}|}}}~}}~~|{{{||}|{z{{yzyyy{~
~~{zy{}}x|zr}{{}||~~}}
}~~|~~}|}}~}}|~~|}}|}}~~}~|}}{|}~||{|}zzyyyyz{~~
~~~z{y}}zzz}q~z{}}}}}zx
~}~~}~}~~~}~}|
}~}~~~}}||~~~}}}}|}||{|}{{{zzz{{|}}}
~~~}yzz}|yw{t{|tw}~}{{vv}
~~}~~}~~~}~~~~|}}|~~~~}|}}{}~}||{|}{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{}~|}|||{|{|~
~~~~~~~~~z{z}}uqz|zqz~}yxtt
~~~~~}~}}}~~~~}}}~}~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}}~~~~~}}|}}~~~~~~~~}~~
~~~}{z{z|{z
~~}~~~~}~}}z{|
{{sy{|pwuvwyutz
}}}~}~~}~|}}~~|z|z|{|~~}~~}}}~}}{{zx|vyz|qtxwvxury
|}}~}~~}|~~~~}}z{{||}}|}}~}}~~~}}}~}}}}}}z{{|v}yxzzruyyvwwsu
~~~}}}~~~~}||~~~~{{|||}~}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~
}}}|{||yz{z}y{yx~{|{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst
}~}~}~|~}~~}~}~~~~~~||||zyvyyzyvyv~|{{{~}{}~}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}}}~||~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{{{
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~|~}~~~}}~~~~~}}~~~|~~~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~||~}~~}}|~~~~}|~~|}~}~~~
~}|{{||yw{ywxwwx{{z{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqsoxwq{
~~}|~~}~~}}|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{||{zzzzzzxsvupprowvr{
}}~}~~~~|~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxzxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyytuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{wwy{|{}||||{}|}}}}|}|~~~~|z|}{|}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z||{zxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~~}~}~~{}|}{||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|{}|{}xwvyyz||||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~}}}|}z}{zvzxy{{|}}{|}}}}~|~~~}yy{zzzysrtowqwysw{
~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxqytvxtv{~
~||}|x|yzyz|}|{||}}}||{{{zzzupxwyvu|uv|
~
{}~|y|zzz}||}z||}}|z{~~~}}||}|vrvxxvtvu}
}
{||}zz|}}||z|~}|}}~~~~~|}~~~}||xvvw
~
}}||{||}}~~~}~|||}}~~~}}~~~}~}~}}~~|}
~
~}}||||~}}{|}}}}}~~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uy~
}y|~{
}~~~}{}~~}|||}}}}|}}~}}|
h
j|{qq|sstt}usqspurstv{}uvy
hzrss|r~}}~~|}}}||||}|||~}~}}}
}p{pyv~nypus|vyyrpvxqvtturstvinrotvnulwmzsnym}rsvsvmnwlpylu}~|~}}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoolw}xpqzprtfu~n{ysoy}~{~|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyrioyxpkyszozwvvp~~z~}|}~}}~~~~~
xyrz{pp
x
xyks~y{krz|mzyyt}vnoot|uwqy}}m~uo
zrr{|upozks|nv~~}}{}{|}|~}~~}~}~|}~~
}w
~~{|{~{||}}|~}~~~~~~~}}}~|{|~||
}{{|~{||}~~||~}~}~~}}|}~~~~||}~{|||{{~
~|{}~{|{~~}||~}~~}~}}~~|}||~~|}|||}|||~z{{|~
{{~}|||~}|||}~|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}}|||~}|}}|}{||{||}}{{{}|{~}{|}}|}}~}|zz{{||
zz
~|~||}}|}}|~{{{z{|||{{{~{{}{z{~||||}~}{z|z||
|
~~~~||}}{}}|~zz{y{|}{{{{~||||z{}||||~}|{{{{||
z{
}~~||}}~}{~}|}yzzy{|}zz{{}|}||zz}||}|~~{{{|~}|
}|{
|~~}}|}~}~{~}|{yzzyz}}yzz{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~|}~~~~}}~}{}{zyzzyz|}yzz{{z|{{{{|}}}|~}|||~|{
~}}{
~|}}}~~~~~}}{|{zyzzyz{|yzz{{{|z{{{|}}}}}}||}}|
~|~~
}~~~~~{||}}~}~~}}~{~{{zy{zyzz{yzzz{{|z||||~~}|}||}~
~~}|}~~~
~}}~~|~~|~||~~|~}}|||{{zzzzy{yzzyzzz{|y{}{{~}}}}
~}~~~~}}~~~~~~
~~||~}|~}{~|}}}~}|||}{{zyzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌÌÌËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<C9;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;>BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937676=;>:=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHKA=78476::?;D<<:<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA>;A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÔÒÓÔÔÔÔÔÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9>CE?<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMOH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËÊÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ØÙØØØØØØØØÙÙÙÙÛÜÜÜÜÜÜÜÝÜÛÛÛÜÚÓÒÓÓÓÓÓÔÔÔÔÔÔÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILN@99:4;@<7=9AC=@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÏÐÏÏÏÏÏÏÏÏÏÏÏÏÖÞÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¸·©§§§§§§§§§§§§©ÒÒÒÒÒÒÒÓÓÓÒÓÓÓÜãâââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃrliNSbLLVM<::77>C?8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKPFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÌÐÒÒÒÒÒÒÒÒÒÒÒÒÑÞìëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§££££££££££££ g@DDDDDDCCCDC?\ÓÓÒÒÒÒÒÒÒÒÒÒÒÑàìëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËwliJN_MRUM><<7;?C>6:7>?;=B@8<:=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÌÑÒÒÒÒÒÒÒÒÒÒÒÒÑÝêééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¥¢jFIIIIIIIHHHHC`ÒÓÒÒÒÒÒÒÒÒÒÒÒÑßëêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<<<<>::;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÍÐÒÒÒÒÒÒÒÒÑÑÑÑÐÜèççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©©§sQTTTTTTTTTTUQjÒÓÒÒÒÒÒÒÒÒÒÒÒÒßéééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9;:=<;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÎÎÎÎÎÎÎÎÍÍÍÍÍÍÎÏÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÎÎÎÎÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÒÐÐÐÐÐÏÏÏÏÏÏÏÏÏÍÊÊÊÊÊÊÊËËÊËÌÌÌÓÔÔÕÕÕÕÕÕÖÕÖÖÖØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<7@A<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÑÔÏÏÎÑÒÎÏÒÔÕÔÐÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÕÕÕÕÕÖ×××××××××××ØØ×ÖÖÖÖÖ×××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?89:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎÓ»ÏÏÓ¸ÏÑÆÏÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<=B>BB@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÒµ³Õ²¹º¸¹¯¡ÒÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?><7:>9?D>@98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÏÑ ª®Ô£¨²Ñ}~¯°ÑÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<96?B?B:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏÑűÕõÕÓÍÃÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8E@?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÏÖ§±ÔÖ£´ÔÓÀ ÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<==964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÏÔ¤±ÔÕ¢´ÔÕ°¢©ÔÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:<?>=<9@<<::9?@==<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÐÔ¤²ÕÕ¢µÔÔ£¡ºÔÑÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CGDAA8;?<=;<<7558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÐÕ¤³ÕÕ¢¶ÔÍÉÒÑÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF?HHFE@<<>><==<7569969;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÓÐÕ¤³ÕÖ£¶×à ÒÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÇÒÖ£±Ö×¢´Ú²¤¦ÖÒÒÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÑÕµÃÓÕ±ÆÖ¹¿ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<<?GEGKI=667:979:;:<=9>99:8;=>>A>=9<<:=>>;=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÑÑÃÔÒÒÐÃÕÑÑÂÓÒÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??>>AELLA>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÒÒÔÒÒÒÒÕÓÓÓÕÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEK>>786977899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:69896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EIKAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDI;AA;<886586987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<AA<;876797799=?A?<:9@?<>B?:8776=?@@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE><HF89757875898;>>=;89A>=@?A>7596;>AB??@@AB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCDEC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<;979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELBA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:9;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<<DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAD?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
¼ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsnupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿½¾¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ººººººººº¹ºººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸¸·······¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸···¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶···¸·¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨¨©ª§¥¤£¢¢¢£¢ ¢¢¡¡¡ ¡¡¢£¤££¥¥¦¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸·¶······¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥¤¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¦¥¥§¦¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©«««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤¤£¢¢£¢¡ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99>7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡¤¤¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89>6789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥£¢¡¡¡¡¢£¥§¦¦§¬«§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¦¦§§§§¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥£¢¥¦¦¦¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB?DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥§§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:766846789=88;:;?;:;<:9:7768;<;=<::<=<7;>CBDC?=AC@DA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¦¦¥¤¦§¦¥¥¦¦¥¥£ ¡¡ ¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡¡¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?B@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢£¢£¤¤¦¦¥¤¤£¢¡¡ª¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::78:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢¢£¤¤¤¤¢¡¡ª¡¡ ¢¡ ¢¡¢£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡ ¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¢°§¡¢¢¢ ®yz¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¢¢¢¡ ¤¥§ ¦K ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>99;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ¡ £¢yª¤ ¨ZI ¡¡ ¢¤¤¢ xvg]_WTEE99;<Y>@8B?9<<>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¨mo«¢¬KO¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:<>9?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¤T¨ªdTQ ¡¡¡ ¡¢¡ }xjabb\Q<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq bb¢f]Q¡£¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢ec}¤g\Q¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\LF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡¤hgfyfZT¢ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡neblocVW¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ysr^x¡aYSZ¡¡}
£ª¡¢¤¢«±·´¹µ±´¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;6397:9>8::<=998;9;<:>=;@@;<B<@:847<;B@AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡ y¨¡ª|bR`
¡§ ¤£ª©³¶±µ°¨ª¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v }b©nkp
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VQQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{¨xiRpVmy{~
§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
~~ zOCIvIWosw{¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¦ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
S44;y
urC8Nko ¢±®©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~¡nFdU?zzgdL<9Mnu¨®²°°µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWMO_^\NUUbQDTM;?9<895875795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
¡¡¢¤Qt°H{xmRiYWq ¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUJTOOJDPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ªª©§¢¥¨©«©©¬_¿Ø¬F£]k{^^¢¡¤¤§¤©«®¬¥¤¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdWOYKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®««¬¤¡¢¦©§¨¦oz½ÀªÌ¨³HVpRx©§ ¢¡®¬«ª§®¨¥¤©©ª©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_VZNRNQOSe\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨§¦¨©§©©¤¨§¤¥£¢¢r®Éβ°²nS¾ Tl£¢ ¡¡¡¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOXO^edlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤ ¢ £§¡¦®¦¦ }
{н¨rR¬gc£ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvxb_\UYQUW[c_s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?B?:8:>?C@DA:;>=@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯««¬¨¨«¯©¨ª©¢ ¢¨ª®±²®«¤©{j½Ã«®vdpxzv£¤§£¡ ¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\U\hdocmiib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¡ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£ £ªª§¯·¶´³¶²°²§u^N{spsqx|~
¡¤£¢¤¡¤¢§ £ ¡¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxjb[__\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>BE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ «²¶»¾¿À¿Å¿µ«pfXGwsuzqnihbbiiovwx}£¨¬¦¤¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__amhvkqhiibZSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°²´µºÈÒÙÜÕǺx\[OE^kejphdbgYW]Y^fnnmmln¨ÈÆ»¢§ª¬§«©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YSai`ftotitdidb[LK>:9898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÄÇÃÄÅÙâßϽ°¨xbUWME^lacjeabi]U\WYZ^ca\c©ÅÀ½¸©¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`b_^kcbnxuwnm[bRV\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAA;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅƼÇÇÎÐÄ«{o\STVK@^lefneb^faUXZXVWWb¥¶»¹«´²³©®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklgnurruqg^`\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÄ¿ÄÂÆÉÉÀ¤ZLHJNH>Z`blqha_e\XUSTQV¶Ã¯¬ªªª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|uklndomiqxoyjia]gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÇÆÄÄø³Áº wLJQI=MTbjinc__Z\USZ·´«®¥¤£§¤ ¥ª´±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{wnkihvZfrxszgg^d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÃÄÂŽ»¾eVKBJ=^VXkg[ZYXVp°±«¸µ³¬©£¡©¬§ ¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyvuefijh^jonyxcba`^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÎÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈÈ¿Æƶ lKYARr{ZRPSk¾Àº½»¼º¼¬¦©»º¹·À³µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqocagvijjtnyl^d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÌÐÍÇÌÉÂÂÇÂËËÈÇÌÉÍÅÅÅÄÉÀªxoSOqÂÒÇÄÁÄÇÁ¼¾´±°°Â¾¾ÁÆÀ¿¸¶Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r}xpg`kjwlifuotc]cUWUSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÃÿ¿¾ÄËÈÊËɼ¼ÈÇÉÍÈÃÈÉÉÅÅÁÁÀÂμsj
ZËËÍÏŶ¿¿ÀÀº»½µ³³À¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyspfefckdbkmoo_Y]WVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ãº¸¹¼¾ÁÇÁÆ»¹ÈÈÃÅÄÀÃÁÁÀÄÁ½¼ÂÁÒËÄÈÑÁ¯½½¸¹»»¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfaebaccdjcgc[ZZ]YQOE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹¾ºº´À¸µ·²®º»·À·¼ÊÏÀ»¿À¼»Ä½ºÀÄ¿½½¶¾È¤fÍÄ¿ÀÉ¿°Á¿º·»¾¹µ¸´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qdabchjggjej^VVTYOSLF8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ¹¿»ÁÕº¿»ÃµºÇ·¶¹»¼¸¹µºÄɦBÉ¿¿»Á¾¹Æ½Â¿¼Å¸¶·´¸¶¶»»¸¶´·ºµ³¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zyqmeefpjelhXYOKKKRJLHD9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹º»¿¼ÏÄx©Ì½Ç·¹¸¶´·¹³µ²ºÅÊFÊ¿¿¾½¼¿ÈÃÅžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knqgqktfbn`\THKKDJCCG?:;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼»À·ª¤®°¸»²½¾»Ä¶µ¸µ·¿¾Ä¼ÂÄ×®t»ÈÏÂÀ¸®µµ»½·¹±¾ÃÇL{Íÿ¾½¼ÇÌÇÇÄǽµµ¶Á½»»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢rfljnuoxchb\cQKUHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£°¹½¼²¼¾¼Å¸±¸¹¼ÆÉÊÂÇÉÒqt®ÑÑÌÊĵº¿ÄȾ¾´¾ÀÀ{YsËƾÁ¼¿ÃÌÊÇÅÆÀ¹½¼Ä¿¿¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltlln_c_abNHN?E@?DC;;::;:8;<:9<>::>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´»Åк¾¼Ä¾·¼À¿ÉÏÇÈÊÊÁrt¦ÌÌËÍÊÆÂÃËÎÁ¼¸¼º±rif»ÈÄÀÀ¿ÄÀÊÉÃÃÄùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{z{mmx|`qc[_`_TI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼·»»«Úþ¶¾À¾¾º¦©²¶ÃÀ¥yvyÄÆËÈÁÃÀÀÉÊÁ¿»¹±¡xq®ÈÅÄ¿ÀÁ¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³µ¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsxthp^\_]ZRFEDMIAD=H;;59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯··²µ³·¹¼»¶»»Ä·mν¶¹À½«}nhnmrsx}½¿ÆÀ¹À¼¾ÅĽ½¸±¯ÊÂü½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸··½¹»±¶²ÈÀ»¶´±±·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|wmu{qoj\``ZSPAFIGK@ECI<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÀͲv³½¶µÂ¥iZ^`MR[[ntw¡¸¸Âº³»·»½¿º»»®£¿Äþ¼¿»»¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ°µ´´½º¾ºº»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦{zsvvwoqa_f][UJ=??GG=GCC9:5;99><<9:<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Âɧ
x ¯µjfgVY`IIMPTlw¦°·¾¹²µ²¼¹¼¶¹¾µ «¨t®ÉÄÀ½¿¹³®²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtwrl_ca\^OIB?=IDFMD@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·¿Åª|v¡`TCXUGajVOEJa¡¬¯¶ºµ´²¬¼¹¸µ¸Á½³¦ªt¦Ë¿¹ºµ®¥¬³±¦°¨ ¥¶µÂ·¶´¥¨ª¨°¶³²ºµ»»»µ¸¶°¶Ä²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´¶¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wp|ovsnc^gY]]SONA?JCAJJ@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸¸¿´yoOJ?dYBNwjNA\°µ³µ²´¯¬»º¸¶¹¿Æv¬ e©¿¸µ²±¤¦§¤¥©®¹¬««¥¨¤«®¯§°«¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrwsmujl]\kU^\PNHDGMBGNF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³·¶|XFAOYJJXwcAS£¹³´²°±°¹¸¶»·»¼¢±«¤s¬°©««£¨¡ ¨®¤£¤ ¢¦¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wryhutneUadW]ROMI@ISENC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²¼©hM?RxqPIIKgZES¯»±¬³¯®¬¶¶²´µ®©¦¦¨ ¨©¡§¤¨ ¢¢¡¥¥££ ¥ ¤¬¥¦¨¤¢££«¬³®©®®®§ª¨¬¡ª¨««¦¢£¦¢ ¥¢¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦¡x|vzcwmn]QiUPOGPMMCPR@>;>49:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬¨½Âª¥½hDRQWIJ`JUadc®µª²´®ª«¯°²³¥ ¢ £¤¨£ª £¥¨ ¡¢£¨¨§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ ¤ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£~|uv}nl{diVRdNJHGOSNKNH<E@<2@859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡© ªÆ¿Ê PAsvOmJKcfts`[`q±¯®³µª¦¬¬£¢¢¤¤ ¤ª¡¡¦§«¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¢¥¢¯¨®²«¦«ª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}wy|eyz`bSUaHIJKSTJSQM9?A67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¤ÆÆWSJe¤Ze}or\Qkc[e`^k´°°¸¬¦¡¢£¥¦© ¦¤§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§¡ £±®²±´ª²®£¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvsilf\SZZMQKOOVMSMB7>C78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢ª£yUiqvupcvvXXc`chZYWg®¬¯§¢ ¡£¢¥¡¤¤¨©¬©¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½¶¾°¬±®©ª´±°¨«¨³¶¸³¸²´¤ ¥ ¬¡¡¢¡ ¥¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§}xvjxu^m[RaIRUHFUWJCMG=KI8E<77;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¡ £op`cXL[RZMLPXRHMMG¬ª©¥ ¦ ¨¥±ª§®£«®¶°µ²±®¶¸½¿ºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«®±¹¸¼¯³°µÂ¼·¾³³µ¢¬¢©©²©«¨§¨ª§ § ¨¨¥¤ª¢¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vrmiwmin\X\CWNJGMHCFN=>L>4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·¤°¦£bW^e`WMQG=?@CC?>BQx©©ª¦¢£
«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶º»ÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÉ¿°¹¹½¹Â¾¸´»ÆĽü·³ª³ª³´¯³®ª¯£¬¨¶±£°¦¡£°±®°¤¥¯£¡ ¡¦¡¤ªª £ ¦¨¡¢¤££¡¤¦¢¤|trklurqhW\QFUHDJPI?EB4FH95<>7;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<<;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ |_^e`QGE<C>F<>96N~ª³§££¢ ¥«¦xm ¤¢«¬´¼¶Ã½¾³»ÁÃÂÅÀ¿ÂÆÅÅÃÈÂÀÅÇÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿ÀþÇÆ·ÃÊÉÃÁÇ¿º´º»µ»·°¶²ªº²®¼¸¿»º«¸«ª¸»µ¼®®¸£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢
~zrkdioxkeZ\FLMEDTMECE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;?>=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡}sjaWOE>IZ|obB=\®¬ wrqmp¦®´¹Å»ÍÇ˾ÁÌÍÍÌÈÈÐÌÌÌÇÊÅÆÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÍÓÐÓÓÌÊÁÆÆÆÊÈÏÀÉÑÍÇÆÈƼÄÁ¾¿¿¶¾³¿ÀÃÃÇÄÇį¿¹²¸½Äº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrog^ZZDOMDEPIDCA55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A?<@?>9;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £jf]TIDA?K¥ ²£yqroly¤¶º¹¾ËÁÓÑÓÈÍÎÑÓÑÒÐÐÑÑÍÎÏÐÅÍÔÕØÑ×ÍÆÇÉÌÃÅÊÏÊÓ×Ñ×ÒÕÖÓÔÈÌÆÌÍÉÓÍÎÓÍÆÉÊÊÂÆÌÇÉÉƿó³ÈÅËËËÏÇÊ¿¾¿½ÁÇÅÌÌÉÉÀÃÀ®¯³¨¢ª£¦©¬¤¥¦
{ruvgcgvjeVXRDNF@IQC>B=:22A<E<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡bTLJDC?CR¯Ñ½²¯¦ ¤¡}xqkebhrpr{
upnqsp
³Ã¾ÅÑÐ×ÖÕÒÖÍÔÖÖÔÓÑÒÓÔÒÏÒÃÐÓÖØÕÕÒËÊÎÑËÆÍÒÊÒÕÖÙÖØÓÖØÍÒÊÏÑÌÏÑÌÓÐÀÉÈËÄÌÍÌÏÏÅÇȶÀËÀÒÍÌÐÆÊÉÀÄÃÈÎÍÐÑÏÍÊÈ͸·»¨¥«§£ª¥©¨¨}xsvpc`erc]R\JKGAEIJ>;A8>5586;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¤¥ ¢¡ZI@ADAFQv²¯¦ wica____^__]alusppolqquÄÈÇÔÖ××ÖÓÖÐÕÔÙÔÔÎÏÕÔÔÑÑÌÑÍÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐØ×ØÑØÒ×ÙÔÖÌÏÏÉÍÒËÎÑÀÆÄÉÇÏÎÑÑÒÈÌÍÀËÍÆÔÏÌÏÈÄËÇÇÈÌËÔÔÑÕÏÒÌÓ¹ű¥¨µ®§¨«¥²¨°³¬
|zqstmbcim_VQ`JJCECRM@<>43:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><?@=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¥®·¨«·ØÔÕÙÙÑÎп¼Ìɶ¾®¦ª¨¡£¬fC8=>DXª¨}qecb__a_^a`_``_`emppnkorvwÌÁÓÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÑÊÏÌÓÖÒÑÕÍÏÕÕÑÅÑÔÊÐÔÕÖÎÓÑØ×××ËÈÎÄÉÏÌÊÌÀÉÁÉÊÎÎÏËÐÎÎÌÏÏÈÌÐÐËÎËÃÊÇÉÍËÌÒÓÎÔÒÑÐÐʽȹ°®»¹µ«¶°¨¸³¾»±
zvopokadnpaX\[JFFDMXE;@=33<<87855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6==?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦£§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÁ±©¬©¤±zHFB;W¡k^^^adb``aa```^`_^\bmroostuvy¤¿ÌÕÑÖÓÓØÖÎÎÓËÎÎÅÎÊÒÒÏÇÎÍÍÔËÎÒÍË×ÖÐÌÑÔËËÐÒÓÊÎÑÕÒÕÕÊÀÊÁÆÍÂÉÊÃÍÄÆÉËËÏÊÎÍÐÎÔÌÆÉÐÍÉÇËÅÇÂÆÊÌÍÐÒÇÐÏÎÎÌÐÅÇÁ¸¹½Ãýù³²¾±»ÃĶª¥¡yqrkmh``qhYXhVMGLIPQB;D?;68:8:;57==@;:<=9<=9==:>:<7;=9;@<>;>>A<9=>=B=;776?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±Ç¸ÊÕÖÙÚÛØÌÌÏÈÖÕĵ¯´¨ xlopw{ebbb`]^acb`_``aa__][]grrprspmry¥ÇÓÎÌÐÏÓÔÉÄÈÈÅÆ¿ÃÅÏÎÇÅÇÍÊÑÈËÎÍÆÑÒÐÎÌÔÊÇÊÎÏÇÇÏÒËÐÏźĿÆʽÃÈÊÎÅÃÇÀÇÍÈÄÌÊÌÏÈÄÄÐÉÆÂÆÉÅ¿ÁÇÌËÌÏÂËÌÉÇËÐÅÅÇ»ÇÃÉÉÂÏÁ½¼¿°ÁÉǺ½ª±²§¥¢£xoudk`^fqa[W`GHHGIMTG?J=64355==48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼¹ÌÌÆÐÕÕØÚÛØÐÉÏÏÑÓÈ·»»¤¶~g
¢ª
}~s`[^]^`^`cdc_]]^_``_[Z\`lrqnokloo}¹ÑËÂÂÏËÍĺ¿Ãº»º¹¾ÈÆÂÃÀÃÈÊÉÈÊÈÁÅÌÆÈÊÍÉÄÁÊÉÁÁËÐÅËÈ¿¹Á¼ÆǾÀÆÏËÄÀûÉÇɼÉÇÅÊÁ¾ÂËÆÅľƽ½ÁÃÅÌÅƼÀÉÃÅÇÒÄÁÉ¿ÊÊÆÈÆÑÃÃÆîÄËÇÃÊ·¿¼º´©¬¤¥¬£¡¦£ |wsufj[anmZ\XRDLGBGELDFS@54335@=3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÃ¾²°¶l^y|z
uxurp_[[]``bddded`\\^]^^`[YZ\bornkikposÈ»ÀÌÀÆÁ°¶¹±±³±°Á»»¼º¸ÁÁÁľ½¹½¿¹ÄÊÅƽÆÀ·»ÃÉ¿ÁÉ»¶»ºÆÿ¼ÂÎÃƾ¾µÁ½Ã»½Ç¼Ãº´½ÆÄÂ÷À¶¶¾¿»Ìý¶ºÈ»¿¾ËÃÁÆÃÆÉÇÉÆÐÆÂÌDzÇÉÃÎÍÁÅÿ½²·°²§¨¨¹°¥°ª¬zwxkeh`hodV^YJFJFHKAFBFJA9:658853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÅÂÄÈÎÒÊÊÊÇÍÍÎÑÈÐÆÕÔÕ×ÍÊÎÅÉÅÇÁºÅ½¬®¦`cux}{ttc\\]^``bcbbdeb]\[\^\^]Z[\^hsqmggnoryÄúÀ¸°°¦©«¥·³µ´³³´»¶½²·°´®²»Â¼Áļ¿º´²º¾À¸È¸´¼¶Á½¸½ÇÁÄ»µ¯²µº¿´Å¸»µ¬¹½¾À½±»¶°·º³Æ¼·¯»¿µ·µÅ¼¿ÃÆÀÄÅÆÇÌÅÀÆÆ»ÇËÀÏÉÇÃÆÁ÷ý½¶¹¾Ç¿¬µ»µ·¶ytxggebkn^V^`FKHHJFBDAEF?=:566633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐËÍÈÉÈÊÉÊÄÐÍÒÏÍÅÇÁÅÁ¿º¸É·«°[gozx~vw|sh]]]]_`_`da^cec_^\[^\]^Z[[]_lpnifjmns{¿¿¸¸´¯ª«¦¡¨¦©ª±ª¬©´¶°³©®§¬³»º¶Ã¹º¹°«´¹»´Â¹¯À±¾¼»¶¼È¹Ã·ª¨°²À¶¸½°±¨±³µ»¼¬®¶¦®¶®»²±ª¹°®»®¼¸¼ÀÀ¾ºÃ¿ÆÃÅÀ¼ÆÂÈ˸ÅÇÅ¿ÇÄúÄÆ»ÆÉÌ˳¹Â½»³tvwki`bliYWW[ALKMJEAC@GA;::996854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÄÏÇÍÁÂÆ¿ÄÄÃÃÊÂÉÊ¿À¼Áº³µµÃ®ª°[i~{x}
z{wn^]\\]_`__dcbcdb`_^Z[ZZ]ZZZZ\enohfgiknr¹°µ¤£¥¥£¤ª¤¨¢«ª¬«°£¦ªµ¶±½¸¯·¯¨®¸´´¼¸³¼°¸¹¶²¼Á²Á¯¦©£«±³´¨½ª«¨«®µ´¦¨¡¤¯©²¦¨¨®¥¨·¬±³·ºº»²¼¾¾¿Å¿µÂÁÇÈ·¿ÀÅ·ÄÃÀ»¿Ä¾ÄÈÌÊ¿¿ÄÀÀ©stsji\aodWVXPHZRSKFFE>?@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÍÃǹ¹ËÂ˾»É¶½Ã¾ºÊ·ÁÃÁ´¶¼¶±¯µ¼©«cmz}~xt~|swe_]\\^_`^_ccab``_^]\ZXY[[YXZ\_fkfdfehkor
©¥«£££ ¡¨££¥¥§¦® ¤¦¬²°··§°¬¨ª´«´º±¶¶®¶º³°»º±·¥ ¤ §±¨¬©ºª¥¦§¨§³ ¨§¤¦¬§¤ ¡±¬²µ³´±µ½¶»ÁÀ²»¾ÃÁ²¹¹Â³À½Àµ¸¼½¾¼ÂÇÄÃÄ¿ÀÄ xqlbf`ko`UY_HNhOTHFKF<=@=:;;826536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;>97776788666;::;9:;<859<:>>@;ȵ¶½¸ºÀº½µ ¡¦º¶«³³»³ÄÏÉËÂƸ·ÇÀÌ¿¸Ê·»Å¸³Å¸³¿À¬µ¼²¬¦¯´¡£ir
|xusomjiipi_`]\\\^__acb````^\[\\XYXXXVX[]_dccfgggkmn¨ ¡¦£¥£§¢«°±µ¤©ªª¬¬¥´¸·°¬³µ¯³¶¯±ª¤¢²¥¦ª¹¢¦¦ ¨« ¥£°©¬¨ª«¬°³¹¯¸¹º°¶¼»º¬³³¹³½´·±±¶µ¿µ½À½Ã»»½{sl_e^ddXTW^IW]KPGJJGA<??A;?<05536:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»¸ÁÁÁ´¤¤¤¦À²¯¶¬µ·ÅÏÈÈÀÆ»»ÃÃϾ¹Ç¸¸¿·²Â´±»»¬¹º±¢©«§m~
xrmomkb^bff]]^]]]\]_`abccba_\[[ZZYXXWWWXXXZ]bddfffhikr§ §¥¦¢¥¡¯®®¯²¡¥£®«¨¢µ°²²¬©°³¨»³§¶¡££¢®£¢ª¶«££¦¦¦£ ¡¬¨£¤¦«³´ªµ°²«³¹´¯ª°²²³·³®©®²·°º¶º½À¸³±yuf_f_[ZVSZUK[QLJEHKIC=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ¸½¿¶¾¼¿³¥£¥±Ãµ¶½´¹ÁÌÈƿŶÁÀÇζÀý³¹¹²¿¶±¹»²´¯£ª¡xxoqtqhediec\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWVWadecdeddhjv ¡¡©£¨«§¯°«£¤¸ª¡ ¯¨·«§§®±¤¸°¤· £«¦¡¹°£¡¤¢ ¡©ª¤¢£ªª±¨´¬ª§³°¥«®³±¯°¯¯§¨¨²®±´°¼´º¸¯£zve_aWYXSRTKM^LPLGHLKE=@>=B<:7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´ºÂ±¾·½®§§¢ª»À½À¹®´¸ÁÌÇÅÂýŸÈ̲ÁÂÁ®¼»µ»¼µ¹¹°¯°ª¡©|wqilrtphhedfa\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[bccbcbbcfi ¦¥£¦§¦ «¯¦ ¢£·¨¡¡¢©³¢¥¨¥°¦±®¬µ¡©¡¢±±££¡§§¡¢¤¥¥«¤¥°§¥£«¬¦©®°¯«¨ªª³¦¦«¯´±®¼¶±°¯ {xseb\[]XNLQHRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847763321./2556;:8;7876<;:;;A8x»»±¶½°»±·¬¥¦¬·»¼Áź²¹µÄÉÉÀÃÆÅǶÆijÁ¿Å«··½¶½º»µ²¬¨£t~vncafihfgifil`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWUTVVRTRU`a_`a_``bdi~¢ ¥¡¬¥¤¤£¤£««¥¥±ª¡¡¥ª¨¢®¬ª©®¢¢¢¢«©°¢¡£¤ ¢ ¢¤¥£«¥¢£«¤«¥®²ª¦¥¦¦´¦ª¨³µ´¹º°«¬sqp`[WVVRGQOHZ\ORJTKSLEGJD8;;><9667:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:8698598989;9@9{µ´¬´»²°«²¨§¯¹¹³ÀȺ¶À¯ÅÈ̺ÁÉÌȵɼ±½Ãɱ¸Áµ¼À¼´µª¬¦r{tiijlgjlmkjle]\\[[\ZXZ][[^``\XXZYXWXWTUVUTUURRNQY]\]]^^__bdm¡ ¨©«¨¬§©¦¤¥¯¤¥¯© ®«³ ¦¦¢¤¡©ª¡¡¡ ££¡£¡¢¨£¢¨« «°¤®¸¦£¤£¬©¨«¯´·²½µ³«¯
uti[XYRURFXLQ[XMUOQLQRINJB=??A?=75799<<977:79:;<=>;7;;:=67:;8976989:6:=99577571141-+/434988::8::748=8?9~³§³¶®¨¨¯®©¨¬·¶¬¼Ê»¶¿¬ËÆŸÁÎÏdzĺ·»Âȱ¸¿·¼¾»³¶¦© ztvwnmhmmmpggifd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNOQYZZZ]\\]_`d{}z «©¦¯¬¨°¥©¡¤¨§¯§ª ¥¡¨«¥ ¡¤¡¢¥¥§©¨ °°¦±½¨ £¬´ª®§°´°¹µÀ±®±«~rtcVTVNRJGVPRRLLXNKMORHNKACFDD>A75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8´¬¦±·ª¥¢±«ª§©²°¤¶Æ´¹º³ÊŹºÁËÐʲ¶¸¼½Àñ°±·®´´»³´££vkglnqnrjokdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVTRNNNRWXZYYX\\]aj|v{q¨ «¦¦¬¨ ¦£
¤£¢¥§¡ ¢¢¦¤§©§¡ ´²¨³¸¡£·¬©¤³²¦µ»µ«¬±£zsn^NQQMODNNNPKFNNJJNNQIMJAHLHHC>958889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12876:999984988A7w¶¦¤·±¥§¤ª¥ ©¦¤³ª¢²Ãµµ²³ÆÆ·ºÃÊÌƳ¬¹½´¸À¯®©°¦®»¯ |n__frpvqjnieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXXXZ]annrl
}¡£¢¤¥¢s~{ £
~~tz££ ¡¤¤¢´¯¬°¦¸¦¥°¡±®±¼ª©¯ªxtdVMRPPMCSNLPMBPQHINSMHJJDKMFKK=749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-02764789::66:87A7x·¡£´¨¦¥¨£¥¥¦¦¦²§¦´Á¸¯´°Éĸ¹ÀÎƾ³¬ºÁ¬Ä¨¢¦¦·£ ~xfWV_gfighociigb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTQMMJHNTSSTUUWY[]ihmh{yqMVp
_;Vo|s
y{}xqp}¡ §®©©©³¢¦®¬¬¨´£©£tn`[NSRWLDTJPMLFNOIELQMKOJIMPFIJ=7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· £¡¦¦© ¦©§£ª°¨§´Á¹°µ°Ç¸³½Ï¿¹¯®µÂ§ªÄª¢±£~sv]PLQUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MNQMKIFHNQQMORTVXZ`kjdv~qNA?|y`JQnx~
mxvvxpQ|~xvhw~¤¢¨©¥¤°ª¡¤¤¦ª¢ª¡¦¨vng^\HQQSMIUMRILKOIHFJNLMTKQQOGJD=769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')+*,4833989:99::::?9w¶£§¡®¡§¨¥§¨¯¬ª¶¼¶¸·³Á»¶¨¹È¸¶¨¨µ¶ª²¼§©~xqoXMKMNOLMQW[\ZXZUUVVVWYYXXYYXYYYZXXVVWUSPMJE@@kssIMKEDCINOhYOQSTUZnpszgfZSs~|
{vxsouqtz~«
z{iv{prmxx{{wssxgu
||© ¡ ©¥§¤ ¤sib]]JWPRGKXROJMLRJJJLPHLQLRTMFIB=78;99>=:;<98@?::>=7==79937785675251472/2.,//200/-+(().12721987:8775:<;7v®£¡´©¯ª¥«°±ª½´²»¸¶º´±·º²ª¬©¨²¯¢vw|voojYKHHHGEHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQQSV^uzvdt{fyvx|q|w{ok~}tz}tfv|lohs|myq}qmvqhq~pD
wwz}{u}£¡¥xongc[XXUQJSUTOPNPVKNKOOJROHNPLFD<;79;::?=9<:99??;8;=7<9999266856633511224.,,-..-0-+*''*.1362/876966527995y¦ ¦°¬®«¨©±¯±«¼¸¬»¾¸³¬§°§¬¥©¤¡
yvq|mupjmjXKFGEA@CDHLLMQRPQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNPQTX]eopj¥ªÀ~sxb{wn{xy{omytyjjq}Jnhw~mjdly
krl|nr|imps
{~{wpttyyp|ojoooYVXTRQYORTTRXUMNHMKMOKCINGF@:99;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¥¯¢ª¨µ¯®¬´¿«¼Ã¿¥¢¤¡¡szuotkpldljYNDFC@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORVZQX[_¦agrxd}olyu
tltt|jjMy
g1vsl~~tfeu
filukp|hqq|n|t~}qqnumwyujyyxlkpheXR[XYY[MPUVYXNIHEJJHGC@GECG=998;9:9<:9;:::@<9:<98>787715234533645031/**+),,++)(+'),,226,,4775478iO8;5m¤¨±§º¯«²°Â±»ÃÇ
zqtzprpoodqg_TFIC><;9:?@ADCEGILOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQULAIQIb¯²pzvk|lqz
yr txsu5q¨¡¡£
vp||t®hgbjnrmpuipXupvm{}mrnp{svnbu
ux~}{sqqm`[]^\ZYa_RN[ZXWLHJFIG?CABG?CD=;97=;:;;9:99;:?<88=:8;66651121253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥´©®°®Á²»ÁÅ|nul{uxxmwnwdj^IPG=?7449;;;=>@BEHLLLLNPQRTUVWXZXVUTSPLE<5*K[@-gI94/?©®_HLMNPL7CMQSDK
t{{u~lv{|~}u¢z~aªzw~s{]dqtz|wmhjbyo
zoxuzptzxkni]v}|
}q}vw{|xqtufg`[[^S\g^WPTX[UGJJEKG?F@DC>AA=;97<;;=<::99;;=>79>9985653244004645554-,)+(&''&(())((+++/00Uq=23331E~W4=9\x¦ ª ±¨¯À²»Åº{vk}xs }}p~zhvlRXL@E211376688:<>AEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMOQLKT]YRKhzy{q|y|~v¡¥©H®¯®©tm|~hghyn
qHlwryvhmk_v}yzuv|xmow~uusm\^^[cdXge\TPPVYPDLKFOICFCC@@CA=978:::;;:888::?>6;>7595773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|}
¬ ¦¸¯³½³}tp~~}}~¤
x~sx_cWKB60./33123668:=>?BEGHJMNQSTUTTVUSQOGC?80,#[??84.]ps£UFIKMMPW`YoY\^i~
¡¡¦»±§»Çè¡¥|qw
ihptrw{v|nvuf¡«¢zyypgkx|ule^[[^j^bg`ZOLNWRQIPJDNGCJDCADDA<:87=<:<:88778:==8<=68756623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfwz¤¡¬¦«¯°¡xw|~mpj]B@4--//..02234779;=?BDHINQRTRSSTRPOHDB<87/9C><<63.lMPIILLKNV`cfgmt £ª¥¤¬©¶¢¨Á®ǯxº|¡
¡
lpuwqm
q ¤´©¢}kjj|uc^d`[gl]ll^WKHNRQMLLFIPCDMFBCEFB=997=<:;:987767;:6=:785456344566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYoouqv~§ ©ge¤~y}
xx~gMR>/..,/.-/000212467;?CENORTPPQSQNPIED>;<:DF?><752<?R5HHHLLMNR^n|s|§¥¡ ¢¨¨«¨¬©ª¶«¿«¶ÈÈ·ÈÐϾ pi«©
¦¢xz~¢{w«²|£¡¦µ¯¨lss}~si`^b`bhd`gf\REJKPOIILFFMCHLFGCBGEA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppt`m|aw}{ªªBD}x|
v^bP460-1/,.0///..0015>AAMQRSQRSTRNSLEE@<>=FG@A@8662<9;FHGIJNOQYm
w¡¥¨³¼·¤®««¦¨´«°¶²±»±³¾³Ã«ºÉʷÿ¸¥¢°³¬ª£
¦¦ £¦¢«¨¥
¤¡ «¡¤¨±£¦·º ¢°¢¢£¡«¯¬²µ¢¤ªyz~ibi]fc^dd^gg_[OCIHSNFHLFJGFFHAKFCFFA;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLhbWioXz
v
ÚÈsV|z
qna@E64<3/110-,+-1.-4?CAMUQRSUUVUN[PGHE<>>FHCEA7;<5C;=FKIGHQOPW¢±©±Àƪ³Å¶«³¿³¸¾¶¿´Á¶»º£¸Å¨¶Éǵ¾¹´¨£´°±§¯«¥v¤¡¬²´ª®©®¶»²º¬°µ¢±¬±µ»·µ®´ §¨£§©¯¬²¹·¸¦¶©¤x
w[ceWgcbd`ag`[TJDDLUQHIJDIGEA@@KDBMG<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AFWQJL[YQbcWyup}u
{¿»£¼´y
zxn]V@EM<6:56AB764//6CHBQ\PQUWU\VP_UILKA?>GKFFD;>@7D7?BJJEFVSP^¤£±³Áµ·ÁÌȵ»Ä½³³À¶¸Áµ¿¯·t±³¥ºÄ¤°Æ¹±³±´¨¤µ¶ª± ¢¢¥°®¦«§¤ ¬´»¢¨²ºµ¼¿Ì¿ÅŽ½³Á·º·¾·º·¹¬¬°¥°©½°¼ºÁÁ«¹§ª~~lXdbYkfjfW\cYVSIGFLQGCHIAHD>?BBL@@MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALQVSYUZvjo~nzsxb¹¡£{z|}}wzueP\dGEL;Qca[^SF?;HPEZcQRXXZgYT``LSPEA?IJHEEA@D<E6B>HGJLSZT]®¸´º¸È¿¹½ÉÌ»¼Á»·µ»º¶½´º±Æ`u²¤±«½©¥¨«ª¤¢²µ «¨ ®¥§¦¥¤¢§±´§²²½¶Á¾ÓÉÉÓÆÃÅÌÂÊÃÀ¾½¾»¼·´¯¸·¶Ã¹Å½Âǯ¹©¡«¤¨µs`cc_Xc`jgRX`VRUIEENK@>GD=JA=B@=F>;HA796379>489:57045/26389374426?8@>GKRTSQPOQQPJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRKQ]glkpslrrsÕÀµ }~x{|y~t}zkfpuY]\Pedb`ed][XW\MdmURmm_n_XgdUYUJDBKKIFHHHHBI:D?HKTTV\Z[¹À¸½¶Å¿º¸Éʺ¶¹µ·¹²·µ³®¶¶du¨p^¢¬ ¢¤ª¥ ¨¦ ¤¬¥ª°¸°½¹ÔÑÏÖÐÊÌÒÌÏÎÊÆ¿¾ÂʽÁ¼ÁÀÄÄÅʾÈ㤻°´¯«¸»{m^a]Z_bZdcP[`SPKCAEFE<@E>AHA@D=:E>=J?37535;=468977022/24169775555D3ELM>51/006:477@IOI;-&**(-./,@M+/54mI0Ht?>BD@CDFKODQ\Yh_onlotu³« ¡
~|s{
{ts{ylmu{hreiligjih`fiilZms¤¼g[oh]ZZTHKNPJKPKSQHLAJFJO_^bgia·Ç°¹²º½µ±ÄƵ¯¸±°»«²±§«·«¶§§N¦¥¡§¬¯¨°¨´´ÔÕÕÖÓËÐÔÕÍÓÏÍÅÂÉоÉÉÊÉÑÇÌÍÂÐÑ·¯Ã¼Ä¹¥µºÂ¢pe^^_YaXZfZQ]XOPBBHEBH;AC>AG??A7;D>@H=46655;:687654/10146278875367C5B8?-0-1349=97,.,1;FK=),(.0007K?-46TW0DwC;B>EBACJM?UYReVshqoyy ©¦}|p{r}qxulqx~qznxslipmcjmpxiw|~Ë¿Áߧmcxnc[a`JPRUNY^P]\NPNTQUT\nmvq¸¬´¦°µª¬¼¿°ª´¦¤¸¦«® «´£±®¦«¬¥¨¢¬ÏÒÕÒÎÌÓÔÔÐÔÑÎÈÃÔÑÇÍÒÓÓ×ÌÑÑÅÒÖÅÀÎÇǨ¾·Î{pg_d^XaS^ZPQTQOH>@FABE<@A>ED>??:==<<JA45465<888664412/03526768533;=<E=@11+/249>5901022-2DN3)/3.32=N238C}_2AtD:==I>@CFH<VRMNZu
wlwo}~¡¡y
{r~zu
ovrks}{w{sxrjsrioqzyqz¾Ë~²vrvhak]CZZ[VecYdjTX\]`d^cwz~©£¥¡ ¨¥ª°¸ª¥³£¡¢£¡§±¦j¢~§°¡¡¡¥¤©ÈÍÏÈÂÌÑÔÒÔÒÎÓÍÆÖÒÌÔØÖÖØÔ×ÕÉÔÚÍÉ××ÑʬÃÂËtpebaYUZT\PKGIJJ@;:;DAD<BC>GB>BB;<9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/--;R017/532FD28>nb5=tM99@I<AD?A;PLFKYpu}hsxr
x~xs{}wznwpmuvx}t
|ylvtn}vtx{µ;AÅ¥~|ieWICfcecgjdnw[^fhknin ££¥±£¤³¡¥ ¨ £±
~
z©£~«³¨§½Ãƹ¶ÆÎÒÑÒÐÌÒËÉÔÎÐÕÚ××ØÔÙØÍØÛÎÉÙÚÑÖ¾Ë˵zxpf^[SWR[VFGJIEE=:7:@@B:FD?DCADB;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BS39254/7K75<`bA<svV87AH:?C><9QECJTknnpbpqs
|
|x
zyq{{uz
yp|oozq{qnztw}|u~{¯sX©Â¶pnb=^hrpqpnxvehoruxqz ©¡¬¡¥«}
~lz|®ª§¯¶½©¾ÇÌÉÉÌËÐÉÃÒÊÔ×Ø×Ø×ÕÛ×ÓÙÛÕÐÛÚÑÖÈÔË{}jj\[QTT_HCFIH>A>=7:=?;=G=?AAADA>?:87EB755479/566435542323647553458EBDCEB56<FNSM[nfcnskaV>,4LG865434BF4=W_hLux^8;?F<<B<99D?CGRj^mdbfkvqz~~{|~
vyo{{tz vutu}soou|
zv{·Å¤ÁɸwpeNfczw¢xyv{{vm¥£«
z}¡¼¡©¦¦®¨¶¿ÀÀ¹ÇÊÎÎÅÍÊÑÖÕÕÙÕ×ÛÔÖÙÚÛ×ÛÚÚØÎÛÆ}{ikgbUXVVNLENC;==<8:<>8=@6=?@=?><9867DA6455=80665547745613854564557HH=DJE7925;H>;::7IP]ZRUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Xea][htzylwvz{~~|z}
zzu}tm|}~t|~x~xnt~
|}z©Ã¡½£}}r~s¦
{hGq ¤
~¦
¥¸¢¨¡¤¯·ºµ¬ÀÆÊÐÈÇÌÏÓÓÒØÓÕ×À×ØÙÛØÚÚÙÙ×Û¹{{zmkgYb\TPOIDLB<<>99::99;=6?>><=9:;;37D@8378>60688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8689?=DRSRX^UXfmmmiqsy{z|{z|{}t
yrzsm~~w
¢n¨
z |}£¢ ¤¯
Wr«\¢¢¢
¤³¡¢¨²¹¬¦½ÂÇÍÈÆÏÍÐÌÏ×ÑÑÕ®ÖÕØÚØÚÚ×ÕÙÙ rwih_^YTXYCAHC?>>:49:;7:;;3;;?=>7;9:1:H>:37=@51677255?65;55858:57735HR7GOK994=EJB>1FCLB98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcczma~omwxyz|
{{v
sp
zuvvt
~¦¤¦¢¨s±§
¢£©° n·
ÄȲ¡¥²d¤ÍÈ
ª££¤¨¡£³´¦£¼Á¾ÇÅÅÉÈÉÂËÓÍÍÔ©ÒÑÖÖÖØÚÔÓÚÎukf``_PKV\BBGC;A=837;<:8=649:<:82?992:I:=67BC32:96264>=4;>6949;57944JQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBeGu}|m}xz~z~vv{lo~y|wx|~£´¨¤«³¡§ ¥¤¯¢¸³¡ ¤¯¢¤§©°¤ À£É¹«¢¥²
¨¢
t²¤¡} ¡¡±®£¤·¾³ÅÇĽÃÿÆÎÊÉÒ§ÏÍÓÑÐÖØÒÏؼu|x_bWbXRIKOEBCD5>:76:?;<7=42669774=5;5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=89567=:JFDGM[\YIha;Hz{m
y|x
}px|}|osz}{x
¨¼©³½¯¥®³³©£¢°¬µ¢¸¥¤©·¦¤£©ª¤¯±ª »»Ê¡i¶·ª°¢«½¤^©²|}´« ¡¢ ¥¯¨¡¥³¸«ÂÈĶ»½¼ÅÈÈÂСÆÉÍÍÄ×ÖÐËÓ£s}k_\UaSQGD><CAB8?874>F<<6<35355454B39:BM:A;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPfHa`bpI@r|u~m}}|~pww{«ÃÀ°½Æ»³´Á¼´¬«³·¨²½«º¤¨¹·ª¦¦¢¢¤£ª¯²±ª£¢¥¥£¹®¨À»¬²¹¥¤§}½¯y§°« £¬ ¡§§¤¢¤°³¦ÁÆ𰻶ÅÄÿͧÇÃÇüÖÐÌÄÊvud_\b]OKCL@EG>A?B<:4>A==5=6>333242A17@BN?G@CNCA=C=;86CB5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\hF_igZ]\{un~{~q~zz¨´ÇÉÀÂÌÁúǼº¯«¹»²¶º³À®¥À¤«°¼¼ª®«££¨¬¯µ°ª ª¢°´§¢ººµÁ»«¨²¤¤¨©Ääy¡ ¦ ®ª¡ ² ¡¤ §¤¦§¤¯¥¿Ä®©·µÉþ¶Ï²Å¾Ã¼³ÑÉÇÁµw{o_Z^lTNIDMKKI@A=BD<5AD;:3=8B332263A05IEN>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBg\Me\fTcjyr{wz¡¨»¾ÉÈÊÂÒÉÊÂͼÁ³¼¿§º¿¾¼Ä¸¬Á©¬³»½ª°ª¤¥£¬®´¶µ ®¥¢£´¼©¨¼Á£µ¶¯«¯¬ª«ª§¥¤uy
££©¥}£ ¢µ¦¥¤£¥¦¥£¨¨¢²¨»Àį¥³·ÌÀ¹®Ã³»½Á¹Â¿p{c[X^\MMNJGDCHBBACK:4DH:;4<7E.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQF7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>lI_XaZddWx
~ ®§£Ã¾ÉÄÈÆÒÍÎÍ˼·°º½´½Ë»ÃÁ¶·¼³À¹¼®¯¨¡©¨¶®©²·¬¢§¡«··©¥¯¾Ä±½¹³§©³³®¥¨ ±Å§}}ª¥¡¢¡Z¥e£³¥¢««§§¡¤©§¶¬©º¼Ãµ¦´µËÁ¸ª¶¬³»¸®¨¸º¼·np\ZVWPGKSMK?AHEDHFF85FM;>7>AJ.32025B55PWN<LFKRLOGGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|hV<>@BFBsFiIRecLF¥¡¨¥¢¯¾®¡Ç¾ÆÅÈÇÎÎÎÒʾ»¶±º»¼¿ÏµÄ½·¹·²²¶³·³¬¦««¹«©¨¯°£®¤§¤¥´Á°«¬³¾Â¹À¹³§¸´·³¯¤°¯¥¡sÁ}±¦£ ©¡ `J¥T°¯¥¯¯¦¡¦ §¡´©ª³½¼»«°²ÇÀ¸¦¬«±±£¡²²´¥sqg^\PRMEQQPQ;HKIFGAC=9KT?A:=EM07544:B34NWO<JKNUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@CAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}hX<:BC@=REWSsbVFH«¡¨®§
£¥µÉ´©Æ¼ÃÄÈËÉÈÌÎǾº³®¹¹ÁÁ͵ȻÁ¹µº±¯¯²´§¤ª´µ«©¦¬¤®¥¥¨¬ºÀ¨«¶¶¿ÁÀ¿¸²²Ã°·½«£®µº¥¦v¾®¡¡©¨ ª¡§mu¢£®²£«©ª«¯¥¥¡¥ª¢±¦©«º·½³²®¾¹¶ £§©¥¦¬©©fhb`SLMGHNJUL=MEMIJ@CD<QU<AABDO18=77?B75UXN?HNQXRPQTJQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW<:=..SaMVH~e^HF¬¡»®ªª¡£¬¤¤¶Ç½´Á»ÂÂÇÉÅÂÎȽ¹²¯¹µÀÂʶƱÁ¼µ»«©¬°££ª´º¦ª§¬ª¨¯§¤«ª¾¼¨¼´¸¾Æ¼¶µ¸À°½À³©µ¶«¿¥£¡» ¶©¥£¡§¥³¢¥¨ª¤¡¢¡µ¯¥¦±««¥¤ª ©¤¡¡´´ºµ¨µ²²£¦ª¡xc_a_LIFHNQIMDFFBQKHADGAVRDH<AGQ1;A7:BF79]YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:h]FDCpbGE§¤Ã¬¤¨ª¨¦¬¢ª¶Å¼¿¸ÀÂÀÈÄ¿ÍÆ»¾¹²°¸´¿Ãȵ¿°¼·º·§¤««¬¡¡«ªÄ¢¥©¬¦«¯¬¢ª¨¿¸¦¾°··Æ¶´¹¸¾²¿Á¶´²´¯½££¡¡¤¢£¾¤©©¬ ¦½¢£¢©« ¤¡µ¬¦²¦°© «¡¡¥¤«±µ±ª¥ª¬ ¡¨je\b^PJHKOMHECI@=OH@;GIH[ROK=HNU4BE8>HG5Cb[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,0Mv\4KZ5,MnW<-=)#zbQ5CKQ9oRF<KxfcXN¢¤Å¬¡¬¢¥ ¦©¬¶±£ª³¶Å½À¶¿Á»É¿Êȶ¸µµ±´´·ÂÆ·¾±¸µº¶ §ª«¥¤Á¥ ©® ¤©°¢¦¨½µ¦²¼·¶µÃ²³·º¾³ÄÀ¸¸®´´´£¤ ¬¡¨¨ª¢Â©¬¦ ½¡¤«««¦ X¦¡ ¸ª¦¶£²¢¡° ¢£¥®³«©¢¢¥¥¤cg\eaMJKKOFEAFK>=IA99JJN]QQI=LV\8FI=DMI8Hc\KCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+waS6SZkWsHE6=ue\LO ¡Ã§¥¢³ ²§ª££¬©¬»±©¬µ±ÈÃÁóÂþÇĽÄʽ°°¶®±µ°Àŵº±°º¶©°©©¦¡¨Â¬±ª¢®±ª¤§½·¦·»½¯·Ã³³Â¿²Ç³º·«´¶ª¢¦¢«¡§«¯¯¯»²¦©©¢¤¸¡¡£®¯«¤¥¡£§´§§´£¯¯ ¢ ¦¬°¥§¢
dh]hfKJLKSBC@IG;;F>89NMU_RSJ>O^]=HPBMLI8Nd]LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<w]^?[U_fr@8<HweA4¤Â¨£ª± £´©²«¦¢¤²¬©»²°´´Æ¿ÄĵÀľÊŶÀɵ«µ©±¹¬ÀÅ´¸®¶º¥«²«ª¡§»µ¨°®´²§ªº³§¹²¸²¸Àª¸²Â½´Å§¾®·µ©§¬¡¥¤¡¡¤®·²µ¶¨¤£ ·£¤¥®±²¥©¤¡¨¢¯²¢§¯¥«¦ ©©ª¢§¡zfj]lkOQNNT=BANC;:I?77QN]_RVQAW`\BJSHVKH:Td]NFON[W[RPQX]GAB[PBG>NC9HGHNP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1\cZ33906p[bH05JqjVCWFyfC;¤¤¡¥¿¦¨®® ©µª¸¯«¤ª´·±°¸·°·¸·Å½Ãǽ¼ÄÂÇÁ¹ÁÆÁºª¶¥»Á÷¸ª²¼£°²¦¨ª¹ª¡§°« ¯´³ªª·µ¬»¬³²¹·¬¸°Áº½¿¦Ãª°¶®©ª«¦ª¡¡ °®³«°¹©¦ ·©¥¢¢¯±³«±§« ¥ ¤´°¦ ©£ ©©§ £~ljmbnnXQQZTACEU@;;H@7:XPd^PWWDY^^NLSO_LJ>Zd^NIQN[UYPKSWZI?DXPDF>N?=IGGQPB=CFBM?:2D?77547?=95E4+75/251.-.,1>*'+=\p=>1.1e[d@1747gYaF(@8m}h\V:{cC=¨¡©¼¡ª¯ª¢±·©¥´²«¡µ½¯³¸½»½·¶ÁÿÉĹÅÃÀÀ¹Å¾Á¸¯¶¨«·²¼¿¿´ª®²¸¬¨®¨©§»¥³«¢±°³¬ª¶³µ¼°±µ¬°µ±ÀºÅ¶«¼¯±·¬¬©¢±¥¤¨£²ª³©ª³§ ¦¤´®§¡¬¬±§²«±©£¨¤ ©¶©¡ ¦¦£
{gmshps_GYfVDCNXDZ9HB5>]Qh\NZ]G[^]OMRXdKKC]c`PLMNXWXPJVVWL=EUJEDAM?AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,+%2+*5K1.'__aV151=`V_8)C3YU\gK5zfL@¤¤¬¶£¬¨¤®µ©®³¸¦¦°¸Æ¶°·¿Á¶´ºÅ¾ÌŹÃÁºÀºÄ¸Á¹²µ¬ªº¸»º¾µ«¯±·¨«««®««¾«¯±£ª±²®®¶²¸¶ª®±§µ¯´º¼É²ªµ´±´¯®¦ ³¨¬ ¤±¢ ¥¯¡¤¢¥¦²©¡¦±¬ªµ¤®°´¯£§¬¸¢¡¡¥££¡{
{lnyou|aF`jZIHZ[={JGE6AbUi[M\aJ[\ZSSSbaLKE`a`PLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`Va.5(C^Q\.+A/JGP[G3cXTKE¯¨±©¬¥£®®µ©·³·£¬´·Êº´»»À¾´³·ÄÀÌǼĽ·¿ÀÀ¸À½²½®¨º¹¸·Â·¬®²¹§®¬§¤²ª¯»¤¬²²¦§¢±³°²±µ°·²©®«²¦¸¯µ³ÄŶ©µµ«°©§¢¶¦± ¤°§©©¢¥¥¤¶§¢°³«§±§°µ¬¤¡¬¨ª¹¢¨¤
¨¤¡w|nqxv|]Kel\JOd\?b{GI8GgWf[L^bMXYWUXUi]OOHa]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANHg27'FaLV%-B.=ELQ<3rkLDD¤¤¬«¦£°²²ª·°µ«µºÉ¸®Á¼Ã·³±µÂÃÏÄÀ¾´½ÁÀ»¿¼´Ä¨ª¹±¶·À¼¯¬´´¡§±¥¦±¥²µ¬ª²±«¨¨´¹¬´²µ¬³¬ª«¨¬©¹²°Ç¿¸¤¹°©¦§¬°¥¤£®£©¯¢¢¢£¬£ ¡©¦¥¸¤«´´¤ª«¨¬®¶®¢£¨ª ¤´£ ¢§ x~}}}rts~~\Sdn^NZg]FD[G:NmXbZMabNVVVWTYh^QRLdZ[TKGOTSNGIVS\N;P^JBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Dd;6*HdHJ+:I?3CIS,>k?HI©ª¡©¯¤§£³´°´µ±° «½Ìº®Á¼Ç±´´ÂÃÑÄÅ¿Á²¾Ã¼¿¸½Å¨·¬´¸¼À±¬²®¡£§®ª§¥±£«±ª®«±®®¬«²º§·±²©²©ª¦¥£º¬ª°Â¹´¬¹¨©¨©§°¥©¤¢®ª¨¢¢¬¥«¡§¨¡¬¦¢¬¬¶°± ©¢ª°¬¦§©£ ¨ ¡¥}w
utrvl_Y`ncQsr\K<|F?WuX`YOc\MUVUWQ\b_SOOhXWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*35>10485(5/*,.30;),,'%234$,2-860)(1<^K0.IgDF8<B05EKX1@]@NF¬§¡©±¨¨¯µ¬¸µ®©¤««½É»°¾¸Ã¯°¬²ÄÄÎÎÿ¿´ÁÄĺÁ´ÉĬ¯·®³ºÀ¾´®®¬¦§©±©¦¨²¦´ª°±¯²¬³º¤¸³¬¬§« £°·«ª¹¶¤µµ£©¨¬¬ª¬ ¨¦§±±£¦¥¡¡«ª¡ ¥£¢ª£¬¢¦±¶¬¬¢¥£©«®©¡¥¤¤
¥£|{u~ux£xk^`ngWfdN@gLDbzWbXReUMVUUTO\]aVKNiWVVIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06XZ.0JgAA<<C+:JO^4DBIID¯¤¢©¯©¨µª¶°ª¤«©©¼ÁÀ¸¹´¼µ¦²¯ÄÊËÑ¿Á»¸ÀÀºÁºÂÄ®±µ²´¼Á¾³±¯¬¬¨·ª¦°«¸®¨±°®±«µªµ¶§µ·«¬¤©ª¤³³¨¨¤³´µ¡©¨«¨«¦««¨¹¶©ª©©¡©©¡ £¢¦¢ª¦´®§¥©¢¤¥¦§ª¢££~
£t~xuzx~prggqx\atiO]VHmyUdVRbOLVTUQOX[bVHPjTVTGPYUI>IHOQPxMNV=<KD?@A<@CUC9AK=5;E13;97*4:=+-341*8**+*,)*(/*&)%3;,$2)2021%/2Rc02?f=NX?C,?LT_/Ik7RF;¯¥ª¬ª¤®²´¯ª¥¯©©»¾»Á±°¹¢¶¯ÉÇÈÑÀ¿½º¼Ã½»ÃÁ¿¿¯²³²¶½¼Á±²³«³©¥µ¨¤¬³²¸¯¢µ±¯±¹ª¸®ª¯·«ªª« £¡µ©¡¯²¡µª¨§ª£ª¡¡¬¨½¯«®¡§§«¯¢¢ ¨¦§©°©¢¬¢¡¡¢£§¨¥|
¤
¡xt}txz{tt{j£vi^elug|RWp^KxsTdSQ_MMSZgNMWYeYGSjRQ>BNQaQ:IHLSIqQLS;<I?;<=;@@W<<>H73CB15:93-5::)-31--6)(+-,52#2)',%.;.&1.0-14%,0Mh:38_=ad?F1CP[[+HP;YC4°¤¥ª¢¥£¬¦´³±©¤°§ª¸¾Á¼°¨¹ª§®°ÉÇÈѽÀ¾¹¿¿½É¼Â¸±°µ²º¼¹À³´¼¹¬£µ¦§¬±¶¸²¦§¹µ´¼¯»¥¶ª©¯¤¥¬«¨ª²¤´©ª§©¤©£©¨©½«³°®©£ ®²¢¤¥¤¥§ª¥©¡ ¤¨©
}~
¢rzx~|hw|{uqr~izd`hcr
{mhy]^VCX{mTaPRYKKMpt]IZ[gZFVgOC>KNDCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KI1%90%,,09/,,+6'17#-/GjI14X=fbAJ7GS`U*=<F\@*¯©¤£¡ª¤·²±¤©±§¹Á½µ°¤¹¬¨¨°ÃÉÉÌÁ·½¿µ¸ÁºÈµÃµ´³µ²½¹º½¶®¹¶¿¢³¦ª«®µ·´©º»¨±¿²º ¯´¶©¬±£¥§©£¤¯¦¯¡«©§¢ª£© »§®±®¡ª¢£®¬¦¡¢¢ª¢££¡¥¬z}£}yl}vyxb{zrpqsxjujgchansmbjp`oB]ykV^NQQKIMSYVM\^mWEXaO^PHMDF;7HEKO<rhJK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*L>*49&'.34.0+/4&,:$40AhZ13S=e_DL6KVdN)=3R]=#«§£¡§£·¯®¢¯°©«¹Âº³ ¹¯«§³ºÇÊÈ¿·Á¾¯´¾·Ä¶Â²°º±²À¶»¾·ª¹¸½ª¤´¦¨ª¯¹°¨¸¼£¾´³¡®¸µ§¦¨°³ ¤¥¨¡¤¬¨¨ ª¯§ ¦¢¨ °¸£±¯¡«¡¬¤¦¦©¢©¦¨¡©}~|{¡y}
|tp|qst`yxjopqpjsdzlhedbf`[rjqMNiXZMQLKHPRQHM\_oTEYZRgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZgH*?0][5(¥¬¡¤¡·«°£´´©©ºÅ·³® ¸®¬°µÅÇÀ¶¿Â¹°´½·¿»¾°¬¾°³¿²½Â¹ª»º¸§¨µ¨§«¯«³°¥»¶¤«ºµ®±¸¯©¥§¯²¡¤ ¤¤¡¯¦¡£¨¯¡ ¢¤¤¢·°¡¦±«¬£¯ª¥¨£¥ª¤¢¨¡z}yz
y{prvnot_xwemlljjofrikfh^dt`[kviZJ^\XOOKHHRUG39]^lQEYUYeMHIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<"8R=*113>D5,-'42*;+139cm74GAf[HTDU]hD.<2dW,2¡¡ª¤¡¢ ·ª® »¸¥¬½Å´±¯£µ°¬¬®µÃü³¿º·±³¹¸º·º¯®À³´¹°¿À¸½ºµ¥¢²©§©±«± ¿µ¤§µµ¨²¼©¨¥©°¬£§¤¥¡±¥£¨©¢¥ ¤¸¨¤§®¦¥¡¨¨¢¡¡¡ª £§¤yz
|z
|w~|ltrllsawuiijggohhicfii`jcjh\f{c`StT\[SLJGIOS@!*h^jMDWU^`KIGEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,?0-N?.+-7,1195,&.5-80576`tA3CDg[KWGU`hB379gP'2¢¤¤¦£´§ªº¶§¬ÄÁ·±¬£¶®§®®¶¿¾¼²Á·°®²¶¶¸¶¶ª½³®²±½¿·®¼»±¤¶ª¥¥³¨ªÀ«§¥¯²©¬µ»¨©«±¥©¦¤¦¬¢¤©¡¡§µ¦°ª®¡¡¡ ¦¡ ¥¬¡©x
v}
{s}}fxokjkfuskcgddvcefffjjcks[_Z]mdaNiXZ`VJGHKMSX>9_liHCUT][IHFFA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=+*,0B*JK./*+3722(57$+7.72685]yN2>HiZLZJVbf@:3BhH%5£ ¬¡ ¤³±¢²½¶¡±Æ¼º±±¤¶¬ª®¨¸»º¹À²®®®¶®²¸³©¬¹±¯®³¶º¶°¸½¬¦µ©¯£©®¢À ±£®°®·µ®¢¦©¥§¥¥¢¨¬¯¦º¨®¢¡¤¤¨ª§©¦{t
|
p~fymhkifqrk\hcctbfgjnlgjjhn]lltpaTcidfZIFLMOYQPVaeUAWSYTFHFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24;6#3*)6.55465Z|]19Kj[M[KXdd@A1JfC'4¡°¡©±¯¹¿µ ´Â»½º±¦¶¯¨¤¶·¶¶¬¼¯¬ª«¶ª³¸®¦³µ²®©°¶¶±³µº¦©µ¨¨¡¨¬§½¬£®¯µµ¬¬±¯©¢¢«¨¦¤ª¢¤¤ªªª¼§¤ ¡k¢p£u©§¡ymi~vql}
p^cag
ktw~gguheW\hsnNPjcgs
h_efnmj]`afNKD9GTg^JGPPUULHSaptfF[QUPFHEC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=A@@=28@E=1,+08=G601.*.*/568,#1'214:175Xl16Ok[N\K[fb>G1Qd=*.£
° ªª£½Å¯©¸Â¸½¼§¶°¥«£¶²±²°¹©¦¬´¦¯µ£©¸¶¶¨§¬¶²®´³¡©³ª £¥¦«¹¥¥¯³·®¥©ª¬¥¡ §¦ ¥¥§¦¨©¤¶°¤£¢£ ¤¥ªrx
¡vif}sx o~|¡ |tullheczlqaS
mbliqXiqpX^i[ll[qnzr
gZ^GN?G_MERVVQQRWUg^MWIRRPFGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82).1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Wa70(¦«ªª§ª¿Ã®±º½·À¾ª¥·°©¬¥²´®¯²¶ª©¥°¥´³µ¶µ¦§¨³°²§®ª±§¢¢¡¡³£¥¥µ½¦¬§«ª¬¨¥¡ ¦£¥£¤¤©££¤¦¡·¤¤ £¯©¡
±£¬yÔ¨ÁÇyx±¥·dÀ¿yy|Êr¼Åzrµ¦»{l±«°xhkX±®nei¼¼ngzorØ~Skc¶²rt¡ªWOWbPVNFU[XQPR\W[QA]DQNEGI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww21Tk\O[M^g\>L1[]41!¦§ª¥¬²¨°Â½±µ¿µ·¾Áª§³¬¬©§®³©¯µ³¦§¦´¥§¸¯³²¶«¥¤§±®®°¦ª§£°¢¡«¢´º¢ª©¡®¥¡¡§§ §§§¡¦¢¡±££
¯kjª~fdp¦q®¡¤~x»}k¡v±_j´[¥e`f{fjxk©e¾rg¦u±j|±xtcmm§n[ EhfEu`~g|¤§Z_«ixyj§7J¯\XSld[KNX_\WV;NPWW/ITSJDEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:5/'$203B/=;Uv2-Vj\OYL_gY:M5_Y30¢¬¨¥£¤ª±·¬´½¿¯¶Ä²·ºÁ¦©°«®¨©¯®£°º®£¤²£¨¸¨³³°£¥ ª¯¬¯¦§£¡¯¢¬¥¡´³¢«¢ ¡¨£¡¦¤¢¡ª¦¦ ¡
µµx
©µv³·~©k¦{w«gk±\«ztrx °vwqkkl|N¤XHbb~ch¦`yruS^P©mcq~b.Q¡o[Skh`LK[dX\ZB?²yXXA#MhFCDA@A19>88:84;:9<9:A:E::;6:CB8=?KNG:5:AFB@AD<FD;0201;F,0.940,.(/3,>831/2-D1<<S}n3+Xj\OXM_gX7J8aU50³¦¦¡¯©§³¬©»¶Â°»Â¸¶¿ª¬¦±© ®¼ª §´¬£«µ¤¦²³§¤¢§ª²¨°§¥« ¤¨´®¢©©¨ª ¤§¢ £¤£¢©¦¢ Õ¹p°Á~Æ|Ö»|¥¤{¤¥z¬yV¯z~j¹[ºw}¦|z©x{±nt¼
oP¯§ÅQ zc`ªbsrm`Sµ´È|c¤3Bv]PjidP@XgZdaJHNnN\ROYfYCD?E?0=<59;74<;8=:<C:F:;>6:@C;6@OLH<:;DHCBCD<EF81211DC./0483+-(.323971#%5*>3==Qwj6*Yi[K]O_fT7G:aQ71%¢²¨¨¦´ª¥´©¤¼·Á°¹À±µ´º³µ§±¯¢°²¦¶¨§¹£¯± ³´±¡¤§©°¨´¨¤© ¨§°©£¢¨¡¥¡¡¡¡¡¡¢¦¡¦§¡²nhµq«n¦r´sr¶{¤£¡¥~°vÒÒv\®{
¤oª¦k
}}{°rx³etofRÈZÂ\yb_`vsb^YÊo¿uMKµSUÆdTQjcfXAOk`lhPUHI9=VRZWXIC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>HI91746A>/.24252-).26,742&60;5:=Pqh9'Wi\BOT_eP5G=aM620¡¥°¬£«¼¦´¦§¶»¼²º¿·¶³¹¹²¤´³ ±±¢«°¤¦¹¤±°´¸ª ¦¡©¤±¨¬©¤¦¡¦¥ª°¦¢ ¥ ¤¦¦¦¡¢ ¡¦¢
¬{w¨v£©o§¡¢®
³\r³R®}¤rØ~x~
v¯w´aelZ°XKuyf`^vwhk]¯wxl5yÈ®²_BTo^g`EPm_pmVVM.fdiSXQ;AD@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@>V_cN6GC`I:99 ¹°´Â¨³¨©²º·³¸¾¹·±´»µ¤·²³¬¨¬§µ«¨°±«´¤© ¨¡µ¦¦©¢£¡¡¤¦¯¦¡©¢¡¨¥¡¥©¤¬¡ ¡¢ ¦©}}¥x¡ªp§¡£ª|xo±Z¨ ytÙwt¨¤|{²^d ~l\«[Zhgªdr{ks]«Z koeOJC¡\[Lt]bgM[a_rt_KV7JXGE=GFAM35A8.;>05A78@<6=<F?:<6?=B7.HVJEAH6KIN@IK@EN::@4.;>102144+*05/7,&21($$6671<PeeA&Uf[?2U_bL7FI_C2?8¢¿«´Â®«©¥´°·±µ¾¹¹²°¶º¨º´¯¤¤§§ª°©¯©µ¬ª¯¡¡ ¦¤¤¹¢£« ¡¨°¯§¨¦£¨«§©§ £¤¡¢¡ ¡«®mr´s©u§s´xs³¤£¤w¸o{¢jk¶Z¡
ei ¢§nr´t²j
ku³af¢oj\_M¡|Rs£ly~oq\¯V<wfTon.\§OcSkebmZc]ap{cTZR>>mo3CB@?L9!7@6.;@37C58??3;<CDBJFMIF62JTKEBI6IJP?HNCFP=<E50;;010/75,+,426/#00,,289/9N`eD'UdY>/U^aL5FM^81C8¦»¡²À¯«¬§·©·¯µÀ´»¯®·¶ªÀµ¨© ¥£¡ª©§µ£²¨®ª § ¥«¹£¤¢ ª¶°¨¬©¥¥£ª²¤¦«±¡£¢ ¡©«Ô»s°ÃÃ~Õ¸x§z£¶u}wv²`ºyÀ|u¸cµ©}¬©q{t¼§ ia¦¯¢~tª}¾os¼t²uxnqn¤t½^w}Zay¼kZV\jy^jaegcmxoZ\ZDA@s@CF+5G"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7A9§¢¼¡²Ã°ª««±§¸¯¶Ä°¹°¬¹®À±«£¢£¡©¤ª²£´¦¥ª§¬¹£ ¥¢¯¹²¬£§§¤¤ ¨«¨£³£¥¨¡¢£¯ ©¶·xµwmknsoy
tÁ»½z±¨ps¹|||¤»¹½uz´£tvvt°ufjµtrqw¶^z}hynyb¬pu
X[§jEeZTf`c^cQhgqmuBNPMD;ZM?J3;0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>707LT_G'SbW8*O^]=+:VV'>;<§ ¡¿¥´Ã´¬«¨¬«©º®°Å®´±¬¶¦´¸¬©¡¡¥ «¤©¥´§§ £¬¤¾¦¡ª¡¡§¡±µ·¤¤¢¦¥ª©¥¥¡¨¥§¤©¡£¯¨¦¡j}i¦xr}tyd{½¾ÀºorasjZ]ack`cmwbke^`cphr}
gj~rux}~b[wthP\n}|kXk{rJJopNtMEX]gaLZXgc_O[nuirRPDEN;HI=M?2,2A?8/5?C<9;@;=C>RVVWYZ[\\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7JR_I'S`V4)P_L(3>[O'?2>© ¨¢Â£µºµ£¬¥®§§µ±¬È«¯±©³¢½±±¦ ¢¨¢¬¦¯££´©¥¡¦¨¾§¨¥¤¨¨°²¿¬§§¢©¨£¬ ££§¬£ «£±§ °¥¡§¢£¥¡gm}qw
µª
¡ z¥lj||uqxyvv|jsuuew}wkozm`c]phMXZfj`WZpznmfTOFS9OZMRO(+:KB635=@A9:C><ENSSTVWXYZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J&R^S10T^:+=8\K,<-@³¡³¢À¡¤²²¶ ª¦²§¥°´ªÈª¬¯¤´¥À§³ ¤¤£ ª§¬£¢¶«ª¥Á«£¡¡§¨§²Ä°««¨ª¡¢¤¯§¢¥¨®§ ¯ ¡¦ ¢ ®|ª©
z£f¡³¯
v{}vyzofykuzris{vkudyf`jecdfkYl{pij\SLPD^TF@?>,4@F;45;>A;<?>>HNNOPSUVVXZ\_bca_^^]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMMD/T]Q05M[17E4[G5<,@´ º¯¿¬«®²± «¦±¢¬³¯Ä¯ª«¢²¼£³¦¢¡¨¥©¦¤¥²´°¥®¾ ¬¢¡¨ª«£´È´ª¤«¦©£¬ ©¯ª¦¤¬¢® ¤¯£§£§e|e~cymik{¤ªjd}geeih{¡lh£wkj£slnzzXe^^mv\hswwnxxsmytv|kY^lud^sik|qkc^RNXIdXAJ4>G7?FD71<=?AD;;DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AJ[J/7ZO6)EY/DO2YC;?.=¥º¼¹¯¬´±ª¥¨°¦°¼°©¦£®°¬ £¢¦ª£¥¨©²£¢¯¥¶¹¦®£¡¤{¥¢¨´Ä¸¥¢§¯¢£¢©©¡ ª°«¬¤« ª§§ «¡¥°¤ª £©}½r´rhx¹Ä¸q¢£z¥s«|ËÀÀ»q¢}À½ÂÁ|{ÃÀ~l¥²noÊzwvyyqzpw
ynxcf_yd`ec^thldcXLWIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>I[L*#BP.#F[3PY/VAB;/8£¹Ã´°°À©¨£¯©°®¦³´¯©¥¥¦°««¢ª§¢¬¢¥¨¤¤´¤¢¦«·³§®¢¥ ¦¬¤«ÀÀ±¡©¯©¢¡£ª£ ¢¯ª§¤¤§¡¦¥¨¤¨©©« ¤ ¢~Îxz¤y_®^§¢ |§s«¯^cª{§
u³c«¡³j®t}·aZ£Ímu{Ú{p~v~e{vvk|n}marlph``yd\qhjdg`RTSW]KOC5AHDD8>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5477164('$!',&&/(&+360$7;SL+,-K0';\;L-!P@F4.1ÂÀ¿µ´°¸£ª§³«¦²¬¬ª¢ª§¯© §¥¢¯ ¨§£¦¡°¬§®¬°ª¨¬¤¤§£®¥«°¨¿Ç³¨©±®¢©ª ¯©¬ª¨¨¤¢«¬²¥¢ªª£¦¤¡¯¦ q
u
¨q±}r¬~¡¥wª}s~«v{|~ª¢~«z{VÄzoÁ}muomeveoawnronfpuuqagme_oiingdXS]aZRSC9II@D<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;92478452&# 1' 1' '45-&7=WJ-<(>1)3V@F!G:C1.+°ÓÆƲ´ ££¢¢¬¯¶®¨°¦¨ª¦««¦¡¤¡ ¥«¢¥ ¨¨£°¬©§®¬¨§¨£¡ ¦¢¯¬¤¬µª¹Í²¦®¬¢¬ ©²«««¬«¤£¬¯±¢¨«®¥¥ª¨©°¡¢¤¤j¤uz©tz²p¦q ¤``R«®v§z{f£¤£}©~®_}©U¢z¢{ïÅr¯³³¹qb©¯Âthnqnzxypmgeerpf|ic]W`jXYULLQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ('"+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÃÉÕÕ¿¡«§ ¯¢°´°®©¬¢§¦¨ª«©¤¦¤¦§§£¬¢¬¡£¯¢«¤µ¯® ¨¦£¢¨ ¥°¦¤¨±¬¶È²µª¬©¡¤³¡§¬¥°ª£¢ª¡³¡ª³°¡¨§®®´¢¢¦{ªlu«y|°o¤Ò¸´¸É²_`©¤ zxªÉt¤¨©ÆÇxf¡¥s}¯]p´b°uK£m§Gd|qq|u~|n\fjsqfk^aYdm\_YINLKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75685/)(%&%$&),4ENPPMFKJVF*L0/=-5OTQ;<F2,$§¤ÀƸ¨²¬¥¢²¸¬ª ¥¨¥ª«©¦¦¦ª£ ®«¦ ¬©¥§¶¢©ª¶²¥ ¥¬§¢ ©¦®¡¤§©°µÃ²³ª¨¥¡£®¥¡¥¦±¯©§¬£·¬¡±¸¯®¦²²²£§¢Nxz£}¤¦¸{{y¹Ìƶx¡~v¥¤¨°
¬}b¥l¤p}r¬`£sq`¼}RUt£{~v|sq\nnxrjo[d_inbd^LLQTAIHFI:9K>B108866877-*5==?BDGILNPTVXYZ[\__^]__]ZZZYUSOH@882.,*.+*'&?QTVWWWYXXWUOUF<E3:P[T6?H,- ©«¤«¹ª®¡¬²³¥ ¥®®«§¦¦£§¡³¯¢©§² ª¥¢µ¢¢¡©´¸¤¢£¡±¦¤¡¢¯®¥¨¢¶²Ä±©©§¢¤¥¦¤«°¢¯¥¦¯¤»¬¡¶¶´±·°±¥®£
ѵ÷y
¦x¡w ¥qª
´nrj£|s¯¥¢¦mq²]¥szk{|m©a£qqbs²¸hw¦}y~ynjyiyrou^eeomfg`J[XX<HH@U4@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^__][ZZXURRQF:2230/++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH$)%s¿¿¼º´§¥µ¡¢£¨¦®«¬¦¢¦ ¡¶§£©§±£¬£¥£ª³³¤¤©®¦£§µ¢ª¤¶«Ã°©«©¡¢ ¦£§¥¨©¯£¥¦½¬½°¬¡¯²¹ª²¥¨°¢§y¨}|°w¤¥m²o |¡§¬
®
ª ¡{~««x z¯^£}¦§c|sj¯]¥kp
]`[ m¦||knctnzagfqnhghCZa[>KU3U8BBC7$$3+''3, /6674359@CFIKMNQSSSVZ]_a``aa]][ZXSPONI8052.*,ATVVVUTUUUUTTUTTTVWWXVUUQHFIJ#((½©Æ¶Á³¬ ¸¥£¤£°°ª¤¹ £« ¯©®¡«¨¤®°¬¦¦¬¬¡ ¥¡¤®¡¨§·©Á¯¥©¤¦¦¥¥ª¬¤¥ª¨¾¤Â«©¢ «²¸©¥²§¨v¯~
}ºe±e} ¦¬°
¦¤¡¡
[lj³`{{±mgo±[~µ]¤kÈ¢d{¼XvµY²}R®z¬X¡m¨|zeuc
xt|bjgqmgefOVd\AU_>I(>:=4!",%2. *1/04579:<ACFHJLNPQRTWZ^`_`ab^_\[XUPNJGC553./@UZXWXWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³±·½º³Á³£¬¦¤¶¨ ³³©£ µ ´¨ª¬¯¬¯¨¢¯¬¨§¡¦®¨¡¤££¦ ¢ª³©½¯¤¨}¡ © ¢©®¨¦¦¢¥©» Ʀ¤¨ ª´´«¥º¬««©£¯¤¸Ãº§¬¯§¦ª~սªb£¿½}~£×º¸µ
½¾l£o«lz²°Çi«°½¬xw¢¾¼s¦{{d~|egy{alekjcPa[Sj\?UbCN)=:4/$%2 $(0496678;>ADFGJKMNNQTW]a\__a^`[\YTQMHC?=A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ¼³³±¿¹²½²¡®¦¥²¦¥¿ª¸²¨¢¿§§²±º¨¯¦§°¬®¥¢¬ £ª ¢¦§¡¨¢¡¬®ªº¨£|¦©¡ª©¡ª§ £ª»¨Å¢ ®£©³³©®¨¹¦suª¤·d ph®nnw¤u®pq¨£®¤rmllfxonqzjqigqii
gqd]bjoY\f}v¦_aqnee¡¡~wgxikzyelcflbKdXJlZ:PeER'K:+# ",)-2.5:457:<?ABDEHKLMOQSV\WZ\``a]][TPLHD=:AB7MXZZYYZYXXYYWWVWY\^^]\\\]^]^][[UW^©¬³©¹¸²³ª©¡®£²©¾²ÄÊ¿·ªÀ¬¤¡§¬ º£¤®¬®§®©
¦ª ££ ¤¦¨£ª ¦¦§°»¬¬{¥© ©£±¦¢«¹¯Á§£²¥«¯°©¬ª¦¶¢¬¶ ¨¥¶£ª©²£ª ²¢¡¢¡¥¡«§¥}g~tusp§lz¢¤sjwqxw|zjmdcodUaY@j\HcaOY+F=+'!750.!%2(*699469;>?ABDEJKKMPPQXTVY^`ac]^UQJED>9=@ASX[\YWXXXXXYXXZ[\\^__`^^^__```_YY`¦¨ª¥´¶®®¢°£ µ±¬Ç¾Æ»¹«£¥¦±©¤·§©µ§¨¢§¬¤§£§¨¦¡¤¨¡¶»¨«|¡¦ª¶£§«·§®Á£¶¥®¯¯«¨¨²· »¥¤¦¶¢§ ª £¬¯ £¯¨¯£ £ª«¡«¡
}f
uuxsj
|£¤
|sszs|jod^pj`[`YndP`ePZ:GGE>2=>9/*&+)&&416668:==?AACIJGJKLMSSSUZ``i`eVPJACB:9EMV[^^[Z\[[[\]]__]^_`aabaaa`bbbdb\[c£§£¯²¬®£©¦§µª¥µ¼°¢£{£²¤¥±©¹§£ª¢®¢¨ ©¨©©º·¤¥y£©¸£¯µ¢¯¯t£½£±wy©°¹u¬£ªd\bv ¥}m³£§ª¢esyp¨m¢¨e¦
wjvp{
`hZughs{¨fzyjoykre_vplkh[gfbbpS\>NNNSG>@UD91/&4:306678<;>@AAFHBGFIKMSTUY]`hfgWQJ<DG<8UR[`ab`^__`aa_\]__`aabcdabaaedchd^]f¦£ ®°¬«©¥¨®¢¦¤«¶±³§«§¬t° ¨«§¹ ¤¬¢§¡u¦©¤»´¨ uw¡¡§²µ³»¦ ~§¢z¡µ¥±ª¯¤z¬¡§¨§
w¥z§{²z¡
cz
mpyp~
s
xgt u}
£
klx{qqgdxojlk[eljet\^ITLR@E5.ZUU6)!09=>743568;:=>>@DI?IEJLGSX[Y[aahfYQH9EL<>bV^bdfd`aa`bb_]`aabbbcfgcba`edcgcaah¢¥¬¬«¨¬¨°¦¦©¥¯È¿±¢¨©µ
¬§¢ ¾ |¬¢¡§¢¤º²¨
qv¡¥«´´Ê©·
°®¬¨¦}¨r{w§h¤y´¦§Â«¡r¥}
²¡}¡ }
mr
~yq{tÅf©£k¤q
hxu|xhhvqhhl^dpmgmXgG]RM2D46Nbe7&3<EGD:64658;8>==?BM?NIJLCPZ]\Wa^il\QE=LM@JdX]cfhgbbbbcc`_babccceiicbbbecafcbbi¢¯§¨¨¥«£·°©ª¦ £¤«¤¦«¸£°¡¨¦½¡y«¢
w¥£¹®¥~bm ¡¡§~¡§
©
£©£ukvM«x¨§©«}¡{z§jkg·~n`dY{dhs}yl]}m_Sp\_kx_Xd|p§ªk£nr¥p
jf m[o}gZ`bXPowfmtskjo^kqmkiXiO^YF9A4HD_l5,ICRMN=84859;6@;;>BO>QRLMBJ\]_W^^bu`MD:MONTb\\ffiibbdbddbab`bdcacikdbddgdbgeach ¸ ©£¦¬ ¶»«¢¡¢¥®¡¯µ£¨¡ §´u§
¬¤©¦±§¢in£ ¡¤£¡ w§¡¦
§«¥x|~¢ps|ym¨{¢sv¦f~w¤_z}t¢n·´ºtµ¨dƸ{p¶r¤cs¬«`|i³~m|q£lr£t
¤`³q}³us[²jcotvqhoXkmsrf]i^cLE=D6RBZs3=SG_JR=<395::6D;;@JP?UMOQ@E_^[ZX``|dHC8LWUWcaZffkkbbeadc`ab`dd_`cknccddhdbgfchh£·ª ¤·´ ¢¤£¦®²®¬¡¡¤«x
q¡}¨ £©¨¥
~j{~}¡ w¢r¡©¥¦©}~z z£xt}¥¢d¡|mho{§}rht«tªh]
v
gªk¸f\¨p`^§vu~ht
on§]¨~x»k~ª\]´g\nrzxki\qkyyc`fXbBQFO7WDSo5K[Z_OZD@151;;6H?:CHU>YRY]>Db^V`Qac}jEB9N[^YegXfgnmbbe_aa__``ec^bdoq`deekecihgki©´§c«º±¯¬¦© ¯±©¤¡ ¡¤jr{z¤©£ iy{£ ¡rhp©¡¥¦{°£¢¸w£³£¤y{ª¢q¡|
¯µ}k¡y~µ£¤«¨|}tªZ]o{xbL{z
cyBLX¢jq{lux±³§wns}ptk¤]vHed`tq~~nf`liv{ddbQ_X]UW@ZFQhESW\bX^ID=B8?A:IF8LEXAWR[VDFb\Z`K`m~rEC<U_bZfjVghmobfg^aa\]^ahb_ecvm]egfkdflihki°S^ ¦³¹²²©¢¬ª¢¬¤¢¨ ¡woy
|r¡s¡
©}l
q¡x|¤¡¢}µ{¥z©|§hwm~t¡sr|p®}¤¦¤o^¨gu¢co¥aÓ}{xstb¢~£s¤uk³`sª²¨¼wm~¿¦©´]n|pmr¢r]¤gs¦`h¦mÔ}pz{l|xsn©¤g`ezqlgfdouwgacS\fQQbIXJUaWS[ej[eQFDKMJKBKE8O@QNXSYOSQaeejRcwywIFEc]eZhjTihjocjg`c`\]]_hbahe|d^dgdkdjmghlh°«T\K~©¯±´¯³£
© ¡¤¥©¡ª¡{p}
h}wo
l|¥«yvnw£{£¤³¡¢¶z¬§¤®¥p©
{¤¡r£®¯¤ vµµµÉ¡s`©my t¢w ~oMf£ps¤{ztak} kqd_q}shyi³µ´Æ¦s}zk«v
mvxj{urPE}³_jvkyfkhcuupnW_TYiQShIVMYTV]hknVgWNKBJMKHJOAQKPecjmetss~y|nu{{TPOl^i\kiRjhilglfce`\]]^ibdik{_]dhcjfnmeile¡®¦e?¡²ª®¯µ¢¢ª¢£¥¥§¦zjye yui
z¦ªz}yp¡z ¥¨fnxl¢d|q¥wpg¦z¤zrw¹n¢b} mriªku mo¦_iit¢}`uobh e~iuocfmq¢Z^[c¡m]nz}srd¥mx¢dg§hsp¢oUo _f¨T^TnmskrmpilyskoRYWWfZTmIYO]IXiisjYkVQRFV\MXSaUik_wt{}p}|r{svv^QrbgcpgPjhhklnhdg_]^]`jcjivu]\cicjjsmfkmc¤¥zdtm§®£©°±¦«¦£¢£¢|qi|st}|d|¨£¬~si¦} ©¦¦x~¥²¯¥vx©s¥n¥¢»n}¥¯
|¥zr¨ f~o¬cw¨mª¢vw«¦k°kv³©kmm`~«ªv~~¥v|¤ jx¬h¶tw¾¤Y§«aurtq|uqckohlSW[Vab]kM]R]J^mnw_[qY\`[gtenorbqt`wz~yrys{{vbxdcnrdRkgholrjfia`^\bkbmlzo\\bibljxmglnb¥ª£©ª¨¦®¤¬¥¦©
t{p
~tt
rm}{¦¦§
vol©«£ u~y®£qw}{r§q}}zy{~v {}k
[yyrzqin~quqe_wtruoynnl
^ugwe
¨}t{jpv}wnmgsz|x
\kXyioxrroxxp]knjgV[`W]fkdVbU_Q_pxylkvfjklw}rrusaoubt{xuzux
}{mldyn_Wnghukxjije\`Zcjemqtn[[bldllynhloa¸¨¦ ¢¦¤¥«¢¡¡§©r|}~
{trp
{|
y~¥|¨¡
wr©¨ ª~~¨¦woxn~¨
p}qkp} hm]sqtkvtYrn~~j]jd{
`ixz{u
gwjapqu^q¥
enwqzqghe|{[\jgnv[|yxunssg\mkkbZZ_[Zlq\_aZ_]ft~{uptckkk|~s|xudmuhm|~vz|{yz~o{}s~yshU\qiluougkhd]aXkhlkqrmW[enlgszohjm`ª° ¢¡¨£¢~® ¢¥{
}s~v
qor~z
¡§¢yz¡ª¡¢££ª¡§¦zv§~²¦²¥k|wxe|w|zt ~}uor}w¥
}ym
~zkrhatq~zwwpwt]^ohn_^Z]]ShrVd\]blhu{|sopdkkj}nyrjpplg{rx}{m|yx{}zxNdvjrmpzekecb`[tfpfrqmU]ltmiyzqgikd¹¢ ¤ |¬ }x|nys~mk~z}
« s}{ª¥¢
¦¥u{¥{|«¡ª~owqu`~u
~
nyut¡
s||rqzzw¦
w~pl|nhlmh_zi~|vuvu{x\_p~nu`c[]_RgnTe[^bkivz~qlmdkjhlslluoyoynv~
vq~{z|{`i|juhidjc`i\cuhobumlUcqyepz{sejmm·¡£{x§¥yz
|n|ys
~}jh}}~}¨p ¡
}¨x£ £¡¤}w~|¥¡¢¦~~utpwa}q|q
hwqx}q{|pwzyy¥
{v|gs}y{qlkg_~sh|uvt}sj^`tvpwdcY__RkiUeY_ahjvyqgkdmhfkn}horl~yzls~tv|z}irnsiahlb_qVtomm`xhmWjtvcuz{rbjoz²¥¥ |v¥¡£y{~r{tv
~xgc}y}y¡~p¦¦
w ¡y¤xw~s£¢¢~|vq}n{d|
pl
eun{
|w{
|zq}wx¡vw|xazy~txgmeajjwstu}q|bc`tnurmaZa^[leRcY`ahkvyqcjcmeh}lhthnpi}ymqt|}z~|mvttmeljbbvVipn`xglbjvpfy|zq`rl
¦¨~xªzy|~||xty{t}d_}~u}~}
¤£s{¦¡s¦rkzo¤|zqykul{~~m
xp~~dqi{~sx|uw|{£xt}tv
pa|vzq}obocd|cnovsxwstav`olumo\\_^^j^P]Ycahmt{l`ifjciwnflijmh}{wos}t{}z}}rzxxnljh_ircgqoewgnlayik}{xpaxmª £¨~x¯}w~|}|wxput|o}|a\~s{{¦}}¤m¢¡mf
zp£}{
srukpnu|tnqu||dply|}ssxn|
{§{{~
w~qpehyuup|b_pakt^qj{yylspex]nlsmrX[_`ak[PWXecgqqf]jigbgqodigeiizwuo
t{u
x
|x
zw{{rxjk`phtkromrgole|cnzwqlww~¢¡¨ ¦v«¡t|w
xyss{kspznwoq[Y~wu ¡x
m¡
i¢e~w~||ouplmop{
isqwuyfrnu{yyvsozy
¢{uwynl
^susqpyZ_qapk^pj}{qmmjlv`oojqmYYbabnXQTZfgcvpb]kndbfkn`gf`hkurspuxuy
ww
|{wjqc|c|nqmtjholvx_qy|uut~¤¦
v zrxtpr
tqvlpnvmw~nnUQ«xwrz¡x{¤|r
}hg
qw{z||kvjnkll{az~vzx|yfsks~
zpyovyy||{v}wpjl{ayqnmstV_pbra`lnzqhpffsthqkawe]Wfa`rSQO\fe]yp|`\irbbefj_he[gp~plqt}v|
uu~y{
xs
~|yxfrk`~ookz`jntu_t}yxts
}x °¥
wtwtqp
tprpkiwnn}}nusRMßÈÖ{puu w{s
¡wz~yufk¢cqz{y
|~l{espkkzy[yz}~{zgrjr
|k}~m~
|y|uwxrmgq
nkuphjunT_oepZ`lrxgkkbfxrppc_w``Vk_^vPNKagc]zqu]\evabeedafbYissnkrw}tzuv~s{r|~vesn}e~nplYlnyytav{{vrwwy®
w~}
txpyqoomoseeyq}mz}jhkc¤ÁÜ®ð¡rlvv
£o¡r£~zuxvum
|¢
^
m{}
v
}}k}dxujnysWz
y~yeri~kum}x~trwusqgvzcunqcjwhRaqglV_otzard_h~prnZcr`bVnY\xNMLdgb^wsn\\dy^`de
`cc_Yjrknksw~twxw{q}~{t~sguryl{ntqWqzvyrewyivr§£
}qxy
¡|{rwptjplim|u_axw{qu|h`d|ëÚµÉÃÜrltvjq
|{
vxru}n¡aj}}q~qwhvritwkZ|
}uarj~~|mkw
{|~npyukqlsy`ujo]kw`RerifS`pvtap`]hqsjWghbiXmV[uLKLeg_bss
j\\ey^^dg{ad_]Ykneojtx~ss~{vzs
|vw{ulwvyxtnxz}Xzqogywdv
p
¡¢torw~| xrtnodrifmxx\_y{{qqjafaÕ¶¦xnqw|qk{i||}ztz{qu
u~b
g}~~m|tkmwutwvkc
~|
p_qo{{~ypeyz|~nny~umnkl{~diljYnwZRjsibQcsxlbe^Zjnsb\h_dl`nU[pNHOge\goqmZ\cs`\clwde]]Zllcmjswqp{}txx
|uy|vpxy{on|w^tmizssgs|r vvmw~}v~vqpljau|gbjuz[`x|zmqecggW_qs¼Äwqstk{|}|u
vv}quqszf}r~g}{y}i}vfoyxswslj
xk]pwz}
{}qhx
wz|mkz|vtoih}we]qcXptSTosibNhtxfa^]XootYec]jm`pOYlRDThbZlom{oY[^mcZcpvdg\]`ljcliswqn~{tuz|v~xtsyy~oo{qiyz~nm|vkjxtk
o~vjyzozspljd`t{i`fr{[as}zgpzaed±²wKbZ¥ÚÑr{y
olzy|yxoqt}{jy¥
n~uw
p{~oxh
xr|e|~vcpshyqou{vxzk[o|r}
zqmp
qwwmm}vzehj~raZx[YrnNXrsf`Kmwub^[[Yu}rpXh^fjq_oNWiR?Yg_[pkgyq[[YkeYcqy_h]^elhfliqxom}up{v
qq{|zyukzlo~t}or|{poyf¡
gpgz~
|ixrkkf_aoym_boy]dlzaqv_deÕë¾2:>ryw
nm
u}
|xnv
wnku{uey§}msux~{x
lri~xm|{xbyqdqh~muqu
~su}roZk|sx{|wypkqw~~tmjvuu\iixqZW~SZreL[srf[Jqxp^[ZY\uuiYb[genbiMXfQ=^f]^vf_uq[YUodZeqy[h^`gmgikipx}mjyn{}zu
pnw~{{i{}kt|r{sw}zx~|kl~kh{~}kuqgic[cgso`altahpzast^bc n\5Z¯µuj~wuxpm
tyx}z~rgv~}oq}hvynez
¥}m}u~{|q|~
|i~mk{yjzvr`w~qdrgumu{}owy{t}lWm}uswuzwrmq}{|znmimun]hftrR\|N\q\O\sodVKsykXYXY`qua]]`gdhhfNZhNAad\`va\umXXSta[eosWj_bhkgmlipw|lh}|p~~|zwr{oqw{j~{nxyww}x~~zm£
{vykm
y}{}prpbf^Yg_pp`ahpfjotato[`djv{¾§¤É¸r
s}ytrsp{sutwyypcwyirufwvcj|}q~sx~w{lyzvhzilysizv}h`x}jjsh{jv~z}~q{v{s}aUu{qs{pwwoo}|w|{tuhqhlrp]hctoLfvL^oUTYsnbQOtybSWW\aps[a]heecjdQ[qIDdb\dq^\xhUWVw^\fniVl^ajgennhpwzniy}r{~y|v}pvsmw~q|xzztxzuo}~{w|huz|vgpn_d\XfYmsaaaqllhn`siX^cmw©Ù©Ç³rypv}zutu~wppn
txtl`zyeqogun[m}y}wzl
t~r
{muvnhwem|vmjwv|`bxzhuuc~{gu|tuqz|l~YVr|ot~wksxjt|y{wzq|rgtdmmt[k`vfIooL[cXWVxmbPSuvYQUW]`ro\`cmdc]ocT]rGBf_^fi]Z{cRV\u[[gkaVk``nfflqhpvxtkuvx}w{t~oququ~{wx|}
x|}~
{~svx{wuz^~ytwzbnl[b[[aUjtd`[hopgqaqfW\ck|Êι¢knnmr
r~
{zytzuu{jlvcvvog_|yeqjjqcXl{rv}{mpp
{yrrp~ghrcnxqjlqw}}z]ezwiuyfvgt}rjo~xm{\Xp}ls~{mnpvfv~~uzpys
{xqer`mksXk_y]IplNWV_TU|kbOTvsQRTV]bti\`kjfbYnaXcpGAh]af_\V|^OVeqY[jh]Xga_rfjhqgqswynt{w~yus
pp|xwuyz|u~}~~}|xvyv~}nuzdso
zudnjY_[]]Uhse`YdrrgrakdWZ_ix¾®z·nbtit|rz{~xxswo{wejo`usjb^~xxep}hkkZVow¤
qqwtlr
}yusoiyajmamvjgkkywzw[g~|xes~ntfvofkztltb[nzjszzet}mpgt~w|~pzjyzxwoelal}lnVkaxVLklOROiNY}gbOUvlMQTU^fvg^aqhgaWi]\kiJEkZbeWXUyZNWnjY]le]Zec^ufleqfsptxp
vx|
}vtnsy{{ss
y}v}{~{w|wvzjv~}lrq~pflgW][\[Sepe_XcruivpdebW[[hporsefzjuvtt
x
zwtunkzqbhkgtmf^_|oz}hmwfjdVWsp§}|vs{r{ylzzv|}uqsmhu]mi_ludgfizo{rYgwuhpxvbw
|njm{pere_kxfquz}auvikqtzoxxr{e}~~wunceal|mkVjcrTLklPLOpH^{eaNVueKOSW`kw~f]gsie_WcWbq]LKkXdbUTUsWMYveZ_l`\[ce_wgmbpitoq~utwxz}v~
nrt|{tq
zut}
|~z~v{£¥y
lu}{uzo
sz
}unjieV][[ZScne[Xbt{jhmh`aW_Ziikoglbi{zktuuo{}vvnzhjyj_eniwgeXbwi~ynioff]UYpi¨wz|xuo}nrtx~wt
vjsvhio\me^ns_gbjxh{m[mstjo~ywav
ysqoyqbph[mvcprzwarogixsqkwvtubz}vuoccbm||kkUibgTLnhPHRlEaxeaMTs^JMUYelx{f_mpjd]V`UooWJShXg^XMUlTK\z_\_k]][be`zhlaoovnowuz}wyzyz}qtt~zvt
}|ls{
}~{v¬zlrzvtno}tjonddX_ZZZUbjg\Z_ui^ml\aV[\keqt|ij]mxwhuxsn|~~zvslzhixg]dshzwccTdogvvfhiaWVYhd¨oxzpo{fxnyzvq}ndwsdii]lb^po[g_muezh]torkq{~uvbu
{wru~s`plXprapp{scqk`lzoigywtpdtyytqdadmr~jkTi^_ULucQGWbGcveaLTqYKLXXglvzeemqfcZX]XwfTJ\cXiXXHWeQIbx[]_m[^]bc^ik`otxmonvyr}~uvx}tuuyzz}jt{}~
y{~|sq®{{~fqzt~}vrol{~mzcpobe]eVZYWcfk`]]siXpm[^WZ\l{bqwulb[ntuhuwrnyzwootehte[gufvvz`]Sefjs|aci\TX^bd¥iyt
xlnxfwl{ytrx|xifwm`ha_k`^ukYf]oobze[w|knnpxytteszvoq|qawcZno`op{reqd^muicfxzrlmtr|rqa^emn}eiThYZUNy`RKZYHbtc`JUnUJLZVilr{cllscaZZ[aw\TKc]YjSVGYaNHjvX_am[[_bc]
ihbnxylojvxm~vuttqvvw}}~~px}yxy~ssp¢{{xduysyvktply|pr^po`gblT[ZWidmf\\rfRrm[YXW`lvdjuji_[nurmtuuk}|wonleiqc[krdtvs\WTd`q~q\bc^SZa\derqskjxlnoyyzqvszz{dfvh^c[ah\^wiWb^phawa[|vjjroxtsthqurjp{levW[ilapqyseo~Z`oqb^io|kjr}qovio`[dkl{agTgUXRQw\SPYRHcsb`GVlQIPZVklk|emora[ZXYlpWSPfWWiSTFZ\OIsuX`dmcX`ab]jdemzxkoiuy
{k}}y}mqovz}t}txutpuo¢s{{fwon|pgxq{lsvsk^tnagfkS^\Vhbll[\qdNom\VWUfithctee]Zpvoqvvzl}}wscekoa]nmdsxkZTVbcw||p\c_cTZ`Zccnprjgyneruqzkytuoz~v_gsd\_WbdYaufV_`mdaq]]~phisqtquvkm
|
qqfn{opnRZeidprusbluUbqk[^nd{dkt|qqqil_Xdijx^fUeUVPUoXRWTPHer_aFXkOIXTVnid|ikxkaW\V[tdSRWhQYgTSHZ[PNxw[_fmjZb`_^nbgkyvnnivv~~m~{~krgt{u~s}
{ss}un¤swxnz`e}qgztylmqwgd|mcfghS`_Ug`lo\^nhMil`UVSnfskfxde]Zrvns{ytn{w{zlbelm^`ojeqygZVX_lx{zo_b^hVY`Xdbkq|wkjvl[upjyiurno{sXko_Y^WcdXeqcT_biablZ`~kflsuomxvkh
zmpeo{lqlbX_ggnrsr^ilSepdUbmaxbouztjnkj_X`fhu]dWbVSOYgSO]OOHeo]cGZjNJ_KXme_xhn~d`U^T]u[TS`gN^bUSJ\ZQZvv]_fmhXca[^qchjxrsmgvsys{~|yntlst
z}|rstwqn~zz}~~}}~~}~~~~~~~}z{|~~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~>.1111/o]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDBKzlnmnnqI,00//,I
}}{{z}~||~}}}~}}~~~~~
-hS7¤¤¤¤¤¤£r]____aR455553?weggggk<;|}zzz|}{|~}}}~}}~~~~
|y{z||{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{||}}}}~~~~~~~
~wxz{zz|||{}}~~~~~~~}xyzyy{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|{{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{z{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}|{}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz||||}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{~~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}~~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~rtx|||{||}}~~~~~~}~~~~ysxrvy|}|z}|}}~~~~~~~~p{wvssvx}~|y}|}}~~~}~~ul
rx
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~xmutv{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
pbgxsou
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxz}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzoq{xy{|{xw{xuwttvuuvwr\bi\bdkghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkiffggghh`ctl^jngdbcbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__ac_\_]`]^Z[kskamtneYY_[XWSNMKKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSTPMJMNPROM[eokZistkRQSPPNNOMJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTtsuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMNXbhmnopqnSLOPPPONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKKECFIVcfgqnmhg]QNNNOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEEKMMR_jmhnmmjhfcccZLJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:<>ET]_cilnimlljjkjg^OGEEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@:;><;;;;GV_npqkmkjimgXIEEDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnppsttsqrvxy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<979;;<=QeqrsolhXE@?CFDCCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtsurqtxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::979::78:999<Kn{qVA8:<=@A@=;;><=<@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyz{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==?@===?C;====<;Jle9:;==>?@A@??A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCDA?=>@A?@<\n@>DE??A:F_>>=;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVppqssttuyz{||~~~~~~mLPQNOPNNOPPO><<=>??@>@@???BFD><<=@=8:;mwH8;:==A<Kd=<=<8:;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}|~~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABA@YR<<=IMFFuwM788:;>>WjA;<<::;>??==9:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@CsyI;]z|wW<=?==>FhtL:=>?==?AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy||}||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCEAHrykb}^>@C@A=Jr{Y:=AEABBFHC=<@DDA@?>=@A>>>?<>@DGE@>@A?@CFECBBC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{{{}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Fot}~}
vMACE@?>Y{]?CEIJIIMMKECFGGEGEEEDDCA?@>>BFJJGEEGFFJNNKJIGGHKLIGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEhs}|~y
rCDEDCWu~XGHJMLNOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHHHGFEFFFDFHGEEHHFHFHFQnnpqruvy{{{z|}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJG`{w
lAAVtWHLMLMNLIGGGGDGGGGFHFHECDDFEDDHHCCCFIKKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrtwwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLN[|
Vl|PKLKHGFFDECC@@CCCCFFEB@>>@AA@BD?>?DFHDEGIJIJHHHGIIJJIHFJJJJIJIJJJFILLJJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLLJT
uIIFB??@???<<<>;:<AA@><998<<=;>;8;?AB@ACCB@AADDBCFHIHHHKMLGIJMMNMJJKKJLLSlpqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJJIe
fBB=88::9878896479;<:8557789787588;;;=@;999=<>;<=ACEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIh~T:8656766656773568:876565676768:67889;7578979876:<@GFIFIFEFPSRSSROPPRTeqqsttvy{{{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=ECBe
G566468874578567699776765:9:::;798987779:98878689;A=>>BA?AKLOQPQOOORWkqrttuvz{{{}}~~~}}}}~~~THGIILMKJKKLIH?@A@<:579897;B:=q
z><:8;<=>9::;8:;9:;::9;:9===>;;<=:=;9;;<;<<9:<8::::999<?<<ABDIJLKIKLWorsusux{{||{}~~}}}}~~~TFEFILNNLJJMB?:;<:89989:::;?>H~
oO>>BDEEBA@B?@BA@>=>>@???@??==?B?AA?@?=@@@>?A=><;:;99;?=;<==AACABCAXpqtttvz{{}}{}~~}}}~~~~~~~REBAGJNOLIGK:8:;9::<=:;;==?@BR
c>DFJLJJFGHEFGGEBA@CECCABCB?@DHDCECEEAFEFDEFD@B><@>=?@>?>?>?>>:;=<`qrttuwzz{}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@CCFW
VHMMNLOJJKIIJJIECDFGFDCEFDBHIKHHGFHGEJIKIJKJCFCCDBAACBDCCDDCA=;=@hpsttwwyx{||}}~~~}}}~~~~~}~OA>=?DLKABBA98<>;<;>@?A>BBGGJY
PNPOMOLJLJIIHJFDFHHIEEHFFELLMIJGFHIJNMNLLNKHFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?EGG=<@@87<;<=:>@>?@CFIJQ_
rNSQONMLMJHGEIIEJHGJJIJGGGKLNLMHHIJMPNPNMOKIGIJHIDIHHFFGGIGCBACUnpuwwyzxyz{||}~~~~}~}~~~~~TDAABGHB?8?@8:<8=>;=A>?ADHJLUq
`TTROONKJHFBGJGLJFKOLKJJKMLOPNHIKLOQQPQOOJHJJLJKFGHGFFHFEEBABB\orwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAGKLPVy
}YXTTUTOMKJDEFKONOWUQPOQSRMSTOMSLPSUVRSQPLJMMMKNGGJFFHJDDEEBECcpuyyzzz{z{zz|~}}~}}}}|}~~UFFGGGGHF>@B=?==B?BBGVNFNPPTX{
iYWkaFTQQPI;;RSR`u]UVTVYYRXXRZfPUWZ]RTWQOMRQPPQKKKHHJHEFIIIHIirvyxyxz{{|z{|}|}~}}}}}}~~~SHJIHGFFE??AAEACGEDELXRMTUVX[|
}am\eU:YYXSQ?@VUY\d`VYbr]]W]ZVEQYZ[Y_TYgRVVXTTVTOOMJLJIILMKOMSosvxyxwyyz{z{|}{~~}~}}}~}~~~~VJJIHGEDDBA?HMIMPKIKPTSSXZZ\\x
g;~yopY[\[RTRVVT[ZuYU}a]X]^WIV]][[_YHYXY[]XXYWRQMPQMMOSQQURassvwwvxxxz{z|}}}~}~}}}~~xy}YNKIIHFBD@A:PQQWXPPOQSTTXXYZ[n
n~gYY\YTVTWRQWVcQerXZW_hP`f[[X\gaGOZhg\[\]]WROSPPQVVVVYZnrtwvvuxxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[SSQORRRUSVTW_ux
}|\QVXURURQQLOMKfy[]TYUV]ZLTZUST^ZXWWWzkX[[\^TQQPINOWVX[Zdprvvttvxyy{{|}}}~}}}~}}~~~zxwvsu{tk~~kry^[VUTROKFCDAM^lVRSNOQOQURSRRUcdv
~ynqVJLNOKMKHJDEIEC>TdURQQNKQTQMOYRMNQSUUMQSRPOMLHCIHRTUZ\lquuusswzz{{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YVPLILIaltPQSNQRQR[RSRQRUTbs{|}{{
u_]LD?CCCCB?DPBC@C=CIGV@HNLG]iPHFNFDEFIGHCDHGHKGDBAD@OQMRdrtvustuz|{{{{|}}|{~}}}~~||}}vt{mh|gnqfiedb\XSQPURsWe[OOOLQSQUYSUQQTSOV`klrv{{xytrnstsyx~kMG?@;;>@@??>kPKaEFHIEB?GLNGMQUIAE??<=<==?=?ACC@?<=B>JNGUnttustvxz|{}||}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QRZ\Y^JJPQNLLQRQTVTWRQWVPX[b]agmmlokg`nrjmlqu{z}{xz||xwxeC@@B=:BCBBDB\]O{NONNKLMOOQLKMWMHG@A<977599=;;;8989?<BH?\stuvuvwy|||}||}}~~|}}}}~}xuvz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIHPRQOMPQNQRTVXSRYTNYZ[WY]^^_e`]^qvk^`gkwooljonnlfbYHFFHBAGIEEFDMRPaWRWQPSSRU[OOQVPMIDF>:96587979:365795<C>essvwwyy{}}||{|}~~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZXMLTTSPQUOLRSTWXTTXQLWYZVXXVXY]WXXhsk]Vaskba_^da_^YTQNNNLIHJLIIFCQPS[WTTNQSYS\eUOSSQNKIHC?A9998978857578599Gmqtwxy{{|}}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnpppnmd]__YWOPXVVSTVOOTVXXYSUTLKTVUUUWPSUWTUR]n^RNY_[VY;DVXT[fJLORROMMNNNMJFQPUYSTOJNOUST\VRUSROMLIHHF?>=:787659967665Wppswyz{|}~}~|}}|}}}y}}|~~~}||}}~}|rvqxxrvuqqnppopuvtnjddjppqrpofedc\]RTZVWUTWTRXXYYYRUOJGOPOOMRJPPOPNNOTLMIPOSTU2=XMI@Q=caQSQPNPQPNNMQNTRPRMILKORPRRSTQROLMKLLHCBA=::876;B5566:doqtwx{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqniihpVVTUXUWURWVUZYXWUQSFEAFGGHFJDHJIGEHLHKIFLMPMG/E_R>3?>joaRRQ@GUQPQPQNQOPOLJLLOPNNPQQNPOJLMMKGEEDB;=<<9=G6677Dmptuy{{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknaePSTRSTOWVVYYVQQQO@=;=?ABAC@BEDA@GHGHFFHJMLEGCORC8ENS]gSPSAGUPOQQPMMNMKLKLNOOQMOOMHLLIKKLKGFFED<AA>;@E;<89Sprtx{z{}||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLOOMQSLTUTXWUMLKI<987;>@><=A@B=>EHGCFFIGJJ@FAA@FHEJOHQRa\QPROSOOPLLOMLMLMON[WKMQOGIHCHJLLJFFFE?BC><BG?B?Adpswzz{{|{zzw{wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHDD=9779?B>;?B@@>ADJECGGIFIEBB?>=CBAGIENObeQMONWKLMKLMMMLKONSdNJLRIIIEAHJLMNJGIFBAB@?EFEHDKnovyyy{{z{zwtxux||yznqrmnorrvrsx|xvvmpmsputlpprooorvvrVVnqglyjmqrnnjhoHJCGMMJMPMPOHJD?A=98::?B?<@BAADEGJFCHIGGHCC?B??@A>DECLNRTLJIMTGIIJLJKLIJLMOPRPKGCLGCBJILMONIJIGCCCDIJMLIYrmwyxz{{y|vrpurtxyvxjqnjllnttmtu{stxronqovsnporpopstyjN`gsjt|ygosqiqhdqGKDGHHGJKIJKDGB=>=:9:;AB?=BBCCGFIKJDIIFGGCC;A@B>@@CEDIMPHHKGHKDHILMHJLHIJLKM]RHHDNFADJJMMPMKMJKFGGJMNQNLbmivvwzy|z}rmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoiktgdoFKDFEGEFFGEGBC@><=9::;@C@>BCEEIEIJLFIIGFFDB;ACC>@CCCDGLNHKNHDHEILNMGILGFGIILNKIGENHCGMKMLOMMNMKHHIORQRNRfffqosxu{z|lhjoekqlspfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGJDFFECCBE@DA>?>:;;=:=>CA>ACEFJFIHLHGGGFEC@=DEB>ACCCDGHIGMPJFFGKNOKFHIFEDEIJHJIFHPKDIMKOMONOPNJJILRUUROWd`amgproryzgehhdilgqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutwljuumrvqlnlerLHEEHCBABD=BA>A=::=?:=>@B>@BDGJEIFIHFFGECBAAFFCBBBDEEGGIFLQLIOJJLLIGHEGFDCIIHKJGKRMBNOMQNOOMNOKKKOUWVUSX_^\iaminhrsbeffdihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwujsunutsqrjksMGHFHBBADD<A@@C<89=>9?<?B@@@DFHEIFFHGFFDCECDIECGEBEGEFGGEJMKHQMJKHHIEFHHECIIIKMKOSNDQRPQQNPMNPMLMSWVXWUX]Z]d`hbjigk_eefcgggkggkmkmlprhttursnvoqprtxqssuvuyvvtxuuwxmouorsuqqinyMHGHHBBBFD<?BBD<7:>>:>:@B>??BEFDGDEHFDEDDEFGJEEJGCGHFHGECFJJGMKLKHJLFIIKHEKKLLNORTPHSUSPSOQMNQNMPWZVZYVZ]ZXa```^hec`dfhgjhhifhnllnmqpiuuxrrpupppruvpusuvu{~}xvtwvvvxplupmstnprrxNIHGICACHE<@EBE=9:>>=<<AB<?>ABFCECCHECEEFGGGIFGKHDHHGIGFDHKIGKHMKJKLHLKMKJNLOOORUVOKUWSQSQRLOQPOTYZY\ZY[^^^`c^\ackb`dghr
hgifjmnponsrjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqvptMIKHJFBEGE<@GCD@:<>@?>?BA<@>AAFCEEDIEFEGFHHFHHIKJFJHHKHFFLIHHJGLLMLLIMKMMMOLPPQUVWOKVVUSSQQLORRPV[[]^[\^__a`ad]c`ef`ehjcssfjgglprqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrvnvJJLJLGCEDE<@FDDC;??A@@@CA?B?ACHCFEFIFIFFEIIGIHJLHHJJILJFJKHIJJGKKMMJJMLNNNPLOPRTXVMNTVTRRQPLNTSRW[^^_]]`_`aa`acebdhbdijgvljigmosqpqppryvruutsmmssmqrotutrpswtuuwvuuteqskpqjrvnwKMLKMGDCAD<?EEEC=AACBBCDACDAAEGCHGHHGJGDHIGHJFILHIJMKMLGKIHKKNQKRQMSMKNNOPPOTOWXX[NSPW\ZRWPNTUTTXZ_bb_da^`b^`eaacinhcihhnxvlhimosrpqrrrvtsusssnksqmprotvrqquvuswywutucmtkopjqtowLNLLLGEA@D>>DEFC@CAEDDFBCEGCCIECIJJIIKGEKJGHJIIKHJJNLNKILHJLKZfJd\KlSHON_nUks[qpbwcSPavuhucav`Xnqbdvinzf[lt`ljT_wvijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqrqyLNJJJFC?@B?=DEFDCDBEEDFBFFGDEJEEJMMKLLGGMIGJKHKKIKKNLNLLLILML[sbdp^lmUMNfs]gfqlntgpi_aYnnbppbkjjgoqtetno\ougpMJqyvkb`keemxlkvmnpsrprqpqrqrrrtrmmsnnoprvtqsstuuutwxvutbmukpplrrqzKLIHGED?AB@>CFGBFCFEFEDCHHGDEKHGLMNLMMFJNHJKJILJJJKLMNNMMJNMM[roonpplkMPQlWNibtrpamnu\YlQ\mmZqmkomxxtsip]_rkqjUuyxpc^kfbgppjjopprspqpqqrrqqrrtlmrmnnorutqtrtuutuuzvutenukpolsrryIKGGEEEBBB>@@FGBGDIEEEBFIHHEGKJGMMNKMNGLNILKIJMIKIJKOPONMLNNL\hdu]lqWlNPQmUZk^klvaldsSecNmYl\tpkilxjwuhp]^rkhWbcw|oc`ggadjuyknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvHLFIDEECAB=BACGDHGLHECCHKHHFJLLFNLLSRLGLMHNJHHNHJJIHNOMNLJNMJZsppoqqmlOQRnYqkgooqqomt]nXat_nopoqronusttj[]tcwxrjnzhaacfbbjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyxtukoumtontsvsHKHIBEEEA@>DDBGDHIMIFCFJLIGFJMLEOJKWRKGKKJNIIJLIKJIHJMMMMIKKKSkc[i^_icrrZ_Yjo_eeUk_c[aaQ`lh]j\niid[pfdp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxtunqunwqrvtwrGGFIDEDFA@BFEDGBHJLHFDGKLIEFJOLIPIL[QJEHHKMIHKJKKIHIGKKKLGHKKLMMLJKMNT[\TPTLPONOOVQOOQNOQJINPQdqiTYW\[\UY[]X]\\cfaaebce__fkmhmtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusGCEGFFAEC@DHDFGCIKLHFDGKLHDGIPKLOKLWLIEEHIJHIKIMJHFGGIGHIEFLIJLOLIP\W^P\[`^MXYS\\b^MXZMXaRJYaZR_d\aX[ddVVX\YZX\VY\]b^d`a_ehkgmttqqtpqr
}rkiorssstxyyxyxwxtqxrxsqrurtOBCELMBDCBEIEGGFKJKHEFIJKFEHHPJMMJMRIHEAHFJIKLJMJHFDIFDFGEEJHCJMKLU_Y`X`a[`TXYT^^Z_RY\P^\YN^\^SZ^c^Z]`c`Y_c[`^[TXWY^]cbbacehekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIDBBCGHFHGHKIIIDGKKKEFIJNKNLHLNGHE>GGLIKLKKKIGDIDCDEBFJD@JLJO[cY_^a_RTRW_`\]Y^QY\MV_WKQYZPZ_aa]^ca`bbbcceZQYVU\Y]c`__cdbhomnllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQKFCGEBEGIFGHHFFJGHGIKILDDKJMMLLHJJHJF?GGNKKKMKKKIFGCD@DAHIB?IJHP]aZ[d]_TQRX]\\\_ZKW\LR\YIM^QO\_accccb\dcbdcfXQUTR[WZ`_^^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMC@IFCFKJFFFHGFIFFFILJNFDKKLNJLIKJHIFBHIQMLKOLJKIGGED?ECHHABGGET]Y^X_Y_[]UXXO]]QKJV^X^[]UY`RQ__bb``bb`cbaddaXOQQQZR[]]]]^__dhgljnnp{{|~{
srw
|x\SKCAHFDGMRHCQJFHHHEFKJMPEFIJKNLLILLHIGDHKQNMLPLLJKHICDAEDHGBAGEDWUE\T]SV_XOTUNZZMIJT`a[_X^^a]OYa\``_bcb]abW__TPOOOWQ\[[\\^`bffelfoow|{{}
zo
~INFDFFHDIRbPCV^IGGHDFMKPPEIIJKNLLLMKJJGEJNQQNOOMNLMHKADACDFDCBEFBMHBKKOONLFMFGIJHGLKMOPILOPOSOLPSRUZYWYXXdWOSTPPNMOTRZXXZ]\`adecgcklpsrzy{z~{}{
}KIEEHFGDKM]LGGXMHHJHGMLQQHLKKKNMUNOKKKGGKPSSNPONONNGKF`ED_LEfdEM[I^[rmOMUmYLDP`UkWgJ]XU^DLQULLSVQRTXWTXUT\UPfZhhdXRjRVUT[\[``abbb`fhfnkhrz|}~}|zr{z{
~z{LIFGFHEEKOSIJF`THIOJIOMRQKMLLORUROOIKMGHMQ[YOPPNOOOIJQQI|YYqtYQmHqnoaVPqqsPCksmqspSo_[nX]V\XUkhU]VcZ`Y[`VVXjtuu__v_Xa[[f[_`aaa]`bgmpl`pwtx}vxzlv~tx}|~|z~wwNJEHMNBDLLGILEQVLKNIKRXWQMOOMQTNOQPKKNGMPS[ZSQROPPPJHZx]TxehZSURvgtlpbnfjQrOMwmjrpsrqrpoo]ezuxqqzq~s}ku}bRh|essosr{|o~xnr_``baZ``gknkblfgmw~~{xwtvzir~ns|~wx{~x|u|||ssNKF`]GAEMMHJKGJPOMMJNV^YULQSNYZMSSRNKOHQRSYWVPTPPPQKHgxlcxrm[KNVypumubnvPdeJfvqmwojfxxiWrQhzmijzz}lxzohoYvvjuup`rf}ilx|o^__ba[]cdgiidgbcdllppstsssyqrxblugqy{srvy~suzn|}ywrnNJSuNCBFPPHJKIKPOOOMPZ`ZWKTWPa^RVQYRLOISTUXWWPUPONRJLrouuquqdibWnLqp^FhyWvTLiy}x`y{sna]mocRhqunmypwlvttrln]t~zkmy|ktl|kpvux^__b^]_ddighee^abiiijknokqnmjpacfcowxompsy~nqpj{ztsomLL[VHGEGRPILMJKPQPPPPW\XUMUYUeXRRY^SLNITTVWYWOSNNNQHRmHiwK`dvvVXlOnl{sajgvULWkh}lmlx_[pz{^`zscroxqhd}ir|^TLl`vukiu{{m~xk|p\^_b[^bddgeeebZccikkrsrwglihdg`akagsrlgmmr|kmhk{tmmkmOGKKIJHHQPLNOLKRRROSRWRVTPW[VVTTTa_PNMKTSTQUVNNLMOPJHQNPULKLSTSSTPVUQQNQQXYRNPUTXXX[ZURSW[WXWZOSUWXXR^YW^VTPYRWWWWX^[gr^[[Y\]_cZ_ccdfdccbZccffemnmueegcaf_]g`dlhfgkhpzhggkujhgilQIKLMMKJSQMQPOLVUTPTUXUYUQZ]VUTWUYWOOKMVTQNUSNOMLQPKJRQKQMKKPRUSQRSSIHLNOQRQQQTVRXW\WSSPRTUVSZQNSRXVTYVTZVTRUTTUWXV]Y^`]\ZZ\\_c[]bcdfdddaY`acabhhimbad^_c]Zd\bma^fefmsdihkkedcfhPJKKOOLMSPNSQQMXWUTUWWWZUS\`VWVYUXSPPJNWSPNUPNQNLSPLOUSNQNMNQUQUQRTUNKMOQTTRRQVWUYZ[YSURTWWWY[TPTUXUUZUWZVSRWVUW[XZ_\UX^\^][]`a^[bbcgfedbX_ab]`gdfea^_]]^ZZ_Z_g`^]]bhkagfhfd`bcaPLMLPQLOTOOSQOQ[ZXWX[YXYV\jdVXYZWVSSOJNVTPOTPPPNLQQPRXTQQOMOSVOWRTUUONMQSVUTTRTWVZ]\ZVVQQVXV[[WQTWVVVYTXXVSRYWVZ^Y]_^U^\^`\[____ZbbdhgddbXa`b^^fcc`b]\\\\YZ[X[a[^]\_b__bdebd__`\PMNNRQMRROSTQOU\ZZW[[\XZ[dqmhd_[YVUWQLMVSMNROQROLPSRUZUSPPMQXWRWSSSXMOOQTXVUUSUYX[^][[VROUVV[[WRTWVWXVTX[TSRZXW\^Z^_`Ua\aa]`b_]`]c`cghdf`Yc`a__ed_`c[Z\[\YZYXW\Y\[`^_[^^a`^b\Y`ZQNONVQPTROUTSPW\\\X^\^V\^jqwyc\[UUXQMOVSNQQPRTRKQTTYZWUOROSXWTSURRZOPSRV[VVWSVZX]^[[^VSNTUV\\VRTVVXYSTY\USS]XZ]^\```Va[cb]ac_\bab_cfidf^[d`a`acd_b_YZ^[\[YXYWWZZZa\][]\\Z]`W[[ZPOOOYPUTRQWRTP[^^][`\`U\]hjr}slg\TWWQNRZSRQTRTUTKRVV[ZZSOSQVVVTOWRSZRTTTX]WXXSX\X^]YZ]TUNVWW^[XRUUYYYUWY\UTW^Y]]`]bb^Y_[ea_dd^^cca^efidf]]da``abd`b^XZ_[\[XXXWW[Z\`\[[\[XZ[^V^Y]POORZP[TUVVTTT^^`^^b\`U]^bkytl}kZUYUQQS\TUTUTVYWLR[W][]ROUSXWWTPXRSWSVUU[]X[YUZ^X_^Y\YRWRYYY_[ZTUVZYZWXZ\VUZ^\^`a_dc\^]]eaafd^^dc`\gdhedb_da_a`bb_`^WX^Z\\ZYYWV]Z]^ZY[\[WY\]VXW]SOPWYQ\UVYWWUX__aa`c]_T]_beeuzhXYYSUSV\XWWVVW]XOU]Z^]\TRWSWVUSTXRSVTXWX]^X][V]_X__X\VQYTYZZaY\VWX[Z[YYZ[XV]_`_cbadd]b\`fadfd^_dbb[fchecfaf__aaaa`_^VU]Y[\[Y[YY][[[XXY[YZZ]_]TY]UNTYVS\TVWYVV\`abcac^_V[`da_zuohY\ZUWTW[ZY\YXY`WPV^\``\TTXPUWVTVWRSUWZZ[_^Z_\V__Y]^Y^USYWYY]bZ^VW[\[\[[Z[YY__``dccdebdYafcffe^ab`c^bcidcg_g^abcaa`^_XT[ZZ[[X[XX\[Z[WWYXW\[\`]V]]SOVZVVZUXUXWX]_badad`^YYadb`lfh^[][VWXY\\\_[Y[bVTX^]ac\RVYPWVWWWVSUTX\\^``]`\Wa^[^\[^XVXX[[_`\_XY\\]^^\[]X[`a^`ecdeefbXcedhgd^c``ec]eidei_f]cbcaa`__[XY[YZZXYXW[[Z[WXZTY]\Z`\U^bNSWYVWZX[\XWY^`badada]^Yacb_a``^\\\WW[[]]__\Z]cYZX]`cd_RXYPWWXYYWVWV]]^`a`_b^Ya]]^Y]^YXUW[\`^]_ZZ^]^^a]\[Z\`b_becefefbZdffigc_c^afdZiicfice^bbca``_]]ZX\YYXXZXWZ[ZYWXUU[]]]``bbxKXW[YW][\]ZW\]_`bdaba]`Xbcbacab][\[XW[]_]`_][`d]\XZbecaR\ZOXXZ[[ZWZY`]`bb`ac_\b]_][^^YYTX]^_`_`\[^^`bc]\X\^`bbcedfdefd\efgifcab\cg`\iibhied`baca_`_]]\Y\YXWXYXW\ZZWWXOXZ]acffrkJYW\ZZ_\[^\X][^_acbaa]b[bdb`bcb\[[ZWXiq`\`_]\ac_^YYcedaS_ZRYX\]]\Z[[c`bbc`bda`c^`\^^^ZXV[_^]aa`^[`abec_]T]``cddfegeffe^efhhgdd`[eg^ahhbhhfc`b`cb___]][Z[YXXXVZV\[[VVUMXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{{{{{{{z{{{{{{{||||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvuvvvvuvvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{|||||||z{{{{zzz{{{{{||||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||v}}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½E>????;þ¿¾¾Á¢~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}v~~y1333332j{éääääèÊ:23333.¡ÒÌÌÌÌϪ}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vxxyxxxxwwwwwwwxyyyzyywopppppprrrrrrrwzyyzzz~|||||||vuuuuuu~||}}}}}|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvvuuyvvvz{x{xwvwzwyyz~|yyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{|||||||zyyyyyzz|{{||{|||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwwx}y{{y|{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwww{yy{x|zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z{xwww{yz{w|yxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzw{yz|y|xxxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyxzyyzyyxxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyyyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||
{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{{||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}||}}|||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrsuuttssssrrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqsttssrqqqponnmmmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqrsssssrqqpponnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwppopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrrrrssrrqpruppoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpqqrwtqrrqnnppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqprp
rqqo{~npppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqw£pqq}oppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqrs¨o{¢~pqqqqpppppqqqpqpppqpppppppppppppppqqqpqqpppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrrq«p£~pqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxwxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrsssssssr±ª¦{ssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz~|~~|vvwwvuxzxxxxxxxx|©¯£±¯|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~||||{«¡´¤©z{zxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}}}}}¡£¯£~}}}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~°¡~~~~
~~}~~~}}}~~~~~~¤£{}~~~~~~
|||{|}||~~~~~~~~~~¨¯¦¦©¦
|}||}}~
«¯ £¢¤ª«¥
}||~~
«© ¢¡
}}}
~~
}}~~
~~~~
~~}|}
~}}}}{
~~}~
¡
}~
~}}
~}~~
~}~
~
~~
~{z
~}}}}~~|{|
~}}~~~~~~}~}}}
}|}~~~}|}}|y|
}}}~~}|}}{zz~
~~~~~}~}~~}}}}~}|zy|~~}~~}}~
|}}~}}~}~}~}}~~}}}|{{{zzzz~~}~~~~~~}|~~~~~~
~|~~}~~~}~~~}}}|{{|zzyyy{~~~|~~~~}|~~~~}~~~~~}}}}
~~}}~~~~}}}}}|||{zyyyx}~~~~~~~~~}~~}{|~~
~}}}~~}}}}}}}}}{zzyyyz
~~||~}~~~
}}}}}}~~}}}}}}|}}|{yyyxx}
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}
~~}~~
~}}|}~}}}}}}}}}}}}}|{{|z|yyy|~~~
~}|||}}||}}}}}}}}}}||{z|yzz{|~}~~{||}
}
~~
~}}||}}|||}||}|}}}|||{z{|zyz{|yy}}|{{~~}}|~||}
~{z|
~~}}}||||||||||||||}|||~~{z{zxz{{|}|~~~~~}}}|}}}~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||}|yz{{xxy{zz|}~~}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{||||{|||zzy{|z}
~~~
~~~
~~}|~~}}}}~{|}}~
{z{ywz}
~~~~}}||}~}||}}}}}|~|}|{}||z{z|}}
}~}~~~}||~}}}}|{}|~~~~~}|~}~~~
}|||}~{{}w~vx~}|}|}~~z~~|~~~~~~~~~~~}~~}|~}~}}}{|||z{z}~|||}||~~|{{}~}~~}{{{}|{{{{~~}||~~~y}~v{vx}|||{}}~}}~~}~~~~|}~}}}{{}}|z||~}}}|||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~}||}}|}}}}{|~~~~~||}||}|}~{|{||||}|}|}|}|{{{|y{|{{}z}~~
|{zzy{}z|~~y|yxxt|||||||~~~~}~|z|}}~}}~~}}~{{}~~}}|}}}}}}|}{}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~~}~}|||~}|}|}}}~}}~~|{{{||}|{z{{yzzxy{~
~~{zy{}}x|zr}{{}||~~}}
}~~|~~}|}}~}}|~~|}}|}}~~}~|}}{|}~||{|}zzyyyy{{~~
~~~z{y}}zzz}q~z{}}}}}zx
~}~~}~}~~~}~}}
}~}~~~|}||~~~}}}}|}||{|}{{{zzz{{|}~~
~~~}yzz}|yw{t{|tw}~}{{vv}
~~~~~}~~}~~|}}|~~~~}|}}{}}}|||{|{{{|{||}}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~~}~}~|~~}}}{|~|}|||{|{|~
~~~~~~~~~z{z}}uqz|zqz~}yxtt
~~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~}~~~{{z~~xry}qzx{xyuu}
~}}~~~~~}}|}}~~~~~~~~}~~
~~~}{z{z|{z
~~}~~~~}~}}z{|
{{sy{|pwuvwyutz
}}}~}~~}~|}}~~|z|z|{|~~}~~}}}~}}{{zx|vyz|qtxwvxury
|}}~}~~}|~~~~}}z{{|||~|}}~}}~~~}}}~}}}}}}z{{|v}yxzzruyyvwwsu
~~}}}~~~~}||~~~~{{||||}}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~
}}}|{||yz{z~y{yx~{|{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst}~}~}~|~}~~}~}~~~~~~||||zyvyyzyvyv~|{{{~}{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}}|~||~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{{{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~|~}~~}}~~~~~}}~~~|~~~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~}|~~~~}}|~~~}|~~|}~}~~~
~}|{{||yw|ywxwwx{{{{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqsoxwq{
~~}|~}}~~}}|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{||{zzzzzzxsvupprowvr{
}}~}~~~~|~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxzxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyytuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{wwy{|{}||||{}|}}}}|}|~~~~|z|}{|}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z||{zxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~~}~}~~{}|}|||xxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|{}|{}xwvyyz{}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~}}}|}{}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysrtowqwysw{
~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxqytvxtw{~
~||}|x|yzyz|}|{||}}}||~{{{zzzupxwyvu|uv|
~
{}~|y|zzz}||}z||}}|z{~~~}}||}|vrvxxvtvu}
}
{||}zz|}}||z|~}|}}~~~~~|}~~~}||xvvw
~
}}||{||}}~~~}~|||}}~~~}}~~~}~}~}}~~|}
~
~}}||||~~}}{|}}}}}~~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uz~
}y|~{
}~}~}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqspurstv{}uvy
hzrss|r~}}~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyyrpvxqvtturstvinrotvnulwmzsnym}rsvsvmnwlpylu~|~}}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoolw}xpqzprtfu~n{ysoy}~{~|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyrioyxpkyszozwvvp~~z~}|}~}}~~~~~
xyrz{pp
x
xyks~y{krz|mzyyt}vnoot|uwqy}}m~uo
zrr{|upozks|nv~~}}{}{|}|~}~~}~}~|}~~
}x
~~{|{~{||}}|~}~~~~~~~}}}~|{|~||
}{{|~{||}~~||~}~}~~}}|}~~~~||}~{|||{{~
~|{}~{|{~~}||~}~~}~}}~~|}||~~|}|||}|||~z{{|~
{{~}|||~}|||}}|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}}|||~}|}}|}{||{||}}{{{}|{~}{|}}|}}~}|zz{{||
zz
~|~||}}|}}|~{{{z{|||{{{~{{}{z{~||||}~}{z|z||
|
~~~~||}}{}}|~zz{y{|}{{{{~||||z{}||||~}|{{{{||
z{
}~~}|}}~}{~}|}yzzy{|}zz{{}|}||zz}||}|~~{{{|~}|
}|{
|~~}}|}~}~{~}||yzzyz}}yzz{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~{}~~~~}}~}{}{zyzzyz|}yzz{{z|{{{{|}}}|~}|||~|{
~}}{
~|}}}~~~~~}}{|{zyzzyz{|yzz{{{|z{{{|}}}}}}||}}|
~|~~
}~~~~{||}}~}~~}}~{~{{zy{zyzz{yzzz{{|z||||~~}|}||}~
~~}~|}~~~
~}}~~|~~|~||~~|~}}|||{{zzzzy{yzzyzzz{|y{}{{~}~}}}
~}~~~~}}~~~~~~
~~|}~}|~}{~|}}}~}|||}{{zyzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌÌÌËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<C9;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÔÓÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937676=;>:=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<:<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA>;A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9>CE?<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÑÓÓÓÓÓÓÓÓÓÓÓÓÓÎÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ØÙØØØØØØØØÙÙÙÙØ××××××××ÖÖÖÖÖ×ÚÛÚÚÚÚÚÚÚÚÚÛÜÜ×ÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILN@99:4;@<7=9AC=@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÍmpppppppppppj§ãÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¸·©§§§§§§§§§§§§¦±¾½½½½½½½¼¼¼¼½´½æáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVM<::77>C?8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÎN&+++++++++++"ôëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§££££££££££££ ¬ªªªªªªª©©©©¬TSSSSSSSSSSSSKªòëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;?C>6:7>?;<B@8<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÍÎR+11111111111'óééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¥¢
««««««««ªªªYXXWWWWWWWWWWO«ñêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<<<<>::;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÏ\9===========5ðççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©©§±¯¯¯¯¯¯¯¯¯¯¯±¡cbbbbbbbbbbbb[¯ïééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9;:=<;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÅÂÃÃÃÃÃÃÃÃÃÃÃÂÉÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÎÎÎÎÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÒÐÐÐÐÐÏÏÏÏÏÏÏÏÎÐÓÒÒÒÒÒÒÒÒÒÒÓÓÑÌÍÍÍÍÍÍÍÍÍÍÍÍÍÔØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<7@A<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÏÐÐÏÏÏÏÏÏÏÐÔÐÐÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÑÔÏÏÐÔÒÏÏÏÓÒÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ×ÖÖØØØØØÙÙÙÙÙÙÙÙÙØ×ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?89:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎÓ»ÏÑȧÒÑÇ«ÑÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<=B>BB@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÒµ´Ñ¬°Ñ¬²ÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?><7:>9?D>@98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÏÑ ª¯ÍÄÍÏÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<96?B?B:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏÑű׽ÉżÉÅÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8E@?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÏÖ§±ÕÒÎÑ¡ÏÐÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<==964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÏÕ¥±Ù°ÃÚ£¿ÕÑÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:<?>=<9@<<::9?@==<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÐÖ¥²ÖÍÇËÈÒÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAA8;?<=;<<7558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÐÕ¥³ÖÍÛ¥³ÐÛ£µÕÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF?HHGE@<<>><==<7569969;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÓÐÖ¦´Í§ §»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@C;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÇÒ×¥´¼£¥¨ ¯§¢©ÐÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÑÔµÄÕºÕ¾ÖÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<<?GEGKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÑÑÃÔÓÓ¹ÇÕÓÓ¹ÈÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA=775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÒÒÔÒÒÒÕÔÓÓÓÖÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEK>>786977899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:69896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EIKAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDI;AA;<886586987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<AA<;876797799=?A?<:9@?<>B?:8776=?@@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@AB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCDEC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELBA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<<DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAD?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
¼ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsnupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿½¾¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸¸·······¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸···¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶···¸·¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨§¨¨§¨¨©ª§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸·¶······¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥¤¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§¦¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©«««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤¤£¢¢£¢¡ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡¤¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=6789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥£¢¡¡¡¡¢£¥§¦¦§¬«§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¦¦§§§§¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥£¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB?DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡ ¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;<;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¦¦¥¤¦§¦¥¥¦§¦¥£ ¡¡¤¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡¡¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢£¢£¥¤¥¥¥¤¤£¢¡¡©ª¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::78:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢¦¤£¤¤¤¢¡¡ª}~¡¡ ¢¡ ¢¡¢£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ±µ¤ ¢¡ ¢P¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¢¢¢¡ ¡§±¢ªbL ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>99;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ¡ ª}®¢ §NS ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9<<>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¢Y«jUU¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:<>9?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¢mc ¡i`X ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq ¢si¢£j_X £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢©upj|h_\¡¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡£{lkope[_¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡t~ £xeU`¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¦l±§¤xca¡¡}
£ª¡¢¤¢«±·´¹µ±´¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡ ¥ x[k§[t|v
¡§ ¤£ª©³¶±µ°¨ª¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v¨kTPrN]tx
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VQQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{¨z;/<xzyG:Sou
§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
~OOT?{nfN;5Ppz~
¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¦ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
¤uSxP|yRh|R\u ¢±®©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~aÖÀ_¦¯¤¦pqVh¨®²°°µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWMO_^\NUUbQDTM;?9<895875795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
¡¡¢£e¿ÐÛ·¦À±T^wiU ¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUJTOOJDPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ªª©§¢¥¨©«©ª²s³¯ÑÅ¢¬qjÅP{¢¤¤§¤©«®¬¥¤¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdWOYKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®««¬¤¡¢¦©§¨¬~È೪tF®±[p©§ ¢¡®¬«ª§®¨¥¤©©ª©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_VZNRNQOSe\dc[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨§¦¨©§©©¤¨¦¤¥£¢¥¡o±£tczum¤¢ ¡¡¡¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOXO^edlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤ ¢ £§¡¦®¦¦¨kQ~vtopst~£¡¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvxb_\UYQUW[c^s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?B?:8:>?C@DA:;>=@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯««¬¨¨«¯©¨ª¨¢ ¡¨ª±²®¬«©p_Hounqvkiehfgqv~¡¤¥ ¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\U\hdocmiib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¡ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£ £ªª§¯·µ³¶º½»¯jcWH\kfjqgcceZZabkuz~£¦ ¤¢§ £ ¡¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxjb[__\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>BE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ «²·¾ÅÍÐÇÀµ¦w^]SG\tkjqe`ciZX^Y^enpqtx
¦®§¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__amhvkqhiibZSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°²´µ¼ÐÜàÙÊ»¯ yc\^SA_ljqwgb^g^U\\[[^edbcn²É¹¡§ª¬§«©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YSai`ftotitdidb[LK>:9898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÄÇÃÄÀÎ×Øκ£|o]VXXL=^bhtrmbaf[WWXXVXX]q°Å˺¸·©¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`b_^kcbnxuwnm[bRV\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAA;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅƺÄÀÇÏÒǦ
]OKOSL=VWhb`qha_XZWXVT^±Ä½³´¶ªµ²³©®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklgnurruqg^`\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÄ¿ÃÃÆÆÁ¶Ç³\SVPCVS\afpeX[Z^XYg¯¿º¶¦©©©ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|uklndomiqxoyjia]gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÃÄĹ´¿¹»Ê®y]PNW|tUTXWYa°·©«²´¬®¥¥£§¤ ¥ª´±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyy{wnkihvZfrxsyff^d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÃÄž·½Ãò}VLpw¥NQS[t µ·²¬¸µ³¬©£¡©¬§¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuuefijh^jonyxcba`^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÎÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈÇ¿ÄÇÃÇÈ°`X¦HLm³Â¼¾¹¼º¼º¼¬¦©»º¹·¿²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqocagvijjtnyl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÌÐÍÇÌÉÂÂÇÂËËÈÇÌÉÍÅÅÅÂÅÅÍÐǨEm¹ÅÉÍÆÅÁÄÇÁ¼¾´±°°Â¾¾ÁÆ¿¾¸¶Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`kjwlifuotc]bTWUSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÃÿ¿¾ÄËÈÊËɼ¼ÈÇÉÍÈÃÈÉÉÅÅÁÁÀÁÅÆÉα^iÄÐÇËÏŶ¿¿ÀÀº»½µ³³À¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrpfefckdbkmno^Y]VVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ãº¸¹¼¾ÁÇÁÆ»¹ÈÈÃÅÄÀÃÁÁÀÄÁ½¼ÁÁ¿ÀÉ?ÒÌÅÈÑÁ¯½½¸¹»»¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfaebaccdjcgc[ZZ]YQOE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹¾ºº´À¸µ·²®º»·À·¼ÉÎÁ»¿À¼»Ä½ºÀÄ¿½¼¸»ÀÅ«HÌÄÀÀÉ¿°Á¿º·»¾¹µ¸´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qdabchjggjej^VVTYOSLF8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ¹¿»ÁÔº¿»ÃµºÇ·¶¹»¼¸¹µºÃÉ©LÉ¿¿»Á¾¹Æ½Â¿¼Å¸¶·´¸¶¶»»¸¶´·ºµ³¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zyqmeefpjelhXYOKKKRJLHD9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹º»¿¼ÏÄxªË½Ç·¹¸¶´·¹³µ²ºÅÉMÊ¿¿¾½¼¿ÈÃÅžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knqgqktfbn`\THKKDJCCG?:;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼»À·ª¤®°¸»²½¾»Ä¶µ¸µ·¿¾Ä¼ÂÄ×®u¼ÈÏÂÀ¸®µµ»½·¹±¾ÃÇTÍÿ¾½¼ÇÌÇÇÄǽµµ¶Á½»»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢rfljnuoxchb\cQKUHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£°¹½¼²¼¾¼Å¸±¸¹¼ÆÉÊÂÇÉÒrt®ÑÑÌÊĵº¿ÄȾ¾´¾À¿avËƾÁ¼¿ÃÌÊÇÅÆÀ¹½¼Ä¿¿¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltlln_c_abNHN?E@?DC;;::;:8;<:9<>::>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´»Åк¾¼Ä¾·¼À¿ÉÏÇÈÊÊÁst¦ÌÌËÍÊÆÂÃËÎÁ¼¸¼º°xqi»ÈÄÀÀ¿ÄÀÊÉÃÃÄùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{z{mmx|`qc[_`_TI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼·»»«Úþ¶¾À¾¾º¦ª²¶ÃÀ¥ywzÄÆËÈÁÃÀÀÉÊÁ¿»¹²¢u®ÈÅÄ¿ÀÁ¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsxthp^\_]ZRFEDMIAD=H;;59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯··²µ³·¹¼»¶»»Ä·mν¶¹À¼ª}nhnmrtx}½¿ÆÀ¹À¼¾ÅĽ½¸±® ÊÂü½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸··½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|wmu{qoj\``ZSPAFIGK@ECI<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÀͲu³½¶µÁ¤iZ^`MR[[otx¢¸¸Âº³»·»½¿º»»®¢¢¦¾Äþ¼¿»»¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ°µ´´½º¾ºº»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦{zsvvwoqa_f][UJ=??GG=GCC9:5;99><<9:<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Âɦx ¯µjfgVY`IIMPTmx§°·¾¹²µ²¼¹¼¶¹¾µ¥µ¥vÉÄÀ½¿¹³®²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtwrl_ca\^OIB?=IDFMD@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·¿Æ©|v¡_SCXUGajVOEJa¢¯¶ºµ´²¬¼¹¸µ¸Á½¹«®u¦Ë¿¹ºµ®¥¬³±¦°¨ ¥¶µÂ·¶´¥¨ª¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´¶¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wp|ovsnc^gY]]SONA>JB@JJ@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸¸¿´ynNK?dYBNwiMA]°µ³µ²´¯¬»º¸¶¹¿Æv°¤f©¿¸µ²±¤¦§¤¥©®¹¬««¥¨¤«®¯§°«¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmujl]\kU^\PNHDGMBFNF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³·¶|XFAOYJJXwb@S£¹³´²°±°¹¸¶»·»¼£³¤t¬°©««£¨¡ ¨®¤£¤ ¢¦¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wryhutneUadW]ROMI@IRDNC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²¼©hM?RxqPIIKhZER®»±¬³¯®¬¶¶²´µ®©§¦¨ ¨©¡§¤¨ ¢¢¡¥¥££ ¥ ¤¬¥¦¨¤¢££«¬³®©®®®§ª¨¬¡ª¨««¦¢£¦¢ ¥¢¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦¡x|vzcxmn]QiUPOGPMMCPQ@>;>49:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬¨½Âª¥½hDRQWIJ`JUadc®µª²´®ª«¯°²³¥ ¢ £¤¨¢ª £¥¨ ¡¢£¨¨§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ ¤ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£~|uv}mk{dhVRdNJHGOSNKNH<E@<2?859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡© ªÆ¿Ê PAsvOmJKcfts`\`r±¯®³µª¦¬«¢¢¢¤¤ ¤ª¡¡¦§«¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¢¥¢¯¨®²«¦«ª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}wy|eyz`bSUaHIJKSTJSQM9?A67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¤ÆÆWSJe¤Ze}or[Qkc[ea^k´°°¸¬¦¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§¡ £±®²±´ª²®£¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvsilf[SZZMQKOOVMSMB7>C78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢ª£yUiqvupcvvXWc`chZYWg®¬¯§¢ ¡£¢¥¡¤¤¨¨¬©¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½¶¾°¬±®©ª´±°¨«¨³¶¸³¸²´¤ ¥ ¬¡¡¢¡ ¥¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§}xvjxu]m[RaIRUHFUWJCMG=KI8E<77;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¡ £op`cXL[RZLKPXRHMMG¬ª©¤¦ ¨¥±ª§®£«®¶°µ²±®¶¸½¿ºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«®±¹¸¼¯³°µÂ¼·¾³³µ¢¬¢©©²©«¨§¨ª§ § ¨¨¥¤ª¢¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vrmiwmim\X\CWNJGMHCFN=>L>4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·¤°¦£bW^e`WMQG=>?CC?>BQx©©ª¥¢£
«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶º»ÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÉ¿°¹¹½¹Â¾¸´»ÆĽü·³ª³ª³´¯³®ª¯£¬¨¶±£°¦¡£°±®°¤¥¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¤¦¢¤|trklurqhW\QFUHDJPI?EB4FH95<>7;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ |_^e`QFD;C>F<?96N~ª³§££¢ ¥«¦xm ¤¢«¬´¼¶Ã½¾³»ÁÃÂÅÀ¿ÂÆÅÅÃÈÂÀÅÇÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿ÀþÇÆ·ÃÊÉÃÁÇ¿º´º»µ»·°¶²ªº²®¼¸¿»º«¸«ª¸»µ¼®®¸£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢
~zrkdioxjeZ[FLMEDTMECE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡}sjaWNE>IY|oaB=\®¬ wrqmp¦®´¹Å»ÍÇ˾ÁÌÍÍÌÈÈÐÌÌÌÇÊÅÆÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÍÓÐÓÓÌÊÁÆÆÆÊÈÏÀÉÑÍÇÆÈƼÄÁ¾¿¿¶¾³¿ÀÃÃÇÄÇį¿¹²¸½Äº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZZDOMDEPIDCA55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>9;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £jf]TID@?J
¤ ²£yqroly¤¶º¹¾ËÁÓÑÓÈÍÎÑÓÑÒÐÐÑÑÍÎÏÐÅÍÔÕØÑ×ÍÆÇÉÌÃÅÊÏÊÓ×Ñ×ÒÕÖÓÔÈÌÆÌÍÉÓÍÎÓÍÆÉÊÊÂÆÌÇÉÉƿó³ÈÅËËËÏÇÊ¿¾¿½ÁÇÅÌÌÉÉÀÃÀ®¯³¨¢ª£¦©¬¤¥¦
{ruvgcgvjdVWRDNF@IQC>B=:22A<E<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡bTLJDC?CR¯Ñ½²¯¦ ¤¡}xqkebhrpr{
upnqsp
³Ã¾ÅÑÐ×ÖÕÒÖÍÔÖÖÔÓÑÒÓÔÒÏÒÃÐÓÖØÕÕÒËÊÎÑËÆÍÑÊÒÕÖÙÖØÓÖØÍÒÊÏÑÌÏÑÌÓÐÀÉÈÊÄÌÌÌÏÏÅÇȶÀËÀÒÍÌÐÆÊÉÀÄÃÈÎÍÐÑÏÍÊÈ͸·»¨¥«§£ª¥©¨¨}xsvpc`erc]R\IKGAEIJ>;A8>5586;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¤¥ ¢¡ZI@ADAFQv±¯¦ wica____^__]alusppolqquÄÈÇÔÖ××ÖÓÖÐÕÔÙÔÔÎÏÕÔÔÑÑÌÑÍÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐØ×ØÑØÒ×ÙÔÖÌÏÏÉÍÒËÎÑÀÆÃÈÆÏÎÑÑÒÈÌÍÀËÍÆÔÏÌÏÈÄËÇÇÈÌËÔÔÑÕÏÒÌÓ¹ű¥¨µ®§¨«¥²¨°³¬
|zqstmbcim_VQ`JJCECRM@<>43:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><?@=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¥®·¨«·×ÔÕÙÙÑÎп¼Ìɶ¾®¦ª¨¡£«fC8=>DXª¨}qecb__a_^a`^a`_`emppnkorvwÌÁÓÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÑÊÏÌÓÖÒÑÖÍÏÕÕÑÅÑÔÊÐÔÕÖÎÓÑØ×××ËÈÎÄÉÏÌÊÌÀÊÀÉÊÎÎÏËÐÎÎÌÏÏÈÌÐÐËÎËÃÊÇÉÍËÌÒÓÎÔÒÑÐÐʽȹ°®»¹µ«¶°¨¸³¾»±
zvopokadnpaX\ZJFFDMXE;@=33<<87855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÁ±©¬©¤±{HFB;W¡k^^^adb``aa`a`^__^\bmroostuvy¤¿ÌÕÑÖÔÓØÖÎÎÓËÎÎÅÎÊÒÒÏÇÎÍÍÔËÎÒÍË×ÖÐÌÑÔËËÐÒÓÊÎÑÕÒÕÕÊÀÊÁÆÍÂÈÊÃÌÄÆÈËËÏÊÎÍÐÎÔÌÆÉÏÍÉÇËÅÇÂÆÊÌÍÐÒÇÐÏÎÎÌÐÅÇÁ¸¹½Ãýù³²¾±»Ãĵª¥¡yqrkmh``qhYXhVMGLIPQB;C>;68:8:;57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±Ç¸ÊÕÖÙÚÛØÌÌÏÈÖÕĵ¯´¨ xlopw|eabb`]^aca````aa__][]grrprspmry¥ÇÓÏËÐÐÓÔÉÄÈÉÅÆ¿ÃÅÏÎÇÅÇÍÊÑÈËÎÍÆÑÒÐÎÌÔÊÇÊÎÏÇÇÏÒËÐÏźĿÆʽÃÈÉÎÅÃÇÀÇÍÈÄÌÊÌÏÈÄÄÐÉÆÂÆÉÅ¿ÁÇÌËÌÏÂËÌÉÇËÐÅÅÇ»ÇÃÉÉÂÏÁ½¼¿°ÁÉǹ¼ª°²§¥¢£xoudk`^fqa[W`GHHGIMTG?J=64355==48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼¹ÌÌÆÐÕÕØÚÛØÐÉÏÏÑÓÈ·»»¤¶~g
¢ª
}~s_[^]^`^`cdc_]]^_``_[Z\`lrqnokloo}¹ÑÈÉÊÏËÍĺ¿Ãº»º¹½ÈÆÂÃÀÃÈÊÈÈÊÈÁÅÌÆÈÊÍÉÄÁÊÉÁÁËÐÅËÈ¿¹Á¼ÆǾÀÆÏËÄÀûÉÇɼÉÇÅÊÁ¾ÂËÆÅľƽ½ÁÃÅÌÅƼÀÉÃÅÇÒÄÁÉ¿ÊÊÆÈÆÑÃÃÆîÄËÇÄÊ·¿¼º´©¬¤¥¬£¡¦£ |wsufj[anmZ\XRDLGBGELDFS@54335@=3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÃ¾²°¶l^y|z
uxurp_Z[]``bcdded`\\^]^^`[YZ\bornkikposǽÉÅËÀÆÁ°¶¹±±³²±Â¼¼¼º¸ÀÁÁľ½¹½¿¹ÄÊÅƽÆÀ·»ÃÉ¿ÁÉ»¶»ºÆÿ¼ÂÎÃƾ¾µÁ½Ã»½Ç¼Ãº´½ÆÄÂ÷À¶¶¾¿»Ìý¶ºÈ»¿¾ËÃÁÆÃÆÉÇÉÆÐÆÂÌDzÇÉÃÎÌÁÅÿ½²·°²§¨¨¹°¥°ª¬zvxkeh`hodV^YJFJFHKAFBFI@9:658853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÅÂÄÈÎÒÊÊÊÇÍÍÎÑÈÐÆÕÔÕ×ÍÊÎÅÉÅÇÁºÅ½¬®¦`cux}{ttc\\]^``bcbbdeb]\[\^\^]Z[\^hsqmggnory½ËÁúÀ¸°°¦©«¦¸´¶´³³³»¶½±·°´®²»Â¼Áļ¿º´²º¾À¸È¸´¼¶Á½¸½ÇÁÄ»µ¯²µº¿´Å¸»µ¬¹½¾À½±»¶°·º³Æ¼·¯»¿µ·µÅ¼¿ÃÆÀÄÅÆÇËÅÀÆÆ»ÇËÀÎÉÇÃÆÁ÷ý½¶¹¾Ç¿¬µ»µ·¶ytxggebkn^V^`FKHHJFBDAEE?=:566633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐËÍÈÉÈÊÉÊÄÐÍÒÏÍÅÇÁÅÁ¿º¸É·«°[gozx~vw|sh]]]]_`_`da^cec_^\[^[]^Z[[]_lpnifjmnr|¤Æ¿¸¸´¯ª«§¡©¦ª¬²ª¬©´¶±³©®§¬³»º¶Ã¹º¹°«´¹»´Â¹¯À±¾¼»¶¼Ç¹Ã·ª¨°²À¶¸½°±¨±³µ»¼¬®¶¦®¶®»²±ª¹°®»®¼¸¼ÀÀ¾ºÃ¿ÆÃÅÀ¼ÆÂÈ˸ÅÇÅ¿ÇÄúÄÆ»ÆÉÌ˳¹Â½»³tvwki`bliYWW[ALKMJEAC@FA:::996854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÄÏÇÍÁÂÆ¿ÄÄÃÃÊÂÉÊ¿À¼Áº³µµÃ®ª°[i~{x}
z{wn^]\\]_`__dcbcdb`_^Z[ZZ]ZZYZ\enohfgiknrº°µ¥£¦¦¤¤ª®¤¨¢«ª¬ª°£¦ªµ¶±¼¸¯·¯¨®¸´´¼¸³¼¯¸¹µ²¼Á²Á¯¥©£«±²³¨½ª«¨«®µ´¦¨¡¤¯©²¦¨¨®¥¨·¬±³·ºº»²¼¾¾¾Ä¿µÁÁÇÈ·¾ÀÅ·ÅÃÀ»¿Ä¾ÄÈÌÊ¿¿ÄÀÀ©stsji\aodWVXPHZRSKFFE>?@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÍÃǹ¹ËÂ˾»É¶½Ã¾ºÊ·ÁÃÁ´¶¼¶±¯µ¼©«cmz}~xt~|swe_]\\^_`^_ccab``_^]\ZXY[[YXZ\_fkfdfehkor
©¥«¤ ££ ¢©£¢¥¦§¦ ¤¦¬²¯··§°¬¨ª´«´º±¶¶®¶¹²°ºº±·¤ ¤ ¦±¨¬©ºª¥§§¨§³ ¨§¤¦¬§¤ ¡±¬²µ³´±µ½¶»ÁÀ²»¾ÃÁ±¹¹Â³Á½Àµ¸¼½¾¼ÂÇÄÃÄ¿ÀÄ xqlbf`ko`TY_HNhOTHFKF<=@=:;;826536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;>97776788666;::;9:;<859<:>>@;ȵ¶½¸ºÀº½µ ¡¦º¶«³³»³ÄÏÉËÂƸ·ÇÀÌ¿¸Ê·»Å¸³Å¸³¿À¬µ¼²¬¦¯´¡£ir
|xusomjiipi_`]\\\^__acb````]\[\\XYXXXVX[]_dccfgggkmn¨¡ ¡¦¤¥¢§¢«°±µ¤©ªª¬¬¤´¸·°¬³¶¯³µ¯°ª¤¢²¥¦ª¹¢¦¦ ¨« ¥£°©¬¨ª¬°³¹¯¸¹º°¶¼»º«³³¹³½´·±±¶µ¿µ½À½Ã»»½{sl_e^ddXTW^IW]KPGJJGA<??A;?<05535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»¸ÁÁÁ´¤¤¤¦À²¯¶¬´·ÅÏÈÈÀÆ»»ÃÃϾ¹Ç¸·¿·²Â´±»»¬¹º±¢©«§m~
xrmomkb^aff]]^]]]\]_aabccba_\[[ZZYXXWWWXXXZ]bddfffhikr§¡¡¨¥¦¢¥ ¡¯®¯²¡¥£®«¨¢µ°²²¬©¯³§º³¦¶¡££¡£¢ª¶«££¦¦¦£ ¡¬¨£¤¦«³´ªµ°²«³¹´¯«¯²²³¸³®©®²·°º¶º½À¸³±yuf_f_[YVSZUK[QLJEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ¸½¿¶¾¼¿³¥£¥±Âµ¶½´¸ÁÌÈƿŶÁÀÇζÀý³¹¹²¿¶±¹»²´¯£ª xxoqtqhechdc\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWVWadecdeddhjv ¡¡¨¤©«¦¯°«£¤¸© ¯¨·«§§°¤·°¤· £ª¦¡¹°£¡¤¢ ¡©ª¤¢£ªª±¨´¬ª§³°¥«®³±°°¯¯§¨¨²®±´°¼´º¸®£zve_aWYXSRTKM^LPLGHLKE=@>=B<:7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´ºÂ±¾·½®§§¢ª»À½À¹®´¸ÁÌÇÅÂýŸÈ̲ÁÂÁ®¼»µ»¼µ¹¹°¯°ª¡©|wqilrtphhedfa\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[bccbcbbcfi§¦¤§¨ ¦ «¯¦ ¢£·¨¡¡¢©³¢¥¨¥°¦±®¬µ¡©¡¢±±££¡§¨¡¢¤¥¥«¤¥°§¥£«¬¦©®¯¯«¨ªª³¦¦«¯´±®¼¶±°¯ {xseb\[]XNLQHRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847763321./2556;:8;7876<;:;;A8x»»±¶½°»±·¬¥¦¬·»¼Áź±¹µÄÉÉÀÃÆÅǶÆijÁ¿Å«··½¶½º»µ²¬¨£t~vncafihfgifil`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWTTVURTRU`a_`a_``bdi£ ¥¡¦¥¥¤¤£ª«¥¥±ª¡¡¥ª¨¢®¬ª©¢¢¢¢«©°¢¡£¤¡¢ ¢¤¥£«¥¢£«¤«¥®²ª¦¥¦¦´¦ª¨³µ´¹º°«¬sqp`[WVVRFPOHZ\ORJTKSLEGJD8;;><9667:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:8698598989;9@9{µ´¬´»²°«²¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÉÌȵɼ±½Ãɱ¸Áµ¼À¼´µª¬¦r{tiijlgjlmkjle]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURRNQY]\]]^^__bdm¡ ¨©«¨¬§©¦¤¥¯¤¥¯© ®«´ ¦¦£¤¡©ª ¡¡¡ ££¡£¡¢¨£¢¨« «°¤®¸¦£¤£¬©¨«¯´·²½µ³«¯
uti[XYRUREXLQ[XMUOQLQRINJB=??A?=75799<<977:79:;<=>;7;;:=67:;8976989:6:=99577571141-+/434988::8::748=8?9~³§³¶®¨¨¯®©¨¬·¶¬¼Ê»¶¿¬ËÆŸÁÎÏdzĺ·»Âȱ¸¿·¼¾»³¶¦© ztvwnmhmmmpggifd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNOQYZZZ]\\]_`d||¡ «ª¦¯¬¨°¥©¡¤¨§¯§ª ¥¡¨«¥ ¡¤¡¢¥¥§©¨ °°¦±½¨ £¬´ª®§°´°¹µÀ±®±«~rtcVTVNRJGVPRRLLXNJLORGMKACFDD>A75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8´¬¦±·ª¥¢±«©§©²°¤¶Æ´¹º³ÊŹºÁËÐʲ¶¸¼½Àñ°±·®´´»³´££vkglnqnrjokdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVTRNNNRWXZYYX\\]aj}w|r
¨«¦¦¬¨ ¦£
¤£¢¥§¡ ¢¢¦¤§©§¡ ´²¨³¸¡£·¬©¤³²¦µ»µ«¬±£zsn^NQQMODNNNPKFNNJJNNQIMJAHLHHC>958889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12876:999984988A7w¶¦¤·±¥§¤ª¥ ©¦¤³ª¢²Ãµµ²³ÆƶºÃÊÌƳ¬¹½´¸À¯®©°¦®»¯ |n__frpvqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXXXZ]anosm
~¡£¢¤¥¢s~{ £
~~tz££ ¡¤¤¢´¯¬°¦¸¦¥°¡±®±¼ª©¯ªxtdVMRPPMCSNLPMBPQHINSMHJJDKMFKK=749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-02764789::65:87A7x·¡£´¨¦¥¨£¥¥¦¦¦²§¦´Á¸¯´°ÉÄ·¹ÁÎƾ³¬ºÁ¬Ä¨¢¦¦·£ ~xfWV_gfighnciigb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTQMMJHNTSSTUUWY[]iioj|zrMWq
_;Vo|s
y{}xqp}¡ §®©¨¨³¢¦®¬¬¨´£©£tn`[NSRWLDTJPMLFNOIELQMKOJIMPFIJ=7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· £¡¦¦© ¦©§£ª°¨§´Á¹°µ°Ç·³½Ï¿¹¯®µÂ§ªÄª¢±£~sv]PLQUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MNQMKIFHNQQMORTVXZ`klfxrOA?|y`JQnx~
mwuvxpQ|~xvhw~¤¢¨©¥¤°ª¡¤¤¦ª¢ª¡¦¨vng^\HQQSMIUMSILKOIHFJNLMTKQQOGJD=769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')+*,4833989:99::::?9w¶£§¡®¡§¨¥§¨¯¬ª¶¼¶¸·³Á»¶¨¹È¸¶¨¨µ¶ª²¼§©~xqoXMKMNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDCINOhYNQSTVZnqt|hg[Ss~|
{vxsouqtz~«
zzhv{prmxx{{wssxgu
||©¡ ©¥§¤ ¤sib]]JWPRGKXROJMLRJJJLPHLQLRTMFIB<78;99>=:;<98@?::>=7==79937785675251472/2.,//200/-+(().12721987:8775:<;7v®£¡´©¯ª¥«°±ª½´²»¸¶º´±·º²ª¬©¨²¯¢vw|voojYKHHHGEHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQQSV^t{weu|gxvx}q|w{ok~}tz|tfv|lohs|myq}qmvqhq~pD
wwz}{u}£¡¥xongc[XXUQJSUTOPNPVKNKOOJROHNPLFD<;79;::?=9<:99??;8;=7<9999266856633611224.,,-..-0-+*''*.1362/876966527995y¦ ¦°¬®«¨©±¯±«¼¸¬»¾¸³¬§°§¬¥©¤¡
yvq|mupjmjXKFGEA@CDHLLMQRPQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNOQTX]epqk¦ªÀ~txb{wn{yy|omytyjjq}Inhw~mjdly
krl|nr|imps
{~{wpttyyp|ojoooYVXTRQYORTTRXUMNHMKMOKCINGF@:99;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¤¯¢ª¨µ¯®¬´¿«¼Ã¿¥¢¤¡¡sztotkpldljYNDFC@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORVZQY\_§ahryd~olzvtltt|jjMy
f1vsl~~tfeu
filukp|hqq|n{t~}qqnumwyujyyxlkpheXRZXYY[MPUVYXNIHEJJHGC@GECG=998;9:9<:9;:::@<9:<98>787715234533645031.**+),,++)(+'),,226,,4775478iO8;5n£¨±§º¯«²°Â±»ÃÇ
zqtyprpoodqg_TFIC><;9:?@ADCEGILOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQULAIQIb¯²qzwk|lq
zyr txsu5q¨¡¡¢
vp||shgbjnrmpuioXupvm{}mrnp{svnbu
ux~}{sqqm`[]^\ZYa_RN[ZXWKHJFIG?CABG?CD=;97=;:;;9:99;:?<88=:8;66651121253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥´©®°®Á²»ÁÅ|nul{txxmwnwdj^IPG=?7449;;;=>@BEHLLLLNPQRTUVWXZXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMQSDKu|{u~lv|}~u¢z~aªzw~s{]dqtz|wmhjbyo
zoxu
zptzxkni]v}|
}q}vw{|xqtufg`[[^S\g^WPTX[UGJJEKG?F@DC>AA=;97<;;=<::99;;=>79>9985653244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¦ ª ±¨¯À²»Åº{vk}xs ||p}zhvlRXL@E211366688:<>AEGFGJKMOQQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMOQLKT]YRKh{y{q|z|~v¡¥©H®¯®©tm|~hghyn
qHlwryvhmk_v}yzuv|xmow~uusm\^^[ccXgf\TPPWYPDLKFOICFCC@@CA=978:::;;:888::?>6;>7585773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|}
¬ ¦¸¯³½³}tp~~}}~¤
x~sx_cWKB60./23124668:=>?BEGHJMNQSTUTTVUSQOGC?80,#[??84.]ps£UFIKMMPW`XpY\^i
~
¡¡¦»±§»Çè¡¥|qw
ihptrw{v|nvuf ª¢zzypgkx{ule^[[^j^bg`ZOLNWRQIPJDNGCJDCADDA<:87=<:<:88778:==8<=68656623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfwz¤¡¬¦«¯°¡xw|~mpj]B@4--//..02234778;=?BDHINQRSRSSTRPOHDB<87/9C><<63.lMPHILLKNV`cfgmt £ª¥¤¬©¶¢¨Á®ǯxº|¡
¡
lpuwqm
q ¤´©¢}kjj|uc^d`[gl]ll^WKHNRQMLLFIPCDMFBCEFB=997=<:;:987767;:6=:785456344566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYoouqv~§ ©ge¤~y}
xx~gMR>/..,/.-/000212467;?CENORTPPQSQNPIED>;<:DF?><752<?R5HHHLLMNR^n|s}§¥¡¡¢¨¨«¨¬©ª¶«¿«¶ÈÈ·ÈÐϾ pi«©
¦¢xz~¢{w«²|£¡¦µ¯¨lss}}si`^b`bhd`gf\REJKPOIILFFMCHLFGCBGEA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppt`m|aw}{ªªBD}x|
v^bP460-1/,.0///..0015>AAMQRTQRSTRNSLEE@<>=FG@A@8662<9;FHGIJNOQYm
w¢¦©´¼¸¤¬¬¦¨´«°¶²±»±³¾³Ã«ºÉ˷ÿ¸¥¢°³¬ª£
¦¦ £¦¢«¨¥
¤¡ «¡¤¨±£¦·º ¢°¢¢£¡«¯¬²µ¢¤ªyz~ibi]fc^dd^gg_[OCIHSNFHLFJGFFHAKFCFFA;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLhbWioXz
v
ÚÈsV|z
qna@E64<3/110-,+-1.-4?CAMUQRSUUVUN[PGHE<>>FHCEA7;<5C;=FKIGHQOPW£²©±Àƪ³Å¶«³¿³¸¾¶¿´Á¶»º£¸Å¨¶Éǵ¾¹´¨£´°±§¯«¥v¤¡¬²´ª®©®¶»²º¬°µ¢±«±µ»·µ®´ §¨£§©¯¬²¹·¸¦¶©¤x
wZceWgcbd`ag`[TJDDLUQHIJDIGEA@@KDBMG<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AFWQJL[YQbcWyup}u
{¿»£¼´y
zxn]V@EN<6:56AB764//6CHBQ\PQUWU\VP_UIKKA?>GKFFD;>@7D7?BJJEFVSP^¤£±´Âµ·ÁËȵ»Ä½³³À¶¸Áµ¿¯·t±³¥ºÄ¤°Æ¹±³±´¨¤µ¶ª± ¢¢¥°®¦«§¤ ¬´»¢¨²ºµ¼¿Ì¿ÅŽ½³Á·¹·¾·º·¹¬¬°¥°©½°¼ºÂÁ«¹§ª~~lXdbYkfjfW\cYVSIGFLQGCHIAHD>?BBL@@MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALQVSYUZvjo~nzsxb¹¡£{z|}}wzueP\dGEL;Qca[^SF?;HPEZcRRYXZgYT``LSPEA?IJHEEA@D<E6B>HGJLSZT]®¸´º¸È¿¹½ÉÌ»»À»·µ»º¶½´º±Æ`u²¤±«½©¥¨«ª¤¢²µ «¨®¥§¦¥¤¢§±´§²²½¶Á¾ÓÉÉÓÆÃÅÌÂÊÃÀ¾½¾»¼·´¯¸·¶Ã¹Å½Âǯ¹©¡«¤¨µs`cc_Xc`jgRX`VRUIEENK@>GD=KA=B@=F>;HA796379>489:57045/26389374426?8@>GKRTSQPOQQPJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRKQ]glkpslrrsÕÀµ }~x{|y~t}zkfpuY]\Pedb`ed][XW\MdmURmm_n_XgdUYUJDBKKHFHHHHBI:D?HKTTV\Z[¹À¸½¶Å¿º¸Éʺ¶¹µ·¹²·µ³®¶¶du¨p^¢¬ ¢¤ª¥ §¦ ¤¬¥ª°¸°½¹ÔÑÏÖÐÊÌÒÌÏÎÊÆ¿¾ÂʽÁ¼ÁÀÄÄÅʾÈ㤻°´¯«¸»{m^a]Z_bZdcP[`SPKCAEFE<@E>AHA@D=:E>=J?37535;=468977022/24169775555D3ELM>51/006:477@IOI;-&**(-./,@M+/54mI0Ht?>BD@CDFKODQ\Yh_onlotu³« ¡
~|s{
{ts{ylmu{hreiligjih`fiilZms¤¼g[oh]ZZTHKNOJKPKSQHLAJFJO_^bgia·Ç°¸²º½µ±ÄƵ¯¸°°»«²±§«·«¶§§N¦¥¡§¬¯¨°¨´´ÔÕÕÖÓÌÐÓÕÍÓÏÍÅÂÉоÉÉÊÉÑÇÌÍÂÐÑ·¯Ã¼Ä¹¥µºÂ¢pe^^_YaXZfZQ]XOPBBHEBH;AC>AG??A7;D>@H=46655;:687654/10146278875367C5B8?-0-1349=97,.,1;FK=),(.0007K?-46TW0DwC;B>EBACJM?UYReVshqoyy ©¦}|p{r}qxulqx~qznxslipmcjmpxiw|~Ë¿Áߧmcxnc[a`JPRUNY^P]\NPNTQUT\nmvq¸¬´¦°µª¬¼¿°«´¦¤¸¦«® «´£±®¦«¬¥¨¢¬ÏÒÕÒÎÌÒÔÔÐÔÑÎÈÃÔÑÇÍÒÓÓ×ÌÑÑÅÒÖÅÀÎÇǨ¾·Î{pg_d^XaS^ZPQTQOH>@FABE<@A>ED>??:==<<JA45465<888664412/03526768533;=<E=@11+/249>5901022-2DN3)/3.32=N238C}_2AtD:==I>@CFH<VRMNZu
wlwo}~¡¡y
~{r~zu
ovrks}{v{sxrjsrioqzyqz¾Ë~²vrvhak]CZZ[VecYdjTX\]`d^cwz~©£¤¡ ¨¥ª°¸ª¥³£¡¢£¡§±¦j¢~§°¡¡¡¥¤©ÈÍÏÈÂÌÑÔÒÔÒÎÓÍÆÖÒÌÔØÖÖØÔ×ÕÉÔÚÍÉ××ÑʬÃÂËtpebaYUZT\PKGIJJ@;:;DAD<BC>GB>BB;<9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/--;R017/532FD28>nb5=tM99@I<AD?A;PLFKYpu}hsxr
x~xs{}wznwpmuvx}t
|ylvtn}vtx{µ;AÅ¥~|ieWICfcecgjcnw[^fhknin ££¥±££²¡¥ ¨ £±
~
z©£~«³¨§½Ãƹ¶ÆÎÒÐÒÐËÒËÉÔÎÐÕÚ××ØÔÙØÍØÛÎÉÙÚÑÖ¾Ë˵zxpf^[SWR[VFGJIEE=:7:@@B:FD?DCADB;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BS39254/7K75<`bA<svV87AH:?C><9QECJTknnpbpqs
|
|x
zyqz{uz
yp|oozq{qnztw}|u~{¯sX©Â¶pnb=^hrpqpnxvehoruxqz © ¬¡¥«}
~lz|®ª§¯¶½©¾ÇËÉÉÌËÏÉÄÒÊÔ×Ù×Ø×ÕÛ×ÓÙÛÕÐÛÚÑÖÈÔË{}jj\[QTT_HCFIH>A>=7:=?;=G=?AAADA>>:86DB755479.566435532323647553458EBDCEB56<FNSM[nfcnskaV>,4LG865434BF4=W_hLux^8;?F<<B<99D?CGRj^mdbfkvqz~~{|~
vyn{{tz vutu}soou|
zv{·Å¤ÁɸwpeNfczw¢xyv{{vm¥¢«
z}¡¼ ©¦¦®¨¶¿ÀÀ¹ÇÉÍÎÅÍÊÑÖÕÕÙÕ×ÛÔ×ÙÚÛ×ÛÚÚØÎÛÆ}{ikgbUXVVNLDMB;==<8:<>8=@6=?@=?><9867DA6455=80665547745613854564557HH=DJE7925;H>;::7IP]ZRUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Xea][htzylwvz{~~|z}
zzu}tm|}~t|~x~xnt~
|}z©Ã¡½£}}r~s¦
{hGq ¤
~¥
¥¸¢¨¡¤¯·ºµ¬ÀÆÊÐÈÇÌÏÓÓÒØÓÕ×À×ØÙÛØÚÚÙÙ×Û¹{{zmkgYb\TPOICLA<<>99::99;=6?>><=9:;;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8689?=DRSRX^UXfmmmiqsy{z|{z|{}t
yrzsm~~w
¡n¨
z |}£¢ ¤®
Wr«\¢¢¢
¤³¡¡¨²¹¬¦½ÁÇÍÈÆÏÍÐÌÏ×ÑÑÕ®ÖÕØÚØÚÚ×ÕÙÙ rwih_^YTXYCAHC?>>:49:;7:;;3;;?=>7;9:1:H>:37=@50677255?65;55858:57735HR7GOK994=EJB>1FCLB98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcbyma~omwxyz|
{{v
spzuvvt
~¦¤¥¢¨s±§
¢£©¯n·
Äȱ¡¥²d¤ÍÈ
ª££¤¨¡£³´¦£¼Á¾ÇÅÅÉÈÉÂËÓÍÍÔ©ÒÑÖÖÖØÚÔÓÚÎukf``_PKV\BBFC;A=837;<:8=649:<:82?992:I:=67BC32:96264>=4;>6949;57944JQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBdGu}|m}xz~z~vv{ln~y|wx|~£³¨¤«²¡§ ¥¤¯¢¸³¡ ¤¯¢¤§©¯¤ À£É¸«¢¥²
¨¢
t²¤¡} ¡±®£¤·¾³ÅÇĽÃÿÆÎÊÉÒ§ÏÍÓÑÐÖØÒÏؼu|x_bWbXRIKOEBCD5>:76:?;<7=42669774=5;5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=89567=:JFDGM[\YIha;Hz{m
y|x
}px|}|osz}{x
¨¼©²½¯¥®³³©£¢°¬µ¢¸¥¤©·¦¤£©ª¤¯°© »»É¡i¶·ª°¢«½£^©²|}´«¡¢ ¥¯¨¡¥³¸«ÂÈĶ»½¼ÅÈÈÂСÆÉÍÍÄ×ÖÐÊÓ£s}k_\UaSQGD><CAB8?874>F<<6<35355454B39:BM:A;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPfHa`bpI@r|u~m}}|~pww{«ÃÀ°½Æ»³´Á¼´¬«³·¨²½«º¤¨¹·ª¦¦¡¢££ª¯²±ª£¢¥¥£¹®¨À»¬²¹¥¤§}½¯z§°« £¬ ¡§§¤¢¤°³¦ÁÆ𰻶ÅÄÿͧÇÃÇüÖÐÌÄÊvud_\b]OKCL@EF>A?A<:4>A==5=6>333242A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\hF_igZ]\{un~{~q~zz¨´ÇÉÀÂÌÁúǼº¯«¹»²¶º³À®¥À¤«°¼¼ª®«¢¢§¬¯µ°ª ª¢°´§¢ººµÁ»«¨²¤¤¨©Ääy¡ ¦ ®ª¡ ² ¡¤ ¦¤¦§¤¯¥¿Ä®©·µÉþ¶Î²Ä¾Ã»³ÑÉÇÁµw{o_Z^lTNIDMKKI@A=BD<5AD;:3=8B332262A05IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBg\Me\fTcjyr{~wz¡¨»¾ÉÈÊÂÒÉÊÂͼÁ³»¿§º¿¾¼Ä¸¬Á©¬³»½ª°ª¤¥£¬®´¶µ ®¥¢£´¼©¨¼Á£µ¶¯«¯¬ª«©§¥¤uy
££©¥}£ ¢µ¦¥¤£¥¦¥£¨¨¢²¨»Àį¥³·ÌÀ¹®Ã³»¾Á¸Â¿p{c[X^\MMNJGDDHBBACK:4DH:;4<7E.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQF7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>lI_XaZddWx
~ ®§£Ã¾ÉÄÈÆÒÍÎÍ˼·°º½´¼Ë»ÃÁ¶·¼³À¹¼®¯¨¡©¨¶®©²·¬¢§¡«··©¥¯¾Ä±½¹³§©³³®¥¨ ±Å§}}ª¥¡¢¡Z¥e£³¥¢««§§¡¤¨§¶¬©º¼Ãµ¦´µËÁ¸ª¶¬³»¸®¨¸º¼·np\ZVWPGKSMK?AHDDHFF85FM;>7>AJ.32025B55PWN;LFKRLOGGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|hV<>@BFBsFiIRecLF¥¡¨¥¢¯¾®¡Ç¾ÆÅÈÇÎÎÎÒʾ»¶±º»¼¿ÏµÄ½·¹·²²¶³·³¬¦««¸«©¨¯°£®¤§¤¥´Á°«¬³¾Â¹À¹³§¸´·³¯¤°®¤¡sÁ}±¦£ ©¡ `J¥T°¯¥¯¯¦¡¦ §¢´©ª³½¼»«°²ÇÀ¸¦¬«²±£¡²²´¥sqg^\PRMEQQPQ;HKIFGAC=9KT?A:=EM07544:B34NWO<JKNUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@CAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}hX<:BC@=REWSsbVFH«¡¨®§
£¥µÉ´©Æ¼ÃÄÈËÉÈÌÎǾº³®¹¹ÀÁ͵ȻÁ¹µº±¯¯²´§£ª´´«©¦¬¤®¥¥¨¬ºÀ¨«¶¶¿ÁÀ¿¸²²Ã°·½«£®´¹¥¦v¾®¡¡©¨ ª¡§mu¢¢®²£«©ª«¯¥¥ ¥ª¢±¦©«º·½³²®¾¹¶ £§©¥¦¬©©fhb`SLMGHNJUL=MDMIJACD<QU<AABDO18=77?B75UXN?HNQXRPQTJQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW<:=..SaMVH~e^HF¬¡»®ªª¡£¬¤¤¶Ç½´Á»ÂÃÈÉÅÂÎȽ¹²¯¹´ÀÂʶƱÁ¼µ»«©¬°££ª´º¦ª§¬ª¨¯§¤««¾¼¨¼´¸¾Æ¼¶µ¸À°½¿³©µ¶«¾¤¢¡» ¶©¥£¡§¥³¢¥¨ª¤¡¢¡µ¯¥¦±««¥¤ª ©¤¡¡´´ºµ¨µ²²£¦ª¡xc_a_LIGHMQIMDFFAQKIADGAVRDH<AGQ1;B7:BF79]YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:h]FDCpbGE¨¤Ã¬¤¨ª¨¦¬¢ª¶ÅÁ¼¿¸ÁÃÁÈÄ¿ÍÆ»¾¹²°¸´¿Ãȵ¿°¼·º·§¤««¬¡¡«ªÄ¢¥©¬¦«¯¬¢ª¨¿¸¦¬½°··Æ¶´¹¸¾°¾Á¶´²´¯½££¡¡¤¢£¾¤©©¬ ¦½¢£¢©« ¤¡µ¬¦²¦°© «¡¡¥¤«±µ±ª¥ª¬ ¡¨ie[b^PJHKOLHECI@=OH@;GIH[ROK=HNU4BE8>HG5Cb[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,0Mv\4KZ5,MnW<-=)#zbQ5CKQ9oRF<KxfcWM¢¤Å«¡«¢¥ ¦©¬¶±£ª³¶Å½À¶À¼É¿Êȶ¸µµ±´´·ÂÆ·¾±¸µº¶ §ª«¥¤Á¥ ©® ¤©¯¢¦¨½µ¥±»·¶µÃ²³·º¾±ÃÀ¸¸®´´´£¤ ¬¡¨¨ª¢Â©¬¦ ½¡¤«««¦ X¦¡ ¸ª¦¶£²¢¡° ¢£¥®³«©¢¢¥¥¤cg\eaMJKKOFEAFK>=IA99JJN]QQI=LV\8FI=DMI8Hc\KCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+waS6SZkWsHE6=ue\LO ¡Ã§¥¢³ ²§ª££¬©¬»±©¬µ±ÈÃÁó¾ǼÄʽ°°¶®±µ¯Àŵº±°º¶©°©©¦¡¨Â¬±ª¢®°©¤§½·¦¶º½¯·Ã³³Â¿±Æ³º·«´¶®ª¢¦¢«¡§«¯¯¯»²¦©©¢¤¸¡¡£®¯«¤¥¡£§´§§´£¯¯ ¢ ¦¬°¥§¢
dh]hfKJLKSBC@IG;;F>89NMU^RSJ>O^]=HPBMLI8Nd]LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<w]^?[U_fr@8<HweA4¤Â¨£©± £´©²«¦¢¤²¬©»²°´´Æ¿Äĵ¿Ä¾ÊŶÀɵ«µ©±¸¬ÀÅ´¸®¶º¥«²«ª¡§»µ¨°®´²§ªº³§¹³¸²¸Àª¸²Â½´Å§¾®·µ©§¬¡¥¤¡¡¤®·²µ¶¨¤£ ·£¤¥®±²¥©¤¡¨¢¯²¢§¯¥«¦ ©©ª¢§¡zej]lkOQNNT=BANC;:I?77QN]_RVQAW`\BJSHVKH:Td]NFON[W[RPQX]GAB[PBG>NC9HGHNP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1\cZ33906p[bH05JqjVCWFyfC;¤¤¡¥¿¦¨®® ¨µª¸¯«¤ª´·±°¸·°·¸·Å½Ãǽ¼ÄÂÇÁ¹ÁÆÁºª¶¥»Á÷¸ª²¼£°²¦¨ª¹ª¡§°«¯´³ªª·µ¬»«³²¹·¬¸°Áº½¿¦Ãª°¶®©ª«¦ª¡¡ °®³«°¹©¦ ·©¥¢¢¯±³«±§« ¥ ¤´°¦ ©¤ ©©§ £~ljmbnnXQQZTACEU@;;H@7:XPd^PWWDY^^NLRO_LJ>Zd^NIQN[UYPKSWZI?DXPDF>N?=IGGQPB=CFBM?:2D?77547?=95E4+75/251.-.,1>*'+=\p=>1.1e[d@1747gYaF(@8m}h\V:{cC=¨¡©¼¡ª¯ª¢±·¨¥´²«¡µ½¯³¸¼»½·¶ÁÿÉĹÅÃÀÀ¹Å¾Á¸¯¶¨«·²¼¿¿´©¯²¸¬¨®¨©§»¥³«¢±°³¬ª¶³µ¼¯±µ¬°µ±¿ºÅ¶«¼¯±·¬¬©¢±¥¤¨£²ª³©ª³§ ¦¤´®§¡¬¬±§²«±©£¨¤ ©¶©¡ ¦¦£
{gmshps_GYfVDCNXDZ9HB5>]Qh\NZ]G[^]OMRXdJKC]c`PLMNXWXPJVVWL=EUJEDAM?AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,+%2+*5K1.'_^aV151=`V_8)C3YU\gK5zfL@¤¤¬¶£¬¨¤®µ©®³¸¦¦°¸Æ¶°·¿Âµ´ºÅ¾ÌŹÃÁºÀºÄ¸Á¹²µ¬ªº·»º¾µ«®±·¨«««««¾«¯±£ª±²®®µ±¸¶ª®±§µ¯´º¼É²ªµ´±´¯®¦ ³¨¬ ¤±¢ ¥¯¡¤¢¥¦²©¡¦±«ªµ¤®°´®£§¬¸¢¡ ¥££¡{
{loyou|aF`jZIHZ[={JGE6AbUi[M\aJ[\ZRSSbaLKE`a`PLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`Va.5(C^Q\.+A/JGP[G3cXTKE¯¨±©¬¥£®®µ©·³·£¬´·Êº´»»À¿µ³·ÄÀÌǼĽ·¿ÀÀ¸À½²½®¨º¹··Â·¬®²¹§®¬§¤²ª¯»¤¬²²¦§¢±³°²±´°·²©®«²¦¸¯µ³ÄŶ©µµ«°©§¢¶¦± ¤°§©©¢¥¥¤¶§¢°³«§±§¯µ¬¤¡¬¨ª¹¢¨£
¨¤¡w|nqxv|]Kel\JOd\?b{GI8GgWf[L^bMXYWUXTi]POHa]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANIg27'FaLV%-B.=ELQ<3rkLDD¤¤¬«¦£°²²ª·°µ«µºÉ¸®Á¼Ã·³±µÂÃÏÄÀ¾´½ÁÀ»¿¼´Ä¨«º±¶·¿½¯¬´´¡§±¥¦±¥²µ¬ª²±«¨¨´¹¬´²µ¬³¬ª«¨¬©¹±°Ç¿¸¤¹¯©¦§¬°¥¤£®£©¯¢¢¢£¬£ ¡©¦¥¸¤«³´¤ª«¨¬®¶®¢£¨ª ¤´£ ¢§ x~}}}rts~~\Rdn^NZg]FD[G:NmXbZMabNVVVWTYh^QRLdZ[TKGOTSNGIVS\N;P^JBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Ce;6*HdHJ+:I?3CIS,>k?HI©ª¡©¯¤§£³´°´µ±° «½Ìº®Á¼Ç±´®´ÂÃÑÄÅ¿Á²¾Ã¼¿¸½Å¨·´¹¼À°¬²®¡£§®ª§¥±£«±ª®ª°®®¬«²º§·±²©²©ª¥¥£º¬ª°Â¹´¬¹¨©¨©§°¥©¤¢®ª¨¢¢¬¥«¡§¨¡¬¦¢¬¬·°± ©¢ª°«¦§©£ ¨ ¡¥}w
utrvl_Y`ncQsr\K<|F?WuX`YOc\MUVUWQ\b_TOOhXWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*35>10485(5/*,.30;),,'%234$,2-860)(1<^K0.IgDF8<B05EKX1@]@MF¬§¡©±¨¨¯µ¬¸µ®©¤««½É»°¾¸Ã¯°²ÄÄÎÎÿ¿´ÁÄĺÁ´ÉĬ¯¸®³¹À¿´®®¬¦§©±©¦¨²¦´ª°±¯²¬³º¤¸³¬¬§«£°·«ª¹¶¤µµ£©¨¬¬ª¬ ¨¦§±±£¦¥¡¡«ª¡ ¥£¢ª£¬¢¦±·¬¬¢¥¢©ª©¡¥¤¤
¤£|{u~ux£xk^`ngWfdN@gLDbzWbXReUMVUUTO\]bVKNiWVVIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06XZ.0JgAA<<C+:JO^4DBIHD¯¤¢©¯©¨µª¶°ª¤«©©¼ÁÀ¸¹´¼µ¦²¯ÄÊËÑ¿Á»¸ÀÀºÁºÂÄ®±¶²´»Á¾³²¯¬¬¨·ª¦°«¸®§°°®±«µªµ¶§µ·«¬¤©ª£³³¨¨¤³´µ¡©¨«¨«¦««¨¹¶©ª©©¡©©¡ £¢¦¢ª¦´®§¥©¢£¥¦¦©¢££~
£t~xuzx~prggqx\atiO]VHmyUdVRbOLVTUQOX[bVHPjTVTGPYUI>IHOQPxMNV=<KD?@A<@CUC9AK=5;E13;97*4:=+-341*8**+*,)*(/*&)%3;,$2)2021%/2Rc02?f=NX?C,?LT_/Ik7RF;¯ ¥©¬ª¤®²´¯ª¥¯©©»¾»Á±°¹¢¶¯ÉÇÈÐÀ¿½º¼Ã½»ÃÁÀ¿¯²³²¶½¼Á±²³«³©¥µ¨¤¬³²¸¯¢´±¯±¹ª¸®ª¯·«ª©« £¡µ©¡¯²¡µª¨§ª£ª¡¡¬¨½¯«®¬¡§§«¯¢¢ ¨¦§©°¨¢¬¡¡¡¢¢¦¨¥|
¤
¡xt}txz{tt{j£vi^elug|RWp^KxsTdSQ_MMSZgNMWYeYGSjRQ>BNQaQ:IHLSIqQLS;<I?;<=;@@W<<>H73CB15:93-5::)-31--6)(+-,52#2)',%.;.&1.0-14%,0Mh:38_=ad?F1CP[[+HP;YC4±¤¥ª£¥£¬¦´³°©¤°§ª¸¾Á¼°¨¹ª§®°ÉÆÈнÀ¾¹¿¿½É¼Â¹±°µ²º¼¹À³´¼¹¬£µ¦§¬±¶¸²¦§ºµ´¼¯»¥µª©¯¤¥¬ª§ª²¤´©ª§ª¤©¢¨¨©½«³°©£ ®²¢¤¤¤¤§ª¥©¡ ¤¨©
}~
¢~rzx~|hw|{uqr~izd`hcr
{mgy]^VCX{mTaPRYKKMpt]IZ[gZEVgOC>KNDCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KI1%90%,,09/,,+6'17#-/GjI14X=fbAJ7GS`U*=<F\@*°©¤£¡ª¤¶²±¤©±§¹Á½¶°¤¹¬¨¨°ÃÉÈÌÁ·½¿µ¸ÁºÈ¶Ä¶´³µ²½¹º½¶®¹¶¿¢³¦ª«®µ·´©º»¨±¿²º ®´µ¨¬®±£¥§©£¤¯¦¯¡«©§¡©£¨ »§®±®¡ª¢£¬¦¡¢¢ª¢££¡¥¬z}£|yl}vyxb{zrpqsxjujgchansmbip`oB]ykV^NQQKIMSYVM\^mWEXaO^PHMDF;7HEKO<rhJK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*L>*49&'.34.0+/4&,:$40AhZ13S=e_DL6KVdN)=3R]=#¬¦£¡§£·¯¢¯°©«¹Âº³ ¹¯«§³ºÇÊÈ¿·Á¾¯´¾·Ä¶Ã²°º±²À¶»¾·ª¹¸½ª¤´¦¨ª¯¸°¨¸¼£¾´³¡®·´¦¦§°³ ¤¥§¡¤¬¨¨ ª¯§ ¦¢¨°¸£±¯¡«¡¤¦¦©¢©¦¨¡©}~|{¡y
}{sp|qst`yxjopqpjsdzlhedbf`[rjqMNiXZMQLKHPRQHM\_oTEYZRgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZgH*?0][5(¥¬¡¤¡·«°£³´©©ºÅ¶²® ¸®¬°µÅÇÀ¶¿Â¹°´½·¿»¾°¬¾°³¿²½Â¹ª»º¸§¨µ¨§«¯«³¯¥»¶¤«ºµ®°¸®©¥§¯²¡¤ ¤¤¡¯¦¡£¨¯¡ ¢£¤¡·°¡¦°««£¯ª¥¨£¥©¤¢¨¡z}yz
~
zzpqvnot_xwemlljjofrikfh^dt`[kviZJ^\XOOKHHRUG39]^lQEYUYeMHIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<"8R=*113>D5,-'42*;+139cm74GAf[HTDU]hD.<2dW,2¡¡ª¤¡¢ ·ª® »¸¥¬½Å³°®£µ°¬¬®´Ãü³¿º·±³¹¸º¸»¯®À³´¹°¿À¸½ºµ¥¢²©§©²ª±¿µ¤§µµ¨²¼¨§¥©¯¬£§¤¥¡±¥£¨©¢¤£¸¨¤§¦¥¡¨¨¢¡¡¡© £§¤yz
|z
{w~{ltqllsawuiijggohhicfii`jcjh\f{c`StT\[SLJGIOS@!*h^jMDWU^`KIGEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,?0-N?.+-7,1195,&.5-80576`tA3CDg[KWGU`hB379gP'2¢¤¤¦£´¬§ªº·§¬ÄÁ¶°¬£¶®§®®·¿¿¼²Á·°®²¶¶¸¶¶®ª½³®²±½¿·®¼»±¤¶ª¥¥³¨ªÀª§¥¯²©¬µ»¨©«±¥©¦¤¦¢¤©¡¡§µ¦¯ª®¡¡¡ ¦¡ ¥«¡¨x
v}
{s}}fxokjkfuskcgddvcefffjjcksZ_Z]mdaNiXZ`VJGHKMSX>9_liHCUT][IHFFA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=+*,0B*JK./*+3722(57$+7.72685]yN2>HiZLZJVbf@:3BhH%5£ ¬¡ ¤³±¢²½¶¡±Æ¼º±±¤¶¬ª®©¹¼»ºÀ²®®®¶®²¸³©¬¹±¯®³¶º¶°¸½¬¦µª ¯£©®¢¿ ±£®°®·µ®¢¦©¥§¥¥¢¨¬¯¥º§®¢¡¤¤¨©§¨¦{t
|
p~fymhkifqrk\hcctbfgjnlgjjhn]lltpaTcideZIFLMOYQPVaeUAVSYTFHFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24;6#3*)6.55465Z|]19Kj[M[KXdd@A1JfC'4¡°¡©±¯¹¿µ ´Â»½º±¦¶¯¨¥·¸··»®¬ª«¶ª³¸¦³µ²®©°¶¶±³µº¦©µ¨¨¡¨¬§½¬£®¯µµ¬¬±¯©¢¢«¨¦¤ª¢¤¤ªª©»§¤ ¡k¢p£u©§¡xmi~vql}
p^cag
ktw~gguheW\hsnNPjcgs
h_efnmj]`afNKD9GTg^JGPPUULHRaotfF[QUPFHEC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,+08=G601.*.*/568,#1'214:175Xl16Ok[N\K[fb>G1Qd=*.£
° ªª£½Å¯©¸Â¸½¼§¶°¥«£·³²³±¹©¦¬´¦¯µ¢©¸¶¶¨§¬¶²®´³¡©³ª¡£¥¦«¹¥¥¯³·®¥©ª¬¥¡ §¦ ¥¥§§§©£µ¯£¢¢£ ¥¥ªrx
¡vif}rx o~}¡ |tullheczlqaS
mbliqXjqpY^i[ll[qnzr
gZ^GN?G_MERVVQQRWUg^MWIRRPFGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82).1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Wa70(¦«ªª§ª¿Ã¯±º½·À¾ª¥·°©¬¥²´®¯³·ª©¥°¥´³µ¶µ¦§¨³°²§®ª ²¨¢¢¡¡³£¤¥µ¼¦¬§«ª¬¨¥¡ ¦£¥£¤¤©££¤¦¡·£¤ £¯©¡
±£¬yÔ¨ÁÇyx±¥·dÀ¿yy|Êq¼Åzrµ¦»{l±«°xhkX±®nei¼¼ngzorØ~Skc¶²rt¡ªWOWbPVNFU[XQPR\W\PA]DQNEGI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww21Tk\O[M^g\>L1[]41!¦§ª¥¬²¨±Â½²µ¿µ·¾Áª§³¬¬©§®³©¯¶´§§¥´¥§¸¯³²¶«¥¤§±®®°¦ª§¤°£¡«¢³º¢ª©¡®¥¡¡§§ §§§¡¦¡¡°¢£
¯kjª~fdp¥q®¡¤~x»}k¡v±_j´[¥e`f{fjxk©d¾rg¦u±j|±xtcmm§n[ EhfEu`~h|¤§Y_«ixyj§7J¯\XSld[KNX_\WV;NPWW/ITSJDEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:5/'$203B/=;Uv2-Vj\OYL_gY:M5_Y30¢¬¨¥£¤ª±·¬µ½¿°¶Ä²·ºÁ¦©°«®¨©°®£°º¯£¤²£¨¸¨³³°£¥ ª¯¬¯¦§£¢°¢«¥¡³³¡«¢ ¡¨£¡¦¤¢¡ª¦¦¡
µµx
©µv³·~¨~k¦{w«gk±[«ztrx °vwqkkl|N¤XHbb~ch¦`ysvS^P©mcq~b.Q¡o[Skh`LK[dX\ZB?²yXXA#MhFCDA@A19>88:84;:9<9:A:E::;6:CB8=?KNG:5:AFB@AD<FD;0201;F,0.940,.(/3,>831/2-D1<<S}n3+Xj\OXM_gX7J8aU50³¦¦ ¯©§²¬ª»¶Â°»Â¸¶¿ª¬¦±©¡®¼ª §´¬£«µ¥¦²³§¤¢§ª²¨°§¥®¬ ¤¨´®¡©©¨ª ¤§¢ £¤£¢¨¥¢ Õ¹p°Á~Å|Ö»|¤¤{£¥z¬yV¯z~j¹[ºw}¦|z©x{±nt¼
oP¯§ÅQ zc`©bssm`Sµ´È|c¤3Bv]PjidP@XgZdaJHNnN\ROYfYCD?E?0=<59;74<;8=:<C:F:;>6:@C;6@OLH<:;DHCBCD<EF81211DC./0483+-).323971#%5*>3==Qwj6*Yi[K]O_fT7G:aQ71%¢²¨¨¥´ª¥´©¤¼·Â°¹À±µ´º³µ§±°¢°²¦¶¨§¹£¯± ³´°¡¤§©°¨´¨¤ª ©§°¨¢¬¢¨¡¥¡¡¡¡¡¡¢¦¡¦§ ²nhµq«n¦r´sr¶{££¡¥~°vÒÒv\®{
¤oª¦k
}}{°rx³etofRÈZÂ\yb_`vtb^YÊo¿uMKµSUÆdTQjcfXAOk`lhPUHI9=VRZWXIC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>HI91746@>/.24252-).26,742&60;5:=Pqh9'Wi\BOT_eP5G=aM620¡¥°£ª¼¦´¦§¶»¼²º¿·¶³¹¹²¥´³¡±±¢«°¤¦¹¤±°´¸ª ¦¡©¤±¨¬©¤¨¡¦¥ª°¦¡¥ ¤¦¥¦¡¢ ¡¥¢
¬{w¨v£©o§ ¢®
³\r³R®}¤rØ~x~v¯w´aelZ°XKuyf`^vwhk]¯wxl5yÈ®²_BTo^g`EPm_pmVVN.ediSXQ;AD@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@>V_cN6GC`I:99 ¹°´Â¨³¨©²º·³¸¾¹·±´»µ¤¸²´¬¨¬§µ«¨±±«´¤© ¨¡µ¦¦©¢¤¡¢¤¦¯¦ ©¢¡¨¤ ¥¨¤¬¡ ¡ ¦©}}¥x¡ªp§ £ª|xo±Z¨ ytÙwt¨¤|{²^d ~l\«[Zhgªdr{ks]¬Z koeOJC¡\[Lt]bgM[a_rs_KV6JXGE=GFAM35A8.;>05A78@<6=<F?:<6?=B7.HVJEAH6KIN@IK@EN::@4.;>102144+*05/7,&21($$6671<PeeA&Uf[?2U_bL7FI_C2?8¢¿«´Â®«©¥´°·±µ¾¹¹²°¶º¨»´°¤¤§§ª°©¯©µ¬ª¯¡¡ ¦¤¤¹¢£« ¡¨°¯¦¨¦£¨ª¦©§ ££¡¢¡¡«®mr´s©u§s´xs³¤£¤w¸o{¢jk¶Z¡
ei ¢§nr´t²j
ku³af¢oj\_M¡|Rs£ly~oq\¯V<wfTon.\§OcSkebmZc]ap{cTZQ>>mo3CB@?L9!7@6.;@37C58??3;<CDBJFMIF62JTKEBI6IJP?HNCFP=<E50;;010/75,+,426/#00,,289/9N`eD'UdY>/U^aL5FM^81C8¦»¡²À®«¬§·©¸¯µÀ´»¯®·¶«Àµ¨© ¥¤¡ª©§µ£²§®ª § ¤«¹£¤¢ ª¶°§¬©¥¥¬¢ª²£¦«°¡£¢ ¡©«Ô»s°ÃÃ~Õ¸x§z£¶u}wv²`ºyÀ|u¸cµ©}¬©q{t¼§ ia¦¯¢~tª}¾os¼t²uxnqn¤t½^w}Zay¼kZV\jy^jaegbmxoY[YDA@s@CF+5G"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7A9§¢¼¡²Ã°¬ª««±§¸¯¶Ä°¹°¹®À±«£¢£¡©£ª²¤µ¦¥ª¦¬¹£ ¥¢®¹²¬£§§¤¤¬ ¨«¨£³£¥§¡¢£¯ ©¶·xµwmknsoy
tÁ»½{±¨ps¹|||¤»¹½uz´£tvvt°ufjµtrqw¶^z}hynyb¬pu
X[§jEeZTf`c^cQhgqmuBNPMD;ZM?J3;0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7LT_G'SbW8*O^]=+:VV'>;<§ ¢¿¥´Ã´¬«¨¬«©º®°Å®´²¶¦´¸¬©¡¡¥ «¤ª¦µ§§ £¬¤¾¦¡ª¡¡§¡±µ·¤¤¢¥¥ª¨¥¥¡¨¥§¤©¡£¯¨¦¡j}i¦xr}tyd{½¾ÀºorasjZ^ack`cmwbke^`cphr}
gj~rtx}~b[wthP\n}|kXlzrJJopNtLEW]gaLZXgc_O[nuirRPDEN;HI=M?2,2A?8/5?C<9;@;=C>RVVWYZ[\\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7JR_I'S`V4)P_L(3>[O'?2>© ¨¢Á¢µºµ£¬¥®§§µ±¬È«¯²ª´¢½±±¦ ¢¨¢¬¦¯¤¤µ©¥¡¦¨¾§¨¥¤¨¨¯²¿¬§§¢©¨£¬ ££§¬£ «£±§ °¥¡§¢£¥¡gm}qw
µª ¡ z¥lj||uqxyvv|jsuuew}wkozm`c]phMXZfj`WZpznmfTOFS9OZMRO(+:KB635=@A9:C><ENSSTVWXYZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J&R^S10T^:+=8\K,<-@³¡³¢À¡¤²²· ª¦²§¥°´ªÈª¬°¤´¥À§³ ¤¤£ ª§¬££¶«ª¥Á«£¡¡§¨§²Ä¯«ª§ª¡¢¤¯§¢¥¨®§ ¯ ¡¦ ¢ ®|ª©
z£f¡³¯
v{}vyzofykuyris{vkudyf`jecdfkYl{pij\SLPD^TF@?>,4@F;45;>A;<?>>HNNOPSUVVXZ\_aca_^^]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMMD/T]Q05M[17E4[G5<,@´ º¯¿«®²² «¦±¢¬³¯Ä¯ª«¢²¼£³¦¢¡¨¥©¦¤¥²´°¥®¾ ¬¢¡¨ª«¢³È³ª¤ª¦¨£« ©¯ª¦¤¬¢® ¤¯£§£§e|e~cymik{¤ªjd}geeih{¡lh£wkj£slnzzXe^^mv\hswwnwxsmytv|jY^lud^sik|qkc^RNXIdXAJ4>G7?FD71<=?AD;;DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AJ[J/7ZO6)EY/DO2YC;?.=¥º¼º¯¬´±ª¥¨°¦°¼°©¦£®°¬ £¢¦ª£¥¨©²£¢¯¥¶¹¥£¡¤{¥¢¨´Ä¸¥¢§¯¢£¢©©¡ ª°«¬¤« ª§§ «¡¥°¤ª £©}½r´rhx¹Ä¸q¢£z¥s«|ËÀÀ»q¢}À½ÂÁ|{ÃÀ}k¥²noÊzwvyyqzpw
ynxcf_yd`ec^thldcXLWIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>I[L*#BP.#F[3PY/VAB;/8£¹Ãµ°°À©¨£¯©°®¦³´¯©¥¥¦°««¢ª§¢¬¢¥¨¤¤´¤¢¦«·³§®¢¥ ¦¬¤«ÀÀ± ©¯©¡¡£ª¤ ¡¯ª§¤¤§¡¦¥¨¤¨©©« ¤ ¢~Îxz¤y_®^§¢ |§s«¯^cª{§
u³c«¡³j®t}·aY£Ímu{Ú{p~v~e{vvk|n}
marlph``yd\qhjdg`RTSW]KOC5AHDD8>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-K0';\;L-!P@F4.1ÂÀ¿µ´°¸£ª¨³«¦²¬¬ª¢ª§¯© §¤¢¯ ¨§£¥¡°¬§®¬°ª¨¬¤¤§£®¥«°¨¿Ç³¨©±®¢©ª °¨¬ª¨¨¤¢«¬²¥¢ªª£¦¤¡¯¦ q
u
¨q±}r¬~¡¥wª}s~ªv{|~ª¢~«z{VÄzoÁ}muomeveoawnronfpuuqagme_oiingdXS]aZRSC9II@D<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1' '45-&7=WJ-<'>1)3V@F!G:C1.+°ÓÆƲ´ £££¢¬¯¶®¨°¦¨ª¦««¦¡¤¡ ¥«¢¥ ¨¨¢°¬©§®¬¨§¨£¡ ¬¦¢¯¬¤¬µª¹Í²¦¬¢¬ ©²ª«ª¬«¤£¬¯±¢¨«®¥¥ª¨©°¡¢¤¤j¤uz©tz²p¦q ¤``R«®v§z{f£¤£}©~®_}©U¢z¢{ïÅr¯³³¹qb©¯Âthmqnzxypmgeerpf|ic]W`jXYULLQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ('"+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÃÉÕÕ¿¡«§ ¯¢°´°®©¬¢§¦¨ª«©¤¦¤¦§§£¬¢¬¡£¯¢«¤µ¯® ¨¦¢¢¨ ¥°¦¤¨±¬¶È²µª«©¡¤³¡§¬¬¥¯ª£¢ª¡³¡ª³°¡¨§®®´¢¢¦{ªlu«y|°o¤Ò¸´¸É²_`©¤ zxªÉt£¨©ÆÇxf¡¥s}¯]p´b°uK£m§Gd|qq|u~|n\fjsqfk^aYdm\_YINLKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75685/)(%&%$&),4ENPPMFKJVF*L0/=-5OTQ;<F2,$§¤ÀƸ¨²¬¥¢²¸¬ª ¥¨¥ª«©¦¦¦ª£®«¦ ¬©¥§µ¢©ª¶²¥ ¥¬§¢ ©¦®¡¤§©°µÃ²²©¬¨¥¡£®¥¡¥¦¬°®©§¬£·¬¡±¸¯®¦²²²£¦¢Nxz£}¤¦¸{{y¹Ìƶx¡~v¥¤¨°
¬}b¥l¤p}r¬`£sq`¼}RUt£{~v|sq\nnxrjo[d_inbd^LLQTAIHFI:9K>B108866877-*5==?BDGILNPTVXYZ[\__^]__\ZZZYUSOH@882.,*.+*'&?QTVWWWYXXWUOUF<E3:P[T6?H,- ©«¤«¹ª¯ ¡¬²³¥ ¥®®«§¦¦£§¡³¯¢©§² ©¤¢µ¢¢¡©´¸¤¢£¡±¦¤¡¢¯®¥¨¢¶²Ä±©©§¢¤¥¦¤ª°¢¯¥¦¯¤»¬¡¶¶´±·°±¥®¢
ѵ÷y
¦x¡w ¥qª
´nrj£|s¯¥¢¦mp²]¥szk{|m©a£qqbs²¸hw¦}y~ynjyiyrou^eeomfg`J[XX<HH@U4@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^__][ZZXURRQF:2230/++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH$)%s¿¿¼º´§¥µ¡¢£¨¦®«¬¦¢¦ ¶§£©§±£¬£¤£ª³³¤¤©¦£§µ¢ª¤¶«Ã°©ª©¡¢ ¦£§¥§¨¯£¥¦½¬½°¬¡¯²¹ª²¥¨°¢¦y¨}|°w¤¥m²o |¡§¬
®
ª ¡{~««xy¯^£}¦§c|sj¯]¥kp
]`[ m¦||knctnz`geqnhghCZa[>KU3U8BBC7$$3+''3, /6674359@CFIKMNQSSSVZ]_a`aaa]][ZXSPONI8052.*,ATVVVTTUUUUTTUTSTVWWXVUUQHFIJ#((½©Æ¶Á´¬ ¸¥£¤£°°ª¤¹ £« ¯©®¡«¨¤®°¬¦¦¬¬¡ ¥¡¤®¡¨¦¶©À¯¥©£¦¦¥¥ª¬¤¥ª¨¾¤Â«©¢ «²¸©¥²§¨v¯~
}ºe±e} ¦¬°
¦¤¡¡
[lj³`{{±mgo±[}´\¤kÈ¢d{¼XvµY²}R®z¬X¡m§|zeuc
xt|ajgqmgefOVd\AU_>I(>:=4!",%2. *1/04579:<ACFHJLNPQRTWZ^```ab^_\[XUPNJFC553./@UZXWXWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³±·½º³Á³£¬¦¤¶¨ ³´©£ µ ´¨ª¬¯¬¯©¢¯¬¨§¡¦®¨¡¤££¦ ¢©²©½¯¥¨} © ¢©®¨¦¦¢¥©» Ʀ¤¨ ª´´«¥º¬««©£¯¤¸Ãº§¬¯§¦ª~սªb£¿½}~£×º¸µ
½¾k¢o«lz²°Çi«°½¬xw¢¾¼s¦{{d~|egy{alekjcPa[Sj\?UbCN)=:4/$%2 $(0496678:>ACFGJKMNNQTW]a\__a^`[\YTQMHC?=A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ¼³³±¿¹²½²¡®¦¥²¦¥¿ª¸²¨¢¿§§²±º¨¯¦§°¬®¥¢¬ £ª ¢¦§¡¨¢¡¬©¹¨£|¦©¡ª©¡ª§ £ª»¨Å¢ ®£©³³©®¨¹¦suª¤·d ph®nnw¤u®pq¨£®¤rmllfxonqzjqigqiifpd]bjoY\f}v¦_aqnee¡¡~wgxikzyelcflbKdXJlZ:PeER'K:+# ",)-2.5:4579<?ABDEHKLMOQSV\WZ\``a]][TPLHD=:AB7MXZZYYZYXXYXWWVWY\^^]\\\]^]^][[UW^©¬³©¹¸²³ª©¡®£²©¾²Äɾ·ªÀ¬¤¡§¬ º£¤®¬®§®©
¦ª ££ ¤¦¨£ª ¦¦§°º«¬{¥¨ ©£±¦¢«¹¯Á§£²¥«¯°©¬ª¦¶¢¬¶ ¨¥¶£ª©²£ª ²¢¡¢¡¥¡«§
¤}g~tusp§lz¡£sjwqxw|zjmdcodUaY@j\HcaOY+F=+'!750.!%2(*699469;>?ABDEJKKMPPQXUVY^`ac]^UQJED>9=@ASX[\YWXXXXXYXXZ[\\^__`^^^__```_YY`¦¨ª¥´¶®®¡¯£ µ±¬Ç¾Æ»¹«£¥¦±©¤·§©µ§¨¢§¬¤§£§¨¦¡¤§¡¶»¨«|¡¦ª¶£§«·§®Á£¶¥®¯¯«¨¨²· »¥¤¦¶¢§ ª £¬¯ £¯¨¯£ £ª«¡ª
}f
uuxsj
|¢£
|sszs|jod^pj`[`YndP`ePZ:GGE>2=>9/*&+)&&416668:==?AACIJGJKLMSSSUZ``i`eVPJACB:9EMV[^^[Z\[[[\]]__]^_`aabaaa`bbbdb\[c£§£¯²¬®£©¦§µª¥µ¼°¢£{£²¤¥±©¹¦£ª¢®¢¨ ©¨©©º¶¤¥y£©¸£¯µ¢¯¯t£½£±wy©°¹u¬£ªd\bv ¥}m³£§ª¢esyp¨m¢¨e¥wjvp{
`hZughs{§fzyjoykre_vplkh[gfbbpS\>NNNSG>@UD91/&4:306678<;>@AAFHBGFIKMSTUY]`hfgWQJ<DG<8UR[`ab`^__`aa_\]__`aabcdabaaedchd^]f¦£ ®°¬«©¥¨®¢¦¤«¶±²§«§¬t°¨«§¹ ¤¬¢§¡u¦©¤»´§ tw ¡§²µ³»¦ ~§¢z¡µ¥±ª¯¤z¬¡§¨§
w¥z§{²z bympyp~
s
xgt u}¢
klx{qqgdxojlk[eljet\^ITLR@E5.ZUU7)!09=>743568;:=>>@DI?IEJKGSX[Y[aahfYQH9EL<>bV^bdfd`aa`bb_]`aabbbcfgcba`edcgcaah£¦¬«¨¬¨°¦¦©¥¯È¿±¢¨©µ¬§¢ ¾ |¬¢¡§¢¤º²§
pu¡¥«´´Ê©·
°¯¬¨¦}¨r{w§h¤y´¦§Â«¡r¥}
²¡}¡ |
mr
~yq{tÅf©£k£q
hwt|xhhvqhhl^dpmgmXgG]RM2D46Nbd7&3<EGD:64658;8>==?BM?NIJLCPZ]\Wa^il\QE=LM@JdX]cfhgbbbbcc`_babccceiicbbbecafcbbi¢ °§¨¨¥«£·°©ª¦ £¤«¤¦«¸£°¡¨¥¼¡y«¢
w¥£¹¤~bm ¡¡¡§~¡§
ª
£©£ukvM«x¨§©«}¡{z§ikg
·~n`dY{dhr}yl]|m_Sp\_kx_Xd|p§ªk£nr¥p
jf m[o}gZ`bWPowfmtskjo^kqmkiXiO^XF9A4HD_k4,ICRMN=84859;6@;;>BO>QRLMBJ\]_W^^bu`MD:MONTb\\ffiibbdbddbab`bdcacikdbddgdbgeach ¸ ©£¦¬ ¶»«¢¡¢¥®¡¯µ£¨¡ §´u§
«¤©¦±§¡in£ ¡¤£¡ w§¡¦¨«¥x|~¢ps|ym¨{¢sv¦f~w¤_z}t¢n·´ºtµ¨dƸ{p¶q¤bs¬«`|i³~m|q£lr£t
¤`³q}³us[²jcotvqhoXkmsrf\i^cLD=D6QBZr3=SG_JR=<395::6D;;@JP?UMNQ@E_^[ZX``|dHC8LWUWc`Zefkkbbeadc`ab`dd_`cknccddhdbgfchh£·« ¤·´ ¢¤£¦®²®¬¡¡¤«x
q¡}§ £©¨¥~j{} w¢r¡©¥¦©}~z z£xt}¥¢d¡|lhnz§}rht«tªh]
vgªj¸f\¨p`^§vu~ht
on§]¨~x»k~ª\]´g\nrzxki\qkyyc_fXbBQFO7WCRo5K[Z_OZD@151;;6H?:CHU>YRY]>Db^V`Qac}jEB9N[^YefXfgnmbbe_aa__``ec^bdoq`deekecihgki©µ§c«¹±¯¬¦© ¯±©¤¡ ¡¤jr{z£©£ iy{¢ ¡rhp©¡¥¦{°£¢¸w£³¢¤y{ª¢q¡|
¯µ}k¡x~´¢£«¨|}tªZ]o{xbL~{z
cyBLX¢jq{lux±³§wns}ptk¤]vHed`tq~~nf`liv{ddaQ_W]UW@YFQhDSW\bX^ID=B8?B:IF8LEXAWR[VDFb\Z`K`m~rEC<U_bZfjVghmobfg^aa\]^ahb_ecvm]egfkdflihki°S^ ¦³¹²²©¢¬ª¢¬¤¢¨ ¡woy
|r s¡
©|lq¡x|£ ¢}µ{¥z©|§hwm~t¡sq|p®}¤¦¤o^¨gu¢co¥aÓ|{xrsc¢~£s¤uk³`sª²§¼wm~¾¦©´]n|pmr¢r]¤gs¦`h¦mÔ}pz{l|xsn©¤g`ezqkgfdouwg`cS\fQQbIWJTaWS[ej[eQFCKMJKBKE8O@QNXSYOSQaeejRcwywIFEc]eZhjTihjocjg`c`\]]_hbahe|d^dgdkdjmghlh°«T\K~©¯±´¯³£
© ¡¤¥© ª¡{p}h}wo
l|¥ª
yvnw¢z£¤³¡¢¶z¬§¤®¥p©
{¤¡r£®¯¤ v´µµÉ¡s`©my t¢w ~oLf£ps¤{ztak~ kqd_q}shyi³µ´Æ¦s}zk«v
mvxj{urPE}´_jvkyfjgcuupnV^TYiPRhIVMYTV]hknVgWNKAJMKHJOAQKPecjmetss~y|nu{{TPOl^i\kiRjhilglfce`\]]^ibdik{_]dhcjfnmeile¡®¦e?¡²ª®¯µ¢¢ª¢£¥¥§¦zjye yui
z¦©z}yp¡z ¥¨fnxl¢d|q¥wpg¦z¤zrv¹n¢b} mriªku mo¦_iit¢}`uobh e~iuocfmq¢Z_[b¡m]nz}srd¥mx¢dg§hsp¢oUo _f¨T^TnmskrmpilyskoRYWWgZSmIYO]IXiisjYkVQREV\LXSaUik_wt{}p}|r{svv^QrbgcpgPjhhklnhdg_]^]`jcjivu]\cicjjsmfkmc¤¥zdtm§®£©°±¦«¦£¢£¢{qh|st}|d|¨¢¬~si¦} ©¦¦x~¥²¯¥vx©s¥n¤¢»n}¥¯
|¥zr¨ f~o¬cw©l©¢vwª¦j°kv³©kmm`~«ªv~~¥v|¤ jx¬h¶tw¾¤Y¦«aurtq|uqckohlSW[Vab]kM]R]J^mnw_[qY\`[ftenorbqt`wz~yrys{{vbxdcnrdRkgholrjfia`^\bkbmlzo\\bibljxmglnb¥ª£©ª¨¦®¤¬¥¥©
tzp
~tt
rm}{¦¦¦
vol©«£ u~y®£qw}{r§q}}zy{~v {}k
[yyrzqin~quqe^wtrunynml
^ugwe
¨}t{jpv}wnmgsy|x
\kXyinxrroxxp]knjgV[`W\fkdVbU_Q_pxylkvfjkkv}qrusaoubt{xuzux
}{mldyn^Wnghukxjije\`Zcjemqtn[[bldllynhloa¸¨¦ ¢¦¤¥«¢¡¡§©r|}~
{trp
{|
y~¥|§¡
wrª¨ ª~~¨¦woxn~¨
p}qkp} hm]sqtkvtYrn~~j]jd{
`iwz{u
gw
japqu^q¥
enwqzqghe|z[\jgnv[{yxunssg\mkkbZZ_ZYlq\_aZ_]ft~{uptckkk|}s|xudmuhm|~vz|{yz~o{}s~yshT\qiluougkhd]aXkhlkqrmW[enlgszohjm`ª° ¢¡¨£¢~® ¢¥{
}s}v
qor}z
¡¦¢xz¡«¡¢££ª¡§¦zv§~²¦²¥k|wxe|w|yt ~}uor}w¥
}ym
}zkrhatq~zwwpwt]^ohn_^Z]]ThrVd\\blhu{|sopdkki|nyrjpplg{rx}{m|yx{}zxNdvjrmpzekecb`[tfpfrqmU]ltmiyzqgikd¹¢ ¤ |¬ }x{nyr~mk~z}
«r}{ª¥¢
¦¥u{¤z|«¡ª~owqu`~u~
nxut¡
s{|rqzzw¦
w~pl|nhlmh_zi}|vuvu{w\_p~nu`c[]^RgnTe[^bkivz~qlmdkjglslluoyp
ynv~
vq~{z|{`i|juhidjc`i\cuhobumlUcqyepz{sejmm·¡£{x§¥yz
|n|ys
~}jh}|}}¨p ¡
}¨x£ £¡¤}w~|¥¡¢¦~~ttpwa}q|q
hwqx}qz|pwzyy¥z
v|gs}y{qlkg_~sh|uvt}sj^`tvpwdcY_^RkiUeY_ahjvyqgkdmhfkn}hoql~xzls~tv|z}irnsiahlb_qVtomm`xhmWjtvcuz{rbjoz²¥¥ |v¥¡£y{~r{tv
~xgc}x}y ~p¦¦
w ¡y¤xw}s£¢¢~|vq}n{d|
pleun{
|w{
{zq}wx¡vw|xazy~txgmeajjwstu}q|bc`tnurmaZa^[leRcY`ahkvyqbjcmeh}lhthnpi}ymqt|}z~|mvttmeljbbvVipn`xglbjvpfy|zq`rl
®¦¨~xªzy|}||xtyzs}d_}~t}~}
¤¢s{¦¡s¦rkzo¤|zqykul{~~m
xp}~dqi{~sx
|uw|{£xt}tv
pa|vzq}obocd|cnovsxwstav`olumo\\_^^j^P]Ycahnt{k`ifjciwnflijmh}{wos}t{}z}|rzxxnljh_ircgqoewgnlayik}{xpaxmª £¨~x¯}w~{|{wxput|o}|a\~szz¦}}¤m¢¡mf
zp£}{
srukpnu|tnqu{{dply|}ssxn|
{§z{}
w~qpehyuup|b_pakt^qj{yylspex]nlsmrXZ__akZPWXecgqqf]jigbgqodigeihzwuo
t{u
x
|x
zw{{rxjk`phtkromrgole|cnzwqlww~¢¡¨ ¦v«¡t|v
xyss{kspzmvoq[Y~vu ¡x
m¡
i¢e~w~||nuplmop{
isqwuxfrnu{yyusozy
¢{uwynl^susqpyZ_qapk^pj}{qmmjlv`oojqmYXa`anXQTZfgcupb]kndbfkn`gf`gkurspuxuy
ww
|{wjqc|c|nqmtjholvx_qy|uut~¤¦
v zrxtpr
tqvlpmvmv~nmUQ«xwrz¡x{¤|r
}hg
qw{z||kvjnkll{az~vzx|yfsks~
zpyouyy||zv|wpjl{`yqnmstV^pbra`lnzqhpffsthqkawe]Vf``rSQN\fe]yp|_\irbbefj_he[gp}plqt}v|
uu~z{
xs
~|yxfrj`}ookz`jntu_t}yxts
}x °¥
wtwtpp
tprokiwnn}}nusRMßÈÖ{puu w{s
¡~wz~yvfk¢cqz{y
|~l{erokkzy[yz}~zzgrjr
|k}~m}
|y|uwxrmgq
nkuphjunT_pepZ`lrxgkkbfxrppc_w``Vk_^vPNKagc]zpt\\ev`aeedagbXissnkrw}tzuv~szr|~vesn}e~oplYlnyysav{{vrwwy®
w~}
twpyqoomoseeyq}mz}jhkc¤ÁÜ®ð¡rlvv
£o¡r
£
~zuxvum
|¢
^
m{}
v
}}k}dxujnysWz
y~
~xeri~kum}x~trwusqgvzcunqbjwhRaqgkV_otzard_h}prnZcr`bVnY\xNMLdga^wsn\\dy^_de
`cc_Yjrknksw~twxw{q|~{t~sguqym{ntqWqzvyrdwyivr§£
}qxy
¡|{rwptjpljm|u_axw{qu|h`d|ëÚµÉÃÜrltvjq
|{
vxru}n¡aj}}q~qwhvritwkZ|
}uarj~~|mkw
{|~npyukqlsy`ujo]kw`RerhfS`pvtap`]hqsjWghbiXmV[uLKLfg^brs
j[\ey^^dg{ad_]Ykneojtx~ss~{vzs
|vv{ulwuyxtnxz}Xzqogywdv
p
¡¢torw~| xrtnodrifmxx\_y{{qqjafaÕ¶¦xnqw|qk{i||}ztz{qu
u
~b
g}~~m|tkmwutwvkc
~|
~o_qo{{~ypey
z|~nny~umnkl{~diljYnwZRjsibQcsxlbe^Zjnsa[g_dl_nU[pNHOge\gnqlZ[cs`\clwde]]Zllcmjswqp{}txx
|uy|vpxy{on|w^tmizssgs|r vvmw~}v~vqpljau|gbjuzZ`x|zmqecggW_qs¼Äwqstk{|}|u
vv}quqszf}r~g}{y}i}vfoyxswslj
xj]pwz}
{}qhxwz}mkz|vtoih}we]qcXptSToshbNhtxfa^]XoosYeb]jm`pOYlRDTgaZlnm{oY[^lcZcpvdg\]`ljcliswqn~{tuz|
v~xtsyy~oo{qiyz~nm|vkjxtk
o~vjyzozspljd`t{i`er{[as}zgpzaed±²wKbZ¥ÚÑr{y
olzy|xxoqt}{jy¥
~n~uw
p{}oxh
xr|e|~vcpshyqou{vxyj[o|r}
zqmp
qwwmm}vzehj~raZx[YrnNXrsf`Kmwub^[[Yu}roWg]fjp_oNWiR?Yg_Zpkgyq[[YkeYcqy_h]^elhfliqxom}up{v
qq{|zyukzko~t}or|{poyf¡
gpgz~
|ixrkkf_aoym_boy]dlz`qv_deÕë¾2:>ryw
nl
u}
|xnv
wnku{uey§}msux~{x
lri~xm|{xbyqdqh~muqu
~su}rnZk|sx{|wypkqw~~tmjvuu\iixqZW~SZreL[srf[Jqxp^[[Y\uuiYb[genbiLWfQ=^f]]vf_uq[YUodZeqy[h^`gmgjkipx}mjyn{}zu
pnw~{{i{}kt|r{sw}zx~|kl~kh{~}kuqgic[cgso`altahpzast^bc n\5Z¯µuj~wuwpl
tyx}y~rgv~}op}hvynez
¥}m}u~{|q|~
|i~mk{zjzvr`w~qdrgumu{}owy{t}lWm}uswuzwrmq}{|znmimtn]hftrR\|N\q\O\sodVKsykXYYZ`qua]]agdhhfNZhNAad\`va\umXXSta[eosWj_bhkgmlipw|lh}|p~~|zwr{oqw{j~{nxyww}x~~zm£
{vykm
y}{}prpbf^Yg_pp`ahpfjotato[`djv{¾§¤È¸r
s}ytrsp{sutwyypcwyirufwvcj|}q~sx~w{lyyvhzilysizv}h`x}jjsh{jv~z}~q{v{s}aUu{qs{pwwoo}|w|{tuhqhlrp]hctoKfvL^oUTYsnbQOtybSXX\aps[a\hedcjdQ[qIDdb\cq^\xhUWVw^\fniVl^ajgennhpwzniy}r{~y|v}pvsmw~q|xyztxzuo}~{w|huz|vgpn_d\XfYmsaaaqllhn`siX^cmw©Ù©Ç³rypv}zutu~wopn
txtl`zyeqogun[m}y}wzl
t~r
{muvnhwem|vmjwv|`bxzhuuc~{gu|tuqz|l~YVr|ot~wksxjt|y{wzq|rgtdmmt[k`vfIooL[cXWVxmbPSuvYQVX]`ro\`cmdc]nbT]rGBf_^fi]Z{cRV\u[[gkaVk``nfflqhpvxtkuvx}w{t}oququ~{wx|}
x|}~{~svx{wuz^~ytwzbnl[b[[aUjtd`[hopfraqfW\ck|Êι¢knnmr
r~
{
zytyuu{jlvcvvog_|yeqjjqcXl{rv}{mpp
{yrrp~ghrcnxqjlqw}|z]ezwiuyfvgt}rjo~xm{\Xp}ls~{mnpvfv~~uzpys
{xqer`mksXk_y]IplNWV_TU|kbOTvsQRTV]bti\`kjfbYnaXcpGAh]`f_\V|^OVepY[jh]Xga_rfkhqgqswynt{w~yus
pp{xwuyz|u~}~~}|xvyv~}nuydso
zudnjY_[]]Uhse`YdrrgrakdWZ_ix¾®z·nbtit|rz{~wwswo{vejo`usjb^~xxep}hkkZVox¤
qqwtlr
}yusoiyajmamvjgkkywzw[g~|xes~ntfvofkztltb[mzjszzet}mpgt~w|~pzjyzxwoelal}lnVkaxVLklOROiNY}gbOUvlMQTU^fvg^aphgaWi]\kiJDkZbdVXUyZNWnjY]le]Zec^ufmdrfsptxp
vx|
}utnsy{{ss
y}v}{~{w|wvzjv~|lrq
~pflgW][\[Tepe_XcruiupdebW[[hporsdeyjtvtt
xzwsunkzpahkgtmf^_|oz}hmwfjdVWrp§}|vs{r{ylzzv{}uqsmhu]mi_mudgfizo{rYgvuhpxvbw
|njm{pere_kxfquz}auvikqtzoxwq{e}~~wunceal|mkVjcrTLjkPLNpH^{fbNVueKOSW`kw~f]gsie_VbWbp]KKkXdaUTUsVMYveZ_l`\[ce_wgmbpitoq~utwxz}v~
nrt|ztq
zut}
|~z~v{£¥y
lu}{uzo
sz
}unjieV][[ZScne[Xbt{jhmh`aW_Ziiloglaizzktuto{}vunzhjyj_eniwgeXbwi~ynioff]UXoh¨wz|xuo}nrtx~wt
vjsvhio\me^ns_gbjxh{m[mstjo~ywav
x
sqoyqbph[mvcprzwarogixsqkwvsubz}vuoccbm||kkUibgTLmhPGRlEaxfbMTs^JMUYelx{f_mqjc\V_UnoWJShXg^XMUlTK\z_\_k]][be`zhlaoovnowuz}wyzyz}qtt~zvt
}|ls{
}~{v¬zlrzvtno}tjonddX_ZZZUbjg\Z_ui^ml\aV[\kert|ij]lxwhuwrn|~~zvslzhixg]dshzwccTdogvvfhiaWVYhd¨oxzpo{fxnyzvq}ndwsdii]lb^po[g_muezh]torkq{~uvbu
{wru~s`plXprapp{scqk`lzoihywspdtyytqdadmr~jlTi^_ULtcQGWbGcwfaLTqYKLXXglvzeemqfcZX]XvfTJ\cXiXXHWeQIbx[]_m[^]bc^ij`ntxmonvyr}~vvx}tuuyzz}jt{}~
y{~|sq®{{~fqzt~}vrol{~mzcpobe]eVZYWcfk`]]siXpm[^WZ\l{cqwulb[ntuhuvqm
yywnotehte[gufvvz`]Sefjs|aci\TX^bd¥iyt
xlnxfwl{ytrx|xifwm`ha_k`^ukYf]oobze[w|knnpxytteszvoq|qawcYno`op{reqd^muicfwyrkmtr{rqa^emn}eiThYZUNy`RKZYHbudaJUnTJLZVilr{cllscaYZ[aw\TKc]YjSVGYaNHjvX_am[[_bc]
ihanwylojvxm~vuttqvvw|}~~px}yxy~ssp¢{{xduysyvktply|pr^po`gblT[ZWidmf\\rfRrm[YXW`kvcjuji_[mtrmtttk}|wonldiqc[krdtvs\WSd`q~q\bc^SZa\derqskjxlnoyyzqvrzz{dfvh^c[ah\^wiWb^phawa[{vjjroxtsthq~urjp{levW[ilapqyseo~Z`oqb^io|kjr}qovio`[dkl{agTgUXRQw\SPYRHcsbaGVlQIPZVklk|emoqa[ZXYlpWSOfWWiSTFZ\OIruX`dmcX`ab]jddmyxkoiuy
{k}}y}mqovz}t}txutpuo¢s{{fwon|pgxq{lsvsk^tnagfkS^\Vhbll[\qdNom\VWUfishctee]Zovoquuzl}}wscekoa]nmdsxkZTVbcw||p\c_cTZ`Zccnprjgyneruqzkysuoz~v_gsd\_WbdYaufV_`mdaq]]~ohisqtquvkm
{
qqfn{opnRZeidprusbluUbqk[^nd{dkt|qqqil_Xdijx^fTeUVPUoXQWTPHer_aFXkOIXTVnid|ikxkaW\U[tdSRVhQYgTSHZ[PNxw[_fmjZb`_^nbgkyvnnivv~~m~{~krgt{u~s}
{ss}un¤swxnz`e}qgztylmqwgd|mcfghS`_Ug`lo\^nhMil`UVSnfskfxde]Zquns{xsn{w{zlbelm^`ojeqygZVX_lx{zo_b^hVY`Xdbkq|wkjvl[upjyiurmo{sXko_Y^WcdXeqcT_biablZ`~kfksuomxvkh
zmpeo{lqlbX_ggnrsr^ilSepdUbmaxaotztjnkj_X`fhu]dVbVSOYgSO]OOHeo]cGZjNJ_KXme_xhn~d`U^T]t[TS`fN]bUSJ\ZQYuv]_fmhXca[^qchjxrsmgvsys{~|yntlst
z}|rstwqn~zz}~~}}~~}~~~~~~~}z{|}~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~ÎÚØØØØÚ]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDBK £dggggfo
}}{{z}~||~}}}~}}~~~~~
Ûéççççê~S7¤¤¤¤¤¤£r]____aR455553?¢¤¤¤¤¤§|]____^j|}zzz|}{|~}}}~}}~~~~
|y{z||{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{||}}}}~~~~~~~
~wxz{zz|||{}}~~~~~~~}xyzyy{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{z{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{~~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~wrtx|||{||}}~~~~~~}~~~~rsxrvy|}|z}|}}~~~~~~~~sptwssvx}~|y}|}}~~~}~~wkztw
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~{ek~qu{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
h^hegcn
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxz}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzoq{xy{|{xw{xuwttvuuvwo^rl\imgehklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkiffggghh^hul]munfbcbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__ac_\_]`]^Z]gom_ksulYY_[XWSNMKKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSTPMJMNPROMVbhmsppsnRQTPPNNOMJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTtsuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMNTaeenmmihTMNOPPONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKKDCFLZhlhmlmigc[URONOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEEPTUZdkmgllkjjihig[LJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:;>BJYchlkolmljijki_TIEEEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@:;><;;;:FNMampptpjkiXKBEEDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnppsttsqrvyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<979;;=;;K`m{sj[G=@@CFDCCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtsurqtxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::979::78:99:98BjmH97<<=@A@=;;><=<@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==?@===?C;===<=<;G\9<<>=>?@A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCDA?=>@A?@<\n@>DE?>A<E^=>=;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVppqssttuyz{{|~~~~~~mLPQNOPNNOPPO><<=>??@>@@???BFD><<=@=8:;mwH8;:==A<Kc=<=<8:;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}|~~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABA@YR<==ILFFuwM788:;>>WjA;<<::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@CsyI;]z|wV<=?==>FitL:=>?==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy|||||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCEAHrykb|]>@C@@=Jr{Y:=AEABBFHC=<@DDA@?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{{{}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Fot}~}uLACE@?>Y{]?CEIJIIMMKECFGGEGEEEDDCA?@>>BFJJGEEGFFJNNKJIGGHKLIGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEhs}|~y
rCDEDCWu~XGHJMLNOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHHHGFEFFFDFHGEEHHFHGHFQnnpqruvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJG`{w
lAAVtWHLMLMNLIGGGGDGGGGFHFHECDDFEDDHHCCCFIKKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrtwwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLN[|
Vl|PKLKHGFFDECC@@CCCCFFEB@>>@AA@BD?>?DFHDEGIJIJHHHGIIJJIHFJJJJIJIJJJFILLJJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLLJT
uIIFB??@???<<<>;:<AA@><998<<=;>;8;?AB@ACCB@AADDBCFHIHHHLMLGIJMMNMJJKKJLMSlpqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJJIe
fBB=88::9878896479;<:8557789787588;;;=@;999=<>;<=ACEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIh~T:8656766656773568:876565676768:67889;7578979776:<@GFIFIFEFOSRSSROPPRTepqsttvy{{{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=ECBe
G676468874578567699776765:9:::;798987779:98878589;A=>>BA?AKLOQPQOOORWkqrttuvz{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B:=q
z>988;<>>9::;89;9:;::9;:9===>;;<=:=;9;;<;<<99<8::::999<?<<ABDIJMKIKLWorsusvx{{||{}~~}}}}~~~TFEFILNNLJJMB?:;<:89989:::;?>H~
l<;>BCEEBA@B>@BA@>=>>@???@??==?B?AA?@?=@@@>?A=><;:;99;?=;<==AACABCAXpqtttvz{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<=:;;==?@BR
^>DGILJJFGGDFGGEBA@CECCABCB?@DHDCECEEAFEFDEFD@B><@>=?@>?>?>?>>:;=<`qrttuwzz{}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@CCFW
VHMLNLNJIKIIJJIECDFGFDCEFDBHIKHGGFHGEJIKIJKJCFCCDBAACBDCCDDCA=;=@hpsttwwyx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@?A>BBGGJY
PNPNLOLJLJIIHJFDFHHIEEHFFELLMIJGFHIJNMNLLNKHFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?EGG=<@@87<;<=:>@>?@CFIJQ_
rNRPNMMLLJHGEIIEJHGJJIJGGGKLNLLHHIJMPNPNMOKIGIJHIDIHHFFGGHGCBACUnpuwwyzxyzz||}~~~~}~}~~~~~TDAABGHB?8?@8:<8=>;=A>?ADHJLUq
_SSQNOMKJGEBGJGLJFKNKKJJKMLOPNHIKLOQQPQOOJHJJLJKFGHGFFIFEEBABB\orwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAGKLPVy
|XWSSUSNLKJDEFKONOWUQPOQSRMSTOMSLPSUVRSQPLJMMMKNGGJFFHJDDEEBECcpuyyzzz{z{zz|~}}~}}}}|}~~UFFGGGGHF>@B=?==B?BBGVNFNPPTX{
hXWkaERQQPI;;RSR`u\UVTVYYRXXRZfPUWZ]RTWQOMRQPPQKKKHHJHEFIIIHIirvyxyyz{{|z{|}|}~}}}}}}~~~SHJIHGFFE??AAEACGEDELXRMTUVX[|
}am\dU:XXXSQ?@VUY\d`VYbr]]W]ZVEQYZ[Y_TYgRVVXTTVTOOMJLJIILMKOMSosvxyxwzyz{zz|}{~~}~}}}~}~~~~VJJIHGEDDBA?HMIMPKIKPTSSXZZ\\x
g;~ynpYZ[[RSRVVT[ZuYU}`\X]^WIV]][[_YHYXY[]XXYWRQMPQMMOSQQURassvwwvxxxz{z|}}}~}~}}}~~xy}YNKIIHFBD@A:PQQWXPPOQSTTXXYZ[n
n~fYY\YSVTWRQWVcQerXZW_hP`f[[X\gaGOZhg\[\]]WROSPPQVVVVYZnrtwvvuxxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQORRRUSVTW_ux
}{\PUXTRTRQQLOMKfy[]TYUV]ZLTZUST^ZXWWWzkX[[\^TQQPINOWVX[Zdprvvttvxyy{{||}}~}}}~}}~~~zxwvsu{tk~~kry^[VUTROKFCDAM^lVRSNOQOQURSRRUcdv
~ymqVIKMNKMKHJDEIEC>TdURQQNKQTQMOYRMNQSUUMQSRPOMLHCIHRTUZ\lquuusswzz{{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YVPLILIaltPQSNQRQR[RSRQRUTbs{|}{{
u_]LD?CCCCB?DPBC@C=CIGV@HNLG]iPHFNFDEFIGHCDHGHKGDBAD@OQMRdrtvustuz|{{{{||}|{~}}}~~||}}vt{mh|gnqfiedb\XSQPURsWe[OONLQSQUYSUQQTSOV`klrv{{xytrnstsyx~kMG?@;;>@@??>kPKaEFHIEB?GLMGMRUIBE??<=<==?=?ACC@?<=B>JNGUnttustvxz|{}{|}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QRZ\Y^JJPQNKLQRQTUUWQQWVPX[b]agmmlokg`nrjmlqu{z}{xz||xwxeC@@B=:BCBBDB\]O{NONNKLMOOPLKMWMHG@B<977599=;;;8989?<BH?\stuvuvwy|||}||}}~~|}}}}~}xuvz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIHPRQOMPQNQRTVXSRYTNYZ[WY]^^_e`]^qvk^`gkwooljonnlfbYHFGHBAGIEEFDMRPaWRWQPSSRU[OOQVPMIDF>:96587979:365795<C>essvwwyy{}}||{|}~~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZXMKTTSPQUOLRSTWXTTXQLWYZVXXVXY]WWXhsk]Vaskba_^da_^YTQNNNLIHJKIIFCQPS[WTTNQSYS\eUOSSQNKIHC?A999897885757859:Gnqtwxy{{|~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnpppnmd]__YWOPXVVSTVOOTVXXYSUTLKTVUUUWPSUWTUR]n^RNY_[VY;DVXT[fJLORROMMNNNLJFQPUYSTOJNOUST\VRUSROMLIHHF?>=:787659967675Wppswyz{|}~}~||}|~}}y}}|~~~}||}}~}|rvqxxrvuqqnppopuvtnjddjppqrpnfedc\]RTZVWUTWTRXXYYYRUOIGOPOOMRJPPOPNNOTLMIPOSTU2=XMI@Q=caQSQPNPQPNNMQNTRPRMILJORPRRSTQROLLKLLHCBA=::876;B5566:doqtwx{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqniihpVVTUXUWURWVUZYXWUQSFEAFGGHFJDHJIGEHLHKIFLMPMG/E_R>3?>joaRRQ@GUQPQPQNQOPOLJLLOPNNPQQNPOJLMMKGEEDB;=<<9=G6677Dmptuy{{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknaePSTRSTOWVVYYVQQQO@=;=?ABAC@BEDA@GHGHEFHJMLEGCORC8ENS]gSPSAGUPOQQPMMNMKLKLNOOQMOOMHLLIKKLKGFFED<AA>;@E;<89Sprtx{z{}||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLOOMQSLTUTXWUMLKI<987;>@><=A@B=>EHGCFFIGJJ@FAA@FHEJOHQRa\QPROSNOPLLOMKMLMON[WKMQOGIHCHJLLJFFFD?BC><BG?B?Adpswzzz{|{zzw{wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHDD=9779?B>;?B@@>ADJECGGIGIEBB?>=CBAGIENObeQMONWKKMKLMMMLKONSdNJLRIIIEAHJLMNJGIFBAB@?EFEHDKnovyyy{{z|zwsxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGMMJMPMPOHJD?A=98::?B?<@BAADEGKFCHIGGHCC?B??@A>DECLNRTLJIMTFIIJLJKLIJLMOPRPKGCLGCBJJLMONIJIGCCCDIJMLIYrmwyxz{{y|vrpurtxyvxjqnjllnttmtu{stxronqovsnporpopstyjN`gsjt|ygosqiqhdqGKDGHHGJKIJKDGB=>=:9:;AB?=BBCCGFIKJDIIFGGCC;A@B>@@CEDIMPHHKGHKDHILMHJLHIJLKM]RHHDNFADJJMMPMKMJKFGGJMNQNLbmivvwzy|z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoiktgdoFKCFEGEFFGEGBC@><=9::;@C@>BCEEIEIJLFIIGFFDB;ACC>@CCCDGLNHKNHDHEILNMGILGFGIILNKIGENHCGMKMLOMMNMKHHIORQRNRfffqosxu{z|lhjoekqlspfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGJDFFECCBE@DB>@>:;;=:=>CA>ACEFJFIHLHGGGFEC@=DEB>ACCCDGHIGMPJFFGKNOKFHIFEDEIJHJIFHPKDIMKOMONOPNJJILRUUROWd`amgproryzgehhdilgqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutwljuumrvqlnlerLHEEHCBABD=BA>A=9:=?:=>@B>@BDGJEIFIHFFGECBAAFFCBBBDEEGGIFLQLIOJJLLIGHEFEDCIIHKJGKRMBNOMQNOOMNOKKKOUWVUSX_^\iaminhrsbeffdihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwujsunutsqrjksMGHFHBBADD<A@@C<8:=>9?<?B@@@DFHEIFFHGFFDCECDIECGEBEGEFGGEJMKHQMJKHHIEFHHECIIIKMKOSNDQRPQQNPMNPMLMSWVXWUX]Z]d`hbjigk_eefcgggkggkmkmlprhttursnvoqprtxqssuvuyvvtxuuwxmouorsuqqinyMHGHHBBBFD<?BBD<7:>>:>:@B>??BEFDGDEHFDECDEFGJEEJGCGHFHGECFJJGMKLKHJLFIIKHEKKLMNORTPHSUSPSOQMNQNMPWZVZYVZ]ZXa```^hec`dfhgihhifhnllnmqpiuuxrrpupppruvpusuvu{~}xvtwvvvxplupmstnprrxNIHGICACHE<@EBE<8:>>=<<AB<?>ABFCECCHECEEFGGGIFGKHDHHGIGFDHKIGKHMKJKLHLKMKJNLONORUVOKUWSQSQRLOQPOTYZY\ZY[^^^`c^\ackb`dghr
hgifjmnponsrjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqvptMIKHJFBEGE<@GCD@:<>@?>?BA<@>AAFCEEDIEFEGEHHFHHIKJFJHHKHFFLIHHJGLLMLLIMKMMMOLPPQUVWOKVVUSSQQLORRPV[[]^[\^__a`ad]c`ef`ehjcssfjgglprqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrvnvJJLJLGBEDE<@FDDC;??A@@@CA?B?ACHCFEFIFIFFDIIGIHJLHHJJILJFJKHIJJGKKMMJJMLNNNPLOPRTXVMNTVTRRQPLNTSRW[^^_]]`_`aa`acebdhbdijgvljigmosqpqppryvruutsmmssmqrotutrpswtuuwvuuteqskpqjrvnwKMLKMGDCAD<?EEEC=AACBBCDACDAAEGCHGHHGJGDHIGHJFILHIJMKMLGKIHKKNQKRQMSMKNNOPPOTOWXX[NSPW\ZRWPNTUTTXZ_bb_da^`b^`eaacingbihhnxvlhimosrpqrrrvtsusssnksqmprotvrqquvuswywutucmtkopjqtowLNLLLGEA@D>>DEFC@CAEDDFBCEGCCIECIJJIIKGEKJGHJIIKHJJNLNKILHJLKZfJd\KlSHON_nUks[qpbwcSPavuhucav`Xnqbdvinzf[lt`ljT_wvijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqrqyLNJJJFC?@B?=DEFDCDBEEDFBFFGDEJEEJMMKLLGGMIGJKHKKIKKNLNLLLILML[sbdp^lmUMNfs]geqlntgpi_aYnnbppbkjjgoqtetno\ougpMJqyvkb`keemxlkvmnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIHGED@BB@>CFGBFCFEFEDCHHGDEKHGLMNLMMFJNHJKJILJJJKLMNNMMJMMM[roonpplkMPQlWNibtrpamnu\YlQ\mmZqmkomxxtsip]_rkqjUuyxpc^kfbgppjjopprspqpqqrrqqrrtlmrmnnorutqtrtuutuuzvutenukpolsrryIKGGEEEBBB>@@FGBGDIEEEBFIHHEGKJGMMNKMNGLNILKIJMIJIJKOPONMKNNL\hdu]lqWlNPQmUZk^klvaldsSecNmYl\tpkilxjwuhp]^rkhWbcw|oc`ggadityknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvHLFIDEECAB=BACGDHGLHECCHKHHFJLLFNLLSRLGLMHNJHHNHJJIHNOMNLJNMJZsppoqqmlOQRnYqkgooqqomt]nXat_nopoqronusttj[]tcwxrjnzhaacfbbjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyxtukoumtonssvsHKHIBEEEA@>DDBGDHIMIFCFJLIGFJMLEOJKWRKGKKJNIHJLIKJIHJMMMMIKKKSkc[i^_icrrZ_Yjo_eeUk_c[aaQ`lh]j\niid[pfdp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrvtwrGGFIDEDFA@BFEDGBHJLHFDGKLIEFJOLIPIL[QJEHHKMIHJJKKIHIGKKKLGHKKLMMLJKMNT[\TPTLPONOOVQOOQNOQJINPQdqiTYW\[\UY[]X]\\cfaaebce__fkmhmtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusGCEGFFAEC@CHDFGCIKLHFDGKLHDGIPKLOKLWLIEEHIJHIKILJHFGGIGHIEFLIJLOLIP\W^P\[`^MXYS\\b^MXZMXaRJYaZR_d\aX[ddVVX\YZX\VY\]b^d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCELMBDCBEIEGGFKJKHEEJJKFEHHPJMMJMRIGEAHFJIKLJLJHFDIFDFGEEJHCJMKLU_Y`X`a[`TXYT^^Z_RY\P^\YN^\^SZ^c^Z]`c`Y_c[`^[TXWY^]cbcacehekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIDBBCGHFHGHKIIIDFKKKEFIJNKNLHLNGHE>GGLIKLKKKIGDIDCDEBFJD@JLJO[cY_^a_RTRW_`\]Y^QY\MV_WKQY[PZ_aa]^ca`bbbcceZQYUU\Y]c`__cdbhomnllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQKFCGEBEGIFGHHFFJGHGHKILDDKJMMLLHJJHJF?GGNKKKMKKKIFGCD@DAHIB?IJHP]aZ[d]_TQRX]\\\_ZKW\LR\YIM^QO\_accccb\dcbdcfXQUTR[WZ`_^^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMC@IFDFKJFFFHGFIFFFILJNFDKKLNJLIKJHIFBHHQMKKOLJKIGGED?ECHHABGGET]Y^X_Y_[]UXXO]]QKJV^X^[]UY`RQ__bb``bb`cbaddbXOQQQZR[]]]]^__dhgljnnp{{|~{
srw
|x\SKCAHFDGMRHCQJFHHHEFKJMPEFIJKNLLILLHIGDHKQNMMPLLJKHICDAEDHGBAGEDWUE\T]SV_XOTUNZZMIJT`a[_X^^a]OYa\``_bcb]abW__TPNOOWQ\[[\\^_bffelfoow|{{}
zo
~INFDFFHDIRbPCV^IGGHDFMKPPEIIJKNLLLMKJJGEJNQQNOOMNLMHKADACDFDCBEFBMHBKKOONLFMFGIJHGLKMOPILOPOSOLPSRUZYWYXXdWOSTPPNMOTRZXXZ]\`adecgcklpsrzy{z~{}{
}KIEEHFGDKM]LGGXLGHJHGMLQQHLKKKNMUNOKKKGGKPSSNPONONNGKF`ED_LEfdEM[I^[rmOMUmYLDP`UkWgJ]WU^DLQULLSVQRTXWTXUT\UPfZhhdXRjRVUT[\[``abbb`fhfnkhrz|}~}|zr{z{
~z{LIFGFHEEKOSIJF`SHJOJIOMRQKMLLORUROOIKMGHMQ[YOPPNOOOIJQQI|YYqtYQmHqnoaVPqqsPCksmqspSo_[nX]V\XUkhU]VcZ`Y[`VVXjtuu__v_Xa[[f[_`aaa]`bgmpl`pwtx}vxzlv~tx}|~|z~wwNJEHMNBDLLFILEQVLKNIKRXWQMOOMQTNOQPKKNGMPS[ZSQROPPPJHZx]TxehZSTRvgtlpbnfjQrOMwmjrpsrqrpoo]ezuxqqzq~s}ku}bRh|essosr{|o~xnr_``baZ``gknkblfgmw~~{xwtvzir~ns|~wx{~x|u|||ssNKF`]GAEMMHJKGJPOMMJNV^YULQSNYZMSSRNKOHQRTYWVPTPPPQKHgxlcxrm[KMUypumubnvPdeJfvqmwojfxxiWrQhzmijzz}lxzohoYvvjuup`rf}ilx|o^__ba[]bdgiidgbcdllppstsssyqrxblugqy{srvy~suzn|}ywrnNKSuNCBFPPHJKIKPOOOMOZ`ZWKTWPa^RVQYRLOISTUXWWPUPONRJKrouuquqdibWnLqp^FhyWvTLiy}x`y{sna]mocRhqunmypwlvttrln]t~zkmy|ktl|kpvux^__b^]_ddighee^abiiijknokqnmjpacfcowxompsy~nqpj{ztsomLL[VHGEGRPILMJKPQPPPPW\XUMUYUeXRRY^SLNITTVWYWOSNNNQHRmHiwK`dvvVXlOnl{sajgvULWkh}lmlx_[pz{^`zscroxqhd}ir|^TLl`vukiu{{m~xk|p\^_b[^bddgeeebZccikkrsrwglihdg`akagsrlgmmr|kmhk{tmmkmOHKKIIHHQPLNOLKRRROSRWRVTPW[VVTTTa_PNMKTSTQUVNNLMOPJHQNPULKLSTSSTPVUQQNQQXYRNPUTXXX[ZURSW[WXWZOSUWXXR^YW^VTPYRVWWWX^[gr^[[Y\]_cZ_ccdfdccbZccffemnmueegcaf_]g`dlhfgkhpzhggkujhgilQIKLMMKJSQMQPOLVUTPTUXUYUQZ]VUTWUYWOOKMVTQNUSNOMLQPKJRQKQMKKPRUSQRSSIHLNOQRQQQTVRXW\WSSPRTUVSZQNSRXVTYVTZVTRUTTUWXV]Y^`]\ZZ\\_c[]bcdfdddaY`acabhhimbad^_c]Zd\bma^fefmsdihkkedcfhPJKKOOLMSPNSQQMXWUTUWWWZUS\`VWVYUXSPPJNWSPNUPNQNLSPLOUSNQNMNQUQUQRTUNKMOQTTRRQVWTYZ[YSURTWWWY[TPTUXUUZUWZVSRWVUW[XZ_\UX^\^][]`a^[bbcgfedbX_ab]`gdfea^_]]^ZZ_Z_g`^]]bhkagfhfd`bcaPKMLPQLOTOOSQOQ[ZXWX[YXYV\jdVXYZWVSSOJNVTPOTPPPNLQQPRXTQQOMOSVOWRTUUONMQSUUTTRTWVZ]\ZVVQQVXV[[WQTWVVVYTXXVSRYWVZ]Y]_^U^]^`\[____ZbbdhgddbXa`b^^fcc`b]\\\\YZ[X[a[^]\_b__bdebd__`\PMNNRQMRROSTQOU\ZZW[[\XZ[dqmhd_[YVUWQLMVSMNROQROLPSRUZUSPPMPXWRWSSSXMOOQTXVUUSUYX[^][[VROUVV[[WRTWVWXVTX[TSRZXW\^Z^_`Ua\aa]`b_]`]c`cghdf`Yc`a__ed_`c[Z\[\YZYXW\Y\[`^_[^^a`^b\Y`ZQNONVQPTROUTSPW\\\X^\^V\^jqwyc\[UUXQMOVSNQQPRTRKQTTYZWUOROSXWTSURRZOPSRV[VVWSVZX]^[[^VSNTUV\\VRTVVXYSTY\USS]XZ]^\```Va[cb]ac_\bab_cfidf^[d`a`acd_b_YZ^[\[YXYWWZZZa\][]\\Z]`W[[ZPOOOYPUTRQWRTP[^^][`\`U\]hjr}slg\TWWQNRZSRQTRTUTKRVV[ZZSOSQVVVTOWRSZRTTTX]WXXSX\X^]YZ]TUNVWW^[XRUUYYYUWY\UTW^Y]]`]bb^Y_[ea_dd^^cca^efidf]]da``abd`b^XZ_[\[XXXXW[Z\`\[[\[XZ[^V^Y]POORZP[TUVVTTT^^`^^b\`U]^bkytl}kZUYUQQS\TUTUTVYWLR[W][]ROUSXWWTPXRSWSVUU[]X[YUZ^X_^Y\YRWRYXY_[ZTUVZYZWXZ\VUZ^\^`a_dc\^]]eaafd^^dc`\gdhedb_da_a`bb_`^WX^Z\\ZYYWV]Z]^ZY[\[WY\]VXW]SOPWYQ\UVYWWUX__aa`c]_T]_beeuzhXYYSUSV\XWWVVW]XOU]Z^]\TRWSWVUSTXRSVTXWX]^X][V]_X__X\VQYTYZZaY\VWX[Z[YYZ[XV]_`_cbadd\b\`fadfd^_dbb[fchecf`f__aaaa`_^VU]Y[\[Y[YY][[[XXY[YZZ]_]TY]UNTYVS\TVWYVV\`abcac^_V[`da_zuohY\ZUWTW[ZY\YXY`WPV^\``\TTXPUWVTVWRSUWZZ[_^Z_\V__Y]^Y^USYWYY]bZ^VW[\[\[[Z[YY__``dbcdebdYafcffe^ab`c^bcidcg_g^abcaa`^_XT[ZZ[[X[XX\[Z[WWYXW\[\`]V]]SOVZVVZUXUXWX]_badad`^YYadb`lfh^[][VWXY\\\_[Y[bVTX^]ac\RVYPWVWWWVSUTX\\^``]`\Wa^[^\[^XVXX[[_`\_XY\\]^^\[]X[`a^`dcdeefbXcedhgd^c``ec]eidei_f]cbcaa`__[XY[YZZXYXW[[Z[WXZTY]\Z`\U^bNSWYVWZX[\XWY^`badada]^Yacb_a``^\\\WW[[]]__\Z]cXZX]`cd_RXYPWWXYYWVWV]]^`a`_b^Ya]]^Y]^YXUW[\`^]_ZZ^]^^a]\[Z\`b_bdcefefbZdffigc_c^afdZiicfjce^bbca``_]]ZX\YYXXZXWZ[ZYWXUU[]]]``bbxKXW[YW][\]ZW\]_`bdaba]`Xbcbacab][\[XW[\_]`_][`d\\XZbecaR\ZOXXZ[[ZWZY`]`bb`ac_\b]_][^^YYTX]^_`_`\[^^`bc]\X\^`bbcedfdefd\efgifcab\cg`\iibhjed`baca_`_]]\Y\YXWXYXW\ZZWWXOXZ]acffrkJYW\ZZ_\[^\X][^_acbaa]b[bdb`bcb\[[ZWXiq`\`_]\ac_^YYcedaS_ZRYX\]][Z[[c`bbc`bda`c^`\^^^ZXV[_^]aa`^[`abec_]T]``cddfegeffe^efhhgdd`[eg^ahhbhhfc`b`cb___]][Z[YXXXVZV\[[VVUMXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{{||||{|{zzzzz{{|||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvvvvvvvvvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{|||||||}}}}}|}|{zzzz{{||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||upooooooy~}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½E>????@0*+++*"ÛÒÒÒÒÖº}~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}upnoooony~y1333332j{éääääèÊ:233334!ïååååéÇ}~}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vuuuuuuuvwwwwwwxyyyzyzxopppppprrrrrrrwzyyzzz~|||||||vuuuuuutssssss}
|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvvvvywvvz{x{xwvwzxzyy}zyyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{||||||||}}}}}}{zzzzzz{||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwwx}y{}z|{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwww|y{~y|zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z{xwww|yy|z|{wxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzx|z{|{}{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyxzyzzy{yxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyxyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{|||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|||||||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrsuuttssssrrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqsttssrqqqponnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqrsssssrqppponnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrrrrrssrqozopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpqqqy{prqpqnppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqprq}zpqo |opppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqrvpt}oppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqrp¬n£~pqqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrrp±¨z¦ }pqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssssssss³¦¤§±¢vssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz~|~~|vvwwvuxzxxxxxxww«¡¶¦¢§zyyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~||||{¦£±¡¤z{zxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}}}}}¬}}}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~£~~~~~
~~}~~~}}}~~~~~~~²©£¥§}|}~~~~
|||{|}||~~~~~~~~~¯¦¥¤¨|}||}}~¦±©¥ £¨¨£
}||~~
£¡
}}}
~~
}}~~
~~~~
~~}|}
~}}}}{
~~}~
¡
}~
~}}
~}~~~
~}~
~
~~
~{z
~}}}}~~|{|
~}}~~~~~~}~}}}
}|}~~~}|}}|y|
}}}~~}}}}{zz~~
~~~~~}}}~~}}}}~}|zzz~~}~~}}~
|}}~}}~}~}~}}~~}}}|{{{zzzz~~|~~~}~~}|~~~~~~~
~|~~}~~~}~~~}}}|{{|zzyyy{~~~~|~~~~}|~~~~}~~~~~}}}}
~~}}~~~~}}}}}|||{zyyyx}~~~~~~~~}~~}{|~~
~}}}~~}}}}}}}}}{zzyyyy~~||~}~~~
}}}}}}~~}}}}}}|}}|{yyyxx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
~}}|}~}}}}}}}}}}}}}|{{|z|yyy|~~~
~}|||}}||}}}}}}}}}}||{z|yzz{|~}~~{||}
~
~~
~}}||}}|||}||}|}}}|||{z{|zyz{|yy}}~|{{~~}}|~||}
~{z|
~~}}}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}}|}~}~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||}|yz{{xxy{{z|~|~~~}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{}|||{|||zzy{|z}
~~~
~~~
~~}|~~}}}}~{|}}~
{z{ywz}
~~~}}}||}~}||}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}|~}~~~
}|||}~{{}w~vx~}|}|}~~z~~|~~~~~~~~~~~}~~}|~}~}}}{|||{{z}~|||}||~~|{{}~}~~}{{{}|{{{{~~}||~~~y}~v{vx}|||{}}~}}~~}~~~~|}~}}}{{}}|z||~}}}|||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~}||}}|}}}}{|~~~~~||}||}|}~{|{||||}|}|~|}|{{{|y{|{{}z}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}~~}}|}}}}}}|}|}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~~}~}|||~}|}|}}}~}}~~|{{{||}|{z{{yzyyy{~
~~{zy{}}x|zr}{{}||~~}}
}~~|~~}|}}~}}|~~|}}|}}~~}~}}}{|}~||{|}zzyyyy{{~~
~~~z{y}}zzz}q~z{}}}}}zx
~}~~}~}~~~}~}}
}~}~~~}}||~~~}}}}|}||{|}{{{zzz{{|}}}
~~~}yzz}|yw{t{|tw}~}{{vv}
~~~~~}~~~}~~|}}|~~~~}|}}{}}}|||{|{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||{|{{~
~~~~~~~~~z{z}}uqz|zqz~}yxtt
~~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}}~~~~~}}|}}~~~~~~~~}~~
~~~}{z{z|{z
~~}~~~~}~}}z{|
{{syz|pwuvwyutz
}}}~}~~}~|}}~~|z|z|{|~~}~~}}}~}}{{zx|vyy{qtxwvxury
|}}~}~~}|~~~~}}z{{|||~|}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{{||||}}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~
}}}|{||yz{z~y{yx~{|{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst}~}~}~|~}~~}~}~~~~~~||||zyvyyzyvyv~|{{{~}{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}}|~||~~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{{{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~|~}~~~}}~~~~~}}~~~|~~~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~}|~~~~}}|~~~}|~~|}~}~~~
~}|{{||yw|ywxwwx{{{{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqsoxwq{
~~}|~}}~~}}|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{||{zzzzzzxsvupprowvr{
}}~}~~~~|~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}{||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxzxy{||}||{||||}}}||}|~}~~~}|z||{|}{yzzzyytuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{wwy{|{}||||{}|}}}}|}|~~~~|z|}{|}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z||{zxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~~}~}~~{}|}{||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|{}|{}xwvyyz||||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~}}}|}z}{yvzxy{{|}}{|}}}}~}~~~}yy{zzzysrtowqwysw{
~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxqytvxtw{~
~||}|x|yzyz|}|{||}}}||~{{{zzzupxwyvu|uv|
~
{}~|y|zzz}||}z||}}|z{~~~}}|}}|vrvxxvtvu}
}
{||}zz|}}||z|~}|}}~~~~~|}}~~}||xvvw
~
}}||{||}}~~~}~|||}}~~~}}~~~}}}~}}~~|}
~
~}}||||~}}{|}}}}}~~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uy~
}y|~{
}~}~}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqspurstv{}uvy
hzrss|r}}~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyyrpvxqvtturstvinrotvnulwmzsnym}rsvsvmnwlpylu~|~}}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoolw}xpqzprtfu~n{ysoy}~{~|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyrioyxpkyszozwvvp~~~z~}|}~}}~~~~~
xyrz{pp
x
xyks~y{krz|mzyyt}vnoot|uwqy}}m~uo
zrr{|upozks|nv~~}}z}{|}|~}~~}~}~|}~~
}w
~~{|{~{||}}|~}~~~~~~~}}}~|{|~||
}{{|~{||}~~||~}~}~~}}|}~~~~||}~{|||{{~
~|{}~{|{~~}||~}~~}~}}~~|}||~~|}|||}|||~z{{|~
{{~}|||~}|||}}|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}}|||~}|}}|}{||{||}}{{{}|{~}{|}}|}}~}|zz{{||
zz
~|~||}}|}}|~{{{z{|||{{{~{|}{z{~||||}~}{z|z||
|
~~~~||}}{}}|~zz{y{|}{{{{~||||z{}||||~}|{{{{||
z{
}~~||}}~}{}}|}yzzy{|}zz{{}|}||zz}||}|~~{{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yzz{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|{{{{|}}}|~}|||~|{
~}}{
~|}}}~~~~~}}{|{zyzzyz{|yzz{{{|z{{{|}}}}}}||}}|
~|~~
}~~~~{||}}~}~~}}~{~{{zy{zyzz{yzzz{{|z||||~~}|}||}~
~~}~|}~~
~}}~~|~~|~||~~|~}}|||{{zzzzy{yzzyzzz{|y{}{{~}~}}}
~}~~~~}}~~~~~
~~|}~}|~}{~|}}}~}|||}{{zyzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<C9;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937676=;>:=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<:<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA>;A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËÊÊÊËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÒÓÔÔÔÔÔÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9>CE?<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÐÑÐÐÐÐÐÑÑÑÑÑÑÑÍÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ØÙØØØØØØØØÙÙÙÙØ××××××××ÖÖÖÖÖÖÓÒÓÓÓÓÓÔÔÔÔÔÔÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILN@99:4;A<7=9AC=@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌͲâÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¸·©§§§§§§§§§§§§¦±¾½½½½½½½¼¼¼¼»¿ÒÒÒÒÒÒÒÓÓÓÒÓÓÓÜãâââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVM<::77>C>8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÎnPSSSSSTTTTTSL óëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§££££££££££££ ¬ªªªªªªª©©©©¨°ÒÒÒÒÒÒÒÒÒÒÒÒÒÑàìëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;?C>6:7>?;<B@8<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÎqTXWWWXXXXXXWP¡ñééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¥¢
««««««««ªªª©²ÒÒÒÒÒÒÒÒÒÒÒÒÒÑßëêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<<<<>::;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÎx^a````aaaa``Z¤îççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©©§±¯¯¯¯¯¯¯¯¯¯¯®¶ÒÒÒÒÒÒÒÒÒÒÒÒÒÒßéééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9;:=<;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÇÅÅÅÅÅÅÅÅÅÅÅÅÄËÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÎÏÎÏÏÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÒÐÐÐÐÐÏÏÏÏÏÏÏÏÎÐÓÒÒÒÒÒÒÒÒÒÒÓÓÒÕÔÔÕÕÕÕÕÕÖÕÖÖÖØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<7@A<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÏÏÏÏÏÏÏÏÏÏÏÓÏÏÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÑÔÏÏÑÔÔÓÎÎÓÓÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖ×××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?89:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎÓ»ÏÒÏÒ¤¡ÐÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<=B>BB@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÒµµÊ¼¸µ³¡©ÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?><7:>9?D>@98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÏÑ ª°Ä¢ÅÈÐÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<96?B?B:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏÑųÀ¬Öº¡°²ÓÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8E@?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÏÖ§µ»§«¥²¯³ªÕÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<==964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÏÕ¥´Á §¤ÕÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ×××××××××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:<?>=<9@<<::9?@==<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÐÖ¥²Ö£´« ©
¤ÕÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAA8;?<=;<<7558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÐÕ¥³ÖÉØÁ¼¦¯ÖÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF?HHGE@<<>><==<756:969;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÓÐÕ¥´É¡¨»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@C;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÇÒÖ£³Â¤ª£¡Ã «¤ÑÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÑÕµÃØ©¬×¼ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<<?GEGKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÑÑÂÔÒÕÁ¿ÖÒÕÅÄÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÒÒÔÒÒÒÔÕÓÓÓÔÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ=>786977899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:69896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EIKAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDI;AA;<886586987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?:8776=?@@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE><HF89757875898;>>=;89A>=@?A>7596;>AB??@@AB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEEC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELBA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?BGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<<DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAD?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsnupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498566:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»ºº¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545659756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455588686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸¸·······¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸···¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899::;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶···¸·¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©ª§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸·¶······¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::9:9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥¤¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§¦¥§¨¨¦¥¥¨¯´¶·¶µ´¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©«««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤¤£¢¢£¢¡ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=6789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥£¢¡¡¡¡¢£¥§¦¦§¬«¨¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¦¦§§§§¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥£¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB?DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥§§¦¦¢¡ ¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;<;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¦¦¥¥¦§¦¥¥§§¦¥£ ¡ ¦¯¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡¡¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢¤¥¤¦¦¦¤¤£¢¢¡£¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::78:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢¦®¤¤¤¤¢¡¡ [¡¡ ¢¡ ¢¡¢£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ª´°¢£¢ ©pP¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¢¢¢¡¡ «® ¢SZ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>99;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ¡ £¡h¬ªsV_ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9<<>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¨th¤£¡kbb¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:<>9?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe §l§¢ldc ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq ¦vpjee £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¦u||xf_e¡¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡{¢ `f ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡©km®ª¡gzg ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¦¥p_j¤Vg{}|¡¡}
£ª¡¢¤¢«±·´¹µ±´¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡ ©gEHt
OE`u
¡§ ¤£ª©³¶±µ°¨ª¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v=:<xvnQ95^v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VQQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{~£Z^lPy¡ScjFgx
§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
~~Y£o¶¼±¼y}Nu~
¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¦ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
} xÜֱ̳¸¼ebra` ¢±®©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~h³É´ÈÔ¯®º§t©jX¨®²°°µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWMO_^\NUUbQDTM;?9<895875795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
¡¡££o©Â¾¶±w]ÊU ¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUJTOOJDPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ªª©§¢¥¨©«ª©³ y¬}yrgcx¢¤¤§¤©«®¬¥¤¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdWOYKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®««¬¤¡¢¥©§§©ªxW{zpnksv|}v ©§ ¢¢®¬«ª§®¨¥¤©©ª©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_VZNRNQOSe\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨§¦¨©§©©¤¨¦¤¦¢¡©|hKitnpxjhdjknz¤£ ¡¡¡¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOXO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤¢¡£§¡¦®¦§§¯lbK]snowgbce_^jt~¢¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvxb_\UYQUW[c_s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?B?:8:>?C@DA:;>=@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯««¬¨¨«¯©¨ª©¢ ¡¨©°³µ¼²oe\GVvrs|gadjZZ`cmx¢¢¡¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\V\hdocmiib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£ £«ª¨®¶¸¼Áý¯{ed[@]lnx{ka_g[X`^afpsy¢¨¡¤¢§ £ ¡¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxjb[__\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>BE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ «³ºÆÐÚÕƸ¨}gbcU=^jlvqrdbcYW\_]]ahjkn{¥®§¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__amivkphiibZSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°²´µ½Òàáк¥raY[[O?Wri^[nl^]WYXZZXYY[drºÈ¾·¡§ª¬§«©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YTai`ftotitdidb[LK>:9898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÄÇÃüÃÈÎÔÐÀ£~aUSUXQFInz^VXW\[]ZW`|²¼ÀÆÇ···©¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`b_^kcbnxuwnm[bRV\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAA;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅÆ»ÄÁÅÈÈÅ¿ÅeVXUQIku£¬£OU\_a\]l±Ä¼½®©²·«µ²³©®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|~jfhaklgnurruqg^`\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8BBBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÄ¿ÄÃÆÆÀ±ÄÈÒ»fUVQVf¢®NVWX[g³·®°²¦ªªª«¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|uklndomiqxozjia]gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄĹ´À¶³¾ÆÈ°ZTSP±GOVYq¦¼°¥´µ¬¯¥¥£§¤ ¥ª´±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyy{wnkihvZgrxsyff^d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÃÄž¸½ÀÂÂánUJ¶
EKZ~¡¢§´²¬¸µ³¬©£¡©¬§¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuuefijh^jonyxcba`^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÎÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈÇ¿ÄÇÄÄÈËƬs_v_KW·¹À½¾¹¼º¼º¼¬¦©»º¹·¿²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqocagvijjtnyl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÌÐÍÇÌÉÂÂÇÂËËÈÇÌÉÍÅÅÅÃÆÅÈÌÔÌILW ÉÁÈÍÆÄÁÄÇÁ¼¾´±°°Â¾¾ÁÆ¿¾¸¶Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`kjwlifuotc]bTWUSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÃÿ¿¾ÄËÈÊËɼ¼ÈÇÉÍÈÃÈÉÉÅÅÂÃÁÂÆÆÆÊÌ{G
ÎÍÇÌÐŶ¿¿ÀÀº»½µ³³À¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrpfegcjdbkmno^Y]VVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ãº¸¹¼¾ÁÇÁÆ»¹ÈÈÃÅÄÀÃÁÁÀÄÁ¾½ÁÀ¿ÀÇ¥JÒÌÅÉÑÁ¯½½¸¹»»¾·´±¹¾³¼¾±¹µ¸»¶¼´µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbaccdjcgc[ZZ]YQOE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹¾ºº´À¸µ·²®º»·À·¼ÊÏÁ»¿À¼»Ä½ºÀÄ¿½¼¸¼ÀůOÍÄÀÁÉ¿°Á¿º·»¾¹µ¸´¸¼´½¸µ´°³¼±··¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qdabchjggiei^VVTYOSLF8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ¹¿»ÁÕ»¿»ÃµºÇ·¶¹»¼¸¹µºÄȪPÉ¿¿»Á¾¹Æ½Â¿¼Å¸¶·´¸¶¶»»¹¶´·ºµ³¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zyqmfefpjekhXYOKKKRJLHD9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹º»¿¼ÏÅy¬Ì½Ç·¹¸¶´·¹³µ²ºÅÊRÊ¿¿¾½¼¿ÈÃÅžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~}knqgqktfbn`\THKKDJCCG?:;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼»À·ª¤®°¸»²½¾»Ä¶µ¸µ·¿¾Ä¼ÂÄ×®v½ÈÏÂÀ¸®µµ»½·¹±¾ÃÇXÎÿ¾½¼ÇÌÇÇÄǽµµ¶Á½»»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢rfljnuoxcgb\cQKUHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£°¹½¼²¼¾¼Å¸±¸¹¼ÆÉÊÂÇÉÑsv°ÑÑÌÊĵº¿ÄȾ¾´¾À¿fxËƾÁ¼¿ÃÌÊÇÅÆÀ¹½¼Ä¿¿¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltlln_c^abNHN?E@?DC;;::;:8;<:9<>::>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´»Åк¾¼Ä¾·¼À¿ÉÏÇÈÊÊÂuv§ÌÌËÍÊÆÂÃËÎÁ¼¸¼º°}wk¼ÈÄÀÀ¿ÄÀÊÉÃÃÄùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{z{mmx|`qd[^__TI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼·»»¬Ûþ¶¾À¾¾º¦ª³·ÃÀ¦{y{ÄÆËÈÁÃÀÀÉÊÁ¿»¹±£
z¯ÈÅÄ¿ÀÁ¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsxthp^\_\ZQEEDMIAD=H;;59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯··²µ³·¹¼»¶»»Å·m®Î½¶¹À¼ª}nhnmttz~¾¿ÆÀ¹À¼¾ÅĽ½¸²®¤§ÊÃü½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸··½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|wmv{qoj\``YSPAFIGK@ECH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÀͲv³½¶µÁ¤iZ^`NS[\puy£¸·Âº³»·»½¿º»»¯¢¨¤¾Åþ¼¿»»¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ°µ´´½º¾ºº»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦{zsvvwora_f][UJ=??GG=GCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Âɧx¡°µjfgVY_IIMPTny©°·¾¹²µ²¼¹¼¶¹¾µª¼«±w¬ÊÄÀ½¿¹³®²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|quwtwrl`ca\^OIB?=IDFMD@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·¿Æ©{v¡_SCYUHbjUOEJc¤®¯¶ºµ´²¬¼¹¸µ¸Á½¢¾¯°v§Ë¿¹ºµ®¥¬³±¦°¨ ¥¶µÂ·¶´¥¨ª¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´¶¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wp|ovsnc^gY]]SONA>JB@JJ@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸¸¿´ynNK?eYBOxhMB^±µ³µ²´¯¬»º¸¶¹¿Åw´§fª¿¸µ²±¤¦§¤¥©®¹¬««¥¨¤«®¯§°«¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶¯ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmujl]\kU][PNHDGMBFNF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³·¶|XFAOXJJYxcAT£¹³´²°±°¹¸¶»·»½£³®¤t¬°©««£¨¡ ¨®¤£¤ ¢¦¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhutoeUadW]QOMH@IRDMC=8875:7<>:;=89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²¼©hM@SyqPIIKhZET¯»±¬³¯®¬¶¶²´µ®©§¦¨ ¨©¡§¤¨ ¢¢¡¥¥££ ¥ ¤¬¥¦¨¤¢££«¬³®©®®®§ª¨¬¡ª¨««¦¢£¦¢ ¥¢¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦¡x|vzcwln]QiUPOGPMLCPQ@>;>49:5;9=;:9<99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬¨½Âª¥¼gDSQXIKaJVbed¯µª²´®ª«¯°²³¥ ¢ £¤¨£ª £¥¨ ¡¢£¨¨§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ ¤ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£~|uv}nk{dhVRdNJHGOSNKNH<E@<2?859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡© ªÆ¿ÊOAssPnJLcfut`\bs²¯®³µª¦¬«¢¢¢¤¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¢¥¢¯¨®²«¥ªª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}wy|eyy`bSVaHIJKSTISQM9?B67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¥ÆÆWSJf¤Zf}or[Qkc\fb`l´°°¸¬¦¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§¡ £±®²±´ª²®£¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvshle[SZZMQJOOVMSMB7>C78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢ª£yUirwupcwvXWc`diZZWg®¬¯§¢ ¡£¢¥¡¤¤¨¨¬©¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½¶¾°¬±®©ª´±°¨«¨³¶¸³¸²´¤ ¥ ¬¡¡¢¡ ¥¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§}xvjwu^m[RaIRUHFUWJCMG=KH8F<77;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¡ ¤op`cXL[RZLLQYRHNNH¬ª©¤¦ ¨¥±ª§®£«®¶°´²±®¶¸½¿ºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«®±¹¸¼¯³°µÂ¼·¾³³µ¢¬¢©¨²©«¨§¨ª§ § ¨¨¥¤ª¢¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vrmiwmhm\X\CWNJGMGCFM<>L>4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·¤°¦£bW^e`WMQG=>@CD?>BRx©©ª¥¢£
«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶»»ÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸³»ÆĽü·³ª³ª³´¯³®ª¯£¬¨¶±£°¦ £°±®°¤¥¯£¡ ¡¦¡¤ªª £ ¦¨¡¢¤££¡¤¦¢¤|trkkurqhV\QFUHDJPI?EA4FH95<>7;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ |_^e`QFD;C?F<>96N~ª³§££¢ ¥«¦xm ¤¢«¬´¼¶Ã½¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿À¾ÇÆ·ÃÊÊÃÁÇ¿º´º»µ»·°¶²ªº²®»¸¿»º«¸«ª¸»µ¼®®¸£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢
~zrkdioxkeY[FKLEDTMECE7:?:549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;?>=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡}riaWNE>IZ|oaA=\®¬ wrqmp¦®´¹Å»ÍÇ˾ÁÌÍÍÌÇÉÑÌÌÌÇÉÅÆÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÍÔÐÓÓÌÊÂÅÆÆÊÈÏÀÉÑÌÇÆÈƼÃÁ¿¿¿¶¾³¿ÀÃÃÇÅÇį¿¹²¸¼Äº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZZCNLDFPIDC@55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A?<@?>9;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £if\TID@?K¤ ²£yqroly¤¶º¹¾ËÁÓÑÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÏÊÓ×Ò×ÒÕÖÓÔÈÌÇÌÍÊÓÍÎÓÍÆÉÊÊÂÆÌÇÉÉƿó³ÈÅËËËÏÇÊ¿¾¿½ÁÆÅÍÌÉÉÀÃÀ®¯³¨¢ª£¦©¬¤¥¦
{ruvgcgvjdVWQDNF@IQC>B<:22A<E<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡aSLJDC?CR°Ò½²¯¦ ¤¡}xqkebhroq{
upnqtp
³Ã¾ÅÑÐ×ÖÕÒÖÍÔÖ×ÔÓÑÓÔÔÓÏÒÄÐÓÖØÕÖÒËÉÎÑËÆÍÑÊÒÕÖÙÖ×Ó×ØÎÒÊÏÑÌÏÐÌÓÐÀÉÈÊÄÌÌÌÏÏÅÇȶÀËÀÒÍÌÐÆÊÉÀÄÃÈÎÍÐÑÏÍËÈ͸·»¨¥«§£ª¥©¨¨}xsvpc`erc]R\IJGAEIJ>;A8=5586;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¤¥ ¢¡YI@ADAFQv²¯¦ wica__`_^__]alusppolrquÄÈÇÔÖ××ÖÓÖÐÕÔÚÔÔÎÏÕÔÔÑÑÌÑÎÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐØ×ØÑØÒ×ÙÔÕÌÏÏÊÍÒËÏÑÀÆÃÈÆÏÎÑÑÒÈÌÍÀËÍÆÓÏÌÎÈÄËÇÇÉÌÊÔÔÑÕÏÒÌÓ¹ű¥¨µ®§¨«¥²¨°³¬
|zqstmbcim_VP_JJCFCRM@<>43:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><?@=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¥®·¨«·ØÔÕÙÙÑÎп¼Ìɶ¾®¦ª¨¡£«eC8=>DXª¨}qecb__a_^a`_``_`emppnkorwwÌÁÓÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÑËÏÍÓÖÒÑÕÍÏÕÕÑÅÑÔÊÐÔÕÖÎÓÑØ××ØËÈÎÄÉÏÌÊÌÀÊÀÉÊÎÎÏËÐÎÎÌÏÏÈÌÐÐËÎËÃÊÇÉÍÊÌÒÓÍÓÒÑÐÐʽȹ°®»¹µ«¶°¨¸³¾»±
zvopokadnpaW\ZIFFDMXE;@=33<<87855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÁ±©¬©¤±zHFB;W¡k^^^adb``aa``a^__^\bmroostvvy¤¿ÌÕÑÖÔÓØÖÎÎÓËÎÎÅÎÊÒÒÏÇÎÍÎÔÌÎÒÍË×ÖÐÌÑÔËÌÐÒÓÊÎÑÕÒÕÕÊÀÊÂÅÍÂÈÊÃÌÄÆÉÊËÏËÎÍÐÎÓÌÆÉÐÍÈÇËÅÇÂÆÊÌÍÐÒÇÐÏÎÎÌÐÅÇÁ¸¹½Ãýø²²¾±»Ãõª¥¡yqrkmg``qhYXhVMGLIPQB;C>;68:8::57==@;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?;<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±ÇøÊÕÖÙÚÛØÌÌÏÈÖÕĵ¯´¨xlpqy|eabb`]^aca`__`aa`_][]grrprsqmry¥ÇÓÏËÐÐÓÔÊÅÉÉÆÆ¿ÃÅÏÎÇÅÇÍÊÒÈËÎÍÆÑÒÐÎÌÔÊÇËÎÏÇÇÏÒËÐÏƺĿÆʽÃÈÉÎÅÃÇÀÇÍÈÄÌËÌÏÈÄÄÐÉÆÂÆÉÅ¿ÁÇÌËÌÏÂËÌÉÇËÐÄÅÇ»ÇÃÈÉÂÏÁ½¼¿°ÁÉƹ½ª°²§¥¢£xotdk`^fqa[W`GHHGIMTG?J=64355==48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼¹ÌÌÆÐÕÕØÚÛØÐÉÏÏÑÓÈ·»»£¶~h
¤«
}~s_[^^^`^`cdc_]]^_``_[Z\`lrqookloo}¹ÑÈÉÊÏËÍĺÀû»ºº¾ÉÆÂÃÀÃÈÊÉÈÊÈÁÅÌÆÈÊÍÉÄÂËÉÁÁËÐÅËÈ¿¹Â»ÆǾÀÆÏËÄÀûÉÇɼÉÇÅÊÀ¾ÂËÆÅľƽ½ÁÃÅÌÅƼÀÉÃÅÇÒÅÁÉ¿ÊÉÆÈÆÑÃÃÆïÄËÇÃÊ·¿¼º´©¬¤¥¬£¡¦£ |wstfiZanmZ\XRDLFBGELDFS@54335?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÚØÙÏËÒÍÍÎÈÁµÃ¾±¯¶l^z}¡z
vxurp_[[]``bcdded`\\]]_^`[YZ\borokikposǽÊÅËÀÆ°¶º²²³²±Â¼¼¼º¸ÁÁÁľ½¹½¿¹ÄÊÅƽÆÀ¸»ÄÉ¿ÁÉ»·»ºÆÿ¼ÂÎÃƾ¾µÁ½Ä»½Ç»Ãº´½ÆÄÂ÷À¶¶¾¿»Ìý¶ºÈ»¿¾ËÃÁÆÂÅÉÇÉÆÐÆÂÌȲÇÉÃÎÌÀÅÿ½²·°²§¨¨¹°¥°ª¬zvwjdg`hodV^YJFJFHKAFBFJ@9:658854;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÅÂÄÈÎÒÊÊÉÆÍÍÎÑÈÐÆÕÔÕ×ÍÊÎÅÉÅÇÁ¹Å½«®¦`dux~{ttc\\]^``bcbbdeb]\[\^\^]Z[\^hsqmggnpry½ÌÀúÀ¸°±§ª¬§¸´¶´³³´»¶½±·°µ¯²»Â¼Áļ¿»µ²º¾À¸È¹´»·Á½¸½ÇÁļµ¯²¶»¿´Å·»µ«¹½¾À½±»¶°·º³Æ¼·¯»¿µ·µÅ¼¾ÃÅÀÄÅÆÇËÅÀÆÆ»ÇËÀÏÉÇÃÆÁ÷ý½¶¹¾Ç¿¬µ»µ·¶ytxggebkn^V^`FKHHJFBDAEE?<:566633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐÌÍÈÉÈÊÈÊÄÐÍÒÏÍÅÇÁÆÀ¿º·É¶ª°[gp
zx~vw|sh]]]]_`_`da^cec__\[^\]^Z[[]_lpnifjmnr|¤ÇÀ¸¸µ°«¬§¢©§ª¬³ª¬ª´¶±³©®§¬³»º¶Ã¹ºº±«µ¹»´Âº°À±¾¼»¶¼Ç¹Ã¶ª¨°²À¶¸½°±§±³µ»¼¬®¶¦®¶®»²±ª¹°®»®»¸»ÀÀ¾ºÃ¿ÆÃÅÀ¼ÆÁÇ˸ÅÇÅ¿ÇÃúÄÆ»ÆÉÌ˳¹Â½»³svvki`bliYWW[ALKMJEAC@FA:9:996854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÄÐÇÍÁÃÆ¿ÄÄÃÃÊÂÉÊ¿À¼Âº³µµÃ®ª°[j{x}
z{wn^]\\]_`__dcbcdb`_]Z[ZZ]ZZZZ\enohfhiknrº°µ®¥¤¦¦ ¤ ¥«®¤¨¢«ª¬«°£¦ª´¶±½¹¯·°¨®¸´³¼¸´¼¯¸¹¶²¼Á²Á®¥¨£«±²³¨½ª«¨«®µ´¦¨¡¤¯©²¦¨¨®¦¨·¬±³·ºº»²¼¾¾¾Ä¿µÂÁÇÈ·¾ÀÄ·Äÿ»¿Ä¾ÄÈÌÊ¿¿ÃÀÀ©stsji\aodWVXPHYRSKFFE>?@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÍÃǹ¹ËÁ˾»É¶½Ã¾ºÊ·ÁÃÁ´¶¼¶±¯µ»¨«dmz}~xt~|swe_]\\^_`^_ccab`a_^]\ZXY[[YXZ\_fkfdgehkor
ª¥«¥ ¤¤¡¢©££¥¦§¦ ¤¦²°¶·§±¨ª´«´º±¶¶®¶¹³°ºº±·¥ ¤¦±¨¬©ºª¤§§¨§² ¨§¤¦¬§¤ ¡±¬²´³´°µ¼¶»ÁÀ²»¾ÃÁ±¹¹Â³Á¾Àµ¸¼½¾¼ÂÇÅÃÄ¿ÀÄ xqlbf`ko`TY_HNgOTHFKF<=@=:;;826536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;>97776788666;::;9:;<859<:>>@;È´¶½¸ºÀº½¶ ¡¦º¶«³³»³ÄÏÉËÃƸ·ÇÀÌ¿¸É·»Å¸³Å¸³¿À¬µ¼²¬¥¯³¡£ir
|xusomjiipi_`]\\\^__acb```a^\[\\XYXXXVX[^_dcbegggkmo© ¢¡¢§ ¤¥¢§£ «°±µ¤©ªª¬¬¤´¸·°¬³¶¯³µ¯°ª£¢²¥¦ª¹¢¦¦ ¨« ¥£¯©«¨ª¬°²¸¯¸¹º°¶¼»º«³²¹³½´¶±±¶µ¿¶½À¾Ã»º½{sk_e^ddXTW^IW\KPGJJGA<??@;?<05535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÅÏÈÈÀÆ»»ÃÃϾ¹Ç¸·¾·²Â´±»»¬¹º±¢©«§m~
xrmomkb^aff]]^]]]\]_`abccba_\[[ZZYXXWWWXXXZ^bddfffhikr§ ¢¡¨¥§¢¥ ¡¯®®¯²¡¥£®«§¢µ°²²¬©¯³§º³¦¶¡££¡£¢ª¶«££¦¥¦£ ¡«¨£¤¦«²³ªµ°²«²¹´¯ª¯²²³·³®©®²¸±º¶º½À¸³±zuf_f^[YVSZUK[QLJEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ¸½¿¶¾¼¿³¥£¥±Âµ¶½´¸ÁÌÈƿŶÁÀÇηÀĽ³¹¹²¿¶±¹»²´¯¤ª xxoqtqhechdc\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWVWadecdeddhjv ¡¡¡©¤©«§¯°«£¤¸ª¡ ®¨¶ª§¨±¤¸°¤· £ª§¡¹°£¡¤¢ ¡©©¤¢£ªª±¨´¬ª§³°¥«®³±°°¯¯§¨¨²®²µ°¼´º¸®£zwe_aVYXSRTKM^LPLGHLKE=@>=B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾·½®§§¢ª»À½À¹®´¸ÁÌÇÅÂýŸÈ̲ÁÂÁ®¼»µ»¼µ¹¹°¯°ª¡©|wqilrtphhedfa\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[bcbbcbbcfi §¦¤§¨ ¦ ª¯¦¢£·¨¡¡¢¨³¢¥¨¥°¦±¬µ¡©¢¢²±££¡§§¢¢¤¥¥«¤¥°§¥£«¬¦¨®¯¯«¨ªª³¦¦«¯´±¯¼¶±¯¯ {xsea\[]XNLQHRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847763321./2556;:8;7876<;:;;A8x»»±µ½°»±·¬¥¦¬·»¼Áź±¹µÄÉÉÀÃÆÅǶÅijÁ¿Å«··½¶½º»µ²«¨£t~vncafihfgifil`]\[ZZZZ\]\[\^_\ZZ[YYZ[WUXWTTVURTRU`a_`a_`acdi¤ ¥¢¦¥¥¤¤£ª«¥¥±ª ¡¥«¨¢®©©®¢¢¢¢«©±¢¡£¤¡¢ ¢¥¦£«¥¢¤ª£«®¥®²©¦¥¦¦´¦ª¨³µ´¹º°ª¬sqp`[WVVRFPOHZ\ORJTLSLEGJD8;;=<8667:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:8698598989;9@9{µ´¬´»²°«²¨§¯¹¹³ÀɺµÀ¯ÅÈ̺ÁÊÌȵɼ±½Ãɱ¸Áµ¼À¼´µª¬¦r{tiijlgjlmkjle]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\\]^^__bdm¢¡©©«©¬§©¦¤¥¯¥¥¯© ¡¯«´ ¦¦£¤¡©ª ¡¡¢ ££ £¡¢¨££¨« «¯¤®¸¦£¤£¬ª¨«¯³·²½µ³«¯
tsh[XYSUREXLQ[XMUOQLQRINJC=??A?=75799<<977:79:;<=>;7;;:=67:;8976989:6:=99577570141-+/434988::8::748=8?9~³§³·¯¨§¯®©¨¬·¶«¼Ê»¶¿¬ËÆŸÁÎÏȳĺ·»Âȱ¸¿·¼½»³µ¦© ztvwnmhmmmpggifd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNOQYZZZ]\\^_`e}}¢ «ª¦¯¬¨±¥© ¡¤¨§®§ª ¥¡¨«¥ ¡¤¡¢¥¦¨¨¨ ±°¦±½¨ £¬´«®§°µ°¹µÀ±®±«~rsbVTVNRJGVPRRLLXNJLORGMKACFDD>A75889;9:7::7<=:;@>:9;9:?759:9876958779;85576761321-*.102877;99;8948;8@8´¬¦±·ª¥¢±«ª§©²°¤¶Æ´¹º³ÊŹºÁËÐʱ¶·¼½Áñ°±·´´»³´¢£vkglnqnrkpkdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVTRNNNRWXZYYY\\]aj~x}s
© «¦¦¬¨¡¦£
¤£¢¥§ ¢¢¦¤¦©¦¡ ´²¨³¸¡£·¬ª®¤²²¦µ¼µ«¬±£ysn]NQQLODNNNPKFNNJJNNQIMJAHLHHC>958889:;69:68;99><8:>9;?8789:886857688974577820301*)-/12876:999984988A7w¶¦¤·±¥§¤ª¥ ©¦¤³ª¢²Ãµµ²³ÆƶºÃÊÌƳ¬¹½´¸À¯©°¦®º¯{n__frpvqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXXX[]anptn¡£¢¤¥¢s~{ £
~~tz££ ¡¤¤¢´¯¬°¦¸¦¦±¡°®°¼ª©¯ªwscVMROPMCSNLPMBPQHINSMHJJDKMFKK=749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-02764789::65:87A7x·¡£´©¦¥¨£¦¥¦¦¦³§¥´Á¸°´°ÉÄ·¹ÁÎƽ³¬ºÁ¬Ã¨¢¦¦¶£ }w~fWV_gfighnciigb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTQMMJHNTSSTUUVY[]jjpk}{sNXr _;Vo|s
y{}xqp}¡ §®©¨¨®³¢¦®¬«¨´£©£sn_[NSRWLDTJPMLFNOIELQMKOJIMPFIJ=7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//((++-3854779<:79;86A9y· £®¡¦¦ª ¦©§£©¯¨§´Â¹°µ°Ç·³½Ï¿¹¯®µÂ§ªÅª£±¢}su]PLQUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MNQMKIFHNQQMORTVXZ`lmgysPB?}y`JQnx~
mwuvxpQ|~xvhw~¤£¨©¥¤±ª¡¤¤¦©¢ª¢¦¨vmf^[HQQSMIUMSILKOIHFJNLMTKQQOGJD=768:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')**,4833989:99::::?9w¶£§¡¯¡§¨¥§¨¯¬ªµ¼¶¸¶³Á»¶¨¹È¸¶¨¨µ¶ª²¼§¨~}wpoXMKMMNLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMJEDCINOhYOQSTUZnru}ih\Tt~|
{vxsovqtz~«zzhv{prmxx{{vsrxgu
||© ©¥§¤ ¤sha]]JWPRGKXROJLMRJJJLPHLQLRTMFIB<78;99>=:;<98@?::>=7==79937785675251472/2.,./200/-+(().12721987:8775:<;7v®£¡´©¯ª¥«°±ª½´²¼¸¶º´±·º²ª¬©¨²¯¢~vx|vooiXKHIHGEHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQQSV^t{xfv|gyvx}q|w{ok~}t{|tfv|lohs|myq}qmvqhq~pD
wxz}{u}£¡¥xongc[XXUQJSUTOPNQVKNKOOJROINPLFD<;79;::?=9<:99??;8;=7<9999266856633511224.,,-..-0-+*''*.1362/876966527995y¦ ¡¦°¬®«¨©±¯±«¼¸¬»¾¸³¬§°§¬¥©¤¡
yuq{mupjmjXKFGEA@CDHLLMQRPQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNPQTX]eprl§ªÀ~tyb{xo|yz}omytyjjq~Inhw~mjdly
lrl|nr|inps
{~{wpttyyp|ojoooYVXTRQYORTTRXUMNHMJMOKCINGF@:99;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¥¬°£ª¨µ¯®¬´¿«¼Ã¿¥¢¤¡¡sztotkpldljYNDFC@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORWZQY\_§aisye~omzvtltt|jjMy
g1vsl~~tfeu
gilukq|hqq|n|t~}qqnvmwyujyywkkphfXRZWYY[MPUVYXNIHEJJHGC@GECG=998;9:9<:9;:::@<9:<98>787715234533645031.**+),,++)(+'),,226,,4775478iO8;5n£¨±§º¯«²°Â±»ÃÇ
zqtyprpoodpf_TFIC?<;9:?@ADCEGILOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOPQVLAIQIb¯² q{xl}lq
zyr¡txsu5q¨¡¡¢
vp||t®hgbjnrmpuioXupwm{}mrnp{svnbv
ux~}{sqqm`\]^[YX`_RN[ZXWLHJFJG?CABH?CD=;97=;:;;9:99;:?<88=:8;66651121253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥´©®±®Á²»ÁÅ|nul{txxlwnwci^JPG>?6449;;;=>@BEHLLLLNPQRTUVWXZXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~lv|~
~u¢z~aªzw~s{]eqtz|wmhjbyo
zoxu
zptyxkni]v||
}q}uw{|wpstfg`[[^S[g^WPTX[UGJJDKG?F@DC>AA=;97<;;=<::99;;=>79>9985653244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¦ ª ±¨¯À²»Åº{vk}xs }|p~zgvkRWL@E211366688:<>AEGFGJKMOQQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJh{y|q|z}~v¡¥ªH®¯¯©tm|}hghyn
qGlwryvhmk_v}yzuv|xmpw~ttrl[^^\ccXge\TOPVYPDLKFNICFCC@@CA=988:::;;:888::?>6;>7595773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|}
¡¦¸¯³½³}tp~~}}~¤
x~sx_cWKB60./23123668:=>?BEGHJMNQSTUTTVUSQOGC?80,#[>?84.]ps£UFIKMMPW`XpY\^i
~
¡¡¦»±§»Çè¡¥|qv
ihptqw{v
}nvuf «¢zyyogkx{tle^[[^j^bg`ZOKNWRQIPJDNGCJDC@DDA<:87=<:<:88778:==8<=68756623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfw{¤¡¬¦«¯°¡xw|~
mpj]B@4--//..02234778;=?BDHINQRSRSSTRPOHDB<87/9D><<63.lMPHILLKNV`cggmu £ª¥£¬©¶¢¨Á®ǯxº|¡
¢
lpuwqm
q ¤µ©¢}kjk}uc^d`[gl]ll^WKGNRQMLLFIPCDMFBCEFB=997=<:;:987767;:6=:785456344566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYoouqv~§ ©ge¤~y}
xx~gMR>/..,/.-/000212467;?CENPRTPPQSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} §¥¢¡¢¨¨«¨¬©ª¶«¿«¶ÈÈ·ÉÑϾ pi«©
¡§¢xz~¡{w«²|£¢¦¶¯¨lss}}si`^b`bhd`gf\REJKPOIILFFMCHLFGDBGEA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppt`m}aw}{ªªBD}x|
v^bP460-1/,.00//..0015>ABMQRSQRSTRNSLEE@<>=GG@A@8662<9;FHGIJNOQYm
w£§ª´½¸¤¬¬§¨´«°¶²²»±³½³Ã«ºÉ˷ÿ¸¥¢°³¬ª£
¦¦ £¦¢«¨¥
¤¡ «¡¤©°£¦·»¡£°¢¢£¡«¯¬²µ¢¤ªzz~ibi]fc^dd^gg_[OCIHSNFHLFJGFFHAKFCFFA;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLhcWioXz
v
ÚÈsV|z
qna@E64<3/110-,+-1.-4?CAMUQRSUUVUN[PGHD<>>FHCEA8;<5C;=FKIGHQOPW ®£³ª²ÀÇê³Å¶¬³¿³¸¾¶¿´Á¶»º£¸Å¨¶Éǵ¾¹µ¨£´°±§¯«¥v¤¡¬²´ª®¨®¶»²º¬¯µ¢±«±µ»·µ®´ §¨£§©¯²¹·¸§¶¨¤xwZceWgbbd`af`[UJDDLUQHIJDIGEA@@KDBMG<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AFWQJL[ZQbcWyup}u
{¿»£¼´y
zxn]V@EM<6:46AB764//6CHCQ[OQUWU\VP_UIKKA@?GKFED;>@7D7?BJJEFVSP^¤£±´Ã¶¸ÁÌɶ»Ä½³³À¶¸Áµ¾¯·t±³¥ºÄ¤°Æ¹±³±´¨¤µ¶ª± ¢¢¥°®¦¬§¤ ¬´»¢¨²ºµ¼¿Ì¿ÅŽ½³Â·¹·¿·º·¹¬¬°¥°©½°¼ºÂ¬º¨ª}~lXdbYkfjfW\cYVSIGFLQGCHIAHD>?BBL@@MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALRWSYUZvjo~nzsxb¹¡¢{z|}}wzueP\dGEL;Qca[^SF?;HPEZcQRXXZgYT``LSPEA?IJHEEA@C<E6B>HGJLSZT]®¸µº¸È¿º½ÉÌ»¼À¼·µ»º¶½´º±Æ`u²¤±«½ª¥¨««¤¢²µ «§®¥§¦¥££§±´§²³½¶Á¾ÓÉÉÓÇÃÅÌÂÊÃÀ¾½¾»¼·´¯¸·¶Ã¹Å½Âǯ¹ª¡«¤¨¶s`cc_Xb`jgRX`VQUIEENK@>GD=JA=B@=F><H@796379>489:57045/26389373426?8@>GKRTSQPOQQPJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRKQ]glkp
slrssÕÀµ }~x{|y~s}zkfpuY]\Pedb`ed][XW\MdmURmm_n_XgdUYUJDBKJHFHHHGAI9D?HKTTV\Z[¹À¸½·ÆÀ»¹Êʺ¶¹µ¸¹²·µ´®¶¶du¨p^¢¬ ¢¤«¥§¥¤¬¥ª°¸°½¹ÔÑÎÖÏÉÌÒÌÏÎÊÆ¿¾ÂʽÁ¼ÁÀÄÄÅʾÈ㤻°´¯«¸»{m^a]Z_aZdcP[`SPKCAEFE<@E>AHA@D=:E>=J?37535;=468977022/24169775554D3ELM>51/006:477@IOI;-&**(-./,@M+/54mI0Ht?>BD@CDFKODQ\Yh_onlouu³¬¡
~|s{
{ts{ylmu{hreiligjih`fiilZms¤¼g[oh]ZZTHKNOJKPKSQHLAJGJO_^bfia·Ç°¸²»½µ±ÄƵ°¸°¯»«²±§«·«µ§§N¦¥¡§¬¯¨°§´´ÔÔÔÖÒËÐÓÕÍÓÏÍÅÂÉоÉÉÊÉÑÇÌÍÂÐÑ·¯Ã¼Ä¹¥µºÂ¢pe^^^YaXZfZQ]WOPBBHEBH;AC>AG??A8;D>@H=46655;:687654/10146278875367C5B8?-0-1349=97,.,1;FK=),(.0007K?-46TW0DwC;B>EBACJM?UYSeVshqoyy ª¥}|p{r}qxulqx~q{nxslipmcjmpxiw|~Ë¿Áߧncxnc[a`JPRUNY^P]\NPNTQUT\nmvq¸¬´¦¯¶ª¬¼À°«´¦¤¸¦«® «´£±¦«¬¤§¢¬ÏÒÕÑÍÌÒÔÔÐÔÑÎÈÃÔÑÇÍÒÓÓ×ÌÑÑÅÒÖÅÀÎÇǨ¾·Î{pg_d^XaS^ZPQTPOH>@FABE<@B>ED>??:==<<JA45465<888664412/03526768533;=<E=@11+/249>5901022-2DN3)/3.32=N238C}_2AtD:==I>@CFH<VRMNZu
wlwp}~¡¡y
~{r~zu
ovrks}{v{sxrjsripqzyrz¾Ë~²vrvhak]CZZ[VecXdjSX]]`d^cxz~©£¤¡ ¨¥ª°¸ª¥³£¡¡£¡§±¦j¢
~§°¡ ¡¥¤¨ÈÎÏÈÂËÑÔÒÔÒÎÓÍÆÖÒÌÔØÖÖØÔ×ÕÉÔÚÍÉ××ÑʬÃÂËtpebaYUZT\PKGIJJ@;:;DAD<BC>GB>BB;<9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/--;R017/532FD28>nb5=tM99@I<AD?A;PLFKYpu}hsxr
x~xs{}wznwpmuux}t
|ylvtn}vux|µ;AÅ¥~|ieWICfcecgjdnx[^fhknin ££¦±££³¡¥ © £±~
z~©£}«³¨§½Ãƹ¶ÆÎÒÐÒÐËÒËÉÔÎÐÕÚ××ØÔÙØÍØÛÎÉÙÚÑÖ¾Ë˵zxpf^[SWR[VFGJIEE=:7:@@B:GD?DCADB;?;;7DC75655;0689443341014558754449@>DBC<33.6FTWOQJAJF?1*(.BS39254/7K75<`bA<svV87AH:?C><9QECJTknnpbpqt}~
|x
zyqz{uz
yp|oozq{qnzuw}|u~{¯sX©Â¶pnb=^hrpqpnxvehoruxqz ª ¬¡¥«}
~my|®ª§¯µ½©¾ÇËÉÉÌËÐÉÃÒÊÔ×Ø×Ø×ÕÛ×ÓÙÛÕÐÚÚÑÖÈÔË{}ji\[QTT_HCFIH>A==7:=?;=G=?AAADA>?:86DB755479.566435532323646553457EBDCEB56<FNSM[nfcnskaV>,4LG865434BF4=W_hLux^8;?F<<B<::D?CGRj^mdbfkvrz~~{|~
vyn{{tz vutu}too
t|zv{·Å¤ÁɸwpeNfczw¢xyv{{vm¥£«
z}¡¼¡©¦¦®¨¶¿ÀÀ¹ÇÊÎÎÅÍÉÑÖÕÕÙÕ×ÛÔÖÙÚÛ×ÛÚÚØÎÜÆ}{ikgaUXVVNLDMB;==<8:<>9=@6=?@=?><9867DA6455=80665547745613855564557HH=DJE7925;H>;::7IP]ZRUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Yea][htzylwvz|~~|z}
zzu~um|}~s~|~x}xnt}{}z©Ã¡½£}}r~s¦
{hGq ¤
~¥
¥¸¢¨¡£¯·ºµ¬ÀÆÊÐÈÇÌÏÓÓÒØÓÕ×À×ØÙÛØÚÚÙÙ×Û¸z{zmkgXb\TPOICLA<<>99::99;=6?>><=9:;;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8689?=DRSRX_VXfmmmiqsy{z|{z|{}t
yrzsm~~w
¡n¨
z |}£¢ ¤®
Wr«\¢
¢£ ¤³¡¡¨²¹¬¦½ÂÇÍÈÆÏÌÐÌÏ×ÐÑÔ®ÖÕØÚØÚÚ×ÖÙÙqvih_^YTXYCAHC?>>:49:;7:;;3;;?=>7;9:1:H>:37=@50677255?65;55858:57735HR7GOK994=EJB>1FCLB98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcbymb~omxxzz|
{{v
spzuvvt
}~¦¤¥¢¨r±§¢£©¯n·
ÄȲ¡¥²d¤ÍÇ
ª££¥©¡£³´¦£¼Á¾ÇÅÅÉÈÉÂËÓÍÍÔ©ÒÑÖÖÖØÚÔÓÚÎsie`__PKV\BBFC;A=837;<:8=649:<:82?9:2:I:=67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBcFu}|m~xz~z~vv{ln~y|wx|~£³¨¤«²¡§ ¥¤®¢·³¡ ¤¯¢¤§©¯¤ À£É¸«¢¥²
¨¢
t²¤¡} ¡²®£¥·¾³ÅÇĽÃÿÆÎÊÉÒ§ÎÍÓÒÐÖØÒÏØ»s{w^bWbXQIJOEBCD5>:76:?;<7=42669774=5<5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=89567=:JFDGN[\YJga;Hz{m
y|x
}px|}|osz}{x
§¼©²½¯¥®³³¨£¢°¬µ¢¸¥¤©·¦¤£©ª¤¯°© »»É i¶¸«°¢«½£^ª²|}´«¢¢ ¥¯¨¢¥³¸«ÂÈĵ»½¼ÅÈÈÂÑ¡ÆÉÍÍÄÖÖÐËÓ¢q|j^\U`SQGD?=CAB8?874>F<<6<35345454B3::BM:A;AHB;:@<746<B9?@B874:96>=47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPeHb`cpJ@~r|u~m}}|pww{«ÂÀ°¾Æ»³´Á¼´¬«³¶¨²®®½«º¤¨¹·«¦¦¢¡££ª¯²±ª£¢¥¥£¹®¨À»¬²¹¥¤§}½°z§±« ¤¬¡ ¡¨§¤¡¤°³¦ÁÆ𰻶ÅÄþͧÇÃÇüÖÐÍÄÊvud_\b]OKCL@EF>A?B;:4>A==5=6>333241A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\gG`igZ][{un~{q~zz¨´ÇÉÀÂÌÁúǼº¯«¹»²¶º³À®¥À¤«°»»ª®«¢¢§¬¯µ°ª ª¢°´§£ººµÁ»«¨²¤¤¨©ÃĤz¡ ¦ ®ª¡ ³ ¡¤ §¤¦§¤¯¥¿Ä®©·µÉþ¶Î²Å¾Ã»³ÑÉÈÁµw{o_Z^lTNIDMKKI@A=CD<5AD;:3=8B332263A05IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBg\Me\fTcjyr{~wz¡¨»¾ÉÈÊÂÒÉÊÂͼÁ³»¾§º¿¾¼Ã¸¬Á©¬³»½ª°©¤¥£¬®´¶µ ®¥¢£´½©¨¼Á£¶¶¯«¯¬ª«©¦¥¥uy
££©¥}£ ¢µ¦¥¤£¥¦¥£©¨¢²¨»Àį¥³·ÌÀ¹®Ã³»¾Á¹ÂÂÁÀp{c[Y^\MMNJGDCHBBACK:4DH:;4<7E.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQF7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>kI_XaZdeVx
~ ®§£Ã¾ÉÄÈÆÓÍÎÍ˼·°º¼´¼Ê¼ÃÁ¶·¼´À¹¼¯¨ ©§¶®©²·¬¢§¡«·¸©¥¯¾Ä±½¹³§©³³®¥¬§ ±Å§|}ª¥¡£¢Z¥f£³¥£¬«§§¡¤¨¦¶¬©º¼Ãµ¦´¶ËÁ¸ª¶¬³»¸®¨¸º½¸np\ZVWPGKSMK?AHEDGFG85FM;>7>AJ.32025B55PWN;LFKRLOGGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|hW;=@BFBrFiIRebLF¦¡¨¥¢¯¾®¡Ç¾ÆÅÈÇÎÎÎÒʾ»¶±º»¼¾Î¶Ä½·¹·²²µ³¸²«¦««¸«©¨°°£®¤§¤¥´À°ª¬³¾ÂºÀ¹³§¸³·³®¥®®¤¡sÁ}±¦£ ¨¡ `J¥T°¯¥¯¯¦¡¦ §¢´©ª³½¼»«°²ÇÀ¸¦««±±£¡²²´¤rqg^\PRMEQQPQ;HKIFHAC>9KT?A:=EM07544:B34NWO<JKNUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@CAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}iX;:BC@=REWRsbWFH«¡¨®§
£¥µÉ´©Æ¼ÃÄÈÊÉÈÌÎǾº³¯¹¸ÀÁ͵ȺÀ¸µº±¯¯²´¦£ª´´«©¦®¬¤®¥¥¨¬º¿¨«¶¶¿ÁÀ¿¸³²Â¯·½«£®´¬¸¥¦v¾ ®¡ ¡©¨ ª¡§nv¢¢®²£«©ª«®¥¥ ¥ª¢±§ª«º·½³²®¾¹¶£§¨¥¦¬©©ehb`SLMGHNJUL=MDMIJACD<QU<AABDO18=77?B75UXN?HNQXRPQTJQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=..SaMVHe^HF¬¡»®ª«¢¤¬££¶Ç½´Á»ÃÃÈÉÅÂÎȽ¹²¯¹´ÀÂʶƱÁ¼µ»«©¬¯£¢ª´º¦ª§¬ª¨¯§¤««¾¼¨¬¼³¸¾Æ¼·µ¸À°½¿³©µ¶«¾¤¢¢¼ ·©¥£¡§¥³¢¥¨ª¤¢¢ µ¯¥¦±««¥¤ª ©¥¢¡´µºµ¨µ²²¢¦ª¡xb_a_LIGHMQIMEFFBRJHADGAVSDH<AGQ1;B7:BF79\YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:h]FDCpbGE¨¤Ã¬¥©ª¨¦¬¡ª¶Ä¼¿¸ÁÃÁÈÄ¿ÍÆ»¾¹²°¸³¿ÃȵÀ°¼·¹·§¤««¬¡ ªªÄ¢¥©¬¦¬¯¬¢ª¨¿¸¦¬½°··Æ¶µ¹¸¾°¾Á¶´²´¯¾££¡¡¥££¾¥©¨¬¡¦½¢¤¢©«¡
¤ µ¬¦²§°© «¡¡¥¤¬±¶±ª¥ª¬ ¡¨ie[b^PJHKOLHECI@=OH@;GIH[ROK=HNU4BF9>HG5Cb[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,0Mv\4KZ5,MnW<-=)#zbQ5CKQ9oRF<KxfcXM¢£Å«¡¬¢¤ §ª¬¶°£ª³¶Å½À¶À¼É¿Êȶ¸µµ±´´·ÁÆ·¾±¸µº¶ §ª¬¥¤Á¥ ©® ¤©¯¢¦§½¶¥±»·¶µÃ²³·º¾±ÃÀ¸¸®´´´¢¤ ¡¨¨«¢Ã©¬®¦ ½¡¤«««¦¡X¦¡ ¸ª§·£³¢¡° ¢¤¦®³«©¢¢¥¥¤cg\eaMJKKOFEAFK>=IA99JJN]QQI=LW\9FI=DMI8Hc\LCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWsHE6=ue\LO¡Ã§¥¢³¡²§ª¤£©¬»°¨¬µ²ÈÃÁó¾ǼÅʽ°°¶®±µ¯¿Åµº±°º¶©±©ª¦¡§Â¬±ª¢®°©¤§½·¦¶º½¯·Ã³³Â¿±Æ³º·«´¶ª¢¥£«¡§«¯¯¯»²¦ ©©¢¤¸¡¡¤®¯¬¤¦¡£§´§§´£¯¯ ¢ ¡¦¬°¥§¢
dh\hfKJLKSBC@IG;;F>89NMU^RSJ>O^^=HPBMLI9Nd]LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<v]^?[U^fr@8<HweA4¤ ¨£ª±¡£´©²«¦¢¤²¬®©»²°´´Æ¿ÄĶÀžÊŶÀɵ«µ©±¸¬ÀÄ´·®·º¥«²«ª¦»µ¨°®´²§ªº³§º³¸²¸Àª·²Â¼´Å§½®·µ©§¬¡¥¤¡¡¤¯¸²µ¶ ¨¤£ ·£¤¥®±²¥©¥¢¨¢®²¢¦¯¥¬¦©©«¢§¡zej]lkOQNNT=BANC;:I?77QO]^RVQAW`\BJSHWKH:Ud]NFON[W[RPQX]GAB[PBG>NC9HGHNP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1\cZ33906p[bH05JpiVCWFyfC;¤¤¡¥¿¦§¯¯¡©µª¹¯«¤ª´·±°¹¶°·¸¸Å½Ãǽ¼ÄÂÇÁ¹ÁÇÁºª¶¥»Á÷¸ª²¼£°²¥¨ª¹ª §°ª°´³ª©¶¶¬»¬³²¹·¬¹°Á¹½¾¦Â«°¶®©ª«¦ª¡¡ °®³«°¹©¦ ·©¥¢¢¯±³«±§« ¥¡£³°¦¡©¤ ©©§ £~ljmbnnXRQZTACEU@;;H@7:XPd^PWWDY^^MLRO_KJ>Zd^NIQN[UYPKSWZI?DXPDF>N?=IGGQPB=CFBM?:2D?77547?=95E4+75/251.-.,1>*'+=\p=>1.1e[d@1747gY`F(@8l}h\V:{cC=¨¡©¼¡ª°ª£±¸©¥µ²«¡¬µ½¯³¸¼º½·¶Á¿ÉĹÅÃÁÀ¹Å¾Á¸¯¶§«·²¼¿¿µª®²¸¬¨¨©§»¥³«¢±°³¬ª¶³µ½¯±µ¬°µ±À¹Ä¶«¼¯±·¬¬©¢±¥¤¨£²ª³©ª³§ ¦¤´®§¢¬¬®±§²¬²©£¨¤ ¨µ©¡ §¦£
{gmshps_GYfVDCNXDZ9HB5>]Rh\NY]G[^]OMRXdJJC\c`PLMNXWXPJVVWL=EUJEDAM?AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,+%2+*5K1.'_^aV151=`V^8)C3YU\gK5zfL@¤ ¤¬¶£¬©¥®®¶ª®´¹¦¦°¸Æ·±·¾Áµ´»Å¾ÌŹÃÁºÀºÄ¸Á¹³µ¬ªº·»º¾µ«®±¶¨«ª«««½«®±£ª±³®®¶²¹·ª®²§µ¯´º¼É²ªµ´±´¯®¦ ³¨¬ ¥±¢ ¥¯¡¤¢¥¦²©¡¦±«ªµ¤®°µ¯£§¬¸¢¡ ¥££¡{
{lnyou|aF`jZIHZ[={JGE6AbTiZM\aJ[\ZRRSbaLKE`a`PLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`Va.5(C^Q\.*A/JGP[G3cYTKD¯¨±©¬¥£®®µ©¶´·£«´·Êº´»º¿¾µ´·ÃÁÍǼĽ·¿ÀÀ¸À½²½®§ºº··Â·¬®²¸¦®«§£³ª¯º¤²±¦§¢²³±²±µ±·²©®«²§¸¯µ³ÄĶ©´µ«°©§¢¶¦± ¤±§©©¢¥¥¤¶§¢°³«§±§°µ¬¤¡¬¨ª¹¢¨£ ¨¤¡w
|nqxv|]Kel\JOd\?b{GI8GgWe[M^bMXYWUXTi]POHa]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANIg27'FaLV%-B.=ELQ<3rkKDC¤¤¬«¦£°²³ª¶°¶«µºÈ¹®Á»Ã·³²µÂÃÏÄÀ¾´½ÁÀº¿½³Ä¨ª¹±¶·À½°¬³³ §°¥¦±¥²µ¬«²°¬©¨´º¬´³µ¬´¬©«¨¬©¹±°Ç¾¸¤¹¯©¦§¬°¥££®£©¯¢£¢£¬£ ¡©¦¥¸¤«´´¤ª«¨¬®¶®¢£¨ª ¤´£ ¡§ x~
}}}rts~~\Rdn^NZg]FD[G:NmXb[MabNVVVWTYg^QRLdZ[TKGOTSNGIVS\N;P^JBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Ce;6*HdHJ+:I?3CIS,>k>HI©ª¡©¯¤§£³´±´µ±±¡«½Ìº®Á»Æ±´´ÂÃÑÄÆ¿Á³¾Ã¼À¸¼Å¨·¬³¸¼Á±¬²¡¤§©¨¤±£«±ª¯«±®®«³»§·±²©²©«¦¥£º¬ª°Â¹´¬¹¨©¨©§°¥©¤¢®ª¨¢¢¬¤«¡§¨¡¬¦¢¬«·±± ©¢ª°¬¦§©£ ¨ ¡¥
}w
usrvl_Y`ncQsr\K<|F?WuX`YOc\NUVUWP\a_TOOhXWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*35>10485(5/*,.30;),,'%234$,2-860)(1<^K0.IgDF8<B05EKX1@\@MF¬§¡©±¨©°¶¬¸´®ª¤««½É»±¾·Ã¯°³ÄÄÎÎÿ¿´ÁÄĺÁ´ÉĬ¯·®²ºÀ¿´®®«¥¨ª°©¦¨²¦´ª°®±¯³¬³º¤¸³¬¬§« ¢°·«ªº¶¤µµ£©¨¬¬ª¬ ¨¦¦±²£¦¥¡¡«© ¦£¢ª¤¬¢¦±·¬¬¢¥¢©ª©¡¥¤¤
¤£|{u~uw¤yk^`ngWfdN@gLDbzWbXReUMVUUTO\]aVKNiWVVIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06XZ.0JgAA<<C+:JO^4DAIHD¯¤¢©¯©¨µ«¶°«¤«ª©¼ÁÀ¸¹³¼µ¦²¯ÄÉËÑ¿Á»¹ÀÀºÁºÂÄ®±µ²´»Á¾³²¯«¬¨¶ª¥°«¹®¨°°®±«µª¶µ¦´¶«¬¤©ª£³³¨¨¤³´ ¶®¡©¨«¨«¦««¨¹¶©©©©¡©¨¡ £¢¦¢ª¦´®§¥©¢£¥¦§ª¢££ ~
£txu{x~prggqx\atiO]VHmyUdVRcOLVTUQOXZbVHPjTVSGPYUI>IHOQPxMNV=<KD?@A<@CUC9AK=5;E13;97*4:=+-341*8**+*,)*(/*&)%3;,$2)2021%/2Rc02?f=NX?C,?LT_/Ik7QE;¯ ¥ª¬ª¤®³´®ª¥¯©©»¾»Á±¯¸¢µ¯ÉÇÈÐÀ¿½»¼Ã½ºÃÁÀ¿¯±³²¶½¼Á²²³«´©¥µ¨¤³²¸¯¢µ±¯±¹ª¸®ª®¶«ª©« £¡µ©¡¯²¡µª¨¨ª£ª¡¡¬¨½¯¬®¬¡§§¬¯¢¢ ¨§§©°¨¢¬¢¡¡¢¢¦¨¥|
¤
¡
xs}txz{tt{j¤vi^elug|RWp^KxsTdSQ_MMSZgNMWYeYGSjRQ>BNQaQ:IHLSIqQLS;<I?;<=;@@W<<>H73CB15:93-5::)-31--6)(+-,52#2)',%.;.&1.0-14%,0Mi:38_=ad?F1CP[[+HP;YC4±¤¥ª£¥£¬¦´³°©¤°§ª¸¾Á¼°¨¹ª§®°ÉÆÈнÀ¾¹¾¾¼É¼Â¹±°µ²º¼¹À³´»¹¬£µ¦§¬±¶¸²¦§ºµ´¼¯»¥µ«©¯¤¥¬ª§ª²¤´©ª§ª¤©¢¨¨©½«´¯©£ ®²¢¤¤¥¤§ª¥©¡ ¤©©
}~
¢~rzy~|hw|{uqr~izd`hcr
{mhy]^VCX{mTaPRYKKMpt]IZ[hZEVgOC>KNDCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KI1%90%,,09/,,+6'17#-/GjI14X=fbAJ7GS`U*=<F\@*°©¥£¡ª¤¶²±¤©±§¹Á½µ°£¹¨¨°ÃÉÈÌÁ·½Àµ·¿ºÈ¶Ãµ´³µ²½¹º½¶¹¶¿¢³¦ª«®µ·´ªº»¨±¿²º ¯´¶©¬®±£¥§©£¤¯¦¯¡ª©§¡©£¨ »§®±® «¢£¬¦¡¢¢ª¢££¡¦¬{}£|yl}vyxb{zrpqsxjujgchansmbjp`oB]ykV^NQQKIMSYVM\^mWDXaO^PHMDF;7HEKO<rhJK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*L>*49&'.34.0+/4&,:$40AhZ13S=e_DL6KVdN)=3R]=#¬§£¡§£·¯¢¯¯©«¹Âº³¹¯«¨´ºÇÊÈ¿·Â¾¯´¾¶Ä¶Ã²°º±²À¶»¾¸©¹¸½ª¤´¦¨ª¯¸°©¹¼£¾´³¡®·µ§¦§°³ ¤¥§¡¤¬¨¨ ª®§ ¦¢¨°¸£±¯¡«¡¤¦¦©£©¦¨¡ª}~||¡y
}{sp|qst`yxjopqpjsdzlhfdbf`[rjqMNiXZMQLKHPRQHM\_oTEXZRgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZgH*?0][5(¥¬ ¡¤¡·ª°£´´©©ºÅ¶²® ·¬°µÅÇÀ¶¿Â¹°µ¼¶¾»¿¯¬¾°³¿²½Ã¹©»º¸§¨µ¨§«¯«³¯¥¼¶¤«ºµ®±¸¯©¥§¯²¡¤ ¤¤¡¯¦¡£¨¯¡ ¢£¤¢¶°¡¦°««£¯ª¥¨¤¥©¤¢©¡z}yz
~
zzpqvnot_xwemlljjofrikfi^dt`[kviZJ^\XOOKHHRUG39^^mQEXVYeMHIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<"8R=*113>D5,-'42*;+139cm74GAf[HTDU]hD.<2dW,2¡¡ª¤¡¢¡·©® º¸¥¬½Å³°®£µ¯®´Ãü³¿º·±³¹·¹·º¯®À³´¹¯¿Á¸¬½ºµ¦¢²©§©²ª± Àµ¤§µµ¨²¼©§¥©¯¬£§¤¥¡±¥¤¨©¢¤£¸¨¤§¦¥¡¨¨¢¡¡ ¡ª £¨¤yz
}z
{w~{ltqllsawuiijggohhicfij`kcjh\e{c`StT\[SLJGIOS@!*i^jMDWU^`KIGEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,?0-N?.+-7,1195,&.5-80576`tA3CDg[KWGU`hB379gP'2¢£¤§£µ¬§ªº·§¬ÄÁ¶°¬£µ®§®¯·¿¿¼²Á·°®²¶µ¸¶¶ª½³®²±½¿¸®¼»±¥¶ª¥¥³¨ªÀ«¨¥¯²©¬µ»¨©«±¥©¦¤¦¢¤©¡¡§¶¥¯ª®¡¡¡ ¦¡ ¥«¡© y
v}
{s}}fxokjkguskcgddvcefffjjcksZ_Y]mdaNiXZ`VJGIKMRX>9_liHCUS\[IHFFA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=+*,0B*JK./*+3722(57$+7.72685]yN2>HiZLZJVbf@:3BhH%5£¡¤³±¢±½¶¡±Æ¼º±±¤·¬ª®©¹¼»ºÀ²®®®¶®²¸³¨«¹±¯®³¶º¶°¸½¬¦µª ¯£©®¢À ±£®¯·®µ®¢§©¥§¥¥¢¨¬¯¥º§®¢¡¤¤ ¨©§©§|t
|
p~fymhkigqrk\hcctbfhjnlgjjhn]lltpaUcideZIFLMOXQQVaeT@VSYUFHFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24;6#3*)6.55465Z|]19Kj[M[KXdd@A1JfC'4¡°¡¨²¯¸¿¶ ´Â»½¹±¦¶°¨®¥·¸··»®¬ª«¶ª³¸¥³µ²®©°·¶±³µº¦©µ¨¨¡¨¬§¾£®®´µ¬±¯©¢£«¨¦¤ª¢¤£«ª©»§¤ ¡k¢p£u©§¡xni~vql}p^cagltw~gguheW\hsnNPjcgs
g_dfnmj]`aeNKD9FTg^JGPPTUKHR`oteFZQUPFHFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,+08>G601.*.*/568,#1'214:175Xl16Ok[N\K[fb>G1Qd=*.£° ªª£½Å¯©¸Â¸½¼§¶°¥«£·³²³±¹©¦¬´¦¯µ¢¨¸¶¶¨§¬·³®´³¡©³ª¡£¥¦«º¥¥¯²¶®¤©®«¬¥¡ §§ ¥¥§§§ª£µ¯£¢¢£ ¡ ¤¥ªrx
¡vif}rx¡o~}¡ |tvllheczkqaS
mcliqYjpoX^i[ll[qnzr
gZ^GN?G_MERVVQQRWTg^MWIRSPFGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82).1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Wa70(¦«ªª§ª¿Ã¯±º½·À¿ª¥·°©¥²´®¯³·ª©¥°¥´³µ¶´¦§¨³±²¨®ª ²¨ £¢¡¡³£¤¥µ¼¦¬§«ª¬¨¥¡ ¦£¥£¤¤©£¤¥¦¡·££ £¯©¡
±£¬yÔ¨ÁÇyx±¥·dÀ¿yy|Êq¼Åzrµ¦»{l±«°xhkX±®nei¼¼nhzorØ~Skc¶²rt¡ªWOWbPVNFU[XQPR\W\P@\DQNEGJ<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww21Tk\O[M^g\>L1[]41!¦§ª¥²¨±Â½²µÀµ·¾Â«¦³¬©§®³©¯¶´§§¥´¥§·®³²¶ª¥¤§²®®±¦ª§¤±£¢®«¢³¹£ª©¢®¥¡¢§§ §§§¡¦¢ °¢£
¯kjª~gdp¥q®¡¤~x»}k¡v±_j´[¥f`fzfjxk©d¾rg¦u±j|±xtcmm§n[ EhfEu`~h|¤§Y_«ixyj§7J¯\XSld[KNX_\WV;NOXW/ITTJDFF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:5/'$203B/=;Uv2-Vj\OYL_gY:M5_Y30¢¬§¥£¤ª²·¬´½¾°¶Ä²·ºÂ§©°«®©©°®£°º¯£¤²£¨¸¨³²°£¥ ª¯¬¯¦§£¢°¢¬¥¡³²¢«¢ ¡¨£¡¦¤¢ ª¦¦ ¡
µµx
©µv³·~¨~l¦{w«gk±[«{tqx °vwqkkl|N¤XHcc~ch¦`ysuS^P©mcq~b.Q¡o[Skh`LK[dX\ZB>±yXXA#MhFCEA@A19>88:84;:9<9:A:E::;6:CB8=?KNG:5:AFB@AD<FD;0201;F,0.940,.(/3,>831/2-D1<<S}n3+Xj\OXM_gX7J8aU50³¦¦ ®©§²¬©»¶Â°»Â¸¶¿ª¬®¦±©¡®»ª §´¬£«µ¥¦³³§£¢§ª²¨°¨¥¯¬¡¤¨´®¡©©¨ª ¥§¢ £¤£¢©¥¢ Õ¹p°Â~Å|Ö»|¤¤{¤¥z¬yV¯z~j¹Z¹v}¦|zªy{±nt¼
oP¯§ÅQ zc`©bssm`Sµ´È|c¤3Bv]PjidP@XgZdaJHNmM[ROYfYCD?E?0=<59;74<;8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DC./0483+-).323971#%5*>3==Qwj6*Yi[K]O_fT7G:aQ71%¢±¨¨¥³ª¥´©¤¼·Á°¹À±µ³º³µ§±°£°²¦µ§§¹£¯± ³´° ¤§©°©´¨¤« ©§°¨¢¬¢¨¡¥¡¡¡¡¡¡¢¦¡¦ § ²nhµq«n¦r´sr¶{¤£¡¥~°vÒÒv\®{
¤oª¦k
}}{±sy³etofRÈZÂ\yb_`vtb^YÊo¿uMKµSUÆdTQjcfXAOk`lhPUGI8=VQZWXIC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>HI91746@>/.24252-).26,742&60;5:=Pqh9'Wi\BOT_eP5G=aM620¡¥¯¤ª¼¦µ¥§¶»¼²º¿·µ³¹º³¥´´¡±±¢«¯¤¦¹¤±°´¸ª ¦¡©¤²¨¬©¤¨¢§¥ª°¦¡¥ ¤¦¥¦¡¢ ¡¥¢
¬{w¨v£©o§¡¢®
³\r³R®}¤q×}x
~w¯x³aelZ°XKuyf`^vwhk]¯wxl5yÈ®²_BTo^g`EPm_pmVUM.echRXQ;AD@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@>V_cN6GC`I:99¸°´Á¨³¨©²º·³¸¿¹·±´»´¤¸³³¬¨«§µ«¨±±«´¤© ¨¡¶§¦©¢¤¡¢¥¦¯¦ ©¢¡¨¤ ¥¨¤¬¡ ¡ ¦©}}¥x¡ªp§¡£ª|xo±Z¨ ytØvt¨£|{²^d ~l\«[Zhgªdr{ks]¬Z koeOJC¡\[Lt]bgM[a_rs_JV6JXHE=GFAM35A8.;>05A78@<6=<F?:<6?=B7.HVJEAH6KIN@IK@EN::@4.;>102144+*05/7,&21($$6671<PeeA&Uf[?2U_bL7FI_C2?8¡¿«´Â®¬©¦´°·±µ¿¹¹±°µº©º´¯¤¤§§ª°©¯©µ¬ª¯¡¡ ¦¥¤º¢£« ¢ ¨°¯¦¨¦£¨ª¦©§ ££¡¢¡¡«®mr´r©v§s´xs³¤£¤w¸o{¢jk¶Z
ei¡¢§mr´t²j
ku³af¢oj\_M¡|Rs£ly~oq\¯V<weTon.\§OcSkebmZc]ap{cTZQ>>mo3CB@?L9!7@6.;@37C58??3;<CDBJFMIF62JTKEBI6IJP?HNCFP=<E50;;010/75,+,426/#00,,289/9N`eD'UdY>/U^aL5FM^81C8¥»¡²À®®««§·©¸¯µÀµ»°®¸¶ªÁµ¨¨ ¥¤¡ª©§µ£²¨¯ª § ¤«¸£¥£ ª¶°§¬©¥¥¬¢ª²£¦«°¡£¢¡©«Ô»s°ÃÃ~Õ¸x§z£¶u}wv²`ºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¡~tª}¾ns¼t²uxnqn¤t½^w}[ay¼kZV\jy^jaegbmxoY[YCA@r@CF+5G"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7B9§¡¼¢±Ã°ª«¬±§¸¯¶Ä±¹°¹®À±«£¢£¡©£ª²¤µ¦¥ª¦¬¹£® ¥£®¹²¬£§§¤¤¬ ¨«¨£³£¥§¢¢£¯ ©
µ·xµwmknsoytÁ»½{²¨pt¹|{|¤»¹½uz´£tvut°ufjµtrqw¶^z}hymyc¬pu
Y[§jEeZTf`c^cQhgqmuBMPLD:ZM?J3;0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7LT_G'SbW8*O^]=+:VV'>;<§ ¡¿¥´Â´¬«¨¬«©º®°Å®´²¶¦´¸¬©¡¡¥ «¤ª¦µ§§ £¬¤¾¦¡ª¡¡¨¡±µ·¤¤¢¥¥ª¨¥¥ ¨¦¦£©¡£°¨§¡j~i¥xr}tzd{½¾ÀºoqasjZ^ack`dmwbke^`cqir}
gj~rtx}~b[wthP\n}|kXlzsJJopNtLEW]gaLZXgc_O[nuirRODEN;HH=M?2,2A?8/5?C<9;@;=C>RVVWYZ[\\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7JR_I'S`V4)P_L(3=[O'?2>¨ ¨¡Â£´¹µ£¬¥®§§µ±«È«°²ª´¢½±±¦ ¢¨¢¬¦¯¤¤µ©¥¡¦¨¾§¨¦¤©¨¯²¿¬§§¢©¨£¬ £¢§¬¢«¢±§ ±¤¡¨¢£¥¡gn}qw
µª ¡¡z¤lj||uqxyvv|kstuev}wkozm`c]phMXZfj`WZpznmfSOFS9OYNRO(+:KB635=@A9:C><ENSSTVWXYZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J&R^S10T^:+=8\K,<-@³¡³¡¿¡¤±²· ª¦²§¥°´ªÈ«°¤´¥À§³ ¤¤£ ª§¬££¶«ª¥Á«¤¢¢§¨§²Ä¯«ª§ª ¬¡¡¤¯¦¡¥¨®§ ¯ ¡¦ ¢ ®|ª¨{£f¡³¯
v{}vyzofzkuysis{vkudyf`jecdfkYl{pij\SLPD_TF@?>,4@F;45;>A;<?>>HNNOPSUVVXZ\_aca_^^]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMMD/T]Q05M[17E4\G5<,@´ ¹¯¿¬«®²± «¦±¢¬³°Ä°ª«¢²¼£³¦¢¡§¥©¦¤¥²´°¥®¾ «¢¢¨ª«¢³È³ª¤ª¦¨£ª ©¯©¥£«¢® ¤¯£¨£§e|e~dylhk{¤ªje~geeih{¡kh£wkj£sln{zXe^^mv\hswwnxxsmytv|jY^lud]sik|qkc^RNWJdXAJ4>G7?FD71<=?AD;;DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AJ[J/7ZO6)EY/DO1YC;?.=¥º¼¹¯¬³±ª¥¨°¦°¼±©¦£®°¬ £¢¦«£¥¨©²£¢¯¥¶¹¥®£¡ ¥{¥¢¨´Ä¸¤¢§¯¢££©¨¡ ª°ª«¤ª ª§§ «¡¥°¤ª ¤©~½r´rhx¹Ä¸q¢£z¦sª|ËÀÀ»q¢}À½ÂÁ||ÃÀ}k¥²noÊzwvzyqzpw
ynxcf_yd`ec^thldbXLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>I[L*#BQ/#F[3PY/UAB;/8£¹Ã´°°À©¨£¯©°®¦³´¯©¥¦¦°««¢ª§¢¬£¥¨¤¤´¤¢¦«¸³§¯¢¥¡§¬¤«ÀÀ± ©¯©¡¢£©£ ¡®©¬§££§¡¦¥¨¤¨©©¬ ¤ ¢Îxz¤y_®^§¢ }§t«¯^cª{§
u³c«¡³j
¯t}·aY£Ímu{Ú{p~v~e{vvk|n}
~marlph`_yd\qhjdf`RTRW]KOC5AHDD8>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-K0';\;L-!P@F4.1ÂÀ¿µ´°¸¤ª¨³«¦²¬¬ª£ª¦¯ª §¤¢¯ ¨§£¥¡°¬§®¬±ª¨¬ ¤¥§£®¤«°¨¿Ç³¨©±®¡©ª ¯§«©§¨¤¢«¬²¥¢ªª£¦¤¡° ¦ q
t¨q±|q¬~¡¥wª}s~«v{|~ª¢~«{{VÄzoÁ}muomeveoawnromfpuuqagme_oiingdXS\aYQSC9II@C<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1' '45-&7=WJ-<'>1)3V@F!G:C1.+°ÔÆƲ´ £££¢¬¯¶®¨°¦¨ª¦¬««§¢£¡ ¥«¢¥ ¨¨¢°¬©§®¬¨¦©£¡ ¦£¯¬£¬µª¹Í²¦¬¢®¬ ©²©ªª¬«¤£¬¯±¢¨«®¥¥ª¨©±¢£¤¤j¤uz©tz²p¦q ¤`aR«®v¦z{f£¤£}©®_}©U¢z¢{ïÅr¯³³¹qb©¯Âthmpnyxypmfeeqpf|jc]W`iXXULLQLCCAB;CA@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ('"+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÃÉÖÕ¿¡«§¡¯¢°´°®©¬¢§¦©ª«©¤¦ ¤¦§§£¬¢¬¡£¯¢«¤µ°¯ ©¦¢¢¨ ¥°¦¤¨±¬¶È²µª«©¢¥³ §¬¬¤®ª£¢ª¡³¡ª³±¡¨§®®¶¢¢¦|ªlu«y|°o¤Ò¸´¸É²_`©£ zxªÉt¤¨©ÆÇxf¡¥s}¯]p´b°uK£m§Gd|qq{u~|o[fjrpek^aYcm\^YINLKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75685/)(%&%$&),4ENPPMFKJVF*L0/=-5OTQ;<F2,$§¤ÀƸ©³¬¥¢²¸¬ª ¥¨¥ª«ª§ ¦¥ª£®«¦ ¬©¥§µ¢©ªµ²¬¥ ¥¬§£ ©¦®¡¤§©°µÃ²³ª¨¤¡£®¦¡¥¦«°®¨¦¬£·¬¡±¹¯®¦²²²¤§¢Nxz£}¤¦¸{|y¹~Ìƶx¡~v¥¤¨°
¬}b¥l¤p
}r¬`£sq`¼}RUt£{~u{s
q]nnxrjo[d_hnbd]LLQTAIHFI:9K>B108866877-*5==?BDGILNPTVXYZ[\__^]__\ZZZYUSOH@882.,*.+*'&?QTVWWWYXXWUOUF<E3:P[T6?H,- ©«¤«¹ª¯ ¡¬²³¥ ¥®®ª§¦¦£§¡³®¢©§² ©¤¢µ¢¢¡©´¹£¢¢¡±§¥¡¢¯®¤¨¢¶²Ä±©©§¢¤¥¦¤©¯¢®¥¦¯¤»¬¡¶·´±·°²¦®¢
ѵ÷y
¦x¡w ¥qª´nrj£|s¯¥¢¦mp²\¥szl{|m©a£qqbs²¸hw¦}x}ynjyiyrnu^ednmfg`J[XX<HG@U3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^__][ZZXURRQF:2230/++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH$)%s¿¿¼º´§¥µ¡¢£¨§®«¬¦¢¦ µ§£©§±£¬£¤£ª´´¤¤©§¤§µ¡ª¤¶«Ã°©«©¡¡ ¦¢¦¤¦¬¨®£¥¦½¬½°¬¢¯²¹ª³¦¨±¢¦y¨}|°w¤¥m²o |¡¨¬
®
ª¡¡{~««xz¯]£}¦§d|sj¯]¥kp
]`[ m¦{{lnc~tnz`geqnhghBZa[>KT3U8BBC7$$3+''3, /6674359@CFIKMNQSSSVZ]_a`aaa]][ZXSPONI8052.*,ATVVVTTUUUUTTUTTTVWWXVUUQHFIJ#((½©Æ¶Á´¬ ¸¥£¤£°¯ª¤¹ £« ¯©®¡«¨¤®±¬¦¦¬¬¡¡¥¡¤ ¨¦¶©À¯¥©¤¦¥¤¤©¬¬¤¥ª¨¾¤Ã¬ª¢¡«²¹ª®¦²§¨v¯~
}º®e°e}¡¦¬°
¦¤¡¡
[lj³`{{±mgo°[}´\¤kÈ¢d{¼XvµZ²}R®z¬X¡n¨|z~eu~bxt|ajfqmfefOVd\BU_>J(>:=4!",%2. *1/04579:<ACFHJLNPQRTWZ^`_`ab^_\[XUPNJFC553./@UZXWXWXXWWXWVWWWWXWWXYZZ\\XWWGB;Ò³²·½º³Á³£¬¦¤¶¨ ³³©£ µ ´¨ª¬¯¬¯©¢¯¬¨§¡¦®¨¡¤££¥£©²©½¯¤¨} ¨¡¨®¨¦¦£¥©» Ʀ¤¨¡«´µ¬®¦º¬««©£¯¤¸Ãº§¬¯¦¥ª~սªb£¿½}~£×º¸µ
½¾k£o«lz²°Çj«°½¬xw¢¾¼s§{{d~{dgy{`kekjbPa[Sj\@UaCN)=:4/$%2 $(0496678:>ACFGJKMNNQTW]a\__a^`[\YTQMHC?<A?5=SYXXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ»³´±¿¹²½²¢®¥¥²¦¥¿ª¸²¨¡¿¦§²±º¨¯¥¦°¬®¥¢¬ £ª £¦§¡¨¢¡¬©¹¨£{¦¨ ©©¡ª§¡£ª»¨Ä¢ ®£ª³´ª¯©¹¦suª¤·d pgmow¤u®pq¨£®¤rmmlfxonqzjqigqiigpd]bjoY]g~w¦_aqnee¢ ~wgxikyydlcflbKdXJkZ:QeER'K:+# ",)-2.5:4579<?ABDEHKLMOQSV]WZ\``a]][TPLHD=:AB7MXZZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨³©¹¸²³ª©¡®£²©¾²Äɾ¶ªÀ¬¬£¡¨¬ º£¤®¬§®©
¦ª ££ ¤§¨£ª ¦¦§°º«¬{¥¨©£±¦¢«¹¯À§¤²¥¬°±ªª¦¶¢¬¶ ¨¥¶£©©³£« ±¢ ¢ ¥¡«§
¤}g~tvtq§lz¡£sjwqxw|zjldcodUaY@j[HcaOY+F=+'!740.!%2(*699469;>?ABDEJKKMPPQXTVY^`ac]^UQJED>9=@ASX[\ZWXXXXXYXXZ[[\^__`^^^__```_YY`¥©ª¥´¶®®¢°£ µ±¬Ç½Å»¹«¢¦¦±¨£¶§©µ§©¢¨¬¤§£¨¨¦¡£§¡¶»¨«{ ¥ª ¶£§«·§®Á®£¶¦¯¯°¬¨¨²·»¥¤¦¶¢§©£¬¯¡£°¨¯£ £ª«¡ª
}f
uuysj
|¢£
{sszr|jod^pja[`YncP`dPZ:GGE>2==8/+&+)&&416668:==?AACIJGJKLMSSSUZ``i`eVPJACB:9EMV[^^[Z\[[[\]]__]^__aabaaa`bbbdb\[c¤¨¢¯²¬®£©¦§µª¥´¼¯¢£z¢±¤¥±©¹§£ª£®¢§ ®©¨¨©º¶¤¥y¢¨¸£¯µ¢¯¯u¤½£²wy©°¹u«£ªd\bv ¤}n³£§ª£esyp¨l¢¨e¥wjvp{aiZuhhs{¦fzyjoykqe_vplkh[gebbpS\>NNNSG>@TD91/&4:306678<;>@AAFHBGFIKMTTUY]`hfgWQJ<DG<8UR[`ab`^`_`aa_\]__`aabcdabaaedchd^]f¦£ ¯°¬«©¥¨®£¦¤«¶°²§«¦¬t°¨«§¹ ¤¬¢§¡u¦©¤º´§ uw ¡§²µ³»§ ~§¢z¢µ¥±ª¯£y¬¢§©§
w¥z§{²z cympyp
txgt t}¢
k
lx{qqgdxojlj[ekjet\^ITLQ@E5.ZTU7)!09=>743568;:=>>@DI?JEJKGSX[Y[aahfYQH9EK<>aV^bdfd`aa`bb_]`aabbbcfgcba`edcgcaah£¦®«¨¬¨°¦¦©¥®È¾±¢§©¶¬§¢ ¾ |¬¡ §¢¤º²§
pu¡¥«´´Êª·
¯°¬©¥}¨r{w§h¤y´¦¨Â«¡r¥}
±¡}¡ |
mr
yq|uÅf©£k£q
hwt|whhvqhhk^dpmgmXgG]RM2D46Nac7&3<EGD:64658;8>==?BM?NIJLCPZ]\Wa^jm\QE=LM@JdX]cfhgbbbbcc`_babccceiicbbbecafcbbi¢°§©©¦«£·°©ª¦ £¤«¤¥«¸£°¡¨¥½¡y«¡
w¤£¹®¤~bm¡¡¡§~¡§
ª
£©£uk¬uM«x¨§©«}¡{z§ikg¶~n`dY{dhr}yl]|m_Sp\_ky`Ye}p§ªk£nr¥p
jf m[o}gZ`bWPowfmtskjo^kpmliXiO^XF9A4GD^k4,ICRMN=84859;6@;;>BO>QRLMBJ\]_W^^cv`MD:MOMTb\\ffiibbdbddbab`bdcacikdbddgdbgeach ¸ ª¤¦¬ ¶»«¢ ¢¥®¡®¶£¨¡ §´u¦
¬¤©¦±§¢in¢ ¡¤£¡ w§¡§¨«¥x|~¢ps{ym¨{¢sv¦f~w¤_z}s¢n·´ºtµ¨dƸ{p·q¤bs¬«`}i³~n|q£lr£t
¤`³q}´ts[²jbotvqioXklrrf]i^cLD=D6QAYq3=SG_JR=<395::6D;;@JP?UMNQ@E_^[ZX``|dHC8LWUVcaZefkkbbeadc`ab`dd_`cknccddhdbgfchh£¸« ¤·´ ¢££¦®²®¬ ¡¤«x
q¡}¨ £©¨¥~k{~} w¢r¡¨¥¦©}~z z£xt}¦¢d¡|lhn{§}rht«tªh]
vhªj¸f\¨p`^§vu~huom§]¨~x»k~ª[]³g\nrzxki\qjxyc`fXbBQFO7VCRo5K[Z_OZD@151;;6H?:CHU>YRY]>Db^V`Qac}jEB9N[]YefXfgnmbbe_aa__``ec^bdoq_deekecihgkiªµ§c«¹±¯¬¦©¯±©£¡ ¡¤jr{z£©£ ix{¢ ¡rhp©¡¦¦{°£¢¸w£³¢¤y{ª¢q¡|
¯µ}k¡x~´££«¨|}tªZ]o{xbL~zz
cyBLY¢jr|mux±³§wns}ptk¤]vHedatq~~nf`liv{debR_W]UW@ZFQhDSW\bX^ID=B8?B:IF8LEXAWR[VDFb\Z`K`m~rEC<U_bZfjVghmobfg^aa\]^ahb_ecvl^egfkdflihki°®T^ ¦³¹²²©¢«ª¢¬¤¢¨¡woy
|r¡s¡
©|l
q¡x|£ £}µ{¥z©|§hwm~t¡sq|p®}¤¦£o^¨gu£co¥aÓ|{xrsc¢~£s¤vk³`sª²¨¼wm~¾¦©´^n}qnr¢r]¤gs¦ah¦mÔ}
pz{l|xsn©¤gaezqkgfdnuwg`cS\fQQbIWJTaWS[ej\eQFCKMJKBKE8O@QNXSYOSQafejRcwywIFEc]eZhjTihjocjg`c`\]]_hbahe|d^dgdkdjmghlh°«T\K~©¯±´¯³£
© ¡¤¥¨ © {p}h}wol|¥«
zvnw¢{£¤³¡¢¶z¬§¤®¥p¨
{¤¡r£®¯¤¡v´µµÉ¡s`©my u¡w ~oLf£ps¤{ztak~ kqd_q}tizi³µ´Æ¦s~zk«v
mvxj{urPE}´^jvkyfjhbtupnV^TYiPSiJVMYTV]hknVhWNKAJMKHJOAQKPecjmeussy|nu{{TPOl^h[kiRjhilglfce`\]\^ibdik{_]dhcjfomeile¡¯¦f?¡²ª®¯µ¢¢ª¢£¥¦§¦yjye yui
z¦©z}yp¡y ¥§fnxl¢d|q¥wpg¦z¤zrv¹n¢b}¡mriªku mn¦_ihu¢}`uobh e~iuocfmr¢Z_[b¡m]n{~srd¥mw¢dg§hsp¢oUo _f¨T^TnmskrmpikyskoRYWWgZTmJYO]IXiisjYkVQREV\LXSaUik_wt{}p}|r{svv^QrbgbpgPjhhklnhdg_]^]`kcjivu]\cicjjslfkmc¤¦zetm§®£©°±¦«¦£¡¢¢{qh|st}{d|¨¢¬~si¥} ª¦¦x~¥²¯¥wx©s¥n¤¢»n}¥¯|¥zr¨ f~o«cx¨l©¢vwª¦j°kv³©kmm`~«ªv~¥v}¤ jw¬g¶tw¾¤Y¦«aurtq|tqcj~nhlSW[Vab]kM]R]J^mnv`[qY\`[ftenorbqt`wz~yrys{{vbxdcmsdRkgholrjfia`^\bkbmlzo\\bibljwmglnb¥ª¤©ª¨¦®¤«¥¥©
tzp
~tt
rm}{¦¦¦
vol©ª¢u~y®£q
x~{r§q}}zx{~~v {}k
[yyrzphn~quqe^wtruoynnm
^vhxe
©}t|jpv}vnmgsy{x
\kXyinxrroxxp]lnigV[`W\fkdVbU_Q_pxxlkvfjkkv}qrusaoubt{xuzuy
}{mldxn^Wnghukxjije\`Zcjemqtn[[bldllynhloa¸¨¦¡¢¦¤¥«¢¡¬¡§©r|}~
{trp
{}
y~¥|§¡
wr
©
¨ª~~¨¦woyn~¨
p}qkp}hm]sqtkvtYrn}~j]jd{
`ixz{u
gwkapqv^r¦
enwqzqghe{z[\jgnv[{yxunssf\mkkbZZ_ZYlq\_aZ_]ft~ztptckkk|}s|xudmuhm|~vz|{zz~o{}s~ysiT\qiluougkhd]aXkhlkqrmW[enlgsyohjm`ª°¡£¡¨£¢~ ¢¥{
}s}v
qor~z
¡¦¢x
z¬¡«¡¡££ª¡§¦ {w§~²¦²¥k|wxe|w|yt ~}uos~w¦
}ym}zjrhatp}zwwpwt]^ohn_^Z]]ThrVc\\blhu||sopdkki|nyrjpplg{rx~
{m|yx{}zyNdvjrmpzekecb`[tfpfrqmU]ltmiyzqgikd¹¢¡¤ {« }y{nxs~mk~z}
¬r}{ª¦¡¦¥u{¤z|ª¡ª~oxrua~u
~
nyut¡
s||rr{zx¦
w~qm|nhlmh_zh}|vuvu{w\_p}nu`c[]^QgnTe[^bkivz~qlmdkjhlslmunyp
ynv~
vq~{z|{`i|juhiejc`i\duhobumlUcqyepz{sejml·¡£{x§¤yz
|n|ys
}}kh}|~}©p¡¢
}¨x£ £¡£}w ~|¤ ¡¦~~ttpv`}q|q
hwqx~}r{|qxzzy¥z
v|gs}y{qlkg_~sh|uvt}sj^`svpwdcY_^RkiUeY_ahjvyqgkdmhekm~hpqk}yzks~tv|z}jrnsibhlb_qVtomn`xhmWjtvcuz{rbjoy²¥¥ |v¥¡¢x{~q{tv
~xgc}y}y¡~p¦¦
w ¡y~¤xw~r£¡¢~|vq}nzd|
pleuo{|w{
|{q~w
y¢vw|xazy}txgmeajjwstu}q|bcasnurmaZa^[leRcY`ahkvyqbjcmeh}lhuinog}ymqt|~z~|mvttmeljbcuViqn`xglbjvpfy|zq_ql
®¦¨}xªzy|~||xtyzt}d^}~u}~}
¤£s{§¡s¦sk
zo£|yqzkul{~~m
xp}~dri{~sx}vw|
|¤xt}tv
pb|vzq}obocd|cnovsxwstau`olumo\\_^_j^P]Ycahmt{k_ifjchwnflijlg}{wns}t{}z}}rzxxnljh_irbhqoevgnlayik}{xpawmª £¨~w®}w~{}{vxptt|o}|a[~szz¦}|¤n¢¡nf
zp¢}{srukpnu|tnqu{{dplx}}ssyn}
{
¨z{}
w~qpdiyuup|b_pakt^qj{yylspex]nlsmrYZ__akZPWXecgqq~f]jigbgqndigdiizwuo
t{u
x
|x
zw{zrxjk_phtjromqgole|cnzwqlww~¢¡¨ ¦uª¡t|v
xyrs{
krpzmvnq[X~wu ¡x
m¡
j¢e
~w~||nuplmop{
isqwuxfrnu{yyvso{
z
£{uwynl^susqpxZ^qapk^pj}{qmmjlv`pojqmZXaabnXQTZfgcvob]kndbfkn`ff_gkurspuxuy
ww
|{vjqc|c|nqltjholvx_qy|tut~¤§
u zrxtpr
squkomvmv~mnUQ«wwsz¡x{¤
|s
~hg
qx{z||kvjnkll{az~vzx|ygsls~
zqyovzy}|zv}wpjlzayqnmrtV^pbra`lnzqhpffsthpkawe]Vf``rSQN\fe]yp|_\irbbefj_hd[gp~pkqt}v|
tu~y{xs
~|yxfrj`}ookz`jntu_t}yxts
|x °¥
wtvspo
tprpkjwnn}}musRMßÈÖ|puv w{s
¡~wz~yufk¢
cqz{y
|~l{erokkzy[yz}~zzhrjs
|k}~n~|y|uwxrmgq
nkuphjunS_pepZ`lrxgkkbfxrppc_w``Vk_^vPNKagc]zpt\\ev`aeecafbXissmjqv}tyuv~sz~r|~vesn}e~opkZlnyysav{{vrwwy®
w~}
twpyqnomoseeyq}my}jhkc¤ÁÜ®ï¡slvv
£o¡r
£
~zuxvum
|¢
^m{}
v
}}k}dxujnysWz
y~
~xeri~kum}x~trwusqgvzcunqbjwhRaqgkV_otzard_h}prmZcrabVnY\xNMLdgb^wsm\\dy^`de
`cc^Yjrknkrw~twxw{q|~{t~shuqymzntpWqzvyqexyivr§£
}pxy
¡|{swpsjpljm|u_axw{qu{g`d|ëÚµÉÃÜsltvjq
|{
vxru}n¡aj}}q~qwhvritwkZ|
}uask~~|mkx
{|~npyukqlsy`ujo]kw`RerhfS`pvtap`]hqsjWghbiXmV[uLKLfg_brs
i[\ey^^dg{ad_]Yknfoisx~ss~zvzs
|vw{ulwuyxtnx{|Xzqogywdv
q
¡¢sorw~|xrsnodrifmxx\_y{{qqjagaÕ¶¦xnqw|qk{i||}ztz{qt
u
~ag}~~m|tkmwutwvkc
~|~o^qp{{~ypfyz}nny~umnll{~ciljYnwZRjsibQcsxlbe^Zjnsa[g_dl_nU[pNHOge\gnql[[cs`\clwde]]Zklbmjtwqp|}txx
|uy|vpwy{om|w^tmiztsgs|r vv~mv~}v}vqoljau|gbjuzZ`x|zmqedhgW^qs¼Ävqstk{|}|u
vv}quqsze}
r~g}{y}i}vfoyxswslj
yj]pwz|
{}rhx
w{}mkz|vtoih}we]qcXptSToshbNhtxfa^]XoosYeb]jm`pOYlRDThaZknm{oZ[^lcZcpvdg\]`kjclisvqn~{tuz|
v~xtryyoo|qiyz~mm|vkjxtk
n}vjxzozsqljd`t{i`fr{[as}zgpzaee±²wJbZ¤ÙÐr{y
olzy|xxoqt}{jy¥~n~uw
oz}oxh
xr|e}~ucpshyqou
{vxyjZo|r}
zrmpqxwmm}vzehj~raZx[YrnNXrsf`Kmwub^[[Yu}roWg]fjp_oNWiR?Yg_[pjgyq[[YkeYcqy_h]^elhfliqwom}up{v
qq{}zzujzlo~t}or|{poxf¡
gphz~
|ixrklf_aoym_boy]dlzaqv_eeÕë¾2:>ryw
nl
u}
|xnv
wnlu{ufy¨}mtvx~{xlsi~xm|{xayqdqi~mtqt~su}snZk}tx{|xypkqx~tmjvuu\iixqYW}SZreL[sre[Jqxp^[[Y\uuhYb[genbiMWfQ=^f]]vf_tp[YUodZeqyZh^`gmgilhpx~ljyn{}zu
pnw~{{i{~kt|r{sw}zx~|kl~ki{~}kuqghc[bgso`altahpzast^cd n\5Y¯µuj~wuwpl
tyx}zsgv~}op}hwynez¥~n~v~{|q{}
|i~mk{zjzvr`w~qdrgumu{
|~owy{t}lWm}uswuzwrmr~|}znmimun]hftrR[{N\q\O\rodVKsykXYYZ`qu`]]agdhhfNZhNAad\`vb\umXXStaZdnrWj^bhkgmlipw|li}}p~~{zwr{oqw{j~{nxyww}x~zm
£{vykmy}{}prpcf^Yg_pp`ahpfjouato[adiv{¾¦£È¸r
s}ytrsp{sutwyyqcwyirufwvcj|}r~sw~wzkxy~uhzilysizv}h`w~jjsh{iv~z}}q{v{s}aUu{qs|pwwoo}|x}|u
vhqhlrp]hctoKevL^oUTYsmbQOtybSXX\apt[`\hedcjdP[qIDdb\cq_\whUWVw^\enhVl^ajgeoohpwzniy~s{~y|v}pvsmw~q|xyztxyvo~}zw|htz|vgpn_d\XeYmsaaaqllhn`siY^dmw©ÚªÇ³rypv}zutu~wpq~m
t
xtl`zyfqogun[m}y}x{mtr
{
muvnhwfm|vmjwv|`bxzhuuc~{gt{tuqz|l~YVr|otxksxjt|y|w{r|sgtdmmt[k`vfHnoL[cXWVxmbPSuwYQVX]`ro\`cmdc]nbT]rGCf_^fi]Z{bRV\u[[gkaVk_anfflqhpvxtkuvx}w{t}oququ~{wx|}
x|}~{~svyzwuy^~ytw{bnl[b[[aUjtd`[hopgraqfW]ck|Êι¢knnmr
r~
{
zytyuu{jmucvvog_|yeqjjqcXm{sw~{mpp
zy~qqo}ghrcnxrjlqw}|z]eywiuyfvgt|rjn~xm{\Xp}ls|nnpvfv~~u{qzs{yqer`mlsXk_x]IolMWV_TU|kaOTvsQRTV]bt
h\`kjfbYnaXcpGAh]`f_\V{^OVepZ[jh]Wg`_rfjhrhqswxnt{w~yus
pp{xwuy
z|u~}~~}|xuyw~}nuydto
zucnjY_[]]Uhse`YdrrgsbkdW[`ix¾®{·mbtit|rz{~xxswo{wejn`urib_~xyfp}hjk[Wox£
qqxtmr
}ytrohyajmamvkgklzwzw[g}|xes~nteu~pfkztltb[mzjt{zft}mpgt~w|~q{ky{ywpelal~mnVk`xVKklOROiNY}gbNUvlMQTU^fvf]aphgaWi]\liJEkZbdVXUyZNWnjY]le\Yec^tfldrgsptxp
vx|
}usnsy{{sr
y}v}{~{w|wwziv~|l
rq~oflgW][\[Sepe_XcsuiupdebW\\hporseeyjtvtt
xzwtunkzpagkgtmf^_|o{}hmwfidVWrp§||vs|r{ymzzv{}uprmgu]mi_ludgfizo{rYgvugpxvbw
|njmzpere`kxfrvz}auvikqtzoxxr|e}~~xvnceal|mkVjbrTLikPLNpH^{faNUueKOSW`kw~e]gsie_VcWbp]KKkXdaUTUsWMYveZ_k`\Zce_wgmbpitoq~utxx~z}v~
nrt|ztq
zut}
|~z~v{£¥y
lu|{uzo
sz
}unjieV][[ZScne[Xat{jhmh`bW_[iikoglaizyjtuto{}vunzhjyj_eniwhfXbwi~zoiogf]UXoh§vz|xun}mqtx~wt
vjrvgho\me^ns_gbjxh{m[mstjo~ywbwx
sqpyqbph[nwdps{xarpgixsqkwvsubz~wupcccm|}kkUibgTLmiPGRlEaxfbMTs^JMUYelx{f_mqjc\V_UooWJShXg^XMUlTK\z_[_k]][be`zhlaoounowuz}wyzyz}qttzvt
}}ls{
}~{v¬zlryvtno}tjonddX_ZZZUbjg\Z_ui^ml\aV\\kert}ij]lwvhuwrn|~~zvslzgiwg]dshzwccTdogwvfhjaWVYhd§n~xzpo{fxnyzvq}~ndvsdhh]lb^po[g^muezi]torkq{~uvcu
{wru~s`plYprbqq{udrl`lzojhzwtpdtyyuqdadms~jlTi^_ULtcQGWbGcwfaLTqYKLXXglvzeemqfcZX]XvfTJ\cXiXXHWeQIcy[]`l[^\bd^ij_otxnonvyr}~vvx}tuuyzz}~jt{}~
y{~|sq®{{~fqzt}}vrom{~mzbpobe]eVZYWcfk`]]siXpm[^XZ\l{cqwvmc[ntthuvqm
yywnotehte[gufvvz`]Sefjs}aci\UX^bd¥hyt
xlnxfwl{ytrx{xhevm`fa_j`^ukYe]onbzf[x|knnpwytuerzvoq|qawcZnoapq{seqd^mvicfxzskmts|rqb^emo}eiThYZUNy`RKZYHbudaJUnTJLZVilr{cllscaYZ[aw\TKc]YjSVGYaNHjvX_bm[[_bc]
ihanxylojvxm~vuttqvvx|}~~~px}yxy~ssp¢{{yduysyvksply|pr^poagblT[ZWidmf\\rfRrm[YXX`lvdjujj_[mtrmtttk}|wonldipc[krdtvs\WSd`q~q\ac^SZa\derqskjxlnoyyzqvryzzdfug^b[ah\^wiWb^phaxa[{vjjrowtstip~vrjp{levW[jmbprzseo~[`oqb^io}ljr}qpwkp`[ekm{agTgUXRQw\SPYRHcsbaGVlQIPZVklk|emoqa[ZXYlpWSOfWWiSTFZ\OIruY`dmcXa`a^jcdmyxkoiuy
{k}
}y}mqowz|t}txutpuo¢s{{fwon|pfxq{lsvsk^tnagfkS^\Vhbll[\qdNom\VXUgithctee]Zovoquuzl}}wscdkoa]nmdsxkZTVbcw||p
\c_cTZ`Zccnprjgyneruqzkysunz~u_fsc[^WbdYaufV_amcaq]]~ohisqspuukl{
qrfn{opnRZejeqsvsblvUbqk[^nd|ekt|qrrjm`Ycijx^fTeUVPUoXQWTPHer_aFXkOIXTVnid|ikxkaW\U[tdSRVhQYgTSHZ[PNxw[`fliZb`^^nbfkyunnivv~~m~{~krgtzu~r}
{ss}un¤swxn{`d|qgysymmqvgd|mcfghS`_Ug`lo\^nhMil`UVSofslexde]Zquns{xsn{w{zlbelm^`ojeqygZVX_lx{{o_b^hVY`Xdbkq|wkjvl[upjyiurmn{rXjn^Y]VbdXeqdT_bibbmZ`~kfksunmwvkh
zmqfo{lqlbX_hhosss^imSepdUbnaybotztjolj_X`fhu]eVbVSOYgSO]OOHeo]cGZjNJ_KXme_xhn~d`U^T]t[TS`fN]bUSJ\ZQYuv]_fmhXba[^qcgjwqsmgvsys{~|yntlss
z}|rstwqn~zz}~~}}~~}~~~~~~~}z{|}~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~mfggggg}
]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDBK ¥^*///0,H
}}{{z}~||~}}}~}}~~~~~
g_```_^yS7¤¤¤¤¤¤£r]____aR455553?¢¤¤¤¤¤ªV:|}zzz|}{|~}}}~}}~~~~
|y{z{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}}}}~~~~~~~
~wxz{zz|||{}}~~~~~~~}xyzyz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{z{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{~~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}
suv{||{|}}}~~}~~~~}~}~~~urtx|||{||}}~~~~~~}~~~~o|txrvy|}|z}|}}~~~~~~~~xjsvssvx}~|y}|}}~~~}~~{gqru
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~y\hupdo{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
dik\gjk
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxz}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzoq{xy{|{xw{xuwttvuuvwncul[junehklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkiffggghg`gooflrtjbcbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__ac_\_]`]^Y\bgjroqsmZY_[XWSNMKKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{yvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSTPMJMNPROMR_cemnnjhRQTPPNNOMJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTtsuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNOMMUckglmmgeYQOOPQONNONOPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKKEEKR^hmglmljjfb\UPOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHFFS[]afjnjomkjkkjjfZKJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:;?@CS^cmllnwrjikh_TMFEEEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@:;><;;<;GKBNbmpzskj`KFBEFDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnppsttsqrvyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<979;;=<:>M`tpcNC?@@CFDCCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtsurqtxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::979::78:99;:68WfA88;<=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==?@===?C;===<<<:DY9<<==>?@A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCDA?=>@A?@<]n@>DE??A<F]=>=;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVppqssttuyz{{|~~~~~~mLPQNOPNNOPPO><<=>??@>@@???BFD><<=@=8:;mwI8;:==A<Kb=<=<8:;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}|~~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABA@YR<==ILFFvwN788:;>>WiA;<<::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvvw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@CsyI;]y|wV<=?==>EitM:=>?==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy|||||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCEAHrykb}]>@C@@=Ir{Z:=AEABBFHC=<@DDA@?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{{{}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Fot}~}uLACE@?>X{]?CEIJIIMMKECFGGEGEEEDDCA?@>>BFJJGEEGFFJNNKJIGGHKLIGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEhs}|~y
qCDEDCWu~XGHJMLNOOLHGHHHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHHHGFEFFFDFHGEEHHFHGHFQnnpqrvvy{{{z|}~~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJG`{w
mAAVtWHLMLMNLIGGGGDGGGGFHFHECDDFEDDHHCCCFIJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrsvwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLN[|
Vl
|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD?>?DFHDEGIJIJHHHGIIIJIHFJJJJIJIJJJFILLKJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLLJU
uIIFB??@???<<<>;:<AA@><998<<=;>;9;?AB@ACCB@ABDDBCFHIHHHLMLGIJMMNMJJKKJLMSlpqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJJIe
fBB=88::9878896479;<:8567789787688;;;=@;999=<>;;=ACEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIj~T:8666766645773568:876565676778:67789;7578979876:<@GFIFIFEFOSRSSROPPRTepqsttwy{|{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=ECBf
G676468874578567699766765:9:;:;898987779:98878689;A=>>BA?AKLOQPQOOORWkqrttuwz{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B:=qz>988;<=>9::<9:;9:;:99;:9===>;;<=:>;9;;<;<<9:<8::;:999<?<=ABDIJMKIKLWorsusvx{{||{}~~}}}}~~~TFEFILNNLJJMB?:;<;89989:::;?>H~
l<;>BCEEAA@B>@B@@>==>@?>?@?@==?B?@A?A?=@@@>?A=><;:;99;?=;<==AACABCAXpqtttvz{{}}{}~~}}}~~~~~~~REBAGJNOLIGK:8:;9::<=:;;==?@BR
^>DGIKJIFGGDFHGEB@@CECB@BCB?@DHECECEEAFEFDEFD@B?<@>=?@>?>?>?>>:;=<`qrttuwzz{}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@CDFW
VHMLMLOIIKIIJJIECDFGFDCEFDBHIKHGGFHGEKIKIJKJCFCCDBAACBDCCDDCA=;=@hpsttwwyx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@?A>BBGGIY
PNPNLNLJLJIIHJFDFHHIEEHFFELLMIJGGHIJNMNLLNKHGGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?EGG=<@@88<;<=:>@>?@CFIIP_
rNRPNMMLLJHGEIIDJHGKJHJGGGKLNLLHHIJMQNPNMOKIGIJHIDIHHFFGGHGCBACUnpuwwyzxyzz||}~~~~}~}~~~~~TDAABGGB?8?@8:<8=>;=A>?ADHJLUq
_RRPMNMKJGEBGJGLKFKNKKJJLMLOPNHIKLOQPPQOOJIJJLJLFGHGFFIFEEBABB\orwxyzzyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAGKLPVy
|XVRRTSOLKJDEFKONOWUQPOQSSMSTOMSLPSUVRSQPLJMMMKNGGJFFIJDDEEBDCcpuyyzzz{z{zz|~}}~}}}}|}~~UFFGGGGHF>@B=?==B?BBGVNFNPPTX{
hWUkaERQQPI;;RTR`u]UVTVYYRXXRZfPUWZ]RTWQONRPPPQKKKHHJHEFIIIHIirvyxyyz{{|z{|}|}~}}}}}}~~~SHJIHGGFE??AAEBCGEDELXRMTUVX[|
}al[dU:XXXSQ?@VUY\d`VYbr]]W]ZUEQYZ[Y_TYgRVVXTTVTOOMJLJIILMKOMSosvxyxwyyz{z{|}{~~}~}}}~}~~~~VJJIHGEDDBA?HMIMPKIKPTSSXZZ\\x
g;~ynpXZ\[RSRVVT[ZuYU}`\X]^WIV]][[_YHYXY[]XXYWRQNPQMMOSQQURassvwwvxxxz{z|}}}~}~}}}~~xy}YNKIIHFBD@A:PQQWXPPOQSTTXXYZ[n
n~fYY\YTUTWRQWVcQerXZW_hP`f[[X\gaGOZhg\[\]]WROSPPQVVVVYZnrtwvvuxxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQORRRUSVTW_ux
}{\PUXTRTRQQLOMKfy[]TYUV]ZKTZUST^ZXWWWzkX[[\^TQQPINOWVX[Zdprvvttvxyy{{||}}~}}}~}}~~~zxwvsu{tk~~kry^[VUTROKFCDAM^lVRSNOQOQURSRSUcdv
~ymqVIKMNKMKHJDFHEC>TdURQQNKRTQMOYRMNQSUUMQSRPOMLHCIHRTUZ\lquvusswzz{{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YVPLILIaltPQSNQRQR[RSRQRVTbs{|}{{
u_]KC?CCCCB?DPBC@C=CIGV@HNLG]iPHFOFDEFIGHCDHGHKGDBAD@NQMRdrtvustuz|{{{{||}|{~}}}~~||}}vt{mh|gnqfiedb\XSQPURsWe[OONLQSQUYSUQQTROV`klrv{{xytrnstsyx~~kMG?@:;>@@??>jQKaEFHIEB?GLNGMQUIBE??<=<==?=?ACC@?<=B>JMGUnttustvxz|z}{|}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljjf`[QRZ\Y^JJPQNKLQRQTVTWQQWVPX[b]agmmlokg`nrjmlqu{z}{xz||xwxeC@@B=:BCAADB\]O{NONNKLMOOQLKLWNHG@A<977699=;;;8989?<BH?\stuvuvxz|||}||}}~~|~}}}~}xuvz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIHPRQOMPQNQRTVXSRYTNYZ[WY]^^_e`]^qvk^`gkwooljonnlfbYHFFHBAGIEEFDMRPaWRWQPSSRU[OOQWPMIDF>:96587979:365795<C>essvwwyy{}}||{|}}~~{~~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZXMLTTSPQUOLRSTWXTTXQLWYZVXXVXY]WXXhsk]Vaskaa_^da_^YTQNNNLIHJKIIFCQPS[WTTNQSYS\eUOSTQNKIHC?A9998978857578599Gnqtwxy{{}~}}|{}|~~~z}~|}~}~~~~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOTVXXYSUTLKTVUUUWPTUWTUR]n^RNY_[VY;DVXT[fJLORROMMNNNLJFQPUYSTOJNOUST\VRUSROMLIHHF??<:787659967665Wppswyz{|}~}~|}}|}}}y}}|~~~}||}}~}|rvqxxrvuqqnppopuvtnjddjppqrpofedc\]RTZVWUTWTRXXYYYRUOIGOPOOMRJOPOPNNOTLMIPOSTU2=XMI@Q=caQSQPNPQPNNMQNTRPRMILJORPRRSTQROLLKLLHCBA=::876;B5566:doqtwx{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqniihpVVTUXUWURWVUZYXWUQSFEAFGGHFJDHJHGEHLHKIFLMPMG/E_R>3?>joaRRQ@GUQPQPQNQOPOLJLLOPNNPQQNPOJLMMKGEEDB;=<<9=G6677Dmptvz{{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknaePSTRSTOWVVYYVQQQO@=;=?ABAC@BEDA@GHGHEFHJMLEGCORC8ENS]fSQSAGUPOQQPMMNMKLKLNOOQMOOMHLLIKKLKGFFED<AA>;@E;<89Spruy{z{}||{y|zz~~|{utvrvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLOOMQSLTUTXWUMLKI<987;>@><=A@B=>EHGCFFIGJJ@FAA@FHEJOHPRa\QPRNSNOPLLOMKMLMON[WKMQOGIHCHJLLJFFFE?BC><BG?B?Adptw{z{{|{zzw{wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHDD=9779?B>;?B@@>ADIECGGIGIEBB?>=CBAGIDMObeQMNNWKKMKLMMMLKNNSdMJLRIIIEAHJLMNJGIFBAB@?EFEHDKnovyyy{{z{zwtxux||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLMIMPMPOHJD?A=999:?B?<@BBADEGKFCHIGGHCC?B??@A>DEDKMRTLJIMTGIIJLJKLIJLMOPQPKGCKGCBJJLMONIJIGCCCDIJMLIYrmwyxz{{y|vrpurtxyvxjqnjllnttmtu{stxronqovsnporpopstyjN`gsjt|ygosqiqhdqGKDGHHGJKIJKDGB=>=:::;AB?=BBCCHFILJDIIFGGCC;A@B>@@BEDIMPHHKGHKDHIKMHJLHIJKJM\RHHDNFADKJMMPMKMJKFGGJMNQNLbmivvw{x|z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoiktgdoFKCFEGEFFGEGBC@=<=9:::AC@>BCEEIEIJLFIIGFFCB;ACC>@CCCDGLNHKNHDHEILNMGILGFGIILNKIHENIBFMLNLOMNNMKHHIORQSNRfffqosxu{y|lhjnekqlsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGJDFFECCCE@DB>@?:;;=:=>CA>ACEFJFIHLHGGGFEC@=EEB>BCCCDGHIGMPJFFGKNOKFHJFEDEIJHKIFHPKCIMLPMONOONJJILRUUROWd`amgproryzgehhdilfqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutwljuumrvqlnlerLGEEHCBABD=CB>@=9:=?:=>@B>@BDGJFIFIHFFGECCAAFFCBCBDEEGGIFLQLIOJJLLIGHEFEDCIIHKJGKRMBNOMQNOOMNOKKKPUWVUTX_^\iaminhrsbeffdihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwujsunutsqrjksMGHFHBB@DD<BAAC<8:=>9?<?B@@@DFHEHFFHGFFDCECDIECFEBEGEFGGEJMKHQMJKHHIEFHHECIJIKMKOSNDQRPQQNPMNPMLMSWVXXVX]Z]d`hbjigk_eefcgggkggkmkmlprhttursnvoqprtxqssuvuyvvtxuuwxmouorsuqqioyMHGHHBBBFE<@CBD<7:>=:>:@B>??CEFDFDEHFDEDDEFGJEEJGCGHFHGECFJJGMJLKHJLFIIKHEKKLMNORTOHSUSPSOQMNQNMPWZVZYVZ]ZXa```_hec`dfhgjhhifhnllnmqpiuuxrrpupppruvpusuvu{~}xvtwvvvxplupmstnprrxNIHGICACHE<@EBE<8:>>=<<AB<?>ABFCECCHECEEFGGGIFGKHDIHGIGFDHKIGKHMKJKLHLKMKJNLONORUVOKUWSQSQRLOQPOTYZY\ZY[^^^`c^\ackb`dghr
hgifjmnponsrjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqvptMIKHJFBEGE<@GCD@:<>@?>?BA<@>AAFCEEDIEFEGEHHFHHIKJFJHHKHFFLIHHJGLLLLLIMKMMMOLPPQUVWOKVVUSSQQLORRQV[[]^[\^__a`ad]d`ef`ehjcssfjgglprqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrvnvJKLJLGBEDE<@FDDC;??A@@@CA?B?ACHCFEFIFIFFDIIGIHJLHHJJILJFJKHIJJGKKMMJJMLNNNPLOPRTXVMNTVTRRQPLNTSRW[^^_]]`_`aa_acebdhbdijgvlkigmosqpqppryvruutsmmssmqrotutrpswtuuwvuuteqskpqjrvnwKMLKMGDCAD<?EEEC=AACBBCDACDAAEGCHGHHGJGDGIGHJFILHIJMKMLGKIHKKNQKRQMSMKNNOPPOTOWXX[NSQW\ZRWPNTUTTXZ_bb_da^`b^`eaacingbihhnxvlhimosrpqrrrvtsusssnksqmprotvrqquvuswywutucmtkopjqtowLNLLLGEA@D>>DEFC@CAEDDFBCEGCCIECIJJIIKGDKJGHJIIKHJJNLNLILHJLKZfJd\KlSHON_nUks[qpbwcSPbvuhucav`Xnqbdvinzf[lt`lkT_wvijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqrqyLNJJJFC?@B?=DEFDCDBEEDFBFFGDEJEEJMMKLLGGMIGJKHKKIKKNLMMLLILML[sbdp^lmUMNfs]feqlntgpi_aYnnbppbkjjgoqtetnn\ougpMJryvkb`keemxlkvmnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIHGED@AB@>CFGBFCFEEEDCHHGDEKHGLMNLMMFJNHJKJILJJJKLMNNMMJMMM[roonpplkMPQlWNibtrpamnu\YlQ\mmZqmkomxxtsip]_rkqjUuyxpc^kfbgppjjopprspqpqqrrqqrrtlmrmnnorutqtrtuutuuzvutenukpolsrryIKGHEEEBBB>@@FGBGDIEEEBFIHHEGKJGMMNLMNGLNILKIJMIJIJKOPONMKNNL\hdu]lqWlNPQmUZk^klvaldsSecNmYl\tpkilxjwuhp]^rkhWbcw|oc`ggadityknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvHMGIDEDCAB=BABFDGFLHECCHKHHFJLLFNLLSRLGLMHNJIHNHJJIHNOMNLJNMJZsppoqqmlOQRnYqkgooqqomt]nXat_nopoqronusttj[]tcwxrjnzhaacfbbjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyxtukoumtontsvsHKHIBEEEA@>DDBGDHIMIFCFJLIGFJMLFOJKWRKGKKJNIHJLIKJIHJMMMMIKKKSkb[i^_icrrZ_Yjo_eeUk_c[aaQ`mh]j\niid[pfdp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrvtwrGGFIDEDFA@BFEDGBHJLHFDGKLIEFJOLIPIL[QJEHHKMIHJJKKIHIGKKKLGHKKLLLLJKMNT[\TPTLPONOOVQOOQNOQJINPQdqiTYW\[\UYZ]X]\\cfaaebce__fkmhmtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusGCEGFFAEC@CHDFGCIKLHFDGKLHDGIPKLOKLWLIEEHIJHIKILJHFGGIGHIEFKIJKNLIP\W^P\[`^MXYS\\b^MYZMXaRJYaZR_d\aX[ddVVX\YZX\VY\]b^d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCELMBDCBEIEGGFKJKHEEJJKFEHHPJMMJMSHGEAHFJIKKILJHFEIFDFGEEJHCJMKLU_Y`X`a[`TXYT^^Z_RY\P^\YN^\^SZ^c^Z]`c`Y_b[`^[TXWY^]cbcacehekrpoppnnw
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIDBBCGHEHGHKIIIDFKKKEFIJNKNLHLNGHE>GGLIKKJLKIGEIDCDEBFJD@JLJO[cY_^a_RTRW_`\]Y^QY\MV_WKQY[PZ_aa]^ca`bbbcceZQYVU\Y]c`__cdbhomnllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQKFCGEBEGIFGHHFFJGHGHKILDDKJMMLLHJJHJF?GFNKKKMKKKIGGCD@DAHIB?IJHP]aZ[d]_TQRX]\\\_ZKW\LR\YIM^QO\_accccb\dcbdcfXQUTR[WZ`_^^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMC@IFCFKJFFFHGFIFFFILJNFDKJLNJLIKJHIFBHIQMKKOMKKIHGED?ECHHBBGGET]Y^X_Y_[]UXXP]]QKJV^X^[]UY`RQ__bb``bb`cbaddbXOQQQZR[]]]]^__dhgljnnp{{|~{
srw
|x\SKCAGFDGMRHCQJFHHHEFKJMPEFIJKNLLILLIIGDHKQOMMPLMKKHICDAEDHGBAGEDWUE\U^SV_XNTUNZZMJKT`a[_X^^a]NYb\``_bcb]abW__TPNOOWQ][[\\^`bffelfoow|{{}
zo
~INFDFFHDIRbPCV^IGGHDFMKPPEIIKKNLLLMKJJGEJMQQNOPMNLNHKADACDFDCBEFBMHBKLPONLFMFGIJHGLKMOPILOPOSOLQSRUZYWYXXdWOSTPPNMOTS[YXZ]\`adecgcklpsrzy{z~{}{
}KIEEGFGDKM]LGGXLGHJHGMLQQILKLKNMUNOKKLGGKPSSNPONONOHKF`ED_LDfdEM[I^[rmOMUmYLCQ`UkWgJ]XU^DMQULLSVQRTXWTXUT\UPfZhhdXRjSWVT[\[``aaab`fhfnkhrz|}~}|zr{z{
~z{LHEGFHEEKOSIJF`SGJOJIOMRQKMLLORUROOJLNGHMQ[YOPPNOPOIJQQI|YYqsXPmHqnoaVPqqsPCksmqspSo_[nX]V\XUkhU]VcZ`Y[`VVXjtuu__v_Xa[\f[_aaaa^`bgmpl`pwtx}~vxzlv~tx~|~|z~wwNIEHMNBDLLGILEQVLKNIKRXWQMOOMQTNOQPKKNGMPS[ZTQROPPPJHZx]TxehZRTQvgtlpbnfjQrOMwmjrpsrqrpoo]ezuxqqzq~s}ku}bRh|essosr{|o~yor_``baZ``gknkblfgmw~~{xwtvzir~nt|~wx{~x|u|||ssNKF`]GAEMMHJKGJPOMMJNV^YULQSNXZLSSRNLPIQRTYWWPTPPPQKHgxlcxrm[KMUypumubnvPdeJfvqmwojfxxiWrQhzmijzz~lxzohoYvvjuup`rg|ilx|o^__ba[]bdgiidgbcdllppstsssyqrxblugry{ssuy~suzn|}ywrnNKStNCBFPPHJKJLQOOOMPZ`ZWKTWPa^RVQYRLOISTVXWWPUPONRJKrouuquqdibWnLqp^FhyWvTLiy}x`y{sna]mocRhqunmypwlvttrmn]t~zkmy|ktl|kpvux^__b^]_ddighfe^abiiijknokqnmjpacfdowxompsy~nqpj{ztromLL[VHGEGRPILMKLQQPPPQW\XUMUYUfXRRY^SLNITTVWYWOSNNNQHRmHiwK`dvvVXlOnl{sajgvULWkh}lmlx_[pz{^`zscroxqhd|ir|^TLl`vukiu|{m~xk|p]^_b[^bddgeeebZccikkrsrwglihdgaakagsrlgmmr|kmhk{tmmkmOHJKHIHHQPLNOMMSRROSRWRVTPW[VVTTTa_PNMKTSSQUVNNLMOPJHQNPULKKSTSRTPVUQPNQQXYRNPUTXXX[ZURSW[WXWZOSUWXXR]YW^WTPYRVWWWX_[gr^[[Y]]_cZ_ccdfdccbZccffemnmueegcaf_]g`dlhfgkhpzhggkujhgilQIKKLMKJSQMQPOLVUTPTUXUYUQZ]VUTWUYWOOLMVTPNUSNOMLQPKJRQKQMKKORURQRSRIHLNOQRQQQTVRXW\WSSPQUUVSZQOSRXVTYVTZUTRUSTUWXW]Z^a][ZZ\\`c[]bcdfdddaY`acabhhimcad^_c]Zd\bma^fegmsdihkkedcfhPJKLOOLMSPNSQQMXWUTUWWWZUS\`VWVYUXSPPKOWSPNUPNQNKSPLOUSNRNMNQTQUQSTUNKMOQTTRRQVWTYZ[YSURTWWWY[TOTUXUUZUWYURRWVUW[YZ_]UX^\^][]aa^[bbcgfddbX_`b^`hefea^_]]^ZZ_Z_g`^]]bhkagfhfd`bcaPKMLPQLOTOOSQOQ[ZXWXZZXYV\jdVXYZWVSSOJNVTPOTPPPNMQQPRXTQQOMOSVOXRTUUONMQSUUTTRTWVZ]\ZVWQRWXV[[WQTWVVVYTXXURRYWVZ]Y]_^V^]^`\[____ZbbdhgddbYb`a^^fcc`b]\\\\YZ[X[a[^]\_b__bdebd__`\PMNNRQMRROSTQOU\[ZW[[\YZ[dqmhd^[YVUWQLMVRMNROQROLPSRUZUSPPLPXWRWSSSXMOPRTXVUUSUYX[^][[VROUVV[[WRTWVWXVTX[TSRZXW\^Z^_`Ua\aa]`b_]`]c`cghdf`Zc`a__ed_`c[Z\[\YZYYW\Y\[`^_[^^a`^b\Y`ZQNONVQPTROUTSPW\]\X^\^V\^jqwyb\[VVXQMOVSNQQPRTRKQTTYZWUOQNSXWTSURRZOPSSV[VVWTVZX]^[[^VSNTUV\\VRTVVXYSTY\USS]XZ]^\```Va[cb]ac_\bab_cfidf^[d`a`acd_b_YZ^[\[YXYWWZZZa\][]\\Z]`W[[ZPOOOYPUURQWRTP[]^^[`\`U\]ijr}slg\UYWPNRZSRQSRTUTKRVV[ZZSOSRVVVTOWRSZRTTTX]WXXSX\X^]YZ]TUNVWW^[XRUUYYYUWY\UTW^Y]]`]bb^Y_[ea_dd^^cca^efidf^^da``abd`b^XZ_[\[XXXXW[Z\`\[[\[XY[^V^Y]POORZPZTUVVSTT^^`_^b\`U]^bkytl}kZUYUQPS\TUTUTVYWLR[W][]ROUSXWWTPXRSWSVUU[]X[YUZ^X_^Y\YRWRYXY_ZZTUVZYZWXZ\VUZ^\^`a_dc\^]]eaafd^^dc`\gdhedb_da`a`bb_`^WX^Z\\ZYYWV]Z]^ZY[\[WY\]VXW]SOQWYQ]UVYWWUX__aa`c]`T]_beeuzhXYYSVSV\XWWVVW]XOU]Z^]]TRWSWVUSTXRSVTXXX]^X][V]_X__X]VQYTYZZaY\VWX[Z[YYZ[XV]_`^cbbed\b\`fadfd_`dbb[fchecfaf_`aaaa`_^VU]Y[\[Y[YY][[[XXY[YZZ]_]TY]UNTZVS\TVWYVV\`abcac__V[`da_zuohY\ZUXTW[ZY\YXY`WPV^\`a\TTXPUWVTVWRSUWZZ\_^Z_\V__Y^^Y^VSYWYY]bZ^VW[\[\[[Z[YY__``dbcdebdYbfcffe^ab`c^bcidcg_g^bbcaa`^_XT[ZZ[[X[XX\[Z[WWYXW\[\`]V]]SPVZVVZUXUXWX]_badad`^YYadb`lfh^\][VWXY\\\_[Y[bVTX^]ac\RVXPWVWWWVSUTX\\^``]`]Wa^[^\[^XVXX[[_`\_XY]\]^^\[]X[`a^`dcdeefbXcedhgd^c`_ec]eidei_f^cbcaa`__[XYZYZZXYXW[[Z[WXZTY]\Z`\U^bNSWYVWZX[\XWY^`badada]^Yacb_a``^\\\WW[[]]__\Z]cXZX]`cd_RXYPWWXYYWVWV]]^`a`_b^Ya]]^Y]^YXVW[\`^]`ZZ^]^^a\[[Z\_b^bdcefefbZdffigc_c^afeZiicfice^bbca``_]]ZX\YYXXZXWZ[ZYWXVU[]]]``bbxKXW\YW\[\]ZW\]_`bdaba]`Xbcbacab][\[XW[\_]`_][`d\\XZbecaR\ZOXXZ[[ZWZY`]`bb`ac_\b]_][^^YYUX]^_`_`\[^^`bc\\X\^`bbcedfdefd\efgifcab\cg`\iibhjed`baca_`_]][Y\YXWXYXW\[ZWWXOXZ]acffrkJYW]ZZ_\[^\X][^_acbaa]b[bdb`bbb\[[ZWXiq`\`_]\ac_^YYcedaS_ZRYX\]][Z[[c`bbc`bda`c^`\]^_ZXV[_^]aa`^[`abeb_]T]``cddfegeffe^efhhgdd`[eg^ahhbhhfc`b`cb___]]\Z[YXXXVZV\ZZVVUMXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vuuuuuuuvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{{||||||{{{{{{{||||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vutuuuutuvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{|||||||}}}}}|||{{{{{||||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||xÅÔÒÒÒÒÔ{}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½E>????@0*+++*%b~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}xÕçääääç{~y1333332j{éääääèÊ:233334!]}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}v~ywwwwwwxyyyzy{xnoooppprrrrrrrwzyyzzz~|||||||vuuuuuutssssssy}}}}}}}|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vtttttwtvwz{x{xwvwzx{zy}yxxyxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{||||||||}}}}}}|{{{{{||||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwwx}z}z{}{wwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwww|z}|}~|wxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z{xwww|zz{}~|xxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzx{y|}|~{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyxyxz{y|xxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyxyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{{||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}||}}|||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrsuuttssssrrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsstrqqpponnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqrsssssrpqsponnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrrrsqtsrqonpoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpqqqxqrrpwnppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqqqqv¡prp¡}opppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqroªpw ¡}oppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqrp±p¥¡}pqqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrrp¶ª²¦zqqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrsssssssu §£³¨¦¥xtsssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz~|~~|vvwwvuxzxxxxxwxx¨£±£¤zyzyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~}|{||£¥ ¡{{yxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}}}}} }}}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~±ª¥¡¡¡~~~~~~
~~}~~~}}}~~~~~~¤®¡§¡ ¨¬
~}~~~~
|||{|}||~~~~~~~~~
§±¤§¡ ¢£«©|}||}}~©ª£¢¡ ¢¥¡
}||~~
}}}
~~
}}~~
~~~~
~~}|}
~}}}}{
~~}}
¡
}~
~}}
~}~~~~
~}~
~
~~
~{z
~}}}}~}|{|
~}~~~~~~~}~}}}
}|}~~~}|}}|y|
}}}~~}|}}{zz~~
~~~~~}}}~~}}}}~}|zzz~~}~}}~
|}}~}}~}~}~}}~~}}}|{{{zzzz~~}~~~~~~~}|~~~~~
~|~}~~~}~~~}}}|{{|zzyyy{~~~~|~~~~}|~~~~~~~~~~}}}}
~~}}~~~~}}}}}|||{zyyyx~~~~~~~~~~}~}}{|~~
~}}}~~}}}}}}}}|{zzyyyy~~||~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
}}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
~}|||}}||}}}}}}}}}}||{z|xyz{|~}~~{||}
}
~~
~}}||}||||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}}|~||}
~{z|
~~}}}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}}|}}}~~||~}{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~~}~~~~}|}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{||||{|||zzy{|z}
~~~
~~~
~~}}~~}}}}~{|}}~
{z{ywz}
~~~}}}||}~}||}}}}}|~|}|{}||z{z|}}}~}~}~}||~}}}}|{}|~~~~~}|~}~~~}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~~}~~}|~}~}~|{|||z{z}~|||}|}~~|{{}~}~~}{{{}|{{{{~~}||~~~y}~v{vx}|||{}}~}}~~}~~~~|~~}}}{|}}|z||~}|}|||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~}||}}|}}}}{|~~~~~|}}|||{~~{|{||}|}|}|~|}|{{{|y{|{{}z}~~
|{zzy{}z|~~y|yxxt|||{|||~~~}~|z|}}~}}~~}}~{{}~~}}|}}}}}}|}{}|}}~|~}}}}|{{{|{{|{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~~}~}|||~}|}|}}}~}}~~|{{{||}|{{{{yzyxy{~
~~{zy{}}x|zr}{{}||~~}}
}~~|~~}|}}~}}|~~|}}|}}~~}~}}}{|}~||{|}zzyyyy{{~~
~~~z{y}}zzz}q~z{}}}}}zx
~}~~}~}~~~}~}}
}~}~~}}}|~~~}}}}|}||{|}{{{zzz{{|}~~
~~~}yzz}|yw{t{|tw}~}{{vv}
~~~~~}~~}~~|}}|~~~~}|}}{}}}|||||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||{|{|}
~~~~~~~~~z{z}}uqz|zqz~}yxtt
~~~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}~~~~~~}}|}}~~~~~~~}}~~
~~~~}{z{z|{z
~~}~~~~}~}}z{|
{{syz|pwuvwyutz
}}}~}~~}|}}~~|z{z|{|~~}~~}}}~}}{{zx|vyy{qtxwvxury
|}}~}~~}|~~~~}}z{{|||~|}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{|||||}}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~
}}}|{||yz{z~y{yx~{|{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst}~}~}~|~~}~~}~}~~~~~}||||zyvyyzyvyv~|{{{~|{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}}|||~~~}~~~~}~~~~}~~}~~~|}||{|uxyxxxyw{|{{{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~|~}~~}}}~~~~~}}~~~|~~~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~}|~~~}}|~~~}|~~|}~}~~~
~}|{{||yw|ywxwwx{{{{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqsoxwq{
~~}|~}}~~}}|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{||{zzzzzzxsvupprowvr{
}}~}~~~~|~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~~}~zz|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyytuuooqpwst}
~~~|~~}~~}}~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|z|}{|}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z|||yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}{||xxuxxy{||}|{|||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|{}|{}xwvyyz|}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~}}}|}{}{yvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{~
~||}|x|yzyz|}|{||}}}||~{{{zzzupxwyvu|uv|
~
{}~|y|zzz}||~z||}}|z{~~~}}|}}|vrvxxvtvu}
}
~
|||}zz|}}||z|~}}}}~~~~~|}}~~}||xvvw
~
}}||{||}}~~~}~||}}}~~~}}~~~}}}~}}~~|}
~
~}}||||~~~}}{|}}}}}~~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uz
}y|~{
}~}~}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqspurstv{}uvy
hzrss|r~}}~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyyrpvxqvtturstvinrotvnulwm{snym}rsvsvmnwlpylu}|~}}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}~{~|~~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyrioyxpkyszozwvvp~~~z~}|}~}}~~~~~
xyrz{pp
x
xyks~y{krz|mzyyt}vnoot|uwqy}}m}uo
zrr{|upozks|nv~~}}z}{|}}}}~~}~}~|}~~
}w
}~{|{~{||}~}}~}~~~~~~~}}}~|{|~||
}|{|~{||}~||~}~}~~}}|}~~~~|}}~{|||{{~
~|{}~{|{~~}{|~}~~}~}}~~|}||~~|}|||}|||~z{{|~
{{~~|||~}|||}}|}|~}|}}}|||}|~}{|}|}|~|||zz||}
{}~~|||~}|}}|}{||{||}}{{{}|{~}{|}}|}}~}|zz{{||
zz
~|~~||}}|}}|~{{{z{|||{{{~{|}{z{~||||}~}{z|z||
|
~~~~||}}{}}|~zz{y{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{}}|}yzzy{}}zz{{}|}||zz}||}|~~{{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yz{{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|{{{{|}}}|~}|||~|{
~}~{
~{}}~~~~~~}}{|{zyzzyz{|yzzz{{|z{{{|}~}}}}||}}|
~|~~
~}~~~~{||}}~|~~}}~{~{{zy{zyzz{yzzz{{|z||||~~}|}||}~
~~}~|}~~
~}}~~|~~|~||~~|~}}|||{{zzzzy{yzzyzzz{|y{}{{~}~}}}
~}~~~~}}~~~~~
~~|}~}|~}{~|}}}~}|||}{{zyzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<C9;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937676=;>:=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<:<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA>;A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÔÔÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9>CE?<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËÊÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ØÙØØØØØØØØÙÙÙÙØ××××××Ø×××××Ö×ÚÚÚÚÚÚÚÚÚÚÚÛÜÜ×ÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILN@99:4;A<7=9AC=@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÏÐÏÏÏÏÏÏÏÏÏÏÏÏÖÞÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¸·©§§§§§§§§§§§§¦®¹¸¸¸¸¸¸¸¸¸¸¸¹°½æáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVM<::77>C>8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÌÐÒÒÒÒÒÒÒÒÒÒÒÒÑÞìëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§££££££££££££ ¥£££££££££££¥SRSSSSSSSSSSSKªòëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;?C>6:7>?;<B@8<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÌÑÒÒÒÒÒÒÒÒÒÒÒÒÑÝêééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¥¢
¦¤¤¤¤¤¤¤¤¤¤¤¦WWWWWWWWWWWWWO«ñêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<<<<>::;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÍÐÒÒÒÒÒÒÒÒÑÑÑÑÐÜèççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©©§ª©©©©©©©©©©©«babbbbbbbbbbb[¯ïééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9;:=<;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÎÎÎÎÎÎÎÎÍÍÍÍÍÍÎÏÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÏÎÎÏÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÒÐÐÐÐÐÏÏÏÏÏÏÏÏÎÐÑÒÒÒÒÒÒÒÒÒÒÒÒÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÔØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<7@A<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÑÔÏÏÎÐÓÐÎÒÔÕÔÐÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××ÖØØØØØÙÙÙÙÙÙÙÙÙØ×ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?89:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎÓ»ÏÏÒ¹¾ÔÆÏÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<=B>BB@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÒµ³ÔÀ°±¸¹¯¡ÒÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?><7:>9?D>@98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÏÑ ª®Ö¢ Ã}~¯°ÑÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<96?B?B:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏÑűϺÔÒÍÃÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8E@?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÏÖ§³È ÒÓÀ ÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<==964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÏÕ¥´¾©¯¡¹×¯¢©ÔÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:<?>=<9@<<::9?@==<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÐÖ¥µ¿©Ø£¡ºÔÑÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAA8;?<=;<<7558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÐÕ¥µÆ¦Å¢ÑÉÒÑÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF?HHGE@<<>><==<756:969;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÓÐÕ¥³ÑÇ¡ÒÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@C;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÇÒÖ£°Ù¥«¤Å´¤¦ÖÒÒÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÑÕµÃÕ̧׹¿ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<<?GEGKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÑÑÂÔÒÔ˽ÕÒÑÂÓÒÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA=775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÒÒÔÒÒÒÓÕÓÓÓÕÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ=>786977899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:69896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EIKAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDI;AA;<886586987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?:8776=?@@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD88867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE><HF89757875898;>>=;89A>=@?A>7596;>AB??@@AB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEEC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELBA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?BGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<<DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAD?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsnupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»ºº¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545659756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¸¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455588686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¸¸¸¹¹¹¹¹¹¹º¹¸¸¸·······¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©ª§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::9:9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥¤¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§¦¥§¨¨¦¥¥¨¯´¶·¶µ´¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©«««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤¤£¢¢£¢¡ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡¤¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=6789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥£¢¡¡¡¡¢£¥§¦¦§¬«¨¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¦¦§§§§¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥£¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB?DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡ ¡¬¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;<;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¦¦¥¥¦§¦¥¥¦§¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡¡¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢¤¥¤¦¥¥¤¤£¢¢¡¢j¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::78:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢¥¶©£¤¤¢¡¡¥V¡¡ ¢¡ ¢¡¢£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ §ª°¨ ¡ ¢Y]¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¢¢¢¡¡ ¦¢«¥§Uf ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>99;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ªwv¢¤kai ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9<<>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¨i« nik¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:<>9?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe £yu kik ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £x|
}jgl£¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢ ~
fm ¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡§¡qe¦¬¡hyk ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡¡wef¦Xg}x ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y §¥xNJpRDax¡¡}
£ª¡¢¤¢«±·´¹µ±´¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡ «N7<t}pS?6az
¡§ ¤£ª©³¶±µ°¨ª¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|vsTpW|°©ZgnHk}
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VQQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{~¤\
|ÊűÅ~zPx
§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
~~rÏ×ÍÕ¦¹¼k]r]g
¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¦ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
|wѽÇÓÇÁ´w¥¨cb ¢±®©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~o¢¦¹¬¢¡
vaÈZ¨®²°°µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWMO_^\NUUbQDTM;?9<895875795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
¡¡£ |¥
wupl¦a ¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUJTOOJDPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ªª©§¢¥¨©¬ªª¯§~Xryymkiuxxz ¡¤¤§¤©«®¬¥¤¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdWOYKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®««¬¤¡¢¥©¨§«©
pR`tqrzifbikp|
¢©§ ¢¡®¬«ª§®¨¥¤©©ª©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_VZNRNQOSe\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨§¦¨©§©©¤¨¦¤¦¢£°piOVxvt|hadf__n} ¤ ¡¡¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOXO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤¢ £§¢¦§°²©|icIRsuxh`cjZ[bku¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvxb_\UYQUW[c_s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?B?:8:>?C@DA:;>=@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯««¬¨¨«¯©¨ª©¢ ¡¨©µº¼½¬mgaBZnp}~na_f[Yaahpx ¡¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\V\hdocmiib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£ £«ª§®¹ÁÆÌÅ·¥rhiZ?SpoqlthaaZX_cabjqv{§¡¤¢§ £ ¡¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxjb[__\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>BE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ ª´¿ÎÙÛκ«o`abSCJyk`bml[[WZY][Z^cffhw¥¯§¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__amivkphiibZSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°²´µ¼ÎÚÝÔÀ¤ve]YZ\SJCmjVTXW]\]]XUW[i~ªÁǺ¶¡§ª¬§«©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YTai`ftotitdidb[LK>:9898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÄÇÃù½ÀÆÎÑÍ·ud[YZWSIUoª³¦NU^ab___fw§º¾ÁÅÅ´¶¶©¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`b_^kcbnxuwnm[bRV\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAA;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅÆ»ÅÁÅÆÁ¾¼ÌÄ°o\UXSPS¡µNY[]]`mªºÁµ¹©§±µ«µ²³©®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|~jfhaklgnurruqg^`\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8BBBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÄ¿ÃÃÆÆÁ±¿¿ÎμiXWZL¹LTYW`¦¼°¦«¬²¦ª©©«¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|uklndomiqxozjia]gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄŵÀ·³¼Áƾ©yXUQ·LSU] ¦·¯¥´´®¥¤£§¤ ¥ª´±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyy{wnkihvZgrxsyff^d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÃÄž¸½ÁÿǽlRZiZQRd«¦´²¬¸µ²¬©£¡©¬§¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuuefijh^jonyxcba`^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÎÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈÇ¿ÄÇÄÄÆÉÎÊVHOPk»·À½¾¹¼º¼º¼¬¦©»º¹·¿²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqocagvijjtnyl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÌÐÍÇÌÉÂÂÇÂËËÈÇÌÉÍÅÅÅÃÅÄÉËÑÓ¤RL`°ÇÀÉÍÆÄÁÄÇÁ¼¾´±°°Â¾¾ÁÆ¿¾¸¶Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`kjwlifuotc]bTWUSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÃÿ¿¾ÄËÈÊËɼ¼ÈÇÉÍÈÃÈÉÉÅÅÂÃÁÂÆÆÆÈÎIÎÌÇÌÐŶ¿¿ÀÀº»½µ³³À¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrpfegcjdbkmno^Y]VVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ãº¸¹¼¾ÁÇÁÆ»¹ÈÈÃÅÄÀÃÁÁÀÄÁ¾½ÁÀÀÀŪN¤ÑÌÅÉÑÁ¯½½¸¹»»¾·´±¹¾³¼¾±¹µ¸»¶¼´µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbaccdjcgc[ZZ]YQOE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹¾ºº´À¸µ·²®º»·À·¼ÊÏÁ»¿À¼»Ä½ºÀÄ¿½½¸¼ÀįSÌÄÀÁÉ¿°Á¿º·»¾¹µ¸´¸¼´½¸µ´°³¼±··¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qdabchjggiei^VVTYOSLF8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ¹¿»ÁÕ¼¾»ÃµºÇ·¶¹»¼¸¹µºÄɪTÈ¿¿»Á¾¹Æ½Â¿¼Å¸¶·´¸¶¶»»¹¶´·ºµ³¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zyqmfefpjekhXYOKKKRJLHD9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹º»¿¼ÏÅy˽Ƿ¹¸¶´·¹³µ²»ÅÊUÊ¿¿¾½¼¿ÈÃÅžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~}knqgqktfbn`\THKKDJCCG?:;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼»À·ª¤®°¸»²½¾»Ä¶µ¸µ·¿¾Ä¼ÂÄׯv¾ÈÏÂÀ¸®µµ»½·¹±¾ÃÇ\Îÿ¾½¼ÇÌÇÇÄǽµµ¶Á½»»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢rfljntoxcgb\cQKUHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£°¹½¼²¼¾¼Å¸±¸¹¼ÆÉÊÂÇÉÑtw±ÑÑÌÊĵº¿ÄȾ¾´¾¿¿
jzËƾÁ¼¿ÃÌÊÇÅÆÀ¹½¼Ä¿¿¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltlln_c^abNHN?E@?DC;;::;:8;<:9<>::>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´»Åк¾¼Ä¾·¼À¿ÉÏÇÈÊÊÂvw¨ÌÌËÍÊÆÂÃËÎÁ¼¸¼¹¯|m¼ÈÄÀÀ¿ÄÀÊÉÃÃÄùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{z{mmx|`qd[^__TI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼·»º¬Ûþ¶¾À¾¾º¦ª³·ÃÀ¦|z|ÄÆËÈÁÃÀÀÉÊÁ¿»¹±£~°ÈÅÄ¿ÀÁ¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsxthp^\_\ZQEEDMIAD=H;;59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯··²µ³·¹¼»¶»»Å¶m®Î½¶¹À¼ª}nhnmtu{¾¿ÆÀ¹À¼¾ÅĽ½¸±¯§¬ÊÃü½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸··½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|wlv{qni\``YSPAFIGK@ECH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹Àͱv³½¶µÁ¤iZ^`NS[\pvz
¤¸·Âº³»·»½¿º»»¯¢¬²¢¨¾Åþ¼¿»»¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ°µ´´½º¾ºº»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦{zsvvwoqa_f][UJ=??GF=GCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Âɦx¡¯µjfgVY_IIMPTo{©°·¾¹²µ²¼¹¼¶¹¾µ¯À°µx¬ÊÃÀ½¿¹³®²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|quwtwrl_ca\^OIB?=IDFMD@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·¿Æ¨{v¡_SCYUHbjUOEJe¥¯¯¶ºµ´²¬¼¹¸µ¸Á½§Â²²v§Ê¿¹ºµ®¥¬³±¦°¨ ¥¶µÂ·¶´¥¨ª¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´¶¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wp|ovsnc^gY]]SONA>JB@KJ@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸¸¿´ynNK?eYBOxhMC^
±µ³µ²´¯¬»º¸¶¹¿Åx¸©f«¿¸µ²±¤¦§¤¥©®¹¬««¥¨¤«®¯§°«¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmujl]\kU][PNHDGMBFNF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³·¶
|XFAOXJJYxcAU£¹³´²°±°¹¸¶»·»¼¤³®¤t¬°©««£¨¡ ¨®¤£¤ ¢¦¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhutoeUadW]QOMH@IRDMC=8875:7<>9;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²¼©hM?SxqPIIKhZEU°º±¬³¯®¬¶¶²´µ®©§¦¨ ¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¥¦¨¤¢££«¬³®©®®®§ª¨¬¡ª¨««¦¢£¦¢ ¥¢¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦¡x|vzcwln]QiUPOGPMLCPQ@>;>49:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬¨½Âª¥¼gDS}QXIKaJVbee¯µª²´®ª«¯°²³¥ ¢ £¤¨¢ª £¥¨ ¡¢£¨¨§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ ¤ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£~|uv}nk{dhVRdNJHGOSNKNH<E@<2?859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡© «Æ¿ÊOAtqPnJLcfut`]bt²¯®³µª¦¬«¢¢¢¤¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¢¥¢¯¨®²«¥ªª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}wy|eyy`bSVaHIJKSTISQM9?B67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¥ÆÆWSJf¤Yf}or[Rkc\gb`m´°°¸¬¦¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§¡ £±®²±´ª²®£¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvshle[SZZMQJOOVMSMB7>C78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢ª£yUirwupcwvXWb`di[ZWh®¬¯§¢ ¡£¢¥¡¤¤¨¨¬©¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½¶¾°¬±®©ª´±°¨«¨³¶¸³¸²´¤ ¥ ¬¡¡¢¡ ¥¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§}xvjwu^m[RaIRUHFUWJCMG=KH8F<77;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¡ ¤op`cXL[RZLLQYRHONH¬ª©¤¦ ¨¥±ª§®£«®¶°´²±®¶¸½¿ºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«®±¹¸¼¯³°µÂ¼·¾³³µ¢¬¢©¨²©«¨§¨ª§ § ¨¨¥¤ª¢¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vrmiwmhm\X\CWNJGMGCFM<>L>4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·¤°¦£bW^e`WMQG=>@CD?>BRx©©ª¥¢£
«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶»»ÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸³»ÆĽü·³ª³ª³´¯³®ª¯£¬¨¶±£°¦ £°±®°¤¥¯£¡ ¡¦¡¤ªª £ ¦¨¡¢¤££¡¤¦¢¤|trkkurqhV\QFUHDJPI?EA4FH95<>7;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ |_^e`QFD;C>F<>96N~ª³§££¢ ¥«¦xm ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿À¾ÇÆ·ÃÊÊÃÁÇ¿º´º»µ»·°¶²ªº²®»¸¿»º«¸«ª¸»µ¼®®¹£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢
~zrkcioxkeY[FKLEDTMECE7:?:549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡}riaWNE>IY|oaA=\®¬ wrqmp¦®´¹Å»ÍÇË¿ÂÌÍÍÌÇÉÑÌÌÌÇÉÅÆÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÍÔÐÓÓÌÊÂÅÆÆÊÈÏÀÉÑÌÇÆÈƼÃÁ¿¿¿¶¾³¿ÀÃÃÇÅÇį¿¹²¸¼Äº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZZCNLDFPIDC@55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>9;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £if\TID@?J¤ ²£yqroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÏÊÓ×Ò×ÒÕÖÓÔÈÌÇÌÍÊÓÍÎÓÍÆÉÊÊÂÇÌÇÉÉƿó³ÈÅËËËÏÇÊ¿¾¿½ÁÆÅÍÌÉÉÀÃÀ®¯³¨¢ª£¦©¬¤¥¦
{ruvgcgvjdVWQDNF@IQC>B<:22A<E<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡aSLJDC?CR°Ñ½²¯¦ ¤¡}xqkebhroq{
upnqtp
³Ã¾ÅÑÐ×ÖÖÒÖÎÔÖ×ÔÓÑÓÔÔÓÏÑÄÐÓÖØÕÖÒËÉÎÑËÆÍÑÊÒÕÖÙÖ×Ó×ØÎÒÊÏÑÌÏÐÌÓÐÀÉÈÊÄÌÌÌÏÏÅÇȶÀËÀÒÍÌÐÇÊÉÀÄÃÈÎÍÐÑÏÍÊÈ͸·»¨¥«§£ª¥©¨¨}xsvpc`erb]R\IJGAEIJ>;A8=5586;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¤¥ ¢¡YI@ADAFQv²¯¦ wica__`_^__]alusppolrquÄÈÇÔÕ×××Ó×ÐÕÔÚÔÔÎÏÕÔÔÑÑÌÑÎÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐØ×ØÑØÒ×ÙÔÕÌÏÏÊÍÒËÏÑÀÆÃÈÆÏÎÑÑÒÈÌÍÀËÍÆÓÏÌÏÈÅËÇÇÉÌÊÔÔÑÕÏÒÌÓ¹ű¥¨µ®§¨«¥²¨°³¬
|zqstmacim_VP_JJCFCRM@<>43:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><?@=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¥®·¨«·ØÔÕÙÙÑÎп¼Ìɶ¾®¦ª¨¡£«eC8=>DXª¨}qecb__a_^a`_``_`emppnkorwwÌÁÓÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÑÊÏÍÓÖÒÑÖÍÏÕÕÑÅÑÔÊÐÔÕÖÎÓÑØ××ØËÈÎÄÉÏÌÊÍÀÊÀÉÊÎÎÏËÐÎÎÌÏÏÈÌÐÐËÎËÃÊÇÉÍËÌÒÓÍÓÒÑÐÐʽȹ°®»¹µ«¶°¨¸³¾»±
zvopokadnpaW\ZIFFDMXE;@=33<<87855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÁ±©¬©¤±zHFB;W¡k^^^adb``aa``a^__^\bmroostvvy¤¿ÌÕÑÖÔÓØÖÎÎÓËÎÎÅÎÊÒÒÏÇÎÍÎÔÌÎÒÍË×ÖÐÌÑÔËÌÐÒÓÊÎÑÕÒÕÕÊÀÊÂÅÍÂÈÊÃÌÄÆÉÊËÏËÎÍÐÎÓÌÆÉÐÍÉÇËÅÇÁÆÊÌÍÐÒÇÐÏÎÎÌÐÅÇÁ¸¹½Ãýø²²¾±»Ãõª¥¡yqrkmg``qhYXhVMGLIPQB;C>;68:8::57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±ÇøÊÕÖÙÚÛØÌÌÏÈÖÕĵ¯´¨xlpqy|eabb`]^aca``_`aa`_][]grrprsqmry¥ÇÓÏËÐÐÓÔÊÅÉÉÆÆ¿ÃÅÏÎÇÅÇÍÊÒÈËÎÍÆÑÒÐÎÌÔÊÇËÎÏÇÇÏÒËÐÏƺĿÆʽÂÇÉÎÅÃÇÀÇÍÈÄÌËÌÏÈÄÄÐÉÆÂÆÈÄ¿ÁÇÌËÌÏÂËÌÉÇËÐÄÅÇ»ÇÃÈÉÂÏÁ½¼¿°ÁÉƹ½ª°²§¥¢£xotdk`^fqa[W`GHHGIMTG?J=64355==48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼¹ÌÌÆÐÕÕØÚÛØÐÉÏÏÑÓÈ·»»£¶~h
¤«
}~s_[^^^`^`cdc_]]^_``_[Z\`lrqookloo}¹ÑÈÉÊÏËÍĺÀû»ºº¾ÉÆÂÃÀÃÈÊÉÈÊÈÁÅÌÆÈÊÍÉÄÂËÉÁÁËÐÅËÈ¿¹Â»ÆǾÀÆÏËÄÀûÉÇɼÉÇÅÊÀ¾ÂËÆÅľƽ¼ÁÃÅÌÅƼÀÉÃÅÇÒÅÁÉ¿ÊÉÆÈÆÑÃÃÆïÄËÇÃÊ·¿¼º´©¬¤¥¬£¡¦£ |wstfiZanmZ\XRDLFBGELDFS@54335?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÚØÙÏËÒÍÍÎÈÁµÃ¾±¯¶l^z}¡z
vxurp_[[]``bcdded`\\]]_^`[YZ\borokikposǽÊÅËÀÆ°¶º²²³²±Â¼¼¼º¸ÁÁÁľ½¹½¿¹ÄÊÅƽÆÀ¸»ÄÉ¿ÁÉ»·»ºÆÿ¼ÁÎÃƾ¾µÁ½Ã»½Ç»Ãº´½ÆÄ·¿¶¶¾¿»Ìý¶ºÈ»¿¾ËÃÁÆÂÅÉÇÉÆÐÆÂÌȲÇÉÃÎÌÀÅÿ½²·°²§¨¨¹°¥°ª¬zvwjdg`hodV^YJFJFHKAFBFJ@9:658854;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÅÂÄÈÎÒÊÊÉÆÍÍÎÑÈÐÅÕÔÕ×ÍÊÎÅÉÅÇÁ¹Å½«®¦`dux~{ttc\\]^``bcbbdeb]\[\^\^]Z[\^hsqmggnory½ÌÀúÀ¸°±§ª¬§¸´¶´³³´»¶½±·°µ¯²»Â¼Áļ¿»µ²º¾À¸È¹´»·Á½¸½ÇÁļµ¯²¶»¿´Å·»µ«¹½¾À½±º¶°·º³Æ¼·¯»¿µ·µÅ¼¾ÃÅÀÄÅÆÇËÅÀÆÆ»ÇËÀÏÉÇÃÆÁ÷ý½¶¹¾Ç¿¬µ»µ·¶ytxggebkn^V^`FKHHJFBDAEE?<:566633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐÌÍÈÉÈÊÈÊÄÐÍÒÏÍÅÇÁÆÀ¿º·É¶ª°[gp
zx~vw|sh]]]]_`_`da^cec__\[^\]^Z[[]_lpnifjmnr|¤ÇÀ¸¸µ°«¬§¢©§ª¬³ª¬ª´¶±³©®§¬³»º¶Ã¹ºº±«µ¹»´Âº°À±¾¼»¶¼È¹Ã¶ª¨°²À¶¸½°±§±³µ»¼«®µ¦®¶®»²±ª¹°®»®»¸»ÀÀ¾ºÃ¿ÆÃÅÀ¼ÆÁÇ˸ÅÇÅ¿ÇÃúÄÆ»ÆÉÌ˳¹Â½»³svvki`bliYXW[ALKMJEAC?FA:9:996854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÄÐÇÍÁÃÆ¿ÄÄÃÃÊÂÉÊ¿À¼Âº³µµÃ®ª°[j{x}
z{wn^]\\]_`__dcbcdb`_]Z[ZZ]ZZYZ\enohfhiknrº°µ®¥¤§§ ¤ ¥«®¤¨¢«ª¬«°¤¦ª´¶±½¹¯·°¨®¸´³¼¸´¼¯¸¹µ²¼Á²Á®¥¨£«±²³¨½ª«¨«¬®µ³¥¨®¡¤¯©²¦¨¨®¦¨·¬±²·ºº»²¼¾¾¾Ä¿µÂÁÇÈ·¾ÀÄ·Äÿ»¿Ä¾ÄÈÌÊ¿¿ÃÀÀ©stsji\aodWWXPHYRSKFFE>?@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÍÃǹ¹ËÁ˾»É¶½Ã¾ºÊ·ÁÃÁ´¶¼¶±¯µ»¨«dmz}~xt~|swe_]\\^_`^_ccab`a_^]\ZXY[[YXZ\_fkfdgehjor
ª¥¬¥¡¤¤¡£©££¥¦§¦ ¤¦²°¶·§±¨ª´«´º±¶¶®¶¹²°ºº±·¥ ¤¦±¨¬©ºª¤§§¨§² §¦¤¦¬§¤ ¡±¬²´³´°µ¼¶»ÁÀ²»¾ÃÁ±¹¹Â³Á¾Àµ¸¼½¾¼ÂÇÅÃÄ¿ÀÄ xqlbf`ko`UY_HNgOTHFKF<=@=:;;826536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;>97776788666;::;9:;<859<:>>@;È´¶½¸ºÀº½¶ ¡¦º¶«³³»³ÄÏÉËÃƸ·ÇÀÌ¿¸É·»Å¸³Å¸³¿À¬µ¼²¬¥¯³¡£ir
|xusomjiipi_`]\\\^__acb```a^\[\\XYXXXVX[^_dcbegggkmo©¡¢¡¢§ ¤¥¢§£ «°±µ¤©ªª¬¬¤´¸·°¬³¶¯³µ¯°ª£¢²¥¦ª¹¢¦¦ ¨« ¥£¯©«¨ª¬°²¸¯¸¹º°¶¼»º«³²¹³½´¶±±¶µ¿¶½À¾Ã»º½{sk_e^ddXTW]IW\KPGJJGA<??@;?<05535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÅÏÈÈÀÆ»»ÃÃϾ¹Ç¸·¾·²Â´±»»¬¹º±¢©«§m~
xrmomkb^aff]]^]]]\]_aabccba_\[[ZZYXXWWWXXXZ^bddeffhikr§¡¢¡¨¥§¢¥ ¡¯®®¯²¡¥£®«§¢µ°²²¬©¯³§º³¦¶¡££¡£¢ª¶«££¦¥¦£ ¡«¨£¤¦«²³ªµ°²«²¹´¯ª¯²²³·³®©®²¸±º¶º½À¸³±zuf_f^[YVSZUK[QLJEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ¸½¿¶¾¼¿³¥£¥±Âµ¶½´¸ÁÌÈƿŶÁÀÇηÀĽ³¹¹²¿¶±¹»²´¯¤ª xxoqtqhechdc\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWVWadecdeddhjv ¡¡¡©¤©«§¯°«£¤¸ª¡ ®¨¶ª§¨±¤¸°¤· £ª§¡¹°£¡¤¢ ¡©©¤¢£ªª±¨´¬ª§³°¥«®³±°°¯¯§¨¨²®²µ°¼´º¸®£zwe_aVYXSRSKM^LPLGHLKE=@>=B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾·½®§§¢ª»À½À¹®´¸ÁÌÇÅÂýŸÈ̲ÁÂÁ®¼»µ»¼µ¹¹°¯°ª¡©|wqilrtphhedfa\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[bcbbcbbcfi §¦¤§¨ ¦ ª¯¦¢£·¨¡¡¢¨³¢¥¨¥°¦±¬µ¡©¢¢²±££¡§§¢¢¤¥¥«¤¥°§¥£«¬¦¨®¯¯«¨ªª³¦¦«¯´±¯¼¶±¯¯ {xsea\[]XNLQHRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847763321./2556;:8;7876<;:;;A8x»»±µ½°»±·¬¥¦¬·»¼Áź±¹µÄÉÉÀÃÆÅǶÅijÁ¿Å«··½¶½º»µ²«¨£t~vncafihfgifil`]\[ZZZZ\]\[\^_\ZZ[YYZ[WUXWTTVURTRU``_`a_aacdi¤ ¥¢¦¥¥¤¤£ª«¥¥±ª ¡¥«¨¢®©©®¢¢¢¢«©± ¢¡£¤¡¢ ¢¥¦£«¥¢¤ª£«®¥®²©¦¥¦¦´¦ª¨³µ´¹º°ª¬sqo`[WVURFPNHZ\ORJTKSLEGJD8;;=<9667:9;:976977:;:=<<6;<8>598:88659:<<97?<9678452121..1426:8698598989;9@9{µ´¬´»²°«²¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÊÌȵɼ±½Ãɱ¸Áµ¼À¼´µª¬¦r{tiijlgjlmkjle]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURRNQY]\]]^___bdm
¢¡©©«©¬§©¦¤¥¯¥¥¯© ¡¯«´ ¦¦£¤¡©ª ¡¡¢ ££ £¡¢¨££¨« «¯¤®·¦£¤£¬ª¨«¯³·²½µ³«¯
tsh[XYSUREXLQ[XMUOPLQRINJC=??A?=75799<<977:79:;<=>;7;;:=67:;8976989:6:=99576570141-+/434988::8::748=8?9~³§³·¯¨¨¯®©¨¬·¶«¼Ê»¶¿¬ËÆŸÁÎÏȳĺ·»Âȱ¸¿·¼½»³µ¦© ztvwnmhmmmpggifd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNPQYZZZ]]\^_`e}}¢ «ª¦¯¬¨±¥© ¡¥¨§®¨« ¥¡¨«¥ ¡¤¡¢¥¦¨¨¨ ±°¦±½¨ £¬´«®§°µ°¹µÀ±®±«~rsbVTVNRJGVPRRLLXNJLORGMKACFDD>A75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8´¬¦±·ª¥¢±«ª§©²°¤¶Æ´¹º³ÊŹºÁËÐʱ¶·¼½Áñ°±·´´»³´¢£vkglnqnrkpkdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]aj~x~t
© «¦¦¬¨¡¦£
¤£¢¥§ ¢¢¦¤¦©¦¡ ´²¨³¸¡£·¬ª®¤²²¦µ¼µ«¬±£ysn]NQQLODNNNPKFNNJJNNQIMJAHLHHC>858889:;69:68;99><8:>9;?8789:886857688974577820301*)-/12876:999984988A7w¶¦¤·±¥§¤ª¥ ©¦¤³ª¢²Ãµµ²³ÆƶºÃÊÌƳ¬¹½´¸À¯©°¦®º¯|n__frpvqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXXX[]anpuo¡£¢¤¥¢s~{ £
~~tz££ ¡¤¤¢´¯¬°¦¸¦¦±¡°®°¼ª©¯ªxtdWMROPMCSNLPMBPQHINSMHJJDKMFKK=749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-02764789::65:87A7x·¡£´©¦¥¨£¦¥¦¦¦³§¥´Á¸°´°ÉÄ·¹ÁÎƽ³¬ºÁ¬Ã¨¢¦¦¶£ ~x~fWV_gfighnciigb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTQMMJHNSSSTUUVY[]jjpk~{sNXr _;Vo|s
y{}xqp}¡ §®©¨¨®³¢¦®¬«¨´£©£to`\OSRWLDTJPMLFNOIELQMKOJIMPFII=7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· £®¡¦¦ª ¦©§£©¯¨§´Â¹°µ°Ç·³½Ï¿¹¯®µÂ§ªÅª£±¢~su]PLQUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMORTVXZ`lngzsPB?}y`JQnx~
mwuvxpQ|~xvhw~¤£¨©¥¤±ª¡¤¤¦©¢ª¢¦¨vng_]HQQSMIUMSILKOIHFJNLMTKQPOFIC=769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')+*,4833989:99::::?9w¶£§¡¯¡§¨¥§¨¯¬ªµ¼¶¸¶³Á»¶¨¹È¸¶¨¨µ¶ª²¼§¨~}xqoXMKMMNLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZnru}ih\Tt~|
{vxsovqtz~«
y{hv{prmxx{{vsrxgu
||© ©¥§¤ ¤shb]]JWPRGKXROJLMRJJJLPHLQLRTMEHA=77;99>=:;<98@?::>=7==79937785675251472/2.,//200/-+(().12721987:8775:<;7v®£¡´©¯ª¥«°±ª½´²¼¸¶º´±·º²ª¬©¨²¯¢~vx|vooiXKHIHGEHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQQSV^t{xfv|gyvx}q|w{ok~}t{|ufv|logs|myq}qmvqhq~pD
wxz}{u}£¡¥xomgc[XXUQJSUTOPNQVKNKOOJROINPLFD<<79;::?=9<:99??;8;=7<9999266856633611224.,,-..-0-+*''*.1362/876966527995y¦ ¡¦°¬®«¨©±¯±«¼¸¬»¾¸³¬§°§¬¥©¤¡
yuq{mupjmjXKFGEA@CDHLLMQRPQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNPQTX]eprl§ªÀ~tyb{xo|yz}omytyjjq~Inhx~midly
lrl|nr|inps
{~{wpttyyp|ojoooYVXTRQYORTTRXUMNHMJMOKCINGF@:99;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¥¬°£ª¨µ¯®¬´¿«¼Ã¿¥¢¤¡¡sztotkpldljYNDFC@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORWZQY\_§aisye~omzvtltt|jjMy
g1vsl~}tfeu
gilukq|hqq|n|t~}qqnvmwyujyywkkphfXRZWYY[MPUVYXNIHEJJHGC@GECG=998;9:9<:9;:::@<9:<98>787715234533645031.**+),,++)(+'),,226,,4775478iO8;5n£¨±§º¯«²°Â±»ÃÇ
zqtyprpoodpf_TFIC?<;9:?@ADCEGILOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOPQVLAIQIb¯² q{xl}lq
zyr¡txsu5q¨¡¡¢
vp||t®hgbjnrmpuioXupwm{}mrnp{svnbv
ux~}{sqqm`\]^[YX`_RN[ZXWLHJFJG?CABH?CD=;97=;:;;9:99;:?<88=:8;66651121253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥´©®±®Á²»ÁÅ|nul{txxlwnwci^JPG>?6449;;;=>@BEHLLLLNPQRTUVWXZXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~lv|~
~u¢z~aªzw~s{]eqtz|wmhjbyo
zoxu
zptyxkni]v||
}q}uw{|wpstfg`[[^S[g^WPTX[UGJJDKG?F@DC>AA=;97<;;=<::99;;=>79>9985653244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¦ ª ±¨¯À²»Åº{vk}xs ||p~zgvkRWL@E211366688:<>AEGFGJKMOQQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJh{y|q|z}~v¡¥ªH®¯¯©tm|}hghyn
qGlwryvhmk_v}yzuv|xmpw~ttrl[^^\ccXge\TOPVYPDLKFNICFCC@@CA=:88:::;;:888::?>6;>7595773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|}
¡¦¸¯³½³}tp~~}}~¤
x~sx_cWKB60./23124668:=>?BEGHJMNQSTUTTVUSQOGC?80,#[>?84.]ps£UFIKMNPW`XpY\^i
~
¡¡¦»±§»Çè¡¥|qv
ihptq
w{v
}nvuf «¢zzyogkx{tle^[[^j^bg`ZOKNWRQIPJDNGCJDCADDA<:87=<:<:88778:==8<=68756623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfw{¤¡¬¦«¯°¡xw|~
mpj]B@4--//..02234778;=?BDHINQRSRSSTRPOHDB<87/9D><<63.lMPHIKKKNV_cggmu £ª¥£¬©¶¢¨Á®ǯxº|¡
¢
lpuwqm
q ¤µ©¢}kjk}uc^d`[gl]ll^WKGNRQMLLFIPCDMFBCEFB=997=<:;:987767;:6=:785456344566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYoouqv~§ ©ge¤~y}
xx~gMR>/..,/.-/000212467;?CENPRTPPQSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} §¥¢¡¢¨¨«¨¬©ª¶«¿«¶ÈÈ·ÉÑϾ pi«©
¡§¢xz~¡{w«²|£¢¦¶¯¨lss}}si`^b`bhd`gf\REJKPOIILFFMCHLFGDBGEA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppt`m}aw}{ªªBD}x|
v^bP460-1/,.00//..0015>ABMQRSQRSTRNSLEE@<>=GG@A@8662<9;FHGIJNOQYm
w£§ª´½¸¤¬¬§¨´«°¶²²»±³½³Ã«ºÉ˷ÿ¸¥¢°³¬ª£
¦¦ £¦¢«¨¥
¤¡ «¡¤©°£¦·»¡£°¢¡£¡«¯¬²µ¢¤ªzz~ibi]fc^dd^gg_[OCIHSNFHLFJGFFHAKFCFFA;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLhcWioXz
v
ÚÈsV|z
pna@E64<2/110-,+-1.-4?CAMUQRSUUVUN[PGHE<>>FHCEA7;<5C;=FKIGHROPW ®£³ª²ÀÇê³Å¶¬³¿³¸¾¶¿´Á¶»º£¸Å¨¶Éǵ¾¹µ¨£´°±§¯«¥v¤¡¬²´ª®¨®¶»²º¬¯µ¢±«±µ»·µ®´ §§¢§©¯²¹·¸§¶¨¤xwZceWgbbd`af`[UJDDLUQHIJDIGEA@@KDBMG<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AFWQJL[ZQbcWyuq}u
{¿»£¼´y
zxn]V@EM<6:46AB764//6CHCQ[OQUWU\VO^UIKKA@?GKFFD;>@7D7?BJJEFWTP^¤£±´Ã¶¸ÁÌɶ»Ä½³³À¶¸Áµ¾¯·t±³¥ºÄ¤°Æ¹±³±´¨¤µ¶ª± ¢¢¥°®¦¬§¤ ¬´»¢¨²ºµ¼¿Ì¿ÅŽ½³Â·¹¸¿·º·¹¬¬°¥°ª½°¼ºÂ¬º¨ª}~lXdbYkfjfW\cYVSIGFLQGCHIAHD>?BBL@@MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALRWSYUZvjp~nzsxb¹¡£{z|}}wzueP\dGEL;Qca[^SF?;HPEZcQRYXZgYT``LSPEA?IJHEEA@C<E6B>HGJLSZT]®¸µº¸È¿º½ÉÌ»¼À»·µ»º¶½´º±Æ`u²¤±«½ª¥¨««¤¢²µ «§®¥§¦¥££§±´§²³½¶Á¾ÓÉÉÓÇÂÅÌÂÊÃÀ¾½¿»¼·´¯¸·¶Ã¹Å½Âǯ¹ª¡«¤§¶s`cc_Xb`igRX`VQUIEENK@>GD=KA=B@=F>;H@796379>489:57045/26389374426?8@>GKRTSQPOQQPJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRKQ]glkp
slrssÕÀµ }~x{|y~t}zkfpuY]\Pedb`ed][XW\MdmURmm_n_XgdUYUJDBKKHFHHHGAI9D?HKTTV\Z[¹À¸½·ÆÀ»¹Êʺ¶¹µ¸¹²·µ´®¶¶du¨p^¢¬ ¢¤«¥§¥¤¬¥ª°¸°½¹ÔÑÎÖÐÉÌÒÌÏÎÊÆ¿¿ÂʽÁ¼ÁÀÄÄÅʾÈ㤻°´¯«¸»{m^a]Z_aZccP[`SPKCAEFE<@E>AHA@D=:E>=J?47535;=468977022/24169775555D3ELM>51/006:477@IOI;-&**(-./,@M+/54mI0Ht?>BD@CDFKODQ\Yh_onlouu³¬¡
~|s{
{ts{ylmu{hreilifjih`fiilZms¤¼g[oh]ZZTHKNOJKPKSQHLAJGJO_^bfia·Ç°¸²»½µ±ÄƵ°¸°¯»«²±§«·«µ§§N¦¥¡§¬¯¨°§´´ÔÔÔÖÒËÏÔÕÍÓÏÍÅÂÉпÊÉÊÉÑÇÌÍÂÐÑ·¯Ã¼Ä¹¥¶ºÃ¢pe^^^YaXZfZQ]WOPBBHEBH;AC>AG??A8;D>@H=46655;:687654/10146278875367C5B8?-0-1349=97,.,1;FK=),(.0007K?-46TW0DwC;B>EBACJM?UYSeVshqoyy ª¥}
|p{r}qxulqx~q{nxslhpmcjmpxiw|~Ë¿Áߧncxnc[a`JPRUNY^P]\NPNTQUT\nmvq¸¬´¦¯¶ª¬¼À°«´¦¤¸¦«® «´£±¦«¬¤§¢¬ÏÒÕÑÍËÒÓÔÐÔÑÎÈÃÔÑÇÍÒÓÓ×ÌÑÑÅÒÖÅÀÎÇǨ¾·Ïzpf_d^XaS]ZPQTPOH>@FABE<@B>ED>??:==<<JA45465<888664412/03526768533;=<E=@11+/249>5901022-2DN3)/3.32=N238C}_2AtD:==I>@CFH<VRMNZu
wlwp}~¡¡y
{r~zu
ovrks}{v{swqjsripqzyrz¾Ë~²vrvhak]CZZ[VecXdjSX]]`d^cxz~©£¤¡ ¨¥ª°¸ª¥³£¡¡£¡§±¦j¢
~§°¡ ¡¥¤¨ÈÎÏÈÂËÑÔÑÔÓÎÓÍÆÖÒÌÔØÖÖØÔ×ÕÉÔÚÍÉ××ÑʬÃÃÌtpda`YUZT\PKGJJJ@;:;DAD<BC>GB>BB;<9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/--;R017/532FD28>nb5=tM99@I<AD?A;PLFKYpu}hsxr
x~xs{}wznwpmuux}t
|ylvtn}vux|µ;AÅ¥~|ieWICfcecgjdnx[^fhknin ££¦±££³¡¥ © £±~
z~©£}«³¨§½Ãƹ¶ÆÍÒÐÒÐÌÒËÉÔÎÐÕÚ××ØÔÙØÍØÛÎÉÙÚÑÖ¾ËÌ´ywpf^[SWR[VFGJIEE=:7:@@B:GD?DCADB;?;;7DC75655;0689443341014558754449@>DBC<33.6FTWOQJAJF?1*(.BS39254/7K75<`bA<svV87AH:?C><9QECJTknnpbpqt}~
|x
zyqz{uz
yp|oozq{qnzuw}|u~{¯sX©Â¶pnb=^hrpqpnxvehoruxqz ª ¬¡¥«}
~my|®ª¦¯µ½©¾ÇËÉÉÌËÐÉÃÒÊÔ×Ø×Ø×ÕÛ×ÓÙÛÕÐÚÚÑÖÈÔË{}ji\[QTT_HCFIH>A>=7:=?;=G=?AAADA>?:86DB755479.566435532323646553457EBDCEB56<FNSM[nfcnskaV>,4LG865434BF4=W_hLux^8;?F<<B<::D?CGRj^mdbfkvrz~~||~wyn{{tz vutu}too
t|zv{·Å¤ÁɸwpeNfczw¢xyv{{vm¥£«
z}¡¼¡©¦¦®¨¶¿ÀÀ¹ÇÉÍÎÅÍÉÑÖÕÕÙÕ×ÛÔ×ÙÚÛ×ÛÚÚØÎÜÆ}{ikgaUXVVNLDMB;==<8:<>9=@6=?@=?><9867DA6455=80665547745613855564557HH=DJE7925;H>;::7IP]ZRUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Yea][htzylwvz|~~|{~
zzu}um|}~s~|~x}xnt}{}z¨Ã¡½£}}r~s¦
{hGq ¤
~¥
¥¸¢¨¡£¯·ºµ¬ÀÅÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Û¸z{zmkgXb\TPOICLA<<>99::99;=6?>><=9:;;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8589?=DRSRX_VXfmmmiqsy{z|{{|{~u
yrzsm~~w
¡n¨
z |}£¢ ¤®
Wr«\¢
¢£ ¤³¡¡¨²¹¬¦½ÂÇÍÈÆÏÌÐÌÎ×ÐÑÔ®ÖÕØÚØÚÚ×ÖÙÙqvih_^YTXYCAHC?>>:49:;7:;;3;;?=>7;9:1:H>:37=@50677255?65;55858:57735HR7GOK994=EJB>1FCLB98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcbymb~omxxzz||{wsp
zuvvt
}~¦£¥¢¨r±§¢£©¯n·
ÄȲ¡¥²d¤ÍÈ
ª££¥©¡£³´¦£¼Á¾ÈÅÅÉÈÉÂÊÓÍÍÔ©ÒÑÖÖÖØÚÔÓÚÎsie`__PKV\BBFC;A=837;<:8=649:<:82?9:2:I:=67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBcFu}|m~xz~z~vv{lny|xx|~£³¨£«²¡§ ¥¤®¢·³¡ ¤¯¢¤§©¯¤ À£É¸«¢¥²
¨¢
t²¤¡} ¡²®£¥·¾´ÅÇĽÃÿÆÎÊÉÒ§ÎÍÓÒÐÖØÒÏØ»s{w^bWbXQIJOEBCD5>:76:?;<7=42669774=5<5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=89567=:JFDGN[\YJga;Hz{m
y|x
}px}}|osz}{x
¨»¨²½¯¥®³³¨£¢°¬µ¢¸¥¬¤©·¦¤£©ª¤¯°© »»É i¶¸«°¢«½£^©²|}³«¢¢ ¥¯¨¢¥³¸«ÂÈĵ»½»ÅÈÈÂÑ¡ÆÉÍÍÄÖÖÐËÓ¢q|j^\U`RQGD>=CAB8?874>F<<6<35355454B3::BM:A;AHB;:@<746<B9?@B874::6>=47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPeHb`cpJ@~r|u~m}}|pww{«ÂÀ°¾Æ»³´Á¼´«³¶¨²®®½ª»¤¨¹·«¦¦¢¡££ª¯²±ª¤¢¥¥£¹®¨À»¬²¹¥¤§}½°z§±« ¤¬¡ ¡¨§¤¡¤°³¦ÁÆ𰻶ÅÄþͧÇÃÇüÕÐÍÄÊvud^\a\OKCL@EF>A?B;:4>A==5<6>333242A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\gG`igZ][{un~|q~zz§´ÆÉÀÂÌÁúǻº¯«¹»²¶º³À®¥À¤ª°»»ª®«¢¢§¬¯µ°ª ª¢°´§£ººµÁ»«¨²¤¤¨©ÃĤz¡ ¦ ®ª¡ ³ ¡¤ ¦¤¦§¤¯¥¿Ä®©·µÉþ¶Î²Å¾Ã¼³ÑÊÈÁµv{n^Z]lTNICLKJI@A=CD<5AD;:3=8B332262A05IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBg\Me\fTcjyr|~wz¡¨º¾ÈÉÊÂÒÉÊÂͼÁ³»¾§º¿¾¼Ã·¬Á©¬³»½ª°©¤¥£¬®´¶¶ ¯¥¢£´½©¨¼Á£¶¶¯«¯¬ª«©¦¥¥uy
££©¥}£ ¢µ¦¥¤£¥¦¥£©¨¢²¨»Àį¥³·ÌÀ¹®Ã³»¾Á¸ÂÂÁÀp{cZX]\MLMIGDCHBBACK:4DH:;4<7E.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQF7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>kI_XaZdeVx
~ ®§£Â½ÉÄÈÆÓÍÎÍ˼·°º¼´¼Ê¼ÃÁ¶¶»³¿¹¼¯¨ ©§¶®©²·¢§¡«·¸©¥¯¾Ä±½¹³§©³³®¥¬§ ±Å§|}ª¥¡£¢Z¥f£³¥£¬«§§¡¤¨¦¶¬©º¼Ãµ¦´¶ËÁ¸ª¶¬³º¸®¨¸º½¸np\ZVWOGKSMK?AHEDGFG85FM;>7>AJ.32025B55PWN;LFKRLOGGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|hW;=@BFBrFiIRebLF¦¡¨¥¢¯¾®¡Ç½ÆÅÈÇÎÎÎÒʾ»¶±º»¼¾Î¶Ä½·¸·²²µ³¸²«¦««¸«©¨°°£®¤§¤¥´À°ª¬³¾ÂºÀ¹³§¸³·³®¥®®¤¡sÁ}±¦£ ¨¡ `J¥T°¯¥¯¯¦¡¦ §¢´©ª³½¼»«°²ÇÀ¸¦««±±£¡²²´¤rpg^\PRMEPPPQ;HKIFHAC>9KT?A:=EM07544:B34NWO<JKNUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@CAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}iX;:BC@=REWRsbWFH«¡¨®§
£¥µÉ´©Æ»ÃÄÈÊÉÈÌÎǾº³¯¹¸ÀÁ͵ȺÀ¹µº±¯¯²´¦£ª´´«©¦®¬¤®¥¥¨¬º¿¨«¶¶¿ÁÀ¾¸³²Â¯·½«£®´¬¸¥¦v¾ ®¡ ¡©¨ ª¡§nv¢¢®²£«©ª«¯¥¥ ¥ª¢±§ª«º·½³²®¾¹¶£§¨¥§¬©©ehb`SLMGHNJVL=MDMIJACD<QU<AABDO18=77?B75UXN?HNQXRPQTJQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=..SaMVHe^HF¬¡»®ª«¢¤¬££¶Ç½´ÁºÃÃÈÉÅÂÎȽ¹²¯¹´ÀÂʶƱÁ¼µº«¨¬¯£¢ª´º¦©¦¬ª¨¯§¤«ª¾¼¨¬¼³·½Æ¼¶µ¸À°½¿³©´¶«¾¤¢¢¼ ·©¥£¡§¥³¢¥¨ª¤¢¢ µ¯¥¦±««¥¤ª ©¥¢¡´µºµ¨µ²³¢¦ª¡xb_a_LIGHMQIMEFFBRJHADGAVSDH<AGQ1;B7:BF79\YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:h]FDCpbGE¨¤Â¬¥©ª¨¦¬¡ª¶ÄÁ¼¿¸ÁÃÁÈÄ¿ÍÆ»¾¹²°¸³¿Ãȵ¿°¼·¹·§¤««¬¡¡««Ä¢¥¨¬¦¬¯¬¢ª¨¿¸¦¬½°·¶Ç¶´¹¸¾°¾Á¶´²´¯¾££¡¢¥££¾¥©¨¬¡¦½¢¤¢©«¡
¤ µ¬¦²§°¨ «¡
¡¥¤¬±¶±ª¥©¬ ¡©je[b^PJIKOMHFCI@=OH@;GIH[ROK=HNU4BF9>HG5Cb[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,0Mv\4KZ5,MnW<-=)#zbQ5CKQ9oRF<KxfcXM¢£Ä«¡¬¢¤ §ª¬¶°£ª³¶Å½À¶À¼É¿Êȶ¸µµ±´´·ÁÆ·¾±¸µº¶ §ª¬¥¤Á¥ ª® ¤©¯¢¦§½¶¥±»·¶µÃ²³·º¾±ÃÀ¸¸³´µ¢¤ ¡©¨«¢Ã©¬®¦ ½¡¤«««¦¡X¦¡ ¸ª§·£³¢¡¯ ¢¤¦®³«©¢¢¥¥¤cf\eaMJKKOFEAFK>=JA99JJN]QQJ=LW\9FI=DMI8Hc\LCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWsHE6=ue\LO¡Ã§¥¢³¡²§ª¤£©¬»°¨¬µ²ÈÃÁó¾ǼÅʽ°±·®±µ¯¿Åµº±°º¶©±©ª¦¡¨Â¬±ª¢®°©¤§½·¦¶º¼¯·Ä³³Â¿±Æ³º·«´¶ª¢¥£«¡§«¯¯¯»²¦ ©©¢¤¸¡¡¤®¯¬¤¦¡£§´§§´£¯¯ ¡ ¡¦¬°¥§¢
cg\hfKJLKSBC@IG;;F?99NMU^RSJ>O^^=HPBMLI9Nd]LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<v]^?[U^fr@8<HweA4¤ ¨£ª±¡£´©²«¦¢¤²¬®©»²°´´Æ¿ÄĵÀžÊŶÀɶ«µ©±¸¬ÀÄ´·®¶º¥«²«ª §»µ¨°®´²§ªº³§º³·²¸Àª·²Â¼´Å§¾®·µ©§¬¡¥¤¢¢¤¯¸²µ¶ ¨¤£ ·£¤¥®²²¥©¥¢¨¢®²¢¦¯¥¬¦©©«¢§¡zej]lkOQNNT=BANC;:I@77QO]^RVQAW`\BJSHWKH:Ud]NFON[W[RPQX]GAB[PBG>NC9HGHNP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1\cZ33906p[bH05JpiVCWFyfC;¤¤¡¥¿¦¨¯¯¡©µª¹¯«¤ª´·±°¹¶°·¸¸Å½Ãǽ¼ÄÂÇÁ¹ÁÇÁºª·¥»Á÷¸ª²¼£°²¦¨ª¹ª §°ª°´³ª©¶¶¬»¬²²¹·¬¹°Á¹½¾¦Ã«°·®¨ª«¦ª¡¢ °®³«°¹©¦ ·©¥¢¢¯±³«±§« ¥¡£³°¦¡©£ ©©§ ¤~kjnbnnXRQZTACEU@;:IA7:XPd^PWWDY^^MLRO_KJ>Zd^NIQN[UYPKSWZI?DXPDF>N?=IGGQPB=CFBM?:2D?77547?=95E4+75/251.-.,1>*'+=\p=>1.1e[d@1747gY`F(@8l}h\V:{cC=¨¡©½¡ª°ª£±¸©¥µ²«¡µ½¯³¸¼º½·¶ÁÿÉĹÅÃÁÀ¹Å¾Á¸¯¶¨«·²¼¿¿µª®²¸¬¨¨©§»¥³«¢±°³¬ª¶³µ½¯±µ¬°µ±À¹Ä¶«¼¯±¸¬¬©¢±¥¤¨¤²ª³ªª³§ ¦¤´®§¢¬¬®±§²¬²©£¨¤ ¨µ©¡¬§¦£
{fmshps_GYfVDCNXDZ9HB6>]Rh\NZ]G[^]OMRXdJJC\c`PLMNXWXPJVVWL=EUJEDAM?AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,+%2+*5K1.'_^aV151=`V^8)C3YU\gK5zfL@¤ ¤¬·£¬©¥®®¶ª®´¹¦§°¸Å·±·¾Áµ´»Å¾ÌŹÃÁº¿ºÄ·Á¹³µ¬ªº·»º¾µ«®±·¨«ª«««½«®±£ª±³®®¶²¹·ª®±§µ¯´º¼É²ªµ´±´¯®¦¡³¨¬ ¥±¢ ¥¯¡¤¢¥¦²©¡¦±«ªµ¤®°µ¯£§¬¸¢¡ ¥£¢¡{
{lnyou|aF`jZIHZ[={JGE6AbTiZM\aJ[\ZRRSbaLKE`a`PLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`Va.5(C^Q\.*A/JGP[G3cYTKD¯¨±©¬¥£®®µ©¶´·£¬´·Éº´»º¿¾µ´·ÃÁÍǼĽ·¾¿À·¿½²½®§ºº··Â·¬®²¹§®«§£³ª¯º¤²±¦§¢²³±²±µ±¸²©®«²§¸¯µ³ÄĶ©´µ«°©§¢¶¦± ¤±§©©¢¥¥¤·§¢°³«§±§°µ¬¤¡¬¨ª¹¢¨£ ¨¤¡w|nqxv|]Kel\JOd\?b{GI8GgWe[M^bMXYWUXTi]POHa]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANIg27'FaLV%-B.=ELQ<3rkKDC¤¤«¦£°²³ª¶°¶«µ¹É¹®Á»Ã·³²µÂÃÏÄÀ¾µ½À¿º¿½³Ä¨ª¹±¶·À½°¬´´¡§°¥¦±¥²µ¬«²°¬©¨´º¬´³µ¬´¬©«¨¬©¹±°Ç¾¸¤¹¯©¦¨°¥££®£©¯¢£¢£¬£ ¡©¥¥¸¤«´´¤ª«¨¬®¶®¢£¨ª ¤´£ ¡§ x~
}}}rts~~\Rdn^NZg]FD[G:NmXb[MabNVVVWTYg^QRLdZ[TKGOTSNGIVS\N;P^JBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Ce;6*HdHJ+:I?3CIS,>k>HI©ª¡©°¤¨£³´±´µ±±¡¬½Ëº®Á»Æ±´´ÂÃÑÄÆ¿Á³¾Â¼¿¸¼Å¨·¬³¸¼Á±¬²®¡¤§©¨¤±£«±ª¯«±®®«³»§·±²©²©«¦¥£º¬ª°Â¹´¬¹¨¨¨©§±¥©¤¢®ª¨¢¢¬¥«¡§¨¡¬¥£¬·±± ©¢ª°¬¦§©£ ¨ ¡¥
}w
usrvl_Y`ncQsr\K<|F?WuX`YOc\NUVUWP\a_TOOhXWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*35>10485(5/*,.30;),,'%234$,2-860)(1<^K0.IgDF8<B05EKX1@\@MF¬§¡ª²©©°¶¬¸´®ª¤««½É»±¾·Ã¯°³ÄÄÎÎÿ¿´ÁÃĺÀ´ÉĬ¯·®²ºÀ¿´®®¬¦¨ª°©¦¨²¦´ª°®±¯³¬³º¤¸³¬¬§« ¢°·«ªº¶¤µµ¤©§¬¬ª¬¡¨¦¦±²¤¦¥¡¡«ª¡ ¦£¢ª¤¬¢¦±·¬¬¢¥¢©ª©¡¥¤¤
¥£|{u~uw¤yk^`ngWfdN@gLDbzWbXReUMVUUTO\]aVKNiWVVIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06XZ.0JgAA<<C+:JO^4DAIHD¯¤¢ª°ª¨µ«¶°«¤«ª©¼ÁÀ¸¹³¼µ¦²¯ÄÉËÑ¿Á»¹ÀÀ¹ÁºÂÄ®±µ²´»Á¾³²¯¬¬¨¶ª¥°«¹®¨°°®±«µª¶µ¦´¶«¬¤©ª£³³¨¨¤³´ ¶®¡©¨«¨«§ ª«¨¹¶©ªª©¡©¨¡ £¢¦¢©¦´®§¥©¢£¥¦¦©¢££~
£txu{x~prggqx\atiO]VHmyUdVRcOLVTUQOXZbVHPjTVSGPYUI>IHOQPxMNV=<KD?@A<@CUC9AK=5;E13;97*4:=+-341*8**+*,)*(/*&)%3;,$2)2021%/2Rc02?f=NX?C,?LT_/Ik7RE;¯ ¥ª¬«¤®³´®ª¥¯©©»¾»Á±¯¸¢µ¯ÉÇÈÑÀ¿½»¼Ã½ºÃÁÀ¿¯±³²¶½¼Á²²³«´©¥µ©¤³³¸¯¢µ±¯±¹ª¸®ª®¶«ªª« £¡¶¨¡¯²¡´ª¨§ª£ª¡¡¬¨½¯¬®¬¡§§¬¯¢¢ ¨§§©°¨¢¬¢¡¡¢¢¦¨¥}
¤
¡
xs}txz{tt{j¤vi^elug|RWp^KxsTdSQ_MMRZgNLVYeXGSjRQ>BNQaQ:IHLSIqQLS;<I?;<=;@@W<<>H73CB15:93-5::)-31--6)(+-,52#2)',%.;.&1.0-14%,0Mi:38_=ad?F1CP[[+HO;XB4± ¤¥ª£¥£¬¦´³°©¤°§ª¸¾Á¼°¨¹ª§®°ÉÇÈнÀ¾¹¾¾¼É¼Â¹±°µ²º¼¹À³´»¹¬£µ§§¬²¶¹²¦§ºµ´¼¯¼¥µ«©¯¤¥¬ª§ª²¤³¨ª§ª¤©¢©¨©½«´¯©£ ®²¢¤¤¥¤§ª¥©¡ ¤©©
}~
¢~rzy~|hw|{uqr~izd`hcr
{mhy]^VCX{mTaPRYKKMpt]HZ[gYEVgOC>KNDCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KI1%90%,,09/,,+6'17#-/GjI14X=fbAJ7GS`U*=<F\@*±©¥£¡ª¤¶²±¤©±§¹Á½µ°£¹¨¨°ÃÉÉÌÁ·½Àµ·¿ºÈ¶Ãµ´³µ²½¹º½¶¹¶¿¢³§ª«¯µ·´ªº»¨±¿²¹ ¯´¶©¬±£¥¨ª£¤°¦¯ «©§¡©£¨ »§®±®¡ª¢£¬¦¡¢¢ª¢££¡¦¬{}¤|yl}vyxb{zrpqsxjujgchansmbjp`oB]ykV^NQQKILSYVM\^mWDXaO^PHMDF;7HEKO<rhJK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*L>*49&'.34.0+/4&,:$40AhZ13S=e_DL6KVdN)=3Q]=#¬§£¡§£·¯¢¯¯©«¹Âº³¹¯«¨´ºÇÊÇ¿·Â¾¯´¾·Ä¶Ã²°º±²À¶»¾¸©¹¸½ª¤µ§¨ª°¹°©¹¼£¿´´¡®·µ¦¦§°³ ¥¦¨¡¤¬¨© ª®§ ¦¢¨°¸¤±® ¬¡¤¦¦©£©¦¨¡ª}||¡y
}{sp|qst`yxjoqqpksdzlhfdbf`[rjqMNiXZMQLKHPRQHM[_oTDXZRgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZgH*?0\[5(¥¬ ¡¤¡·ª°£´´©©ºÅ¶²® ·¬°¶ÅÇÀ·¿Â¹°µ¼·¿»¿¯¬¾°³¿²½Ã¹©»º¸§¨¶¨§«°¬³°¦¼¶£ªºµ®±¸¯©¥§¯²¡¤ ¤£¡¯¦¡£¨¯¡ ¢£¤¢¶°¡¦±«¬£¯ª¥¨¤¥©¤¢©¡z~zz
~zzpqvnot_xwemllkjofrikfi^dt`[kviZJ^[XOOKHHRUF29]^mPDXVYeMHIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<"8R=*113>D5,-'42*;+139cm74GAf[HTDU]hD.<2cV,2¢¡ª¤¡¢¡·©® º¸¥¬½Å³°®£µ¯¯´Ãü³¿º·±³¹¸º¸º¯®À³´¹¯¿Á¸¬½ºµ¦¢³ª§©²«± Àµ¤¦´µ¨²¼©¨¥©¯¬£§¤¥¡²¥¤¨©¢ ¤£¸¨¤§®¦¥¡¨¨¢¡¡ ¡ª £¨¤y{}z
{w~{ltqllsawuiijggohhicfij`kcjh\e{c`StT\[SLJGIOS@!*h^jLCVU^`KIGEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,?0-N?.+-7,1195,&.5-80576`tA3CDg[KWGU`hB379gO'2¢£¤§£µ¬§ªº·§¬ÄÁ¶°¬£µ®§®¯·À¿¼²Á·°®²¶¶¸¶¶ª½³®²±½¿¸®¼»±¥¶«¥¥´©ª®À«¨¤¯²©¬µ»¨©«±¥©¦¤¦¢¤©¡¡§¶¥¯ª®¡¡¡ ¦¡¡¥«¡© y
w}
{s}}fxokjkguskcgddvcefffjjdkrZ_Y]mdaNiX[`VJGIKMRX>9_liHBTS\[IHFFA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=+*,0B*JK./*+3722(57$+7.72685]yN2>HiZLZJVbf@:3BhH%5£¡¤³±¢±½¶¡±Æ¼º±±¤·¬ª®©¹¼»»®Á²®®®¶®²¸³¨«¹±¯®³¶º¶°¸½¦µª °¤ª®¢À ±¤®°®·®µ®¢§©¥§¥¥¢¨¬¯¥º¨®¢¡¤¤ ¨©§©§|s
|
p~fymhkigqrk\hcctbfhjnlgjjhn]lltpaUcideZIFLMOXQQVaeU@VSYUFHFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24;6#3*)6.55465Z|]19Kj[M[KXdd@A1JfC'4¡°¡¨²¯¸¿¶ ´Â»½º±¦¶°¨®¥·¸··»¯¬ª«¶ª³¸¥³µ²®©°·¶±³µº§©µ¨¨¢©§¾£®¯µµ¬±¯©¢£«¨¦¤ª¢¤£«ª©»§¤ ¡k¢p£u©§¡xni~vql}p^cagltw~gguheW\hsnNPjcgs
g_dfnmj^_aeNKD9FTg^JGPPTUKHR`oteFZQUPFHFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,+08>G601.*.*/568,#1'214:175Xl16Ok[N\K[fb>G1Qd=*.£° ªª£½Å¯©¸Â¸½½§·°¥«¤·³²³±¹©¦¬´¦¯µ¢¨¸¶¶¨§¬·³®´³¢©³ª¡¤¦§«º¦¥¯³·®¤©®«¬¥¡ §§ ¥¥§§§ª£µ¯££££ ¡ ¤¥ªrx
¡vif}rx¡o~}¡ |tvllheczkqaS
mcliqYjpoX^i[kk[qnzr
gZ^GN?G_MFRVVQQRWTg^MWIRSPFGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82).1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Wa70(¦«ªª§©¾Ã¯±º½·À¿ª¥·°©¦³´®¯³·«©¥±¥´³µ¶´¦§¨³±²¨®« ²¨ £¢¡¢³£¥¥µ¼§¬§«ª¬¨¥¡ ¦£¥£¤¤©£¤¥¦¡·££ ¤¯©¡
±£¬yÔ¨ÁÇyx±¥·dÀ¿yy|Êq¼Åzrµ¦»{l±«°xhkX±®nei¼¼nhzorØ~Sjb¶²rt¡ªWOWbPVNFT[XQPR\W\P@\DQNEGJ<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww21Tk\O[M^g\>L1[]41!¦§ª¥²§°Â½²µÀµ·¾Â«§³¬©§®³©¯¶´§§¦´¥§¸®³²¶ª¥¤§²®®±¦ª§¤±£¢®«¢³º£ª©¢®¥¡¡§§ §§§¡¦¢ °¢£
¯kjª~gdp¥q®¡¤~x»}k¡v±_j´[¥f`fzfjxk©d¾rg¦u±j|±xtcmm§n[ EhfEu`~h|¤§Y_«ixyj§7J¯\XSld[KNW_\WV;NOXW/ITTJDFF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:5/'$203B/=;Uv2-Vj\OYL_gY:M5_Y30¢¬§¥£¤ª²·«³½¾°¶Ä²·ºÁ§©°«®¨©°®£°º¯¤¤®²£©¸¨³²°£¥ ª¯¬¯¦§£¢°¢¬¥¡³³¢«¢ ¡¨£¡¦¤¢ ª¦¦ ¡
µµx
©µv³·~¨~l¦{w«gk±[«{tqx °vwqkkl|N¤XHcc~ch¦`ysuS^P©mcq~b.Q¡o[Skh`LK[dX\ZB>±yXXA#MhFCEA@A19>88:84;:9<9:A:E::;6:CB8=?KNG:5:AFB@AD<FD;0201;F,0.940,.(/3,>831/2-D1<<S}n3+Xj\OXM_gX7J8aU50³¦¦ ®©§²¬©»¶Â°»Â¸¶¿©«®¦±©¡¯¼ª¡§´¬£«µ¥¦³³§£¢§ª²¨°¨¥¯¬¡¤¨´®¡©©¨© ¥§¢ £¤£¢©¥¢ Õ¹p°Â~Å|Ö»|¤¤{¤¥z¬yV¯z~j¹Z¹v}¦|zªy{±nt¼
oP¯§ÅQ zc`©bssm`Sµ´È|c¤3Bv]PjidP@XgZdaJHNmM[ROYfYCD?E?0=<59;74<;8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DC./0483+-).323971#%5*>3==Qwj6*Yi[K]O_fT7G:aQ71%¢±¨¨¥³ª¥´©¤¼·Á°¹À±µ³º²´¦±°£°²¦®¶¨§¹£¯± ³´° ¤§©°©´©¤« ©§°¨£¢¦¡¥¡¢¡¡¡¡¢¦¡¦ §¡²nhµq«n¦r´sr¶{¤£¡¥~°vÒÑv\®{
¤oª¦k
}}{±sy³etofRÈZÂ\yb_`vtb^YÊo¿uMKµSUÆdTQjcfXAOk`lhPUGI8=VQZWXIC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>HI91746@>/.24252-).26,742&60;5:=Pqh9'Wi\BOT_eP5G=aM620¡¥¯¤ª¼¦µ¥§¶»¼²º¿·µ³¹¹²¤´´¡±±¢¬°¤¦¹¤±°´¸ª ¦¡©¤²¨¬©¤¨¢§¥ª°¦¢¤ ¤¦¦¦¡¢ ¡¦¢
¬{w¨v£©o§¡¢®
³\r³R®}¤q×}x
~w¯x³aelZ°XKuyf`^vwhk]¯wxl5yÈ®²_BSo^g`EPm_pmVUM.echRXQ;AD@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@>V_cN6GC`I:99 ¹°´Á¨³¨©²º·³¸¿¹·±´»´¤·³´¬¨¬§µ«¨±±«´¤© ¨¡¶§¦©¢¤¡¢¥¦¯¦ ©¡¢¨¥ ¥¨¤¬¡ ¡¡ ¦©}}¥x¡ªp§¡£ª|yo±Z¨ ytØvt¨£|{²^d ~l\«[Zhgªdr{ks]¬Z koeOJC¡\[Lt]bgM[a^qs^JV6JXHE=GFAM35A8.;>05A78@<6=<F?:<6?=B7.HVJEAH6KIN@IK@EN::@4.;>102144+*05/7,&21($$6671<PeeA&Uf[?2U_bL7FI_C2?8¡¿«´Â®¬©¦´°·±µ¿¹¹±°µº©º´°¤¥§§ª°©¯©µ¬ª¯¡¡ ¦¥¤º¢£« ¢ ¨°¯¦¨¦¤¨«§©§ £¤¡¡¡ ¡«®mr´r©v¦s´xs³¤£¤w¸o{¢kk¶Z
ei¡¢§mr´t²j
ku³af¢oj\_M¡|Rs£ly~oq\¯V<weTon.\§OcRkebmZc\_ozbTZQ>>mo3CB@?L9!7@6.;@37C58??3;<CDBJFMIF62JTKEBI6IJP?HNCFP=<E50;;010/75,+,426/#00,,289/9N`eD'UdY>/U^aL5FM^81C8¥»¡²À®®««§·©¸¯µÀµ»¯®¸¶ªÁ¶©© ¦¤¢ª©§µ£²§¯ª § ¤«¸£¥£ ª¶°§¬©¥¥¢ª²£¦«°¡£¢¡©«Ô»s°ÃÃ~Õ¸x§z£¶u}wv²`ºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¡~tª}¾ns¼t²uxnqn¤t½^w}[ay¼kZV[jz^jaegalwnY[YCA@r@CG+5G"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7A9§¢¼¡±Ã°ª«¬±§¸¯¶Ä±¹±º¯®À±«¤¢£¡©£ª²¤µ¦¥ª¦¬¹£® ¥£®¹²¬£§§¤¤¬ ¨«¨£³£¥§¢¢£° ©
µ·xµwmknsoytÁ»½{²¨pt¹|{|¤»¹½uz´£tvut°ufiµtrpw¶^z}hymyc¬pu
Z[§jEdYSf`c^cQgfpluBMPLD:ZM?J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7LT_G'SbW8*O^]=+:VV'>;<§ ¡¿¥´Â´¬«¨¬«©º®°Å®´²®·§´¸©¢¡¥ «¤ª¦µ¨§ £¬¤¾¦¡ª¡¡¨¡±µ·¤¤¢¦¥ª©¥¥¡¨¦¦£©¡£°¨§¡j~i¦xr}tzd{½¾ÀºoqasjZ^ack`dmwbke^acqir}
gj~rtx}~b[wthP\n}|kXlzsJJopMuMEW^f`KZWgc_O[muirRODEN;HH=L?2-2A?8/5?C<9;@;=C>RVVWYZ[\\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7JR_I'S`V4)P_L(3=[O'?2>¨ ¨¡Â£´¹µ£¬¥®§§µ±«È«°²«´£¾±²¦ ¢¨¢¬¦¯¤¤µ©¥¡¦¨¾§¨¦¤©¨¯²¿¬§§¢©¨£¬ ££§¬¢«¢±§ ±¤¡¨¢¤¦¢gn}qw
µª ¢¡z¤lj||uqxyvv|kstuev}wkp{m`c]pgLXZfj`WZoymmfSOFS9OYMRO(+:KB635=@A9:C><ENSSTVWXYZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J&R^S10T^:+=8\K,<-@³¡³¡¿¡¤±²· ª¦²§¥°´ªÈ«¬°¥µ¦À§´ ¤¤£ ª§¬££¶«ª¥Á«¤¢¢§¨§²Ä¯«ª¨ª ¬¡¢¤¯¦¡¥¨®§ ¯ ¡¦ ¡£ ®|ª¨{£f¡³¯
v{|vyzofzkuysiszukudyf`iecdfkYl{oij\RLPD_TE@??,4@F;45;>A;<?>>HNNOPSUVVXZ\_aca_^^]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMMD/T]Q05M[17E4\G5<,@´ ¹¯¿¬«®²± «¦±¢¬³°Ä°ª«£³®¼£´¦¢¡§¥©¦¤¥²´°¥®¾ «¢¢¨ª«¢³È³ª¤ª§¨¤« ©¯©¥£«¢® ¡¤¯£¨¤¨e|e~dylhk{¤ªje~geeih{¡kh£wkj£sln{zXe^^lv\hswwnxxsmytw|jY^ktd]sik|qkc^QMWJdXAJ4=F7?FD71<=?AD;;DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AJ[J/7ZO6)EY/DO1YC;?.=¥º¼¹¯¬³±ª¥¨°¦±¼±©§¤¯° £¢¦«£¥¨©²£¢¯¦¶¹¥®£¡ ¥{¥¢¨´Ä¸¤¢§¯¢££©¨¡ ª°ª«¤ª ª§¨ ¬¡¥°¤ª ¥ª~½r´rhx¹Ä¸q¢£z¦sª|ËÀÀ»q¢}À½ÂÁ||ÃÀ}k¥²ooÊzwvzyqzqx
ynxcf_yd`ec^tgldbWKUIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>I[L*#BQ/#F[3PY/UAB;/8£¹Ã´°°À©¨£¯©°®¦³´¯©¥¦¦±««¢ª§¢¬£¥¨¤¤´¤¢¦«¸³§¯¢¥¡§¬¤«ÀÀ± ©¯©¡¢£ª£ ¡®©¬§££§¡¦¥©¤¨©©¬ ¥¡¢Îxz¤y_®^§¢ |§t«¯^cª{§
t³c«¡³j
¯t}·aY¢Ínu{Ú{p~v~e{vvk|o}
~m`rlph`_yd\qhjcf_QTRW]KOC5AHED8>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-K0';\;L-!P@F4.1ÂÀ¿µ´°¸¤ª¨´«¦²¬¬«¤«¦°ª §¥¢¯ ¨§£¦¡°¬¦¬±ª¨¬ ¤¥§£®¤«°¨¿Ç³¨©±®¡©ª ®°§«©§¨¤¢«¬³¥¢ªª£¦¥¡° ¦ q
t¨q±|q¬~¡¥wª}s~«v{|~ª¢~«{{VÄzoÁ}muomeveoawnromfpuuqagme_oiingcWS\aYRSC8II@D<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1' '45-&7=WJ-<'>1)3V@F!G:C1.+°ÔÆƲ´ £££¢¬¯¶¯¨±¦¨ª§««§¢£¢ ¥«¢¥ ¨¨¢°¬¨¦®¬¨¦©£¡ ¦£¯¬£¬µª¹Í²¦¬¢®¬ ª²©ªª¬«¤£¬¯±¢¨«®¥¦ª©©±¢£¤
¤j¤uz©tz²p¦q ¤`aR«®v¦z{f£¤¤}©®_}©U¢z¢{ïÅr¯³³¹qb©¯Âthmpnyxypmfeeqpf|ib]W`iXXULLQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ('"+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÃÉÖÕ¿¡«§¡¯¢°´°¯©¢§¦ª««©¤¦ ¤¦§§£¬¢¬¡¤¯¢ª£µ°¯ ©¦¢¢¨ ¥°¦¤¨±¬¶È²µª«©¢¥³ §¬¬¤®«££ª¢³®¢ª³±¡©¨®¯¶¢¢§|ªlu«y|°o¤Ò¸´¸É²_`©£ zxªÉt¤¨ªÆÇxf¡¥s}¯]p´b°uK£m§Gd|qq{u~|n[fjrpej_aXdm\^YINLKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75685/)(%&%$&),4ENPPMFKJVF*L0/=-5OTQ;<F2,$§¤ÀƸ©³¬¥¢²¹¬ª¡¦¨¥ª«ª§ ¦¥ª£¯«¦ ¬©¥§µ¢¨©µ²¬¥ ¥¬§£ ©¦®¡¤§©°´Â±³ª¨¤¡£®¦¡¦¦¬°®©§¬¤·¬ ±¹¯®§²³³¤§¢Nxz£}¤¦¸{|y¹~Ìƶx¡~v¥¤©°
¬}b¥l¤p
}r¬`£sq`¼}RUt£{~v{s
q\mnxrjo[d_hnbd]KLQTAIHFI:9K>B108866877-*5==?BDGILNPTVXYZ[\__^]__\ZZZYUSOH@882.,*.+*'&?QTVWWWYXXWUOUF<E3:P[T6?H,- ©«¤«¹ª¯ ¡¬³³¥ ¥®®ª§¦¦£§¡³®¢©§² ©¤¢µ¢¢¡¨´¹£¢¢¡±§¥¡¢¯®¤¨¢¶°Ã±©©§¢¤¥¦¤©¯¡¯¥¦¯¥¼¡¶·µ²¸°³¦¯ £
ѵ÷y
¦x¡w ¥qª´nrj£|s¯¥¢¦mp²\¥szl{|m©a£qqbs²¸hw¦}y}ymixiyrnu]ednmfg`J[XX<HG@U3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^__][ZZXURRQF:2230/++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH$)%s¿¿¼º´§¥µ¡¢£¨§®«¬¦¢¦ µ§£©§±£¬£¤£¨³´¤¤©§¤§µ¡ª¤¶ªÂ°©«©¡¡ ¦£§¥¦¬¨®£¥¦¾¬½°¬¢°²¹«´¦¨±£§z¨}|°w¤¥m²o |¡¨¬®
ª¡¡{~««xz¯]£}¦§d|sj¯]¥kp
]`[ m¦|{kmc~tnz`geqnhggCZa[>KT3U8BBC7$$3+''3, /6674359@CFIKMNQSSSVZ]_a`aaa]][ZXSPONI8052.*,ATVVVTTUUUUTTUTSTVWWXVUUQHFIJ#((½©Æ¶Á´¬ ®¸¥£¤£°¯ª¤¹ £« ¯©®¡«¨¤®±¬¦¦«¬¡¡¥¡¤ ¨¦¶¨¿¯¥©¤¦¦¥¥ª¬¬¤¥ª¨¾¤Ã¬ª¢¡«²¹ª®¦³®¨©v¯~
}º®e°e}¡¦¬°
¦¤¡¡
[lj³`{{±mgo±[}´\¤kÈ¢d{¼XvµZ²}R®z¬X¡n¨|z~dt~bxt|ajgqmfeeOUd\BU_>J(>9=4!",%2. *1/04579:<ACFHJLNPQRTWZ^`_`ab^_\[XUPNJFC553./@UZXWXWXXWWXWVWWWWXWWXYZZ\\XWWGB;Ò³²·½º³Á³£¬¦¥¶¨ ³³©£ µ ´¨ª¬¯¬¯¨¢¯¬¨§¡¦¨¡¤££¥£ª²¨»¯¤¨}¡ © ¢©®¨¦¦£¥©» Ʀ¤¨¡«´µ¬®¦»¬¬¬©£¯¤¸Ãº§¬¯¦¥ª~սªb£¿½}~£×º¸µ
½¾k£o«lz²°Çj«°½¬xw¢¾¼s§{zc}{dgy{`lekjbPaZSj\@UaBN*=:4/$%2 $(0496678:>ACFGJKMNNQTW]a\__a^`[\YTQMHC?<A?5=SYXXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ¼´´±¿¹²½²¢®¦¥²¦¥¿ª¸²¨¡¿¦§²±º¨¯¦¦°¬®¥¢¬ £¨£¦§¡¨¢¡¬¨¸¨£{¦©¡ª©¡ª§¡£ª»¨Ä¢ ®£ª³´ª¯¨º§®®suª¤·d pgmow¤u®pq¨£®¤rmmlfxonqzjqigriigpd]bjoY]g~w¦_aqnee¢ ~vfxikyydlcflbKdXJlZ:QeER'K:+# ",)-2.5:4579<?ABDEHKLMOQSV]WZ\``a]][TPLHD=:AB7MXZZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^©³©¹¸²³ª©¡®£²©¾²Äɾ¶ªÀ¬¬£¡¨¬ º£¤®¬¦®©
¦ª £¢¤§¨£ª ¦¦§¯º«¬{¥¨ª¤±¦¢«¹¯À§¤²¥¬°±ª«¦·¢· ¨¥¶£©©²£« ±¢ ¢ ¥¡«§
¤}g~tvtq§lz¡£riwqxw|zjldcodU`X@i[HcaOZ+F=+'!740.!%2(*699469;>?ABDEJKKMPPQXUVY^`ac]^UQJED>9=@ASX[\YWXXXXXYXXZ[[\^__`^^^__```_YY`¦©ª¤´¶®®¢°£ µ±¬Ç½Å»¹«¢¦¦±¨£¶§©´§¨¬¢¨¬¤¦£¨¨¦¡£§¡µ»¨«{¡¥ª ¶£§«·§®Á®£¶¦¯¯°¬©©²¸ ®¼¥¤¦¶¢§©£¬¯ £°¨¯£ £ª«¡ª
}f
uuysj
|¢£
{rszr|jod^pja[_XmcP`dPZ:GGE>2==8/+&+)&&416668:==?AACIJGJKLMSSSUZ``i`eUPJACB:9EMV[^^[Z\[[[\]]__]^__aabaaa`bbbdb\[c¤¨£¯²¬®£©¦ §µª¥´¼¯¢£z¢±¤¥±©¸¦£ª£®¢§ ®©¨¨©¹¶¤¥y¢©¸£¯µ¢¯¯u¤½£²wy ª±ºu¬¤ªd\bv ¤}n³£§ª£esyp¨l¢¨e¥wjvp{aiZuhhs{¦f{xjoykqe_vplkh[febbpS\>NNNSG>@TD91/&4:316678<;>@AAFHBGFIKMTTUY]`hfgWQJ<DG<8UR[`ab`^`_`aa_\]__`aabcdabaaedchd^]f¦£ ¯°¬«©¥©®£¦¤«¶°²§«¦¬t¯¨«§¹ ¤«¢¦ u¦©¤º³§ uw ¡§²µ³»§ ~§¢z¢®¶¦±ª¯£y¬¡§©§
w¥z§{²z bympyp
txgt t}¢k
lx{qqgdxojljZekjet\_ITLQ@E5.ZTU7)!09=>743568;:=>>@DI?JEJKGSX[Y[aaifYQH9EK<>aV^bdfd`aa`bb_]`aabbbcfgcba`edcgcaah£¦®«¨¬ ¨±¦¦©¥®È¾±¢§©µ¬§¢ ¾ |ª §¢¤¹°§
pu¡¥«´´Êª·
¯¯¬©¥}¨r{w§h¤y´¦¨Â«¡r¥}
±¡}¡ |
mr
yq|uÅf©£k£q
hwt|whhuqhhk]cpmgmXgG]RM2D46Nac7&3<EGD:64658;8>==?BM?NIJLCPZ]\Wa^jm\QE=LM@JdX]cfhgbbbbcc`_babccceiicbbbecafcbbi¢°§©©¦« ¤¸°©ª¦ £¤«¤¥ª·£¯¡§¥½¡yª w¤¢¸¬¤~bm ¡¡¡§~¡§
ª
£©£uk¬uM«x¨§©«}¡{z§ikg¶~n`dY{dhr}yl]|m_Sp\_ky`Ye}p§ªk£nr¥p
jf l[n|fZ`bWPowfmtrkjo]jpmliXiO^XF9A4GD^k4,ICRMN=84859;6@;;>BO>QRLMBJ\]_W^^cv`MD:MOMTb\\ffiibbdbddbab`bdcacikdbddgdbgeach ¸ ª¤¦¬¡µ¼«®¢ ¢¥¬®¡®µ£¨¡ ¦´u¦~
«£©¥°¦¡in£ ¡¤£¡ w§¡§¨«¥x|~¢ps{ym¨{¢sv¦f~w¤_z}s¢n·´ºtµ¨dƸ{p·q¤bs¬«`}i³~n|q£lr£t
¤`²q|³ts[²jbotvqioXjlrrf]i^cLD=D6QAYq3=SG_JR=<395::6D;;@JP?UMNQ@E_^[ZX``|dHC8LWUVcaZefkkbbeadc`ab`dd_`cknccddhdbgfchh£¸« ¤·µ® ¢££¦®²®¡¡¤«x
q¡}¨ £¨¨¥~k{~} w¢r¡¨¥¦©}~z z£xt}¦¢d¡|lhn{§}rht«tªh]
vhªj¸f\¨p`^§vu~huom§\¨~x»j}©[]³g\nrzxki\pjxyc`fXbBQFO7VCRo5KZZ_OZD@151;;6H?:CHU>YRY]>Db^V`Qac}jEB9N[]YefXfgnmbbe_aa__``ec^bdoq_deekecihgkiªµ§c«º²±¬¦©®±©¬¤¡¡¤jr{z£¨£ ix{¢ ¡rhp©¡¦¦{°£¢¸w£³¢¤y{ª¢q¡|
¯µ}k¡x~´££«¨|}tªZ]o{xbL~zz
cyBLY¢jr|mux±³§wmr}orj£]vHedasq~~nf`liv{debR_W]UW@ZEQhDSW\bX^ID=B8?B:IF8LEXAWR[VDFb\Z`K`m~rEC<U_bZfjVghmobfg^aa\]^ahb_ecvl^egfkdflihki°S^ ¦³¹³³©¢«©¡¬¥¢¨¡woy
|r s¡
¨|l
q¡x|£ £}µ{¥z©|§hwm~t¡sq|p®}¤¦£o^¨gu¢co¥aÓ|{xrsc¢~£s¤vk³`sª²¨¼wm~¾¦©´^n}qnr¢r]¤gs¦ah¦mÔ}
oxzk{wsn©¤gaeyqkgfdnuwg`cS\fQQbIWJTaWS[ej\eQFCKMJKBKE8O@QNXSYOSQafejRcwywIFEc]eZhjTihjocjg`c`\]]_hbahe|d^dgdkdjmghlh°«T\K~©¯±´°³£
© ¡¤¥¨ © {p}h}wo~
l|¤ª
zvnw¢{£¤³¡¢¶z¬§¤®¥p¨
{¤¢r£®¯¤¡v´µµÉ¡s`©my u¡w ~oLf£ps¤{ztak~ kqd_q}tizi³µ´Æ¦s~zk«umuxi{urPE}´^jvkyfjhbtupnV^TYiPSiJVLYTV]hknVhWNKAJMKHJOAQKPecjmeussy|nu{{TPNl^h[kiRjhilglfce`\]\^ibdik{_]dhcjfoleile¡¯¦f?¡³«¯¯¶¢¢ª¢£¥¦§¦yjye yug
z¦©z}yp¡y ¥§fnxl¢d|q¥wpg¦{¤zrv¹n¢b}¡mriªku mn¦_ihu¢}`uobh e~iuocfmr¢Z_[b¡m]n{~srd¥mw¢dg§hso¢oSo _f¨T^TnmskrmpikyskoRYWWgZTmJYO]IXiisjYkVQREV\LXSaUik_wt{}p}|r{svv^QrbgbpgPjhhklnhdg_]^]`kcjivu]\cicjjslfkmc¤¦zetm§®¤©°±¦«¦£¡¢¢{qh|st|zc|¨¢¬~si¥} ª¦¦x~¥²¯¥wy©t¥n¤¢»n}¥¯|¥zr¨ f~o«cx¨l©¢vwª¦j°kv³©kmm`~«ªv~¥v}¤ jw¬g¶tw¾¤Y¦«aurtq|tqcj~nhlSW[Vab]kM]R]J^mnv`[qY\`[ftenoqbqt`wz~yrys{{vbxdcmsdRkgholrjfia`^\bkbmlzo\\bibljwmglnb¥ª¤©ª¨§®¤«¥¥©
tzp~tt
rl}{
¦¥¦
vol©ª£ u~y®£q
x~{r§q}}zx{~~v {}k
[yyrzphn~quqe^wusuoynnm
^vhxe
©}t|jpv}vmmgsy{x
\kXyinxrroxxp]lnifV[`W\fkdVbU_Q_pxxlkvfjkkv}qrtsaoubt{xuzuy
}{mldxn^Wnghukxjije\`ZcjflqunZ[bldllynhloa¸¨¦¡¢¦¤¥«£¡¬¡§©r|}~
{srp
{}
x}¤|§¡
wr
©
¨ ª~~¨¦woyo~¨
p}qkp}hm]sqtkvtYrn}~j]jd{
`ixz{u
gwkapqv^r¦
enwqzpfge{z[\jgnv[{yxunssf\mkkaYZ_ZYlq\_aZ_]ft~ztptckkk|}s{xtdmuhm|~vz|{zz~o{}s~ysiT\qiluougkhd]aXkhlkqrmW[enlgsyohjm`ª°¡£¡¨££~ ¢¥{
}s}v
qor~z §¡xz¬¡«¢¢££ª¡§¦ {w§~²¦²¥k|wxe|w|yt¡~}uos~w¦
}wl}zjrhatp}zwwpwt]^ohn^^Z]]ThrVc\\blhu||sopdkki|nyqjpplg{rx}{m|zx|}zyNdwjrmpzekecb`[tfpfrqmU]ltmiyzqgikd¹¢¡¤¡|«}y{nxr~mk~z}«r}{ª¦¢¦ ¥u|¥{|ª¢ª~oxruau
~
nyut¢
s||rr{zx¦
w}ol~|nhlmh_zh}{vuvu{w\_p}nt_c[]^QgnTe[^bkivz~qlmdkjglslluoyp
ynv~
vq~{{|{`i{juhidjc`i\duhobtmlUcqyepz{sejml·¡£{x§¤yz
|n{xs
}}kh}|~}¨p¡¢
}¨x£ £¡¤}x ~|¤¢¢¦~~ttpv`~q|q
hwqx~}r{|qxzzy¥
{
v{fr|y{qljf_~sh|uvt}sj^`svpwdcY_^RkiTdY_ahjvyqfkdlhekm~hoql~xzks~tv|z}jrmsibhlb_qVtomn`xhmWjtvcuz{rbjoy²¥¥ |v¥¡¢x{~q{tv
~xgc}y}y ~p¦¦
w y~¤xw~r£¢¡~|vq}nzd|
pleuo{|w{
|{q~w
y¢vw|w`yx}txgleaijwstv}q|bcasnurmaZa^[leRcXaailvyqcjcmeh}lhuhlpi}ymqt|~z~|mvstneljbcuViqn`xglbjvpfy|zq_ql
®¦¨}xªzy|~||xtyzt}d^}~u}~}¤¢s{§¡s¦rk
zo¤|yqzkul|~~m
xp}~dri{~sx}vw|
|¤xt}tvoa{uzq}obocd{bnovsxwstau`olumo\\_^^k^P]Xcbimt{k_jfjchwnflhjlh}{wns}t{}z}}rzxxnljh_irbhqoevgnlayik}{xpawmª £¨~w®}w~{}{vxptt{o
}|a[~szz¥}}¤n¢¡mf
zp£}{srukpnu{tnqu{{dplx}}tsyn}
{
¨z|~
w~qpdiytup|b_pakt^pj{yylspex]nlsmrYZ__bkZPWXecgqq~f]ihgbgqndigdihzwuo
t{u
x
|x
zw{zrxjk_phtjromqgole|cnzwqlww~¢¡¨ ¦uª t|v
xyrs{
krpzmvnq[X~wu ¡x
m¡
i¢f
~w~||nuplmop{
isqwtxfrnu{zyvso{
z
£{uwynl^strppyZ^p`pj^oj|{qmmjlv`pojqmZXaabnXQTZfgcvob]kmdbfkn`ff_gkurspuxuy
ww
|{vjqc|c|nqltjholvx_qy|tut~¤¦
u zrxtpr
squkomumv~mnUQ«wwsz x{¤
|r
}gg
qx{z||kvjnkll{~az~wzw|ygsls~{qyovzz}|{w}vpjlzaxpnlrtV^obr`_lnyqhpfgsthpkawe]Vf``rSQN\fe^yp|_\hrbbefj_hd[gp~pkqt}v|
tu~y{xs
~|yxfrj`}ookz`jntu_t}yxts
|x °¥
wtvspo
spqojivnn}}musRMßÈÖ|puv w{s
¡~~wz~yufl¢
cqz{y
|~l{erokkyy\y{}~~
zzhrjs
|k}~n~|y|vxxrlgq
nkuohjtmR^odpY_kqwgkkbfxropc_w``Vk_^vPNKagc]zpt\\ev`aeecafbXissmjqv}tyuv~sz~r|~vesn}e~opkZlnyysav{{vrwwy¯
w~}
twpyqnomn~rdexp}mz}jhkc¤ÁÜ®ï¡slvv
£o¡r
£
~{uxuum
}¢
^m{}
v
}}k}dxuinxsXz
y~~xeri
kumyuswuspgvzcunpbivgQ`qglU_ntyard_h}prnZcrabVnY\xNMLdgb^wsm\\dy^`de
`cc^Yjrknkrw~twxw{q}~{t~shuqymzntpWqzvyqexyivr§£
}pxy
¡|{swpsjokim|u^axw{qu{g`d|ëÚµÉÃÜsltwjq
|{
vxru~o¡aj}}q~qwhvrisvkZ|
|uask~~}mkx
||nqyulpksy`ujn]kv_QdqifS`pvt`p`]hqsiWghbiXmV[uLKLfg_brs
i[\ey^^dg{ad_]Yknfoisx~ss~zvzs
|vw{ulwuyxtnx{|Xzqogywdv
q
¡¢sorw~|xrsnodr~hflwx[_y{{qqi`faÕ¶¦xnqw|qk{i|{}ztz{qt
u
~a
g}~~m|tkmwutvujb}|~o_rp{|~ypfy{}noy~umokl{~diljYnvZRiribQbrwlbe^Zjmsb[g_dl_nU[pNHOge\gnql[[cs`\clwde]]Zklbmjtwqp{}txx
}uy|vpwy{om|w^tmiztsgs|rvv~mv~}v}vqoljau|fbiuzZ_w|zmqecggW^qs¼Ävq~stk{|}|u
uv}quq~t{e}r~g}{y}i}vfoyxsvrkj
~xj^qwz}
{~rhxx{}nlz}wtoih}we^rcXpsSTnsibNgtxf`^]XnosYeb]jm`pOYlRDThaZknm{oZ[^lcZcpvdg\]`kjclisvqn~{tuz|
v~xtsyyoo|qiyz~mm|vkjxtk
n}vjxzozsqljd`tzh_er{Zar|yfpzadd±²wJbZ¤ÙÐr{x
olzy|xxoqt}{jy¦~m}vx
oz~oxh
xr|e}~ucpshxpnt
zvxyj[p|r}
zrmprxwmn~wzehj~raZxZYrmNXrsf`Jmvta^[[Yu}roWg]fjp_oNWiR?Yg_[pjgyq\ZYkeYcqy_h]^elhfliqwom}up{v
qq{}zzujzko~t}or|{poxf¡
gphz~
|ixrklf_aoym_boy\dly`pv_eeÕë¾2:>ry
vnl
u}
|xnv
wnlu{tfy¨}mtuy
~{ylsi~xm|{xbyqdqi~mtqt}su~so[k}tx{|xzqlqx~tmjvuu\iixqYW}SZqeL[sre[Jpwo][ZY]t~thYb[genbiMWfQ=^f]]vf_tp[YUodZeqyZh^`gmgilipx}ljyn{}zu
pnw~{{h{~kt|r{sw}zx~|kl~ki{~}kuqghc[bgso_altahpy`st^cd n\5Y¯µuj}vuwpl
tyx}zsgv~}op}hwynez¥~n~v~||r|}
|i~mk{zjzvr`w~qdrgumu{
|~owy|t~mWm~vswuzwsnr~|}znmimun]hftrR[{N\q\O\rodVKsxjWYYZaqt`]]`fdhhfNZhNAad[`va\umXXStaZdnrWj^bhkgmlipw|li}}p~~{zwr{oqw{j~{nxyww}x~zm
£{vykmy}{}pqpcf^Yg_pp``hpfjot`so[adiv{¾¦£È¸r
s}xtrsp{sutwyyqcwyirufwvcj|}r~sywzmyy~uhzilysizv}h`w~jjsh{iv~z}}q{v{t}aUu|rs|pwxpp}|x}|u
vhqhlrp]hctoKevL^oUTZsmbQOtxaRWX\aps[`\hedcjdP[qIDda\dq^\whUWVw^\enhVl^ajgeoohpw{niy~s{~y|v}pvsmw~p|xyztxyvo~}zw|htz|vgom_d\XeYmsa`aqllhm_siY^dmw©ÚªÇ²rxpu{zutu~wpq~m
txul`zyfqogun[m}y}x{mus
{
muvnhwfm|vmjwv|abxzhuuc~{gt{tuqz|lYVr}otxksxku|y|w{r|sgtemmt[k`vfHnoL[cXWVxmbPStvXPUX^`qo\`bldc^nbT]rGCf_]fh^Z{bRV\u[[gkaVk_anfflqhpvxtkuvx}w{t}oququ~{wx|}
x|}~{~svyzwuy^~ytw{bnl[b[[aVjtc`[hopgq`qfW]ck|Êι¢kmnmr
r}
{
zytyuu{jmucvwog_|yeqjjqcXm{sw~{mpp
zy~qqo}ghrcnxrjlqw}|z]eywiuyfvgt|rjn~ym|]Xp}ms|nnpvgw~~u{qzs{yqeranlsXk_x]IolMWV_TU|kaOTurQQTV^bt
h\`jiebYnaXcpGAh]`f^]V{^OVepZ[jh]Wg`_rfjhrhqsvxnt{w~yus
pp{xwuy
z|u~}~~}|xuyw~}nuydto
ztcnjY_[]]Tgse`YdrrgrakdW[`ix¾®{·nbsht|rz{~xxswo{vejnausjb_~xyfp}hjk[Wox£
qqxtlr
}ytrohyajmamvkgklzwzw[g}|xes~nteu~pfkztltb[n{kt|zft}mphu~w|}q{ky{ywpelam~mnVk`xVKklOROiNY|gbNUukMPTU^gvf]aogfaWi]\liJEjZbdWYUyZNWnjY]le\Yec^tfldrgsptxp
vx|
}usnsy{{sr
y}v}{~{w|wwziv~|l
rq~oflfW][\[Tdpe_XcruivodebW\\hporseeyjtvss
xzwtunkzpbgkgtnf^_|o{}hmwfidVWrp§||vs|r{ylzzv{}uprmgu]mi_mudgfizo{rYgvugpxuaw
|njmzqere`lygrvz}auvikquzpywr|f}~~xvnceam|mkVjbqTLjkPLNpH^{eaMUtdKNSWajw~e]grhe_VcWbp]KKkXcaTSTsVLYveZ_k`\Zce_wgmbpisoq~utxx~
z}v~
nrt|ztq
zut}
|~z~v{£¦y
lu|{uzo
sz
}unjieV][[ZScne[Xat{jimh`bW_Ziikoglahzykttto{}vunzikzj_enhwgeXbwi~zoiogf]UXoh§vz|xuo~nrtx~wt
vjrvgho\me^ns_gbjxh{m[mstjo~yw`vx
sqpyqcph[nvdps{xarpgixsqkwvtvc{~wupcccl{|kkUibgTKmiPGRlEaxeaMTr]KMUYdkwze_mpid\V_UonVIShXf^WLTkTK\z_[_k]][be`zhlaoounowuz}vyzyz}qtt~yvt
}}ls{
}~{v¬zlryvtno}tjonddX_ZZ[Ubjg[Z_ui^nl\aV\\kert}ij]lwvgtwrn|~~zvslzhjxf]drgzwccTdogwvfhjaWVYhd§n~xzpp|fxnyzvq}~ndvsdhh]lb^po[g^muezi]torkq{~uuat
{wru~taplYprbqq{udrl`lzojhzwtqetyyuqdadlr}jlTi^^ULtcQGWbGcve`KTpXJMXXgkvzdempfcZX]XvfSI\cXhXXHVdPHby[]`l[^\bd^ij_otxnonvyr}~uvx}tuuyzz}~jt{}~
y{~|sq®|{~fqzt}}vrom{~mzbpobe]eVZYWcfk`]]siYqn[^XZ\l{cqwvmc[msthuvqm
yywnoteiue[gtfvvz_]Sefjs}aci\UX^bd¥hytxlnygwl{ytrx{xhevm`fa_j`^ukYe]onbzf[x|knnpwyttdrzvoq|rawcZnoapq{seqd^mvicfxzslmts|rqb^emn}eiThYZUNy`RKZYHctc`ITmTJMZVilr{cllscaYZ[aw\SJc]XiSVGX`NGjvX_bm[[_bc]
ihanxylojvxm~vuttqvvw|}~~~px}yxy~ssp¢{{yduysyvksply|pr^poagblT[ZWhcmf\\rfSrn[YXX`lvdjujj_[mtqmtttk}|wooleiqc[krdtvs\VSd`q~q\ac^SZa\derqtkjylnoyyzqvryzzdfug^b[ah\^wiWb^phaxa[{vjjrowtstip~vrjp|mevW[jmbprzseo~[`oqb^io{kks}rpwkp`[ekm{agTgUXRQw\SPYRHcsb`GVlRIPZUkkk|emoqa[ZXYlpWROfWVhSTFY\OIruY`dmcXa`a^jcdmyxkoiuy{k}
|y}mqowz|t}txutpuo¢t{{fwon|pfxq{lsvsk^tnagfkS^\Vhbll[\qdNon]VXUgithctee]Znunpuuzk}}wscekna\nmcsxkZTVbcw||p
\c_cTZ`Zccnpsjgyneruqzkytunz~u_fsc[^WbdYaufV_amcaq]]~ohisqspuukl{
qrfn{oqnSZejeqsvsblvUbqk[^nd{dku|rrrjm`Ycijx^fTeUVPUoXQWTPHer_aFXkOIXTVmhd|ikwjaW\U[tdSRVhQXeSSHYZPNxw[`fliZb`^^nbfkyunnivv~m~{~krgt{u~r}
{ss}un¤swxn{`d|qgysymmqvgd|mcfghS`_Ug`lo\^nhMim`UVSofslexde]Yqumr{xsm|w{zlbelm^`njepy~gZVX_lx{{o_b^hVY`Xdbkq|wkjvl[upjyiurmn{rXjn^Y]VbdXeqdT_bibbmZ`~kfksunmwvkh
zmqfo{lqlbX_hhosss^imSepdUbnaxbou{ujolj_X`fhu]eVbVSOYgSO]OOHeo]cGZjNJ`KXmd_xhn}d`U^T]t[TR_fN\aTSJ[YQZvv]_fmhXba[^qcgjwqsmgvsys{~|yntlss
z}|rstwqn~zz}~~}}~~}~~~~~~~}z{|}~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~>.1111/o]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDBK[ADDDDCXhggggfo
}}{{z}~||~}}}~}}~~~~~
-hS7¤¤¤¤¤¤£r]____aR455553?R155554Ma____^j|}zzz|}{|~}}}~}}~~~~
|y{z{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}}}}~~~~~~~
~wxz{zz|||{}}~~~~~~~}xyzyz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{z{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{~~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}|suv{||{|}}}~~}~~~~}~}~~~~srtx|||{||}}~~~~~~}~~~~tvxtxrvy|}|z}|}}~~~~~~~~|h}uvssvx}~|y}|}}~~~}~~bj~lt
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~w^jficl{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
dom[irk
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxz}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzoq{xy{|{xw{xuwttvuuvwocqoajsqehklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkiffggghhceknsprulccbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__ac_\_]`]^Y\`bcmoppmZY_[XWSNMKKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSTPMJMNPROMO_hflnmgeQPSPPNNOMJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTtsuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNOLLVdmfjmmjg\SOOPQONNONOPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKKGGOU`hnhllkjjhd_VOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEES^bfhjmlspjijlkjfXJJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:;>??MY^jmlnysjjlf\RLEEEEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@:;><;;;;GJ>GYjowpkiYGDAEFDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprttsqrvyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<979;;>=:;DXml_HA>A@CFDCCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtsurqtxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::979::78:9:;:77Sc=78<<=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==?@===?C;==>===;EY9;<>=>?@A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCDA?=>@A?@<]n@>DE??A<E\===;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVppqssttuyz{{|~~~~~~mLPQNOPNNOPPO><<=>??@>@@???BFD><<=@=8:;mvH8;:==A<Ja<<=<8:;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}|~~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABA@YR<==ILFFvwM788:;>?WiA;<<::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@CsyI;]y|wV<=?==>FjuM:=>?==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy|||||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCEAHrykb}]>@C@@=Js|Y:=AEABBFHC=<@DDA@?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{{{}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Fot}~}uLACE@?>Y|]?CEIJIIMMKECFFGEGEEEDDCA?@>>BFJJGEEGFFJNNKJIGGHKLIGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEhs}|~y
qBDEDCWu~XGHJMLNOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHHHGFEFFFDFHGEEHHFHFHFQnnpqrvvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJG`{w
lAAVtWHLMLMNLJGGGGDGGGGFHFHECDDFEDDHHCCCFIJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrsvwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLN[|
Vl|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD?>?DFHDEGIJIJHHHGIIIJIHFJJJJIJIJJJFILLJJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLLJU
uIIFB??@???<<<>;:<AA@><998<<=;>;9;?AB@ACCB@ABDDBCFHIHHHLMLGIJMMNMJJKKJLMSlpqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJJIe
fBB=88::9878896479;<:8567789787688;;;=@;999=<>;;=ACEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIj~T:8656766645773568:876565676778:67789;7578979876:<@GFIFIFEFOSRSSROPORTepqsttwy{|{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=ECBf
G676468874578567699766765:9:;:;898987779:98868689;A=>>BA?AKLOQPQOOORWkqrttuwz{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B:=qz>988;<=>9::<9:;9:;:99;:9===>;;<=:>;9;;<;<<9:<8::;:999<?<=ABDIJMKIKLWorsusux{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<;89989:::;?>H~
l<;>BCEEAA@B>@B@@>==>@?>?@?@==?B?@A?A?=@@@>?A=><;:;99;?=;<==AACABCAXpqtttvz{{}}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<=:;;==?@BR
^>DGIKJIFGGDFHGEB@@CECB@BCB?@DHECECEEAFEFDEFD@B?<@>=?@>?>?>?>>:;=<`qrttuwzz{}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@CDFW
VHMLMKNJIKIIJJIECDFGFDCEFDBHIKHGGFHGEKIKIJKJCFCCDBAACBDCCDDCA=;=@hpsttwwyx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@?A>BBGGIY
PNPNLNKJLJIIHJFDFHHIEEHFFELLMIJGGHIJNMNLLNKHGGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?EGG=<@@87<;<=:>@>?@CFIIP_
rNRONLLLLJHGEIIDJHGKJHJGGGKLNLLHHIJMPNPNMOKIGIJHIDIHHFFGGHFCBACUnpuwwy{xyzz||}~~~~}~}~~~~~TDAABGHB?8?@8:<8=>;=A>?ADHJLUq
_RRPMNMKJGEBGJGLJFKNKKJJLMLOPNHIKLOQPPQOOJIJJLJLFGHGFGIFEEBABB\orwxyzzyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAGKLPVy
|XVRRTSOLKJDEFKONOWUQPORSSMSTOMSLPSUVRSQPLJMMMKNGGJFFIJDDEEBDCcpuyyzzz{z{zz|~}}~}}}}|}~~UFFGGGGHF>@B=?==B?BBGVNFNPPTX{
hWUkaERQQPI;;RTR`u]UVTVYYRXXRZfPUWZ]RTWQONRPPPQKKKHHJHEFIIIHIirvyxyyz{{|z{|}|}~}}}}}}~~~SHJIHGFFE??AAEACGEDELXRMTUVX[|
}al[dU:XXXSQ?@VUY\d`VYbr]]W]ZVEQYZ[Y_TYgRVVXTTVTOOMJLJIILMKOMSosvxyxwzyz{zz|}{~~}~}}}~}~~~~VJJIHGEDDBA?HMIMPKIKPTSSXZZ\\x
g;~znpXZ\[RSRVVT[ZuYU}`\X]^WIV]][[_YHYXY[]XXYWRQNPQMMOSQQURassvwwvxxxz{z|}}}~}~}}}~~xy}YNKIIHFBD@A:PQQWXPPOQSTTXXYZ[n
n~fYY\YTUTWRQWVcQerXZW_hP`f[[X\gaGOZhg\[\]]WROSPPQVVVVYZnrtwvvuxxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQORRRUSVTW_ux
}{\PUXTRTRQQLOMKfy[]TYUV]ZLTZUST^ZXWWWzkX[[\^TQQPINOWVX[Zdprvvttvxyy{{||}}~}}}~}}~~~zxwvsu{tk~~kry^[VUTROKFCDAM^lVRSNOQOQURSRSUcdv
~ymqVIKMNKMKHJDFHEC>TdURQQNKRTQMOYRMNQSUUMQSRPOMLHCIHRTUZ\lquvusswzz{{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YVPLILIaltPQSNQRQR[RSRQRVTbs{|}{{
u_]KC?CCCCB?DPBC@C=CIGV@HNLG]iPHFOFDEFIGHCDHGHKGDBAD@NQMRdrtvustuz|{{{{||}|{~}}}~~||}}vt{mh|gnqfiedb\XSQPURsWe[OONLQSQUYSUQQTROV`klrv{{xytrnstsyx~~kMG?@:;>@@??>jQKaEFHIEB?GLNGMQUIBE??<=<==?=?ACC@?<=B>JMGUnttustvxz|z}{|}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QRZ\Y^JJPQNKLQRQTUUWQQWVPX[b]agmmlokg`nrjmlqu{z}{xz||xwxeC@@B=:BCAADB\]O{NONNKLMOOQLKLWMHG@B<977599=;;;8989?<BH?\stuvuvxz|||}||}}}~|~}}}~}xuvz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIHPRQOMPQNQRTVXSRYTNYZ[WY]^^_e`]^qvk^`gkwooljonnlfbYHFFHBAGIEEFDMRPaWRWQPSSRU[OOQWPMIDF>:96587979:365795<B=essvwwyz{}}||{|}}~~{~~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZXMLTTSPQUOLRSTWXTTXQLWYZVXXVXY]WWXhsk]Vaskaa_^da_^YTQNNNLIHJKIIFCQPS[WTTNQSYS\eUOSTQNKIHC?A9988978857578599Gmrtxxy{{}~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOTVXXYSUTLKTVUUUWPTUWTUR]n^RNY_[VY;DVXT[fJLORROMMNNNLJFQPUYSTOJNOUST\VRUSROMLIHHF??<:787659967675Wpptwyz{|}}}~|}}|}}}y}}|~~~}||}}~}|rvqxxrvuqqnppopuvtnjddjppqrpofedc\]RTZVWUTWTRXXYYYRUOIGOPOOMRJOPOPNNOTLMIPOSTU2=XMI@Q=caQSQPNPQPNNMQNTRPRMILJORPRRSTQROLLKLLHCBA=::876;B5566:doruxx{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqniihpVVTUXUWURWVUZYXWUQSFEAFGGHFJDHJIGEHLHKIFLMPMG/E_R>3?>joaRRQ@GUQPQPQNQOPOLJLLOPNNPQQNPOJLMMKGEEDB;=<<9=G6677Dmptvz{{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknaePSTRSTOWVVYYVQQQO@=;=?ABAC@BEDA@GHGHEFHJMLEGCORC8ENS]gSQSAGUPOQQPMMNMKLKLNOOQMOOMHLLIKKLKGFFED<AA>;@E;<89Spruy{z{}||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLOOMQSLTUTXWUMLKI<987;?@><=A@B=>EHGCFFIGJI@FAA@FHEJOHQRa\QPRNSNOPLLOMKMLMON[WKMQOGIHCHJLLJFFFE?BC><BG?B?Adptw{zz{|{zzw{wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHDD=9779?B>;?A@@>ADIECGGIFIEBB?>=CBAGIEMObeQMNNWKKMKLMMMLKNNSdMJLRIIIEAHJLMNJGIFBAB@?EFEHDKnovyyy{{z|zwsxux||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLMIMPMPOHJD?A=999:?B?<@BAADEGKFCHIGGHCC?B??@A>DEDLMRTLJIMTGIIJLJKLIJLMOPQPKGCKGCBJJLMONIJIGCCCDIJMLIYrmwyxz{{y|vrpurtxyvxjqnjllnttmtu{stxronqovsnporpopstyjN`gsjt|ygosqiqhdqHKDGHHGJKIJKDGB=>=:::;AB?=BBCCHFIKJDIIFGGCC;A@B>@@BECIMPHHKGHKDHIKMHJLHIJKJM\RHHDNFADKJMMPMKMJKFGGJMNQNLbmivvw{y{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoiktgdoFKCFEGEFFGEGBC@=<=9:::@C@>BCDEIEIJLFIIGFFDB;BCC>@CCCEGLNHKNHDHEILNMGILGFGIILNKIHENIBFMLNMOMNNMKIHIORQRNRfffqosxu{z|lhjnekqlsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGJDFFECCCE@DB>@?:;;=:=>CA>ACEFJFIHLHGGGFEC@=EEB>BDCCEGHIGMPJFFGKNOKFHJFEDEIJHKIFHPKCIMLPMONOONJJHMRUUROWd`amgproryzgehhdilfqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutwljuumrvqlnlerLGEEHCBABD=BA>A=9:=?:=>@B>@BDGJFIFIHFFGECBAAFFCBCBDEEGGHFLQLIOJJLLIGHEFFDCIIHKJGKRMBNOMQOOOMNOKKKPUWVUTX_^\iaminhrsbeffdihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwujsunutsqrjksMGHFHBB@DD<A@@C<89=>9?<?B@@@DFHEHFFHGFFDCECDIECFEBEGEFGGEJMKHQMJKHHIEFHIFCIJIKMKOSNDQRPQRNPMNPMLMSWVXXVX]Z]d`hbjigk_eefcgggkggkmkmlprhttursnvoqprtxqssuvuyvvtxuuwxmouorsuqqioyMHGHHBBBFD<?BBD<7:>>:>:@B>??CEFDFDEHFDEDDEFGJEEJGCGHFHGECFJJGMJLKHJLFIIKHEKKLMNORTOHSUSPSOQMNQNMPWZVZYVZ]ZXa```_hec`dfhgjihifhnllnmqpiuuxrrpupppruvpusuvu{~}xvtwvvvxplupmstnprrxNIHGICACHE<@EBD=9:>>=<<AB<?>ABFCECCHECEEFGGGIFGKHCIHGIGFDHKIGKHMKJKLHLKMKJNLONORUVOKUWSQSQRLOQPOTYZY\ZY\__^`c^\ackb`dghr
hgifjmnponsrjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqvotMIKHJFBEGE<@GCD@:<>@?>?BA<@>AAFCEEDIEFEGEHHFHHIKIEJHHKHFFLIHHJGLLLLLIMKMMMOLPPQUVWOKVVUSSQQLOSRPV[[]^[\^__a`ad]d`ef`ehjcssfjgglprqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrvnvJKLJLGBEDE<@FDDC;??A@@@CA?B?ACHCFEFIFIFFDIHGIHJMHHJJILJFJKHIJJGKKMMJJMLNNNPLOPRTXVMNTVTRRQPLNTSRW[^^_]]`_`aa_acebdhbdijgvljigmosqpqppryvruutsmmssmqrotutrpswtuuwvuuteqskpqjrvowKMLKMGDCAD<?EEEC=AACBBCDACDAAEGCHGHHGJGDGIGHJFILHIJMKMLGKIHKKNQKRQMSMKNNOPPOTOWXX[NSQW\ZRWPNTUTTXZ_bb_da^`b^`eaacingbihhnxvlhimosrpqrrrvtsusssnksqmprotvrqquvuswywutucmtkopjqtowLNLLLGEA@D>>DEFC@CAEDDFBCEGCCIFCIJJIIKGDKJGHJIIKHJJNLNLILHJLKZfJd\KlSHON_nUks[qpbwcSPbvuhucav`Xnqbdvinzf[lt`lkT_wvijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqrqyLNJJJFC?@B?=DEFDCDBEEDFBFFGDEKEEJMMKLLGGMIGJKHKKIKKNLMMLLILML[sbdp^lmUMNfs]geqlntgpi_aYnnbppbkjjgoqtetno\ougpMJryvkb`keemxlkvmnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIHGED@BB@>CFGBFCFEFEDCHHGDEKHGLMNLMMFJNHJKJILJJJKLMNNMMJMMM[roonpplkMPQlWNibtrpamnu\YlQ\mmZqmkomxxtsip]_rkqjUuyxpc^kfbgppjjopprspqpqqrrqqrrtlmrmnnorutqtrtuutuuzvutenukpolsrryIKGHEEEBBB>@@FGBGDIEEEBFIHHEGKJGMMNLMNGLMILKIJMIJIJKOPONMKNML\hdu]lqWlNPQmUZk^klvaldsSecNmYl\tpkilxjwuhp]^rkhWbcw|oc`ggadityknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvHMGIDEECAB=BABFDHGLHECCHKHHFJLLFNLLSRLGLLHNJHHNHJJIHNOMNLJNMJZsppoqqmlOQRnYqkgooqqomt]nXat_nopoqronusttj[]tcwxrjnzhaacfbbjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyxtukoumtontsvsHKHIBEEEA@>DDBGCHIMIFCFJLIGFJMLFOJKWRKGKJJNIHJLIKJIHJMMMMIKKKSkb[i^_icrrZ_Yjo_eeUk_c[aaQ`lh]j\niid[pfdp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrvtwrGGFIDEDFA@BFEDGBHJLHFDGKLIEFJOLIPIL[QJEHHKMIHJJJKIHIGKKKLGHKKLLLLJKMNT[\TPTLPONOOVQOOQNOQJINPQdqiTYW\[\UYZ]X]\\cfaaebcf__fkmhmtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusGCEGFFAEC@CHDFGCIKLHFDGKLHDGIPKLOKLWLIEEHIJHIKHLJHFGGIGHIEFLIJKNLIP\W^P\[`^MXYS\\b^MYZMXaRJYaZR_d\aX[ddVVX\YZX\VY\]b^d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCELMBDDBEIEGGFKJKHEEJJKFEHHPJMMJMSHGEAHFJIKKILJHFEIFDFGEEJHCJMKLU_Y`X`a[`TXYT^^Z_RY\P^\YN^\^SZ^c^Z]`c`Y_b[`^[TXWY^]cbcacfhekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvuvaSJJMIDBBCGHEHGHKIIIDFKKKEFIJNKNLHLNGHE>GGLIKKJLKIGEIDCDDBFJD@JLJO[cY_^a_RTRW_`\]Y^QY\MV_WKQY[PZ_aa]^ca`bbbcceZQYVU\Y]c`__cdbhomnllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQKFCGEBEHIFGHHFFJGHFHKILDDKJMMLLHJJHJF?GFNJKKMKKKIGGCD@DAHIB?IJHP]aZ[d]_TQRX]\\\_ZKW\LR\YIM^QO\_accccb\dcbdcfXQUTR[WZ`_^^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMC@IFCFKJFFFHGFIFFFILJNFDKJLNJLIKJHIFBHHQMKKOMKKIHGED?ECHHAAGGET]Y^X_Y_[]UXXP]]QKJV^X^[]UY`RQ__bb``bb`cbaddbXOQQQZR[]]]]^__dhgljnnp{{|~{
srw
|x\SKCAGFDGMRHCQJFHHHEFKJMPEFIJKNLLILLIIGDHKQOMMPLMKKHICDAEDHGBAGEDWUE\U^SV_XNTUNZZMJKT`a[_X^^a]OYb\``_bcb]abW__TPNOOWQ][[\\^`bffelfoow|{{}
zo
~INFDEFGDIRbPCV^IGGHDFMJPPEIIKKNLLLMKJJGEJMQQNOPMNLNHKADACDFDCBEFBMHBKLPONLFMFGIJHGLKMOPILOPOSOLQSRUZYWYXXdWOSTPPNMOTS[XXZ]\`adecgcklpsrzy{z~{}{
}KIEEGFGDKM]LGGXLGHJHGMLQQILKLKNMUNOKKLGGKPSSNPONONOHKF`ED_LDfdEM[I^[rmOMUmYLCP`UkWgJ]XU^DMQULLSVQRTXWTXUT\UPfZhhdXRjSWVT[\[``aaab`fhfnkhrz|}~}|zr{z{
~z{LHEGFHEEKOSIJF`SHJOJIOMRQKMLLORUROOJLNGHMQ[YOPPNOPOIJQQI|YYqsXPmHqnoaVPqqsPBksmqspSo_[nX]V\XUkhU]VcZ`Y[`VVXjtuu__v_Xa[\f[_aaaa^`bgmpl`pwtx}~vxzlv~tx~|~|z~wwNIEHMNBDLLFIKEQVLKNIKRXWQNOOMQTNOQPKKNGMPS[ZTQROPPPJHZx]TxehZRTQvgtlpbnfjQrOMwmjrpsrqrpoo]ezuxqqzq~s}ku}bRh|essosr{|o}yor_``baZ``gknkblfgmw~~{xwtvzir~nt|~wx{~x|u|||ssNKF`]GAEMMHJJGJPOMMJNV^YULQSNXZMSSRNKOIQRTYWWQTPPPQKHgxlcxrm[KMUypumubnvPdeJfvqmwojfxxiWrQhzmijzz}lxzohoYvvjuup`rg|ilx|o^__ba[]bdgiidgbcdllppstsssyqrxblugry{ssuy~suzn|}ywrnNKStNCCFPPHJKJKPOOOMPZ`ZXKTWPa^RVQYRLOISTUXWWPUPONRJKrouuquqdibWnLqp^FhyWvTLiy}x`y{sna]mocRhqunmypwlvttrln]t~zkmy|ktl|kpvux^__b^]_ddighfe^abiiijknokqnmjpacfdowxompsy~nqpj{ztromLL[VHGEGRPILMJKPQPPPQW\XUMUYUfXRRY^SLNITTVWYWOSNNNQHRmHiwK`dvvVXlOnl{sajgvULWkh}lmlx_[pz{^`zscroxqhd|ir|^TLl`vukiu|{m~xk|p]^_b[_bddgeeebZccikkrsrwglihdg`akagsrlgmmr|kmhk{tmmkmOHJKHIHHRPLNOLKRRROSRWRVTPW[VVTTTa`PNMKTSSQUVNNLMOPJHQNPULKKSTSRTPVUQQNQQXYRNPUTXXX[ZURSW[WXWZOSUWXXR]YW^VTPYRVWWWX^[gr^[[Y\]_cZ_ccdfdccbZccffemnmueegcaf_]g`dlhfgkhpzhggkujhgilQIKLLMKJSQMQPOLVUTPTUXUYUQZ]VUTWUYXPOLMVTPNUSNOMLQPKJRQKQMKKORURQQSSIHLNOQRQQQTVRXW\WSSPQUUVSZQOSRXVTYVTYUTRUTTUWXW]Z^a]\ZZ\\`c[]bcdfdedaY`acabhhimcad^_c]Zd\bma^fefmsdihkkedcfhPJKLOOLMSPNSQQMXWUTUWWWZUS\`VWVYUXSQPKOWSPNUPNQNKSPLOUSNRNMNQTPTQSTUNKMOQTTRRQVWTYZ[YSURTWWWY[TOTUXUUZUWYURRXVUW[YZ`]UX^\^]\]aa^[bbcgfedbX_ab^`hefea^_]]^ZZ_Z_g`^]]bhkagfhfd`bcaPKMLPQLOTOOSQOQ[ZXWXZZXYV\jdVXYZWVSTOJNVTPOTPPPNMQQPRXTQQOMOSVNWRTUUONMQSUUTTRTWVZ]\ZVWQRWXV[[WQTVVVVYTXXURRXVVZ]Y]_^V^]^`\\`___ZbbdhgddbYb`b^^fcc`b]\\\\YZ[X[a[^]\_b__bdebd__`\PMNNRQMRROSTQPU\ZZW[[\YZ[dqmhd^[YVUWQLMVSMNROQROLPSRUZUSPPLPWWRWSSSXMOPRTXVUUSUYX[^][[VROUVV[[WRTWVWXVTX[TSRZWW\^Z^_`Ua\aa^`b_]`]c`cghdf`Zc`a__ed_`c[Z\[\YZXYW\Y\[`^_[^^a`^b\Y`ZQNONVQPTROUTSPW\]\X^\_W\^jqwyb\[VVXQMOVSNQQPRTRKQTTYZWUORNSXWTSURRZOPSSV[VVWTVZX]^[[^VSNTUV\\VRTVVXYSTY\USS]XZ]^\```Vb[cb^ac_\bab_cfidf^[d`a`acd_b_YZ^[\[YXYWWZZZa\][]\\Z]`W[[ZPOOOYPUURQWRTP[]^^[`\`U\]ijr}slg\UXWPNRZSRQTRTUTKQWV[ZZSOSRVVVTOWRSZRTTTX]WXXSX\X^]YZ]TUNVWW^[XRUUYYYUWY\VTW^Y]]`]bb^Y_[eb_dd^^cca^efidf^^da`abbd`b^XZ_[\[XXXXW[Z\`\[[\[XZ[^V^Y]POORZPZTUVVTTT^^`_^b\`U]^bkytl}lZUYUQPS\TUTUTVYWLRZW][]ROUSXWVTPXRSWSVUU[]X[YUZ^X_^Y\YRWRYXY_ZZTUVZYZWXZ\VUZ^\^`a_dc\^]]eaafd^^dc`\gdhedb_da`a`bb_`^WX^Z\\ZYYWV]Z]^ZY[\[WY\]VXW]SOPWYQ]UVYWWUX__aa`c]`T]_beeuzhXYYSVSV\XWWVVW]XOU]Z^]]TRWSWVUSTXRSVTXXX]^X][V]_X__X]VQYTYZZaY\VWX[Z[YYZ[XV]_`^cbbed\b\`fadfd_`dbb[fchecfaf_`aaaa`_^VU]Y[\[Y[YY][[[XXY[YZZ]_]TY]UNTZVS\TVWYVV\`abcac__V[`da_zuohY\ZUXTW[ZY\YXY`WPV^\`a\TTXPUWVTVWRSUWZZ\_^Z_\V__Y^^Y^VSYWYZ]bZ^VW[\[\[[Z[YY__``dbcdebdZbfcgfe^ab`c^bcidcg_g^bbcaa`^_XT[ZZ[[X[XX\[Z[WWYXW\[\`]V]]SPVZVVZUXUXWX]_badad`^YYadb`lfh^\][VWXY\\\_[Y[bVTX^]ac\RVYPWVWWWVTVTX\\^``]`\Wa^[^\[^XVXX[[_`\_XY]\]^^\[]X[`a^`dcdeefbYceehgd^ca`ec]eidei_f^cbcaa`__[XY[YZZXYXW[[Z[WXZTY]\Z`\U^bNSWYVWZX[\XWY^`baeada]^Yacb_a``^\\\WW[[]]__\Z]cXZX]`cd_RXYPWWXYYWVWV]]^`aa_b^Ya]]^Y]^YXVW[\`^]_ZZ^]^^a\[[Z\`b^bdcefefbZdffigc_c_afeZiicfice^bbca``_]]ZW[YYXXZXWZ[ZYWXVU[]]]``bbxLXW\YW\[\]ZW\]_`bdbba]`Xbcbacab][\[XW[\_]`_][`d\\XZbecaR\ZOXXZ[[ZWZY`]`bb`ac_\b]_][^^YYUX]^_`_`\[^^`bc\\X\^`bbcedfdefd\efgifcab\dg`\iibhife`baca_`_]][Y\YXWXYXW\[ZWWXOXZ]acffrkJYW]ZZ_\[^\X][^_acbaa]b[bdb`bbb\[[ZWXiq`\`_]\ac_^YYcedaS_ZRYX\]][Z[[c`bbc`bda`c^`\]^_ZXV[_^]aa`^[`abeb_]T]``cddfegeffe^efhhgdd`[eg^ahhbhhfc`b`cb___]]\Z[YXXXVZV\ZZVVUMXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{{{{|{{{{zzzzz{{|||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvuvvvvuvvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{||||||||||{{{{{zzzzz{{||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||v}}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½E>????=u³ÖÒÒÒÒÖº}~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}v~~y1333332j{éääääèÊ:233330s¿éååååéÇ}~}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vxxxxxwxwwwwwwwxyyyzyywopppppprrrrrrrwzyyzzz~|||||||vuuuuuuz}}}||{
|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvuuuyvvvz{x{xwvwzwyzz~|yyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{|||||||{{{{{{{zzzzzzz{||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwwx}y}zy|{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwww|z~}y{zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z{xwww|z||z|yxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzx|y|}z|xxxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyxyxz{yyxxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxxyyyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{{||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}||}}|||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrsuuttssssrrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqsttstrqppponnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqrsstssqpuwoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrrrsrssrqonpoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpqqqvurro} {nppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqrqqq¢{opppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqro¯oy¢¢zoppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqrp²¦v¬¤{pqqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrrp³¨¤¦±¨vqqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrsssssssv¡¡£´¦¤|ssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz~|~~|vvwwvuxzxxxxxwxx§§££zyzyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~}||||¡{{yxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}}~}§§£ }}}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~²§©¢ ¡«¦~~~~~~
~~}~~~}}}~~~~~~©®©£ ¡¥©¤~|~~~~
|||{|}||~~~~~~~~~ª¯¤¤¡ ¡¡¡©« |}||}}~¦£¡ ¡
}||~~
}}}
~~
}}~~
~~~~
~~}|}
~}}}}{
~~}}
¡
}~
~}}
~}~~~~
~}~
~
~~
~{z
~}}}}~}|{|
~}}~~~~~~}~|}}
}|}~~~}|}}|y|
}}}~~}}}}{zz~~
~~~~~}}}~~}}}}~}|zzz~~}~~}}~
|}}~}}~}~}~}}~~}}}|{{{zzzz~~}~~~~}~~}|~~~~~
~|~}~~~}~~~}}}|{{|zzyyy{~~~~|~~~~}|~~~~~~~~~}}}}
~~}}~~~~}}}}}|||{zyyyx}~~~~~~~~}~~}{|~~
~}}}~~}}}}}}}}}{zyyyyy~~||~}~~~
}}}}}}~~}}}}}}}}~|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
~}}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
~}|||}}||}}}}}}}}}}||{z|xyz{|~}~~{||}
~
~~
~}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}}|~||}
~{z|
~~}~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}}|}~}~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{{z|~|~~~}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{}|||{|||zzy{|z}
~~~
~~~
~~}}~~}}}}~{|}}~
{z{ywz}
~~~}}}||}~}||}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}|~}~~~}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~~}~~}|~}~}~|{|||z{z}~|||}||~~|{{}~}~~}{{{}|{{{{~~}||~~~y}~v{vx}|||{}}~}}~~}~~~~|~~}}}{{}}|z||~}|}|||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~}||}}|}}}}{|~~~~~|}}|||{~~{|{||||}|}|~|}|{{{|y{|{{}z}~~
|{zzy{}z|~~y|yxxt|||||||~~~~}~|z|}}~}}~~}}~{{}~~}}|}}}}}}|}{}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~~}~}|||~}|}|}}}~}}~~|{{{||}|{z{{yzzxy{~
~~{zy{}}x|zr}{{}||~~}}
}~~|~~}|}}~}}|~|}}|}}~~}~}}}{|}~||{|}zzyyyy{{~~
~~~z{y}}zzz}q~z{}}}}}zx
~}~~}~}~~~}~}}
}~}~~}}}|~~~}}}}|}||{|}{{{zzz{{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv}
~~~~~}~~~}~~|}}|~~~~}|}}{}}}|||||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||{|{|}
~~~~~~~~~z{z}}uqz|zqz~}ywtt
~~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}~~~~~~}}|}}~~~~~~~~}~~
~~~}{z{z|{z
~~}~~~~}~}}z{|
{{syz|pwuvwyutz
}}}~}~~}~|}}~~|{{z|{|~~}~~}}}~}}{{zx|vyy{qtxwvxury
~|}}~}~~}|~~~~}}z{{|||}}}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{|||||}}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~
}}}|{||yz{z~y{yx~{|{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst}~}~}~|~}~~}~}~~~~~}||||zyvyyzyvyv~|{{{~}{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}}|||~~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{{{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~{~}~~}}}~~~~~}}~~~|~~~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~}|~~~~}}|~~~}|~~|}~}~~~
~}|{{||yw|ywxwwx{{{{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqsoxwq{
~~}|~}}~~}}|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{||{zzzzzzxsvupprowvr{
}}~}~~~~|~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyytuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|z|}{|}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{{}{z|||yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}|||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|z}|{}xwvyyz||||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~}}}{}z}{zvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{~
~||}|x|yzyz|}|{||}}}||~{{{zzzupxwyvu|uv|
~
{}~}y|zzz}||}z||}}|z{~~~}}|}}|vrvxxvtvu}
}
~
{||}zz|}}||z|~}|}}~~~~~|}}~~}||xvvw
~
}}||{||}}~~~}~|||}}~~~}}~~~}}}~}}~~|}
~
}}}||||~}}{|}}}}}~~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uz
}y|~{
}~}~}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqspurstv{}uvy
hzrss|r}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyyrpvxqvtturstvinrotvnulwm{snym}rsvsvmnwlpylu}|~}}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}~{~|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyrioyxpkyszozwvvp~~~z~}|}~}}~~~~~
xyrz{pp
x
xyks~y{krz|mzyyt}vnoot|uwqy}}m~uo
zrr{|upozks|nv~~}}z}{|}}~}~~}~}~|}~~
}w}~{|{~{||}~}|~}~~~~~~~}}}~|{|~||
}{{|~{||}~||~}~}~~}}|}~~~~~||}~{|||{{~
~|{}~{|{~~}||~}~~}~}}~~|}||~~|}|||}|||~z{{|~
{{~}|||~}|||}}|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}}|||~}|}}|~{||{||}}{{{}|{~}{|}}|}}~}|zz{{||
zz
~|~||}}|}}|~{{{z{|||{{{~{{}{z{~||||}~}{z|z||
|
~~~~||}}{}}|~zz{y{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{}}|}yzzy{}}zz{{}|}||zz}||}|~~{{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yzz{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|{{{{|}}}|~}|||~|{
~}}{
~|}}}~~~~~}}{|{zyzzyz{|yzz{{{|z{{{|}}}}}}||}}|
~|~~
}~~~~{||}}~}~~}}~{~{{zy{zyzz{yzzz{{|z||||~~}|}||}~
~~}|}~~
~}}~~|~~|~||~~|~}}|||{{zzzzy{yzzyzzz{|y{}{{~}~}}}
~}~~~~}}~~~~~
~~|}~}|~}{~|}}}~}|||}{{zyzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<C:;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937676=;>:=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<:<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA>;A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9>CE?<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÑÓÓÓÓÓÓÓÓÓÓÓÓÓÎÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ØÙØØØØØØØØÙÙÙÙØ××××××Ø××××××ÖÔÓÓÓÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILN@99:4;A<7=9AC=@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÍmpppppppppppj§ãÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¸·©§§§§§§§§§§§§¦®¹¸¸¸¸¸¸¸¸¸¸¸·½ÓÓÓÓÓÓÓÓÓÓÓÓÓÓÛââââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVM<::77>C>8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÎN&+++++++++++"ôëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§££££££££££££ ¥£££££££££££¢«ÓÒÒÒÒÒÒÒÒÒÒÒÓÑßêêëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;?C>6:7>?;<B@8<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÍÎR+11111111111'óééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¥¢
¦¤¤¤¤¤¤¤¤¤¤¤£¬ÒÒÒÒÒÒÒÒÒÒÒÓÓÑßêêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<<<<>::;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÏ\9===========5ðççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©©§ª©©©©©©©©©©©¨°ÒÒÒÒÒÒÒÒÒÒÒÓÒÒàéééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9;:=<;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÅÂÃÃÃÃÃÃÃÃÃÃÃÂÉÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÎÎÎÏÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÒÐÐÐÐÐÏÏÏÏÏÏÏÏÎÐÑÒÒÒÒÒÒÒÒÒÒÒÒÒÔÔÔÕÕÕÕÖÖÖÖÖÖ×ÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<7@A<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÏÐÐÏÏÏÏÏÏÏÐÔÐÐÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÑÔÏÏÏÓÓÏÏÏÓÒÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××ÖÕÖÖÖÖ××××××××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?89:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎÓ»ÏÐСËÒÇ«ÑÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<=B>BB@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÒµ³Ö§ «Ï¬²ÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?><7:>9?D>@98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÏÑ ª¯Ê¡´ÍÏÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<96?B?B:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏÑų¿ ¨µ¿ÉÅÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8E@?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÏÖ§²Ì£ ÄÓ¡ÏÐÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<==964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÏÕ¥±ÙÇÉØ£¿ÕÑÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ×××××××××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:<?>=<9@<<::9?@==<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÐÖ¥³È¤»ÍÈÒÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAA8;?<=;<<7558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÐÕ¥·±¯³¥ÐÛ£µÕÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF?HHGE@<<>><==<756:969;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÓÐÕ¥·±¢§»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@C;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÇÒÖ£²É¨¡£¨¢©ÐÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÑÕµÃׯ¥Ô¾ÖÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<<?GEGKH=557:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÑÑÂÔÒÕÀ½ÖÔÓ¹ÈÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>675;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÒÒÔÒÒÒÔÕÓÓÓÖÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ>>786977899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:69896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EIKAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDI;AA;<886586987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFID<BA<;876797799=?A?<:9@?<>B?:8776=?@@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE><HF89757875898;>>=;89A>=@?A>7596;>AB??@@AB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEEC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK@;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A>HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AA?JO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ACCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELBA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?BGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<<DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAD?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsnupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495666788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643954775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573146498566:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730473786766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»ºº¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455588686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸¸·······¸¹¹¸¸¸·¶·¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶µµ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469444738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨§¨¨¥¦¨¨¨§¨§¨©©ª§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::9:9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª¨¥¦§§§¨¨§§¨¨§¥¤¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§¦¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©«««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤¤£¢¢£¢¡ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=6789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥£¢¡¡¡¡¢£¥§¦¦§¬«§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¦¦§§§§¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥£¢¥¦¦¦¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB?DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§§¦¢¡ ¨¢¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;<;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¦¦¥¥¦§¦¥¥¦¦¦¥£ ¡¡ t¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡¡¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢¤¥¥¬¦¤¥¤£¢¡¡¦a¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::78:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢¤¶µ¥£¤¢¡¡£]f¡¡ ¢¡ ¢¡¢£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¦¥±¢¡ §
Un¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¢¢¢¡¡ z¦g]q ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>99;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ¡ ©i§jgr ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9<<>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¤t}©¢kip¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:<>9?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe {w}jir ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq z
kfs£¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢ }r¥xir¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡«q`§©azyt ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡p`i¢T_y{
¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y §§tEFn{P>[v¡¡}
£ª¡¢¤¢«±·´¹µ±´¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡ ©LDFpqRG8`x
¡§ ¤£ª©³¶±µ°¨ª¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v¬u]x_¶¯¥bv~Kj~
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VQQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{¨`³ÎìÀ¥zRz
§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
~~rÐÖÉ׺³cdpZn¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¦ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
}͵ÂÎÈ¿¬|ª¬_h ¢±®©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~u¢´ªphÍ`¨®²°°µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWMO_^\NUUbQDTM;?9<895875795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
¡¡£¡z£wtmv£f ¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUJTOOJDPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ªª©§¢¥¨©¬ªª¯§~[fxxmjhuv}w£¡¤¤§¤©«®¬¥¤¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdWOYKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®««¬¤¡¢¥ª¨§ª¬qV[tqryiebiip|£©§ ¢¡®¬«ª§®¨¥¤©©ª©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_VZNRNQOSe\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨§¦¨©§©©¤¨¦¥¥¢¢°qkRRvwt{haef^_o| ¤ ¡¡¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOXO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤ ¢ £§¡¦®¨°²¬hfKNpuwi`biZ]bku¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvxb_\UYQUW[c_s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?B?:8:>?C@DA:;>=@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯««¬¨¨«¯©¨ª¨¢ ¡§©¶¼¾½¬nhcFUno||n`^fZZabgpx ¡¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\V\hdocmjib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£ £ªª§¯¼ÆËÍÆ·¦shj\BNpntnsgbaYX_cabjquz¡¨¡¤¢§ £ ¡¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxjb[__\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>BE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ «´ÀÔÝÛ˹«p``bUFEun`_mm\[WZY][[^bdehx§¯¦¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__amivkphiibZSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°²´´·ÅÒÙÖÉ®xf]Z[\TLAkjYTXW\\]]XUX`r¡²Åô² §ª¬§«©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YTai`ftotitdidb[LK>:9898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÄÇÃù½¾ÁÇÍÐÄ ~i]YXWSITl§³¨NU^ab___fz¯¿¾¾À²µ¶¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`b_^kcbnxuwnm[bRV\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAA;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅÆ»ÅÁÅÆÀ¼¹Ìɹs\UXTQR³NY\^]`mª»Á²¶§¦±µ«µ²³©®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|~jfhaklgnurruqg^`\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8BBBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÄ¿ÃÃÆÆÁ±¿¼ËпjXWYL·MUYX`¦¼°¦«®³§ª©©«¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tklndomiqxozjia]gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄŵÀ¸³¼ÁÅ¿©wWUQ½MSV[ ¦·¯¥´´¯¥¤£¨¤ ¥ª´±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyy{wnkihuZfrxsyff^d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÃÄž¸½ÁÿǻcQaePS`ª¦´²¬¸µ³«©£¡©¬§¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuuefijh]jonyxcba`^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÎÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈÇ¿ÄÇÄÄÆÊÎÂRIPQf§º·À½¾¹¼º¼º¼¬¦©»º¹·¿²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqocagvhiitmyl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÌÐÍÇÌÉÂÂÇÂËËÈÇÌÉÍÅÅÅÃÅÄÉÌÓÓMM\ªÇÀÈÍÆÄÁÄÇÁ¼¾´±°°Â¾¾ÁÆ¿¾¸¶Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`kjwlieuntc]bTWUSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÃÿ¿¾ÄËÈÊËɼ¼ÈÇÉÍÈÃÈÉÉÅÅÂÃÁÂÆÆÇÊÍIÍÍÇÌÐŶ¿¿ÀÀº»½µ³³À¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrpfegcjdbjmno^Y]VVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ãº¸¹¼¾ÁÇÁÆ»¹ÈÈÃÅÄÀÃÁÁÀÄÁ¾½ÁÁÀÀǦM¤ÑÌÅÉÑÁ¯½½¸¹»»¾·´±¹¾³¼¾±¹µ¸»¶¼´µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbacccjbgc[ZZ]YQOE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹¾ºº´À¸µ·²®º»·À·¼ÊÏÁ»¿À¼»Ä½ºÀÄ¿½½¸»ÀÄ°SÍÄÀÁÉ¿°Á¿º·»¾¹µ¸´¸¼´½¸µ´°³¼±··¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qdabchjggiei^VVTYOSLF8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ¹¿»ÁÕ¼¾»ÃµºÇ·¶¸»½¹¹µºÃÈ«TÈ¿¿»Á¾¹Æ½Â¿¼Å¸¶·´¸¶¶»»¹¶´·ºµ³¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zyqmeefpjekhXYOKKKRJLHD9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹º»¿¼ÐÅy˽Ƿ¹¸¶´·º´·³»ÅÊ UÉ¿¿¾½¼¿ÈÃÅžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~}knqgpksfbn`\THKKDJCCG?:;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼»À·ª¤®°¸»²½¾»Ä¶µ¸µ·¿¾Ä¼ÂÄدv¾ÈÏÂÀ¸®µµ»¾·º²¾ÂÈ[Í¿¾½¼ÇÌÇÇÄǽµµ¶Á½»»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢rfljntnwcgb\cQKUHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£°¹½¼²¼¾¼Å¸±¸¹¼ÆÉÊÂÇÉÑtw±ÑÑÌÊĵº¿ÄȾ¾µ¿ÀÀh}ÍƾÁ¼¿ÃÌÊÇÅÆÀ¹½¼Ä¿¿¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltlln_c^abNHN?E@?DC;;::;:8;<:9<>::>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´»Åк¾¼Ä¾·¼À¿ÉÏÇÈÊÊÂvw¨ÌÌËÍÊÆÂÃËÎÁ¼¹½»±zmÀÇÄÀÀ¿ÄÀÊÉÃÃÄùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{z{mmx|`qc[^__TI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼·»ºÛþ¶¾À¾¾º¦ª³·ÄÀ¦|z|ÄÆËÈÁÃÀÀÉÊÁÀ¼º²¥y³ÈÅÄ¿ÀÁ¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsxthp]\_\ZQEEDMIAD=H;;59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯··²µ³·¹¼»¶»»Å¶n¯Î½¶¹À¼ª}nhnmtu{¾¿ÆÀ¹À¼¾ÅĽ½¸±®¦«¢ÊÃü½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸··½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|wlu{pni\__YSPAFIGK@ECH<=6;99<;::;;=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹Àͱv´½¶µÁ¤iZ^`NS[\pvz
¤¸·Âº³»·»½¿º»»®¥²¡¥ÁÅþ¼¿»»¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ°µ´´½º¾ºº»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦{zsvvwnqa_f][UJ=??GF=GCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Âɦx¢°µjfgVY_IIMPTo{©°·¾¹²µ²¼¹¼¶¹¾µ±¾®³x°ÉÄÀ½¿¹³®²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtwrl_ca\^OIB?=IDFMD@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·¿Æ¨{v¡_SCYUHbjUOEJe¥¯¯¶ºµ´²¬¼¹¸µ¸Á½¬Ä´´w§Ê¿¹ºµ®¥¬³±¦°¨ ¥¶µÂ·¶´¥¨ª¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´¶¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wp|ovrnc]fY]]SONA>JB@KJ@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸¸¿³ynNK@eYBOxhMC^
±µ³µ²´¯¬»º¸¶¹¿Æ~º«¢h«¿¸µ²±¤¦§¤¥©®¹¬««¥¨¤«®¯§°«¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶¯ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmuil][jT][PNHDGMBFNF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³·¶
|XFAOXIJYxcAU£¹³´²°±°¹¸¶»·º½§´¯§w°©««£¨¡ ¨®¤£¤ ¢¦¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhutneUacW]QOMH@IRDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²¼©hM@SyqOIILiZEU°º±¬³¯®¬¶¶²´µ®©¦¦¨ ¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¥¦¨¤¢££«¬³®©®®®§ª¨¬¡ª¨««¦¢£¦¢ ¥¢¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦¡x|vzcwln]QiTPNGPMLCPQ@>;>49:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬¨½Áª¥¼gDS~PXIKaJWbee¯µª²´®ª«¯°²³¥ ¢ £¤¨¢ª £¥¨ ¡¢£¨¨§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ ¤ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£~|uv}nk{dhVRdMJHGOSNKNH<E@<2?859;>;98;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡© «Æ¿ÊOAupPmJLdfvta]bt²¯®³µª¦¬«¢¢¢¤¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¢¥¢¯¨®²«¥ªª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}wy|eyy`bSU`HIJKSTISQM9?B67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¥ÇÆWSJf¤Yf}or[Rkd\gb`mµ°°¸¬¦¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§¡ £±®²±´ª²®£¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvshle[S[YMQJOOVMSMB7>C78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢ª£yUjrwupcwvXWb`di[ZWh®¬¯§¢ ¡£¢¥¡¤¤¨¨¬©¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½¶¾°¬±®©ª´±°¨«¨³¶¸³¸²´¤ ¥ ¬¡¡¢¡ ¥¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xvjwu^m[R`HRUHFUWJCMG=KH8F<77;>=<:;98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¡ ¤op`cWK[RZLLQYRHONH¬ª©¤¦ ¨¥±ª§®£«®¶°´²±®¶¸½¿ºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«®±¹¸¼¯³°µÂ¼·¾³³µ¢¬¢©¨²©«¨§¨ª§ § ¨¨¥¤ª¢¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vrmiwmhm\X[CWNJGMGCFM<>L>4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·¤°¦£bW^e`WMQG=?@CD?>BRx©©ª¥¢£
«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶»»ÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸³»ÆĽü·³ª³ª³´¯³®ª¯£¬¨¶±£°¦ £°±®°¤¥¯£¡ ¡¦¡¤ªª £ ¦¨¡¢¤££¡¤¦¢¤{trkkurqhV\QFUHDJPI?EA4FH95<>7;<>=<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ |_^e`PFD;C>F<>96N~ª²§££¢ ¥«¦xm ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿À¾ÇÆ·ÃÊÉÃÁÇ¿º´º»µ»·°¶²ªº²®»¸¿»º«¸«ª¸»µ¼®®¹£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢
~zrkcioxkeY[FKLEDTLDCE7:?:549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡}riaWNE>IY|oaA=\®¬ wrqmp¦®´¹Å»ÍÇË¿ÂÌÍÍÌÇÉÑÌÌÌÇÉÅÆÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÍÔÐÓÓÌÊÂÅÆÆÊÈÏÀÉÑÌÇÆÈƼÃÁ¾¿¿¶¾³¿ÀÃÃÇÅÇį¿¹²¸¼Äº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZZCNLDFPIDC@55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>9;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £if\TID@?K¤ ²£yqroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÏÊÓ×Ò×ÒÕÖÓÔÈÌÇÌÍÊÓÍÎÓÍÅÉÊÊÂÇÌÇÉÉƿó³ÈÅËËËÏÇÊ¿¾¿½ÁÆÅÍÌÉÉÀÃÀ®¯³¨¢ª£¦©¬¤¥¦
{ruvgcgvjdVWQDNF@JQB>B<:22A<E<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡aSLJDC?CS°Ò½²¯¦ ¤¡}xqkebhroq{
upnqtp
³Ã¾ÅÑÐ×ÖÖÒÖÎÔÖ×ÔÓÑÓÔÔÓÏÑÄÐÓÖØÕÖÒËÉÎÑËÆÍÑÊÒÕÖÙÖ×Ó×ØÎÒÊÏÑÌÏÐÌÓÐÀÈÈÊÄÌÌÌÎÏÅÇȶ¿ÊÀÒÍÌÐÇÊÉÀÄÃÈÎÍÐÑÏÍÊÈ͸·»¨¥«§£ª¥©¨¨}xsvpc`erb]R\IJGAEIJ>;A8=5586;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¤¥ ¢¡YI@ADAFQv²¯¦ wica__`_^__]alusppolrquÄÈÇÔÖ×××ÓÖÐÕÔÚÔÔÎÏÕÔÔÑÑÌÑÎÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐØ×ØÑØÒ×ÙÔÕÌÏÏÊÍÒËÎÑÀÆÃÈÆÏÎÑÑÒÈÌÍÀËÌÆÓÏÌÏÈÅËÇÇÉÌÊÔÔÑÕÏÒÌÓ¹ű¥¨µ®§¨«¥²¨°³¬
|zqstmacim_VP_JJCFCRM@<>43:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><?@=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¥®·¨«·ØÔÕÙÙÑÎп¼Ìɶ¾®¦ª¨¡£«eC8=>DXª¨}qecb__a_^a`_``_`emppnkorwwÌÁÓÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÑÊÏÍÓÖÒÑÖÍÏÕÕÑÅÑÔËÐÔÕÖÎÓÑØ××ØËÈÎÄÉÏÌÊÌÀÊÀÉÊÎÎÐËÐÎÎÌÏÏÈÌÐÐËÎËÃÊÇÉÍËÌÒÓÍÓÒÑÐÐʽȹ°®»¹µ«¶°¨¸³¾»±
zvoqokadnpaW\ZIFFDMXE;@=33<<87855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÁ±©¬©¤±zHFB;W¡k^^^adb``aa``a^__^\bmroostvvy¤¿ÌÕÑÖÔÓØÖÎÎÓËÎÎÅÎÊÒÒÏÇÎÍÎÔÌÎÒÍË×ÖÐÌÑÔËÌÐÒÓÊÎÑÕÒÕÕÊÀÊÂÅÍÂÈÊÃÌÄÆÉËËÏËÎÍÐÎÓÌÆÉÏÍÈÇËÅÇÁÆÊÌÍÐÒÇÐÏÎÎÌÐÅÇÁ¸¹½Ãýø²²¾±»Ãõª¥¡yqrkmg``qhYXhVMGLIPQB;C>;68:8::57==@;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±ÇøÊÕÖÙÚÛØÌÌÏÈÖÕĵ¯´¨xlpqy|eabb`]^aca``_`aa`_][]grrprsqmry¥ÇÓÏËÐÐÓÔÊÅÉÉÆÆ¿ÃÅÏÎÇÅÇÍÊÒÈËÎÍÆÑÒÐÎÌÔÊÇËÎÏÇÇÏÒËÐÏƺĿÆʽÂÇÉÎÅÃÇÀÇÍÈÄÌËÌÏÈÄÄÐÈÆÂÆÈÄ¿ÁÇÌËÌÏÂËÌÉÇËÐÄÅÇ»ÇÃÈÉÂÏÁ½¼¿°ÁÉƹ½ª°²§¥¢£xotdk`^fqa[W`GHHGIMTG?J=64355==48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼¹ÌÌÆÐÕÕØÚÛØÐÉÏÏÑÓÈ·»»£¶~h
¤«
}~s_[^^^`^`cdc_]]^_``_[Z\`lrqookloo}¹ÑÈÉÊÏËÍĺÀû»ºº¾ÉÆÂÃÀÃÈÊÉÈÊÈÁÅÌÆÈÊÍÉÄÂËÉÁÁËÐÅËÈ¿¹Â»ÆǾÀÆÏËÄÀûÉÇÉ»ÉÇÅÊÀ¾ÂËÆÅľƽ¼ÁÃÅÌÅƼÀÉÃÅÇÒÅÁÉ¿ÊÉÆÈÆÑÃÃÆïÄËÇÃÊ·¿¼º´©¬¤¥¬£¡¦£ |wstfiZanmZ[XRDLFBGELDFS@54335?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÚØÙÏËÒÍÍÎÈÁµÃ¾±¯¶l_z|¡z
vxurp_[[]``bcdded`\\]]_^`[YZ\borokikposǽÊÅËÀÆ°¶º²²³²±Â¼¼¼º¸ÁÁÁľ½¹½¿¹ÄÊÅƽÆÀ¸»ÄÉ¿ÁÉ»·»ºÆÿ¼ÁÎÃƾ¾µÁ½Ã»½Æ»Ãº´¼ÆÄ·¿¶¶¾¿»Ìý¶ºÈ»¿¾ËÃÁÆÂÅÉÇÉÆÐÆÂÌȲÇÉÃÎÌÀÅÿ½²·°²§¨¨¹°¥°ª¬zvwjdg`hocV^YJFJFHKAEBFJ@9:658854;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÅÂÄÈÎÒÊÊÉÆÍÍÎÑÈÐÅÕÔÕ×ÍÊÎÅÉÅÇÁ¹Å½«®¦`dvx~{ttc\\]^``bcbbdeb]\[\^\^]Z[\^hsqmggnpry½ÌÀúÁ¸°±§ª¬§¸´¶´³³´»¶½±·°µ¯²»Â¼Áļ¿»µ²º¾À¸È¹´»·Á½¸½ÇÁļµ¯²¶º¿´Å·»µ«¸½¾À½±º¶°·º³Æ¼·¯»¿µ·µÅ¼¾ÃÅÀÄÅÆÇËÅÀÆÆ»ÇËÀÏÉÇÃÆÁ÷ý½¶¹¾Ç¿¬µ»µ·¶ytxggebkn]V^`FKHHJFBDAEE?<:566633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐÌÍÈÉÈÊÈÊÄÐÍÒÏÍÅÇÁÆÀ¿º·É¶ª°[hp
zx~vw|sh]]]]_`_`da^cec__\[^\]^Z[[]_lpnifknnr|¤ÇÀ¸¸µ°«¬§¢©§ª¬³ª¬ª´¶±³©®§¬³»º¶Ã¹ºº±«µ¹»´Âº°À±¾¼»¶¼È¹Ã¶ª¨°²À¶¸½°±§±³´»¼«®µ¦®¶®»²±ª¹°®»®»¸»ÀÀ¾ºÃ¿ÆÃÅÀ¼ÆÁÇ˸ÅÇÅ¿ÇÃúÄÆ»ÆÉÌ˳¹Â½»³swvki`blhXXW[ALKMJEAC?FA:9:996854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÄÐÇÍÁÃÆ¿ÄÄÃÃÊÂÉÊ¿À¼Âº³µµÃ®ª°[j{x}
z{wn^]\\]_`__dcbcdb`_]Z[ZZ]ZZYZ\enohfhiknrº°µ®¥¥§§ ¤ ¥«®¤¨¢«ª¬«°£¦ª´¶±½¹¯·°¨®¸´³¼¸´½¯¸¹¶²¼Á²À®¥¨£«±²³¨½ª«¨«¬µ³¥¨®¡¤¯©²¦¨¨®¥¨·¬±³·ºº»²¼¾¾¾Ä¿µÂÁÇÈ·¾ÀÄ·Äÿ»¿Ä¾ÄÈÌÊ¿¿ÃÀÀ©stsji\aocWVXPHYRSKFFE>?@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃǹ¹ËÁ˾»É¶½Ã¾ºÊ·ÁÃÁ´¶¼¶±¯µ»¨«dmz}~xt~|swe_]\\^_`^_ccab`a_^]\ZXY[[YXZ\_fkfdgehjor
ª¥¬¥¡¤¤¡£©££¥¦§¦ ¤¦¬²°¶·§±¨ª´«´º±¶¶®¶¹³°ºº±·¥ ¤¦±¨«¨¹ª¤¦§¨§² §¦¤¦¬§£ ¡±¬²´³´°µ¼¶»ÁÀ²»¾ÃÁ±¹¹Â³Á¾Àµ¸¼½¾¼ÂÇÅÃÄ¿ÀÄ xplbf`ko`UY_HNgOTGFKF<=@=:;;826536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;>97776788666;::;9:;<859<:>>@;È´¶½¸ºÀº½¶ ¡¦º¶«³³»³ÄÏÉËÃƸ·ÇÀÌ¿¸É·»Å¸³Ä¸³¿À¬µ¼²¬¥¯³¡£ir
|xusomjiipi_`]\\\^__acb```a^\[\\XYXXXVX[^_dcbegggkmo©¡¢¡¢§ ¤¥¢§£ «°±µ¤©ªª¬¬¤´¸·°¬³¶¯³µ¯°ª£¢²¥¦©¸¢¦¦ ¨« ¥£¯©«¨ª«°²¸¯¸¹º°¶¼»º«³²¹³½´¶±±¶µ¿¶¾À¾Ã»º½zsk_e^ddXTW]IW\KOGJJGA<??@;?<05535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÅÏÈÈÀÆ»»ÃÃϾ¹Ç¸·¾·²Â´±»»¬¹º±¢©«§m~
xrmomkb^aff]]^]]]\]_aabccba_\[[ZZYXXWWWXXXZ^bddeffhikr§¡¢¡¨¥§¢¥ ¡¯®®¯²¡¥£®«§¢µ°²²¬©¯³§º³¦¶ ¢£¡£¢ª¶«££¦¥¦£ ¡«§££¦«²³ªµ°²«³¹´¯ª¯²²³·³®©®²¸±º¶º½À¸³±
yuf_f^[YVSZUK[QLIEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ¸½¿¶¾¼¿³¥£¥±Âµ¶½´¸ÁÌÈƿŶÁÀÇηÀĽ³¹¹³¿¶±¹»²´¯¤ª xxoqtqhechdc\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWVWadecdeddhjv ¡¡¡©¤©«§¯°«£¤¸ª¡ ®¨¶ª§§±¤¸°¤· £ª§¡¬¹¯¢¡¤¢ ¡©©¤¢£ªª±¨´¬ª§³°¥«®³±°°¯¯§¨§²®±´¯¼´º¸®£zve_aVYXSRSKM^LPLGHLKE=@>=B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾·½®§§¢ª»À½À¹®´¸ÁÌÇÅÂýŸÈ̲ÁÂÁ®¼»µ»¼µ¹¹°¯°ª¡©|wqilrtphhedfa\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[bcbbcbbcfi §¦¤¦§ ¦ ª¯¦¢£·¨¡¡¢¨³¢¥¨¥°¥±®¬µ¡©¡¢±±££¡§§¢¢¤¥¥«¤¥°§¥£«¬¦¨®¯¯«¨ªª³¥¦«¯´±®¼¶±¯¯ zwrea\[]XNLQHRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847763321./2556;:8;7876<;:;;A8x»»±µ½°»±·¬¥¦¬·»¼Áź±¹µÄÉÉÀÃÆÅǶÅijÁ¿Å«··½¶½º»µ²«¨£t~vncafihfgifil`]\[ZZZZ\]\[\^_\ZZ[YYY[WUXWTTVURTRU``_`a_aacdi¤ ¥¢¦¥¥£¤£ª«¥¥±ª ¡¥«¨¢®¬©©®¢¢¢¢«©°¢¡£¤¡¢ ¢¥¦£«¥¢¤«¤«®¥®²©¦¥¦¦´¦©¨³µ´¹º°ª¬rpo`[WVURFPNHZ\PRITKSLEGJD8;;=<9667:9;:976977:;:=<<6;<8>598:88659:;<97?<9578452121..1426:8698598989;9@9{µ´¬´»²°«²¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÊÌȵɼ±½Ãɱ¸Áµ¼À¼´µª¬¦r{tiijlgjlmkjle]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURRNQY]\]]^___bdm
¢¡©©«¨¬§©¦¤¥¯¥¥¯© ¡¯«´ ¥¦£¤¡©ª ¡¡¢ ¤£ £¡¢¨££¨« «¯¤·¦£¤¢¬ª¨«¯³·²½µ³«¯
tsh[XYSUREXLQ[XMTNPLQRINJC=??A?=75799<<977:79:;<=>;7;;:=67:;8976989:6:=99577570141-+/434988::8::748=8?9~³§³·¯¨§¯®©¨¬·¶«¼Ê»¶¿¬ËÆŸÁÎÏȳĺ·»Âȱ¸¿·¼½»³µ¦© ztvwnmhmmmpggifd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNPQYZZZ]]\^_ae}}¢ «ª¦¯¬¨±¥© ¡¥¨§®¨«¥¡¨«¥ ¡¤¡¢¥¦¨¨¨ ±°¦±½¨£¬´ª®§°µ°¹µÀ±®±«~rsbVTVNRJGVPRRLLWMJMORGMKACFDD>A75889;9:7::7<=:;@>:9;9:?759:9876958779;85576761320-*.102877;99;8948;8@8³¬¦±·ª¥¢±«ª§©²°¤¶Æ´¹º³ÊŹºÁËÐʱ¶·¼½Áñ°±·´´»³´¢£vkglnqnrkpkdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajy~t© «¦¦¬¨¡¦£
¤£¢¥§ ¡¢¢¦¤¦©¦¡ ´²§²¸¡¢¶¬©¤²²¦µ¼µ«¬±£ysn]NQQLODNNNPKFNNJJNNQIMJAHLHHC>858889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12876:999984988A7w¶¦¤¶°¥§¤ª¥ ©¦¤³ª¢²Ãµµ²³ÆƶºÃÊÌƳ¬¹½´¸À¯©°¦®º¯{n__frpvqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXXX[]anquo¡£¢¤¥¢s~{ £
~~tz££ ¡¤¤¢´¯¬°¬¥¸¦¦±¡°®°¼ª©¯ªwscVMROPMCSNLPMBPQHINRMHJJDKMFKK=749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-02764789::65:87A7x·¡£´©¦¥¨£¦¥¦¦¦³§¥´Á¸°´°ÉÄ·¹ÁÎƽ³¬ºÁ¬Ã¨¢¦¦¶£ }w~fWV_gfighnciigb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTRMMJHNSSSTUUVY[]jjqk~{sNXr_;Vo|s
y{}xqp}¡ §®©¨¨³¢¦®¬«¨´£©£sn_[NSRWLDTJPMLFNOIELQMKOJIMPFII=7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· £®¡¦¦ª ¦©§£©¯¨§´Â¹°µ°Ç·³½Ï¿¹¯®µÂ§ªÅª£±¢}su]PLQUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMORTVXZ`lngzsPB?}y`JQnx~
nxuvxpQ|~xvhw~¤£¨©¥¤°ª¡¤¤¦©¢ª¢¦¨vmf^[HQQSMIUMRILKOIHFJNLMTKQPOFIC=769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')+*,4833989:99::::?9w¶£§¡¯¡§¨¥§¨¯¬ªµ¼¶¸¶³Á»¶¨¹È¸¶¨¨µ¶ª²½¦¨~}wpoXMKMMNLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZnru}ih\Tt~|
{vxsovqtz~«
y{hv{prmxxz{vsrxgu
||© ©¥§¤ ¤sha]\JWPRGKXROJLMRJJJLPHLQLRTMEHB<77;99>=:;<98@?::>=7==79937785675252472/2.,//200/-+(().12721987:8775:<;7v®£¡´©¯ª¥«°±ª½´²¼¸¶º´±·º²ª¬©¨²°¡~vx|vooiXKHIHGEHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQQSV^t{xfv|gyvx}q|w{ok~}t{|ufv|logs|lyq}qmvqhq~pC
~wwz}{u}£¡¥xomfcZXXUQJSUTOPNPVKNKOOJROINPLFD<<79;::?=9<:99??;8;=7<9999266856633611224.,,-..-0-+*''*.1362/876966527995y¦ ¡¦°¬®«¨©±¯±«¼¸¬»¾¸³¬§°§¬¥©¤
yuq{mupjmjXKFGEA@CDHLLMQRPQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNOQTX]eprl§ªÀ~tyb{xo|yz}omytyjjq~Inhx~midly
ksl|nr|inps{~{vottyyp|ojonoXVXTRQYORTTRXUMNHMJMOKCINGF@:99;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¥¬°£ª¨µ¯®¬´¿«¼Ã¿¥¢¤¡¡sztotkpldljYNDFC@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORWZQY\_§aisye~omzvtlts|jjMy
g1vsl~}tfeu
filukq|hqq|n|t~}qpnumwyujyywkkoheXRZWYY[MPUVYXNIHEJJHGC@GECG=998;9:9<:9;:::@<9:<98>787715234533645031.**+),,++)(+'),,226,,4775478iO8;5n£¨±§º¯«²°Â±»ÃÇ
zqtyprpoodpf_TFIC?<;9:?@ADCEGILOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOPQVLAIQIb¯² q{xl}lq
zyr¡txsu5q¨¡¡¢
vp||t®hgbjnrmpuioXupwlz}mrnp{svnbv
ux~}{sqqm`[]^[YX`_RN[ZXWLHJFJG?CABH?CD=;97=;:;;9:99;:?<88=:8;66651121253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥´©®±®Á²»ÁÅ|nul{txxlwnwci^JPG>?6449;;;=>@BEHLLLLNPQRTUVWXZXVUTSPLE<5*K[@-gI94/?©®_HLMNPL7CMRSDJv||v~lv|~
~u¢y~aªzw~sz]dqtz|wmhjbyo
znwtzptyxkni]v||
}q}uw{|wpstfg`[[^S[g^WPTX[UGJJDKG?F@DC>AA=;97<;;=<::99;;=>79>9985653244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¦ ª ±¨¯À²»Åº{vk}xs }|p~zgvkRWL@E211366688:<>AEGFGJKMOQQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJh{y|q|z}~v¡¥¬ªH®¯¯©tm|}hghyn
qGlwryvhmk_v}yzuv|xmow~ttrl[^^[ccXge[TOPVYPDLKFNICFCC@@CA=978:::;;:888::?>6;>7595773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|}
¡¦¸¯³½³}tp~~}}~¤
x~sx_cWKB60./23124668:=>?BEGHJMNQSTUTTVUSQOGC?80,#[>?84.]ps£UFIKMNPW`XpY\^i
~
¡¡¦»±§»Çè¡¥|qv
ihptqw{v
}nvuf «¢zyyogkx~{~tle^[[^j]af`ZOKNWRQIPJDNGCJDBADDA<:87=<:<:88778:==8<=68756623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfw{¤¡¬¦«¯°¡xw|~
mpj]B@4--//..02234779;=?BDHINQRSRSSTRPOHDB<87/9D><<63.lMPIIKKKNV_cggmu £ª¥£¬©¶¢¨Á®ǯxº|¡
¢
lpuwqm
q ¤µ©¢}kjj|tb^d`[gk]lk^WKGNRQMLLFIPCDMFACEFB=997=<:;:987767;:6=:785456344566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYoouqv~§ ©ge¤~y}
xx~gMR>/..,/.-/000212467;?CENPRTPPQSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} §¥¢¡¢¨¨«¨¬©ª¶«¿«¶ÈÈ·ÉÑϾ pi«©
¡§¢xz~¡{w«²|£¢¦¶°¨lss}}ri`]b`bhd`gf[REJKPOIILFFMCHLFGDBGEA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppt`m}aw}{ªªBD}x|
v^bP460-1/,.00//..0015>ABMQRSQRSTRNSLEE@<>=GG@A@8662<9;FHGIJNOQYm
w£§ª´½¸¤¬¬§¨´«°¶²²»±³½³Ã«ºÉ˷ÿ¸¥¢°³¬ª£
¦¦ £¦¢«¨¥
¤¡ «¡¤©°£¦·º £°¢¢£¡«¯¬²µ¢¤ªzz}
hah\ec^dd^fg_ZOCIHSNFHLFJGFFHAKFCFFA;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLhcWioXz
v
ÚÈsV|z
pna@E64<2/110-,+-1.-4?CAMUQRSUUVUN[PGGD<>>FHCEA7;<5C;=FKIGHROPW ®£³ª²ÀÇê³Å¶¬³¿³¸¾¶¿´Á¶»º£¸Å¨¶Éǵ¾¹µ¨£´°±§¯«¥v¤¡¬²´ª®¨®¶»²º¬¯µ¢±«±µ»·´®´ §¨£§©¯²¹·¸§¶¨¤xvZbeWfbbd``f`[TIDDLUQHIJDIGEA@@KDBMG<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AFWQJL[ZQbcWyuq}u
{¿»£¼´y
zxn]V@EN<6:46AB764//6CHCQ[OQUWU\VO^UIKJA@?GKFFD;>@7D7?BJJEFWTP^¤£±´Ã¶¸ÁÌɶ»Ä½³³À¶¸Áµ¾¯·t±³¥ºÄ¤°Æ¹±³±´¨¤µ¶ª± ¢¢¥°®¦¬§¤ ¬´»¢¨²ºµ¼¿Ì¿ÅŽ½³Â·º¸¾·º·¹¬¬°¦±ª½°¼»Â¬º¨ª}}kWdbYkejfW\cYVSIGFLQGCHIAHD>?BBK@@MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALRWSYUZvjp~nzsxb¹¡£{z|}}wzueO\dGEL;Qca[^SF?;HPEZcQRYXZgYT``MSPEA?IKHEEA@C<E6B>HGJLSZT]®¸µº¸È¿º½ÉÌ»¼À»·µ»º¶½´º±Æ`u²¤±«½ª¥¨««¤¢²µ «§®¥§¦¥££§±´§²³½¶Á¾ÓÉÉÓÇÂÅÌÂÊÃÀ¾½¿»¼·´¯¸·¶Ã¹Å½ÂÈ°¹©¡«¤§¶s`cb^Xb`igRX`VQUIEENK@>GD=JA=B@=F>;H@796379>489:57045/26389373426?8@>GKRTSQPOQQPJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRKQ]glkp
slrssÕÀµ }~x{|y~t}zkepuY]\Pedb`ed][XW\MdmURmm_n_XgdUYUJDBKKHFHHHGAI9D?HKTTV\Z[¹À¸½·ÆÀ»¹Êʺ¶¹µ¸¹²·µ´®¶¶du¨p^¢¬ ¢¤«¥§¥¤¬¥ª°¸°½¹ÔÑÎÖÐÉÌÒÌÏÎÊÆ¿¿ÂʽÁ¼ÁÀÄÄÅʾÈ㤻°´¯«¸»{m_a]Y^aZccP[`SPKCAEFE<@E>AHA@D=:E>=J?47535;=468977022/24169775554D3ELM>51/006:477@IOI;-&**(-./,@M+/54mI0Ht?>BD@CDFKODQ\Yh_onlouu³¬¡
~|s{
{ts{ykmu{hreilifjih`fiilZms¤¼g[oh]ZZTHKNOJKPKSQHLAJGJO_^bfia·Ç°¸²»½µ±ÄƵ°¸°¯»«²±§«·«µ§§N¦¥¡§¬¯¨°§´´ÔÔÔÖÒËÏÔÕÍÓÏÍÅÂÉпÊÉÊÉÑÇÌÍÂÐÒ¸¯Ã¼Ä¹¥¶ºÃ¢pe^^^Y`WYfZQ]WOPBBHEBH;AC>AG??A8;D>@H=46655;:687654/10146278875367C5B8?-0-1349=97,.,1;FK=),(.0007K?-46TW0DwC;B>EBACJM?UYSeVshqoyy ª¥}
|p{r}qxukqx~q{nxslhpmcjmpxiw|~Ë¿Áߧncxnc[a`JPRUNY^P]\NPNTQUT\nmvq¸¬´¦¯¶ª¬¼À°«´¦¤¸¦«® «´£±¦«¬¤§¢¬ÏÒÕÑÍËÒÓÔÐÔÑÎÈÃÔÑÇÍÒÓÓ×ÌÑÑÅÒÖÅÀÎÇǨ¾·Ïzpf_c]W`S]ZPQTPOH>@FABE<@B>ED>??:==<<JA45465<888664412/03526768533;=<E=@11+/249>5901022-2DN3)/3.32=N238C}_2AtD:==I>@CFH<VRMN[u
wlwp}~¡¡y
{r~zu
ovrks||w{swqjsripqzyrz¾Ë~²vrvhak]CZZ[VecXdjSX]]`d^cxz~©£¤¡ ¨¥ª°¸ª¥³£¡¡£¡§±¦j¢
~§°¡ ¡¥¤¨ÈÎÏÈÂËÑÔÑÔÓÎÓÍÆÖÒÌÔØÖÖØÔ×ÕÉÔÚÍÉ××ÑʬÃÃÌtpda`XTYT\PKGJJJ@;:;DAD<BC>GB>BB;<9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/--;R017/532FD28>nb5=tM99@I<AD?A;PLFKYpu}hsxr
x~xs{}wznwpmuvx}t
|ylvtn}vux|µ;AÅ¥~|ieWICfcecgjdnx[^fhknin ££¦±££³¡¥ © £±~
z~©£}«³¨§½Ãƹ¶ÆÍÒÐÒÐÌÒËÉÔÎÐÕÚ××ØÔÙØÍØÛÎÉÙÚÑÖ¾ËÌ´ywpf^[SVR[VFGJIEE=:7:@@B:GD?DCADB;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BS39254/7K75<`bA<svV87AH:?C><9QECJTknnpbpqt|~
|x
zyqz{uz
yp|oozq{qnzuw}|u~{¯sX©Â¶pnb=^hrpqpnxvehoruxqz ª ¬¡¦«}
~my|®ª§®µ½©¾ÇËÉÉÌËÐÉÃÒÊÔ×Ø×Ø×ÕÛ×ÓÙÛÕÐÛÚÑÖÈÔË{}ji\[PST^HCFIH>A>=7:=?;=G=?AAADA>>:86DB755479.566435542323646553457EBDCEB56<FNSM[nfcnskaV>,4LG865434BF4=W_hLux^8;?F<<B<::D?CGRk_mdbfkvqz~||~wyo{{tz vutu}too
t|zv{·Å¤ÁɸwpeNfczw¢xyv{{vm¥£«
z}¡¼¡©¦¥®¨¶¿ÀÀ¹ÇÉÍÎÅÍÉÑÖÕÕÙÕ×ÛÔ×ÙÚÛ×ÛÚÚØÎÜÆ}{ikgaTXUUMLDNC;==<8:<>9=@6=?@<?><9867DA6455=80665547745613855564557HH=DJE7925;H>;::7IP]ZRUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Yea][htzylwvz|~~|{~
zzu}tm|}~s~|~x}xnt}{}z¨Ã¡½£}}r~s¦
{hGq ¤
~¥¥¸¢§¡£¯·ºµ¬ÀÅÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Û¸z{zmkgX`\SPOICLB=<>99::99;=6?>><=9:;;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8689?=DRSRX_VXfmmmiqsy{z|{{|{~u
yrzsm~~w
¡n¨
z |}£¢ ¤®
Wr«\¢
¢£
¤³¡¡¨²¹¬¦½ÂÇÎÇÆÏÌÐÌÎ×ÐÑÔ®ÖÕØÚØÚÚ×ÖÙÙqvih_^XTWXC@HC>>>:49:;7:;:3;;?=>7;9:1:H>:37=@50677255?65;55858:57735HR7GOK994=EJB>1FCLB98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcbymb~omxxyz||{wsp
zuvvt
}~¦£¥¢¨r±§¢£©¯n·
ÄȲ¡¥²d¤ÍÇ
ª££¥©¡£³´¦£¼Á¾ÈÅÅÉÈÉÂÊÓÍÍÔ©ÒÑÖÖÖØÚÔÓÚÎsie`__OJU[BAFC;A=837;<:8=649:<:82?9:2:I:=67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBcFu}|m~xz~z~vv{lny|xx|~£³¨£«²¡§ ¥¤®¢·³¡ ¤¯¢¤§©¯¤ À£É¸«¢¥²
¨¢
t²¤¡} ¡²®£¥·¾´ÅÇĽÃÿÆÎÊÉÒ§ÎÍÓÒÐÖØÒÏØ»s{w^bWbXPHJOEBCD5>:76:?;<7=42669774=5<5<L<>;<BA75<;4277?@6??784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=89567=:JFDGN[\YJga;Hz{m
y|x
}px}}|osz}{x
¨»¨²½¯¥®³³¨£¢°¬µ¢¸¥¬¤©·¦¤£©ª¤¯°© »»É i¶¸«°¢«½£^ª²|}³«¢¡ ¥¯¨¢¥³¸«ÂÈĵ»½»ÅÈÈÂÑ¡ÆÉÍÍÄÖÖÐËÓ¢q|j^\U`RPFD>=CAB8?874>F<<6<35355453B3::BM:A;AHB;:@<746<B9?@B874::6>=47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPeHb`cpJ@~r|u~m}}|pww{«ÂÀ°¾Æ»²´Á¼´«³¶¨²®®½ª»¤¨¹·«¦¦¢¡££©¯²±ª¤¢¥¥£¹®¨À»¬²¹¥¤§}½°z§±« ¤¬ ¡¨§¤¡£°²¦ÁÆ𰻶ÅÄþͧÇÃÇüÕÐÍÄÊutd^\a\OKBL@EF>A?B;:4>A==5=6>333242A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\gG`igZ][{un~|q~zz§´ÆÉÀÂÌÁùȼº¯«¹»²¶º³À®¥À¤ª°»»ª®«¢¢§«®µ°ª ª¢°´§¢ººµÁ»«¨²¤¤¨©ÃĤz¡ ¦ ®ª¡ ³ ¡¤ ¦¤¦§¤¯¥¿Ä®©·µÉþ¶Î²Å¾Ã¼³ÑÊÈÁµvzn^Z]lTNICLJJI@A=CD<5AD;:3=8B332262A05IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBg\Me\fTcjyr|~wz¡¨º¾ÈÈÊÂÒÉÊÂͼÁ³»¾§º¿¾¼Ã·¬Á©¬³»½ª°©¤¥£«®´®¶µ ®¦¢£´½©¨¼À£¶¶¯«¯¬ª«©¦¥¥uy
££©¥}£ ¢µ¦¥¤£¥¦¥£©¨¢²¬¨»Àį¥³·ÌÀ¹®Ã³»¾Á¸ÂÂÁÀp{cZX]\MLMIGDCHBBACK:4DH:;4<7E.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQF7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>kI_XaZdeVx
~ ®§£Â½ÈÄÈÆÓÍÎÍ˼·°º¼´¼Ê¼ÃÁ¶¶»³¿¹¼¯¨ ©§¶®©²·¢¨¡«·¸©¥¯¾Ä±½¹³§©³³®¥¬§ ±Å§|}ª¥¡£¢Z¥f£³¥£¬«§§¡¤¨¦¶«©º¼Ãµ¥´¶ËÁ¸ª¶¬³º¸®¨¸º½¸np\ZVWOGKSMK?AHEDGFG85FM;>7>AJ.32025B55PWN;LFKRLOGGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|hW;=@BFBrFiIRebLF¦¡©¥¢¯¾®¡Ç½ÅÄÇÇÎÎÎÒʾ»¶±º»¼¾Î¶Ä½·¸·²²µ³¸²«¦««¸ª©§¯°£®¤§¤¥´À°ª¬³¾Â¹À¹³§¸³·³®¥®®¤¡sÁ}±¦£ ¨¡ `J¥T°¯¥¯¯¥¡¦ §¢´©ª³½¼»«°²ÇÀ¸¦««±±£¡²²´¤rpg^\PRMEPPPQ;HKIFHAC>9KT?A:=EM07544:B34NWO<JKNUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@CAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}iX;:BC@=REWRsbWFH«¡©¯§
£¥µÉ´©Æ»ÃÄÈÊÈÇÌÎǾº³¯¹¸ÀÁ͵ȺÀ¹µº±¯¯²´§£ª´´ª©¦®¬¤®¥¥©º¿¨«¶¶¾Á¿¾¸³²Â¯·½«£®´¬¸¥¦v¾ ¯¡ ¡©¨ ª¡§nv¢¢®²£«©ª«®¥¤¥©¢°§©«º·¾³²®¾¹¶£§¨¥§¬©©ehc`SLMGHNJVL=MDMIJACD<QU<AABDO18=77?B75UXN?HNQXRPQTJQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=..SaMVHe^HF¬¡»¯ª«¢¤¬££¶Ç½´ÁºÂÃÈÉÅÂÎÈÁ½¹²¯¹´ÀÂʶƱÀ¼µº«¨¬¯£¢ª´º¦©¦¬ª¨¯§¤««¾»¨¬¼³·½Æ¼¶µ¸À°½¿³©´¶«¾¤¢¢¼ ·©¥£¢¨¥³¡¥¨ª¤¢¢ µ¯¥¥±«¬¬¤£© ©¥¢¡´µºµ¨µ²³¢¦ª¡wb^`^KIGHMQIMEFFBRJHADGAVSDH<AGQ1;B7:BF79\YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:h]FDCpbGE¨¤Ã¥©ª¨¦¬¡ª¶ÄÁ¼¿¸ÁÃÁÈľÍÆ»¾¹²°¸³¿Ãȵ¿¯¼·¹·§¤ª«¬ ªªÄ¢¥¨¬¦¬¯¬¢ª¨¾¸¦¬½°·¶Ç¶´¹¸¾°¾Á¶´²´¯¾££¡¢¥££¾¥©©¬¡¦½¢¤¢©«¡
¤ µ¬¥²§°¨ª
¡¥¤¬±¶±ª¥©¬ ¡©idZa]PJIKOMHECI@=OH@;GIH[ROK=HNU4BF9>HG5Cb[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,0Mv\4KZ5,MnW<-=)#zbQ5CKQ9oRF<KxfcXM¢£Å¬¡¬£¤ §ª¬¶°£ª³¶Å½À¶À¼É¾Êȶ¸µ´°³´·Áƶ¾°¸´º¶ §ª«¥¤Á¥ ª® ¤©¯¢¦§½µ¥±»·¶µÃ²³·º¾±ÃÀ¸¸³´µ¢¤ ¡©¨«¢Ã©¬®¦ ½¡¤«««¦¡W¦¡ ¸ª§¶£³¢ ¯ ¢¤¦®³«©¢¢¥¥¤ce[d`LIKKOFEAFK>=JA99JJN]QQJ=LW\9FI=DMI8Hc\LCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWsHE6=ue\LO¡Ä§¥¢³¡²§ª¤£©¬»°¨¬µ²ÈÃÁó¾ǼÄʽ°°¶®°µ¯¿Åµ¹°°º¶©°©©¦¡§Â¬±ª¢®°©¤§½·¦¶º½¯·Ä³³Â¿±Æ³º·«´¶ª¢¥£«¡¨«°®®»²¦ ©©¢¤¸¡¡¤®¯¬¤¦¡£§´§§´£°®¢ ¡¦¬°¥§¢
cf[hfKIMKSBC@IG;;F?99NMU^RSJ>O^^=HPBMLI9Nd]LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<v]^?[U^fr@8<HweA4¤Â¨£ª±¡£´©²«¦¢¤²¬®©»²°´´Æ¿ÄĵÀžÊĵÀȵ«µ¨°¸¬ÀÄ´·®¬¶º¥«±«©¦»µ¨°®´²§ªº³§º²·²¸Àª·²Â¼´Å§¾®·µ©§¬¡¥¤¢¢¤¯¸²µ¶ ¨¤£·£¤¥®±²¥©¥¢¨¢®²¢¦®¥¬¥
©©«¢§¡ydi]ljNPNNT=BANC;:I@77QO]^RVQAW`\BJSHWKH:Ud]NFON[W[RPQX]GAB[PBG>NC9HGHNP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1\cZ33906p[bH05JpiVCWFyfC;¤£¡¥¿¦¨¯¯¡©µª¹¯«¤ª´·±°¹¶°·¸¸Å½Ãǽ¼ÄÂÇÁ¹ÁÆÁºª¶¥»Á÷·ª²¼£°±¥¨ª¹ª §°ª¯´³ª©¶¶¬»«²²¹·¬¹°Á¹½¾¦Ã«°·®¨ª«¦ª¡¡ °®³«°¹©¦ ¶©¥¢¢¯±³«±§« ¥¡£³°¦¡©¢©©§ ¤~kimamnXQQZTACEU@;:IA7:XPd^PWWDY^^MLRO_KJ>Zd^NIQN[UYPKSWZI?DXPDF>N?=IGGQPB=CFBM?:2D?77547?=95E4+75/251.-.,1>*'+=\p=>1.1e[d@1747gY`F(@8l}h\V:{cC=¨¡©½¡ª°ª£±¸©¥µ²«¡µ½¯³¸¼º½·¶ÁÿÉĹÅÃÁÀ¸Å½Á¸¯¶§«·²¼¿¾µ©®²¸¬¨§©§»¥³«¢±°³¬ª¶³µ¼¯±µ¬°µ±À¹Ä¶«¼¯±¸¬¬©¢±¥¤¨¤²ª³©ª³§ ¥¤´®§¢¬¬®±§²¬²©£§¤¡¨µ©¡¬§¦£
{flshpr_GYfVDCNXDZ9HB6>]Rh\NY]G[^]NMRXdJJC\c`PLMNXWXPJVVWL=EUJEDAM?AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,+%2+*5K1.'_^aV151=`V^8)C3YU\gK5zfL@¤ ¤¬·£¬©¥®®¶ª®´¹¦§°¸Å·±·¾Áµ´»Å¾ÌŹÃÁº¿ºÄ¸Á¹³µ¬ªº·»º¾µª±¶¨«ª«¬««½«®±£ª±³®®¶²¹¶©®±§µ°³º¼É²ªµ´±´¯®¦¡³¨¬ ¥±¢ ¥¯¡¤¢¥¦²©¡¦±«ªµ¤®°µ¯£§¬¸¢¡¬¥£¢ {
{knynu|aF`jZIHZ[={JGE6AbTiZM\aJ[]ZRRSbaLKE`a`PLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`Va.5(C^Q\.*A/JGP[G3cYTKD¯¨±©¬¥£®®µ©¶´·£¬´·Éº´»º¿¾µ´·ÃÁÍǼĽ·¾¿À·¿½²½®§ºº··Â·¬±¹¦®«§£²ª¯º¤²±§§¢±³±²±µ±¸²¨®«²§¸¯µ³ÃŶ©´µ«°©§¢¶¦± ¤±§©©¢¥¥¤·§¢°³«§±§°µ¬¤¡¬¨ª¸¢§¢§¤ v{
nqxv|]Kel\JOd\?b{GI8GgWe[L^bMXYWTXTi]POHa]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANIg27'FaLV%-B.=ELQ<3rkKDC¤¤«¦£°²³ª¶°¶«µ¹É¹®Á»Ã·³²µÂÃÏÄÀÁ½´½À¿º¿½³Ä¨ª¹±¶·¿½¯«³³ §°¥¦°¥²µ¬«²°¬©¨´¹¬´³µ¬´¬©«¨¬©¹±°Ç¾¸¤¹¯©¦¨°¥££®£©¯¢£¢£¬£ ¡©¥¥¸¤«´´¤ª«¨¬®¶¯¢£¨ª ¤´£
§ w~
||}qts~}~\Rdn^NZg]FD[G:NmXa[M`bNVWVWTYg^QRLdZ[TKGOTSNGIVS\N;P^JBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Ce;6*HdHJ+:I?3CIS,>k>HI©ª¡¨°¤¨£³´±´µ±±¡¬½Ëº®Á»Æ±´´ÂÃÑÄƾÀ²¾Â¼¿¸¼Å¨·¬³¸¼Á°«²¡¤§©¨¤°£«±ª¯«±®®«³»§·±²©²©ª¦¥£º¬©±Â¹´¬¹¨¨¨©§±¥©¤¢®ª¨¢¢¬¤«¡§¨¡¬¥£¬·±± ©¢ª°¬¦§©£ §¡ ¥
|w
usrvl_Y`ncQsr\K<|F?WuX`YOd\NUVUWP\a_SONhXWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*35>10485(5/*,.30;),,'%234$,2-860)(1<^K0.IgDF8<B05EKX1@\@MF¬§¡ª²©¨°µ¬¸´®ª¤««½É»±¾·Ã¯°³ÄÄÎÎÿ¿´ÀÃĺÀ´ÉĬ¯·®²ºÀ¿³®®«¥¨ª°©¦¨²¥´ª°®±¯³¬³º¤¸´¬¬®§« ¢°·«ªº¶¤µµ¤©§¬¬ª¬¡¨¦¦±²¤¦¥¡¡«© ¦£¢ª¤¬¢¦±·¬¬¢¥¢©ª©¡¥¤£
¤£|{u~uw£yk^`ngWfdN@gLDbzWbXReUMVUUTO\]aUKNiWVVIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06XZ.0JgAA<<C+:JO^4DAIHD¯¤¢ª°ª¨µ«¶°«¤«ª©¼ÁÀ¸¹³¼µ¦²¯ÄÉËÑ¿Á»¹ÀÀ¹ÁºÂÄ®±µ²´¼Á¾³²®«¬¨¶ª¥°ª¹¯¨°°®±«µª¶µ¦´¶«¬¤©ª£³³¨¨¤´´ ¶®¡©¨«¨«§ ª«¨¹¶©ª©©¡©¨¡ £¢¦¢©¦´®§¥©¢£¥¦§ª¢££~
¢txu{x~prggqx\atiO]VHmyUdVRcOLUTUQOXZbVHPjTWSGPYUI>IHOQPxMNV=<KD?@A<@CUC9AK=5;E13;97*4:=+-341*8**+*,)*(/*&)%3;,$2)2021%/2Rc02?f=NX?C,?LT_/Ik7RE;¯¥ª«¤®³´®ª¥¯©©»¾»Á±¯¸¢µ¯ÉÇÈÑÀ¿½º¼Ã½ºÃÁÀ¿¯²³²¶½¼Á²²³«³©¥µ©¤³³¹¯¢µ±¯±¹ª¸®ª®¶«ªª« £¡¶®¨¡¯²¡´ª¨§ª£ª¡¡¬¨½¯¬®¬¡§§«¯¢¢ ¨§§©°¨¢¬¡ ¡¢£¦¨¥}
¤
xs}uxz{tt{j£ui^elug|RWp^KxsTdSQ_MMSZgNLVYeXGSjRR>BNQaQ:IHLSIqQLS;<I?;<=;@@W<<>H73CB15:93-5::)-31--6)(+-,52#2)',%.;.&1.0-14%,0Mi:38_=ad?F1CP[[+HO;XB4°¤¥ª£¥£¬¦´³°©¤°§ª¸¾Á¼°¨¹ª§®°ÉÇÈнÀ¾¹¾¾¼É¼Â¹±°µ²º¼¹À³´»¹¬£µ§§¬²¶¹²¦§ºµ´¼¯¼¥µ«©¯¤¥¬ª§ª²¤³¨ª§ª¤©¢¨¨©½«´¯©£ ®²¢¤¤¥¤¨ª¥©¡ ¤©©
}~
¢~rzy~|hw|zupq~iyd`hdr
{mgy]^VCX{mTaPRXKKMpt]HZ[gYEVgOC>KNDCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KI1%90%,,09/,,+6'17#-/GjI14X=fbAJ7GS`U*=<F\@*°©¥£¡ª¤¶²±¤©±¦¹Á½µ°£¹¨¨°ÃÉÉÌÁ·½Àµ·¿ºÈ¶Ãµ´³µ²½¹º½¶¹¶¿¢³§ª«¯µ·´ªº»¨±¿²¹ ¯´¶©¬±£¥¨©¢¤°¦¯ «©§¡©£¨ »§®±®¡ª¢£¬¥ ¢¢ª¢££¡¦¬{}~
¤|yl}vyxb{zrppsxjtjgchansmbjp`oB]ykV^NPQJILSYVM\^mWDXaO^PHMDF;7HEKO<rhJK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*L>*49&'.34.0+/4&,:$40AhZ13S=e_DL6KVdN)=3Q]=#«§£¡§£·¯¢¯¯©«¸Âº³¹¯«¨´ºÇÊÇ¿·Â¾¯´¾·Ä¶Ã²°º²³Àµ»¾¸©¹¸½«¤µ§¨ª°¹°©¹¼£®¿´´¡®·µ§¦§°³ ¥¦§ ¥¬¨© ª®§ ¦¢¨°¸¤±® ¬¡¬¤¦¦¨£©¦¨¡ª}||¡y
}{sp|qst`yxjopqpjsczlhfdae`[rjqMNiXZMPLJGPRQHM[_oTDXZRgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZgH*?0\[5(¥¬¡¤¡·ª°£´´©©¹Å¶²® ·¬°¶ÅÇÀ·¿Â¹°µ¼·¿»¿¯¬¾°³¿±½Ã¹©»º¸§¨¶¨§«°¬³°¦¼¶¤«ºµ®±¸¯©¥§¯²¡¤ £¤¡¯¦¡£¨¯¡ ¢£¤¢¶°¡¦±«¬¢®ª¤¨¤¥©¤¢©¡
z~zz
zzpqvnpt_xwemllkinfrikfi]ct`[kviZJ^[XOOKHHRUF29]^mPDXVYeMHIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<"8R=*113>D5,-'42*;+139cm74GAf[HTDU]hD.<2cV,2¢¡©¤¡¢¡·©® º¸¥¬½Å³°®£µ¯¯´Ãü³¿º·°³¹¸º¸º¯®À³´¹°¿Á¸¬½ºµ¥¢³ª§©²«±¡Àµ¤§µµ¨²¼©¨¥©¯¬£§¤¥¡²¥¤¨©¢ ¤£¸¨¤§®¦¥¡¨¨¡¡ ¡ª £¨¤y{}z
{w~{ltqllsawthhjggo
ghhcfij`jcig[e{c`StT\[SLJGIOS@!*h^jLCVU^`KIGEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,?0-N?.+-7,1195,&.5-80576`tA3CDg[KWGU`hB379gO'2¢££¦£µ¬§ªº·§¬ÄÁ¶°¬£µ®§®¯·À¿¼²Á¶°®²¶¶¸¶¶ª½³®²±½¿¸®¼»±¥¶«¥¥´©ª®Á«¨¥¯²©¬µ»©©«±¥©§¤¦¢¤©¡¡§¶¥¯ª®¡¡¡ ¦¡ ¥«¡© y
w}
{s}}fxokjkguskcgddvbeffejjdkrZ_Y]mdaNiX[`VJGIKMRX>9_liHBTS\[IHFEA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=+*,0B*JK./*+3722(57$+7.72685]yN2>HiZLZJVbf@:3BhH%5£¬¡¤³±¢±½¶¡±Æ¼º±±¤·¬ª®©¹¼»»®À²®®®¶®²¸³¨«¹±¯®³¶º¶°¸½¦µ« °¤ª®¢À ±¤®°®·®µ¯¢§©¥§¥¤¢¨¬¯¥º¨®¢¡£¤ ¨©§©§|s
|
p~fymhkigqrk\hccsafhjnlgjjhn]lltpaUcideZIFLMOXQQVaeU@VSYTFHFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24;6#3*)6.55465Z|]19Kj[M[KXdd@A1JfC'4¡°¡¨²¯¸¿¶ ´Â»½¹±¦¶°¨®¥·¸··»¯¬ª«¶ª³¸¥³µ²®©°·¶±³µº§©µ¨¨¢©§¾£®¯´µ¬±°©¢£«¨¦£©¢¤£«ª©»§¤ ¡k¡p£u©§¡xnj~vql}p^cagltw~gguheW\hsnNPjcgrg_dfnmj^_aeNKD9FTg^JGPPTUKHR`oteFZQUPFHFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,+08>G601.*.*/568,#1'214:175Xl16Ok[N\K[fb>G1Qd=*.£° ªª£½Å¯©¸Â¸½¼§¶°¥«¤·³²³±¹©¦¬´¦¯µ¢¨¸¶¶¨§¬·³®´³¢©³ª¡¤¦¦«º¦¥¯²¶®¤©®«¬¥¡ §§ ¥¥§§§ª£µ¯££££¡¡ ¤¥ªrx
¡vif}rx¡o~}¡ |tvllheczkqaS
mcliqYjqoX^i[kk[qnzr
gZ^GN?G_MFRVVQQRWTg^MWIRSOEGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82).1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Wa70(¦«ªª§ª¿Ã¯±º½·À¿ª¥·°©¦³´®¯³·«©¥±¥´³µ¶´¦§¨³±²¨®« ²¨ £¢ ¡³£¥¥µ¼§¬§«ª¬¨¥¡ ¦£¥£¤£©£¤¥¦¡·££ ¤®©¡
±£¬yÔ¨ÁÇyx±¥·dÀ¿yy|Êq¼Åzrµ¦»{l±«°xhkX±®nei¼¼nhznrØ~Sjb¶²rt¡ªWOWbPVNFT[XQPR\W\P@\DQNDGI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww21Tk\O[M^g\>L1[]41!¦§ª¥²¨±Â½²µÀµ·¾Â«¦³¬©§®³©¯¶´§§¦´¥§¸®³²¶ª¥¤§²®®±¦ª§¤±£¢®«¢³º£ª©¢®¥¡¡§§ ¦§§¡¦¢ °¢£
¯jjª~gdp¥q®¡¤~x»}k¡v±_j´[¥f`fzfjxk©d¾rg¦u±j|±xtcmm§n[ EhfEu`~g|¤§Y_«ixyj§7J¯\XSld[KNW_\WV;NOXW/ITTICEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:5/'$203B/=;Uv2-Vj\OYL_gY:M5_Y30¢¬§¥£¤ª²·¬´½¾°¶Ä²·ºÂ¦©°«®¨©°®£°º¯£¤®²£©¸¨³²°£¥ ª¯¬¯¦§£¢°¢¬¥¡³³¢«¢ ¡¨£ ¥¤¢ ª¦¦ ¡
µµx
©µv³·~¨~k¦{w«gk±[«{tqx °vwqkkl|N¤XHcc~ch¦`yruS^P©mcq~b.Q¡o[Skh`LK[dX\ZB>±yXXA#MhEBEA@A19>88:84;:9<9:A:E::;6:CB8=?KNG:5:AFB@AD<FD;0201;F,0.940,.(/3,>831/2-D1<<S}n3+Xj\OXM_gX7J8aU50³¦¦¡®©§²¬©»¶Â°»Â¸·Àª¬®¦±©¡¯¼ª¡§´£«µ¤¦³³§£¢§ª²¨°§¥¯¬¡¤¨´¯¢©©¨ª ¥§¢ £¤£¢©¥¢ Õ¹p°Â~Å|Ö»|¤¤{¤¥z¬yV¯z~j¹Z¹v}¦|zªy{±nt¼
oP¯§ÅQ zc`©ctrm`Sµ´È|c¤3Bv]PjidP@XgZdaJHNmM[ROYfZCD?E?0=<59;74<;8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DC./0483+-).323971#%5*>3==Qwj6*Yi[K]O_fT7G:aQ71%¢±¨¨¥³ª¥´©¤¼·Á°¹À±µ´»³µ§±°£°²¦®¶¨§¹®£¯± ³´° ¤§©°©´¨¤« ª§°©£¬¢¨¡¥¡¢¡¡¡¡¢§¡¦ §¡²nhµq«n¦r´sr¶{¤£¡¥~°vÒÑv\®{
¤oª¦k
}}{±sy³etofRÈZÂ\yb_`vsb^YÊo¿uMKµSUÆdTQjcfXAOk`lhPUGI8=VQZWXIC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>HI91746@>/.24252-).26,742&60;5:=Pqh9'Wi\BOT_eP5G=aM620¡¥¯¤ª¼¦µ¥§¶»¼²º¿·µ´ºº³¥´´¡±±¢¬°¤¦º®¤±°´¸ª¦¡©¤²¨¬©¤¨¢§¥ª°¦¢¥ ¤¦¥¦¡¢ ¡¥¢
¬{w¨v£©o§¡¢®
³\r³R®}¤q×}x
~w¯x³aelZ°XKuyf`_wwhk]¯wxl5yÈ®²_BSo^g`EPm_pmVUM.echRXQ;AD@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@>V_cN6GC`I:99¸°´Á¨³¨©²º·³¸¿¹·²µ¼µ¤·³´¬¨¬§µ«¨±±«´¤© ¨¡¶§¦©¢¥¡¢¥¦¬¯¦ ©¢¢¨¥ ¥¨¤¬¡ ¡¡ ¦©}}¥x¡ªp§¡£ª|yo±Z¨ ytØvt¨£|{²^d ~l\«[Zhgªdr{ks]¬Z koeOJC¡\[Lt]bfM[a_rs_JV6JXHE=GFAM35A8.;>05A78@<6=<F?:<6?=B7.HVJEAH6KIN@IK@EN::@4.;>102144+*05/7,&21($$6671<PeeA&Uf[?2U_bL7FI_C2?8¡¿«´Â®¬©¦´°·±µ¿¹¹²°·»©º´°¤¥§§ª°©¯ªµ¬ª¯¡¡ ¦¥¤º¢£« ¢ ¨¯¯¦¨¦¤¨«§©§ £¤¡¡¡ ¡«®mr´r©v¦s´xs³¤£¤w¸o{¢kk¶Z
ei¡¢§mr´t²j
ku³af¢oj\_M¡|Rs£mz~oq\¯V<weTon.\§OcRkebmZc]`p{cSZQ>>mo3CB@?L9!7@6.;@37C58??3;<CDBJFMIF62JTKEBI6IJP?HNCFP=<E50;;010/75,+,426/#00,,289/9N`eD'UdY>/U^aL5FM^81C8¥»¡²À®®««§·©¸¯µÀµ¼°¯¹¸«Á¶©© ¦£¢ªª¨¶£²§¯ª § ¤«¸£¥¢¡«µ°§¬ª¥¥¢ª±¤¦«°¡£¢¡©ªÔ»s°ÃÃ~Õ¸x§z£¶u}wv²`ºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¡~tª}¾ns¼t²uxnqn¤t½^w}[ay¼kZV[jz^jaegbmxoY[YCA@r@CG+5G"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7A9§¡¼¢±Ã°ªª¬±§¸¯¶Ä±º±®º¯®À±«¤¢£¢©¤ª²¤µ¦¥ª¦¬¸¢® ¥£¯¹²¬£§§¤¤¬ ¨«¨£³£¥§¡¢£° ©
µ·xµwmknsoytÁ»½{²¨pt¹|{|¤»¹½uz´£tvut°ufiµtrpw¶^z}hymyc¬pu
Z[§jEeZTf`c]cQggpluBMPLD:ZM?J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7LT_G'SbW8*O^]=+:VV'>;<§ ¡¿¥´Â´¬ª¨¬«©»®°Å®´²®·§´¸©¢¡¥ «¤ª¦µ¨§ £«¤½¦ ª¡¢¨¡²µ·££¢¦¥ª©¤¥¡¨¦¦£©¡£°¨§¡j~i¦xr}tzd{½¾ÀºoqasjZ^ack`dmwbke^acqir}
gj~rtx}}b[wthP\n}|kXlzsJJopMuMEW]gaLZWgc_O[mujqRODEN;HH=L?2-2A?8/5?C<9;@;=C>RVVWYZ[\\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7JR_I'S`V4)P_L(3=[O'?2>¨ ¨¡Â£´¹¶£¬¥®§¨µ²«È«°³«´£¾±²¦ ¢¨£¬¦¯¤¤µ©¥¡¦¨½§¨¦¤©¨°²¿¬§¦¡©¨£¬££§¬¢«¢±§ ±¤¡¨¢¤¦¢gm}qw
µª ¢¡z¤lj||tqxyvv|kstuev}wkp{m`c]phMXZfj`WZoymmfSOFS9OYMRO(+:KB635=@A9:C><ENSSTVWXYZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J&R^S10T^:+=8\K,<-@³¡³¡¿¡¤±²· ©¥²§¥°µªÈ«¬°¥µ¦À§´ ¤¤£ ª§¬££¶«©¥À«¤¢¢§¨§²Ä¯«ª¨ª ¬¡¢¤¯¦¡¥¨®§ ¯ ¡¦ ¡£ |ª¨{¤f¡³¯
vz|vyzofzkuysiszuktdyf`iecdfkYl{pij\SLPD_TE@??,4@F;45;>A;<?>>HNNOPSUVVXZ\_aca_^^]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMMD/T]Q05M[17E4\G5<,@´ ¹¯¿¬«®²± ª¦±¢¬³°Ä°ª«£³®¼£´¦¢¡§¥©¦¤¥²´°¦¾ «¢¢¨ª«¢³È³ª¤ª§¨¤« ©¯©¥£«¢® ¡¤¯£¨¤¨e|e~cylhk{¤ªje~geeih{¡kh£wkj£sln{zXe^^lv\hswwnxxsmytw{iY^ktd]sik}qkc^RNWJdXAJ4=F7?FD71<=?AD;;DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AJ[J/7ZO6)EY/DO1YC;?.=¥º¼¹¯¬³°ª¥¨°§°¼±©§¤¯° £¢¦«£¥¨©²£¢¯¦¶¹¥®£¡ ¥{¥¢¨³Ä¸¤¢§¯¢££©©¡ ª°ª«¤ª ª§¨ ¬¡¥°¤ª¡¥ª~½r´r
hx¹Ä¸q¢£z¦sª|ËÀÀ»q¢}À½ÂÁ||ÃÀ}k¥²ooÊzwvzyqzqx
ymwcf_yd`ec^thldbXLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>I[L*#BQ/#F[3PY/UAB;/8£¹Ã´°°À©¨£¯©°®¦³´¯©¥¦¦±««¢ª§¢¬£¥¨¤¤´¤¢¦«·³§®¢¥¡§¬¤«ÀÀ± ©¯©¡¢£ª£ ¡®©¬§££§¡¦¥©¤¨©©¬¡¥¡¢Îxz¤y_®^§¢ }§t«¯^cª{§
t³c«¡³j
¯t}¸aY£Ímu{Ú{p~v~e{vvk|o~
~m`rlpg`_yd\qhjcf`RTRW]KOC5AHED8>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-K0';\;L-!P@F4.1ÂÀ¿µ´°¸¤ª¨´«¥²¬¬«¤«¦°ª §¥¢¯ ¨§£¥¡°¬§®±«¨¬ ¤¥§£®¤«°©Àdz¨©±®¡©ª ®°§«©§¨¤¢«¬³¥¢ª©£¦¥¡° ¦ q
t¨q±|q¬~¡¥wª}s~«v{|~ª¢~«{{VÄzoÁ}muomeveoawnromfpuup`gme_oiingcWS\aYRSC8II@D<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1' '45-&7=WJ-<'>1)3V@F!G:C1.+°ÔÆƲ´ £££¢¬¯¶¯¨±¦¨ª§««§¢£¢ ¥ª¡¥ ¨¨¢°¬¨§¯¬¨¦©£¡ ¦£¯¬£¬µªºÎ²¦¬¢®¬ ª²©ªª¬«¤£¬¯±¢¨«®¥¦ª©©±¢£¤
¤j¤uz©tz²p¦q ¤`aR«®v¦z{f£¤¤}©®^}©U¢z¢{ïÅr¯³³¹qb©¯Âthmpnyxxolfeeqpf|ib]W`iXXULLQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ('"+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÃÉÖÕ¿¡«§¡¯¢°´°¯©¢§¦ª««©¤¦ ¤¦§¦£«¢¬¡¤¯¢ª¤µ°¯ ©¦¢¢¨ ¥°¦¤¨²·É²µª«©¢¥³ §¬¬¤®«££ª¢³®¢ª³±¡©¨®¯¶¢¢§|ªlu«y|°o¤Ò¸´¸É²_`©£ zxªÉt¤¨ªÆÆxf¡¥s}¯]p´b°uK£m§Gd|qq{u~{n[fjrpej_aXdm\^YINLKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75685/)(%&%$&),4ENPPMFKJVF*L0/=-5OTQ;<F2,$§¤ÀƸ©³¬¥¢²¹¬ª¡¦¨¥ª«ª§ ¦¥ª£¯«¦ ¬©¥§µ¢©ª¶²¬¥¥¬§£ ©¦®¡¤§ª°µÂ²³ª¨¤¡£®¦¡¦¦¬°®©§¬¤·¬ ±¹¯®§²³³¤§¢Nxz£}¤¦¸{|y¹~Ìƶx¡~v¥¤©°
¬}b¥l¤p
}r¬`£sq`¼}RUu¤{~u{s
q\mnxrjo[d_hnbd]KLQTAIHFI:9K>B108866877-*5==?BDGILNPTVXYZ[\__^]__\ZZZYUSOH@882.,*.+*'&?QTVWWWYXXWUOUF<E3:P[T6?H,- ©«¤«¹ª¯ ¡¬³³¥ ¥®®ª§¦¦£§¡³®¢©¦² ©¤¢µ¢¢¢©µ¹£¢¡¡±§¥¡¢¯®¤¨¢¶²Ä±©©§¢¤¥¦¤©¯¡¯¥¦¯¥¼¡¶·µ²¸°³¦¯ £
ѵ÷y
¦x¡w ¥qª´nrj£|s¯¥¢¦mp²\¥szl{|m©a£qqbs²¸hx¦}x}ymixiyrnu]ednmfg`J[XX<HG@U3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^__][ZZXURRQF:2230/++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH$)%s¿¿¼º´§¥µ¡¢£¨§®«¬¦¢¦ µ§¢©§°£¬£¤£ª´´¤¤§§¤§µ¡ª¤¶«Ã°©«©¡¡ ¦£§¥¦¬¨®£¥¦¾¬½°¬¢°²¹«³¦¨±£§z¨}|°w¤¥m²o |¡¨¬®
ª¡¡{~««xy¯]£}¦§d|sj¯]¥kp
]`[ m¦{{kmc~tnz`geqnhggCZa[>KT3U8BBC7$$3+''3, /6674359@CFIKMNQSSSVZ]_a``aa^][ZXSPONI8052.*,ATVVVTTUUUUTTUTSTVWWXVUUQHFIJ#((½©Æ¶Á³¬ ®¸¥£¤£°¯ª¤¹ £« ¯©®¡«¨¤®±¬¦¦¬¬¡¡¥¡¥ ¨¦¶©À¯¥©¤¦¥¤¤©¬¬¤¥ª¨¾¤Ã¬ª¢¡«²¹ª®§ ³®¨©v¯~
|º®e°e}¡¦¬°
¦¤¡¡
[lj³`{{±mgo°[}´\¤kÈ¢d{¼XvµZ²}R®z¬X¡n¨|y~dt~bxt|ajgqmfeeOUd\BU_>J(>9=4!",%2. *1/04579:<ACFHJLNPQRTXZ^```ab^_\[XUPNJFC553./@UZXWXWXXWWXWVWWWWXWWXYZZ\\XWWGB;Ò³²·½º´Â³£¬¦¥¶¨ ³³©£ µ ´¨ª¬¯¬¯¨¢¯¬¨§¢¦®¨¡¤¤£¥£ª²©½¯¥¨} ¨¡¨®¨¦¦£¥©» Ʀ¤¨¡«´µ¬®¦»¬¬©£¯¤¸Ãº§¬¯¦¥ª~սªb£¿½}~£×º¸µ
½¾k£o«lz²°Çj«°½¬xw¢¾¼t§zzc}{dgy{`lekjbPaZSj\@UaBN*=:4/$%2 $(0496678:>ACFGJKMNNQTW]a\__a^`[\YTQMHC?<A?5=SYXXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ»³´±¿¹±½²¢®¦¥²¦¥¿ª¸²¨¡¿¦§²±º¨¯¦¦°¬®¥¢¬¡£ª£¦§¡¨¢¡¬ª¹®¨£{¦¨ ©©¡ª§¡£ª»¨Ä¢ ®£ª³´ª°© º§®®suª¤·e pgmow¤u®pq¨£®¤rmmlfxonqzjqigqiigpd]bjoY]g~w¦_aqnfe¢}vfxikyydlcflbKdXJlZ:QeER'K:+# ",)-2.5:4579<?ABDEHKLMOQSV]WZ\``a]][TPLHD=:AB7MXZZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨³©¹¹²³ª©¡®£²©¾²Äɾ¶ªÀ¬¬£¡¨¬ º£¤®¬¦®©
¦«¡££¤§¨£ª ¦¦§¯º¬¬{¥¨©£±¦¢«¹¯À§¤²¥¬°±ª«§·£· ¨¥¶¢©©³£« ±¢ ¢ ¥¡«§
¤}g~tvtq§lz¡¢riwqxw|zjldcodU`X@j[HcaOZ+F=+'!740.!%2(*699469;>?ABDEJKKMPPQXTVY^`ac]^UQJED>9=@ASX[\ZWXXXXXYXXZ[[\^__`^^^__```_YY`¥©ª¥µ¶®®¢°£ µ±¬Ç½Å»¹«¢¦¦±¨£¶§©´§¨¬¢§¬¥ §£¨¨¦¡£§¡µ»¨«{ ¥ª ¶£§«·§®Á®£¶¦¯¯°¬©©³¸ ®¼¥¤¦¶¢¦©£¬¯¡£°¨¯£ £ª«¡ª
}f
uuysj
}¢¢{rszr|jod^pja[_YncP`dPZ:GGE>2==8/+&+)&&406668:==?AACIJGJKLMSSSUZ``i`eUPJACB:9EMV[^^[Z\[[[\]]__]^__aabaaa`bbbdb\[c¤¨£°³¬®£©¦ §µª¥´¼¯¢£z¢±¤¥±©¸¦£ª£®¢§¡®ª¨¨©¹¶¥¦y¢¨¸£¯µ¢¯¯u¤½£² wy ª²ºu¬¤ªd\bv ¤}n³£§ª£esyp¨l¢¨e¥wjvp{aiZuhhs{¦eyxjoykqe_vplkh\gebbpS\>NNNSG>@TD91/&4:316678<;>@AAFHBGFIKMTTUY]`hfgWQJ<DG<8UR[`ab`^`_`aa_\]__`aabcdabaaedchd^]f¦£¡¯±¬«©¥©®£¦¤«¶°²§«¦¬t¯¨«§¹ ¤«¢§¡u®¦©¤º´¨ uw ¡§²µ³¼§ ~§¢z¢®¶¦±©¯£y¬¢§©§
w¥z§{²z cympyp
txht t}¢k
lx{qqgdxojlj\fkjet\_ITLQ@E5.ZTU7)!09=>643568;:=>>@DI?JEJKGSX[Y[aaifZQH9EK<>aV^bdfd`aa`bb_]`aabbbcfgcba`edcgcaah£¦®«¨¬ ¨±¦¦©¥®È¾±¢§©µ¬§¢ ¾ |¬¡ ¨¢¤º²§
pu¡¥«´´Êª®·
¯°®©¥}¨r{w§h¤y´¦¨Â«¡r¥}
±¡}¡ |
mr
yq|uÅf©£k£q
hwt|whhuqhhk^dpmgmXgG]RM2D46Nac7&3<EGD:64658;8>==?BM?NIJLCPZ]\Wa^jm\QE=LM@JdX]cfhgbbbbcc`_babccceiicbbbecafcbbi¢°§©¨¦« ¤¸°©ª¦ £¤«¤¥ª·£¯¡§¥½¡y«¡
w¤£¹®¥~bm¡¡¡§~¡§
«®£©£uk¬uM«x¨§©«}¡{z§ikg¶~n`dY{dhr}yl]|m_Sp\_ky`Ye}p§ªk£nr¥p
if m[n|fZ`bWPowfmtrkjo^kpmliXiO]XF9A4GD^k4,ICRMN=84859;6@;;>BO>QRLMBJ\]_W^^cv`MD:MOMTb\\ffiibbdbddbab`bdcacikdbddgdbgeach ¸ ª¤¦¬¡µ¼«®¢ ¢¥¬®¡®µ¢¨¡ ¦´u¦
¬¤©¦±§¢in¢ ¡¤£¡ w§¡§©¬¥x|~¢ps{ym¨{¢sv¦f~w¤_z}s¢n·´ºtµ¨dƸ{p·q¤bs¬«`}i³~n|q£lr£t£`³q|³ts[²jbotvqioXklrrf]i^bKE=D6QAYq3=SG_JR=<395::6D;;@JP?UMNQ@D_^[YX``|dHC8LWUVcaZefkkbbeadc`ab`dd_`cknccddhdbgfchh£¸« ¤·µ® ¢££¦®±¬¡¡¤«x
q¡}¨¡£©¨¥
~k{~} w¢r¡¨¥§ª~~z z£xt}¦¢d¡|lhn{§}rht«tªh]
vhªj¸f\¨p`^§vu~hunm§]¨~x»k~ª[]³g\nrzxki\qjxyc`fXbAQFO7VCRo5KZZ_OZD@151;;6H?:CHU>YRY]>Db^V`Qac}jEB9N[]YefXfgnmbbe_aa__``ec^bdoq_deekecihgkiªµ§c«º²±¬¦©®°¨¬¤¡¡¤jr{z¤©£ ix{¢ ¡rhp©¢§§|¯£¢¸w£³¢¤y{ª¢q¡|
¯µ}k¡x~´££«¨|}tªZ]o{xbL~zz
cyBLY¢jr|mux±³§vns}osk¤]vHedasq~~nf`liv{debR^W]UW@ZEQhDSW\bX^ID=B8?B:IF8LEXAWR[VDFb\Z`K`m~rEC<U_bZfjVghmobfg^aa\]^ahb_ecvl^egfkdflihki°T^ ¦³¹³³©¢«©¡«¤¡¨¡woy
|r¡s¡
©|l
q¡x|£ £}µ{¥z© |§hwm~t¡sq|p®}¤¦£o^¨gu£co¥aÓ|{xrsc¢~£s¤vk³`sª²¨¼wm~¾¦©´^n}qnr¢r]¤gs¦ah¦mÔ}
pzzk|xsn©¤gaeypkgfdnuwg`cT[fQQbIWJTaWS[ej\eQFCKMJKBKE8O@QNXSYOSQafejRcwywIFEc]eZhjTihjocjg`c`\]]_hbahe|d^dgdkdjmghlh°«T\K~©¯±´°³£
© ¡¤¥¨ © {p}h}wol|¤ª
zvnw¢{£¤³¡¢¶z¬§¤®¥p¨
{¤¢r£®¯¤¡v´µµÉ¡s`©my u¡w ~oLf£pr¤{ztak~ kqd_q}tizi³µ´Æ¦s~zk«umuxizurPE}´^jvkyfjhbtupnV^TYiPSiIVMYTV]hknVgWMJBJMKHJOAQKPecjmeussy|nu{{TPNl^h[kiRjhilglfce`\]\^ibdik{_]dhcjfoleime¡¯¦f?¡³«¯¯¶¢¢ª¢¢¥¥§¦yjye yui
z¦©z}yp¡y ¥§fnxl¢d|q¥wpg¦{¤zrv¹n¢b}¡mriªku mn¦_ihu¢}`uobh e~iuocfmr¢Z_[b¡m]o{~srd¥mw¢dg§iso¢oSo _e¨T^TnmskrmpikyskoRYWWgZTmJYO]IXiisjYkVQREV\LXSaUik_wt{}p}|r{svv^QrbgbpgPjhhklnhdg_]^]`kbjivu]\cicjjslfkmc¤¦zetm§®¤©°±¦«¦¢¡¢¢{qh|st}{d|¨¢¬~si¥} ª¦¦x~¥²¯¥wy©t¥n¤¢»n}¥¯|¥zr¨ f~o«cx¨l©¢vwª¦j°kv³©kmm`~«ªv~¥v}¤ jw¬g¶tw¾¤Y¦«aurtp|uqcj~nhlSW[Vab]kM]R]J^mnv`[qY[`[ftenoqbqt`wz~yrys{{vbxdcmsdRkgholrjfia`^\bkbmlzo\\bibljwmglnb¥ª¤©ª¨§®¤«¤¥©
tzo~ttrm}{
¦¥¦
vol©ª£ u~y®£q
x~{r§q}}zx{~~v {}k
[yyrzphn~quqe^wusuoynnm
^vhxe
©}t|jpv}vmmgsy{x
[kXyinwrqpxxp]lnigV[`W\fkdVbU_Q_pxxlkvejkkv}qrtsaoubt{xuzuy
}{mldxn^Wnghukxjije\`ZciflqunZ[bkdllynhloa¸¨¦¡¢¦¤¥«£¡¬¡¦©~r|}~
{srp
{}
x}¤|§¡
wr
©
¨ ª~~¨¦woyo~¨
p}qkp}hm]sqtkvtYrn}~j]jd{
`ixz{u
gwkapqv^r¦
enwqzpfge{z[\jgnv[{ywunssf\mkkbZZ_ZYlq\_aZ_]ft~ztotckkk|}s{xtdmuhm|~vz|{zz~o{}s~ysiT\qiluougkhd]aXkhlkqrmW[enlgsyohjm`ª°¡£¡¨££~¢¥{|s}v
qor~z §¡x
z¬¡«¢¢££ª¡§§ {w§~²¦²¥k|wxe|w|yt¡~}uosw¦
}wl}zjrhatp}zwwovt]^ohn_^Z]]ThrVc\\blhu||sopdkji|nyqjpplg{rx}{m|zx|}zyNdvjrmpzekecb`[tfpfrqmU]ltmiyzqgikd¹¢¡¤¡|« }y{nxr~mk~z}«r}zª¦¢¦¥v{¥{|ª¡ª~oxruau
~
nyut¡
s|}rr{{x¦
w}ol~|nhlmg_zh}{vtvu{w\_p}nu`c[]^QgnTe[^bkivz~qlldkjhlslluoyp
ynv~
vq~{{|{`i|juhiejc`i\cuhobtmlUcqyepzzrejml·¡£{x§¥yz
|n{xs
}}kh}|~}¨p¡¢
|¨x£ £¡£~
x ~|¤ ¡¦~~ttpv`~q|q
hwqx~}r{|qxzzy¥
{
v{fr|y{qljf_~sh|uvs|sj^`svpwdcY_^RkiTdY_ahjvyqfkdlhekm~hoql~xzks~tv|z}jrnsibhlb_qVtomn`xhmWjtvcuz{rbjoy²¥¥ |v¥¡¢x{~q{tv
~xgc}y}y ~p¦¦
w ¡y~¤y
w~r£¡¢|vq}nzd|
pleuo{|w{
|{q~w
y¢ww|w`yx}txgleaijwstu}q|bcasnurmaZa^[leRcX`ahkvyqcjcmeh}lhuhlpi}ymqt|~z~|mvttmeljbcuViqn`xglbjvpfy|yq_ql
®¦¨}xªzy{}||xtyzt}d^}
t}~}¤¢s{§ s¦sk
zo£|yqzkul|~~m
xp}~dri{~sx}vw|
|¤xt}tvoa{uzq}obocd{bnovsxwstau`oluno\\_^^k^P]Xcahmt{k_jfjchwnflhjlh}{wns}t{}z}}rzxxnljh_irbhqoevgnlayik}{xpawmª £¨~w®}w}{|{vxptt{o
}|a[~szz¥}}¤
n¢¡nf
zp¢}{srukpnu{tnqu{|dplx}}tsyn}
{
¨z|~
x~qpchytup|b_pakt^pj{yxlspex]nlsmsXZ__bkZPWXecgqq~f]ihgbgqndigdihzwuo
t{u
x
|x
zw{zrxjk_phtjromqgole|cnzwqlww~¢¡¨ ¦uª¡t{v
xyrs{
krpzmvnq[X~wu ¡x
m¡
j£f
~w~||nuplmop{
isqwtxfrnu{zyvso{
z
£{uxyol^rtrppxZ^p`pj^oj}zpmmjlv`pojqmZXaabnXQTZfgcvob]kmdbfkn`ff_gkurspuxuy
ww
|{vjqc|c|nqltjholvx_qy|tut~¤§
u zrxtpr
squkomumv~mnUQ«xwsz x{¤|s
~h
g
qx{z||kvjnkll{~az~wzx|ygsls~{qyovzz}|{w}wqjlz`xpnlrtV^obr`_lnyphoffsthpkawe]Vf``rSQN\fe]yp|_\hrbbefj_hd[gp~pkqt}v|
tu~y{xs
~{yxfrj`}ookz`jntu_t}xxts
|x ±¥
wtvspo
spqojivnn}}musRMßÈÖ|puv w{s
¡~~xz~zugl¢
cqz{y
|~l{erokkyy\y{}~zzhrjs
|k}~n~|y|vxxsmgqmjtohjtnS^odpY_kqwfkjbfxropc_w``Vk_^vPNKagc]zpt\\ev`aeecafbXissmjqv}tyuv~sz~r|~vesn}e~opkZlnyysavz{vrwwy®
w~}
twpyqnomn~rdexp}mz}jhkc¤ÁÜ®ï¡slvv
£o r
£
~{uxvvn
}¢
^m{}
v
}}k}dxuinxsXz
y~
~xeri
kum~zuswusqguzbtmpbivgRaqglU_ntyard_h}prnZcrabWnY\xNMLdgb^wsm\\dy^`de
`cc^Yjrknkrw~twxw{q}~{t~shuqymzntpWqzvyqewyhvr§£
}pxy
¡|{swpsjokim|u^axw{qu{g`d|ëÚµÉÃÜsltwjq
|{
vxsup¡aj}}q~qwhvriswlZ|
}uask~~}mkx
||nqzulqlry`tin]kv`ReqifS`pvt`o`]hqsiWghbiXmV[uLKLfg_brs
i[\ey^^dg{`d_]Yknfoisx~ss~zvzs
|vw{ulwuyxtnx{|Xzqogxwcv
q
¡¢sorw}|xrsnodr~hflwx[_y{{qqjagaÕ¶¦xnqw|qj{i|{}zt{{qu
u
~ag}~~m|tkmwtsvukc
~|~o_rp{|~ypfy{}noy~umokl{~chkjYnvZRjribQbrwlbe^Zjmsb[g_dl`nU[pNHOge\gnql[[cs`\clwde]]Zklbmjtwqp{}uxx
}uy|vpwy{om|w^tmiztsgs|r vv~mv~}v}vqoljau|fbiuzZ_w|zmqedhgW^qs¼Ävq~stk{|}|u
uv}qurt{e}
r~g}{y}i}vfoxxsvslj
yj^qwz}
{~rhx
x|}nlz}wtoih}we]qcXpsSTnsibNgtxf`]\XnosYeb]jm`pOYlRDThaZknm{oZ[^lcZcovdg\]`kjclisvqn~{tuz|
v~xtsyyoo|qiyz~mm|vkjxtk
n}vjxzozsqljd`tzh_er{Zar|yfpzaee±²wJbZ¤ÙÐr{x~
olzy|xxoqt}{jy
¥o~vx
oz}oxh
xr|e}~ucprhxqou
{vxyj[p|r}
zrmprxwmn~wzehj}r`YwZYrmNXrsf`Jmvta][[Yt}roWg]fjp_oNWiR?Yg_[pjgyq\ZYkeYcpy_h]^elhfliqwom}up{v
qq{}zzujzko~t}or|{poxf¡
gphz~
|ixrklf_aoym_boy\dlzaqv_eeÕë¾2:>ry
vnl
u}
|xnv
wnlu{tfy¨}ntuy
~{xlri~xm|{xbyqdqh~mtqt
~su~so[k}tx{|xypkqx~tmjvuu\iixqYW}SZqeL[sre[Jpwo][ZY]t~thYb[genbiLWfQ=^f]]vf_tp[XTodZdpyZh^`gmgilipx}ljyn{}zu
pnw~{{h{~kt|r{sw}zx~|kl~ki{~}kuqghc[bgso_altahpzast^cd n\5Y¯µuj}vuwpl
tyx}z~rgv~}op}hwynez¥~n~u~||q{}
|i~mj{zjzvr`w~qdrgumu{
|owy|t~mWm~vswuyxrmr~|}znmimun]hftrR[{N\q\O\rodVKsxjWYYZaqt`]]`fdhhfNZhNAad[`va\umXWRtaZdnrWj^bhkgmlipw|li}}p~~{zwr{oqw{j~{nxyww}x~zm
£{vykmy}{}pqpcf^Yg_pp``hpfjouato[adiv{¾¦£È¸r
s}xtrsp{sutwyyqcwyirufwvcj|}r~sywzkxy~uhzikysizv}h`w~jjsh{iv~z~~q{v{t}aUu|rs|pwxpo~}x}|u
vhqhlrp]hctnKevL^oUTZsmbQOtxaRWX\aps[`\hedcjdP[qIDda\dq^\whUVTw^\enhVl^ajgeoohpw{niy~r{~y|v}pvrmw~p|xyztxyvo~}zw|htz|vgom_d\XeYmsa`aqllhn`siY^dmw©ÚªÇ²rxpu{zutu~wpq~m
txtl`zyfqogun[m}y}x{mus
{
muvnhwem|vmjwv|abxzhuuc~zgt{tuqz|lYUr}otxksxjt}z|w{r|sgsemmt[j_veHnoL[cXWVxmbPStvXPUX^`qo\`cmdc^nbT]rGCf_]fh^Z{bRV\u[[gkaVk_anfflqhpvxtkuvx}w{t}oqtqu~{wx|}
x|}~{~svyzwuy^~ytw{bnl[b[[aVjtc`[hopgraqfW]ck|Êι¢kmnmr
r}
{
zytyuu{jmucvwpg^|yeqjjqcXm{sw~{mpp
zy~qqo}ghrbmxrjlqw}|z]eywiuxfvgt|rin~ym|]Wp}ms|nnpvgv~~u{qzs{yqeranlsXk_x\IolMWV_TU|kaOTurQQTV^bt
h\`kjfbYnaXbpGAh]`f^]V{^OVdpZ[jh]Wg`_rfjhrgpswxntzw~yus
pp{wwuy
z|u~}~~}|xuyw~}nuydto
ztcnjY_[]]Tgse`YdrrgsbkdW[`ix¾®{·nbsht|rz{~xxswo{vejnausjb^~xyfq}hjk[Wox£
qqxtmr
}ytrohyajm`mvkgklywzw[g}|xes}nteu~pfkztltb[n{kt|zft}mpgt~w}~r{ky{ywpelam~mnVk`wVKklOROiNY|gbNUukMPTU^gvf]aphg`Wi]\khJEjZbdWYUyZNWnjY]le\Yec^tfldrgrptxp
v~x|
}usnsxzzss
y}v}{~{w|wwziv~|l
rq~oflgW][\ZSdpe_XcruivpeebW\\hporseeyjtvss
xzwtunkzpbgkgtnf^_|o{~hlwfidVWrp§||vs|r{ymzzv{}uprmgu]mh_ludgfizo{rYgvuhpxuaw
|njmzqese`lygrvz}auvikqtzpyxr|e~~~xvnceam|mkVjbqTLikPLNpH^{faMUtdJNSWajw~e]gsie_VcWbp]KKkXcbUTUsWMXudZ_k`\Zce_wgmbpisoq~utxx~
z}v~
nrt{ztq
zuu}
|~z~v{£¦y
lu|{uzo
sz
}unjheV][[ZScne[Xat{jimh_bW_[iikoglahzykttto{}vunzhjyj_enhwgeXbwi~zoioff]UXoh§vz|xuo~nqtx~wt
vjrvgho\me^ms_gajxh{m[mstjo~yw`vx
sqpyqcph[nvdps{xarpgixsqkwvtub{~wupcccm|}kkUibgTKlhPGRlEaxfbMTr]JLTYdkwze_mpid\V_UooWJShXf^XMUlTK[y_[_k]][be`zhlaoounowuz}wyzyz}qtt~yvt
}}ls{
}~{v¬zlryvtno}tjpmddX_ZZZUbjg[Z_ui^nl\aV\\kert}ij]lwvgtwrn|~~zvslzgixf]drgzwccTeogwvfhi`WVYhd§n~xzpp|fxnyzvq}~ndvsdhh]lb]oo[g^ltezi]torkq{~uuat
{wru~taplYprbqq{udrl`lzojhzwtpdtyzuqdadms~jlTi^^ULscQGWbGcvfaKTpXJKWXgkvzdempfcZX]XvfTJ\cXhXYIWeQHbxZ^`l[^\bd^ij_otxnonvyr}~uvx}tuuyzz}~jt{}~
y{~|sq®|{~fqzt}}vrom{~mzbpoae^eVYYWcfk`]]siYqn[^WZ\l{cqwvmc[msthuvqm
yywnotehte[gtfvvz_]Refjt}aci\TX^bc¥hytxlnygwl{ytrx{xhevm`fa_j`]tkYe]onbzf[x|knnpwyttdrzvoq|rawcZnoapq{seqd^mvicfxzslmts|sqa^emo}eiThYZUNy`RKZYHbtdaITmSIKZWilr{cllscaYZ[aw\SKc]XiSWHY`NGiuX^am[[_bc]
ihanxylojvxm~vuttqvvw|}~~~px}yxy~ssp¢{{yduysyvksply|pr^po`gblTZYWhcmf\\rfSrn[YXX`lvdjujj_[mtqmtttk}|wooleiqc[krdtvs\WTd`q~q\ac]SZ`\cerqtkjylnoyyzqwryzzdfug^b[ah\^whWb]phaxa[{vjjrowtstip~vrjp|mevW[jmbprzseo~[`oqb^io|lks}rpxkp`[ekm{agTgUXRQw\SPYRHcsb`GVkQHOZUkkk|emoqa[ZXYlpWROfWWiSTFZ\OIrtX_cmcXa`a^jcdmyxkoiuy{k}
|y}mqowz|t}txutpuo¢t{{fwon|pfxq{lsvsk^tnagekR][Vhbll[\qdNon]VXUgithctee]Znunpuuzk}}wscekna\nmcsxkZTVbcw||p
\c_cT[`Ybcnpsjgyneruqzkyttnz~u_fsc[^WbdYaufU_`mcaq]]~ohisqspuukl{
qrfn{oqnSZejeqsvsblvUbqk[^nd|eku|rrrjm_Ycijx^fTeUVPUnXRWTPHer_aFXjNHWTVmhd|ikwjaW\U[tdSRVhQYfTSHZ[PNxvZ^eliZb`^^nbfkyunnivv~m~{~krgt{u~r}
{ss}un¤swxn{`d|qgysymmqvgd|lcfghS__Ug`lo\^nhMim`UVSofslexde]Yqumr{xsm|w{zlbelm^`njepy~gZVX`kw{zo^b^gVY`Wcbkq|wkjvl[upjyiurmn{rXjn^Y]VbdXeqcT^bibbmZ`~kfksunmwvkh
zmqfo{lqlbX_hhosss^imSepdUbnaybou{ujolj_X`fhu]eVbVSOYfSO]OOHeo]cGZiMI_KXmd_xhn}d`U^T]t[TR_fN]bTSJ\ZQZuu\^emhXba[^qcgjwqsmgvsys{~|yntlss
z}|rstwqn~zz}~~}}~~}~~~~~~~}z{|}~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~ÎÚØØØØÚ]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDBK[ADDDDE9/0000,H
}}{{z}~||~}}}~}}~~~~~
Ûéççççê~S7¤¤¤¤¤¤£r]____aR455553?R155557':|}zzz|}{|~}}}~}}~~~~
|y{z{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}}}}~~~~~~~
~wxz{zz|||{}}~~~~~~~}xyzyz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{z{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{~~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}wsuv{||{|}}}~~}~~~~}~}~~~wurtx|||{||}}~~~~~~}~~~~yntvxrvy|}|z}|}}~~~~~~~~gxuwssvx}~|y}|}}~~~}~~aizht
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~w`kbgdn{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
don[jrl
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxz}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzoq{xy{|{xw{xuwttvuuvwpcppdkrqdhklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkiffggghhdeimsprukbcbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__ac_\_]`]^Z]`aclnookZY_[XWSNMKKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSTPMJMNPRONP^iflnkgcQPSPPNNOMJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTtsuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNOLLUdmfjmkif\SOOPQONNONOPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKKGIOU`hnhklkijhd_WONOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEDR]bfhjnlsojijlkieUJJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:;>>>KV\imlnysjjlf[QJDDEEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@:;><;;;;GJ=FYknwpkiYGDBEEDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprttsqrvyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<979;;>=:;F[nm`IA>A@CFDCCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtsurqtxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::979::78:9:;:78Vd?88<<=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==?@===?C;==>===;EY9;<>=>?@A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCDA?=>@A?@;]n@>DE??A<D[===;;=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVppqssttuyz{{|~~~~~~mLPQNOPNNOPPO><<=>??@>@@???BFD><<=@=8:;mwH8;:==A<I`<<=<8:;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}|~~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABA@YR<==IMFFvwM788:;>>Ug@;<<::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvvw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@CsyI;]y|wV<=?==>EitK:=>?==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy||}||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCE@Hrykb}]>@C@A=Is|Y:=AEABBFHC=<@DDA@?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{{{}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Fot}}uLACE@?>Y|]?CEIJIIMMKECFGGEGEEEDDCA?@>>BFJJGEEGFFJNNKJIGGHKLIGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEhs}|~y
qBDEDCWu~XGHJMLNOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHHHGFEFFFDFHGEEHHFHGHFQnnpqrvvy{{{z}}~~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJG`{w
lAAVtWHLMLMNLIGGGGDGGGGFHFHECDDFEDDHHCCCFIJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrsvwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLN[|
Vl|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD?>?DFHDEGIJIJHHHGIIJJIHFJJJJIJIJJJFILLKJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLLJU
uIIFB??@???<<<>;:<AA@><998<<=;>;9;?AB@ACCB@ABDDBCFHIHHHLMLGIJMMNMJJKKJLMSlpqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJJIe
fBB=88::9878896479;<:8567789787688;;;=@;999=<>;;=ACEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIj~T:8656766645773568:876565676778:67889;7578979876:<@GFIFIFEFOSRSSROPPRTepqsttwy{{{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=ECBf
G676468874578567699766765:9:;:;898987779:98878689;A=>>BA?AKLOQPQOOORWkqrttuwz{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B:=qz>988;<=>9::<9:;9:;:99;:9===>;;<=:=;9;;<;<<9:<8::;:999<?<=ABDIJMKIKLWorsusvx{{||{}~~}}}}~~~TFEFILNNLJJMB?:;<;89989:::;?>H~
l<;>BCEEAA@B>@B@@?==>@?>?@?@==?B?AA?A?=@@@>?A=><;:;99;?=;<==AACABCAXpqtttvz{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<=:;;==?@BR
^>DGIKJIFGGDFHGEC@@CECB@BCB?@DHECEDEEAFEFDEFD@B?<@>=?@>?>?>?>>:;=<`qrttuwzz{}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@CCFW
VHMLMKNJIKIIJJIECDFGFDCEFDBHIKHGGFGGEKIKIJKJCFCCDBAACBDCCDDCA=;=@hpsttvwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@?A>BBGGJY
PNPNLNKJLJIIHJFDFHHIEEHFFELLMIJGGHIJNMNLLNKHFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?EGG=<@@88<;<=:>@>?@CFIJQ_
rNRONLLLLJHGEIIDJHGKJHJGGGKLNLLHHIJMQNONMOKIGIJHIDIHHFFGGHGCBACUnpuwwy{xyzz||}~~~~}~}~~~~~TDAABGGB?8?@8:<8=>;=A>?ADHJLUq
_RRPMNMKJGEBGJGLJFKNKKJJLMLOPNHIKLOQQPQOOJHJJLJKFGHGEFIFEEBABB\orwxyzzyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAGKLPVy
|XVRRTROLKJDEFKONOWUQPORSRMSTOMSLPSUVRSQPLJMMMKNGGJFFHJDDEEBDCcpuyyzzz{z{zz|~}}~}}}}|}~~UFFGGGGHF>@B=?==B?BCGVNFNPPTX{
hWUkaERQQPI;;RTR`u]UVTVYYRXXRZfPUWZ]RTWQONRPPPQKLKHHJHEFIIIHIirvyxyyz{{|z{|}|}~}}}}}}~~~SHJIHGFFE??AAEACGEDELXRMTUVX[|
}al[dU:XXXSQ?@VUY[c`VYbr]]V]ZVEQYZ[Y_TYgRVVXTTVTOOMJLJIILMKOMSosvxyxwzyz{z{|}{~~}~}}}~}~~~~VJJIHGEDDBA?HMIMPKIKPTSSXZZ\\x
g;~znpXZ\[RSRVVTZZtYU}`\X]^WIV]][[_YHYXY[]XXYWRQMPQMMOSQQURassvwwvxxxz{z|}}}~}~}}}~~xy}YNKIIHFBD@A:PQQWXPPOQSTTXXYZ[n
n~fYY\YTUTWRQWUbQerXZW_hP`f[[X\gaGOZhg\[\]]WSNSPPQVVVVYZnrtwvvuxxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQORRRUSVTW_ux
}{\PUXTRTRQQLOLKfy[]TYUV]ZLTZUST^ZXWWWzkX[[\^TQQPINOWVX[Zdprvvttvxyy{{|}}}~}}}~}}~~~zxwvsu{tk~~kry^[VUSROKFCDAM^lVRSNOQOQURSRRTcdv
~ymqVIKMNKMKHJDFHEC>TdURPQNKRTQMOYRMNQSUUMQSRPOMLHCIHRTUZ\lquvusswzz{{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]][YVPLILIaltPQSNQRQR[RSRQRVTbs{|}{{
u_]KC?CCCCB?DPBC@C=CIGV@HNLG]iPHFOFDEFIGHCDHGHKGDBAD@NQMRdrtvustuz|z{{{|}}|{~}}}~~||}}vt{mh|gnqfiedb\XSQPURsWe[OONLQSQUYSUQQTROV`klrv{{xytrnstsyx~~kMG?@:;>@@??>jQKaEFHIEB?GLNGMQUIBE?><=<==?=?ACC@?<=B>JMGUnttustvxz|z}{|}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljjf`[QRZ\Y^JJPQNKLQRQTUUWQQWVPX[b]agmmlokg`nrjmlqu{z}{xz||xwxeC@@B=:BCAADB\]O{NONNKLMOOQLKLWMHG@B<977599=;;;8989?<BH?\stuvuvxz|||}||}}~~|~}}}~}xuvz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIHPQQOMPQNQRTVXSRYTNYZ[WY]^^_e`]^qvk^`gkwooljonnlfbYHFFHBAGIEEFDMRPaWRWQPSSRU[OOQWPMIDF>:96587979:365795<B=essvwwyz{}}||{|}~~~{~~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMLTTSQQUOLRSTWXTTXQLWYZVXXVXY]WXXhsk]Vaskaa_^da_^YTQNNNLIHJKIIFCQPS[WTTNQSYS\eUOSTQNKIHC?A9998978857578599Gnrtxxy{{}~}}|{}|~~~z}~|}~}~~~~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOUVXXYSUTLKTVUUUWPTUWTUR]n^RNY_[VY;DVXT[fJLORROMMNNMLJFQPUYSTOJNOUST\VRUSROMLIHHF??=:887659967675Wpptwyz{|}~}~||}|~}}y}}|~~~}||}}~}|rvqxxrvuqqnppopuvtnjddjppqrpnfedc\^RTZVWUTWTRXXYYYRUOIGOPOOMRJOPOPNNOTLMIPOSTU2=XMI@Q=caQSQPNPQPNNMQNTRPRMILJORPRRSTQROLLKLLHCBA=::876;B5566:doruxx{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqniihpVVTUXUWURWVUZYXWUQSFEAFGGHFJDHJHGEHLHKIFLMPMG/E_R>3?>joaRRQ@GUQPQPQNQOPOLJLLOPNNPQQNPOJLMMKGEEDB;=<<9=G6677Dmptvz{{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknaePSTRSTOWVVYYVQQQO@=;=?ABAC@BDDA@GHGHFFHJMLEGCORC8ENS]fSQSAGUPOQQPMMNMKLKLNOOQMOOMHLLIKKLKGFFED<AA>;@E;<89Spruy{{{}||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpknqmimcLOOMQSLTUTXWUMLKI<987;?@><=@@B=>EHGCFFIGJJ@FAA@FHEJOHPRb\QPRNSOOPLLOMKMLMON[WKMQOGIHCHJKLJFFFD?BC><BG?B?Adptw{zz{|{zzw{wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHDD=9879?B>;?B@@>ADIECGGIFIEBB?>=CBAGIDMObeQMNNWKLMKLMMMLKNNSdNJLRIIIEAHJLMNJGIFBAB@?EFEHDKnovyyy{{z|zwtxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLMIMPMPOHJD?A=999:?B?<@BBADEHKFCHIGGHCC?B??@A>DECKNRTLJIMTGIIJLJKLIJLMOPRPKGCLGCBJJLMONIJIGCCCDIJMLIYrmwyxz{{y|vrpurtxyvxjqojllnttmtu{stxronqovsnporpopstyjN`gsjt|ygosqiqhdqHKDGHHGJKIJKDGB=>=:::;AB?=BBCCHGJLJDIIFGGCC;A@B>@@BECIMPHHKGHKDHIKMHJLHIJKJM\RHHDNFADKJMMPMKMJKFGGJMNQNLbmivvw{x{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoiktgdoFKCFEGEFFGEGBC@=<=9:::AC@>BCDEIGKJLFIIGFFDB;BCC>@CCCEGLNHKNHDHEILNMHILGFGIILNKIHENIBFMLNMOMNNMKIHIORQRNRfffqosxu{z|lhjnekqlsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGJDFFECCCE@DB>@?:;;=:=>CA>ACEFJGJHKHGGGFEC@=EEB>BCCCEGHIGMPJFFGKNOKFHJFEDEIJHKIFHPKCIMLPMONOONJJHMRUTROWd`amgproryzgehhdilfqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutwljuumrvqlnlerLGEEGCBABD=BA>A=9:=?:=>@B>@BDGJFJFIHFFGECBAAFFCBCBDEEGGHFLQLIOJJLLIGHEGFDCIIHKJGKRMBNOMPOOOMNOKKKPUWVUTX_^\iaminhrsbefedihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwujsunutsqrjksMGHFHBB@DD<A@@C<89=>9?<?B@@@DFHEHFFHGFFDCECDIECFEBEGEFGGEJMKHQMJKHHIEFHIFCIJIKMKOSNDQRPQRNPMNPMLMSWVWXVX]Z]d`hbjigk_eefcgggkggkmkmlprhttursnvoqprtxqssuvuyvvtxuuwxmouorsuqqioyMHGHHBBBFE<?BBD<7:>>:>:@B>??BEFDFDDHFDECDEFGJEEJGCGHFHGECFJJGMJLKHJLFIIKHEKKLMNORTOHSUSPSOQMNQNMPWZVZYVZ]ZXa```^hec`dfhgjihjfhnllnmqpiuuxrrpupppruvpusuvu{~}xvtwvvvxplupmstnprrxNIHGICACHE<@EBD=9:>>=<<AB<?>ABFCECCHECEEFGGGIFGKHCIHGIGFDHKIGKHMKJKLHLKMKJNLONORUVOKUWSQSQRLOQPOTYZY\ZY[^^^`c^\ackb`dghr
hgjfjmnponsrjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqvotMIKHJFBEGE<@GCD@:<>@?>?BA<@>AAFCEEDIEFEGEHHFHHIKIEJHHKHFFLIHHJGLLLMLIMKMMMOLPPQUVWOKVVUSSQQLOSRQV[[]^[\^__a`ad]d`ef`ehjcssfjhglprqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrvnvJKLJLGBEDE<@FDDC;??A@@@CA?B?ACHCFEFHFIFFDIHGIHJMHHJJILJFJKHIJJGKKMMJJMLNNNPLOPRTXVMNTVTRRQPLNTSRW[^^_]]`_`aa_acebchbdijgvljigmosqpqppryvruutsmmssmqrotutrpswtuuwvuuteqskpqjrvowKMLKMGDCAD<?EEEC=AACBBCDACDAAEGCHGHHGJGDGIGHJFILHIJMKMLGKIHKKNQKRQMSMKNNOPPOTOWXX[NSQW\ZRWPNTUTTXZ_bb_da^`b^`eaacingbihhnxvlhimosrpqrrrvtsusssnksqmprotvrqquvuswywutucmtkopjqtowLNLLLGEA@D>>DEFC@CAEDDFBCEGCCIFCIJJIIKGDKJGHJIIKHJJNLNLILHJLKZfJd\KlSHON_nUks[qpbwcSPbvuhucav`Xnqbdvinzf[lt`lkT_wvijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqrqyLNJJJFC?@B?=DEFDCDCEEDFBFFGDEKEEJMMKLLGGMIGJKHKKIKKNLMMLLILML[sbdp^lmUMNfs]feqlntgpi_aYnnbppbkjjgoqtetno\ougpMJryvkb`keemxlkvmnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIHGED@BB@>CFGBFCEEFEDCHHGDEKHGLMNLMMFJNHJKJILJJJKLMNNMMJMMM[roonpplkMPQlWNibtrpamnu\YlQ\mmZqmkomxxtsip\_rkqjUuyxpc^kfbgppjjopprspqpqqrrqqrrtlmrmnnorutqtrtuutuuzvutenukpolsrryIKGHEEEBBB>@@FGBGDIEEEBFIHHEGKJGMMNLMNGLNILKIJMIJIJKOPONMKNML\hdu]lqWlNPQmUZk^klvaldsSecNmYl\tpkilxjwuhp]^rkhWbcw|oc`ggadityknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvHMGIDEDCAB=BABFDHGLHECCHKHHFJLLFNLLSRLGLLHNJHHNHJJIHNOMNLJNMJZsppoqqmlOQRnYqkgooqqomt]nXat_nopoqronusttj[]tcwxrjnzhaacfbbjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyxtukoumtontsvsHKHIBEEEA@>DDBGCHIMIFCFJLIGFKMLFOJKWRKGKJJNIHJLIKJIHJMMMMIKKKSkb[i^_icrrZ_Yjo_eeUk_c[aaQ`lh]j\niid[pfdp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrvtwrGGFIDEDFA@BFEDGBHJLHFDGKLIEFJOLIPIL[QJEHHKMIHJJJKIHIGKKKLGHKKLLLLJKMNT[\TPTLPONOOVQOOQNOQJINPQdqiTYW\[\UYZ]X]\\cfaaebcf__fkmhmtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusGCEGFFAEC@CHDFGCIKLHFDGKLHDGHPKLOKLWLIEEHIJHIKHLJHFGGIGHIEFLIJKNLIP\W^P\[`^MXYS\\b^MYZMXaRJYaZR_d\aX[ddVVX\YZX\VY\]b^daa_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCELMBDDBEIEGGFKJKHEEJJKFEHHPJMMJMSHGEAHFJIKLILJHFEIFDFGEEJHCJMKLU_Y`X`a[`TXYT^^Z_RY\P^\YN^\^SZ^c^Z]`c`Y_b[`^[TXWY^]cbcacfhekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIDBBCGHEHGHKIIIDFKKKFFIJNKNLHLNGHF>GGLIKKJLKIGEIDCDDBFJD@JLJO[cY_^a_RTRW_`\]Y^QY\MV_WKQY[PZ_aa]^ca`bbbcceZQYVU\Y]c`__cdbhomnllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQKFCGECEHIFGHHFFJGHFHKILDDKJNMLLHJJHJG?GFNJKKMKKKIGGCD@DAHIB?IJHP]aZ[d]_TQRX]\\\_ZKW\LR\YIM^QO\_accccb\dcbdcfXQUTR[WZ`_^^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMC@IFCFKJFFFHGFIGFFILJNFDKJLNJLIKJHIFBHIQMKKOMKKIHGED?ECHHAAGFET]Y^X_Y_[]UXXP]]QKJV^X^[]UY`RQ__bb``bb`cbaddbXOQQQ[R[]]]]^__dhgljnnp{{|~{
srw
|x\SKCAGFDGMRHCQJFHHHEFKJMPEFIJKNLLILLIIGDHKQOMMPLMKKHICDAEDHGBAGEDWUE\T^SV_XNTUNZZMJKT`a[_X^^a]NYb\``_bcb]abW__TPNOPXR][[\\^`bffelfoow|{{}
zo
~INFDEFGDIRbPCV^IGGHDFMJPPEIIKKNLKKLKJJGEJMQQNOPMNLNHKADACDFDCAEFBMHBKLPONLFMFGIJHGLKMOPILOPOSOLQSRUZYWYXXdWOSTPPNMOUT[XXZ]\`adecgcklpsrzy{z~{}{
}KIEEGFGDKM]LGGXLGHJHGMLQQILKLKNMUNOKKLGGKPSSNPONONOHKF`ED_LDfcEM[I^[rmOMUmYLCP`UkWgJ]XU^DMQULLSVQRTXWTXUT\UPfZhhdXSkSVVT[\[``aaab`fhfnkhrz|}~}|zr{z{
~z{LHEGFHEEKOSIJF`SHJOJIOMRQKMLLORUROOJLNGHMQ[YOPPNOPOIJQQI|YYqsXPmHqnoaVPqqsPCksmqspSo_[nX]V\XUkhU]VcZ`Y[`VVXjtuu__v_Xa[\f[_aaaa^`bgmpl`pwtx}~vxzlv~tx~|~|z~wwNIEHMNBDLLFIKEQVLKOIKRXWQNOOMQTNOQPKKNGMPS[ZTQROPPPJHZx]TxehZRTQvgtlpbnfjQrOMwmjrpsrqrpoo]ezuxqqzq~s}ku}bRh|essosr{|o}yor_``baZ``gknkblfgmw~~{xwtvzir~nt|~wx{~x|u|||ssNKF`]GAEMMHJJGJPOMMJNV^YULQSNXZMSSRNKOIQRTYWWQTPPPQKHgxlcxrm[KMUypumubnvPdeJfvqmwojfxxiWrQhzmijzz~lxzohoYvvjuup`rg|ilx|o^__ba[^bdgiidgbcdllppstsssyqrxblugry{ssuy~suzn|}yxrnNKStNCCFPPHJKJKPOOOMPZ`ZXKTWPa^RVQYRLOISTUXWWPUPONRJKrouuquqdibWnLqp^FhyWvTLiy}x`y{sna]mocRhqunmypwlvttqlm]t~zkmy|ktl|kpvux^__b^]_ddighfe^abiiijknokqnmjpacfdowxompsy~nqpj{ztsomLL[VHGEGRPILMJKPQPPPQW\XUMUYUfXRRY^SLNITTVWYWOSNNNQHRmHiwK`dvvVXlOnl{sajgvULWkh}lmlx_[pz{^`zscroxqhd|ir{]ULl`vukiu{{m~xk|p]^^b[_bddgeeebZccikkrsrwglihdg`akagsrlgmmr|kmhk{tmmkmOHJKHIHHRPLNOLKRRROSRWRVTPW[VVTTTa`PNMKTSSQUVNNLMOPJHQNPULKKSTSRTPVUQQNQQXYRNPUTXXX[ZURSW[WXWZOSUWXXR]YW]VTPYRWWWWX_[gr^[[Y\]_cZ_ccdfdccbZccffemnmueegcaf_]g`dlhfgkhpzhggkujhgilQIKKLMKJSQMQPOLVUTPTUXUYUQZ]VUTWUYXPOLMVTPNUSNOMLQPKJRQKQMKKORURQQSSIHLNOQRQQQTVRXW\WSSPQUUVSZQOSRXVTYVTYUTRUTTUWXW]Z^a]\ZZ\\`c[]bcdfdddaY`acabhhincad^_c]Zd\bma^fefmsdihkkedcfhPJKLOOLMSPNSQQMXWUTUWWWZUS\`VWVYUXSQPKOWSPNUPNQNKSPMOUSNRNMNQTPTQSTUNKMOQTTRRQVWTYZ[YSURTWWWY[TOTUXUUZUWYURRXVUW[YZ_]UX^\^]\]aa^[bbcgfddbX_ab^`hefda^_]]^ZZ_Z_g`^]]bhkagfhfd`bcaPKMLPQLOTOOSQOQZYXWXZZXYV\jdVXYZWVSTOJNVTPOTPPPNMQQPRXTQQOMOSVNWRTUUONMQSUUTTRTWVZ]\ZVWQRWXV[[WQTVVVVYTXXURRXVVZ]Y]_^V^]^`\\`___ZbbdhgddbYb`a^^fcc`b]\\\\YZ[X[a[^]\_b__bdebd__`\PMNNRQMRROSTQPU\ZZW[[\YZ[dqmhd^[YVUWQLMVSMNROQROLPSRU[USPPLPWWRWSSSXMOPRTXVUUSUYX[^][[VROUVV[[WRTWVWXVTX[TSRZWW\^Z^_`Ua\aa^`b_]`]c`cghdf`Zc`a__ed_`c[Z\[\YZXYW\Y\[`^_[^^a`^b\Y`ZQNONVQPTROUTSPW\]\X^\_W\^jqwyb\[VVXQMOVSNQQPRTRKQTTY[WUORNSXWTSURRZOPSSV[VVWTVZX]^[[^VSNTUV\\VRTVVXYSTY\USS]XZ]^\```Vb[cb^ac_\bab_cfidf^[d`a`acd_b_YZ^[\[YXYWWZZZa\][]\\Z]`W[[ZPOOOYPUURQWRTP[^_^[`\`U\]ijr}slg\UXWPORZSRQSRTUTKQWV[ZZSOSRVVVTOWRSZRTTTX]WXXSX\X^]YZ]TUNVWW^[XRUUYYYUWY\USV^Y]]`]bb^Y_[eb_dd^^cca^efidf^^da`aabd`b^XZ_[\[XXXXW[Z\`\[[\[XZ[^V^Y]POORZPZTUVVTTT^^`_^b\`U]^bkytl}lZUYUQPS\TUTUTVYWLRZW][]ROUSXWVTPXRSWSVUU[]X[YUZ^X_^Y\YRWRYXY_ZZTUVZYZWXZ\VTZ^\^`a_dc\^]]eaafd^^dc`\gdhedb_da_a`bb_`^WX^Z\\ZYYWV]Z]^ZY[\[WY\]VXW]SOPWYQ]UVYWWUX__aa`c]`T]_beeuzhXYYSVSV\XWWVVW]XOU]Z^]]TRWSWVUSTXRSVTXXX]^X][V]_X__X]VQYTYZZaY\VWX[Z[YYZ[XV]__^cbadd\b\`fadfd_`dbb[fchecfaf__aaaa`_^VU]Y[\[Y[YY][[[XXY[YZZ]_]TY]UNTZVS\TVWYVV\`abcac__V[`da_zuohY\ZUXTW[ZY\ZXY`WPV^\`a\TTXPUWVTVWRSUWZZ\_^Z_\V__Z]^Y^VSYWYZ]bZ^VW[\[\[[Z[YZ__``dbcdebdZbfcgfe^ab`c^bcidcg_g^bbcaa`^_XT[ZZ[[X[XX\[Z[WWYXW\[\`]V]]SPVZVVZUXUXWX]_badad`^YYadb`lfh^\][VWXY\\\_[Y[bVTX^]ac\RVYPWVWWWVTVTX\\^``]`\Wa^[^\[^XVXX[[_`\_XY]\]^_\[]X[`a^`dcdeefbYceeigd^ca`ec]eidei_f^cbcaa`__[XY[YZZXYXW[[Z[WXZTY]\Z`\U^bNSWYVWZX[\XWY^`badada]^Yacb_a``^\\\WW[[]]__\Z]cXZX]`cd_RXYPWWXYYWVWV]]^`a`_b^Ya]]^Y]^YXVW[\`^]_ZZ^]^^a\[[Z\_b^bdcefefbZdfgjgc_c_afeZiicfice^bbca``_]]ZW[YYXXZXWZ[ZYWXVU[]]]``bbxLXW\YW\[\]ZW\]_`bdbba]`Xbcbacab][\[XW[\_]`_][`d\\XZbec`R\ZOXXZ[[ZWZY`]`bb`ac_\b]_][^^YYUX]^_`__\[^^`bc\\W\^`bbcedfdefd\efhjgcab\dg`\iibhifd`baca_`_]][Y\YXWXYXW\[ZWWXOXZ]acffrkJYW]ZZ_\[^\X][^_acbaa]b[bdb`bbb\[[ZWXiq`\`_]\ac_^YYcedaS_ZRYX\]][Z[[c`bbc`bda`c^`\]^_ZXV[_^]aa_^[`abeb_]T\``cddfegeffe^efhigdd`[eg^ahhbhhfc`b`cb___]]\Z[YXXXVZV\ZZVVUMXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{{{{|{{{{{{{{{{||||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvvvvvvvvvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{||||||||||{{{{{{{{{{||||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||upooooooy~}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½E>????=u~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}upnoooony~y1333332j{éääääèÊ:233330s}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vuuuuuutvwwwwwwxyyyzyzxopppppprrrrrrrwzyyzzz~|||||||vuuuuuuz}}}||||}}}}}}}|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvvvvywvvz{x{xwvwzxzzy}zyyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{|||||||{{{{{{{{{{{{{{|||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwwx}y}}z|{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwww|z}}y|zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z{xwww|{|{z|{wxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzx{z}|{}{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyxyxzzy{yxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyxyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{|||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|}}}|||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrsuuttssrrrrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqsttstrqppponnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqrsssssro~{oonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrrrsurrrps{opoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpqqqt|pro vpppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqrp¡ups vppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqo±n~¤ vpppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqrp³©|¯£wpqqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrrp±§«¨¯¤trqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrsssssssu¢¢³¥£zssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz~|~~|vvwwvuxzxxxxxwxx¥¥¤£zyzyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~}|{|}¢{{yxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}}~}~¦©¤ }}}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~±¨©¢¡¡«£~~~~~~
~~}~~~}}}~~~~~~§®¨£ ¡¥©¤|~~~~
|||{|}||~~~~~~~~ª®¤¤¡ ¡¡¡©ª|}||}}~¦£ ¡ ¡
}||~~
}}}
~~
}}~~
~~~~
~~}||
~}}}}{
~~}}
¡
}~
~}}
~}~~~~
~}~
~
~~
~{z
~}}}}~}|{|
~}~~~~~~~}~}}}
}|}~~~}|}}|y|
}}}~~}}}}{zz~~
~~~~~}}}~~}}}}~}|zzz~~}~}}~
|}}~}}~}~}~}}~~}}}|{{{zzzz~~}~~~~~~~}|~~~~~
~|~}~~~}~~~}}}|{{|zzyyy{~~~~|~~~~}|~~~~~~~~~~}}}}
~~}}~~~~}}}}}|||{zyyyx}~~~~~~~~~}~}}{|~~
~}}}~~}}}}}}}|}{zyyyyy~~||~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
}}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
~}|||}}||}}}}}}}}}}||{z|xyz{|~}~~{||}
~
~~
~}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}}|~||}
~{z|
~~}~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}}|}~}~~||~}{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{{z|~|~~~}~~~~}|}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{||||{|||zzy{|z}
~~~
~~~
~~}}~~}}}}~{|}}~
{z{ywz}
~~~}}}||}~}||}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}|~}~~~}|||}~{{}w~vx~}|}}}~~z}}|~~~~~~~~~~~}~~}|~|~}~|{|||z{z}~|||}||~~|{{}~}~~}{{{}|{{{{~~}||~~~y}~v{vx}|||{}}~}}~~}~~~~|}~}}}{{}}|z||~}|}|||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~}||}}|}}}}{|~~~~~|}}|||{~~{|{||||}|}|~|}|{{{|y{|{{}z}~~
|{zzy{}z|~~y|yxxt|||||||~~~~}~|z|}}~}}~~}}~{{}~~}}|}}}}}}|}|}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~~}~}}}|~}|}|}}}~}}~~|{{{||}|{{{{yzzxy{~
~~{zy{}}x|zr}{{}||~~}}
}~~|~~}|}}~}}|~|}}|}}~~}~}}}{|}~||{|}zzzyyy{{~~
~~~z{y}}zzz}q~z{}}}}}zx
~}~~}~}~~~}~}}
}~}~~}}}|~~~}}}}|}||{|}{{{zzz{{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv}
~~}~~}~~~}~~|}}|~~~~}|}}{}}}|||||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||{|{|}
~~~~~~~~~z{z}}uqz|zqz~}yxtt
~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}~~~~~~}}|}}~~~~~~~}}~~
~~~}{z{z|{z
~~}~~~~}~}}z{|
{{syz|pwuvwyutz
}}}~}~~}~|}}~~|{{z|{|~~}~~}}}~}}{{zx|vyy{qtxwvxury
~|}}~}~~}|~~~~}}z{{|||~}}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{{||||}}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~
}}}|{||yz{z~y{yx~{|{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst}~}~}~|~}~~}~}~~~~~}||||zyvyyzyvyv~|{{{~}{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}}|~||~~~}~~~~~~~~~}~~~~~~|}||{|uyyxxxyw{|{{{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~{~}~~}}}~~~~~}}~~~|~~~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~||~~~}}|~~~}|~~|}~}~~~
~}}{{||yw|ywxwwx{{{{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqsoxwq{
~~}|~}}~~}}|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{||{zzzzzzxsvupprowvr{
}}~}~~~~|~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~~}~zz|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyytuuooqpwst}
~~~|~~}~~}}~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|z|}{|}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z|||yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}|||xxuxxy{||}|{|||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|{}|{}xwvyyz|}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~}}}|}z}{yvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{~
~||}|x|yzyz|}|{||}}}||~{{{zzzupxwyvu|uv|
~
{}~}y|zzz}||}z||}}|z{~~~}}|}}|vrvxxvtvu}
}
~
{||}zz|}}||z|~}}}}~~~~~|}}~~}||xvvw
~
}}||{||}}~~~}~||}}}~~~}}~~~}}}~}}~~|}
~
}}}||||~}}{|}}}}}~~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~
}uz
}y|~{
}~}~}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqspurstv{}uvy
hzrss|r}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyyrpvxqvtturstvinrotvnulwm{snym}rsvsvmnwlpylu}|~}}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}~{~|~~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyrioyxpkyszozwvvp~~~z~}|}~}}~~~~~
xyrz{pp
x
xyks~y{krz|mzyyt}vnoot|uwqy}}m~uo
zrr{|upozks|nv~~}}z}{|}}~}~~}~}~|}~~
}w}~{|{~{||}~}|~}~~~~~~~}}}~|{|~||
}{{|~{||}~||~}~}~~}}|}~~~~~||}~{|||{{~
~|{}~{|{~~}||~}~~}~}}~~|}||~~|}|||}|||~z{{|~
{{~}|||~}|||}}|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}}|||~}|}}|~{||{||}}{{{}|{~}{|}}|}}~}|zz{{||
zz
~|~||}}|}}|}{{{z{|||{{{~{{}{z{~||||}~}{z|z||
|
~~~~||}}{}}|}zz{y{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{}}|}yzzy{}}zz{{}|}||zz}||}|~~{{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yz{{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|{{{{|}}}|~}|||~|{
~}~{
~|~}}~~~~~}}{|{zyzzyz{|yzz{{{|z{{{|}~}}}}||}}|
~}~~
}~~~~{||}}~}~~}}~{~{{zy{zyzz{yzzz{{|z||||~~}|}||}~
~~}|}~~
~}}~~|~~|~||~~|~}}|||{{zzzzy{yzzyzzz{|y{}{{~}~}}}
~}~~~~}}~~~~~
~~|}~}|~}{~|}}}~}|||}{{zyzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<C:;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÔÓÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937676=;>:=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<:<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA>;A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËÊÊÊËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÔÔÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9>CE?<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÐÑÐÐÐÐÐÑÑÑÑÑÑÑÍÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ÕÕÕÕÕÕÕÕÕÕÕÕÕÕØÛÜÝÜÜÜÜÝÜÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÜÜ×ÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILN@99:4;A<7=9AC=@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌͲâÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¸ºÑÔÔÔÔÔÔÔÔÔÔÔÔØ®|½æáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVM<::77>C>8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÎnPSSSSSTTTTTSL óëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¢¦ÎÓÒÒÒÒÒÒÒÒÒÒÒÙ;DDDDDDCCCDDCFSSSSSSSSSSSSSKªòëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;?C>6:7>?;<B@8<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÎqTXWWWXXXXXXWP¡ñééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¤§ÍÓÒÒÒÒÒÒÒÑÑÑÒÙ@HIIIIIIHHHHGJWWWWWWWWWWWWWO«ñêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<<<<>::;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÎx^a````aaaa``Z¤îççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©©¬ÎÓÒÒÒÒÒÒÒÒÑÒÒÙMTTTTTTTTTTUTV`bbbbbbbbbbbb[¯ïééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9;:=<;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÇÅÅÅÅÅÅÅÅÅÅÅÅÄËÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÎÏÎÏÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÒÕÕÕÕÕÕÕÕÕÔÔÔÕÕÐËËÊÊÊÊÊËËÊËËËËÍÍÍÍÍÍÍÍÍÍÍÍÍÍÔØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<7@A<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÏÏÏÏÏÏÏÏÏÏÏÓÏÏÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÓÔÐÏÎÒÔÏÎÎÓÓÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÔÔÔÔÔÕ×××××××××××ØØ×ØØØØØÙÙÙÙÙÙÙÙÙØ×ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?89:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎЦÅÑÒ¨ ÐÏѤ¡ÐÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<=B>BB@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÒª¬Î³£§Ö¯¡©ÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?><7:>9?D>@98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÐÉ
¥«¡ÀÈÐÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<96?B?B:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏѤ°½¡´¢°²ÓÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8E@?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÏÐÕ¹¹¯³ªÕÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<==964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÏÐÑ¢ x¤ÕÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:<?>=<9@<<::9?@==<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÐÕ§¤¥¬¨y©
¤ÕÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAA8;?<=;<<7558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÒÀ¢Ì¶µ¯¦½¦¯ÖÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF?HHGE@<<>><==<756:969;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÓÔ¤ ¹À£¥§»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@C;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÈƦ½¨£«¤Ð«¤ÑÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ Ôʨɷ×¼ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<<?GEGKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÔ¯°³ÐÕÇÃÕÑÕÅÄÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÔÖÖÖÒÒÔÕÓÓÓÔÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ>>786967899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EIKAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDI;AA;<886586987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?:8776=?@@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@AB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEEC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELBA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<<DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAD?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsnupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸¸·······¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨§¨¨§¨©©ª§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨¨§¨¨§¥¤¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§¦¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢£¢¡ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡¤¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=6789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥£¢¡¡¡¡¢£¥§¦¦§¬«§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¦¦§§§§¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥£¢¥¦¦¥¦§¦¦ ¡ ¢ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB?DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¤¥¨§¦¢¡©¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;<;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¦¦¥¥¦§¦¥¤¥¦¦¥£ ¡¡§y¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡¡¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢¤¥¤«°£¤¤£¢¡¡¢a¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::78:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢£ª°«¢£¢¡¡¦s_¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¨¥¡ ]d¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¢¢¢¡¡ ¨¬¤Xf ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>99;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ¡ £¤o¤¥ybf ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9<<>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢§y¤ xkf¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:<>9?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¢~ujg ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq ª}qhh£¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢pbh¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ |z£ke ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡©gnªhl ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¦t_eWr{z¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡ ¢tRMoxIYpw
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v§S9@tqgE:Uo
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VQQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{¨yNhTtweOUC_w~
§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
~~ _ub§]{Qk}
¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
}c¹Ô½º©·t|iY ¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~ÏÄÕ°_qTz¨®²¯°µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWMO_^\NUUbQDTM;?9<895875795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
¡¡£¡nº¤¸Ñ±¨®l³§Ut ¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUJTOOJDPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ªª©§¢¥¨©«©©°£t~±¼³«]Älo¢¡¤¤§¤©«®¬¥¤¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdWOYKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®««¬¤¡¢¥©§¨ª¯v{§zjmzo£¨§ ¢¡®¬«ª§®¨¥¤©©ª©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_VZNRNPOSe\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨§¦¨©§©©¤¨¦¤¥£¡¡«|[i~{roksq{{¢¢ ¡¡¡¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOXO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤ ¢ £§¡¦§§¢¬§}lS[woqvkgdjfnx ¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvxb_\UYQUW[c_s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?B?:8:>?C@DA:;>=@?CCEC9<¡¤©¥©§¨¬¦¢¡¤¦£¤±®²§¦¬£§ £¢¯««¬¨¨«¯©¨ª¨¢ ¡§©®´·¶¹¶®jcOVnkkshbdb[`fov£¥¡¡¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\V\hdocmjib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£ £ªª©´ÂÆÆÈÇ¿³¦ub`JOoqmtg`ggX][`glou~¤¡¡¤¢§ £ ¡¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxjb[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>BE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ «²ÀØáÞÕÆ·ª|gb_FRjnqxh`biY[^[\]aba`f|¡½½¨¤¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__amhvlphiibZSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°²´µ¶¿ÉÕÖÇue`c\AQlhuvmbcdZYZ[XY[YWgµÀ¿¶®³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YTai`fsotitdidb[LK>:9898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÄÇÃù½¾ÁÈÐÍf]YW\UBJqhmgrga_X[WYWTSb¼Â¸·»°µ¶¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`b_^kcbnxuvnm[bRV\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAA;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅÆ»ÅÁÅÅÁÁÀ½fVUWRHDtkb`ogY[Y][^XcºÅ¾¥¥±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|~ifhaklgnvqruqg^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÄ¿ÃÃÆÆÁ±Çʶ
^VTOGbhVU]`a]b±Á¹®²§«¨¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|~tklndomiqxnyiia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄŵÀ¶µÉÏ£kUUQS_©¥QV[^^fÀ·¦«³µ®¥¤£§¤ ¥ª´±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyy{vnkihuZfrxsyff^d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÃÄž·½Ãʺ}UTTLMTWWh»´±¬¸µ²¬©£¡©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuuefijh]jonyxcba`^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÎÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈÇ¿ÅÇÃÇÂXQK°IOUh Á½¿¹¼º¼º¼¬¦©»º¹·¿²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqocagvhiitmyl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÌÐÍÇÌÉÂÂÇÂËËÈÇÌÉÍÅÅÄÃÅÇɧtMz²GNxÌÍÆÄÁÄÇÁ¼¾´±°°Â¾¾ÁÆ¿¾¸¶Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`kjwlieuntc]bTWUSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÃÿ¿¾ÄËÈÊËɼ¼ÈÇÉÍÈÃÈÉÉÅÅÁÁÀÀÆËÃd}dKÉÉËÐŶ¿¿ÀÀº»½µ³³À¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrpfegcjdbjmno^Y]VVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ãº¸¹¼¾ÁÇÁÆ»¹ÈÈÃÅÄÀÃÁÁÀÄÁ½¼ÁÀÀÄPIsÉÎÄÈÐÁ¯½½¸¹»»¾·´±¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbacccjbgc[ZZ]YQOE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹¾ºº´À¸µ·²®º»·À·¼ÊÏÁ»¿À¼»Ä½ºÀÄ¿½¼¸»¿ÅyI ÍÄ¿¿É¿°Á¿º·»¾¹µ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qdabchjggiei^VVTYOSLF8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ¹¿»ÁÕ¼¾»ÃµºÇ·¶¹»¼¸¹µºÄÊM¥ÈÀ¿»Á¾¹Æ½Â¿¼Å¸¶·´¸¶¶»»¹¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zxqmeefpjekhXYOKKKRJLHD9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹º»¿¼ÐÅy˽Ƿ¹¸¶´·¹³µ²»ÅÊP¤É¿¿¾½¼¿ÈÃÅžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksfbn`\THKKDJCCG>:;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼»À·ª¤®°¸»²½¾»Ä¶µ¸µ·¿¾Ä¼ÂÄØ®v¾ÈÏÂÀ¸®µµ»½·¹±¾ÃÇQ¢Îÿ¾½¼ÇÌÇÇÄǽµµ¶Á½»»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qflintnwcgb\cQKUHEECGB<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£°¹½¼²¼¾¼Å¸±¸¹¼ÆÉÊÂÇÉÑsw±ÑÑÌÊĵº¿ÄȾ¾´¿ÀÃUÏƾÁ¼¿ÃÌÊÇÅÆÀ¹½¼Ä¿¿¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltlln_c^abNHN?E@?DC;;::;:8;<:9<>::>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´»Åк¾¼Ä¾·¼À¿ÉÏÇÈÊÊÂuw¨ÌÌËÍÊÆÂÃËÎÁ¼¸½º»]ÌÆÄÀÀ¿ÄÀÊÉÃÃÃùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmx|`qc[^__TI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼·»ºÛ¾¶¾À¾¾º¦ª³·ÄÀ¦{y|ÄÆËÈÁÃÀÀÉÊÁ¿»º²®zlzÇÆÅÄ¿ÀÁ¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsxthp]\_\ZQEEDMIAD=H;;59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯··²µ³·¹¼»¶»»Å¶m¯Î½¶¹À¼ª}nhnmtuz¾¿ÆÀ¹À¼¾ÅĽ½¸±± {q¼ÈÃü½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸··½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|wlu{pni\__YSPAFIGK@ECH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹Àͱu´½µµÁ¤iZ^`NS[\pvz
¤¸·Âº³»·»½¿º»»®¢¯ÅÃþ¼¿»»¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ°µ´´½º¾ºº»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦{zsvvwnqa_f][UJ=??GF=GCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Âɦw¢°µjfgVY_IIMPTo{©°·¾¹²µ²¼¹¼¶¹¾²°©ÇÇÃÀ½¿¹³®²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtwrl_ca\^OIB?=IDFMD@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·¿Æ¨{v¡_SCYUHbjUOEJe¥¯¯¶ºµ´²¬¼¹¸µ¸Á½¡±°¤£z¿È¿¹ºµ®¥¬³±¦°¨ ¥¶µÂ·¶´¥¨ª¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´¶¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wp|ovrnc]fY]]SONA>JB@KJ@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸¸¿³ynNK@eYBOxhMC^
±µ³µ²´¯¬»º¸¶¹¿Åµ¿®n¬¾¸µ²±¤¦§¤¥©®¹¬««¥¨¤«®¯§°«¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmuil][jT][PNHDGMBFNF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³·¶{XFAOXIJYxcAU£¹³´²°±°¹¸¶»·º¾°µ®¯~¬°©««£¨¡ ¨®¤£¤ ¢¦¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhutneUacW]QOMH@IRDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²¼©hM?SyqOIILhZEU°º±¬³¯®¬¶¶²´µ®©¥§¨ ¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¥¦¨¤¢££«¬³®©®®®§ª¨¬¡ª¨««¦¢£¦¢ ¥¢¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦¡x|vzcwln]QiTPNGPMLCPQ@>;>49:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬¨½Áª¥¼fDS~PXIKaIWbee¯µª²´®ª«¯°²³¥ ¢ £¤¨¢ª £¥¨ ¡¢£¨¨§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ £ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£~|uv}nk{dhVRdMJHGOSNKNH<E@<2?859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡© «Æ¿ÊNAvnOmJLdfvta]bt²¯®³µª¦¬«¢¢¢¤¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¢¥¢¯¨®²«¥ªª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}wy|eyy`bSU`HIJKSTISQM9?B67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¤ÇÆVSJf£Yf}or[Rkc\gb`m´°°¸¬¦¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§ £±®²±´ª²®£¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvshle[S[YMQJOOVMSMB7>C78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢ª£yUiqwuocwvXWb`di[ZWh®¬¯§¢ ¡£¢¥¡¤¤¨¨¬©¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½¶¾°¬±®©ª´±°¨«¨³¶¸³¸²´¤ ¥ ¬¡¡¢¡ ¥¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xvjwu^m[R`HRUHFUWJCMG=KH8F<77;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¡ £op`cWK[RZLLQYRHONH¬ª©¤¦ ¨¥±ª§®£«®¶°´²±®¶¸½¿ºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«®±¹¸¼¯³°µÂ¼·¾³³µ¢¬¢©¨²©«¨§¨ª§ § ¨¨¥¤ª¢¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vrmiwmhm\X[CWNJGMGCFM<>L>4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·¤°¦£bW^e`WMQG=?@CD?>BRx©©ª¥¢£
«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶º»ÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸³»ÆĽü·³ª³ª³´¯³®ª¯£¬¨¶±£°¦ £°±®°¤¥¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¥¦¢¤{trkkurqhV\QFUHDJPI?EA4FH95<>7;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ |_^e`PFE;B>F<>96N~ª²§££¢ ¥«¥xm ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÇÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÓǾ¿À¾ÇÆ·ÃÊÉÃÁƾºµº»µ»·°¶²ªº²®»¸¿»º«¸«ª¸»µ¼®®¹£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢}zqkcioxkeY[FKLEDTLDCE7:?:549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡}riaWNE>IY|oaA=\®¬ wrqmp¦®´¹Å»ÍÇË¿ÂÌÍÍÌÇÉÑÌÌÌÇÉÅÅÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÍÔÐÓÓÌÊÂÅÆÆÊÈÏÀÉÑÌÇÆÈżÃÁ¾¿¿¶¾³¿ÀÃÃÇÅÇį¿¹²¸¼Äº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZZCNLDFPIDC@55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>9;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £if\TID@?J
¤ ²£yqroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÑ×ÍÆÇÉÌÃÅÊÏÊÓ×Ò×ÒÕÖÓÔÈÌÇÌÍÊÓÍÎÓÍÅÉÊÊÁÇÌÇÉÉƿó³ÈÅËËËÏÇÊ¿¾¿½ÁÆÅÍÌÉÉÀÃÀ®¯³¨¢ª£¦©¬¤¥¦
zruvgcgvjdVWQDNF@JQB>B<:22A<E<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡aSLJDC?CS°Ò½²¯¦ ¤¡}xpkebhroq{
upnqtp
³Ã¾ÅÑÐ×ÖÖÒÖÎÔÖ×ÔÓÑÓÔÔÓÏÑÃÐÓÖØÕÖÒËÉÎÑËÆÍÑÊÒÕÖÙÖ×Ó×ØÎÒÊÏÑÌÏÐÌÓÐÀÈÇÊÄÌÌÌÎÏÅÇȶ¿ÊÀÒÍÌÏÆÊÈ¿ÄÃÈÎÍÐÑÏÍÊÈ͸·»¨¥«§£ª¥©¨¨|xsvpc`erb]R\IJGAEIJ>;A8=5586;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¤¥ ¢¡YI@ADAFQv²¯§ wica__`_^__]alusppolrquÄÈÇÔÖ×××ÓÖÐÕÔÚÔÔÎÏÕÔÔÑÑÌÐÎÔ×ÖÓÕÐÏÒÓÑÉÓÑÈÐØ×ØÑ×Ñ×ÙÔÕÌÏÏÊÍÒËÎÑÀÆÃÈÆÏÎÑÑÒÈÌÍÀËÌÆÓÏÌÎÈÄËÇÇÉÌÊÔÔÑÕÏÒÌÓ¹ű¥¨µ®§¨«¥²¨°³¬
|zqstmacim_VP_JJCFCRM@<>43:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><?@=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¥®·¨«·×ÔÕÙÙÑÎп¼Ìɶ¾®¦ª¨¡£«eC8=>DXª¨}pecb__a_^a`_``_`emppnkorvwÌÁÓÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÑÊÏÌÓÖÒÑÖÍÏÕÕÑÅÑÔËÐÔÕÖÎÒÐØØ×ØËÈÎÄÉÏÌÊÌÀÊÀÈÊÎÎÐËÐÎÎÌÏÏÈÌÐÐËÎÊÃÊÇÉÍËÌÒÓÍÓÒÑÐÐʽȹ°®»¹µ«¶°¨¸³¾»±
zvopokaenpaW\ZIFFDMXE;@=33<<87855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÁ±©¬©¤±yHFB;W¡k^^^adb``aa``a^__^\bmroostvvy¤¿ÌÕÑÖÔÓØÖÎÎÓËÎÎÅÎÊÒÒÏÇÎÍÎÔÌÎÒÍË×ÖÐÌÑÔËÌÐÒÓÊÎÑÕÒÕÕÊÀÊÂÅÍÂÈÊÃÌÄÆÉÊËÏËÎÍÐÎÓÌÆÉÏÍÈÇËÅÇÁÆÊÌÍÏÑÇÐÏÍÎÌÐÅÇÁ¸¹½Ãýø²²¾±»Ãõª¥¡yqrkmg``qhYXhVMGLIPQB;C>;68:8::57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±ÇøÊÕÖÙÚÛØÌÌÏÈÖÕĵ¯´¨xlpqy|eabb`]^aca``_`aa`_][]grrprsqmry¥ÇÓÏËÐÐÓÔÊÅÉÉÆÆ¿ÃÅÏÎÇÅÇÍÊÒÈËÎÍÆÑÒÐÎÌÔÊÇËÎÏÇÇÏÒËÐÏƺĿÆʽÂÇÉÎÅÃÇÀÇÍÈÄÌËÌÏÈÄÄÐÈÆÂÆÈÄ¿ÁÇÌËËÎÂËÌÉÇËÐÄÅÇ»ÇÃÈÉÂÏÁ½¼¿°ÁÉƹ½ª°²§¥¢£xotdk`^fqa[W`GHHGIMTG?J=64355==48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼¹ÌÌÆÐÕÕØÚÛØÐÉÏÏÑÓÈ·»»£¶}h
¤«
}~s_[^^^`^`cdc_]]^_``_[Z\`lrqookloo}¹ÑÈÉÊÏËÍĺÀû»ºº¾ÉÆÂÃÀÃÈÊÉÈÊÈÁÅÌÆÈÊÍÉÄÂËÉÁÁËÐÅËÈ¿¹Â»ÆǾÀÆÏËÄÀûÉÇÉ»ÉÇÅÊÀ¾ÂËÆÅľƽ¼ÁÃÅÌÅżÀÉÃÅÇÒÅÁÉ¿ÊÉÆÈÆÑÃÃÆïÄËÇÃÊ·¿¼º´©¬¤¥¬£¡¦£ |wstfiZanmZ[XRDLFBGELDFS@54335?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÃ¾±¯µl^z|¡z
uxurp_[[]``bcdded`\\]]_^`[YZ\borokikposǽÊÅËÀÆ°¶º²²³²±Â¼¼¼º¸ÁÁÁľ½¹½¿¹ÄÊÅƽÆÀ¸»ÃÉ¿ÁÉ»·»ºÆÿ¼ÁÎÃƾ¾µÁ½Ã»½Æ»Ãº´¼ÆÄ·¿¶¶¾¿»ÌüµºÈº¿¾ËÃÁÆÂÅÉÇÉÆÐÆÂÌȲÇÉÃÎÌÀÅÿ½²·°²§¨¨¹°¥°ª¬zvwjdg`hocV^YJFJFHKAEBFJ@9:658854;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÅÂÄÈÎÒÊÊÉÆÍÍÎÑÈÐÅÕÔÖ×ÍÊÎÅÉÅÇÁ¹Å½«®¥_dux~{ttc\\]^``bcbbdeb]\[\^\^]Z[\^hsqmggnory½ÌÀúÁ¸°±§ª¬§¸´¶´³³´»¶½±·°µ¯²»Â¼Áļ¿»µ²º¾À¸È¹´»·Á½¸½ÇÁļµ¯²¶º¿´Å·»µ«¸½¾À½±º¶°·º³Æ¼·¯»¿µ·µÅ¼¾ÃÅÀÄÅÆÇËÅÀÆÆ»ÇËÀÏÉÇÃÆÁ÷ý½¶¹¾Ç¿¬µ»µ·¶ytxggebkn]V^`FKHHJFBDAEE?<:566633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐÌÍÈÉÈÊÈÊÄÏÍÒÏÍÅÇÁÆÀ¿º·É¶ª°[ho
zx~vw|sh]]]]_`_`da^cec__\[^\]^Z[[]_lpnifjmnr|¤ÇÀ¸¸µ°«¬§¢©§ª¬³ª¬ª´¶±³©®§¬³»º¶Ã¹ºº±«µ¹»´Âº°À±¾¼»¶¼È¹Ã¶ª¨°²À¶¸½°±§±³´»¼«®µ¦®¶®»²±ª¹°®»®»¸»ÀÀ¾ºÃ¿ÆÃÅÀ¼ÆÁÇ˸ÅÇÅ¿ÇÃúÄÆ»ÆÉÌ˳¹Â½»³swvki`blhXWW[ALKMJEAC?FA:9:996854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÄÐÇÍÁÃÆ¿ÄÄÃÃÊÂÉÊ¿À¼Âº³µµÃ®ª°[j{x}
z{wn^]\\]_`__dcbcdb`_]Z[ZZ]ZZYZ\enohfhiknrº°µ®¥¥§§ ¤ ¥«¤¨¢«ª¬«°£¦ª´¶±½¹¯·°¨®¸´³¼¸´½¯¸¹µ²¼Á²À®¥¨£«±²³¨½ª«¨«¬µ³¥¨®¡¤¯©²¦¨¨®¥¨·¬±²·ºº»²¼¾¾¾Ä¿µÁÁÇÈ·¾ÀÄ·Äÿ»¿Ä¾ÄÈÌÊ¿¿ÃÀÀ©stsji\aocWVXPHYRSKFFE>?@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃǹ¹ËÁ˾»É¶½Ã¾ºÊ·ÁÃÁ´¶¼¶±¯µ»¨«dmz}~xt~|swe_]\\^_`^_ccab``_^]\ZXY[[YXZ\_fkfdgehjor
ª¥¬¥¡¤¤¡£©££¥¦§¦ ¤¦¬²°¶·§±¨ª´«´º±¶¶®¶¹²°ºº±·¥ ¤¦±¨«¨¹ª¤§§¨§² §¦¤¦¬§£ ¡±¬²´³´°µ¼¶»ÁÀ²»¾ÃÁ±¹¹Â³Á¾Àµ¸¼½¾¼ÂÇÅÃÄ¿ÀÄ xplbf`ko`UY_HNgOTGFKF<=@=:;;825536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;>97776788666;::;9:;<859<:>>@;È´¶½¸ºÀº½¶ ¡¦º¶«³³»³ÄÏÉËÃƸ·ÇÀÌ¿¸É·»Å¸³Ä¸³¿À¬µ¼²¬¥¯³¡£ir
|xusomjiipi_`]\\\^__acb````]\[\\XYXXXVX[^_dcbegggkmo©¡¢¡¢§ ¤¥¢§£ «°±µ¤©ªª¬¬¤´¸·°¬³¶¯³µ¯°ª£¢²¥¦©¸¢¦¦ ¨« ¥£¯©«¨ª«°²¸¯¸¹º°¶¼»º«³²¹³½´¶±±¶µ¿¶¾À¾Ã»º½zsk_e^ddXTW]IW\KOGJJGA<??@;?<04535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÅÏÈÈÀÆ»»ÃÃϾ¹Ç¸·¾·²Â´±»»¬¹º±¢©«§m~
xrmomkb^aff]]^]]]\]_aabccba_\[[ZZYXXWWWXXXZ^bddeffhikr§¡¢¡¨¥§¢¥ ¡¯®®¯²¡¥£®«§¢µ°²²¬©¯³§º³¦¶ ¢£¡£¢ª¶«££¦¥¦£ ¡«§££¦«²³ªµ°²«³¹´¯ª¯²²³·³®©®²¸±º¶º½À¸³±
yuf_f^[YVSZUK[QLIEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ¸½¿¶¾¼¿³¥£¥±Âµ¶½´¸ÁÌÈƿŶÁÀÇηÀĽ³¹¹³¿¶±¹»²´¯¤ª xxoqtqhechdc\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWVWadecdeddhjv ¡ ¡©¤©«§¯°«£¤¸ª¡ ®¨¶ª§§±¤¸°¤· £ª§¡¬¹¯¢¡¤¢ ¡©©¤¢£ªª±¨´¬ª§³°¥ª®³±°°¯¯§¨§²®±´¯¼´º¸®£zve_aVYXSRSKM^LPLGHLKE=@>=B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾·½®§§¢ª»À½À¹®´¸ÁÌÇÅÂýŸÈ̲ÁÂÁ®¼»µ»¼µ¹¹°¯°ª¡©|wqilrtphhedfa\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[bcbbcbbcfi §¦¤¦§ ¦ ª¯¦¢£·¨¡¡¢¨³¢¥¨¥°¥±®¬µ¡©¡¢±±££¡§§¢¢¤¥¥«¤¥°§¥£««¦¨®¯¯«¨ªª³¥¦«¯´±®¼¶±¯¯ zwrea\[]XNLQHRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847763321./2556;:8;7876<;:;;A8x»»±µ½°»±·¬¥¦¬·»¼Áź±¹µÄÉÉÀÃÆÅǶÅijÁ¿Å«··½¶½º»µ²«¨£t~vncafihfgifil`]\[ZZZZ\]\[\^_\ZZ[YYZ[WUXWTTVURTRU``_`a_aacdi¤ ¥¢¦¥¥£¤£ª«¥¥±ª ¡¥«¨¢®¬©©®¢¢¢¢«©°¢¡£¤¡¢ ¢¥¥£«¥¢¤«¤«®¥®²©¦¥¦¦´¦©¨³µ´¹º°ª¬rpo`[WVURFPNHZ\PRITKSLEGJD8;;=<8667:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:8698598989;9@9{µ´¬´»²°«²¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÊÌȵɼ±½ÃȬ±¸Áµ¼À¼´µª¬¦r{tiijlgjlmkjle]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURRNQY]\]]^___bdm
¢¡©©«¨¬§©¦¤¥¯¥¥¯© ¡¯«³ ¥¦£¤¡©ª ¡¡¢ ¤£ £¡¢¨££¨« «¯¤·¦£¤¢¬ª¨«¯³·²½µ³«¯
tsh[XYSUREXLQ[XMTNPLQRINIB=??A?=75799<<977:79:;<=>;7;;:=67:;8976989:6:=99577571141-+/434988::8::748=8?9~³§³·¯¨¨¯®©¨¬·¶«¼Ê»¶¿¬ËÆŸÁÎÏȳĺ·»ÂÈ°¸¿·¼½»³µ¦© ztvwnmhmmmpggifd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNPQYZZZ]]\^_ad}}¢ «ª¦¯¬¨±¥©¡¥¨§®¨ª¥¡¨«¥ ¡¤¡¢¥¦¨¨¨ ±°¦±½¨£¬´ª®§°µ°¹µÀ±®±«~rsbVTVNRJGVPRRLLWMJMORGMKACFDD>A75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8³¬¦±·ª¥¢±«ª§©²°¤¶Æ´¹º³ÊŹºÁËÐʱ¶·¼½Áñ¯±·´´»³´¢£vkglnqnrkpkdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajy~t© «¦¦¬¨ ¦£
¤£¢¥§ ¡¢¢¦¤¦©¦¡ ´²§²¸¡¢¶¬©¤²²¦µ¼µ«¬±£ysn]NQQLOCMNNPKFNNJJNNQHMJAHLHHC>858889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12876:999984988A7w¶¦¤¶°¥§¤ª¥ ©¦¤³ª¢²Ãµµ²³ÆƶºÃÊÌƳ¬¹½´¸À¯©°¦®º¯{n__frpvqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXXX[]anquo¡£¢¤¥¢s~{ £
~~tz££ ¡¤¤¢´¯¬°¬¥¸¦¦±¡°®°¼ª©¯ªwscVMROPMCSNLPMBPQHINRMHJJDKMFKK=749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-02764789::65:87A7x·¡£´©¦¥¨£¦¥¦¦¦³§¥´Á¸°´°ÉÄ·¹ÁÎƽ³¬ºÁ¬Ã§¢¦¦¶£ }w~fWV_gfighnciigb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTRMMJHNSSSTUUVY[]ijqk~{sNXr_;Vo|s
y{}xqp}¡ §®©¨¨³¢¦®¬«¨´£©£sn_[NSRWLDTJPMLFNOIELQMKOJIMPFII=7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· £®¡¦¦ª ¦©§£©¯¨§´Â¹°µ°Ç·³½Ï¿¹¯®µÂ§ªÅª¢±¢}su]PLQUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMORTVXZ`lngzsPB?}y`JQnx}
nxuvxpQ|~xvhw~¤£¨©¥¤°ª¡¤¤¦©¢ª¢¦¨vmf^[HQQSMIUMSILKOIHFJNLMTKQPOFIC=769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')+*,4833989:99::::?9w¶£§¡¯¡§¨¥§¨¯¬ªµ¼¶¸¶³Á»¶¨¹È¸¶¨¨µ¶ª²½¦¨~}wpoXMKMMNLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZnru}ih\Tt~|
{vxsovptz~«y{hv{prmxxz{vsrxgu
||© ©¥§¤ ¤sha]\JWPRGKXROJLMRJJJLPHLQLRTMEHA=77;99>=:;<98@?::>=7==79937785675251472/2.,//200/-+(().12721987:8775:<;7v®£¡´©¯ª¥«°±ª½´²¼¸¶º´±·º²ª¬©¨²°¡~vx|vooiXKHIHGEHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQQSV^t{xfv|gyvx}q|w{ok~}t{|ufv|logs|lyq}qmvqhq~pC
~wwz}{u}£¡¥xomfcZXXUQJSUTOPNPVKNKOOJROHNPLFD<<79;::?=9<:99??;8;=7<9999266856633611224.,,-..-0-+*''*.1362/876966527995y¦ ¡¦°¬®«¨©±¯±«¼¸¬»¾¸³¬§°§¬¥©¤
yuq{mupjmjXKFGEA@CDHLLMQRPQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNOQTX]eprl§ªÀ~tyb{xo{yz}omytyjjq~Inhx~midly
ksl|nr|inps{~{vottyyp|ojonoXVXTRQYORTTRXUMNHMJMOKCINGF@:99;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¥¬°£ª¨µ¯®¬´¿«¼Ã¿¥¢¤¡¡sztotkpldljYNDFC@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORWZQY\_§aisye~omzvtlts|jjMy
g1vsl~}tfeu
filukq|hqq|n|t~}qpnumwyujyywkkoheXRZWYY[MPUVYXNIHEJJHGB@GECG=998;9:9<:9;:::@<9:<98>787715234533645031.**+),,++)(+'),,226,,4775478iO8;5n£¨±§º¯«²°Â±»ÃÇ
zqtyprpoodpf_TFIC?<;9:?@ADCEGILOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOPQVLAIQIb¯² q{xl}lq
zyr¡txsu5q¨¡¡¢
vp||t®hgbjnrmpuioXupwlz}mrnp{svnbv
ux~}{sqqm`[]^[YX`_RN[ZXWLHJFJG?CABH?CD=;97=;:;;9:99;:?<88=:8;66651121253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥´©®±®Á²»ÁÅ|nul{txxlwnwci^JPG>?6449;;;=>@BEHLLLLNPQRTUVWXZXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~lv|~
~u¢y~aªzw~sz]dqtz|wmhjbyo
znwtzptyxkni]v||
}q}uw{|wpstfg`[[^S[g^WPTX[UGJJDKG?F@DC>AA=;97<;;=<::99;;=>79>9985653244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¦ ª ±¨¯À±ºÅº{vk}xs ||p~zgvkRWL@E211366688:<>AEGFGJKMOQQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJh{y|q|z}~v¡¥¬ªH®¯¯©tm|}hghyn
qGlwryvhmk_v}yzuv|xmow~ttrl[^^[ccXge[TOPVYPDLKFNICFCC@@CA=978:::;;:888::?>6;>7585773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|}
¬¡¦¸¯³½³}tp~~}}~¤
x~sx_cWKB60./23124668:=>?BEGHJMNQSTUTTVUSQOGC?80,#[>?84.]ps£UFIKMNPW`XpY\^i
~
¡¡¦»±§»Çè¡¥|qv
jhotq
w{v
}nvuf «¢zzyogkx~{~tle]Z[]j]af`ZOKNWRQIPJDNGCJDBADDA<:87=<:<:88778:==8<=68656623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfw{¤¡¬¦«¯°¡xw|~
mpj]B@4--//..02234778;=?BDHINQRSRSSTRPOHDB<87/9D><<63.lMPHIKKKNV_cggmu £ª¥£¬©¶¢¨Á®ǯxº|¡
¢
lpuwqm
q ¤µ©¢}kjj|tb^d_[gk]lk^WKGNRQMLLFIPCDMFACEFB=997=<:;:987767;:6=:785456344566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYoouqv~§ ©ge¤~y}
xx~gMR>/..,/.-/000212467;?CENPRTPPQSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} §¥¢¡¢§¨«¨¬©ª¶«¿«¶ÈÈ·ÉÑϾ pi«©
¡§¢xz~¡{w«²|£¢¦¶¯¨lss}}ri`]a_agd`gf[REJKPOIILFFMCHLFGDBGEA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppt`m}aw}{ªªBD}x|
v^bP460-1/,.00//..0015>ABMQRSQRSTRNSLEE@<>=GG@A@8662<9;FHGIJNOQYm
w£§ª´½¸¤¬¬§¨´«°¶²²»±³½³Ã«ºÉ˷ÿ¸¥¢°³¬ª£
¦¦ £¦¢«¨¤
¤¡ «¡¤©°£¦·º £°¢¢£¡«¯¬²´¢¤ªzz}
hah\eb]dd^fg_ZOCIHSNFHLFJGFFHAKFCFFA;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLhcWioXz
v
ÚÈsV|z
pna@E64<2/110-,+-1.-4?CAMUQRSUUVUN[PGGD<>>FHCE@8;<5C;=FKIGHROPW ®£³ª²ÀÇê³Å¶¬³¿³¸¾¶¿´Á¶»º£¸Å¨¶Éǵ¾¹µ¨£´°±§¯«¥v¤¡¬²³ª®¨®¶»²º¬¯µ¢±«±µ»·´®´ §¨£§©¯²¹·¸¦¶¨¤xvZbeWfaac``f`[TIDDLUQHIJDIGEA@@KDBMG<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AFWQJL[ZQbcWyuq}u
{¿»£¼´y
zxn]V@EN<6:46AB764//6CHCQ[OQUWU\VO^UIKJA@?GKFFC;>@7D7?BJJEFWTP^¤£±´Ã¶¸ÁÌɶ»Ä½³³À¶¸Áµ¾¯·t±³¥ºÄ¤°Æ¹±³±´¨¤µ¶ª± ¢¢¥°®¦¬§¤ ¬´»¢¨²ºµ¼¿Ì¿ÅŽ½³Â·º¸¾·º·¹¬¬°¦±ª½°¼»ÁÁ«º¨ª}}kWdbYkejeW\cYVSIGFLQGCHIAHD>?BBK@@MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALRWSYUZvjp~nzsxb¹¡£{z|}}wzueO\dGEL;Qca[^SF?;HPEZcQRYXZgYT``MSPEA?IJHEEA@C<E6B>HGJLSZT]®¸µº¸È¿º½ÉÌ»¼À»·µ»º¶½´º±Æ`u²¤±«½ª¥¨««¤¢²µ «§®¥§¦¥££§±´§²³½¶Á¾ÓÉÉÓÇÂÅÌÂÊÃÀ¾½¿»¼·´¯¸·¶Ã¹Å½Âȯ¹©¡«¤¨¶s`cb^Xb`igRX`VQUIEENK@>GD=KA=B@=F>;H@796379>489:57045/26389374426?8@>GKRTSQPOQQPJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRKQ]glkp
slrrsÕÀµ }~x{|y~t}zkepuY]\Pedb`ed][XW\MdmURmm_n_XgdUYUJDBKKHFHHHGAI9D?HKTTV\Z[¸À¸½·ÆÀ»¹Êʺ¶¹µ¸¹²·µ´®¶¶du¨p^¢¬ ¢¤«¥§¥¤¬¥ª°¸°½¹ÔÑÎÖÐÉÌÒÌÏÎÊÆ¿¿ÂʽÁ¼ÁÀÄÄÅʾÈ㤻°´¯«¸»{l^a]Y^aZccQ[`SPKCAEFE<@E>AHA@D=:E>=J?47535;=468977022/24169775555D3ELM>51/006:477@IOI;-&**(-./,@M+/54mI0Ht?>BD@CDFKODQ\Yh_onlouu³¬¡
~|s{
{ts{ykmu{hreilifjih`fihlZms¤¼g[oh]ZZTHKNOJKPKSQHLAJGJO_^bfia·Ç°¸²»½µ±ÄƵ°¸°¯»«²±§«·¬µ§§N¦¥¡§¬¯¨°§´´ÔÔÔÖÒËÏÔÕÍÓÏÍÅÂÉпÊÉÊÉÑÇÌÍÂÐÒ¸¯Ã¼Ä¹¥¶ºÃ¢od]]^Y`WYfZQ]WOPBBHEBH;AC>AG??A8;D>@H=46655;:687654/10146278875367C5B8?-0-1349=97,.,1;FK=),(.0007K?-46TW0DwC;B>EBACJM?UYSeVshqoyy ª¥}
|p{r}qxukqx~q{nxslhpmcjmpxiw|~Ë¿Áߧncxnc[a`JPRUNY^P]\NPNTQUT\nmvq¸¬´¦¯¶ª¬¼À°«´¦¤¸¦«® «´¢±¦«¬¤§¢¬ÏÒÕÑÍËÒÓÔÐÔÑÎÈÃÔÑÇÍÒÓÓ×ÌÑÑÅÒÖÅÀÎÇǨ¾·Ïzof^b]W`S]ZPQTPOH>@FABE<@B>ED>??:==<<JA45465<888664412/03526768533;=<E=@11+/249>5901022-2DN3)/3.32=N238C}_2AtD:==I>@CFH<VRMN[u
wlwp}~¡¡y
{r~yu
ovrks||w{swqjsripqzyrz¾Ë~²vrvhak]CZZ[VecXdjSX]]`d^cwz~©£¤¡ ¨¥ª°¸ª¥³£¡¡£¡§±¦j¢
~§°¡ ¡¥¤¨ÈÎÏÈÂËÑÔÑÔÓÎÓÍÆÖÒÌÔØÖÖØÔ×ÕÉÔÚÍÉ××ÑʬÃÃÌsoda`XTYT\PKGJJJ@;:;DAD<BC>GB>BB;<9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/--;R017/532FD28>nb5=tM99@I<AD?A;PLFKYpu}hsxr
x~xs{}wznwpmuvx}t
|ylvtn}vux{µ;AÅ¥~|ieWICfcecgjdnx[^fhknin ££¦±££³¡¥ © £±~
z~©£}«³¨§½Ãƹ¶ÆÍÒÐÒÐÌÒËÉÔÎÐÕÚ××ØÔÙØÍØÛÎÉÙÚÑÖ¾ËÌ´ywoe^[SVR[VFGJIEE=:7:@@B:GD?DCADB;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BS39254/7K75<`bA<svV87AH:?C><9QECJTknnpbpqt|~
|x
zyqz{uz
yp|oozq{qnzuw}|u~{¯sX©Â¶pnb=^hrpqpnxvehoruxqz ª ¬¡¦«}
~my{®ª§®µ½©½ÆËÉÉÌËÐÉÃÒÊÔ×Ù×Ø×ÕÛ×ÓÙÛÕÐÛÚÑÖÈÔËz|ji\[PST^HCFIH>A>=7:=?;=G=?AAADA>>:86DB755479.566435532323647553457EBDCEB56<FNSM[nfcnskaV>,4LG865434BF4=W_hLux^8;?F<<B<::D?CGRk_mdbfkvqz~||~wyn{{tz vutu}too
t|zv{·Å¤ÁɸwpeNfczw¢xyv{{vm¥£«
z}¡¼¡©¦¥®¨¶¿ÀÀ¹ÇÉÍÎÅÍÉÑÖÕÕÙÕ×ÛÔ×ÙÚÛ×ÛÚÚØÎÜÆ|{hjf`TXUUMLDNC;==<8:<>9=@6=?@<?><9867CA6455=80665547745613854564557HH=DJE7925;H>;::7IP]ZRUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Yea][htzylwvz{~~|{~
zzu}tm|}~s~|~x}xnt}{}z¨Ã ¼£}}r~s¦
{hGq ¤
~¥¥¸¢§¡£¯¶ºµ¬ÀÅÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Û¸yyymkfW`\SPOICLB=<>99::99;=6?>><=9:;;37D?8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8589?=DRSRX_VXfmmmiqry{z|{{|{~u
yrzsm~~w
¡n¨
z |}£¢£®
Wr«[¢
¢£
¤³¡¡§²¸¬¦½ÂÇÎÇÆÏÌÐÌÎ×ÐÑÔ®ÖÕØÚØÚÚ×ÖÙÙq~uig^]XTWXC@HC>>>:49:;7:;:3;;?=>7;9:1:H>:37=@50677255?65;55858:57735HR7GOK994=EJB>1FCLB98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcbymb~omwxyz||{wsp
zuvvt
}~¦£¥¢¨r±§¢¢©¯n·
ÄȲ¡¥²d¤ÍÇ
ª££¥©¡¢³´¥£¼Á¾ÈÅÅÉÈÉÂÊÓÍÍÔ©ÒÑÖÖÖØÚÔÓÚÎsid_^^OJU[BAFC;A=837;<:8=649:<:82?9:2:I:=67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBcFu||l}xz~z~vv{lny|xx|~£³¨£«²¡§ ¥¤®¢·³¡ ¤¯¢¤§¨¯¤ À£É¸«¢¥²
¨¢
t²¤¡} ¡±®£¤·¾´ÅÇĽÃÿÆÎÊÉÒ§ÎÍÓÒÐÖØÒÏØ»s{w^aVaWPHJOEBCD5>:76:?;<7=42669774=5<5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=89567=:JFDGN[\YJga;Hzzm
y|x
}px|}|osz}{x
¨»¨²½¯¥®³³¨£¢°¬´¢¸¥¬¤©·¦¤£©ª£¯°© »»É i¶¸«°¢«½£^ª²|}³«¢¡ ¥¯¨¢¥³¸«ÂÈĵ»½»ÅÈÇÂÑ¡ÆÉÍÍÄÖÖÐËÓ¢q|j^[U_RPFD>=CAA8?874>F<<6<35355454B3::BM:A;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPeHb`cpJ@~r|u~m}}|pww{«ÂÀ°¾Æ»²´Á¼´«³¶¨²®®½ª»¤¨¹·«¦¦¢¢££©¯²±ª¤¢¥¥£¹®¨À»¬²¹¥¤§}½°z§±« ¤¬ ¡¨§¤¡£°²¦ÁÆ𰺶ÅľͧÇÃÇüÕÐÍÄÊutc][a[NKCL@EF>A?B;:4>A==5=6>333242A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\gG`igZ][{un~|q~zz§´ÆÉÀÂÌÁùȼº¯«¹»²¶º³À®¥À¤ª°»»ª®«¢¢§«®µ°ª ª¢°´§¢ººµÁ»«¨²¤¤¨©ÃĤz¡¦ ®ª¡ ³ ¡¤ ¦¤¦§¤¯¥¿Ä®©·µÉþ¶Î²Å¾Ã¼³ÑÊÈÁµvzn]Y]kSMICLJJI@A=CD<5AD;:3=8B332262A05IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBg\Me\fTcjyr|~wz¡¨º¾ÈÈÊÂÒÉÊÂͼÁ³»¾§º¿¾¼Ã·¬Á©¬³»½ª°©¤¥£«®´®¶µ ®¦¢£´½©¨¼À£¶¶¯«¯¬ª«©¦¥¥uy
££©¥}£ ¢µ¦¥¤£¥¦¥£©¨¢²¬¨»Àį¥³·ÌÀ¹®Ã³»¾Á¸ÂÂÁÀozcYW\\LLMIGDCHBBACK:4DH:;4<7E.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQF7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>kI_XaZdeVx
~ ®§£Â½ÈÄÈÆÓÍÎÍ˼·°º¼´¼Ê¼ÃÁ¶¶»³¿¹¼¯¨ ©§¶®©²·¢¨¡«·¸©¥¯¾Ä±½¸³§©³³®¥¬§ ±Å§|}ª¥¡£¢Z¥f£³¥£¬«§§¡¤¨¦¶«©º¼Ãµ¥´¶ËÁ¸ª¶¬³º¸®¨¸º½¸no[XUVOFKSMK?AHEDGFG85FM;>7>AJ.32025B55PWN;LFKRLOGGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|hW;=@BFBrFiIRebLF¦¡©¥¢¯¾®¡Ç½ÅÄÇÇÎÎÎÒʾ»¶±º»¼¾Î¶Ä½·¸·²²µ³¸²«¦««¸ª©§¯°£®¤§¤¥´À°ª¬³¾Â¹À¸³§¸³·³®¥®®¤¡sÁ}±¦£ ¨¡ `J¥T°¯¥¯¯¥¡¦ §¢´©ª³½¼»«°²ÇÀ¹¦««±±£¡²²´¤rpf][OQLEPPPQ;HKIFHAC>9KT?A:=EM07544:B34NWO<JKNUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@CAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}iX;:BC@=REWRsbWFH«¡©¯§
£¥µÉ´©Æ»ÃÄÈÊÈÇÌÎǾº³¯¹¸ÀÁ͵ȺÀ¹µº±¯¯²´§£ª´´ª©¦®¬¤®¥¥©º¿¨«¶¶¾Á¿¾¸³±Â¯·½«£®´¬¸¥¦v¾ ¯¡¡©¨ ª¡§nv¢¢®²£«©ª«®¥¤¥©¢°§©«º·¾³²½¹¶£§¨¥§¬©©ega_RLMGGNJVL=MDMIJACD<QU<AABDO18=77?B75UXN?HNQXRPQTJQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=..SaMVHe^HF¬¡»¯ª«¢¤¬££¶Ç½´ÁºÂÂÈÉÅÂÎÈÁ½¹²¯¹´ÀÂʶƱÀ¼´º«©¬¯£¢ª´º¦©¦¬ª¨¯§¤««¾»¨¬¼³·½Æ¼·µ¸À°½¿³©´¶«¾¤¢¢¼ ·©¥£¡¨¥³¡¥¨ª¤¢¢ µ¯¥¥±«¬¬¤£© ©¥¢¡´µºµ¨µ²³¢¦ª¡wb^`^KIFHMQIMEFFBRJHADGAVSDH<AGQ1;B7:BF79\YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:h]FDDobGE¨¤Ã¥©ª¨¦¬¡ª¶Ä¼¿·ÁÃÀÇÄ¿ÍÆ»¾¹²°¸³¿Ãȵ¿¯¼¶¹·¦£««¬ ªªÄ¢¥¨¬¦¬¯¬¢ª¨¾¸¦¬½°·¶Ç¶´¹¸¾°¾Á¶´²´¯¾££¡¢¥££¾¥©¨¬¡¦½¢¤¢©«¡
¤ µ¬¥²§°¨ª
¡¥¤¬±¶±ª¥©¬ ¡©idZa]PJGKOLHECI@=OH@;GIH[ROK=HNU4BF9>HG5Cb[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,0Mv\4KZ5,MnW<-=)#zbQ5CKQ9oRF<KxecWL¢£Å¬¡¬£¤ §ª¬¶°£ª³¶ÄýÀ¶¿Â¼È¾Êȶ¸µ´°³´·Áƶ¾°¸´¹µ¦ª«¥¤Á¥ ª® ¤©¯¢¦§½µ¥±»·¶µÃ²³·º¾±ÃÀ¸¸³´µ¢¤ ¡©¨«¢Ã©¬®¦ ½¡¤«««¦¡W¦¡ ¸ª§¶£³¢ ¯ ¢¤¦®²«©¢¢¥¥¤ce[d`LIJKNFEAFK>=JA99JJN]QQJ=LW\9FI=DMI8Hc\LCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWsHE6=ue\KN¡Ä§¥¢³¡²§ª¤£©¬»°¨¬µ²ÈÃÁ³ÂĽÆĽÄʽ°°¶®°µ¯¿Åµ¹°°ºµ¬¨°©©¦¡§Â¬±ª¢®°©¤§½·¦¶º½¯·Ä³³Â¿±Æ³º·«´¶ª¢¥£«¡¨«°®®»²¦ ©©¢¤¸¡¡¤®¯¬¤¦¡£§´§§´£°®¢ ¡¦°¥§¢
cf[hfKILJSBC@IG;;F?99NMU^RSJ>O^^=HPBLLI9Nd]LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<v]^?[U^fr@8<HweA4¤Â¨£ª±¡£´©²«¦¢¤²¬®©»²°´´Æ¿ÄĶÀľÊĵÀȵ«µ¨°¸¬ÀÄ´·®¬¶º¥«±«©¦»µ¨°®´²§ªº³§º²·²¸Àª·²Â¼´Å§¾®·µ©§¬¡¥¤¢¢¤¯¸²µ¶ ¨¤£·£¤¥®±²¥©¥¢¨¢®²¢¦®¥¬¥
©©«¢§¡ydi]ljNPMNT=BANC;:I@77QO]^RVQAW`\BJSHWKH:Ud]NFON[W[RPQX]GAB[PBG>NC9HGHNP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1\cZ33806p[bH05JpiVCWFyfC;¤£¡¥¿¦¨¯¯¡©µª¹¯«¤ª´·±°¹¶°·¸¸Å½Ãǽ¼ÄÁÇÀ¹ÁÆÁºª¶¥»Á÷·ª²¼¢°±¥¨ª¹ª §°ª¯´³ª©¶¶¬»«²²¹·¬¹°Á¹½¾¦Ã«°·®¨ª«¦ª¡¡ °®³«°¹©¦ ¶©¥¢¢¯±³«±§« ¤¡£³°¦¡©¢©©§¤~kimamnXQQZTACEU@;:IA7:XPd^PVWDY^^MLRN_KJ>Zd^NIQN[UYPKSWZI?DXPDF>N?=IGGQPB=CFBM?:2D?77547?=95E4+75/251.-.,1>*'+=\p=>1.1e[d@1647gY`F(@8l}h\V:{cC=¨¡©½¡ª°ª£±¸©¥µ²«¡µ½¯³¸¼º½·¶ÁÿÉĹÅÃÀÀ¸Å½Á¸¯¶§«·²¼¿¾µ©®±·«¨§©§»¥³«¢±°³¬ª¶³µ¼¯±µ¬°µ±À¹Ä¶«¼¯±¸¬¬©¢±¥¤¨¤²ª³©ª³§ ¥¤´®§¢¬¬®±§²¬²©£§¤¡¨µ©¡¬¦¦£
{flshpr_GYfVDCNXDZ9HB6>]Rh\NY]G[^]NMRXdJJC\c`PLMNXWXPJVVWL=EUJEDAM?AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,+%2+*5K1.'_^aV150=`V^8)C3YU\gK5zfL@¤ ¤¬·£¬©¥®®¶ª®´¹¦§°¸Å·±·¾Áµ´»Å¾ÌŹÃÁº¿ºÄ¸Á¹³µ¬ªº·»º¾µª±¶¨«ª«¬««½«®±£ª±³®®¶²¹¶©®±§µ°³º¼É²ªµ´±´¯®¦¡³¨¬ ¥±¢ ¥¯¡¤¢¥¦²©¡¦±«ªµ¤°µ¯£§¬¸¢¡¬¥£¢ {
{knynu|aF`jZIHZ[={JGE6AbTiZM\aJ[]ZRRSbaLKE`a`PLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`Va.5(C^Q\.*A/JGP[G3cYTKD¯¨±©¬¥£®®µ©¶´·£¬´·Éº´»º¿¾µ´·ÃÁÍǼĽ·¾¿À·¿½²½®§ºº··Â·¬±¹¦®«§£²ª¯º¤²±§§¢±³±²±µ±¸²¨®«²§¸¯µ³ÃŶ©´µ«°©§¢¶¦± ¤±§©©¢¥¥¤·§¢°³«§±§¬°µ¬¤¡¬¨ª¸¢§¢§¤ v{
nqxv|]Kel\JOc\?b{GI8GgWe[L^bMXYWTXTi]POHa]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANIg27'FaLV%-B.=ELQ<3rkKDC¤¤«¦£°²³ª¶°¶«µ¹É¹®Á»Ã·³²µÂÃÏÄÀÁ½´½À¿º¿½³Ä¨ª¹±¶·¿½¯«³³ §°¥¦°¥²µ¬«²°¬©¨´¹¬´³µ¬´¬©«¨¬©¹±°Ç¾¸¤¹¯©¦¨°¥££®£©¯¢£¢£¬£ ¡©¥¥¸¤«´´¤ª«¨¬®¶¯¢£¨ª ¤´£
§ w~
||}qts~}~\Rdn^NZf]FD[G:NmXa[M`bNVWVWTYg^QRLdZ[TKGOTSNGIVS\N;P^JBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Ce;6*HdHJ+:I?3CIS,>k>HI©ª¡¨°¤¨£³´±´µ±±¡¬½Ëº®Á»Æ±´´ÂÃÑÄƾÀ²¾Â¼¿¸¼Å¨·¬³¸¼Á°«²¡¤§©¨¤°£«±ª¯«±®®«³»§·±²©²©ª¦¥£º¬©±Â¹´¬¹¨¨¨©§±¥©¤¢®ª¨¢¢¬¤«¡§¨¡¬¥£¬·±± ©¢ª°¬¦§©£ §¡ ¥
|w
usrvl_Y`ncQsr\K<|F?WuX`YOd\NUVUWP\a_SONhXWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*35>10485(5/*,.30;),,'%234$,2-860)(1<^J0.IgDF8<B05EKX1@\@MF¬§¡ª²©¨°µ¬¸´®ª¤««½É»±¾·Ã¯°³ÄÄÎÎÿ¿´ÀÃĺÀ´ÉĬ¯·®²ºÀ¿³®®«¥¨ª°©¦¨²¥´ª°®±¯³¬³º¤¸´¬¬®§« ¢°·«ªº¶¤µµ¤©§¬¬ª¬¡¨¦¦±²¤¦¥¡¡«© ¦£¢ª¤¬¢¦±·¬¬¢¤¢©ª©¡¥¤£
¤£|{u~uw£yk^`ngWfdN@gLDbzWbXReUMVUUTO\]aUKNiWVVIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06XZ.0JgAA<<C+:JO^4DAIHD¯¤¢ª°ª¨µ«¶°«¤«ª©¼ÁÀ¸¹³¼µ¦²¯ÄÉËÑ¿Á»¹ÀÀ¹ÁºÂÄ®±µ²´¼Á¾³²®«¬¨¶ª¥°ª¹¯¨°°®±«µª¶µ¦´¶«¬¤©ª£³³¨¨¤´´ ¶®¡©¨«¨«§ ª«¨¹¶©ª©©¡©¨¡ ¤¢¦¢©¦´®§¥©¢£¤¦§©¢££~
¢txu{x~prggqx\asiO]VHmyUdVRcOLUTUQOXZbVHPjTWSGPYUI>IHOQPxLNV=<KD?@A<@CUC9AK=5;E13;97*4:=+-341*8**+*,)*(/*&)%3;,$2)2021%/2Rc02?f=NX?C,?LT_/Ik7RE;¯¥ª«¤®³´®ª¥¯©©»¾»Á±¯¸¢µ¯ÉÇÈÑÀ¿½º¼Ã½ºÃÁÀ¿¯²³²¶½¼Á²²³«³©¥µ¨¤³³¹¯¢µ±¯±¹ª¸®ª®¶«ªª« £¡¶®¨¡¯²¡´ª¨§ª£ª¡¡¬¨½¯¬®¬¡§§«¯¢¢ ¨§§©°¨¢¬¡ ¡¢£¦¨¥}
¤
xs}uxz{tt{j£ui^elug|RWp^JxsTdSQ_MMSZgNLVYeXGSjRR>BNQaQ:IHLSIqPLS;<I?;<=;@@W<<>H73CB15:93-5::)-31--6)(+-,52#2)',%.;.&1.0-14%,0Mh:38_=ad?F1CP[[+HO;XB4°¤¥ª£¥£¬¦´³°©¤°§ª¸¾Á¼°¨¹ª§®°ÉÆÈнÀ¾¹¾¾¼É¼Â¹±°µ²º¼¹À³´»¹¬£µ¦§¬²¶¹²¦§ºµ´¼¯¼¥µ«©¯¤¥¬ª§ª²¤³¨ª§ª¤©¢¨¨©½«´¯©£ ®²¢¤¤¥¤¨ª¥©¡ ¤©©
}~
¢~rzy~|hw|zupq~iyd`hdr
{mgy]^VBW{mTaPRXKKMpt]HZ[gYEVgOC>KNDCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KI1%90%,,09/,,+6'17#-/GjI14X=fbAJ7GS`U*=<F\@*°©¥£¡ª¥·²±¤©±¦¹Á½µ°£¹¨¨°ÃÉÉÌÁ·½Àµ·¿ºÈ¶Ãµ´³µ²½¹º½¶¹¶¿¢³¦««¯µ·´ªº»¨±¿²¹ ¯´¶©¬±£¥¨©¢¤°¦¯ «©§¡©£¨ »§®±®¡ª¢£¬¥ ¢¢ª¢££¡¦¬{}~
¤|yl}vyxb{zrppsxjtjgchansmbjp`oA]ykV^NPQJILSYVM\^mWDXaO^PHMDF;7HEKO<rhJK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*L>*49&'.34.0+/4&,:$40AhZ13S=e_DL6KVdN)=3Q]=#«§£¡§£¸¯¢¯¯©«¸Âº³¹¯«¨´ºÇÊÇ¿·Â¾¯´¾·Ä¶Ã²°º²³Àµ»¾¸©¹¸½«¤µ§¨ª°¹°©¹¼£®¿´´¡®·µ§¦§°³ ¥¦§ ¥¬¨© ª®§ ¦¢¨°¸¤±® ¬¡¬¤¦¦¨£©¦¨¡ª}||¡y
}{sp|qst`yxjopqpjsczlhfdae`[rjqMNiXZMPLJGPRQHM[_oTDXZRgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZgH*?0\[5(¥¬¡¤¡·ª°£´´©©¹Å¶²® ·¬°µÅÇÀ·¿Â¹°µ¼·¿»¿¯¬¾°³¿±½Ã¹©»º¸§¨µ¨§«°¬³°¦¼¶¤«ºµ®±¸¯©¥§¯²¡¤ £¤¡¯¦¡£¨¯¡ ¢£¤¢¶°¡¦±«¬¢®ª¤¨¤¥©¤¢©¡
z~zz
zzpqvnpt_xwemllkinfrikfi]ct`[kuiZJ^[XOOKHHRUF29]^mPDXVYeMHIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<"8R=*113>D5,-'42*;+139cm74GAf[HTDU]hD.<2cV,2¢¡©¤¡¢¡·©® º¸¥¬½Å³°®£µ¯¯´Ãü³¿º·°³¹¸º¸º¯®À³´¹°¿Á¸¬½ºµ¥¢³ª§©²«±¡Àµ¤§µµ¨²¼©¨¥©¯¬£§¤¥¡²¥¤¨©¢ ¤£¸¨¤§®¦¥¡¨¨¡¡ ¡ª £¨¤y{}z
{w~{ltqllsawthhjggo
ghhcfij`jcig[e{c`StT\[SLJGIOS@!*h^jLCVU^`KIGEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,?0-N?.+-7,1195,&.5-80576`tA3CDg[KWGU`hB379gO'2¢££¦£µ¬§ªº·§¬ÄÁ¶°¬£µ®§®¯·À¿¼²Á¶°®²¶¶¸¶¶ª½³®²±½¿¸®¼»±¤¶«¥¥´©ª®Á«¨¥¯²©¬µ»©ª«±¥©§¤¦¢¤©¡¢§¶¥¯ª®¡¡¡ ¦¡ ¥«¡© y
w}
{s}}fxokjkguskcgddvbeffejjdkrZ_Y]mdaNiX[`VJGIKMRX>9_liHBTS\[IHFFA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=+*,0A*JK./*+3722(57$+7.72685]yN2>HiZLZJVbf@:3BhH%5£¬¡¤³±¢±½¶¡±Æ¼º±±¤·¬ª®©¹¼»º®À²®®®¶®²¸³¨«¹±¯®³¶º¶°¸½¦µª °¤ª¯¢À ±¤®°®·®µ¯¢§©¥§¥¤¢©¬¯¥º¨®¢¡£¤ ¨©§©§|s
|
p~fymhkigqrk\hccsafhjnlgjjhn]lltpaUcideZIFLMOXQQVaeU@VSYTFHFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24;6#3*)6.55465Z|]19Kj[M[KXdd@A1JfC'4¡°¡¨²¯¸¿¶ ´Â»½¹±¦¶°¨®¥·¸··»¯¬ª«¶ª³¸¥³µ²®©°·¶±³µº§©µ¨¨¢©§¾£®¯´µ¬±°©¢£«¨¦£©¢¤£«ª©»§¤ ¡k¡p£u©§¡xnj~vql}p^cagktw~gguheW\hsnNPjcgrg_dfnmj^_aeNKD9FTg^JGPPTUKHR`oteFZQUPFHFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,+08>G601.*.*/568,#1'214:175Xl16Ok[N\K[fb>G1Qd=*.£° ªª£½Å¯©·Â¸½¼§¶°¥«¤·³±³±¹©¦¬´¦¯µ¢¨¸¶¶¨§¬·³®´³¢©³ª¡¤¦§«º¦¥¯²¶®¤©®«¬¥¡ §§ ¥¥§§§ª£µ¯££££¡¡ ¤¥ªrx
¡vif}rx¡o~}¡ |tvllheczkqaS
mcliqYjqoX^i[kk[qnzr
gZ^GN?G_MFRVVQQRWTg^MWIRSOEGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82).1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Wa70(¦«ªª§ª¿Ã¯±º½·À¿ª¥·°©¬¦³´®®³·«©¥±¥´³µ¶´¦§¨³±²¨®« ²¨ £¢¡£³£¥¥µ¼§¬§«ª¨¥¡ ¦£¥£¤¤©£¤¥¦¡·££ ¤®©¡
±£¬yÔ¨ÁÇyx±¥·dÀ¿yy|Êq¼Åzrµ¦»{l±«°xhkX±®nei¼¼nhznrØ~Sjb¶²rt¡ªWOWbPVNFT[XQPR\W\P@\DQNDGI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww21Tk\O[M^g\>L1[]41!¦§ª¥²¨±Â½²µÀµ·¾Â«¦³¬¬©§¯³©¯¶´§§¦´¥§¸®³²¶ª¥¤§±®®±¦ª§¤±£¢®«¢³º£ª©¢®¥¡¡§§ §§§¡¦¢ °¢£
¯jjª~gdp¥q®¡¤~x»}k¡v±_j´[¥f`fzfjxk©d¾rg¦u±j|±xtcmm§n[ EhfEu`~g|¤§Y_«ixyj§7J¯\XSld[KNW_\WV;NOXW/ITTICEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:5/'$203B/=;Uv2-Vj\OYL_gY:M5_Y30¢¬§¥£¤ª²·¬´½¾°¶Ä²·ºÂ¦©°«®©©°®£°º¯£¤®²£¨¸¨³²°£¥ ª¯¬¯¦§£¢°¢¬¥¡³³¢«¢ ¡¨£¡¦¤£ ª¦¦ ¡
µµx
©µv³·~¨~k¦{w«gk±[«{tqx °vwqkkl|N¤XHcc~ch¦`yruS^P©mcq~b.Q¡o[Skh`LK[dX\ZB>±yXXA#MhEBEA@A19>88:84;:9<9:A:E::;6:CB8=?KNG:5:AFB@AD<FD;0201;F,0.940,.(/3,>831/2-D1<<S}n3+Xj\OXM_gX7J8aU50³¦¦¡®©§²¬©»¶Â°»Â¸·Àª¬®¦±©¡¯¼ª¡§´£«µ¤¦³³§£¢§ª²¨°§¥¯¬¡¤¨´¯¢©©¨ª ¥§¢ £¤£¢©¥¢ Õ¹p°Â~Å|Ö»|¤¤{£¥z¬yV¯z~j¹Z¹v}¦|zªy{±nt¼
oP¯§ÅQ zc`©ctrm`Sµ´È|c¤3Bv]PjidP@XgZdaJHNmM[ROYfYCD>E?0=<59;74<;8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DC./0483+-).323971#%5*>3==Qwj6*Yi[K]O_fT7G:aQ71%¢±¨¨¥³ª¥´©¤¼·Á°¹À±µ´»³µ§±°£°²¦®¶¨§¹®£¯± ³´° ¤§©°©´¨¤ª ª§°©£¬¢¨¡¥¡¢¡¡¡¡¢¦¡¦ §¡²nhµq«n¦r´sr¶{££¡¥~°vÒÑv\®{
¤oª¦k
}}{±sy³etofRÈZÂ\yb_`vsb^YÊo¿uMKµSUÆdTQjcfXAOk_lhOUGI8=VQZWXHC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>HI91746@>/.24252-).26,742&60;5:=Pqh9'Wi\BOT_eP5G=aM620¡¥¯¤ª¼¦µ¥§¶»¼²º¿·µ´ºº³¥´´¡±±¢¬°¤¦º®¤±°´¸ª¦¡©¤²¨¬©¤¨¢§¥ª°¦¢¥ ¤¦¥¦¡¢ ¡¥¢
¬{w¨v£©o§¡¢®
³\r³R®}¤q×}x
~w¯x³aelZ°XKuyf`_wwhk]¯wxl5yÈ®²_BSo^g`EPm_pmVUM.echRXQ;AD@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@>V_cN6GC`I:99¸°´Á¨³¨©²º·³·¿¹·²µ¼µ¤·³´¬¨¬§µ«¨±±«´¤© ¨¡¶§¦©¢¥¡¢¤¦¬¯¦ ©¢¢¨¥ ¥¨¤¬¡ ¡¡ ¦©}}¥x¡ªp§¡£ª|yo±Z¨ ytØvt¨£|{²^d ~l\«[Zhgªdr{ks]¬Z koeOJC¡\[Lt]bfM[a_rt_JV6JXHE=GFAM35A8.;>05A78@<6=<F?:<6?=B7.HVJEAH6KIN@IK@EN::@4.;>102144+*05/7,&21($$6671<PeeA&Uf[?2U_bL7FI_C2?8¡¿«´Â®¬©¦´°·±µ¿¹¹²°·»©º´°¤¥§§ª°©¯©µ¬ª¯¡¡ ¦¥¤º¢£« ¢ ¨¯¯¦¨¦¤¨«§©§ £¤¡¡¡ ¡«®mr´r©v¦s´xs³¤¢¤w¸o{¢kk¶Z
ei¡¢§mr´t²j
ku³af¢oj\_M¡|Rs£mz~oq\¯V<weTon.\§OcRkebmZc]ap{cSZQ>>mo3CB@?L9!7@6.;@37C58??3;<CDBJFMIF62JTKEBI6IJP?HNCFP=<E50;;010/75,+,426/#00,,289/9N`eD'UdY>/U^aL5FM^81C8¥»¡²À®®««§·©¸¯µÀµ¼°¯¹¸«Á¶©ª ¦£¢ªª¨¶£²§¯ª § ¤«¸£¥¢¡«µ°§¬ª¥¥¢ª±¤¦«°¡£¢¡©ªÔ»s°ÃÃ~Õ¸x§z£¶u}wv²`ºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¡~tª}¾ns¼t²uxnqn¤t½^w}[ay¼kZV[jz^jaegbmwoY[YCA@r@CG+5G"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7A9§¡¼¢±Ã°ªª¬±§¸¯¶Ä±¹±®º¯®À±«¤¢£¢©£ª²¤´¦¥ª¦¬¹£® ¥ £¯¹±¬£§§¤¤ ¨«¨£³£¥§¢¡£° ©
µ·xµwmknsnztÁ»½{²¨pt¸|{|¤»¹½uz³£tvut°ufiµtrpw¶^z}hymyc¬pu
Z[§jEeZTf`c]cQggpltBMPLD:ZM?J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7LT_G'SbV8*O]]=+:VV'>;<§ ¡¿¥´Â´¬ª¨¬«©»®°Å®´²®·§´¸©¢¡¥ «¤©¦µ¨§ £¬¤¾¦¡ª¢¢¨¡²µ·¤¤¢¦¥ª©¤¥¡¨¦¦£©¡£°¨§¡j~i¦xr}tzd{½¾Àºoq`rjZ^ack`cmwbke^`cqhr}
gj~rtx}}b[wthP\n}{kXlzsIJopMuMEW]gaLZWgc_O[mujqRODEN;HH=L?2-2A?8/5?C<9;@;=C>RVVWYZ[\\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7JR_I'S`V4)P^L(3=[O'?2>¨ ¨¡Â£´¹¶£¬¥®§¨µ²«È«°²«´£¾±²¦ ¢¨£¬¦¯¤¥µ©¥¡¦©¾§¨¦ ¤©¨°²¿¬§§¢©¨£¬££§¬¢«¢±§ ±¤¡¨¢¤¦¢gm}qw
µª ¢¡z¤lj||tqxyvv{kstudw}wkp{m`c]phMXZfj`WZoynmfSOFS9OYMRO(+:KB635=@A9:C><ENSSTVWXYZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J&R^S10T^:+=8\K,<-@³¡³¡¿¡¤±²· ©¥²§¥°µªÈ«¬°¥µ¦À§´ ¤¤£ ª¦££¶«©¥Á«£¢¢§¨§²Ä¯««¨ª ¬¡¢¤¯¦¡¥¨®§ ¯ ¡¦ ¡£ |ª¨{
£f¡³¯
vz|vyzofzkuyshszuktdyf`iecdfkYk{pij\SLPD_TE@??,4@F;45;>A;<?>>HNNOPSUVVXZ\_aca_^^]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMMD/T]Q05M[17E4\G5<,@´ ¹¯¿¬«®²± ª¦±¢¬³°Ä°ª«£³®¼£´¦¢¡§¥©¦¤¥³µ°¦®¾ «¢¡¨ª«¢³È³ª¤«§¨¤« ©¯©¥£«¢® ¡¤¯£¨¤¨e|e~cylhk{¤ªje~geeih{¡kh¢wkj£slnzzXe^^lv\hswwnxxsmytw{iY^ktd]sij}qkc^RNWJdXAJ4=F7?FD71<=?AD;;DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AJ[J/7ZO6)EY/DO1YC;?.=¥º¼¹¯¬³°ª¥¨°§°¼±©§¤¯°£¢¦«£¥§©²£¢¯¦¶¹¥®£¡ ¥{¥¢¨³Ä¸¤¡§¯¢££©©¡ ª°ª«¤ª ª¦¨ ¬¡¥°¤ª¡¥ª~½r´r
hx¹Ä¸q¢£z¦sª|ËÀÀ»q¢}À½ÂÁ{|ÃÀ}k¥²ooÊzwvzyqzqx
ymwcf_yd`ec^thldbXLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>I[L*#BP/#F[3PY/UAB;/8£¹Ã´°¯À©¨£¯©°®¦²´¯©¥¦¦±««¢ª§¢¬¢¥¨¥¤´¤¢¦«¸³§¯¢¥ ¡§¬¤«ÀÀ±¡©¯©¡¢£ª£ ¡®©¬§££§¡¥¥©¤¨©©¬¡¥¡¢Îxz¤x_®^§¢ |§t«¯^cªz§
t³c«¡³j¯t}¸aY£Ímu{Ú{p~v~e{vvk|o~
~m`rlpg`_yd\qhjcf`RTRW]KOC5AHED8>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-J0';\;L-!P@F4.1ÂÀ¿µ´°¸¤ª¨³«¥²¬¬«¤«¦°ª §¥¢¯ ¨§£¥¡°¬§®±ª¨¬ ¥¥§£®¤«°¨ÀƳ¨©±®¡©ª ¯§«©§¨¤¢«¬³¥¢ª©£¦¥¡° ¦ q
t¨q±|q¬~¡¥wª}r~«vz|~ª¢~«{{VÄzoÁ}muomeveoawnromfpuup`gme_oiingcWS\aYRSC8II@D<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1' '45-&7=WJ-<'>1)3V@F!G:C1.+°ÔÆƲ´ £££¢¬¯¶®¨±¦¨ª§««§¢£¢ ¥ª¡¥ ¨¨¢¯¬¨§¯¬¨¦©£¢¡¦£¯¬£¬´ª¹Í²¦¬¢®¬ ©²©ªª¬«¤£¬¯±¢¨«®¥¥ª©©±¢£¤
¤j¤uz©tz²p¦q ¤``R«®v®¦z{f£¤¤}©®^}©U¢z¢{ïÅr¯³³¹qb©¯Âthmpnyxxolfeeqpf|ib]W`iXXULLQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ('"+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÃÉÖÕ¿¡«§¡¯¢°´°¯©¢§¦ª««©¤¦ ¤¦§¦£«¢¬¡¤¯¢ª¤µ°¯ ©¦£¢¨ ¥°¦¤¨±·È²µª«©¢¥³ §¬¬¤®ª£¢ª¢³®¢ª³±¡©¨®¯¶¢¢§|ªlu«y|°o¤Ò¸´¸É²__©£ zxªÉt¤¨ªÆÆxf¡¥s}¯]p´b°uK£m§Gd|qq{u~{n[fjrpej_aXdm\^YINLKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75685/)(%&%$&),4ENPPMFKJVF*L0/=-5OTQ;<F2,$§¤ÀƸ©³¬¥¢²¹¬ª¡¦¨¥ª«ª§ ¦¥ª£¯«¦ ¬©¥§µ¢©ª¶²¬¥ ¥¬§£ ©¦®¡¤§©°µÂ²³ª¨¤¡£®¦¡¥¦«°®¨¦¬¤·¬ ±¹¯®§²³³¤§¢Nxz£}¤¦¸{|y¹~Ìƶx¡~v¤¤©°
¬}b¥l¤p
}r¬`£sq`¼}RUu¤{~u{s
q\mnxrjo[d_hnbd]KLQTAIHFI:9K>B108866877-*5==?BDGILNPTVXYZ[\__^]__\ZZZYUSOH@882.,*.+*'&?QTVWWWYXXWUOUF<E3:P[T6?H,- ©«¤«¹ª¯ ¡¬³³¥ ¥®®ª§¦¦£§¡³®¢©¦² ©¤£¶¢¢¢©µ¹£¢¢¡±§¥¡¢¯®¤¨¢¶²Ä±©©§¢¤¥¦¤©¯¢®¥¦¯¥¼¡¶·µ²¸±³¦¯ £
ѵ÷y
¦x¡w ¥qª´nrj£|s¯¥¢¦mp²\¥szl{|m©a£qqbs²¸hx¦}x}ymixiyrnu]ednmfg`J[XX<HG@U3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^__][ZZXURRQF:2230/++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH$)%s¿¿»º´§¤µ¡¢£¨§®«¬¦¢¦ µ§¢©§°£¬£¤®£ª´´¤¤¨® §¤§µ¡ª¤¶¬Ã°©«©¡¡ ¦¢¦¤¦¬¨®£¥¦¾¬½°¬¢°³¹«´¦¨±£§z¨}|°w¤¥m²o |¡§¬
®
© ¡{~«ªxy¯]£}¦§d|sj¯]¥kp
]`[ m¦{{kmc~tnz`geqnhggCZa[>KT3U8BBC7$$3+''3, /6674359@CFIKMNQSSSVZ]_a`aaa]][ZXSPONI8052.*,ATVVVTTUUUUTTUTSTVWWXVUUQHFIJ#((½©Æ¶Á³¬ ®¸¥£¤£°¯ª¤¹ £« ¯©®¡«©¤®±¬¦¦¬¬¡¡¥¡¥ ¨¦¶©À¯¥©¤¦¥¤¤©¬¬¤¥ª¨¾¤Ã¬ª¢¡«²¹ª®§ ³®¨©v¯~
|º®e°e}¡¦¬°
¦¤¡¡
[lj³`{{±lgo°[}´[¤kÈ¢d{¼Xv´Z²}R®z¬X¡n¨|y~dt~bxt|ajgqmfeeOUd\BU_>J(>9=4!",%2. *1/04579:<ACFHJLNPQRTWZ^```ab^_\[XUPNJFC553./@UZXWXWXXWWXWVWWWWXWWXYZZ\\XWWGB;Ò³²·½º´Â³£¬¦¥¶¨ ³³©£ µ ´¨ª¬¯¬¯¨¢¯¬¨§¢¦®¨¡¤¤£¥£ª²©½¯¥¨} ¨¡¨®¨¦¦£¥©» Ʀ¤¨¡«´µ¬®¦»¬¬©£¯¤¸Ãº§¬¯¦¥ª~սªb£¿½}~£×º¸µ
½¾k£o«lz²°Çj«°½¬xw¢¾¼t§zzc}{dgy{`lekjbPaZSj\@UaBN*=:4/$%2 $(0496678:>ACFGJKMNNQTW]a\__a^`[\YTQMHC?<A?5=SYXXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ»³´±¿¹±½²¢®¦¥²¦¥¿ª¸²¨¡¿¦§²±¹¨¯¦¦°¬®¥¢¬¡£ª£¦§¡¨¢¡¬ª¹®¨£{¦¨ ©©¡ª§¡£ª»¨Ä¢ ®£ª³´ª°© º§®®suª¤·e pgmow¤u®pq¨£®¤rmmmexonqzjqigqiigpd]bjoY\g~w¦_aqned¢}vfxikyydlcflbKdXJlZ:QeER'K:+# ",)-2.5:4579<?ABDEHKLMOQSV]WZ\``a]][TPLHD=:AB7MXZZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨³©¹¹²³ª©¡®£²©¾²Äɾ¶ªÀ¬¬£¡¨¬ º£¤®¬¦®©
¦«¡££¤§¨£ª ¦¦§¯º¬¬{¥¨©£±¦¢«¹¯À§¤²¥¬°±ª«§·£· ¨¥¶¢©©³£« ±¢ ¢ ¥¡«§
¤}g~tvtq§lz¡¢riwqxw|zjldcodU`X@j[HcaOZ+F=+'!740.!%2(*699469;>?ABDEJKKMPPQXUVY^`ac\^UQJED>9=@ASX[\YWXXXXXYXXZ[[\^__`^^^__```_YY`¥©ª¥µ¶®®¢°£ µ±¬Ç½Å»¹«¢¦¦±¨£¶§©´§¨¬¢§¬¥ §£¨¨¦¡£§¡µ»¨«{ ¥ª ¶£§«·§®Á®£¶¦¯¯°¬©©³¸ ®¼¥¤¦¶¢¦©£¬¯¡£°¨¯£ £©«¡ª
}f
uuysj
}¢¢{rszr|jod^pja[_YncP`dPZ:GGE>2==8/+&+)&&406668:==?AACIJGJKLMSSSUZ``i`eUPJACB:9EMV[^^[Z\[[[\]]__]^__aabaaa`bbbdb\[c¤¨£°³¬®£©¦ §µª¥´¼¯¢£z¢±¤¥±©¸¦£ª£®¢§¡®ª¨¨©¹¶¥¦y¢¨¸£¯µ¢¯¯u¤½£² wy ª²ºu¬¤ªd\bv ¤}n³£§ª£esyp¨l¢§e¥wjvp{aiZuhhs{¦eyxjoykqe_vplkh\gebbpS\>NNNSG>@TD91/&4:316678<;>@AAFHBGFIKMTTUY]`hfgWQJ<DG<8UR[`ab`^`_`aa_\]__`aabcdabaaedchd^]f¦£¡¯±¬«©¥©®£§¤«¶°²§«¦¬t¯¨ª§¹ ¤«¢§¡u®¦¨¤º´¨ uw ¦²µ³¼§ ~§¢z¢®¶¦±©¯£y¬¢§©§
w¥z§{±z cympyp
txht t}¢k
lx{qqgdxojlj\fkjet\_ITLQ@E5.ZTU7)!09=>643568;:=>>@DI?IEJKGSX[Y[aaifYQH9EK<>aV^bded`aa`bb_]`aabbbcfgcba`edcgcaah£¦®«¨¬ ¨±¦§©¥®È¾±¢§©µ¬§¢ ¾ |¬¡ ¨¢£º²§
pu ¤«´´Êª®·
¯°®©¥}¨r{w§h¤y´¦¨Â«¡r¥}
±¡}¡ |
mr
yq|uÅf©£k£q
hwt|whhuqhhk^dpmgmXgG]RM2E46Nac7&3<EGD:64658;8>==?BM?NIJLCPZ]\Wa^jm\QE=LM@JdX]cfhgbbbbcc`_babccceiicbbbecafcbbi¢°§©¨¦« ¤¸±ª«§ £¤«¤¥ª·£¯¡§¥½¡y«¡
w¤£¹®¥~bm ¡¡§~¡§
«®£©£uk¬uM«x¨§©«}¡{z§ikg¶~n`dY{dhr}yl]{m_Sp\_ky`Ye}p§ªk£nr¥p
if m[n|fZ`bWPowfmtrkjo^kpmliXiO]XF9A4GD^k4,ICRMN=84859;6@;;>BO>QRLMBJ\]_W^^cv`MD:MOMTb\\ffiibbdbddbab`bdcacikdbddgdbgeach ¸ ª¤¦¬¡µ¼¬®¢ ¢¥¬®¡®µ¢¨¡ ¦´u¦
¬¤©¦±§¢in¢ ¡¤£¡ w§¡§©¬¥x|~¢ps{ym¨{¢sv¦f~w¤_z}s¢n·´ºtµ¨dƸ{p·q¤bs¬«`}i³~n|q£lr£t£`³q|³ts[²jbotvqioXklrrf]i^bKE=D6QAYq3=SG_JR=<395::6D;;@JP?UMNQ@E_^[YX``|dHC8LWUVcaZefkkbbeadc`ab`dd_`cknccddhdbgfchh£¸« ¤·µ® ¢££¦®±¬¡¡¤«x
q¡}¨ £©¨¥
~k{~} w¢r¡¨¥§ª~~z z£xt}¦¢d¡|lhn{§}rht«tªh]
vhªj¸f\¨p`^§vu~hunm§]¨~x»k~ª[]³g\nrzxki\qjxyc`fXbAQEO7VCRo5KZZ_OZD@151;;6H?:CHU>YRY]>Db^V`Qac}jEB9N[]YefXfgnmbbe_aa__``ec^bdoq_deekecihgkiªµ§c«º²°¬¦©®°¨¬¤¡ £jr{z£©£ ix{¢ ¡rhp©¢§§|¯£¢¸w£³¢¤y{ª¢q¡|
¯µ}k¡x~´££«¨|}tªZ]o{xbL~zz
cyBLY¢jr|mux±³§vns}osk¤]vHedasq~~nf`liv{debR^W]UW@ZFQhDSW\bX^ID=B8?B:IF8LEXAWQ[VDFb\Z`K`m~rEC<U_bZfjVghmobfg^aa\]^ahb_ecvl^egfkdflihki°T^ ¦³¹³³©¢«©¢«¤¡¨¡woy
|r¡s
©|l
q¡x
|£ £}µ{¥z© |§hwm~t¡sq|p®}¤¦£o^¨gu¢co¥aÓ|{xrsc¢~£s¤vk³`sª²¨¼wm~¾¦©´^n}qnr¢r]¤gs¦ah¦mÔ}
pzzk|xsn©¤gaeypkgfdnuwg`cT[fQQbIWJT`WS[ej\eQFCKMJKBKE8O@QNXRYOSQafejRcwywIFEc]eZhiTihjocjg`c`\]]_hbahe|d^dgdkdjmghlh°«T\K~©¯±´°³£
© ¤¥¨ © {p}h}wol|¤ª
zvnx¢{£¤³¡¢¶z¬§¤®¥p¨
{¤¡r£®¯¤¡v´µµÉ¡s`©my u¡w ~oLf£pr¤{ztak~ kqd_q}tizi³µ´Æ¦s~zk«umuxizurPE}´^jvkyfjhbtupnV^TYiPShIVMYSV]hknVgWMKAIMKHJOAQKPecimeussy|nu{{TPNl^h[kiRjhilglfce_\]\^ibdik{_]dhcjfomeile¡¯¦f?¡³«¯¯¶¢¢ª¢¢¥¥§¦yjye yui
z¦©z}yp¡y ¥§fnxl¢d|q¥wpg¦{¤zrv¹n¢b}¡mri«ju mn¦_ihu¢}`uobh e~iuocfmr¢Z_[b¡m]o{~srd¥mw¢dg§hso¢oSo _e¨T^TnmskrmpikyskoRYWWgZTmIYO]HXiisjYkVQREV\LXSaUik_wtz}p}|r{svv^QrbgbpgPjhhklnhdg_]^]`kbjivu]\cicjjslfkmc¤¦zetm§®¤©°±¦«¦¢¡¢¢{qh|st}{d|¨¢¬~si¥} ª¦¦x~¥²¯¥wy©t¤n¤¢»n}¥¯|¥zq¨ f~o«cx¨l©¢vwª¦j°kv³©kmm`~«ªv~¥v}¤ jw¬g¶tw¾¤Y¦«aurtp|uqcj~nhlSW[Vab]kM]R]I^nnv`[qY[`Zgtenoqbqt`wz~yrys{{vbxdcmsdRkgholrjfia_^\bkbmlzo\\bibljwmglnb¥ª¤©ª¨§®¤«¤¥©
tzo~ttrm}{
¦¥¦
vol©ª£ u~y®£q
x~{r¦q}}zx{~~v z}k
[yxrzphn~quqe^wusuoynnm
^vhxe
©}t|jpv}vmmgsy{x
[kXyinwrqpxxp]lnigV[`W\ekcUbU_Q_pxxlkvejkkv}qrtsaoubt{xuyuy
}{mldxn^Wnghukxjije\`ZciflqunZ[bkdllynhloa¸¨¦¡¢¦¤¥«£¡¬¡¦©~r|}~
{srp
{}
x}¤|§¡
wr
©
¨ ª~~¨¦woyo}¨
p}qkp}hm]sqtkvtXrn}~j]jd{
`ixz{u
gwkapqv^r¦
enwqzpfge{z[\jgnv[{ywunssf\mkkbZZ_ZYlq\_aZ^]ft~ztotckkj{}s{xtdmuhm|~vz|{zz~o{}s~ysiT\qiluougkhd]aXkhlkqrmW[enlgsyohjm`ª°¡£¡¨£¢~¢¥{|s}v
qor~z §¡x
z¬¡«¢¢££ª¡§¦ {w§~~²¦²¥k|wxe|w|yt¡~}uosw¦
}wl}zjrhatp}zwwovt]^ohn_^Z]]ShrUc\\alhu||sopdkji|nyqjpplg{rx}{m|zx|}zyNdvjrmpzekecb`[tfpfrqmU]ltmiyzqgikd¹¢¡¤¡|« }y{nxr~mk~z}«r}{ª¦¢
¦¥v{¥{|ª¡ª~ox
rt`u
~
myut¡
s||rr{zx¦
w}ol~|nhlmg_zh}{vtvu{w\_p}nt`c[]^QgnTdZ^bkivz~qlldkjglslltoyo
ynv~
vq~{{|{`i|juhiejc`i\cuhobtmlUcqyepzzsejml·¡¤{x§¥yz
|n{xs
}}kh}|}}¨p¡¢
|¨x£ £¡£~
x ~|¤ ¡¦~~ttpv`~q|q
gwqx~}r{|qxzzy¥
{
v{fr|y{qljf_~sh|uvs|sj^`svpwdcY_^RkiTdY_ahjvyqfkdlhekm~hoqk}xzks~tv~|z}jrnsibhlb_qVtomn`xhmWjtvcuz{rbjoy²¤¥ |v¥¡¢x{~q{tv
~xgc}x}y ~p¦¦
w¡¡y~¤y
w~r£¡¢|vq}nzd|
pleuo{|w{
|{q~w
y¢ww|w`yx}txgleaijwstu}q|bcasntrmaZa^[leRcX`aikvyqcjcmeh}lhuhloi|ymqt|~z~|mvttmeljbcuViqn`xglbjvpfy|yq_ql
®¦¨}xªzy{}||xtyzt}d^}
t}~}¤¢s{§ s¦sk
zo£|yqykul|~~m
xp}~dri{~sx}vw|
|¤xt}tvoa{uzq}obocd{bnovsxwstau`oluno\\_^^k^P]Xcahmt{k_jfjchwnflhjlh|zwns}tz}z}}rzxxnljh_irbhqoevgnlayik}{xpawmª £¨~w®}w}{|{vxptt{o
}|a[~szz¥}}¤
n¢¡nf
zp¢}{srukpnu{tnqu{|dplx}}tsyn}
{
¨z|~
x~qpchytup|b_pakt^pj{yxlspex]nlsmsXZ__bkZPWXecgqq~f]ihgbgqndigdihzwuo
t{u
w
|x
zw{zrxjk_phtjromqgole|cnzwqlww~¢¡¨ ¦uª¡t{v
xyrs{
krpzmvnq[X~vu ¡x
m¡
j£f
~w~||nuplmop{
isqwuxfrnu{zyvso{
z
£{uxxol^rtrppxZ^p`pj^oj}zpmmjlv`pojqmZXaabnXQSZfgcuob]kmdbfkn`ff_gkuqspuxux
ww
|{vjqc|c|nqltjholvx_qy|tut~¤¦
u zrxtpr
squkomumv~mnUQ«xwrz x{¤|r
~h
g
qx{z||kvjnkll{~az~wzx|ygsls~{qyovzz}|{w}wqjlz`xpnlrtV^obr`_lnyphoffsthpkawe]Vf``rSQN\fe^yp|_\hrbbefj_hd[gp~pkqt}v|
tu~y{xs
~{yxfrj`}ookz`jntu_t}xxts
|x ±¥
vtvspo
spqojivnn}}musRMßÈÖ|puvw{s
¡~~wz~zugl¢
cqz{y
|~l{erokkyy\y{}~zzhrjs
|k}~n~|y|vxxsmgqmjtohjtnS^odpY_kqwfkjbfxropc_w``Vk_^vPNKagc]zpt\\ev`aeecafbXissmjqv}tyuv~sz~r|~vesn}e~opkZlnyysavz{vrwwy¯
w~}
twpyqnomn~rdexp}mz}jhkc¤ÁÜ®ï¡slvv¢
o r
£
~zuxvvn
}£
^m{}
v
}}k}dxuinxsXz
y~
~xeri
kum~zuswusqguzbtmpbivgRaqglU_ntyard_h}prnZcrabWnY\xNMLdgb^wsm\\dy^`de
`cc^Yjrknkrw~twxw{q}~{t~~shuqymzntpWqzvyqewyhvr§£
}pxy
¡|{rwpsjokim|u^axw{qu{g`d|ëÚµÉÃÜsltvjq
|{
vxrup¡aj}}q~qwhvriswlZ|
}uask~~}mkx
||nqzulqlry`tin]kv`ReqifS`pvt`o`]hqsiWghbiXmV[uLKLfg_brs
i[\ey^^dg{`d_]Yknfoisx~ss~zvzs
|vw{ulwuyxtnx{|Xzqogxwcv
q
¡¢sorw}|xqsnodr~hflwx[_y{{qqjagaÕ¶¦xnqw|qj{i|{}ztzzpu
u~ag}~~m|tkmwtsvukc
~|~o_rp{|~ypfy{}noy~umokl{~chkjYnvZSiribQbrwlbe^Zjmsb[g_dl_nT[pNHOge\gnql[[cs`\clwde]]Zklbmjtwqp|}txx
}uy|vpwy{om|w^tmiztsgs|r vv~mv~|v}vqoljau|fbiuzZ_w|zmqedhgW^qs¼Ävq~stk{|}|u
uv}qurt{e}
r}g}{y}i}vfoxxsvslj
yj^qwz}
{~rhx
x|}nlz}wtoih}we]qcXpsSTnribNgtxf`]\XnosYeb]jm`pOYlRDThaZknm{oZ[^lcZcovdg\]`kjclisvqn~{tuz|
v~xtryyoo|qiyz~mm|vkjxtk
n}vjxyozspljd`tzh_er{Zar|yfpzaee±²wJbZ¤ÙÐr{x~
plzy|xxoqt}ziy
¥o~vx
oz}oxh
xr|e}~ucprhxqou
{vxyj[p|r
}
zrmprxwmn~wzehj}r`YwZYrmNXrsf`Jmvta][[Yt}roWg]fjp_oNWiR?Yg_[pjgyq\ZYkeYcpy_h]^elhfliqwom}upzv
qq{|zzujzko~t}or|{poxf¡
gphz~
|ixrklf_aoym_boy\dlzaqv_eeÕë¾2:>ry
vnl
u}
|xnvwnlu{tfy§}ntvy
~{xlri~xm|{xayqdqh~mtqt
~su}so[k}tx{|xypkrx~tmjvuu\iixqYW}SZqeL[rre[Jpwo][ZY]t~thYb[genbiMWfQ=^f]]vf_tp[YUodZdpyZh^`gmgilipx}ljyn{}zu
pnw~{{h{~kt{r{sw}zx~|kl~ki{~}kuqghc[bgso_alsahpzast^cd n\5Y¯µuj}vtwpl
tyx|z~rgv~}op}hvymey¥~m}v||q{}
|i~mj{zjzvr`w~qdrgumu{
|owy|t~mWm~vswuyxrmr~}}znmimun]hftrR[{N\q\O\rodVKsxjWYYZaqt`]]`fdhhfNZhNAad[`va\umXXStaZdnrWj^bhkgmlipw|li}}p~~{zwr{oqw{j~{nxyvw}x~zm
£{vykmy}{}pqpcf^Yg_pp``gpfjouato[adiv{¾¦£È¸r
s}xtrrp{sutwyyqcwyhrufwvcj|}q~sxwzkxy~uhzikysizv}h`w~jjsh{iv~z~~q{v{t}aUu|rr|pwxpo~}x}|u
vhqhlrp]hctnKevL^oUTYsmbQOtxaRWX\aps[`\hedcjdP[qIDda\dq^\whUWVw^\enhVl^ajgeoohpw{niy~r{~y|v}pvrmw~p|xyztxyvo~}zw|htz|vgom_d\XeYmsa`aqllhn`siY^dmw©ÚªÇ²rxpu{zutu~woq~m
txtl`zyeqogun[m}y}wzmus
{
muvnhwem|vmjvv|abxzhuuc~zgt{tuqz|lYUr}ot~xksxjt}z|x{r|sgsemmt[j_veHnoL[bWWVxmbPStvXPUX^`qo\`cmdc^nbT]rGCf_]fh^Z{bRV\u[[gkaVk_anfflqhpvxtkuvx}w{t}oqtqu~{wx|}
x|}~{~svyzwuy^~ytw{bnl[b[[aVjtc`[hopgraqfW]ck|Êι¢kmnmr
r}
{
zytyutzjmucvwpg^|yeqjjqcXl{sw~{mpp
zy~qqo}ghrbmxrjlqw}|z]eywiuxfvgt|rin~ym|]Wp}ms{nnpvgv~~u{qzt{yqeranlsXk_x\IolMWV^TU{kaOTurQQTV^bt
h\`kjfbYnaXbpGAh]`f^]V{^OVdpZ[jh]Wg`_rfjhrgpswxntzw~yus
pp{wwuy
z|u~}~~}|xuyw~}nuydto
ztcnjY_[]]Tgse`YdrrgsbkdW[`ix¾®{·nbsht|rz{}xxsvo{vejnausjb^~xyfq}hjkZVox£
qqxtmr
}ytrohyajm`mvkgkkzwzw[g}|xes}nteu~pfkztltb[n{kt|zft}mpgt~w}~q{kz{ywpelam~mnVk`wVKklOROhNY|gbNUukMPTU^gvf]aphg`Wi]\khJEjZbdWYUyZNWnjY]le\Yec^tfldrgrptxp
v~x|
}usnsxzzss
y}v|{~{w|wwziv~|l
rq~oflgW][\[Sdpe_XcruivpeebW\\hporseeyjtvss
xzwtunjzpbgkgtnf^_|o{~hlwfidUWrp§||vs|r{ymzzv{}uprmgu]mh_ludgfizo{rYgvugpxuaw
|njmzpere`lyfrv{}auvikqtzpyxr|f~~~xvnceam|mkVjbqTLikPLNpG^{faMUtdJNSWajw~e]gsie_VcWbp]KKkXcbUTUsWLYvdZ_k`\Zce_wgmbpisoq~utwx~
z}v~
nrt{ztq
zuu}
|~z~v{£¥y
lu|{uzo
sz
}unjheV][[ZScne[Xat{jimh_bW_Ziikoglahzykttto
z}vunzhjyj_enhwgeXbwi~zoioff]UXoh§vz|xuo~nrtx~wt
vjrvgho\me^ms_gajxh{m[mssio~yw`vxsqpyqcqh[nvdps{xarpgixsqkwvtvc{~wupcccm|}kkUibgTKlhPGRlEawfbMTr]JLTYdkwze_mpid\V_UnnWJShXf^XMUlTK\z_[_k]][be`zhlaoounowuz}wyzyz}qtt~yvt
}}ls{
}~{v¬zlryvtno|tjpmddX_ZZZUbjg[Z_ui^nl\aV\\kert}ij]lwvgtwrn{~}yvslzgixf]drgzwccTeogwvfhi`WVYhd§n~xzpp|fxnyzvq}~ndvsdhh]lb]oo[g^ltezi]torkq{~uuat
zwru~taolYprbqq{udrl`lzojhzwtqetyzuqdadms~jlTi^^ULscQGWbGcvfaKTpXJKWXgkvzdempfcZX]XvfTJ\cXhXYIWeQHbyZ]`l[^\bd^ij_otxnonvyr}~uvx}suuyzz}~jt{}~
yz~|sq{{~fqzt}}vrol{~mzbpoae^eVYYWcfk`]]siYqn[^WZ\l{cqwvmc[msthuvqm
yywnotehte[gtfvvz_]Refjt}aci\TX^bc¥hytxlnygwl{ztrx{xhevm`fa_j`]tkYe]onbzf[x|knnpxyttdrzvoq|rawcZnoapq|seqd^mvicfxzsmnts|sqa^emo}eiThYZUNy`RKZYHbtdaITmSIKZWilr{cllscaYZ[av\SKc]XiSWHY`NGjvX_am[[_bc]
ihanxylojvxm~vussqvvw|}~~~px}yxy~ssp¡{{yduysyvkspky|pr^po`gblTZYWhcmf\\rfSrn[YXX`lvdjujj_[mtqmtttk||wonldiqc[krdtvs\WTd`q~q\ac]SZ`\cerqtkjylnozzzqwryzzdfug^b[ah\^whWb]phaxa[{vjirowtstip~vrjp{mevW[jmbprzseo~[`oqb^io|lks}rpxkp`[ekm{agTgUXRQw\SPYRHcsb`GVkQHOZUkkk|emoqa[ZXYlpWROfWWiSTFZ\OHruY`dmcXa`a^jcdmyxkoiuy{k}
|y}mqowz|t}tx
utpuo¢t{{fwon|pfxqzlsvsk^tnagekR][Vhbll[\qdNon]VXUgithctee]Znunpuuzl}|wscekna\nmcsxkZTVbcw||p
\c_cT[`Ybcnpsjgynerurzkyttnz~u_fsc[^WbdYaufU_`mcaq]]~ohisqspuukl{
qrfn{oqnSZejeqsvsblvUbqk[^nd|eku|rrrjm_Ycijx^fTeUVPUnXRWTOHer_aFXjNHWTVmhd|ikwjaW\U[tdSRVhQYfTSHZ[PNxw[`fliZb`^^nbfkyunnivv~m~{~krgt{u~r}
{ss}un¤swxn{`d|qgzsylmqvgd|lcfghS__Ug`lo\^nhMim`UVSofslexde]Yqumr{xsm{w{zlaelm^`njepy~gZVX`kw{zo^b^gVY`Wcbkq|wkjvl[vpkyiurmn{rXjn^Y]VbdXeqcT^bibbmZ`~kfksunmwvkh
~zmqfo{lqlbX_hhosts^imSepdUbnaybou{ujolj_X`fhu]eVbVSOYfSO]OOHeo]cGZiMI_KXmd_xhn}d`U^T]t[TR_fN]bTSJ\ZQZvv]_fmhXba[^qcgjwqsmgvsys{~|yntlss
z}|rstwqn~zz}~~}}~~}~~~~~~~}z{|}~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~mfggggg}
]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDEB1/0000.\pnmnnojfggggfo
}}{{z}~||~}}}~}}~~~~~
g_```_^yS7¤¤¤¤¤¤£r]____aR4555553Sjgggghc_____^j|}zzz|}{|~}}}~}}~~~~
|y{z{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{||}}}}~~~~~~~
~wxz{zz|||{}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{z{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{~~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}
|suv{||{|}}}~~}~~~~}~}~~~|xrtx|||{||}}~~~~~~}~~~~mqxrvy|}|z}|}}~~~~~~~~g}t~ssvx}~|y}|}}~~~}~~hp|t{
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~]ivme{{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
gfm^igt
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxz}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvuuvwq`tnaptjehklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkiffggghgcfnm]lupebcbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__ac_\_]`]^Z]fjoqqsteYY_[XWSNMKKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSTPMJMNPRONQ_cenoonbOQTPPNNOMJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTtsuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNOLMP_hgmnlgaRMNOOPONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKKHFINXfmhlmljhc\WUQOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBPZ[]dioikljijikkcRHJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:;>>=L^glknkomiijleTICDEEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@:;><;;<;GKG]mmnxqijhVHAEFDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprttsqrvyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<979;;>;:OipzslcI=@@CFDCCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtsurqtxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::979::78:99::AWtqX?7<<=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==?@===?C;===<>;;W_::<>=>?@A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCDA?=>@A?@;]n@>DE??A;FX;==;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVppqssttuyz{{|~~~~~~mLPQNOPNNOPPO><<=>??@>@@???BFD><<=@=8:;mwH8;:==A;I[:<=<8:;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}|~~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABA@YQ<==ILEFuwM788:;>>P`;;=<::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@CsyI;]y|wV<=?==>B]jA;=>?==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy|||||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCEAHrykb}]>@C@@>FnvM:=AEABBFHC=<@DDA@?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{{{}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Fot}~}uLACE@??W|\?CEIJIIMMKECFGGEGEEEDDCA?@>>BFJJGEEGFFJNNKJIGGHKLIGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEhs}|~y
qBDEDCWu~XGHJMLNOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHHHGFEFFFDFHGEEHHFHGHFQnnpqruvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJG`{w
lAAVtWHLMLMNLJGGGGDGGGGFHFHECDDFEDDHHCCCFIJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrsvwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLN[|
Ul|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD?>?DFHDEGIJIIGHHGIIJJIHFJJJJIJIJJJFILLJJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLLJU
uIIFB??@???<<<>::<AA@><998<<=;>;9;?AB@ACCB@ABDDBCFHIHHHLMLGIJMMNMJJKKJLMSlpqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJJIe
fBB=88::9878896479;<:8567689787688;;;=@;999=<>;;=ACEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIj~T:8656766645763468:876565676778:67789;7578979876:<@GFIFIFEFOSRSSROPPRTepqsttwy{{{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=ECBf
G676468874578567699766765:9:::;898987779:98878589;A=>>BA?AKLOQPQOOORWkqrttuwz{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B:=qz>988;<=>9::<9:;9:;:99;:9===>;;<=:=;9;;<;<<99<8::;:999<?<=ABDIJMKIKLWorsusvx{{||{}~~}}}}~~~TFEFILNNLJJMB?:;<;89989:::;?>H~
l<;>BCEEAA@B>@B@@>==>@?>?@?@==?B?AA?A?=@@@>?A=><;:;99;?=;<==AACABCAXpqtttvz{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<=:;;==?@BR
^>DGIKJIFGGDFHGEC@@CECB@BCB?@DHDCECEEAFEFDEFD@B?<@>=?@>?>?>?>>:;=<`qrttuwzz{}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@CCFW
VHMLMKNJIKHIJJIECDFGFDCEFDBHIKHGGFGGEKIKIJKJCFCCDBAACBDCCDDCA=;=@hpsttwwyx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@?A>BBGGJY
PNPNLNKJLJIIHJFDGHHIEEHFFELLMIJGGHIJNMNLLNKHFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?EGG=<@@87<;<=:?@>?@CFIJQ_
rNRONLLLLJHGEIIDJHGKJHJGGGKLNLLHHIJMPNPNMOKIGIJHIDIHHFFGGHGCBACUnpuwwy{xyzz||}~~~~}~}~~~~~TDAABGHB?8?@8:<8=>;=A>?ADHJLUq
_RRPMNMKJGEBGJGLJFKNKKJJMMLOPNHIKLOQQPQOOJHJJLJKFGHGEGIFEEBABB\orwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAGKLPVy
|WVRRTROLKJDEFKONOWUQPOQSRMSTOMSLPSUVRSQPLJMMMKNGGJFFHJDDEEBDCcpuyyzzz{z{zz|~}}~}}}}|}~~UFFGGGGHF>@B=?==B?CBFVNFNPPTX{
hWUkaERQQPI;;QSR`u]UVTVYYRXXRZfPUWZ]RTWQONRPPPQKKKHHJHEFIIIHIirvyxyyz{{|z{|}|}~}}}}}}~~~SHJIHGFFE??AAEACGEDELXRMTUVX[|
}al[dU:XXXSQ?@VUY[c`VYbr]]V]ZVEQYZ[Y_TYgRVVXTTVTOOMJLJIILMKOMSosvxyxwzyz{zz|}{~~}~}}}~}~~~~VJJIHGEDDBA?HMIMPKIKPTSSXZZ\\x
g;~znpXZ\[RSRVVTZZtYU}`\X]^WIV]][[_YHYXY[]XXYWRQMPQMMOSQQURassvwwvxxxz{z|}}}~}~}}}~~xy}YNKIIHFBD@A:PQQWXPPOQSTTXXYZ[n
n~fYY\YTUTWRQWUbQerXZW_hP`f[[X\gaGOZhg\[\]]WSNSPPQVVVVYZnrtwvvuxxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQORRRUSVTW_ux
}{\PUXTRTRQQLOLKfy[]TYUV]ZLTZUST^ZXWWWzkX[[\^TQQPINOWVX[Zdprvvttvxyy{{||}}~}}}~}}~~~zxwvsu{tk~~kry^[VUSROKFCDAM^lVRSNOQOQURSRRTcdv
~ymqVIKMNKMKHJDFHEC>TdURQQNKRTQMOYQMNQSUUMQSRPOMLHCIHRTUZ\lquvusswzz{{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]][YVPLILIaltPQSNQRQR[RSRQRVTbs{|}{{
u_]KC?CCCCB?DPBC@C=CIGV@HNLG]iPHFNFDEFIGHCDHGHKGDBAD@NQMRdrtvustuz|z{{{||}|{~}}}~~||}}vt{mh|gnqfiedb\XSQPURsWe[OONLQSQUYSUQQTROV`klrv{{xytrnstsyx~~kMG?@:;>@@??>jQKaEFHIEB?GLNGMQUIBE?><=<==?=?ACC@?<=B>JMGUnttustvxz|z}{|}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QRZ\Y^JJPQNKLQRQTUUWQQWVPX[b]agmmlokg`nrjmlqu{z}{xz||xwxeC@@B=:BCAADB\]O{NONNKLMOOQLKLWMHG@B<977599=;;;8989?<BH?\stuvuvxz|||}||}}~~|}}}}~}xuvz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIHPRQOMPQNQRTVXSRYTNYZ[WY]^^_e`]^qvk^`gkwooljonnlfbYHFGHBAGIEEFDMRPaWRWQPSSRU[OOQWPMIDF>:96587979:365795<B=essvwwyz{}}||{|}~~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMKTTSPQUOLRSTWXTTXQLWYZVXXVXY]WWXhsk]Vaskaa_^da_^YTQNNNLIHJKIIFCQPS[WTTNQSYS\eUOSTQNKIHC?A9988978857578599Gnrtxxy{{}~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOUVXXYSUTLKTVUUUWPTUWTUR]n^RNY_[VY;DVXT[fJLORROMMNNNLJFQPUYSTOJNOUST\VRUSROMLIHHF?>=:787659967675Wpptwyz{|}~}~||}|~}}y}}|~~~}||}}~}|rvqxxrvuqqnppopuvtnjddjppqrpnfedc\^RTZVWUTWTRXXYYYRUOIGOPOOMRJOPOPNNOTLMIPOSTU2=XMI@Q=caQSQPNPQPNNMQNTRPRMILJORPRRSTQROLLKLLHCBA=::876;B5566:doruxx{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqniihpVVTUXUWURWVUZYXWUQSFEAFGGHFJDHJIGEHLHKIFLMPMG/E_R>3?>joaRRQ@GUQPQPQNQOPOLJLLOPNNPQQNPOJLMMKGEEDB;=<<9=G6677Dmptvz{{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknaePSTRSTOWVVYYVQQQO@=;=?ABAC@BEDA@GHGHEFHJMKEGCORC8ENS]fSQSAGUPOQQPMMNMKLKLNOOQMOOMHLLIKKLKGFFED<AA>;@E;<89Spruy{z{}||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLOOMQSLTUTXWUMLKI<987;?@><=A@B=>EHGCFFIGJJ@FAA@FHEJOHPRa\QPRNSOOPLLOMKMLMON[WKMQOGIHCHJKLJFFFD?BC><BG?B?Adptw{zz{|{zzw{wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHDD=9779?B>;?B@@>ADIECGGIFIEBB?>=CBAGIDMObeQMNNWKLMKLMMMLKNNSdNJLRIIIEAHJLMNJGIFBAB@?EFEHDKnovyyy{{z|zwsxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLMIMPMPOHJD?A=999:?B?<@BBADEGKFCHIGGHCC?B??@A>DECKNRTLJIMTFIIJLJKLIJLMOPRPKGCLGCBJJLMONIJIGCCCDIJMLIYrmwyxz{{y|vrpurtxyvxjqnjllnttmtu{stxronqovsnporpopstyjN`gsjt|ygosqiqhdqHKDGHHGJKIJKDGB=>=:::;AB?=BBCCGFILJDIIFGGCC;A@B>@@BECIMPHHKGHKDHIKMHJLHIJKJM\RHHDNFADKJMMPMKMJKFGGJMNQNLbmivvw{x{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoiktgdoFKCFEGEFFGEGBC@=<=9:::@C@>BCDEIEIJLFIIGFFDB;BCC>@CCCEGLNHKNHDHEILNMHILGFGIILNKIHENIBFMLNMOMNNMKIHIORQRNRfffqosxu{z|lhjnekqlsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGJDFFECCCE@DB>@?:;;=:=>CA>ACEFJFIHKHGGGFEC@=EEB>BDCCEGHIGMPJFFGKNOKFHJFEDEIJHKIFHPKCIMLPMONOPNJJHMRUTROWd`amgproryzgehhdilfqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutwljuumrvqlnlerLGEEGCBABD=BA>A=9:=?:=>@B>@BDGJFJFIHFFGECBAAFFCBCBDEEGGHFLQLIOJJLLIGHEGFDCIIHKJGKRMBNOMPOOOMNOKKKPUWVUTX_^\iaminhrsbefedihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwujsunutsqrjksMGHFHBB@DD<A@@C<89=>9?<?B@@@DFHEHFFHGFFDCECDIECFEBEGEFGGEJMKHQMJKHHIEFHIFCIJIKMKOSNDQRPQRNPMNPMLMSWVWXVX]Z]d`hbjigk_eefcgggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxmouorsuqqioyMHGHHBBBFD<?BBD<7:>>:>:@B>??BEFDFDDHFDECDEFGJEEJGCGHFHGECFJJGMJLKHJLFIIKHEKKLMNORTOHSUSPSOQMNQNMPWZVZYVZ]ZXa```^hec`dfhgjihjfhnllnmqpiuuxrrpupppruvpusuvu{~}xvtwvvvxplupmstnprrxNIHGICACHE<@EBE=8:>>=<<AB<?>ABFCEBCHECEEFGGGIFGKHCIHGIGFDHKIGKHMKJKLHLKMKJNLONORUVOKUWSQSQRLOQPOTYZY\ZY[^^^`c^\ackb`dghr
hgjfjmnponsrjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqvotMIKHJFBEGE<@GCD@:<>@?>?BA<@>AAFBEDDIEFEGEHHFHHIKIEJHHKHFFLIHHJGLLLLLIMKMMMOLPPQUVWOKVVUSSQQLOSRPV[[]^[\^__a`ad]d`ef`ehjcssfjhglprqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrvnvJKLJLGBEDE<@FDDC;??A@@@CA?B?ACHBFEFHFIFFDIHGIHJMHHJJILJFJKHIJJGKKMMJJMLNNNPLOPRTXVMNTVTRRQPLNTSRW[^^_]]`_`aa_acebchbdijgvljigmosqpqppryvruutsmmssmqrotutrpswtuuwvuuteqskpqjrvowKMLKMGDCAD<?EEEC=AACBBCDACDAAEGCHGGGFJGDGJGGJFILHIJMKMLGKIHKKNQKRQMSMKNNOPPOTOWXX[NSQW\ZRWPNTUTTXZ_bb_da^`b^`eaacingbihhnxvlhimosrpqrrrvtsusssnksqmprotvrqquvuswywutucmtkopjqtowLNLLLGEA@D>>DEFC@CAEDDFBCEGCCHECHIIHIKGDKJGHJIIKHJJNLNLILHJLKZfJd\KlSHON_nUks[qpbwcSPbvuhucav`Xnqbdvinzf[lt`lkT_wvijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqrqyLNJJJFC?@B?=DEFDCDBEEDFBFFGDDJEEJLLJLLGGMIGIKHKKIKKNLMMLLILML[sbdp^lmUMNfs]geqlntgpi_aYnnbppbkjjgoqtetno\ougpMJryvkb`keemxlkvmnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIHGED@BB@>CFGBFCFEFEDCHHGDEKHGLMNKMMFJNHJKJILJJJKLMNNMMJMMM[roonpplkMPQlWNibtrpamnu\YlQ\mmZqmkomxxtsip\_rkqjUuyxpc^kfbgppjjopprspqpqqrrqqrrtlmrmnnorutqtrtuutuuzvutenukpolsrryIKGHEEEBBB>@@FGBGDIEEEBFIHHEGLJGMMNLMNGLMILKIJMIJIJKOPONMKNML\hdu]lqWlNPQmUZk^klvaldsSecNmYl\tpkilxjwuhp]^rkhWbcw|oc`ggadityknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvHMGIDEECAB<BABFDHGLHECCHKHHFJLLFNKLSRLGLLHNJHHNHJJIHNOMNLJNMJZsppoqqmlOQRnYqkgooqqomt]nXat_nopoqronusttj[]tcwxrjnzhaacfbbjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyxtukoumtonssvsHKHIBEEEA@=CDBGCHIMIFCFJLIGFJMLFOJKWRKGKJJNIHJLIKJIHJMMMMIKKKSkbZi^_icrrZ_Yjo_eeUk_c[aaQ`lh]j\niid[pfdp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrvtwrGGFIDEDFA@AEEDGBHJLHFDGKLIEFJOLIPIL[QJEHHKMIHJJJKIHIGKKKLGHKKLLLKIKMNT[\TPTLPONOOVQOOQNOQJINPQdqiTYW\[\UYZ]X]\\cfaaebcf__fkmhmtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusGCEGFFAEC@CHDFGCIKLHFDGKLHDGIPKLOKLWLIEEHIJHIKHLJHFGGIGHIEFLIJKNLIP\W^P\[`^MXYS\\b^MYZMXaRJYaZR_d\aX[ddVVX\YZX\VY\]b^d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCELMBDDBEIEGGFKJKHEEJJKFEHHPJMMJMSHGEAHFJIKKILJHFEIFDFGEEJHCJMKLU_Y`X`a[`TXYT^^Z_RY\P^\YN^\^SZ^c^Z]`c`Y_b[`^[TXWY^]cbcacfhekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIDBBCGHEHGHKIIIDFKKKFFIJNKNLHLNGHF>GGLIKKJLKIGEIDCDDBFJD@JLJO[cY_^a_RTRW_`\]Y^QY\MV_WKQY[PZ_aa]^ca`bbbcceZQYVU\Y]c`__cdbhomnllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQKFCGEBEHIFGHHFFJGHFHKILDDKJMMLKHJJHJF?GFNJKKMKKKIGGCD@DAHIB?IJHP]aZ[d]_TQRX]\\\_ZKW\LR\YIM^QO\_accccb\dcbdcfXQUTR[WZ`_^^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMC@IFCFKJFFFHGFIFFFILJNFDKJLNJLIKJHIFBHHQMKKOMKKIHGED?ECHHAAGFET]Y^X_Y_[]UXXP]]QKJV^X^[]UY`RQ__bb``bb`cbaddbXOQQQZR[]]]]^__dhgljnnp{{|~{
srw
|x\SKCAGFDGMRHCQJFHHHEFKJMPEFIJKNLLILLIIGDHKQOMMPLMKKHICDAEDHGBAGEDWUE\T^SV_XNTUNZZMJKT`a[_X^^a]NYb\``_bcb]abW__TPNOOWQ][[\\^`bffelfoow|{{}
zo
~INFDEFGDIRbPCV^IGGHDFMJPPEIIKKNLKKLKJJGEJMQQNOPMNLNHKADACDFDCAEFBMHBKLPONLFMFGIJHGLKMOPILOPOSOLQSRUZYWYXXdWOSTPPNMOTS[XXZ]\`adecgcklpsrzy{z~{}{
}KIEEGFGDKM]LGGXLGHJHGMLQQILKLKNMUNOKKLGGKPSSNPONONOHKF`ED_LDfcEM[I^[rmOMUmYLCP`UkWgJ]WU^DLQULLSVQRTXWTXUT\UPfZhhdXRjSWVT[\[``aaab`fhfnkhrz|}~}|zr{z{
~z{LHEGFHEEKOSIJF`SHJOJIOMRQKMLLORUROOJLNGHMQ[YOPPNOPOIJQQI|YYqsXPmHqnoaVPqqsPCksmqspSo_[nX]V\XUkhU]VcZ`Y[`VVXjtuu__v_Xa[\f[_aaaa^`bgmpl`pwtx}~vxzlv~tx~|~|z~wwNIEHMNBDLLFIKEQVLKOIKRXWQNOOMQTNOQPKKNGMPS[ZTQROPPPJHZx]TxehZRTQvgtlpbnfjQrOMwmjrpsrqrpoo]ezuxqqzq~s}ku}bRh|essosr{|o}yor_``baZ``gknkblfgmw~~{xwtvzir~nt|~wx{~x|u|||ssNKF`]GAEMMHJJGJPOMMJNV^YULQSNXZMSSRNKOIQRSYWWQTPPPQKHgxlcxrm[KMUypumubnvPdeJfvqmwojfxxiWrQhzmijzz}lxzohoYvvjuup`rg|ilx|o^__ba[]bdgiidgbcdllppstsssyqrxblugry{ssuy~suzn|}yxrnNKStNCBEPPHJKJKPOOOMPZ`ZXKTWPa^RVQYRLOISTUXWWPUPONRJKrouuquqdibWnLqp^FhyWvTLiy}x`y{sna]mocRhqunmypwlvttqlm]t~zkmy|ktl|kpvux^__b^]_ddighee^abiiijknokqnmjpacfdowxompsy~nqpj{ztromLL[VHGEGRPILMJKPQPPPQW\XUMUYUfXRRY^SLNITTVWYWOSNNNQHRmHiwK`dvvVXlOnl{sajg~vULWkh}lmlx_[pz{^`zscroxqhe|ir{]ULl`vukiu{{m~xk|p]^^b[_bddgeeebZccikkrsrwglihdg`akagsrlgmmr|kmhk{tmmkmOHJKHIIHQPLNOLKRRROSRWRVTPW[VVTTTa`PNMKTSSQUVNNLMOPJHQNPULKKSTSRTPVUQQNQQXXRNPUTXXX[ZURSW[WXWZOSUWWXR]YW]VTPYRWWWWX^[gr^[[Y\]_cZ_ccdfdccbZccffemnmueegcaf_]g`dlhfgkhpzhggkujhgilQIKLLMKJSQMQPOLVUTPTUXUYUQZ]VUTWUYXPOLMVTPNUSNOMLQPKJRQKQMKKORURQQSSIHLNOQRQQQTVRXW\WSSPQUUVSZQOSRWVTYVTYUTRUTTTWXW]Z^a]\ZZ\\`c[]bcdfdedaY`acabhhincad^_c]Zd\bma^fefmsdihkkedcfhPJKLOOLMSPNSQQMXWUTUWWWZUS\`VWVYUXSQPKOWSPNUPNQNKSPMOUSNRNMNQTPTQSTUNKMOQTTRRQVWTYZ[YSURTWWWY[TOTUXUUZUWYURRXVUW[YZ_]UX^\^]\]aa^[bbcgfddbX_ab^`hefda^_]]^ZZ_Z_g`^]]bhkagfhfd`bcaPKMLPQLOTOOSQOQZYXWXZZXYV\jdVXYZWVSTOJNVTPOTPPPNMQQPRXTQQOMOSVNWRTUUONMQSUUTTRTWVZ]\ZVWQRWXV[[WQTVVVVYTXXURRXVUZ]Y]_^V^]^`\\`___ZbbdhgddbYb`b^^fcc`b]\\\\YZ[X[a[^]\_b__bdebd__`\PMNNRQMRROSTQPU\ZZW[[\YZ[dqmhd^[YVUWQLMVSMNROQROLPSRUZUSPPLPWVQWSSSXMOPRTXVUUSUYX[^][[VROUVV[[WRTWVWXVTX[TSRZWV\^Z^_`Ua\aa^`b_]`]c`cghdf`Zc`a__ed_`c[Z\[\YZXYW\Y\[`^_[^^a`^b\Y`ZQNONVQPTROUTSPW\]\X^\_W\^jqwyb\[VVXQMOVSNQQPRTRKQTTXZWUORNSXWTSURRZOPSSV[VVWTVZX]^[[^VSNTUV\\VRTVVXYSTY\TSS]XZ]^\```Vb[cb^ac_\bab_cfidf^[d`a`acd_b_YZ^[\[YXYWWZZZa\][]\\Z]`W[[ZPOOOYPUURQWRTP[]^^[`\`U\]ijr}slg\UXWPNRZSRQSRTUTKQWV[ZZSOSRVVVTOWRSZRTTTX]WXXSX\X^]YZ]TUNVWW^[XRUUYYYUWY\TSV^Y]]`]bb^Y_[eb_dd^^cca^efidf^^da`aabd`b^XZ_[\[XXXXW[Z\`\[[\[XZ[^V^Y]POORZPZTUVVTTT^^`_^b\`U]^bkytl}lZUYUQPS\TUTUTVYWLRZW]Z\ROUSXVVTPXRSWSVUU[]X[YUZ^X_^Y\YRWRYXY_ZZTUVZYZWXZ\VTZ^\^`a_dc\^]]eaafd^^dc`\gdhedb_da_a`bb_`^WX^Z\\ZYYWV]Z]^ZY[\[WY\]VXW]SOPWYQ]UVYWWUX__aa`c]`T]_beeuzhXYYSVSV\XWWVVW]XOU]Z^]]TRWSWVTSTXRSVTXXX]^X][V]_X__X]VQYTYZZaY\UVX[Z[YYZZXV]__^cbadd\b\`fadfd_`dbb[fchecfaf__aaaa`_^VU]Y[\[Y[YY][[[XXY[YZZ]_]TY]UNTZVS\TVWYVV\`abcac^_V[`da_zuohY\ZUXTW[ZY\YXY`WPV^\`a\TTXPUWVTVWRSUWZZ\_^Z_\V__Z]^Y^VSYWYZ]bZ^VW[\[\[[YZYZ__``dbcdebdZbfcgfe^ab`c^bcidcg_g^bbcaa`^_XT[ZZ[[X[XX\[Z[WWYXW\[\`]V]]SPVZVVZUXUXWX]_badad`^YYadb`lfh^\][VWXY\\\_[Y[bVTX^]ac\RVYPWVWWWVTVTX\\^``]a\Wa^[^\[^XVXX[[_`\_XY]\]^^\Z\X[`a^`dcdeefbYceehgd^ca`ec]eidei_g^cbcaa`__[XY[YZZXYXW[[Z[WXZTY]\Z`\U^bNRWYVWZX[\XWY^`baeada]^Yacb_a``^\\\WW[[]]__\Z]cXZX]`cd_RXYPWWXYYWVWV]]^`a`_b^Ya]]^Y]^YXVW[\`^]_ZZ^]^^a\[[Z\_b^bdcefefbZdffigc_c_afeZiicfice^bbca``_]]ZW[YYXXZXWZ[ZYWXVU[]]]``bbxLWW\YW\[\]ZW\]_`bdbba]`Xbcbacab][\[XW[\_]`_][`d\\XZbec`R\ZOXXZ[[ZWZY`]`bb`ac_\b]_][^^YYUX]^_`__\Z^^`bc\\W\^`bbcedfdefd\efgifcab\dg`\iibhife`baca_`_]][Y\YXWXYXW\[ZWWXOXZ]acffrkJYW]ZZ_\[^\X][^_acbaa]b[bdb`bbb\[[ZWXiq`\`_]\ac_^YYcedaS_ZRYX\]][Z[[c`bbc`bda`c^`\]^_ZXV[_^]aa_][`abeb_]T\``cddfegeffe^efhhgdd`[eg^ahhbhhfc`b`cb___]]\Z[YXXXVZV\ZZVVUMXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vuuuuuuuvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{{{{{{{{zzzzzz{{|||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vutuuuutuvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{|{zzzzzzzzzzz{{||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||xÅÔÒÒÒÒÔ{}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½°Á¾¾¾¾½ÊÓÒÒÒÒÖº}~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}xÕçääääç{~y1333332j{éääääèÊ»ÎËËÌÌËÛæååååéÇ}~}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}v~ywwwwwwxyyyyyzxooppppprrrrrrrwzyyzzz~||||||}}}}}}|}
|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vtttttwtvwz{x{xwvx{xyyy}zyyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{{{{{zzzzyyyyyzzzzzzzz{||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwwy||{|{}|xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwwwy}}}}~}xxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z{xwww|z}|}~|xxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzz~{||{~{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyy|zzzy|xxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyyyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{|||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|||||||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrsuuttssrrrrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqsttstrppqponnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqrsrstsqsqoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrrrswssrooopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpqqrqprpnpppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqrp¤uo{¤oppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqp¯m§pqppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqrq}®¢p¦qqqqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrrq²©¡±prqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssssssrsª¢³§«rtsssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz~|~~|vvwwvuxzxxxxxxxw}§ £°¡{yzyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~}||||¦¬ £¢zzyxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}}~}~ ~}}}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~¨©¡|~~~~~
~~}~~~}}}~~~~~~°¥¦¡¢ª¥~}}~~~~
|||{|}||~~~~~~~~¡²ª¦¡ ¢¨« |}||}}~©®©£¤¡¢¡ ¢¤£
}||~~
¡¢
}}}
~~
}}~~
~~~~
~~}|}
~}}}}{
~~}}
¡
}~
}}}
~}~~~~
~}~
~
~~
~{z
~}}}}~~|{|
~}}~~~~~~}~}}}
}|}~~~}|}}|y|
}}}~~}}}}{zz~~
~~~~~}}}~~}}}}~}|zzz~~}~~}}~
|}}~}}~}~}~}}~~}}}|{{{zzzz~~}~~~~}~~}|~~~~~
~|~}~~~}~~~}}}|{{|zzyyy{~~~~|~~~~}|~~~~~~~~~}}}}
~~}}~~~~}}}}}|||{zyyyx}~~~~~~~~~}~~}{|~~
~}}}~~}}}}}}}}}{zyyyyy~~||~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
~}}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
~}|||}}||}}}}}}}}}}||{z|xyz{|~}~~{||}
~
~~
~}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}}|~||}
~{z|
~~}~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}}|}~}~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{{z|~|~~~}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{}|||{|||zzy{|z}
~~~
~~~
~~~}~~}}}}~{|}}~
{z{ywz}
~~~}}}||}~}||}}}}}|~|}|{}||z{z|}|}~}~~~}||~}}}}|{}|~~~~~}|~}~~~}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~~}~~}|~|~}~|{|||{{z}~~|||}||~~|{{}~}~~}{{{}|{{{{~~}||~~~y}~v{vx}|||{}}~}}~~}~~~~|}~}}}{{}}|z||~}|}|||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~}||}}|}}}}{|~~~~~|}}|||{~~{|{||||}|}|~|}|{{{|y{|{{}z}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}~~}}|}}}}}}|}|}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~~}~}}}|~}|}|}}}~}}~~|{{{||}|{z{{yzyyy{~
~~{zy{}}x|zr}{{}||~~}}
}~~|~~}|}}~}}|~|}}|}}~~}~}}}{|}~||{|}zzyyyy{{~~
~~~z{y}}zzz}q~z{}}}}}zx
~}~~}~}~~~}~}}
}~}~~}}}|~~~}}}}|}||{|}{{{zzz{{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv}
~~}~~}~~~}~~|}}|~~~~}|}}{}}}|||||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||{|{|}
~~~~~~~~~z{z}}uqz|zqz~}yxtt
~~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}}~~~~~}}|}}~~~~~~~}}~~
~~~}{z{z|{z
~~}~~~~}~}}z{|
{{syz|pwuvwyutz
}}}~}~~}~|}}~~|z|z|{|~~}~~}}}~}}{{zx|vyy{qtxwvxury
~|}}~}~~}|~~~~}}z{{|||~|}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{{||||}}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~
}}}|{||yz{z~y{yx~{|{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst}~}~}~|~}~~}~}~~~~~}||||zyvyyzyvyv~|{{{~}{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}}|~||~~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{{{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~{~}~~}}}~~~~~}}~~~|~~~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~||~~~~}}|~~~~}|~~|}~}~~~
~}|{{||yw|ywxwwx{{{{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqsoxwq{
~~}|~}}~~~}}|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{||{zzzzzzxsvupprowvr{
}}~}~~~~|~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyytuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|z|}{|}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z|||yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~~}~}~~{}|}{||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|{}|{}xwvyyz|}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~}}}|}z}{yvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{~
~||}|x|yzyz|}|{||}}}||~{{{zzzupxwyvu|uv|
~
{~~}y|zzz}||}z||}}|z{~~~}}|}}|vrvxxvtvu}
}
~
{||}zz|}}||z|~}|}}~~~~~|}}~~}||xvvw
~
}}||{||}}~~~}~|||}}~~~}}~~~}}}~}}~~|}
~
}}}||||~}}{|}}}}}~~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uy~
}y|~{
}~}~}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqspurstv{}uvy
hzrss|r}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyyrpvxqvtturstvinrotvnulwmzsnym}rsvsvmnwlpylu}|~}}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}~{~|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyrioyxpkyszozwvvp~~~z~}|}~}}~~~~~
xyrz{pp
x
xyks~y{krz|mzyyt}vnoot|uwqy}}m~uo
zrr{|upozks|nv~~}}z}{|}}~}~~}~}~|}~~
}w}~{|{~{||}~}|~}~~~~~~~}}}~|{|~||
}{{|~{||}~||~}~}~~}}|}~~~~~||}~{|||{{~
~|{}~{|{~~}||~}~~}~}}~~|}||~~|}|||}|||~z{{|~
{{~}|||~}|||}}|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}}|||~}|}}|~{||{||}}{{{}|{~}{|}}|}}~}|zz{{||
zz
~|~||}}|}}|}{{{z{|||{{{~{{}{z{~||||}~}{z|z||
|
~~~~||}}{}}|}zz{y{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{}}|}yzzy{}}zz{{}|}||zz}||}|~~{{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yzz{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|{{{{|}}}|~}|||~|{
~}}{
~|}}}~~~~~}}{|{zyzzyz{|yzz{{{|z{{{|}}}}}}||}}|
~|~~
}~~~~{||}}~}~~}}~{~{{zy{zyzz{yzzz{{|z||||~~}|}||}~
~~}|}~~
~}}~~|~~|~||~~|~}}|||{{zzzzy{yzzyzzz{|y{}{{~}~}}}
~}~~~~}}~~~~~
~~|}~}|~}{~|}}}~}|||}{{zyzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<C:;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>:=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<:<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA>;A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÕÕÕÕÕÕÕÔÔÔÔÕÕÔÒÓÔÔÔÔÔÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9>CE?<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËÊÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ÕÕÕÕÕÕÕÕÕÕÕÕÕÕØÛÜÝÜÜÜÜÝÜÛÛÛÜÚÓÒÓÓÓÓÓÔÔÔÔÔÔÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILN@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÏÐÏÏÏÏÏÏÏÏÏÏÏÏÖÞÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¸ºÑÔÔÔÔÔÔÔÔÔÔÔÔØ®|ÒÒÒÒÒÒÒÓÓÓÒÓÓÓÜãâââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVM<::77>C>8>:??A=?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÌÐÒÒÒÒÒÒÒÒÒÒÒÒÑÞìëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¢§ÏÓÒÒÒÒÒÒÒÒÒÒÒÙ;DDDDDDCCCDC?\ÓÓÒÒÒÒÒÒÒÒÒÒÒÑàìëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;?C>6:7>?;=B?9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÌÑÒÒÒÒÒÒÒÒÒÒÒÒÑÝêééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤£¨ÏÓÒÒÒÒÒÒÒÒÒÒÒÙ@HIIIIIIHHHHC`ÒÓÒÒÒÒÒÒÒÒÒÒÒÑßëêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<;;<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÍÐÒÒÒÒÒÒÒÒÑÑÑÑÐÜèççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©©¬ÏÓÒÒÒÒÒÒÒÒÒÒÓÙMTTTTTTTTTTUQjÒÓÒÒÒÒÒÒÒÒÒÒÒÒßéééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÎÎÎÎÎÎÎÎÍÍÍÍÍÍÎÏÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÎÎÎÏÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÒÔÕÕÕÕÕÕÕÕÔÔÔÔÕÐËËÊÊÊÊÊËËÊËÌÌÌÓÔÔÕÕÕÕÕÕÖÕÖÖÖØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<7@A<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÓÔÐÎÎÒÔÏÏÒÔÕÔÐÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕ×××××××××××ØØ×ÖÖÖÖÖ×××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?89:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎЦÅÑÓ¹ÐÑÆÏÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÒª¬Í³ºº¸¹¯¡ÒÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?><7:>9?D>@98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÐÉ
¥¯ ¢§²Ñ}~¯°ÑÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<:6?B@B9647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏѤ°½¡ÇµÕÓÍÃÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8E@?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÏÐÕ¹¤Ú¤µÔÓÀ ÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÏÐÑ·Ø¢µÔÔ¯¢©ÔÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ×××××××××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:<?>=<9@<<::9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÐÕ§¤ ÒÖ¢µÔÔ£¡ºÔÑÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJACFDAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÒÀ¢ÉÔÕ¢¶ÔÎÉÒÑÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:969;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÓÔ¤ ·ÐÖ£¶×à ÒÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:7:;::;9==:::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÈƦ½¦Ú¢´Ù±¤§ÖÒÒÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÔʦڱÆÖ¹¿ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFGKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÔ¯°³ÑÓÑÃÔÒÒÂÓÒÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=>AELLA=775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÔÖÖÖÓÒÒÕÓÓÓÕÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ=>786967899;;=?@<<89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9599:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EIKAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDI;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;877797799=?A?<:9@?<>B?:8776=?@@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98868975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@AB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEEC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELBA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<<DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH@E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@<D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsnupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸¸·······¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¥¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¥££¢¢¢¢¡ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=6789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬¨¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¦¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥£¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢ ¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;<;=<::<=<7;>CBDC?=AC@DA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡©µ¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡¡¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?B@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¤¤¤£¢¡ £¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::78:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££ª©£¤¢¡¡£¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¢¢¬¯¡¡ §s¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡¡ ¡¡§¢¤ a| ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>99;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ §¥Yy ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9<<>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¤¤Xt¡¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:=>:?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¤¤y_o¢ ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £ xii£¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¥xje¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡¥wjd ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡thb ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y yzylb^ ¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡ wwma]
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|vr{td
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VQQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{xZln{s}
§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}rtdOu`\qs{}|¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
~} _KIt|ZJakz
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~xIBEtxmU>Lds¨®²¯°µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWMO_^\NUUbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
¡¡¢ aS[JtrcWFESl ¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJDPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ªª©§¢¥¨©«ª©¯¤VTt|l\YmU_w¡¤¤§¤©«®¬¥¤¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdWOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®««¬¤¡¢¥©§§©£tjÀ½Po_{kVn¡¡¨§ ¢¢®««ª§®¨¥¤©©ª©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPOSe\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨§¦¨©§©©¤¨¦¤¦¢¡¡eƽe©¡^q]`¢¢ ¡¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]\PUOXO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤ ¢¡¢§¡¦®¦¦_µ¾Ê¤©uh¯rW ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvxb_[UYQUW[c^s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?B?:8:>?C@DA:;>=@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯««¬¨¨«¯©¨ª¨¢ ¡§©±²¯«££¤m¨Æ¡F¬X¡¥¤¥ ¤³¥¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\V\hdocmjib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£ £ªª§¸Á¾¹¶·³®¬¯}{l» Wg¨¡¥¢°¾ ¡¤¢§ £ ¡¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxjb[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>BE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ «²·ÏÞÞØÍɼ·¹º¯xdj§£{hkrvz
vo¸©£«¦¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__amhvlphiibZSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°²´µ¶»Ã×àØÎƽº¶®xjPczrmhhnkllkf_Zw²´ªµµ®³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YTai`fsotitdidb[LK>:9898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÄÇÃù½¿ÄÔϹ®©¤d_J\|npwoihb]_^a`^ZTn·²ª´¼°µ¶¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`b_^kcbnxuvnm[bRV\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAA;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅÆ»ÅÁÅÉÌÆ¡|hWXISkefnhbe`Y[XZZYUl³¹¢¦±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|~ifhaklgnvqruqg^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÄ¿ÃÃÆÆÀ¯tmdZVWENgbajd`gfYZYXXTf³¼²¦ª©¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|~tklndomiqxnyiia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄĹ´ÇºYSSWU@Ofdaid`fi[XWXSb©¸³µ¬®¥¤£¨¤ ¥ª´±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyy{wnkihuZfrxsyff]d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÃÄÂIJyQKNO=Qcbemf_dh^YWWdª»ª¸µ³¬©£¡©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuuefijh]jonyxcb``^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÎÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈǽOMM@Mg^gkj`ba^\Yd¥Á»º¼º¼¬¦ª»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqocagvhiitmyl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÌÐÍÇÌÉÂÂÇÂËËÈÇÌÉÎÅÈ¿|SNEGo`aalb\]^[]ÇÂÄÇÁ¼¾´±°°Á¾¾ÁÆ¿¾¸¶Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`kjwlieuntb]bTWUSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÃÿ¿¾ÄËÈÊËɼ¼ÈÇÉÍÈÃÈÉÉÅÅîTMHjc\_n]TZY[È·¿¿ÀÀº»½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrpfegcjdbjmno^Y]VVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ãº¸¹¼¾ÁÇÁÆ»¹ÈÈÃÅÄÀÃÁÁÀÄÁûTIY^myPPSVÈï½½¸¹»»¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbacdcjcgc[ZZ\YQOE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹¾ºº´À¸µ·²®º»·À·¼ÊÏÁ»¿À¼»Ä½ºÀÄÁºWGNEKZ~¸Ë¾°Á¿º·»¾ºµ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qdabchjggjfi]VVTYOSLF8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ¹¿»ÁÖ»¾»Ã¶¹Ç·µ·º¼º¹nJx@Z¶¼Á¾¹Æ¼Â¿¼Å¸¶·´¸¶¶»»¹¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zyqmeefoielhXXNKKKRJLHD9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹º»¿¼ÐÅx¬Ë½Ç¸¹¸¶³¶¹³¶´´|V ¿À¾½¼¿ÈÃÅžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksfbm`\TIKJDJCCG>:;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼»À·ª¤®°¸»²½¾»Ä¶µ¸µ·¿¾Ä¼ÂÄ×u½ÈÏÂÀ¸®µ´º½·¸±¿¿Íÿ¾½¼ÇÌÇÇÄǽµµ¶Á½»»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qflintnxcgb\cQKTHEECGB<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£°¹½¼²¼¾¼Å¸±¸¹¼ÆÉÊÂÇÉÑqu°ÑÑÌÊĵº¿ÃȾ¾´¿Ã¯|iµÌžÁ¼¿ÃÌÊÇÅÆÀ¹¾¼Ä¿¿¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_c^`aNIM?E@?DC;;::;:8;<:9<>::>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´»Åк¾¼Ä¾·¼À¿ÉÏÇÈÊÊÁ
st¨ÌÌËÍÊÆÂÃËÎÁ¼¸¼º¹uX¶ÈÆÄÀÀ¿ÄÀÊÊÃÃÃùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmx|`qc[^__TI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼·»ºÛ¾¶¾À¾¾º¦ª³·ÄÀ¥ywzÄÆËÈÁÃÀÀÉÊÁ¿»º°¶vVµÆÅÅÄ¿ÀÁ¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsxshp][^]YRFDCMIAD=H;;59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯··²µ³·¹¼»¶»»Å´m¯Î½¶¹À¼ª}nhnmtsy~¾¿ÇÀ¹À¼¾ÅĽ½¸²¯®nT©ÅÆÃü½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸··½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|wlu{pni[__YSPAFHGK@ECH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÀÍ°u´½µµÁ¤iZ^`NS[\ptx£¸·Âº³»·»½¿º»»¯¬lWÅÃÃþ¼¿»»¸µÁµ¿ºµ®¯°½À¹ÏÊÉñ°µ´´½º¾ºº»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsvvwnq`_f][TJ=??GF=GCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹ÂÉ¥x¢°µjfgUY_IIMQTny¨°·¾¹²µ²¼¹¼¶¹¾±´¨o_ÁÃÇÃÀ½¿¹³¯²½º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtwrl_cb\^OIB?=IDFMC@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·¿Æ§{v¢`SCYUHbjUOEJe£®¯¶ºµ´²¬¼¹¸µ¸Áººlz¼ÂÇ¿¹ºµ®¥¬³±¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²º¶»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wp|ovrnc]gX]]SOMA>JBAJI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸¸¿³ynNJ@eYBPxhLC^±µ³µ²´¯¬»º¸¶¹¿Ä³z¨¼»¸µ²±¤¦§¤¥©®¹¬««¥¨¤«®¯§°¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmuil][jT]\PNHDFLBFNF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³¸µ{XFBQXIJYxbAU¤¹³´²°±°¹¸¶»·º¿±²ª ¹®©««£¨¡¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wryiutndUacW\QNLH@HQDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²»©hM@TyqOIIKhZEV±»±¬³¯®¬¶¶²´µ®©¢§§ ¨©¡§¤¨ ¢¢¡¥¥££ ¥ ¤¬¥¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨««¦¢£¦¢ ¥¢¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vzcwln]QhTPNGPMLBPQ@>;>49:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬¨½Áª¥½fDS¡PXIK`IXaee¯µª²´®ª«¯°²³¥ ¢ £¤¨¢ª £¥¨ ¡¢£¨¨§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ ¤ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uv}mk{dhVRdMJHGORNJNH<E@<2@859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡© «Æ¿ËNAuoPnJLcfvua]bs²¯®³µª¦¬«¢¢¢¤¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¥¢¯¨®²«¥ªª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}wx|dyy`bSU`HIJKSTIRQM9?B67<65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¤ÇÆVRKf£Xg}or[Rkc\gbam´°°¸¬¦¡¢£¥¦© ¦¤§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«º¨¦«§««©¬¬§ £±®²±´ª²®£¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvshlf[SZZMQJOOULSMB7>B78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢ª£yUiqwuodwvXWb`di[ZWh®¬¯§¢ ¡£¢¥¡¤¤¨¨¬©¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¿°¬±®©ª´±°¨«¨²¶¸³¸²´¤ ¥¬¡¡¢¡ ¥¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xujwu^m[R`HRUHFUVJCMG=KH8F<77;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¡ £op`cWL[SZLLQYRHONH¬ª©¤§ ¨¥±ª§®£«®¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÂ¼·¾³³µ¢¬¢©¨²©ª¨§¨ª§ § §¨¥¤ª¢¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vrmivmhm\X\CWNJGMGCFM<>L>4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·¤°¦£bW^e`WMQG=?@CD?>CRx©©ª¥¢£
¡«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶º»ÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸³»ÆĽü·³ª³ª³µ¯³®ª¯£¬¨¶±£°¦ £¯±®°¤¥¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¥¦¢¤{trkktrqhV\QFTIDJPI?EA4FH95<>7;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ |_^e`PFE;B>F<>96N~ª³§££¢ ¥«¥xm ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÇÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿À¾ÇÆ·ÄÊÉÃÁƾºµº»µ»·°¶²ªº²®»·¿»º«¸«ª¸»µ¼®®¹£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢}zqkchoxkeZ[FKLEDTMDCE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;?>=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡}riaWNE>IZ|oaA=\®¬ wrqmp¦®´¹Å»ÍÇË¿ÂÌÍÍÌÇÉÑÌÍÌÇÉÅÅÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÍÓÐÓÓÌÊÂÅÆÆÊÈοÈÑÌÇÅÇżÃÁ¿¿¿¶¾³®¿ÀÃÃÇÄÇÄ®¿¸²¸¼Äº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLDFPIDC@55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A?<@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £if\TID@?J¤ ²£yqroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕ×Ñ×ÍÆÇÉÌÃÅÊÏÊÓ×Ò×ÒÕÖÓÔÈÌÆÌÍÉÒÍÎÓÍÅÈÊÊÁÇÌÇÉÈƿó³ÈÄËËËÏÇÊ¿¾¿½ÁÇÅÍÌÉÉÀÃÀ®¯³¨¢ª£¦©¬¤¥¦
zruvgcgvidVWQDNF@JQB>B<:22A<E<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<A?>9:@A:9>9:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡aSLJDC?CT±Ñ½²¯¦ ¤¡}xpkebhqoq{
upnqtp
³Ã¾ÅÑÐ×ÖÖÒÖÎÔÖ×ÔÓÑÓÔÔÓÏÑÃÐÓÖØÕÖÒËÉÎÑËÆÍÒÊÒÕÖÙÖ×ÓÖØÎÒÊÏÑÌÏÐÌÓпÈÇÊÄÌÌÌÎÏÅÆǶ¿Ê¿ÒÍÌÐÆÉÈÀÄÃÈÎÍÐÑÏÍÊÈ͸·»¨¥«§£ª¥©¨¨|xsvpc`drb]R\IJGAEIJ>;A8=5586;85:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¤¥ ¢¡YI@ADAFQv²¯§ wica__`_^__]blutppolrquÄÈÆÔÖ×××ÓÖÐÕÔÚÔÔÎÏÕÔÔÑÑÌÐÍÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐ××ØÑ×ÒØÙÔÖÌÏÏÊÍÒËÎÐÀÆÂÈÆÎÎÑÑÒÈËÍÀÊÌÆÓÏÌÎÈÅÊÇÇÈÌÊÔÔÑÕÏÒÌÓ¹ű¥¨µ®§¨¬¥²¨°³¬¬
|zqstmacim_VP_JJCFCRM?<>43:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¥®·¨«·ØÔÕÙÙÑÎп¼Ìɶ¾®¦ª¨¡£«eC8=>DXª¨}pecb__a__aa_``_`fnppnkorwwÌÁÒÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÒÊÏÌÓÖÒÑÕÍÏÕÕÑÅÑÔÊÐÔÕÖÎÒÐØØØ×ËÈÎÄÉÏÌÊÌÀÉÀÈÊÍÎÐËÐÍÎËÎÏÈËÐÐËÎÊÂÉÇÉÌËÌÒÓÍÓÒÑÐÐʽȹ°®»¹µ«¶°¨¸³¾»±
zvopokadnpaW\ZIFFDMXE;@=33<<87855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¥¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÁ±©¬©¤±yHFB;W¡k^^^adb``````a^__^\bmroostvvy¤¿ÌÕÑÖÔÓØÖÎÎÓËÎÎÅÎÊÒÒÏÇÎÍÍÔÌÎÓÍË×ÖÐÌÑÔËÌÐÒÓÊÎÑÕÒÕÕÊÀÊÂÅÍÂÈÉÃÌÃÅÈÊËÏÊÍÍÐÎÓÌÆÉÏÍÈÇËÅÇÁÆÊÌÍÐÑÇÐÏÎÍÌÐÅÇÁ¸¹½Ã½ù²²¾±»Ãõª¥¡yqrkmg``qhYXhVMGLIPQB;C>;6898::57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?;<;<=8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±Ç¸ËÕÕÙÚÛØÌÌÏÈÖÕĵ¯´¨xlpr{|eabb`]^acb`__`aa`_][]grqqrspmry¥ÇÓÏËÐÐÓÔÊÅÉÉÆÇ¿ÃÅÏÎÇÅÇÍÊÒÈËÎÎÆÑÒÐÍÌÔÊÇËÎÏÇÇÏÒËÐÏƺĿÆʽÂÇÉÎÄÂÇÀÇÍÈÄÌÊÌÏÈÄÄÐÈÆÂÆÈÅ¿ÁÇÌÌÌÏÂËÌÉÇËÐÄÅÇ»ÇÃÉÉÂÏÁ½¼¿°ÁÉƹ½ª°²§¥¢£xotdk`^fqa[W`GHHGIMTG?J=64355==48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ½¹ÍÌÆÐÕÕÙÚÛØÐÉÏÏÑÓÈ·»»£¶}h
¤«
}~s_[^^^`^`cdc_\]^_``_[Z\`krrookloo}¹ÑÈÉÊÏËÍĺÀû»»º¾ÉÆÂÃÀÃÈÊÉÈÊÈÁÅÌÆÈËÍÉÄÂÊÉÁÁËÐÅËÈ¿¹Â»ÆǾ¿ÆÏËÿûÉÇÉ»ÈÇÅÊÀ¾ÂËÆÅľƽ¼ÀÃÅÌÅżÀÊÃÅÇÒÅÁÉ¿ÊÉÆÈÆÐÃÃÆïÄËÇÃÊ·¿¼º´©¬¤¥¬£¡¦£ |wstfiZanmZ[XRDLFBGDLDFS@54335?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÃ¾²¯¶l^y}¢z
vxurp_Z[]``bcdded`[\]]_^`[YZ\borokilposǽÊÅËÀÆ°¶º²²³²±Â¼¼¼º¸ÁÁÁľ½¹½¿¹ÄÊÅƽÆÀ¸»ÃÉ¿ÁÉ»·»ºÆÿ¼ÁÍÃƾ¾µÁ½Ã»½Æ¼Ãº´¼ÆÄÂ÷À¶¶¾¿»Ìü¶ºÈº¿¾ËÃÁÆÂÅÉÇÉÆÐÆÂÌȲÇÉÃÎÌÁÅÿ½²·°²§¨¨¹°¥°ª¬zvwjdg`hodV^YJFJEGKAEBFJ@9:648854;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÅÂÄÈÎÒÊÊÊÇÍÍÎÑÈÐÆÕÔÖ×ÍÊÎÅÉÅÇÁ¹Å½¬®¥_dux~{ttc\\]^``bcbadeb]\[\^\^]Z[\^hsqmggnory½ÌÀúÀ¸°±§ª¬§¸´¶´³³´»µ¾±¶°µ¯²¼Â¼ÁļÀ»µ²º¾À¸È¹´»·Á½·¼ÆÁüµ®²µº¿´Å·»µ«¸½¾À½±»¶°¶º³Å¼·¯»¿µ·´Å¼¾ÂÅÀÃÅÆÇËÅÀÆÆ»ÇËÀÏÉÇÃÆÁ÷ý½¶¹¾Ç¿¬µ»µ·¶ytxggebkn^V^`FKHHJFBDAEE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐÌÍÈÊÈÊÉÊÄÐÍÒÏÍÅÇÁÆÀ¿º¸É¶ª°[ho
zx~vw|sh]]]]_`_`da^cec__\[^\]^Z[[]_lpnhfknnr|¤ÇÀ¸¸µ°«§¢©§ª¬³ª¬©´®·±³©®¦¬³¼º¶Ã¹ºº±«µ¹»´Âº°À±¾¼»¶¼Ç¹Â·ª¨°²À¶¸½°±¨±³µ»¼¬®µ¦®¶®»²±ª¹°»®»¸»ÀÀ¾¹Ã¿ÆÃÅÁ¼ÆÂÈ˸ÅÇÅ¿ÇÃúÄÆ»ÆÉÌ˳¹Ã½»³swvkiablhYWW[ALKMJEAC?FA:9:995854::9;<=;:;>8;@<=9:79=9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÅÏÇÍÁÃÆ¿ÄÄÃÃÊÂÉÊ¿À¼Âº³µµÃ®ª°[j{x}
z{wn^]\\]_`__dcadcb`_]Z[ZZ]ZZZZ\enohfgiknrº°µ®¥¤§§ ¤ ¥«¤¨¢«ª¬«°£¦ªµ¶±½¹¯·°¨®¸´´¼¸´½¯¸¹µ²¼À²À¯¥¨£«±²³¨½ª«¨«¬µ´¦¨®¡¤¯©²¦¨¨®¦¨·±²·ºº»²¼¾¾¾Ä¿µÂÁÇÈ·¾¿Å·Äÿ»¿Ä¾ÄÈÌÊ¿¿ÄÀÀ©stsji]aodWVXPHYRSKFFE>>@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃȺºËÁʾ»É¶½Ã¾ºÊ·ÁÃÁ´¶¼¶±¯µ»¨«dmz}~xt~|swe_]\\^_`^_ccab``_]]\ZXY[[YXZ\_fkfdgehjor
ª¥¬¥¡¤¤¡£©££¥¦§¦ ¤¦¬²°¶·§±¨ªµ«´¹±¶¶®¶¹²°ºº±·¥ ¤¦±¨«¨¹ª¤¦§¨§² §¦¤¦¬§£ ¡±¬²´³´°µ½¶»ÁÀ²º¾ÃÁ±¹¹Â³Á¾Àµ¸¼½¾¼ÂÇÄÃÄ¿ÀÄ xplbf`ko`UY^HNgOTGFKF<=?=:;;825536999;9::<:7<?<<;<88<9;:;78::<98>:?=98<:;=:7776788666;::;9:;<859<:>>@;ȵµ½¸ºÀº½¶ ¡¦º¶«³³»³ÄÏÉËÂƸ¶ÇÀÌ¿¸É·»Å¸³Ä¸³¿À¬¶¼²¬¥¯³¡£ir
|xusomjjipi^`]\\\^__acb```a]\[\\XYXXXVX[^_dcbegggkmo©¡£¡¢§ ¤¥¢§£ «°±µ¤©ªª¬¬¤´¸·°¬³¶¯³µ¯°ª£¢²¥¦©¸¢¦¦ ¨¬« ¥£°©«§««¬°²¸¯¸¹º°¶¼»º«³²¹³¾´¶²±¶µ¿¶¾À½Ã»º½zsk_e^ddXTW]IW\KPGJJGA<??@;?<04535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÏÈÈÀÆ»»ÃÃϾºÇ¸¸¿·²Â´±»»¬ºº±¢©«§m~
xrmomkb^bff]]^]]]\]_`abccba_\[[ZZYXXWWWXXXZ^bddeffhikq¨¡¢¡¨¥§¢¥ ¡¯®®¯²¡¥£®«§¢µ°²²¬©¯³§º³¦¶ ¢£¡£¢ª¶«££¦¥¦£ ¢«§¤£¦«²³ªµ°²«²¹´¯ª¯²²³¸³®©¬®²¸°º¶º½À¸³±
yuf_f^[YVSZUK[QKIEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ·½¿¶¾¼¿²¥£¥±Âµ¶½´¸ÂÌÈƿŶÁÀÇηÀĽ³¹¹³¿¶±¹»²´¯¤ª xxoqtqhedhdc\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWVWadecdeddhjv¡ ¡ ¡©¤©«§¯°«£¤¸ª¡ ®¨¶ª§§±¤¸°¤· ¢ª§¡¬¹¯¢¡¤¢ ¡ª©¤¢£ªª°¨´¬ª§³°¥«®³±°°®¯§¨¨²±´°¼´º¸®£zve_aVYXSRSKM^LOKGGLLE=A><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾¸¼®§§¢ª»À½À¹®´¸ÁÌÇÅÂýŸÈ̲ÁÂÁ¼»µ»¼µ¹¹°¯°ª¡©|wqilrtphhedfb\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[bcbbcbcdfi §¦¤¦§ ¦ ª¯¦¢£·¨¡¡¢¨³¢¥¨¥°¥±®¬µ¡©¡¢±±££¡§§¡¢¤¥¥«¤¥°§¥£««¦©®¯¯«¨ªª³¦¦¬¯´±®¼µ±¯¯ zwsea\[]XNLQGQaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847763321./2556;:8;7876<;:;;A8x»»±µ½°»±·¬¥¦¬¸»¼Áź±¹µÄÉÉÀÃÆÅǶÅij¿ū··½¶½ººµ²«¨£t~vncafihfgifjm`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWUTVURTRU``_`a_aabei£ ¥¢¦¥¥£¤£ª«¥¥±ª ¡¥ª¨¢®¬©©®¢¢¢¢«©°¢¡£¤¡¢ ¡¤¥£«¥¢¤ª£«®¥®²©¦¥¦¦´¦©¨³µ´¹º°ª¬rpp`[WVVRFQNHY[ORITKSLEFID8;;=<8667:9;:976977:;:=<<6;<8>698:88659:;<97?<9578452121..1426:8698598989;9@9{µ´´»²°«²¨§¯¹¹³ÀɺµÀ¯ÅÈ̺ÁÊÌȵɼ±¾ÃȬ±¸Áµ¼À»´´ª¬¦r{tiiilgjlmkjle]\\[[\ZXZ][[^``\XXZYXWXWTUVUTUURRNQY]\]]^___bdm£¡¨©«¨¬§©¦¤¥¯¥¥¯© ¯«³ ¥¦£¤¡©ª ¡ ¢¡¤£ £¡¢¨££¨« «°¤·¦£¤¢¬ª¨«¯³·³¾µ³«¯
tsh[XYSUREXLQ[XMTNPLQRINIB=??A?=75799<<977:79:;<=>;7;;:=58:;8976989:6:=99577570141-+/434988::8::748=8?9~³§³·®©¨¯®©¨¬·¶¬¼Ê»¶¿¬ËÆŸÁÎÏȳĺ·»ÂÈ°¸¿·¼½»³µ¦© ztvwnmhmmmpggifd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNPQYZZZ]]\^_ad}~¢ «ª¦¯¬¨°¥© ¥©§®¨ª¥¡¨«¥ ¡¤¡¢¥¦¨¨¨ ±°¦±½¨£¬´ª®§°µ°¹µÀ±®±«~rsbVTVNRJGVPSQLLWMJMORGMKACFDC>A75889;9:7::7<=:;@>:9;9:?759:9876958779;85576761320-*.102877;99;8948;8@8³¬¥±·ª¦£±«ª§©²±¤¶Æ´¹º³ÊŹºÁËÐʱ¶·¼½Áñ¯±·´´»³´¢£vkglnqnqjpkdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\]]ajyt© «¦¦¬¨ ¦£
££¢¤§ ¡¢¢¦¤¦©¦¡ ´²§²·¡¢¶¬©¤²²¦µ¼µ«¬±£ysn]NQQLOCMNNPKFNNJJNNQHMJAGKHHC>858889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12876:999984988A7w¶§¤¶°¥§¤ª¥ ¨¦¥³ª¢²Ãµµ²³ÆƶºÃÊÌƳ¬¹½´¸À¯©°¦®º¯®{n__frpuqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXXX[]anruo¡£¢¤¥¢s~{ £
~~sz££ ¡¤¤¢´¯¬¯¥¸¦¦±¡°®°¼ª©¯ªwscVMROPNCSNLPLBPQHINRMHJJDJLFJK=749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-02764789::65:87A7x·¡£´©¦¦¨£¦¥¦¦¦³§¥´Á¸°´°ÉÄ·¹ÁÎƽ³¬ºÁ¬Ã§¢¦¦¶¬£ }w~fWV_gfighncjhgb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTRMMJHNSSSTUUVY[]ikqk~{sNXr_;Vo|s
y{}xqp
}¢ §®©¨¨³¢¦®¬«¨´¢©£sn_[NSRWLDTJPLLFNOIELQMKOJILPFII=7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· £®¡¦¦ª §©§£©°¨§´Â¹°µ°Ç·³½Ï¿¹¯®µÂ§ªÅª£±¢}su]PLQUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`lnhztOB?}y`JQnx}
nxuvxpQ{~xvgw~¤£¨©¥¤°ª¡¤¤¦ª¢ª¢¦¨vmf^[HQQSMIUMRILKOIHFJNLMTKQPOFIC<768:8:;;8:;8>?99>=8;<6;;478;7775344696/3/.125221/,')**,4833989:99::::?9w¶£§¡¯¢§¨¥§¨¯ªµ¼¶··³Á»¶¨ºÈ¸¶¨¨µ¶ª²½§¨~}wpoXMKMMNLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZnru~ih\Tt|
{vxsovqtz~«y{hv{prmxxz{vsrwhu
||© ©¥§¤ ¤sha]]JWPRGKXROJLMRJJJLPHLQLRTMEHA<78;99>=:;<98@?::>=7==79937785675252472/2.,//200/-+(().12721987:8775:<;7v®£¡´©¯©¥¬°±ª½´²»¸¶º´±·º²ª¬©¨²°¡vx|vooiXKHIHGEHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQQSV^t{xfv}gyvx}q|w{ok~}t{|ufv|
logs|lyq}qmvqhq~pC
wwz}{u}£¡¤womfbZXXUQJSUTOPNPVKNKOOJQOHNPLFD<;79;::?=9<:99??;8<=7<9999266856633621224.,,-..-0-+*''*.1362/876966527995y¦ ¡¦°®«¨©±¯±«¼¸¬»¾¸³¬§°§¬¥©¤
yuq{mupjmjXKFGEA@CDHLLMQRPQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNPQTX]eprl§ªÀ~tyb{xo|yz}omytyjjq~Inhx~midly
ksl|nr|inps{~{vottyyp|nioooXVXTRQYORTTRXUMNHNJMNKCHMGE@:89;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¥°¢ª¨µ¯®¬´¿«¼Ã¿¥¢¤¡¡sztotkpldljYNDFC@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORWZQY\_§bisye~pmzvtlts|jjMy
g1vsl~~tfeu
filukq|hqq|n|t~}qpnumwyujyywkkoheXQZWYY[MPUVYXNIHEJJHGB@GDCG=998;9:9<:9;:::@<9:<98>787715234533645031/**+),,++)(+'),,226,,4775478iO8;5n¤¨®²§º¯«²°Â±»ÃÇyqtyprpoodpf_TFIC?<;9:?@ADCEGILOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQVLAIQIb¯³ q{xl}lq
zyr¡txsu5q¨¡¡¢
vq||t®hgbjnrmpuipXupwl{}mrnp{svnbv
ux~}{rppl`[]^\YX`_RN[ZXWLHJFIG?BABH?CD=;97=;:;;9:99;:?<88=:8;66651121253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¥§¯¥´©®±®Á²»ÁÆ}nul{txxlwnwci^JPG>@7449;;;=>@BEHLLLLNPQRTUVWXZXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~lw|~
~u¢y~
aªzw~sz]drtz|wmhjbyozowtzptyxkni]v}|
}q}uw{|wpstfg`[[^T\f^WPTX[UGJKDKG?F@DC>AA=;97<;;=<::99;;=>79>9985653244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¦ ª ±¨¯À±ºÅºz
vk}xs }|p~zgvkRWL@E211367688:<>AEGFGJKMOQQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJh{y|q|z}~v¡¥¬ªH®¯¯©tm}}hghyn
qGlwryvhmk_v}yzuv|xmow}ttrl[^][ccXge\UPPVYPDLKFNICFCC@@CA=988:::;;:888::?>6;>7595773344236656768;DFLMMLC7+"%'+)+++/00+nu22420L\5=<^t|~
¬¡¦¸¯³½³}tp~}}~¤
x~sx_cWKB60./23123668:=>?BEGHJMNQSTUTTVUSQOGC?80,#[>?94.]ps£UFIKMNPW`XpY\^i
~
¡¡¦»±§»Çè¡¥|qv
ihouqw{v
}nvuf «¢zzyogkx~zsle^Z[]j]af`YOKNWRQIPJDNGCJDBADDA<:87=<:<:88778:==8<=68756623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfx{¤¡¬¦«¯±¡xw|~
mpj]B@4--//./02234778;=?BDHJNQRSRSSTRPOHDB<87/9D><<63.lMPHJKKKNV_cggmu £ª¥£¬©¶¢¨Áîǯxº|¡
¢
lpuwqm
r ¤µ©¢~kjk|tb^d_[gk]lk^WKGORQNLLFIPCDMFACEFB=:97=<:;:987767;:6=:785456344566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYppuqv~§ ªge¤~y}
xx~gMR>/..,/.-/000212467;?CENPRTPPQSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} §¥¢¡¢§¨«¨¬©ª¶«¿«¶ÈÈ·ÉÑϾ pi«©
¡§¢wz~¡{w«²}£¢¦¶°¨lsr|}ri`]a_agd`gf[REJKPOIILFFMCHLFGDBGEA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppu`n}aw}{ªªBD}x|
v^bP460-1/,.00//..0015>ABMQRSQRSTRNSLEE@<>=GG@A@8662<9;FHGIJNOQYm
w£§ª´½¸¤®¬¬§¨´«°¶²²»±³½³Ã¬»É˷ÿ¸¥£°²¬ª£
¦¦ £¦¢«¨¤
¤¡ ª ¤©±£§·º £°¢¢£¡«¯¬²µ¢¤ªzz}
hah\eb]dc^fg_ZODIHSNFHLFJGFFHAKFCFFA;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicWjoXz
v
ÚÈsV|z
pna@E64<2/110-,+-1.-3?DAMUQRSUUVUN[PGGD<>>FHCD@8;<5C;=FKIGHROPW ®£³ª²ÀÇê³Å¶¬³¿³¸¾¶¿´Á¶»º£¸Å¨¶Éǵ¾¹´¨£´±±§¯«¥v¤¡¬²³ª¨®¶»²º¬¯µ¢±¬±µ»·µ®µ §§£§©¯²¹·¸§¶©¥ xvZbeWfaac_`f`[TIDDLUQHIJDIGEA@@KDBMG<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AFWQJL[ZQbcWyuq}u
{¿»£¼´y
zxn]V@EN<6:46AB764//6CHCQ\OQUWU\VO^UIKJA@>GKFED;>@7D7?BJJEFWTP^¤£±´Â¶¸ÁÌɶ»Ä½³³À·¸Áµ¾¯·t±³¥ºÅ¤°Æ¹±³±´¨¤µ¶ª± ¢¢¥°¦¬§¤ ¬´º¢©²ºµ»¾Ì¿ÅŽ½³Â·º¸¾·º·¹¬¬°¦±ª½°¼ºÂ¬º¨®«~}kWdbYkejeW[cYVSIGFLQGCHIAHD>?BBK@@MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALRWSYUZvjp~nzsxb¹¡£{z|}}wyueO\dGEL;Qca[^SF?;HPE[cQRYXZgYT``MSPEA?IJHEFA@C<E6B>HGKLSZT^¯¸µº¸É¿º½ÉÌ»¼À¼·µ»»·½´º±Æ`u²¥±«½ª¥¨«ª£¢²µ¡«¨®¥§¦¥¤¢§±´§²³½¶Á¾ÓÉÉÓÇÂÅÌÂÊÃÀ¾½¿»¼·´¯¸·¶Ã¹Å½ÃÈ°¹ª¡«¤§¶s`bb^Xb`ifRX`VRUIEENKA>GD=KB=B@=F>;H@796379>489:57045/26389374426?8@>GKRTSQPOQQPJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRKQ]glkp
slrrsÕÀµ }x{|ys}zkepuY]\Peeb`ed][XW\MemURmm_n_XgeUYUJDBKJHFHHHGBI9D?HKTTV\Z[¹À¸½·ÆÀ»¹Êʺ¶º¶¸¹²·µ´®¶¶du¨p^¢¬ £¤ª¥ ¨¥¤¬¥ª°·°½¹ÔÑÎ×ÐÉÌÒÌÏÎÊÇÀ¿ÂʽÁ¼ÁÀÄÄÅÊ¿È㤻°´¯«¸¼zl^a]Y^aZccQ\`SPKCAEFE<@E>AHA@D=:E>=J?47535;=468977022/24169775555D3ELM>51/006:477@IOI;-&**(-./,@M+/54mI0Ht?>BD@CDFKODQ\Yh_onlouu³¬¡
~|s{
{ts{xkmu{hreilifjih`fihlZnt¤¼g[oh]ZZTHKNOJKPKSQHLAJFKP_^bfjb·Ç°¸³»½µ±ÄƵ°¹°°»«²±§ª·¬µ§§O¦¥¡§¬¯¨°¨´´ÔÔÔÖÒËÐÔÕÍÓÏÍÅÂÉоÊÉÊÉÑÇÌÍÃÐÒ¸°Ã¼Ä¹¥¶ºÃ¢pd]]^Y`XYfZQ]WOPBBGDBH;AC>AG??A8;D>@H=46655;:687654/10146278875367C5B8?-0-1349=97,.,1;FK=),(.0007K?-46TW0DwC;B>EBACJM?UYSeVshqoyy ª¥}
|p{r}qxukqx~q{nxslipmcimpxiw|~Ë¿Âߧncwoc[a`JPRUNY^P]\NPNTQUT[nmvq¸¬³§°¶ª¬¼À°«µ¦¤¸¦«® «´£±¦«¬¤§¢¬ÏÒÕÑÍÌÒÓÓÐÔÑÎÈÃÔÑÇÍÒÓÓ×ÍÑÑÅÒÖÅÀÎÇÇè¾·Ïzof^c^W`S]ZPQUPNH>@FABE<@B?ED>??:==<<JA45465<888664412/03526768533;=<E=@11+/249>5901022-2DN3)/3.32=N238C}_2AtD:==I>@CFH<VRMN[u
wlwp}~¡¡y
{r~yu
ovrks||w{swqksripqzyrz¾Ë~²vrwhaj]CZZ[VecXdjSX]\`d^cwz~©¤¤¡ ¨¥ª°¸ª¥´£¡¡£¡§±¦j¢
}§°¡ ¡¥¤¨ÈÎÏÈÂËÑÔÑÔÓÎÓÍÆÖÓÌÔØÖÖØÕ×ÕÉÔÚÍÉ××ÑʬÃÃÌspca`XTZT\PKGJJJ@;:;DAD<BC>HB>BB;<9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/--;R017/532FD28>nb5=tM99@I<AD?A;PLFKYpu}hsxr
w~xs{}wznxpmuvx}t
|ymvtn}vux|µ;AÅ¥~|ieVICfcecgjdnx[_fhknin £¤¦²£¤³ ¡¥ © ¢±~
z~©£}«³¨§½Ãƹ¶ÆÍÒÐÒÐÌÒËÉÔÎÑÕÚ××ØÔÙØÍØÛÎÉÚÚÒÕ¾ËÌ´ywoe^ZSVR[WFGJIEE=:7:@AB:GD@ECADB;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BS39254/7K75<`bA<svV87AH:?C><9QECJTknnpbpqt|~
|x
zyqz{uz
zp|oozq|qnzuw}|u{°tX©Â¶pnb=^hrpqpnxveioruxqz ª ¡¥«}
~my{®ª§®µ½©½ÆËÈÉÌËÏÉÃÑÊÔ×Ù×Ø×ÕÛ×ÓÙÛÖÏÛÚÑÖÉÔËz|ji\[PST^HCEIH>A==7:=?;=G=?AAADA>>:86DB755479.566435532323647553457EBDCEB56<FNSM[nfcnskaV>,4LG865434BF4=W_hLux^8;?F<<B<::D?CGRk_mdbfkvqz~||~wyo{{uz vutu}toot|
zv{·Æ¥ÂɸwpeNfczw¢xyv{{um¥ £«
z|¡¼¡©¦¥®¨¶¿ÀÀ¹ÇÉÍÎÅÍÊÑÖÕÕÙÕ×ÛÔÖÙÚÛ×ÛÚÚØÎÜÆ|zhie`TXVUMLDNC;==<9:<>9=@6=?@<?><9867CA6455=80665547745613854564567HH=DJE7925;H>;::7IP]ZRUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Yea][htzylwvz{~~|
{~
z{u}tm|}~s~|~x}ynt
}
{}z©Ã ¼¤}}r~s¦
{hGp ¤
~¥
¥¸¢§¡£¯¶ºµ¬ÀÅÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Û¸yyymjfW`\TPOHCLB==>99::99;=6?>><=9:;;37D?8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8589?=DRSRX^UXfmmmiqry{z|{z|{~u
yszsm~}w
¡n¨
z |}£¢¤¯
Wr«[¢
¢¢
¤³¡¡§²¸¬¦½ÂÇÎÇÆÏÌÐÌÎ×ÐÑÔ®ÖÕØÚØÚÚ×ÖÙÙq~uhg^]XTWXC@HC>>>:49:;7:;:3;;?<>7;9:1:H>:37=@50677255?65;55858:57735HR7GOK994=EJB>1FCLB98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcbymb~omwxyz}{{wsp
zuvvt
}¦£¥¢¨r±§
¢ ¢©¯ n·
ÄȲ¡¥²d¤ÍÇ
ª££¥©¡¢³´¥£¼Á¾ÈÅÅÉÈÉÂÊÓÍÍÔ©ÒÑÖÖÖØÚÔÓÚÎtid_^^NKTZBAGC;A=837;<:8>649:<:82?9:2:I:=67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBcFu||l}xz~z~vv|loy|xx|}£³¨£«³¡§ ¥¤®¢·³¡ ¤¯¢¤§¨¯¤ À£É¸«¢¦²
¨¢
t²¤¡} ¡±®£¤·¾´ÅÇĽÃÿÆÎÊÉÒ§ÎÍÓÒÐÖØÒÏØ»s{w^aVaWQIIOEABE5>:76:?;<7=42669774=5<5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=89567=:JFDGN[\YJg`;Hzzm
z|x
}px|}|osz}{x
§»¨²½¯¥®³³¨£¢°¬´£¸¤¬¤©·¦¤£©ª£¯°ª»»É i¶¸«°£«½£^ª²|}³ª¢¡ ¥¯¨¢¥³¸«ÂÈĵ»½»ÅÈÇÂÑ¡ÆÉÍÍÄÖÖÐËÔ¢q|j^[T_RPGD><CAB8?874>F<<6<35345453B3::BM:A;AHB;:@<746<B9?@B874:96>=47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPeGb`cpJ@r}um}}|pww{«ÂÀ¯½Æ»²´Á¼´«³¶¨²®®½ª»¤¨¹·«¦¦¢¢££©¯²±«¤¢¥¥£¹®¨¿»¬²¹¥£¦}½°z§±« £¬ ¡§§¤¡¤°²¦ÁÆ𰺶ÅľͧÇÃÇüÕÐÍÄÊtsc][a[NKBL@EF>A?B;:4>A==5<6>333242A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\fF`igZ][{uo~|q~zz§´ÆÉ¿ÂÌÁùȼº¯«¹»²¶º²À®¥À¤ª¯»»ª«¢¢§«¯µ°ª ª¢°´§¢º¹µÁ»«¨²¤£¨
©ÃĤz¡¦ ®ª¡ ³ ¡¤ ¦¤¦§¤¯¥ÀÄ®©·µÉþ¶Î²Å¾Ä¼³ÑÉÈÁµuym]Y]kSMICLKKI@A=CD<5AD;:3=8B332262A05IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBf[Me\fTcjyr|xz¡¨º¾ÇÈÊÂÒÉÊÂͽÁ³¬»¾§º¿½»Ã¸¬Á©¬³»½ª°ª£¥£«®´¶µ ®¦¢£´½©¨¼Á£¶¶¯«¯¬ª«©¦¥¥uy
££©¥}£ ¢µ¦¥¤£¥¦¥£©¨¢²¬¨¼Àį¥³·ÌÀ¹®Ã³»¾Â¸¬ÂÂÁÀnzbYX]\LLMJGDCHBBACK:4DH9;4<7E.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQF7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>kI_XaZddVx
~¡®¦¤Ã¾ÈÃÈÅÓÍÎÍ˻·¯º½´¼Ê¼ÃÁ¶¶¼³¿¹¼®¯¨ ©§¶®©²·¢¨¡«·¸©¥¯¾Ã±½¹³§©³³¬¤«§ ±Å§|}ª¥¡£¢Z¥f£³¥¢¬«§¦¡¤¨¦¶«©º¼Äµ¥´¶ËÁ¸©¶¬³»¸®¨¸º½¸no[XUVOFKSNK?AHEDHFG95FM;>7>AJ.32025B55OVN;LFKRLOGGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|hW;=@BFBrFiIRebLF¦¡©¥¢¯¾®¡Ç½ÅÄÇÆÎÎÎÒʾ»¶±º»¼¾Î¶Ä½·¸·²²µ³·³¬¦««¸«©§¯°£¯¤¨¤¥´À°ª¬³¾Â¹À¹³§·³·²®¤¬®®¤¡tÁ}±¦£ ¨¡ `J¥T°¯¥¯¯¬¥¡¥ §¢´©ª³¼¼»«°²ÇÀ¹¥««±±£¡²²´¤qof\[OQLEPPQQ;HKIFHBC>9KT?A:=EM07544:B34NWO<JKNUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@CAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}iX;:BC@=QEWRsbWFH« ¢¨¯§
£¤µÈ´©Æ»ÃÃÈÊÉÇÌÎǾº²®¹¸ÀÁ͵ȺÀ¹µ¹±¯¯²´§£ª´´«©¦®¬¤®¥¥©¬º¿¨«¶¶¾Á¿¾¸²²Â°¸¼«£®´¬¸¥¦v¾ ¯¡¡©¨ ©¡§nv¢¢²£«©ª«®¥¤ ¤¨¢±§©«º·¾³²½¹¶ £§¨¥§¬©©efa_RLMGGNJVL=MDMIJACD<PU<AABDO18=77?B75UXN?HNQXRPQTJQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=..SaMUHe^HE¬¡»®ª«¢¤££¶Æ½´ÁºÂÂÈÈÅÂÎȽ¹²¯¸´ÀÂʶƱÁ¼´º«¨¬¯£¢ª´»¦©¦«ª¨¯§¤«ª½¼¨¼³·½Æ¼¶µ·À¯½¿³¨´¶«¾¤£¢¼ ·©¥£¡¨¥³¡¥¨©¤¡£ ´¯¥¥°««¬¤£© ©¥¢¡´´ºµ¨µ²³¢¦ª¡wa^`^JIFHMQINEFFBRKIADGAVRDH=AGQ1;B7:BF79\YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:g\FCCobGE§¤Ã¬¤©ª¨¦¡«¶Ä»¾·ÁÃÀÇľÍÇ»¾¹²°¸³¿Ãȵ¿¯¼¶º·¦¤ª«¬ ª«Ä¢¥¨«¦«¯«¢©¨¾¸¦½°·¶Ç¶µ¹¸¾°¾Á¶´²´¯½££®¡¢¥££¾¥©¨¬¡¦½¢£¢©«¡
¤ µ¬¦²§°§ª ¡¥¤¬±¶²ª¥©¬ ¡©idZa]OJHKOMHEDIA=OHA;GIH[ROK=HOU4BF9>HG5Cb[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,0Mv\4KZ5,MnW<-=)#zbQ5CKQ9oRF<KxecWL¢£Å¬¡¬®£¤ §ª¬¶°£ª³¶Ä½¿¶À¼È¾Êȶ¸µ´°³´·Áƶ¾°¸´¹µ¦¬ª«¥¤Á¥ © ¤©¯¢¦§½µ¥±¼·µµÃ²³·¹¾±ÃÀ··³´µ¢¤ ¡¨©«¢Ã©¬®¦ ¾¡¤«««¦¡X¥¡ ¸ª§¶£³¡ ¯¢¤¦®²«©¢¢¥¥¤ce[d`LIJKOFEAFJ?=JB99JKN]QQI=LW\9FI=DMI8Hc\LCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWsHE6=ue\KN¡Ã§¥¢³ ²§ª¤£©¬»°©¬µ²ÇÃÁ³ÂĽÆļÅʼ°°¶®°µ¯¿Åµ¹°°ºµ¬¨°©©¦¡§Â¬°ª¢®°©¤§½·¦¶º¼®¶Ã³³Â¿±Æ³º¶«´µª¢¥£«¡¨«°®¯»²¦ ©©¢¤¹ ¡¤®¯¬¥¦¡£§´¦§´£¯®¡ ¡¦¬°¥§¢
cf[heKILJSBC@HG;;F?99NMU^RSJ>O^^=HPBLLI9Nd]LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<v]^?[U^fr@8<HweA4¤ ¨£ª²¡£µ©²«¦¢¥²¬®©»²°µ´Æ¿ÄĵÀžÊĶÀȵ«µ¨°¸¬ÀÄ´·®¬¶¹¥«²«ª¦»µ¨°®´±§ªº²§¹³·²¸Àª·²Â¼³Å§¾®·´©§¬¡¥¤¢¢¤®¸±µ¶ ¨¤¤ ·¢¤¥±²¥ª¦¡¨¢¯²¢¦®¥¬¥
©©ª¢§¡yei]liNPMNT=CAMC::I@77QO]^RVQAW`\BJSHVKH:Ud]NFON[W[RPQX]GAB[PBG>NC9HGHNP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1[bZ33806p[bH05JpiVCWFyfC;¤£¡¦¿¦§¯¯ ©µ«¹¯«¤ª´·±°¹·°·¸¸Å½Ãǽ¼ÄÁÇÀ¹ÁÆÁºª¶¥»Á÷¸ª²»¢°²¥§«¹ª §°ª°´²ª©¶µ¬»¬²²¹·¬¹°Âº½¾¦Âª°·¯©ª«¦ª¡¡ °®³«°¹©¦ ¶©¥¢¢¯±³«±§« ¥¡£³°¥¡©¢©¨§£~
kimamnXQQZUACET@;;HA7:XPd^PVWDY^^MLRN^KJ>Zd^NHPN[UYPKSWZI?DXPDF>N?=IGGQPB=CFBM?:2D?77547?=95E4+75/251.-.,1>*'+=\p=>1.1e[d@1647gY`F(?8l}h[V:{cC=¨¡©½¡ª°ª£±¸©¥µ²«¡µ½¯³¸¼º½·¶Á¿ÉĹÅÃÀÀ¸Ä¾Á¸¯¶¨«·²¼¿¿´©®±·«¨§©§»¥³«¢±°³¬©¶³µ¼¯±µ¬°µ±ÀºÄ¶«¼®±¸«¬©¢±¥¤©£²ª³©ª³§ ¦¤´®§¡¬¬±§²¬²©¤¨¤¡¨µ©¡¬¦¥£
{flshpr_GYfVDCNXDZ9HB6>]Qh\NY]G[^]NMRXdJJC\c`PKMNXWXPJVVWL=EUJEDAM?AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,+%2+*5K1.'_^aU150=`V^8)C3YU\gK5zfL@¤ ¤¬·¤¬©¥®®¶©®³¹¦§±¸Æ·±·¾Áµ´ºÅ¾ÌŹÃÀº¿ºÄ¸Á¹²µ¬ªº·ºº¾µª±¶§«ª«¬««½«®±£ª°³®®¶±¹¶©®°§¶°³»¼É²ªµ´±´¯®¦¡³¨ ¥±£ ¥¯¡¤¢¥§²©¡¦±«©µ¥®°µ¯£§¬¸£¡¬¥£¢ {
{knxnu|aF`jYIHZ[={JGE6AbTiZM\aJ[]ZRRRb`LKE_a`PLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`Va.5(C^Q\.*B/JGP[H3cYUKD °¨±©¬¥£®®µ©·´¸£¬´·Ê»´»º¿¾´´·ÃÁÍǻý·¾¿À¸¿½±½®§º¹··Â·¬±¹¦®«§£²©¯º¤²±§§¢²³°²°´±·²¨®«±¦¸¯µ³ÃŶ©´µ«°©§¢¶¦± ¤±§©©¢¥¥¥·§¢±³«§±§¬°µ¬¤¡¬¨ª¹¢¦¡¨¤ v|
nqxv|]Kel\KOc\?b{GI8GgWe[L^bMXYWTXTi]POHa^_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANIg27'FaLV%-B.=EMQ<3rkJDC¤¤«§¤°²³ª·°¶«µ¹É¹®Á»Â·³²µÂÃÏÄÀÁ¾µ½À¿º¿½³Ä¨ª¹°¶·À½¯¬³³ §°¥¦°¥²µ¬«²°¬©¨´¹¬´²µ¬³¬©¬¨¬©¹®±°Ç¾¸¥¹¯©¦¨°¥££®£©¯¢£¢£¬£¡ª¦¦¸¥«´´¤©«¨«¯¶®¢£¨ª ¤´£
§ w~
}|}qtr~}~\Rdo^NZf]FD[G:NmXa[M`aNVWVWTYg^QRLcZ[TKGOTSNGIVS\N;P^JBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Cd;6*HdHJ+:I?3BIS,>k=GH©ª¢©¯¤¨¤³´±´µ±±¡¬½Ìº®Á¼Ç±´´ÂÃÑÅƾÀ²¾Á¼¿¸¼Å¨·¬³¸¼Á°¬² ¤§©¨¤°£ª±ª¯«±®¯«³»§·±²©²©«¥¥£º¬ª±Â¹´¬º¨¨¨©¨±¥©¤¢®ª¨¢¢¬¤«¡§©¡¬¥¢¬«·±± ¨¢ª®°¬¦§©£ § ¥
}w
tsrvl_Y`ncQsr\K<|F?WuX`YNc\NUVUWP\b^SONgXWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*35>10485(5/*,.30;),,'%234$,2-860)(1<^J0.IgDF8<B05EKX1@[?MF¬§¢ª²©©°¶¬¸µ®ª¥««½É¼±¾·Ã¯±³ÄÄÎÎÿ¿´ÀÃĺÀ´ÉĬ¯·®²¹À¿³®®«¥§ª°©§¨±¥´ª°®±¯³¬³»¤¸´¬¬®§«£°·«ªº¶¤¶µ¤©§¬¬ª¡¨¦¦±²¤¦¥¡¡«© ¦¤¢ª¤¬¢¦±·¬¢¤¢¨ª©¡¥¤¤
¤£|{t~tx¤yk^`ngWfdN@gLDbyWbXReUMVUVTO\]aUKNiWVVIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06WZ.0JgAA<<C+:JO^4D@HHD¯¤£ª°ª©µ«¶±«¤«ª©¼ÁÀ¸¹³¼µ¦³¯ÄÉËѾÁ»¹À¿Â¹ÁºÂÄ®±µ²³»Á¾³²®«¬§¶ª¥¯«¹¯¨°°®±«µª¶µ§µ¶«¬¤©ª£³³¨¨¤´´ ¶®¡©¨«¨¬§ «¬¨¹¶©ª©©¡©¨¡ ¤¢¦¢©¦´®§¥©¢£¤¦¦©¢¤£~
£txu{x~oqggqx\atiO]VHmxUdVQbOLUTUQOX[bVHPjTWTGPYUI>IHOQPxLNV=<KD?@A<@CUC9AK=5;E13;97*4:=+-341*8**+*,)*(/*&)%3;,$2)2021&/2Rc02?f=NX?C,>LT_/Ik6QE;¯ ¥ª«¤¯³´®ª¥¯©©º¾»Á±¯¸®¢¶¯ÉÇÈÑÀ¿½º¼Ã¾ºÃÁÀ¿¯²³²µ½¼Á²²³«³©¥µ¨¤³³¹¯£µ±¯±¹ª¸®ª®¶«ªª«£ ¶©¡¯³¡´ª¨§ª£ª¡¡¬¨½¯¬®¬¡§§«¯¢¢ ¨§§ª°¨¢¬¡¡¡¢£¦¨¦}
¤
¡
xt}uyz{tt{j£ui^elug|RWp^JxsSdSQ^MMRZgNLVYeXGSiRQ>BNQaQ:IHLSIqPLS;<I?;<=;@@W<<>H73CB15:93-5::)-31--6)(+-,52#2)',%.;.&1.0-14%,0Lh:38_=ad?F1CP[[+HO:WB4±¤¦«£¦¤¬¦´³°©£°§ª¸¾À¼°¨¹ª§®°ÉÆÈнÀ¾¹¾¿¼É¼Â¹°°µ²º¼¹À³´»¹£µ¦§¬±¶¹²§§ºµµ¼¯¼¥µ«©¯£¥¬«§ª³¤³¨ª§©¤©£©¨©½¬´¯®©£ ®²£¤¤¥¤¨ª¥©¡ ¥©©
}~
¢~rzy~|iw|zupq~iyd`hcs
zmgy]^UBWzlTaPRYKKMpt]HZ[gYEVfPC>KNDCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KI1%90%,,09/,,+6'17#-/GjI14X=fbAJ7GS`U*=<F[@*±¨¥¤¡«¤·²²¤¨°§¬¸Á½µ°£¹¬¨¨°ÃÉÉÌÁ·½Àµ·¿ºÈ¶Ãµ´³µ²½¹º½¶¹¶¿¢³¦««¯µ¸´ªº»¨²¿²º ¯´¶©¬°¢¥¨©£¤±¦° ª©§¢ª£¨ ¼¨®°®¡«¢£®¬¦¡££©¢££¡¦¬{|
£|yl}vyxb{zrppsxjtjgdhaosmbjp`oA\xkU^NPQJILSZWM\^mWDW`O^PHMDF;7HEKO<rhJK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*L>*49&'.34.0+/4&,:$40AhZ13S=e_DL6KVdO)=3Q\=#«§¤¢¨¤¸¯®¢¯¯©«¸Âº²¸¯«¨´ºÇÊÇ¿·Â¾°´¾·Ä¶Ã²¯º²³Àµ»¾¸©¹¸¾«¤µ§¨ª°¹°©¹¼£®¿´´¡®¸µ§¦§°³ ¤¦§¡¥¨© ª¯§ ¦£© °¸¤±¯¡«¡¬¤¦¦©£©¦§¡ª}~||¡y
}
{sp|qst`yxjopqpjsczlifdaf`[rjqLMiXZMPLJHPRQIM[_oTDXZRgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZgH*?0\Z5(¥ ¡¤¡·«°£´´©¨¹Å¶²® ·¬¬°µÅÇÀ·¿Âº±µ½·¿»¿¯¬¾°´¿²½Ã¹©»»¸§¨µ¨§«°¬³°¦¼¶¤«»µ®±¸°©¥§¯²¡¤ £¤¡°¦¡¢§¯¢ ¢£¥¢·°¡¦±«¬¢®ª¤¨¤¥©¤¢©¡z}yz
~zzpqvoot_xwemlljinfrilfi]ds`[kuiZI}][XOOKHGRUF29]^mPDWVYeMHIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<"8R=*113>D5,-'42*;+139dm84GAf[HTDU]hD.<2cV,2¢¡ª¤¡¢ ¸ª® º¸¦¬½Å³°¯£µ°¯´Ãü³¿º¸±³¹¸º¸º¯®À³´¹°¿Á¸¬½»µ¦¢³ª§©²«±¡Àµ¤§µµ¨²¼©¨¦©¯¬£§£¦¡²¥£¨©¢ ¤ ¤¸¨¤§®¦¥ ¨¨¢¡ ¡ª¡£¨¤y{}z
{w~{ltqllsaxthhjggpghidfij`jbjg[e{c`SsT\[SLJGIOS@!*h]jLCVU^`KIGEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,?0-N?.+-7,1195,&.5-80576`tB3CDg[KWGU`hB379gO'2£££§£µ¦ª¹·§¬ÃÁ¶°¬£µ®§®¯·À¿¼±Á¶±®²¶¶¸·¶ª½´¯²±½¿¸®¼¼±¥¶«¥¥´©ª®Á«¨¥°²©¬µ»©ª«±¥ª¦¤§¢¤©¡¢ §¶¥¯ª¯¡¡¡ ¦¡ ¥«¡¨ y
w|
{
s}}fxokjlguskcgddvbeffejjdkqZ^Y]mdaNhWZ`VJGHKMRX>9_liHBTS\[IHFEA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=+*,0A*JK./*+3722(57$+7.72685]yN2>HiZLZJVbf@:3BhH%5£¬¡ ¥´±¡±½·¡±Æ¼º±±¤·¬«®©¹¼»º¿±¯®®¶¯³¸³¨¬º±¯®´¶º¶¯¹¾¦µ« °¤«¯¢À ±£®°®·®µ¯¬¢§©¥¨¥¤¢© ¬¯¥º¨®¢¡£¤ ¨ª§©§|s
|
p~fymhkjgqrk\hdcsafhjnlgkjhm\lktqaTbhdeZIFLMOXQQVaeT@VSYTFHFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24;6#3*)6.55465Z|]19Kj[M[KXdd@A1JfC'4¡°¡©²¯¸¿¶ ´Â»½¹±¦¶°¨®¥·¸··¬º®ª«·ª´¹®¦³µ²®©±·¶±³µº§©¶©©¢©§¾£®¯µµ¬±¯©¢£«¨§£©¢¤ ¤«ª©»§¤ ¡k¡q£u©§¡xnj~vql}o^cagkuw~ghuifW\hsnNPjdgrg_dfnmj^`a
eNKD8FTg^JGPPTUKHSaoteFZQUPFHFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,+08>G601.*.*/568,#1'214:176Yl16Ok[N\K[fb>G1Qd=+.¤°¡ªª£½Ä¯©·Â¸½¼§¶°¥«¤·³±³°¸ª§¬´¦°µ£¨¸¶µ¨§¬·³®´³¢ª´«¡¤¦§«º¦¥¯²·®¤©®«¬¥¡ §§¡¥¥§§¨ª£µ¯££££¡¡ ¥¦ªrx
¡vif}rx¡p~|¡ {tvlmheczlqbTmcliqYjqoX^i[kk[qnzrgZ^FM?G_MFRVVQQRWUg^MWIRSOEGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82).1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Wa70(¦«ªª§©¾Ã®²º¼·À¿ª¤·°©¬¦³´®®³¶«©¥±¥µ´®¶¶´¥§©³±²¨¯«¡²© ££¡£³£¤¥¶¼§¬§«ª¬¨¥¡ ¦£¦£¤¤©£¤¥¦¡·££ ¤®©¢
±£¬yÔ¨ÁÇyx±¥·dÀ¿yy|Êq¼Å{r¶¦»{l±«°xhkX±®nei¼¼nhznrØ~Sjb¶²~rt¡ªWOWaOVNFT[XQPR\W\P@\DQNEGI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww21Tk\O[M^g\>L1[]41!¦¦©¥²¨°Â½²µÀµ·¿Â«¦³¬¬©§¯³©¯¶³¨¨¦µ¦§¸¯³²¶ª¥¤¨±®®±¦ª§¤±¤¡ ®«¡´º£ª©¢®¥¢¡§¨ §§§¡¦¢ °¢£
¯jjª~gdp¥q®¡¤~x»}k¡v±_j´[¥f`fzfjxk©d¾rg¦v±j|±xtcmm§n[ EhgEu`~g|¤§Y_«ixyj§7J¯\WSmc[KNW_\WV;NOWW/ITSIDEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:5/'$203B/=;Uv2-Vj\OYL_gY:M5_Y31¡¬§¥£¥ª²¸¬´½¾¯¶Ä²·ºÂ¦¨°«®©©°®£±º¯¤¥®³£©¹¨³²°£¥ ª¯¬¯¦§£¢°¢¬¥¡´³¢«¢ ¢¨¤¡§¤£ ª¦¦ ¡
µµx
©µw³·~¨~k¦{x«gk±[«{tqx °vwqkkl|N¤XHcc~ch¦`yruS^P©mcq~b.Q¢o[Skh`LK[dX\ZB>±xWXA#MhECDA@A19>88:84;:9<9:A:E::;6:CB8=?KNG:5:AFB@AD<FD;0201;F,0.940,.(/3,>831/2-D1<<S}n3+Xj\OXM_gX7J8aU50³¦¦¡®©§³¬ª»¶Â°»Â¸·Áª¬®®¦®²©¡¯¼ª¡§´¤«µ¤¦²³§£¡¨ª²¨°¨¥¯¬¢¤¨´¯¢©©¨ª ¥§¢ £¥£¢ª¥¢ Õ¹p°Â~Æ|Ö»|¤¤{£¥z¬yV¯z~j¹Z¹w|¦|zªy{±nt¼
oP¯§ÅQ zc`©ctrm`Sµ´È|c¤3Bv]PjidP@XgZdaJHMlK[ROYfYCD>E?0<<59;74<;8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DC./0483+-).323971#%5*>3==Qwj6*Yi[K]O_fT7G:aQ72%¡±¨¨¥³ª¥µ¨¤¼·Á°¹À±µ´»³µ§±°£°²¦®¶¨¨¹®£¯± ³´° ¤¨ª±©´©¤ª ©¨°©£¬¢¨¡¥¡¢¡¡¡¢¢§¡¦ §¡²nhµq«o¦r´sr¶{£¢~¡¥~°vÒÑv\®{
¤oª¦k|}{±sy³etofRÈZÂ\yb_`vsb^YÊo¿uMKµSUÆdTQjdfXAOk_lhOUGI9=VR[XXIC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>HI91746A>/.24252-).26,742&60;5:=Pqh9'Wi\BOT_eP5G=aM620¡¥°¤ª¼¦µ¥§¶»¼²º¿·¶´ºº³¥´³¡±±¢¬¯¤¦º®¤±±´¸ª¦¢ª¤²¨¬ª¤¨¢§¥«°¦¢¥¡¤¦¥¦¡£ ¡¥¢
¬{w¨v£©o§¡¢®
³\r³R®}¤q×}x
}w¯x³aelZ°XKuyf`_wwhk^¯wxl5yÈ®²_BTo^g`EPm_pmVUM.eciSYQ;BDAL:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@>V_cN6GC`I988 ¸°´Á¨³¨©²º·³¸¿¹·²µ¼µ¥·³´¬¨«§¶«¨±±«´¤© ¨¡¶§¦ª£¥¡¢¥¦¬¯¦ ©¢¢¨¥ ¥¨¤¡ ¡¢ ¦©}}¥x¡ªp§¡£ª|yo±Z¨ ytØvs§¤|{²^d ~l\«[Zhgªdr{ks]¬Z koeOJC¡\[Lt]bfM[a_rt_JV6JXHE=HFAM35A8.;>05A78@<6=<F?:<6?=B7.HVJEAH6KIN@IK@EN::@4.;>002144+*05/7,&21($$6671<PeeA&Uf[?2U_bL7FI_C1?8¡¿«´Â®«©¦´°·°µ¿¹¹²°·¼©º´°¤¥§§ª°©°©µ¬«¯¡¡ ¦¥¤º¢£« ¢ ¨¯¯¦¨¦¤¨«§©§ £¤¡¡¡ ¡«®mr´r©v¦s´xs³¤¢¤w¸o{¢kk¶Z
ei¡¢§mr´t²j
ku³af¢oj\`M¡|Rs£mz~oq\¯V<weTon.\§OcRkebmZc]`p{cTZQ>>mo3BB@?M9!7@6.;@37C58??3;<CDBJFMIF62JTKEBI6IJP?HNCFP=<E50;<010/75,+,426/#00,,289/9N`eD'UdY>/U^aL5FM^81C8¥º¡²À®««§·©¸¯µÀµ¼°¯¹¸«Á¶©ª ¦¤¡ªª¨¶£²¨¯ª § ¤«¸£¥£¡«µ°§¬ª¥¥¢ª±£ §«°¡£¢¡ª«Ô»s°ÃÃ~Õ¸x§z£¶u}wv²`ºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¡~tª}¾ns¼t²uxnqn¤t½^w}[ay¼kZV[jz^jafgbmwoY[YCA@r?CG+5H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-6A9§¡¼¢±Ã°ªª¬±§¸¯¶Å±º±®»°®Á²¬¤¢£¡©¤ª²¤µ¦¤ª¦¬¸£®¡¥ £¯¹±¬£§§¤¤ ¨«©£³£¥§¢¢£° ª
µ·xµwmknsnytÁ»½{²¨pt¸|{|¤»¹½uz´£tvut°ufi¶trpw¶^z}hynyc¬pu
Y[§jEdYSf`c]cQgfqmuBMPMD;ZM>J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7LT_G'SbV8*O]]=+:VV'>;<§ ¿¥´Ã´¬«§¬«©»®°Æ¯µ³®·§´¸©¢¡¥ «¤ª¦µ¨§ £¬¤¾§¡ª¢¢¨¡²µ·£¤¢¦¦«¨¤¥¡¨¦§£©¡¤°¨§¢j~i¦xs}tzez½¾Àºoq_rjZ^ack`cmwbke^`cqir}gj~rtx}}b[wthP\n}{kXl{sIJopNuMEW]f`L[Xgc_O[muiqRPDEN<HI=L?2,2A?8/5?C<9;@;=C>RVVWYZ[\\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7JR_I'S`V4)P^L(3=[O'?2>¨¨¡Á£´º¶£¬¥®§¨µ±¬È¬¯³«µ£¾±²§ ¢©¢¬¦®¤¥µ©¥¡§©¾¨©¦ ¤©¨°²¿¬§§¢©©¤« ££§¬£«¢°§ ±¤¡¨££¦¢gm}qw
µª ¢¡z¥lj||tqxyvv{kstudw}wkp{m`c]pgMYYfj`WZpznlfSOFS9OZMRO(+:KB635=@A9:C><ENSSTVWXYZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J&R^S10T^:+=8\K,<.@³ ³¢¿¡£±²· ©¥²§¥°µªÉ«¬±¥µ¦À¨´¡¤¥£ ª¦¬££·«ª¦Á¬¤¢¢¦¨§²Ä¯«ª©« ¬¡¢¤¯§¢¥¨®§¡° ¢¦ ¡£ |ª¨{
£~f¡³¯
vz|vyzofzkuyrhszvktdyf`jecdfkYk{pij\SLPD_UE@??,4@F;45;>A;<?>>HNNOPSUVVXZ\_aca_^^]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMMD/T]Q05M[17E4\G5<,@´ ¹¯¾¬«®²² ª¦±¢¬³°Å°ª¬£³®¼¤´¥¢¡¨¥©¦¤¥³µ°¦®¾ ¬¢¡¨©«¢³È³ª£ª§¨¤« ©¯ª¦£«¢ ¡¤¯£¨¤¨e|e~cylhkz¤«ke~g
eeih{¡kh£xkj£slnzzXe^
^lv\hswwnxxsmytw{iY^ktd]sij|qlc^RNWJdXAJ4=F7?FD71<=?AD;;DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AJ[J/7ZO6)EY/DO1YC;?.=¥º¼¹¯¬³°ª¥¨°§®°½±©§¤¯°£¡§«£¥¨©²®£¢¯¦·¹¥®£¡ ¥{¥¬¢¨´Ä¸¤¡§®£££ª¨¡ ª°ª«£ª ©¦¨¡¬¡¥°¤«¡¥ª~½r´rhx¹Ä¸q¢£{¦sª|ËÀÀ»q¢}À½ÂÁ{{ÃÀ}j¥±ooÊzwvzyqzqx
ymwcf_xd`ec^tgmdbXLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>I[L*#BP/#F[3PY/UAB;/8£¸Ãµ°¯À©¨£¯©°®¦²µ¯©¥¦¦°« «¢ª§¢¬£¥¨¥¤´¤¢¦®«¸³§¯¢¥ ¡¦«¤«ÀÀ° ©¯©¢¡£ª£ ¡®©¬¦££§¡¥¦©¤©©ª¬¡¥¡£Îxz¤y_®^§¢ |§t«¯^cªz§
t³c« ³j®t}¸aY£Ínu{Ú{p~v~e{vvk}n~
~m`qkpg`_yd\qhjcf`RTRW^KOC5AHED9>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-J0';\;L-!P@F4.1¿¿µ´°·¤ª¨³«¥²¬¬«¤«§¯ª §¤¢¯ ¨§£¥¡°¬§®±ª¨¬ ¥¥§£¤ª°¨ÀƳ¨©±®¢©ª¡¯§«©§¨¤¢«´¦¢ª©£¦¥¡° § q
t¨q±|q¬~¡¥wª}r~«vz|~ª¢~«{{VÄzoÁ}mupmeveoawnromeptup`gme`oiinfcWS]aYRSC9JI@D<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1' '45-&7=WJ-<'>1)3V@F!G:C1.+°ÔÆƲ´£££¡¬¯¶®©±§¨ª§««§¢£¢ ¦«¡¥ ¨¨¢°¬¨§¯¬¨§©£¢¡¦£¯¬£«´ªºÍ²¦®¬¢®¬ ©²©ªª¬«¤£¬°±¢¨¬®¥¦ª©©±¢£¥¤j¤uz©tz²p¥q ¤``R«®v®¦z{f£¤
£}©~®_|¨U¢z¢{ïÅs¯³³¹qb©¯Âthmpnyxwolfeerpf|ib]W`iXXULMQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799674,&$" ('"+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÃÉÖÕ¿¡«§¡¯¢°´°¯©¢§¦ª««©¤¦ ¥¦§¦£¬¢¬¡¤¯¢ª¤µ°® ©§¤¢¨ ¥±¦£§±¬¶È²µª¬ª¢ ¥³ §¬«¤®ª£¢«¢³®¢ª³±¡©¨®¯¶££§|ªlu«y|°o¤Ò¸´¸É²__©¤ yxªÉt£§©ÆÆxe¡¥s}¯^pµc±uK£m§Gd|pq{u}{n[fjsqfj_aYdm\^YINMKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75785/)(%&%$&),4ENPPMFKJVF*L0/>-5OTQ;<F2,$§¤ÁƸ©²¬¥¢²¹¬ª¡¦¨¥ª«ª§ ¦¥ª£®«¦ ¬©¥§¶¢¨ª¶²¬¦ ¥¬§£©¦®¡£§©°´Â²³ª¨¤¡£¯¦¡¥¦«°®¨¦¬£·¡²¹¯®§²³³¤§£Nxz£}¤§¸{|y¹~Ìƶx¡}v¤£¨~°
¬}a¥l£p
}r¬`¤sq`¼}RUu¤|}uzs
q\moxrjoZd_hncd]KMQTBIHFI:9K>B108866877-*5==?BDGILNPTVXYZ[\__^]__\ZZZYUSOH@882.,*.+*'&?QTVWWWYXXWUOUF<E3:P[T6?H,- ©«¤«¸«¯ ¡¬³³¦ ¦®®ª§¦¦£§ ²®¢©¦² ª¤£¶¢¢¢©´¸¤¢¢¡±§¥¡¢¯®¤¨¡¶²Ã±©©§¢¤¥¦¤©¯¢®¥¦¯¥¼¡··µ²¸°³¦¯¡£
ѵ÷y
¦x¢w ¥qª´nrj£|s¯¥¢¦mp²\¥szl{}n©a£qqbs²¸hx¦~x}ymixjysnt]ddnmfg`J[YX<HG@U3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^``][ZZXURRQF:2230/++(@QRTUTSTVWWXXWUVVTQOQ[U%!2AH$)%s¿¿»ºµ§¤µ¡££©§®ª«¦¢¦¡ µ§£©§°£¬£¤£ª´´¤¤¨® ¦£§´¡ª£¶«Ã°©«©¡¡ ¦¢¦¤¦¬¨®£¥§¾¬½°¬¢°²¹«³§¨±¤§z¨}|°w¤¥m²o¡|¡¨¬
®
© ¡{~«ªx y¯]£|¦§d|tk¯]¥kp
]`[ m§{{klc~umz`geqnhghCZa[=KT3U8BBC7$$3+''3, /6674359@CFIKMNQSSSVZ]_a`aaa]][ZXSPONI8052.*,ATVVVTTUUUUTTUTSTVVWXVUUQHFIJ#((½©Æ¶Á´¬ ®¸¥£¤¢°¯ª¤¸ £« ¯©®¡«©¤®°¬§§¬¬¢¡¥¡¤¨¦¶©À¯¥©¤¦¦¤¤©¬¬¤¥ ª¨¿¥Ã¬ª¢¡«²¹ª®§ ³®¨©v¯~
|º®e°e}¡¦¬°
¥¤¡¡
[lj³`{{±lgo±[}´[¤kÈ¢e{»YvµZ²}R¯z¬X¡n¨|y~ds~bxt|ajgqmfeeOUd\BU_>J(>9=4!",%2. *1/045799<ACFHJLNPPRTWZ^`_`ab^_\[XUPNJFC553./@UZXWXWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³²·½»´Á³£¬¦¥¶¨ ³³©£µ ³¨ª«¯¬¯©¢¯¬¨§¢§®¨¢¥£¢¥£ª²©½¯¥¨} © ¡¨®§¦¦£¥©» Ƨ¥©¡«´µ¬®¦»¬¬©£¯¤¸Ãº§¬¯¦¥ª~սªb£¿½}~£×º¸µ
½¾j£o«mz²°Çj«°½¬xw¢¾¼t§zzc}{dgy{`kekjbPa[Sj\@UaCN*=:4/$%2 $(0496677;>ACFGJKMNNQTW]a\__a^`[\YTQMHC?<A?5=SYXXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ»³´±¿¹±½²¢®¦¥²¦¥¿ª¸±¨¡¿¦¦²±¹¨¯¥§°¬®¦£¬¡¤©£¦§ ¨¢ ¬ª¹®¨£{¦© ©©¡ª§¡¢«»©Å£ ¯£ª³´ª¯© º§®®suª¤·e pgmox¤u®pq¨£®¤rmmmexomqzjqigqiigpd]cjoY]g~w¦`bqofd¢}vfxhkyydlcflbKdWJlY:QeER'K:+# #,)-2.5:457:<?ABDEHKLMOQSV]WZ\``a]][TPLHD=:AB7MXZZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^©³©¹¹²³ª©¡®£²©¾²ÃȾ¶ªÀ«¬£ §¬º£¤¬¦®©
¦«¡££ ¤§¨£© ¦¦¨¯º¬¬{¥¨©£±§£¬º°Á§¤³¦¬°±ª«§¸£· ¨¥¶¢©ª³£« ±¡¡¢ ¤¡«§
¤}gtvtq§m{¡¢riwpxw|zjldcodU`X@i[HcaOZ+F=+'!740.!%2(*699469;>?ABDFJKKMPPQXUVY^`ac\^UQJED>9=@ASX[\YWXXXXXYXXZ[[\^__`^^^__```_YY`¥©ª¥µ¶®®¢°¤ µ±¬Æ½Ä»¸ª¢¥¦°¨£¶§©µ¦¨¬¢§¬¥ §£¨¨¦¡£¨¡µ»¨«|¡¥ª ¶£¨¬·§®Á®£·§¯¯°¬©©²¸ ®¼¥¤¦¶¢¦©£¬¯¡£°¨¯£ £©«¡ª
}fuvysj}¡¢zrszr|jod^pja[_YncP`ePZ:GGE>2=>7/+&+)&&406658:==?AACIJGJKLMSSSUZ``i`eUPJACB:9EMV[^^[Z\[[[\]]__]^_`aabaaa`bbbdb\[c¤¨£°³¬®£©§ §µª¥³»¯¬¬¢£z¢±¤¥°©¸¦£ª£®£§ ®ª¨§¨¹¶¥¦y¢©¸¤¯µ¢°¯u¤¾£² wy ª±»u¬¤ªd\bv ¤~n³£§ª£esyp¨l¢¨e¥wjvq|aiZvhhrz¦eyxjoykqe_vplkh\febbpS\>NNNSG>@TC:1/&4:316678<;>@ABFHBGFIKMTTUY]`hfgWQJ<DG;8UR[`ab`^`_`aa_\]___aabcdabaaedchd^]f¦£¡¯±¬«©¥©®£§¥«¶°²¦ª§«s°¨«§¹ ¤«¢§¡
u®¦¨¤º´¨ uw §²µ³¼§ ~§¢z¢®·¦±©¯£y¬¢§©§
w¥z¦{±z
cympyq
txht t}¡k
lx{qqgdxojlj[ekjft\_ITLQ@E5.YUU7)!09=>643568;:=>>@DI@JEJKGSXZY[a`hfYQH9EL;>bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah£¦®®«¨¬ ¨±¦§ª¥®È¾°¡¦©µ¬§¢ ¾ }¬¡ ¨¢£º²§
pu ¤¬´´Êª®·
¯°®©¥|¨r{w§h¤y´¦¨Â«¡q¤}
±¡|¡ |
ms
zr|uÅf©£k¢
q
hwt|whhuqghk^dpmgmXhG]RM2E46Nac7&3<DGD964658;8>==>BL?NIJLCPZ]\Wa]jl\QE=KM@JdY]cfhgbbbbcc`_babccceiicbbbecafcbbi¢°¨©¨¥« ¤¹±ª«¦ £¤ª£¥ª·£¯¡§¥½¡y«¡
v¤£¹®¤~bm ¡¡¨~¡§
ª®£©~¢uk¬uM«x¨§©«}¡{z§ikg¶}n`dY{dhr}yl]{m_Sp\_ky`Ye}p§ªk£nr¥pif m[n|fZ`bWPowfmtrkjo^jpmljXiO]XF9A4GD_k4,ICQMN=84859;6@;;=AO>QRLMBJ\]_W^^bv`MD:MOMTb\\ffiibbdbddbab`cdcacikdbddgdbgeach ¹¡ª£¦¬¡¶¼¬®£ ¢¥¬¡®µ£¨¡ ¦´u¦
¬¤©¦±§¢in¢ ¢¥£¡ w§¡§©¬¥x|}¢ps{ym¨{¢sv¦f~v¤_z}s¢n·´ºtµ¨dƸ{p·q¤cs¬«`}j³~n|q£lr£s¤`³q|´ts[²jbotvrhoXklssf]i^bKE=D5QAZr2=SG_JR=<395::6D;;@IQ?UMNQ@E_^[YX``|dHC8LWUVbaZffkkbbeadc`ab`dd_`cknccddhdbgfchh£¸« ¤·µ® ¢££¦±¬¡¡¤«xp¡}¨ £©¨¥~k{} w¢r¡¨¥§ª~~z z£xt} ¦¢d¡|lhn{§}rht«tªh]
vhªj¸f\¨pa^§vvhunm§]©~x»k~ª[]´g\nryxki\qjyyc`fXbAQEO7VCRn4KZZ_NZD@151;;7H?:CHU?YRY]>Db^V`Qac}iEB9N[]XdfXfgnmbbe_ba__``ec^bdoq_deekecihgkiªµ§c«º²°¬¦¨®°¨¬¤¡ £jr{z£©£ iy{¢ ¡rhp©¢§§|¯£¢¸w£³¢¤y{«¢q¡|
¯µ}k¡x~´££«¨|}~tªZ]o{xbL~zz
cyBLY¢jq|mux±³§vns}osk¤]vHec`sq~nf`liv{debR^W]UW@YFQgDSW[bX^ID=B8?A:IE8LEWAVQ[VDFb\Z`K`m~qEC<U_bZejVghmobfg^aa\]^ahb_ecvl^egfkdflihki±T^ ¦³¹³³©¢«©¡«¤¢¨ w
ny
|r¡s
©|l
q¡x
|£¡¢®}µ{¥z© |§hwm~t¡sq|p®}¤¦£o^¨gu£co¥aÓ|{xrsc¢
~£s£uk³`sª²¨¼wm~¾¦©´^n}qns¢r]¤gs¦ah¦mÔ}
pyzk{xsn©¤g`eypkgfdnvwg`cS[fQQbIWIT`WS[ej\eQFCKMJKBJE8P@QNWRYOSQ`feiScwywIFEc^eZhiTihjocjg`c`\]]_hbahe|d^dgdkdjmghlh±«T\K~©¯±´°³£
¨ ¤¤¨ © {p}h}wol|¤ª
ywnw¢{¢¤³¡¢¶z¬§¤®¥p¨
{¤¡r£®¯¤®¡vµµµÉ¡s`©my u¡w ~oLf£pr¤{ytak~ kqd`r~tizi³µ´Æ¦s~zk«umuwizurPE}´^jvkyfjhbtupnV^TYiPShIULYSU]hknVgWMKAJMKHJNAQKPecimeussy|nu{{TPNl^h[kiRjhilglfce_\]\^ibdik{_]dhcjfomeile¡¯¦f?¡³«¯¯¶¢¢©¢¢¥¥§¦yjye yui
z¦©z}yp¡y ¥¨fnxl¢d|q¥wpg¦{¤zrv¹n¢b}¡mri«ju mn¦_ihu¢}`tobh e~iuocfmr¢Z_[c¡m]o{~srd¥mw¢dg§hso¢oSo _e¨T^TnmskrmpikyskoRYWWfZSmIXO]IXihsjYkVQREV\LXRaUhj_wtz}p||r{svv^QrbgbpgPjhhklnhdg_]^]`kcjivu]\cicjjslfkmc¤¦zetm§®¤©°±¦«¥¢¡¢¢{qh|st}{d|¨¢¬~sh¥} ª§¦x¤²¯¥wy©t¤n¤¢»n}¥¯|¥zq¨ f~o«cw¨l©¢uw«¦j°kv³©kmma«ªv¥v}¤ jw¬g¶tw¾¤Y¦«aurtp|tqcj~nhlSV[Vab]kM]R]I]mmv`[qY\`Zgtenoqcqt`xz~yrys~{{vbxdcmsdRkgholrjfia_^\bkbml{o\\bibljwmglnb¥ª¤©ª¨§®¤«¤¥©
tzo~ttrm|{
¦¥¦
vol©«£ u~y®£q
x~{r¦q}}zx{~~v z}k
[yxrzphn~qtq
e^wusuoynnm
^vhxe
©}t|jov}vmmgsy{x
[kXyinwrqoxxp]lnjgVZ`W]ekcVaU_Q_pxylkvejkjv|qrtsaoubt{xuzvx
}{mldxn^Wnghukxjijd\`ZcjelqunZ[bkdllymhloa¸¨¦¡¢¦¤¥«¢¡¬¡¦©~r|}~
{srp
{}
x~¤|§¡
wr
©¨ ª~~¨¦woyo}¨
p}qkp}hm]sqtkvtYrn}~j]jdz
_ixz{ugwkaprv_r¦
fnwqzpfgd{z[\jgnv[{ywunssf\mklcYY^[Ylq\_aZ^]ft~{uotckkj{}r{xtdmthm|~vz||zz~o{}s~ysiT\qiluougkhd]aXkhlkqrmW[emlgsyohjm`©°¡£¡¨£¢~¢¥{|s}v
qor~z §¢x
z¡«¢¢££ª¡§¦ {w§~²¦²¥k|wxe|
w|yt¡~}ups
w¦
}wl}zjrhatp}zwvovt]^oho`^Z\]ShrUc\\alhu||sopdkji|nyqipplf{rx}
{m|zx|}zyNdvjrmpzdkebb`[tfpfrqmU]ltmiyzqgike¹¢¡¤¡|« }y{nxr~mk~z}«r}zª¦¢¦ ¥v{¥{|ª¡ª~ow
qua~u
~
mxut¢
t|}rr{{x¦w|ok~|nhlmg^zh}{vtvu{w\`p}nu`c[]^QgnTe[^akivz~qlldkjhlslltoyo
ymv~
vq~{{|{`i{juhiejc`i\duhobtmlUcqyepzzrejmm·¡¤{x§¥yz
|n|xs
}}kh}|~}§p¡¡
|¨x£ ¡£¡£~
x }|¤ ¡¦}~tspv`}r|q
hwqx~r||qy{zz¥|
vzer|xzqljf^~sh|uvt|sj^`tvpxdcY_^RkhTeY_ahjvxqfkdlhfkn~hoqk~xzks~tv~|z}jrnsibhlb_qVtomn`xhmWjtvcu{zrbkoy²¤¥¡|v¥¡¢x{~q{tv
~xgc}x}y ~o¦¦
w¡¡z~¤y
w~s£¡¢~|vq}nzd|
pleuo{|x{|{q~w
y¢ww|v`xx}t~xgldaijwstu}q|bcasnusmaZa^[leRcX`aikvyqbjcmei}lhuhloi}ymqt|~z~|mvttmeljbcuViqn`xglbjvpfy{yq_rl
®¦¨}xªzy{}|{xtyzs}d^}
u}~}¤¡r{§ s¦sk
zo£|zqykul{}~m
wp}~dri{~sx~vx}|¤yt}tvna{uzq}oaocd{bnovsxwstau_oluno\[_^^k^P]Xcahmt{k_jfjciwnflhjlh}{wos}tz}z}}rzxxnlkh_irbhrofvgnlayik}{xpaxmª £¨}w®}w~{|{vwptt{o
}~|a\~szz¥~}¤n¢¡nf
z
p¢}{srukqnt{tn
qt{|dplx}}tsyo}|
¨{|~
x~qpchytup|b^p`kt^pj{yxlspex]mlsmsXZ^_bkZPWXecgqqf]ihgbgqndigdihzwuo
t{u
w
|x
zw{{rxjk_phtkromqgole|cnyvqlww~¢¡¨ ¦uª¡t{v
xyrs{
krpzmvnq[Y~vu ¡x
m¡
i£f
~w~||nuplmop{
ispwtxfrou|zyvtp{
z£|vxxol^rsrqpxZ^p`pj^oj}zpmmjlv`pojrmZXaabnXQTZfgcupb]kmdbfkn`ff_gkurspuxux
ww
|{vjqc|c|oqmtjholvx_qy{tut~¤¦
u zrxtpr
tqukomumv~mnUQ«xwsz x{¤|s
h
g
qx{z||kvjnkklzaz~vzx|ygslt~{qzpvzz}
||w}wqjlz`xomlrtV^obr`_lnyphoffsthpkawe]Vf``rSQN\fe]yp|_\hrbbefj_hd[gp~pkpt}v|
tuy{xs
~{yxfrj`~ook{`jntu_t}xxts
|x °¥
vtwspo
tpqpjivnn}|musRMßÈÖ|puvw{s
¡~wz~zvgl£cq{{z
|~l{erojkyy\yz}~zzhsjs
}k~n~|z|vxysmgqmjtohjtnS^odpY_krxfkjbfxropc_w``Vk_^wPNKagc]zqt\\ev`aeed`ebXissnkqv}tyuv~s{~r|~vesn|e~opkZlnyysavz{vswwy¯
w~}
twpyqnomn~rddxq}my}jhlc¤ÁÜ®ï¡sluv¢
o q£
~zuxvvn}£
^m|}
v
}}k}dxuinxsXzy~
~xfsj
kvn~ztsxusqguzbtmpbjvgR`qglU_ntyarc_h}prn[cr`bWnZ\xNMLdga^vsm\\dy^`df
`cb^Yjrknkrw~twxw{q}~{t~~shuqylzntqWqzvyqewyiwr§£}pxy
¡{{rwpsjokim|t^`xw{qu{gae|ëÚµÉÃÜsltwiq
|{
vxrup¡ai}}q~qwhvriswlZ|}uask~}mlx|}oqzulqlry`tin]kv`RerifS_pvt`o`]hprjWghbiXmV\uMKLeg^brs
i[\ey^^dg{`d_\Yknfoisx~ss~zvzs
}vw{vlwuyxtnx{}Yzqogxwdv
q
¡¢torw}|xqsnodr~iflwx[^y{{qqjagaÕ¶§xoqw|qj{i|{~
zt{zpuv~a
g}~~m|tkmvtsvukb
~|~~o_rp
{|~zpfy|~noz~unokl{~chkjYnvZRirjbQbrxlbe]Zjmsa[g_dl_nT[pNHOge\gnql[[cs`\clwde]]Zllbmjtwqo||txx
}uy|vpwy{om|w^tmiztsgs|r vv~mv~|v}vqoljau|gbiuzZ_x|zmqedhgW^qs¼Åvq~rtk{|}|u
vv}quqt{e}r}g}{y}i}vfoxxsvslj
xj^qxz}
{~rix
y|}nl{}wtoih}we]qcXosSSnsiaNftxf`]\XnnsYeb]jm`pOYlRDThaZknm{oZ[^mcZbowcf\]`kjclisvqn~{tuz|
v~xtryy~oo|qiyz~mm|vkjxtl
n}vjxyozspljd`szi`er{Z`r|ygpzaee±²wJbZ¤ÚÐr{x~
olzy|xxoqt~ziy
¥o~vx
p{}oxh
xr|e}~vcpshxpot
{vxyj\p}r
}zrnqsxxnn~w{ehj}r`YwZYqnNXrsg`Jlvta][[Yt}roWg]fjp_oNWiR?Yf_Zpkgyq[[XkeYcpy_h\^elhfliqwol}upzv
qq{|zytjzko~t}or|{onxg¡gphz~
|ixrklf_aoxm_boy\dlzaqv_eeÔê¾2:>ry
v~nl
v}
|xnvwnku{tfy§}ntvy
~{xlri~xm|{xayqdqh~mtqu
~sv}ro[l~tx{|xzqlry~tmkvuv]iixqYW|SZqeL[rre[Jpwo\[ZY]t~thYb[genciMWfQ=^f\]ve_tp[YUodYepyZh^_gmgjlipx}liyn{}zu
pnw~{{h{~jt{r{sw}yx~|kl~ki{~}kuqghc[bgro_alsahpzast^cd n\5Y¯µuj}vtwpm
uyx}zsgv~~op}hvymey
¥~n~u||q{}
|i~mk{zjzvr`w~qdrgumu{
|owy|t~lWo~vswuzxrn
r~}~znnimun]hftrR[{N\q\O\rpcVKsxjWYYZaqt`]]`gdhifNZhNAad[`va\tmXXStaZdnrWj^ahkgmlipw|kh|}p~~{zwr{oqw{j~{nwyvw}x~zm£{vzkmy}{~prpcf^Yg_pp``gpfjouato[adjv{¾¦£È¸q
s}xtrrp{tutwyyqcwzirufwvcj|}rsxx{lxy~uhzikysizv}h`w}jkth{iv~z~~p{v{s~bUv|rr|pwxpp~}y~|u
uiqilrp^hcsnKeuL^oUTYsnbPOsxaRWX\aps[a\hedcjdP[qIDda\dq^]whUWVw^\enhVk^ajgeooipw{niy~s{~x|v}pvrnw~p|xyztxyvo~}
zw|htz|vgom_d\XeYmra`aqlkhn`siY^dmw©Ú©Ç²qxpu{zutu~wpqm
txul`zyfqogun[m}y}x{mus
{
muvnhwem{vmjvv|abxzhtuc}zgu{tuqz|lYVs}ot~xksykt}z}x{r|rgtemmt[k_ueHnnL[bWWVxmbOStvXPUX^aqo\`cmdc]nbT]rGCf_]fh]ZzcRV\u[[gkaVj_`nffkqhpvxtkuvx~w{t~oqtqu~{wx||
x|}~
{~svyzvuy^~yt
wzbnl[b[[aVjsc`[gnograqfW]ck|Êι¢jmmlqq|~{
zytyuu{jmucvwpg^}yeqkjqcXl{sw~{nqq
{y~qqo}ghrbnxqjlqx}|z]eywiuxfvgt|rio~xm|]Xq~ms{nnqvgwv|qzt|yrfsanlsXk_w\IokNWV^TU{kaOTurQQTV^bt
h\`kjfbYnaXbpGAh]`f^]U{^OVdpY[jh]Wg`_rfkgrgpswxntzx~yus
pp{wwuzz|u~}
~~}|xuyw}muydso
ztcnjY_[]]Tgse`YdrrgsbkeWZ`iw¾®{·nbsht|rzz}xxsvo{vejnausjb^~xyfq}hjkZVox£
qqxumr
}yurohyajm`mvjgklzwzw[g}|xer}nteu
ofkztltb\o|kt|zft}mqhu~x}r|lzzzwpelbm~mnVk`wVKjkOROhNY|hbNUujLPTU^fvf]aphg`Wi][khJEjZbdWYUyZNWnjY]le\Yec^tfmdqfrptwpv~x|
}usnsxzzss
x}v}{~{w|wwziw~|l
rq~oflgW][\[Tdpe_XcsuiupdecW\\hporsdex~itvss
xywtunk{pbhkgtnf]_}o{}hlwfidUWrp§||vs|s{ym{zv|}uprmgu]mh_ludgfizo{rYgwtgpxubw
|njmzpere`lyfrv{}auvikqtzpyxr}f~xvnceam|mkVkcqSLikPLNpG^{faMUtcJNSW`jw}e]gsie_VcWap]LKkXcaUTUsWMXudZ_k`\Zce_wfmbpisor~ttwx~z}v~
nrt{ztq
zut}
|~z~v{£¥y
lu|{uzn
sz
}unjheV][[ZSbne[Xat{jhmh_bW_[ijkoglahyykttto
z}vunzhjyj_enhwgeXbwi~zoioff]UXoh§vz|yuo~oruywt
ujrvgho\me^ms_gajxh{m[mssio~ywawxsqoyqbph[nvdps{xarpgjxsqkwvtwc{~wvpdccn|}kkUjcgSKlhPGRlEaxeaMSr]JMTYekwze^mpid]V_UnnWKShXf^XMUlUK\y_[_k]][be`zhlaoounowuz}wzzyz~qtt~zwt
}}ls{
}~{v¬zlrzvuno|sjomddX_ZZZUbjg[Z_ui^ml\aV\\kfrt}ij]kvvhtwrn{~}yvrmzhiwf]drgzwccTeofwvfhi`WVYhd§n~xzpp|fxnyzvq}~ndvsdhh]lb]oo[g_muezh]torkq{~uubt
zwru~taplYprbqq{udrlalzojhywtrf
uzzuqdadns~jlTi_^TLscQGWbGbve`KTpXJLXXgkvzdenpfcZX]XveTJ\cXhXYIWeQHbxZ]_l[^\bd^ij_otymonvyr}}vvx}suuyzz}~jt{}~
yz~|sq®{{~frzt}}vrol{~lzbpoae^eVYYWcfk`]]siXpm[_W[\l{cpwvlb[mstguvqm
yywnoteite[gtfvvz_]Rffjt}aci\TX^bc¥hyt
xmnygwm{ztrx|xhevm`fa_j`]tkYe]oobze[w|knnpxxttdr~zvoq}rawdZnoapq|seqd^nvicfyztmnus}sqb^fno}eiTiYYTNx_RJZYHbtc`ITmTILZVilr{bllsbaYZ[av[SKd]XiSWHY`NGiuX^am[[_bc]
ihanxylokvxm~vutsqvvw|}~~~px}yxy~ssp¢{zyduysxvlto~ly|pr^pn`gblTZZWhcme\\rfRrm[ZXX`lvdiujj^Zmsqltttk|~|wonldiqc[krdtvs[WTd`r~r\ac]SZ`\derq
tljylooz{{qvrzzzdeug^b[ah\^whWb]ohawa[|vjirowtsthp~vrjp{lfvW\jmbprzseo~[`pqb^ip|llt~rqxkp`\elm{agTgUWRPv[SPZRHcsb`GVkQIPZUkkk|emoq`[ZXYlpWRPfWWhSTFZ\OHruX_cmcXa`a^jcdmyxkoiuy{k}
|y}nqowz|t|tx
utpuo¢t{{fxon{ofxpzlsvsk^tnagekS][Ugbll[\qdNom\VXUgithbtee]Znunpuuzl||wscekoa\nmcsxkZTVccw||p
\c_cT[`Zccnp
sjhznervs{kytuoz~u_frc[^WbdYaufU_`mdaq]]~phisqspuukm{
qrfn|oqnSZejeqsvsblvUbqk[^ne|elu|rrrjm`Ydjjx^fTeUVPUnXQWTPHer_aFWjOHXTVmid|ikwkaW\U[tcSRWiQYfTSHZ[PNxw[_fliZb`^^nbfkyunoivv~m~{krgt{u}r}
{ss}un¥swxn{`d|qfzsylmqvgd|lcfghS__Tg`lo\^nhMil`UVSofskexde]Yptmr{xsm{w{zlaelm^`njepy~gZVX`kx{{o^b^gVY`Xdbkq}wkjwl[vqkyiurmo{rXjm_Y]VbdXeqcT^aibblZ`~lfksunmwvkh
zmqeo{lqlbX_hhosts^imSepeUbnaybpu{ukolj_Xaghu]eVbVSNYfSO]OOHeo]cGYiMI_KXmd_xhn}d`U^T]t[TR`fN]aTSJ\ZQZuu]_fmhXba[^qcgjwqsnhvsys{~|zntlst
z}|rstwqn~zz}~~}}~~}~~~~~~~}z{|}~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~>.1111/o]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDEB1/0000.\pnmnnqI,00//,I
}}{{z}~||~}}}~}}~~~~~
-hS7¤¤¤¤¤¤£r]____aR4555553Sjggggk<;|}zzz|}{|~}}}~}}~~~~
|y{z{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~
~wxz{zz|||{}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{{|}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{z{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz{{|}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}||}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{|}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{~~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~zrtx|||{||}}~~~~~~}~~~~wwxrvy|}|z}|}}~~~~~~~~nzussvx}~|y}|}}~~~}~~hvu
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~iwuu{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
hmqs
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxz}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvuuvwuh`g`dinghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkiffggghhf_kl`jhigccbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsvyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__ac_\_]`]^Z\ctmeqpe]ZY_[XWSNMLKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{yvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSTPMJMNPROMRhplapukTPQTPPNNOMKMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTtsuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMNTflncosrWNNNOPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKKFBEIMahkqqonYLNRVPOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEAKOGHNahfpokhc^chWHHJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:;>>@T^Y]hminmljjllVFBDEEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@:;><;;<<EYfikojmmjjklWBFFDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprtusqrvxy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<979;;<NinokmliilU@?CFDCCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtsurqtxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::979::78:87IiompnkkW<;=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==?@===?C;===<Jgrwsl\?==>?@A@??A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquttusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCDA?=>@A?@;]n@>DE?>G[yrT@<;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVppqssttuyz{{|~~~~~~mLPQNOPNNOPPO><<=>??@>@@???BFD><<=@=8:;mvH8;:=>@=g\9<=<8:;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}|~~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABA@YQ<==ILEFvvM788:<??SU9;=<::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@CsyI;]y|wV<=?=>?BU[:;=>?==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy||}||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCEAHrykb}]>@C@@?>Zc>;=AEABBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{{{}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Fot}~}
uLACE@??PrvL?CEIJIIMMKEDFGHFGEEEDDCA?@>>BFJJGEEGFFJNNKJIGGHKLIGGCDDDEDABBC@CDEDDEDEFCBAEeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEhs}|~y
qBDEDCWuXGHJMLNOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHIHGFEFFFDFHGEEHHFHGHFQnnpqrvvy{{{z}}~~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJG`{w
lAAUtWHLMLMNLJGGGGDGGGGFHFHECDDFEDDHHCCCGJJKLLLLLLIJKJJIIIHJHHGHIHHGHFFFHJIIIIH]ooqrtvwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLN[|
Ul
|PKLKHGFFDECC@ACCCCFFEB@=>@AA@BD?>?DFHDEGIJIIHHIGIIJJIHFJJJJIJIJJJFILLJJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLLJU
uIIFB??@??><<<>::<AA@><998<<=;>;9:?AB@ACCB@ABDDBCFHIHHHLMLGIJMMNMJJKKJLLSlpqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJJIe
fBB>88::9878896479;<:8567789787688;;;=@;999=<>;;=ACEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIj~T:8656766646763568:876565676778:77789;7578979876:<@GFIFIFEFOSRSSROPPRTepqsttwy{|{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=ECBf
H6764688745784676:9766765:9:;:;898987779:98878589;A=>>BA?AKLOQPQOOORWkqrttuwy{z{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B:=qz>988;<=>9:;;89;9:;:99;:9===>;;<=:>;9;;<;<<99<8::;:999<?<<ABDIJMKIKLWorsutvx{{||{}~~}}}}~~~TFEFILNNLJJMB?:;<:89989:::;?>H~
l<;>ACEEAAAB>@B@@>==>@???@?@==?B?AA?A@=@@@>?A=><;:;99;?=;;==AACABCAXpqtttvy{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<=:;;==?@BR
^>CGIKJIFGGDFHGEB@@CECBABCB?@DHDCEDEEBFEFDEFD@B?<@>=?@>???>?>>:;=<`qqttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@CDFX
WGLMMKNIIKIIJJIECDFGFDCEFDBHIKHGGFGGEKIKIJKJCFCCDB@ACBDCCDDC@=;=@hpsttwwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@?A?BBGGIY
PMONLNKJLJIIHJFDGHHIEEHFFELLMIJGGHIJNMNLLNKHFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?EGG=<@@98<;;=:?@>?@CFIIP_
rNQONLLKLJHGEJIDJHGKJHJGGGKLNLLHHIJMPNPNMOKIGIJHIDIHHFFGGIGCBACUnpuwwy{xyzz||}~~~~}~}~~~~~TDAABGHB?8?@9:<8=>;=A>?ADHJLUq
_RRPMNMKJGFBGJGLJFKNKJJJMMLOPNHIKLOQQPQOOJHJJMJLFGHGFGHFEEBABB\orwxyzyyyzz{|~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAGKLPVy
|XVRRTROLKJDEFKONOWUQPOQSRMSTOMRLPSUVRSQPLJMMMKNGGJFFIJDDEEBDCcpuyyzzz{z{z{|~}}~}}}}|}~~UFFGHGGHF>@B=?==B?CCFVNFNOPTX{
hWVkaERQQPI;;QSR`u]UVTVYYRYXRZfPUWZ]RTWQPNRQPPQKLKHHJHEFIIIHIirvyyzyz{{|z{|}|}~}}}}}}~~~SHJIIGFFE??AAEBCGEDELXRMTUVX[|
}al[dU:XXXSQ?@VUY\d`VYbr]]V]ZVEQYZ[Y_TZgRVVXUTVTOOMJLKIILMKOMSosvxyxwzyz{z{|}|~~}~}}}~}~~~~VJJIHGEDDBA?HMIMPKIKPTSSXZZ\\x
g;~ynpXZ[ZRTRVVTZZuYU}`\X]_WIV]][[_YIYXY[]XXYWRQMPQMMOSQQURassvwwvxxxz{{|}}}~}~}}}~~xy}YNKIIHFBD@A:PQQWXPPOQSTTXXYZ[n
nfYY\YSUTWRQWVcQerXZW_gP`f[[X\gaGOZhg\[\]]WSNSPPQVVVVYZnrtwvvuxxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQORRRUSVTW_ux
}{\PUXTRTRQQLOMKfy[]TYUV]ZLTZTST^ZXWWWzkX[[\^TQQPINOWVX[Zdqsvvttvxyy{{|}}}~}}}~}}~~~{xwvsu{tk~~kry^[VUTROKFCDAM^lVRSNOQOQURSRRTcdv
~ymqVIKMNKMKHJDFHEC>TcURQQNKRTQMOYQMNQSUUMQSRPOMLHCIHRTUZ\mruvuttw{zz{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YVPLILIaltPQSNQRQR[RSRQRVTbs{|}{{
u_]KC?CCCCB?DPBC@C>BHGV@HNMG]iQHFOFDEFHGHCDHGHKGDBADAOQMSdstvustvz|z{{{||}|{~}}}~~||}}vt{mh|gnqfiedb\XSQPURsWe[OOOLQSQUYSUQQTROV`klrv{{xytrnstsyx~~lMG>?;;>@@??>jQKaEFHIEB?GLMGMQUIBE??<=<==?=?ACC@?<=B>JMGUnuuustvxz|{}||}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QRZ\Y^JJPQNKLQRQTUTWQQWUPX[b]agmmlokg`nrjmlqu{z}{xz||xwxeC@@B=:BCAADB\]O{NONNKLMOOQLKLWMHG@A<977599=;;;8989?;BH?\stuvuvxz|||}||}}}~|}}}}~}xuvz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIHPRQOMPQNQRTVXSRYTNYZ[WY]^^_e`]^qvk^`gkwooljonnlfbYHFFHBAGIEEFDMROaWRWQPSSRU[OOQWPMIDF>:96587979:366795<B=estvxwyz{}}||{|}}~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMLTTSQQUOLRSTWXTTXRLXYZVXXVXY]WXXhsk]Vaskaa_^da_^YUQMONLIHJKIHFCQPS[WTTNQSYS\eUOSTQNKIHC?A9988978857578599Gmqtxxz{{}~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOTVXXYSVTLKTUUUUWPTUWTUR]n^RNY_[VY;DVXT[fJLPRROMMNNNLJFQPUYSTNJOOUST\VRUSROMLIHHF?>=:787659967675Wppswyz{|}}}}|}}|}}}y}}|~~~}||}}~}|rvqxxrvuqqnppopuvtnjddjppqrpofedc\^RTZVWUTWTRXXYYYRUOIGOPOOMRJOPPPNNOTLMIPOSTU2=XMIAQ=caQSQPNPQPNNMQNTRPRMILKOQPRRSTQROLLKLLHCBA=::876;B4566:doquwx{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqniihpVVTUXUVURWVUZYXWUQSFFAFGGHFJDHJHGEHLHKIFLMPMG/E_R>3@>joaRRQ@FUQPQPQNQOPOLJLLOPNNPQQNPOJLMMKGEEDB;==<9=G6677Dmptvy{{||}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknaePSTRSTOWWVYYVQQQO@>;=?ABAC@BEDA@GHGHFFHJMKEGCORC8ENS]fSQSAGUPOQQPMMNMKLKLNOOQMOOMHLLIKKLKGFFED<AA>;@E;<89Spruy{{{}||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpknqmimcLOOMQSLTVTWWULLKI=987;?@><=A@B=>EHGCFFIGJJ@FAA@FHEJOHPRb\QPRNSOOPLLOMKMLMON[WKMQOGIHCIJLLJFFFE?BC><BF?B?Adptw{z{{|{zzw|wy}~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B>;?B@@>ADIECHGIFIEBB?>=CBAGJEMObeQMNNWKLMKLMMMLKNNSdMJLRIIIEAHJLMNJGIFBAB@?EFEHDKnovyyy{{z{zwtxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLMIMPMPOHKE?B=999:?B?<@BBADEGKFCHIGGHCC?B??@A>DECKNQTLJIMTGIIJLJKLIJLMOPRPKGCLGCBJJLMOMIJIGCCCDHJMLIYrmwyxz{{y|vrpurtyyvxjqnkllnttmtu{stxronqovsnporpopstyjN`gsjt|ygosqiqheqHJCGHHGJKIJKDGB=>=:::;@B?=BBBCHFJLJDIIFGGCC;A@B>@@CDCIMPGIKGHKDHIKMHJLHIJKJM]RHHDNFACKKMMPNKMJKFGGJMNQNLbmivvw{y{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoijthdoFKDFEGEFFGEGBC@=<=9:::@C@>BCDEIFJJLFHIGFFDB;BCC>@DDCEGLNHKNHDHEILNMHILGFGIILNKJHENIBFMLOMOMNNMKIHIORQRNRfffqosxu{z|lhjnfkpmsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGJCEFEBCBE@DB>@?:;;=:=>CA>ACEGJFIHKHGGGFEC@=EEB>BDCCEGHIGMPJFFGKNOKFHIFEDEIJHKIGHPKDIMLPMONOONKJHMRUUROWd`amgproryzgehhdilgqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutwljuumrvqlnlerLHDEGCB@BD=BA>@=::=?;>>@B>ABDGKFIFIHFFGECCAAFFCBCBDEEGGHFLQLIOJJLLIGHEFEDCIIHKJGKRMBNOMPOOONOOKKKOUWVUTX_^\iaminhrsbefedihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwujsunutsqrjksMGGFHBB@DE<A@@C<89=>9?<?B@@@DFHEHFFHGEEDCECDIFCFEBEGEFGGEJMKHQMJKHHIEFHIFCIJIKMKPSNDQRPQRNOMNPMLMSWVWXVX]Z]d`hbjigk_eefcgggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxmouorsuqqiozMHGHHBBBFE<@BBD<7:>=:>:@B>??CEFDFDDHFDECDEEGJEEJGCGHFHGECFJJGMJLKHJLFIIKHEKKLLOORTOISUSQSPQMNQNMPWZVZYVZ]ZXa```^hec`dfhgiihjfhnllnmqpiuuxrrpupppruvpusuvu{~}xvtwvvvxplupmsunprsyNIIGIDACHE<@EBE=8:>>=<<AB=?>ABFCEBCHECEEFGGGIFHKHCIHGIHFDHKIGKHMLJKLHLKMKJNLONPRUVOKUWTQTQRLOQPOTYZZ\ZY\^^^`c^\ackb`dghr
hgjfjmnponsrjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqvpuMIKHJFBEGE<@GCD@:<>@?>?BB<@>AAFCEDDIEFEGEHHFHGIKJFJHHKHFFLHHHJGLLLLLIMKMMMOLPPQUVWOKVVUSSRQLORRQV[[]^[\^__a`ad]d`ef`ehjcssfjhglprqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrwovJKLJLGBEDE<@FDDC;??A@@@DA?B?ACHBFEFHFIFFDIHGIHJMHHJJILJFJKHIJJGKKMMJJMLNNNPKOPRUXVMNTVTSRQPLNTSRW[^^_]]`_`aa_acebchbdijgvlkigmosqpqppryvruutsmmssmqrotutrpswtuuwvuuteqskpqjrvowKMLLMGCCAD<?EEEC=AACBBCEABDAAEGCGHGGFJGCGJGGJFILHIJMKMLGKIHKKNQKRQMSMKNNOPPOTOWXX[NSQW\ZSVPNTUTTXZ_bb_da^`b^`eaacingbihhnxvlhimosrpqrrrvtsusssnksqmprotvrqquvuswywutucmtkopjqtowLNLLLGEA@D>>DEFC@CAEDDFBBEGCCIFCHJJIIKGDKJGHJIIKHJJNLNLILHJLKZfJd\KlSHON_nUks[qpbwcRPavuhucav`Xnqbdvinzf[lt`ljT_wvijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqrqyLNJKJFB?@B?=DEFDCCBEEDFBEFHCDJEEJLMKLLGGMIGIKHKKIKJNLMMLLILML[sbdp^lmUMNfs]geqlntgpi_aYnnbppbkjjgoqtetno\ougpMJryvkb`keemxmkvmnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIIGED@AB?>BFGBFCEDEEDCHHGDEKGGLMNKMMGJNHJKJILKJJKLMNNMMJMMM[roonpplkMPQlWNibtrpamov\YlQ\mmZqmkomxxtsip\_rkqjUuyxpc^kfbgppjiopprspqpqqrrqqrrtlmrmnnorutqtrtuutuuzvutenukpolsrryJKGHEEEBBB=@@FGBGDIEEDBFIHHEGKJGMMNKMNGLMILKIJMIJJJKOPONMKNML\hdu]lqWlNPQmUZk^klvaldtTecNmYl\tpkilxjwuhp]^rkhWbcw|oc`ggadityknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvIMGIDEECAB<B@BFDGFLHECCHKHHFJLLFNKLSRLGLLHNJHHNHJJIHNOMNLJNMJZsppoqqmlOQRnYqkgooqqomt^nXat_nopoqronusttj[]tcwxrjnzhaacfbbjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyxtukoumtonssvsHKHIBEEEA@>CDBGCHIMIFCFJLIGFJMLFOJKWRKGKJJNIHJLIKJIHJMMMLIKKKSkbZi^_icrrZ_Yjo_eeUk_c[aaQ`lh]j\ojid[pfdp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrutwrHHFIDEDFA@AEEDGBHJLHFDGKLIEFJOLIPIL[QJFHHKMIHJIKKIHIGKKLLFHKKLLLKIKLNT[\TPTLPONOOVQOOQNOQJINPQeriTYW\[\UYZ]X]\\cfaaebce__fkmhmtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusHCEGFFAEC?CHDFGDIKLHFDGKLHDGHPKLOKLWLIFEHIJHIKILJHFGGIGHIEFLIJKNLIO\W^P\[`^OXYS\\b^MYZMXaRJYaZS`d\aX[ddVVX\YZX\VY\]b^d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCDLMBCDBEIEGGFKJKHEEJJJGEHHPJMMJMSIHFAHFJIKLILJHFEIGDFGEEJHCJMJKT_Y`X`a[`UXYT^^Z_RY\P^\YN^\^S[^c^Z]`c`Y_b[`^[TXWY^]cbcacfiekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIECBCGGEHGHKIIIDFKKKFFIJNKNLHLNHHF>GGLIKLJKKIGEIDCDDBGJD@JLJO[cY_^a_RTRW_`\]Y^QY\MV_WKQY[PZ_aa^^ca`bbbcceZQYVU\Z]c`__cebhomnllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQKFCGEBEHIFGHHFFJGHFHKILDDKJMMLLHJJHJG?GFNJKKMKKKIGGCD@DAHIB?IJHO]aZ[d]_TQRX]\\\_ZKW\LR\YIN^QO\_acdccb\dcbdcfXQUTR[XZa_^^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMC@IFCEKJFFFHGGIFFFILJNEDKJLNJLIKJHIFBHHQMKKOMKKIHGED?ECIHAAGFET]Y^X_Y_[]UXXP]]QKJV^X^[]VY`RQ__aba`bb`cbaddbXOQQQ[S[]]]]^__dhgljnnp{{|~{
srw
|x\SKCAGFDGMRHCQJFHHHEFKJMPEGIJKNLLILKIIGDHKQOMMPLMKKHICDAEDHGBAGECWUE\T^SV_XNTUNZ[MJKT`a[_X^^a]OYb\``_bcb]abW__TPNOPXR][[\\^`bffelfoow|{{}
zo
~INFDEFGDIRbPCV^IGGHDFMJPPEIIKKNLKKMLJJGEJMQQNOPMNLNHKADACDFDCAEFBMHBKLPONLFMFGIJHGLLMOPILOPOSPLQSRUZYWYXXdWOSTPPNMOUT[YY[]\`adecgcklpsszy{z~{}{
}KIEEGFGDKM]LGGXMGHJHGMLQQILKLKNNUNOKKLGGKPTSNPONONOHKF`ED_LDfcEM[I^[rmOMUmYLCP`UlWgJ]WU^DLQULMTVQRTXWTXUT\UPfZhhdXSkSVVU[\[``aaab`fhfnlhrz|}~}|zr{z{
~z{LIEFFHEEKOSIKF`THJOJIOMRQKMLLORUROOJLNGHMQ[YOPPNOPOIJQQI|YYrsXPmHqnoaVPqqsPCksmqtpSo_[nX]V\XUkhU]VcZ`Y[`VUWjtuu__v_Xa\\f[_aaaa^`bgmpl`pwtx}~vxzlv~tx~|~|z~wwNIEHMNBDLLFJLFRVLKNIKRXWQNOOMQTNOQPKKNGMPS[ZTQROPPPJHZx]TxehYRTQvgtlpbnfjQrOMwmjrpsrqrpoo]fzuxqqzq~s}ku}bRg|essosr{|o}yor_``baZ``gknkblfgmw~~{xwtvzir~nt|~wx{~x|u|||ssNKF`]GAEMMHKKHJPNMMJNV^YULQSNYZMSSRNLOIQRTYWWPTPPPQKHgxlcxrmZKMUypumubnvPdeJfvqmwojfxxiWrRi{lijzz}lxzphoXvvjuup`rg}ilx|o^__ba[]bdgijdgbcdllppstsssyqrxblugry{ssuy~suzn|}yxrnNKStNCBEPPHJKJLQOOOMPZ`ZXKTWPa^RVQYSLOISTUXWWPUPONRJKrouuquqdibWnLqp^FhyWvTKhx}x`y{sna^mocRgqunmypwlvttqlm\t~zkmy|ktm|kpvux^__b^]_ddighee^abiiijknokqnmjpacfdowxompsy~nqpj{ztromLL[VHGEGRPILMKLQQQPPQW\YUMUYUfXRRY^TMNITTVWYWOSNNNQHRmHiwK`dvvVXlOnl{sajgvUKWkh}lmlx`[pz{^`zscroxqhe|ir|]TKl`vukiv|{m~xk|p]^^b[_bddgeeebZccikkrsrwgmihdg`alagsrlgmmr|kmhk{tmmkmOHJKHIIHQPLNOLKSSSOSRWRVTPW[VVTTTa`PNNKTSSQUVNNLMOPJHQNPULKKSTSRTPVUQQNQQXXQNPUTXXX[[URSW[WXWZOSUWWXR]YW]VTOYRWWWXY^[gr^[[Y\]_cZ_ccdfdccbZccfffmnmuffgc`f_]g`dlhfgkhpzhggkujhgilQIKLLMKJSQMQPOLVUTPTUXUYUQZ]VUTWUYXPOLMVTQNUSNOMLQPKJRRKQMKKORURQQSSIHLNOQRQQQTVRXW\WSSPQUVVSZQOSRWVTYVTYUTRUTTTWXW]Z^a]\ZZ\\`c\]bcdfdedaY`acabhhincad^_c]Zd\bma^fefmsdihkkedcfhPJKLOOLMSPNSQQMXWUTUWWWZUS\`VWVYUXTQPKOWSPNUPNQNKSPMOVTNQNMNQTPUQSTUNKMOQTTRRQVWUYZ[YSURTWWWY[TOTUXUUZUWYURRXVUW[YZ_]UY^\^]\]`a^[bbcgfddbX_ab^`hefda^_]]^ZZ_Z_g`^]]bhkagfhfd`bcaPKMLPQLOTOOSQOQZYXWXZZXYV\jdVXYZWVTTPKOVTPOTPPPNMQQPRXTQQOMOSVNWRTUUONMQSUUTTRTXVZ]\ZVWQRWXV[[WQTVVVVYTWXUSRXVUZ]Y]_^V^]^`\\`___ZbbdhgddaYb`b^^fcc`b]\\\\YZ[X[a[^]\_b__bdebd__`\PMNNRQMRROSTQPU\ZZW[[\YZ[dqmhd_[YVVXRLMVSMNROQROLPSRUZUSPPLPWVRWSSSXMOPRTXUUUSUYX[^][[VROUVV[[WRTWVWXVTX[TSRZWV\^Z^_`Ua\aa]`b`]`]cacghdf`Yc`a__ed_`c[Z\[\YZXYW\Y\[`^_[^^a`_b\Y`ZQNONVQPTROUTSPW\]\X^\_W\^jqwyc\[VVYQNOVSNQQPRTRKQTTYZWUORNSXWTSTRRZOQSSV[VVWTVZX]^\\^VSNTUV\\VRTVVXYSTY\TSS]XZ]^\```Vb[cb^ac_]bab_dfidf^[d`a`ace_b_YZ^[\[YXYWWZZZa\][]\\Z]`W[[ZPOOOYPUURQWRTP[]^^[`\`U\]ijr}slg\UXWQORZSRQTRTUTKQWV[ZZSOSRVVVTOVRSZRTUTX]WXXSX\X^]YZ]TUNVWW_[XRUUYYYUWY[TSV^Y]]`]bb^Y`[eb_dd_^cca]efidf]^da`abcd_b^XZ_[\[XXXXW[Z\`\[[\[XZ[^V^Y]POORZPZTUVVTTT^^`_^b\`U]^bkyum}lZUYUQQS\TUTUTVYWLRZW]Z\ROUSXVVTPXRSWSVUU[]X[YUZ^X_^Y\YRWRYXY_ZZTUVZYZWXY\VTZ^\^`a_dc\^]]eabfd^_dc`\gdhedb_da_a`bb_`^WX^Z\\ZYYWV]Z]^ZY[\[WY\]VXW]SOPWYQ]UVYWWUX_`aa`c]_T]_beev{hXYYSVSV\WWWVVW]XPU]Z^]]TSXSWVTSTXRSVTXXX]^X][V]_X__X]VQYTYZZaY\UVX[Z[YYZZXV]^_^cbadd\b\`fadfd_`dbb[fchecfaf__aaaa`_^VU]Y[\[Y[YY][[[XXY[YZZ]_]TY]UNTZVS\TVWYWV\`abcac^_V[`da_zuohY\ZUWUW[ZY\YXY`WPV^\`a\TUXPUWUSWVRSUWZZ\_^Z_\V__Z]^Y^VSYWYZ]bZ^VW[\[\[[YZYY^_``dbceebdZbfcgfe^ab`c^cciddg_g^bbcaa`^_XTZZZ[[X[XX\[Z[WWYXW\[\`]V]]SPVZVVZUXUXWX]_badad`^YYadb`kfh^\][VWXY\\\_[Y[bVTX^]ac\RVYQWVWVWVTVTX]\^``]a\Wa^[^\[^XVXX[[_`\_XY]\]]^\Z\X[_a^`dcdfffbYceehgd^c``ec]fidei_g^cbcaa`__[XY[YZZXYXW[[Z[WXZTY]\Z`\U^bNRWYVWZX[\XWY^`baeada]^Ybcb_a`a^\\\WW[[]]__\Z]cXZX]`cd_RXYPXWXYYWVXV]]^`a`_b^Ya]]^Y]^YXVW[\`^]_ZZ^]^^a\[[Z\`b^bdcefefbZdfgigc_c^afdZiibfice^bbca``_]]ZW[YYXXZXWZ[ZYWXVU[]]]``bbxLWW\YW\[\]ZW\]_`bdbba]`Xbcb`cab][\[XW[\_]`_][`d\\XZcec`R\YOXXZ[ZZWZY`]`bb`ac_\b]_][^^YYUX]^_`__\Z^^`bc\\W\^`bbcedgeefd\efhifcbb\cg`\iibhife`baca_`_]][Y\YXWXYXW\[ZWWXPXZ]acffrkJYW][Z_\[^\X][^_acbaa]b[bdb`ccb\[[ZWXiq`\`_]\ac_^YYdedaS_ZQYX\]\[Z[[c`cbc`bda`c^`\^^_ZXV[_^]aa_][`abeb_]T\``cddfdgfefe^efhhgdd`[fg^ahhchhfc`b`cb___]]\Z[YXXXVZV\ZZVVUMXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{{{{{{{z{{{{{{{||||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvuvvvvuvvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{|{zzzzzz{{{{{||||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||v}}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½°Á¾¾¾¾Á¢~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}v~~y1333332j{éääääèÊ»ÎËËÌÌϪ}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vxxyxxxxwwwwwwwxyyyyyzwopppppprrrrrrrwzyyzzz~||||||}}}}}}|||}}}}}}|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvvuuyvvvz{x{xwvx{xyyz~|yyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{{{{{zzzzzyyyyzz|{|||{|||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwwy|{{{y|{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwwwy|z{x{zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z{xwww|yy{w|yxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzz{y{y|xxxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyy|{yyyyxxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyyyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd_t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`w|{{{||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbu}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}||}}|||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrrqpopqqqstsssrqqpponnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxopprrrrqqppqqqrrssssqqrpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnnnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrsrrrq
soopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqppqrrz{qqxqooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqrp~qoroppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqpv¤{nvopppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqpvªo¡zoqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrrpv«q¢}prqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssssssstz«¢{¢}rtsssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz~|~~|vvwwvuxzxxxxxxxxx²¥¤«§~{{yzyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~}|||}¦¦¢²¤¨z{{zxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}}}}~¨£«~||}}}}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~£ ¡~~~~~~
~~}~~~}}}~~~~~~®}~}~~~~
|||{|}||~~~~~~~~~~¥¢
|}||}}~¤®¦¢ §©¡¡
}||~~
©°°¤¢¡¢£
}}}
¡
¡
~~
}}~~
~~~~
~
~~}|}
~}}}}{
~~}~
¡
}~
~}}
~}~~
~}~
~
~~
~{z
~}}}}~}|{|
~}~~~~~~~}~}}}
~}}~~~~}|}}|y|
}~}~~}}}}{zz~~
~~~~~~}}~~}}}}~}|zzz~~}~}}~
|}}~}}~}~}~}}~~}}}|{{{zzzz~~}~~~~~~~}|~~~~~~
~|~}~~~}~~~}}}|{{|zzyyy{~~~~|~~~~}|~~~~~~~~~~}||}
~}}}~~~~}}}}}|||{zyyyy}~~~~~~~~~}~~}{|~~
~~}}}~~}}}}}}}}}{zyyyyy~~||~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
}}|}~}}}}}}}}}}}}}|{{|z|yxy}~~~
~}|||}}||}}}}}}}}}}||{z|xyz{|~}~~{||}~
~
~~
~}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}}|~||}
~{z|
~~}~}||||||||||||||}|||~~{z{zxz{{|}|~}~}}}}||}~}~~~||~}{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~}~~~~}}}{}}}|}||}~~~
}{z}x~w{~~~~~~|{{|||||||||~}|{}|||{|||zzy{|z}
~~~
~~~
~~~|~~}}}}~{|}}~
{z{ywz}~
~~~}}}||}~}||}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}|~}~~~}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~}~~}|~}~}~|{|||{{z}~|}|}||~~|{{}~}~~}{{{}|z{{{~~}||~~~y}~v{vx}|||{}}~}}~~}~~~~|~~}}}{{}}|z||~||}{||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~}||}}|}}}}{|~~~~~~|||||}|~~{|{||||}|}|~|}|{{{|z{|{{}z}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}~~}}|}}}|}~|}{}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||}}|}|}}}~}}~~|{{{||}|{z{{yzyxy{~
~~{zy{}}x|zr}{{}||~~}}
}}~|~~}|}}~}}|~|}}|}}~~}~}}}{|}~||{|}zzyyyy{{~~
~~~z{y}}zzz}q~z{}}}}}zx
~}~~}~}~~~}~}}
}~}~~}}}|~~~}}}}|}||{|}{{{zzz{{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv}
~~~~~}~~~~}~~|}||~~~~}|}}{}}}|||||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||z|{|}
~~~~~~~~~z{z}}uqz|zqz~}yxtt
~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qyx{xyuu}
~}}~~~~~}}|}}~~~~~~~}}~~
~~~~}{z{z|{z
~~}~~~~}~}}z{|
{{syz|pwuvwyutz
}}}~}~~}~|}}~~|z|z|{|~~}~~}}}~}}{{zx|vyy{qtxwvxury
~|}}~}~~}|~~~~}}z{{|||~}}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{{||||}}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vwvst
}~}}}~~~}}~~|~~~
~~~~
}}}|{||yz{z~y{yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst}~}~}~|~}~~}~}~~}~
~}||||zyvyyzyvyv~|{{{~|{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}}}||~~~}~~~~}~~~~}~~}~~~|}||{|uxyxxxyw{|{{{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~{~}~~}}}~~~~~}}~~~|~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~}|~~~~}}|~~~~}|~~|}}}~~~
~}}{{||zw|ywxwwx{{z{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqsoxwq{
~~}|~}}~~~}}|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{||{zzzzzzxsvupprowvr{
}}~}~~~~|~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyytuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|z|}{|}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z|||yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}{||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|z}|{}xwvyyz|}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~~}}}|}z}{yvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{
~
~||}|x|yzyz|}|{||}}}||~{{{zzzupxwyvu|uv|
~
{~~}y|zzz}||}z||}}|z{~~~}}|}}|vrvxxvtvu}
}
~
|||}zz|~}||z|~}|}}~~~~~|}}~~}|{xvvw
~
}}||{||}}~~~}~|||}}~~~}}~~~}}}~}}~~|}
~
}}}||||~}}{|}}}}}~~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uy~
}y|~{
}~}~}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqspurstv{}uvy
hzrss|r}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyyrpvxqvtturstvinrotvnulwm{snym}rsvsvmnwlpylu}|~}}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}~{~|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyrioyxpkyszozwvvp~~~z~}|}~}}~~~~~
xyrz{pp
x
xyks~y{krz|mzyyt}vnoot|uwqy}}m~uo
zrr{|upozks|nv~~}}z}{|}}~}~~}~}~|}~~
}w}~{|{~{||}~}|~~}~~~~~~~}}}~|{|~||
}{{|~{||}~||~}}~~}}|}~~~~~||}~{|||{{~
~|{}~{|{~~}||~}~~}~}}~~|}||~~|}|||}|||~z{{|~
{{~}|||~}|||}}|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}~}|||~}|}}|~{||{||}}{{{}|{~}{|}}|}}~}|zz{{||
zz
~|~~||}}|}}|}{{{z{|||{{{~{{}{z{~||||}~}{z|z||
|
~~~}||}}{}}|~zyzy{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yyzy{}}zz{{}|}||z{}||}|~~{{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yzz{|{|{{{{}}|}|~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|z{{{|}}}|~}||}~|{
~}}{
~|}}}~~~~~}}{|{zyzzyz{|yzz{{{|z{{{|}}}}}}||}}|
~|~~
}~~~~{}|}}~}~~}}~{~{{zy{zyzz{yzzz{{|z{|||~~}|}||}~
~~}~|}~~
~}}~~|~~|~||~~|~}}|||{{zzzzy{zzzyzzz{|y{}{{~}~}}}
~}~~~~}}~~~~~
~~|}~}|~}{}|}}}~}|||}{{zyzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<C:;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÔÓÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>:=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<:<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA>;A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÔÔÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9>CE?<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÑÓÓÓÓÓÓÓÓÓÓÓÓÓÎÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖ××××××××ÖÖÖÖÖ×ÚÚÚÚÚÚÚÚÚÚÚÛÜÜ×ÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILN@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÍmpppppppppppj§ãÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¸ºÑÔÔÔÔÔÔÔÔÔÔÔÔÕÉ»½½½½½½½½½½½¾´½æáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVM<::77>C>8>:??A=?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÎN&+++++++++++"ôëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¢§ÏÓÒÒÒÒÒÒÒÒÒÒÒÔ¿¨ªªªªªªªªªªª¬SRSSSSSSSSSSSKªòëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;?C>6:7>?;=B?9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÍÎR+11111111111'óééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤£¨ÏÓÒÒÒÒÒÒÒÒÒÒÒÔÁ©«««««««««««®XWWWWWWWWWWWWO«ñêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<;;<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÏ\9===========5ðççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©©¬ÏÓÒÒÒÒÒÒÒÓÓÓÓÕ¯¯¯¯¯¯¯¯¯¯¯±¡babbbbbbbbbbb[¯ïééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÅÂÃÃÃÃÃÃÃÃÃÃÃÂÉÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÎÎÎÏÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÒÔÕÕÕÕÕÕÕÕÔÓÓÓÔÓÒÒÒÒÒÒÒÒÒÒÒÓÓÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÔØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<7@A<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÏÐÐÏÏÏÏÏÏÏÐÔÐÐÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÓÔÐÏÐÔÒÏÏÏÓÒÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÖÕÖÖÖÖÖÖÖÖÖ×ÖÖØØØØØÙÙÙÙÙÙÙÙÙØ×ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎЦÅÓȧÒÑÇ«ÑÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÒª¬É¬°Ñ¬²ÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D>@98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÐÉ
¦§ÄÎÏÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<:6?B@B9647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏѤ°½¢ÀÉżÉÆÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8E@?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÏÐÕ¹¦ÖÎÑ ÎÐÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÏÐÑ»³ÃÚ£¿ÕÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:<?>=<9@<<::9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÐÕ§¤ ÓÍÇËÈÒÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÒÀ¢ÈÕÍÛ¥³ÐÛ£µÕÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:969;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÓÔ¤ ¸È§ §»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÈƦ½§¥¨ ¯§¢©ÐÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ Ôʨ¡ºÕ¾ÖÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFGKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÔ¯°³ÒÔ¹ÇÕÓÓ¹ÈÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÔÖÖÖÒÒÕÔÓÓÓÖÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ>>786967899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EIKAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDI;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?:8776=??@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@AB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEEC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<<DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsnupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸¸·······¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨§¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¥££¢¢¢¢¡ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¦¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;<;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡ ¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤¤£¢¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::78:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢£££¤¤¤¢¡¡¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¡¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡¢ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>99;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ± ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9<<>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¤¢£¬¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:=>:?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ©££ ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq ¦¢t£¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢£¡d¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡¡£\ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡¢£xZ¢ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¢¡q[
¥¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡ obv
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v~thi
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VQQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{z
vjd}
§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s|z
sj`y}|¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}zz{~wog[
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~vl
~hcX¨®²¯°µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWMO_^\NUUbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
¡¢¡¡sl~e`Y ¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJDPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©©§¢¥¨©¬ª©¯ ¦|{rb_¡¤¤§¤©«®¬¥¤¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdWOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®«ª¬¤¡¢¥©§§¨¨©x{xpm¡¡¨§ ¢¢®««ª§®¨¥¤©©ª©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPOSe\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨§¦¨©§©¨¤§¦¤¦¢¡ ¤¦zfa
cps¢¢ ¡¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]\PUOXO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤¢ ¢¦¡¦§¦¦zfVN~{yN_jx ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvxb_[UYQUW[c^s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;>=@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯««¬¨¨«¯©¨ª¨¢ ¡¨ª®±³®«¢¡¬kQJIwtoEQak£¤¢¢¡ ¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\V\hdocmjib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£ ¢ªª§¯·¶µµ¶³®«¯«\HCGrifCFXf~¢§¥§©£¡¤¢§ £ ¡¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxib[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>AE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ ª²¸½½¼»º¿´®±¼qPWMDoa_HDO`o£«¨¶¢£¤«¦¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__amhvlphiibZSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°±´µ¶¼ÁÈÀ»½Æº¹¸¼aYrCl`_NRWZf¢¤¨§ º¦ª«µµ®³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YTai`ftotitdidb[LK>:9898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÄÇÃù½ÃÔÖÇÀ¼»ººV{ªNnngQ[d]\¬¨§¬¢µ¦«´¼°µ¶¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`b_^kcbnxuvnm[bRV\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAA;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅÆ»ÄÂÕàÚʵ¼¼ÀÀPÀ¿a}y]JipSz³¸¨o°£¦±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|~ifhaklgnuqruqg^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÄ¿ÃÂËÛÙʳÁ¼ÀÆ¥U¢¢p
|EwUk«°zcq«´¦ª©¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|~tklndomiqxnyiia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄÍÏý¸¸¾Å¯ct{k·W{]k
raZ·µ¬®¥¤£¨¤ ¥ª´±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyy{wnkiguZfrxsyff]d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÅË«©²·pqm\¤¸hgrhhje^Wh¤ºµ³¬©¢¡©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuueeijg]jonxwcb``^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÎÏÌÃÇÆÈÉÈÈÉÇÅË˯vpc`ªªp`dga]\XU»¼º¼¬¦ª»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqocagvhiitmxl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÌÐÍÇÌÉÂÂÇÂËËÈÇÎÃyg_M`¡se`^XWXUg´ÉÀ¼¾´°°°Á¾¾ÁÆ¿¾¸¶Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlieuntb]bTWUSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÃÿ¿¾ÄËÈÊËɼ¼ÈÇÉÍÈÃÈÊ´~qj]QPB\}of[XTUUTÂÀÀºº½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrpfefcjdbjmno^Y]VVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ãº¸¹¼¾ÁÇÁÆ»¹ÈÈÃÅÄÀÃÂÁ^RMHKAUvinsohg]XTVS`©À¸¹»»¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbacccjbgc[ZZ\YQOE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹¾ºº´À¸µ·²®º»·À·¼ÊÏÁ»¿À¼»Æ¯nIFDH@MdY`gfbhdYSR[¿¿º·»¾¹µ¸´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qdabchjfgiei^VVTYOSLF8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ¹¿»Â׺¾ºÃµ¹Ç·`A@E;J\SXaa`gh\RS~´Å¼Á¿¼Ä·¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zyqmeefoielhXXNKKKRJLHD9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹º»¿¼ÐÄuªË½Ç¸¹··P@A8LXSS]_^eh]Sa¡ÁÈÃÄžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgqksfbm`\TIKJDJCCG>9;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼»À·ª¤®°¸»²½¾»Ä¶µ¸µ·¿¾Ä¼ÂÄ׬r½ÈÏÂÀ·µ}O?8MURS^`[ab^U¸½ÇËÇÇÄǽµµ¶Á½»»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qflintnxcgb\cQKTHEECGB<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£°¹½¼²¼¾¼Å¸±¸¹¼ÆÉÊÂÇÉÒnr®ÒÑÌÊĵº¿®L<LWOT_`YZ[Vo·½ÀÃÌÊÇÅÆÀ¹¾¼Ä¿¿¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_c^`aNIM?E@?DC;;::;:8;<:9<>::>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´»Åк¾¼Ä¾·¼À¿ÉÏÇÈÊÊÁpr¦ÌÌËÍÊÆÂÂɾuGG^PRZbVQR\¢Â¿ÅÀÊÉÂÃÃùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw|`qc[^__TI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼·»¹Û¾¶¾À¾¾º¦ª³·ÄÀ¥vtwÄÆËÈÁÃÀ¿É˦lK]RPVfNJYÄÀÀÁ¿ÊÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsxshp][^]YRFDCMIAD=H;;59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯··²µ³·¹¼»¶»»Å´m¯Î½¶¹À¼ª}nhnmtpw|¾¿ÆÀ¸¿¼½Äü¨tfXVcpM[Àļ½¿¿Ã¾¾Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸··½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|vlu{pni[__YSPAFHGK@ECH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÀÍ°u´½µµÁ¤iY^`NS[\orv ¸·Âº³º·º¼¾º½±nfto¿Ä½»¾ºº¸µÁµ¿ºµ®¯°½À¹ÏÊÉñ°µ´´½º¾ºº»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsvvwnq`_f][TJ=??GF=GCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹ÂÉ¥x¢°µjfgUY_IIMQTlu¦°·¾¹²µ±»¸»µ¹À¯vy½ÃÅÃÀ¼¿¹³®²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtwrl_cb\^OIB?=IDFMC@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·¿Æ§{v¡_SCYUHbjUNDId¡¬¯¶ºµ³±«»¸¸´¸Á»»u·¼Áƾ¹¹µ¥¬³±¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²º¶»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wo{ovrnc]gX]]SOMA>JBAJI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸¸¿³ymMJ@eYBPxgLB]°µ³µ²´¯¬»¹¸¶¹¿Â·u®µº»¸µ²±¬¤¦§£¥©®¹¬««¥¨¤«®¯§°¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmuil][jT]\PNHDFLBFNF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³¸µ
{WEBQXIJXxa@V¤¹³´³°±°¹¸¶»·º¾±¬ª¤®¸®©ª¬«£¨¡¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndUacW\QNLH@HQDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²»©gL?TyqNIIKh~XEX³»±¬³¯®¬¶¶²´µ®¨¢§§¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨««¦¢£¦¢ ¥¢¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vzcwln]QhTPNGPMLBPQ@>;>49:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬¨½Áª¥½fES¡PWIK_IX`ef¯µª²´®ª«¯°²³¥¡ £¤¨¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ ¤ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uv}mk{dhURdMJHGORNJNH<E@<2?859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡© ¬Æ¿ËNAunOmJMcfvt`]bs²¯®³µª¦¬«¢¡¡¤¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¥¢¯¨®²«¥ªª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}wx|dyy`bSU`HIJKSTIRQM9?B67<65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¥ÇÆVRKf£Xf}or[Qkc\gb`l´°°¸¬¦¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§ £±®²°´ª²®£¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvshle[SZZMQJOOULSMB7>B78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢ª£xTjqwvodwvXWb`di[[Vg®¬¯§¢ ¡£¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¾°¬±®©ª´±°¨«¨²µ·³¸²´¤ ¥¬¡¡¢ ¤¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xujwu]mZQ`HRUHFUVJCMG=KH8F<77;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¡ £~np`cWL[RZLLQYRHOMG¬ª©¤¦ ¨¥±ª§®£«®¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼·½³³µ¢¬¢©¨²©«¨§¨ª§ § §§¥¤ª¢¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vrmivmhm\X\CWNJGMGCFM<>L>4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·¤°¦£aW^e`WMQF=?@CD?>BQw©©ª¥¢£
¡«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶º»ÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸³»ÆĽü·³ª³ª³µ¯³®ª¯£«§¶²¢°¦ £¯±®°¤¥¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¥¦¢¤{trkktrqhV\QFTIDJPI?EA4FH95<>7;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ |_^e`PFE;B>F<>96N~ª³§££¡ ¥«¥xm ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÇÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿À¾ÇÆ·ÄÊÉÃÁƾºµº»µ»·°µ²ªº²®»·¿»º«¸«ª¸ºµ¼®®¹£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢}zqkchoxkeZ[FKLEDSMDBE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡}riaWNE>IZ|oaA=\®¬ wrqmp¦®´¹Å»ÍÇË¿ÂÌÍÍÌÇÉÑÌÍÌÇÉÅÅÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÍÓÐÓÓÌÊÂÅÆÆÊÈοÈÑÌÇÅÇżÃÁ¿¿¿¶¾³®¿ÀÃÃÇÄÇÄ®¿¸²¸¼Äº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLDEPIDC@55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £if\TID@?J¤ ²£yqroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÏÊÓ×Ò×ÒÕÖÓÔÈÌÆÌÍÉÒÍÎÓÍÅÈÊÊÁÇÌÇÉÈƿó³ÈÄËËËÏÇÊ¿¾¿½ÁÇÅÍÌÈÉÀÿ¯³¨¢ª£¦©¬¤¥¦
zruvgcgvidVWQDMF@IQB=B<:22A<E<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<A?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡aSLJDC?CT±Ñ½²¯¦ ¤¡}wpkebhqoq{
upnqtp
³Ã¾ÅÑÐ×ÖÖÒÖÎÔÖ×ÔÓÑÓÔÔÓÏÒÃÐÓÖØÕÖÒËÉÎÑËÆÍÒÊÒÕÖÙÖ×Ó×ØÎÒÊÏÑÌÏÐÌÓпÈÇÊÄÌÌÌÎÏÅÆǶ¿Ê¿ÒÍÌÐÆÉÈÀÄÃÈÎÍÐÑÏÍÊÈ͸·»¨¥«§£ª¥©¨¨|xsvpc`drb]R\IJGAEIJ>;A8=5586;85:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¤¥ ¢ YI@ADAFQw²¯§ wic`__`_^__]blutppolrquÄÈÆÔÖ×××ÓÖÐÕÔÚÔÔÎÏÕÔÔÑÑÌÐÍÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐ××ØÑ×ÒØÙÔÖÌÏÏÊÍÒËÎÐÀÆÂÈÆÎÎÑÑÒÈËÍÀÊÌÆÓÏÌÎÈÅÊÇÇÈÌÊÔÔÑÕÏÒÌÓ¹ű¥¨µ®§¨¬¥²¨°³¬¬
|zqstmacim_VP_JJCFCRM?<>43:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¥®·¨«·×ÔÕÙÙÑÎп¼Ìɶ¾®¦ª¨¡£ªeC8=>DXª¨}pecb__a_^a`_``_`fmppnkorwwÌÁÒÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÑÊÏÌÓÖÒÑÖÍÏÕÕÑÅÑÔÊÐÔÕÖÎÒÐØØ××ËÈÎÄÉÏÌÊÌÀÉÀÈÊÍÎÐËÐÍÎÌÎÏÈËÐÐËÎÊÂÉÇÉÌËÌÒÓÍÓÑÑÐÐʽȹ°®»¹µ«¶°¨¸³¾»±
zvopokadnpaW\ZIFFDMXE;@=33<<87865;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¥¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÀ°©¬©¤±yHFB;W¡k^^^adb```a``a^__^\bmroostvvy¤¿ÌÕÑÖÔÓØÖÎÎÓËÎÎÅÎÊÒÒÏÇÎÍÍÔÌÎÓÍË×ÖÐÌÑÔËÌÐÒÓÊÎÑÕÒÕÕÊÀÊÂÅÌÂÈÉÃÌÃÅÈÊËÏÊÍÍÐÎÓÌÆÉÏÍÈÇËÅÆÁÆÊÌÍÐÑÆÐÎÎÍÌÐÅÇÁ¸¹½Ã½ù²²¾±»Ãõª¥¡yqrkmg``phYXhVMGLIPQB;C>;68:8::57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±Ç¸ËÕÕÙÚÛØÌÌÏÈÖÕĵ¯´¨xlpr{|eabb`]^acb`__`aa`_][]grqqrspmry¥ÇÓÏËÐÐÓÔÊÅÉÉÆÆ¿ÃÅÏÎÇÅÇÍÊÒÈËÎÎÆÑÒÐÍÌÔÊÇËÎÏÇÇÏÒËÐÏƺĿÆɽÂÇÉÎÄÂÇÀÇÍÈÄÌÊÌÏÈÄÄÐÈÆÂÆÈÄ¿ÁÇÌÌÌÏÂÊËÉÇËÐÄÅÇ»ÇÃÉÉÂÏÁ½¼¿°ÁÉƹ½ª°²§¥¢£wotdk`^fpa[W`GHHGIMTG?J=64355==48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ½¹ÍÌÆÐÕÕÙÚÛØÐÉÏÏÑÓȶ»»£¶}h
¤«
}~s_[^^^`^`cdc_\]^_``_[Z\akrrookloo}¹ÑÈÉÊÏËÍĺÀû»ºº¾ÉÆÂÃÀÃÈÊÉÈÊÈÁÅÌÆÈËÍÉÄÂÊÉÁÁËÐÅËÈ¿¹Á»ÆǾ¿ÆÏËÿûÉÇÉ»ÈÇÅÊÀ¾ÂËÆÅľƽ¼ÀÃÅÌÅżÀÉÃÅÇÒÅÁÉ¿ÊÉÆÈÆÐÃÃÆïÄËÇÃÊ·¿¼º´©¬¤¥¬£¡¦£ {wrtfiZanmZ\XRDLFBGDLDFS@54334?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÃ¾±¯¶l^y}¢z
vxurp_Z[]``bcdded`[\]]_^`[YZ\borokilposǽÊÅËÀÆ°¶º²²³²±Â¼¼¼º¸ÁÁÁľ½¹½¿¹ÄÊÅƽÆÀ¸»ÃÉ¿ÁÉ»·»»Æÿ¼ÁÍÃƾ¾µÁ½Ã»½Æ»Ãº³¼ÅÄÂ÷¿µ¶¾¿»ÌüµºÈº¿¾ËÃÁÆÂÅÉÇÉÆÐÆÂÌDzÇÉÃÎÌÁÅÿ½²·°²§¨¨¹°¥°ª¬zvwjdg`hocV^YJFJEGKAEBFJ@9:647854;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÅÂÄÈÎÒÊÊÊÇÍÍÎÑÈÐÆÕÔÖ×ÍÊÎÅÉÅÇÁ¹Å½«¥_dux~{ttc\\]^``bcaadeb]\[\^\^]Z[\^hsqmggnory½ÌÀúÀ¸°±§ª¬§¸´¶´³³´»µ¾±¶°µ¯²¼Â¼ÁļÀ»µ²º¾À¸Ç¹´»¶Á½·¼ÆÁüµ®²µº¿´Ä·»µ«¸½¾À½±º¶°¶º³Å¼¶®»¿µ·´Å¼¾ÂÅÀÃÅÆÇËÅÀÅÆ»ÇËÀÏÉÇÃÆÁ÷ý½¶¹¾Ç¿¬µ»µ·¶ytxggebkn^V^`FKHHJFBDAEE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐÌÍÈÊÈÊÉÊÄÐÍÒÏÍÅÇÁÆÀ¿º·É¶ª°[ho
zx~ww|sh]]]]_`_`da^cec__\[^\]^Z[[]_lpnhfknnr|¤ÇÀ¸¸µ°«§¢©§ª¬³ª¬©´®·±³©®¦¬³¼º¶Ã¹ºº±«µ¹»³Âº°À±¾¼¼¶¼Ç¹Â·ª¨°²À¶¸½°±¨±³µ»¼«®µ¦®¶¯»²°ª¹°»®»¸»ÀÀ¾¹Ã¿ÆÃÅÁ¼ÆÂÈʸÅÇÅ¿ÇÃúÄÆ»ÆÉÌ˳¹Â½»³svvkiablhYWW[ALKMJEAC?FA:9:995754::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÅÏÇÍÁÃÆ¿ÄÄÃÃÊÂÉÊ¿À¼Âº³´µÃ®©°[j{x}
z{wn^]\\]_`__dcbdcb`_]Z[ZZ]ZZYZ\enohfgiknrº°µ®¥¤§§ ¤ ¥«¤¨¢«ª¬«°£¦ªµ¶±½¹¯·°¨®¸´´¼¸´¼¯¸¹µ²¼À²À¯¥¨£«±²³¨½ª«¨«¬´³¦¨®¡¤¯©²¦§¨®¥¨·±²·ºº»²¼¾¾¾Ä¿µÂÁÇÈ·¾¿Å·Äÿ»¿Ä¾ÄÈÌÊ¿¿ÃÀÀ©strji]aocWVXPHYRSKFFE>>@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃȺºËÁ˾»É¶½Ã¾ºÊ·ÁÃÁ´¶¼¶±¯µ»¨«dmz}~xt~|swe_]\\^_`^_ccab`a_^]\ZXY[[YXZ\_fkfdgehjor
ª¥¬¥¡¤¤¡£©££¥¦§¦ ¤¦¬²°¶·§±¨ªµ«´¹±¶¶®¶¹²°ºº±¶¥ ¤¦±§«¨¹ª¤§§¨§² §¦¤¦¬§£ ¡±¬²´³´°µ½¶»ÁÀ²º¾ÃÁ±¹¹Â³Á¾Àµ¸¼½¾¼ÂÇÄÃÄ¿ÀÄ xplbf_ko`UY^HNgOTGFKF<=?=:;;825536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:7776788666;::;9:;<859<:>>@;ȵµ½¸ºÀº½¶ ¡¦º¶«³³»³ÄÏÉËÂƸ¶ÇÀÌ¿¸É·»Å¸³Ä¸³¿À¬µ¼²¬¥¯³¡£ir
|xusomjjipi^`]\\\^__acb````]\[\\XYXXXVX[^_dcbegggkmo©¡¢¡¢§ ¤¥¢§£ «°±µ¤©ªª¬¬¤´¸·°¬³µ®³µ®°ª£¢²¤¦©¸¢¦¦ ¨¬« ¥£°©«§««¬°²¸¯¸¹º°¶¼»º«³²¹³¾´¶²±¶µ¿¶¾À½Ã»º½zsk_e^ddXTW]IW\KPGJJGA<??@;?<04535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÏÈÈÀÆ»»ÃÃϾºÇ¸¸¿·²Â´±»¼«¹º±¢©«§m~
xrmomkb^aff]]^]]]\]_`abccba_\[[ZZYXXWWWXXXZ^bddeffhikq¨¡¢¡¨¥§¢¥ ¡¯®®¯²¡¥£®«§¢µ°²²¬¨¯³§º³¦¶ ¢£¡£¢ª¶«££¦¥¦£ ¢«§¤£¦«²³ªµ°²«²¹´¯ª¯²²³¸³®©¬®²¸°º¶º½À¸³±
zuf^e^[YVSZUK[QKIEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ·½¿¶¾¼¿²¥£¥±Âµ¶½´¸ÂÌÈƿŶÁÀÆηÀĽ³¹¹³¿¶±¹»¬²´¯¤ª xxoqtqhechdc\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWVWadecdeddhjv¡ ¡ ¡©¤©«§¯°«£¤¸ª¡ ®¨¶ª§§±¤¸°¤· ¢ª¦¡¬¹¯¢¡¤¢ ¡ª©¤¢£ªª°¨´«ª§³°¥«®³±°°®¯§¨¨²±´°¼´º¸®£zvd^aVYXSRSKM^LOKGGLLE=A><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾¸¼®§§¢ª»À½À¹®´¸ÁÌÇÅÂýŸÈ˲ÁÂÁ¼»µ»¼µ¹¹°¯°ª¡©|wqilrtphhedfb\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[bcbbcbcdfi §¦¤¦§ ¦ ª¯¦¢£·¨¡¡¢¨³¢¥¨¥°¥°®¬´¡©¡¢±±££¡§§¡¢¤¥¥«¤¥°§¥£««¦©®¯¯«¨ªª³¦¦¬¯´±®¼µ±¯¯ zwrea\Z]XNLQGQaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847763321./2556;:8;7876<;:;;A8x»»±µ½°»±·¬¥¦¬¸»¼Áź±¹µÄÉÉÀÃÆÅǶÅIJ¿ū··½¶½ººµ²«¨£t~vncafihfgifjm`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWTTVURTRU``_`a_aacei£ ¥¢¦¥¥£¤£ª«¥¥±ª ¡¥ª¨¢¬©©®¢¢¢¢«©°¢¡£¤¡¢ ¡¤¥£«¥¢¤ª£«®¥®²©¦¥¦¦´¦©¨³µ´¹º°ª¬rpo`[WVURFQNHY[ORITKSLEFID8;;=<8667:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:8698598989;9@9{µ´´»²°«²¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÊÌȵɼ±¾ÃȬ±¸Áµ¼À»´´ª¬¦r{tiijlgjkmkjle]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURRNQY]\]]^___bdm£¡©©«¨¬§©¦¤¥¯¥¥¯© ¯«³ ¥¦£¤¡©ª¡ ¢ ££ £¡¡¨££¨« «°¤·¦£¤¢¬ª¨«¯³·³¾µ³«¯
tsh[XYSUREXLQ[XMTNPLPQINIB=??A?=75799<<977:79:;<=>;7;;:=67:;8976989:6:=99577571141-+/434988::8::748=8?9~³§³¶®¨¨¯®©¨¬·¶¬¼Ê»¶¿¬ËÆŸÁÎÏȳĺ·»ÂÈ°¸¿·¼½»³µ¥© ztvwnmhmmmpggifd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNPQYZZZ]]\^_`d}~¢ «ª¦¯¬¨°¥© ¤©§®¨ª¥¡§ª¥ ¡¤¡¢¥¥¨¨¨ ±°¦±½¨£¬´ª®§°µ°¹µÀ±®±ª~rsbVTUNRJGVPRQLLWMJLNRGMKACFDC>A75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8³¬¥±·ª¥¢±«ª§©²±¤¶Æ´¹º³ÊŹºÁËÐʱ¶·¼½Áñ¯±·´´»³´¢£vkglnqnqjpkdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajyt© «¦¦¬¨ ¦£
££¢¤§ ¢¢¦¤¦¨¦¡ ´²§²·¡¢¶¬©¤²²¦µ¼µ««±£ysn]NQQLOCMNNPKFNNJJMNQHMJAGKHHC>858889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12876:999984988A7w¶¦¤¶°¥§¤ª¥ ¨¦¥³ª¢²Ãµµ²³ÆƶºÃÊÌƳ¬¹½´·À¯©°¦®º¯®{n__frpuqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXXX[]anquo¡£¢¤¥¢s~{£
~~sz££ ¡£¤¢´¯¬¯¥¸¦¦±¡°®°¼ª©¯ªwscVMROPNCSNLPLBPQHIMRMHJJDJLFJK=749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-02764789::65:87A7x·¡£´©¦¥¨£¦¥¦¦¦³§¥´Á¸°´°ÉÄ·¹ÁÎƽ³¬ºÁ¬Ã§¡¦¦¶¬£ ~x~fWV_gfighncjhgb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTRMMJHNSSSTUUVY[]ijqk~{sNXr_;Vo|s
y{}xqp
}¡ §®©¨¨³¢¦¬«¨´¢©£~tn_[NSRWLDTJPLLFNOIELQMKOJILPFII=7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· £®¡¦¦ª §©§£©°¨§´Â¹°µ°Ç·³½Ï¿¹¯®µÂ§ªÅ©£±¢}su]PLQUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`lnhztOB?}y`JQnx}
n~xuvxoQ{~xvgw~¤£¨©¥¤°ª¡¤¤¦ª¢ª¢¦¨umf^[HQQSMIUMSILKOIHFJNLMTKQPOFIC<769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')+*,4833979:99::::?9w¶£§¡¯¡§¨¥§¨¯ªµ¼¶··³Á»¶¨ºÈ¸¶¨¨µ¶ª²½¦¨~}xpnXMKMMNLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZnsu~ih\Tt|
{vxsovptz~«y{hv{prmxxz{vsrwhu
{|© ©¥§¤ ¤rha]]JWPRHKXROJLMRJJJLPHLQLRTMEHA<78;99>=:;<98@?::>=7==79937785675251472/2.,//200/-+(().12721987:8775:<;7v®£¡´©¯©¥¬°±ª½´²»¸¶º´±·º²ª¬©¨²°¡vx|vooiXKHIHGEHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQQSV^t{xfv}gyvx}q|w{ok~}t{|ufv|
logs|lyq}qmvqhq~pC
wwz}{u}£¡¤womfbZXXUQJSUTOPNPVKNKNOJQOHNPLFD<;79;::?=9<:99??;8<=7<9999266856633611224.,,-..-0-+*''*.1362/876966527995y¦ ¦¯¬®«¨©±¯±«¼¸¬»¾¸³¬§°§¬¥©¤
yuq{mupjmjXKFGEA@CDHLLMQRPQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNOQTX]eprl§ªÀ~tyb{xo|yz}omytyjjq~Inhx~midly
ksl|nr|inps{}~{vott
yyp|nioooXVXTRQYORTTRXULNHMJMNKCHMGE@:89;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¥°£ª¨µ¯®¬´¿«¼Ã¿¥¢¤¡¡sztotkpldljYNDFC@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORWZQY\_§bisye~pmzvtlts|jjMy
g1vsl~~tfeu
filukq|hqq|n|s}|qpnum~wyujyywkkoheXQZWYY[MPUVYXNHHEJJHGB@GDCG=998;9:9<:9;:::@<9:<98>787715234533645031.**+),,++)(+'),,226,,4775478iO8;5n£¨®²§º¯«²°Â±»ÃÇyqtyprpoodpf_TFIC?<;9:?@ADCEGILOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQVLAIQIb¯³ q{xl}lq
zyr¡txsu5q¨¡¡¢vq||tggbjnrmpuipXupwlz}mrnp{svnbv
ux~}{rppl`[]^\YX`_RN[ZXWLHIFJG>BABH?CD=;97=;:;;9:99;:?<88=:8;66651121253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥´©®±®Á²»ÁÆ}nul{txxlwnwci^JPG>@7449;;;=>@BEHLLLLNPQRTUVWXYXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~lw|~
~u¢y~
aªzw~sz]drtz|wmhjbyoznwtzptyxkni]v||
}q}uw{|wpstfg`[[^T\f^WPTX[UGJKDKG?F@DC>AA=;97<;;=<::99;;=>79>9985653244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¦ ª ±¨¯À±ºÅºz
vk}xs ||p~zgvkRWL@E211367688:<>AEGFGJKMOQQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJh{y|q|z}~v¡¥¬ªH®¯¯©tm}}hghyn
qGlwryvhmk_v}yzuv|xmow}ttrl[^][ccXge\UPPVYPDLKFNICFCC@@CA=978:::;;:888::?>6;>7585773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|~
¬¡¦¸¯³¼³}tp~}}~¤
x~sx_cWKB60./23123668:=>?BEGHJLNQSTUTTVUSQOGC?80,#[>?84.]ps£UFIKMNPW`XpY\^i
~
¡¡¦»±§»Çè¡¥|qv
ihouq
w{v
}nvuf¡«¢zzyogkx~z~sle^Z[]j]af_YOKNWRQIPJDNGCJDBADDA;:87=<:<:88778:==8<=68656623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfx{¤¡¬¦«¯°¡xw|~
mpj]B@4--//./02234778;=?BDHJNQRSRSSTRPOHDB<87/9D><<63.lMPHIKKKNV_cggmu £ª¥£¬©¶¢¨Áîǯxº|¡
¡
lpuwqm
r ¤µ©¢}kjk|sb^d_[gk\ll^WKGORQNLLFIPCDMFACEFB=:97=<:;:987767;:6=:785456344566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYppuqv~§ ©ge¤~y}
xx~gMR>/..,/.-/000212467;?CENPRTPPQSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} §¥¢¡¢§¨«¨¬©ª¶«¾«¶ÈÈ·ÉÑϾ pi«©
¡§¢wz~¡{w«²}¤¢¦µ°¨lsr|}qh_]a_agd`gf[QEJKPOIILFFLCHLFFCBGEA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppu`n|aw}{ªªBD}x|
v^bP460-1/,.00//..0015>AAMQRSQRSTRNSLEE@<>=GG@A@8662<9;FHGIJNOQYm
w£§ª´½¸¤®¬¬§¨´«°¶²²»±³½³Ã¬»É˷ÿ¸¥£°²¬ª£
¦¦ £¦¢«¨¤
¤¡ ª ¤©±£§·º £°¢££¡«¯¬²µ¢¤ªyz}
hah\eb]dc^gf_ZODIHSNFHLFJGEFHAKFCFFA;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicWjoXz
v
ÚÈsV|z
pna@E64<2/110-,+-1.-3?CAMUQRSUUVUN[PGGD<>>FHCD@8;<5C;=FKIGHROPW ®£³ª²ÀÇê³Å¶¬³¿³¸¾¶¿´Á¶»º£¸Å¨¶Éǵ¾¹´¨£´±±§¯«¥v¤¡¬²³ª¨®¶»²º¬¯µ¢±¬±µ»·µ®µ §§£¨©¯²¹·¸§¶©¥xuZbdVfaac_`f_[TIDDLUQHIJDIGEA@@JDBMF<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AFWQJL[ZQbcWyuq}u
{¿»£¼´y
zxn]V@EM<6:46AB764//6CHCQ\OQUWU\VO^UIKJA@>GKFED;>@7D7?BJJEFWTP^¤£±´Â¶¸ÁÌɶ»Ä½³³À··Áµ¾¯·t±³¥ºÅ£°Æ¹±³±´¨¤µ¶ª± ¢¢¥°¦«§¤ ¬´»¢©²º´»¾Ì¿ÅŽ½³Â·º¸¾·º·¹¬¬°¦°ª½°½»Â¬º¨®«}}kWcbYjejeW[cYVSIGFLQGCHIAHD>?BBK@@MC99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALRWSYUZvjp~nzsyb¸¡£{z||}wyueO\dGEL:Qca[^SF?;HPD[cQRYXZgYT``MSPEA?IJHEFA@C<E6B>HGJLSZT]¯¸µº¸É¿º½ÉÌ»¼À¼·µ»»¶½´º±Æ`u²¥±ª½ª¥¨«ª£¢²µ¡«¨®¥§¦¥£¢§±´§²³½¶Á¾ÓÉÉÓÆÂÅÌÂÊÃÀ¾½¿»¼·´¯¸·¶ÃºÆ½ÃÈ°¹©¡«¤§¶r`bb^Xa_igRX`VQUIEENKA>GD=KA=B@=F>;H@796379>489:57045/26389374426?8@>GKRTSQPOQQPJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRKQ]glkp
slrrsÕÀµ }x{{yt}zkepuY]\Peeb`ed][XW\MemURmm_n_XgeUYUJDBKKHFHHHGBI9D?HKTTV\Z[¹À¸½·ÆÀ»¹Êʺ¶º¶¸¹²·µ´®¶¶du¨p^¡ ¢¤ª¥ ¨¥¤¬¥ª°·°½¹ÔÑÏ×ÏÉÌÒÌÏÎÊÆÀ¿ÂʽÁ¼ÁÀÄÄÅÊ¿È㤻°´¯«¸¼zl^a\Y]aZccQ\`SPKCBEFE<@E>AHA@D=:E>=J?47535;=468977022/24169775555D3ELM>51/006:477@IOI;-&**(-./,@M+/54mI0Ht?>BD@CDFKODQ\Yh_onlouu³¬¡¡
~|s{
{ts{xkmu{hreilifjih`fihlZnt¤¼g[oh]ZZTHKNOJKPKSQHLAJFKP_^bfib·Ç°¸³»½µ±ÄƵ°¹°°»«²±§ª·¬µ§§O¦¥¡§¬¯¨°§³´ÔÔÔÖÒËÐÔÕÍÓÏÍÅÂÉоÊÉÊÉÑÇÌÍÂÐÒ¸°Ã¼Ä¹¥¶ºÃ¢od]]^Y`XYeZQ]WOOBBGDBH;AC>AG??A8;D>@H=46655;:687654/10146278875367C5B8?-0-1349=97,.,1;FK=),(.0007K?-46TW0DwC;B>EBACJM?UYSeVshqoyy ª¥}{p{r}qxukqx~q{mxslipmcimpxiw|~Ë¿Âߧncwoc[a`JPRUNY^P]\NPNTQUT[nmvq¸¬³§°¶ª¬¼À°«µ¦¤¸¦«® «´£±¦«¬¤§¢¬ÏÒÕÑÍÌÒÓÓÐÔÑÎÈÃÔÑÇÍÒÓÓ×ÍÒÑÅÒÖÅÀÎÇǨ¾·Ïzof^b^W_S]ZOPTPNH>@FABE<@B>ED>??:==<<JA45465<888664412/03526768533;=<E=@11+/249>5901022-2DN3)/3.32=N238C}_2AtD:==I>@CFH<VRMN[u
wlwp}~¡ y
{r~yu
ovrks||w{swqksripqzyrz¾Ë~²vrwhaj]CZZ[VecXdjSX]\`d^cwz~©¤¤¡ ¨¥ª°¸ª¥´£¡¡£¡§±¦j¢
}§°¡ ¡¥¤¨ÈÎÏÈÂËÑÔÑÔÓÎÓÍÆÖÓÌÔØÖÖØÔ×ÕÉÔÚÍÉ××ÑʬÃÃËsoc`_XTYS\PKGJJJ@;:;DAD<BC>HB>BB;;9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/--;R017/532FD28>nb5=tM99@I<AD?A;PLFKYpu}hsxr
w~xs{}wznxpmuvx}t
|ymvtn}vux|µ<AÅ¥~|ieVICfcecgjdnx[_fhknin £¤¦²£¤³ ¡¥ © ¢±~
z~©£}«³§§½Ãƹ¶ÆÍÒÐÒÐËÒËÉÔÎÑÕÚ××ØÔÙØÍØÛÎÉÚÚÒÕ¾ËÌ´xwoe]ZRVQZWFGJIEE=:79@AB9GD@ECADB;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BS39254/7K75<`bA<svV87AH:?C><9QECJTknnpbpqt|~
|x
zyqz{uz
zp|oozq|qnzuw}|u{°tX©Â¶pnb=^hrpqpnxveioruxqz ª ¡¥«}
~my{®ª§®µ½©½ÆËÈÉÌËÏÉÃÑÊÔ×Ù×Ø×ÔÛ×ÓÙÛÖÏÛÚÑÖÉÔËz{ih\ZPST]HCEIH>A==7:=?;=G=?AAADA>>:86DB755479.566435532323647553457EBDCEB56<FNSM[nfcnskaV>,4LG865434BF4=W_hLux^8;?F<<B<::D?CGRk_mdbfkvqz~~||~wyn{{uz vutu}toot|
zv{·Æ¥ÂɸwpeNfczw¢xyv{{um¥ £«
z|¡¼¡©¦¥®¨¶¿ÀÀ¹ÇÉÍÎÅÍÊÑÖÕÕÙÕ×ÛÔ×ÙÚÛ×ÛÚÚØÎÜÆ|zhie`TXVUMLDNC;=<<9:<>9=@6=?@<?><9867CA6455=80665547745613854564567HH=DJE7925;H>;::7IP]ZRUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Yea][htzylwvz{~~|
{~
z{u}tm|}~s~|~x}ynt
}
{}z©Ã ¼£}}r~s¦
{hGp ¤
~¥
¥¸¢§¡£¯¶ºµ¬ÀÅÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Û¸yyymjfW`\TPOHCLB==>99::99;<6?>><=9:;;37D?8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8589?=DRSRX^UXfmmmiqry{z|{z|{~u
yszsm~}w
¡n¨
z |}£¢¤®
Wr«[¢
¢¢
¤³¡¡§²¸¬¦½ÂÇÎÇÆÏÌÐÌÎ×ÐÑÔ®ÖÕØÚØÚÚ×ÖÙÙq~uhg^]XTWXC@HC>>>:49:;7:;:3;;?<>7;9:1:H>:37=@50677255?65;55858:57735HR7GOK994=EJB>1FCLB98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcbxmb~omwxyz|{{wsp
zuvvt
}¦£¥¢¨r±§
¢ ¢©¯n·
ÄȲ¡¥²d¤ÍÇ
ª££¥©¡¢³´¥£¼À¾ÈÅÅÉÈÉÂÊÓÍÍÔ©ÒÑÖÖÖØÚÔÓÚÏsid_^^NKTZBAGC;A=837;<:8=649:<:82?9:2:I:=67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBcFu||l}xz~z~vv|lny|xx|}£³§£ª²¡§¥¤®¢·³¡ ¤¯¢¤§¨¯¤ À£É¸«¢¦²
¨¢
t²¤¡} ¡±®£¤·½´ÅÇĽÃÿÆÎÊÉÒ§ÎÍÓÒÐÖØÒÏØ»s{w^aVaWQIIOEABE5>:76:?;<7=42669774=5<5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=89567=:JFDGN[\YIf`;Hzzm
z|x
}px|}|orz}{x
§»¨²½¯¤³³¨£¢°¬´£¸¤¬¤©·¦¤£©©£¯°ª»»É i¶¸«°£«½£^ª²|}³«¢¡ ¥¯¨¢¥³·«ÂÈĵº½»ÅÈÇÂÑ¡ÆÉÍÍÄÖÖÐËÔ¢q|i^[T_RPFD><CAA8?874>F<<6<35355454B3::BM:A;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPeGb`bpI@s}um}}|pww{ªÂÀ¯½Æ»²´Á¼´«³¶¨²®®½ª»¤¨¹·«¦¦¢¢££©¯²±ª¤¢¥¥£¹®¨¿»¬²¹¥£¦}½°z§±« £¬ ¡§§¤¢¤°²¦ÁÇ𰺶ÅľͧÇÃÇüÕÐÍÄÊtsc]Z`[NKBK@DF>A?B;:4>A==5=6>333242A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\fF`igZ][{uo~|q~zz§´ÆÉ¿ÂÌÁùǼº¯«¹»²¶º²À®¥À¤ª¯»»ª«¢¢§«¯µ°ªª¡¯³§¢º¹µÁ»«¨²¤£¨
©ÃĤz¡¦ ®ª¡ ³ ¡¤ ¦¤¦§¤¯¥ÀÄ®¨·µÉþ¶Î²Å¾Ä¼³ÑÉÈÁµuym]Y\jSMICLKJJ@A=BD<5AD;:3=8B332262A05IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBf[Me\fTcjyr|xy¡¨º¾ÇÈÊÂÒÈÊÂͽÁ³¬»¾§º¿½»Ã¸¬Á©¬³»½ª°ª£¥£¬´¶µ ®¦¢£³¼©¨¼Á£¶¶¯«¯¬ª«©¦¥¥uy
££©¥}£ ¢µ¦¥¤£¥¦¥£©¨¢²¬¨¼Àį¥³·ÌÀ¹®Ã³»¾Â¸¬ÂÂÁÀnzbYW][LKMJGDCIBBACK:4DH9;4<7E.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQF7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>kI_XaZddVw
~¡®¦£Â½ÈÃÈÅÓÌÎÍ˻·¯º½´¼Ê¼ÃÁ¶¶¼³¿¹¼®¯¨ ©§¶®©²·¢¨¡ª··©¤¯¾Ã±½¹³§©³³¬¤«§ ±Å§|}ª¥¡£¢Z¥f£³¥¢¬«§¦¡¤¨¦¶«©º»Äµ¥´¶ËÁ¸©¶¬³»¸®¨¸º½¸no[XUVOFKSNK?AHEDHFG85FM;>7>AJ.32025B55OVN;LFKRLOGGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|hW;=@BFBrFiIRebLF¥¡©¥¢¯¾®¡Æ½ÅÄÇÆÎÎÎÒʾ»¶±º»¼¾Î¶Ä½·¸·²²µ³·³¬¦««¸ª¨§¯°£®¤§¤¤´À°ª¬³¾Â¹À¹³§·³·²®¤¬®®¤¡tÁ}±¦£ ¨¡ `J¥T°¯¥¯¯¬¥¡¥ §¢´©ª³¼¼»«°²ÇÀ¹¥««±±£¡²²´¤qof\[OQLEPPPQ;GKHFHBC>9KT?A:=EM07544:B34NWO<JKNUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@CAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}iX;:BC@=QEWRsbWFH« ¢¨¯§
£¤µÈ´©ÆºÃÃÈÊÈÇÌÎƾº²®¹¸ÀÁ͵ȺÀ¹µ¹±¯¯²´§£ª´´ª©¦®¬¤®¥¥¨¬º¿¨«¶¶¾Á¿¾¸²²Â°¸¼«£®´¬¸¥¦v¾ ¯¡¡©¨ ©¡§nv¢¢²£«©ª«®¥¤ ¤¨¢±§©«º¶¾³²½¹¶ £§¨¥§¬©©dfa_RKLGGNJVL=MDMIKACD<PU<AABDO18=77?B75UXN?HNQXRPQTJQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=..SaMUHe^HE«¡»®ªª¢¤££¶Æ½´ÁºÁÂÇÈÅÂÎÈÁ½¹²¯¹´ÀÂʶƱÁ¼´º«¨¬¯£¢ª´»¦©¦«ª¨¯§¤ªª½¼§¬¼³·½Æ¼¶µ·À¯½¿³¨´¶«¾¥¢¢¼ ·©¥£¡¨¥³¡¥¨©¤¡¢ ´¯¥¥°««¬¤£© ©¥¢¡´´ºµ¨´²²¢¦ª¡wa^`^JIFHMQINEFFBRKIADG@VRDH=AGQ1;B7:BF79\YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:g\FCCobGE§¤Ã¬¤©ª§¦¬¢«¶Ä»¾·ÁÂÀÇľÍÇ»½¹²°¸³¿Ãȵ¿¯¼¶º·¦¤««¬ ª«Ä¢¥¨«¦«¯«¢©¨¾¸¦½°·¶Ç¶µ¹¸¾°¾Á¶´²´¯½££®¡¢¥££½¥©©¬¡¦½¢£¢©«¡¤ µ¬¦²§°§ª ¡¥¤¬±¶²ª¥©¬ ¡©idZa]OJGKOLHEDIA=OHA;GIH[ROK=HOU4BF9>HG5Cb[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,0Mv\4KZ5,MnW<-=)#zbQ5CKQ9oRF<KxecWL¢£Å¬¡¬®£¤ §©«¶°£ª²µÄ½¿¶À»È¾Êȶ¸µ´±³´·Áƶ¾°¸´¹µ¦¬ª«¥¤Á¥ © ¤©¯¢¦§½µ¥±¼·µµÃ²³·¹¾±ÃÀ··³´µ¢¤ ¡¨©«¢Ã©¬¦ ½¡¤«««¦¡W¥¡ ¸ª§¶£³¡ ¯¢¤¥®²«©¢¢¥¥¤be[d`LIJJOFEAFK>=JB99JKN]QQI=LV\9FI=DMI8Hc\LCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWsHE6=ue\KN¡Ã§¥¢³ ²§«¤ £©¬»°¨¬µ±ÈÃÁ³ÂĽÆüÅʼ°°¶®°µ¯¿Åµ¹°°ºµ¬¨°©©¦¡§Â¬°ª¢®°©¤§½·¦¶º¼®¶Ã³³Â¿±Æ³º¶«´µ©¡¥£«¡¨«°®¯»²¦ ©©¢¤¸ ¡¤®¯¬¥¦¡£§´¦§´£¯®¡¡¦¬°¥¦¢
bf[heKILJSBC@HG;;F?99NMU^RSJ>O^^=HPBLLI9Nd]LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<v]^?[U^fr@8<HweA4¤ ¨£ª²¡£µ©²«§¢¥²¬®©»²¬°µ´Æ¿ÄĵÀľÊĶÀȵ«µ¨°¸¬ÀÄ´·®¬¶¹¥«²«ª¦»µ¨°®´±§ªº²§¹³·²¸Àª·²Â¼³Å§¾®·´©§«¡¥¤¢¢¤®¸±µ¶ ¨¤£ ·¢¤¥±²¥ª¦¡¨¢¯²¢¦®¥¬¥
©©ª¢§ ydi]liNPMNT=CAMC::I@77QO]^RVQAW`\BJSHVKH:Ud]NFON[W[RPQX]GAB[PBG>NC9HGHNP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1[bZ33806p[bH05JpiVCWFyfC;¤£¡¦¿¦§¯¯ ©µª¹¯«£ª´·±°¹·¯¶¸·Ä½Ãǽ¼ÃÁÇÀ¹ÁÆÁºª¶¥»Á÷¸ª²»¢°²¥§«¹ª §°ª°´²ª©¶µ¬»¬²²¹·¬¹°Âº½¾¦Âª°·¯©ª«¦ª¡¡ °¯³«°¹©¦ ¶©¥¢¢¯±³«±§« ¥¡£³°¥¡©¢©¨§£~
kimamnXQQZTACET@;;HA7:XPd^PVWDY^^MLRN^KJ>Zd^NHPN[UYPKSWZI?DXPDF>N?=IGGQPB=CFBM?:2D?77547?=95E4+75/251.-.,1>*'+=\p=>1.1e[d@1647gY`F(?8l}h[V:{cC=§¡©½¡ª°ª£±¸©¥´³«¡µ½¯³¸¼º½¶¶À¿ÉĸÄÂÀÀ¸Ä½Á¸¯¶¨«·²¼¿¿´©®±·«¨§©§»¥³«¢±°³¬©¶³µ¼¯±µ¬°µ±ÀºÄ¶«¼¯±¸«¬©¢±¥¤©£²ª³©ª³§ ¦¤´®§¡¬¬±§²¬²©¤¨£¡¨µ©¡¬¦¥£
{flrhpr_GYfVDCNXDZ9HB6>]Qh\NY]G[^]NMRXdJJC\b`PKMNXWXPJVVWL=EUJEDAM?AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,+%2+*5K1.'_^aU150=`V^8)C3YU\gK5zfL@¤ ¤¬·¤¬©¥®®¶©¯³¹¦¦°·Å·±¶¾Áµ´ºÅ¾ÌŹÃÀº¿ºÄ¸Á¹²µ¬ªº·ºº¾µª±¶§«ª«¬««¼¬®±£ª°³®®¶±¹¶©®°§µ¯³»¼É²ªµ´±´¯®¦ ³¨ ¥±£¥¯¡¤¢¥§²©¡¦±«©µ¥®°µ¯£§«¸£¡¬¥£¢ {
{knxnu|aF`jYIHYZ={JGE6AbTiZM\aJ[]ZRRRb`LKE_a`PLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`Va.5(C^Q\.*B/JGP[H3cYUKD °¨±©¬¥£®®µ©·´¸£«´·Ê»´»º¿¾´´·ÃÁÍǻý·¾¿À¸¿½±½®§º¹··Â·«±¹¦®«§£²©¯»¤²±§§¢²³°²°´±·²¨®«±¦¸¯µ³ÃŶ¨´µ«°©§¢¶¦± ¤±§©©¢¥¥¥·§¢±³«§±§¬°µ¬¤ ¬¨ª¸¢¦¡¨¤ v|
nqxv|]Kel\KOc\?b{GI8GgWe[L^bMXYWTXTi]POHa^_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANIg27'FaLV%-B.=EMQ<3rkJDC¤¤«§¤°²³ª·°¶«µ¹É¹®Á»Â·³²µÂÃÏÄÀÁ¾µ½À¿º¿½³Ä¨ª¹°¶·¿½¯«³³ §°¥¦°¥²µ«²°¬©¨´¹¬´²µ¬³¬©¬¨¬©¹±°Ç¾·¤¹¯©¥¨°¥££®£©¯¢£¢£¬£¡ª¦¦¸¥«´´¤©«¨«¯¶®¢£¨ª ¤´¢
§ w~
}|}qtr~}~\Rdo^NZf]FD[G:NmXa[M`aNVWVWTYg^QRLcZ[TKGOTSNGIVS\N;P^JBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Cd;6*HdHJ+:I?3BIS,>k=GH©ª¡©¯¤¨¤³´±´µ±±¡«¼Ëº®À»Ç±´´ÂÃÑÅƾÀ²¾Á¼¿¸¼Å¨·¬³¸¼À°«² ¤§©¨¤°£ª±ª¯¬°®¯«³º¦¶°²©²©«¥¥£º¬ª±Â¹´«¹¨¨¨©¨±¥©¤¢®ª¨¢¢¬¤«¡§©¡¬¥¢¬«·±± ¨¢ª®°¬¦§¨£ §¡¤
}w
tsrvl_Y`ncQsr\K;|F?WuX`YNc\MUVUWP\b^SONgXWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*35>10485(5/*,.30;),,'%234$,2-860)(1<^J0.IgDF8<B05EKX1@[?MF¬§¢ª²©©°¶¬¸µ®ª¥«ª½É»°¾·Â¯±³ÄÃÎÎÿ¿´ÀÃĺÀ´ÉĬ¯·®²¹À¿³«¥§ª°©§¨±¥´«°®±¯³¬³º¤¸³¬¬®§«£°·«ªº¶¤µµ¤©§¬¬ª¡¨¦¦±²¤¦¥¡¡«© ¦¤¢ª¤¬¢¦±·¬¬¢¤¢¨ª©¡¥¤£
£¢|{t~tx¤yk^`ngWfdN@gLDbyWbXReUMVUUTO\]aUKNiWVVIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06XZ.0JgAA<<C+:JO^4D@HHD¯¤¢ª°ª©µ«¶±«¤«ª©¼ÀÀ¸¹³¼µ¦³¯ÄÉËѾÁ»¹À¿Â¹ÁºÂÄ®±µ²³»Á¾³±®«¬§¶ª¥¯«¹¯¨±±®±«µª¶µ§´¶«¬¤©ª£³³¨¨¤´´ µ¡©¨«©¬§ «¬¨¹¶©ª©©¡©¨¡ ¤¢¦¢©¦´®§¥©¢£¤¦§©¢¤£~
¢txu{x~oqggqx\atiO]VHmxUdVQbOLUTUQOX[bVHPjTVTGPYUI>IHOQPxLNV=<KD?@A<@CUC9AK=5;E13;97*4:=+-341*8**+*,)*(/*&)%3;,$2)2021%/2Rc02?f=NX?C,>LT_/Ik6QE;¯ ¥ª«¤¯³´®ª¥¯©©º¾»À±¯¸®¢¶°ÉÇÈÐÀ¿½»¼Ã¾ºÃÁÀ¿¯²³²µ½¼Â²²³«³©¥µ©¥³³¹¯£®¶±¯±¹ª¸®ª®¶¬ªª«£ ¶¨¡¯³¡´ª¨§ª£ª¡¡¬¨½¯¬®¬¡§§«¯¢¡ ¨§§ª°¨¢¬¡¡¡¢£¦¨¥|
¤
xt}uxzzttzi£ui^elug}RWp^JxsSdSQ^MMRZgNLVYeXGSiRQ>BNQaQ:IHLSIqPLS;<I?;<=;@@W<<>H73CB15:93-5::)-31--6)(+-,52#2)',%.;.&1.0-14%,0Mh:38_=ad?F1CP[[+HO:VB4±¤¦«£¦¤¬¦´³°©£°§ª¸¾À¼°¨¹ª§®°ÉÆÈÑýÀ¾¹¾¿¼É¼Â¹°°µ²º¼¹Á³´»¹£µ¦§¬±¶¹²§§ºµµ¼¯¼¥µ«©¯£¥¬ª§ª³¤³¨ª§©¤©£©¨©½¬´¯®©£ ®²£¤¤¥¤¨ª¥©¡ ¤©©
}~
¢~rzy~|iw}zuqq}hyd`hcs
zmgy]^UBWzlTaPRYKKMpt]HZ[gYEVfPC>KNDCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KI1%90%,,09/,,+6'17#-/GjI14X=fbAJ7GS`U*=;EZ?*°¨¥¤¡«¤·²²¤¨°§¬¸Á½µ°£¹¬¨¨°ÃÉÉÌÁ·½Àµ·¿ºÈ¶Ãµ´³µ²½¹º¾·¹¶¿¢³¦ª«¯µ¸´ª»»¨²¿²º ¯´¶©«°¢¥¨©¢¤±¦° ª©§¢ª£¨ ¼¨®°®¡«¢£®¬¦¡££©¢££¡¦¬{|
£|yl}vyxb{zqppsxitjgdhaosmbjp`oA\xkU^NPQJILSZWM]^mWDW`O^PHMDF;7HEKO<rhJK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*L>*49&'.34.0+/4&,:$40AhZ13S=e_DL6KVdO)<2P[=#«§¤¢¨¤¸¯®¢¯¯©«¸Âº²¸¯«¨´ºÇËÇ¿·Â¾°´¾·Ä¶Ã²¯º²³À¶»¾¸©¹¸¾«¤µ§¨ª°¹°©º¼¤®¿´´¡®·µ§¦§°² ¤¦§ ¥¨¨ ª¯§ ¦£©°¸¤±¯¡«¡¬¤¦¦©£©¦§¡ª}~||¡y
}
{sp|qst`yxiopqojsczlifdaf`[rjqLMiXZMPLJHPRQIN\_oTDXZRgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZgH*?0ZZ5(¥ ¡¤¡·«°£´´©¨¹Å¶²® ·¬¬°µÆÈÀ·¿Âº±µ½·¿»¿¯¬½°´¿²½Ãº©»»¸§¨¶¨§«°¬³°¦¼·¤«»µ®°¸¯©¥¦¯±¡¤ ££¡°¦¡¢§¯¢ ¢£¥¢·°¡¦±«¬¢®ª¤¨¤¥©¤¢©¡
z}yz
~zzpqvoot_xwellljinfrilfi]ds`[kuiZI}][XOOKHGRUF29^^mPDWVYeMHIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<"8R=*113>D5,-'42*;+139cl84GAf[HTDU]hD.<2bV,2¢¡ª¤¡¢ ·ª® º¸¦¬½Å³°¯£µ°¯µÄļ³¿º¸±³¹¸º¸º¯®À³´¸°¿Á¸¬½ºµ¦¢³ª§©²«±¡À¶¤§µµ¨²¼©¨¦¨¯¬£§£¦¢²¥£¨©¢ ¤ ¤¸¨¤§®¦¥ ¨¨¢¡ ¡ª¡£¨¤
y{}z
{w~{ltqllsaxthijgfoghidfij`ibjg[e{c`SsT\[SKJGIOS@!*i^jLCVU^`KIGEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,?0-N?.+-7,1195,&.5-80576`tB3CDg[KWGU`hB379fO'2£££§£µ¦ª¹·§¬ÃÁ¶°¬£µ®§®¯·ÀÀ¼²Á·±®²·¶¸·¶ª½³¯²±½¿¸®¼¼±¥¶«¥¥³©ª®Á«¨¥°²©¬µ»©ª«±¥ª¦¤§¢¤©¡¢ §¶¦¯ª¯¡¡¡ ¥¡ ¥«¡¨ y
w|
{
s}}fxokjlguskcgedubeffejjdkqZ^Y]mdaNhWZ`VJGIKMRX>9_liHBTS\[IHFFA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=+*,0A*JK./*+3722(57$+7.72685]yN2>HiZLZJVbf@:3AfH%5£¬¡ ¥³±¡±½·¡±Æ¼º±±¤¶««®©¹½»»®À²¯®¶¯³¸³¨«¹±¯®´¶º¶°¹¾¦µ« °¤«®£Á ±£®°®·®µ¯¬¢§©¤¨¥¤¢¨ ¬°¦¹¨®¢¡£¤ ¨ª§©§{s
|
p~fxmhkjgqrk\hccsafhjnlgkjgm\lktqaTbhdeZIFLMOXQQVadT@VSYTFHFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24;6#3*)6.55465Z|]19Kj[M[KXdd@A1JeC'4¡°¡©²¯¸¿¶ ´Â»½¹±¦¶°¨®¤·¸··»¯ª«·ª´¹®¦³µ²®©±·¶±³µº§©¶©©¢©¬¨¿£®¯µµ±¯©¢£«¨§£©¢¤ £«ª©»§¤ k¡q£u©§¡xnj~vql}o^cagkuw~ghuifW\hsnNPjcgrg_dfnlj^`a
eNKD8FTg^JGPPTUKHSaoteF[QUPFHFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,+08>G601.*.*/568,#1'214:176Xl16Ok[N\K[fb>G1Qd=+/£°¡ªª£½Ä¯©·Â¸½¼§¶°¥«¤¸³²³±¹ª§¬´¦°µ£¨¸¶µ¨§¬·³®´³£ª´«¡¤¦§¬»¦¥¯²·®¥©«¬¥¡ §¦¡¥¥§§§ª£µ¯££££¡¡ ¥¦ªrx
¡vif}rx¡o~|¡ {tvlmheczlqaTmcliqXjpoX^i[kk[qnzrgZ^FM?G_MFRVVQQRWUg^MXJRROEGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82).1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Wa7/(¦«ªª§©¾Ã®²º¼·À¿ª¤·°©¬¦²µ®¯³¶«©¥±¥µ³µ¶´¥§©³±²¨¯«¡²© £¢¡¢®´£¤¥¶¼¦§«ª¬¨¥¡ ¦£¦¢¤¤©£¤¥¦¡·££ ¤®©¢
±£¬yÔ¨ÁÇyx±¥·dÀ¿yy|Êq¼Å{r¶¦»{l±«°yhkX±®nei¼¼nhznrØ~Sjb¶²~rt¡ªWOWaOVNFT[XQPR\W\P@\DQNEGI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww21Tk\O[M^g\>L1[]41!¥¦©¥²¨°Â½²µÀµ·¿Â«¦³¬¬©§¯³©¯¶³¨¨¦µ¦§¸¯³²¶ª¥¤¨±®®±¦ª§¤±¤¡ ®¬¡´º¢ª¨¡®¥¢¡§§ §§§¡¦¢ °¢£
¯jjª~gdp¥q®¡¤~x»}k¡v±_j´[¥f`fzfjxk©d¾rg¦v±j|±xtcmm§m[ EhgEu`}g|¤§Y_«ixyj§7J¯\WSmc[KNW_\WV;NOWW/ITSIDEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:5/'$203B/=;Uv2-Vj\OYL_gY:M5_Y31¡¬§¥£¥ª²·¬´½¾¯¶Ä²·ºÂ¦¨°«®©©°®£±º¯¤¥®³£©¹¨³²°£¥ ª¯¬¯¦§£¢°¢¥¡´³¡«¢ ¡¨¤¡§¤¢ ª¦¦ ¡
µµx
©µw³·~¨~k¦zx«gk±[«{tqx °vwqkkl|N¤XHcc~ch¦`yruS^P©mcq~b.Q¢o[Skh`LK[dX\ZB>±xWXA#MhECDA@A19>88:84;:9<9:A:E::;6:CB8=?KNG:5:AFB@AD<FD;0201;F,0.940,.(/3,>831/2-D1<<S}n3+Xj\OXM_gX7J8aU50³¦¦¡®©§³¬©º¶Â°»Â¸·Áª¬®®¦®²©¡¯¼ª¡§´¤«µ¤¦²³§£¡¨ª²¨°¨¥¯¬¡£¨´®¢©©¨ª ¤§¢ £¥£¢ª¥¢ Õ¹p°Â~Æ|Ö»|¤¤{¤¥z¬yV¯z~j¹Z¹w|¦|zªy{±nt¼
oP¯§ÅQ zc`ªbsrm`Sµ´È|c¤3Bv]PihdP@XgZdaJHMlK[ROYfYCD>E?0<<59;74<;8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DC./0483+-).323971#%5*>3==Qwj6*Yi[K]O_fT7G:aQ72%¢±¨¨¥´ª¥µ¨¤»·Á°¹À±µ´»³µ§±°£°²¦®¶¨¨¹®£¯± ³´° ¤¨ª±©´©¤ª ©§°¨£¬¢¨¡¥¡¢¡¡¡¢¢§¡¦ §¡²nhµq«o¦r´sr¶{£¢~ ¥~°vÒÑv\®{
¤oª¦k|}{±sy³etofRÈZÂ\yb_`vsb^YÊo¿uMKµSUÆdSQjcfXAOk_lhOUGI9=VR[WXHC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>HI91746A>/.24252-).26,742&60;5:=Pqh9'Wi\BOT_eP5G=aM620¡¥°¤ª»¦µ¥§¶»¼²º¿·¶´ºº³¥´³¡±±¢¬¯¤¦º®¤±±´¸ª¦¡ª¤²¨¬ª¤¨¢§¥«¯¦¢¬¥ ¤¦¥¦¡£¡¡¥¢
¬{w¨v£©o§¡¢®
³\r³R®}¤q×}w}w¯x³aelZ°XKuyf`^wwhk^¯wxl5yÈ®²_ATo^g`EPl_pmVUM.eciSYQ:AD@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@>V_cN6GC`I988 ¸°´Á¨³¨©²º¸´¸¿¹·²µ¼µ¥·³´¬¨«§¶«¨±±«´¤© ¨¡¶§¦ª£¥¡¢¥¦¬®¦¡©¢¢¨¥ ¥¨¤¡ ¢ ¦©}}¥x¡ªp§¡£ª|yo±Z¨ ytØvs§¤|{²^d ~l\«[Zhgªdr{ks]¬Z koeOJC¡\ZLt]bfM[a_rt_JV6JXHE=HFAL35A8.;>05A78@<6=<F?:<6?=B7.HVJEAH6KIN@IK@EN::@4.;>002144+*05/7,&21($$6671<PeeA&Uf[?2U_bL7FI_C1?8¡¿«´Â®«©¥´°·±µ¿¹¹²°·¼©º´°¤¥§§ª°©°©µ¬«¯¡¡ ¦¥¤º¢£« ¢ ¨¯¯¦§¦¤§ª§©§ £¤¡¡¡ ¡«®mr´r©v¦s´xs³¤¢¤w¸o{¢kk¶Z
ei¡¢§mr´t²j
ku³af¢oj\`M¡|Rs£mz~oq\¯V<weTon.\§ObRkeblZc]`p{cTZQ>>mo3BB@?L9!7@6.;@37C58??3;<CDBJFMIF62JTKEBI6IJP?HNCFP=<E50;<010/75,+,426/#00,,289/9N`eD'UdY>/U^aL5FM^81C8¥º¡²À®««§·©¸¯µÀµ¼°¯¹¸«Á¶©ª ¦¤¡ªª¨¶£²¨¯ª § ¤«¸£¥£ «µ¯§¬©¥¤¬¢ª±£ §«±¡£¢¡ª«Ô»s°ÃÃ~Õ¸x§z£¶u}wv²`ºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¡~t«}¾ns¼t²uxnqn¤t½^w}[ay¼kZV[jz^jafgbmwoY[YCA@r?CG+5H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-6A9§¡¼¢±Ã°ªª¬±§¸¯¶Å±º±®»°®Á±«¤¢£¡©¤ª²¤µ¦¤ª¦¬¸£®¡¥ £¯¹±¬£§§¤£¬ ¨«©£³£¥§¢¢£° ©
µ·xµwmknsnytÁ»½{²¨pt¸|{|¤»¹½uz´£tvut°ufiµtrpw¶^z}hymyc¬pu
Y[§jDdYSf`c]cQgfqmuBMPMD;ZM>J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7LT_G'SbV8*O]]=+:VV'=;<§ ¿¥´Ã´¬«§¬«©»®°Æ¯µ³®·§´¸©¢¡¥ «¤ª¦µ¨§ £¬¤½¦¡ª¢¢¨¢²µ¶£¤¢¦¥ª¨¤¥¡©§§£©¡¤°¨§¡j~i¦xs}tzez½¾Àºoq_rjZ^ack`cmwbke^`cqir}gj~rtx}}b[wthP\n}{kXlzsIJopNtMEW]f`L[Xfc_O[muiqRODEM<HI=L?2,2A?8/5?C<9;@;=C>RVVWYZ[\\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7JR_I'S`V4)P^L(3=[O'?2>¨¨¡Á£´º¶£¬¥®§¨µ±¬È¬¯³«µ£¾±²§ ¢©¢¬¦®¤¥µ©¥¡§©¾§©¦ ¥©¨°²¿¬§§¢©¨£« ££§£«¢°§ ±¤¡§££¦¢gm}qw
µª ¢¡z¥lj||tqxyvv|kstudw}wkpzm`c]pgMYYfi`WZpznlfSOFS9OZMRO(+:JB635=@A9:C><ENSSTVWXYZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J&R^S10T^:+=8\K,<-@³ ³¢¿¡£±²· ©¥²§¥°µªÉ«¬±¥µ¦À§´¡¤¥£ ª¦¬££·«©¥Á«¤¢¢§¨§²Ã¯«ª©ª ¬¡¢¥°§¢¥¨®§¡° ¢¦ ¡£ |ª¨{
£~f¡³¯
vz|vyzofzkuyrhszvktdyf`jecdfkYk{pij\RLPD_UE@??,4@F;45;>A;<?>>HNNOPSUVVXZ\_aca_^^]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMMD/T]Q05M[17E4\G5<,@´ ¹¯¾¬«®²² ª¦±¢¬³°Å°ª¬£³®¼¤´¥¢¡¨¥©¦¤¥³µ°¦¾ ¬¢¡¨©«¢³È³ª£ª§¨¤« ª¯ª¦£«¢ ¡¤¯£¨¤¨e|e~cylhkz¤«ke~g
eeih{¡kh¢wkj£slnzzXe^
^lv\hswwnxxsmytw{iY^ktd]sij|qlc]RNXJdXAJ4=F7?FD71<=?AD;;DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AJ[J/7ZO6)EY/DO1YC;?.=¥º¼¹¯¬³°ª¥¨°§®°½±©§¤¯°£¡§«£¥¨©²®£¢¯¦·¹¥®£¡ ¤{¥¬¢¨³Ã·¤¡§®£££ª¨¡ ª±ª«£ª ©¦¨¡¬¡¥°¤ª¡¥ª~½r´rhx¹Ä¸q¢£{¦sª|ËÀÀ»q¢}À½ÂÁ{{ÃÀ}j¥±ooÊzwvzyqzqx
ymvcf_xd`ec^tgmdbXLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>I[L*#BP/#F[3PY/UAB;/8£¸Ãµ°¯À©¨£¯©°®¦²µ¯©¥¦¦°««¢ª§¢¬£¥¨¥¤´¤¢¦®«¸³§¯¢¥ ¡¦«¤«¿À± ©¯©¢¡£ª£ ¡¯©¬¦££§¡¥¦©¤©©ª¬¡¥¡£Îxz¤y_®^§¢ |§t«¯^cªz§
t³c« ³j®t}¸aY£Ínu{Ú{p~v~e{vvk}n~
~m`qkpg`_yd\qhjcf`RTRW^KOC5AHED8>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-J0';\;L-!P@F4.1¿¿µ´°·¤ª¨³«¥²¬¬«¤«§¯ª §¤¢¯ ¨§£¥¡°¬§®±ª¨¬ ¥¥§£¤ª°¨ÀƳ¨©±®¢©ª¡®°¨«©§§¤¢«´¦¢ª©£§¥¡° § q
t¨q±|q¬~¡¥wª}r~«vz|~ª¢~«{{VÄzoÁ}mupmeveoawnromeptup`gme_oiinfcWS]aYRSC9II@D<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1' '45-&7=WJ-<'>1)3V@F!G:C1.+°ÔÆƲ´£££¡¬¯¶®©±§¨ª§««§¢£¢ ¦«¡¥ ¨¨¢°¬¨§¯¬¨§©£¢¡¦£¯¬£«´ªºÍ±¦®«¢®¬ ª³©ªª«ª¤£¬°±¢¨¬®¥¦ª©©±¢£¥¤j¤uz©tz²p¥q ¤``R«®v®¦z{f£¤
£}©~®^|©U¢z¢{ïÅs¯³³¹qb©¯Âthmpnyxwolfeerpf|ib]W`iXXUMMQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799674,&$" ('"+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÃÉÖÕ¿¡«§¡¯¢°´°¯©¢§¦ª««©¤¦ ¥¦§¦£¬¢¬¡¤¯¢ª¤µ°® ©¦£¢¨ ¥±¦£§±¬¶È²µª¬©¢ ¥³ §¬¬¤®¬ª£¢«¢³®¢ª³±¡ª¨®¯¶££§|ªlu«y|°o¤Ò¸´¸É²__©¤ yxªÉt£§©ÆÆxe¡¥s}¯^pµc±uK£m§Gd|pq{u}{n[ejsqfj_aYdm\^YIMLKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75685/)(%&%$&),4ENPPMFKJVF*L0/>-5OTQ;<F2,$§¤ÁƸ©²¬¥¢²¹¬ª¡¦¨¥ª«ª§ ¦¥ª£®«¦ ¬©¥§¶¢¨ª¶²¬¦ ¥¬§£©¦®¡£§©°´Â±³ª¨¤¡£¯¦¡¥¦«°¨§¬£·¡²¹¯¯§³³³¤§£Nxz£}¤§¸{|y¹~Ìƶx¡}v¤£¨~°
¬}a¥l£p
}r¬`¤sq`¼}RUu¤|}uzs
q\moxrjoZd_hncd]KMQTBIHFI:9K>B108866877-*5==?BDGILNPTVXYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOUF<E3:P[T6?H,- ©«¤«¸«¯ ¡¬³³¦ ¦®®ª§¦¦£§ ²®¢©¦² ª¤£¶¢¢¢©´¸¤¢¢¡±§¥¡¢¯®¤¨¡¶²Ã±®©©§¢¤¥¦¤©¯¢®¥¦¯¥¼¡··µ²¸°³¦¯¡£
ѵ÷y
¦x¢w ¥qª´nrj£|s¯¥¢¦mp²\¥szl{}n©a£qqbs²¸hx¦~x}ymixiysnt]ddnmfg`J[XX<HG@U3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^``][ZZXURRQF:2230/++(@QRTUTSTVWWXXWUVVTQOQ[U%!2AH$)%s¿¿»ºµ§¤µ¡££©§®ª«¦¢¦¡ µ§£©§°£¬£¤£ª´´¤¤© ¦£§´¡ª£¶«Ã¯©«©¡¡ ¦¢§¥¦¬¨®£¥®§¾¬½°¬¢°³¹«´§¨±¤§z¨}|°w¤¥m²o¡|¡§¬
®
© ¡{~«ªx y¯]£|¦§d|tk®]¥kp
]`[ m§{{klb~tmz`geqnhghCZa[=KT2U8BBC7$$3+''3, /6674359@CFIKMNQSSSVZ]_a`aaa]][ZXSPONI7052.*,ATVVVTTUUUUTTUTSTVVWXVUUQHFIJ#((½©Æ¶Á´¬ ¸¥£¤¢°¯ª¤¸ £« ¯©®¡«©¤®°¬¦§¬¬¢¡¥¡¤¨¦¶©À¯¥©£¦¦¥¤©¬¬£¤ ª¨¿¤Ã¬ª¢¡«²¹ª®§ ³®¨©v¯~
|º®e°e}¡¦¬°
¥¤¡¡
[lj³`{{±lgo°[}´[¤kÈ¢e{¼YvµZ²}R¯z¬X¡n¨|y~ds~bxt|ajgqmfeeOUd\AT_>J(>9=4!",%2. *1/045799<ACFHJLNPPRTWZ^```ab^_\[XUPMJGC553./@UZXWXWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³²·½»´Á³£¬¦¥¶¨ ³³©£µ ³¨ª«¯¬¯¨¢¯¬¨§¢§®¨¢¥£¢¥£©²¨¼¯¥¨} © ¡¨®§¥¦£¥©» Ƨ¥©¡«´µ¬®¦»¬¬©£¯¤¸Ãº§¬¯¦¥ª~սªb£¿½}~£×º¸µ
½¾j£o«mz²°Çj«°½¬xw¢¾¼t§zzc}{dgy{`kekjbPa[Sj\@UaCN*=:4/$%2 $(0496677;>ACFGJKMNNQTW]a\__a^`[\YTQMHC?<A?5=SYXXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ¼³´±¿¹±½²¢®¦¥²¦¥¿ª¸±¨¡¿¦¦²±¹¨¯¥§°«®¦£¬¡¤©£¦§ ¨¢ ¬ª¹®¨£{¦© ©©¡ª§¡¢«»©Å£ ¯£ª³´ª¯© º§®®suª¤·e pgmox¤u®pq¨£®¤rmmmexomqyiqigqhigpd]cjoY]g~w¦`bqoed¢}vfxhkyydlcflbKdWJlY:QeER'K:+# #,)-2.5:457:<?ABDEHKLMOQSV]WZ\``a]][TPLHD=:AB7MXZZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨³©¹¹²³ª©¡®£²©¾²ÃȾ¶ªÀ«¬£ §¬º£¤¬¦®©
¦ª¡££ ¤§¨£© ¥¦§¯º«¬{¥¨©£±§£¬º°Á§¤³¦¬°±ª«§¸£· ¨¥¶¢©ª³£« ±¡¡¢ ¤¡«§
¤}gtvtp§m{¡¢riwpxw|zjlddodU`X@i[HcaOZ+F=+'!740.!%2(*699469;>?ABDFJKKMPPQXUVY^`ac\^UQJED>9=@ASX[\YWXXXXXYXXZ[[\^__`^^^__```_YY`¦©ª¥µ¶®®¢°¤ µ±¬Æ½Ä»¸ª¢¥¦°¨£¶§©µ¦¨¬¢§¬¤ §£¨¨¦¡£¨¡µº§«| ¥ª ¶£§¬·§®Á®£·§¯¯°¬©©²¸ ®¼¥¤¦¶¢¦©£¬¯¡£°¨¯£ £©«¡ª
}fuvysj}¡¢zrszr|jod^pj`[_YncP`eP[:GGE>2==7/+&+)&&406658:==?AACIJGJKLMSSSUZ``i`eVPJACB:9EMV[^^[Z\[[[\]]__]^_`aabaaa`bbbdb\[c¤¨£°³¬®£©§ §µª¥³»¯¬¬¢£z¢±¤¥°©¸¦£ª£®£§ ®ª¨§¨¹¶¤¥y¢©¸¤¯µ¢°¯u¤¾£² wy ª±»u¬¤ªd\bv ¤~n³£§ª£esyp¨l¢¨e¥wjvq|aiZuhhrz¦eyxjoykqe_vplkh\febbpS\>MNNSG>@TC:1/&4:316678<;>@ABFHBGFIKMTTUY]`hfgWPJ<DG;8UR[`ab`^`_`aa_\]___aabcdabaaedchd^]f¦£¡¯±¬«©¥©®£§¥«¶°²¦ª§«s°¨«§¹ ¤¬¢§¡u®¦¨¤º´§ uw §²µ³¼§ ~§¢z¢®·¦±©¯£y¬¢§©§
w¥z¦{±z
cympyq
txht t}¡~k
lx{qqgdxnjlj[ekjft\_HTLQ@E5.YUU7)!09=>643568;:=>>@DI@JEJKGSX[Y[a`hfYQH9EL;>bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah£¦®®«¨¬ ¨±¦§ª¥®È¾°¡¦©µ¬§¢ ¾ }¬¡ ¨¢£º²§
pu ¤¬´´Êª®·
¯°®©¥|¨r{w§h¤y´¦¨Â«¡q¤}
±¡|¡ |
ms
zr|uÅf©£k¢
p
hwt|whhuqghk^domgmXhG]RM2E46Nac7&3<DGD964658;8>==>BL?NIJLCPZ]\Wa]jl\QE=KM@JdY]cfhgbbbbcc`_babccceiicbbbecafcbbi¢°¨©¨¥« ¤¹±ª«¦ £¤ª£¥ª·£¯¡§¥½¡y«¡
v¤¢¹®¤~bm ¡¡¨~¡§
ª®£©~¢vk¬uM«x¨§©«}¡{z§ikg¶}n`dY{dhr}yl]{m_Sp\_ky`Ye}p§ªk£nr¥piel[n|fZ`bWPowfmtrkjo^jpmljXiO]XF9A4GD_k4,ICQMN=84859;6@;;=AO>QRLMBJ\]_W^^bv`MD:MOMTb\\ffiibbdbddbab`cdcacikdbddgdbgeach ¹¡ª£¦¬¡¶¼¬®£ ¢¥¬¡®µ¢¨¡ ¦´u¦
¬¤¨¥±§¢in¢ ¢¥£¡ w§¡§©¬¥x|}¢pr{ym¨{¢sv¦f~v¤_z}s¢n·´ºtµ¨dƸ{p·q¤cs¬«`}j³~n|q£lr£s¤`³q|´ts[²jbotvrhoXklssf]i^bKE=D5QAZr2=SG_JR=<395::6D;;@IQ?UMNQ@E_^[YX``|dHC8LWUVbaZffkkbbeadc`ab`dd_`cknccddhdbgfchh£¸« ¤·µ® ¢££¦±¬¡¡¤«xp¡}¨ ¢¨¨¥~k{} w¢r¡¨¥§ª~~z z£xt} ¦¢d¡|lhn{§}rht«tªg]
vhªj¸f\¨pa^§vvhunm§]¨~x»k~ª[]´g\nryxki\qjyyc`fXbAQEN7VCRn4KZZ_NZD@151;;7H?:CHU?YRY]>Db^V`Qac}iEB9N[]XdfXfgnmbbe_aa__``ec^bdoq_deekecihgkiªµ§c«º²°¬¦¨®°¨¬¤¡ £jr{z£
¨£ iy{¢ ¡rhp©¢§§|¯£¢¸w£³¢¤y{«¢q¡|
¯µ}k¡x~´££«¨|}~tªZ]o{xbL~zz
cyBLY¢jq|mux±³§vmr}osj¤]vHec`sq~nf`liv{debR^W]UV@YFQgDSW[bX^ID=B8?A:IE8LEWAVQ[VDFb\Z`K`m~qEC<U_bZejVghmobfg^aa\]^ahb_ecvl^egfkdflihki±T^ ¦³¹³³©¢«©¡«¤¡¨ w
ny
|r¡s©|l
q¡x
|£¡¢®}µ{¥z© |§hwm~t¡sq|p®}¤¦£o^¨gu£co¥aÓ|{xrsc¢
~£s£uk³`sª²¨¼wm~¾¦©´^n}qns¢r]¤gs¦ah¦mÔ}oxzk{wsm©¤g`eypkgfdnvwg`cS[fQQaHWIT`WS[ej\eQFCKMJKBJE8P@QNWRYOSQ`feiScwywIFEc^eZhiTihjocjg`c`\]]_hbahe|d^dgdkdjmghlh±«T\K~©¯±´°³£
¨ ¤¤¨ © {p}h}wol|£ª
yvnw¢z¢¤³¡¢¶z¬§¤®¥p¨
{¤¡r£®¯¤®¡v´µµÉ¡s`©my u¡w ~oLf£pr¤{ytak~ kqd`r~tizi³µ´Æ¦s~zk«umuwizuqPE}´^jvkyfjhbtupnV^TYiPShIULYSU]hknVgWMJAJMKHJNAQKPecimeussy|nu{{TPNl^h[kiRjhilglfce_\]\^ibdik{_]dhcjfomeile¡¯¦f?¡²«¯¯¶¢¢©¢¢¥¥§¦yjye yui
z¥©z}yp¡y ¥¨fnxl¢d|q¥wpg¦{¤zrv¹n¢b}¡mri«ju mn¦_ihu¢}`
tobh e~iuocfmr¢Z_[c¡m]o{~srd¥mw¢dg§hso¢oSo _e§T^TnmskrmpikyskoRYWWfZSmIXO]IXihsjYkVQREV\LXRaUhj_wtz}p||r{svv^QrbgbpgPjhhklnhdg_]^]`kcjivu]\cicjjslfkmc¤¦zetm§®¤©°±¦«¥¢¡¢¢{qh|st}{d|§¡¬
}sh¥} ª§¦x¤²¯¥wy©t¤n¤¢»n}¥¯ |¥zq¨ f~o«cw¨l©¢uw«¦j°kv³©kmma«ªv¥v}¤ jw¬g¶tw¾¤Y¦«aurtp|tqcj~nhlSV[Vab]kM]R]I]mmv`[qY[`Zgtenoqcqt`xz~yrys~{{vbxdcmsdRkgholrjfia_^\bkbmlzo\\bibljwmglnb¥ª¤©ª¨§®¤«¤¥©
tzo~ttrm|{
¥¥¦
vol©«£ u~y®£q
x~{r¦q}}zx{~~v z}k
[yxrzphn~qtq
e^wusuoynnm
^vhxe
©}t|jov}vmmgsy{x[kXyinwrqoxxp]lnjgVZ`W]ekcVaU_Q_pxylkvejkjv|qrtsaoubt{xuzvx
}{mldxn^Wnghukxjijd\`ZcjelqunZ[bkdllymhloa¸¨¦¡¢¦¤¤«¢¡¬¡¦©~r|}~
{srp
{}
x~£{§¡
wr
©¨ ª~~¨¦woyo}¨
p}qkp}hm]sqtkvtYrn}~j]jdz
_ixz{vgwkaprv_r¦
fnwqzpfgd{z[\jgnv[{ywunssf\mklcYY^[Ylq\_aZ^]ft~{uotckkj{}r{xtdmthm|~vz||zz~o{}s~ysiT\qiluougkhd]aXkhlkqrmW[emlgsyohjm`©°¡£¡¨£¢~¢¥{|s}v
qor~z§¡x
z¡«¢¢££ª¡§¦ {w§~±¦²¥k|wxe|
w|yt¡~}ups
w¦
}wl}zjrhatp}zwvovt]^oho`^Z\]ShrUc\\alhu||sopdkji|nyqipplf{rx}
{m
|zx|}zyNdvjrmpzdkebb`[tfpfrqmU]ltmiyzqgike¹¢¡¤¡|« }y{nxr~mk~z|ªr}zª¦¢¦ ¥v{¥{|ª¡«~ow
qua~u~
mxut¢
t|}rr{{x¦w|ok~|nhlmg^zh|{vtvu{w\`p}nu`c[]^QgnTe[^akivz~qlldkjglskltoyoymv}vq~{{|{`i{juhiejc`i\duhobtmlUcqyepzzreimm·¡£{x¦¥yz
|n|xs
}}kh}|}
|§p¡¡
|¨x£ ¡£¡£~x }|¤ ¡§}~tspv`}r|q
hwqx~r|}px{zz¥|
vzer|xzqljf^~sh|uvt|sj^`tvpxdcY_^RkhTeY_ahjvxqfkclhekm}hoqk}xzks~tv~|z}jrnsiahlb_qVtomn`xhmWjtvcu{zrbjny²¥¥¡|v¤ ¢x{~q{tv
~xgc}x}y ~o¦¦
w¡¡z~¤y
w~s¢¢¢~|vq}nzd|
pleuo{|x{|{q~w
y¢ww|
v`xx}t~xgldaijwstu}q|bcasnusmaZa^[leRcX`aikvyqbjcmeh}lhthloi|ymqt|~z~|mvttmeljbcuViqn`xglbjvpfy{yq_rl
®¦¨}xªzy{}|{xtxzs}d^}~
t}~}£¡r{§ s¦sk
zo£|yqykul{}~m
wp}~dri{~sx~ux}|¤yt}tvna{uzq}oaocd{bnovsxwstau_oluno\[_^^k^P]Xcahmt{k_jejchwnflhjlh|{wos}sz}z}}rzxxnlkh_irbhroevgnlayhk}{xpawmª £¨}w®}w~{|{vwpts{o
}|a\~szz¥~}¤n¢¡nf
z
p¢|{srukqnt{tn
qt{|dplx}}tsyo}|
¨{|~
x~qp
chytup|b^p`kt^pj{yxkspex]mlsmsXZ^_bkZPWXecgqqf]ihgbgqodigdihzwtn
t{u
w
|x
zw{{ryjk_phtkromqgole|cnyvqlww~¢¡¨ ¦uª t{v
wxrs{
krpzmvnq[X~vu ¡x
m¡
j£f
~w~{|nuplmop{
ispwtxfrou|zyvtp{
z£|vxxok^rsrqpxZ^p`pj^oi|zpmmjlv`pojrmZXaabnXQTZfgcupb]kmdbfkm`ff_gkuqrpuxux
ww
{{vjqc|c|oqmtjholvw_qy{tut~¤¦
uzrxtpr
tqukomumv~mnUQ«xvry x{¤|r
~h
g
qx{z||kvjnkklzaz~vzx|ygslt~{qzpvz{}
||w}wqjly`xomlrtV^obr`_lnypgpffsthpkawe]Vf``rSQN\fe]yp|_\hrbbefj_hd[gp~pkps}v|
tuy{xs
~{yxgrj`~ookz`jntt_t}xxts
|x °¥
vtvspo
spqpjivnn}|musRMßÈÖ|puu w{s
¡~wz~zvgl£cq{{y
{~l{erojkyy\yz}~zyhsjs
}k~~n~}z|vxysmfpmjtohjtnS^odpY_krxfkjbfxropc_x``Vk_^vPNK`gc]zqt\\ev`aeed`eaXissmjqv|tyuv~s{~r|~vesn|e~opkYlnyysavz{vswwy¯
w~}
twpyqnomn~rddxq}my}jhlc¤ÁÜ®ï¡skuu¢
o q£
~zuxvvn}£
^m|}
v
}}k}dxuinxsXzy~
~xesj
kvnztsxusqguzbtmpbjvgR`qglU_ntyarc_h}prn[crabWnZ\xMMLdga^vsm\\dy^`df
`cb^Yjrknksw}twxw{q}~{t~~shuqylzntpWqzvyqewyiwr§£}pxy
¡{{rwpsjokim|t^`xw{qu{gae|ëÚµÉÃÜsltviq
|{
vxrup¡ai}}q~qwhvriswlZ|}uask~}mlx}}oqzulqlrx_tin]kv`RerifS_pvt`o`]hprjWghciXmV\uLKLeg^brs
i[\ey^^dg{`d_\Yknfnitw~ss~zvzs
|vw{vlwuyxtnxz}Xy
qogxwdv
q
¡¢torw}|xqsmodr~iflwx[^y{{qqjagaÕ¶¦xnqw{pj
{i|{~
zt{zpuv~a
g}~~m|tkmvtsvukb
~|~o_rp
{|~zpfy|~noy~unoklz}chkjYnvZRirjbQbrxlbe]Zjmsa[g_dl_nT[pNHOge\gnql[[cs`\clwde]]Zllbmjsvqo||txx
}uy|vpwy{om|w^tmiztsgs|r vv~mv~|v}vqoljau|gbiuzZ_x|zmqedhgW^qr¼Ävq~rsk{|}|u
vv}quqt{e}r}g}{y|i}vfoxxsvslj
xj^qxz}
{~rix
x|}nm{}wtohh}vd\qcXosSSnsiaNftxf`]\XnnsYeb]jm`pOYlRDThaZknm{oZ[^mcZbowcf\]`kjclisvqn~{tuz|
v~xtryy~oo|qiyz~mm|vkjxtl
n}vjxyozspljd`szh_er{Z`r|ygpzaee±²wJbZ¤ÙÐq{x}
olzy|xxoqt~ziy
¥o~vx
p{}oxh
xr|e}~vcpshxpot
{vxyj\p}r
}zrnqsxxnn~w{ehj}q`YwZYqnNXrsg`Klvta][[Yt}roWg]fjp_oNWiR?Yf_Zpkgyq[[XkeYcpy_h\^elhflipwnl}upzv
qq{|zytjzko~t}or|{onxg¡gphz~
|hxrklf_aoxm_boy\dlzaqv_eeÔê¾2:>ry
v~nl
v}
|xnvwnlu{tfy§}ntvy
~{xlri~xm|{xayqdqh~mtqu
~sv}so[l~tx{|xzqlry~tmkvuv]iixpYW|SZqeL[rre[Jpwo\[ZY]t~thYb[genciMWfQ=^f\]vf_tp[YTodYepyZh^_gmgjliow}li~yn{|zu
pnw~{{h{}jt{r{sw}yx}|kl~ki{~}kuqghc[bgro`alsahpzast^cd n\5Y¯µuj}vtwpm
uyx}zsgv~~op}hvymey¥~n~u||q{}|i~mk{zjzvr`w~qdrgumu{
|owy|t~lWo~vtwuzxrn
r~}~znnimun]hftrR[{N\q\O\rpcVKsxjWYYZaqt`]]`gdhifNZhN@ad[`va\tmXWStaZdnrWj^ahkgmlipw|kh||p~~{zwq{oqw{j~{nwyvw}x~~zm£{vzkmy}{~prpcf^Yg_pp``gpfjouato[adjv{¾¦£È¸q
s}xtrrp{tutwyyqcwzirufwvcj|}r~sxxzlxyuh{ikysizv}h`w}jkth{iv~z~~p{v{s~bUv|rs}pwxpp~}y~|u
uiqilrp^hcsnKeuL^oUTYsnbPOsxaRWX\aps[a\hedcjdP[qIDda\cq^]whUWUw][enhVk^ajgeooipv{niy}r{~x|v}pvrnw~p|xyztxzuo~}
zw|htz|vgom_d\XeYmra`aqlkhn`siY^dmw©Ú©Ç²qxpu{zutu~wpqmtxul`zyfqogun[m}y}x{mus
{
muvnhwem{vmjvv|abxzhtuc}zgu{tuqz|lYVs}otyksykt}z}x{r|rgtemmt[k_ueHnnL[bWWVxmbOStvXPUX^aqo\`cmdc]nbT]rGCf_]fh]ZzcRU\u[[gkaVj_`nffkqhpuxtkuvx~w{t~oqtqu~{wx||
x|}~
{~svyzvuy^~yt
wzbnl[b[[aVjsc`[gnograqfW]ck|Êι¢jmmlqq|~{
zytyuu{jmucuwpg^}yeqkjqcXl{sw~{nqq
{y~qqo~ghrbnxqjlqw}|z]eywiuxfvgt|rio~xm|]Xq~ms|noqvgwv|qzt|yrfsanlsXk_w\IokNWV^TU{kaOTurQQTV^bt
h\`kjfbYnaXbpGAh]`f^]U{^OVdpY[jh]Wg`_rfkgrgprwxntzw~yus
pp{wwuzz|u~}
~~}|xvyw}muydso
ztcnjY_[]]Tgse`YdrrgsbkeWZ`iw¾®{·nbsht|rzz}xxsvo{vejn`usjb^~xyfq}hjkZVox¤
qqxumr
}ytrohzajm`mvjgkkywzw[g}|xer}nteu
ofkztltb\o|kt{{fu}mqgu~x}r|lzzzwpelbm~mnVk`wVKjkOROhNY|hbNUujLPTU^fvf]aphg`Wi][khJEkZbdWYUyZNVmjY]le\Yec^tfmdqfrotwp
v~w|
}usnsxzzss
x}v|{~{w|wwziw~|l
rq~oflgW][\[Tdpe_XcsuivpeebW\\hporsdex~itvss
xywtunk{qagkgtnf]_}o{}hlwfidUWrp¦||vs|s{ym{zv|}uprlgu]mh_ludgfizo{rYgwugpxubw
|njmzpere`lyfrw{~buvikqtzpyxr}f~xvnceam|mkVkcqSLikPLOpG^{faMUtcJNSW`jv}e]gsie_VcWap]LKkXcaUTTsWLXudZ_k`\Zce_wfmbpisnq~ttww~z}u~
nrt{ztq
zut}
|~z~v{£¥y
lu|{uzn
sz
}unjheV][ZZSbne[Xat{jhmi_bW_Zijkoglahyyktttn
z}vunzhjyj_eniwgeXbwi~zoioff]UXoh§vz|yuo~oruywt
ujrvgho\me^ms_gaixh{m[mrsio~ywawxsqoyqbph[nwdps|ybspgjxsrkwvtwc{~wvpdccn|}klVjcgSKlhPGRlEaxfaMSq]IMTYekwze^mpid]V_UnnWKShXf^XMUlUJ\y_[_k]]Zbe`zhlaoounowuz}wzzyz~qtt~zvt
}}ls{
}~{v¬zlrzvuno|sjomddX_ZYZUbjg[Z_ui^ml\aV\\kfrt}ij]kvvhtwqm{~}yvrlzhiwf]dshzwccTeofwvfhi`WVYhd§n~xzpp|fxny{vq}~ndvsdhh]kb]oo[g_luezh]torkq{~uubt
zwru~taplYpsbqr
|tdrlalzojhywtqf
uzzupdadns~jlUj^^TLscQGWbGbvfaKToWJLXXgkvzdenpfcZX]XveTJ\cXhXYHWeQHbxZ]_l[^\ad^ij`otxmonvyr}}vvx}suuxzz}~jt{}~
yz~|sq®{{~frzt}}vrol{~lzbpoae^eVYYWcfk_]]s
hYpnZ^WZ\l{cpwvlb[mstguupm
yywnoteite[gufvvz_]Rffjs}aci\TX^bc¥hyt
xmnygwm{zurx|xhevm`fa_j`]tkYe]oobze[w{knnpxxttdr~zvoq}rawdZnpapq|sfrd^nvicfyztmnus|sqb^fno}ejTiYYTNx_RJZYHbtcaITmSILZVilr{bllsbaYZ[av\SKd]XiSWGY`NGiuX^am[[_bb]
hhanxylnjvyn~vttsqwvw|}~~~px}yxy~ssp¢{zyduysxvlto~ly|pr^pn`gblTZYWhcme\\qeSrn[ZXX`lvdiujj^Zmsqltstj|~|wonldiqc[jrdtvs[VSd`q~q\ac]SZ`\cerq
tljylooz{zqv~rzzzdeug^bZag\^whWb]ohawa[{vjirowtsthp~vrjp{lfvW[jmbpszsfo~[`pqb^ip|lks~rqxkp`\elm{ahTgUWRPv[SPZRHcsb`GUjPHOZUkkk|emoq`[ZXYlpWRPfWWiSTFZ\OHruX_cmcXa`a]icdmyxkniuy{k}|y}nqowz|t|tx
utpuo¢t{{fxon{ofxpzlsvsk^tnagekR][Ugbll[\qdOon]VXUgithbtee]Znunpuuzk||wscekoa\nmcsxkZTVbcw||p
\c_cT[`Yccnp
sjhznervs{lztuoz~u_frc[^WbdYaueU_`mdaq]]~phisqspuukm{
qrfn|oqnSZejeqtvsbmvUbqk[^ne|elu|rrrjm`Ydjjx_gTeUVPUnXQWTPHer_aFWiNHXTVmid|ikwkaW\U[tcSRWhQYfTSHZZPNxw[_fliZb`^^nbfkyunohvv~m~{krgt{u}r}
{ss}un¥swxnz`d|qfzsylmqvgd|lcfghS_^Tg`lo\^nhNim`TVSofskexde]Yptmrzxsm{w{zkaelm^`ojepy~gZVX`kw{{o^b^gVY`Wdbkq}wkjwl[vqkyiurmo{rXjm_Y]VbcXeqcS^aibblZ`~lfksunmwvkh
zmqeo{lqlbX_hhotsr^imSepeUbnaybpv{ukolj_Xaghu]eVbVSNYfSO]OOHeo]cGYiMI_KXmd_xhn}d`U^T]t[TR`fN]aTSJ\ZQYuu]_fmhXba[^qcgjwqsmhvtysz~|zntlst
z}|rstwqn~zz}~~}}~~}~~~~~~~}z{|}~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~ÎÚØØØØÚ]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDEB1/000/,¤ £cggggfo
}}{{z}~||~}}}~}}~~~~~
Ûéççççê~S7¤¤¤¤¤¤£r]____aR4555553~©¤¤¤¤§|\____^j|}zzz|}{|~}}}~}}~~~~
|y{z{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{y{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~rtx|||{||}}~~~~~~}~~~~xrvy|}|z}|}}~~~~~~~~}ssvx}~|y}|}}~~~}~~{v
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~ss
{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
np
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxz}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvuuvwuqfmjqsoghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkiffggghhglgifrnhgcbbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__ac_\_]`]^Z^\ef^rl]^ZY_[XWSNMLKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSTPMJMNPRONPSabYkdTQQQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTtsuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPYhhbibQOONOPPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKKFCFJMcrkgpjUNMLMOOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEB@?@BPlsmisq_OKKRLHHJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:;>=BIB<OipmdrtfEJ^TFBDEEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@:;><;;;AYQ>Efmi`pqiRafEEFDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprtusqrvyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<979:G[SScjjnqmjhmT>CFDCCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtsurqtxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::979::78:Mcciljromklc@=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==?@===?C;=>]mopmqnlklO;>??A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCDA?=>@A?@;]m?>CKfrqopnjk]<:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVppqssttuyz{{|~~~~~~mLPQNOPNNOPPO><<=>??@>@@???BFD><<=@=8:;mvH8<9KkropnkgG;8:;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}|~~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABA@YQ<==ILEFuvM7898JlrrpmS;<::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@CsyI;]y{wV<>?==JfwmR==>?==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy|||||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCEAHrykb}]>@C@A>EtV;<=@EABBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{{{}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Fot}~}uMACE@@ANvjH@CEIIIIMMKECFGHEGEEEDDCA?@>>BFJJGEEGFFJNNKJIGGHKLIGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEhs}|~y
pBDEDCXu~XGIJLLNOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHIHGFEFFFDFHGEEHHFHGHFQnnpqruvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJG`{w
lAAVtWHLMLMNLJGGGGDGGGGFHFHECDDFEDDHHCCCGJJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrsvwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLN[|
Ul|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD?>?DFHDEGIJIIHHIGIIJJIHFJJJJIJIJJJFILLJJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLLJU
uIIFB??@???<<<>::<AA@><998<<=;>;9;?AB@ACCB@ABDDBCFHIHHHLMLGIJMMNMJJKKJLMSloqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJJIe
fBB=88::9878896479;<:8567789787688;;;=@;999=<>;;=ACEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIj~T;8656766645763468:876565676778:77789;7578979876:<@GFIFIFEFOSRSSROPPRTepqsttwy{{{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=ECBf
H676468874578467699766765:9:;:;898977779:98878589;A=>>BA?AKLOQPQOOORWkqrttuwy{z{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B:=qz>988;<=>9:;<89;9:;:99;:9===>;;<=:>;9;;<;<<99<8::;:999<?<=ABDIJMKIKLWorsutvx{{||{}~~}}}}~~~TFEFILNNLJJMB?:;<;89989:::;?>H~
l<;>BCEEAAAB>@B@@>==>@???@?@==?B?AA?A@=@@@>?A=><;:;99;?=;;==AACABCAXpqtttvy{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<=:;;==?@BR
^>CGIKJIFGGDFHGEB@@CECCABCB?@DHDCEDEEAFEFDEFD@B?<@>=?@>???>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@CDFX
WGLMMKNJIKHIJJIECDFGFDCEFDBHIKHGGFGGEKIKIJKJCFCCDBAACBDCCDDCA=;=@hpsttwwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@?A?BBGGIY
PMPMKNKJLJIIHJFDGHHIEEHFFELLMIJGGHIJNMNLLNKGFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?EGG=<@@98<;<=:?@>?@CFIIP_
rNQOMLLKLJHHEJIDJHGKJHJGGGKLNLLHHIJMPNPNMOKIGIJHIDIHHFFGGIFCBACUnpuwwy{xyzz||}~~~~}~}~~~~~TDAABGHB?8?@9:<8=>;=A>?ADHJLUq
_RRPMNMKJGFBGJGLJFKNKKJJMMLOPNHIKLOQQPQOOJHJJLJKFGHGEGHFEEBABB\orwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAGKLPVy
|XVRRTROLKJDEFKONOWUQPOQSRMSTOMSLPSUVRSQPLJMMMKNGGJFFIJDDEEBDCcpuyyzzz{z{z{|~}}~}}}}|}~~UFFGGGGHF>@B=?==B?CBFVNFNPPTX{
hVUkaERQQPI;;QSR`u]UVTVYYRYXRZfPUWZ]RTWQPNRPPPQKKKHHJHEFIIIHIirvyyzyz{{|z{|}|}~}}}}}}~~~SHJIIGFFE??AAEBCGEDELXRMTUVX[|
}al[dU:XXXSQ?@VUY\d`VYbr]]V]ZVEQYZ[Y_TZgRUVXTTVTOOMJLJIILMKOMSosvxyxwzyz{z{|}|~~}~}}}~}~~~~VJJIHGEDDBA?HMIMPKIKPTSSXZZ\\x
g;~znpXZ[ZRTRVVTZZuYU}`\X]_WIV]][[_YIYXY[]XXYWRQMPQMMOSQQURassvwwvxxxz{z|}}}~}~}}}~~xy}YNKIIHFBD@A:PQQWXPPOQSTTXXYZ[n
n~fYY\YSUTWRQWVcQerXZW_gP`f[[X\gaGOZhg\[\]]WSNSPPQVVVVYZnrtwvvuxxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQORRRUSVTW_ux
}{\PUXTRTRQQLOMKfyZ]TYUV]ZLTZTST^ZXWWWzkXZ[\^TQQPINOWVXZZdqsvvttvxyy{{||}}~}}}~}}~~~zxwvsu{tk~~kry^[VUTROKFCDAM^lVRSNOQOQURSRRTcdv
~ymqVIKMNKMKHJDFHEC>ScURQQNKRTQMOYQMNQSUUMQSRPOMLHCIHRTUZ\mruvutsw{z{{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YVPLILIaltPQSNQRQR[RSRQRVTbs{|}{{
u_]KC?CCCCB?DPBC@C>BHGV@HNMG]iQHFOFDEFHGHBCHGHKGDBADAOPMSdstvustvz|z{{{||}|{~}}}~~||}}vt{mh|gnqfiedb\XSQPURsWe[OONLQSQUYSUQQTROV`klrv{{xytrnstsyx~~kLG??;;>@@??>jQKaEFHIEB?GLMGMQUIBE??<=<==?=?ACC@?<=B>JMFUnuuustvxz|z}||}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QRZ\Y^JJPQNKLQRQTUUWQQWVPX[b]agmmlokg`nrjmlqu{z}{xz||xwxdB@@B=:BCAADB\]O{NONNKLMOOQLKLWMHG@B<977599=;;;8989?;BH?\stuvuvxz|||}||}}~~|}}}}~}xuvz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIHPRQOMPQNQRTVXSRYTNYZ[WY]^^`e`]^qvk^`gkwooljonnlfbXGFFHBAGIEEFDMRPaWRWQPSSRU[OOQWPMIDF>:96587979:366795<B=essvwwyz{}}||{|}~~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMKTTSQQUOLRSTWXTTXRLWYZVXXVXY]WWXhsk]Vaskaa_^da_^YUPMONLIHJKIHFCQPSZWTTNQSYS\eUOSTQNKIHC?A9988978857578599Gnqtwxz{{}~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOUVXXYSUTLKTUUUUWPTUWTUR]n^RNY_[VY;DVXT[fJLPRROMMNNNLJFQPUYSTNJOOUST\VRUSROMKIHHF?>=:787659967675Wppswyz{|}~}~||}|~}}y}}|~~~}||}}~}|rvqxxrvuqqnppopuvtnjddjppqrpnfedc\^RTZVWUTWTRXXYYYRUOIGOPOOMRJOPPPNNOTLMIPOSTU2<XMIAQ=caQSQPNPQPNNMQNTRPRMILKORPRRSTQROLLKLLHCBA=::876;B4566:doquwx{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqniihpVVTUXUWURWVUZYXWUQSFFAFGGHFJDHJHGEHLHKHFLMPMG/E_R>3@>joaRRQ@FUQPQPQNQOPOLJLLOPNNPQQNPOJLMMKGEEDB;=<<9=G6677Dmptvy{{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknaePSTRSTOWVVYYVQQQO@>;=?@BAC@BEDA@GHGHEFHJMKEGCORC8ENS]fSQSAGUPOQQPMMNMKLKLNOOQMOOMHLLIKKLKGFFED<AA>;@E;<89Sprtx{z{}||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLOOMQSLTUTWWULLKH=987;?@><=A@B=>EHGCFFIGJJ@FAA@FHEJOHPRa\QPRNSOOPLLOMKMLMON[WKMQOGIHCIJLLJFFFD?BC><BF?B?Adpswzz{{|{zzw|wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B>;?B@@>ADIECGGIFIEBB?>=CBAGJEMObeQMNNWKLMKLMMMLKNNSdMJLRIIIEAHJLMNJGIFBAB@?EFEHDKnovyyy{{z|zwsxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLMIMPMPOHKE?B=999:?B?<@BBADEGKFCIIGGHCC?B??@A>DECKNQTLJIMTFIIJLJKLIJLMOPRPKGCKGCBJJLMOMIJIGCCCDIJMLIYrmwyxz{{y|vrpurtyyvxjqnjllnttmtu{stxronqovsnporpopstyjN`gsjt|ygosqiqheqHKCGHHGJKIJKDGB=>=:::;@B?=BBBCHFJLJDIIFGGCC;A@B>@@CDCIMPGIKGHKDHIKMHJLHIJKJM]RHHDMGADKKMMPNKMJKFGGJMNQNLbmivvw{x{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoijthdoFKDFEGEFFGEGBC@><=9:::@C@>BCDEIFJJLFIIGFFDB;BCC>@DDCEGLNHKNHDHEILNMHILGFGIILNKJHENIBFMLOMOMNNMKIHIORQRNRfffqosxu{z|lhjnekpmsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGJCEFEBCBE@DB>@>:;;=:=>CA>ACEGJFIHKHGGGFEC@=EEB>BDCCEGHIGMPJFFGKNOKFHJFEDEIJHKIFHPKDIMLPMONOONKJHMRUTROWd`amgproryzgehhcilgqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutwljuumrvqlnlerMHDEGCB@BD=BA>A=::=?;>>@B>@BDGKFIFIHFFGECBAAFFCBCBDEEGGHFLQLIOJJLLIGHEFEDCIIHKJGKRMBNOMPOOONOOKKKOUWVUTX_^\iaminhrsbefedihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwujsunutsqrjksMGGFHBB@DE<A@@C<89=>9?<?B@@@DFHEHFFGFEEDCECDIFCFEBEGEFGGEJMKHQMJKHHIEFHIFCIJIKMKOSNDQRPQRNOMNPMLMSWVWXVX]Z]d`hbjigk_eefcgggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxmouorsuqqiozMHGHHBBBFE<?BBD<7:>>:>:@B>??CEFDFDDGEDECDEFGJEEIGCGHFHGECFJJGMJLKHJLFIIKHEKKLLOORTOHSUSQSPQMNQNMPWZVZYVZ]ZXa```^hec`dfhgjihjfhnllnmqpiuuxrrpupppruvpusuvu{~}xvtwvvvxplupmstnprryNIHGIDACHE<@EBE=8:>>=<<AB<?>ABFCEBCIECEEFGGGIFGKHCHHGIGFDHKIGKHMKJKLHLKMKJNLONPRUVOKUWTQTQRLOQPOTYZY\ZY[^^^`c^\ackb`dghr
hgjfjmnponsrjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqvpuMIKHJEBEGE<@GCD@:<>@?>?CB<@>AAFCEDDIEFEGEHHFHGIKIFJHHKHFFLHHHJGLLLLLIMKMMMOLPPQUVWOKVVUSSRQLORRPV[[]^[\^__a`ad]d`ef`ehjcssfjhglprqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrwovJKLJLGBEDE<@FDDB;??A@@@CA?B?ACHBFEFHFIFFDIHGIHJLHHJJILJFJKHIJJGKKMMJJMLNNNOKOPRUXVMNTVTSRQPLNTSRW[^^_]]`_`aa_acebchbdijgvljigmosqpqppryvruutsmmssmqrotutrpswtuuwvuuteqskpqjrvowKMLLMGCCAD<?EEEC=AACBBCEABDAAEGCGHGGFJGCHIGGJFILHIJMKMLGKIHLKNQKRQMSMKNNOPPOTOWXX[NSQW\ZSVPNTUTTXZ_bb_da^`b^`eaacingbihhnxvlhimosrpqrrrvtsusssnksqmprotvrqquvuswywutucmtkopjqtowLNLLLGEA@D>>DEFC@CAEDDFBBEGCCIFCHJJIIKGDKJGHJIIKHJJNLNLILHJMKZfJd\KlSHON_nUks[qpbwcRPavuhucav`Xnqbdvinzf[lt`ljT_wvijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqrqyLNJKJFC?@B?=DEFDCDBEEEFBEFHCDJEEJLMKLLGGMJGIKHKKIKJNLMMLLILML[sbdp^lmUMNfs]geqlntgpi_aYnnbppbkjjgoqtetno\ougpMJryvkb`keemxmlvlnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIIGED?BB?>BFGBFCEDEEDCHHGDEKGGLMNKMMGJNHJKJILKJJKMMNNMMJMMM[roonpplkMPQlWNibtrpamov\YlQ\mmZqmkomxxtsip\_rkqjUuyxpc^kfbgppjioppsspqpqqrrqqrrtlmrmnnorutqtrtuutuuzvutenukpolsrryJKGHEEEBBB=@@FGBGDIEEDBFIHHEGKJGMMNKMNGLNILKIJMIJJJKOPONMKNML\hdu]lqWlNPQmUZk^klvaldtTecNmYl\tpkilxjwuhp]^rkhWbcw|oc`ggadityknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvIMGIDEECAB<B@BFDGFLHECCHKHHFJLLFNKLSRLGLMHNJHHNHJJIHNOMNLJNMJZsppoqqmlOQRnYqkgooqqomt^nXat_nnooqronusttj[^tcwxrjnzhaacfbbjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyxtukoumtonssvsHKHIBEEEA@>CDBGCHIMIFCFJLIGFJMLFOJKWRKGKJJNIHJLIKJIHJMMMLIKKKSkbZi^_icrrZ_Yjo_eeUk_c[aaQ`lh]j\ojid[pfdp\Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrutwrHHFIDEDFA@AEEDGBHJLHFDGKLIEFJOLIPIL[QJFHHKMIHJIKKIHIGKKLLFHKKLLLKIKLNT[\TPTLPONOOVQOOQNOQJINPQeriTYW[[\UYZ]X]\\cfaaebce__fkmhmtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusHCEGFFAEC?CHDFGCIKLHFDGKLHDGHPKLOKLWLIEEHIJHIKILJHFGGIGHIEFLIJKNLIO\W^P\[`^OXYS\\b^MYZMXaRJYaZS`d\aX[ddVVX\YZX\VY\]b^d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCDLMBCDBEIEGGFKJKHEEJJJGEHHPJMMJMSIHFAHFJIKLILJHFEIGDFGEEJHCJMJKT_Y`X`a[`UXYT^^Z_RY\P^\YN^\^S[^c^Z]`c`Y_b[`^[TXWY^]cbcacfiekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIECBCGGEHGHKIIIDFKKKFFIJNKNLHLNHHF>GGLIKKJKKIGEIDCDDBFJD@JLJO[cY_^a_RTRW_`\]Y^QY\MV_WKQY[PZ_aa^^ca`bbbcceZQYVU\Z]c`__cebhomnllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQKFCGEBEHIFGHHFFJGHFHKILDDKJNMLKHJJHJG?GFNJKKMKKKIGGCD@DAHIB?IJHO]aZ[d]_TQRX]\\\_ZKW\LR\YIN^QO\_acdccb\dcbdcfXQUTR[XZa_^^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMC@IFCEKJFFFHGGIFFFILJNEDKJLNJLIKJHIFBHHQMKKOMKKIHGED?ECHHAAGFET]Y^X_Y_[]UXXP]]QKJV^X^[]VY`RQ__aba`bb`cbaddbXOQQQ[S[]]]]^__dhgljnnp{{|~{
srw
|x\SKCAGFDGMRHCQJFHHHEFKJMPEGHJKNLLILKIIGDHKQOMMPLMKKHICDAEDHGBAGECWUE\T^SV_XNTUNZ[MJKT`a[_X^^a]OYb\``_bcb]abW__TPNOPXR][[\\^`bffelfoow|{{}
zo
~INFDEFGDIRbPCV^IGGHDFMJPPEIIJKNLKKMLJJGDJMQQNNOMNLNHKADACDFDCAEFBMHBKLPONLFMFGIJHGLLMOPILOPOSPLQSRUZYWYXXdWOSTPPNMOUT[YY[]\`adecgcklpsszy{z~{}{
}KIEEGFGDKM]LGGXMGHJHGMLQQILKKKNNUNOKKLGFKPSSNPONONOHKE`ED_LDfcEM[I^[rmOMUmYLCP`UlWgJ]WU^DLQULMTVQRTXWTXUT\UPfZhhdXSkSVVU[\[``aaab`fhfnlhrz|}~}|zr{z{
~z{LIEFFHEEKOSIKF`THJOJIOMRQKMLLORUROOJLNGHMQ[YOPPNOPOIJPQI|YYrsXPmHqnoaVPqqsPCksmqtpSo_[nX]V\XUkhU]VcZ`Y[`VUWjtuu__v_Xa\\f[_aaaa^`bgmpl`pwtx}~vxzlv~tx~|~|z~wwNIEHMNBDLLFJLFQVLKNIKRXWQNOOMQTNOQPKKNGMPS[ZTQROPPPJHZx]TxehYRTQvgtlpbnfjQrOMwmjrpsrqrpoo]fzuxqqzq~s}ku}bRg|essosr{|o}yor_``baZ``gknkblfgmw~~{xwtvzir~nt|~wx{~x|u|||ssNKF`]GAEMMHKKHJPNMMJNV^YULQSNYZMSSRNLOIQRTYWWPTPPPQKGfxlcxrmZKMUypumubnvPdeJfvqmwojfxxiWrRi{lijzz}lxzogoXvvjuup`rg}ilx|o^__ba[]bdgijdgbcdllppstsssyqrxblugry{ssuy~suzn|}yxrnNKStNCBEPPHJKJLQOOOMPZ`ZXKTWPa^RVQYSLOISTUXWWPUPONRJKrouuquqdibWnLqp^FhyWvTKhx}x`y{sna^mocRgqunmypwlvttqlm\t~zkmy|ktm|kpvux^__b^]_ddighee^abiiijknokqnmjpacfdowxompsy~nqpj{ztromLL[VHGEGRPILMKLQQQPPQW\YUMUYUfXRRY^TMNITTVWYWOSNNNQHRmHiwK`dvvVXlOnl{sajgvUKWkh}lmlx`[pz{^`zscroxqhe|ir|]TKl`vukiv|{m~xk|p]^^b[_bddgeeebZccikkrsrwgmihdg`alagsrlgmmr|kmhk{tmmkmOHJKHIIHQPLNOLKSSSOSRWRVTPW[VVTTTa`PNNKTSSQUVNNLMOPJHQNPULKKSTSRTPVUQQNQQXXQNPUTXXX[[URSW[WXWZOSUWWXR]YW]VTOYRWWWXY^[gr^[[Y\]_cZ_ccdfdccbZccfffmnmuffgc`f_]g`dlhfgkhpzhggkujhgilQIKLLMKJSQMQPOLVUTPTUXUYUQZ]VUTWUYXPOLMVTQNUSNOMLQPKJQRKQMKKORTRQQSSIHLNOQRQQQTVRXW\WSSPQUUVSZQOSRWVTYVTYUTRUTTTWXW]Z^a]\ZZ\\`c\]bcdfdedaY`acabhhincad^_c]Zd\bma^fefmsdihkkedcfhPJKLOOLMSPNSQQMXWUTUWWWZUS\`VWVYUXTQPKOWSPNUPNQNKSPMOUTNQNMNQSPTQSTUNKMOQTTRRQVWUYZ[YSURTWWWY[TOTUXUUZUWYURRXVUW[YZ_]UY^\^]\]`a^[bbcgfddbX_`b]`hefda^_]]^ZZ_Z_g`^]]bhkagfhfd`bcaPKMLPQLOTOOSQOQZYXWXZZXYV\jdVXYZWVTTPKOVTPOTPPPNMQQPRXTQQOMOSVNWRTUUONMQSUUTTRTXVZ]\ZVWQRWXV[[WQTVVVVYTXWTSRXVUZ]Y]_^V^]^`\\`___ZbbdhgddaYb`b^^fcc`b]\\\\YZ[X[a[^]\_b__bdebd__`\PMNNRQMRROSTQPU\ZZW[[\YZ[dqmhd_[YVVXQLMVSMNROQROLPSRUZUSPPLPWVRWSSSXMOPRTXUUUSUYX[^][[VROUVV[[WQTWVWXVTXZTSRZWV\^Z^_`Ua\aa]`b`]`]cacghdf`Yc`a__ed_`c[Z\[\YZXYW\Y\[`^_[^^a`_b\Y`ZQNONVQPTROUTSPW\]\X^\_W\^jqwyc\[VVXQNOVSNQQPRTRKQTTYZWUORNSXWTSTRRZOQSSV[VVWTVZX]^\\^VSNTUV\\VRTVVXYSTY\TSS]XZ]^\```Vb[cb^ac_]bab_dfidf^[d`a`ace_b_YZ^[\[YXYWWZZZa\][]\\Z]`W[[ZPOOOYPUURQWRTP[]^^[`\`U\]ijr}slg\UXWQORZSRQTRTUTKQWV[YZSOSRVVVTOVRSZRTUTX]WXXSX\X^]YZ]TUNVWW_[XQTUYYYUWY[TSV^Y]]`]bb^Y`[eb_dd_^cca]efidf]^da`abcd_b^XZ_[\[XXXXW[Z\`\[[\[XZ[^V^Y]POORZPZTUVVTTT^^`_^b\`U]^bkyum}lZUYUQQS\TUTUTVYWLRZW][\ROUSXVVTPXRSWSVUU[]X[YUZ^X_^Y\YRWRYXY_ZZSTVZYZVXY\VTZ^\^`a_dc\^]]eabfd^_dc`\gdhedb_da_a`bb_`^WX^Z\\ZYYWV]Z]^ZY[\[WY\]VXW]SOPWYQ]UVYWWUX_`aa`c]_T]^beev{hXYYSVSV\WWWVVW]XPU]Z^]]TRXSWVTSTXRSVTXXX]^X][V]_X__X]VQYTYZZaY\UVX[Z[XYYZXV]^_^cbadd\b\`fadfd_`dbb[fchecfaf__aaaa`_^VU]Y[\[Y[YY][[[XXY[YZZ]_]TY]UNTZVS\TVWYWV\`abcac^_V[`da_zuohY\ZUWUW[ZY\YXY`WPV^\`a\TUXPUWUSWVRSUVZZ\_^Z_\V__Z]^Y^VSYWYZ]bZ^VW[\[\[[YZYY^_``dbceebdZbfcgfe^ab`c^cciddg_g^bbcaa`^_XTZZZ[[X[XX\[Z[WWYXW\[\`]V]]SPVZVVZUXUXWX]_badad`^YYadb`kfh^\][VWXY\\\_[Y[bVTX^]ac\RVXQWVWVWVSVTX\\^``]a\Wa^[^\[^XVXX[[_`\_XY]\]]^\Z\X[_a^`dcdfffbYceehgd^c``ec]fidei_g^cbcaa`__[XY[YZZXYXW[[Z[WXZTY]\Z`\U^bNRWYVWZX[\XWY^`baeada]^Yacb_a`a^\\\WW[[]]__\Z]cXZX]`cd_RXYPXWXYYWVXV]]^`a`_b^Ya]]^Y]^YXVW[\`_]_ZZ^]^^a\[[Z\`a^bdcefefbZdfgigc_c^afdZiibfice^bbca``_]]ZW[YYXXZXWZ[ZYWXVU[]]]``bbxLWW\YW\[\]ZW\]_`bdbba]`Xbcb`cab][\[XW[\_]`_][`d\\XZcec`R\YOXXZ[ZYXZY`]`bb`ac_\b]_][^^YYUX]^_`__\Z^^`bc\\X[^`bacedgeefd\efhifcbb\cg`\iibhife`baca_`_]][Y\YXWXYXW\[ZWWXPXZ]acffrkJYW]ZZ_\[^\X][^_acbaa]b[bdb`ccb\[[ZWXiq`\`_]\ac_^YYcedaS_ZQYX\]\[Z[[c`cbc`bda`c^`\^^_ZXV[_^]aa_][`abeb_]T\``cddfdgfefe^efhhgdd`[fg^ahhchhfc`b`cb___]]\Z[YXXXVZV\ZZVVUMXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{{||||{|{zzzzz{{|||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvvvvvvwwvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{|}}|||}|zzzzz{{||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||upooooppz~}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½F(****"ÛÒÒÒÒÖº}~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}upnoooooz~y1333332j{éääääèÊ;ïååååéÇ}~}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vuuuuuuuvwwwwwwxyyyyyzxopppppprrrrrrrwzyyzzz~||||||}}}}}}}}vssssss}
|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvvvvywvvz{x{xwvx{xzyy}zyyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{{{{{zzz|}}}}}}{zzzzzz{||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwwy||{}z|{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwwwy|{~y|zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z{xwww|yy|z|{wxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzz{{|{}{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyy|{zzy{yxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyxyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{|||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|||||||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqpponnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrpppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqppqqrrqqqpppooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpurppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqzqovoppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqqssxpqqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrrqp{v prrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrst{¤qttsssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz~|~~|vvwwvuxzxxxxwwwwx§¦w|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{{{|}~©¥z{{{yxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}}|||«¢}}||}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~¯¨§§~~~~~~
~~}~~~}}}~~~~~~
¬¦¥¯¦~~~~~~
|||{|}||~~~~~~~~~~~©¢ª£~|}||}}~¡¤
}||~~
ª
}}}
®
¥ª¬©£¥¤¢
~~¦¨¡
}}~~~
~~~~
~~}|}
~}}}}{
~~}~
¡
}~
~~}
~}~~
~}~
~
~~
~{z
~}}}}~~|{|
~}~~~~~~~}~}}}
~}}~~~~}|}}|y|
}~}~~}}}}{zz~~
~~~~~}}}~~}}}}~}|zzz~~}~~}}~
|}}~}}~}~}~}}~~}}}|{{{zzzz~~~~}~~~~}~~}|~~~~~~
~|~}~~~}~~~}}}}{{|zzyyy{~~~~|~~~~}|~~~~~~~~~~}||}
~}}}~~~~}}}}}|||{zyyyy}~~~~~~~~~}~~}{|~~
~~}}}~~}}}}}}}}}{zyyyyy~~||~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
~}}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
~}|||}}||}}}}}}}}}}||{z|xyz{|~|~~{||}
~
~~
~}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~||}
~{z|
~~}~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}||}~}~~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{}|||{|||zzy{|z}
~~~
~~~
~~~|~~}}}}~{|}}~
{z{ywz}
~~~}}}||}~}||}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}}~}~~~}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~}~~}|~}~}~|{|||{{z}~~|}|}||~~|{{}~}~~}{{{}|z{{{~~}||~~~y}~v{vx}|||{}}~}}~~~}~~~~|~~}}}{{}}|z||~||}{||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~}||}}|}}}}{|~~~}~|||||}|~~{|{||||}|}|~|}|{{{|y{|{{}z}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}}}}}|}}}|}~|}|}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||}}|}|}}}~}}~~|{{{||}|{z{{yzyyy{~
~~{zy{}}x|zr}{{}||~~}}
}~~|~~}|}}~}||~|}}|}}~~}~}}}{|}~||{|}zzyyyy{{~~
~~~z{y}}zzz}q~z{}}}}}zx
~}~~}~}~~~}~}}
}~}~~}}}|~~~}}}}|}||{|}{{{zzz{{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv}
~~~~~}~~~}~~|}}|~~~~}|}}{}}}|||||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||z|{|}
~~~~~~~~~z{z}}uqz|zqz~}yxtt
~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}}~~~~~}}|}}~~~~~~~}}~~
~~~}{z{z|{z
~~}~~~~}~}}z{|
{{syz|pwuvwyutz
}}}~}~~}~|}}~~|{{z|{|~~}~~}}}~}}{{zx|vyy{qtxwvxury
~|}}~}~~}|~~~~}}z{{|||~|}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{{||||}}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~~|~~~
~~~~
}}}|{||yz{z~y{yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst}~}~}~~|~}~~}~}~~~~~~}||||zyvyyzyvyv~|{{{~}{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}}}||~~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{{{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~{~}~~~}}}~~~~~}}~~~|~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~}|~~~~}}|~~~~}|~~|}~}~~~
~}|{{||yw|ywxwwx{{{{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqsoxwq{
~~}|~}}~~}~|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{||{zzzzzzxsvupprowvr{
}}~}~~~~|~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}{||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxyxy{||}||{||||}}}||}|~}~~~}|z||{|}{yzzzyytuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|z|}{|}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z|||yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}{||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|z}|{}xwvyyz|}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~~}}}|}z}{yvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{~
~||}|x|yzyz|}|{||}}}||~{{{zzzupxwyvu|uv|
~
{~~}y|zzz}||}z||}}|z{~~~}}|}}|vrvxxvtvu}
}
~
{||}zz{}}||z|~}|}}~~~~~|}}~~}|{xvvw
~
}}||{||}}~~~}~|||}}~~~}}~~~}}}~}}~~|}
~
}}}||||~}}{|}}}}}~~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uy~
}y|~{
}~}~}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqspurstv{}uvy
hzrss|r}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyyrpvxqvtturstvinrotvnulwm{snym}rsvsvmnwlpylu}|~}}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}~{~|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyrioyxpkyszozwvvp~~~z~}|}~}}~~~~~
xyrz{pp
x
xyks~y{krz|mzyyt}vnoot|uwqy}}m~uo
zrr{|upozls|nv~~}}z}{|}}~}~~}~}~|}~~
}w
}~{|{~{||}~}|~~}~~~~~~~}}}~|{|~||
}{{|~{||}~||~}}~~}}|}~~~~~||}~{|||{{~
~|{}~{|{~~}||~}~~}~}}~~|}||~~|}|||}|||~z{{|~
{{~}|||~}|||}}|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}~}|||~}|}}|~{||{||}}{{{}|{~}{|}}|}}~}|zz{{||
zz
~|~~||}}|}}|}{{{z{|||{{{~{{}{z{~||||}~}{z|z||
|
~~~}||}}{}}|~zyzy{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yyzy{}}zz{{}|}||z{}||}|~~{{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yzz{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|z{{{|}}}|~}||}~|{
~}}{
~|}}}~~~~~}}{|{zyzzyz{|yzz{{{|z{{{|}}}}}}||}}|
~|~~
}~~~~{||}}~}~~}}~{~{{zy{zyzz{yzzz{{|z{|||~~}|}||}~
~~}|}~~
~}}~~|~~|~||~~|~}}|||{{zzzzy{zzzyzzz{|y{}{{~}~}}}
~}~~~~}}~~~~~
~~|}~}|~}{~|}}}~}|||}{{zyzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<D:;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>:=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<:<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËÊÊÊËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÔÔÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÒÓÔÔÔÔÔÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9>CE?<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÐÑÐÐÐÐÐÑÑÑÑÑÑÑÍÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ÕÕÕÔÔÔÔÕÕÕÕÕÕÕÖ××××××××ÖÖÖÖÖÖÓÒÓÓÓÓÓÔÔÔÔÔÔÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILO@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌͲâÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¸ºÑÓÓÓÓÓÓÓÓÓÔÔÔÕÉ»½½½½½½½½½½½¼¿ÒÒÒÒÒÒÒÓÓÓÒÓÓÓÜãâââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVN<::77>C>8>:??A=>@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÎnPSSSSSTTTTTSL óëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¢§ÏÓÒÒÒÒÒÒÒÒÒÒÒÔ¿¨ªªªªªªªªªªª¨°ÒÒÒÒÒÒÒÒÒÒÒÒÒÑàìëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;?C>6:7>?;=B?9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÎqTXWWWXXXXXXWP¡ñééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤£¨ÏÓÒÒÒÒÒÒÒÒÒÒÒÔÁ©«««««««««««ª±ÑÒÒÒÒÒÒÒÒÒÒÒÒÑßëêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<;<<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÎx^a````aaaa``Z¤îççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©©¬ÏÓÒÒÒÒÒÒÒÓÓÓÓÕ¯¯¯¯¯¯¯¯¯¯¯®¶ÒÒÒÒÒÒÒÒÒÒÒÒÒÒßéééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÇÅÅÅÅÅÅÅÅÅÅÅÅÄËÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÎÏÎÏÏÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÒÔÕÕÕÕÕÕÕÕÔÓÓÓÔÓÒÒÒÒÒÒÒÒÒÒÒÓÓÒÕÔÔÕÕÕÕÕÕÖÕÖÖÖØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<8@B<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÏÏÏÏÏÏÏÏÏÏÏÓÏÏÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÓÔÐÎÑÔÔÓÎÎÓÓÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÖÕÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖ×××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎЦÅÔÏÒ¤¡ÐÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@=:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÒª¬Ã¼¸´³¡©ÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D>A98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÐÉ
¦¨ÅÈÐÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<=:6?B@C:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏѤ°½£¬Öº¢°²ÓÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8FA?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÏÐÕ¹«¥²¯³ªÕÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÏÐÑ ¥¤§¤ÕÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ×××××××××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:<?>=<9@<<::9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÐÕ§¤ Õ¤´« ©
¤ÕÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÒÀ¢È×ÊÙÁ¼¦¯ÖÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:969;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÓÔ¤ ¹Ã¡¨»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÈƦ½¨«¢Ã «¤ÑÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKLA>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ Ôʪ«¬Ø¼ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFGKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÔ¯°³ÐÖÀ¿ÖÒÕÅÄÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÔÖÖÖÒÒÕÕÓÓÓÔÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEK>>786967899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EILAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDJ;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;877797799=?A?<:9@?<>B?:8776=??@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98868975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@AB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEEC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<<DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsoupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸········¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¥¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢¢¢¡ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¥¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¦¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ {jfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;<;=<:;<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤££¡¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::88:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢£££££¤¢¡ ¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?;:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¡¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>98;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ¡ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9<<>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:=>:?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¡¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡ ¦
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VQQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{~
}§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s}{z}}¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
z|z
i
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~_
¨®²¯¯µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWLO_^\NUUbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
¢¡¬{Y ¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJCPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©¨§¡¥¨¨«ª©¯¡ ¬¡vY ¡¤¥§¤©«¯¬¥£¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdWOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®¯ªª«¤¡¢¤©§¦©¨¢¦¤
§£t[s ¡¢©§ ¢¢®¬«ª§¯¨¥¤©©ª©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPORd\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨§¥§©§©¨£§¦¤¦¢¡¡¡¡¥¡¢rcf¢¢ ¡¡¢¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]\PUOWO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§¬©¤¢ ¢¦¡¦®¦¦¥~qh_¢¡ ¡ £¤¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvxb_\UYQUW[c^s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;>=@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯««¬¨¨«°©¨ª¨¡ §©°²¯¬£¢¦¡®|~¥oj\¤¥¢ ¥¢¢¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[Z`_Z\V\hdncnjib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£¢ª©§®·¶´´¶³¯¬«®«¹w}²¦liX~¥¢£¢¨¥¡£¡¤¢§ £ ¡¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvyjb[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>AE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ª²¸¼¼½»º¿´¯±³µ´¸zrq°¯gfT¥¤ª¦¦¡¤£¤«¦¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__amhukqhiiaYSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°±´µµ¼¼¾¼¼¾Æº¸·º½´®wne¬·k`R¥¥¤¤§¨¤®¤««µµ¯³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YTai`fsositdidb[LK>:8898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÃÆÂù½¿ÀÀ½¿Ä½¼º½¾¶©~ui¢¶u`Vµ®®ªª§¬§§¤¯§ª´¼±´µ¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`a^^kcbnwuvnl[bQV\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAA;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅÆ»ÄÀÅÆÀ¹¯½¼À¾¾·¦~}£mjª¼¬¯¯´©ª¦ª£¤§±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhakmfnuqruqg^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÅ¿ÃÂÆÅÀ±¾º¿ÃÉ°{y¡¸°°®¬¤°´§ª©¨ª¬©¦¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tklndomiqxnyiia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿¼»¾Ä¾ÅÈÆÆÄÄĹ´À·´»ÅËxfv|l|¦¶ª¢·°¦°»µ¬®¥¤£¨¤ ¥ª´±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{vnkiguZfrxsyff]d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÉÅ¿ÃÀËÍÏÊÇÄÃÄÂľ¸½Ê½naSb}~iUgp³ª¦´³¬²Àµ³¬©£¡©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuuefijh]konxwcb``^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÎÏÏÌÃÇÆÈÉÈÇÊÎÊÉÇÈÇ¿Æˤy^NHTwu^DYby§·À¾¾¹¬¹Áº¼¬¦ª»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqocagvhjitmxl]d[V`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÌÐÎÇÌÉÂÂÇÁÌÕ×ÍËÊÎÅɼkPE?NphX=N\lÄÌÆÆ°ºÄ»¾´°°°Á¾¾ÁÆ¿¾¸¶Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlieuntb]bTWUSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÃÄ¿¿¾ÄËÈÊËɼ¼ÈÆÉÕÛÕÍÉÉÅɧvZLWEJh]V=IVc{¼ÐÆ°¹Â»º½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrpfefcjdbjmno^Y\VVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ãº¸¹¼¾ÁÇÁÆ»¹ÈÉÃËÙÓÈÃÂÁÆ¢iLbjHaVXAMU^i¯Ö½v
¼º»»¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbacddjcgc[ZZ\YQOE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶¸´´µ¿»½¿¹¾ºº´À¸µ·²®º»·À·¼ÊÑÁ½ÏÓ¼´¼½½®lF¾J`WZDT_[_¢Æ£{h÷»¾¹µ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qc`bchjggifi]VVTYOSLF8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´µ±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ¹¿»ÂÖº¿ÂÙ¹¡¥¯´¸wI«LhecBUs`Wle¨Æ¿¼Å¸¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zxqmeefoielhXXNKKKRILHC9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹º»¿¼ÐÄs©Ë¾ÜÍ¢°Mq~pWxqNVeUxvkcnÁÆžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksfbm`\TIKJDJBCG?:;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼¼À·ª¤®°¸»²½¾»Ä¶µ¸µ·À¾Ä¼ÂÄØ«p¼ÈÔÞ²
}UcfVr~nUtcZcba\
ÒÇÇÄǽµµ¶Á½»»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢rflintnxcgb\cQKTHEECHC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£°¹½¼²¼¾¼Å¸±¸¹½ÇÊÊÃÇÉÒlqÑÐÛÔv|t^b]N¥T]]\YYXaªÒÉÇÅÆÀ¹½¼Ä¿¿¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_c^`aNIM?E@?DC;;::;:8;<:9<>::>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´»ÆÓú¾¼Ä¾·¼À¿ÉÐÇÈÊÊÀno£ËËÏà¸sjkg``WU¨¡^XYVQURyÆËÉÃÃÃùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw{_pc[^__TI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼¶»¹ªÛþ¶¾À¾¾·¢¦¯³ÂÀ£trtÄÇÊÖ×WUQOPE[ygZTONOVÉËÆÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsxsgp][^]YREDCMIAE=H;;59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯··²µ³·¹¼»¶»»Æµl«Í¼µ¹À¼§zlgnjrmtw½¿ÆÁÕ¨UB@>B9Z}qi[SLLNv·ÀÁ¾¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸¸¸½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y}vlu{pni[__ZSPAFHGK@DCH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹Àαv²¼µ¶Á¡
iZ__LR[[mnr}¸·Â¸½»sD5594Rrjjspd_WLK\ Àº¹·¶Áµ¿ºµ®¯°½À¹ÏÊÉñ°µ´´½º¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsuvwnq`_f][TJ=??FF=FCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Âʦw¡¯´hcfUY`JJMPTjs£¯·¾¹³¶h7053F]U^db`b]OLv´¿¸²®²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³»·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtwrl_cb[^OHB?=HCFMC@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·¿Æ§{v¡^SBYTHblWPFIcª¯¶ºµ´²P311APFQWXX``P\¹º´¥¬³°¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wo{ourmc]gX\]RNNA>JBAJI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸¸¿³ykNJ@hXBOwlLBW~°´³µ²´¯®wL00?E;EVWQX]Q|°²±¬¬¤§§£¦©®¹¬««¥¨¤«®®§¯¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmtil][jT]\PMHDFLBFNF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³¸µyVFARWJJVva?U§¸³´²°±°¹¤{@->Z{§¢sUZ«¬«£§ ¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndUacW\QNLH@HQDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²»©hM@VznOIILfWEU¯»±¬³¯®¬µ· fg©§ w§©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨««¦££¦¢ ¥¢¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vzcwln\QhTPNGPMLBOQ@>;>49:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬¨½Áª¦½dEU¢PYIKaJXcff¬µª²´®ªª®°«°§ £¤¨¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ ¤ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uv}mk{dhUQcMJHGORMJNG<E@<2@859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡© ¬ÆÀÊNBwnOoKNbfur`_ft°¯®³µª¦«ª¢¢¡¤¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¤¡¯¨®²«¥ªª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}wx|dyy`bRU`HIJKSTIRPL9?A67<65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¥ÆÆWRKf¢^i~rvYRkc]ifej´°°¸¬¦ ¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§ £±®²°´ª²®¢¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvshle[SZZMQJOOULSLA7>C78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢ª£yUlruumburXY`_di]`Xb¬®¬¯§¡¡£¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¾°¬±®©ª´±°¨«¨²µ·³¸²´¤ ¥¬¡¡¢ ¤¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xujwu]lZR`HRUHFUVJBLG=KH8F<77;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¡ £~on`dWM[RXKKQWQIROC¬ª©¤¦ ¨¥±ª§®£«¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼·½³³µ¢¬¢©¨²©«¨§¨ª§ § §§¥¤ª¢¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vrmivmhm\X\CWNJGMGCFM<>L>4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·¤°¦£aW_f`VMOE<>?CC>=BQw¨©ª¥¢£
«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶º»ÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸³»ÆĽü·³©³ª³µ¯³®ª¯£«§¶±¢°¦¡£¯±°¤¥¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¥¦¢¤{trkktrqhV\QFTHDJPI?EA4FH95;>6;<>=<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ {`^e_PEE:D@F<>96N~ª³§££¡ ¥«¥xm £¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÇÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿À¾ÇÆ·ÄÊÉÃÁƾº´ººµ»·°µ²ªº²®»·¿»º«¸«ª¸º´¼®®¹£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢}zqkchoxkeZ[FKLEDSMDBE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡{ri`UND>J\}pbA=\®¬ wrqmp¦®´¹Å»ÍÇË¿ÂÌÎÍÌÇÉÑÌÍÌÇÉÅÅÌÑÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÍÓÐÓÓÌÊÂÅÆÆÊÈοÈÑÌÇÆÇÅÁ¼ÃÁ¿¿¿¶¾³®¿ÀÃÃÇÄÇÄ®¿¸²¸¼Ãº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLDEPIDC@5558:B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £hd[SHD@?L¡© ²£yqroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÏÊÓ×Ò×ÒÕÖÓÔÈÌÆÌÍÉÒÍÎÓÍÅÈÊÊÁÆËÇÉÈƿó³ÈÄËËËÏÇÊ¿¾¿½ÁÇÄÌÌÈÉÀÿ¯³¨¢ª£¦©¬¤¥¦
zruvgcgvidVWQDMF@IQB=B<:22A<E<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<A?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡bSKIDB?DV³Ò½²°¦ ¤¡}wpkebhqoq{
upnqtp
³Ã¾ÅÑÐ×ÖÖÒÖÍÔÖ×ÔÓÑÓÔÔÓÏÑÃÐÓÖØÕÖÒËÉÎÑËÆÍÒÊÒÕÖÙÖ×Ó×ØÎÒÊÏÑÌÏÐÍÓпÈÇÊÄÌÌÌÎÏÅÆǶ¿Ê¿ÒÍÌÐÆÉÈÀÄÃÈÎÍÐÑÏÍÊÈ͸·»¨¥«§£ª¥©¨¨|xsvpc`drb]R\IJGAEIJ>;A8=4586;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¤¥ ¢ YI@AD@GQy²®§ wic`__`_^__]blutppolrquÄÈÆÔÖ×××ÓÖÐÕÔÚÔÔÎÏÕÔÔÑÑÌÑÍÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐ××ØÑ×ÒØÙÔÖÌÏÏÊÍÒËÎÐÁÆÃÈÆÎÍÑÑÒÉÌÍÀÊÌÆÓÏÌÎÈÅÊÇÇÈÌÊÔÔÑÕÏÒÌÓ¹ű¥¨µ®§¨¬¥²¨°³¬¬
|zqstmacim_VP_JJCFCRM?<>54:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¦®·¨«·×ÔÕÙÙÑÎп¼Ìɶ¾®¦ª¨¡£«eC8=>EXª¨}pecb__a__a`_``_`fnppnkorwwÌÁÒÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÒÊÏÌÓÖÒÑÖÍÏÕÕÑÅÑÔÊÐÔÕÖÎÒÐØØ××ËÈÎÄÉÏÍÊÌÀÊÀÈÊÍÎÐËÐÎÎÌÎÏÈËÐÐËÎÊÂÉÇÉÌËÌÒÓÍÓÑÑÐÐʽȹ°®»¸µª¶°¨¸³¾»±
zvopokadnpaW\ZIFFDMXE;@=33<=87855;>@=9<<8;>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÀ°©¬©¤±zJHC=X¡k^^^adb``aa``a^__^\bmroostvvy¤¿ÌÕÑÖÔÓØÖÎÎÔËÎÎÅÎÊÒÒÏÇÎÍÍÔËÎÓÍË×ÖÐÌÑÔËÌÐÒÓÊÎÑÔÒÕÕÊÀÊÂÅÌÂÈÉÃÌÃÅÈÊÊÏÊÍÌÐÎÓÌÆÈÏÌÈÇËÅÆÁÆÊÌÍÐÑÆÐÎÍÍÌÏÅÇÁ¸¹½Ãýù²²¾±»Ãõª¥¡yqrkmg``phYXhVLFLIPPB;C>;67:8::57==A<:<<9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±Ç¸ËÕÕÙÚÛØÌÌÏÈÖÕĵ¯´¨®xosu|eabb`]^acb`__`aa`_][]grrqrspmry¥ÇÓÏËÐÏÓÔÊÅÉÉÆÆ¿ÃÆÏÎÇÅÇÍÊÒÈËÎÎÆÑÒÐÍÌÔÊÇËÎÏÈÇÏÒËÑÏƺĿÆɽÂÇÉÎÅÂÈÀÇÍÈÄÌÊÌÏÈÄÄÐÈÆÂÆÈÄ¿ÁÇÌÌÌÏÂÊËÈÇËÐÄÅÇ»ÇÃÈÉÂÏÁ½¼¿°ÁÉƹ½ª±²§¥¢£wotdk`^fpa[W`GHHGIMTG?J=64355==48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼ºÍÍÆÐÕÕÙÚÛØÐÉÏÏÑÓȶ»»£¶}h¥«
}~s`[^^^`^`cdc_\]^_``_[Z\`krrooklop}¹ÑÈÉÊÏËÍĺÀû»ºº¾ÉÆÂÃÀÃÈËÉÈÊÈÁÅÌÆÈËÍÉÄÂÊÉÁÂÌÐÅËÈ¿¹Á»ÆȾ¿ÆÏËÿûÉÇÈ»ÈÆÅÊÀ½ÂËÆÅľƽ¼ÀÃÅÌÅżÀÊÂÅÇÒÅÀÉ¿ÊÉÆÈÆÐÃÃÆïÄËÇÃÊ·¿¼º´©¬¤¥¬£¡¥£ {wrtfiZanlZ\XRDLFBGDLDFS@54334?=3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÃ¾±¯µl_z~¤z
vxurp_[[]``bcdded`[\]]_^`[YZ\borokilposǽÉÅÌÀÆ°¶º²²³²±Â¼¼¼º¸ÁÁÁž½¹½¿¹ÄÊÅƽÆÀ¸»ÄÉ¿ÁÉ»·»»Æÿ¼ÁÍÃƾ¾µÁ½Ãº½Æ»Ãº³¼ÅÄ·¿µ¶¾¿»ÌüµºÈº¿¾ËÄÁÆÂÅÉÆÉÆÐÆÂÌDzÇÉÃÎÌÁÅÃÀ½³·°²§¨¨¹°¥°ª¬zvwjdg`hocW^YJFJFHJAEBEI@9:648854;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÅÂÄÈÎÒÊÊÊÇÍÍÎÑÈÐÆÕÔÖ×ÍÊÏÅÉÅÇÁ¹Å½«¥_eux~{ttc\\]^``bcaadeb]\[\^\^]Z[\^hsqmggnpry½ÌÀúÀ¸®°±§ª¬§¸´·´³³´»µ¾²·°µ¯²¼Â¼ÁļÀ»µ²º¾À¸Ç¹´»¶Á¼¸½ÆÁûµ¯²¶º¿´Ä·»µ«¸½½À½±º¶°¶º³Å¼¶®»¿µ·´Å¼¾ÃÅÀÃÅÆÈËÅÀÆÆ»ÇËÀÏÉÇÃÆÂ÷ý½¶¹¾Ç¿¬µºµ·¶ytxggebkn^V^`FKHHJFBDAEE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐÌÍÈÊÈÊÉÊÄÐÍÒÏÍÅÇÁÅÀ¿º·É¶ª°[iq
zx~ww|sh]]]]_`_`da^cec__\[^\]^Z[[]_lpnhfknnr|¤Ç¿¹¸µ°«§¢©§«³ª¬©´®·±³©®¦¬³¼º¶Ã¹ºº±«µ¹»´Âº°À±¾¼»¶»Ç¹Â¶ª¨°²À¶¸½°±¨²³µ»¼«®µ¦®¶¯»²°ª¹°»®»¸»ÀÀ¾¹Â¿ÇÃÅÀ¼ÆÂÈʸÅÇÅ¿ÇÄúÄÆ»ÆÉÌ˳¹Â½»³svvkiablhYXW[ALKMIEAC?FA:9:995854::9;<=;:;>8;@<=9:79>9;<:8;;:>=9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÅÐÇÍÁÃÆ¿ÄÄÃÃÊÂÉÊ¿À¼Âº³´µÃ®©°[j{x}
z{wn^]\\]_`__dcadcb`_]Z[ZZ]ZZZZ\enohfgiknr¹°µ®¥¤§§ ¤¡¥¬®¤¨¢«ª«°£¦ªµ¶±½¹¯·¯¨®¸´´¼¸´¼¯¸¹µ²¼Á²À®¥©£«±²³¨½ª«¨«´³¦¨¡¤¯©²¦§¨®¦¨·¬±²·ºº¼±¼½¾¾Ä¿µÂÁÇÈ·¿ÀÅ·Äÿ»¿Ä¾ÄÈÌÊ¿¿ÄÀÀ©strji]aocWVXPHYRSKFFE>>@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?B;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃȺºËÁʾ»É¶½Ã¾ºÊ·ÁÃÁ´¶¼¶±¯µ»¨«em{}~xt~|swe_]\\^_`^_ccab`a_]]\ZXY[[YXZ\_fkfdgehjor
©¥«¥¡¥¥¡£ª££ ¥¦§¦ ¤¦¬²°¶·§°¬¨ª´«´º±¶¶®¶¹²¯ºº±¶¥ ¤¦±§«¨¹ª¤§§¨§² §¦¤¦¬§¤ ¡±¬²´³´°µ¼¶»ÁÀ²º¾ÃÁ²¹¹Ã³Á½Àµ¸¼½¾¼ÂÇÄÃÄ¿ÀÄ xplbf_ko`UY^HNgOTHEKF<=?=:;;8255369:8;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:7776788666;::;9:;<859<:>>@;ȵµ½¸ºÀº½¶ ¡¦º¶«³³»³ÄÏÉËÂƸ¶ÇÀÌ¿¸É·»Å¸³Ä¸³¿À¬µ¼²¬¥¯³¡£iq
|yusomjjipi^`]\\\^__acb````]\[\\XYXXXVX[^_dcbegggjmo¨¡£¡£§ ¤¥¢§£ «°±¶£©ªª¬¬¤´¹·°¬³µ®³µ®°ª£¢²¤¦©¸¢¦¦ ¨¬« ¥£¯©«§ª¬¬±²¸¯¸¹»°¶¼¼º«³³¹³¾´¶²±¶µ¿¶¾À½Ã»º½zsl_e^ddXTW]IW\KPGIJGA<??@;?<04535:;9:899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÏÈÈÀÆ»»ÃÃϾºÇ¸¸¿·²Â´±»¼«¹º±¢©«§m~
xrmomkb^aff]]^]]]\]_`abccba_\[[ZZYXXWWWXXXZ^bddeffhikq§¢¢¢¨¥§¢¥ ¡¯®®®² ¦¢®«§¢µ±²²¬¨¯³§º³¦¶ ¢£¡£¢ªµª¢£¦¥¦£ ¢«§¤¤¦«³´ªµ°³«²¹´¯ª¯²²³¸³®©¬®²¸°»¶º½À¸³±
yuf^e^[YVSZUK[QKIEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ·½¿¶¾¼¿³¥£¥±Âµ¶½´¸ÂÌÈƿŶÁÀÆηÀĽ³¹¹³¿¶±¹»¬²´¯¤©xxoqtqhechdc\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWVWadecdeddhjv¡ ¡ ¡©¤©«§¯°«£¤¸ª¡ ®¨¶ª§§±¤¸°¤· ¢ª¦¡¬¸¯¢¡¤¢ ¡ª©¤¢£ªª°®¨´«ª§³°¥«®³±°°®¯§¨¨²±´°¼´º¸®£yud^aVYXSRTKM^LOKGGLLE=A><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾¸¼®§¨£ª»À½À¹®´¸ÁÌÇÅÂýŸÈ˲ÁÂÁ¼»µ»¼µ¹¹°¯°ª¡¨|wqilrtphhedfb\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[bccbcbcdfi §¦¤¦§ ¦ ª¯¦¢¤·¨¡¡¢¨´¢¥¨¥°¥±®¬´¡©¡¢±±¢£¡§§¡¢¤¥¥«¤¥°§¥£««¦©®¯®«¨ªª³¦¦¬¯´±¯¼µ±¯¯ zwrea\Z]XNLRHRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847763321./2556;:8;7876<;:;;A8x»»±µ½°»±¸¬¥§·»¼Áź±¹µÄÉÉÀÃÆÅǶÅIJ¿ū··½¶½ººµ²«¨£t~vncafihfgifjm`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWTTVUSURU``_`a_aabej¤ ¥¢¦¥¥£¤£ª«¥¥±ª ¡¥«¨¢¬©©®¢¢¢£«©° ¢¡£¤¡¢ ¢¤¦£«¥¢¤ª£«®¥®²©¦¥¦¦´¦©¨³µ´¹º¯ª¬rqo`[WVVRGQOHZ[ORITKSLEFID8;;=<8667:9;:976977:;:=<<6;<8>598:88659:;<97?<9578452121..1426:8698598989;9@9{µ´´»²°«²¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÊÌȵɼ±¾ÃȬ±¸Áµ»À»´´ª¬¦r{tiijlgjkmkjme]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\]^^___bdm£¡¨©«¨¬§©¦¤¥¯¥¥¯ª ¯«³ ¥¦£¤¡©ª ¡ ¢ ££ £¡¢¨£¢¨« «°¤·¥£¤¢ª¨«¯³·³¾µ³«¯
tsh[YYSUREXLQ[XMTNPLPQINIB=??A?=75799<<987:79:;<=>;7;;:=67:;8976989:6:=99577570141-+/434988::8::748=8?9~³§³¶®¨¨¯®©¨¬·¶¬¼Ê»¶¿¬ËÆŸÁÎÏȳĺ·»ÂÈ°¸¿·¼½»³µ¥© ztvwnmhmmmpggigd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNPQYZZZ]]\^_`d~¢ ¬ª¦¯¬¨°¥© ¤©¨®¨ª¥¡§ª¥ ¡¤¡¢¥¥§¨¨ ±±¦±¼§¢¬µ«®§°µ°¸µÀ±±«~rsbVTUNRJGVPRQLLWMJLNRGMKACFDC>A75889;9:7::7<=:;@>:9;9:?759:9876958779;85576761320-*.102877;99;8948;8@9³¬¥±·ª¥¢±«ª§©²±¤¶Æ´¹º³ÊŹºÁËÐʱ¶¸»½Áñ¯±·´³»³´¢£wkglnqnqjpkdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajzu© «¦¦¬¨ ¦£
££¢¤§ ¢¢¦¤¦¨¦¡ ´²§²·¡¢·¬ª®¤²²¦µ¼µ¬«±£ysm]NQQLOCMNNPKFNNJJMNQHMJAGKHHC=858889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12876:999984988A7w¶¦¤¶°¤§¤ª¥ ¨¦¥³ª¢²Ãµµ²³ÆÆ·ºÃÊÌƳ¬º½´·À¯©°¦º¯®{n__frpuqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXXX[]aosvp¡£¢¤¥¢t~{£
~~tz££ ¡£¤¢´¯¬¯¥¸¦¦±¡°®°»ª©¯ªwscVMROPNCSNLQLBPQHIMRMHJJDJLFJJ=749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-12764789::65:87A7x·¡£´¨¦¥¨£¦¥§¦§³§¥´Á¸°´°ÉÄ·¹ÁÎƽ³¬ºÁ«Ã§¡¦¦¶¬£ ~x~eWV_gfighncjhgb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTQMMJHNSSSTUUVY[]ilrl
|tNXr_;Wo|s
y{}xqp
}¡ §®©©¨³¢¦¬«¨³¢©£~rn`[NSRWLDTJPLLFNOIELQMKOJILPFII=7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· £¡¦¦ª §©¨£ª°¨§´Á¹°µ°Ç·³½Ï¿¹¯®µÂ§ªÅ©£±¢}su]PLRUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`moi{tQB@}y`JQnx}
n~xuvxoQ{~xvgw}¤£¨©¥¤°«¡¤¤¦ª¢ª¢¦¨umf^[HQQSMIUMSILKOIHFJNLMTKQPOFIC<768:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')+*,4833979:99::::?9w¶£§¡¯¡§¨¥§¨°ª¶¼¶··³Á»¶§ºÈ¸¶¨¨µ¶ª²¼¦¨~}xpnXMKMMNKMQW[\ZXZUUVVVWYYXXYYXYYYZXXVVWUSPMJE@@kssIMJDDDINOhYNQSTUZnsv~ji\Ut|
{vxsovqtz~«
yzhv{prmxxz{vrrwhu
{|© ©¥§¤¡ ¤rha\]JWPRGJXROJLMRJJJLPILQLRTMEHA<78;99>=:;<98@?::>=7==79937785675251472/2.,//200/-+(().1272198798775:<;7v®£¢´©¯©¥¬°²ª½´²»¸¶º´±·º²ª¬©¨²¯¡vx|vooiXKHIHGEHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQQSV^t{xfw}hyvx}r|w{ok~|s{}tfv|lohs}lyq}qmvqhq~pC
wwz
}{u~£¡¤womebZXXUQJSUTOPNPVKNKNOJQNHOOLFD<;79;::?=9<:99??;8;=7<9999266856633611224.,,-..-0-+*''*.1362/876966527995y¦ ¦¯¬®«¨©±¯±«¼¸¬»¾¹³¬§°§¬¥©¤
yuq|mupjmjXKFGEA@CDILLMQRPQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNOQTX]eprl§ªÀ~uyc|xo|yz}omytxjjq~Inhw~licly
ksl|nr{imps{}~{vots
yyp|ojnonXVXTRQYORTTSXUMNHNKMNKCHNGE?:89;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¥°£¬ª¨µ¯®¬´¿«¼Â¿¦¢¤¡¡sztotkqldljYNDFC@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORWZQY\`§bitze~pmzvtlts|jkMy
g1vsl~~tfet~
filukq|hqq|n|s}|qpnvmwyujyywkkoheXQZWYY[MPUVYXNIHEJJHGB@FDCG=998;9:9<:9;:::@<9:<98>787715234533645031.**+),,++)(+'),,226,,5775478iO8;5n¤¨®²§»¯«²°Â±»ÃÇyqtzprpoodpf_TFIC?<;9:?@ADCEGILOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQVLAIQIb¯³ r|xm}lq
zyr¡txsu5q¨¡¡¢vp||sggbjnrmpuioXupwlz}mrnpzsvnbv~
ux~}{rppl`[\^\YXa_RN[ZXWLHJFJG>BABG>CD=;97=;:;;9:99;:?<88=:8;66651121253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥µª®±®Á²»ÁÆ}n
ul{txxlwnwci^JPG>@7449;;;=>@BEHLLLLNPQRUUVWXYXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~lw|~
~v¢y~
aªzw~sz]drtz|wmhjbyoznwtzptywkni]w||
}q}uw{|wpsteg_[[^T\g^WQUX[UGJJDLG?F@DC>AA=:97<;;=<::99;;=>79>9985653244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¦ « ±¨¯À±ºÅºz
vk}xs¡}}p~zgvkRWL@E211367688:<>AEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJi{y|q|z}~v¡¥¬©H®¯¯¨tm|}hghxn
qGlwryvhmk_w}
zzuv|xmow}ttrl[]][ccXgf\UOPVYPDLKFNICFCCA@CA=988:::;;:888::?>6;>7595773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|}
¡¬¡¦¸¯³¼³}tp~}}~¤
x~sx_cWKB60./23123668:=>?BEGHJLNQSTUTTVUSQOGC?80,#[>?84.]ps£UFIKMNPW`YpZ\^j
~
¡¡¥»±§»Çè¡¥|qv
ihotq
w{v
}nvuf¡ª¢zzyogkx~z~rjd^ZZ]j]af`YOKNWRQHPJDNGCJDB@DDA<:87=<:<:88778:==8<=68756623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.320O_4?;nupfx{¤¡¬¦«¯°¡xw|mpj]BA4--//./02234779;=?BDHJNQRSRSTTRPOHDB<87/9D><<63.lMPHIKKKNV`cggmu £ª¥£¬¨¶¢¨Áîǯxº|¡
¡
lpuwqm
r¡¥µ©¢}kjk|sa]c^Zfk\lk^WKGORQNMLFIPCDMFACEGB>:97=<:;:987767;:6=:785456345566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYppuqv~§ ©ge¤~y}
xx~gMR>/..,/.-/000212457;?CENPRTPQQSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} ¨¥¢¡¢¨¨« ¨¬©ªµ«¿«¶ÈÈ·ÉÑϾ pi«©
¡§¢xz~¡{w«³}¤¢¦¶°¨lsr||qh`\`^bgc`hg[REJKPOIJLFFMCHLFFCBGEA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppu`n}aw}{ªªBD}x|
w_bP460-1/,.00//..0015>AAMQRSPRSURNSLEE@<>=GG@A@8662<9;FHGIJNOQYmw£§ª´½¸¤®¬¬§¨´«°¶²²»±³¾³Ã¬»É˷ÿ¸¥£°²¬ª£
¦¦ £¦¢ª¨¤
¤¡ ª¡¤©±£§·» £°££¤¢«¯³µ¢¤ªyz~
~g`h\eb]dc_ff_ZODIHSOFHLFJGEFHAKECFGA;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicWjpXz
v
ÚÈsV|z
qna@E64<2/110-,+-1.-3?DAMUQRSUUWUN[PGGE<>>FHCD@8;<5C;=FKIGHROPW ®£³ª±ÁÇê³Å¶¬³¿³¸¾¶¿´Á¶»»¤¸Æ¨¶Éǵ¾¹´¨£´±±¨¯«¥v¤¡«±³ª¨®¶»²º¬¯µ¢±¬±µ¼·µ®µ §§£¨©°²º¸¸§¶©¥xuYadVeaac`af_[TIDDLUQHIJDIGEA@@JDBMF<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AFWQJL[ZQcdWyuq}
v
{¿»£¼´y
zxn]V@EM<6:46AB764//6CHCQ[OQUWU\VO^UIKJA@>GKFED;>@7D7?BJJEFWTP^¥®£±´Ã¶¸ÁÌɶ»Ä½³³À··Áµ¿°·t±³¦ºÅ¤°Æ¹±³±´¨¤µ¶ª± ¢¢¥°®¦«§¤ ¬³º¢©²º´»¾Ì¿ÅŽ½³Â·º¸¿·º·¹¬¬°¦°ª¾°½»Â¬º¨®«}|jWbaWjejeW[dYVSIGFLQGCGIAHD>?BBK@@MC99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALRWTYUZvjpnzsyb¸¡¢{z||}xzueO\dGEL:Qca[^SF?;HPDZcQQYXZgYT``MSPEA?IJHEFA@C<E6B>HGJLSZT]¯¸µº¸É¿º½ÉÌ»¼Á¼·µ»»·½´º±Æau²¥±ª½ª¥¨«ª£¢²µ¡«¨®¥§¦¥£¢¦±´§²²½¶Á½ÓÉÊÓÆÂÅËÁÊÃÀ¾½¿»¼·´¯¸·¶ÃºÅ½ÃÈ°¹ª¢«¥¨¶r_ab]Wa_hfRXaVRUIEENKA>GD=KB=B@=F=;H@796379>489:57045/26389374426?8@>GKRTSQPOQQPJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRLQ]gllq
slrrsÕÀµ }x{{yt}zkepuY]\Peeb`ed][XW\MdmURmm_n_XgeUYUKDAKKHFIHHGBI9D?HKTTV\Z[¹À¸½·ÆÀ»¹Êʺ·º¶¸¹²·µ´®¶¶du¨p^¡ ¢¤ª¥ ¨¥¤¬¥ª°¬·°½¹ÔÑÏ×ÏÉÌÑÌÏÎÊÆÀ¾ÂʽÁ¼ÁÀÄÄÅÊ¿È䤻°´¯«¹¼zl]`\Y^aYccQ\`SPKCBEGE<@E>AHA@D=:E>=J?47535;=468977022/24169775555D3ELM>51/006:477@IOI;-&**(-./,@M+/54mI0Ht?>BD@CDFKODR\Yi_polouu³¬¡¡
~|s{{ts{xkmu{hreilifjih`fihlZnt¤¼g[oh]ZZTHKNOJKQKTQHLAJGKP_^bfia·Ç°¸³»½µ±Äǵ°¹°°»«²±§ª·¬¶§§O ¦¥¡¦¬¯¨¯§³´ÔÔÔÖÒËÏÔÕÎÓÏÍÅÂÉпÊÉÊÉÑÇÌÍÂÐÒ¸°Ã¼Ä¹¥¶ºÄ¢oc\\^XaXYeZQ]WOOBBHEBI;AC>AG??A8;D>@H=46655;:687654/10146278875367C5B8?-0-1349=97,.,1;FK=),(.0007K?-46TW0DwC;B>EBACJM?UYSeWshqoyy ª¦}|p{r~qxukqx~q{mxslipmcinpxiw|~Ë¿Âߧmcxnc[a`JPRUNY^P^]MPNTQUT\nnvr¸¬³§°¶ª¬¼À±«µ¦¤¸¦«®¡«´£±®§«¬¤§¡¬ÏÒÕÑÍÌÒÓÔÐÔÑÎÈÃÔÑÈÍÒÓÓ×ÍÒÑÅÒÖÅÀÎÇÇè¾·Ðzof]b]W`S][OPTPNH>AFABE<@B>ED>??:==<<JA45465<888664412/03526768533;=<E=@11+/249>5901022-2DN3)/3.32=N238C}_2AtD:==I>@CFH<VRMO[u
wlwp}~¡¡
y
{r~yu
ovrks|{w|swqksrhoqzyr{¾Ë~²vrvhaj]CZZ[WfdXekSX]]`d^cx{~ª¤¤¡ ¨¥ª°¸ª¥´£¡¡£¢§±¦k¢
}
§°¡ ¡¤¤¨ÈÎÏÈÂËÑÔÑÔÓÎÓÍÆÖÒÌÔØÖÖØÔ×ÕÉÔÚÍÉ××ÑʬÄÃËsoc`_XTZS\PJGIJJ@;:;EBD<BC>HB>BB;;9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/--;R017/532FD28>nb5=tM99@I<AD?A;PLFKYpu}hsxr
x~xs{}wznxpmuvx~t
|ymvtn}vuy{¶<AÆ¥~|ieVICfcechjdox[_fiknin £¤¦²¤¤³ ¡¥ © ¢±~
z~©£}ª³§§½Ãƹ¶ÆÍÒÐÒÐÌÒËÉÔÎÐÕÚ××ØÔÙØÍØÛÎÉÚÚÒÕ¿ËÌ´xvoe]YRVQZVFGJIEE=:79@AB9GD@ECADB;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BS39254/7K75<`bA<svV87AH:?C><9QECJTlnopaqqs|~
|x
zxqz{uz
zp|oozq|qnzuw}|u|°tY©Â¶pnb=^hrpqpnxweioruxrz ª ¡¥¬}
~my{®ª§®µ½©½ÆËÈÉÌËÏÈÃÑÊÔÖØ×Ø×ÕÛ×ÓÙÛÖÐÛÚÑÖÉÔËy{ii[ZPRT^HBEII>A==7:=?;=G=?AAADA>>:86DB755479.566435532323647553457EBDCEB56<FNSM[nfcnskaV>,4LG865434BF4=W_hLux^8;?F<<B<:9D?CGRk_mdbfkvqz~~||~wyn{{uz vutu}toot|
zv{·Æ¥ÂÉ·wpeNfczw¢xyw{|un¥ £«
z|¡¼¡©¦¥®¨µ¾ÀÀ¹ÇÉÍÎÅÍÉÑÖÖÕÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÜÆzzhid`TWVUMJDND;=<<9:<>9=@6=?@<?><9867CA6455=80665547745613854564567HH=DJE7925;H>;::7IP]ZRUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Yea][htzylwvz|~~|
{~
z{u}tm|}~s~|~x}ynt
~
|~z©Ã ¼£}}s~s¦
{hGp ¤
¡~¥¥¸¢§¡£®¶ºµ«¿ÆÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Ü·xxxljdW`[TPNGCLB==>99::99;=6?>><=9:;;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8589?=DRSRX^UXfmmmiqry{z|{{|{~uyszsm~}w
¡n¨
z |~£¢¤®
Wr«[¢¢¢¡
¤³¡¡§±¸¬¥¼ÂÇÍÇÆÏÌÐÌÎ×ÏÑÔ®ÖÕØÚØÚÚ×ÖÙÚo|uhg\]XSWXC@ID>>>:49:;7:;:3;;?<>7;9:19G=:37=@50677255?65;55858:57735HR7GOK994=EJB>1FCLB98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:<@;BQKKSYPTcbxmb~omwxyz||{wsp
zuvvt
}¦£¥¢¨r±§
¢ ¡©¯n·
ÄȲ¡¥²d¤ÍÇ
ª££¥©¡£³´¥£¼Á¾ÇÅÅÉÈÉÂÊÓÌÍÔ¨ÒÑÖÖÖØÚÔÓÚÎrhc_]^NJTZBAGD;A=837;<:8=649:<:82?9:29I:>67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:>:EMFHRWSRBcFu}|m~xz~z~vv|lny|xx|}£³§£ª²¡§¥¤®¢¸³¡ ¥¯£¤§§¯¤ À¤É¸«¢¦²
¨¢
t²¤¡} ¡±®¢¤·¾´ÅÇĽÃÿÆÍÊÉÒ§ÎÍÓÒÐÖØÓÐØ»ryv\`U_WPHINEBCE6>:76:?;<7=42669774=5<5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=89566=:JFDGN[\YIf`;Hzzm
z|x
~px|}|orz}{x
§»¨²½¯¥³³¨£¢°¬µ£¸¤¤©·¦¤£©©£¯°ª»»É i¶¸«°£«¾£^ª²|}´« ¡¡ ¥¯¨¡¥³¸«ÂÈĵº½»ÅÇÇÂÑ¡ÆÉÍÍÄ×ÖÑËÓ¡pzh]YS^ROFD><CAB8?874>F<<6<35355454B3::BM:A;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPeGb`bpI@~s}um}}|pww{ªÂÀ¯½Æ»³´Á¼´«³¶¨²®®¼ª»¤¨¹¸«¦¦¢¡££¨¯²±«¤¢¥¥£¹®¨¿¼¬²¹¥£§}½°z§±¬ £¬ ¡§§¤¢¤°²¦ÁÇ𰺶ÅľͧÇÃÇüÕÑÍÄÊtsb\Z`[MJBL@EG?A?B;:4>A<=5=6>333241A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\fF`igZ][{uo~|q~zz§´ÆÉ¿ÂÌÁùǼº¯«¹»²¶º²À®¥À¤«¯»¼ª«¢¢§ª®´°ªª¡°´§¢º¹µÁ»«©²¥¤¨
©ÃĤz¡¦ ®ª¡ ² ¡¤ ¦¤¦§¤¯¥ÀÄµÉþ¶Î²Ä¾Ä¼³ÑÊȵtym\X\jSMHDLKKJAA=CD<5AD;:3=8B332263A05IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBfZMe\fTcjyr|xy¡¨º¾ÈÈÊÁÒÉÊÂ̽Á³¬»¾§º¿½¼Ä·¬Á©¬²»½ª°©£¥£¬³¶µ ¯¥¢£´¼©¨¼Á£¶¶¯«¯¬«¬©¦¥¥uy
££©¥}£ ¢µ¦¥¤£¥¦¥£©¨¢²¬¨¼Àį¥³·ÌÀ¹®Ä³»¾Â¸¬ÂÃÂÀmyaXW\[KKMJFDDIBBACK:4DH9;4<7E.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQF7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>jH_XaZddVw
¡®¦£Â½ÈÃÇÅÓÍÎÍ˻·¯º½´¼Ê¼ÃÁµ¶¼³¿¹¼®¯¨ ¨§¶©±·¢§¡«··©¥¯¾Ã±½¹³§ª´³®¤«§ ±Å§|}ª¥¡£¢Z¥e£²¥¢¬«§¦¡¤©¦¶«©º¼Äµ¥´¶ËÁ¸©¶¬²º¸®¨¸º½¸lnZWTUNFJSNK?BHEDHGG95FM;>7>AJ.32025B55PVN<LFKRLOHGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|hW;=@BFBqFiIRebLF¥¡©¦¢¯¾®¡Æ½ÅÄÆÆÎÎÎÒʾ»¶±º»¼¾Î¶Ä½·¹·²²µ³¸³¬¦««¸ª¨§¯°£®¤§¤¤´À°ª¬³¾Â¹À¹³§¸´¸²®¤¬®®¤¡tÁ}±¦£¨¡ `J¥T°¯¥¯¯¬¦¡¦ §¢´©ª³¼¼»«°²ÇÀ¸¥««±±£¡²²´¤qnf\ZNPKDPPPQ;GJIGHBC>9KU?A:=EM07544:B34NWO<JKNUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@CAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}iX;:BC@=QEWRsbWFHª ¢¨¯§
£¤µÈ´©ÆºÃÃÇÊÈÈÌÍƾº²®¹¸ÀÁͶȺÁ¹¶º±¯®²´§£ª³´ª¨¦¬¤®¥¤¨¬º¿¨«¶¶¾Á¿¾¸²²Ã±¹½¬£®´¬¸¥¦v¾ ®¡¡©¨ ©¢§nv¢¢²£«¨ª«®¥¤¥©¢±¦©«º¶¾³²½¹¶ £§¨¥§¬©©cea_RKMGHNIUL=MDNJKBCD<QU=AABDO18=77?B75UXN?HNQYSPQTJQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=..R`MUHe^HE«¡»¯ª«¢¤££¶Æ½´ÁºÂÂÇÈÅÁÍÈÁ½¹²¯¹´ÀÂʵƱÁ¼µº«¨¬°£¢ª´º¦©¦«ª¨¯§£ªª½¼§¬¼³·½Æ¼·µ¸À°½À³¨´¶«¾¥¢¢¼ ·©¥£¡¨¥³¡¥¨ª¥¢¢ ´¯¥¥°««¬¤£© ©¤¢¡´µ»µ¨µ²³¢¥ª¡wa]`]JIFHMQIMEFGBRLIAEG@VRDH=AGQ1;B7:BF79\YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:g\FCCpbGE§¤Ã¬¤©ª§¦¡«¶Ä»¾·ÁÂÀÇýÍÇ»½¹²¯¸³¿Ãȵ¿¯¼¶º·¦£ª¬ ªªÄ¢¥¨«¦«¯¬¢©¨¾¸¦½°·¶Ç¶µ¹¸¿°¾Á¶´²´¯½££®¡¢¥££½¥©©¬¡¦½¢£¢©«¡¤ µ¬¦²§°§ª ¡¥¤¬±¶²ª¥ª¬ ©hcZb]NIHKOLHEDIA=PIA<GIH[ROK=HOU4BF9>HG5Cb[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,0Mv\4KZ5,MnW<-=)#zbQ5CKQ9oRF<KxecWM¢£Å¬¡¬®£¥ §©«¶°¢ª²µÄ½¿¶À»È½Êȶ¸µ´°³´·Áƶ¾°¸´¹µ¦¬ª«¥£Á¥ © ¤©¯¢¦§½µ¥±¼·¶µÃ²³·º¾±ÃÀ··³´µ¢¤ ¡¨©«¢Ã©¬¦ ½¡¤««¬¦¡W¥¡ ¸ª§¶£³¡ ¯¢¤¥®²«©¢¢¦¥¤be[d`LIJKOFEAFK>=JB99JKN]QQI=LV\9FI=DMI8Hc\LCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWsHE6=ue\KN¡Ã§¥¢³ ²§«¤ ¤©¬»°¨¬µ±ÇÃÁ³ÂĽÆüÄʼ¯±¶°µ¯¿Åµ¹±°ºµ¬¨°©©¥¡§Â¬°ª¢®°©¤§½·¦¶º¼®¶Ã³³Â¿±Æ³º¶«´µ©¡¥£«¡¨«°®¯»²¦ ©©¢¤¸ ¡¤®¯¬¥§¡¢§´¦§´£¯®¡¡¦¬°¥§¢¡
bf[hfJILJSBC@IG;;G?99NMU^RSJ>O^]=HPBLLI9Nd]LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<v]^?[U^fr@8<HweA4¤ 褪²¡£µ©²«§¢¤²¬®©»²¬°µ´Æ¿ÄĵÀĽÈöÀȵ«µ¨°¸¬ÀÄ´·®¬¶¹¥«±«ª¦»µ¨°®´±§ªº²§¹³·²¸Àª·²Â¼³Å§¾®·´©§«¡¥¤¢¢¤®¸±µ¶ ¨¤¤ ·¢¤¥®²²¦ª¦¡¨¡¯²¢¦®¥¬¥
©©ª¢§ ydi]kjMPNNT=CANC::I@77QO]^RVQAW`\BJSHVKH:Ue]NFON[W[RPQX]GAB[PBG>NC9HGHNP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1[bZ33806p[bH05JpiVCWFyfC;¤¤¡¦¿¦¨¯¯ ©µª¹¯«£ª´·±°¹·¯¶¸¸Å½Ãǽ¼ÃÁÆÀ¹ÁÆÁºª¶¤»Áø¸ª²»¢°²¥§ª¹ª §°ª °´²ª©¶µ¬»¬²²¹·¬¹°Âº½¾¦Âª°·¯©ª«¦ª¡¡ °¯³«°¹© ¦¡·©¥¢¢¯±´«²¨« ¥¡£³°¥¡©¢©¨§£~
kimalnWPRZTACET@;;IA7:XPd^PVWDY^]MLRN^KJ>Zd^NHPN[UYPKSWZI?DXPDF>N?=IGGQPB=CFBM?:2D?77547?=95E4+75/251.-.,1>*'+=\p=>1.1e[d@1647gY`F(?8l}h[V;{cC=§¢©½¡ª°ª£±¸©¥´³«¡µ½¯³¸¼º½¶¶À¿ÉĸÄ¿À¸Ä¾Á·¯µ¨«·²¼¿¿µ©®±·«¨§¨§»¥³«¢±°³¬©¶³µ½¯±µ¬°µ±ÀºÄ¶«¼¯±¸«¬©¢±¥¤©£²ª³©ª³§ ¦¤´®§¡¬¬±§³²©£¨£ ¨µ©¡¬¦¥£
{flrgpr_GYfVDCMXDZ9HB6>]Qh\NY]G[^]NMRXdJJC\b`PKMNXWXPJVVWM=EUJEDAM?AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,+%2+*5K1.'__aU150=`V^8)C3YU\gK5zfL@¤ ¤¬·¤¬©¥®®¶©¯³¹¦¦°·Å·±·¾Áµ´ºÅ¾ÌŸ¿º¿ºÄ¸Á¹²µ¬ªº·ºº¾´ª®°µ§«ª«¬««¼¬®±£ª°³®®¶±¹·©®±§µ¯³»¼É²ªµ´±´¯®¦ ³¨ ¥±£¥¯¡¤¢¥§²©¡¦±«©µ¥¯±µ¯£§¬¸£¡¬¥¡¡ {{knxnv|aFajYIHY[={JGE6AbTiZM\aJ[]ZRRRb`LKE_a`PLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`U`/5(C^Q\.*B/JGP[H3cYUKD °¨±©¬¥£®®µ©·´¸£«´·É»´»»¿¾´´·ÃÁÍǻü¶¾¿À¸¿¼±½®§º¹··Á¶«±¸¦®«§£²©¯»¤²±§§¢²³°²°´±¸³©®«²§¸¯µ³ÃŶ¨´µ«°©§¢¶¦± ¤±§©©¢¥¥¥·§¢±³«§±¨®°µ¬¤ ¬¨©¸¢¦¡§£ v{
nqwv|]Lel\KNc\?b{GI8GgWe[L^bMXYWTXTi]OOHa^_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANHf27'FaLV%-B.=EMQ<3rkJDC¥®¤«§¤°²³ª·°¶«µ¹É¹®Á¼Â·³²µÂÃÏÄ¿Á½´½À¿º¿¼³Ä¨©¹°¶¶¿¼¯¬³² §°¥¦°¥²µ«²°¬©¨´¹¬´²µ´¬©«¨¬©¹±°Ç¾·¤¹¯©¥¨°¥££®£©¯¢£¢£¬£¡ª¥¦¹¥«´´¤©«©¬¯¶®¢£¨ª¤´¢
¦w~
||}rtr~}~\Sdo^NZf]FD[H;NmXa[M`aNVWVWTYg^QRLcZ[TKGOTSNGIVS\N;P^IBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Bc;6*HdHJ+:I?3BIS,>k=HHªª¢©¯¤¨£²´±´µ±±¡«¼Ëº®À»Ç±´´ÂÃÑÅžÀ²¾Á¼¿·¼Ä§·¬³¸¼À°«² ¤§©¨¤°£ª±ª¯¬°®¯«³º¦¶°²©²©«¦¥£º¬ª±Â¹´«¹¨¨¨©¨±¥©¤¢®ª¨¢¢¬¤«¡§©¡¬¥£¬·±± ¨¢ «®°¬§¨©¤ §¡ ¤|w
tsrvl_Y`ncQsq\K;|F>WuX`YNc\MUVUWP\b^SONgXWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*35>10485(5/*,.30;),,'%234$,2-860)(1<]J0.IgDF8<B05EKX1@[?MF§¢ª²©¨¯¶¬¸µ®ª¥«ª½É»°¾¸Ã¯±³ÄÃÎÎþ¿´ÀÃĺÀ´ÉĬ¯·®²¹À¿´®®«¥§ª°©§¨±¥´«°®±¯³¬³º¤¸³¬¬®§« ¢°·«ªº¶¤µµ¤©§¬¬ª¡¨¦¦±²¤¦¥¡¡«© ¦¤¢ª¤¬¢§±·¬¬¢¤¢©ª©¢¥¤¤
¤¢|zt~tw¤yk^`ngWedN@gLDbyWbXReUMVUUTO\]aUKNiWVVIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06WZ.0JgAA<<C+:JO^4D@HHD¯¤£ª°ª¨¬µ«¶±«¤«ª©¼ÀÀ¸¹³¼µ¦³¯ÄÉËÑ¿Á»¹À¿Ã¹ÁºÁÄ®±µ²³»Á¾³±®¬««¨¶ª¥¯«¹¯¨±±®±«µª¶µ§´¶«¬¤©ª£³³¨¨¤´´ µ¡©¨«©¬§ «¬¨¹¶©ª©©¡©¨¡ ¤¢¦¢©¦´®§¥©¢£¤¦¦©¢¤£~
£txu{xoqggqx\`sjO]VHmxUdVQbOLUTUPOX[bUHPjTVTGPYUI>IHOQPxLMV=<KD?@A<@CUC9AK=5;E13;97*4:=+-341*8**+*,)*(/*&)%3;,$2)2021%/2Qc02?f=NX?C,>LT_/Jk6PE;° ¥ª«¤¬®³´®ª¥¯©©º¾»À±¯¸®¢¶°ÉÇÈÐÀ¾½»¼Â½ºÃÁÀ¿®²²²µ½¼Â²²³ª³¨¤µ¨¤¬³³¹¯£®¶±¯±¹ª¸®ª®¶¬«ª¬£ ¶¨¡¯³¡´ª¨§ª¤ª¡¡¬¨½¯¬®¬¡§§«¯¢¢ ¨§§ª°©£¬¢¡¢¢£¦©¥}¤
xt}uxy{tszi£ui^elug}RXp^JxsSdSQ^MMRYfNLVYeYFSiRR?BNQaQ:IHLSIqQLS;<I?;<=;@@W<<>H73CB15:93-5::)-31--6)(+-,52#2)',%.;.&1.0-14%,0Lh:48_=ad?F1CP[[+HO:VB4± ¤¦«£¦¤¬¦´³°©£°§ª¸¾À¼°¨¹ª§®°ÉÆÈѽ¿¾¹¾¿¼É¼Â¹°°´±º»¹Á³´»¬¸¬£µ¦¦«±¶¹²§§ºµµ¼¯¼¥µ«©¯£¥¬ª§ª³¤³¨ª§©¤©£©¨©½¬´¯®©£ ®²£¤¤¥¤¨«¥ª¡ ¤©©
}}
¢~qzy~|iw|zuqq}hxd`hcr
zmgy]^VBWzmTaPRYKKNqt]HZ[gYEUfPD>KNDCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KH1%90%,,09/,,+6'17#-/GjI14X=fbAJ7GS`U*=;EZ?*±¨¥¤¡«¤·²²¤¨°§¬¸Á½µ°£¹¬¨¨°ÃÉÉÌÁ¶½¿µ·¿ºÈ¶Ãµ´³µ±½¸º¾·¹µ¿¡³¦©ª¯µ¸´ª»»¨²¿²º ¯´¶©¬®°¢¥¨©¢¤±¦¯ ª©¨¢ª£¨ ¼¨®°®¡«¢£®¬¦¡££ª¢¤¤¡¦¬{|~
£|yk}vyxb{zqpqsxisjgdhaosmbjp`pA\xkV^NPQJJMSYVM]^mWDX`O^PHMDF;7HEKO<rhJK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*K>*49&'.34.0+/4&,:$40BhY13S=e_DL6KWeO)<3P[=#¬§¤¢¨¤¸¯®¢¯¯©«¸Âº²¸¯«¨´ºÇËÇ¿·Á¾¯´¾·Ä¶Ã±®¹²²Àµ»¾¸©¹·½«¤µ§§©°¹°©º¼¤®¿´´¡®·µ§§§°³ ¤¦§ ¥§¨ ©®§ ¦£©°¸¤±¯¡«¡¬¤¦¦©£©¦¨¡ª}~||¡y}{so}qst`yxiopqojrdzlifdaf`[sjrMMiXZMPLJHPRPIN\_oTDXZRgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZhH*?0ZY5(¥ ¡¤¡·«°£´´©¨¹Å¶²® ·¬¬°µÆÈÀ·¿Á¹°´½·¿»¿¯«½°´¿±½Ãº©»º·§¨¶¨¦ª°¬³°¦¼·¤«»µ®°¸¯©¦§¯±¡¤ ££¡¯¦¡¢§¯¢ ¢£¥¢·°¡¦±«¬¢®ª¤¨¤¦ª¤¢©¡
z}yy~zzprwoot_xwdllljinfsikfi]ds`[kuiZI}^[XOOKHGRUF29^^mPDXVYeMIIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<#8R=*113>D5,-'42*;+139cl84GAf[HTDU]hE.<2bU,2£¡ª¤¡¢ ·ª® º¸¦¬½Å³°¯£µ°¯µÄļ³¿º·°³¹¸º¸º®¿³´¸¯¿Á¸¬½ºµ¦¢³ª¦¨²«±¡Àµ¤§µµ¨²¼ª¨¦©¯¬£§£¦¢²¤¤¨©¢ ¤ ¤¸¨¤§®¦¥ ¨¨¢¡ ¡ª¡£¨¤
y{}y{w~{ltrllsaxthhjgfo
ghicfij`ibjg[e{c`SsT[[SKJGIOS@!*i^jLCVU^`KIHEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,>0-N?.+-7,1195,&.5-80576`tB3CDg[KWGU`hB379eO'2£££§£µ¦ª¹·§¬ÃÁ¶°¬£µ®§®¯·ÀÀ¼²Á¶±®²¶¶¸·¶¬©½³¯²±½¿¸®»¼±¥¶«¥¤´©«®Â«¨¥°²©¬´»©ª«±¥ª¦¤¦¢¤©¡¢ §¶¦¯ª¯¡ ¡ ¥¡ ¥¬¢¨ y
w|
{
s}}fxokjlguskcgddubeffejjdkqZ^Y]mdaNhWZ`VJGIKMRX>9_liHBTS\[IHFEA.<?9A89RG@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=+*,0A*JK./*+3722(57$+7.72685\yN2>HiZLYJVbfA:3AgH%5£¬¡ ¥³±¢±½·¡±Æ»¹±±¤¶««®©¹½»»®À²¯®¶¯³¸³¨«¹±¯´¶º¶°¹¾¦µ« °¥«®¤Â ²£®°®·µ¯¬¢§©¤¨¥¥£¨ °¦¹¨®¢ £¤ ¨ª§©§|t
|pfynhkjgqrk\hccsafhjnlgkjgm\lluqaTbhdeZIFLMOXQQVaeT@VSYTFHFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24;6#3*)6.55465Z|]19Kj[M[KXdd@A1JeC'4 °¡©²°¸À¶ ´Â»½¹±¦¶°¨®¤·¸··»¯ª«·ª´¹®¥³µ±®©±·¶±³µº§©¶©©£ª©À£®¯µµ±¯©¢£«¨§£©¢¤ £«ª©»¨¤¡k¢q¤u©§¡xnj~wql}o^c`gkuw~ghuifW\hsnNPjcgrg_dfnlj^``gOKD8FTg^JGQPUUKHSaoteF[QUPFHFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,+08>G601.*.*/568,#1'214:176Xl16Ok[N\K[fb>G1Qd=+/£°¡ª«£½Å¯©·Â¸½½§¶°¥«¤¸³²³±¹ª§¬´¦°µ£¨¸¶µ¨§¬·³®´³£ª´«¡¤§§¬»¦¥¯²·®¥¨®«¬¥¡ §¦¡¥¥§§¨ª£µ¯££££¡¡¡¥¦ªrx
¡vif}sx¡o~|¡ {tvllheczlqbTmcliqXjpoX^i[kk[qnzrhZ^FM?G_MFRVVQQRWTg^MXJRROEGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82).1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Wa7/(¦«ªª§©¿Ã®±º¼·À¿ª¥·°©¬¦²µ®¯³¶«©¥±¥µ³µ¶´¦§©³±²¨¯«¡²© ££¢£®µ¤¤¥¶¼¦¬§ªª¬¨¥¡ ¦£¦£¤¤©¢¤¥¦ ¶££ £®©¢
±£¬yÔ¨ÁÇyx±¥·dÀ¿yy|Êq¼Å{r¶§ºzl±«°yhkX±®nei¼¼nhznrØ~Sjb¶²ru¡ªWOWaOVNFT[XQPR\W\P@\DQNEGI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww21Tk\O[M^g\>L1[]41!¦¦©¥²¨°Â½²µÀµ·¿Â«¦³¬¬©§¯³ª¯¶³¨¨¦µ¦§¸¯³²¶ª¥¤§±®®±¦ª§¤±¤¡ ¯¡´º¢ª¨¡®¥¢¡§§ §§§¡¦¢ ¯¢£
¯jjª~gdp¥q®¡¤~x»}k¡v±_j´[¥f`fzfjxj©e¾rg¦v²j|±xtcmm§m[ EhgEu`}h|¤§Y_«ixzj§7J¯[WSmc[KOX_\WV;NOWW/ITSIDEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:5/'$203B/=;Uv2-Vj\OYL_gY:M5_Y31¢¬§¥£¥ª²·¬´½¾°¶Ä²¸»Â§©°«®©©°®¤°º¯¤¥®³£©¹©³²°£¥ ª¯¬°¦§£¢°¢¦¡´³¡«¢ ¡¨¤ ¡§¤£ «¦¦¡
µµx
©µw³·~¨~k¦zw«gk±[¬{tqx °vwqkkl|N¤XHcc~ch¦`yruS^P©mcq~b.Q¢n[Skh`LK\dX\ZB>°xWXA#MhECDA@A19>88:84;:9<9:A:E::;6:CB8=?KNG:5:AFB@AD<FD;0201;F,0.940,.(/3,>831/2-D1<<S}n3+Xj\OXM_gW7J9aU50³¦¦¡®©§³¬©»¶Â°»Â¸·Áª¬®®¦®²©¡¯¼ª¡§´¤«µ¥¦²³§£¢¨ª²¨°¨¥¯¢£¨´®¡©©¨ª ¤§£ £¥£¢ª¦¢ Õ¹p°Â~Æ|Ö»|¤¤{¤¥z¬yV¯{~j¹Z¹w|¦|zªy{±mt¼
oP¯§ÅQ zc`ªbsrm`Sµ´È|c¤3Bv]QjhdP@XgZdaJHMlK[SOYfZCD?E?0<<59;74<;8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DC./0483+-).323971#%5*>3==Qwj6*Yi[K]O_fT7G:aQ72%¢±¨¨¥´ª¥´¨¤¼·Á°¹À±¶µ¼³µ§±°£°²¦®¶¨¨¹®£¯± ³´° ¤¨ª±©´©¤ª¡«§°¨£¬¢¨¡¥¡¡¡¢¡¢¢§¡¦ §¡²nhµq«o¦r´sr¶{£¢~¡¥~°vÒÑv\®|¤oª¦k|}{±sy³etofRÈZÂ\yb_`vsb^YÊo¿uMKµSUÆdTQjcfXAOk_lhOUGI9=WR[WXHC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>HI91746A>/.24252-).26,742&60;5:=Pqh9'Wi\BOT_eP5G=aM620¡¥°¤ª»¦´¥§¶»¼²º¿·¶µºº³¥´´¡±±¢¬°¤¦º®¤±±´¸ª¦¢ª¥²¨ª¤¨£¨ ¥«¯¦¢¥¡¤¦¦¦¡£ ¡¥¢
¬{w¨v£©o§¡¢®
³\r³R®}¤q×}w}w¯x³aelZ°XKuyf`^wwhk^¯wxl5yÈ®²_ATo^g`EPl_pmVUM.eciSYQ:AD@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@>V_cN6GC`I988 ¸°´Á¨²¨ª²º¸´¸¿¹·²¶¼µ¤·³´¬¨«§¶«¨±±«®´¤© ¨¡¶§¦ª£¥¡¢¥¦¬®¦ ©¢¢¨¥ ¥¨¤¡ ¢ ¦©}}¥x¡ªp§¡£ª|yo±Z¨ ytØvt§¤|{²^d ~l\«[Zhgªdr{ks]¬Z kneOJC¡\ZLt^bfMZa_rt_JV6JYHE=HFAL35A8.;>05A78@<6=<F?:<6?=B7.HVJEAH6KIN@IK@EN::@4.;>002144+*05/7,&21($$6671<PeeA&Uf[?2U_bL7FI_C1?8¡¿«´Â®«©¥´°¸±µ¿¹º³±·¼©º´°¤¥§§ª±©°©µ¬«¯¡¡ ¦¤¤º¢£« ¢ ¨¯¯¦¨¦¤§ª§©§ £¤¡¡¡ ¡«®mr´r©v¦s´xs³¤¢¤w¸o{¢kk¶Z
ei¡¢§mr´t²j
ku³af¢oj\`M¡|Rs£mz~oq\¯V<wfTon.\§ObRkeamYb\ap{cTZQ>>mp3BB@?L9!7@6.;@37C58??3;<CDBJFMIF62JTKEBI6IJP?HNCFP=<E50;<010/75,+,426/#00,,289/9N`eD'UdY>/U^aL5FM^81C8¥º¡²À®««§·©¸¯µÀµ¼±¯¹¸ªÀµ©ª ¦£¡ªª¨¶£²¨®ª § ¥«¸£¥£ «µ¯§¬ª¥¤¬¢ª²¤ §«°¡£¢ ¡ª«Ô»s°ÃÃ~Õ¸x§z£¶u}wv²`ºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¡~t«}¾ns¼t²uxnqn¤t½]w}[ay¼kZV[jz^j`dfbmwoY[YCA@r?CG+5H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7A9§¡¼¢±Ã°ªª¬±§¹¯¶Ä±º²®»°®À±¬¤¢£¡©¤ª²¤µ¦¤ª¦¬¸¢®¡¥ £¯¹±¬£§§¤£¬ ¨«¨¢³¢¥§¢¡¤° ª
µ·xµwmknsnytÁ»½{²¨pt¸|{|¤»¹½uz´£tvut°ufiµtrpw¶^z}hymyb¬pu
Y[§jDdYSf`c]cPgfqmuBNPLD;ZL>J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7LT_G'SbV8*O]]=+:VV'=;<§ ¿¥³Ã´¬«§¬«©»®°Æ¯µ³®·§´¸©¢¡¥ «¤ª¦µ¨§ £¬¤¾¦¡«¢¢¨¢²µ¶£¤¢¦¥ª¨¤¥¡¨¥¦£©¡£°©§¡j~i¦xs~tzez½¾Àºoq_rjZ^ack`cmvbke^`cqir}gj~rtx}}b[wthP\n|{kXlzrIJo
pMtMEW]f`L[Xgc^O[muiqQODEM;HI<L?2,2A?8/5?C<9;@;=C>RVVWYZ[\\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7JR_I'S`V4)P^L(3=[O'?2>¨¨¡Á£´º¶£¥®§¨µ±¬È¬°³«µ£¾±²§ ¢©¢¬¦®¤¥µ©¥¡§¨¾§©¦ ¥©§°²¿¬§§¢©¨¤« ££¦¬¢ª¢°¦ ±¥¡§££¦¢gm}qw
µª ¢¡z¥
lj||tqxyvv{jstucw}vkp{m`c]pgMYYej_WZpznmfSOFS9OZNRO(+:JB635=@A9:C><ENSSTVWXYZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J&R^S10T^:+=8\K,<-@³ ³¢¿¢¤±²· ª¥²§¥°µªÉ«±¥µ¦À§´¡¤¥£ ª¦¬££·«©¥À«¤¢¢§¨§²Ã¯«ª©ª ¡¢¤¯¦¡¤¨¦¡° ¢¦ ¡£ |ª¨{
¤f¡³¯
vz|vyzogykuyrhszvktdyf`idbdfjYk{pij\SLPD_UF@??,4@F;45;>A;<?>>HNNOPSUVVXZ\_aca_^^]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMMD/T]Q05M[17E4\G5<,@´ ¹¯¾¬«®²² ª¦±¢¬³°Å°ª¬£³®¼¤´¥¢¡¨¥©¦¤¥³µ°¦®¾ «£¡¨©«¢³È³ª£ª§¨£« ª®©¥£«¡ ¡¥°¤¨¤¨f|e~cylhkz¤«ke~g
eeih{¡kh¢wkj£slnzzXe^
^lv\hswwnxxsmytw{jY^ktd]sij|qlc]QMWJdX@J4=F7?FD71<=?AD<<DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AJ[J/7ZO6)EY/DO1YC;?.=¥º¼¹¯¬³±ª¥¨®°¦®°½±©§¤¯°£¡§«£¥¨©²®£¢¯¦¶¹¥®£¡ ¤{¥¬¢¨³Ã·¤¡§®££¢©©¡ ª¯ª«£ª¨¦¨¡¬¡¥°¤ª¡¥ª~¾r´rhx¹Ä¸q¢£{¦sª|ËÀÀ»q¢|À½ÂÁ{{ÃÀ}k¥±ooÊzwvzyqzqx
ymwbf_xd_ec^thmdbXLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>I[L*#BP/#F[3PY/UAB;/8£¸Ãµ°¯À©¨£¯©°®¦²µ¯ª¥¦¦°««¢ª§¢¬£¥¨¥¤´¤¢¦¬·³§¯¢¥ ¡¦«¤«¿À± ©¯©¢¡¢©£ ¡®¨¬¦£¢§ ¥¥©¤©ªª¬¡¥¡£Îxz¤y_®^§¢ |§t«¯^cªz§
t³c«¡³j®t}¸aY£Ínu{Ú{p~v~e{vvk}n~
~m`qkpg`_yd\qhjdf`RTRW^KOC5AHED8>6;@?A;=7@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-J0';\;L-!P@F4.1ÂÀ¿µ´°·¤ª¨³«¦²¬¬¤«§°ª §¥¢¯ ¨§£¦¡°¬§®±ª¨¬ ¥¥¨£¤ª°¨ÀƳ¨©±®¢¨ª ®¯§ª©§§¤¡«¬´¦¢ª©£§¥¡°¡§ q
t¨q±|q¬~¡¥w«}r~«vz|~ª¢~«{{VÄzoÁ}mupmeveoawnromdotup`gme_oiinfcWS]aYRSC9II@D<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1' '45-&7=WJ-<'>1)3V@F!G:C1.+°ÔÆƲ´£££¡¬¯¶®¨°§©ª¨®««§¢¤¢¦«¡¥ ¨¨¢°¬¨§¯¬¨§©£¢¡¦£¯¬£«´ªºÍ±¦®«¢¬¬ ©±©©©«©£¢¬¯±¢¨¬®¥¦ª©©±¢£¥¤j¤uz©tz²p¥q ¤``R¬®v®¦z{f£¤£}©~®^|©U¢z¢{ïÅs¯³³¹qb©¯Âthmomyxwolfeeqpf|ib]W`iXXUMMQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799674,&$" ('"+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÃÉÖÕÀ¡«¨¡¯¢°´°¯©¬£¨¦ªª«©¤¦ ¤¥§¦£¬¢¬¡¤¯¢ª¤µ°® ©§£¢¨ ¦±¦£§±¬¶È²µª¬©¢¤³ §««£®¬©¢¡ª£³¢ª³±¡ª¨®¯¶££§|ªlu«y|°o¤Ò¸´¸É²__©¤ yxªÉt£§©ÆÆxe¡¥s}¯^pµc±uK£m§Gd|pp{u}{n[ejrqfj_aYdm\^YIMLKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75685/)(%&%$&),4ENPPMFKJVF*L0/>-5OTQ;<F2,$§¤Áƹ©²¬¥¢²¹¬ª¡¦¨¦ª¬©¦ ¦¥«£®«¦ ¬©¥§¶¢¨ª¶²¬¦ ¥¦¢ ª¦®¡£§©°´Â±³ª¨¤ ¢®¦¡¥¦«¯¨¦¬£·¬¡²¹¯¯§³³³¥§£Nxz£}¤§¸{|y¹~Ìƶx¡}v¤£¨~°
¬}a¥l£p
}r¬`¤sq`¼}RUu¤{}uzs
q\mnwrjoZd_hncd]KMQTBIHFI:9K>B108866877-*5==?BDGILNPTVXYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOUF<E3:P[T6?H,- ©«¤«¸«¯ ¡¬³³¦ ¥®®ª§¦¦£§¡²®¢©¦² ©¤£¶¢¢¢©´¸¤¢£¡±¦¤¡¢¯®¤¨¡¶²Ã±®©©§¢¢¥¥¤¨®¡®¥¦°¥¼¡··µ²¸°³§¯¡£
ѵ÷y
¦x¢w ¥qª´nrj£|s¯¥¢¦mp²\¥szl{}n©a¢qqbs²¸hx¦~x}ymixixsnt]ddnmfg`J[XX<HG@U3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^``][ZZXURRQF:2230/++(@QRTUTSTVWWXXWUVVTQOQ[U%!2AH$)%s¿¿»ºµ¨¤µ¡££©§®ª«¥¢¥ µ¦¢©§°£¬£¥£ª´´¤¤©® ¦£§´¡ª£¶«Ã¯©«©¡¡ ¥¡¦¤¦«§¢¤§¾¬½°¬¢°³¹«´§©±¤§z¨}|°w¤¥m²o¡|¡¨¬
®
© ¡{~«ªx y¯]£|¦§d|tk®]¥kq
]`[ m§{{klb}tmz`geqnhghCZa[=KT2U8BBC7$$3+''3, /6674359@CFIKMNQSSSVZ]_a`aaa]][ZXSPONI7052.*,ATVVVUTUUUUTTUTSTVVWXVUUQHFIJ#((½©Æ¶Á´¬ ®¸¥¤¤£ ¯¯ª¤¸ £« ¯ª®¡ª©¤®°¬§§¬¢¡¥¡¤¨¦¶©À¯¥©£¦¥£¤¨¬¬£¤ª¨¾¤Ã¬ª¢¡¬²º«®§ ³®¨©v¯~
|º®e°e}¡¦¬°
¥¤¡¡
[lj³`{{±lgn°[}´[¤kÈ¢e{¼YvµZ²}R¯z¬X¡m¨{y~ds~bwt|ajfqmfeeOUd\BT^>I(>9=4!"-%2. *1/045799<ACFHJLNPPRTWZ^`_`ab^_\[XUPNJGC553//@UZXWWWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³²·½»´Â³£¬¦¥¶¨¡ ³³©£ µ ³¨ª«¯®«¯¨¢¯¬©§¢§®¨¢¥£¢¥£©²¨¼¯¥¨} ¨¡¨®§¦¦£¥©» Ƨ¥©¡«´¶®¦»¬¬©£¯¤¸Ãº§¬¯¦¥ª~սªb£¿½}~£×º¸µ
½¾j£o«mz²°Çj«°½¬xw¢¾»t¦yzc}{dfy{`kekjbPb[Sj\@TaBN)=:4/$%2 $(0496677;>ADFGJKMNNQTW]a\__a^`[\YTQMIC?<A?5=SYXXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ¼³´±¿¹²½²¢®¦¥³¦¥¾©·±¨¡¿¦¦²±¹¨¯¦§°¬®¦£¡¤ª £§§ ¨¢ ¬ª¹®¨£{¦¨ ©©¡ª§¡£«»©Å£ ¯£«³µ«¯© º§®®suª¤·e pgmow¤u®pq¨£®¤rmmmexomqyiqigqhigpd]cjoY]g~w¦`bqofd¢|vfxhjy~ydlcflbKeXJlY:QeER'K:+# #,)-2.5:457:<?ABDEHKLMOQSV]WZ\``a]][TPLHD=:AB7MXZZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨³ªº¹²³ª©¡®¤²©½²ÄȾ¶ªÀ«¬£¡§¬º£¤¬¦®©
¦ª¢££ ¤§¨£© ¥¦§¯º«¬{¥§©£±§£¬º°Á§¤³¦¬±²««§¸£·¡¨¥¶¢©ª³£« ±¡¡ ¢ ¤¡«¦¤~gtvtq§m{¡¢riwpwv|zjlddocU`Y@i[HcaOZ+F=+&!740.!%2(*699469;>?ABDFJKKMOPQXTVY^_ac]^UQJED>9=@ASX[\YWXXXXXYXXZZ[\^__`^^^__```_YY`¦©ª¥µ·®®¢°¤ µ±«Æ½Äº¸ª¢¥¦±©£¶§©µ§¨¬¢¨¬¤¡§£¨¨¦¡£¨¡µº¨«| ¥ª ¶£§¬·§¯Á®£·¦¯¯°©©²¸ ®¼¦£¦¶¢¦©£¬¯¡£±¨¯£ £©«¡ª
~fuvysj}¡¢zrszq{jnd_pi`[`ZmcP`dP[:GGD=2==7.*&+)&&406658:==?AACHJGJKLMSSSUZ``i`eVPJACB:9EMV[^^[Z\[[[\]]__]^_`aacaaa`bbbdb\[c¤¨£°³¬®£©§ ¨µª¦´»¯¬¬¢£z¢±¤¥°©¹§£ª£®£¨ ¡¯ª¨§¨¹¶¤¥y¢©¸¤¯µ¢°¯t¤¾£² xz ª±»u¬¤ª~d\bv ¤~n³£§®ª£esyp¨l¢¨e¥
wkvq|ai[vghr{¦eyxjnykpe`vokkh\febboS\>NNNRG=@TB91/&4:316678<;>@ABFHBFFIKMTTUY\_hfgWQJ<DG;8UR[`ab`^`_`aa_\]___aabcdabaaedchd^]f¦£¡°±¬«©¥¨£§¤«¶°²¦ª§«s°¨«§¹ ¤«£§¢
u®¦¨¤º´¨ uw §³µ³¼§¡~§¢z¢®·¦
±©¯£y¬¢§©§
w¥z¦{±z
cympyq
txht t}¡~k
kx{qpgdwnilj[ekjes\^ITLQ@E5.YTU6)!09=>643568;:=>>@DH?IEJKGSXZY[aahfYQH9EL;>bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah£¦®®«¨¬ ¨°¦§©¥®Ç¾°¡¦©µ¬§¢ ¾ }«¢ ¨¢£º²§
pu¡¤¬´´Êª®·
°°®©¦|¨r{w§h¤y´¦¨Â«¡q¤}
±¡|¡ |
ms
zr|t
Åf©£k¢
p
hwt{vghupggl^colgmXhG]QL2E46M`c7&3<DGD:64658;8>==>BL?NIJLCPZ]\Wb^jl\QE=KM@JdY]cfhgbbbbdc`_babcccdiicbbbecafcbbi¢°¨©¨¥« ¤¹°ª«¦ ¤¥«£¥ª·£¯¡§¥½¡y«¡
w ¤¢¹®¤bm ¡¡¨~¡§ ® ª®¤ª~¢vk¬uM«x¨§ª«}¡{z§ikg¶}n`dY{dhr}yl]{m_Sp\_ly`Ye}q§ªk£nr¥pjel[n|fZ_bWPovemtqjjo^jomljXiO]XE9A4GC^k4,ICQMN=84859;6@;;>BO>QRLMBJ\]_W^_cv`MD:MOMTb\\ffiibbdbddbab`cdcabikdbddgdbgeach ¹¡ª£¦¬¡¶¼«®¢ ¢¦¡®µ¢¨¡ ¦´u¦
¬¤©¥±§¢in¡ ¢¥£¡ w§¡§©¬¥y}}¢pr{ym¨|¢sv¦f~v¤_z}s¢n·´ºtµ¨dƸ{p·q¤cs¬«`}j³~n}q£ls¤s¤`³q|´ts[²jbotuqhoXklrsf]i^bKD=D5QAYq3=SG_JR=<395::6D;;@IP?TMNQ@E_^[ZW``|dHC8LWUVbaZffkkbbeadc`ab`dd_`cknccddhdbgfchh£¸« ¤¸µ® ¢££¦±¬¡¡¤«xp }¨ ¢¨¨¥~k{~} w¢ r¢©¦§ª~®}z z£xt} ¦¢d¡|lhn{§}rht«tªg]
vhªj¸f\¨pa^§vuhunm§]¨~x»k~ª[]´g\nqzxki[qjxyc`fXbAPEN7VBRn4KZZ_NZC@151;;7H?:CGT?YRY]>Db^V`Qac}iEB9N[]XdfXfgnmbbe_aa__``ec^bdoq_deekecihgkiªµ§c¬º²°¬¦¨®°¨¬¤¡ £jr{z¤
¨£ ix{£ ¢rhq©£§§|°£¢¸w£³¢¤y{«¢q¡|
¯µ}k¡x~´££«¨|}~tªZ]o{xbL~zz
cyBMY¢jq|muy±³§unr}osj¤]vHec`sq~~ne`lhv|debR^W]TV@YEQgDSW[bX^ID=B8?B:IE8LDWAVQ[VDFb\Z`K`m~qEC<U_bZejVghmobff^aa\]^ahb_edvl^egfkdflihki±T_ §³¹³³©¢«©¡«¤¡¨ w
ny
|r¡s©|l
q x
|£¡£®}µ{¥z© |§hvm~t¡sq|p®}¤¦£o^¨gu£co¥aÓ|zxrsc¢
~£s£uk³`sª²¨¼wm~¾¦©´^n}qos¢r]£gt¦ah¦mÔ|oxzk{wrm©¤g`eypkgfdmuxg`cT[fQQbIWIT_WS[ej\dPECKMJKBJE8P?PMWSXORR`feiRcwywIFEc]dZhiTihjocjg`c`\]]_hbahe|d^dgdkdjmghlh±«T\K~©¯±´°³£
¨ £¤¨ © {p}h}wol}£ª
yvnx¢z¢¤ ³¡¢¶z¬§¤®¥p©|¤¢r£®¤®¢vµµµÉ¡s`©myu¡w ~oLf£pr¤{ytal~ kqd`rti{i³µ´Æ¦s~{j«ultwizurPD}³^jvkyfjgbttqnV^TYhOQhIULYSU]hknVgWMJAJMKHJNAQJPdcimetrs~y{nu{{TPOl^h[kiRjhilglgce_\]\^ibdhk{_]dhcjfomeile¡°§f?¡²«¯¯¶¢¢©¢¢¥¥§¦yjye yui
z¥©z}xp¡y ¥¨gnxl¢d|q¥wpg§{¥zrv¹n¢b}¢mri«ju mn¦`ihu¢}`
tobh e~iuocfnr¢Z_[c¡n]o{srd¥mw¢dg§hsn¡oSo _e§T]TmmskrlphkxskoRXWVfYRmIXO]IXihsjYkVQREV\LXRaThj^wuz|p||r{rvv^QrbgbpgPjhhklngdg_]^]`kcjivu]\cicjjslfkmc¥¦zetm§®¤©°±¦«¥¢¡¢¢{qh|st}|d|§¢¬
}sh¦} ª§¦x~¥²¯¥xz©t¥n¤¢»n}¥¯|¥zq¨ g~o«cw¨l©¢uw«¦k°kv³©knma«ªv¦w}
¥ iv¬g·sw¾¤Y¦«aurtp|tqbj~nhmSV[Uaa\kM]R]I]mmv`[qY[`Zgsenoqcqt`wz~yrys{{vbxdcmsdRlgholrifia_^\bkbmlzo\\bibljwmglnb¦ª¤©ª¨§®¤«¤¥©
tzo~ttrm|{
¥¥¦
vol©«£ u~y®£q
y{r¦q}}zx{~~v z}l
[yxqyphn~qtq
e_wusuoynnm^wixf©~t|jov}vmlgsy{x[kXyhnwrqoxxo]lnigVZ`W\ekcVaU_Q_pxylkvejkjv|qrtsaoubs{xuyux
}{mldxn^Wnghukxjijd\`ZcjelpunZ[bkdllymhloa¹©§¡¢¦¤¤«¢¡¬ ¦©~r|}~
{trp
{}
x~£{§¡
vr
ª¨ «~~¨¦wozo~¨
p}qkp|hm]sqtkvsYrn}~j]jd{
_ix{{vhykaqrw_s§fnwqzoegdzz[\jgnv[{xwunssf\mklbYY^ZXlr\_aZ^]ft~{uotckkj{|r{xtdmtgl{~vz|{zz~o{}s~ysiT\qiluougkhd]aXkhkjqrmW[enlgsyohjm`ª±¢£¡¨£¢~¢¥{|s}v
qor~z¦¡xz¡« ¢¢££ª¡§¦ {x§~±¦²¥k|vwe{
w|yu¡
~vptx¦
}vl|yjrhatp}zwvovt]^ohn_^Z\]ShrVc\\alhu||sopdkji{mxqioplf{rx}zm|zx|}zyNdvksmpzdkebb`[tfpfrrmU]ltmiyzqgikeº¢¡¤ {«
}y{nxr~mk~z|ªr}{ª§ ¢¦ ¦v|¥{|ª¡«~ox
qt`u~
nxut¡
t||rr{{y§w|ok~{nhlmg^zh|{vtvu{w\`p}nu`cZ]^QgmSe[^akivz~qlldkjglslltoxnynv}vq~{{|{`i{juhidjc`i\duhobumlTcqyepzzreimm·¡£{x¦¤yz
|m|xs
}}kh}|~|§p¡¡
|¨x£¡¡£¡¤~x }|¤ ¡§}~utpv`}r|r
hwqx~r|}px{zz¦|
vzer{yzqljf^~sh|uvt|sj^`tvpxdcY_^SkhTdY_ahjvxqfkclhejm~hnqk}wzks}tv~|{}jrnsiahlb_qVtomn`xhmWjtvcu{{rbjny²¥¥ |v¤ ¢x{~q{tv
~xgc}x}y ~o¦¦
v¡¡z~¤y
w~s¢¢¢~|vq}nzd|
pleuo|}x{|{q~w
y¢ww|v_xw}t~xgldaijwstu}q|bcasnusmaZa^[kdRbX`aikvyqcjcmeh|lhthloh|ymqt|~z~|mvttmeljacuViqn`yglbjvpfy|zq`rl
¦¨}xªzy{}|{xtxzs}d^}
t}~}£¡r{§¡ t§sk
zo£|zqykul{}~n
wo}~drj{tx~ux}|
¤y
t}tvn`{uzq}oaocd{bnovsxwstav_oluno\\_^^j^O]Xcahmt{k_jejchwmflhilh|zwos}sz}z}}rzxxnlkh_iqchqoewhnlayhk}{xpawmª ¤¨}w®~w~{}{vxpts{o}|a\~szz¥~|¤n¢¡nfz
p¢|{tsukqnt{tn
qt{|dqly}}tsyo}|
¨{}~
x~qp
chxtup|b^p`kt^qjzxxkspex]mlsmsYZ^`bjZPWXecgqqf]ihgbgqodigejhzwtn
t{u
w
|x
zw{zryjk_phtkromqgole|cnyvqlww¢¢¨¡¦uª t|v
wxrs{
kroznvnq[Y~vu ¡x
m¡i£f
~w~|}nvplmop{
ispwtxfsov|zyvtp{
z£|wxxok]rsqppxZ^p`pj^oi|zpmmjlv`pojrmZXaabnXQSZfgcupb]jmdbfkm`ff_hjuqrpuxux
ww
{{vjqc|b|oqltjholvw_qy{tut~¤§
uzrxtpr
tqulolumw~mnUQ«xvry x{¤
|r
h
g qx{z||kvjnkklzay~vzw|ygtlt{qzpvz{}
}|x}wqjly_womlrsV^obr`_lnypgpffsthqkawe]Vfa`rSPN\fe]yp|_]hrbbefi_hd[gp~pkps}v|
tuy{xs
~{ywfrj`~ookz`jntt_t}yxts
|x °¥vtvspo
spqpkivnn}|musRNßÈÖ|otv w{s
¡~xz~yvgl£cq{{y
{~l{erokkyy\yz}~zyhsks
}k~~n~}z}wxysmgpmjtohjtnS^odpY_krxfkjbfxrppc_x``Vk_^vONL`gc]yqt\\ev`aeed`faXissnkqv|tyuv~s{~r|~vesm|e~oplZlnyysavz{vswwy®
w~}
twpyqnomn~rddxq}mz}jhlc¤ÁÜ®ï¡skuv
¢
o q£
{uxvvn}£
^m|}
v
}}k}dxujnxsXz
z~
~xesj
kvnzutxusqguzbtmobivgR`qglU_ntyarc_h}prn[crabWnZ\wMMLdga^vsm\\dy^`df
`cb^Yjrknkrv}twxw{q}~{t~~shuqymzntpXqzvyqewyiwr§£|pxy
¡{{rwpsjokil|t^`xw{qu{gae|ëÚµÉÃÜslswiq
|{vxrvp¡ai}}q~qwhvriswlZ|
|uatl~}mlx}}orzulqlrx_sin\kv`RdrifS_pvt`o`]hqsjWghciXmV[uLJLeg^brs
i[\ey^^dg{`d_\Ykneojsw~ss~zvzs
|vw{vlvuyxtnxz}Xy
qogywdv
q
¡¢sorw}|xqsnodr~hflww[_y{{qqiagaÕ¶¦xnqw{pj
{i||~
zu{zpuv~a
g}~~m|tkmvtsvukb
~|~p_sq
{|~zpfy|~npzunoklz}bhjiXmvZRirjbQbrxlbe]Yjmsb\g_dl_nT[oNHOge\gnql[\cs`\clwde]]Zllbmjsvqo||txx
}uy|vowy{pm|w^tmi{ssgs|r vv~mv~|v}vqoljat|gbiuzZ_x|zmqedhhW^qr¼Ãuq~rsk{|}|u
vw}quru{e}r}g}{y|i|vfoxxsvslj
xk^rxz}
{~rix
x|}nm{}wuohh}vd\pbWpsSSnsiaNftxf`]\XnosYeb]jm`pOYkQDSgaZknm{oZ[^mcZbowcf\]`ljcmjsvqn~{tuz|
v~xtrxy~oo|qiyz~mm|vkjxtl
n}vjxyozspljd`tzh`eqzZar}ygpzaee±²wJbZ¤ÙÐq{x}
olzy|xxpqt}ziy
¥o~vw
p{}oxh
xr{e}~udpshxpou
{vxyk\q}r
}zrnqsxxnow{ehj}q`YwZXqnNWrsg`Klvta][[Yt}roWg]fjq_oNWhQ?Yf_Zpkgyq[[XkeYcpy_h\^emhfliqwol}upzv
qq{|yyujzko~t}or|{onxg¡gohz~
|ixrklf_aoym_boy\dkzaqv_efÔê¾2:>ry
v~nl
v}
|xnvwo
lu{tfy§}ntvy~{xlri~xm|{wayqdqh~mtqu
~ru}ro[m~tx{|xzqlrytnkwuu\iiwpYW|SZqeL[rre[Jpwo\[ZY]t~uhYb[gfnciLWfQ=^f\]ue_tp[YUodYdqyZh^_gmgjkipw}li~yn{|zu
pnx~z{h{~kt{r{sw}yx}|kl~kh~{~}kuqghc[bgro`altahpybst^cd n\5Y¯µuj}vtwpm
uyx}zsgv~~oq~hvymey¥~n~u}|q{}|i~mk{zjzvr`w~qdrgumt{
|nwy|t~lXovtwuzxsn
r~}~znnjnun]gfsqQ[{N\q\O\rpdVKsxjWYYZaqt`]]`gdhifNYhM@ad[`va\tmXXStaZdorWj^ahkgmlipw|kh||p~~{zwq{oqw{j~{nwyvw}x~~zm
£{uykly}{~prpcf^Yg_pp``gpfjotato[adjv{¾¦£È¸q
s}xtrrp{tutwyyqcwzirvfwvcj|}r~syxzlxyuh{ikysizv}h`w}jkth{iv~z~~p{v{s~bVw}rs|pwxpp~}y~|uviqimrp]hcsnJeuL^oVTYsnbQOsxaRXX]bps[a]hedcjdQZpIDda[cp^]whUWVw^\enhVk^ajgeoohpvzniy}r{~x|v}pvrnw~p|xyzuxzuo~}
zw{gt
z|vgon_d\XeYmra`aqlkhn`siY^dmw©Ú©Ç²qxpu{zutu~wpqmtxul`zyfqogvn[m}x}x{mus
{
muvnhwem{vmjvw|`bxzhtuc~zgt
{tuqz|lYVt}otxksxku}z}x{r}sgtenmt[j_udHnnL[bWWVxmbPStvXPUX^aqo\`cmec^nbT\rGBf_]fh]ZzcRV\u[[gkaVj_`offkqhpuxtkuvx~w{t~oqtqu~
{wx||
x|}~{~svyzvty^}
yt
w{bnl[b[[aVjsc`\gnofqaqfW]ck|Êι¢jmmlqr|~{
zytyuu{jlucuwpg^}zerkjqcXl{sw~{nqq
{y~qqo~ghrbnxqjkqw||y\eywiuxfvgt|rio~xm|]Xq~ls|nnqvhwv|qzt|zrfsanlsXk_w[InkMVU^TU{kaOTurQQTV^bt
h\`ljfcYnaXbpGAh]`f_]U{^OVdpZ[jh]Wg_^rfkgrgprv
xntzx~yus
pp{xvtyz|u~}
~~}|xvyw|mvycso
ztcnjY_[]]Tgse`YdrrfsbkeW[`iw¾®{ ·mbsht|rzz}xxsvo{vejn`usjb^~xyfq~hjkZVox¤
qqxumr
}ytrohzajm`mvkgjkywzw[g}|xer}nteu
ofkztltb\o{jt{{et}mqgu~x}r|lzzzxpflbn~mnVk`wUJjkOROhNY|hbNUvjLPTU_gvf]`qhgaWi][khJEkZbdWYUyZNWnjY]le\Zdb^tfmdqgrotwp
v~w|
}usnsxzyrr
y}v|{~{w|wwziw}|lrq~oflgW][\[Tdpe_XcsuivpeebW\\hporteex~itvssxywtunk{pagkgtnf]_}p{~imwfidUWrp¦||vs|s{ym{{v|}uprlgu]mh_ludgfizo{rYgwugpwubw
|njmzpere`myfrw{~buvikqtzpyxr}f~ywncebn|mkVjbpSKikOLOpG^{faMUtcJNSWajv~e\gsie`VcWbp]LKkXcaUTUsWLYudZ_ka\[cd_wfmbpisnq~ttww~
z}u~
nrt{ztp
zut}
}~{~v{£¥y
lu|{uzn
sz}unjheV][ZZSbne[Xbs{jhmi_bW_Zijkohlahyxktttn
{}vumzhjyj_enhvgeXbwi~{oiogf]UXoh§vz|yuo~oruxwt
vjrvgho\me^ms_gaixh{m[mrsio~ywawxsqoyqbph\owdqs|xbspgjxsrkwvtwc{wvodccn|}klUibfSKmhOGRlEaxfaMSr]IMTYekwze^mpid\V_UnnWKThXf^XMUlTJ\y_[_k]]Zbe`zhlaoounowuz}wzzyz~qtt~zvt
}}ls|
}~{v¬zlrzvuno|sjomddX_ZYZUbjg[Z^ui^ml\aV\\kfrt}jj]kvvgtwqm
{}}yvrlzhixf]dshzwccTepg
wwfhj`WVYhd§n~xzpp|fxny{vq}~ndvsdhh]kb]oo[g_luezh]torkq{}uubt
zwru~taplYqtbqr
|tdrlalzojhywtqf
uzzupdadns~ilTi^]TKscQGWbGbvfaKToWJLXXglvzdenpfcZW]XveTJ\cXhXYIWeQHbxZ]_l[^\ad^ij`otxmonvyr}}uvx}suuxzz}~jt{}~
zz~|sq®{{~frzt||vrol{~lzbpoae]eVYYVcfk`]\s
iYpnZ^WZ\l{cpwvlb[mstguupmx~ywnnteite[gufvvz_]Refjt}bci\TX^bc¥hyt
xmnygwm{zurx|xhevm`fa_j`]tkYe]oobze[w{knnpwxstdr~zvor}rawd[opbpq|sfqd^nvicfyztmnut}sqb^fno}djShXYTMw_QJZYHbtcaITmSILZWilr{bllsbaYZ[av[SKd]XiSWHY`NGiuX^am[[_bb]
hhanxylnjvyn~vttsqwvw|}~~~px}yxy}tsp¢{zyduysxulto~ly|pr^pn`gblT[ZWhcmf\\qeSrn[ZXX`mwdiujj^Zmsqmtstj
|~|wnnldiqc[jrdtvs[WSdarr]bc]SZ`[cerq
tljylooz{zqv~rzzzdfvg^bZag\^whWb^ohawa[{vjirnwssthp~vsjp|lfvW\kmbpszsfo~[`oqb_ip|lks~rqxkp`[elmzagSgUWRPv[RPZRHcsb`GUjPHOZVklk|emoq`[ZXYlpWRPfWWiSTFZ\OHruX_cmcXa`a]jcdmyxkniuy{k}|y}nqowz|t|tx
uspuo¢t{{fxon{ofxpzlsvrk^tnagekR][VgbllZ\qdOon]VXUgjuhbtee]Znunquuzk||wsddkna\nmcsxkZTVbcx}}q
]c_cT[`Yccnp
sjhznervs{lztuoz~u_frc[^WbdYaueU_`mdaq]]~phisqspuukm{
qrfn|oqnS[fjfqtvsblvUbqj[_ne|elu|rrsjm`Ydjjw^fTdUVPTmWQWTPHer_aFWiNHXTVnid|ikwkaW\U[tdSRWhQYfTSHZZPMxw[_eliZb`^^nbfkyunohvvm~{krgt{u}r}
{ss}vn¥swxnz`d|pfzsylmqvgd{lcfghS^^Tg`lo[^nhNim`TVSogtlexde]Yptmrzxsm{v{zkaelm^`ojepy~gZVX`kx|{p_b^gVY`Wdbkq}wkjwl[vqkyiurmo{rXjn_Y]VbcXeqcS^aibblZ`~lfksunmwvkh
zmqfp|lqlcY`hiotsr^ilReqdTbnaybpv{ukpmk_Xaght\eVaVSNXeRO\OOHeo]cGYiMI_KXmd`xhn}d`U^T]t[TR`fN]aTSJ\YPYuv]_fmhXca[^pcgjwqsmhvtzsz~|zntlst
z}|sstxqn~zz}~~}}~~}~~~~~~~}z{|~~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z||}~|}~}|}~~}~~~~~mfggggg}
]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDEB1/////,¤ ¥^*///0,H
}}{{z}~||~}}}~}}~~~~~
g_```_^yS7¤¤¤¤¤¤£r]____aR4555553~©¤¤¤¤ªV:|}z{z|}{|~}}}~}}~~~~
|y{z{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{y{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~~~~~rtx|||{||}}~~~~~~}~~~~~xrvy|}|z}|}}~~~~~~~~ssvx}~|y}|}}~~~}~~
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxz}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvtuvwurpqklrpghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkiffggghhgmejfhehgcbbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__ac_\_]`]^Z^\]^bi`]^ZY_[XWSNMKKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{yvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSTPMJMNPROMPP\W^lWURQQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTtsuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPP`W]rUOOONOPPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKLFDFJKLcT[tVKPMLLNOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBA@@CCGfTUuSJPLIIJHHJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:;>><ED=?Jc[UpKDFHGFGBDDDFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@;;><;;<<HL=>Udb^gOAEEFDFFDFIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprtusqrvxy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<979;;><Hbmhfl`FC?LCCFDCCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqusurqtxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::979::7==89UlrkjpkN5JX>@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqsusurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==?@===?C@OB<Xnqnlsq[CcU=?@A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCDA?=>@A?@;]m?RYJRkokgrrf_jH;>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVppqssttuyz{{|~~~~~~mLPQNOPNNOPPO><<=>??@>@@???CFD><<=@=8:;nvGAb]\inhcqnklf>9;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}}~~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABA@ZQ<<=KNHHvvM8WjhknjoqnmlV::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@CsyH<_z{wV;C`strouqno`A?==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy|||||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCE@Hryke}]>?GhxurspmlL>EBBBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqprutwz|{|{}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Fot~~}uLBCCOlwx{zq_EEIIIIMMKECFGHEGEEEDDCA?@>>BFJJGEEGFFJNNKJIGGHKLIGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEhs}|~y
rCDEECd
^FIJLLNOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHIHGFEFFFDFHGEEHHFHGHFQnnpqrvvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJG`{x
mAAWu
WHLMLMNLJGGGGDGGGGFHFHECDDFEDDHHCCCGJJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrswwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLN[|
Um|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD?>?DFHDEGIJIIHHIGIIJJIHFJJJJIJIJJJFILLJJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLLJV
uIIFB??@???<<<>::<AA@><998<<=;>;9;?AB@ACCB@ABDDBCFHIHHHLMKGIJMMNMJJKKJLMSloqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJJIf
fBB=88::9878896479;<:8567789787688;;;=@;999=<>;;=ACEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIi~T:8656766645763468:876565676778:77789;7578979876:<@GFIFIFEFOSRSSROPPRTepqsttwy{|{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=ECBf
H676468874578467699766765:::::;898987779:98878589;A=>>BA?AKLOQPQOOORWkqrttuwy{z{|}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B:=rz>988;<=>9:;<89;9:;:99;:9===?;;<=:>;9;;<;<<9:<8::;:999<?<=ABDIJMKIKLWorsutvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<:89989:::;?>H~
l<;>BCEEAAAB>@B@@>=>>@???@?@==?B?AA?A?=@@@>?A=><;:;99;?=;;==AACABCAXpqtttvy{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<=:;;==?@BR
^>DGIKJIFGGDFHGEB@@CECCABCB?@DHECEDEEAFEFDEFD@B?<@>=?@>???>?>>:;=<`qrttvwzyz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@CCFX
WHLMMKNJIKHIJJIECDFGFDCEFDBHIKHGGFGGEKIKIJKJCFCCDBAACBDCCDDCA=;=@hpsttwwzx{||}}~~~}}}}~~~~}~OA>=?DLK@BBA98<>;<;>@?A?BBGGJY
PMOMKNKJLJIIHJFDGHHIEEHFFELLMIJGGHIJOMNLLNKGGGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?EGG=<@@88<;<=:?A>@@CFIJQ`
qMQOMLLKLJHGEJHDJHGKJHJGGGKLNLLHHIJMPNPNMOKIGIJHIDIHHFFGGHFCBACUnpuwwy{xyzz||}~~~~}~}~~~~~TDAABGGB?8?@8:<8=>;=A>?@DHJLUq
_RRPMNMKJGFBGJGLJFKOLKJJMMLOPNHIKLOQPPQOOJIJJLJLFGHGEGIFEEB@BB\orwxyzyyyzz{|~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAGKLPVy
|WVRRTROLKJDEFKONOWVQPOQSRMSTOMSLPSUWRSQPLJMMMKNGGJFFHJDDEEBDCcpuyyzzz{z{z{|~}}~}}}}|}~~UFFGGGGHF>@B=?==B?CCFVNFNPPTX{
gVUkaERQQPI;;QSR`u]UVTVYYRYXRZfPUWZ]RTWQPNRPPPQKKKHHJHEFIHIHIirvyyzyz{{|z{|}|}~}}}}}}~~~SHJIIGGFE??AAEBCGEDELXRMTUVX[|
}al[dU:XXXSQ?@VUY\d`VYbr^]V]ZVEQYZ[Y_TZgRUVXTTVTOOMJLJIILMKOMSosvxyxwzyz{z{|}|~~}~}}}~}~~~~VJJIHGFDDBA?HMIMPKIKPTSSXZZ\\x
g;~ynpXZ[ZRTRVVTZZuYU}a\X]^WIV]][[_YIYXY[]XXYWRQNPQMMOSQQURassvwwvxxxz{{|}}}~}~}}}~~xy}YNKIIIFBD@A:PQQWXPPOQSTTXXYZ[n
nfYY\YSUTWRQWVcQerXZW_hP`f[[X\gaGOZhg\[\]]WROSPPQVVVVYZnrtwvvtwxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[SSQORRRUSVTW_ux
}{\PUXTRTRQQLOMKfyZ]TYUV]ZLTZTST^ZXWWWzkXZ[\^TQQPINOWVXZZdqsvvttvxyy{{|}}}~}}}~}}~~~zxwvsu{tk~~kry^[VUTROKFCDAM^lVRSNOQOQURSRRTcdv
~ymqVIKMNKMKHJDFHEC>ScURQQMKRTQMOYQMNQSUUMQSRPOMLHCIHRTUZ\mruvussw{zz{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YVPLILIaltPQSNQRQR[RSRQRVUbs{|}{{
u_]KC?CCCCB?DPBD@C>BHGV@HNMG]iQHGOFDEFHGHBCHGHKGDAAD@OPMSdstuustuz|z{{{|}}|{~}}}~~||}}vt{mh|gnqfiedb[XSQPURsWe[OONLQSQUYSUQQTSOV`klrv{{xytrnstsyx~~kLG??;;>@@??>kQKaEFHIEB?GLMGMQUIBE?><=<==?=?ACC?><=B>JMFUnuuustvxz|{}||}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljjf`[QRZ\Y^IJPQNKLQRQTVTWRQWVPX[b]agmmlokh`nrjmlqu{z}{xz||xwxdB@@B=:BCAADB\]O{NOONKLMOOQLKLWNHG@B<977599=;;;8989?;BH?\ttuvuvxz|||}||}}~~|~}}}~}xuvz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIGPRQOMPQNQRTVXSRYTNYZ[WY]^^`e`]^qvk^`gkwooljonnlfbXGFFHBAGIEEFDMRPaWRXQPSSRU[OOQWPMJCF>::6487979:366795<B=essvwwyz{}}||{|}~~~{~~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMLTTSQQUOLRSTWXTTXQLXYZVXXVXY]WWXhsk]Vaskaa_]da_^YUPMONLIHJKIHFCQPSZWTTNQSYS\eUOSTQNLIHC?A9988978857578599Gnrtxxz{{}~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOUVXXYSUTLKTUUUUWPTUWTUR]n^RNY_[VY;DVXT[fJLPRROMMNNNLJFQPUYSTNJOOTST\VRUSROMKIHHF??=:787659967665Wpqtwyz{|}~}}|}}|}}}y}}|~~~}||}}~}|rvqxxrvuqqnppopuvtnjddjppqrpofedc\^RTZVWUTWTRXXYYYRUOIGOPOOMRJOPPPNNOTLMIPOSTU2<XMIAQ=caQSQPNPQPNNMQNTRPRMILKOQPRRSTQROLMKLLHCBA=::876;B4566;eprvwx{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqniihpVVTUXUWURWVUZYXWUQSFFAFGGHFJDHJHGEHLHKHFLMPMG/E_R>3@>joaRRQ@FUQPQPQNQOPOLJLLOPNNPQQNPOJLMMKGEEDB;=<<9=G6676Dnquwz{{||}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknbePSTRSUOWVVYYVQQQO@>;=?@BAC@BEDA@GHGHEFHJNKEGCORC8ENS]fSQSAGUPOQQPMMNMKLKLNOOQMOOMHLLIKKLKHFFED<AA>;@E;<89Tqrty{{{}||{y|zz~~|{utvrvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpknqmimcLOOMQSLTUTWWULLKH=987;?@><=@@B=>EHGDFFIGKJ@FAA@FHEJOHPRa\QPRNSOOPLLOMKMLMON[WKMQOGIHCIJLLJFFFE?BC><BF?B?Adquw{z{{|{zzw|wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B>;?A@@>ADIECHHIGIEBB?>=CBAHJEMObeQMNNWKLMKLMMMLKNNSdMJLRIIIEAHJLMNJGIFBAB@?EFEHDKopwzyy{{z{zwtxux||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLMIMPMPOHKE?B=999:?B?<@BAADEGKFCIIGGHCC?B??@A>DECKNQTLJIMTGIIJLJKLIJLMOPRPKGCKGCBJJLMOMIJIGCCCDIJMLIZsmxyxz{{y|vrpurtyyvxjqokllnttmtu{stxronqovsnporpopstyjN`gsjt|ygosqjqheqHKDGHHGJKIJKDGB=>=:::;@B?=BBBCHFJLJDIIFGGCC;A@B>@@CDCIMPGIKGHKDHIKMHJLHIJLKM]RIHDMGADKKNMPNKMJKFGGJMNQNLcniwvw{x{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoijthdoFKDFEGEFFGEGBC@><=9:::@D@>BCDEIFJJLFIIGFFDB;BCC>@DDCEGLNHKNHDHEILNMHILGFGIILNKJHENIBFMLOMOMNNMKHHJORQRNRfgfrosxu{z|lhjnekpmsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGJCEFEBCBE@DB>@>:;;=:=>CA>ACEGJFIHKHGGGFEC@=EEB>BCCCEGHIGMPJFFGKNOKFHJFEDEIIHKIFHPKDIMLPMONOONJJIMRUTROWd`amgproryzgehhcilgqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutvlkuumrvqlnlerMGEEGCB@BD<BA>A=::=?;>>@B>@BDGKFIFIHFFGECBAAFFCBCBDEEGGHFLQLIOJJLLIGHEFEDCIHHKJGKRMCNOMQOOONOOKKKOUWVUTX`^\iaminhrsbefedihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwuksunutsqrjksMGGFHBB@DE<AA@C<89=>9?<?B@@@DFHEHFFGFEEDCECDIECFEBEGEFGGEJMKHQMJKHHIEFHIFCIIJKMKOSNDQRPQRNOMNPMLNSWVWXVX]Z]d`hbjigk_eefcgggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxnouorsuqqiozMHGHHBBBFE<@BBD<7:>>:>:@B>??CEFDFDDGEDECDEFGJEEIGCGHFHGECFJJGMJLKHJLFIIKHEKKLMOORTOISUTQSPQMNQNMQWZVZYVZ]ZXa```^hec`dfhgjhhjfhnllnmqpiuuxrrpupppruvpusuvu{~}xvtwvvvxplupmsunprsyNIHGIDACHE<@EBE=8:>>=<<AB=?>ABFCEBCIECEEFGGGIFGKHCHHGIGFDHKIGKHMKJKLHLKMKJNLONPRUVOKUVTQTQRLOQPOTYZZ\ZY[^_^`b^\ackb`dghr
hgifjmnponsqjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqvquMIKHJEBEGE<@GCD@:<>@?>?BB<@>AAFCEDDIEFEGEHHFHGIKIFJHHKHFFLHHHJGLLLLLIMKMMMOLPPQUVWOKVVUSSRQLORRQV[[]^[\^__a`ad]d`ef`ehjcssfjhglprqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrvovJKLJLGBEDE<@FDDB;??A@@@DA?B?ACHBFEFHFIFFDIIGIHJLHHJJILJFJKHIJJGKKMMJJNLNNNPKOPRUXVMNTVUSRQPLNTSRW[^^_]]`_aaa`bdeachbdijgvlkigmosqpqppryvruutsmmssmqrotutrpswtuuwvuuueqskpqjrvowJMLLMGDDAD<?EEEC=AACBBCEBBDAAEGCGHHGFJGCGIGGJFILHIJMKMLGKIHLKNQKRQLSMKNNOPPOTOWXX[NSQW\ZSVPNTUTTXZ_bb_da^`b^`eaabhmgbihhmxvlhimosrpqrrrvtsusssnksqmprotvrqquvuswywutucmtkopjqtowLMLLLGEA@D>>DEFC@CAEDDFCCEGCCIFCHJJIIKGEKJGHJIIKHJJNKNLILHJMKZfJd\KlSHON_nUks[qpbwcRPbvuhucav`Xnqbdvinzf[lt`ljT`wuhjgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqrqyKNJKJFC?@B?=DEFDCCBEEEFBFFHCDJEEJMMKLLGGMIGIKHKKIKJNLMMLLILLL[sbdp^lmUMNfs]feqlntgpi_aYnnbppbkjjgoqtetno\ougpMJryvkb`keemymkvlnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIIGED@BB?>CFGBFCEDEEDCHHGDEKGGLMNKMMGJNHJKJILKJJKMMNNMMJMMM[roonpplkMPQlWNibtrpamov\YlQ\mmZqmkomxxtsip\_rkqjUuyxpc^kfbgqpjioppsspqpqqrrqqrrtlmrmnnorutqtrtuutuuzvutenukpolsrryJKGHEEEBBB=@@FGBGDIEEDBFIHHEGKJGMMNKMNGLNILKIJMIKJJKOPONMKNML\hdu]lqWlNPQmUZk^klvaldtTecNmYl\tpkilxjwuhp]^rkhWbcw|oc`ggadjuyknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvIMGIDEDCAB<BABGDGFLHECCHKHHFJLLFNKLSRLGLLHNJHHNHJJIHNOMNLJNMJZsppoqqmlOQRnYqkgooqqomt^nXat_nnooqronusttj[]tcwxrjnzhaacfbbjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyytukoumtonssvsHKHIBEEEA@>CDBGCHIMIFCFJLIGFKMLFOJKWRKGKJJNIHJLIKJIHJMMMMIKKKSkbZi^_icrrZ_Yjo_eeUk_c[abQ`lh]j\niid[pfdp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunvqrutwrHHFIDEDFA@AEEDGBHJLHFDGKLIEFJOLIOIL[QJFHHKMIHJIKKIHIGKKLKFHKKLLLKIKLNT[\TPTLPONOOVQOOQOOQJINPQdqiTYW[[\UYZ]X]\\cfaafbce__fkmhmtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusHDEGFFAEC?CHDFGCIKLHFDGKLHDGHPKLOKLWLIEEHIJHIKHLJHFHGJGHIEFLIJKNLIO\W^P\[`^OXYS\\b^MYZMXaRJYaZS`d\aX[ddVVX\YZX\VY\]b_d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCDLMACDBDIEGGFKJKHEEJJJGEHHPJMMJMSIHFAHFJIKLILJHFEJGDFGEFJHCJMJKT_Y`X`a[`UXYT^^Z_RY\P^\YN^\^S[^c^Z]`c`Y_b[`^[TXXY^]cbbaceiekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIDBBCFGEGGIKJIIDFKKKFFIJNJNLHLNHHF>GGLIKKJLKIGEIDCCEAFJD@JLJO[cY_^a_RTSW_`\]Y^QY\MV_WKQY[PZ_aa^^ca`bbbcceZQYVU\Y]c`__cebhommllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQKGCGEBEGHFGHIFGJGHFHKILDDKKNMLLHJJHJG?GFNKKKMKKKIGGCD@DAHIB?IJHO]aZ[d]_TQSX]\\\_ZKW\LR\YIM^PO\_acdccb\dcbdcfXQUTS[XZa^^^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMC@IFCFKIFFGIGGIFFFILJNEDKJLNJLIKJHIGBHHQMKKOLKKIHGED?ECHHAAGFET]Y^X_Y_[]UXXP]]QKJW^X^[]VZ`RQ__bba`bb`cbaddbXOQQR[S[]]]]___dhgljnnp{{|~{
srw
|x\SKBAGFDGMRHCRKFHHHEFKJMPEGIJKNLLILKIIHDHKQOMMPLMKKHICDAEDHGBAGECWUE\T]SV_XNTUNZ[MJKU`a[_X_^a]OYb]``_bcb]abW__TPNPQXR][[\\^`bffelfoow|{{}
zo
~INFDEFGDIRbPDW_IGGHDFMJPPFJIJKNLKKMLJJGEJMQQNNOMNLNHKADACDFDCAEFBMHCLLPOOLFMFGIJHGLLMOPILOPPSPLPTSUZYWYXXdWOSTPPONPUT[XYZ]\`adecgcklpsszy{z~{}{
}KIEEGFGDKM]LGHYMGHJHGNLQQILJKKNNUNOKKLGGKPSSNPONONOHKE`ED_LDfcEM[I_\smOMVmYLCP`UlWgJ]WU^DMQULMTVQSTXWTXUT\UPfZhhdXSkSVVU[\[``abbb`fhfnlhrz|}~}|zr{z{
~z{LIEFFHEEKOSIKF`THJOJIOMRQKLKLORUROOJLNGHMQ[YOPPNOPOIJPQI|YYrsXPmHqnpaVPqqsPBksmqspSo_[nX]V\XUkhU]VcZ`Y[`VUWjtuu_`w`Xa\\f[_aaaa^`bgmpl`pwtx}~vxzlv~tx~|~|z~wwNIEHMMBDLLFJLFQVLKOIKRXWQNNNLQTNOQPKLOGMPS[ZTQQOPPPJHZx]TxehYRTQvgtlpbnfjQrOMwmjrpsrqrpop]fzuxqqzq~s}ku}bRg|essoss|}o}yor_``bbZ``gknkblfgmw~~{xwtvzir~nt|~wx{~x|u|||ssNKF`]GAEMMHKKHJPOMMJNV^YULQSNXZLSSRNLPIQRTYWWQTPPPQKHfxlcxrmZKMUypumubnvPdeIfvqmwojfxxiXsRi{mijzz~lxzogoXvvjuup`sh|ilx|o___cbZ^cdfijdgbcdllppstsssyqrxblugry{ssuy~suzn|}yxrnNKStNCBEPPHJKJLQOOOMPZ`ZXKTWPa^RVQYSMPISTUXWWOUPONRJKrouuquqdibWnLqp^FhyWvTLhx}x`y{sna^modRgrunmypwlvttqlm\t~zkmy|lum|kpvux^__b^]_edighfe^abiiijknokqnmjpacfdowxompsy~nqpj{ztromLL[VHGEGRPJLMKLQQQPPQW\YUNVYUfXRRY^TMNITTVWYWOSNNNQHRmHiwK`dvvVXlOnl{sajgvUKWkh}lmlx`[pz{^`zscroxqhe|ir{]TKl`vukiu{{m~xk|p]^^b[^bddgeeebZccikkrsrwgmihdg`alagsrkhmmr|kmhk{tmmkmOHJKHIIHRPLNOLKSSSOSRWRVTPWZVVTTTa`QONKTSSQUVNNLMOPJHQNPULKKSTSRTPVUQQNQQXXQNPUTXXX[[URSW[WXWZOSUWWXR]YW]VTOYRWWWXY_[gr^[[Y\]_cZ_ccdfdccbZccfffmnmuffgc`f_]g`dlhfgkhpzhggkujhgilQIKKLMKJSQMQPOLVVTPTUXUYURZ]VUTWUYXPOLMVTQNUSNOMLQOJIQRKQMKKORTRQQSSIHLNOQRQQQTVRXW\WSSQRUUVSZQOSRWVTYVTYUTRUTTTWXW]Z^a]\ZZ\\`c\]bcdgeedaY`acabhhincad^_c]Zd\bma^ffgmsdihkkeddfhPJKLOOLMTPNSQQMXXUTUWWWZVT\`VWVYUXTQPKOWSPNUPNQNKSPLNUTNQNMNQSPTQSTUNKMOQTTRRQVWUYZ[YRURTWWWY[TOTUXUUZUWYURRXVUW[YZ_]UY^\^]\]`a^[bbchfedbX_`b]`hefda^_]]^ZZ_Z_g`^]]chkagfhfd`bcaPKMLPQLOTOOSQOQ[ZXWXZZXXV]jdVXYZWVTTOKOVTPOTPPPNMQQOQXTRQOMOSVNWRTUUONMQSUUTTRTXVZ]\ZVVQRWXV[[WQTVVVVYTXWTSRXVUZ]Y]_^V^]^`\\`___ZbbdhhedaYb`b^^fdc`b]\\\\YZ[X[a[^]]_b__bddbd__`\PMNNRQMRROSTQPU\ZZW[[\YZ[dqmhd_[YVVXRMMVSMNROQROLPSQUZUTPPLPWVRWSSSXMOPRTXUUUSUYX[^][[VROUVV[[WQTWVWXVTXZTSRZWV\^Z__`Ua\aa]`b_\`]cacgide`Yc`a__ee_`c[Z\[\YZYYW\Y\[`^`[^^a`_b\Y`ZQNONVQPTQOUTSPW\\\X^\_W\^jqwyc\[VVXRNOWSNQQPRTRKQTTYZWUORNSXVTSTRRZOQSSV[VVWTVZX]^\\^VSNTUV\\VRTVVXYSTY\TRR]XZ]^\`a`Wb[cb^ac_\bab_dgjdf^[d`a`ace_b_YZ^[\[YXYWWZZZa\][]\\Z]`W[[ZPOOOYPUURRWRTP[]^][`\`U\]ijr}slg\UYWQOR[SRQTRTUTKQWV[YZSOSRVVUSOVRSZRTUTX]WXXSX\X^]YZ]UUNVWW^[XQTUYYYUWY[TSV^Y]]`]bc_Y`[eb_dd^^cca]egjdf^^da`abcd_b^XZ_[\[XXXXW[Z\`][[\[XZ[^V^Y]POORZPZTUVVSTT^^`^^b\aU]^bkytl}lZUZUQQS\TUTVTVYWLRZV][\ROUSXWVSPXRSWSVUU[]X[YUZ^X_^Y\YRWRYXY_ZZSTVZYZVXY\VUZ^\^`a_dd]^]]eabfd^^dc`\gehedb_da`a`bb_`^WX^Z\\ZYYWV]Z]^ZY[\[WY\]VXW]SOPWYQ]UVYWWUX_`aa`c]`U]^beeuzhXYZTVSV\XWWVVW]XPU\Y^]]TRXRWVTRTXRSVTXXX]^X][U^_X__X]VQYTYZZaY\UVX[ZZXYYZXV]^_^cbaee\b\`fbdfd__dbb[fchecfaf__aaaa`_^VU]Y[\[Y[YY][[[XXY[YZZ]_]TY]UNSZVS\TVWYWV\`abcad__V[`da_zuohY\ZUWUW[ZY\YXY`WPU^[`a\TUXPUWUSVVRSUVZZ\_^Z_\V__Z]^Y^VSYWYZ]bZ^VW[\[\[[YZYY^_``dbceebdZbfcgfe^ab`c^cciddg_g^bbcaa`^_XTZZZ[[X[XX\[Z[WWYXW\[\`]V]]SPVZVVZUXUXWX]_badada^YYadb`lfh^\][VWXY\\\_[Y[bVTW^]ac\RVXQWVWVVVSVTX\\^``]a]Wa^[^\[^XVXX[[_`\_XY]\]^^\Z\X[_a^`dcdfffbYceehgd^c`_ec]fidei_f^cbcaa`__[XY[YZZXYXW[[Z[WXZTY]\Z`\U^bNRWYVWZY[\YWY^`badada]^Yacb_a`a_\\]XW[[]]__\Z]cXZX]`cd_RXYPWVXYYWVWV\]^`a`_b^Ya]]^Y]]YXVW[\`_]_ZZ^]^^a\[[Z[_a^bdcefefbZdfgigc_c^afeZiibfice^bbca``_]]ZW[YYXXZXWZ[ZYWXVU[]]]``bbxLWW\YW]\\]ZW\]_`bdbba]`Xbcb`cab^\\\XW[]_]`_][`d\\XZcec`R\YOXWY[ZYXZY`]`bb`ac_\b]_][^^YYUX]^_`__\Z^^`bc\\X[]`bacedgeefd\efhifcbb\cg`\iibhife`baca_`_]][Y\YXWXYXW\[ZWWXPXZ]acffrkJYW]ZZ_]\^\Y][^_acbaa]b[bdb`ccb]\[ZWXiq`\`_]\ac_^YYcedaS_ZQXW\]\[Z[[c`cbc`bda`c^`\^^_ZXV[_^]aa_][`abeb_]T\_`cddfdgfefe^efhhgdd`[fg^ahhchhfc`b`cb___]]\Z[YXXXVZV\ZZVVUMXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vuuuuuuuvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{{||||||{{{{{{{||||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vutuuuutuvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{|}}}}|||{{{{{||||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||xÅÔÒÒÒÒÔ{}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½F(+++*%c~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}xÕçääääç{~y1333332j{éääääèÊ;]}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}v~ywwwwwwxyyyyy{xnoooppprrrrrrrwzyyzzz~||||||}}}}}}}}vssssssy}}}}}}}|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vtttttwtvwz{x{xwvx{y{zy}yxxyxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{{{{{zzz|}}}}}}|{{{{{||||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwwy|}~z{}{wwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwwwy}||}~|wxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z|ywww|yy{}~|xxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzz{|||~{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyy|{{zy|xxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyxyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{{||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}||}}|||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqpponnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrqppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpppqrrqqqpopooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpooppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqqpppppppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqpqqqqpqpqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrsrvqrrqqqrqrrqqrrrqqqqqrqqqrrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrsusstvstsssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwwvz|~~|vvwwvuxzxxxxwwwvx}zyy|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxxxyyyxzzzzzz{{{|}~|{{z{|{y{{{zyxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}||{~}|
~}||}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~~¢
~~~~~~
~~}~~~}}}~~~~~~~~¦¢~~~~}~~~
|||{|}||~~~~~~~~~~¨£~~~~|}||}}~
©¢~
}||~~
«£¡
}}}
¬©«°¥
¨¥ª
~~
¤ ¢¡
}}~~
~~~~© ¦¡
«©¡«
¢ £
~~}|}
~}}}}|
~}~
¡
}
~~}
~
~~
~
~{z
~}}}}~|{|
~}~~~~~~~}~}}}
}|}~~~~}|}}|y|
}}}~~}}}}{zz~~
~~~~~}}}~~}}}}}}|zzz~~}~}}~
|}}~}}~}~}~}}~~}}}|{{{zzzz~~~}~~~~~~~}|~~~~~~
~|~~}~~~}~~~}}}|{{|zzyyy{~~~~~~|~~~~}|~~~~~~~~~~}||}
~}}}~~~~}}}}}|||{zzyyy}~~~~~~~~}~~}{|~~
~~}}}~~}}}}}}}}}{zyyyyy~~||~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
}}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
~}|||}}||}}}}}}}}}}||{z|xyz{|~}~~{||}
}
~~
~}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~||}
~{z|
~~}~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}||}~}~~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{}|||{|||zzy{|z}
~~~
~~~
~~~|~~}}}}~{|}}~
{z{ywz}~
~~~}}}||}~}||}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}}}~~~~}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~}~~}|~}~}~|{|||z{z}~|}|}||~~|{{}~}~~}{{{}|z{{{~~}||~~~y}~v{vx}|||{}}~}}~~~}~~~~|~~}}}{{}}|z||~||}|||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~~}||}}|}}}}{|~~~~~~|||||}|~~{|{||||}|}|~|}|{{{|y{|{|}z}~~
|{zzy{}z|~~y|yxxt|||{|||~~~}~|z|}}~}}~~}}~|{}}}|}|}}}|}~|}{}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||~}|}|}}}~}}~~|{{{||}|{z{|yzyxy{~
~~{zy{}}x|zr}{{|||~~}}
}~~|~~}|}}~}}|~|}}|}}~~}~|}}{|}~||{|}zzyyyy{{~~
~~~z{y}}zzz}q~z{}}}}}zx
~}~~}~}~~~}~}}
}~~}~~}}}|~~~}}~}|}||{|}{{{zzz{{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv}
~~~~~}~~~}~~|}}|~~~~}|}}{}}}||{||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||z|{|}
~~~~~~~~~z{z}}uqz|zqz~}yxtt
~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}}~~~~}}|}}~~~~~~~~~~~
~~~}{z{z|{z~~}~~~~}~}}z{|
{{syz|pwuvwyutz
}}}~}~~}~|}}~~|{{z|{|~~~}~~}}}~}}{{zx|vyy{qtxwvxury
~|}}~~~~}|~~~~}}z{{|||~}}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{{||||}}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~
}}}|{||yz{z~y|yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst}~}~}~~|~}~~}~}~~~~~
~}||||{yvyyzywyv~|{{{~|{}}}~~}}|}}}}}}}|~|}y{{zy}wxxtuuxrwwtv
~~}}}}||}~~}~~~~}~~~~}~~}~~
~|}||{|uyyxxxyw{|{{{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~{~}~~~}}}~~~~~}}~~~|~~~~~~|}||{}xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxry
}~~}|~}|~~~~}}|~~~~}|~~|}~}~~~
~}}{{||yw|ywxwwx{{{{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqroxwq{
~~}|~}}~~}~|}~~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{||{zzzzzzxsvupprowvr{
}}~}~~~~|~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~~}~{z|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyysuuooqpwst}
~~~}~~}~~}}~|||~{{~yz{z{~xwy{|{}||||{}|}}}}|}|~~~~|z|}{|}{yy{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z|||yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}{||xxvxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|z}|{}xwvyyz|}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~~}}}|}z}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{
~
~||||x|yzyz|}|{||}}}||~{{{zzzupxwyvu|uv|
~
{~~}y|zzz}||~z||}}|z{~~~}}|}}|vrvxxvtvu}
}
~
{||}zz{}}||z|~}|}}~~~~~|}}~~}|{xvvw
~
}}||{||}}~~~}~|||}}~~~}}~~~}}}~}}~~|}
~
}}}||||~}}{|}}}}}~~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~
}uy~
}y|~{
}}~~~}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqspurstv{}uvy
hzrss|r~}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyyspvxqvtturstvinrotvnulwm{snym}rsvsvmnwlpylu}}~}}}}||}}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}}{~|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyqjoyxpkyszozwvvp~~~z~}|}~}}~~}~~~
xyrz{pp
x
xyks~y{krz|m{yyt~vnoot|uwqy}}m~uo
zrr{|upozls|nw~~}}z}{|}}}}~~}~}~|}~~
}w
}~{|{~{||}~}|~}}~~~~~~~}}}~|{|~||
}|{|~{||}~||~}}~~}}|}~~~~~|}}~{|||{{~
~|{}~{|{~~}{|~}~~}~}}~~}}||~~|}|||}|||~z{{|~
{{~}|||~}|||}}|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}~}{||~}|}}|~{||{|||}{{{}|{~|{|}}|}}~}|zz{{||
zz
~|~~||}}|}}|}{{{z{|||{{{~{|}{z{~||||}~}{z|z||
|
~~~~~||}}{}}|}zyzy{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{}}|}yyzy{}}zz{{}|}||z{}||}|~~|{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yzz{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|z{{{|}}}|~}||}~|{
~}~{
~{}}~}~~~~}}{|{zyzzyz{|yzzz{{|z{{{{}~}}}}||}}|
~|~~
~}~~~~{||}}~|~~}}~{~|{zyzzyzz{yzzz{{|z{|{{~~}|}||}~
~~}|}~~
~}}~~|~~|~||~~|~}}|||{{zzzzy{zzzyzzz{|y{}{{~}~}}}
~}~~~~}}~~~~~
~~|}~}|~}{~|}}}~}|||}{{zzzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<D:;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>:=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<:<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÔÔÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÔÔÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9>CE?<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËÊÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕØØ××××Ø×××××Ö×ÚÚÚÚÚÚÚÚÚÚÚÛÜÜ×ÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILO@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÏÐÏÏÏÏÏÏÏÏÏÏÏÏÖÞÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¸ºÑÓÓÓÓÓÓÓÓÓÔÔÔÕÇ·¹¹¸¸¸¸¸¸¸¸¸¹°½æáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVN<::77>C>8>:??A=>@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÌÐÒÒÒÒÒÒÒÒÒÒÒÒÑÞìëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¢§ÏÓÒÒÒÒÒÒÒÒÒÒÒÔ½ £££££££££££¥SRSSSSSSSSSSSKªòëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;?C>6:7>?;=B?9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÌÑÒÒÒÒÒÒÒÒÒÒÒÒÑÝêééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤£¨ÏÓÒÒÒÒÒÒÒÒÒÒÒÕ¾¢¥¥¤¤¤¤¤¤¤¤¤¦WWWWWWWWWWWWWO«ñêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<;<<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÍÐÒÒÒÒÒÒÒÒÑÑÑÑÐÜèççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©©¬ÏÓÒÒÒÒÒÒÒÓÓÓÓÕÀ¦¨¨©©©©©©©©©«babbbbbbbbbbb[¯ïééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÎÎÎÎÎÎÎÎÍÍÍÍÍÍÎÏÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÏÎÎÏÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÒÔÕÕÕÕÕÕÕÕÔÓÓÓÔÓÒÒÒÒÒÒÒÒÒÒÒÒÒÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÔØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<8@B<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÓÔÐÏÎÐÓÐÎÒÔÕÔÐÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÖÖÖÖÖÖÖÖÖÖÖ××ÖØØØØØÙÙÙÙÙÙÙÙÙØ×ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎЦÅÑÒ¹¾ÔÆÏÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@=:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÒª¬ÍÁ°±¸¹¯¡ÒÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D>A98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÐÉ
¥°¦ Ã}~¯°ÑÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<=:6?B@C:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏѤ°½ºÔÒÍÃÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8FA?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÏÐÕ¹ ÒÓÀ ÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÏÐÑ ¡¬¯¡¹×¯¢©ÔÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:<?>=<9@<<::9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÐÕ§¤£»©Ø£¡ºÔÑÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÒÀ¢ËŦŢÑÉÒÑÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:969;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÓÔ¤ ¸ËÇ¡ÒÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÈƦ½ª©«¤Å´¤¦ÖÒÒÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKLA>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ Ôʧϧ׹¿ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFGKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÔ¯°³ÐÕ˽ÕÒÑÂÓÒÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÔÖÖÖÓÒÓÕÓÓÓÕÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEK>>786967899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EILAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDJ;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?:8776=??@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@AB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEEC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<<DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsoupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸········¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢¢¢¡ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¥¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;<;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤££¡¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::88:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢£££££¤¢¡ ¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¡¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>98;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ¡ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9<<>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:=>:?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VQQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
}§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s}~
z}}¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
z||}~x
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~}}¨®²¯¯µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWLO_^\NUUbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
¢¡ ¤£ ¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJCPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©¨§¡¥¨¨«ª©¯¡¡££ ¡¤¥§¤©«¯¬¥£¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdWOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®¯ªª«¤¡¢¤©§¦©¨£¢¤¡¥¨£ ¡¢©§ ¢¢®¬«ª§¯¨¥¤©©©©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPORd\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨§¥§©§©¨£§¦¤¦¢¡¡¡¡ ¦¦£¢¢¢ ¡¡¢¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]\PUOWO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§¬©¤¢ ¢¦¡¦®¦¦ ªª¤¡¤¡ ¡ £¤¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvxb_\UYQUW[c^s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;>=@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯««¬¨¨«°©¨ª¨¡ §©°²¯¬£¢¦¡ª²¡¤¢£«¢¥¤¢¥£ ¥¢¢¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[Z`_Z\V\hdncnjib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£¢ª©§®·¶´´¶³¯¬«®«·µ¤²±°¢§¢££¢¨¥¡£¡¤¢§ £ ¡¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvyjb[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>AE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ª²¸¼¼½»º¿´¯±³µ³¸²¶´¹ª¤¢ ¤ª¦¦¡¤£¤«¦¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__amhukqhiiaYSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°±´µµ¼¼¾¼¼¾Æº¸·º½´°¬±»¹k¸²ª¦¦¤¤§¨¤®¤««µµ¯³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YTai`fsositdidb[LK>:8898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÃÆÂù½¿ÀÀ½¿Ä½¼º½¾³©¥®Á·az¾À³¯¯ªª¨§§¤¯§ª´¼±´µ¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`a^^kcbnwuvnl[bQV\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAA;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅÆ»ÄÀÅÆÀ¹¯½¼À¾¾°¯¼²^i¶Ãº¯°µª«¦ª£¤§±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhakmfnuqruqg^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÅ¿ÃÂÆÅÀ±¾º¿Ãµ»}ªµ¥^a ¼»± ±¯¬¤¬®´§ª©¨ª¬©¦¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tklndomiqxnyiia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿¼»¾Ä¾ÅÈÆÆÄÄø´À·´¼Á¹Á{³Å¢aa¹»¶¬£·°¦¬´µ¬®¥¤£¨¤ ¥ª´±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{vnkiguZfrxsyff]d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÉÅ¿ÃÀËÍÏÊÆÄÃÃÁľ¸¾ÁÃÁº}|¿Õ¦dbr±³´ª§´²®«¸µ³¬©£¡©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuuefijh]konxwcb``^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÎÏÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈÇ¿ÅÇÄDztv½×¤ecf®´··À¾¾º½º¼º¼¬¦ª»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqocagvhjitmxl]d[V`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÌÐÎÇÌÉÂÂÇÂËËÈÆÌÊÎÅÆÅÃȪlp²×cc^µÄÁÈÌÆÄÁÄÇÁ¼¾´°°°Á¾¾ÁÆ¿¾¸¶Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlieuntb]bTWUSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÃÄ¿¿¾ÄËÈÊËɼ¼ÈÇÉÍÈÃÈÉÉÅÅãeiÒ`a^¾ÏÇËÎÄ·¿¿ÀÀ»º½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrpfefcjdbjmno^Y\VVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ãº¸¹¼¾ÁÇÁÆ»¹ÈÉÃÅÄÀÃÁÂÁÃÂÃÁdcÇ[^cÄÍÅÈÐÁ®½¾¸¹»»¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbacddjbgc[ZZ\YQOE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶¸´´µ¿»½¿¹¾ºº´À¸µ·²®º»·À·¼ÊÒÀ»ÀÁ¼»Å½»ÁÄÄ£idx½£[\kÆÅÀÀÉ¿°Á¿»¸»¾¹µ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qc`bchjggiei^VVTYOSLF8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´µ±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ¹¿»Áٲ»õºÇ·¶¹»À¦vrw¦hiÆÀ¿»Á¾¹Æ¼ÂÀ¼Å¸¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zxqmeefoielhXXNKKKRILHC9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹º»¿¼ÑÆv ̽Ƿ¹¸®·µ¾±
{ÅÀ¿¾½¼¿ÉÂÇȾƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksfbm`\TIKJDJBCG?:;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼¼À·ª¤®°¸»²½¾»Ä¶µ¸µ·À¾Ä¼ÂÄØr{¶ÉÏÂÀ¸¯µ¾¿ }°Â¿¾½¼ÇÆËÊÄǽµµ¶Á½»»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢rflintnxcgb\cQKTHEECHC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£°¹½¼²¼¾¼Å¸±¸º½ÇÊÉÂÈÉÒop©ÒÑÌÊĵ»É¯xpe}y
osµÄ¾Á¼À¿·ÊÉÅÆÀ¹½¼Ä¿¿¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_c^`aNIM?E@?DC;;::;:8;<:9<>::>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´»ÇÒ¹¾¼Ä¾·¼Á¿ÈÏÆÈÊÊÀpr¢ÍËËÍÊÆÅÁpbYOls{WXhr¿ÁÀ¿Ä¨¤ÈÄÃÄùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw{_pc[^__TI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼¶»¸®Ü¾¶¾À¾½´¢«¯¿¾£vtw¢ÐÉËÈÁÃæx\MFA_opIEXa}ªÅ¿Á²ÈÃÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsxsgp][^]YRFDCMIAE=H;;59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯··²µ³·¹¼»¶»»Èl±Í½µ¹À¼¤vjglho|nty¢ÑÆÈÁ¸¿½bLBA:ThdE:NXhÃÀ´rȾ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸¸¸½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y}vlu{pni[_`YSPAFHGK@DCH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÀЩr´½¶µ¿hY_^KQZZkor}£Í¾º¹´½´xP@Qe@K\YG9GS\{¼¹ri¬¼µÁµ¿ºµ®¯°½À¹ÏÊÉñ°µ´´½º¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsuvwnq`_f][TJ=??FF=FCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹ÂË v¢°³f`eUY_KJMOSls¥Ç»¢£¸°E@pQERQK:JRUlª¡dr¶¯²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³»·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtwrl_ca[^OHB?=HCFMC@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·¿Å¢yu¢[RAXTGamYSGIc£ªÃÆ£°¥BG{_BPQN9SZRai_·¥¬³°¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wo{ourmc]fX\]RNNA>JBAJI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸¸Â°xhNIAkWBOu
pMCV}°»Ñ®zv¡¦FHhwXBXX[<VcRZoh`_¡³¤§§£¦©®¹¬««¥¨¤«®®§¯¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmtil][jT]\PMHDFLBFNF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³¸³wUE@TVJJSub@Y©¹²ÇÏglKFSUId©{QV^\Wr¯§¡¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndT`cW\QNLH@HQDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²º§hL?`jNIIMgVGYº±¯Òºr[adQEPp©¥TPSS¯§¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨««¦££¦¢ ¥¢¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vzcwln\QhTPNGPMLBOQ@>;>49:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬¨½Á©¦½aB\£}OZIKaK[fms¯µ©¼ÒUOOPn¢°§¢SI\¥¤¨¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ ¤ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uv}mk{dhUQcMJHGORMJNG<E@<2?859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡© «ÅÀÉNBvkQqLPagwp_`k°°®Æº]>`¥¦Pr ¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¤¡¯¨®²«¥ªª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}wx|dyy`bRU`HIJKSTIRPL9?A67<65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¤ÆÆWRMd^n}uyWQkc^jglx´¯´Â¡¡£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§ £±®²°´ª²®¢¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvshle[SZZMQJOOULSLA7>C78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢ª£yWsurti_rnXY]^dgYb_h¬®«°¨£¢ ¡¥¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¾°¬±®©ª´±°¨«¨²µ·³¸²´¤ ¥¬¡¡¢ ¤¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xujwu]lZR`HRUHFUVJBLG=KH8F<77;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¡ ¢~o{i`cWM[RUHJOUPGRSJ¬ª©¤¦ ¨¥±ª§®£«¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼·½³³µ¢¬¢©¨²©«¨§¨ª§ § §§¥¤ª¢¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vrmivmhm\X\CWNJGMGCFM<>L>4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·¤°¦£_V_f_ULLD:>>BC>>CSx©©ª¥¢£
«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶º»ÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸³»ÆĽü·³©³ª³µ¯³®ª¯£«§¶±¢°¦¡£¯±°¤¥¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¥¦¢¤{trkktrqhV\QFTHDJPI?EA4FH95;>6;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ {``f^NDE<JEH<?:6N~ª³§££¡ ¥«¥xm ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÇÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿À¾ÇÆ·ÄÊÉÃÁƾº´ººµ»·°µ²ªº²®»·¿»ºª¸«ª¸º´¼®®¹£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢}zqkchoxkeZ[FKLEDSMDBE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡{ri_TLD>K`seB=\®¬ wrqmp¦®´¹Å»ÍÇË¿ÂÌÎÍÌÇÉÑÌÍÌÇÉÅÅÌÑÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÍÓÐÓÓÌÊÂÅÆÆÊÈοÈÑÌÇÆÇÅÁ¼ÃÁ¿¿¿¶¾³®¿ÀÃÃÇÄÇÄ®¿¸²¸¼Ãº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLDEPIDC@55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £hd[SHC@@M§° ²£yqroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÏÊÓ×Ñ×ÒÕÖÓÔÈÌÆÌÍÉÒÍÎÓÍÅÈÊÊÁÆËÇÉÈƿó³ÈÄËËËÏÆÊ¿¾¿½ÁÇÄÌÌÈÉÀÿ¯³¨¢ª£¦©¬¤¥¦
zruvgcgvidVWQDMF@IQB=B<:22A<E<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<A?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡`RKHDC@FX¶Ò¼²¯¦ ¤¡}wpkebhqoq{
upnqtp
³Ã¾ÅÑÐ×ÖÖÒÖÍÔÖ×ÔÓÑÓÔÔÓÏÑÃÐÓÖØÕÖÒËÉÎÑËÆÍÒÊÒÕÖÙÕ×Ó×ØÎÒÊÏÑÌÏÐÍÓпÈÇÊÄÌÌÌÎÏÅÆǶ¿Ê¿ÒÍÌÏÆÉÈ¿ÄÃÈÎÍÐÑÏÍÊÈ͸·»¨¥«§£ª¥©¨¨|xsvpc`drb]R\IJGAEIJ>;A8=4586;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¤¥¢¡YI?ACAIS|²¦ wic`__`_^__]blutppolrquÄÈÆÔÖ×××ÓÖÐÕÔÚÔÔÎÏÕÔÔÑÑÌÑÍÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐ××ØÑ×ÒØÙÔÖÌÏÏÊÍÒËÎÐÁÆÃÈÆÎÍÑÑÒÉÌÍÀÊÌÆÓÏÌÎÈÄÊÇÇÈÌÊÔÔÑÕÏÒÌÓ¹ű¥¨µ®§¨¬¥²¨°³¬¬
|zqstmacim_VP_JJCFCRM?<>54:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¦®·¨«·×ÔÕÙÙÑÎп¼Ìɶ¾®¦ª¨¡£«gC9=>GZ«§}pecb__a__a`_``_`fnppnkorwwÌÁÒÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÒÊÏÌÓÖÒÑÖÍÏÕÕÑÅÑÔÊÐÔÕÖÎÒÐØØ××ËÈÎÄÉÏÍÊÌÀÊÀÈÊÍÎÐËÐÎÎÌÎÏÈËÐÐËÎÊÂÉÇÉÌËÌÒÓÍÓÑÑÐÐʽȹ°®»¸µª¶°¨¸³¾»±
zvopokadnpaW\ZIFFDMXE;@=33<<87865;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÀ°©¬©¤°zKJE?Z¡k^^^adb```a``a^__^\bmroostvvy¤¾ÌÕÑÖÔÓØÖÎÎÔËÎÎÅÎÊÒÒÏÇÎÍÍÔËÎÓÍË×ÖÐÌÑÔËÌÐÒÓÊÎÑÕÒÕÕÊÀÊÂÅÌÂÈÉÃÌÃÅÈÊÊÏÊÍÌÐÍÓËÆÈÏÌÈÇËÅÆÁÆÊÌÍÐÑÆÐÎÍÍÌÏÅÇÁ¸¹½Ãýù²²¾±»Ãĵª¥¢yqrkmg``phYXhVLFLIPQB;C>;67:8::57==@;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±Ç¸ËÕÕÙÚÛØÌÌÏÈÖÕĵ¯´¨ ®xrv{|eabb`]^acb`__`aa`_][]grrqrspmry¤ÆÓÏËÐÏÓÔÊÅÉÉÆÆ¿ÃÆÏÎÇÅÇÍÊÒÈËÎÎÆÑÒÐÍÌÔÊÇËÎÏÈÇÏÒËÑÏƺĿÆɽÂÇÉÎÅÂÈÀÇÍÈÄÌÊËÏÈÄÄÐÈÆÂÆÈÄ¿ÁÇÌÌÌÏÂÊËÈÇËÐÄÅÇ»ÇÃÈÉÂÏÁ½¼¿°ÁÉƹ½ª°²§¥¢£wotdk`^fpa[W`GHHGIMTG?J=64355==48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼ºÍÍÆÐÕÕÙÚÛØÐÉÏÏÑÓȶ»»£¶|f§¬
}~s`[^^^`^`cdc_\]^_``_[Z\akrrookloo}¸ÑÈÉÊÏËÍĺÀû»ºº¾ÉÆÂÃÀÃÈËÉÈÊÈÁÅÌÆÈËÍÉÄÂÊÉÁÂÌÐÅËÈ¿¹Á»ÆȾ¿ÆÏËÿûÉÇÈ»ÈÆÅÊÀ½ÂËÆÅľƽ¼ÀÃÅÌÅżÀÊÂÅÇÒÅÀÉ¿ÊÉÆÈÆÐÃÃÆïÄËÇÄÊ·¿¼º´©¬¤¥¬£¡¥£ {wrtfiZanlZ\XRDLFBGDLDFS@54334?=3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÃ¾±¯µk_y¦z
vxurp_[[]``bcdded`[\]]_^`[YZ\borokilposƼÉÅÌÀÆ°¶º²²³²±Â¼¼¼º¸ÁÁÁž½¹½¿¹ÄÊÅƽÆÀ¸»ÄÉ¿ÁÉ»·»»Æÿ¼ÁÍÃƾ¾µÁ½Ãº½Æ»Âº³¼ÅÄ·¿µ¶¾¿»ÌüµºÈº¿¾ËÄÁÆÂÅÉÆÉÆÐÆÂÌDzÇÉÃÎÍÁÅÃÀ½³·°²§¨¨¹°¥°ª¬zvwjdg`hocV^YJFJFHJAEBEI@9:648854;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÅÂÄÈÎÒÊÊÊÇÍÍÎÑÈÐÆÕÔÖ×ÍÊÏÅÉÅÇÁ¹Å½«¤_etx~{ttc\\]^``bcaadeb]\[\^\^]Z[\^hsqmggnory½ÌÀúÀ¸®°±§ª¬§¸´·´³³´»µ¾²·°µ¯²¼Â¼ÁļÀ»µ²º¾À¸Ç¹´»¶Á¼¸½ÆÁûµ¯²¶º¿´Ä·»´«¸½½À½±º¶°¶º³Å¼¶®»¿µ·´Å¼¾ÃÅÀÃÅÆÈËÅÀÆÆ»ÇËÀÏÊÇÃÆÂ÷ý½¶¹¾Ç¿¬µºµ·¶ytxggebkn^V^`FKHHJFBDAEE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐÌÍÈÊÈÊÉÊÄÐÍÒÏÍÅÇÁÅÀ¿º·É¶ª°[hq
zx~ww|sh]]]]_`_`da^cec__\[^\]^Z\[]_lpnhfkmnr|¤Ç¿¹¸µ°«§£ª§«³ª¬©´®·±³©®¦¬³¼º¶Ã¹ºº±«µ¹»´Âº°À±¾¼»¶»Ç¹Â¶ª¨°²À¶¸½°°§²³µ»¼«®µ¦®¶¯»²°ª¹°»®»¸»ÀÀ¾¹Â¿ÇÃÅÀ¼ÆÂÈʸÅÇÆ¿ÇÄúÄÆ»ÆÉÌ˳¹Â½»³svvkiablhYXW[ALKMIEAC?FA:9:995854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÅÐÇÍÁÃÆ¿ÄÄÃÃÊÂÉÊ¿À¼Áº³´µÃ®©°\j~{x}
z{wn^]\\]_`__dcadcb`_]Z[ZZ]ZZZZ\enohfgiknq¹°µ®¦¥¨§ ¥¡¥¬®¤¨¢«ª«°¤¦ªµ¶±½¹¯·¯¨®¸´´¼¸´¼¯¸¹µ²¼Á²À®¥©£«±²³¨½ª«¨«´³¦¨¡¤¯©²¦§¨®¦¨·¬±²·ºº¼±¼½¾¾Ä¿µÂÁÇÈ·¿ÀÅ·Äÿ»¿Ä¾ÄÈÌÊ¿¾ÄÀÀ©strji]aocWVXPHYRSKFFE>>@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃȺºËÁʾ»É¶½Ã¾ºÊ·ÁÃÁ´¶¼¶±¯µ»¨«el{}~xt~|swe_]\\^_`^_ccab`a_]]\ZXY[[YXZ\_fkfdgehjor
©¥«¥ ¢¥¥¡£ª££ ¥¦§¦ ¤¦²°¶·§°¬¨ª´«´º±¶¶®¶º²¯ºº±¶¥ ¤ ¦±§«¨¹ª¤§§¨§² §¦¤¦¬§¤ ¡±¬²´³´°µ¼¶»ÁÀ²º¾ÃÁ²¹¹Ã³Á½¿µ¸¼½¿¼ÂÇÄÃþÀÄ xplbf_ko`UY^HNgOTGEKF<=?=:;;825536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:6676788666;::;9:;<859<:>>@;ȵµ½¸ºÀº½¶ ¡¦º¶«³³»³ÄÏÉËÂƸ¶ÇÀÌ¿¸É·»Å¸³Ä¸³¿À¬µ¼²¬¥¯³¡£iq
|yusomjjipi^`]\\\^__acb````]\[\\XYXXXVX[^_dcbegggjmo© ¢£¡£§ ¤¥¢§£ «°±¶£©ªª¬¬¤´¹·°¬³µ®³µ®°ª¤¢²¤¦©¸¢¦¦ ¨¬« ¥£¯©«§ª¬¬±²¸¯¸¹»°¶¼¼º«³³¹³¾´¶²±¶µ¿¶¾À½ÃÁ»»½zsl_e^ddXTW]IW\KPGIJGA<??@;?<04535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÏÈÈÀÆ»»ÃÃϾºÇ¸¸¿·²Â´±»¼«¹º±¢©«§m~
xrmomkb^aff]]^]]]\]_`abccba_\[[ZZYXXWWWXXXZ^bddeffhikq§¢¢¢¨¥§¢¥ ¡®®®®² ¦¢®«§¢µ±²²¬¨¯³§º³¦¶ ¢£¡£¢ªµª¢£¦¥¦£ ¢«§¤¤¦«³´ªµ°³«²¹´¯ª¯²²³¸³®©¬®²¸±»¶º½¿·³±
yuf^e^[YVSZUK[QKIEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ·½¿¶¾¼¿³¥£¥±Âµ¶½´¸ÂÌÈƿŶÁÀÆηÀĽ³¹¹³¿¶±¹»¬²´¤©xxoqtqhechdc\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWVWadecdeddhjv¡ ¡ ¡©¤©«§¯°«£¤¸ª¡ ®¨¶ª§§±¤¸°¤· £ª¦¡¬¸¯¢¡¤¢ ¡ª©¤¢£ªª°®¨´«ª§³°¥«®³±°¯®¯¦¨¨²±´°¼´¹·®£yud^aVYXSRTKM^LOKGGLLE=A><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾¸¼®§¨£ª»À½À¹®´¸ÁÌÇÅÂýŸÈ˲ÁÂÁ¼»µ»¼µ¹¹°¯°©¡¨|wqilrtphhedfb\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[bcbbcbcdfi §¦¤¦§¦ ª¯¦¢¤·¨¡¡¢¨´¢¥¨¥°¥±®¬´¡©¡¢±±¢£¡§§¡¢¤¥¥«¤¥°§¥£««¦©®¯®«¨ª©³¦¦¬¯´±¯¼µ±¯¯ zwrea\Z]XNLRHRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847763321./2556;:8;7876<;:;;A8x»»±µ½°»±¸¬¥§·»¼Áź±¹µÄÉÉÀÃÆÅǶÅIJ¿ū··½¶½ººµ²«¬§£t~vncafihfgifjm`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWTTVUSURU``_`a_aacej¤ ¥¢¦¥¥££¢ª«¥¥±ª ¡¥«¨¢¬©©®¢¢¢£«©° ¢¡£¤¡¢ ¢¤¦£«¥¢¤ª£«®¥®²©¦¥¦¦´¦©¨³µ´¹º¯©¬rqo`[WVVRGQOHZ[ORJTKSLEFID8;;=<8667:9;:976977:;:=<<6;<8>598:88659:<<97?<9678452121..1426:8698598989;9@9{µ´´»²°«²¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÊÌȵɼ±¾ÃȬ±¸Áµ»À»´´ª¬¦r{tiijlgjkmkjme]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\]]^___bdm£¡©©«¨¬§©¦¤¥¯¥¥¯ª ¯«³ ¥¦£¤¡©ª¡ ¢ ££ £¡¢¨£¢¨« «°¤·¥£¤¢ª¨«¯³·³¾µ²«¯
tsh[YYSUREXLQ[XMTNPLPQINIB=??A?=75799<<987:79:;<=>;7;;:=67:;8976989:6:=99576570141-+/434988::8::748=8?9~³§³¶®¨¨¯®©¨¬·¶¬¼Ê»¶¿¬ËÆŸÁÎÏȳĺ·»ÂÈ°¸¿·¼½»³µ¦© ztvwnmhmmmpggigd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNPQYZZZ]]\^_`d~¢ «ª¦¯¬¨°¥© ¤©¨®¨ª¥¡§ª¥ ¡¤¡¢¥¥§¨¨ ±±¦±¼§£¬µ«®§°µ°¸µÀ±±«~rsbVTUNRJGVPRQLLWMJLNRGMKACFDC>A75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8³¬¥±·ª¥¢±«ª§©²±¤¶Æ´¹º³ÊŹºÁËÐʱ¶¸»½Áñ¯±·´³»³³¢£wkglnqnqjpkdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajzu© «¦¦¬¨ ¦£
££¢¤§ ¢¢¦¤¦¨¦¡ ´²§²·¡¢·¬ª¤²²¦µ¼µ¬«±£ysm]NQQLOCMNNPKFNNJJNMQHMJAGKHHC=858889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12876:999984988A7w¶¦¤¶°¤§¤ª¥ ¨¦¥³ª¢²Ãµµ²³ÆÆ·ºÃÊÌƳ¬º½´·À¯©°¦º¯{n__frpuqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXXX[]aosvp¡£¢¤¥¢s~{£
~~tz££ ¡£¤¢´¯¬¯¥¸¦¦±¡°®°»ª©¯ªwscVMROPNCSNLQLBPQHINRMHJJDJLFJJ=749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-12764789::65:87A7x·¡£´¨¦¥¨£¦¥§¦§³§¥´Á¸°´°ÉÄ·¹ÁÎƽ³¬ºÁ«Ã§¡¦¦¶¬£~x~eWV_gfighncjhgb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTRMMJHNSSSTUUVY[]ilrl
|tNXr_;Wo|s
y{}xqp
}¡ §®©©¨³¢¦¬«¨³¢©£~rn`[NSRWLDTJPLLFNOIELQMKOJILPFII=7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· £¡¦¦ª §©¨£ª°¨§´Á¹°µ°Ç·³½Ï¿¹¯®µÂ§ªÅ©£°¢}su]PLRUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`moi{tQB@}y`JQnx}
n~xuvxoQ{~xvgw}¤£¨©¥¤°«¡¤¤¦ª¢ª¢¦¨umf^[HQQSMIUMSILKOIHFJNLMTKQPOFIC<769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')+*,4833979:99::::?9w¶£§¡¯¡§¨¥§¨°ª¶¼¶··³Á»¶§ºÈ¸¶¨¨µ¶ª²¼¦¨~}xpnXMKMNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZntw~ji\Ut|
{vxsovptz~«
yzhv{prmxxz{vrrwhu
{|© ©¥§¤¡ ¤rha\]JWPRHJXROJLMRJJJLPHLQLRTMEHA<78;99>=:;<98@?::>=7==79937785675251472/2.,//200/-+(().1272198798775:<;7v®£¢´©¯©¥¬°²ª½´²»¸¶º´±·º²ª¬©¨²¯¡vx|vooiXKHIHGEHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQQSV^u|xfw}hyvx}r|w{ok~|s{}tfv|lohs}lyq}qmvqhq~pC
wwz
}{u~£¡¤womebZXXUQJSUTOPNPVKNKNOJQNHOOLFD<;79;::?=9<:99??;8;=7<9999266856633611224.,,-..-0-+*''*.1362/876966527995y¦ ¦¯¬®«¨©±¯±«¼¸¬»¾¹³¬§°§¬¥©¤
yuq|mupjmjXKFGEA@CDILLMQRPQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNOQTX]eprm§ªÀ~uyc|xo|yz}omytxjjq~Inhw~licly
ksl|nr{imps{}~{vots
yyp|ojnonXVXTRQYORTTSXUMNHNKMNKCHNGE?:89;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¥°£¬ª¨µ¯®¬´¿«¼Â¿¦¢¤¡¡sz
totkqldljYNEFC@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORWZQY\`§bitzepmzvtlts|jkMy
g1vsl~~tfet~
filukq|hqq|n|s}|qpnvmwyujyywkkoheXQZWYY[MPUVYXNIHEJJHGB@FDCG=998;9:9<:9;:::@<9:<98>787715234533645031.**+),,++)(+'),,226,,5775478iO8;5n¤¨®²§»¯«²°Â±»ÃÇyqtzprpoodpf_TFIC?<;9:?@ADCEGILOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQVLAIQIb¯³ r|xl}mr
zyr¡txsu5q¨¡¡¢vp||sggbjnrmpuioXupwlz}mrnpzsvnbv~
ux~}{rppl`[\^\YXa_RN[ZXWLHJFJG>BABG>CD=;97=;:;;9:99;:?<88=:8;66651121253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥µª®±®Á²»ÁÆ}n
ul{txxlwnwci^IPG>@7449;;;=>@BEHLLLLNPQRUUVWXYXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~mw|~
~v¢y~
aªzw~sz]drtz|wmhjbyoznwtzptywkni]w||
}q}uw{|wpsteg_[[^T\g^WQUX[UGJJDLG?F@DC>AA=:97<;;=<::99;;=>79>9985653244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¦ « ±¨¯À±ºÅºz
vk}xs¡}}p~zgvkRWL@E211367688:<>AEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJi{y|r|z}~v¡¥¬©H®¯¯¨tm|}hghxn
qGlwryvhmk_w}
zzuv|xmow}ttrl[]][ccXgf\UOPVYPDLKFNICFCCA@CA=978:::;;:888::?>6;>7585773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|}
¡¬¡¦¸¯³¼³}tp~}}~¤
x~sx_cWKB60./23123668:=>?BEGHJLNQSTUTTVUSQOGC?80,#[>?84.]ps£UFIKMNPW`YpZ\^j
~
¡¡¥»±§»Çè¡¥|qv
ihotq
w{v
}nvuf¡ª¢zzyogkx~z~rjd^ZZ]j]af`YOKNWRQHPJDNGCJDB@DDA<:87=<:<:88778:==8<=68656623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfx{¤¡¬¦«¯°¡xw|mpj]BA4--//./02234778;=?BDHJNQRSRSTTRPOHDB<87/9D><<63.lMPHIKKKNV`cggmu £ª¥£¬¨¶¢¨Áîǯxº|¡
¡
lpuwqm
r¡¥µ©¢}kjk|sa]c^Zfk\lk^WKGOSQNMLFIPCDMFACEGB>:97=<:;:987767;:6=:785456345566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYppuqv~§ ©ge¤~y}
xx~gMR>/..,/.-/000212457;?CENPRTPQQSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} ¨¥¢¡¢¨¨« ¨¬©ªµ«¿«¶ÈÈ·ÉÑϾ pi«©
¡§¢xz~¡{w«³}¤¢¦¶°¨lsr||qh`\`^bgc`hg[REJKPOIJLFFMCHLFFCBGEA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppu`n}aw}{ªªBD}x|
w_bP460-1/,.00//..0015>AAMQRSPRSURNSLEE@<>=GG@A@8662<9;FHGIJNOQYmw£§ª´½¸¤®¬¬§¨´«°¶²²»±³¾³Ã¬»É˷ÿ¸¥£°²¬ª£
¦¦ £¦¢ª¨¤
¤¡ ª¡¤©±£§·» £°££¤¢«¯³µ¢¤ªyz~
~g`h\eb]dc_ff_ZOCIHTOFHLFJGEFHAKFCFFA:87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicWjpXz
v
ÚÈsV|z
qna@E64<2/110-,+-1.-3?DAMUQRSUUWUN[PGGE<>>FHCD@8;<5C;=FKIGHROPW ®£³ª±ÁÇê³Å¶¬³¿³¸¾¶¿´Á¶»»¤¸Æ¨¶Éǵ¾¹´¨£´±±¨¯«¥v¤¡«±³ª¨®¶»²º¬¯µ¢±¬±µ¼·µ®µ §§£¨©°²º¸¸§¶©¥xuYadVeaac`af_[TJDELUQHIJDIGEA@@KDBMF<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AFWQJL[ZQcdWyuq}
v
{¿»£¼´y
zxn]V@EM<6:46AB764//6CHCQ[OQUWU\VO^UIKJA@>GKFED;>@7D7?BJJEFWTP^¥®£±´Ã¶¸ÁÌɶ»Ä½³³À··Áµ¿°·t±³¦ºÅ¤°Æ¹±³±´¨¤µ¶ª± ¡¢¥°®¦«§¤ ¬³º¢©²º´»¾Ì¿ÅŽ½³Â·º¸¿·º·¹¬¬°¦±ª¾°½»Â¬º¨®«}|jWbaWjejeW[dYVTIGGLQGCHIAHD>?BBK@@MC99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALRWTYUZvjpnzsyb¸¡£{z||}xzueO\dGEL:Qca[^SF?;HPDZcQQYXZgYT``MSPEA?IJHEFA@C<E6B>HGJLSZT]¯¸µº¹É¿º½ÉÌ»¼Á¼·µ»»·½´º±Æau²¥±ª½ª¥¨«ª£¢²µ¡«¨®¥§¦¥£¢¦±´§²²½¶Á½ÓÉÊÓÆÂÅËÁÊÃÀ¾½¿»¼·´°¹·¶ÃºÅ½ÃÈ°¹ª¢«¥¨¶q_bb]Wa_hfRXaVRUIEENKA>GD=KB=B@=F>;H@796379>489:57045/26389374426?8@>GKRTSQPOQQPJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRLQ]gllq
slrrsÕÀµ }x{{yt}zkepuY]\Peeb`ed][XW\MdmURmm_n_XgeUYUKDAKKHFIHHGBI9D?HKTTV\Z[¹À¹½·ÆÀº¸Ê˺·º¶¸¹²·µ´®¶¶du¨p^¡ ¢¤ª¥ ¨¥¤¬¥ª°¬·°½¹ÔÑÏ×ÏÉÌÑÌÏÎÊÆÀ¾ÂʽÁ¼ÁÀÄÄÅÊ¿È䤻°´¯«¹¼yl]`\Y^aYccQ\`SPKCBEGE<@E>BHB@D=:E>=J?47535;=468977022/24169775555D3ELM>51/006:477@IOI;-&**(-./,@M+/54mI0Ht?>BD@CDFKODR\Yi_polouu³¬¡¡
~|s{
{ts{xkmu{hreilifjih`fihlZnt¤¼g[oh]ZZTHKNOJKQKTQHLAJGKP_^bfia·Ç°¹³»¾µ±Äǵ°¹°°»«²±§ª·¬¶§§O ¦¥¡¦¬¯¨¯§³´ÔÔÔÖÒËÏÔÕÎÓÏÍÅÂÉпÊÉÊÉÒÇÌÍÂÐÒ¸°Ã¼Ä¹¥¶ºÄ¢nc\\^XaXYeZQ]WOOBBHEBI;AD>AG??B7;C>@H=46655;:687654/10146278875367C5B8?-0-1349=97,.,1;FK=),(.0007K?-46TW0DwC;B>EBACJM?UYSeWshqoyy ª¦}
|p{r~qxukqx~q{mxslipmcinpxiw|~Ë¿Âߧmcxnc[a`JPRUNY^P^]MPNTQUT\nnvr¸¬´§°¶«¬¼À±«µ¦¤¸¦«®¡«´£±®§«¬¤§¡¬ÏÒÕÑÍÌÒÓÔÐÔÑÎÈÃÔÑÈÍÒÓÓ×ÍÒÑÅÒÖÅÀÎÇÇè¾·Ðzne]b]W`S][OPTPNH>AFABE<@B>ED>@?:==<<JA45465<888664412/03526768533;=<E=@11+/249>5901022-2DN3)/3.32=N238C}_2AtD:==I>@CFH<VRMO[u
wlwp}~¡¡
y
{r~yu
ovrks|{w|swqksrhoqzyr{¾Ë~²vrvhaj]CZZ[WfdXekSX]]`d^cx{~ª¤¤¡ ¡¨¦ª°¸ª¥´£¡¡£¢§±¦k¢
}
§°¡ ¡¤¤¨ÈÎÏÈÂËÑÔÑÔÓÎÓÍÆÖÒÌÔØÖÖØÔ×ÕÉÔÚÍÉ××ÑʬÄÃËsob`_XTZS\PJGIIJ@;:;EBD<BD>HB?BC;;9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/--;R017/532FD28>nb5=tM99@I<AD?A;PLFKYpu}hsxr
x~xs{}wznxpmuvx~t
|ymvtn}vuy{¶<AÆ¥~|ieVICfcechjdox[_fiknin £¤¦²¤¤³ ¡¥ © ¢±~
z~©£}ª³§§½Ãƹ¶ÆÍÒÐÒÐÌÒËÉÔÎÐÕÚ××ØÔÙØÍØÛÎÉÚÚÒÕ¿ËÌ´xvnd]YRVQZVFGJJEE=:79@AB:HD@ECADB;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BS39254/7K75<`bA<svV87AH:?C><9QECJTlnopaqqs|~
|x
zyqz{uz
zp|oozq|qnzuw}|u|°tY©Â¶pnb=^hrpqpnxweioruxr{ ª ¡¥¬}
~my{®ª§®µ½©½ÆËÈÉÌËÏÈÃÑÊÔÖÙ×Ø×ÔÛ×ÓÙÛÖÏÛÚÑÖÉÔËy{hh[YPRT^HCEII>A>=7:=?;>H=?AAADA>>:86DB755479.566435532323647553457EBDCEB56<FNSM[nfcnskaV>,4LG865434BF4=W_hLux^8;?F<<B<:9D?CGRk_mdbfkvqz~~||~wyn{{uz vutu}toot|
zv{·Æ¥ÂÉ·wpeNfczw¢xyw{|vn¦ £«
z|¡¼¡©¦¥®¨µ¾ÀÀ¹ÇÉÍÎÅÍÊÑÖÖÕÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÜÆzyghe`TWVUMKDND;<=<9:<>9=@6=?@<?><9867CA6455=80665547745613854564567HH=DJE7925;H>;::7IP]ZRUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Yea][htzylwvz|~~|
{~
z{u}tn|}~t~|~x}ynt
~
|~z©Ã ¼£}}s~s¦
{hGq¡¤
¡~¦¥¸¢§¡£®¶ºµ«¿ÆÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Ü·xxwkidW`[TPOHDLB==>99::99;=6?>><=9:;;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8589?=DRSRX^UXfmmmiqry{z|{{|{~uyszsm~
}w
¡n¨
z |~£¢¤®
Wr«\¢££¡
¤³¡¡§±¸¬¥¼ÂÇÍÇÆÏÌÏÌÎ×ÏÑÔ®ÖÕØÚØÚÚ×ÖÙÚo|tgg\]XSWXC@ID>>>:49:;7:;:3;;?=>7;9:19G=:37=@50677255?65;55858:57735HR7GOK994=EJB>1FCLB98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:<@;BQKKSYPTcbxmb~omwxyz||{wsp
zuvvt
}¦£¥¢¨r²§
¢ ¡©¯n·
ÄȲ¡¥²d¤ÍÇ
ª¤£¥©¡£³´¥£¼Á¾ÇÅÅÉÈÉÂÊÓÌÍÔ¨ÒÑÖÖÖØÚÔÓÚÎrhc_]^NJTZBAGD;A=837;<:8=649:<:82?9:29I:>67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:>:EMFHRWSRBcFu}|m~xz~z~vv|lny|xx|}£³§£ª²¡§¥¤®¢¸³¡ ¥¯£¤§§¯¤ À¤É¸«¢¦²
¨¢
t³¥¡} ¡±®¢¤·¾´ÅÇĽÃÿÆÍÊÉÒ§ÎÍÓÒÐÖØÓÐØ»ryv\`U_WPHINEBCE5>:76:?;<7=42669774=5<5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=89566=:JFDGN[\YIf`;Hzzn
z|x
~px|}|orz}{x§»¨²½¯¥³³¨£¢°¬´£¸¤¤©·¦¤£©©£¯°ª»»É¡i¶¸«°£«¾£^ª²|}´« ¡¡ ¥¯¨¡¥³¸«ÂÈĵº½»ÅÇÈÂÑ¡ÆÉÍÍÄ×ÖÑËÓ¡pzh]YS^ROFD><CAB8?874>F<<6<35345454B3::BM:A;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPeGb`bpI@~s}um}}|pww{ªÂÀ¯½Æ»³´Á¼´«³¶¨²®®¼ª»¤¨¹¸«¦¦¢¡££¨¯²±«¤¢¥¥£¹®¨À»¬²¹¥¤§}¬½°z§±¬ £¬ ¡§§¤¢¤°²¦ÁÇï°º¶ÅľͧÇÃÇüÕÑÍÄÊtsb\Y_[MJBL@EG?A?B;:4>A<=5=6>333241A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\fF`igZ][{uo~|q~zz§´ÆÉ¿ÂÌÁùǼº¯«¹»²¶º²À®¥À¤«¯»¼ª«¢¢§ª®´°ªª¡°´§¢ººµÁ»«©²¥¤¨
ªÃĤz¡¦ ®ª¡ ² ¡¤ ¦¤¦§¤¯¥ÀÄµÉþ¶Î²Ä¾Ä¼³ÑÊȵtym\X\iSLHDLKKJAA=CD<5AD;:3=8B332263A05IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBfZMe\fTcjyr|xy¡¨º¾ÈÈÊÁÒÉÊÂ̼Á³»¾§º¿½¼Ä·¬Á©¬²»½ª°©£¥£¬³¶µ ¯¥¢£´¼©¨¼Á£¶¶¯«°«¬ª¦¥¥uy
££ª¥|£ ¢µ¦¥¤£¥¦¥£©¨¢²¬¨¼Àį¥³·ÌÀ¹®Ä³»¾Â¸¬ÂÃÂÀmyaXW\[KKMJFDDIBBACK:4DH9;4<7E.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQF7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>jH_XaZddVw
¡®¦£Â½ÈÃÇÅÓÍÎÍË»Á·¯º½´¼Ê¼ÃÁµ¶¼³¿¹¼®¯¨ ¨§¶©±·¢§¡«··©¥¯¾Ã±½¹³§ª´³®¥¬¨ ±Å§|}©¥¡£¢Z¥e£²¥¢¬«§¦¡¤©¦¶«©º¼Äµ¥´µËÁ¸©¶¬²º¸®¨¸º½¸lnZWTUNFJSNK?BHEDHGG95FM;>7>AJ.32025B55PVN<LFKRLOHGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|hW;=@BFBqFiIRebLF¥¡©¦¢¯¾®¡Æ½ÅÄÆÆÎÎÎÒʾ»µ±º»¼¾Î¶Ä½·¹·²²µ³¸³¬¦««¸ª¨§¯°£®¤§¤¤´À°ª¬´¾Â¹À¹³§¸´¸²®¥¯®¥¡tÁ~
±¦£©¡ `J¥T°¯¥¯¯¬¦¡¦ §¢´©ª³¼¼»«°²ÇÀ¸¥««±±£¡²²´¤qnf\ZNPKDPPPQ;GJIGHBC>9KU?A:=EM07544:B34NWO<JKNUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@CAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}iX;:BC@=QEWRsbWFHª ¢¨¯§
£¤µÈ´©ÆºÃÃÇÊÈÈÌÍƾº³®¹¸ÀÁͶȺÁ¹¶º±¯®²´§£ª³´ª¨¦¬¤®¥¤¨¬º¿¨«¶·¿Á¿¾¸²²Ã±¹½¬£®µ¬¹¦¦v¿
®¡¡©¨ ª¢§nv¢¢²£«¨ª«®¥¤¥©¢±¦©«º¶¾³²¾¹¶ £§¨¥§¬©©cea_RKMGHNIUL=MDNJKBCD<QU=AABDO18=77?B75UXN?HNQYSPQTJQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=..R`MUHe^HE«¡»¯ª«¢¤££¶Æ½´ÁºÂÂÇÈÅÂÍȽ¹²¯¹´ÀÂʵƱÁ¼´º«¨¬°£¢ª´º¦©¦«ª¨¯§£ªª¾¼§¬¼³·½Æ¼·µ¸À±½À³©µ·«¾¥£¢¼ ·©¥£¡¨¥³¡¦¨ª¥¢¢ ´¯¥¥°««¬¤£© ©¤¢¡´µ»µ¨µ²³¢¥ª¡wa\_]JHFGMQIMEFGBRLIAEG@VRDH=AGQ1;B7:BF79\YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:g\FCCpbGE§¤Ã¬¤©ª§¦¡«¶Ä»¾·ÁÂÀÇľÍÇ»½¹²¯¸³¿Ãȵ¿¯¼¶¹·¦£ª¬ ªªÄ¡¤¨«¦«¯¬¢©¨¿¸¦½°·¶Ç¶µ¹¸¿±¿Á¶´³´¯¾££ ¡¢¥££¾¥©©¬¡¦½¢£¢©«¡
¤ µ¬¦²§°¨ª ¡¥¤¬±¶²ª¥ª¬ ©hcYa]NIGJNKHEDIA=PIA<GIH[ROK=HOU4BF9>HG5Cb[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,0Mv\4KZ5,MnW<-=)#zbQ5CKQ9oRF<KxecWL¢£Å¬¡¬® £¥ §©«¶°¢ª²µÄýÀ¶¿Â»È¾Êȶ¸µ´°³³·Áƶ¾°¸´¹µ¦¬ª«¥£Á¥ © ¤©¯¢¦§½¶¦±¼·¶µÃ²³·¹¾²ÃÀ·¸®³µµ£¤ ¢©¨«£Ã©¬¦ ½¢¥««¬¦¡W¥¡ ¸ª§¶£³¡ ¯¢¤¦®³«©¢¢¦¥¤beZc`LHJJNFEAFK>=JB99JKN]QQI=LV\9FI=DMI8Hc\LCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWsHE6=ue\KN¡Ã§¥¢³ ²§ª¤ ¤©¬»°¨¬µ±ÇÄÁ³ÂüÆüÄʽ¯±¶°´¯¿Åµ¹±°¹µ¬¨°©©¥¡§Â¬¬±ª¢®°©¤§½·¦·º¼®¶Ã³³Â¿²Æ³º·¬´¶ª¢¦£¬¢¨«°¯¯¼²¦ ©©¢¤¸ ¡¤¯¯¬¥§¡¢§´¦§´£¯®¡¡¦¬°¥§¢¡
bf[geJILJRAC@IG;;G?99NMU^RSJ>O^]=HPBLLI9Nd]LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<v]^?[U^fr@8<HweA4¤ 褪²¡£µ©²«¦¢¤²¬®©»²¬°µ´Æ¿ÄĵÀĽÉĵÀȵ«µ¨°¸¬ÀÄ´·®¬¶¹¥«±«ª¦»´¨°®´²§ªº³§º³·²¸Àª·²Â¼´Å§¾®·µª¨¬¡¦¥¢£¥¯¸®²µ¶ ¨¤¤ ·¢¥¦®²²¦ª¦¡¨ ¡¯²¢¦®¥¬¥
©©ª¢§ ydi]kjMPMNT=CANC::I@77QO]^RVQAW`\BJSHVKH:Ue]NFON[W[RPQX]GAB[PBG>NC9HGHNP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1[bZ33806p[bH05JpiVCWFyfC;¤¤¡¦¿¦¨¯¯ ©µª¹¯ª£ª´·±°¹·¯¶¸¸Å½Ãǽ¼ÃÁÆÀ¸ÁÆÁºª¶¤»Áø¸ª±»¢°²¥§ª¹© §°ª °´²ª©¶µ¬¼¬²²¹·¬¹°Âº½¾¦Ã«°·¯©««¦«¢¢ ¡±¯³«±º© ¦¡·©¥£¢¯±´«²¨« ¥¢£³°¥¡©¢©¨§£~
kimalnWPQZTACET@;;IA7:XPd^PVWDY^]MLRN^KJ>Zd^NHPN[UYPKSWZI?DXPDF>N?=IGGQPB=CFBM?:2D?77547?=95E4+75/251.-.,1>*'+=\p=>1.1e[d@1647gY`F(?8l}h[V;{cC=§¢©½¡ª°ª£±¸©¥´²«¡µ½¯³¸¼º½¶¶À¿ÉĹÄÁÀÀ¸Ä½Á·¯µ¨«·²¼¿¿µ©®±¶«¨§¨§»¤³«¢±°³¬©¶´µ½¯±µ¬°µ±ÀºÄ¶«¼¯±¸«ª£±¦¤ª ¤³ª³ª«³§ ¦¤´®§¢®±§³²©¤¨¤¡¨µ©¡¬
¦¥£
{flrgpr_FYfVDCMXDZ9HB6>]Qh\NY]G[^]NMRXdJJC\b`PKMNXWXPJVVWM=EUJEDAM?AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,+%2+*5K1.'__aU150=`V^8)C3YU\gK5zfL@¤ ¤¬·¤¬©¥®®¶©¯³¹¦¦°·Å·±·¾ÀÁµ´ºÅ¾ÌŹ¿º¿¹Ä¸Á¹²µ¬ªº¶»¹¾µª±¶§«ª«¬««½¬®±£ª°³®®¶±¹·©®±¨µ¯³»¼É²ªµ´±´¯®§¡³ ¨ ¥²£ ¦¯¡¤¢¥§²©¢§²¬ª¶¥¯±µ¯¤§¬¸£¡¬¥¢¢ z{knxnv{`EajYIHY[={JGE6AbTi[M\aJ[]ZRRRb`LKE_``PLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`U`/5(C^Q\.*B/JGP[H3cYUKD °¨²©¥£®®µ©·´¸£«´·É»´»»¿¾´´·ÃÀÌȻü¶¾¾À¸¿¼±½®§º¹·¶Ã·«²¹¦®«§£±ª¯»¤²²§§¢²³°±±µ±¸³©®«±§¸¯µ´ÃŶ©´µ«°ª§£¶§² ¤²§ ª©£¥¥¥·§¢²´¬§±§°µ¬¥ ¬¨©¸¢¦¡¨¤ v{
nqwv|~\Kel\KNc\?b{GI8GgWe[L^bMXYWTXTi]OOHa]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANHf27'FaLV%-B.=EMQ<3rkJDC¥®¥®«§¤°²³ª·°¶«µ¹É¹®Á¼Â·³±µÂÃÎÅ¿Á½´½¿¿º¿¼³Ä¨©¹°¶¶À½¯«³³ §°¥¦°¥²¶«²°¬©¨´¹¬´²µ´¬©¬¨¬©¹®±±Ç¿¸¤¹¯©¦¨°¦¤¤®£©°¢£¢£¬¤ ¢ª¦¦¹¥¬µµ¤©«©¬¯¶¯££¨ª ¤´¢
§ w~
||}rtr~}}[Rdo^NZf]FD[H;NmXa[M`bNVWVWTYg^QRLcZ[TKGOTSNGIVS\N;P^IBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Bc;6*HdHJ+:I?3BIS,>k=HHªª¢ª°¤¨¤³´±´µ±±¡«¼Ëº®À»Ç±´´ÂÂÑÅžÀ²¾Á¼¿·¼Ä§¬·¬³¸¼À°«² ¤§©¨¤°£«±ª¯¬°®¯®«³º§¶°²©²©«¥¥¤¯º¬ª±Â¹µ«¹¨¨¨¬ª¨±¥ª¤¢®ª¨¢¢¬¤¬¢§©¢¦£¬·±² ©¢ «®°¬§¨©¤ §¡ ¤~|w
tsrvl_Y`ncQsq\K;|F>WuX`ZOc\NUVUWP\b^SONhXWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*35>10485(5/*,.30;),,'%234$,2-860)(1<]J0.IgDF8<B05EKX1@[?MF§¢ª²©©°¶¬¸µ®ª¥«ª½É»°¾·Â¯°¬³ÄÃÎÎþ¿´ÀÂĺÁ´ÉĬ¯·²¸¿¾³®«¥§ª°©§¨±¥´®«°®±°³¬³º¤¸³¬¬®§«¢±¸«ªº·¥µµ£©§¬¬ª¡©§¦±²£¦¥¡¡¬ª¡ ¦¤¢«¤£§±·£¥¢©ª®©¢¥¤¤
¤¢|zt~tw¤yk^`ngWedN@gLDbyWbXReUMVUUTO\]aUKMiWVVIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06WZ.0JgAA<<C+:JO^4D@HHD¯¤£ª°«©µ«¶±«¤«ª©¼ÀÀ¸¹³»µ¥²¯ÄÉËÑ¿Á»¹À¿Â¹ÁºÁÄ®²µ±³»À¾³±®¬««¨¶ª¥°«¹°©±±¯²¶ª¶µ§´¶¬¬¤©ª£µ³¨¨¤´´ µ¡©¨«©«§ ««¨¹¶©ª©©¢© ©¡ ¤¢¦£ª¦µ®¨¦ª¢£¥§§ª¢¤£~
£txu{xoqggqx\`sjO]VHmxUdVRcPMUTUPOX[bUHPiTVTGPYUI>IHOQPxLMV=<KD?@A<@CUC9AK=5;E13;97*4:=+-341*8**+*,)*(/*&)%3;,$2)2021%/2Qc02?f=NX?C,>LT_/Jk6PE;° ¥««¥®³´¯ª¥¯©©º¾»À±®¸®¡µ¯ÉÇÈÑÀ¾½»¼Â½ºÃÁ¿¿®²²±µ½¼Â±²³ª³¨¤µ©¥³³¹°£¶²¯²¹ª¸®ª®µ««ª¬£ ¶¨¡¯³¡´ª¨§ª¤«¡¢¬¨½¯¬®¡§¨«¯¡¢¡¨§¨ª°©£¬¢¡¢££§¨¥}
¤
xt}uxy{tszi¤ui^elug}RXp^JxsSdSQ^MMRYfNLVYeYFSiRR?BNQaQ:IHLSIqQLS;<I?;<=;@@W<<>H73CB15:93-5::)-31--6)(+-,52#2)',%.;.&1.0-14%,0Lh:48_=ad?F1CP[[+HO:VB4± ¤¦«£¦¤¬¦´³±ª¤°§ª¸¾À¼¯¦¸ª§®°ÉÆÈÑý¿¾¹¾¿¼É¼Á¸°°´±º»¹Á³´»¬¸¬¢´¦§¬²¶¹³§¦»µµ¼¯¼¦¬µ«©¯¤ ¥¬ª§ª³¤³¨ª§©¤©£©¨©½¬´¯®©¤ ®²£¤¤¥¤¨«¥ª¡¡¥©©
~}
¢~qzy~|iw|zuqq}hy
d`hcr
zmgy]^VBWzmTaORXKLNqt]HZ[gYEUfPD>KNDCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KH1%90%,,09/,,+6'17#-/GjI14X=fbAJ7GS`U*=;EZ?*±©¥¤¡«¤·²²¥©°§¬¸Á½µ¯¢¹¨¨°ÃÉÉÌÁ¶½¿µ·¿ºÈ¶Ãµ´³µ±½¸º¾·¹µ¿¡³¦ª«°µ¸´ª»¼¨²¿²¹ ¯³µª¬®°£¥¨©¢¥±¦¯ ª©¨¢ª¤© ¼¨®°®¡«£¤®¦¡££ª¢¤¤¢¦¬z|~£|yk}vyxb{zqpqsxitkgdhaosmbjp`pA\xkV^NQQJJMSYVM]^mWDX`O^PHMDF;7HEKO<rhJK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*K>*49&'.34.0+/4&,:$40BhY13S=e_DL6KWeO)<3P[=#¬§¤¢¨¤¸¯®¢¯¯¨ª¸Â¹²¹¯«¨´ºÇÊÈ¿·Á¾¯´¾·Ä¶Ã±¯º²²Àµ»¾¸©¹·½«¤´§¨ª°®¹±ªº½¤¯¿´´ ®·µ¦§§°³ ¤¦§¡¥§¨ ©®§¡§£© °¸¤±¯¡¬ ¬¤¦§©£©¦¨¡ª}|{¡y
}{so}qst`yxiopqojsd{lifdaf`[sjrMMiXZMPLJHPRQIN\_nSDXZRgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZhH*?0ZY5(¥ ¡¤¡·«°¤´³¨¨¹Äµ±® ·¬®°µÆÈÀ·¿Á¹°´½·¿»¿¯«½°´¿±½Ãº©»º·§¨µ¨§«°³±§¼·¤«»¶¯±·°©¥§¯²¡¤ £¤¡¯¦¡¢§¯¢ ¢¤¥¢·°¡¦±«¬¢®ª¥©¥¦ª¤¢©¡z~yy
~zzprwnot_xwdllljinfsikfi]ds`[kuiZI}^[XOOJHHRUF29_^lPDXVYeMIIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<#8R=*113>D5,-'42*;+139cl84GAf[HTDU]hE.<2bU,2£¡ª¥¡¢ ·ª® º¸¥«½Å²¯®£µ¯¬¯µÄļ³¿º·°³¹¸º¸»®À³´¸¯¿Á¸¬½ºµ¦¢³ª§ª³«²¢À¶¥§´µ©²»©§¦©¯¬¢§£¦¢²¤¤¨©¢ ¥ ¤¸¨¤§®§¥ §©¢¡ ¡«¡£¨¤y|
}y
{w~{ltrllsaxthhjgfo
ghicfij`ibjg[e{c`SsT[[SLIGIOS@!*i^jLCVU^`KIHEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,>0-N?.+-7,1195,&.5-80576`tB3CDg[KWGU`hB379eO'2££¤§£µ¦ªº·¦«ÃÁ¶¯¬£µ®§¯¯·ÀÀ¼²Á¶±®²¶¶¸·µ¬©½³¯²±½¿¸®»»±¥¶«¥¥´©«® «¨¥¯³ª¬µ»¨ª«±¥ª¦¤¦¢¤©¡¢ §µ¦¯ª®¡¡¡ ¦¡ ¥¬¢© y
w|
{r}}fxokjlguskcgedubeffejjdkqZ^Y]mdaNhWZ`VJGIKMRX>9`liGBTS\[IIGFA.<?9A89RG@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=+*,0A*JK./*+3722(57$+7.72685\yN2>HiZLYJVbfA:3AfH%5£¬¡ ¥´±¢±½¶ °Æ»¹±±¤·¬ª®©¹½»»À²¯®¶¯³·²¦ª¹±¯´¶º¶°¸½¦µª °¥«®¤Â ²¤®±¯·µ¯®¢¨ª¥¨¥¥£¨ ¬¯¥¹§¢¡£¤ ¨ª§¨§|t
|ofynhkjgqrk\hccsaehjnlgkjgm\lluqaTbhdeZIFLMOXQQVaeT@VSYUFHFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24;6#3*)6.55465Z|]19Kj[M[KXdd@A1JeC'4 °¡©²°¸Àµ³Â»½¹±¦¶¯¨®¥·¸··¬»¯ª«·ª´¸¤±µ±®©±·¶±³µº§¨¶©©£ª©À¤®°¶µ±°ª¢¤¬¨§£©¢¤ £ª©©»¦¤ ¡k¢q¤u©§ ynj~wql}o^c`gkuw~fhuifW\isnNPjcgrg_dfnlj^``gOKD8ETg^JGQPUUKHSaoteF[QUPFHFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,+08>G601.*.*/568,#1'214:176Xl16Ok[N\K[fb>G1Qd=+/£° ª«£½Å¯¨¶Â¸½½§¶°¥«¤¸³²³°¹ª§¬´¦°´¢§·µµ¨§¬·³®´³¢©´«¡¤§§¬»¦¥¯³¸®¥¨®«¬¥¡¡§¦¡¦¥§§¨©¢µ¯£¢££¡¡¡¥¦ªrx¡vif}sx¡o~{¡ {tvlmheczlqbTmcliqXjpoX^i[kk[qnzrhZ^FN>F_MFRVVQQRWTg^LXJRRPEGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82).1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Wa7/(¦«ªª§©¿Ã®±º¼·À¿ª¥·°©¬¦²µ®¯³¶«©¥±¥µ²¬´¶´¦§©³±²§¯ª ²© ¤£¢£®µ¤¥¦¶½§§ªª¬¨¦¢ §£¦£¤¤©¢¤¥¦ ¶£¤ £®©¢
±£¬yÔ¨ÁÇyx±¥·dÀ¿yy|Êq¼Å{r¶§ºzl±«°yhkX±®oei¼¼nhznrØ~Sjb¶²ru¡ªWOWaOVNFT[XQPR\W\P@\DPNEGI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww21Tk\O[M^g\>L1[]41!¦¦©¥²©°Â½²µÀµ·¿Â«¦´©§¯³ª¯¶´¨¨¦µ¦§¸²°µª¥¤§±®®±¦ª§¤±¤¢¡ ¯¢´º£«©¡®¥¢¢¨¨ §§§¡¦¢ ¯¢£
¯jjª~gdp¦q®¡¤~w»|k¡v±_j´[¥f`fzfjxj©e¾rg¦v²j|±xtcmm§m[ EigEu`}g{¤§Y_«ixzj§7J¯[WTlc[KOX_\WV;NOWV/HSSJDEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:5/'$203B/=;Uv2-Vj\OYL_gY:M5_Y31¢¬§¥£¥ª²¸¬´½¾°¶Ä²·ºÂ§©°«¯©©°®¤°º°¤¥®³£©¸¨²±°£¥ ª¯¬°¦§£¢°£¦¢´³¡¬¢ ¢©¤ ¡§¤£ «¦¦¡
µµx
©µw³·~©~k¦z
w«gk±[¬{tpx °vwqkkl|N¤XHcc~ch¦`yruS^P©mcq~b.Q¡n[Tkg`LK\dX\ZB>°xWXA#LhECDA@A19>88:84;:9<9:A:E::;6:CB8=?KNG:5:AFB@AD<FD;0201;F,0.940,.(/3,>831/2-D1<<S}n3+Xj\OXM_gW7J9aU50³¦¦¡®©§³¬©»¶Â°¼Â¸·Áª¬®®¦®²©¡¯¼ª¡§´¤«µ¥¦²²§£¢¨ª²¨°¨¥®¢¤¨µ¯¡©©¨ª ¥¨£ £¥£¢ª¦¢ Õ¹p°Â~Æ|Ö»|¤¤{¤¥z¬yV¯{~j¹Z¹w}¦|zªy{±mt¼
oP¯§ÅQ zc`ªbsrm`Sµ´È|c¤3Bv]QjhcP@XfZdaJHMlK[SOYfZCD?E?0<<59;74<;8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DC./0483+-).323971#%5*>3==Qwj6*Yi[K\P_fT7G:aQ72%¢±§¨¥³ª¥´¨¤¼·Á°ºÀ±µµ¼³µ§±°£°²¦®¶¨¨¹®£¯± ³³¯ ¤§©°¨´©¤ª¡ª¨°©£¬¢§¡¥¡¡¡¢¡¢¢§¡¦ §¡²nhµq«o¦r´sr¶{£¢~ ¥~°vÒÑv\®|¤oª¦k
}}{±sx³etofRÈZÂ\yb__vsb^YÊo¿uMKµSUÆdTQjcfXAOj_liOUGI9=WR[WXHC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>HI91746A>/.24252-).26,742&60;5:=Pqh9'Wi\BNT_eP5G=aM62/¡¥¯¬¤ª»¦´¥§¶»¼²º¿·¶µºº³¥´´¡±±¢¬°¤¦º®¤±±´·¨¦¢ª¤±§¬©¤¨£¨ ¦«°¦¢¥¡¤¦ ¦¦¡£ ¡¥¢
¬{w¨v£©o§¡¢®
³\r³R®}¤q×}w
w¯w´aelZ°XKuyf`^vwhk^¯wxl5yÈ®²_ATo^g`EPl_qmVUM.eciSYQ:AD@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@=V_cN6GC`I:88 ¸°´Á¨²¨©²º¸´¸¿¹·²¶½µ¥¸³´¬¨«§¶«¨±²«´£© ¨¡µ¦¦ª£¥¡¢¥§¬¯¦ ©¢¢¨¦ ¥¨¤¡ ¢ ¦©}}¥x¡ªp§¡£ª|yo±Z¨ ytØvt§¤|{²^d ~l\«[Zhgªcr{kr]¬Z kneOJC¡\ZLt^beMZa_rs_JV6JYHE=HFAL35A8.;>05A78@<6=<F?:<6?=B7.HVJEAH6KIN@IK@EN::@4.;>002144+*05/7,&21($$6671<PeeA&Uf[?1U_bL7FI_C1>8¡¾«´Â®«©¥´°¸±µ¿¹º³±·¼ª»´°¤¥§§ª±©°ªµ¬«¯¡¡ ¦¤£¹¢£« ¢ ©°¯¦¨¦¤¨«§©§ £¤¡¡¡ ¡«®mr´r©v¦s´xs³¤¢¤w¸o{¢kk¶Z
ei¡¢§mr´t²j
ku³af¢oj\`M¡|Rs£ly~oq\¯V<wfTon.\§ObRkealYb\`p{cTZQ>>mp3BB@?L9!7@6.;@37C58??3;<CDBJFMIF62JTKEBI6IJP?HNCFP=<E50;<010/75,+,426/#00,,289/9N`eD'UdY>/U_aL5FM^81B8¥º¡²À®««§·©¸¯´Àµ¼±¯¹¸«Á¶©ª ¦¤¡ªª§¶£²¨®ª § ¥«¹£¥£¡«¶¯§¬ª¥¥¬£ª²¤ §«°¡£¢ ¡ª«Ô»s°ÃÃ~Õ¸x§z£¶u}wv²`ºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¡~t«}¾ns¼t²uxnqn¤t½]w}[ay¼kZV[jz^j`dfbmwoY[YCA@r?CG+5H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7A9§¡¼¢±Ã°ªª¬±§¹¯¶Å±º²®»°®Á²¬¤¢£¡ª¤ª²¤´¦¤ª¦¬¸¢®¡¥ £¯¹±¬£¨§¤¤ ¨«©£³¢¥§¢¡¤° ª
¶·xµwnknsnysÁ»½{²¨pt¸|{|¤»¹½uz´£tvut°ufiµtrpw¶^y}hymyb¬pu
Y[§jDdYSf`c]cQgfqluBNPLD;ZL>J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7LT_G'SbV8*O]]=+:VV'=;<§ ¿¥´Ã´¬«§¬«©»®°Æ¯µ³®·§µ¸©£¡¥ ¬¤ª¦µ¨¨ £¬¤¾¦¡«¢¢¨¢²µ¶¤¤¢¦¥«¨¤¥¡©¦§£©¡£°©§¢j~i¦xs~tzez¾¾Àºnq_rjZ^adk`cmvbke^`cqir}gj~rtx}}b[wthP\n|{kXlzrIJo
pMtMEW]f`L[Xgc^O[muiqQODEM;HI<L?2,2A?8/5?C<9;@;=C>RVVWYZ[\\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7JR_I'S`V4)P^L(3=[O'?2>¨¨¡Á£´º¶£¥®§¨µ±¬È¬°³¬µ£¾±²¦ ¢©¢¬§®¤¤µ©¥¡§¨¾§©¦ ¥©§°²¿¬¦§¢©¨¤«££§¢ª¢°¦ ±¥¢¨££¦¢gm}qw
µª ¢¡z¥
lj||tqxyvv{jstucw}vkp{m`c]pgMYYej_WZozmmfSOFS9OZNRO(+:JB635=@A9:C><ENSSTVWXYZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J&R^S10T^:+=8\K,<-@³ ³¢¿¢¤±²· ª¥²§¥°µªÉ«±¥µ¦À¨´¡¤¥£ «¦¬££¶¬ ©¥À«¤¢¢§¨§²Ã¯««©ª ¬¡¢¥¯¦¡¤¨¦¡° ¢¦ ¡£ |ª¨{
¤f¡³¯
vz|vyzogykuyrhszvktdyf`idbdfjYk{pij\SLPD_UF@??,4@F;45;>A;<?>>HNNOPSUVVXZ\_aca_^^]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMMD/T]Q05M[17E4\G5<,@´ ¹¯¾¬«®²² ª¦±¢¬³°Å°ª£³®¼¤´§£¡¨¦©¦¤¦³µ°¦®¾ «£¡©©¬¢³È³ª¤«§¨¤« ª®©¥£«¡ ¡¥°¤¨¥¨f|e~cylhkz¤«ke~g
eeihz¡kh¢wkj£slnzzXe^
^lv\hswwnxxsmytw{jY^ktd]sij|qlc]QMWJdX@J4=F7?FD71<=?AD<<DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AJ[J/7ZO6)EY/DO1YC;?.=¥º¼¹¯¬³±ª¥¨®°¦®°½±©¨¤¯±¤¡¦«¬£¦¨©²®£¢¯¦¶¹¥®£¡ ¥{¥¬¢¨³Ã·¤¢§¯£££ª¨¡ ª¯ª«£ª¨¦¨¡¬¡¥°¤ª¡¥ª~¾r´rhx¹Ä¸q¢£{¦sª|ËÀÀ»q¢|À½ÂÁ{{ÃÀ}k¥±ooÊzwvzyqzqx
ymwbf_xd_ec^thmdbXLVIQZHOE2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>I[L*#BP/#F[3PY/UAB;/8£¸Ãµ°¯À©¨£¯©°¯¦²µ¯ª¦¦¦±««£ ª§¢«¢¥¨¥¤´£¢¦¬·³§¯¢¥ ¡§«¤«¿À°¡©¯©¢¢£ª£ ¡®¨¬¦££§¡¥¥©¤©ªª¬¡¥¡£Îyz¤y_®^§¢ |§t«¯^c©z§
t³c«¡³j®t}¸aY£Ínu{Ú{p~v~e{vvk}n~
~m`qkpg`_yd[phjdf`RTRW^KOC5AHED8>6;@?A;=7@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-J0';\;L-!P@F4.1ÂÀ¿µ´°¸¤ª¨´«¦²¬¬¤«§°ª §¥¢¯ ¨§£¦¡°¬§®±ª¨¬ ¥¥¨£®¤«°¨ÀƳ¨©±®¢©ª¡®¯§ª©§§¤¢«¬´¦¢«ª£§¦¡° § p
t¨q±|q¬~¡¥w«}r~«vz|~ª¢~«{{VÄzoÁ}mupmeveoawnromeotup`gmd_oiinfcWS\aZQQB9II@D<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1' '45-&7=WJ-<'>1)3V@F!G:C1.+°ÔÆƲ´£££¡¯¶®¨°§©ª¨®««§¢¤¢¦«¢¥ ¨¨¢°¬¨§¯¬¨§©£¢¡¦£¯¬£¬µªºÍ±§®¬¢®¬ ©±©©©«ª¤£¬¯±¢¨¬®¦¦«ªª±¢£¤¤j¤uz©tz²q¥q ¤``R¬®v®¦z{f£¤£}©~®^|©U¢z¢{ïÅs¯³³¹qb©¯Âthmpnywwolfdeqpf{hc]W`jXXTKMQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799674,&$" ('"+-"$.!3-&@DWH,G+66*1PKL# A9D4,'ÃÉÖÕÀ¡«¨¡¯¢°µ°¯©¬£¨¦ªª«©¤¦ ¤¥§¦£¬¢¬¡¤¯¢ª¤µ°® ©§£¢¨ ¦±¦£§±¬¶È²µª¬©¢ ¥³¡§««£®¬ª£¢«£³¢ª³±¡ª¨¯°¶££§|ªlu«y|°o¤Ò¸´¸É²__©¤ yxªÉt£§©ÆÆxe¡¥s}¯^pµc±uK£m§Gd|ppzt|{m[fjrqfj^bYcm\^XHMLKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75685/)(%&%$&),4ENPPMFKJVF*L0/>-5OTQ;<F2,$§¤Áƹ©³®¬¥¢²¹¬ª¡¦¨¦ª¬©¦ ¦¥«£®«¥ ¬©¥¦µ¢¨ª¶²¬¦ ¥§£ ª§®¢£§ª°´Â²³ª¨¥¡£®¦¡¥¦«¯¨§¬£·¬¡²¹¯¯§³´³¤¨¤Nxz£|¤§¸{|y¹~Ìƶx¡}v¤£¨~°
¬}a¥l£p
}r¬`¤sq`¼}RUu¤|~tzs~p[mnwrjoZd_hncd]KMQTBIHFI:9K>B108866877-*5==?BDGILNPTVXYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOUF<E3:P[T6?H,- ©¬¤«¹«¯ ¡¬³³¦ ¥®®ª§¦¦£§¡²®¢¨¦² ©¤¢µ¢£¢©´¸¤¢£¡±§¦¡¢¯®¤¨¢µ²Ã±ªª§£¤¥¦¤¨®¡®¥¦°¥¼¡··µ²¹±³§°¢¤
ѵ÷y
¦x¢w ¥qª´nrj£{s¯¥¢¦mp²\¥szl{}n©a¢qqbs²¸hx¦~w|ymixixsnt]ddnmfh`J[XX<HG@U3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^``][ZZXURRQF:2230/++(@QRTUTSTVWWXXWUVVTQOQ[U%!2AH$)%s¿¿»ºµ¨¤µ¡££©§®ª«¥¢¥ µ¦¢¨§°£«£¤£ª´´¤¤©® ¦¤§µ ª£µ«Ã°©«©¢¢¡¦¢¦¤¦«§£¥§¾¬¾°£°³º¬´§©±¥§z¨}|°w¤¥l±o¡|¡¨¬
®
© ¡{~«ªx y¯]£|¦§d|tk®]¥kq
]`[ m§zz~klb}tmz`geqohghCY`[=KT2U8BBC7$$3+''3, /6674359@CFIKMNQSSSVZ]_a`aaa]][ZXSPONI7052.*,ATVVVTTUUUUTTUTSTVVWXVUUQHFIJ#((½©Æ·Á´ ®¸¥¤¤£ ¯¯ª¤¹ ¢ª ¯ª¡ª¨¤®°¬§§¬¢¡¥¢¥¨¦¶©À¯¥ª¤¦¦¤¤¨¬¬£¤ ª¨¾¤Ã¬ª¢¡¬²º«®§ ³¯©ªv¯~
}ºd°e}¡¦¬°
¥¤¡¡ [lj³`{{±lgn°[}´[¤kÈ¢e{¼YvµZ²}R¯z¬X¡m¨{x~ds~bwt|ajfqnfeeOUc[BT^>I(>9=4!"-%2. *1/045799<ACFHJLNPPRTWZ^```ab^_\[XUPNJGC553./@UZXWXWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³²·½»´Â³£¬¦¥¶¨¡ ³³©£ µ ³¨ª«¯®«¯¨¢¯¬©§¢§®¨¢¥££¥£©²¨¼¯¥¨} ©¡¨®§¥¦£¥©» Ƨ¥©¡«´¶®§¼¬©£¯¤¸Ãº§¬¯¦¥©~սªb£¿½}~£×º¸µ
½¾j£o«mz²°Çj«°½xw¢¾»t¦zzc}{dfy{`kekjbPb[Sj\@TaBN)=:4/$%2 $(0496677;>ACFGJKMNNQTW]a\__a^`[\YTQMIC?<A?5=SYXXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ¼³´±¿¹²½³¢®¦¥³¦¥¾©·±¨¡¿¦¦²±¹¨¯¦§°¬®¦£¬¡¤ª¡£§§¡¨¢ ¬ª¹®¨£{¦ª ©©¡ª§¡£«»©Å£ ¯£«³µ«°ª »¨¯¯suª¤·epgmow¤u®pq¨££rmmmexomqyipigqhigpd]cjoY]g~w¦`bqofd¢}vfxhjy~ydlcflbKdXJkY:QeER'K:+# #,)-2.5:457:<?ABDEHKLMOQSV]WZ\``a]][TPLHD=:AB7MXZZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨³ªº¹²³«©¢®¤²©½±ÃȾ¶ªÀ«¬£¡§¬º£¤¬¦®©
¦ª¢££ ¤§©£ª ¥¦§¯º«¬{¥¨©£±§£¬º°Á§¤³¦¬±²«®¬¨¹¤®¸¡¨¥¶¢©ª³£« ±¡¡ ¢ ¤¡ª¦¤~gtvtq§l{ ¡qiwpwv|zjlddocU`X@i[HcaOZ+F=+&!740.!%2(*699469;>?ABDFJKKMOPQXUVY^_ac]^UQJED>9=@ASX[\YWXXXXXYXXZZ[\^__`^^^__```_YY`¥©ª¥µ·®®¢°¤ µ±«Å¼Ä»¸ª¢¥¦±©£¶§©µ§¨¬¢§¬¤¡§£¨©¦¡£¨¡µº¨«| ¥ª ¶£§¬·§¯Á®£·¦¯¯°ªª³¹¡¯½¦£¦¶¢¦©£¬¯¡£±¨¯£ £©«¡ª
~fuvysj}¡ zrsyq{jnd_pi`[`YmcP`dP[:GGD=2==7.*&+)&&406658:==?AACHJGJKLMSSSUZ``i`eVPJACB:9EMV[^^[Z\[[[\]]__]^_`aabaaa`bbbdb\[c¤¨£°³¬®£©§ ¨µª¤³»¯¬¬¢£z¢±¤¥°¨¸§£ª£®£¨ ¡®«¨§¨¹¶¤¥y¢©¸¤¯µ¢°¯t¤¾£² xz ª²»v¤ª~d\bv¤~n³£§®ª£esyp¨l¢¨e¥
wkvq|ai[vghr{¥dyxinykpe`vokkh[febboS\>NNNRG=@TB91/&4:316678<;>@ABFHBFFIKMTTUY\_hfgWQJ<DG;8UR[`ab`^`_`aa_\]___aabcdabaaedchd^]f¦£¡°±¬«©¥¨£§¤«µ¯²¦ª¦«s°¨ª¦¹ ¤«£§¢
u®¦¨¤º´¨ uw §³µ³¼§¡~§¢z£¯·¦
±©¯£y¬¢§©§
w¥z¦{±z
cympyq
txht t| ~j
kx{qpgdwnilk[ekjes\^ITLQ@E5.YTU6)!09=>643568;:=>>@DH?IEJKGSXZY[aahfYQH9EL;>bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah£¦®®«¨¬ ¨°¦§©¥®Æ½°¡¦©µ¬§¢ ¾ }
«¢ ¡¨¢£º²§
pu ¤¬´´Êª®·
°±®©¦|¨r{w§h¤y´¦¨Â«¡q¤}
±¡|¡ |
ms
zr|t
Åf©£k¡p
hwt{vghupggl^colgmXgG]QL2E46M`c7&3<DGD:64658;8>==>BL?NIJLCPZ]\Wb^jl\QE=KM@JdY]cfhgbbbbdc`_babcccdiicbbbecafcbbi¢°¨©¨¥« ¤¹°ª«¦ £¤ª¤¥©¶£¯¡§¥½¡y«¢
w ¤¢¹®¥bm ¡¡¨~¡§ ® «¯¤ª~¢vj¬uM«x¨§ª«}¡{z§ikg¶}n`dY{dhr}yl]{m_Sp\_ly`Ye}q§ªk£nr¥piel[m{eY_bWPovemtrjjo^jomljXiO]WE9A4GC^k4,ICQMN=84859;6@;;>BO>QRLMBJ\]_W^_cv`MD:MOMTb\\ffiibbdbddbab`cdcabikdbddgdbgeach ¹¡ª£¦¬¡¶¼«®¢ ¡¥¡µ¢¨¡ ¦´u¦
¬¤©¥±§¢in¢ ¢¥£¡ w§¡§©
¥y}}¢pr{ym¨|¢sv¦f~v¤_z}s¢n·´ºtµ¨dƸ{p·q¤cs¬«`}j³~n}q£ls¤s¤`³p|´ts[²jbosuqhoXklrsf]i^bKD=D5QAYq3=SG_JR=<395::6D;;@IP?TMNQ@E_^[ZW``|dHC8LWUVbaZffkkbbeadc`ab`dd_`cknccddhdbgfchh£¹« ¤¸µ® ¢££¦®±¬¡¡¤«x
p }¨ ¢¨¨¥~k{} w¢ r¢©¦¨«®}z z£xs} ¦¢d¡|lhn{§}rht«tªg]
vhªj¸f\¨pa^§vuhunm§]¨~w»k~ª[]´g\nqywki[qjxyc`fXbAPEN7VBRn4KZZ_NZC@151;;7H?:CGT?YRY]>Db^V`Qac}iEB9N[]XdfXfgnmbbe_aa__``ec^bdoq_deekecihgkiª¶¨c¬º²°¬¦¨®°¨«¤¡ £jq{z¤
¨£ iy{£ ¢rhq©£¨ ¨}°£¢¸w£³¢£y{«¢q¡|
¯µ}k¡x~´££«¨|}~tªZ]o{xbL~zz
cyBMY¢jq|muy±³§unr|orj¤]vHec`sp}}ne`lhv|ddaQ^V]TV@YEQgDSW[bX^ID=B8?B:IE8LDWAVQ[VDFb\Z`K`m~qEC<U_bZejVghmobff^aa\]^ahb_edvl^egfkdflihki±®S_ §³¹³³©¢«©¡«¤¡¨ w
ny
|r¡s©|l
q¡x
|¤¡£®}µ{¥z©¡}§hvm~t¡sq|
p®}¤¦£o^¨gu£co¥aÒ|zxrsc¢
~£s£uk³`sª²¨¼wm~¾¦©´^n}qos¢r]£gt¦ah¦mÔ|oxykzwrm©¤g`eypkgfdmuwg`bS[eQQaIWIT_WS[ej\dPECKMJKBJE8P?PMWSXORR`feiRcwywIFEc]dZhiTihjocjg`c`\]]_hbahe|d^dgdkdjmghlh±«T\K~©¯±´°³£
¨ £¤¨ © {p}h}wol}£ª
yvnw¢z£¥³¡¢¶z¬§¤®¥p©
|¤¢r¢®¤¡vµµµÉ¡s`©myu¡w ~oLf£pr¤{ytal~ kqd`rti{j´µ´Æ¦s~{j«ultwizurPD}³^jvkxfjgbttqnV^TYhORhIULYSU]hknVgWMJAJMKHJNAQJPdcimetrs~y{nu{{TPOl^h[kiRjhilglfce_\]\^ibdhk{_]dhcjfomeile¡°§f?¡²«¯¯µ¢£©¢¢¥¥§¥yjye yui
z¥©z}yp¡y ¦©gnxl¢d|q¥wpg§{¥zrv¹n¢b}¡mri«ju mn¦`hhu¢}`
tobh e~iuocfnr¢Z_[c¡n]o{srd¥mw¢dg§hsn¡oSo _e§T]TmmskqmphkxskoRXWVfYSmIXO]HXihsjYkVQREV\LXRaThj^wuz|p||r{rvv^QrbgbpgPjhhklngdg_]^]`kcjivu]\cicjjslfkmc¥¦zetm§®¤©°±¦«¥¢¡¢¢{qh|st}|d|§¢¬
}sh¦} «§¦x¥²¯¥xz©t¥n¤¢¼n|¥¯
|¥zq¨ g}n«cw¨l©¢uw«¦k°kv³©knma«ªv¦w}
¥ iv¬g·sw¾¤Y¦«aurso{tqbj~nhmSV[Uaa\kM]R]I^mmv`[qY[`Zgsenoqcqt`wz~yrys{{vbxdcmsdRlgholrifia_^\bkbmlzo\\bibljwmglnb¦ª¤©ª¨§®¤«¤¥©
tzo~ttrm|{
¥¥¦
vol©«¤ uy®£qy{r¦q}}zx{~~v z}l
[yxqyqhn~qtq
e_wusuoynnm^wixf©~t|jov}
vmlgsy{x[kXyhnwrqowxo]lnigVZ`W\ekcUaU_R_pxylkvejkjv|qrtsaoubs{xuyux
}{mldxn^Wnghukxjijd\`ZcjelpunZ[bkdllynhloa¹©§¡¢¦¤¤«£¡¬ ¦¨~r|}~
{trp
{}
x~£{§¡
wr
ª¨ «~¨¦xozo~¨
p}qkp|hm]sqtkvsYrn}~j]jd{
_ix{{vhykaqrw_s§fnwq
yoegdzz[\jgnv[{xwtmsrf\mklbYY^ZXlq[_aZ^]ft~{uotckkj{|r{xtdmtgl{~vz|{zz~o{}s~ysiT\qiluougkhd]aXkhkjqrmW[enlgszohjm`ª±¡£¡¨£¢~¢¥{|s}v
qor~z¦¡x
z¡« ¢¢££ª¡§¦ |x§~±¦²¥k|vwe{
w|yu¡
~vptx¦
}vl|yjrhatp}zwvowt]^ohn_^Z\]ShqUc\\aliu||sopdkji{mxqioplf{rx}zm|zx|}zyNdvksmpzdkebb`[tfpfrrmU]ltmhyzqgikeº¢¡¤ {«
}y{nxr~ml~z|ªr}{ª§ ¢¦ ¦w|¥{|©¡«~ox
qt`u~
nyut¢
t||rr{{y§w|ok~{mhlmg^yh|{vtuu{w\`p}nu`cZ]^QfmSeZ^akivz~qlldkjglslltoxnynv}vr~{{|{`i{juhidjc`i\duhobunlTcqyepzzseimm·¢¤{x¦¤yz
|m|xs
}}kh}|~|§p¡¡
|¨x£¡¡£¡¤
y }|¤ ¦~~utpv`}r|r
hwqx~s||py{z{¦|
vzer{~xzpljf^}sh|uus|rj^`tvpxdcY_^SkhTdY_agjvxqfkclhejm~hnqk}wzks}tv~|{}jrnsiahlb_qVtomn`xhmWjtvcu{{rbjny²¦¥ |v¤ ¢x{~~q{tv
~xgc}x}y ~o¦¦
v¡¡z~¤zx
~s¢¡¢~|vq}nzd|
pleuo|}x||{q~x
y
¢ww|v_xw}s}wflda~ijwstt}q|bcasnusmaZa^[kdRbW`ahkvyqbjcmeh|lhthloh|ymqs|~z~|mvttmeljacuViqn`yglbjvpfy|zq`rl
®¦¨}xªyy{}|{xtyzs}d^}
t}~}£¡r{§¡ t§tlzo£|zqykul{}~n
wo}~drj{ty~ux}|
¤y
t}tvn`{uzq|oance{bnovrwwstav_oluno\\_^^j^O]Wcahmt{k_jejchwmflhilh|zwos}sz}z}}rzxxnlkh_iqchqoewhnlayhk}{xpawmª £¨}w®}w~{}|vwput{o}|a\~szz¥~|¤n¢¡ogz
p¡|{tsukqnu{tn
qt{|dqly}}ttyo~|
¨{}~
x~qp
chxtvp{b^paku^qjzxxlrpex]mlsmsYZ^`bjZPWWecgqqf]ihgbgqodigejhzwtn
t{u
w
|x
zw{zryjk_phtkromqgole|cnyvqlww¢¢¨ ¦uª t|v
wxrs{
kspznvnq[Y~vu ¡x
m¡j
£g~w~||nvplmnp{
ispwtxfsov|zzwtp{z£|wxxok]rsqqqxZ^p`qk^oi|ypmmjlv`pojrmZXaabnXQSZfgcupb]jmdbfkm`ff_hjuqrpuxux
ww
{{vjqc|b|oqltjholvw_qy{tut~¤¦
u
zrxtprsqulpmumw~mnUQ«xvry x{¤
|r
ig¡qw{z||kvjnkklz~ay~vzw|ygtlt{qzpwzz~
}|x}wqjly_womlrsV^obra_lnypgpffsthqkawe]Wfa`rSPN\fe]xp|_\hrbbefi_hd[gp~pkps}v|
tuy{xs
~{ywfrj`~ookz`jntt_t}yxts
|x °¥vtvspo
spqokivmn}|musRNßÈÖ|otv w{s
¡~xz~zvhl£
cq{zy
{~l{erokkyy\yz}~zyhsks
}k~~n}{|wxysmfpljtohjtmS^odpY`kqwfkjbfxrppc_x``Vk_^vONK`fc]yqt\\ev`aeed`faXissnkqv|tyuv~s{~r|~vesm|e~oplZlnyysavz{vswwy®
w~|
twpyqnomn~rddxp|mz}jhlc¤ÁÜ®ï¡skuv
¢
o q£
{uxwvn}£
^l|}
v
}}k}dxujnxsXz
z~
~xesj
kvn
{utxusqguybtmobivgR`qglU_nty`rc_h}prn[crabWnZ\wMMLdfa^vsm\\dy^`df
`cb^Yjrknkrv}twxw{q}~{t~~shuqymzntpXqzvyqewyiwr§£|pxy
¡{{rwpsjokil|t^`xv{pu{gae|ëÚµÉÃÜslswiq
|{vxrwp
¢ai}}q~qwhvriswlZ}
|uatl~}mlx}~orzulqkrx_sin\kv`RdrifS_pvt`o`]hqsjWghciXmW[uLJLeg_brs
i[\ey^^dg{`d_\Ykneojsw~ss~zvzs
|vw{vlvuyxtnxz}Xy
qogywdv
q
¡¢sorw}|xqsnodr~hflww[_y{zqqiagaÕ¶¦xnqw{pj
{i||~
zu{zpuv~a
g}~~m|tkmvtsvukb
~|~p_sq
||zpfy|~npzunojlz}bhjiXluZRirjbQbrxlae]Zjmsb\g_dl_nT[oNHOge\gnqlZ[cs`\clwde]]Zllbmjsvqo||txx
}uy|vowy{pm|w^tmi{ssgs|r vv~mv~|v}vqoljat|gbiuzZ_w|zmqedhhW^qr¼Ãuq~rsk{|}|u
vw}quru|e}
r}g~{x~|i|vfoxxsvslj
xk^rxz~
{~rixx|}nm{}wuohg|vc\pbWorSSnsiaNftxe`]\XnosYeb]jm`pOYkQDSgaZknm{oZ[^mcZbowdf\]`ljcmjsvqn~{tuz|
v~xtrxy~oo|qiyz~mm|vkjxtl
n}vjxyozspljd`t{h`eqzZar}ygqzaee±²wJbZ¤ÙÐq{x~
olzy|xxoqt}ziy
¥o~vy
p{}nxhxr{e}~udpshxpou
{vxyk\q}r
}zrnq
sxxnow{ehj}p_YwZXqmNWrsg`Klvt`][[Yt}roWg]fjq_oNWhQ?Yg_[pjgyq[[XkeYcpy_h\^emhfliqwol}upz~v
qq{|yyujzko~t}or|{onxg¡gogz~
|ixrklf_aoym_boy\dkzaqv_efÔê¾2:>ry
v~nl
v}
|xnvwo
ku{tfy§}ntvy~{xlri~xm|{wbyqdqh~mtqu
~ru}rp[m~tx{|xzqlrytnkwuu\ihwpYW|SZpeLZrre[Jpwo\ZZY]t~uhYb[gfnciLWfQ=^f\]ue_toZYTodYdqyZh^_gmgjlipw}li~yn{}zu
pnx~z{h{}jt{r{sw}yx}|kl~kh~{~}kuqghc[bgro`altahpybst^cd n\5Y¯µuj}v
swpm
uyx}zsgv~~oq~hvymey¥~n~v||q{}|i~mk{zizvr`w~qdrgumt{
|nwy|t~mXovtwvzxsn
r~}~znnjnun\gfsqQ[{N\p\O[rpdVKsxjWYYZaqt`]]`gdhifNYhM@ad[`va\tlWWStaZdorWj^ahkgmlipw|kh||p~~{zwq{oqw{j~{nwyvw}x~~zm
£{uyklx}{~prpcf^Yg_pp``gpfjotato[adjv{¾¦£È¸q
s}xsrrp{tutwyyqcwzirvfwvcj|}r~syx{lyyuh{ikysizv}h`w}jkth{iv~z~~p{v{t~bVw}rs|qwxpp}y~}vviqimrp]hcsnJeuL^nUTYsnbQOsxaRXX]bps[a]hedcjdQZpIDda[cp^]wgTVVw][enhVk^ajgeoohpvzniy}r{~x|v}pvrnw~p{wyzuxzuo~}
zw{gt
z{vgon_d\XeYmra`aqlkhn`siY^dmw©Ú©Ç²qxpu{zutu~wpqmtxul`zyfqogvn[m}x}x{mut
{
luvmhwem{vmjvw|`bxzhtuc~zgt
{tuqz|mYVt~ouyltxku}{}x{r}sgtenmt[j_udHnnL[bWVUxmbPStvXPUX^aqo\`cmec^nbT\rGBf_]fh]ZzbQU\u[[gkaVj_`nffkqhpuxtkuvx~w{t~oqtqu~
{wx||
x|}~{~svyzvty^}
yt
w{bnl[b[[aVjsc`\gnofqaqfW]ck|Êι¢jmmlqr|
{
zytyuu{jlucuwpg^}zerkjqcXl{sw~{nqq
{y~qqo}fhrbnxqjkqw||y\eywiuxfvgt|rio~yn|]Xrmt|ooqvhwv}qzt|zrfsanlsXk_w[InkMVU^TU{kaOTurQQTV^bt
h\`ljfcYnaXbpGAh]`f_]U{^OVdpY[jh]Wh`_rfkhrgprwxntzx~yus
pp{xwuyz|u~}
~~}|xvyw|mvycso
ztcnjY_[]]Tgse`YdrrfsbkeW[`iw¾®{ ·mbsht|rz{}xxsvo{vejn`usjb^~xyfq~hjkZVox¤
qqxums
}xtrnhy`jm`mvkgjkywzw[g}|xer}nteu
ofkzumtb\o|ku||fu}mqgu~x~r}lzzzxpflbn~mnVk`wUJjkORNhNY|hbNUvjLPTU_gvf]`qhgaWi][khJEkZbdWYUyZNVmjY]le\Zec^tfmdqgrouwp
v~w|
}usnsxzzss
y}v|{~{w|wwziw}|lrq
~oflfW][\[Tdqe_XcsuiupeecW\\hporteex~itvss
xywtunk{pagkgtnf]_}p{~imwfidUWrp¦||vs{s|zn{{
v||tprlgu\mh_ltdgfizo{rYgwtgpwubw
|njmzqfse`mzgsw|~buvikqtzpyys}f~ywncfbn|mkVjbpSKikOLNpG^{faMUtcJNSWajv~e\gsif`VcWbp]LKkXcaUTUsVLXudZ_ka\[ce_wfmbpisnrttww~
z}u~
nrt{zuq
zut}
}~{~v{£¥y
lu|{uzn
sz}unjheV][ZZTbnd[Xbs{ihmi`bW_Zijkohlahyxktttn
{}vumzhjyj_enhvgeXbwi~{oiogf]UXoh§vz|yuo~osuywt
vjrvghn[ld]ls_gaixh{mZmrsio~ywawxrqoyrcqh\owdqs|xbspgjxsrlxwuwd{wvoddcn|}klUibfSKmhOGRkEaxgaMSq]IMTYekw{e^mqid]V_UnnWKThXf^XNUlTJ\y_[_k]]Zbe`zhlaoounowuz}wzzxz~qtt~zvt
}}ls|
}~{v¬zlrzvuno|sjomddX_ZYZUbjg[Z^ui^nl\bV\\kfrt}ij]kvvgtwqm
{}}yvrlzhixf]dshzwccTepg
wwfhj`WVYhd§n~xzpp|fyoz{vq}~ndvsdhh\kb]oo[g_ludzh]torkq{}uubt
zwruuaplYqtbqr
|udrlalzojizxurf
uzzupdadns~ilTi^]TKscQGVaGbvfaKToWJLXXglvzdenqfcZW]XveTJ\cXhXYIWeQHbxZ]_l[^\ad^ij`otxmonvyr|}uvx}tuuxzz}~jt{}~
zz~|sq®{{~frzt||vrol{~lzbpobe]eVYYWdfk`]\s
hXqnZ^WZ\l{cpwvlb[mstguupmx~ywnnteite[gufvvz_]Refjt}bci\TX^bc¥hyt
xmnygxm|
{urx|xhevm`f`^j_]skYe]oobze[w{knnpwxstdr~zvor}rbxd[opbqq|sfqd^nvidgyztnout}sqb_fno}djShXYTMw_QJYYHbtdaITmSILZWilr{bllscaZZ[av[SKd]XiSWGY`NGiuX^am[[_bb]
hhanxylnjvyn~vtttrwvw|}~~~px}yxy}tsp¢{zyduysxulto~ly|pr^po`gblT[ZWhcmf\\qeRrn[ZXX`lwdiujj^Zmsqmtstj
|~|wnnldiqc[jrdtvs[WSdarr]bc]SZ`[cerq
tljylopz|{qwrzzzdfvg]bZag[^whWb^ohaw`[{vjirnwssthp~vrjp|mfwW\kmbqszsfo~[`oqb_jq}llt~sqxkpa\ellzagSgUWRPv[RPYRIcsb`GUjPHOZVklk|fmoqa\ZXYlpWRPfWWiSTFZ\OHruX_cmcXa`a]jcdmyxkniuy{k}|y}nqowz|t|tx
uspuo¢t{{fxon{ofxpzlsvrk^tnagekR][VgbllZ\qdOon]VXUgjthbtee]Znunquuyk||wsddkna\nmcsxkZTVbcx}}q
]c_cT[`Yccnp
sjhznesvs|lztuoz~u_frc[^VbdXaueU_`mdaq]]~phisqspuukm{qrfn}proS[fjfqtwsblvUbqj[_ne|emv|srsjm`Zdjjw^fTdUVPTmWQWSPHer_aFXiNHXTVnid|ikxkbW\U[tdSRWhQYfTSHZZPMxw[_eliZb`^^nbfkyunohvvl}{krgt{u}r}
{ss}vn¥swxnz`d|pfzsylmqvgd{lcfghS^^Tg`lo[^nhNjm`TVSogtkexde]Yptmrzxsm{v{zkaelm^`ojepy~gZVX`kx|{p_b^gVY`Wdbkq}wkkxl[vqlzivsno{rXjn_Y]UacWdqcS^aibblZ`~lfksunmwvkh
zmqfp|mrmcY`hiottr^ilReqdTbnbzcqv{ukpmk_Xaght\eVaVSNXeRO\OOHep]cFYiMI_KXmd`xhn~d`U^T]t[TR`fN]aTSJ\YPYuv]_fmhXca[^pcgjwqsmhvtzsz~|zntlst
z}|sstxqn~zz}~~}}~~}~~~~~~~}z{|~~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z||}~|}~}|}~~}~~~~~>.1111/o]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDEB1//000/>DDDDDCXhggggfo
}}{{z}~||~}}}~}}~~~~~
-h
S7¤¤¤¤¤¤£r]____aR4555553.755554Ma____^j|}z{z|}{|~}}}~}}~~~~
|y{z{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{y{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~rtx|||{||}}~~~~~~}~~~~xrvy|}|z}|}}~~~~~~~~ssvx}~|y}|}}~~~}~~
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxz}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvtuvwuqrqnprpghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkiffggghhgmgjghehgcbbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__ac_\_]`]^Z^]YY^ba^^ZY_[XWSNMLKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSTPMJMNPROMPQQQQRVVRQQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTtsuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPPRQONMOOONOPPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKLFDFJKJNINNLMOMLLNOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBA@@CCESBUPHKOKIIJHHJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:;>><ED=?FYC[V>EEGGGGBDDDFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@;;><;;<<HL==C]D^a>ADDFCFFDFIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprtusqrvyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<979;<>=:C`>\kCAB?A@CFDCCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqusurqtxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::979::69:99:Fg@\m?98<<=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==?@===?D;>=>;FiK\m>:<>=??@A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCDA?=>@A?@;]pB>DF?MdX]e>==;<>>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVppqssttuyz{{|~~~~~~mLPQNOPNNOPPO><<=>??@>@@???CFD><<=@=8::nwJ7<9EZc``dI;<=D:;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}|~~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABA@[Q<<=LPIHvwO789Thmghl`A;NQ9;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@EuyH<az{w\F=AertlmrmOFfO:=>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy|||||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCEAIsykf}`XQFbqrqouq``iJ@BBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{|{}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Gpt}~}tJSfXaqrtv|tkmcIJIIMMKECFGHEGEEEDDCA?@>>BFJJGEEGFFJNNKJIGGHKLIGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEis}|~yqBHdmlvtkVIMLNOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHIHGFEFFFDFHGEEHHFHGHFQnnpqrvvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJG`{x
m@Os
gJLMLMNLJGGGGDGGGGFHFHECDDFEDDHHCCCGJJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrswwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLN[|
Vl|QKLKHGFFDECC@ACCCCFFEB@>>@AA@BD?>?DFHDEGIJIIHHIGIIJJIHFJJJJIJIJJJFILLJJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLLJV
uIIFB??@???<<<>::<AA@><998<<=;>;9;?AB@ACCB@ABDDBCFHIHHHLMLGIJMMNMJJKKJLMSloqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJJIf
fBB=88::9878896479;<:8567789787688;;;=@;999=<>;;=ADEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIj~T;8656766645763468:876565676778:77789;7578979876:<@GFIFIFEFOSRSSROPPRTepqsttwy{|{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=ECBf
H676468874578467699766765:9:::;898987779:98868589;A=>>BA?AKLOQPQOOORWkqrttuwy{z{|}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B:=rz>:88;<=>9:;<89;9:;:99;:9===?;;;=:>;9;;<;<<9:<8::;:999<?<=ABDIJMKIKLWorsutux{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<;89989:::;?>H~
l<;>BCEEAAAB>@B@@>=>>@???@?@==?B?AA?A?=@@@>?A=><;:;99;?=;;==AACABCAXpqtttvy{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<=:;;==?@BR
^>DGIKJIFGGDFHGEBA@CECCABCB?@DHECEDEEAFEFDEFD@B?<@>=?@>???>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@CCFX
WHLMMKNJIKHIJJIECDFGFDCEFDBHIKHGGFGGEKIKIJKJCFCCDBAACBDCCDDCA=;=@hpsttwwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@?A?BBGGJY
PMPMKNKJLJIIHJFDGHHIEEHFFELLMIJGGHIJOMNLLNKGGGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?EGG=<@@88<;<=:?A>@@CFIJQ`
qMQOMLLKLJHHEJIDJHGKJHJGGGKLNLLHHIJMPNPNMOKIGIJHIDIHHFFGGIGCBACUnpuwwy{xyzz||}~~~~}~}~~~~~TDAABGHB?8?@8:<8=>;=A>?@EHJLWr
_RRPMNMKJGFBGJGLJFKOLKJJMMLOPNHIKLOQQQQOOJIJJLJLFGHGEGIFEEB@BB\orwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAHKLPWy
|WVRRTROLKJDEFKONOWVQPOQSRMSTOMSLPSUWRSQPLJMMMKNGGJFFHJDDEEBDCcpuyyzzz{z{z{|~}}~}}}}|}~~UFFGGGGHF>@B=?==B?CBFVNFOPPTY|
gVUkaERQQPI;;QSR`u]UVTVYYRYXRZfPUWZ]RTWQPNRPPPQKKKHHJHEFIHIHIirvyyzyz{{|z{|}|}~}}}}}}~~~SHJIIGGFE??AAEBCGEDELXRMTVVX[|
}al[dU:XXXSQ?@VUY\d`VYbr^]V]ZVEQYZ[Y_TZgRUVXTTVTOOMJLJIILMKOMSosvxyxwzzz{z{|}|~~}~}}}~}~~~~VJJIHGFDDBA?HMIMPKIKPTSSXZZ\\y
g;~znpXZ[ZRTRVVTZZuYU}a\X]^WIV]][[_YIYXY[]XXYWRQNPQMMOSQQURassvwwvxxxz{{|}}}~}~}}}~~xy}YNKIIIFBD@A:PQQWXPPOQSTTXXYZ[n
n~fYY\YSUTWRQWVcQerXZW_hP`f[[X\gaGOZhg\[\]]WROSPPQVVVVYZnrtwvvtwxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQORRRUSVTW_ux
}{\PUXTRTRQQLOMKfyZ]TYUV]ZLTZTST^ZXWWWzkXZ[\^TQQPINOWVXZZdqsvvttvxyy{{||}}~}}}~}}~~~zxwvsu{tk~~kry^[VUTROKFCDAM^lVRSNOQOQURSRRTcdv
~ymqVIKMNKMKHJDFHEC>ScURQQNKRTQMOYQMNQSUUMQSRPOMLHCIHRTUZ\mruvussw{z{{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YVPLILIaltPQSNQRQR[RSRQRVUbs{|}{{
u_]KC?CCCCB?DPBD@C>BHGV@HNMG]iQHFOFDEFHGHBCHGHKGCBAD@OPMSdstuustuz|z{{{||}|{~}}}~~||}}vt{mh|gnqfiedb[XSQPURsWe[OONLQSQUYSUQQTSOV`klrv{{xytrnstsyx~~kLG??;;>@@??>kQKaEFHIEB?GLMGMQUIBE?><=<==?=?ACC?><=B>JMFUnuuustvxz|z}||}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QRZ\Y^IJPQNKLQRQTUUWQQWVPX[b]agmmlokh`nrjmlqu{z}{xz||xwxdB@@B=:BCAADB\]O{NOONKLMOOQLKLWMHG@B<977599=;;;8989?;BH?\ttuvuvxz|||}||}}~~|}}}}~}xuvz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIGPRQOMPQNQRTVXSRYTNYZ[WY]^^`e`]^qvk^`gkwooljonnlfbXGFFHBAGIEEFDMRPaWRXQPSSRU[OOQWPMJCF>::6487979:366795<B=essvwwyz{}}||{|}~~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMLTTSQQUOLRSTWXTTXQLXYZVXXVXY]WWXhsk]Vaskaa_]da_^YUPMONLHHJKIHFCQPSZWTTNQSYS\eUOSTQNKIHC?A9988978847578599Gnqtwxz{{}~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOUVXXYSUTLKTUUUUWPTUWTUR]n^RNY_[VY;DVXT[fJLPRROMMNNNLJFPPUYSTNJOOTST\VRUSROMKIHHF??=:787659967665Wppswyz{|}~}~||}|~}}y}}|~~~}||}}~}|rvqxxrvuqqnppopuvtnjddjppqrpnfedc\^RTZVWUTWTRXXYYYRUOIGOPOOMRJOPPPNNOTLMIPOSTU2<XMIAQ=caQSQPNPQPNNMPNTRPRMILKOQPQRSTQROLMKLLHCBA=::876;B4566;epqtwx{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqniihpVVTUXUWURWVUZYXWUQSFFAFGGHFJDHJHGEHLHKHFLMPMG/E_R>3@>joaRRQ@FUQPQPQNQOPOLJLLOPNNPQQNPOJLMMKGEEDB;=<<9=G6676Dnqtvy{{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknbePSTRSUOWVVYYVQQQO@>;=?@BAC@BEDA@GHGHEFHJNKEGCORC8ENS]fSQSAGUPOQQPMMNLJLKLNOOQMOOMHLLIKKLKGFFED<AA>;@E;<89Tqsuy{{{}||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLOOMQSLTUTWWULLKH=987;?@><=A@B=>EHGDFFIGJJ@FAA@FHEJOHPRa\QPRNSOOPLLOMKMLMON[WKMQOGIHCIJLLKFFFD?BC><BF?B?Adqux{z{{|{zzw|wy}~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B>;?B@@>ADIECHGIGIEBB?>=CBAGIDMObeQMONWKLMKLMMLLKNNSdMJLRIIIEAHJLMNJGIFBAB@?EFEHDKopwzyy{{z|zwsxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLMIMPMPOHKE?B=999:?B?<@BBADEGKFDIIGGHCC?B??@A>CECKNQTLJIMTFIIJLJKKIILMOPRPKGCKGCBJJLMOMIJIGCCCDIJMLIZsmxyxz{{y|vrpurtyyvxjqnjllnttmtu{stxronqovsnporpopstyjN`gsjt|ygosqjqheqHKDGHHGJKIJKDGB=>=:::;@B?=BBCCGFJLJEIIFGHCC;A@B>@@CEDIMPGIKGHKDHIKMHJLHHJLKM]RIHDMFADKKNMPNKMJKFGGJMNQNLcnivvw{x{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoijthdoFKDFEGDEEGEGBC@><=:;::@D@>BCDEIFJJLFIIGFFDB;BCC>@CCCEGLNHKNHDHEILNMHILGEFIILNKJHENHCGMLOMOMNNMLIHJORQRNRfgfrosxu{z|lhjnekpmsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGJDFFEBBBE@DB>?>:;;=:=>CA?ACEGJFIILHGGGFEC@=EEB>BDCCEGHIGMPJFFGKNOKFHJFEDEIIHKIFHPKDIMLPMONOONJJIMRUTROWd`amgproryzgehhcilgqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutvlkuumrvqlnlerMGEEGCBABD<BA>A=::=?;>>@B?@BDGKFIGIHFFGECBAAFFCBCBDEDGGHFLQLIOJJLKIGHEFEDCIHHKJGKRMBNOMQOOONOOKKKPUWVUTX`^\iaminhrsbeffdihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwuksunutsqrjksMGGFHBB@DE<AA@C<89=>9?<?B?@@DFHEHFFGFEEDCECDIFCFEBEGEEFGEJMKHQMJKHHIEFHIECIIJKMKOSNDQRPQRNOMNPMLNSWVWXVX]Z]d`hbjigk_eegcgggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxnouorsuqqiozMHGHHBBBFE<@BBD<7:=>:>:@B>??CEFDFDDGECECDEFGJEEIGCGHFHFECFJJGMJLKIJLFIIKHEKKLMNORTOISUTQSPQMNQNMQWZVZYVZ]ZXa```^hec`dehgjihjfhnllnmqpiuuxrrpupppruvpusuvu{~}xvtwvvvxplupmstnprsyNIHGIDACHE<@EBE=8:>>=<<AB<?>ABFCEBCHDCEEFGGGIFGKHCHHGIGFDHKIGKHMKJKLHLKMKIMLONORUVOKUVTQTQRLOQPOTYZY\ZY[^_^`b^\ackb`dghr
hgifjmnponsqjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqvquMIKHJEBEGE<@GDD@:<>@?>?CB<@>AAFCEDDHDFDGEHHFHGIKJFJHHKHFFLHHHJGLLLLLIMKMMMOLPPQUVWOKVVUSSRQLOSRQV[[]^[\^__a`ad]d`ef`ehjcssfjhglprqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrvovJKLJLGBEDE<@FDDB;??A@@@DA?B?ACHBFEFGEIEFDIIGIHJMHHJJILJFJKHIJJGKKMMJJNLNNNOKOPRUXVMNTVUSRQPLNTSRW[^^_]]`_aaa`bceachbdijgvlkigmosqpqppryvruutsmmssmqrotutrpswtuuwvuuteqskpqjrvowJMLLMGDDAD<?EEEC=AACBBCEBBDAAEGCHHHGFJFCGIGGJFILHJJMKMLGKIHLKNQKRQLSMKNNOPPOTOWXX[NSQW\ZSVPNTUTTXZ_bb_da^`b^`eaabgnhbihhmxvlhjmosrpqrrrvtsusssnksqmprotvrqquvuswywutucmtkopjqtowLMLLLGEA@D>>DEFC@CAEDDFCCEGCCIFCHJJIIKFDKJGHJIIKGJJNKNLILHJMKZfJd\KlSHON_nUks[qpbwcRPbvuhucav`Xnqbdvinzf[lt`ljT`wuijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqrqyKNJKJFC?@B?=DEFDCDBEEEFBFFHCDJEEJLMKLMGGMIHIKHKJIKJNLMMLLILML[sbdp^lmUMNfs]geqlntgpi_aYnnbppbkjjgoqtetno\ougpMJryvkb`keemymkvlnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIIGED?BB?=CFGBFCEDEEDCHHGDEKGGLMMKMMGJNHJKJILKJJKMMNNMMJMMM[roonpplkMPQlWNibtrpamov\YlQ\mmZqmkomxxtsip\_rkqjUuyxpc^kfbgqpjioppsspqpqqrrqqrrtlmrmnnorutqtrtuutuuzvutenukpolsrryJKGHEEEBBB=?@FGBGDIEEDBFIHHEGKJGMMNLMNHLMILKHJMIKJJKOPONMKNML\hdu]lqWlNPQmUZk^klvaldtTecNmYl\tpkilxjwuhp]^rkhWbcw|oc`ghadjuyknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtwIMGIDEECAB<BABFDGFLHECCHKHHFJLLFNKLSRLHLLHNJIHNHJJIHNOMNLJNMJZsppoqqmlOQRnYqkgooqqomt^nXat_nopoqronusttj[]tcwxrjnzhaacgbbjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyytukoumtonssvtHKHIBEEEA@>CCBGCHIMIFCFJLIGFJMLFOJKWRKGKJJNIHJLIKJIHJMMMMIKKKSkbZi^_jcrrZ_Yjo_eeUk_c[abQ`lh]j\niid[pfdp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrutwrHHFIDEDFA@AEDDGBHJLHFDGKLIEFJOLIOIL[QJFHHKMIHJJKKIHIGKKLKFHKKLLLKIKLNT[\TPTLPONOOVQOOQOOQJINPQdqiTYW[[\UYZ]X]\\cfaafbce__fkmhmtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusHCEGFFAEC?CGCEGCIKLHFDGKLHDGHPKLOKLWLIEEHIJHIKILJHFHGJGHIEFLIIKNLIO\W^O\[`^OXYS\\b^MYZMXaRJYaZS`d\aX[ddVVX\YZX\VY\]b_d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCDLMBCDBDIDGGFKJKHEEJJJGEHHPJMMJMSIHFAGFJIKKILJIFEJGDFGEEJHCJMJKT_Y`X`a[`UXYT^^Z_RY\P^\YN^\^S[^c^Z]`c`Y_b[`^[TXXY^]ccbaceiekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIECBCFGEGGIJJIIDFKKKFFIJNJNLHLNGHF>GGLIKKJKKIGEIDCCEAFJD@JLJO[cY^^a_RTSW_`\]Y^QY\MV_WKQY[PZ_aa^^ca`bbbcceZQYVU\Y^d`__cebhommllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQKGCGEBEGHFGHIFGJGHFHKILDDKKNMLLHJJHJG?GFNJKKMKKKIGGCD@DAHIA?IJHO]aZ[d]_TQSX]\\\_ZKW\LR\YIM^PO\_acdccb\dcbdcfXQUTS[XZa^^^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMC@IFCFKIFFGHGGIFFFILJNEDKJLNJLIKJHIGBHHQMKKOMKKIHGED?ECHHAAGFET]Y^X_Y_[]UXXP]]QKJW^X^[]VZ`RQ__bba`bb`cbbddbXOQQR[S[^]]]^__dhgljnnp{{|~{
srw
|x\SKBAGFDGMRHCRKFHHHEFKJMPEGIJKNLLILKIIHDHKQOMMPLMKKHICDAEDHGBAGECWUE\T]SV_XNTUNZ[MJKU`a[_X_^a]OYb]``_bcb]bbW__TPNPQXR]\[\\^`bffelfoow|{{}
zo
~INFDEFGDIRbPDW_IGGHDFMJPPFJIJKNLKKLKJJGEJMQQNNOMNLNHKADACDFDCAEFBMHCLLPOOLFMFGIJHGLLMOPILOPPSPLPTSUZYWYXXdVOSTPPONPUT\YYZ]\`adecgcklpsszy{z~{}{
}KIEEGFGDKM]LGHYMGHJHGNLQQIKKKKNNUNOKKLGGKPSSNPONONOHKE`ED_LDfcEM[I_\smOMVmYLCP`UlWgJ]WU^DLQULMTVQSTXWTXUT\TPfZhhdXSkTWVU[\[``abbb`fhfnlhrz|}~}|zr{z{
~z{LIEFFHEEKOSIKG`THJOJIOMRQKLKLORUROOJLNGHMQ[YOPPNOPOIJPQI|YYrsWPmHqnpaVPqqsPCksmqspSo_[nX]V\XUkhU]VcZ`Y[`VUWjtuu_`w`Xa\\f[_aaaa^`bgmpl`pwtx}~vxzlv~tx~|~|z~wwNIEHMMBDLLFJLFRVLKNIKRXWQNNNLQTNOQPKLOGMPS[ZTQROPPPJHZx]TxehYRTQvgtlpbnfjQrOMwmjrpsrqrpop]fzuxqqzq~s}ku}bRg|essoss|}o}yor_``bbZ``gknkblfgmw~~{xwtvzir~nt|~wx{~x|u|||ssNKF`]GAEMMHKKHJPNMMJNV^YULQSNXZLSSRNLPIQRTYWWPTPPPQKGfxlcxrmZKLUypumubnvPdeIfvqmwojfxxiXsRi{mijzz}lxzogoXvvjuup`sh|ilx|o^__cbZ]bdgijegbcdllppstsssyqrxblugry{ssuy~suzn|}yxrnNKStNCBEPPHJKJLPOOPMPZ`ZXKTWPa^RVQYSMPISTUXWWPUPONRJKrouuquqdibWnLqp^FhyWvTLhx}x`y{sna^modRgrunmypwlvttqlm\t~zkmy|lum|kpvux^__b^]_edighfe^abiiijknokqnmjpacfdowxompsy~nqpj{ztromLL[VHGEGRPJLMKLQQQQPQW\YUNVYUfXRRY^TMNITTVWYWOSNNNQHRmHiwK`dvvVXlOnl{sajgvUKWkh}lmlx`[pz{^`zscroxqhe|ir{]TKl`vukiu{{m~xk|p]^^b[^bddgeeebZccikkrsrwgmihdg`alagsrkhmmr|kmhk{tmmkmOHJKHIIHRQLNOMLTSSOTRWRVTPWZVVTTTa`QONKTSSQUVNNLMOPJHQNPULKKSTSRTPVUQQNQQXXQNPUTXXX[[URSW[WXWZOSUWWXR]YW]VTOYRWWWXY_[gr^[[Y\]_cZ_ccdfdccbZccfffmnmuffgc`f_]g`dlhfgkhpzhggkujhgilQIKLLMKJSQMQPOLVVTPTUXUYURZ]VUTWUYXPOLMVTQNUSNOMLQPKJQRKQMKKORTRQQSSIHLNOQRQQQTVRXW\WSSQRUUVSZQOSRWUTYVTYUTRUTTTWXW]Z^a]\ZZ\\`c\]bcdgeedaY`acabhhincad^_c]Zd\bma^ffgmsdihkkedcfhPJKLOOLMTPNSQQMXXUTUWWWZVT\`VWVYUXTQPKOWSPNUPNQNKSPMOUTNQNMNQSPTQSTUNKMOQTTRRQVWUYZ[YSURTWWWY[TOTUXUTYUWYURRXVUW[YZ_]UX_]^]\]aa^[bbchfedbX_`b]`hefda^_]]^ZZ_Z_g`^]]bhkagfhfd`bcaPKMLPQLOTOOSQOQ[ZXWXZZXYV]jdVXYZWVTTOKOVTPOTPPPNMQQPRXTRQOMOSUOWRTUUONMQSUUTTRTXVZ]\ZVVQRWXV[[WQTVVUVXTWWTSRXVUZ]Y]_^V^]^`\\``__ZbbdhhedaYb`b^^fdc`b]\\\\YZ[X[a[^]\_b__bddbd__`\PMNNRQMRROSTQPU\ZZW[[\YZ[dqmhd_[YVVXRMMVSMNROQROLPSRUZUTPPLPWVRWSSSXMOPRTXUUUSUYX[^]\[VROUVV[[WQTWUWXVTXZTSQZWV\^Z__`Ua\`a]`b_\`]cacghdf`Yc`a__ee_`c[Z\[\ZZYYW\Y\[`^`[^^a`_b\Y`ZQNONVQPTROUTSPW\\\X^\_W\^jqwyc\[VVXRNOWSNQQPRTRKQTTYZWUORNSXVTSTRRZOQSSV[VVWTVZX]^\\^VSNTUV\\VRTVVXYSTY\TRR\WZ]^]aa`Wb[cb^ac_\bab_dfidf^[d`a`ace_b_YZ^[\[YXYWWZZZa\][]\\Z]`W[[ZPOOOYPUUSRWRTP[]^][`\`U\]ijr}slg\UYWQOR[SRQTRTUTKQWV[YZSOSRVVUSOVRSZRTUTX\WXXSX\X^]YZ]TUNVWW^[XQTUXYYUWY[TSV]Y]]`]bc^Y`[eb_dd^^cca]efidf]^da`abcd_b^XZ_[\[XXXXW[Z\`][[\[XZ[^V^Y]POORZPZUUVVTTT^^`^^b\aU]^bkytl}lZUZUQQS\TUTUTVYWLRZV][\ROUSXWVSPXRSWSWVU[]X[YUZ^X_^Y\YRWRYXY_ZZSTVZYZVXY\VUZ]\^aa_dd]^]]eabfd^^dc`\gdhedb_da_a`bb_`^WX^Z\\ZYZWV]Z]^ZY[\[WY\]VXW]SOPWYQ]UVYWWUX_`aa`c]`U]^beeuzhXYZTVSV\XWWVVW]XPU\Y^]]TRXRWVTRTXRSVTYXY]^X][U^_X__X]VQYTYZZaY\UVX[ZZXYYZXV]^_^cbaee]b\`fbdfd__dbb[fchecfaf__aaaa`_^VU]Y[\[Y\YY][[[XXY[YZZ]_]TY]UNSZVS\TVWYWV\`abcad__V[`da_zuohY\ZVXUW[ZY\YXY`WPU^[`a\TUXPUVUSVVRSUW[Z\_^Z_\V__Z]^Y^VSYWYZ]bZ^VW[\[\[[Y[YY^_``dbceebdZbfcgfe^ab`c^cciddg_g^bbcaa`^_XTZZZ[[X[XX\[Z[WWYXW\[\`]V]]SPVZVVZUXVXWX]_badada^YYadb`lfh^\][WXXY\\\_[Y[bVTW^]ac\RVXQWVVVVVSVTX\\_``]`]Wa^[^\[^XVXX[[_`\_XY]\]]^\Z\X[_a^`dcdfffbYceehgd^c`_ec]fidei_g^cbcaa`__[XY[YZZXYXW[[Z[WXZTY]\Z`\U^bNRWYVWZY[\YWY^`baeada]^Yacb_a`a_\\]XW[[]]__\Z]cXZX]`cd_RXYPXWXYYWVXV]]^`aa_b^Ya]]^Y]^YXVW[\`_]_YY^]^^a\[ZY\_b_bdcefefbZdfgigc_c^afdZiibfice^bbca``_]]ZW[YYXXZXWZ[ZYWXVU[]]]``bbxLWW\YW]\\]ZW\]_`bdbba]`Xbcb`cab^\\\XW[]_]`_][`d\\XZcec`R\YOXWY[ZYXZY`]`bb`ac_\b]_][^^ZYUX]]_`__[Z^^`bc\\W[]`bacedgeefd\efhifcbb\cg`\iibhife`baca_`_]][Y\YXWXYXW\[ZWWXPXZ]acffrkJYW]ZZ_]\^\Y][^_acbaa]b[bdb`ccb]\[ZWXiq`\`_]\ac_^YYcedaS_ZQYW\]\[Z[[c`cbc`bda`c^`\]^_ZXV[_^]aa_][`abeb_]S\_`cddfdgfefe^efhhgdd`[fg^ahhchhfc`b`cb___]]\Z[YXXXVZV\ZZVVUMXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{{{{|{{{{zzzzz{{|||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvuvvvvuvvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{{|||{{{|||{{{{{zzzzz{{||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||v}}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½³ÖÒÒÒÒÖº}~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}v~~y1333332j{éääääèÊ¿éååååéÇ}~}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vxxxxxwxwwwwwwwxyyyyyywopppppprrrrrrrwzyyzzz~||||||}}}}}}}}||||||{
|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvuuuyvvvz{x{xwvx{xyzz~|yyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{{{{{zzzz{{{{{{zzzzzzz{||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwwy||}zy|{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwwwy}~}y{zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z|ywww|z||z|yxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzz~{}}z|xxxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyy|zz{yyxxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxxyyyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{{||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|||||||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqpponnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrqppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpppqrrqqqpopooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpooppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqqpppppppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqpqqqqpqpqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrqqqqqrqqqrrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrstrrsrsssssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz|~~|vvwwvuxzxxxxwwwvx|yy|zyy|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{{z{|{}|{{{{{{{yxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}||{~|}~~~~~~}||}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~~~~~~~~
~~}~~~}}}~~~~~~~~~~~~}~~~
|||{|}||~~~~~~~~~~~~~~
~~~~|}||}}~~
}||~~
}}}
¡
£
~~£
}}~£~~
~~~~
¦©¨
§«¬
¥¡¥£
~~}|}
~}}}~|¡¡¡
~}¨¥
}¡¢~~
~{z
~}}}}~|{|
~}~~~~~~~}~}}}
}|}~~~~}|}}|y|
}}}~~}|}}{zz~~
~~~~~}}}~~}}}}~}|zzz~~}~}}~
|}}~}}~}~}~}}~~}}}|{{{zzyz~~~}~~~~~~~}|~~~~~~
~|~~}~~~}~~~}}}}{{|zzyyy{~~~~~|~~~~}|~~~~~~~~~~}||}
~}}}~~~~}}}}}|||{zyyyy}~~~~~~~~~}~~}{|~~
~~}}}~~}}}}}}}}}{zzyyyy~~||~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
~}}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
~}|||}}||}}}}}}}}}}||{z|xyz{|~|~~{||}
~
~~
~}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~||}
~{z|
~~}~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}||}~}~~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{}|||{|||zzy{|z}
~~~
~~~
~~~|~~}}}}~{|}}~
{z{ywz}
~~~}}}||}~}||}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}}}~~~~}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~}~~}|~}~}}|{|||z{z}~|}|}||~~|{{}~}~~}{{{}|z{{{
~~}||~~~y}~v{vx}|||{}}~}}~~~}~~~~|~~}}}{{}}|z||~||}|||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~}||}}|}}}}{|~~~~~~~|||||}|~~{|{||||}|}|~|}|{{{|y{|{{}z}~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}}}}}|}}}|}~|}|}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||}}|}|}}}~}}~~|{{{||}|{z{|yzyxy{~
~~{zy{}}x|zr}{{|||~~}}
}~~|~~}|}}~}||~|}}|}}~~}~}}}{|}~||{|}zzyyyy{{~~
~~~z{y}}zzz}q~z{}}}}}zx
~}~~}~}~~~}~}}
}~}~~}}||~~~}}~}|}||{|}{{{zzz{{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv}
~~~~~}~~~}~~|}}|~~~~}|}}{}}}||{||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||z|{|}
~~~~~~~~~z{z}}uqz|zqz~}yxtt
~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}}~~~~}}|}}~~~~~~~~~~~
~~~}{z{z|{z~~}~~~~}~}}z{|
{{syz|pwuvwyutz
}}}~}~~}~|}}~~|{{z|{|~~}~~}}}~}}{{zx|vyy{qtxwvxury
~|}}~}~~}|~~~~}}z{{|||~|}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{{||||}}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~~|~~~
~~~~
}}}|{||yz{z~y{yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst}~}~}~|~~}~~}~}~~~~~~}||||{yvyyzyvyv~|{{{~|{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}}}||}~~}~~~~}~~~~}~~~~~~|}||{|uxyxxxyw{|{{{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~{~}~~~}}}~~~~~}}~~~|~~~~~~|}||{}xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxry
}~~}|~}|~~~~}}|~~~~}|~~|}~}~~~
~}|{{||yw|ywxwwx{{{{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqroxwq{
~~}|~}}~~}~|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{||{zzzzzzxsvupprowvr{
}}~}~~~~|~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyysuuooqpwst}
~~~|~~}~~}}~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|z|}{|}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z|||yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}{||xxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|z}|{}xwvyyz|}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~~}}}|}z}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{
~
~||||x|yzyz|}|{||}}}||~{{{zzzupxwyvu|uv|
~
{~~}y|zzz}||}z||}}|z{~~~}}|}}|vrvxxvtvu}
}
~
{||}zz{}}||z|~}|}}~~~~~|}}~~}|{xvvw
~
}}||{||}}~~~}~|||}}~~~}}~~~}}}~}}~~|}
~
}}}||||~~~}}{|}}}}}~~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uy~
}y|~{
}}~~~}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqspurstv{}uvy
hzrss|r}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyyspvxqvtturstvinrotvnulwm{snym}rsvsvmnwlpylu}}~}}}}||}}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpur~ozyymonzoomw}xpqzprtfu~n{ysoy}}{}|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyrjoyxpkyszozwvvp~~~z~}|}~}}~~~~~
xyrz{pp
x
xyks~y{krz|m{zyt}vnoot|uwqy}}m~uo
zrr{|upozls|nw~~}}z}{|}}~}~~}~}~|}~~
}w
}~{|{~{||}~}|~}}~~~~~~~}}}~|{|~||
}{{|~{||}~||~}}~~}}|}~~~~~||}~{|||{{~
~|{}~{|{~~}||~}~~}~}}~~|}||~~|}|||}|||~z{{|~
{{~}|||~}|||}}|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}~}{||~}|}}|~{||{||}}{{{}|{~|{|}}|}}}|zz{{||
zz
~|~~||}}|}}|}{{{z{|||{{{~{{}{z{~||||}~}{z|z||
|
~~~}||}}{}}|~zyzy{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yyzy{}}zz{{}|}||z{}||}|~~|{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yzz{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|z{{{|}}}|~}||}~|{
~}}{
~|}}}~~~~~}}{|{zyzzyzz|yzz{{{|z{{{{}~}}}}||}}|
~|~~
}~~~~{||}}~}~~}}~{~{{zy{zyzz{yzzz{{|z{|{{~~}|}||}~
~~}|}~~
~}}~~|~~|~||~~|~}}|||{{zzzzy{zzzyyzz{|y{}{|~}~}}}
~}~~~~}}~~~~~
~~|}~}|~}{~|}}}~}|||}{{zzzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<D:;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>:=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<:<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÔÔÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÔÔÔÔÔÔÓÒÓÓÓÔÔÔÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9>CE?<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÑÓÓÓÓÓÓÓÓÓÓÓÓÓÎÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕØØ××××Ø××××××ÖÓÒÒÓÓÔÔÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILO@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÍmpppppppppppj§ãÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¸ºÑÓÓÓÓÓÓÓÓÓÔÔÔÕÇ·¹¹¸¸¸¸¸¸¸¸¸·½ÓÒÒÓÓÒÒÒÒÒÒÓÓÓÛâáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVN<::77>C>8>:??A=>@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÎN&+++++++++++"ôëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¢§ÏÓÒÒÒÒÒÒÒÒÒÒÒÔ½ £££££££££££¡«ÒÒÒÓÒÒÒÒÒÒÒÒÒÐßëëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;?C>6:7>?;=B?9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÍÎR+11111111111'óééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤£¨ÏÓÒÒÒÒÒÒÒÒÒÒÒÕ¾¢¥¥¤¤¤¤¤¤¤¤¤£ÒÒÒÒÒÒÒÒÒÒÒÓÒÐßëêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<;<<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÏ\9===========5ðççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©©¬ÏÓÒÒÒÒÒÒÒÓÓÓÓÕÀ¦¨¨©©©©©©©©©¨°ÒÒÒÒÒÒÒÒÒÒÒÓÓÑßêééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÅÂÃÃÃÃÃÃÃÃÃÃÃÂÉÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÎÎÎÏÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÒÔÕÕÕÕÕÕÕÕÔÓÓÓÔÓÒÒÒÒÒÒÒÒÒÒÒÒÒÓÔÕÖÖÖÖÖÖÖÖÖÖÖÖØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<8@B<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÏÐÐÏÏÏÏÏÏÏÐÔÐÐÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÓÔÐÏÏÓÓÏÏÏÓÒÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖ×××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎЦÅÒСËÓÇ«ÑÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@=:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÒª¬Î¨ «Ï¬²ÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D?A98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÐÉ
¦¤¡´ÎÏÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<=:6?B@B:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏѤ°½ §´¿ÉÆÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8FA?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÏÐÕ¹¥ ÄÒ ÎÐÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÏÐѽÅÉÙ£¿ÕÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:<?>=<9@<<::9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÐÕ§¤¢Æ£»ÍÈÒÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÒÀ¢Í²®³¥ÐÛ£µÕÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:969;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÓÔ¤ »¬¡§»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÈƦ½¡©¢¨¢©ÐÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKLA>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ Ôʪ³¥Ô¾ÖÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFGKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÔ¯°³ÑÖÀ½ÖÔÓ¹ÈÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÔÖÖÖÒÒÔÕÓÓÓÖÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEK>>786967899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EILAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDJ;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?:8776=??@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@AB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEEC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<<DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsoupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸········¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢¢¢¡ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¥¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;<;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤££¡¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::88:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢£££££¤¢¡ ¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¡¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>98;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ¡ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9<<>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:=>:?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VQQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
}§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s}~
z}}¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
z||}~x
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~}}¨®²¯¯µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWLO_^\NUUbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
¢¡ ¤£ ¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJCPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©¨§¡¥¨¨«ª©¯¡¡££ ¡¤¥§¤©«¯¬¥£¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdWOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®¯ªª«¤¡¢¤©§¦©¨£¢¤ ¥¨£ ¡¢©§ ¢¢®¬«ª§¯¨¥¤©©©©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPORd\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨§¥§©§©¨£§¦¤¦¢¡¡¡¡ ¡¤¤¢ ¢¢ ¡¡¢¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]\PUOWO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§¬©¤¢ ¢¦¡¦®¦¦¡ ¡¤¡ ¡ £¤¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvxb_\UYQUW[c^s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;>=@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯««¬¨¨«°©¨ª¨¡ §©°²¯¬£¢¦¡©¥¤£¢¦ ¥¤¢¥£ ¥¢¢¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[Z`_Z\V\hdncnjib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£¢ª©§®·¶´´¶³¯¬«®«¶°©²±®§¦¢££¢¨¥¡£¡¤¢§ £ ¡¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvyjb[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>AE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ª²¸¼¼½»º¿´¯±³µ´··¯µ´µ²°¨¤¢ ¤ª¦¦¡¤£¤«¦¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__amhukqhiiaYSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°±´µµ¼¼¾¼¼¾Æº¸·º½´¯µ±±º¸·²³²ª¦¦¤¤§¨¤®¤««µµ¯³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YTai`fsositdidb[LK>:8898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÃÆÂù½¿ÀÀ½¿Ä½¼º½¾´§ª±À½¸µ¹À³¯¯ªª¨§§¤¯§ª´¼±´µ¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`a^^kcbnwuvnl[bQV\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAA;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅÆ»ÄÀÅÆÀ¹¯½¼À¾¾³«ª³»¾´µ·Âº¯°µª«¦ª£¤§±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhakmfnuqruqg^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÅ¿ÃÂÆÅÀ±¾º¿Ã¶¶º©´³´©«³»»±±¯¬¤¬®´§ª©¨ª¬©¦¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tklndomiqxnyiia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿¼»¾Ä¾ÅÈÆÆÄÄø´À·´¼Á¹··¿À»®¥®·¼·£·°¦¬´µ¬®¥¤£¨¤ ¥ª´±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{vnkiguZfrxsyff]d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÉÅ¿ÃÀËÍÏÊÆÄÃÃÁľ¸¾ÁÃÀÄ¿ÁÏÏÎÇ«¯¶´µ« §´³®«¸µ³¬©£¡©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuuefijh]jomxwcb``^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÎÏÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈÇ¿ÅÇÄÄÉÌÊÒÏÓμ¸¶´¸¸Á¾¾º½º¼º¼¬¦ª»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqocagvhjitmxl]d[V`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÌÐÎÇÌÉÂÂÇÂËËÈÆÌÊÎÅÆÅÃÅÊÇÊÐÍÐÌÇÄÀÃÂÉÍÇÅÁÄÇÁ¼¾´°°°Á¾¾ÁÆ¿¾¸¶Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlieuntb]bTWUSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÃÄ¿¿¾ÄËÈÊËɼ»ÈÆÈÍÈÃÈÉÉÅÅÃÂÀŵÂÉÊȾÅÇÈÍÆËÏÅ·ÀÀÀÀ»º½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrpfefcjdajmno^Y\VVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ãº¸¹¼¾ÁÇÁÆ»¹ÇÐÊÄÄÀÃÁÂÁÃÂþ¿¡·ÁÁÁ ºÇÌËÅÈÑ°¾¾¸º»»¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbacdcjbgc[ZZ\YQOE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶¸´´µ¿»½¿¹¾ºº´À¸µ·²®º»·À·¼ËÔ·»ÀÁ¼»Å½»ÁÄ¿¿§½Â»z©ÀÉÄÀÀÊÀ±Á¿»·»¾¹µ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qc`bchjgfiei^VVTYOSLF8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´µ±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ¹¿»ÁÞ~ɼõºÇ·¶¹»½½½Æ¶`ÀÅÀ¿¼Á¾¸Æ¼Â¿¼Å¸¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zxqmeefoiekhXXNKKKRILHC9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹º»¿¼ÐË}¸ÄÇ·¹¸®·µ¸½µ½È¬V|ÀÆÀÀ¿½¼¿ÈÃÅžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksfam`\TIKJDJBCG?:;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼¼À·ª¤®°·»²½¾»Ä¶µ¸µ·À¾Ä¼ÂÄÖªtwÆÏÂÀ¸¯µµ»Ãªy¿ÉUfµËÿ¿¾½ÇÌÇÇÄǽµµ¶Á½»»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢rflintnxcgb[cQKTHEECHC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£±¹¼½²¼¾¼Å¸±·¹¾ÊÊÈÃÆËÎstÌÑÌÊĵºÀÄÎq
ÁÇXZÎÆ¿¼ÀÃÌÊÇÅÆÀ¹½¼Ä¿¿¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_b^`bNIM?E@?DC;;::;:8;<:9<>::>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´¼Ï̼º¾¼Ä¾·½¼°¯¿½ÁËɱzuzÆÌËÍÊÆÂÄËÓm¿¾^XzÊÆÄÁÁ¿ÅÀÊÉÃÃÄùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw{_pc[]__TI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼¶À¸Ëؽ¾¶¿À¿¯
vo{v´qy{¿ÇËÈÁÃÁÀÉËsi{¹´|aWhÆÆÅÄ¿ÀÁ¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsxsgp][^]YREDCMIAE=H;;59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯··²µ³·¹¼»¶»»År|Á̼¶¹Ãg[c^P[_pov|º¿ÆÀ¹À¼¾ÆÂear³uaVaÁÇÃü½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸¸¸½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y}vlu{pni[_`YSPAFHGK@DCH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÅÊtgµ½¶¶njgU_[ILQS^os¸¸Âº³»·»¾½aZd ´w]TgÂÃÄþ¼¿»º¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ°µ´´½º¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsuvwnq`_f][TJ=??FF=FCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´µ·ÇÆ|ti
¥¶bSE_QMieSLHPqx¡°·¾¹²µ²¼º»gUW¼~SPrÁÄÆÄÀ½¿¹³¯±¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³»·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtwrl_ca[^OHB?=HCFMC@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·Ã¹
znn oOIBkRC\{[FW¦§°¶ºµ´²¬¼ººtUP
·LT¿ÁÇÿ¹ºµ¥¶±¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wo{ourmc]fX\]RNNA>JBAJI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸º½wr
~WFBWQKNa}~QCOº²³µ²´¯¬»ººf[x\q¹»½¸¶²±« ®¨£¦©®¹¬««¥¨¤«®®§¯¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmtil][jT]\PMHDFLBFNF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ²¿¡}fL@UzpLJLN«oV?s¾¹³´²°±°º·«t
¥©©©®¸¯ª«¬£¨¬´§¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndT`cW\QNLH@HQDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯µªcEVyRWHQaI|ccw®¹²¬³¯®¬·©¤©¤§¨ ¨¨¡©·±¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨««¦££¦¢ ¥¢¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vzcwln\QhTPNGPMLBOQ@>;>49:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬ª¹²¢µQAzwXkJUcivudjz²´ª²´®ª«©«¯§ ¡ ¤¥§© ¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ ¤ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uv}mk{dhUQcMJHGORMJNG<E@<2?859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡¨ °Á¹½|OKlª\j~qvS^oa`mh±¯®³µª§¡¡£¢¢ª ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¤¡¯¨®²«¥ªª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}wx|dyy`bRU`HIJKSTIRPL9?A67<65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¡ÃÁUVfp}vmfzrT_bdjlblp´°°¸¬¦¡£v¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§ £±®²°´ª²®¢¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvshle[SZZMQJNOULSLA7>C78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢±¥{mpbeWQ\UWKNUZTO_Yl´³«¯§¢ ¡¤lu¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¾°¬±®©ª´±°¨«¨²µ·³¸²´¤ ¥¬¡¡¢ ¤¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xujwu]lZR`HRUHFUVJBLG=KH8F<77;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¡¡¢dZ_iaVNPF??ADEBGRLO¨¶ª©¤ya¦ ¨¥±ª§®£«¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼·½³³µ¢¬¢©¨²©«¨§¨ª§ § §§¥¤ª¢¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vrmivmhm\X\CWNJGMGBFM<>L>4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·¤°¦£_^f`REE<K<F<B?>@AMz©©ª¥¢£}t¢«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶º»ÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸³»Æüü·³©³ª³µ¯³®ª¯£«§¶±¢°¦¡£¯±°¤¥¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¥¦¢¤{trkktrqhV\QFTHDJPI?EA4FH95;>7;<?<<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ vjaWND?L_~l_C<35K{ª²§££¡ ¥«¥xo¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÇÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿À¾ÇÆ·ÄÉÉÃÁƾº´ººµ»·°µ²ªº²®»·¿»ºª¸«ª¸º´¼®®¹£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢}zqkchoxkeZ[FKLEDSMDBE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡qj`UIE@AR¤PG^®¬¡wrqmq¦®´¹Å»ÍÇË¿ÂÌÎÍÌÇÉÑÌÍÌÇÉÅÅÌÑÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÍÓÐÓÓÌÊÂÅÆÆÊÈοÈÑÌÇÅÇÅÁ¼ÃÁ¿¿¿¶¾³®¿ÀÃÃÇÄÇÄ®¿¸²¸¼Ãº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLDEPIDC@55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £eXPLEDAF^¾Ö㣳®£yqroly¤¶º¹½ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÏÊÓ×Ñ×ÒÕÖÓÔÈÌÆÌÍÉÒÍÎÓÍÅÈÉÊÁÆËÇÉÈƿó³ÈÄËËËÏÆÊ¿¾¿½ÁÇÄÌÌÈÉÀÿ¯³¨¢ª£¦©¬¤¥¦
zruvgcgvidVWQDMF@IQB=B<:22A<E<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<A?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡\LCDFDKUxº¸«¯¯¦ ¤¡}wpkebhqoq{
upnqtp
³Â½ÄÑÐ×ÖÖÒÖÍÔÖ×ÔÓÑÓÔÔÓÏÑÃÐÓÖØÕÖÒËÉÎÑËÆÍÒÊÒÕÖÙÕ×Ó×ØÎÒÊÏÑÌÏÐÍÓпÈÇÊÄÌÌÌÎÏÅÆǶ¿Ê¿ÒÍÌÏÆÉÈ¿ÄÃÈÎÍÐÑÏÍÊÈ͸·»¨¥«§£ª¥©¨¨|xsvpc`drb]R\IJGAEIJ>;A8=4586;86:<@>;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¤¥¢£^E;ABIZl®¬¨ wic`____^__]blutppolrquÄÇÅÔÖ×××ÓÖÐÕÔÚÔÔÎÏÕÔÔÑÑÌÑÍÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐ××ØÑ×ÒØÙÔÖÌÏÏÊÍÒËÎÐÀÆÃÈÆÎÍÑÑÒÉÌÍÀÊÌÆÓÏÌÎÈÄÊÇÇÈÌÊÔÔÑÕÏÒÌÓ¹ű¥¨µ®§¨¬¥²¨°³¬¬
|zqstmacim_VP_JJCFCRM?<>54:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¦®·¨«·×ÔÕÙÙÑÎп¼Ìɶ¾®¦ª¨¡£°sD@A?Sm°¨}pecb__a__a`_``_`fnppnkorwwËÀÒÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÒÊÏÌÓÖÒÑÖÍÏÕÕÑÅÑÔÊÐÔÕÖÎÒÐØØ××ËÈÎÄÉÏÍÊÌÀÉÀÈÊÍÎÐËÐÎÎÌÎÏÈËÐÑËÎÊÂÉÇÉÌËÌÒÓÍÓÑÑÐÐʽȹ°®»¸µª¶°¨¸³¾»±
zvopokadnpaW\ZIFFDMXE;@=33<<87865;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÀ°©¬©¥ªbgbik^^^adb```a``a^`_^\bmroostvvy¤½ËÕÑÖÔÓØÖÎÎÔËÎÎÅÎÊÒÒÏÇÎÍÍÔËÎÓÍË×ÖÐÌÑÔËÌÐÒÓÊÎÑÕÒÕÕÊÀÊÂÅÌÂÈÉÃÌÃÅÈÊÊÏÊÍÌÐÍÓËÆÈÏÍÈÇËÅÆÁÆÊÌÍÐÑÆÐÎÍÍÌÏÅÇÁ¸¹½Ãýù²²¾±»Ãĵª¥¢yqrkmg``phYXhVLFLIPQB;C>;67:8::57==A<:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±Ç¸ËÕÕÙÚÛØÌÌÏÈÖÕĵ¯´¨s¡Ãª|eabb`]^acb``_`aa`_][]grrqrspmry¤ÆÓÏËÐÏÓÔÊÅÉÉÆÆ¿ÃÆÏÎÇÅÇÍÊÒÈËÎÎÆÑÒÐÍÌÔÊÇËÎÏÈÇÏÒËÑÏƺĿÆɽÂÇÉÎÅÂÈÀÇÍÈÄÌÊËÏÈÄÄÐÈÆÂÆÈÄ¿ÁÇÌÌÌÏÂÊËÈÇËÐÄÅÇ»ÇÃÈÉÂÏÁ½¼¿°ÁÉƹ½ª°²§¥¢£wotdk`^fpa[W`GHHGIMTG?J=64355==48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼ºÍÍÆÐÕÕÙÚÛØÐÉÏÏÑÓȶ»»¤µsc¶¬
}~s`[^^^`^`cdc_]]^_``_[Z\akrrooklop}¸ÑÈÉÊÏËÍĺÀû»ºº¾ÉÆÂÃÀÃÈËÉÈÊÈÁÅÌÆÈËÍÉÄÂÊÉÁÂÌÐÅËÈ¿¹Á»ÆȾ¿ÆÏËÿûÉÇÈ»ÈÆÅÊÀ½ÂËÆÅľƽ¼ÀÃÅÌÅżÀÊÂÅÇÒÅÀÉ¿ÊÉÆÈÆÐÃÃÆïÄËÇÄÊ·¿¼º´©¬¤¥¬£¡¥£ {wrtfiZanlZ\XRDLFBGDLDFS@54334?=3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÃ¾±°±eez¶z
vxurp_[[]``bcdded`\\]]_^`[YZ\borokilposƼÉÅÌÀÆ°¶º²²³²±Â¼¼¼º¸ÁÁÁž½¹½¿¹ÄÊÅƽÆÀ¸»ÄÉ¿ÁÉ»·»»Æÿ¼ÁÍÃƾ¾µÁ½Ãº½Æ»Âº³¼ÅÄ·¿µ¶¾¿»ÌüµºÈº¿¾ËÄÁÆÂÅÉÆÉÆÐÆÂÌDzÇÉÃÎÍÁÅÃÀ½³·°²§¨¨¹°¥°ª¬zvwjdg`hocW^YJFJFHJAEBEI@9:648854;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÅÂÄÈÎÒÊÊÊÇÍÍÎÑÈÐÆÕÔÖ×ÍÊÏÅÉÅÇÀ¹Å½«¯\irx~{ttc\\]^``bcbbeeb]\[\^\^]Z[\^hsqmggnpry½ÌÀúÀ¸®°±§ª¬§¸´·´³³´»µ¾²·°µ¯²¼Â¼ÁļÀ»µ²º¾À¸Ç¹´»¶Á¼¸½ÆÁûµ¯²¶º¿´Ä·»´«¸½½À½±»¶°¶º³Å¼¶®»¿µ·´Å¼¾ÃÅÀÃÅÆÈËÅÀÆÆ»ÇËÀÏÊÇÃÆÂ÷ý½¶¹¾Ç¿¬µºµ·¶ytxggebkn^V^`FKHHJFBDAEE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐÌÍÈÊÈÊÉÊÄÐÍÒÏÍÅÇÁÅ¿¾¹·É¶ª±\muzx~ww|sh]]]]_`_`da_dec__\[^\]^Z\[]_lpnhfkmnr|¤Ç¿¹¸µ°«§£ª§«³ª¬©´®·±³©®¦¬³¼º¶Ã¹ºº±«µ¹»´Âº°À±¾¼»¶»Ç¹Â¶ª¨°²À¶¸½°°§²³µ»¼«®µ¦®¶¯»²°ª¹°»®»¸»ÀÀ¾¹Â¿ÇÃÅÀ¼ÆÂÈʸÅÇÆ¿ÇÄúÄÆ»ÆÉÌ˳¹Â½»³svvkiablhYXW[ALKMIEAC?FA:9:995854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÅÐÇÍÁÃÆ¿ÄÄÃÃÊÂÉʾÀ¼Áº²´´Ã®©°_o{x}
z{wn^]\\]_`__dbbccb`_^Z[ZZ]ZZZZ\enohfgiknq¹°µ®¦¤§§ ¥¡¥«®¤¨¢¬ª«°¤¦ªµ¶±½¹¯·¯©®¸´´¼¸´¼¯¸¹µ²¼Á²À®¥©£«±²³¨½ª«¨«´³¦¨®¡¤¯©²¦§¨®¦¨·¬±²·ºº¼±¼½¾¾Ä¿µÂÁÇÈ·¿ÀÅ·Äÿ»¿Ä¾ÄÈÌÊ¿¾ÄÀÀ©strji]aocWVXPHYRSKFFE>>@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?B;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃȺºËÁʾ»É¶½Ã¾ºÊ·ÁÃÁ´µ»µ°®´»§ªii{}~xt~|swe_]\\^_`^_ccab`a_^]\ZXY[[YXZ\_fkfdgehjor
©¥«¥ ¡¥¥¡£ª££ ¦¥¨¥ ¤¦¬²°¶·§°¬¨ª´«´º±¶¶®¶¹²°ºº±¶¥ ¤ ¦±§«¨¹ª¤§§¨§² §¦¤¦¬§¤ ¡±¬²´³´°µ¼¶»ÁÀ²º¾ÃÁ²¹¹Ã³Á½¿µ¸¼½¿¼ÂÇÄÃþÀÄ xplbf_ko`UY^HNgOTGEKF<=?=:;;825536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:7676788666;::;9:;<859<:>>@;ȵµ½¸ºÀº½¶ ¡¦º¶«³³»³ÄÏÉËÂƸ¶ÇÀÌ¿¸É·»Å¸³Ä¸³¾À«µ»±«¤®³¡gl|yusomjjipi^`]\\\^__acb````]\[\\XYXXXVX[^_dcbegggjmo© ¡£¡£§ ¤¦¢§¢«°±¶£©ªª¬¬¤´¹·°¬³µ®³µ®°ª¤¢²¤¦©¸¢¦¦ ¨¬« ¥£¯©«§ª¬¬±²¸¯¸¹»°¶¼¼º«³³¹³¾´¶²±¶µ¿¶¾À½ÃÁ»»½zsl_e^ddXTW]IW\KPGIJGA<??@;?<04535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÏÈÈÀÆ»»ÃÃϾºÇ¸¸¿·²Â´±»»«¸¹°¡¨«§k}xrmomkb^aff]]^]]]\]_`abccba_\[[ZZYXXWWXXXXZ^bddeffhikq¨¢¢¢¨¥¦¢¥ ®®®®² ¦¢®«§¢µ±²²¬¨¯²§º³¦¶ ¢£¡£¢ªµª¢£¦¥¦£ ¢«§¤¤¦«³´ªµ°³«²¹´¯ª¯²²³¸³®©¬®²¸±»¶º½¿·³±
yuf^e^[YVSZUK[QKIEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ·½¿¶¾¼¿³¥£¥±Âµ¶½´¸ÂÌÈƿŶÁÀÆηÀĽ³¹¹³¿¶±¸º¬±´®£©txoqtqhechdc\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWVWadecdeddhjv¡ ¡¡¡©¤¨«§¯°«£¤¸ª¡ ®¨¶ª¦§°¤¸°¤· £ª¦¡¬¸¯¢¡¤¢ ¡ª©¤¢£ªª°®¨´«ª§³°¥«®³±°¯®¯¦¨¨²±´°¼´¹·®£yud^aVYXSRTKM^LOKGGLLE=A><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾·½®§¨£ª»À½À¹®´¸ÁÌÇÅÂýŸÈ˲ÁÂÁ¼»µ»¼µ¸¹¯®¯© ¨}wqilrtphhedfb\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[bccbcbcdfi ¡ ¦¦¤¦§¦ ª¯¦¢¤·¨¡¡¢¨´¢¥¨¥°¥±®¬´¡©¡¢±±¢£¡§§¡¢¤¥¥«¤¥°§¥£««¦©®¯®«¨ª©³¦¦¬¯´±¯¼µ±¯¯ zwrea\Z]XNLRHRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847763321./2556;:8;7876<;:;;A8x»»±µ½°»±¸¬¥§·»¼Áź±¹µÄÉÉÀÃÆÅǶÅIJ¿ū··½¶½ººµ²«¬§£swncafihfgifjm`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWTTVUSURU``_`a_aacej¤ ¡¥¡¦¤¤££¢ª«¥¥±ª ¡¥«¨¡¬©©®¢¢¢£«©° ¢¡£¤¡¢ ¢¤¦£«¥¢¤ª£«®¥®²©¦¥¦¦´¦©¨³µ´¹º¯©¬rqo`[WVVRGQOHZ[ORJTKSLEFID8;;=<8667:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:8698598989;9@9{µ´´»²°«²¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÊÌȵɼ±¾ÃȬ±¸Áµ»À»´³©«¦r{tiijlgjkmkjme]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\]]^___bdm£¡©©«¨¬§¨¦¤¥¯¥¥¯ª ¯«³ ¥¦£¤¡©ª¡ ¢ ££ £¡¢¨£¢¨« «°¤·¥£¤¢ª¨«¯³·³¾µ²«¯
tsh[YYSUREXLQ[XMTNPLPQINIB=??A?=75799<<987:79:;<=>;7;;:=67:;8976989:6:=99576571141-+/434988::8::748=8?9~³§³¶®¨¨¯®©¨¬·¶¬¼Ê»¶¿¬ËÆŸÁÎÏȳĺ·»ÂÈ°¸¿·¼½º²´¥© ztvwnmhmmmpggigd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNPQYZZZ]]\^_`d~¢ «ª¦®¬¨°¤© ¤©¨®¨ª¥¡§ª¥ ¡¤¡¢¥¥§¨¨ ±±¦±¼§£¬µ«®§°µ°¸µÀ±±«~rsbVTUNRJGVPRQLLWMJLNRGMKACFDC>A75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8³¬¥±·ª¥¢±«ª§©²±¤¶Æ´¹º³ÊŹºÁËÐʱ¶¸»½Áñ¯±·´³º²²¡¢wkglnqnqjpkdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajzv© ª¦¥¬¨ ¦£
££¢¤§ ¢¢¦¤¦¨¦¡ ´²§²·¡¢·¬ª¤²²¦µ¼µ¬«±£ysm]NQQLOCMNNPKFNNJJNMQHMJAGKHHC=858889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12876:999984988A7w¶¦¤¶°¤§¤ª¥ ¨¦¥³ª¢²Ãµµ²³ÆÆ·ºÃÊÌƳ¬º½´·À¯©°¦º¯¬{n__frpuqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXXX[]aosvq
¡£¢¤¥¢s~{£
~~tz££ ¡£¤¢´¯¬¯¥¸¦¦±¡°®°»ª©¯ªwscVMROPNCSNLQLBPQHINRMHJJDJLFJJ=749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-12764789::65:87A7x·¡£´¨¦¥¨£¦¥§¦§³§¥´Á¸°´°ÉÄ·¹ÁÎƽ³¬ºÁ«Ã§¢¦¦¶¢~x~eWV_gfighncjhgb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTRMMJHNSSSTUUVY[]ilrm
|tNXr_;Wo|s
y{}xqp
}¡ §®©©¨³¢¦¬«¨³¢©£~rn`[NSRWLDTJPLLFNOIELQMKOJILPFII=7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· £¡¦¦ª §©¨£ª°¨§´Á¹°µ°Ç·³½Ï¿¹¯®µÂ§ªÅ©£°¢
}su]PLRUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`mpi{tQB@}y`JQnx}
n~xuvxoQ{~xvgw}¤£¨©¥¤°«¡¤¤¦ª¢ª¢¦¨umf^[HQQSMIUMSILKOIHFJNLMTKQPOFIC<769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')+*,4833979:99::::?9w¶£§¡¯¡§¨¥§¨°ª¶¼¶··³Á»¶§ºÈ¸¶¨¨µ¶ª²¼¦¨}|wpnXMKMNOLMQW[\ZXZUUVVVWYYXXYYXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZntw~ji\Ut|
{vxsovqtz~«
yzhv{prmxxz{vrrwhu
{|© ©¥§¤¡ ¤rha\]JWPRHJXROJLMRJJJLPHLQLRTMEHA<78;99>=:;<98@?::>=7==79937785675251472/2.,//200/-+(().1272198798775:<;7v®£¢´©¯©¥¬°²ª½´²»¸¶º´±·º²ª¬©¨²¯¡~v
w{unniYKHIHGEHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQQSV^u|xfw}hyvx}r|w{ok~|s{}tfv|lohs}lyq}qmvqhq~pC
wwz
}{u}£¡¤womebZXXUQJSUTOPNPVKNKNOJQNHOOLFD<;79;::?=9<:99??;8;=7<9999266856633611224.,,-..-0-+*''*.1362/876966527995y¦ ¦¯¬®«¨©±¯±«¼¸¬»¾¹³¬§°§¬¥©¤
zup{mtpiljXKFGEA@CDILLMQRPQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNOQTX]eprm§ªÀ~uyc|xo|yz}omytxjjq~Inhw~licly
ksl|nr{imps{}~{vots
yxp|ninonXVXTRQYORTTSXUMNHNKMNKCHNGE?:89;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¥°£¬ª¨µ¯®¬´¿«¼Â¿¦¢¤¡¡sz
tntkpldkjYNEFC@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORWZQY\`§bitzepmzvtlts|jkMy
g1vsl~~tfet~
filukq|hqq|n|s}|qpnumwyujyyvjjoheXQZWYY[MPUVYXNIHEJJHGB@FDCG=998;9:9<:9;:::@<9:<98>787715234533645031.**+),,++)(+'),,226,,5775478iO8;5n¤¨®²§»¯«²°Â±»ÃÇyqt
zorpnodpf_TFIC?<;9:?@ADCEGILOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQVLAIQIb¯³ r|xl}mr
zyr¡txsu5q¨¡¡¢vp||sggbjnrlpuioXupwl{}mqmpzsunbv~
ux~}zqpok`[\^\YXa_RN[ZXWLHJFJG>BABG>CD=;97=;:;;9:99;:?<88=:8;66651121253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥µª®±®Á²»ÁÆ}n
ul{txxlwnwci^IPG>@7449;;;=>@BEHLLLLNPQRUUVWXYXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~mw|~
~v¢y~aªzw~sz]drtz{wmhjbyoznwtzptywkni]w||
}q}uw{|vpsteg_[[^T\g^WQUX[UGJJDLG?F@DC>AA=:97<;;=<::99;;=>79>9985653244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¦ « ±¨¯À±ºÅºz
vk}xs¡}}~p~zgvkRWL@E211367688:<>AEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJi{y|r|z}~v¡¥¬©H®¯¯¨tm|}hghxn
q
Glwryvhmk_w}
zzuv|xmow}ssrl[]][ccXgf\UOPVYPDLKFNICFCCA@CA=988:::;;:888::?>6;>7585773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|}
¡¬¡¦¸¯³¼³}tp~}}~¤
x~sx_cWKB60./23123668:=>?BEGHJLNQSTUTTVUSQNGC?80,#[>?84.]ps£UFIKMNPW`YpZ\^j
~
¡¡¥»±§»Çè¡¥|qv
ihotq
w{v
}nvuf¡ª¢zzyogkx~z~rjd^ZZ]j]af`YOKNWRQHPJDNGCJDB@DDA<:87=<:<:88778:==8<=68656623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfx{¤¡¬¦«¯°¡xw|mpj]BA4--//./02234778;=?BDHJNQRSRSTTRPOHDB<87/9D><<63.lMPHIKKKNV`cggmu £ª¥£¬¨¶¢¨Áîǯxº|¡
¡
lpuwqm
r¡¥µ©¢}kjk|sa]c^Zfk\lk^WKGOSQNMLFIPCDMFACEGB>:97=<:;:987767;:6=:785456345566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYppuqv~§ ©ge¤~y}
xx~gMR>/..,/.-/000212457;?CENPRTPQQSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} ¨¥¢¡¢¨¨« ¨¬©ªµ«¿«¶ÈÈ·ÉÑϾ pi«©
¡§¢xz~¡{w«³}¤¢¦¶°¨lsr||qh`\`^bgc`hg[REJKPOIJLFFMCHLFFCBGEA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppu`n}aw}{ªªBD}x|
w_bP460-1/,.00//..0015>AAMQRSPRSURNSLEE@<>=GG@A@8662<9;FHGIJNOQYmw£§ª´½¸¤®¬¬§¨´«°¶²²»±³¾³Ã¬»É˷ÿ¸¥£°²¬ª£
¦¦ £¦¢ª¨¤
¤¡ ª¡¤©±£§·» £°¢£¤¢«¯³µ¢¤ªyz~
~g`h\eb]dc_ff_ZOCIHTOFHLFJGEFHAKFCFGA;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicWjpXz
v
ÚÈsV|z
qna@E64<2/110-,+-1.-3?DAMUQRSUUWUN[PGGE<>>FHCD@8;<5C;=FKIGHROPW ®£³ª±ÁÇê³Å¶¬³¿³¸¾¶¿´Á¶»»¤¸Æ¨¶Éǵ¾¹´¨£´±±¨¯«¥v¤¡«±³ª¨®¶»²º¬¯µ¢±¬±µ¼·µ®µ §§£¨©°²º¸¸§¶©¥xuYadVeaac`af_[TJDELUQHIJDIGEA@@KDBMF<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AFWQJL[ZQcdWyuq}
v
{¿»£¼´y
zxn]V@EM<6:46AB764//6CHCQ[OQUWU\VO^UIKJA@>GKFED;>@7D7?BJJEFWTP^¥®£±´Ã¶¸ÁÌɶ»Ä½³³À··Áµ¿°·t±³¦ºÅ¤°Æ¹±³±´¨¤µ¶ª± ¡¢¥°®¦«§¤ ¬³º¢©²º´»¾Ì¿ÅŽ½³Â·º¸¿·º·¹¬¬°¦±ª¾°½»Â¬º¨®«}|jWbaXjejeW[dYVTIGGLQGCHIAHD>?BBK@@MC99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALRWTYUZvjpnzsyb¸¡£{z||}xzueO\dGEL:Qca[^SF?;HPDZcQQYXZgYT``MSOEA?IJHEFA@C<E6B>HGJLSZT]¯¸µº¹É¿º½ÉÌ»¼Á¼·µ»»·½´º±Æau²¥±ª½ª¥¨«ª£¢²µ¡«¨®¥§¦¥£¢¦±´§²²½¶Á½ÓÉÊÓÆÂÅËÁÊÃÀ¾½¿»¼·´°¹·¶ÃºÅ½ÃÈ°¹ª¢«¥¨¶q_ab]Wa_hfRXaVRUIEENKA>GD=KB=B@=F>;H@796379>489:57045/26389374426?8@>GKRTSQPOQQPJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRLQ]gllq
slrrsÕÀµ }x{{yt}zkepuY]\Peeb`ed][XW\MdmURmm_n_XgeUYTJDAKKHFIHHGBI9D?HKTTV\Z[¹À¹½·ÆÀº¸Ê˺·º¶¸¹²¸µ´®¶¶du¨p^¡ ¢¤«¥ ¨¥¤¬¥ª°¬·°½¹ÔÑÏ×ÏÉÌÑÌÏÎÊÆÀ¿ÂʽÁ¼ÁÀÄÄÅÊ¿È䤻°´¯«¹¼yl]_\X]`YccQ\`SPKCBEGE<@E>BHB@D=:E>=J?47535;=468977022/24169775555D3ELM>51/006:477@IOI;-&**(-./,@M+/54mI0Ht?>BD@CDFKODR\Yi_polouu³¬¡¡
~|s{
{ts{xkmu{hreilifjih`fihlZnt¤¼g[oh]ZYTHKNOJKQKTQHLAJGKP_^bfia·Ç°¹³»¾µ±Äǵ°¹°°»«³±§ª·¬¶§§O ¦¥¡¦¬¯¨¯§³´ÔÔÔÖÒËÏÔÕÎÓÏÍÅÂÉпÊÉÊÉÒÇÌÍÂÐÒ¸°Ã¼Ä¹¥¶ºÄ¢nc\\]X`WXfZQ]WOOBBHEBI;AD>AG??B7;C>@H=46655;:687654/10146278875367C5B8?-0-1349=97,.,1;FK=),(.0007K?-46TW0DwC;B>EBACJM?UYSeWshqoyy ª¦}
|p{r~qxukqx~q{mxslipmcinpxiw|~Ë¿Âߧmcxnc[a`JPRUNY^P^]MPNTQUU\nnvr¸¬´§°¶«¬¼À±«µ¦¥¸§¬®¡«´£±®§«¬¤§¡¬ÏÒÕÑÍÌÒÓÔÐÔÑÎÈÃÔÑÈÍÒÓÓ×ÍÒÑÅÒÖÅÀÎÇÇè¾·Ðzne]b\V`R][OPTPNH>AFABE<@B>ED>@?:==<<JA45465<888664412/03526768533;=<E=@11+/249>5901022-2DN3)/3.32=N238C}_2AtD:==I>@CFH<VRMO[u
wlwp}~¡¡
y
{r~yu
ovrks|{w|swqksrhoqzyr{¾Ë~²vrvhaj]CZZ[WfdXekSX]]`d^cx{~ª¤¤¡ ¡¨¦ª°¸ª¥´£¡¢£¢§±¦k¢
}
§°¡ ¡¤¤¨ÈÎÏÈÂËÑÔÑÔÒÎÓÍÆÖÒÌÔØÖÖØÔ×ÕÉÔÚÍÉ××ÑʬÄÃËsob`_XTYR\PJGIIJ@;:;EBD<BD>HB?BC;;9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/--;R017/532FD28>nb5=tM99@I<AD?A;PLFKYpu}hsxr
x~xt{}wznxpmuvx~t
|ymvtn}vuy{¶<AÆ¥~|ieVICfcechjdox[_fiknin £¤¦²¤¤³ ¡¥¡© ¢±~
z~©£}ª³§§½Ãƹ¶ÆÍÒÐÒÐÌÒËÉÔÎÐÕÚ××ØÔÙØÍØÛÎÉÚÚÒÕ¿ËÌ´xvnd]YRUPZVFGJJEE=:79@AB:HD@ECADB;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BS39254/7K75<`bA<svV87AH:?C><9QECJTlnopaqqs|~
|x
zyqz{uz
zp|oozq|qnzuw}|u|°tY©Â¶pnb=^hrpqpnxweioruxr{ ª ¢¥¬}
~my{®ª§®µ½©½ÆËÈÉËËÏÈÃÑÊÔÖØ×Ø×ÔÛ×ÓÙÛÖÏÛÚÑÖÉÔËy{hh[YPRS^HCEII>A>=7:=?;>H=?AAAD@>>:86DB755479.566435532323647553457EBDCEB56<FNSM[nfcnskaV>,4LG865434BF4=W_hLux^8;?F<<B<:9D?CGRk_mdbfkvqz~~||~wyn{{uz vutu}toot|
zv|·Æ¥ÂÉ·wpeNfczw¢xyw{|vm¦ £«
z|¡¼¡©¦¦®¨µ¾ÀÀ¹ÇÉÍÎÅÍÊÑÖÖÕÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÜÆzyghe`TWVUMKDNC;<=<9:<>9=@6=?@<?><9867CA6455=80665547745613854564567HH=DJE7925;H>;::7IP]ZRUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Yea][htzylwvz|~}
{~
z{u}tn|}~t~|~x}ynt
~
|~z©Ã ¼£}}s~s¦
{hGp ¤
¡~¦¥¸¢§¡£®¶ºµ«¿ÆÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Ü·xxwkidW`[TPOHDMB==>99::99;=6?>><=9:;;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8589?=DRSRX^UXfmmmiqry{z}|z|{~uyszsm~
}w
¡n¨
z |~£¢¤®
Wr«\¢££¡
¤³¡¡§±¸¬¥¼ÂÇÍÇÆÏÌÏÌÎ×ÏÑÔ®ÖÕØÚØÚÚ×ÖÙÚo|tgg\]XSWXC@ID>>>:49:;7:;:3;;?=>7;9:19G=:37=@50677255?65;55858:57735HR7GOK994=EJB>1FCLB98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:<@;BQKKSYPTcbxmb~nmwxyz||{wsp
zuvvt
}¦£¥¢¨r²§
¢ ¡©¯n·
ÄȲ¡¥²d¤ÍÇ
ª¤£¥©¡£³´¥£¼Á¾ÇÅÅÉÈÉÂÊÓÌÍÔ¨ÒÑÖÖÖØÚÔÓÚÎrhc_]^NJTZBAGD;A=837;<:8=649:<:82?9:29I:>67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:>:EMFHRWSRBcFu}|m~xz~z~vv|lny|xx|}£³§£ª³¡§¥¤®¢¸³¡ ¥¯£¤§§¯¤ À¤É¸«¢¦²
¨¢
t³¥¡} ¡±®¢¤·¾´ÅÇĽÃÿÆÍÊÉÒ§ÎÍÓÒÐÖØÓÐØ»ryv\`U_WPHINEBCE5>:76:?;<7=42669774=5<5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=89566=:JFDGN[\YIf`;Hz{n
z|x
~px|}}osz}{x§»¬¨²½¯¥³³¨£¢°¬´£¸¤¤©·¦¤£©©£¯°ª»»É¡i¶¸«°£«¾£^ª²|}´« ¡¡ ¥¯¨¡¥³¸«ÂÈĵº½»ÅÇÈÂÑ¡ÆÉÍÍÄ×ÖÑËÓ¡pzh]YS^ROFD><CAA8?874>F<<6<35355454B3::BM:A;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPeGb`bpI@~s}um}}|pww{ªÂÀ¯½Æ»³´Á¼´«³·¨²®®¼ª»¤¨¹¸«¦¦¢¡££¨¯²±«¤¢¥¥£¹®¨À»¬²¹¥¤§}¬½°z§±¬ £¬ ¡§¦¤¢¤°²¦ÁÇï°º¶ÅľͧÇÃÇüÕÑÍÄÊtsb\Y_[MJBL@EG?A?B;:4>A<=5=6>333241A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\fF`igZ][{uo~|q~zz§´ÆÉ¿ÂÌÁùǼº¯«¹»²¶º²À®¥À¤«¯»¼ª«¢¢§ª®´°ªª¡°´§¢ººµÁ»«©²¥¤¨
ªÃĤz¡¦ ¯ª¡ ² ¡¤ ¦¤¦¦¤¯¥ÀÄµÉþ¶Î²Ä¾Ä¼³ÑÊȵtym\X\iSLHDLKKJAA=CD<5AD;:3=8B332263A05IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBfZMe\fTcjyr|xy¡¨º¾ÈÈÊÁÒÉÊÂ̼Á³»¾§º¿½¼Ä·¬Á©¬²»½ª°©£¥£¬³¶µ ¯¥¢£´¼©¨¼Á£¶¶¯«°«¬ª¦¥¥uz
££ª¥|£ ¢µ¦¥¤£¥¦¥£¨§¢²¬¨¼Àį¥³·ÌÀ¹®Ä³»¾Â¸¬ÂÃÂÀmyaXW\[KKMJFDDIBBACK:4DH9;4<7E.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQF7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>jH_XaZddVw
¡®¦£Â½ÈÃÇÅÓÍÎÍË»Á·¯º¼´¼Ë¼ÃÁµ¶¼³¿¹¼®¯¨ ¨§¶©±·¢§¡«··©¥¯¾Ã±½¹³§ªµ³®¥¬¨ ±Å§|}ª¥¡£¢Z¥e£²¥¢¬¬«§¦¡¤¨¦¶«©º¼Äµ¥´µËÁ¸©¶¬²º¸®¨¸º½¸lnZWTUNFJSNK?AGDDHFG95FM;>7>AJ.32025B55PVN<LFKRLOHGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|hW;=@BFBqFiIRebLF¥¡©¦¢¯¾®¡Æ½ÅÄÆÆÎÎÎÒʾ»µ±º»¼¾Ï¶Ä½·¹·²±µ³¸³¬¦««¸ª¨§¯°£¯¤§¤¤´À°ª¬´¾Â¹À¹³§¹µ¸²®¥¯®¥¡tÁ~
±¥£©¡ `J¥T°¯¥¯®¬¦ ¥§¢´©ª³¼¼»«°²ÇÀ¸¥««±±£¡²²´¤qnf\ZNPKDPPPQ;GJIGHBD>9KU?A:=EM07544:B34NWO<JKNUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@CAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}iX;:BC@=QEWRsbWFHª ¢¨¯§
£¤µÈ´©ÆºÃÃÇÊÈÈÌÍƾº³®¹¸ÁÁͶȺÁ¸µº±¯®²´§£ª³´ª¨¦¬¤®¥¤¨¬º¿¨«¶·¿Á¿¾¸²²Ã±¹½¬£®µ¬º¦¦v¿
¯¡¡©¨ ª¢§nv¢¢²£«¨ªª®¥¤¥©¢±¦©«º¶¾³²¾¹¶ £§¨¥§¬©©cea_RKMGHNIUL=LDNJKBCD<QU=AABDO18=77?B75UXN?HNQYSPQTJQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=..R`MUHe^HE«¡»¯ª«¢¤££¶Æ½´ÁºÂÂÇÈÅÂÍȽ¹²¯¹´ÁÂʵƱÁ¼´º«¨¬°£¢ª´º¦©¦«ª¨¯§£ªª¾¼§¬¼³·½Æ¼·µ¸À±½À³©µ·«¿¥£¢ ¼ ·©¥£¡¨¥³¡¦¨ª¥¢¢ ´¯¥¥°««¬££© ©¤¢¡´´ºµ¨µ²³¢¥ª¡w`\_]JHFGMQIMEFFBRLJAEG@VRDH=AGQ1;B7:BF79\YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:g\FCCpbGE§¤Ã¬¤©ª¨¦¡«¶Ä»¾·ÁÂÀÇľÍÇ»½¹²¯¸³¿Ãȵ¿¯¼¶¹·¦£ª¬ ªªÄ¡¤¨«¦«¯¬¢©¨¿¸¦½°·¶Ç¶µ¹¸¿±¿Á¶´³´¯¾£¤® ¡¢¥££¾¥©¨¬¡¦½¢£¢©«¡
¤ µ¬¦²§¯¨© ¡¥¤¬±¶±ª¥ª¬ ¨hbYa]NIGJNKHEDIA=PIA<GIH[ROK=HOU4BF9>HG5Ca[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,0Mv\4KZ5,MnW<-=)#zbQ5CKQ9oRF<KxecWL¢£Å¬¡¬® £¥ §©«¶±£ª²µÄýÀ¶¿Â»È¾Êȶ¸µ´°³³·Áƶ¾°¸´¹µ¦¬ª«¥£Á¥ ©¤©¯¢¦§½¶¦±¼·¶µÃ²³·¹¾²ÃÀ·¸®³µµ£¥¡® ¢©¨«£Ã©¬¦ ½¢¥««¬¦¡W¥¡ ¸ª§¶£²¡ ®¢¤¦²«©¡¢¥¥¤adZc`LHJJNFEAFK>=JB99JKN]QQI=LV\9FI=DMI8Hb\LCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWsHE6=ue\KN¡Ã§¥¢³¡³§ª¤ ¤©¬»°¨¬µ±ÇÄÁ³ÂüÆüÄʽ¯±¶°´¯¿Åµ¹±°¹µ¬¨°©©¥¡§Â¬¬±ª¢®°©¤§½·¦·º¼®¶Ã³³Â¿²Æ³º·¬´¶ª¢¦¤¬¢¨«°¯¯¼²¦ ©©¢¤¸ ¡¤¯¯¬¥§¡¢§´¦§´£¯®¡¡¦¬°¥¦¡
ae[geJILJRAC@IG;;G?99NMU^RSJ>O^]=HPBLLI9Mc]LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<v]^?[U^fr@8<HweA4¤ 褪²¡¤µ©²¬§¢¤²¬®©»²¬°µ´Æ¿ÄĵÀĽÉĵÀȵ«µ¨°¸¬ÀÄ´·®¬¶¹¥«±«ª¦»´¨°®´²§ªº³§º³·²¸Àª·²Â¼´Å§¾®·µª¨¬¡¦¥¢£¥¯¸®²µ¶ ¨¤¤ ·¢¥¦®²²¦ª¦¡¨ ¡¯²¢¦®¥«¤
©©ª¢§ xch]kjMPMNT=CANC::I@77QO]^RVQAW`\BJSHVKH:Td]NFON[W[RPQX]GAB[PBG>NC9HGHNP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1[bZ33806p[bH05JpiVCWFyfC;¤¤¡¦¿¦¨¯¯¡©µª¹°«£ª´·±°¹·¯¶¸¸Å½Ãǽ¼ÃÁÆÀ¸ÁÆÁºª¶¤»Áø¸ª±»¢°²¥§ª¹© §°ª °´²ª©¶µ¬¼¬²²¹·¬¹°Âº½¾¦Ã«°·¯©««§«¢¢ ¡±¯³«±º© ¦¡·©¥£¢¯±´«²¨« ¥¢£³°¥ ¨¡©¨§£~
jhlalnWPQZTACET@;;IA7:XPd^PVWDY^]MLRN^KJ>Zd^NHPN[UYPKSWZI?DXPDF>N?=IGGQPB=CFBM?:2D?77547?=95E4+75/251.-.,1>*'+=\p=>1.1e[d@1647gY`F(?8l}h[V;{cC=§¢©½¡ª¯«£±¸©¥µ³¬¡µ½®³¸¼º½¶¶À¿ÉĹÄÁÀÀ¸Ä½Á·¯µ¨«·²¼¿¿´©®±¶«¨§¨§»¤³«¢±°³¬©¶´µ½¯±µ¬°µ±ÀºÄ·«¼¯±¸«ª£±¦¥ª ¤³ª³ª«³§ ¦¤´®§¢®±§³²©¤¨¤¡¨µ© «
¦¥¢
{elrgpr_FYfVDCMXDZ9HB6>]Qh\NY]G[^]NMRXdJJC\b_PLMNXWXPJVVWM=EUJEDAM?AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,+%2+*5K1.'__aU150=`V^8)C3YU\gK5zfL@¤ ¤¬·¤¬©¦®®¶©¯´º§¦°·Å·±¶¾ÀÁµ´ºÅ¾ÌŹ¿º¿¹Ä¸Á¹²µ¬ªº¶»¹½´ª°µ§«ª«¬««½«®±£« ±³®®¶±¹·©®±¨µ¯³»¼É²ªµ´±´¯®§¡³ ¨ ¥²£ ¦¯¡¤¢¥§²©¢§²¬ª¶¥¯±µ¯¤§¬¸£¡«¥¡¡ z
{knxnu{`EajYIHY[={JGE6AbTi[M\`J[]ZRRRb`LKE_``QLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`U`/5(C^Q\.*B/JGP[H3cYUKD °¨²©¥¤®®µ©·´¸¤«´·É»´ºº¿¾´´·ÃÀÌȻü¶¾¾À¸¿¼±½®§º¹·¶Á¶«±¸¦®«§£±ª¯»¤¬²²§¨£²³°±±µ±¸³¨®«±§¸¯µ´ÃŶ©´µ«°ª§£¶§² ¤²§ ª©£¥¥¥·§¢²´¬§±§®°µ¬¥ ¬¨©¸¢¥ §£ v{
mqwu|~\Kel\KNc\?b{GI8GgWe[M^bMXYWTXTi]OOHa]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANHf27'FaLV%-B.=EMQ<3rkJDC¥®¥®«§¤°²³ª·°¶«µ¹É¹®Á¼Â·³±µÂÃÎÅ¿Á½´½¿¿º¿¼³Ä¨©¹°¶¶¿¼¯«³² §°¥¥°¥²µ¬«²°¬©¨´¹¬´²µ¬´©¬¨«©¹±±Ç¿¸¤¹¯©¦¨°¦¤¤®£©°¢£££¬¤ ¢ª¦¦¹¥¬µµ¥ª«¨¬¯¶¯££¨ª ¤´¢ ¦w~
||}qtr~}}\Sdo^NZf]FD[H;NmXa[M`bNVWVWTYg^QRLcZ[TKGOTSNGIVS\N;P^IBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Bc;6*HdHJ+:I?3BIS,>k=HHªª¢ª°¤¨¤³´±´µ±±¡«½Ëº®À»Ç±´´ÂÂÑÅžÀ²¾Á¼¿·¼Ä§¬·¬³¸»À°«² ¤§©¨¤°£ª±ª¯¬°®®¬³»§¶°²©²©«¥¥£º¬ª±Â¹µ«¹¨¨¨¬ª¨±¥ª¤¢®ª¨¢£¬¤¬¢§©¢¦£¬¸±²¡©¢ «®°¬§¨©¤ §
¤~|w
tsqvl_Y`ncQsq\K;|F>WuXaYNc[NUVUWP\b^SONhXWWKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*35>10485(5/*,.30;),,'%234$,2-860)(1<]J0.IgDF8<B05EKX1@[>MF§¢ª²©©¯¶¬¸µ®ª¥«ª½È»°½·Â¯°¬³ÄÃÎÎþ¿´ÀÂĺÁ´ÉĬ¯·²¸¿¾³®«¥§ª°©§¨±¥´®«°®±¯²³»¤¸³¬¬®§«¢°·«ªº¶¥µµ£©§¬¬ª¡©§¦±²¤¦¦¡¡¬ª¡ ¦¤¢«¤£§±·£¥¢©ª®©¢¥¤¤
£¢|zt~tw¤yk^`ngWedN@gLDbyWbXReTMVUUTO\]aUKMiWUWIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06WZ.0JgAA<<C+:JO^4D@HHD¯¤£ª°«©µ«¶±«¥¬ª©¼ÀÀ¸¸³»µ¥²¯ÄÉËÑ¿Á»¹À¿Â¹ÁºÁÄ®²µ±³»À¾³±®¬««¨¶ª¥¯«¹°¨±±¯±«µª¶µ§´¶¬¬¤©ª£³³¨¨¤´´ µ¡©¨«¨«§ ««¨¹¶©ªªª¢© ©¡ ¤¢¦£ª¦µ®¨¦ª¢£¥§§ª¢¤£~¢txu{x~oqggqx\`sjO]VHmxUdVRbPMUTUPOX[bUHPiTVSGPYUI>IHOQPxLMV=<KD?@A<@CUC9AK=5;E13;97*4:=+-341*8**+*,)*(/*&)%3;,$2)2021%/2Qc02?f=NX?C,>LT_/Ik7PE;° ¥ª«¥¬®³´¯ª¥¯©¨º¾¼À°®¸®¡µ¯ÉÇÈÑÀ¾½»¼Â½ºÃÁ¿¿®²²±µ¼¼Â±²³ª³¨¤µ©¥³³¹°£®¶±¯²º«¹®ª®µ«ª©«¢ ¶¨¡¯³¡´ª¨§ª£ª¡¢¬¨½®¬®¡§¨«¯¡¢¡¨§¨ª°©£¬¢¡¢££§¨¥}
¤
xt}uxy{ttzi£ui^elug|RXp^JxsSdSQ^MMRYfNLVYeYFSiRQ?BNQaQ:IHLSIqQLS;<I?;<=;@@W<<>H73CB15:93-5::)-31--6)(+-,52#2)',%.;.&1.0-14%,0Lh:48_=ad?F1CP[[+HO:VB4± ¤¦«£¦¤¬¦´³±ª¤°§ª¸¾Á»¯§¹ª§®°ÉÆÈѼ¿¾¹¾¿¼É¼Á¸°°´±º»¸À²³»¬¸¬¢´¦§¬²¶¹³§§»µ¶½°¼¦¬µ«©¯£¥¬ª§ª³¤³¨ª§©¤©£©§©½ª³¯®©¤ ®²£¤¤¥¤¨«¥ª¡¡¥©©
~}
¢~qzy~|iw|zuqq}hxd`hcr
zmgy]^VBWzmTaORXKLNqt]HZ[gYEUfPD>JNDCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KH1%90%,,09/,,+6'17#-/GjI14X=fbAJ7GS`U*=;EZ?*±©¥¤¡«¤·²²¥¨±§¬¸Á½µ°£¹¨¨°ÃÉÉÌÁ¶½¿µ·¿ºÈ¶Ãµ´³µ±½¸º¾¶¹µ¿¡³¦ª«°µ¸´«¼¼¨²À³º ¯³µª¬®°£¥¨©¢¥±¦¯ ª©¨¢©¤¨ »§°®¡«£¤®¦¡££ª¢¤¤¢¦¬{|~£|yk}vyxb{zqpqsxisjgdhaosmbip`pA\xkV^NQQJJMSYVM]^mWDX`O^PHMDF;7HEKO<rhJK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*K>*49&'.34.0+/4&,:$40BhY13S=e_DL6KWeO*<2P[=#¬§¤¢§£¸¯®¢¯¯©«¸Âº³¹¯«¨´ºÇÊÈ¿·Á¾¯´¾·Ä¶Ã±¯º²²Àµ»¾·©¹·½«¤´§¨ª°®¹±ª»½¤°Àµ´¡®·µ¦§§±³ ¤¦§¡¥§¨ ©®§ ¦£¨ °¸¢±¯¡¬¡¬¤¦§©£©¦¨¡ª}}|¡y
}{so}qst`yxiopqojrczlifdaf`[rjrMMiXZMPLJHPRQIN\_nSDXZRgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZhH*>/ZY5(¥ ¡¤¡·«±¤´´©¨¹Äµ²® ·¬®°µÆÈÀ·¿Á¹°´½·¿»¿¯«½°´¿±½Ã¹©»º·§¨µ¨§«°³±§½·¤¼¶¯±·°¨¥§¯± ¤ £¤¡¯¦¡¢§¯¢ ¢¤¤£·°¡¦±«¬£¯ª¥©¥¦ª¤£©¡z~zy
~zzprwnot_xwdllljimerikfi]ds_ZkuiZI}^[XOOJHHRUF29_^lPDXVYeMIIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<#8R=*113>D5,-'42*;+139cl84GAf[HTDU]hE.;2bU,2£¡ª¥¡¢ ·ª® º¸¦¬½Å³¯®¢µ¯¬¯´Ãļ³¿º·°³¹¸º¸»®À³´¸¯¿Á¸¬¼ºµ¦¢³ª§©³«²¢Á¶¥¨µµ©²»ª§¦©¯¬¢§£¦¢²¤¤¨©¢ ¥ ¤¹¨¤§®§¥¡¨©¢¡ ¡«¡£¨¤y|
}y
{w~{ltrllsaxthhjgfo
gghcfij`ibifZe{c`SsT[[SLIGIOS@!*i^jLCVU^`KIHEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,>0-N?.+-7,1195,&.5-80576`tB3CDg[KWGU`hB379eO'2¤£¤§£µ¬§ª¹·§¬ÃÁ¶°¬¢µ®§¯¯·ÀÀ¼²Á¶±®²¶¶¸·¶¬ª½³¯²±½¿·®»»±¥¶«¥¥´©«® «¨¥°³ª¬µ»¨ª«±¥ª¦¤¦¢¤©¡¢ §¶¦¯ª®¡¡¡ ¦¡ ¥¬¢© y
w|{r}}fxokjlguskcgdduadffejjcjqY^X^mdaNhWZ`VIGHKMRX>9`liGBTS\[IIGEA.<?9A89RG@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=+*,0A*JK./*+3722(57$+7.72685\yN2>HiZLZJVbfA:3AfH%5¤¡ ¤´±¢±½·¡±Æ»¹°±£·¬ª®©¹½»»À²¯®¶¯³¸³¨«¹±¯®´¶»¶¯¸½¦µ« ¡°¥«®¤Â ²¤®±¯·µ¯®¢¨ª¥¨¥¥£¨ °¦¹¨®£¡£¤ ¨ª§¨§|t
|ofynhkjgqrk\hcbraehjnlgjifl\lmuqaTbhdeYIFLMOXQQVaeT@VSYUFHFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24;6#3*)6.55465Z|]19Kj[M[KXdd@A1IeC'4¢°¡©²°¸À¶ ´Â»½¹±¥¶¯¨®¥·¸··¬»¯ª«·ª´¹®¥³µ±®©±¶¶°²µº§¨¶©©¢ª©À¤®°¶µ±°ª¢£¬¨§£©¢¤ £«ª©»¨¤ ¡k¢q¤v©§ ynj~wql}o^c`gkuw~fhuifW\isnNPjcfqg_dfnli^__gOKD8ETg^JGPPUUKHSaoteF[QUPFHFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,+08>G601.*.*/568,#1'214:176Xl16Ok[N\K[fb>G1Pd=+/¤° ª®«£½Å¯©·Â¸½¼¦¶°¥«¤¸³²³°¹ª§¬´¦°µ£¨¸¶µ¨§¬¶²®´³¢©´«¢¤§¨¬»¦¥¯³¸®¥¨®«¬¥¡ §¦¡¦¥§§ ¨ª£µ°££££¡¡¡¥¦ªrx¡vif}sx¡o~{¡ {tvlmheczlqbTmcliqXjonX^i[kj[pmyrhZ^FN>F^MERVVQQRWTg^LXJRRPEGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82).1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Wa7/(¦¬ªª§©¿Ã®±º¼·À¾ª¤·°©¬¦²µ®¯³¶«©¥±¥µ³µ¶´¦§©³±²§¯ª ²¨¤£¡£®µ¤¥¦¶½¦¬§ªª¬¨¦¢ §£¦£¤¤©¢£¥¦ ·¤¤ £®©¢
±¤¬yÔ¨ÁÇyw±¥·dÀ¿yy|Êq¼Å{r¶§ºzl±«°yhkX±®oei¼¼nhymrØ~Sjc¶²qu¡ªWOWaOVNFT[XQPR\W\P@]EQNEGI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww21Tk\O[M^g\>L1\]41!¦¦©¥¬²¨°Â½²µÀµ·¾Â«¦´©§¯³ª¯¶´¨¨¦µ¦§¸¯³²¶ª¥¤§±®±¦ª§¤±¤¢¡ ¯¢´º¢ª¨¡®¥¢¢¨¨ §§§¡§¢ °££
¯jjª~geq¥q®¡¤~w»|k¡v±_j´[¥f`fzfjxj©e¾rg¦v²j|±xtcmm§m[ EigEu`}g{¤§Y_«ixzj§7J¯[WTlc[KNW_\WV;NOWV/ITTJDEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:5/'$203B/=;Uv2-Vj\OYL_gY:M5_Y31¢¬§¥£¤©±·¬³½¾°·Ä²¸ºÂ§©°«¯©©°¯¤°º°¤¥®³£©¹©³²°£¥ ª¯«¯¦§£¢°£¦¡´³¡«¢ ¢©¤ ¡§¤£¡¬¦§ ¡
µµx
©µw³·~¨~k¦z
w«gk±[¬{tpx °vwqkkl|N¤XHcc~ch¦`yruS^P©mcq~b.Q¡n[Tkg`LK[dX\ZB>°xWXA#MiECDA@A19>88:84;:9<9:A:E::;6:CB8=?KNG:5:AFB@AD<FD;0201;F,0.940,.(/3,>831/2-D1<<S}n3+Xj\OXM_gX7J9aU50³¥¦¡®©§³¬©»¶Â°¼Â¸·Áª¬®®¦®²©¡¯¼ª¡§´¤«µ¥¦²³§£¢¨ª²¨°§¥¯¢¤¨µ¯¡©©¨ª ¥¨£ £¥££«¦¢ Õ¹p°Â~Æ|Ö»|¥¤{¤¥z¬yV¯{~j¹Z¹w}¦|zªy{±mt¼
oP¯§ÅQ zc`ªbsrl`Sµ´È|c¤3Bv]QjhcP@XfZdaJHMlK[SOYfZCD?E?0<<59;74<;8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DC./0483+-).323971#%5*>3==Qwj6*Yi[K\P_fT7G:aQ72%¢±§¨¥³ª¥´¨¤»·Á°ºÀ±µµ¼³µ§±°£°³¦®¶¨¨¹®£¯± ³´° ¤§©°¨´©¤ª¡«¨°©£¬¢§¡¥¡¡¡¢¡¢¢§¡¦ §¡²nhµq«o¦r´sr¶{¤¢~ ¥~°vÒÑv\®|¤oª¦k
}}{±sx³etofRÈZÂ\yb__vsb^YÊo¿uMKµSUÆdTQjcfXAOj_liOUFI9=WR[WXHC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>HI91746A>/.24252-).26,742&60;5:=Pqh9'Wi\BNT_eP5G=aM62/¡¥¯¬¤ª»¦´¥§¶»¼²º¿·¶µºº³¥´´¡±²£¬°¤¦º®¤±±´¸ª¦¢ª¤±§¬©¤¨£¨ ¦ª±¦¢¥¡¤¦¦¦¡£ ¢¥¢
¬{w¨v£©o§¡¢®
³\r³R®}¤q×}w
w¯w´aelZ°XKuyf`^vwgk^¯wxl5yÈ®²_ATo^g`EPl_qmVUM.eciSYQ:AD@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@=V_cN6GC`I:88 ¸°´Á¨³¨©²º¸³¸¿¹·²¶½µ¥¸³´¬ ¨«§¶«¨±²«®´¤© ¨¡µ¦¦ª£¥¡¢¥§¬¯¦ ©¢¢¨¥¥¨¥¬¡ ¢ ¦©}}¥x¡ªp§ ¡£ª|yo±Z¨ ytØvt§¤|{²^d ~l\«[Zhgªcr{kq]¬Z kneOJC¡\ZLt^beMZa_rs_JU6JYHE=HFAL35A8.;>05A78@<6=<F?:<6?=B7.HVJEAH6KIN@IK@EN::@4.;>002144+*05/7,&21($$6671<PeeA&Uf[?1U_bL7FI_C1>8¡¾«´Â®«©¥´°¸±µ¿¹º³±·¼ª»´°¤¥§§ª±©°ªµ¬«¯¡¡ ¦¤£¹¢£« ¢ ©°¯¦¨¦¤¨ª¦©§¡£¤¡¡¡ ¡«®mr´r©v¦s´xs³¤¢¤w¸o{¢kk¶Z
ei¡¢§mr´t²j
ju³af¢oj\`M¡|Rs£ly~op\¯V<wfTon.\§ObRkealYb\`p{cSYQ>>mp3BB@?L9!7@6.;@37C58??3;<CDBJFMIF62JTKEBI6IJP?HNCFP=<E50;<010/75,+,426/#00,,289/9N`eD'UdY>/U_aL5FM^81B8¥º¡²À®««§·©¸¯´Àµ¼±¯¹¸«Á¶©ª ¦¤¡ªª§¶£²¨®ª § ¥«¹£¥£¡«¶¯§¬ª¥¥¬¡ª²¤ ¨«°¡£¢ ¡ª«Ô»s°ÃÃ~Õ¸x§z£¶u}wv²`ºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¡~t«}¾ns¼t²uxnqn¤t½]w}[ay¼kZV[jz^j`dfbmwoY[YCA@r?CG+5H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7A9§¡¼¢±Ã°ªª«±§¹¯¶Ä±º²®»°®Á²¬¥¢£¡ª¤ª²¤´§¤ª¦¬¸¢®¡¥ £¯¹°«£¨§¤¤¬ ¨«©£³¢¥§¢¡¤° ª
¶¸xµwnknsnysÁ»½{²¨pt¸|{|¤»¹½uz´£tvut°ufiµtrpw¶^y}hymyb¬pu
Y[§jDdYSf`c]cQgfqluBNPLD;ZL>J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7LT_G'SbV8*O]]=+:VV'=;<§ ¿¥´Ã´¬«§¬«©»®°Æ¯µ³®·§µ¸©£¢¦ ¬¤ª¦µ¨¨ £¬¤¾¦¡«¢¢¨¢²µ¶¤¤¢¦¥«¨¤¥¡©¦§£©¡£°©§¢j~i§xs~tzez¾¾Àºnq_rjZ^adk`cmvbke^`cqir}gj~rtx}}b[wthP\n|{kXlzrIJo
pMtMEW\f`L[Xgc^O[muiqRODEM;HI<L?2,2A?8/5?C<9;@;=C>RVVWYZ[\\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7JR_I'S`V4)P^L(3=[O'?2>¨¨¡Á£´º¶£¥®§¨µ±¬È¬°³¬µ£¾±²¦ £©£¬§®¤¤µ©¥¡§¨¾§©¦ ¥©§°²¿¬¦§¢©¨¤«££§¢ª¢°¦ °¥¢¨£¤§£gm}qw
µª ¢¡z¥
lj||tqxyvv{jstucw}vkp{m`c\pgMYYej_WZozmmfSOFS9OZNRO(+:JB635=@A9:C><ENSSTVWXYZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J&R^S10T^:+=8\K,<-@² ³¢¿¢¤±²· ª¥²§¥°µªÉ«±¥µ¦À¨´ ¤¥¤ «¦¬££¶¬ ©¥À«¤¢¢§¨§²Ã¯««©ª ¬¡¢¥¯¦¡¤¨¦¡° ¢¦ ¢£ |ª¨{
¤f¡³¯
vz|vyzogykuyrhszvktcyf`idbdfjYk{pij\SLPD_UF@??,4@F;45;>A;<?>>HNNOPSUVVXZ\_aca_^^]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMMD/T]Q05M[17E4\G5<,@´ ¹¯¾¬«®²² ª¦±¢¬³°Å°ª£³®¼¤´ ¦¢¡¨¦©¦¤¦³µ°¦®¾ «£¡©©¬¢³È³ª¤«§¨¤« ª®©¥£«¡ ¡¥¯£¨¥©f|e~cylhkz¤«ke~g
eeihz¡kh¢wkj£slnzzXe^
^lv\hswwnxxsmytw{j
Y^ktd]shj|qlc]QMWJdX@J4=F7?FD71<=?AC;;DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AJ[J/7ZO6)EY/DO1YC;?.=¥º¼¹¯¬³±ª¥¨®°¦®°½±©¨¤¯±£¡¦«¬£¦¨©²®£¢¯¦¶¹¥®£¡ ¥{¥¬¢¨³Ã·¤¢§¯£££©¨¡ ª¯ª«£ª¨¦¨¡¬¡¥°¤ª¡¥«~¾r´rhx¹Ä¸q¢£{¦sª|ËÀÀ»q¢|À½ÂÁ{{ÃÀ}k¥±ooÊzwwzyqzqx
ymvbf_xd_db^thmdbXLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>I[L*#BP/#F[3PY/UAB;/8£¸Ãµ°¯À©¨£¯©°¯¦²µ¯ª¦¦¦±««¢ ª§¢«¢¥¨¥¤´£¢¦¬·³§¯¢¥ ¡§«¤«¿À°¡©¯©¢¢£ª£ ¡®¨¬¦£¢§ ¥¥©¤©ªª¬¡¥¡£Îyz¤y_®^§¢ |§t«¯^c©z§
t³c«¡³j®t}¸aY£Ínu{Ú{p~ve{vvk}n~
~m`qkpg`_xd[phjdf`RTRW^KOC5AHED8>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-J0';\;L-!P@F4.1ÂÀ¿µ´°¸¤ª¨´«¦²¬¬¤«§°ª §¥¢¯ ¨§£¥¡°¬§®±«¨¬ ¥¥¨£®¤«°¨ÀƳ¨©±®¢ ©ª¡®¯§ª©§§¤¡«´¦¢«ª£§¦¡° §¡ p
u¨q±|q¬~¡¥w«}r~«vz|~ª¢~«{{VÄzoÁ}mupmeveoawnromdotup`gmd_oiinfcWS\aZRSC9II@D<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1' '45-&7=WJ-<'>1)3V@F!G:C1.+°ÔÆƲ´£££¡¯¶®¨°§©ª¨®««§¢¤¢¦«¢¥ ¨¨¢°¬¨§¯¬¨§©£¢¡¦£¯¬£¬µªºÍ±§®¬¢®¬ ©±©©©«©£¢¬¯±¢¨¬®¦¦«ªª±¢£¥
¤j¤uz©tz²p¥q ¤``R¬®v®¦z{f£¤£}©~®^|©U¢z¢{ïÅs¯³³¹qb©¯Âthmomywwolfdeqpf{hc]W`jXXUMMQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799674,&$" ('"+-"$.!3-&@DWH,G+66*1PKL# A9D4,'ÃÉÖÕÀ¡«¨¡¯¢°µ°¯©¬£¨¦ªª«©¤¦ ¤¥§¦£¬¢«¡¤¯¢ª¤µ°¯ ©§£¢¨ ¦±¦£§±¬¶È²µª¬ª¡¥³¡§««£®¬©¢¡ª£³¢ª³±¢ª¨¯°¶£¤§|ªlu«y|°o¤Ò¸´¸É²__©¤ yxªÉt£§©ÆÆxe¡¥s}¯^pµc±uK£m§Gd|ppzt|{m[fjrqfj^bYcm\^YIMLKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75685/)(%&%$&),4ENPPMFKJVF*L0/>-5OTQ;<F2,$§¤Áƹ©³®¬¥¢²¹¬ª¡¦¨¦ª¬©¦ ¦¥«£®«¥ ¬¨¥¦µ¢¨ª¶²¬¥ ¥§£ ª§®¢£§ª°´Â²³ª¨¤¡£®¦¡¥¦«¯¨¦¬£·¬¡²¹¯¯§³´³¥§£Nxz£|¤§¸{|y¹~Ìƶx¡}v¤£¨~°
¬}a¥l£p
}r¬`¤sq`¼}RUu£|~tzs~p[mnwrjoZd_hnbd]KMQTBIHFI:9K>B108866877-*5==?BDGILNPTVXYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOUF<E3:P[T6?H,- ©¬¤«¹«¯ ¡¬³³¦ ¥®®ª§¦¦£§¡²®¢¨¦² ©¤¢µ¢£¡©´¹¤££¡²§¦¡¢¯®¤¨¢µ²Ã±ªª¦£¤¥¥¤¨®¡®¥¦°¥¼¡··µ²¹±³§¯¡£ÑµÃ·y
¦x¢w ¥qª´nrj£|s¯¥¢¦mp²\¥szl{}n©a¢qqbs²¸hx¦~w|ymixixsnt]ddnmfh`JZXX<HG@U3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^``][ZZXURRQF:2230/++(@QRTUTSTVWWXXWUVVTQOQ[U%!2AH$)%s¿¿»ºµ¨¤µ¡££©§®ª«¥¢¥ µ¦¢¨§°£«£¤£ª´´¤¥©® §¤§µ ª£¶«Ã°©«©¢¡ ¦¢¦¤¦«§¢¥§¾¬¾°£°³º¬´§¨±¤§z¨}|°w¤¥m²o¡|¡¨¬
®
© ¡{~«ªx y¯]£|¦§d|tk¯]¥kq
]`[ n¦zzklb}tmz`geqohghCY`[=KT2U8BBC7$$3+''3, /6674359@CFIKMNQSSSVZ]_a`aaa^][ZWSPONI7052.*,ATVVVUTUUUUTTUTSTVVWXVUUQHFIJ#((½©Æ·Á´®¸¥¤¤£ ¯¯ª¤¹ ¢ª ¯©¡ª¨¤®°¬¦§¬¢¡¦¢¥¨¦¶©À¯¥ª¤ ¦¥££¨««£¤©¨¾¤Ã¬ª¢¡¬²º«®§ ³¯©ªv¯~
}ºe°e}¡¦¬°
¥¤¡¡
[lj³`{{±lgn°[}´[¤kÈ¢e{¼YvµZ²}R¯z¬X¡m¨{x}ds}bwt|ajfqnfeeOUc[BT^>I(>9=4!",%2. *1/045799<ACFHJLNPPRTWZ^_``ab^_\[XUPNJGC553./@UZXWXWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³²·½»´Á³£¦¥¶¨¡ ³³©£ ´ ³¨ª«¯«¯©¢¯¬©§¢§®¨¢¥££¥£©²¨¼¯¥¨|¡ ¨ ¨§¥¥£¥©» Ƨ¥©¡«´¶®§¼¬©£¯¤¸Ãº
§¬¯¦¥ª~սªb£¿½}~£×º¸µ
½¾j£o«mz²°Çj«°½xw¢¾»t¦yyc}zdfy{`kekjbPb[Sj\@TaBN)=:4/$%2 $(0496677;>ACFGJKMNNQTW]a\__a^`[\YTQMIC?<A?5=SYXXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ¼³´±¿¹²½³¢®¦¥³¦¥¾©·±¨¡¿¦¦²±¹¨®¥¦°¬®¦£¬¡¤ª¡£§¨¡©¢ «©¹®¨£{¦©©¨ ª¦¡£«»©Å£ ¯£«³µ«°ª »¨¯¯suª¤·epgmow¤u®pq§£®¤rmmmexomqyiqigqhigpd]cjoY]g~w¦`bqofd¢|ufwhjy~ydlcflbKdXJkY:QeER'K:+# #,)-2.5:457:<?ABDEHKLMOQSV\WZ\``a]][TPLHD=:AB7MXZZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨³ªº¹²³«©¢®£²©½±ÃȾ¶ªÀ«¬£ §¬º£¤¬¬¦®©
¦ª¢££ ¤§©£ª ¥¥§¯º«¬{¥§¨¢°¦¢¬º°Á§¤³¦¬±²««§¹¤®¸¡¨¥¶¢©ª³£« ²¢¡ ¢ ¤¡«¦¤~gtvtq§l{ phvpwv|zjlddocU`X@i[HcaOZ+F=+&!740.!%2(*699469;>?ABDFJKKMPPQWTVY^_ac]^UQJED>9=@ASX[\YWXXXXXYXXZ[[\^__`^^^__```_YY`¥©ª¥µ·®®¢°¤ µ±«Å¼Ä»¸ª¢¥¥°©£¶§©´¦§¬¢§¬¤¡§£¨©¦¡£§¡µº¨«|¡¥¨¶£§¬·§¯Á®£·¦¯¯°©©³¹¡¯½¦£¦¶¢¦©£¬¯¡£±¨¯¤ £©«¡ª
~fuvysj}¡ yqryq{jnd_pi`[`YmcP`dP[:GGD=2==7.*&+)&&406658:==?AACHJGJKLMSSSUZ``i`eVPJACB;9EMV[^^[Z\[[[\]]__]^_`aacaaa`bbbdb\[c¤¨£°³¬®£©§ ¨µª¤³»¯¬¬¢£z¢±¤¥°¨¸¦¢ª£®£¨ ¡®«¨¨¨¹¶¤¥y¢¨¸¤¯µ¢°¯t¤¾£² xz©²»v¤ª~d\bv¤~n³£§®«¢esyp¨l¢§e¥
wkvq|ai[vghr{¥dywinykpe`vokkh[febboS[>NNNRG=@TB91/&4:316678<;>@ABFHBFFIKLSTUY\_hfgWQJ<DG;8UR[`ab`^`_`aa_\]___aabcdabaaedchd^]f¦£¡°±¬«©¥¨£§¤«µ¯±¦ª¦«s¯¨ª¦¸ £«£§¢
u®¦§£º´¨ uw ¦²µ³¼§¡~§¢z¢®·¦
±©¯£y¬¢§©¨v¥z¦{±z
cympyq
txht t} ~j
kx{qpgdwnilk[ekjes[^ITLQ@E5.YTU6)!09=>643568;:=>>@DH?IEJKGRXZY[aahfYQH9EL;>bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah£¦®®«¨¬ ¨°¦§©¥®Æ½°¡¦¨µ«¦¡¾ }
«¢ ¡¨¢£¹²§
pu¤¬´´Êª®·
°±®©¦|¨r{w¦h¤y´¦¨Â«¡q¤}
±¡|¡ |
ms
zr|t
Åf©£k¡p
hwt{vghupggl^colglXgG]QL2E46M`c7&3<DGD:64658;8>==>BL?NIJLCPZ]\Wb^jl\QE=KM@JdY]cfhgbbbbdc`_babcccdiicbbbecafcbbi¢°¨©¨¥« ¤¹°ª«¦ £¤ª£¤©¶£¯ §¥¼ y«¢
w ¤¢¸¥bm¡¡¨~¡§ ® «¯¤ª~¢vj«uM«x¨§ª«}¡{z§ikg¶}n`dY~{dhr}yl]{m_Sp\_ly`Ye}q§ªk£nr¥piel[m{eY_bWPovemtrjjo^jomliXiO]WE9A4GC^k4,ICQMN=84859;6@;;>BO>QRLMBJ\]_W^_cv`MD:MOMTb\\ffiibbdbddbab`cdcabikdbddgdbgeach ¹¡ª£¦¬¡¶¼«®¢ ¡¥ µ¢¨ ¦´u¦
¬¤¨¥°¦¢in¢ ¢¥£¡ w§¡§©
¥y}}¢przym¨|¢sv¦f~v¤_z}s¢n·´ºsµ¨dƸ{p·q¤cs¬«`}j³~n}q£ls¤s¤_³p|´ts[²jbosuqhoXklrsf\i^bKD=D5QAYq3=SG_JR=<395::6D;;@IP?TMNQ@E_^[ZW``|dHC8LWUVbaZffkkbbeadc`ab`dd_`cknccddhdbgfchh£¹« ¤¸µ® ¢££¥®±¬ ¤«x
p }¨ ¢¨¨¤~k{} w¢ r¢©¦¨«®}z z£xs} ¦¢d¡|lhn{§}rhs©sªg]
vhªj¸f\¨pa^§vuhunl§\¨~w»k~ª[]´g\nqywki[qjxyb_fXbAPEN7VBRn4KZZ_NZC@151;;7H?:CGT?YRY]>Db^V`Qac}iEB9N[]XdfXfgnmbbe_aa__``ec^bdoq_deekecihgkiª¶¨c¬º²°¬¦¨®°¨«¢¡ £jq{z¤
¨£ iy{¢ ¢rhp©£¨ ¨}°£¢¸w£³¢£xz«¢q¡|
¯µ}k¡x~´££«¨||~sªZ]o{xbL~zz
cyBMY¢jq|muy±³§umq|orj¤]vHec`sp}}ne`lhv|cdaQ^V]TV@YEQgDSW[bX^ID=B8?B:IE8LDWAVQ[VDFb\Z`K`m~qEC<U_bZejVghmobff^aa\]^ahb_edvl^egfkdflihki±®S_ §³¹³³©¢«©¡«¤¡¨¡w
ny
|r¡s¨|l
q¡x
|¤¡£®}µ{¥z©¡}§hvm~t¡sq|
o®}¤¦£o^¨gu£co¥aÓ|zxrsc£
~¢r¢uk³`sª²¨¼wm~¾¦©´^n}qos¢r]£gt¦ah¦mÔ|owykzwsm©¤g`eypkgfdmuxg`bS[eQQbIWIT_WS[ej\dPECKMJKBJE8P?PMWSXORR`feiRcwywIFEc]dZhiTihjocjg`c`\]]_hbahe|d^dgdkdjmghlh±«T\K~©¯±´°³£
¨ £¤¨ ©
{p}h}wol}£ª
yvnw¢y¢¤³¡¢¶z¬§¤®¥p©
|¤¢r¢®¤®¢vµ¶µÉ¡s`©myu¡w ~oLf£pr¤{ytal~ kqd`rti{i³µ´Æ¦s~{j«ultwizurPD}³^jvkxfjgbttqnV^TYhORhIULYRU]hknVgWMJAJMKHJNAQJPdcimetrs~y{nu{{TPOl^h[kiRjhilglfce_\]\^ibdhk{_]dhcjfomeile¡°§f?¡²«¯¯µ¢£©¢¢¥¥§¥yjye~ yui
z¥¨z}xp¡y ¥¨gnxl¢d|q¥wpg§{¥zrv¹n¢b}¢mri«ju mn¦`ihu¢}`
uobh e~iuocfnr¢Z_[c¡n]o{srd¥mw¢dg§hsn¡oSo _e§T]TmmskqmphkxskoRXWVfYSmIXO]HXihsjYkVQREV\LXRaThj^wuz|p||r{rvv^QrbgbpgPjhhklngdg_]^]`kcjivu]\cicjjslfkmc¥¦zetm§®¤©°±¦«¥¢¡¢¢{qh{st}{d|
¦¡«
}sh¦} ª§¦x~¥²¯¥xz©t¥n¤¢¼n|¥¯|¥zq¨ g~o«cw¨l©¢uw«¦k°kv³©knma«ªv¦w}
¥ iv¬g·sw¾¤Y¦«aurso{tqbj~nhmSV[Uaa\kM\R]I]mmw`[qY[`Zgsenoqcqt`wz~yrys{{vbxdcmsdRlgholrifia_^\bkbmlzo\\bibljwmglnb¦ª¤©ª¨§®£«¤¥©
tzo}ttrm|{
¤¥¥uol©«£ u~y®£qy{r¦q}}zx{~~v z}l
[yxqyphn~qtq
e_wusuoynnm^wixf©~t|jpv|
vmlgsy{x[kXyhnwrqowxo]lnigVZ`W\ekcUaU_Q_pxylkvejkjv|qrtsaoubs{xuyux
}{mldxn^Wnghukxjijd\`ZcjelpunZ[bkdllynhloa¹©§¡¢¦¤¤«¢ ¬ ¦¨~r|}~ztrp
{}
x~¢{¦
wr
ª¨ «~~¨¦xp{o~¨
p}qkp|hm]sqtkvsYrn}~j]jd{
_ix{{vhykaqrw_s§fnwp
yoegdzz[\jgnv[{xwtmsrf\mklbYY^ZXlq[_`Z^]ft~{uotckkj{|r{xtdmtgl{~vz|{zz~o{}s~ysiT\qiluougkhd]aXkhkjqrmW[enlgszohjm`ª±¢£¡¨¢¡}¢¥{|r|v
qor~z¦ xz¡« ¢¢££ª¡§¦ |x§~±¦²¥k|vwe
|
w|yu¡
~vptx¦
|vl|yjrhatp}zwvowt]^ohn_^Z\]ShqUc[\alhu||sopdkji{mxqioplf{rx}zm|zx|}zyNdvksmpzdkebb`[tfpfrrmU]ltmhyzqgikeº¢¡¤ {«
|x{mxr~ml~z|©r
}{ª§ ¢¦ ¦w|¥{|©¡ª~ox
qt`~u~
nyut¢
t||rr{{y§w
|ok~{mhlmg^yh|{vtuu{w\`p}nu`cZ]^QfmSeZ]ajivy~qkldkjglslltoxnynv}vr~{{|{`i{juhidjc`i\duhobunlTcqyepzzseimm·¡£{x¦¤xz
{m|~xs
}|kh}|~|¦p ¡
|¨x£¡¡£¡¤~
y }|¤ ¦~~utpv`}r|r
hwqx~s||py{
z{¦|
uzer{~xzpljf^}sh|uus|rj^`tvpxdcY_^RkhTdY_agjvxqfkclhejm~hnqk}wzks}tv~|{}jrnsiahlb_qVtomn`xhmWjtvcu{{rbjny²¥¥ |v¤ ¢x{~~qztu
~xgc}x}y}o¦¦
v¡¡z~¤z
x~s¢¡¢~|vq}nzd|
pleuo|}x||{q~xy
¢w
v{v_xw}s}wflda~ijwstt}q|bcasnusmaZ`^[kdRbW`ahkuxpbjcmeh|lhthloh|ymqs|~z~|mvttmeljacuViqn`yglbjvpfy|zq`rl
¦¨}wªyy{}|{xtxzs}d^}
t}}}£ ~rz§ t§tlzo£|zqykul{}~n
wo}~drj{ty~ux}}
¤x
t}sun`{uzq|oancd{bnovrwwstav_oluno\[_]^j^O]Wcahmszk_jejchwmflhilh|zwos}sz}z}}rzxxnlkh_iqchqoewhnlayhk}{xpawmª ¤¨}w®}w}{||vwptszo
|~|`\~szz¤}{¤n¢¡ogz
p¡|{tsukqnu{tn
qt{|dqly}}ttyo~|
¨{}~
w~po
chxtuo{b^p`jt^qjzxxlrpex]mlsmsXZ^_ajZPWWecgqqf]ihgbgqodigejhzwtn
t{u
w
|x
zw{zryjk_phtkromqgole|cnyvqlww¢¢¨¡¦tª t{v
wxrs{
kroymvnq[Y~vu w~
m¡
j
£g~w~||nvplmnp{
ispwtxfsov|zzwtp{{£|wxxnj]rsqpoxZ^p`pj^oi|ypmmjlv`pojrmYXaaanXQSZfgcupb]jmdbfkm`ff_hjuqrpuxux
ww
{{vjqc|b|oqltjholvw_qy{tut~¤§
uzrxtprsqulolumv}mnUQ«xvry xz¤
|r
ig¡qw{z||kvjnkklz~ay~vzw|ygtlt{qzpwz{~
}|x}vpiky_womkqsV^obqa_lnypgpffsthqkawe]Vfa`rSPN\fe]xp|_\hrbbefi_hd[gp~pkps}v|
tuy{xs
~{ywfrj`~ookz`jntt_t}yxts
|x °¥vtvspo
spqokivmn}|mtsRNßÈÖ|ptuw{r
¡~xz~yvhl£
cq{zy
{~l{erojkyy[yz}~zyhsks
}l~o}y|wxysmfpljtohismS^odpY`kqwfkjbfxrppc_x``Vk_]vPNK`fc]yqt]\ev`aeed`faXissnkqv|tyuv~s{~r|~vesm{e~oplZlnyysavz{vrwwy®
w~|
uwpyqnomn~rddxp|mz}jhlc¤ÁÜ®ï¡skuu¢
np
£
{uxvvn}£
^l|}
v
}}k}dwujmxsWz
z~
~xesj
kun
yutxusqguybtmobhugR`qglU_nty`rc_h}prn[crabWnY\wMMLdfa^vsm\\dy^`df
`cb^Xjrknkrv}twxw{q}~{t~~shupxlzntpXqzvyqewyivr§£|pxy
¡{{rwpsjokil|t^`xv{pu{g`e|ëÚµÉÃÜslsvip
|{vxrvp
¢ai}}q~qwhuriswkZ}
|uatl~}nly}|orzulpkrx_sin\jv`RdrifS_pvt`o`]hqsjWghciXmW[uLJLeg_brs
i[\ey^^dg{`d_\Ykneojsw~ss~zvzs
|vw{vlvuxxtnxz}Xy
qogywdv
q
¡¢sorw}{xqsnodr~hflww[_y{zqqiagaÕ¶¦xnqw{pj
{h||~
zu{zpuv~ag}~~m|tkmvtsvukc
~|~p_sq
||zqfz|
}npzumnjlz}bhjiXluZRirjbQbrxlae]Zjmsb\g_dl_nTZoNHOge\gnqkZ[cs`\clwde]\Zllbmjsvqo||txx
}uy|vowy{pm|w^tmi{ssgr}r vv~mv}|v}vqoljat|gbiuzZ_w|zmq~echhW^qr¼Ãuq~rrj{|}|u
vw}quru|f}
r}g~{x~|i|veoxxrvslj
xk^rxz~
{~riyy|}nm{}wtnhg|vc\pbWorSSnsiaNftxe`]\XnosYeb]jm`pOYkQDSgaZknm{nY[^mcZcowdf\]`ljcljsvqn~{tu{|
v~xtrxy~oo|qiyz~mm|vkjwtl
n}vjx~yozspljd`t{h_eqzZ`r}ygqzaee±²wJbZ¤ÙÐq{w}
nk
zy|xxoqt}ziy
¥o~vy
p{}nxh
xr{e}~ucprhxpou
{vxyk\q}r
}zrnq
sxxnovzehj}p_YwZXqmNWrsg`Klvt`][[Yt}roWg]fjq_nNWhQ?Yg_[pjgxpZZYkeYcpy_h\^emhfliqwol}uo{~v
qq{|yyujzlo~t}or|{onxf¡gogz~
|ixrklf_aoxm_box\dkzaqv_eeÔê¾2:>qy
v~ml
v}
|xnvwo
ku{tfy§}ntvy~{wlri~xm|{wbyqdqh~mtqu
~ru}rp[m~tx{|xzqlrytnkvuu\ihwpYW|SZpeLZrre[Jpwn\ZZY]t~uhYb[gfnciLWfQ=^f\]ue_tpZYTodYdqyZh^_gmgjlipw}li~yn|}zu
pnx~z{h{}jt{r{sw}yx}|kl~kh~{~}kuqghc[bgrn`aksahpyast^cd n\5Y¯µti|v
swpm
uyx}zsgv~~oq~hvymey¥~n~v||p{}{h~mk{zizvr`w~qdrgumt{
|nwy|t~mXovtwvzxsn
r~}~znnjmun]gfsqQ[{N\p\O[rpdVKsxiWYYZaqt`]]`gdhifNYhM@ad[`va]umXWStaZdorWj^ahkgmlipw|kh||p~~{zwq{oqw{j~{nwyvw}x~~zm
£{uyklx}{~prpcf^Yg_op``gpfjotato[adjv{¾¦£È¸q
s|xsrrp{tutwyyqcwzirvfwvcj|}r~syx{kxy~ugzhkysizv}h`w}jkth{iv~z~~p{v{t~bVw}rs|qwxpp}y~}vviqilrp]hcsnJeuL^nUTYsnbQOsx`RXX]bps[a]hedcjdQZpIDda[cp^]whUWUw][enhVk^ajgeoohpvzniy}r{~x|v}pvrnw~p{wyztxzuo~}
zw{gt
z{vgon_d\XeYmr```plkhn`siY^dmw©Ú©Ç²qxou{zutu~wpqmtxul`zyfqogvn[m}x}x{mut
{
ltvmgwem{umjvw|`bxzhtuc~zgt
{tuqz|mYVt~ouyltxku}{}x{s}sgtemmt[j_udHnnL[bWVUxmbPStvWPUX^aqo\`cmed^nbT\rGBf^]fh^[{bQU\u[[gkaVj_`nffkqhpuxtkuvx~w{t~oqtqu~
{wx||
x|}~{~svyzvty^}
yt
w{bnl[b[[aVjsc`[gnofqaqfW]ck|Êι¢jmmlqq|~{yytyuu{jlucuwpg^}zerkjqcXl{sw~{nqq
{y~qqo}fhqbmxqjkqw||y\eywiuxfvgt|rio~yn|]Xrmt|ooqvhww}qzt|zrfsanlsXk_w[InkMVU^TU{kaOTurPQTV^bt
h\`ljfcYnaXbpGAh\_e_]V{^OVdpY[jh]Wh`_rfkhrgprwxntzx~yus
pp{xwuyz|u~}
~~}|xvyw|mvycso
ztcnjY_[]]Tgse`YdqqfsbkeW[`iw¾®{ ·mbshs{qy
{}~wxsvo{vejn`usjb^~xyfq~hjkZVox¤
qqxums
}xtrnhy`jm`mvjgjkywzw[g}|xer}ntdu
ofkzumtb\o|ku||fu}mqgu~x~r}kzzzxpflbn~mnVk`wUJjkORNhNY|hbNUujLPTU_gvf]`qhgaWi][khJEkYacWYUyZNVmjY]le\Zec^tfmdqgrouwp
v~w|
}usnsxzzss
y}v|{~{w|wwziw}|lrq
~oflfW][\[Tdpd_WcruiupeecW\\hportddx~itussxyvtunk{pagkgtnf]_}p{~imwfidUWrp¦||vs{s|zn{{
v||tprlgu\mh_ltdgfizo{rYgwugpwubw|njmzqfse`mzgsw|~buvikqtzqyys}f~ywncfbn|mkVjbpSKikOLNpG^{faMUtcJNSWajv~e\gsif`VcWbp]LKkXcaUTUsVLXudZ_ka\[ce_wfmbpisnq~ttww~
z}u~
nrt{zuq
zut}
}~{~v{£¥y
ku|{uzn
sy}unjheV][ZZTcne[Xbs{ihmi`bW_Zijkohlahyxjsttm{}vumzhjyj_enhvgeXbwi~{oiogf]UXoh§vz|yuo~osuywt
vjrvghn[ld]ls_gaixh{mZmrsio~yw`wxrqoyrcqh\owdqs|xbspgjxsrlxwuwd{wvoddcn|}klUibfSKmhOGRkEaxgaMSq\IMTYekw{e^mqid]V_UnnWKThWf^XNUlTJ\y_[_k]]Zbe`zhlaooumovuz}wzzxz~qtt~zvt
}}ks|
}~{v¬zkrzvuno|sjomddX_ZYZUbjg[Z^ui^nl\aV\\kfrt}ij]kvugtwql
{}}yvrlzhixf]dshzwccTepg
wwfhj`WVYhd§n~xzpp|fyoz{vq}~ndvsdhh\kb]oo[g_ludzh]torkq{}uuat
zwruuaplYqtbqr
|udrlalzojizxurf
uzzupdadns~ilTi^]TKscQGVaGbvfaKToWJLWXgkvzdenqfcZW]XveTJ\cWhXYIWeQHbxZ]_l[^\ad^ij`otxmomvyr|}uvx}tuuxzz}~js{}~
zz~|sq®{{}erzt||vrol{}lzbpobe]eVYYWdfk`]\s
hXqnZ^WZ\l{cpwvlb[lrsgtuply~ywnnteite[gufvvz_]Refjt}bci\TX^bc¥hyt
xmnygxm|
{urx|xhevm`f`^j_]skYe]oobze[w{knnpwxstdr~zvor}rbxd[opaqq|sfqd^nvidgyztnout}sqb_fno}djShXYTMw_QJYYHbtdaITmSILZWilq{bllscaZZ[av[SKd^XiSWGY`NGiuX^am[[_bb]
hhanxylojvym~vtttrwvw|}~~~px}yxy}tsp¢{{xduysxulto~ly|pr^po`gblT[ZWhcmf\\qeRrn[ZXX`lwdiujj^Zmsqlsssj
|~|wnnldiqc[jrdtvs[WSdarr]bc]SZ`[cerq
tljylopz|{qvrzzzdfvg]bZag[^whWb]ohaw`[{vjirnwssthp~vrjp|mfwW\kmbqszsfo~[`oqb_jq}llt~sqxkpa\ellzagSgUWRPv[RPYRIcsb`GUjPHPZUkkk|emoqa\ZXYlpWRPfVWiSTFZ\OHrtX_cmcXa`a]jcdmyxkoiuy{k}|y}nqowz|t|tw
uspuo¢t{{exon{ofxpzlsvrk^tnagekR][VgbllZ\qdOon]VXUgjthbtee]Ymtmpuuyj||wsddkna\nmcsxkZTVbcx}}q
]c_cT[`Yccnp
sjhznesvs|lztuoz~u_frc[^VbdXaueU_`mdaq]]~phisqspuujm{qrfn}proS[fjfqtwsblvUbqj[_ne|emv|srsjm`Zdjjw^fTdUVPTmWQWSPHer_aFXiNHWTVmhd|ikxkbW\U[tdSRWhQYfTSHZZPMxw[_eliZb`^^nbfkyunohvvl}{krgt{u}s|
{ss}vn¥svwmz`d|pfzsylmqvgd{lcfghS^^Tg`lo[^nhNjm`TVSogskexde]Xotlrzwrl{v{zkaelm^`ojepy~gZVX`kx|{p_b^gVY`Wdbkq}wkkxl[vqlziusno{rXjn_Y]UacWdqcS^aiablZ`~lfksunmwvkh
zmqfp|mrmcYahiottr^ilReqdTbnbzcqv{ukpmk_Xaght\eVaVSNXeRO\OOHep]cFYiMI_KXmd_xhn~d`U^T]t[TR`fN]aTSJ\YPYuv]_fmhXca[^pcgjwqsngvtzrz~|zntlst
y~|sstxqn~zz}~~}}~~}~~~~~~~}z{|~~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z||}~|}~}|}~~}~~~~~ÎÚØØØØÚ]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDEB1////0/>DDDDDE8.//00,H
}}{{z}~||~}}}~}}~~~~~
Ûéççççê~S7¤¤¤¤¤¤£r]____aR4555553.755556':|}z{z|}{|~}}}~}}~~~~
|y{z{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{y{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~rtx|||{||}}~~~~~~}~~~~xrvy|}|z}|}}~~~~~~~~ssvx}~|y}|}}~~~}~~
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxz}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvtuvwuqrqnprpghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkiffggghhgmgjghehgcbbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__ac_\_]`]^Z^]YY^ba^^ZY_[XWSNMLKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSTPMJMNPROMPQQQQQVVQQQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTtsuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPPRQPNNONONOPPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKLFDFJKKKHJLLLOMLLNOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBA@@CCDEACEHKOKIIJHHJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:;>><ED=?EA?@A@DEGGGGBDDDFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@;;><;;<<HL==A@@CD=ADDFCFFDFIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprtusqrvyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<979;<>=;<;8:@@AB?A@CFDCCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqusurqtxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::979::69:9:;<?7=;::8<<=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>=;<=?@===?Q>===<AL;LB9;<>=>?@A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCD@=<>@A?A;ZyO=CE>DX<YN;<<;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVppqssttuyz{{|~~~~~~mLPQNOPNNOPPO><<=>??@>@@???CFD><;=@=9::owY7;:<G^=`\9;<;89;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pqrrrtuvz{}}}~~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABAC_I<;Fcg_WwwX7888MbBeh<;<;::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@O|tFFu|wY<=?<SjGgk>;=>?==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy|||||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCE@Uvzpv}Y>@C>SoLdh=;=AEABBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{|{}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Pts||
mFBCDBRidsrI@CEHIIIMMKECFGHEGEEEDDCA?@>>BFJJGEEGFFJNNKJIGGHKLIGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EGls}y
}sFCDDMg}~XGHQPLNOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHIHGFEFFFDFHGEEHHFHGHFQnnpqrvvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJG`z|
l@@VwXR^NLMNLJGGGGDGGGGFHFHECDDFEDDHHCCCGJJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrswwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLKN\|
Vl
~iVKKHGFFDECC@ACCCCFFEB@>>@AA@BD?>?DFHDEGIJIIHHIGIIJJIHFJJJJIJIJJJFILLJJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLLJZ
{KIFB??@???<<<>::<AA@><998<<=;>;9;?AB@ACCB@ABDDBCFHIHHHLMLGIJMMNMJJKKJLMSloqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJJIh
fBB=88::9878896479;<:8567789787588;;;=@;999=<>;;=ADEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIi
T:8656766645763468:876565676778:77789;7578979876:<@GFIFIFEFOSRSSROPPRTepqsttwy{|{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=ECBh
H676468874578467699766765:::::;898987779:98878589;A=>>BA?AKLOQPQOOORWkqrttuwy{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B:>vz>:88;<=>9:;<89;9:;:99;:9===?;;;=:>;9;;<;<<9:<8::;:999<?<=ABDIJMKIKLWorsutvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<;89989:::;?=J
l<;>BCEEAAAB>@B@@>=>>@???@?@==?B?AA?A?=@@@>?A=><;:;99;?=;;==AACABCAXpqtttvy{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<=:;;==?@BU
^>DGIKJIFGGDFHGEBA@CECCABCB?@DHECEDEEAFEFDEFD@B?<@>=?@>???>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@CCEZ
WHLMMKNJIKHIJJIECDFGFDCEFDBHIKHGGFGGEKIKIJKJCFCCDBAACBDCCDDCA=;=@hpsttvwzx{||}}~~~}}}}~~~~}~OA>=?DLK@BBA98<>;<;>@?A?BCGGJ[
PMOMKNKJLIIIHJFDGHHIEEHFFELLMIJGGHIJOMNLLNKGGGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?FGG=<@@88<;<=:?A>@@CFIJQ`
qMQOMLLKLJHHEJIDJHGKJHJGGGKLNLLHHIJMPNPNMOKIGIJHIDIHHFFGGIGCBACUnpuwwy{xyzz||}~~~~}~}~~~~~TDAABGHB?8?@8:<8=>;=A>?@EIKMVr
_RRPMNMKJGFBGJGLJFKOLKJJMMLOPNHIKLOQQQQOOJIJJLJLFGHGEGIFEEB@BB\orwxyzyyyzz{|~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAHLMQWy
|WVRRTROLKJDEFKONOWVQPOQSRMSTOMSLPSUWRSQPLJMMMKNGGJFFHJDDEEBDCcpuyyzzz{z{z{|~}}~}}}}|}~~UFFGGGGHF>@B=?==B?BCGVNFOQQUY|
gVUkaERQQPJ;;QSR`u]UVTVYYRYXRZfPUWZ]RTWQPNRPPPQKKKHHJHEFIHIHIirvyyzyz{{|z{|}|}~}}}}}}~~~SHJIIGGFE??AAEBCGEDELXRMTVVX[|
}al[dU:XXXSP>@VUY\d`VYbr^]V]ZVEQYZ[Y_TZgRUVXTTVTOOMJLJIILMKOMSosvxyxwzzz{z{|}|~~}~}}}~}~~~~VJJIHGFDDBA?HMIMPKIKPTSSXZZ\\x
g;~znpXZ[ZRSRVVTZZuYU}a\X]^WIV]][[_YIYXY[]XXYWRQNPQMMOSQQURassvwwvxxxz{{|}}}~}~}}}~~xy}YNKIIIFBD@A:PQQWXPPOQSTTXXYZ[n
n~fYY\YSVTWRQWVcQerXZW_hP`f[[X\gaGOZhg\[\]]WROSPPQVVVVYZnrtwvvtwxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQORRRUSVTW_ux
}{\PUXTRTRQQLOMKfyZ]TYUV]ZLTZTST^ZXWWWzkXZ[\^TQQPINOWVXZZdqsvvttvxyy{{||}}~}}}~}}~~~zxwvsu{tk~~kry^[VUTROKFCDAM^lVRSNOQOQURSRRTcdv
~ymqVIKMNKMKHJDFHEC>ScURQQNKRTQMOYQMNQSUUMQSRPOMLHCIHRTUZ\mruvussw{z{{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YVPLILIaltPQSNQRQR[RSRQRVUbs{|}{{
u_]KC?CCCCB?DPBD@C>BHGV@HNMG]iQHFOFDEFHGHBCHGHKGCBAD@OPMSdstuustuz|z{{{||}|{~}}}~~||}}vt{mh|gnqfiedb[XSQPURsWe[OOOLQSQUYSUQQTSOV`klrv{{xytrnstsyx~~kLG??;;>@@??>kQKaEFHIEB?GLMGMQUIBE?><=<==?=?ACC?><=B>JMFUnuuustvxz|z}||}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QRZ\Y^IJPQNKLQRQTUUWQQWVPX[b]agmmlokh`nrjmlqu{z}{xz||xwxdB@@B=:BCAADB\]O{NOONKLMOOQLKLWMHG@B<977599=;;;8989?;BH?\ttuvuvxz|||}||}}~~|}}}}~}xuvz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIGPRQOMPQNQRTVXSRYTNYZ[WY]^^`e`]^qvk^`gkwooljonnlfbXGFFHBAFIEEFDMRPaWRXQPSSRU[OOQWPMJCF>::6486979:366795<B=essvwwyz{}}||{|}~~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMLTTSQQUOLRSTWXTTXQLXYZVXXVXY]WWXhsk]Vaskaa_]da_^YUPMONLHHJKIHFCQPSZWTTNQSYS\eUOSTQNKIHC?A9988978857578599Gnqtxxz{{}~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOUVXXYSUTLKTUUUUWPTUWTUR]n^RNY_[VY;DVXT[fJLPRROMMNNNLJFPPUYSTNJOOTST\VRUSROMKIHHF??=:787659967665Wppsxyz{|}}}~||}|~}}y}}|~~~}||}}~}|rvqxxrvuqqnppopuvtnjddjppqrpnfedc\^RTZVWUTWTRXXYYYRUOJHOPOOMRJOPPPNNOTLMIPOSTU2<XMIAQ=caQSQPNPQPNNMPNTRPRMILKOQPQRSTQROLMKLLHCBA=::876;B4566;epquxx{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqniihpVVTUXUWURWVUZYXWUQSFFBFGGHFJDHJHGEHLHKHFLMPMG/E_R>3@>joaRRQ@FUQPQPQNQOPOLJLLOPNNPQQNPOJLMMKGEEDB;=<<9=G6676Dnqtvz{{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknbePSTRSUOWVVYYVQQQO@>;=?@BAC@BEDA@GHGHEFHJNKEGCORC8ENS]fSQSAGUPOQQPMMNLJLKLNOOQMOOMHLLIKKLKHFFED<AA>;@E;<89Tqsuy{{{}||{y|{z~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLOOMQSLTUTWWULLKH=987;?@><=@@B=>EHGDFFIGJJ@FAA@FHEJOHPRa\QPRNSOOPLLOMKMLMON[WKMQOGIHCIJLLJFFFD?BC><BF?B?Adqux{z{{|{zzw|xy}~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B>;?A@@>ADIECHHIGIEBB?>=CAAGIDMObeQMONWKLMKLMMLLKNNSdMJLRIIIEAHJLMNJGIFBAB@?EFEHDKopwzyy{{z|zwsxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLMIMPMPOHKE?B=999:?B?<@BAADEGKFDIIGGHCC?B??@A>CECKMQTLJIMTFIIJLJKKIILMOPRPKGCKGCBJJLMOMIJIGCCCDIJMLIZsmxyxz{{y|vrpurtyyvxjqojllnttmtu{stxronqovsnporpopstyjN`gsjt|ygosqjqheqHKDGHHGJKIJKDGB=>=:::;@B?=BBCCGFJLJEIIFGHCC;A@B>@@CECIMPGIKFHKDHIKMHJLHHJLKM]RIHDMFADKJNMPNKMJKFGGJMNQNLcnivvw{x{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoijthdoFKDFEGDEEGEGBC@><=:;::@D@>BCDEIFJJLFIIGFFDB;BCC>?CCCEGLNHKNHDHEILNMHILGEFIILNKJHENHCGMLOMOMNNMLIHJORQRNRfgfrosxu{z|lhjoekpmsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGJDFFEBBBE@DB>?>:;;=:=>CA?ACEGJFJILHGGGFEC@=EEB>ACCCEGIIGMPIFFGKNOKFHJFEDEIIHKIFHPKDIMLPMONOONJJIMRUTROWd`amgproryzgehhcilgqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutvlkuumrvqlnlerMGEEGCBABD=BA>A=::=?;>>@B?@BDGKFIGIHFFGECBAAFFCBCBDEDGGHFLQLIOJJLKIGHEFEDCIHHKJGKRMCNOMQOOONOOKKKPUWVUTX`^\iaminhrsbeffdihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwuksunutsqrjksMGGFHBBADD<AA@C<89=>9?<?B?@@DFHEHFFGFFEDCECDIFCFEBEGEEFGEJMKHQMJKHHIEFHHECIIJKMKOSNDQRPQQNOMNPMLNSWVWXVX]Z]d`hbjigk_eegcgggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxnouorsuqqiozMHGHHBBBFE<@BBD<7:=>:>:@B>??CEFDFDDGECEDDEFGJEEIGCGHFHFECFJJGMJLKHJLFIIKHEKKLMNORTOISUTQSPQMNQNMQWZVZYVZ]ZXa```^hec`dehgjihjfhnllnmqpiuuxrrpupppruvpusuvu{~}xvtwvvvxplupmsunorsyNIHGIDACHE<@EBE=8:>>=<<AB<?>ABFCEBBGDCEEFGGGIFGKHCHHGIGFDHKIGKHMKJKLHLKMKIMLONORUVOKUVTQTQRLOQPOTYZY\ZY[^_^`c^\ackb`dghr
hgifjmnponsqjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqvquMIKHJEBEGE<@GCD@9<>@?>?CB<@>AAFCEDCHDFDGEHHFHGIKJFJHHKHFFLHHHJGLLLLLIMKMMMOLPPQUVWOKVVUSSRQLORRQV[[]^[\^__a`ad]d`ef`ehjcssfjhglprqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrvovJKLJLGBEDE<@FDDB;??A@@@DA?B?ACHBEDFHEIEFDIHFIHJLHHJJILJFJKHIJJGKKMMJJNLNNNPLOPRUXVMNTVUSRQPLNTSRW[^^_]]`_aaa`bdeachbdijgvlkigmosqpqppryvruutsmmssmqrotutrpswtuuwvuuteqskpqjrvowJMLLLGDCAD<?EEEC=AACBBCEBBDAAEGCHGHGFJFCGIGGJFILHJJMKMLGKIHLKNQKRQLSMKNNOPPOTOWXX[NSQW\ZSVPNTUTTXZ_bb_da^`b^`eaabgnhbihhmxvlhimosrpqrrrvtsusssnksqmprotvrqquvuswywutucmtkopjqtowLMLKLGEA@D>>DEFC@CAEDDFCCEGCBIFCHJIHIKFDKJGHJIIKGJJNKNLILHJMKZfJd\KlSHON_nUks[qpbwcRPbvuhucav`Xnqbdvinzf[lt`ljT`wuijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqrqyKNJKJFC?@B?=DEFDCDBEEEFBFFHDDJEEJLLJLMGGMIHIKHKJIKJNLMMLLILLL[sbdp^lmUMNfs]geqlntgpi_aYnnbppbkjjgoqtetno\ougpMJryvkb`keemymkvlnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIIGED@BB?=CFGBFCEDEEDCHHGDEKGGLMMKMMGJNHJKJILKJJKMMNNMMJMMM[roonpplkMPQlWNibtrpamov\YlQ\mmZqmkomxxtsip\_rkqjUuyxpc^kfbgqpjioppsspqpqqrrqqrrtlmrmnnorutqtrtuutuuzvutenukpolsrryJKGGEEEBBB=?@FGBGDIEEDBFIHHEGKJGMMNKMNHLMILKHJMIKJJKOPONMKNML\hdu]lqWlNPQmUZk^klvaldtTecNmYl\tpkilxjwuhp]^rkhWbcw|oc`ghadjuyknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtwIMGIDEDCAB<BABFDGFLHECCHKHHFJLLFNKLSRLGLLHNJIHNHJJIHNOMNLJNMJZsppoqqmlOQRnYqkgooqqomt^nXat_nopoqronusttj[]tcwxrjnzhaacgbbjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyytukoumtonssvtHKHIBEEEA@>CCBGCHIMIFCFJLIGFKMLFOJKWRKGKJJNIHJLIKJIHJLMMMIKJKSkbZi^_jcrrZ_Yjo_eeUk_c[abQ`lh]j\niid[pfdp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrutwrHHFIDEDFA@AEDDGBHJLHFDGKLIEFJOLIOIL[QJFHHKMIHJJKKIHIGKKLKFHJJLLLKIKLNT[\TPTLPONOOVQOOQOOQJINPQdqiTYW[[\UY[]X]\\cfaafbce__fkmhmtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusHDEGFFAEC?CGCEGCIKLHFDGKLHDGHPKLOKLWLIEEHIJHIKILJHFHGJGHIEFLHIKNLIO\W^O\[`^OXYS\\b^MYZMXaRJYaZS`d\aX[ddVVY\YZX\VY\]b_d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtPBCDLMBCDBDIDGGFKJKHEEJJJFEHHPJLMJMSIHFAGFJIKKJLJIFEJGDFGEEJGCJMJKT_Y`X`a[`UXYT^^Z_RY\P^\YN^\^S[^c^Z]`c`Y_b[`^[TXXY^]ccbaceiekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIECBCFGEGGIJJIIDFKKKEEHINJNLHLNGHF>GGLIKKJKKIGEIDCCEAFJD@JKIO[cY^^a_RTSW_`\]Y^QY\MV_WKQY[PZ_aa^^ca`bbbcceZQYVU\Y^d`__cebhommllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQKGCGEBEGHFGHIFGJGHFHKILDDKKNMLLHJJHJG?GFNKKKMKKKIGGCD@DAHIA?IJGO]aZ[d]_TQSX]\\\_ZKW\LR\YIM^PO\_acdccb\dcbdcfXQUTS[XZa^^^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMC@IFCFKIFFGHGGJFFFILJNEDKJLNJLIKJHIGBHHQMKKOMKKIHGED?ECHHAAGFET]Y^X_Y_[]UXXP]]QKJW^X^[]VZ`RQ__bba`bb`cbbddbXOQQR[S[^]]]^__dhgljnnp{{|~{
srw
|x\SKBAGFDGMRHCRKFHHHEFKJMPEGIJKNLLILKIIGDHKQOMMPLMKKHICDAEDHGBAFEDWUE\T]SV_XNTUNZ[MJKU`a[_X_^a]OYb]``_bcb]bbW__TPNPQXR]\[\\^`bffelfoow|{{}
zo
~INFDEFGDIRbPDW_IGGHDFMJPPFJIJKNLKKLKJJGEJMQQNOPMNLNHKADACDFDCADFBMHCLLPOOLFMFGIJHGLLMOPILOPPSPLPTSUZYWYXXdVOSTPPONPUT\YYZ]\`adechcklpsszy{z~{}{
}KIEEGFGDKM]LGHYMGHJHGNLQQIKKKKNNUNOKKLGGKPSSNPONONOHKE`ED_LDfcDM[I_\smOMVmYLCP`UlWgJ]WU^DMQULMTVQSTXWTXUT\TPfZhhdXTkTWVU[\[``abbb`fhfnlhrz|}~}|zr{z{
~z{LIEFFHEEKOSIKG`THJOJIOMRQKLKLORUROOJLNGHMQ[YOPPNOPOIJPQI|YYrsWPmHqnpaVPqqsPBksmqspSo_[nX]V\XUkhU]VcZ`Y[`VUWjtuu_`w`Xa\\f[_aaaa^`bgmpl`pwtx}~vxzlv~tx~|~|z~wwNIEHMMBDLLFJLFRVLKOIKRXWQNNNLQTNOQPKLOGMPS[ZTQROPPPJHZx]TxehYRTQvgtlpbnfjQrOMwmjrpsrqrpop]ezuxqqzq~s}ku}bRg|essoss|}o}yor_``bbZ``gknkblfgmw~~{xwtvzir~nt|~wx{~x|u|||ssNKF`]GAEMMHKJHJPNMMJNV^YULQSNXZLSSRNLPIQRTYWWPTPPPQKGfxlcxrmZJLUypumubnvPdeJfvqmwojfxxiXsQhzmijzz~lxzogoXvvjuup`sh|ilx|o^__cb[]bdgijdgbcdllppstsssyqrxblugry{ssuy~suzn|}yxrnNKStNCBEPPHJKJLPOOPMPZ`ZXKTWPa^RVQYSMPISTVXWWPUPONRJKrouuquqdh`VnLqp^FhyWvTLhx}x`y{sna^modRgrunmypwlvttqlm\t~zkmy|lum|kpvux^__b^]_edighee^bbiiijknokqnmjpacfdowxompsy~nqpj{ztromLL[VHGEGRPJLMKLQQQQPQW\YUNVYUfXRRY^TMNITTWWYWOSNNNQHRmHiwK`dvvUWlOnl{sajgvUKWkh}lmlx`[pz{^`zscroxqhe|ir{]TKl`vukiu{{m~xk|p]^^b[^bddgeeebZccikkrsrwgmihdg`alagsrkhlmr|kmhk{tmmkmOHJKHIIHRPLNOMLTSSOTRWRVTPWZVVTTTa`QONKTTSQUVNNLMOPJHQNPULKKSTSRTPVUQQNQQXXQNPUTXXX[[URSW[WXWZOSUWWXR]YW]VTOYRWWWXY_[gr^[[Z\]_cZ_ccdfdccbZccfffmnmuffgc`f_]g`dlhfgkhozhggkujhgilQIKKLMKJSQMQPOLVVTPTUXUYURZ]VUTWUYXPOLMVTQNUSNOMLQPKJQRKQMKKORTRQQSSIHLNOQRQQQTVRXW\WSSQRUUVSZQOSRWUTYVTYUSRUSTTXYW]Z_a]\ZZ\\`c\]bcdgeddaY`acabhhincad^_c]Zd\bma^ffgmsdihkkedcfhPJKLOOLMTPNSQQMXWUTUWWWZVT\`VWVYUXTQPKOWSPNUPNQNKSPMOUTNQNMNQSPTQSTUNKMOQTTRRQVWUYZ[YSURTWWWY[TOTUXUTYUWYTRRWUUW\Z[_]VY_]^]\]aa^[bbchfedbX_`b]`hefda^_]]^ZZ_Z_g`^]]chkagfhfd`bcaPKMLPQLOTOOSQOQZYXWXZZXYV]jdVXYZWVTTOKOVTPOTPPPNMQQPRXTRQOMOSUOWRTUUONMQSUUTTRTXVZ]\ZVVQRWXV[[WQTVVVVYTWWTRRXVUZ_Z]__W_]^`\\``__ZbbdhhedaYb`b^^fdd`b]\\\\YZ[X[a[^]\_b__bddbd__`\PMNNRQMRROSTQOU\ZZW[[\YZ[dqmhd_[YVVXRMMVSMNROQROLPSRUZUTPPLPWVRWSSSXMOPRTXUUUSUYX[^]\[VROUVV[\WQTWUVXVTXZTSQZWV\^[__`Vb\`a]`b_\`]cacgidf`Yc`a__ee_`c[Z\[\ZZYYW\Y\[`^`[^^a`_b\Y`ZQNONVQPTROUTSPW\\\X^\_W\^jqwyc\[VVXRNOWSNQQPRTRKQTSYZWUORNSXVTSTRRZOQSSV[VVWTVZX]^\\^VSNTUV\\VRTVVXYSTY\TRR\WZ]^]aa`Wb[cb^ac_\bab_dgidf^[d`a`ace_b_YZ^[\[YXYWWZZZa\][]\\Z]`W[[ZPOOOYPUUSRWRTP[]^][`\`U\]ijr}slg\UYWQOR[SRQTRTUTKRVU[YZSOSRVVUSOVRSZRTUTX\WXXSX\X^]YZ]UUNVWW^[XQTUXXXUWY[TSV]Y]]`]bc^Y`[eb_dd^^cca]efidf^]da`aacd_b^XZ_[\[XXXXW[Z\`][[\[XY[^V^Y]POORZPZUUVVTTT^^`^^b\`U]^bkytl}lZUZUQQS\TUTVTVYWLRZV][\ROUSXWVSPXRSWSVVU[]X[YUZ^X_^Y\YRWRYXY_ZZSTVZYZVXY\VUZ]\^`a_dd]^]]eabfd^^dc`\gdhedb_da_a`bb_`^WX^Z\\ZYZXV]Z]^ZY[\[WY\]VXW]SOPWYQ]UVYWWUX_`aa`c]`U]^beeuzhXYZTVSV\WWWVVW]XPU\Y^]]TRXRWVTRTXRSVTYXY]^X][U^_X__X]VQYTYZZaY\UVX[ZZXYZZXV]^_^cbaee]b\`fbdfd__dbb[fchecfaf__aaaa`_^VU]Y[\[Y\YY][[[XXY[YZZ]_]TY]UNSZVS\TVWYWV\`abcad__V[`da_zuohY\ZVXUW[ZY\YXY`WPU^[`a\TUXPUVUSVVRSUW[Z\_^Z_\V__Z]^Y^VSYWYZ]bZ^VW[\[\[[Y[YY^_``dbceebdZbfcgfe^ab`c^cciddg_g^bbcaa`^_XTZZZ[[X[XX\[Z[WWYXW\[\`]V]]SPVZVVZUXUXWX]_badada^YYadb`lfh^\][WXXY\\\_[Y[bVTW^]ac\RVXQWVVVVVSVTX\\_``]a]Wa^[^\[^XVXX[[_`\_XY]\]^^\Z\X[_a^`dcdfffbYceehgd^c`_ec]fidei_g^cbcaa`__[XY[YZZXYXW[[Z[WXZTY]\Z`\U^bNRWYVWZY[\YWY^`baeada]^Yacb_a`a_\\]XW[[]]__\Z]cXZX]`cd_RXYPXWXYYWVXV]]^`aa_b^Ya]]^Y]^YXVW[\`_]_YY^]^^a\[ZY\_a_bdcefefbZdfgigc_c^afdZiibfice^bbca``_]]ZW[YYXXZXWZ[ZYWXVU[]]]``bbxLWW\YW]\\]ZW\]_`bdbba]`Xbcb`cab^\\\XW[]_]`_][`d\\XZcec`R\YOXWY[ZYXZY`]`bb`ac_\b]_][^^ZYUX]]____[Z^^`bc\\W[]`bacedgeefd\efhifcab\cg`\iibhife`baca_`_]]\Y\YXWXYXW\[ZWWXOXZ]acffrkJYW]ZZ_]\^\X][^_acbaa]b[bdb`ccb]\[ZWXiq`\`_]\ac_^YYcedaS_ZQYW\]\[Z[[c`cbc`bda`c^`\]^_ZXV[_^]aa_][`abeb_]S\_`cddfdgfefe^efhhgdd`[fg^ahhchhfc`b`cb___]][Z[YXXXVZV\ZZVVULXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{{{{|{{{{{{{{{{||||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvvvvvvwwvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{|||{{{{z{{{{{{|||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||upooooppz~}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}upnoooooz~y1333332j{éääääèÊ}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vuuuuuuuvwwwwwwxyyyyyzxooooppprrrrrrrwzyyzzz~||||||}}}}}}}}||||||||}}}}}}}|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvvvvyvvvz{x{xwvx{xzzy}yxxyxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{{{{{zzzz{{{{{{{{{{{{{|||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwwy||}}z|{wwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwwwy|}}y|zwxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z|ywww|z||z|{wxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzz~|}|{}{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyy|{zzy{yxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyxyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{|||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|||||||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqpponnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrqppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpppqrrqqqpopooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpooppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqqpppppppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqpqqqqpqpqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrqqqqqrqqqrrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrstrrsrsssssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz|~~|vvwwvuxzxxxxwwwvx|yy|zyy|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{{z{|{}|{{{{{{zyxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}||{~|}~~~~~}|||}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~~~~~~~~~
~~}~~~}}}~~~~~~~~~~~~~}~~~
|||{|}||~~~~~~~~~~~~~~~~~~~~|}||}}~
}||~~
}}}
~~
}}~~
~~~~
~~||{{
~
}}|
~}~ ¡
~
~}}
~
|~
~~~
~~~
~{y
~}}}}~|{|
~}~~~~~~}|~}}}
}|}~~~}|}}|y|
}}}~~}}}}{zz~~
~~~~~~}}~~}}}}}}|zzz~~}~}}~
|}}~}}~}~}~}}~~}}}|{{{zzyz~~~}~~~~~~~}|~~~~~~
~|~~}~~~}~~~}}}}{{|zzyyy{~~~~~|~~~~}|~~~~~~~~~~}||}
~}}}~~~~}}}}}|||{zyyyy}~~~~~~~~~}~~}{|~~
~~}}}~~}}}}}}}}}{zzyyyy~~||~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
}}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
~}|||}}||}}}}}}}}}}||{z|xyz{|~|~~{||}
}
~~
~}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~|||
~{z|
~~}~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}||}~}~~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~}~~~~}}}{}}}}}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{||||{|||zzy{|z}
~~~
~~~
~~~|~~}}}}~{|}}~
{z{ywz}
~~~}}}||}~}||}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}}}~~~~}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~}~~}|~}~}}|{|||z{z}~~|}|}||~~|{{}~}~~}{{{}|z{{{
~~}||~~~y}~v{vx}|||{}}~}}~~~}~~~~|~~}}}{{}}|z||~||}|||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~}||}}|}}}}{|~~~~~~|||||}|~~{|{||||}|}|~|}|{{{|y{|{|}z}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}}}}}|}}}|}~|}|}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||}}|}|}}}~}}~~|{{{||}|{z{|yzyxy{~
~~{zy{}}x|zr}{{|||~~}}
}~~|~~}|}}~}||~|}}|}}~~}~}}}{|}~||{|}zzyyyy{{~~
~~~z{y}}zzz}q~z{}}}}}zx
~}~~}~}~~~}~}}
}~}~~}}||~~~}}~}|}||{|}{{{zzz{{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv}
~~~~~}~~~~|~~|}}|~~~~}|}}{}}}||{||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||z|{|}
~~~~~~~~~z{z}}uqz|zqz~}yxtt
~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}}~~~~}}|}}~~~~~~~~~~~
~~~}{z{z|{z~~}~~~~}~}}z{|
{{syz|pwuvwyutz
}}}~}~~}~|}}~~|{{z|{|~~~}~~}}}~}}{{zx|vyy{qtxwvxury
~|}}~~~~}|~~~~}}z{{|||}|}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{{||||}}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~~|~~~
~~~~
}}}|{||yz{z~y|yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzswvst}~}~}~~|~~}~~}~}~~~~~
~}||||zyvyyzywyv~|{{{~|{}}}~~}}|}}}}}}}|~|}y{{zy}wxxtuuxrwwtv
~~}}}}||}~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{{{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~{~}~~~}}}~~~~~}}~~~|~~~~~~|}||{}xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxry
}~~}|~}|~~~~}}|~~~~}|~~|}}}~~~
~}|{{||yw|ywxwwx{{{{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzzzzxswuqqrpxwq{
~~}|~}}~~}~|}~~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{||{zzzzzzxsvupprowvr{
}}~}~~~~|~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyysuuooqpwst}
~~~|~}~~}}~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|z|}{|}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z|||yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxqvv
~~~}~}~}~~{}|}{||xxuxxy{||}|{|||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|z}|{}xwvyyz|}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~~}}}|}{}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{
~
~||||x|yzyz|}|{||}}}||~{{{zzzupxwyvu|uv|
~
{~~}y|zzz}||~z||}}|z{~~~}}|}}|vrvxxvtvu}
}
~
{||}zz{}}||z|~}|}}~~~~~|}}~~}|{xvvw
~
}}||{||}}~~~}~|||}}~~~}}~~~}}}~}}~~|}
~
}}}||||~}}{|}}}}}~~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~
}uz~
}y|~{
}}~~~}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqspurstv{}uvy
hzrss|r}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyyspvxqvtturstvinrotvnulwm{snym}rsvsvmnwlpylu}}~}}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}}{}|~~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyqjoyxpkyszozwvvp~~~z~}|}~}}~~~~~
xyrz{pp
x
xyks~y{krz|m{zyt}vnoot|uwqy}}m~uo
zrr{|upozls|nw~~}}z}{|}}~}~~}~}~|}~~
}w
}~{|{~{||}~}|~}}~~~~~~~}}}~|{|~||
}{{|~{||}~||~}}~~}}|}~~~~||}~{|||{{~
~|{}~{|{}~}||~}~~}~}}~~}}||~~|}|||}|||~z{{|~
{{~}|||}}|||}}|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}~}{||~}|}}|~{||{||}}{{{}|{~|{|}}|}}}|zz{{||
zz
~|~~||}}|}}|}{{{z{|||{{{~{{}{z{~||||}~}{z|z|}
|
~~~~~||}}{}}|}zyzy{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yyzy{}}zz{{}|}||z{}||}|~~|{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yz{{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|z{{{|}}}|~}||}~|{
~}~{
~|}}}~~~~~}}{|{zyzzyz{|yzz{{{|z{{{{}~}}}}||}}|
~|~~
}~~~~{||}}~|~~}}~{~{{zyzzyzz{yzzz{{|z{|{{~~}|}||}~
~~}|}~~
~}}~~|~~|~||~~|}}|||{{zzzzy{zzzyyzz{|y{}{|~}~}}}
~}~~~~}}~~~~~
~~|}~}|~}{~|}}}~}|||}{{zzzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<D:;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÔÓÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>9=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<9<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËÊÊÊËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÔÕÔÔÔÕÔÔÔÔÔÔÔÓÓÓÓÔÔÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9>CE?<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÐÑÐÐÐÐÐÑÑÑÑÑÑÑÍÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÛÜÛÛÛÛÜÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÜÜ×ÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILO@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌͲâÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¹´½æáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVN<::77>C>8>:??A=?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÎnPSSSSSTTTTTSL óëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¤ZUVVVVVVVVVVVWNCCCCCDDCCCDDCFSSSSSSSSSSSSSKªòëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;?C>6:7>>;=B?9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÎqTXWWWXXXXXXWP¡ñééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¥_YZZZZZZZZZZZ[SHHHHHHHHHHHHGJWWWWWWWWWWWWWO«ñêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<;;<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÎx^a````aaaa``Z¤îççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©ª£hdeeeeeeeeddee]STTTTTUTTTTUTV`bbbbbbbbbbbb[¯ïééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÇÅÅÅÅÅÅÅÅÅÅÅÅÄËÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÏÎÎÏÎÏÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÑÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌËËËËËËËËËÊËÌËËÍÍÍÍÍÍÍÍÍÍÍÍÍÍÔØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<8@B<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÏÏÏÏÏÏÏÏÏÏÏÓÏÏÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÐÔÒÏÏÎÒÔÏÎÎÓÓÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××Ö×××××ÖÖÖÖÖÖÖ×××××××××××ØØ×ØØØØØÙÙÙÙÙÙÙÙÙØ×ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÏÊ¥ÑÏÒ¨ ÐÏѤ¡ÐÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÏϪ¬Ö²£§Ö¯¡©ÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D?A98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÐËÈÀÈÐÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<:6?B@B:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏѽȬ¡´¢°²ÓÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8FA?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÏÒ¢¹¯³ªÕÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÓ³Ä x¤ÕÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:<?>=<9@<<::9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÑΣ¨y©
¤ÕÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÑËÚ¨¹¯¦½¦¯ÖÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:969;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÉ¥ ¥¦¥§»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡Ê»¡¦§Í «¤Ð«¤ÑÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÓ¶×Å·×¼ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFGKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÒºÄÕÑÔÇÃÕÑÕÅÄÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÒÕÔÒÒÒÔÕÓÓÓÔÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ>>786967899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EILAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDJ;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJC<BA<;876797799=?A?<:9@?<>B?:8776=??@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@AB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEEC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<<DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsoupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸········¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢¢¢¡ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¥¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;<;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤££¡¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::88:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢£££££¤¢¡ ¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¡¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>98;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ¡ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9;;>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:=>:?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VQQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
}§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s}~
z}}¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
z||}~x
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~}}¨®²¯¯µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWLO_^\NUUbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
¢¡ ¤£¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJCPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©¨§¡¥¨¨«ª©¯¡¡££ ¡¤¥§¤©«®¬¥£¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdWOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®¯ªª«¤¡¢¤©§¦©¨£¢¤ ¥¨£ ¡¢©§ ¢¢®¬«ª§®¨¥¤©©©©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPORd\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨§¥§©§©¨£§¦¤¦¢¡¡¡¡ ¡¤¤¢ ¢¢ ¡¡¢¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]\PUOWO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§¬©¤¢ ¢¦¡¦®¦¦¡ ¡¤¡ ¡ £¤¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvwb_\UYQUW[c^s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;>=@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯ªª¬¨¨«°©¨ª¨¡ §©°²¯¬£¢¦¡©¥¤£¢¦ ¥¤¢¥£ ¥¢¢¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[Z`_Z\V\hdncnjib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶¯³°«±²±£¢ª©§®·¶´´¶³¯¬«®«¶°©²±®§¦¢££¢¨¥¡£¡¤¢§ £ ¡¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvyjb[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>AE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ª²¸¼¼½»º¿´¯±³µ´··¯µ´µ²°¨¤¢ ¤ª¦¦¡¤£¤«¦¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__amhukqhiiaYSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°±´µµ¼¼¾¼¼¾Æº¸·º½´¯µ±±º¸·²³²ª¦¦¤¤§¨¤®¤««µµ¯³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YTai`fsositdidb[LK>:8898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÃÆÂù½¿ÀÀ½¿Ä½¼º½¾´§ª±À½¸µ¹À³¯¯ªª¨§§¤¯§ª´¼±´µ¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`a^^kcbnwuvnl[bQV\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAA;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅÆ»ÄÀÅÆÀ¹¯½¼À¾¾³«ª³»¾´µ·Âº¯°µª«¦ª£¤§±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhakmfnuqruqg^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÅ¿ÃÂÆÅÀ±¾º¿Ã¶¶º©´³´©«³»»±±¯¬¤¬®´§ª©¨ª¬©¦¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tklndomiqxnyiia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄø´À·´¼Á¹··¿À»®¥®·¼·£·°¦¬´µ¬®¥¤£¨¤ ¥ª´±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{vnkiguZfrxsyfg]d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÃÃÁľ¸¾ÁÃÀľÁÏÏÎÆ«¯¶´µ« §´³®«¸µ³¬©£¡©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuueeijg]jomxwcb``^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÏÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈÇ¿ÅÇÄÄÇÈÊÒÏÒ̼¸¶´¸¸Á¾¾º½º¼º¼¬¦ª»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqocaguhjitmxl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÌÐÍÇÌÉÂÂÇÁËËÈÆÌÊÎÅÆÅÃÆÅÉÍÐÍÏÌÇÄÀÃÂÉÍÇÅÁÄÇÀ»¾´°°°Á¾¾ÁÆ¿¾¸¶Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlieuntb]bTWUSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÂÿ¿¾ÄËÈÊËɼ¼ÈÈÉÍÈÃÈÉÉÅÅÃÂÁÂÇÇÉÊÇÌÈÇÈÍÆËÏÅ·À¿ÀÀ»º½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrpfefcjdajmno^Y\VVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ã¹¸¹¼½ÁÇÁÆ»¸ÎÝÎÃÄÀÃÁÂÁÃÂþ½ÂÀÀÁÂËÃÆÌËÅÈÑ°¾¾¸º»»¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbacdcjbgc[ZZ\YQOE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶¸´´µ¿»½¿¹¾ºº´À¸µ·²®º»¶À·ÀÞ¿Á¼»Å½»ÁÄÀ¾¾¸¼ÁÁ˾½ÉÄÀÀÊÀ±Á¿»¸»¾¹µ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qc`bbgjgfiei^VVTYOSLF8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´µ±°µ·µ»Á¸¾¹¿¼¼·´·¯®·´·¿ºÐÃ}ʾõºÇ·¶¹»½¹º¶»ÅÅʽ¹ÅÀ¿¼Á¾¸Æ¼Â¿¼Å¸¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zxqmeefoiekhXXNKKKRILHC9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹¹¹¿¿×w©ÄÇ·¹¸®·µ¸º´·³»ÅÆËÁ¼ÆÀÀ¿½¼¿ÈÃÅžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksfam`\TIKJDJBCG?:;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼¼À·ª¤®°·»³½¾»Ä¶µ¸·ºÃ¿Å¼ÁÎÄwyÆÏÂÀ¸¯µµ¼¾¸º²¾ÄÄÊÅÁÉÿ¿¾½ÇÌÇÇÄǽµµ¶Á½»»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qflintnxcgb[cQKTHEECHC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£°¹¾¾²¼¾¼Ä·²º°£§¹³½ÇÌ¢tyzÏÑÌÊĵºÀÄÈ¿¿µ¿Á¿ÆÆ¿ËÆÿ¼ÀÃÌÊÇÅÆÀ¹½¼Ä¿¿¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_b^`bNIM?E@?DC;;::;:8;<:9<>9:>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±³ÀÜÛŹ¾¼Ä¾¸ wkoqk¸s~ÊÌËÍÊÆÂÄËÍÅ¿¹½¹¹ÀÿÈÆÄÁÁ¿ÅÀÊÉÃÃÄùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw{_pc[]__TI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸µ¼¶ÁØľ¶À¾}dZgRNX\v|t~ÃÆËÈÁÃÁÀÉÊÈÁ»»°³½½ÀÅÆÅÄ¿ÀÁ¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsxsgp][^]YRFDCMIAE=H;;59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯··²µ³·¹¼»¶ºÀ·en¦ÉÀ¶·b`fTd]NNQTht{¤¾¿ÆÀ¹À¼¾ÅÄÀµº²°¿¹¿ÃÇÃý½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸¸¸½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y}vlu{pni[_`YSPAFHGK@DCH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¸Ëµmgoµ¸YNFfLOtj`OMXtz¬¸·Âº³»·»½Áµ½®°°¶³¹ÁÂÄþ¼¿»º¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ¯µ´´½º¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsuvwnq`_f][TJ=??FF=FCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¸Í¶yues¢^NGUzLHf~[Cu«±·¾¹²µ²¼¹¿ª¼³³·¨¸½ÃÆÄÀ½¿¹³¯²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtwrl_ca[^OHB?=HCFMC@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³¶Ç³yqlvQEGtMNO_pFR~¦´°¶ºµ´²¬¼¹¾w¹¼¹·v½¼ÁÇÿ¹ºµ®¥¬³°¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wo{ourmc]fX\]RNNA>JBAJI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³·½¹zzydKG{|aMIQe§¥aNJp®»°³µ²´¯¬»¸ÁoŸ\v¹¶¼¼¸¶²±¤§§£¦©®¹¬««¥¨¤«®®§¯¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmtil][jT]\PMHDFLBFNF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³¿ZDvr[ZI^`Rqnm Á¸³´²°±°¹¸¿rg ²°§¥±®¹®ª«¬£¨¡¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndT`cW\QNLH@HQDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯¶©¨OJ}³ljq]k^uqccn±¹±³¯®¬¶·´]¥«¤¨¨ ¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨««¦¢£¦¢ ¥¢¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vzcwln\QhTPNGPMLBOQ@>;>39:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬©³³¢LTr¦st}sNnmeppn¨¶ª²´®ª«¯°°¡±¦ ¢ ¤¥¨¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ £ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uv}mk{dhUQcMJHGORMJNG<E@<2?859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡¨ Á¿¨WZxunqZ_db\Y[ilbfs²¯®³µª¦¬«£ ¢¢¥¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¤¡¯¨®²«¥ªª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}wx|dyy`bRU`HIJKSTIRPL9?B67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¿·xcr|fgeWZZQJGKOPLUb_²°°¸¬¦¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§ £±®²°´ª²®¢¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvshle[SZZMQJNOULSLA7>B78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢©§aXfh\NJFD>@BEBCLVO}±¬¯§¢ ¡¤¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¾°¬±®©ª´±°¨«¨²µ·³¸²´¤ ¥¬¡¡¢ ¤¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xuiwu]lZR`HRUHFUVJBLG=KH8F<77;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¡ cefXJBIOfRKAC>@FIH_£ªª©¤¦ ¨¥±ª§®£«¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼·½³³µ¢¬¢©¨²©«¨§¨ª§ § §§¥¤ª¢¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vrmivmhm\X\CWNJGMGBFM<>L=4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·¤°¦£ wk_RKCDVhF=::98Q
ª©ª¥¢£¡«¤¬²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶º»ÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸³»Æüü·³©³ª³µ¯³®ª¯£«§¶±¢¯¦¡£¯±°¤¥¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¥¦¢¤
{trkktrqhV\QFTHDJPI?EA4FG95;>7;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ ui^TJFDFg³ÄÁ]PIBO{ª²§££¡ ¥«¥xm ¤¢««³¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÇÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿À¾ÇÆ·ÄÉÉÃÁƾº´ººµ»·°µ²ªº²®»·¿»ºª·«ª¸º´¼®®¹£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢}zqkchoxkeZ[FKLEDSMDBE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡jWNKIHHS}ÑË´¯¡wsqnq¥¬°¹½Å»ÍÇË¿ÂÌÎÍÌÇÉÑÌÍÌÇÉÅÅÌÑÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÍÓÐÓÓÌÊÂÅÆÆÊÈοÈÑÌÇÅÇÅÁ¼ÃÁ¿¿¿¶¾³®¿ÀÃÃÇÄÇÄ®¿¸²¸¼Ãº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLDEPIDC@5558:B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £\MCFIIYfº¬´¹±¬£yrrplx¦ÁÊÊÅÊÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÏÊÓ×Ñ×ÒÕÖÓÔÈÌÆÌÍÉÒÍÎÓÍÅÈÉÊÁÆËÇÉÉƿó³ÈÄËËËÏÆÊ¿¾¿½ÁÇÄÌÌÈÉÀÿ¯³¨¢ª£¦©¬¤¥¦
zruvgcgvidVWQDMF@IQB=B<:22A<E<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<A?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡^H>DEWf¬¡«£ ¤¡}wpkebhqoq{
vpnqsoÃÏÍÈÑÐ×ÖÖÒÖÍÔÖ×ÔÓÑÓÔÔÓÏÑÃÐÓÖØÕÖÒËÉÎÑËÆÍÒÊÒÕÖÙÕ×Ó×ØÎÒÊÏÑÌÏÐÌÓпÈÇÊÄÌÌÌÎÏÅÆǶ¿Ê¿ÒÍËÏÆÉÈ¿ÄÃÇÎÍÐÑÏÍÊÈ͸·»¨¥«§£ª¥©¨¨|xsvpc`drb]R\IJGAEIJ>;A8=4586;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¤¥ ¡©pGEEHb¼Äª«ª wic`__`_^__]blusqpolrqu½ÉÅÔÖ×××ÓÖÏÕÔÚÔÔÎÏÕÔÔÑÑÌÑÍÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐ××ØÑ×ÒØÙÔÖÌÏÏÊÍÑËÎÐÀÆÃÈÆÎÍÑÑÑÈÌÍÀÊÌÆÓÎÌÎÈÄÊÇÇÈÌÊÔÔÑÕÏÒÌÓÁ¹Å±¥¨µ®§¨¬¥²¨°³¬¬
|zqstmacim_VP_JJCFCRM?<>54:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¦®·¨«·×ÔÕÙÙÑÎп¼Ìɶ¾®¦ª¨¡£¯bkjz¿®¨}pecb__a_^a`_``_`fmppnkorwwÊ¿ÒÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÒÊÏÌÓÖÒÑÖÍÏÕÕÑÅÑÔÊÐÔÕÖÎÒÐØØ××ËÈÎÄÉÏÍÊÌÀÉÀÈÊÍÎÐËÐÍÎÌÎÏÈËÐÐËÎÊÂÉÇÉÌÊËÒÓÍÓÑÑÐÐʽȹ°®»¸µª¶°¨¸³¾»±
zvopokadnpaW\ZIFFDMXE;@=33<<87865;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÀ°©¬©§{©Íαk^^^adb``aa``a^__^]bmroostuvy¤½ËÕÐÕÓÓØÖÎÎÔËÍÎÅÎÊÒÒÏÇÎÍÍÔËÎÓÍË×ÖÐÌÑÔËÌÐÒÓÊÎÑÕÒÕÕÊÀÊÂÅÌÂÈÉÃÌÃÅÈÊÊÏÊÍÌÐÍÓËÆÈÏÍÈÇËÅÆÁÆÊÌÍÐÑÆÐÎÍÍÌÏÅÇÁ¸¹½Ãýø²²¾±»Ãõª¥¢yqrkmg``phXXhVLFLIPQB;C>;67:8::57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±Ç¸ËÕÕÙÚÛØÌÌÏÈÖÕĵ¯´¨ ®xeºÎª|eabb`]^aca``_`aa`_][]grqqrsqnry£ÅÒÎËÐÏÓÔÊÅÉÉÆÆ¿ÃÆÏÎÇÅÇÍÊÒÈËÎÎÆÑÒÐÍÌÔÊÇËÎÏÈÇÏÒËÑÏƺĿÆɽÂÇÉÎÅÂÈÀÇÍÈÄÌÊËÏÈÄÄÐÈÆÂÆÈÄ¿ÁÇÌÌÌÏÂÊËÈÇËÐÄÅÇ»ÇÃÈÉÂÏÀ½¼¿°ÁÉƹ½ª°²§¥¢£wotdk`^fpa[W`GHHGIMTG?J=64355==48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼ºÍÍÆÐÕÕÙÚÛØÐÉÏÏÑÓȶ»»¤°ff|Ñ«}~s`[^^^`^`cdc_]]^_``_[Z\akrrookloo}·ÐÇÉÊÎËÍĺÀû»ºº¾ÉÆÂÃÀÃÈËÉÈÊÈÁÅÌÆÈËÍÉÄÂÊÉÁÂÌÐÅËÈ¿¹Á»ÆȾ¿ÆÏËÿûÉÇÈ»ÈÆÅÊÀ½ÂËÆÅľƼ¼ÀÃÅÌÅżÀÊÂÅÇÒÅÀÉ¿ÊÉÆÈÆÐÃÃÆïÄËÇÃÊ·¿¼º´©¬¤¥¬£¡¥£ {wrtfiZanlZ[XRDLFBGDLDFS@54334?=3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÃ¾²²¤]js¦¸z
vxurp_[[]``bcdded`\\]]_^`[YZ\borokikporżÉÄË¿ÆÁ°¶º²²³²±Â¼¼¼º¸ÁÁÁž½¹½¿¹ÄÊÅƽÆÀ¸»ÄÉ¿ÁÉ»·»»Æÿ¼ÁÍÃƾ¾µÁ½Ãº½Æ»Âº³¼ÅĶ¿µµ¾¿»ÌüµºÈº¿¾ËÄÁÆÂÅÉÆÉÆÐÆÂÌDzÇÉÃÎÍÀÅÃÀ½³·°²§¨¨¹°¥°ª¬zvwjdg`hocV^YJFJFHJAEBEI@9:648854;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÅÂÄÈÎÒÊÊÊÇÍÍÎÑÈÐÆÕÔÖ×ÍÊÏÅÉÅÇÀ¹Å½«¯]nv¨
x~{ttc\\]^``bcbbeeb]\[\^\^]Z[\^hsqmggnorx¼Ë¿ÂºÀ·®°±§ª¬§¸µ·´³³´»µ¾²·°µ¯²¼Â¼ÁļÀ»µ²º¾À¸Ç¹´»¶Á¼¸½ÆÁûµ¯²¶º¿´Ä·»´«¸½½À½±º¶°¶º³Å¼¶®»¿µ·´Å¼¾ÃÅÀÃÅÆÈËÅÀÆÆ»ÇË¿ÏÉÇÃÆÂ÷ý½¶¹¾Ç¿¬µºµ·¶ytxggebkn^V^`FKHHJFBDAEE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐÌÍÈÊÈÊÉÊÄÐÍÒÏÍÅÇÁÅÀ¾¹·É¶ª°^q
{x~vw|sh]]]]_`_`da_cec__\[^\]^Z\[]_kpnifjmnr{¤Æ¾¸·´¯«¬§¢ª§«³ª¬©´®·±²©®¦¬³¼º¶Ã¹ºº±«µ¹»´Âº°À±¾¼»¶»Ç¹Â¶ª¨°²À¶¸½°°§²³µ»¼«®µ¦®¶¯»²°ª¹°»®»¸»ÀÀ¾¹Â¿ÇÃÅÀ¼ÆÁÇʸÅÇÅ¿ÇÄúÄÆ»ÆÉÌ˳¹Â½»³svvki`blhYWW[ALKMIEAC?FA:9:995854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÅÐÇÍÁÃÆ¿ÄÄÃÃÊÁÉʾ¿¼Àº²´´Ã®©°hl{x~
z{wn^]\\]_`__dcbccb`_]Z[ZZ]ZZZZ\dnohghiknq¬¸¯´¥¤§§ ¥¡¥«®¤¨¢¬ªª°¤¦ªµ¶±½¹¯·¯©®¸´´¼¸´¼¯¸¹µ²»Á²À®¥©£«±²³¨½ª«¨«´³¦¨®¡¤¯©²¦§¨®¦¨·¬±²·ºº¼±¼½¾¾Ä¿µÂÁÇÈ·¿ÀÅ·Äÿ»¿Ä¾ÄÈÌÊ¿¾ÄÀÀ©strji\aodWVXPHYRSKFFE>>@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃȺºËÁʾ»É¶½Ã¾ºÉ·ÁÃÁ´µ»µ°®´»§©i`{}~xt~|swe_]\\^_`^_ccab`a_^]\ZXY[[YXZ\_fkfegehjor
©¤ª¥¡¥¤¡£ª££ ¦¥¨¥ ¤¦¬²°¶·§°¬¨ª´«´º±¶¶®¶¹²¯ºº±¶¤ ¤ ¦±§«¨¹ª¤§§¨§² §¦¤¦¬§£ ¡±¬²´³´°µ¼¶»ÁÁ²º¾ÃÁ²¹¹Ã³Á½¿µ¸¼½¾¼ÂÇÄÂþÀÄ xqlaf_ko`TY^HNgOTGEKF<=?=:;;825536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:7676788666;::;9:;<859<:>>@;ȵµ½¸ºÀº½µ ¡¦º¶«³³»³ÄÏÈËÂƸ¶ÇÀÌ¿¸É·»Å¸³Ä¸³¾À«µ»±«¤®²¬ ¡do
|yusomjjipi^`]\\\^__acb````]\[\\XYXXXVX[^_dcbegggjmo¨¡¢¡£§ ¤¦¢§¢«°±¶£©ªª¬¬¤´¹·°¬³µ®²µ®°ª¤¢²¤¦©¸¢¦¦ ¨¬« ¥£¯©«§ª¬¬±²¸¯¸¹»°¶¼¼º«³³¹³¾´¶²±¶µ¿¶½À½ÃÁ»»½zsl_e^ddXTW]IW\KPGIJGA<??@;?<04535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÏÈÈÀÆ»»ÃÃϾºÇ¸·¾·²Á´±»»«¸¹°¡¨ª¦f~
xrmomkb^aff]]^]]]\]_aabccba_\[[ZZYXXWWWXXXZ^bddeffhikq§¢¢¢©¥¦¢¥ ®®®®² ¦¢®«§¢µ±²²¬¨¯²§º³¦µ ¢£¡£¢ªµª¢£¦¥¦£ ¢«§¤¤¦«³´ªµ°³«²¹´¯ª¯²²³¸³®©¬®²¸±º¶º½¿·³±
yuf^e^[YVSZUK[QKIEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ·½¿¶¾¼¿³¥£¥±Âµ¶½´¸ÂÌÈƿŶÁÀÆηÀĽ³¹¹²¿¶±¸º¬±´£¨nxoqtqhechdc\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWVWadecdeddhjv¡ ¡¡¡©¤¨«§¯°«£¤¸ª¡ ®¨¶ª¦§°¤¸°¤· ¢ª¦¡¬¸¯¢¡¤¢ ¡ª©¤¢£ªª°®¨´«ª§³°¥«®³±°¯®¯¦§§²±´°¼´¹·®£yud^aVYWSRTKM^LOKGGLLE=A><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾¸¼®§¨£ª»À½À¹®´¸ÁÌÇÅÂýŸÈ˲ÁÂÁ¼»´»¼´¸¹¯®¯¨ §||wqilrtphhedfb\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[bcbbcbcdfi ¡ ¦¦¤¦§¦ ª¯¦¢¤·¨¡¡¢¨´¢¥¨¥°¥±®¬µ ©¡¢±±¢£¡§§¡¢£¥¥«¤¥°§¥£««¦©®¯®«¨ª©³¥¦¬¯´±¯¼µ±¯¯ zwrea\Z]XNLRGRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847763321./2556;:8;7876<;:;;A8x»»±µ½°»±·¬¥§·»¼Áź±¹µÄÉÉÀÃÆÅǶÅIJ¿Ū··½¶½ººµ²«¬¦¡s
~vncafihfgifjm`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWTTVUSTRU``_`a_aabdj¤ ¡¥¡¦¤¤££¢ª«¥¥±ª ¡¥«¨¡¬©©®¢¡¢£«©° ¢¡£¤ ¢ ¢¤¦£«¥¢¤ª£«®¥®²©¦¥¦¦´¦©¨³µ´¹º¯©¬rqo`[WVURGQOHY[ORITKSLEFID8;;=<8667:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:8698598989;9@9{µ´´»²¯«±¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÊÌȵɼ±¾ÃȬ±¸Áµ»À»´³©ª¤q{tiijlgjkmkjme]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\]]^^__bdm£¡©©«¨¬§¨¦¤¤¯¥¥¯ª ¯«³ ¥¦¢£¡©©¬¡ ¡ ££ £¡¢¨£¢¨« «°¤·¥£¤¢ª¨«¯³·³¾µ²«¯
tsh[XYSUREXLQ[XMTNPLPQINIB<??A?=75799<<987:79:;<=>;7;;:=67:;8976989:6:=99577571141-+/434988::8::748=8?9~³§³¶®¨¨¯®©¨¬·¶«¼Ê»¶¿¬ËÆŸÁÎÏȳĺ·»ÂÈ°¸¿·¼½º²´¥¨ytvwnmhmmmpggigd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNPQYZZZ]\\^_`d~¢ «ª¦®¬¨°¤© ¤¨§®¨ª¥ §ª¥ ¡£¡¢¥¥§¨¨ ±±¦±¼§£¬µ«®§°µ°¸µÀ±±«~rsbVTUNRJGVPRQLLWMJLNRGMKACFDC>@75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8³¬¥±·ª¥¢±«ª§©²±¤¶Æ´¹º³ÊŹºÁËÐʱ¶¸»½Áñ¯±·´³º²²¡¢~vkglnqnqjpkdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajzv© ª¦¥¬¨ ¦£
££¢¤§ ¢¢¦¤¦¨¦¡ ´²§²·¡¢·¬ª¤²²¦µ¼µ¬«±£ysm]NQQLOCMNNPKFNNJJNMQHMJAGLHGC=858889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12876:999984988A7w¶¦¤¶°¤§¤ª¥ ¨¥¥³ª¢²Ãµµ²³ÆÆ·ºÃÊÌƳ¬º½´·À¯©°¦¹®¬zm__frpuqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXXX[]aosvq
¡£¢¤¥¢s~{£
~~tz¢£ ¡£¤¢´¯¬¯¥¸¦¦±¡°®°»ª©¯ªwscVMROPNCSNLQLBPQHINRMHJJDJLFKJ=749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-12764789::65:87A7x·¡£´¨¦¥¨£¦¥¦¦¦³§¥´Á¸°´°ÉÄ·¹ÁÎƽ³¬ºÁ«Ã§¢¦¦µ«¢}v}eWV_gfighncjhgb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTRMMJHNSSSTUUVY[]ilrm
|tNXr_;Vo|s
y{}xqp
}¡ §®©©¨³¢¦¬«¨³¢©£~rn`[NSRWLDTJPLLFNOIELQMKOJIMPFII=7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· £¡¦¦ª §¨¨£ª°¨§´Á¹°µ°Ç·³½Ï¿¹¯®µÂ§ªÅ©¢¯¡
|ru]QLRUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`mpi{tQB@}y`JQnx}
n~wuvxoQ{~xvgw}¤£¨©¥¤°«¡¤¤¦ª¢ª¢¦¨umf^[HQQSMIUMSILKOIHFJNLMTKQQOFIC=769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')+*,4833979:99::::?9w¶£§¡¯¡§¨¥§¨¯ªµ¼¶··³Á»¶§¹È¸¶¨¨µ¶ª²¼¦¨}|wpnXMKMNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZntw~ji\Ut|
{vxsnuptz~«
yzhv{prmxxz{vrrwhu
{|© ©¥§¤¡ ¤rha\]JVORGJXROJLMRJJJLPHLQLRTMEHA<78;99>=:;<98@?::>=7==79937785675251472/2.,//200/-+(().1272198798775:<;7v®£¢´©¯©¥¬«°±ª½´²»¸¶º´±·º²ª¬©¨²¯¡~v
w{unnhXKHIHGEHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQQSV^u|xfw}hyvx}q|w{ok~|s{}tfv|lohs}lyq}qmvqhq~pC
wwz
}{u}£¡¤womebZXXUQJSUTOPNPVKNKNOJQNHOOLFD<;79;::?=9<:99??;8;=7<9999266856633611224.,,-..-0-+*''*.1362/876966527995y¦ ¦¯¬®«¨©±¯±«¼¸¬»¾¹³¬§°§¬¥©¤ yup{mtpiliWKFGEA@CDILLMQRPQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNOQTX]eprm§ªÀ~uyc|xo|yz}omytxjjq~Inhw~licly
ksl|nr{imps{}~{vots
yxp|ninonXUXTRQYORTTSXUMNHNKMNKCHNGE?:89;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¥°£¬ª¨µ¯®¬´¿«¼Â¿¦¢¤¡¡sz
tntkpldkjXNEFC@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORWZQY\`§bitzepmzvtlts|jkMy
g1vsl~~tfet~
filukq|hqq|n|s}|qpnumwyujyyvjjoheXQYWYY[MPUVYXNIHEJJHGB@FDCG=998;9:9<:9;:::@<9:<98>787715234533645031.**+),,++)(+'),,226,,5775478iO8;5n¤¨®²§»¯«²°Â±»ÃÇyqs
zorpnodpf_TFIC?<;9:?@ADCEGILOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQVLAIQIb¯³ r|xl}mr
zyr¡txsu5q¨¡¡¢vp||sgfbjnrlpuioXupwl{}mqmpzsunbv~
ux~}zqpok`[\^\YX`_RN[ZXWLHJFJG>BABG>CD=;97=;:;;9:99;:?<88=:8;66651121253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥µª®±®Á²»ÁÆ}n
ul{txxlwnwci^IPG>@7449;;;=>@BEHLLLLNPQRUUVWXYXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~mw|~
~v¢y~aªzw~sz]dqtz{wmhjbyo
znwtzptywkni]w||
}q}uw{|vpsteg_[[]T\g^WQUX[UGJJDLG?F@DC>AA=:97<;;=<::99;;=>79>9985653244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¦ « ±¨¯À±ºÅºz
vk}xs¡}|~p~zgvkRWL@E211367688:<>AEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJi{y|q|z}~v¡¥¬©H®¯¯¨tm|}hghx~n
q
Glwryvhmk_w}
zzuv|xmow}ssrl[]][ccXgf\UOPVYPDLKFNICFCCA@CA=977:::;;:888::?>6;>7585773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|}
¡¬¡¦¸¯³¼³}tp~}}~¤
x~sx_cWKB60./23123668:=>?BEGHJLNQSTUTTVUSQOGC?80,#[>?84.]ps£UFIKMNPW`YpZ\^j
~
¡¡¥»±§»Çè¡¥|qv
ihotq
w{v
}nvuf¡ª¢zzyogkx~z~rjd^ZZ]j]af`YOKNWRQHPJDNGCJDB@DDA<987=<:<:88778:==8<=68656623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfx{¤¡¬¦«¯°¡xw|mpj]BA4--//./02234778;=?BDHJNQRSRSTTRPOHDB<87/9D><<63.lMPHIKKKNV`cggmu £ª¥£¬¨¶¢¨Áîǯxº|¡
¡
lpuwql
r¡¥µ©¢}kjk|sa]c^Zfk\lk^WKGOSQNMLFIPCDMFACEFB>:97=<:;:987767;:6=:785456345566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYppuqv~§ ©ge¤~y}
xx~gMR>/..,/.-/000212457;?CENPRTPQQSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} ¨¥¢¡¢¨¨« ¨¬©ªµ«¾«¶ÈÈ·ÉÑϾ pi«©
¡§¢xz~¡{v«²}¤¢¦¶°¨lsr||qh`\`^bgc`hg[REJKPOIJLFFMCHLFFCBGD@:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppu`n}aw}{ªªBD}x|
w_bP460-1/,.00//..0015>AAMQRSPRSURNSLEE@<>=GG@A@8662<9;FHGIJNOQYmw£§ª´½¸¤®¬¬§¨´«°¶²²»±³¾³Ã¬»É˷ÿ¸¥£°²¬ª£
¦¦ ¢¦¢ª¨¤
¤¡ ª¡¤©±£§·» £°¢£¤¢«¯³µ¢¤ªyz~
~g`h\eb]dc_ff_ZOCIHTOFHLFJGEFHAKFCFFA:86=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicWjpXz
v
ÚÈsV|z
qna@E64<2/110-,+-1.-3?DAMUQRSUUWUN[PGGD<>>FHCD@8;<5C;=FKIGHROPW ®£³ª±ÁÇê³Å¶¬³¿³¸¾¶¿´Á¶»»£·Å¨¶Éǵ¾¹´¨£´±±§¯«¥v¤¡«±³ª¨®¶»²º¬¯µ¢±«±µ»·´®µ §§£¨©°²º¸¸§¶©¥xuYadVeaac`af_[TJDELUQHIJDIGEA@@KDAMF<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AFWQJL[ZQcdWyuq}v
{¿»£¼´y
zxn]V@EM<6:46AB764//6CHCQ[OQUWU\VO^UIKJA@>GKFED;>@7D7?BJJEFWTP^¥£±´Ã¶¸ÁÌɶ»Ä½³³À··Áµ¿°·t±³¦ºÅ¤¯Æ¹±³±´¨¤µ¶ª± ¡¢¥°®¦«§¤ ¬³º¢©²º´»¾Ì¿ÅŽ½³Â·º¸¾·º·¹¬¬°¦±ª¾°½»Â¬º¨®«}|jWbaXjejeW[dYVTIGGLQGCHIAHD>?BBK@@MC99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALRWTYUZvjpnzsyb¸¡£{z||}xzueO\dGEL:Qca[^SF?;HPDZcQQYXYgYT``MSOEA?IJHEFA@C<E6B>HGJLSZT]¯¸µº¹É¿º½ÉÌ»¼À¼·µ»»·½´º±Æ`u²¥±ª½ª¥¨«ª£¢²µ¡«¨®¥§¦¥£¢¦±´§²²½¶Á½ÓÉÊÓÆÂÅËÁÊÃÀ¾½¿»¼·´°¹·¶ÃºÅ½ÃÈ°¹ª¢«¥¨¶q_bb]Wa_hfRXaVRVIEENKA>GD=KB=B@=F>;H@796379>489:57045/26389374426?8@>GKRTSQPOQQPJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRLQ]gllq
slrrsÕÀµ }xz{yt}zkepuY]\Peeb`ed][XW\MdmURmm_n_XgeUYTJDAKKHFIHHGBI9D?HKTTV\Z[¹À¹½·ÆÀº¸Ê˺·¹¶¸¹²·µ´®¶¶du¨p^¡ ¢¤«¥ ¨¥¤¬¥ª°¬·°½¹ÔÑÏ×ÏÉÌÑÌÏÎÊÆÀ¿ÂʽÁ¼ÁÀÄÄÅÊ¿È䤻°´¯«¹¼yl]_\X]`YccQ\`SPKCAEFD<@E>BHB@D=:E>=J?47535;=468977022/24169775555D3ELM>51/006:477@IOI;-&**(-./,@M+/54mI0Ht?>BD@CDFKODR\Yi_polouu³¬¡¡
~|s{
{ts{xkmu{hreilifjih`fihlZnt¤¼g[oh]ZYTHKNOJKQKTQHLAJGKP_^bfia·Ç°¹³»¾µ±Äǵ¯¹°°»«²±§ª·¬¶§§O ¦¥¡¦¬¯¨¯§³´ÔÔÔÖÒËÏÔÕÎÓÏÍÅÂÉпÊÉÊÉÒÇÌÍÂÐÒ¸°Ã¼Ä¹¥¶ºÄ¢nc\\]X`WXfZQ]WOOBBHEBI;AD>AG??B7;C>@H=46655;:687654/10146278875367C5B8?-0-1349=97,.,1;FK=),(.0007K?-46TW0DwC;B>EBACJM?UYSeWshqoyy ª¦}
|p{r~qxukqx~q{mxslipmcinpxiw|~Ë¿Âߧmcxnc[a`JPRUNY^P^]MPNTQUT\nnvr¸¬´§°¶«¬¼À±«µ¦¥¸§¬®¡«´£±®¦«¬¤§¡¬ÏÒÕÑÍÌÒÓÔÐÔÑÎÈÃÔÑÈÍÒÓÓ×ÍÒÑÅÒÖÅÀÎÇÇè¾·Ðzne]b\V`R][OPTPNH>AFABE<@B>ED>@?:==<<JA45465<888664412/03526768533;=<E=@11+/249>5901022-2DN3)/3.32=N238C}_2AtD:==I>@CFH<VRMO[u
wlwp}~¡¡
y
{r~yu
ovrks||v|swqksrhoqzyr{¾Ë~²vrvhaj]CZZ[WedXekSX]\`c]cx{~ª¤¤¡ ¡¨¦ª°¸ª¥´£¡¢£¢§±¦j¢
}
§°¡ ¡¤¤¨ÈÍÏÈÂËÑÔÑÔÒÎÓÍÆÖÒÌÔØÖÖØÔ×ÕÉÔÚÍÉ××ÑʬÄÃËsob`_XTYR\PJGIIJ@;:;EAD<BD>HB?BC;;9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/--;R017/532FD28>nb5=tM99@I<AD?A;PLFKYpu}hsxr
x~xs{}wznxpmuvx}s
|ymvtn}vuy{µ<AÆ¥~|ieVICfcechjdox[_fhknin £¤¦²¤¤³ ¡¥¡© £±~
z~©£}ª³§§½ÃƸ¶ÆÍÒÐÒÐÌÒËÉÔÎÐÕÚ××ØÔÙØÍØÛÎÉÚÚÒÕ¿ËÌ´xvnd]YRUPZVFGJJEE=:79@AB:HD@ECACB;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BS39254/7K75<`bA<svV87AH:?C><9QECJTlnopaqqs|~
|x
zyqz{uz
zp|oozq{qnztw||u|°tX©Â¶pnb=^hrpqpnxweioruxr{ ª ¢¥¬}
~my{®ª¦®µ½©½ÆËÈÉËËÏÈÃÑÊÔÖÙ×Ø×ÔÛ×ÓÙÛÖÏÛÚÑÖÉÔËy{hh[YPRS^HCEII>A>=7:=?;>H=?AAADA>>:86DB755479.566435532323647553457EBDCEB56<FNSM[nfcnskaV>,4LG865434BF4=W_hLux^8;?F<<B<:9D?CGRk_mdbfkvqz~~||~wyn{{ty vutu}toot|
zv|·Æ¥ÂÉ·wpeNfczw¢xyw{|vm¦ £«
z|¡¼¡§¥¥®¨µ¾ÀÀ¹ÇÉÍÎÅÍÊÑÖÖÕÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÜÆzyghe`TWVUMKDNC;<=<9:<>9=@6=?@<?><9867CA6455=80665547745613854564567HH=DJE7925;H>;::7IP]ZRUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Yea][htzylwvz|~}
{~
z{u}tn|}~t~|~x}ynt
~
|~z©Â ¼£}}s~s¦
{hGp ¤
¡~¥¥¸¡¦ £®¶ºµ«¿ÆÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Ü·xxwkidW`[TPOHDMB==>99::99;=6?>><=9:;;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8589?=DRSRX^UXfmmmiqry{z}|z|{~tyszsm~
}w
¡n¨
z |~£¢¤®
Wr«\¢
££¡
¤³¡ §±¸¬¥¼ÂÇÍÇÆÏÌÏÌÎ×ÏÑÔ®ÖÕØÚØÚÚ×ÖÙÚo|tgg\]XSWXC@ID>>>:49:;7:;:3;;?=>7;9:19G=:37=@50677255?65;55858:57735HR7GOK994=EJB>1FCLB98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:<@;BQKKSYPTcbxmb~nmwxy~z||{wsp
zuvvt}¦£¥¢¨r²§¢ ¡©¯n·
ÄȲ¡¥²d¤ÍÇ
ª¤£¥¨¡¢³´¥£¼Á¾ÇÅÅÉÈÉÂÊÓÌÍÔ¨ÒÑÖÖÖØÚÔÓÚÎrhc_]^NJTZBAGD;A=837;<:8=649:<:82?9929I:>67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:>:EMFHRWSRBcFu}|m~xz~z~vv|lny|xx|}£³§£ª³¡§¥¤®¢¸³¡ ¤¯£¤§§¯¤ À¤É¸«¢¦²
¨¢
t³¥¡} ¡±®¢¤·¾´ÅÇĽÃÿÆÍÊÉÒ§ÎÍÓÒÐÖØÓÐØ»ryv\`U_WPHINEBCE5>:76:?;<7=42669774=5;5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=89566=:JFDGN[\YIf`;Hz{n
z|x
~px|}}osz}{x§»¬¨²½¯¥³³¨£¢°¬µ£¸¤¤©·¦¤¢©©£¯°©»»É¡i¶¸«°£«¾£^ª²|}´« ¡¡ ¥¯¨¡¥³¸«ÂÈĵº½»ÅÇÈÂÑ¡ÆÉÍÍÄ×ÖÑËÓ¡pzh]YS^ROFD><CAA8?874>F<<6<35355454B39:BM:A;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPeGb`bpI@~s}um}}|pww{ªÂÀ¯½Æ»³´Á¼´«³¶§²®®¼ª»¤¨¹¸«¦¦¢¡££¨¯²±ª¤¢¥¥£¹®¨À»¬²¹¥¤§}¬½°z§±¬ £¬ ¡§¦¤¢¤°²¦ÁÇï°º¶ÅľͧÇÃÇüÕÑÍÄÊtsb\Y_[MJBL@EG?A?B;:4>A<=5=6>333242A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\fF`igZ][{uo~|q~zz§³ÆÉ¿ÂÌÁùǼº¯«¹»²¶º²À®¥À¤«¯»¼ª«¢¢§ª®´°ªª¡°´§¢ººµÁ»«©²¥¤¨
ªÃĤz¡¦ ¯ª¡ ² ¡¤ ¦¤¦¦¤¯¥ÀĨ·µÉþ¶Î²Ä¾Ä¼³ÑÊȵtym\X\iSLHDLKKJAA=CD<5AD;:3=8B332262A05IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBfZMe\fTcjyr|xy¡¨º½ÈÈÊÁÒÉÊÂ̼Á³»¾§¹¿½¼Ä·¬Á©¬²»½ª°©£¥£¬³¶µ ®¥¢£´¼©¨¼Á£¶¶¯«°«¬ª¦¥¥uz
££ª¥|£ ¢µ¦¥¤£¥¦¥£¨§¢²¬¨¼Àį¥³·ÌÀ¹®Ä³»¾Á¸¬ÂÃÂÀmyaXW\[KKMJFDDIBBACK:4DH9;4<7E.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQF7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>jH_XaZddVw
¡®¦£Â¾ÈÃÇÅÓÍÎÍË»Á·¯¹¼´¼Ë¼ÃÁµ¶¼³¿¹¼®¯¨ ¨§¶©±·¢§¡«··©¥¯¾Ã±½¹³§ªµ³®¥¬¨ ±Å§}}ª¥¡£¢Z¥e£²¥¢¬¬«§¦¡¤¨¦¶«©º¼Ã´¦³µËÁ¸©¶¬²º¸®¨·º½¸lnZWTUNFJSNK?AGDDHFG95FM;>7>AJ.32025B55PVN<LFKRLOHGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|hW;=@BFBqFiIRebLF¥¡©¦¢¯¾®¡Æ¼ÅÄÆÆÎÎÎÒʾ»µ±º»¼¾Ï¶Ä½·¹·²±µ³¸³¬¦««¸ª¨§¯°£¯¤§¤¤´À°ª¬´¾Â¹À¹³§¹µ¸²®¥¯®¥¡tÁ~
±¥£©¡ `J¥T°¯¥¯®¬¦ ¥§¢´©ª³¼¼»ª°²ÇÀ¸¥««±±£¡±²´¤qnf\ZNPKDPPPQ;GJIGHBD>9KU?A:=EM07544:B34NWO<JKOUNQJOHHJOB<>MR;>=8:<CR>DHRIBWNI@CAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}iX;:BC@=QEWRsbWFHª ¢¨¯§
£¤µÈ´©ÆºÃÃÇÊÈÈÌÍƾº³®¹¸ÁÁ̶ȺÁ¸µº±¯®²´§£ª³´ª¨¦¬¤®¥¤¨¬º¿¨«¶·¿Á¿¾¸²²Ã±¹½¬£®µ¬º¦¦v¿
¯¡¡©¨ ª¢§nv¢¢²£«¨ªª®¥¤¥©¢±¦©«º¶¾³²®¾¹¶ £§¨¥§¬©©cea_RKMGHNIUL=LDNJKBCD<QU=AABDO18=77?B75UXN?HNQYSPQTJQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=..R`MUHe^HE«¡»¯ª«¢¤££¶Æ½´ÀºÂÂÇÈÅÂÍȽ¹²¯¹´ÀÂʵƱÁ¼´º«¨¬°£¢ª´º¦©¦«ª¨¯§£ªª¾»§¬¼³·½Æ¼·µ¸À±½À³©µ·«¿¥£¢ ¼ ·©¥£¡¨¥³¡¦¨ª¥¢¢ ´¯¥¥°««¬££© ©¤¢¡´´ºµ¨µ²³¢¥ª¡w`\_]JHFGMQIMEFFBRLJAEG@VRDH=AGQ1;B7:BF79\YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:g\FCCpbGD§¤Ã¬¤©ª¨¦¡«¶Ä»¾¶ÁÂÀÇľÍÇ»½¹²¯¸³¿Ãȵ¿¯¼¶¹·¦£ª¬ ªªÄ¡¤¨«¦«¯¬¢©¨¿·¦½°·¶Ç¶µ¹¸¿±¿Á¶´³´¯¾££® ¡¢¥££¾¥©¨¬¡¦½¢£¢©«¡
¤ µ¬¦²§¯¨© ¡¥¤¬±¶±ª¥ª¬ ¨hbYa]NIGJNKHEDIA=PIA<GIH[ROK=HOU4BF9>HG5Ca[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,0Mv\4KZ5,MnW<-=)#zbQ5CKQ9oRF<KxebVL¢£Å¬¡¬® £¥ ¦©«¶±£ª²µÄý¿µ¿Â»È¾Êȶ¸µ´°³³·Áƶ½°¸´¹µ¦¬ª«¥£Á¥ ©¤©¯¢¦§½µ¦±¼·¶µÃ²³·¹¾²ÃÀ·¸®³µµ£¤¡® ¢©¨«£Ã©¬¦ ½¢¥««¬¦¡W¥¡ ¸ª§¶£²¡ ®¢¤¦²«©¡¢¥¥¤adZc`LHJJNFEAFK>=JB99JKN]QQI=LV\9FI=DMI8Hb\LCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWrHE6=ue\KM¡Ã§¥¢³¡²§ª¤ ¤¬©¬»°¨¬µ±ÇÄÁ³ÂüÆüÄʽ¯±¶°´¯¿Äµ¹°°¹µ¬¨°©©¥¡§Â¬¬±ª¢®°©¤§½¶¦·º¼®¶Ã³³Â¿²Æ³º·¬´¶ª¢¦¤¬¢¨«°¯¯¼²¦ ©©¢¤¸ ¡¤¯¯¬¥§¡¢§´¦§´£¯®¡¡¦¬°¥¦¡
ae[geJILJRAC@IG;;G?99NMU^RSJ>O^]=HPBLLI9Mc\LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<v]^?[U^fr@8<HweA4£ 褪²¡£´©²¬§¢¤²«®©»²¬°µ´Æ¿ÄõÀĽÉĵÀȵ«µ¨°¸¬ÀÄ´·®¬¶¹¥«±«ª¦»´¨°®´±§ªº²§º³·²¸Àª·²Â¼´Å§¾®·µª¨¬¡¦¥¢£¥¯¸®²µ¶ ¨¤¤ ·¢¥¦®²²¦ª¦¡¨ ¡¯²¢¦®¥«¤
©©ª¢§
xch]kjMPMNT=CANC::I@77QO]^RVQAW`\BJSHVKH:Td\NFON[W[RPQX]GAB[PBG>NC9HGHNP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1[bZ33806p[bH05JphVCWFyfC;¤£¡¦¿¦¨¯°¡©µª¹°«£ª´¶±°¹·¯¶¸¸Ä½Ãǽ¼ÃÁÆÀ¸ÁÆÁºª¶¤»À··ª¬±»¢°²¥§ª¹© §°ª °´²ª©¶µ¬¼¬²²¹·¬¹°Âº½¾¦Ã«°·¯©««§«¢¢ ¡±¯³«±º© ¦¡·©¥£¢¯±´«²¨« ¥¢£³°¥ ¨¡©¨§£}
jhlalnWPQZTACET@;;IA7:XPd^PVWDY^]MLRN^KJ>Zc^NHPN[UYPKSWZI?DXPDF>N?=IGGQPB=CFBM?:2D?77547?=95E4+75/251.-.,1>*'+=\p=>1.1e[d@1647gY`F(?8l}h[V;{cC=§¢©½¡ª°«£±¸©¥µ³¬ ¬´½®³¸¼º½¶¶À¿ÈĹÄÁÀÀ¸Ä½Á·¯µ¨«·²¼¾¿´©®±¶«¨§¨§»¤³«¢±°³¬©¶´µ½¯±µ¬°µ±ÀºÄ·«¼¯±¸¬ª£±¦¥ª ¤³ª³ª«³§ ¦¤´®§¢®±§³²ª¤¨¤¡¨µ© «
¦¥¢
zelrgpq_FYfVDCMXDZ9HB6>]Qh\NY]G[^]NMRXdJJC\b_PLMNXWXPJVVWM=EUJEDAM?AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,+%2+*5K1.'__aU150=`V^8)C3YU\gK5zfL@¤ ¤¬·£¬©¥®®¶©¯´º§¦°·Å·±¶¾ÀÁµ´ºÅ¾ÌŹ¿º¿¹Ä¸Á¹²µ¬ªº¶»¹¾´ª°µ§«ª«¬««½«®±£« ±³®®¶±¹·©®±¨µ¯³»¼É²ªµ´±µ°¯§¡³ ¨ ¥²£ ¦¯¡¤¢¥§²©¢§²¬ª¶¥¯±µ¯¤§¬¸¢¡«¥¡¡ z
{knxmu{`EajYIHY[={JGE6AbTi[M\`J[]ZRRRb`LKE_``QLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`U`/5(C^Q\.*B/JGP[H3cYTJD °¨±©¥¤®®µ¨·´¸¤«´·É»´ºº¿¾´´·ÃÀÌȻü¶¾¾À¸¿¼±½®§º¹·¶Á¶«±¸¦®«§¢±ª¯»¤¬²²§¨£²³°±±µ±¸³¨®«±§¸¯µ´ÃŶ©´µ¬±®ª§£¶§² ¤²§ ª©£¥¥¥·§¢²´¬§±§®°µ¬¥ ¬¨©¸¢¥ §£ v{
mqwu{~\Kel\KNc\?b{GI8GgWe[M^bMXYWTXTi]OOHa]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANHf27'FaLV%-B.=EMQ<3rjJCC¥®¥®«§¤°²³ª·°¶ «µ¹É¹®Á¼Â·³±µÂÃÎÅ¿Á½´½¿¿º¿¼³Ä¨©¹°¶¶¿¼¯«³² §°¥¥°¥²µ¬«²°¬©¨´¹¬´²µ¬´©¬¨«©¹±±Ç¿¸¤¹°©¦¨°¦¤¤®£©¯¢£££¬¤ ¢ª¥¦¹¥¬µµ¥ª«¨¬¯¶®££¨ª ¤´¢ ¦w~
||}qtr~}}\Sdo^NZf]FDZG;NmXa[M`bNVWVWTYg^QRLcZ[TKGOTSNGIVS\N;P^IBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Bc;6*HdHJ+:I?3BIS,>k<GHªª¢©°¤¨¤³´±´µ±±¡«½Ëº®À»Ç±´´ÂÂÑÅžÀ²¾Á¼¿·¼Ä§¬·¬³¸»À°«² ¤§©¨¤°£ª±ª¯¬°®¯®¬³»§¶°²©²©«¥¥£º¬ª±Â¹µ«¹¨¨¨ª¨±¥ª¤¢®ª¨¢£¬¤¬¢§©¢¬¥£¬¸±² ©¢ «®°¬§¨©¤ §
¤~|w
tsqul_Y`ncQsq\K;|F>WuXaYNc[NUVUWP\b^SONhXWWKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*35>10485(5/*,.30;),,'%234$,2-860)(1<]J0.IgDF8<B05EKX1@Z>LE§¢ª²©©¯¶¬¸µ®ª¥«ª½È»°½·Â¯°¬³ÄÃÎÎþ¿´ÀÂĺÁ´ÉĬ¯·²¸¿¾³®«¥§ª°©§¨±¥´®«°®±°³³»¤¸³¬¬®§«¢°·«ªº¶¥µµ£©§¬¬ª¡©§¦±²£¦¥¡¡¬ª¡ ¦¤¢«¤¬¢§±·£¥¢©ª®©¢¥¤¤
£¢|zt~tw£xj^`ngWedN@gLDbyWbXReTMVUUTO\]aUKMiWUWIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06WZ.0JgAA<<C+:JO^4D?HFD¯¤£ª°«©µ«¶±«¥«ª©¼ÀÀ¸¸³»µ¥²¯ÄÉËÑ¿Á»¹À¿Â¹ÁºÁÄ®²µ±³»À¾³±®¬««¨¶ª¦¯«¹°¨±±¯²¬¶ª¶µ§´¶¬¬¤©ª£³³¨¨¤´´ µ ©¨«¨«§ ««¨¹¶©ªª©¢© ¬©¡ ¤¢¦£©¦µ®¨¦©¢£¥§§ª¢¤£~¢txu{x~oqggqx\`sjO]VHmxUdVRbPMUTUPOX[bUHPiTVSGPYUI>IHOQPxLMV=<KD?@A<@CUC9AK=5;E13;97*4:=+-341*8**+*,)*(/*&)%3;,$2)2021%/2Qb02?f=NX?C,>LT_/Jj6OD;° ¥««¥¬®³´¯ª¥¯©¨º¾¼À°®¸®¡µ¯ÉÇÈÑÀ¾½»¼Â½ºÃÁ¿¿®²²±µ¼¼Â±²³ª³¨¤µ©¥³³¹°£®¶±¯²º«¹®ª®µ«ª©«¢ ¶¨¡¯³¡´ª¨§ª£ª¡¢¬¨½¯¬®¡§¨«¯¡¢¡¨§¨ª°©£¬¢¡¢££§¨¥}
¤
xt}uxy{tszi£ui^ekug|RXp^JxsSdSQ^MMRYfNLVYeYFSiRQ?BNQaQ:IHLSIqQLS;<I?;<=;@@W<<>H73CB15:93-5::)-31--6)(+-,42#2)',%.;.&1.0-14%,0Lh:38_=ad?F1CP[[+HN9UA4±¤¦«£¦¤¬¦´²±ª¤°§ª¸¾Á»¯§¹ª§®°ÉÆÈѼ¿¾¹¾¿¼É¼Á¸°°´±º»¸À²³»¬¸¬¢´¦§¬²¶¹³§§»µ¶½°¼¦¬µ«©¯£¥¬ª§ª³¤³¨ª§©¤©£©§©¾«´¯®©¤ ®²£¤¤¥¤¨«¥ª¡¡¥©©
~}
¢~qzy~|iw|zupp}h
xd`gcr
zmgy]^VBWzmTaORXKLNqt]HZ[gYEUfPD>JNDCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KH0%90%,,09/,,+6'17#-/GjI14X=fbAJ7GS`U*=;DX>*±©¥¤¡«¤·²²¥¨±§¬¸Á½µ°£¹¨¨°ÃÉÉÌÁ¶½¿µ·¿ºÈ¶Ãµ´³µ±½¸º¾¶¹µ¿¡³¦ª«°µ¸´«¼¼¨²À³º ¯³µª¬®°£¥¨©¢¥±¦¯ ª©¨¢©¤¨ ¼¨®°®¡«£¤®¦¡££ª¢¤¤¢¦¬{|~£|yk}vyxb{zqpqrxhsjgdhansmbip`pA\xkV^NQQJJMSYVM]^mWDX`O^PHMDF;7HEKO<rhJK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*K>*49&'.34.0+/4&,:$40BhY13S=e_DL6KWeO*<2OZ="¬§¤¢§£¸¯®¢¯°©«¸Âº³¹¯«¨´ºÇÊÈ¿·Á¾¯´¾·Ä¶Ã±¯º²²Àµ»¾·©¹·½«¤´§¨ª°®¹±ª»½¤°Àµ´¡®·µ¦§§±³ ¤¦§¡¥§¨ ©®§ ¦£¨ °¸£±¯¡¬¡¬¤¦¦¨£©¦¨¡ª}||¡y
}{so}qst`yxioppoi~qczliecaf`[rjrMMiXZMPLJHPRQIN\_nSDXZRgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZhH*>/YX5(¥¬ ¡¤¡·«±¤´´ª¨¹Äµ²® ·¬®°µÆÈÀ·¿Á¹°´½·¿»¿¯«½°´¿±½Ã¹©»º·§¨µ¨§«°³±§½·¤¼¶¯±·°¨¥§¯± ¤ £¤¡¯¦¡¢§¯¢ ¢¤¤£·°¡¦±«¬£¯ª¥©¥¦ª¥£©¡z~zy
~zzprwnot_xwdllkihmfrikeh\cs_ZkuiZI}^[XOOJHHRUF29_^lPDXVYeMIIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<#8R=*113>D5,-'42*;+139cl84GAf[HTDU]hE.;2aT,2£¡ª¥¡¢ ·ª® º¹¦¬½Ä³°®¢µ¯¬¯´Ãļ³¿º·°³¹¸º¸»®À³´¸¯¿Á¸¬¼ºµ¦¢³ª§©³«²¢Á¶¥¨µµ©²»ª§¦©¯¬¢§£¦¢²¤¤¨©¢ ¥ ¤¹¨¤§®§¥¡¨©¢¡ ¡«¡£¨¤y|
}y
{w~{ltrllsaxthhjgeogghcfhj_hbifZe{c`SsT[[SLIGIOS@!*i^jLCVU^`KIHEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,>0-N?.+-7,1195,&.5-80576`tB3CDg[KWGU`hB378dN'2¤£¤¦£µ¬§ª¹·¨¬ÃÀ¶°¬¢µ®§¯¯·ÀÀ¼²Á¶±®²¶¶¸·¶¬ª½³¯²±½¿·®»»±¥¶«¥¥´©«® «¨¥°³ª¬µ»¨ª«±¥ª¦¤¦¢¤©¡¢ §¶¦¯ª®¡¡¡ ¦¡ ¥¬¢© y
w|{r}}fxokjlguskcgdctadefeijcjqY^X^mdaNhWZ`VIGHKMRX>9`liGBTS\[IIGFA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=+*,0A*JK./*+3722(57$+7.72685\yN2>HiZLZJVbfA:3AfH%5¤¡ ¤´±¢±½·¡±Æ»¹°±£·¬ª®©¹½»»À²¯®¶¯³¸³¨«¹±¯®´¶»¶¯¸½¦µ« ¡°¥«®¤Ã ²¤®±¯·µ¯®¢¨ª¥¨¥¥£¨ °¦¹¨®£¡£¤ ¨«¨¨§|t
|ofxnhkjgqrk\hcbr`dgjmlgjifl\lmuqaTbhdeYIFLMOXQQVaeT@VSYUFHFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24;6#3*)6.55465Z|]19Kj[M[KXdd@A1IeC'4¢°¡©²°¸À¶ ´Â»½¹±¥¶¯¨®¥·¸··¬»¯ª«·ª´¹®¥³µ±®©±¶¶°²µº§¨¶©©¢ª©À¤®°¶µ±°ª¢£¬¨§£©¢¤ £«ª©»¨¤ k¢q¤uª§ ynj~wql}o^c`gkuw~fhuifW\isnNPjcfqf^dfnli^__gOKD8ETg^JGPPUUKHSaoteF[QUPFHFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,+08>G601.*.*/568,#1'214:176Xl16Ok[N\K[fb>G1Pd=+/¤° ª®«£½Å¯©·Â¸½¼¦¶°¥«¤¸³²³°¹ª§¬´¦°µ£¨¸¶µ¨§¬¶²®´³¢©´«¢¤§¨¬¼¦¥¯³¸®¥¨®«¬¥¡ §¦¡¦¥§§ ¨ª£µ°££££¡¡¡¥§«rx¡vif}sx¡o~{¡ {tvlmheczlqbTmcliqXjonW^i[kj[pmyrhZ^FN>F^MERVVQQRWTg^LXJRROEGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82).1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Va7/(¦¬ªª§©¿Ã®±º¼·À¾ª¤·°©¬¦²µ®¯³¶«©¥±¥µ³µ¶´¦§©³±²§¯ª ²¨¤£¡£®µ¤¥¦¶½¦¬§ªª¬¨¦¢ §£¦£¤¤©¢£¥¦ ·¤¤ £®©¢
±¤yÔ¨ÁÇyw±¥·dÀ¿yy|Êq¼Å{r¶§ºzl±«°yhkX±®oei¼¼nhymrØ~Rkc¶²qu¡ªWOWaOVNFT[XQPR\W\P@]EQNDGI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww21Tk\O[M^g\>L1[]41!¦¦©¥¬²¨°Â½²µÀµ·¾Â«¦´©§¯³ª¯¶´¨¨¦µ¦§¸¯³²¶ª¥¤§±®±¦ª§¤±¤¢¡ ¯¢´º¢ª¨¡®¥¢¢¨¨ §§§¡§¢ °££
¯jjª~gep¦q®¡¤~w»|k¡v±_j´[¥f`fzfjxj©e¾rg¦v²j|±xtcmm§m[ EifEu`}g{¤§Y_«ixzj§7J¯[WTlc[KNW_\WV;NOWV/ITTICEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:5/'$203B/=;Uv2-Vj\OYL_gY:M5_Y31¢¬§¥£¤©±·¬³½¾°·Ä²·ºÂ§©°«¯©©°¯¤°º°¤¥®³£©¸©³²°£¥ ª¯«¯¦§£¢°£¦¢´³¡«¢ ¢©¤ ¡§¤£¡¬¦§ ¡
µµx
©µw³·©~k¦z
w«gk±[¬{tpx °vwqkkl|N¤XHcc~ch¦`yruS^P©mcq~b.Q¡n[Tkg`LK\dX\ZB>°xWXA#MiEBDA@A19>88:84;:9<9:A:E::;6:CB8=?KNG:5:AFB@AD<FD;0201;F,0.940,.(/3,>831/2-D1<<S}n3+Xj\OXM_gX7J9aU50³¥¦¡®©§³¬©»¶Â°¼Â¸·Áª¬®®¦®²©¡¯¼ª¡§´¤«µ¥¦²³§£¢§ª²¨°§¥¯¢¤¨µ¯¡©©¨ª ¥¨£ £¤££«¦¢ Õ¹p°Â~Æ|Ö»|¥¤{£¥z¬yU¯{~j¹Z¹w|¦|zªy{±mt¼
oP¯§ÅQ zc`ªbsrl`Sµ´È|c¤3Bv]QjhcP@XfZdaJHMlK[SOYfZCD?E?0<<59;74<;8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DB./0483+-).323971#%5*>3==Qwj6*Yi[K\P_fT7G:aQ72%¢±§¨¥³ª¥´¨¤»·Á°ºÀ±µµ¼³µ§±°£°³¦®¶¨¨¹®£¯± ³´° ¤§©°¨´©¤«¡«¨°©£¬¢§¡¥¡¡¡¢¡¢¢§¡¦ §¡²nhµq«o¦r´sr¶{¤¢~ ¥~°vÒÑu[®|¤oª¦k|}{±sx³etofRÈZÂ\yb__vsb^YÊo¿uMKµSUÆdTQjcfXAOj_liOUFI9=WR[WXHC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>HI91746@>/.24252-).26,742&60;5:=Pqh9'Wi\BNT_eP5G=aM62/¡¥¯¬¤ª»¦´¥§¶»¼²º¿·¶µºº³¥´´¡±²£¬°¤¦º®¤±±´¸ª¦¡ª¤±§¬©¤©£¨ ¦ª±¦¢¥¡¤¦¦¦¡£¬¡¢¥¢
¬{w¨v£©o¨¡¢®
³\r³R®~¤q×}w}w¯w´aelZ°XKuyf`^vwgk^¯wxl5yÈ®²_ATo^g`EPl_qmVUM.eciSYQ:AD@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@=V_cN6GC`I:88 ¸°´Á¨³¨©²º¸³¸¿¹·²¶½µ¥¸³´¬ ¨«§¶«¨±²«®´¤© ¨¡µ¦¦ª£¥¡¢¥§¬¯¦ ©¢¢¨¦ ¥¨¤¬¡ ¢ ¦©}}¥x¡ªp§ ¡£ª|yo±Z§ ytØvt§¤|{²^d ~l\«[Zhgªcr{kq]¬Z kneOJC¡\ZLt^beMZa_rs_JU6JYHE=HFAL35A8.;>05A78@<6=<F?:<6?=B7.HVJEAH6KIN@IK@EN::@4.:>102144+*05/7,&21($$6671<PeeA&Uf[?1U_bL7FI_C1>8¡¾«´Â®«©¥´°¸±µ¿¹º³±·¼ª»´°¤¥§§ª±©°ªµ¬«¯¡¡ ¦¤£¹¢£« ¢ ©°¯¦¨¦¤¨«§©§¡£¬¤¡¡¡ «®mr´r©v¦s´yt³¤¢¤v¸o{¢kk¶Y¡ei¡¢§mr´t²j
ku³af¢oj\`M¡|Rs£ly~op\¯V<wfTon.\§ObRkealYb\`p{cSYQ>>mp3BB@?L9!7@6.;@37C58??3;<CDBJFMIF62JTKEBI6IJP?HNCFP=<E50;;010/75,+,426/#00,,289/9N`eD'UdY>/U_aL5FM^81B8¥º¡²À®««§·©¸¯´Àµ¼±¯¹¸«Á¶©ª ¦¤¡ªª§¶£²¨®ª § ¤«¹£¥£¡«¶¯§¬ª¥¥¬£ª²£ §«°¡£¢ ¡©«Ô»s°ÃÃ~Õ¸x§z£¶u}wv²`ºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¡~t«}¾ns¼t²uxnqn¤t½]w}[ay¼kZV[jz^j`dfbmwoY[YCA@r?CG+5H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7A9§¡¼¢±Ã°©ª«±§¹¯¶Å±º²®»°®Á²¬¥¢£¡ª¤ª²¤´¦¤ª¦¬¸¢¡¥ £¯¹±«£¨§¤¤ ¨«©£²£¥§¢¡¤° ª
µ¸xµwnlnsnysÁ»¼{²¨pt¸|{|¤»¹½uz³£tvut°ufiµtrpw¶^y}gymyb¬pu
Y[§jDdYSf`c]cQgfqluBNPLD;ZL>J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7LT_G'SbV8*O]]=+:VV'=;<§ ¿¥´Ã´¬ª§¬«©»®°Å¯µ³®·§µ¸©£¢¦ ¬¤ª¦µ¨¨ £«¤¾¦¡ª¢¢¨¢²µ¶¤¤¢¦¥«¨¤¥¡©¦§£©¡£°©§¢j~i§xs~tzez½¾Àºnq`rjZ^adk`cmvbke^`cqhr}gj~qtx}}b[wthP\n|{jXkzrIJo
pMtMEW\f`L[Xgc^O[muiqRODEM;HI<L?2,2A?8/5?C<9;@;=C>RVVWYZ[\\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7JR_I'S`V4)P^L(3=[O'?2>¨ ¨¡Á£´º¶¢¬¥®§¨µ±¬È¬°³¬µ£¾±²¦ £©£¬§®¤¤µ©¥¡§¬¨¾§©¦ ¥©§°²¿¬¦§¢©¨¤«££§¢ª¢°¦ °¥¢¨£¤§£hn}qw
µª ¢ z¥ki||tqxyvv{jstucw}vkp{m`c\pgMYYej_WZozmmfSOFS9OZNRO(+:JB635=@A9:C><ENSSTVWXYZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J&R^S10T^:+=8\K,<-@² ³¡¿¢¤±²· ©¥²§¥°µªÉ«±¥µ¦À¨´ ¤¥¤ «¦¬££¶¬ ©¥À«¤¢¢§©§²Ã¯««©ª ¬¡¢¥¯¦¡¤¨¦¡° ¢¦ ¢£ |ª¨{
£f¡³®vz|vyzogykuyrhszvktcyf`idbdfjYk{pij\SLPD_UF@??,4@F;45;>A;<?>>HNNOPSUVVXZ\_aca_^^]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMMD/T]Q05M[17E4\G5<,@´ ¹¯¾¬«®²² ª¦±¢¬³°Å°ª£³®¼¤´ ¦¢¡¨¥©¦¤¦³µ°¦®¾ «£¡©©¬¢´È³ª¤«§¨¤«ª®©¥£«¡ ¡¥¯£¨¥©f|e~cylhkz¤«ke~g
eeihz¡kh¢wkj£slnzyXe]
^lv\hswwnwxsmytw{j
Y^ktd]sij|qlc]QMWJdX@J4=F7?FD71<=?AC;;DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AJ[J/7ZO6)EY/DO1YC;?.=¥º¼¹¯«³°ª¥¨®°¦®°½±©¨¤¯±£¡¦«¬£¦¨©²®£¢¯¦¶¹¥®£¡ ¥{¥¬¢¨³Ã·¤¢§¯£££©¨ ª¯ª«£ª¨¦§ ¬¡¥°¤ª¡¥«~¾r´rhx¹Ä¸q¢£{¦sª|ËÀÀ»q¢|À½ÁÁ{{¿}k¥±ooÊzwvyyqzqx
ymvbf_xd_ec^thmdbXLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>I[L*#BP/#F[3PY/UAB;/8£¸Ãµ°¯À©¨£¯©°¯¦²µ¯ª¦¦¦±««¢ ª§¢«¢¥¨¥¤´£¢¦¬·³§¯¢¥ ¡§«¤«¿À°¡©¯©¢¢£ª£ ¡®¨¬¦£¢§ ¥¥©¤©ªª¬¡¥¡£Îyz¤y_®^§¡ |§t«¯^cªz§
t³c«¡³i®t}¸aY£Ínu{Ú{p~ue{vvk}n~
~m`qkpg`_yd[phjdf`RTRW^KOC5AHED8>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-J0';\;L-!P@F4.1¿¿µ´°·¤ª¨´«¦²¬¬¤«§°ª §¥¢¯ ¨§£¥¡°¬§®±«¨¬ ¥¥¨£®¤ª°¨¿Æ³¨©±®¢ ©ª ®¯§ª©§§¤¡«´¥£ªª£§¦¡° §¡ p
u
¨q°|r¬~¡¥w«}r~«vz|~ª¢~«{{VÄzoÁ}mupmeveoawnromdotup`gmd_oiinfcWS\aZRSC9II@D<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1' '45-&7=WJ-<'>1)3V@F!G:C1.+¯ÔÆƲ´£££¡¬¯¶®¨°§©ª¨®««§¢¤¢¦ª¢¥¨¨¢°¬¨§®¬¨§©£¢¡¦£¯¬£¬´©¹Í±§®¬¢®¬ ©±©©©«©£¢¬¯±¢¨¬®¦¦«ªª±¢£¥
¤j¤uz©tz²p¥p ¤``R¬®v®¦z{f£¤£}©~®^|©U¢z¢{ïÅs¯³³¹qb©¯Âthmomywwolfdeqpf{hc]W_iXXUMMQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799674,&$" ('"+-"$.!3-&@DWH,G+66*1PKL# A9D4,'ÂÉÕÕÀ¡«¨¡¯¢°µ°¯©¬£¨¦ªª«©¤¦ ¤¥§¦£¬¢«¡¤¯¢ª¤µ°¯ ©§£¢¨ ¦±¦£¨±¬¶È²µª¬©¢¥³ §««£®¬©¢¡ª£³¢ª³±¡ª¨¯°¶£¤§|ªlu«y|°o¤Ò¸´¸É²^_©¤ yxªÉt£§©ÆÆxe¡¥s}¯^oµc±uK£m§Gd|ppzt|{m[fjrqfj^bXcm\^YIMLKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75685/)(%&%$&),4ENPPMFKJVF*L0/>-5OTQ;<F2,$§¤Àƹ¨²®¬¥¢²¹¬ª¡¦¨¦ª¬©¦ ¦¥«£®«¥ ¬¨¥¦µ¢¨ª¶²¬¥ ¥§£ ª§®¢£§©°´Â±²ª¨¤¡£®¥¡¥¦«¯¨¦¬£·¬¡±¹¯¯§³´³¤¨¤Nxz£|¤¦¸{|y¹~ÌŶx¡}v¤£¨~°
¬}a¥l£p
}r¬`¤sq`¼}RUu£|~tzs~p[mnwrjoZd_hnbd]KMQTBIHFI:9K>B108866877-*5==?BDGILNPTVXYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOUF<E3:P[T6?H,- ©¬¤«¹«¯ ¡¬³³¦ ¥®®ª§¦¦£§¡²®¢¨¦² ©¤¢µ¢£¡©´¹¤££¡²§¦¡¢¯®¤¨¡µ±Ã±ª©¦£¤¥¥¤¨®¡®¥¦°¥¼¡··µ²¹±³§°¢¤ÑµÃ·y
¦x¢w ¥qª´nrj£|s¯¥¢¦mp²\¥szl{}n©a¢qqbs²¸hx¦~w|ymixixsnt]ddnmeh`JZXX<HG@U3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^``][ZZXURRQF:2230/++(@QRTUTSTVWWXXWUVVTQOQ[U%!2AH$)%s¿¿»ºµ¨¤µ¡££©§®ª«¥¢¥ µ¦¢¨§°£«£¤£ª´´¤¥©® §¤§µ ª£µ«Â°©«©¡¡ ¦¢¦¤¦«§¢¥§¾¬½°¬£°³º¬´§©²¥¨z¨}|°w¤¥m²o¡|¡§¬
®
¨ ¡{~«ªx y¯]£|¦§d|tk®]¥kq
]`[ n¦zzklb}tmz`geqogghCY`[=KT2U8BBC7$$3+''3, /6674359@CFIKMNQSSSVZ]_a`aaa]][ZXSPONI7052.*,ATVVVTTUUUUTTUTSTVVWXVUUQHFIJ#((¼©Æ·Á´®¸¥¤¤£ ¯¯ª¤¹ ¢ª ¯©¡ª©¤®°¬¦§¬¢¡¦¢¥¨¥¶¨¿¯¥©¤ ¦¥££¨««£¤©¨¾¤Ã¬ª£¡¬²º«®§ ³¯©ªv¯~
}ºd°e} ¦¬°
¥¤¡¡
[lj³`{{±lgn°[}´[¤kÈ¢e{¼YvµZ²}R¯z¬X¡m¨{x}ds}bwt|ajfqmfeeOUc[BT^>I(>9=4!",%2. *1/045799<ACFHJLNPPRTWZ^```ab^_\[XUPMJGC553./@UZXWXWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³²·½»´Á³£¦¥¶¨¡ ³³©£ ´ ³¨ª«¯«®¨¢¯«¨¦¢§®¨¡¥££¥£©²¨¼¯¤¨|¡ ¨ ¨§¥¥£¥©» Ƨ¥©¡«´¶®§¼®¬©£¯¤¸Ãº
§¬¯¦¥ª~սªb£¿½|~£×º¸µ
½¾j£o«mz²°Çj«°½xw¢¾»t¦yyc}zdfy{`kekjbPb[Sj\@TaBN)=:4/$%2 $(0496677;>ACFGJKMNNQTW]a\__a^`[\YTQMIC?<A?5=SYXXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ¼³´±¿¹²½³¢®¦¥³¦¥¾©·±¨¡¿¦¦±±¹¨®¥¦¯¬®¦£¬¡¤ª¡£¦¨¡©¢ «©¹¨£{¦©©¨ ª¦¡£«»©Å£ ¯£«³µ«°ª »¨¯¯suª¤·epg¬mow¤u®pq§£®¤rmmmewnmqyiqigqhigpd]cjoY]g~w¦`bqofd¢|ufwhjy~ydlcflbKdXJkY:QeER'K:+# #,)-2.5:457:<?ABDEHKLMOQSV\WZ\``a]][TPLHD=:AB7MXZZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨³ªº¹²³«©¢®£²©½±ÃȾ¶ªÀ¬¬£ §¬º£¤¬¬¦©
¬¥ª¡££ ¤§©£ª ¥¥§¯º«¬{¥§¨¢°¦¢¬º°Á¨¤³¦¬±²«®¬¨¹£®¸¡¨¥¶¢©ª³£« ²¢¡ ¢ ¤¡«¦¤~gtvtq§l{ phvpwv|zjlddocU`X@i[HcaOZ+F=+&!740.!%2(*699469;>?ABDFJKKMPPQWTVY^_ac]^UQJED>9=@ASX[\YWXXXXXYXXZ[[\^__`^^^__```_YY`¥©ª¥µ·®®¢°¤ µ±«Å¼Ä»¸ª¢¥¥°©£¶§©´¦§¬¢§«¤¡§£¨©¦¡£§¡µº¨ª|¡¥¨¶£§¬·¨®Á®£·§¯¯°ªª³¹¡¯½¦£¦¶¢¦©£¬¯¡£±¨¯¤ £©«¡ª
~fuvysj}¡ yqryq{jnd_pi`[`YmcP`dP[:GGD=2==7.*&+)&&406658:==?AACHJGJKLMSSSUZ``i`eVPJACB;9EMV[^^[Z\[[[\]]__]^_`aabaaa`bbbdb\[c¤§£°³¬®£©§ ¨µª¤³»¯¬¬¢£z¢±¤¥°¨¸¦¢©¢®£§¡®«¨¨¨¹¶¤¥y¢¨¸¤¯µ¢¯¯u¤¾£² xz «²»w¤ª~d\bv¤~n³£§®«¢esyp¨l¢§e¥
wkvq|ai[vghr{¥dywinykpe`vokkh[febboS[>NNNRG=@TB91/&4:316678<;>@ABFHBGFIKLSTUY\_hfgWQJ<DG;8UR[`ab`^`_`aa_\]___aabcdabaaedchd^]f¦£¡°±¬«©¥¨£§¤«µ¯±¦ª¦«s¯¨ª¦¸ £~«£§¢
u®¦§£º´§ tv ¦²µ³¼§¡~§¢z£¯·§
±©¯¢y¬¢§©¨v¥z¦{±z
cympyq
txht t| ~j
kx{qpgdwnilk[ekjes[^ITLQ@E5.YTU6)!09=>643568;:=>>@DH?IEJKGRXZY[aahfYQH9EL;>bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah£¦®«¨¬ ¨°¦§©¥®Æ½°¡¦¨µ«¦¡¾ }
«¢ ¨¢£¹²§
pu¤¬´´Êª®·
°±®©¦|¨r{w¦h¤y´¦¨Â«¡q¤}
±¡|¡ |
ms
zr|t
Åf©¢k¡p
hwt{vghupggl^colglXgG]QL2E46M`c7&3<DGD:64658;8>==>BL?NIJLCPZ]\Wb^jl\QE=KM@JdY]cfhgbbbbdc`_babcccdiicbbbecafcbbi¢°¨©¨¥« ¤¹°ª«¦ £¤ª£¤©¶£¯ §¥¼ y«¡
w ¤¢¸¥bm¡¡¨~¡§ ® «¯¤ª~¢vj«uM«x¨§ª«}¡{z§ikg¶}n`dY~{dhr}yl]{m_Sp\_ly`Ye}q§ªk£nr¥piel[m{eY_bWPovemtrjjo^jomliXiO]WE9A4GC^k4,ICQMN=84859;6@;;>BO>QRLMBJ\]_W^_cv`MD:MOMTb\\ffiibbdbddbab`cdcabikdbddgdbgeach ¹¡ª£¦¬¡¶¼«®¢ ¡¥ µ¢¨ ¦´u¦
¬¤¨¥°¦¢hn¢ ¢¥£¡ w§¡§©
¥y}}¢przym¨{¢sv¦f~v¤_z}s¢n·´ºsµ¨dƸ{p·q¤cs¬«`}j³~n}q£ls¤s¤_³p|´ts[²jbosuqhoXklrsf\i^bKD=D5QAYq3=SG_JR=<395::6D;;@IP?TMNQ@E_^[ZW``|dHC8LWUVbaZffkkbbeadc`ab`dd_`cknccddhdbgfchh£¸« ¤¸µ® ¢££¥®±¬ ¤«x
p }¨ ¢¨¨¤~kz} w¢ r¢©¦¨«®}z z£xs} ¦¢d¡|lhn{§}rhs©sªg]
vhªj¸f\¨pa^§vuhunl§\¨~w»k~ª[]´g\nqywki[qjxyb_fXbAPEN7VBRn4KZZ_NZC@151;;7H?:CGT?YRY]>Db^V`Qac}iEB9N[]XdfXfgnmbbe_aa__``ec^bdoq_deekecihgkiª¶¨c¬º²°¬¦¨®°¨«¢¡ £jq{z£
¨£ iy{¢ ¢rhp©£¨ ¨}°£¢¸v£³¢£xz«¢q¡|
¯µ}k¡x~´££«¨||~sªZ]o{xbL~zz
cyBMY¢jq|muy±³§umq|orj¤]vHec`sp}}ne`lhv|cdaQ^V]TV@YEQgDSW[bX^ID=B8?B:IE8LDWAVQ[VDFb\Z`K`m~qEC<U_bZejVghmobff^aa\]^ahb_edvl^egfldflhhki±®S_ §³¹³³©¢«©¡«¤¡¨¡w
ny
|r s¨|l
q¡x
|¤¡£®}µ{¥y©¡}§hvm~s sq|
o®}¤¦£o^¨gu£co¥aÓ|zxrsc¢
~¢r¢uk³`sª²¨¼wm~¾¦©´^n}qos¢r]£gt¦ah¦mÔ|owykzwsm©¤g`eypkgfdmuxg`bS[eQQaIWIT_WS[ej\dPECKMJKBJE8P?PMWSXORR`feiRcwywIFEc]dZgiTihjocjg`c`\]]_hbahe|d^dgdkdjmghlh°«T\K~©¯±´°³£
¨ £¤¨ ©
{p}h}wol}£ª
yvnw¢y¢¤³¡¢¶z¬§¤®¥p©
|¤¢r¢®¤®¢v´µµÉ¡s`©myu¡w ~oLf£pr¤{ytal~ kqd`rti{i³µ´Æ¦s~{j«ultwiztqPD}³^jvkxfjgbttqnV^TYhORhIULYRU\gknVgWMJAJMKHJNAQJPdcimetrs~y{nu{{TPOm]h[kiRjhilglfce_\]\^ibdhk{_]dhcjfomeile¡¯§f?¡²«¯¯µ¢£©¢¢¥¥§¥yjye~ yui
z¥¨z}xp¡y ¥¨gnxl¢d|q¥wpg§{¥zrv¹n¢b}¢mri«ju ln¦`ihu¢}`
uobh e~iuocfnr¢Z_[c¡n]o{srd¥mw¢dg§hsn¡oSo _d§T]TmmskqmphkxskoRXWVfYSmIXO]HXihsjYkVQREV\LXRaThj^wuz|p||r{rvv^QsagbpgPjhhklngdg_]^]`kcjivu]\cicjjslfkmc¥¦zetm§®¤©°±¦«¥¢¡¢¢{qh{st}{d|
¦¡«
}sh¥} ª§¦x~¥²¯¥xz©t¥n¤¢¼n|¥¯|¥zq¨ g~o«cw¨l©¢uw«¦k°kv³©knma«ªv¦w}
¥ iv¬g·sw¾¤Y¦«aurso{tqbj~nhmSV[Uaa\kM\R]I]mmv`[qY[`Zgsenoqcqt`wz~yrys{{vbxdcnsdRlgholrifia_^\bkbmlzo\\bibljwmglnb¦ª¤©ª¨§®£«¤¥©
tzo}ttrm|{
¤¥¥uol©«£ u~y®£qx{r¦q}}zx{~~v z}k
[yxqyphn~qtq
e_wusuoynnm
^wixf©~t|jpv|
vmlfsy{x[jXyhnwrqowxo]lnigVZ`W\ekcUaU_Q_pwyljvejkjv|qrtsaoubs{xuyux
}{mldyn^Wnghukxjijd\`ZcjelpunZ[bkdllynhloa¹©§¡¢¦¤¤«¢ ¬ ¦¨~r|}~ztrp
{}
x~¢{¦
wr
ª¨ «~~¨¦xp{o~¨
p}qkp|hm]sqtkvsYrn}~i]id{
_ix{{vhykaqrw_s§fnwp
yoefcyz[\ifnv[{xwtmsrf\mklbYY^ZXlq[_`Z^]ft}{tosckkj{|r{xtdmtgl{~vz|{zz~o{}s~ysiT\qiluougkhd]aXkhkjqrmW[enlgszohjm`ª±¢£¡¨¢¡}¢¥{|r|v
qor~z¦ xz¡« ¢¢££ª¡§¦ |x§~±¦²¥k|vwe
|
w|yu¡
~vptx¦
|vk|yjrh`sp}zwvowt]^ohn_^Z\]ShqUc[\alhu{|rnpdkji{mxqioplf{rx}zm|zx|~zxNdvksmpzdkebb`[tfpfrrmU]ltmhyzqgikeº¢¡¤ {«
|x{mxr~mk~z|©r
}{ª§ ¢¦ ¦w|¥{|©¡ª~ox
qt`~u~
myut¢
t||rr{{y§w
|nk}{mhlmg^yh|{vtuu{w\`p}nu`cZ]^QfmSeZ]ajivz~pkldkjglslltoxnynv}vr~{{|{`i{juhidjc`i\duhobunlTcqyepzzseimm·¡£{x¦¤xz
{m|~xs
}|kh}|~|¦p ¡
|¨x£¡¡£¡¤~
y }|¤ ¦~~utpv`}r|r
hwqx~s||py{
z{¦|
uzer{xzpljf^}sh|uus|rj^`tvpxdcY_^RkhTdY_agjvxqfkclhejm~hnqk}wzks}tv~|{}jrnsiahlb_qVtomn`xhmWjtvcu{{rbjny²¥¥ |v¤ ¢x{~~qztu
~xgc}x}y}o¦¦
v¡¡z~¤zx~s¢¡¢~|vq}mzd|
pleuo|}x||{q~xy
¢w
v{v_xw}s}wflda~ijwstt}q|bcasnusmaZ`^[kdRbW`ahkuxpbjcmeh|lhthloh|xmqs|~z~|mvttmeljacuViqn`yglbjvpfy|zq`rl
¦¨}wªyy{}|{xtxzs}d^}
t}}}£ ~rz§ t§tlzo£|zqykul{}~n
wo}~drj{ty~ux}}
¤x
t}sun`{uzq|oancd{bnovrwwstav_oluno\[_]^j^O]Wcahmszk_iejchwmflhilh|zwns}sz}z}|rzxxnlkh_iqchqoewhnlayhk}{xpawmª ¤¨}w®}w}{||vwptszo
|~|`\~szz¤}{¤n¢¡ogz
p¡|{tsukqnu{tn
qt{|dqly}}ttyo~|
¨{}~
w~po
chxtuo{b^p`jt^qjzxxlrpex]mlsmsXZ^_ajZPWWecgqqf]ihgbgqodigejhzwtn
t{u
w
|x
zw{zryjk_phtkromqgole|cnyvqlww¢¢¨¡¦tª t{v
wxrs{
kroymvnq[Y~vu w~
m¡
j
£g~w~||nvolmnp{
ispwtxfsov|zzwtp{{£|wxxnj]rsqpoxZ^p`pj^oi|ypmmjlv`pokrmYXaaanXQSZfgcupb]jmdbfkm`ff_hjuqrpuxux
ww{{vjqc|b|oqltjholvw_qy{tut~¤§
uyrxtprsqulolumv}mnUQ«xvry xz¤
|r
ig¡qw{z||kvjnkklz~ay~vzw|xgtlt{qzpwz{~
}|x}vpiky_womkqsV]obq`_lnypgpffsthqlawe]Vfa`rSPN\fe]xp|^\hrbbefi_hd[gp~pkps}v|
tuy{xs~{ywfrj`~ookz`jntt_t}yxts
|x °¥vtvspo
spqokivmn}|mtsRNßÈÖ|ptuw{r
¡~xz~yvhl£
cq{zy
{~l{erojkyy[yz}~zyhsks
}l~o}z|wxysmfpljtohismS^odpY_kqwfkjbfxrppc_w``Vk_]vONK`fc]yqt\[ev`aeecafaXissnkqv|tyuv~s{~r|~vesm|e~npkZlnyysavz{vrwwy®
w~|
twpyqnomn~rddxp|mz}jhlc¤ÁÜ®ï¡skuu¢
np
£
{uwvvn}£
^l|}
v
}}k}dwujmxsWz
z~
~xesj
kun
zutxusqguybtmobhugR`qgkU_nty`rc_h}prn[crabWnY\wMMLdfa^vsm[\dx^`de
_cb^Xjrknkrv}swxw{q}~{t~~shuqymzntpXqzvyqewyivr§£|pxy
¡{{rwpsjokil|t^`xv{pu{g`e|ëÚµÉÃÜslsvip
|{vxrvp
¢ai}}q~qwhuriswkZ}
|uatl~}nly}}orzulpkrx_sin\jv`RdqhfS_pvt`o`]hqsjWghciXmW[uLJLeg_brs
h[\ey^^dg{`d_\Ykneojsw~sr~zvzs
|vw{vlvuyxtnxz}Xy
qogywdv
q
¡¢sorw}{xqsnodr~hflww[_y{zqqiagaÕ¶¦xnqw{pj
{h||~
zu{{puv~ag}~~m|tkmvtsvukc
~|~p_sq||zqfz|
~npzumnjlz}bhjiXluZRiribQbrxlae]Zjmsb[g_el_nTZoNHOge\gnqlZ[cr_\ckwde]\Zllcmjsvqo||txx
}uy|vowy{pm{w^tmi{ssgr}r vv~mv}|v}vqoljat|gbiuzZ_w|zmq~echhW^qr¼Ãuq~rrj{|}|u
vw}qu
ru|f}
r}g~{x~|i|veoxxrvslj
xk^rxz}
{~riyy|}nm{}wtnhg|vc\pbWorSSnshaNftxe`]\XnosYea^jn`pOYkQDSgaZknm|nZ[^lbZcovcf\]`licljsvqn~{tu{|
v~xtrxy~oo|qiyz~mm|vkjwtl
n}vjx~yozspljd`t{h_eqzZ`r}ygqzaee±²wJbZ¤ÙÐq{w}
nk
zy|xxoqt}zix
¥o~vy
p{}nxh
xr{e}~ucprhxpou
{vxyk\q}r
}zrnq
syxnovzehj}p_YwZXqmNWrsg`Klvt`][[Yt}roWg]fjq_nNWhQ?Yg_[pjgyqZZYkeYcpy_h\^emhfliqwol}uo{~v
qq{|yyujzko~t}or|{onxf¡gogz~
|ixrklf_aoxm_box\dkzaqv_eeÔê¾2:>qy
v~ml
v}
|xnvwo
ku{tey§}ntvy~{wlri~xm|{wbyqdqh~mtqt
~ru}rp[m~tx{|xzqlrytnkwuu\ihwpYW|SZpeLZrre[Jpwn\ZZY]t~uhYb[genciLWfQ=^f\]ue_tpZYTodYdqyZh^_gmgjlipw}li~yn|}zu
pnx~z{h{}jt{r{sw}yx}|kl~kh~{~}kuqghc[bgrn`aksahpyast^cd n\5Y¯µti|v
svpl
uyx|zsgv~~oq~hvymey¤~n~v||p{}{h~mk{zizvr`w~qdrfumt{
|nwy|t~mXovtwvzxsn
r~}~znnjnun]gfsqQ[{N\p\O[rpdUKsxiWYYZaqt`]]`gdhifNYhM@ad[`va]umXWStaZdorWj^ahkgmlipw|kh||p~~{zwq{oqw{j~{nwyvw}x~~zm
£{uyklx}{~prpcf^Yg_op``gpfjotato[adjv{¾¦£È¸q
s|xsrro{tutwyyqcwzirvfwucj|}r~syx{kxy~ugzhkysizv}h`w}jktg{iv~z~~p{v{t~bVw}rs|qwxpp}y~}vviqimrp]hcsnJeuL^nUTYsnbQOsx`RXX]bps[a]hedcjdQZpIDda[cp^]whUWUw][enhVk^ajgeoohpvzniy}r{~x|v}pvrnw~p{wyztxzuo~}
zw{gt
z{vgon_d\XeYmr```plkhn`siY^dmw©Ú©Ç²qxou{zutt~wpqmtxtk`zyfqogvm[m}y}x{mut
{
ltvmgwem{umjvw|`bxzhtub}zgt
{tuqz|mYVt~ouyltxku}{}x{s}sgtenms[j_udHnnL[bWVUxmbPRtvWPUX^aqo\`cmdc^nbT\rGBf_]fh^[{bQU\u[[gkaVj_`nffkqhpuxtku~vx~w{s~oqtqu~
{wx||
x|}~{~svyzvty^}
yt
w{bnl[b[[aVjsc`[gnofqaqfW]ck|Êι¢jmmlqq|~{
zysyuu{jlucuwof^}zerkjqcXl{
sw~{nqq
{y~qqo}fhqbmxqjkqw||y\eywiuxfvgt|qio~yn|]Xrmt|ooqvhww}qzt|zrfsanlrXk_w[InkMVU^TU{kaOTurPQTV^bt
h\`ljfcYnaXbpGAh]`f_]V{^OVdpY[jh]Wh`_rfkhrgprwxntzx~yur
pp{xwuyz|u~}
~~}|xvyw|mvycso
ytcnjY_[]]Tgse`YdqqfsbkeW[`iw¾®{ ·mbshs{qy
{}wxrvo{vejn`usjb^~xyfq~hjkZVox£qqxums}xtrnhy`jm`mvjgjkywzw[g}|xer}mteu
ofkzumtb\o|ku||fu}mqgu~x~r}kzz{xpflbn~mmVk`wUJjkORNhNY|hbNUujLPTU_gvf]`qhgaWi][khJEkZbdWYUyZNVmjY]le\Zec^tfmdqgrouwp
v~w|
}usnsxzzss
y}v|{~{w|wwziw}|lrq
~oflfW][\[Tdpd_WcruiupeecW\\hportddx~itussxyvsunkzpagkgtnf]_}p{~imwfidUVro¦|{vs{s|zn{{
v||tprlgu\mh_ltdgfizo{rYgwugpwubw|nimzqfse`mzgsw|~buvikqtzqyys}f~xwncfbn|mkVjbpSKikOLNpG^{faMUtcJNSWajv~e\gsif`VcWbp]LKkXcaUTUsVLXudZ_ka\[ce_wfmbpisnrttww~z}u~
nrt{zuq
zut|
}~{~v{£¥y
lu|{uzn
sy}unjheV][ZZSbnd[Xbs{ihmi`bW_Zijkogkahyxjsttm{}vum{hjyj_enhvgeXbwi~{oiogf]UXoh¨wz|yuo~osuywt
ujrvghn[ld]lr_gaixh{mZmrsio~yw`wxrqoyrcqh\owdqs|xbspgjxsrlxwuwd{wvoddcn|}klUibfSKmhOGRkEaxgaMSq\IMTYekw{e^mqid]V_UnnWKThWf^XNUlTJ\y_[_k]]Zbe`zhlaoounpwuz}wzzxz~qtt~zvt
}}ks{
}~{v¬zlrzvuno|sjomddX_ZYZUbjg\Z^ui^nl\aV\\kfqt}ii]kvugtwql
{}}yvrlzhixf]dshzwccTepg
wwfhj`WVYgc§n~wzpp|fyoz{vq}~ndusdhh\kb]oo[g_ludzh]torkq{}uuat
zwruuaplYqtbqr
|udrlalzojizxurf
uzzupdadns~ilTi^]TKscQGVaGbvfaKToWJLWXgkvzdenqfcZW]XveTJ\cWhXYIWeQHbxZ]_l[^\ad^ij`otxmpnvyr|~uuy}tuuxzz}~jsz}~
zz~|sq®{{~frzt||vrol{}lzbpobe]eVYYVcfk`]\s
hXqnZ^WZ\l{cpwvlb[lrsgtuply~ywnnteite[gufvvz_]Refjt}bci\TX]bc¥hxt
xmnygxm|
{urx|xhevl`f`^j_]skYe]oobze[w{knnpwxstdr~zuor}rbxd[opaqq|sfqd^nvidgyztnout}sqb_fno}djShXYTMw_QJYYHbtdaITmSILZWilq{bllscaZZ[av[SKd^XiSWGY`NGiuX^am[[_bb]
hhanxylokvym~vtttrwvw|}~~~px|yxy}tsp¢{{xduysxulto~ly|pr^po`gblT[ZWhcmf\\qeRrn[ZXX`lwciujj^Zmsqlsssj
|~|wnnldiqc[jrdtvs[WSdarr]bc]SZ`[cerq
tljylopz|{qvrzyydeuh]bZag[^whWb]ohaw`[{vjirnwssthp~urjp|mfwW\kmbqszsfo~[`oqb_jq}llt~sqxkpa\ellzagSgUWRPv[RPYRIcsb`GUjPHPZUkkk|emoqa\ZXYlpWRPfVWiSTFZ\OHrtX_cmcXa`a]jcdmyxkoiuy{k}|y}nqowz|t|tw
uspuo¢t{{exnn{ofxpzlsvrk^tnagekR][VgbllZ\qdOon]VXUgjtgbtee]Ymtmpuuyj||wsddkna\nmcsxkZTVbcx}}q
]c_cTZ`Yccnp
sjhznesvs|lztuoy~u^frc[^VbdXaueU_`mdaq]]~phisqspuujm{qrfn}proS[fjfqtwsblvUbqj[_ne|emv|srsjm`Zdjjw^fTdUVPTmWQWSPHer_aFXiNHWTVmhd|ikxkbW\U[tdSRWhQYfTSHZZPMxw[_eliZb`^^nbfkyunohvvl}{~krgt{u}s|
{ss}vn¥svwmz`d|pfzsylmqvgd{lcfghS^^Tg`lo[^nhNjm`TVSogskewde]Xotlrzwrl{v{zkaelm^`ojepx~gZVX`kx|{p_b^gVX_Wdbkq}wkkxl[vqlziusno{rXjn_Y]UacWdqcS^aiablZ`~lfksunmwvkh
zmpfp|mrmcYahiottr^ilReqdTbnbzcqv{ukpmk_Xaght\eVaVSNXeRO\OOHep]cFYiMI_KXmd_xhn~d`U^T]t[TR`fN]aTSJ\YPYuv]_fmhXca[^pcgjwqsngvtzrz~|yntlst
y~|sstwqn~zz}~~}}~~}~~~~~~~}z{|~~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~mfggggg}
]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDBN¥¯®°knnnnojfggggfo
}}{{z}~||~}}}~}}~~~~~
g_```_^yS7¤¤¤¤¤¤£r]____aR455553A©¶´´´´·|ehggghc_____^j|}z{z|}{|~}}}~}}~~~~
|y{z{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{{|}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{y{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~rtx|||{||}}~~~~~~}~~~~xrvy|}|z}|}}~~~~~~~~ssvx}~|y}|}}~~~}~~
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxz}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvtuvwuqrqnprpghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkiffggghhgmgjghehgcbbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__ac_\_]`]^Z^]YY^ba^^ZY_[XWSNMLKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSTPMJMNPROMPQQQQRVVQQQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTtsuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPPRQPNNONONOPPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKLFDFJKKKHJLLLOMLLNOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBA@@CCDEACEHKOKIIJHHJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AE@>:;>><ED=?EA?@A@DEGGGGBDDDFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@;;><;<<<HL==AA?BC=ADDFCFFDFIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprtusqrvyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<98:<<>=;;:8:@@AB?A@CFDCCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqusurqtxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::979::78:9:;;8789;:8<<=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==?@==;Ke@==>=<<<;;:;<>=>?@A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCDA?=>@?=?=kxT=CE?>@=;===<;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVpoqssttuyz{{|~~~~~~mLPQNOPNNOPPO><<=>??@>@@???CFD?<<=@MLFHwuY7<:==@=:<;;<;89;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}|~~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAAB@InP;=d~uzvS788:<>??<;;<;::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC?W{yRe|xR<=?=BFAD?;<=>?==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy|||||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCE@Ytw{|{L?@C?JR=MG<<=AEABBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{|{}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA?Rus~{{~b@CCE>O[LmhI@CEIIIIMMKECFGHEGEEEDDCA?@>>BFJJGEEGFFJNNKJIGGHKLIGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EFku~y
}JDFDBc~
~XGHJLLMOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHIHGFEFFFDFHGEEHHFHGHFQnnpqrvvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJG]xjABVt
WILMLMNLJGGGGDGGGGFHFHECDDFEDDHHCCCGJJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrswwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLLX
}Sm|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD?>?DFHDEGIJIIHHIGIIJJIHFJJJJIJIJJJFILLJJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLLJ^
uIIFB??@???<<<>::<AA@><998<<=;>;9;?AB@ACCB@ABDDBCFHIHHHLMLGIJMMNMJJKKJLMSloqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJJIj
fDC=88::9878896479;<:8567789787588;;;=@;999=<>;;=ADEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIg
^?7656766645763468:876565676778:77789;7578979876:<@GFIFIFEFOSRSSROPPRTepqsttwy{{{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=ECBj
H676468874578467699766765:9:::;898977779:98878589;A=>>BA?AKLOQPQOOORWkqrttuwy{{{|}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B9A{z>:88;<=>9:;<89;9:;:99;:9===?;;;=:>;9;;<;<<99<8::;:999<?<=ABDIJMKIKLWorsutvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<;89989:::;?=P
l<;>ACEEAAAB>@B@@>=>>@???@?@==?B?AA?A?=@@@>?A=><;:;99;?=;;==AACABCAXpqtttvy{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<=:;;==?@BY
^>DGIKJIFGGDFHGEB@@CECCABCB?@DHECEDEEAFEFDEFD@B?<@>=?@>???>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@DDE^
WHLMMKNJIKHIJJIECDFGFDCEFDBHIKHGGFGGEKIKIJKJCFCCDBAACBDCCDDCA=;=@hpsttwwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@?A?BCHHJ]
PMPMKNKJLIIIHJFDGHHIEEHFFELLMIJGGHIJOMNLLMKHFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?FGG=<@@87<;<=:?@>@@CFJJQc
qMQOMLLKLJHHEJIDJHGKJHJGGGKLNLLHHIJMPNPNMOKIGIJHIDIHHFFGGIFCBACUnpuwwy{xyzz||}~~~~}~}~~~~~TDAABGHB?8?@8:<8=>;=A>?@EIKMVr
_QQPMNMKJGFBGJGLJFKOLKJJMMLOPNHIKLOQQQQOOJIJJLJLFGHGEGIFEEB@BB\orwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAHLMQWy
|WUQRTROLKJDEFKONOWVQPOQSRMSTOMSLPSUWRSQPLJMMMKNGGJFFHJDDEEBDCcpuyyzzz{z{z{|~}}~}}}}|}~~UFFGGGGHF>@B=?==B?BCGVNFOQQUY|
gVUkaERQQPJ;;QSR`u]UVTVYYRXXRZfPUWZ]RTWQPMRPPPQKKKHHJHEFIHIHIirvyyzyz{{|z{|}|}~}}}}}}~~~SHJIIGGFE??AAEBCGEDELXRMTVVX[|
}al[dU:XXXSP>@VUY[c`VYbr^]V]ZVEQYZ[Y_TYgRUVXTTVTOOMJLJIILMKOMSosvxyxwzzz{zz|}|~~}~}}}~}~~~~VJJIHGFDDBA?HMIMPKIKPTSSXZZ\\x
g;~znpXZ[ZRSRVVTZZtYU}a\X]^WIV]][[_YHYXY[]XXYWRQNPQMMOSQQURassvwwvxxxz{{|}}}~}~}}}~~xy}YNKIIIFBD@A:PQQWXPPOQSTTXXYZ[n
n~fYY\XSVTWRQWUbQerXZW_hP`f[[X\gaGOZhg\[\]]WROSPPQVVVVYZnrtwvvtwxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQORRRUSVTW_ux
}{\PUXTRTRQQLOLKfyZ]TYUV]ZLTZTST^ZXWWWzkXZ[\^TQQPINOWVXZZdqsvvttvxyy{{||}}~}}}~}}~~~zxwvsu{tk~~kry^[VUTROKFCDAM^lVRSNOQOQURSRRTcdv
~ymqVIKMNKMKHJDFHEC>ScURQQNKRTQMOYQMNQSUUMQSRPOMLHCIHRTUZ\mruvussw{z{{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YVPLILIaltPQSNQRQR[RSRQRUUbs{|}{{
u_]KC?CCCCB?DPBC@C>BHGV@HNMG]iQHFOFDEFHGHBCHGHKGCBAD@OPMSdstuustuz|z{{{||}|{~}}}~~||}}vt{mh|gnqfiedb[XSQPURsWe[OONLQSQUYSUQQTROV`klrv{{xytrnstsyx~~kLG??;;>@???>kQJaEFHIEB?GLMGMQUIBE?><=<==?=?ACC?><=B>JMFUnuuustvx{|z}||}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QRZ\Y^IJPQNKLQRQTUUWQQWVPX[b]agmmlokh`nrjmlqu{z}{xz||xwxdB@@B=:BCAADB\]O{NOONKLMOOQLKLWMHG@B<977599=;;;8989?;BH?\ttuvuvwy|||}||}}~~|}}}}~}xuvz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIGPRQOMPQNQRTVXSRYTNYZ[WY]^^`e`]^qvk^`gkwooljonnlfbXGFFHBAFIEEFDMRPaWRXQPSSRU[OOQWPMJCF>::6486979:366795<B=ettvwwyy{}}||{|}~~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMLTTSQQUOLRSTWXTTXQLXYZVXXVXY]WWXhsk]Vaskaa_]d`_^YUPMONLHHJKIHFCQPSZWTTMQSYS\eUOSTQNKIHC?A9988978847578599Gnruxxz{{}~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOUVXXYSUTLKTUUUUWPTUWTUR]n^RNY_[VY;DUWT[fJLPRROMMNNNLJFPPUYSTNJOOTST\VRUSROMKIHHF??=:787659967665Wppsxyz{|}~}~||}|~}}y}}|~~~}||}}~}|rvqxxrvuqqnppopuvtnjddjppqrpnfedc\^RTZVWUTWTRXXYYYRUOJHOPOOMRJOPPPNNOTLMIPOSTU2<XMIAQ=caQSQPNPQPNNMPNTRPRMILKOQPQRSTQROLMKLLHCBA=::876;B4566;epquxx{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqniihpVVTUXUWURWVUZYXWUQSFEBFGGHFJDHJHGEHLHKHFLMPMG/E_R>3@>joaRRQ@FUQPQPQNQOPOLJLLOPNNPQQNPOJLMMKGEEDB;=<<9=G6676Dnqtvz{{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknbePSTRSUOWVVYYVQQQO@>;=?@BAC@BEDA@GHGHEFHJNKEGCORC8ENS]fSQSAGUPOQQPMMNLJLKLNOOQMOOMHLLIKKLKGFFED<AA>;@E;<89Tqsuy{{{}||{y}{z~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLOOMQSLTUTWWULLKH=987;?@><=A@B=>EHGDFFIGJJ@FAA@FHEJOHPRa\QPRNSOOOLLOMKMLMON[WKMQOGIHCIJLLJFFFD?BC><BF?B?Adqux{z{{|{zzw|xy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B>;?B@@>ADIECHGIGIEBB?>=CBAGIDMOaeQMONWKLMKLMMLLKNNSdMJLRIIIEAHJLMNJGIFBAB@?EFEHDKopwzyy{{z|zwsxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLMIMPMPOHKE?B=999:?B?<@BBADEGKFDIIGGHCC?B??@A>CECKMQTLJIMTFIIJLJKKIILMOPRPKGCKGCBJJLMOMIJIGCCCDIJMLIZsmxyxz{{y|vrpurtyyvxjqnjllnttmtu{stxronqovsnporpopstyjN`gsjt|ygosqjqheqHKDGHHGJKIJKDGB=>=:::;@B?=BBCCGFJLJEIIFGGCC;A@B>@@CECIMOGHKFHKDHIKMHJLHHJLJM]RIHDMFADKJNMPNKMJKFGGJMNQNLcnivvw{x{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoijthdoFKDFEGDEEFEGBC@><=:;::@D@>BCDEIFJJLFIIGFFDB;BCC>?CCCEGLNGKNHDHDILNMHILGEFIILNKJHENHCGMLOMOMNNMLIHJORQRNRfgfrosxu{z|lhjoekpmsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGJDFFEBBBE@DB>?>:;;=:=>CA?ACEGJGIILHGGGFEC@=EEB>ACCCEGHIGMPIFFFKNOKFHJFEDDIIHKIFHPKDIMLPMONOONJJIMRUTROWd`amgproryzgehhcilgqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutvlkuumrvqlnlerMGEEGCBABD=BA>A=::=?;>>@B?@BDGJFJGIHFFGECBAAFFCBCBDEDGGHFLQKIOJJLKIGHEFEDCIHHKJGKRMCNOMQOOONOOKKKPUWVUTX`^\iaminhrsbeffdihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwuksunutsqrjksMGGFHBBADD<AA@C<89=>9?<?B?@@DFHEHFFGFEEDCECDIFCFEBEGEEFGEJMKHQMJKHHIEFHHECIIJKMKOSNDQRPQQNOMNPMLNSWVWXVX]Z]d`hbjigk_eegcgggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxnouorsuqqiozMHGHHBBBFE<@BBD<7:=>:>:@B>??CEFDFDDGECECDEFGJEEIGCGHFHFECFJJGMJLKIJLFIIKHEKKLMNORTOISUTQSPQMNQNMQWZVZYVZ]ZXa```^hec`dehgjihjfhnllnmqpiuuxrrpupppruvpusuvu{~}xvtwvvvxplupmstnprsyNHHGIDACHE<@EBE=8:>>=<<AB<?>ABFCEBBGDCEEFGGGIFGKHCHHGIGFDHKIGKHMKJKLHLKMKINLONORUVOKUVTQTQRLOQPOTYZY\ZY[^_^`b]\ackb`dghr
hgifjmnponsqjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqvquMIKHJEBEGE<@GCD@9<>@?>?CB<@>AAFCEDCHDFDGEHHFHGIKJFJHHKHFFLHHHJGLLLLLIMKNMMOLPPQUVWOKVVUSSRQLORRQV[[]^[\^__a`ad]d`ef`ehjcssfjhglprqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrvovJKLILGBEDE<@FDDB;??A@@@DA?B?ACHBEDFGEIEFDIHFIHJLHHJJILJFJKHIJJGKKMMJJMLNNNPKOPRUXVMNTVUSRQPLNTSRW[^^_]]`_aaa`bceachbdijgvlkigmosqpqppryvruutsmmssmqrotutrpswtuuwvuuteqskpqjrvowJMLLLGDCAD<?EEEC=AACBBCEBBDAAEGCHGHGEJFCGIGGJFILHJJMKMLGKIHLKNQKRQLSMKNNOPPOTOWXX[NSQW\ZSVPNTUTTXZ_bb_da^`b^`eaabgnhbihhmxvlhimosrpqrrrvtsusssnksqmprotvrqquvuswywutucmtkopjqtowLMLKLGEA@D>>DEFC@CAEDDFCCEGCBIFCHJJHIKFDKJGHJIIKGJJNKNLILHJMKZfJd\KlSHON_nUks[qpbwcRPbvuhucav`Xnqbdvinzf[lt`ljT`wuijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqrqyKNJKJFC?@B?=DEFDCDBEEEFBFFHCDJEEJLLJLMGGMIHIKHKJIKJNLMMLLILML[sbdp^lmUMNfs]geqlntgpi_aYnnbppbkjjgoqtetno\ougpMJryvkb`keemymkvlnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIIGED?BB?=CFGBFCEDEEDCHHGDEKGGLMMKMMGJNHJKJILJJJKLMNNMMJMMM[roonpplkMPQlWNibtrpamov\YlQ\mmZqmkomxxtsip\_rkqjUuyxpc^kfbgqpjioppsspqpqqrrqqrrtlmrmnnorutqtrtuutuuzvutenukpolsrryJKGGEEEBBB=?@FGBGDIEEDBFIHHEGKJGMMNLMNHLMILKHJMIKJJJOPONMKNML\hdu]lqWlNPQmUZk^klvaldtTecNmYl\tpkilxjwuhp]^rkhWbcw|oc`ghadjuyknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtwIMGIDEECAB<BABFDGFLHECCHKHHFJLLFMKLSRLGMLHNJIHNHJJIHNOMNLJMMJZsppoqqmlOQRnYqkgooqqomt^nXat_nopoqronusttj[]tcwxrjnzhaacgbbjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyytukoumtonssvtHKHIBEEEA@>CCBGCHIMIFCFJLIGFJMLFOJKWRKGKJJNIHJLIKJIHJLMMMIKJKSkbZi^_jcrrZ_Yjo_eeUk_c[abQ`lh]j\niid[pfdp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrutwrHHFIDEDFA@AEDDGBHJLHFDGKLIEFJOLIOIL[QJFHHKMIHJJKKIHIGKKKKFHJJLLLKIKLNT[\TPTLPONOOVQOOQOOQJINPQdqiTYW[[\UY[]X]\\cfaafbce__fkmhmtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusHCEGFFAEC?CGCEGCIKLHFDGKLHDGHPKLOKLWLIEEHIJHIKILJHFHGJGGIEFLHIKNLIO\W^O\[`^OXYS\\b^MYZMXaRJYaZS`d\aX[ddVVX\YZX\VY\]b_d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCDLMBCDBDIDGGFKJKHEEJJJGEHHPJLMJMSIHEAHFJIKKILJIFEJGDFGEEJGCJMJKT_Y`X`a[`UXYT^^Z_RY\P^\YN^\^S[^c^Z]`c`Y_b[`^[TXXY^]ccbaceiekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIECBCFGEGGIJJIIDFKKKFEHINJNLHLNGHF>GGLIKKJKKIGEIDCCEAFJD@JKIO[cY^^a_RTSW_`\]Y^QY\MV_WKQY[PZ_aa]^ca`bbbcceZQYVU\Y^d`__cebhommllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQJFDGEBEGHFGHIFGJGHFHKILDDKJNMLLHJJHJG?GFNJKKMKKKIGGCD@DAHIA?IJGO]aZ[d]_TQRX]\\\_ZKW\LR\YIM^PO\_accccb\dcbdcfXQUTS[XZa^^^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMC@IFCEKIFFGHGGIFFFILJNEDKJLNJLIKJHIGBHHQMKKOLKKIHGED?EBHHAAGFDT]Y^X_Y_[]UXXP]]QKJW^X^[]VZ`RQ__bb``bb`cbbddbXOQQR[S[^]]]^__dhgljnnp{{|~{
srw
|x\SKBAGFDGMRHCRKFHHHEFKJMPEGIJKNLLILKIIGDHKQOMLPLMKKHICDAECHGBAFEBVUE\T]SV_XNTUNZ[MJKU`a[_X_^a]OYb]``_bcb]bbW__TPNPQXR]\[\\^`bffelfoow|{{}
zo
~INFDEFGDIRbPDW_IGGHDFMJPPEJIJKNLKKLKJJGEJMQQNOPMNLNHKADACDFDCADFALHCLLPOOLFMFGIJHGLLMOPILOPPSPLPTSUZYWYXXdVOSTPPONPUT\YYZ]\`adechcklpsszy{z~{}{
}KIEEGFGDKM]LGHYMGHJHGNLQQIKJKKNNUNOKKLGGKPSSNPONNNOHKE`ED_LDfcDM[H^\smOMVmYLCP`UlWgJ]WU^DLQULMTVQSTXWTXUT\TPfZhhdXSkTWVU[\[``abbb`fhfnlhrz|}~}|zr{z{
~z{LIEFFHEEKOSIKG`THJOJIOMRQKLKLORUROOJLNGHMQ[YOPPNOPOIJPQI|YYrsWPmHqnpaVPqqsPCksmqspSo_[nX]V\XUkhU]VcZ`Y[`VUWjtuu_`w`Xa\\f[_aaaa^`bgmpl`pwtx}~vxzlv~tx~|~|z~wwNIEHMMBDLLFJLFRVLKOIKRXWQNNNLQTNOQPKLOGMPS[ZTQROPPPJHZx]TxehYRTQvgtlpbnfjQrOMwmjrpsrqrpop]ezuxqqzq~s}ku}bRg|essoss|}o}yor_``bbZ``gknkblfgmw~~{xwtvzir~nt|~wx{~x|u|||ssNKF`]GAEMMHKJHJPNMMJNV^YULQSNYYLSSRNLPIQRTYWWQTPPPQKGfxlcxrmZJLUypumubnvPdeJfvqmwojfxxiWsQhzmijzz}lxzogoXvvjuup`sh|ilx|o^__cb[]bdgijdgbcdllppstsssyqrxblugry{ssuy~suzn|}yxrnMJStNCBEPPHJKJLPOOPMPZ`ZXKTWPa^RVQYSMPISTVXWWPUPONRJKrouuquqdh`VnLqp^FhyWvTKhx}x`y{sna^modRgrunmypwlvttqlm\t~zkmy|lum|kpvux^__b^]_edighee^bbiiijknokqnmjpacfdowxompsy~nqpj{ztromKK[VHGEGRPJLMKLQQQQPQW\YUNVYUfXRRY^TMNITTWWYWOSNNNQHRmHiwK`dvvUWlOnl{sajgvUKWkh}lmlx`[pz{^`zscroxqhe|ir{]TKl`vukiu{{m~xk|p]^^b[^bddgeeebZccikkrsrwgmihdg`alagsrkhlmr|kmhk{tmmkmOHJKHIIHRPLNOMLTSSOTRWRVTPWZVVTTTa`QONKTTSQUVNNLMOPJHQNPULKKSTSRTPVUQQNQQXXQNPUTXXX[[URSW[WXWZOSUWWXR]YW]VTOYRWWWXY_[gr^[[Y\]_cZ_ccdfdccbZccfffmnmuffgc`f_]g`dlhfgkhozhggkujhgilQIKLLMKJSQMQPOLVVTPTUXUYURZ]VUTWUYXPOLMVTQNUSNOMLQPKJQRKQMKKORTRQQSSIHLNOQRQQQTVRXW\WSSQQUUVSZQOSRWUTYVTYUSRUSTTWXW]Z^a]\ZZ\\`c\]bcdgeddaY`acabhhincad^_c]Zd\bma^ffgmsdihkkedcfhPJKLOOLMTPNSQQMXWUTUWWWZVT\`VWVYUXTQPKOWSPNUPNQNKSPMOUTNQNMNQSPTQSTUNKMOQTTRRQVWUYZ[YSURTWWWY[TOTUXUTYUWYTRRWUUW[YZ_]UX_]^]\]aa^[bbchfedbX_`b]`hefda^_]]^ZZ_Z_g`^]]chkagfhfd`bcaPKMLPQLOTOOSQOQZYXWXZZXYV]jdVXYZWVTTOKOVTPOTPPPNMQQPRXTQQOMOSUOWRTUUONMQSUUTTRTXVZ]\ZVVQRWXV[[WQTVVUVXTWWTRRXVUZ]Y]_^V^]^`\\``__ZbbdhhedaYb`b^^fdc`b]\\\\YZ[X[a[^]\_b__bddbd__`\PMNNRQMRROSTQPU\ZZW[[\YZ[dqmhd_[YVVXRMMVSMNROQROLPSRUZUTPPLPWVRWSSSXMOPRTXUUUSUYX[^]\[VROUVV[\WQTWUWXUSXZTSQZWV\^Z__`Ua\`a]`b_\`]cacghdf`Yc`a__ee_`c[Z\[\ZZYYW\Y\[`^`[^^a`_b\Y`ZQNONVQPTROUTSPW\\\X^\_W\^jqwyc\[VVXRNOWSNQQPRTRKQTSXZWUORNSXVTSTRRZOQSSV[VVWTVZX]^\\^VSNTUV\\VRTVVXYRSY\TRR\WZ]^]aa`Wb[cb^ac_\bab_dfidf^[d`a`ace_b_YZ^[\[YXYWWZZZa\][]\\Z]`W[[ZPOOOYPUUSRWRTP[]^][`\`U\]ijr}slg\UYWQOR[SRQTRTUTKRVU[YZSOSRVVUSOVRSZRTUTX\WXXSX\X^]YZ]TUNVWW^[XQTUXXXTVX[TSV]Y]]`]bc^Y`[eb_dd^^cca]efidf]^da`aacd_b^XZ_[\[XXXXW[Z\`][[\[XZ[^V^Y]POORZPZUUVVTTT^^`^^b\`U]^bkytl}lZUZUQQS\TTTUTVYWLRZV][\ROUSXWVSPXRSWSVVU[]X[YUZ^X_^Y\YRWRYXY_ZZSTVZYZVWY\VUZ]\^aa_dd]^]]eabfd^^dc`\gdhedb_da_a`bb_`^WX^Z\\ZYZWV]Z]^ZY[\[WY\]VXW]SOPWYQ]UVYWWUX_`aa`c]`U]^beeuzhXYZTVSV\XWWVVW]XPU\Y^]]TRXRWVTRTXRSVTYXY]^X][U^_X__X]VQYTYZZaY\UVX[ZZXYYZXV]^_^cbaee]b\`fbdfd__dbb[fchecfaf__aaaa`_^VU]Y[\[Y\YY][[[XXY[YZZ]_]TY]UNSZVS\TVWYWV\`abcad__V[`da_zuohY\ZVXUW[ZY[YXY`WPU^[`a\TUXPUVUSVVRSUW[Z\_^Z_\V__Z]^Y^VSYWYZ]bZ^VW[\[\[[Y[YY^_``dbceebdZbfcgfe^ab`c^cciddg_g^bbcaa`^_XTZZZ[[X[XX\[Z[WWYXW\[\`]V]]SPVZVVZUXVXWX]_badada^YYadb`lfh^\][WXXY\\\_[Y[bVTW^]ac\RVXQWVVVVVTVTX\\_``]`]Wa^[^\[^XVXX[Z_`\_XY]\]]^\Z\X[_a^`dcdfffbYceehgd^c`_ec]fidei_g^cbcaa`__[XY[YZZXYXW[[Z[WXZTY]\Z`\U^bMRWYVWZX[\YWY^`baeada]^Yacb_a`a_\\]XW[[]]__\Z]cXZX]`cd_RXYPXWXXXWVXV]]^`aa_b^Ya]]^Y]^YXVW[[`_]_YY^]^^a\[ZY\_b_bdcefefbZdfgigc_c^afdZiibfice^bbca``_]]ZW[YYXXZXWZ[ZYWXVU[]]]``bbxKWW\YW\\\]ZW\]_`bdbba]`Xbcb`cab^\\\XW[]_]`_][`d\\XZcec`R\YOXWY[ZYXZY`]`bb`ac_\b]_][^^ZYUX]]_`__[Z^^`bc\\W[]`bacedgeefd\efhifcab\cg`\iibhife`baca_`_]]\Y\YXWXYXW\[ZWWXOXZ]acffrkJYW]ZZ_\\^[X][^_acbaa]b[bda_ccb]\[ZWXiq`\`_]\ac_^YYcedaS_ZQYW\]\[Z[[c`cbc`bda`c^`\]^_ZXV[_]\aa_][`abeb_]S\_`cddfdgfefe^efhhgdd`[fg^ahhchhfc`b`cb___]][Z[YXXXVZV\ZZVVULXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vuuuuuuuvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{zzz{{{{{{{zzzzzz{{|||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vutuuuutuvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{{{{{{zzz{zzzzzzzzzzz{{||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||xÅÔÒÒÒÒÔ{}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½±µ´´´³³»¾¾¾¾¾½ÊÓÒÒÒÒÖº}~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}xÕçääääç{~y1333332j{éääääèÊ»À¿ÀÀ¿¿ÉÌÌÌÌÌËÛæååååéÇ}~}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}v~ywwwwwwxyyyzzzxooppppprrrrrrrwzyyzzz~||||||}
|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vtttttwtvwz{x{xwvx{wzzy}zyyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{zzzzzyzyyyyyyzzzzzzzz{||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwwy|{|}{}|xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwww||}}}~}xxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z|ywwwz|}{}~|xxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzz}|||{~{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyy{xzzy|xxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyyyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{|||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|||||||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqpponnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrqppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpppqrrqqqpopooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpooppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqqpppppppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqpqqqqpqpqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrqqqqqrqqqrrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrstrrsrsssssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz|~~|vvwwvuxzxxxxwwwvx|yy|zyy|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{{z{|{}|{{{{{{{yxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}||{~|}~~~~~}}||}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~~~~~~~~~
~~}~~~}}}~~~~~~~~~~~~~}~~~
|||{|}||~~~~~~~~~~~~~~~~~~~|}||}}~
}||~~
}}}
~~
}}~~~
~~~~
~}|
~
~|}}~{
~~}~
}
}
~~
}}}
~}~~
~}
~
~~
~{z
~}}}}~|z|
~}~~~~~~}}~}}~
}|}~~~}|}}|y|
}}}~~}}}}{zz~~
~~~~~~}}~~}}}}~}|zzz~~}~~}}~
|}}~}}~}~}~}}~~}}}|{{{zzyz~~~~}~~~~}~~}|~~~~~~
~|~}~~~}~~~}}}}{{|zzyyy{~~~~~|~~~~}|~~~~~~~~~~}||}
~}}}~~~~}}}}}|||{zyyyy}~~~~~~~~~}~}}{|~~
~~}}}~~}}}}}}}}}{zzyyyy~~||~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
~}}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
~}|||}}||}}}}}}}}}}||{z|xyz{|~|~~{||}
~
~~
~}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~||}
~{z|
~~}~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}||}~}~~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{}|||{|||zzy{|z}
~~~
~~~
~~~|~~}}}}~{|}}~
{z{ywz}
~~~}}}||}~}||}}}}}|~|}|{}||z{z|}|}~}~~~}||~}}}}|{}|~~~~~}}}~~~~}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~}~~}|~}~}}|{|||z{z}~~|}|}||~~|{{}~}~~}{{{}|z{{{
~~}||~~~y}~v{vx}|||{}}~}}~~~}~~~~|~~}}}z|}}|z||~||}|||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~}||}}|}}}}{|~~~~~~||||||{~~{|{||||}|}|~|}|{{{|y{|{{}z}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}}}}}|}}}}}~|}|}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||}}|}|}}}~}}~~|{{{||}|{z{|yzyxy{~
~~{zy{}}x|zr}{{|||~~}}
}~~|~~}|}}~}||~|}}|}}~~}~}}}{|}~||{|}zzyyyy{{~~
~~~z{y}}zzz}q~z{}}}}}zx
~}~~}~}~~~}~}}
}~}~~}}||~~~}}~}|}||{|}{{{zzz{{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv}
~~~~~}~~~|~~|}}|~~~~}|}}{}}}||{||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||z|{|}
~~~~~~~~~z{z}}uqz|zqz~}yxtt
~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}}~~~~}}|}}~~~~~~~~~~~
~~~}{z{z|{z~~}~~~~}~}}z{|
{{syz|pwuvwyutz
}}}~}~~}~|}}~~|{{z|{|~~}~~}}}~}}{{zx|vyy{qtxwvxury
~|}}~}~~}|~~~~}}z{{|||~|}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{{||||}}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~~|~~~
~~~~
}}}|{||yz{z~y{yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst
}~}~}~~|~~}~~}~}~~~~~~}||||zyvyyzyvyv~|{{{~}{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}}}||}~~}~~~~}~~~~}~~}~~~|}||{|uyyxxxyw{|{{{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~{~}~~~}}}~~~~~}}~~~|~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxry
}~~}|~}|~~~~}}|~~~~}|~~|}~}~~~
~}|{{||yw|ywxwwx{{{{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqrpxwq{
~~}|~}}~~}~|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{||{zzzzzzxsvupprowvr{
}}~}~~~~|~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyysuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|z|}{|}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z|||yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}{||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|z}|{}xwvyyz|}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~~}}}|}z}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{
~
~||||x|yzyz|}|{||}}}||~{{{zzzupxwyvu|uv|
~
{~~}y|zzz}||}z||}}|z{~~~}}|}}|vrvxxvtvu}
}
~
{||}zz{}}||z|~}|}}~~~~~|}}~~}|{xvvw
~
}}||{||}}~~~}~|||}}~~~}}~~~}}}~}}~~|}
~
}}}||||~}}{|}}}}}~~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uy~
}y|~{
}}~~~}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqspurstv{}uvy
hzrss|r}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyyrpvxqvtturstvinrotvnulwm{snzm}rsvsvmnwlpylu}}~}}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}}{}|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyqjoyxpkyszozwvvp~~~z~}|}~}}~~~~~
xyrz{pp
x
xyks~y{krz|mzyyt}vnoot|uwqy}}m~uo
zrr{|upozls|nw~~}}z}{|}}~}~~}~}~|}~~
}w
}~{|{~{||}~}|~}}~~~~~~~}}}~|{|~||
}{{|~{||}~||~}}~~}}|}~~~~~||}~{|||{{~
~|{}~{|{}~}||~}~~}~}}~~|}||~~|}|||}|||~z{{|~
{{~}|||}}|||}}|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}~}{||~}|}}|~{||{|||}{{{}|{~|{|}}|}}~}|zz{{||
zz
~|~~||}}|}}|}{{{z{|||{{{~{{}{z{~||||}~}{z|z|}
|
~~~}||}}{}}|~zyzy{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yyzy{}}zz{{}|}||z{}||}|~~|{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yzz{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|z{{{|}}}|~}||}~|{
~}}{
~|}}}~~~~~}}{|{zyzzyzz|yzz{{{|z{{{{}~}}}}||}}|
~|~~
}~~~~{||}}~}~~}}~{~{{zy{zyzz{yzzz{{|z{|{{~~}|}||}~
~~}|}~~
~}}~~|~~|~||~~|~}}|||{{zzzzy{zzzyyzz{|y{}{|~}~}}}
~}~~~~}}~~~~~
~~|}~}|~}{~|}}}~}|||}{{zzzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<D:;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>9=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<9<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÔÕÔÔÔÕÔÔÔÔÔÔÓÒÓÔÔÔÔÔÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9?CE@<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËÊÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÛÜÛÛÛÛÜÛÛÛÛÚÓÒÓÓÓÓÓÔÔÔÔÔÔÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILO@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÏÐÏÏÏÏÏÏÏÏÏÏÏÏÖÞÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¹´ÓÒÒÒÒÒÒÓÓÓÒÓÓÒÝãâââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVN<::77>C?8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÌÐÒÒÒÒÒÒÒÒÒÒÒÒÑÞìëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¤ZUVVVVVVVVVVVWNCCCCCDDCCCDD@\ÒÓÒÒÒÒÒÒÒÒÒÒÒÐàìëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;?C>6:7>>;=B?8<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÌÑÒÒÒÒÒÒÒÒÒÒÒÒÑÝêééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¥_YZZZZZZZZZZZ[SHHHHHHHHHHHHD`ÑÓÒÒÒÒÒÒÒÒÒÒÒÐßëêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<;;<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÍÐÒÒÒÒÒÒÒÒÑÑÑÑÐÜèççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©ª£hdeeeeeeeeddee]STTTTTUTTTTUQkÒÓÒÒÒÒÒÒÒÒÒÒÒÒÞéééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÎÎÎÎÎÎÎÎÍÍÍÍÍÍÎÏÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÏÎÎÎÎÏÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÑÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌËËËËËËËËËÊËÌËÍÔÔÔÕÕÕÕÕÕÖÕÖÖÖØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<8@B<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÐÔÒÏÏÏÑÓÏÏÒÔÕÔÐÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××Ö×××××ÖÖÖÖÖÖÖ×××××××××××ØØ×ÖÖÖÖÖ×××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÏÊ¥ÑÏÒ¸ÑÑÆÏÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÏϪղ¸º¸¹¯¡ÒÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D?A98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÐËÌ£¨±Ñ}~¯°ÒÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<:6?B@B:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏѽÈÂŶÕÓÍÃÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8FA?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÏÒË×¥µÔÓÀ ÐÏÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÓ³ÄÔÕ¢µÔÔ¯¢©ÔÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:=?>=<9@<<::9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÑÎÂ×¢µÔÓ£¡ºÔÑÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÑËÚ¨¯Ú¢¶ÔÎÉÒÑÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:969;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÉ¥´Ù£µ×áÒÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡Ê»¡¦§Ë×¢´Ù²¤¦ÖÒÒÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÓ¶ÖÕ²ÆÖ¹¿ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFHKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÒºÄÕÒÒÑÄÕÑÑÂÓÒÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??>>AELLA>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÒÕÔÒÒÒÓÕÓÓÓÕÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEK>>786967899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EILAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDJ;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?:8776=??@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@BB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEEC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<=9;<;DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8:87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9768579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsoupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸········¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢¢¢ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¥¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;;;=<:;<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤££¡¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::88:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££££££¢¡ ¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?;:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡ ¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¢¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;A>>?=>98;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ¡ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9;;>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:=>:?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_]]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=:F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VPQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
}§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s}~
z}}¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
z||}~x
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPFMHSWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~}}¨®²¯¯µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWLO_^\NUUbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
£ ¤£¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJCPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©¨§¡¥¨¨«©©¯¡¡££ ¡¤¤§¤©«®¬¥£¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdVOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®ªª«¤¡¢¤©§§©¨£¢¤ ¥¨£ ¡¢©§ ¢¢®¬«ª§®¨¥¤©©ª©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPORd\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨¦¥§©§©¨£§¦¤¦¢¡ ¡¡ ¡¤¤¢ ¢¢ ¡ ¢¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOWO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§¬©¤¢ ¢¦¡¦®¦¦¡ ¡¤¡ ¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvwa_\UYQUV[c^s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;><@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯ªª¨¨«°©¨ª¨¡ §©°²¯¬£¢¦¡©¥¤£¢¦ ¥¤¢¥£ ¥¢¢¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\V\hdocniib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9><B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶¯³°«±²±¢¢ª©§®·¶´´¶³¯¬«®«¶°©²±®§¦¢££¢¨¤¡£¡¤¢§ £ ¢¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxib[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>AE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ª²¸¼¼½»º¿´¯±³µ´··¯µ´µ²°¨¤¢ ¤ª¦¦¡¤£¤«¥¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxyxc[RYT__amhukpgiibYSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°±´µ¶¼¼¾¼¼¾Æº¸·º½´¯µ±±º¸·²³²ª¦¦¤¤§¨¤®¤««µµ®³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YSah`fsositdidb[LK>:8898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÃÆÂù½¿ÀÀ½¿Ä½¼º½¾´§ª±À½¸µ¹À³¯¯ªª¨§§¤¯§ª´¼±´µ¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`a^^jbbnwuvnl[bQU\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAB;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅÆ»ÄÀÅÆÀ¹¯½¼À¾¾³«ª³»¾´µ·Âº¯°µª«¦ª£¤§±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklfnuqruqf^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCCDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÅ¿ÃÂÆÅÀ±¾º¿Ã¶¶º©´³´©«³»»±±¯¬¤¬®´§ª©¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tkkndomhqxoyjia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÃÄø´À·´¼Á¹··¿À»®¥®·¼·£·°¦´µ¬®¥¥£¨¤ ¥ª³±¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{vnkiguZfrwsyfg]d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÃÃÁľ¸¾ÁÃÀľÁÏÏÎÆ«¯¶´µ« §´³®«¸µ³«©£¢©¬¦¬µ³¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuueeijg]jomxwcb``^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÏÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈÇ¿ÅÇÄÄÇÈÊÒÏÒ̼¸¶´¸¸Á¾¾º½º¼º¼¬§ª»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqobagugiitmxl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÍÐÎÇÌÉÂÁÇÁËËÈÆÌÊÍÅÆÅÃÆÅÉÍÐÍÏÌÇÄÀÃÂÉÍÇÅÁÄÇÁ»¾´±°°Á¾¿ÁÆ¿¾¸·Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlieuotb]bTWTSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<9>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÅÇÈÆÒÉÁÂÿ¿¾ÄËÈÊËɼºÕÖÉÌÈÃÈÉÉÅÅÃÂÁÂÇÇÉÊÇÌÈÇÈÍÆËÏÅ·ÀÀÀÀ»º½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrpfegdjeajmno^Y\VVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ã¹¸¹¼½ÁÇÁƹÊÊÁÆÃÀÄÁÂÁÄÁþ½ÂÀÀÁÂËÃÆÌËÅÈÑ°¾½¸º»¼¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·½Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbabccjbgc[ZZ\YQNE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶¸´´µ¿»½À¹¾ºº´À¸µ·²®º»¶À¹Ú~¼Â¾À¼»Ä¾»ÁÄÀ¾¾¸¼ÁÁ˾½ÉÄÀÀÊÀ±Á¿»¸»¾ºµ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ¾ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ §¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qc`bbgjgfiei]VVTYOSKE8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´µ±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ¸½ÉʥǺõºÇ¸¶¹»½¹º¶»ÅÅʽ¹ÅÀ¿¼Á¾¸Æ½ÁÀ¼Å¸¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¡¢¡¡£¢ £ ¢¦zxqmeefoiekhXXNKKKRILHC9=8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<97>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ··¹·º»º»¿Ñ©{º¿Ç·¹¸·µ¸º´¸³»ÅÆËÁ¼ÆÀÀ¿½¼¿ÉÃÄžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksebm_\THKJDJBCG?9;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼¼À·ª¤¯°¶¹²½¾»Ä¶··¦§¦§¶ÄÈy~
¹ÉÏÂÀ¸®µµ¼¾¸º²¾ÄÄÊÅÁÊÿ¿¾½ÇÌÇÇÄǽµµ¶Á½º»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qflintnxcgb[cQKTHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?@=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼ªª£°ºÑÓ´»¾¼Åº´nhpcky¬{{
»ÑÑÌÊĵºÀÃÈ¿¾µ¿Á¿ÆÆ¿ËÆÿÁ¼ÀÃÌÊÇÅÆÀ¹½¼Ä¿À¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_b^`aNHM?E@?DC<;::;:8;<:9<>9:>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED<AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±³Ä²ÆÙ¼½»ÇxcbjNRZ`~y
¼ÊÌËÍÊÆÂÄËμ¹½¹¹ÀÿÈÆÄÁÁ¿ÅÀÊÉÃÃÄùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw{_pc[]_^SI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸µ¼¸½iw½Î¿¸¯oYbdSlgSQQ[s}»ÃÇËÈÁÃÁÀÉÊÂÀ»º°´»½ÀÅÆÅÅ¿À¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²²¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¤¤©§¯§© « ¢¢¢¤¡¦§¯©±{}znsxsgp][^\YQEDCMIAE=G::59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯·¶²µ³·¹¼»¶»ÁÀti}«¾¶pVJVjIZwsTPf|
¼½¿ÆÀ¹À¼¾ÅĽ½¹²°®¸·¿ÃÇÃü½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸¸¸½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y}vluzpni[__YSPAEHGK@DCH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BCBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹É¿zwi©VOJwtMQly{PT¡·¸·Âº³»·»¾À»»¼®¯®³²¹ÁÂÄþ¼¿»º¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ¯µ´´½º¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬£¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsvvwnq`_f]ZTJ<??FF=FCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¸ÈÀ~sqlOH\hOOO®}]Kx¤¨±²·¾¹²µ²¼¹¼¶º¾²´´´°¸¾ÃÆÄÀ½¿¹³¯²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtvql_ca[]OHA>=HCFMC@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·Ä»{x~aI`j^QO^®^PN{¶¶°¶ºµ´²¬¼¹¸µ¸Áº¸³±¬·¼ÁÇÿ¹ºµ®¥¬³°¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wo{ourmc]fX\]RNMA>IBAJI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸ºÁ
~SMxjZVl^unoz¥¼¶±´µ²´¯¬»º¸¶ºÀö®®ª²¶¼½¹¶²±¤§§£¦©®¹¬««¥¨¤«®®§¯¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmuik][jT]\OMHDFLBFNF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³¼ªLU½d{gb{jbmv ¾¸²´³°±°¹¸¶¾¸»¿²²²®±®¹¯ª«¬£¨¡¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndT`cW\QNLH@HQDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²°¤¤L`~yly}cajktym¤·²³¯®¬®¶¶³¼µ¯ª¤¨¨ ¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨««¦¢£¦¢ ¥£¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vybwln\QhTPNGPMLBOQ@>;>39:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¤¬©´¿³³oa
oiiWc]^STYca\q{¢¶ª²´®ª«¯°²µ¥ ¢ ¤¥¨¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ £ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uu}mk{dhUQcMJHGORMJNG<E@=2?759;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡¨¡¦ÃÃUunfofW[QHEGILKNae{³¯¯³µª¦¬«¢ ¢¢¥¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¤¡¯¨®²«¥ªª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}vx|dyy`bRU`IIJKSTIRPL9?B67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥»²}a_maTHFQKIDIGEJUY\¥²°°¸¬¦¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§ £±®²±´ª²¯¢¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|uvshle[SZYMQJNOULSLA7>B68=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢£§¡gh_TGIV}~hSGCBFLPS±®¬¯§¢ ¡¤¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¾°¬±®©ª´±°¨«¨²µ·³¸²´¤ ¥¬¡¡¢ ¤¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xuiwu]lZR`HRUHFUVJBLG=KH8E<67;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¡¡wj[QJFLq § lNEB@?BT «ª©¤¦ ¨¥±ª§®£«¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼·½³³µ¢¬¢©¨²©«¨§¨ª§ § §¨¥¤ª¡¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vqmivmhm\X[BWNJGMGBFM<>L=4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·¤°¦¤ yg\RMKJRÙÙÀudVIDS¬¨©ª¥¡¢
¡«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶º»ÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸³»Æüü·³©³ª³´¯³®ª¯£«§¶±¢°¦¡£¯±°¤¥¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¥¦¢¤
{trkkurphW[QETHDJPI?EA4FH95;=6;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ nVNLNMVg¡Ð» ¸¦®¸®§££¡ ¥«¥ym ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÇÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿ÀþÇÆ·ÃÉÉÂÁƾº´ºº´»·°µ²ªº²®»·¿»ºª·«ª¸º´¼®®¹£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢}zqkchoxjdZ[FKLEDSLDBE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¢`NFJLVk~§¸ªÔÖÆ¿·¨wsqnp¦®´¹Å»ÍÇË¿ÂÌÎÍÌÇÉÑÌÍÌÇÉÅÅÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÔÍÓÐÓÓÌÊÂÆÆÇÊÈοÈÑÌÇÅÇÅÁ¼ÃÁ¾¿¾µ¾³®¿¿ÂÃÇÄÇÄ®¿¸²¸¼ÃÁÁº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLCEPIDC@5558:B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £\JBHLhy©¸¡±Ë»¯©¢yrroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÏÊÓ×Ñ×ÒÕÖÓÓÈÌÇÌÍÉÒÍÎÓÍÅÈÉÊÁÆËÇÈÉƿó³ÈÄËÊËÏÆÊ¿¾¿½ÁÇÄÌÌÈɿÿ¯³¨¢ª£¦©¬¤¥¦
zruvgcgvidVWQDMF@IQB=B<:22@<D<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<A?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢ ¢lJJLUu¢ÍÒ»¡¤³ª£ ¤ |wpkebhqoq{
vpnqtp
³Â¾ÅÑÐÖÖÖÒÖÍÔÖ×ÔÓÑÓÔÔÓÏÒÃÐÓÖØÕÖÒËÉÎÑËÆÍÒÊÒÖÖÙÕ×ÓÖØÎÒÊÏÑÌÎÐÌÒÏ¿ÈÇÊÃÌÌÌÎÏÅÆǶ¿Ê¿ÑÍËÏÆÉÈ¿ÃÃÈÎÌÏÐÏÍÊÇ͸·»¨¥«§£ª¥©¨¨|xsvpc`drb]R\IJGAEHI>;A8=4585;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¤¥ ¡¬erv³ÑÛѽ¯© wic`____^_`^blusqpolrquÄÇÆÔÕÖ××ÓÖÏÕÔÚÔÔÎÏÕÔÔÑÑÌÐÍÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐØ×ØÑØÒ×ÙÕÖÌÏÏÊÍÒËÎÐÀÆÂÇÅÎÍÑÑÑÈÌÍÀÊÌÅÓÎËÎÈÄÊÇÆÈÌÊÓÓÑÕÏÒÌÓÁ¹Å±¥¨µ®§¨¬¥²¨°³¬¬
|zqstmacim^VP_JJCFCRM?<>54:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¦®·¨«·×ÔÕÙÙÑÎп¼Ìɶ¾®¦ª¨¡¥¡´ÒÒÕ¦ }qecc__a__a`_``_`fnppnkorwwÌÁÒÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÒÊÏÌÓÖÒÑÖÍÏÕÕÑÅÑÔÊÐÔÕÖÎÒÐØØØ×ËÈÎÄÉÏÌÊÌÀÉ¿ÇÉÍÎÏËÐÍÎÌÎÏÈËÐÐÊÎÊÂÉÇÉÌÊËÑÒÌÓÑÑÏÐʽȹ°®»¸µª¶°¨¸³¿»±
zvopokadnpaW\ZIFFDMWE;@=33<=87865;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÀ°©¬©§lÀÕÌ°k^^^adb``aa``a^__^]bmroortvvy¤¾ËÕÑÖÔÓØÖÎÎÔËÍÎÅÎÊÒÒÏÇÎÍÍÔÌÎÓÍË×ÖÐÌÑÔËÌÐÒÓÊÎÑÕÒÕÕÊ¿ÉÁÅÌÂÈÉÂÌÃÅÈÊÊÏÊÍÌÐÍÓËÆÈÏÍÈÇËÅÆÁÅÊÌÍÏÑÆÐÎÍÍÌÏÅÇÁ¸¹½Ãýù³²¾±»Ãĵª¥¢
ypqkmg``phXXhVLFLIPPB;C>;67:89:57==@;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±Ç¸ËÕÕÙÚÛØÌÌÏÈÖÕĵ¯´¨ ¬jh~ÖЪ|eabb`]^acb`_``aa`_][]grqqrsqmry¤ÆÓÏËÐÏÔÕÉÅÉÉÆÆ¿ÃÆÏÎÇÅÇÍÊÒÈËÎÍÆÑÒÐÎÌÔÊÇËÎÏÇÇÏÒËÑÏźĿÆɽÂÇÉÎÅÂÈÀÇÍÈÄÌÊËÏÈÄÄÐÈÆÂÆÈľÀÇÌËËÎÂËËÈÇËÐÄÅÈ»ÇÃÉÈÂÏÁ½¼¿°ÁÉǹ½ª°²§¥¢£wotdk`^fpa[W`GHHGIMTG?J=64355=<48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼ºÍÍÆÐÕÕÙÚÛØÐÉÏÏÑÓȶ»»¥¥_mwªÔª~
s`[^^^`^`cdc_]]^_``_[Z\`krrookloo}¸ÑÈÉÊÏËÍĺÀû»ºº¾ÉÆÂÃÀÃÈÊÉÈÊÈÁÅÌÆÈËÍÉÄÂËÉÁÂÌÐÅÌÈ¿¹Á»ÆǾ¿ÆÏËÿûÉÇÈ»ÈÆÅÊÀ½ÂËÆÅľƼ¼ÀÃÅÌÅÅ»ÀÊÂÅÇÒÅÁÉ¿ÊÉÆÈÆÐÃÃÆïÄËÇÃÊ·¿¼º´©¬¤¥¬£¡¥£ {vstfiZanlZ[XRDLFBGDLDFS@54334?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÃ¾²²^pw¸´{
vxurp_[[]``bcdded`\\]]_^`[YZ\borokilposƼÉÅÌÀƱ¶º²²³²±Â¼¼¼º¸ÁÁž½¹½¿¹ÄÊÅƽÆÀ¸»ÄÉ¿ÂÉ»·»ºÅÿ¼ÁÍÃƽ½µÁ½Ãº½Æ»Âº³¼ÅÄÁ¶¿¶µ½¿»ÌüµºÈº¿¾ËÄÁÆÂÆÉÆÈÆÐÆÂÌDzÇÉÃÎÍÁÅÃÀ½³·°²§¨¨¹°¥°ª¬yvwjdg`hocV^YJFJFHJAEBEI@9:648853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÅÂÄÈÎÑÊÊÊÇÍÍÎÑÈÐÆÕÔÖ×ÍÊÏÅÉÅÇÁ¹Å½«¯`s°
y~|ttc[\]^``bcbbeeb]][\^\^]Z[]]hsqmggnpry½ÌÀúÁ¸®°°§ª¬§¸µ·´³³´¼¶½±·°µ¯²»Â¼Áļ¿ºµ³º¾À¸Ç¹´»¶Á¼¸½ÆÁûµ®²¶º¿´Ä·»µ«¸½½À½±º¶¯¶º³Å¼·®»¿µ·´Å¼¾ÃÅÀÃÅÆÈËÅÀÆÆ»ÈË¿ÏÊÇÃÆÂ÷ý½¶¹¾Ç¿¬µºµ·¶ytxfgebkn^V^`FKHHJFBDAEE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐÌÍÈÊÈÊÉÊÄÐÍÒÏÍÅÇÁÅÀ¾º¸Éµ©±hs{y~wx}ti^]]]_`_`da_dec__\[^\]^Z[[]_lpmhfjmnr|¤Ç¿¸¸µ°«¬§¢ª§«³ª¬©´¯·°²©®¦¬²¼º¶Ã¹ºº±«µ¹»´Âº°À±¾¼»¶»Ç¹Â¶ª¨°²À¶¸½°°§²³µ»¼«®µ¥®µ®»²°©¹°»®»¸»ÀÀ½¹Â¿ÇÃÅÁ¼ÆÂÈ˸ÅÇÅ¿ÆÃúÄÆ»ÆÉÌ˳¹Â¼»³svvkiablhYWW[ALKMIEAC?FA:9:995854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÅÏÇÎÁÃÆ¿ÄÄÃÃÊÁÉʾ¿¼Àº²´´Ã®©¯kc|x~
z{wn^]\]]_`__dbaccb`_][[ZZ]ZZZZ\enohfgiknr¹°µ®¦¥§§ ¥¡¥«®¤¨¢¬ª¬ª°£¦ªµ¶±½¹¯·¯©®¸´´¼¸´¼¯¸¹µ²»Á²À®¥©¢«±²³¨½ª«¨«¬´³¦¨¡¤¯©²¦§¨®¦¨·¬±²·ºº»²¼½¾¾Ä¿µÂÁÇÈ·¿ÀÅ·Ä¿»¿Ä¾ÄÈÌÊ¿¾ÄÀÀ©strji]aodWVXPHYRSKFFE>>@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃȺºËÁ˾»É¶½Ã¾ºÉ·ÁÃÁ´µ»µ°®´»¨¨cg{~~xt|swe_]\\^_`^_ccab``_]]\ZXZ[[YXZ\_fkfegeikor
ª¥¬¥ ¢¥¤¡£ª¤¢¦¥¨¥ ¥¦¬²¯¶·§°«¨ª´«´º±¶µ®¶¹²¯ºº±¶¤ ¤¦±§«¨¹ª¤¦§¨§² §¦¤¦¬§£ ¡±¬²´³´°µ¼¶»ÁÁ²º¾ÃÁ²¹¹Ã³À½¿µ¸»½¾¼ÂÇÄÂþÀÄ xpkaf_ko`TY^HNgOTHEJF<=?=:;;825536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:7676788666;::;9:;<859<:>>@;È´µ½¸ºÀº½µ ¡¦º¶«³³»³ÄÏÈËÂƸ·ÇÁÌ¿¸É·»Å¸³Ä¸³¾À«µ»±«¤®²¬ ¢a{|yutomkjjqi^`]\\\^__acb````]\[\\XYXXXVX[^_dcbegggjmo© ¡¢¡£§ ¤¦¢¨¢«°¬±¶£©ªª¬¬¤´¹·°¬³µ®²µ®°ª¤¢²¤¦©¸¢¦¦¨¬« ¥£¯©«§ª¬¬±²¸¯¸¹»°¶»»º«³³º³½´¶±±µ´¿¶½À½ÃÁ»»½{sk_e^ddXTW]IW\KPGIIFA<??@;?<04536:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÏÈÈÀÆ»»ÄÃϾ¹Ç¸·¾·²Á´±»»«¸¹°¡¨ª¦e
xrnpnkb^bff]]^]]]\]_`abccba_\[[ZZYXXWWXXXXZ^bdeeffhikr§¢¢¢¨¥¦¢¦ ®®®² ¥¢®«§¢µ±²²¬¨¯²§º³¦µ ¢£¡£¢ªµª¢£¦¦¦£ ¡«§¤¤¦«³´ªµ°³«²¹´¯ª¯²²³·³®©¬®²¸°º¶º½¿·³±
yue^e^[YVSZUK[QKIEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ·½¿¶¾¼¿²¥¤¥±Âµ¶½´¸ÂÌÈƿŶÁ¿ÇηÀĽ³¹¹²¿¶±¸º¬±´£¨}hxoqtqifdhec\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWVWadecdeddhjv¢ ¡¡¢©¤©«§¯°ª£¤¸ª¡ ®¨¶ª¦§°¤¸°¤· ¢ª¦¡¬¸°¢¡¤¢¡ªª¤¢£ªª°®¨´«ª§²°¥«®³±°°®¯¦§§²®±´°¼´¹·®£yud^aVYWSRTKM^LOKGGLLE<@><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾¸½®§¨£ª»À½À¹®´¸ÁÌÇÅÂýŷÈ̲ÁÂÁ¼»´»¼´¸¹¯®¯¨ §t{|wqilrtpihedfb\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[bcbbcbcdfj ¡ §¦¤¦§¦ ª¯¦¢¤·¨¡¡¢¨´¢¥¨¥°¥°«´ ©¡¢±±¢£¡§§¡¢£¥¥«¤¥°§¥£««¦©®¯®«¨ª©³¥¦¬¯´±¯¼µ±¯® zvrda\Z]XNLRHRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847863321./2556;:8;7876<;:;;A8x»»±µ½°»±¸¬¥§·»¼Áź±¹µÄÉÉÀÃÆÆǶÆij¿Ū··½¶½ººµ²«¬¦¢r}~vncbfihfhjgjm`]\[ZZZZ\]\[\^_\ZY[YYY[WUXWUTVUSTRU``_`a_`acdi¤ ¡¦¢¦¤¤££¢ª«¥¥±ª ¡¥«§¡¬©©¬¡¢¢£«©°¢¡£¤ ¢ ¢¤¦£«¥¢¤ª¤«®¥®²©¦¥¦¦´¦©¨³µ´¹º¯©¬rpo`[WVURGPOHZ[ORITKSLEFIC8;;=<8667:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121.-1426:8698598989;9@9{µ´´»²°«²¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÊÌȵɽ±¾Äɬ±¸Áµ»À»´³¨©¤~p{tiiilgjkmkjme]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\]^^___bdm£¡©©«¨¬§¨¦¤¥®¤¥¯© ®«³ ¥¦¢£¡©ª ¡ ¡ ££ £¡¢¨£¢¨« «¯£·¥££¢¬ª¨«¯³·³¾µ³«¯tsh[XXSUQEXLQ[XMTNPLPQINIB<??A?<65799<<987:79:;<=>;7;;:=67:;8976989:6:=99577571140-+/434988::8::748=8?9~³¨³¶®©§¯®©¨«·¶¬»Ê»¶¿¬ËÆŸÁÎÏȳĻ·»Ãȱ¸¿·¼½º²³£§xsvwnmhmnmpggigd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNPQYZZZ]]\^_`d~¢ «ª¦®¬¨¯¤©¬ ¤¨§®¨ª¥ §«¥ ¡£¡¢¥¥§¨¨ ±°¦±¼§£¬´«®§°µ°¹µÀ±±«}rsbVSVNRIFVPRQLLWMJLNRGMJACFDC>@65889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8³¬¦±·ª¦¢°«ª§©²±¥¶Æ´¹º³ÊŹºÁËÐ˱¶¸¼¾Áñ°²·´³º²±¡¡~vkglnqnqjpkdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYX\\]ajzv© ª¦¥«¨¡¥£
££¢¤§ ¢¢¦¤¦¨¦¡´²¨²·¡¢·¬ª¤²²¦µ¼µ¬«±£xsm]NQQLOCMNNPKFNNJJNMQIMJAGLHGC=858889:;69:68;99><8:>9;?8789:886857688974577820301*)-/12876:999984988A7w¶§¤¶±¥§£©¥ ¨¥¥³ª¢²Ãµµ²³ÆÆ·ºÃÊÌƳ¬º½´·À¯©°¦¹®«
zm__frpvqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXYX[]aosvq
¡£¡£¥¢s~{£
~~tz¢£ ¡¤¤¢´¯¬¯¬¥¸¦¦±¡±®°¼ª©¯ªwscVMROPMCSNLQMBPQHINRMHJJCJLFKK<749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-12764789::65:87A7x·¡£´©¦¥¨£¦¥¦¦¦³§¦´Á¸°´°ÉÄ·¹ÁΞ³¬ºÁ«Ã¨¢¦¦µ«¡|v}eWV_gfighncjhgb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTRMMJHNSSSTUUWY[]ilrm
|tNXr_;Wo|s
yz
}xqp
}¡ §¯©¨¨³¢¦®¬«¨´¢©£}rn`[NSRVLDTJPMLFNOIELQMKOJIMOFII<7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//((++-3854779<:79;86A9y· £¡¦¦ª §©¨£ª°¨§´Á¹±µ°Ç·³½Ï¿¹¯®µÂ§ªÅ©£®
{rt\QLRUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`mpi{tPB@}y`JQnx}
n~wuuwpQ{~xvhw}¤£¨©¥¤°ª¡¤¤¦ª¢ª¢¦¨tmg^[HQQRMIUMSILKOIHFJNLMTKQPOFIC<768:8:;;8:;8>?99>=8;<6;;478;7775344696/3/.125221/,')+*,4833979:99::::?9w¶£§¢¯¡§¨¥§¨¯¬ªµ¼¶¸·³Á»¶§¹È¸¶¨¨µ¶ª²¼¦§}|vomXMKMNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZntw~ji]Ut|
{vxsnuptz~«
yzhv{prmxxz{vrrwgu{|© ©¥§¤¡¤rha\]JVORGJXROJLMRJJJLPILQLRTLEHA<77;99>=:;<98@?::>=7==79937785675251472/2.,//200/-+(().1272198798775:<;7v®£¢´©¯©¥¬«°±ª½´²»¸¶º´±·º²ª¬©¨²¯¡~v
w{uonhXKHHHGEHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQQSV^u|xfw}hyvx}q|w{ok~}s{}tfv|lohs|lyq}pmuqiq~pC
wwz
}{u~£¢¥womebZXWTQJSUTOPNPVKNKNOJQNHNOKEC<;79;::?=9<:99??;8<=7<9999266856633511224.,,-..-0-+*''*.1362/876966527995y¦ ¦¯¬®«¨©±¯±«¼¸¬»¾¹³¬§°§¬¥©¤ yup{mtpiliWKFGEA@CDILLMQRPQSTTTUVWWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNPQTX^eprm§ªÀ~uyc|xo|yz}omytxjjq~Inhw~licly
ksl|nr{impsz}~{vots
yxp|ninonXUWTRQYORTTSXUMNHNKMNKCHNGE?;99;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¥°¢¬ª¨µ¯®¬´¿«¼Â¿¦¢¤¡¡sz
tntkpldkjXNEFC@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORWZQY\`§bitzepmzvtlts|jkMy
g1vsl~~tfet~
filukq|gqq{n{s}|qpnumxyujyyvjjoheXQZWYY[MPUVYXNIHEJJHGBAFDCG=998;9:9<:9;:::@<9:<98>787715234533645031.**+),,++)(+'),,226,,5775478iO8;5n¤¨®²§»¯«²°Â±»ÃÇ
yqs
zorpnodpf_TFIC?<;9:?@ADDEGILOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQVLAIQIb¯³ r|xl}mr
zyr¡txsu5q¨¡¡¢
vp||sgfbjnrmpuioXupwl{}mqmpzsvncv~
ux~~zqpok`[\^[YX`_RN[ZXWLHJFJG?CABG>CD=;97=;:;;9:99;:?<88=:8;66651121253474531./,,+)*))+**)(*)+/3DM2166643<vR7=7b¤§¯¥µª®±®Á²»ÁÆ}n
ul{txxlwnwci^IPG>@7449;;<=>@BEHLLLLNPQRUUVWXYXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~mw|~
~v¢y~
aªzw~sz]dqtz{wlgjbyo
znwtzptzwkni^w}|
}q}uw{|vpsteg_[[]S[f^WQUX[UGJJDLG?F@DC>AA=:97<;;=<::99;;=>79>9985653244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¦ « ±¨¯À±ºÅºz
vk}xs¡}}~p~zgvkRWL@E211367688:<>AEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJi{y|q|z}~v¡¥¬©H®¯¯¨sm|}hghx~n
q
Gkwryvhmk_w}
zzuv|xmow~ssrl[]][ccXfe\UPPVYPDLKFNICFCCA@CA=988:::;;:888::?>6;>7585773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|~
¡¬¡¦¸¯³¼³}tp~}}~¤
x~sx_cWKB60./23133668:=?@BEGHJLNQTTUTTVUSQOGC?80,#[>?84.]ps£UFIKMNPW`YpZ\^j
~
¡¥»±§»Çè¡¥{qv
ihouqw{v
}nvug¡«¡zzzogkx~z~rjd^ZZ]j\af_YOKNWRQHPJDNGCJDB@DDA<:87=<:<:88778:==8<=68656623445576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfx{¤¡¬¦«¯°¡xw|mpj]BA4--//./02234779;=?BEHJNQRSRSTTRPOHDB<87/9D><<63.lMPHJLKKNV`cggmu £ª¥£¬¨¶¢¨Áîǯxº|¡
¡
lpuvql
r¡¥µ©¢}kjk|sa]c^Zfk\kk^WKGOSQNMLFIPCDMFACEGB>997=<:;:987767;:6=:785456345566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYppuqv~§ ªge¤~y}
xx~gMR>/..,/.-/000212557;?CENPRTPQQSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} ¨¦¢¡¢¨©«¨¬©ªµ«¿«¶ÈÈ·ÉÑϾ pi«©¡§¢xz~¡{v«³ }¤¢¦¶°¨lsr||qh`\`^bgc`gg\QEJKPOIJLFFMCHLFFCBGDA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppu`n}aw}|ªªBD}x|
w_bP460-1/,.00./..0015>AAMQRSPRSURNSLEE@<>=GG@A@8662<9;FHGIJMOQYmw£§ª´½¸¥®¬¬§¨´«°·²²»±³¾³Ä¬»É˸Ŀ¸¥£°²¬«¤
¦¦ ¢¦¢ª¨¤
¤¡ ª¡¤©±£§·» £°££¤¢«¯³µ¢¥ªzz~
~g`h\eb]dc_ff^[OCIHTOFHLFJGEFHAKFCFFA;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicWjpXz
v
ÚÈsV|z
qna@E64<2/110-,+-1/-4?DAMUQRSUUWUN[PGGD<>>FHCD@8;<5C;=FKIGHROPW ®£³ª²ÁÇë³Æ¶¬³¿³¸¾¶¿´Á¶»»¤¸Æ©¶Éǵ¾¹´¨£´±±§¯«¤v¤¡«±³ª®¨®¶»²º¬¯µ¢±¬±µ¼·µ®µ §¨£¨©°²º¸¸§¶©¤ xuYadVeaac`ae_ZUJDELUQHIJDIGEA@@KDAMF<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AEWQJL[ZQcdWzuq}
v
~{¿»£¼´y
zxn]V@EM<6:46AB7650/6CHCQ\OQUWU\VO^UIKJA@?GKFED;>@7D7?BJJEGWTP^¥£±´Ã¶¸ÁÌɶ¼Å½³³À·¸Âµ¿°¸t²´¦ºÅ¤°Æ¹±³±´¨¤µ¶ª± ¢¢¥°®¥¬§¤ ¬³º¢©²ºµ»¾Ì¿ÅŽ½³Â·º¸¿·º·¹¬°¦±ª¾°½»Â¬º¨®«~|jWbaXjejeW[cYVTIGGLQGCHIAHD>?BBK@@MC99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm7?FQLALRWTYUZwjp
nzryb¸¡£{z||}wyueO\dGEL:Qda[^SF?;HPDZcQQYXYgYT``MSOEA?IJHEFA@C=E6B>HGKLSZT]¯¸µº¹ÉÀ»½ÉÌ»¼À¼·µ¼»·¾µº²Æ`u³¥±«½ª¥¨«ª£¢²µ¡«¨ ®¥§§¥¤¢§±´§²²¼¶Á½ÓÉÊÓÆÂÅÌÂÊÃÀ¾½¿»¼·´°¹··ÃºÆ½ÃÉ°¹ª¢¬¥¨·q_aa\Wa_hfRXaVRUIEFNKA>GD=KB=B@=F=;H@796379>489:57045/26389373526?8@>GKRTTRPPQRQJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRLQ]hllq
tmsrsÕÀµ }xz{yt}zkepuY]\Peeb`ed][XW\MdmURmm_n_XgeUYTJDAKJHFHHHHBI9D?HKTTV\Z[¹À¹½·ÆÀ»¹Ê˺·¹¶¸¹³¸µ´®¶¶du¨p^¢¬¡£¤«¥ ¨¦¤¬¥ª°·°½¹ÔÑÏ×ÏÉÌÒÌÏÎÊÇÀ¿ÂʽÁ½ÂÀÅÄÆÊ¿È䤻°µ°¬¹½yl]_[X]aYccQ[`SQKCAEFD<@E>BHB@C=:E>=J?47535;=468977022/24169775555D3ELM>510006:477@IOJ;-&**(-./,@M+/54mI0Ht?>BD@CDFKODR\Yi_polouu³¬¡¡
~|s{|ts{xlmu{hreilifjih`fihmZmt¤¼g[oh]ZYTHJNPJKQLTQILAJGKP__bfia·Ç°¹³»¾¶²Äǵ¯¹°°»¬³±§ª·¬¶§§O ¦¥¡¦¬¯¨¯§³´ÔÔÕÖÒËÏÓÕÎÓÏÍÅÂÉпÊÉËÉÒÈÍÍÂÐÒ¸°Ä¼Äº¦¶»Ä£nc\\]X`WXfZQ]WNPCBHEBI;AD>AH??B7;D>@H=46655;:687654/10146278875367C5B8?-0,1349=97,.,1;FL=),(.0007K?-46TW0DwC;B>EBACJM?UYSeWshqoyy ª¦}
|p{r}qxulqx~q{mxslipmcimpyiw}~Ë¿Âߧmcxnc[a`JPRUNY^P]]NQNTQUT\nnwr®¸¬´§°¶«½À±«µ¦¥¸§¬®¡¬´£±®¦«¬¤§¡¬¬ÎÒÕÑÍÌÒÓÔÐÔÑÎÈÃÔÑÈÍÒÓÓ×ÍÒÑÅÒÖÆÀÎÇÈ鿸Ðyne]b\V_R][OPTPNH>AFABE<@B>EE>??:==<<JA45465<888664412/03526768533;=<E=@11+/349?5901022-2EO3)/3.32=N248C}_2AtD:==I>@CFH<VRMO[u
wmwp}~¡¡y
{r~z
u
ovsls|{v|swqksrioqzyr{¾Ë~²vrvhaj]CZZ[VfdXekTX]\`c]cx{ª¤¤¡ ¡©¦ª±¸ª¥´£¢¢£¢§±¦k¢
~
§°¡ ¡¤¤¨ÇÍÏÈÂËÐÓÑÔÒÎÓÍÆÖÒÌÔØÖÖØÕ×ÕÉÔÚÍÉ×ÖÑÊÄÃÌrob`_XSYR\PJGIIJ@;:;EAD<BD>HB?BB;;9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/-.;R017/532ED28>nb5=tM99@I<AD?A;PLFKYpu}hsyr
w~xs{}w{nwpmuvx}s
|ymvto}vuy{µ<AÆ¥~|ieVICecfchjdoy[_fhknin ££¦²¤¤³ ¢¥¡© ¢±~
z~©£}«³§§½ÃƸ¶ÆÍÒÐÒÐÌÒËÉÔÎÐÕÚ××ØÔÙØÍØÛÎÉÚÚÒÖ¿ÌÌ´wvnd]YRUPYVFGJJEE=:79@AB:HD@ECADA;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BT29254/7K75<`bA<svV87AH:?C><9QECJTlnopaqqs|~
|x
zyqz{uz
zp|opzr|qnztw}|u|°tX©Â¶pnb=^hrpqpnxweioruxr{ ª ¢¥¬
} ~my{®ª¦®¶½¨½ÆËÈÉËËÐÉÃÑÊÔÖØ×Ø×ÕÛ×ÓÙÛÖÏÛÚÑÖÈÕËy{hh[YPSS]HCEII>A>=7:=?;>H=@AAADA>>:86DB755479.566435542323647553457EBDCEB56<FNSM[nfcnskaV>,4LG865433BF4=W_hLux^8;?F<<B<99D?CGRk_mdbfkvqy~
||~wyn{{tz¡vutu}toot|
zv{·Æ¤ÂɸwpeNfczw¢yyw{|vm¦ £«
{|¡¼¡¨¦¥®§µ¾ÀÀ¹ÇÉÍÎÅÍÊÑÖÕÔÙÕ×ÛÔÖÙÚÛ×ÛÚÙØÎÛÆzyfhd_TWVUMKDMC;==<9:<>9>A6>?@=?><9867CA6455=80665547745613854564567HH=DJE7925;H>;::7IP]ZRUXK9T>;95327I8=NYMHxxd5=>C==@:6:>>@EQ_Yea][htzylwvz|~}
z~
z
{u}tn|}~t|~x}xnt
~
|~z©Ã ¼¤}}s~s¦
{hGq¡¤
¡~¦
¥¸¡§ £®¶ºµ«¿ÅÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Ü·xxwjidV`[SONHDLB==>99::99<=6@>><=9:;;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8589?=DRSRX^UXfmmmiqrx{{}|z|{~uyszsm~}w¡n¨
z |~£¢ ¤¯
Wr¬\¢££¡
¤³¡¡§±¸¬¥¼ÁÇÍÇÆÏÌÏÌÏ×ÏÑÔ®ÖÕØÚÙÚÚ×ÖÙÚo|tgf\]XSVWC@ID>?>:49:;7:;:3;<?=>7;9:1:G=:27=@50677255?65;55858:57735HR7GOK994=EJB>1FCLA98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:<@;BQKKSYPTcbxlb~nmwxy~z}|{vsp
{vvut
}~¦£¦¢¨r²§¢ ¢©¯n·ÄȲ¢¥²c¤ÍÈ
ª¤£
¥¨¡¢²´¥£¼Á¾ÇÅÅÉÈÉÂÊÓÌÍÔ¨ÒÑÖÖÖØÚÔÓÚÎrhb^]]NITYABGD;A=837;<:8=649:<:82?9929I:>67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBcFv}|m~xz~z~vv|lnz|xx|~£³§£ª³¡§¥£®¢¸³¡¡¤¯£¤§§¬¯¤ À£É¹«£¦²
¨¢
t³¥¡} ±®¢¤·¾´ÅÇĽÃÿÆÍÊÉÒ¦ÎÍÓÒÐÖØÓÐØ»ryv]`U_VOHJNDBCE5>:77:?;<7=42669774=5;5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:IENED:6A@BS>9DO323565=v\<R\tiZM]S<=88567=:JFDGN[\YJf`;Hz{n
z|x
~px|~}orz}|x§»¬¨²½¯¤³³¨£¢°¬´£¸¤¤©·¦¤£©©£¯°© »»®Ê¡j¶¸«°£«¾£^ª²|}´«¡¡ ¥¯¨¡¤³¸«ÂÈĵº½»ÅÇÇÂÑ ÆÉÍÍÄ×ÖÑËÔ¡pzh\ZS^QOEC><CAB8?875>F<<5<35345454B39:BM:B;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAE@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPdGb`bpJ@s}um}}|pww{ªÂÀ¯½Æ»³´Á¼´«³¶§²®¼ª»¤¨¹¸«¦¦¢¡££¨¯²±ª¤¢¥¥¤º®©À¼²¹¥¤§}¬½°z§±¬ £¬ ¡§¦¤¢¤°²¦ÁÆï°º¶ÅľͦÇÃÇüÕÑÍÄÊtsb\Y_[MJBL@EG>A?B;:4>A<=5=6>333241A17@BN>G@CNCA=C=;86CB5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\eG`igZ]\{uo~{q~zz§³ÆÉ¿ÂÌÁùǼº¯«¹º²¶º²À®¥À¤«¯»¼ª«¢¢§ª®´°ªª¡°´§£ºº¶Á¼¬¨²¥¤¨
ªÃĤz¡¦ ¯ª¡ ² ¤ ¦¤¦¦¤¯¥ÀÄ®¨·µÉþ¶Î²Ä¾Ä¼³ÑÊȵuym\X\iSLHDLKKJAA=CD<5AD;:3=8B332263A05IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBfZNe\fTcjyr|xy¡¨º½ÇÈÉÁÒÉÊÂͼÁ³»¾§º¿½¼Ä·¬Á©¬³»¾ª°©£¥£¬³¶µ ®¥¢£´¼©¨½Á£··°«°«¬ª¦¥¥vz
££ª¥|£ ¢µ¦¥£¢¥¦¥£¨§¢²¬¨¼Àį¥³·ÌÀ¹®Ä³»¾Á¸¬ÂÃÂÀmyaXW\[KKMJFDDIBBADL:4DH9;4<7E.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQG7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>jH_XaZddV x
¡®¦£Â¾ÇÃÇÅÓÍÎÍ˼·°¹¼³¼Ë¼ÃÁµ¶»³¿¹¼®¯¨ ¨§¶©±·¢§¡«··©¥°¿Ä±¾¹³§ªµ³®¥¬¨ ±Å§}}ª¥¡£¢Z¥e£²¥¢¬¬ª§¦¡¤¨¦¶«©º¼Ãµ¦³µËÁ¸©¶¬²º¸®¨·º½¸lnZWTUNFJSNK?AGDDHGG95FM;>7=@J.32025B55PVN<LFKRLOHGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|gV;=@BFBqFiIRebLF¥¡©¦¢¯¾®¡Æ¼ÅÄÆÆÎÎÎÒʾ»¶±º»»¾Ï¶Ä½·¸·²±µ³¸³«¦««¸ª¨§¯°£¯¤§¤¤µÀ°ª¬´¿ÃºÀº³§¹µ¸²®¥¯¯¥¡tÁ~
±¥£©¡ `J¥T°¯¥¯®¬¥ ¥§¢´©ª³¼¼¼ª°²ÇÀ¸¥««±±£¡±²´¤pnf\ZNPKDPPPQ;GJIGHCC>:KU?A:=EM07544:B34NWO<JKNUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@BAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}hW;:BC@=QEWSsbWFHª ¢¨¯§
£¤µÈ´©ÆºÂÃÇÉÈÈÌÍƾ»³®¹¸ÀÁͶȺÁ¸µº°¯¯³´¦£ª³´ª¨¦¬¤®¥¤§¬º¿¨«µ·¿Á¿¾¹³²Ä±¹½¬£®µ¬º¦¦v¿
¯¡¡©¨ ª¢§nv¢¢®²¢«¨ªª®¥¤¥¨¢±¦©«º¶¾³²®¾¹¶ £§¨¥§¬©©bea_RKMGHNIUL=LDNJKBCD<QU=AABDO18=77?B75UXN?HNQYSPQUKQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=..R`MUHe^HE«¡»¯ª«¢¤££¶Æ½´ÁºÂÂÇÈÅÂÍÈÁ½¹²¯¹´ÀÂʵűÁ¼´ºª¨°¢¢ª´»¦©¦«ª¨¯§£ªª¾»§¼´·½Ç¼·µ¸Á±½À³©µ·«¿¥£¢ ¼ ·©¥£¡¨¥³¡¦¨ª¥¢¢ ´¯¥¥°«««¤£¨ ©¤¢¡´´ºµ¨µ²³¢¥ª¡w`\_]JHFGMQIMEFFBRLJBEG@VRDH=AGQ1;B7:BF79\YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:g\FCCpbGE§¤Ã¤©ª§¦¡«¶Ä»¾·ÁÂÀÇľÍÆ»½¹²¯¸³¿Âȵ¿¯»¶¸¶¦¤ª¬ ªªÄ¢¥¨«¦«¯¬¢©¨¿·¦½°·¶Ç¶µ¸¸¿±¿Á¶´³´¯¾££® ¢¢¥££¾¥©¨« ¦½¢£¢©«¡
¤¡µ¬¥²§¯§© ¥¤«±µ±ª¥ª¬ ¨hbYa]OIGJNLHEDIA=PIA<GIH[ROK=HOU4BF9>HG5Ca[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC<C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,/Mv\4KZ5,MnW<-=)#zbQ5CKQ:nRF<KxebWL¢£Å¬¡¬® £¥ ¦©«¶±£ª²µÄĽ¿¶¿Â»È¾Êȶ¸µµ°³³·Áƶ¾°¸´¸µ¦¬ª¬¥£Á¥ ª¤©¯¢¦§½µ¥±¼¸¶¶Ã²³·¹¾²ÃÀ·¸®³µµ£¥¡® ¢©¨«£Ã©¬¦¡½¢¥««¬¦¡W¦¡ ¸ª§¶£²¡ ®¢¤¦®²«©¡¢¥¥¤adYc`LHJJNFEAFK>=JB99JKN]QQI=LV\9FI=DMI8Hb\LCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWrHE6=ue\KN¡Ã¨¥¢³¡²¨«¤ ¤©¬»°¨¬µ±ÈÅÁ³ÂüÆüÄʼ¯°¶°´¯¿Ä´¹±°¹´¬¨°©©¥¡§Â¬±ª¢®°©¤§½¶¦·»½¯·Ã¬³³Â¿²Æ³º·¬´¶ª¢¦¤¬¢¨«°¯¯¼²¦ ©¨¢¤¸ ¡¤¯¯¬¥§¡£§³¦¦´£®®¡¡¦¬°¥¦¡
ae[geJILJRBC@IG;;G?99OMU^RSJ>O^]=HPBLLI9Mc\LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<v]^?[T^eq@8;HweA4£ 褪²¡£´ª³¬§¢¤²¬®©»²¬°µ´ÆÀÄõÀĽÉĵÀÈÁ´«µ¨¯¸¬¿Ä´·®¬¶¹¥«±«ª¦»´¨°®´±§ª¹²§º³·²¹Àª·²Â¼´Å§¾¯·µª¨¬¡¦¥¢£¥¯¸®²µ¶ ©¤¤ ·£¤¦®²²§«¦¡¨ ¢¯²¢¦®¥«¤
©©ª¡§
xch]kjMPMNT=CANC::I@77RO]^RVQAW`\BJSHVKH:Td\NFON[W[RPQX]GAB[PBG>NC9HGHOP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1[bZ33806p[bH05IphVCWFyfC;¤£¡¦¿¦¨¯°¡©µ«¹°«£ª´¶±°¹·¯¶¸¸Å¾Ãǽ¼ÄÁÆÀ¸ÀÆÀº©¶¤¬»¬À··©¬±º¢°²¥§ª¹© §°ª °´²ª©¶¶»¬³³º·¬¹°Âº½¾¦Ã«°·¯©««§«¢¢ ¡±¯³«±º© ¦¡·©¥£¢°±´«²¨« ¥¢£³°¥ ¨¢©¨¦¢}
jhlalnWPQZTACET@;;IA7:XPd^PVWDY^]MLRN^KJ>Zc^NHPN[UYPKTWZI?DXPDF?N@=IGGQPB=DFBM?:1D?77547?=95E4+75/251.-.,1=*'+=\p=>1.1e[d@1647gY`F(?8l}h[V;{cC=§¡©½¡ª¯«£±¸©¥µ³¬ µ½®³¸¼º½¶¶ÀÿÈĹÄÁÀÀ¸Ä½À·¯µ§«·±»¾¿´©®±¶«¨§¨§»¤³«¢±°³¬©¶´µ½¯±µ¬°µ±ÀºÅ·«¼¯±¸¬ª£±¦¥ª ¤ ³ª³ª«³§ ¦¤´®§¢®±§³²ª¤¨¤¡¨µ© «
¦¤¢
{elrgpq_FYfVDCMXDZ9HB6>]Qh\NY]G[^]NMRXdJJC\b_PLMNXWXPJVVWL=EUJEDAM@AFHHQPA;GDFK=87B=68719><65D0+80/05/*,/-*=,,%2+*5K1/'__aU150=`V^8)C3YT\gK6zfL@¤¡¤¬¶¤©¥¯®¶ª¯µº§¦°·Å·±·¿ÀÁµ´ºÅ¾ÌŹ¿º¿¹Ã·À¸±´«©º¶º¹¾´ª±µ§¬ª«¬««½«®±£« ±³®®¶²¹·ª®±¨µ¯³»½Ê²ª¶µ±´¯®§¡³ ¨ ¥²£ ¦¯¡¤¢¥§²©¢§²¬ª¶¥®±µ¯¤§¬¸£¡«¤¡¡ z
{knxmu{`EajYIHYZ={JFD6AbTi[M\`J[]ZRRRb`LKE_``QLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`U`/5(C_Q\.*B/JGP[H3cYTKD ±¨±ª¦¤¯®µ©·´¹¤«´·Éº´º»¿¾´´·ÃÀÌȻü¶½¿¿·¾»°¼§º¸·¶Â¶«±·¦®«§£±ª¯»¤¬²²§¨£²³°±±µ±¸³©®«±§¸¯µ´ÃŶ©µ¶¬°©§£¶ §± ¤±§ ª©£¥¥¥·§¢²´¬§²§°µ¬¥ ¬¨ª¸¢¥¡¦£ v{
mqwu{~\Kel\KNc\>b{GI8GgWf[L^bMXYWTXTi]OOHa]_PJHQVURKIWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANHf27'GbLV%-B.=ELQ<3rkJCC¥®¥®«§¥±²³ª·±· «µ¹È¸®Á¼Ã·³±µÂÂÎÅ¿Á½´½¿¿º¾»±Ã§©¸°¶¶¿¼¯«³²§±¦¥°¥²µ¬«²°¬©¨´¹¬´²µ¬´ª¬¨«©¸±°Ç¿¸¥¹°©¥¨°¦¤¤¯¤©¯££¢£¬¤ ¢ª¥¦¹¥¬µµ¥ª«¨¬¯¶®££©ª ¤´¢
¦w~
||}qtr~}}\Sdo^NYf\FD[G;NmXb[M`bNVWVWTYg^QRLcZ[TKGOTSNGIWS\N;P^IBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Bc;6*HeHJ+:I?3BIS,>k<GHª«¢©±¤©¥³´±´µ²²¡«½Ëº®À»Ç±´´ÂÂÑÅžÀ²½À¼¿·¼Ä§¬·¬³¸¼À°«± £§ª¨¤°£ª±ª¯¬°®¯®¬³»§¶°²©²©«¥¥£º¬ª±Â¹µ¬º¨©¨ª¨±¥ª¤£®ª¨¢£¬¥¬¡§©¢¬¥£¬¸±² ©¢ «¯°¬§¨©¤ §
¤~~
|w
tsquk_Y`ncQsq\K;|F>WtX`ZNc[NUVUWP\b^SONhXWWKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*35>10485(5/*,.30;),,'%234$,2-860)(1<]J0.JgDF8<B05EKX1@Z>LE¨¡ª³ªª°¶¸µ®«¥ªª½È»±½·Â¯°¬³ÄÃÎÎþ¿´ÀÂúÀ³ÈĬ®·²¸À¾³®«¤§ª°©§¨±¥´®«°®±°³³»¤¸³¬¬®§« ¢°·ªªº¶¥¶µ£ª§¬¬ª¡©§¦²²¤¦¦¡¡¬ª¡ ¦¤¢«¤¬¢§±·£¥¢ª«®©¢¥¤¤
£¢|zt~tw¤xj^`ngWecN?gLEbyWbXReTMVUUTO\]aUKMiWUWIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06WZ.0JgAA<<C+:JO^4D>HFD°¥£ª±«ªµ«¶±«¥¬ª©¼ÀÀ¸¸³»µ¥²¯ÄÉËÑ¿Á»¹¿¿Á¹ÁºÁÄ®±µ±³ºÀ¾³±®««¨¶ª¦®¯«¹°¨±±¯²¬¶ª¶µ§´¶¬¬¤©«£´²¨¨¤´´ ¶ ©¨«©«§ «¬©¹¶©ªªª¢© ¬©¡ ¤¢¦£©¦µ®¨¦©¢£¥¦§ª¢¤£
¢txu{xoqggqx\`sjO^VHmxUdVQbPMUTUQOX[bUHPiTVSGPYUI>IHOQPxLMV=<KD?@A<@CUC9AK=5;E13;97*4:=+-341*8**+*,))(/*&)%3;,$2)2021%/2Qb02?f=NX>C,>LT_/Jj6OD;° ¥«®¬¥®³´¯«¥¯©¨º¾¼À°®¸¡¶¯ÉÇÈÑÀ¾½º¼Â½ºÃÁ¿¿®²²±µ¼¼Â±±³«³¨¤µ©¥³³¹°£®¶±¯²º«¹®ª®¶¬ª©¬¢ ¶¨¡¯³¡´ª¨§ª£«¡¢¬¨½¯¬®¡§¨«¯¡¢¡¨§¨ª±©£¢¡¢££§©¥}
¤
xt}uxy{tszi£ui^ekug}SXp^JxsSdSQ^MMRYfNLVYeYFSiRQ?BNQaQ:IHLSIqQLS;<I?;<=;@@W<<?H73CB15:93-5::)-31--6)(+-,42#2)',%.;.&1.0-14%,0Lh:48_=ad?F1CP[[+HN9UA4±¤¦¬¤§¤¬¦´²±ª¤°§ª¸¾Á»¯§¹ª¦®°ÉÇÈÑü¿¾¸¾¿¼É¼Á¸°°µ±º»¸À²³»¸¢´¦§¬²¶¹³§§»µ¶½°¼¦¬µ«©¯£¥¬«§ª³¤³¨ª§©¤©£©§©¾«´¯®©¤ ®²£¤¤¥¤¨«¥ª¡¡¥©¨
~}
¢~qzy~|ix|zupp}h
xdahcr
zmgy]^VBWzmTaPRXKKNqu]HZ[gYEUfPD>JNDCA9HGKS?jaJQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KH0%90%,,09/,,+6'17#-/GjI14X=fcBJ7GS`U*=;DX?*± ©¥¤¡«¤·²²¦©±§¬¸Á½µ°£¹¬¨¨±ÃÉÉÍÁ¶½¿µ·¿¹È¶Ãµ´³µ±½¸º¾¶¹¶¿¡³¦ª«°µ¸µ«¼¼¨²À³º ¯³µª¬®°£¥¨©£¥±¦¯ ª©¨¢ª¤¨ ¼¨®°®¡«£¤®¦¡£¢ª£¤¤¢¦«{|~£|yk}vyxc{zqpqrxhtjgdhansmbip`pA\xlU^OQQJJMTYWM]^mWDX`O^PHMDF;7HEKO<rhKK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*K>*49&'.34.0+/4&,:$40BhY13S=e_DL6KWeO*<3OY=#¬§¤¢§£¸¯®£¯°©«¸Âº³¸¯«¨´»ÈËÈ¿·Â¾¯´½·Ä·Ã±¯º²³Àµ»¾·©¹¸½«¤´§¨ª°®¹±ª»½¤°Àµ´¡®·µ¦§§±³ ¤¦§¡¥§¨ ©®§ §¤¨ °¸£±¯¡¬¡¬¤¦§©£©¦¨¡©}||¡y
|{so}qst`yxioqpoi~qczliec`f`[rjrMM~hXZMPLJHPRPIN\_nTDX[RgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZhH*>/YX5(¥ ¡¤¡·«±¤³´ª¨¹Äµ²® ·¬®°µÆÈÁ·¿Á¹°´¼·¿»¿¯«½°´¿±½Ã¹©»º·§¨µ¨§«°³±§½·¤¼¶¯±·°¨¥§°² ¤ ¤¤¡¯¦¡¢§¯¢ ¢¤¤£·°¡¦±«¬£¯ª¥©¥¦«¥£¨¡z
~zy
~yzprwoot_ywdllkihmerjkeh\cs_ZkuiZI}][XOOJHHRUF29_^lPDXVYeMIIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<#8R=*113>D5,-'42+;+139cl84GAf[HTDU]hE.;2`T,2£¡©¥¡¢ ·ª¯ º¹¦¬½Ä³°®¢µ¯¬®¯´ÄĽ³¿º·°³¹¸º¸»®®À³´¸¯¿Á¸¬½ºµ¦¢³ª§©³«®²¢Á¶¥¨µµ©²»ª§¦©°¬¢§¤¦¢²¤¤¨©¢ ¥ ¤¹¨¤§®§¥¡¨©¢¡ ¢«¡£§¤y|
}y
{w~{ltrlltbxuhhjgeoghhdfij`hbifZe{c`SsT[[SLIGIOS@!*i^jLCVU^`KIHEC.:B<F<6KPD8:D357==895?:;4>8@L=>93)8><:9*6@3.E4(+,>0-N?.+-7,1195,&.5-80576`tB3CDg[KWGU`hB378cN'2¤£¤¦£µ§ªº·¨¬ÃÀ¶°¬¢µ§¯¯¸ÀÀ½±Á·±®²·¶¸·¶¬ª½³¯²±½¿·®»»±¥¶«¥¥´©«® «¨¥°³ª¬´º¨ª«±¥ª¦¤¦¢¤©¡¢ §¶¦¯ª®¡¡¡ ¦¢ ¥£¨ y
w|
{s~}fxokklhuskcgdctbdefeijciqY^X]mdaNhWZ`VIGHKMRX?9`liGBUS\[IIGEA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=+*,0A*JK./*+3722(57$+7.72685\yN2>HiZLYJVbfA;3AfH%5¤ ¡ ¥´±¢±¾·¡±Æ»¹°±£¶««®©¹½¼»À²¯®¶¯³¸³¨«¸±®®´¶»¶¯¸½¦µ« ¡±¥«¯¤Ã ²¤®±¯·µ¯®£§ª¥¨¥¥¢§ °¦¹¨®£¢£¤¡¨¬©©§{t
|
ofynhkjgqrk\hdbr`dgjmlgjifl\lmuqaTbhceYIFLMOXQPUaeT@VSYUFHFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24:6#3*)6.55465Z|]19Kj[M[KXdd@A1IeC'4¢°¡©²°¸À¶ ´Â»½¹±¥¶¯©®¥·¹·¸¬»¯ª«·ª´¹®¥²µ±®©±¶¶°²µº§¨¶©ª¢ª©À¤®°¶µ¬¬±°ª¢£¬¨§£©¢£ £«ª©»§¤ ¡k¢q¤v«¨ ymi~wql}o^c`gkuw~fhuifW\isnNPjdfqf^dfnli^__hOKD8ETg^JGPPUUKGS`oteE[QUPFHFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,+08>G601.*.*/668,#1'214:176Xl16Ok[N\K[fb>G1Pd=+/¤° ª«£½Å¯©·Â¸½¼§¶°¦«¤¸´²³°¹ª§¬´¦°µ£¨¸¶µ¨§¬¶²®´³¢©´«¢¤§¨¬¼¦¥¯³¸¤¨®«¬¥¡ ¨§¡¦¥§§ ¨ª£µ°££££¡¡¡¥§«rx¡vif}sx¡o~{¡ {tvlmheczlqbTmcmiqXjpnW^i[kj[pmyrhZ^FN>F^MERVWQQRWTg^LYKRROEGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82).1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Va7/(¦¬«ª¨ª¿Ã®±º¼·À¾ª¤·±ª¬¦³µ®¯³¶«©¥±¥µ³µ¶´¥§¨³±²§¯ª ²¨¤£¢¤®µ¤¥¦¶½¦¬§©ª¬¨¦¢ ¦£¦£¤¤©¢£¥¦¡·¤¤ ¤®©£
±¤yÔ¨ÁÇyx±¥·dÀ¿yy|Êq¼Å{r¶§º{l±«°yhkX±®oei¼¼nhzmrØ~Sjc¶²qu¡ªWOWaOVNFT[XQPS\W[P@\EQNDGI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww21Tk\O[M^g\>L1[]41!¦¦©¥²©±Â½²µÀµ·¾Â«¦´©¨¯´ª¯¶´¨§¦µ¦§¸¯³±µª¥¤§±®±¦ª§¤±¤¢¡ ¯¢´º¢©¨ ®¥¢¡¨¨ §§§¡§£ °£ £
°kjª~geq¦q®¡¤~w»|k¡v±_j´[¥f`fzfjxj©e¾rg¦v±j|±xtcmm§n[ EigEu`~g{£§Y_«ixzj§7J¯[WTlc[KNW_\WV;NOWV/ITSICEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:6/'$203B/=;Uv2-Vj\OYL_gY:M5_Y31¢¬§¥£¤ª±·´½¾°·Ä²¸ºÂ§©°¬¯©©±¯¤°º°¤¥®³£©¸©³²°£¥ ª¯«¯¦§£¢°£¦¢´³¡ª¡ ¢©¤ ¡§¤£¡¬¦¦ ¡µµx
©µw³·©~k¦z
w«gj±[¬{tpx
°vwqkjl|N¤XHcc~ch¦`yruS^P©mcq~b.Q¢n[Tkg`LK\dX\ZB>°xWXA#MhEBDA@A19>88:84;:9<9:A:E::;6:CB8=?KNH:5:AFB@AD<FD;0201;F,0.940,.(/3,>831/2-D1<<S}n3+Xj\OXM_gX7J9aU50³¦¦¡®©§³¬ª»¶Â°¼Â¸·Áª¬®¯¦®²©¡¯¼ª¡§µ£«µ¥¦²³§£¢§ª²¨°§¥ ¯¢¤¨µ¯¡©©¨© ¥¨£ ¢¥££«¦¢ Õ¹p°Â~Æ|Ö»|¥¤z£¥z¬yU¯{~j¹Z¹w}¦|zªy{±nt»
oO¯§ÅQ zc`ªbsrl_Sµ´È|c¤3Bv]QjhdP@XfZdaJHMlKZSOYfZCC?E?0<<59;74<;8=:<C:F:;>6:@C;6@OLH<9;DHCBCD<EF81211DB./0483+-).323971#%5*>3==Qwj6*Yi[K\P_fT7G:aQ82%¡±¨¨¥³ª¥´¨¥¼·Á°ºÀ±µµ¼³¶§±±£±³¦®¶¨¨º®¢¯± ³´° ¤§©°¨´©¥«¡ª¨°©£¬¢§¡¥¡¢¡¢¡¢¢§ ¦ §¡²nhµq«p¦r´sr¶{¤¢~ ¥~°vÒÑu[®|¤oª¦k
}}{±sx³et
nfRÈZÂ\yb_`wsb^YÊo¿uMKµSUÆdTQjcfXAOj_liPUFI9=WR[WXHC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>II:1746@>/.24252-).26,742&60;5:=Pqh9'Wi\BNT_eP5G=aM62/¢¤¯¬¤ª»¦´¥¨¶»¼²»¿·¶´»»³¥µ´¢²²£¬°¤¦º®¤±°´¸ª ¦¡ª¤±§¬ª¥©¢§ ¦ª±¦¡¬¥¡¤¦¦§¡£ ¢¥¢
¬{w¨v£©o¨¢¢~®
³\r³R®~¤q×}w~w¯w´aelZ°XKuyf`^wwgj]¯wxl5yÈ®²_ATo^h`EPl_pmVUM/eciSYQ;AD@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@=V_cN6GC`I:88 ¸°´Á¨²§ª²º¸´¸¿º¸³¶½µ¥¸´ ´¬ ¨«§¶¬¨°±«´¤© ¨¡µ¦¦ª£¥¡£¥§¬¯¦ ©¢¢¨¦ ¦©¤¬ ¢ §©}}¥y¡ªp§ ¡£ª|yo±Z¨ ytØvt§¤|{²^d }l\«[Zhgªds{kq]¬Z kneOJC¡\ZLt^cfMZa_st_JU5JYHE=HFAL35A8.;>05A78@<6=<F?:<6?=B7.HVJE@H6KIN@IK@EN::@4.:>102154+*05/7,&21($$6671<PeeA&Uf[?1U_bL7FI_C1>8¡¾¬´Â®«©¦´°¸±µ¿ºº³±·¼ª»µ ±¤¥§§ª±©¯ªµ¬«¯¡¡ ¦¤£¹¢£«¡¢ ©°¯¦§¦¤¨«§ª¨ ££ ¡¡ ¡«®mr´t©w¦s´yt³¤£¤v¸o{¢kk¶Z¡ei ¢§mr´t²jku³af¢nj\`M¡|Rs£ly~no\¯V<wfTon.\§ObRkebmYb\`q|cSYP>>mo3BB@?L9!7@6.;@37C58??3;<CDBJFMIF62JTKEBJ6IJP?HOCFP=<E50;;010/75,+,426/#00,,289/9N`eD'UdY>/U_aL5FM^81B8¥»¢²À®««§·©¸¯µÀµ¼±¯¹¸«Á·ªª ¦¤¡«ª§µ£²¨®ª ¨ ¤«¹£¥£¡«¶¯§¬©¥¥¬£«²¤ ¨«°¡¢¢ ¡©«Ô»t±ÄÃ}Õ¸x§y£¶u}wv²`ºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¡~t«}¾ns¼t²uxnpm¤t½]w}[ay¼kZV[jz^i`dfbmxoY[YCA@r?CF+5H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.97-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7A9¦¢¼¢±Ã°©ª¬±§¸¯¶Ä±»²®»°®Á²¬¥¢£¡ª¤ª²¤µ§¤ª¦¬¸¢®¡¥ £¯¹°«£¨§¥¤ ¨« ©¤³¢¤§¢¡¤° ª
µ¸xµwnlnsnysÁ»¼{²¨pt¹|{|¤»¹½uz³£tvut°ufi¶trpw¶^z}gymyb¬pu
Y[§jEdZTf`c]bQggqmuBMPLD;ZL?J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITAKNGEOF?G<7>7070/9:.,/-*8/%&2(4$(>7/7KT_G'SbV8*O]]=+;VV'=;<¦ ¡¿¥´Ã´¬ª§¬«©»®°Æ¯µ´¯¸§µ¸©£¢¦ ¬¤ª¦µ¨¨ £¬¤¾¦¡ª¢¡¨¢²µ¶¤¤¢¦¥«¨¤¥¢©¦¦£¨ ¢°©§¢j~i§xs~uze{½¾Àºnq_rjZ^adk`cmvbke^`cqhr}gj~qty}|b[wthP\n|{jXlyrIJo
pMtMEW]faL[Xgc^O[muiqRODEN;HI<M?2,2A?8/5?C<9;@;=C>RVVWYZ[[\]`aaa`\UG5DFUEKOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7IR_I'S`V4)P^L(3>[O'?2>¨¨¡Á£´º¶£¬¥®§¨µ²¬È¬°³¬µ£¾±²¦ £©£¬§®¤¤µª¥¢¦¨¾§©¦ ¥©§°²¿¬¦§¢ª¨¤«££§¢ª¡°¦ °¥¢¨£¤§£hn|qv´© ¢ z¤
kj||tqxyvv{jstudw}vkp{m`c\phMYYej_WYozmmfSOFS9OZNRO(+;JB635=@A9:C><ENSSTVWXZZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J'R^S10T^:+=8]K,<-@² ³¡¿¢¤±²· ©¥²§¥°µªÉ«±¦µ¦À¨´ ¤¥¤ «¦¬££·¬ ª¥À«¤¢¢§¨§²Ã¯««©ª ¬¡¢¥¯¦¢¤§¦¡° ¢§ ¢£ {©¨
{
£~f¢³®
vz}vyzogykuyrhtzvktcyf`idcdfjXk{pij\RLPD_UF@?>,4@F;45;>A;<?>>HNNOPSUVVXZ\_aca_^]]^]XVJKLBIOMRJ;<:786/2964.(&$-1./)+*7%+<(6CMLD/T]Q05M[17E4\G5<,@´ ¹¯¾«®²² ª¦²¢¬³°Å°ª¬£³¯½¤´ ¦¢¡¨¥¨¦¤¦³µ¯¦®¾ «£¡©
©¬¢³È´ ª¤«§¨¤« ª®©¥¢ª¡¡¥¯¤¨¥©f|e~cxlhkz£«ke~g
eeihz¡kh¢wkj£slnzyXe]
^kv[hswwnxxsmytw{j
X^ktd]sij|qlc]QNWIdX@J3=F7?FD71<=?AC;;DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%/*+'6*$;'/AI[I/7ZO6)EY/DO1YC;?.=¥º¼¹¯«³°«¥¨®°¦®®°½±©¨¤°±£¡¦ª¬£¦¨©³®£¢¯¦¶¹¥®£¡ ¥{¥¬¢¨³Ã¸¤¢§¯£££©¨¡ ª¯ª«¢©¨¥§ ¬¡¥°¤«¡¥«~¾r´r
hx¹Ä¸q¡£{¦sª|ËÀÀ»q¢|À½ÁÁ{z¿}k¥±ooÊzwvyyqzqx
ymvbf_xc_eb^thmdbXLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>H[L*#CP/#F[3PY/UAB;/8£¸Ãµ°¯À©©£¯©°¯¦²µ¯«¦¦¦±««¢ ª§¢«¢¥¨¤¤´¤£¦®¬·³§¯¢¥ ¡¦«¤«¿À°¡©¯©¢¢£ª£ ¡®©¬¥£¢¦ ¤¥©¤©ªª¬¢¥¡£Îyz¥y_®^§¡¡}§t«¯^d©z§
t³c«¡³i®t|¸aY£Ínu{Û{p~ue{vvk}n~
~m`qkpf`_xd[phjcf`RTRW]JOC5AHED8>6;@?A;=8@>>?BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+--J0';\:L-!P@F4.1ÂÀÀµ´°·¤ª¨´«¦²¬¬¬¤¬¦°ª §¦¢°¡¨§£¦¡°¬¦®±«¨¬ ¥¥¨£®¤«°¨¿Æ³¨©±®¢ ©ª ¯§ª©§¦£¡«´¦¢«ª£§¦¡°¡§¡ p
u
¨q±|q¬~¡¥w«}r~«vz|~ª¢~«{ zVÄzoÁ}mupmfveoawnromeotvo`fmd_oiinfcWS\aZRRC8II@C<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^]\^_a_^^][ZRC>;91478452&# 1' 1' '45-&7>WJ-='>1)3V@F!G:C1.+¯ÔÆDz´£££¡¬®¶¯©°§©ª¨®««§¢£¢¦«¢¥¨¨¢°¬¨§¯¨§©£¢¡¦£®¬£¬µ©¹Í²¦®¬¢®¬©±©©©«©£¢«¯±¢¨¬®¦¦«ªª±££¥
¤j¤uz©tz²p¥p ¤_`R«®v®§z
{f£¤£}©~®^|¨U¢z¢{ïÅs¯³³¹qb©¯Âthmonyxwnlfedqpf{hc]W_iXXTLLQLCCAB;CA@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799674,&$" ('"+-"$.!3-&@DWH,G+66*1PKL# A9D4,'ÂÉÕÖÀ¡«¨¡¯¢°µ°¯©¬£¨¦ª««©¤¦ ¥¥§¦£¬¢«¡¤¯¢ª¤¶°® ©§£¢¨ ¦°¦£¨±¬¶È²µª¬ª¢¥³ §««£®¬¨¢¡ª¢³¢ª³±¡ª¨¯¯¶£¤§|ªlu«y|°o¤Ò¸´¸É²^_©¤ zxªÉt£§©~ÆÆwe¡¥s}¯^oµc±uK£m§Gd|p~p{u}zm\fjrqfj^bXcm\^YIMMKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75785/)(%&%$&),5FNOPMFLJVF*L0/>-4OTQ;<F2,$¨¤Áƹ¨²®¬¥¢²¹¬ª¡¦¨¦ª¬©§ ¦¥ª£®«¦ ¬©¥¦µ¢§ªµ²¬¦ ¥§£ ª§®¡£§©°´Â²³ª¨¤¡£®¤¡¥¦«¯¨¦¬£·¬¡²¹¯¯§³´³¥¨¤Nxz£|¤§¸||y¹~ÌŶx¡~v¤£¨~°
¬}a¥l£p
}r¬`¤sq`¼}RUu£|~uzs~p\mnwrjoZd_hnbd]KLQTAHGFI:9K>B108856877-*5==?BDGILNPTVXYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOUF<E2:P[T6?H,- ©¬¤«¹«¯ ¡¬³´¦ ¥®®®©¦¦¦£§¡²®¡©¦² ¨¤¢µ¢£¡©´¹¤££¡²§¦¡¢¯¤¨¢µ±Ã±ª©¦£¤¤¥¤¨®¡¥¦¯¥¼¢··µ²¹²³§°¢¤ÑµÃ·y
¦x¢w ¥q«´nrj£|s¯¥¢¦mp²\¥szl{}n©a¢qqbs²¸hx¦~x}ymiwixsnt]ddnmeh`JZWX<GG@U3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^``]Z[ZXURRQF:2230/++(@QRTUTSTVWWXXWUVVTQOQ[U%!2AH$)%s®¿¿»»µ¨¤¶¡¢£©§®©«¥¡¥ µ§¢©§°£«£¤£©³´¤¦©® §¤§µ ª£¶«Â°©«ª¡¡ ¦¢¦¤¦«§¢¥§¾¬¾°£°³º¬´§©²¥¨z¨}|°w¤¥m²o¡|¡¨¬®
© ¢
{~«ªx y¯]£|¦§d|tk®]¥kq
]`[ n¦zz~km~b}tnz`geqogghCY`[=JS2U8BBC7$$3+''3, /667436:@CFIKMNQSSSVZ]_a`aaa]][ZXSPONI7052.*,ATVVVUTUUUUTTUTSTWWWXVUUQHFIJ#((¼©ÆöÁ´ ®¸¥¤¤£ ¯¯ª£¹ ¢« ¯ª¡ª©¤®°¬¦§¬¬¢¡¦¢¥¨¦¶¨¿¯¥©¤ ¦¥¤£¨««£¤©¨¾¤Ã¬ª£¢¬³º¬¯§¡´°©ªv¯~
}º®e°e}¡§¬°
¥¤¡¢ [lj³`{{±lgn±[}´[¤kÈ¢e{¼YvµZ²}R¯z¬X¡m¨{x}ds}bwt|ajfpmfeeOUc[AT^>I(>9=4!"-%2. *1/04579:<ACFHJLNPPRTWZ^`_`ab^_\[XUPMJGC553./@UYXWXWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³²·½»´Á³£¦¥¶¨¡ ³³©¢´ ³¨ª«°®«®©¢¯¬¨¦¢§®¨¡¥££¥¢©²¨¼¯¤¨|¡ ¨¡¨§¥¥£¥©» Ƨ¥©¢«´¶®§ ½®©£¯¤¸Ãº
§¬¯¦¥ª~սªb£¿½|~£×º¸µ
½¾j£o«nz²°Çj«°½xw¢¾»t¦yyb|zdfy{`kekjbPb[Sj\@TaBN)=:4/$%2 $(0496678;>ACFGJKMNNQTW]a\__a^`[\YTQMIC?<A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ¼´´±¿¹²½³¢®¦¥³¦¥¿ª·±¨¡¿¦¦±±¹¨®¥¦¯¬¯¦£¬¡¤ª¡£¦§¡¨¢ «©¹¨£{¦©©¨ ª¦¡£«»©Å£ ¯£«³µ«°ª¡¼¨°°tuª¤·epgmow¤u®pq§£®¤rmmmewnmqyiqigqhi
gpd^cjoY]g~w¦`bqofd¢|uewhjy~ydlcflbKdXJkY:PeER'K:+# #,)-2.5:457:<?ABDEHKLMOQSV\WZ\``a]][TPLHD=:AB7MXYZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨³ªº¹²³ª©¢®¤²©½±ÃȾ¶ªÀ«¬£ ¦«º£¤¬¬¦ª
¥ª¡££ ¤§©£ª ¥¥§¯º«¬{¥§¨¢°¦¢¬º°Â¨¤³¦¬±²«®¬¨¹¤¯¸¡¨¥¶¢©ª³£¬ ²¢ ¢ ¤¡«¦¤~gtvtq§m| phvpwv|zjlddocU`Y@iZGb`OZ+F=+&!740.!%2(*799469;>?ABDFJKKMOPQWTVY^_ac]^UQJED>9=@ASX[\YWXXXXXYXXZ[[\^__`^^^__```_YY`¥©ª¥µ¸¯®¢°¤ µ±«Å¼Ä»¸ª¢¥¦°¨£¶§©´¦§¬£§«¤¡§£¨©¦¡¤§¡µº¨ª|¡¥¨¶£§¬·§®Â®£·¦¯¯°ªª´º¢¯½¦£¦¶£¦©£¬¯¡£±¨¯¤ ¤ª«¡ª
~fuvysj}¡ yqryq{jnd_pi`[`YmbP`cP[:GGD=2==7.*&+)&&406658:==?AACHJGJKLMSSSUZ``i`eVPJACB;9EMV\^^[Z\[[[\]]_^]^_`aabaaa`bbbdb\[c¤§£°³¬®£©§ ¨µª¥³»¯¬¬¡¢z¢°¤¥±©¸¦¢©¢®£§¡®«¨¨¨¹¶¤¥y¢¨¸¤¯µ¢°¯t¤¾£² xz «³¼v®¤ª~d\bv¤~n³£¨®«¢e syp¨l¢§e¥
xkvq|ai[vghrz¤dywinykpe_vokkh[fcbboS[>NNNRG=@TB91/&4:316678<;>@ABFHBGFIKLSTUY\_hfgWQJ<DG;8UR[`ab`^`_`aa_\]___aabcdabaaedchd^]f¦£¡°±¬«©¥¨£§¤«µ¯±¦ª¦«s¯¨ª§¸ ¤~«£§¢
u®¦¨£º´§ tv ¦²µ´½§¡~§¢z£¯¸§
±©¯£y¬¢§ª¨w¥z¦{±z
cynqyqt
xht t|~jkx{qpgdwnilk[ejier[^ITLQ@E5-YTT6)!09=>643568;:=>>@DI@IEJKGRXZY[aahfZQH9EL;>bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah£¦®®«¨¬ ¨°§§ª¥®Æ½° ¥¨µ«¦¡¾ }
«¢ ¨¢£¹²§
pu¤¬´´®Ê«®·
°±¯©§|¨r{w¦h¤y´¦¨Â«¡q¤}
±¡| |
ms{r
}
t
Åf©¢j ogwt{vghupggl^cnlflXhG\QL2E46M`c6&4<DGD:64658;8>==>BL?NIJLCPZ]\Wb^jl\QE=KM@JdY]cfhgbbbbdc`_babcccdiicbbbecafcbbi¢°¨©¨¥« ¤¹±ª«¦ £¤ª¢£©¶£¯ §¥¼ y«¡
w ¤¢¸¥bm¡¡¨~¡§ ® «¯¤ª~£vk«uM«x¨§ª«}¡{z§ikg¶}m`cX{dgs}yl]|n_Sq\`ly`Ye}q§ªk£nr¥phdlZlzeY_~aWPoventrjjo^jolkhWiO]WE9A4GC^k4+ICQMN=84859;6@;;>BO>QRLMBJ\]_W^_bv`MD:MOMTb\\ffiibbdbddbab`cdcabikdbddgdbgeach ¹¡ª£¦¬¡¶¼«®¢ ¡¥¬¬µ£¨ ¦´u¦
¬¤¨¥°¦¢hn¢ ¢¥£¡ w§¡§ª®
¥y}}¢ps{ym¨|¢sv¦f~w¤_z|s¢n·´ºt¶¨dƸ{p·q¤cs¬«`}j³~n}q£ls¤s¤^³o{³tr[²ibotuqhoXklrre\i^bKD=D5QAYq2<RF_JR=<395::6D;;@IP?TMNQ@D_^[ZX``|dHC8LWUVbaZffkkbbeadc`ab`dd_`cknccddhdbgfchh£¹¬ ¤¸µ® ¢££¤¬±¬ ¤«x
p }¨¡¢¨¨¤}jz} w¢ r¢©§¨«®}z z£xs}¦£d¡|lhnz§}rgsªsªg]
vhªj¸f\©pa^§vuhunk¦\¨~w»j}©Z]³g\nqywki[qixyc_eWbAPEN7VBRm4JZZ_NZC@151;;7H?:CGT?YRY]>Db^V`Qad}iEB9N[]XdfXfgnmbbe_aa__``ec^bdoq_deekecihgkiª¶¨c¬º²°¬¦§°¨«¢¡ £iq{z£
¨£ iyz¢ ¢rh p©£© ¨}°¤¢¸v£³¢£xz«~¢r¡|
¯µ}k¡x~´££«¨{|~sªZ]o{xbM{{
czBMY¢jr|muy±³¦tmq|ori£]vHec`sp}~ne`lhv|dc`Q^V]TV@YEQgDRW[bX^ID=B8@B:IE8LDWAVQ[VDFb\Z`K`m~rEC<U_bZejVghlnbff^aa\]^ahb_edvl^egfkdflhhki±®S_ §³¹³³©¢©¨¡«¤¡¨¡w
ny
}r r¨{k
q w
|¤¡£®}µ{¦z©¡~§hwm~s sq|
o®}£¦£p^©gu£co¥aÓ|zxrsc¢
~¢r¢uk³`sª²¨¼wm¿¦ª´^o~qos¢r]£gt¦ah¦mÓ{nwykzvrl©¥g_eypkgfdmvxh_aR[eQQbIWIT_WS[ej\dPFCKLJKBJE8P?PMWSXORR`feiRdxywIFEc]dYhjTihjocjg`c`\]]_hbahe|d^dgdkdjmghlh°¬T\K~©¯²µ°³£
§ £¤¨ ©
{p}h}wpl|£ª
yunw¢y¢¤³¡¢¶z¬§¤®¥p©
}¤¢r¢¬®¤®¢vµ¶µÉ¡sa©myu¡w }oLf¢ps¤{ytal~ lrd`rti{i³µ´Æ¦s~{j«umtwiytqPE|³^jujxfjgbttqnV^TYhPRhIULXRV\gknVgWMJAJMJHJNAQJPecimetrs~y{nu{{TPOm]h[kiRjhilglgce_\]\^ibdhk{_]dgcjfomeime¢¯§
f?¡³«¯¯µ¢¢¨¢¢¤¥§¥yjye~ yui
z¥©y|yp¡y ¥¨gnxl¢d|q¥wpg§{¥z rv¹n¢b}¢nri«ju ln¦`ihu¢}_
uobh¡eiuocfnr¢Z_[d¡n^o{srd¥nx¢dg§hsn¡oSo ^d§T]SmmrjqmphkxskpRXWWfYSmIXO\HXihsjYkVQREV\LXRaUhj^wuz|p||r{rvv^QsagbpgPjhhklngdg_]^]`kbjivu]\chcjjslfkmc¥¦zetm§®¥ª°±¦ª¥¢¡¢¢{qh|st}{e|
¦¢«
}si¥|
ª§¦x~¥²¯¥xz©t¥n¥¢¼n|¥¯
|¥zq¨ g~o¬cw¨l©¢vw«¦k°kv³©knma«ªv§w}
¤ iv¬g¶sw¾¤Y¦«auqso{tqbj~nhlSV[Uaa\kM\R]I]mmv`[qY[`Zgsenorcqt`w{~yrys{{vbxdcnsdRlgholrifia_^\bkbllzo\\bibljwmglnb¦ª¤©ª¨§®£ª¤¥©
t
zo}ttrm}{¤¥¥uol©«¤ u~y®£qx
{r§q}}zx{~}v z}l
[yyryqhn~qtq
e_wusuoyonm_wixfª~t}jov|
vmlgsx{w[jXxhmwqpowxo]lnigVZ`W\ekcUaU^Q_pwyljvejjju|qrtsaoubs{xuyux
}{mldyn^Wnghukxjijd\`ZcjelpunZ[bkdllymhloaº©§¡¢¦¤¤«¢ « ¦¨~r|}~ztrp
{}
x~¢{§¡
wr
ª¨ «~~¨§xp{o~©
p}qjo|hm]sqtkvsYrn}~i]icz
_ix{|vhykaqsw`s§fnvp
yoefcyzZ\ifnv[zywtmsrf\mklbYY^ZYlq[_`Y^]ft}{tosckki{|q{xtdmthl|~uy|{zz~o{}s~ysiT\qiluougkhd]aXkhkjqrmW[enlgszohjm`«±¢£¡©£¡}«¢¥{|r}v
qor~z¦ x
z¡« ¢¢££ª¡§¦ |y¨~°¥²¦k|vwe|w|zu¢
~vqt
x¦|vk{yirh`sp}zvuowt]^ohn__Z\]ShqUc[[alhu{|rnpdkjh{mxqioplf{rx}zm|zx|~zxNdvksmpzdkebb`[tfpfrqlU]ltmhyzqgikeº¢¡¤ {ª
|y{mxr~mk~z~}ªq
}{ª§ ¢¦ ¦w}
¥{|ª¡«~ox
qt`u~
nyut¢
t}|rs{{y§v
{nk}{mhklg^y~g|{vsuu{w\`p}nu`c[\^QfmSeZ]akivz~qkldkjglslltoxnynv}vq~{{|{`i{juhidjc`i[cuhobumlTbqyepzzsejmm¸¡£{x¥¤yz
|m|xr
}|kh}|~|§p ¡
|¨w£¡¡£¡¤y¡~|¤ ¦~~utpv`}r|r
hwqx~s||qyz
z{¦|
uydr{~xypljf^}rh|uus|rj^`tvpxdcY^^RkhTdX^agjvxqfkclhejm~hnqk}wykr}tv~|{}jrnsiahlb_qUtomn`xhmWjtvcu{{rbjoz²¥¥ |v¤ ¢x{~~p{tu
~xgc}x}y }o¥¦
v¡¡z¤z
x
~s¢¡¢~|vq}mzd|
pleuo|}x|||rxy
¢wv{
t^xw|s}wfkd`~ijvstt}q|ccasnusmaY`^[ldRbW_`hkuypbjcmeh|lhthloh|xmqt|~z~|mvttmeljacuViqn`yglbjvpfy|zq`rl®¦¨ }w©yy|}|{xsxzs}d^}~t}~}£¡~r{¦ t§tlzo£|zqyjul{~~n
wo}~drj{ty~vx}}
¤y
t}sum`zuyp{oanbd{anovrwwstbv`oluno][^]^j^O]Wbahmszk_iejchwmflhjmh|zwns}tz}z}|rzxxnlkh_irchqoewhnlazhk}{xpawmª ¤¨}v}w~{|{vwptszo
}~|`\~szz¤}|¤
n¢¡ogz
p¡|{tsukqnu|tn
qt{|dqly}}ttyn}}
¨{}~
w}po
chwstnzb^o`jt^pjzxxlrpey]mlsmsXZ^_ajZPWXdcgqqf]ihgbgqodigejhzwtn
s{u
w
|x
zw{zryjk_phtkqnmqgole{bnyvqlww£¢¨¡¦t© t{v
xxrs{
kroymvnq[Y~vu w~n¡
k
£gw~||nvokmop{
ispwtxfsov|zzwtp{{£|wxxnj]rrpoowZ^p`oj^oi|ypmmjmv`pokrmYXaabnXQSYefcupb]jmdbfkm`ff_hkurrptxvx
ww{{vjqc|b|opltjholvw_qy{tut¥§
u
zrxtpr
squlomumw}mnUQ«xvry xz¤
|s
ih¡qw{z||kvjmkklz~ay~vzw|ygtlt{qzpwz{~
|}x}vpiky_wnlkqrU]nbq`_mnypgpfgsuhpkawe]Vf``rSPN\fe]xp|_]hrbbefj_hd[gp~pkqs}v|
tuy{xs~{ywfrj`~ookz`jntt_t}yxts
|x °¥vtvspo
spqojivmn}|musRNᐙ|ptu w{r
¡~xz~ywhl¤
cq{zy
{~l{erojkyy[yz}~zzhsks
}l~o}z|wxysmfplitnghsmS^ndpY_kqwfkjbfxsopc_w``Vk_^vPNL`fc]yqt\[ev`aeecafaXissnkqv|tzuv~sz~r|~vesn|e~npkZlnyys`vz{vrwwy®
w}
uwpyqnomn~rddxp|mz}jhlc¤ÁÜ®ï¡skuu¡
np
£
{uxvwo}¤
^l|}
v
}}k}dwujmxsWz
z~
~yesj
kun
zttxutqguybtmoahufR`pgkU_nty`rc_h}qrmZbrabWnY\wMMLcfa^vsm[\dy^`df_cc^Xjrknkrw}swxw{q}~{t~~shuqymzntpXqzvyqdwyivr§£}pxy
¡|{rwpsjokil|t^`xv{pu{g`e|ëÚµÉÃÜslsvip
|{vxrvq
¢ai}}q~qwhuriswkZ}
|vbtl~}nly}}nrzulqkrx_tin\ju`RdqhfS_pvt`o`]hqriWghciXmW[uLJLef^brs
h[\ey^^dgzad_\Ykneojtw~ss~zvzs
|vw{vlwuyytnxz}Xy
qogxwdv
q
¡¢sorw}{xqsnodr~hflww[_y{zqqiagaÕ¶¦xnqw{pj{h||~
zu{zquw~ag}~~m|tkmvtsvukc
~|p_sq
||zqfz|
~npyumnjkz}bhjiXkuZRiribPbrxlae]Zjmsb[g_dl_nTZoNHOfd\gnqlZ[cr_\clwde]\Zllbmisvqn||txx
|uy|voxy{pm{w^tmizssgr}r vvmv}|v}vqoljat|gbiuzZ_x|zmq~echhW^qr¼Ãuq~rrj{|}|uvv}qu
ru
|f}
r}g~{x~|i|veoxxsvslj
xk^rxz~
{~riyy|}nm{}wtnhg|vc\qbWnrSSnshaMftxe`]\XnosYea^jm`pOYkQDSg`Zknm|nZ[^lcZbowdg\]`ljckisvpm~|tu{|
v~xtryx~oo|qiyz~ml|vkjwtl
n}vjx~yozspljd`t{h_eqzZar}ygqzaee±²wJbZ¤ÙÐq{w}
nk
zy|xxpqt}ziy
¥owy
p{}nxhxr{e}~ucprhxpou{vxyk\q}r
}zrnq
syxno~wzehj|p_YwZXplNWqsg`Jlvt`][[Yt}roWg]fjq_nNWhQ?Yf^ZokgyqZZYkeYcqy_h\^emhekhqwnk~uo{~v
qq{|yyujzlo~t}or{{onxf¡gohz}|ixrklf_aoxm_box\dlzaqv_eeÔê¾2:>qy
v~ml
u}
|xnvwo
ku{tfy§}nuwy~{wlrh~xm|{wayqdqh~mtqt
~ru}sp[m~tx{|xzqlrztnkwuu\ihwpXV{SYodLZrre[Ipwn\ZZY]u~thYb[genciLWfQ=^e\]ue_tpZYTodYdqyZh^`gmgilipw}li~yn||zu
pnx~{{h{~kt{r{sw}yx}|kl~kh~z~~}kuqghc[bgrn`aksahpzbst^cd n\5Y¯µti|v
svpm
tyx|zsgv~~oq~hvymey¤~n~v||p{}{h~lj{zizvr`w~qdrfumu{|nwy|tmXovtwvzxsn
s}znnjnun]gfsqQZzMZo\N[rpdUKsxiWYYZaqt`]]`fdhifNYhM@ad[`ua\tmXWStaZdorWj^bhkgmlipw|li||p~~{zwq{oqw{j~{nwyww}x~~zm
£{uyklx}{~prpcf^Yg_op``gpfjotato[adjv{¾¦£È¸q
s|xsrrp{sutwyyqcwzirvfwvcj|}rt
yx{kxy~ugzhlysizv}h`w}jktg{iv~z~~p{v{t~bVw}rs|qwxpp}y~}vviqimrp]hcsnJduK]nUSYsnbQOsx`RXX\aos[a\heecjdQZpIDcaZcp^]whUVUw^[enhVk^ajgeoohpvzniy}r{~y|v}pwrnv}p|xyztxzuo~}
zw{gt
z~{
vgon_d\XeYmr```plkhn`siY^dmw©Ú©Ç²qxou{zutu~woqmtxtk`zyfqogvn[m}y}y{mvt
{
ltvmgvem{umjvw|`bx
yhtub}{gt{tuqz|mYVt~ouyltxku}{}y{s}sgtenms[j_udHnnLZaWVUxmbPRtvWPUX^aqo\`cmdd^nbT\rGBf_]fh]ZzbQU\u[[gkaVj_`nffkqhpuxtkuvx}w{s}oqtqu~
{wx||x|}~{~svy zvty^}
yt
w{bnl[b[[aVjsc`[gnofqaqfW\ck|Êι¡jmmlqq|~{
zysyuu{jlucuwof^}zerkjqcXl{sw|mqq
{y~qqp}fhqbmxqjkqw||y\dywiuxfvgt|qio~yn|]Xrmt|ooqvhwv}r{u|zrfsanlrXk_w[InkMUT^TU{kaOTurPQTV^bt
i\`kjfcYnaXbpGAh\`f_]U{]OUdpZ[jh]Wh`_rfkhrgprwxntzx~xur
pp{xwuz
z|u~}~~}|xvyx }mvyc
so
ztcnjY_[]]Tgse`YdqrfsbkeW[`ix¾®{ ·mbshs{qy
{}wxrvo{vejn`usjb^~xyfq~hjkZVow£qqytms
}xtrnhy`jm`mvjgjkywzw[g}|xer}mteu
ofkzumtb\o|ku||fu}mqgu~x~r}l{{zxpflbn~mmVk`wUJjkOQNhMY|hbNUujLPTU^fuf]`phgaWi][khJEkZadWYUyYNVmjY]le\Zec^tfmdqgrouxp
v~w|
}usnsxzzss
x}v|{~{w|wwziw}|lrp
~oflgW][\[Tdpd_WbruiupeebW\\hporsddx~itussxyvsunkzpagkgtnf]_}p{~imwfidUVro¦|{vt|s|zm{{
v||tprlgt\lh^ltdgfizo{rYgvugpwubw|njmzqfse`mzgsw|~buvikqtzpzys~f~ywndfbn|mkVjbpSKhjOKNpG^{faMUtcJNSWajv~e\gsie`VcWbp]LKkXcbUUUsVLXudZ_ka\Zce_wfmbpisnrutww~
z|u~
nrt|ztq
yut|
}~{~v{£¥yku|zuyn
sy}unjheV][ZZSbnd[Xas{ihmi`bW_[jikogkahyxjsttnz}uunzhjyj_enhvgeXbwi~{oiogf]UXog¨wz|yuo~oruywt
ujrvghn[ld]ms_gajxh{mZmrsio~yw`wwrqoyrcqi\owdqt|xbspgjxsrlxwuxd{xvpdccn|}klUibfSKkgOGRkEaxgaMSq\JMTYekw{e^mqid]V`UnnWKShWf^XNUlTJ\y_[_k]][ce`zhlaoounoxuz}wzzyz~qttyvt
}|ks{
~}{v¬zkryusnn|sjomddX_ZYZUbjg[Z^ui^ml\aV\\leqt}ii]kvvgtwrm
{}}yurlyhixf]dshzwccTepg
wwfhj`WVYgc§n~wzpp|fxoz|vq}~ndvsdhh\kb]oo[g_mudzh]torkq{}uuat
zwruuapmYqtbqr
|udrlalzoji{yvrf
v{zuqeaems~ilTi^]TKrbPFVaGbvgaKToWJLWXgkvzdenqfcZW]YveUJ\cWhXYIWeQHbxZ]_l[^\ad^ij`otxnonvyr|~uuy}suuyzz}~isz}~
zz|sq®{{}eqys||uqn
l{~lzbpobe]eVYYVcfk`]\s
hXpnZ^WZ\l{bpvvlb[lssguuply~ywnnteite[gufvvz_]Rffkt}bci\TX]bc¥hxt
xmnygwm|
{urx|xhevm`f`^j_]skYe]oobze[w{knnowxstdr~zvor}sbxd[opaqq|sfqd^nvidgy{unout}sqb_fno}djShXYTMw_QJYXHbudaITmSJLZWilq{bllscaYY[av[SLc]XiSWHYaNGiuX^am[[_bb]
hhanxylojvxm~vttsqwuw|}~~~pw|yxy~tsp¢{zxduxsxuksn~ly|pr^po`gblT[ZWhcmf\\qeSrn[ZXX`lvciujj^Zmsqlsssj
|~|vnnldiqc[jrdtvs[WSearr]bc]SZ`[cerq
tljzmop{||qwrzyydeuh]bZ`g[^vhWb]phaw`[{vjirnwsrthp~vrjp}mfwW\kmbqszsfo~[`oqb_jq~llu~sqxkpa\ellzagSgUWRPu[QOYRIctb`GUjPIPZUkkk|emoqa[ZXYlpWSOfWWiSTFZ\OHruX_cmcX``a]jcdmyxkoiuy{k}|y}nqowz}t|tw
usquo¢t{{ewnn{ofwpzlsvrk^tnagekR][UgallZ\pdOon]VXUgjtgbtee]Yntnpuuyk||vsddkna\nmcsxkZTVcdx}}q
\c_cTZ`Yccnp
sjh{ofsws|lztuoy~u^frc[^VadYateU_`mdaq]]~phisqsptujm{
qrfn}proT[fjfqtwsblvUbqj[_of}fmw}sssjm`Zdjjw^fTdUVPTmWQVSPHds_aFXiNHWTVmhd|ikxkbW\U[tdSRWhQYfTSHZZPMxw[_eliYb`^^nbfkyunohvvl}{~krgt{u}r|
{ss}vn¥svwmz`d|pfxrylmqvgd{lcfghS_^Ug_lo[^nhNim`TVSogslfwde]Xptlrzwrm{vzykaelm^`ojepx~gZVX`lx|{p_b^gVX_Wdbkq}wkkym\wqlzivsno{rXjn_Y]UbcXdqbS^ahbblZ`~lfksunmwvkh
~zmqep}mrmcYahiottr^ilReqdTbnbzcqw{vkpmk_Xaght\eVaVSNXeRO\OOHep]cFYiMI_KXmd_xhn~d`T^T]u\TS`fN]aTSJ\YPYuv]_fmhXca[^pcgjwqsngvtzry~|zntlst
y~|rstwqn~zz}~~}}~~}~~~~~~~}z{|~~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~>.1111/o]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDBN¥¯®°knnnnqJ,00//,I
}}{{z}~||~}}}~}}~~~~~
-h
S7¤¤¤¤¤¤£r]____aR455553A©¶´´´´·|ehgggk=;|}z{z|}{|~}}}~}}~~~~
|y{z{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{y{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz||||}~~}}~~
zy}{{{z||||~~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~~~~~rtx|||{||}}~~~~~~}~~~~~xrvy|}|z}|}}~~~~~~~~ssvx}~|y}|}}~~~}~~
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{}|}~~~}~~~
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHIGGHGGLNIgsuxy}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvtuvwuqrqnprpghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkigfggghhgmgjghehgccbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsvyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__`c_\_]`]^Z^]YY^ba^^ZY_\XWSNMKKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSSPMJMNPROMPQQQQQVVQQQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTttuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPPRQPNNONONOOPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKLFDFJKKJHJLLLOMLLNOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBA@@CCDEACEHKOKIIJHGJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AE@>:;>><ED=?EA?@A@DEGGGGBDDEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@;;><;;<<HL==AA?BC=ADDFCFFDGIHC?@?@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprttsqrvyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;=;78;<>=;;:8:@@AB?A?CFDBCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtsusqtxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::97::@?8:9:;;8789;:8<;=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==??>==ji>===<<<<;<:;<>=>??A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLKIIIIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AB?=?BDD?>=>>@@<JxsL=CE??@=;===<;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVpoqssttuyz{{|~~~~~~mLPQNOPNNOPPO><<=>??@>@@???CFEJ?<;RomgexsH8<9==@=:<;;<;89;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIGHHHJIJKJJNLII_pqrrrtuvz{}}|~~~~~~~~vMNNMNNLLNPNL>A<<=?>BC??AAAB@Mzc=W
yrF888:;=??<;;<;::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHJJJLJFFgpoqqtvuw{|}}|~~}}}~~~~~{NIKKLLLEILNM<?<<=>@@AA;BCBC?Vw{g}~~vG==?>=>CD?;<=>?==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hlopoqtuvy|||||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABECE@Wut}y
rD@@C@@?@@>=<=AEABBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{{|}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Ntr~}x
_=CCE@??Na_J@CEIIIIMMKECFGHEGEEEDDCA?@>>BFJJGEEGFFJNNKJIGGHKMJGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEfw
KCEDCWu~XGHJLLNOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHFHIHGFEFFFDFHGEEHHFHGHFQnnpqrvvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJGXs
e?AVtWILMLMMLJGGGGDGGGGFHFHECDDFEDDHHCCCGJJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrswwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLJX
|Tl
|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD?>?DFHDEGIKIIGHIGIIJJIHFJJJJIJIJJJFILLJJKKfopsstvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLLJc
uIIFB??@???<<<>::<AA@><998<<=;>;9;?ABAACCC@ABDDBCFHIHHHLMLGIJMMNMJJKKJLMSloqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJJJl
fBB=88::9878896479;<:8567789787689;;<>@;999==><<=ADEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIhT:8656766645763468:876565676778:77789;7589989876:<@GFIFIFEFOSRSSROPPRTepqsttwy{{{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=ECEr
H676468874578467699766765:9:::<898977779:98878589;A=>>BA?AKLOQPQOOPRWkqrttuwy{{{|}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B9F
z>988;<=>9:;<89;9:;:99;:9===?;;;=:>;9;;<;<;9:<8::;:999<?<=ABDIJMKJKLWorsutvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<;89989:::;?=T
l<;>BCEEAAAB>@B@@?=>>@?>?@?@==?B?AA?A?=@@@??A=><;:;:9;?=;;==AACABCAXqqtttvy{{|}{}~~}}}~~~~~~~REBAGJNOLIGK:8:;9::<=:;;==?@B]
^>DGIKJIFGGDFHGEC@@CECB@BCB?@DHECEDEEAFEFEFFD@B?=@>=?@>???>?>>:;=<`qrttuwzz{}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@DDEa
WHLMMKNJIKHIJJIECDFGFDCEFDBHIKHGGFGGEKIKIJKJCFCCDBAACBDCCDDCA=;=@hpsttwwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@?A?BCHHJ_
PMPMKNKJLIIIHJFDGHHIEEHFFELLMIJGGHIJOMNLLMKHFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~}}}}~~~~~QA?>?FGG=<@@88<;<=:?@>@@CFJJPg
qMQOMLLKLJHGEJHDJHGKJHJGGGKLNLLHHIJMPNPNMOKIGIJHIDIHHFFGGIFCBACUnquvwy{xyzz||}~~~~}~}~~~~~TDAABGGB?8?@8:<8=>;=A>?@EIKMVs
^QQPMNMKJGFCGJGLJFKOLKJJMMLOPNHIKLOQPPQOOJIJJLJLFGHGFGIFEEB@BB\orwxyzyyyzz{|~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAHLMQWy
|WURRTROLKJEEFKONOWVQPOQSRMSTOMSLPSUWRSQPLKMMMKNGGJFFHJDDEEBDCcpuyyzzz{z{z{|~}}~}}}}|}~~UFFGGGGHF>@B=?==B?BCFVNFOQQUY|
gVVkaERQQPJ;:QSR`u]UVTVYYRXXRZfPUWZ]RTWQPNRPPPQKLKGHIHEFIHIHIjrvyyzyz{{|z{|}|}~}}}}}}~~~THJIIGGFE??AAEBCGEDELXRMTVVX[|
}al[dU:XXXSP>@VUY\d`VYbr^]V]ZVEQYZ[Y_TYgRUVXUTVTOOMJLJIILMKOMSosvxyxwyyz{z{|}|~~}~}}}~}~~~~VJJIHGFDDBA?HMIMPKIKPTSSXZZ\\x
g;~ynpXZ[ZRSRVVTZZuYU}a\X]^WIV]][[_YHYXY\]YXYWRQMPQMMOSQQURassvwwvxxxz{{|}}}~}~}}}~~xy}YNKIIIFBD@A:PQQWXPPOQSTTXXYZ[n
n~fYY\XSVTWRQWVcQerXZW_hP`fZ[X\hbGOZig\[\]]WSNSPPQVVVVYZnrtwvvtwxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQORRRUSVTW_ux
}{\PVXTRTRQQLOMKfyZ]TYUV]ZLTZUST^ZXWWWzkXZ\\^SPPPINOWVXZZdqsvvttvxyy{{||}}~}}}~}}~~~zxwvsu{tk~~kqy^[VUSROKFCDAM^lVRSNOQOQURSRRTcdv
~ymqVIKNNKMKHJDFHEC>ScURPQMKRTRMOYQMNQSUUMQSRPNLLHCIHRTUZ\mrvvussw{zz{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YVQLILIaltPQSNQRQR[RSRQRUUbs{|}{{
u_]KC>CCCCB?DPBD@C>BHGV@HNMG]iPHFOFDEFHGHBCHGHJGCBAD@OPMRdsuvustuz|z{{{||}|{~}}}~~||}}vt{mh|gnqfieeb\XSQPURsWe[OONLQSQUYSUQQTROV`klrv{{xytrnstsyx~~kLG>>:;>@@??>kPKaEFHIEB?GLNGMQUIBE?><=<==?=?ACB?><=B>JMFUnuuustvx{|z}||}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljjf`[QRZ\Y^IJPQNKLQRQTVTWQQWVPX[b]agmmlokh`nrjmlqu{z}zxz||xwxdB@@A=:BCAADB[\O{NOONKLMOOQLKLWMHG@A<977599=;;;8989?;AH?\tuuvuvwy|||}||}}}~|~}}}~}xuwz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIGPRQOMPQNQRTVXSRYTNYZ[WY]^^`e`]^qvk^`gkwooljonnlfbYGFFHBAFIEEFDLQOaWRXQPSSRU[OOQVPMJCF>:96486979:366796<B=ftuvwwyy{}}||{|}}~~{~~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMLTTSQQUOLRSTWXTTXRLXYZVXXVXY]WWXhsk]Vaskaa_]d`_^YUPMONLIHJKIHFCPOSZWTTMQSYS\eUOSTRNKIHC?A9988978847578589Gnsuxxz{{}~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOUVXXYSUTLKTUUUUWPTUWTUR]n^RNY_[VY;DUWT[fJLPRROMMNNNLJFPPUYSTNJNOUST\VRUSRNMLIHHF??=:787659967665Wqqtwyz{|}}}~|}}|~}}y}}|~~~}||}}~}|rvqxxruuqqnppopuvtnjddjppqrpofedc\^RTZVWUTWTRXXYYYRUOJHOPOOMRJOPPPNNOTLMIPOSTU2<XMIAQ=c`QSQPNPQPNNMPNTRPRMILKOQPQRSTQROLMKLLHCBA=:9876;B4566;eprvxy{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqniihpVVTUXUWURWVUZYXWUQSFEBFGGHFJDHJHGEHLHKIGLMPMG/E_R>3@>joaRRQ@FTQPQPQNQOPOLJLLOPNNPQQNQOJLMMKGEEDB;==<9=G6677Dnquwz|{||}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknbePSTRSUOWVVYYVQQQO@>;=?@BAC@BEDA@GHGHFFHJMLEGCORC8ENS]gSQSAGUPOQQPMMNLJLKLNOOQMONMIMLIKLLKGFFED<AA>;@E;<89Tqruy{{{}||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpknqmimcLONMQSLTUTWWULLKH=987;?A?<=A@B=>EHGDFFIGKJ@FAA@FHEJOHQRa\QPRNSOOOLLOMKMLMON[WKMQOHJHCIKMLJFFFE?BC><BF?B?Adqux{z{{|{zzw|wy}~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B>;>A@@>ADIECHGIGIEBB?><CAAGIDMOaeQMONWKLMKLMMLLKNNSdMJLRIIIEAHKMMNKGIFBAB@?EFEHDKopwzyy{{z{zwtxux||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLMIMPMPOHKE?B=999:?B?<ABBADDGKFDIIGGHCC?B??@A>CECKNQTLJIMTFIIJLJKKIILMOPRPKGCKGCBJJLMONIJIGCCCDIJMLIZsmxyxz{{y|vrpurtyyvxjqokllnttmsu{stxronqovsnporpopstyjN`gsjt|ygosqjqheqHKCFHHGJKIJKDGB=>=:::;AB?=BCCCHFJLJEIIFGGCC;A@B>@@CECIMPGHKFHKDHIKMHJLHHJLKM]RIHDMFBEKKNMPNKMJKFGGJMNQNLcniwvw{x{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoijthdoFKCFEGDEEFEGBC@><=:;::@D@>BCEEIFJJLFIIGFFCB;BCC>?CCCEGLNHKNHDHEIMNMGILGEFIILNKJHENHCGMLNMPMNNMLIHJORQRNRfgfrosxu{z|lhjoekpmsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGICEFEBCBE@DB>?>:;;=:=?CA?ACFGJGIILHGGGFEC@=EEB>ACCCEGHIGMPIFFGKNOKFHIFEDDIIHKIGHPKDJMLPNPNOONJJIMRUTROWdaamgprosyzgehhcilgqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutvlkuumrvqlnlerMGEEGCBABD=BA>A=::=?:>?@B?@BEGJFJGIHFFGECBAAFFCBBBDEDGGHFLQLIOJJLKIGHEFEDCIHHKJHKRMCOONQPPONOOLKKPUWVUSX`^]iaminhrsbeffdihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwuksunutsqrkksMFFEHBBADD<AA@C<89=>:?<?B?@@DFHEHFFGFEEDCECDIFCFEBEGEEFGEJMKHQMJKHHIEFIHECIIJKMKPSNDQSQQROPMNPMLNSWVWXVX^[]d`hbjigk_eegcgggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxnouorsuqqipzMHGGHBBBFE<@CBD<7:=>;>:@B>??CEFDFDDGECECDEFGJEEIGCGHFHFECFJJGMJLKIJLFIHKHEKKLMNOSTOISUTQTPQMNQNMQWZVZYVZ^ZXa```^hec`dehgjhhjfhnllnmqpiuuxrrpupppruvpusuvu{~}xvtwvvvxplupmsunossyNIHGIDACHE<@ECE=8:>>>==AB=?>ABFCEBCGDCEEFGGGIFHJHCHHGIGFDHKIGKHMKJKLHLJMKINLONORUVOKUVTQTQRLOQPOTYZY\ZY\__^`c]\ackb`dghr
hgifjmnponsqjtuxrsstrnpqvrquruus~y}uuvvvvxrhuqkrtlqwquMIKHJEBEGE<@GDD@9<>@@??BB<@>AAFCEDCHDFDGEHHFHGIKJFJHHKHFFLHHHJGLLLLLIMKMNMOLPPQUVWOKVVUSSRQLORRQV[[]^[\^`_a`bd]d`ef`ehjcssfjhglprqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrwovJKLJLGBEDE<@FDDB;??AAA@DA@B?ACHBEDFGEIEFDIHFIHJLHHJJILJFJKHIJJGKKMMJJMLNONOLOPRUXVMNTVUSRQPLNTSRW[^^_]]``aaa`bdebcibdijgvlkigmosqpqpprywruutsmmssmqrotutspsvtuuwvuuueqskpqjrvowJMLLMGDCAD<?EEEC=AACBACEACDAAEGCHGHGEJFCGJGGJFILHIJMJMLGKIHLKNQKRQLSMKNNOPPPTOWXX[NSQW\ZSVPNTUTTXZ_bb_da_`b_`eaacinhbihhmxvlhimosrpqrrrvtsusssnksqmprotvrrquvuswywutucmtkopjqtpwLMLKLGDA@D>>DEFC@CAEDDFCBEGCBIFCHJJHIKFDKJGHIIIKGJJOKNLILHJMKZfJd\KlRHON_nUls[qpbwcRPbvuhucav`Xnqbdvinzf\lt`ljT_wvijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqsqyKNJKJFB?@B?=DEFDCCBEEEFBFFGCDJEEJLLJLMGGMJHJJHKJIKJNLMMLLILML[sbdp^llUMNfs]geqlntgpi_aYnnbppbkjjgoqtetno\pugpMJryvkb`keemxmkvlnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvttbmukpplrrqzKLIIGED@AB?=BFGBFCEDEEDCHHGDEKGGLMMJMMFJNHIKJILJJJKMMNNMMKNMM[roonpplkNPQlWNibtrpamov\YlQ\mmZqmkomxxtsip\`slqjUuyxpc^kfbgppjioppsspqpqqrrqqrrtlmrmmnorutqtrtuutuuzvutenukpolsrryJKGHEEEBBB=?@FGBGDIEEDBFIHHEGKJGMMNKMNHLNILKIJMIKIJKOPONMLNML\hdu]lqWlNOQmUZk^klvaldtTecNmYl\tpkilxjwuhp]_skhWbcw|oc`ghadityknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtwIMGIDEDCAB<B@BFDGFLHECCHKHHFJLLFMKLRRLGMMHNJIHNHJJIHNOMNLJNMJZsppoqqmlOQRnYqkgooqqomt^nXat_nopoqronusttj[]tcwxrjnzhaacgbbjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyytukoumtonssvtHKHIBEEEA@>CCBGCHIMIFCFJLIGFJMLFNJKWRKGKJJNIHJLIKJIHJLMMMIKKKSkbZi^_jcrrZ_Yjo_eeUk_c[abQ`mh]j\niid[pfdp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunvqrutwsHHFIDEDFA@AEDDGBHJLHFDGKLIEFJOLIOIL[QJFHHKMIHJJKKIHIGKKKKFHJJLLLKIKLNT[\TPTMPONOOVQOOQOOQJJOPQdqiTYW[[\UY[]X]\\cfaafbce__fkmhmtyrtroppt
zpmmlkqsttrtvtuyxxuvqruovrtsuusGCEGFFAEC?CGDEGCIKLHFDGKLHDGIPKLOKLWMIEEHIJHIKILJHFHGJGGIEFLHIKNLIO\W^O\[`^OXYS\\b^MYZMXaRKYaZS`d]bX[ddVVX\YZX\VY\^c_d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCDLMACDBDIEGGFKJKHEEJJJFEHHPJLMJMSIHEAHFJIKKILJIFEJHEFGEEJGCJMJKT_Y`X`a[`UXYT^^Z_RY\P^\YN_\^S[^c_Z]`c`Y_b[`^[TXXZ_^dbbaceiekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIDBBCFGEGGIJJIIDFKKKEFHINJNLHLNGHF>GGLIKKJKKIGEIEDDEAFJD@JKIO[cY^^a_RTSW_`\]Y^QY\MV_WKQY[Q[_aa]^ca`bbbcceZRYVU\[^c`__cebhommllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQJFCGEBEGHFGHIFGJGHFHKILDCKKNMLLHJJHJG?GFNJKKLKKKIGHDD@DAHIA?IJGO]aZ[d]_TQRW]\\\_ZKW\LR\YIM^PP]_accccb\dcbdcfXQUTS\X[a_^^aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMB@IFCFKIFFFHGGJFFFILJNECKJLNJLIKJHIGBHHQMKKOLKKIHGED?DBHHAAGFDT]Y^X_Y_[]UXXP]]QKJW^X^[]VZ`RQ__bb``bb`cbbddbXOQQR[S\^]]]___dhgljnnp{{|~{
srw
|x\SKBAGFDGMRHCQJFHHHEFKJMPEGIJKNLLILKIIGDHKQOMLPLMKKHICE@DCHGBAFEBVUE\T^SV_XNTUNZ[MJKU`a[_X_^a]OYb\``_bcb]bbW__TPOPQXR]\[\^_`affelfoow|{{}
zo
~INFDFFGDIRcPDV^IGGHDFMJPPFJIJKNLKKLKJJGEJMQQNOPMNLNHKAD@BCFDCADEALHCLLPOOLFMFGIJHGLLMOQILOPPSPLQSRUZYWYXXdVOSTPPONPUT\YYZ^^aaefchdklpsszy{z~{}{
}KIEEGFGDKM^LGGXMHHJHGNLQQILKKKNNUNOKKLGGKPSSNPONONOHKE`DC_LDfcDM[H^\smOMVmYLCP`UlWgJ]XV^DLQULMTVQRTXWTXUT\TPfZhhdYTkTWVU[\\``abbb`fhfnlhrz|}~}|zr{z{
~z{LIEFFHEEKOTIKGaTHJOJIOMRQKMKLORUROOJLNGHMQ[YOPPNOPOIJPQI|YYrsXPmHqnoaVPqqsPBksmqspSo_[nX]V\XUkhU]VcZ`YZ_VUWjtuu_av_Xb\\f[_aaab^`bgmpl`pwtx}~vxzlv~tx~|~|z~wwNIEHMMBDLLGILFRVLKOIKRXWQNOOLQTNOQPKLOGMPRZZTQQOPPPJHZx]TxdhYRTQvgtlpbnfkQrOMwmjrpsrqrpop]ezuxqqzq~s}ku}bRh|essoss|}o~yor```bbZa`gknkblfgmw~~{xwtvzir~nt|~wx{~x|u|||ssNKF`]GAEMMHKKHJPOMMJNV^YULQSNYYLSSRNLPIQRTYWWPTPPPQKGfxlcxqmZJLUypumubnvPdeIfvqmwojfxxiWrQhzmijzz}lxzpgoXvvjvupash}ilx|o___cb[^cdgijdgbcdllppstsssyqrxblugry{ssuy~svzn|}yxrnNJStNDBEPPIKKJLPOOOMPZ`ZXKTWPa^RVQYSMPISTUXWWPUPONRJKrouuquqdhaVnLqp^FhyWvTLhx}x`y{sna^modRgrunmypwlvstqlm\s~zkmy|lum|kpvux^__b^]_edighee^bbiiijknokqnmjpacfdowxompsy~nqpj{ztromKK[VHGEGRPJLMKLQQPPPQW\YUNVYUfXRRY^TMNITTVWYWOSNNNQHRmHiwK`dvvUWlOnl{sajgvUKWkh}lmlx`[pz{^`zscroxqhd|ir{]TKl_vukiu{{m~xk|p]^^b[^bdegeeebZccikkrsrwgmihdg`alagsrkhmmr|kmhk{tmmkmOGJKHJHHRQLNPMLTSROSSWRVTPWZVVTTTa`QONKTSSQUVNNLMOPJHQNPULKKSTSRTPVUQQNQQXXQOPUTXXX[[USSW[WXWZOSUWWXQ]XV]USOXRWWWXZ`[gr^[\[]]_cZ_ccefdccbYccfffmnmuffgc`f_]g`dlhfgkhpzhggkujhgilQIKKLMKJTRMQQPLVVTPTUXUYURZ]VUTWUYXPOLNWTQNUSNPMLQPKJQRKQMKKORTRQQSSIHMNOQRQQQTVRXW\WSSQRUUVSZQNSRXUTYVTYUSRUSTUXYW^Z_a]\[Z\\`c\]bcdgeddaY`acabihincad^_c]Zd\bma^ffgmsdihkkeddfhPJKLOOLMTQOTQQMXWUTUWWWZVT\`VWVYUXTQPKOXSPNUPNQNKSPMOUTNQNMNQSPTQSTUNKMOQTTRRQVWUYZ[YSURTWWWY[TOTUXUTYUWYTRRWUUW\Y[`^VY_]^]\]aa^[bbchfedbX``b]`hefda^_]]^ZZ_Z_g`^]]chkagfhfd`bcaPKMLPQLOTPPSQOQZYXWXZZXXV]jdVXYZWVTTOKOVTPOTPPQNMQQPRXTRQOMOSUNWRTUUONNQSUUTTRTXVZ]\ZVVQRWXV[[WQTVVUVYTWWTRRXVUZ_Z^`_V^]^`\\``__ZbbdhhedbYb`b^_fdd`b]\\\\YZ[X[a[^]\_b__bddbd__`\PMNNRQMRSPSTQOU\ZZW[[\YZ[dqmhd_[YVVXRMMVSMNROQROLPSRUZUTPPLPWVQWSSSXMOPRTXUUUSUYX[^][[VROUWV[\WQTWUWXVTXZTSQYWV\^[__`Ua\`a]`b_\`]cacgidf`Zc`a__ee_`c[Z\[\YZYYW\Y\[`^_[^^a`_b\Y`ZQNONVQPUSPUTSPW\\\X^\_W\^jqwyc\[VVXRNOWSNQQPRTRLQTSYZWUORNSXVTSTRRZOQSSV[VVWTVZX]^\\^VSNTVV\\VRTVVXYSTY\TRR\XZ]^]aa`Wb[cb^ac_\bab_dgidf^[d`a`ace_b_YZ^[\[YXYWWZZZa\][]\\Z]`W[[ZPOOOYPUUSRWRTP[]^][`\`U\]ijr}slg\UYWQOR[SRQTRTUTKRVU[YZSOSRVVUSOVRSZRTUTX\WXXSX\X^]Y[^UUNVWW^[XQUUXXXUWY[TSV]Y]]a^cc^Y`[eb_dd^^cca]efidf^^da`abcd_b^XZ_[\[XXXXW[Z\`][[\[XY[^V^Y]POORZPZUUWVSTT^^`^^b\`U]^bkytl}lZUZUQQS\TUTUTVYWLRZV][\ROUSXVVSPXRSWSWVV[]X[YUZ^X_^Y\ZRWRYXY_ZYSTVZYZVXY\VUZ]\^`a_ed]^]]eabfd^_dc`\gdhedb_da_a`bb_`^WX^Z\\ZYZXV]Z]^[Z[\[WY\]VXW]SOPWYQ]UVYWWUX_`aa`c]`U]^beeuzhXYZTVSV\WWWVVW]XPU\Y^]]TSXRXVSRTXRSVSYXX]^X][U^_X__X\VRYTYZZ`X[TVX[ZZXYZZXV]^_^cbaee]b\`fbdfd_`dbb[fchecfaf__aaaa`_^VU]Z[\[Y\YY][[[XXY[YZZ]_]TY]UNTZVS\TVWYWV\`abcad__V[`da_zuohY\ZVXUW[ZY\YXY`WPU^[`a\TUXPUVUSVVRSUW[Z\_^Z_\V__Z]^Y^VSYWYZ]bY]UV[\[\[[Y[YY^_``dbceebdZbfcgfe^ac`c^cciddg_g^bbcaa`^_XTZZZ[[X[XX\[Z[WWZXW\[\`]V]]SPVZVVZUYUXWX]_badada^YYadb`lfh^\][WXXY\\\_[Y[bVTW^]ac\SVYPVVVVVVTVTX\\_``]`]W`^[^\[^XVXX[[__[^WX]\]^^\Z\X[_a^`dcdfffbYceehgd^ca`ec]fidei_f^cbcaa`__[XY[YZZXYXW[[Z[WXZTY]\Z`\U^bMRWYVWZY[\YWY^`badada]^Yacb_a`a_\\]XW[[]]__\Z]cXYX]`cd_RXYPXWXXXWVWV]]^`aa_b^Ya]]^Y]^YXVW[\`_]_YY^]^^a][ZY\_a_bddefggbZdfgigc_c^afeZhicfice^bbca``_]]ZW[YYXXZYWZ[ZYWXVU[]]]``bbxKWW\XW]\\]ZW\]_`bdbba]`Xbcb`cab^\\\XW[]_]`_][`d\\XZcecaR\YOXWY[ZYXZY`]`bb`ac_\b]_][_^ZYUX]]_`__[Z^^`bc\[W[]`bbcedgfegd\efhifcab\cg`\iibhife`baca_`_]]\Y\YXWXYYW\[ZWWXOXZ]acffrkJYW]ZZ_]\^\X]\^_acbaa]b[bda_ccb]\[ZWXjq`\`_]\ac_^YYcedaT_ZQYW\]\[Z[[c`cbc`bda`c^`\^^_ZXV[_]\aa_][`abeb_]S\_`cddfegfefe^efhhgdd`[fg^ahhbhhfc`b`cb___]][Z[YXXXVZV\ZZVVULXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{zzz{{{{{{z{{{{{{{||||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvuvvvvuvvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{{{{{{zzz{zzzz{z{{{{{||||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||v}}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½±µ´´´³³»¾¾¾¾¾Á¡~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}v~~y1333332j{éääääèÊ»À¿ÀÀ¿¿ÉÌÌÌÌÌϪ}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vxxxxxxxwwwwwwwxyyyzzzwopppppprrrrrrrwzyyzzz~||||||}|||}}}}|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvuuuyvvvz{x{xwvx{wzyz~|yyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{zzzzzyzyyyyzzz{|{{||{|||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwwy|z|{y|{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwww|{y{x|zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z|ywwwz{y{w|yxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzz}{y|x|xxxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyy{xyyyyxxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyyyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{{||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}||}}|||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrrqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqppnnnmmmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrqppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpppqrrqqqpopooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpooppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqqpppppppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqpqqqqpqpqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrqqqqqrqqqrrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrstrrsrsssssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz|~~|vvwwvuxzxxxxwwwvx|yy|zyy|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{{z{|{}|{{{{{{zyxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|~}{|}}}|||~|}~~~~~}}||}}|}|}}{}}|||}}}}~~~~~~~~}|}}}}}~~~~~~~~
~~}~~~}}}~~~~~~~~~~~}~~~~
|||{|}||~~~~~~~~~~~~~~~}~~~~~|}||}}~
}||~~
}}}
~~
}}~
~~~~
~
}}}{
~}~~~~
~~~
¡
}
~~}}
}}}
}}{~~~
}}~
~{z
~|}}}~|{|
~}}~~~~~}|~}}}
}|}~~~}|}}|z|
}}}~~}|}}zzz~~
~~~~~~}}~~~}}}}~}|zzz~~}~}}~
|}}~}~~}~}~}}~~}}}|{{{zzzz~~~~}~~~~}~~}|~~~~~
~|~~}~~~}~~~}}}|{{|zzyyy{~~}~~~|~~~~}|~~~~~~~~~}||}
~}}}~~~~}}}}}|||{zzyyy}~~~~~~~~~}~}}{|~~
~~}}}~~}}}}}}}}}{zyyyyy~~}|~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
}}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
~}|||}}||}}}}}}}}}}||{z|xyz{|~|~~{||}
~
~~
~}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~||}
~{z|
~~}~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}||}~}~~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~}~~~~}}}{}}}}}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{||||{|||zzy{|z}
~~~
~~~
~~~|~~}}}}~{|}}~
{z{ywz}~
~~~}}}||}~}||}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}}}~~~~
}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~}~~}|~}~}}|{|||z{z}~~|}|}||}~|{{}~}~~}{{{}|z{{{~~}||~~~y}~v{vx}|||{}}~}}~~~}~~~~|~~}}}{{}}|z||~||}|||||}{}{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~}||}}|}}}}{|~~~~~~~||||||{~~z|{||||}|}|~|}|{{{|y{|{{}z}~~
|{zzy{}z|~~y|yxxt|||||||~~}~|z|}}~}}~~}}~{{}~~}}|}}}}}~{}|}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||}}|}|}}}~}}~~|{{{||}|{z{|yzyxy{~
~~{zy{}}x|zr}{{|||~~}}
}~~|~~}|}}~}||~|}}|}}~~}~|}}{|}~||{|}zzyyyy{{~~
~~~~z{y}}zzz}q~z{|}}}}zx
~}~~}}~~~}~}}
}~~}~~}}||~~~}}~}|}||{|}{{{zzz{{|}~~
~~~}yzz}|yw{t{|tw}~}{{vv~
~~~~~}~~~~|~~|}}|~~~~}|}}{}}}||{||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||z|{|~
~~~~~~~~~z{z}}uqz|zqz~}yxut
~~~~}~}}}~~~~}}}}|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}}~~~~}}|}}~~~~~~~~~~~
~~~~}{z{z|{z~~}~~~~}~}}z{|
{{syz|pwuvwyutz
}}}~}~~}~|}}~~|{{z|{|~~~}~~}}}~}}{{zx|vyy{qtxwvxury
~|}}~}~~}|~~~~}}z{{|||~}}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{{||||}}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~~|~~~
~~~
}}}|{||yz{z~y{yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzswvst
|~}~}~~|~~}~~}~}~~~~~
~}||||zyvyyzyvyv~|{{{~|{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}}}||}~~}~~~~}~~~~}~~}~~~|}||{|uyyxxxyw{|{{{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|{~}~~~}}}~~~~~}}~~~|~~~~~~|}||{|xx{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxry
}~~}|~}|~~~~}}|~~~~}|~~|}}}~~~
~}|{{||yw|ywxwwx{{{{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzzzzxswuqqrpxwq{
~~}|~}}~~~~|}~~}|~}}}~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{|||zzzzzzxsvupprowvr{
}}~}~~~~}~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}{|}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxyxy{||}|||||||}}}||}|}}~~~}|z||{}}{yzzzyysuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|z|}{}}{yz{zyxstunsqpxruz
~}~~}~~~}~}{~~{{}{z|{{yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}|||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|z}|{}xwvyyz|}||}{|}}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~~}}}{}z}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{
~
~||||x|yzyz|}|{||}}}||~{{|zzzupxwyvu|uv|
~
{~~}y|zzz}}|}z||}}|z{~~~}}||}|vrvxyvtvu}
}
~
|||}zz{}~||z|~}}}}~~~~~|}}~~}|{xvvw
~
}}||{||}}~~~}~||}}}~~~}}~~~}}}~}}~~|}
~
}}}||||~}}{|}}}}}~~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~
}uy~
}y|~{
}~~~~}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqtpurstv{}uvy
hzrss|s~}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyy
rpvxqvtturstvinrotvnulwm{snym}rsvsvmmxlpylu}}~}}}}||}}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}}|}|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyqjoyxpkyszozwvvp~~~z~}|}~}}~~}~~
xyrz{pp
x
xyks~y{krz|m{yyt}vnoot|uwqy}}m~uo
zrr{|upozls|nw~~}}z}{|}}}}~~}~}~|}~~
}w
}~{|{~{||}~}|~}}~~~~~~~}}}~|{|~||
}{{|~{||}~||~}}~~}}|}~~~~|}}~{|||{{~
~|{}~{|{}~}{|~}~~}~}}~~|}||~~|}|||}|||~z{{|~
{{~}|||}}|||}}|}|~}|}}}|||}|~}{|}|}|}|||zz||}
{}~}{||~}|}}|}{||||||}{{{}|{~}{|}}|}}~}|zz{{||
zz
~|~~||}}|}}|}z{{z{|||{{{~{{}|{{~||||}~}{z|z|}
|
~~~}~||}}{}}|~zyzy{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yyzy{}}zz{{}|}||z{}||}|~~|{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yz{{|{|{{z{}}|}|~~{{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|z{{{|}}}|~}||}~|{
~}~{
~|}}~~~~~~}}{|{zyzzyzz|yzzz{{|z{{{|}~}}}}||}}|
~|~~
~~~~~~{||}}}|~~}}~{~|{zy{zyzz{yzzz{{|z{||{~~}|}||}~
~~}|}~~
~}}~~|~~|~||~}|}}|||{{zzzzy{zzzyyzz{|y{}{{~}~}}}
~}~~~~}}~~~~~
~~|}~}|~}{}|}}}~}|||}{{zzzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<D:;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>9=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<9<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÔÔÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9?CE@<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÑÓÓÓÓÓÓÓÓÓÓÓÓÓÎÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ÛÛÛÛÛÛÛÛÛÛÛÛÛÛØÖ×××××××ÖÖÖÖÖ×ÚÚÚÚÚÚÚÚÚÚÚÛÜÜ×ÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILO@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÍmpppppppppppj§ãÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¹´¢¿¼½½½½½½½½½½¾´½æáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVN<::77>C?8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÎN&+++++++++++"ôëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¤ZUVVVVVVVVVVVR|®ªªªªªªªªªªª¬SRSSSSSSSSSSSKªòëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;?C>6:7>>;=B?8<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÍÎR+11111111111'óééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¥_YZZZZZZZZZZZV¯«««««««««««®XWWWWWWWWWWWWO«ñêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<;;<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÏ\9===========5ðççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©ª£hdeeeeeeeeddda²¯¯¯¯¯¯¯¯¯¯¯±¡babbbbbbbbbbb[¯ïééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÅÂÃÃÃÃÃÃÃÃÃÃÃÂÉÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÏÎÎÎÎÏÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÑÍÌÌÌÌÌÌÌÌÌÌÌÌËÏÓÓÒÒÒÒÒÒÒÒÒÓÓÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÔØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<8@B<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÏÐÐÏÏÏÏÏÏÏÐÔÐÐÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÐÔÒÏÏÐÔÒÏÏÏÓÒÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××Ö×××××ÖÖÖÖÖÖÕÕÖÕÖÖÖÖÖÖÖÖ×ÖÖØØØØØÙÙÙÙÙÙÙÙÙØ×ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÏÊ¥ÑÑȧÒÑÇ«ÑÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÏϪѬ°Ñ¬²ÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D?A98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÐËÄÄÎÏÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<:6?B@B:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏѽÈ¿ÉżÉÆÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8FA?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÏÒÌÒÎÑ ÎÐÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÓ³ÄÙ¯ÂÚ£¿ÕÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:=?>=<9@<<::9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÑÎÃÎÇËÈÒÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÑËÚ¨¯ÏÛ¥³ÐÛ¢µÕÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:979;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÉ¥ «§ ¨»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;547<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡Ê»¡¦§±¤¤¨ ¯§¢©ÐÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÓ¶ÖºÕ¾ÖÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFHKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÒºÄÕÓÓ¹ÇÖÓÓ¸ÈÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÒÕÔÒÒÒÕÔÓÓÓÖÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEK>>786967899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EILAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDJ;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGJB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?:8776=??@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@BB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEEC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<;DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsoupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸········¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢¢¢ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¥¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;;;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤££¡¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::88:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££££££¢¡ ¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¢¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>98;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ¡ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9;;>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:=>:?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_]]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=9F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VPQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
}§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s}~
z}}¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
z||}~x
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPFMHSWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~}}¨®²¯¯µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWLO_^\NUUbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
£ ¤£¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJCPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©¨§¡¥¨¨«©©¯¡¡££ ¡¤¤§¤©«®¬¥£¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdVOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®ªª«¤¡¢¤©§§©¨£¢¤ ¥¨£ ¡¢©§ ¢¢®¬«ª§®¨¥¤©©©©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPORd\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨¦¥§©§©¨£§¦¤¦¢¡ ¡¡ ¡¤¤¢ ¢¢ ¡ ¢¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOWO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§¬©¤¢ ¢¦¡¦®¦¦¡ ¡¤¡ ¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvwa_\UYQUV[c^s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;><@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯ªª¬¨¨«°©¨ª¨¡ §©°²¯¬£¢¦¡©¥¤£¢¦ ¥¤¢¥£ ¥¢¢¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\V\hdocniib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶¯³°«±²±£¢ª©§®·¶´´¶³¯¬«®«¶°©²±®§¦¢££¢¨¥¡£¡¤¢§ £ ¢¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxib[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>AE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ª²¸¼¼½»º¿´¯±³µ´··¯µ´µ²°¨¤¢ ¤ª¦¦¡¤£¤«¥¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxyxc[RYT__amhukpgiibYSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°±´µ¶¼¼¾¼¼¾Æº¸·º½´¯µ±±º¸·²³²ª¦¦¤¤§¨¤®¤««µµ®³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YSah`fsositdidb[LK>:8898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÃÆÂù½¿ÀÀ½¿Ä½¼º½¾´§ª±À½¸µ¹À³¯¯ªª¨§§¤¯§ª´¼±´µ¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`a^^jbbnwuvnl[bQU\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAB;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅÆ»ÄÀÅÆÀ¹¯½¼À¾¾³«ª³»¾´µ·Âº¯°µª«¦ª£¤§±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklfnuqruqf^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÅ¿ÃÂÆÅÀ±¾º¿Ã¶¶º©´³´©«³»»±±¯¬¤¬®´§ª©¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tkkndomhqxoyjia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÃÄø´À·´¼Á¹··¿À»®¥®·¼·£·°¦´µ¬®¥¥£¨¤ ¥ª³²¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{vnkiguZfrwsyfg]d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÃÃÁľ¸¾ÁÃÀľÁÏÏÎÆ«¯¶´µ« §´³®«¸µ³«©£¢©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuueeijg]jomxwcb``^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÏÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈÇ¿ÅÇÄÄÇÈÊÒÏÒ̼¸¶´¸¸Á¾¾º½º¼º¼¬§ª»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqobagugiitmxl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÍÐÎÇÌÉÂÁÎÃÊÊÈÆÌÊÍÅÆÅÃÆÅÉÍÐÍÏÌÇÄÀÃÂÉÍÇÅÁÄÇÁ»¾´±°°Á¾¿ÁÆ¿¾¸·Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlieuotb]bTWTSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<:>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÅÇÈÆÒÉÁÂÿ¿¾ÄËÈÊËɺÎÓÈÈÍÈÃÈÉÉÅÅÃÂÁÂÇÇÉÊÇÌÈÇÈÍÆËÏÅ·ÀÀÀÀ»º½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrpfegdjeajmno^Y\VVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ã¹¸¹»¾ÁÇÁÅÃÓ©ÏÄÄÁÄÁÂÁÄÁþ½ÂÀÀÁÂËÃÆÌËÅÈÑ°¾½¸º»¼¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·½Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbabccjbgc[ZZ\YQNE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶¸´´µ¿»½À¹¾ºº´À¸µ·³®º»¶¾Ì¶Ò¼¿Á¼»Ä¾»ÁÄÀ¾¾¸¼ÁÁ˾½ÉÄÀÀÊÀ±Á¿»¸»¾ºµ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ¾ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ §¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qc`bbgjgfiei]VVTYOSKE8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´µ±°µ·µ»Á¸¾¹¿¼¼·´·°®·µ¸¿ÏµÁºÃµºÇ¸¶¹»½¹º¶»ÅÅʽ¹ÅÀ¿¼Á¾¸Æ½ÁÀ¼Å¸¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¡¢¡¡£¢ £ ¢¦zxpmeefoiekhXXNKKKRILHC9=8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ·¸´¸²¶½ÅÅľǷ¹¸·µ¸º´¸³»ÅÆËÁ¼ÆÀÀ¿½¼¿ÉÃÄžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksebm_\THKJDJBCG?9;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??==97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼¼À·ª¤¯±¶º±½¾»Ä¶·~wtÁ¬{ÉÆÏÂÀ¸®µµ¼¾¸º²¾ÄÄÊÅÁÉÿ¿¾½ÇÌÇÇÄǽµµ¶Á½º»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qelintnxcgb[cQKTHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?A=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼««£°»ÔÚ»º¾¼Æ²wcldP[a}z
ËÎÑÌÊĵºÀÃÈ¿¾µ¿Á¿ÆÆ¿ËÆÿÁ¼ÀÃÌÊÇÅÆÀ¹½¼Ä¿À¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_b^`aNHM?E@?DC;;::;:8;<:9<>9:>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED<AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±³Ä¢²Û¿¼½º}do``s[TUXl|ÈÈÌËÍÊÆÂÄËμ¹½¹¹ÀÿÈÆÄÁÁ¿ÅÀÊÉÃÃÄùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw{_pc[]_^SI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸µ¼·Áoo°ÍÁ´zZJdcKp~n`QYx ÅÂÇËÈÁÃÁÀÉÊÂÀ»º°´»½ÀÅÆÅÅ¿À¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²²¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}zmsxsgp][^\YQEDCMIAE=G::59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯·¶²µ³·¹¼»¶»¿Ç}ov¤¿UROgO\|lFk¬Ã½¿ÆÀ¹À¼¾ÅĽ½¹²°®¸·¿ÃÇÃļ½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸¸¸½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|vluzpni[__YSPAEHGK@DCH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÇÈn¥sQLb_QQUvNe®¸¸¸Âº³»·»¾À»»¼®¯®³²¹ÁÂÄþ¼¿»º¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ¯µ´´½º¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsvvwnq`_f]ZTJ<??FF=FCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¸ÇÈxtaLbq\OVd°ºwVP~¯°²±·¾¹²µ²¼¹¼¶º¾²´´´°¸¾ÃÆÄÀ½¿¹³¯²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtvql_ca[]OHA>=HCFMC@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·ÃÃyVQkmVepg~qm^¼³°¶ºµ´²¬¼¹¸µ¸Áº¸³±¬·¼ÁÇÿ¹ºµ®¥¬³°¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wo{ourmc]fX\]RNMA>IBAJI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸¹Ã¢~J^Ãt]v|ijt´»µ±´µ²´¯¬»º¸¶¹Àö®®ª²¶¼½¹¶²±¤§§£¦©®¹¬««¥¨¤«®®§¯¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmuik][jT]\OMHDFLBFNF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ²»¯Lbvpzcjls~zsº¹²´³°±°¹¸¶¼¸»¿²²²®±®¹¯ª«¬£¨¡¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndT`cW\QNLH@HQDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²´¦ªWonj\h_]VY^gci¸²³¯®¬®¶¶²´µ¯ª¤¨¨ ¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨««¦¢£¦¢ ¥£¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vybwln\QhTPNGPMLBOQ@>;>39:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¥¬©±À·¯hxxkshY^PJHJLQOZkn¢¶ª²´®ª«¯°²³®¥ ¢ ¤¥¨¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ £ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uu}mk{dhUQcMJHGORMJNG<E@=2?759;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡¨¡¥ÄÃ`ecrcTLF]IPFMKKS^]|¶¯¯³µª§¬«¢ ¢¢¥¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¤¡¯¨®²«¥ªª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}vx|dyy`bRU`IIJKSTIRPL9?B67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¹±
zgjcVHP^{lSKGGNTTd«²°°¸¬¦¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§ £±®²±´ª²¯¢¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|uvshle[SZYMQJNOULSLA7>B68=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢£§}l]TLIUª±hPFCCGM^°¬¯§¢ ¡¤¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¾°¬±®©ª´±°¨«¨²µ·³¸²´¤ ¥¬¡¡¢ ¤¡ ¤¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xuiwu]lZR`HRUHFUVJBLG=KH8E<67;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¡¡n`UPNO\«àÚºubSHBM«ª©¤¦ ¨¥±ª§®£«¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼·½³³µ¢¬¢©¨²©«¨§¨ª§ § §¨¥¤ª¡¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vqmivmhm\X[BWNJGMGBFM<>L=4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·¤°¦¤ tYRORR]u¸Òº ©¹y®Ä£¨©ª¥¡¢
¡«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶º»ÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸³»Æüü·³©³ª³´¯³®ª¯£«§¶±¢°¦¡£¯±°¤¥¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¥¦¢¤
{tqkkurphW[QETHDJPI?EA4FH95;=6;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ fPINP]u²½©¢ÜÖÎÔÙÈ´®§££¡ ¥«¥ym ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÇÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿ÀþÇÆ·ÃÉÉÂÁƾº´ºº´»·°µ²ªº²®»·¿»ºª·«ª¸º´¼®®¹£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢}zqkdhoxjdZ[FKLEDSLDBE7:?;549978>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¢]KELSu
³¶¤ÅãÜÑĵ¦wsqnp¦®´¹Å»ÍÇË¿ÂÌÎÍÌÇÉÑÌÍÌÇÉÅÅÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÔÍÓÐÓÓÌÊÂÆÆÇÊÈοÈÑÌÇÅÇÅÁ¼ÃÁ¾¿¾µ¾³®¿¿ÂÃÇÄÇÄ®¿¸²¸¼ÃÁÁº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLCEPIDC@5558:B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £cJIM\~ªÑж ³Ó̺¯¨¢yrroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÏÊÓ×Ñ×ÒÕÖÓÓÈÌÇÌÍÉÒÍÎÓÍÅÈÉÊÁÆËÇÈÉƿó³ÈÄËÊËÏÆÊ¿¾¿½ÁÇÄÌÌÈɿÿ¯³¨¢ª£¦©¬¤¥¦
zruvgcgvidVWQDMF@IQB=B<:22@<D<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<A?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢ ¥w]gh°ÒÚÚÖʺ²ª£¡¥ |wpkebhqoq{
vpnqtp
³Â¾ÅÑÐ×ÖÖÒÖÍÔÖ×ÔÓÑÓÔÔÓÏÑÃÐÓÖØÕÖÒËÉÎÑËÆÍÒÊÒÖÖÙÕ×ÓÖØÎÒÊÏÑÌÎÐÌÒÏ¿ÈÇÊÃÌÌÌÎÏÅÆǶ¿Ê¿ÑÍËÏÆÉÈ¿ÃÃÈÎÌÏÐÏÍÊÇ͸·»¨¥«§£ª¥©¨¨|xsvpc`erb]R\IJGAEHI>;A8=4585;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¤¥ ¡ª¯ÎÔÙÚϼ¯¨ ¡¢wic`____^_`^blusqpolrquÄÇÆÔÕ×××ÓÖÏÕÔÚÔÔÎÏÕÔÔÑÑÌÐÍÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐØ×ØÑØÒ×ÙÕÖÌÏÏÊÍÒËÎÐÀÆÂÇÅÎÍÑÑÑÈÌÍÀÊÌÅÓÎËÎÈÄÊÇÆÈÌÊÓÓÑÕÏÒÌÓÁ¹Å±¥¨µ®§¨¬¥²¨°³¬¬
|zqstmacim_VP_JJCFCRM?<>54:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¦®·¨«·×ÔÕÙÙÑÎп¼Ìɶ¾®¦ª¨¡¦{ÅÖÒÕ¦¡ }qecc__a__a`_``_`fnppnkorwwÌÁÒÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÒÊÏÌÓÖÒÑÖÍÏÕÕÑÅÑÔÊÐÔÕÖÎÒÐØØØ×ËÈÎÄÉÏÌÊÌÀÉ¿ÇÉÍÎÏËÐÍÎÌÎÏÈËÐÐÊÎÊÂÉÇÉÌÊËÑÒÌÓÑÑÏÐʽȹ°®»¸µª¶°¨¸³¿»±
zvopokadnpaW\ZIFFDMWE;@=33<=87855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÀ°©¬©¦viÓÖÍ°k^^^adb``aa``a^__^]bmroostvvy¤¾ËÕÑÖÔÓØÖÎÎÔËÍÎÅÎÊÒÒÏÇÎÍÍÔÌÎÓÍË×ÖÐÌÑÔËÌÐÒÓÊÎÑÕÒÕÕÊÀÉÁÅÌÂÈÉÂÌÃÅÈÊÊÏÊÍÌÐÍÓËÆÈÏÍÈÇËÅÆÁÅÊËÌÏÑÆÐÎÍÍÌÏÅÇÁ¸¹½Ãýù³²¾±»Ãĵª¥¢
ypqkmg``phXXhVLFLIPPB;C>;67:89:57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±Ç¸ËÕÕÙÚÛØÌÌÏÈÖÕĵ¯´¨¡¨do|¨ÙЪ|eabb`]^acb`_``aa`_][]grqqrsqmry¤ÆÓÏËÐÏÔÕÉÅÉÉÆÆ¿ÃÆÏÎÇÅÇÍÊÒÈËÎÍÆÑÒÐÎÌÔÊÇËÎÏÇÇÏÒËÐÏźĿÆɽÂÇÉÎÅÂÈÀÇÍÈÄÌÊËÏÈÄÄÐÈÆÂÆÈľÀÇËËËÎÂËËÈÇËÐÄÅÈ»ÇÃÉÈÂÏÁ½¼¿°ÁÉǹ½ª°²§¥¢£wotdk`^fpa[W`GHHGIMTG?J=64355=<48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼ºÍÍÆÐÕÕÙÚÛØÐÉÏÏÑÓȶ»»¦^owºÐ«~
s`[^^^`^`cdc_]]^_``_[Z\akrrookloo}¸ÑÈÉÊÏËÍĺÀû»ºº¾ÉÆÂÃÀÃÈÊÉÈÊÈÁÅÌÆÈËÍÉÄÂËÉÁÂÌÐÅËÈ¿¹Á»ÆǾ¿ÆÏËÿûÉÇÈ»ÈÆÅÊÀ½ÂËÆÅľƼ¼ÀÃÄËÅÅ»ÀÊÂÅÇÒÅÁÉ¿ÊÉÆÈÆÐÃÃÆïÄËÇÃÊ·¿¼º´©¬¤¥¬£¡¥£ {vstfiZanlZ[XRDLFBGDLDFS@54334?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÀ´Ã¾²²`r¿°{
vxurp_[[]``bcdded`\\]]_^`[YZ\borokilposƼÉÅÌÀƱ¶º²²³²±Â¼¼¼º¸ÁÁž½¹½¿¹ÄÊÅƽÆÀ¸»ÄÉ¿ÂÉ»·»ºÅÿ¼ÁÍÃƽ½µÁ½Ãº½Æ»Âº³¼ÅÄÁ¶¿¶µ½¿ºËüµºÈº¿¾ËÄÁÆÂÆÉÆÈÆÐÆÂÌDzÇÉÃÎÍÁÅÃÀ½³·°²§¨¨¹°¥°ª¬yvwjdg`hocV^YJFJFHJAEBEI@9:648853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÅÂÄÈÎÑÊÊÊÇÍÍÎÑÈÐÆÕÔÖ×ÍÊÏÅÉÅÇÀ¸Å½«¯~duµ
y~|ttc[\]^``bcabeeb]][\^\^]Z[]]hsqmggnpry½ÌÀúÁ¸®°°§ª¬§¸µ·´³³´¼¶½±·°µ¯²»Â¼Áļ¿ºµ³º¾À¸Ç¹´»¶Á¼¸½ÆÁûµ®²¶º¿´Ä·»µ«¸½½À½±º¶¯¶º³Å¼·®»¿µ·´Å¼¾ÃÅÀÃÅÆÈËÅÀÆÆ»ÈË¿ÏÊÇÃÆÂ÷ý½¶¹¾Ç¿¬µºµ·¶ytxfgebkn^V^`FKHHJFBDAEE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐÌÍÈÊÈÊÉÊÄÐÍÒÏÍÅÇÁÅÀ¾¸·Éµ©°mq{y~wx}ti^]]]_`_`da^dec__\[^\]^Z[[]_lpnhfjnnr|¤Ç¿¸¸µ°«¬§¢ª§«³©¬©´¯·°²©®¦¬²¼º¶Ã¹ºº±«µ¹»´Âº°À±¾¼»¶»Ç¹Â¶ª¨°²À¶¸½°°§²³µ»¼«®µ¥®µ¯»²°©¹°»®»¸»ÀÀ½¹Â¿ÇÃÅÁ¼ÆÂÈ˸ÅÇÅ¿ÆÃúÄÆ»ÆÉÌ˳¹Â¼»³svvkiablhYWW[ALKMIEAC?FA:9:995854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÅÏÇÍÁÃÆ¿ÄÄÃÃÊÁÉʾ¿¼Àº²³´Ã®©®hd|x~
z{wn^]\]]_`__dcbccb`_][[ZZ]ZZZZ\dnohfgiknr¹°µ®¦¥§§ ¥¡¥«®¤¨¢¬ª¬ª°£¦ªµ¶±½¹¯·¯©®¸´´¼¸´¼¯·¹µ²»Á²À®¥©¢«±²³¨½ª«¨«¬´³¦¨®¡¤¯©²¦§¨®¦¨·¬±²·ºº»²¼½¾¾Ä¿µÂÁÇÈ·¿ÀÅ·Ä¿»¿Ä¾ÄÈÌÊ¿¾ÄÀÀ©strji]aodWVXPHYRSKFFE>>@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃȺºËÁ˾»É¶½Ã¾ºÉ·ÁÃÁ´µ»µ°®´»¨§_q{~~xt|swe_]\\^_`^_ccab``_]]\ZXZ[[YXZ\_fkfegeikor
ª¥¬¥ ¢¥¥¡£ª¤¢¦¥¨¥ ¥¦¬²¯¶·§°«¨ª´«´º±¶µ®¶¹±¯ºº±¶¤ ¤¦±§«¨¹ª¤§¨¨§² §¦¤¦¬§£ ¡±¬²´³´°µ¼¶»ÁÁ²º¾ÃÁ²¹¹Ã³À½¿µ¸»½¾¼ÂÇÄÂþÀÄ xpkaf_ko`TY^HNgOTGEJF<=?=:;;825536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:7676788666;::;9:;<859<:>>@;È´µ½¸ºÀº½µ ¡¦º¶«³³»³ÄÏÈËÂƸ·ÇÁÌ¿¸É·»Å¸³Ä¸³¾À«µ»±«¤®²¬¢a|yutomkjjqi^`]\\\^__acb````]\[\\XYXXXVX[^_dcbegggjmo© ¢£¡£§ ¤¦¢¨¢«°¬±¶£©ªª¬¬¤´¹·°¬³µ®²µ®°ª¤¢²¤¦©¸¢¦¦¨¬« ¥£¯©«§ª¬¬±²¸¯¸¹»°¶¼¼º«³³º³½´¶±±µ´¿¶½À½ÃÁ»»½{sk_e^ddXTW]IW\KPGIIFA<??@;?<04536:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÏÈÈÀÆ»»ÄÃϾ¹Ç¸·¾·²Á´±»»«¸¹°¡¨ª¦e
xrnpnkb^bff]]^]]]\]_`abccba_\[[ZZYXXWWXXXXZ^bddeffhikr§¢¢¢¨¥¦¢¦ ®®®² ¥¢®«§¢µ±²²¬¨¯²§º³¦µ ¢£¡£¢ªµª¢£¦¦¦£ ¡«§¤¤¦«³´ªµ°³«²¹´¯ª¯²²³·³®©¬®²¸°º¶º½¿·³±
yue^e^[YVSZUK[QKIEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ·½¿¶¾¼¿²¥£¥±Âµ¶½´¸ÂÌÈƿŶÁ¿ÇηÀĽ³¹¹²¿¶±¸º¬±´£¨wixoqtqifdhec\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWVWadecdeddhjv¢ ¡¡¢©¤©«§¯°ª£¤¸ª¡ ®¨¶ª¦§°¤·°¤· ¢ª¦¡¬¸°¢¡¤¢¡ªª¤¢£ªª°®¨´«ª§³°¥«®³±°°®¯¦§§²®±´°¼´¹·®£yud^aVYWSRTKM^LOKGGLLE<@><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾¸½®§¨£ª»À½À¹®´¸ÁÌÇÅÂýŷÈ̲ÁÂÁ¼»´»¼´¸¹¯¯¯§§pz|wqilrtpihedfb\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[bcbbcbcdfj ¡ §¦¤¦§¦ ª¯¦¢¤·¨¡¡¢¨´¢¥¨¥°¥°«´ ©¡¢±±¢£¡§§¡¢£¥¥«¤¥°§¥£««¦©®¯®«¨ª©³¥¦¬¯´±¯¼µ±¯® zvrda\Z]XNLRHRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847863321./2556;:8;7876<;:;;A8x»»±µ½°»±¸¬¥§·»¼Áź±¹µÄÉÉÀÃÆÆǶÆij¿Ū··½¶½ººµ²««¥¡q|~vncafihfhjgjm`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWUTVUSTRU``_`a_`acdi¤ ¡¦¢¦¤¤££¢ª«¥¥±ª ¥«§¢¬©©¬¡¢¢£«©°¢¡£¤ ¢ ¢¤¦£«¥¢¤ª¤«®¥®²©¦¥¦¦´¦©¨³µ´¹º¯©¬rpo`[WVURGQOHZ[ORJTKSLEFIC8;;=<8667:9;:976977:;:=<<6;<8>598:88659:<<97?<9678452121..1426:8698598989;9@9{µ´´»²°«²¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÊÌȵɽ±¾Äɬ±¸Áµ»À»´³¨©¤~p{tiijlgjkmkjme]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\]]^^__bdm£¡©©«¨¬§¨¥¤¥®¤¥¯© ®«³ ¥¦¢£¡©ª¡ ¡ ££¡£¡¢¨£¢¨« «¯£·¥££¢¬ª¨«¯³·³¾µ³«¯tsh[XXRUQEXLQ[XMTNPLPQINIB<??A?<65799<<987:79:;<=>;7;;:=67:;8976989:6:=99577571141-+/434988::8::748=8?9~³¨³¶®©§¯®©¨¬·¶¬¼Ê»¶¿¬ËÆŸÁÎÏȳĻ·»Ãȱ¸¿·¼½º²³£§
xsvwnmhmnmpggigd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNPQYZZZ]\\^_`d~¢ «ª¦®¬¨¯¤¨¬ ¤¨§®¨ª¥ §«¥ ¡£¡¢¥¥§¨¨ ±°¦±¼§£¬´«®§°µ°¹µÀ±±«}rsbVSVNRIFVPRQLLWMJLNRGMJACFDC>@65889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8³¬¦±·ª¦¢°«ª§©²±¥¶Æ´¹º³ÊŹºÁËÐ˱¶¸¼¾Áñ°²·´³º²±¡¡~vkglnqnqjpkdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajzv© ª¦¥«¨¡¥£
££¢¤§ ¢¢¦¤¦¨¦¡´²¨²·¡¢·¬ª¤²²¦µ¼µ¬«±£xsm]NQQLOCMNNPKFNNJJNMQIMJAGLHGC=858889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12876:999984988A7w¶§¤¶±¥§£©¥ ¨¥¤³ª¢²Ãµµ²³ÆÆ·ºÃÊÌƳ¬º½´·À¯©°¦¹®«
zm__frpvqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXYX[]aosvq
¡£¡£¥¢s~{£
~~ty¢£ ¡¤¤¢´¯¬¯¬¥¸¦¦±¡±®°¼ª©¯ªwscVMROPMCSNLQMBPQHINRMHJJCJLFKK<749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-12764789::65:87A7x·¡£´©¦¥¨£¦¥¦¦¦³§¦´Á¸°´°ÉÄ·¹ÁΞ³¬ºÁ«Ã¨¢¦¦µ«¡|v}eWV_gfighncjhgb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTRMMJHNSSSTUUWY[]ilrm
|tNXr_;Wo|s
yz
}xqo
}¡ §¯©¨¨³¢¦®¬«¨´¢©£}rn`[NSRVLDTJPMLFNOIELQMKOJIMOFII<7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· £¡¦¦ª §©§£©°¨§´Á¹±µ°Ç·³½Ï¿¹¯®µÂ§ªÅ©£®
{rt\QLRUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`mpi{tPB@}y`JQnx}
n~wuuwpQ{~xvhw~¤£¨©¥¤°ª¡¤¤¦ª¢ª¢¦¨tmg^[HQQRMIUMSILKOIHFJNLMTKQPOFIC<769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')+*,4833979:99::::?9w¶£§¢¯¡§¨¥§¨¯ªµ¼¶¸·³Á»¶§¹È¸¶¨¨µ¶ª²¼¦§}|vomXMKMNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZntw~ji]Ut|
{vxsnuptz~«
yzhv{prmxxz{vrrwgu{|© ©¥§¤¡¤sh`\\JVORGJXROJLMRJJJLPILQLRTLEHA<77;99>=:;<98@?::>=7==79937785675251472/2.,//200/-+(().1272198798775:<;7v®£¢´©¯©¥¬°±ª½´²»¸¶º´±·º²ª¬©¨²¯¡~v
w{uonhXKHHHGEHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQQSV^u|xfw}hyvx}q|w{ok~}s{}tfv|lohs|lyq}pmuqiq~pC
wwz
~{u~£¢¥womebZWWTQJSUTOPNPVKNKNOJQNHNOKEC<;79;::?=9<:99??;8<=7<9999266856633611224.,,-..-0-+*''*.1362/876966527995y¦ ¦¯¬®«¨©°¯±«¼¸¬»¾¹³¬§°§¬¥©¤ yup{mtpiliWKFGEA@CDILLMQRPQSTTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNPQTX]eprm§ªÀ~uyc|xo|yz}omytxjjq~Inhw~licly
ksl|nr{impsz}~{vots
yxp|~ninnnWUWTRQYORTTSXUMNHNKMNKCHNGE?;99;99:><9<;::=>:8:<9?868727565541432/024*+**-.+-*(*(',-1250,5567485HA895w¥°¢¬ª¨µ¯®¬´¿«¼Â¿¦¢¤¡¡sz
tntkpldkjXNEFC@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORWZQY\`§bitzepmzvtlts|jkMy
g1vsl~~tfet~
filukq|gqq{n{s}|qpnumxyujyyvjjohdWQZWYY[MPUVYXNIHEJJHGBAFDCG=998;9:9<:9;:::@<9:<98>787715234533645031.**+),,++)(+'),,226,,5775478iO8;5n¤¨®²¦º¯«²°Â±»ÃÇ
yqs
zorpnodpf_TFIC?<;9:?@ADDEGILOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQVLAIQIb¯³ r|xl}mr
zyr¡txsu5q¨¡¡¢
vp||sgfbjnrmpuioXupwl{}mqmpzsvncv~
ux~~{rpol`[\][YX`_RN[ZXWLHJFJG?CABG>CD=;97=;:;;9:99;:?<88=:8;66651121253474531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥µª®±®Á²»ÁÆ}n
ul{txxlwnwci^IPG>@7449;;<=>@BEHLLLLNPQRUUVWXYXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~mw|~
~v¢y~
aªzw~sz]dqtz{wlgjbyo
znwtzptzwkni^w}|
}q}uw{|vprsfg_[[]S[f^WQUX[UGJJDLG?F@DC>AA=:97<;;=<::99;;=>79>9985653244004645554-,)+('''&(())((+++/00Uq=23331E~W4=9\x¦ « ±¨¯À±ºÅºz
vk}xs¡}}~p~zgvkRWL@E211367688:<>AEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJi{y|q|z}~v¡¥¬©H®¯¯¨sm|}hghx~n
q
Gkwryvhmk_w}
zzuv|xmow~ssqk[^][ccXfe\UPPVYPDLKFNICFCCA@CA=988:::;;:888::?>6;>7585773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|~
¡¬¡¦¸¯³¼³}tp~}}~¤
x~sx_cWKB60./23123668:=?@BEGHJLNQSTUTTVUSQOGC?80,#[>?84.]ps£UFIKMNPW`YpZ\^j
~
¡¥»±§»Çè¡¥{rv
jhouqw{v
}nvug¡«¡{zzogkx~y~rjd^[[]i\af_YOKNWRQIPJDNGCJDB@DDA<:87=<:<:88778:==8<=68656623445576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfx{¤¡¬¦«¯°¡xw|mpj]BA4--//./02234779;=?BEHJNQRSRSTTRPOHDB<87/9D><<63.lMPHJLKKNV`cggmu £ª¥£¬¨¶¢¨Áîǯxº|¡
¢
lpuvql
r¡¥µ©¢}kjk|sa]c_Zfj\kk^WKGOSQNMLFIPCDMFACEGB>:97=<:;:987767;:6=:785456345566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYppuqv~§ ªge¤~y}
xx~gMR>/..,/.-/000212557;?CENPRTPQRSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} ¨¦¢¡¢¨©«¨¬©ªµ«¿«¶ÈÈ·ÉÑϾ pi«©
¡§¢wz~¡{v«³ }¤¢¦¶°¨lss|~zqh`\a_afc`gg\QEJKPOIJLFFMCHLFFCBGDA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppu`n}aw}|ªªBD}x|
w_bP460-1/,.00./..0015>AAMQRSPRSUSNSLEE@<>=GG@A@8662<9;FHGIJMOQYmw£§ª´½¸¥®¬¬¨©´«°·²²»±³¾³Ä¬»É˸Ŀ¸¥£°²¬«¤
¦¦ ¢¦¢ª¨¤
¤¡ ª¡¤©±£§·» £°££¤¢«¯³µ¢¥«z{~}f`h\eb]cc^ff^[OCIHTOFHLFJGEFHAKFCFFA:87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicWjpXz
v
ÚÈsV|z
qna@E64<2/110-,+-1/-4?DAMUQRSUUWUN[PGGD<>>FHCD@8;<5C;=FKIGHROPW ®£³ª²ÁÇë³Æ¶´¿³¸¾¶¿´Á¶»»¤¸Æ©¶Éǵ¾¹´¨£´±±§¯«¤v¤¡«±³ª¨®¶»²º¬¯µ¢±¬±µ¼·µ®µ §¨£¨©°²º¸¸§·©¥ ytXadVea`b_`e_ZUJDELUQHJJDIGEA@@KDAMF<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AEWQJL[ZQcdWzuq}
v
~{¿»£¼´y
zxn]V@EM<6:46AB7650/6CHCQ\OQUWU\WP_UIKJA@?GKFED;>@7D7?BJJEGWTP^¥£±´Ã¶¸ÁÌɶ¼Å½´´À·¸Âµ¿°¸t²´¦ºÅ¤°Æ¹±³±´¨¤µ¶ª± ¢¢¥±®¥¬§¤ ¬³º¢©²ºµ»¾Ì¿ÅŽ½³Â·º¸¿·º·¹¬°¦±ª¾°½»Â¬º¨®«~zjWbaXjdhdVZcYVTIGGLQGCHIAHD>?BBK@@MC99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FQLALRWTYUZwjp
nzryb¸¡£{z||}wyueO\dGEL:Qda[^SF?;HPDZcQQYXYgZT``MSOEA?IJHEFA@C=E6B>HGKLSZT]¯¸µº¹ÉÀ»½ÉÌ»½À»·µ¼»·¾µº²Æ`u³¥±«½ª¥¨«ª£¢²µ¡«§ ®¥§§¥¤¢§±´§²²¼¶Á½ÓÉÊÓÆÂÅÌÂÊÃÀ¾½¿»¼·´°¹··ÃºÆ½ÃÉ°¹ª¢¬¥¨·~q_aa\Wa_hfRXaVRUIEENKA>GD=KB=B@=F>;H@796379>489:57045/26389374526?8@>GKRTTRPPQRQJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRLQ]hllq
tmsrsÕÀµ }xz{yt}zkepuY]\Peeb`ed][XW\MdmURmm^o_XgeUYTJDAKKHFHHHHBI9D?HKTTV\Z[¹À¹½·ÆÀ»¹Ê˺¶º¶¸¹³¸µ´®¶¶du¨p^¢¬¡£¤«¥¨¦¤¬¥ª°·°½¹ÔÑÏ×ÏÉÌÒÌÏÎÊÇÀ¿ÂʽÁ½ÂÀÅÄÆÊ¿È䤻°µ°¬¹½yl]`[X]aZcbQ[`SQKCAEFD<@E>BHB@C=:E>=J?47535;=468977022/24169775555D3ELM>510006:477@IOJ;-&**(-./,@M+/54mI0Ht?>BD@CDFKODR\Yi_polouu³¬¡¡
~|s{|ts{xlmu{hreilifjih`fihmZmt¤¼g[oh]ZYTHJNPJKQLTQILAJGKP__bfia·Ç°¹³»¾¶²ÄǶ°¹±°»¬³±§ª·¬¶§§O ¦¥¡¦¬¯¨¯§³´ÔÔÕÖÒËÏÓÕÎÓÏÍÅÂÉпÊÉËÉÒÈÍÍÂÐÒ¸°Ä¼Äº¦¶»Ä£nc\\]X`WZfZP\WNPCBHEBI;AD>AH??B7;D>@H=46655;:687654/10146278875367C5B8?-0,1349=97,.,1;FL=),(.0007K?-46TW0DwC;B>EBACJM?UYSeWshqoyy ª¦}
|p{r}qxulqx~q{mxslhpmcimpyiw}~Ë¿Âߧmcxnc[a`JPRUNY^P]]NQNTQUT\nnwr®¸¬´§°¶«½À±«µ¦¥¸§¬®¡¬´£±®¦«¬¤§¡¬¬ÎÒÕÑÍÌÒÓÔÐÔÑÎÈÃÔÑÈÍÒÓÓ×ÍÒÑÅÒÖÆÀÎÇÈ鿸Ðyne]b\V_R][NOSPNH>AFABE<@B>EE>??:===<JA45465<888664412/03526768533;=<E=@11+/349?5901022-2EO3)/3.32=N248C}_2AtD:==I>@CFH<VRMO[u
wmwp}~¡¡y
{r~z
u
ovsls|{v|swqjrrioqzyr{¾Ë~±vrvhaj]CZZ[VfdXekTX]\`c]cx{ª¤¤¡ ¡©¦ª±¹ª¦´£¢¢£¢§±¦k¢
~
§°¡ ¡¤¤¨ÇÍÏÈÂËÐÓÑÔÒÎÓÍÆÖÒÌÔØÖÖØÕ×ÕÉÔÚÍÉ×ÖÑÊÄÃÌrob`_XSYR[OJGIIJ@;:;EAD<BD>HB?BB;;9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/-.;R017/532ED28>nb5=tM99@I<AD?A;PLFKYpu}hsyr
w~xs{}w{nwpmuvx}s
|ylvto}vuy{µ<AÆ¥~|ieVICecfchjdoy[_fhknin ££¦²¤¤³ ¢¥¡© ¢±~
z~©£}«³§§½ÃƸ¶ÆÍÒÐÒÐÌÒËÉÔÎÐÕÚ××ØÔÙØÍØÛÎÉÚÚÒÖ¿ÌÌ´wvnd]YRUPYVEFJIEE=:79@AB:HD@ECADA;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BT29254/7K75<`bA<svV87AH:?C><9QECJTlnopaqqs|~
|x
zyqz{uz
zp|opzr|qnzuw}|u|°tX©Â¶pnb=^hrpqpnxweioruxr{ ª¡¢¥¬
}
~my{®ª¦®¶½¨½ÆËÈÉËËÏÉÃÑÊÔÖØ×Ø×ÔÛ×ÓÙÛÖÏÛÚÑÖÈÕËyzhh[YPSS]HBEII>A>=7:=?;>H=@AAADA>?:87DB755479.566435542323647553457EBDCEB56<FNSM[nfcnskaV>,4LG865433BF4=W_hLux^8;?F<<B<99D?CGRk_mdbfkvqy~
||~wyn{{tz¡vutu}toot|
zv{·Æ¤ÂɸxpeNfczw¢yyw{|vm¦ £«
{|¡¼¡¨¦¥®§µ¾ÀÀ¹ÇÉÍÎÅÍÊÑÖÕÔÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÛÆzyfhd_TWVUMKDMC;==<9:<>9>A6>?@<?><9867CA6455=80665547745613854564567HH=DJE7925;H>;::7IP]ZRUXK9T>;95327I8=NYMHxxd5=>C=<@:6:>>@EQ_Yea][htzylwvz|~}
z~
z
{u}tn|}~t|~x}xnt
~
|~z©Ã ¼£}}s~s¦
{hGq¡¤
¡~¦
¥¸¡§ £®¶ºµ«¿ÅÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Ü·xywjidV`[SONHDLB==>99::99<=6@>><=9:;;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8589?=DRSRX^UXfmmmiqrx{{}|z|{~uyszsm~}w¡n¨
z |~£¢ ¤¯
Wr¬\¢££¡
¤³¡¡§±¸¬¥¼ÁÇÍÇÆÏÌÏÌÏ×ÏÑÔ®ÖÕØÚÙÚÚ×ÖÙÚo|tgf\]XSVWC@ID>?>:49:;7:;:3;;?=>7;9:1:G=:27=@50677255?65;55858:57735HR7GOK994=EJB>1FCLA98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:<@;BQKKSYPTcbxmb~nmwxy~z}|{vsp
{vvut
}~¦£¦¢¨r²¦¢ ¢©¯n·ÄȲ¢¥²c¤ÍÈ
ª¤£
¥¨¡¢²´¥£¼Á¾ÇÅÅÉÈÉÂÊÓÌÍÔ¨ÒÑÖÖÖØÚÔÓÚÎrhb^]]NITYABGD;A=837;<:8=649:<:82?9929I:>67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF><88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBcFv}|m~xz~z~vv|lnz|xx|~£³§£ª³¡§¥£®¢¸²¡¡¤¯£¤§§¬¯¤ À£É¹«£¦²
¨¢
t²¥¡} ±®¢¤·¾´ÅÇĽÃÿÆÍÊÉÒ¦ÎÍÓÒÐÖØÓÐØ»ryv]`U_VOHJNDBCE5>:77:?;<7=42669774=5;5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:IENED:6A@BS>9DO323565=v\<R\tiZM]S<=88567=:JFDGN[\YIf`;Hz{n
z|x
~px|~}orz}|x§»¬¨²½¯¤³³¨£¢°¬´¢¸¤¤©·¦¤£©©£¯°ª »»®Ê¡j¶¸«°£«¾£^ª²|}´«¡¡ ¥¯¨¡¤³¸«ÂÈĵº½»ÅÇÇÂÑ ÆÉÍÍÄ×ÖÑËÔ¡pzh\ZS^QOED><CAA8?875?F<<5<35345454B39:BM:B;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPdGb`bpJ@s}um}}|pww{ªÂÀ¯½Æ»³´Á¼´«³¶§²½ª»¤¨¹¸«¦¦¡¢££¨¯²±ª¤¢¦¥¤º®©À¼²¹¥¤§~½°z¨±¬ £¬ ¡§¦¤¢¤°³§ÁÆï°º¶ÅľͦÇÄÇüÕÑÍÄÊtra[Y_[MJBL@FG>A?B;:4>A<=5=6>333241A17@BN>G@CNCA=C=;86CB5BIB:878;5B>79VKDWOF8=4K@C>4EJHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\eG`igZ]\{uo~{q~zz§³ÆÉ¿ÂÌÁùǼº¯«¹»²·º²À®¥À¤«¯»¼ª«££§ª®´°ª ª¡°´§£ºº¶Á¼¬¨²¥¤¨
ªÄĤz¡¦ ®ª¡ ²¡¤ ¥£¦¦¤¯®¥¿Ä®¨·µÉþ¶Î²Ä¿Ä¼³ÑÉȵtxl\X[iRLHDLKKJAA=CD<5AD;:3=8B332263A05IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBfZNe\fTcjyr|xz¡¨º½ÇÈÉÁÒÉÊÂͼÁ³»¾§ºÀ¾¼Ä·¬Á©¬³»¾ª°©¤¥£¬³¶µ ®¥¢£³½©¨½Á£··°«°«¬ª§¥¥vz
££©¥|£ ¢µ¦¤£¢¥¦¤£¨§¢²¬¨¼Àį¥³·ÌÀ¹®Ä³»¾Â¸ÂÃÂÀmyaXW[[KKMJFDDIBBADL:4DH9;4<7E.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQG7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>jH_XaZddV x
¡®¦£Â¾ÇÃÇÅÓÍÎÍ˼·°¹¼´¼Ë¼ÃÁµ¶»³¿¹¼®¯¨ ¨§¶©²·¬¢§¡«·¸©¤°¿Ä±¾¹³§ªµ³®¥¬¨ ±Å§}}ª¥¡£¢Z¤e£²¥¢¬¬ª§¦ £¨¥¶«©¹¼Ãµ¦³µËÀ¸ª¶¬²º¸®¨¸º½¸knZWTTNFJSNK?BHDDHGG95FM;>7=@J.32025B55PVN<LFKRLOHGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|gV;=@BFBqFiIRebLF¥¡©¦¢¯¾®¡Æ¼ÅÄÆÆÎÎÎÒʾ»¶±º»¼¿Ï¶Ä½¸¸·²±µ³¸³«¦««¸ª¨§¯°£®¤§¤¤µÀ°«¬´¿ÃºÀº³§¹µ¸²®¥¯¯¥¡tÁ~
±¥£©¡ `J¥T°¯¥¯®«¥ ¥¦¢´©ª³¼¼¼ª°²ÇÀ¸¥««±±£¡²²´¤pmf\ZNPKEPPPQ;HJIGICC>:KU?A:=EM07544:B34NWO<JKNUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@BAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}hW;:BC@=QEWSsbWFHª ¢¨¯§
¡£¤µÈ´©ÆºÂÃÇÊÈÈÌÍƾ»³®¹¸ÁÁ͵ǺÁ¸µº°¯¯³´¦£ª´´ª¨¦®¬¤¥¤§¬º¿¨«¶·¾Á¿¾¹³²Ä±¹½¬£®µ¬º¦¦v¿
¯¡¡©¨ ª¡§nv¢¢®²¢«¨ªª££¥¨¢±§©«º¶¾³²¾¹· £§¨¥§©©be`_QKMGHNIUL=MDNJKBCD<QU=AABDO18=77?B75UXN?HNQYSPQUKQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=..R`MUHe^HE«¡»¯««¢¤££¶Æ½´ÁºÂÂÇÈÅÂÍÈÁ½¹²¯¹´ÀÂʵűÁ¼´ºª¨°¢£ª´»¦©¦«ª¨¯§£ªª¾¼§¼´¸½Ç¼·µ·Á±½À³©µ·«¿¥£¢ ¼ ·©¥£¡¨¥³¡¦¨ª¥¢¢ ´¯¥¥°«««¤£¨ ©¤¡¡´´ºµ¨µ²³¢¥ª¡w`\_]JHFGMQIMEFGBRLJBEG@VRDH=AGQ1;B7:BF79\YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:g\FCCpbGE§¤Ã¥©ª§¦¡«¶Ä»¾·ÁÂÀÇľÍÆ»½¹²¯¸³¿Âȵ¿¯»¶¸¶¦¤ª« «ªÄ¢¥¨«¦«¯¬¢©¨¿·¦¾±¸¶Ç¶µ¹¸¿²¿Á·µ³´¯¾££® ¢¢¥££½¤©¨« ¦½¢£¢©«¡
¤¡µ¬¦²§¯§© ¥¤«±µ±ª¥ª¬ ¨hbYa]OIGJNLHEDIA=PIA<GIH[ROK=HOU4BF9>HG5Ca[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC<C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,/Mv\4KZ5,MnW<-=)#zbQ5CKQ:nRF<KxebWL¢£Å¬¡¬® £¥ ¦©«·±£ª³µÄĽ¿¶¿Â»È¾Êȶ¸µµ°³³·Áƶ¾°¸´¸µ¦¬ª¬¥¤Á¥ ª¤©¯¢¦§½µ¥±¼¹·¶Ã²³·¹¿²ÄÀ¸¸®³µµ£¥¡® ¢©¨«£Â©¬¦¡½¢¥««¬¦¡W¦¡ ¸ª§µ£²¡ ®¢¤¦®²«©¡¢¥¥¤adYc`LHJJNFEAFK>=JB99JKN]QQI=LV\9FI=DMI8Hb\LCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWrHE6=ue\KN¡Ã¨¥¢´¢²¨«¤ ¤©¬¼±¨¬µ±ÈÅÁ³ÂüÆüÄʼ¯°¶°´¯¿Ä´¹±°¹´¬¨°©©¥¡§Â¬±ª¢®°©¤§½¶¦·»½¯·Ã³²ÂÀ²Ç³º·¬´¶ª¢¦¤¬¢¨«°¯¯»²¦ ©¨¢¤¸ ¡¤¯¯¬¥§¡£§³¦¦´£®¡¡¦¬°¥¦¡
ae[geJILJRBC@IG;;G?99OMU^RSJ>O^]=HPBLLI9Mc\LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<v]^?[T^eq@8;HweA4£ 褪²¡£´ª³¬§¢¤²¬®©»²¬°´´ÆÀÄõÀĽÉĵÀÈÁ´«µ¨¯¸¬¿Ä´·®¬¶¹¥«±«ª¦»´¨°®´²§ª¹²§º³·²¹Àª·±Ã½´Æ§¾¯·µª¨¬¡¦¥¢£¥¯¸®²µ¶ ¨¤¤ ·£¤¦®²²§«¦¡¨ ¢¯²¢¦®¥«¤
©©ª¡§
xch]kjMPMNT=CANC::I@77RO]^RVQAW`\BJSHVKH:Td\NFON[W[RPQX]GAB[PBG>NC9HGHOP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1[bZ33806p[bH05IphVCWFyfC;¤£¡¦¿¦¨¯¯¡©´«¹°«£ª´¶±°¹·°·¸¸Ä½Ãǽ¼ÄÁÆÀ¸ÀÆÀº©¶¤¬»¬À··©¬±º¢°²¥§ª¹© §°ª ¯´³ª©¶¶»¬³³º·¬¸°Ãº¾¿¦Ã«°·¯©««§«¢¢ ¡±¯³«°¹© ¦¡·©¥£¢°±´«²¨« ¥¢£³°¥ ¨¢¨¨¦£}
jhlalnWPQZTACET@;;IA7:XPd^PVWDY^]MLRN^KJ>Zc^NHPN[UYPKTWZI?DXPDF?N@=IGGQPB=DFBM?:1D?77547?=95E4+75/251.-.,1=*'+=\p=>1.1e[d@1647gY`F(?8l}h[V;{cC=§¢©½¡«°«£±¸©¥µ³¬ µ¼®³¸¼º½¶¶À¿ÈĹÄÁÀÀ¸Ä½À·¯¶§«·±»¾¿´©®±¶«¨§¨§»¤³«¢±°³¬©¶´µ½¯±µ¬°´±ÁºÅ·«¼¯±¸¬ª£±¦¥ª ¤ ³ª³ªª³§ ¦¤´®§¢¬®±§³²ª¤¨¤¡¨µ© «
¦¥¢
{elrgpq_FYfVDCMXDZ9HB6>]Qh\NY]G[^]NMRXdJJC\b_PLMNXWXPJVVWL=EUJEDAM@AFHHQPA;GDFK=87B=68719><65D0+80/05/*,/-*=,,%2+*5K1/'__aU150=`V^8)C3YT\gK6zfL@¤ ¤¬¶¤©¥¯®¶ª¯µº§¦°·Å·±·¾Á´´ºÅ¾ÌŹÂÀ¹¾¹Ã·À¹²µ¬ªº¶º¹¾´ª±µ§¬ª««««½«®±£« °³®®¶²¹·ª®®²¨µ¯³»½Ê²ª¶µ±´¯®§¡³ ¨ ¥²£ ¦¯¡¤£¥§³©¡¦²¬ª¶¥®±µ¯¤§¬¸£¡«¥¢¡ z
{knxmu{`EajYIHYZ={JFD6AbTi[M\`J\]ZRSRbaLKE_``QLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`U`/5(C_Q\.*B/JGP[H3cYTKD ±¨±ª¦¤¯®µ©·´¹¤¬³·Êº´ºº¿¾´³·ÃÀÌȼü¶½¿¿·¿¼±½®§º¸·¶Â¶«±·¦®«§£°ª¯»¤¬±²§¨£±´°±±µ±¸³©®«²§·¯µ´ÃŶ©µ¶¬°©§£¶ §± ¤±§ ª©£¦¦¥¸§¢±´¬§²§°¶¬¤ ¬¨ª¸¢¥¡§£ v{
mqwu{~\Kel\KNc\>b{GI8GgWf[L^bMXYWTXTi]OOHa]_PJHQVURKIWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANHf27'GbLV%-B.=ELQ<3rkJCC¥®¥®«§¥±²³ª·±· «µ¹É¸®Á»Â·²±µÂÂÎÅÀÁ½´¼¿¿º¿¼²Ä¨©¸°¶¶¿¼®«³²§±¦¥¯¥²µ¬«±±©¨´º¬´²µ¬´ª¬¨¬©¸±°Ç¿¸¥¹°©¥¨°¦¤¤¯¤©¯££¢£¬£ ¢ª¦¦¹¥¬µµ¤ª«¨¬¯¶®££©ª ¤´¢ §w~
}||qtr~}}\Sdo^NYf\FD[G;NmXb[M`bNVWVWTXg^QRLcZ[TKGOTSNGIWS\N;P^IBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Bc;6*HeHJ+:I?3BIS,>k<GHª«¢©±¤©¥³´±´µ²²¡«¼Ìº®À»Ç±´¬´ÂÂÑÅƾÀ²½À¼¿·¼Ä§¬·¬³¸»À°«± £§ª¨¤°£ª±ª¯¬°¯°¯«³»§¶±²©²©«¦¥£º¬ª±Â¹µ¬º¨©¨ª¨±¥ª¤£®ª¨¢£¬¥¬¢§©¢¬¦£¬¸±² ©¢ «¯±¬§¨©£ § ¤~~
|w~
tsquk_Y`ncQsq\K;|F>WtX`ZNc[NUVUWQ\b^SONhXWWKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*35>10485(5/*,.30;),,'%234$,2-860)(1<]J0.JgDF8<B05EKX1@Z>LE¨¡ª³ªª°¶¸µ®«¥ªª½É¼±½·Â¯±¬³ÄÃÎÎþ¿³ÀÂúÀ³ÈĬ®·²¸À¾³®«¤§ª°©§¨±¦´®ª°®±°´´»¤¸³¬¬®§« ¢¯·ªªº¶¥¶µ£ª§¬¬ª¡©§¦²²¤¦¦¡¡¬ª¡ ¦¤¢ª¥¢§±·®£¥¢ª«©¡¥¤¤
£¢|zt~tw£xj^`ngWecN?gLEbyWbXReTMVUUTO\]aUKMiWUWIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06WZ.0JgAA<<C+:JO^4D>HFD°¥£ª±«ªµ«¶±«¥¬ª©¼ÀÀ¸¸³»µ¥²°ÄÉËÑ¿Á»¸¿¿Á¹ÁºÁÄ®±µ±³ºÀ¾³±®««¨¶ª¦®¯ª¹°¨±±¯²¶ª·¶§´·¬¬¤©«£³³¨¨¤´´ ¶ ©¨«©«§ «¬©¹¶©ªªª¢© ¬©¡ ¤¢¦£ª§µ®¨¦ª¢£¥¦§ª¢¤£
¢tytzxoqggqx\`skO^VHmxUdVQbPMUTUPOX[bUHPiTVSGPYUI>IHOQPxLMV=<KD?@A<@CUC9AK=5;E13;97*4:=+-341*8**+*,))(/*&)%3;,$2)2021%/2Qb02?f=NX>C,>LT_/Jj6OD;°¡¦«®¬¥®³´¯«¥°ª©º¾»À°®¸¡¶¯ÉÇÈÑÀ¾¼º¼Â½ºÃÁ¿¿®²²±µ¼»Â±±³«³¨¤µ©¥³²¹°£®·²¯²¹«¹¯©¶¬ª©¬¢ µ¨¡¯²¢´ª¨§ª£«¡¢¬¨½¯¬®¢¨¨ ¬¯¡¢ ¨§¨ª°©£¢¡¢££§©¥}£
xt|uxy{tszi£ui^ekuf}RXp]JxsSdSQ^MMRYfNLVYdXFSiRQ?BNQaQ:IHLSIqQLS;<I?;<=;@@W<<?H73CB15:93-5::)-31--6)(+-,42#2)',%.;.&1.0-14%,/Kg:48_=ad?F1CP[[+HN9UA4² ¤¦¬¤§¤¬¦´²±ª¤±¨ª¸¾Á»¯§¹ª¦®°ÉÇÈÑü¿¾¸¾¿¼É¼Á¸°°µ±º»¸À²³»¸¢´§§¬²¶¹³¨¨¼µµ¼°½¦¬¬µ«©¯£¤«ª§ª²¤³¨ª§©¤©£©§©½«´¯®©¤ ®²£¤¥¥¤©«¥ª¡¡¥©¨
~~
¡~r{y}|hw|zupp}h
xdahcr
ylfx]]UAVzmTaPRXKKNqu]HZ[gYEUfPD>JNDCA9HGKS?jaJQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KH0%90%,,09/,,+6'17#-/FjI14X=fcBJ7GS`U*=;DX?*± ©¥¤¡«¤·²²¦©±§¬¸Á½µ°£¹¬¨¨±ÃÉÉÍÁ¶½¿µ·¿¹È¶Ãµ´²µ±½¸º¾¶¹¶¿¡³§ª«°µ¸µ«½¼©²¿³» ¯³µ©¬®°£¤¨ª¢¤°¦° «©¨¢ª¤¨ »§®°® «£¤®¦¡££ª£¤¤¢¦«{|£|yl}vxxc{zqpqrxhtjgdhanslaio_o?[xlU^OQQJJMTYWM]^lWDX`O^PHMDF;7HEKO<rhKK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*K>*49&'.34.0+/4&,:$40AhY13S=e_DL6KWeO*<3OY=#¬§¤¢§£¸¯®£¯°ª«¸Âº³¸¯«¨´»ÈËÈ¿·Â¾¯´½·Ä·Ã±¯º²³Àµ»¾·©¹¸½«¤´¨©ª°®¹±ª»½¤°¿µµ¡®¶µ¦§§±³ ¤¦§¡¥¬¨© ª¯§¡§¤¨ °¸¤±¯ «¡¬¤¦§©£©¦¨¡©}}| x
|
{sp}qst`yxioqpoi~qczliec`f
~_ZsjqKL~hXZMPLJHPRPIN\_nSDX[RgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%52<fd24M?e]FO=RZhH*>/YX5(¦ ¡¤¡·«±¤³´ª¨¹Åµ²® ·¬®°µÆÈÁ·¿Á¹°´¼·¿»¿¯«½°´¿±½Ã¹©»º·§¨µ¨¨«°³°§¾·¥¼µ¯°·°¨¥§°² ¤ ¤¤¡¯¦¡¢§¯¢ ¢¤¤£·°¡¦±«¬£¯ª¥©¥¦ª¥£¨¡z
~zx
~y{prwoot_ywdllkihmerjkeh\cs_ZlviZH}][XOOJHHRUF29^^lPDXVYeMIIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<#8R=*113>D5,-'42+;+139cl84GAf[HTDU]hE.;2`T,2£¡©¥¡¢ ·ª¯ º¹¦¬½Å³°®¢µ¯¬®¯´ÄĽ³¿º·°³¹¸º¸º®®À³´¸¯¿Á¸¬½ºµ¦¢³«¨©³«®²£Â¶¦©¶´©²»©¦¦©°¬¢§¤¦¡²¥¤©©¢ ¥ ¤¹¨¤§®§¥¡¨©¢¡ ¢«¡£§¤y|
|x
{w~{ltrllsaxuhhjgeoghhdfij`hbifZezcaRsT[[SLIGIOS@!)i^jLCVU^`KIHEC.:B<F<6KPD8:D357==895?:;4>8@L=>93)8><:9*6@3.E4(+,>0-N?.+-7,1195,&.5-80576`tB3CDg[KWGU`hB378cN'2¤£¤¦£µ§ªº·¨¬ÃÁ·°¬¢´§¯¯·ÀÀ½±Á·±®²·¶¸·¶¬ª½³¯²±½À·®¼¼±¥¶¬¦¥´©«® 쩦°³«¬´º¨ª«±¥ª§¥¦¢¤©¡¢ §¶¥¯ª®¡¡¡ ¦¢ ¦£¨ y
w{~
{s~}fxokjlguskcgdctbdefeijcipY^X]ldaMhWZ`VIGHKMRX>9_liGBUS\[IIGFA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A<-5B37=+*,0A*JK./*+3722(57$+7.72685\yN2>HiZLZJVbfA;3AeH%5¤ ® ¥´±¢±¾·¡±Æ¼¹°±£¶««®©¹½¼»À²¯®¶¯³¸³¨«¹²¯´¶»¶¯¸½¦µ« ¡±¥«¯¥Ã ²£®±¯·µ¯¬®£§ª¥¨¥¥£© °¦¹¨®£¢£¤¡¨¬©©§{t
|
ofymhkjgqrk\hdbr`dgjmlgjhfl\lmuqaTbhceYIFLMOXQPUaeT@VSYUFHFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24:6#3*)6.55465Z|]19Kj[M[KXdd@A1IeC'4¢±¡©²°¸À¶¡´Â¼½¹±¥¶¯©®¥·¹·¸¬»¯ª«·ª´¹®¥³¶²¯©±¶¶±²µº¨©¶©ª¢ªªÁ®¤®°¶µ¬¬±¯ª££¬¨§£©£¥ £«ª©»§¤ ¡k¢q¤v«¨ ymi~wpl}o^c`gkuw~fhuifW\isnNPjdfqf^dfnli^^_
hOKD8ETg^JGPPUUKGS`oteE[QUPFHFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,+08>G701.*.*/668,#1'214:276Xl16Ok[N\K[fb>G1Pd=+/¤± ª«£½Å¯©·Ã¸½¼§¶°¦«¤¸´²³±¹ª§´¦°µ£¨¸·¶©§¬¶³®´³¢©´«¢¤§¨¼§¥¯³·¤¨®ª«¦¡ ¨§¡¦¥§§ §ª£µ°££££¡¡¡¥§«rx¡vif}sx o~|¡ {tvlmheczlqbTmcmiqXjpnW^i[kj[pmyriZ^FN>F^MERVWQQRWTg^LYKRRPEGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82).1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1Va7/(¦««ª¨ª¿Ã¯²º½·À¾ª¤·¯ª¬¦³µ®¯³¶«©¥±¥µ³µ·µ¦§¨³±²¨¯ª¡³© ¤¤¢¤¯¶¤¦¦¶¼¦¬§©ª¬§¦¢ ¦£¦£¤¤©¢¢¥¦¡·¤¤ ¤®©£
±¤yÔ¨ÁÇyx±¥·dÀ¿yy|Êq¼Å{r¶§º{l±«°yhkX±®oei¼¼nhzmrØ~Sjc¶²qu¡ªWOWaOVNFT[XQPS\W[P@\EQNDGI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww21Tk\O[M^g\>L1[]41!¦¦©¥²©±Â½²µÀµ·¾Â«¦³¬¬©¨¯´ª¯¶³¨§¦µ¦§¸®³²¶«¦¤§²®±¦ª§¤²¤¢¢ °£´¹¢©¨¡®¤¢¡¨¨¡§§§¡¦¢ °£ £
°kjª~geq¦q®¡¤~w»|k¡v±_j´[¥e`fzfjxj©e¾rg¦v±j|±xtcmm§n[ EigEu`~g{£§Y_«ixzj§7J¯[WTlc[KNW_\WV;NOWV/ITSJCEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:6/'$203B/=;Uv2-Vj\OYL_gY:M5_Y31¢¬¦¥£¤ª±·´½¾°·Å²¸ºÂ§©¯«®©©±®¤°º°¤¤®³£©¹©³³±¤¥ ª°¬¯¦¨£¢±¤®§¡´²¡ª¡ ¢©¤¡¡§¤£ «¦§ ¡µµx
©µw³·©~k¦z
w«gj±[¬{tpx
°vwqkjl|N¤XHcc~ch¦`yruR^P©mcq}b.Q¢n[Tkg`LK\dX\ZB>°xWXA#MhFCDA@A19>88:84;:9<9:A:E::;6:CB8=?KNH:5:AFB@AD<FD;0201;F,0.840,.(/3,>831/2-D1<<S}n3+Xj\OXM_gX7J9aU50³¦¦¢®©§³¬ª»¶Â°¼Â¸·Áª¬®®¦®²©¡¯¼ª¡§µ£«µ¤¥³³§£¢§ª²¨°¨¥ ¯®£¤¨´®¡©©¨© ¥©£ ¢¥£¢ª¥¢ Õ¹p°Â~Æ|Ö»|¥¤z£¥z¬yU¯{~j¹Z¹w}¦|zªy{±nt»
oO¯§ÅQ zc`ªbsrl_Sµ´È|c¤3Bv]QjhdP@XfZdaJHMlKZSOYfZCC?E?0<<59;74<;8=:<C:F:;>6:@C;6@OLH<9;DHCBCD<EF81211DB./0483+-).323971#%5*>3==Qwj6*Yi[K\P_fT7G:aQ82%¡±¨¨¥³ª¥´¨¥¼·Á°ºÀ±µµ¼³¶§±±£±³¦¯¶¨¨º®¢¯± ³´° ¤§©°©´©¥«¢«¨°¨£¬¢§¡¦¢¢¡¢¡¢¢§ ¦ §¡²nhµq«p¦r´sr¶{¤¢~ ¥~°vÒÑu[®|¤oª¦k
}}{±sx³et
nfRÈZÂ\yb_`wsb^YÊo¿uMKµSUÆdTQjcfXAOj_liPUFI9=WR[WXHC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>II:1746@>/.24252-).26,742&60;5:=Pqh9'Wi\BNT_eP5G=aM62/¢¤¯¬¤ª»¦´¥¨¶»¼²»¿·¶´»»³¥µ´¢²²£ ¬°¤¦º®¤±°´¸© ¦¡ª¥²¨¬ª¥©£© ¦«°¥¢¬¥¡¥§ ¦§¡£ ¢¥¢
¬{w¨v£©o¨¢¢~®
³\r³R®~¤q×}w~w¯w´aelZ°XKuyf`^wwgj]¯wxl5yÈ®²_BTo^h`EPl_pmVUM/eciSYQ;AD@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@=V_cN6GC`I:88 ¸°´Á¨²§ª²º¸´¸¿º¸³¶½µ¥¸´ µ ©«§¶¬¨°±«´¤© ¨¢µ§¦ª£¥¡£¦§¬¯¥¡©¢¢©¦¡¦©¤¬ ¢ §©}}¥y¡ªp§ ¡£ª|yo±Z¨ ytØvt§¤|{²^d }l\«[Zhgªds{kq]¬Z kneOJC¡\ZMt]cfMZa_st_JU5JYHE=HFAL35A8.;>05A78@<6=<F?:<6?=B7.HVJE@H6KIN@IK@EN::@4.;>002154+*05/7,&21($$6671<PeeA&Uf[?1U_bL7FI_C1>8¡¾¬´Â®«©¦´°¸±µ¿ºº³±·¼ª»µ ±¥¥§§ª±©¯ªµ¬ª®¡¡ ¦¤¤º¢£«¡¢ ©°¯¦§¦¤¨«¨ª¨ ££ ¡¡ ¡«®mr´t©w¦s´yt³¤£¤v¸o{¢kk¶Z¡ei ¢§mr´t²jku³af¢nj\`M¡|Rs£ly~no\¯V<wfTon.[§ObSkebmYb\`q|cSYP>>mo3BB@?L9!7@6.;@37C58??3;<CDBJFMIF62JTKEBJ6IJP?HOCFP=<E50;<000/75,+,426/#00,,289/9N`eD'UdY>/U_aL5FM^81B9¤»¢²À®««§·©¸¯µÀµ¼±¯¹¸«Á·ª«¡§¤¢«ª§µ£²¨®ª¡¨ ¤«¹£¥£¡«¶¯§¬©¦¥£«²£ ¨«° ¢¢¡©«Ô»t±ÄÃ}Õ¸x§y£¶u}wv²`ºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¡~t«}¾ns¼t²uxnpm¤t½]w}[ay¼j[V[iy^i`dfbmxoY[YCA@r?CF+5H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.97-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7@9§¢¼¢±Ã°©ª¬±§¸¯¶Ä±»²®»°®Á²¬¥£¤¡ª¤ª²¤µ§¤ª¦¬¹£®¡¥ £¯¹°«£¨§¥¤ ¨« ©¤²£¥¦¢¡¤° ª
µ¸xµwnlnsnysÁ»¼{²¨pt¹|{|¤»¹½uz³£tvut°ufi¶trpw¶^z}gymyb¬pu
X[§jDeZTf`c]bQgfqmuBMPLD;ZL>J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITAKNGEOF?G<7>7070/9:.,/-*8/%&2(4$(>7/7KT_G'SbV8*O]]=+;VV'=;<§¡¡¿¥³Ã´¬ª§¬«©»®°Æ¯µ´¯¸§µ¸©£¢¦ ¬¤ª¦µ¨¨ £¬¤¾¦¡ª¢¡¨¢²µ¶¤¤¢¦¥«©¥¦¢©¦¦£©¡£°©§¢j~i§xs~uze{½¾Àºnq_rjZ^adk`cmvbke^`cqhr}gj~qty}|b[wthP\n}{jXlyrIJo
pMtMEW]faL[Xgc^O[mvjrRODEN;HI<M?2,2A?8/5?C<9;@;=C>RVVWYZ[[\]`aaa`\UG5DFUEKOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7IR_I'S`V4)P^L(3>[O'?2>¨ ¨¡Á£´º¶£¬¥®§¨µ²¬È¬°³¬µ£¾±²¦ £©£¬§®¤¥µª¥¢¦©¿¨©¦ ¥©§°²¿¬§§¢ª¨¤¬ ££§¬¢ª¢°¦°¥¢¨£¤§£hn|qv´© ¢ z¤
kj||tqxyvv{jstudw}vkpzm`c\phMYYej_WYpznnfSOFS9OZNRO(+:JB635=@A9:C><ENSSTVWXZZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J'R^S10T^:+=8]K,<-@² ³¡¿¢¤±²· ©¥²§¥°µªÉ«±¦µ¦À¨´ ¥¥¤ «§¬££·¬ ª¦Á¬¤¢¢§¨§²Ã¯««©« ¡¢¥¯¦¡¤¨¦ ° ¢§ ¢£ {©¨
{
£~f¢³®
vz}vyzogykuyrhtyuktcyf`idcdfjXk{pjj\RLPD_UF@??,4@F;45;>A;<?>>HNNOPSUVVXZ\_aca_^]]^]XVJKLBIOMRJ;<:786/2964.(&$-1..)+*7%+<(6CMLD/T]Q05M[17E4\G5<,@³ ¹¯¾«®²² ª¦²¢¬³°Å°ª¬£³¯½¤´ §¢¡¨¦©¦¤¦³µ¯¦®¾ «£¡©
©¬¢³È´ ª¤«§© ¤« ª®©¦£«¢ ¡¥¯¤¨¥©f|e~cxlhkz£«ke~g
eeihz¡kh¢wkj£slnzyXe]
^kv[hswwnxxsmysv{j
X^ktd]sik|qlc]QNWIdX@J4>F7?FD71<=?AC;;DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%.++'6*$;'/AI[I/7ZO6)EY/DO1YC;?.=¥º¼¹¯«³°«¥¨®°¦®®°½±©¨¤°± ¤¡¦«¬£¦¨©³®£¢¯¦¶¹¥®£¡ ¥{¥¬¢¨³Ã¸¥¢§¯£¤¤ª¨¡ ª¯ª«£ª ¨¦¨¡¬¡¥°¤«¡¥«~¾r´r
hx¹Ä¸q¡£{¦sª|ËÀÀ»q¢|À½ÁÁ{z¿}k¥±ooÊzxvyyqzow
ymvbf_xc_eb^thmdbXLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___^\SMPGUNA??=6468276*&%#)*&.+*)109*#>H[L*#CP/#F[3PY/UAB;/8£¸Ãµ°¯À©©£¯©°¯¦²µ¯«¦¦¦±««¢ ª§¢«¢¥©¥¤´¤£¦®¬¸´§¯¢¥ ¡¦«¤«¿À±¡ª¯ª¢¢¤ª£ ¡®©¬¦££¦ ¥¥®©¤©ªª¬¢¥¡£Îyz¥y_^§¡ |§t«¯^d©z§
t³c«¡³j®t|¸aY£Ínu{Û{q~ue{vvk}n}
~m`qkpf`_xd[qhjcf`RTRW]JOC5AHED8>6;@?A;=8@>>?BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+--J0';\:L-!P@F4.1ÂÀÀµ´°·¤ª©´ª¥²¬¬¬¤¬¦°ª §¦¢° ¨§£¦¡°¬¦®±«¨¬ ¥¥¨£®¤«°¨¿Æ³¨©±®¢ ©ª¡®¯§ª©§¦£¡«³¦£«ª£§¦¡°¡§¡ p
u¨q°|r¬~¡¥w«}r~«vz|~ª¢~«{ zVÄzoÁ}mupmfveoawnromeosuo`fmd_niinfcWT\aZRRC8II@D<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1''45-&7>WJ-='>1)3V@F!G:C1.+¯ÔÆDz´£££¢®¶®¨±§©ª¨®««§¢£¢¦«¢¥¨¨¢°¬¨§¯¨§©¤¢¡¦£®¬£¬µ©¹Í²¦®¬¢®¬¡©±©©©«©£¢«¯±¢¨¬®¦¦«ªª±££¥
¤j¤uz©tz²q¥p ¤_`R«®u®§z
{f£¤£}©~®^|¨U¢z¢{ïÅs¯³³¹qb©¯Âthmonxwwnlfedqpf{ic\W_iXXTLLQLCCAB;CA@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^aa`_^]\][SIB6799674,&$" ('"+-"$.!3-&@DWH,G+66*1PKL# A9D4,'ÂÉÕÖÀ¡«¨¡¯¢°µ°®©¬£¨¦ª««©¤¦ ¥¥§¦£¬¢«¡¤¯¢ª¤¶°® ©§¤¡¨ ¦°¦£¨±¬¶È²µª¬ª¢¥³¡¦««£®¬¨¢¡ª¢³¢ª³²¢ª¨¯¯¶£¤§|ªlu«y|°n¤ Ò¸´¸É²^_©¤ zxªÉs£¨©~ÆÆwe¡¥s}¯^oµc±uK£m§Gd{p~pzt|zm\fjrqfi^aXcm\^YIMMKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75785/)(%&%$&),5FNPPMFLJVF*L0/>-4OTQ;<F2,$¨¤Áƹ¨²®¬¥¢²¹¬ª¡¥¨¦ª¬©§ ¦¥ª£®«¦ ¬©¥§µ¢¨«¶²¬¦ ¦§£ ª§®¡¢¦©°´Â²³ª¨¥¢£¯¥¡¥¥«¯¨¦¬£·¬¡±¹°¯§³´³¥¨¤ Nxz£|¤¦¸||y¹~ÌŶx ~u¤¤¨~°
¬}a¥l£p
}r¬`¤sq`¼}RUu£{}uyr~p[lnwrjnZc_hnbd]KLQTAHGFI:9K>B108856877-*5==?BDGILNPTVXYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOUF<E2:P[T6?H,- ©¬¤«¹«¯ ¡¬³´¦ ¥®®®©¦¦¦£§¡²®¡©¦² ¨¤¢µ¢£¡©µ¹¤££¢±§¦¡¢¯®£§¢µ±Ã±ªª§£¤¥¥£¨®¡¥¦¯¥¼¢··®µ²¹²³§°¢¤ÑµÃ·y
¦x¢w ¥q«´nri£|r®¥¢¦mp²\¥szl{}n©a¢qqbs²¸hx¦}x|xlhwixsnt\ddnmeh`JZWX<GG@U3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^``]Z[ZXURRQF:2230/++(@QRTUTSTVWWXXWUVVTQOQ[U%!2AH$)%s®¿¿»»µ¨¤¶¡¢£©§®©«¥¡¥ µ§¢©§°£«£¤£ª´´¤¦©® §¤§µ©£¶«Â°©«©¢¢¡¦£¥¤¦«§¢¥§¾¬¾°£°³º¬´§©²¥¨z¨}|°w¤¥m²o¡|¡¨¬®
¨ ¢
{}«ªx y¯]£|¦§d|tk®]¥kq
]`[ n§zyjl~b}tny`feqohghCY`[=JS2U8BBC7$$3+''3, /667436:@CFIKMNQSSSVZ]_a`aaa^][ZXSPONI7052.*,ATVVVUTUUUUTTUTSTWWWXVUUQHFIJ#((¼©ÆöÁ´ ®¸¥¤¤£ ¯¯ª£¹ ¢« ¯ª¡ª©¤®±¬¦¨¢¡¥¢¥¨¦¶¨¿¯¥©¤ ¦¥££¨««£¤©¨¾¤Ã¬ª£¢¬³º¬¯§¡´°©«v¯~
}ºd°e} ¦¬°
¥¤¡¢ [lj³`{{±lgn±[}´[¤kÈ¢e{¼YvµZ²}R¯z¬X¡m¨zx}ds}axs|aifpmfeeOUc[AT^=I(>9=4!",%2. *1/04579:<ACFHJLNPPRTWZ^```ab^_\[XUPMJGC553./@UYXWXWWXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³²·½»´Á³£¦¥¶¨¡ ³³©¢´ ³¨ª«°«®©¢¯¬¨¦£¨®©¡¥££¥¢©²¨¼¯¥¨|¡ ¨¡¨§¥¥£¥©» Ƨ¥©¢«´¶®§ ½®©£¯¤¸Ãº
§¬¯¦¥ª~սªb£¿½|~£×º¸µ
½¾j£o«nz²±Çj«°½xw¢¾»t¦yyb}zcgx{`kekjbPb[Sj\@TaBM)<:4/$%2 $(0496678;>ACFGJKMNNQTW]a\__a^`[\YTQMIC?<A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ¼´´±¿¹²½³¢®¦¥³¦¥¿ª·±¨¡¿¦¦±±¹¨¯¥§¯¬¯¦£¬¡¥ª¡£¦§¡¨¢ «©¹®¨¤{¦©©¨ ª¦¡£«»©Å£ ¯£«³µ«°ª¡¼¨°°tuª¤·epg¬mow¤u®pq§£®¤rmmmewnmqyiqigqhi
gpd^cjpY]g~w¦`bqofd¢|uewhjx~ydlcflbKdXJkY:PeEQ'K9+# #,)-2.5:457:<?ABDEHKLMOQSV\WZ\`_a]][TPLHD=:AB7MXYZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨³ªº¹²³ª©¢®¤²©½±ÃȽµ©À«¬£ ¦«º£¤¬¬¦ª
¥ª¢££ ¥§¨£ª ¥¥§¯º«¬{¥§¨¢°¦¢º ±Â¨¤´¦¬±²«®¬¨¹¤¯¸¡¨¥¶¢©ª³¢« ²¢ ¢ ¤¡«¦¤~gtvtq§m| phvowv|zilddocU`Y@iZGb`NY*E=+&"740.!%2(*799469;>?ABDFJKKMPPQWUVY^_ac]^UQJED>9=@ASX[\YWXXXXXYXXZ[[\^__`^^^__```_YY`¥©ª¥µ¸¯®¢°¤ µ±«Å¼Äº·ª¡¥¦°¨£¶§©´¦§¬£§¬¤¡§£©¨§¡¤§¡µº¨«|¡¥¨¶£§¸¨°Â®£¸§¯¯°ªª´º¢¯½¦£¦¶£¦©£¬¯¡¢°¨¯¤ ¤ª«¡ª
~fuvysj}¡ yqrxq{~jnd_pi`[`YmbP`dPZ:GFE=3==7.*&+)&&406658:==?AACHJGJKLMSSSUZ``i`eVPJACB;9EMV\^^[Z\[[[\]]_^]^_`aabaaa`bbbdb\[c¤§£°³¬®£©§ ¨µª¥³º®««¡¢z¢°¤¥±©¸¦£©¢®¤¨ ¡®ª¨¨¨¹¶¤¥y¢¨¸¤°¶£±°t¤¿¤² xz «³¼v®¤ª~d\bv¤~n³£§«¢e syp¨l¢§e¥
xkvq|ai[vghrz¤exwinykpe_uokkh\fcbboR[>MNNRG=@TB91/&4:316678<;>@ABFHBGFIKLTUUY\_hfgWQJ<DG;8UR[`ab`^`_`aa_\]___aabcdabaaedchd^]f¦£¡°±¬«©¥©£§¤«µ¯±¥ª¦«s¯¨«§¸ £~«£§¢
u¦¨£º´¨ uv ¦²µµ½¨¡~§¢z£¯¸§
±©¯¢y¬¢§©¨w¥z¦{±z
cynqzqt
xht t|~jjx{qpgdwnilj[ejier[^HSLQ@E5-YTT6)!09=>643568;:=>>@DI@IEJKGRXZX[aahfYQH9EL;>bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah£¦®®«¨¬ ¨°§§ª¥®Æ½°¡§¨µ«§¢ ¾ }
«¢ ¡§¢£¹²§
pu¤¬´´®Ê«®·
°±¯©§|¨r{w¦h¤y´¦¨Â«¡q¤}
±¡| |
ms{r
}
t
Åf©¢jogwt{vghupggk^bnlflXhG\QL2E46M`c6&4<DGD:64658;8>==>BL?NIJLCPZ]\Wb^jl\QE=KM@JdY]cfhgbbbbcc`_babcccdiicbbbecafcbbi¢°¨©¨¥« ¤¹±ª«¦ £¤ª¢¥©¶£¯ §¥½ y«¡
w¤¢¸¥bm¡¡¨~¡§ ® «¯¤ª~£vk«uM«x¨§ª«}¡{z§ikg¶}m`cX{dgs}yl]|n_Sq\`ly`Ye}q§ªk£nr¥pgdlZlzeY_~aWPoventrjjo^jolkhWiO]WE9A4GC^k4+ICQMN=84859;6@;;>BO>QRLMBJ\]_W^_bv`MD:MOMTb\\ffiibbdbddbab`cdcabikdbddgdbgeach ¹¡ª£¦¬¢¶¼«®¢ ¡¥¬¬ ®µ£¨ ¦´u¦~
¬¤¨¥°¦¢in¢ ¢¥£¡ w§¡§ª®
¥y}}¢ps{ym¨|¢sv¦f~w¤_z|s¢n·´ºt¶¨dƸ{p·q¤cs¬«`}j³~n}q£ls¤s~£^³o{³tr[²ibotuqhnYklsre\i^bKD=D5QAYq2<RF_JS=<395::6D;;@IP?TMNQ@E_^[ZX``|dHC8LWUVbaZffkkbbeadc`ab`dd_`cknccddhdbgfchh£¹¬ ¥¸µ® ¢££¥±¬ ¤«x
p }¨¡¢¨¨¤~k{~} w¢ r¢©§¨«®}z z£xs}¦£d¡|lhnz§}rgsªsªg]
vhªj¸f\©pa^§vuhunk¦\¨~w»j}©Z]³g\nqywjh[pjyyb_fXbAPEN7VBRm4JZZ_NZD@151;;7H?:CGT?YRY]>Db]V`Qad}iEB9N[]XdfXfgnmbbe_aa__``ec^bdoq_deekdcihgkiª¶¨c¬º²°¬¦§®°¨«¢¡ £iq{y£
¨£ ix{¢ ¢rh p©£© ¨}°¤¢¸v£³¢£xz«~¢r¡|
¯µ}k¡x~´££«¨{|~sªZ]o{xbM{{
czBMY¢jr|muy±³¦tmq|ori£]vHec`sp}}md_kiw|ddaR^V]TV@YEQgDRW[bX_ID=B8@B:IE8LDWAVQ[VDFa\Z`K`m~rEC<U_bZejVghlnbff^aa\]^ahb_edvl^egfldelhhki±®S_¡§´º³³©¢©©¡«¤¡¨¡w
ny
}r r¨|l
q¡x
|¤ £®}µ{¦z©¡}§hwm~s sq|
o®}£¦£p^©gu£co¥aÓ|zxrsc¢
~¢r¢uk³`sª²¨¼wm¿¦ª´^o~qos¢r]£gt¦ah¦mÓ{nwykzvrl©¥g_eypjffcnvxh`cS[eQQbIWIT_WS[ej\eQECKLJKBJD8P?PMWSXORQ`eeiRdxywIFEc]dYhjTihjocjg`c`\]]_hbahe|d^dgdkdjmghlh°¬T\K~©°²µ°³£
¦ £¤¨ ©
{p}h}wpl|£ª
yvnw¢y¢¤³¡¢¶z¬§¤®¥p©
}¤¢r¢¬®¤®¢vµ¶µÉ¡sa©myu¡w }oLf¢ps¤{ytal~ lrd`rti{i³µ´Æ¦s~{j«umtwiytqPE|³^jvkxfjgbtuqnV^TYhPRhIULXRV]gknVgWMJAJMJHJNAQJPecimetrs~x{nu{{TPOm]h[kiRjhilglfce_\\\^ibdhk{_]dgcjfoleile¢¯§
f?¡³«¯¯µ¢¢¨¢¢¤¥§¥yjye~ yui
z¥©z}xp¡y ¥¨gnxl¢d|q¥wpg§{¥z rv¹n¢b}¢nri«ju ln¦`ihu¢}_
uobh¡eiupdfnr¢Z_[d¡n^o{srd¥nx¢dg§hsn¡oSo ^d§T]SmmskqmphkxskoRXWWfYSmIXO\HXihsjYkVQREV\LXRaUhj^wuz|p||r{rvv^QsagbpgPjhhklngdg_]^]`kbjivu]\chcjjslfkmc¥¦zetm§®¥ª°±¦ª¥¢¡¢¢{qh|st}{e|
¦¢¬
}si¥} ª§¦x~¥²¯¥xz©t¥n¥¢¼n|¥¯
|¥zq¨ g~o¬cw¨l©¢vw«¦k°kv³©lnma«ªv§w}
¤ iv¬g¶sw¾¤Y¦«aurso{tqbj~nhlSV[Uaa]kM]R]I]lmv`[qY[`Zgsenorcqt`w{~yrys~{{vbxdcnsdRlgholrifia_^\bkbllzo\\bibljwmglnb¦ª¤©ª¨§®£ª¤¥©
tzo}ttrm}{¤¥¥uol¨«£ u~y®£qx
{r§q}}zx{~}v z}l
[yyryqhn~qtq
e_wusuozonm_wixfª~t}jov|
vmlgsx{w[jXxhmwrqowxo]lnigVZ`W\dkdUaU^Q_pwykjvejjju|qrtsaoubs{xuyux
}{mldyn^Wnghukxjiid\`ZcjelpunZ[bkdllymhloa¹¨¦¡¢¦¤¤«¢ « ¦¨~r|}~ztrp
{}
x~¢{§¡
wr©
¨ «~~¨§xp{o~©
p}qjo|hm]sqtkvsYrn}~i]icz
_ix{|viykaqsw`s§fnvp
yoefcyzZ\ifnv[zywtmsrf\mklbYY^ZYkq[^`Y^]fs}{sosckki{|q{wtdmthl|~uy|{zyo{}s~ysiT\qiluougkgd]aXkhkjqrmW[enlgszohjm`ª°¡£¡©£¡}«¢¥{|r}v
qor~z¦ xz¬¡« ¢¢££ª¡§¦ |y¨~°¥²¦k|vwe|w|zu¢~vqt
x¦|vk{yirh`sp}zwvowt]^ohn__Z\]SgqUc[[alht{|rnpdkjh{mxqioplf{rw}zm|zx|~zxNdvksmpzdkebb`[tfpfrqlU]ltmhyzqgikeº¢¡¤ {ª
|y{mxr~mk~y~}ªr
}z©§ ¢¦ ¦w}
¥{|ª¡ª~ox
qt`t~
nyuu¢
t}}rs{{y§v
|nk}{mhklg^y~g|{vtuu{w\`p}nu`cZ\^QfmSeZ]akivy~pkldkiglslltoxnynv}
vq~{z|{`i{kuhidjc`i[cuhobumlTbqyepzzrejmm¸¡¤zw¥¤yz
|m{xr
}|kh||~|§p ¡
|§w£¡¡£¡¤
y¡~|¤ ¦~~utpv`}
q|r~
hxry~r|}qz|
z{¥|
uzeqzyzpljf^}rh|uus|rj^`tvpxdcY^^RkhTdX^agjvxqfkclhejm~hoqk}wzkr}tv~|z}jrnsiahlb_qUtomn`xhmWjtvbuz{qbjoz²¥¥ |u£ ¢x{~~p{tu
~xgc|
x}y }o¦¥v¡¡z¤zx
~s¢¡¢~|vq}mzd|
pleuo|}x|}|ryy
¢wv{
u`ww}t}wfkd`~ijvstt}q|ccasnusmaY`^[ldRbW_`hkuypcjcmfh|lhthloh|xmqt|~z~|muttmeljacuViqn`xflbjvpfy{yq`rl
®¦¨ |w©yy|}|{xsxzs}d^|~t}~}£¡~r{§ t§tlzo£{zqyjul{~~m
wp}~drj|
ty~vx~}
¤y
t}stmaztzq|oancd{anovrwwstbv`oluno][^]^j^O]Wbahmszk_jejchwmflhjmh|zwns}tz}z}}ryyxnlkh_irchqofvgmlazhj|zxpawmª ¤©}v}w~{|{vwptszo
}~|`\~szz¤}|¤
n¢¡o
gz
p¡|{tsukqnu|tnqt{|eqmy~}
ttyo~}
¨{}~
w}po
chwsupzb^pajt^pjzxxlrpey]mlsmsXZ^_ajZPWXdcgqqf]ihfbgqndigejhzwtn
s{u
x|w
zw|{ryjk_phtkqnmqgole{bmyvqlww£¢¨¡§t© t{v
xxrs{
kroymvnq[Y~vu w~n¡
k¤gw~||ovokmop{
isqwtyftov|
zzwtp|{£|wxxnj]rrqppxZ^qaoj^oi|ypmmjmv`pokrmYXaabnXQSYefcupb]kmdbfkm`gf_hkurrptxvy
wv
|{vjqc|b|opltjholvw_q~y{tut¥§
u
zrxtpr
squlomumw}mnUQ«xvry xz¤
|s
ih¡qw{z||kvjmkklz~ay~vzw|ygtlt{qz
px{{~
|}x}vpikx_womkqrU^pbq`_mnypgpfgsuhpkawe]Ve``rSPN\ed]xp|_\hrbbefj_hd[gp~pkqs}v|
tuy{
xs
~{ywfrj`~ookz`jmtt_t}xxts
|y¡±¦vtvspo
spqojivmn}|musRNßÉÖ|ptuw{r¡~xz~ywhl¤
cq{{y
{~l{erojkyy[yz~~zzhsks
}l~o~{|wxysmfplhtoghslS^oepY_kqxfkjbfxsopc_w``Vk_^vPNL`fc]yqt\[ev`aeecafaXissnkqv|tzuv~s{r|~uesn|eoplZlnyys`vz{vrwwy¯
w}
uwpyqnomn~rddxp|mz}jhlc¤ÁÜ®ï¡skuu¡
nq£
{uxvwo~¤
^l{}
v
}}k}cxuimxsWz
z~
~yesjlvn
zttxutqguyasloahufR`qgkU^msy`rc_h}qrmZbrabWnZ\wMMLcfa^vsm[\dy^`df_cc^Xjrknkrw}swww|q}~{t~~rguqym{otpXqzvyqdwyivr¨£}pxy
¡|{swpsjokil|t^`xv{pu{g`e|ëÚµÉÃÜslsviq |{vxrvq¢ai}}q~qwgvriswkZ}
|vbtl~}nly}~nrzulqkrx_rhn\ju`QerifS_ovt_o`]hqriWghciXmW[uLJLef^brs
h[\ey^^dgzad_\Yknenjtw~ss~zvzs
|wv{tkwuyyuoxz}Xy
qogxwdv
q
¡¢sorw}{yrsnodr~iflww[_y{zqqiagaÕ¶¦xnqw{qjzh||~
zu{zquw~af}~~m|tkmvtsvukc
~|p_sq
||zqf{|
~npyumnjkz}bgiiXkuZRiribPbrxlae]Zjmsb[g_dl_nTZoNHOfd\gnqlZ[cr_\clwde]\Zlkbmjsvqo||tx
x
|uy|voxy{on|w^tmizssgr}r vvmv}|v~wqoljat|gbiuzZ_x|zmq~echhW^qr¼Ävq~rrj{|}|uvv}qu
ru
|f}
r}f~{y~|i|vfoxxsvslj
x
k^rxz}|~riy
y}}nm{}wtnhg|vc[pbWnrSSnshaMftxe`]\XnosYea^jm`pOYkQDSg`Zknm|nZ[^lcZbowdg\]`liclisvqn~|tuz|
v~xtryx~on|qiyz~ml{ukjwtl
n}vjx~yozspljd`szh`eqzZar}ygqzaee±²wJbZ¤ÙÐr{w}
nlzy|xxpqt}ziy
¥owy
p{}nwh
xr{e}~ucprhxpou|vxyk\q~r
~{rnq
szxno~wzehj|p_XvZXplNWqsg`Jlvt`][[Yt}roWg]fjp`oNWhQ?Yf^ZokgyqZZYkeYcqy_h\^emhekiqwol~uo{~v
qq{|yyujzlo~t}or{{onxf¡gphz}~|ixrklf_anxm_box\dlzaqv_eeÔê¾2:>qx
v~ml
v}
|xnvwo
ku{tfy§}ntvz~{wlrh~xm|{wbyqdqh~mtqt
~su}sp[muy{|xzqlrztnkwuu\ihwpXV{SZpdL[rre[Ipxo\ZZY]u~thYb[genciLWfQ=^e\]ue_tpZYTodYdqyZh^`gmgilipw}li~yn||zu
pnw~{{h{~jt{r{sw}yx}|kl~kh~z~~}kuqghc[bgrn`alsahpzbst^cd n\5Y¯µti|u
svpl
uyx|z~sgv~~oq~hvymey¤~n~u}|p{}{h~lj{zizvr`w~qdrfumu{|nwy|tmXowuxvzxsns}znnjnun]gesqQZzN\o\O\spdUKsxiWYYZaqt`]]`fdhifNZhN@ad[`ua\tmXWStaZdorWj^bhkgmlipw|li||p~~{zwq{oqw{j~{nwyww}x~~zm
£{vyklx}{~prpcf^Yg_op``gpfjotato[adjv{¾¦£È¸q
r|xsrro{tutwyyqcwzirvfwucj|}rsyx{kxy~ugzhlysizv}h`w}jktg{iv~z}~p{v{t~bVw~ss}qwxqp~y~}vviqimrp]hbrnJduL^nUTZsnbQOsx`RXX\aos[a\heeckdQ[pIDcaZcp^]whUVUw^[enhVk^ajgeoohpvznix}r{~y|v}pwrnw}p|xyztxzuo~}
zw{gt
z~{
vgon_d\XeYmr```plkhn`siY^dmw©Ú©Ç²qwou{zutt~wpqmt
xtk`zyfqogvn[m}y~y{lvt
{luvmgvem{umjwv|`bx
yhtub}{gt{tuqz|mYVt~pu
yltylu~{}y{s|sgtenms[j_udHnnLZaWVVxmbPRtvWPUX^aqo\`cmdd^obT]rGBf_]fh]ZzbQU\u[[gkaVj_`nefkqhpuxtku~vx}w{s}oqtqu
{wx||x|}~{~svy zvuy^}
yt
w{bnm\b[[aVjsc`[gnofqaqfW\ck|Êι¡jmmlqq|~{
yysyuu{jlucuvof^}zerkjqcXmztx|mqr{x}qqp}fhqbmxqjkqx}|z\dywiuxfvgt|qjn}yn|]Xrmt|ooqvhww}q{u|zrfsanlrXk_w[InkMUT^TU{kaOTurPQTV^bt
i\`kjfcYnaXbpGAh\`f_]U{]OUdpZ[jh]Wh`_rejhrgprwxntzw~xur
pp{xwuz
z|u~}~~}|xvyx }mvyc
so
ztcnkZ_[]]Tgse`YdrrfsbkeW[`ix¾®{ ·mbshs{qy
{}wxrvo{vejn`urib^xyfq~hjkZVow£rrytnt
}xtrnhy`jm`mvjgjkywzw[g}|xer}mteu
ofjzumtb\o|ku}|fu}nqhux~s}l{{zxpflbn~mmVk`wUJjkOQNhMY|hbNUujLPTU^fuf]`phgaWi][khJDjZadWYUyYNVmjY]le\Zec^teldqgrouxp
v~w|
}usnsy{zss
x}v|{~{w|wwziw}|lrp
~oflgX][\[Tdpd_WbruiuoeebW\\hporsddx~itusrxywtunkzqbgkgtmf^_}p{~imwfidUWro§||vt|s|zn|{
w}
}tprlgt\lh^ltdgfizo{rYgvtgpwubw
|njmzqfse`mzgsx|~bvvjkqt{qzyt}f~ywndfbn|mkVjbpSKijOKNpG^{faMUtcJNSWajv~e\gsie`VcWbp]LKkXcbUUUsVLXudZ_ka\Zce_wfmbpisnrttwwz|u~
nrt|ztq
yut|
}~{~v{£¥yku|{uzo
sy}unjheV][ZZSbnd[Xarzihlh_bW_[jikogk`hyxjsttnz}uunzhjyj_enhvfeXbwi~{oiogf]UXoh©wz|yuppruyxu
ujrvghn[ld]ms_gajxh{mZmrsjo~ywawwrqoyrcqi\pxdqt|xbspgjxsrlxwuxd{xvpdccn|}klUibfSKlhOGRkEaxgaMSq\JMTYekw{e^mqid]V`VnnWKShWf^XNUlTJ\y_[_k]][ce`zhlaoounoxuz}wz
zyz~qttyvt}|ks{
~}{v¬zkrzvunn|sjomddX_ZYZUbjg[Z^ti^mk\aV\\leqt}ii\kvvgtwrm
{}}yurlyhixf]dshzwbbTepg
wwfhj`WVYgc¨o~wzpq~hxoy{wr}~ndvsdhh\kb]oo[g_mudzh]toqkq{}uuat
zwruuapmZrtbqr
|uerlalzoji{yvrf
v{zuqeaems~ilTi^]TKscPGVaGbvgaKToWJLWXgkvzdenqfcZW]YveUJ\cWhXYIWeQHbxZ]_l[^\ad^ij`otxnonvyr|
}uuy}suuyzz}~isz}~
zz|sq®{{}erzt}|vro
l{~lzbpobe]eVYYVcfk`]\rhXomZ^WZ\l{bpwvmbZlssguuply~ywnnteite[gufvvy^]Rffkt}bci\TX]bc¥hxt
xmozhxm{{usx|xhevm`f`^j_]skYe]oobze[w{knnowxstdr~zvor}sbxd[oqbqq|sgrd^nvidgy{unout}sqb_fno}djShXYTMw_QJYXHbudaITmSJLZWilq{bllscaYY[av[SLc]XiSWHYaNGiuX^am[[_bb]
hhanxylojvxm~vttsqwuw|}~~~pw|yxy~tsp¢{zxduysxulto~ly|pr^po`gblT[ZWhcmf\\qeSqmZZXX`lvciuji^Ymsqlsssj
|~|vnnldiqc[jrdtvs[WSearr]bc]SZ`[cerq
tlkzmop{||qwrzyydeuh]bZ`g[^vhWb]phaw`[{viirnwsrthp~vrjp}mfwW\knbqszsgo~[`oqb_jq~llu~sqxkpa\ellzagSgUWRPu[RPYRHctb`GUjPIPZUkkk|emoqa[ZXYlpWSOfWWiSTFZ\OHruX_cmcX``a]jcdmyxkoiuy{k}|y}nqowz}t|tw
usquo¢t{{exon{ofxpzlsvrk^tnagekR][UgallZ\pdOnm\VXUgjtgbtee]Yntnpuuyk||vsddkna\nmcsxkZTVcdx}}q
\c_cTZ`Yccnp
sjh{ofsws|lztuoy~u^frc[^VadYateU_`mdaq]]~ohisqsptujm{
qrfn}proT[fkfqtwsclvUbqj[_of}fmw}sssjm`Zdjjw^fTdUVPTmWQWSPHds_aFXiNHWTVmhd|ikxkbW\U[tdSRWhQYfTSHZZPMxw[_eliYb`^^nbflyunohvvl}{~krgt{u|r|
{ss}vn¥svwmz`e|pfzsylmqvgd{lcfghS_^Ug_lo[^nhNil_TVSogslfxdd\Xptlrzwrm{vzykaelm^`ojepx~gZVX`lx|{p_b^gVX_Wdbkq}wkkxm\wql{jvsno{rXjn_Y]UbcXdqbS^ahbblZ`}kfksunmwvkh
~zmqep}mrmcYaiiotts_ilSeqdTbnbzcqw{vkpmk_Xaght\eVaVSNXeRO\OOHep]cFYiMI_KXmd_xhn~d`T^T]u\TS`fN]aTSJ\YPYuv]_fmhXca[^pcgjwqsngvtzry~|zntlsty~|rstwqn~zz}~~}}~~}~~~~~~~}z{|~~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~ÎÚØØØØÚ]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDBN¥¯®¤ £cggggfo
}}{{z}~||~}}}~}}~~~~~
Ûéççççê~S7¤¤¤¤¤¤£r]____aR455553A©¶´´´´µ¨£¤¤¤¤§|\____^j|}z{z|}{|~}}}~}}~~~~
|y{z{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{y{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~rtx|||{||}}~~~~~~}~~~~xrvy|}|z}|}}~~~~~~~~ssvx}~|y}|}}~~~}~~
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxy}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvtuvwuqrqnprpghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkigfggghhgmgjghehgccbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__`c_\_]`]^Z^]YY^ba^^ZY_\XWSNMLKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSSPMJMNPROMPQQQQRVVQQQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTttuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPPRQPNNONONOOPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKLFDFJKKKHJLLLOMLLNOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBA@@CCDEACEHKOKIIJHGJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AE@>:;>><ED=?EA?@A@DEGGGGBDDEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@;;><;;<<HL==AA?BC=ADDFBFFDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprttsqrvyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;<:68;<>=;;:8:@@AB?A?CFDBCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtsusqtxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::989:N?8:9:;;8789;:8<;=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==>>=;Fy_;===<<<<;;:;<>=>??A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLKIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CDD?>==@IHCXyoC>CE??@=;===<;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVpoqssttuyz{{|~~~~~~mLPQNOPNNOPPO><<=>??@>@@???CFEN@:@e~~xrwo>9<9==@=:<;;<;89;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}}~~~~~~~~vMNNMNNLLNPNL>A<<=?>BC??AAAB@M{f@kzp?988:;=??<;;<;::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC?Uuyq|rB==?==>CD?;<=>?==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy|||||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCE@Uut||
hAA@C@@?@@>=<=AEABBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{{|}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Lss}
_>CCE@??Na_J@CEIIIIMMKECFGHEGEEEDDCA?@>>BFJJGEEGFFJNNKJIGGHKMJGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEfw
KDEDCWu~XGHJLLMOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHIHGFEFFFDFHGEEHHFHGHFQnnpqrvvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJGXt
c@BUtWILMLMNLJGGGGDGGGGFHFHECDDFEDDHHCCCGJJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrswwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLJ[}Wl|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD?>?DFHDEGIKIIGHIGIIJJIHFJJJJIJIJJJFILLJJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLLIe
uIIFB??@???<<<>::<AA@><998<<=;>;9;?ABAACCC@ABDDBCFHIHHHLMLGIJMMNMJJKKJLMSloqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJJJl
fBB=88::9878896479;<:8567789787689;;<>@;999==><<=ADEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIi
~T;8656766645763468:876565676778:77789;7589989876:<@GFIFIFEFOSRSSROPPRTepqsttwy{{{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=ECEv
H676468874578467699766765:9:::<898977779:98878589;A=>>BA?AKLOQPQOOORWkrrttuwy{{{|}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B9H
z>:88;<=>9:;<89;9:;:99;:9===?;;;=:>;9;;<;<<9;<8::;:999<?<=ABDIJMKJKLWorsutvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<;89989:::;?<W
l<;>BCEEAAAB>@B@@?=>>@?>?@?@==?B?AA?A?=@@@??A=><;:;:9;?=;;==AACABCAXqqtttvy{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<=:;;==?@B`
^>DGIKJIFGGDFHGEC@@CECB@BCB?@DHECEDEEAFEFEFFD@B?=@>=?@>???>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@DDEc
WHLMMKNJIKHIJJIECDFGFDCEFDBHIKHGGFGGEKIKIJKJCFCCDBAACBDCCDDCA=;=@hpsttwwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@?A?BCHHJ`
PMPMKNKJLIIIHJFDGHHIEEHFFELLMIJGGHIJOMNLLMKHFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?FGG=<@@87<;<=:?@>@@CFJJPh
qMQOMLLKLJHGEJIDJHGKJHJGGGKLNLLHHIJMPNPNMOKIGIJHIDIHHFFGGIFCBACUnquvwy{xyzz||}~~~~}~}~~~~~TDAABGHB?8?@8:<8=>;=A>?@EIKMVs
^QQPMNMKJGFCGJGLJGKOLKJJMMLOPNHIKLOQQPQOOJIJJLJLFGHGFGIFEEB@BB\orwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAHLMQWy
|WURRTROLKJEEFKONOWVQPOQSRMSTOMSLPSUWRSQPLKMMMKNGGJFFHJDDEEBDCcpuyyzzz{z{z{|~}}~}}}}|}~~UFFGGGGHF>@B=?==B?BCFVNFOQQUY|
gVVkaERQQPJ;:QSR`u]UVTVYYRXXRZfPUWZ]RTWQPNRPPPQKKKGHIHEFIHIHIjrvyyzyz{{|z{|}|}~}}}}}}~~~THJIIGGFE??AAEBCGEDELXRMTVVX[|
}al[dU:XXXSP>@VUY\d`VYbr^]V]ZVEQYZ[Y_TYgRUVXUTVTOOMJLJIILMKOMSosvxyxwzzz{z{|}|~~}~}}}~}~~~~VJJIHGFDDBA?HMIMPKIKPTSSXZZ\\x
g;~znpXZ[ZRSRVVTZZuYU}a\X]^WIV]][[_YHYXY\]YXYWRQMPQMMOSQQURassvwwvxxxz{{|}}}~}~}}}~~xy}YNKIIIFBD@A:PQQWXPPOQSTTXXYZ[n
n~fYY\XSVTWRQWVcQerXZW_hP`fZ[X\hbGOZig\[\]]WSNSPPQVVVVYZnrtwvvtwxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQORRRUSVTW_ux
}{\PVXTRTRQQLOMKfyZ]TYUV]ZLTZUST^ZXWWWzkXZ\\^SPPPINOWVXZZdqsvvttvxyy{{||}}~}}}~}}~~~zxwvsu{tk~~kry^[VUSROKFCDAM^lVRSNOQOQURSRRTcdv
~ymqVIKNNKMKHJDFHEC>ScURQQNKRTRMOYQMNQSUUMQSRPNLLHCIHRTUZ\mrvvussw{z{{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YVQLILIaltPQSNQRQR[RSRQRUUbs{|}{{
u_]KC>CCCCB?DPBD@C>BHGV@HNMG]iPHFOFDEFHGHBCHGHJGCBAD@OPMRdsuvustuz|z{{{||}|{~}}}~~||}}vt{mh|gnqfieeb\XSQPURsWe[OONLQSQUYSUQQTROV`klrv{{xytrnstsyx~~kLG>>:;>@???>kQKaEFHIEB?GLNGMQUIBE?><=<==?=?ACB?><=B>JMFUnuuustvx{|z}||}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QQZ\Y^IJPQNKLQRQTUUWQQWVPX[b]agmmlokh`nrjmlqu{z}zxz||xwxdB@@A=:BCAADB\]O{NOONKLMOOQMKLWMHG@B<977599=;;;8989?;AH?\tuuvuvwy|||}||}}~~|}}}}~}xuwz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIGPRQOMPQNQRTVXSRYTNYZ[WY]^^`e`]^qvk^`gkwooljonnlfbYGFFHBAFIEEFDMRPaWRXQPSSRU[OOQVPMJCF>::6486979:366796<B=ftuvwwyy{}}||{|}~~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMLTTSQQUOLRSTWXTTXQLXYZVXXVXY]WWXhsk]V`tkaa_]d`_^YUPMONLIGJKIHFCQPSZWTTMQSYS\eUOSTRNKIHC?A9988978847578588Gnsuxxz{{}~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOUVXXYSUTLKTUUUUWPTUWTUR]n^RNY`[VY;DUWT[fJLPRROMMNNNLJFPPUYSTNJOOUST\VRUSRNMLIHHF??=:787659967665Wqqtwyz{|}~}~||}|~}}y}}|~~~}||}}~}|rvqxxruuqqnppopuvtnjddjppqrpnfedc\^RTZVWUTWTRXXYYYRUOJGOPOOMRJOPPPNNOTLMIPPSTU2<XMIAQ=c`QSQPNPQPNNMPNTRPRLILKOQPQRSTQROLMKLLHCBA=:9876;B4566;eprvxy{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqptuvcjgeWhtrrqniihpVVTUXUWURWVUZYXWUQSFEBFGGHFJDHJHGEHLHKIGLMPMG/E_R>3@>joaRRQ@FTQPQPQNQOPOLJLLOPNNPQQNQOJLMMKGEEDB;=<<9=G6676Dnquwz|{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknbePSTRSUOWVVYYVQQQO@>;=?@BAC@BEDA@GHGHFFHJMLDGCORC8ENS]gSQSAGUPOQQPMMNMKLKLNOOQMOOMIMLILKLKGFFED<AA>;@E;<89Tqsuy{{{}||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLONMQSLTUTWWULLKH=987;?A?==A@B=>EHGDFFIGKJ@FAA@FHEJOHQRa\QPRNSOOOLLOMKMLMON[VKMQOHJHCIJLLKFFFD?BC><BF?B?Adqtw{z{{|{zzw|wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B?;?A@@>ADIECHGIGIEBB?><CBAGIDMOaeQMONWKLMKLMMMLKNNSdMJLRIIIEAHJLMNKGIFBAB@?EFEHDKopwzyy{{z|zwsxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLMIMPMPPHKE?B=999:?B?<ABBADDGKFDIIGGHCC?B??@A>CECKNQTLJIMTFIIJLJKLIILMOPRPKGCLGCCJJLMONIJIGCCCDIJMLIZsmxyxz{{y|vrpurtyyvxjqnjllnttmsu{stxronqovsnporpopstyjN`gsjt|ygosqjqheqHKCFHHGJKIJLDGB=>=:::;AB?=BBCCHFJLJEIIFGGCC;A@B>@@CECIMPGHKFHKDHIKMHJLHHJLKM]RIHDNGBEKKNMPNKMJKFGGJMNQNLcniwvw{x{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoijthdoFKCFEGDEEFEGCC@><=:;::@D@>BCEEIFJJLFIIGFFDB;BCC>@CCCEGLNHKNHDHEILNMGILGEFIILNKJHEOICGMLNMPMNNMLIHIORQRNRfgfrosxu{z|lhjoekpmsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGICEFEBCBE@DB>?>:;;=:=?CA?ACFGJGIILHGGGFEC@=EEB>ADCCEGHIGMPIFFGKNOKFHJFEDDIIHKIGHPKDJMLPNONOONJJHMRUTROWdaamgprosyzgehhcilgqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutvlkuumrvqlnlerMGEEGCBABD=BA>A=::=?:>>@B?@BEGJFJGIGFFFEDBAAFFCBBBDEDGGHFLQLIOJJLKIGHEFEDCIHHKJHKRMCOONQPOONOOKKKPUWVUTX`^]iaminhrsbeffdihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwuksunutsqrkksMFFEHBBADD<AA@C<89=>:?=?B?@@DFHEHFFGFFEDCECDIFCFEBEGEEFGEJMKHQMJKHHIEFIHECIIJKMKPSNDQSQQRNOMNPMLNSWVWXVX^[]d`hbjigk_eegcgggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxnouorsuqqipzMGGGHBBBFE<@CBD<7:=>;>:@B>??CEFDFDDGECECDEFFJEEIGCGHFHFECFJJGMJLKIJLFIHKHEKKLMNORTOISUTQTPQMNQNMQWZVZYVZ^ZXa```_hec`dehgjihjfhnllnmqpiuuxrrpupppruvpusuvu{~}xvtwvvvwplupmsunorsyMHHGIDACHE<@ECE=8:>><<<AB<?>ABFCEBBHDCDEFFGGIFGKHCHHGIGFDHKIGKHMKJKLHLJMKINLONORUVOKUVTQTQRLOQPOTYZY\ZY\__^`c^\ackb`dghr
hgifjmnponsqjtuxrsstrnpqvrquruus~y}uuvvvvxriuqkrtlqwquKIKHJEBEGE<@GDD@9<>@?>?CB<@>AAFCEDCHDFDGFHHFHHIKJEJHHKHFFLHHHJGLLLLLIMKMNMOLPPQUVWOJVVUSSRQLORRQV[[]^[\^`_a`bd]d`ef`ehjcssfjhglprqossnswwquvtsmoruorspurvrtvuuuwvuwtgtrkqrkrwovIJLILGBEDE<@FDDB;??A@@@DA@B?ACHBEDFHEIEFEIHFIHJLHHJJILJFJKHIJJGKKMMJJMLNONOLOPRUXVMNTVUSRQPMNTSRW[^^_]]``aaa`bdebchbdijgvlkigmosqpqpprywruutsmmssmqrotutspsvtuuwvuuteqskpqjrvowJMLKMGDCAD<?EEEC=AACBBCFBCDAAEGCHGHGFJFCGJGGJFILHIJMKMLGKIHLKNQKRQLSMKNNOPPPTOWXX[NSQW\ZSVPNTUTTXZ_bb_da_`b_`eaacinhbihhmxvlhimosrpqrrrvtsusssnksqmprotvrrquvuswywutucmtkopjqtpwLMLLLGDA@D>>DEFC@CAEDDFCCEGCBIEBHJJHIKFDKJGHIIIKGJJOKNLILHJMKZfJd\KlRHON_nUls[qpbwcRPbvuhucav`Xnqbdvinzf\lt`ljT_wvijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqsqyKNJKJFB?@B?=DEFDCDBEEDGBFFGCDJDEJLLJLMGGMJHJJHKJIKJNLMMLLILML[sbdp^llUMNfs]geqlntgpi_aYnnbppbkjjgoqtetno\pugpMJryvkb`keemxmkvlnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIIGED?BB?=BFGBFCEDEEDCHHGDEKGGLMMJMLFJNHIKJILJJJKMMNMMMKNMM[roonpplkMPQlWNibtrpamov\YlQ\mmZqmkomxxtsip\`slqjUuyxpc^kfbgppjioppsspqpqqrrqqrrtlmrmmnorutqtrtuutuuzvutenukpolsrryJKGHEEEBBB=??FGBGDIEEDBFIHHEGKJGMMNKMNGLNILKIJMIKJJKOPNNMLNML\hdu]lqWlNOQmUZk^klvaldtTecNmYl\tpkilxjwuhp]_skhWbcw|oc`ghadityknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtwIMGIDEECAB<B@BFDGFLHECCHKHHFJLLFMKLRRLGMMHNJIHNHJJIHNONNLJNMJZsppoqqmlOQRnYqkgooqqomt^nXat_nopoqronusttj[]tcwxrjnzhaacgbbjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyytukoumtonssvtHKHIBEEEA@>CCBGCHIMIFCFJLIGFJMLFOJKWRKGKJJNIHJLIKJIHJLMMLIKKKSkbZi^_jcrrZ_Yjo_eeUk_c[abQ`lh]j\niid[pfdp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrutwsHHFIDEDFA@AEDDGBHJLHFDGKLIEFJOLIOIL[QJFHHKMIHJIKKIHJGKKKKGHJJLLLKIKLNT[\TPTMPONOOVQOOQOOQJJOPQdqiTYW[[\UY[]X]\\cfaafbce__fkmhmtyrtroppt
zpmmlkqsttrtvtuyyxuvqruovrtsuusGCEGFFAEC?CGDEGCIKLHFDGKLHDGIPKLOKLWMIEEHIJHIKHLJHFHHJGGIEFLHIKNLIO\W^O\[`^OXYS\\b^MYZMXaRKYaZS`d]bX[ddVVX\YZX\VY\^c_d`a_ehkgmttqqtpqr
}rkiorssstxyyxyxwxtqxrxsqrurtOBCDLMBCDBDIEGGFKJKHEEJJJGEHHPJLMJMSIHEAHFJIKKILJHFEJHEFGEEJGCJMJKT_Y`X`a[`UXYT^^Z_RY\P^\YN_\^S[^c_Z]`c`Y_b[`^[TXXZ_^dbbaceiekrpoppnow
{
uqprrsvyyzyyxxxvryvxrqxvtvaSJJMIECBCFGEGGIJJIIDFKKKEFHINJNLHLNGHF>GGLIKKJKKIGEIEDDEAFJD@JKIO[cY^^a_RTSW_`\]Y^QY\MV_WKQY[Q[_aa]^ca`bbbcceZRYVU\[^c`__cebhommllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQJFCGEBEGHFGHIFGJGHFHKILDCKJNMLLHJJHJG?GFNJKKMKKKIGHDD@DAHIA?IJGO]aZ[d]_TQRX]\\\_ZKW\LR\YIM^PP]_accccb\dcbdcfXQUTS\X[a_^_aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMB@IFCFKIFFGHGGJFFFILJNECKJLNJLIKJHIGBHHQMKKOMKKIHGED?EBHHAAGFDT]Y^X_Y_[]UXXP]]QKJW^X^[]VZ`RQ__bb``bb`cbbddbXOQQR[S\^]^^___dhgljnnp{{|~{
srw
|x\SKBAGFDGMRHCRKFHHHEFKJMPEGIIKNLLILKIIGDHKQOMLPLMKKHICEAECHGBAFEBVUE\T^SV_XNTUNZ[MJKU`a[_X_^a]OYb\``_bcb]bbW__TPOPQXR]\\]^_`affelfoow|{{}
zo
~INFDFFGDIRcPDW_IGGHDFMJPPFJIJKNLKKLKJJGEJMQQNOPMNLNHKADACDFDCADEALHCLLPOOLFMFGIJHGLLMOQILOPPSPLQSRUZYWYXXdVOSTPPONPUT\YY[^^aaefchckmqsszy{z~{}{
}KIEEGFGDKM^LGHYMGHJHGNLQQILJKKNNUNOKKLGGKPSSNPONONOHKE`ED_LDfcDM[H^\smOMVmYLCP`UlWgJ]XV^DLQULMTVQRTXWTXUT\TPfZhhdYTkTWVU[\\``abbb`gignlhrz|}~}}zr{z{
~z{LIEFFHEEKOTIKG`TGJOJIOMRQKMKLORUROOJLNGHMQ[YOPPNOPOIJPQI|YYrsXPmHqnoaVPqqsPCksmqspSo_[nX]V\XUkhU]VcZ`YZ_VUWjtuu_av_Xb\\f[_aaab^`bgmpl`pwtx}~vxzlv~tx~|~|z~wwNIEHMMBDLLGILFRVLKOIKRXWQNOOMQTNOQPKLOGMPS[ZTQROPPPJHZx]TxdhYRTQvgtlpbnfkQrOMwmjrpsrqrpop]ezuxqqzq~s}ku}bRh|essoss|}o~yor```baZa`gknkblfgmw~~{xwtvzir~nt|~wx{~x|u|||ssNKF`]GAEMMHKKHJPOMMJNV^YULQSNYYLSSRNLPIQRTYWWQTPPPQKGfxlcxqmZJLUypumubnvPdeJfvqmwojfxxiWrQhzmijzz}lxzpgoXvvjvupash}ilx|o___cb[^bdgijdgbcdllppstsssyqrxblugry{ssuy~svzn|}yxrnNJStNCBEPPIKKJLPOOOMPZ`ZXKTWPa^RVQYSMPISTUXWWPUPONRJKrouuquqdhaVnLqp^FhyWvTKhx}x`y{sna^modRgrunmypwlvstqlm\s~zkmy|lum|kpvux^__b^]_edighee^bbiiijknokqnmjpacfdowxompsynqpj{ztromKK[VHGEGRPJLMKLQQPPPQW\YUNVYUfXRRY^TMNITTVWYWOSNNNQHRmHiwK`dvvUWlOnl{sajgvUKWkh}lmlx`[pz{^`zscroxqhd|ir{]TKl_vukiu{{m~xk|p]^^b[^bdegeeebZccikkrsrwgmihdg`alagsrkhlmr|kmhk{tmmkmOGJKHJHHRQLNPMLTSROSSWRVTPWZVVTTTa`QONKTSSQVVONLMOPJHQNPULKKSTSRTPVUQQNQQXXQNPUTXXX[[USSW[WXWZPSUWWXQ]XV]USOXRWWWXZ`[gr^[\[]^_cZ_cdefdccbYccfffmnmuffgc`f_]g`dlhfgkhpzhggkujhgilQIKKLMKJTRMQQPLVUTPTUXUYURZ]VUTWUYXPOLNWTQNUSNPMLQPKJQRKQMKKORTRQQSSIHMNOQRQQQTVRXW\WSSPQUUVTZQNSRWUTYVTYUSRUSTUXYW^Z_a]\[Z\\`c\]bcdgeddaY`acabihincad^_c]Zd\bma^ffgmsdihkkedcfhPJKKNOLMTQOTQQMXWUTUWWWZVT\`VWVYUXTQPKOXSPNUPMRNKSPMOUTNQNMNQSPTQSTUNKMOQTTRRQVWUYZ[YSURTWWWY[SOSUWUTYUWYTRRWUUW\YZ`]VY_]^]\]aa^[bbchfedbX``b]`hefda^_]]^ZZ_Z_g`^]]bhkagfhfd`bcaPKMLPQLOTPPSQOQZYXWXZZXYV]jdVXYZWVTTOKOVTPOTPPQNMQQPRXTRQOMOSUNWRTUUONNQSUUTTRTXVZ]\ZVVQRWXV[[VPSVUUVXTWWTRRXVUZ_Z^`^V^]^`\\``__ZbbdhhedbYb`b^_fdc`b]\\\\YZ[X[a[^]\_b__bddbd__`\PMNNRQMRSPSTQOU\ZZW[[\YZ[dqmhd_[YVVXRMMVSMNROQROLPSRUZUTPPLPWVQWSSSXMOPRTXUUUSUYX[^]\[VROUVV[[WQSWUVXUSXZTSQYWV\^[__`Ua\`a^`b_\`]cacgide`Zc`a__ee_`c[Z\[\ZZYYW\Y\[`^_[^^a`_b\Y`ZQNONVQPUSPUTSPW\\\X^\_W\^jqwyc\[VVXRNOWSNQQPRTRLQTSYZWUORNSXVTSTRRZOQSSV[VVWTVZX]^\\^VSNTVV\\VQTVVXYRSY\TRR\XZ]^]aa`Wb[cb^ac_\bab_dgidf^[d`a`ace_b_YZ^[\[YXYWWZZZa\][]\\Z]`W[[ZPOOOYPUUSRWRTPZ]^][`\`U\]ijr}slh\UYWQOR[SRQTRTUTKRVU[YZSOSRVVUSOVRSZRTUTX\WXXSX\X^]Y[^TUNVWW^[XQTUXXXTVX[TSV]Y]]a^cc^Y`[eb_dd^^cca]efidf]^da`abcd_b^XZ_[\[XXXXW[Z\`][\\[XZ[^V^Y]POORZPZUUWVTTT^^`^^b\`U]^bkytl}lZUZUQQS\TTTUTVYWLRZV][\ROUSXVVSPXRSWSWVV[]X[YUZ^W_^Y\ZRWRYXY_ZYSTVZYZVWY\VTZ]\^`a`ed]^]]eabfd^_dc`\gdhedb_da_a`bb_`^WX^Z\\ZYZWV]Z]^[Z[\[WY\]VXW]SOPWYQ]UVYWWUX_`aa`c]`U]^beeuzhXYZTVSV\XWWVVW]XPU\Y^]]TSXRXVSRTXRSVTXXX]^X][U^_X__X\VRYUYZZaY\UWWZZZXYZZXV]^_^cbbee]b\`fbefd_`dbb[fchecfaf__aaaa`_^VU]Z[\[Y\YY][[[XXY[YZZ]_]TY]UNTZVT\TVWYWV\`abcad__V[`da_zuohZ\ZVXUW[ZY[ZXY`WPU^[`a\TUXPUVUSVVRSUWZZ\_^Z_\V__Z]^Y^VSYXYZ]bZ^VWZ[[[Z[Y[YY^_``dcdeebdZbfcgfe^ac`c^cciddg_g^bbcaa`^_XTZZZ[[X[XX\[Z[WWZXW\[\`]V]]SPVZWVZUXUXWX]_badada^YYadb`lfh^\][WXXY\\\_[Y[bVTW^]ac\SVXPVVVVVVSVTX\\_``]a]W`^[^\[^XVXX[[_`\_XX]\]]^\Z\X[_a^`dcdfffbYceehgd^ca`ec]fideh_g^cbcaa`__[XY[YZZXYXW[[Z[WXZTY]\Z`\U^bMRWYVWZY[\YWY^`baeada]^Ybcb_a`a_\\]XW[[]]__\Z]cXYX]`cd_RXYPXWXXXWVWV]]^`aa_b^Ya]]^Y]^YXVW[\`_]_YY^]^^a][ZY\_b_bddefggbZdfgigc_c^afdZhicfice^bbca``_]]ZW[YYXXZYWZ[ZYWXVU[]]]``bbxKWW\YW]\\]ZW\]_`bdbba]`Xcdb`cac^\\\XW[]_]`_][`d\\XZcecaR\YOXWY[ZYWZZ`]`bb`ac_\b]_][_^YYUX]]_`__[Z^^`bc\[W[]`bbcedgfegd\efhifcab\cg`\iibhife`baca_`_]]\Y\YXWXYYW\[ZWWXPXZ]acffrkJYW]ZZ_]\^\Y]\^_acbaa]b[bda_cbb]\[ZWXjq`\`_]\ac_^YYcedaT_ZQYW\]\[Z[[c`cbc`bda`c^`\^__ZXV[_]\aa_][`abeb_]S\_`cddfegfefe^efhhgdd`[fg^ahhbhhfc`b`cb___]][Z[YXXXVZV\ZZVVULXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{zzz{||||{|{zzzzz{{|||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvvvvvvwwvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{{{{{{zz{}}}}|}|zzzzz{{||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||upooooppz~}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½±µ´´´´¸Q&+++*"ÛÒÒÒÒÖº}~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}upnoooooz~y1333332j{éääääèÊ»À¿ÀÀ¿ÄIïååååéÇ}~}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vuuuuuuuvwwwwwwxyyyyyzxopppppprrrrrrrwzyyzzz~||||||}wssssss}
|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvvvvyvvvz{x{xwvx{xzyy}zyyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{zzzzzyz|}}}}}}{zzzzzz{||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwwy|z{}z|{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwww|{z}y|zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z|ywwwz{y|z{zwxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzz}||}{}{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyy{x{zy{xxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyxyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{{||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|||||||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqppnnnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrqppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpppqrrqqqpopooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpooppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqqpppppppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqpqqqqpqpqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrqqqqqrqqqrrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrstrrsrsssssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz|~~|vvwwvuxzxxxxwwwvx|yy|zyy|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{{z{|{}|{{{{{{zyxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}|||~|}~~~~~}}||}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~~~~~~~
~~}~~~}}}~~~~~~~~~~~}~~~~
|||{|}||~~~~~~~~~~~~~~~~~~~~|}||}}~
}||~~
}}}
~~
}}~~
~~~~~
}}|
~||}~
~|~
~~
¡
~
~~}}
}}}
}}|~~~
~
~
~{z
~|}}}~|{|
~}}~~~~~}}~}}}
}|}~~~}|}}|z|
}}}~~}}}}zzz~~
~~~~~}}}~~~}}}}~}|zzz~~}~}}~
|}}~}~~}~}~}}~~}}}|{{{zzyz~~~~|~~~~}~~}|~~~~~
~|~~}~~~}~~~}}}}{{|zzyyy{~~~}~~~|~~~~}|~~~~~~~~~}||}
~}}}~~~~}}}}}|||{zyyyy}~~~~~~~~~}~}}{|~~
~~}}}~~}}}}}}}}}{zzyyyy~~}|~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
~}}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
~}|||}}||}}}}}}}}}}||{z|xyz{|~|~~{||}
~
~~
~}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~||}
~{z|
~~}~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}||}~}~~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{}|||{|||zzy{|z}
~~~
~~~
~~~|~~}}}}~{|}}~
{z{ywz}~
~~~}}}||}~}||}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}}}~~~~
}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~}~~}|~}~}}|{|||z{z}~~|}|}||~~|{{}~}~~}{{{}|z{{{~~}||~~~y}~v{vx}|||{}}~}}~~~}~~~~|~~}}}{{}}|z||~||}|||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~}||}}|}}}}{|~~~~~~~||||||{~~{|{||||}|}|~|}|{{{|y{|{{}{}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}~~}}|}}}}}~|}|}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||}}|}|}}}~}}~~|{{{||}|{z{|yzyxy{~
~~{zy{}}x|zr}{{|||~~}}
}~~|~~~}|}}~}||~|}}|}}~~}~}}}{|}~||{|}zzyyyy{{~~
~~~z{y}}zzz}q~z{|}}}}zx
~}~~}~}~~~}~}}
}~}~~}}}|~~~}}~}|}||{|}{{{zzz{{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv~
~~~~~}~~~|~~|}}|~~~~}|}}{}}}||{||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||z|{|~
~~~~~~~~~z{z}}uqz|zqz~}yxut
~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}}~~~~}}|}}~~~~~~~~~~~
~~~}{z{z|{z~~}~~~~}~}}z{|
{{syz|pwuvwyutz
}}}~}~~}~|}}~~|{{z|{|~~}~~}}}~}}{{zx|vyy{qtxwvxury
~|}}~}~~}|~~~~}}z{{|||~|}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{{||||}}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~~
}}}|{||yz{z~y{yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst
|~}~}~~|~~}~~}~}~~~~~~}||||zyvyyzyvyv~|{{{~}{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~}}}}||}~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{z{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~||~}~~}}}~~~~~}}~~~|~~~~~~|}||{|xx{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxry
}~~}|~}|~~~~}}|~~~~}|~~|}~}~~~
~~|{{||yw|ywxwwx{{z{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqrpxwq{
~~}|~}}~~}~|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{|||zzzzzzxsvupprowvr{
}}~}~~~~}~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyysuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|z|}{}}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z|{{yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}{||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~|z}|{}xwvyyz|}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~~}}}|}z}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{
~
~||||x|yzyz|}|{||}}}||~{{{zzzupxwyvu|uv|
~
{~~}y|zzz}}|}z||}}|z{~~~}}||}|vrvxxvtvu}
}
~
{||}zz{}}||z|~}}}}~~~~~|}}~~}|{xvvw
~
}}||{||}}~~~}~||}}}~~~}}~~~}}}~}}~~|}
~
}}}||||~~}}{|}}}}}~~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uy~
}y|~{
}}~}~}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqtpurstv{}uvy
hzrss|s}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyy
rpvxqvtturstvinrotvnulwm{snym}rsvsvmmxlpylu}}~}}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}}|}|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyqjoyxpkyszozwvvp~~~z~}}}~}}~~~~~
xyrz{pp
x
xyks~y{krz|m{yyt}vnoot|uwqy}}m~uo
zrr{|upozls|nw~~}}{}{|}}~}~~}~}~|}~~
}w
}~{|{~{||}~}|~}}~~~~~~~}}}~|{|~||
}{{|}{||}~||~}}~~}}|}~~~~~||}~{|||{{~
~|{}~{|{}~}||~}~~}~}}~~|}||~~|}|||}|||~z{{|~
{{~}|||}}|||}}|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}~}{||~}|}}|}{||||||}{{{}|{~}{|}}|}}~}|zz{{||
zz
~|~~||}}|}}|}z{{z{|||{{{~{{}|{{~||||}~}{z|z|}
|
~~~}||}}{}}|~zyzy{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yyzy{}}zz{{}|}||z{}||}|~~|{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yzz{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|z{{{|}}}|~}||}~|{
~}}{
~|}}}~~~~~}}{|{zyzzyzz|yzz{{{|z{{{{}~}}}}||}}|
~|~~
}~~~~{||}}}}~~}}~{~{{zy{zyzz{yzzz{{|z{|{{~~}|}||}~
~~}|}~~
~}}~~|~~|~||~}|~}}|||{{zzzzy{zzzyyzz{|y{}{|~}~}}}
~}~~~~}}~~~~~
~~|}~}|~}{~|}}}~}|||}{{zzzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<D:;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>9=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<9<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËÊÊÊËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÒÓÔÔÔÔÔÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9?CE@<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÐÑÐÐÐÐÐÑÑÑÑÑÑÑÍÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ÛÛÛÛÛÛÛÛÛÛÛÛÛÛØÖ×××××××ÖÖÖÖÖÖÓÒÓÓÓÓÓÔÔÔÔÔÔÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILO@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌͲâÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¹´¢¿¼½½½½½½½½½½¼¿ÒÒÒÒÒÒÒÓÓÓÒÓÓÓÜãâââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVN<::77>C?8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÎnPSSSSSTTTTTSL óëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¤ZUVVVVVVVVVVVR|®ªªªªªªªªªªª¨°ÒÒÒÒÒÒÒÒÒÒÒÒÒÑàìëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;?C>6:7>>;=B?9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÎqTXWWWXXXXXXWP¡ñééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¥_YZZZZZZZZZZZV¯«««««««««««ª±ÑÒÒÒÒÒÒÒÒÒÒÒÒÑßëêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<;;<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÎx^a````aaaa``Z¤îççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©ª£hdeeeeeeeeddda²¯¯¯¯¯¯¯¯¯¯¯®¶ÒÒÒÓÒÒÒÒÒÒÒÒÒÒßéééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÇÅÅÅÅÅÅÅÅÅÅÅÅÄËÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÏÎÏÎÎÏÏÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÑÍÌÌÌÌÌÌÌÌÌÌÌÌËÏÓÓÒÒÒÒÒÒÒÒÒÓÓÒÔÔÔÕÕÕÕÕÕÖÕÖÖÖØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<8@B<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÏÏÏÏÏÏÏÏÏÏÏÓÏÏÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÐÔÒÏÎÑÕÔÓÎÎÓÓÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××Ö×××××ÖÖÖÖÖÖÕÕÖÕÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖ×××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÏÊ¥ÑÓÏÒ¤¡ÐÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÏϪ˺¸µ³¡©ÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D?A98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÐ˼¢ÅÈÐÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<:6?B@B:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏѽȬ ¬Öº¡°²ÓÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8FA?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÏÒ¢±¨¦²¯³ªÕÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÓ³ÄÁ¢§¤ÕÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:=?>=<9@<<::9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÑÎħ´« ©
¤ÕÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÑËÚ¨°ÎÚÁ¼¦¯ÖÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:979;::;8@?:<<9<>=;;:?9?:;9=>=><;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÉ¥ §¡ ¨»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;547<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡Ê»¡¦§·¤«£Ã «¤ÑÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÓ¶Ù§¬Ø¼ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFHKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÒºÄÕÒÕ¿¿ÖÒÕÅÄÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÒÕÔÒÒÒÔÕÓÓÓÔÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEK>>786967899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EILAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEHIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDJ;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGIB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?:8776=??@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@BB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEEC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<;DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGHNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsoupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸········¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢¢¢ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¥¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;;;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤££¡¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::88:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££££££¢¡ ¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¢¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥¤¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>98;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤¤¢ «cimnifm £¤ ¡ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9;;>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:=>:?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_]]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=9F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VPQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
}§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s}~
z}}¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXO[\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
z||}~x
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPFMHSWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~}}¨®²¯¯µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWLO_^\NUUbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
£ ¤£¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJCPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©¨§¡¥¨¨«©©¯¡¡££ ¡¤¤§¤©«®¬¥£¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdVOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®ªª«¤¡¢¤©§§©¨£¢¤ ¥¨£ ¡¢©§ ¢¢®¬«ª§®¨¥¤©©©©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPORd\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨¦¥§©§©¨£§¦¤¦¢¡ ¡¡ ¡¤¤¢ ¢¢ ¡ ¢¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOWO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§¬©¤¢ ¢¦¡¦®¦¦¡ ¡¤¡ ¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvwa_\UYQUV[c^s_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;><@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯ªª¬¨¨«°©¨ª¨¡ §©°²¯¬£¢¦¡©¥¤£¢¦ ¥¤¢¥£ ¥¢¢¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\V\hdocniib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶¯³°«±²±£¢ª©§®·¶´´¶³¯¬«®«¶°©²±®§¦¢££¢¨¥¡£¡¤¢§ £ ¢¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxib[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>AE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ª²¸¼¼½»º¿´¯±³µ´··¯µ´µ²°¨¤¢ ¤ª¦¦¡¤£¤«¥¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxyxc[RYT__amhukpgiibYSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°±´µ¶¼¼¾¼¼¾Æº¸·º½´¯µ±±º¸·²³²ª¦¦¤¤§¨¤®¤««µµ®³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YSah`fsositdidb[LK>:8898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÃÆÂù½¿ÀÀ½¿Ä½¼º½¾´§ª±À½¸µ¹À³¯¯ªª¨§§¤¯§ª´¼±´µ¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`a^^jbbnwuvnl[bQU\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAB;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅÆ»ÄÀÅÆÀ¹¯½¼À¾¾³«ª³»¾´µ·Âº¯°µª«¦ª£¤§±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklfnuqruqf^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCCDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÅ¿ÃÂÆÅÀ±¾º¿Ã¶¶º©´³´©«³»»±±¯¬¤¬®´§ª©¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tkkndomhqxoyjia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÃÄø´À·´¼Á¹··¿À»®¥®·¼·£·°¦´µ¬®¥¥£¨¤ ¥ª³²¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{vnkiguZfrwsyfg]d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÃÃÁľ¸¾ÁÃÀľÁÏÏÎÆ«¯¶´µ« §´³®«¸µ³«©£¢©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuueeijg]jomxwcb``^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÏÏÌÃÇÆÈÈÈÈÉÇÅÉÇÈÇ¿ÅÇÄÄÇÈÊÓÏÒ̼¸¶´¸¸Á¾¾º½º¼º¼¬§ª»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqobagugiitmxl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÍÐÎÇÌÉÂÂÉÁÊÊÈÆÌÊÍÅÆÅÃÆÅÉÍÐÍÏÌÇÄÀÃÂÉÍÇÅÁÄÇÁ»¾´±°°Á¾¿ÁÆ¿¾¸·Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlieuotb]bTWTSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<:>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÅÇÈÆÒÉÁÂÿ¿¾ÄËÈÊËǽÔÓÇÈÍÈÃÈÉÉÅÅÃÂÁÂÇÇÉÊÇÌÈÇÈÍÆËÏÅ·ÀÀÀÀ»º½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrpfegdjeajmno^Y\VVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ã¹¸¹»½ÁÇÁÄÍ¿ËÆÅÄÁÄÁÂÁÄÁþ½ÂÀÀÁÂËÃÆÌËÅÈÑ°¾½¸º»¼¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·½Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbabccjbgc[ZZ\YQNE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶¸´´µ¿»½À¹¾ºº´À¸µ¸³®º»¶¿ÑÀλ¿Á¼»Ä¾»ÁÄÀ¾¾¸¼ÁÁ˾½ÉÄÀÀÊÀ±Á¿»¸»¾ºµ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ¾ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qc`bbgjgfiei]VVTYOSKE8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA@C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´µ±°µ·µ»Á¸¾¹¿¼¼·´·°·¶¸ÄË
Ƚ»ÃµºÇ¸¶¹»½¹º¶»ÅÅʽ¹ÅÀ¿¼Á¾¸Æ½ÁÀ¼Å¸¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¡¢¡¡£¢ £ ¢¦zxpmeefoiekhXXNKKKRILHC9=8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿¾¼²¯¬±°·¼·»½ÁĹ·¹¸°º´¹¼Éº
µÄ¾Ç·¹¸·µ¸º´¸³»ÅÆËÁ¼ÆÀÀ¿½¼¿ÉÃÄžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksebm_\THKJDJBCG?9;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼¼À·ª¤®°·¹±½¾»Ä¶¸¥{Å£|
±ËÆÏÂÀ¸®µµ¼¾¸º²¾ÄÄÊÅÁÉÿ¿¾½ÇÌÇÇÄǽµµ¶Á½º»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qelintnxcgb[cQKTHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?A=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼««£°¸ÉÓ¶º¾¼Æ´¢xereU`f}ªÎÎÑÌÊĵºÀÃÈ¿¾µ¿Á¿ÆÆ¿ËÆÿÁ¼ÀÃÌÊÇÅÆÀ¹½¼Ä¿À¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_b^`aNHM?E@?DC;;::;:8;<:9<>9:>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED<AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±³¿ËÈÛ¾½½¼jv`gv^WV\s¨ÌÈÌËÍÊÆÂÄËμ¹½¹¹ÀÿÈÆÄÁÁ¿ÅÀÊÉÃÃÄùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw{_pc[]_^SI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸µ¼µÆqÁÓÀ´}[LoaP|ubV`~©ÆÂÇËÈÁÃÁÀÉÊÂÀ»º°´»½ÀÅÆÅÅ¿À¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²²¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}zmsxsgp][^\YQEDCMIAE=G::59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯·¶²µ³·¹¼»¶»»ÒrµÂXTVbRd
mIr´Â½¿ÆÀ¹À¼¾ÅĽ½¹²°®¸·¿ÃÇÃļ½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸¸¸½¹»±¶²ÈÀ»¶´±°·¬³©°´·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|vluzpni[_`YSPAEHGK@DCH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG>CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹Â×r®vROlZRUZwLn¢´¸¸¸Âº³»·»¾À»»¼®¯®³²¹ÁÂÄþ¼¿»º¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ¯µ´´½º¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsvvwnq`_f]ZTJ<??FF=FCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹ÃÕ}x`Nju]Q]lºµuTW¸µ²±·¾¹²µ²¼¹¼¶º¾²´´´°¸¾ÃÆÄÀ½¿¹³¯²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtvql_ca[]OHA>=HCFMC@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·ÀÊ}XXgq`wrzwnk_½³°¶ºµ´²¬¼¹¸µ¸Áº¸³±¬·¼ÁÇÿ¹ºµ®¥¬³°¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wo{ourmc]fX\]RNMA>IBAJI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸¹Å«xLf Ã}]yluy±ºµ±´µ²´¯¬»º¸¶¹Àö®®ª²¶¼½¹¶²±¤§§£¦©®¹¬««¥¨¤«®®§¯¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmuik][jT]\OMHDFLBFNF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³»· Mhvoyrhikvwx¥¼¸²´³°±°¹¸¶¼¸»¿²²²®±®¹¯ª«¬£¨¡¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬ª¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndT`cW\QNLH@HQDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²·¦¨Xpsmdk_YWX[b_l¹²³¯®¬®¶¶²´µ¯ª¤¨¨ ¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨««¦¢£¦¢ ¥£¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vybwln\QhTPNGPMLBOQ@>;>39:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¥¬©°À±³|xvrteWVOIIKNOO\kp¦µª²´®ª«¯°²³®¥ ¢ ¤¥¨¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥¨ £ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uu}mk{dhUQcMJHGORNJNG<E@=2?759;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡©¡¦ÇĦafir`ROJpUVJOJLT^]·¯¯³µª§¬«¢ ¢¢¥¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¤¡¯¨®²«¥ªª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}vx|dyy`bRU`IIJKSTIRPL9?B67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥»¼}oijaTJWpzYLFGNTTh®²°°¸¬¦¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§ £±®²±´ª²¯¢¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|uvshle[SZYMQJOOULSLA7>B68=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢©«}k]TMM\ÄË©oYLECGMa°¬¯§¢ ¡¤¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¾°¬±®©ª´±°¨«¨²µ·³¸²´¤ ¥¬¡¡¢ ¤¡ ¤¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xuiwu]lZR`HRUHFUVJBLG=KH8E<67;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¡£o_URQUiÀãÒ´oYJET«ª©¤¦ ¨¥±ª§®£«¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼·½³³µ¢¬¢©¨²©«¨§¨ª§ § §¨¥¤ª¡¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vqmivmhm\X[BWNJGMGCFM<>L=4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·¤°¦£¢wYRQTVhÀ̳±È°¹Å¢©©ª¥¡¢
¡«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶º»ÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸³»Æüü·³©³ª³´¯³®ª¯£«§¶±¢°¦¡£¯±°¤¥¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¥¦¢¤
{tqkkurphW[QETHDJPH?EA4FH95;=6;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ ¡hPKPQiµº§³àÛÖÛÚÈ´®§££¡ ¥«¥ym ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿ÀþÇÆ·ÃÉÉÂÁƾº´ºº´»·°µ²ªº²®»·¿»ºª·«ª¸º´¼®®¹£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢}zqkdhoxjdZ[FKLEDSLDBE7:?;549978>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¢]LGNX~À¸¤ÕäÛÑÄ´¦wsqnp¦®´¹Å»ÍÇË¿ÂÌÎÍÌÇÉÑÌÍÌÇÉÅÆÌÑÒÕÎÓɽÀ¿Ã»ÆÅÈÅÒÔÍÓÐÓÓÌÊÂÆÆÇÊÈοÈÑÌÇÅÇÅÁ¼ÃÁ¾¿¾µ¾³®¿¿ÂÃÇÄÇÄ®¿¸²¸¼ÃÁÁº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLCEPIDC@5558:B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £aJJNfº×Ó¿¯ÀÔ˹®¨¢yrroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÖØÒ×ÍÆÇÉÌÃÅÊÏÊÓ×Ñ×ÒÕÖÓÓÈÌÇÌÍÉÒÍÎÓÍÅÈÉÊÁÆËÇÈÉƿó³ÈÄËÊËÏÆÊ¿¾¿½ÁÇÄÌÌÈɿÿ¯³¨¢ª£¦©¬¤¥¦
zruvgcgvidVWQDMF@IQB=B<:22@<D<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<A?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢ ¤u]gm¼ØÜÚÖ˺²ª£¡¥ |wpkebhqoq{
vpnqtp
³Â¾ÅÑÐÖÖÖÒÖÍÔÖ×ÔÓÑÓÔÔÓÏÑÃÐÓÖØÕÖÒËÉÎÑËÆÍÒÊÒÖÖÙÕ×ÓÖØÎÒÊÏÑÌÎÐÌÒÏ¿ÈÇÊÃÌÌÌÎÏÅÆǶ¿Ê¿ÑÍËÏÆÉÈ¿ÃÃÈÎÌÏÐÏÍÊÇ͸·»¨¥«§£ª¥©¨¨|xsvpc`erb]R\IJGAEHI>;A8=4585;86:<@>;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¤¥£¬³ÒÕÚÚϼ®¨ ¡¢wic`____^_`^blusqpolrquÄÇÆÔÕ×××ÓÖÏÕÔÚÔÔÎÏÕÔÔÑÑÌÑÍÔ×ÖÓÕÐÏÒÓÑÉÓÑÈÐØ×ØÑØÒ×ÙÕÖÌÏÏÊÍÒËÎÐÀÆÂÇÅÎÍÑÑÑÈÌÍÀÊÌÅÓÎËÎÈÄÊÇÆÈÌÊÓÓÑÕÏÒÌÓÁ¹Å±¥¨µ®§¨¬¥²¨°³¬¬
|zqstmacim_VP_JJCFCRM?<>54:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¦®·¨«·×ÔÕÙÙÑÎп¼Ìɶ¾®¦ª¨¡¥ÇØÓÖ¦¡ }qecc__a__a`_``_`fnppnkorwwÌÁÒÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÒÊÏÌÓÖÒÑÖÍÏÕÕÑÆÑÔÊÑÔÕÖÎÒÐØØØ×ËÈÎÄÉÏÌÊÌÀÉ¿ÇÉÍÎÏËÐÍÎÌÎÏÈËÐÐÊÎÊÂÉÇÉÌÊËÑÒÌÓÑÑÏÐʽȹ°®»¸µª¶°¨¸³¿»±
zvopokadnpaW\ZIFFDMWE;@=33<=87855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÀ°©¬©§lÓÖÍ°k^^^adb``aa``a^__^]bmroostvvy¤¾ËÕÑÖÔÓØÖÎÎÔËÍÎÅÎÊÒÒÏÇÎÍÍÔÌÎÓÍË×ÖÐÌÑÔËÌÐÒÓÊÎÑÕÒÕÕÊÀÉÁÅÌÂÈÉÂÌÃÅÈÊÊÏÊÍÌÐÍÓËÆÈÏÍÈÇËÅÆÁÅÊÌÍÏÑÆÐÎÍÍÌÏÅÇÁ¸¹½Ãýù³²¾±»Ãĵª¥¢
ypqkmg``phXXhVLFLIPPB;C>;67:89:57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±Ç¸ËÕÕÙÚÛØÌÌÏÈÖÕĵ¯´¨ ªho}§ÙЪ|eabb`]^acb`_``aa`_][]grqqrsqmry¤ÆÓÏËÐÏÔÕÉÅÉÉÆÆ¿ÃÆÏÎÇÅÇÍÊÒÈËÎÍÆÑÒÐÎÌÔÊÇËÎÏÇÇÏÒËÐÏźĿÆɽÂÇÉÎÅÂÈÀÇÍÈÄÌÊËÏÈÄÄÐÈÆÂÆÈľÀÇÌÌËÎÂËËÈÇËÐÄÅÈ»ÇÃÉÈÂÏÁ½¼¿°ÁÉǹ½ª°²§¥¢£wotdk`^fpa[W`GHHGIMTG?J=64355=<48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼ºÍÍÆÐÕÕÙÚÛØÐÉÏÏÑÓȶ»»¥¢_ox¹Ð«~
s`[^^^`^`cdc_]]^_``_[Z\akrrookloo}¸ÑÈÉÊÏËÍĺÀû»ºº¾ÉÆÂÃÀÃÈÊÉÈÊÈÁÅÌÆÈËÍÉÄÂËÉÁÂÌÐÅËÈ¿¹Á»ÆǾ¿ÆÏËÿûÉÇÈ»ÈÆÅÊÀ½ÂËÆÅľƼ¼ÀÃÅÌÅÅ»ÀÊÂÅÇÒÅÁÉ¿ÊÉÆÈÆÐÃÃÆïÄËÇÃÊ·¿¼º´©¬¤¥¬£¡¥£ {vstfiZanlZ[XRDLFBGDLDFS@54334?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÃ¾²²_r¾°{
vxurp_[[]``bcdded`\\]]_^`[YZ\borokilposƼÉÅÌÀƱ¶º²²³²±Â¼¼¼º¸ÁÁž½¹½¿¹ÄÊÅƽÆÀ¸»ÄÉ¿ÂÉ»·»ºÅÿ¼ÁÍÃƽ½µÁ½Ãº½Æ»Âº³¼ÅÄÁ¶¿¶µ½¿»ÌüµºÈº¿¾ËÄÁÆÂÆÉÆÈÆÐÆÂÌDzÇÉÃÎÍÁÅÃÀ½³·°²§¨¨¹°¥°ª¬yvwjdg`hocV^YJFJFHJAEBEI@9:648853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÅÂÄÈÎÑÊÊÊÇÍÍÎÑÈÐÆÕÔÖ×ÍÊÏÅÉÅÇÁ¹Å½«¯cuµ
y~|ttc[\]^``bcabeeb]][\^\^]Z[]]hsqmggnpry½ÌÀúÁ¸®°°§ª¬§¸µ·´³³´¼¶½±·°µ¯²»Â¼Áļ¿ºµ³º¾À¸Ç¹´»¶Á¼¸½ÆÁûµ®²¶º¿´Ä·»µ«¸½½À½±º¶¯¶º³Å¼·®»¿µ·´Å¼¾ÃÅÀÃÅÆÈËÅÀÆÆ»ÈË¿ÏÊÇÃÆÂ÷ý½¶¹¾Ç¿¬µºµ·¶ytxfgebkn^V^`FKHHJFBDAEE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐÌÍÈÊÈÊÉÊÄÏÍÒÏÍÅÇÁÅÀ¾º¸É¶ª°kr{y~wx}ti^]]]_`_`da^cec__\[^\]^Z[[]_lpnhfjnnr|¤Ç¿¸¸µ°«¬§¢ª§«³©¬©´¯·°²©®¦¬²¼º¶Ã¹ºº±«µ¹»´Âº°À±¾¼»¶»Ç¹Â¶ª¨°±À¶¸½°°§²³µ»¼«®µ¥®µ®»²°©¹°»®»¸»ÀÀ½¹Â¿ÇÃÅÁ¼ÆÂÈ˸ÅÇÅ¿ÆÃúÄÆ»ÆÉÌ˳¹Â¼»³svvkiablhYWW[ALKMIEAC?FA:9:995854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÅÏÇÍÁÃÆ¿ÄÄÃÃÊÂÉʾ¿¼Àº²´´Ã®©®kd|x~
z{wn^]\]]_`__dcbccb`_^[[ZZ]ZZZZ\dnohggiknr¹°µ®¦¥§§ ¥¡¥«®¤¨¢¬ª¬ª¯£¦ªµ¶±½¹¯·¯©®¸´´¼¸´¼¯·¹µ²»Á²À®¥©¢«±²´¨½ª«¨«¬´³¦¨®¡¤¯©²¦§¨®¦¨·¬±²·ºº»²¼½¾¾Ä¿µÂÁÇÈ·¿ÀÄ·Ä¿»¿Ä¾ÄÈÌÊ¿¾ÄÀÀ©strji]aodWVXPHYRSKFFE>>@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃȺºËÁ˾»É¶½Ã¾ºÊ·ÁÃÁ´µ»µ°®´»¨§`m{~~xt|swe_]\\^_`^_ccab``_^]\ZXZ[[YXZ\_fkfegeikor
ª¥¬¥ ¢¥¥¡£ª¤¢¥¥§¥ ¥¦¬²¯¶·§°«¨ª´«´º±¶µ®¶¹±¯ºº±¶¤ ¤¦±¨«¨¹ª¤§¨¨§² §¦¤¦¬§¤ ±¬²´²´°µ¼¶»ÁÁ²º¾ÃÁ²¹¹Ã³À½¿µ¸»½¾¼ÂÇÄÂþÀÄ xpkaf_ko`TY^HNgOTGEJF<=?=:;;825536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:7676788666;::;9:;<859<:>>@;ȵµ½¸ºÀº½µ ¡¦º¶«³³»³ÄÏÉËÂƸ·ÇÁÌ¿¸É·»Å¸³Ä¸´¾À«µ»±«¤®²¬¡a|yutomkjjqi^`]\\\^__acb````]\[\\XYXXXVX[^_dcbegggjmo© ¢£¡£§£¥¢¨¢«°¬±¶£©ªª¬¬¤´¹·°¬³µ®²µ®°ª¤¢²¥¦©¸¢¦¦¨¬« ¥£¯©«§ª«¬±²¸¯¸¹»°¶¼¼º«³³¹³½´¶±±µ´¿¶½À½ÃÁ»»½{sk_e^ddXTW]IW\KPGIIFA<??@;?<04535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÏÈÈÀÆ»»ÄÃϾ¹Ç¸·¾·²Á´±»»«¸¹°¡¨ª¦
f
xrnpnkb^bff]]^]]]\]_aabccba_\[[ZZYXXWWXXXXZ^bddeffhikr§¢£¢¨¥¦¢¦ ®®®² ¥¢®¬§¢µ±²²¬¨¯²§º³¦µ ¢£¢£¢ªµª¢£¦¦¦£ ¬¡«§£¤¦«³´ªµ°³«²¹´¯©¯²²³·³®©¬®²¸°º¶º½¿·³±
yue^e^[YVSZUK[QKIEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ·½¿¶¾¼¿²¥£¥±Âµ¶½´¸ÂÌÈÆÀŶÁ¿ÇηÀĽ³¹¹²¿¶±¸º¬±´£¨zixoqtqifdiec\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWVWadecdeddhjv¢ ¡¡¡¢©¤©«§¯°ª£¤¸ª¡ ®¨¶ª¦§°¤·°¤· ¢ª¦¡¬¸°¢¡¤¢¡©©£¡£ªª°®¨´«ª§³°¥«®²±°°®¯¦§§²®±´°¼´¹·®£yud^aVYWSRTKM^LOKGGLLE<@><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾¸½®§¨£ª»À½À¹®´¸ÁÌÇÅÂýŷÈ̲ÁÂÁ®¼»µ»¼µ¸¹¯¯¯§§rz|wqilrtpihedfb\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[bccbcbcdfj ¡ ¦¥¤¦§¦ ª¯¦¢¤·¨¡¡¢¨´¢¥¨¥°¥°«´ ª¡¢±±¢£¡¦§¡¢£¥¥«¤¥°§¥£««¦¨®¯®«¨ª©³¥¦¬¯´±¯¼µ±¯® zvrda\Z]XNLRHRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8847863321./2556;:8;7876<;:;;A8x»»±µ½°»±¸¬¥§·»¼Áź±¹µÄÉÉÀÃÆÆǶÆij¿ū··½¶½»ºµ²««¥¡q{~vncafihfgjgjm`]\[ZZZZ\]\[\^_\ZY[ZYZ[WUXWTTVUSTRU``_`a_`acdi¤ ¥¢¦¤¤££¢ª«¥¥±ª ¡¥«§¢¬©©¬¡¢¢£«©°¢¡¢¤ ¡ ¢¤¦£«¥¢¤ª¤«®¥²©¦¥¦¦´¦©¨³µ´¹º¯©¬rpo`[WVURGQOHZ[ORJTKSLEFIC8;;=<8667:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:8698598989;9@9{µ´´»²°«²¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÊÌȵɽ±¾Äɬ±¸Áµ»À»´³¨©¤~p{tiijlgjkmkjme]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\]]^___bdm£ ¨©«¨¬§¨¥¤¥®¤¥¯© ®«³ ¥¦¢£¡©ª¡ ¡ ££¡£¡¢¨£¢¨« «¯£·¥££¢¬ª¨«¯³·³¾µ³«¯tsh[XXRUQEXLQ[XMTNPLPQINIB<??A?<65799<<987:79:;<=>;7;;:=67:;8976989:6:=99577571141-+/434988::8::748=8?9~³¨³¶®©§¯®©¨¬·¶¬¼Ê»¶¿¬ËÆŸÁÎÏȳĻ·»Ãȱ¸¿·¼½º²³£§
xsvwnmhmnmpggigd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNPQYZZZ]]\^_`d~¢ ¬ª¦®¬¨¯¤¨¬ ¤¨§®¨ª¥ §«¥ ¡£¡¢¥¥§¨¨ ±°¦±¼§£¬´«®§°µ°¹µÀ±±«}rsbVSVNRIFVPRQLLWMJLNRGMJACFDC>@65889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8³¬¦±·ª¦¢°«ª§©²±¥¶Æ´¹º³ÊŹºÁËÐ˱¶¸¼¾Áñ°²·´³º²±¡¡~vkglnqnqjpkdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajzv© ª¦¥«¨¡¥£
££¢¤§ ¢¢¦¤¦¨¦¡´²¨²·¡¢·¬ª¤²²¦µ¼¶¬«±£xsm]NQQLOCMNNPKFNNJJNMQIMJAGLHGC=858889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12876:999984988A7w¶§¤¶±¥§£©¥ ¨¥¤³ª¢²Ãµµ²³ÆÆ·ºÃÊÌƳ¬º½´·À¯©°¦¹®«
zm__frpvqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXYX[]aosvq
¡£¡£¥¢s~{£
~~ty¢£ ¡¤¤¢´¯¬¯¬¥¸¦¦±¡±®°¼ª©¯ªwscVMROPMCSNLQMBPQHINRMHJJCJLFKK<749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-12764789::65:87A7x·¡£´©¦¥¨£¦¥¦¦¦³§¦´Á¸°´°ÉÄ·¹ÁΞ³¬ºÁ«Ã¨¢¦¦µ«¡|v}eWV_gfighncjhgb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTRMMJHNSSSTUUWY[]ilrm
|tNXr_;Wo|s
yz
}xqo
}¡ §¯©¨¨³¢¦®¬«¨´¢©£}rn`[NSRVLDTJPMLFNOIELQMKOJIMOFII<7599999:7:;:>>8:==7:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· £¡¦¦ª §©§£©°¨§´Á¹±µ°Ç·³½Ï¿¹¯®µÂ§ªÅ©£® {rt\QLRUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`mpi{tPB@}y`JQnx}
n~wuuwpQ{~xvhw~¤£¨©¥¤°ª¡¤¤¦ª¢ª¢¦¨tmg^[HQQRMIUMSILKOIHFJNLMTKQPOFIC<768:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')+*,4833979:99::::?9w¶£§¢¯¡§¨¥§¨¯ªµ¼¶¸·³Á»¶§¹È¸¶¨¨µ¶ª²¼¦§}|vomXMKMNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZntw~ji]Ut|
{vxsnuptz~«
yzhv{prmxxz{vrrwgu{|© ©¥§¤¡¤rh`\\JVORGJXROJLMRJJJLPILQLRTLEHA<77;99>=:;<98@?::>=7==79947795676252572/2.,//200/-+(().1272198798775:<;7v®£¢´©¯©¥¬°±ª½´²»¸¶º´±·º²ª¬©¨²¯¡~v
x{uonhXKHHHGEHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQQSV^u}ygw}hyvx}q|w{ok~}s{}tfv|lohs|lyq}pmuqiq~pC
wwz
~{u~£¢¥vnmebZWWTQJSUTOPNPVKNKNOJQNHNOKEC<;79;::?=9<:99??;8<=7<9999266856633621224.,,-..-0-+*''*.1362/876966527995y¦ ¦¯¬®«¨©°¯±«¼¸¬»¾¹³¬§°§¬¥©¤ zvq}ntpiliWKFGEA@CDILLMQRPQSUTTUVWWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNPQTX^eprm§ªÀ~uyc|xo|yz}omytxjjq~Inhw~licly
ksl|nr{impsz}~{vots
yxp|~mhmnnWUWTRQYORTTSXUMNHNKMNKCHNGE?;99;99:><9<;::=>:8:<9?868727575541442/024*+**-.+-*(*(',-1250,5567485HA895w¥°¢¬ª¨µ¯®¬´¿«¼Â¿¦¢¤¡¡sz
uoulpldkjXNEFC@<>>AFFGKKKMPRRRTUTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORWZRY\`§bitzepmzvtlts|jkMy
g1vsl~~tfet~
filukq|gqq{n{s}|qpnumxyujyyvjjngdWQZWYY[MPUVYXNIHEJJHGBAFDCG=998;9:9<:9;:::@<9:<98>787715244533645031.**+),,++)(+'),,226,,5775478iO8;5n¤¨®²¦º¯«²°Â±»ÃÇ
yqt
ypsqnodpf_TFIC?<;9:?@ADDEGJLOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQVLAIQIb¯³ r|xl}mr
zyr¡txsu5q¨¡¡¢
vp||sgfbjnrmpuioXupwl{}mqmpzsvncv~
ux~~zqpok_Z\][YX`_RN[ZXWLHJFJG?CABG>CD=;97=;:;;9:99;:?<88=:8;66651121353475531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥µª®±®Á²»ÁÆ}n
ul{uxxlwnwci^IPG>@7449;;<=>@BEHLLLLNPQRUUVWXYXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~mw|~
~v¢y~
aªzw~sz]dqtz{wlgjbyo
znwtzptzwkni^w}|
}q|uw{}uorsef_[[]S[f^WQUX[UGJKEKG?F@DC>AA=:97<;;=<::99;;=>79>9986754244004645654-,)+('''&(())((+++/00Ur=23331E~W4=9\x¦ « ±¨¯À±ºÅºz
vk}xs¡}}p~zgvkRWL@E211367688:<>BEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJi{y|q|z}~v¡¥¬©H®¯¯¨sm|}hghx~n
q
Gkwryvhmk_w}
zzuv|wmow~srqjZ]\[ccXfe\UPPVYPDLKFNICFCCA@CA=988:::;;:888::?>6;>7585773344236656768;DFLMMLC7+"&'+)++,/00+nu22420L\5=<^t|~
¡¬¡¦¸¯³¼³}tp~}}~¤
x~sx_cVKB60./23133668:=?@BEGHJLNQSTUTTVUSQOGC?80,#[>?84.]ps£UFIKMNPW`YpZ\^j
~
¡¥»±§»Çè¡¥{rv
jhouqw{v
}nvug¡«¡{zzogkx~x}qjc]ZZ]i\af_YOKNWRQIPJDNGCKDC@DDA<:87=<:<:88778:==8<=68656623445576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfx{¤¡¬¦«¯°¡xw|lpj]BA4--//./02234779;=?BDHJOQRSRSTTRPOHDB<87/9D><<63.lMPHJLKKNV`cggmu £ª¥£¬¨¶¢¨Áîǯxº|¡
¢
lpuvql
r¡¥µ©¢}kjk|ra\b^Yfj\kk^WKGOSQNMLFIPCDNFBCEGB>:97=<:;:987767;:6=:785456345566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYppuqv~§ ªge¤~y}
xxgMR>/..,/.-/000212557;?CFNPRTPQRSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} ¨¦¢¡¢¨©«¨¬©ªµ«¿«¶ÈÈ·ÉÑϾ pi«©
¡§¢wz~¡{v«³ }¤¢¦¶°¨lss|~zpg`[_^afc`gg\QEJKPOIJLFFMCHLFFCBGDA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppu`n}aw}|ªªBD}x{
w_bP460-1/,.00./..0015>AAMQRSPRSUSNSLEE@<>=GG@A@8662<9;FHGIIMOQYmw£§ª´½¸¥®¬¬§¨´¬°·²²»±³¾³Ä¬»É˸Ŀ¸¥£°²¬«¤
¦¦ ¢¦¢ª¨¤
¤¡ ª¡¤©±£§·» £°££¤¢«¯³µ¢¥«z{~}f_g[da]cc^ff^[OCIHTOFHLFJGEFHAKFCFFA;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicWjpXz
v
ÚÈsV|z
qna@E64<2/110-,+-1/-4?DAMUQRSUUWUN[PGGD<>>FHCD@8;<5C;=FKIGHROPW ®£³ª²ÁÇë³Æ¶¬³À³¹¾¶¿´Á¶»»¤¸Æ©¶ÉǶ¾¹´¨£´±±§¯«¤v¤¡«±³ª¨®¶»²º¬¯µ¢±¬±µ¼·µ®µ §¨£¨©°²º¸¸§·©¥ ytX`cUea`b_`e_ZUJDELUQHJJDIGEA@@KDAMF<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AEWQJL[ZQcdWzuq}
v
~{¿»£¼´y
zxn]V@EM<6:46AB7650/6CHCQ[OQUWU\WP_UIKJA@?GKFED;>@7D7?BJJEGWTP^¥£±´Ã¶¸ÁÌɶ¼Å½³³À·¸Âµ¿°¸t²´¦ºÅ¤°Æ¹±³±´¨¤µ¶ª± ¢¢¥±®¦¬§¤ ¬³º¢©²ºµ»¾Ì¿ÅŽ½³Â·º¸¿·º·¹¬°¦±ª¾°½»Â¬º¨®«~ziVa`WidhdVZcYVTIGGLQGCHIAHD>?BBK@@MC99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FQLALRWTYUZwjp
nzryb¸¡£{z||}wyueO\dGEL:Qda[^SF?;HPDZdQQYXYgZT``MSOEA?IJHEFA@C=E6B>HGKLSZT]¯¸µº¹ÉÀ»½ÉÌ»½À¼·µ¼»·¾µº²Æ`u³¥±«½ª¥¨«ª£¢²µ¡«§®¥§§¥¤¢§°³§²²¼¶Á½ÓÉÊÓÆÂÅÌÂÊÃÀ¾½¿¼¼·´°¹··ÃºÆ½ÃÉ°¹ª¢¬¥¨·~q^aa\Va^geRXaVRUIEENKA>GD=KB=B@=F>;H@796379>489:57045/26389374526?8@>GKRTTRPPQRQJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRLQ]hllq
slsrsÕÀµ }xz{yt}zkepuY]\Peeb`ed][XW\MdmURmm^o_XgeUYTJDAKKHFHHHHBI9D?HKTTV\Z[¹À¹½·ÆÀ»¹Ê˺¶º¶¸¹³¸µ´®¶¶du¨p^¢¬¡£¤«¥¨¥¤¬¤ª°·°½¹ÔÑÏ×ÏÉÌÒÌÏÎÊÇÀ¿ÂʽÁ½ÂÀÅÄÆÊ¿ÈÏ´¤»°µ°¬¹½~xk\_\Y]aYbbQ[`SQKCBEFE<@E>BHB@C=:E>=J?47535;=468977022/24169775555D3ELM>510006:477@IOJ;-&**(-./,@M+/54mI0Ht?>BD@CDFKODR\Yi_pnlouu³¬¡¡
~|s{|ts{xlmu{hreilifjih`fihmZmt¤¼g[oh]ZYTHJNPJKQLTQILAJGKP__bfia·Ç°¹³»¾¶²ÄǶ°¹±°»¬³±§ª·¬¶§§O ¦¥¡¦¬¯¨¯§³´ÔÔÕÖÒËÏÓÕÎÓÏÍÅÂÊпÊÉËÉÒÈÍÍÂÐÒ¸°Ä¼Äº¦¶»Ä¢mb[\]X`WYeYP\WNQCBHEBH;AD>AH??B7;D>@H=46655;:687654/10146278875367C5B8?-0,1349=97,.,1;FL=),(.0007K?-46TW0DwC;B>EBACJM?UYSeWshqoyy ª¦}
|p{r}qxulqx~q{mxslhpmcimpyiw}~Ë¿Âߧmcxnc[a`JPRUNY^P]]NQNTQUT\nnwr®¸¬´§°¶«½À±«µ¦¥¸§¬®¡¬´£±®¦«¬¤§¡¬¬ÎÒÕÑÍÌÒÓÔÐÔÑÎÈÃÔÑÈÍÒÓÓ×ÍÒÑÅÒÖÆÀÎÇÈ鿸Ðxmd\a\V_R]ZNOSPNH>AFBBE<@B?EE>??:===<JA45465<888664412/03526768533;=<E=@11+/349?5901022-2EO3)/3.32=N248C}_2AtD:==I>@CFH<VRMO[u
wmwp}~¡¡y
{r~z
u
ovsls|{v|swqjrrioqzyr{¾Ë~±vrvhaj]CZZ[VfdXekTX]\`c]cx{ª¤¤¡ ¡©¦ª±¹ª¦´£¢¢£¢§±¦k¢
~¬
§°¡ ¤¤¨ÇÍÏÈÂËÐÓÑÔÒÎÓÍÆÖÓÍÔØÖÖØÕ×ÕÉÔÚÍÉ×ÖÑÊÄÃËqnb__WSYR[OJGIIJ@;:;EBD<BD>HB?BB;;9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/-.;R017/532ED28>nb5=tM99@I<AD?A;PLFKYpu}hsyr
w~xs{}w{nwpmuvx}s
|ylvto}vuy{µ<AÆ¥~|ieVICecfchjdoy[_fhknin ££¦²¤¤³ ¢¥¡© ¢±~
z~©£}«³§§½ÃƸ¶ÆÍÒÐÒÐÌÒËÉÔÏÑÕÚ××ØÔÙØÍØÛÎÉÚÚÒÖ¿ÌÌ´vumc\YRUPYVEFJIEE=:7:@AC:GE@ECADA;?;;7DC75655;0689443341014558754449@>DBC<33.6FTWOQJAJF?1*(.BT29254/7K75<`bA<svV87AH:?C><9QECJTlnopaqqs|~
|x
zyqz{uz
zp|opzr|qnzuw}|u|°tX©Â¶pnb=^hrpqpnxweioruxr{ ª¡¢¥¬
}
~my{®«¦®¶½¨½ÆËÈÉËËÏÉÄÒÊÔÖØ×Ø×ÔÛ×ÓÙÛÖÐÛÚÑÖÈÕÌxzhgZYORS]HBEII>A>=7:=?;>H=@AAADA>>:87DB755479.566435542323646553457EBDCEB56<FNSM[nfcnsk`V>,4LG865433BF4=W_hLux^8;?F<<B<:9D?CGRk_mdbfkvqy~
||~wyn{{tz¡vutu}toot|
zv{·Æ¤ÂÉ·xpeNeczw¢yyw{|vm¦ £«
{|¡¼¡¨¦¥®§µ¾ÀÀ¹ÇÉÍÎÅÍÊÑÖÕÔÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÛÆ
yxehc_SVVUMKDMC;==<9:<>9>A6>?@<?><9867CA6455=80665547745613855564557HH=DJE7925;H>;::7HP\ZRUXK9T>;95327I8=NYMHxxd5=>C=<@:6:>>@EQ_Yea][htzylwvz|~}
z~
z
{u}tn|}~t|}x}xnt
~
|~z©Ã »£}}r~s¦
{hGq¡¤
¡~¦
¤¸¡§ £®¶ºµ«¿ÅÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Ü·wwviidV_ZSONHDLB==>99;:99<=6@>><=9:;;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8589?=DRSRX^UXfmmmiqrx{{}|z|{~uyszsm~}w n¨
z |~£¢£®
Wr¬\¢££
¤
³¡¡§±¸¬¥¼ÁÇÍÇÆÏÌÏÌÏ×ÏÑÔ®ÖÕØÚÙÚÚ×ÖÙÙn{sfe[\WRVWC@ID>?>:49:;7:;:3;;?=>7;9:1:G=:27=@50677255?65;55858:57735HR7GOK994=EJB>1FCLA98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:<@;BQKKSYPTcbxmb~nmwxy~z}|{vsp
{vvut
}~¦£¥¢¨r²¦¢ ¡¨¯n·ÄȲ¢¥²c¤ÍÈ
ª¤£
¤¨¡¢²´¥£¼Á¾ÇÅÅÉÈÉÂÊÓÌÍÔ¨ÒÑÖÖÖØÚÔÓÚÎq~gb]]\NITYABGD;A=837;<:8=649:<:82?9929I:>67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF>;88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBcFv}|m~xz~z~vv|lnz|xx|~£³§£ª³¡§¥£®¢¸²¡¡¤¯£¤§§¬¯¤ À£É¹«£¦²
¨¢
t²¥¡} ±®¢¤·¾´ÅÇĽÃÿÆÍÊÉÒ¦ÎÍÓÒÐÖØÓÐغqxu\_T_UOHJNDBCE5>:77:?;<7=42669774=5;5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=88567=:JFDGN[\YJf`;Hz{n
z|x
~px|~}orz}|x§»¬¨²½¯¤²³¨£¢°¬´¢¸¤¤©·¦¤£©©£¯°© »»®Ê¡j¶¸«°£«½£^ª²|}´«¡¡ ¥¯¨¡¤³¸«ÂÈĵº½»ÅÇÇÂÑ ÆÉÍÍÄ×ÖÑËÔ¡oyg[YS^POEC><CAB8?875?F<<5<35355454B39:BM:B;AHB;:@<746<B9?@B874:96>=47TKCUQJ7<:IAE@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPdGb`bpJ@s}um}}|pww{ªÂÀ¯½Æ»³³À¼´«³¶§²½ª»¤¨¹¸«¦¦¡¢££¨¯²±ª¤¢¦¥¤º®©À¼²¹¦¤§~½°z¨±¬ £¬ ¡§¦¤¢¤°³§ÁÆï°º¶ÅÄ¿ͦÇÄÇüÕÑÍÄÊrr`ZY^ZLJBL@FG>A?B;:4>A<=5=6>333242A17@BN>G@CNCA=C=;86CB5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\eG`igZ]\{uo~{q~zz§³ÆÉ¿ÂÌÁùǼº¯«¹º²¶º²À®¥À¤«¯»¼ª«££§ª®´°ª ª¡°´§£ºº¶Á¼¬¨³¥¤©
©ÄĤz¡ ¦ ®ª¡ ²¡¤ ¥£¦¦¤¯®¥¿Ä®¨·µÉþ¶Ï²Ä¿Ä¼³ÑÉȵswk[W[iQLHDLJKJAA=CD<5AD;:3=8B332262A05IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBfZNe\fTcjyr|xz¡¨º½ÇÈÉÁÒÉÊÂͼÁ³»¾§º¿¾¼Ä·¬Á©¬³»¾ª°©¤¥£«³¶µ ®¥¢£³½©¨½Á£··°«±«¬©§¥¥vz
££©¥|£ ¢µ¥¤£¢¥¦¤£¨§¢²¬¨¼À沈·ÌÀ¹¯Ä³»¿Â¸ÂÃÂÀlx`WVZZJKMJFDDHBBADL:4DH9;4<7E.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQG7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>jH_XaZddV x
¡®¦£Â¾ÇÃÇÅÓÍÎÍ˻·°¹¼³¼Ë¼ÃÁµ¶»³¿¹¼®¯¨ ¨§¶©²·¬¢§¡«·¸©¤°¿Ä±¾¹³§ªµ´®®¥¬¨ ±Å§}}ª¥¡£¢Z¤e£²¤¡¬¬ª§¦ £¨¥¶«©¹»Ã´¥³µËÀ¸ª¶¬²»¸®¨¸º½¸kmYVTTMEJSNK?BHEDHGG95FM;>7=@J.32025B55PVN<LFKRLOHGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|gV;=@BFBqFiIRebLF¥¡©¦¢¯¾®¡Æ¼ÅÄÆÆÎÎÎÒʾ»¶±º»»¾Ï¶Ä½¸¸·²±µ³¸³«¦««¹ª¨§¯¯£®¤§¤¤µÀ°«¬´¿ÃºÀº³§¹µ¸³¯¥®®¥¡tÁ~
±¥£ ©¡ `J¥T°®¤¯®«¥ ¥¦¢´©ª³¼»»ª°²Ç¿¹¦¬¬±±£¡²²´¤ole[YNOKEOPPQ;HJHGICC>:KU?A:=EM07544:B34NWO<JKNUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@BAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}hW;:BC@=QEWSsbWFHª ¢¨¯§
¡£¤µÈ´©ÆºÂÃÇÊÈÇÌÍƾ»³®¹¸ÀÁ̵ǺÁ¸µº°¯¯³´¦£ª´´©¨¦¬¤¥¤¨¬º¿¨«¶·¾Á¿¾¹³²Ä²¹½¬£®µ¬¹¦¦v¿
¯¡¡©¨ ª¡§nv¢¢®²¢ª¨ªª££¥¨¢±§©«º¶½³²¾¹· £§¨¥§©©bd_^QJLFHNIUL=MDNJKBCD<QU=AABDO18=77?B75UXN?HNQYSPQUKQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=..R`MUHe^HE«¡»¯««¢£££¶Æ½´ÁºÂÂÇÈÅÂÍÈÁ½¹²¯¹´ÀÂʵűÁ¼´ºª¨¬°¢£ª´»¥©¦¬ª¨¯§£ªª¾¼§¼´¸½Ç¼·µ·Á±¾À´©µ·«¿¥£¢ ¼ ·©¥£¡¨¥³¡¦¨ª¥¢¢ ´¯¥¤¯«««¤£¨ ©¤¡¡´´ºµ¨µ²³£¥ª¡v^[_]JHFGMQIMEFGBRLJBEG@VRDH=AGQ1;B7:BF79\YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:g\FCCpbGE§¤Ã¥©ª§¦¡«¶Ä»¾·ÁÂÀÇľÍÆ»½¹²¯¸³¿Âȵ¿¯»¶¸¶¦¤ª« «ªÄ¢¥¨«¦«¯¬¡¨¨¿·¦¾±¸¶Ç¶µ¹¸¿²¿Á·´³´¯¾££® ¢¢¥££½¤©¨« ¦½¢£¢©«¡
¤¡µ¬¥±§¯§© ¥¤«±µ±ª¥ª¬ ¨gbX`]NHGJNKHEDIA>PH@<GIH[ROK=HOU4BF9>HG5Ca[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,/Mv\4KZ5,MnW<-=)#zbQ5CKQ:nRF<KxebWL¢£Å¬¡¬® £¥ ¦©«¶±£ª³µÄĽ¿¶¿Â»È¾Êȶ¸µµ°³³·Áƶ¾°¸´¸µ¦¬ª«¥¤Á¥ ª¤©¬¯¢¦§½µ¥±¼¹·¶Ã²³·¹¿²ÄÀ¸¸®³µµ£¥¡® ¢©¨«£Â©¬¦¡½¢¥««¬¦¡W¦¡ ¸ª¦µ£²¡ ®¢¤¦®²«©¡¢¥¥¤`dYc`KHJJNFEAFJ>=JB99JKN]QQI=LV\9FI=DMI8Hb\LCLPSYYVWOZ^IA=WQIK?H@5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWrHE6=ue\KN¡Ã¨¥¢´¢²¨«¤ ¤©¬»°¨¬µ±ÈÅÁ³ÂüÆüÄʼ¯°¶°´¯¿Ä´¹±°¹´¬¨°©©¥¡§Â¬±©£°©¤§½¶¦·»½¯·Ã³²ÂÀ²Ç³º·¬´¶®ª¢¦¤¬¢¨«°¯¯»²¦ ©¨¢¤¸ ¡¤¯¯¬¥§¡£§³¦¦³£®¡¡¦¬°¥¦¡
`eZgeJILJRBC@IG;;G?99OMU^RSJ>O^]=HPBLLI9Mc\LELRTY[SUO\bHA?ZQAHAKB7FELKN>;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<v]^?[T^eq@8;HweA4£ 褪²¡£´ª³¬§¢¤²¬®©»²¬°´´ÆÀÄõÀĽÉĵÀÈÁ´«µ¨¯¸¬¿Ä´·®¬¶¹¥«±«ª¦»´¨°´²§ª¹²¨º³·²¹Àª·±Ã½´Æ§¾¯·µ©¨¬¡¦¥¢£¥¯¸®²µ¶ ¨¤¤ ·£¤¦¯²²§«¦¡¨ ¢¯²¢¦®¤«¤©©ª¡§
xch\jjMPMNT=CANC::I?77RO]^RVQAW`\BJSHVKH:Td\NFON[W[RPQX]GAB[PBG>NC9HGHOP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1[bZ33806p[bH05IphVCWFyfC;¤£¡¦¿¦¨¯¯¡©´«¹°«£ª´¶±°¹·°·¸¸Ä½Ãǽ¼ÄÁÆÀ¸ÀÆÀº©¶¤¬»¬À··©¬±º¢°²¥§ª¹© §°ª ¯´³ª©¶¶»¬³³º·¬¸°Ãº¾¿¦Ã«°·®©««¦«¢¢ ¡±¯³«°¹© ¦¡·©¥££°±´«²¨« ¥¢£³°¥ ©¢¨¨¦£}
jhl`lnWPQZTACET@;;HA7:XPd^PVWDY^]MLRN^KJ>Zc^NHPN[UYPKTWZI?DXPDF?N@=IGGQPB=DFBM?:1D?77547?=95E4+75/251.-.,1=*'+=\p=>1.1e[d@1647gY`F(?8l}h[V;{cC=§¢©½¡«°ª£±¸ª¥µ³¬ µ¼®³¸¼º½¶¶À¿ÈĹÄÁÀÀ¸Ä½À·¯¶§«·±»¾¿´¨®±¶«¨§¨§»¤³«¢°°³«©¶´µ½¯±µ¬°´±ÁºÅ·«¼¯±¸¬ª£±¦¥© ¤ ³ª³ªª³§ ¦¤´®§¢®±§³²ª¤¨£¡¨µ© «
¦¥¢
{elrgoq^FYfVDCMXDZ9HB6>]Qh\NY]G[^]NMRXdJJC\b_PLMNXWXPJVVWL=EUJEDAM@AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,,%2+*5K1/'__aU150=`V^8)C3YT\gK6zfL@¤ ¤¬¶¤©¥®®¶ª¯µº§¦°·Å·±·¾Á´´ºÅ¾ÌŹÂÀ¹¾¹Ã·À¹²´«©º¶º¹½´©°µ§¬ª««««½«®±£« °³®¶²¹·ª®®²¨µ¯³»½Ê²ª¶µ±´¯®§¡³ ¨ ¥²£ ¦¯¡¤£¥§³©¡¦²¬ª¶¥®±µ¯¤§«·¢¡«¥¢¡ z
{jmxmu{`EajYIHYZ={JFD6AbTi[M\`J\]ZRSRbaLKE_``QLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`U`/5(C_Q\.*B/JGP[H3cYTKD ±¨±ª¦¤¯®µ©·´¹¤¬³·Êº´ºº¿¾´³·ÃÀÌȼü¶½¿¿·¿¼±½§º¸·¶Á¶ª¬±·¦®«§£°ª¯»¤¬±²§¨£±´°±°µ±¸³©®«²§·¯µ´ÃŶ©µ¶¬°©¨£¶ §± ¤±§ ª©£¦¦¥¸§¢±´¬§²§°¶¬¤ ¬¨©¸¢¥ §£ v{
mpwu{~\Kel\KNc\>b{GI8GgWf\M^bMXYWTXTi]OOHa]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANHf27'GbLV%-B.=ELQ<3rkJCC¥®¥®«§¤°²³ª·±· «µ¹É¸®Á»Â·²±µÂÂÎÅÀÁ½´¼¿¿º¾¼²Ä§©¸°¶¶¿¼®ª³²§±¦¥¯¥²µ¬«±±©¨´º¬³²µ¬´ª¬¨¬©¸±°Ç¿¸¥º°©¥¨°¦¤¤¯¤©¯££¢£¬£ ¢ª¦¦¹¥¬µµ¤ª«¨¬¯¶®££¨ª ¤³¢ §w~
}||psq~}}\Sdo^NYf\FD[G;NmXb[L_bNVWVWTXg^QRLcZ[TKGOTSNGIVS\N;P^IBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Bc;6*HeHJ+:I?3BIS,>k<GHª«¢©±¤©¥³´²´µ²²¡«¼Ìº®À»Ç±´¬´ÂÂÑÅƾÀ²½À¼¿·»Ä§¬·¬³¸»¿¯ª± £§ª¨¤°£ª±ª¯¬°¯°¯«³»§¶°²©²©«¦¥£º¬ª±Â¹µ¬º¨¨¨ª¨±¥©¤£®ª¨¢£¬¥¬¢§©¢¬¦£¬¸±² ©¢ «¯±¬§§©£ §
¤~~
|w~
trquk_Y`ncQsq\K;|F>WtX`ZNc\NUVUWQ\b^SONhXWWKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*35>10485(5/*,.30;),,'%234$,2-860)(1<]J0.JgDF8<B05EKX1@Z>LE¨¡ª³ªª°µ¸µ®«¥ªª½É¼±¾·Â¯±¬³ÄÃÎÎþ¿³ÀÂúÀ³Èë®·²¸¿¾²«¤§ª°©§¨±¦´®ª°®±°´´»¤·²«¬®§« ¢¯·ªªº¶¥¶µ£ª§¬¬ª¡©§¦²²¤¦¦¡¡¬ª¡ ¦¤¢ª¥¢§±·®£¥¢ª«©¡¥¤¤
£¢|zt}sv£xj^`ngWecN?gLEbyWbXReTMVUUTO\]aUKMiWUWIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06WZ.0JgAA<<C+:JO^4D>HFD°¥£ª±«ª¶«¶±«¥¬ª©¼ÀÀ¸¸³»µ¥²°ÄÉËÑ¿Á»¸¿¿Á¹Á¹Àıµ±³º¿½²°®«ª¨¶ª¦®¯ª¹¯¨±±¯²¶ª··¦³µ«¬¤©«£³³¨¨¤´´ ¶ ª¨«©¬§ «¬©¹¶©ªªª¢© ¬©¡ ¤£¦£ª§µ®¨¦ª¢£¥¦§ª¢¤£~
¢tytzw~oqggqx\`skO^VHmxUdVRbOMUTUPOX[bUHPiTVSGPYUI>IHOQPxLMV=<KD?@A<@CUC9AK=5;E13;97*4:=+-341*8**+*,))(/*&)%3;,$2)2021%/2Qb02?f=NX>C,>LT_/Jj6OD;°¡¦«®¬¥¯³µ¯«¥°ª©º¾¼À±®¸¡¶¯ÉÇÈÑÀ¾¼º¼Â½ºÃÀ¾¿®±²±µ¼ºÁ±±²«³¨¤µ©¥³²¹°£¶±°³º«¹¯©µ«ª©¬¢ µ¨¡¯²¢´ª¨§ª¤ª¡¢¬¨½¯¬®¢¨¨ ¬°¡¢ §§¨ª°©£¢¡¢££§©¥}¤
xt|uxy{tszh£ui^ekug}SXp^JxsSdSQ^MMRYfNLVYdXFSiRQ?BNQaQ:IHLSIqQLS;<I?;<=;@@W<<?H73CB15:93-5::)-31--6)(+-,42#2)',%.;.&1.0-14%,0Lg:48_=ad?F1CP[[*HM9UA4² ¤¦¬¤§¤¬§´²±ª¤±¨ª¸¾Á¼¯¨¹ª¦®°ÉÇÉÑü¿¾¸¾¿¼É»À¸°¯´±º»·À²³»¬¸¬¢´§§¬²¶¹³§¨¼µ®¶½°½¦¬¬µ«©¯£¤«ª§ª²¤³¨ª§ª¤©£©§©½«´¯®©¤ ®³£¤¥¥¤©«¥ª¡¡¥©¨
~
~}
¡~r{y}|hw|zupp}h
xdahcr
zmfx]^VBWzmTaPRXKKNqu]HZ[gYEUfPD>JNDCA9HGKS?jaJQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KH0%90%,,09/,,+6'17#-0GjI14X=fcBJ7GS`U*=:DX?*± ©¥¥¡«¥·²²¦©±§¬¸Á½µ°£¹¬¨¨±ÃÉÉÍÁ¶½¿µ·¿¹È¶Ãµ³±µ±½·¹½µ¹µ¾¡³§ª«°µ¸´«½¼©³À³» ¯³µ©«°£¤¨ª£¥°¦° «©¨¢ª¤¨ »§®°® «£¤®¦¡££ª£¤¤¢¦«{{~
£|yl}vxxc{zqpqrxhtjgdhansmaip`pA\xlU^OQQJJMTYWM]^lWDX`O^PHMDF;7HEKO<rhKK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*K>*49&'.34.0+/4&,:$41BhY13S=e_DL6KWeO);2OY=#¬§¤£¨¤¸¯®£¯°ª«¸Âº³®¸¯«¨´»ÈËÈ¿·Â¾¯´½·Ä¶Ã±®¹±³À´º½·©¹¸½«¤´¨©ª°®¹±ª»½¤°Àµµ¡®¶µ¦¦§±³ ¤¦§¡¥¬¨© ª¯§¡¦£¨ °¸£±® «¡¬¤¦§©£©¦ ¨¡©}}|¡x
|
{sp}qst`yxioqpoi~qczliec`f_ZskrLL~hXZMPLJHPRPIN\_nSDX[RgOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZgH*>/YX5(¦ ¡¤¡·«±¤³´ª¨¹Å¶³® ·¬®°µÆÈÁ·¿Á¹°´¼·¿»¾¯«½¯´¿°¼Â¸©»º·§¨µ¨¨«°¬³°§¾·¥¼¶°°·°¨¥§¯± ¤ ¤¤¡¯¦¡¢§¯¢ ¢¤¤£·°¡¦±ª¬£¯ª¥©¥¦ª¥£¨¡z
~zx
~y{prwoot_ywdllkihmerjkeh\cs_ZlviZH}][XOOJHHRUF2:_^lPDXVYeMIIEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<#8R=*113>D5,-'42+;+139cl84GAf[HTDU]hE.;1`T,2£¡©¥¡£¡·ª¯ º¹¦¬½Å³°¯£µ¯¬®¯´ÄĽ³¿º·°³¹¸º¸º®¿³´¸¯¿Á¸¬½º´¦¢³«¨©³«®±£Á¶¦©¶µª²»©¦¦¨°¬¢§¤¦¡²¥¤©©¢ ¥¤¹¨¤§¦¥¡¨©¡¡ ¢«¡£§¤
y|
|x
{w~{ltrllsaxuhhjgeoghhdfij_hbifZezcaRsT[[SLIGIOS@!+j^jLCVU^`KIHEC.:B<F<6KPD8:D357==895?:;4>8@L=>93)8><:9*6@3.E4(+,>0-N?.+-7,1195,&.5-80576`tB3CDg[KWGU`hB378cN'2¤£¤¦¤µ¬§ªº·¨¬ÃÁ·°¬¢´§¯¯·ÀÀ½±Á·±®±¶¶¸·µ¬ª¼³¯²±½À·®¼¼±¥¶¬¦¥´©«® 멦°³«¬´º¨ªª±¦ª§¥¦¢¤ª¡¢ §¶¥¯ª® ¡¡ ¦¡ ¦£§x
w{~{s~}fxokjlguskcgdctadefeijcipY^X]ldaMhWZ`VIGHKMRX?9`liGBUS\[IHFFA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A<-5B37=++,0A*JK./*+3722(57$+7.72685]yN2>HiZLZJVbfA:3AeH%5¤ ® ¥´±¢±¾·¡±Æ¼¹°±£¶««®©¹½¼»À²¯®¶¯³¸³§«¹°®®´¶»¶¯¸½¦µ« ¡°¥«¯¥Ã¡³¥¯±¯·µ¯¬®£§ª¥¨¥ ¥£© ¬°¥¹§¢¡£¥¡¨¬©¨¦{t
|ofymhkjgqrk\hcar`dgjmlgjhfl\lmuqaTbhceYIFLMOXQPUaeT@VSYTFGFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24:6#3*)6.55465Z|]19Kj[M[KXdd@A1IdB'4¢±¡©²°¸À¶¡´Â¼½¹±¦¶¯©®¥·¹·¸¬»¯ª«·ª´¸¥³µ±®©±¶¶±²µº¨©¶©ª¢ªªÁ®¥¯°¶µ¬¬±¯ª££¬¨§¤©£¥ £«ª©º¦¤ ¡k¢q¤v«¨ x
mi~wpl}o]d`gkuw~fhuifW\itnNPjdfqf^dfnli^^_
hOKD8ETg^JGPPUUKGS`oteE[QUPFGFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,,08>G701.*.*/668,#1'214:276Xl16Ok[N\K[fb>G1Pb<+/¤± ª«£½Å¯©·Ã¸½¼§¶°¦«¤¸´²³±¹ª§¬´¦°µ£§·¶µ¨§¬¶³®´³¢©´«¢¥§¨®½§¦¯³·¤¨®ª«¦¡ ¨§¡¦¦§§ §ª£´¯£¢££¡¡¡¥§«rx vif}sx o~|¡ {tvlmheczlqbTmcmiqXjpnW^i[kj[pmyriZ^FN>F^MFRVWQQRWTg^LYKRRPEGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82*/1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1V`7/(¦¬«ª¨ª¿Ã¯²º½·À¾ª¤·±ª¬¦³µ®¯³¶«©¥±¥µ³¬µ¶´¥§¨³±²¨¯ª¡³©¤£¢£¯¶¤¦¦¶¼¦¬§©ª¬§¦¢ §¤¦£¤¤ª¢¢¥¦ ¶¤£ £®©£
±¤yÔ¨ÀÇyx±¥·dÀ¿yy|Êq¼Å{r¶§º{l±«°xhkX±®oei¼¼nhzmqØ~Sjc¶²qu¡ªWOWaOVNFT[XQPS\W[P@\EQNDFI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww21Tk\O[M^g\>L1[\41!¦§ª¥²©±Â½²µÀµ·¾Â«¦´©¨¯´ª¯¶³¨§¦µ¥§¸®²±µª¥¤§²®±¦ª§¤²¤¡¡ °£´¹¢©¨¡®¤¢¢© ¨¡¨§§¡¦¢ °££
°kjª~geq¦q®¡¤~wº|k¡v±_j´[¥e`fzfjxj©e¾rg¦v±j|±xtcmm§m[ EigEu`}f{£§Y_«ixzj§7J¯[WTlcZKOW_\WV;NOWV/ITSJCEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:6/'$203B/=;Uv2-Vj\OYL_gY:M5_Y31¢§¥£¤ª±·´½¾°·Å²¸ºÂ§©°¬¯©©±®¤°º°¤¤®³£©¹©³³°£¥ ª°¬¯¦§£¢±£®§¡´²¡ª¡ ¢ª¤¡¡§¤£ «¥¦ ¡
µµx
©µw³·©~k¦z
w«gj±[¬{tpx
°vwqkjl|N¤XHcc~ch¦`yruR^P©mcq}b.Q¢n[Tkg`LK\dX\ZB>°xWXA#MhFCDA@A19>88:84;:9<9:A:E::;6:CB8=?KNH:5:AFB@AD<FD;0201;F,0.840,.(/2,>831/2-D1<<S}n3+Xj\OXM_gW7J9aU50³¦¦¢®©§³¬ª»¶Â°¼Â¸·Áª¬®¯¦®²©¡¯¼ª¡§µ£«µ¤¦³³§£¢§ª²¨°§¥ ° ®£¤¨´®¡©©¨© ¥©£ £¥£¢ª¥¢ Õ¹p°Â~Æ|Ö»|¥¤z£¥z¬yU¯{~j¹Z¹w}¦|zªy{±nt»
oO¯§ÅQ zc`ªbsrl_Sµ´È|c¤3Bv]QjhdP@XfZdaJHMlKZSOYfZCC?E?0<<59;74<;8=:<C:F:;>6:@C;6@OLH<9;DHCBCD<EF81211DB./0483+-(.323971#%5*>3==Qwj6*Yi[K\P_fT7G:aQ82%¡±¨¨¥³ª¥´¨¥¼·Á°ºÀ±µµ¼³¶§±±£±³¦¯¶¨¨º®¢¯± ³´° ¤§©°©´©¥«¢«¨°¨£¬¢§¡¦¢¢¡¢¡¢¢§ ¦ § ²nhµq«p¦r´sr¶{¤¢~ ¥~°vÒÑu[®|¤oª¦k
}}{±sx³et
nfRÈZÂ\yb_`wsb^YÊo¿uMKµSUÆdTQjceXAOj_liPUFI9=WR[WXHC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>II:1746@>/.24252-).26,742&60;5:=Pqh9'Wi\BNT_eP5G=aM62/¢¤¯¬¤ª»¦´¥¨¶»¼²»¿·¶´»»³¥µ´¢²²£ ¬¯¤¦º®¤±°´¸© ¦¡ª¥²¨¬ª¥©£© ¦«°¥¢¬¥¡¥§ ¦§¡£ ¢¥¢
¬{w¨v£©o¨¢¢~®
³\r³R®~¤q×}w~w¯w´aelZ°XKuyf`^wwgj]¯wxl5yÈ®²_BTo^g`EOk_pmVUM/eciSYQ;AD@L:5?91=<16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK96<46:>/04333.2..18*.32%!03767=Pke>&Vg\@=V_cN6GC`I:88 ¸°´Á¨²§ª²º¸´¸¿º¸³¶½µ¥¸´ µ ©«§¶¬¨°±«´¤© ¨¢µ§¦ª£¥¢£¦§¬¯¥¡©¢¢©¦¡¦©¤¬ ¡ §©}}¥y¡ªp§ ¡£ª|yo±Z¨ ytØvt§¤|{²^d }l\«[Zhgªds{kq]¬Z kneOJC¡\ZMt]bfMZa_st_JU5JYHE=HFAL35A8.;>05A78@<6=<F?:<6?=B7.HVJE@H6KIN@IK@EN::@4.;>002154+*05/7,&21($$6671<PeeA&Uf[?1U_bL7FI_C1>8¡¾¬´Â®«©¦´°¸±µ¿ºº³±·¼ª»µ ±¥¥§§ª±©¯ªµ¬ª®¡¡ ¦¤¤º¢£«¡¢ ©°¯¦§¦¤¨«¨ª¨ ££ ¡¡ ¡«®mr´t©w¦s´yt³¤£¤v¸o{¢kk¶Z¡ei ¢§mr´t²jku³af¢nj\`M¡|Rs£ly~no\¯V<wfTon.[§ObSkeblZb\`q|cSYP>>mo3BB@?L9!7@6.;@37C58??3;<CDBJFMIF62JTKEBJ6IJP?HOCFP=<E50;<000/75,+,426/#00,,289/9N`eD'UdY>/U_aL5FM^81B9¥»¢²À®««§·©¸¯µÀµ¼±¯¹¸«Á·ª«¡§¤¢«ª§µ£²¨®ª¡¨ ¤«¹£¥£¡«¶¯§¬©¦¥¤«²¤ ¨«°¡¢¢ ¡©«Ô»t±ÄÃ}Õ¸x§y£¶u}wv²`ºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¡~t«}¾ns¼t²uxnpm¤t½]w}[ay¼jZV[iy^i`dfbmxoY[YCA@r?CF+5H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-7@9¦¢¼¢±Ã°©ª¬±§¸¯¶Ä±»³®»°®Á²¬¥£¤¡ª¤ª²¤µ§¤ª¦¬¹£®¡¦ £¯¹°«£§§¥¤ ¨« ©¤²¢¤¦¡¡¤° ª
µ¸xµwnlnsnysÁ»¼z²¨pt¹|{|¤»¹½uy³£tvut°ufi¶trpw¶^z}gymyb¬pu
X[§jDdZTf_c]bPgfqmuBMPLD;ZL>J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITAKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7LT_G'SbV8*O]]=+;VV'=;<¦ ¡¿¦³Ã´¬ª§¬«©»®°Æ¯µ´¯¸§µ¸ª£¢¦ ¬¤ª¦µ¨¨ £¬¤¾¦¡ª¢¡¨¢²µ¶¤¤¢¦¥«©¥¦¢©§¦£¨ ¬£°©§¢j~i§xs~uze{½¾Àºnq_rjZ]adk`cmvbke^`cqhr}fj~qty}|b[wthP\n}{jXlyrIJo
pMtMEW\faL[Wfc^OZmvjrRODEN;HI<M?2,2A?8/5?C<9;@;=C>RVVWYZ[[\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7IR_I'S`V4)P^L(3>[O'?2>¨¨¡Á£´º¶£¬¥®§¨µ²¬È¬°´¬µ£¾±²§ £©£¬§®¤¥µª¥¢¦©¿¨©¦ ¥©¨°²¿¬§§¡ª©¤¬ ££§¬¢ª¡¯¦°¥¢¨£¤§£hn|qv´©
¡ z¤
li||tqxyvv{jstudw}vkpzm`c[ohMXXej_WYpzonfSOFS9OZNRO(+:JB635=@A9:C><ENSSTVWXZZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J'R^S10T^:+=8]K,<-@² ³¡¿¢¤±²· ©¥³§¥°µªÉ«±¦µ¦À¨´¡¥¥¤ «§¬££·¬ ª¦Á¬¤¢£§¨§²Ã¯««©« ¡¢¥¯¦¡¤§¬¦¡° ¢§ ¢£ {©¨
{
£~e¡³®
vz}vyzogykuyrhtzvktcxf_hdcdfjXk{qjj\RLPD_UF@??,4@F;45;>A;<?>>HNNOPSUVVXZ\_aca_^]]^]XVJKLBIOMRJ;<:786/2964.(&$-1..)+*7%+<(6CMLD/T]Q05M[17E4\G5<,@´ ¹¯¾«®²² ª¦²¢¬³°Å°ª¬£³¯½¤´ §¢¡¨¦©¦¤¦³µ¯¦®¾ «£¡©
©¬¢³È´©¤ª§© ¤« ª®©¥¢ª¡¬ ¥¯¤¨¥©f|e~cxlhkz£«kd~g
eeihz¡kg¢wkj¢slnz
yXe]
^kv[hswwnxxsmytw{hX]jsd]sij|qlc]QNWIdX@J4>F7?FD71<=?AC;;DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%.++'6*$;'/AI[I/7ZO6)EY/DO1YC;?.=¥º¼¹¯«³°«¥¨®°§®®°½±©¨¤°± ¤¡¦«¬£¦¨©³®£¢¯¦¶¹¥®£¡ ¦{¥¬¢¨³Ã¸¥¢§¯£¤¤ª¨¡ ª¯©ª¢©§¦§ ¬¡¥°¤«¡¥«~¾r´r
hx¹Ä¸q¡£{¦sª|ËÀÀ»q¢|À½ÁÁ{z¿}k¥±ooÊzxvyyqzpx
ylube^xd_eb^thmdbXLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>H[L*#CP/#F[3PY/UAB;/8£¸Ãµ°¯À©©£¯©°¯¦²µ¯«¦¦¦±« «¢ ª§¢«¢¥©¥¤´¤£¦®¬¸´§¯¢¥ ¡ ¦«¤«¿À±¡ª®ª¢¢¤ª£ ¡¬®©«¥£¢¥ ¤¥©¤¨®ªª¬¢¥¡£Îyz¥z_^§¡ |§t«¯^d©z§
t³c« ²j®t|¸aY£Ínu{Û{q~ue{vvk}n~
~l_pjof`_xd\qhjcf`RTRW]JOC5AHED8>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5577164('$!',&&/(&+360$7;SL+-.J0';\:L-!P@F4.1ÂÀÀµ´°·¤ª©´«¦²¬¬¤¬¦°ª §¦¢° ¨§£¦¡°¬¦®±«¨¬ ¥¥¨£®¤«°¨¿Æ³¨©±®¢ ©ª¡®¯§ª¨¦¦£ ª³¦£«ª£§¦¡°¡§¡ p
u¨q°|r¬~¡¥w«}r~«vz|~ª¡~«{ zVÄzoÁ}mupmfveoawnrnmdnsuo`fmd_niinfcWT\aZRRC8II@D<><@EDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1''45-&7>WJ-<(=1)3V@F!G:C1.+¯ÔÆDz´£££¢®¶¯©°§©ª¨®««§¢£¢¦«¢¥¨¨¢°¨§¯¨§©¤¢¡§£®¬£¬µ©¹Í²¦®¬¢®¬¡©±©©¨ª¨£¡«¯±¢¨¬®¦¦«ªª±££¥
¤j¤uz©tz²q¥p ¤_`R«®u®§z
{f£¤£}©~®^|¨U¢z¢{ïÅs¯³³¹qb©¯Âuhlnmxwwnlfedqpf{ic\W_iXXTLLQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ('"+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÂÉÕÖÀ¡«¨¡¯¢°µ°¯©¬£¨¦ª««©¤¦ ¥¥§¦£¬¢«¡¤¯£ª¤¶°® ©§¤¢¨ ¦°¦£¨±¬¶È²µª¬ª¢¥³¡¦««¢«¨¡¡©¢³¢ª³²¢ª¨¯¯¶£¤§|ªlu«y|°n¤Ò·´¸É²^_©¤ zxªÉs£§©~ÆÆwe¡¥s}¯^oµc±uK£m§Gc{p}ozt|zm\fjrqfi^aXcm\^YIMMKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75785/)(%&%$&),5FNOPMFLJVF*L0/>-4OTQ;<F2,$¨¤Áƹ¨²®¬¥¢²¹¬ª¡¦¨¦ª¬©§ ¦¥ª£®«¦ ¬©¥§µ¢¨«¶²¬¦ ¦¦¢ ª§®¡£§©°´Â²³ª¨¥¢£¯¥¡¥¥«®¬§¥«£·¬¡±¹°¯§³´³¥¨¤ Nxz£|¤¦¸{|y¹~ÌŶx ~u¤£¨~°
¬}a¥l£p
}r¬`¤sq`¼}RUu£{}szr~p[lnwrjnZc_hnbd]KLQTAHHFI:9K>B108856877-*5==?BDGILNPTVXYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOUF<E2:P[T6?H,- ©¬¤«¹«¯ ¡¬³´¦ ¥®®®©¦¦¦£§¡²®¡©¦² ¨¤¢µ¢£¡©µ¹¤££¢±¦¤¡¢¯¤¨¢µ±Ã±ªª§£¤¥¥£¨¡¬¤¥¯¥¼¢··®µ²¹²³§°¢¤ÑµÃ·y
¦x¢w ¥q«´nri£|r®¥¢¦mp²\¥szl{}n©a¢qqbs²¸hx¥}w|xlhwixsnt\ddnmeh`JZWX<GG@T3@F><*(63.013)&4:;<=?@CEIKNPRTVWWY]__^^``]Z[ZXURRQF:2230/++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH$)%s®¿¿»»µ¨¤¶¡££©§®©«¥¡¥ µ§¢©§°£«£¤£ª´´¤¦©® ¥£§µ ª£¶«Â°©«©¢¢¡¦£¥¤¦ª¦¬¡¤¬§¾¬¾°£°³º¬´§©²¥¨z¨}|°w¤¥m²o |¡¨¬®
¨ ¢
{}«ªx y¯]£|¦§d|tk¯]¥kq
]`[ n¦yyjl~b}tny`feqohghCY`[=JT2T8BBC7$$3+''3, /667436:@CFIKMNQSSSVZ]_a`aaa^][ZXSPONI7052.*,ATVVVTTUUUUTTUTSSVWWXVUUQHFIJ#((¼©ÆöÁ´ ®¸¥¤¤£ ¯®©£¹ ¢« ¯ª¡ª©¤®°¬¦¨¢¡¥¡¥¨¦¶¨¿¯¥©¤ ¦¤££¨««¢£©¨¾¤Ã¬ª£¢¬³º¬¯§¡´°©«v¯~
|ºd°e} §¬°
¥¤¡¢ [lj³`{{±lgn±[}´[¤kÈ¢e{¼YvµZ²}R¯z¬X¡m¨yw}cr}axs|aifpmfeeOUc[AT^=I(>9=4!",%2. *1/04579:<ACFHJLNPPRTWZ^```ab^_\[XUPMJGC553./@UYXWXWWXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³²·½»´Á³£¦¥¶©¡ ³²¨¢´ ³¨ª«°¬®©¢¯¨¦£¨®©¡¥££¥¢©²¨»¯¥¨|¡ §¡¨¦¤¤¢¤©» Ƨ¥©¢«´¶®§ ½®©£®¤¸Ãº§¬¯¦¥ª~սªb£¿½|~£×º¸µ
½¾j£o«nz²±Çj«°½xw¢¾»t¦xyb|zcgx{`kekjbPb[Sj\@TaBM)<:4/$%2 $(0496678;>ADFGJKMNNQTW]a\__a^`[\YTQMIC><A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ¼´´±¿¹²½³¢®¦¦³¦¥¿ª·°§ ¿¦¦±±¹¨¯¥§¯¬¯¦£¬¡¥ª £¦§¡¨¢ «©¹®¨¤{¦¨©¨©¦¡¢ª»©Å£ ¯£«³µ«°ª¡¼¨°°tuª¤·
eog¬mow¤u¯pq§£®¤rmmmewnmqyipigqhi
gpd^cjpY]g~w¦`bqofd¢{tewhjx~ydlcflbKdXJkY:PeEQ'K9+# #,)-2.5:457:<?ABDEHKLMOQSV\WZ\`_a]][TPLHD=:AB7MXYZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨³ªº¹²³ª©¢®¤³ª½±ÃȽµ©À«¬£ ¦«º£¤¬¬¦ª
¥ª¢¤¤ ¥§¨£ª ¥¦§¯¹«¬{¦§¨¢¯¦¢¬¹°Á¨¤³¦¬±²«®¬¨¹¤¯¸¡¨¥¶¡©ª³£¬¡³¢ ¢ ¤¡«¦
¤}gtvtq§m| pgvowv|zilddocU`Y@iZGb`NY*E=+&"740.!%2(*799469;>?ABDFJKKMPPQWUVY^_ac]^UQJEC>9=@ASX[\YWXXXXXYXXZ[[\^__`^^^__```_YY`¥©ª¥µ¸¯®¢°¤ ¡¶±«Ä»Äº·ª¡¥¦°¨£¶§©´¦§¬£§¬¤¡§£©¨§¡¤§¡µº¨«|¡¥¨µ£¦«·¨®Â®£·¦¯¯°ªª´º¢¯½¦£¦µ¢¦©£¬¯¡£±©°¤¡¤ª«¡ª
~fuvysj}
xqrxq{~jnd_pi`[`YmbP`dPZ:GFE=3==7.*&+)&&406658:==?AACHJGJKLMSSSUZ``i`eVPJACB;9EMV\^^[Z\[[[\]]_^]^_`aabaaa`bbbdb\[c¤§£°³¬®£©§ ¨µª£²º®««¡¢z¢°¤¥±©¸¦£©¢®¤¨ ¡®ª¨¨¨¹¶¤¥y¡¨·£¯µ¢°¯t¤¾£² xz «³¼v®¤ª~d[av¤~n³£¨®«£e syp¨l¢§e¥
wkvq|ai[vghqz£dxvhnykpe_vokkh\fcbboR[>MNNRG=@TB91.&4:316678<;>@ABFHBGFIKLTUUY\_hfgWQJ<DG<9VR[`ab`^`_`aa_\]___aabcdabaaedchd^]f¦£¡°±¬«©¥©£§¥ª´®±¥©¦«s¯¨«§¸ ¤~«¤§¢
u®¦¨£º´¨ uv¦²µ´½§¡~§¢z£¯¸§
°©¯¢y¬¢¨ª¨w¥z¦{±z
bynqzqt
xht t|
~ijx{qpgdwmilj[ejier[^HSLQ@E5-YTT6)!09=>643568;:=>>?DI@IEJKGRXZX[aahfYQH9DK<>bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah£¦®®«¨¬ ¨°§§ª¥Æ¼°¡¥¨´«§¢ ¾ }
«£ ¡¨¢£¹²§
pu£¬´´®Ê«®·
°±¯©§|¨r{w¦h¤y´§©Â«¡q¤}
±¡| |
ms
{r
}
t
Åf©¢jogwt{vghupfgk^bnlflXfF\PL2E46M`c6&4<DGD:64658;8>==>BL?NIJLCPZ]\Wb^jl\QE=KM@JdX]cfhgbbbbcc`_babcccdiicbbbecafcbbi¢°¨©¨¥« ¤¹±ª«¦¢¤ª¢£©¶¢¯ ¦¥½ y«¡
w ¤¢¸¥bm ¡¨~¡§ ® «°¤ª~£vk«tM«x©¨ª«}¡{z§ikg¶}m`cX{dgs}yl]|n_Sq
\`ly`Ye}q§ªk£nr¥pgdlZlzeY_~aWPovemtqjjo^jolkhWhN]WE9A4GC^k4+ICQMN=84859;6@;;>BO>QRLMBJ\]_W^_bv`MD:MOMTb\[ffiibbdaddbab`bdcabikdbddgdbgeach ¹¡ª£¦¬¢¶¼«®¢¡¥¬¬´¢§ ¦´u¦
¬¤¨¥°¦¢in¡¢¥£¡ w§¡§ª®
¥y}}¢ps{ym©|¢sv¦f~w¤_z|s¢n·´ºt¶¨dƸ{p·q¤ct¬«`}j³~n}q£ls¤s~£^³o{³tr[²ibosuqhoYklrre\h]bKD=D5QAYq2<RF_JS=<395::6D;;@IP?TMNQ@E_^[ZX``|dIC8LWUVbaZefkkbbeadc`ab`cc_`cknccddhdbgfchh£¹¬ ¥¸µ® ¢££¤¬±¬« ¤«x
p }¨¡£¨¨¤~k{~} w¢ r¢©§¨¬®}z z£xs}¦£d¡|lhnz§}rgsªsªg]
vhªj¸f\©pa^§vuhunk¦\¨~w»j}©Z]³g\mqxwki[pixxb^eWbAPDO7VBRm4JZZ_NZD@151;;7H?:CHU?XRY]>Db]V`Qad}iEB9N[^YdfXfgnmbbe_aa__``ec^bdoq_deekdcihgkiª¶¨c¬º²°¬¦§°§«¢¡ £iq{z£¨£ ix{~£ ¢rh p©£©¡¨}°¤¢¸v£³¢£xz«~¢r¡|
¯µ}k¡x~´££«¨{|~sªZ]o{xbM{{
czBMY¢jr|muy±³¦tmq|ori£]vHec`sp|}ne`khv{bc`Q^V\TV@YEQgDRW[bX_ID=B8@B:IE8LEXAVQ[VDFa\Z`K`m~rEC<U_bZejVghlnbff^aa\]^`hb_ecvl^egfldelhhki±®S_¡§´º³³©¢©¨¡«£ §¡w
ny
}r r¨|l
q¡x
|¤ £®}µ{¦z©¡}§hwm~s sq|
o®}£¦£p^©gu£co¥aÓ|zxrsc¢
~¢r¢uk³`sª²¨¼wm¿¦ª´^o~qos¢r]£gt¦ah¦mÓznwykzvrl©¥g_dyp~kgfcmvwf_aR[eQQbIWIT_WS[ej\eQECKLJKBJD8P@QNWSXORQ`eeiRdxywIFEc]eZhjSihjocjg`b_\]]_hbahe{d^dgdkdjlfhlh°¬T\K~©°²µ°³£
¦ ¢¤¨¨
{p}h}wpl|£ª
yvnw¡y¢£ ³¡¢¶z¬§¤®¥p©
}¤¢r¢¬®¤®¢vµ¶µÉ¡ta©mxu¡w }oLf¢ps¤{ytal~ lrd`rti{i³µ´Æ¦s~{j«tmswiytqPE|³^jujxfjgbttpmU]SYhPRhIULXRV]gknVgWMJAJMJHJNAQJPecimetrs~x{nu{{TPOm]h[kiRjhilglfce_\\\^ibdhk{_]dgcjfnmeile¢¯§
f?¢³«¯¯µ¢¢¨¢¡£¤¦¥yjye~ yui
z¥©z}yp¡y¥§gnxl¢d|q¥wpg§{¥z rv¹n¢b}¢nriªku ln¦`ihu¢}_
uobh¡eiupdfnr¢Z_[d¡n^o{srd¥nx¢dg§hrn¡oRo ^d§T]SmmrjqlphkxskoQWVVfYSmIXO\HXihsjYkVQREV\LXRaUhj^wuz|p||r{rvv^QsagbpgPjhhklngdg_]]]`jbjivu]\chcjirlfkmc¥¦zetm§®¥ª°±¦ª¤¡¡¡¡{qh|st}{e|
¦¢«
}si¥}
ª¦¦x~¥²¯¥xz©t¥n¥¢¼n|¥¯
}¦zq¨ g~o«bw¨l©¢vw«¦k°kv³©lnma~«ªv§w}
¤ iu«f¶sw¾¤Y¦«auqso{tpbj~nhlRUZU`a]kM]R]I]lmv`[qY[`Zgsenorcqt`w{~yrys~{{vbxdcnsdRlgholrifia_^\ajbllzo\\bibmiwmglnb¦ª¤©ª¨§®£ª£¥¨
t
zo}ttrm}{¤¥¥uol¨ª£ u~y®£qx
{r§q}}zx{~}v¡{}k
[yyryphn}qtq
e_wusuozonm_whxfª~t}jou|umlfsx{w[jXxhmwqpowwo]lmigVY_W\dkdUaU^Q_pwykjwejjju|qqtsaoubs{xuyux
}{mldyn^Wnghukxjiid\`ZcielpunZ[bkdkkymhloaº©§¡¢¦¤¤«¢ « ¦¨~r|}~ztrp
{}
x~¢{§¡
wr©
§ «~~¨§xp{o~©
p}qjo|hm]sqtkvsYrn}~i]icz
_ix{|viykaqsw`s§fnvoxndfcyzZ\ifnv[zywtmsrf\mkkbYY]ZXkq[^`Y^]fs}{sotcjji{|qzwtdmthl|~uy|{zyo{}s~ysiT\qilvpugkgd]aYjhkjqrmW[enlgsynhjm`«±¢£¡©£¡}«¢¤{|r}v
qor~z¦ x
z¬¡ª¢¢££ª¡§¦ |y¨~°¥²¦ k|vwe|w|zu¢~vqt
x¦|uk{yirh`sp}zvuowt\^ohn_^Z[\SgqUc[[alht{|rnpcjih{mx~qhoplf{rw}{m|zx|~zxNdvjsnp{ekebb`[sfpfrqlU]ltmiyzpgikeº¢¡¤ {ª
|x{mxr~ml~z~}ªq
}z©¦ ¢¦¦w}
¥{|©¡ªox
qt`~
t~
nyuu¢
t}}rs{{y§u{nj}{mhklg^y~g|{vsuuzv\`p}mt`bZ\^QfmSeZ]akivy~pklckjgkrlktoxnynv}
vr~{z|{`i{kuhiejc`i[cuhobumlTbqydpzzrejmm¸¡¤zw¥¤yy
|m|xr
}}kh}|~|§p ¡
|§w£ ¡¢¡£
y¡~|¤ ¦~~utpv`}
q|q~
hxry~r|}qz|
{{¥|
uydqz~xypljf^}rh|uus|sj^`svpwdcY^^RjhTdX^agjvxqfkclhejm~hopj}w
zkr}tv~|z}jrnsiailb_qUtomn`xhmWjtvbuz{qbkoz³¥¥ |u£ ¢x{~~p{tu
~xgc}x}y}o¥¥v¡¡z¤zx
~s¢ ¢|vq}mzd|
pkeuo|}x|}|ryy
¢wvzt_ww|s}wfkd`~ijvsst}p{cc`smurmaY`^[ldRbW_`hkuypcjclfh|khthloh|ymqt|~z~|muttmeljacuViqn`xflbjvpfy{yq`rl
®¦¨|w©yx{}|{xsxzs}d^}~t}~}¢ ~r{¦ t¦tlzo¢{zqyjul{}}m
wo}~drj|
ty~vx~}
¤y
t}rtl`ztyp{oanbd{anovrwwssav_nkuno][^]^j]O]Wbahmszk_jejchwmflhjlg|zwos}tz}z}}ryyxnlkh_irchqofvgmlazhj|zxpawmª ¤©}v}w}{|{vwptszo
}}{a\~szz¤}|¤
n¡ o
gz
p¡}{tsukqnu{tnqt{|eqmy~}
ttyo~}
¨{}~
w}pnbgwstnzb^o`jt^pjzxxlrpex]mlsmsXZ^_ajZOWXdcgqqf]ihfbgqndigeihzwuo
s{u
x|w
zw|{ryjk_phtkqnmqgole{bmyvqlww£¢¨¡§tª t{vwxrs{
kroymvmp[Y~vu w~n
k¤gw~|}ovokmopz
ispwtyftov|
zzwtp|{£|wxxni\qrqoowZ^p`oj^oi|zpmmjmv`pojqmYXaabmWQSYefcupb]kmdbfkm`ff_gkuqrptxvy
wv
|{vjqc|c|opltjholvw_q~y{tut¥§
u
zrwtpr
squlomumw}lmUQ«xvry xz¤
}s
ih¡qw{{||kvjmkklz~ay}vzw|ygulu{qz
px{{~
|}x}vphkw^vomkprU]nbq`_mnypgpfgsuhpkawe]Ve``rSPN[fe]xp|_\hrbbefi_hd[gp~okqs}v}
tuy{
xs
~{yxfrj`~ookz`intt_t}xxtr
|y¡±¦~vtvspo
spqojivmn}|musRNᐙ|ptu w{r
¡
~xz~ywhl¤
cq{{z
{~l{erojkyy[yz}~zzhtkt
}l~o~z|wxxrlepkhtoghslS^ndpY_kqxfkjbfxsopc_w``Vk_^vPNL`fc]yqt\[ev`aeecafaXissnkqv|tyuv~szr|~vesn|eoplZlnyys`vz{vrwwy¯
w}
uwpyqnomn~rddxp|mz}jhlc¤ÁÜ®ï¡skuu¡
np
£
{uxvwo~¤
^l{}
v
}}k}cxuimxsWzy~
~yftjlvn
zttxuspftyasloahufR`pgkU^msy`rc_h}qrmZbrabWnZ\wMMLcfa^vsm[\dy^`df_cc^Xjrknkrw}swxw|q}~{t~~shuqyl{ntpXqzvyqdwyivr¨£}pxy |{swpsjokil|t^`xv{pu{g`e|ëÚµÉÃÜslsvip
|{vxrvq¢a
i}}q~qwgvriswkZ}|vbtl}nly}~nrzulpjqw^shn\ju`RdqhfS_ovt_o`]hqriWghciXmW[uLJLef^brs
h[\ey^^dgzad_\Yknenjtw~ss~zvzs
|wv
{vlwuyyunxz}Xyqogxwdv
q
¡¢sorw}{yrsnodr~iflww[_xzzqqiagaÕ¶¦xnqw{qj{h||~
zu{zq
uw~af}~m|tkmvtsvukc~|p`sq||zqf{|
~npy~umnijy|agiiXkuZRiribPbrxlae]Zjmsb[g_dl_nTZoNHOfd\gnqkZ[cr_\clwde]\Zlkbmjsvqo||tx
x
|uy|vpxy{om{w^tmizssgr}r vvmv}|v~wqoljat|gbiuzZ_x|ymq~echhW^qr¼Ävq~rrj{||{uvv}qu
ru
|f}
q}f~{y~}i|vfoxxsvslj
x
k_ry{~|~riy
y}}nm{}wtngf{ub[pbWnrSSnshaMftxe`]\XnosYea^jm`pOYkQDSg`Zknm|nZ[^lcZbowdg\]`liclisvqn~|tuz|
v~xtryx~oo{qiyz~ml{ukjwtl
n}vjx~yozspljd`szh`eqzZar}ygqzaee±²wJbZ¤ÙÐr{w~
nk
zy|xxpqt}ziy
¤~owy
p{}nwh
xr|e}~ucprhxpou
|vxyk\q~s
~{rnq
szxno~vzdgi{o^XvZXplNWqsg`Jlvt`][[Yt}roWg]fjp`oNWhQ?Yf^ZojgzqZZYkeYcqy_h\^emhekiqwol~uo{v
qq{|yyujzlo~u}or{{onxf¡gpgz}~|ixrklf_anxm_box\dlzaqv_eeÔê¾2:>qx
v~ml
v}
|xnvwo
lu{tfy¦}nuwz~{wkrh~xm||wbyqdqh~mtqt~
~su}so[mux{|xzqlrztmkwuu\hgvoXV{RYodLZrre[Ipxo\ZZY]u~thYb[genciLWfQ=^e\]ue`upZYTodYdqyZh^`gmgilipw}li~yn||zu
pnw~{{h{}jt{r{sw}yx}|kl~kh~z~~}kuqghc[bgrn`aksahpzbst^cd n\5Y¯µti|u
svpl
uyx|z~sgv~~pq~hvymey¤~n~v}|p{}{h~lj{zizvr`w~qdrfumu{|nwy|tmXpwuxvzxsns}znmjnun]gdrpQZzMZo\N[rpdUKsxiWYYZaqt`]]`fdhifNZhN@ad[`ua]umXWStaZdorWj]ahkgmlipw|li||p~~{zwq{oqw{j~{mwxvw}x~~zm
£{uyklx}{~prqcf^Yg_op``gpfjotato[adjv{¾¦£È¸q
r|xsrro{tutwyyqcwzirvgwucj|}rt
zy{kxy~ugzhlysizv}h`w}jjsg{iv~z}~p{v{t~bVw}rs}qwxqp~y~}vviqimrp]gaqmJeuK]nUSYsnbQOsx`RXX\aos[a\heeckdQ[pIDcaZcp^]xhUVUw^[enhVk^ajgeoohpvznix}r{~y|v}pwrnw}p{xyztxzuo~}
zw{gt
z~{
vgon_d\XeYmr```plkhn`siY^dmw©Ú©Ç²qwou{zutu~wpqmtxuk`zyfqpgvn[m|y}y{mwt
{luvmgvem{umjwv|`bx
yhtub}{gt{tuqz|mYVtpu
yltylu~{}y{s|sgtenms[j^tdGmmLZaWVUxmbPRtvWPUX^aqo\`cmdd^obT]rGBf_]fh][{bQU\u[ZgkaVj_`nefkqhpuxtku~vx}w{s}oqtqu
{wx{|
x|}~{~svy zvty^}
yt
w{bnm\b[[aVjsc`[gnofqaqfW\ck|Êι¡jmmlqq|~{
yysyuu|jlucuwof^}zfrkjqcXmz
sw|nrr
{x}qqp}fhqbmxqjkqx}|z\dywiuxevgt|qjn}yn|]Xrnt|ooqvhww}q{u|zrfsanlrXj]v[HmjMUT^TU{kaOTurPQTV^bt
i\`kjfcYnaXbpGAh\`f^]V{]OUdpZ[jh]Wh`_rejhrgprwxntzw~xur
pp{xwuz
z|t~}~~}|xvyx }muyc
so
ztcnjY_[]]Tgse`YdqrfsbkeW[`ix¾®{ ·mbshs{qy
{}wxrvo{vejn`usjb^xygq~hkkZVow£qqyuns
}xtrnhy`jm`mvjgjkywzw[g}|xer}mteu
ofjzumtb\p}lu}|fu}nqhux~s}l{{zxqflbn~mnVj_vUJijOQNhMY|hbNUujLPTU^fuf]`phgaWi][khJDjZadWYUyYNVmjY]le\Yec^teldqgrouxp
v~w|
}usnsy{zss
x}u~|{~{w|wwziv}|lrp
~oflgW][\[Tdpd_WbruiupeebW\\hporsddx~itusrxywtumkzqbgkgtnf]_}p{~imxfidUWro¦|{vt|s}{n||
w|}tprlgt\lh^ltdgfizo{rYgvtgpwubw
|njmzqfsean{gsx|~bvvjkqu{qzzt}f~ywndfbn
|mjViaoRJhjOKNpG^{faMUtcJNSWajv~e\gsie`VcWbp]LKkXcaUTUsVLXudZ_ka\Zce_wfmbpisnrutwwz|u~
nrt|ztq
zut|
}~{~v{£¥yku|zuyo
sy}unjheV][ZZSbnd[Xas{ihmi`bW_[jikogk`hyxjsttnz}uunzhjyj_enhvgeXbwi~{oipgf]UXog¨wz|yuppsvzxu
vjrvghn[ld]ms_gajxh{mZmrsjo~ywawwrqoyqcph\pxdqt|xcspgjytrlxwvxd{xvpdccn||kkUhaeSJkgOGRkEaxgaMSq\JMTYekw{e_mqid]V`VnnWKShWe^XNUlTJ\y_[_k]][ce`zhkaoounoxuz}wz
zyz~qttyvt}|ks{
~}{v¬zkryutnn|sjomddX_ZYZUbjg[Z^ui^ml\aV\\leqt}ii\kvugtwrm
{}}yurlyhixf]eshzwccTepg
wwgij`WVYgc§n~wzpq}hzoz|wr}ndusdhh\kb]oo[g_mudzh]toqkq{}uuat
zwruuapmZrtbqr
|uerlal{oji{yvrf
v{zuqdaems~ilTh^\TKrbPFVaGbvgaKToWJLWXgkvzdenqfcZW]YveUJ\cWgXYIWeQHbxZ]_l[^\ad^ij_ntxnonvyr|
}uuy}suuyzz}~isz}~
zz|sq®{{}eqys|{uro
l{~lzbpobe]eVYYVcfk`]\s
hXpnZ^WZ\l{bpwvmbZlssgtuply~ywnnteite[hufvvz_]Rffkt}bci\TX]bc¥hxt
xmozhxn|
{usx|xhevm`f`^j_]skYe]oobze[w{knnowxstdr~zvor}sbwd[oqbqq|sgre^nvidgy{unout}sqb_fno}diSgXXTMw_QJYXHbudaITmSJLZWilr{bllscaYY[av[SLc]XiSWHYaNGiuX^am[[_bb]
hganxylojvxm~vttsqwuw|}~~~pw|yxy~tsp¢{zxduxswulto~ly|pr^po`gblT[ZWhcmf\\qeSrn[ZXX`lvciuji^Ymsqlsssj
|~|vnnldiqc[krdtvs[WSearr]bc^SZ`[cerq
tlkzmop{||qwszzzdeuh]bZ`g[^vhWb]phaw`[{viirnwsrthp~vrjp}mfwW\knbqszsgo~[`pqa_jq~llu~sqxkpa\ellzagSfTWQOu[QOYRHctb`FUjPIPZUkkk|emoqa[ZXYlpWSOfWWhSTFZ\OHrtX_cmcX``a]jcdmyxkoiuy{k}|y}nqowz}t|tw
usquo¢t{{ewnnznfxpzksvrk^tnagekR][UgallZ\pdOon]VXUgjtgbtee]Yntmpuuyk||vsddkna\nmcsxkZTVcdx}}q
\c_cTZ`Yccnp
sjh{ofsws|lztuoz~u^frc[^VadYateU_`mdaq]]~ohisqsptujm{
qrfn}proS[fkfqtwsclvUbrkZ_of}fmw}sssjm`Zdjjw^fTdTUPTmWQVSPHds_aEXiNHWTVmhd|ikxkbW\U[tdSRWhQYeTSHZZPMxvZ_eliYb`^^naflyunohvvl}{~krgt{u|r|
{ss}vn¥svwmz`d{pfzsxlmqvgd{lcfghS_^Ug_lo[^nhNim`TVSogslfxdd\Xptlqzxrm{vzykaelm^`ojeqx~gZVX`lx|{p_b^gWX_Wdbkq}wkkxm\wql{jvsno{rXjn_Y]UbcXdqbS^ahbblZ`}kfksunmwvkh
~zmqep}mrmcYaiiotts_ilSeqdUbnbzcqw{vkpmj_Xaght\eUaURNXeRO\OOHep]cFYiMI_KXmd_xhn~d`T^T]u\TS`fN]aTSJ\YPYuu]_emhXca[^qbgjwqsngvtzry~|zntlsty~|rstwqn~zz}~~}}~~}~~~~~~~}z{|~~}}~~~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~mfggggg}
]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDBN¥¯®¤ ¥^*///0,H
}}{{z}~||~}}}~}}~~~~~
g_```_^yS7¤¤¤¤¤¤£r]____aR455553A©¶´´´´µ¨£¤¤¤¤ªV:|}z{z|}{|~}~}~}}~~~~
|y{z{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{y{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~rtx|||{||}}~~~~~~}~~~~xrvy|}|z}|}}~~~~~~~~ssvx}~|y}|}}~~~}~~
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxy}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvtuvwuqrqnprpghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkigfggghhgmgjghehgccbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__`c_\_]`]^Z^]YY^ba^^ZY_\XWSNMLKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSSPMJMNPROMPQQQQRVVQQQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTttuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPPRQPNNONONOOPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKLFDFJKKKHJLLLOMLLNOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBA@@CCDEACEHKOKIIJHGJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AE@>:;>><ED=?EA?@A@DEGGGGBDDEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@;;><;<<<HL==AA?BC=ADDFBFFDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprttsqrvyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;=:7:<<>=;;:8:@@AB?A?CFDBCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqususqtxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::989;K;9:9:;;8789;:8<;=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>><==>>=:MzR:===<<<<;;:;<>=>??A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLKIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCDA?>=@HG@^zi=>CE??@=;===<;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJKKLKIKJJHVpoqssttuyz{{|~~~~~~mLPQNOPNNOPPO><<=>??@>@@???CEDH?;@c|{usxl99<9==@=:<;;<;89;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pqrrrtuvz{}}}~~~~~~~~vMNNMNNLLNPNL>A<<=?>BC??AAAB@Esb?k
yl;988:;=??<;;<;::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHJJJLJFFgpoqqtvuw{|}}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC?Mtzm{~p@==?>=>CD?<<=>?==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hmoppqtuvy|||||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCE@Nsu~{|hAA@C@@?@@>=<=AEABBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{{|}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@Irs~}
]>CCE@??Na_J@CEIIIIMMKECFGHEGEEEDDCA?@>>BFJJGEEGFFJNNKJIGGHKMJGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EDfv
JDEDCWu~XGHJLLMOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHIHGFEFFFDFHGEEHHFHGHFQnnpqrvvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJGYy
a@BUtWILMLMNLJGGGGDGGGGFHFHECDDFEDDHHCCCGJJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrswwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLL`{Wl|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD?>?DFHDEGIKIIGHIGIIJJIHFJJJJIJIJJJFILLJJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLLId
uIIFB??@???<<<>::<AA@><998<<=;>;9;?ABAACCC@ABDDBCFHIHHHLMLGIJMMNMJJKKJLMSloqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJJJl
fBB=88::9878896479;<:8567789787689;;<>@;999==><<=ADEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGIIi
~T;8656766645763468:876565676778:77789;7589989876:<@GFIFIFEFOSRSSROPPRTepqsttwy{{{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=ECEu
H676468874578467699766765:9:::<898977779:98878589;A=>>BA?AKLOQPQOOORWkrrttuwy{{{|}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B9G
z>:88;<=>9:;<89;9:;:99;:9===?;;;=:>;9;;<;<<9;<8::;:999<?<=ABDIJMKJLLWorsutvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<;89989:::;?<V
l<;>BCEEAAAB>@B@@?=>>@?>?@?@==?B?AA?A?=@@@??A=><;:;:9;?=;;==AACABCAXqqtttvy{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<=:;;==?@B`
^>DGIKJIFGGDFHGEC@@CECB@BCB?@DHECEDEEAFEFEFFD@B?=@>=?@>???>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@DDEd
WHLMMKNJIKHIJJIECDFGFDCEFDBHIKHGGFGGEKIKIJKJCFCCDBAACBDCCDDCA=;=@hpsttwwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@@A?BCHHJ`
PMPMKNKJLIIIHJFDGHHIEEHFFELLMIJGGHIJOMNLLNKHFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?FGG=<@@98<;<=:?@>@@CFJJPh
qMQOMLLKLJHGEJIDJHGLJHJGGGKLNLLHHIJMPNPNMOKIGIJHIDIHHFFGGIFCBACUnquvwy{xyzz||}~~~~}~}~~~~~TDAABGHB?8?@9:<8=>;=A>?@EIKMVs
^QQPMNMKJGFCGJGLJGKOLKJJMMLOPNHIKLOQQPQOOJIJJLJLFGHGFGIFEEB@BB\orwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAHLMQWy
|WURRTROLKJEEFKONOWVQPOQSRMSTOMSLPSUWRSQPLKMMMKNGGJFFHJDDEEBDCcpuyyzzz{z{z{|~}}~}}}}|}~~UFFGGGGHF>@B=?==B?BCFVNFOQQUY|
gVVkaERQQPJ;:QSR`u]UVTVYYRXXRZfPUWZ]RTWQPNRPPPQKKKGHIHEFIHIHIjrvyyzyz{{|z{|}|}~}}}}}}~~~THJIIGGFE??AAEBCGEDELXRMTVVX[|
}al[dU:XXXSP>@VUY\d`VYbr^]V]ZVEQYZ[Y_TYgRUVXUTVTOOMJLJIILMKOMTptvxyxwzzz{z{|}|~~}~}}}~}~~~~VJJIHGFDDBA?HMIMPKIKPTSSXZZ\\x
g;~znpXZ[ZRSRVVTZZuYU}a\X]^WIV]][[_YHYXY\]YXYWRQMPQMMOSQQURbtsvwwvxxxz{{|}}}~}~}}}~~xy}YNKIIIFBD@A:PQQWXPPOQSTTXXYZ[n
n~fYY\XSVTWRQWVcQerXZW_hP`fZ[X\hbGOZig\[\]]WSNSPPQVVVVYZostwvvtwxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQORRRUSVTW_ux
}{\PVXTRTRQQLOMKfyZ]TYUV]ZLTZUST^ZXWWWzkXZ\\^SPPPINOWVXZZdqtvvttvxyy{{||}}~}}}~}}~~~zxwvsu{tk~~kry^[VUSROKFCDAM^lVRSNOQOQURSRRTcdv
~ymqVIKNNKMKHJDFHEC>ScURQQNKRTRMOYQMNQSUUMQSRPNLLHCIHRTUZ\mrvvussw{z{{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YUQLILIaltPQSNQRQR[RSRQRUUbs{|}{{
u_]KC>CCCCB?DPBD@C>BHGV@HNMG]iPHFOFDEFHGHBCHGHJGCBAD@OPMRdsuvustuz|z{{{||}|{~}}}~~||}}vt{mh|gnqfieeb\XSQPURsWe[OONLQSQUYSUQQTROV`klrv{{xytrnstsyx~~kLG>>:;>@@??>kQKaEFHIEB?GLMGMQUIBE?><=<==?=?ACB?><=B>JMFUnuuustvx{|z}||}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QQZ\Y^IJPQNKLQRQTUUWQQWVPX[b]agmmlokh`nrjmlqu{z}zxz||xwxdB@@A=:BCAADB\]O{NOONKLMOOQLKLWNHG@B<977599=;;;8989?;AG>\tuuvuvwy|||}||}}~~|}}}}~}xuwz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIGPRQOMPQNQRTVXSRYTNYZ[WY]^^`e`]^qvk^`gkwooljonnlfbYGFFHBAFIEEFDMRPaWRXQPSSRU[OOQVPMICF>::6486979:366796<B=ftuvwwyy{}}||{|}~~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMLTTSQQUOLRSTWXTTXRLXYZVXXVXY]WWXhsk]V`tkaa_]d`_^YUPMONLIGJKIHFCQPSZWTTMQSYS\eUOSTQNLIHC?A9988978847578588Gnruxxz{{}~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOUVXXYSUTLKTUUUUWPTUWTUR]n^RNY`[VY;DUWT[fJLPRROMMNNNLJFPPUYSTNJOOTST\VRUSRNMLIHHF??=:787659967665Wqqtwyz{|}~}~|}}|~}}y}}|~~~}||}}~}|rvqxxruuqqnppopuvtnjddjppqrpnfedc\^RTZVWUTWTRXXYYYRUOJGPPOOMRJOPPPNNOTLMIPPSTU2<XMIAQ=c`QSQPNPQPNNMPNTRPRLILKOQPQRSTQROLMKLLHCBA=:9876;B4566;eprvxy{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqpuuvcjgeWhtrrqniihpVVTUXUWURWVUZYXWUQSFEAFGGHFJDHJHGEHLHKIGLMPMG/E_R>3@>joaRRQ@FTQPQPQNQOPOLJLLOPNNPQQNQOJLMMKGEEDB;=<<9=G6677Dnquwz|{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknbePSTRSUOWVVYYVQQQO@>;=?@BAC@BEDA@GHGHFFHJMLDGCORC8ENS]gSQSAGUPOQQPMMNLJLKLNOOQMOOMIMLILKLKGFFED<AA>;@E;<89Tqsux{{{|||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLONMQSLTUTWWULLKH=987;?A?<=A@B=>EHGDFFIGKJ@FAA@FHEJOHQRa\QPRNSOOPLLOLJMLMON[VKMQOHJHCIJLLKFFFD?BC><BF?B?Adqtwzz{{|{zzw|wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B>;>A@@>ADIECHGIGIEBB?><CBAGIDMOaeQMONWKLNKLMLLLKNNSdMJLRIIIEAHJLMNKGIFBAB@?EFEHDKopwzyy{{z|zwsxtx||yznqrmnorrvrsx|xvvmpmsoutlpprooorvvrVVnqglyjmqrnnjhoHJCGLMIMPMPOGKE?B=999:?B?<ABBADDGKFDIIGGHCC?B??@A>CECKNQTLJIMTFIIJLJJKIILMOPRPKGCLGCCJJLMOMIJIGCCCDIJMLIZsmxyxz{{y|vrpurtyyvxjqnjllnttmsu{stxronqnvsnporpopstyjN`gsjt|ygosqjqheqHKCFHHGJKIJLDGB=>=:::;AB?=BBCCHFJLJEIIFGGCC;A@B>@@CECIMOGHKFHKDHIKMHJLHHJLKM]RIHDNGBEKKNMPNKMJKFGGJMNQNLcniwvw{x{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoijthdoFKCFEGDEEFEGCC@><=:;::@D@>BCEEIFJJLFIIGFFCB;BCC>@CCCEGLNHKNHDHEIMNMGILGEFIILNKJHEOICGMMNMPNOOMLIHIORQRNRfgfrosxu{z|lhjoekpmsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGICEFEBCBE@DB>?>:;;=;=?CA?ACFGJGJILHGGGFEC@=EEB>ADCCEGHIGMPIFFGKNOKFHJFEDDIIHKIFHPKDJMLPNONOPNJJHMRUTROWdaamgprosyzgehhcilgqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutvlkuumrvqlnlerMGEEGCBABD=BA>A=::=?;>>@B?@BEGJFIGIGFFFEDBAAFFCBBBDEDGGHFLQLIOJJLKIGHEFEDCIHHKJGKRMCOONQPOONOOKKKPUWVUSX`^]iaminhrsbeffdihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwuksunutsqrkksMFFEHBBADD<AA@C<89=>:?=?B?@@DFHEHFFGFFECCECDIFCFEBEGEEFGEJMKHQMJKHHIEFIHECIIJKMKPSNDQSQQRNOMNPMLNSWVWXVX^[]d`hbjigk_defcgggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxnouorsuqqipzMGGGHBBBFE<@CBD<7:=>;>:@B>??CEFDFDDGECECDEFFJEEIGCGHFHFECFJJGMJLKHJLFIHKHEKKLMNORTOISUTQTPQMNQNMQWZVZYVZ^ZXa```_hec`deggjihjfhnllomqpiuuxrrpupppruvpusuvu{~}xvtwvvvwplupmsunorsyMHHGIDACHE<@ECE=8:>><<<AB=?>ABFCEBBHCCDEFFGGIFGKHCHHGIGFDHKIGKHMKJKLHLJMKINLONORUVOKUVTQTQRLOQPOTYZY\ZY\__^`c^\ackb`dghr
hgifjmnponsqjtuxrsstrnpqvrquruus~y}uuvvvvxriuqkrtlqwquKIKHJEBEGE<@GDD@9<>@?>?CB<@>AAFCEECHDFDGFHHFHHIKJEJHHKHFFLHHHJHLLLLLIMKMNMOLPPQUVWOJVVUSSRQLORRQV[[]^[\^`_a`bd]d`ef`ehjcssfjhglprqossnswwpuvtsmoruorspurvrtvuuuwvuwtgtrkqrkrwovIJLILGBEDE<@FDDB;??A@@@DA@B?ACHBEEFGEIEFEIHFIHJLHHJJILJFJKHIJJGKKMMJJMLNONOLOPRUXVMNTVUSRQPMNTSRW[^^_]]``aaa`bdebchbdijgvlkigmosqpqpprywruutsmmssmqrotutspsvtuuwvuuteqskpqjrvowJMLKMGDCAD<?EEEC=AACBBCEACDAAEGCHGHGFJFCGJGGJFILHIJMKMLGKIHLKNQKRQLSMKNNOPPPTOWXX[NSQW\ZSVPNTUTTXZ_bb_da_`b_`eaacinhbihhmxvlhimosrpqrrrvtsusssnksqmprotvrrquvuswywutucmtkopjqtpwLMLLLGDA@D>>DEFC@CAEDDFCCEGCBIEBHJIHHKFDKJGHIIIKGJJOKNLILHJMKZfJd\KlRHON_nUls[qpbwcRPbvuhucav`Xnqbdvinzf\lt`ljT_wvijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqsqyKNJKJFB?@B?=DEFDCDBEEDFBFFGCDJDEJLLJLMGGMJHJJHKJIKJNLMMLLILML[sbdp^llUMNfs]geqlntgpi_aYnnbppbkjjgoqtetno\pugpMJryvkb`keemxmkvlnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIIGED?BB?=BFGBFCEDEEDCHHGDEKGGLMMJMLFJNHIKJILJJJKMMNMMMKNMM[roonpplkMPQlWNibtrpamov\YlQ\mmZqmkomxxtsip\`slqjUuyxpc^kfbgppjioppsspqpqqrrqqrrtlmrmmnorutqtrtuutuuzvutenukpolsrryJKGHEEEBBB=??FGBGDIEEDBFIHHEGKJGMMNKMNGLNILKIJMIKJJKOPNNMLNML\hdu]lqWlNOQmUZk^klvaldtTecNmYl\tpkilxjwuhp]_skhWbcw|oc`ggadityknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtwIMGIDEECAB<B@BFDGFKGECCHKHHFJLLFNKLRRLGMMHNJIHNHJJIHNONNLJNMJZsppoqqmlOQRnYqkgooqqomt^nXat_nopoqronusttj[]tcwxrjnzhaacfbbjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyytukoumtonssvtHKHIBEEEA@>CCBGCHIMIFCFJLIGFJMLFOJKWRKGKJJNIHJLIKJIHJLMMLIKKKSkbZi^_jcrrZ_Yjo_eeUk_c[abQ`mh\j\niid[pfdp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrutwsHHFIDEDFA@AEDDGBHJLGFDGKLIEFJOLIOIL[QJFHHKMIHJIKKIHJGKKKKGHJJLLLKIKLNT[\TPTMPONOOVQOOQOOQJJNPQdqiTYW[[\UY[]X]\\cfaafbce__fkmhmtyrtroppt
zpmmlkqsttrtvtuyyxuvqruovrtsuusGCEGFFAEC?CGDEGCIKLHFDGKLHDGIPKLOKLWMIEEHIJHIKHLJHFHHJGGIEFLHIKNLIO\W^O\[`^OXYS\\b^MYZMXaRKYaZS`d]bX[ddVVX\YZX\VY\^c_d`a_ehkgmttqqtpqr
}rkiorssstxyyxyxwxtqxrxsqrurtOBCDLMBCDBDIEGGFKJKHEEJJJGEHHPJLMJMSIHEAHFJIKKILJHFEJHEFGEEJGCJMJKT_Y`X`a[`UXYT^^Z_RY\P^\YN_\^S[^c_Z]`c`Y_b[`^[TXXZ_^dbbaceiekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIECBCFGEGGIJJIIDFKKKEFHINJNLHLNGHF>GGLIKKJKKIGEIEDDEAFJD@JKIO[cY^^a_RTSW_`\]Y^QY\MV_WKQY[Q[_aa]^ca`bbbcceZRYVU\[^c`__cebhommllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQJFCGEBEGHFGHIFGJGHFHKILDCKJMMLLHJJHJG?GFNJKKMKKKIGHDD@DAHIA?HIGO]aZ[d]_TQRX]\\\_ZKW\LR\YIM^PP]_accccb\dcbdcfXQUTS\X[a_^_aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMB@IFCFKIFFGHGGJFFFILJNECKJLNJLIKJHIGBHHQMKKOMKKIHGED?EBHHAAFEDT]Y^X_Y_[]UXXP]]QKJW^X^[]VZ`RQ__bb``bb`cbbddbXOQRR[S\^]^^___dhgljnnp{{|~{
srw
|x\SKBAGFDGMRHCRKFHHHEFKJMPEGIIKNLLILKIIGDHKQOMLPLLKKHICEAECHGBAFEBVUE\T]SV_XNTUNZ[MJKU`a[_X_^a]OYb\``_bcb]bbW__TPOPQXR]\\]^_`affelfoow|{{}
zo
~INFDFFGDIRcPDW_IGGHDFMJPPFJIJKNLKKLKJJGEJMQQNOOMNLNHKADACDFDCADEALHCLLPOOLFMFGIJHGLLMOQILOPPSPLQSRUZYWYXXdVOSTPPONPUT\YY[^^aaefchckmqsszy{z~{}{
}KIEEGFGDKM^LGHYMHHJHGNLQQILJKKNNUNOKKLGGKPSSOPONONOHKE`ED_LDfcDM[H^\smOMVmYLCP_UlWgJ]XV^DLQULMTVQRTXWTXUT\TPfZhhdYTkTWVU[\\``abbb`fignlhrz|}~}}zr{z{
~z{LIEFFHEEKOTIKG`THJOJIOMRQKMKLORUROOJLNGHMQ[YOPPNOPPJKPQI|YYrsXPmHqnoaVPqqsPCksmqspSo_[nX]V\XUkhU]VcZ`YZ_VUWjtuu_av_Xb\\f[_aaab^`bgmpl`pwtx}~vxzlv~tx~|~|z~wwNIEHMMBDLLGILFRVLKOIKRXWQNOOMQTNOQPKLOGMPS[ZTQROPPPKHZx]TxdhYRTQvgtlpbnfkQrOMwmjrpsrqrpop]ezuxqqzq~s}ku}bRh|essoss|}o~yor_``baZa`gknkblfgmw~~{xwtvzir~nt|~wx{~x|u|||ssNKF`]GAEMMHKKHJPOMMJNV^YULQSNYYLSSRNLPIQRTYWWPTPPPQKGfxlcxqmZJLUypumubnvPdeJfvqmwojfxxiWrQhzmijzz}lxzpgoXvvjvupash}ilx|o___cb[^bdgijdgbcdllppstsssyqrxbltgry{ssuy~suzn|}yxrnNJStNCBEPPIKKJLQOOOMPZ`ZXKTWPa^RVQYSMPISTUXWWPUPONRJLrouuquqdhaVnLqp^FhyWvTKhx}x`y{sna^modRgrunmypwlvstqlm\s~zkmy|lum|kpvux^__b^]_edighee^bbiiijknokqnmjpacfdowxompsynqpj{ztromKK[VHGEGRPJLMKLQQPPPQW\YUNVYUfXRRY^TMNITTVWYWOSNNNQHRmHiwK`dvvUWlOnl{sajgvUKWkh}lmlx`[pz{^`zscroxqhd|ir{]TKl_vukiu{{m~xk|p]^^b[^bdegeeebZccikkrsrwgmihdg`alagsrkhlmr|kmhk{tmmkmOGJKHJHHRQLNPMLSSROSSWRVTPWZVVTTTa`QONKTSSQVVONLMOPJHQNPULKKSTSRTPVUQQNQQXXQNPUTXXX[[USSW[WXWZPSUWWXQ]XV]USOXRWWWXZ`[gr^[\[]^_cZ_ccefdccbYccfffmnmuffgc`f_]g`dlhfgkhpzhggkujhgilQIKKLMKJTRMQQPLVVTPTUXUYURZ]VUTWUYXPOLNWTQNUSNPMLQPKJQQKQMKKORTRQQSSIHMNOQRQQQTVRXW\WSSPRUUVTZQNSRWUTYVTYUSRUSTUXYW^Z_a]\[Z\\`c\]bcdgeddaY`acabihincad^_c]Zd\bma^ffgmsdihkkedcfhPJKKNOLMTQOTQQMXWUTUWWWZVT\`VWVYUXTQPKOXSPNUPMRNKSPMNUTNQNMNQSPTQSTUNKMOQTTRRQVWUYZ[YSURTWWWY[SOSUWUTYUWYTRRWUUW\YZ`]VY_]^]\]`a^[bbchfedbX``b]`hefda^_]]^ZZ_Z_g`^]]chkagfhfd`bcaPKMLPQLOTPPSQOQZYXWXZZXXV]jdVXYZWVTTPKOVTPOTPPQNMQQORXTRQOMOSUNWRTUUONNQSUUTTRTXVZ]\ZVVQRWXV[[VPSVUUVXTWWTRRXVUZ_Z^`^V^]^`]\``__ZbbdhhedbYb`b^^fdc`b]\\\\YZ[X[a[^]]_b__bddbd__`\PMNNRQMRSPSTQOU\ZZW[[\YZ[dqmhd_[YVVXRMMVSMNROQROLPSRUZUTPPLPWVQWRSSXMOPRTXUUUSUYX[^]\[VROUWV[[WPSWUVXUSXZTSQYWV\^[__`Ua\`a^`b_\`]cachief`Zc`a__ee_`c[Z\[\ZZYYW\Y\[`^_[^^a`_b\Y`ZQNONVQPUSPUTSPW\\\X^\_W\^jqwyc\[VVXRNOWSNQQPRTRLQTSYZWUORNSXVTRTRRZOQSSV[VVWTVZX]^\\^VSNTVV\\VQTVVXYRSY\TRR\XZ]^]aa`Wb[cb^ac_\bab_dgidh^\d`a`ace_b_YZ^[\[YXYWWZ[Za\][]\\Z]`W[[ZPOOOYPUUSRWRTPZ]^][`\`U\]ijr}slh\UYWQOR[SRQTRTUTKRVU[YZSOSRVVUSNVRSZRTUTX\WXXSX\X^]Y[^TUNVWW^[XQTUXXXTVX[TSV]Y]]a^cc^Y`[eb_dd^^cca]efieg^]da`abcd_b^XZ_[\[XXXXW[Z\`][[\[XZ[^V^Y]POORZPZUUWVTTT^^`^^b\`U]^bkytl}lZUZUQQS\TTTUTVYWLRZV][\ROUSXVVSPWRSWSWUV[]X[YUZ^W_^Y\ZRWRYXY_ZZSTVZYZVWY\VTZ]\^`a`ed]^]]eabfd^_dc`\gdheeb_da_a`bb_`^WX^Z\\ZYZWV]Z]^[Z[\[WY\]VXW]SOPWYP]UVYWWUX_`aa`c]`U]^beeuzhXYZTVSV\XWWVVW]XPU\Y^]]TSXRXVSRTXRSVTXXX]^X][U^_X__X\VRYUYZZaX\UWWZZZXYZZXV]^_^cbbee]b\`fbefd_`dbb[fchecfaf__aaaa`_^VU]Z[\[Y\YY][[[XXY[YZZ]_]TY]UNTZVT\TVWYWV\`abcad__V[`da_zuohZ\ZVXUW[ZY[YXY`WPU^[`a\TUXPUVUSVVRSUWZZ\_^Z_\V__Z]^Y^VSYXYZ]bY^VWZ[[[Z[Y[YY^_``dcdeebdZafcgfe^ac`c^cciddg_g^bbcaa`^_XTZZZ[[X[XX\[Z[WWZXW\[\`]V]]SPVZWVZUYUXWX^`badada^YYadb`lfh^\][WXXY\\\_[Y[bVTW^]ac\SVYPVVVVVVSVTX]\_``]a]W`^[^\[^XVXX[[_`[^XX]\]]^\Z\X[_a^`dcdfffbYceehgd^ca`ec]fideh_f^cbcaa`__[XY[YZZXYXW[[Z[WXZTY]\Z`\U^bMRWYVWZY[\YWY^`badada]^Yacb_a`a_\\]XW[[]]__\Z]cXYX]`dd_RXYPXVXXXWVWV]^^`aa_b^Ya]]^Y]^YXVW[\`_]_YY^]^^a][ZY\_b_bddefggbZeggigc_c^afdZhicfice^bbca``_]]ZW[YYXXZYWZ[ZYWXVU[]]]``bbxKWW\XW]\\]ZW\]_`bdbba]`Xbcb`cac^\]\XW[]_]`_][`d\\XZbecaR\YOXWY[ZYWZY`^abb`ac_\b]_][_^YYUX]]_`__[Z^^`bc\[W[]`bbcedgfegd\fhhifcab\cg`\iibhife`baca_`_]]\Y\YXWXYYW\[ZWWXPXZ]acffrkJYW]ZZ_]\^\X]\^_acbaa]b[bda_cbb]\[ZWXjq`\`_]\ac_^YYcedaT_ZQYW\]\[Z[[dacbc`bda`c^`\^__ZXV[_]\aa_][`abeb_]S\_`cddfegfefe_fgihgdd`[fg^ahhbhhfc`b`cb___]][Z[YXXXVZV\ZZVVULXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vuuuuuuuvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{zzz{||||||{{{{{{{||||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vutuuuutuvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{{{{{{zz{}}}}|||{{{{{||||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||xÅÔÒÒÒÒÔ{}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½±µ´´´´¸Q&+++*%b~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}xÕçääääç{~y1333332j{éääääèÊ»À¿ÀÀ¿ÄI]}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}v~ywwwwwwxyyyzz{xnoooppprrrrrrrwzyyzzz~||||||}wrssssry}}}~~}}|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vtttttwtvwz{x{xwvx{x{zy}yxxyxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{zzzzzyz|}}}}}}|{{{{{||||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwwy|{}z{}{wwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwww||||}~|wxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z|ywwwz|z{}~|xxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzz}||||~{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyy{xzzy|xxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyxyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{|||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|||||||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqppnnnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrqppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpppqrrqqqpopooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpooppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqqpppppppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqpqqqqpqpqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrqqqqqrqqqrrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrstrrsrsssssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz|~~|vvwwvuxzxxxxwwwvx|yy|zyy|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{{z{|{}|{{{{{{zyxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}|||~|}~~~~~}}||}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~~~~~~~
~~}~~~}}}~~~~~~~~~~~}~~~~
|||{|}||~~~~~~~~~~~~~~~~~~~~|}||}}~
}||~~
}}}
~~
}}~
~~~~~
~}}
~||}~
}~~
¢
~~~
}}}}
}}}
}}}~~~
~
~{z
~|}}}~|{|
~}}~~~~~}}~}}}
}|}~~~}|}}|z|
}}}~~}}}}zzz~~
~~~~~}}}~~~}}}}~}|zzz~~}~}}~
|}}~}~~}~}~}}~~}}}|{{{zzyz~~~~|~~~~}~~}|~~~~~
~|~~}~~~}~~~}}}}{{|zzyyy{~~~}~~~|~~~~}|~~~~~~~~~}||}
~}}}~~~~}}}}}|||{zyyyy}~~~~~~~~~}~}}{|~~
~~}}}~~}}}}}}}}}{zzyyyy~~}|~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
~}}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
~}|||}}||}}}}}}}}}}||{z|xyz{|~|~~{||}
~
~~
~}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~||}
~{z|
~~}~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}||}~}~~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{}|||{|||zzy{|z}
~~~
~~~
~~~|~~}}}}~{|}}~
{z{ywz}~
~~~}}}||}~}|}}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}}}~~~~
}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~}~~}|~}~}}|{|||z{z}~~|}|}||~~|{{}~}~~}{{{}|z{{{~~}||~~~y}~v{vx}|||{}}~}}~~~}~~~~|~~}}}{{}}|z||~||}|||||}|~{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~}||}}|}}}}{|~~~~~~~||||||{~~{|{||||}|}|~|}||{{|y{|{{}{}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}~~}}|}}}}}~|}{}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||~}|}|}}}~}}~~|{{{||}|{z{|yzyxy{~
~{zy{}}x|zr}{{|||~~}}
}~~|~~}|}}~}||~|}}|}}~~}~}}}{|}~||{|}zzyyyy{{~~
~~~z{y}}zzz}q~z{|}}}}zx
~}~~}~}~~~}~}}
}~}~~}}}|~~~}}~}|}||{|}{{{zzz{{|}~~
~~~}yzz}|yw{t{|tw}~}{{vv~
~~}~~}~~~~|~~|}}|~~~~}|}}{}}}||{||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||{|{|}
~~~~~~~~~z{z}}uqz|zqz~}yxut
~~~~}~}}}~~~~}}}}|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}}~~~~}}|}}~~~~~~~~~~~
~~~~}{z{z|{z~~}~~~~}~}}z{|
{{syz|pwuvwyutz
}}}~}~~}~|}}~~|{{z|{|~~~}~~}}}~}}{{zx|vyy{qtxwvxury
~|}}~~~~}|~~~~}}z{{|||}|}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{{||||}}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~~
}}}|{||yz{z~y{yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst
|~}~}~~|~~}~~}~}~~~~~~}||||zyvyyzyvyv~|{{{~}{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~}}}}||}~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{z{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~{~}~~}}}~~~~~}}~~~|~~~~~~|}||{|xx{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxry
}~~}|~}|~~~~}}|~~~~}|~~|}~}~~~
~~|{{||yw|ywxwwx{{z{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqrpxwq{
~~}|~}}~~}~|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{|||zzzzzzxsvupprowvr{
}}~}~~~~}~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyysuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|z|}{}}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z|{{yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}{||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~~|z}|{}xwvyyz|}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~~}}}|}z}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{
~
~||||x|yzyz|}|{||}}}||~{{|zzzupxwyvu|uv|
~
{~~}y|zzz}}|~z||}}|z{~~~}}||}|vrvxxvtvu}
}
~
{||}zz{}}||z|~}|}}~~~~~|}}~~}|{xvvw
~
}}||{||}}~~~}~|}}}}~~~}}~~~}}}~}}~~|}
~
}}}||||~~}}{|}}}}}~~~}|~~~~~}}
~
~~|~~}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~
}uy~
}y|~{
}}~}~}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqtpurstv{}uvy
hzrss|s}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyy
rpvxqvtturstvinrotvnulwm{snym}rsvsvmmxlpylu}}~}}}}||}}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}}|}|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyqjoyxpkyszozwvvp~~~z~}}}~}}~~}~~
xyrz{pp
x
xyks~y{krz|m{yyt}vnoot|uwqy}}m~uo
zrr{|upozls|nw~~}}{}{|}}~}~~}~}~|}~~
}w
}~{|{~{||}~}|~}}~~~~~~~}}}~|{|~||
}{{|~{||}~||~}}~~~}}|}~~~~||}~{|||{{~
~|{}~{|{}~}||~}~~|~}}~~|}||~~|}}||}|||~z{{|~
{{~~|||}}|||}}|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}~}{||~}|}}|}{||||||}{{{}|{~|{|}}|}}~}|zz{{||
zz
~|~~||}}|}}|}z{{z{|||{{{~{{}{{{~||||}~}{z|z|}
|
~~~}||}}{}}|~zyzy{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yyzy{}}zz{{}|}||z{}||}|~~|{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yz{{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|z{{{|}}}|~}||}~|{
~}~{
~{}}}~~~~~}}{|{zyzzyz{|yzz{{{|z{{{{}~}}}}||}}|
~|~~
}~~~~{||}}}|~~}}~{~{{zyzzyzz{yzzz{{|z{|{{~~}|}||}~
~~}|}~~
~}}~~|~~|~||~}|}}|||{{zzzzy{zzzyyzz{|y{}{|~}~}}}
~}~~~~}}~~~~~
~~|}~}|~}{~|}}}~}|||}{{zzzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFK=8765999<>9?<D:;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÔÓÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>9=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<9<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÔÔÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9?CE@<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËÊÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÙ×××××××Ø×Ö××Ö×ÚÚÚÚÚÚÚÚÚÚÚÛÜÜ×ÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILO@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÏÐÏÏÏÏÏÏÏÏÏÏÏÏÖÞÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¹´ º¸¸¸¸¸¸¸¸¸¸¸¹°½æáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVN<::77>C?8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÌÐÒÒÒÒÒÒÒÒÒÒÒÒÑÞìëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¤ZUVVVVVVVVVVVRy§£££££££££££¥SRSSSSSSSSSSSKªòëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;?C>6:7>>;=B?9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÌÑÒÒÒÒÒÒÒÒÒÒÒÒÑÝêééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¥_YZZZZZZZZZZZW|¨¤¤¤¤¤¤¤¤¤¤¤¦WWWWWWWWWWWWWO«ñêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<;;<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÍÐÒÒÒÒÒÒÒÒÑÑÑÑÐÜèççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©ª£hdeeeeeeeeddda¬©©©©©©©©©©©«babbbbbbbbbbb[¯ïééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÎÎÎÎÎÎÎÎÍÍÍÍÍÍÎÏÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÏÎÏÎÎÏÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÑÍÌÌÌÌÌÌÌÌÌÌÌÌËÎÒÒÒÒÒÒÒÒÒÒÒÒÒÐÍÍÍÍÍÍÍÍÍÍÍÍÍÍÔØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<8@B<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÐÔÒÏÏÎÐÓÐÎÒÔÕÔÐÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××Ö×××××ÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÖÖ××ÖØØØØØÙÙÙÙÙÙÙÙÙØ×ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÏÊ¥ÑÏÒ¹¾ÔÆÏÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÏϪ¬ÕÀ°±¸¹¯¡ÒÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D?A98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÐËΣ Ã}~¯°ÒÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<:6?B@B:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏѽȻºÔÒÍÃÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8FA?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÏÒ ¾ ÒÓÀ ÐÏÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏӳľ©¯¡¹×¯¢©ÔÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:=?>=<9@<<::9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÑΡ¬ ©Ø£¡ºÔÑÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÑËÚ¨ ¦Å¢ÑÉÒÑÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:979;::;8@?:<<9<>=;;:?9?:;9=>==;;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÉ¥¯Ç¡ÒÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;547<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡Ê»¡¦§Ï¦«¤Å´¤¦ÖÒÒÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÓ¶Ö˧׹¿ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFHKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÒºÄÕÑÔ˽ÕÒÑÂÓÒÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÒÕÔÒÒÒÓÕÓÓÓÕÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEK>>786967899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EILAALD??;9889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEGIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDJ;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGIB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?:8776=??@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@BB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEEC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<;DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGGNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsoupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjcmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸········¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µ¶¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>F@BC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢¢¢ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¥¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;;;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤££¡¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::88:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££££££¢¡ ¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¢¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥£¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>98;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤£¢ «cimnifm £¤ ¡ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9;;>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:=>:?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_]]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=9F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VPQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
}§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s}~
z}}¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXO[\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
z||}~x
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPFMHSWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~}}¨®²¯¯µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWLO_^\NUUbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
£ ¤£¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJCPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©¨§¡¥¨¨«©©¯¡¡££ ¡¤¤§¤©«®¬¥£¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdVOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®ªª«¤¡¢¤©§§©¨£¢¤ ¥¨£ ¡¢©§ ¢¢®¬«ª§®¨¥¤©©©©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPORd\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨¦¥§¨¦©¨£§¦¤¦¢¡ ¡¡ ¡¤¤¢ ¢¢ ¡ ¢¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOWO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤¢ ¢¦¡¦®¦¦¡ ¡¤¡ ¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvwa_\UYQUV[c^r_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;><@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯ªª¬¨¨«°©¨©¨¡ §©°²¯¬£¢¦¡©¥¤£¢¦ ¥¤¢¥£ ¥¢¢¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\V\hdocniib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶¯³°«±²±£¢ª©§®·¶´´¶³¯¬«®«¶°©²±®§¦¢££¢¨¥¡£¡¤¢§ £ ¢¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxib[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>AE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ª²¸¼¼½»º¿´¯±³µ´··¯µ´µ²°¨¤¢ ¤ª¦¦¡¤£¤«¥¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨¨«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__amhukpgiibYSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°±´µ¶¼¼¾¼¼¾Æº¸·º½´¯µ±±º¸·²³²ª¦¦¤¤§¨¤®¤««µµ®³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YSah`fsositdidb[LK>:8898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÃÆÂù½¿ÀÀ½¿Ä½¼º½¾´§ª±À½¸µ¹À³¯¯ªª¨§§¤¯§ª´¼±´µ¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`a^^jbbnwuvnl[bQU\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAB;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅÆ»ÄÀÅÆÀ¹¯½¼À¾¾³«ª³»¾´µ·Âº¯°µª«¦ª£¤§±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklfnuqruqf^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÅ¿ÃÂÆÅÀ±¾º¿Ã¶¶º©´³´©«³»»±±¯¬¤¬®´§ª©¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tkkndomhqxnyjia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÃÄø´À·´¼Á¹··¿À»®¥®·¼·£·°¦´µ¬®¥¥£¨¤ ¥ª³²¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{vnkiguZfrwsxfg]d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÊÆÄÃÃÁľ¸¾ÁÃÀľÁÏÏÎÆ«¯¶´µ« §´³®«¸µ³«©£¢©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuueeijg]jomxwcb``^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÏÏÌÃÇÆÈÉÈÈÉÇÅÉÇÈÇ¿ÅÇÄÄÇÈÊÒÏÒ̼¸¶´¸¸Á¾¾º½º¼º¼¬§ª»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqobagugiitmxl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÍÐÎÇÌÉÂÁÇÁÊÊÈÆÌÊÍÅÆÅÃÆÅÉÍÐÍÏÌÇÄÀÃÂÉÍÇÅÁÄÇÁ»¾´±°°Á¾¿ÁÆ¿¾¸·Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlieuosb]bTWTSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<:>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÅÇÈÆÒÉÁÂÿ¿¾ÄËÈÊËÈ»ºÈÇÉÍÈÃÈÉÉÅÅÃÂÁÂÇÇÉÊÇÌÈÇÈÍÆËÏÅ·ÀÀÀÀ»º½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrpfegdjeajmno^Y\VVNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾƹ»Ã¹¸¹»½ÁÇÁÄÈÆÇÉÃÅÄÀÄÁÂÁÄÁþ½ÂÀÀÁÂËÃÆÌËÅÈÑ°¾½¸º»¼¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbabccjbfcZZZ\YQNE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶¸´´µ¿»½À¹¾ºº´À¸µ·²®º¼¶ÇԹ˾Á»¿Á¼»Ä¾»ÁÄÀ¾¾¸¼ÁÁ˾½ÉÄÀÀÊÀ±Á¿»¸»¾¹µ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qc`bbgjgfiei]VVTYOSKE8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´µ±°µ·µ»Á¸¾¹¿¼¼·´·¯®·µ·ÓÀÔ»¿¼»ÃµºÇ¸¶¹»½¹º¶»ÅÅʽ¹ÅÀ¿¼Á¾¸Æ½ÁÀ¼Å¸¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zxpmeefoiekhXXNKKKRILHC9=8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿½¼²¯¬±°·¼·»½ÁĹ··¶µ¹¹¹ºÒ´¸Ã¾Ƿ¹¸·µ¸º´¸³»ÅÆËÁ»ÆÀÀ¿½¼¿ÉÃÄžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksebm_\THKJDJBCG?9;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼¼À·ª¤¯°¸»²½¾»Ä¶µ¸¶¸ÀÀŻͨÂËÉÆÏÂÀ¸®µµ¼¾¸º²¾ÄÄÊÅÁÉÿ¿¾½ÇÌÇÇÄǽµµ¶Á½º»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qelintnxcgb[cQKTHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?>??FD@A?>:7?@CC?A=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼««£±¹½¾²º¾¼Å¸±¸¸¶Ã¹¿ÃĹÊÌÎÑÌÊĵºÀÃÈ¿¾µ¿Á¿ÆÆ¿ËÆÿÁ¼ÀÃÌÊÇÅÆÀ¹½¼Ä¿À¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_b^`aNHM?E@?DC<;::;:8;<:9<>9:>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´¼Â½ÍĽ»Ä¿¹±z
®ÆÉÈÌËÍÊÆÂÄËμ¹½¹¹ÀÿÈÆÄÁÁ¿ÅÀÊÉÃÃÄùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw{_pc[]_^SI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA??ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸µ¼¶º¼ÆÈÛµ¿¼°jqqXbfx¨ÁÆÂÇËÈÁÃÁÀÉÊÂÀ»º°´»½ÀÅÆÅÅ¿À¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}zmsxsgp][^\YQEDCMIAE=G::59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯·¶²µ³·¹¼»¶»¼½ºÒ²Áɶ´tyhb~i[Z\p©»Á½¾ÆÀ¹À¼¾ÅĽ½¹²°®¸·¿ÃÇÃļ½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸¸¸½¹»±¶²ÈÀ»¶´±°·¬³©°³·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|vluzpni[_`YSPAEHGK@DCH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÁÀ·Ð¶¦Æ¶gRnnOsw^Y~±¹·¸·Âº³»·»¾À»»¼®¯®³²¹ÁÂÄþ¼¿»º¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ¯µ´´½º¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsvvwnq`_e]ZTJ<??FF=FCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Ã¿¶É´±¡gXUpS]zMhµ¶²²·¾¹²µ²¼¹¼¶º¾²´´´°¸¾ÃÆÄÀ½¿¹³¯²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtvql^b`[]OHA>=HCFMC@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·À½»Æ²
XSgfRWW©~XZ§Ã¹³°¶ºµ´²¬¼¹¸µ¸Áº¸³±¬·¼ÁÇÿ¹ºµ®¥¬³°¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wo{ourmc\fX\]RNMA>IBAJI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º¯¼³¸º·»Ï¹rRe|fTbm¥½cSv»¶±´µ²´¯¬»º¸¶¹Àö®®ª²¶¼½¹¶²±¤§§£¦©®¹¬««¥¨¤«®®§¯¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmuik][jT]\OMHDFLBFNF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹º¶¹»µµ³µ¹Ç¾ dRrzyrupum¢Á¸³´³°±°¹¸¶¼¸»¿²²²®±®¹¯ª«¬£¨¡¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬«¯£¤£¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndT`cW\QNLH@HQDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²²À¾¬V^Äfuuv~}¯¿¸±¬³¯®¬®¶¶²´µ¯ª¤¨¨ ¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨ª«¦¢£¦¢ ¥£¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vybwln\QhTPNGOMLBOQ@>;>39:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¥¬ª§½Éµ¤Vd
~itlgcfkuqp®³³ª²´®ª«¯°²³®¥ ¢ ¤¥¨¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¥©±£¥¨ £ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uu}mk{dhUQcMJHGNRNJNG<E@=2?759;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡©¢´ÏÀ¬]xuxtdiYPOSRWW`w©µ®¯³µª¦¬«¢ ¢¢¥¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¤¡¯¨®²«¥ªª ¡¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}vx|dyy`bRU`IIJKSTIRPL9?B67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥©ÍÍozvtcSMTHPIPMLUdgµ°°°¸¬¦¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§ £±®²°´©±¯¢¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|uvshle[SZYMQJNNTLSLA7>B68=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢¤Ê°hjksbRSU
ujSOJJQVYc§¯¬¯§¢ ¡¤¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¾°¬±®©ª´±°¨«¨²µ·³¸¬²´¤ ¥¬¡¡¢ ¤¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xuiwu]lZR`HRUHFUVJBLG=KH8E<67;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¡¬xnk`TLXzª° lRHEGLQV«ªª©¤¦ ¨¥±ª§®£«¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼¶½³³µ¢¬¢©¨²©«¨§¨ª§§ §¨¥¤ª¡¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vqmivmhm\X[BWNJGMGBFM<>L=4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·¤°¦¤ m`UPQ[¢ÝàÃp[KD@Da°©ª¥¡¢
¡«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶ººÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸³»Æüû·³©³ª³´¯³®ª®£«§¶²¬¢°¦¡£¯±°¤¥¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¥¦¢¤
{tqkkurphW[QETHDIOH>EA4FH95;=6;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ sbWSTYm³ÜÆ°«¬mU[¬°¦££¡ ¥«¥ym ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿À¾ÇÆ·ÃÉÉÂÁƾº´ºº´»·°µ²ªº²®»·¿ººª·«ª¸º´¼®®¹£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢}yqkdhoxjdZ[FKLEDSLDBE7:?;549978>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ²²¸§¡¡«ª¡¡¡_SQUYnµÅ³Øʬ£°¬ wsqnp¦®´¹Å»ÍÇË¿ÂÌÎÍÌÇÉÑÌÍÌÇÉÅÆÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÒÓÍÓÐÓÓÌÊÂÅÆÆÊÈοÈÑÌÇÅÇÅÁ¼ÃÁ¾¿¾µ¾³¿¿ÂÃÇÄÇÄ®¾¸²¸¼ÃÁÁº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
xtsebgrof^ZYCNLCEPIDC@5558:B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¤¨¬ª £|SJORg¢¶²¥Ì»±¬£yrroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÏÊÒ×Ñ×ÒÔÖÓÓÈÌÇÌÍÉÒÍÎÓÍÅÈÉÊÁÆËÇÈÉƿó³ÈÄËÊËÎÅÊ¿¾¿½ÁÇÄÌÌÈɿÿ¯³¨¢ª£¦©¬¤¥¦
zrtvhcgvidVWQDMF@IQB=B<:22@<D<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢¡¥qNEMUwÅÊ®£±©¢ ¤ |wpkebhqoq{
vpnqtp
³Â¾ÅÑÐ×ÖÖÒÖÍÔÖ×ÔÓÑÓÔÔÓÏÑÃÐÓÖØÕÖÒËÉÎÑËÆÍÑÉÒÕÖÙÕ×ÓÖØÎÒÉÏÑÌÎÐÌÒÏ¿ÈÇÊÃÌÌÌÎÏÅÆǶ¿Ê¿ÑÍËÏÅÉÈ¿ÃÃÈÎÌÏÐÏÍÊÇ͸·»¨¥«§£ª¥©¨¨|xsvoc`erb]R\IJGAEHI>;A8=4585;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¤¥¡¬xMIN^·ÛÕ¸ª ¡wic`____^_`^blusqpolrquÄÇÆÔÕÖ××ÓÖÏÕÔÚÔÔÎÏÕÔÔÑÑÌÐÎÓ×ÖÓÕÐÏÒÓÑÉÓÑÇÐØ×ØÑØÒ×ÙÕÖÌÏÏÉÍÒËÎÐÀÆÂÇÅÎÍÑÑÑÈËÍÀÊÌÅÓÎÌÎÈÄÉÆÆÈÌÊÓÓÑÕÏÒÌÓÁ¹Å±¥¨µ®§¨¬¥²¨°³¬¬
|zqstmacim_VP_JJCFCRM?<>54:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¦®·¨«·×ÔÕÙÙÑÎп¼Ìɶ¾®¦ª¨¢£³[em·×Ư¦ }qecc__a__a`_``_`fmppnkorwwÌÀÒÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÒÊÏÌÓÖÒÑÖÍÏÕÕÑÆÑÔÊÐÔÕÖÎÒÐØØØ×ËÈÎÄÉÏÌÊÌÀÉ¿ÇÉÍÎÏËÐÍÎËÎÎÇËÐÐÊÎÊÂÉÆÉÌÊËÑÒÌÓÑÑÏÐʽȹ°®»¸µª¶°¨¸³¿»±
zuopnkadnpaW\ZIFFDMWE;@=33<=87855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÀ°©¬©£³x§ÎÔ³k^^^adb``aa``a^__^]bmroostvvy¤¾ËÕÑÖÔÓØÖÎÎÔËÍÎÅÎÊÒÒÏÆÎÍÍÔÌÎÓÍÊ×ÕÐÌÑÔËÌÐÑÓÊÎÑÕÒÕÕÊ¿ÉÁÅÌÂÈÉÂÌÃÅÈÊÊÏÊÍÌÐÍÓËÆÈÏÌÈÇËÄÆÁÅÊÌÍÏÑÆÐÎÍÍÌÏÅÇÀ¸¹½Ãýù³²¾±»Ãĵª¥¢
yprkmg``phXXhVLFLIPPB;C>;67:89:57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÄÂÁ¿»µ²±Ç¸ËÕÕÙÚÛØÌÌÏÈÖÕĵ¯´¨ «£¸Ô¬|eabb`]^acb`_``aa`_][]grqqrsqmry¤ÆÓÏËÐÏÔÕÉÅÉÉÆÆ¿ÃÆÏÎÇÅÇÍÊÒÈËÎÍÆÑÒÏÎÌÔÊÇËÎÏÇÇÏÒËÐÏźĿÆɽÂÇÉÎÅÂÈÀÇÍÈÄÌÊËÏÈÄÄÐÈÆÂÆÈľÀÇÌÌËÎÂËËÈÇÌÐÄÅÇ»ÇÃÉÈÂÏÁ½¼¿°ÁÉǹ½ª°²§¥¢£wotdk`^fpa[W`GHHGIMTG?J=64355=<48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼ºÍÍÆÐÕÕÙÚÛØÐÉÏÏÑÓȶ»»£µhÄ®~
s`[^^^`^`cdc_]]^_``_[Z\akrrookloo}¸ÑÈÉÊÏËÍĺÀû»ºº¾ÉÆÂÃÀÃÈÊÉÈÊÈÁÅÌÆÈËÍÉÄÂËÉÁÂËÐÄËÈ¿¹Á»ÆǾ¿ÆÏËÿûÉÇÈ»ÈÆÅÊÀ½ÂËÆÅľż¼ÀÃÅÌÅÅ»ÀÊÂÅÇÒÄÀÈ¿ÊÉÆÈÆÐÃÃÆïÄËÇÃÊ·¿¼º´©¬¤¥¬£¡¥£ {vstfiZanlZ[XRDLFBGDLDFS@54334?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÃ¾±¯¹b~¶z
vxurp_[[]``bcdded`\\]]_^`[YZ\borokilposƼÉÅÌÀÆ°¶º²²³²±Â¼¼¼º¸ÁÁÁľ½¹½¿¹ÄÊÅƽÆÀ¸»ÄÉ¿ÂÉ»·»ºÅÿ¼ÁÍÃƽ½µÁ½Ãº½Æ»Âº³¼ÅÄÁ¶¿µµ½¿»ÌüµºÈº¿¾ËÃÁÅÂÆÉÆÈÆÐÆÂÌDzÇÉÃÎÍÁÅÃÀ½³·°²§¨¨¹°¥°ª¬yvwjdg`hocV^YJFJFHJAEBEI@9:648853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÅÂÄÈÎÑÊÊÊÇÍÍÎÑÈÐÆÕÔÖ×ÍÊÏÅÉÅÇÁ¹Å½«¬®oev
y~|ttc[\]^``bcabeeb]][\^\^]Z[]]hsqmggnpry½ÌÀúÁ¸®°°§ª¬§¸µ·´³³´º´½±·°µ¯²»Â¼Áļ¿ºµ³º¾À¸Ç¹´»¶Á¼¸½ÆÁûµ®²¶º¿´Ä·»µ«¸½½¿½±º¶¯¶º³Å¼·®»¿µ·´Å¼¾ÃÅÀÃÅÆÈËÅÀÆÆ»ÇË¿ÏÊÇÃÆÂ÷ý½¶¹¾Ç¿¬µºµ·¶ytxfgebkn^V^`FKHHJFBDAEE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÍÈÅÈÍÌÐÌÍÈÊÈÊÉÊÄÏÍÒÏÍÅÇÁÅÀ¾¹¸É¶ª¯£eiu{x~wx}ti^]]]_`_`da^cec__\[^\]^Z[[]_lpnhfjnnr|¤Ç¿¸¸µ°«¬§¢ª§«³©«©´®¶°²©®¦¬²¼º¶Ã¹ºº±«µ¹»´Âº°À±¾¼»¶»Ç¹Â¶ª¨°±À¶¸½¯°§²³´»¼«µ¦®µ¯»²°©¹°»®»¸»À¿½¹Â¿ÇÃÅÁ¼ÆÁÇ˸ÅÇÅ¿ÆÃúÄÆ»ÆÉÌ˳¹Â¼»³svvkiablhYWW[ALKMIEAC?FA:9:995854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÅÏÇÍÁÃÆ¿ÄÄÃÃÊÁÉʾÀ¼Áº²´µÄ¯ª¯al{x~z{wn^]\]]_`^_dcbccb`_][[ZZ]ZZZZ\dnohfgiknr¹°µ®¦¥§§ ¤ ¥«®£§¢«ª¬ª°£¦ªµ¶±½¹¯·¯©®·´´¼¸´¼¯·¹µ²»Á²À®¥©¢«±²³¨½ª«¨«¬´³¦¨¡¤¯©²¦§¨®¥¨·¬±²·ºº»²¼½¿¾Ä¿µÂÀÇÈ·¿ÀÄ·Ä¿»¿Ä¾ÄÈÌÊ¿¾ÃÀÀ©strji]aodWVXPHYRSKFFE>>@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃȺºËÁ˾»É¶½Ã¾¹Ê·ÁÃÁ´¶¼¶±¯µ¼®¨©eo{~~xt|swe_]\\^_`^_ccab``_^]\ZXZ[[YXZ\_fkfegeikor
ª¥¬¥ ¢¥¤¡£ª¤¢¥¥§¥ ¤¦¬²¯¶·§°«¨ª´ª´º±¶µ®¶¹±¯ºº±¶¤ ¤¦±§«¨¹ª¤§¨¨§² §¦¤¦¬§¤ ±¬²´²´°µ¼¶»ÁÁ²º¾ÃÁ²¹¹Ã³À½¿µ¸»½¾¼ÂÇÄÂþÀÄ xpkaf_ko`TY^HNgOTGEJF<=?=:;;825536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:7676788666;::;9:;<859<:>>@;ȵµ½¸ºÀº½µ ¡¦º¶«³³»³ÄÏÉËÂƸ·ÇÁÌ¿¸É·»Å¸³Ä·³¿À¬¶¼²¬¥¯´ ¢lx
|yusomkjiqi^`]\\\^__acb````]\[\\XYXXXVX[^_dcbegggjmo© ¡¢¡£§£¥¢¨¢«°¬±¶£©ª©¬¬¤´¹·°¬³µ®²µ®°ª¤¢²¤¦©¸¢¦¦¨¬ª ¥£¯©«§ª«¬°²¸¯¸¹»°¶»»º«³³¹³½´¶±±µ´¿¶½À½ÃÁ»»½{sk_e^ddXTW]IW\KPGIIFA<??@;?<04535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÏÈÈÀÆ»»ÄÃϾ¹Ç¸·¾·²Á´±»»¬ºº±¢©«§q
xrnpnkb^bff\]^]]]\]_`abccba_\[[ZZYXXWWWXXXZ^bdeeffhikr§¢¢¢¨¥¦¢¦ ®®®² ¥¢«§¡µ±²²¬¨¯²§º³¦µ ¢£¢£¢©µª¢£¦¦¦£ ¬¡«§£¤¦«³³ª´°²ª²¹´¯©¯²²³·³®©¬®²¸°º¶¹½¿·³±
yue^e^[YVSZUK[QKIEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ·½¿¶¾¼¿²¥£¥±Âµ¶½´¸ÂÌÈÆÀŶÁ¿ÇηÀĽ³¹¹²¿¶±¸º²µ¯£ª¡yxoqtqhfdhec\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWVWadecdeddhjv¢ ¡¡¢©¤©«§¯°ª£¤¸© ®¨¶ª¦§°¤·°¤· ¢ª¦ ¬¸°¢¡¤¢¡©©£¡£ªª°¨´«ª¦²°¥ª®²±°¯®¯¦§§²®±´¯¼´¹·®£yud^aVYWSRTKM^LOKGGLLE<@><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾¸½®§§£ª»À½À¹®´¸ÁÌÇÅÂýŷÈ̲ÁÂÁ¼»µ»¼µ¹¹°°±ª¡©|wqilrtphhedfb\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[bcbbcbcdfj ¡ ¦¥¤¦§¦ ª¯¦¢¤·¨¡¡¢¨´¢¥¨¥°¥°«´ ª¡¡±±¢£¡¦§¡¢£¥¥«¤¥°§¥£««¦¨®¯®«¨ª©³¥¦¬¯´±®¼µ±¯® zvrda\Z]XNLRHRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8846863321./2556;:8;7876<;:;;A8x»»±µ½°»±¸¬¥§·»¼Áź±¹µÄÉÉÀÃÆÆǶÆij¿ū··½¶½»»¶³¨£s~vncafihfhjgjm`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWTTVURTRU``_`a_`acdi¤ ¥¡¦¤¤££¢ª«¥¥±ª ¥«§¢¬©©¬¡¢¢£«©°¢¡¢¤ ¡ ¡¤¦£«¥¢¤ª¤«®¥²©¦¥¦¦´¦©¨³µ´¹º¯©¬rpo`[WVURGQOHZ[ORITKSLEFIC8;;=<8667:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:8698598989;9@9{µ´´»²°«²¨§¯¹¹³ÀȺµÀ¯ÅÈ̺ÁÊÌȵɼ±½Äɬ±¸Âµ¼Á¼´µ«¬¦r{tiijlgjkmkjme]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\]]^^__bdm£ ¨©«¨¬§¨¥£¤®¤¥¯© ®«³ ¥¦¢£¡©©¡ ¡ ££¡£¡¡¨£¢¨« «¯£·¥££¢¬ª¨«¯²·²½µ³«¯ssh[XXRUQEXLQ[XMTNPLPQINIB<??A?<65799<<987:79:;<=>;7;;:=67:;8976989:6:=99577571141-+/434988::8::748=8?9~³¨³¶®©§¯®©¨¬·¶¬¼Ê»¶¿¬ËÆŸÁÎÏȳĺ·»Ãȱ¬¸¿·¼¾»´·§ª
ytvwnmhmnmpggigd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUSSNPQYZZZ]\\^_`d~¢ «ª¦®¬¨¯£¨¬¡¤¨§®¨ª¥ §ª¥ ¡£¡¢¥¥§¨¨ ±°¦±¼§£¬´«®§°µ°¹µÀ±±«}qrbVSVNRIFVPRQLLWMJLNRGMJACFDC>@65889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8³¬¦±·ª¦¢°«ª§©²±¥¶Æ´¹º³ÊŹºÁËÐ˱¶·¼¾Áñ°²¸´´»´¶¥¤~vkglnqnqjpkdege^ZYZYZZZZZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajzv© ª¦¥«§ ¥£
££¢¤§ ¢¢¦¤¦¨¦¡´²¨²·¡¢·¬ª¤²²¥µ¼µ««±£xrm]NQQLOCMNNPKFNNJJNMQIMJAGLHGC=858889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12876:999984988A7w¶§¤¶±¥§£©¥ ¨¥¤³ª¢²Ãµµ²³ÆÆ·ºÃÊÌƳ¬¹½´·À¯©±¦®º°°¡zm__frpvqinieghj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXYX[]aosvq
¡£¡£¥¢s~{¢
~~ty¢£ ¡££¢´¯¬¯¬¥¸¦¦±¡±®°»ª©¯ªvrbUMROPMCSNLQMBPQHINRMHJJCJLFKK<749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-11764789::65:87A7x·¡£´©¦¥¨£¦¥¦¦¦³§¦´Á¸¯´°ÉÄ·¹ÁΞ³¬ºÁ«Ã¨¢§¦·®¥¢}w}eWV_gfighncjhgb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTRMMJHNSSSTUUWY[]ilrm
|tNXr_;Wo|s
yz
}xqo
}¡ §¯©¨¨³¢¦®¬«§´¢©£~rm_[NSRVLDTJPMLFNOIELQMKOJIMOFII<7599999:7:;:>>8:==6:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· £¡¦¦ª §©§£©°¨§´Á¹°µ°Ç·³½Ï¿¹¯®µÂ§ªÅ©£±¤|su]QLRUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`mpi{tPB@}
y`JQnx}
n~wuuwpQ{~xvhw~¤£¨©¥¤°ª¡¤¤¦ª¡©¢¦¨ule^[HQQRMIUMSILKOIHFJNLMTKQPOFIC<769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')+*,4833979:99::::?9w¶¢§¢¯¡§¨¥§¨¯ªµ¼¶¸·³Á»¶§¹È¸¶¨¨µ¶ª²¼¦©}wqnXMKMNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZntw~ji]Ut|
{vxsnuptz~«
yzhv{prmxxz{vrrwgu{{© ©¥§¤ ¤rh`\\JVORGJXROJLMRJJJLPHLQLRTLEHA<77;99>=:;<98@?::>=7==79937795675252572/2.,//200/-+(().1272198798775:<;7v®£¡´©¯©¥¬°±ª½´²»¸¶º´±·º²ª¬©¨²¯¡xz}wppiXKHHHGEHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQQSV^u}ygw}hyvx}r|w{ok~}s{}tfv|lohs|lyq}pmuqiq~pC
wwz
}{u~£¢¥vnmebZWWTQJSUTOPNPVKNKNOJQNHNOKEC<;79;::?=9<:99??;8<=7<9999266856633621224.,,-..-0-+*''*.1362/876966527995y¦ ¦¯¬®«¨©°¯±«¼¸¬»¾¹³¬§°§¬¥©¤
zxrovqlnkXKFGEA@CDILLMQRPQSUTTUVVWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNOQTX^eprm§ªÀ~uyc|xo|yz}omytxjjq~Inhw~licly
ksl|nr{impsz}~{vots
yxp|~mhmnnWUWTRQYORTTSXUMNHNJMNJCHNGE?:89;99:><9<;::=>:8:;9?868727575541442/024*+**-.+-*(*(',-1250,5567485HA895w¥°¢¬ª¨µ¯®¬´¿ª»Â¿¦¢¤¡¡szvpvmqmflkYNEFC@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORWZRY\`§bitzepmzvtlts|jkMy
g1vsl~~tfet~
filukq|gqq{n{s}|qpnum~wyujyyvjjngdWQZWYY[MPUVYXNIHEJJHFBAFDCG=998;9:9<:9;:::@<9:<98>787715244533645031.**+),,++)(+'),,226,+5775478iO8;5n¤¨®²¦º¯«²°Â±»ÃÇ
yqt{qsqopfqg_TFIC?<;9:?@ADDEGJLOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQVLAIQIb¯³ r|xl}mr
zyr sxsu5q¨¡¡¢
vp||sgfbjnrmpuioXupwl{}mqmpzsuncv~
ux~~zqpok_Z\][YX`^RN[ZXWLHJEJG?CABG>CD=;97=;:;;9:99;:?<88=:8;66651121353475531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥µª®±®Á²»ÁÆ}n
ul|uxxmwnwdi^IPG>@7448;;<=>@BEHLLLMNPQRUUVWXYXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~mw|~
~v¢y~
aªzw~sz]dqtz{wlgjbyo
znwtzpszwkni^w}|
}q|uw{}uorsef_[[]S[f^WQUX[UGJJDKG?F@DC>AA=:97<;;=<::99;;=>79>9986754244004645654-,)+('''&(())((+++/00Uq<23331E~W4=9\x¦ « ±¨¯À±ºÅºz
vk}xs¡}}p~zhvkRWL@E211267688:<>BEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJi{y|q|z}~v¡¥¬©H®¯¯¨sm|}hghx~n
q
Gkwqyvhmk_v}
zzuv|wmow~srqjZ]\[ccXfe[UOPVYPDLKFNICFCCA@CA=978:::;;:888::?>6;>7585773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|~
¡¬¡¦¸¯³¼³}tp~}}~¤
x~sx_cVKB60./23123668:=??BEGHJLNQSTUTTVUSQOGC?80,#[>?84.]ps£UFIKMNPW`YpZ\^j
~
¡¥»±§»Çè¡¥{rv
jhouqw{v
}nvug¡«¡{zzogkx~x}qjc]ZZ]i\af_YOKNWRQIPJDNGCKDCADCA<:87=<:<:88778:==8<=68656623445576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupfx{¤¡¬¦«¯°¡xw|lpj]BA4--//./02234779;=?BDHJOQRSRSTTRPOHDB<87/9D><<63.lMPHIKKKNV`cggmu £ª¥£¬¨¶¢¨Áîǯxº|¡
¢
lpuvql
r¡¥µ©¢}kjk|ra\b^Yfj\kk^WKGOSQNMLFIPCDNFBCEGB>997=<:;:987767;:6=:785456345566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYppuqv~§ ªge¤~y}
xxgMR>/..,/.-/000212457;?CFNPRTPQRSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} ¨¦¢¡¢¨©«¨¬©ªµ«¿«¶ÈÈ·ÉÑϾ pi«©¡§¢wz~¡{v«³ }¤¢¦¶°¨lss|~zpg`[_^afc`gg\QEJKPOIJLFFMCHLFFCBGD@:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Ppu`n}aw}|ªªBD}x{
w_bP460-1/,.00./..0015>AAMQRSPRSUSNSLEE@<>=GG@A@8662<9;FHGIIMOQYmw£§ª´½¸¥®¬¬§¨´¬°·²²»±³¾³Ä¬»É˸Ŀ¸¥£°²¬«¤
¦¦ ¢¦¢ª¨¤
£¡ ª ¤©±£§·» £°££¤¢«¯³µ¢¥ªz{~}f_g[da]cc^ff^[OCIHTOFHLFJGEFHAKFCFFA:87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicWjpXzv
ÚÈsV|z
qna@E64<2/110-,+-1/-4?DAMUQRSUUWUN[PGGD<>>FHCD@8;<5C;=FKIGHROPW ®£³ª²ÁÇë³Å¶¬³À³¹¾¶¿´Á¶»»¤¸Æ©¶ÉǶ¾¹´¨£´±±§¯ª¤v¤¡«±³ª¨®µ»²º¬¯µ¢±¬±µ¼·µ®µ §¨£¨©°²º¸¸§·©¥ ytX`cUea`b_`e_ZUJDELUQHJJDIGEA@@KDAMF<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AEWQJL[ZQcdWzuq}
v
~{¿»£¼´y
zxn]V@EM<6:46AB764//6CHCQ[OQUWU\WP_UIKJA@?GKFED;>@7D7?BJJEGWTP^¥£±´Ã¶¸ÁÌɶ»Ä½³³À·¸Âµ¿°¸t²´¦ºÅ¤°Æ¹±³±´¨¤µ¶ª± ¢¢¥±¥¬§¤ ¬³º¢©²ºµ»¾Ì¿ÅŽ½³Â·º¸¿·º·¹¬°¦±ª¾°½»Â¬º¨®ª~{jVa`WidhdVZcYVTIGGLQGCHIAHD>?BBK@@LC99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FQLALRWTYUZwjp
nzryb¸¡£{z||}wyueO\dGEL:Qda[^SF>;HPDZdQQYXYgZT``MSOEA?IJHEFA@C=E6B>HGKLSZT]¯¸µº¹ÉÀ»½ÉÌ»½À»·µ¼»·¾µº²Æ`u³¥±«½ª¥¨«ª£¢²µ¡«§®¥§§¥¤¢§°³§²²¼¶Á½ÓÉÊÓÆÂÅÌÂÊÃÀ¾½¿»¼·´°¹··ÃºÆ½ÃÉ°¹ª¢¬¥¨·~q^a`\Va^geRXaVRUIEENKA>GD=KB=B@=F>;H@796379>489:57045/26389374526?8@>GKRTSQPOQRQJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRLQ]hllq
slsrsÕÀµ }xz{yt}zkepuY]\Peeb`ed][XW\MdmURmm^o_XgeUYTJDAKKHFHHHHBI9D?HKTTV\Z[¹À¹½·ÆÀ»¹Ê˺¶º¶¸¹³¸µ´®¶¶du¨p^¢¬¡¢¤«¥¨¥¤¬¤ª°·°½¹ÔÐÏ×ÏÉÌÒÌÏÎÊÇ¿¿ÂʽÁ½ÂÀÅÄÅÊ¿ÈÏ´¤»°µ°¬¹½~xk\_[X]`YbbQ[`SQKCBEFE<@E>BHB@C=:E>=J?47535;=468977022/24169775555D3ELM>51/006:477@IOJ;-&**(-./,@M+/54mI0Ht?>BD@CDFKODR\Yi_pnlouu³¬¡¡
~|s{|ts{xlmu{hreilifjih`fihmZmt¤¼g[oh]ZYTHJNPJKQLTQILAJGKP__bfia·Ç°¹³»¾¶²ÄǶ°¹±°»¬³±§ª·¬¶§§N ¦¥¡¦¬¯¨¯§³´ÔÔÔÖÑËÏÓÕÎÓÏÌÅÂÊпÊÉËÉÒÈÍÍÂÐÒ¸°Ä¼Äº¦¶»Ä¢mb[[]W_WYeYP\WNQCBHEBH;AD>AH??B7;D>@H=46655;:687654/10146278875367C5B8?-0,1348=97,.,1;FL=),(.0007K?-46TW0DwC;B>EBACJM?UYSeWshqoyy ª¦}
|p{r}qxulqx~q{mxslhpmcimpyiw}~Ë¿Âߧmcxnc[a`JPRUNY^P]]NQNTQUT\nnwr®¸¬´§°¶«½À±«µ¦¥¸§¬®¡¬´£±®¦«¬¤§¡¬¬ÎÒÕÑÍÌÒÓÔÐÔÑÎÈÃÔÑÈÎÒÓÓ×ÍÒÑÅÒÖÆÀÎÇÈ鿸Ðxmd\a\U^Q]ZNOSPNH>AFBBE<@B?EE>??:===<JA45465<888664412/03526768533;=<E=@11+/349>5901022-2EO3)/3.32=N248C}_2AtD:==I>@CFH<VRMO[u
wmwp}~¡¡y
{r~z
u
ovsls||v|swqjrrioqzyr{¾Ë~±vrvhaj]CZZ[VfdXekTX]\`c]cx{ª¤¤¡ ¡©¦ª±¹ª¦´£¢¢£¢§±¦k¢
~¬
§°¡ ¤¤¨ÈÍÏÇÁËÐÓÑÔÓÎÓÍÆÖÓÍÔØÖÖØÕ×ÕÉÔÚÍÉ×ÖÑÊÄÃËqnb__WRXR[OJGIIJ@;:;EBD<BD>HB?BB;;9<:GB46544<5687543250/2546745544<>=E?A62/-15;=081/254/-.;R017/532ED28>nb5=tM99@I<AD?A;PLFKYpu}hsyr
w~xs{}w{nwpmuvx}s
|ylvto}vuy{µ<AÆ¥~|ieVICecfchjdoy[_fhknin ££¦²¤¤³ ¢¥¡© ¢±~
z~©£}«³§§½ÃƸ¶ÆÍÒÐÒÐËÒËÉÔÏÑÕÚ××ØÔÙØÍØÛÎÉÚÚÒÖ¿ÌÌ´vumc\YRUPYUEFJIEE=:79@AC:GE@ECADA;?;;7DC75655;0689443341014558744449@>DBC<33.6FTVOQJAJF?1*(.BT29254/7K75<`bA<svV87AH:?C><9QECJTlnopaqqs|~
|x
zyqz{uz
zp|opzq|qnzuw}|u|°tX©Â¶pnb=^hrpqpnxweioruxr{ ª¡¢¥¬
}
~my
{®ª¦®µ¼¨½ÆËÈÉËËÏÈÄÒÊÔÖØ×Ø×ÔÛ×ÓÙÛÖÏÛÚÑÖÈÕÌxzhgZYORS]HBEII>A>=7:=?;>H=@AAADA>>:87DB755479.566435532323647553457EBDCEB56<FNSM[nfcnsk`V>,4LG865433BF4=W_hLux^8;?F<<B<:9D?CGRk_mdbfkvqy~
||~wyn{{tz¡vutu}toot|
zv{·Æ¤ÂÉ·xpeNeczw¢yyw{|vm¦ £«
{|¡¼¡¨¦¥®§µ¾ÀÀ¹ÇÉÍÎÅÍÊÑÖÕÔÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÛÆ
yxehc_RVVUMKDMC;==<9:<>9>A6>?@<?><9867CA6455=80665547745613854564557HH=DJE7925;H>;::7HP\ZRUXK9T>;95327I8=NYMHxxd5=>C=<@:6:>>@EQ_Yea][htzylwvz|~}
z~
z
{u}tn|}~t|}x}ynt
~
|~z©Ã »£}}r~s¦
{hGq¡¤
¡~¦
¤¸¡§ £®¶ºµ«¿ÅÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Ü·wwviidV_ZSONHDLB==>99::99<=6@>><=9:;;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8589?=DRSRX^UXfmmmiqrx{{}|z|{~uyszsm~}w n¨
z |~£¢£®
Wr¬[¢£¢
¤
³¡¡§±¸¬¥¼ÁÇÍÇÆÏÌÏÌÏ×ÏÑÔ®ÖÕØÚÙÚÚ×ÖÙÙn{sfe[\WRVWC@ID>?>:48:;7:;:3;;?=>7;9:1:G=:27=@50677255?65;55858:57735HR7GOK994=EJB>1FCLA98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:<@;BQKKSYPTcbxlb~nmwxy~z}|{vsp
{vvut
}~¦£¥¢¨r²¦¢ ¡¨¯n·ÄȲ¢¥²c¤ÍÈ
ª¤£
¤¨¡¢²´¥£¼Á¾ÇÅÅÉÈÉÂÊÓÌÍÔ¨ÒÑÖÖÖØÚÔÓÚÎq~gb]]\NITYABGD;A=837;<:8=649:<:82?9929I:>67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF>;88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBcFv}|m~xz~z~vv|lnz|xx|~£³§£ª³¡§¥£®¡¸²¡¡¤¯£¤§§¬¯¤ À£É¹«£¦²
¨¢
t²¤¡} ±®¢¤·¾´ÅÇĽÃÿÆÍÊÉÒ¦ÎÍÓÒÐÖØÓÐغqxu\_T_UOHJNDBCE5>:77:?;<7=42669774=5;5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=88567=:JFDGN[\YJf`;Hz{n
z|x
~px|~}orz}|x§»¬¨²½¯¤²³¨£¢°¬µ¢¸¤¤©·¦¤£©©£¯°© »»®Ê¡j¶¸«°£«½£^ª²|}´«¡¡ ¥¯¨¡¤³¸«ÂÈĵº½»ÅÇÇÂÑ ÆÉÍÍÄ×ÖÑËÔ¡oyg[YS^PNEC><CAA8?875?F<<5<35355454B39:BM:B;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPdGb`bpJ@s}um}}|pww{ªÂÀ¯½Æ»³³À¼³¬«³¶§²½ª»¤¨¹¸«¦¦¡¢££¨¯²±ª¤¢¦¥¤º®©À¼²¹¦¤¨~½°z¨±¬ £¬ ¡§¦¤¢¤°³§ÁÆï°º¶ÅÄ¿ͦÇÄÇüÕÑÍÄÊrr`ZY^ZLJBK@FG>A?B;:4>A<=5=6>333242A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GE?CF\eG`igZ]\{uo~{q~zz§³ÆÉ¿ÂÌÁùǼº¯«¹º²¶º²À®¥À¤«¯»¼ª«££§ª®´°ª ª¡°´§£ºº¶Á¼¬¨²¥¤¨
©ÄĤz¡¦ ®ª¡ ²¡¤ ¥£¦¦¤¯®¥¿Ä®¨·µÉþ¶Ï²Ä¿Ä¼³ÑÉȵswk[W[iQLHCLJKJAA=CD<5AD;:3=8B332262A05IEM>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBfZNe\fTcjyr{xz¡¨º½ÇÈÉÁÒÉÊÂ̼Á²»¾§º¿¾¼Ä·¬Á©¬³»¾ª°©¤¥£«³¶µ ®¥¢£³½©¨½Á£··°«±¬«¬©§¥¥vz
££©¥|£ ¢µ¥¤£¢¥¦¤£¨§¢²¬¨¼À沈·ÌÀ¹¯Ä³»¾Â¸ÂÃÂÀlx`WVZZJKMJFDDHBBADL:4DH9;4<7E.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQG7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>jH_XaZddV x
¡®¦£Â¾ÇÃÇÅÓÍÎÍË»Á·°¹¼³¼Ë¼ÃÁµ¶»³¿¹¼®¯¨ ¨§¶©²·¬¢§¡«·¸©¤°¿Ä±¾¹³§ªµ³®¥¬¨ ±Å§}}ª¥¡£¢Z¤e£²¤¡¬¬ª§¦ £¨¥¶«©¹»Ã´¥³µËÀ¸ª¶¬²º¸®¨·º½¸kmYVTTMEJSNK?AHEDHGG95FM;>7=@J.32025B55PVN<LFKRLOHGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|gV;=@BFBqFiIRebLF¥¡©¦¢¯¾®¡Æ¼ÅÄÆÆÎÎÎÒʾ»¶±º»»¾Ï¶Ä½¸¸·²±µ³¸³«¦««¹ª¨§¯¯£®¤§¤¤µÀ°«¬´¿ÃºÀº³§¹µ¸³¯¥®®¥¡tÁ}
±¥£©¡ `J¥T°®¤¯®«¥ ¥¦¢´©ª³¼»»ª°²Ç¿¹¦¬«±±£¡±²´¤ole[YNOKEOPPQ;GJHGICC>:KU?A:=EM07544:B34NWO<JKOUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@BAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}hW;:BC@=QEWSsbWFHª ¢¨¯§
¡£¤µÈ´©ÆºÂÃÇÊÈÇÌÍƾ»³®¹¸ÀÁ̵ǺÁ¸µº°¯¯³´¦£ª´´©©¦¬¤¥¤¨¬º¿¨«¶·¾Á¿¾¹³²Ä²¹½¬£®µ¬¹¦¦v¿¯¡¡©§ ª¡§nv¢¢®²¢ª¨ªª££¥¨¢±§©«º¶½³²¾¹· £§¨¥§¬©©bd_^QJLFHNIUL=MDNJKBCD<QU=AABDO18=77?B75UXN?HNQYSPQUKQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=..R`MUHe^HE«¡º¯««¢£££¶Æ½´ÁºÂÁÆÈÅÂÍÈÁ½¹²¯¸´ÀÂʵűÁ¼´ºª¨¬°¢£ª´»¥¨¦«ª¨¯§£ªª¾¼§¼´¸½Ç¼·µ·Á±¾À´©µ·«¿¥¢¢ ¼ ·©¥¢¡¨¥³¡¥¨ª¤¢¢ ´¯¥¤¯««ª¤£¨©¤¡¡´´ºµ¨µ²³¢¥ª¡v^[_]JHEFMQIMEFGBRLJBEG@VRDH=AGQ1;B7:BF79\YKALPTUSMWRNUJD@JJNO9C?5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-1:g\FCCpbGE§¤Ã¥©ª§¦¡«¶Ä»¾·ÀÂÀÇľÍÆ»½¹²¯¸³¿Âȵ¿¯»¶¸¶¦¤ª« «ªÄ¢¤¨«¦«¯¬¡¨¨¿·¦¾±¸¶Ç¶µ¹¸¿²¿Á·´³´¯¾££® ¢¢¥££½¤©¨« ¦½¢£¢©«¡¤ µ¬¥±§®¦© ¥¤«±µ±ª¥ª¬ ¨gbX`]NHGJNKHEDIA>PH@<GIH[ROK=HOU4BF9>HG5Ca[KCNRUWVQXTRUH@8QQPM:G@4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,/Mv\4KZ5,MnW<-=)#zbQ5CKQ:nRF<KxebVL¢£Å¬¡¬® £¥¦©«¶±£ª³µÄĽ¿¶¿Â»È¾Êȶ¸µµ°³³·Áƶ¾°¸´¸µ¦¬ª«¥¤Á¤©¤©¬¯¢¦§½µ¥±¼¹·¶Ã²³·¹¿²ÄÀ¸¸®³µµ£¥¡® ¢©¨«£Â©¬¦¡½¡¤««¬¦¡W¦¡ ¸ª¦µ£± ®¢¤¦®²«©¡¢¥¥¤`dYc`KHJJNEEAFJ>=JB99JKN]QQI=LV\9FI=DMI8Hb\LCLPSYYVWOZ^IA=WQIK?H?5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWrHE6=ue\KN¡Ã¨¥¢´¢²¨«¤ £©¬»°¨¬µ±ÈÅÁ³ÂüÆüÄʼ¯°¶°´¯¿Ä´¹±°¹´¬¨°©©¥¡§Â¬¬°©£°©¤§½¶¦·»½¯·Ã³²ÂÀ²Ç³º·¬´¶®ª¢¦¤¬¢¨«°¯¯»²¦ ©¨¢¤¸ ¡¤¯¯¬¥§¡¢§³¦¦³£®¡¡¦¬°¥¦¡
`eZgeJILJRBC@IG;;G?99OMU^RSJ>O^]=HPBLLI9Mc\LELRTY[SUO\bHA?ZQAHAKB7FELKM?;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<v]^?[T^eq@8;HweA4£ 褪²¡£´ª³¬§¢¤²¬®©»²¬°´´ÆÀÄõ¿Ä½ÉĵÀÈÁ´«µ¨¯¸¬¿Ã³·®¬¶¹¥«±«ª¦»´§°´²§ª¹²¨º³·²¹Àª·±Ã½´Æ§¾¯·µ©¨«¡¦¥¢¢¥¯¸®²µ¶ ¨¤¤ ·¢¤¥¯±²§ª¦¡¨¡¯²¢¦®¤ª¤©©ª¡§
xch\jjMPMNT=CANC::I?77RO]^RVQAW`\BJSHVKH:Td\NFON[W[RPQX]GAB[PBG>NC9HGHOP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1[bZ33806p[bH05IphVCWFyfC;¤£¡¦¿¦¨¯¯¡©´«¹°«£ª´¶±°¹·°·¸¸Ä½Ãǽ¼ÄÁÆÀ¸ÀÆÀº©¶¤¬»¬À··©¬±º¢°²¥§ª¹© ¦°ª ¯´³ª©¶¶»¬³³º·¬¸°Ãº¾¿¦Ã«°·®©««§«¢¢ ¡±¯³«°¹© ¦¡·©¥£¢°±´«²¨« ¥¡£³°¥¨¢¨¨¦£}
jhl`lnWPQZTACET@;;HA7:XPd^PVWDY^]MLRN^KJ>Zc^NHPN[UYPKTWZI?DXPDF?N@=IGGQPB=DFBM?:1D?77547?=95E4+75/251.-.,1=*'+=\p=>1.0dZd@1647gY`F(?8l}h[V;{cC=§¢©½¡«°«£±¸ª¥µ³¬ µ¼®³¸¼º½¶¶À¿ÈĹÄÁ¿¿¸Ä½À·¯¶§«·±»¾¿´¨®±¶«¨§¨§»¤¬³«¢°°³«©µ´µ½¯±µ¬°´±ÁºÅ·«¼¯±¸¬ª£±¦¤©¤³ª³ªª³§ ¦¤´®§¡¬®±§³±ª¤¨£¡¨µ©ª¦¥¢
{elrgoq^FYfVDCMXDZ9HB6>]Qh\NY]G[^]NMRXdJJC\b_PLMNXWXPJVVWL=EUJEDAM@AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,,%2+*5K1/'__aU150=`V^8)C3YT\gK6zfL@¤ ¤¬¶¤©¥®®¶ª¯µº§¦°·Å·±¶¾Á´´ºÅ¾ÌŹÂÀ¹¾¹Ã·À¹²´«©º¶º¹½´©°µ§«ª««««½«®±£« °³®¶²¹·ª®®²¨µ¯³»½Ê²ª¶µ±´¯®§¡³ ¨ ¥²£ ¦¯¡¤¢¥§²©¡¦²¬ª¶¥®±µ¯¤§«·¢¡«¥¢¡ z
{jmxmu{aE`jYIHYZ={JFD6AbTi[M\`J[]ZRSRbaLKE_``QLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`U`/5(C_Q\.*B/JGP[H3cYTKD ±¨±ª¦¤¯®µ©·´¹¤¬³·Êº´ºº¿¾´³·ÃÀÌȼü¶½¿¿·¿¼±½§º¸·¶Á¶ª¬±·¦®«§£°ª¯»¤¬±²§¨£±´°±°µ±¸²©®«²§·¯µ´ÃŶ©µ¶¬°©¨£¶ §± ¤±§ ª©£¦¥¥·§¢±´¬§²§°¶¬¤ ¬¨©¸¢¥§£ v{
mpwt{~\Kel\KNc\>b{GI8GgWf\M^bMXYWTXTi]OOHa]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANHf27'GbLV%-B.=ELQ<3rkJCC¥®¥®«§¤°²³ª·±· «µ¹É¸®À»Ã·²±µÂÂÎÅÀÁ½´¼¿¿º¾¼²Ä§©¸°¶¶¿¼®ª³² §°¦¥¯¥²µ¬«±±©¨´º¬´²µ¬´¬ª¬¨¬©¸±°Ç¿¸¥º°©¥¨°¦¤¤¯£©¯££¢£¬£ ¢ª¥¦¹¥¬µµ¤ª«¨¬¯¶®££¨ª ¤³¢ §v~
}||psq}|}\Sdn^NYf\FD[G;NmXb[L_bNVWVWTXg^QRLcZ[TKGOTSNGIVS\N;P^IBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Bc;6*HeHJ+:I?3BIS,>k<GHª«¢©±¤©¥³´²´µ²²¡«½Ìº®À»Ç±´¬´ÂÂÑÅƾÀ²½À¼¿·»Ä§¬·¬³¸»¿¯ª± £§ª¨¤°£ª±ª¯¬°¯°¯«³»¦¶±²©²©«¦¥£º¬ª±Â¹µ¬º¨¨¨ª¨±¥©¤¢®ª¨¢£¬¥¬¢§©¢¬¦£¬¸±² ©¢ «¯±¬§§©£ §
¤~~
|w~
trquk_Y`ncQsq\K;|F>WtX`ZNc\NUVUWQ\b^SONhXWWKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*35>10485(5/*,.30;),,'%234$,2-860)(1<]J0.JgDF8<B05EKX1@Z>LE¨¡ª³ªª°µ¸µ®«¥ªª½É¼±½·Â¯±¬³ÄÃÎÎþ¿³ÀÂúÀ³Èë®·²¸¿¾²«¤§©°©§¨±¦´®ª°®±°´´»¤¸³¬¬®§« ¢¯·ªªº¶¥¶µ£ª§¬«ª¡¨¦¦±²¤¦¦¡¡¬ª¡ ¦¤¢ª¥¢§±·®£¥¢ª«©¡¥¤¤
£¢|zt}sv£xj^`nfWecN?gLEbyWbXReTMVUUTO\]aUKMiWUWIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*49?./463)4+*,+.#4.-+&(+79*&6+<-2,&06WZ.0JgAA<<C+:JO^4D>HFD°¥£ª±«ª¶«¶±«¥¬ª©¼ÀÀ¸¸³»µ¥²°ÄÉËÑ¿Á»¸¿¿Á¹Á¹Àıµ±³º¿½²°®««¨¶ª¦¯ª¹¯¨±±¯²¶ª··¦´·«¬¤©ª£³³¨¨¤´´ ¶ ª¨«¨«§ ««¨¹¶©ªªª¢© ¬©¡ ¤£¦£ª§µ®¨¦ª¢£¥¦§ª¢¤£~
¢tytzw~oqggpx\`skO^VHmxUdVRbOMUTUPOX[bUHPiTVSGPYUI>IHOQPxLMV=<KD?@A<@CUC9AK=5;E13;97*4:=+-341*8**+*,))(/*&)%3;,$2)2021%/2Qb02?f=NX?C,>LT_/Jj6OD;°¡¦«®¬¥¯³µ¯«¥°ª©º¾¼À°®¸¡¶¯ÉÇÈÐÀ¾¼º¼Â½ºÃÀ¾¿®±²±µ¼ºÁ±±²«³¨¤µ©¥³³¹°£¶±°³º«¹¯©¶¬ª©¬¢ µ§¡¯²¢´ª¨§ª£ª¡¢¬¨½¯¬®¢¨¨ ¬°¡¢ §§¨ª°©£¢¡¢¢£§©¥}¤
xt|uxyztsyh£ui^ektg}SXp^JxsSdSQ^MMRYfNLVYdXFSiRQ?BNQaQ:IHLSIqQLS;<I?;<=;@@W<<?H73CB15:93-5::)-31--6)(+-,42#2)',%.;.&1.0-14%,0Lg:38_=ad?F1CP[[*HM9UA4² ¤¦¬¤§¤¬§´²±ª¤±¨ª¸¾Á¼¯§¹ª¦®°ÉÇÈÑü¿¾¸¾¿¼É»À¸°¯´±º»·À²³»¬¸¬¢´§§¬²¶¹³§¨¼µ®¶½°½¦¬¬µ«©¯£¤«ª§ª²¤³¨ª§©£©£©§©½«´¯®©¤ ®³£¤¥¥¤©«¥ª¡¡¤©¨
~
~}
¡~r{y}|hw|ztpp|gxdagcq
zmfx]^VBWzmTaPRXKKNqu]HZ[gYEUfPD>JNDCA9HGKS?jbJQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KH0%90%,,09/,,+6'17#-0GjI14X=fcAJ7GS`U*=:DW>*± ©¥¥¡«¥·²²¦©±§¬¸Á½µ°£¹¨¨±ÃÉÉÍÁ¶½¿µ·¿¹È¶Ãµ³±µ±½·¹½µ¹µ¾¡³§ª«°µ¸´«½¼©³À³» ¯³µ©«°£¤¨ª£¤°¦° «©§¢ª¤¨ »§®°® «£¤®¦¡££ª£¤¤¡¦«{{~
£|yl}vxxc{{qpprwgsjgdg`msmaip`pA\xlU^OQQJJMTYWM]^lWDX`O^PHMDF;7HEKO<rhKK9AE;;==;;=J49B<3;G<4?18-78;2(09/,5..=-*K>*49&'.34.0+/3&,:$41BhY13S=e_DL6KVdO);2OX=#¬§¤£¨¤¸¯®£¯°ª«¸Âº³¸¯«¨´ºÈËÈ¿·Â¾¯´½·Ä¶Ã±®¹±³À´º½·©¹¸½«¤´¨©ª°®¹±ª»½¤°Àµµ¡®¶µ¦¦§±³ ¤¦§¡¥¬¨© ª®§ ¦£¨°¸£±® «¡¬¤¦§©£©¦ ¨¡©}~}|¡x
|
{sp}qst`yxinppnh}qczliec_e
_ZskrLL~hXZMPLJHPRPIN\_nSDWZRgOHLEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-6**<%53=fd24M?e]FO=RZgH*>/XW5(¦ ¡¤¡·«±¤³´ª¨¹Äµ³®·¬®°µÆÈÀ·¿Á¹°´¼·¿»¾¯«½¯´¿°¼Â¸©»º·§¨µ¨¨«°¬³°§¾·¥¼¶°°·°¨¥§¯± ¤ ¤¤¡¯¦¡¢§¯¡ ¢¤¤¢·¯¡¦±ª¬£¯ª¥©¥¦ª¥£¨¡
z~zx
~yzprwoot_ywdllkihmerjkdh[bs_ZlviZH}][XOOJHHRUF2:_^lPCWVYeMHJEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<#8R=*113>D5,-'42+;+139cl84GAf[HTCT]hE.;1_S,2£¡©¥¡£¡·ª¯ º¹¦¬½Ä³°¯¢´¯¬®¯´Äļ³¿º·°³¹¸º¸º®¿³´¸¯¿Á¸¬½º´¦¢³«¨©³«®±£Á¶¦©¶µª²»©¦¦¨°¬¢§¤¦¡²¥¤©©¢ ¥¤¹¨¤§¦¥¡¨©¡¡ ¢«¡£§¤
y|
|x
{w~{ltrllsaxuhgigenghhdfhj_gbifZezcaRsT[[SLIGIOS@!+j^jLCVU^`KHGEC.:B<F<6KPD8:D357==895?:;4>8@K=>93)8><:9*6@3.E4(+,>0-N?.+-7,1195,&.5-80576`tB3CDg[KWGU`hB378bN'2¤£¤¦¤µ¬§ªº·¨¬ÃÀ·°¬¢´§¯¯·ÀÀ½±Á·±®±¶¶¸·µ¬ª¼³¯²±½À·®»»±¥¶¬¦¥´©«® 멦°³«¬´º¨ªª±¦ª§¤¦¢¤ª¡¢ §¶¥¯ª® ¡¡ ¦¡ ¦£§x
w{~{s~}fxokjlguskbgdctbdefeijchpY^X]ldaMhWZ`VIGHKMRX?9`liGBUS\[HHFEA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A=-5B37=+*,0A*JK./*+3722(57$+7.72685\yN2>HiZLZJVbfA:3@dG%5¤ ® ¥´±¢±¾·¡±Æ»¹°±¢¶««®©¸½¼»À²¯®¶¯³¸³§«¹°®®´¶»¶¯¸½¬¦µ« ¡°¥«¯¥Ã¡³¥¯±¯·µ¯¬®£§ª¥¨¥¤£©¬°¥¹§¢¡£¥¡¨¬©¨¦{t
|ofymhkjgqrk\hdbr`dgjmlgjhfl\lmuqaTbhceYIFLMOXQPUaeT@VSYTFGFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24:6#3*)6.55465Z|]19Kj[M[KXdd@A1IdB'4¢±¡©²¯¸À¶ ´Á»½¹±¥¶¯©®¥·¹·¸¬»¯ª«·ª´¸¥³µ±®©±¶¶±²µº§©¶©ª¢ªªÁ®¥¯°¶µ¬¬±¯ª££¬¨§¤©£¥ £«ª©º¦¤ ¡k¢q¤v«¨ x
mi~wpl}o]d`gkuw~fhuifW\itnNPjdfqf^dfnli^]_
hOKD8ETg^JGPPUUKGS`oteE[QUPFGFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,,08>G701.*.*/668,#1'214:276Xl16Ok[N\K[fb>G1Ob<+/¤± ª«£½Å¯©·Â¸½½§¶°¦«¤·´²³±¹ª§¬´¦°µ£§·¶µ¨§¬¶³®´³¢©´«¢¥§¨®½§¦¯³·¤¨®ª«¦¡ ¨§¡¦¦§§ §ª£´¯£¢££¡¡¡¥§«rx vif}sx o~|¡ {tvlmheczlqbTmcmiqXjpnW^i[kj[pmyriZ^FN>F^MFRVWQQRWTg^LYKRRPEGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82*/1<I9/01.*/(-4583%&2115>1<8Xu25Rk[N\L\g_=K1V`7/(¦¬«ª¨ª¿Ã¯²¹¼·À¿ª¤·±ª¬¦³µ®¯³¶«©¥±¥µ³¬µ¶´¥§¨³±²¨¯ª¡³©¤£¢£¯¶¤¦¦¶¼¦¬§©ª¬§¦¢ §¤¦£¤¤©¢¢¥¦ ¶¤£ £®©£
±¤yÔ¨ÀÇyx±¥·dÀ¿yy|Êq¼Å{r¶§º{l±«°xhkX±®oei¼¼nhzmqØ~Sjc¶²~qu¡ªWOWaOVNFT[XQPS\W[P@\EQNDFI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww21Tk\O[M^g\>L1[\41!¥§ª¥²©±Â½²µ¿µ·¾Â«¦´©¨¯´ª¯¶³¨§¦µ¥§¸®²±µª¥¤§²®±¦ª§¤²¤¡¡ °£´¹¢©¨¡®¤¢¢© ¨¡§§§¡¦¢ °££
°kjª~geq¦q®¡¤~wº|k¡v±_j´[¥e`fzfjxj©e¾rg¦v±j|±xtcmm§m[ EigEu`}f{£§Y_«ixzj§7J¯[WTlcZKOW_\WV;NOWV/ITSJCEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:6/'$203B/=;Uv2-Vj\OYL_gY:M5_Y31¡¬§¥£¤ª±·´½¾°·Å²¸ºÂ§¨°¬¯©©±®¤°º¯¤¤®³£©¹©³³°£¥ ª°¬¯¦¨£¢±£®§¡´²¡ª¡ ¢ª¤¡¡§¤£ «¥¦ ¡
µµx
©µw³·©~k¦z
w«gj±[¬{tpx
°vwqkjl|N¤XHcc~ch¦`yruR^P©mcq}b.Q¢n[Tkg`LK\dX\ZB>°xWXA#MhFCDA@A19>88:84;:9<9:A:E::;6:CB8=?KNH:5:AFB@AD<FD;0201;F,0.840,.(/3,>831/2-D1<<S}n3+Xj\OXM_fW7J9aU50³¦¦¢®©§³¬ª»¶Â°¼Â¸·Áª¬®¯¦®²©¡¯»ª¡§µ£«µ¤¦³³§£¡§ª²¨°¨¥ ° ®£¤¨´®¡©©¨© ¥©£ ¢¥£¢ª¥¢ Õ¹p°Â~Æ|Ö»|¥¤z¢¥z¬yU¯{~j¹Z¹w}¦|zªy{±mt»
oO¯§ÅQ zc`ªbsrl_Sµ´È|c¤3Bv]QihdP@XfZdaJHMlKZSOYfZCC?E?0<<59;74<;8=:<C:F:;>6:@C;6@OLH<9;DHCBCD<EF81211DB./0483+-).323971#%5*>3==Qwj6*Yi[K\P_fT7G:aP72%¡±¨¨¥³ª¥´¨¥¼·Á°ºÀ±µµ¼³¶§±±£±³¦¯¶¨¨º®¢¯± ³´° £§©°©´©¥«¢«¨°¨£¬¢§¡¦¢¢¡¢¡¢¢§ ¦ § ²nhµq«p¦r´sr¶{¤¢~¤~°vÒÑu[®|
¤oª¦k
}}{±sx³et
nfRÈZÂ\yb_`vsb^YÊo¿uMKµSUÆdTQjceXAOj_liPUFI9=WR[WXHC?J<2?;5=<46>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>II:1746@>/.24252-).26,742&60;5:=Pqh9'Wi\BNT_eP5G=aM62.¢¤¯¬¤ª»¦´¥¨¶»¼²»¿·¶´»»³¥´´¢²²£ ¬¯¤¦º®¤±°´¸© ¥¡ª¥±¨¬ª¥©£© ¦«°¥¢¬¥¡¤§ ¦§¢£ ¢¥¢
¬{w¨v£©o¨¢¢~®
³\r³R®}¤q×}w~w¯w´aelZ°XKuyf`^wwgj]¯wxl5yÈ®²_BTo]h`EOk_qmVUM/eciSYQ;AD@L:5?91><16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK96<46:>/04333.2..18*.32%!03767=Pke>&Vg\@=V_cN6GC`I:77 ¸°³Á¨²§ª²º¸´¸¿º¸³¶½µ¥¸´ µ ©«§¶¬¨°±«´¤©¨¡µ§¦ª£¥¢£¦§¬¯¥¡©¢¢©¦¡¦©¤¬ ¡ §©}}¥y¡ªp§ ¡£ª|yo±Z¨ ytØvt§¤|{²^d }l\«[Zhgªcr{kq]¬Z kneOJC¡\ZMt]cfMZa_st_JU5JYHE=HFAL35A8.;>05A78@<6=<F?:<6?=B7.HVJE@H6KIN@IK@EN::@4.;>002154+*05/7,&21($$6671<PeeA&Uf[?1U_bL7FI_C1=7¡¾¬´Â®«©¦´°¸±µ¿ºº³±·¼©»µ ±¥¥§§ª±©¯ªµ¬ª®¡¡ ¦¤¤¹¢£«¡¢ ©°¯¦§¦¤¨«¨ª¨ ££ ¡¡ ¡«®mr´t©w¦s´yt³¤£¤u¸o{¢kk¶Z¡ei ¢§mr´t²jku³af¢nj\`M¡|Rs£ly~no\¯V<wfTon.[§ObRkeblZb\`q|cSYP>>mo3BB@?L9!7@6.;@37C58??3;<CDBJFMIF62JTKEBJ6IJP?HOCFP=<E50;<000/75,+,426/#00,,289/9N`eD'UdY>/U_aL5FM^91A8¥»¢²À®««§·©¸¯µÀµ¼±¯¹¸«Á·ª«¡§¤¢«ª§µ£²¨®ª¡¨ ¤«¹£¥£¡«¶¯§¬©¦¥¤«³¤ ¨«°¡¢¢ ¡©«Ô»t±ÄÃ}Õ¸x§y¢¶u}wv²`ºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¡~t«}¾ns¼t²uxmpm¤t½]w}[ay¼jZV[iy^i`dfbmxoY[YCA@r?CF+5H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-6@9¦¢¼¢±Â°©ª¬±§¸¯¶Ä±º²®»°®Á²¬¥£¤¡ª¤ª²¤µ§¤ª¦¬¹£®¡¦ £¯¹°«£§§¥¤¡¨« ©¤²¢¤¦¡¡¤° ª
µ¸xµwnlnsnyrÁ»¼z²¨pt¹|{|¤»¹½uy³£tvut°ufi¶trpw¶^y}gymyb¬pu
X[§jDdZTf_c]bPgfqmuBMPLD;ZL?J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7KT_G'SbW8*O]]=+;VV'=:<¦ ¡¿¥³Â´¬ª§¬«©»®°Æ¯µ´¯¸§µ¸ª£¢¦ ¬¥ª¦µ¨¨ £¬¤¾¦¡ª¢¡¨¡²µ¶¤¤¢¦¥«©¥¦¢©§¦£¨ ¬£°©§¢j~i§xs~uze{½¾Àºnq
_rjZ]adk`cmvbke^`cqhr}fj~qsy}|b[wthP\n|{jXlyrIJo
pMtMEW\faL[Wfc^OZmvjrRODEN;HI<M?2,2A?8/5?C<9;@;=C>RVVWYZ[[\]`aaa`\UG5DFUEJOHFPIIH;8=51:.0;:.0-76=5&"/*2,%;8-7IR_I'S_V4)P^L(3>[O'?2>¨¨¡Á£´º¶£¬¥®§¨µ²¬È¬°³¬µ£¾±²¦ £©£¬§®¤¥µª¤¢¦©¿¨©¦ ¥©¨°²¿¬§§¡ª¨¤¬ ££§¬¢ª¡¯¦°¥¢¨£¤§£hn|qv´©
¡ z¤
li||tqxyvv{jstudw}vkpzm`c[ohMXXej_WYpzonfSOFS9OZNRO(+;JB635=@A9:C><ENSSTVWXZZ\]`bba_^^[TKCSGKNDGPLOI<:;389,2;820)6IRO8")+/2#4;*7FO[J'R^T10T^:+=8]K,<-@² ³¡¿¢¤±±· ©¥³§¥°µªÉ«±¦µ¦À¨´¡¥¥¤ «§¬££·¬ ª¦Á¬¤¢£§¨§²Ã¯««©« ¡¢¥¯¦¡¤§¬¦¡° ¢§ ¢£ {©¨
{
£~e¡³®vz}vyzogykuyrhtzvktcxf_hdcdfjXk{qjj\RLPD_UF@?>,4@F;45;>A;<?>>HNNOPSUVVXZ\_aca_^]]^]XVJKLBIOMRJ;<:786/2964.(&$-1..)+*7%+<(6CMLD/T\Q05M[17E4\G5<,@´ ¹¯¾«±² ª¦²¢¬³°Å°ª¬£²¯¼¤´ §¢¡¨¦©¦¤¥³µ¯¦®¾ «£¡©
©¬¢³Ç³©¤ª§© ¤« ª®©¥¢ª¡¬ ¥¯¤¨¥©f|e~cxlhjz£«kd~g
eeihz¡kg¢wkj¢slnz
yXe]
^kv[hswwnxxsmytw{hX]jsd]sij|qlc]QNWIdX@J3=F7?FD71<=?AC;;DGHHILNPRRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%.++'6*$;'/AI[I.6ZO6)EY/DO1YC;?.=¥º¼¹¯«³°«¥¨®°§®®°½±©¨¤°° ¤¡¦«¬£¦¨©³®£¢¯¦¶¹¥®£¡ ¦{¥¬¢¨³Ã¸¥¢§¯£¤¤ª¨¡ ª¯©ª¢©§¦§ ¬¡¥°¤«¡¥«~¾r´r
hw¹Ä¸q¡£{¦sª|ËÀÀ»q¢|À½ÁÁ{z¿}k¥±ooÊzxvyyqzpx
ylube^xd_eb^thmdbXLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA??=6468276*&%#)*&.+*)109*#>H[L*#CP/#F[3PY/UAB;/8£¸Ã´°¯¿©©£¯©°¯¦²¶¯ª¦¦¦±« «¢ ª§¢«¢¥©¥¤´¤£¦®¬¸´§¯¢¥¡ ¦«¤«¿À±¡ª®ª¢¢¤ª£ ¡¬®©«¥£¢¥ ¤¥©¤¨®ªª¬¢¥¡£Îyz¥y_]§¡ |§t«¯^d©z§
t³c« ²j®t|¸aY£Ínu{Û{q~ue{vvk}n~
~l_pjof`_xd[qhjcf`RTRW]JOC5AHED8>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-J0';\:L-!P@F4.1ÂÀÀµ´°·¤ª©´«¦²¬¤¬¦°ª §¦¢° ¨§£¦¡°¬¦®±«¨¬ ¥¥¨£®¤«°¨¿Æ³¨©±®¢ ©ª¡®¯§ª¨¦¦£ ª¬³¦¢ªª£§¦¡°¡§¡ p
u¨q°|r¬~¡¥w«}r~«vz|~ª¡~«{ zVÄzoÁ}mupmfveoawnrnmdnsuo`fmd_niinfcWS\`ZRRC8II@D<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1''45-&7=WJ-<'=1)3V@F!G;C1-+¯ÔÆDz´£££¢®¶¯©±§©ª¨®««§¢£¢¦«¢¥¨¨¢°¨§¯¨§©¤¢¡§£®¬£¬µ©¹Í²¦®¬¢®¬¡©±©©¨ª¨£¡«¯±¢¨«®¦¦«ªª±££¥
¤j¤uz©tz²q¥p ¤_`R«®u®¦z
{f£¤£}©~®^|¨U¢z£{ïÅs¯³³¹qb©¯Âuhlnmxwwnlfedqpf{ic]V_iXXTLLQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ('"+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÂÉÕÖÀ¡«¨¡¯¢°µ°¯©£¨§ª««©¤¦ ¥¥§¦¤¬¢«¡¤¯£ª¤¶°® ©§¤¡¨ ¦°¦£¨±¬¶È²µª¬ª¢¥³¡¦««¢«¨¡¡©¢²¢ª²²¡ª¨¯¯¶£¤§|ªlu«y|°n¤Ò·´¸É²^_©¤ zxªÉs£§©~ÆÆwe¡¥s }¯^oµc±uK£m§Gc{p}ozt|zm\fjrqfi^aXcm\^YIMMKEDAB>A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75785/)(%&%$&),5FNPPMFLJVF*L0/>-4OTQ;<F2,$¨¤Áƹ¨²®¬¥¢²¹¬ª¡¦¨¦«¬©§ ¦¥ª£®«¦ ¬©¥§µ¢¨«¶²¬¦ ¦§£ ª§®¡£§©¯´Â²³ª¨¥¢£¯¥¡¥¥«®¬§¥«£·¬ ±¸°¯§³´³¥¨¤ Nxz£|¤¦¸{|y¹~ÌŶx ~u¤£¨~°
¬}a¥l£p
}r¬`¤sq`¼}RUt£{}szr~p[lnwrjnZc_hnbd]KLQTAHHFI:9K>B108856877-*5==?BDGILNPTVXYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOUF<E2:P[T6?H,- ©¬¤«¹«¯ ¡¬³´¦ ¥¯®®©¦¦¦£§¡²®¡©¦² ¨¤¢µ¢£¡©µ¹¤££¢±§¥¡¢¯¤¨¢µ±Ã±ªª§£¤¥¥£¨¡¬¤¥®¥»¬¡··®¶³¹±³§°¢¤ÑµÃ·y
¦x¢w ¥q«´nri£|r®¥¢¦mp²\¥szl{}n©a¢qqbs²¸hw¥}w|xlhwixsnt\ddmmeh`JZWX<GG@T3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^__]Z[ZXURRQF:2230/++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH$)%s®¿¿¼»µ¨¤¶¡££©§®©«¥¡¥ µ§¢©§°£«£¤£ª´´¤¦©® ¦¤§µ ª£µ«Â°©«©¢¢¡¦£¥¤¦ª¦¬¡¤¬¦½¬½°£°³º¬´§©²¥¨z¨}|°w¤¥m²o |¡¨¬®
¨ ¢
{}«ªxy¯]£|¦§d|tk®]¥kq
]`[ m¦yyjl~b}tny_feqngghCY`[=JT2T8BBC7$$3+''3, /667436:@CFIKMNQSSSVZ]_a`aaa^][ZXSPONI7052.*,ATVVVTTUUUUTTUTSSVWWXVUUQHFIJ#((¼©ÆöÁ´ ®¸¥¤¤£ ¯®©£¹ ¢« ¯ª¡ª©¤®±¬¦¨¢¡¥¡¥¨¦¶¨¿¯¥©¤ ¦¤££§ª«¢£©¨¾¤Ã¬ª£¢«³º¬¯§¡´°©«v¯~
|ºd°e} §¬°
¥¤¡¢ [lj³`{{±lgn±[}´[¤kÈ¢e{¼YvµZ²}R¯z¬X¡m¨yw}cr}axs|`ifpmfeeOUc\AT^=I(>9=4!",%2. *1/04579:<ACFHJLNPPRTWZ^````b^_\[XUPMJGC553./@UYXWXWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³²·½»´Á³£¦¥¶©¡ ³²¨¢´ ³¨ª«°¬®©¢¯¨¦£¨®©¡¥££¥¢©²¨»¯¥¨|¡ § §¬¦¤¤¢¤©» Ƨ¥©¢«´¶®§ ½®©£®¤¸Ãº§¬¯¦¥ª~սªb£¿½|~£×º¸µ
½¾j£o«nz²±Çj«°½xw¢¾»t¦xyb|zcgx{`kekjbPb[Si\@TaBM)<:4/$%2 $(0496678;>ACFGJKMNNQTW]a\__a^`[\YTQMIC><A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ¼´´±¿¹²½³¢®¦¦³¦¥¿ª·°§ ¿¦¦±±¹¨®¥§¯¬¯¦£¬¡¥ª £¦§¡¨¢ «©¹®¨¤{¦¨¨¨©¦¡¢ª»©Å£ ¯£«³µ«°ª¡¼¨°°tuª¤·
eog¬mow¤u¯pq§£®¤rmmmewnmqyipigqhi
gpd^cjpY]g~w¦`bqofd¢{tewhjx~xdlcflbKdXJkY:PeEQ'K9+# #,)-2.5:457:<?ABDEHKLMOQSV\WZ\`_a]][TPLHD=:AB7MXYZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨³©º¹²³ª©¢®¤³ª½±ÃȽµ©À«¬£ ¦«º£¤¬¬¥ª
¥ª¢¤¤ ¥§¨£ª ¥¦§¯¹«¬{¦§§¢¯¦¢¬¹°Á¨¤³¦¬±±«®¬¨¹¤¯¸¡¨¥¶¡©ª³£¬¡³¢ ¢ ¤¡«¦
¤}gtvtq§m| pgvowv|yikddocU`Y@iZGb`NY*E=+&"740.!%2(*799469;>?ABDFJKKMPPQWUVY^_ac]^UQJEC>9=@ASX[\YWXXXXXYXXZ[[\^__`^^^__```_YY`¥©ª¤µ¸®®¢°¤ ¡¶±«Ä»Äº·ª¡¥¦°¨£¶§©´¦§¬£§¬¤¡§£©¨§¡¤§¡µº¨«{¡¥¨µ£¦«·¨®Â®£·¦¯¯°ªª´º¢¯½¦£¦µ¢¦©£¬¯¡£±©°¤¡¤ª«¡ª
~fuvysj}
xqrxq{~ind_pi`[_YmbP`dPZ:GFE=3==7.*&+)&&406658:==?AACHJGJKLMSSSUZ``i`eVPJACB;9EMV[^^[Z\[[[\]]_^]^_`aabaaa`bbbdb\[c¤§£°³¬®£©§ ¨µª£²º®««¡¢z¢°¤¥±©¸¦£©¢®¤¨ ¡®ª¨¨¨¹¶¤¥y¡§¸£¯µ¢°¯t¤¾£² xz «³¼v®¤ª~d[av¤~n³£¨®«£e syp¨l¢§e¥
wkvq|ai[vghqz£dxvhnx~jpe_uokkh\ecbboR[>MNNRG=@TB91.&4:316678<;>@ABFHBGFIKLTUUY\_hfgWQJ<DG<9VR[`ab`^`_`aa_\]___aabcdabaaedchd^]f¦£¡°±¬«©¥©£§¥ª´®±¥©¦«s¯¨«§¸ £~«¤§¢
u®¦¨£º´¨ uv¦²µ´½§¡~§¢z£¯¸§
°©¯¢y¬¢¨ª¨w¥z¦{±z
bynqzqt
xht t|
~ikxzppgdwmilj[djier[^HSLQ@E5-YTT6)!09=>643568;:=>>?DI@IEJKGRXZX[aahfYQH9DK<>bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah£¦®®«¨¬ ¨°§§ª¥Æ¼°¡¥¨´«§¢ ¾ }
«£ ¡¨¢£¹²§
pu£¬´´®Ê«®·
°±¯©§|¨r{w¦h¤y´§©Â«¡q¤}
±¡| |
ms
{r
}
t
Åf©¢jogwt{vghupfgk^bnlflXfF\PL2E46M`c6&4<DGD:63658;8>==>BL?NIJKCPZ]\Wb^jl\QE=KM@JdX]cfhgbbbbcc`_babcccdiicbbbecafcbbi¢°¨©¨¥« ¤¸±ª«¦¢¤ª¢£©¶¢¯ ¦¥½ y«¡
w ¤¢¸¥bm ¡¨~¡§ ® «¯¤ª~¢uk«tM«x©¨ª«}¡{z§ikg¶}m`cX{dgs}yk]|n_Sq
\`ly`Ye}q§ªk£nr¥pgdlZlzeY_~aWPovemtqjjo^jolkhWhN]WE9A4GC^k4+ICQMN=84859;6@;;>BO>QRLMBJ\]_W^_bv`MD:MOMTb\[ffiibbdaddbab`bdcabikdbddgdbgeach ¹¡ª£¦¬¡¶¼«®¢¡¥¬¬´¢§ ¦´u¦
¬¤©¥°¦¢in¡¢¥£¡ w§¡§ª®
¥y}}¢pr{ym©|¢sv¦f~w¤_z|s¢n·´ºt¶¨dƸ{p¶q¤ct¬«`}j³~n}q£ls¤s~£^³o{³tr[²ibosuqhoYklrre\h]bKD=D5QAYq2<RF_JS=<395::6D;;@IP?TMNQ@E_^[ZX``|dIC8LWUVbaZefkkbbeadc`ab`cc_`cknccddhdbgfchh£¹¬ ¥¸µ® ¢££¤¬±¬« ¤«x
p }¨¡£¨§¤~k{~} w¢ r¢©§¨¬®}z y£xs}¦£d¡|lhnz§}rgsªsªg]
vhªj¸f\©pa^§vuhunk¦\¨~w»j}©Z]³g\mqxwki[pixxb^eWbAPDO7VBRm4JZZ_NZD@151;;7H?:CHU?XRY]>Db]V`Qad}iEB9N[^YdfXfgnmbbe_aa__``ec^bdoq_deekdcihgkiª¶¨c¬º²°¬¦§°§«¢¡ £iq{z£¨¢ ix{~¡ ¢rh p©£©¡¨}°¤¢¸v£³¢£xz«~¢r¡|
¯µ}k¡x~´££«¨{|~sªZ]o{xbL{{
czBMY¢jr|muy±³¦tmq|ori£]vHec`sp|}ne`khv{bc`Q^V\TV@YEQgDRW[bX_ID=B8@B:IE8LEXAVQ[VDFa\Z`K`m~rEC<U^bZejVghlnbff^aa\]^`hb_ecvl^egfldelhhki±®S^¡§´º³³©¢©¨¡«£ §¡w
ny
}r r¨|l
q¡x
|£ £®}µ{¦z©¡}§hwm~s sq|
o®}£¦£p^©gu£co¥aÓ|zxrsc¢
~¢r¢uk³`sª²§¼wm¿¦ª´^o~qos¢r]£gt¦ah¦mÓznwykzvrl©¥g_dyp~kgfcmvwf_aR[eQQaIWIT_WS[ej[eQECKLJKBJD8P@QNWSXORQ`eeiRdxywIFEc]eZhjSihjocjg`b_\]]_hbahe{d^dgdkdjlfhlh°¬T\K~©¯²µ°³£
¦ ¢¤¨¨
{p}h}xpl|£ª
yvnw¡y¢£ ³¡¢¶z¬§¤®¥p©
}¤¢q¢¬®¤®¢vµ¶µÉ¡ta©mxu¡w }oLf¢ps¤{ytal~ lrd`rti{i³µ´Æ¦s~{j«tmswiytqPE|³^jujxfjgbttpmU]SYhPRhIULXRV]gknVgWMJAJMJHJNAQJPecimetrs~x{nu{{TQOl^h[kiRjhilglfce_\\\^ibdhk{_]dgcjfnmeile¢¯§
f?¡³«¯¯µ¢¢¨¢¡£¤¦¥yjye~ yui
z¥©z}yp¡y¥§gnxl¢d|q¥wpg§{¥z rv¹n¢b}¢nriªku ln¦`ihu¢}_
uobh¡eiupdfnr¢Z_[d¡n^o{srd¥nx¢dg§hrn¡oRo ^d§T]SmmrjqlphkxskoQWVVfYSmIXO\HXihsjYkVQREV\LXRaUhj^wuz|p||r{rvv^QsagbpgPjhhklngdg_]]]`jbjivu]\chcjirlfkmc¥¦zetm§®¥ª°±¦ª¤¡¡¡¡{qh|su}{e|¦¢«
}si¥}
ª¦¦x~¥²¯¥xz©t¥n¥¢¼n|¥¯
}¦zq¨ g~o«bw¨l©¢vw«¦k°kv³©lnma~«ªv§w}
¤ iu«f¶sw¾¤Y¦«auqso{tpbj~nhlRUZU`a]kM]R]I]lmv`[qY[`Zgsenorcqt`wz~yrys~{{vbxdcnsdRlgholrifia_^\ajbllzo\\bibmiwmglnb¦ª¤©ª¨§®£ª£¥¨
t
zo}turm}{
¥¥¥uol¨ª£ u~y®£qx
{r§q}}zx{~}v¡{}k
[yyryphn}qtq
e_wusuozonm_whxfª~t}jou|umlfsx{w[jXxhmwqpowwo]lmigVY_W\dkdUaU^Q_pwykjwejjju|qqtsaoubs{xuyux
}{nldyn^Wnghukxjiid\`ZcielpunZ[bkdkkymhloaº©§¡¢¦¤¤«¢ « ¦¨~r|}~ztsp
{}
x~£{§¡
wr©
§ «~~¨§xp{o~©
p}qjo|hm]sqtkvsXrn}~i]icz
_ix{|viykaqsw`s§fnvoxndfcyzZ\ifnv[zywtmsrf\mkkbYY]ZXkq[^`Y^]fs}{sotcjji{|qzwtdmthl|~uy|{zyo{}t~yrhT\qilvpugkgd]aYjhkjqrmW[enlgsynhjm`«±¢£¡©£¡}«¢¤{|r}v
ror~z¦ x
z¬¡ª¢¢££ª¡§¦ |x¨~°¥²¦ k|vwe|w|zu¢~vqt
x¦|uk{yirh`sp}zvuowt\^ohn_^Z[\SgqUc[[alht{|rnpcjih{mx~qhoplf{rw}{m
|zx|}zxNdvjsnp{ekebb`[sfpfrqlU]ltmiyzpgikeº¢¡¤ {ª
|x{mxr}mk~z~}ªq
}z©¦ ¢¦¦w}
¥{|©¡ª~ox
qt`~
t~
nyuu¢
t}}rs{{y§u{nj}{mhklg^y~g|{vsuuzv\`p}mt`bZ\^QfmSeZ]akiuy~pklckjgkrlktnxnynv}
vq}{z|{`i{kuhiejc`i[cuhobumlTbqydpzzrejmm¸¡¤zw¥¤xz
|m|xr
}}kh}|~|§p ¡
|§w£ ¡¢¡£
y¡~|¤ ¦~~utpv`}
q|q~
hxry~r|}qz|
z{¥|
uydqz~xypljf^}rh{uus|sj^`svpwdcY^^RjhTdX^agjvxqfkclhejm}gnpj}w
zkr}tv~|z}jrnsiailb_qUtomn`xhmWjtvbuz{qbkoz³¥¥ |u£ ¢x{~~p{tu
~xgc}x}y}o¥¥v¡¡z¤zx
~s¢ ¢|vq}mzd|
pkeuo|}x|}|rxy
¢wvzt_ww|s}wfkd`~ijvrst}p{cc`smurmaY`^[ldRbW_`hkuypcjclfh|khthloh|xmqt|~z~|muttmeljacuViqn`xflbjvpfy{yq`rl
®¦¨|w©yx{}|{xsxzs}d^}~t}~}¢ ~r{¦ t¦tlzo¢{zqyjul{}}m
wo}~drj|
ty~vx~}
¤y
t}rtl`ztyp{oanbd{annurwwssav_nkuno][^]^j]O]Wbahmszk_jejchwmelhilg|zwos}tz}z}}ryyxnlkh_iqchqoevgmlazhj|zxpawmª ¤©}v}v}{|{vwptszo
}~|a\~szz¤}|¤
n¡ o
gz
p¡}{tsukqnu{tnqt{|eqmy~}
ttyo}
¨{}~
w}pnbgwstnzb^o`jt^pizxxlrpex]mlsmsXZ^_ajZOWXdcgqqe]ihfbgqndigdihzwuos{u
x|w
zw|{ryjk_phtkqnmqgole{bmyvqlww¢¢¨¡§tª s{vwxrs{
kroymvnp[Y~vu w~n
k¤gw~|}ovokmopz
ispwtyftov|
zzwtp|{£|wxxni\qrqoowZ^p`oj^oi|ypmmjmv`pojqmYXaabmWQSYefcupb]kmdbfkm`ff_gkuqrptxvy
wv
|{vjqc|b|opltjholvw_q~y{tut~¥§
t
zrwtpr
squlomumw}mnUQ«xvry xz¤
}s
ih¡qw{z||kvjmkklz~ay}vzw|ygulu{qz
px{{~
|}x}vphkw^vomkprU]nbq`_mmypgpfgsuhpkawe]Ve``rSPN[fd]xp|^\hrbbefi_gdZhp~okqs}v}
tuy{xs
~{yxfrj`~ookz`imtt_t|xxsr
|y¡±¦~vsvspo
spqojivmn}|mtsRNᐙ|ptu w{r
¡
~xz~ywhl¤
cq{{z
{~l{erojkyy[yz}~zzhtkt
}l~o~z|wxxrlepkhtoghslS^ndpY_kpxfkjbfxsopc_w``Vk_]vOMK`fc]yqt\[eu`aeecafaXissnkqv|tyuv~s{r|~vesn|eopkYknyys`vz{vrwwy¯
w~|
uwpyqnomn~rddxp|mz|jhlc¤ÁÜ®ï¡skuu¡
np
£
{uxvwo}¤
^l{}
v
}}k}cxuimxsWzy~
~yftjkvn
zttxuspftyasloahufR`pgkU^msy`rc_h}qrmZbrabWnZ\wMMLcfa^vsm[\dx^`df_cc^Xjrknkrw}swxw|q}~{t~~shuqyl{ntpXpzvyqdwyivr¨£}pxy |{swpsjokil|t^`xv{ptzg`e|ëÚµÉÃÜslsvip
|{vxrvp¢a
i}}q~qwgvriswkZ}|vbtl}nly
}~nrzulpjqw^shn\ju`RdqhfS_ovt_o`]hqriWghciXmW[uLJKef^brs
h[\ey^^dgzad_\Yknenjtw~ss~zvzs
|wv
{vlwuyyunxz}Xyqogxwdv
q
¡¢sorv}{yrsnodr~iflww[_xzzqqiagaÕ¶¦xnqw{qj{h||~
zu{zq
uwaf}~~m|tkmvtsvukc~|p`sq||zqf{|
~npy~umnijy|agiiXkuZRiribPbrxlae]Zjmsb[g_dl_nTZoNHNfd\gnqkZ[cr_\clwde]\Zlkbmjsvqo||tx
x
|uy|vpxy{om{w^tmizssgr}r vvmv}|v~wqoljat|gbiuzZ_x|ymq~echhW^qr¼Äuq~rrj{||{uvv}qu
qu
|f}
q}f~{y~}i|vfoxxsvslj
x
k_ry{~|~riy
y}}nm{}wtngf{ub[pbWnrSSnshaMftxe`]\XnosYea^jm`pOYkQDSg`Zknm|nY[^lcZbowdf[]`liclisvqn~|tuz|
v~xtryx~oo{qixz~ml{ukjwtl
n}vix~yozspljd`szh_eqzZ`r}ygqzaee±²wJbZ¤ÙÐr{w}
nk
zy|xxpqt}ziy
¤~owy
p{}nwh
xr|e}~ucprhxpou
|vxyk\qs
~{rnq
szxno~vzdgi{o^XvZXplNWqsg`Jlvt`][[Yt}roWg]fjp`oNWhQ?Yf^ZojgzqZZYkeYcqy_h\^emhekiqwol~uo{~v
qq{|yyujzlo~t}or{{onxf¡
gpgz}~|ixrklf_anxm_box\dlzaqv_eeÔê¾2:>qx
v~ml
v}
|xnvwn
lu{tfy¦}nuwz{wkrh~xm|{wbyqdqh~mtqt~
~su}so[mux{|xzqlrztmkwuu\hgvoXV{RYodLZrre[Ipxo\ZZY]u~thYb[genciMWfQ=^e\]ue`upZYTodYdqyZh^`gmgjkipw}li~yn||zu
pnw~{{h{}jt{r{sw}yx}|kl~kh~z~~}kuqghb[bgrn`aksahpzbst^cd n\5Y¯µti|u
svpl
uyx|z~sgv~~oq~hvymey¤~n~v}|p{}{h~lj{zizvr`w~qdrfumu{|nwy|t~lXpwuxvzxsns}znmjnun\gdrpQZzMZo\N[rpdUKsxiWYYZaqt`]]`fdhieNZhN@ad[`ua]umXWStaZdorWj]ahkgmlipw|li||p~~{zwq{oqw{j~{mwxvw}x~~zm
£{uyklx}{~prqcf^Yf_op``gpfjotato[adjv{¾¦£È¸q
r|xsrro{tutwyyqcwzirvgwucj|}rt
zy{kxy~ugzhlysizv}h`w}jjsg{iv~z}~p{v{t~bVw}rs}qwxqp~y~}vviqimro]gaqmJeuK]nUSYsnbQOsx`RXX\aos[a\heeckcP[pIDcaZcp^]whUVUw^[enhVk^ajgeoohpvznix}r{~y|v}
pwrnw}p{xyztxzuo~}
zw{gt
z~{
vgon_d\XeYmr```plkhn`siY^dmw©Ú©Ç²qwou{zutu~wpqmtxuk`zyfrpgvn[m|y}y{mwt
{luvmgvem{umjwv|`bx
yhtub}{gt{tuqz|mYVtpu
yltylu~{}y{s|sgtenmsZi^tdGmmLZaWVUxmbPRtvWPUX^aqo\`cmdd^obT]rGBf_]fh][{bQU\u[ZgkaVj_`nefkqhpuxtku~vx}w{s}oqtqu
{wx{|
x|}~{~svy zvty^}
yt
w{bnm\b[[aVisc`[gnofqaqfW\ck|Êι¡jmmlqq|~{
yysyuu|jlucuwof^}zfrkjqcXmz
sw|nrr
{x}qqp}fhqbmxqjkqx}|z\dywiuxevgt|qjn}yn|]Xrnt|ooqvhww}q{u|zrfsankrWj]v[HmjMUT^TU{kaOTurPQTV^bt
i\`kjfcYnaXbpGAh\`f^]V{]OUdpZ[jh]Wh`_rejgrgprwxntzw~xur
pp{xwuz
z|t~}~~}|xvyx |muyc
so
ztcnjY_[]]Tgse`YdqrfsbkeW[`ix¾®{ ·mbshs{qy
{}wxrvo{vejn`usjb^xygq~hjkZVow£qqyuns
}xtrnhy`jm`mvjgjkywzvZg}|xer}mteu
ofjzumub\p}lu}|fu}nqhux~s}l{{zxqflbn~lmVi_vUJijOQNhMY|hbNUujLPTU^fuf]`phgaWi][khJDjZadWYUyYNVmjY]le\Yec^teldqgrouxp
v~w|
}usnsy{zss
x}u~|{~{w|wwziv}|lrp
~oflgW][\[Tdpd_WbruiupeebW\\hporsddx~isusrxywtumkzqbgkgtnf]_}p{~imxfidUWro¦|{vt|s}{n||w|}tprlgt\lh^ltdgfizo{rYgvtgpwubw
|njmzqfseanzgsx|~bvvjkqu{qzyt}f~ywndfbn
|mjUiaoRJhjOKNpG^{faMUtcJNSWajv~e\gsie`VcWbp]LKkXcaUTUsVLXudZ_ka\Zce_vfmbpisnrutwwz|u~
nrt|ztq
yut|
}~{~v{£¥yku|zuyo
sy}unjheV][ZZSbnd[Xas{ihmi`bW_[jikogk`hyxjsstnz}uunzhjyj_enhv
geXbwi~{oipgf]UXog¨wz|yuppsvzxu
vjrvghn[ld]ms_gajxh{m[mrsjo~ywawwrqoyqcph\pxdqt|ybspgjytrlxwvxd{xvpdccn|}kkUhaeSJkgOGQkE`xgaMSq\JMTYekwze_mqid]V`VnnWKShWe^XMUkTJ\y_[_k]][ce`yhkaoounoxuz}wz
zxy~qttyvt}|ks{
~}{v¬zkryutnn|sjomddX_ZYZUbjg[Z^ui^ml\aV\\leqt}ii\kvugtwrl
{}}yurlyhixf]erhzwccTepg
wwfhj`WVYgc§n~wzpq}hzoz|wr}ndusdhh\kb]oo[g_mudzh]toqkq{}uuat
zwruuapmZrtbqr
|terlal{oji{yvrf
v{zuqdaems~ilTh^\TKrbPFVaGbvgaKToWJLWXgkvzdenqfcZW]YveUJ\cWgXYHWePHbxZ]_l[^\ac^ij_ntxnonvyr|
~uu
x}suuyzz}~isz}~
zz|sq®{{}eqys|{urnl{~lzbpobe]eVYYVcfk`]\s
hXpnZ^WZ\l{bpwvmbZlssgtuply~ywnnteite[gtfvvz_]Refkt}bci\TX]bc¥hxt
xmozhxn|
{usx|xhevm`f`^j_]skYe]oobze\w{knnowxstdr~zvor}sbwd[opbqq|sgrd^nvidgy{unout}sqb_fno}diSgXXTMw_QJYXHbudaITmSJLZVilr{bllscaYY[av[SLc]XiSWGY`NGiuX^am[[_bb]
hganxylojvxm~vttsqwuw|}~~~pw|yxy~tsp¢{zxduxswuksn~ly|pr^po`gblT[ZWhcmf\\qeSrn[ZXX`lvciuji^Ymsqlsssi
|~|vnnldiqc[krdtvs[WSearr]bc]SZ`[cerq
tlkzmop{||qwszzzdeuh]bZ`g[^vhWb]phaw`[{viirnwsrthp~vrjp}mfwW\knbqszsfo~[`pqa_jq~llu~sqxkpa\ellzagSfTWQOu[QOXQHctb`FUjPIPZUjkk|emnqa[ZXYlpWSOfWWhSTFZ\NHrtX_cmcX``b]jcdmyxkoiuy{k}|y|mqowz}t|tw
usquo¢t{{ewnnznfwpzksvrk^tnagekR][UgallZ\pdOon]VXUgjtgbtee]Yntmpuuxj||vsddkna\nmcsxkZTVcdx}}q
\c_cTZ`Yccnp
sjh{ofsws|lztuoz~u^frc[^VadYateU_`mdaq]]~ohisqsptujm{
qrfn}proS[fkfqtvsclvUbrkZ^of}fmw}sssjm`Zdjjw^fTdTUPTmWQVSOGds_aEXiNHWTVmhd|ikwkbW\U[tdSRWhQYeTSHZZPMxvZ_eliYb`^^naflyunohvvl}{~krgt{u|r|
{ss}vn¥svwmz`d{pfyrxlmqvgd{lcfghS_^Ug_lo[^nhNim`TVSogslfxdd\Xptlqzxrl{vzykaelm^`ojeqy~gZVX`lx|{p_b^gWX_Wdbkq}wkkxm\wql{jvsno{rXjn_Y]UbcXdqbS^ahbblZ`}kfksunmwvkh
~zmqep}mrmcYaiiotts^ilSeqdUbnbzcqw{vkpmj_Xaght\eUaURNXeRO\OOHdp]cFYiMI_KXmd_xhn}d`T^T]u\TS`fN]aTSJ\YPYuu]_emhXca[^pcgjwqsngvtzry~|yntlsty~|rstwqn~zz}~~}}~~}~~~~~~~}z{|~~}}~}~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~>.1111/o]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDBN¥¯®±a@DDDDCXhggggfo
}}{{z}~||~}}}~}}~~~~~
-h
S7¤¤¤¤¤¤£r]____aR455553A©¶´´´´¸Y055554Ma____^j|}z{z|}{|~}}}~}}~~~~
|y{z{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{y{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~~xuwyz{{{z{}}}}~~~~}~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~rtx|||{||}}~~~~~~}~~~~xrvy|}|z}|}}~~~~~~~~ssvx}~|y}|}}~~~}~~
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxy}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvtuvwuqrqnprpghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkigfggghhgmgjghehgccbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__`c_\_]`]^Z^]YY^ba^^ZY_\XWSNMLKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSSPMJMNPROMPQQQQRVVQQQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTttuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPPRQPNNONONOOPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKLFDFJKKKHJLLLOMLLNOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBA@@CCDEACEHKOKIIJHGJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AE@>:;>><ED=?EA?@A@DEGGGGBDDEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@;;><;;<<HL==AA?BC=ADDFBFFDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprttsqrvyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;99:88;=979;;>=;;:8:@@AB?A?CFDBCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqususqtxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<:79::9899988:9:;;8789;:8<;=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>=;==?@><ML9<===<<<<;;:;<>=>??A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CDDA>=>@A?>joB=?CE??@=;===<;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVpoqssttuyz{{|~~~~~~mLPQNOPNNOPPO><<=>??@>@@???CFD@<<=@DDEmyI6:<9==@=:<;;<;89;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}|~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC??AAABA@AX@>[x|{yyS7:88:;=??<;;<;::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBCA?FxXc{_;>=?>=>CD?;<=>?==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy|||||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCDA?Jtx{h?A@C@@?@@>=<=AEABBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{{|}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AAA@Ls|{~
Y>CCE@??Na_J@CEIIIIMMKECFGHEGEEEDDCA?@>>BFJJGEEFFFJNNKJIGGHKMJGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EEJp}}
hAEEDCWu~XGHJLLMOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHIHGFEFFFDFHGEEHHFHGHFQnnpqrvvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJHMr
UAAUtWILMLMNLJGGGGDGGGGFHFHECDDFEDDHHCCCFIKKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrswwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLLLgpNm|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD?>?DFHDEGIKIIGHIGIIJJIHFJJJJIJIJJJFILLJJKKfopsrtvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLLJS
uIIFB??@???<<<>::<AA@><998<<=;>;9;?ABAACCC@ABDDBCFHIHHHLMLGIJMMNMJJKKJLMSloqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHJJJ]
fBB=88::9878896479;<:8567789787689;;<>@;999==><<=ADEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGII`~T;8656766645773468:876565676778:77789;7579989876:<@GFIFIFEFOSRSSROPPRTepqsttwy{{{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=ECB^
H676468874578467699766765:9:::<898977779:98878589;A=>>BA?AKLOQPQOOOQWkrrttuwy{{{|}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B:<jz>:88;<=>9::;89;9:;:99;:9===?;;;=:>;9;;<;<<9;<8::;:999<?<=ABDIJMKJKLWorsutvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<;89989:::;?>Ez
l<;>BCEEAA@B>@B@@?=>>@?>?@?@==?B?AA?A?=@@@??A=><;:;:9;?=;;==AACABCAXqqtttvy{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<=:;;==?@CP
^>DGIKJIFGGDFHGEC@@CECB@BCB?@DHECEDEEAFEFEFFD@B><@>=?@>???>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A@CDFV
WGLMMKNJIKHIJJIECDFGFDCEFDBHIKHGGFGGEKIKIJKJCFCCDBAACBDCCDDCA=;=@hpsttwwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@@A?BBGGJY
PMPMKNKJLIIIHJFDGHHIEEHFFELLMIJGGHIJNMNLLNKHFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?FGG=<@@98<;<=:?@>@@CFIIP`
qMQOMLLKLJHGEJIDJHGLJHJGGGKLNLLHHIJMPNPNMOKIGIJHIDIHHFFGGIFCBACUnquvwy{xyzz||}~~~~}~}~~~~~TDAABGHB?8?@9:<8=>;=A>?ADGJLVr
^QQPMNMKJGFCGJGLJGKOLKJJMMLOPNHIKLOQQPQOOJIJJLJLFGHGFGIFEEB@BB\orwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAGKLPWy
|WURRTROLKJEEFKONOWVQPOQSRMSTOMSLPSUWRSQPLKMMMKNGGJFFHJDDEEBDCcpuyyzzz{z{z{|~}}~}}}}|}~~UFFGGGGHF>@B=?==B?BCFVNFMOPTY|
gVVkaERQQPJ;:QSR`u]UVTVYYRXXRZfPUWZ]RTWQPNRPPPQKKKGHIHEFIHIHIjrvyyzyz{{|z{|}|}~}}}}}}~~~THJIIGGFE??AAEBCGEDELXRMTUVX[|
}al[dU:XXXSP>@VUY\d`VYbr^]V]ZVEQYZ[Y_TYgRUVXTTVSOOMJLJIILMKOMSosvxyxwzzz{z{|}|~~}~}}}~}~~~~VJJIHGFDDBA?HMIMPKIKPTSSWZZ\\x
g;~znpXZ[ZRSRVVTZZuYU}a\X]^WIV]][[_YHYXY\]XXYWRQMPQMMOSQQURassvwwvxxxz{{|}}}~}~}}}~~xy}YNKIIIFBD@A:PQQWXPPOQSTTWXXZ[n
n~fYY\XSVTWRQWVcQerXZW_hP`fZ[X\hbGOZig\[\]]WSNSPPQVVVVYZnrtwvvtwxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQORRQUSUTW_ux
}{\PVXTRTRQQLOMKfyZ]TYUV]ZLTZUST^ZXWWWzkXZ\\^SPPPINOWVX[Zdqsvvttvxyy{{||}}~}}}~}}~~~zxwvsu{tk~~kry^[VUSROKFCDAM^lVRSNOQOQURSRRTcdv
~ymqVIKNNKMKHJDFHEC>ScURQQNKRTRMOYQMNQSUUMQSRPNLLHCIHRSTZ\mrvvussw{z{{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YUQLILIaltPQSNQRQR[RSRQRUUbs{|}{{
u_]KC>CCCCB?DPBD@C>BHGV@HNMG]iPHFOFDEFHGHBCHGHJGCBAD@OPMSdsuvustuz|z{{{||}|{~}}}~~||}}vt{mh|gnqfieeb\XSQPURsWe[OONLQSQUYSUQQTROV`klrv{{xyurnstsyx~~kLG>>:;>@???>kQKaEFHIEB?GLMGMQUIBE?><=<==?=?ACB?><=B>JMFUnuuustvx{|z}||}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QQZ\Y^IJPQNKLQRQTUUWQQWVPX[b]agmmlokh`nrjmlqu{z}zxz||xwxdB@@A=:BCAADB\]O{NOONKLMOOQLKLWMHG@B<977599=;;;8989?;AG>\tuuvuvwy|||}||}}~~|}}}}~}xuwz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIGPRQOMPQNQRTVXSRYTNYZ[WY]^^`e`]^qvk^`gkwooljonnlfbYGFFHBAFIEEFDMRPaWRXQPSSRU[OOQVPMICF>::6486979:366796<B=ftuvwwyy{}}||{|}~~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMLTTSQQUOLRSTWXTTXQLXYZVXXVXY]WWXhsk]V`tkaa_]d`_^YUPMONLIGJKIHFCQPSZWTTMQSYS\eUOSTQNKIHC?A9988978847578588Gnruxxz{{}~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPXVVSTVOOUVXXYSUTLKTUUUUWPTUWTUR]n^RNY`[VY;DUWT[fJLPRROMMNNNLJFPPUYSTNJNOTST\VRUSRNMLIHHF??=:787659967665Wqqtwyz{|}~}~||}|~}}y}}|~~~}||}}~}|rvqxxruuqqnppopuvtnjddjppqrpnfedc\^RTZVWUTWTRXXYYYRUOJGPPOOMRJOPPPNNOTLMIPPSTU2<XMIAQ=c`QSQPNPQPNNMPNTRPRLILKOQPQRSTQROLMKLLHCBA=:9876;B4566;eprvxy{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqpuuvcjgeWhtrrqniihpVVTUXUWURWVUZYXWUQSFEAFGGHFJDHJHGEHLHKIGLMPMG/E_R>3@>joaRRQ@FTQPQPQNQOPOLJLLOPNNPQQNQOJLMMKGEEDB;=<<9=G6676Dnquwz|{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknbePSTRSUOWVVYYVQQQO@>;=?@BAC@BEDA@GHGHFFHJMLDGCORC8ENS]fRQSAGUPOQQPMMNMKLKLNOOQMOOMIMLILKLKGFFED<AA>;@E;<89Tqsux{z{|||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLONMQSLTUTWWULLKH=987;?@?<=A@B=>EHGDFFIGKJ@FAA@FHEJOHPQa\QPRNSOOPLLOMKMLMON[VKMQOHJHCIJLLKFFFD?BC><BG?B?Adqtwzz{{|{zzw|wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B>;>A@@>ADIECHGIGIEBB?><CBAGIDMOaePLNNWKLNKLMMMLKNNSdMJLRIIIEAHJLMNKGIFBAB@?EFEHDKopwzyy{{z|zwsxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLMIMPMPOGKE?B=999:?B?<ABBADDGKFDIIGGHCC?B??@A>CECKNQTKJHMTFIIJLJKLIILMOPRPKGCLGCCJJLMONIJIGCCCDIJMLIZsmxyxz{{y|vrpurtyyvxjqnjllnttmsu{stxronqovsnporpopstyjN`gsjt|ygosqjqheqHKCFHHGJKIJLDGB=>=:::;AB?=BBCCHFJLJEIIFGGCC;A@B>@@CECIMOGHKGHKDHIKMHJLHHJLKM]RIHDNGBEKKNMPNKMJKFGGJMNQNLcniwvw{x{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoijthdoFKCFEGDEEFEGCC@><=:;::@D@>BCEEIFJJLFIIGFFDB;BCC>@CCCEFKMHKNHDHEILNMGILGEFIILNKJHEOICGMMNMPNOOMLIHIORQRNRfgfrosxu{z|lhjoekpmsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGICEFEBCBE@DB>?>:;;=;=?CA?ACFGJGIILHGGGFEC@=DEB>ADCCEGHIGMPIFFGKNOKFHJFEDDIIHKIFHPKDJMLPNONOPNJJHMRUTROWdaamgprosyzgehhcilgqlflmgiklslpvutpnvrosrsutqssutsuvvvyvutvlkuumrvqlnlerMGEEGCBABD=BA>A=::=?;>>@B?@BEGJFJGIGFFFEDBAAFFCBBBDEDGGHFLPLIOJJLKIGHEFEDCIHHKJGKRMCOONQPOONOOKKKPUWVUTX`^]iaminhrsbeffdihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwuksunutsqrkksMFFEHBBADD<AA@C<89=>:?=?B?@@DFHEHFFGFFECCEBDIFCFEBEGEEFGEIMKHQMJKHHIEFIHECIIJKMKPSNDQSQQRNOMNPMLNSWVWXVX^[]d`hbjigk_defcgggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxnouorsuqqipzMGGGHBBBFE<@CBD<7:=>;>:@B>??CEFDFDDGECECDEFFJEEIGCGHFHFECFJJGMJLKIJLFIHKHEKKLMNORTOISUTQTPQMNQNMQWZVZYVZ^ZXa```_hec`deggjihjfhnllomqpiuuxrrpupppruvpusuvu{~}xvtwvvvwplupmsunorsyMHHGIDACHE<@ECE=8:>><<<AB<?>ABFCEBBHCCDEFFGGIFGKHCHHGIGFDHKIGKHMKJKLHLJMKINLONORUVOKUVTQTQRLOQPOTYZY\ZY[__^`c^\ackb`dghr
hgifjmnponsqjtuxrsstrnpqvrquruus~y}uuvvvvxriuqkrtlqwquKIKHJEBEGE<@GDD@9<>@?>?CB<@>AAFCEECHDFDGFHHFHHIKJEJHHKHFFLHHHJHLLLLLIMKMMMOLPPQUVWOJVVUSSRQLORRQVZ[]^[\^``a`ad]d`ef`ehjcssfjhglprqossnswwpuvtsmoruorspurvrtvuuuwvuwtgtrkqrkrwowIJLILGBEDE<@FDDB;??A@@@DA@B?ACHBEEFGEIEFEIHFIHJLHHJJILJFJKHIJJGKKMMJJMLNNNOLOPRUWVMNTVUSRQPMNTSRW[^^_]]``aaa`bdebchbdijgvlkigmosqpqpprywruutsmmssmqrotutspsvtuuwvuuteqskpqjrvowJLLKMGDCAD<?EEEC=AACBBCEACDAAEGCHGHGFJFCGJGGJFILHIJMKMLGKIHLKNQKRQLSMKNNOPPPTOWXX[NSQW\ZSVPNTUTTXZ_bb_da_`b_`eaacinhbihhmxvlhimosrpqrrrvtsusssnksqmprotvrrquvuswywutucmtkopjqtpwLMLLLGDA@D>>DEFC@CAEDDFCCEGCBIEBHJIHHKFDKJGHIIIKGJJOKNLILHJMKZfJd\KlRHNN_nUls[qpbwcRPbvuhucav`Xnqbdvinzf\lt`ljT_wvijgifglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqsqyKNJKJFB?@B?=DEFDCDBEEDFBFFGCDJEEJLLJLMGGMJHJJHKJIKJNLMMLLILML[sbdp^llUMNfs]geqlntgpi_aYnmbppbkjjgoqtetno\pugpMJryvkb`keemxmkvlnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIIGED?BB?=BEFBFCEDEEDCHHGDEKGGLMMJMLFJNHIKJIKJJJKMMNMMMKNMM[roonpplkMPQlWNibtrpamov\YlP[mmZqmkomxxtsip\`slqjUuyxpc^kfbgppjioppsspqpqqrrqqrrtlmrmmnorutqtrtuutuuzvutenukpolsrryJKGHEEEBBB=??EGBGDIEEDBFIHHEGKJGMMNKMNGLNILKHIMIKJJKOPNNMLNML\hdu]lqWlNOQmUZk^klvaldtTecNlYl\tpkilxjwuhp]_skhWbcw|oc`ggadityknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvIMGIDEECAB<B@BFCGFKGECCHKHHFJLLFNKLRRLGMMHNJGHNHJJIHNONNLJNMJZsppoqqmlOQRnYqkgooqqomt^nXat_nopoqronusttj[]tcwxrjnzhaacfbbjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyytukoumtonssvtHKHIBEEEA@>CCAECHIMIFCFJLIGFJMKFOJKWRKGKJJNIHJLIKJIHJLMMLIKKKSkbZi^_jcrrZ_Yjo_eeUk_c[abQ`mh\j\niid[pfdp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrutwrHHFIDEDFA@AEDCFBHJLGFCFKLIEFJOLIOIL[QJFHHKMIHJIKKIHJGKKKKGHJJLLLKIKLNT[\TPTMPONOOVQOOQOOQJJNPQdqiTYW[[\UY[]X]\\cfaafbce__fkmhmtyrtroppt
zpmmlkqsttrtvtuyyxuvqruovrtsuusGCEGFFAEC?CGDEGCIKLHFDGJLHDGIPKLOKLWMIEEHIJHIKHLJHFHHJGGIEFLHIKNLIO\W^O\[`^OXYS\\b^MYZMXaRKYaZS`d]bX[ddVVX\YZX\VY\^c_d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCDLMBCDBDIEGGFKJKHEEJJJGEHHPJLMJMSIHEAHFJIKKILJHFEJHEFGEEJGCJMJKT_Y`X`a[`UXYT^^Z_RY\P^\YN_\^S[^c_Z]`c`Y_b[`^[TXXZ_^dbbaceiekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIECBCFGEGGIJJIIDFKKKEFHINJNLHLNGHF>GGLIKKJKKIGEIEDDEBFJD@JKIO[cY^^a_RTSW_`\]Y^QY\MV_WKQY[Q[_aa^^ca`bbbcceZRYVU\[^c`__cebhommllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQJFCGEBEGHFGHIFGJGHFHKILDCKJMMLLHJJHJG?GFNJKKMKKKIGHDD@DAHIA?HIGO]aZ[d]_TQRX]\\\_ZKW\LR\YIM^PP]_acdccb\dcbdcfXQUTS\X[a_^_aa_dlkmjjlnv~uz|
zrsuu{
~xpzwvx\RMB@IFCFKIFFGHGGJFFFILJNECKJLNJLIKJHIGBHHQMKKOMKKIHGED?EBHHAAFFDT]Y^X_Y_[]UXXP]]QKJW^X^[]VZ`RQ__aba`bb`cbbddbXOQRR[S\^]^^___dhgljnnp{{|~{
srw
|x\SKBAGFDGMRHCRKFHHHEFKJMPEGIIKNLLILKIIGDHKQOMLPLLKKHICEAECHGBAFEBVUE\T]SV_XNTUNZ[MJKU`a[_X_^a]OYb\``_bcb]bbW__TPOPQXR]\\]^_`affelfoow|{{}
zo
~INFDFFGDIRcPDW_IGGHDFMJPPFJIJKNLKKLKJJGEJMQQNOOMNLNHKADACDFDCADEALHCLLPOOLFMFGIJHGLLMOQILOPPSPLQSRUZYWYXXdVOSTPPONPUT\YY[^^aaefchckmqsszy{z~{}{
}KIEEGFGDKM^LGHYMGHJHGNLQQILJKKNNUNOKKLGGKPSSNPONONOHKE`ED_LDfcDM[H^\smOMVmYLCP_UlWgJ]XV^DLQULMTVQRTXWTXUT\TPfZhhdYTkTWVU[\\``abbb`gignlhrz|}~}}zr{z{
~z{LIEFFHEEKOTIKG`THJOJIOMRQKMKLORUROOJLMGHMQ[YOPPNOPPJKPQI|YYrsXPmHqnoaVPqqsPCksmqspSo_[nX]V\XUkhU]VcZ`YZ_VUWjtuu_av_Xb\\f[_aaab^`bgmpl`pwtx}~vxzlv~tx~|~|z~wwNIEHMMBDLLGILFRVLKOIKRXWQNOOMQTNOQPKKNGMPS[ZTQROPPPKHZx]TxdhYRTQvgtlpbnfkQrOMwmjrpsrqrpop]ezuxqqzq~s}ku}bRh|essoss|}o~yor_``baZa`gknkblfgmw~~{xwtvzir~nt|~wx{~x|u|||ssNKF`]GAEMMHKKHJPOMMJNV^YULQSNYYLSSRNLPIQRTYWWQTPPPQKGfxlcxqmZJLUypumubnvPdeJfvqmwojfxxiWrQhzmijzz}lxzpgoXvvjvupash}ilx|o___cb[^bdgijdgbcdllppstsssyqrxbltgry{ssuy~suzn|}yxrnNJRtNCBEPPIKKJLQOOOMPZ`ZXKTWPa^RVQYSMPISTUXWWPUPONRJLrouuquqdhaVnLqp^FhyWvTKhx}x`y{sna^modRgrunmypwlvstqlm\s~zkmy|lum|kpvux^__b^]_edighee^bbiiijknokqnmjpacfdowxompsynqpj{ztromKKZVHGEGRPJLMKLQQPPPQW\YUNVYUfXRRY^TMNITTVWYWOSNNNQHRmHiwK`dvvUWlOnl{sajgvUKWkh}lmlx`[pz{^`zscroxqhd|ir{]TKl_vukiu{{m~xk|p]^^b[^bdegeeebZccikkrsrwgmihdg`alagsrkhlmr|kmhk{tmmkmOGJKHJHHRQLNPMLSSROSSWRVTPWZVVTTTa`QONKTSSQVVONLMOPJHQNPULKKSTRRTPVUQQNQQXXQNPUTXXX[[USSW[WXWZPSUWWXQ]XV]USOXRWWWXZ`[gr^[\[]^_cZ_ccefdccbZccfffmnmuffgc`f_]g`dlhfgkhpzhggkujhgilQIKKLMKJTRMQQPLVUTPTUXUYURZ]VUTWUYXPOLNWTQNUSNPMLQPKJQRKQMKKOQTRQQSSIHMNOQRQQQTVRXW\WSSPQUUVTZQNSRWUTYVTYUSRUSTUXYW^Z_a]\[Z\\`c\]bbdgeddaY`acabhhincad^_c]Zd\bma^ffgmsdihkkedcfhPJKKNOLMTQOTQQMXWUTUWWWZVT\`VWVYUXTQPKOXSPNUPMRNKSPMNUTNQNMNQSPTQSTUNKMOQTTRRQVWUYZ[YSURTWWWY[SOSUWUTYUVYTRRWUUW\YZ`]VY_]^]\]`a^[bbchfedbX``b]`hefda^_]]^ZZ_Z_g`^]]chkagfhfd`bcaPKMLPQLOTPPSQOQZYXWXZZXYV]jdVXYZWVTTOKOVTPOTPPQNMQQORXTRQOMOSUNWRTUUONNQSUUTTRTXVZ]\ZVVQRWXV[\VPSVUUVXTWWTRRXVUZ_Z^`^V^]^`]\``__ZbbdhhedbYb`b^^fdc`b]\\\\YZ[X[a[^]\_b__bddbd__`\PMNNRQMRSPSTQOU\ZZW[[\YZ[dqmhd_[YVVXRMMVSMNROQROLPSRUZUTPPLPWVQWSSSXMOPRTXUUUSUYX[^]\[VROUVV[[WQSWUVXUSXZTSQYWV\^[__`Ua\`a^`b_\`]cacgide`Zc`a__ee_`c[Z\[\ZZYYW\Y\[`^_[^^a`_b\Y`ZQNONVQPUSPUTSPW\\\X^\_W\^jpwyc\[VVXRNOWSNQQPRTRLQTSYZWUORNSWVTRTRRZOQSSV[VVWTVZX]^\\^VSNTVV[[VQTVVXYRSY\TRR\XZ]^]aa`Wb[cb^ac_\bab_dgidf^\d`a`acd_b_YZ^[\[YXYWWZ[Za\][]\\Z]`W[[ZPOOOYPUUSRWRTPZ]^][`\`U\]hjr}rlh\UYWQOR[SRQTRTUTKRVU[YZSOSRVUUSNVRSZRTUTX\WXXSX\X^]Y[^TUNVWW^ZWQTUXXXTVX[TSV]Y]]a^cc^Y`[eb_dd^^cca]efidf]^da`abcd_b^XZ_[\[XXXXW[Z\`][[\[XZ[^V^Y]POORZPZUUWVTTT^^`^^b\`U]^bkytl}lZUZUQQS\TTTUTVYWLRZV][\ROUSXVUSPWRSWSWUV[]X[YUZ^W_^Y\ZRWRYXY_ZYSTVZYZVWY\VTZ]\^`a`ed]^]]eabfd^_dc`\gdhedb_da_a`bb_`^WX^Z\\ZYZWV]Z]^[Z[\[WY\]VXW]SOPWYP]UVYWWUX_`aa`c]`U]^beeuzhXYZTVSV\XWWVVW]XPU\Y^]]TSXRXVSRTXRSVTXXX]^X][U^_X__X\VRYUYZZaX\UWWZZZXYYZXV]^_^cbbee]b\`fbefd_`dbb[fchecfaf__aaaa`_^VU]Y[\[Y\YY][[[XXY[YZZ]_]TY]UNSZVT\TVWYWV\`abcad__V[`da_zuohZ\ZVXUW[ZY[YXY`WPU^[`a\TUXPUVUSVVRSUWZZ\_^Z_\V__Z]^Y^VSYXYZ]bY^VWZ[[[ZZY[YY^_``dcdeebdZbfcgfe^ac`c^cciddg_g^bbcaa`^_XTZZZ[[X[XX\[Z[WWZXW\[\`]V]]SPVZVVZUXUXWX^`badada^YYadb`lfh^\][WXXY\\\_[Y[bVTW^]ac\SVXPVVVVVVSUTX]\_``]`]W`^[^\[^XVXX[[__[_XX]\]]^\Z\X[_a^`dcdfffbYceehgd^ca`ec]fideh_g^cbcaa`__[XY[YZZXYXW[\Z[WXZTY]\Z`\U^bMRWYVWZY[\YWY^`baeada]^Yacb_a`a_\\]XW[[]]__\Z]cXYX]`cd_RXYPXVWXXWVWV]]^`aa_b^Ya]]^Y]^YXVW[\`^\_YZ^]^^a][ZY\_b_bddefggbZdfgigc_c^afdZhicfice^bbca``_]]ZW[YYXXZYWZ[ZYWXVU[]]]``bbxKWW\XW]\\]ZW\]_`bdbba]`Xbcb`cac^\\\XW[]_]`_][`d\\XZcecaR\YOXWY[ZYWZZ`]`bb`ac_\b]_][_^YYUX]]__^_[Z^^`bc\[W[]`bbcedgfegd\efhifcab\cg`\iibhife`baca_`_]]\Y\YXWXYYW\[ZWWXPXZ]acffrkJYW]ZZ_]\^\Y][^_acbaa]b[bda_cbb]\[ZWXjq`\`_]\ac_^YYcedaT_ZQYW\]\[Z[[c`cbc`bda`c^`\^__ZXV[_]\aa_][`abeb^\S\_`cddfegfefe^efhhgdd`[fg^ahhbhhfc`b`cb___]][Z[YXXXVZV\ZZVVULXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{zzz{{{|{{{{zzzzz{{|||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvuvvvvuvvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{{{{{{zz{{|{{{{{zzzzz{{||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||v}}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½±µ´´´³µ³ÖÒÒÒÒÖº}~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}v~~y1333332j{éääääèÊ»À¿¿¿¿Á¿éååååéÇ}~}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vxxxxxxxwwwwwwwxyyyzyywopppppprrrrrrrwzyyzzz~||||||}~||||}|
|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvuuuxvvvz{x{xwvx{wyzz~|yyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{zzzzzyzz{{{{{{zzzzzzz{||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwwy|{|zy|{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwww||}}y{zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z|ywwwz|||z|yxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzz}||}z|xxxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyy{xz{yyxxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxxyyyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{|||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|||||||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqppnnnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrqppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpppqrrqqqpopooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpooppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqqpppppppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqpqqqqpqpqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrqqqqqrqqqrrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrstrrsrsssssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz|~~|vvwwvuxzxxxxwwwvx|yy|zyy|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{{z{|{}|{{{{{{zyxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}|||~|}~~~~~}}||}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~~~~~~~
~~}~~~}}}~~~~~~~~~~~}~~~~
|||{|}||~~~~~~~~~~~~~~~~~~~~|}||}}~
}||~~
}}}
~~
}}~~
~~~~~
~|
~
~|~
~}
}~
}}}
~}
~~~
~}}~
~~
~{z
~|}}}~|{|
~}}~~~~~}}~}}}
}|}~~~}|}}|z|
}}}~~}}}}zzz~~
~~~~~}}}~~~}}}}~}|zzz~~}~}}~
|}}~}~~}~}~}}~~}}}|{{{zzyz~~~~~|~~~~}~~}|~~~~~
~|~~}~~~}~~~}}}}{{|zzyyy{~~~}~~~|~~~~}|~~~~}~~~~~}||}
~}}}~~~~}}}}}|||{zyyyy}~~~~~~~~~}~}}{|~~
~~}}}~~}}}}}}}}}{zzyyyy~~||~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
~}}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
~}|||}}||}}}}}}}}}}||{z|xyz{|~|~~{||}
~
~~
~}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~||}
~{z|
~~}~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}||}~}~~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{}|||{|||zzy{|z}
~~~
~~~
~~~|~~}}}}~{|}}~
{z{ywz}~
~~~}}}||}~}||}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}}}~~~~
}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~}~~}|~}~}}|{|||z{z}~~|}|}||~~|{{}~}~~}{{{}|z{{{~~}||~~~y}~v{vx}|||{}}~}}~~~}~~~~|~~}}}{{}}|z||~||}|||||}|}{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~}||}}|}}}}{|~~~~~~~||||||{~~{|{||||}|}|~|}||{{|y{|{{}{}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}~~}}|}}}}}~|}|}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||}}|}|}}}~}}~~|{{{||}|{z{|yzyxy{~
~~{zy{}}x|zr}{{|||~~}}
}~~|~~~}|}}~}||~|}}|}}~~}~}}}{|}~||{|}zzyyyy{{~~
~~~z{y}}zzz}q~z{|}}}}zx
~}~~}~}~~~}~}}
}~}~~}}}|~~~}}~}|}||{|}{{{zzz{{|}~~
~~~}yzz}|yw{t{|tw}~}{{vv~
~~}~~}~~~|~~|}}|~~~~}|}}{}}}||{||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||{|{|}
~~~~~~~~~z{z}}uqz|zqz~}yxut
~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xyuu}
~}}~~~~}}|}}~~~~~~~~~~~
~~~}{z{z|{z~~}~~~~}~}}z{|
{{syz|pwuvwyutz
}}}~}~~}~|}}~~|{{z|{|~~}~~}}}~}}{{zx|vyy{qtxwvxury
~|}}~}~~}|~~~~}}z{{|||}|}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{{||||}}~}z~}}x~|||~~~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~~
}}}|{||yz{z~y{yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst
|~}~}~~|~~}~~}~}~~~~~~}||||zyvyyzyvyv~|{{{~}{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~}}}}||}~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{z{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvpxyrx
~~~~~}~|~{~}~~}}}~~~~~}}~~~|~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}|{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~}|~}~~}}|~~~~}|~~|}~}~~~
~~|{{||yw{ywxwwx{{z{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqrpxwq{
~~}|~}}~~}~|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{|||zzzzzzxsvupprowvr{
}}~}~~~~}~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyysuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|z|}{}}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z|{{yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}{||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~~|z}|{}xwvyyy|}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~~~}}}|}z}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{
~~
~||||x|yzyz|}|{||}}}||~{{{zzzupxwyvu|uv|
}
{~~}y|zzz}}|}z||}}|z{~~~}}||}|vrvxxvtvu}
}
~
{||}zz{}}||z|~}|}}~~~~~|}}~~}|{xvvw
~
}}||{||}}~~~}~|||}}~~~}}~~~}}}~}}~~|}
~
}}}||||~}}{|}}}}}~~~}|~~~~~}}
~
~~|~}}~||~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uy~
}y|~{
}}~}}}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqtpurstv{}uvy
hzrss|s}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyy
rpvxqvtturstvinrotvnulwm{snym}rsvsvmmxlpylu}}~}}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}}|}|~~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyqjoyxpkyszozwvvp~~~z~}}}~}}~~~~~
xyrz{pp
x
xyks~y{krz|m{yyt}vnoot|uwqy}}m~uo
zrr{|upozls|nw~~}}{}{|}}~}~~}~}~|}~~
}w
}~{|{~{||}~}|~}}~~~~~~~}}}~|{|~||
}{{|}{||}~||~}}~~}}|}~~~~~~||}~{|||{{~
~|{}~{|{}~}||~}~~|~}}~~|}||~~|}|||}|||~z{{|~
{{~}|||}}|||}}|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}~}{||~}|}}|}{||||||}{{{}|{~|{|}}|}}}|zz{{||
zz
~|~~||}}|}}|}z{{z{|||{{{~{{}{{{~||||}~}{z|z|}
|
~~~}||}}{}}|~zyzy{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yyzy{}}zz{{}|}||z{}||}|~~|{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yzz{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|z{{{|}}}|~}||}~|{
~}}{
~|}}}~~~~~}}{|{zyzzyzz|yzz{{{|z{{{{}~}}}}||}}|
~|~~
}~~~~{||}}}}~~}}~{~{{zy{zyzz{yzzz{{|z{|{{~~}|}||}~
~~}|}~~
~}}~~|~~|~||~}|~}}|||{{zzzzy{zzzyyzz{|y{}{|~}~}}}
~}~~~~}}~~~~~
~~|}~}|~}{~|}}}~}|||}{{zzzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFL=8765999<>9?<D:;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>9=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<9<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÒÓÔÔÔÔÔÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9?CE@<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÑÓÓÓÓÓÓÓÓÓÓÓÓÓÎÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÙ×××××××Ø×Ö×××ÖÓÒÓÓÓÓÓÔÔÔÔÔÔÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILO@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÍmpppppppppppj§ãÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¹´ º¸¸¸¸¸¸¸¸¸¸¸·½ÒÒÒÒÒÒÒÓÓÓÒÓÓÓÜâáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVN<::87>C?8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÎN&+++++++++++"ôëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¤ZUVVVVVVVVVVVRy§£££££££££££¡«ÒÒÒÒÒÒÒÒÒÒÒÒÒÑßêêëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;?C>6:7>>;=B?9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÍÎR+11111111111'óééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¥_YZZZZZZZZZZZW|¨¤¤¤¤¤¤¤¤¤¤¤£¬ÒÒÒÒÒÒÒÒÒÒÒÒÒÑÞêêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<;;<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÏ\9===========5ðççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©ª£hdeeeeeeeeddda¬©©©©©©©©©©©¨°ÒÒÒÓÒÒÒÒÒÒÒÒÒÑÞéééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÅÂÃÃÃÃÃÃÃÃÃÃÃÂÉÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÏÎÏÏÎÏÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÑÍÌÌÌÌÌÌÌÌÌÌÌÌËÎÒÒÒÒÒÒÒÒÒÒÒÒÒÒÔÔÔÕÕÕÕÕÕÖÕÖÖÖØÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<8@B<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÏÐÐÏÏÏÏÏÏÏÐÔÐÐÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÐÔÒÏÎÏÓÓÏÎÐÔÒÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××Ö×××××ÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÖÖ××ÖÕÖÖÖÖ×××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÏÊ¥ÑÏÏ¢ÊÒÆ«ÑÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÏϪ¬×¨ « γÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D?A98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÐË¡³ÎÏÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<:6?B@C:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏѽȫ§´ÀÉÆÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8FA?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÏÒ Ã¢ ÅÓ ÎÐÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÓ³ÄÚÅÉج£¿ÕÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ×××××××××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:=?>=<9@<<::9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÑÎ ¶ ¡»ÍÈÒÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÑËÚ¨¯³¥ÐÛ¢µÕÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:96:;::;8@?:<<9<>=;;:?9?:;9=>==;;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÉ¥£¢¢¨»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:8:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡Ê»¡¦§¾© ¢©¢©ÐÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;97:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÓ¶Ù®¥Ô¾ÖÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFHKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÒºÄÕÒÕÁ½ÖÓÓ¸ÈÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>776;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÒÕÔÒÒÒÔÕÓÓÓÖÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEK>>787977899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EILAALD??;:889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEGIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDJ;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGIB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?:8776=??@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ×ØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@BB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEFC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<;DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGGNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsoupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjdmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>=<=>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸········¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µµ¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@???@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢¢¢ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¥¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;;;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤££¡¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::88:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££££££¢¡ ¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¢¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥£¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>98;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤£¢ «cimnifm £¤ ¡ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9;;>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:=>:?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKIRXY^AF99=9F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VPQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
}§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s}~
z}}¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
z||}~x
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPEMISWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~}}¨®²¯¯µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWLO_^\NUTbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
£ ¤£¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJCPK_bXZQ\T`MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©¨§¡¥¨¨«©©¯¡¡££ ¡¤¤§¤©«®¬¥£¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©©¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdVOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®ªª«¤¡¢¥©§§©¨£¢¤ ¥¨£ ¡¢©§ ¢¢®¬«ª§®¨¥¤©©©©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPORd\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨¦¥§¨¦©¨£§¦¤¦¢¡ ¡¡ ¡¤¤¢ ¢¢ ¡ ¢¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOWO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤¢ ¢¦¡¦®¦¦¡ ¡¤¡ ¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦¦¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvwa_\UYQUV[c^r_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;><@?CCEC9<¡¤©¥©§¨¬¦¡¢¤¦£¤±®²§¦¬£§ £¢¯ªª¬¨¨«°©¨©¨¡ §©°²¯¬£¢¦¡©¥¤£¢¦ ¥¤¢¥£ ¥¢¢¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤ ¥¨¬§¦¥¥££§¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wp}yf[[`_Z\V\hdocniib^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶¯³°«±²±£¢ª©§®·¶´´¶³¯¬«®«¶°©²±®§¦¢££¢¨¥¡£¡¤¢§ £ ¢¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬£§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxib[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>AE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ª²¸¼¼½»º¿´¯±³µ´··¯µ´µ²°¨¤¢ ¤ª¦¦¡¤£¤«¥¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨©«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥¡¡¨¦¦¥£¡¤¢ ¡¥ vxxxc[RYT__blhukpgiibYSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶´º±ª®´±°±´µ¶¼½¾¼¼½Æº¸·º½´¯µ±±º¸·²³²ª¦¦¤¤§¨¤®¤««µµ®³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¥§§¡ |xa^YSah`fsositdidb[LK>:8898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÃÆÃù½¿ÀÀ½¿Ä½¼º½¾´§ª±À½¸µ¹À³¯¯ªª¨§§¤¯§ª´¼±´µ¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`a^^jbbnwuvnl[bQU\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAB;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±°§¼¼¾ÅÄÆÉÇÅÆ»ÄÁÅÆÀ¹¯½¼À¾¾³«ª³»¾´µ·Âº¯°µª«¦ª£¤§±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklfnuqruqf^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎÌÌÇÁÃÇÇÈÊÅÄÅû¼¼ÁÅÁÅÅ¿ÃÂÆÅÀ±¾º¿Ã¶¶º©´³´©«³»»±±¯¬¤¬®´§ª©¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tkkndolhqxoyiia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABBA=@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆÀÅÇËÈÔËÊÇÆ¿»»¾Ä¾ÅÈÆÆÄÄø´À·´¼Á¹··¿À»®¥®·¼·£·°¦´µ¬®¥¥£¨¤ ¥ª³²¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vxz{vnkiguZfrwsxff]d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÉÆÃÃÄÂľ·¾ÁÃÀľÁÏÏÎÆ«¯¶´µ« §´³®«¸µ³«©£¢©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuueeijg]jomxwcb``^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÏÏÌÃÇÆÈÈÈÇÉÇÅÉÇÈÇ¿ÅÇÄÄÇÈÊÒÏÒ̼¸¶´¸¸Á¾¾º½º¼º¼¬§ª»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqobagugiitmxl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÍÐÎÇÌÉÂÁÆÁËËÇÆÌÉÍÅÆÅÃÆÅÉÍÐÍÏÌÇÄÀÃÂÉÍÇÅÁÄÇÁ»¾´±°°Á¾¿ÁÆ¿¾¸·Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlieunsb\bTWTSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<:>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÅÇÈÆÒÉÁÃÄ¿¿¾ÄËÈÊËȼ»ÈÇÉÍÈÃÈÉÉÅÅÃÂÁÂÇÇÉÊÇÌÈÇÈÍÆËÏÅ·ÀÀÀÀ»º½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrpfegdjebjmnn^X\VUNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾÆÁ¹»Ãº¸¹¼¾ÁÆÁƺ¹ÉÉÃÅÄÀÄÁÂÁÄÁþ½ÂÀÀÁÂËÃÆÌËÅÈÑ°¾½¸º»¼¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbabccjbfcZYY\YQNE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹½ºº´¿¸µ·²¯»¼·À·½Â¿Á»¿Á¼»Å¾»ÁÄÀ¾¾¸¼ÁÁ˾½ÉÄÀÀÊÀ±Á¿»¸»¾ºµ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qc`bbgjgfiei]VUSYOSKE8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´µ±°µ·µ»Á¸¾¸¿¼½·µ·°®¸¶¹¿»À¿·Á¼»Ã¶ºÈ¸¶¹»½¹º¶»ÅÅʽ¹ÅÀ¿¼Á¾¸Æ½ÁÀ¼Å¸¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zxpmeefoiekhXXNKKKRILHC9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿½¼²¯¬±°·¼¶»¼ÀĹ···µº¹º»À¾ÃÀºÄ¾Ǹ¹¸·µ¸º´¸³»ÅÆËÁ»ÆÀÀ¿½¼¿ÉÃÄžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksebm_\THKJDJBCG?9;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼¼À·ª¤®°·»³½¿»Ä·¶¸¶·¿¿Ä¼ÂÒÊÆÇÊÉÆÏÂÁ¸®µµ¼¾¸º²¾ÄÄÊÅÁÉÿ¿¾½ÇÌÇÇÄǽµµ¶Á½º»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qelintnwcgb\cQKTHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?=??FD@A?>:7?@CC?A=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼««£°¹½¾³¼¾¼Å¸²¸¹½ÇÉÊÂÍÙÈËÉÈÌÎÑÌÊĵºÀÃÈ¿¾µ¿Á¿ÆÆ¿ËÆÿÁ¼ÀÃÌÊÇÅÆÀ¹½¼Ä¿À¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_c^aaNHM?E@?DC<;::;:8;<:9<>9:>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED<AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´¼Ã¼ºº¾¼Ä¿·½¿½ÇÌÆÆ×Ç«ÔÅÄÊÈÌÌÍÊÆÂÃËμ¹½º¹ÀÿÈÆÄÁÁ¿ÅÀÊÉÃÃÄùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw{_pc[]_^SI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA>>ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼¶º½Á¼»¿¶¿Á¿¼¾ºÀÊÂÆÓÀÂÿÅÂÇËÈÁÃÀÀÉÊÂÀ»»°´»½ÀÅÆÅÅ¿À¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²²¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}zmsxsgp][^\YQEDCMIAE=G::59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯·¶²µ³·¹¼»¶»»½ºÃ»·¼¶¹Áºº¸¸µÄÁÄɹ¼¹Á½¿ÇÀ¹À¼¾ÅĽ¾¹²°®¸·¿ÃÇÃĽ½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸¸¸½¹»±¶²ÈÀ»¶´±°·¬³©°³·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|vluzpni\_`YSPAEHGK@DCH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÁÀ·½¹¸À¶µÀ³µ²²ª®¦·¹¯¯¶¸¸¸Âº´»·»¾À»»¼®¯®³²¹ÁÂÄþ¼¿»º¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ¯µ´´½º¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§¬¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsvvwnq`_e]ZUJ<??FF=FCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<:;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Ã¿·º¶¶ÑÀ²À·°~w¥µ³²·¾¹³µ²¼¹¼¶º¾²´´´°¸¾ÃÆÄÀ½¿¹³¯²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtvrl^b`[]OHA>=HCFMC@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·À½»¼¸¹ÒÌ°¿¬¡l}m`giz¥·³°¶ºµ´²¬¼¹¸µ¸Áº¸³±¬·¼ÁÇÿ¹ºµ®¥¬³°¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wo{ournc\fX\]RNMA>IB@JI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º®¬¼²¸¹·»¿¼¾ÕŲ©x~_ljc^az©½¶±´¶²´¯»º¸¶¹Àö®®ª²¶¼½¹¶²±¤§§£¦©®¹¬««¥¨¤«®®§¯¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmuik][jT]\OMHDFLBFMF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹ºµ¹»µµ³µ»¼¿Âͽ dZ]V
|a[¯Æ¹´´³°±°¹¸¶¼¸»¿²²²®±®¹¯ª«¬£¨¡¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬«¯£££¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndT`cW\QNLH@HQDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;=<<::@=<<;@>B@A?>958;<FBCD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²²º¸ÈųcYk\WdxyJ·Æ¹²³°¯¬®¶¶²´µ¯ª¤¨¨ ¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨ª«¥££¦¢ ¥£¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vybwln\QhTPNGOMLBOQ@>;>39:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¥ª¨µ¯ËǦsW]WVaf²¥vPh·¾¶³ª²´®ª«¯°²³®¥ ¢ ¤¥¨¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦©±£¥¨ £ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uu}mk{dhUQcMIHGNRNJNG;E@=2?759;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@CAD>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡©¢ ¨ÂÆbZvedzu¯£vf_w¯´®¯³µª§¬£ ¢¢¥¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¤¡¯¨®²«¥ªª ¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}vx|dxy`bRU_HIIKSTIRPL9?B67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¥¤½ÃVhto~u}yz¢ª³±°°¸§¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§ £±®²°´©±¯¢¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|uvshle[SZYMQJNNULRLA7>B68=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢¡¡ÂÈQs¥´xipq{x¨©°®®¬°§ ¢ ¡¤¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¾°¬±®©ª´±°¨«¨²µ·³¸¬±´¤ ¥¬¡¡¢ ¤¡ ¤¡¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xuiwu]lZR`HQUHFUVJBLG=KH8E<67;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¢¢ÇÍTvsoj`[]\^ean ª¨ª¬ª¥¦ ¨¥±ª§®£«¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼·½³³µ¢¬¢©¨²©ª¨§¨ª§¦ §¨¥¤ª¡¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vqmivmhm\X[BVMJGMGBFM<>L=4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·¤°¦£ ÆÑa|zyh`WLIKNPOQ\kª¯®©ª¦ ¡¢
¡«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶ººÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸³»Æüû·³©³ª³´¯³®ª®£«§¶±¬¢¯¦¡£¯±°¤¤¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¥¦¢¤
{tqkkurphW[QETHDIOH>EA4EH95;=6;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<<;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ ÄÈqxvgVRRnWWNMDGa¬®¦££¢ ¥«¥ym ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿ÀþÇÆ·ÃÉÉÂÀƾº´ºº´»·°¶²ªº²®»·¾ººª·«ª¸º´¼®®¹£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢}zqkdhoxjeZ[FKLEDSLDBE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ³²¸§¡¡«ª¡¡¢³klphUP\|¦yRMg®¬ wsqnp¦®´¹Å»ÍÇË¿ÂÌÎÍÌÇÉÑÌÍÌÇÉÅÆÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÒÓÍÓÐÓÓÌÊÂÅÆÇÊÈοÈÑÌÇÅÇÅÁ¼ÃÀ¾¾¾µ¾³¿¿ÂÂÆÄÇÄ®¾¸²¸¼ÄÁÁº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLCEPIDC@5558:B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A?<@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¥¨¬ª £¬rmcWNRh´ÓÓ¤¤³®¤yrroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÏÊÒ×Ñ×ÒÔÖÓÓÈÌÇÍÍÉÒÍÎÓÌÅÇÉÊÁÆËÆÈÈſó³ÈÄËÊÊÎÅÊ¿¾¿½ÁÇÄÌÌÈɿÿ¯³¨¢ª£¦©¬¤¥¦
zruvgcgvidVWQDMF@IQB=B<:22@<D<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ³·¬®££¢ ¤¬zfXSRXwÓ׿²¯§ ¤ |wpkebhqoq{
vpnqtp
³Â¾ÅÑÐ×ÖÖÒÖÍÔÖ×ÔÓÑÓÔÔÓÏÑÃÐÓÖØÕÖÒËÉÎÑËÆÍÑÉÒÕÖÙÕ×ÓÖØÎÒÊÏÑÌÎÐÌÒÏ¿ÇÆÊÃÌÌËÎÏÅÆǶ¿Ê¿ÑÌËÏÅÉÇ¿ÃÃÈÎÌÏÐÏÍÊÇ͸·»¨¥«§£ª¥©¨¨|xsvpc`erb]R\IJGAEHI>;@8=4585;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÁűµ¨¡¤¥ ¢«µgZTUVh¹®¤ ¡wic`____^_`^blusqpolrquÄÇÆÔÕÖ××ÓÖÏÕÔÚÔÔÎÏÕÔÔÑÑÌÐÎÓ×ÖÓÕÐÏÒÓÑÉÓÑÇÐØ×ØÑØÒ×ÙÕÖÌÏÏÊÍÒËÎÏ¿ÅÂÇÅÎÍÑÐÑÈËÍÀÊÌÅÓÎËÎÈÄÉÆÆÈÌÊÓÓÑÕÏÒÌÓÁ¹Å±¥¨µ®§¨¬¥²¨°³¬¬
|zqstmacim_VP_JJCFCQM?<>54:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¦®·¨«·×ÔÕÙÙÑÎÐÀ¼Ìɶ¾®¦ª¨¡¤±´UPSRe¦ }qecc__a__a`_``_`fmppnkorwwÌÀÒÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÒÊÏÌÓÖÒÑÖÍÏÕÕÑÆÑÔÊÐÔÕÖÎÒÐØØØ×ËÈÍÄÉÏÌÊË¿É¿ÇÉÍÎÏËÐÍÎËÎÎÇËÏÐÊÎÊÂÉÆÉÌÊËÑÒÌÓÑÑÏÏʽȹ°®»¸µª¶°¨¸³¿»±
zvopokadnpaW\ZIFFDMWE;@<33<=87855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6==?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¤¬®¾´°ÀØÒ×ÚÜÖÎÍÊÃÒÏÁÀ±ª¬ª¥±©mMJNX k^^^adb```a``a^__^]bmroostvvy¤¾ËÕÑÖÔÓØÖÎÎÔËÍÎÅÎÊÒÒÏÆÎÍÍÔÌÎÓÍÊ×ÕÐÌÑÔËÌÐÑÓÊÎÑÕÒÕÕÊÀÊÁÅÌÂÈÉÂÌÃÅÈÊÊÎÊÍÌÐÍÓËÅÈÏÌÈÇÊÄÆÀÅÊËÍÏÑÆÐÎÍÍÌÏÅÇÀ¸¹½Ãýù³²¾±»Ãĵª¥¢
xpqkmg``phXXhVLFLIPPB;D>;67:89:57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;776?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÅÂÁ¿»µ²±Ç¸ËÕÕÙÚÛØÌÌÏÈÖÕĵ°µ¨¡«ªaHDQ|ebbb`]^acb`_``aa`_][]grqqrsqmry¤ÆÓÏËÐÏÔÕÉÅÉÉÆÆ¿ÃÆÏÎÇÅÇÍÊÒÈËÎÍÆÑÒÏÎÌÔÊÇËÎÏÇÇÏÒËÐÏźľÆɽÂÇÉÎÄÂÈÀÇÍÇÃËÊËÏÇÃÄÐÈÆÁÅÇľÀÇËËËÎÂÊËÈÇÌÐÄÅÇ»ÇÃÈÈÂÏÁ½¼¿°ÁÉǹ½ª°²§¥¢£wntdk`^fpa[W`GHHGIMTG?J=64355=<48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ¼ºÍÍÆÐÕÕÙÚÛØÐÉÏÏÑÓÈ·¼¼®¥³§³dIK~
s`\^^^`^`cdc_]]^_``_[Z\`krrookloo}¸ÑÈÉÊÏËÍĺÀû»ºº¾ÉÆÂÃÀÃÈÊÉÈÊÈÁÅÌÆÈËÍÉÄÂËÉÁÂËÐÄËÈ¿¹Á»Åǽ¿ÆÏËÿûÉÆÈ»ÈÆÄÊ¿½ÂËÆÅľż¼¿ÃÄËÅļÀÉÂÅÇÒÄÀÈ¿ÊÉÆÇÆÐÃÃÆïÄËÇÃÊ·¿¼º´©¬¤¥¬£¡¥£ {vstfiZanlZ[XRDLFBGDLDFS@54334?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ËÏÑÌÇÂÃÆÍÎÎÌÕÏÕÙØÙÏËÒÍÍÎÈÁµÄ¿³±·«¹uWyz
vxurp_Z[]``bcdded`\\]]_^`[YZ\borokilposƼÉÅÌÀÆ°¶º²²³²±Â¼¼¼º¸ÁÁÁÅ¿½¹½¿¹ÄÊÅƽÆÀ¸»ÄÉ¿ÂÉ»·»ºÅþ¼ÁÍÃƽ½µÁ½Ãº¼Æ»Â¹³¼ÅĶ¿µµ½¿ºËüµºÈº¿½ËÃÁÅÂÅÈÆÈÆÐÆÂÌDzÇÉÃÎÍÁÅÃÀ½²·°²§¨¨¹°¥°«¬yvwjdg`hocV^YJFJFHJAEBEI@9:648853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÆÃÄÈÎÑÊÊÊÇÍÍÎÑÈÐÆÕÔÖ×ÍÊÏÅÉÅÇÁºÇ¾®²®°x
x~|ttc[\]^``bcabeeb]][\^\^]Z[]]hsqmggnpry½ÌÀúÁ¸®°°§ª¬§¸µ·´³³´ºµ¾²·°µ¯²»Â¼Áļ¿ºµ³º¾À¸Ç¹´»¶À¼¸½ÆÁûµ®²¶º¾´Ä·»µ«¸½½¿½°º¶¯¶º²Å¼¶®»¿´¶´Å½¾ÂÅÀÃÅÆÈËÅÀÆÆ»ÇË¿ÏÊÇÃÆÂöý½¶¹¾Ç¿¬µºµ·¶xtxfgebkn^V^`FKHHJFBDAEE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÎÈÅÈÍÌÐÌÍÈÊÈÊÉÊÄÏÍÒÏÍÅÇÁÅÁÀ»¹Ë¸°±¯{x~wx}ti^]]]_`_`da^dec__\[^\]^Z[[]_lpmhfjmnr|¤Ç¿¸¸µ°«¬§¢ª§«³©«©´¶±²©®¦¬²¼º¶Ã¹ºº±«µ¹»´Âº°¿±½¼»¶¼Ç¹Â¶ª¨°±¿µ·¼¯°§²³´»¼«µ¥®¶®º±°ª¸°»®»¸»À¿½¹Â¿ÇÃÅÁ¼ÆÁÇ˸ÅÇÅ¿ÆÃùÄÆ»ÆÉÌ˳¹Â¼º²rvvkiablhYXW[ALKMIEAC?FA:9:995854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÅÎÒËÃÅÁÅÏÇÍÁÃÆ¿ÅÅÃÃÊÂÉÊ¿À½Â»´¶¶Å±«°®ª|v|x~
z{wo^]\]]_`^_dcbccb`_][[ZZ]ZZZZ\enohfgiknr¹°µ®¦¥§§ ¤ ¥«®£§¢«ª¬ª°£¦ª´¶±½¹¯·¯¨®·´´¼¸³¼¯¸¹´±¼Á±À®¥¨¢«±²³§¼ª«¨«¬´³¥¨¡¤¯©²¥§¨¥¨·¬°²·ºº»±»½¾¾Ä¿µÂÀÇÈ·¿ÀÄ·Ä¿»¿Ä¾ÄÈÌÊ¿¾ÃÀÀ©rtrji]aodWVXPHYRSKFFE>>@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÐÏÌÃȺºËÁ˾»Ê·¾Ä¿»Ê¸ÁĶ¸¾·²°¶¾°ªªªn{~~xt|swf_]\]^_`^_ccab``_^]\ZXZ[[YXZ\_fkfegeikor
ª¥¬¦ ¡¥¤¡£ª£¢¥¥¨¦® ¤¥«²¯¶·§°¬§ª´ª´º±¶µ®¶¹±¯º¹±·¤£¦±§«¨¹ª¤§§¨§² §¦¤¦¬§¤ ±¬²´²´°µ¼¶»ÁÁ²º¾ÃÁ²¹¹Â³À½¿µ¸»½¾¼ÂÇÄÂÿ¿Ä wpkaf_ko`TY^HNgOTHEJF<=?=:;;825536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:7676778666;::;9;;<859<:>>@;ȵµ½¸ºÀº½µ ¡¦º¶«³³»³ÄÏÉËÂƸ·ÇÁÌ¿¸Ê¸¼Æ¹´Å¸´À®¸¾´®§±·±££¦t|yutomkjjqi^`]\\\^`_acb````]\[\\XYXXXVX[^_dcbegggjmo© ¡¢¡¢¦£¥¢¨¢ª°±µ¢©ª©««¤´¹·°¬³µ®²µ®°ª£¢²¤¦©¸¢¦¦¨¬ª ¥£¯©«§ª«¬°²¸¯¸¹»°¶»»º«³³¹³½´¶±±µ´¿¶½À½ÃÁº»½zrk_e^ddXTW]IW\KPGIIFA<??@;?<04535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÏÈÈÀÆ»»ÄÃϾ¹È¹¹¿¸³Âµ²½½®¼¼´¤¡«®« xrnpnkb^bff]]^]]]\]_`abccba_\[[ZZYXXWWWXXXZ^bdeeffhikr¨¡¡¢¨¥¦¢¦ ®®² ¥¢«¦¡´°±±¬¨¯²§º³¦¶¡¢£¡£¡©µª¢£¦¥¦£ ¬¡«¦£¤¦«³³ª´°²ª²¹´¯©¯²²³·³®©¬®²¸°º¶¹½¿·²±
yue^e^[YVSZUK\QLIEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ·½¿¶¾¼¿³¥£¥±Âµ¶½´¸ÂÌÈÆÀÅ·ÂÀÇηÀľ´ºº³À·³º¼¯µ·±¡§£xoqtqifdhec\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXWVWadecdeddhjv¢¡¡¡¨£©«§¯°«££·ª ®¨¶©¦§°¤·°¤·¢ª¦¡¬¸°¢¡¤¢ ¡©©£¡£ªª°®¨´«ª¦²°¥ª®²±°¯®¯¦§§²®±´¯¼´º·®£yud^aVYWSRTKM^LPKGGLLE<@><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾¸¼®§§£ª»À½À¹®´¸ÁÌÇÅÂýƸÈ̲Áî½¼¶¼½¶º»³³´¬¤¬
}wqilrtpihedfb\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[cccbcbcdfj ¦¥¤¦§¦ ª¯¦¢£¶¨ ¡¢¨´¡¥¨¥°¥°¬µ ©¡¢±±¢£¡¦§¡¢£¥¥«¤¥°§¥£««¦¨®¯®«¨ª©³¥¦¬¯´±®¼µ±¯¯ zvrda\Z]XNLRHRaMWPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8846863321./2556;:8;7876<;:;;A8x»»±µ½°»±·¬¥§·»¼Áź±¹µÄÉÉÀÃÆÆȶÆijÂÀƬ¸¸¾·¾¼½¸¶°°«£¦vuncbfihfhjgjm`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWTTVURURU``_`a_`acdi£ ¥¡¦¤¤¢£¢ª«¥¥±© ¥«§¡©©®¡¡¢£«©°¢¡¢¤ ¡ ¡¤¦£«¥¢¤ª¤«®¥²©¦¥¦¦´¦©¨³µ´¹º¯ª¬rpo`[WVVRGPOHZ\ORITKSLEFIC8;;=<8667:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:86:8698989;9@9{µ´´»²¯«±¨§¯¹¹³ÀȺµÀ¯ÆÉÍ»ÁÊÌȵʽ±¾ÄÊ®²¹Ã·½Â¾··®°©
u{tiiilgjlmkjme]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\]^^^__bdm¢ §¨ª¨ª¦¨¥£¤®¤¥¯© ®ª³¥¦¢£¡©©¡ ¡ £¢ ¢ ¢¨£¢¨« «¯¤®·¥£¤¢¬ª¨«¯²·²½µ³«¯ssh[XXSUQEXLQ[YMUNPLPQINIB<??A?<65799<<987:79:;<=>;7;;:=67:;8976989:6:=99577571141-+/434988::8::748=8?9~³®¨³¶®©§¯©¨¬·¶¬»Ê»¶¿¬ÌÇƹÁÎÏȴż·»Äɲ®¹Á¸¾À½¶¹ª®¤wvwnmhmnmphgigd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUTSNPQYZZZ]\\^_`d~¢ ª©¦®ª§¯£§¬ ¤¨§®§ª¥¡§ª¥ £ ¢¥¥§¨¨ ±°¦±¼§ £¬´«®§°µ°¹µÀ±±«}qrbVSVNRIFVPRRLLXMJLNRGMJACFDC>@75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8³¦±·ª¦¢°«ª§©²±¤¶Æ´¹º³Ëƺ»ÂËÐ˱¸¸¼¾ÁIJ±³¹®¶¶½¶¹§¨¡¢
yjglnqnqjpkdfge^ZYZYZZZ[ZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajzv¨©¥¤ª§ ¥¢
£¢¢¤§¡¢¢¥¤¦¨¦¡´²¨²·¡¢·¬ª¤²²¥µ»µ««±£xrm]NQQLOCMNNPKFNNJJNMQIMJAGLHGC=858889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12776:999984988A7w¶§¤¶°¤§£©¥ ©¥¤³ª¢²Ãµµ²³ÆÆ·ºÃÊÌƳ»¾µ¸Á°®ª²¨°½²²¤ ¥p^_frpvqiniehhj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXYX[]aosvq
¢¡£¤¡s}
{¢~~ty¢£ ¡££¢´¯¬¯¬¥¸¦¦±¡±®°»ª©¯ªvrbUMROPMCSNLQMBPQHINSMHJJCJLFKK<749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-11764789::65:87A7x·¢£´¨¥¦¨£¦¥¦¦¦³§¥´Á¸¯´°ÉÄ·¹ÁΞ³»Â¬®Ä®©£¨¨¹°¨¥}gWV_gfighncjigb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTQMMJHNSSSTUUWY[]ilrm
|tNXr_;Wo{syz
}xro
}¡ §¯©¨¨³¢¦®¬«§´¢©£~rm_[NSRVLDTJPMLFNOIFLQMKOJIMPFII<7599999:7:;:>>8:==6:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· £¡¦¦ª §©§¢©°¨§´Á¹°µ°Ç·³½Ï¿¹¯¯¶Ã¨«Æª¤´¦x{^PLRUYZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`mpi{tPBA}
x`JQnx}
n~wuuwpQ|~xvhw~¤£¨©¥¤°ª¡¤¤¦ª¡©¢¦¨ule^[HQQRMIUMSILKOIHGKNLMTKQQOFIC<769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')+*,4833979:99::::?9w¶¢§¡®¡§¨¥§¨¯ª¶¼¶¸·³Â»¶¨ºÈ¸¶¨¨µ¶ª³¾¨«}vtZMKMNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZntw~ji]Ut|
{uxsnupty}ª
yzhv{prmxxz{vrrwhu{{© ©¥§¤ ¤rg`\\JVOQGJXROJMMRJJJMPHLQLRTLEHA<77;99>=:;<98@?::>=7==79937795675252572/2.,//200/-+(().1272198798775:<;7v®£¡´©¯©¥¬°±ª½´²»¸¶»µ² ·º²ª¬©¨³°¢{|vunZKHHHGEHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQQSV^u}ygw}gyvx|r|v{ok~|s{}tfv|lohs|lyq}pmuqiq~pC
wwz
}zu~£¢¥vnlebZWWTQJSUTOPNPVKNKNOJQNHNOKEC<;79;::?=9<:99??;8<=7<9999266856633621224.,,-..-0-+*''*.1362/876966527995y¦ ¦¯¬®«¨©°¯±«¼¸¬»¾¹³¨°§¬¥©¥¡zzurzvpqoZKFGEA@CDILLMQRPQSUTTUVWWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNPQTX^eprm§ªÀ~uyb{xn|yy|
omxsxjjr}Inhw~licly
ksl|nr{impsz}~{vots
ywp|~mhmnnWUWTRQYORTTSXUMNHNJMNKCHNGE?:89;99:><9<;::=>:8:;9?868727575541442/024*+**-.+-*(*(',-1250,4567485HA895w¥°¢¬ª¨µ¯®¬´¿«¼Â¿¦¢¤¡¡tzxsyoupjnn[NEFC@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORWZRY\`§bitze~pmzvtlts{jkMy
g1vsl~~tfet~
filukq|gqq{n{s}|qpnum~wytiyyvjjngdWQZWYY[MPUVYXNIHEJJHGBAFDCG=998;9:9<:9;:::@<9:<98>787715244533645031.**+),,++)(+'),,226,+5775478iO8;5n¤¨®²¦º®«²°Â±»ÃÇ
yqt|surqqhrjaTFIC?<;9:?@ADDEGJLOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQVLAIQIb¯³ q|xm}lr
zyr txsu5q¨¡¡¢
vp||shfbinrmpuioXupwl{}mqmpzsvmbv
ux~~zqpok^Z\][YX`^RN[ZXWLHJEJG?CABG>CD=;97=;:;;9:99;:?<88=:8;66651121353475531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥µ©±®Á²»ÁÆ}n
ul}wyynxpxfj^IPG>@7448;;<=>@BEILLLMNPQSUUVWXYXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~mw|}
~v¢y~
aªzw~s{\dqtz{wlgjbyo
znwtzptywkni]w}|
}q|uw{}uorsef_[Z]S[f^WQUX[UGJJDKG?F@DC>AA=:97<;;=<::99;;=>79>9986754244004645654-,)+('''&(())((+++/00Uq<23331E~W4=9\x¦ « ±¨¯À±ºÅºz
vk}xs¡
~~p~ziwkRWL@E211267688:<?BEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJi{y|q|z|~v¡¥¬©H®¯¯¨sl|}hghx~n
q
Gkwryvhmk_v}
z{uv|wmow~rrqkZ\\[ccXfe[UOPVYPDLKFNICFCCA@CA=978:::;;:888::?>6;>7585773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|~
¡¬¡¦¸¯³½³}tp~}}~¤
x~sx_cVKB60./23123668:=??BEGHJLNQSTUTTVUSQOGC?80,#[>?94.]ps£UFIKMNPW`YpZ\^j
~
¡¡¥»±§»Çè¡¥{rv
ihotqw{v
}nvug¡«¢{zzogkx~x}qjc]ZZ]i\af_YOKNWRQIPKDNGCKDCADCA<:87=<:<:88778:==8<=68656623445576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupgx{¤¡¬¦«¯°¡xw|lpj]CA4--//./02234779;=?BDHJOQRSRSTTRPOHDB<87/9D><<63.lMPHIKKKNV`cggmu £ª¥£¬¨¶¢¨Áîǯxº|¡
¢
lpuvql
r¡¥µ©¢~kjk|r`\b^Yfj\kk^WKGOSQNMLFIPDDNFBCEGB>997=<:;:987767;:6=:785456345566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<unhYppuqv~§ ªge¤~y}
xxgMR>/..,/.-/000212457;?CFNPRTPQRSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} ¨¦¢¡¢¨©«¨¬©ªµ«¿«¶ÈÈ·ÉÑϾ pi«©¡§¢wz~¡{v«³ }¤¢¦¶°¨lss|~zog_[_^afc`gg\QEJKPOIJLFFMCHLFFCBGD@:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Pqu`n}bw}|ªªBD}x{
w_bP460-1/,.00./..0015>AAMQRSPRSUSNSLEE@<>=GG@A@8662<9;FHGIIMOQYmw£§ª´½¸¥®¬¬§¨´¬±·²²»±³¾³Ä¬»É˸Ŀ¸¥£°²¬«¤
¦¦ ¢¦¢ª¨¤
£ ª ¤©±£§·» £°££¤¢«¯³µ¢¥«z{~}f_g[da]cc^ff^[OCIHTOFHLFKHEFHAKFCFFA:87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicXjpXz
v
ÚÈsV|z
qna@E64<2/110-,+-1/-4?DAMUQRTUUWUM[PGGD<>>FHCD@8;<5C;=FKIGHROPW ®£³ª²ÁÇë³Å¶¬³À³¸¾¶¿´Á¶»»¤¸Æ©¶ÉǶ¾¹´¨£´±±§¯ª¤v¤¡«±³©¨®µ»²º¬¯µ¢±¬±µ¼·µ®µ §§£¨©°²º¸¸§·©¥ ytX`cUea`b_`e_ZUJDELUQIJJDJHEA@@KDAMF<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AEWQJL[ZQcdWzuq}
v~{¿»£¼´y
zyn]V@EM<6:46AB764//6CHCQ[OQUWU\WO_UIKJA@?GKFED;>@7D7?BJJEGWTP^¥£±´Ã¶¸ÁÌɶ»Ä½³´Á·¸Âµ¿°·t±´¦ºÅ¤°Æ¹±³±´¨¤µ¶ª± ¢¢¥±¥¬§¤ ¬²º¢¨²¹µ»¾Ì¿ÅŽ½³Â·º¸¿·º·¹±¦±ª¾°½»Â¬»¨ª~ziWa`WidhdVZcYVTIGGLQGDIJAHD>?BBK@@LC99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FQLALRWTZVZwjp
nzsxb¸¡£{z|}}xyueO\dGEL:Qda[^SF>;HPDZdQQYXZgZT`aMSOEA?IJHEFA@C=E6B>HGKMSZT^¯¸µº¹ÉÀ»½ÉÌ»½À»·µ¼»·¾µº²Æ`u²¥±«¾ª¥¨«ª£¢²µ¡«§®¥§¦¥¤¢§°³¨²²¼¶Á½ÓÉÉÓÆÂÅÌÂÊÃÀ¾½¿»¼·´°¹··ÃºÆ¾ÃÉ°ºª¢¬¥¨¶~q^a`\Va^geRXaVRUIEENK@>GD=KB=B@=F>;H@796379>489:57045/26389373526?8@>GKRTTRPOQRQJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRLQ]gmlq
smsrsÕÀµ }x{{yt}zkepvY]\Peeb`ed][XW\MdmURmn_o_XgeUYTJDAKKHFHHHHBI9D?HKTTV]Z\¹À¹½·ÆÀ»¹ÊË»·º¶¸¹³¸µµ®¶¶du©p^¢¡¢¤«¥¨¥¤¬¤ª°·°¼¸ÔÐÎÖÏÉÌÒÌÏÎÊÇÀ¿ÂʽÁ½ÂÀÅÄÆÊ¿ÉÏ´¤»±µ°¬¹½~xj\_[X]`YbbQ[`SQKCBEFE<@E>BHB@C=:E>=J?47535;=468977022/24169775555D3ELM>510006:477@IOJ;-&**(-./,@M+/54mI0Ht?>BD@CDFKODR\Yi`onlotu³¬¡¡
~|s{
|ts{xlmu|iseilifjji`fihmZmt¤¼g[oh]ZYTHJNPJKQLTQHLAJGKP__bgjb·Ç°¹³»¾¶²ÄǶ°¹±°»¬³±§«·¬¶§§N ¦¥¡¦¬¯¨¯§³³ÓÔÔÖÑËÏÓÕÎÓÏÌÆÃÊпÊÉËÉÒÈÍÍÃÑÒ¸°Ä½Äº¦·»Ä¢mb[[\W_WYeYP\WNQCBHEBH;AD>AH??B7;D>@H=46655;:687654/10146278875367C5B8?-0,1349=97,.,1;FL=),(.0007K?-46TW0DwC;B>EBACJM?UYSfWshqoyy ª¦}
|p{r}qxulpxr{nxslipmcimpyiw}~Ë¿Âߧmcxod[a`JPRUNY^P]]NPNTQUT\nnwr®¸¬´¨°¶«½À±«µ¦¥¸§¬® ¬´¤±®¦«¬¤§¡¬¬ÎÒÕÑÍÌÒÓÔÐÔÑÎÈÃÔÑÈÎÒÓÓÖÍÒÑÅÒÖÆÀÎÈÈ鿸Ðxld\a\U^Q]ZNOSPNH>AFBBE<@B?EE>??:===<JA45465<888664412/03526768533;=<E=@11+/349?5901022-2EO3)/3.32=N248C}_2AtD:==I>@CFH<VRMO[uwmwp}~¡¡
y{r~z
v
ovsls||w|sxqkrrioqzyr{¾Ë~±vr
whaj]CZZ[WfdXekTX]\`c]cx{ª¤¤¢ ¡©¦ª±¹«¦´£¢¢£¡§±¦k¢~¬
§°¢ ¤¤¨ÇÍÏÇÁËÐÓÑÔÒÎÓÍÆÖÓÍÔØÖÖØÕ×ÕÉÔÚÍÉ×ÖÑÊÄÃÌqmb_^WRXR[OJGIIJ@;:;EBD<BD>HB?BB;;9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/-.;R017/532ED28>nb5=tM99@I<AD?A;PLFKYpu~isyr
x~xs{}w{nwpmuvx}t|ylvuo}vuy{µ<AÆ¥~|jeWICecfchjdoy[_fhknin ££¦²¤¥³ ¢¥¡¨¢±~
z~ª£}«³§§½ÃŹ¶ÅÍÒÐÑÏËÒËÉÔÏÑÕÚ××ØÔÙØÍØÛÎÉÚÚÒÖ¿Ì͵vumc\XQUPYUEFJIEE=:7:@AC:GE@ECADA;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BT29254/7K75<`bA<svV87AH:?C><9QECJTlnopbqqs|~
}y
zyqz{vzzp|opzr{qnzuw}|u|°tY©Â¶pnc=^hrpqpnxweioruxr{ ª¡¢¥¬
}
~my{®«¦®µ¼¨½ÆËÈÉËËÏÉÃÑÊÔÖØ×Ø×ÕÛ×ÓÚÛÖÐÛÚÑÖÉÕÌwyggZYORS]HBEII>A>=7:=?;>H=@BAADA>?:87DB755479.566435532323647553457EBDCEB56<FNSM[nfcnsk`V>,4LG865433BF4=W_hLux^8;?F<<B<:9D?CGRk_mdbfkvqy~~|}~wyn{{tz¡vutu}toot|
zv|¸Æ¥ÃÉ·xpeNeczw¢yyw{|vm¦ £«
{|¡¼¡¨¦¥®§µ¾ÀÀ¹ÇÉÍÎÅÍÊÑÖÕÔÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÛÇ
ywehc_SVVUMKDND;==<9:<>9>A6>?@=@><9867CA6455=80665547745613854564557HH=DJE7925;H>;::7HP\ZRUXK9T>;95327I8=NYMHxxd5=>C=<@:6:>>@EQ_Yea][htzylwvz|~|
{~
z
{u}um}}~t|}x~yot}
|~{©Ã ¼£}}rs¦
{iGq¡¤
¡~¦
¤¸¡§ £®¶ºµ«¿ÅÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Û·wwviidV^ZSONHDLB==>99;:99<=6@>>==9:;;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8589?=DRSRX^UXfmmmiqsx{{}{{}{~uysztm~}w¡n©
z |~£¢£®
Wr¬\¢£¢
¤
³¡¡§±¸¬¥¼ÁÇÍÇÆÏÌÏÌÏ×ÏÑÔ®ÖÕØÚÙÚÚ×ÖÙÙn{sfe[\WRUWC@ID??>:49:;7:;:3;<?=>7;9:1:G=:27=@50677255?65;55858:57735HR7GOK994=EJB>1FCLA98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:<@;BQKKSYPTcbxlb~omwxz{}|{v
sp
{vwvt
}¦¢¦¢§r²§£ ¡¨¯n·ÄȲ¢¥²d¤ÍÈ
ª¤£
¥¨¡¢²´¥£¼Á¾ÇÅÅÉÈÉÂÊÓÌÍÔ¨ÒÑÖÖÖØÚÔÓÚÎq}gb]]\NITYABGD;A=837;<:8=649:<:72?9929I:>67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF>;88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBcFv}|m~xz~{vv|mnz|xx|~£³§£ª³¡§¥¤®¢¸³¡¡¤°£¤§§¬¯¤¡À£É¹«£¦²
¨¢
u²¤¡} ±®¢¤·¾´ÅÇĽÃÿÆÍÊÉÒ¦ÎÍÓÒÑÖØÓÐغqxt[_T_UOHJNDBCE5>:77:?<<7=42669774=5;5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=88567=:JFDGN[\YJf`;Hzzn
z|y~px|~}orz}|x§»¬¨²½¯¤³³¨£¡°¬µ¢¸¥¤©¸§¤£©©£¯°© »»®Ê¡j¶¸«°£¬½£^ª²|}´«¡¡ ¥¯¨¡¤³¸«ÂÈĵº½»ÅÇÇÂÑ ÆÉÍÍÅ×ÖÑËÔ¡oyg[YS]POEC><CAB8?875?G=<6<35345454B39:BM:B;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPdGb`bpJ@s}um|}}pww{ªÂÀ¯½Æ»³´À¼´«³¶¨²½«»¤¨¹¸«¦¦¢¢¤¢©¯²±ª¤¢¦¥¤º¯©À¼²¹¦¤¨~¼°z¨±¬ £¬ ¡§¦¤¢£°³§ÁÆï°º¶ÅÄ¿ͦÇÄÇüÕÑÍÅÊrq`ZX^ZLJBK@FG>A?B;:4>A==5<6>333241A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GD?CF\eG`igZ]\{uo~{q~{z§³ÆÉ¿ÂÌÂùǼ»¯«¹»²·º²À®¥À¤«¯»¼ª«££§«®´°© ª¡°µ§£º»¶Á¼¬¨²¥¤¨
©Ääz¢¦ ®ª¡ ²¡¤ ¥£¦¦¤¯®¥¿Ä¶Éþ¶Ï²Ä¿Ä¼³ÑÉȵswk[VZhQLHCLKKJAA=CD<5AD;;3=8B332263A05IEN>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBeYNe\fTcjyr|xz¡¨º¾ÇÈÉÁÒÉÊÂͽ³»¾§º¿½»Ã·¬Á©¬³»¾ª°ª¤¥¤¬®³¶µ ®¥¢£³½©¨½Á¤··°«±¬«¬©§¥¥vz
££ª¥|£ ¢µ¥¤£¢¥¦¤£©§¢²¬¨¼Àį¥²·ÌÀ¹¯Ä³»¾Â¸ÂÃÂÀkx`WVZZJKMJFDDHBBADL:4DH9;4<7E.12352B26SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQG7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>jH_XaZddV x
¡®¦¤Â½ÇÃÇÅÓÍÎÍ˼·°¹¼´¼Ë¼ÃÁ¶¶»³¿¹¼®¯¨ ©¨¶®©²·¬¢§¡«·¸ª¥°¿Å±½¹³§ªµ³®¥¬¨ ²Å§}}ª¥¡£¢Z¤e£³¥¡¬¬ª§¦ ¤¨¥¶«©¹»Ã´¥³µËÀ¸ª¶¬²º¸®¨¸º½¸jmYVSTMEJRNK?AHEDHGG95FM;>8=@J.32025B55PWN<LFKRLOHGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|gV;=@BFBpEiIRebLF¥¢©¦¢¯¾¯¡Æ¼ÅÄÆÆÎÎÎÒʾ»¶±º»¼¿ÏµÃ½¸¸·²±µ³¸³«¦«¬¹ª©§¯¯£®¤§¤¥µÀ°«¬´¿ÃºÀº³§¹µ¸³¯¥®®¤¡tÁ}±¥£ ©¡ `J¥T°¯¤¯®«¥ ¥ §¢´©ª³¼»»ª°²Ç¿¹¦¬«±±£¡±²´¤old[YNOKEOPQQ;GJHGICC>:KU?A:=EM07544:B34NWO<JKOUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@BAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}hW;:BC@=QEWSsbWFHª ¢¨¯§
¡£¤µÈµ©ÆºÂÃÇÊÈÈÌÍƾ»³®¹¸ÁÁ͵ǺÁ¸µº°®¯³´¦¤ª´µª©¦¬¤¥¤¨¬º¿¨«¶·¾Â¿¾¹³²Ä²¹½¬£®µ¬¹¦¦v¿®¡¡©§ª¡§nv¢¢®²¢ª¨ªª££¥¨¢±§©«º¶½³²¾¹· £§¨¥§¬©©ad`^QJLFHMIVL=MDNJKBCD<QV=AABDO18=77?B75UXN?HNQYSPQUKQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=.-R`MUHe^HE«¡»¯««¢¤££¶Æ¾´ÀºÂÂÇÈÅÂÍÈÁ½¹²¯¸´ÀÂʵŲÁ¼´ºª¨°££ª´»¦©¦«ª©®§£ª«¾¼¨¼´¸¾Ç¼·¶¸Á±¾Á´©µ·«¾¥¢¢ ¼ ·©¥¢¡¨¥³¡¦¨ª¤¢¢ µ¯¥¤¯««ª¤£¨©¤¡¡´´ºµ¨µ²³¢¥ª¡v_[_]JHEFMQHMEFGBRLIBEGAVRDH=AGQ1;B7:BF79\YKALPTUSMWRNUJD@JJNO9C@5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-19g\FCCpbGE§¤Ã¥©ª§¦¬¢«¶Ä¼¾·ÁÂÀÇľÍÆ»½¹²°¸³¿Âȵ¿°¼¶¸¶¦¤«¬¡¡ªªÅ¢¤©«¦¬¯«¢©¨¿·¦¾±¸¶Ç¶µ¹¸À³¿Â·µ³´¯¾££® ¡£¥££½¤©¨« ¦½¢£¢©«¡¤ µ¬¥±§®¦© ¥¤«±µ±«¥ª¬ ¨gbX`]NHGJNKHEDIA>PH@<GIH[ROK=HOU4BF9>HG5Ca[KCNRUWVQXTRUI@8RQPM:GA4CHQSIC;C>GVKC@O>K<06;GF>;FA46@9:?9;15D0-,/Mv\4KZ5,MnW<-=)#zbQ5CKQ:nRF<KxebVL¢£Å¬¡¬® £¥¦ª¬¶±£ª³¶ÄĽ¿µ¿Â»È¾Êȶ¸µ´°³³·ÁŶ¾±¸µ¸µ¦¬ª¬¥¤Á¤ª ¤©¯¢¦¨½µ¥±¼¹¶¶Ä²´¸º¿³ÄÁ¸¸®³µµ£¥¡® ¢¨¨«£Â©¬¦¡¾¡¤««¬¦¢W¦¡ ¸ª¦µ£± ®¢£¦®²«©¡¢¥¥¤`cYc`KHJJNEEAFJ>=JB99JKN]QQI=LV\9FI=DMI8Hb\LCLPSYYVWOZ^IA=WQIK?H?5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWrGE6=ue\KN¡Ã¨¥¢´¢²¨«¥ £©¬»°¨¬¶±ÈÅÁ²ÂýÆüÄʼ¯°¶°´¯¿Ä´¹±°¹´¬¨°©ª¥¡¨Á¬¬°ª£®±©¤¨½¶¦·»¾¯·Ä´³ÃÀ³Ç´»·¬´¶ª¢¦¤¬¢¨«°¯¯»²¦ ©¨¢¤¹ ¡¤¯¯¬¥§¡¢§´¦¦³£®¡¡¦¬°¥¦¡
`eZgeJILJRBC@IG;;G?99OMU^RSJ>O^]=HPBLLI9Mc\LELRTY[SUO\bHA?ZQAHAKB7FELKM?;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<v]^?[T^eq@8;HweA4£ 餪²¡£´ª³¬§¢¤²¬®©»±°µ´ÆÀÄõÀĽÉĵÀÈÁ´«µ¨¯¸¬¿Ã³·®¬¶¹¥«²«ª¦»´§° ®´²§«¹²§º³¸²¹Àª·²Ä¾µÆ¨¿¯·µ©§¬¡¦¥¢¢¥¯¸®²µ¶ ¨¤¤ ·¢¤¥¯±²§ª¦¢¨ ¡¯²¢¦®¤ª¤
©©ª¡§
xbh\jjMPMNT=CANC::I?77RO]^RVQAW`\BJSHVKH:Td\NFON[W[RPQX]GAB[PBG>NC9HGHOP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1[bZ33806p[bH05IphVCWFyfC;££¡¦¿§¨¯¯¡©µ«º±«£ª´¶±°¹·°·¸¸Ä½Ãǽ¼ÄÁÆÀ¸ÀÆÀ¹©¶¤¬»¬À··ª¬±º¢±²¥§ª¹©¦°« °´³ªª¶¶»¬³³¹·¬¸°Ã»¾¿¦Ã«°·®©««¦«¢¢¡¡±¯³¬°¹© ¦¡·©¥£¢°±´«³¨¬ ¥¢£³°¥¨¢¨¨¦£}
jhl`lnWPQZTACET@;;HA7:XPd^PVWEY_]MLRN^KJ>Zc^NHPO\UYPKTWZI?DXPDF?N@=IGGQPB=DFBM?:1D?77547?=95E4+75/251.-.,1=*'+=\p=>1.0dZd@1647gY`F(?8l}g[V;{cC=§¢©½¢«°«£±¸ª¥¶´¬ µ½®³¸»º½¶¶À¿ÈĹÄÂÀÀ¸Ä½Á·¯µ§«·±»¾¿´©®±¶«®¨®¦¨§»¤¬³¬¢±°³¬ª¶´µ½®°±µ¬°µ²Á»Å·«½¯±¸¬ª£±¦¥©¤³ª³«ª³§ ¦¥´®§¡®±§´²ª¤¨£¢¨µ©ª¦¥¢
{elrgoq^FYfVDCMXDZ9HB6>]Qh\NY]G[^]NMRXdJJC\b_PLMNXWXPJVVWL=EUJEDAM@AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,,%2+*5K1/'__`U150=`V^8)C3YT\gK6zfL@¤¡¤¬¶¤ª¦¯®·ª¯µº§§±·Å·±·½Áµ´ºÅ¾ÌŹÂÀº¾¹Ä·À¹²´«©º¶»¹¾´©°µ§¬ª¬«««½«®²£«°´®¶²¹¸ª®¯²¨µ¯´¼½Ê³ª¶µ±´°¯§¡³ ¨ ¦²£ ¥¯¡¤£¥§³©¡¦³¬©µ¥¯±µ¯¤§«·¢¡«¥¢¡ z
{jmxmu{aE`jYIHYZ={JFD6AbTi[M\aJ[]ZRRRbaLKE_``QLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`U`/5(C_Q\.*B/JGP[H3cYUKD¡±¨±ª¦¤¯®¶©·´¹¤¬´·É»´ºº¿¿´³·ÃÀÌȼü·½¿¿·¿¼±½§º¹·¶Â¶ª¬±·¦®«¨£°ª¯º£¬±³§¨£²´±±°µ±¸´ª®«²§·¯¶´Äƶ©¶¶¬°©§£¶ §±¡¤±§ ª¨£¦¦¥¸§¢²µ¬§±§®°¶¬¤ ¬¨©¸¢¥§£ v{
mpwt{~\Kel\KNc\>b{GI8GgWf\L^bMXYWTWTi]OOHa]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANHf27'GbLV%-B-=ELQ<3rkICC¥®¥®«§¥±³´ª·±· «µ¹É¹®À»Â¸³±µÂÂÎÅÀÁ½´½¿¿º¾¼²Ä§©¹°¶¶¿¼®«³² §±¦¥¯¥²µ«ª±²ª©´»´²µ¬´ª¬¨©¹²±ÈÀ¸¥º°©¥¨®°¦¥£¯¤©¯££¢£¬£ ¢ª¦¦¹¥¬µ¶¥ª«¨¯¶®££©ª ¤³¡ §v}
|||psq}|}\Sdn^NYf\FD[G;NmXb[L`bNVWVWTYg]QRLcZ[TKGOTSNGIVS\N;P^IBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Bc;6*HeHJ+;H?3BHS,>k;GHª«¢©±¤©¥³´±´µ²²¡¬®½Ìº®ÀºÇ±´´ÂÂÑÅƾÀ²½À¼¿·»Ä§¬·¬³¸»À¯«± £§ª¨¤°¤«²ª¯¬°¯°®«³¼§¶±²©²©«¦¥£º¬ª±Ãº¶»©¨¨ª©³¥©¤£®ª¨¢¤¬¥¬¢¨ª¢¬¦£¬¸±²¡©¢ ¬¯±¬§¨©¤ §
¤~}
|w~
srquk_Y`ncQsq\K;|F?WtXaZNc[NVVUWQ\b_SONhXWWKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*25>10485(5/*,.30;),,'%234$,2-860)(1<]J0.JgDF8<B05EKX1@Z>LE¨¡ª³ªª°¶¸µ®«¥«ª½É»°½·Â¯±¬³ÄÃÎÏÿ¾³¿ÂúÀ³Èë®·²¸¿¾²«¤§ª°©§¨±¦´¯ª°®²±´¬´»¤¸³¬¬®§« £°·«ª»·¥·¶¤ª§¬¬«®¡©§¦±²¤§¦¢¢¬ª¡ ¦¤¢«¥¢§±·®£¦¢ª«©¢¥¤¤
£¢|
zt}sv£xj^`nfWecN?gLEbyWbYReTMVUVTO\]aUKMiWVWIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*39?./463)4+*,+.#4.-+&(+79*&6+<-2,&06WZ.0JgAA<<B+:JO^4D>HFD°¥£ª±«ª¶¬¶±«¥¬ª©¼ÀÀ¸¸³»µ¦²¯ÄÉËÑ¿Áº¸¿¿Â¹Á¹Àıµ±³º¿½²°®««§¶ª¦¯ª¹°¨±²®²·ª··¦´·«¬¤©ª£³³¨¨¤´µ ·® ª¨«©¬¨ «¬©¹¶©ª©ª£© ¬ª¡ ¤£¦£ª§µ®¨¦ª££¥§§ª£¤£
¢t~xtzw~oqggqx\`skO^VHmxUdVQcOMUTUPOX[bUHPiUVSGPYUI>IHOQPxLMV=<KD?@A<@CUC9AK=5;E13;97*4:=+-331*8**+*,))(/*&)%3;,$2)2021%/2Qb02?f=NX>C,>LT_/Ji5OD;°¡¦«®«¥¬°´µ¯«¦°ª©º¾»À°®¹®¡·¯ÉÇÈÐÁ¾½»¼Â½ºÃÀ¾¿®²²±µ¼ºÁ±±²«³¨¤´¨¥³²¹°£¶±°²»«º¯©¶¬ªª¬£ ¶¨¡¯²¢´ª¨§ª£ª¡¢¬¨½¯¬®¢¨¨ ¬°¢¢ §§§ª±©£ ¢¡£££§©¥}£
xt|uxyztsyh¤ui^dktg}SXp^KxsSeSQ^MMRYfNLVYdXFSiRQ?CNQaQ:IHLSIqQLS;<I?;<=;@@W<<?H73CB15:93-5::)-31.-5)(+-,42#2)',%.;.&1.0-14%,0Lg:48_=ad?F1CP[[+HM9UA4² ¤§¬¤§£¬§µ³±«¥±¨ª¸¾À¼¯§¹ª¦¯°ÉÇÈÑü¿¾¹¾¿¼É»Á¸°¯´±º»·À²³»¬¸¬¢´§§¬²¶¹³§¨¼µ®¶¾°½¦¬¬µ«©¯¤ ¥«§ª²¤³¨«§©£©¤©¨©½¬´¯®©¤ ®³£¤¥¥¤©«¦ª¢¡¥©©
~
~}
¡~r{z~|hx|zupp|gxdagbr
zmgx]]VAWzmTaPRXKLNqu]HZ[gYEUfPD>JNDCA9HGKS?jaJQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11&/>KH0%90%,,09/,,+6'17#-0GjI14X=fcAJ7GS`U*=9DW>*± ©¦¥ ª¥¸³³¦©±§¸Á½µ¯¢¸¨¨°ÂÉÉÌÁ¶½Àµ·¿¹ÈµÃµ³±µ±½·¹½µ¹¶¿¡³§««°µ¸µ«½¼©³Á´¼ ¯³µª«°£¥¨ª£¤°¦° «©¨¡©¤¨¡»¨®°® «£¤®¦¡£ ¤ª£¥¥¢¦¬{{~
¢|yl~vyxc{{qpprwhsjgeg`mslaio`o@[xkU^OQQJJMTYWM]^lWDX`O^PHMDF;7HEKO<rhKK9AE;;==;;=J49B<3;G<4?18-78;2(09/,4/.=-*K>*49&'.34.0+/4&,:$41BhY13S=e_DL6KVdO*;2NX=#¬ §¤£§¤¸°¯¤¯°ª«¸Âº³¸¯«¨´ºÈËÈ¿·Â¾°´½·Ä¶Ã±®¹±³À´º½·©¹¸½«¤´¨©ª°®¹±ª»½¤°Áµ¶¡®¶µ¦§§±³ ¤¦§¡¥¬¨© ª¯§ ¦£© ±¹£±® «¡¬¤¦§©£©¦ ¨¡ª}}| x
|
{sp}qtt`yxinppnh}qc{miec_e
~_ZskrLL~hXZNPLJHPRPIN\_nSDWZRhOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23/:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZgH*>0XV5(¦¬ ¡¤¢¸«²¥´´ª©¹Äµ³·®°µÆÈÁ·¿Â¹±´¼¶¿»¾¯«½¯´¿°¼Â¸©»º·§¨µ©¨«°³°§¾·¥¼·²°·°¨¥§¯±¡¤ ¤¤¡¯¦¡£¨¯¡ ¡¤¤¢·°¡¦±ª¬£¯ª¥©¥§«¥¢¨¢
z~zx
~yzprwoot_ywdllkihmerkkehZbs^ZlviZH}][XOOJHHRUF2:_^lPCWVYeLHJEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<#8R=*113>D5,-'42+;+139cl84GBg[HTCT]hE.;1_T,2£¡©¦¡£¡¸ª¯¡»¹¦¬½Ä³¯®¢µ¯¯´ÄĽ³¿º·±³¹¸º¸º®¿³´¸¯¿Á¸¬½º´¦¢³«¨ª³«®²£Á¶¥©··«²»©¦¥¨¯«¢§¥¦¡²¥¤ª©¡ ¥¤¹¨¤§¦¥¡¨©¢¡¡ ¢«¡£§¤y|
|x
{w~{lurmlsbyuhgigengghdfhj_fbifZezc`RsT[[SLIGIOS@!+j^jLCVU^`KHGEC.:B<F<6KPD8:D357==895?:;4>8@L=>93)8><:9*6@3.E4(+,>0-N?.+-7-1195,&.5-80576`tB3CDh[KWGU`hB378bM'2¤£¥¦¤µ¨ªº·¨¬ÃÀ·¯¬¡µ®§¯¯·ÁÀ½²Á·±®²¶µ¸·µ¬ª¼³¯²±½À·®¼¼±¥¶¬¦¦´©«®¡ 쩧±´¬¬´º¨ª«±¥ª¨¥¦¢¤ª¡¢ §¶¦°ª® ¡¡ ¦¢ ¦¢§ x
w{~{r~}gypkjlguskbgdctadefeijchoY^X]ldaMhW[`VIGHKLRX>9`liGBUS][IHFEA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A<-5B37=++,0A*JK./*+3722(57$+7.72785\yN2>HiZLZJVbfA:3@eG%5¤ ® ¥´²£²¾·¡±Å»¹°±¢¶««¯©¹¾½¼À²¯®®¶¯³¸²§«¹±®®´¶»¶°¸½¦µ« ¡±¥«¯¥Ä¡³¥¯²¯·µ¯¬®¢§ª¥¨¦ ¤£©°¦º¨¢¡¤¥¡¨©§§{t
|
ofynhkjgqrk\hcbr`dgjmlgjgdl\lmvqaTbhceZIFLMOXQPUaeT@VSYUFGFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24;6#3*)6.55465Z|]1:Kj[M[KXdd@A1IdC'4¢±¡©²°¹À¶ ´Á»½¹±¥¶¯©®¥·¹¸¹»¯ª«·ª´¹¥²µ±®©±·¶±³µº¨©¶©ª¢ªªÂ¯¥¯±¶µ¬¬±¯ª¢¤¬¨§¤©£¥ £«ª©»¦¤ ¢k¢q¤v«¨¡x
mi~wpl}o]d`gkuwfhvifX]itnNPjdfqf^dfnli^]^
hOKD8ETg^JHPPUUKHS`oteE[QUPFGFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,,08>G701.*.*/668,#1'214:276Xl15Ok[N\K[fb>G1Ob<+/¤± ª«£½Å¯©·Â¸½½§¶°¦«¤¸´³´±¹ª§¬´¦°µ¢§¸¶µ¨§¬¶³®´³¢©´«¢¤§¨®½¨§°´¸¤¨®ª«¦¢¡¨§¡¦¦§§ ¨ª£µ°£¢£¤¡¡¡¥§¬rx uif}sx o~|¡ {tvlmied{mrbTmcmiqXjpnW^i[kj[pmyriZ^FN>F^MERVVQPRWTg^LYKRRPEGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82*/1<I9/01.*/(-4583%&2115>1<8Xt15Rk[N\L\g_=K1U`7/(¦¬«ª¨ª¿Ã¯²¹¼·À¿ª¤·±ª¬¦³µ®¯³¶«©¥±¥µ³¬µ¶´¥§¨³±²¨¯ª¡³© ¤¤¢¤°·¥¦§¶½¦¬§©ª¬§¦¢ ¨¤¦£¥¥©¢£¦¦ ¶¤£ £®©¤±¤yÔ¨ÀÆxw±¥·dÀ¿yy|Êq¼Å{r¶§º{l±«°yhlX±®oei¼¼nhzmqØ~Sjc¶²~qu¡ªWOXaOVNFT[XQPS\W[P@\EQNDFI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww11Tk\O[M^g\>L1Z\41!¦§ª¥²©±Â½²µ¿µ¸¿Â«¦´©¨¯´ª¯¶³¨§¦¶¥§¸¯²²µª¥¤§²¯®±¦ª§¤²¤¢¢ ±®£ ´º¢©¨¡®¥¢¢ª ¨¡¨¨§¢§£ °££
°kjª~g
eq§q®¡¤~wº|k¡v±_j´[¥e`fzfixj©e¾rg¦v±j|±xucmm§n\ EigEu`}f{£§Y_«ixzj¨8J¯[WTmc[LOX_\WV;NOWV/ITSJCEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:6/'$203B/=;Uv2-Vj\OYL_gY:M5^Y31¢¬§¥£¤ª±·´½¾°·Å²¸ºÂ§¨°¬¯©©±¯¤±º°¤¤¯³£©¹©³²°£¥ ª°¬¯¦¨£¢±¤¯¨¢´³¡«¡ £ª¤¡¡§¤£¡¬¥¦ ¡µµx
©µw³·«~k¦z
w«gj±[¬{tpx
°vwqkjl|O¥XHcc~ch¦`yquR^P©mcq}a/R¢n[Tkg`LK\cX\ZB>°xWXA#MhFCDA@A19>89:84;:9<9:A:E::;6:CB8=?KNH:5:AFBAAD<FD;0202;F,0.840,.(/2,>831/2-D1<<S}n3+Xj\OXM_fW7J8aU50 ³¦¦¢®©¨³¬ª»¶Â°¼Â¸·Áª¬¯®§®³ª¢¯¼ª¡§µ£«µ¤¥²³¨£¡§ª²¨°¨¦ ° ¯£¤¨µ®¡©©§© ¥©£ ¢¥£¢ª¥¢ Õ¹q°ÂÆ|Ö»|¦¤z¢¥z¬yV¯{~j¹Z¹w}¦|zªy{±nt»
nP¯§ÅQ zc`ªbsrl_Sµ´È
|c¤3Bu]PjhdP@XfZdaJHMkJZSOYfZCC?E?0<<59;74<;8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DB./0483+-).323971#%5*>3==Qwj6*Yi[K\P_fT7G:aP72%¢±¨¨¥³ª¥´§¤¼·Á±ºÀ²¶´¼³¶§²±£±³¦ ¯µ¨¨º®¢¯± ²´±¡¤¨©°©´©¥¬¢¬©°¨£¬¢§¡¦¢¢¡£¡¢¢§ ¥ § ²nhµq«p¦r´ts¶{¤¢~¤~°uÒÑu[®|
¤oª¦k
}}{±sx³et
nfRÉZÂ\yb__vsb^YÊo¿uMKµSUÆdTQjcfXAOj_liPUFI8=WR[VYIC?J<2?;5=<56>;7><=C;G9;@7;>D;.CRJG>?<IJFCEE>II:1746@>/.24252-).26,742&60;5:=Prh9'Wi\BNT_eP5G=aM62.¢¥¯¬¤ª»¬¦µ¥§¶»¼²»¿¸·µ»»´¦µ´¢²²£ ¬¯¤¦º®¤±°´¸ª ¥¡ª¥²¨¬ª¥©£ª¡§«°¥¢¬¥¡¤§ §§¢£ ¡¥¢
¬{w¨v£©o§¢¢~®
³\r³R®}¤q×}w~w¯w´ael[°WKuyf`^vwgj]¯wxl5yÈ®²_BTo]g`EPl`qmVUM.ebhSYP;BD@L:5?91><16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@=V_cN6GC`I:77 ¸°³Á¬¨²§ª²º¸´¹¾¹¸³¶½¶¦¸´ µ ©«§¶¬¨°±«´¤© ¨¢µ§¦ª¤¥¢£¦§¯¥¡©¢¢©¦¡¦©¤¬ ¡¡ ¦©}}¥y¡ªp¦ ¢£ª{yo±Z¨ ytØvt§¤|{²^d }m\«\[hgªcr{jq]«Z kneOJC¡\ZMt]bfMZa_rt_JU5JXHE=HFAM35A8.;>05A78@<6=<F?:<6?=B7.HVJE@H6KIN@IK@EN::@4.;>002154+*05/7,&21($$6671<PeeA&Uf[?1U_bL7FI_C1=7¢¿¬´Â®«¨¦´°¸±¶¿¹º³±¸½ª»µ ±¥¦§§ª±©¯ªµª¯¡¡ ¦¤¤º¢£¬¡£ ©°¯¦¨¦¤¨«¨©¨ ££ ¡ ¡«®nr´t©w¦s´yt´¥£¤u¸o{¢kk¶Z¡ei ¢§mr´t²jku³af¢nk\`N¡|Rs£ly~np\¯V<wfTon.[§ObRkeblZb\`p|cSYQ>>mo2BB@?M:!7@6.;@37C58??3;<CDBJFMIF62JTKEBJ6IJP?HOCFP=<E50;;010/75,+,326/#00,,289/9N`eD'UdY>/U_aL5FM^91A8¥»¢²À®««§·©¸¯µÁµ½±¯º¹¬Á¶ª«¡§¤¢«ª§µ£²¨®ª¡¨ ¥«¹£¥£¡«¶¯§¬©¦¥£«²¤ ¨«°¡¢¡ ¡©ªÓ»t±ÄÃ}Õ¸y§y¢¶u}wv²`ºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¢~t«}¾ns¼t²uxmqm¤t½]w}[ay¼jZV[iy^iadfbmyoY[YCA@r?CF+5H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-6@9¦¢¼¢±Â°©ª¬±§¸¯·Å±»²®¼°®Á²¬¥£¤¡ª¤ª²¤µ§¤ª¦¬¹£®¡¦ £¯¹°«£§§¥¤ ¨« ©¤²¢¤¦¡¡¤° ©
µ¸xµwnlosnysÁ»¼z²¨pt¹|{|¤»¹½uy³£tvut°ufi¶trqw¶^y}gymyb¬pt
X[§jDdYTf_c]cQggqmuBMPMD;ZL?J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7>7070/9:.,/-*8/%&2(4$(>7/7KT_G'SaW8*O]]=+;VV'=:<¦ ¡¿¦³Â´«ª¨¬«©»®±Æ¯µ´®¸§µ¹©££§ ¬¤ª¦µ¨¨ £¬¥¾§¡ª¢¡¨¡²µ¶¬¤¤¢¦¥«©¥¦ ¨§¦£¨ ¬£°©§¢j~i§xs~uze{¾¿Àºnq
_rjZ]adk`cmvbke^_cqhr|fj~qty~}b[xthP\n|{jXlyrIJo
pNsMEW\faL[Wfc^OZmvjrRODEM<HI<M?2,2A?8/5?C<9;@;=C>RVVWYZ[[\]`aaa`\UG5DFUEJOHFPIIH;8=51:.1;:./-76=5&"/*2,%;8-7IR_I'S_V4)P^L(3>[O'?2>¨¨¡Á¤´º¶£¬¦®§¨µ²¬È¬°³¬¶¤¾²³¦ ¤ª£¬§®¤¥µª¤¢¦©¿¨©¦ ¥©§°²¾¬§§¢ª¨¤¬ ¤¢§¬¢©¡¯¦±¥¢¨£¤§£hn}qv´©
¡z¤
li{}urxyvv{jstudw}vkpzm`c[ogLXYej_WYpzonfSOFR9OZNRO(+;JB635=@A9:C><ENSSTVWXZZ\]`bba_^^[TKCSGKNDGPLOI<:;489,2;820)6IRO8")+/2#4;*7FO[J'R^T10T^:+=8]K,<-@² ³¡¿¢¤±±· ©¦³§¥°µªÉ«²¦µ¦À¨´¡¥¦¥ «§¬££·¬ ª¦Á¬¤¢£¨¨§²Ã¯«ª©« ¡¢¥¯¦¡¤§¬¦¡°¡¢§ ¢£¡{©¨
{
£~e¡³®w{}wyzogykuyrisyuktcxf_hdcdfjXk{pjk\SLPD_UF@?>,4@F;45;>A;<?>>HNNOPSTVVXZ\_aca_]]]^]XVJKLBIOMRJ;<:786/3964.(&$-1..)+*7%+<(6CMLD/T\Q05M[17E4\G5<,@´ ¹¯¾¬«±² ª¦²¢¬³°Æ°«¤³¯¼¤´ §¢¡¨¦©¦¤¥³µ¯¦®¾ ¬£¡©
©¬¢´Ç³©¤ª§© ¤« ª®¨¦£«¡¬ ¤°¤¨¥©f|e~cxlhjz£«kd~g
eeihz¡kh¢wkj¢slnzyXe]
^lv[hswwnxxsmysw{i
X]jsd]sik|qmc]QNWIdX@J3=F7?FD71<=?AC;;DGHHILNORRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%.++'6*$;'/AI[I.6ZO6)EY/DO1YB;?.=¥º¼¹¯«³°«¥¨®°§®°½±ª¨¥°° ¤¢§¬¬£¦¨©³®£¢¯¦¶¹¥®£¡ ¦{¥¬¢¨³Ã·¥¢§¯£¤¤ª¨¡ ª¯ªª£ª§¦§ ¬¡¥±¤«¡¥«~¾r´r
hw¹Ä¸q¡£{¦sª|ËÀÀ»q£|À½ÁÀ{z¿}k¥²ooÊzwvyyq{px
ylvbe^xd_eb^thmdbXLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__a_^^^^___]\SMPGUNA@?=6468266*&%#)*&.+*)109*#>H[L*#CP/#F[3PY/UAB;/8£¸Ã´°¯¿©©£¯©°¯¦²µ¯ª¦§¥±««¢ ª§¢«¢¥©¥¤´¤£¦®¬¸´§¯¢¥ ¡ ¦ª¤«¿¿±¡©®©¢¢¤ª£ ¡¬®¨¬¦£¢¥ ¤¥¨¤©ªª¢¥¡£Îyz¥z_]¨ ¡|§t«¯^d©z¨
t³c« ³j®t|¸aY£Ínu{Û{q~ue{vvl}n}
~l_pjof`_xd\qhjcf`RTSW^JOC5AHED8>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-J0';\:L-!P@F4.1ÂÀÀµ´°·£ª©´«¦²¬¤¬¦°ª §¦¢¯¡¨§£¦¡°¬¦®°«¨¬ ¥¥¨£®¤«°¨¿Æ³¨©±®¢¡ªª¡®§ª¨¦¥£¡ª¬³¥¢ªª¤¨¦¡±¢§ p
u¨q°|r¬} ¥w«}r~«v{|~ª¡~«{ zVÄzoÁ}mupmfweoawnrnmdnsuo`fmd_ohjnfcWS\`ZRRC9II@C<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;92478452&# 1' 1''45-&7=WJ-<(=1)3V@F!G;C1-+¯ÔÆDz´££¢¢®¶¯©±§©«¨®««¦¢££¦«¢¦ ¨¨¢°¬¨¨¯¬¨§©¤¢¡§£®¬£¬µ©¹Í²¦®¬¢®¬¡©°¨©¨ª¨£¢«¯±¢¨¬¯¦§¬ªª²££¥¤j¤uz©uz²q¥p¤_`R«®u®§z
{f£¤£}©®^|¨U¢z£{ïÅs¯´³¹qb©¯Âuhlnmxwwnkfddqpf{ic]V_iXXTLLQLCCAB;CA@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ('"+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÂÉÕÖÀ¡«¨¡¯¢°µ°¯ª£¨§ª««©¤¦ ¥¦§¦¤¬¢«¡¤¯¢ª¤¶°® ©§¤¡¨ ¦°¦£¨±¬¶È²µ©¬ª¢ ¥´¡¦ª«¢«§¡¡ª¢³¢ª³²¢«©¯¯·¤£§|ªlu«y|°n¤Ò·´¸É²^_©¤ zxªÉs£¨©~ÆÆwe¡¥s}¯^oµc±uK£m§Gd{p}ozt|zm[ejrqfi^aXcm\^YILLKEDBB=A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75785/)(%&%$&),5FNPPMFLJVF*L0/>-4NTQ;<F2,$¨¤Áƹ©³®¬¥¢²¹¬ª¡¦¨¦«¬©¦ ¦¥ª£®¬¦¡¬©¥§µ £¨«¶²¬¦ ¦§£ ª¦®¡£§©°´Â±²ª¨¥¢¤®¥¡¥¥ª®¬¦¥¬£·¬ ²¹°¯§³´´¦¨¤ Nxz£|¤¦¸{|y¹ÌÆöw¡~v¤¤¨~°
¬}a¥l£p
}r¬`¤rq`¼}RUu£{|szr}p\lnwrjnZc_hnbd]LLQSAHGFI99K>B108856877-*5==?BDGILNPTWYYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOTF<E2:P[T6?G,- ©¬¤«¹«¯ ¡¬³´¦¡¦¯®®©¦¦¦£§¡²®¢©§² ¨¤¢µ£¤¢ªµ¹¤££¢±¦¥¡¢¯¤¨¢µ±Ã±ªª§£¤¥¥£¨¡¬¤¥¯¥»¬¡··®µ²¹²´¨°¢¤ÑµÃ·y
¦x¢w
¥q«
´nri£|s®¥¢¦mp²\¥szl{~n©a¢qqbs²¸hw¤}w|xlhwixsnt\ddmmeh`JZWX<HF?T3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^``]ZZZXURRQF:2230/++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH#)%r®¿¿¼»µ¨¤¶¡¢£©§®©«¥¡¥¡ µ§¢©§°£«£¤¤ª´´¤¦©® ¦¤§µ ª£µ«Â¯©«©¢¢ ¦£¦£¦ª¦¬¡¤¦½¬¾°£°³º¬µ¨©²¥©z§}|°w¤¥m²o {¡¨¬
®
¨¡¢
{~««x y¯]£|¦§d|tk®]¥kq
]`[ m¥yy~jl}b}tmy_fepngghBY_[=JS2T8BBC7$$3+''3, /667436:@CFIKMNQSSSVZ]_a`aaa^][ZWSPONI7052.*,ATVVVTTUUUUTTUTSSVWWXVVUQHFIJ#((¼©ÆöÁ´ ®¸¥£¤£ ¯®©£¹ ¢« ¯ª ª©¥®°¬¦ ¨¢¡¥¡¤¨¥¶¨¿®¤©£¦¤££§ª«¢£©¨¾¤Ã¬«£¢¬³º¬¯¨¢´°ª«v¯~
|ºd°e}¡§°
¦¤¡¢ [lj³`{{²lgn±[}´[¤kÈ¢e{¼YvµZ²}R¯z¬X¡m§zx|cs|axs|`ifpmfeeOUc\AT^=H(>9=4!!-$2. *1/04579:<ACFHJLNPPRTWZ^```ab^_\[XUPNJGC553./@UYXWXWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³±·½»´Á³£¦¥¶© ³±¨¢´ ³¨ª«°«®¨¢¯¬©§£¨¯©¡¥£¢¥£©²¨¼¯¥¨|¡ ¨ §¬¦¤¤¢¤©» Ƨ¥©¢«´¶¯¨ ½¯®®©£®¤¸Ãº§¬¯¦¥ª~սªb£¿½|~£×º·µ
½¾j£o«nz²±Çk«°½¬xw¢¾»t¥xyb|zcgx{`kekjbPb[Si\@T`BL)<:5/$%2 $(0496678;>ADFGJKMNNQTW]a\__a^`[\YTQMHC><A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ»´´±¿º²½³¢®¦¥³¦¥¿©¶°§¡¿¦¦±±¹¨®¥§¯¬®¦£¬¢¥ª £¦§ ¨¢ ¬¬©¸§£{¦¨¨¨©¦¡¢«»©Å£ ¯£«³µ«±«¢½©°°tvª¤¶
eog¬mow¤ u°pr§£®¤rmmlexnmqzipifqhi
gpd]cioY]g~x¦`brofd¡|tewgjx~xdlcflbKdXJkY:PdDP'J:+# ",)-2.5:457:<?ABDEHKLMOQSV\WZ\`_a]][TPLHD=:AB7MXYZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨´ª»º²³ª©¢®¤³ª½±ÃȾ´©¿«¬£ ¦«º£¤¬¥ª
¥ª¢¤¤ ¥§©£ª ¥¦§¯¹ª«{¦¦§¢°¦¢¬¹ °Â¨¤³¦¬±²«¯©º¥°¹¡©¥¶¡©ª³£¬¡³£¡¡¢ ¤¡«¦¤~gtvtq§m| pgvnwu|yikddocU`Y@iZGb`NX+E=+&!640/!%2(*799469;>?ABDFJKKMPPQWUVY^_ac]^TQJEC>9=@ASX[\YWXXXXXYXXZZ[\^__`^^^__```_YY`¥©©¥¶¸®®¢°¥ ¶±ªÄ»Åº·©¡¥¥°¨£¶§©µ¦§¬£§¬¤¢¨£¨©¦¡¤§¡´¹§ª{¡¤¨µ£¦¬·¨¯Â®£·¦¯¯°ª«µ»¢±¾¦¤¦µ¢¦©£¬°¡¤²©°¥¡¤««¢ª
~fuvytj}
xqrx~q{~ind_pi`[_YmbP`dOY9GFE=2<=8/*&+)&&406658:==?AACHJGJKLMSSSUZ``i`eVPJACB;9EMV[^^[Z\[[[\]]_^]^_`aabaaa`bbbdb\[c¤§£±´¬®£©§ ¨µª£²»®ª«¡¢z¢°¤¥±©¸¦£©¢®¤¨ ¡®ª¨¨¨¸¶£¥y¡§¸£¯µ¢°¯t¤¾£² xz¡¬³½w®¥ ª~d[av¤~n³£¨¯«£e tzp¨l~¢¨e¥
wkvq|ai[vghry¢ewvhny~jpe_vokkh[ecaaoRZ=MMNRF=@TB91/&4:306678<;>@ABFHBGFIKLTUUY]`hggXQI<DG<9VR[`ab`^`_`aa_\]___aabcdabaaedchd^]f¦£¡°±¬«©¥©£§¥ª´®±¥©¦ªs¯¨«§¸ ¤~¬¤¨¢
t®¥¨£¹³§ uv¥²µ´½§¡~§¢z¤°¹§
°©¯¢y¬¢¨ª¨w¥z¦{²zcynqzqt
xht t|
}ijxzppgdxnilj[diier[]HTLQ@E5-YTT6)!09=>643568;:=>>?DI@IEJKGRXZX[aahfYQH9DK<>bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah£¦®®«¨¬ ¨°§§ª¥Æ¼¯ ¥¨´«§¢ ¾¡|
¬£¡¡¨¢£¹±§
pu£¬´´®Ê«¯·
°±¯©§|¨r{w¦h¤y´¦¨Â«¡q¥}
±¡| |
ms{r}
uÅf©¢jogwt{vghupghk^bnlfkXgG\QL2E46Mac7&4<DGD:63658;8>=<>BL?NIJKCPZ]\Wb^jl\QE=KM@JdX]cghgbbbbcc`_babcccdiicbbbecafcbbi¢°¨©¨¥« ¤¹±ª«§¢¤ª¢¤©¶¢¯ ¦¥¼ y«¢
w ¤¢¸¬¥bm ¡¨~¡§ ® ¬¯¤ª~¢uk«tM«x¨¨ª«~¡{z§ilgµ}m`cX{dgs}yk]|n_Sq
\`ly`Ye~q§ªk£nr¥pgdlZlzeY_~aWPovemtqjjn^jolkhWhN]XE9@4GD^k4+ICQMN=84859;6@;;>BO>QRLMBJ[]_W^_bv`ME:MOMTb\[fgiibbdaddbab`bdcabikdbddgdbgeach ¹ ª£¦¬¡¶¼«¯¢¡¥¬«´¢§ ¦´u¦
¬£©¥°¦¢in¡¢¥£¡ w§¢¨ª
¥y}}¢pr{ym©|¢sv¦f~w¤^{}s¢n·´ºs¶¨dƸ{p¶q¤ct¬«`}j³~n}q£ls¤s}£^³o{³tr[²ibosuqhnXklrrd\h]aKD=D5QAZq2<RF_JS=<395::6D;;@IP?TMNQ@E_^[YX``|dIC8LWUVbaZffkkbbeadc`ab`dd_`cknccddhdbgfchh£¹« ¥¸¶® ¢££¤«±¬« ¤«x
p¡}¨ ¢¨§¤~k{~} w¢ r¢©§©«®}z y£xs}§£d¡}lhnz§}rgsªsªg]
vhªj¸f\©pa^§vvhumj¦\¨~w»j}©Z]³g\nqxwki[pjyxa^dVaAPEO7VBRn4JZY^NZD@151;;7H?:CGU?XRX]>Db]V`Qac}jEB9N[^YdfXfgmmbbe_aa__``ec^bdoq_deekdcihgkiª¶¨c¬º²°¬¦§¬°§«¢¡ £iq{z£¨¢iy{¡ ¢rh p© ¤ª¡¨}°¤¢¸v£³¢£xzª~¢r¡}
°µ}k¡x~´££«¨{|~sªZ]o{xbL{{
dzBMY¢jr|nuy±³~¦t~mq|ori£]vHec`sp}}nf_khv{bc_P]V\TV@YEQgERV\aX_ID=B8@A:IE8LEXAVQZVDFa\Z`K`m}rEC<U^bZejVhhmobff^a`\]^`hb_ecvl^egfldelhhki±®S_¡§´º³³©¢©§ «£ §¡w
ny
}r r¨|l
q¡x
|£ £®}µ{¦z©¢}§hwm~s sq|
o®}£§¤p^©hu£co¥aÓ|zxrsc¢
~¢r¢uk³`sª²§¼wm¿¦ª´^o~ros¢r]£gt¦`h¦lÓznwykyvrl©¥g_dypkgfcnvwf_aQZePQaHWIT_WS[dj[eQFCKLJKBJD8P@PMXSXORQ`eeiRdxywJFEc]eZhjSihjocjf`c_\]]_hbahe{d^dgdkdjlfhlh°¬T\K~©¯²µ°³£¦ £¤§¨
{p}h}wpl|£ª
yvnw
¡y¢£ ³¡¢¶z¬§¤®¥p©|¤¢q¢®¤®¢vµ¶µÉ¡ta©myu¡w }oLf£ps¥{ytbl~ lrd`rtj{i³µ´Æ¦s~zj«tmswiytqPD}³^jujxfkgbttpmV]SXgORhIULXRV]gknVgWMJAJMJHJNAQJPdcimetrs~x{nu{{TQNl^h[kiRjhilgmfce_\\\_ibdhk{_]dgcjfnmeile¢¯§
f?¡²¬¯¯µ¢¢§¢¡£¤¦¥yjye~yui
z¥©y|yp y¥§gnxl¢d|q¥xph§|¥z rv¹n¢b}¢nriªku mo¦`iiu¢}_
uobh¡eiupdgns¢Z_[d¡n]o{srd¥nx¢df§hrn¡oRn ^d§T]TmmrjqmphkxskoQXVUeYSmIXO\HXihsjYkVQREV\LXRaUhj^wuz|p||r{svv^QsagbpgPjhhklohdg_]]]`jbjivu]\chcjirlfkmc¥¦zetm§®¥ª±±¦ª¤¡¡¡¡{qh|st}{e|¦¢«
}si¥}
ª¦¦x~¥²¯¥yy©t¥n¥¢¼n}¥¯ }¦zq¨ g~o¬cw¨l©¢vw«¦k°kv³©lnnb«ªw§w}
¤ iu«f¶sv¾¤Y¦«auqso{tqbj~nhlSVZU``\jL\R]I^lmv`[qY[`Zgsenoqcqt`wz~yryr~{{vbxdcnsdRlghomrifia_^\ajbllzo\\biamiwmglnb¦ª¤ªª¨§®£ª£¤¨
t
zo}surm}{
¥¥¥uol¨ª£ t~y¯¤qy{r§q}}zx{~~w ¡{}k
[yysypin~qtq
e_xvtuo{onn_wixfª~t}jou|umlfsw{w[jXyhnwqpowxo]lmigVZ_W\dkdUaU^Q_pwykjwejjju|pqtsaoubs{xuzuy
}{mldyn^Wnghukxjiid\`ZcielpunZ[bkdkkymhloaº©§¡¢¦¤¤«¢ ª ¦¨~r|}~ztrp
{}
x~£{§¡
wqª
¨ «~¨§xq{o~©
p}qjo|hm]sqtkvtYrn}~i]icz
_ix{|viykbqsw_r§fnwoxndfcyzZ\ifnv[zxwtmsrf\mkkbZY]YXkq[^`Y^]fs}{sotcjji{|rzwtdmthl{~uz|{yyp{}s~yrhT\qilvpugkgd]aYjhkjqrmW[enlgryohjm`«±¡£¡©£¡}«¡¤{|r}v
ror~z¦ x
z¬¡«¢¢££ª¢¨§¡|y¨~±¥²¦ k|vwe|
w|{u£~vqt
x¦{uk{yirh`tp}zvuowt]]ohn__Z[\RgqUc[[alht{|rnpdjih{mx~phoolf{rw}{m|zx|~zxNdvjsnq{ekebb`[sfpfrqlU]ltmhxzpgikeº¢¡¤ {©
|x{mxr~mk~z~}©q
}z©¦ ¢¦ ¦w}¥{|
ª ª~oxqua~t~
nyvu£
u}}ss|{y§u
{nj}{mhklg^y~g|{vtuuzw\`p}mt`cZ[^QfmSeZ]ajiuy~pllcjjgkrkjsnxnynv}
vq~{z|{`i{kuhiejc`i[cuhobumkTbqyeoyzrejmm¸¡¤{w¥¤xy
|l{xr
}|kh}|~|¦p ¡
|§w£ ¡¢¡£~
z ~|¤ ¦~}utpv`}q|q~
hxry~s}}rz|
{z¥
|
u
ydqz~xyplif^}sh|uus|rj^`tvpwdcX]^RjhTdX^`gjvxqfkclgejm}gmpj}wzkr}tv|z}irntibilb_qUtomn`xhlWjtvbuz{qbkoy³¥¥ |u£¡x{~~p~ztu
~wgc}x}y}o¥¥v¡¡z¤zy
}r¢ ¢{vq}mzc|
pkfvo}~x}}|ryz¢wv{t_ww|s}wfkc`~ijvstu}q|ccasnurmaY_]ZkdRbW_`hkuypbjclfh|khthloh|xmqt|~z~|muttmeljbcuVipn`xglajvpfy{yq_ql
®§¨
}v¨yx{}|{xsxys}d^}~
t}~~£ ~q{¦ t¦tmzo¢{yqyjul{~m
wo}~esj}
tz~vx~}
¤y
t}rt
l`ztyp|oanbd{anovswwssav`okuno][^]]j]O]Wbahmszk_iejchwmflhilg|zwos}tz}z}}ryyxnlkh_irchqoevgmlazhk|{xpawmª¡¤©}v¬|v}{|{vwotszo
}~|a\~szz¤}|£
n¡ o
gz
p¡}{ssukqnu|tnqt||eqmz~~
ttzo}
¨{}~
w~pn~bgwstnzb]o`jt^pjzxxlrpey]mlsmsXZ]_ajZOWWdcfqqe]ihgbgqndigdihzwuos{u
x
|w
zw{{ryjk_phskqnmqgoke{bnyvpkvw£¢¨¡§t© s{vwxrs{
kroymvnq[Y~vu w~n k
¤g~w~|}nvokmop{isqwtygtov}
zzwuq|{£|vxxnj~\qrqooxZ]o`oj^oi|zpmmjmw`pojqmYX`aamWQSYefbupb]kmdcfkm`ff_gkuqrptxvywv
|{vjqb|b
|opltjhnlvw_q~y{tus~¥§
~t
zrwtor
squlnlumw}mnUQ«yvry wz£
|s
ih qw{{||kvimkllzby}vzw|yhumu{rz
qx{{~
}}x}wphkw^womkqrV]naqa_mnypgpfftuhqkawe]Ve``rSPN[ed]xp|^\hqbbefi_gd[hp~okqs}v}
tuy{xs
~|yxfqj_~ookz`imtt_t|xwss
|y¡±¥~vtvspo
spqojiumn}|musRNᐙ|otuv{r
¡
}xzywim¤
cpz|z
|~m|erokkyy[yz~~zzhtlu
}l~o~{|wxxslepkitoghsmS^ndpZ_kqxfkkbgxsoqc_w``Vk_^vOMK`fc]yqt\[ev`aeec`fbXirsmkqv|tyuv~s{r}~vesn}eopkZknyys`vz{vrwwy¯
x~|
twpypnomn~rcdxp|nz|jhlc¤ÁÜ®ï¡skuu¡np
£~{ux
uwp~¥
^l|}
v
~~k}cxtimxsWz
y~
~yftklvn
{ttxusqftyasmoahufR`pgkU^msy`rc`i}qrnZbrabWnZ\wMMLcfa^vsm[\dx^`df_cc^Yirknkrw}swxw|q}}{tshuqym{ntpWpyvyqdvxivr§£|pxy|{rwpsjokil|t^`xv{ptzg`e|ëÚµÉÃÜslsvip
|zwxruq£a
h}}q~rwgvrhswkZ}
|vbtm}nly}~nrz
tlpjqw^shn\iu_RdqhfS_ovt_o`]hqrjWghciXmW[uLJLef^brs
h[\ey^^dgzad_]Yknenjtw~sr~zvzs
|wv
{vlwvyxunxz}Xy
qogxvdv
q¡¢sorv}{xqtnodr~hflww[_x{zqqiagaÕ¶¦xnqw{qj{h{{~
zu{{quw ~af}~~m|tkmwusvukc
~|p`sr|}zqf{|
npy~tlnijy|agiiXkuZRiribPbrxlbe^Zjnsb[g_dm_nTZoNHNfd\gnqkZ[cs_\clwde]]Zllbmjsvqo||tx
x
|uy|vpxy{om{v^tmizssgr}r uu~mv}|v~vqoljat|gbiuyZ`w{ymq~echhW^qr¼Ävq}qrj{|
|{uvw}ru
ru
|f}~r}f~|y}i}vfoyxsvslk
x
k_ry{~|~riy
y}}nm{}vsngf{ub[pbWnqSSnshaNftxe`^]YoosYea^jn`pOYkQDSg`Zknm|nY[^mcZbowdg\]`kicljsvpm|tuz|
v~xtryy~oo{qixz~ml{ukjxtl
n}vjx~yozsplid`szh_eqzZ`r|ygqzaee±²wJbZ¤ÙÐq{w}
nk
zy|xwoqu~zjy
¥ovyp{|nwhxr|e}~vcpshxpou|vxyk\qs~{rnq
s
zxno~vydgi{p^XvZXplNWqsg`Klvt`]\ZYt}soWg]fjq`oNWhR?Yf^ZojgzqZZYkeZcqy_h\^elhekiqwnl~uo{~v
qq{|zyujzko~t}or{zpoxg¡
fogy}~|ixrkkf_aoym_box\dkzaqv_eeÔê½2:>qx
v~ml
u}
|xnvwn
lu{tfy§}nuw
z{wkrh~xm||wayqdqh~muqu
su~so\nuy{|xzqlrztmkwtt\hgvoXV{RYpdLZrre[Ipxo\[[Y]t~thYb[genciMWfQ=^e\]uf`upZYTodYdqyZh]_fmgikipw}li~yn||zupnw}{{h{}js{r{sw~zx}|kl}kh~z~~~}kuqghb[bgso_aks`hpzbst^cd n\5Z¯µti|v
svpl
tyx|z~rgu~~oq~hvynfy¤~nv~|p{}{h~lk{zizvr`w~qdrftmu{|owz}u~lYpwuxvzxsns}znmjntm\gdrpQZzM[o\O\rodUKsxiWYZZaqt`]]`fdhifNZhM@`c[`va]umXWStaZdorWj^bhkgmlipw|li||p~~{zwq{oqw{j~{mwxvw}x~~zm£zuxklx}z~prqcf^Yf_oo_`gpfjotato[adjv{¿¦¤È¸q
r|xsqrozsutwyypcwzirvgwucj|}st
zy{kxy~tgzhlysizv}h`w}jktgziv~z~~p|w|t~bVx~ss}qwxqp~y~}v
viqimpo]gaqmJeuK]mUTZsnbQOsx`RXX]aos[a\heeckdQ[pICc`[cp^]xhUVUw^[enhVk^aigennhpvznix}r{~y|v}pwrmw}p{wyztxzuo~}
zw
{gt
y~{
vgpn_d[XeYmra``plkhnatiY^dnw©ÚªÇ²qwou{ztst~woqmtxuk`zyfqpgvn[m|y}x{nw
t
{ltv~mgvem{umjwv|abx
yhuub}{gu{tvq{}mYWupu
yltylu~{}y{s}sgtenksZi^tdGmmLZaWVVwmbPRtvWPVX^aqo\`cmdd^ocU^rFBe_]fh][zbQU\u[ZgkaVj_`nefkqhpuxtku~vx}w{s}ortqu~
{ww{|
x|}~{~svy zvtx^}
xt
w{bnm[aZ[aVisc`[gnofqaqfW\ck|Êι¡jmmlqq|~zyxsyuu|jlucuwof^}zerkjqcXmz
sv~|oqr
{x}qqo|fhqbmxqjkqx}|z]eywivxfwgt{qjo~yn|]Ysnt|ooqvhww}q{u}zrfsanjrWj^v[HmjMVT^SU{kaOTurPQTW^bt
i]`kjfcYnaYdpG@g\`f_\Uz]OUdpZ[jh]Wh`^rfkgqgprwxntzw~xur
pp{xvuz
z|t~}~~}|xvyx|muxd
so
ztcnjY_Z]]Tgrd`XdqrfsbkeW[`jx¾®{ ¶nbshs{qyz}~wwrvo{vejn`usjb^xyfqhkkZVow£qqyvns
}xtrnhx`jm`mvjgjkywzvZg}|xer~nteu
~ogkzumtb]q}lu}{fu}nqhux~s}l{{{xoelbn}kmVi_vUJijOQNhMX{haNUujLPTU_fuf^`phgaWi]\lhJDjYadWYTxYNVmjY]kd\Yec^tfldqgrouxp
v~w|
}usnsy{zsr
x}u~|{~{w|wwziv}{lqp
~pflgW]Z\[Sdpd^WbruiupeebW\\iporsddx~itutrwyvsumkzqbgkgtnf]_}p{imxgjdUWro¦|{vt|s}|n||w|}tpqlgt\lh^ltdgfizo{rYgvuhpxvbw
|njm{qfseanzgsx|~bvvjkqu{qzzt}f~ywncfbn|ljUiboRJhjOKNoG^{faMUtcJNSWajv~e]gsie`VcWcp]LKjXcaUTTsVLXudZ^k`\Zce_vgmbpisnrutwwz|t~
nrt|ztq
yut|
}~{~v{£¥yku|zuznsy}unjheV][ZZSbmd[Xas{ihmi`bW_[jikpgk`hyxjsttnz|uunzhjyj_enhvgeXbwj~{oipgf]UXog¨wz|yuppsvzxu
vjqughn[ld]mr_gajxh{m[nrtjo~yxaw
x
sroyrcqi\qxdrt|ybspgjytqlxxuxd{ywqddcn|}kkUhaeRJkgOGQkEaxgaMSr]JMTZekvze_mqid]V`VnnWKShWe^XNUlTJ\y_[_k]][ce`yhl`oounoxuz}wzzxy~qttyvt}|ks{
~}{v«zkryutnn|sjomddX_ZYZTajg[Z^ti^ml\aV\\leqt}ii\kvugsvrm
{}|xurlygixf]erhzwccTepg
wwghj`WVYgc§n~w{pq~hzoz|wr}ndurdhh\ka\oo\g_mudzh]torkq{}uvbt
{xruuapm[rtcqs
}uerlal{oji{zurf
v{{vqebems~ilTg]\TKrbPFVaGbwgaKToWJLXXgkuzdenqfdZW]XvfUJ\cWgXYIWePHbxZ]_l[^\ac^~ij_ntxnonvyr|~uuy}suuyzz}~isz}~
zz|sq{{}eqys|{urn
l{~lzbpobe]eVYYVcfk_]\r
hXpn[^WZ\l{bpwvmbZlssgtuplx~xwnntdite[gtfvvy_]Rffjt~bci\TX^bc¤hxtxmo{ixn|
{usx|xhdvl`f`^j_\skYe]oobze[w|knnowxstds~{vpr~sbxd\ppbqr}tgre^nvidfy|unout}trb_fno}diSgXWSMw_QJYXHbudaITmSJMZWilq{bllscbZZ[aw\SLc]XiSWHY`MFiuX^`l[[_bb\iganxylojvxm~vstsqwuw|}~~~pw|yxz~ttp¢{zxduxsxuksn~kx|pr^po`gblT[ZWhcmf\[qeSrn[ZXX`lvciuji^Ymsplsssi|~~{vonldiqc[krdtvs[WSearr]bc]SZ`\ceqq
tll{nop{||qwszzzceuh]bZ`g[^vhWb]ohaw`[{vijrnwsruhq}vsjq}nfwX]lncrsztgo~[`pqa_jq}llu~sqxkpa\ellzagSfTVQPu[QOXQHctb`FUkPIPZUkkj|emnq`[ZXYlqWSOfWWhSTFY\NHruX_cmcX``a]jcdmyxkoiuy{k}|y|nqowz}t|tw
utquo¢s{{ewnmznfwpzksvrk^tnagekR][VgalkZ\pdOon]VXUgjtgbtee]Ymtmoutxj|{vsddkna]nmcsxkZTVcdx}}q]c_cTZ`Ybcnp
tkh|pfsws|lztuoz~u^erc[^VadXateU_`mdaq]]~phisqsptvkmzqsgo~qsoT\gkfqtwsclvUbrkZ^of}emw}ssskm`Zdjjw^fTdTUPTmWQVSOGds_aEXiOHWTVmhd|ikwjaW]U[tdSRWhQYeTSHZZPMxvZ_eliYb`^^nafkyunohvvl}{~krgt{u}r|
{ss~vn¥rvwmz`d{pfxrxlmqvgd{lcfghS_^Ug_ln[^mhNim`TVSogslfxdd\Xoslqzwrl{vzykaelm^`ojeqy~gZVX`lx|{p_b^gWX_Wdbkp}xlkyn\wql{jvsno{rXim^Y]UbcWdpcS^ahablZ`~kfksunmwvli
ymqfq}nsncZaiiotts_ilSeqdUbnbzcqw{vkpmk`Yaght\eUaURNXeRO\OOHdp]cFYiMI_KXmd_xhn}c_T_T]u\TS`fN]aTSJ\YPYtu]_elhXca[^qcgjxqsngvtzrz~|yntlst
y~|
sstxro~zz}~~}}~~}~~~~~~~}z{|~~}}~}~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~ÎÚØØØØÚ]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDBN¥¯®±a@DDDDE8.////+H
}}{{z}~||~}}}~}}~~~~~
Ûéççççê~S7¤¤¤¤¤¤£r]____aR455553A©¶´´´´¸Y055557':|}z{z|}{}~}}}~}}~~~~
|y{z{|{}}}}|}}}}~~~
~}xxy|}|}}}|}}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}~~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{y{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~xuwyz{{{z{}}}}~~~~}~~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~rtx|||{||}}~~~~~~}~~~~xrvy|}|z}|}}~~~~~~~~ssvy}~|y}|}}~~~}~~
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxy}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvttvwuqrqnprpghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkigfgggihgmgjghehgccbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__`c_\_]`]^Z^]YY^ba^^ZY_\XWSNMLKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{yvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSSPMJMNPROMPQQQQRVVQQQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTttuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPPRQPNNONONOOPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKLFDFJKKKHJLLLOMLLNOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtttwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBA@@CCDEACEHKOKIIJHGJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AE@>:<>><ED>?EA?@A@DEGGGGBDDEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrrtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;899;;:@;;><;;<<HL==AA?BC=ADDFBFFDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNMMMNONNMKKNNNMNNLTnpprtusqrvxy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;:;;89:87:<978;;>=;;:8:@@AB?A?CFDBCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtsusqsxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<979:9988::78:9:;;8789;:8<;=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>=;<<>?=<=;:<===<<<<;;:;<>=>?@A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmqquutusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCC@><=?A@?<;>=>CE??@=;===<;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVppqssttuy{{{}~~~~~~mLPQNOPNNOPPO><<=>??@>@@???CED?=;<@?<;KG88:<9==@=:<;;<;8:;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pqrrrtuvz{}}|~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC??AAABA@=<=;>>97dl;8:88:;=??<;;<;:;;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{|}}|~~}}}~~~~~{NIKKLLLEILNM<?<<=>@@AA;BCBCA@?@@==FIJkyM<>=?==>CD?;<=>@==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy||}|}~~}~~~~~~~~}QHKMMMKJKLOQ@?>>AA@@AGABECDB@@C[AQt}}{\?@@C@@?@@>=<=@EABBFHC=<@DCAA?>=@A>>>?<>@DGE@?@A?@CFECBBC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vpoqprutwz|{||}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AAAB@Aoc
~i?BCE@??Na_J@CEIIIIMMKECFGHEGEEEDDCA?@>>BFJJGDEFFFJNNKJIGGHKLJGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@EFCJv{
tDDEDCWu~XGIJLLMOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHIHGFEFFFDFHGEEHHFHGHFQnnpqrvvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJIIQv|pDCAUtWILMLMNLJGGGGDGGGGFHFHECCDFEDDHHCCCGJJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrswwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLKJUx~UNl|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD?>?DFHDEGIKIIGHIGIIIJIHFJJJJIJIJJJFILLJJKKfopssuvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKLKJX}}
uIIFB??@??><<<>::<AA@><998<<=;>;9;?ABAACCC@ABEDBCFHIHHHLMLGIJMMNMJJKKJLMSlortsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHIIKQv~
fBB=88::9878896479;<:8567789787689;;<>@;999==>;;=ADEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGILHq
~T;8656766645773468:876565676778:77789;7689989876:<@GFIFIFEFOSRSSROPPRTepqsttwy{|{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=ECDK{
H676468874578467699766765:::::<898977779:98878589;A=>>BA?AKLOQPQOOOQWkrrttuwz{{{|}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897;B:=M~z>:88;<=>9::;89;9:;:99;:9===?;;;=:>;9;;<;<;9;<8::;;999<?<<ABDIJMKJKLWorsutvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<;89989::9;??AJ}
l<;>BCEEAA@B>@B@@?=>>@?>?@?@==?B?AA?A?=@@@>?A<><;:;:9;?=;;==AACABCAXqqtttvy{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<=:;;=<>@DCU
^>DGIKIIFGHDFHGEC@@CECB@BCB?@DHECEDEEAFEFDFFD@B>=@>=?@>???>?>>:;=<`qrttuwzyz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???=A?BCGEh
WGLLMKNJIKHIJJIECDFGFDCEFDBHIKHGGFGGEKIKIKKJCFCCDBAACBDCCDDCA=;=@hpsttvwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA98<>;<;>@@A?BBFFKJu
PMPMKNKJLIIIHJFDGHHIEEHFFELLMIJGGHIJNMNLLNKHFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?FGG=<@@98<;<=:?@>@@CDHHP[
qMQOMLLKLJIGEJHDJHGKJHJGGGKLNLLHHIJMPNONMOKIGIJHIDIHHFFGGIFCBACUnquvwy{xyzz||}~~~~}~}~~~~~TDAABGGB?8?@9:<8=>;=A>?ACFHJTq
^RRPMNMKJGFCGJGLJGKOLKJJMMLOPNHIKLOQPPQOOJIJJLJLFGHGFGIFEEB@BB\prwxyzyyyzz{|~~~~~}}}}~~~~UECEEGGED;?A;=<9@>>@BGGAFIINTx
|WVRRTROLKJEEFKONOWVQPOQSRNSTOMSLPSUVRSRPLKMMMKNGGJFFHJDDEEBDCcquyyzzz{z{z{|~}}~}}}}|}~~UFEGGGGHF>@B=?==B?BCFVNELNMQV{
gVVkaERQQPJ;;QSR`u]UVTVYYSYXRZfPUWZ]RTWQPNRPPPQKLKGHIHEFIHIHIjsvyyzyz{{|z{|}|}~}}}}}}~~~THJIIGGFE??A@EBCGEDELXRMSTSVX|
}al[dU:XXXSP?@VUY\d`VYbr^]W]ZVEQYZ\Y_TYgRUVXTTVSOOMJLJIILMKOMSotvxyxwzyz{z{|}|~~}~}}}~}~~~~~VJJIHGFDDBA?HMIMPKIKPTSSWYXZYx
g;~znpXZ[ZRSRWVTZZuYU}a\X]^WIV]][[_YHYXY\]XXYWRQMPQMMOSQQURassvwwvxxxz{{|}}}~}~}}}~~xy}YNKIIIFBD@A:PQQWXPPOQSTTWXXYZn
nfYY\YSVTWRQWVcQerXZW_hP`fZ[X\hbGOZig\[\]]WSNSPPQVVVVYZosuwvvtwxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQORRQURUSW_ux
}{\PVXTRTRQQLOMKfyZ]TYUV]ZLTZTST^ZXWWWzkXZ\\^SPPPINOWVX[Zdqtvvttvxyy{{||}}~}}}~}}~~~zxwvsu{tk~~kry^\VUSROKFCDAM^lVRSNOQOQURSRRTcdv
~ymqVIKNNKMKHJDFHEC>ScURPQNKRTQMOYQMNQSUUMQSRPNLLHCIHRSTZ]mrvvussw{z{{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YUQLILIaltPQSNQRQR[RSRQRUUbs{|}{{
u_]KC>CCCCB?DPCC@C>BHGV@HNMG]iQHFOFDEFHGHBCHGHJGDBAC@OPMRdtuvustuz|z{{{||}|{~}}}~~||}}vt{mh|gnqfieeb\XSQPURsWe[OONLQSQUYSUQQTROV`klsvz{xyurnstsyx~~kLG>>:;>@??>>jPKaEFHIEB?GLMGMQUIBE?><=<==?=?ACB??<=B>JMFUouuvstvx{|z}{|}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QQZ\Y^IJPQNKLQRQTUUWQQWVPX[b]agmmlokh`nrjmlqu{z}zxz||xwxdB@@A=:BCAACA[\O{NOONKLMOOQLKLWMHG@B<977599=;;;8989?;AG>\tuuvuvwy|||}||}}}~|~}}}~}xuwz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIGPRQOMPQNQRSVXSRYTNYZ[WY\__`e`]^qwk^`gkwooljonnlfbYGFFHBAFIEEFCLQOaWRXQPSSRU[OOQVPMICF>::6486979:365795<B=fttvwwyy{}}||{|}}~~{~~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMKTTSPQUOLRSTWYTTXQLXYYVXXVXY]WWXhsk]V`tkaa_]d`_^YUPMONLIGJKIHFCPOSZWTTMQSYS\eUOSTRNLIHC?A:988978847578589Gnruxxz{{}~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPWVVSTVOOUVXXYSUTLKTUUUUWPTUWTUR]n^RNY`[VY;DUWT[fJLPRROMMNNNLJFPPUYSTNJNOTST\VRUSSOMLIHHF??=:787659967665Wqqtwzz{|}~}~|}}|}}}y}}|~~~}||}}~}|rvqxxruuqqnppopuvtnjddjppqrpofedc\^RTZVWTSVTRXXYYYRUOJGPPOOMRJOPPPNNOTLMIPPSTU2<XMIAQ=c`QSQPNPQPNNMPNTRPRLILKOQPQRSTQSOLMKLLHCBA=:9876;B4566;eprvxy{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqpuuvcjgeWhtrrqniihpVVTUXUVURWVUZYXWUQSFEAFGGHFJDHJHGEHLHKIGLMPMG/E_R>3@>joaRRQ@FTQOPPQNQOPOLJLLOPNNPQQNPOJMMMKGEEDB;==<9=G6677Dnquwz{{||}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknbePSTRSUOWVVYYVQQQO@>;=?@BAC@BEDA@GHGHFFHJMLDGCORC8ENS]gSQSAGUPORQPMMNLJLKLNOOQMOOMIMLILKLKGFFED<AA>;@E;<89Tqsuy{{{|||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpknqmimcLONMQSLTUTWWULLKH=987;?A?==A@B=>EHFDFFIGKJ@FAA@FHEJOHQRa\QPRNSOOPLLOMKMLMON[VKMQOHJHCIJLLKFFFE?CC>=BG?B>Adqtw{z{{|{zzw|wy}~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B?;?A@@>ADIECHGIGIEBB?><CBAGIDMOaePMONWKLNKLMMLLKNNSdMJLRHIJFAIJLMNKGIFBAB@?EFEHDLopwzzy{{z|zwsxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLLIMPMPOGKE?B=999:?B?<ABBADDGKFDIIGGHCC?B??@A>CECKNQTKJIMTFIIJLJKKIJLMOPRPKGCLHDCJJLMOMIJIGCCCDIJMLIZsmxyxz{{y|vrpurtyyvxjqnjllnttmsu{stxronqovsnporpopstyjN`gsjt|ygosqiqheqHKCFGGGJKIJLDGB=>=:::;AB?=BBCCHFJLJEIIFGGCC;A@B>@@CECIMOGHKFHKDHIKMHJLHIJLJM]RIHDNGBEKKNMPNKMJKFGGJMNQNLcniwvv{x{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoijthdpFKCFEFDEEFEGCC@><=:;::@D@>BCEEIFJJLFIIGFFCB;BCC>@CCCEGLNHKNHDHEILNMGILGFFIILNKJHEOICGMMNMPNOOMLIHIOSQRNRfgfrosxu{z|lhjoekpmsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGICEEDBCBE@DB>?>:;;=;=?CA?ACFGJGJILHGGGFEC@=EEB>ADCCEGIIGMPIFFGKNOKFHIFEDDIIHKIFHPKDJMLPNONOPNJJIMRUUROWdaamgprosyzgehhcilgqlflmgiklsmpvutpnvrosrsutqssutsuvvvyvutvlkuumrvqlnlerMGEEGCAABD<BA>A=::=?;>?@B?@BEGJFIGIGFFFEDCAAFFCBBBDEEGGHFLPLIOJJLKIGHEFEDCIHHKJGKRMCOONQPOONOOKKKPUWVUSX_^]iaminhrsbeffdihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwuksunutsprkksMFGEGBBADD<AA@C<89=>:?=?B?@@DFHEHFFHFEECCEBCIFCGEAEGEFFGEJMKHQMJKHHIEFHHECIIJKMKPSNDRSQQRNONNPMLNSWVWXVX]Z]d`hbjigk_defcgggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxnouorsuqqipzMGGGHBBBFE<@CBD<7:=>;>:@B>??CEFDFDDGECECDEFFJEEIGBGHFGFECFJJGMKLKHJLFIHJHEKKLLNOSTOITUTQTPQMNQNMQWZVZYWZ]ZXa```_hec`deggjhhjfhnllomqpiuuxrrpupppruvpusuvu{~}xvtwvvvwplupmsunossyMHHGIDBCHE<@EBD<8:>><<=BB=?>ABFCEBBHCCDEFFGGIFGJHCIHGIGFDHKIGKIMKJKLHLJMKINLNNORUVOLVVTQTQRLOQPOTYZY\ZZ\__^`c^\ackb`dghr
hgifjnnponsqjtuxrsstrnpqvrqtruus~y}uuvvvvxriuqkrtlqwquKIKHJEBEGE<@GDD@9<>@?>?CB<@>AAFCEDCHDFDFFHHFHGIKJEJHHKHFFLHHHJHMLLLLIMKMNMOLPPQUVWOKVVUSSRQLORRQV[[]^[]^``a`be]d`eg`ehjcssfjhglprqossnswwpuvtsmoruorspurvrtwuuuwvuwsgtrkqrkrwowIJLIKGBEDE<@FDDB;??A@@@DA@B?ACHBEDFGEIEFEIHFIHJLHHJJIKJFJKHIJJGKKMMJJMLMNNOLOPRUWVMNTVUSRQPMNTSRW[^^_]^``aaa`cdebcicdijgvlkihmosqpqpprywruutsmmssmqrotutspswtuuwvuuueqskpqjrvpwJMLLMGCCAD<?EEEC=AACBBCEACDAAEGCHGHGFJFDGJGGJFILHIJMJMLGKIHKKNQKRQLSMKNMNPPPTOWXX[NSQW\ZSVPNTUTTXZ_bb_da_`b_`ebacinicihhmxvlhimosrpqrrrvtsusssnksqmprotvrrquvuswywutucmtkopjqtpwLMLLLGEA@D>>DEFC?CAECDFCCEGCBIEBHJIHHKFDKJGHJHIKGJJNKNLILHJMKZfJd\KlRHOM_nUls[qpbwcRPbvuhucav`Xnqbdvinzf\lt`lkU_wvijhhfglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqsqyKNJKJFB?@B?=DEFCCCBEEDFBFFGDDJEEJLLJLMGGMJHJKGKJIJJNLMMLLILML[sbdp^llUMNfs^gfqlntgpi_aYnmbppbkjjgoqtetno\ougpMKryvkbakeelxmkvlnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIIGED?AB?=BEGBFCEDEEDCHHGDEKHGKMMJMLFJNHJKJIKJJJKMMNMMMKNMM[roonpplkNPQlXNibtrpamov\YlP[mmZqmkomxxtsip\`slqjUuyxoc^kfbgppjiopprspqpqqrrqqrrtlmrmmnorutqtrtuutuuzvutenukpolsrryJKGHFEEBAB=??EGBGDIEEDBFIHHEGKJGMMNKMNGLNIMKHIMIKJJKNONNMLNML\hdu]lqWlNPQnUZk^klvaldtTecNlYl\tpkilxjwuhp]_skhWbcw|oc`ghaditykonqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvIMGIEEDCAB<B@BFCGFKGECCHKHHFJLKFMKLRRLGMMHNJHHNHJJIHNONNLJMMJZsppoqqmlOQSoYqkgooqqomt^nXat_nopoqroousttj[^tcwxrjnzhaacfabjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyytukoumtontsvtHKHJCEEE@@>CCAFCHJMIFCFJLIGFKMLFOJKWRKGKJJNIHJLIKJIHJLMMLIKKKSkbZi^_jcrrZ_Zjo`eeUk_c[abQ`mh\j\niid[pfdp]Z\k[mqcpsldgcdg``knppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunvqrutwrHHFJDEDFA@AEDCGBHJLGFCFKLIEFJOLIOIL[QJFHHKMIHJIKKIHIGKKKKGHJJLLLKIKLNT[]TPUMQPNOOURPOQOOQJJNPQdqiTYW[[\UY[]X]\\cfaafbcf__fkmhmtyrtroppt
zpmmlkqsttrtvtuzyxuvqruovrtsuusGCEGFFAEC?CGDEGCIKLHFDGJLHDGIPKLOKLWMIFEHIJHIKHLJHFHHJGGIEFKHIKNLIO\W^O\\`^OXYS\\b^MYZMXaRKYaZS`d]bX[ddVVX\YZX\VY\^c_d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCDLMBCDBDIEGGFKJKHEEJJJFEHHPJLMJMRIHEAHFJIKKILJHFEJHEFGEEJGBJMJKT_Y`X`a[`UXYT^^Z_RY\P^\YN_\^S[^c_Z]`c`Y_b[`^[TYXZ_^dbbacfiekrpoppnnw
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIECBCFGEGGIJJIIDFKKKEFIINJNLHLNGHF>GGLIKKJKKIGEIEDDEBFJD@JKJO[cY^^a_RTSW_`\]Y^QY\MV_WKQY[Q[_aa]^ca`bbbcceZRXVV\[^c`__cebhommllllu
yu|
}wrrtwyyxy~}yuyvvrnzwvxXQJFCGEBEGHFGHIFGJGHFHKILDDJJMMLLHJJHJG?GFNKKKMKKKIGHDD@DAHIA?IJGP]aZ[d]_TQRX]\\\_ZKW\LR\YIM^QQ]_accccb\dcbdcfXQVUS\X[a_^_aa_dlkmjklnv~uz|
zrsuu{
~xpzwvx\RMB@IFCFKIFFGIGGJFFFILJNEDJJLNJLIKJIIGBHHQMKKOLKKIHGED?EBHHAAGFDT]Y^X_X_[]UXXP]]QKJW^X^[]VZaRR__bb``bb`cbbddbXORQS\S\^]^^__`dhgljnnp{{|~{
srw
|x\SKBAGFDGMRHDRKFHHHDFKJMPEGIJKNLLILKIIGDHKQOMLPLLKKHICEAECHGBAFEBVUE\T]SV`XNTUNZ[MJKU`a[_X_^b]OYb\``_bcb]bbW__TPOPQYS^\\]]^`bffelfoow|{{}
zo
~INFDFFGDIRcQDW_IGGHDFMJPPFJIJKNLLKMKJJGEJNQQNOOMNMNHKADACDFDCADEALHCLLPOOMFMFFHJHGLLMOPILOPPSPLQSRUZYWYXXdVOSTPPONQUT\YY[]\aaefchdklqsszy{z~{}{
}KIEEGFGDKM^MGHYMHHJHGMLQQILJKKNMUNOKKLGGKPSSNPONOOOHLF`ED_LDfcDM[H^\smOMVmYLCP_UlWgJ]WU^DLQULMSVQRTXWTXUT\TPfZhhdYTkTXWU[\[``abbb`gignlhrz|}~}}zr{z{
~z{LIEFFHEEKOTJKG`THJOJIOMRQKMKLORUROOJLMGHMQ[YOPPNOPPJKQQI|YYrsWPmHqnoaVPqqtOBksnqtpSo_[nX]V\XUkhU]VcY`YZ_VUWjtuu_av_Yc\\f[_aaab^`bgmpl`pwtx}~vxzmv~tx~|~|z~wwNIEHMMBDLLGJLFRVLLOHKRXWQNOOLQTNOQPKKNGMPS[ZTQROPPPKHZx]TxdhYRSPvgtlpbnfkRrOLwmjrpsrqrpop]fzuxqqzq~r}ku}bRh|essoss|}p~yor_``bb[a`hknkblfgmw~~{xwtvzhr~nt|~wx{~x|u|||ssNKF`]GAEMMHKKHKQOMNJNV^YULQSNYYLSSRNLPIQRTYWWQTPPQRKGgxlcxqmZKLTypumubnvPdeIevqmwojfxxiXrRi{mijzz~lxzpgoXvvjvupash}ilx|o___cb\_defijdgbcdllppstsssyqrxbltgry{ssuy~suzn|}yxrnNJRtNCBEPPHKLJLQOOOMPZ`ZXKTWPa^RVQYSMPJSTUXWWPUPONSJKrouuquqdhaVnLqp^GhyWvTKhy}x`y{sna^modSgrunmypwlvstqlm\s~zkmy|lum|kpvux^__b^]_edjhhee^bbiiijknokqnmjpacfdowxompsynqpj{ztromLKZVHGEGRPKLNKLQQPPPQW\YUNVYUfXRRY^TMNJTTVWYWOSONNQIRmHiwK`dvuUWlOnl{rajgvUKWkh}lmlx`[pz{_`zscroxqhd|ir{]TKl_vukiu{{m~xk|p]^^b[^bdehfeebZccikkrsrwgmihdg`alagsrkhmmr|kmhk{tmmkmOGJKHJHHRQMOPMLSSROSRWRVTPWZVVTTTa`QONKTSSQVVOOMNOPJHQNPULKKRSRRTPVUQQORRXXQNPUTXXX[[USSW[WXWZPSUWWXQ]XV]USOXRVWWXZ`[gr^[\[]]_cZ_ccegeccbZccgffmnmuffgc`f_]g`dlhfgkhpzhggkujhgilPIKKLMKJTRMRQPLVVTPTUXUZURZ]VUTWUYXPOLNWUQNUSNPNLQPKIQQKQMKKOQTRQQSSIIMNOQRQQQTVRXW\WSSPRUUVTZQNSRWUTYVTYUSRUSTUXXW^Z_a]\[Z]]`c\]bbdgeeebY`acabhhincad^_c]Zd\bma^ffgmsdihkkeddfhQJKKNOLMTQOTQQMXWUTVXWWZVT\`VWVYUXTQPKOXTQNUPNQNKSPMNUSNRNMNQSPTQSTUNLNOQTTRRQVWUYZ[YSURTXWWY[SOSUWUTYUVYTRRWUVX\Y[`]VY_]^]\]`a^[bbchfeebX``b]`hefda^_]]^ZZ_Z_g`^^]chkahfhfd`bdbPKMLPQLOTPPTQOQZYXWYZZXYV]jdVXYZWVTTOKOWUPOTPPQNMQQORXSRQOMOSUNWQTUUONNQSUUTTRTXVZ]\ZVVQRWXV[\VPSVUUVYTWWTRRXVV[_Z^`_V_]^`\\``__ZbbdhheebYb`b^^fdc`b]\\\\YZ[X[a[^]]_b__bddbd__`\PMNNRQMRSPSTQOU\ZZW[[\YZ[dqmhd_[YVVXRMMVSNNRPRROLPSRUZUTPPLPWUQVRSSXMOPQTXUUUSUYX[^]\[VROUVV[[WQSWUVXUSXZTSQYWW]_[__`Vb\`a^`b_\`]cacgiegaZc`a__ee_`c[Z\[\ZZYYW\Y\[`^_[^^a`_c\Y`ZQNONVQPUSPUTSPW\\\Y^\_W\^jpwyc\[VVYRNOWSNQRQSTRLQTSY[WUORNSXVSRTRRZOQSSV[VVVTVZX]^\\^VSNTVV[\VQTVVXYRSY\TRR\XZ]^]aa`Wb[cb^ac_\bab_dgidh^\e`a`acd_b_YZ_[\[YXYWWZ[Za]][]\\Z]`W[[ZPOOOYPUUSRWRTPZ]^]\`\`U\]hjr}rlh\UYWQOR[SRQTSUUTKRVUZZZSOSRUUUSNVRSZRTUTX]WXXSX\X^]Y[^UUNVWW^ZWQUUXXXTVX[TRV]Y]]a^cc_Y`[eb_dd^^cca^efieg^]daaabcd_b^X[_[\[XXXXW[Z[`][[\[XZ[^V^Y]POORZP[UUWVTTT^^`_^b\`U]^bkytl}lZUZVQQT\TTTUUVYWLRZV\Z\RPUSWUUSOWRSWSWVV[]X[YUZ^X_^Y\ZRWRYXY`ZYSUVZYZVWY\UTZ]\^`a`ed]^]]eabfd^_dc`\gdhfeb_da_aabb_`^WX^Z\\ZYZWV]Z]^[Z[\[WY\]VXW]SOPWYP]UVYWWUX_`aa`c]`U]^beev{hXYZTVTV\XWWVVW]XOU\Y^]]TSXRWUSRSXRSVTYXX]^X][U^_X__X\VQYUYZZaX\UVWZZZXYYZXV]^_^cbbee]b\`fbefd_`dbb[fbhfcfaf__abaa`_^VU]Y[\[Y\YY][[[XXY[YZZ]_]TY]UNSZWT\UVWYWV\`abcac__V[`da_zuohZ\ZVXVX[ZY\ZXY`VOT][`a\UUYPTVTRVVRSUW[[\_^Z_\V__Z]^Y^VSYXZY]bY^VWZ[[[ZZY[YY__``dcdeebdZbfcgfe^ac`c^cciedg_g^bbcaa`^_XTZZZ[[X\XX\[Z[WWZXW\[\`]V]]SOVZVVZVYUXWX^`badada^YYadb`kfh^\][WWYZ\\\_[Y[bVSW^]ac\SVYPVUUUVVSVTX]]_``]a]W`^[^\[^XVXX[Z__[_XX]\]]][Z\XZ_a^`dcdfffbYcfehgd^ca_ec]fidei_g^cbcaa`__[XY[YZZXZXW[[Z[WXZTY]\Z`\U^bMRWYVWZY[\YWY^`baeada]^Ybcb_a`a_]]]XW[[]]__\Z]cXYX]`cd_RYYPWVWXXWVWV]]^`aa_b^Ya]]^Y]^YXUW[[`^]_YY^]^^`[ZZY[_a_bddefggbZdfgigc_c^`feZhicficf_bbca``_]]ZW[YYXXZYWZ[ZYWXVU[]]]``bbxKWW\YW]\\]ZW\]_`bdbca]`Xbcb`cac^\]\XW[]_]`_][`d\\XZcecaR\YOXVY[ZYWZZ`^abb`ac_\b]_][_^YYTX]]__^_[Z^^`bb\\W[]`bbcedgfegd\efhifcab\cg`\iibhife`baca_`_]]\Y\YXWXYYW\[ZWVXPXZ]acffrkJYW][Z_]\^\Y][^_acbaa]b[bda_cbb]\[ZWXjq`\`_]\ac_^YYcedbT_ZQYW\]\[Z[[c`cbc`bda`c^`\^__ZXV[_]\aa_][`abeb^\S\_`cddfegfefe_ffhhgdd`[fg^ahhbhhfc`b`cb___]][Z[YXXXVZV\ZZVVULXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{zzz{{{|{{{{{{{{{{||||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvvvvvvwwvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{{{{{{zz{{|{{{{{{zz{{{|||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||upooooppz~}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½±µ´´´³µ~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}upnoooooz~y1333332j{éääääèÊ»À¿¿¿¿Á}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vuuuuuuuvwwwwwwxyyyzyzxooooppprrrrrrrwzyyzzz~||||||}~||||||}}}}~~}}|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvvvvywvvz{x{xwvx{wzzz~yxxyxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{zzzzzyzz{{{{{{{{{{{{{|||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwwy|{||z}zwwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwww|{|}y}ywxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z|ywwwz|||z{zwxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzz||}|{}{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyy{xzzy{yxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyxyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegefgbedebg[be`v||{{||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}||}}|||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqppnnnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrqppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpppqrrqqqpopooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpooppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqqpppppppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqpqqqqpqpqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrqqqqqrqqqrrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrstrrsrsssssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz|~~|vvwwvuxzxxxxwwwvx|yy|zyy|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{{z{|{}|{{{{{{zyxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}|||~|}~~~~~}}||}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~~~~~~~
~~}~~~}}}~~~~~~~~~~~}~~~~
|||{|}||~~~~~~~~~~~~~~~~~~~~|}||}}~
}||~~
}}}
~~
}}~~
~~~~~~
~
~~{
~~}
}}}
~~~~
~~
~
~~~
~{z
~|}}}~|{|
~}}~~~~~}}~}}}
}|}~~~}|}}|z|
}}}~~}}}}zzz~~
~~~~}~}}~~}}}}~}|zzz~~}}}~
|}}~}~~}~}~}}~~~}}}|{{{zzzz~~~~}~~~~~~~}|~~~~~
~|~~~~~~}~~~}}}}{{|zzyyy{~~~}~~~|~~~~}|~~~~~~~~~}||}
~}}}~~~~}}}}}|||{zzyyy}~~~~~~~~~}~}}{|~~
~}}}~~}}}}}}}}|{zyyyyy~~||~}~~~
}}}}}}~~}}}}}}|}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~
}}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
}|||}}||}}}}}}}}}}||{z|xyz{|~|~~{||}
}
~~
}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~||}
~{z|
~}~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}||}~}~~~||~}{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~}~~~~}|}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{||||{|||zzy{|z}
~~~
~~~
~~~|~~}}}}~{|}}~
{z{ywz}~
~~~}}}||}~}||}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}}}~~~~
}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~}~~}|~}~}}|{|||z{z}~~|}|}||~~|{{}~}~~}{{{}|z{{{~~}||~~~y}~v{vx}|||{}}~}}~~~}~~~~|~~}}}{{}}|z||~||}|||||}|}{~{{{|||}||{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~~}||}}|}}}}{|~~~~~~~||||||{~~{|{||||}|}|~|}||{{|y{|{|}z}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}~~}}|}}}}}~|}|}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||}}|}|}}}~}}~~|{{{||}|{z{|yzyxy{~
~~{zy{}}x|zr}{{|||~~}}
}~~|~~~}|}}~}||~|}}|}}~~}~}}}{|}~||{|}zzyyyy{{~~
~~~z{y}}zzz}q~z{|}}}}zx
~}~~}~}~~~}~}}
}~}~~}}}|~~~}}~}|}||{|}{{{zzz{{|}~~
~~~}yzz}|yw{t{|tw}~}{{vv~
~~~~~}~~~|~~|}}|~~~~}|}}|}}}||{||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||{|{|~
~~~~~~~~~z{z}}uqz|zqz}}yxut
~~~~}~}}}~~~~}}}}|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xytu}
~}}~~~~}}|}}~~~~~~~~~~~
~~~~}{z{z|{z~~}~~~~}~}}z{|
{{syz|pwuvwyvtz
}}}~}~~}~|}}~~|{|z|{|~~~}~~}}}~}~{{zx|vyy{qtxwvxury
~|}}~~~~}|~~~~}}z{{||}}|}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{{|||}}}~}z~}}x~|||~}~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~~
}}}|{||yz{z~y{yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzswvst
|~}~}~~|~~}~~}~}~~~~~
~}||||zyvyyzyvyv~|{{{~|{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~}}}}|}}~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{z{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvqxyrx
~~~~~}~|~|~}~~}}}~~~~~}}~~~|~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}}{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~}|~}~}}|~~~~}|~~|}~}~~~
~}}{{||yw{ywxwwx{{z{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzzzzxswuqqrpxwq{
~~}|~}}~~}~|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{|||zzzzzzxsvupprowvr{
}}~}~~~~}~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~~}~zz|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{}}{yzzzyysuuooqpwst}
~~~|~~}~~}}~|||~{{~yz{z{~wwy||{}||||{}|}}}}|}|~~~~|{|}{}}{yz{zyxstunsqpxruz
~}~~}~~~}~}{~~{|}{z||{yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~~}~}~~{}|}|||xxuxxy{||}{||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~~|z}|{}xwvyyz|}}|}{||}}~~~}~|~}}~|w{zz{zytqunwpuzrvy
~~~}}}|}z}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{zspxrytvxtw{~~
~||||x|yzyz|}|{||}}}||~z{|zzzupxwyvu|uv|
}
{~~}y|zzz}}|~z||}}|z{~~~}}||}|vrvxxvtvu}
}
~
{||}zz{}}||z|~}}}}~~~~~|}}~~}|{xvvw
~
}}||{||}}~~~}~||}}}~~~}}~~~}}}~}}~~|}
~
}}}||||~}}{|}}}}}~~~}|~~~~~}}
~~|~}}~||~~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uz
}y|~{
~~~}}}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqspurstv{}uvy
hzrss|s~}}~~}~|}~}||||}|||~}~}}}
}q{pyv~nypus|vyy
rpvxqvtturstvinrotvnulwm{snym}rsvsvmmxlpylu}}~}~}}}||}}|}~}~|~
vpt{pru
muovo|uryyxqtwnwgwznpur~ozyymonzoomw}xpqzprtfu~n{ysoy}}|}|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyqjoyxpkyszozwvvp~~~z~}}}~}}~~~~~
xyrz{pp
x
xyks~y{krz|m{yyt}vnoot|uwqy}}m~uo
zrr{|upozls|nw~~}}{}{|}}}}~~}~}~|}~~
}w
}~{|{~{||}~}|~~}~~~~~~~}}}~|{|~||
}{{|~{||}~||~}}~~~}}|}~~~~~~|}}~{|||{{}
~|{}~{|{}~}{|~}~~|~}}~~}}||~~|}|||}|||~z{{}~
{{~}|||}}|||}}|}|~}|}}||||}|~}{|}|}|~|||zz||}
{}~}{||~}|}}|}{||||||}{{{}|{~|{|}}|}}~}|zz{{||
zz
~|~~||}}|}}|}z{{z{|||{{{~{{}{{{~||||}~}{z|z|}
|
~~~~||}}{}}|}zyzy{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yyzy{}}zz{{}|}||z{}||}|~~|{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yz{{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|z{{{|}}}|~}||}~|{
~}}{
~{}}}}~~}}}}{|{zyzzyzz|yzzz{{|z{{{|}~}}}}||}}|
~}~~
}}~~~{||}}}|~~}}~{~{{zy{zyzz{yzzz{{|z{||{}~}|}||}~
~~}|}~~
~}|~~|~~|~||~}|~}}|||{{zzzzy{zzzyyzz{|y{}{|~}~}}}
~}~~~~}}~~~~~
~~||~}|~}{}|}}}~}|||}{{zzzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFL=8765999<>9?<D:;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>9=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<9<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËÊÊÊËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÕÔÕÔÔÔÔÕÔÔÔÔÔÔÔÔÓÓÓÓÔÔÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9?CE@<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÐÑÐÐÐÐÐÑÑÑÑÑÑÑÍÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø××××ØÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÛÜÛÛÛÛÜÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÜÜ×ÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILO@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌͲâÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¹³xsssssssssssssz½æáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVN<::77>C?8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÎnPSSSSSTTTTTSL óëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¥2)+++++++++++)5ECCCDCCCDCCCCFSSSSSSSSSSSSSKªòëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;?C>6:7>>;=B?9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÎqTXWWWXXXXXXWP¡ñééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¦8/00000000000/;IHHHHHHHHHHHGJWWWWWWWWWWWWWO«ñêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<;;<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÎx^a````aaaa``Z¤îççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©« E=>>>>>>>>>>>=HUTTTTUTTTTUUTV`bbbbbbbbbbbb[¯ïééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB>;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÇÅÅÅÅÅÅÅÅÅÅÅÅÄËÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÏÎÏÎÏÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÑÊÊÊÊÊÊÊÊÉÉÉÉÉÉÊËËËËËËËËËËËÌÌËÍÍÍÍÍÍÍÍÍÍÍÍÍÍÔØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<8@B<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÏÏÏÏÏÏÏÏÏÏÏÓÏÏÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÎÏÑÎÎÒÔÏÎÎÓÓÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖØ××××××Ø×Ö××××Ö×××××××××××ØØ×ØØØØØÙÙÙÙÙÙÙÙÙØ×ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎÎÑÁ§ÑÒ¨ ÐÏѤ¡ÐÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÎÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÏÏÑÅ´£§Ö¯¡©ÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D?A98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÏÏÓº¯ª¸ÀÈÐÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<:6?B@C:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏÏÓ±¨¡´¢°²ÓÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8FA?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÑÀ¹¯³ªÕÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÔ£¢ x¤ÕÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:=?>=<9@<<::9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÑÄ{
¨y©
¤ÕÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÕ«¯¼ÀÓv´°¦½¦¯ÖÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:96:;::;8@?:<<9<>=;;:?9?:;9=>==;;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÉ
¦¥§»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÆÓÓÕ¢«¤Ð«¤ÑÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÒÑÒרÎÆ·×¼ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFHKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÑÒÏÅÔÔÇÃÕÑÕÅÄÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÒÒÓÔÒÒÔÕÓÓÓÔÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEK>>786967899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EILAALD??;:889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEGIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDJ;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGIB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?:8776=??@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@BB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEFC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<;DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGGNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiiixsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptywt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsoupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjdmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸········¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µµ¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢¢¢ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¥¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;;;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤££¡¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::88:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££££££¢¡ ¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¢¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥£¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>98;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤£¢ «cimnifm £¤ ¡ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9;;>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:=>:?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=9F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VPQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
}§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s}~
z}}¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
z||}~x
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPFMHSWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~}}¨®²¯¯µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWLO_^\NUTbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
£ ¤£¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJCPK_bXZQ\S_MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©¨§¡¥¨¨«©©¯¡¡££ ¡¤¤§¤©«®¬¥£¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdVOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®ªª«¤¡¢¥©§§©¨£¢¤ ¥¨£ ¡¢©§ ¢¢®¬«ª§®¨¥¤©©©©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPORd\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨¦¥§¨¦©¨£§¦¤¦¢¡ ¡¡ ¡¤¤¢ ¢¢ ¡ ¢¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOWO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤¢ ¢¦¡¦¦¦¡ ¡¤¡ ¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvwa_\UYQUV[c^r_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;><@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯«ª¬¨¨«°©¨©¨¡ §©°²¯¬£¢¦¡©¥¤£¢¦ ¥¤¢¥£ ¥¢¢¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\V\hdocnihb^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£¢ª©§®·¶´´¶³¯¬«®«¶°©²±®§¦¢££¢¨¥¡£¡¤¢§ £ ¢¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxib[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>AE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ª²¸¼¼½»º¿´¯±³µ´··¯µ´µ²°¨¤¢ ¤ª¦¦¡¤£¤«¥¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨©«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥ ¡¨¦¦¥£¡¤¢ ¡¥ vxyxc[RYT__alhukpgiibYSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶³º±ª®´±°±´µ¶¼½¾¼¼½Æº¸·º½´¯µ±±º¸·²³²ª¦¦¤¤§¨¤®¤««µµ®³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YSah`fsositdidb[LK>:8898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÃÆÃù½¿ÀÀ½¿Ä½¼º½¾´§ª±À½¸µ¹À³¯¯ªª¨§§¤¯§ª´¼±´µ¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`a^^jbbnwuvnl[bQU\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAB;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±±§¼¼¾ÅÄÆÉÇÅÆ»ÄÀÅÆÀ¹¯½¼À¾¾³«ª³»¾´µ·Âº¯°µª«¦ª£¤§±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklfnuqruqf^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÅ¿ÃÂÆÅÀ±¾º¿Ã¶¶º©´³´©«³»»±±¯¬¤¬®´§ª©¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tkkndolhqxoyiia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄø´À·´¼Á¹··¿À»®¥®·¼·£·°¦´µ¬®¥¥£¨¤ ¥ª³²¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{vnkiguZfrwsxfg]d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÉÆÃÃÄÂľ¸¾ÁÃÀľÁÏÏÎÆ«¯¶´µ« §´³®«¸µ³«©£¢©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuueeijg]jomxwcb``^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÏÏÌÃÇÆÈÈÈÇÉÇÅÉÇÈÇ¿ÅÇÄÄÇÈÊÒÏÒ̼¸¶´¸¸Á¾¾º½º¼º¼¬§ª»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqobagugiitmxl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÍÐÎÇÌÉÂÁÆÁËËÇÆÌÉÍÅÆÆÃÆÅÉÍÐÍÏÌÇÄÀÃÂÉÍÇÅÁÄÇÁ»¾´±°°Á¾¿ÁÆ¿¾¸·Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlieunsb\bTWTSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<:>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÅÇÈÆÒÉÁÃÄ¿¿¾ÄËÈÊËȼ»ÈÇÉÍÈÃÈÉÉÆÅÃÂÁÂÇÇÉÊÇÌÈÇÈÍÆËÏÅ·ÀÀÀÀ»º½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrofegdjdajmnn^X\VUNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÂƾÆÁ¹»Ãº¸¹¼¾ÁÆÁƺ¹ÉÉÃÅÄÀÄÁÂÁÄÁþ½ÂÀÀÁÂËÃÆÌËÅÈÑ°¾½¸º»¼¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbabccjbfcZYY\YQNE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹½ºº´¿¸µ¸³¯»¼·À·½Â¿Á»¿Á¼»Å¾»ÁÄÀ¾¾¸¼ÁÁ˾½ÉÄÀÀÊÀ±Á¿»¸»¾ºµ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qc`bbgjgfiei]VUSYOSKE8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µºÁ¸¾¸¿¼½·µ·°®¸¶¹¿»À¿·Á¼»Ã¶ºÈ¸¶¹»½¹º¶»ÅÅʽ¹ÅÀ¿¼Á¾¸Æ½ÁÀ¼Å¸¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zxpmedfoiekhXXNKKKRILHC9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿½¼²¯¬±°·¼¶»¼ÀĹ···µº¹º»À½ÃÀºÄ¾Ǹ¹¸·µ¸º´·³»ÅÆËÁ»ÆÀÀ¿½¼¿ÉÃÄžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksebm_\THKJDJBCG?9;8><7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼¼À·ª¤®°·»³½¿»Ä·¶¸¶·¿¿Ä¼ÂÅÅÇÇÊÉÆÏÂÁ¸®µµ¼¾¸»²¾ÄÄÊÅÁÉÿ¿¾½ÇÌÇÇÄǽµµ¶Á½º»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qelintnwcgb\cQKTHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?=??FD@A?>:7?@CC?A=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼«ª£°¹½¾³¼¾¼Å¸²¸¹½ÇÉÊÃÇÈÆÆÉÈÌÎÑÌÊĵºÀÃÈ¿¿µ¿Á¿ÆÆ¿ËÆÿÁ¼ÀÃÌÊÇÅÆÁ¹½¼Ä¿À¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_c^aaNHM?E@?DC<;::;:8;<:9<>9:>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED<AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´¼Ã¼ºº¾¼Ä¿·½¿½ÇÌÆÇÉÆÆ¿ÄÄÊÈÌÌÍÊÆÂÃËμ¹½º¹ÀÿÈÆÄÁÁ¿ÅÀÊÉÃÃÃùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw{_pc[]_^SI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA>>ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼¶º½Á¼»¿¶¿Á¿¼¿ºÀËÂÇÈÀ¿¼¼¿ÅÂÇËÈÁÃÀÀÉÊÂÀ»»°´»½ÀÅÆÅÅ¿À¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²²¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}zmsxsgp][^\YQEDCMIAE=G::59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA=>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯·¶²µ³·¹¼»¶»»½ºÃ»·½·¹À»º¸¸µÅÁÂû¸³´ºÁ½¿ÇÀ¹À¼¾ÅĽ¾¹²°®¸·¿ÃÇÃĽ½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸¸¸½¹»±¶²ÈÀ»¶´±°·¬³©°³·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|vluzpni\_`YSPAEHGK@DCH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÁÀ·½¹¸¹¶µ¿³´²¸±»ÁÀøÀ°¯µ¸¸¸Âº´»·»¾À»»¼®¯®³²¹ÁÂÄþ¼¿»º¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ¯µ´´½º¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§¬¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsvvwnq`_e]ZUJ<??FF=FCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Ã¿·º·¶¶²´À¶²´¸³ºÀÁ¾ØÀ´±´²·¾¹³µ²¼¹¼¶º¾²´´´°¸¾ÃÆÄÀ½¿¹³¯²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtvrl^b`[]OHA>=HCFMC@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·À½»¼¸¶º¶±Àº·¹¸¹»ÁÁÃÐÒ´È´´°¶ºµ´²¬¼¹¸µ¸Áº¸³±¬·¼ÁÇÿ¹ºµ®¥¬³°¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wo{ournc\fX\]RNMA>IB@JI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³²¶º®¬¼²¸¹·»¿½¹¾À´¿»¼º¸¾Â¼ÂÉÕÉÎÄ´²´¶²´¯»º¸¶¹Àö®®ª²¶¼½¹¶²±¤§§£¦©®¹¬««¥¨¤«®®§¯¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmuik][jT]\OMHDFLBFMF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹ºµ¹»µµ³µ»¼À»¾À´¿¹¹º±»Å¼ÁËͧɹ´´³°±°¹¸¶¼¸»¿²²²®±®¹¯ª«¬£¨¡¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬«¯£££¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndT`cW\QNLH@HQDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<;:@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²²ºº··¸¸»´¯´¬°¯¤°¶·µº²³°¯¬®¶¶²´µ¯ª¤¨¨ ¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨ª«¥££¦¢ ¥£¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vybwln\QhTPNGOMLBOQ@>;>39:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¥¬ª¨µ²±¯½Ê²¦¨vp
¡·´«²´®ª«¯°²³®¥ ¢ ¤¥¨¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦©±£¥¨ £ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uu}mk{dhUQcMIHGNRNJNG;E@=2?759;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡©¡ «ª¥½Ô«¢ltacer·µ¯¯³µª§¬£ ¢¢¥¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¤¡¯¨®²«¥ªª ¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}vx|dxy`bRU_HIIKSTIRPL9?B67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¥¦¤ÀÏ©|w^kuoe_n ¾´±±°¸§¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§ £±®²°´©±¯¢¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|uvshle[SZYMQJNNULRLA7>B68=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢¡£ÂÇxca\WlR©Ã³¬°§ ¢ ¡¤¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¾°¬±®©ª´±°¨«¨²µ·³¸¬±´¤ ¥¬¡¡¢ ¤¡ ¤¡¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xuiwu]lZR`HQUHFUVJBLG=KH8E<67;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¢ §É¹aZvZXam~Nt´Æ³§ª¬ª¥¦ ¨¥±ª§®£«¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼·½³³µ¢¬¢©¨²©«¨§¨ª§¦ §¨¥¤ª¡¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vqmivmhm\X[BVMJGMGBFM<>L=4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·¤°¦£®ÑªsYdX[oi·vZY º³®®©«¦ ¡¢
¡«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶ººÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸³»Æüü·³©³ª³´¯³®ª®£«§¶±¬¢¯¦¡£¯±°¤¤¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¥¦¢¤
{tqkkurphW[QETHDIOH>EA4EH95;=6;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ ¡ ¬Î`_wx
urrs°®§¤¤¢ ¥«¥ym ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿ÀþÇÆ·ÃÉÉÂÀž¹´¹º´»·°µ²ªº±®»·¾ººª·«ª¸º´¼®®¹£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢}zqkdhoxjeZ[FKLEDSLDBE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;?>=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ³²¸§¡¡«ª¢¡¢ÉVoykzz¦²ª wsqnp¦®´¹Å»ÍÇË¿ÂÌÎÍÌÇÉÑÌÍÌÇÉÅÆÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÒÓÌÓÐÓÓÌÊÂÅÆÇÊÇοÈÑÌÇÅÆÄÁ»ÃÀ¾¾¾µ½³¿¿ÂÂÆÄÇÄ®¾¸²¸¼ÄÁÁº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLCEPIDC@5558:B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A?<@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª£¢¬®¦¥±ªÅÆÌÎÍ¿°Á¨¥¨¬ª¡£¦·ÌTy ¤z{nfo©±¬¤ yrroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÏÊÒ×Ñ×ÒÔÖÓÓÈÌÇÍÍÉÒÌÎÓÌÅÇÉÊÁÅËÆÈÈž²³ÈÄËÊÊÎÅÊ¿¾¿½ÁÇÄÌÌÈɿÿ¯³¨¢ª£¦©¬¤¥¦
zruvgcgvidVWQDMF@IQB=B<:22@<D<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ´¸¬®£¤£ ¤ªÃÎXznhq®¯¥¡¥¡}wpkebhqoq{
vpnqtp
³Â¾ÅÑÐ×ÖÖÒÖÍÔÖ×ÔÓÑÓÔÔÒÏÑÃÐÓÖØÕÖÒËÉÎÑËÆÍÑÉÒÕÖÙÕ×ÓÖØÎÒÊÏÑÌÎÐÌÒÏ¿ÇÆÊÃÌÌËÎÏÅÆǶÀÊ¿ÑÌËÏÅÉÇ¿ÃÂÈÎÌÏÐÏÍÊÈθ·»¨¥«§£ª¥©¨¨|xsvpc`erb]R\IJGAEHI>;@8=4585;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÂű¶¨¢¥¦¡¢«µÏÏd{}on ¡¢wic`____^_`^blusqpolrquÄÇÆÔÕÖ××ÓÖÏÕÔÚÔÔÎÏÕÔÔÑÑÌÐÎÓ×ÖÓÕÐÏÒÓÑÉÓÑÇÐØ×ØÑØÒ×ÙÕÖÌÏÏÉÍÑËÎÏ¿ÅÂÇÅÎÍÑÐÑÈËÌÀÊËÅÓÎËÎÈÄÉÆÆÈÌÊÓÓÑÕÏÒÌÒÁ¹Å±¥¨µ®§¨¬¥²¨°³¬¬
|zqstmacim_VP_JJCFCQM?<>54:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡©¯ªª«¦®¸¨«·×ÔÕÙÙÑÎÐÀ¼ÌÉ·¿¯§«©£¤±´ÑÇovq©¬¡¡}qecb__a`_a`_``_`fmppnkorwwÌÀÒÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÒÊÏÌÓÖÒÑÖÍÏÕÕÑÆÑÔÊÐÔÕÖÎÒÐØØØ×ËÈÍÃÈÎÌÊË¿É¿ÇÈÍÎÏËÐÍÎËÎÎÇËÏÐÊÎÊÂÉÆÉÌÊËÑÒÌÓÑÑÏÐʽȹ°®»¸µª¶°¨¸³¿»±
zvopokadnpaW\ZIFFDMWE;@<33<=87855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¬¥®¾´°ÀØÒ×ÚÜÖÏÍËÄÓÐÂÁ±ª®«¥²±Ä¡mln¡k^^^adb```a``a^__^]bmroostvvy¤¾ËÕÑÖÔÓØÖÎÎÔËÍÎÅÎÊÒÒÏÆÎÍÍÔÌÎÓÍÊ×ÕÐÌÑÔËÌÐÑÓÊÎÑÕÒÕÕÊ¿ÊÁÅÌÂÈÉÂÌÃÅÈÊÊÎÊÍÌÐÍÓËÅÈÏÌÈÇÊÄÆÀÅÊËÍÏÑÆÐÎÍÍÌÏÅÇÀ·¹½Ãýù³²¾±»Ãĵª¥¢
xpqkmg``qhYXhVLFLIPPB;D>;67:89:57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?;<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÅÃÁ¿»µ²±Ç¸ËÕÕÙÚÛØÌÍÏÈÖÕÅ÷°µ©¢¬¸¼¡om|ebbb`]^acb`_``aa`_][]grqqrsqmry¤ÆÓÏËÐÏÔÕÉÅÉÉÆÆ¿ÃÆÏÎÇÅÇÍÊÒÈËÎÍÆÑÒÏÎÌÔÊÇËÎÏÇÇÏÒËÐÏźľÆɽÂÇÉÎÄÁÇÀÇÍÇÃËÊËÏÇÃÄÐÈÆÁÅÇľÀÇËËËÎÂÊËÈÇÌÐÄÅÇ»ÇÃÈÈÂÏÁ½¼¿°ÁÉǹ½ª°²§¥¢£wntdk`^fqa[W`GHHGIMTG?J=64355=<48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ½ºÍÍÆÐÕÕÙÚÛØÐÊÏÐÒÔÉĸ¼¼®¥¶ª¾º¡w~
t`\^^^`^`cdc_]]^_``_[Z\akrrookloo}¸ÑÈÉÊÏËÍĺÀû»ºº¾ÉÆÂÃÀÃÇÊÉÈÊÈÁÅÌÆÈËÍÉÄÂËÉÁÂËÐÄËÈ¿¹Á»Åǽ¿ÆÏËÿûÉÆÈ»ÈÆÄÊ¿½ÂËÆÅľż¼¿ÃÄËÅļÀÉÂÅÇÒÄÀÈ¿ÊÉÆÇÆÐÃÃÆïÄËÇÃÊ·¿¼º´©¬¤¥¬£¡¥£ {vstfiZanmZ[XRDLFBGDLDFS@54334?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ËÏÑÌÇÂÃÇÍÎÎÌÕÏÕÙØÙÐÌÓÎÎÐÊöĿ´²º¯¾¶}z
vxurq_Z[]``bddded`\\]]_^`[YZ\borokilposƼÉÅÌÀÆ°¶º²²³²±Â¼¼¼º¸ÀÁÁž½¹½¿¹ÄÊÅƽÆÀ¸»ÄÉ¿ÂÉ»·»ºÅþ¼ÁÍÃƾ¾µÁ½Ãº¼Æ»Â¹³¼ÅĶ¿µµ½¿ºËüµºÈº¿½ËÃÁÅÂÅÈÆÈÆÐÆÂÌDzÇÉÃÎÍÁÅÃÀ½²·°²§¨¨¹°¥°«¬yvwjdg`hocV^YJFJFHJAEBEI@9:648853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÆÃÄÈÎÒËÊÊÇÍÎÏÒÉÐÆÕÔÖ×ÎÌÐÆËÇÉļȿ®°¶´·¯
x~|tud\\]^``bcabeeb]][\^\^]Z[]]hsqmggnpry½ÌÀúÁ¸®°°§ª¬§¸µ·´²³´ºµ¾±·°µ¯²»Â¼Áļ¿ºµ³º¾À¸Ç¹´»¶À¼¸½ÆÁûµ®²¶º¾´Ä·»µ«¸½½¿½°º¶¯¶º²Å¼¶®»¿´¶´Å½¾ÂÅÀÃÅÆÈËÅÀÆÆ»ÈË¿ÏÊÇÃÆÂöý½¶¹¾Ç¿¬µºµ·¶xtxfgebkn^V^`FKHHJFBDAEE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÎÈÆÉÎÌÐÌÎÈÊÉËÉÊÄÏÍÒÏÏÆÉÄÉľ»Ìº®²·´²«{x~wx}th^]]]_`_`da^dec__\[^\]^Z[[]_lpnhfjnnr|¤Ç¿¸¸µ°«¬§¢ª§«³©«©´¶°²©®¦¬²¼º¶Ã¹ºº±«µ¹»´Âº°¿±½¼»¶¼Ç¹Â¶ª¨°±¿µ·¼¯°§²³´»¼«µ¥®¶®º±°ª¸°»®»¸»À¿½¹Â¿ÇÃÅÁ¼ÆÁÈ˸ÅÇÅ¿ÆÃùÄÆ»ÆÉÌ˳¹Â¼º²rvvkiablhYXW[ALKMIEAC?FA:9:995854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÆÎÒËÃÆÂÅÐÇÎÂÄÆÀÅÅÃÃÊÂÉËÁ¿ž·¹¹Ç³¯´¶¯¦|x~
z{wo^]\]]_`^_dcbccb`_][[ZZ]ZZZZ\dnohfgiknr¹°µ®¦¥§§ ¤ ¥«®£§¢«ª¬ª°¤¦ªµ¶±½¹¯·¯¨®·´´¼¸´¼¯¸¹´±¼Á±À®¥¨¢«±²³§¼ª«¨«¬´³¥¨¡¤®©²¥§¨¥¨·¬°²·ºº»±»½¾¾Ä¿µÁÀÇÈ·¿ÀÄ·Ä¿»¿Ä¾ÄÈÌÊ¿¾ÃÀÀ©rtrji]aodWVXPHYRSKFFE>>@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÑÐÍÄȺºÌÂÌ¿¼Ê·¾Ä¿»Ë¸ÂÄ÷ºÀºµ³¹Âµ±²³§©|~~xt|swf_]\]^_`^_ccab``_]]\ZXZ[[YXZ\_fkfegehkor
ª¥¬¦ ¡¥¤¡£ª£¢¥¥§¥¬¤¦¬²¯¶·§°¬§ª´ª´º±¶µ¶¹±¯º¹±·¤¤¦±§«¨¹ª¤§¨¨§² §¦¤¥¬§¤ ±¬²´²´°µ¼¶»ÁÁ²º¾ÃÁ²¹¹Â³À½¿µ¸»½¾¼ÂÇÄÂÿ¿Ä wpkaf_ko`TY^HNgOTGEJF<=?=:;;825536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:7676788666;::;9:;<859<:>>@;ȵµ½¸ºÀº½µ ¡¦º¶«³³»³ÄÐÉËÃǹ¸ÉÂÍÀ¹Ë¸¼Æ¹µÆ¹µÀðºÁ·²«´»¶ª¬®¥}zutomkjjqi^`]\\\^`_acb````]\[\\XYXXXVX[^_dcbegggjmo© ¡¢¡¢¦£¥¡§¢ª°±µ¢©ª©««¤´¹·°¬²µ®²µ®°ª£¢²¤¦©¸¢¦¦¨¬ª ¥£¯©«§ª«¬°²¸¯¸¹»°¶»»º«³³¹³½´¶±±µ´¿¶½À½ÃÁº»½zrk_e^ddXTW]IW\KPGIIFA<??@;?<04535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÐÈÈÁǼ¼ÅÄÏ¿ºÈ¹¹À¹´Ã¶²½¾°¾¿¸¨¤°´±¡¨©xsnpnkb^bff]]^]]]\]_`abccba_\[[ZZYXXWWWXXXZ^bddeffhikr¨¡¡¢¨¥¦¡¥ ®®² ¥¢«¦¡´°±±¬¨¯²§º³¦¶¡¢£¡£¡©µª¢£¦¥¦£¬¡«¦£¤¦«³³ª´°²ª²¹´¯©¯²²³·³®©¬®²¸°º¶¹½¿·²±
yue^e^[YVSZUK\QLIEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ·½¿¶¾¼¿³¥£¥±Âµ¶½´¸ÂÍÈÇÀÆ·ÁÀÈϸž´»»´À¸´»½±·ºµ¥¡¬³ª §¤|yprtqifdhec\\[[]]\[^`a^__`^\[Z\ZYXVWWVXXXXVWadecdeddhjv¢¡¡¡¨£©ª¦¯°«££·ª ®¨¶©¦§°£·°¤·¢ª¦¡¬¸°¢¡¤¢ ¡©©£¡£ªª°®¨´«ª¦²°¥ª®²±°°®¯¦§§²®±´¯¼´º·®£yud^aVYWSRTKM^LPKGGLLE<@><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾¸¼®§§£ª»À½À¹®´¸ÂÍÉÆÃľƸÉ̳Âï½½·½¾·»¼µµ·±¢¡ª³|xrjmrtpihedfb\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[ccbbcbcdfj ¦¥¤¦§¥ª¯¦¢£¶¨ ¡¢¨´¡¥§¤¯¥°¬µ ©¡¢¬±±¢£¡¦¦¡¢£¥¥«¤¥°§¥£««¦¨®¯®«¨ª©³¥¦«¯´±®¼µ±¯¯ zvrda\Z]XNLRHRaMWPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8846863321./2556;:8;7876<;:;;A8x»»±µ½°»±·¬¤§·»¼Áź±¹µÅÊËÁÄÇÇÈ·ÆÅ´ÃÀǬ¸¹¿¸¿½¾¹¸²´¯ ªundbgihfhjgjm`]\[ZZZZ\]\[\^_\ZY[YYY[WUXWTTWVSTRU``_`a_`acdi£ ¥¡¥¤£¢£¡ª«¥¥±© ¥«§¡¬©¨®¢¡¢£ª¨°¢¡¢¤ ¡ ¡¤¦£«¥¢¤ª¤«®¥²©¦¥¦¦´¦©¨³µ´¹º¯ª¬rpo`[WVVRGQOHZ\ORITKSLEGIC8;;=<8667:9;:976977:;:=<<6;<8>598:88659:<<97?<9678452121..1426:86:8698989;9@9{µ´´»²¯«±§§¯¹¹³ÀȺµÀ¯ÆÉÍ»ÂËÌȶʾ²¿ÅÊ®³ºÄ¸¾Ã¿¹¹°´¯£¨§}|uiiilgjlmkjme]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\]]^^__bdm¢ §¨ª¨ª¦¨¥£¤®¤¥¯© ¯ª³¥¦££¡¨©¬¡ ¡ £¢ ¢ ¢¨£¢¨« «¯¤®·¥£¤¢¬ª¨«®²·²½µ³«¯ssh[XXRUREXLQ[YMUNPLPQINIB<??A?<65799<<987:79:;<=>;7;;:=67:;8976989:6:=99577571141-+/434988::8::748=8?9~³®¨³¶®©§¯©¨¬·¶¬¼Ê»¶¿¬ÌÇƹÂÏÏǴż¸¼Äʲ®ºÂ¹¿Á¿¸»¬²©¢¦¢}wxonhmnmphgigd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUTSNPQYZZZ]\\^_`d~¢ ª©¦®ª§¯£§¬ ¤¨§®§ª¥¡§ª¤ £ ¢¥¥§¨¨ ±°¦±¼§ £¬´«®§°´°¹µÀ±±«}qrbVTVNRIGVQRRLLXMJLNRGMKACFDC>@75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8³¦±·ª¦¢°«ª§©²±¤¶Æ´¹º³Ëƺ»ÂËÐʲ¸¹½¿Âų²´º¯··¿¸»ª¬§ª¦¦¡kgmnrnqjpkdfge^ZYZYZZZ[ZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajzv¨©¥¤ª§ ¥¢
£¢¢£¦¡¢¢¥¤¦¨¦¡´²¨²·¡¢·¬ª¤²²¦µ»µ««±£xrm]NQQLOCMNNPKFNNJJNMQIMJAGLHGC=858889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12776:999984988A7w¶§¤¶°¤§£©¥ ©¥¤³ª¢²Ãµµ²³ÇƸ»ÄÊÍÆ´»¾¶¹Á±¯«³©±¾´µ§£¥¬¦¦v_`gsqvqiniehhj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXYX[]aosvq
¢¡£¤¡s}
{¢~~tz¢£ ¡££¢´¯¬¯¬¥¸¦¦°¡°®°»ª©¯ªvrbUMROPMCSNLQMBPQHINSMHJJCJLFKK<749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-11764789::65:87A7x·¢£´¨¥¦¨£¦¥¦¦¦³§¥´Á¸¯´°ÊŸºÁÏƾ³»Â¯Å¯ª¤© ©º²ª¨ ¥¤¡lWW_hgighncjigb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTQMMJHNSSSTUUWY[]ilrm
|tNXr_;Wo{
syz
}xro
~¡ §¯©¨¨³¢¦¬«§´¢©£~rm_[NSRVLDTJPMLFNOIFLQMKOJIMPFII<7599999:7:;:>>8:==6:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· £¡¦¦ª §©§¢©°¨§´Á¹°µ°Èø´¾ÏÀ¹¯¯¶Ã¨¬Ç«¥µ¨¡ cQMRVZZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`mpi{tPBA}
x`JQnx}
n~wuuwpQ|~xvhw~¤£¨©¥¤°ª¡¤¤¥ª¡©¢¦¨ule^[HQQRMIUMSILKOIHGKNLMTKQQOFIC<769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')+*,4833979:99::::?9w¶¢§¡®¡§¨¥§¨¯ª¶¼¶¸·³Â¼·¨ºÉ¹¶¨©¶·«³¾¨ ¬_MLNNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZntw~ji]Ut|
{uxsnupty}ª
yzhv{prmxxz{vsrwgu{{© ©¥§¤ ¤rg`\\JVORGKXROJMMRJJJMPHLQLRTLEHA<77;99>=:;<98@?::>=7==79937795675252572/2.,//200/-+(().1272198798775:<;7v®£¡´©¯©¥¬°±ª½´²»¸¶»µ² ·»³«ªª´°£~~~x`KIIHGFHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQQSV^u}ygw}gyvx|r|v{ok~|s{}tfv|lohs|lyq}pmuqiq~pC
wwz
}zu~£¢¥vnlebZWWTQJSUTOPNQVKNKNOJQNHNOKEC<;79;::?=9<:99??;8<=7<9999266856633621224.,,-..-0-+*''*.1362/876966527995y¦ ¦¯¬®«¨©°¯±«¼¸¬»¾¹³¨±§¦ª¥¢{|wv|xyx`KFGFA@CDILLMQRPQSUTTUVWWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNPQTX]eprm§ªÀ~uyb{xn|yy|
omxsxjjr}Inhw~licly
ksl|nr{impsz}~{vots
ywp|~mhmnnWUWTRQYORUUSXUMNHNJMNKCHNGE?:89;99:><9<;::=>:8:;9?868727575541442/024*+**-.+-*(*(',-1250,5567485HA895w¥°¢¬ª¨µ¯®¬´¿«¼Â¿¦¢¥
¢¢t{yu{qztptvaOEGD@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORWZRY\`§bitze~pmzvtlts{jkMy
g1vsl~~tfet~
filukq|gqq{n{s}|qpnum~wytiyyvjjngdWQZWYY[MPUVYYNIHEJJHGBAFDCG=998;9:9<:9;:::@<9:<98>787715244533645031.**+),,++)(+'),,226,+5775478iO8;5n¤¨®²¦º®«²°Â±»ÃÇz
rv}tusutlvneUFID?<;9:?@ADDEGJLOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOOQVLAIQIb¯³ q|xm}lr
zyr txsu5q¨¡¡¢
vp||shfbinrmpuioXupwl{}mqmpzsvmbv
ux~~zqpok`[\][YX`_SN[ZYXLHJEJG?CABG>CD=;97=;:;;9:99;:?<88=:8;66651121353475531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥µ©±®Á²»ÁÆ}nv
m~xyzpzr{im^JPG>@7448;;<=>@BEILLLMNPQRUUVWXYXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~mw|}
~v¢y~
aªzw~s{\dqtz{wlgjbyo
znwtzptywkni]w}|
}q|uw{}uorseg_[Z]S[f^WQUY\VGJJDKG?F@DC>AA=:97<;;=<::99;;=>79>9986754244004645654-,)+('''&(())((+++/00Uq<23331E~W4=9\x¦ « ±¨¯À±ºÅºz
vk~yt¢
~~r|kxkSWL@E211267688:<?BEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJi{y|q|z|~v¡¥¬©H®¯¯¨sl|}hghx~n
q
Gkwryvhmk_v}
z{uv|wmow~rrqk[]\[ccXge\UPPWYPDLKFNICFCCA@CA=978:::;;:888::?>6;>7585773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|~
¡¬¡¦¸¯³½³}tp}}~¥yux_cVKB60./23123668:=??BEGHJLNQSTUTTVUSQOGC?80,#[>?94.]ps£UFIKMNPW`YpZ\^j
~
¡¡¥»±§»Çè¡¥{r~v
ihotqw{v
}nvug¡«¢{zzogkx~x}qjc]ZZ]i\af_ZOLNXRQIPKDNGCKDCADCA<:87=<:<:88778:==8<=68656623445576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupgx{¤¡¬¦«¯°¡xw}lpj]CA4--//./02234779;=?BDHJOQRSRSTTRPOHDB<87/9D><<63.lMPHIKKKNV`cggmu £ª¥£¬¨¶¢¨Áîǯxº|¡
¡
lpuvql
r¡¥µ©¢~kjk|r`\c^Yfj\lk^XKHOSQNMLFIPDDNFBCEGB>997=<:;:987767;:6=:785456345566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<unhYppuqv~§ ªge¤~z}
xxgMR>/..,/.-/000212457;?CFNPRTPQRSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} ¨¦¢¡¢¨©«¨¬©ªµ«¿«¶ÈÈ·ÉÑϾ pi«©
¡§¢wz~¡{v«³ }¤¢¦¶°¨lss|~zog_[`^afc`gg\REKKPOIJLFFMCHLFFCBGD@:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Pqu`n}bw}|ªªBD}x{
w_bP460-1/,.00./..0015>AAMQRSPRSUSNSLEE@<>=GGAA@8662<9;FHGIIMOQYmw£§ªµ½¸¥®¬¬§¨´¬±·²²»±³¾³Ä¬»É˸Ŀ¸¥£°²¬ª£
¦¦ ¢¦¢ª¨¤
£ ª ¤©±£§·» £°££¤¢«¯³µ¢¥«z{~}f_g[da]cc^ff_[ODJHTOFHLFKHEFHAKFCFFA:87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicXjpXz
v
ÚÈsV|z
qna@E64<2/110-,+-1/-4?DAMUQRTUUWUM[PGGD<>>FHCD@7;<5C;=FKIGHROPW ®£³ª²ÁÈÄ«³Å¶¬³À³¸¾¶¿´Á¶»»¤¸Æ©¶ÉǶ¾¹´¨£´±±§¯ª¤v¤¡«±³©¨®µ»²º¬¯µ¢±¬±µ¼·µ®µ §§£¨©°²º¸¸§·©¥ ytX`cUeaab_`f_[TJDELVQIJJDJHEA@@KDAMF<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AEWQJL[ZQcdWzuq}
v~{¿»£¼´y
zyn]V@EN<6:46AB764//6CHCQ[OQUWU\WO_UIKJA@?GKFEC;>@7D7?BJJEGWTP^¥£±´Ã¶¸ÁÌʶ»Ä½³´Á·¸Âµ¿°·t±´¦ºÅ¤°Æ¹±³±´¨¤µ¶ª± ¢¢¥±¥«§¤ ¬³º¢¨²¹µ»¾Ì¿ÅŽ½³Â·º¸¿·º·¹±¦±ª¾°½»Â¬»¨ª~{iVa`WididV[cYVTIHGLQGDIJAHD>?BBK@@LC99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FQLALRWTZVZwjp
nzsxb¸¡£{z|}}xzueO\dGEL:Qda[^SF>;HPDZdQQYXZgZT`aMSOEA?IJHEFA@C=E6B>HGKMSZT^¯¸µº¹ÉÀ»½ÊÌ»½À»·µ¼»·¾µº²Æ`u²¥±«¾ª¥¨«ª¤¢²µ¡«§®¥§¦¥¤¢§°³¨²²¼¶Á½ÓÉÉÓÆÂÅÌÂÊÃÀ¾½¿»¼·´°¹··ÃºÆ¾ÃÉ°ºª¢¬¥¨¶}q^a`\Va^geRXaVRVIEFMK@>HD=KB=B@=F=;H@796379>489:57045/26389374526?8@>GKRTTRPOQRQJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRLQ]gmlq
slsrsÕÀµ }x{{yt}zlepvY]\Peeb`ed][XW\MdmURmn_o_XgeUYTJDAKKHFHHHHBI9D?HKTTV]Z\¹À¹½·ÆÁ»¹ÊË»·º¶¸¹³¸µµ®¶¶du©p^¢¡¢¤«¥¨¥¤¬¤ª°·°¼¸ÔÐÎÖÏÉÌÒÌÏÎÊÇÀ¿ÂʽÁ½ÂÀÅÄÆÊ¿ÉÏ´¤»±µ°¬¹½~xj\_[X]`YbbQ[`SQKCBEFE<@F>BIB@D=:E>=J?47535;=468977022/24169775555D3ELM>510006:477@IOJ;-&**(-./,@M+/54mI0Ht?>BD@CDFKODR\Yi`onlotu³¬¡¡
|s{
|ts{ylmu|iseilifjji`fihmZmt¤¼g[oh]ZYTHJNPJKQLTQHLAJGKP__bgjb·Ç°¹³»¾¶±ÄǶ°¹±°»¬³±§«·¬¶§§N §¥¡¦¬¯¨¯§³³ÓÔÔÖÑËÏÓÔÎÓÏÌÆÃÊпÊÉËÉÒÈÍÍÃÑÒ¸¯Ä¼Äº¦·»Ä¢mb[[\W_WYeYP\WNQCBIECI;AD>AH??A7;D>@I=46655;:687654/10146278875367C5B8?-0,1349=97,.,1;FL=),(.0007K?-46TW0DwC;B>EBACJM?UYSfWshqoyy ª¦}
|p{r~qyulpxr{nxslipmcimpyiw}~Ë¿Âߧmcxod[a`JPRUNY^P]]NPNTQUT\nnwr®¸¬´¨°¶«½Á±«µ¦¥¸§¬®¡¬´¤±®§«¬¤§¡¬¬ÎÒÕÑÍÌÒÓÓÐÔÑÎÈÃÔÑÈÎÒÓÓÖÍÒÑÅÒÖÆÁÏÈÈ鿸Ðxld\a\U^Q]ZOOTPNH>AGBCF<AB?FE>@?:===<JA45465<888664412/03526768533;=<E=@11+/249?5901022-2EO3)/3.32=N248C}_2AtD:==I>@CFH<VRMO[uwmwp}~¡¡
y
{r~z
v
pwsls||w|sxqkrrioqzys{¾Ë~±vr
whaj]CZZ[WfdXekTX]\`c]cx{ª¤¤¢ ¡¨§ª±¹«¦´£¢¢£®¢§±¦k¢~
§°¢ ¤¤¨ÇÍÏÇÁËÐÓÑÔÒÎÓÍÆÖÓÍÔØÖÖØÕ×ÕÉÔÚÍÊØÖÑÊÄÃÌqmb_^WRXR[PJGJIJ@;:;ECD<CD>HC?CB;;9<9GC46544<5687543250/2546745544<>=E?A62/-16;=081/254/-.;R017/532ED28>nb5=tM99@I<AD?A;PLFKYpu~isyr
x~xs{}w{oxpmuvx}t|ylvun}vuy{µ<AÆ¥~|jeWICecfchjdoy[_fhknin ¤¤¦²¤¥³ ¢¥¡© ¢±~
z~ª£}«³§§½ÃŹ¶ÅÍÑÐÑÏËÒËÉÔÏÑÕÚ××ØÔÙØÍØÛÎÉÚÚÒÖ¿Ì͵vumc\XRUPYUFFJIEE=:7:@AB:GE@EDBDA;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BT29254/7K75<`bA<svV87AH:?C><9QECJTlnopbqqs|~
}y
zyqz{vzzp}opzr{qnzuw}|u|°tYªÂ·pnc=^hrpqpnxweioruxr{ ª¡¢¦¬
}
~my{®ª¦®µ¼¨½ÆËÈÉËËÏÈÃÑÊÔÖØ×Ø×ÕÛ×ÓÚÛÖÐÚÚÑÖÈÕÌwygfZYORS]HBEII>A>=8:=?;>H=@BAADA>?:87DB755479.566435532323647553457EBDCEB56<FNSM[nfcnsk`V>,4LG865433BF4=W_hLux^8;?F<<B<:9D?CGRk_mdbfkvqy~
|}~wyn{{tz¡vvtu}toou|
zv|¸Æ¥ÃʸxpeNeczw¢yyw{|vm¦ £«
{|¡¼¡¨¦¥§µ¾À¿¸ÇÉÍÎÅÍÊÑÖÕÔÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÛÇ
ywegc^RVVUMKDND;==<9:<>9>A7>?@=@><9867CA6455=80665547745613854564557HH=DJE7925;H>;::7HP\ZRUXK9T>;95327I8=NYMHxxd5=>C=<@:6:>>@EQ_Yfa][htzylwvz|~}
{~
z
{u}um}}~t|}x~yot}
|~{©Ã ½¤~}rs¦
{iGq¡¤
¡~¦
¤¸¢§ £®¶º´«¿ÅÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Û·wwviicU^ZSONHDLB==>99;:99<=6@>>==9:;;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8589?=DRSRX^UXfmmmiqsx{{}|{}{~uysztm~}w¡n©
z |~£¢¤¯ Wr¬\¢£¢
¤
³¡¡§±¸¬¤¼ÁÇÍÇÆÏÌÏÌÏ×ÏÑÔ®ÖÕØÚÙÚÚ×ÖÙÙn{see[[VRUWC@ID??>:49:;7:;:3<<?=>7;9:1:G=:27=@50677255?65;55858:57735HR7GOK994=EJB>1FCLA98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:<@;BQKKSYPTcbxlb~omwxz{}|{v
sp
{vwvt
}¦¢¦¢§r²§
£ ¢©° n·ÄȲ¢¥²d¤ÍÈ
ª¤£
¥©¡¢²´¥£¼Á¾ÇÅÅÉÈÉÂÊÓÌÍÔ¨ÒÑÖÖÖØÚÔÓÚÎq}fa\\]NITYABGD;A>837;<:8=64::<:72?9929I:>67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF>;88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBcGv}|m~xz~{vv|mnz|xx|~£³§£ª³¢§¥¤®¢¸³¡¡¥°£¤§¨¬¯¤¡À£É¹«£¦²
¨¢
u²¤¡} ±®¢¤·¾´ÅÇĽÃÿÆÍÊÉÒ¦ÎÍÓÒÑÖØÓÐغqxt[_T_UOHJNDBCE5>:77:?<<7=43669774=5;5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=88567=:JFDGN[\YJf`;Hzzn
z|y~px|~}orz~|x§»¬¨²½¯¥³³¨£¡°¬µ¢¸¥¤©¸§¥£©©£¯°ª »»®Ê¡j¶¸«°£¬½£^ª²|}´«¡¡ ¥¯¨¡¥³¸«ÂÈĵº½»ÅÇÇÂÑ ÆÉÍÍÅ×ÖÑËÔ¡oyg[YR]POEC><CAB8?885?G=<6<35345454B39:BM:B;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPdGb`bpJ?s}um|}}pww{ªÂÀ¯½Æ»³´À¼´«³¶¨³½«»¤¨¹¸«§¦¢¢¤¢©¯²±«¤¢¦¥¤º¯©À¼²¹¥¥¨~¼°z¨±¬ ¤¬¡ ¡§¦¤¢¤°³§ÁÆï°º¶ÅÄ¿ͦÇÄÇüÕÑÍÅÊrq`ZX^ZLJBK@FG>A?B;:5>A==5<6>333242A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GD?CF\eG`igZ]\{uo~{q~{z§³ÆÉ¿ÂÌÂùǼ»¯«¹»³·º²À®¥Á¤«°¼½«®«££§«®´°ª ª¡°µ§£º»¶Á¼¬©²¥¤©
©Ääz¢¦ ®ª¡ ² ¤ ¥£¦¦¤¯®¥ÀÄ¶Éþ¶Ï²Ä¿Ä¼³ÑÉȵswk[VZhQLHCLKKJAA=CD<5AD;;3=8B332262A05IEN>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBeYNe\fTcjyr|xz¡¨º¾ÇÈÉÁÒÉÊÂͽ³¼¾¨º¿½»Ã·¬Â©¬³¼¾ª°ª¤¥¤¬®³¶µ ¯¥¢£³½©¨½Á¤¶·°¬±¬©§¥¥vz
££ª¥|£¡µ¥¥£¢¥¦¤£©§¢²¬¨¼Àį¥²·ÌÀ¹¯Ä³»¾Â¸ÂÃÂÀkx`WVZZJKMJFDDHCBADL:4DH9;4<7E.12352B25SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQG7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>jH_XaZddV x
¡®¦¤Â½ÇÃÇÅÓÍÎÍ˼·°¹¼´½Ë¼ÃÁ¶·¼³Àº¼®¯¨ ©¨¶®©²·¢§¡«·¸ª¥°¿Å±½¹´¨ªµ´®¯¥¬¨ ²Å§}}ª¥¡£¢Z¥e£³¥¡¬¬ª§¦ ¤¨¥¶«ªº»Ã´¥³µËÀ¸ª¶¬²º¸®¨¸º½¸jmYVSTMEJRNK?AHEDHHH95FM;>8=@J.32025C55OVN<LFKRLOHGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|gV;=@BFBpEiIRebLF¥¢©¦¢¯¾¯¡Æ¼ÅÄÆÆÎÎÎÒʾ»¶±º»»¾ÏµÃ½¸¹·²±µ³¸³«¦«¬¹ª©§¯¯£¯¤§¤¥µÀ°«¬´¿ÃºÀº´¨¹µ¹³¯¥®®¤¡tÁ}±¥£ ©¡ `J¥U°¯¤¯®¬¥ ¥ §¢´©ª³¼»»ª°²Ç¿¹¦¬«±±£¡±²´¤old[YNOKEOPQQ;HJIGICC>:KU?A:=EM07544:B44MWO<JKOUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@BAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}hW;:BC@=QEWSsbWFHª ¢¨¯¨
¡£¤µÈµ©ÆºÂÃÇÊÉÈÌÍƾ»³®¹¹ÁÁ̵ǺÁ¹µº°¯¯³µ§¤ª´µª©¦¬¤®¥¤¨¬º¿¨«¶·¾Â¿¾¹´³Ä²¹½¬£¯µ¬¹¦¦v¿®¡¡©§ª¡§nv¢¢®²¢ª¨ªª®¤¤¥¨¢±§©«º¶½³²¾¹· £§¨¥§¬©©ad`^QJLFHMIVL=MENKLBCD<QV=AABDO18=77?B75UXN?HNQYSPQUKQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=.-R`MUHe^HE«¡»¯««¢¤££¶Æ¾´ÀºÂÂÇÈÅÂÍÈÁ¾¹²¯¸´ÀÂʵŲÁ¼´ºª©°££ª´»¦©¦«ª©¯§£ª«¾¼¨½´¸¾Ç¼·¶¸Á²¾Á´©µ·«¾¥¢¢¼ ·©¥¢¡¨¥³¡¦¨ª¤¢¢¡µ¯¥¤¯««ª¤£¨©¤¡¡´´ºµ¨µ²³¢¥ª¡v_[_]JHEFMQIMEFGCSLJBEGAVRDH=AGQ1;B7:BF79\YKALPTUSMWRNUJD@JJNO9C@5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-19g\FCCpbGE§¤Ã¥©ª§¦¬¢«¶Ä¼¾·ÁÂÀÇÿÍÆ»½¹²°¸³¿Âȵ¿°¼¶¸¶¦¤«¬¡¡ªªÅ¢¤©«¦¬¯«¢©¨¿¸§¾±¸¶Ç¶µ¹¸À²¿Â·µ³´¯¾££® ¡£¥££½¤©¨« ¦½¢£¢©«¡¤ µ¬¥±§®¦© ¥¤«±µ±«¥ª¬ ¨gbX`]NHGJNKHEDI@>QIA<GIH[ROK=HOU4BF9>HG5Ca[KCNRUWVQXTRUI@8RQPM:GA4CHQSIC;C>GVKC@O>K<06;GF>;FA46@9:?9;15D0-,/Mv\4KZ5,MnW<-=)#zbQ5CKQ:nRF<KxebVL¢£Å¬¡¬® £¥¦ª¬¶±£ª³¶ÄĽ¿µ¿Â»È¾Êǵ¸µ´°³³·ÁŶ¾±¸µ¸µ¦¬ª¬¥¤Á¤ª ¤©¯¢¦¨½µ¥±½¹¶¶Ä²´¸º¿³ÄÁ¸¸®³µµ£¥¡® ¢¨¨«£Â©¬¦ ¾¡¤««¬¦¢W¦¡ ¸ª¦µ£± ®¢£¦®²«©¡¢¥¥¤`cYc`KHJJNEEAFJ>=JB99JKN]QQI=LV\9FI=DMI8Hb\LCLPSYYVWOZ^IA=WQIK?H?5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWrGE6=ue\KN¡Ã¨¥¢´¢²¨«¥ £©¬»°¨¬¶±ÈÅÁ²ÂýÆüÄɼ¯°¶°´¯¿Ä´¹±°º´¬¨°©ª¥¡¨Á¬¬°ª£®±©¤¨½¶§·»¾¯·Ä´³ÃÀ³Ç´»·¬´¶ª¢¦¤¬¢¨«°¯¯»²¦ ©¨¢¤¹ ¡¤¯¯¬¥§¡¢§´¦¦³£®¡¡¦¬°¥¦¡
`eZgeJILJRBC@IG;;G?99OMU^RSJ>O^]=HPBLLI9Mc\LELRTY[SUO\bHA?ZQAHAKB7FELKM?;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<v]^?[T^eq@8;HweA4£ 餪³¡¤´ª³¬§¢¤²¬®©»±°µ´ÆÀÄõÀĽÉĵ¿È´«µ¨¯¸¬¿Ã³·®¬·º¥«²«ª¦»´§° ®´²§«¹³¨º´¸²¹Àª·²Ä¾µÆ¨¿¯·µ©§¬¡¦¥¢¢¥¯¸®²µ¶ ¨¤¤ ·¢¤¥¯±²§ª¦¢¨ ¡¯²¢¦®¤ª¤
©©ª¡§
xbh\jjMPMNT=CANC::I?77RO]^RVQAW`\BJSHVKH:Td\NFON[W[RPQX]GAB[PBG>NC9HGHOP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1[bZ33806p[bH05IphVCWFyfC;¤¤¢¦¿§¨¯°¡©µ«º±«£ª´¶±°¹·°·¸¸Ä½Ãǽ¼ÄÁÆÀ¸ÀÅÀº©¶¤¬»¬À··ª¬²»¢±²¥§ª¹©¦°« °´³ª©¶¶¼³³¹·¬¸°Ã»¾¿¦Ã«°·®©««§«¡¢¡¡±¯³¬°¹© ¦¡·©¥£¢°±´«³¨¬ ¥¢£³°¥¨¢¨¨¦£}
jhl`lnWPQZTACDT@;;HA7:XPd^PVWEY_]MLRN^KJ>Zc^NHPO\UYPKTWZI?DXPDF?N@=IGGQPB=DFBM?:1D?77547?=95E4+75/251.-.,1=*'+=\p=>1.0dZd@1647gY`F(?8l}g[V;{cC=¨¢ª½¢«°«£±¸ª¥¶´¬ µ½®³¸»º½¶¶À¿ÈĹÄÂÀÀ¸Ä½Á·¯µ§«·±»¾¿´©®±·«®¨®¦¨§»¤¬³¬¢±°³¬ª¶´µ¾®°±µ¬°µ²Á»Å·«½¯±¸¬ª£±¦¥ª¤³ª³«ª³§ ¦¥´®§¡®±§´²ª¤¨£¢¨µ©ª¦¥¢
{elrgoq^FYfVDCMXDZ9HB6>]Qh\NY]G[^]NMRXdJJC\b_PLMNXWXPJVVWL=EUJEDAM@AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,,%2+*5K1/'__`U150=`V^8)C3YT\gK6zfL@¤¡¤¬¶¥ª¦¯®·ª¯µ»¨§±·Å·±·½Áµ´ºÅ¾ÌƹÂÀº¾¹Ã·À¹²´«©º¶»¹¾´©°µ§¬ª¬«««¾¬®²£«°³®®¶²¹¸ª®¯²¨µ¯´¼½Ê³ª¶µ±´°¯¨¢³ ¨ ¦²¢ ¥¯¡¤£¦¨³©¡¦³¬ª¶¥¯±µ¯¤§«·¢¡«¥¢¡ y
{jmxmu{aE`jYIHZZ={JFD6AbTi[M\aJ[]ZRRRbaLKE^``QLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`U`/5(C_Q\.*B/JGP[H3cYUKD¡±¨±ª¦¤¯®¶©·µº¤¬´·É»´ºº¿¿´³·ÃÀÌȼü·½¿¿·¿¼±½§º¹·¶Â¶ª¬±·¦®«¨£°ª¯»¤±³§¨£²´±²±µ±¸³©®«²§·¯¶´Äƶ©¶¶¬°ª©¤¶ §±¡¤±§ ª©£¦¦¥¸§£²µ¬¨²§®±¶¬¥ ¬¨©¸¢¥ §£ u{
mpwt{~\Kel\KNc\?b{GI8GgWf\L^bMXYWTWTi]OOHa]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANHf27'GbLV%-B-=ELQ<3rkICC¥®¥¯«¨¥±³´«·²· «µ¹É¹®À»Â¸³±µÂÃÎÅÀÁ½´½¿¿º¾¼²Ä§©¹°¶¶¿¼®«³² §±¦¥¯¥²µ¬«±²ª©´»¬µ³µ´¬ª¬¨©¹²±ÈÀ¸¥º°©¥©®°¦¥£¯¤©¯££¢£¬£ ¢ª¦¦¹¤¬µ¶¥«¬¨¯¶®££©ª ¤³¡ §v}
|||psq}|}\Sdn^NYf\FD[G;NmXb[L`bNVWVWTYg]QRLcZ[TKGOTSNGIVS\N;P^IBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Bc;6*HeHJ+;H?3BHS,>k;GHª«¢ª±¤©¥³´±µµ²²¢«®½Ìº®ÀºÇ±´´ÂÂÑÅƾÀ²½À¼¿·»Ä§¬·¬³¸»À¯«± £§ª¨¤°¤«²ª¯¬°¯°®«³¼§·±²©³«¬¦¥£º¬ª±Ãº¶»©¨¨ª©³¥©¤£®ª¨¢¤¥¬¢¨ª¢¦¤«¸²²¡©¢ ¬¯±¬ §¨©¤ §¤~~
|w~
srquk_Y`ncQsq\K;|F?WtXaZNc[NVVUWQ\b_SONgXWWKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*25>10485(5/*,.30;),,'%234$,2-860)(1<]J0.JgDF8<B05EKX1@Z>LE¨¢«³ªª°¶¹¶¯«¦«ª½É»°½·Â¯±¬³ÄÃÎÏÿ¿´ÀÂúÀ³Èë®·²¸¿¾²«¤§ª°©§¨±¦´¯ª°®²±´¬´¼¤¸³¬®¨¬ £°·«ª»·¥·¶¤ª§¬¬«®¡©§¦±²¤§¦¢¢¬ª¡ ¦¤¢«¥£§±¸®®£¦¢ª«®©¢¥¤¤
£¢|zt}sv£xj^`nfWecN?gLEbyWbYReTMVUVTO\]aUKMhVVWIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*39?./463)4+*,+.#4.-+&(+79*&6+<-2,&06WZ.0JgAA<<B+:JO^4D>HFD°¥£«±«ª¶¬¶²¬¦¬ª©¼ÀÀ¸¸³»µ¦²¯ÄÉËÒ¿Á»¹À¿Â¹Á¹Àıµ±³º¿½²°®««§¶ª¦¯ª¹°¨±²®²·ª··§´·«¬¤ª«£³³¨¨¤´µ ·® ª¨«©¬¨ «¬©¹¶©ª©ª£ª ª¡ ¤¢¦£ª§´¯¨¦ª¢£¥§§ª£¤£
¢t~xtzw~oqggqx\askO^VHmxUdVQcOMUTUPOX[bUHPiTVSGPYUI>IHOQPxLMV=<KD?@A<@CUC9AK=5;E13;:7*4:=+-341*8**+*,))(/*&)%3;,$2)2021%/2Qb02?f=NX>C,>LT_/Ji5OD;±¡¦«®¬¥°´µ¯«¦°ª©º¾»À°®¹®¡·¯ÉÇÈÑÀ¾½»¼Â½ºÃÀ¾¿®²²±µ¼ºÁ±±²«³¨¤´¨¥³³¹°£®·²°²»«º¯ª®¶¬ªª¬£ ¶¨¡¯³¢µª¨§ª£ª¡¢¬¨½¯¬®¢¨¨ ¬°¢¢ §¨§ª±ª£ ¢¡£££§©¥}¤ xt|uxyztsyh¤ui^dktg}SXp^JxsSeSQ^MMRZfNLVYdXFSiRQ?CNQaQ:IHLSIqQLS;<I?;<=;@@W<<?H73CB15:93-5::)-31--5)(+-,42#2)',%.;.&1.0-14%,0Lg:48_=ad?F1CP[[*HM9UA4²¡¤¦¬¤§¤§µ³±«¥±¨ª¸¾À¼¯§¹ª¦¯°ÉÇÈÑü¿¾¹¾¿¼É»Á¸°°´±º»·À²³»¬¸¬¢´§§¬²¶¹³¨¨½¶®¶¾°½§¬µ¬©¯¤ ¥«§«³¥´¨«§©£©¤©¨©½¬´¯®ª¤ ®³£¤¥¥¤©«¦ª¢¡¥©©
~
~}
¡~r{z~|hx|zupp|gxdagbr
zmgx]]U@WzmTaPRXKLNru]HZ[gYEUfPD>JNDCA9HGKS?jaJQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11'/>KH0%90%,,09/,,+6'17#-0GjI14X=fcAJ7GS`U*=9DW>*² ©¦¥¡«¥¸³³¦©±§¸Á½µ¯¢¸¨¨°ÂÉÉÌÁ¶½Àµ·¿¹ÈµÃµ³²µ²¼·¹½µ¹¶¿¡³§««°µ¸µ¬¾½ª³Á´¼¡¯³µª«°£¥¨ª£¥±§° «©¨¡©¤¨¡»¨®±® «£¤®¦¡£ ¤ª£¥¤¢¦¬{{~
¢|yl~vyxc{{qpprwhsjgeg`mslaio`o>ZxkU^OQQJIMTYWM]^lWDX`O^PHMDF;7HEKO<rhKK9AE;;==;;=J49B<3;G<4?18-68;2(09/,4/.=-*K>*49&'.34.0+/4&,:$41BhY13S=e_DL6KVdO*;2NX=# §¤£¨¤¸°¯¤¯°ª«¸Âº³¸¯«¨´ºÈËÈ¿·Â¾°´½·Ä¶Ã±®¹²³¿´º½·©¹¸½«¤´¨©ª±®º±«¼½¥°Áµ¶¢¯·µ¦§§±³ ¤¥§¡¥¬¨© ª¯§ ¦£© ±¹£±¯¡¬¡¬¤¦§©¤ª§ ©¡ª}}|¡x
|
{sp}qtt`yxinppnh}qc{miec_e
~_ZskrKKhXZNPLJHPRPIN\_nSDXZRhOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23.:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53=fd24M?e]FO=RZgH*>0XV5(§¬ ¡¤¢¸«²¥´´ª©¹Äµ³·®°µÆÈÁ·¿Â¹±´¼¶¿»¾¯«½°³¾±¼Â¸©»º·§¨µ©¨«±³±¨¾·¦¼·²±¸°¨¥§¯±¡¤ ¤¤¡¯§¡£¨¯¡ ¡¤¤¢·°¡¦±«¬£¯ª¥©¥§¬¦¢¨¢
z~zx
~yzprwoot_ywdllkihmerkkehZbs^ZlvjZH}][XOOJHHRUF2:_^lPDXVYeLHJEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<#8R=*113>D5,-'42+;+139cl84GBg[HTCT]hE.;1_T,2£¢©¦¡£¡¸ª¯¡»¹¦¬½Ä³¯®¢µ¯¯´ÄĽ³¿º·±³¹¸º¸º®¿³´¸¯¿Á¸¬½º´¦¢³«¨ª³«®²£Â¶¦©··«²»©¦¥¨¯«¢§¥¦¡³¦¥ª©¡ ¥¤¹¨¤§¦¥¡¨©¢¡¡¡ £¬¢£§¤y|
}x
{w~{lurmlsbyuhgigengghdfhj_fbifZf{caRsT[[SLIGIOS@!+j^jLCVU^`KHGEC.:B<F<6KPD8:D357==895?:;4>8@L=>93)8><:9*6@3.E4(+,>0-N?.+-7-1195,&.5-80576`tB3CDh[KWGU`hB378bM'2¤¤¥¦¤µ¨ªº·¨¬ÃÀ·¯¬¡µ®§®¯·ÁÀ½²Á·±¯²¶µ¸·µ¬ª¼´¯²±½À·®¼¼±¥¶¬¦¦µ©«¯¡ Ĭª§±´«¬´º¨ª«±¥ª¨¥¦®£¤ª¡¢ §¶¦¯ª®¡¡¡ ¦¢ ¦®£§ x
w{~{r~}gypkjlguskbgdbtbdefeijcgoY^X]mdaMhW[`VIGHKLRX>9`liGBUS\[IHFEA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A<-5B37=+*,0A*JK./*+3722(57$+7.72685\yN2>HiZLZJVbfA:3AdG%5¤ ® ¥´²£²¾·¡±Å»¹°±£¶¬«®©¹¾½¼À²¯¯®¶¯³¹²§«¹±¯®³¶»¶°¹¾¬¥µ« ¡±¥«¯¥Ä¡³¥¯²¯·µ¯¬®¢§ª¥¨¦ ¤£©°¦¹§¢¡¤¥¡¨©§§{t
|
ofynhkjgqrk\hcar`dgjnlfjgdl\lmvqaTbhceZIFLMOXQPUaeT@VSYUFGFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24;6#3*)6.55465Z|]1:Kj[M[KXdc@A1IdB'4¢±¡©²°¹À¶ ´Á»½¹±¦¶°©®¥·¹¸¹»¯««·ª´¹¥²µ±¯©±·¶±³¶»§©¶©ª£ªªÂ¯¥¯±¶µ¬¬±¯ª¢¤¬¨§¤©£¥ £«ª©º¦¤ ¢k¢q¤v«¨¡x
mi~wrl}o]d`gkuwfhvifX]itnNPjcfqf^dfnli^]^
hOKD8ETg^JHPPUUKHS`oteE[QUPFGFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,,08>G701.*.*/668,#1'214:276Xl15Ok[N\K[fb>G1Ob<+/¤± ª«£½Å¯©·Â¸½¼§¶±¦«¤¸´³´±¹®ª§¬´¥°µ¢§¸¶µ¨§¬¶³®´®³¢©´«¢¥§¨®½¨§°´¸®¤¨®ª«¦¢¡¨§¡¦¦§§ ¨ª£´¯£¢£¤¡¡¡¥§¬rx uif~sy o~|¡ {tvlmied{mrbTmcmiqXipnW]i[kj[pmyriZ^FN>F^MERVVQPRWTg^LYKRRPEGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82*/1<I9/01.*/(-4583%&2115>1<8Xt15Rk[N\L[g_=K1U`7/(¦¬«ª¨ª¿Ã¯²¹¼·À¿ª¤·±ª¬¦³µ®¯³¶«©¥±¥µ³¬µ¶´¦§¨³±²¨®ª¡³© ¤¤¢¤°·¥¦§¶½¦¬§©ª¬§¦¢ ¨¤¦£¥¥©¢£¦¦¡¶¤£ £®©£±¤®yÔ¨ÀÆxw±¥·dÀ¿yy|Êq¼Å{r¶§º{l±«°yhlX±®oei¼¼nhzmpØ~Skb¶²~qu¡ªWOXaOVNFT[XQPS\W[P@\EQNDFI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww11Tk\O[M^g\>L1Z\41!¦§ª¥²©±Â½²µ¿µ¸¿Â«¦´©¨¯´ª¯¶´¨¨¦¶¥¨¹¯²²¶ª¥¤§²¯®±¦«§¤²¤¢¡¡ ±®£ ´º¢ª¨¡®¥¢¢ª ¨¡¨§§¢§£ °££
°kjª~g
eq§q®¡¤~wº|k¡v±_j´[¥e`fzfixj©e¾rg¦v±j|±xucmm§n\ EigEu`}f{£¦Y_«ixzj¨8J¯[WTmcZLOX_\WV;NOWV/ITSJCEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:6/'$203B/=;Uv2-Vj\OYL_gY:M5^Y31¢¬§¥£¤ª±·´½¾°·Å²¸ºÃ§©°¬¯©©±¯¤±º°¤¥¯³£©¹©³²°£¥ ª°¬¯¦¨£¢±£¯¨¢´³¡«¡ £ª¤¡¡§¤£¡ ¬¦¦ ¡µµx
©µw³·«~k¦z
w«gj±[¬{tpx
°vwqkjl|O¥XHcc~ch¥_yquR^P©mcq}a/R¢n[Tkg`LK\cX\ZB>°xWXA#MhFCDA@A19>88:84;:9<9:A:E::;6:CB8=?KNH:5:AFBAAD<FD;0201;F,0.840,.(/2,>831/2-D1<<S}n3+Xj\OXM_fW7J8aU50 ³¦¦¢®©¨³¬ª»¶Â°¼Â¸·Â«¬¯®§®³ª¢¯¼«¢§µ£«¶¥¥²³¨£¡§ª²¨°¨¦ ° ¯£¤¨µ®¡©©¨ª ¦©£ £¥££«¥¢ Õ¹q°ÂÆ|Ö»|§¤z¢¥z¬yV¯{~j¹Z¹w}¦|zªy{±nt»
nP¯§ÅQ zc`ªbsrl_Sµ´È
|c¤3Bu]PjhdP@XfZdaJHMkJZSOYfZCC?E?0<<59;74<;8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DB.00483+-(.323971#%5*>3==Qwj6*Yi[J[P_fT7G:aP72%¢±¨©¥³ª¥´¨¤¼·Á±ºÀ²¶µ½´¶¨²±£±³¦ ¯¶©¨º®£°²¡²´±¡¤§©±©´©¥¬¢¬©°¨£¬¢¨¡§¢¢¡£¡¢¢§ ¦¡§ ²nhµq«p¦r´ts¶{¦¢~¤~°uÒÑu[®|
¤oª¦k
}}{±sx³et
nfRÉZÂ\yb__vsb^YÊo¿uMKµSUÆdTQjcfXAOj_liPUFI8=WR[VYIC?J<2?;5=<56>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>II:1746@>/.24252-).26,742&60;5:=Prh9'Wi\ANT_eP5G=aM62.¢¥°¥ª»§µ¥§¶»¼²»¿¸·µ»»´¦µ´¢²²£ ¬°¥§º®¤²±´¸ª ¥¡ª¤²¨¬ª¥©£ª¡§«°¥¢¬¦¡¥§ §§¢£®¡¢¥¢
¬{w¨v£©o§£¢~®
³\r³R®}¤q×}w~w¯w´ael[°WKuyf`^vwgj]¯wxl5yÈ®²_BTo]g`EPl`qmVUM.ebhSYP;BD@L:5?91><16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/03333.2..18*.32%!03767=Pke>&Vg\@=V_cN6GC`I:77 ¸±³Á¨²§ª²º¸´¹¾¹¸³¶¾¶¦¸´ µ ©¬ §¶¬¨±²«´¤© ¨¢µ§¦ª¤¥¢£¦§¯¥¡©¢¢©¦¡¦©¤¡ ¡¡ ¦©}}¥y¡ªp¦¡¢£ª{yo±Z¨ ytØvt§¤|{²^d }m\«\[hgªcr{jq]«Z kneOJC¡\ZMt]bfMZa_rt_JU5JXHE=HFAM35A8.;>05A78@<6=<F?:<6?=B7.HVJE@H6KIN@IK@EN::@4.;>002154+*05/7,&21($$6671<PeeA&Uf[?1T_bL7FI_C1=7¢¿¬´Â®«¨¦´°¸±¶¿¹º³±¸¼ª»µ ±¥¦§§ª±©°ª¶ª¯¡¡ ¦¤¤º¢£«¡£ ©°¯¦§¦¤¨¬¨©¨ ¤£¡¡¡ ¡«®nr´t©w¦s´yt´¥£¤u¸o{¢kk¶Z¡ei ¢§mr´t²jku³af¢nk\`N¡|Rs£ly~np\¯V<wfTon.[§ObRkeblZb\`p|cSYQ>>mo2BB@?M:!7@6.;@37C58??3;<CDBJFMIF62JTKEBJ6IJP?HOCFP=<E50;;010/75,+,326/#00,,289/9N`eD'UdY>/U^aL5FM^91A8¥»¢²À®««§·©¸¯µÁµ½²°º¸«Á¶ª«¡§¤¢««§¶£³¨®ª¡¨ ¥«¹£¥£¡«¶¯§¬©¦¥£«²¤ ¨«°¡¢¢ ¡©ªÓ»t±ÄÃ}Õ¸y§y¢¶u}wv²`ºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¢~t«}¾ns¼t²uxmqm¤t½]w}[ay¼jZV[iy^iadfbmyoY[YCA@r?CF+5H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-6@9§¢¼¢±Â°©ª¬±¨¹¯·Å²¼³¯¼°®Á²¦£¤¡ª¥ª²¤µ§¤ ª¦¬¹£®¡¦ £¯¹°«£§§¥¤ ¨«©¤²¢¤§¢¡¤° ©
¶¸xµwnlnsoysÁ»¼z²¨pt¹|{|¤»¹½uy³£uvut°ufi¶trqw¶^y}gymyb¬pt
X[§jDdYTf_c]cQffqmuBMPMD;ZL?J3<0 8>;.3=A99?=;<C6BSYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7>7070/9:.,/-*8/%&2(4$(>7/7KT_G'SbW8*O]]=+;VV'=:<¦¡¡¿¦³Â´«ª¨«ª»¯±Æ°¶´¯¸§µ¹®«¤¢§ ¬¤ª¦µ¨¨ £¬¥¾§¡ª¢¡¨¢²µ¶¤¤¢¦¥«©¥¦¢©§¦£¨¡¬¢°©§¢k~i¨ys~uze{¾¿Àºnq
_rjZ]adk`cmvbke^_cqhs|fj~qty~}b[xthP\n|{jXlyrIJo
pNsMEW\faL[Wfc^OZmvjrRODEM<HI<M?2,2A?8/5?C<9;@;=C>RVVWYZ[[\]`aaa`\UG5DFUEJOHFPIIH;8=51:.1;:.0-76=5&"/*2,%;8-7IR_I'S_V4)P^L(3>[O'?2>¨¨¡Á¤´º¶£¬¦®§¨µ²¬È±´¶¤¾±³§¡¤ª£¬§®¤¥µª¤¢¦©¿¨©¥ ¥©¨°²¿¬§§¢ª¨¤¬££§¬¢ª¢®¦ ±¥¢¨£¥§£hn}qv´©
¡ z¤
li{}urxyvu{jstudw}vkpzm`c[ogLXYej_WYpzonfSOFR9OZNRO(+;JB635=@A9:C><ENSSTVWXZZ\]`bba_^^[TKCSGKNDGPLOI<:;489,2;810)6IRO8")+/2#4;*7FO[J'R^T10T^:+=8]K,<-@² ³¢¿¢¤±±· ©¦³§¥°µªÉ¬®²¦µ¦À¨´¡¥¦¥ «§¬££·¬ ª¦Á¬¤¢£¨¨§²Ã°«ª©«¡¡¢¥¯¥¡¤¨«¦¡°¡¢§¡£¤¡{©¨
{
£~e¡³®w{}wyzogykuyrisyuktcxf_hdcdfjXk{pjk\SLPD_UF@?>,4@F;45;>A;<?>>HNNOPSTVVXZ\_aca_]]]^]XVJKLBIOMRJ;<:786/3964.(&$-1..)+*7%+<(6CMLD/T\Q05M[17E4\G5<,@´ ¹¯¾¬«±² ª¦²¢¬³°Æ±¬¤³¯¼¤´ §¢¡¨¦©¦¤¥³µ¯¦®¾ ¬£¡©
©¬¢´Ç³©¤ª§© ¥« ª®¨¤£«¡¬ ¥°¤¨¥©f|e~cxlhjz£«kd~g
eeihz¡kh¢wkj¢slnzyXe]
^lv[hswwnxxsmysw{i
X]jsd]sik|qmc]QNWIdX@J3=F7?FD71<=?AC;;DGHHILNORRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%.++'6*$;'/AI[I.6ZO6)EY/DO1YB;?.=¥º¼¹¯«³°«¥¨®°§®°½²«¨¥°° ¤¢§¬¬£¦¨©³®£¢¯¦¶¹¥®£¡ ¦{¥¬¢¨´Ã¸¥¢§¯££¤ª¨¡ ª¯©©£ª§¦§ ¬¡¥±¤«¡¥«~¾r´r
hw¹Ä¸q¡£{¦sª|ËÀÀ»q£|À½ÁÀ{z¿}k¥²ooÊzwvyyq{px
ylvbe^xd_eb^thmdbXLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA@?=6468266*&%#)*&.+*)109*#>H[L*#CP/#F[3PY/UAB;/8£¸Ã´°¯¿©©£¯©°¯¦²¶°«¦§¥±« «¢ ª§¢«¢¥©¥¥´¤£¦®¬¸´§¯£¥ ¡ ¦«¤«¿À±¡©®©¢£¤ª£ ¡¬®§«¦£¡¥¤¤©¤©ª«¢¦¢¤Îyz¥z_]¨ ¡|§t«¯^d©z¨
t³c« ³j®s|¸aY£Ínu{Û{q~ue{vvl}n}
~l_pjof`_xd\qhjcf`RTSW^JOC5AHED8>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5478164('$!',&&/(&+360$7;SL+,-J0';[:L-!P@F4.1ÂÀÀµ´°·£ª©´«¦²¬¤¬¦°ª¡§¦¢¯¡¨§£¦¡°¬¦®°«¨¬ ¥¥¨£®¤«°¨¿Æ³¨©±®¢¡ªª¡®¦©¨¦¦£ ª¬³¥¢ªª¤§§¢±¢§¡ p
u¨q°|r¬} ¥w«}r~«v{|~ª¡~«z zVÄzoÁ}mupmfweoawnrnldmsuo`fmd_ohjnfcWS\`ZRRC9II@C<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;92478452&# 1' 1''45-&7=WJ-<(=1)3V@F!G;C1-+¯ÔÆDz´££¢¢®¶¯©±§©«¨®««¦¢££¦«¢¦ ¨¨¢°¬¨¨¯¬¨§©£¢¡§£®¬£¬µ©¹Í²¦®¬¢®¬¡©°§©©ª¨£¡«¯±¢¨¬¯¦¦«ª«²¤¤¦
¤j¤uz©uz²q¥p¤_`R«®u®§z
{f£¤£}©®^|¨U¢z£{ïÅs¯´³¹qb©¯Âthlnlxxwnkfddqpf{ic\V_iXXTLLQLCCAB;CA@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ('"+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÂÉÕÖÀ¡«¨¡¯¢°µ°¯©£¨§ª««©¤¦¥¦§¦¤¬¢«¡¤¯¢ª¤¶°® ©¦£¢¨ ¦°¦£¨±¬¶È²µ©¬ª¢ ¥´¡¦ªª¢ª¨¡¡©¢³¢ª³²¢ª¨°°·¥¤¨|ªlu«y|°n¤Ò·´¸É²^_©¤ zxªÉs£¨©~ÆÆwe¡¥s}¯^oµc±uK£m§Gd{o}nyt|zm[ejrqfj^aXcm\^YILLKEDBB=A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75785/)(%&%$&),5FNPPMFLJVF*L0/>-4NTQ;<F2,$¨¤Áƹ©³®¬¥¢²¹¬ª¡¦¨¦«¬©¦ ¦¤«£®¬¦¡¬©¥§µ £¨«¶²¬¦ ¦§£ ª¦¡£§©°´Â±²ª¨¥¢¤®¥¡¥¥©®¬§¥«£·¬ ²¹°¯¨´´´¦©¤¡Nxz£|¤¦¸{|y¹ÌÆöw¡~v¤¤¨~°
¬}a¥l£p
}r¬`¤rq`¼}RUu£{|ryr}p\lnwrjoZc_hnbd]LLQSAHGFI99K>B108856877-*5==?BDGILNPTWYYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOTF<E2:P[T6?G,- ©¬¤«¹«¯ ¡¬³´¦¡¦¯®®©¦¥¥£§¡²®¢©§² ¨¤¢µ£¤¢ªµ¹¤££¡²¦¥¡¢®¬¤¨¢µ±Ã±ªª§£¤¥¥£§¡¬¤¥®¥»¬¡··®µ³¹²´¨±¢¥ÑµÃ·y
¦x¢w
¥q«
´nri£|s®¥¢¦mp²\¥szl{~n©a¢qqbs²¸hw¤}v{xlhwixsnu]ddmmeh`JZWX<HF?T3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^``]Z[ZXURRQF:2230/++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH#)%r®¿¿¼»µ¨¤¶¡¢£©§®©«¥¡¦¡ µ§¢©§°£«£¤¤ª´´¤¦©® ¦¤§´¡ª£µ«Â¯©«©¢¢ ¦£¦£¥©¦¬¡¤¬¦½¬¾°£°´»¬µ¨ª³¥©{¨}|°w¤¥m²o {¡¨¬
®
¨¡¢
{~«ªx y¯]£|¦§d|tk®]¥kq
]`[ m¥xy~jl}b}tmz`gepngghBY_[=JS2T8BBC7$$3+''3, /667436:@CFIKMNQSSSVZ]_a`aaa^][ZWSPONI7052.*,ATVVVTTUUUUTTUTSSVWWXVUVQHFIJ#((¼©ÆöÁ´ ®¸¥£¤£ ¯®©£¹ ¢« ¯ª ª©¥®°¬¦ ¨¢¡¥¡¥ ¨¥¶¨¿®¤©£¦¤££§ªª¢£©¨¾¤Ã¬«£¢¬³»¬°¨¢µ±ª¬v¯~
}ºd°e}¡§°
¦£¡¢
[lj³`{{²lgn±[}´[¤kÈ¢e{¼YvµZ²}R¯z¬X¡m§yx|cs|axs|aifpmfeeOUc\AT^=H(>9=4!!,$2. *1/04579:<ACFHJLNPPRTWZ^```ab^_\[XUPNJGC553./@UYXWXWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³±·½»´Á³£¦¥¶© ³±¨¢´ ³¨ª«°«®¨¢¯¬©§£¨¯©¡¥¤£¥£©²¨¼¯¥¨|¡ ¨§¬¥¤¤¢¤©» Ƨ¥©¢¬µ·®¯¨ ½¯®®©£®¤¸Ãº§¬¯§¥«~սªb£¿½|~£×º·µ
½¾j£o«nz²±Çk«°½¬xw¢¾»t¥wyb|zcgx{`kekjaPb[Si\@T`BL)<:5/$%2 $(0496678;>ADFGJKMNNQTW]a\__a^`[\YTQMHC><A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ»´´±¿º²½³¢®¦¥³¦¥¿©¶°§¡¿¦¦±±¹¨®¥§¯¬®¦£¬¢¥ª £¦§¡¨¢ ¬¬©¸§£{¦¨¨§©¦¡¢«»©Å£ ¯£«´µ«±«¢¼©°°tvª¤¶
epg¬mow¤ u°pr¨£®¤rlmlexnmqzipifqhi
gpd]cioY]g~x¦`brofd¡{tewgjx~xdlcflbKeWJkY:PdDP'J:+# ",)-2.5:457:<?ABDEHKLMOQSV\WZ\`_a]][TPLHD=:AB7MXYZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨´ª»º²³ª©¢®¤³ª½±Ãǽ´©¿«¬£ ¦«º£¤¬¥ª
¥ª¢¤¤ ¥§©£ª ¥¦§¯¹ª«{¦¦§¡°¦¢¬¹ °Â¨¤³¦¬±²«¯©º¥°¹¡©¥¶¢©ª³£¬¡´£¡¡¢¡¤¡«§¤~gtvtq§m|pgvnwu|yikddocU`X@iZGb`NX+E=+&!640/!%2(*799469;>?ABDFJKKMPPQWUVY^_ac]^TQJEC>9=@ASX[\YWXXXXXYXXZZ[\^__`^^^__```_YY`¥©©¥¶¸®®¢°¥ ¶±ªÄ»Ä¹·©¡¥¥°¨£¶§©µ¦§¬£§¬¤¢¨£¨©§¡¤§¡´¹§ª{¡¤§µ£¦¬·¨¯Â®£·§°¯±®ª«µ»¢±¾¦¤¦µ¢¦©£¬°¡¤²ª±¥¡¤ª¬¢ª
~fuvytj}
xqrx~q{~ind_pi`[_YmbP`dOY9GFE=2<=8/*&+)&&406658:==?AACHJGJKLMSSSUZ``i`eVPJACB;9EMV[^^[Z\[[[\]]_^]^_`aabaaa`bbbdb\[c¤§£±´¬®£©§ ¨µª£²ºª«¡¢z¢°¤¥±©¸¦£©¢®¤¨ ¡®ª¨¨¨¸¶£¥y¡§·£¯µ¢°¯t¤¾£² x{¡¬³½w®¥ ª~d\bv¤~n³£¨¯«¤e tzq©l£¨e¥
wkvq|ai[vghqz£dwvhny~jpe_vokkg\ecaaoRZ=MMNRF=@TB91/&4:306678<;>@ABFHBGFIKLTUUY]`hggXQI<DG<9VR[`ab`^`_`aa_\]___aabcdabaaedchd^]f¦£¡°±¬«©¥©¤§¥ª´®±¥©¦ªs¯¨«§¸ ¤~¬¤¨¢
t®¦¨£¹³§ uv¥²µ´½§¡~§¢{¤°¹§
±©¯¢y¬¢¨«©w¥z§{²zcynqzqt
xht t{}ijxzppgdwmilj\diier[\HTLQ@E5-YTT6)!09=>643568;:=>>?DI@IEJKGRXZX[aahfYQH9DK<>bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah£¦®®«¨¬ ¨°§§ª¥Å¼¯ ¥¨´«¦¢ ¾¡|
¬£¡¡¨¢£¹±§
pu£¬´´®Ê«¯·
°²°
©§|¨r{w¦h¤y´§©Â«¡q¥}
²¡} |
ms{r}
uÅf©¢jogwt{vghupghk^bnlflXfF\QL2E46Mac7&4<DGD:63658;8>==>BL?NIJKCPZ]\Wb^jl\QE=KM@JdX]cghgbbbbcc`_babcccdiicbbbecafcbbi¢°¨©¨¥« ¤¹±ª«§¢¤ª¢¤©¶¢¯ ¦¥½ y«¢
w ¤¢¸¬¥bm ¨~¡§ ® ¬±¤«~¢uk«tM«x©©ª«~¡{z§ilg¶~n`cX{dgs}yk]|n_Sq
\`ly`Ye~q§ªk£nr¥pgdlZlzeY_~aWPovemtqjjn^jolkhWgN]XE9@4GD^k4+ICQMN=84859;6@;;>BO>QRLMBJ[]_W^_bv`ME:MOMTb\[fgiibbdaddbab`bdcabjkdbddgdbgeach ¹ ª£¦¬¡¶¼«¯¢ ¥««´¢§ ¦´u¦
¬£©¥°¦¢in ¡¥£¡ w§¢¨«¯¥z}}¢pr{ym©|¢sv¦f~w¤^{}s¢n·´ºs¶¨dƸ{p¶q¤ct¬«`}j³~n}q£ls¤s}£^³o{³tr[²ibosuqhnXkkrrd[h]bLD=D5QAZq2<RF_JS=<395::6D;;@IP?TMNQ@E_^[YX``|dIC8LWUVbaZffkkbbeadc`ab`dd_`cknccddhdbgfchh£¹« ¥¸¶® ¡¢£¤«±¬« ¤«x
p¡}¨ ¢¨§¤~k{~} w¢ r¢©§©¬®}z y£xs}§£d¡}lhn{§}rgsªsªg]
vhªj¸f\©pa^§vvhumj¦\¨~w»j}©Z]³g\nqxwki[piwxa_fWbBPEO7VBRn4JZY^NZD@151;;7H?:CGU?XRX]>Db]V`Qac}jEB9N[^YdfXfgmmbbe_aa__``ec^bdoq_deekdcihgkiª¶¨c¬º²°¬¦§¬°§«¢¡ £iq{z£¨¢iy{~¡ ¢rh p© ¤©¢©}°¤¢¸v£³¢£xz«~¢r¡}
°µ}k¡x~´££«¨{|~sªZ]o{xbL{{
dzBMY¢jr|nvy±³~¦t~mq|ori£]vHec`sp}}nf_khu{bc`Q^W\TV@YEQgERV\aX_ID=B8@A:IE8LEXAVQZVDFa\Z`K`m}rEC<U^bZejVhhmobff^a`\]^`hb_edvl^egfldelhhki±®S_¡§´º³³©¢©§ «£ §¡w
ny
}r r¨|l
q¡x
{¢£®}µ{¦z©¢~§hwm~s sq|
o®}£§¤p^©hu£co¥aÓ|zxrsc¢
~¢r¢uk³`sª²§¼wm¿¦ª´^o~ros¢r^¤gt¦`h¦lÓznwykyvrl©¥g_dypkgfcmuwf_aR[fPQaHWIT_WS[dj[eQFCKLJKBJE8P@PMXSXORQ`eeiRdxywJFEc]eZhjSihjocjf`c_\]]_hbahe|d^dgdkdjlfhlh°¬T\K~©¯²µ°³£¦ £¤§¨
{p}h}wpl|£ª
ywnw
y¢£ ³¡¢¶z¬§¤®¥p©}¤¢q¢®¤¯¢vµ¶µÉ¢ta©myu¡w }oLf£ps¥{ytbl~ lrd`rtk{j´µ´Æ¦s~zj«tmswiytqPD}³^jujxfkgbttpmV]SYhORhIULXRV\gknUgWMJAJMJHJNAQJPdcimetrs~x{nu{{TQOm^h[kiRjhilgmfce_\\\_ibdhk{_]dgcjfnmeile¢¯§
f?¡²¬¯¯µ¢¢§¢¡£¤¦¥yjye~yui
z¥©z}yp y¥§gnxl¢d|q¥xph§|¥z rv¹n¢b}¢nsj«ku mo¦`iiu¢}_
uobh¡eiupdgns¢Z_[d¡n]p{trd¥nx¢df§hrn¡oRn ^d§T]TmmrjqmphkxskoQXVVfYSmIXO\HXhhsjYkVQREV\LXRaUhj^wuz|p||r{svv^QsagbqgPkhhklohdg_]]]`jbiivu]\chcjirlfkmc¥¦zetm§®¥ª±±¦ª¤¡¡¡¡{qh|st}|e|¦¢«
}si¥}
ª¦¦x~¥²¯¥yz©t¦n¥¢¼n}¥¯¡}¦{r¨ g~o¬cw¨l©¢vw«¦k°kv³©lnnb«ªw§w}
¤ iu¬f¶sv¾¤Y¦«auqso{tqbj~nhlSVZVa`\jL\R]I]lmv`[qY[`Zgsenoqcqt`wz~yryr~{{vbyddnsdRlggomrifia_^\ajbllzo\\biamiwmglnb¦ª¤ªª¨§®£ª£¤¨
t
zo}surn}{
¥¥¥uol¨ª£ t~y¯¤qy
{r§q}}zx{~~w ¡{~k
[yysypin~qtq
e_xvtuo{onn_wixfªt}jou|umlfsw{w[jXyhnwrqowxo]lmigVZ_W\dkdUaU^Q_owykjwejjju|pqtsaoubs{xuzuy
}{mldyn^Wnghukxjiid\`ZcielqunZ[bkdkkymhloaº©§¡¢¦¤¤«¢ ª ¦¨~r|}~ztrp{}
x~£{§¡
wqª
¨ «~¨§xq{p©p}qjo|hn] sqtkvtYrn}~i]icz
_ix{|viykbqsw_r¨gnwowndfcyzZ\ifnv[zxwtmsrf\mkkbZY]YXkq[^`Y^]fr}ztotcjji{|rzwtdmthl{~uz|{yyp{}s~zrhT\rilvpugkgd]aYjhkjqrmW[enlgryohjm`«±¡£¡©£¡}«¡¤{|r}v
ror~z¦ xz¬¡«¢¢££ª¢¨§¡|y
¨~~±¥±¦ k|vwe|
w|{u£~vqt
x§{
uk{yirh`tp}zwvovs]]ogn__Z[\RgqUc[[alht{|rnpdjih{mx~phoplf{rw}{m|zx|~zxNdvjsnq{ekebb`[sfpfrqlU]ltmhxzpgikeº¢¡¤ {©
|x{mxr}mk~z~}©q
}z©
¦ ¢¦ ¦x}
¦||
ª ªpxqta~u~
nyvu£
u}}ss|{y
¨u{nj}{mhklg^y~g|{vtuuzw\`p}mu`cZ[^QfmSeZ]akiuz~pkmckigkrkjsnxnynv}
vr~{z|{`i{kuhiejc`i[cuhobumkTbqyeoyzrejmm¸¡¤{w¥¤xy
|l{xr||kh}|~|¦p ¡
|§v£ ¡¢¢¤z
¡~|¤ ¦~~vtpv`}r|q~
hxrys}}rz|
{{¦|
tydqz~xypljf^}sh|uus|sj^`tvpwdcX]^RjhTdX^ahjvxqfkclhejm}gmpj}w
zkr}tv|z}jrntibilb_qUtomn`xhlWjtvbuz{qbkoy³¥¥ |u£¡x{~~p~ztu}wgc}x}y}o¥¦v¡¡z¤{x~s¢ ¢|wr~n{d|pk
fvo}~y}}|ryz
£wvzt_ww|s}wfkc`~ijvstu}q|ccasnurmaY_]ZkdRbW_`iluypcjclfh|khthloh|xmqt|~z~|muttmeljacuVipn`xglajvpfy{yq_ql
®§¨
}v¨yx{}|{xsxys}d^}~
t}~~£ ~q{¦ t§um{o¢|zrzkul{~n
wo~~esj}
tz~vx~}¥y
t}rtl`ztyp|oanbd{anovswwssav`oluno][^]]j]O]Wbahmszk_jejchwmflhilg|zwos}tz}z}}ryyxnlkh_jrchqoevgmlazhk|{xpawmª¡¤©}v¬|v}{|{vwotszo
}~|a\~szz¤||£
n¢¡p
gz
p¡}{
tsvkqnu|tnqt||eqmz~~
utzo}
ª{}~
w}pnbgwstnzb^pajt^pjzxxlrpey]mlsmsXZ]_ajZOWWdcfqqe]ihgbgqndigeigzwuos|u
x
|w
zw{{ryjj_qiskqnmqgoke{bnyvpkvw£¢¨¡§t© s{v
wxrs{
kroymvnq[Y~vu w~
n¡l¥
g~w~~|}ovplmop{ispwuygsov}
{zwuq|{
¤|vwxmi\qrqooxZ^paoj^oi|zpmmjmw`pokqmYX`aamWQSYefbupb]kmdcfkm`ff_gktqrptyvywv
{{vjqc}c
|opltjhnlvw_q~y{tus~¥§
~t
zrwtpr
squlnlumw}mnUQ«yvry wz¤
}s
ih¡qw{{||kwjnklmzby~vzw|zhumu{rz
qx{{~}}x}wphkw^womkqrU^obqa_mnypgpfftuhqlawe]Ve``rSPN[ed\xp|^\iqbbefi_gd[go~okqs}v}
uvy{xs
~|yxfqk`~ookz`imtt_t|xwss
|y¡±¥~vtvspo
spqojiumn}|musRNᐙ|otuv{r
¡
}xzzwim¤
cpz|z
|m|esoklzy\y{}~{ziukt}lp~{}wxysleo~kitoghsmS^ndpZ_krygkkbgxsoqd_w`aVk_^vOMK`ec\yqt\[eu`aeec`fbXirsmkqv|tyvw~s{r}~vesn}eopkZknyys`vz{vrwwy¯
x~|
twpypnomn~rcdxp|nz|jhlc¤ÁÜ®ï¢skuu¡
np
£~{ux
vwp~¥
^l|}
v
~~k}cxtjoxsXz
z
~zftjlwo
{utxvsqftxasmoahufR`pgkU^mtzarc`i}qrn[cracWnZ\wMMLcea]vsm[\dx^`df_cc^Yirknkrw}swxx|q}}{tshuqym{ntpWpyvyqdvxivr§£|pxy|{rwpsjokil|t^`xv{ptzg`e|ëÚµÉÃÜslsvip
|zwxrvq£a
h}}
q~rwgvritwlZ}
}vbum~nmz
}~orzulpjqw^shn\iu_RdqhfS_owu`o`]hqrjWgiciXmW[uLJLef^ars
h[\ey^^dgzad_]Yknenjtw~sr~{vzt
|wv
{vlwvyxunxz}Xy
qogxvdv
q¡¢sorv}{xqtnodr~hflww[_x{zqqiagaÕ¶§xnqw{qj{h{{~
zu{{qux af}~m|tkmwutwvkc|
~p`tr}}zqg{
|
opytmnijx|agiiXkuZRiribPbrymbe^Zjnsb\g_em_nTZoNHNfd\fnrkZ[cs_\clwde]]Zllbmjsvqo|}txx
|uy|vpxy{om{v^tmizssgr}r uu~mv}|v~vqoljat|gbiuyZ`w{ymq~echhW_rs¼Ävq~rrj{|
|{uvw}ru
rv
|f}~r}f~|y}i}vfoyxswslk
x
k_sy{~|~siz
y}~nm{}vsngf{ub[pbWnqSSnshaNftyf`^]YoosYeb]jn`pOYkQDSg`Zjnm|nY[^mcZbowdg\]`kicljsvpm|tuz|
v~xtryy~oo{qixz~ml{ukjxtl
n}vjx~yozsplid`szh_eqzZ`r|ygqzaee±²wKbZ¥ÚÐq{x}
nk
zy|xwoqu~zjy
¥owy
p{|nwhxr|e}ucpsiypou|vx
zj\rs~{rnr
szxno~vydgi{p^XvZXplNWqsg`Klvua^\ZYt}soWg]fjr`oNWhR?Yf^Zpkhzq[ZYkeZcqy_h\^elhekiqwol~uo{v
qq{|zyujzko~t}or{zpoxg¡
fogy}~|ixrkkf_`oym_box\dkzaqv_eeÔê½2:>qx
v~ml
u|
|xnvwn
lu{tfy§~nuw
z{w~krh~xm||wayrdqh~nuqu
su~so\nuy{}y{rm
sztmkwtt\hgvoWV{RYpdLZrre[Iqxo\[[Y]t~thYb[gfnciMWfQ=^e\]ue_toZYTodYdqyZh]_fmgikipw}mi~yn||zupnw}{{h{}js{r{sw~zx}|ll}kh~z~~~}kuqghb[bgso_aks`hpzbst^cd n\5Z¯µti|u
svpl
uyx|z~rgu~~oq~hvynfy¤~nv~
|pz}{h~lj{zjzwr`vrdrgvmu{|owz|umYpwuxv{ytos~zonjntn]gdrpPZzM[o\O\rodUKsxiWYYZaqt`]]`gdhifNZhM@`c[`va\tlXWStaZdorWj^bhkgmlhpw|lh||p~{zwq{oqw{j~{mwxvw|x~~zm£zuxklx}z~prqcf^Yf_oo_`gpfjotato[adjv{¿¦¤È¸q
r|xsqro{tttwyypcwzirvgwucj|}st
zz{kxy~tgzhkysizv}h`w~kjth{iv~z~~p|v|tbVx~ss
}qxyqqz~}vviqimqo]gaqmIduK]mUTZsnbQOtxaRXX]aos[a]heedkdQ[pICc`[cp^\vgUVUw^[enhVk^aigennhpwzmiy}r{~y|v}pwrmw~p{wyztxzuo~}
zw
{gt
y~{
vgpn_d\XeYmra``plkhnatiY^dnw©ÚªÇ²qwou{ztst~wpqmtxuk`zyfqpgvn[m|y~y|nw
u
{ltv~mgvdm{umiwv|abx
zhuub}{gu{tvq{}mZWupv
zmtzlv
|~y|t~shtenlsZi^tdGmmKZaWVVwmbPRtvXPVX^aqo\`cmdd^ocU^rFBe_]fh][zbQU\u[ZgkaVj_`nefkqhpvxtku~vx~w{s}ortqu~
{wx{|
x|}~{~svy zvtx^}
xt
wzbnm\b[[aVisc`[gnofqaqfW]cl|Êι¡jmmlqq|~{yxsyuu{jlvcuwof^}zerkjqcXmz
sx}ors{y}ppo|fhqbmxqjkqx}|z]eywivxfwgt}rjo~yn}]Ysnu|opqwixw~s{u}{sgsankrXj^v[GmjLVT^SU{kaOTurPQTW^bt
i]`ljfcYnaYdpG@g\`f^]V{^OUdpZ[jh]Wh`^rfkgqgpswxntzx~yur
pp{xvuz
z|t~}~~}|xvxx|muxd
so
ztcnjY_[\]Tgrd`XdqrfsbkeW[`jw¾®{ ¶nbshs{qy{~~wwrvo{vejo`usjb^xyfqhkkZVow£qryvot
}xtqnhx_jl_mvjgjkywzvZg}|xer~nteu
pgkzunub]q}lu}|fv}nqivys~m{|{yqflbm}lnWj_vUJijNQNhMX{haNUvkLQTU_fuf^aqhgbWi]\lhJDjYadWYUyYMVmjY]kd\Yec^tfldqgrpuxp
v~w|
}usnsy{zsr
y~u~|{~{v{wwziv}{lqp
~pflgX][\[Sdpd^WbruiupeebW\\hporsddx~itusrwyvsunkzqbgkgtnf]_}p{imygjdUWro¦|{vt}s}{o}|x}}uoqlgt\lg^ltdgeizo{rYgvuhpxvbw
|ojm{qgsfanzgsx|~bwwjlrv{q{zt~gywodfbn
|lkViboRJhjOKNoG^{faMUtcJNSWajv~e]gsif`VcWcp]LKjXcaUTUsVLXudZ^k`\Zce_vgmbpisorutww
z}t~
nst|ztq
zvt|
}~{~v{£¥yku|zuznsy}unjheV][ZZSbmd[Xas{ihmi`bW_[jjkpgk`hyxjstsmz|uunzhjyj_enhvgeXbwj~{ojpgf]UXog¨wz|yvqptwzyu
vjquggn[lc]mr_gajxh{m[nrtjo~zwaw
x
sroyrcqi\qxdrt|yctqhjzurmyxvyd|ywqddcn|}kkUhaeRJlgOGQkEaxgaMSq]JMTZekvze_mqid]V`VnnWKShWe^XNUlTJ\y_[_k]][ce`yhl`oounpxuz}wzzxy~rutyvt}|ks{
~}{v«zkryutnn|sjomddX_ZYZTajg[Z^ti^ml\aW\\lert}ii\kvugsvql{}|xurlygixf]eshzwccTepg
wwgij`WVYgc§o~w{qr~hzp{}xr}ndurdgg\ja\oo\g_mudzh]torkr|~uvbt
{xruuapm[rtcqs
|uesmam{pkj{yvsfv{{vqebemr~jlTh]\TKrbPFVaGbwgaKToWJLXXgkuzdenqfdZW]XveTJ\bWgXYIWePHbxZ]_l[^\ac^~ij_ntxmpnvyr|~uuy}tvuyzz}~isz}~
zz|sq{{}eqys|{urn
l{~lzbpobe]eVYYWcfk_]\r
hXpn[^XZ\l{cpwvmbZlssgtuolx~xwnntdite[gufvvy_]Rffjt~bdi\TX^bc¤hxtynp{iyn||vsx|xhdvl`f_^i^\skYe]oobze[w|knnoxysuds~{vpr~sbxd\ppbqr}tgre^nwiehz|unout}trb_fnn}eiTgXWSMw_QJYXHbudaITmSJMZWilq{bllscbZZ[aw\SLd]XiSWHY`MFiuX^`l[[_bb\iganxylojvxm~vsttrwvw|}~~~pw|yxz~ttp¢{zxduxsxuksn~kx|pr^po`gblTZZWhcmf\[qeSrn[ZXX`lvciuji^Ymsplsssi||vonldiqc[krduvs[WSearr]bc]SZ`\cerq
tll{npq{}}rxszzzceuh]bY`gZ^vhWb]ohaw`[{vijrnxsruhq~vsjq}nfwX]lncrsztgo~[`prb`kr~mmusqxkpa\ellzagTfTVQPu[QOXQHctb`FUkPIPZUkkj|emnqb[ZXYlqWRPgWWhSTFY\NHruX_cmcX``a]jcdmyxkpiuy{k}|y|nqnwz}t|tw
utquo¢s{{ewnmznfwpzksvrk^tnagekR][UgalkZ\pdOon]VXUgithbtee]Ymtmoutxj||vsddkna\nmcsxkZTVcdx}}q]c_cTZ`Yccnp
tkh|pftxu}mzuvoz~u^erc[]VacXateU_`mdaq]]~phisqtpuvkm{
qsgo~qsoT\gkfqtwscmvVbrl[_pg~fmw~ssskm`Zdjjw_gTdTUPTmWQVSOGds_aEXiOHWTVmhd|ikwkbW]U[tdSRWiRYfTSHZZPMxvZ_eliYb`^^nafkyunoivvl}{~krgt{u}r|
{ss~vn¥rvwmz`d{pfxrxlmqvgd{lcfghS_^Ug_ln[^mhNim`TVSngtkexdd\Xoslqzwrl{wzykaelm^`ojeqy~gZVX`lx|{p_b^gVX_Wdbkq}xlkyn\wsm{jvtoo{rXim^X\UabWdpcS^ahablZ`~kfksvomwwli
{mqfq}nsncZaiiotts^imSeqeUcoc{drw|wkpmk`Yaght]eVaURNXeRO\OOHdp]cFYiMI_KXmd_xhn}d`U_T]u\TS`gO]aUSJ\YPYtu]_elhXca[^qcgjxqsnhvtzrz~|yntlst
y~|
sstxro~zz}~~}}~~}~~~~~~~}z{|~~}}~}~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~mfggggg}
]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDARÌÚØØØØÜinnnnojfggggfo
}}{{z}~||~}}}~}}~~~~~
g_```_^yS7¤¤¤¤¤¤£r]____aR455552FØêççççëbgggghc_____^j|}z{z|}{|~}}}~}}~~~~
|y{z{|{}}}}|}}}}~~~
~}xxy|}|}}}|}}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{y{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~~xuwyz{{{z{}}}}~~~~}~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~rtx|||{||}}~~~~~~}~~~~xrvy|}|z}|}}~~~~~~~~ssvx}~|y}|}}~~~}~~
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxy}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvttvwuqrqnprpghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkigfgggihgmgjghehgccbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__`c_\_]`]^Z^]YY^ba^^ZY_\XWSNMLKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{yvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSSPMJMNPROMPQQQQRVVQQQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTttuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPPRQPNNONONOOPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKLFDFJKKKHJLLLOMLLNOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtttwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBA@@CCDEACEHKOKIIJHGJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:<>><ED=?EA?@A@DEGGGGBDDEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrrtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@:;><;;<<HL==AA?BC=ADDFBFFDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprttsqrvxy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;::;89:87:<978;;>=;;:8:@@AB?A?CFDBCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtsusqsxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<979::989::78:9:;;8789;:8<;=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsusrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>=;<<>?=<=;:<===<<<<;;:;<>=>??A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquuuusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?BCC@><=?@??=;>=>CE??@=;===<;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVppqssttuyz{{}~~~~~~mLPQNOPNNOPPO><<=>??@>@@???CED?=;<@>:;::97:<9==@=:<;;<;89;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}|~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC??AAABA@=<=;>=:::<:8:88:;=??<;;<;::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~{NIKKLLLEILNM<?<<=>@@AA;BCBC@???@=?@?=>A@=>=?==>CD?;<=>@==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy||}||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABECDA?@@@?=@@<CcD@@@C@@?@@>=<=@EABBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBBC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{||}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@A@>:>=><<G{[>CCE@??Na_J@CEIIIIMMKECFGHEGEEEDDCA?@>>BFJJGEEFFFJNNKJIGGHKLJGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDFHD@><;>@DED@AFBQenpyqEDDDCWu~XGHJLLMOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHIHGFEFFFDFHGEEHHFHGHFQnnpqrvvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJHIGUea~
zTAAUtWILMLMNLJGGGGDGGGGFHFHECDDFEDDHHCCCGJJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrswwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLKKJ^z|~cNl|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD?>?DFHDEGIKIIGHIGIIIJIHFJJJJIJIJJJFILLJJKKfopssuvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKKKKKd~}{
uIIFB??@???<<<>::<AA@><998<<=;>;9;?AB@ACCC@ABEDBCFHIHHHLMLGIJMMNMJJKKJLMSloqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHHIHKKf~}
fBB=88::9878896479;<:8567789787689;;<>@;999==>;;=ADEHJMLLGIHORQPPNLMMOQ]oprtsuxz|{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@CGHKGjT;8656766655763468:876565677778:77789;7689989876:<@GFIFIFEFOSRSSROPPRTepqsttwy{|{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=EBDEf
H676468874578467699766765::;::<898977779:98878588;A=>>BA?AKLOQPQOOOQWkrrttuwz{{{|}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897:A:=CSz>:88;<=>9:;<89;9:;:99;:9===?;;;=:>;9;;<;<;9;<8::;:999<?<=ABDIJMKJKLWorsutvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<:89989999:?>A?Y
l<;>BCEEAAAB>@B@@?=>>@?>?@?@==?B?AA?A?=@@@>?A<><;:;:9;?=;;==AACABCAXqqtttvy{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<=:;;<;=?CB@g
^>DGIKJIFGGDFHGEC@@CECB@BCB?@DHECEDFEAFEFDFFD@B>=@>=?@>???>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>???<@>A@EBN~
WGLLMKNJIKHIJJIECDFGFDCEFDBHIKHGGFHGEKIKIKKJCFCCDBAACBDCCDDCA=;=@hpsttwwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA97<>;<;>@?A>A@DDHCj
PMPMKNKJLIIJHKGEGHHIEEHFFELLMIJGGHIJNMNLLNKHFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?FGG=<@@87<;<=:?@>??BCFELW~
qMQOMLLKLJIHFJJEJHGKJHJGGGKLNLLHHIJMPNPNMOKIGIJHIDIHHFFGGIFCBACUnquvwy{xyzz||}~~~~}~}~~~~~TDAABGHB?8?@8:;8<=;=A=>@BDFGQo
^RRPMNMKJGFCGJGLJGKOLKJJMMLOPNHIKLOQQPQOOJIJJLJLFGHGFGIFEEB@BB\prwxyzyyyzz{|~~~~~}}}}~~~~UECEEGGED;?A;=<9?==@BGF@EGEJQw|WVRRTROLKJEEFKONOWVQPOQSRNSTOMSLPSUWRSRPLKMMMKNGGJFFHJDDEEBDCcquyyzzz{z{zz|~}}~}}}}|}~~UFFGGGGHF>@B=?==B>BBFVMDKLINRz
gVVkaERQQPJ;;QSR`u]UVTVYYSYXRZfPUWZ]RTWQPNRPPPQKLKGHIHEFIIIHIjsvyyzyz{{|z{|}|}~}}}}}}~~~THJIIGGFE??A@EBCFEDELXRLRRPSUz
}al[dU:XXXSP?@VUY\d`VYbr^]W]ZVEQYZ\Y_TYgRUVXTTVSOOMJLJIILMKOMSotvxyxwzzz{z{|}|~~}~}}}~}~~~~~VJJIHGFDDBA?HMIMPKIKPTSRVXVXWw
g;~znpXZ[ZRSRWVTZZuYU}a\X]^WIV]][[_YHYXY\]XXYWRQMPQMMOSQQURassvwwvxyxz{{|}}}~}~}}}~~xy}YNKIIIFBD@A:PQQWXPPOQSTSVWWWYm
n~fYY\YSVTWRQWVcQerXZW_hP`fZ[X\hbGOZig\[\]]WSNSPPQVVVVYZosuwvvtwxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZ[RSQORRQURUSV_ux
}{\PVXTRTRQQLOMKfyZ]TYUV]ZLTZTST^ZXWWWzkXZ\\^SPPPINOWVX[Zdqtvvttvxyy{{||}}~}}}~}}~~~zxwvsu{tk~~kry^\VUSROKFCDAM^lVRSNOQOQVRSRRTcdv
~ymqVIKNNKMKHJDFHEC>ScURQQNKRTQMOYQMNQSUUMQSRPNLLHCIHRSTZ]mrvvussw{z{{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YUQLILIaltPQSNQRQR[RSRQRUUbs{|}{{
u_]KC>CCCCB?DPCC@C>BHGV@INMG]iQHFOFDEFHGHBCHGHJGDBAC@OPMRdtuvustuz|z{{{||}|{~}}}~~||}}vt{mh|gnqfieeb\XSQPURsWe[OONLQSQUYSUQQTROV`klsvz{xyurnstsyx~~kLG>>:;>@??>>kQKaEFHIEB?HMMGMQUJBE?><=<==?=?ACB??<=B>JMFUouuvstvxz|z}{|}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QQZ\Y^IJPQNKLQRQTUUWQQWVPX[b]agmmlokh`nrjmlqu{z}zxz||xwxdB@@A=:BCAACB\]O{NOONKLMOOPLKLWNIG@B<977599=;;;8989?;AG>\tuuvuvwy|||}||}}~~|~}}}~}xuwz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIGPRQOMPQNQRSVXSRYTNYZ[WY\__`e`]^qwk^`gkwooljonnlfbYGFFHBAFIEEFCMRPaWRXQPSSRU[OOQVPMICF>:96586979:365795<B=ftuvwwyy{}}||{|}}~~{~~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMKTTSPQUOLRSTWXTTXQLWYYVXXVXY]WWXhsk]V`tkaa_]d`_^YUPMONLIGJKIHFCQPSZWTTNQSYS\eUOSTQNKIHC?A9988978847578598Gnruxxz{{}~}}|{}|~~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPWVVSTVOOUVXXYSUTLKSUUUUWPTUWTUR]n^RNY`[VY;DUWT[fJLPRROMMNNNLJFPPUYSTNJNOTST\VRUSSOMLIHHF??=:787659967665Wqqtwzz{|}~}~|}}|~}}y}}|~~~}||}}~}|rvqxxruuqqnppopuvtnjddjppqrpnfedc\^RTZVWTSVTRXXYYYRUOJGOPOOMRJOPPPNNOTLMIPPSTU2<XMIAQ=c`QSQPNPQPNNMPNTRPRLILKOQPQRSTQSOLMKLLHCBA=:9876;B4566;eprvxy{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqpuuvcjgeWhtrrqniihpVVTUXUVURWVUZYXWUQSFEAFGGHFJDHJHGEHLHKIGLMPMG/E_R>3@>joaRRQ@FTQOPPQNQOPOLJLLOPNNPQQNPOJLMMKGEEDB;==<9=G6676Dnquwz|{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknbePSTRSUOWVVYYVQQQO@>;=?@BAC@BEDA@GHGHFFHJMLDGCORC8ENS]gSQSAGUPORQPMMNLJLKLNOOQMOOMHLKIKKLKGFFED<AA>;@E;<89Tqsuy{{{|||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLONMQSLTUTWWULLKH=987;?A>==A@B=>EHFDFFIGKJ@FAA@FHEJOHQRa\QPRNSOOPLLOMKMLMON[VKMQOGIHDIJLLKFFFD?CC>=BG?B>Adqtw{z{{|{zzw|wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B?;>A@@>ADIECHGIGIEBB?><CBAGIDMOaePMONWKLNKLMMLLKNNSdNJLRIIIEAIJLMNKGIFBAB@?EFEHDLopwzzy{{z|zwsxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLMIMPMPOGKE?B=999:?B?<ABBADDGKFDIIGGHCC?B??@A>DECKNQTKJIMTFIIJLJKKIJLMOPRPKGCLGCCJJLMONIJIGCCCDIJMLIZsmxyxz{{y|vrpurtyyvxjqnjllnttmsu{stxronqovsnporpopstyjN`gsjt|ygosqiqheqHKCFHHGJKIJLDGB=>=:::;AB?=BBCCHFJLJEIIFGGCC;A@B>@@CECIMOGHKFHKDHIKMHJLHIJLJM]RIHDNGBEKKNMPNKMJKFGGJMNQNLcniwvv{x{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoijthdpFKCFEGDEEFEGCC@=<=:;::@D@>BCEEIFJJLFIIGFFCB;BCC>@CCCEGLNHKNHDHEILNMGILGFFIILNKJHEOICGMMNMPNOOMLIHIOSQRNRfgfrosxu{z|lhjoekpmsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGICEFEBBAE@DB>?>:;;=;=?CA?ACFGJGJILHGGGFEC?=EEB>ACCCEGHIGMPIFFGKNOKFHIFEDDIIHKIFHPKDJMLPNONOPNJJHMRUUROWdaamgprosyzgehhcilgqlflmgiklsmpvutpnvrosrsutqssutsuvvvyvutvlkuumrvqlnlerMGEEGCA@AD<BA>A=::=?;>?@B?@BEGJFJGIGFFFEDCAAFFCBBBDEEGGHFLPLIOJJLKIFHEFEDCIHHKJGKRMCOONQPOONOOKKKPUWVUTY`_]iaminhrsbeffdihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwuksunutsprkksMFGEGAB@CD<AA@C<89=>:?=?B?@@DFHEHFFHFEECCDBDIFCGEAEGEFFGEJMKHQMJKHHIEFHHECIIJKMKPSNDRSQQRNONNPMLNSWVWXVX^[]d`hbjigk_defcgggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxnouorsuqqipzMGGGHBBBEE<@CBD<7:=>;>:@B>??CEFDFDDGECECDEFFJEEIGBGHFGFECFJJGMKLKHJKFIHJHEKKLLNORTOITUTQTPQMNQNMQWZVZYWZ^[Xa```_hec`deggjhhjfhnllomqpiuuxrrpupppruvpusuvu{~}xvtwvvvwplupmsunossyMHHGIDBCHE<@EBD<8:>><<=BB<?>ABFCEBBHCCDEFFGGIFGKHCIHGIGFDHKIGKIMKJKLHLJMKINLNNORUVOLVVTQTRRLOQPOTYZY\ZZ\__^`c^\ackb`dghr
hgjfjnnponsqjtuxrsstrnpqvrquruus~y}uuvvvvxriuqkrtlqwquKIKHJEBEGE<@GDD@9<>@?>?CB<@>AAFCEDCHDFDFFHHFHGIKJEJHHKHFFLHHHJHMLLLLIMKMNMOLPPQUVWOKVVUSSRQLORRQV[[]^[]^``a`be]d`fg`ehjcssfjhglprqossnswwpuvtsmoruorspurvrtwuuuwvuwsgtrkqrkrwowIJLIKGBEDE<@FDDB;??A@@@DA@B?ACHBEDFHEIEFEIHFIHJLHHJJIKJFJKHIJJGKKMMJJMLMNNOLOPRUWVNNTVUSRQPMNTSRW[^^_]^``aaa`cdebdicdijgvlkihmosqpqpprywruutsmmssmqrotutspswtuuwvuuueqskpqjrvpwJLLLMGCCAD<?EEEC=AACBBCEACDAAEGCGGGFEJFDGJGGJFILHIJMKMLGKIHKKNQKRQLSMKNMNPPPTOWXX[NSQW\ZSVPNTUTTXZ_bb_da_`b_`fbacinicihhmxvmhimosrpqrrrvtsusssnksqmprotvrrquvuswywutucmtkopjqtpwLMLLLGEA@D>>DEFC?CAECDFCCEGCBHEBHIIHHKFDKJGHJHIKGJJNKNLILHJMKZfJd\KlRHOM_nUls[qpbwcRPbvuhucav`Xnqbdvinzf\lt`lkU_wvijhhfglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqsqyKNJKJFB?@B?=DEFDCCBEEDFBFFGDDKEEJLLJLMGGNJHJKGKJIKKNLMMLLILML[sbdp^llUMNes^gfqlntgpi_aYnmbppbkjjgoqtetno\pugqMKryvkbakeelxmkvlnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvttbmukpplrrqzKLIIGED?AB?=BEGBFCEDEEDBHHGDEKHGKMMJMLFJNHJKJIKJJIJLMNMMMKNMM[roonpplkNPQlXMibtrpamov\YlP[mmZqmkomxxtsip\`slqjUuyxoc^kfbgppjiopprspqpqqrrqqrrtlmrmmnorutqtrtuutuuzvutenukpolsrryJKGHEEEBAB=?@EGBGDIEEDBFIHHEGKJGMMNKMNGLNIMKHJMIKIJJNONNMLNML\hdu]lqWlNOQnUZk^klvaldtTecNlYl\tpkilxjwuhp]_skhWbcw|oc`ghaditykonqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvIMGIEEDCAB<B@BFCGFKGECCHKHHFJLKFMKLRRLGMMHNJIHNHJJHHNONNLJMMJZsppoqqmlOQSoYskgooqqomt^nXat_nopoqroousttj[]tcwxrjnzhaacfabjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyytukoumtonssvtIKHJCEEE@@>CCAFCHIMHFCFJLIGFKMLFOJKWRKGKJJNIIJLIKJIHJLMMLIKKKSkbZi^_jcrrZ_Zko`eeUk_c[abQ`mh\j\niid[pfdp]Z\k[mqcpsldgcdg``knppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunvqrutwrIHFJDEDFA@AEDCGBHJLGFDGKLIEFJNKIOIL[QJFHHKMIHJJKKIHJGKKKKGHJJLLLKIKLNT[]TPUMQPNOOURPOQOOQJJNPQdqiTYW[[\UY[]X]\\cfaafbcf_^fkmhmtyrtroppt
zpmmlkqsttrtvtuyyxuvqruovrtsuusHCEGFFAEC?CGDEGCIKLHFDGKLHDGHPKLOKLWMIFEHIJHIKHLJIFHHJGGIEFKHIKNLIO\W^O\\`^OXYS\\b^MYZMXaRKYaZS`d]aX[ddVVX\YZX\VY\^c_d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCDLMACDBDIEGGFKJKHEEJJJGEHHPJLMJMRIHEAHFJIKKILJIGEJHEFGEEJGBIMJKT_Y`X`a[`UXYT^^Z_RY\P^\YN_\^S[^c_Z]`c_Y_b[`^[TYXZ_^dbbacfiekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIDBBCFGEGGIJJIIDFKKKFFIINJNLHLNGHF>GGLIKKJKKIGEIEDDEBFJD?IKHN[cY^^a_RTSW_`\]Y^QY\MV_WKQY[Q[_aa]^ca`bbbcceZRXVV\[^c`__cebhommllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQJFCGEBEGHFGHIFGJGHFHKILDDJJMMLLHJJHJG?GFNJKKMKKKIGHDD@DAHIA>HIFO]aZ[d]_TQRX]\\\_ZKW\LR\YIM^QQ]_accccb\dcbdcfXQVUS\X[a_^_aa_dlkmjklnv~uz|
zrsuu{
~xpzwvx\RMB@IFCFKIFFGIGGJFFFILJNEDJJLNJLIKJHIGBHHQMKKOMKKIHHED?EBHHA@FEDT]Y^X_X_[]UXXP]]QKJW^X^[]VZaRR__bb``bb`cbbddbXORRS\S\^]^^__`dhgljnnp{{|~{
srw
|x\SKBAGFDGMRHDRKFHHHDFKIMPEGIJKNLLILKIIGDHKQOMLPLLKKIIDEAECHFA@FEBVUE\T^SV`XNTUNZ[MJKU`a[_X_^b]OYb\``_bcb]bbW__TPOQRYS^\\]^_`bffelfoow|{{}
zo
~INFDFFGDIRcQDW_IGGHDFMJPPFJIJKNLLKMKJJGEINQQNOOMNMNHKADACDFDBADEALHCLLPOOMFMFFHJHGLLMOPILOPPSPLQSRUZYWYXXdVOSTPPONQUT\YY[^^aaefchdklqsszy{z~{}{
}KIEEGFGDKM^MGHYMGHJHGNLQQILJKKNMUNOKKLGGKOSSNPONOOOHKF`ED_LDfcDM[H^\smOMVmYLCP_UlWgJ]WU^DLQULMSVQRTXWTXUT\TPfZhhdYTkTXWU[\\``abbb`gignlhrz|}~}}zr{z{
~z{LIEFFHEEKOTJKG`TGJOJIOMRQKMKLORUROOJLMGHMQ[YOPPNOPPJKQQI|YYrsWPmHqnoaVPqqtOBksnqtpSo_[nX]V\XUkhU]VcY`YZ_VUWituu_av_Yb\\f[_aaab^`bgmpl`pwtx}~vxzmv~tx~|~|z~wwNIEHMMBDLLGJLFRVLLOHLRXWQNOOMQTNOQPKKNGMPS[ZTQROPPQKIZx]TxdhYRSPvgtlpbnfkRrNLwmjrpsrqrpop]fzuxqqzq~r}ku}bRg|essoss|}p~yor_``bb[a`hknkblfgmw~~{xwtvzhr~nt|~wx{~x|u|||ssNKF`]GAEMMHKKHKQOMNJNW^YULQSNYYLSSRNLOIQRTYWWQTPPQSLHgxlcxqmZKLTypumubnvPdeIevqmwojfxxiWrRi{mijzz}lxzpgoXuujvupash}ilx|o___cb\_defijdgbcdllppstsssyqrxbltgry{ssuy~svzn|}yxrnNJRtNCBEPPIKLJLQOOOMPZ`ZXKTWPa^RVQYSMPJSTUXWWPUPONSJKrouuquqdhaVnLqp^GhyWvTKhx}x`y{sna^modSgrunmypwlvstqlm\s}zkmy|lum|kpvux^__b^]_edighee^bbiiijknokqnmjpacfdowxompsynqpj{ztromLKZVHGEGRPKLNKLQQPPPQW\YUNVYUfXRRY^TMNJTTVWYWOSOONQIRmHiwK`dvuUWlNnl{rajgvUKWkh}lmlx`[pz{_`zscroxqhd|ir{]TKl_vukiu{{m~xk|p]^^b[^bdegeeebZccikkrsrwgmihdg`alagsrkhmmr|kmhk{tmmkmOGJKHJHHRQMOPMLSSROSRWRVTPWZVVTTTa`QONKTSSQVVOOMNOQJHQNPULKKRSRRROVUQQORRXXQNPUTXXX[[USSW[WXWZPSUWWXQ]XV]USOXRVWWXZ`[gr^[\[]]_cZ_ccefdccbZccgffmnmuffgc`f_]g`dlhfgkhpzhggkujhgilPIKKLMKJTRMRQPLVUTPTUXUZURZ]VUTWUYXPOLNWTPNUSNPNLQPKJQQKQMJKOQTRQQSRIIMNOQRQQQTVRXW\WSSQQUUVTZQNSQWUTYVTYUSRUSTUXYX^Z_a]\[Z]]`c\]bbdgeddaY`acabhhincad^_c]Zd\bma^ffgmsdihkkedcfhQJKKNOLMTQOTQQMXWUTVXWWZVT\`VWVYUXTQPKOXSPNUQNRNLSPMNUSNQNMNQSPTQSTTNLNOQTTRRQVWUYZ[YSURTXWWY[SOSTWUTYUVYTRRWUVX\Z[`]VY_]^]\]`a^[bbchfedbX``b]`hefda^_]]^ZZ_Z_g`^^]chkahfhfd`bdbPKMLPQLOTPPTQOQZYXWYZZXYV]jdVXYZWVTTOKOVTPOTPPQNMQQORXSQQOMOSUNWQTTUONNQTUUTTRTXVZ]\ZVVQRWXV[\VPSUUUVYTWWTRRXVV[_[^`_V_]^`\\``__ZbbdhhedbYb`b^^fdc`b]\\\\YZ[X[a[^]]_b__bddbd__`\PMNNRQMRSPSTQOU\ZZW[[\YZ[dqmhd_[YVVXRMMVSMNROQROMPSRUZUSPPLPWUQVRSSXMOPQTXUUUSUYX[^]\[VROUVU[[VQSVUVXUSXZTSQYWW\_[`_`Vb\`a^`b_\`]cacgief`Zc`a__ee_`c[Z\[\ZZYYW\Y\[`^`[^^a`_c\Y`ZQNONVQPUSPUTSPW\\\Y^\_W\^jpwyc\[VVYRNOWSNQQPRTRLQTSY[WUORNSXUSRTRRZOQSSV[VVVTVZX]^\\^VSNTVV[[UQSTVXXRSY\TRR\XZ]^]aa`Wb[cb^ac_\bab_dgidg^\e`a`acd_b_YZ_[\[YXYWWZ[Za]][]\\Z]`W[[ZPOOOYPUUSRWRTPZ]^]\`\`U\]hjr}slh\UYWQOR[SRQTRTUTKRVUZZZSOSQUUUSNVRSZRTUTX]WXXSX\X^]YZ]UUNVVW^ZXQTTXXXSVY\TRV]Y]]a^cc_Y`[eb_dd^^cca^efief]^daaabcd_b^X[_[\[XXXXW[Z[`][[\[XZ[^V^Y]POORZP[UUWVTTT^^`_^b\`U]^bkyum}lZUZVQQT\TTTUTVYWLRZV\Z\RPUSWUUSOWRSWSWUV[]X[YUZ^X_^Y\YRWRYXY_YYSUUZYYUWY\UTZ]\^`a`ed]^]]eabfd^_dc`\gdhfdb_da_a`bb_`^WY^Z\\ZYZWV]Z]^[Z[\[WY\]VXW]SOPWYP]UVYWWUX_`aa`c]`U]^beev{hXYZTVTV\XWWVVW]XOU\Y^]]TSXRWUSRSXRSVTXXX]^X][U^_X__X\VQYUYZZaX\UWWZZZXYZZWV]^_^cbbee]b\`fbefd_`dba[fchfcfaf__abaa`_^VU]Y[\[Y\YY][[[XXY[YZZ]_]TY]UNSZWT\UVWYWV\`aacac__V[`da_zuohZ\ZVXVX[ZY[YXY`VOT][`a\UUYPTVTRVVRSUW[[\_^Z_\V__Z]^Y^VSYXYZ]bY^VWZ[[[[[YZXY__``dcdeebdZbfcgfe^ab`c^cciedg_g^bbcaa`^_XTZZZ[[X\XX\[Z[WWZXW\[\`]V]]SOVZVVZVYUXWX^`badada^YYadb`kfh^\][WWYZ\\\_[Y[bVSW^]ac\SVYPVUUUVVSUTX]]_``]a]W`^[^\[^XVXX[Z__[_XX\\]]^[Z\WZ_a^`eddfffbYcfehgd^c`_ec]fideh_g^cbcaa`__[XY[YZZXZXW[\Z[WXZTY]\Z`\U^bMRWYVWZY[\YWY^`baeada]^Yacb_a`a_\\]XW[[]]__\Z]cXYX]_cd_RYYPWVWXWWVWV]]^aba_b^Ya]]^Y]^YXUW[[`^\_YY]]^^`\ZZY[_b_bedefggbZdfgigc_c^`feZiicficf_bbca``_]]ZX[YYXXZYWZ[ZYWXVU[]]]``bbxKWW\YW]\\]ZW\]_`bdbca]`Xbcb`cac^\\]XW[]_]`_][`d\\XZbecaR\YOXVYZYYWZZ`^abc`ac_\b]_][_^YYTX]]__^_[Z^^`bb\\W[]`bbcedgfegd\efhifcab\cg`\iichife`baca_`_]]\Y\YXWXYYW\[ZWWXPXZ]acffrkJYW][Z_]\^\Y][^_bcbaa]b[bda_cbb]\[[XXjq`\`_]\ac_^YYcedbT_ZQYW\]\[Z[[c`ccc`bda`c^`\^__ZXV[_]\aa_][`abeb^\S\_`cddfegfefe_ffhhgdd`[fg^ahhbhhfc`b`cb___]][Z[YXXXVZV\ZZVVULXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vuuuuuuuvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{{{{{{{{zzzzzz{{|||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vutuuuutuvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{{|{{{{|{zz{zzzzzzzzz{{||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||xÅÔÒÒÒÒÔ{}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½sqrrrqo©Á¾¾¾¾¾ÊÓÒÒÒÒÖº}~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}xÕçääääç{~y1333332j{éääääèÊroooool²ÐÌÌÌÌÌÛæååååéÇ}~}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}v~ywwwwwwxyyyzyzxooooppprrrrrrrwzyyzzz~|||||||zzzzyyy
|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vtttttwuvwz{x{xwvvxxyyy}yxxyxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{{{{{{{{zyyyyyzzzzzzzz{||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwww|{{|{}{wwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwwy~||}}~|wxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z|yww{~}}|}~|xxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzx{|||{~{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyywxzzzy|xxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyyyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegefgbedebg[be`v||{{||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}||}}|||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqppnnnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrqppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpppqrrqqqpopooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpooppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqqpppppppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqpqqqqpqpqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrqqqqqrqqqrrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrstrrsrsssssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz|~~|vvwwvuxzxxxxwwwvx|yy|zyy|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{{z{|{}|{{{{{{zyxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}|||~|}~~~~~}}||}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~~~~~~~
~~}~~~}}}~~~~~~~~~~~}~~~~
|||{|}||~~~~~~~~~~~~~~~~~~~|}||}}~
}||~~
}}}
~~
}}~~
~~~~~~
~
~
~
}}}~
~}~}
~~~~~
~
~
~{z
~|}}}~|{|
~}~~~~~~}|~}}}
}|}~~~}|}}|z|
~}}}~~}|}}zzz~~
~~~~~}}~}~~}}}}~}|zzz~~}~}}~
|}}~}~~}~}~}}~~~}}}|{{{zzzz~~~~}~~~~}~~}|~~~~~
~|~~~~~~~~}~~~}}}}{{|zzyyy{~}~~~|~~~~}|~~~~~~~~~}||}
~}}}~~~~}}}}}|||{zzyyy}~~~~~~~~~}~}}{|~~
~~}}}~~}}}}}}}}|{zyyyyy~~||~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
}}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
}|||}}||}}}}}}}}}}||{z|xyz{|~|~~{||}
~
~~
}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~||}
~{z|
~}~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}||}~}~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{}|||{|||zzy{|z}
~~~
~~~
~~~|~~}}}}~{|}}~
{z{ywz}~
~~~}}}||}~}|}}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}}}~~~~
}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~}~}|~}~}}|{|||z{z}~~|}|}||~~|{{}~}~~}{{{}{z{{{
~~}||~~~y}~v{vx}|||{}}~}}~~~}~~~|~~}}}{{}}|z||~||}|||||}|}{~{{{|||}|{{{{}|zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~~}||}}|}}}}{|~~~~~~~||||||{~~{|{||||}|}|~|}||{{|y{|{{}{}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}~~}}|}}}}}~|}|}|}}~|~}}}}|{{{|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||}}|}|}}}~}}~~|{{{||}|{z{|yzyxy{~
~~{zy{}}x|zr}{{|||~~}}
}~~|~~~}|}}~}||~|}}|}}~~}~}}}{|}~||{|}zzyyyy{{~~
~~~z{y}}zzz}q~z{|}}}}zx
~}~~}~}~~~}~}}
}~}~~}}}|~~~}}~}|}||{|}{{{zzz{{|}~~
~~~}yzz}|yw{t{|tw}~}{{vv~
~~~~~}~~~|~~|}}|~~~~}|}}|}}}||{||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||{|{|~
~~~~~~~~~z{z}}uqz|zqz}}yxut
~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xytu}
~}}~~~~}}|}}~~~~~~~~~~~
~~~}{z{z|{z~~}~~~~}~}}z{|
{{syz|pwuvwyvtz
~}}}~}~~}~|}}~~|{{z|{|~~}~~}}}~}}{{zx|vyy{qtxwvxury
~|}}~}~~}|~~~~}}z{{||}}|}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{{|||}}}~}z~}}x~|||~}~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~~
}}}|{||yz{z~y{yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst
|~}~}~~|~~}~~}~}~~~~~~}||||zyvyyzyvyv~|{{{~|{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~}}}}||}~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{z{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvqxyrx
~~~~~}~|~{~}~~}}}~~~~~}}~~~|~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}}{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~}|~}~~}}|~~~~}|~~~|}~}~~~
~}|{{||yw{ywxwwx{{z{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzzzzxswuqqrpxwq{
~~}|~}}~~}~|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{|||zzzzzzxsvupprowvr{
}}~}~~~~}~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~~}~zz|}|{}y{zzxyxy|||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyysuuooqpwst}
~~~|~}~~}}~|||~{{~yz{z{~wwy||{}||||{}|}}}}|}|~~~~|z|}{}}{yz{zyxstunsqpxruz
~}~~}~~~}~}{~~{|}{z||{yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}|||wxuxxy{||}{||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~~|z}|{}xwvyyz|}}||{||}}~~~}~|~}}~|w{zz{yytqunwpuzqvy
~}~}}}|}z}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~}|z|{{w|yyy{z}~}||||}~~}~{{zz{ztpxrytvxtw{~~
~||||x|yzyz|}|{||}}}||~z{{zzzupxwyvu|uv|
}
{~~}y|zzz}}|}z||}}|z{~~~}}||}|vrvxxvtvu}
}
~
{||}zz{}}||z|~}}}}~~~~~|}}~~}|{xvvw
~
}}||{||}}~~~}~||}}}~~~}}~~~}}}~}}~~|}
~
}}}||||~}}{|}}}}}~~~}|~~~~~}}
~
~~|~}}~||~~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~
}uy~
}y|~{
~~~}}}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqtpurstv{}uvy
hzrss|s}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyy
rpvxqvtturstvinrotvnulwm{snym}rsvsvmmxlpylu}}~}~}}}||}}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}}|}|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyqjoyxpkyszozwvvp~~~z~}}}~}}~~~~~
xyrz{pp
x
xyks~y{krz|m{yyt}vnoot|uwqy}}m~uo
zrr{|upozls|nw~~}}{}{|}}~}~~}~}~|}~~
}w
}~{|{~{||}~}|~}}~~~~~~~}}}~|{|~||
}{{|}{||}~||~}}~~~}}|}~~~~~||}~{|||{{~
~|{}~{|{}~}||~}~~|~}}~}|}||~~|}}||}|||~z{{}~
{{~}|||}}|||}}|}|~}|}}|||}}|~}{|}|}|~|||zz||}
{}~}{||~}|}}|}{||||||}{{{}|{~|{|}}|}}}|zz{{||
zz
~|~~||}}|}}|}z{{z{|||{{{~{{}{{{~||||}~}{z|z|}
|
~~~}||}}{}}|~zyzy{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yyzy{}}zz{{}|}||z{}||}|~~|{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yzz{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|z{{{|}}}|~}||}~|{
~}~{
~~|}}}~~~}}}}{|{zyzzyzz|yzz{{{|z{{{{}~}}}}||}}|
~}~~
~}}~~~{||}}}}~~}}~{~{{zy{zyzz{yzzz{{|z{|{{~~}|}||}~
~~}|}~~
~}|~~|~~|~||~}|~}}|||{{zzzzy{zzzyyzz{|y{}{|~}~}}}
~}~~~~}}~~~~~
~~||~}|~}{~|}}}~}|||}{{zzzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFL=8765999<>9?<D:;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>9=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<9<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÕÔÕÔÔÔÔÕÔÔÔÔÔÕÕÔÒÓÔÔÔÔÔÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9?CE@<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËÊÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø××××ØÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÛÜÛÛÛÛÜÛÛÛÛÛÜÚÓÒÓÓÓÓÓÔÔÔÔÔÔÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILO@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÏÐÏÏÏÏÏÏÏÏÏÏÏÏÖÞÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¹³xssssssssssssszÒÒÒÒÒÒÒÓÓÓÒÓÓÓÜãâââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVN<::87>C?8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÌÐÒÒÒÒÒÒÒÒÒÒÒÒÑÞìëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¥2)+++++++++++)5ECCCDCCCDCCC?\ÓÓÒÒÒÒÒÒÒÒÒÒÒÑàìëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;@C>6:7>>;=B?9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÌÑÒÒÒÒÒÒÒÒÒÒÒÒÑÝêééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¦8/00000000000/;IHHHHHHHHHHHC`ÒÓÒÒÒÒÒÒÒÒÒÒÒÑßëêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;?@@8:;8<;;<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÍÐÒÒÒÒÒÒÒÒÑÑÑÑÐÜèççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©« E=>>>>>>>>>>>=HUTTTTUTTTTUUQjÒÓÒÒÒÒÒÒÒÒÒÒÒÒßéééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB?;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÎÎÎÎÎÎÎÎÍÍÍÍÍÍÎÏÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÏÏÎÎÏÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÑÊÊÊÊÊÊÊÊÉÉÉÉÉÉÊËËËËËËËËËËËÌÌÌÓÔÔÕÕÕÕÕÕÖÕÖÖÖØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<8@B<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÎÏÑÎÎÐÒÎÏÒÔÕÔÐÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖØ××××××Ø×Ö××××Ö×××××××××××ØØ×ÖÖÖÖÖ×××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎÎÑÁ§ÑѸ ÐÑÆÏÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÏÏÏÑijºº¸¹¯¡ÒÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D?A98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÏÏÓº¯ª¼£¨²Ñ}~¯°ÒÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<:6?B@C:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏÏÓ±¿Ç´ÕÓÍÃÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8FA?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÑÀ½Ú£µÔÓÀ ÐÏÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÔ£¢Àס´ÓÓ¯¢©ÔÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:=?>=<9@<<::9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÑÄ{«Ø¡´ÓÓ£¡ºÔÑÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÕ«¯¼ÀÏÓ¡µÔÍÉÒÑÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:96:;::;8@?:<<9<>=;;:?9?:;9=>==;;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÉ
¤Ù¢µ×à ÒÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÆÓÓտס³Ù²¤¦ÖÒÒÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÒÑÒרËÖ±ÅÖ¹¿ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFHKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÑÒÏÅÔÑÐÃÔÑÒÂÓÒÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÒÒÓÔÒÒÒÕÓÓÓÕÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEK>>786967899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EILAALD??;:889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEGIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDJ;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGIB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?:8776=??@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@BB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEFC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<;DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGGNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiihxsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptyvt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsoupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjdmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸········¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®wpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µµ¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@BD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢¢¢ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¥¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;;;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤££¡¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::88:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££££££¢¡ ¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¢¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥£¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>98;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤£¢ «cimnifm £¤ ¡ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9;;>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:=>:?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_^]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=9F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VPQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
}§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s}~
z}}¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
z||}~x
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPFMHSWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~}}¨®²¯¯µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWLO_^\NUTbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
£ ¤£¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJCPK_bXZQ\S_MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©¨§¡¥¨¨«©©¯¡¡££ ¡¤¤§¤©«®¬¥£¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdVOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®ªª«¤¡¢¥©§§©¨£¢¤ ¥¨£ ¡¢©§ ¢¢®¬«ª§®¨¥¤©©©©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPORd\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨¦¥§¨¦©¨£§¦¤¦¢¡ ¡¡ ¡¤¤¢ ¢¢ ¡ ¢¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOWO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤¢ ¢¦¡¦¦¦¡ ¡¤¡ ¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvwa_\UYQUV[c^r_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;><@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯«ª¬¨¨«°©¨©¨¡ §©°²¯¬£¢¦¡©¥¤£¢¦ ¥¤¢¥£ ¥¢¢¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\V\hdocnihb^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·®©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£¢ª©§®·¶´´¶³¯¬«®«¶°©²±®§¦¢££¢¨¥¡£¡¤¢§ £ ¢¥ ¤§ª©¨ª¬¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxib[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>AE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ª²¸¼¼½»º¿´¯±³µ´··¯µ´µ²°¨¤¢ ¤ª¦¦¡¤£¤«¥¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨©«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥ ¡¨¦¦¥£¡¤¢ ¡¥ vxyxc[RYT__alhukpgiibYSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶³º±ª®´±°±´µ¶¼½¾¼¼½Æº¸·º½´¯µ±±º¸·²³²ª¦¦¤¤§¨¤®¤««µµ®³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YSah`fsositdidb[LK>:8898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÃÆÃù½¿ÀÀ½¿Ä½¼º½¾´§ª±À½¸µ¹À³¯¯ªª¨§§¤¯§ª´¼±´µ¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`a^^jbbnwuvnl[bQU\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAB;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±±§¼¼¾ÅÄÆÉÇÅÆ»ÄÀÅÆÀ¹¯½¼À¾¾³«ª³»¾´µ·Âº¯°µª«¦ª£¤§±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklfnuqruqf^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎÌËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÅ¿ÃÂÆÅÀ±¾º¿Ã¶¶º©´³´©«³»»±±¯¬¤¬®´§ª©¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tkkndolhqxoyiia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABB@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄø´À·´¼Á¹··¿À»®¥®·¼·£·°¦´µ¬®¥¥£¨¤ ¥ª³²¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{vnkiguZfrwsxfg]d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAACB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÉÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÉÆÃÃÄÂľ¸¾ÁÃÀľÁÏÏÎÆ«¯¶´µ« §´³®«¸µ³«©£¢©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuueeijh]jomxwcb``^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÏÏÌÃÇÆÈÈÈÇÉÇÅÉÇÈÇ¿ÅÇÄÄÇÈÊÒÏÒ̼¸¶´¸¸Á¾¾º½º¼º¼¬§ª»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqobagugiitmxl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÍÐÎÇÌÉÂÁÆÁËËÇÆÌÉÍÅÆÆÃÆÅÉÍÐÍÏÌÇÄÀÃÂÉÍÇÅÁÄÇÁ»¾´±°°Á¾¿ÁÆ¿¾¸·Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlietnsb\bTWTSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<:>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÅÇÈÆÒÉÁÃÄ¿¿¾ÄËÈÊËȼ»ÈÇÉÍÈÃÈÉÉÆÅÃÂÁÂÇÇÉÊÇÌÈÇÈÍÆËÏÅ·ÀÀÀÀ»º½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrofegdjdajmnn^X\VUNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÂƾÆÁ¹»Ãº¸¹¼¾ÁÆÁƺ¹ÉÉÃÅÄÀÄÁÂÁÄÁþ½ÂÀÀÁÂËÃÆÌËÅÈÑ°¾½¸º»¼¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbabccjbfcZYY\YQNE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹½ºº´¿¸µ¸³¯»¼·À·½Â¿Á»¿Á¼»Å¾»ÁÄÀ¾¾¹¼ÁÁ˾½ÉÄÀÀÊÀ±Á¿»¸»¾ºµ·³¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qc`bbgjffiei]VUSYOSKE8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=96<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µºÁ¸¾¸¿¼½·µ·°®¸¶¹¿»À¿·Á¼»Ã¶ºÈ¸¶¹»½¹º¶»ÅÅʽ¹ÅÀ¿¼Á¾¸Æ½ÁÀ¼Å¸¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zxpmeefoiekgXXNKKKRILHC9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<97>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿½¼²¯¬±°·¼¶»¼ÀĹ···µº¹º»À½ÃÀºÄ¾Ǹ¹¸·µ¸º´·³»ÅÆËÁ»ÆÀÀ¿½¼¿ÉÃÄžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksebm_\THKJDJBCG?9;8=<7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼¼À·ª¤®°·»³½¿»Ä·¶¸¶·¿¿Ä¼ÂÅÅÇÇÊÉÆÏÂÁ¸®µµ¼¾¸»²¾ÄÄÊÅÁÉÿ¿¾½ÇÌÇÇÄǽµµ¶Á½º»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qelintnwcgb\cQKTHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?=??FD@A?>:7?@CC?A=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼«ª£°¹½¾³¼¾¼Å¸²¸¹½ÇÉÊÃÇÈÆÆÉÈÌÎÑÌÊĵºÀÃÈ¿¿µ¿À¿ÆÆ¿ËÆÿÁ¼ÀÃÌÊÇÅÆÁ¹½¼Ä¿À¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_b^aaNHM?E@?DC;;::;:8;<:9<>9:>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´¼Ã¼ºº¾¼Ä¿·½¿½ÇÌÆÇÉÆÆ¿ÄÄÊÈÌÌÍÊÆÂÃËμ¹½º¹ÀÿÈÆÄÁÁ¿ÅÀÊÉÃÃÃùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw{_pc[]_^SI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA>>ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼¶º½Á¼»¿¶¿Á¿¼¿ºÀËÂÇÈÀ¿¼¼¿ÅÂÇËÈÁÃÀÀÉÊÂÀ»»°´»½ÀÅÆÅÅ¿À¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²²¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}zmsxsgp][^\YQEDCMIAE=G::59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯·¶²µ³·¹¼»¶»»½ºÃ»·½·¹À»º¸¸µÅÁÂû¹³´ºÁ½¿ÆÀ¹À¼¾ÅĽ¾¹²°®¸·¿ÃÇÃĽ½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸¸¸½¹»±¶²ÈÀ»¶´±°·¬³©°³·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|vluzpni\_`YSPAEHGK@DCH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÁÀ·½¹¸¹¶µ¿³´²¸±»ÁÀ÷·°µ¸¸¸Âº´»·»¾À»»¼®¯®³²¹ÁÂÄþ¼¿»º¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ¯µ´´½º¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§¬¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsvvwnq`_e\ZUJ<??FF=FCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<:;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Ã¿·º·¶¶²´À¶²´¸³ºÀÁù·³²²´²¸¾¹³µ²¼¹¼¶º¾²´´´°¸¾ÃÆÄÀ½¿¹³¯²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtvrl^b`[]OHA>=HCFMC@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·À½»¼¸¶º¶±Àº·¹¸¹»ÁÁÄû»¶´´°¶ºµ´²¬¼¹¸µ¸Áº¸³±¬·¼ÁÇÿ¹ºµ®¥¬³°¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wo{ournc\fX\]RNMA>IB@JI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³±¶º®¬¼²¸¹·»¿½¹¾À´¿»¼º¸¾Â¼ÂÊȾÀ¸¸¶²´¶²´¯»º¸¶¹Àö®®ª²¶¼½¹¶²±¤§§£¦©®¹¬««¥¨¤«®®§¯¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶¯ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmuik][jT]\OMHDFLBFMF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹½µ²¸´¹ºµ¹»µµ³µ»¼À»¾À´¿¹¹º±ºÃ¼ÂÊÅ¿»¾¿¹´´³°±°¹¸¶¼¸»¿²²²®±®¹¯ª«¬£¨¡¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬«¯£££¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndT`cW\QNLH@HQDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;=<<;:@=<<;?>B@A?>958;<FBCD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²²ºº··µµ¼³¯´«¶º¸ÀÄÁº»¿½·²³°¯¬®¶¶²´µ¯ª¤¨¨ ¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨ª«¥££¦¢ ¥£¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vybwln\QhTPNGOMLBOQ@>;>49:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;?@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¥¬ª¨µ²±°®¯²§¦°¤¯®µÁºµ¹Õǵ³´«²´®ª«¯°²³®¥ ¢ ¤¥¨¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦©±£¥¨ £ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uu}mk{dhUQcMIHGNRNJNG;E@=2?759;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@CAD>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡©¡ «ª¦©¤©¤¥®¥¬¬´¼·¬¹Ù³»µ¯¯³µª§¬£ ¢¢¥¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¤¡¯¨®²«¥ªª ¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}vx|dxy`bRU_HIIKSTIRPL9?B67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¥¦¤¡¢¦ ¢¯«¬µ²·¦µÔÁ·²±±°¸§¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§ £±®²°´©±¯¢¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|uvshle[SZYMQJNNULRLA7>B68=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢¡£ ¢ ¢¯¯¬°±ª¨ª²É¦È°®¬°§ ¢ ¡¤¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¾°¬±®©ª´±°¨«¨²µ·³¸¬±´¤ ¥¬¡¡¢ ¤¡ ¤¡¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xuiwu]lZR`HQUHFUVJBLG=KH8E<67;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¢ ¡¤®©¬£
{±µ¯¨ª¬ª¥ ¦ ¨¥±ª§®£«¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼·½³³µ¢¬¢©¨²©«¨§¨ª§¦ §¨¥¤ª¡¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vqmivmhm\X[BVMJGMGBFM<>L=4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·£°¦££¦Î£¥ vsbhk}¡³®®©«§ ¡¢
¡«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶ººÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸³»Æüü·³©³ª³´¯³®ª®£«§¶±¬¢¯¦¡£¯±°¤¤¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¥¦¢¤
{trkkurphW[QETHDIOH>EA4EH95;=6;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<<;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥¡ ¢°Ñ«bqlb]`x ±¯§¤¤£ ¥«¦ym ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿ÀþÇÆ·ÃÉÉÂÀž¹´¹º´»·°µ²ªº±®»·¾ººª·«ª¸º´¼®®¹£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢}zrkdhoxjeZ[FKLEDSLDBE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ³²¸§¡¡«ª¢¡¢ ºÎ¢nc_W°ª¡wsqnp¦®´¹Å»ÍÇË¿ÂÌÎÍÌÇÉÑÌÍÌÇÉÅÆÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÒÓÌÓÐÓÓÌÊÂÅÆÇÊÇοÈÑÌÇÅÆÄÁ»ÃÀ¾¾¾µ½³¿¿ÂÂÆÄÇÄ®¾¸²¸¼ÄÁÁº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLCEPIDC@5558:B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª££¬®¦¥±ªÅÆÌÎÍ¿°Á¨¥¨¬ª¡£©ÆÂk\j[Tq°³¤ yrroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÏÊÒ×Ñ×ÒÔÖÓÓÈÌÇÍÍÉÒÌÎÓÌÅÇÉÊÁÅËÆÈÈž²³ÈÄËÊÊÎÅÊ¿¾¿½ÁÇÄÌÌÈɿÿ¯³¨¢ª£¦©¬¤¥¦
zruvgcgvidVWQDMF@IQB=B<:22@<D<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ´¸¬®£¤£ ¤¬Ï´Z\}k®®¥¡¥¡}wpkebhqoq{
vpnqtp
³Â¾ÅÑÐ×ÖÖÒÖÍÔÖ×ÔÓÑÓÔÔÒÏÑÃÐÓÖØÕÖÒËÉÎÑËÆÍÑÉÒÕÖÙÕ×ÓÖØÎÒÊÏÑÌÎÐÌÒÏ¿ÇÆÊÃÌÌËÎÏÅÆǶÀÊ¿ÑÌËÏÅÉÇ¿ÃÂÈÎÌÏÐÏÍÊÈθ·»¨¥«§£ª¥©¨¨|xsvpc`erb]R\IJGAEHI>;@8=4585;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÂű¶¨¢¥¦¡¢«µ¥¥Ò¨jZu£ ¡¢wic`____^_`^blusqpolrquÄÇÆÔÕÖ××ÓÖÏÕÔÚÔÔÎÏÕÔÔÑÑÌÐÎÓ×ÖÓÕÐÏÒÓÑÉÓÑÇÐØ×ØÑØÒ×ÙÕÖÌÏÏÉÍÑËÎÏ¿ÅÂÇÅÎÍÑÐÑÈËÌÀÊËÅÓÎËÎÈÄÉÆÆÈÌÊÓÓÑÕÏÒÌÒÁ¹Å±¥¨µ®§¨¬¥²¨°³¬¬
|zqstmacim_VP_JJCFCQM?<>54:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡©¯®ªª«¦®¸¨«·×ÔÕÙÙÑÎÐÀ¼ÌÉ·¿¯§«©£¤±µ±¯Í¡Zd«¢¡~recb__a`_a`_``_`fmppnkorwwÌÀÒÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÒÊÏÌÓÖÒÑÖÍÏÕÕÑÆÑÔÊÐÔÕÖÎÒÐØØØ×ËÈÍÃÈÎÌÊË¿É¿ÇÈÍÎÏËÐÍÎËÎÎÇÊÏÐÊÎÊÂÉÆÉÌÊËÑÒÌÓÑÑÏÐʽȹ°®»¸µª¶°¨¸³¿»±
zvopokadnpaW\ZIFFDMWE;@<33<=87855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6==?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¥®¾´°ÀØÒ×ÚÜÖÏÍËÄÓÐÂÁ±ª®«¥²±¶¾ÌZ¢k^^^adb``aa``a^__^]bmroostvvy¤¾ËÕÑÖÔÓØÖÎÎÔËÍÎÅÎÊÒÒÏÆÎÍÍÔÌÎÓÍÊ×ÕÐÌÑÔËÌÐÑÓÊÎÑÕÒÕÕÊÀÊÁÅÌÂÈÉÂÌÃÅÇÊÊÎÊÍÌÐÍÓËÅÈÏÌÈÇÊÄÆÀÅÊËÍÏÑÆÐÎÍÍÌÏÅÇÀ·¸½Ãýù³²¾±»Ãĵª¥¢
xpqkmg``qhXXhVLFLIPPB;D>;67:89:57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;776?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÅÃÁ¿»µ²±Ç¸ËÕÖÙÚÛØÌÍÏÈÖÕÅ÷±µª£¬¸·ÉÍ|fbbb`]^acb`_``aa`_][]grqqrsqmry¤ÆÓÏËÐÏÔÕÉÅÉÉÆÆ¿ÃÆÏÎÇÅÇÍÊÒÈËÎÍÆÑÒÏÎÌÔÊÇËÎÏÇÇÏÒËÐÏźľÆɽÂÇÉÎÄÁÇÀÇÍÇÃËÊËÏÇÃÃÐÈÆÁÅÇľÀÇËËËÎÂÊËÈÇÌÐÄÅÇ»ÇÃÈÈÂÏÁ½¼¿°ÁÉǹ½ª°²§¥¢£wntdk`^fqa[W`GHHGIMTG?J=64355=<48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ½ºÍÍÇÐÕÕÙÚÛØÐÊÏÐÒÔÉĹ½¾¯§·ª½¹ÎÉ¡~
t`\^^^`^`cdc_]]^_``_[Z\akrrookloo}¸ÑÈÉÊÏËÍĺÀû»ºº¾ÈÆÂÃÀÃÇÊÉÈÊÈÁÅÌÆÈËÍÉÄÂËÉÁÂËÐÄËÈ¿¹Á»Åǽ¿ÆÏËÿûÉÆÈ»ÈÆÄÊÀ½ÁËÆÅľż¼¿ÃÄËÅļÀÉÂÅÇÒÄÀÈ¿ÊÉÆÇÆÐÃÃÆïÄËÇÃÊ·¿¼º´©¬¤¥¬£¡¥£ {vstfiZanmZ[XRDLFBGDLDFS@54334?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ËÏÑÌÇÂÃÇÍÏÏÌÕÐÖÙØÙÐÌÓÎÏÐÊ÷ÆÀµµ»°¿¶Ò³z
vxurq_Z[]``bddded`\\]]_^`[YZ\borokilposƼÉÅÌÀÆ°¶º²²³²±Â¼¼¼º¸ÀÁÁž½¹½¿¹ÄÊÅƽÆÀ¸»ÄÉ¿ÂÉ»·»ºÅþ¼ÁÍÃƾ¾µÁ½Ãº¼Æ»Â¹³¼ÅÄÁ¶¿µµ½¿ºËüµºÈº¿½ËÃÁÅÂÅÈÆÈÆÐÆÂÌDzÇÉÃÎÍÁÅÃÀ½²·°²§¨¨¹°¥°«¬yvwjdg`hocV^YJFJFHJAEBEI@9:648853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÆÃÄÈÎÒËÊÊÇÍÎÏÒÉÑÆÖÔÖØÎÌÐÇÌÈÊĽÉÁ±´¹¶¹´»
y~|tud\\]^``bcabeeb]][\^\^]Z[]]hsqmggnpry½ÌÀúÁ¸®°°§ª¬§¸´·´²³´ºµ¾±·°µ¯²»Â¼Áļ¿ºµ³º¾À¸Ç¹´»¶À¼¸½ÆÁûµ®²¶º¾´Ä·»µ«¸½½¿½°º¶¯¶º²Å¼¶®»¿´¶´Å½¾ÃÅÀÃÅÆÈËÅÀÆÆ»ÈË¿ÏÊÇÃÆÂöý½¶¹¾Ç¿¬µºµ·¶xtxfgebkn^V^`FKHHJFBDAEE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÎÈÆÉÎÌÐÌÎÈËÉËÊËÅÑÎÓÐÏÇÉÅÉÄÿ¼Ï¼²·»¸µ´{y~wx}th^]]]_`_`da^dec__\[^\]^Z[[]_lpmhfjmnr|¤Ç¿¸¸µ°«¬§¢ª§«¬³©«©´¶°²©®¦¬²¼º¶Ã¹ºº±«µ¹»´Âº°¿±½¼»¶¼Ç¹Â¶ª¨°±¿µ·¼¯°§±³´»¼«µ¥®¶®º±°ª¸°»®»¸»¿¿½¹Â¿ÇÃÅÁ¼ÆÁÈ˸ÅÇÅ¿ÆÃùÄÆ»ÆÉÌ˳¹Â¼º²rvvkiablhYXW[ALKMIEAC?FA:9:995854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÆÎÒÌÃÆÂÅÐÇÎÂÄÇÀÆÆÄÄËÂÊËÁÃÀÆ¿¸ººÉ¶³¹º³±©|y~z{
wo^]\]]_`^_dcbccb`_][[ZZ]ZZZZ\dnohfgiknr¹°µ®¦¥§§ ¤ ¥«®£§¢«ª¬ª°¤¦ªµ¶±½¹¯·¯¨®·´´¼¸´¼¯¸¹´±¼Á±À®¥¨¢«±²³§¼ª«¨«¬´³¥¨¡¤®©²¥§¨¥¨·¬°²·¹º»±»½¾¾Ä¿µÁÀÇÈ·¿ÀÄ·Ä¿»¿Ä¾ÄÈÌÊ¿¾ÃÀÀ©rtrji]aodWVXPHYRSKFFE>>@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÅÑÐÍÄȺºÌÂÌÀ¼Ê¸¿ÅÀ»Ë¹ÂÅĸ»Á»·µ»Ã¶³µ¶©|~~xt|swf_]\]^_`^_ccab``_^]\ZXZ[[YXZ\_fkfegehkor
ª¥¬¦ ¡¥¤¡£ª£¢¥¥§¥¬¤¦¬²¯¶·§°¬§ª´ª´º±¶µ¶¹±¯º¹±·¤£¦±§«¨¹ª¤§¨¨§² §¦¤¥¬§¤ ±¬²´²´°µ¼¶»ÁÁ²º¾ÃÁ²¹¹Â³À½¿µ¸»½¾¼ÂÇÄÂÿ¿Ä wpkaf_ko`UY^HNgOTGEJF<=?=:;;825536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:7676778666;::;9;;<859<:>>@;ȵµ½¸ºÀº½µ ¡¦º¶«³³»³ÄÐÉËÃǹ¸ÉÂÍÀ¹Ë¹¼Ç»µÇºµÂı»Ã¹³¶½¸¬¯±©}zvtomkjjqi^`]\\\^`_acb````]\[\\XYXXXVX[^_dcbegggjmo© ¡¢¡¢¦£¥¡§¢ª°±µ¢©ª©««¤´¹·°¬²µ®²µ®°ª£¢²¤¦©¸¢¦¦¨¬ª ¥£¯©«§ª«¬°²¸¯¸¹»°¶»»º«³³¹³½´¶±±µ´¿¶½À½ÃÁº»½zrk_e^ddXTX]IW\KPGIIFA<??@;?<04535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÐÈÉÁǼ¼ÅÄÏ¿»ÉººÁº´Ä·³¾¿±¿Á¹ª¦±¶³¤¬£ysnpnkb^bff]]^]]]\]_`abccba_\[[ZZYXXWWWXXXZ^bddeffhikr¨¡¡¢¨¥¦¡¥ ®®² ¥¢«¦¡´°±±¬¨¯²§º³¦¶¡¢£¡£¡©µª¢£¦¥¦£¬¡«¦£¤¦«³³ª´°²ª²¹´¯©¯²²³·³®©¬®²¸°º¶¹½¿·²±
yue^e^[YVSZUK[QLIEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ·½¿¶¾¼¿³¥£¥±Âµ¶½´¸ÂÍÈÇÁƸÂÁÈϸÂÆ¿µ¼¼µÁ¹µ¼¾³¸¼·¦£¶£«¨}
yprtqifdhec\\[[]]\[^`a^__`^\[Z\ZYXVWWVXXXXVWadecdeddhjv¢¡¡¡¨£©ª¦¯°«££·ª ®¨¶©¦§°£·°¤·¢ª¦¡¬¸°¢¡¤¢ ¡©©£¡£ªª°®¨´«ª¦²°¥ª®²±°°®¯¦§§²®±´¯¼´º·®£yud^aVYWSRTKM^LPKGGLLE<@><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾¸¼®§§£ª»À½À¹®´¸ÂÍÉÆÃľǹÉÍ´ÃÄ𾾸¾¿¸½½··¹³¤£·¡¢}yrjmrtphhedgb\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWV[ccbbcbcdfj ¦¥¤¦§¥ª¯¦¢£¶¨ ¡¢¨´¡¥§¤¯¥°¬µ ©¡¢¬±±¢£¡¦¦¡¢£¥¥«¤¥°§¥£««¦¨®¯®«¨ª©³¥¦«¯´±®¼µ±¯¯ zvrda\Z]XNLRHRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8846863321./2556;:8;7876<;:;;A8x»»±µ½°»±·¬¤§·»¼Áź±¹µÅÊËÁÄÇÇÈ·ÇÅ´ÄÁÈ®¹ºÀºÀ¾¿»¹´¶²¢£±wodbgihfhjgjm`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWTTWVSTRU``_`a_`acdi£ ¥¡¥¤£¢£¡ª«¥¥±© ¥«§¡¬©¨®¢¡¢£ª¨°¢¡¢¤ ¡ ¡¤¦£«¥¢¤ª¤«®¥²©¦¥¦¦´¦©¨³µ´¹º¯ª¬rpo`[WVVRGQOHZ\ORITKSLEGIC8;;=<8667:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:8698698989;9@9{µ´´»²¯«±§§¯¹¹³ÀȺµÀ¯ÆÉÍ»ÂËÍÈ·Ë¿³ÀÆ˯´»Å¹¿ÅÁº»³¶± ¦«©|ujjjlhjlmkjme]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\]^^^__bdm¢ §¨ª¨ª¦¨¥£¤®¤¥¯© ¯ª³¥¦££¡©ª¡ ¡ £¢ ¢ ¢¨£¢¨« «¯¤®·¥£¤¢¬ª¨«®²·²½µ³«¯ssh[XXRUREXLQ[YMUNPLPQINIB<??A?<65799<<987:79:;<=>;7;;:=67:;8976989:6:=99577571141-+/434988::8::748=8?9~³®¨³¶®©§¯©¨¬·¶¬¼Ê»¶¿¬ÌÇƹÂÏÐȵƽ¹¾Å˳¯»ÃºÀÂÀº¾¯´«¡¥©¦wxoninnnphgigd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUTSNPQYZZZ]\\^_`d~¢ ª©¦®ª§¯£§¬ ¤¨§®§ª¥¡§«¥ £ ¢¥¥§¨¨ ±°¦±¼§ £¬´ª®§°´°¹µÀ±±«}qrbVTVNRIGVQRRLLXMJLNRGMKACFDC>@75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661321-*.102877;99;8948;8@8³¦±·ª¦¢°«ª§©²±¤¶Æ´¹º³Ëƺ»ÂËÑ̳¸º¾ÀÄÆ´²µ»°¸¹Áº½¯©¬¨ª¥kgmnroqkpkdfge^ZYZYZZZ[ZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajzv¨©¥¤ª§ ¥¢
£¢¢¤§¡¢¢¥¤¦¨¦¡ ´²§³·¡¢·¬©¤²²¦µ»µ««±£xql]NQQLOCMNNPKFNNJJNMQIMJAGKHGC=858889:;69:68;99><8:>9;?8789:886857688974577820301*)-/12776:999984988A7w¶§¤¶°¤§£©¥ ©¥¤³ª¢²Ãµµ²³ÇƸ»ÄÊÍǵ¯»¿·ºÃ²±¬´¡ª²À¶·©¦§¯©ªy_`gsqvqjniehhj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXYX[]aosvq
¢¡£¤¡s}
{¢~~tz¢£ ¡££¢´¯¬¯¬¥¸¦¥°¡°®°»ª©¯ªvrbUMROPMCSNLQMBPQHINSMHJJCJLFKK<749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-11764789::65:87A7x·¢£´¨¥¦¨£¦¥¦¦¦³§¥´Á¸¯´°ÊŸºÁÏÆ¿´®¼Ã®°Æ°«¥ª¡«¼´¬«£¨§¥oWW`hgihincjigb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTRMMJHNSSSTUUWY[]ilrm
|tNXr_;Wo{
syz
}xro
~¡ §¯©¨¨³¢¦¬«§´¢©£}rm_[NSRVLDTJPMLFNOIFLQMKOJIMPFII<7599999:7:;:>>8:==6:?8>?589;79675333760.-/344110//((++-3854779<:79;86A9y· £¡¦¦ª §©§¢©°¨§´Á¹°µ°Èø´¾ÏÀº°°·ÄªÈ¬¥
·ª££¡ fQMRVZZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`mpi{tPBA}
x`JQnx}
n~wuuwpQ|~xvhw
~¤£¨©¥¤°ª¡¤¤¥ª¡©¢¦¨tle^[HQQRMIUMSILKOIHGJNLMTKQQOFHC<769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')**,4833979:99::::?9w¶¢§¡®¡§¨¥§¨¯ª¶¼¶¸·³Â¼·¨ºÉ¹¶¨©¶·¬´¿© ®
bMLNNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZntw~ji]Ut|
{uxsnupty}ª
yzhv{prmxxz{vsrwgu{{© ©¥§¤ ¤rg`\\JVORGKXROJMMRJJJMPHLQLRTMEHA<77;99>=:;<98@?::>=7==79947795675252572/2.,//200/-+(().1372198798775:<;7v®£¡´©¯©¥¬°±ª½´²»¸¶»µ² ·»³«ªª³°£¡
}bKIIHGFHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQRSV^u}ygw}gyvx|r|v{ok~|s{}tfv|lohs|lyq}pmuqhq~pC
wwz
}zu~£¢¥vnlebZWWTQJSUTOPNQVKNKNOJQNHNOKFD<;79;::?=9<:99??;8<=7<9999266856633621224.,,-..-0-+*''*.1362/876966527995y¦ ¦¯¬®«§©±¯±«¼¸¬»¾¹³¨±§¦ª¥¢}}yx~{{|bKFGFA@CDILLMQRPQSUTTUVWWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNPQTX^eprm§ªÀ~uyb{xn|yy|
omxsxjjr}Inhx~licly
ksl|nr{hmps
z}~{vots
ywp|~mhmnnWUWTRQYORUUSXUMNHNJMNKCHNGE@:89;99:><9<;::=>:8:;9?868727575541442/024*+**-.+-*(*(',-1250,4567485HA895w¥°¢¬ª¨µ¯®¬´¿«¼Â¿¦¢¥
¢¢u}zv|r{vrvydOEGD@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORWZRY\`§bitze~pmzvtlts{jkMy
g1vsl~~tfet~
filukp|gpp{n{s}|qpnum~wytiyyvjjngdWQZWYY[MPUVYYNIHEJJHGBAFDCG=998;9:9<:9;:::@<9:<98>787715244533645031.**+),,++)(+'),,226,+5775478iO8;5n¤¨®²¦º®«²°Â±»ÃÇz
sw~uvtvumwqgUFID?<;9:?@ADDEGJLOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOPQVLAIQIb¯³ q|xm}lr
zyr txsu5q¨¡¡¢vp||shfbinrmpuioXupvl{}mqmpzsvmbv
ux~~zqpok^Z\][YX`_SN[ZYXLHJEJG?CABG>CD=;97=;:;;9:99;:?<88=:8;66651121353475531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥µ©±®Á²»ÁÆ}nv
nyz{q{s|jn^JPG>@7448;;<=>@BEILLLMNPQSUUVWXYXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~mw|}
~v¢y~
aªzv~s{\dqtz{wlgiayo
znwtzptywkni]w}|
}q|uw{}uorsef_[Z]S[f^WQUX\VGJJDKG?F@DC>AA=:97<;;=<::99;;=>79>9986754244004645654-,)+('''&(())((+++/00Uq<23331E~W4=9\x¦ « ±¨¯À±ºÅºz
vk~yt¢s|kylSWL@E211267688:<?BEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJi{y|q|z|~v¡¥¬©H®¯¯¨sl|}hfgx~n
q
Gkwryvhmk_v}
z{uv|wmow~rrqjZ\\[ccXge\UPPWYPDLKFNICFCCA@CA=988:::;;:888::?>6;>7585773344236756768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^
t|~
¬¡¦¸¯³½³}tp}}¥yuy_cVKB60./23123668:=??BEGHJLNQSTUTTVUSQOGC?80,#[>?94.]ps£UFIKMNPW`YpZ\^j
~
¡¡¥»±§»Çè¡¥{r~v
ihotqw{v
}nvug¡«¢{zzogkx}x|qic]ZY]i\af_ZOLNXRQIPKDNGCKDCADDA<:87=<:<:88778:==8<=68656623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupgx{¤¡¬¦«¯°¡xw}lpj]CA4--//./02234779;=?BDHJOQRSRSTTRPOHDB<87/9D><<63.lMPHIKKKNV`cggmu £ª¥£¬¨¶¢¨Áîǯxº|¡
¡
lpuvql
r¡¥µ©¢~kjk|~~q_\b^Yfj\lk^XKHOSQNMLFIPCDNFBCEGB>:97=<:;:987767;:6=:785456345566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<unhYppuqv~§ ªge¤~
z}
xxgMR>/..,/.-/000212457;?CFNPRTPQRSQNPIED>;<:CF?><852<?R5HHHLLMNR^o|s} ¨¦¢¡¢¨©«¨¬©ªµ«¿«¶ÈÈ·ÉÑϾ pi«©
¡§¢wz~¡{v«³ }¤¢¦¶°¨lss{}zof^[_^`fc`gg\REKKPOIJLFFMCGMFFCBGDA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Pqu`n}bw}|ªªBD}x{
w_bP460-1/,.00./..0015>AAMQRSPRSUSNSLEE@<>=GGAA@8662<9;FHGIIMOQYmw£§ªµ½¸¥®¬¬§¨´¬±·²²»±³¾³Ä¬»É˸Ŀ¸¥£°²¬ª£
¦¦ ¢¦¢ª¨¤
£ ª ¤©±£§·» £°££¤¢«¯³µ¢¥ªz{~|e_f[d`]bc^ff_[ODJHTOFHLFKHEFHAKFCFFA;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicXjpXz
v
ÚÈsV|z
qna@E64<2/110-,+-1/-4?DAMUQRTUUWUM[PGGD<>>FHCD@7;<5C;=FKIGHROPW ®£³ª²ÁÈÄ«³Å¶¬³À³¸¾¶¿´Á¶»»¤¸Æ©¶ÉǶ¾¹´¨£´°±§¯ª¤v¤¡«±³©¨®µ»²º¬¯µ¢±¬±µ¼·µ®µ §§£¨©°²º¸¸§·©¥ ysW`bTe``b__e_[TJDELVQIJJDJHEA@@KDBMF<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AEWQJL[ZQcdWzuq}
v{¿»£¼´y
zyn]V@EN<6:46AB764//6CHCQ[OQUWU\WO_UIKJA@?GKFEC;>@7D7?BJJEGWTP^¥£±´Ã¶¸ÁÌʶ»Ä½³´Á·¸Âµ¿°·t±´¦ºÅ¤°Æ¹±³±´¨¤µ¶ª± ¢¢¥±¥«§¤ ¬³º¢¨²¹µ»¾Ì¿ÅŽ½³Â·º¸¿·º·¹±¦±ª¾°½»Â¬»¨ª~yiVa_WicidU[cYVTIHGLQGDIJAHD>?BBK@@MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FQLALRWTZVZwjp
nzsxb¸¡£{z|}}xzueO\dGEL:Qda[^SF>;HPDZdQQYXZgZT`aMSOEA?IJHEFA@C=E6B>HGKMSZT^¯¸µº¹ÉÀ»½ÊÌ»½À»·µ¼¼·¾µº²Æ`u²¥±«¾ª¥¨«ª¤¢²µ «¨®¥§¦¥¤¢§°³¨²²¼¶Á½ÓÉÉÓÆÂÅÌÂÊÃÀ¾½¿»¼·´°¹··ÃºÆ¾ÃÉ°ºª¢¬¥¨¶}p^``\V`]geRXaVRVIEFNK@>HD=KB=B@=F>;H@796379>489:57045/26389373526?8@>GKRTTRPOQRQJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRLQ]gmlq
slsrsÕÀµ }x{{yt}zlepvY]\Peeb`ed][XW\MdmURmn_o_XgeUYTJDAKKHFHHHHBI9D?HKTTV]Z\¹À¹½·ÆÀ»¹ÊË»·º¶¸¹³¸µµ®¶¶du©p^¢¡¢¤«¥¨¥¤¬¤ª°·°¼¸ÔÐÎÖÏÉÌÒÌÏÎÊÇÀ¿ÂʽÁ½ÂÀÅÄÆÊ¿ÉÏ´¤»±µ°¬¹½~xj\_[X]`XabQ[`SQKCBEFE<@F>BIB@D=:E>=J?47535;=468977022/24169775555D3ELM>510006:477@IOJ;-&**(-./,@M+/54mI0Ht?>BD@CDFKODR\Yi`onlotu³¬¡¡
|s{
{ts{ylmu|iseilifjji`fihmZmt¤¼g[oh]ZYTHJNPJKQLTQHLAJGKP__bgjb·Ç°¹³»¾¶±ÄǶ°¹±°»¬³±§«·¬¶§§N §¥¡¦¬¯¨¯§³³ÓÔÔÖÑËÏÓÔÎÓÏÌÆÃÊпÊÉËÉÒÈÍÍÃÑÒ¸¯Ä¼Äº¦·»Ä¢mb[[\X_WXdYO\WNQCBIECI;AD>AH??B8;D>@I=46655;:687654/10146278875367C5B8?-0,1349=97,.,1;FL=),(.0007K?-46TW0DwC;B>EBACJM?UYSfWshqoyy ª¦}
|p{r~qyulpxr{nxslipmcimpyiw}~Ë¿Âߧmcxod[a`JPRUNY^P]]NPNTQUT\nnwr®¸¬´¨°¶«½Á±«µ¦¥¹§¬®¡¬´¤±®§«¬¤§¡¬¬ÎÒÕÑÍÌÒÓÓÐÔÑÎÈÃÔÑÈÎÒÓÓÖÍÒÑÅÒÖÆÁÏÈÈ鿸Ðwmd[`\U^Q]ZOOTPNH>AGBCF<AB?FE>@?:===<JA45465<888664412/03526768533;=<E=@11+/359?5901022-2EO3)/3.32=N248C}_2AtD:==I>@CFH<VRMO[uwmwp}~¡¡
y
{r~z
v
pwsls||w|sxqkrrioqzys{¾Ë~±vr
whaj]CZZ[WfdXekTX]]`c^cx{ª¤¤¢ ¡¨§ª±¹«¦´£¢®¢¤®¢§±¦k¢~
§°¢ ¤¤¨ÇÍÏÇÁËÐÓÑÔÒÎÓÍÆÖÓÍÔØÖÖØÕ×ÕÉÔÚÍÊØÖÑÊÄÃÌqna^]WRXR[OJGJIJ@;:;ECD<CD>HC?CB;;9<9GC46544<5687543250/2546745544<>=E?A62/-16;=081/254/-.;R017/532ED28>nb5=tM99@I<AD?A;PLFKYpu~isyr
x~xs{}w{oxpmuvx}t|ylvun}vuy{µ<AÆ¥~|jeWICecfchjdoy[_fhknin ¤¤¦²¤¥³ ¢¥¡© ¢±~
z~ª£}«³§§½ÃŹ¶ÅÍÑÐÑÏËÒËÉÔÏÑÕÚ××ØÔÙØÍØÛÎÉÚÚÒÖ¿ÌÍ´utmc[WQTPXUEFJIEE=:7:@AB:GE@EDBDA;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BT29254/7K75<`bA<svV87AH:?C><9QECJTlnopbqqs|~
}y
zyqz{uzzp}opzr{qnzuw}|u|°tYªÂ·pnc=^hrpqpnxweioruxr{ ª¡¢¦¬
}
~my{®ª¦®µ¼¨½ÆËÈÉËËÏÈÃÑÊÔÖØ×Ø×ÕÛ×ÓÙÛÖÏÛÚÑÖÈÕÌvxgfYXORS\GBEII>A>=8:=?;>H=@BAADA>?:87DB755479.566435532323647553457EBDCEB56<FNSM[nfcnsk`V>,4LG865433BF4=W_hLux^8;?F<<B<:9D?CGRk_mdbfkvqy~
|}~wyn{{tz¡vvtu}toou|
zv|¸Æ¥ÃʸxpeNeczw¢yyw{|vm¦ £«
{|¡¼¡¨¦¥§µ¾À¿¸ÇÉÍÎÅÍÊÑÖÕÔÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÜÆ
xwegc^SVVTLKDMD;==<9:<>9>A7>?@=@><9867CA6455=80665547745613854564557HH=DJE7925;H>;::7HP\ZRUXK9T>;95327I8=NYMHxxd5=>C=<@:6:>>@EQ_Yfa][htzylwvz|~}
{~
z
{u}um}}~t|}x~yot}
|~{©Ã ½¤~}rs¦
{iGq¡¤
¡~¦
¤¸¢§ £®¶º´«¿ÅÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Û·wvuihdU_ZRONHCLC==>99;:99<=6@>>==9::;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8589?=DRSRX^UXfmmmiqsx{{}|{}{~uzsztm~}w¡n©
z |~£¢¤¯ Wr¬\¢£¢
¤
³¡¡§±¸¬¤¼ÁÇÍÇÆÏÌÏÌÏ×ÏÑÔ®ÖÕØÚØÚÚ×ÖÙÙmzree[[VRUVC@ID??>:49:;7:;:3<<?=>7;9:1:G=:27=@50677255?65;55858:57735HR7GOK994=EJB>1FCLA98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:<@;BQKKSYPTcbxlb~omwxz{}|{v
sp
{uwvt
}¦¢¦¢§r²§
£ ¢©° n·ÄȲ¢¥²d¤ÍÈ
ª¤£
¥©¡¢²´¥£¼Á¾ÇÅÅÉÈÉÂÊÓÌÍÔ¨ÒÑÖÖÖØÚÔÓÚÎp|e`[\\MISXABGD;A>837;<:8=64::<:72?9929I:>67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF>;88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBcGv}|m~xz~{vv|mnz|xx|~£³§£ª³¢§¥¤®¢¸³¡¡¥°£¤§¨¬¯¤¡À£É¹«£¦²
¨¢
u²¤¡} ±®¢¤·¾´ÅÇĽÃÿÆÍÊÉÒ¦ÎÍÓÒÑÖØÓÐغpwsZ^S^TOHIMEBCD5>:77:?<<7=43669774=5;5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=88567=:JFDGN[\YJf`;Hzzn
z|y~px|~}orz~|x§»¬¨²½¯¥³³¨£¡°¬µ¢¸¥¤©¸§¥£©©£¯°ª »»®Ê¡j¶¸«°£¬½£^ª²|}´«¡¡ ¥¯¨¡¥³¸«ÂÈĵº½»ÅÇÇÂÑ ÆÉÍÍÄ×ÖÑËÓ nxfZXQ\PNEC><CAB8?885?G=<6<35345454B39:BM:B;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPdGb`bpJ?~s}um|}}pww{ªÂÀ¯½Æ»³´À¼´«³¶¨³½«»¤¨¹¸«§¦¢¢¤¢©¯²±«¤¢¦¥¤º¯©À¼²¹¥¥¨~¼°z¨±¬ ¤¬¡¡§¦¤¢¤°³§ÁÆï°º¶ÅÄ¿ͦÇÄÇüÖÑÍÄÊrp_YW]YLJAK@FG>A?B;:5>A==5<6>333242A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GD?CF\eG`igZ]\{uo~{q~{z§³ÆÉ¿ÂÌÂùǼ»¯«¹»³·º²À®¥Á¤«°¼½«®«££§«®´°ª ª¡°µ§£º»¶Á¼¬©²¥¤©
©Ääz¢¦ ®ª¡ ² ¤ ¥£¦¦¤¯®¥ÀÄµÉ¾¶Ï²Ä¿Ä¼³ÑÉÈ´rvjYVYhPLHBLKKJAA=CD<5AD;;3=8B332262A05IEN>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBeYNe\fTcjyr|xz¡¨º½ÇÈÉÁÒÉÊÂͽ³¼¾¨º¿½»Ã·¬Â©¬³¼¾ª°ª¤¥¤¬®³¶µ ¯¥¢£³½©¨½Á¤¶·°¬±¬©§¥¥vz
££ª¥|£¡µ¥¥£¢¥¦¤£©§¢²¬¨¼Àį¥²·Ì¿¹¯Ä³»¾Â¸ÂÃÂÀjw`VUZYIJLIFDDHCBADL:4DH9;4<7E.12352B25SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQG7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>jH_XaZddV x
¡®¦¤Â½ÇÃÇÅÓÍÎÍ˼·°¹¼´½Ë¼ÃÁ¶·¼³Àº¼®¯¨ ©¨¶®©²·¢§¡«·¸ª¥°¿Å±½¹´¨ªµ´®¯¥¬¨ ²Å§}}ª¥¡£¢Z¥e£³¥¡¬¬©§¦ ¤¨¥¶«ªº»Ã´¥³µËÀ¸ª¶¬²»¹®¨¸º½¸ilXUSSMDJRMK?AHEDHHH95EM;>8=@J.32025C55OVN<LFKRLOHGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|gV;=@BFBpEiIRebLF¥¢©¦¢¯¾¯¡Æ¼ÄÄÆÆÎÎÎÒʾ»¶±º»»¾ÏµÃ½¸¹·²±µ³¸³«¦«¬¹ª©§¯¯£¯¤§¤¥µÀ°¬¬´¿ÃºÀº´¨¹µ¹³¯¥®®¤¡tÁ}±¥£ ©¡ `J¥U°¯¤¯®«¥ ¥ §¢´©ª³»»»ª°²Ç¿¹¦¬«²²£¡²²´¤nkcZXMOJDOOPQ;HKIGICC>:KT?A:=EM07544:B44MWO<JKOUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@BAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}hW;:BC@=QEWSsbWFHª ¢¨¯¨
¡£¤µÈµ©Æ¹ÂÃÇÊÉÈÌÍƾ»³®¹¹ÁÁ̵ǺÁ¹µº°¯¯³µ§¤ª´µª©¦¬¤®¥¤¨¬º¿¨¬¶·¾Â¿¾¹´³Ä²¹½¬£¯µ¬¹¦¦v¿®¡ ¡¨§ª¡§nv¢¢®²¢ª¨ªª££¤¨¢±§©«¹¶½³²®¾¹· £§¨¥¦©©`c^^PIKFGMIVL=MENKLBCD<QV=AABDO18=77?B75TWN?HNQYSPQUKQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=.-R`MUHe^HE«¡»¯««¢¤££¶Æ¾´ÀºÂÂÇÈÅÂÍÈÁ¾¹²¯¸´ÀÂʵŲÁ¼µºª©°££ª´»¦©¦«ª©¯§£ª«¾¼¨½´¸¾Ç¼·¶¸Á²¾Á´©µ·«¾¥¢¢¼ ·©¥¢¡¨¤³¡¦¨©¤¢¢¡µ¯¥¤¯««ª££¨©¤¡¡³´ºµ¨µ²³¢¥ª¡u^Z]\IGEFMPHMEGGCSLJBEGAVRDH=AGQ1;B7:BF79\YKALPTUSMWRNUJE@JJNO9C@5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-19f\FCCpbGE§¤Ã¥©ª§¦¬¢«¶Ä¼¾·ÁÂÀÇÿÍÆ»½¹²°¸³¿Âȵ¿°¼·¹·¥¤«¬¡¡ªªÅ¢¤©«¦¬¯«¢©¨¿¸§¾±¸¶Ç¶µ¹¸À²¿Â·µ³´¯¾££® ¡£¥££½¤©¨« ¥½¢£¢©«¡¤ µ¬¥±§¯¦ª ¥¤«±µ±ª¥ª¬ ¨f`X_\NHGJNKHEDIA>QIA<GIH[ROK=HOU4BF9>HG5Ca[KCNRUWVQXTRUI@8RQPM:GA4CHQSIC;C>GVKC@O>K<06;GF>;FA46@9:?9;15D0-,/Mv\4KZ5,MnW<-=)#zbQ5CKQ:mRF<KxebVL¢£Å¬¡¬® £¥¦ª¬¶±£ª³¶ÄĽ¿µ¿Â»È¾Êǵ¸µ´°³³·ÁŶ¾±¸µ¸´¦¬ª¬¥¤Á¤ª ¤©¯¢¦¨½µ¥±½¹¶¶Ä²´¸º¿³ÄÁ¸¸®³µµ£¥¡® ¢¨¨«£Â©¬¦ ½¡¤««¬¦¢W¥¡ ¸ª¦µ£± ®¢£¦®²«©¡¡¥¥¤_bXb_KHJJNEEAGK>=JB99JJN]QQI=LV\9FI=DMI8Hb\LCLPSYYVWOZ^IA=WQIK?H?5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWrGE6=ue\KN¡Ã¨¥¢´¢²¨«¥ £©¬»°¨¬¶±ÈÅÁ²ÂýÆüÄɼ¯°¶°´¯¿Ä´¹±°¹´¬¨°©ª¥¡¨Á¬¬°ª£®±©¤¨½¶§·»¾¯·Ä´³ÃÀ³Ç´»·«³¶ª¢¦¤¬¢¨«°¯¯»²¦ ©¨¢¤¸ ¡¤¯¯¬¥§¡¢§´¦¦³£®¬¡¡¦¬¯¥¦¡
_dZfdJILJRBC@IH;;G?99OMU^RSJ>O^]=HPBLLI9Mc\LELRTY[SUO\bHA?ZQAHAKB7FELKM?;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<v]^?[T^eq@8;HweA4£ 餫³¡¤´ª³¬§¢¤²¬®©»±°µ´ÆÀÄõÀĽÉĵ¿È´«µ¨¯¸¬¿Ã³·®¬¶¹¥ª²«ª¦»´§° ®´²§«¹³¨º´¸²¹Àª·²Ä¾µÆ¨¿¯¶µ©§¬¡¦¥¢¢¥¯¸®²µ¶ ¨¤¤ ·¢¤¥¯±²§ª¦¢¨ ¡¯²¢¦®¤ª¤
¨©ª¡§
wbg\jiLOMNT=CANC::I?77RO]^RVQAW`\BJSHVKH:Td\NFON[W[RPQX]GAB[PBG>NC9HGHOP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1[bZ33806p[bH05IphVCWFyfC;¤£¢¦¿§¨¯°¡©µ«º±«£ª´¶±°¹·°·¸¸Ä½Ãǽ¼ÄÁÆÀ¸ÀÅÀº©¶¤¬»¬À··©¬±º¡±²¥§ª¹©¦°« °´³ª©¶¶¼³³¹·¬¸°Ã»¾¿¦Ã«°·®©««§«¡¢¡¡±¯³¬°¹© ¦¡¶©¥£¢°±´«³¨¬ ¥¢£³°¥¨¢¨¨¦£}
igk`lmWPQZTABET@;;HA7:XPd^PVWEY_]MLRN^KJ>Zc^NHPO\UYPKTWZI?DXPDF?N@=IGGQPB=DFBM?:1D?77547?=95E4+75/251.-.,1=*'+=\p=>1.0dZd@1647gY`F(?8l}g[V;{cC=¨¢ª½¢«°«£±¸ª¥¶´¬ µ½®³¸»º½¶¶À¿ÈĹÄÂÀÀ¸Ä½Á·¯µ§«·±»¾¾´¨®±¶«®¨®¦¨§»¤¬³¬¢±°³¬ª¶´µ¾®°±µ¬°µ²Á»Å·«½¯±¸¬ª£±¦¥ª¤³ª³«ª³§ ¦¥´®§¡®±§´²ª¤¨£¡¨µ©«¦¥¢
{dkqgoq^FYfVDBMXDZ9HB6>\Qh\NY]G[^]NMRXdJJC\b_PLMNXWXPJVVWL=EUJEDAM@AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,,%2+*5K1/'__`U150=`V^8)C3YT\gK6zfL@¤¡¤¬¶¥ª¦¯®·ª¯µ»§¦±·Å·±·½Áµ´ºÄ¾ÌƹÂÀº¾¹Ã·À¹±´«©º¶»¹¾´©°µ§¬ª¬«««¾¬®²£«°³®®¶²¹¸ª®®±¨µ¯´¼½Ê³ª¶µ±´°¯§¡³ ¨ ¦²¢ ¥¯¡¤£¦¨³©¡¦³¬ª¶¥¯±µ¯¤§«·¢¡«¥¢¡ y
{jmwmu{aE`kYIHZZ={JFD6AbTi[M\aJ[]ZRRRbaLKE_``QLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`U`/5(C_Q\.*B/JGP[H3cYUKD¡±¨±ª¦¤¯®¶©·µº¤¬´·É»´ºº¿¿´³·ÃÀÌȼü·¾¾¿·¾¼±¼§º¹·¶Â¶ª¬°·§®«¨£°ª¯»¤±³§¨£²´±²±µ±¸³©®«²§·¯¶´Äƶ©¶¶¬°©§£¶ §±¡¤±§ ª©¢¦¦¥¸§£²µ¬¨²§®±¶¬¥ ¬¨©¸¢¥ §£ u{lovt{~\Kem\KNc\?b{GI8GgWe\L^bMXYWTWTi]OOHa]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANHf27'GbLV%-B-=ELQ<3rkICC¥®¥¯«¨¥±³´«·²· «µ¹É¹®À»Â¸³±µÂÃÎÅÀÁ½´½¿¿º¾¼²Ä§©¹°¶¶¿¼®«²± §±¦¥¯¥²µ¬«±²ª©´»¬µ³µ´¬ª«¨¬©¹²±ÈÀ¸¥º°©¥¨®°¦¥£¯¤©¯££¢£¬£ ¢ª¦¦¹¤¬µ¶¥«¬¨¯¶®££©ª ¤³¡ §v}
|{{prq}|}\Sdo^NYf\FD[G;NmXb[L`bNVVUWTYg]QRLcZZTKGOTSNGIVS\N;P^IBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Bc;6*HeHJ+;H?3BHS,>k;GHª«¢ª±¤©¥³´±µµ²²¢«®½Ìº®ÀºÇ±´´ÂÃÑÅƾÀ³¾Á»¾·»Ä§¬·¬³¸¼À¯«±¬£§ª¨¤°¤ª²ª¯¬°¯°®«³¼§·±²©³©«¥¥£º¬ª²Ãº¶»©¨¨©¨²¥©¤£®ª¨¢£¥¬¢§©¢¦¤«¸²²¡©¢ ¬¯±¬ §¨©¤ ¦¤~~
|w~
rqpuk_Z`ncQsq\K;|F?WtXaZNc[NVVUWQ\b_SONgXWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*25>10485(5/*,.30;),,'%234$,2-860)(1<]J0.JgDF8<B05EKX1@Z>LE¨¢«³ªª°¶¹¶¯«¦«ª½É»°½·Â¯±¬³ÄÃÎÏÿ¿´ÀÂú¿³Èë®·²¸¿¾²«¤§ª°©§¨±¥´®ª°®²±´¬´¼¥¸³¬®§«£°·«ª»·¥·¶¤ª§¬«ª¡©§¦±²¤§¥¡¡¬ª¡ ¦¤¢ª¤£§±¸®®£¦¢ª«®©¢¥¤¤
££|zt|ru¤xj^`nfWecN?gLEbyWbYReTMVUUTO\]aUKMhVUWIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*39?./463)4+*,+.#4.-+&(+79*&6+<-2,&06WZ.0JgAA<<B+:JO^4D>HFD°¥£«±«ª¶¬¶²¬¦¬ª©¼ÀÀ¸¸³»µ¦²¯ÄÉËÑ¿Á»¹¿¾Á¸Á¹Àıµ±³º¿½²°¬ª«§¶ª¦¯ª¹°¨±²®²·ª··§´·«¬¤©ª£³³¨¨¤´µ ·® ª¨«¨«§ «¬©¹¶©ª©©¢ª ª¡ ¤¢¦£ª§´¯¨¦ª¢£¥§§ª£¤£ ~
¢t~xt~yv~oqggqx\askO^VHmxUdVQcOMUTTPOX[bUHPiTVSGPYUI>IHOQPxLMV=<KD?@A<@CUC9AK=5;E13;:7*4:=+-341*8**+*,))(/*&)%3;,$2)2021%/2Qb02?f=NX>C,>LT_/Ji5OD;±¡¦«®¬¥°´µ°¬¦°ª©º¾»À°®¹®¡·¯ÈÇÈÑÀ¾½»¼Â½ºÃÀ¾¿®²²±µ¼»Á±±²«³¨¤´¨¥³³¹±£®·²°²»«º¯ª®¶¬ªª¬£ ¶¨¡°³¢µª¨§ª£ª¡¢¬¨½¯¬®¬¢¨¨ ¬°¢¢ §§§ª±ª£ ¢¡£££§©¥}£
xt|uxyzssyg¤ui^dktg}SXp^JxsSeSQ^MMRZfNLVYdXFSiRQ?CNQaQ:IHLSIqQLS;<I?;<=;@@W<<?H73CB15:93-5::)-31--5)(+-,42#2)',%.;.&1.0-14%,0Lg:48_=ad?F1CP[[*HM9UA4²¡¤¦¬¤§¤§µ³±«¥°§ª¸¾À¼¯§¹ª¦¯°ÉÇÈѼ¿¾¹¾¿¼ÉºÀ¸°¯´±º»·À²³»¬¸¬¢´§§¬²¶¹³¨¨½¶®¶¾°½§¬µ¬©¯¤ ¥«§«³¥´¨«§©£©¤©¨©½¬´¯ª¤¡®³£¤¥¥¤©«¦ª¢¡¥©©
~
~}
¡~r{z~|hx|ztop{gxdagaqzmgx]]U@WzmTaPRXKLNru]HZ[gYEUfPD>JNDCA9HGKS?jaJQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11'/>KH0%90%,,09/,,+6'17#-0GjI14X=fcAJ7GS`U*=9DW>*² ©¦¥¡«¥¸³³¦ª±§¸Á½µ¯¢¸¨¨°ÂÉÉÌÁ¶½Àµ·¿¹ÈµÂµ³²µ²¼·¹½µ¹¶¿¡³§««°µ¸µ¬¾½ª³Á´¼¡¯³µª«°£¥¨ª£¥±§° «©¨¡©¤¨¡»¨®° «£¤¯¦¡£¤ª£¥¤¢¦¬{|~¢|yl~vyxc{zqooqvgsjgdg_lrlaio`o>ZxkU^OQQJIMTYWM]^lWDX`O^PHMDF;7HEKO<rhKK9AE;;==;;=J49B<3;G<4?18-68;2(09/,4/.=-*K>*49&'.34.0+/4&,:$41AhY13S=e_DL6KVdO*;2NX=# §¤£¨¤¸°¯£¯°ª«¸Á¹³¸¯«¨´ºÈËÈ¿¶Â¾°´½·Ä¶Ã±®¹²³¿´»¾·©¹¸½«¤´¨©ª±®º±«¼½¥°Áµ¶¢¯·µ¦§§±³ ¤¥§¡¥¬¨© ª¯§ ¦£© ±¹£°¯¡¬¡¤¦§©¤©¦ ©¡ª}~}| x
}
{sp}qtt`yxhnppnh}qc{mieb^d
~_ZrjqKJhXZNPLJHPRPIN\_nSDXZRhOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23.:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53<fd24M?e]FO=QZgH*>0XV5(§¬ ¡¤¢¸«²¥´´ª©¹Ãµ³·®°µÆÈÁ·¾Á¹±´¼¶¿»¾¯ª½°³¾±¼Â¹©»º·§¨µ©¨«±³±¨¾¸¦¼·²±¸°¨¥§¯±¡¤ ¤¤ ¯§¡£¨¯¡ ¡¤¤¢·°¡¦°«¬£¯ª¥©¥¦«¦¢¨¢
z~zx
~yzprwoot_ywdklkhgmerkkehYas^ZkuiYG}][XOOJHHRUF2:_^lPDXVYeLHJEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<#8R=*113>D5,-'42+;+139cl84GBg[HTCT]hE.;1_T,2£¢©¥¡£¡¸ª°¡»¹¦¬½Ä³°®¢µ¯¯´ÄĽ³¾º·±³¹¸º¸º®¿³´¸¯¿Á¸¬½º´¦¢³«¨ª³¬®²£Â¶¦©··«²»©¦¥¨¯«¢§¥¦¡²¦¥©©¡ ¥¤¹¨¤§¦¥¡¨©¢¡¡¡ ¢«¢£§¤y|
}x
{w~{lurmlsbyuhgigemgghdfhi^fbifZezb`QsT[[SLIGIOS@!+j^jLCVU^`KHGEC.:B<F<6KPD8:D357==895?:;4>8@L=>93)8><:9*6@3.E4(+,>0-N?.+-7-1195,&.5-80576`tB3CDh[KWGU`hB378bM'2¤¤¥¦¤µ¨ªº·§¬ÃÀ·¯¬¡µ®§®¯·ÁÀ½±Á·°¯²¶µ¸·µ¬ª¼´¯²±½À·®¼¼±¥¶¬¦¦µª«¯¡ Ĭª§±´«¬´º¨©«±¥ª¨¥¦®£¥ª¡¢ §¶¦¯ª®¡¡¡ ¦¢ ¦¢§ x
w{~{s}gypkjlguskbgdbtadefeiibgoY^X]md`MhW[`VIGHKLRX>9`liGBUS][IHFEA.<?9A89RF@7:B037=7692:<97:9DN=B<0*<@;A<-5B37=+*,0A*JK./*+3722(57$+7.72685\yN2>HiZLZJVbfA:3AdG%5¤ ® ¥´²£²¾·¡±Å»¹°±£¶¬«®©¹¾¼»À²¯¯®¶¯³¹²§«¹±¯®³¶»¶°¹¾¬¥µ« ¡±¥«¯¥Ä¡³¥¯²°·µ¬®¬®¢§ª¥§¦ ¤£© °¦¹§¢¡£¥¡¨©§§{t
|
ofynhkjgqrk[hcar`dgjnkfjfdl\lmvqaTbhceZIFLMOXQPUaeT@VSYUFGFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24;6#3*)6.55465Z|]1:Kj[M[KXdc@A1IdB'4¢±¡©²°¹À¶ ´Á»½¹±¦¶°©®¥·¹·¸¬»¯««·ª´¹¥²µ±¯©±·¶±³¶»§©¶©ª£ªªÂ¯¥¯±¶µ¬¬±¯ª¢¤¬©§¤©£¥ £«ª©º¦¤ ¡k¢q¤v«¨¡x
mi~wrl}o]d`gkuwfhvifX]itnNPjcfqf^dfnki]]^
hOKD8ETg^JHPPUUKHS`oteE[QUPFGFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,,08>G701.*.*/668,#1'214:276Xl15Ok[N\K[fb>G1Ob<+/¤± ª«£½Å¯©·Â¸½¼§¶±¦«¤¸´²³°¹®ª§¬´¥°µ¢§¸¶µ¨§¬¶³®´®³¢©´«¢¥§¨®½¨§°´¸®¤¨ª«¦¡¡¨¨¡¦¦§¨ ¨ª£´¯£¢££¡¡¡¥§¬rx uif~sy o~|¡ {tvlnied{mrbTmcmiqXipnW]i[kjZpmyriZ^FN>F^MERVVQPRWTg]LYKRRPEGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82*/1<I9/01.*/(-4583%&2115>1<8Xt15Rk[N\L[g_=K1U`7/(¦¬«ª¨ª¿Ã¯²¹¼·À¿ª¤·±ª¬¦³µ®¯³¶«©¥±¥µ³¬µ¶´¦§¨³±²¨®ª¡³© ¤¤¢¤°·¥¦§·½¦¬§©ª«§¦¢ ¨¤§£¤¥ª£¤¦¦¡¶¤£ £®©£±¤yÔ¨ÀÆxw±¥·dÀ¿yy|Êq¼Å{r¶§º{l±«°yhlX±®oei¼¼nhzmpØ~Skb¶²~qu¡ªWOXaOVNFT[XQPR\W[P@\EQNDFI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww11Tk\O[M^g\>L1Z\41!¦§ª¥²©±Â½²µ¿µ¸¿Â«¦´©¨¯´ª¯¶´¨¨¦¶¥¨¹¯²²¶ª¥¤§²¯®±¦«§¤²¤¢¡¡ ±®£ ´º¢ª¨ ¬¤¢¢ª © ¨¨§¢§£¡°££
°kjª~g
eq§q®¡¤~wº|k¡v±_j´[¥e`fzfixj©e¾rg¦v±j|±xucmm§n\ EigEu`}f{£¦Y_«ixzj¨8J¯[WTmcZLOX_\WV;NOVV/ITSJCEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:6/'$203B/=;Uv2-Vj\OYL_gY:M5^Y31¢§¥£¤ª±·´½¾°·Å²¸ºÃ§©°¬¯©©±¯¤±º°¤¥¯³£©¹©³²°£¥¡ª°¬¯¦¨£¢±£¯¨¢´³¡ª¡¬¬ £ª¥¡¡§¤£¡ ¬¦¦ ¡µµy
©µw³·«~k¦z
w«gj±[¬{tpx
°vwqkjl|O¥XHcc~ch¥_yquR^P©mcq}a/R¢n[Tkg`LK\cX\ZB>°wWXA#MhFCDA@A19>88:84;:9<9:A:E::;6:CB8=?KNH:5:AFB@AD<FD;0201;F,0.840,.(/2,>831/2-D1<<S}n3+Xj\OXM_fW7J8aU50³¦¦¡®©¨³¬ª»¶Â°¼Â¸·Â«¬¯®§®³ª¢¯¼«¢§µ£«¶¥¥²³¨£¡§ª²¨°¨¦ ° ¯£¤¨µ®¡©©§© ¦©£ £¥££«¥¢ Õ¹q°ÂÆ|Ö»|¦¤z¢¥z¬yV¯{~j¹Z¹w}¦|zªy{±mt»
nP¯§ÅQ zc`ªbsrl_Sµ´È
|c¤3Bu]PjhdP@XfYdaJHMkJZSOYfZCC?E?0<<59;74<<8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DB.00483+-).323971#%5*>3==Qwj6*Yi\J[P_fT7G:aP72%¢±¨©¥³ª¥´§¤¼·Á±ºÀ²¶µ½´¶§²±£±³¦ ¯¶©¨º®£°²¡²´±¡¤§©±©´©¥¬¢¬©°¨£¬¢§¡¦¢¢¡£¡¢¢§ ¦¡¦ ²nhµq«p¦r´ts¶{¥¢~¤~°uÒÑu[®|
¤oª¦k
}}{±sx³et
nfRÉZÂ\yb__vsb^YÊo¿uMKµSUÆdTQjceXAOj_liPUFI9=WR[VYHB?J<2?;5=<56>;7><=C;G9;@7;>D;.CRJG>?<IJFCEE>II:1746@>/.24252-).26,742&60;5:=Prh9'Wi\ANT_eP5G=aM62.¢¥¯¬¥©º¬¦µ¥§¶»¼²»¿¸·µ»»´¦µ´¢²²£ ¬°¥§º®¤²±´¸ª ¥¡ª¤²¨¬ª¥©£ª¡§«°¥¢¬¥¡¤§ §§¢£®¡¢¥¢
¬{w¨v£©o§¢¢~®
³\r³R®}¤q×}w~w¯w´ael[°WKuyf`^vwgj]¯wxl5yÈ®²_BTo]g`EPl_pmVUM.ebhSYP;AD@L:5?91><16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@=V_cN6GC`I:77 ¸±³Á¬¨²§ª²º¸´¹¾¹¸³¶¾¶¦¸´ µ ©¬ §¶¬¨±±«´¤© ¨¢µ§¦ª¤¥¢£§§¯¥¡©¢¢©¦¡¦©¤¡ ¡ ¦©}}¥y¡ªp¦ ¢£ª{yo±Z¨ ytØvt§¤|{²^d }m\«\[hgªcr{jq]«Z kneOJC¡\ZMt]bfMZa_rt_JU5JXHE=HFAM35A8.;>05A78@<6=<F?:<6?=B7.HVJE@H6KIN@IK@EN::@4.;>002154+*05/7,&21($$6671<PeeA&Uf[?1T_bL7FI_C1=7¢¿¬³Â®«¨¦´°¸±¶¿¹º³²¸¼ª»µ ±¥¦§§ª±©°ª¶ª¯¡¡ ¦¤¤º¢£«¡£ ©°¯¦§¦¤¨¬¨©¨ ¤£¡¡¡ ¡«®nr´t©w¦s´yt´¥£¤u¸o{¢kk¶Z¡ei ¢§mr´t²jku³af¢nk\`N¡|Rs£ly~np\¯V<wfTon.[§ObRkeblZb\`p|cSYQ>>mo2BB@?M9!7@6.;@37C58??3;<CDBJFMIF62JTKEBJ6IJP?HOCFP=<E50;;010/75,+,326/#00,,289/9N`eD'UdY>/U^aL5FM^91A8¥»¢±¿®««§·©¸¯µÁµ½²°»¸«Á¶ª«¡§¤¢««§¶£³¨®ª¡¨ ¥«¹£¥£¡«¶¯§¬©¦¥£«²¤ ¨«°¡¢¢ ¡©ªÓ»t±ÄÃ}Õ¸y§y¢¶u}wv²`ºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¢~t«}¾ns¼t²uxmqm¤t½]w}[ay¼jZV[iz^iadfbmyoY[YCA@r?CG*5H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,<:08LXaF'TcX</T^`K5;L[-6@9§¢¼¢±Â°©ª¬±¨¹¯·Å±»³¯¼°®Á²¦£¤¡ª¥ª²¤µ§¤ «§¬¹£®¡¦ £¯¹°«£§§¥¤ ¨«©¤²¢¤§¢¡¤° ©
¶¸xµwnlnsoysÁ»¼z²¨pt¹|{|¤»¹½uy³£tvut°ufi¶trpw¶^y}gymyb¬pt
X[§iDdYTf_c]cQffqmuBMPMD;ZL?J3<0 8>;.3=A99?=;<C6BSYZZ[[Z[^`b`]SGGH4DITAKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7KT_G'SbW8*O]]=+;VV'=:<¦¡¡¿¦³Â´«ª¨«ª»¯±Æ¯µ´¯¸§µ¹®«¤¢§ ¬¤®ª¦¶¨¨ £¬¤¾§¡ª¢¡¨¡²µ¶¬¤¤¢¦¥«©¥¦¢©§¦£¨¡¬¢°©§¢k~i¨ys~uze{¾¿Àºnq
_rjZ]adk`cmvbke^_cqhr|fj~qty~}b[xthP\n|{jXlyrIJo
pNsMDV\faL[Wfc^OZmvjrRODEM<HI<M?2,2A?8/5?C<9;@;=C>RVVWYZ[[\]`aaa`\UG5DFUEJOHFPIIH;8=51:.1;:./-76=5&"/*2,%;8-7IR_I'S_V4)P^L(3>[O'?2>¨¨¡Á¤´º¶£¬¦®§¨µ²¬È¬°´¶¤¾±³§¡¤ª£¬§®¤¥µª¤¢¦©¾¨¨¥ ¥©§°²¾¬§§¢ª¨¤¬££§¬¢ª¢®¦ ±¥¢¨£¥§£hn}qv´©
¡z¤
li{}urxyvu{jstudw}vkpzl_b[ogLXYej_WYpzomfSOFR9OZNRO(+;JB635=@A9:C><ENSSTVWXZZ\]`bba_^^[TKCSGKNDGPLOI<:;489,2;820)6IRO8")+/2#4;*7FO[J'R^T10T^:+=8]K,<-@² ³¢¿¢£±±· ©¦³§¥°µªÉ«²¦µ¦À¨´¡¥¦¥ «§¬£¤·¬ ª¦Á«¤¢£¨¨§²Ã¯«ª©«¡¡¢¥¯¥¡¤¨«¦¡°¡¢§¡£¤¡{©¨
{
£~e¡³®w{~wyzogykuyrisyujtcxf_hdcdfjXk{qjk\SLPD_UF@??,4@F;45;>A;<?>>HNNOPSTVVXZ\_aca_^]]^]XVJKLBIOMRJ;<:786/3964.(&$-1..)+*7%+<(6CMLD/T\Q05M[17E4\G5<,@³ ¹¯¾¬«±² ª¦²¢¬³°Æ°«¤³¯¼¤´ §¢¡¨¦©¦¤¦³µ°¦®¾ «¢¡©
©¬¢´Ç³©¤ª§© ¥« ª®¨¤£«¡¬ ¥°¤¨¥©f|e~cxlhjz£«kd~g
eeihz¡kh¢wkj¢slnzyXe]
^lv[hswwnxxsmysw{i
X]jsd]sik|qmc]QNWIdX@J4=F7?FD71<=?AC;;DGHHILNORRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%.++'6*$;'/AI[I.6ZO6)EY/DO1YB;?.=¥º¼¹¯¬²°«¥¨®°§®°½±ª¨¥°° ¤¢§¬¬£¦¨©³®££°¦¶¹¥®£¡ ¦{¥¬¢¨³Ã·¥¢§¯££¤ª¨¡ ª¯©©£ª§¦§ ¬¡¥±¤«¡¥«~¾r´r
hw¹Ä¸q¡£{¦sª|ËÀÀ»q£|À½ÁÀ{z¿}k¥²ooÊzwvyyq{px
ylube^xd_eb^thmdbXLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA@?=6468266*&%#)*&.+*)109*#>H[L*#CP/#F[3PY/UAB;/8¢¸Ã´°¯¿©©£¯©°¯¦²µ¯«¦§¥±« «¢ ª§¢«¢¥©¥¥´¤£¦®¬¸´§¯¢¥ ¡ ¦«¤«¿¿±¡©®©¢£¤ª£ ¡¬®§«¦£¡¥¤¤©¤©ª«¢¦¢¤Îyz¥z_]¨ ¡|§t«¯^d©z¨
t³c« ³j®s|¸aY£Ínu{Û{q~ue{vvl}n}
}k_pjof`_xd\qhjcf`RTSW^JOD5AHED8>6;@?A;=8@>>?BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-J0';\:L-!P@F4.1Á¿¿´´°·£ª©´«¦²¬¤¬¦°ª¡§¦¢¯¡¨§£¦¡°¬¦®°«¨¬ ¥¤§£®¤«°¨¿Æ³¨©±®¢¡ªª¡®®¦©¨¦¦£ ª¬³¥¢ªª¤§§¢±¢§¡ p
u¨q°|r¬} ¥w«}r~«v{|~ª¡}«z zVÄzoÁ}mupmfweoawnrnldmsuo`fmd_ohjnfcWS\`ZRRC8II@C<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;92478452&# 1' 1''45-&7=WJ-<(=1)3V@F!G;C1-+¯ÓÅƲ³ ££¢¢®¶¯©±§©«¨®««¦¢££¦«¢¦ ©¨¢°¬¨¨¯¬¨§©£¢¡¬¦£¯¬£¬µ©¹Í²¦®¬¢®¬¡ª±§©©ª¨£¡ª¯±¢¨¬¯¦¦«ª«²¤¤¦
¤j¤uz©uz²q¥p¤_`R«®u®§z
{f£¤£}©~®^|¨U¢z£|ïÅs¯´³¹qb©¯Âthlnlxxwnkfddqpf{ic\V_iXXTLLQLCCAB;CA@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ('"+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÂÉÕÕÀ¡«¨¡¯¢°µ°¯©£¨§ª««©¤¦¥¦§¦¤¬£¬¡¤¯¢ª¤¶°® ©¦£¢§ ¦±¦£¨±¬¶È²µ©¬ª¢ ¥´¡§«©¢ª¨¡¡©¡³¢ª³²¢ª¨°°·¥¤¨|ªlu«y|°n¤Ò·´¸É²^_©¤ zxªÉs£§¨~ÆÆwe¡¥s}¯^oµc±uK£m§Gd{o}nyt|zm[ejrqfj^aXcm\^YILLKEDBB=A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\]\XMB75785/)(%&%$&),5FNPPMFLJVF*L0/>-4NTQ;<F2,$¨¤Àƹ©²®¬¥¢²¹¬ª¡¦¨¦«¬©¦ ¦¤«£®¬¦¡¬©¥§µ¢¨«¶²¬¦ ¥¦¢ ª¦¡£§©°´Â±²ª¨¥¢¤¯¦¡¥¥©®«¦¤«£¶¬ ±¹°¯¨´´´¦©¤¡Nxz£|¤¦¸{|y¹ÌÆöw¡~v¤¤§~¯¬}a¥l£p
}r¬`¤rq`¼}RUu£{|ryr}p\lnwrjnZc_hnbd]LLQSAHGFI99K>B108856877-*5==?BDGILNPTWYYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOTF<E2:P[T6?G,- ©¬¤«¹«¯ ¡¬³´¦¡¦¯®®©¦¥¥£§¡²®¢©§² ©¤¢µ¢£¢ªµ¹¤££¡²¦¤ ¢¯¤¨¢µ±Ã±ªª§£¤¥¥£§¡¬¢¤®¥»¬¡··®µ³¹²´¨±¢¥ÑµÃ·y
¦x¢w
¥q«
´nri£|s®¥¢¦mp²\¥szl{~n©a¢qqbs²¸hw¤}v{xlhwixsn~t\ddmmeh`JZWX<HF?T3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^``]Z[ZXURRQF:2230/++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH#)%r¿¿¼»µ¨¤¶¡¢£©§®©«¥¡¦¡ µ§¢©§°£«£¤£ª´´¤¦©® ¦£§µ¡ª£µ«Â¯©«©¢¢ ¦£¦£¥©¦¬ £¬¦½¬¾°£°´»¬µ¨ª³¥©{¨}|°w¤¥m²o {¡¨¬
®
¨¡¢
{~«ªw y¯]£|¦§d|tk®]¥kq
]`[ m¥xy~jl}b}tmy`gepngghBY_[=JS2T8BBC7$$3+''3, /667436:@CFIKMNQSSSVZ]_a`aaa^][ZWSPONI7052.*,ATVVVTTUUUUTTUTSSVWWXVUVQHFIJ#((¼©ÆöÁ´ ®¸¥£¤£ ¯®©£¹ ¢« ¯ª®¡ª©¥®°¬¦ ¨¢¡¥¡¤¨¥¶¨¿®¤©£¦¤££§ªª¡£©¨¾¥Ã¬«£¢¬³»¬¯¨¢µ±ª¬v¯~
}ºd°e}¡§°
¦£¡¢
[lj³`{{±lgm±[}´[¤kÈ¢e{¼YvµZ²}R¯z¬X¡m§yw|cs|axs|aifpmfeeOUc\AT^=H(>9=4!!,$2. *1/04579:<ACFHJLNPPRTWZ^`_`ab__\[XUPNJGC553./@UYXWXWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò´±·½»´Á³£¦¥¶© ³±¨¢´ ³¨ª«°¬®¨¢¯¬¨§£¨®©¡¥£¢¥¢©²¨¼¯¥¨|¡ ¨§¬¥¤¤¢¤©» Ƨ¥©¢¬µ·®¯¨¡½¯®®©£®¤¸Ãº§¬¯§¥«~սªb£¿½|~£×º·µ
½¾j£o«nz²±Çk«°½¬xw¢¾»t¥wxa|ycgx{`kekjaPb[Si\@T`BL)<:5/$%2 $(0496678;>ADFGJKMNNQTW]a\__a^`[\YTQMHC><A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ»´´±¿º²½³¢®¦¥³¦¥¿©¶°§¡¿¦¦±±¹¨®¥§¯¬®¦£¬¡¥ª £¦§ ¨¢ ¬¬©¸§£{¦¨¨§©¦¡¢«»©Å£ ¯£«´µ«±«¢½ª°°tvª¤·
epg¬mow¤ u°pr¨£®¤rlmlexnmqzipifqhi
gpd]cioY]g~x¦`brofd¡z
tdwgjx~xdlcflbKeWJkY:PdDP'J:+# ",)-2.5:457:<?ABDEHKLMOQSV\WZ\`_a]][TPLHD=:AB7MXYZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨´©º¹²³ª©¢®¤³ª½±Ãǽ´©¿«¬£ ¦«º£¤¬¥ª
¥ª¢¤£ ¥§©£ª ¥¦§¯¹ª«{¦¦§¡°¦¢¬¹ °Â¨¤³¦¬±²«¯©º¥°¹¡©¥µ¢©ª³£¬¡´£¡¡¢¡¤¡¬§¤~gtvtq§m|
pgvnwu|yikddocU`X@iZGb`NX+E=+&!640/!%2(*799469;>?ABDFJKKMPPQWUVY^_ac]^TQJEC>9=@ASX[\YWXXXXXYXXZ[[\^__`^^^__```_YY`¥©ª¤µ·®®¢°¤ ¶±ªÄ»Ä¹·©¡¥¥°¨£¶§©µ¦§¬£§¬£¡¨£¨©¦¡£§¡´¹§ª|¡¤§µ£¦¬·¨¯Â®£·§°¯±®ª«µ»¢±¾¦¤¦µ¢¦©£¬°¡¤²ª±¥¡¤«¬¢ª
~fuvytj}
xqrx~q{~ind_pi`[_YmbP`dOY9GFE=2<=8/*&+)&&406658:==?AACHJGJKLMSSSUZ``i`eVPJACB;9EMV[^^[Z\[[[\]]_^]^_`aabaaa`bbbdb\[c¤§£°³¬®£©§ ¨µª£²ºª«¡¢z¢°¤¥±©¸¦£©¢®¤¨ ¡®ª¨¨¨¸¶£¥y¡§¸£¯µ¢°¯t¤¾£² x{¡¬´½w®¥ ©~d\bv¤~n´£¨¯¬¤e tzq©l£¨e¥
wkvq|ai[vghqy¢dwvhny~jpe_vokkg\ecaaoRZ=MMNRF=@TB91/&4:306678<;>@ABFHBGGIKLTUUY]`hggXQI<DG<9VR[`ab`^`_`aa_\]___aabcdabaaedchd^]f¦£¡°±¬«©¥©¤§¤ª´®±¥©¦ªs¯¨«§¸ ¤~«¤§¢
t®¥¨£¹³§ uv¥²µ´½§¡~§¢{¤°¹§
±©¯¢y¬¢¨«©w¥z§{²zcynqzqt
xht t{}ijxzppgdwmilj\diier[\HTLQ@E5-YTT6)!09=>643568;:=>>?DI@IEJKGRXZX[aahfYQH9DK<>bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah£¦®®«¨¬ ¨°§§ª¥Å¼¯ ¥§´«¦¢ ¾¡|
¬£¡¡¨¢£¹±§
pu£«´´®Ê«¯·
°²°
©§|¨r{w¦h¤y´§©Â«¡q¥}
²¡} |
ms{r}
uÅf©¢jogwt{vghupghk^bnlflXfF\QL2E46Mac7&4<DGD:63658;8>==>BL?NIJKCPZ]\Wb^jl\QE=KM@JdX]cghgbbbbcc`_babcccdiicbbbecafcbbi¢°¨©¨¥« ¤¹±©«¦¢¤ª¢¤©µ¢¯ ¦¥½ y«¢
w ¤¢¸¬¥bm §~¡§ ® ¬±¤«~¢uk«tM«x©©ª«~¡{z§ilg¶~n`cX{dgs}yk]|n_Sq
\`ly`Ye~q§ªk£nr¥pgdlZlzeY_~aWPovemtqjjn^jolkhWgN]XE9@4GD^k4+ICQMN=84859;6@;;>BO>QRLMBJ[]_W^_bv`ME:MOMTb\[fgiibbdaddbab`cdcabjkdbddgdbgeach ¹ ª£¦¬¡¶¼«®¢ ¥««´¡§ ¦´u¦~
¬£©¥°¦¢in ¡¥£¡ w§¢¨«¯¥z}}¢pr{ym©|¢sv¦f~w¤^{}s¢n·´ºs¶¨dƸ{p¶q¤ct¬«`}j³~n}q£ls¤s}£^³o{³tr[²ibosuqhnXkkrrd[g]aKD=D5QAZq2<RF_JS=<395::6D;;@IP?TMNQ@E_^[YX``{dIC8LWUVbaZffkkbbeadc`ab`dd_`cknccddhdbgfchh£¹« ¥¸µ ¡¢£¤«±¬ª ¤«x
p¡}¨ ¢¨§¤~k{~} w¢ r¢©§©¬®}z y£xs}§£d¡}lhn{§}rgsªsªg]
vhªj¸f\©pa^§vvhumj¦\¨~w»j}©Z]³g\nqxwki[piwxa^dVaAPEO7VBRn4JZY^NZD@151;;7H?:CGU?XRX]>Db]V`Qac|iEB9N[^YdfXfgmmbbe_aa__``ec^bdoq_deekdcihgkiª¶¨c¬º²°«¥§¬°§ª¢¡ £iq{z£¨¢iy{~¡ ¢rh p© ¤©¢©}°¤¢¸v£³¢£xz«~¢r¡}
°µ}k¡x~´££«¨{|~sªZ]o{xbL{{
dzBMY¢jr|nvy±³~¦t~mq|ori£]vHec`sp}}nf_khu{bc_P]V\TV@YEQgERV\aX_ID=B8@A:IE8LEXAVQZVDFa\Z`K`m}qEC<U^bZejVhhmobff^a`\]^`hb_edvl^egfldelhhki±®S_¡§´º³³¨¢©§ «£ §¡w
ny
}r r¨|l
q¡x
{¢£®}µ{¦z©¢~§hwm~s sq|
o®}£§¤p^©hu£co¥aÓ|zxrsc¢
~¢r¢uk³`sª²§¼wm¿¦ª´^o~ros¢r^¤gt¦`h¦lÓznvykyvrl©¥g_dypkgfcmuwf_aQZePQaHWIT_WS[dj[eQFCKLJKBJE8P@PMXSXORQ`eeiRdxywIFEc]eZhjSihjocjf`c_\]]_ibahe|d^dgdkdjlfhlh°¬T\K~©¯²µ°²£¦ £¤§¨
{p}h}wpl|£ª
ywnw
y¢£ ³¡¢¶z¬§¤®¥p©}¤¢q¢®¤¯¢vµ¶¶É¢ta©my u¡w }oLf£ps¥{ytbl~ lrd`rtk{j´µ´Æ¦s~zj«tlswiytqPD}³^jujxfkgbttpmU\RXgORhIULXRU\gknUgWMJAJMJHJNAQJPdcimetrs~x{nu{{TQOm^h[kiRjhilgmfce_\\\_ibdhk{_]dgcjfnmeile¢¯§
f?¡³¬¯¯µ¢¢§¢¡£¤¦¥yjye~yui
z¥©z}yp y~¥§gnxl¢d|q¥xph§|¤z rv¹n¢b}¢nsj«ku mo¦`iiu¢}_
uobh¡eiupdgnr¢Z_[c¡n]p{trd¥nx¢df§hrn¡oRn ^d§T]TmmrjqmphkxskoQVUUeYSmIXO\HXhhsjYkVPREV\LXRaUhj^wuz|p||r{svv^QsagbqgPkhhklohdg_]]]`jbiivu]\chcjirlfkmc¥¦zetm§®¥ª°±¦ª¤¡¡¡¡{qh|st}|e|
¦¢«
}si¥}
©¦¦x~¥²¯¥yz©t¦n¥¢¼n}¥¯¡}¦{r¨ g~o¬cw¨l©¢vw«¦k°kv³©loo a«ªw§w}
¤ iu¬f¶sv¾£Y¦«`uqso{upbj~nhlSUYU``\jL\Q\I]lmv`[qX[_Zgsenoqcqt`wz~yryr~{{vbyddnsdRlggolrifia_^\ajbllzo\\biamiwmglnb¦ª¤ªª¨§®£ª£¤¨
t
zo}surn}{
¥¥¥uol¨ª¢ t~y¯¤qy
{r§q}}zx{~~w ¡{~k
[yysypin~rtq
e_wvtuo{oon^wixfªt}jou|umlfsw{wZjWyhmwrqowxo]lmigVY^W\dkdUaT^Q_owykjwejjju|pqtsaoubs{xuyuy
}{mldyn^Wnghukxjiid\`ZcielqunZ[bkdlkymhloa¹©§¡¢¦¤¤«¢ª ¦¨~r|}~ztrp{}
x~£{§¡
wqª
¨ ª~¨§xq{p©p}qjo|hn] sqtkvtYrn~~i]icz
_ix{|viykbqrw_r¨gnwowndfcyzZ[ifmv[zxwtmsrf\mkkbYX]YXkq[^`Y^]er}zsotcjji{|rzwtdmthl{~uz|{yyp{}s~zrhT\rilvpugkgd]aYjhkjqrmW[emlgryohjm`ª±¡£¡¨¢¡}«¡¤{|r}v
ror~z¦ xz¬¡ª¡¢££ª¢¨§¡|y
¨~~±¥±¦ k|vwe}
w|{u£~vqt
x§{
uj{yiqh`sp}zwvovs\^ogn_^YZ\RgqUc[[alht{|rnpcjih{mx~phoplf{rw}{m|zx|~zxNdvjsnq{ekebb`[sfpfrqlU]ltmhxzpgikeº¢¡¤ z©
|x{mxr~ml~z~}©q
}z©
¦¢¦ ¦x}
¦||
ª ª pxqta~u~
nyvu£
u~}rs|{y
¨uzmj}zmhklf^y~g|{vtuuzw\`p}mu`cZ[^QfmSeZ]akiuz~pllcjjgkrkjsnxnynv}
vr~{z|{`i{kuhiejc`i[cuhobumkTbqyeoyzrejmm¸¡¤zw¥¤xy
|l{xr
}|kh}|~|¦p ¡
|§v£ ¡¢¢¤z
¡~|¤ ¦~~vtpv`}r|q~
ixrys}}qz|
{{¦|
t
xdqz~xypkjf^}sh|uus|sj^`tvpwdcX]^RjhTdX^ahjvxqfkclgejm}gmpj}w
zkr}tv|z}jrntibilb_qUtomn`xhlWjtvctzzqbkoy³¥¥ {u£¡x{~~p~ztu
~wgc}x}y}o¥¦v¡¡z¤{x~s¢ ¢|wr~n{d|pk
fvo}~y}}|ryz
£wuys^ww|s}wfkc`~ijvstu}q|ccasnurmaY_]ZkdRbW_`iluypbjclfh|khthloh|xmqt|~z~|muttmeljbcuVipn`xglajvpex{yp_ql
®¦¨
|v¨yx{}|{xsxys}d^}~
t}~~£ ~q{¦ t§um{o¢|zrzkul|~n
xo~~esj}
tz~vx~}¥y
t|rs
l_ytxp{nanbd{anovswwssav`oluno][^]]j]O]Wbahmszk_iejchwmflhilg|zwos}tz}z}|ryyxnlkh_irchqoevgmlazhj|{wpawmª ¤¨|v¬|v}{|{vwotszo
}~|a\~szz¤||£
n¢¡p
g{
p¡}{
tsvkqnv|tnqt||eqmz~~
utyn~}
ª{}~
w}onbgwstnza]o`jt^pjzxxlrpey]mlsmsXZ]_ajZOWWdcfqqe]ihgbgqndigeigzwuos|u
x
|w
zw{{ryjk_phskqnmqgoke{bnywpkvw£¢¨¡¦t© s{v
wxrs{
kroymvnq[Y~vu w~
n¡l¥
gw~~|}ovplmop{ispwuygsov}
{zwtp|{
¤|vwwmj\qrqoowY]o`oj^oi|zpmmjmw`pokqmYX`aamWQSYefbupb]kmdcfkm`ff_gktqrptyvywv
{{vjqb|b
|opltjhnlvw_q~x{tus~¥§
~t
zrwtpr
squlnlumw}mnUQ«yvry wz¤|s
ih¡
qw{{||kwjnklmzby~vzw}zhumu{r{
pw{{~}}x|vohkw^womkprU]naqa_mnypgpffsuhqlawe]Ve``rSPN[ed\xp|^\hqbbefi_gd[go~okqs}v}
uvy{xs
~|yxfqj_~ookz`imtt_s|xwss
|y¡±¥~vtvspo
spqojiumn}|musRNᐙ|otuv{r
¡
}xzzwim¥cpz|z
|m|esoklzy\y{}~{ziukt}lp~{}wxxrken}kitoghslS^odpZ_lrwfkkbgxsoqd_w`aVk_^uOMK`ec\yqt\[ev`aeec`fbXirsmkqv|tyvw~s~zr}~vesn|enpkZknxyr`vz{vrvvy¯
x~{
twpypnomn~rcdxp|nz|jhlc¤ÁÜ®ï¢skuu¡np
£~{ux
vwp~¥
^l|}v
~~k}cxtjoxsXz
z
~zftjlwo
{utxurpesw`sloahufR`pgkU_ntyarc`i}qrn[cracWnZ\wLLLcea]vsm[\dx^`df_cc^Yirknkrw}swxx|q|}{tshuqyl{ntpWpyvyqdvxhvq§£|pwx|{rwpsjokil|t^`xv{ptzg`e|ëÚµÉÃÜslsvip
|zwxrvq¤a
h}}
qrwgvritwlZ}
}vbum~nmz
}~orz
tkoipv~^shn\iu_RdqhfS_pvt`o`]hqrjWgiciXmW[tLJLef^ars
h[\ey^^dgzad_]Yknenjtw~sr~{vzt
|wv
{vlwvyxunwz}Xy
qnfxvdv
q¡¢sorv|{xqtnodr~hflww[_x{zqqiagaÕ¶¦xnqw{qj{h{{~
zu{{qux
af}~m|tkmwutwvkc|
p`tr}}zqg{
|
opytlmijwzagiiXkuZRiribPbrxlbe^Zjnsb\g_em_nTZoNGNfd\fnrkZ[cs_\clwde]]Zllbmjsvqo|}txx
|vx{voxy{om{v^smhzssgs|r uu~mu}|v~vqoljat|gbiuyZ`w{ymq~echhW_rs¼Ävq}qrj{|
|{uvw}ru
rv}f}~r}f~|y}i}vfoyxswslk
x
k_sy{~|~siz
y}~nm{}vtnfe{tb[pbWnqSSmrhaNftxf`^]YoosYeb]jn`pOYkQDSg`Zjnm|nY[^mcZbowdg\]`kicljsvpm|tuz|
v~xtryy~oo{qixz~ml{ukjxtk
n}viw~yozsplid`szh_eqzZ`r|ygqzaee±²wKbZ¥ÙÐq{w}
nk
zy|xwoqu~zjy
¥ow
z
p{|nwhxr|e}~vcpsiypou|vx
zk\rs~{rnr
sz
yno~vzdfh{o^XvZXplNWqsf`Klwta]\ZYt}soWg]fjr`oNWhR?Xf^Zpkhzq[ZYkeZcqy_h\^elhekiqwol~uo{v
qq{|zyujy~ko~t}or{zpo~xg¡
fogy}~|hxrklf_`oym_box\dkzaqv_eeÔê½2:>qx
v~ml
u|
|xnvwn
lu{tfy§~nvx
{{w~krh~xm||wayqdqh~nuqu
su~so\nuy{}xzrm
szumkvut[ggunWV{RYpdKZrre[Ipxo\[[Y]t~thYb[gfodjMWfQ>^e\]ue`upZYTndYdqyZh]_fmgikipw}mi~yn||zupnw}{{h{}js{r
zsw~~zx}|kl}kh~z~~~}kuqghb[bgso_aks`hpzbst^cd n\5Z¯µti|u
svpl
uyx|z~rgu~~oq~hvynfy¤~nw~
|pz}{h~lj{zjzwr`w~qdrgvmu{|owz|umYpwuxvzxsos~{onjmtm\fdrpPZzM[o\O[rodUKsxiWYYZaqt`]]`gdiifNYhM@`c[`ua]ulXWStaZdorWj^bhkgmlhpw|lh||p~{zwq{oqw{j~{mwxvw|x~~zm£zuxklx}z~prpcf^Yf_oo_`gpfjotato[adjv{¿¦¤È¸q
r|xsqro{tttwyypcwzirvgwucj|}suzz{kxy~tgzhkysizv}h`w}jjth{iv~z~~p|v|tbVx~ss
}qwxqqz~}vwjqilqo\faqmIduK]mUSYrnbQOtxaRXX]aos[a]heedkdP[pICc`[cp^]whUVUv][enhVk^aigennhpwzmiy}r{~y|u|pwrmw~p{wyztx~zuo~}
zw
{gt
y~{
vgon_d\XeYmra``plkhnatiY^dnw©ÚªÇ²qwou{ztst~wpqmtxuk`zyfqpgvn[m|y~y|nw
u
{ltv~mgvdm{umiwv|abxzhuub}{gu{tvq{}mZWupv
zmtylv
|~y|t~thtenlsYh^sdGmmKZaWVUwmbPRtvXPVX^aqo\`cmdd^ocT]rFBe_]fg][{bQU\u[[gkaVj_`nefkqhpvxtku~vx~w{s}ortqu~
{wx{|
x|}~{~svy zvtx^}
xt
wzbnl[b[[aVisc`[gnofqaqfW]cl|Êι¡jmmlqq|~zyxsyuu{jlvcuwof^}zerkjqcXmz
sx}ors{y}ppo|fhqbmxqjkqx}|z]eyxivxfwgt}rjo~yo}^Ysnu|opqwixx~s{u}{sgsankqWi]v[GmjLVT^SU{kaOTurPQTW^bt
i]`ljfcZoaXcpG@g\`e^\V{^NVepY[jh]Wh`^rfkgqgpswxntzx~yuq
pp{xvuz
z|t~}~~}|xvxx}muxd
so
ztcnjY_[\]Tgrd`XdqrfsbkeW[`jw¾®{ ¶nbshs{qyz}~wwrvo{vejo`usjb^xyfqhkkZVow£qryvot
}xtqnhx_jl_mvjgjkywzvZg}|xes~nteu
pgkzunub]q}lu}{fv}nqivys~m{|{yqflbm}lmUi_vUJijNQNhMX{haNUvkLQTU_fuf^`qhgbWi]\khJDjYadVYUyYMVmjY]kd\Yec^tfldqgrpuxp
v~w|
}urnsy{zsr
y~u~|z~{v{wwziv}{lqp
~pflgX][\[Sdpd^WbruiupeebW\\hporsddx~itusrwyvsunkzqbgkgtnf]_}p{imygjdUWro¦|{vt}s}{o}|x}}uoqlgt\lg^ltdgeizo{rYhwuhpxvbw
|ojm{qgsfanzgsx|~bwwjlrv{q{zt~gywodfbn
{ljUhboRJhjOKNoG]{faMUtcJNSWajv~e]gsif`VcWbp]LKjXcaUTUsVLXudY^k`\Zce_vgmbpisor~utww
z|t~
nrt|ztq
zvt|
|~{~v{£¥y
ku|zuznsy}unjheV][ZZSbmd[Xas{ihmi`bW_[jjkpgk`hyxjstsmz|uunzhjyj_enhvgeXbwj~{ojpgf]TXog¨wz|zvqptwzyt
vjquggn[lc]mr_gajxh|m[nrtjo~zwaw
x
sroyrcqi\qxdrt|yctqhjzurmyxvyd|ywqddcn||jjThaeSJkgOGQkE`xfaMSq]JMTZekv{e_mqid]V`VnnWKShWe^XMUlTJ\y_[^k]][ce`yhl`oounpwuz}wzzxy~qttyvt}|ks{
~}{v«zkryu~tnn|sjomddX_ZYZTajg[Z^ti^ml\aW\\lert}ii\kvugsvql{}|xurlygixf]esgzwccTepg
wwgij`WVYgc§n~w{qr~hzp{}xq}ndurdgg\ja\oo\g_mudzh]torkr|~uvbt
{xruuapm[rtcqs
|uesmam{pkj{yvsfv{{vqebems}ikSg]\TKqbPFVaGbvfaKToWJLXXgkuzdenqfdZW]XveTJ\bWgWYHWePHbxZ]_l[^\ac^~ij_ntxmpnvyr|~uuy|tuuyzz}~isz}~
zz|sq{{}dqys|zuro
l{~lzbpobe]eVYYWcfk_]\r
hXpn[^XZ\l{cpwvmbZlssgtuolx~xwnntdite[gufvvy_]Rffjt~bdi\TW]bc¤hxtymp{iyn||vsx|xhdvl`f_^i^\skYe]oobze[w|knnoxysuds~{wpr~sbxd\ppbqr}tgre^nwiehz|unout}trb_fnn|dhSgXWSLv_PJYXHbtcaITmSJMZWilq{bmlscbZZ[aw\SLc]XiSWGY`MFiuX^`l[[_bb\iganxylojvxm~vsttrvuw|}~~~pw|yxz~ttp z{xcuxswtkto~kx|pr^po`gblTZZWhcmf\[qeSrn[ZXX`lvciuji^Ymsplsssi|~~{vonldiqc[krdtvs[WSearr]bc]SZ`\ceqq
tll{npq{}}qxszzzceuh]bY`gZ^vhWb]ohaw`[{vijrnxsruhq~vsjq}nfwX]lncrsztgo~[`prb`kr~mmusqxkpa\elly`fReTVQOtZQOXQHcsb`FUkPIPZUkkk|emoqb[ZXYlqWRPfWVhSTFZ\NHqtX_cmcX``a]jcdmyxkpiuy{k}|y|nrovz}t|tx
utquo¡s{zewnmznfxpzksvrk^tnagekR][UgalkZ\pdOon]VXUgithbtee]Ymtmoutxj|{vsddkna\nmcsxkZTVcdx}}q]c_cSZ_Ybcnp
tkh|pftxu}lzuvoz~u^erc[]VacXateU_`mdaq]]~phisqtpuvkm{
qsgp~qsoT\gkfqtwscmvVbrl[_pg~fmw~ssskm`Zdjjv^fScTUPSlVPVSOGdr_aEXiOHWTVmhd|ikxkbW]U[tdSRWhQXeTSHZZPMwvZ_eliYb`^^nafkyunoivvl}{~krgt{u}r|
{ss~vn¤rvwlz`d{pfzsxlmqvgd{lcfghS_^Ug_ln[^mhNim`TVSngtkexdd\Xoslqzwrl{vzykaelm^`ojepy~gZVX`lx|{p_b^gVX_Wcbkp}xlkyn\wsm{iutoo{rXim^X\UabWdpcS^ahablZ`~kfksvomwwli
{mrgq}nsndZaiiotts^imSeqeUcoc{drw|wkpmk`Yaght\dU`URNWdRN[OOGdo]bFYiMI_KXmd`xin~d`U_T]u\TS`fN]aUSJ\YPYtu]_elhXca[^qcgjxqsnhvtzrz~|ynulst
y}|
sstxro~zz}~~}}~~}~~~~~~~}z{|~~}}~}~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~>.1111/o]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDARÌÚØØØØÜinnnnqI,00//,I
}}{{z}~||~}}}~}}~~~~~
-h
S7¤¤¤¤¤¤£r]____aR455552FØêççççëbggggl<;|}z{z|}{}~}}}~}}~~~~
|y{z{|{}}}}|}}}}~~~
~}xxy|}|}}}|}}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}~~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{y{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~~xuwyz{{{z{}}}}~~~~}~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~rtx|||{||}}~~~~~~}~~~~xrvy|}|z}|}}~~~~~~~~ssvy}~|y}|}}~~~}~~
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxy}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvttvwuqrqnprpghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkigfgggihgmgjghehgccbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__`c_\_]`]^Z^]YY^ba^^ZY_\XWSNMLKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{yvwxxz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSSPMJMNPROMPQQQQRVVQQQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTttuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPPRQPNNONONOOPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKLFDFJKKKHJLLLOMLLNOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBA@@CCDEACEHKOKIIJHGJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:<>><ED>?EA?@A@DEGGGGBDDEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrquxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;899;;:@:;><;;<<HL==AA?BC=ADDFBFFDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNMMMNONNMKKNNNMNNLTnpprtusqrwyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;::;89:87:<978;;>=;;:8:@@AB?A?CFDBCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtsusqsxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<979::989::78:9:;;8789;:8<;=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>=;=<>?=<=;:<===<<<<;<:;<>=>?@A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmqquuuusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCC@><=?@??=;>=>CE??@=;===<;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVppqssttuy{{{}~~~~~~mLPQNOPNNOPPO><<=>??@>@@???CED?=;<@>:;::97:<9==@=:<;;<;8:;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pqrrrtuvz{}}}~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC??AAABA@=<=;>=:::<:8:88:;=??<;;<;:;;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~{NIKKLLLEILNM<?<<=>@@AA;BCBC@???@=??><>@?===?>=>CD?;<=>@==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGHEDCFEFFGED@AGGFCFDGHJGC>Hlpppqtuvy||}||~~}~~~~~~~~}QHKMMMKJKLOQ@?>>AA@@AGABDCDA?@@@?=@><=??@@@C@@?@@>=<=@EABBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBBC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{||}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@A@>:><?=<:=<@BBE@??Na_J@CEIIIIMMKECFGHEGEEEDDCA?@>>BFJJGDEFFFJNNKJIGGHKLJGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@DED?<ADEC@=HDADDDCWu~XGHJLLMOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHFHIHGFEFFFDFHGEEHHFHGHFQnnpqrvvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCAACFJHIFHHJHFA@_hDBAUtWILMLMNLJGGGGDGGGGFHFHECDDFEDDHHCCCGJJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrswwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLKJKLKLHT_hq{WNl|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD?>?DFHDEGIKIIGHIGIIJJIHFJJJJIJIJJJFILLJJKKfopssuvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKKKKLL`Xg~y
uIIFB??@???<<<>::<AA@><998<<=;>;9;?ABAACCC@ABEDBCFHIHHHLMLGIJMMNMJJKKJLMSloqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHGIHKLOmy
fBB=88::9878896479;<:8567789787689;;<>@;999==>;;=ADEHJMLLGIHORQPPNLMMOQ]oprtsuxz|{||~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@BFHKHPuT;8656766645763468:876565677778:77789;7689989876:<@GFIFIFEFOSRSSROPPRTepqsttwy{|{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:<DBDEMv
H676468874578467699766765:::::<898977779::8878588;A=>>BA?AKLOQPQOOPQWkrrttuwz{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897:A9<DNxz>:88;<=>9:;<89;9:;:99;:9===?;;;=:>;9;;<;<<:;<8::;:999<?<=ABDIJMKJKLWorsutvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<:89989999:>=@@Ol<;>BCEEAAAB>@B@@?=>>@?>?@?@==?B?AA?A?=@@@>?A<><;:;:9;?=;;==AACABCAXqqtttvy{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<<:;;<;=>AA?b
^>DGIKJIFGGDFHGEC@@CECB@BCB?@DHECEDFEAFEFDFFD@B>=@>=?@>???>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>>??<@>A@DAM
WGLLMKNJIKHIJJIECDFGFDCEFDBHIKHGGFHGEKIKIKKJCFCCDBAACBDCCDDCA=;=@hpsttvwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA97<>;<:=??A=@@DCGBj
PMPMKNKJLIIJHKGEGHHIEEHFFELLMIJGGHIJNMNLLNKHFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?FGG=<@@87<;;<9>@>??ABEDKV~
qMQOMLLKLJIHFJJEJHGKJHJGGGKLNLLHHIJMPNPNMOKIGIJHIDIHHFFGGIFCBACUnquvwy{xyzz||}~~~~}~}~~~~~TDAABGGB?8?@8:;8<=;=A=>?ADEFNn
^RRPMNMKJGFCGJGLJGKOLKJJMMLOPNHIKLOQQPQOOJIJJLJLFGHGEGIFEEB@BB\prwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9?=>@BGF?DFDHMu|WVRRTROLKJEEFKONOWVQPOQSRNSTOMSLPSUWRSRPLKMMMKNGGJFFHJDDEEBDCcquyyzzz{z{z{|~}}~}}}}|}~~UFFGGGGHF>@B=?==B>BCFVMCJKHLOy
gVVkaERQQPJ;;QSR`u]UVTVYYSYXRZfPUWZ]RTWQPNRPPPQKKKGHIHEFIIIHIjsvyyzyz{{|z{|}|}~}}}}}}~~~THJIIGGFE??A@EBCFEDELXRLQQPRSz
}al[dU:XXXSP?@VUY\d`VYbr^]W]ZVEQYZ\Y_TYgRUVXTTVSOOMJLJIILMKOMSotvxyxwzzz{z{|}|~~}~}}}~}~~~~~VJJIHGFDDBA?HMIMPKIKPTSRVWVWVv
g;~ynpXZ[ZRSRWVTZZuYU}a\X]^WIV]][[_YHYXY\]XXYWRQMPQMMOSQQURassvwwvxyxz{{|}}}~}~}}}~~xy}YMKJIIFBD@A:PQQWXPPOQSTSWWWXXm
n~fYY\YSVTWRQWVcQerXZW_hP`fZ[X\hbGOZig\[\]]WSNSPPQVVVVYZosuwvvtwxx{{|}}}~~~}~}|~}r}ot|]SOOMKJEC?@;PPZZ[SSQORRQURUSV_ux
}{\PVXTRTRQQLOMKfyZ]TYUV]ZLTZTST^ZXWWWzkXZ\\^SPPPINOWVX[Zdqtvvttvxyy{{||}}~}~}~}}~~~zxwvsu{tk~~kry^\VUSROKFCDAM^lVRSNOQOQVRSRRTcdv
~ymqVIKNNKMKHJDFHEC>ScURPQNKRTQMOYQMNQSUUMQSRPNLLHCIHRSTZ]mrvvussw{z{{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YUQLILIaltPQSNQRQR[RSRQRUUbs{|}{{
u_]KC>CCCCB?DPCD@C>BHGV@INMG]iQHFOFDEFHGHBCHGHJGDBAC@NPMRdtuvustuz|z{{{|}}|{~}}}~~||}}vt{mh|gnqfieeb\XSQPURsWe[OONLQSQUYSUQQTROV`klsvz{xyurnstsyx~~kLG>>:;>@??>>jPJaEFHIEB?HMMGMQUJBE?><=<==?=?ACB??<=B>JMFUouvvstvx{|{}{|}}}}|~}}|~~{ywxwvvx{~~}{xv|uaxglpjljif`[QQZ\Y^IJPQNKLQRQTVTWQQWVPX[b]agmmlokh`nrjmlqu{z}zxz||xwxdB@@A=:BCBACA[\N{NOONKLMOOPLKLWNIG@B<977599=;;;8989?;AG>\tuvvuvwy|||}|||}~~|}}}}~}xuwz{zwyxuw{|yxuywcqhipmnmmhf^OP^\ZIGPRQOMPQNQRSVXSRYTNYZ[WY\__`e`]^qwk^`gkwooljonnlfbYGFFHBAFIEEFCLQOaWRXQPSSRU[OOQVPMICF>:96586979:365795<B=ftuwxwyy{}}||{|}}~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMKTTSPQUOLRSTWXTTXQLWYYVXXVXY]WWXhsk]V`tkaa_]d`_^YUPMONLIGJKIHFCPOSZWTTNQSYS\eUOSTQNKIHC?A9988978847578598Gnruxyz{{}~}}|{}|}~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPWVVSTVOOUVWXYSUTLKSUUUUWPTUWTUR]n^RNY`[VY;DUWT[fJLPRROMMNNNLJFPPUYSTNJNOTST\VRUSSOMLIHHF??=:787659967665Wqqtxyz{|}~}~||}|~}}y}}|~~~}||}}~}|rvqxxruuqqnppopuvtnjddjppqrpnfedc\^RTZVWTSVTRXXYYYRUOJGOPOOMRJOPPPNNOTLMIPPSTU2<XMIAQ=c`QSQPNPQPNNMPNTRPRLILKOQPQRSTQSOLMKLLHCBA=:9876;B4566;eprvxy{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqpuuvcjgeWhtrrqniihpVVTUXUVURWVUZYXWUQSFEAFGGHFJDHJHGEHLHKIGLMPMG/E_R>3@>joaRRQ@FTQOPPQNQOPOLJLLOPNNPQQNPOJMMMKGEEDB;==<9=G6677Dnquwz|{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknbePSTRSUOWVVYYVQQQO@>;=?@BAC@BEDA@GHGHFFHJMLDGCORC8ENS]gSQSAGUPORQPMMNLJLKLNOOQMOOMHLKIKKLKGFFED<AA>;@E;<89Tqsuy{{{|||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLONMQSLTUTWWULLKH=987;?A>==A@B=>EHFDFFIGJJ@FAA@FHEJOHQRa\QPRNSOOPLLOMKMLMON[VKMQOGIHDIJLLKFFFD?CC>=BG?B>Adqtw{z{{|{zzw|wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B?;>A@@>ADIECHGIGIEBB?><CBAGIDMOaePMONWKLNKLMMLLKNNSdNJLRIIIEAHJLMNKGIFBBB@?EFEHDLopwzzy{{z|zwsxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLMIMPMPOGKE?B=999:?B?<ABAADDGKFDIIGGHCC?B??@A>CECKNQTKJIMTFIIJLJKKIJLMOPRPKGCLGCCJJLMOMIJIGCCCDIJMLIZsnxyxz{{y|vrpurtyyvxjqojllnttmsu{stxronqovsnporpopstyjN`gsjt|ygosqiqheqHKCFHHGJKIJLDGB=>=:::;AB?=BBCCHFJLJEIIFGGCC;A@B>@@CECIMOGHKFHKDHIKMHJLHIJLJM]RIHDNGBEKKNMPNKMJKFGGJMNQNLcnjwvv{x{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoijthdpFKCFEGDEEFEGCC@=<=:;::@D@>BCEEIFJJLFIIGFFCB;BCC>@CCCDGLNHKNHDHEILNMGILGFFIILNKJHEOICGMMNMPNOOMLIHIOSQRNRfgfrosxu{z|lhjoekpmsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGICEFEBBAE@DB>?>:;;=;=?CA?ACFGJGJILHGGGFEC?=EEB>ACCCDGIIGMPIFFGKNOKFHIFEDDIIHKIFHPKDJMLPNONOPNJJHMRUUROWdaamgqrosyzgehhcilgqlflmgiklsmpvutpnvrosrsutqssutsuvvvyvutvlkuumrvqlnlerMGEEGCA@AD<BA>A=::=?;>?@B?@BEGJFJGIGFFFEDCAAFFCBBBDEEGGHFLPLIOJJLKIFHEFEDCIHHKJGKRMCOONQPOONOOKKKPUWVUSY`_]ianinhrsbeffdihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwuksunutsprkksMFGEGAB@CD<AA@C<8:=>:?=?B?@@DFHEHFFHFEECCDBDIFCGEAEGEFFGEJMKHQMJKHHIEFHHECIIJKMKPSNDRSQQRNONNPMLNSWVWXVX^Z]d`hbjigk_defcgggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxnouorsuqqipzMGGGHBBBEE<@CBD<7:=>:>:@B>??CEFDFDDGECECDEFFJEEIGBGHFGFECFJJGMKLKHJKFIHJHEKKLLNORTOITUTQTPQMNQNMQWZVZYWZ^ZXa```_hec`deggjhhjfhnllomqpiuuxrrpupppruvpusuvu{~}xvtwvvvwplupmsunossyMHHGIDACHE<@EBD<8:>>=<<BB<@>ABFCEBBHCCDEFFGGIFGKHCIHGIGFDHKIGKIMKJKLHLJMKINLNNORUVOLVVTQTRRLOQPOTYZY\ZZ\__^`c^\ackb`dghr
hgjfjnnponsqjtuxrsstrnpqvrquruus~y}uuvvvvxriuqkrtlqwquKIKHJEBDGE<@GDD@9<>@?>?CB<@>BAFCEDCHDFDFFHHFHGIKJEJHHKHFFLHHHJHMLLLLIMKMNMOLPPQUVWOKVVUSSRQLORRQV[[]^[]^``a`ae]d`fg`ehjcssfjhglprqossnswwpuvtsmoruorspurvrtwuuuwvuwsgtrkqrkrwowIJKIKGBDDE<@FDDB;??A@@@DA@B?ACHBEDFHEIEFEIHFIHJLHHJJIKJFJKHIJJGKKMLJJMLMNNOLOPRUWVMNTVUSRQPMNTSRW[^^_\^``aaa`cdebdicdijgvlkihmosqpqpprywruutsmmssmqsotutspswtuuwvuuueqskpqjrvpwJLKKLGCCAD<?EEEC=AACBBCEACDAAEGCGGHFEIFCGJGGJFILHIJMKMLGKIHKKNQKRQLSMKNMNPPPTOWXX[NSQW\ZSVPNTUTTXZ_bb_da_`b_`fbacinicihhmxvmhimosrpqrrrvtsusssnksqmprotvrrquvuswywutucmtkopjqtpwLMLLLGEA@D>>DEFC?CAECDFCCEGCBHEBHIIHHKFDKJGHJHIKGJJNKNKILHJMKZfJd\KlRHOM_nUls[qpbwcRPbvuhucav`Xnqbdvinzf\lt`lkU_wvijhhfglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqsqyKNJKJFB?@B?=DEFDCCBEEDFBFFGDDKDDJLLJLMGGNIHJKGKJIKKNLMLLLILLL[sbdp^llUMNer]gfqlntgpi_aYnmbppbkjjgoqtetno\ougqMKryvkbakeelxmkvlnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIIGED?AB?=BEGBFCEDEEDBHHGDEKHGKMMJMLFJNHJKJIKJJIJLMNMMMKNMM[roonpplkNPQlXNibtrpamov\YlP[mmZqmkomxxtsip\`slqjUuyxoc^kfbgppjioppsspqppqrrqqrrtlmrmmnorutqtrtuutuuzvutenukpolsrryJKGHFEEBAB=??EGBGDIEEDBFIHHEGKJGMMNKMNGLNIMKHJMIKIJJNONNMLNML\hdu]lqWlNOQnUZk^klvaldtTecNlYl\tpkilxjwuhp]_skhWbcw|oc`ghacityknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvIMGIEEDCAB<B@BFCGFKGECCHKHHFJLKFMKLRRLGMMHNJIHNHJJHHNONNLJMMJZsppoqqmlOQSoYskgooqqomt^nXat_nopoqroousttj[]tcwxrjnzhaacfabjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyytukoumtonssvtHKHJCEEE@@>CCAFCHIMHFCFJLIGFKMLFOJKWRKGKJJNIIJLIKJIHKMMMLIKKKSkbZi^_jcrrZ_Zko`eeUk_c[abQ`mh\j\niidZoedp]Z\k[mqcpsldgcdg``knppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrutwrHHFIDEDFA@AEDCGBHJLGFDGKLIEFJNKIOIL[QJFHHKMIHJJKKIHJGLKKKGHJJLLLKIKLNT[]TPUMQPNOOURPOQOOQJJNPQdqiTYV[[\UY[]X]\\cfaafbcf_^fkmhmtyrtroppt
zpmmlkqsttrtvtuyyxuvqruovrtsuusGCEGFFAEC?CGDEGCIKLHFDGKLHDGHPKLOKLWMIFEHIJHIKHLJIFHHJGGIEFKHIKNLIO\W^O\\`^OXYS\\b^MYZMXaRKYaZS`d]bX[ddVVX\YZX\VY\^c_daa_ehkgmttqqtpqr
}rkiorssstxyyxyxwxtqxrxsqrurtOBCDLMBCDBDIEGGFKJKHEFJJJFEHHPJLMJMRIHEAHFJIKKILJIGEJHEFGEEJGBIMJKT_Y`X`a[`UXYT^^Z_RY\P^\YN_\^S[^c_Z]`c_Y_b[`^[TYXZ_^dbbacfiekrpoppnow
{
uqprrsvyyzyyxxxvryvxrqxvtvaSJJMIDBBCFGEGGIJJIIDGKJKFFIINJNLHLNGHF>GGLIKKJKKIGEIEDDEBFJD?IKHN[cY^^a_RTSW_`\]Y^QY\MV_WKQY[Q[_aa]^ca`bbbcceZRXVV\[^c`__cebhommllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQJFCGEBEGHFGHIFGJGHFHKIKDDJJMMLLHJJHJG?GFNJKKMKKKIGHED@DAHIA>HIFO]aZ[d]_TQRX]\\\_ZKW\LR\YIM^QQ]_accccb\dcbdcfXQVUS\X[a_^_aa_dlkmjklnv~uz|
zrsuu{
~xpzwvx\RMB@IFCFKIFFGIGGJFFFILJNEDJJLNJLIKJHIGBHHQMKKOMKKIHHED?EBHHA@FECT]Y^X_X_[]UXXP]]QKJV^X^[]VZaRR__bb``bb`cbbddbXORRS\S\^]^^__`dhgljnnp{{|~{
srw
|x\SKBAGFDGMRHDRKFHHHDFKIMPEGIJKNLLILKIIGDHKQOMLPLLKKIICEAECHFAAFDAVUE\T^SV`XNTUNZ[MJKT`a[_X_^b]OYb\``_bcb]bbW__TPOQRYS^\\]^_`bffelfoow|{{}
zo
~INFDFFGDIRcQDW_IGGHDFMJPPFIIJKNLLKMKJJGEINQQNOOMNMNHKADACDFDBACD@LHBLLPOOMFMFFHIHGLLMOPILOPPSPLQSRUZYWYXXdVOSTPPONQUT\YY[^^aaefchdklqsszy{z~{}{
}KIEEGFGDKM^MGHYMGHJHGNLQQIKJKKNMUNOKKLGGKOSSOPONOOOHKF`ED_LDfcCL[H^[smOMVmYLCP_TlWgJ]WU^DMQULMSVQRTXWTXUT\TPfZhhdYTkTXWU[\\``abbb`gignlhrz|}~}}zr{z{
~z{KIEFFHEEKOTJKG`TGJOJIOMRQKMKLORUROOJLMGHMQ[YOPPNOPPJKQQI|YYrsWPmHqnoaVPqqtOBksnqtpSo_[nX]V\XUkhU]VcY`YZ_VUWituu_av_Yb\\f[_aaab^`bgmpl`pwtx}~vxzmv~tx~|~|z~wwMIEHMMBDLLGJLFRVLLOHLRXWQNOOLQTNOQPKKNGMPS[ZTQROPPQKIZx]TxdhYRSPvgtlpbnfkRrNLwmjrpsrqrpop]fzuxqqzq~r}ku}bRg|essoss|}p~yor_``bb[a`hknkblfgmw~~{xwtvzhr~nt|~wx{~x|u|||ssNKF`]GAEMMHKKHJQOMNJNW^YULQSNYYLSSRNLOIQRTYWWQTPPQSLHgxlcxqmZKLTypumubnvPdeIevqmwojfxxiXrRi{mijzz}lxzpgoXuujvupash}ilx|o___cb\_defijdgbcdllppstsssyqrxbltgry{sruy~svzn|}yxrnMJRtNCBEPPIKLJLQOOOMPZ`ZXKTWPa^RVQYSMPJSTUXWWPUPONSJKrouuquqdhaVnLqp^GhyWvTKhx}x`y{sna^modSgrunmypwlvstqlm\s}zkmy|lum|kpvux^__b^]_edighee^bbiiijknokqnmjpacfdowxompsynqpj{ztromKKZVHGEGRPKLNKLQQPPPQW\YUNVYUfXRRY^TMNJTTVWYWOSOONQIRmHiwK`dvuUWlNnl{rajgvUKWkh}lmlx`[pz{_`zscroxqhd|ir{]TKl_vukiu{{m~xk|p]^^b[^bdegeeebZccikkrsrwgmihdg`alagsrlhmmr|kmhk{tmmkmOGJKHJHHRQMOPMLSSROSRWRVTPWZVVTTTa`QONKTSSQVVOOMNOQJHQNPULKKRSRRROVUQQORRXXQNPUTXXX[[USSW[WXW[ORTWWXQ]XV]USOXRVWWXZ`[gr^[[[]]_cZ_ccefdccbZccgffmnmuffgc`f_]g`dlhfgkhpzhggkujhgilPIKKLMKJTRMRQPLVUTPTUXUZURZ]VUTWUYXPOLNWTPNUSNPNLQPKJQQKQMJKOQTRQQSRIIMNOQRQQQTVRXW\WSSQQUUVTZQNSQWUTYVTYUSRUSTUXYX^Z_a]\[Z]]`c\]bcdgeddaY`acabhhincad^_c]Zd\bma^ffgmsdihkkeddfhQJKKNOLMTQOTQQMXWUTVXWWZVT\`VWVYUXTQPKOXSPNUQNRNLSPMNUSNQNMNQSPTQSTTNLNOQTTRRQVWUYZ[YSURTXWWY[SOSTWUTYUVYTRRWUVX\Z[`]VY_]^]\]`a^[bbchfedbX``b]`hefda^_]]^ZZ_Z_g`^^]chkahfhfd`bdbPKMLPQLOTPPTQOQZYXWYZZXYV]jdVXYZWVTTOKOVTPOTPPQNMQQORXSQQOMOSUNWQTTUONNQTUUTTRTXVZ]\ZVVQRWXV[\VPSUUUVXTWWTRRXVV[_[^`_V_]^`\\``__ZbbdhhedbYb`b^^fdc`b]\\\\YZ[X[a[^]]_b__bddbd__`\PMNNRQMRSPSTQOU\ZZW[[\YZ[dqmhd_[YVVXRMMVSMNROQROMPSRUZUSPPLPWUQVRSSXMOPQTXUUUSUYX[^]\[VROUVU[[VQSVUVXTSXZTSQYWW]_[`_`Vb\`a]`b_\`]cachief`Zc`a__ee_`c[Z\[\ZZYYW\Z\[`^`[^^a`_c\Y`ZQNONVQPUSPUTSPW\\\Y^\_W\^jpwyc\[VVYRNOWSNQQPRTRLQTSY[WUORNSXUSRTRRZOQSSV[UVVTVZX]^\\^VSNTVV[[UQSTVXXRSY\TRR\XZ]^]aa`Wb[cb^ac_\bab_dgidg^\e`a`acd_b_YZ_[\[XXYWWZZZa\][]\\Z]`W[[ZPOOOYPUUSRWRTPZ]^]\`\`U\]hjr}slh\UYWQOR[SRQTRTUTKRVUZZZSOSQUUUSNUQRZRTUTX]WXXSX\X^]YZ]UUNVVW^ZXQUTXXXSVY\TRV]Y]]a^cc_Y`[eb_dd^^cca^efief]^daaabcd_b^X[_[\[XXXXW[Z[`][[\[XZ[^V^Y]POORZP[UUWVTTT^^`_^b\`U]^bkyum}lZUZVQQT\TTTUTVYWLRZV\Z\RPUSWUUSOWQSWSWUV[]X[YUZ^X_^Y\YRWRYXY_YYSUUZYYUWY\UTZ]\^`a`ed]^]]eabfd^_dc`\gdhfdb_da_a`bb_`^WY^Z\\ZYYWV]Z]^[Z[\[WY\]VXW]SOPWYP]UVYWWUX_`aa`c]`U]^beev{hXYZTVTV\XWWVVW]XOU\Y^]]TSXRWUSRSXRSVTXXX]^X][U^_X__X\VQYUYZZaX\UVWZZZXYZZWV]^_^cbbee]b\`fbefd_`dba[fbhfcfaf__abaa`_^VU]Y[\[Y\YY][[[XXY[YZZ]_]TY]UNSZWT\UVWYWV\`aacac__V[`da_zuohZ\ZVXVX[ZY[YXY`VOT][`a\UUYPTVTRVVRTUW[[\_^Z_\V__Z]^Y^VSYXYZ]aY^VWZ[Z[[[YZXY__``dcdeebdZbfcgfe^ab`c^cciedg_g^bbcaa`^_XTZZZ[[X\XX\[Z[WWZXW\[\`]V]]SOVZVVZVYUXWX^`badada^YYadb`kfh^\][WWYZ\\\_[Y[bVSW^]ac\SVYPVUUUVVSVTX]]_``]a]W`^[^\[^XVXX[Z__Z^XX\\]]^[Z\WZ_a^`eddfffbYcfehgd^c`_ec]fideh_g^cbcaa`__[XY[YZZXZXW[[Z[WXZTY]\Z`\U^bMRWYVWZY[\YWY^`baeada]^Yacb_a`a_]]]XW[[]]__\Z]cXYW\`cd_RYYPWVWXWVVWV]]^aba_b^Ya]]^Y]^YXUW[[`^\_YY]]^^`\ZZY[_a_bedefggbZdfgigc_c^`feZiicficf_bbca``_]]ZX[YYXXZYWZ[ZYWXVU[]]]``bbxKWW\YW]\\]ZW\]_`bdbca]`Xbcb`cac^\]\XW[]_]`_][`d\\WZbecaR\YOXVY[YYWZZ`^abc`ac_\b]_][_^YYTX]]__^_[Z^^`bb\\W[]`bbcedgfegd]efhifcab\cg`\iichife`baca_`_]]\Y\YXWXYYW\[ZWVXPXZ]acffrkJYW][Z_]\^\Y][^_bcbaa]b[bda_cbb]\[ZWXjq`\`_]\ac_]XYcedbT_ZQYW\]\[Y[[c`ccc`bda`c^`\^__ZXV[_]\aa_][`abeb^\S\_`cddfegfefe_ffhhgdd`[fg^ahhbhhfc`b`cb___]][Z[YXXXVZV\ZZVVULXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{{{{{{z{{{{{{{{||||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvuvvvvuvvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{{|{{{{|{zz{zzzz{{{{{||||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||v}}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½sqrrrqo©Á¾¾¾¾Á¢~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}v~~y1333332j{éääääèÊroooool²ÐÌÌÌÌЪ}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vxxxxxxxwwwwwwwxyyyzzzwopppppprrrrrrrwzyyzzz~|||||||zzzzzyy||}}}}}|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvuuuxvvvz{x{xwvvxyxyz~|yyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{{{{{{{{zyyyyyz{{{{||{|||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwww|{{|y|{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwwy~{y{x|zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z|yww{~{y{w|yxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzx{{y|x|xxxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyywxzyyyyxxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyyyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegefgbedebg[be`v||{|||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|}}}|||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqppnnnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrqppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpppqrrqqqpopooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpooppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqqpppppppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqpqqqqpqpqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrqqqqqrqqqrrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrstrrsrsssssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz|~~|vvwwvuxzxxxxwwwvx|yy|zyy|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{{z{|{}|{{{{{{zyxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}|||~|}~~~~~}}||}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~~~~~~~
~~}~~~}}}~~~~~~~~~~~}~~~~
|||{|}||~~~~~~~~~~~~~~~~~~~~|}||}}~
}||~~
}}}
~~
}}~~
~~~~~~
~
~
}}}~
~~~~~
~
~~~
~{z
~|}}}~|{|
~}~~~~~~}|~}}}
}|}~~~}|}}|z|
}}}}~~}}}}zzz~~
~~~~||~}~~}}}}~}|zzz~~}~}}~
|}}~}~~}~}~}}~~}}}|{{{zzzz~~~|~~~~~~~}|~~~~~
~|~~~~~~~~}~~~}}}}{{|zzyyy{~}~~~|~~~~}|~~~~~~~~~}||}
~~}}~~~~}}}}}|||{zzyyy}~~~~~~~~~}~}}{|~~
~}}}~~}}}}}}}}|{zyyyyy~~||
~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~
|}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
}|||}}||}}}}}}}}}}||{z|xyz{|~|~~{||}
}
~~
}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~||}
~{z|
~}~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}||}~}~~||~}{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~}~~~~}|}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{}|||{|||zzy{|z}
~~~
~~~
~~~|~~}}}}~{|}}~
{z{ywz}~
~~~}}}||}~}|}}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}}}~~~~}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~}~}|~}~}}|{|||z{z}~~|}|}||~~|{{}~}~~}{{{}{z{{{
~~}||~~~y}~v{vx}|||{}}~}}~~~}~~~|~~}}}{{}}|z||~||}|||||}|}{~{{{|||}|{{{{}|zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~~}||}}|}}}}{|~~~~~~~||||||{~~{|{||||}|}|~|}||{{|y{|{{}{}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}~~}}|}}}}}~|}|}|}}~|~}}}}|{{{|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||}}|}|}}}~}}~~|{{{||}|{z{|yzyxy{~
~~{zy{}}x|zr}{{|||~~}}
}~~|~~}|}}~}||~|}}|}}~~}~}}}{|}~||{|}zzyyyy{{~~
~~~z{y}}zzz}q~z{|}}}}zx
~}~~}~}~~~}~}}
}~}~~}}}|~~~}}~}|}||{|}{{{zzz{{|}~~
~~~}yzz}|yw{t{|tw}~}{{vv~
~~~~~}~~~|~~|}}|~~~~}|}}||}}||{||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||{|{|~
~~~~~~~~~z{z}}uqz|zqz}}yxut
~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xytu}
~}}~~~~}}|}}~~~~~~~~~~~
~~~~}{z{z|{z~~}~~~~}~}}z{|
{{syz|pwuvwyvtz
~}}}~}~~}~|}}~~|{{z|{|~~}~~}}}~}}{{zx|vyy{qtxwvxury
~~|}}~}~~}|~~~~}}z{{||}}|}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{{|||}}}~}z~}}x~|||~}~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~~
}}}|{||yz{z~y{yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzswvst
|~}~}~~|~~}~~}~}~~~~~~}||||zyvyyzyvyv~|{{{~|{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}}}||}~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{z{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvqxyrx
~~~~~}~|~|~}~~}}}~~~~~}}~~~|~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}}{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~}|~}~}}|~~~~}|~~|}~}~~~
~}}{{||yw{ywxwwx{{z{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqrpxwq{
~~}|~}}~~}~|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{|||zzzzzzxsvupprowvr{
}}~}~~~~|~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~zz|}|{}y{zzxyxy{||}|||||||}}}||}|}}~~~}|z||{}}{yzzzyysuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|{|}{}}{yy{zyxstunsqpxruz
~}~~}~~~}~}{~~{|}{z|||yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}{||wxuxxy{||}{||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~~|z}|{}~xwvyyz|}}|}{|}}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~}~}}}|}z}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{~~
~||||x|yzyz|}|{||}}}||~{{|zzzupxwyvu|uv|
}
{~~}y|zzz}}|}z||}}|z{~~~}}||}|vrvxxvtvu}
}
~
{||}zz{}}||z|~}}}}~~~~~|}}~~}|{xvvw
~
}}||{||}}~~~}~||}}}~~~}}~~~}}}~}}~~|}
~
}}}||||~}}{|}}}}}~~~}|~~~~~}}
~
~~|~}}~||~~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~
}uz~
}y|~{
~~~}}}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqtpurstv{}uvy
hzrss|s}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyy
rpvxqvtturstvinrotvnulwm{snym}rsvsvmmxlpylu}}~}~}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpur~ozyymonzoomw}xpqzprtfu~n{ysoy}}|}|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyqjoyxpkyszozwvvp~~~z~}}}~}}~~~~~
xyrz{pp
x
xyks~y{krz|m{yyt}vnoot|uwqy}}m~uo
zrr{|upozls|nw~~}}{}{|}}~}~~}~}~|}~~
}w
}~{|{~{||}~}|~}}~~~~~~~}}}~|{|~||
}{{|}{||}~||~}}~~~}}|}~~~~~~||}~{|||{{}
~|{}~{|{}~}||~}~~|~}}~}|}||~~|}|||}|||~z{{}~
{{~}|||}}|||}}|}|~}|}}|||}}|~}{|}|}|~|||zz||}
{}~}{||~}|}}|}{||||||}{{{}|{~|{|}}|}}~}|zz{{||
zz
~|~~||}}|}}|}z{{z{|||{{{~{{}{{{~||||}~}{z|z|}
|
~~~~~||}}{}}|~zyzy{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yyzy{}}zz{{}|}||z{}||}|~~|{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yzz{|{|{{z{}}|}|~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|z{{{|}}}|~}||}~|{
~}~{
~~{}}}~~~}~}}{|{zyzzyzz|yzz{{{|z{{{|}~}}}}||}}|
~|~~
~}}~~~{||}}}|~~}}~{~{{zy{zyzz{yzzz{{|z{||{}~}|}||}~
~~}|}~~
~}|~~|~~|~||~}|~}}|||{{zzzzy{zzzyyzz{|y{}{|~}~}}}
~}~~~~}}~~~~~
~~||~}|~}{~|}}}~}|||}{{zzzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFL=8765999<>9?<D9;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÔÓÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>9=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<9<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÔÔÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9?CE@<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÑÓÓÓÓÓÓÓÓÓÓÓÓÓÎÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø×××××ÜÝÝÝÝÝÝÝÝÝÝÝÝÝÚÖ×××××××ÖÖÖÖÖ×ÚÚÚÚÚÚÚÚÚÚÚÛÜÜ×ÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILO@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÍmpppppppppppj§ãÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¹´{sssssssssssspÀ¼½½½½½½½½½½¾´½æáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVN<::77>C>8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÎN&+++++++++++"ôëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¥4)+++++++++++$d°©ªªªªªªªªªª¬SRSSSSSSSSSSSKªòëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;@C>6:7>>;=B?9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÍÎR+11111111111'óééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¦=.00000000000*h²«««««««««««®XWWWWWWWWWWWWO«ñêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;>@@8:;8<;;<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÏ\9===========5ðççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©«£K<>>>>>>>>>>>9q´¯¯¯¯¯¯¯¯¯¯¯±¡babbbbbbbbbbb[¯ïééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB?;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÅÂÃÃÃÃÃÃÃÃÃÃÃÂÉÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÏÎÎÎÏÏÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÑÊÉÊÊÊÊÊÊÉÉÉÉÉÉÍÓÓÒÒÒÒÒÒÒÒÒÓÓÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÔØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<8@B<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÏÐÐÏÏÏÏÏÏÏÐÔÐÐÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÎÏÑÎÐÔÒÏÎÐÔÒÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖØ××××××Ø×Ö××××ÖÕÖÕÖÖÖÖÖÖÖÖ×ÖÖØØØØØÙÙÙÙÙÙÙÙÙØ×ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎÎÑÁ§ÓȨÒÐÆ«ÒÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÏÏÏÑÀ«°Ð³ÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D>A98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÏÏÓº¯«µÅÎÏÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<:6?B@C:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏÏÓ±¿¾ÈƽÉÆÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8FA?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÑÀ½ÓÎÑ ÎÐÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÔ£¢Ä²ÂÚ£¿ÕÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:=?>=<9@<<::9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÑÄ{ÐÇËÈÒÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÕ«¯¼ÀÏÊÛ¥³ÐÛ¢µÕÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:969;::;8@?:<<9<>=;;:?9?:;9=>==;;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÉ
§ ¨»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;547<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÆÓÓÕ¥¦¤¨ ¯§¢©ÐÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÒÑÒר̺վÖÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFHKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÑÒÏÅÔÓ¹ÇÖÓÓ¸ÈÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÒÒÓÔÒÒÕÔÓÓÓÖÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ>>786967899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EILAALD??;:889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEGIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDJ;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGIB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?:8776=??@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@BB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEFC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<;DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGGNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiihxsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptyvt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsoupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»º¹¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjdmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸········¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®xpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µµ¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢¢¢ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¥¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;;;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤££¡¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::88:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££££££¢¡ ¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¢¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥£¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>98;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤£¢ «cimnifm £¤ ¡ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9;;>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:=>:?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_]]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=9F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VPQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
}§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s}~
z}}¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
z||}~x
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPFMHSWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~}}¨®²¯¯µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWLO_^\NUTbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
£ ¤£¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJCPK_bXZQ\S_MHQIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©¨§¡¥¨¨«©©¯¡¡££ ¡¤¤§¤©«®¬¥£¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdVOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®ªª«¤¡¢¥©§§©¨£¢¤ ¥¨£ ¡¢©§ ¢¢®¬«ª§®¨¥¤©©©©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPORd\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨¦¥§¨¦©¨£§¦¤¥¢¡ ¡¡ ¡¤¤¢ ¢¢ ¡ ¢¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOWO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤¢ ¢¦¡¦¦¦¡ ¡¤¡ ¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvwa_\UYQUV[c^r_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;><@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯«ª¬¨¨«°©¨©¨¡ §©°²¯¬£¢¦¡©¥¤£¢¦ ¥¤¢¥£ ¥¢¢¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\V\hdocnihb^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£¢ª©§®·¶´´¶³¯¬«®«¶°©²±®§¦¢££¢¨¥¡£¡¤¢§ £ ¢¥ ¤§ª©¨ª¬¥©¤¥©§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxib[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>AE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ª²¸¼¼½»º¿´¯±³µ´··¯µ´µ²°¨¤¢ ¤ª¦¦¡¤£¤«¥¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨©«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥ ¡¨¦¦¥£¡¤¢ ¡¥ vxyxc[RYT__alhukpgiibYSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶³º±ª®´±°±´´¶¼¼¾¼¼½Æº¸·º½´¯µ±±º¸·²³²ª¦¦¤¤§¨¤®¤««µµ®³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YSah`fsositdidb[LK>:8898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÃÆÃù½¿ÀÀ½¿Ä½¼º½¾´§ª±À½¸µ¹À³¯¯ªª¨§§¤¯§ª´¼±´µ¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`a^^jbbnwuvnl[bQU\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAB;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±±§¼¼¾ÅÄÆÉÇÅÆ»ÄÀÅÆÀ¹¯½¼À¾¾³«ª³»¾´µ·Âº¯°µª«¦ª£¤§±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklfnuqruqf^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÅ¿ÃÂÆÅÀ±¾º¿Ã¶¶º©´³´©«³»»±±¯¬¤¬®´§ª©¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tkkndolhqxoyiia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄø´À·´¼Á¹··¿À»®¥®·¼·£·°¦´µ¬®¥¥£¨¤ ¥ª³²¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{vnkhguZfrwsxfg]d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÉÆÃÃÄÂľ¸¾ÁÃÀľÁÏÏÎÆ«¯¶´µ« §´³®«¸µ³«©£¢©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuueeijh]jomxwcb``^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÏÏÌÃÇÆÈÈÈÇÉÇÅÉÇÈÇ¿ÅÇÄÄÇÈÊÒÏÒ̼¸¶´¸¸Á¾¾º½º¼º¼¬¦©»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqobagugiitmxl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÍÐÎÇÌÉÂÁÆÁËËÇÆÌÉÍÅÆÆÃÆÅÉÍÐÍÏÌÇÄÀÃÂÉÍÇÅÁÄÇÁ»¾´±°°Á¾¿ÁÆ¿¾¸·Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlietnsb\bTWTSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<:>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÅÇÈÆÒÉÁÃÄ¿¿¾ÄËÈÊËȼ»ÈÇÉÍÈÃÈÉÉÆÅÃÂÁÂÇÇÉÊÇÌÈÇÈÍÆËÏÅ·ÀÀÀÀ»»½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrofegcjdajmnn^X\VUNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÂƾÆÁ¹»Ãº¸¹¼¾ÁÆÁƺ¹ÉÉÃÅÄÀÄÁÂÁÄÁþ½ÂÀÀÁÂËÃÆÌËÅÈÑ°¾½¸º»¼¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbabccjbfcZYY\YQNE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹½ºº´¿¸µ·³¯»¼·À·½Â¿Á»¿Á¼»Å¾»ÁÄÀ¾¾¸¼ÁÁ˾½ÉÄÀÀÊÀ±Á¿»¸»¾¹µ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qc`bbgjffiei]VUSYOSKE8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µºÁ¸¾¸¿¼½·µ·°®¸¶¹¿»À¿·Á¼»Ã¶ºÈ¸¶¹»½¹º¶»ÅÅʽ¹ÅÀ¿¼Á¾¸Æ½ÁÀ¼Å¸¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zxpmeefoiekgXXNKKKRILHC9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿½¼²¯¬±°·¼¶»¼ÀĹ···µº¹º»À½ÃÀºÄ¾Ǹ¹¸·µ¸º´·³»ÅÆËÁ»ÆÀÀ¿½¼¿ÉÃÄžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksebm_\THKJDJBCG?9;8=<7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼¼À·ª¤®°·»³½¿»Ä·¶¸¶·¿¿Ä¼ÂÅÅÇÇÊÉÆÏÂÁ¸®µµ¼¾¸»²¾ÄÄÊÅÁÉÿ¿¾½ÇÌÇÇÄǽµµ¶Á½º»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qelintnwcgb\cQKTHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?=??FD@A?>:7?@CC?A=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼«ª£°¹½¾³¼¾¼Å¸²¸¹½ÇÉÊÃÇÈÆÆÉÈÌÎÑÌÊĵºÀÃÈ¿¿µ¿À¿ÆÆ¿ËÆÿÁ¼ÀÃÌÊÇÅÆÁ¹½¼Ä¿À¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_b^aaNHM?E@?DC;;::;:8;<:9<>9:>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´¼Ã¼ºº¾¼Ä¿·½¿½ÇÌÆÇÉÆÆ¿ÄÄÊÈÌÌÍÊÆÂÃËμ¹½º¹ÀÿÈÆÄÁÁ¿ÅÀÊÉÃÃÃùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw{_pc[]_^SI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA>>ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼¶º½Á¼»¿¶¿Á¿¼¿ºÀËÂÇÈÀ¿¼¼¿ÅÂÇËÈÁÃÀÀÉÊÂÀ»»°´»½ÀÅÆÅÅ¿À¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}zmsxsgp][^\YQEDCMIAE=G::59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯·¶²µ³·¹¼»¶»»½ºÃ»·½·¹À»º¸¸µÅÁÂû¹³´ºÁ½¿ÆÀ¹À¼¾ÅĽ¾¹²°®¸·¿ÃÇÃĽ½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸¸¸½¹»±¶²ÈÀ»¶´±°·¬³©°³·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|vluzpni\_`YSPAEHGK@DCH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÁÀ·½¹¸¹¶µ¿³´²¸±»ÁÀ÷·°µ¸¸¸Âº´»·»¾À»»¼®¯®³²¹ÁÂÄþ¼¿»º¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ¯µ´´½º¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsvvwnq`_e\ZUJ<??FF=FCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Ã¿·º·¶¶²´À¶²´¸³ºÀÁù·³²²´²¸¾¹³µ²¼¹¼¶º¾²´´´°¸¾ÃÆÄÀ½¿¹³¯²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtvrl^b`[]OHA>=HCFMC@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·À½»¼¸¶º¶±Àº·¹¸¹»ÁÁÄû»¶´´°¶ºµ´²¬¼¹¸µ¸Áº¸³±¬·¼ÁÇÿ¹ºµ®¥¬³°¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wo{ournc\fX\]RNMA>IB@JI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³±¶º®¬¼²¸¹·»¿½¹¾À´¿»¼º¸¾Â¼ÂÊȾÀ¸¸¶²´¶²´¯»º¸¶¹Àö®®ª²¶¼½¹¶²±¤§§£¦©®¹¬««¥¨¤«®®§¯¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmuik][jT]\OMHDFLBFMF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹ºµ¹»µµ³µ»¼À»¾À´¿¹¹º±ºÃ¼ÂÊÅ¿»¿¿¹´´³°±°¹¸¶¼¸»¿²²²®±®¹¯ª«¬£¨¡¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬«¯£££¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndT`cW\QNLH@HQDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¬¯²²ºº··µµ¼³¯´«¶º¸ÀÄÁ»µ¼½·²³°¯¬®¶¶²´µ¯ª¤¨¨ ¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨ª«¥££¦¢ ¥£¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vybwln\QhTPNGOMLBOQ@>;>49:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¥¬ª¨µ²±°®¯²§¦°¤¯®µÁºµ·²·¶³´«²´®ª«¯°²³®¥ ¢ ¤¥¨¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦©±£¥¨ £ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uu}mk{dhUQcMIHGNRNJNG;E@=2?759;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡©¡ «ª¦©¤©¤¥®¥¬¬´¼·³±¯±®µ¯¯³µª§¬£ ¢¢¥¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¤¡¯¨®²«¥ªª ¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}vx|dxy`bRU_HIIKSTIRPL9>B67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ ¤¨®¬««¯ª¯©¥¥¦¤¡¢¦ ¢¯«¬µ²¶¦¯³«©ª´±±°¸§¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§ £±®²°´©±¯¢¡¤¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|uvshle[SZYMQJNNULRLA7=B78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=>758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢¡£ £ ¢¯¯¬¯±¬¶¨®±°¨¦±®¬°§¢ ¡¤¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¾°¬±®©ª´±°¨«¨²µ·³¸¬±´¤ ¥¬¡¡¢ ¤¡ ¤¡¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xuiwu]lZR`HQUHFUVJBLG=KH8E<67;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¡¢ ¢ ©«§¬©ª´¬«¬ÊÀ¤«¨ª¬ª¥ ¦ ¨¥±ª§®£«¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼·½³³µ¢¬¢©¨²©«¨§¨ª§¦ §¨¥¤ª¡¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vqmivmhm\X[BVMJGMGBFM<>L=4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·£°¦£¤¥¢¤£¢ª°¬¦¨Ô´¥¬¯®©«§¡¢
¡«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶ººÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸³»Æüü·³©³ª³´¯³®ª®£«§¶±¬¢¯¥ £¯±°¤¤¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¥¦¢¤
{trkkurphW[QETHDIOH>EA4EH95;=6;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ ¡ ¤¥¦¥ £È´²®§¤¤£ ¥«¥ym ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿ÀþÇÆ·ÃÉÉÂÀž¹´¹º´»·°µ²ªº±®»·¾ººª·«ª¸º´¼®®¹£¦£¦¥¢£©¦§ª§ ¡¡¤£¤§¢}zrkdhoxjdZ[FKLEDSLDBE7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ³²¸§¡¡«ª¢¡¢ ¢±³¨ wsqnp¦®´¹Å»ÍÇË¿ÂÌÎÍÌÇÉÑÌÍÌÇÉÅÆÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÒÓÌÓÐÓÓÌÊÂÅÆÇÊÇοÈÑÌÇÅÆÄÁ»ÃÀ¾¾¾µ½³¿¿ÂÂÆÄÇÄ®¾¸²¸¼ÄÁÁº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLCEPIDC@5558:B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª££¬®¦¥±ªÅÆÌÎÍ¿°Á¨¥¨¬ª¡£© ¾£©°ª£ yrroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÏÊÒ×Ñ×ÒÔÕÓÓÈÌÇÍÍÉÒÌÎÓÌÅÇÉÊÁÅËÆÈÈž²³ÈÄËÊÊÎÅÊ¿¾¿¼ÁÇÄÌÌÈɿÿ¯³¨¢ª£¦©¬¤¥¦
zruvgcgvidVWQDMF@IQB=B<:22@<D<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ´¸¬®£¤£ ¤¬§¯Ë¬¯¯¦¡¥¡}wpkebhqoq{
vpnqtp
³Â¾ÅÑÐ×ÖÖÒÖÍÔÖ×ÔÓÑÓÔÔÒÏÑÃÐÓÖØÕÖÒËÉÎÑËÆÍÑÉÒÕÖÙÕ×ÓÖØÎÒÊÏÑÌÎÐÌÒÏ¿ÇÆÊÃÌÌËÎÏÅÆǶÀÊ¿ÑÌËÏÅÉÇ¿ÃÃÈÎÌÏÐÏÍÊÈθ·»¨¥«§£ª¥©¨¨|xsvpc`erb]R\IJFAEHI>;@8=4585;86:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´µÂű¶¨¢¥¦¡¢«µ§¯ÄÆ¥ ¯¬ ¡¢wic`____^_`^blusqpolrquÄÇÆÔÕÖ××ÓÖÏÕÔÚÔÔÎÏÕÔÔÑÑÌÐÎÓ×ÖÓÕÐÏÒÓÑÉÓÑÇÐØ×ØÑØÒ×ÙÕÖÌÏÏÉÍÑËÎÏ¿ÅÂÇÅÎÍÑÐÑÈËÌÀÊËÅÓÎËÎÈÄÉÆÆÈÌÊÓÓÑÕÏÒÌÒÁ¹Å±¥¨µ®§¨¬¥²¨°³¬¬
{zqstmacim_VP_JJBFCQM?<>54:=52855<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡©¯®ªª«¦®¸¨«·×ÔÕÙÙÑÎÐÀ¼ÌÉ·¿¯§«©£¤±µ²£·Ë»ª«¡ ~qecb__a__a`_``_`fmppnkorwwÌÀÒÕÓØØÖÙÑÒÒ×ÏÓÎËÒÍÕÔÒÊÏÌÓÖÒÑÖÍÏÕÕÑÆÑÔÊÐÔÕÖÎÒÐØØØ×ËÈÍÃÈÎÌÊË¿É¿ÇÈÍÎÏËÐÍÎËÎÎÇÊÏÐÊÎÊÂÉÆÉÌÊËÑÒÌÓÑÑÏÐʽȹ°®»¸µª¶°¨¸³¿»±
yvopnkadnpaW\ZIFFDMWE;@<33<=87855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¥®¾´°ÀØÒ×ÚÜÖÏÍËÄÓÐÂÁ±ª®«¥²±¸ª»Î¯£k^^^adb``aa``a^__^]bmroostvvy¤¾ËÕÑÖÔÓØÖÎÎÔËÍÎÅÎÊÒÒÏÆÎÍÍÔÌÎÓÍÊ×ÕÐÌÑÔËÌÐÑÓÊÎÑÕÒÕÕÊÀÉÁÅÌÂÈÉÂÌÃÅÈÊÊÎÊÍÌÐÍÓËÅÈÏÌÈÇÊÄÆÀÅÊËÍÏÑÆÐÎÍÍÌÏÅÇÀ·¸½Ãýù³²¾±»Ãĵª¥¢
xpqkmg``qhXXhVLFLIPPB;D>;67:89:57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÅÃÁ¿»µ²±Ç¸ËÕÖÙÚÛØÌÍÏÈÖÕÅ÷±µª£¬¸¹¯¿Ê¡|fbbb`]^acb`_``aa`_][]grqqrsqmry¤ÆÓÏËÐÏÔÕÉÅÉÉÆÆ¿ÃÆÏÎÇÅÇÍÊÒÈËÎÍÆÑÒÏÎÌÔÊÇËÎÏÇÇÏÒËÐÏźľÆɽÂÇÉÎÄÁÇÀÇÍÇÃËÊËÏÇÃÃÐÈÆÁÅÇľÀÇËËËÎÂÊËÈÇÌÐÄÅÇ»ÇÃÈÈÂÏÁ½¼¿°ÁÉǹ½ª°²§¥¢£wntdk`^fqa[W`GHHGIMTG?J=64355=<48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥²±¬ÉÍÊÈľ½ºÍÍÇÐÕÕÙÚÛØÐÊÏÐÒÔÉĹ½¾¯§·ª½¸·Ã¬~
t`\^^^`^`cdc_]]^_``_[Z\akrrookloo}¸ÑÈÉÊÏËÍĺÀû»ºº¾ÈÆÂÃÀÃÇÊÉÈÊÈÁÅÌÆÈËÍÉÄÂËÉÁÂËÐÄËÈ¿¹Á»Åǽ¿ÆÏËÿûÉÆÈ»ÈÆÄÊÀ½ÁËÆÅľż¼¿ÃÄËÅļÀÉÂÅÇÒÄÀÈ¿ÊÉÆÇÆÐÃÃÆïÄËÇÃÊ·¿¼º´©¬¤¥¬£¡¥£ {vstfiZanmZ[XQDLFBGDLDFS@54334?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ËÏÑÌÇÂÃÇÍÏÏÌÕÐÖÙØÙÐÌÓÎÏÐÊ÷ÆÀµµ»°¿¶¸°z
vxurq_Z[]``bddded`\\]]_^`[YZ\borokilposƼÉÅÌÀÆ°¶º²²³²±Â¼¼¼º¸ÀÁÁž½¹½¿¹ÄÊÅƽÆÀ¸»ÄÉ¿ÂÉ»·»ºÅþ¼ÁÍÃƾ¾µÁ½Ãº¼Æ»Â¹³¼ÅÄÁ¶¿µµ½¿ºËüµºÈº¿½ËÃÁÅÂÅÈÆÈÆÐÆÂÌDzÇÉÃÎÍÁÅÃÀ½²·°²§¨¨¹°¥°«¬yvwjdg`hocV^YJEJFHJAEBEI@9:648853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÆÂÄÈÎÒËÊÊÇÍÎÏÒÉÑÆÖÔÖØÎÌÐÇÌÈÊĽÉÁ±´¹¶¹´®
y~|tud\\]^``bcabeeb]][\^\^]Z[]]hsqmggnpry½ÌÀúÁ¸®°°§ª¬§¸´·´²³´ºµ½±·°µ¯²»Â¼Áļ¿ºµ³º¾À¸Ç¹´»¶À¼¸½ÆÁûµ®²¶º¾´Ä·»µ«¸½½¿½°º¶¯¶º²Å¼¶®»¿´¶´Å½¾ÃÅÀÃÅÆÈËÅÀÆÆ»ÈË¿ÏÊÇÃÆÂöý½¶¹¾Ç¿¬µºµ·¶xtxfgebkn^V^`FKHHJFBDAEE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÎÈÆÉÎÌÐÌÎÈËÉËÊËÅÑÎÓÐÏÇÉÅÉÄÿ¼Ï¼²·»¸¶µ{y~wx}th^]]]_`_`da^cec__\[^\]^Z[[]_lpnhfjnnr|¤Ç¿¸¸µ°«¬§¢ª§«¬³©«©´¶°²©®¦¬²¼º¶Ã¹ºº±«µ¹»´Âº°¿±½¼»¶¼Ç¹Â¶ª¨°±¿µ·¼¯°§±³´»¼«µ¥®¶®º±°ª¸°»®»¸»¿¿½¹Â¿ÇÃÅÁ¼ÆÁÈ˸ÅÇÅ¿ÆÃùÄÆ»ÆÉÌ˳¹Â¼º²rvvkiablhYWW[ALKLIEAC?FA:9:995854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÆÎÒËÃÆÂÅÐÇÎÂÄÇÀÆÆÄÄËÂÊËÂÃÀÆ¿¹»ºÉ¶³º»´³ª|y~z{
wo^]\]]_`^_dcbccb`_][[ZZ]ZZZZ\dnohfgiknr¹°µ®¦¥§§ ¤ ¥«®£§¢«ª¬ª°¤¦ªµ¶±½¹¯·¯¨®·´´¼¸´¼¯¸¹´±¼Á±À®¥¨¢«±²³§¼ª«¨«¬´³¥¨¡¤®©²¥§¨¥¨·¬°²·¹º»±»½¾¾Ä¿µÁÀÇÈ·¿ÀÄ·Ä¿»¿Ä¾ÄÈÌÊ¿¾ÃÀÀ©rtrji]aodWVXPHYRSKFFE>>@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·ºÄ°¶°ª©°±³µ½¯ÅÑÐÍÄȺºÌÂÌÀ¼Ê¸¿ÅÀ»Ë¹ÂÅĹ»Â¼¸¶¼Ä·´·¹¬°|~~xt|swf_]\]^_`^_ccab``_^]\ZXZ[[YXZ\_fkfegehkor
ª¥¬¦ ¡¥¤¡£ª£¢¥¥§¥¬¤¦¬²¯¶·§°¬§ª´ª´º±¶µ¶¹±¯º¹±·¤¤¦±§«¨¹ª¤§¨¨§² §¦¤¥¬§¤ ±¬²´²´°µ¼¶»ÁÁ²º¾ÃÁ²¹ºÂ³À½¿µ¸»½¾¼ÂÇÄÂÿ¿Ä wpkaf_ko`UY^HNgOTGEJF<=@=:;;825536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:7676788666;::;9:;<859<:>>@;ȵµ½¸ºÁ»½µ ¡¦º¶«³³»³ÄÐÉËÃǹ¸ÉÂÍÀ¹Ë¹¼Ç»µÇºµÂű¼Äºµ®·¾º¯±´¡}zvtomkjjqi^`]\\\^`_acb````]\[\\XYXXXVX[^_dcbegggjmo© ¡¢¡¢¦£¥¡§¢ª°±µ¢©ª©««¤´¹·°¬²µ®²µ®°ª£¢²¤¦©¸¢¦¦¨¬ª ¥£¯©«§ª«¬°²¸¯¸¹»°¶»»º«²²¹²½´¶±±µ´¿¶½À½ÃÁº»½zrk_e^ddXTX]IW\KPGIIFA<??@;?<04535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÐÈÉÁǼ¼ÅÄÏ¿»ÉººÁº´Ä·³ÀÀ²À»«¨³¸µ¦¯°¦ysnpnkb^bff\]^]]]\]_`abccba_\[[ZZYXXWWWXXXZ^bddeffhikr¨¡¡¢¨¥¦¡¥ ®®² ¥¢«¦¡´°±±¬¨¯²§º³¦¶¡¢£¡£¡©µª¢£¦¥¦£¬¡«¦£¤¦«³³ª´°²ª²¹´¯©¯²²²·³®©¬®²¸°º¶¹½¿·²±
yue^e^[YVSZUK[QLIEHKIB=?AA@A:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ·½¿¶¾¼¿²¥£¥±Âµ¶½´¸ÂÍÈÇÁƸÂÁÈϸÂÆ¿µ¼¼¶Â¹µ½¿´¹½¹¨¤¯¹¯¥¯¬}
yprtqhedhec\\[[]]\[^`a^__`^\[Z\ZYXVWWVXXXXVWadecdeddhjv¢¡¡¡¨£©ª¦¯°«££·ª ®¨¶©¦§°£·°¤·¢ª¦¡¬¸°¢¡¤¢ ¡©©£¡£ªª°®¨´«ª¦²°¥ª®²±¯°®¯¦§§²®±´¯¼´º·®£yud^aVYWSRTKM^LPKGGLLE<@><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾¸½®§§£ª»À½À¹®´¸ÂÍÉÆÃľǹÉÍ´ÃÄ𾿸¿À¹¾¿¸¸»µ¥¥®¹¤¦¢}yrjmrtphhedgb\\ZYZ\\\]^]\[\^\[\Y[[ZXVWWVWXWWWU[ccbbcbcdfj ¦¥¤¦§¥ª¯¦¢£¶¨ ¡¢¨´¡¥§¤¯¥°¬µ ©¡¢¬±±¢£¡¦¦¡¢£¥¥«¤¥°§¥£««¦¨®¯®«¨ª©³¥¦«¯´±®¼µ±¯¯ zvrda\Z]XNLRHRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8846863321./2556;:8;7876<;:;;A8x»»±µ½°»±¸¬¤§·»¼Áź±¹µÅÊËÁÄÇÇÈ·ÇÅ´ÄÁÈ®¹ºÁ»Á¿À¼º¶¸´¤¥¯³wodbgiifgigjm`]\[ZZZZ\]\[\^_\ZY[YYZ[WUXWTTWVSTRU``_`a_`acdi£ ¥¡¥¤£¢£¡ª«¥¥±© ¥«§¡¬©¨®¢¡¢£«¨°¢¡¢¤ ¡ ¡¤¦£«¥¢¤ª¤«®¥±©¦¥¦¦´¦©¨³µ´¹º¯ª¬rpo`[WVUQFQOHZ\ORITKSLEGIC8;;=<8667:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:8698598989;9@9{µ´´»²°¬²§§¯¹¹³ÀȺµÀ¯ÆÉÍ»ÂËÍÈ·Ë¿³ÀÆ˯´¼ÆºÀż½µ¸³£¨®¬|ujjjlhjlmkjme]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\]]^^__bdm¢ §¨ª¨ª¦¨¥£¤®¤¥¯© ¯ª³¥¦££¡¨ª¡ ¡ £¢ ¢ ¢¨£¢¨« «¯¤·¥£¤¢¬ª¨«®²·²½µ³«¯ssh[XXRUREXLQ[YMUNPLPQINIB<??A?<65799<<987:79:;<=>;7;;:=67:;8976989:6:=99577571141-+/434988::8::748=8?9~³®¨³¶®©¨¯©¨¬·¶¬¼Ê»¶¿¬ÌÇƹÂÏÐȵƽ¹¾ÅË´¯»Ã»Áü¿±¶¤¨¬©wxoninnnphgigd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUTSNPQYZZZ]\\^_`d~~¢ ª©¦®ª§¯£§¬ ¤¨§®§ª¥¡§«¥ £ ¢¥¥§¨¨ ±°¦°¼§£¬´ª®§°´°¹µÀ±±«}qrbVTVNRIGVQRRLLXMJLNRGMKACFDC>@75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8³¦±·ª¦¢°«ª§©²±¤¶Æ´¹º³Ëƺ»ÂËÑ̳¸º¾ÀÄƵ³¶¼±¹ºÂ¼¿¯±«®«¨
kgmnroqkpkdfge^ZYZYZZZ[ZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajzv¨©¥¤ª§ ¥¢
£¢¢¤¨¡¢¢¥¤¦¨¦¡ ´²§²·¡¢·¬©¤²²¦µ»µ««±£xql]NPQLOCMNNPKFNNJJNMQIMJAGKHGC=858889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12776:999984988A7w¶§¤¶°¤§£©¥ ©¥¤³ª¢²Ãµµ²³ÇƸ»ÄÊÍǵ¯»¿·ºÃ²±µ¡«´Á¸¹¬¨©±¬¬£{^`gsqvqjniehhj_XXXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQMMKLSWWVXXYX[]aosvq
¢¡£¤¡s}
{¢~~tz¢£ ¡££¢´¯¬¯¬¥¸¦¥°¡°®°»ª©¯ªvrbUMROPMCSNLQMBPQHINSMHJJCJLFKJ<749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-11764789::65:87A7w·¢£´¨¥¦¨£¦¥¦¦¦³§¥´Á¸¯´°ÊŸºÁÏÆ¿´®¼Ã®°Æ°¬¦ª¢¬½¶®®¥ªª¨pWW`hgihincjigb\XWXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTRMMJHNSSSTUUWY[]ilrm
|tNXr_;Wo{
syz
}xro
~¡ §¯©¨§³¢¦¬«§´¢©£}rm_[NSRVLDTJPMLFNOIELQMKOJIMPFII<7599999:7:;:>>8:==6:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9y· £¡¦¦ª §©§¢©°¨§´Á¹°µ°Èø´¾ÏÀº°°·Ä©È¬¦¡
¸«¥¦£¢¡gQMRVZZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`moi{tPBA}
x`JQnx}
n~wuuwpQ|~xvhw
~¤£¨©¥£°ª¡¤¤¥ª¡©¢¦¨tle^[HQQRMIUMSILKOIHFKNLMTKQQOFHB<769:8:;;8:;8>?99>=8;<6;;478;6775344696/3/.125221/,')+*,4833979:99::::?9w¶¢§¡®¡§¨¥§¨¯ª¶¼¶¸·³Â¼·¨ºÉ¹¶¨©¶·¬µ¿ª¡¯ cMLNNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZntw~ji]Ut|
{uxsnupty}ª
yzhv{prmxxz{vsrwguz{© ©¥§¤ ¤qg`\\JVORGKXROJMMRJJJMPHLQLRTMEHA<77;99>=:;<98@?::>=7==79937795675252572/2.,//200/-+(().1272198798775:<;7v®£¡´©¯©¥¬°±ª½´²»¸¶»µ² ·»³«ª«´²¤¢
dKIIHGFHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQRSV^u}ygw}gyvx|r|v{ok~|s{}tfv|
lohs|lyq}pmuqhq}pC
~wwz
}zu~£¢¥vmlebZWWTQJSUTOPNQVKNKNOJQNHNOKFD<;79;::?=9<:99??;8<=7<9999266856633621224.,,-..-0-+*''*.1362/876966527995y¦ ¦¯¬®«¨©±¯±«¼¸¬»¾¹³¨±§§«¦£}zx}~dJFGFA@CDILLMQRPQSUTTUVWWWXWXYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNPQTX^eprm§ªÀ~uyb{xn|yy|
omxsxjjr}Inhx~licly
ksl|nr{hmp~s
z}~{vots
ywp|~mhmnnWUWTRQYORUUSXUMNHNJMNKCHNGE@:89;99:><9<;::=>:8:;9?868727575541442/024*+**-.+-*(*(',-1250,5567485HA895w¥°¢¬ª¨µ¯®¬´¿«¼Â¿¦¢¥
¢£u}|w}s|wtw{fNEGD@<>>AFFGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jsCo;<95<_IMOORWZRY\`§bitze~pmzvtlts{jkMy
g1vsl~}tfet~
filukp|gpp{n{s}|qpnum~wytiyyuiingdWQZWYY[MPUVYYNIHEJJHGBAFDCG=998;9:9<:9;:::@<9:<98>787715244533645031.**+),,++)(+'),,226,+5775478iO8;5n¤¨®²¦º®«²°Â±»ÃÇz
swvwuwvoxsiTFID?<;9:?@ADDEGJLOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOPQVLAIQIb¯³ q|xm}lr
zyr txsu5q¨¡¡¢vp||shfbinrmpuioXuovl{|mqmpzsvmbv
ux~~yponj^Z\][YX`_SN[ZYXLHJEJG?CABG>CD=;97=;:;;9:99;:?<88=:8;66651121353475531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥µ©±®Á²»ÁÆ}nv
nyz{q{t|ko^JPG>@7448;;<=>@BEILLLMNPQRUUVWXYXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~mw|}
~v¢y~aªzv~s{\dqtz{wlgiaxo
znwtzpsywkni]w}|
}q|uw{}unqref_[Z]S[f^WQUX\VGJKDLG?F@DC>AA=:97<;;=<::99;;=>79>9986754244004645654-,)+('''&(())((+++/00Uq<23331E~W4=9\x¦ « ±¨¯À±ºÅºz
vk~yt¢s}lzlSWL@E211267688:<?BEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJi{y|q|z|~v¡¥¬©H®¯¯¨sl|}hggx~n
q
Gkwqyvhmk_v}
z{uv|wmow~rqpjZ\\[ccXge\UPPWYPDLLFOICFCCA@CA=978:::;;:888::?>6;>7585773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|~
¬¡¦¸¯³½³}tp}}¥yuy_cVKB60./23123668:=??BEGHJLNQSTUTTVUSQOGC?80,#[>?84.]ps£UFIKMNPW`YpZ\^j
~
¡¡¥»±§»Çè¡¥{r~v
ihotqw{v
}nvug¡«¢{zzogkx}x|qic]ZY]i\`f_ZOLNXRQIPKDNGCKDCADDA<:87=<:<:88778:==8<=68656623444576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nupgx{¤¡¬¦«¯°¡xw}lpj]CA4--//./02234779;=?BDHJOQRSRSTTRPOHDB<87/9D><<63.lMPHIKKKNV`cggmu £ª¥£¬¨¶¢¨Áîǯxº|¡
¡
lpuvql
r¡¥µ©¢~kjk|~~q_\b^Yfj\kk^XKHOSQNMLFIPDDNFBCEGB>997=<:;:987767;:6=:785456345566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYppuqv~§ ªge¤~
y}
xxgMR>/..,/.-/000212457;?CFNPRTPQRSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} ¨¦¢¡¢¨©«¨¬©ªµ«¿«¶ÈÈ·ÉÑϾ pi«©
¡§¢wz~¡{v«³ }¤¢¦¶°¨lss{}zof^[_^`fc`gf\REKKPOIJLFFMCGMFFCBGDA:85<<899975658>75=84745754536958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f2A@ia^Pqu`n}aw}|ªªBD}x{
w_bP460-1/,.00./..0015>AAMQRSPRSUSNSLEE@<>=FGAA@8662<9;FHGIIMOQYmw£§ªµ½¸¥®¬¬§¨´¬±·²²»±³¾³Ä¬»É˸Ŀ¸¥£°²¬ª£
¦¦ ¢¦¢ª¨¤
£ ª ¤©±£§·» £°££¤¢«¯³µ¢¥ªz{~|e_f[d`]bc^ff_[ODJHTOFHLFKGEFHAKFCFFA:87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicXjpXz
v
ÚÈsV|z
qna@E64<2/110-,+-1/-4?DAMUQRTUUWUM[PGGD<>>FHCD@7;<5C;=FKIGHROPW ®£³ª²ÁÈÄ«³Å¶¬³À³¸¾¶¿´Á¶»»¤¸Æ©¶ÉǶ¾¹´¨£´°±§¯ª¤v¤¡«±³©¨®µ»²º¬¯µ¢±¬±µ¼·µ®µ §§£¨©°²º¸¸§·©¥ ysW`bTe``b__e_[TIDELVQIJJDJHEA@@KDBMF<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AEWQJL[ZQbdWzuq}v~{¿»£¼´y
zyn]V@EN<6:46AB764//6CHCQ[OQUWU\WO_UIKJA@?GKFEC;>@7D7?BJJEGWTP^¥£±´Ã¶¸ÁÌʶ»Ä½³´Á·¸Âµ¿°·t±´¦ºÅ¤°Æ¹±³±´¨¤µ¶ª± ¢¢¥±¥«§¤ ¬³º¢¨²¹µ»¾Ì¿ÅŽ½³Â·º¸¿·º·¹±¦±ª¾°½»Â¬»¨ª~ziVa_WicidU[cYVTIHGLQGDIJAHD>?BBK@@MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FQLALRWTYVZwjp
nzrxb¸¡£{z|}}xzueO\dGEL:Qda[^SF>;HPDZdQQYXZgZT`aMSOEA?IJHEFA@C=E6B>HGKMSZT^¯¸µº¹ÉÀ»½ÊÌ»½À»¸µ¼¼·¾µº²Æ`u²¥±«¾ª¥¨«ª¤¢²µ «¨®¥§¦¥¤¢§°³¨²²¼¶Á½ÓÉÉÓÆÂÅÌÂÊÃÀ¾½¿»¼·´°¹··ÃºÆ¾ÃÉ°ºª¢¬¥¨¶}o]`_\U`]heRXaVRVIEFMK@>HD=KB=B@=F>;H@796379>489:57045/26389374526?8@>GKRTTRPOQRQJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@IMPRLQ]gmlq
slsrsÕÀµ }x{{yt}zlepvY]\Peeb`ed][XW\MdmURmn_o_XgeUYTJDAKKHFHHHHBI9D?HKTTV]Z\¹À¹½·ÆÀ»¹ÊË»·º¶¸¹³¸µµ®¶¶du©p^¢¡¢¤«¥¨¥¤¬¤ª°·°¼¸ÔÐÎÖÏÉÌÒÌÏÎÊÇÀ¿ÂʽÁ½ÂÀÅÄÆÊ¿ÉÏ´¤»±µ°¬¹½}wi[^ZX[_XabQ[`SQKCBEFE<@F>BIB@D=:E>=J?47535;=468977022/24169775555D3ELM>510006:477@IOJ;-&**(-./,@M+/54mI0Ht?>BD@CDFKODR\Yi`onlotu³¬¡¡
|s{
{ts{ylmu|iseilifjii`fihmZmt¤¼g[oh]ZYTHJNPJKQLTQHLAJGKP__bgjb·Ç°¹³»¾¶±ÄǶ°¹±°»¬³±§«·¬¶§§N §¥¡¦¬¯¨¯§³³ÓÔÔÖÑËÏÓÔÎÓÏÌÆÃÊпÊÉËÉÒÈÍÍÃÑÒ¸¯Ä¼Äº¦·»Ä¢laZ[\W_WXdYO\WNQCBIECI;AD>AH??B8;D>@I=46655;:687654/10146278875367C5B8?-0,1348=97,.,1;FL=),(.0007K?-46TW0DwC;B>EBACJM?UYSfWshqoyy ª¦}
|p{r~qyulpxr{nxslipmcimpyiw}~Ë¿Âߧmcxod[a`JPRUNY^P]]NPNTQUT\nnwr®¸¬´¨°¶«½Á±«µ¦¥¹§¬®¡¬´¤±®§«¬¤§¡¬¬ÎÒÕÑÍÌÒÓÓÐÔÑÎÈÃÔÑÈÎÒÓÓÖÍÒÑÅÒÖÆÁÏÈÈ鿸Ðwlc[`[U^Q\ZOOTPNH>AGBCF<AB?FE>@?:===<JA45465<888664412/03526768533;=<E=@11+/349?5901022-2EO3)/3.32=N248C}_2AtD:==I>@CFH<VRMO[uwmwp}~¡¡
y
{r~z
v
pwsls||w|sxqkrrioqzys{¾Ë~±vr
whaj]CZZ[WfdXekTX]]`c^cx{ª¤¤¢ ¡¨§ª±¹«¦´£¢®¢¤®¢§±¦k¢~
§°¢ ¤¤¨ÇÍÏÇÁËÐÓÑÔÒÎÓÍÆÖÓÌÔØÖÖØÕ×ÕÉÔÚÍÊØÖÑÊÄÃÌpm`^]VRWQ[OJGJIJ@;:;ECD<CD>HC?CB;;9<9GC46544<5687543250/2546745544<>=E?A62/-16;=081/254/-.;R017/532ED28>nb5=tM99@I<AD?A;PLFKYpu~isyr
x~xs{}w{oxpmuvx}t|ylvun}vuy{µ<AÆ¥~|jeWICecfchjdoy[_fhknin ¤¤¦²¤¥³ ¢¥¡© ¢±~
z~ª£}«³§§½ÃŹ¶ÅÍÑÐÑÏËÒËÉÔÎÑÕÚ××ØÔÙØÍØÛÎÉÚÚÒÖ¿ÌÍ´utlb[XQSPXUEFJIEE=:7:@AB:GE@EDBDA;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?1*(.BT29254/7K75<`bA<svV87AH:?C><9QECJTlnopbqqs|~
}y
zyqz{uzzp}opzr{qnzuw}|u|°tYªÂ·pnc=^hrpqpnxweioruxr{ ª¡¬¢¦¬
}
~my{®ª¦®µ¼¨½ÆËÈÉËËÏÉÃÒÊÔÖØ×Ø×ÔÛ×ÓÙÛÖÏÛÚÑÖÈÕÌvxfeYXNQR\GBEII>A>=8:=?;>H=@BAADA>?:87DB755479.566435532323647553457EBDCEB56<FNSM[nfcnsk`V>,4LG865433BF4=W_hLux^8;?F<<B<:9D?CGRk_mdbfkvqy~
|}~wyn{{tz¡vvtu}toou|
zv|¸Æ¥ÃʸxpeNeczw¢yyw{|vm¦ £«
{|¡¼¡¨¥¥§µ¾À¿¸ÇÉÍÎÅÍÊÑÖÕÔÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÜÆ
xvdfb]RVUTLKDMD;==<9:<>9>A7>?@=@><9867CA6455=80665547745613854564557HH=DJE7925;H>;::7HP\ZRUXK9T>;95327I8=NYMHxxd5=>C=<@:6:>>@EQ_Yfa][htzylwvz|~}
{~
z
{u}um}}~t|}x~yot}
|~{©Ã ½¤~}rs¦
{iGq¡¤
¡~¦
¤¸¡¦ £®¶º´«¿ÅÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Û·wvuhgcT^YRONHCLC==>99;:99<=6@>>==9::;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWN<MTHN?96333>C;[X>5YypZ<<A<=>8589?<DRSRX^UXfmmmiqsx{{}|{}{~uzsztm~}w¡n©
z |~£¢¤¯ Wr¬[¢£¢
¤
³¡¡§±¸¬¤¼ÁÇÍÇÆÏÌÏÌÏ×ÏÑÔ®ÖÕØÚØÚÚ×ÖÙÙmzrddZZVQUVC@ID??>:49:;7:;:3<<?=>7;9:1:G=:27=@50677255?65;55858:57735HR7GOK994=EJB>1FCLA98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcbxlb~omwxz{}|{v
sp
{uwvt
}¦¢¦¢§r²§
£ ¢©° n·ÄȲ¢¥±d¤ÍÈ
ª¤¢
¥¨¡¢²´¥£¼Á¾ÇÅÅÉÈÉÂÊÓÌÍÔ¨ÒÑÖÖÖØÚÔÓÚÎp|e`[\\MISXABGD;A>837;<:8=64::<:72?9929I:>67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF>;88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBcGv}|m~xz~{vv|mnz|xx|~£³§£ª³¢§¥¤®¢¸³¡¡¥°£¤§¨¬¯¤¡À£É¹«£¦²
¨¢
u²¤¡} ±®¢¤·¾´ÅÇĽÃÿÆÍÊÉÒ¦ÎÍÓÒÑÖØÓÐغpwsZ^S^TOHIMEBCD5>:77:?<<7=43669774=5;5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=88567=:JFDGN[\YJf`;Hzzn
z|y~px|~}orz~|x§»¬¨²½¯¥³³¨£¡°¬µ¢¸¥¤©¸§¥£©©£®°ª»»®Ê¡j¶¸«°£¬½£^ª²|}´«¡¡ ¥¯¨¡¥³¸«ÂÈĵº½»ÅÇÇÂÑ ÆÉÍÍÅ×ÖÑËÓ nxfZXQ\PNEC><CAB8?885?G=<6<35345454B39:BM:B;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPdGb`bpJ?~s}um|}}pww{ªÂÀ¯½Æ»³´À¼´«³¶¨³½«»¤¨¹¸«§¦¢¢¤¢©¯²±«¤¢¦¥¤º¯©À¼²¹¥¤¨~¼°z¨±¬ ¤¬¡¡§¦¤¢¤°³§ÁÆï°º¶ÅÄ¿ͦÇÄÇüÖÑÍÄÊrp_YW]YLJAK@FG>A?B;:5>A==5<6>333242A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GD?CF\eG`igZ]\{uo~{q~{z§³ÆÉ¿ÂÌÂùǼ»¯«¹»³·º²À®¥Á¤«°¼½«®«££§«®´°ª ª¡°µ§£ºº¶Á¼¬©²¥¤¨
©Ääz¢¦ ®ª¡ ² ¤ ¥£¦¦¤¯®¥ÀÄµÉ¾¶Ï²Ä¿Ä¼³ÑÊÈ´rvjYVYhPLHBLKKJAA=CD<5AD;;3=8B332262A05IEN>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBeYNe\fTcjyr|xz¡¨º½ÇÈÉÁÒÉÊÂͽ³¼¾¨º¿½»Ã·¬Â©¬³¼¾ª°ª¤¥¤¬®³¶µ ¯¥¢£³½©¨½Á¤¶·°¬±¬©§¥¥vy
££ª¥|¢¡µ¥¥£¢¥¦¤£©§¢²¬¨¼Àį¥²·Ì¿¹¯Ä³»¾Á¸¬ÂÃÂÀjw`VUZYIJLIFDDHCBADL:4DH9;4<7E.12352B25SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQG7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>jH_XaZddV x
¡®¦¤Â½ÇÃÇÅÓÍÎÍ˼·°¹¼´½Ë¼ÃÁ¶·¼³¿º¼®¯¨ ©¨¶®©²·¢§¡«·¸ª¥¯¿Å±½¹´¨ªµ´®¯¥¬¨ ²Å§}}ª¥¡£¢Z¤e£³¥¡¬¬©§¦ ¤¨¥¶«ªº»Ã´¥³µËÀ¸ª¶¬²»¹®¨¸º½¸ilXUSSMDJRMK?AHEDHHH95EM;>8=@J.32025C55OVN<LFKRLOHGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|gV;=@BFBpEiIRebLF¥¢©¦¢¯¾¯¡Æ¼ÄÄÆÆÎÎÎÒʾ»¶±º»»¾ÏµÃ½¸¹·²±µ³¸³«¦«¬¹ª©¨¯¯£¯¤§¤¥µÀ°¬¬´¾ÃºÀº´¨¹µ¹³¯¥®®¤¡tÁ}±¥£ ©¡ `J¥U°¯¤¯®«¥ ¥ §¢´©ª³»»»ª°²Ç¿¹¦««²²£¡²²´¤nkcZXMOJDOOPQ;HKIGICC>:KT?A:=EM07544:B44MWO<JKOUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@BAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}hW;:BC@=QEWSsbWFHª ¢¨¯¨
¡£¤µÈµ©Æ¹ÂÃÇÊÉÈÌÍƾº³®¹¹ÁÁ̵ǺÁ¹µº°¯¯³µ§¤ª´µª©¦¬¤®¥¤¨¬º¿¨¬¶·¾Â¿¾¹´³Ä²¹½¬£¯µ¬¹¦¦v¿®¡ ¡¨§ª¡§nv£¢®²¢ª¨ªª££¤¨¢±§©«¹¶½³²®¾¹· £§¨¥¦©©`c^^PIKFGMIVL=MENKLBCD<QV=AABDO18=77?B75TWN?HNQYSPQUKQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=.-R`MUHe^HE«¡»¯««¢¤££¶Æ¾´ÀºÂÂÇÈÅÂÍÈÁ¾¹²¯¸´ÁÂʵŲÁ¼µºª©°££ª´»¦©¦«ª©¯§£ª«¾¼¨½´¸¾Ç¼·¶¸Á²¾Á´©µ·«¾¥¢¢¼ ·©¥¢¡¨¤³¡¦¨©¤¡¢ µ¯¥¤¯««ª££¨©¤¡¡³´ºµ¨µ²³¢¥ª¡u^Z]\IGEFLPHMEGGCSLJBEGAVRDH=AGQ1;B7:BF79\YKALPTUSMWRNUJE@JJNO9C@5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-19f\FCCpbGE§¤Ã¥©ª§¦¬¢«¶Ä¼¾·ÁÂÀÇÿÍÆ»½¹²°¸³¿Ãȵ¿°¼·¹·¥¤«¬¡¡ªªÅ¢¤©«¦¬¯«¢©¨¿¸§¾±¸¶Ç¶µ¹¸À²¿Â·µ³´¯¾££® ¡£¥££½¤©¨« ¥½¢£¢©«¡¤ µ¬¥±§¯¦ª ¥¤«±µ±ª¥ª¬ ¨f`X_\NHGJMKHEDIA>QIA<GIH[ROK=HOU4BF9>HG5CaZKCNRUWVQXTRUI@8RQPM:GA4CHQSIC;C>GVKC@O>K<06;GF>;FA46@9:?9;15D0-,/Mv\4KZ5,MnW<-=)#zbQ5CKQ:mRF<KxeaVK¢£Å¬¡¬® £¥¦ª¬¶±£ª³¶ÄĽ¿µ¿Â»È¾Êǵ¸µ´°³´·ÁŶ¾±¸µ¸´¦¬ª¬¥¤Á¤ª ¤©¯¢¦¨½µ¥±½¹¶¶Ä²´¸º¿³ÄÁ¸¸®³µµ£¥¡® ¢¨¨«£Â¬©¬¦ ½¡¤««¬¦¢W¥¡ ¸ª¦µ£± ®¢£¦®²«©¡¡¥¥¤_bXb_KHJJNEEAGK>=JB99JJN]QQI=LV\9FI=DMI8Hb[LCLPSYYVWOZ^IA=WQIK?H?5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWrGE6=ue\KN¡Ã¨¥¢´¢²§«¥ £©¬»°¨¬¶±ÈÅÁ²ÂýÆüÄɼ¯°¶°´¯¾Ä´¹±°¹´¬¨°©ª¥¡¨Á¬¬°ª£®±©¤¨½¶§·»¾¯·Ä´³ÃÀ³Ç´»·«³¶ª¢¦¤¬¢¨«°¯¯»²¦ ©¨¢¤¸ ¡£¯¯¬¥§¡¢§³¦¦³£®¬¡¡¦¬¯¥¦¡
_dZfdJIKJRBC@IH;;G?99OMU^RSJ>O^]=HPBLLI9Nc\LELRTY[SUO\bHA?ZQAHAKB7FELKM?;BHDNB=;N@A3/97CB97F;+6<46<35-/4@1+'VtSeO?104b[M23>0<v]^?[T^eq@8;HweA4£ 餪³¡¤´ª³¬§¢¤²¬®©»±°µ´ÆÀÄõÀĽÉĵ¿ÈÁ´«µ¨°¸¬¿Ã³·®¬¶¹¥ª²«ª¦»´§° ®´²§«¹³¨º´¸²¹Àª·²Ä¾µÆ¨¿¯¶µ©§¬¡¦¥¢¢¥¯¸®²µ¶ ¨¤¤ ·¢¤¥¯±²§ª¦¢¨ ¡®²¢¦®¤ª¤
¨©ª¡§
wbg\jiMOMNT=CANC::I?77RO]^RVQAW`\BJSHVKH:Td\NFON[W[RPQX]GAB[PBG>NC9HGHOP??CIBLB<2IA94177B>;7E7+6914802-/.<6-#Bqgsk23/1[bZ33806p[bH05IphVCWFyfC;¤£¢¦¿§¨¯°¡©µ«º±«£ª´¶±°¹·°·¸¸Ä½Ãǽ¼ÄÁÆÀ¸ÀÅÀ¹©¶¤¬»À··©¬±º¡±²¥§ª¹©¦°« °´³ª©¶¶¼³³¹·¬¹°Ã»¾¿¦Ã«°·®©««§«¡¢¡¡±¯³¬°¹© ¦¡¶©¥£¢°±´¬³¨¬ ¥¢£³°¥¨¢¨¨¦£}
igk`lmWPQZUABET@;;HA7:XPd^PVWEY_]MLRN^KJ>Zc^NHPO\UYPKTWZI?DXPDF?N@=IGGQPB=DFBM?:1D?77547?=95E4+75/251.-.,1=*'+=\p=>1.0dZd@1647gY`F(?8l}g[V;{cC=¨¢ª½¢«°«£±¸ª¥¶´¬ µ½®³¸»º½¶¶À¿ÈĹÄÂÀÀ¸Ä½Á·¯µ§«·±¼¾¾´¨®±¶«¨®¦¨§»¤¬³¬¢±°³¬ª¶´µ¾®°±µ¬°´²Á»Å·«½¯±¸¬ª£±¦¥ª¤³ª³«ª³§ ¦¥´®§¡®±§´²ª¤¨£¡¨µ©«¦¥¢
{dkqgoq^FYfVDBMXDZ9HB6>\Qh\NY]G[^]NMRXdJJC\b_PLMNXWXPJVVWL=EUJEDAM@AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,,%2+*5K1/'__`U150=`V^8)C3YT\gK6zfL@¤¡¤¬¶¥ª¦¯®·ª¯µ»§¦±·Å·±·½Áµ´ºÄ¾ÌƹÂÀ¹¾¹Ã·À¹±´¬©º¶º¹¾´©°µ§«ª¬«««¾¬®²£«°³®®¶²¹¸ª®®±¨µ¯´¼½Ê³ª¶µ±´¯®§¡³ ¨ ¦²¢ ¥¯¡¤£¦¨³©¡¦³¬ª¶¥¯±µ¯¤§«·¢¡«¥¢¡ y
{jmwmu{`E`kYIHZZ={JFD6AbTi[M\aJ[]ZRRRbaLKE_``QLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T`U`/5(C_Q\.+B/JGP[H3cYUKD¡±¨±ª¦¤¯®¶©·µº¤¬´·É»´ºº¿¿´³·ÃÀÌȼü¶½¿¿·¾¼±¼¦º¹·¶Â¶ª¬°·§®«¨£°ª¯»¤±³§¨£²´±²±µ±¸³©®«²§·¯¶´Äƶ©¶¶¬°©§£¶ §±¡¤±§ ª©¢¦¦¥¸§£²µ¬¨²§®±¶¬¥ ¬¨©¸¢¥ §£ u{lovt{~\Kem\JNc\?b{GI8GgWe\L^bMXYWTWTi]OOHa]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANHf27'GbLV%-B-=ELQ<3rkICC¥®¥¯«¨¥±³´«·²· «µ¹É¹®À»Â¸³±µÂÃÎÅÀÁ½´½¿¿º¾¼²Ä§©¹¯¶¶¿¼®ª²± §±¦¥¯¥²µ¬«±²ª©´»¬µ³µ´¬ª«¨¬©¹²±ÈÀ¸¥º°©¬¬¥¨®°¦¥£¯¤©¯££¢£¬£ ¢ª¦¦¹¤¬µ¶¥«¬¨¯¶®££©ª ¤³¡ §v}
|{{prq}||\Sdn^NYf\FD[G;NmXb[L`bNVVUWTYg]QRLcZZTKGOTSNGIVS\N;P^IBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/,1()+,-*&5*/&0)38:1&*3Bc:6*HeHJ+:H?3BHS,>k;GHª«¢ª±¤©¥³´±µµ²²¢«®½Ìº®ÀºÇ±´´ÂÃÑÅƾÀ²¾Á»¾·»Ä§¬·«²·»¿¯«±¬£§ª¨¤°¤ª²ª¯¬°¯°®«³¼§·±²©³©«¥¥£º¬ª²Ãº¶»©©§¬©¨²¥©¤£®ª¨¢£¥¬¢§©¢¦¤«¸²²¡©¢ ¬¯±¬ §¨©¤ ¦¤~~
|w~
rqpuk_Z`nbQsq\K;|E?WtXaZNc[NVVUWQ\b_SONgXWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*25>10485(5/*,.30;),,'%234$,2-860)(1<]J0.JgDF8<B05EKX1@Z>LE¨¢«³ªª°¶¹¶¯«¦«ª½É»°½·Â¯±¬³ÄÃÎÏþ¿´ÀÂú¿³Èë®·²¸¾¾²¬«¤§ª°©§¨±¥´®ª°®²±´¬´¼¤·³¬¬®§«£°·«ª»·¥·¶¤©§««ª¡©§¦±²¤§¥¡¡¬ª¡ ¦¤¢«¤£§±¸®®£¦¢ª«®©¢¥¤¤
££|zt|ru¤xj^`nfWecN?gLEbyWbYReTMVUUTO\]aUKMhVUWIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*39?./463)4+*,+.#4.-+&(+79*&6+<-2,&06WZ.0JgAA<<B+:JO^4D>HFD°¥£«±«ª¶¬¶²¬¦¬ª©¼ÀÀ¸¸³»µ¦²¯ÄÉËÑ¿À»¹¿¾Á¸Á¹Àıµ±³º¿½²°¬ª«§¶ª¦¯ª¹°¨±²®²·ª··§´·«¬¤©ª£³³¨¨¤´µ ·® ª¨ª¨«§ «¬©¹¶©ª©©¢ª ª¡ ¤¢¦£ª§´¯¨¦ª¢£¥§§ª£¤£ ~
¢t~xt~yv~oqggpw\askO^VHmxUdVQcOMUTTPOX[bUHPiTVSGPYUI>IHOQPxLMV=<KD?@A<@CUC9AK=5;E13;:7*4:=+-341*8**+*,))(/*&)%3;,$2)2021%/2Qb02?f=NX>C,>LT_/Ji5OD;±¡¦«®¬¥°´µ°¬¦°ª©º¾»À°®¹®¡·¯ÈÇÈÑÀ¾½»¼Â½ºÃÀ¾¿®²²±µ¼ºÁ±±²«³¨¤µ¨¥³³¹±£®·²°²»«º¯ª®¶¬ªª¬£ ¶¨¡°³¢µª¨§©£ª¡¢¬¨½¯¬®¬¢¨¨¬°¡¢ §§§ª±ª£ ¢¡£££§©¥}£
xt|uxyzssyg¤ui^djtg}SXp^JwsSdTQ^MMRZfNLVYdXFSiRQ?CNQaQ:IHLSIqQLS;<I?;<=;@@W<<?H73CB15:93-5::)-31--5)(+-,42#2)',%.;.&1.0-14%,0Lg:48_=ad?F1CP[[*HM9UA4²¡¤¦¬¤§¤§µ³±«¥°§ª¸¾À¼¯§¹ª¦¯°ÉÇÈѼ¿¾¹¾¿¼ÉºÀ¸°¯´±º»·À²³º¬¸¬¢´§§¬²¶¹³¨¨½¶®¶¾°½§¬µ¬©¯¤ ¥«§«³¥´¨ª§©£©¤©¨©½¬´¯ª¤ ®³£¤¥¥¤©«¦ª¢¡¥©©
~
~}
¡~r{z~|hx|ztop{gxdagaqzmgx]]U@VzlTbPQXKLNru]HZ[gYEUfPD>JNDCA9HGKS?jbJQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11'/>KH0%90%,,09/,,+6'17#-0GjI14X=fcAJ7GS`U*=9DW>*² ©¦¥¡«¥¸³³¦ª±§¸Á½µ¯¢¸¨¨°ÂÉÉÌÁ¶½Àµ·¿¹ÈµÂµ³²µ²¼·¹½µ¹µ¿ ³§««°µ¸µ¬¾½ª³Á´¼¡¯³µª«°£¥¨ª£¥±§° «©§¡©¤¨¡»¨®° «£¤¯¦¡£¤ª£¥¤¢¦¬{{~¢|yl~vyxc{zqooqvgsjgdg_lrlaio`o>ZxkU^OPQJIMTYWM]^lWDX`O^PHMDF;7HEKO<rhKK9AE;;==;;=J49B<3;G<4?18-68;2(09/,4/.=-*K>*49&'.34.0+/4&,:$41AhY13S=e_DL6KVdO*;2NX=# §¤£¨¤¸°¯£¯°ª«¸Á¹³¸¯«¨´ºÈËÈ¿¶Â¾°´½·Ä¶Ã±®¹²³¿´º½·¨¹·½ª£´¨©ª±®º±ª¼½¥°Áµ¶¢¯·µ¦§§±³ ¤¥§¡¥¬¨© ª®¦ ¦£© ±¹£°¯¡¬¡¤¦¦©¤©¦ ©¡ª}~}| x
}
{sp}qtt`yxhnppnh}qc{mieb^d
~_ZrjqKJ~hXZNPLJHPRPIO\_nSDXZRhOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23.:;83&2<0,85B*)-C*,4;NN@;73-.+-7**<%53<fd24M?e]FO=QZgH*>/XV5(§¬ ¡¤¢¸«²¥´´ª©¹Ãµ³·®°µÆÈÁ·¾Á¹±´¼¶¿»¾¯ª½°³¾°¼Â¹¨»º·¦§µ¨¨«±³±¨¾·¦¼·²±¸°¨¥§¯±¡¤ ¤¤ ¯§¡£¨¯¡¢¤¤¢·°¡¦°«¬£¯ª¤¨¥¦«¦¢¨¢
z~zx
~yzprwoot_ywdklkhgmerkkehYas^ZkuiYG|][XONJHHRUF2:^^lPDXVYeLHJEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<#8R=*113>D5,-'42+;+139cl84GBg[HTCT]hE.;1^S,2£¢©¦¡£¡¸ª°¡»¹¦¬½Ä³°®¢µ¯¯´ÄĽ³¾º·±³¹¸º¸º®¿³´¸¯¿Á·¬½º´¥¢³«¨ª³¬®²£Â¶¦©··«²»©¦¥¨¯«£§¥¦¡³¦¥©©¡ ¥¤¹¨¤§¦¥¡¨©¡¡¡¡ ¢«¢£§¤y|
}x
{w~{lurmlsbyuhgigemgghdfhi^fbifZezb`QsT[[SKIGIOS@!+i^jLCVU^`KHGEC.:B<F<6KPD8:D357==895?:;4>8@L=>93)8><:9*6@3.E4(+,>0-N?.+-7-1195,&.5-80576`tB3CDh[KWGU`hB377aM'2¤¤¥¦¤µ¨ªº·§¬ÃÀ·¯¬¡µ®§®¯·ÁÀ½±Á·°¯²¶µ¸·µ¬ª¼´¯²°½À·®¼¼±¤¶¬¦¦µ©«¯¡ Ĭª§±´«¬´º¨©«±¥ª¨¥¦®£¤ª¡¢ §¶¦¯©¡¡¡ ¦¢ ¦¢§ x
w{~{s}gypkjlguskbgdbtadefeiibgoY^X]lc`MgWZ`VIGHKLRX>9`liGBUS\[IHFEA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A<-5B37=++,0A*JK./*+3722(57$+7.72685\yN2>HiZLZJVbfA:3@cF%5¤ ® ¥´²£²¾·¡±Å»¹°±£¶¬«®©¹¾¼»À²¯¯®¶¯³¹²§«¹±¯®³¶»¶°¹¾¬¥µ« ¡±¥«¯¥Å¡³¥¯²°·µ¬®¬®¢§ª¥§¦ ¤£© °¦¹§®¢¡£¥¡¨©§§{t
|
ofynhkjgqrk[hcar`dgjnkfjfdl\lmvq`SbhceZIFLMOXQPUaeT@VSYUFGFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24:5#3*)6.55465Z|]1:Kj[M[KXdc@A1HcB'4¢±¡©²°¹À¶ ³Á»½¹±¦¶°©®¥·¹·¸¬»¯««·ª´¹¥²µ±¯©±¶¶±³¶»§©¶©ª£ª«Ã¯¥¯±¶µ¬¬±¯ª¢¤¬©§¤©£¥ £«ª©º§¤ ¡k¢q¤v«¨¡x
mi~wrl}o]d`gkuwfhvifX]itnNPjcfqf^dfnki]]^
hOKC7DTg]JHPPUUKHS`oteE[QUPFGFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,,08>G701.*.*/668,#1'214:276Xl15Ok[N\K[fb>G1Oa<+/¤± ª«£½Å¯©·Â¸½¼§¶±¦«¤¸´²³°¹®ª§¬´¥°µ¢§¸¶µ¨§¬¶³®´®³¢©´«¢¥§¨¯¾¨§°´¸®¤¨ª«¦¡¡¨¨¡¦¦§¨ ¨ª£´¯£¢££¡¡¡¥§¬rx uif~sy o~|¡ {tvlnied{mrbTmcmiqXipnW]i[kjZpmyrhY^FM>F^MERVVQPRWTg]LYKRROEGG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82*/1<I9/01.*/(-4583%&2115>1<8Xt15Rk[N\L[g_=K1U_70(¦¬«ª¨ª¿Ã®²º¼·À¿ª¤·±ª¬¦³µ®¯³¶«©¥±¥µ³¬µ¶´¦§¨³±²¨®ª¡³© ¤¤¢¤°·¥¦§·½¦¬§©ª«§¦¢ ¨¤§£¤¥ª£¤¦¦¡¶¤£ ¤®©£±¤yÔ¨ÀÆxw±¥·dÀ¿yy|Êq¼Å{r¶§º{l±«°yhlX±®oei¼¼nhzmpØ~Skb¶²~qu¡ªVNWaOVNFT[XQPR\W[P@\EQNDFI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww11Tk\O[M^g\>L1Z\41!¦§ª¥²©±Â½²µ¿µ¸¿Â«¦´©¨¯´ª¯¶´¨¨¦¶¥¨¹¯²²¶ª¥¤§²¯±¦«§¤²¤¢¡¡ ±®£ ´º¢ª¨ ¬¤¢¢ª © ¨¨§¢§£¡°££
°kjª~g
eq§q®¡¤~wº|k¡v±_j´[¥e`fzfixj©e¾rg¦v±j|±xucmm§n\ EigEu`}f{£¦Y_«ixzj¨8J¯[WSlcZLOX_\WV;NOVV/ITSJCEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3..53/+/(.0.:6/'$203B/=;Uv2-Vj\OYL_gY:M5^X31¢§¥£¤ª±·´½¾°¶Å²¸ºÃ§©°¬¯©©±¯¤±º°¤¥¯³£©¹©³²°£¥¡ª°¬¯¦¨£¢±£°¨¢ ´³¡ª¡¬¬ £ª¥¡¡§¤£¡ ¬¥¦ ¡µµy
©µw³·«~k¦z
w«gj±[¬{tpx
°vwqkjl|O¥XHcc~ch¥_yquR^P©mcq}a/R¢n[Skg_LK\cX\ZB>°wWXA#MhFBDA@A19>88:84;:9<9:A:E::;6:CB8=?KNH:5:AFB@AD<FD;0201;F,0.840,.(/3,>831/2-D1<<S}n3+Xj\OXM_fW7J9aU50³¦¦¡®©¨³¬ª»¶Â°¼Â¸·Â«¬¯®§®³ª¢¯¼«¢§µ£«¶¥¥²³¨£¡§ª²¨°¨¦ ° ¯£¤¨µ®¡¨©§© ¦©£ £¥££«¥¢ Õ¹q°ÂÆ|Ö»|¦¤z¢¥z¬yU¯{~j¹Z¹w
}¦|zªy{±mt»
nP¯§ÅQ zc`ªbsrl_Sµ´È
|c¤3Bu]PjhdP@XfYdaJHMkJZSOYfZCC?E?0<<59;74<;8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DB./0483+-).323971#%5*>3==Qwj6*Yi[J[P_fT7G:aP72%¢±¨©¥³ª¥´§¤¼·Á±ºÀ²¶µ½´¶§²±£±³¦ ¯¶©¨º®£°²¡²´±¡¤§©±©´©¥¬¢¬©°¨£¬¢§¡¦¢¢¡£¡¢¢§ ¦¡¦ ²nhµq«p¦r´ts¶{¥¢~¤~°uÒÑu[®|
¤nª¦k
}}{±sx³et
nfRÉZÂ\yb__vsb^YÊo¿uMKµSUÆdTQjceXAOj_liPUFI9=WR[VYHB?J<2?;5=<56>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>II:1746@>/.24252-).26,742&60;5:=Pqh9'Wi\ANT_eP5G=aM62.¢¥¯¬¥©º¬¦µ¥§¶»¼²»¿¸·µ»»´¦µ´¢²²£ ¬°¥§º®¤²±´¸ª ¥¡ª¤²¨¬ª¤©£ª¡§«°¥¡¬¥¡¤§ §§¢£®¡¢¥¢
¬{w¨v£©o§¢¢~®
³\r³R®}£~q×}w~w¯w´ael[°WKuyf`^vwgj]¯wxl5yÈ®²_BTo]g`EPl_pmVUM.ebhSYP;AD@L:5?91><16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@=V_cN6GC`I:77 ¸±³Á¬¨²§ª²º¸´¹¾¹¸³¶¾¶¦¸´ µ ©¬ §¶¬¨±±«´¤© ¨¢µ§¦ª£¥¢£¦§¯¥ ©¢¢©¦¡¦©¤¡ ¡ ¦©}}¥y¡ªp¦ ¢£ª{yo±Z¨ xtØvt§¤|{²^d }m\«\[hgªcr{jq]«Z kneOJC¡\ZMt]bfMZa_rt_JU5JXHE=HFAM35A8.;>05A78@<6=<F?:<6?=B7.HVJE@H6KIN@IK@EN::@4.;>002154+*05/7,&21($$6671<OedA&Uf[?1T_bL7FI_C1=7¢¿¬³Â®«¨¦´°¸±¶¿¹º³²¸¼ª»µ ±¥¦§§ª±©°ª¶ª¯¡¡ ¦¤¤º¢£«¡£ ©°¯¦§¦¤¨¬¨©¨ ¤£¡¡¡ ¡«®nr´t©w¦s´yt´¥£¤u¸n{¢kk¶Z¡eh ¢§mr´t²j
ju´af¢nk\`N¡|Rs£ly~np\¯V<wfTon.[§ObRkeblZb\`p|cSYQ>>mo2BB@?M9!7@6.;@37C58??3;<CDBJFMIF62JTKEBJ6IJP?HOCFP=<E50;;010/75,+,326/#00,,289/9N`eD'UdY>/U^aL5FM^91A8¥º¢±¿®««§·©¸¯µÁµ½²°»¸«Á¶ª«¡§¤¢««§¶£³¨®ª¡¨ ¥«¹£¥£¡«¶¯¦¬©¦¥£«²¤ ¨«°¡¢¢ ¡©ªÓ»t±ÄÃ~Õ¸y§y¢¶t}wv²`ºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¢~t«}¾ns¼t²uxmqm¤t½]w}[ay¼jZV[iz^iadfbmyoY[YCA@r?CG+5H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,;:08LXaF'TcX</T^`K5;L[-6@9§¢¼¢±Â¯©ª¬±¨¹¯·Å±»³¯¼°®Á²¦£¤¡ª¥ª²¤µ§¤ «§¬¹£¡¦ £¯¹°«£§§¥¤ ¨«©¤²¢¤§¢¡¤° ©
¶¸xµwnlnsoyrÁ»¼z²¨pt¹{{|¤»¹½uy³£tvut°ufi¶trpw¶^y}gymyb¬pt
X[§iDdYTf_c]cQffqmuBMOLD;ZL?J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7KT_G'SbW8*O]]=+;VV'=:<¦¡¡¿¦³Â³«ª¨¬«ª»¯±Æ¯µ´¯¸§µ¹®«¤¢§ ¬¤®ª¦¶¨¨ £¬¤¾§¡ª¢¡¨¡²µ¶¬£¤¢¦¥«©¥¦¡©§¦£¨¡¬¢°©§¢k~i¨ys~uze{¾¿Àºnq
_rjZ]adk`cmvbke^_bqhr|fj~qty~}b[xthP\n|{jXlyrIJo
pNsMDV\faL[Wfc^OZmvjrRODEM<HI<L>2,2A?8/5?C<9;@;=C>RVVWYZ[[\]`aaa`\UG5DFUEJOHFPIIH;8=51:.1;:./-76=5&"/*2,%;8-7IR_I'S_V4)P^L(3>[O'?2>¨¨¡Á¤´¹¶£¬¦®§¨µ²¬È¬°´¶¤¾±³§¡¤ª£¬§®¤¥µª¤¢¦©¾¨¨¥ ¥©§°²¾¬§§¢ª¨¤¬££§¬¡ª¢®¦ ±¥¢¨£¥§£hn}qv´©
¡z¤
li{}urxyvu{jstudw}vkpzl_b[ogLXYej_WYpzomfSOFR9OZNRO(+;JB635=@A9:C><ENSSTVWXZZ\]`bba_^^[TKCSGKNDGPLOI<:;489,2;820)6IRO8")+/2#4;*7FO[J'R^T10T^:+=8]K,<-@² ³¢¿¢£±±· ©¦³§¥°µªÉ«²¦µ¦À¨´¡¥¦¥ «§£¤·¬ ª¦Á«¤¢£¨¨§²Ã¯«ª©«¡¡¢¥¯¥¡¤¨«¦¡°¡¢§¡£¤¡{©¨
{
£~e¡³®w{~wyzogykuyrisyujtcxf_hdcdfjXk{qjk\SLPD_UF@??,4@F;45;>A;<?>>HNNOPSTVVXZ\_aca_^]]^]XVJKLBIOMRJ;<:786/3964.(&$-1..)+*7%+<(6CMLD/T\Q05M[17E4\G5<,@³ ¹¯¾¬«±² ª¦²¢¬³°Æ°«¤³¯¼¤´ §¢¡¨¦©¦¤¦³µ°¦®¾ «¢¡©
©¬¢´Ç³©¤ª§© ¥« ª®¨¤£«¡¬ ¤°¤¨¥©f|e~cxlhjz£«kd~g
eeihz¡jg¢wkj¢rknzyXe]
^lv[hswwnxxsmysw{i
X]jsd]sik|qmc]QNWIdX@J3=F7?FD71<=?AC;;DGHHILNORRTW[^`aa`]]]]^_]ZUODHOKSN=>==6535554*&&%,*%.++'6*$;'/AI[I.6ZO6)EY/DO1YB;?.=¥º¼¹¯¬²°«¥¨®°§®°½±ª¨¥°° ¤¢§¬¬£¦¨©³®££°¦¶¹¥®£¡ ¦{¥¬¢¨³Ã·¥¢§¯££¤ª¨¡ ª¯©©£ª§¦§ ¬¡¥±¤«¡¥«~¾r´r
hw¹Ä¸q¡£{¦sª|ËÀÀ»q£|À½ÁÀ{z¿}k¥²ooÊzwvyyq{px
ylube^xc^eb^thmdbXLVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__`_^^^^___]\SMPGUNA@?=6468266*&%#)*&.+*)109*#>H[L*#CP/#F[3PY/UAB;/8¢¸Ã´°¯¿©©£¯©°¯¦²µ¯ª¦§¥±« «¢ ª§¢«¢¥¨¥¥´¤£¦®¬¸´§¯¢¥ ¡ ¦ª¤«¿¿±¡©®©¢£¤ª£ ¡¬®§«¦£¡¥¤¤¨¤©ª«¢¦¢¤Îyz¥z_]¨ ¡|§t«¯^d©z¨
t³c« ³j®s|¸aY£Ínu{Û{q~ue{vvl}n}
}k_pjof`_xd[qhjcf`RTSW^JOC5AHED8>6;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__]ZWOUJ=?><5578164('$!',&&/(&+360$7;SL+,-J0';\:L-!P@F4.1Á¿¿´´°·£ª©´«¦²¬¬¤¬¦°ª¡§¦¢¯¡¨§£¥¡°¬¦®°«¨¬ ¥¤§££«°¨¿Æ³¨©±®¢¡ªª¡®®¦©¨¥¥£¡ª¬³¥¢ªª¤§§¢±¢§¡ p
u¨q°|r¬} ¥w«}r~«v{|~ª¡}«zzVÄzoÁ}mupmfweoawnrnldmsuo`fmd_ohjnfcWS\`ZRRC8II@C<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1''45-&7=WJ-<(=1)3V@F!G;C1-+¯ÓÅƲ³ ££¢¢®¶¯©±§¨ª¨®««¦¢££¦«¢¦ ©¨£°¨§¯¬¨§©£¢¡¬¦£¯¬£¬µ©¹Í²¦®¬¢®¬¡ª±§©©©§£¡ª¯±¢¨¬¯¦¦«ª«²¤¤¦
¤j¤uz©uz²q¥p¤_`R«®u®§z
{f£¤£}©~®^{¨U¢z£|ïÅs¯´³¹qb©¯Âthlnlxxwnkfddqpf{ic\V_iXXTLLQLCCAB;CA@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ('"+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÂÉÕÕÀ¡«¨¡¯¢°µ°¯©£¨§ª««©¤¦¥¦§¦¤¬¢¬¡£¯£ª¤¶°® ©¦£¢§ ¦±¦£¨±¬¶È²µ©¬ª¢ ¥´¡§«©¢ª§¡¡©¡³¢ª³²¢ª¨°°·¥¤¨|ªlu«y|°n¤Ò·´¸É²^_©¤ zxªÉs£§¨~ÆÆwe¡¥s}¯^oµc±uK£m§Gd{o}nyt|zm[ejrqfj^aXcm\^YILLKEDBB=A<B?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75785/)(%&%$&),5FNPPMFLJVF*L0/>-4NTQ;<F2,$¨¤Àƹ©²®¬¥¢²¹¬ª¡¦¨¦ª¬©¦ ¦¤«£®«¦¡¬©¥¦µ¢¨«¶²¬¦ ¥¦¢ ª¦¡¢§©°´Â±²ª¨¥¢¤¯¦¡¥¥©®¬¦¥«£¶¬ ±¹°¯¨´´´¦©¤¡Nxz£|¤¦¸{|y¹ÌÆöw¡~v¤¤§~¯¬}a¥l£p
}r¬`¤rq`¼}RUu£{|ryr}p\lnwrjnZc_hnbd]LLQSAHGFI99K>B108856877-*5==?BDGILNPTWYYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOTF<E2:P[T6?G,- ©¬¤«¹«¯ ¡¬³´¦¡¥¯®®©¦¥¥£§ ²®¢©§² ©¤£µ££¢ªµ¹¤££¡²¦¤ ¢¯£¨¢µ±Ã±ªª§£¤¥¥£§¡¬£¥®¥»¬¡··®µ³¹²´¨±¢¥ÑµÃ·y
¦x¢w
¥q«
´nri£|s®¥¢¦mp²\¥szl{~n©a¢qqbs²¸hw¤}v{xlhwixsn~t\ddmmeh`JZWX<HF?T3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^``]Z[ZXURRQF:2230/++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH#)%r¿¿¼»µ¨¤¶¡££©§®©«¥¡¦¡ µ§¢©§°£«£¤£ª´´¤¦©® ¦£§µ ª£µ«Â¯©«©¢¢ ¦£¦£¥©¦¬¡¤¬¦½¬¾°£°´»¬µ¨ª³¥©{¨}|°w¤¥m²o {¡¨¬
®
¨¡¢
{~«ªw y¯]£|¦§d|tk®]¥kq
]`[ m¥xy~jl}b}tmy_gepogghBY_[=JS2T8BBC7$$3+''3, /667436:@CFIKMNQSSSVZ]_a`aaa^][ZXSPONI7052.*,ATVVVTTUUUUTTUTSSVWWXVUVQHFIJ#((¼©ÆöÁ´ ®¸¥£¤£ ¯®©£¹ ¢« ¯ª®¡ª©¥®°¬¦ ¨¢¡¥¡¤¨¥¶¨¿®¤©£¦¤££§ªª¡¢©¨½¤Ã¬«£¢¬³»¬¯¨¢µ±ª¬v¯~
}ºd°e}¡§¬°
¦£¡¢
[lj³`{z±lgm±Z}´[¤kÈ¢e{¼YvµZ²}R¯z¬X¡m§yw|cs|axs|`ifpmfeeOUc\AT^=H(>9=4!!,$2. *1/04579:<ACFHJLNPPRTWZ^```ab^_\[XUPMJGC553./@UYXWXWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò´±·½»´Á³£¦¥¶© ³±¨¢´ ³¨ª«°¬®¨¢¯¬¨§£¨®©¡¥£¢¥¢©²¨¼¯¥¨|¡ ¨§¬¥£¤¢¤©º Ƨ¥©¡¬µ·®¯¨¡½¯®®©£®¤¸Ãº§¬¯§¥«~սªb¤¿½}~£×º·µ
½¾j£o«nz²±Çk«°½¬xw¢¾»t¥wxa|ycgx{`kejibPb[Si\@T`BL)<:5/$%2 $(0496678;>ADFGJKMNNQTW]a\__a^`[\YTQMHC><A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ»´´±¿º²½³¢®¦¥³¦¥¿©¶°§¡¿¦¦±±¹¨®¥§¯¬®¦£¬¡¥ª £¦§ ¨¢ ¬¬©¸§£{¦¨¨§©¦¡¢«º©Å£¡°¤«´µ«±«¢½ª°°tvª¤·
epg¬now¤ u°pr¨£®¤rlmlexnmqzipifqhi
gpd]cioY]g~x¦`brofd¡z
tdwgjx~xdlcelbKeWJkY:PdDP'J:+# ",)-2.5:457:<?ABDEHKLMOQSV\WZ\`_a]][TPLHD=:AB7MXYZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨´©º¹²³ª©¢®¤³ª½±Ãǽ´©¿«¬£ ¦«º£¤¬¥ª
¥ª¢¤£ ¥§©£ª ¥¦§¯¹ª«{¦¦§¢¯¦¢¬¹°Â¨¤´¦¬±²«¯©º¥°¹¡©¥µ¢©ª³£¬¡´£¡¡¢¡¤¡¬§¤~gtvtq§m|
pgvnwu|yikddocU`X@iZGb`NX+E=+&!640/!%2(*799469;>?ABDFJKKMPPQWUVY^_ac]^TQJEC>9=@ASX[\YWXXXXXYXXZ[[\^__`^^^__```_YY`¥©ª¤µ·®®¢°¤ ¶±ªÄ»Ä¹·©¡¥¥°¨£¶§©µ¦§¬£§¬£¡¨£¨©¦¡£§¡´¹§ª|¡¤§µ£¦«·¨¯Â¯¤¸§°¯±®ª«µ»¢±¾¦¤¦µ¢¦¨£¬°¡¤²ª±¥¡¤«¬¢ª
~fuvytj}
xqrx~q{~ind^pi`[_YmbP`dOY9GFE=2<=8/*&+)&&406658:==?AACHJGJKLMSSSUZ``i`eVPJACB;9EMV[^^[Z\[[[\]]_^]^_`aabaaa`bbbdb\[c¤§£°³¬®£©§ ¨µª£²ºª«¡¢z¢°¤¥±©¸¦£©¢®¤¨ ¡®ª¨¨¨¸¶£¥y¡§·£¯µ¢°°t¤¿¤² x{¡¬´½w®¥ ©~d\bv£~n´£¨¯¬¤e tzp©l£¨e¥
wkvq|ai[vghqy¢dwvhny~jpe_uokkg\ecaaoRZ=MMNRF=@TB91/&4:306678<;>@ABFHBGFIKLTUUY]`hggXQI<DG<9VR[`ab`^`_`aa_\]___aabcdabaaedchd^]f¦£¡°±¬«©¥©¤§¤ª´®±¥©¦ªs¯¨«§¸ ¤~«¤§¢
t®¥¨£¹³§ uw¥²µ´½§¡~§¢{¤°¹§
±©¯¢y¬¢¨«©w¥z§{²z cynqzqt
xht t{}ijxzppgdxmilj\diier[\HTLQ@E5-YTT6)!09=>643568;:=>>?DI@IEJKGRXZX[aahfYQH9EL;>bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah£¦®®«¨¬ ¨°§§ª¥Å¼¯ ¥§´«¦¢ ¾¡|
¬£¡¡¨¢£¹±§
pu£«´´®Ê«¯·
°²°
©§|¨r{w¥g¤y´§©Â«¡q¥}
²¡} |
ms{r}
uÅf©¢jogwt{vghupghk^bnlflXfF\QL2E46M`c7&4<DGD:63658;8>==>BL?NIJKCPZ]\Wb^jl\QE=KM@JdX]cfhgbbbbcc`_babcccdiicbbbecafcbbi¢°¨©¨¥« ¤¹±©«¦¢¤ª¢¤©µ¢¯ ¦¥¼ y«¢
w ¤¢¸¬¥bm §~¡§ ® ¬±¤«~¢ukªtLªx©©ª«~¡{z§ilg¶~n`cX{dgs}yk]|n_Sq
\`ly`Ye~q§ªk£nr¥pgdlZlzeY_~aWPovemtqjjn^jolkhWgN]XE9@4GD^k4+ICQMN=84859;6@;;>BO>QRLMBJ[]_W^_bv`ME:MOMTb\[ffiibbdaddbab`bdcabjkdbddgdbgeach ¹ ª£¦¬¡¶¼«®¢ ¥««´¡§ ¦´u¦~
¬£©¥°¦¢in ¡¥£¡ w§¢¨«¯¥z}}¢pr{ym©|¢sv¦f~w¤^{}s¢n·´ºs¶¨dƸ{p¶q¤ct¬«`}j³~n}q£ls¤s}£^³o{³tr[²ibosuqhnXkkrrd[g]aKD=D5QAZp2<RF_JS=<395::6D;;@IP?TMNQ@E_^[YX``{dIC8LWUVbaZffkkbbeadc`ab`dc_`cknccddhdbgfchh£¹« ¥¸µ ¡¢£¤«±¬ª ¤«x
p¡}¨ ¢¨§¤~k{~} w¢ r¢©§©¬®}z y£xs}§£d¡}lhn{§}rgsªsªg]
vhªj¸f\©pa^§vvhumj¦\¨~w»j}©Z]³g[nqxwki[piwxa^dVaAPEO7VBRm4JZY^NZD@151;;7H?:CGU?XRX]>Db]V`Qad|iEB9N[^YdfXfgnmbbe_aa__``ec^bdnq`deekdcihgkiª¶¨c¬º²°«¥§¬°§ª¢¡ £iq{z£¨¢iy{~¡ ¢rh p© ¤©¢©}°¤¢¸v£³¢£xzª¢r¡}
°µ}k¡x~´££«¨{|~sªZ]o{xbL{{
dzBMY¢jr|nvy±³~¦t~mq|ori£]vHec`sp|}nf_khu{bc_P]V\TV@YEQgERV\aX_ID=B8@A:IE8LEXAVQZVDFa\Z`K`m}qEC<U^bZejVghmobff^a`\]^`hb_edvl^egfldelhhki±®S_¡§´º³³¨¢©§ «£ §¡w
ny
}r r¨|l
q¡x
{¢£®}µ{¦z©¢~§hwm~s sq|o|£§¤p^©hu£co¥aÓ|zxrsc¢
~¢r¢uk³`sª²§¼wm¿¦ª´^o~ros¢r^¤gt¦`h¦lÓznvykyvrl©¥g_dypkgfcmuwf_aQZePQaHWIT_WS[dj[eQECKLJKBJE8P@PMXSXORQ`eeiRdxywIFEc]eZhjSihjocjf`c_\]]_hbahe|d^dgdkdjlfhlh°¬T\K~©¯²µ°²£¦ £¤§¨
{p}h}wpl|£©
yvnw
y¢£ ³¡¢¶z¬§¤®¥p©}¤¢q¢®¤¯¢vµ¶µÉ¢ta©my u¡w }oLf£ps¥{ytbl~ lrd`rtk{j´µ´Æ¦s~zj«tlswiytqPD}³^iujxfkgbstpmU\RXgORhIULXRU\gknUgWMJAJMJHJNAQJPdcimetrs~x{nuz{TQOm^h[kiRjhilgmfce_\\\_ibdhk{_]dgcjfnmeile¢¯§
f?¡³¬¯¯µ¢¢§¢¡£¤¦¥yjye~yui
z¥¨z}yp y~¥§gnxl¢d|q¥xph§|¤z rv¹m¢b}¢nsj«ku mo¦`iiu¢}_
uobh¡eiupdgnr¢Z_[c¡n]p{trd¥nx¢df§hrn¡oRn ^d§T]TmmrjqmphkxskoQVUUeYSmIXO\HXhhsjYkVPREV\LXRaUhj^wuz|p||r{svv^QsafbqgPkhhklohdg_]]]`jbiivu]\chcjirlfkmc¥¦zetm§®¥ª°±¦ª¤¡¡¡¡{qh|st}|e|
¦¡«
}si¥}
©¦¦x~¥²¯¥yz©t¦n¥¢¼m|¥¯¡}¦{r¨ g~o¬cw¨l©¢vw«¦k°kv³©loo a«ªw§w}
¤ iu¬f¶sv¾£Y¦«`uqso{upbj~nglSUYU``\jL\Q\I]lmv`[qX[_Zgsenoqcqt`wz~yryr~{{vbydcnsdRlggolrifia_^\ajbllzo\\biamiwmglnb¦ª¤ªª¨§®£ª£¤¨
t
zo}surn}{
¥¥¥uol¨ª¢ t~y¯¤qy
{r§q}}zx{}}w ¡{~k
[yysypin~rtq
e_wvtuo{oon^wixfªt}jou|umlfsw{wZjWyhmwrqowxo]lmigVY^W\dkdUaT^Q_owykjwejjju|pqtsaoubs{xuyuy
}{mldyn^Wnghukxjiid\`ZcielqunZ[bkdlkymhloa¹©§¡¢¦¤¤«¢ª ¦¨~r|}~ztrp{}
x~£{§
wqª
¨ ª~¨§xq{p©p}qjo|hn] sqtkvtYrn~~i]icz
_ix{|viykbqrw_r¨gnwowndfcyzZ[ifmv[zxwtmsrf\mkkbYX]YXkq[^`Y^]er}zsotcjji{|rzwtdmthl{~uz|{yy~o
{}s~yrhT\rilvpugkgd]aYjhkjqrmW[emlgryohjm`ª±¡£¡¨¢¡}«¡¤{|r}v
ror~z¦ xz¬¡ª¡¢££ª¢¨§¡|y
¨~~±¥±¦ k|vwe}
w|{u£~vqt
x§{
uj{yiqh`sp}zwvovs\^ogn_^YZ\RgqUc[[alht{|rnpcjih{mx~phoplf{rw}{m|zx|~zxNdvjsnq{ekebb`[sfpfrqlU]ltmhxzpgikeº¢¡¤ z©
|x{mxr~mk~z~}©r
}z©
¦¢¦ ¦x}
¦||
© © pxqta~u~
nyvu£
u~}rs|{y
¨uzmj}zmhklf^y~g|{vtuuzw\`p}mt`cZ[^QfmSeZ]ajhuz~pllcjjgkrkjsnxnynv}
vr~{z|{`i{kuhiejc`i[cuhobumkTbqyeoyzrejmm¸¡¤zw¥¤xy
|l{xr
}|kh}|~|¦o ¡
|§v£ ¡¢¢¤z
¡~|¤ ¦~~vtpv`}r|q~
ixrys}}qz|
{{¦|
t
xdqz~xypkjf^}sg|uvs|sj^`tvpwdcX]^RjhTeX^`givxqfkclgejm}gmpj}w
zkr}tv|z}jrntibilb_qUtomn`xhlWjtvctzzqbkoy³¥¥ {u£¡x{~~p~ztu
~wgc}x}y}o¥¦v¡¡z¤{x~s¢ ¡|wr~n{d|pk
fvo}~y}}|ryz
£wuzs^ww|s}wfkc`~ijvssu}q|ccasnurmaY_]ZkdRbW_`hktypbjclfh|khthloh|yl
qt|~z~|muttmeljbcuVipn`xglajvpex{yp_ql
®¦¨
|v¨yx{}|{xsxys}d^}~
t}~~£ ~q{¦ t§um{o¡|zrzkul|~n
xo~~esj}
ty~vx~}¥y
t|qs~
l_ytxp{nanbd{amovrwwssav`oluno][^]]j]O\Wbahmszk_iejchwmflhilg|zwns}tz}z}|ryyxnlkh_irchqoevgmlazhj|{wpawmª ¤¨|v¬|v}{|{vwotszo
}~|a\~szz¤||£
n¢¡p
g{
p }{
tsvkqnv|tnqt||eqmz~~
uuzo}
ª{}~
w}om~bgwstnza]o`jt^pjzyxlrpey]mlsmsXZ]_ajZOWWdcfqqe]ihgbgqndigeigzwun
s|u
x
|w
zw{{ryjk_phskqnmqgoke{bnywpkvw£¢¨¡¦t© s{v
wxrs{
kroymvnq[Y~vu w~
n¡l¥
gw~~|}ovplmop{ispwuygsov}
{{wuq|{
¥|vwwli~\qrqoowY]o`oj^oj|zpmmjmw`pokqmYX`aamWPSYefbuoa]kmdbfkm`ff_gktqrotyvywv
{{vjqb|b
|opltjhnlvw_q~x{tus~¥§
~t
zrwtpr
squlnlumw}mnUQ«xvry wz¤}s
ih¡
qw{{||kwjnklmzby~vzw}zhumu{r{qx{{~}}x|vohjw^womkprU]naqa_lnypgpffsuhqlawe]Ve``qSPN[ed\xp{^\hqbbeei_gd[go~okqs}v|
uvy{xs
~|yxfqj_~ookz`imtt_s|xwss
|y¡±¥~vtvspo
spqojiumn}|musRNᐙ|otuv{r
¡
}xzzwim¥cpz|z
|m|esoklzy\y{}~{ziukt}lp~{}wxxrken}jitnghslS^odpZ_lrwfkkbgxsoqc_w`aUk_^uOMK`ec\yqt\[eu`aedc`fbXirsmkqv|tyvw~s~zr}~vesn|enpkZknxyr`vz{vrvvy¯
x~{
twpypnomn~rcdxp|nz|jhlc¤ÁÜ®ï¢skuu¡np
£~{ux
vwp~¥
^l|}v
~~k}cxtjoxsXz
z
~zftjlwo
{utxurpesw`smoahufR`pgkU_ntyarc`i}qrn[cracVnZ\wLLLcea]vsm[\dx^`de_cc^Yirknkrw}swxx|q|}{tshuqyl{ntpWpyvyqdvxhvq§£|pwx|{rwpsjokil|t^`xv{ptzg`e|ëÚµÉÃÜslsvip
|zwxrvq¤a
h}}
qrwgvritwlZ}
}vbum~nmz
}~orz
tkoipv~]shn\iu_RdqhfS_pvt`o`\hqrjWgiciXmW[tLJLef^ars
i[\ey^^dgz`d_]Yknenjtw~sr~{vzt
|vv
{vlwvyxunwz}Xy
qnfxvdv
q¡¢sorv|{xqtnodr~hflww[_x{zqqiagaÕ¶¦xnqw{qj
{h{{~
zu{{qux
af}~m|tkmwutwvkc|
p`tr}}zqg{
|
opytlmijwzagjiXkuZRiribPbrxlbe^Zjnsb\g_em_nTZoNGNfd\fnrkZ[cs_\ckvde]]Zllbmjsvqo|}txx
|vx{voxy{om{v^smhzssgs|r uu~mu}|v~vqoljat|gbiuyZ`w{ymq~echhW_rs¼Ävq}qrj{|
|{uvw}ru
rv}f}~q}f~|y}i}vfoyxswslk
x
k_sy{~|~siz
y}~nm{}vtnfe{tb[pbWnqSSmrhaNftxf`^\YoosYeb]jn`pOYkQDSg`Zjnm|nY[]mcZbpvdg\]`kicljsvpm|tuz|
v~xtryy~oo{qixz~ml{ukjxtk
n}viw~yozsplid`szh_eqzZ`r|ygqzaee±²wKbZ¥ÙÐq{w}
nk
zy|xwoqu~zjy
¥ow
z
p{|nwhxr|e}~vcpsixpou|vx
zk\rs~{rnr
sz
yno~vzdfh{o^XvZWplNWqsf`Klwta][ZYt}soWg]fjr`oNWhR?Xf^Zpkhzq[ZXkeZcpy_h\^elhekiqwol~uozvqq{|zyujy~ko~t}or{zpo~xg¡
fogy}~|hxrklf_`oym_box\dkzaqv_eeÔê½2:>qx
u~ml
u|
|xnvwn
lu{tfy§~nvx
{{w~krh~xm||wayqdqh~nuqu
su~so\nuy{}y{rm
szumkvut[ggunWV{RYpdKZrre[Ipxo\[[Y]t~thYb[gfodjMWfQ>]e\]ue`upZYTndYdqyZh]_fmgikipw}mi~yn||zupnw}{{hz}js{r
zsw~~zx}|kl}kh~z~~~}kuqghb[bgso_aks`hpzbst^cd n\5Z¯µti|u
svpl
uyx|y~rgu~~oq~hvynfy¤~nw~
|pz}{h~lj{zjzwr`w~qdrgvmu{|owz|umYpwuxv{ytos~{onjmtm\fdrpPZzM[o\O[rodUKsxiWYYZapt`]]`gdiifNYhM@`c[`ua]ulXWStaZdorWj^bhkgmlhpw|lh||p~{zwq{oqw{j}{mwxvw|x~~zm£zuxklx}z~prpcf^Yf_oo_`gpfjotato[adjv{¿¦¤È¸q
r|wsqro{tttwyypcwzirvgwucj|}suzz{kxy~tgzhkysizv}h`w}jjth{iv~z~~p|v|tbVx~ss
}qxyqqz~}vwjqilqo\faqmIduK]mUSYrnbQOtxaRXX]aps[a]heedkdP[pICc`[cp^]whUVUv][enhVk^aigennhpwzmiy}r{~y|u|pwrmw~p{wyztx~zuo~}
zw
{gt
y~{
vgon_d\XeYmra``plkhnatiY^dnw©ÚªÇ²qwotz
ztst~wpqmt
xuk`zyfqpgvn[m|y~y|nw
u
{ltv~mgvdm{umiwv|abxzhuub}{gu{tvq{}mZWupv
zmtzlv
|~y|t~thtenlsYh^sdGmmKZaWVUwmbPRtvXPVX^aqo\`cmdd^ocT]rFBe_]fg][{bQU\u[[gkaVj_`nefkqhpvxtku~vx~v{s}ortqu~
{ww{|
x|}~{~svy zvtx^}
xt
wzbnl[b[[aVisc`[gnofqaqfW]cl|Êι¡jmmlqq{~zyxsyuu{jlvcuvof^}zerkjqcXmz
sx}ors{y}ppo|fhqbmxqjkqx}|z]eyxivxfwgt}rjo~yo}^Ysnu|opqwixw~s{u}{sgsankqWi]v[GmjLVT^SU{kaOTurPQTW^bt
i]`ljfcZoaXcpG@g\`e^\V{^NVepY[jh]Wh`^rfkgqgpswxntzx~yuq
pp{xvuz
z|t~}~~}|xvxx}muxd
so
ztcnjY_[\]Tgrd`XdqrfsbkeW[`jw¾®{ ¶nbshs{qxz}~wwrvo{vejo`usjb^xyfqhkkZVow£qryvot
}xtqnhx_jl_mvjgjkywzvZg}|xes~nteu
pgkzunub]q}lu}{fv}nqivys~m{|{xqflbm}lmUi_vUJijNQNhMX{haNUvkLQTU_fuf^`qhgbWi]\khJDjYadVYUyYMVmjY]kd\Yec^tfldqgrpuxp
v~w|
}urnsy{zsr
y}u~|z~{v{wwziv}{lqp
~pflgX][\[Sdpd^WbruiupeebW\\hporsddx~itusrwxvsunkzqbgkgtnf]_}p{imygjdUWro¦|{vt}s}{o}|x}}uoqlgt\lg^ltdgeizo{rYgwuhpxvbw
|ojm{qgsfanzgsx|~bwwjlrv{q{zt~gywodfbm
{ljUhboRJhjOKNoG]{faMUtcJNSWajv~e]gsif`VcWbp]LKjXcaUTUsVLXudY^k`\Zce_vgmbpisor~utww
z|t~
nrt|ztq
zut|
|}{~v{£¥y
ku|zuznsy|unjheV][ZZSbmd[Xas{ihmi`bW_[jjkogk`hyxjstsmz|utmzhjyj_enhvheXbwj~{ojpgf]TXog¨wz|zvqptwzyu
vjquggn[lc]mr_gajxh{m[nrtjo~zwaw
x
sroyrcqi\qxdrt|yctqhjzurmyxvyd|ywqddcn||jjThaeSJkgOGQkE`xfaMSr]JMTZekvze^mqid]V`VnnWKShWe^XMUlTJ\y_[^k]][ce`yhl`oounpwuz}vyzxy~qttyvt}|ks{
~}~{v«zkryu~tnn|sjomddX_ZYZTajg[Z^ti^ml\aW\\lert}ii\kvugsvql{}|xurlygixf]esgzwccTepg
wwgij`WVYgc§n~w{qr~hzp{}xr~ndurdgg\ja\oo\g_mudzh]torkr|~uvbt
{xruuapm[rtcqs
|uesmam{pkj{yvsfv{{vqebemr}ikSg]\TKqbPFVaGbvfaKToWJLXXgkuzdenqfdZW]XveTJ\bWgWYHWePHbxZ]_l[^\ac^~ij_ntxmpnvyr|~uuy|tuuyzz}~isz}~
zz|sq{{}dqys|zurn
l{~lzbpobe]eVYYWcfk_]\r
hXpn[^XZ\l{cpwulbYlssgtuolx~xvmntdite[gufvvy_]Rffjt~bdi\TW]bc¤hxtymp{iyn||vsy|xhdvl`f_^i^\skYe]oobze[w|knnoxysuds~{wor~sbxd\ppbqr}tgre^nwiehz|unout}trb_fnn|dhSgXWSLv_PJYXHbtcaITmSJMZWilq{bmlscbZZ[aw\SLc]XiSWGY`MFiuX^`l[[_bb\iganxylojvxm~vsttrvuw|}~~~pw|yxz~ttp z{xcuxswtksn~kx|pr^po`gblTZZWhcmf\[qeSrn[ZXX`lvciuji^Ymsplsssi|~~{vnnldiqc[krdtvs[WSearr]bc]SZ`\ceqq
tll{npq{}}swszzzdeuh]bY`gZ^vhWb]ohaw`[{vijrnxsruhq~vsjq}nfwX]lncrsztgo~[`prb`kr~mmusqxkpa\elly`fReTVQOtZQOXQHcsb`FUjPIPZUkkk|fnoqb[ZXYlqWRPfWVhSTFZ\NHqtX_cmcX``a]jcdmyxkpiuy{k}|y|nrovz}t|tx
utquo¡s{zewnmznfwpzksvrk^tnagekR][UgalkZ\pdOon]VXUgithbted\Xmtmoutxj|{vscdkna\nmcsxkZTVcdx}}q]c_cSZ_Ybcnp
tkh|pftxu}mzuvpzv_erc[]VacXateU_`mdaq]]~phisqtpuvkm{
qsgp~qsoT\gkfqtwscmvVbrl[_pg~fmw~ssskm`Zdjiv^fScTUPSlVPVSOGdr_aEXiNHWTVmhd|ikxkbW]U[tdSRWhQXeTSHZZPMwvZ_eliYb`^^nafkyunoivvl}{~krgt{u}r|
{ss}vn¤rvwlz`d{pfxrxlmqvgd{lcfghS_^Ug_ln[^mhNim`TVSngtkexdd\Xoslqzwrl{vzxkaelm^`ojepy~gZVX`lx|{p_b^gVX_Wcbkp}xlkyn\wsm{jvtop|sXim^X\UabWdpcS^ahablZ`~kfksvomwwli
{mrgq}nsndZaiiotts^imSeqeUcoc{drw|wkpmk`Yafgt\dU`URNWdRN[OOGdo]bFYiMI_KXmd`xin~d`U_T]u\TS`fN]aUSJ\YPYtu]_elhXca[^qcgjxqsnhvtzrz~|ynulst
y}|
sstxro~zz}~~}}~~}~~~~~~~}z{|~~}}~}~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~ÎÚØØØØÚ]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDARÌÚØØØØÚ° £cggggfo
}}{{z}~||~}}}~}}~~~~~
Ûéççççê~S7¤¤¤¤¤¤£r]____aR455552FØêççççé¶ £¤¤¤§|\____^j|}z{z|}{|~}}}~}}~~~~
|yzz{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{y{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~~xuwyz{{{z{}}}}~~~~}~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~rtx|||{||}}~~~~~~}~~~~xrvy|}|z}|}}~~~~~~~~ssvx}~|y}|}}~~~}~~
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxy}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvutvwuqrqnprpghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkigfggghhgmgjghehgccbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__`c_\_]`]^Z^]YY^ba^^ZY_\XWSNMLKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSSPMJMNPROMPQQQQRVVQQQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTttuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPPRQPNNONONOOPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKLFDFJKKKHJLLLOMLLNOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBA@@CCDEACEHKOKIIJHGJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:<>><ED=?EA?@A@DEGGGGBDDEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@;;><;;<<HL==AA?BC=ADDFBFFDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprttsqrvyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;::;89:87:<978;;>=;;:8:@@AB?A?CFDBCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqususqsxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<979::988::78:9:;;8789;:8<;=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>=;<<>?=<=;:<===<<<<;;:;<>=>??A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquuuusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCC@><=?@??=;>=>CE??@=;===<;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVpoqssttuyz{{}~~~~~~mLPQNOPNNOPPO><<=>??@>@@???CED?=;<@>:;::97:<9==@=:<;;<;89;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}}~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC??AAABA@=<=;>=:::<:8988:;=??<;;<;::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@???@=?@><>@?===?==>CD?;<=>@==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy||}||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCDA?@@@?=@><=??@@@C@@?@@>=<=@EABBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{||}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@A@>:><?=<:>=?BBE@??Na_J@CEIIIIMMKECFGHEGEEEDDCA?@>>BFJJGEEFFFJNNKJIGGHKLJGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@DED?<ACDB?>A?ADEDCWu~XGHJLLMOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHIHGFEFFFDFHGEEHHFHGHFQnnpqrvvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJHIGHHIGGCDECDCAUtWILMLMNLJGGGGDGGGGFHFHECDDFEDDHHCCCGJJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrswwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLKJKLJKIHFEGNGOl|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD?>?DFHDEGIKIIGHIGIIJJIHFJJJJIJIJJJFILLJJKKfopsstvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKKKKKNLKMLHIOpp
uIIFB??@???<<<>::<AA@><998<<=;>;9;?ABAACCC@ABEDBCFHIHHHLMLGIJMMNMJJKKJLMSloqtsswyz{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHGIIKLOQTOXlsz
fBB=88::9878896479;<:8567789787689;;<>@;999==>;;=ADEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@BFHKHKTpe|T;8656766645763468:876565677778:77789;7689989876:<@GFIFIFEFOSRSSROPPRTepqsttvy{|{|}~~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:<DBDFD]|
H676468874578467699766765::;::<898977779::8878588;A=>>BA?AKLOQPQOOOQWkrrttuwy{{{|}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897:A9<D?fz>:88;<=>9:;<89;9:;:99;:9===?;;;=:>;9;;<;<<:;<8::;:999<?<=ABDIJMKJKLWorsutvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<:89989999:>=?@Dwl<;>ACEEAAAB>@B@@?=>>@?>?@?@==?B?AA?A?=@@@>?A<><;:;:9;?=;;==AACABCAXqqtttvy{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<<:;;<;=>A@>b
^>DFIKJIFGGDFHGEC@@CECB@BCB?@DHECEDFEAFEFDFFD@B>=@>=?@>???>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:>:<;>>>?;?=@?C?K~
WGLLMKNJIKHIJJIECDFGFDCEFDBHIKHGGFHGEKIKIKKJCFCCDBAACBDCCDDCA=;=@hpsttwwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA97<>;<:=?>@<??CBE@h
PMPMKNKJLIIJHKGEGHHIEEHFFELLMIJGGHIJNMNLLNKHFGGEECFFFFDEHHFCA?@Llptuvxyyy|||}}~~~~}}}}~~~~~QA?>?FGG=<@@87<;;<9=?=>>@ADCIT~
qMQOMLLKLJIHFJJEJHGKJHJGGGKLNLLHHIJMPNPNMOKIGIJHIDIHHFFGGIFCBACUnquvwy{xxzz||}~~~~}~}~~~~~TDAABGHB?8?@8:;8<=:=?<=>@BDEMm
^RRPMNMKJGFCGJGLJGKOLKJJMMLOPNHIKLOQQPQOOJIJJLJLFGHGEGIFEEB@BB\prwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<9?==?AEE>CECGLu|WVRRTROLKJEEFKONOWVQPOQSRNSTOMSLPSUWRSRPLJMMMKNGGJFFHJDDEEBDCcquyyzzz{z{zz|~}}~}}}}|}~~UFFGGGGHF>@B=?==B>AAEULBIJGKMy
gVVkaERQQPJ;;QSR`u]UVTVYYSYXRZfPUWZ]RTWQPNRPPPQKKKGHIHEFIIIHIjsvyyzyz{{|z{|}|}~}}}}}}~~~THJIIGGFE??A@EBCFEDDKWQKPPOPQy
}al[dU:XXXSP?@VUY\d`VYbr^]W]ZVEQYZ\Y_TYgRUVXTTVSOOMJLJIILMKOMSotvxyxwzzz{z{|}|~~}~}}}~}~~~~~VJJIHGFDDBA?HMIMPKIJOSRQUVVVTu
g;~znpXZ[ZRSRWVTZZuYU}a\X]^WIV]][[_YHYXY\]XXYWRQMPQMMOSQQURassvwwvxyxz{{|}}}~}~}}}~~xy}YMKJIIFBD@A:PQQWXPPOQSSRVWWWWl
n~fYY\YSVTWRQWVcQerXZW_hP`fZ[X\hbGOZig\[\]]WSNSPPQVVVVYZosuwvvtwxx{{|}}}~~~}~}|~}r}ot|]SOOMKJEC?@;PPZZZRSQORRQURUSV^ux
}{\PVXTRTRQQLOMKfyZ]TYUV]ZLTZTST^ZXWWWzkXZ\\^SPPPINOWVX[Zdqtvvttvxyy{{||}}~}}}~}}~~~zxwvsu{tk~~kry^[VUSROKFCDAM^lVRSNOQOQVRSRRTcdv
~ymqVIKNNKMKHJDFHEC>ScURQQNKRTQMOYQMNQSUUMQSRPNLLHCIHRSTZ]mrvvussw{z{{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt_d]^[YUQLILIaltPQSNQRPS[RSRQRUUbs{|}{{
u_]KC>CCCCB?DPCD@C>BHGV@INMG]iQHFOFDEFHGHBCHGHJGDBAC@NPMRdtuvustuz|z{{{||}|{~}}}~~||}}vt{mh|gnqfieeb\XSQPURsWe[OONLQRPUYSUQQTROV`klsvz{xyurnstsyx~~kLG>>:;>@??>>jPJaEFHIEB?HMMGMQUJBE?><=<==?=?ACB??<=B>JMFUouvvstvxz|z}{|}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QQZ\Y^IJPQNKLQRQTUUWQQWVPX[b]agmmlokh`nrimlqu{z}zxz||xwxdB@@A=:BCAACA[\N{NOONKLMOOPLKLWNIG@B<977599=;;;8989?;AG>\tuvvuvwy|||}||||~}|}}}}~}xuwz{zvyxuw{|yxuywcqhipmnmmhf^OP^\ZIGPRQOMPQNQRSVXSRYTNYZ[WY\_^_e`]^qwk^`gkwooljonnlfbYGFFHBAFHEEFCLQOaWRXQPSSRU[OOQVPMICF>:96586979:365795<B=ftuwxwyy{}}||{|}}~~{}~}}~~~~{wuy}|yx||||twvwvuwknihqnooojk`UW^ZWMKTTSPQUOLRSTWXTTXQLWYYVXXVXY]WXXhsk]V`tkaa_]d`_^YUPMOMLIGJKIHFCPOSZWTTNQSYS\eUOSTQNKIHC?A9988978847578598Gnruxyz{{}~}}|{}|}~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPWVVSTVOOUVWXYSUTLKSUUUUWPTUWTUR]n^RNY`[VY;DUWT[fJLPRROMMNMMLJFPPUYSTNJNOTST\VRUSSOMLIHHF??=:787659967665Wqqtwyz{|}~}~||}|~}}y}}|~~~}||}}~}|rvqxxruuqqnppopuvtnjddjppqrpnfedc\^RTZVWTSVTRXXYYYRUOJGOPOOMRJOPOONNOTLMIPPSTU2<XMIAQ=c`QSQPNPPONNMPNTRPRLILKOQPQRSTQSOLMKLLHCBA=:9876;B4566;eprvxy{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqpuuvcjgeWhtrrqniihpVVTUXUVURWVUZYXWUQSFEAFGGHFJDHJHGEHLHKIGLMPMG/E_R>3@>joaRRQ@GTQOPPQNQOPOLJLLOPNMPQQNPOJLMMKGEEDB;==<9=G6676Dnquwz|{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknbePSTRSUOWVVYYVQQQO@>;=?@BAC@BEDA@GHGHFFHJMLDGCORC8ENS]gSQSAGUPPRQPMMNLJLKLNOPQLNNMHLKIKKLKGFFED<AA>;@E;<89Tqsuy{{{|||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLONMQSLTUTWWULLKH=987;?A>==A@B=>EHFDFFIGJJ@FAA@FHEJOHQRa\QPRNSOOOLLOMKMLMON[VJMQOGIHDIJLLKFFFD?CC>=BG?B>Adqtw{z{{|{zzw|wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B?;>A@@>ADIECHGIGIEBB?><CBAGIDMOaePMONWKLNKKMMLLKNNSdMJLRIIIEAHJLMNKGIFBBB@?EFEHDLopwzzy{{z|zwsxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLLIMPMPOGKE?B=999:?B?<ABAADDGKFDIIGGHCC?B??@A=CECKNQTKJIMTFIIJLJKKIJLMOPRPKGCLGCCJJLMONIJIGCCCDIJMLIZsnxyxz{{y|vrpurtyyvxjqnjllnttmsu{stxronqovsnporpopstyjN`gsjt|ygosqiqheqHKCFGGGJKIJLDGB=>=:::;AB?=BBCCHFJLJEIIFGGCC;A@B>@?BECIMOGHKFHKDHIKMHJLHIJLJM]RIHDNGBEKKNMPNKMJKFGGJMNQNLcnjwvv{x{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoijthdpFKCFEFDEEFEGCC@=<=:;::@DA?BCEEIFJJLFIIGFFDB;BCC>?BCCDGLNHKNHDHDILNMGILGFFIILNKJHEOICGMMNMPNOOMLIHIOSQRNRfgfrosxu{z|lhjoekpmsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhme_pGICEEEBBAE@DB>?>:;;=;=?CB?ACFGJGJILHGGGFEC?=EEB>ACBCEGHIGMPIFFFKNOKFHIFEDDIIHKIFHPKDJMLPNONOPNJJHMRUUROWdaamgqrosyzgehhcilgqlflmgiklsmpvutpnvrosrsutqssutsuvvvyvutvlkuumrvqlnlerMGDEGCA@AD<BA>A=::=?;>?@B?@BEGJFJGIGFFFDCBAAFFCBBBDEEGGHFLPLIOJJLKIFHEFEDCIHHKJGKRMCOONQPOONOOKKKPUWVUTY`_]ianinhrsbeffdihfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwuksunutsprkksMFGEGAB@CD<AA@C<8:=>:?=?B?@@DFHEHFFHFEECCEBDIFCGEAEGEFFGEJMKHQMJKHHIEFHHECIIJKMKPSNDRSQQRNONNPMLNSWVWXVX^Z]d`hbjigk_defcgggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxnouorsuqqipzMGGGHBBBEE<@CBD<7:=>:>:@B>??CEFDFDDGECECDEFFJEEIGBGHFGFECFJJGMKLKHJKFIHJHEKKLLNORTOITUTQTPQMNQNMQWZVZYWZ^ZXa```_hec`deggjihjfhnllomqpiuuxrrpupppruvpusuvu{~}xvtwvvvwplupmsunossyMHHGIDACHE<@EBD<8:>>=<<BB<@>ABFCEBBGCCDEFFGGIFGKHCIHGIGFDHKIGKHMKJKLHLJMKINLNNORUVOLVVTQTRRLOQPOTYZY\ZZ\__^`c^\ackb`dghr
hgjfjnnponsqjtuxrsstrnpqvrquruus~y}uuvvvvxriuqkrtlqwquKHKHJEBDGE<@GDD@9<>@?>?CB<@>AAFCEDCHDFDFFHHFHGIKJEJHHJHFFLHHHJGLLLLLIMKMNMOLPPQUVWOKVVUSSRQLORRQV[[]^[]^``a`ae]d`fg`ehjcssfjhglprqossnswwpuvtsmoruorspurvrtvuuuwvuwtgtrkqrkrwowIJKIKGBDDE<@FDDB;??A@@@DA@B?ACHBEDFGEIEFEIHFIHJLHHJJIKJFJKHIJJGKKMLJJMLMNNOLOPRUWVMNTVUSRQPMNTSRW[^^_\^``aaa`cdebdicdijgvlkigmosqpqpprywruutsmmssmqrotutspswtuuwvuuteqskpqjrvpwJLKKLGCCAD<?EEEC=AACBBCEACDAAEGCGGGFEIFCGJGGJFILHIJMKMLGKIHKKNQKRQLSMKNMNPPPTOWXX[NSQW\ZSVPNTUTTXZ_bb_da_`b_`fbacinhcihhmxvlhimosrpqrrrvtsusssnksqmprotvrrquvuswywutucmtkopjqtpwLMLLLGEA@D>>DEFC?CAECDFCCEGCBIEBHIIGHJFDKJGHJHIKGJJNKNKILHJMKZfJd\KlRHOM_nUls[qpbwcRPbvuhucav`Xnqbdvinzf\lt`lkU_wvijhhfglmjmojmnsrprrqrsrssrtrnltonpqquuqqstvvuuywutt`ktkppkqsqyKNJKJFB?@B?=DEFDCCBEEDFBFFGCDKDDJLKIKLGGNJHJKGKJIJJNLMLLLIMLL[sbdp^llUMNer]geqlntgpi_aYnmbppbkjjgoqtetno\pugqMKryvkaakeelxmkvlnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIIGED?AB?=BEGBFCEDEEDBHHGDEKGGKMMJMLFJNHJKJIKJJIJLMNMMMKNMM[roonpplkMPQlXNibtrpamov\YlP[mmZqmkomxxtsip\`slqjUuyxoc^kfbgppjioppsspqpqqrrqqrrtlmrmmnorutqtrtuutuuzvutenukpolsrryIKGHFEEBAB=??EGBGDIEEDBFIHHEGKJGMMNKMNGLNIMKHJMIKIJJNONNMLNML\hdu]lqWlNOQnUZk^klvaldtTecNlYl\tpkilxjwuhp]_skhWbcw|oc`ghacityknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvHMGIEEDCAB<B@BFCGFKGECCHKHHFILKFMKLRRLGMMHNJIHNHJJHHNONNLJMMJZsppoqqmlOQSoYskgooqqomt^nXat_nopoqroousttj[]tcwxrjnzhaacfabjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyytukoumtonssvtIKHJCEEE@@>CCAFCHIMHFCFJLIGFJMLFOJKWRKGKJJNIIJLIKJIHKMMMLIKKKSkbZi^_jcrrZ_Yko`eeUk_c[abQ`mh\j\niidZoedp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrutwrIHFIDEDFA@AEDCGBHJLGFDGKLIEFJNKIOIL[QJFHHKMIHJJKKIHJGLKKKGHJJLLLKIKLNT[]TPUMQPNOOURPOQOOQJJOPQdqiTYV[[\UY[]X]\\cfaafbcf_^fkmhmtxrtroppt
zpmmlkqsttrtvtuyyxuvqruovrtsuusHCEGFFAEC?CGDEGCIKLHFDGKLHDGHPKLOKLWMIFEHIJHIKHLJIFHHJGGIEFKHIKNLIO\W^O\\`^OXYS\\b^MYZMXaRKYaZS`d]bX[ddVVX\YZX\VY\^c_d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCDLMBCDBDIEGGFKJKHEFJJJFDHHPJLMJMRIHEAHFJIKKILJIGEJHEFGEEJGBIMJKT_Y`X`a[`UXYT^^Z_RY\P^\YN_\^S[^c_Z]`c_Y_b[`^[TYXZ_^dbbaceiekrpoppnow
{
uqprrsvyyzyyxxxwryvxrqxvtvaSJJMIECBCFGEGGIJJIIDGKJJDEIINJNLHLNGHF>GGLIKKJKKIGEIECDEBFJD?IKHN[cY^^a_RTSW_`\]Y^QY\MV_WKQY[Q[_aa]^ca`babcceZRXVV\[^c`__cebhommllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQJFCGEBEGHFGHIFGJGHFHKIKDDJJMMLLHJJHJG?GFNJKKMKKKIGHDD@DAHIA>HIFO]aZ[d]_TQRX]\\\_ZKW\LR\YIM^QQ]_accccb\dbadcfXQVUS\X[a_^_aa_dlkmjklnv~uz|
zrsuu{
~xpzwvx\RMB@IFCFKIFFGIGGJFFFILJNEDJJLNJLIKJHIGBHHQMKKOMKKIHHED?EBHHA@FECT]Y^X_X_[]UXXP]]QKJV^X^[]VZaRR__bb``bb`cbaddbXORRS\S\^]^^__`dhgljnnp{{|~{
srw
|x\SKBAGFDGMRHDRKFHHHDFKIMPEGIJKNLLILKIIGDHKQOMLPLLKKIIDEAECHFAAFDAVUE\T^SV`XNTUNZ[MJKT`a[_X_^b]OYb\``_bcb]bbW__TPOQRYS^\\]^_`affelfoow|{{}
zo
~INFDFFGDIRcQDW_IGGHDFMJPPFIIJKNLLKMKJJGEINQQNOOMNMNHKADACDFDBACD@LHBLLPOOMFMFFHIHGLLMOPILOPPSPLQSRUZYWYXXdVOSTPPONQUT\YY[^^aaefchdklqsszy{z~{}{
}KIEEGFGDKM^MGHYMGHJHGMLQQIKJKKNMUNOKKLGGKOSSNPONOOOHKF`ED_LDfcCL[H^[smONVmYLCP_TlWgJ]WU^DLQULMSVQRTXWTXUT\TPfZhhdYTkTXWU[\\``abbb`gignlhrz|}~}}zr{z{
~z{KIEFFHEEKOTJKG`THJOJIOMRQKMKLORUROOJLMGHMQ[YOPPNOPPIKQQI|YYrsWPmHqnoaVRrqtOBksnqtpSo_[nX]V\XUkhU]VcY`YZ_VUWituu_av`Yb\\f[_aaab^`bgmpl`pwtx}~vxzmv~tx~|~|z~wwMIEHMMBDLLGJLFRVLLOHKRXWQNOOMQTNOQPKKNGMPS[ZTQROPPQKIZx]TxdhYRSPvgtlpbngkQrOLwmjrpsrqrpop]fzuxqqzq~r}ku}bRg|essoss|}o~yor_``bb[a`hknkblfgmw~~{xwtvzhr~nt|~wx{~x|u|||ssNKF`]GAEMMHKKHJQOMNJNV^YULQSNYYLSSRNLOIQRTYWWQTPPQSLHgxlcxqmZKLTypumubowQddIevqmwojfxxiWrRi{mijzz}lxzpgoXuujvupash|ilx|o___cb\_defijdgbcdllppstsssyqrxbltgry{sruy~svzn|}yxrnMJRtNCBEPPIKLJLQOOOMPZ`ZXKTWPa^RVQYSMPJSTUXWWPUPONSJKrouuquqdhaVnLqp^GhyWvTKhx}x`y{sna^modSgrunmypwlvstqlm\s}zkmy|lum|kpvux^__b^]_edighee^bbiiijknokqnmjpacfdowxompsynqpj{ztromKKZVHGEGRPKLNKLQQPPPQW\YUNVYUfXRRY^TMNJTTVWYWOSOONQIRmHiwK`dvuUWlNnl{rajguTKWkh}lmlx`[pz{_`zscroxqhd|ir{]TKl_vukiu{{m~xk|p]^^b[^bdegeeebZccikkrsrwgmihdg`alagsrlhmmr|kmhk{tmmkmOGJKHJHHRQMOPMLSSROSRWRVTPWZVVTTTa`QONKTSSQVVOOMNOQJHQNPULKKRSRRROVUQQORRXXPNPUTXXX[[USSW[WXW[ORTWWXQ]XV]USOXRVWWXZ`[gr^[[[]]_cZ_ccefdccbZccgffmnmuffgc`f_]g`dlhfgkhpzhggkujhgilPIKKLMKJTRMRQPLVUTPTUXUZURZ]VUTWUYXPOLNWTPNUSNPNLQPKJQQKQMJKOQTRPQSRIIMNOQRPPQTVRXW\WSSQQUUVTZQNRQWUTYVTYUSQUSTUXYX^Z_a]\ZZ]]`c\]bbdgeddaY`acabhhincad^_c]Zd\bma^ffgmsdihkkedcfhQJKKNOLMTQOTQQMXWUTVXWWZVT\`VWUYUXTQPKOXSPNUQNRNLSPMNUSNQNMNQSPTPRTTNLNOQTTQQQVWUYZ[YSURTXWWY[SORTWUTYUVYUQQWUVX\Z[`]VY_]^]\]`a^[bbchfedbX``b]`hefda^_]]^ZZ_Z_g`^^]chkahfhfd`bdbPKMLPQLOTPPTQOQZYXWYZZXYV]jdVXYZWVTTOKOVTPOTPPQNMQQORXSQQOMOSUNWQTTUONNQTUURRRTXVZ]\ZVVQRWXV[\VPSUUUVXSWWTRQXVV[_[^`_V_]^`\\``__ZbbdhhedbYb`b^^fdc`b]\\\\YZ[X[a[^]\_b__bddbd__`\PMNNRQMRSPSTQOU\ZZW[[\YZ[dqmhd_[YVVXRMMVSMNROQROMPSRUZUSPPLPWUQVRSRXMOPQTXUTTSUYX[^]\[VROUVU[[VQSVUVXTSXZTSQYWW]_[`_`Vb\`a]`b_\`]c`cgief`Zc`a__ee_`c[Z\[\ZZYYW\Z\[`^`[^^a`_c\Y`ZQNONVQPUSPUTSPW\\\Y^\_W\^jpwyc\[VVYRNOWSNQQPRTRLQTSY[WUORNSXUSRTRRZOQSSV[VVVTVZX]^\\^VSNTVV[[UQTTVXXRSY\TRR\XZ]^]aa`Wb[cb^ac_\bab_dgidg^\e`a`acd_b_YZ_[\[XXYWWZZZa\][]\\Z]`W[[ZPOOOYPUUSRWRTPZ]^]\`\`U\]hjr}slh\UYWQOR[SRQTRTUTKRVUZZZSOSQUUUSNUQRZRTUTX]WXXSX\X^]YZ]TUNVVW^ZXQTTXXXSVY\TRV]Y]]a^cc_Y`[eb_dd^^cca^efief]^daaabcd_b^X[_[\[XXXXW[Z[`][[\[XZ[^V^Y]POORZP[UUWVTTT^^`_^b\`U]^bkyum}lZUZVQQT\TTTUTVYWLRZV\Z\RPUSWUUSOWQSWSWUV[]X[YUZ^X_^Y\YRWRYXY_YYRTUZYYUWY\UTZ]\^`a`ed]^]]eabfd^_dc`\gdhfdb_da_a`bb_`^WY^Z\\ZYYWV]Z]^[Z[\[WY\]VXW]SOPWYP]UVYWWUX_`aa`c]`U]^beev{hXYZTVTV\XWWVVW]XOU\Y^]]TSXRWUSRSWQSVTXXX]^X][U^_X__X\VQYUYZZaX[TVWZZZXYYZWV]^_^cbbee]b\`fbefd_`dba[fchfcfaf__abaa`_^VU]Y[\[Y\YY][[[XXY[YZZ]_]TY]UNSZWT\UVWYWV\`aacac__V[`da_zuohZ\ZVXVX[ZY[YXY`VOT][`a\UUYPTVTRVUQSUW[[\_^Z_\V__Z]^Y^VSYXYZ]aY]UVZ[Z[ZZYZXY__``dcdeebdZbfcgfe^ab`c^cciedg_g^bbcaa`^_XTZZZ[[X\XX\[Z[WWZXW\[\`]V]]SOVZVVZVYUXWX^`badada^YYadb`kfh^\][WWYZ\\\_[Y[bVSW^]ac\SVYPVUUUVUSUTX]]_``]a]W`^[^\[^XVXX[Z__Z^WX\\]]][Z\WZ_a^`eddfffbYcfehgd^c`_ec]fideh_g^cbcaa`__[XY[YZZXZXW[\Z[WXZTY]\Z`\U^bMRWYVWZY[\YWY^`baeada]^Yacb_a`a_]]]XW[[]]__\Z]cXYW\`cd_RYYPWVWXWVVWV]]^aba_b^Ya]]^Y]^YXUW[[`^\_YY]]^^`\ZZY[_b_bedefggbZdfgigc_c^`feZiicficf_bbca``_]]ZX[YYXXZYWZ[ZYWXVU[]]]``bbxKWW\YW]\\]ZW\]_`bdbca]`Xbcb`cac^\]\XW[]_]`_][`d\\WZbecaR\YOXVY[YYWZZ`^abc`ac_\b]_][_^YYTX]]__^_[Z^^`bb\\W[]`bbcedgfegd]efhifcab\cg`\iichife`baca_`_]]\Y\YXWXYYW\[ZWWXPXZ]acffrkJYW][Z_]\^\Y][^_bcbaa]b[bda_cbb]\[ZWXiq`\`_]\ac_]XYcedbT_ZQYW\]\[Y[[c`ccc`bda`c^`\^__ZXV[_]\aa_][`abeb^\S\_`cddfegfefe_ffhhgdd`[fg^ahhbhhfc`b`cb___]][Z[YXXXVZV\ZZVVULXW\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{{||||{|{zzzzz{{|||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvvvvvvwwvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{{|{{{{{|}}}}|}|zzzzz{{||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||upooooppz~}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½sqrrrrt>(+++*"ÛÒÒÒÒÖº}~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}upnoooooz~y1333332j{éääääèÊrooooor2ïååååéÇ}~}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vuuuuuuuvwwwwwwxyyyyyzxopppppprrrrrrrwzyyzzz~|||||||zzzzzzzussssss}
|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvvvvywvvz{x{xwvvxyzyz~yyyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{{{{{{{{|}}}}}}{zzzzzz{||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwww|{z|z}{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwwy~{y}y}zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z|yww{~|y|z{zwxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzx{||}{}{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyywxz{zy{xxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyxyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{|||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|||||||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqppnnnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrqppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpppqrrqqqpopooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpooppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqqpppppppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqpqqqqpqpqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrqqqqqrqqqrrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrstrrsrsssssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz|~~|vvwwvuxzxxxxwwwvx|yy|zyy|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{{z{|{}|{{{{{{zyxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}|||~|}~~~~~}}||}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~~~~~~~
~~}~~~}}}~~~~~~~~~~~}~~~~
|||{|}||~~~~~~~~~}~~~~~~~~~~|}||}}~
}||~~
}}}
~~
}}~~
~~~~~~
~
~
}}}~
~~~~~
~
~{z
~|}}}~|{|
~}~~~~~~}}~}}}
}|}~~~}|}}|z|
}~}}}~~}}}}zzz~~
~~~~||}}~~}}}}~}|zzz~~}~}}~
|}}~}~~~}~}|}~}}~~}}}|{{{zzyz~~~~|~~~~}~~}|~~~~~
~|~~~~~~}~}~~~}}}}{{|zzyyy{~}~~~|~~~~}|~~~~~~~~~}||}
~~}}}~~~~}}}}}|||{zyyyy}~~~~~~~~~}~}}{|~~
~~}}}~~}}}}}}}}|{zzyyyy~~||~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
|}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
}|||}}||}}}}}}}}}}||{z|xyz{|~|~~{||}
~
~~
}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~||}
~{z|
~}~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}||}~}~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{}|||{|||zzy{|z}
~~~
~~~
~~~|~~}}}}~{|}}~
{z{ywz}~
~~~~}}}||}~}|}}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}}}~~~~
}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~}~}|~}~}}|{|||z{z}~~|}|}||~~|{{}~}~~}{{{}{z{{{
~~}||~~~y}~v{vx}|||{}}~}}~~~}~~~|~~}}}{{}}|z||~||}|||||}|}{~{{{|||}|{{{{}|zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~~}||}}|}}}}{|~~~~~~~|||||||~~{|{||||}|}|~|}||{{|y{|{{}{}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}}}}}|}}}}}~|}|}|}}~|~}}}}|{{{|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||}}|}|}}}~}}~~|{{{||}|{z{|yzyxy{~
~~{zy{}}x|zr}{{|||~~}}
}~~|~~~}|}}~}||~|}}|}}}~}~}}}{|}~||{|}zzyyyy{{~~
~~~z{y}}zzz}q~z{|}}}}zx
~}~~}~}~~~}~}}
}~}~~}}}|}~~}}~}|}||{|}{{{zzz{{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv}
~~}~~}~~~|~~|}}|~~~~}|}}||}}||{||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||z|{|~
~~~~~~~~~z{z}}uqz|zqz}}yxtt
~~~~}~}}}~~~~}}}~|~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xytu}
~}}~~~~}}|}}~~~~~~~~~~~
~~~}{z{z|{z~~}~~~~}~}}z{|
{{syz|pwuvwyvtz
~}}}~}~~}~|}}~~|{{z|{|~~}~~}}}~}}{{zx|vyy{qtxwvxury
~~|}}~}~~}|~~~~}}z{{||}}|}}~}}~~~}}}~}}}}}}z{{|v}yxyzruyyvwwsu
~~}}}~~~~}||~~~~{{|||}}}~}z~}}x~|||~}~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~~
}}}|{||yz{z~y{yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst
|~}~}~~|~~}~~}~}~~~~~~}||||zyvyyzyvyv~|{{{~|{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}}}||}~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{z{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvqwyrx
~~~~~}~|~{~}~~}}}~~~~~}}~~~|~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}}{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~}|~}~~}}|~~~~}|~~~|}~}~~~
~~|{{||yw{ywxwwx{{z{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqrpxwq{
~~}|~}}~~}~|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{|||zzzzzzxsvupprowvr{
}}~}~~~~|~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyysuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|z|}{}}{yz{zyystunsqpxruz
~}~~}~~~}~}{~~{|}{z||{yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}{||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~~|z}|{}~xwvyyy|}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~}~}}}|}z}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{~~
~||||x|yzyz|}|{||}}}||~{{{zzzupxwyvu|uv|
}
{~~}y|zzz}}|}z||}}|z{~~~}}||}|vrvxxvtvu}
}
~
{||}zz{}}||z|~}|}}~~~~~|}}~~}|{xvvw
~
}}||{||}}~~~}~|||}}~~~}}~~~}}}~}}~~|}
~
}}}||||~}}{|}}}}}~~~}|~~~~~}}
~
~~|~}}~||~~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uy~
}y|~{
~~~}}}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqtpurstv{}uvy
hzrss|s}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vzy
rpvxqvtturstvinrotvnulwm{snym}rsvsvmmxlpylu}}~}~}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}}|}|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyqjoyxpkyszozwvvp~~~z~}}}~}}~~~~~
xyrz{pp
x
xyks~y{krz|m{yyt}vnoot|uwqy}}m~uo
zrr{|upozls|nw~~}}{}{|}}~}~~}~}~|}~~
}w
}~{|{~{||}~}|~}}~~~~~~~}}}~|{|~||
}{{|}{||}~||~}}~~~}}|}~~~~~||}~{|||{{~
~|{}~{|{}~}||~}~~|~}}~}|}||~~|}}||}|||~z{{}~
{{~}|||}}|||}}|}|~}|}}|||}}|~}{|}|}|~|||zz||}
{}~}{||~}|}}|}{||||||}{{{}|{~|{|}}|}}}|zz{{||
zz
~|~~||}}|}}|}z{{z{|||{{{~{{}{{{~||||}~}{z|z|}
|
~~~}||}}{}}|~zyzy{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yyzy{}}zz{{}|}||z{}||}|~~|{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yzz{|{|{{z{}}|}|~~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|z{{{|}}}|~}||}~|{
~}}{
~~|}}}~~~}}}}{|{zyzzyzz|yzz{{{|z{{{{}~}}}}||}}|
~|~~
~}}~~~{||}}}}~~}}~{~{{zy{zyzz{yzzz{{|z{|{{~~}|}||}~
~~}|}~~
~}|~~|~~|~||~}|~}}|||{{zzzzy{zzzyyzz{|y{}{|~}~}}}
~}~~~~}}~~~~~
~~||~}|~}{~|}}}~}|||}{{zzzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFL=8765999<>9?<D:;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>9=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<9<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËÊÊÊËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÒÓÔÔÔÔÔÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9?CE@<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÐÑÐÐÐÐÐÑÑÑÑÑÑÑÍÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø××××ØÜÝÝÝÝÝÝÝÝÝÝÝÝÝÚÖ×××××××ÖÖÖÖÖÖÓÒÓÓÓÓÓÔÔÔÔÔÔÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILO@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌͲâÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¹³xsssssssssssspÀ¼½½½½½½½½½½¼¿ÒÒÒÒÒÒÒÓÓÓÒÓÓÓÜãâââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVN<::77>C>8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÎnPSSSSSTTTTTSL óëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¥2)+++++++++++$d°©ªªªªªªªªªª¨°ÒÒÒÒÒÒÒÒÒÒÒÒÒÑàìëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;@C>6:7>>;=B?9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÎqTXWWWXXXXXXWP¡ñééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¦8/00000000000*h²«««««««««««ª±ÑÒÒÒÒÒÒÒÒÒÒÒÒÑßëêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;>@@8:;8<;;<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÎx^a````aaaa``Z¤îççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©« E=>>>>>>>>>>>9q´¯¯¯¯¯¯¯¯¯¯¯®¶ÒÒÒÓÒÒÒÒÒÒÒÒÒÒßéééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB?;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÇÅÅÅÅÅÅÅÅÅÅÅÅÄËÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÎÏÎÏÏÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÑÊÊÊÊÊÊÊÊÉÉÉÉÉÉÍÓÓÒÒÒÒÒÒÒÒÒÓÒÒÕÔÔÕÕÕÕÕÕÖÕÖÖÖØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<8@B<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÏÏÏÏÏÏÏÏÏÏÏÓÏÏÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÎÏÑÎÑÔÔÓÎÎÓÓÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖØ××××××Ø×Ö××××ÖÕÖÕÖÖÖÖÖÖÕÖÖÖÖÕÕÖÖÖ×××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎÎÑÁ§ÔÏÒ¤¡ÐÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÏÏѹ¼¸µ³¡©ÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D>A98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÏÏÓº¯¬¬¦ÆÈÐÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<=:6?B@C:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏÏÓ±¨¡¬Öº¡°²ÓÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8FA?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÑÀ¤ª¬¥²¯³ªÕÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<B@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÔ£¢¤¨
¤ÕÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:=?>=<9@<<;:9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÑÄ{§³«©
¤ÕÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÕ«¯¼ÀÏÈÙÁ¼¦¯ÖÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:969;::;8@?:<<9<>=;;:?9?;;9=>==;;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÉ
¨»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;547<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÆÓÓÕ¬¥«¢Ã «¤ÑÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÒÑÒרϩØ»ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFHKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÑÒÏÅÔÔ¿¿ÕÒÕÅÄÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>775;8899:;<><>8::9;>?@=>>:5::<=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÒÒÓÔÒÒÔÕÓÓÓÔÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ>>786977899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9699:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9848<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EILAALD??;:889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEGIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDJ;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGIB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?;8776=??@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@BB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEFC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>;<9;;:==<<8;<;DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGGNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668784;?<?=9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778777646748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiihxsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptyvt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868556747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsoupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»ºº¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjdmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸········¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®xpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µµ¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢¢¢ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¥¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;;;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤££¡¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::88:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££££££¢¡ ¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¢¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥£¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>98;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤£¢ «cimnifm £¤ ¡ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9;;>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:=>:?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_]]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=9F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VPQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
}§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s}~
z}}¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
z||}~x
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPFMHSWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~}}¨®²¯¯µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWLO_^\NUTbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
£ ¤£¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJCPK_bXZQ\S_MHRIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©¨§¡¥¨¨«©©¯¡¡££ ¡¤¤§¤©«®¬¥£¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdVOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®ªª«¤¡¢¥©§§©¨£¢¤ ¥¨£ ¡¢©§ ¢¢®¬«ª§®¨¥¤©©©©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPORd\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨¦¥§¨¦©¨£§¦¤¥¢¡ ¡¡ ¡¤¤¢ ¢¢ ¡ ¢¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOWO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤¢ ¢¦¡¦¦¦¡ ¡¤¡ ¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvwa_\UYQUV[c^r_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;><@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯«ª¬¨¨«°©¨©¨¡ §©°²¯¬£¢¦¡©¥¤£¢¦ ¥¤¢¥£ ¥¢¢¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\V\hdocnihb^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£¢ª©§®·¶´´¶³¯¬«®«¶°©²±®§¦¢££¢¨¥¡£¡¤¢§ £ ¢¥ ¤§ª©¨ª¬¥©¤¥©§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxib[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>AE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ª²¸¼¼½»º¿´¯±³µ´··¯µ´µ²°¨¤¢ ¤ª¦¦¡¤£¤«¥¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨©«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥ ¡¨¦¦¥£¡¤¢ ¡¥ vxyxc[RYT__alhukpgiibYSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶³º±ª®´±°±´´¶¼¼¾¼¼½Æº¸·º½´¯µ±±º¸·²³²ª¦¦¤¤§¨¤®¤««µµ®³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YSah`fsositdidb[LK>:8898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÃÆÃù½¿ÀÀ½¿Ä½¼º½¾´§ª±À½¸µ¹À³¯¯ªª¨§§¤¯§ª´¼±´µ¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`a^^jbbnwuvnl[bQU\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAB;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±±§¼¼¾ÅÄÆÉÇÅÆ»ÄÀÅÆÀ¹¯½¼À¾¾³«ª³»¾´µ·Âº¯°µª«¦ª£¤§±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklfnuqruqf^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎÌËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÅ¿ÃÂÆÅÀ±¾º¿Ã¶¶º©´³´©«³»»±±¯¬¤¬®´§ª©¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tkkndolhqxoyiia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄø´À·´¼Á¹··¿À»®¥®·¼·£·°¦´µ¬®¥¥£¨¤ ¥ª³²¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{vnkhguZfrwsxfg]d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÉÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÉÆÃÃÄÂľ¸¾ÁÃÀľÁÏÏÎÆ«¯¶´µ« §´³®«¸µ³«©£¢©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuueeijh]jomxwcb``^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÏÏÌÃÇÆÈÈÈÇÉÇÅÉÇÈÇ¿ÅÇÄÄÇÈÊÒÏÒ̼¸¶´¸¸Á¾¾º½º¼º¼¬¦©»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqobagugiitmxl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÍÐÎÇÌÉÂÁÆÁËËÇÆÌÉÍÅÆÆÃÆÅÉÍÐÍÏÌÇÄÀÃÂÉÍÇÅÁÄÇÁ»¾´±°°Á¾¿ÁÆ¿¾¸·Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlietnsb\bTWTSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<:>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÅÇÈÆÒÉÁÃÄ¿¿¾ÄËÈÊËȼ»ÈÇÉÍÈÃÈÉÉÆÅÃÂÁÂÇÇÉÊÇÌÈÇÈÍÆËÏÅ·ÀÀÀÀ»»½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrofegcjdajmnn^X\VUNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÂƾÆÁ¹»Ãº¸¹¼¾ÁÆÁƺ¹ÉÉÃÅÄÀÄÁÂÁÄÁþ½ÂÀÀÁÂËÃÆÌËÅÈÑ°¾½¸º»¼¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbabccjbfcZYY\YQNE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿»½¿¹½ºº´¿¸µ·³¯»¼·À·½Â¿Á»¿Á¼»Å¾»ÁÄÀ¾¾¸¼ÁÁ˾½ÉÄÀÀÊÀ±Á¿»¸»¾¹µ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qc`bbgjffiei]VUSYOSKE8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µºÁ¸¾¸¿¼½·µ·°®¸¶¹¿»À¿·Á¼»Ã¶ºÈ¸¶¹»½¹º¶»ÅÅʽ¹ÅÀ¿¼Á¾¸Æ½ÁÀ¼Å¸¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zxpmeefoiekgXXNKKKRILHC9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿½¼²¯¬±°·¼¶»¼ÀĹ···µº¹º»À½ÃÀºÄ¾Ǹ¹¸·µ¸º´·³»ÅÆËÁ»ÆÀÀ¿½¼¿ÉÃÄžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksebm_\THKJDJBCG?9;8=<7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼¼À·ª¤®°·»³½¿»Ä·¶¸¶·¿¿Ä¼ÂÅÅÇÇÊÉÆÏÂÁ¸®µµ¼¾¸»²¾ÄÄÊÅÁÉÿ¿¾½ÇÌÇÇÄǽµµ¶Á½º»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qelintnwcgb\cQKTHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?=??FD@A?>:7?@CC?A=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼«ª£°¹½¾³¼¾¼Å¸²¸¹½ÇÉÊÃÇÈÆÆÉÈÌÎÑÌÊŵºÀÃÈ¿¿µ¿À¿ÆÆ¿ËÆÿÁ¼ÀÃÌÊÇÅÆÁ¹½¼Ä¿À¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_b^aaNHM?E@?DC;;::;:8;<:9<>9:>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´¼Ã¼ºº¾¼Ä¿·½¿½ÇÌÆÇÉÆÆ¿ÄÄÊÈÌÌÍËÆÂÃËμ¹½º¹ÀÿÈÆÄÁÁ¿ÅÀÊÉÃÃÃùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw{_pc[]_^SI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA>>ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼¶º½Á¼»¿¶¿Á¿¼¿ºÀËÂÇÈÀ¿¼¼¿ÅÂÇËÈÁÃÀÀÉÊÂÀ»»°´»½ÀÅÆÅÅ¿À¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}zmsxsgp][^]YQEDCMIAE=G::59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯·¶²µ³·¹¼»¶»»½ºÃ»·½·¹À»º¸¸µÅÁÃû¹³´ºÁ½¿ÇÀ¹À¼¾ÅĽ¾¹²°®¸·¿ÃÇÃĽ½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸¸¸½¹»±¶²ÈÀ»¶´±°·¬³©°³·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|vluzpni\__YSPAEIGK@DCH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÁÀ·½¹¸¹¶µ¿³´²¸±»ÁÀ÷·°µ¸¸¸Âº´»·»¾À»»¼®¯®³²¹ÁÂÄþ¼¿»º¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ¯µ´´½º¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsvvwnq`_e\ZUJ<??FF=FCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Ã¿·º·¶¶²´À¶²´¸³ºÀÁù·²²²´²·¾º³µ²¼º¼¶º¾²´´´°¸¾ÃÆÄÀ½¿¹³¯²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtvrl^b`[]OHA?=HCFMD@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·À½»¼¸¶º¶±Àº·¹¸¹»ÁÁÄû»¶´´°¶º¶´²¬¼¹¸µ¸Áº¸³±¬·¼ÁÇÿ¹ºµ®¥¬³°¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wo{ournc\fX\]RNMA?JB@JI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³±¶º®¬¼²¸¹·»¿½¹¾À´¿»¼º¸¾Â¼ÂÊǾÀ¸¹¶²´¶³´¯¬»º¸¶¹Àö®®ª²¶¼½¹¶²±¤§§£¦©®¹¬««¥¨¤«®®§¯¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmuik][jT]\OMHDFLBFMF8665:6:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹½µ²¸´¹ºµ¹»µµ³µ»¼À»¾À´¿¹¹º±ºÃ¼ÂÊÅ¿»¿¿¹´´³±±®°¹¹¶¼¸»¿²²²®±®¹¯ª«¬£¨¡¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬«¯£££¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±«©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndT`cW\QNLH@HQDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼·ÀÁ¾¼¼¼¹®¯²²ºº··µµ¼´¯´«¶º¸ÀÄÁ»¶¼½¸²³°¯¬®·¶³´µ¯ª¤¨¨ ¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨ª«¥¢£¦¢ ¥£¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vybwln\QhTPNGOLLBOQ@>;>39:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¥¬ª¨µ²±°®¯²§¦°¤¯®µÁºµ·²·¶²´«²´®ª«¯°²³®¥ ¢ ¤¥¨¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦ª±£¥§ £ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uu}mk{dhUQcMIHGNRNJNG;D@=2?859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡©¡ «ª¦©¤©£¤®¥¬¬´¼·¬²±¯±µ¯¯³µª§¬£ £¢¥¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¤¡¯©®²«¥ªª ¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}vx|dxy`bRU_HIIKSTIRPL8>B67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ £¨®¬««¯ª¯©¥¥¦¤ ¢¦ ¢®«¬µ²¶¦¯´«©ª´±°°¸§¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§ £±®²±´©±¯¢¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|uvshle[SZYMQJNNULRLA7>B78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=?758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢¡£ £ ¢¯¯¬¯±¬¶§±¦¦°®¬°¨ ¢ ¡¢¤¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¾°¬±®©ª´±°¨«¨²µ·³¸¬±´£ ¥ ¬¡¡¢ ¤¡ ¤¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xuiwu]lZR`HQUHFUVJBMG=JH8E<67;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¢¢ ¢©¬§¬©ª´«««¥¥«¨ª¬ª¥ ¦ ¨¥±ª§®£«¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼·½³³µ¡«¢©¨²©ª¨§¨ª§§ §¨¥¤ª¢¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vqmivmhm\X[BVMJGMGBFM<>L=4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·£°¦ ¤¤¥¢¤£¢ª¯¬§©£ ¡¬®®ª«§ ¢£¡«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶ººÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸´»Æļ»·³©²ª³´¯³®ª®£«§¶±¬¢¯¥ £¯±°¤¤¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¥¦¢¤{trkkurphW[QETHDIOH>EA3EH95;=6;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ ¡ ¥¥¦§ «±®§¤¤£ ¥«¥ym ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿À½ÇÆ·ÃÉÈÂÀž¹´¹ºµ»·°µ²ªº±®»·¾ººª·«ª¸º´¼®®¹£¦£§¥¢£©¦§ª§ ¡¡¤£¤§¢}zrkdhoxjeZ[FJLDDSLDBD7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ³²¸§¡¡«ª¢¡¢ £¡¯³©¡wsqnp¦®´¹Å»ÍÇË¿ÂÌÎÍÌÈÉÑÌÍÌÇÉÅÆÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÒÓÌÓÐÓÓÌÊÂÅÆÆÊÇοÉÐËÆÄÆÄÁ»ÃÁ¾¾¾µ½³¿¿ÂÃÆÄÇÄ®¿¸²¸¼ÄÁÁº¼¼µ®§§®¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLCEPIDB@55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª££¬®¦¥±ªÅÆÌÎÍ¿°Â©¥¨ª¡£©¡ ¤±±«¤ yrroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕ×Ò×ÍÆÇÉÌÃÅÊÏÊÓ×Ñ×ÒÔÕÓÓÈÌÇÍÍÉÒÌÎÓÍÄÇÉÊÁÅËÆÈÈž³³ÈÄËÊÊÎÅÊ¿¾¿¼ÁÇÄÌÌÈÉÀÿ°³¨¢ª£¦©¬¤¥¦
zruugcgvidVWQDMF@IQB=B<:23@<D<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ´¸¬®£¤£ ¤¬©¦°®¥¡¥¡}wpkebhqoq{
vpnqtp
³Â¾ÅÑÐ×ÖÖÒÖÍÔÖ×ÔÓÑÓÔÔÓÏÒÃÐÓÖ×ÕÖÒËÉÎÑËÆÍÒÊÒÕÖÙÕ×ÓÖØÎÒÉÎÑÌÎÐÌÒÏ¿ÇÆÊÃÌÌËÎÏÅÆǶÀÊ¿ÒÍËÏÅÉÈ¿ÃÃÈÎÌÏÐÏÌÊÈθ·»¨¥«§£ª¥©¨¨|wsvoc`erb]R\IJFAEHI>;@8=4585:76:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´¶ÂŲ¶©¢¥¦¡¢«µ§± ¦«¡¡¢wic`____^_`^blusqpolrquÄÇÆÔÕÖ××ÓÖÏÕÔÚÔÔÏÏÕÔÔÑÒÌÑÎÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐØ×ØÑ×Ò×ÙÕÖÌÎÏÉÍÑËÎÏ¿ÅÂÇÅÎÍÑÐÑÈËÌÀÊËÅÔÎËÎÈÄÉÆÆÈÌÊÓÓÑÕÏÒÌÒÁ¹Å²¥¨µ®§¨¬¥²¨°³¬¬
{zqstmacim_VP_JJBFCQM?<>44:=52755<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡© ¯®ªª¬¦®¸¨«·ØÔÕÙÙÑÎÐÀ¼ÌÉ·À¯§«©£¤±¶³£¶ª¬Ã§©©¡¡~recb__a`_a`_``_`fmppnkorwwÌÀÒÕÓØØÖÙÑÒÒ×ÏÓÎËÓÍÕÔÒÊÏÌÓÖÒÑÖÍÏÕÕÑÆÑÔÊÑÔÕÖÎÒÐØØØ×ËÈÍÃÉÎÌÉË¿È¿ÈÉÍÎÏËÐÍÎËÎÏÇËÏÐÊÎÊÂÉÆÉÌÊËÑÒÌÓÒÑÏÐʽȹ°»¸µª¶°¨¸³¿»±
yvopnkadnpaW\ZIFFDLWE;@<33<=86855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6==?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦£§¸¶µµ¥®¾´±ÀÙÒ×ÚÜ×ÏÍËÄÓв«®¬¦³²¹«²¼Æ¢¡l^^^adb``aa``a^__^]bmroostvvy¤¾ËÕÑÖÔÓØÖÎÎÔËÍÎÅÎÊÒÒÏÆÎÍÍÔÌÎÓÍÊ×ÕÐÌÑÔËÌÐÑÓÊÎÑÕÒÕÕÊÀÊÁÅÌÂÈÉÂÌÃÅÈÊÊÎÊÍÌÐÍÓËÅÈÏÌÈÇÊÄÇÀÅÉËÍÐÑÆÐÎÍÍÌÏÅÇÀ·¹½Ãýù²³¾±¼Äĵª¥¢
xpqknh``qhYXhVMGLIPPB;D>;67:89:57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;776?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÅÃÁ¿»µ²±ÇùËÕÖÙÚÛØÍÍÐÉÖÖÅĸ²¶ª¤®¬¹¹±²Ä¬|ebbb`]^acb`_``aa`_][]grqqrsqmry¤ÆÓÏËÐÏÔÕÉÅÉÉÆÆ¿ÃÆÏÎÇÅÇÍÊÑÈËÎÍÆÑÒÏÎÌÔÊÇËÎÏÇÇÏÒËÐÏƺľÆɽÂÇÉÎÄÂÇÀÇÍÇÃËÊËÏÇÃÃÏÈÆÁÅÈþÀÇËËÌÎÂÊËÈÇËÐÄÅÇ»ÇÃÈÈÂÏÀ½¼¿±ÁÊǺ½ª±²§¥¢¤wntdl`^fqa[W`GHHGIMTG?J=64355=<48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥³±¬ÉÍÊÈľ½ºÍÍÇÐÕÖÙÚÛØÐÊÐÐÒÔÊź¾¾°¨·«¾¹¸³¥~
t`[^^^`^`cdc_]]^_``_[Z\akrrookloo}¸ÑÈÉÊÏËÍĺÀû»ºº¾ÈÆÂÃÀÃÇÊÉÈÊÇÁÅÌÆÈËÍÉÄÂËÉÂÂËÐÄËÈ¿¹Á»Åǽ¿ÆÏËÿûÉÆÈ»ÈÆÄÊÀ½ÁËÆÅľż¼¿ÃÄËÅżÀÉÂÅÇÒÅÀÈ¿ÊÊÆÈÆÐÃÃÆïÄËÇÄÊ·¿¼º´©¬¥¥¬£¡¥£ {vstfj[anmZ[XQDLFBGDLDFS@54334?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ËÏÑÌÇÂÃÇÍÏÏÍÖÐÖÙØÙÐÍÔÎÏÐËĸÆÁ¶µ¼±À¶º{
vxurp_Z[]`abcdded`\\]]_^`[YZ\borokilposƼÉÅÌÀƱ¶º²²³²±Â¼¼»¹¸ÀÁÁž½¹½¿¹ÄÊÅƽÆÀ¸»ÄÉ¿ÂÉ»·»ºÅþ¼ÁÍÂƾ¾µÁ½Ãº¼Æ»Â¹³¼Åö¿µµ¾¿ºËüµºÈº¿½ËÄÁÅÂÆÈÆÈÆÐÆÂÌȲÇÊÃÎÍÁÅÃÀ½³·°³¨¨¨¹±¥°«¬yvwjeh`hocV^YJEJFHKAFBEI@9:648853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÆÂÄÈÎÒËÊÊÇÍÎÏÒÉÑÇÖÕÖØÎÌÐÈÍÈÊžÊÁ²µº·º¶¯
y~|tud\\]^``bcbbeeb]][\^\^]Z[]]hsqmggnpry½ÌÀúÁ¸®°°§ª¬§¸´·´³²³ºµ½±·°µ¯²»Â¼Áļ¿»µ³»¾À¸Ç¹´»¶À¼¸½ÆÁüµ®²¶º¾´Å·»µ«¸¼½À½°º¶¯¶º²Å¼¶¯»¿´¶´Å½¾ÃÅÀÃÅÆÈËÆÀÆÆ»ÈË¿ÏÊÇÃÆÂ÷þ½¶¹¾Ç¿¬µºµ·¶xtxggebkn^V^`FKHHJFBCAEE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÎÈÆÉÎÌÐÍÎÉËÉËÊËÆÑÏÓÑÏÈÊÆÊÆÄÀ½Ï½³¸½¹·¶{y~wx}th^]]]_`_`da^cec__\[^\]^Z[[]_lpnhfjnnr|¤Ç¿¸¸µ°«¬§¢ª§«¬³©«©³¶°²©®¦¬²¼º¶Ã¹ºº±«µ¹»´Âº°¿±½½»¶¼È¹Ã·ª¨°²À¶¸¼¯°§±³´»¼«µ¦®¶®º±°ª¹¯»®»¸»¿¿½¹Â¿ÇÃÅÁ¼ÆÁÈ˸ÅÇÅ¿ÇÄúÄÆ»ÆÉÌ˳¹Â¼º²rvvkiablhYXW[ALKMIEAC?FA:9:995854::9;<=;:;>8;@<=9:79>9;<:8;;:>=9A=?@?<>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÆÎÒÌÄÆÁÅÐÈÏÃÄÇÁÆÆÅÅÌÃÊÌÂÄÁÇÀº¼»Ê·´»½µµ«|y~
z{wn^]]]]_`__dbbccb`_^[[ZZ]ZZYZ]enohfgiknr¹°µ®¦¥§§ ¤ ¥«®£§¢«ª¬ª°£¦ªµ¶±½¹¯·¯¨®¸´´¼¸³¼¯¸¹µ²¼Á²Á®¥©¢«±²³¨¼ª«¨«¬´´¦¨®¡¤¯©²¥§¨®¥¨·¬°²·¹º»±¼½¾¾Ä¿µÁÁÇÈ·¿ÀÅ·Ä¿»¿ÄþÄÈÌÊ¿¾ÃÀÀ©rtrji]aodWVXPHZRSKFFE>?@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·ºÄ°¶°ª©°±³µ½¯ÆÑÐÍÄÈ»»ÌÃÌÀ½Ê¸¿ÅÀ¼ÌºÃÆź¼Ã½¹·½Å¸µ¸»®²{~~xt|swf_]\\^_`^_ccab``_^]\ZXY[[YXZ\_fkfegehkor
ª¥¬¦ ¡¥¤¡£ª£¢¥¥§¥¬ ¤¦¬²¯¶·§°¬§ª´«´¹°¶´¶¹²°º¹±·¤£¦±§«¨¹ª¤§§¨§² §¦¤¦¬§¤ ±¬²´²´°µ¼¶»ÁÁ²º¾ÃÁ²¹ºÂ³À½¿µ¸»½¾¼ÂÇÄÂÿ¿Ä wpkaf_ko`UY_HNhOTHEJF<=@=:;;825536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:7676778666;::;9:;<859<:>>@;ȵ¶½¸ºÁ»¾µ ¡¦º¶«³³»³ÅÐÉÌÃǹ¸ÉÂÎÁºË¹½È»·Ç»¶ÃƳ½Å»¶¯¸¿»°²¶°¢}yvtomkjjqi_`]\\]_`_acb````]\[\\XYXXXVX[]^dcbegggjmo© ¡¢¡¢¦£¥¡§¢ª°±µ¢©ª©«¬¤µ¸·¯¬³µ®³µ®°ª£¢²¤¦©¸¢¦¦¨¬« ¥£¯©«§ª«¬°²¸¯¸¹»°¶»»º«²²¹²½´¶±±µ´¿µ½À½ÃÁº»½zrk_e^ddXTX^IW]KPGIJFA<??@;?<04535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÐÉÉÁǼ¼ÅÅÐÀ¼ÊººÂ»µÅ¸µÀÁ³Áû¬©´¹·§°³©ysnpnkb^bff]]^]]]\]_`abccba_\[[Z[YXWWWWXXX[^bddeffhikr¨¡¡¡¨¥¦¡¥ ®®² ¥¢«§¡µ°±±¬¨¯³§º³¦¶¡¢£¡£¡©µª¢£¦¥¦£¬¡«¦£¤¦«³³ª´°²ª²¹´¯©¯²²²·³®©¬®±·°º¶¹½¿·²±
yue_e^[YVSZUK[QLIEHKIB=?AA@@:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ¸½¿¶¾½¿³¥£¥±Âµ¶½´¸ÃÍÉÈÁƸÂÁÈйÃÇÀ¶¼½¶Ãº¶¿Àµº¾º©¦°º°§±¯}
ypqtqhfdiec\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXXVWadecdeddhjv¢¡¡¡¨£©ª¦¯°«££·ª ®¨¶©¦§°¤·°¤· ¢ª¦¡¬¸°¢¡¤¡ ¡©©£¡£ªª°®¨´«ª¦²°¥ª®²±¯°®¯¦§§²®±´¯¼´¹·®£yud^aVYWSRTKM^LPKGGLKE<@><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾¸¼®§§£ª»À½À¹®´¸ÂÍÈÇÄžǺÊ͵ÄÅű¿¿¹ÀÁ¹¿À¹¹¼·§¦°»¥¨ ¤~xrjlrtpihedgb\\ZYZ\\\]^]\[\^\[\Y[\ZXVWWVWXWWWU[ccbbcbcdfj ¦¥¤¦§¤ª¯¦¢£¶¨ ¡¢¨³¡¥§¤¯¥±¬µ ©¡¢¬±±¢¢¡¦¦¡¢£¥¥«¤¥°§¥£««¥¨®¯®«¨ª©³¥¦«¯´±®¼µ±¯¯ zvrda\[]XNLQGRaMWPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8846863321./2556;:8;7876<;:;;A8x»»±µ½°»²·¬¤§·»¼Áź±¹µÅÊËÁÄÇÇɸÈƵÅÂɯº¼Â»ÂÀÁ½»·¹µ¥¦±µ¡wodbgihfhjgjm`]\[ZZYZ\]\[\^_\ZY[YYZ[WUXWTTWUSTRU``_`a_`acdi£ ¥¡¥¤¤¢£¡ªª¥¥±© ¤ª§¡¬©¨®¢¡¢£«©°¢¡¢¤ ¡ ¡¤¦£«¥¢¤ª£«®¤®±©¦¥¦¦´¦©¨³µ´¹º¯ª¬rpo`[WVUQFQOHZ\ORJTKSLEGIC8;;=<8667:9;:976977:;:=<<7;<8>598:88659:;<97?<9678452121..1426:86:8598989;9@9{µ´´»²°¬²§§¯¹¹³ÀȺµÀ¯ÆÉλÂËÍÉ·Ë¿´ÀÇÌ°¶½Ç»ÁÇý¾¶¹´¤ª¯®|uijjmhjlnkkme]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\]^^___bdm¢ §¨ª¨ª¦¨¥£¤®¤¥¯© ®ª³¥¦££¡¨ª ¡ ¡ £¢ ¢ ¢¨£¢¨« «¯¤·¥££¢¬ª¨«¯³¸²½µ³«¯ssh[YYRURFYLP\YMTNPLPRINIB<??A?<65799<<987:79:;<=>;7;;:=57:;8976989:6:=99577571141-+/434988::8::748=8?9~³®¨³¶®©¨¯©¨¬·¶¬¼Ê»¶¿¬ÌÇƹÂÏÐɵƾº¾Æ˵±½Ä¼ÂÄýÀ²¸®¥ª®ªwxoninnnqggigd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUTSNPQYZZZ]]\^_`d~¢ ª©¦ª§¯£§¬ ¤¨§®§ª¥¡§«¥ £ ¢¥¥§¨¨ ±°¦°¼§ £¬´«®§°´°¹µÀ±±«}qrbVTUNRIGVQSRLLXMJLNRGMKACFDC>@75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8³¦±·ª¦¢°«ª§©²±¤¶Æ´¹º³Ëƺ¼ÃËÑ̳¹º¾ÀÄǶ´·½²º»Ã½Á°³°¯ª¢khnoroqkpkdfge^ZYZYZZZ[ZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajzu¨ª¥¤ª§ ¥¢
£¢¢¤§¡¡¢¥¤¦¨¦¡ ´²§²·¡¢·¬ª¤²²¦µ¼µ««±£xrm]NPQLOCMNNPKFNNJJNMQIMJAGKHHC>858889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12776:999984988A7w¶§¤¶°¤§¤©¥ ©¥¤³ª¢²Ãµµ²³ÇǸ»ÄÊÍǵ¯¼¿¸¼Ä³³®¶¢¬´Ã¹º©«³®®§}^`gsqvqjnifhhj_XYXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQNMKLSWWVXXYX[]aosvq
¢¡£¤¡s}
{¢~~tz¢£ ¡¤£¢´¯¬¯¬¥¹¦¥°¡°®°»ª©¯ªvrcVMROPMCSNLQMCPPHINSMHJJDJLFKK=749888;;69;7:<9::;79?9>@79:<89764445874312485/0102)(,-12764789::65:87A7w·¢£´¨¥¥¨£¦¥¦¦¦³§¥´Á¸¯´°ÊƹºÂÏÇ¿µ¯½Ã¯±Ç²§«¤®¿·°¯¦¬¬ª¢rWV_hgihincjhgb\XXXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTQMMJHNSSSTUUWY[]ilrm
|tNXr_;Wo{
syz
}xro
~¡ §¯©©¨´¢¦¬«§´¢©£}rm_[NSRVLDTJPMLFOOIELQMKPJIMPFIH=7599999:7:;:>>8:==6:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9x· £®¡¦¦ª §©§¢©°¨§´Áº±µ°Éù´¿ÏÀº±±¸Ä«®É®§£¢¹¬¦§¥¤£ iQMRVZZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`moi{tPB@}x`JQnx|n~wuvxpQ|~xvhw
~¤£¨©¥£°«¡¤¤¦ª¡ª¢¦¨tle^[HQQRMIUMSILLPIHFKNLMTKQQOFIC<769:8:;;8:;8>?99>=7;<6;;478;6775344696/3/.115221/,')+*,4833979:99::::?9v¶£§¡®¡§¨¥§¨¯ª¶¼¶¸·³Â¼·¨ºÉ¹·©ª·¸¶Àª¢±¡eMLNNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZntw~ji]Ut{
{uxsnupty}ª
yzhv{prmxxz{vsrwguz{© ©¥§¤ ¤qg`\\JVOQGKXROJMMRJJJMPHLQLRTMEHA<77;99>=:;<98@?::>=7==79937795675252572/2.,./200/-+(().1272198798775:<<7v®£¡³©¯©¥¬¬°±ª½´²¼¸¶ºµ² ·»³««¬µ³¥£fJIJIGFHHPTTTWWSTUUUVWWWXXXXXYXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQRSV^u}ygw}gyvx|r|v{ok~|s{}tfv|
lohs|lyq}pmuqhq}pC
~wwz
}zu~£¢¤vmlebZXXTQJSUTOPNQVKNKNOJQOIOOKFD<;79;::?=9<:99??;8<=7<9999266856633621224.,,-..-0-+*''*.1362/876966527995y¦ ¦¯¬®«¨©±¯±¬¼¸¬»¾¹³¨±¨§¬§¤~|z
eJGHFB@CDILLMQRPQSUTTUVWWWXWYYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNPQTX^eprm§ªÀ~uyb{xo|yy|
omxsxjjr}Jnhw~licly
ksl|nr{hmp~s
z}~{vott
ywp|~mhmnnWUWTQQZOSUUTXUMNHMJMNKCINGE@:89;99:><9<;::=>:8:;9?868727575541442/024*+**-.+-*(*(',-1250,5567485HA895w¤¯¢¬ª¨µ¯®¬´¿«¼Â¿¦£¥
¢¤v~
|x~t}xuw|fOEGD@<>>AFGGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jrAo;<95<_IMOORWZRY\`§bitze~pmzutlts{jkLyg1vsl~}tfet~
filukp|gpp{n{s}|qpnum~wytiyyuiingdWQYWXY[MPUVZYNIIEJJHGBAFDCG=998;9:9<:9;:::@<9:<98>787715244533645031.**+),,++)(+'),,226,+5775478iO8;5n¤¨²¦º®«²°Ã²»ÃÇz
twvwvywoxsiUFID?<;9:?@ADDEGJLOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOPQVLAIQIb¯³ q|xm}mq
yyr txsu5q¨¡¡¢vp||shfbinrmpuioXuovlz|mqmpzsumbv
ux~}yponj^Z\][YX`_SN[[YXLHJFJG?CABG?CD=;97=;:;;9:99;:?<88=:8;66651121353475531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥µ©±®Á³»ÁÆ}nv
oy{{r|t|ko^JPG>@7458;;<=>@BEILLLMNPQRUUVWXYXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~lv|}
~v¢y~
aªzv~s{\dqtz{wlgiaxo
znwszpsywkni]w}|}q|uw{}tnqref^[Z]S[f^WQUY]VGKKELG?F@DC?AA=:97<;;=<::99;;=>79>9986754244004645654-,)+('''&(())((+++/00Uq<23331E~W4=9\w¦ « ±©¯À²»Æºzvk~
yu¢s}lylSXLAE311266688:<?BEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRKi{y{q|{|~v¡¥¬©H°¯©sl|}hggx~n
qGkwqyvhmk_w}
z{uv|wmow~~rqpj[\\[cbXge\UPQXZQDLLGOIDFCCA@CA=988:::;;:888::?>6;>7595773344236756768;DFLMMLC7+"&'+)+++/00+nu22420L\5=<^t|~
¡¬¡¦¸¯³½´}tp~}¥yuy_cWLC60./23123668:=??BEGHJLNQTTUTTVUSQOGC?80,#[>?94.]ps£UFIKMNPW`YpZ\_j
~
¡¥»±§»Çç¡¥|r~v
ihotqw{v
}nvug¢«£{zzogkx}x|qic]ZY]i\af_ZOLNXSQIQKDNGCKDCADDA<:87=<:<:88778:==8<=68756623445576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nvpgx{¤¡¬¦«¯°¡xw}~mpj^CA4--////02234779;=?BDHJOQRSRSTTRPOHDB<87/9C><<63.lMPHIKKKNV`cggnu ¡£©¥£¬¨¶¢¨Áîȯxº|¡
¡
lpuvql
r¡¥¶©¢~kjk}~~q_[b^Yfj\lk_XKHOSQNMLFIQDDNFBCEGB>997=<:;:987767;:6=:785456345566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYppuqv~§ ªhf¤~
z}
xxhNR>//.,/.-/000212457;?CFNPRTPQRSQNPIED>;<:CF?><852<?R5HHHLLMNR^o|s} §¦¢¡¢¨©«¨¬©ªµ«¿«¶ÈÉ·ÉÑϾ pi«©
¡§¢wz~¡{v«³ }¤£§¶°¨lss|}znf^[_^agd`gg\REKKQOIJMFFMCHMFFCBGDA:85<<899975658>75=84745754546958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f3A@ib^Pqu`n}aw}|ªªBD}y|
w_bP460-1/,.00./..0015>AAMQRSPRSUSNSLEE@<>=FH@A@8662<9;FHGIIMOQYmw£§ªµ½¸¥®¬¬¨©µ¬±·²²»±³¾³Ä¬»É˸Ŀ·¥£°²¬ª£
¦¦ ¢¦¢ª¨¤
£ ª ¤©±£§·»¡£°££¤¢«°³µ¢¦ªz{~|e^fZc`]bc^fg_[ODJHTOFILFKGFFHAKFCFFA;87=<88:974658<54<76:54644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicXjpXz
v
ÚÈsV|{
qna@E64<3/110-,+-1/-4?DANVQRTUUWUM\QGGD<>>FHCD@8;<5C;=FKIGHROPW ®£³ª²ÁÇÄ«³Å¶´À³¸¾¶¿´Á¶»»¤¸Æ©¶ÉǶ¾¹´¨£´°±§¯ª¤w¤¡«±³©¨®µ»²º¬¯µ¢±¬²µ¼¸´®µ ¨¨£¨©°³º¸¸¨¸©¥ ysX_bUd``b__f`[UJDELVQIJKEJHEA@@KDBMF<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AEWQJL\ZQbdWzuq}v~{¿»£¼´z
zyn]W@EN<6:46AB764//6CHCQ\OQUWU]WP_UIKJA@?GKFFD;>@7D7?BJJEGWTP^¤®¤²´Ã¶¸ÁÌʶ»Ä½³´Á·¸Âµ¿°¸t±´¦ºÅ¤°Æ¹±³²´¨¤¶¶ª± ¢¢¥±¥¬§¤ ¬³º¢¨²¹µ»¾Ì¿ÅŽ½³Â·º·¿¸º¸º±¦±ª®¾°½¼Ã컨®«~zhU`_VhcidV[cYVTIHGLQGDIJAID>?BBK@@MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALRWTYVZwjp
o{rxb¹¡£{{||}xzufO\dGEL:Qd`[^SF?;HPDZcQQYYZgZT`aMSOEA?IJHEFA@C=E6B?HGKMSZT^¯¸µ»¹ÉÀ»½Êͼ½Á¼¸¶¼¼·¾µº³Æau²¥±«¾ª¥¨«ª¤¢²µ «¨®¥§§¥¤¢§°³¨²²¼¶Á½ÓÉÉÓÆÂÅÌÂÊÄÀ¾¾À¼¼¸´°¹··ÃºÆ¾ÄÉ°º«¢¬¥©·|o]__]U_]heSYaVRVIEFNKA>HE=KB=B@=F>;H@796379>489:57045/26389374526?8@>GKRTTRPOQRQJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@JMPRLQ]hmlqslrrtÕÀµ }y{{yt}zkepvY]\Peeb`ed][XX\MdmURmn_o_XgeUYUKDBKKHFHHHHBI9D@HKTTV]Z\¹À¹¾¸ÆÁ»¹ÊË»·º¶¹¹´¸µµ®¶·du©p^¢¡¢¤«¥¨¦¤¬¤ª±·°¼¸ÔÐÎÖÏÉÌÒÌÏÎÊÇÀ¿ÂʾÁ½ÂÀÅÄÆÊÀÉÏ´¤¼±µ°¬¹½}vi[^ZX[^XbbQ[`SQKCBFGE<@F?BIB@D=:E>=J?47535;=468977022/24169775555D3ELM>510006:477@IOJ;.&**(-.0,@M+/54mI0Ht?>BD@CDGKODR\Zi`onlotu³¬¡¡
|s{
{tt{ylmu|iseilhfjii`fiimZmt¤½g[oh^ZYTHKOPJKQLTQHLAJGKP__bgjb·Ç°º´»¾¶±ÅǶ°¹±±»³±¨«¸¶¨§N §¥¡¦¬°¨¯§³³ÓÔÔÖÑËÏÓÔÎÓÏÌÆÃÊпÊÉËÉÒÈÍÎÃÐÒ¸°Ä½Äº¦·»Ä¢laZ[\W^VXdYO\WNQCBIECI<AD>BH?@B8;D>@I=56655;:687654/10146278875367C5B8?-0,1348=97,.,1;FL=),(.0007K?-46TW0DwC;B>EBACJM?UYSfWshroyy¡ª¦}
|p{r~qyulpxr{nxslipmcinpyiw}~Ë¿Ãߧncxod[a`KPRUNY_P^]NQNTQUT\nnwr®¸¬µ¨°¶«½Á²«µ¦¥¹¨¬¯¡¬´¤±®§«¬¤§¢¬¬ÎÒÕÑÍÌÒÓÓÐÔÑÎÈÃÔÑÈÎÒÓÓ×ÍÒÑÅÒÖÆÁÏÈÈ鿸Ðwlc[`[U^Q\ZOOTPNH>AGBCF=AB?FE>@?:===<JB45465<888664412/03526768533;=<E=@11+/349?5901022-2EO3)/3.32=N248C}_2AtD:==I>@CFH<VRMO[uwlwp}~ ¡
y
{r~z
v
owsls}|w|sxqkrriprzys{¾Ë²vr
wiaj]CZZ[WfdXekTX]]`c^cx{ª¤¤¢ ¡©¦ª±¹«¦´£¢®¢¤®¢§±¦k¢~¬§°¢ ¡¥¤¨ÈÍÏÇÂËÐÓÑÔÒÎÓÍÆÖÓÍÔØÖÖØÕ×ÕÊÔÚÍÊØÖÑËÄÃÌpm`^]VRWRZOJGJIJ@;:;EBD=CD>HC?CB;<9<:GC46544<5687543250/2546745544<>=E?A62/-16;=081/254/-.;R017/532ED28>nb5=tM99@I<AD?A;PLFKYpu~isyr
x~xs|}w{oxqmuvx}t|ylvun}v
vy{µ<AÆ¥~}jeWICecfchjdoy[_fhknin £¤¦²¤¥³ ¢¥¡©¡¢±~
zª£}ª³§¦½ÃŹ¶ÅÍÑÐÒÐËÒËÉÔÏÑÕÚ××ØÔÙØÍØÛÎÉÚÚÒÖ¿ÌÍ´utlb[WQSPXUEFJIEE=:7:@BC:HE@EDBDA;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?2*(.BT29254/7K75<`bA<svV87AH:?C><9QECJTlnopbqqt}~
}x
zyq{{
uzzp}ppzr{rnzuw}}u|°tYªÂ·qnc=^hrpqpnxweiorvxr{ « ¡¬¢ ¦¬
}
~ly{®«¦®µ¼©½ÆËÈÉËËÏÉÄÒÊÔ×Ø×Ø×ÔÛ×ÓÙÛÖÏÛÚÒÖÉÕÌuxfeXWNQR\GBEII>A>=8:>@<>H=@BAAEA>?:87DB755479.566435532323647553458EBDCEB56<FNSM[nfcnsk`V>,4LG865433BF4=W_hLux^8;?F<<B<:9D?CGRk_mdbflvqy~
|}~wyn{{tz¡vvtu~too
u|
zv|¸Æ¥ÃʸxpfNec{w¢yzw{|um¦ £«
{|¡¼¡¨¦¥§µ¾À¿¸ÆÉÍÎÅÍÊÑÖÕÔÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÛÆvvdfa]RUUTMKDMD;=<<9:<?9=A7>?@=?>=9867CA6455=80665547745613854564567HH=DJE7925;H>;9:7HP\ZRUXK9T>;95327I8=NYMHxxd5=>C=<@:6:>>@EQ_Yfa]\itzylwvz|~~
{~
z
|v~um}}~t|~x~yot}
|~{©Ã ½¤~}ss¦
{iGq¡¤
¡¦
¥¸¡¦ £®¶º´«ÀÆÊÐÈÇÍÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Û¶vutgfbT]YROOHCLC==>99;:99<=6@>?==9::;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWO<MTHN?96333>C;[X>5YypZ<<A<=>8589?<DRSRX_VXfmmmiqsx{{||{}|~uzszsm~
~w¡n©
{ |~£¢¤¯ Wr«[¢£¢
¥
³¡ §±¸¬¤½ÂÇÍÈÆÏÌÐÌÎ×ÏÑÔ®ÖÕØÚØÚÚ×ÖÙÚlyqccZZVQUWC@ID??>:49:;7:;:3<<?=>7;9:1:G=:27=@50677255?65;55858:57735HR7GOK994=EJB>1FCLA98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcbxlb~omwxz{}||w
sp
{uwvt
}¦¢¦¢¨r²¨
£ ¢©° o·ÄȲ¢¦±d¤ÍÇ
ª¤¢
¥¨¡¢²´¥£¼Á¾ÇÆÅÉÈÉÂÊÓÌÍÔ¨ÒÑÖÖÖØÚÔÓÚÎo{d`[\[MISYBAGD;B>837<<:8>64::<:72?:929I:>67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF>;88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBcGv}|m~xz~{wv|mn{}xx|
~¢³§£«³¢§¥¤®¢¸³¢¡¥°£¤§¨¬¯¤¡À£É¸«£¦²
¨¢
u³¥¡} ±®¢¤·¾´ÅÇĽÃÃÀÆÍÊÉÓ¦ÎÌÓÒÑÖØÓÐغovrY^S^TNHIMEBCD5>:77:?<<7=42669774>5;5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=88567=:JFDGMZ\YJf`;Hzzn
z|x~px|~}orz~|x¦»¨²½°¥³³¨£¡°¬µ£¸¥¥©¸§¤£©ª¤®°ª »»®Ê¡j·¸«°£¬¾£^ª²|}´«¡¡ ¥¯¨¡¥³¸¬ÂÈĶº½¼ÅÇÇÂÑ ÆÉÍÍÅ×ÖÑËÓmweYWP\PNEC><CAB8@885?G==6<35345454B49:BM:B;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPdHb`bpJ@~s}un}|}pww|ªÂÀ¯½Æ»³´À½´«³¶¨³½«»¥¨º¸«§¦¢¢¤£©¯²±«¤¢¦¦¤º¯©À¼®²¹¥¤¨~½°z¨±¬¡¤¬¡¡§¦¤¢¤°³§ÁÆï°º·ÅÄÿͦÇÄÇĽÖÐÍÄÊ
qp_YW\XLJAKAFG?A@C;:4>A==5=6>343241A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUO79GD?CF\eF`igZ]\{uo~{q~{z§³ÆÉ¿ÂÌÂùǽ»¯«¹»³·º²À®¥Á¤«°¼½ª®«££§«®´°ª ª¡°µ¨£ºº¶Á¼¬©³¥¤¨
©Ääy¡¦ ¯«¡ ² ¤ ¥¤¦¦¤¯®¦ÀÄ¶Éþ¶Ï²Ä¿Ä¼³ÑÊÈ´rvjZUYgPLHBLKLJAA>DD<5AE;;3=8B332263A05IEN>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBeZMe\fTbkyr{xz¡¨º½ÇÈÉÁÒÉÊÂͽ³¼¾¨»À½»Ã·¬Á©¬³¼¾ª°ª¤¥¤¬®³¶µ ¯¥¢£³½©¨½Á¤¶¸°¬²¬¬¬©¦¥¥uy
££ª¥|£¡µ¥¥£¢¥¦¤£©§¢²¬¨¼À拾·Ì¿¹¯Ä³»¾Á¸¬ÂÃÂÀjw_VUYXJJLIFDDHCCADL:4DI:;4<8E.12352B25SHN<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQG7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>iH_XbZccV x
¡®§¤Â½ÇÃÇÅÓÍÎÍ˼·°º¼´½Ë¼ÃÁ¶·¼³¿º½®¯¨ ©¨¶®©²·£¨¡«·¸ª¥°¿Å²¾º´¨«¶´®®¥¬¨²Å§||ª¤¡£¢Z¤e£²¥¡««©§¦¡¤¨¥¶«ªº»Ã´¥´µËÀ¸ª¶«²»¸®¨¸º½¸hkXUSSMEIRMK?AHEEHHH95EM;>8=@J.32025C55OVN<LFKRLOHGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|gV;>@BFBpEjIReaLF¥¢©¦¢¯¾¯¡Ç¼ÄÄÇÆÎÎÎÒʾ»¶±º»¼¾ÏµÃ½¸¹·³±µ³¸³«§«¬¹ª©§¯¯£¯¥§¤¥µÀ±¬¬´¿ÃºÀº´¨º¶¹´¯¥®®¤¡tÂ}±¥£ ©¡ `J¥U° ¯¤®®«¥ ¥ §¢´©ª³»»»ª±²ÇÀ¹¦¬«²²£¡²²´¤mkcZWMOJDOOPR;GKIGICC>:KU?A:=EM07534:B44MWO<JKOUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@BAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}hW;:BC@=QEWSsbWFHª ¢¨°¨
¡£¥µÉµ©ÆºÂÃÈÊÉÈÌÍÆ¿»³®¹¹ÁÁ̵ǺÁ¹µº°¯¯³µ§¤ª´µª©¦¬¤®¥¤¨¬»¿¨¬¶·¿Á¿¾¹´³Ä²¹¾£¯µ¬¹¦¦v¿®¡ ¡¨¨ª¡§nv¢¢®²£ª¨ªª££¤¨¢±§©«¹¶½²²®¾¹¶ £§¨¥¦©©`c_^OJKFGMJVL=MENKLBCD<QV=AABDO18=77?B75UXO?HNQYSPQUKQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=.-R`MUH~e^HE«¡»¯««¡££¤¶Æ¾´ÀºÂÂÇÉÅÂÎȾ¹²¯¹µÁÂʵŲÁ¼µºª¨°££ª´»¦©¦«ª©¯§£ª«½¼¨½µ¸¾Ç¼·¶¸Á²¾Á´ªµ·«¾¥£¢ ½ ·©¥¢¡¨¤³ ¦¨ª¤¢¢ µ¯¥¤¯«ªª££¨©¤¡¡³´º´¨µ²³£¥ª¡u]Z^\IGEFMQIMEGGBSLJBEGAVSCH=AGQ1;B7:BF79\YKALPTUSMWRNUJE@JJNO9C@5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-19f\FCCpbGE§¤Ã¥ªª§¦¬¢«¶Ä¼¾·ÁÂÀÇÄ¿ÍÆ»½¹²°¹³¿Ãȵ¿°¼¶¹¶¦¤«¬¡¡ª«Å¢¤©«¦¬¯«¢©©¾¸§¿²¸·Ç¶µ¹¸À³À¸µ³´¯¾££®¢£¥££½¤©¨¬¡¥½¡£¢©¬¡¤ µ¬¥±§®¦© ¥¤«±µ±ª¥ª®¬ ¨e_W`\NHGJNLHEDIA>QIA<GIH\ROK=HOU4BF9>HG5Ca[KBNRUWVQXTRUI@8RQPM:GA4CHQSIC;C>GVKC@O>K<06;GF>;FA46@9:?9;15D0-,/Mv\4KZ5,MnW<-=)#zbQ5CKQ9mRF<KxeaVK¢£Å¬¡¬® £¤ ¦©¬¶±¢ª³¶ÅĽ¿µ¿Â»È¿Êǵ¸µ´±³´·ÁŶ¾±¸µ¹´§¬ª¬¥¤Á¥ª® ¥©¯¢¦¨½µ¦±½¹·¶Ä³´¸º¿´ÄÁ¹¹®³µµ£¥¡® ¢¨¨«£Â¬©¬®¦ ½¡¤«¬¬¦¢W¥¡ ¸ª¦µ£± ®¢¤¦²ª©¢¢¥¥¤_bXb_KHJJNFEAGK?=JB99JJN]QQI=LV\9FI=DMI8Hb\LCLPSYYVWOZ^IA=WQIK?H?5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWrGE6=ue\KM¡Ä¨¥¢´¢³¨«¥ £¬©¬»°¨¬¶±ÇÅÁ²ÂýÆĽÄɼ¯°¶°´¯¿Ä´¹±°¹´¬¨±©ª¥¡§Â¬±ª£®±©¤¨½¶§·»¾¯·Ä´³ÃÀ´Ç´»¸¬´¶ª¢¦¤¬¢ §«°¯¯»²¦ ©©¢£¸ ¡£¯°¬¥§¡¢§³¦¦³¢¬¡¡¦«¯¤¦¢
_dZfdJHLJSBC@IH;;F?99OMU^RSJ>O^]=HPBLLI9Mc\LELRTY[SUO\bHA?ZQAHAKB7FELKM?;BHDNB=;N@A3/97CB97F;+6<46<25-/4@1+'VtSeO?104b[M23>0<v]^?[T^eq@8;HweA4£ 餪³¢¤µª³§¡¤²¬®©»²±µ´ÆÀÄõÀľÉĵ¿È´«µ¨°¹¬¿Ä³·®¬¶¹¥ª²«ª¦»´¨° ®´²§«¹³¨º´¹³¹Àª·²Ä¾µÇ¨¿¯®¶µ©§¬¡¦¥¢¢¥¯¸®²µ¶ ¨¤¤ ·¢¥¥¯²²§ª¦¢¨ ¡®²¢¦®¤«£
¨©ª¡§¡
wbg\jiMONNT>CANC;:I?77RO]_RVQAW`\BJSHVKH:Td\NFON[W[RPQX]GAB[PBG>NC9HGHOP??CIBLB<2IA94177B>;7E7+6914801-/.<6-#Bqgsk23/1[bZ33806p[bH05IohUCWFyfC;¤£¢¦¿§§¯±¡©¶«º±¬£«´¶±°¹·°·¸¸Ä½Ãǽ½ÄÂÆÀ¸ÀÅÀº©¶¤¬»Á··©¬±º¢±²¤§ª¹ª¦±« °´³ª©¶¶½´³¹¸¹±Ã»¿¿¦Ä«±·¯©««§«¡¢¡¢±¯³¬°¹© § ¶©¦£¢±±´¬³¨¬ ¥¢£³°¥¨¢©¨¦£
}igk`lmWPQ[UABET@<;IA7:XPd^PWWEY_^MLRN^KJ>Zc^NHPO\UYPKTWZI?DXPDF?N@=IGGQPB=DFBM?:1D?77547?=95E4+75/261--.,1=*'+=\p=>1.0dZd@1647gY`F(?8l}g[V;{cC=¨¢ª½¢ª°¬¤²¸ª¦¶µ¬ µ½¯³¸»º¾·¶À¿ÈĹÅÂÀ¿¸Ä½Á·¯µ§«·²¼¾¾´¨®±¶«®¨®¦¨§»¥¬³¬¢±°³¬ª¶´µ¾®°±µ¬°´³Á»Æ·¬½°±¸¬ª£²¦¥ª¤ ³ª³«ª³§¡¦¤´®¨¡®®±¨´²ª¤¨¤¢¨µ©«¦¥£
{dkqgoq^FYfVDBMXDZ9HB6>\Qh\OY]G[^]OMRXdJJC\b_PKMNXWXPJVVWL=EUJEDAM@AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,,%2+*5K1/'__`U150=`V^8)C3YU\gK6zfL@¤¡¥·¥ª¦¯®·ª¯µ»§¦±·Å·±¶½ÁµµºÄ¾ÌƹÃÀ¹¾¹Ã¸À¹²´«©º¶º¹¾´ª°µ§¬ª¬«««¾¬®²£« ±³®®¶²¹¸ª®¯±¨µ¯µ¼½Ê³ª·µ±´¯®§¡´ ¨ ¦²¢ ¦¯¡¤£¥¨³©¡¦³¬«¶¥¯²µ¯¤¬§«·£¡ª¥¢¢ z
{jmwmu{aE`kYIHZZ={JFD6AbTi[M\aK\]ZRRRb`LKE_``QLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T_T_/5(C_Q\.+B/JGP[G3cYTKD¡±©²ª¦¤¯®¶©·µº¤¬´·É»´»º¿¿´³·ÃÀÌȼü¶½¿¿·¿¼±½§º¹·¶Â¶«¬±·§®«¨£°ª¯»¤±³§¨£²´±²±µ±¸´©¯¬²§·¯·´ÄÆ·©¶¶¬°©¨£¶ §±¡¤±§ ª©£¦¦¥¸§£²µ¬¨²§®±¶¬¥ ¬¨©¸¢¥ §¤ v{lovt{~\Kem\JNd\?b{GI8GgWe\L^cMXYWUWTi]OOH`]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANGf27'GbLV%-B.=ELQ<3rkICC¥¯¥®¯«¨¥±³´«·²¸¡«µ¹É¹Á»Â¸³±µÂÂÎÅÀÁ½´½¿¿º¾¼²Ä§©¹°¶¶¿¼®«³± §±¦¦¯¥²µ«±²¬©¨µ»¬µ³µ´ª¬¨¬©¹®²±ÈÀ¹¥º°©¬¬¥¨®±¦¥£¯¤©¯££££¤ ¢«¦§¹¤¬µ¶¥«¬©°¶®¢£©ª ¤´¡ §v}
|{|prq}|}\Sdn^NYg\FD[G;NmXb[L`bNVWVWTXg]QRLcY[TKGOTSNGIVS\N;P^IBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/+1()+,-*&5*/&0)38:1&*3Bc:6*HeHJ+:H>3BHS,>k;GHª«¢ª±¥©¥³µ²µ¶²²¡«®½ÌºÀºÇ±´´ÂÃÒÅƾÀ²¾À»¾·»Ä§¬·¬²·¼À¯«±¬ £§ª¨¤°£ª²ª°¬°¯°®«³¼§·±²©³ª«¥¥£ºª²Ãº¶»©©§¬©¨²¦ª¤£®ª¨¢£¥¬¢§©¢¦¤«¸²²¡ª¢ ¬¯±¬ §§©£ ¦
¤~
|v~
rqpuk_Y`nbQsq\K;|F?WtXaZNd[NVVUWQ\a^SONgXWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*25>10485(5/*,.30;),,'%234$,2-860)(1;\J0.JgDF8;B05EKX1@Y=LE¨¢«³ªª°·¸¶¯«¦««½É¼°½¶Â¯±¬³ÄÃÎÏþ¿´ÀÂú¿³Èë®·²¸¾¾²«¤§ª°¨§¨±¥´®«±¯²±´¬´¼¤¸³¬¯¨«£°·«ª»·¥·¶¤©§««ª®¡©§¦±²¤§¥¡¡¬ª¡ ¦¥¢«¤£§±¸®®£¦£ª«®©¢¥¤¤
¢£}zs|ru¤xk^`nfWecN?gLEbyWbYReTMVUVTO\]aUKNhVVWIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*39?./463)4+*,+.#4.-+&(+79*&6+<-2,&06VZ.0JgAA<<B+:JO^4D=GFD±¦£¬±«ª¶¬¶²¬¦¬ª©¼ÀÀ·¸²»µ¦²¯ÄÉËÑ¿À»¹¿¾Á¹Á¹Àıµ±³ºÀ¾²°®¬ª«¨¶ª¦®¯ª¹°¨²²¯³·ª··§´·«¬¥©ª¤´³©¨¤´µ ·® ª¨ª¨«§ «¬©¹µ©ª©©¢ª ª¡ ¥¢¦£ª§´¯¨¦ª££¥§§ª¢¤£ ~
¢txt~yv~orggpw\askO^VHmxUdVQcOMVTUPOX[bUHOiTVSGPYUI>IHOQPxLMV=<KD?@A<@CUC9AK=5;E13;:7*4:=+-341*8**+*,))(/*&)%3;,$2)2021&/2Qb02?f=NX>C,>LT_/Ji5OD<±¢¦«¯¬¥°´µ°¬¦°ª¨º¾»À°®¹®¡¶°ÈÇÈÑÀ¾½»»Á½ºÂÀ¾¿®²²±µ¼»Â±±³«³©¤µ¨¥³³¹±£®¸²°²»«º°ª®¶«ªª¬£ ¶©¡°³¢µª¨§©£ª¡¢¬¨½¯¬®¢¨¨ ¬°¡¢ §§¨ª±ª£ ®¢¡£££¨¨¥}£wt|uxyyssyg¤vi_ektg}SXo^JxsSdTQ^MMRZfNLVYdXGRhRQ?BNQaQ:IHLSIqQLS;<I?;<=;@@W<<?H73CB15:93-5::)-31--5)(+-,42#2)',%.;.&1.0-14%,0Lg:48_=ad?F1CP[[*HM9U@4³¡¥§¬¤§¤§µ³²«¥±§ª¸¾À¼¯§¹ª¦¯±ÉÇÈÑü¿¾¸½¾¼ÈºÁ¸°¯´±º»¸À²²º¬¸¬¢´§§¬²¶¹³¨¨½¶®¶¾°½§®¬µ¬©¯£ ¥«¨«³¥´¨ª§©£©£©¨©½¬´°®ª¤¡®³£¤¥¥¥©«¦«¢¢¥¨©
~
~}
¢~r{z~|hx|ytop{gxdagarzmgx]^T?W{mTbPQXKLNru]HZ[gYEUePD>JODCA9HGKS?jbJQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11'/>KH0%90%,,09/,,+6'17#-0GjI14X=fcBJ7GS`U*=9DW=*² ª¦¥¡«¥¸³³¦©±¦¬¸Á½µ¯¢¸¨¨°ÂÉÉÌÁ¶½À´·¿ºÈµÂµ³²µ²¼·¹½µ¹µ¿ ³§««°µ¸µ¬¾½ª³Á´¼¡¯³µª¬°£¦©ª¤¥±§° «©§¡©¤¨¡¼¨®±®¡«£¤¯¦¡£¤«£¥¥ £¥¬{{}£}yk~vyxc|zpooqvgsjheg_lslaio`o=ZykU^OPQJIMTZWM]^lWDW_O^PHMDF;7HEKO<rhKK9AE;;==;;=J49B<3;G<4?18-68;2(09/,4/.=-*K>)49&'.34.0+/4&,:$41AhY13S>e_DL6KVdO*;1NW=#¡¨¥£¨¤¸°¯¤¯°©«¸Á¹³¹¯«¨´ºÈËÈ¿¶Â¾¯´½·Ä¶Ã²®¹²³¿´º½·¨¹¸½ª£´¨©ª±®º±ª¼½¥°Áµ¶¢¯¶µ§¦§°³¤¦¨¢¥¬¨© «®¦ ¦£¨ ±¹£±¯¡¬¡¤§¦©¤ª§¡ª¡©|~}| x
}
|sp}qtt`zxhmopnh}qc{mieb]e
~_ZsjqJIiXZNPLJHPRQIO\_nSDXZRhOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23.:;83&2<0,85B*)-B*,4;NN@;73-.+-7**<%53<fd24M?e]FO=QZgH*>/WU5(§¡¡¡¤¢¸ª±¥´´©¨¹Äµ³·®°´ÆÈÀ¶¾Á¹°´¼¶¾»¾¯«½°³¾°¼Ã¹¨»º·§§µ¨¨«±³±¨¿¸¦¼·²±·°¨¥§¯±¡¤ ¥¥ °§¡£¨¯¡¡¤¤¢·°¡¦±«¬£¯ª¤©¥§«¦¢¨¢z~zx
~zzprwoot_ywdkkkhgmerkkdhXas^ZluiYE}][XOOKHHRUG2:^^lPDWUYeMHJEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<#8R=*113>D5,-'42+;+139cl84HBg[HTCT]hE.;1^Q,2¤£ª¦¡£¡¸©®¡»¸¥¬½Ä³°®¢µ¯¯´ÄĽ³¾º·°³¹¸º¸º®¿³´¸¯¿Á·«½º´¥¢³«¨ª³¬®²£Ã·¦©··«³»ª§¦¨¯«¢§¤§¡³¦¥©©¡ ¥¤¹©¤§¦¥¡¨©¡¡¡¡¡£¬¢£§¤y|
}x
{w|lurmlsbythfigemgghdfhi^ebifYezb`PsT[[SKIGIOS@!+i^jLCVU^`KHGEC.:B<F<6KPD8:D357==895?:;4>8@L=>93)8><:9*6@3.E4(+,>0-N?.+-7-1195,&.5-80576`tB3CDh[KWGU`hB377aL'2¤¥¥§¤µ§ªº·§¬ÃÀ·¯¬¢µ®§®¯·ÁÀ½±Á·°®²¶µ¹¸µ¬ª¼´¯²±½À·®¼¼±¤¶¬¦¦µª«¯¡ Ŭª§±µ¬¬´º¨©«±¥ª¨¥¦®£¤ª¡¡ §¶¦¯ª®¡¡¡ ¦¢ ¦®£¨ x
w{{s}gypkklguskagdbsadefeiibfoZ^X]lcaMgW[`VIGHKMRX?9`liGBUS\[IHFEA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A<-5B37=++,/A*JK./*+3722(57$+7.72685\yN2>HiZLZJVbfA:3@bF%5¤¡® ¥´²£²¾·¡±Æ»º°°£¶¬«®©¹¾½»À²¯¯®¶®³¹³§«¹±¯®³¶»¶¯¹¾¬¦µ« ¡±¥«° ¦Å¡³¦°³°·µ¬®¬®¢§ª¦§¦ ¥£©°¦¹§®¢¡£¥¡©¨§§{t
|
pgynhkjgqrk[hcar`dgknkfjfdl\mmvqaSbhceZIGLMOYQPVaeT@VRZTFGFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.4<;K6/.+,-24:5#3*)6.55465Z|]1:Kj[M[KXdc@A1HbB'4£±¡©³°¹À¶¡´Â»½¹±¦¶°©®¥¸º¸¸¬»°««·ªµ¹¥²µ±¯©±¶¶±³¶»§© ¶©ª£ª®«Ä¯¦°±·µ¬¬±¯ª¢¤¬©§¤ª£¥ £«ª©º§¤ ¡k£q¥v¬¨¢x
mi~wrl}o]d`gkuxghvifX]itnNPjcfqf^dfoki]\^
hOKC8ETg]JHPPUVLHSapteF[QUPFGFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,,08>G701.*.*/668,#1'214:276Xl15Ok[N\K[fb>G1Na<+/¤± «®«£½Å¯©·Â¸¾¼§¶±¦«¤¸´³³°¹®ª§¬´¥±µ¢§¸¶µ¨§¶³®´®´¢©´«£¥§¨°¿¨§±´¹®¤¨ª«¦¡¡¨¨¡¦¦§¨ ¨ª£´¯£¢££¡¡¢¥¨rx uif~sy o~|¡ {tvlnied{mrbTmcmiqXipnW]i[kjZpmyrhY^FM>F^MERVVQPRWTg^LZLRRPEFG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82*/1<I:/01.*/(-4583%&2115>1<8Xt15Rk[N\L[g_=K1T^7/(§¬«ª¨ª¿Ã¯²º¼¸Á¿ª¤·±ª¬¦´µ®¯³¶«©¥±¥¶³¬µ¶´¦§¨³±²¨®«¡³© ¤¥¢¥±¸¦§§·¾¦¬§©ª«§¦¢ ¡¨¤§£¥¥ª£¤¦¦¡¶¤£ ¤®ª£±¥® zÔ¨ÀÆxw±¥·dÀ¿yy|Êq¼Å{r¶§º{l±«±yhlX±®oei¼¼nhzmpØ~Skb¶²~qu¡ªVNXaOVNFU\XQPR\W[P@\DPNCFI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww11Tk\O[M^g\>L1Z[41!§§ª¥²©±Â½²µÀµ¸¿Â«¦´©¨°µª°¶´¨¨¦µ¥¨¹¯²²¶ª¥¤§²¯®±¦«§¤²¤¢¡ ¢ ²¯¤¡µº¢ª¨ ¬¤¢£ª ©¡¨¨§¢§£¡°££
¯kjªh
fq¨q®¡¤~wº|l¡v±_j´[¥e`fzfixj©e¾rg¦v±j|±xucmm§n\ EigEu`}f{£¦Y_«hxzj¨8J¯[XTmcZLOX_\WV;NPWV/ISSJCEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3/.53/+/(.0.:6/'$203B/=;Uv2-Vj\OYL_gY:M5^X31¢§¥£¥«²¸´½¾°·Å²¸»Ã§©°¬°©ª±¯¤±º°¥¥¯³£ª¹©³²°£¥¡ª°¬¯¦¨£¢±£°©¢ µ³¡ª¡¬¬ £ª¥¡¡¨¤£¡ ¬¥¦ ¡µµyª¶w³·¬k¦z
w«gj±[¬{tpx
°vwqkkm|O¥XHcc~ch¥_yquR^P©ncq|a/R¢n[Tkg`LK\dX\ZB>°wWXA#MiFBDA@A19>88:84;:9<9:A:E::;6:CB8=?KNH:5:AFBAAD<FD;0201;F-0.840,.(/3,>831/2-D1<<S}n3+Xj\OXM_fW7J9aT50 ³¦¦¡®©¨³¬ª»¶Â°¼Ã¹·Â«¯¯§¯³ª¢¯¼«¢¨µ£¬¶¥¥²³¨£¢§ª³©°¨¦ ° °£¤¨µ¯¡¨©§ª ¦©£ £¥¤£«¥¢ Õ¹q±ÂÆ}Ö»}¨¤{¢¥z¬yV¯{~j¹Z¹w
}¦|zªy{±mt»oP¯§ÅQ zc`ªbsrl_Rµ´È
|c¤3Bu\PjhdP@XfYdaJHMkJ[SOYfZCC?E?0<<59<74<;8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DB./0483+-).323971#%5*>3==Qwj6*Yi[J[P_fT7H:aP72%£±¨©¥³ª¥´§¤¼·Á°ºÀ²·µ½´¶¨²±¤²³¦ ¯¶©¨º®£°²¡²´±¡¤¨©±©´©¥¬¢¬©®±©£¬¢§¡§¢¢¡¢¡¢£¨¡§¡¦ ²nhµq«p§s´ut¶{¦£~£~°uÒÒu\®|
¤nª¦j
}}{±sy³et
nfRÉZÂ\yb__vsb^YÊoÀtMKµSUÆdUQjceXAOj_liPUFI9=WR[VYHB?J<2?;5=<56>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>II:1746@>/.24252-).26,742&60;5:=Pqh9'Wi\ANT_eP5G=aM62.£¥¯¥©º¬¦µ¥§¶»¼²»¿¸·µ¼¼´¦µµ£²²£ ¬°¥§º®¤²±´¸ª ¥¡ª¥²¨¬ª¥©¤ª¡§«±¦¡¬¥¡¥§ ¦§¢£ ®¡£¥¢
¬|x¨v£©p®¨£¢}®³\r²S¯}£~q×}w~w¯w´ael[°WKuyf`^vwgj]¯wxl5yÈ®³_CTo^g`EPl_pmVUM.echRYP;AD@L:5?91><16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@=V_cN6GB`I:77 ·±³Á¬¨²§ª²º¸´¹¾¹¸³·¾¶¦¹µ¡µ ©¬ §¶¬¨±±«´¤© ¨¢µ§¦ª¤¥¢¤§§°¥ ©¢¢©¦¡¦©¤¡ ¡ ¦©~¦y¡ªp§¡¢£ªzyp±Z¨ xtØvt§¤|{²^d }n\«\[hgªcr{jq^«Z kneOJC¡\ZMt]bfMZa_rt_JU6JXHE=GEAL35A8.;>05A78@<6=<F?:<6?=B7.HVJE@H6KIN@IK@EN::@4.;>002154+*05/7,&21($$6671<OedA&Uf[?1T_bL7FH_C1=7¢¾³Â®«¨¦´°¸±µ¿¹º³²¹¼ª»¶¡²¥¦§§ª±©°ª¶ª¯¡¢ ¦¤¤º££¬¡£ ¡¡©°°¦§¦¤¨¬¨©¨ ¤®£¡¡¡ ¡«®nr´t©w¦t´zu´¦¤¤u¸n{¢kk¶Z¡eh ¢§mr´s³j
ju´af¢nk\`N¡|Rs£ly~np\¯V<wfTon.[§ObRkeblZb\`p|cSZQ>?lo2BB@>M:!7@6.;@37C58??3;<CDBJFMIF62JTKEBJ6IJP?HOCFP=<E50;;010/75,+,326/#00,,289/9N`eD'UdY>/U^aL5FM^81A8¥º£±¿®««§·©¸¯µÁµ½²±»¸«Â·ª¬¡§¤¢««§¶£³¨®ª¡¨ ¥«¸£¥£ «¶°¦¬©¦¥£«²¤ ¨¬°¡£¢ ¡©ªÔ»u±ÄÄ~Ö¸y§y¢¶u}wv²aºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¡~t«}¾ns¼t²uxmqm¤t½]w}[ay¼jZV[iy^iadfbmyoX[YCA@q?CG+4H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,;:08LXaF'TcX</T^`K5<L\-6@9§¡»£±Ã¯©ª¬±¨¹¯·Å±»³¯¼°®Á²¦£¤¢ª¥ª²¤µ§¤«§¸£®¡¦ £¯¹°«£§§¥¤ ¨«©¤²£¥§¢¢¤° ª
¶¸x¶wnlotoyrÁ»¼z²¨pt¹|{}¤»¹½uy³£tvut°ufi¶trqw¶^y}gymyb¬pu
X[§iDdYTf_c]cQgfqmuBMOLD;ZL?J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7KT_G'SbW8*O]]=+;VV'=:<¦¡¡¿§³Â³«ª¨¬«ª»¯±Æ¯µ´°¸§µ¹®«¤¢§ ¬¤®ª¦¶¨¨¡¤¬¥¾§¡ª¢¢¨¢²µ¶¬£¤¢¦¦«©¥¦ ¨§§£©¡¬¢°©§¢kj©ytv{f{¾¿Àºoq
_rjZ]adk`cmvbke^`cqhr|fj~qty~}b[xthP\n|{jXlyrIJo
pNsMDV\f`LZWfc_OZmvjrRODEM<HI<L>2,2A?8/5?C<9;@;=C>RVVWYZ[[\]`aaa`\UG5CFUEJOHFPIIH;8=51:.1;:./-76=5&"/*2,%;8-7IR_I'S_V4)P^L(3>\O'?2>¨¨¡Â¤´¹¶£¬¦®§¨µ²¬È¬°´¶¤¾±³§¡¤ª£¬§®¤¥µª¤¢§©¾¨©¥ ¦©¨°²¾¬§§¢©¨¤¬£¢§¬¢ª¢®¦ ±¥¢¨¤¦¨¤hn}rw´ª
¡z¤
li{}urxyvu{jstudw}vkpzl_b[ogMXYfj_WYpzomfSOFR9PZNRO(+:KB635=@A9:C><ENSSTVWXZZ\]`bba_^^[TKCSGKNDGPLOI<:;489,2;820)6IRO8")+/2#4;*7FO[J'R^T10T^:+=8]K,<-@² ³¢¿¢£±±· ©¦³§¥°µªÉ«²¦µ¦À¨´¡¥¦¥ «§£¤·¬ ª¦Á¬¤¢£¨¨¨²Ã¯«ª©«¡¡¡¥¯¦¡¤¨¬¦¡°¡¢§¡£¤ ¡®|©¨{
£e¡³®w{~wyzogykuyrityujtcwe_hdcdfjXk{qjk\SLPD_UF@??,4@F;45;>A;<?>>HNNOPSTVVXZ\_aca_^^]^]XVJKLBIOMRJ;<:786/3964.(&$-1..)+*7%+<(6CMLD/T\Q05M[17E4\G5<,@³ ¹¯¿«±² ª¦²¢¬³°Æ°«¤³¯¼¤´ ¨£¡¨¦©¦¤¦³µ°¦®¾¡¬¢¢©
ª¬£´Ç³©¤ª§© ¥«ª®¨¥£«¡¬¡¤°¤©¦ªf}ecylhjz£«kd~g
eeihz¢kh¢wkj¢slnzyXe]
^lw\gswwoxxsmysw{i
X]jsd]sik|qmc]QNWIdX@J3=F7?FD71<=?AC;;DGHHILNORRTW[^`aa`]]]]]_]ZUODHOKSN=>==6535554*&&%,*%.++'6*$;'/AI[J.6ZO6)EY/DO1YB;?.=¥º½º¯¬³°«¥¨®°¦®®°½±ª¨¥®°° ¤¢§¬¬£¦¨©³®¤£°¦¶¹¥®£¢ ¦{¥¬¢¨´Ã·¥¢§¯££¤ª¨ ª¯©ª£ª§¦§ ¬¡¥±¤¬¢¦ ¬~½s´s
hw¹Ä¸q¡£{¦sª|ËÀÀºq£}À½ÁÁ|zÂÀ}k¥²ooÊzwwyyq{px
ylube^wc_eb^thmdbXKVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__a_^^^^___]\SMPGUNA@?=6468266*&%#)*&.+*)109*#>I[L*#CP/#F[3PY/UAB;/8¢¹Ã´°¯¿©©£¯©°¯¦²¶¯ª¦§¦±« «£ ª§¢«¢¥¨¥¥´¤£¦®¬¸´§¯¢¦ ¡ ¦«¤«¿¿±¡©¯©¢£¤ª£ ¡¬®¨«¦£¢¥¤¥©¤©®ª«®£¦¢¤Îz{¥z_]¨¡¡}§t«¯^dª{¨
t³c« ³j¯t|¸a®Y£Ínv{Û{q~ue{vvl~n}
}k_pjof`_xd[qhjcf`RTSW^JOC5AHED8>5;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__][WOUJ=?><5578164('$!',&&/(&+360$7;SL+,-J0';\:L-!P@F4.1¬ÁÀ¿´´°·£ª©µ¬¦²¬¬¤¬¦°ª¡§¦¢¯¡¨§£¦¡°¬¦®°«¨¬ ¥¥¨££ª°¨¿Å³¨©±®¢¡ªª¡®¦©¨¦¦£ ª¬³¥¢ªª¤§§¢²¢§¡ qv
¨q±|q¬} ¥x«~r¬v{|~ª¡}«zzVÄ{pÁ}mupmfweoawnrnldmsuo`fmd_oijnfcWS\`ZRRC9II@C<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1''45-&7=WJ-<(=1)3V@F!G;C1-+¯ÓÆDz³££¢¢¯·¯©±§¨ª¨®««§¢¤£¦« ¢¦ ¨¨£°¨§¯¬¨§©¤¢¡§£¯¬¢¬µ©¹Ì±¦®«¢®¬¡©±§©¨ª¨£¡ª¯±¢¨«®¦§«««³¤¤¦
¤j¤uz©u{²q¥p ¤_aR«
®u®¨z{f£¤£}©®^{¨U¢z£|Ä°Ås¯´³¹rb©¯Âuhlnlxxwnkfddqqf{ic\V_iXXTLLQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ''!+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÂÉÕÖÀ¡«¨¡¯¢°µ°°©£¨§ª««¨¤¦ ¥¦§¦¤¬¢¬¡£¯£ª¤µ°® ©§¤¢¨ ¦°¥¢¨±¬¶Ç±µ©¬©¢ ¥´¡§«©¢«¨¡¡©¢³¢ª³²¢«©°°¸¥¤¨|ªlv«y|°n¤Ò¸´¸É²_a©¥ zyªÉt£§¨~ÆÆwe¡¥s}¯^oµc±uK£m§Gd{o}nyt|zm[ejrqfj^aXcm\^YILLJEDBA=A<A?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75785/)(%&%$&),5FNPPMFLJVF*L0/>-4NTQ;<F2,$¨¤Àƹ©²®¥¢³¹¬«¡¦¨¦ª¬©¦ ¦¥ª£®¬¦¡©¥§µ £¨«¶²¬¦ ¦§£ ª§®¡£§©°³Á±²©¨¥¢¤¯¦¡¥¥©®«¦¤«£¶¬¡±¹°°¨´´µ¦©¤¡Nxz£|¤¦¸||z¹ÌÆöw¢~v¤¤§~¯
¬}a¥l£p
}r¬`¤sqa¼}RUu¢{|ryr}p\lnwrjnZc_hnbd]LLQSAHGFH::K>B108856877-*5==?BDGILNPTWYYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOTF<E2:P[T6?G,- ©¬¤«¹«¯ ¢¬³µ¦¡¥¯®®¨§¥¥¤§¡²®¢©§³ ©¤£µ££¡©µ¹¤££¢²¦¥¡¢¯¤¨¢µ±Â°ªª§£¤¥¥£§¡¬¢¤¯¥»¬¢·¶®¶³º³µ©±¢¥ÑµÃ·z
¦x¢w¡
¥r«´nri¤}s®¥¢¦mp²\¥szl{~n©a¢rr~bs²¸hw¤}v{xlhwixsn~t\ddmmeh`JZWX<HF?S3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^``]Z[ZXURRQF:2230/++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH#)%r®¿¿¼»µ¨¤®¶¢££©§©ª¥¢¦¡ µ§¢©§±¤«£¤¤ª´´¤¦©¯ ¦£§µ ª£µªÂ¯©«©¢¢¡¦£¥£¥©§¬ £¬¦½¬¾°£±´»¶©«´¥©{¨}|°x¤¥m²o¡|¢¨¬
¨ £
{~«ªw y¯]£|¦§d|tk®]¥lr
]`[ m¥xy~jl}b}tmy_gepngghBY_Z=JS2S8AAC7$$3+''3, /667436:@CFIKMNQSSSVZ]_a`aaa^][ZXSPONI8152.*,ATVVVTTUUUUTTUTSSVWWXVVUQHFIJ#((¼©ÆöÁ´ ®¹¦£££ ¯®©£¹ £« ¯ª®¡ª©¥°¬§ ¨¢¡¥¡¤¨¥¶¨¾®¤©£ ¦¥£¢§ªª¡£©¨½¤Ã«£¢¬³»°©£µ±ª¬v¯~
}ºd°e}¡§
°§¤¢¢
\lk³`{{±lfn±Z}´\¤kÈ¢f{»YvµZ²}S¯z¬X¡m§yw}cs|bxt|ajfpmfeeOUc\AT^=H(>9=4!!,$2. *1/04579:<ACFHJLNPPRTWZ^```ab^_\[XUPMJGC553./@UYXWXWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³±·½»´Á³£¦¥·© ²±¨¢µ ³¨ª«°¬®¨¢¯¬©§£¨®©¡¥£¢¥¢¨±¨»®¤¨}¡ ¨§¬¥¤¤¢¤©º Ƨ¦©¡¬µ·®°©¡¾°®®©£®¤¸Ãº¨¬¯¨¦«~սªb¤¿½}£×º·µ½¾j£o«nz²±Çk«°½yx¢¾»t¥wyb|zdgy{`kekjaPb[Si\@T`BL)<:4/$%2 $(0496678;>ADFGJKMNNQTW]a\__a^`[\YTQMHC><A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ»´´±¿º²½³¢®§¦³¦¥¿©¶¯§¡¿¦¦²±¹¨¯¥§¯¬®¦£¬¡¥ª £¦§ ¨¢ «¬©¸¬§£{¦¨¨§¨¦¡¢«º©Å£¡°¤«´µ«²¬£¾ª°°tvª¤·
epg¬nnw¥ v±qr©¤¯¤rlmmfxonqzipigqhi
gpd]cioZ]g~x¦`brpfd¡z
tdwhjx~ydlcflbKeWJkY:PdDP'J9+# ",)-2.5:457:<?ABDEHKLMOQSV\WZ\`_a]][TPLHD=:AB7MXYZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨´©º¹²³ª©¢®¤³ª½±ÃǼ´©¿«¬£ §« º£¤¬¬¦ª
¦ª¢¤£ ¥§©£© ¥¥¦®¹ª¬{¦¦§¢¯¦¢¬¹ °Â¨¥´§¬±²«¯®ª¼¦°¹¡©¥µ¢©ª´£¬¢´¤¢¢£¢¥¢¬§¤~gtwtq§m}
phvowv|yiledocUaX@iZGb`NX+E=+&!640/!%2(*799469;>?ABDFJKKMPPQWUVY^_ac]^TQJEC>9=@ASX[\YWXXXXXYXXZ[[\^__`^^^__```_YY`¥©ª¤µ·®®¢°¥ ¡·±ªÄ¼Ã¹¶©¡¤¥°¨¤·§©´¥§¬£§¤¡¨£¨©¦ £§ ´¹§ª|¡¤§µ£¦«·¨¯Â¯¤¸§°¯±®«¬¶¼£±¾¦¤¦µ¢¦©¢±¡¤²«²¦¢¥«¢«
fuwztj}
xqryq{~jnd_pi`\_YmbP`dOX9FFE=2<=8/*&+)&&406658:==?AACHJGJKLMSSSUZ``i`eVPJACB;9EMV[^^[Z\[[[\]]_^]^_`aabaaa`bbbdb\[c¤¨£°³¬®£©§ ¨µª£²¹ª«¡¢z¢±¤¦±©¸¥¢©¢¯¤¨ ¡®ª¨§¨¸µ£¥y¡§·£¯µ£°°u¤¿¤² xz¢µ¾w®¥ ©~d\bv¤~m´£¨¯¬¥f ¡tzpªl£©e¥
xkvq|ai[vghqy¡dx
vhnyjpe_vokkg\ecaaoRY=MMNRF=@TB91/&4:306678<;>@ABFHBGGIKLTUUY]`hfgXQI<DG<9UR[`ab`^`_`aa_\]___aabcdabaaedchd^]f¦£¡°±¬«ª¥©®¤§¥ª´®°¥©¥ªs¯¨«§¹ ¤~¬¤§¢
u®¥¨£¹³§ uw¥²µ´½§¡~§£{¥±º§
±©¯¢y¬£©«©w¦{§{³{ bynqzqt
xht t{~ikx{qpgdxnilj\diier[\HSLQ@E5-YTT6)!09=>643568;:=>>?DI@IEJKGRXZX[aaifYQH9DL<>bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah¤¦®®«¨ ©±§§©¥Å¼¯ ¥§´«¦¢ ¾¡}¬£¡¡¨¢£¹±§
pu£«´´®Ê«¯·
°³±
©§|¨r{w¦h¤y´ ¨ªÂ«¡r¥}
³¡}¡|
nt{s}
uÅf©¢jogwt{vghupghk^cnlflXeF]QL2E46M`c7&3<EGD:63658;8>==>BL?NIJLCPZ]\Wb^jl\QE=KM@IdX]cfhgbbbbcc`_babcccdiicbbbecafcbbi£ °©©¨¦¬ ¥¹±©«¦¢¤©¡£©µ¢¯ ¦¥½ y«¢
w £¢¸¬¥bm §~¡§ ® ±¤«~¢vk«uM«xª©ª«~¡|{§jlg·~n`cX{dgs}yl]|n`Sq
\`mz`Ye~
q¨«k£nr¥pgdlZlzeY_~aWPovemtqjjo^jolkhWgN]XE9@4GD^k4+ICQMN=84859;6@;;>BO>QRKMBJ[]_W^_cu`ME:MNMTb\[ffiibbdaddbab`bdcabjkdbddgdbgeach ¹¡ª¤¦¬¢¶½«®¢ ¥««´¡§ ¦´u¦~
¬¤¨¥¯¦¢in ¡¥£¡ w§£©¬¯¥z}}¢ps{ymª}¢tw¦g~w¥^{}s¢n·´ºs¶¨dƸ|p¶q£ct¬«a~j³~n~q£ls¤s~£^³o{³tr[²ibosuqioXkkrrd[g]aLD=D5QAZp2<RG_JR=<395::6C<;@IP?TNNQ@E_^[YX``{dIC8LWUVcaZffkkbbeadc`ab`dc_`cknccddhdbgfchh£¹« ¥¸µ ¡¢£¤¬±¬« ¤¬x
q¡}¨ ¢¨§¤~k{~} w¢ r¡©¨ª®}z y£xs}§£d¡~mho{§}rhtªsªg]
v
hªj¸f\©pa_§vwhumj¦\¨~w»j}©Z]³g[nqxwki[piwxa^eVaBPEO7VBRn4JZZ^NZD@151;;7H?:CHU?YSX]>Db]V`Qac|iEB9N[]XdfXffnmbbe_aa__``ec^bdoq`deekdcihgkiª¶¨c¬»²°«¥§¬°§ª¢¡ £ir{z¤¨¡iy{~¡ ¢rh p©¡¥ª£ª~°¤¢¸v£³¢£xzª¢r¡}°µ}l¡x~µ££«¨||~sªZ]o{xbM{{
dzBMY¢js|ovy±³~¦t~mq|ori£]vHec`sp|}nf_lhu{bc_P]V\TV@YEQgERV\aX^ID=B8?A:HE8LEXAWRZVEFa\Z`K`m}qEC<U^bZejVghmobff^a`\]^`hb_edvl^egfldelhhki±®S^¡§´º³³¨¢©§ «£ §¡w
ny}r¡r¨|l
q¡x
{¢£®}µ{¦z©£ ~§hwm~s sq|
o|£§¤p^©hv£dp¦aÓ|{xrsc¢~¢r¢uk³`tª²¨¼wn¿¦ª´^orps¢r^¤gt¦`h¦lÓznvykyvrl©¥g_dyplhfdmuwf_aRZePQaHWIT_WS[dj[dPECKLJKAJD8P@PMXSXOSQ`eeiSdxywIFEc]eZhiSihjocjf`c_\]]_hbahe|d^dgdkdjlfhlh±¬T]K~©¯²µ°²£¦ ¢¤§© {p}h|wpl|£©
yvnw
y¢£ ³¡¢¶z¬§¤®¥p©}¤¢q¢®¤¯£wµ¶¶É¢s`©my u¡w ~oLf£qs¥{zubm~ lrd`stk{j´¶´Æ¦s~zj«tlswiytqPD}³^jvkxfkfbstpmU\RXgORhIULXRU\gknUgWMJAJMKHKNAQJPdcjmeuss~x{nuz{UQOm^h\kiRjhilgmgce_\\\_ibdhk{_]dgcjfnleime¢°¨
e@¡³¬¯¯µ¢¢§¢¡£¤¦¦ykyeyuj
z¥¨z}yp y~¥§gnxl¢d|r¥xph§}¥{¡rv¹m¢b}£nsk«ku mo¦`iiu¢~`uobh¡fjupdgor¢[_[d¡n^q|trd¥nx¢df§hrm¡oRn ^d§T]TmmrkqmphkxskoQVUUeYSmIXO\HXhhsjYkVQREV\MXSaUhj^wu{|p}|r{sww^QsagbpgPkhhklohdg_]]]`jbjivu]\chcjirlfkmc¥¦zetm§®¥ª°±¦ª¤¡¡¡¡|qh|su}|e|¦¡«
}si¥}
©¦¦x~¥²¯¥y{©u§n¥¢¼m|¥¯¢~¦{r¨ h~o¬cx¨mª£uw«¦k±lw³©loo b«ªw§w}
¤ hu«f¶sv¾£Y¦«aurto{upbj~nglSUYU``\kL\R\I]lmv`[qX[_Zgsenoqcqt`wz~yryr~{{wbydcnsdRlggomrigia_^\ajbll{o\\bibmiwmglnb¦«¤©ª¨§®£©£¤¨
t
zo
~surn}{
¤¥¥uol¨ª¢ t~y¯¤qy{r¨q}}zx{}}w¡¢
|k
\zyszqio~qtqe_xwtupzooo
_wixgªt}jo~u|umlfsx{wZjWyinwrqowxo]k
migVY^V\dkdUaU^Q_owykjwejjju|pqtsaoubs{xuyuy
~|nmdyn^Wngiukxjiid\`ZcielqunZ[bkdlkymhloaº©§¡¢¦¤¤«¢ ª ¦¨~r||~{trp|}y~£{§
wqª
¨ ª~¨¨xq|pªp}qjo|hn] sqtkvtYro~j]id{
`ix{|vizlbqsw_s¨gnwowmdecyzZ[ifmv[{ywtmsrf\mkkbYX]YXkq[^`Y^]er~{sotcjji{|rzwtdmthl{uz}{yyp{}s~zrhT\rilvpugkgd]aYjhkjqrmW[emlgryohjm`«±¡£¡¨£¡}«¡¤{|r}v
ror~z¦ xz¬¡ª¡¢££«¢¨§¡}z©±¥±¦¡l}wwf|
w|{u¤ wqu
y§z
uj|yiqh`sp}{wvowt]^ogn_^YZ\RgqUc[[alht{|rnpcjih{mx~phoplf{rw}{m|zy|}zxNdvjsnq{ekebb`[sfpfrqlU]ltmhxzpgikeº£¡¤ {©
|x{mxr~mk~z~|©r|{©
¦¢¦¡¦x}
§|}
© © pyruav~nzvu¤u~~ss|
{y
¨tzmj|{mhklg^y~g||vtvuzw\`p}mt`cZ[]PfmSeZ]ajhuz~pllcjjgkrkjtnwnynv}
wr~|{|{`i{kvhiejc`i\cugobumkTbqyeoyzrejmm¸¡¤zw¥¤yy
|l{xr
}|kh}|~}¦p ¡
|§w£ ¡£¢¤{
¢~|¤ ¥vuqwa~s}q~
hxrys}}rz|
{{¦|
t
xdqz~xypkjf^}sg|uvs|rj^`tvpwdcX]^RjhTeX^`givxqfkclgejm}gnpj}w
zkr~uv|z}jrntibilb_qVtoln`xhlWjtvctzzqbkoy³¥¦ |u£¡w{~~p~ztu
~wgc}x}y}o
¥¦v¡¡z¥{
ys¢ ¡}wr~n{d|qk
fvo}~y}~|ryz
£wuzs^ww|s}wfkc`~ijvssu}q|ccasnurmaY_]ZkdRbW_`hktyqbjclfh|khthloh|yl
qt|~z~|muttmfljbcuVipm`yglajvpex{yp_ql
¯§©
|w¨yx{}|{xsxys}d^}~
t}~£ ~r{¦ t§um{o¢|zrzkvm|n
xo~~esj}
t
zwy~}¥y
t|qs~
l`ztyp{nanbd{amovrwwssav`oluno\Z^]]j]O\Wbahmszk_iejchwmflhilg|zwns}tz}z}|ryyxnlkh_irbhqofvgmlazhj|{wpawm«¡¤©|v¬|v}{|{vwotszo
}~|a\~szz¤}|£
n¢¡pgz
p¡}|tsvkqov}uort|}eqmz~
tu{p}
ª{}~
w}om~bgwstnza^o`jt^pjzyxlrpey]mlsmsXZ]_ajZOWWdcfqqe]ihgbgqnchheigzwuo
s|u
x
|xzw{{syjk_phtkqomqgoke{bnzwpkww££¨¡§t© s{v
wxrs{
kroymvnq[Y~vu w~
n¡l¥
hx~|}pvplnoq|jsqxuzgsov}
z{xuq|{
¥|wwwli~\qrqoowY^o`oj^oj|zpmmjmw`pokqmYX`aamWPSYefbuob]kmdcfkm`ff_gjurrotyvy
~wv
{{wjqb|b
|oplujhnlvw_q~y{tus~¥§
~t
zrwtpr
squlnltlv}mnUQ«xvry wz¤
}s
jh¡
qw{{|}lwjollm{bz~wzx}zhumu|r{qx{{~}}x|vogjw^womkprU]naqa_lnypgpfgtuhqlawe]Ue``qRPN[ed]xo{^\hqbbeei_he[go}okqs}v}
uvy{xs
~|zxgqj`~ook{`imtt_t|xxss
|y¡±¦~wtvspo
spqojiumn}|musRNᐙ|ptuv{r
¡
}x{zxin¥cpz|z}m|espkm{z\y{~{ziukt~mp~{}wxxrlen}jitoghslS]odpZ_lrwfkkcgxsopc_w`aUk_^uONK`fb\xpt\[ev`addc`fbXissmkqv|tyvw~szq}~vesn|enokZknyyr`vz{vrvvz¯
x~{
uwpypnomn~rcdxp|nz|jhlb¤ÁÜ®ï¢sluu¡np
£
~{vx
vxp¦
^l|}v~~l}dxujoztXzzzftkmwo
{utxtrpesw`smoahtfR`pgkU_ntyasc`i}qrn[cracVnZ\wMMLcfa]vsm[\dx^`df_cc^Xirknkrw}swxx|q}}{tshuqyl{ntpWpyvyqdvyhvq¨¢|pwx||swpsjokil|t^`xv{ptzg`e|ëÚµÉÃÜsltvip
|zwxrvr¤
a
h}}
rrwhvritxmZ}}vbum~omz
}~orz
tkoipv~]shn\it_QdqhfS_pvt`p`]hqrjWgiciWmW[tLJLef^ars
i[\ey^^dgz`d_]Yknenjtw~sr{vzt
|vv
{vlwvyyunwz}Xy
qngxvdv
q¡¡soqv}{yqtnodr~hflww[_xzzqqiagaÕ¶¦xnqw{qj
zh{{~
zu{|qvx
¡ af}~m}ulmwutwvlc
|
q`tr}}zr
g{
|
opytlmiiwzagjiXktYRhribPbrxlbe^Zjnsb\g_em_oTZoNHNfd\fnrkZ[cs_\ckvde]]Zllbmjsvqo|}txx
|vx{voxy{om{v^tmhzssgs|ruu~mu}|v~vqoljat|gbiuzZ`w{ymq~edhhW_rs¼Ävq}qrj{|
|{uvw~ru
rw~f}~q}f~|y}i~vgpyxswtlk
y
l_sy{~|sjz
y}~nm{}vtnfe{tb[pbWnqSSmrhaNftxf`^]YoosYeb]jn`pOYkQDSg`Zjnm|nY[]mcZbpvcf\]`kicljsvpm~|tuz|
v~xtryy~oo{qixz~ml{ukjxtk n}viw~yoztqlid`szh_eqzZar|ygqy`ee±²wKbZ¥ÙÐq{w}
nk
zy|xwoqu~{jy
¥px{
p{|nwhxr|e~vdqsiyqou}wy
zk\rs~{sor
s
z
yno~vzdfh{o^XvZXpkNWqrf`Klwta^\[Zu}roWg]fjq`oNWhR?Xf^Zokgzq[ZXkeZcpy^g\^elgekiqwol~uo{v
qq{|zyujy~ko~t}or{zon~xg¡
fogy}~|ixskkf_aoym_box\dkzaqv_eeÔê½2:>qx
u~~ml
u|
|xnvwn
lu{ufy§~nvy|{w~krh~xm||xbz
rdri~nuqu
sv~sp\nuy{~y{rm
szunkvus[ggunWV{RYodLZrre[Ipxo\[[Y]t~thYb[geodjMWfQ=]e\]ue`upZYUncYdqyZh]_gmgikipw}mi~yn|}ytpnw~{{hz}js{r
zsv}~zx}|kl}kh~z~~~}kvrghb[bgso_aks`hpybst^cd n\5Z¯µti|u
svol
uyx|y~rgu~~oq~hvynfy¤~ow
|pz}{h~lj{zjzwr`w~rdrgvmu{|owz|umYpwuxv{ytos~{onjmtm\fdrpPZzM[n[O[rodUKsxiWYYZapt`]]agdiifNYhM@`c[`ua]ulXWStaZdorWj^bhjgmlhpw|lh||p~~{zvq|oqw{j}{mwxvv|x~}zm
£{uxklx~{~psqcf^Yf_oo_`gpfjntato[adjv{¿¦¤È¸qr|wsrro{tttwyypcwzirvgwucj|~su{z{kxy~tgzhkysizv}h`x}kkth|iv~zq|v|tbVx~ss
}qxyqqz~wwjqilqo\faqmIduK]lTSYrnbQOtxaRXX]aps[a\ieedkdP[pIDc`[cp^]whUWVv][enhVk^aigennhpvzmix}r{~y{u|pwrmw~p{wyztx~yuo~}
zw
{gt
y~{vgpn_d\XeYmra``plkhnatiY^dnw©Ú©Ç²qwot{
ztst~wpqmt
xuk`zyfqpgvn[m}y~y|nw
u
{ltv~lgvdm{vmiww|abxziuuc~{gu{twq{}nZWupv
zmtzlv
|~z}t~thtenlsYh^sdGmmKZ`WVUwmbPRtvXPVX^aqo\`cmed^ocT\rGBf_]fg][{bQV\t[[gkaVj_`nefkpgpvxtku~vx~w{s}ortqu~
{wx{|w|}~{~ruy yutx^}
xs
w{bnm\b[[aVisc`[gnpfqaqfW]ck|Êι¡jmmlqq|~zyxsyuu{jlvcuvof^}zerkjqcXmz
sx}ors{y}ppo|fhqbmxqjkqx}}z]ezxjvxfwgt}rjo~yo}]Ysnu|opqwixx~s|u}{sgsankqWi]v[GmjLVU]SU{kaOTurPQTW^bt
i]`ljfcZoaXbpHAg\`e^\V{^NUepY[jh]Wh`^rekgpgqswxntzx~yur
pp{xwvyz|t~}~~~}|xuxx|muxd
so
ztdnjY_[\]Tgrd`YdqrgrbkeW[`jw¾®{ ¶nas
hs{qxz}~wwrvo{vejoausjb^xyfqhkkZVow£
qrzwot
}xtqnhy_jl`mvjgjkywzvZg}|yfs~m
teu
pgk{unub]q}lu}{gv~nqivys~m{|{yqflbn}lmVi_vUJijNQNgLX{haNUukLQTU_fuf^`qhgbWj]\khJDjYadVYUyYMVmjY]kd\Yec^temdpfrpuxqv~w|
}usnsy{zss
x}u~|{~{v{wwziv}{lrp
pglgX][\[Sdpd^WbrujuoeebW\\hporsddy}isusrwxvrunkzqbgkgtnf]_}p{imygjdUWro¦|{vu}t~|o}|x}}uoqlgt\lg^ltdgeizo{rYhwuhpxvbw
|okm{qgtfanzgsx|~cwwjlrv{q{ztgywodfbn
{ljUhaoRJhjOKNoG]zfaMUtdJOSWajv~e]gsif`VdWbp]LKjXcaUTUsVLXudY^k`\Zce_vgmboitor~ttwwz}u~
nrt|zuq
zut|
}}z}v{£¥y
ku|zuznsy}vojieV][ZZSbmd[Xas{jhmi`bW_[jjkogk`hyxjrssmz|utmzhjyj_enhvheXbwj~{ojpgf]TXog¨wz|zvqqtwzyu
vjquggn[lc]mr_gajxh{l[nstjp~zwaw
ytroyrcqi]qxert|yctqhjzurmyxvyd|ywqddcn||jjThaeSJkgOGQjE`wfaMSr]JMTZekvze^mqid]VaUnnWKShWf^XMUlTJ\y_[^k]]Zce`yhl`oovnpwuz~wyzyz~qttyvt
}|ks{~}~{v«zkryu~tnn|sjpnddX_ZYZTajg[Z_ui^ml\aW\\lert}ii\kvugsvql{}|xurlygixf]eshzwccTeph
xxgijaWVYgc§n~w{qrizp{}xr~ndurdgg\ja\oo\g_mtezh]torkr|~uvbt
|xruuapm[rtcqs
|uesmam{pkj{yvsfv{{vqebemr}ikSg^\TKqbPFU`GbvfaKToXJMXXgkuzdenqfdZW^XweTJ\bWhXYHWePHbxZ]_lZ^\ac^~ij_ntxmpnvzr|}uuy|tuuyzz}~isz~~
zz|sq{{}dqys|zurol{~lzcpobe]eVYYWcfk_]]s
hXqn[^XZ\l{cpwulbYlssgtuolx~xvmntdite[gufvvy_]Rffkt~bdj\TW]bc¤hxtynq|izn||vsy|xhdvl`f_^i^\skYe]oobze\w|knnpxytuds{wor~sbxd\qqbqr}tgre^nwiehz|unout}trb_fnn|dhSgXXTMv_PJYWHbtcaITmSJMZWilq{bmlscbZZ[aw\SLc]XiSWGY`MGiuX^`l[[_bb\iganxymojvymvtttrvuw|}~~~pw|yxz~ttp¡zzwcuxswtkto~kx|ps^pn`gblTZZWhcmf[\qeSrn[ZXX`lvciuji^Ymsplsssi|~~{vnnldiqc[krduvs[WSearr]bc]SZ`\ceqq
ull{opq{}}swszzzdeuh]bY`gZ^vhWb]phawa[|vijroxtsuhq
vsjq}nfwX]lncrtztgp~[`prb`kr~mmusrxkqa\elmz`fReTWQPu[QOXQHcsa`GVkQIPZUkkk|fnoqb[ZXYlqWRPfWVhSTFZ\NHqtX_clbX``a]jcdmyxlpiuy{k}|y|nrovz}t|tx
utquo¡s{zewnmznfxpzksvsk^unagekR][UgalkZ\qdOon]VXUgjthbted\Xmtmoutxj|{vscdkna\nmcsxkZTVcdx}}q]d_cTZ_Ybcnp
tki|pftxu}mzuvpzv_erc[]VacXateU_`mdaq]]~phitqtquvkm|qsgp~qsoT\gkfruwtcmvVbrl[_pg~fmw~stsknaZdjjw^eScTUPTlVPVRPGdr_aFXiOIXTVmhd|ikxkbW]U[tdSRWhQXfTSHZZPMwvZ_ekiYa`^^nafkyunoivvl}{~krgt{u}r|
{ts}vn¤rvwlz`d{pfysxlmqwgd|mcfghS_^Ug_ln[^nhNim`TVSngtkexdd\Xoslqzwrl{vzykaelm^`ojeqy~gZVX`lx|{p_c_gVX_Wcbkp}xllzn\wsm{jvtop|sXim^X\UabWdpcS^biablZa~lfltvomwwli
|mrgq}nsnc[aiiptts^imSeqeUcoc{drw|wlpmk`Yafgt\dU`URNWdRO[NOHdo\bGYiMJ_KXmd`xin~d`U_T]u\TS`fN]aUSJ\YPYtu]_ekhXba[^qcgjxqsnhvtzrz~|ynulst
y}
|
sstxro~zz}~~}}~~}~~~~~~~}z{|~~}}~}~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~mfggggg}
]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDARÌÚØØØØÚ° ¥^*///0,H
}}{{z}~||~}}}~}}~~~~~
g_```_^yS7¤¤¤¤¤¤£r]____aR455552FØêççççé¶ £¤¤¤ªV:|}z{z|}{|~}}}~}}~~~~
|yzz{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~y{yz{{y{}|{~~~}~~~~~~y{z|{z{}}{|~~~~}}~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}}}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}~
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx|{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~~xuwyz{{{z{}}}}~~~~}~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~rtx|||{||}}~~~~~~}~~~~xrvy|}|z}|}}~~~~~~~~ssvx}~|y}|}}~~~}~~
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxy}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvutvwuqrqnprpghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkigfgggihgmgjghehgccbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__`c_\_]`]^Z^]YY^ba^^ZY_\XWSNMLKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSSPMJMNPROMPQQQQRVVQQQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTttuxzzxvvwwz{|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPPRQPNNONONOOPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKLFDFJKKKHJLLLOMLLNOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBA@@CCDEACEHKOKIIJHGJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:<>><ED=?EA?@A@DEGGGGBDDEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;899;;:@;;><;;<<HL==AA?BC=ADDFBFFDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprttsqrvyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;::;89:87:<978;;>=;;:8:@@AB?A?CFDBCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqususqsxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<979::988::78:9:;;8789;:8<;=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>=;<<>?=<=;:<===<<<<;;:;<>=>??A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquuuusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCC@><=?@??=;>=>CE??@=;===<;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVpoqssttuy{{{}~~~~~~mLPQNOPNNOPPO><<=>??@>@@???CED?=;<@>:;::97:<9==@=:<;;<;89;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}}~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC??AAABA@=<=;>=:::<:8988:;=??<;;<;::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFEHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvvw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@???@=?@><>@?===?>=>CD?;<=>@==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy||}||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABECDA?@@@?=@><=??@@@C@@?@@>=<=@EABBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBBC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{||}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@A@>;><?=<:>=?BBE@?@Na_J@CEIIIIMMKECFGHEGEEEDDCA?@>>BFJJGEEFFFJNMKJIGGHKLJGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@DED?<ACDB?=A?ADEECWu~XGIJLLNOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHIHGFEFFFDFHGEEHHFHGHFQnopqrvvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJHIGHHIGGBDFDDCAVtWILMLMMLJGGGGDGGGGFHFHECDDFEDDHHCCCGJJKLLLKLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrtwwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLKJKMJKIHFFGFEPl|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD???DFHDEGIKIIGHIGIIJJIHFJJJJIJIJJJFILLJJKKfopsstvxy{{{||}}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKKKKKMLKMMIFJVl
uIIFB??@???<<<>::<AA@><998<<=;>;9;?ABAACCC@ABEDACFHIHHHKMLGIJMMNMJJKKJLMSloqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHGIIKLONNQNQ^r
fBB>88::9878896479;<:8567789787689;;<>A;999==>;;=ACEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56;<C@BFHKHLKOUg{T;8656766655763468:876565677778:7778:;7689989876:<@GFIFIFEFOSRSSROPPRTepqsttwy{|{|}~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:<DBDFFEfz
H676468874578467799766765:::::<89899877::98878589;A=>>BA?AKLOQPQOOPQWkrrttuwz{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897:A9<D@Qz>:88;<=>9:;<89;9:;:99;:9===?;;;=:><:<;<;<;9:<8::;:999<?<=ABDIJMKJKLWortutvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<:89989999:>=?@Dv
l<;>BCEEAAAB>@CA@?=>>@?>?@?@==?B?AA?A?=@A@??A<><;:;:9;?=;;==AACABCAXpqtttvy{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::<<:;;<;=>A@>b
^>DGIKJIFGGDFHGEC@@CECB@BCB?@DHECEDFEAFEFDFFD@B?=@>=?@>???>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:=:<;>>>?;?=@?C?J~
WGLLMKNIIKHIJJIECDFGFDCEFDBHILGGGFHGEKJLIKKJCFCCDBAACBDCCDDCA=<>@hpsttvwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA97<>;<:>?>@=??BBE?h
PMPMKNKJLIIJHKFDGHHIEEHFFELLMIJGGHIJNMOMLNKHFGGEECFFFFDEHHFCA?@Lmptuvxyyy|||}}~~~~}}}}~~~~~QA?>?FGG=<@@87<:;<:>?=>>@ADCIS~
qMQOMLLLLJIHFJIDJHGKJHJGGGKMNLLHHIJMPNONMOKIGIJHIDIHHFFGGIGCBACUoqvvxz{xxzz||~~~~~}~}~~~~~TDAABGHB?8?@8:;7<=:<?<=>@BDDMm
^RRPMNMKJGGCHJGLJFKOLKJJMMLOPNHIKLOQQPQOOJIJJLJLFGHGFGIFEEB@BB\prwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;@A;=<8?==>@EE>CECGKu|WVRRTROLKJEFFKONOWVQPOQSRNSTOMSLPSUWRSRPLJMMMKNGGJFFIJDDEEBDCcquyyzzz{z{z{|~}}~}}}}|}~~UFFGGGGHF>@B=?=<A?AAEULBIJGJLy
gVVkaERQQPJ;;QSR`u]UVTVYYSYXRZfPUWZ]RTWQPNRPPPQKLKGHJHEFIIIHIjsvyyzyz{{|z{|}|}~}}}}}}~~~THJIIGGFE??A@EACFDCDKVPKPPNPPy
}al[dU:XXXSP?@VUY\d`VYbr^]W]ZVEQYZ\Y_TYgRUVXTTVSOOMJLJIILMKOMSotvxyxwzzz{z{|}|~~}~}}}~}~~~~~VJJIHGFDDBA?HLIMPKIJOSRQUVUVTu
g;~znpXZ[ZRSRWVTZZuYU}a\X]^WIV^^[[_YHYXY\]XXYWRQMPQMMOSQQURassvwwvxyxz{{|}}}~}~}}}~~xy}YNKJIIFBD@A:OQQWXPPPQRSRVWWWWl
n~fYY\YSVTWRQWVcQerXZW_hP`fZZX\hbGOZig][\]]WRNSPPQVVVVYZosuwvvtwxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZZRSQOQRQURUSV^ux
}{\PVXTRTRQQLOMKfyZ]TYUV]ZLTZUST^ZXWWWzkXZ\\^TQQPINOWVX[Zdqtvvttvxyy{{|}}}~}~}~}}~~~zxwvsu{tk~~kry^[VUSROKFCDAM^lVRSNOQOQVRSRRTcdv
~ymqVIKNNKMKHJDFHEC>ScURPQNKRURMOYQMNQSUUMQSRPOMLHCIGRSTZ]mrvvuttw{z{{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt`d]^[YUQLILIaltPQSNQRPS[RSRQRUUbs{|~}{{
u_]KC>BBCCB?DPCD@C>BHGV@INMG]iQHFOFDEFHGHBCHGHKGDBAC@NPMRdtuvustvz|z{{{||}|{~}}}~~||}}vt{mh|gnqfieeb\XSQPURsWe[OONLQRPUYSUQQTROV`klsvz{xyurnstsyx~~kLG>>::>@??>>jPJaEFHIEB?HMMGMQUJBE?><=<==?=?ACC@?<=B>IMFUouuvstvx{|z}{|}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QQZ\Y^IJOPNKLQRQTUUWQQWVPX[b]agmmlokh`nrimlqu{z}{xz||xwxdB@@A<:BCAACA[\N{NOONKLMOOPLKLWOIGAA<977599=;;;8989?;AG>\tuvwuvwy|||}|||}~}|}}}}~}xuwz{zwyxuw{|yxuywcqhipmnmmhf^OO^\ZIGOQQOMPQNQRSVXSRYTNYZ[WY\_^_e`]^qwk^`gkwooljonnlfbYGFFHBAFHEEFCLQOaWRXQPSSRU[OOQWPMJDF>:96586979:365795<B=ftuwxwyy{}}||{|}}~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMKSTSPQUOLRSTWXSTXQLXYYVXXVXY]WXXhsk]V`tkaa_]d`_^YUPMOMLIGJKIHFCPOSZWTTNQSYS\eUOSTQNKIHC?A9998978847578599Gnruyyz{{}}}}|{}|}~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPWVVSTVOOUVWXYSUTLKSUUUUWPTUWTUR]n^RNY`[VY;DUWT[fJLPRROMMNMMLJFPPUYSTOJNOUST\VRUSSOMLIHHF??=:787659967565Wqqtxzz{|}}}~||}|~}}y}}|~~~}||}}~}|rvqxxruuqqnppopuvtnjddjppqrpnfedc\^RTZVWTSVTRXXYYYRUOJGOPOOMRJOPOONNOTLMIPPSTU2<XMIAQ=c`QSQPNPPONNMPNTRPRLILKOQPQRSTQSOLMKLLHCBA=:9876;B4566;eprvxy{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqpuuvcjgeWhtrrqniihpVVTUXUVURWVUZYXWUQSFFAFGGHFJDHJHGEHLHKIGLMPMG/E_R>4@>joaRRQ@GTQOPPQNQOPOLJLLOPNNPQQNPOJLMMKGEEDB;==<9=G6676Dnquwz|{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknbePSTRSUOWVVYYVQQQO@>;=?@BAC@BEDA@GHGHFFHJMLDGCORC8DMS]gSQSAGUPOQQPMMNLJLKLNOOQLNNMIMLIKKLKGFFED<AA>;@E;<89Trsuy{{{|||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLONMQSLTUTWWULLKH=987;?A>==A@B=>EHFDFFIGJJ@FAA@FGDIOHQRa\QPROSNOOLLOMKMLMON[VKMQOHJHCIJLLKFFFE?BC>=BG?B?@druw{z{{|{zzw|wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B?;>A@@>ADIECHGIGIEBB?><CA@GIDMObePMOMWKLNKKMMLLKNNSdMJLRIIIEBIJLMNJGIGBAB@?EFEHDLopvzyy{{z{zwtxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLLIMPMPOHKE?B=999:?B?<ABAADDGKFDIIGGHCC?B??@@=CEDLMQTLJIMTFIIJLIJKIJLMOPRPKGCLGCCKJLNONIJIGCCCDIJMLIZsnxyxz{{y|vrpurtyyvxjqojllnttmsu{stxronqovsnporpopstyjN`gsjt|ygosqiqheqHKCFGHGJKIJLDGB=>=:::;AB?=BBCCHEJLJEIIFGGCD;A@B>@?BEDIMOGHJGHKDHIKMHJLHIJLJM]RIHDNGBELKNNQNLMJKFGGJMNRNMcnjwvw{y{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoijthepFKCFEFDEEFEGCC@=<=:;:;ADA?BCEEIFJJLFIIGFFCB;BCC>?CCCDFLNHJNHDHDILNMHILGFFIILNKJHEOICGNMPNPNOOMKIHIOSQRNSggfrosxv{z|lhjoekpmsqfmlhikltmputwqoxtotsrvspqrtsrtuuwvXVuukotrkovlhmf_pGJCEEDBBAE@DB>?>:;;=;=?DB?ACFGKFJILHGGGFEC?=DEB>ACBCEGHIGMPIFFFKNOKFHIFEDEIIHKIFHPKDJMMQNONOPNJJIMRUURPXeaamgqroryzgehhcilfqlflmgiklsmpvutpnvrosrsutqssutsuvvvyvutvlkuumrvqlnlerMGEEFBA@AD<BA>A=::=?;>?AB?@BEGKFJGIGFFFEDCAAFFCBBBDEEGGHFLPLIOJJLKIFHEFEDCIHHKJGKRMCOONQOOONOOKKKPUWVVTY`_]ianjnhrsbeffdihfnifmmhkkmriqvusqmvnoqrswsrstuuvvvwvwvvtwuksunutsprkksMGGEGAA@CD<AA@C<8:=>:?=@B@@@DFHEHFFHFEEDCDBDIFCGEAEGEFFGEJMKHQMJKHHIEFHHECIIJKMKPSNDRSQQRNONOPMLNSWVWYVX^Z]d`hcjigk_defchhgkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxnouorsuqqipzMGGGHAABEE<@CBD<7:=>;>;AB>??CEFDFDDGECECDFFFJEEIGBGHFGFECFJJGMKLKHJKFIHJHEKKLLNORTOITUTQTPQMNQNMQWZVZYWZ^ZXa```^hec`deggjhhjghnllomqpiuuxrrpupppruvpusuvu{~}xvtwvvvwplupmsunossyMHHGIDACGE<@EBD<8:>>><<BB=@>ABFCEBBGCCDEFGGGIFGKHCIHGIGFDHKIGKHMKJKLHLJMKINLNNORUVOLVVTQTRRLOQPOUYZY\ZZ\__^`c^\bdlc`dghr
hgjfjnnponsqjtuxrsstrnpqvrquruus~y}uuvvvvxriuqkrtlqwquKIKHJEBDGE=AGDD@9<>@?>?CB<@>AAFCEDCHDFDFFHHFHGIKJEJHHJHFFLHHHJGLLLLLIMKMNMOLPPQUVWOKVVUSSRQLORRQV[[]^[]^``a`be^d`fh`ehjdssfjhflprqossnswwpuvtsmoruorspurvrtvuuuwvuwtgtrkqrkrwpwIJKIKGBEDE<AFDDB;??A@@ADA@B>ACHBEDFGEIEFEIHFIHJLHHJJIKJFJKHIJIGKKMLJJMKMNNOLOPRUWVMNTVUSRQPMNTSRW[^^_]^``aab`cdebdicdijgvlkigmosqpqpprywruutsmmssmqrotuuspswtuuwvuuteqskpqjrvpwJLKKLGCCAE<?EEEC=AACBBCEBCDAAEGCGFHFEIFCGJGGJFILHIJMJLKGKIHKKNQKRQLSMJNMNPPPTOWXX[NSQW\ZSVPNTUTTXZ_bb_da^ac^`fbacinhcihhmxvmhinosrpqrrrvtsusssnksqmprotvsqquvuswywutucmtkopjqtpwLMLLLGEA@D>=DEFC?CAEDDFCBEGCCIEBHJIGHJFDKJGHJIIKGJJOKMKILHJMKZfJd\KlRGNN_nUls[qpbwcRPbvuhucavaXnqbdvinzf\lu`lkU`xvijhhfglmjmojmosrprrqrsrssrtrnltonpqquurqstvvuuywutt`ktkppkqsqyKNJKJFB?@B?<DEFDCCCEEDFBFFGDDJDDJLKIKLGGNIHJKGKJIKJNLLLLLIMLL[sbdp^llULNer]geqlntgpi_aYnmbppbkjjgoqtetnn\pvgqNKryvkaakeelxmkvlnosrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIIGED?AA?=BEFBECEDEEDBHHGDEKHGKMMILLFJNHJKJIKJJJKMMNMMMKNMM[rponpplkMPQlXNibtrpamov\YlP[mmZqmkomxxtsip]`slqjUuyxoc^kfbgppjioppsspqpqqrrqqrrtlmrmmnorutqtrtuutuuzvutenukpolsrryJKGHFEEBAB=??EGBGDIEEDBFIHHDGKJGMLNJLMGLNIMKHJMIJJJJNONNMLNML\hdu]lqWlNOQmUZk^klvaldtTecNlYl\tpkilxjwuhp]_skhWbcw|oc`ghacityknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvIMGIEEDCAB<B@BFCGFKGECCHKHHFILKFMKKQQLHMMHNJIHNGJJHHNOMNLJMMJZtppoqqmlOQRnYskgooqqomt^nXat_nopoqroousttj[^tcwxrjnzhaacfabjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyytukoumtonssvtIKHJCEEE@@>CCAFCHIMHFCFJLIGFKMLFOJKWRKGKJJNIIJLIKJIIKMMMLIKKKSkbZi^_jcrrZ_Yko`eeUk_d[abQ`mh\j\niidZoedp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrutwrIHFIDEDFA@AEDCGBHJLGFDGKLIEFJOLIOJL[QJFHHKMIHJJKKIHJGLKKKGHJJLLLKIKLNT[]TPUMQPNOOURPPQOOQJJNPQdqiTYV[[\UY[]X]\\cfaafbcf_^fkmhmtxrtroppt
zpmmlkqsttrtvtuyyxuvqruovrtsuusHCEGFFAEC?CGDEGCIKLHFDGKLHDGIQKLOKLWMIFEHIJHIKHLJIFHHJHHHEFLHIKNLIO\W^O\\`^OXYS\\b^MYZMXaRKYaZS`d\bX[ddVVX\YZX\VY\^c_d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCDLMBCDBDIEGGFKJKHEEJJJFEHHPJLMJMRIHEAHFJIKKILJIGEJHEFGDEJGBIMJKT_Y`X`a[`UXYT^^Z_RY\P^\YN_\^S[^d_Z]`c_Y_b[`^[UYXZ_^dbbaceiekrpoppnow
{
uqprrsuyyzyyxxxwryvxrqxvtvaSJJMIECBCFGEGGIJJIIDFKJJEFIINJNLHLNGHF>GGLIKKJKKIGEIEDDEAEID?IKHN[cY^^a_RTSW_`\]Y^QY\MV_WKQY[Q[_ba]^ca`bbbcceZRYVW][^c`__cebhommllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQJFDGEBEGHFGHIFGJGHFHKIKDDJJMMLLHJJHJG?GFNJKKMKKKIGHDD@D@GHA>HIFO]aZ[d]_TQRX]\\\_ZKW\LR\YIM^QQ]_bccccb\dcbdceXRWUT]Y[a_^_aa_dlkmjklnv~uz|
zrsuu{
~xpzwvx\RMC@IFCFKIFGGIGGJFFFILJNECJJLNJLIKJIIGBHHQMKKOMKKIHHED?EBHHA@FECT]Y^X_Y_[]UXXP]]QKJV^X^[]VZaRR__bb``bb`cbbddbXPRRS\T\]^^^__`dhgljnnp{{|~{
srw
|x\SKBAGFDGMRHDRKFHHHDFKIMPEGIJKNLLILKJIGDHKQOMLPLLKKIJDEAECHFAAFDAVUE\T^SV_XNTUNZ[MJKT`a[_X_^b]OXb\``_bcb]bbW__TQPQRYS^\\]^_`bffelfoow|{{}
zo
~INFDFFGDIScQEW_IGGHDFMJPPFIIJKNLLKMKJJGEINQQNOOMNMNHLBDACCFDBACD@LHBLLPONLFMFFHIHGLLMOPILOPPSPLQTRUZXWYWXdVOSTPQOOQUT\YY[^^aaefchdlmqsszy{z~{}{
}KIEEGFGDKM^MHHYMGHJHGMLQQIKJKKNMUNOKKLGGKPTSNPONOOOHKF`ED^LDfcCL[H^[smOMVmYLCP_TlWgJ]WU^DLQULMSVQRTXVTXUT\TPfZhheZTkTXWU[\\``abbb`gignlhrz|}~}}zr{z{
~z{LIEFFHEEKOTJKG`TGJOJIOMRQKMKLORUROPJLNGHMQ[YOPPNOPPJKQQI|YYrsWPmHqnoaVPqqtOBksnqtpSo_[nX]V\XUkhU]VcY`YZ_VUWituu_av_Yb\\f[_aaab^`cgmpl`pwtx}~vxzmv~tx}|~|z~wwNIEHMMBDLLGJLFRVLKOHLRXWQNOOMQTNOQPKLOGMPS[ZTQROPPQKIZx]TxdhXQSPvgtlpbnfkRrOLwmjrpsrqrpop]fzuxqqzq~r}ku}aRh|essoss|}p~xor_``bb[aahknkblfgmw~~{xwtvzhr~nt|~wx{~x|u|||ssNKF`]GAEMMHKKHJQOMNJNV^YULQSNYYLSSRNLPIQRTYWWQTPPQSLHgxlcxqmZJLTypumubnvPddIevqmwojfxxiXrRi{mijzz}lxzpgnXuujvupash}ilx|o___cb\^defijegbcdllppstsssyqrxbltgry{ssuy~svzn|}yxrnMJRtNCBEPQIKLJLQOOOMPZ`ZXKTWPa^RVQYSMPJSTUXWWOUPONSJKrouuquqchaVnLqp^GhyWvTKhx}x`y{sna]modSgrunmypwlvstqlm\s}zkmy|lun|lqvux^__b^]_eeighfe^bbiiijknokqnmjpacfdowxompsynqpj{ztromKKZVHGEGRQKMNLLQQPPPQW\YUNVYUfXRRY^TMNJTTVWYWOSOONQIRmHiwK`dvuUWlNnl{rajguTKWkh}lmlx_Zpz{_`zscroxqhd|ir{]TKl_vuljv|{m~yk|p]^^b[^bdegffec[ccikkrsrwgmihdg`alagsrlhmmr|kmhk{tmmkmOGJKHJHHRQMOPMLSSROSSXRWTPWZVVTTTa`QONKTSSQVVOOMNOQJHQNPULKKRSRRROVUQQORRXXQNPUTXXX[[UQRW[WXW[ORTWWXQ]XV]USOXRWWXYZ`\gr_[[Z]]_cZ_ccegdddcZdbgffmnmuffgc`f^^g`dlhfgkhpzhggkujhgilPIKKLMKJTRNRQPLVVTPTUXUZVR[]VUTWUYXOOLNWTPNUSNPNLQPKJRQKQMJJOQTRPQSRIIMOPQRQQQTUQXW\WSRQQUUVTZQNRRWUSYVTYUSQUSUUYYX^Z_a]\[Z]]`c\]bcdfdeebY`acabhhjncad^_c]Zc\bma^ffgmsdihkkedcfhQJKKNOLMTQOTQQMXWUTVXWWZVT\`VWVYUXTQPKOXSPNUPNQNLSPMNUSNQNMNQSPTPRTTNLNORTTRRQVVSXZ[YSURTXWWY[SOSTWUTYUVYUQQWUVX\Z\`]WY_]^]\]`a^[bbcgfeebX``b]`hegea^_]]^ZZ_Z_g`^^]chkahfhfd`bdbPKMLPQLOTPPTQOQZYXWYZZXXV]jdVXYZWVTTOKOVTPOTPPQNMQQOQXTQQOMOSUNWQTTUONNQTUUTTRTWUZ]\ZVVQRWXV[\VPSUUUVXSWWTRQXVV[_[_`_V_]^`\\``__ZbcdhgeebYb`b^^fdc`b]\\\\YZ[X[a[^]]_b__bddbd__`\PMNNRQMRSPSTQOU\ZZW[[\YZ[dqmhd_[YVVXRMNWSMMROQROMPSQUZUTPPLPWUQVRTSXMOPRUXUUUSUXW[^]\[VROUVV[[VQSVUVXTSWZSSQYWW]_[`_`Vb\`a]`b_\`]cacgief`Zc`a__ee_`c[Z\[\ZZYYW\Z\[`^`[^^a`_c\Y`ZQNONVQPUSPUTSPW\\\Y^\_W\^jpwyc\[VVYRNPWSNQQPRTRLQTSY[WUORNSXVSRTRRZOQSSV[UVVTWZX]^\\^VSNTVV[[UQTTVWXRSX[SRR\XZ]^]aa`Wb[cb^ac_\bab_dgieg]\e`a`acd_b_YZ_[\[YXYWWZZZa\][]\\Z]`W[[ZPOOOYPUUSRWRTP[]^]\`\`V\]hjr}slh\UYWQOR[SRQTRTUTKRVUZZZSOSQUUUSNUQRZRTUTX]WXXSX\X^]YZ]TUNVVW^ZXQTUXXXSVX[SRV]Y]]a^cc_Y`[eb_dd^^cca^efief^^daaabcd_b^X[_[\[XXXXW[Z[`][[\[XZ[^V^Y]POORZPZUVWVTTT^^`_^b\`U]^bkyum}lZUZVQQT\TTTUTVYWLRZV\Z\RPUSWUUSOWQSWSWUV[^X[YUZ^X_^Y\YRWRYXX_YYRTUZYYUWY[UTZ]]^ab`ed]^]]eabfd^_dc`\gehfdb`ea_aabb_`^WY^Z\\ZYYWV]Z]^[Z[\[WY\]VXW]SOPWYP]UVYWWUX_`aa`c]`U]^beev{hXYZTVTV\WWWVVW]XOU\Y^]]TSXSWUSRSWQSVTXXX^^X][U^_X__X\VQYUYZZaX[TVWZZZXYYZWV]_`_dcbee^b\`fbdfd_`dba[fchfdfaf__abaa`_^VU]Y[\[Y\YY][[[XXY[YZZ]_]TY]UNTZVT\UWWYWV\`aacac__V[`da_zuohZ\ZVXVX[ZY[YXY`VOT][`a\UUYPTVTRVUQSUW[[]__Z_\V__Z]^Y^VSYXYY\aY]UVZ[Z[ZZYZXY__``dcdeecdZbfcgfe^ab`c]bciedh_g^bbcaa`^_XTZZZ[[X\XX\[Z[WWZXW\[\`]V]]SOVZVVZVYVXWX^`badada^YYadb`kfh^\][WWYZ\\\_[Y[bVSW^]ac\SVYPVUUUVUSVTX]]_``]a]W`^[^\[^XVXX[Z__Z^WX\\]]][Z\WZ_a^`eddffgcYcfehgd^c`_ec]fidei_g^cbcaa`__[XY[YZYXZXW[[Z[WXZTZ]\[`\U^bMRWYVWZY[\YWY^`baeada]^Yacb_a`a_\]]XW[[]]__\Z]cXYX]`cd_RXYPWVWXWVVWV]]^aba_b^Ya]]^Y]^YXUW[[`^\_YY^]^^`\ZZY[_b_bedefghcZefgigc_c^`feZiicficf_bbca``_]]ZX[YYXXZYWZ[ZYWYVU[]]]``bbxKWW\YW]\\]ZW\]_`bdbca]`Xbcb`cac^\]\XW[]_]`_][`d\\XZbecaR\YOXVY[YYWZZ`^abc`ac_\b]_][_^YYTX]]__^_[Z^^`bb\\W[]`bbcedgffge]eghifcab\cg`\iichife`baca_`_]]\Y\YXWXYYW\[ZWWXPXZ]acffrkJYW][Z_]\^\Y][^_bcbaa]b[bdb`cbb]\[ZWXiq`\`_]\ac_^YYcedbT_ZQYW\]\[Y[[c`ccc`bda`c^`\^__ZXV[_]\aa_][`abeb^\S\_`cddfeggfff`fghhgdd`[fg^ahhcihfc`b`cb___]][Z[YXXXVZV\ZZVVULXX\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vuuuuuuuvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{{||||||{{{{{{{||||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vutuuuutuvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{{|{{{{{|}}}}|||{{{{{||||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||xÅÔÒÒÒÒÔ{}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½sqrrrrt>(+++*%b~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}xÕçääääç{~y1333332j{éääääèÊrooooor2]}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}v~ywwwwwwxyyyyy{xnoopppprrrrrrrwzyyzzz~|||||||zzzzzzzusssssry}}}~~}}|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vtttttwuvwz{x{xwvvxy{zy}yyyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{{{{{{{{|}}}}}}|{{{{{||||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwww||}z{}{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwwy~||}|}|xxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z|yww{~|x{}||xxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzx{|||{}{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyywxzzzx{xxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyxyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{|||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|}}}|||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~
~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqppnnnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrqppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpppqrrqqqpopooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpooppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqqpppppppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqpqqqqpqpqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrqqqqqrqqqrrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrstrrsrsssssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz|~~|vvwwvuxzxxxxwwwvx|yy|zyy|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{{z{|{}|{{{{{{zyxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}|||~|}~~~~~}}||}}|}|}}{}}|||}}}}~~~~~~~~}|}}}}}~~~~~~~~
~~}~~~}}}~~~~~~~~~~~}~~~~
|||{|}||~~~~~~~~~~~~~~~~~~~~|}||}}~
}||~~
}}}
~~
}}~~
~~~~~
}}}~
~~~~~
~
~{z
~|}}}~|{|
~}~~~~~~}}~}}}
}|}~~~}|}}|z|
~}}}}~~}}}}zzz~~
~~~~||}}~~}}}}~}|zzz~~}~}}~
|}}~}}~~}~~|}~}}~~~}}}|{{{zzyz~~~~|~~~~~~~}|~~~~~
~|~~~~~}~}~~~}}}}{{|zzyyy{~~}~~|~~~~}|~~~~~~~~~~}||}
~
~}}}~~~~}}}}}|||{zyyyy}~~~~~~~~}~}}{|~~
~~}}}~~}}}}}}}}|{zzyyyy~~||
~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~
|}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
||||}}||}}}}}}}}}}||{z|xyz{|~|~~{||}
}
~~
}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~||}
~{z|
~~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}||}~}~~||~}{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~}~~~~}}}{}}}|}||}~~~
}{z}x~w{~~~~~~|{{|||||||||~}|{}|||{|||zzy{|z}
~~~
~~~
~~~}~~}}}}~{|}}~
{z{ywz}~
~~~~}|||}~}|}}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}}}~~~~}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~}~}|~}~}}|{|||z|z}~~|}|}||~~|{{}~}~~}{{{}{z{{{~~}||~~~y}~v{vx}|||{}}~}}~~}~~~|~~}}}{{}}|z||~||}|||||}|}{~{{{|||}|{{{{}|zz}z~
~{|~~|z~xyvw|||{{}|~~~~~~~~}||}}|}}}}{|~~~~~~~|||||||~~{|{||||}|}|~|}||{{|y{|{{}{}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}}}}}|}|}}}~|}|}|}}~|~}}}}|{{{|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||}}|}|}}}~}}~~|{{{||}|{z{|yzyxy{~
~~{zy{}}x|zr}{{|||~~}}
}~~|~~~}|}}~}||~|}}|}}}~}~}}}{|}~||{|}zzyyzy{{~~
~~~z{y}}zzz}q~z{|}}}}zx
~}~~}~}~~~}~}}
}~}~~}}}|~~~}}~}|}||{|}{{{zzz{{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv~
~~~~~}~~~}~~~|}}|~~~~}|}}||}}||{||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||{|{|~
~~~~~~~~~z{z}}uqz|zqz}}yxtt
~~~~}~}}}~~~~}}}~}~~}}~}}}}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xytu}
~}}~~~~}}|}}~~~~~~~~~~~
~~~}{z{z|{z~~}~~~~}~}}z{|
{{sy{|pwuvwyvtz
~}}}~}~~}~|}}~~|{|z|{|~~}~~}}}~}~{{zx|vyz|qtxwvxury
~|}}~}~~}|~~~~}}z{{||}}|~}~}}~~~}}}~}}}}}}z{{|v}yxzzruyyvwwsu
~~}}}~~~~}||~~~~{{|||}}}~}z~}~y~|||~}~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~
}}}|{||yz{z~y|yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst
|~}~}~~|~~}~~}~}~~~~~~}||||zyvyyzyvyv~|{{{~}{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~}}}}||~~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{{{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvqwyrx
~~~~~}~|~{~}~~}}}~~~~~}}~~~|~~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}}{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~}|~}~}}|~~~}|~~~|}~}~~~
~}}{{||yw{ywxwwx{{z{|
}{zwz|}}||}}}~}}~~}}||}~~}}||{zz|{{zyzz{zxswuqqspxwq{
~~}|~}}~~~~|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{|||zzzzzzxsvupprowvr{
}}~}~~~~}~|~}~~~|}~~z}
~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqpwts|
~}~}}~~~}~}~{z|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyysuuooqpwst}
~~~|~}~~}}~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|z|}{}}{yy{zyystunsqpxruz
~}~~}~~}~}{~~{{}{z||{yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxqvv
~~~}~}~}~~{}|}{||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~~|z}|{}~xwvyyz|}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~}~}}}{}z}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{~~
~||||x|yzyz|}|{||}}}||~z{{zzzupxwyvu|uv|
}
{~~}y|zzz}||~z||}}|z{~~~}}||}|vrvxxvtvu}
}
~
{||}zz{}}||z|~}|}}~~~~~|}}~~}|{xvvw
~
}}||{||}}~~~}~|||}}~~~}}~~~}}}~}}~~|}
~
}}}||||~~~}}{|}}}}}~~~}|~~~~~}}
~
~~|~}}~||~~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~
}uz~
}y|~{
~~~}}}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqtpurstv{}uvy
hzrss|s}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyy
rpvxqvtturstvinrotvnulwm{snym}rsvsvmmxlpylu}}~}~}}}||}}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpur~ozyymonzoomw}xpqzprtfu~n{ysoy}}|}|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyqjoyxpkyszozwvvp~~~z~}}}~}}~~~~~
xyrz{pp
x
xyks~y{krz|m{yyt}vnoot|uwqy}}m~uo
zrr{|upozls|nw~~}}{}{|}}}}~~}~}~|}~~
}w
}~{|{~{||}~}|~}}~~~~~~~}}}~|{|~||
}{{|~{||}~||~}~}~~~}}|}~~~~||}~{|||{{~
~|{}~{|{}~}{|~}~~|~}}~~}}||~~|}}||}|||~z{{}~
{{~}|||}}|||}}|}|~}|}}|||}}|~}{|}|}|~|||zz||}
{}~}{||~}|}}|}{||||||}{{{}|{~|{|}}|}}~}|zz{{||
zz
~|~~||}}|}}|}z{{z{|||{{{~{{}{{{~||||}~}{z|z|}
|
~~~~~||}}{}}|}zz{y{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yzzy{}}zz{{}|}||z{}||}|~~|{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yz{{|{|{{z{}}|}|~~~{{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|z{{{|}}}|~}||}~|{
~}}{
~{}}}}~~}}}}{|{zyzzyzz|yzz{{{}z{{{{}~}}}}||}}|
~|~~
}}~~~{||}}}|~~}}~{~{{zy{zyzz{yzzz{{|z{|{{~~}|}||}~
~~}|}~~
~}|~~|}|~||~}|~}}}||{{zzzzy{zzzzzzz{|y{}{|~}~}}}
~}~~~~}}~~~~~
~~||~}|~}{~|}}}~}|||}{{zzzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFL=8765999<>9?<D:;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>9=:::88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<9<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÔÔÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9?CE@<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËÊÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø××××ØÜÝÝÝÝÝÝÝÝÝÝÝÝÞÛ×Ø×Ø×××Ø×Ö××Ö×ÚÚÚÚÚÚÚÚÚÚÚÛÜÜ×ÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILO@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÏÐÏÏÏÏÏÏÏÏÏÏÏÏÖÞÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¹³xssssssssssssp»¸¸¸¸¸¸¸¸¸¸¸¹°½æáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVN<::77>C>8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÌÐÒÒÒÒÒÒÒÒÒÒÒÒÑÞìëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¥2)++++++++++*%a©¤¤£££££££££¥SRSSSSSSSSSSSKªòëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;@C>6:7>>;=B?9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÌÑÒÒÒÒÒÒÒÒÒÒÒÒÑÝêééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¦8/00000000000+eª¥¥¥¤¤¤¤¤¤¤¤¦WWWWWWWWWWWWWO«ñêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;>@@8:;8<;;<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÍÐÒÒÒÒÒÒÒÒÑÑÑÑÐÜèççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©« E=>>>>>>>>>>>9n¯©©©©©©©©©©©«babbbbbbbbbbb[¯ïééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB?;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÎÎÎÎÎÎÎÎÍÍÍÍÍÍÎÏÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÏÎÎÏÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÑÊÊÊÊÊÊÊÊÉÉÉÉÉÉÌÒÑÑÒÒÒÒÒÒÒÒÒÒÐÍÍÍÍÍÍÍÍÍÍÍÍÍÍÔØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<8@B<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÎÏÑÎÎÐÓÐÎÒÔÕÔÐÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖØ××××××Ø×Ö××××ÖÖÖÖÖÖÖÖÖÖÖÖ××ÖØØØØØÙÙÙÙÙÙÙÙÙØ×ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎÎÑÁ§ÑÒ¹¾ÔÆÏÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÏÏÑ𱸹¯¡ÒÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D>A98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÏÏÓº¯ª¾¤ Ã}~¯°ÒÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<:6?B@C:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏÏÓ±¸ºÔÒÍÃÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8FA?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÑÀ° ÒÓÀ ÐÏÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÔ£¢ª«¯¡¹×¯¢©ÔÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:=?>=<9@<<::9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÑÄ{¢©Ø£¡ºÔÑÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÕ«¯¼ÀÑ
¦Å¢ÑÉÒÑÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:969;::;8@?:<<9<>=;;:?9?;;9=>==;;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÉ
Ç¡ÒÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;547<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÆÓÓÕ竤Ŵ¤¦ÖÒÒÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÒÑÒרÍͧ׹¿ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFHKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÑÒÏÅÔÔ˽ÕÒÑÂÓÒÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>775;8899:;<><>8::9;>?@=>>:5::<=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÒÒÓÔÒÒÓÕÓÓÓÕÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ>>786977899;;=?@<=89;;;?><<95:=>;99:<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9599:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9848<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EILAALD??;:889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEGIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDJ;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGIB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?;8776=??@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@BB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEFC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<;DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGGNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995687673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785667784;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiihxsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptyvt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsoupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964777:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»ºº¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjdmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸········¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®xpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µµ¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢¢¢ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¥¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;;;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤££¡¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::88:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££££££¢¡ ¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¢¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥£¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>98;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤£¢ «cimnifm £¤ ¡ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9;;>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:=>:?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_]]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=9F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VPQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
}§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s}~
z}}¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
z||}~x
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPFMHSWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~}}¨®²¯¯µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWLO_^\NUTbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
£ ¤£¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJCPK_bXZQ\S_MHQIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©¨§¡¥¨¨«©©¯¡¡££ ¡¤¤§¤©«®¬¥£¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdVOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®ªª«¤¡¢¥©§§©¨£¢¤ ¥¨£ ¡¢©§ ¢¢®¬«ª§®¨¥¤©©©©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPORd\ec[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨¦¥§¨¦©¨£§¦¤¥¢¡ ¡¡ ¡¤¤¢ ¢¢ ¡ ¢¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOWO^ddlhbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤¢ ¢¦¡¦¦¦¡ ¡¤¡ ¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvwa_\UYQUV[c^r_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;><@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯«ª¬¨¨«°©¨©¨¡ §©°²¯¬£¢¦¡©¥¤£¢¦ ¥¤¢¥£ ¥¢¢¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\V\hdocnihb^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£¢ª©§®·¶´´¶³¯¬«®«¶°©²±®§¦¢££¢¨¥¡£¡¤¢§ £ ¢¥ ¤§ª©¨ª¬¥©¤¥©§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxib[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>AE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ª²¸¼¼½»º¿´¯±³µ´··¯µ´µ²°¨¤¢ ¤ª¦¦¡¤£¤«¥¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨©«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥ ¡¨¦¦¥£¡¤¢ ¡¥ vxyxc[RYT__alhukpgiibYSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶³º±ª®´±°±´´¶¼¼¾¼¼½Æº¸·º½´¯µ±±º¸·²³²ª¦¦¤¤§¨¤®¤««µµ®³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YSah`fsositdidb[LK>:8898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÃÆÃù½¿ÀÀ½¿Ä½¼º½¾´§ª±À½¸µ¹À³¯¯ªª¨§§¤¯§ª´¼±´µ¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`a^^jbbnwuvnl[bQU\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAB;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±±§¼¼¾ÅÄÆÉÇÅÆ»ÄÀÅÆÀ¹¯½¼À¾¾³«ª³»¾´µ·Âº¯°µª«¦ª£¤§±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklfnuqruqf^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÅ¿ÃÂÆÅÀ±¾º¿Ã¶¶º©´³´©«³»»±±¯¬¤¬®´§ª©¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tkkndolhqxoyiia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄø´À·´¼Á¹··¿À»®¥®·¼·£·°¦´µ¬®¥¥£¨¤ ¥ª³²¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{vnkhguZfrwsxfg]d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÉÆÃÃÄÂľ¸¾ÁÃÀľÁÏÏÎÆ«¯¶´µ« §´³®«¸µ³«©£¢©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuueeijh]jomxwcb``^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÏÏÌÃÇÆÈÈÈÇÉÇÅÉÇÈÇ¿ÅÇÄÄÇÈÊÒÏÒ̼¸¶´¸¸Á¾¾º½º¼º¼¬¦©»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqobagugiitmxl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÍÐÎÇÌÉÂÁÆÁËËÇÆÌÉÍÅÆÆÃÆÅÉÍÐÍÏÌÇÄÀÃÂÉÍÇÅÁÄÇÁ»¾´±°°Á¾¿ÁÆ¿¾¸·Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlietnsb\bTWTSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<:>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÅÇÈÆÒÉÁÃÄ¿¿¾ÄËÈÊËȼ»ÈÇÉÍÈÃÈÉÉÆÅÃÂÁÂÇÇÉÊÇÌÈÇÈÍÆËÏÅ·ÀÀÀÀ»»½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrofegcjdajmnn^X\VUNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾÆÁ¹»Ãº¸¹¼¾ÁÆÁƺ¹ÉÉÃÅÄÀÄÁÂÁÄÁþ½ÂÀÀÁÂËÃÆÌËÅÈÑ°¾½¸º»¼¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbabccjbfcZYY\YQNE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿º½À¹½ºº´¿¸µ·³¯»¼·À·½Â¿Á»¿Á¼»Å¾»ÁÄÀ¾¾¸¼ÁÁ˾½ÉÄÀÀÊÀ±Á¿»¸»¾¹µ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qc`bbgjffiei]VUSYOSKE8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µºÁ¸¾¸¿¼½·µ·°®¸¶¹¿»À¿·Á¼»Ã¶ºÈ¸¶¹»½¹º¶»ÅÅʽ¹ÅÀ¿¼Á¾¸Æ½ÁÀ¼Å¸¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zxpmeefoiekgXXNKKKRILHC9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿½¼²¯¬±°·¼¶»¼ÀĹ···µº¹º»À½ÃÀºÄ¾Ǹ¹¸·µ¸º´·³»ÅÆËÁ»ÆÀÀ¿½¼¿ÉÃÄžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksebm_\THKJDJBCG?9;8=<7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼¼À·ª¤®°·»³½¿»Ä·¶¸¶·¿¿Ä¼ÂÅÅÇÇÊÉÆÏÂÁ¸®µµ¼¾¸»²¾ÄÄÊÅÁÉÿ¿¾½ÇÌÇÇÄǽµµ¶Á½º»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qelintnwcga\cQKTHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?=??FD@A?>:7?@CC?A=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼«ª£°¹½¾³¼¾¼Å¸²¸¹½ÇÉÊÃÇÈÆÆÉÈÌÎÑÌÊĵºÀÃÈ¿¿µ¿À¿ÆÆ¿ËÆÿÁ¼ÀÃÌÊÇÅÆÁ¹½¼Ä¿À¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_b^`aNHM?E@?DC;;::;:8;<:9<>9:>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´¼Ã¼ºº¾¼Ä¿·½¿½ÇÌÆÇÉÆÆ¿ÄÄÊÈÌÌÍËÆÂÃËμ¹½º¹ÀÿÈÆÄÁÁ¿ÅÀÊÉÃÃÃùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw{_pc[]_^SI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA>>ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼¶º½Á¼»¿¶¿Á¿¼¿ºÀËÂÇÈÀ¿¼¼¿ÅÂÇËÈÁÃÀÀÉÊÂÀ»»°´»½ÀÅÆÅÅ¿À¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}zmsxsgp][^\YQEDCMIAD=G::59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯·¶²µ³·¹¼»¶»»½ºÃ»·½·¹À»º¸¸µÅÁÃû¹³´ºÁ½¿ÇÀ¹À¼¾ÅĽ¾¹²°®¸·¿ÃÇÃĽ½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸¸¸½¹»±¶²ÈÀ»¶´±°·¬³©°³·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|vluzpni\__YSPAEHGK@DCH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÁÀ·½¹¸¹¶µ¿³´²¸±»ÁÀ÷·°µ¸¸¸Âº´»·»¾À»»¼®¯®³²¹ÁÂÄþ¼¿»º¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ¯µ´´½º¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsvvwnq`_e][TJ<>?FF=FCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Ã¿·º·¶¶²´À¶²´¸³ºÀÁù¸³²²´²·¾º³µ²¼º¼¶º¾²´´´°¸¾ÃÆÄÀ½¿¹³¯²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtvrl^b`[]NHA?=HCFMD@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·À½»¼¸¶º¶±Àº·¹¸¹»ÁÁÄÄ»»¶´´°¶º¶´²¬¼¹¸µ¸Áº¸³±¬·¼ÁÇÿ¹ºµ®¥¬³°¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wo{ournc\fX\]RNMA>JB@JI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³±¶º®¬¼²¸¹·»¿½¹¾À´¿»¼º¸¾Â¼ÂÊȾÀ¸¹¶²´¶³´¯¬»º¸¶¹Àö®®ª²¶¼½¹¶²±¤§§£¦©®¹¬««¥¨¤«®®§¯¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmuik][jT]\OMHDFLAFMF8665:6:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹½µ²¸´¹ºµ¹»µµ³µ»¼À»¾À´¿¹¹º±ºÃ¼ÂÊÅ¿»¿¿¹´´³±±®°¹¹¶¼¸»¿²²²®±®¹¯ª«¬£¨¡¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬«¯£££¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndT`cW\QNLH?HQDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¯²²ºº··µµ¼´¯´«¶º¸ÀÄÁ»µ¼½¸²³°¯¬®¶¶²´´¯ª¤¨¨ ¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨ª«¥¢£¦¢ ¥£¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vybwln\QhTPNGOMLBOQ@>;>39:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¥¬ª¨µ²±°®¯²§¦¯£¯®µÁºµ·²·¶²´«²´®ª«¯°²³¥ ¢ ¤¥¨¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦©°£¥§ £ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uu}mk{dhUQcMIHGNRNJNG;D@=2?859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡©¡ «ª¦©¤©£¤®¥¬¬´¼·¬²±¯±µ¯¯³µª§¬£ £¢¥¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¤¡¯¨®²«¥ªª ¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}vx|dxy`bRU_HIIKSTIRPL8>B67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ £¨®¬««¯ª¯©¥¥¦¤ ¢¦ ¢®«¬µ²¶¦¯´«©ª´±°°¸§¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§ £±±±´©±¯¢¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|uvshle[SZYMQJNNULRLA7>B78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=?758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢¡£ £ ¢¯®¬¯±¬¶§±¦¦°®¬°§ ¢ ¡¢¤¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¾°¬±®©ª´±°¨«¨²µ·³·¬±´£ ¥ ¬¡¡¢ ¤¡ ¤¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xuiwu]lZR`HQUHFUVJBMG=JH8E<67;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¢¢ ¢©«§¬©ª´«««¥¥«¨ª¬ª¥¦ ¨¥±ª§®£«¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼·½³³µ¡«¢©¨²©«¨§¨ª¦§ §¨¥¤ª¢¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vqmivmhm\X[BVMJGMGBFM<>L=4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·£°¦ ¤¤¤¢¤£¢ª¯¬§©£ ¡¬®®ª«¦ ¡£¡«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶ººÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸´»Åü»·³©²ª³´¯³®ª®£«§¶±¬¢¯¥ £¯±°¤¤¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¥¦¢¤
{trkkurphW[QETHDIOH>EA3EH95;=6;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ ¡ ¥¥¦§ «±®§¤¤£ ¥«¥ym ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿À½ÇÆ·ÃÉÈÂÀž¹´¹ºµ»·°µ²ªº²®»¶¾ººª·«ª¸º´¼®¸£¥¢§¥¢£©¦§ª§ ¡¡¤£¤§¢}zrkdhoxjeZ[FJLDDSLDBD7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ³²¸§¡¡«ª¢¡¢ £¡¯³©¡wsqnp¦®´¹Å»ÍÇË¿ÂÌÎÍÌÈÉÑÌÍÌÇÉÅÆÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÒÓÌÓÐÓÓÌÊÂÅÆÆÊÇοÉÐËÆÄÆÄÁ»ÃÁ¾¾¾µ½³¿¿ÂÃÆÄÇÄ®¾¸²¸¼ÄÁÁº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLCEPIDB@55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª££¬®¦¥±ªÅÆÌÎÍ¿°Â©¥¨ª¡£©¡ ¤±±«¤ yrroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÏÊÓ×Ñ×ÒÔÕÓÓÈÌÇÍÍÉÒÌÎÓÍÄÇÉÊÁÅËÆÈÈž³³ÇÄËÊÊÎÅÊ¿¾¿¼ÁÇÄÌÌÈɿÿ°³¨¢ª£¦©¬¤¥¦
zruugcgvidVWQDMF@IQB=B<:23@<D<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ´¸¬®£¤£ ¤¬©¦°®¥¡¥¡}wpkebhqoq{
vpnqtp
³Â¾ÅÑÐ×ÖÖÒÖÍÔÖ×ÔÓÑÓÔÔÓÏÒÃÐÓÖ×ÕÖÒËÉÎÑËÆÍÒÊÒÕÖÙÕ×ÓÖØÎÒÉÎÑÌÎÐÌÒÏ¿ÇÆÊÃÌÌËÎÏÅÆǶ¿É¿ÒÍËÏÅÉÈ¿ÃÂÈÎÌÏÐÏÌÊÇ͸·»¨¥«§£ª¥©¨¨|wsvoc`erb]R\IJFAEHI>;@8=4585:76:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´¶ÂƲ¶©¢¥¦¡¢«µ§±¡¦«¡¡¢wic`____^_`^blusqpolrquÄÇÆÔÕÖ××ÓÖÏÕÔÚÔÔÏÏÕÔÔÑÒÌÑÎÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐØ×ØÑ×Ò×ÙÕÖÌÎÏÉÍÑËÎÏ¿ÅÂÇÅÎÍÑÐÑÈËÌÀÊËÅÓÎËÎÈÄÉÆÆÈÌÊÓÓÑÕÏÒÌÒÁ¹Å±¥¨µ®§¨¬¥²¨°³¬¬
{zqstmacim_VP_JJBFCQM?<>44:=52755<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡© ¯®ªª¬¦®¸¨«·ØÔÕÙÙÑÎÐÀ¼ÌÉ·À¯§«©£¤±¶³£¶©¨¨¡ª©¡¡~recb__a`_a`_``_`fmppnkorwwÌÀÒÕÓØØÖÙÑÒÒ×ÏÓÎËÓÍÕÔÒÊÏÌÓÖÒÑÖÍÏÕÕÑÆÑÔÊÑÔÕÖÎÒÐØØØ×ËÈÍÃÉÎÌÉË¿È¿ÈÉÍÍÏËÐÍÎËÎÏÇËÏÐÊÎÊÂÉÆÉÌÊËÑÒÌÓÑÐÏÏʽȹ°»¸µª¶°¨¸³¿»±
yvopnkadnpaW\ZIFFDLWE;@<33<=86855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦£§¸¶µµ¥®¾´±ÀÙÒ×ÚÜÖÏÍËÃÓв«®¬¦³±¸«²Î¹«l^^^adb```a``a^__^]bmroostvvy¤¾ËÕÑÖÔÓØÖÎÎÔËÍÎÅÎÊÒÒÏÆÎÍÍÔÌÎÓÍÊ×ÕÐÌÑÔËÌÐÑÓÊÎÑÕÒÕÕÊÀÊÁÅÌÂÈÉÂÌÃÅÈÊÊÎÊÌÌÏÍÓËÅÈÏÌÈÇÊÄÆÀÅÉËÍÐÑÆÐÎÍÍÌÏÅÇÀ·¹½Ãýù²³¾±¼Äĵª¥¡
xpqknh``qhYXhVMGLIPPB;D>;67:89:56==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÅÃÁ¿»µ²±ÇùËÕÖÙÚÛØÌÌÏÉÖÖÅĸ²¶ª¤®¬¹¹°¶Õ¡|ebbb`]^acb`_``aa`_][]grqqrsqmry¤ÆÓÏËÐÏÔÕÉÅÉÉÆÆ¿ÃÆÏÎÇÅÇÍÊÒÈËÎÍÆÑÒÏÎÌÔÊÇËÎÏÇÇÏÒËÐÏźľÆɽÂÆÈÎÄÂÇÀÇÍÇÃËÉËÏÇÃÃÏÈÆÁÆÇþÀÇËËÌÎÂÊËÈÇËÐÄÅÇ»ÇÃÈÈÂÏÀ½¼¿°ÁÊǺ½ª±²§¥¢¤wntdl`^fqa[W`GHHGIMTG?J=64355=<48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥³±¬ÉÍÊÈľ½ºÍÍÆÐÕÕÙÚÛØÐÊÐÐÒÔÊź¾¾°¨·«¾º·Á®~
t`[^^^`^`cdc_]]^_``_[Z\akrrookloo}¸ÑÈÉÊÏËÍĺÀû»ºº¾ÈÆÂÃÀÃÇÊÉÈÊÈÁÅÌÆÈËÍÉÄÂËÉÂÂËÐÄËÈ¿¹Á»Åǽ¿ÆÏÊÿûÉÆȺÇÆÄÊÀ½ÁËÆÅýż¼¿ÃÄËÅżÀÉÂÅÇÒÅÀÈ¿ÊÊÆÈÆÐÃÃÆïÄËÇÄÊ·¿¼º´©¬¥¥¬£¡¥£ {vstfj[anmZ[XQDLFBGDLDFS@54334?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÇÍÏÎÍÕÐÖÙØÙÐÍÔÎÏÐËĸÆÁ¶µ¼±À·º°{
vxurp_Z[]`abcdded`\\]]_^`[YZ\borokilposƼÉÅÌÀƱ¶º²²³²±Â¼¼»¹¸ÀÁÁž½¹½¿¹ÄÊÅƽÆÀ¸»ÄÉ¿ÂÉ»·»ºÅþ¼ÁÍÂƾ¾µÀ½Ãº¼Æ»Â¹³¼Åö¿µµ¾¿ºËüµºÈº¿½ËÃÁÅÂÆÈÆÈÆÐÆÂÌȲÇÊÃÎÍÁÅ¿½²·°³§¨¨¹±¥°«¬yvwjeh`hocV^YJEJFHKAFBEI@9:648853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÆÂÄÈÎÒËÊÊÇÍÎÏÒÉÑÆÖÕÖØÎÌÐÈÍÈÊžÊÁ²µº·»¶°
y~|tud\\]^``bcbbeeb]][\^\^]Z[]]hsqmggnpry½ÌÀúÁ¸®°°§ª¬§¸´·´³²³ºµ½±·°µ¯²»Â¼Áļ¿»µ²º¾À¸Ç¹´»¶À¼·½ÆÀüµ®²¶º¾³Ä·»µ«¸¼½À½°ºµ¯¶º²Å¼¶¯»¿´¶´Å¼¾ÃÅÀÃÅÆÈËÆÀÆÆ»ÈË¿ÏÊÇÃÆÁ÷þ½¶¹¾Æ¿¬µºµ·¶xtxggebkn^V^`FKHHJFBCAEE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÎÈÆÉÎÌÐÍÎÉËÉÌÊËÆÑÏÓÑÏÈËÆÊÆÄÀ½Ï½³¹½¹¸·{y~wx}th^]]]_`_`da^cec__\[^\]^Z[[]_lpnhfjnnr|¤Ç¿¹¸µ°¬¬§¢ª§«¬³©«©³®¶°²©®¦¬²¼º¶Ã¹ºº±ªµ¹»´Âº°¿±½½»µ»Ç¹Â·ª¨°±Àµ¸¼¯°§±³´»¼«µ¥®¶®º±°ª¹¯»®»¸»¿¿½¹Â¿ÇÃÅÁ¼ÆÁÈ˸ÅÇÅ¿ÇÃúÄÆ»ÅÉÌ˳¹Â¼º²rvvkiablhYXW[ALKMIEAC?FA:9:995854::9;<=;:;>8;@<=9:79>9;<:8;;:>=9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÆÏÒÌÄÆÁÅÐÈÏÂÄÇÁÆÆÅÅÌÄËÌÂÄÁÈÁº¼»Ê·´¼½¶µ«|y~
z{wn^]]]]_`__dcbccb`_^[[ZZ]ZZYZ]enohfgiknr¹°µ®¦¥§§ ¤ ¥«®£§¢«ª¬ª°£¦ªµ¶±½¹¯¸¯¨®¸´´¼¸³¼¯·¹µ±»Á±Á®¥¨¢¬±²³§¼ª«¨«¬´´¦¨®¡¤¯©²¥§¨®¥¨·¬°²·¹º»±¼½¾¾Ä¿µÁÁÇÈ·¿ÀÅ·Ä¿»¿ÄþÄÈÌÊ¿¾ÃÀÀ©rtrji]aodWVXPHZRSKFFE>?@9789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·ºÄ°¶°ª©°±³µ½¯ÆÑÐÍÄÈ»»ÌÃÌÀ¼Ê¹ÀÆÀ¼ÌºÃÇź½Ä¾º·½Æ¹¶¹»®²{~~xt|swf_]\\^_`^_ccab``_^]\ZXZ[[YXZ\_fkfegehkor
ª¥¬¦ ¡¥¤¡£ª£¢¥¥§¥¬ ¤¦¬²¯¶·§°¬§ª´«´¹°¶´¬¶¸±°º¹±·¤£§±§«¨¹ª¤¦§¨§² §¦¤¦¬§¤ ±¬²´²´°µ¼¶»ÁÁ²º¾ÃÁ²¹ºÂ³À½¿µ¸»½¾¼ÂÇÄÂÿ¿Ä wpkae_ko`UY_HNhOTGEJF<=?=:;;825536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:7776788666;::;9:;<859<:>>@;ȵ¶½¸ºÁ»¾µ ¡¦º¶«³³»³ÅÐÉÌÃǹ¸ÉÂÎÁºË¹½È»·È»·ÄƳ¾Å¼·°¹À»±³·°¢}yvtomkjjqi_`]\\]_`_acb````]\[\\XYXXXVX[]^dcbegggjmo© ¡¢¡¢¦£¥¡§¢ª°±µ¢©ª©«¬¤µ¸·¯¬²´®²µ®°ª£¢²¤¥©¸¡¦¦¨¬« ¥£¯©«§ª«¬°²¸¯¸¹»°¶»»º«²²¹²½´¶±±µ´¿¶½À½ÃÁº»½zrk_e^ddXTX^IW]KPGIJFA<??@;?<04535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÐÉÉÁǼ¼ÅÅÐÀ¼Ê»»Á»¶Å¸µÁÁ³Âļªµº·¨±³©ysnpnkb^bff]]^]]]\]_`abccba_\[[Z[YXXWWWXXX[^bddeffhikr¨¡¡¡¨¥¦¡¥ ®®² ¥¢«§¡µ°±±¬§®²§º³¦¶¡¢£¢¢¡©µª¢£¦¥¦£¬¡«¦£¤¦«³³ª´°²ª²¹´¯©¯²²²·³®©¬®²¸°º¶¹½¿·²±
yue^e^[YVSZUK[QLIEHKIB=?AA@@:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ¸½¿¶¾½¿³¥£¥±Âµ¶½´¸ÃÍÉÈÁƸÂÁÈкÃÆÀ¶¼½¶Ãº¶¿Áµ»¿»ª¦±»±¨²¯}
ypqtqhfdiec\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXXVWadecdeddhjv¢¡¡¡¨£¨ª¦¯°«££·ª ®¨¶©¦¦¬°£·°¤· ¢ª¦¡¬¸¯¢¡¤¡ ¡©©£¡£ªª°®¨´«ª¦²°¥ª®²±¯°®¯¦§§²®±´¯¼´¹·®£yud^aVYWSRTKM^LPKGGLKE<@><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾¸¼®§§£ª»À½À¹®´¸ÂÍÈÇÄžǺÊ͵ÄÅű¿À¹ÀÁºÀÀ¹º½·¨¨±»¦©¢¥~xrjlrtpihedgb\\ZYZ\\\]^]\[\^\[\Y[\ZXVWWVWXWWWU[ccbbcbcdfj ¦¥¤¦§¤ª¯¦¢£¶¨ ¡¢¨³¡¥§¤¯¥°¬µ ©¡¡¬±°¢¢¡¦¦¡¢£¥¥«¤¥°§¥£««¥¨®¯®«¨ª©³¥¦«¯´±®¼µ±¯¯ zvrda\Z]XNLQGRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8846863321./2556;:8;7876<;:;;A8x»»±µ½°»²·¬¤§·»¼Áź±¹µÅÊËÁÄÇÇɸÈƵÅÂɯº¼Â¼ÃÀÁ½¼·º¶¦§²¶¢wodbgihfhjgjm`]\[ZZYZ\]\[\^_\ZY[YYZ[WUXWTTWUSTRU``_`a_`acdi£ ¥¡¥¤¤¢£¡ªª¥¥±© ¤ª§¡¬¬©¨¢¡¡£«©°¢¡¢¤ ¡ ¡¤¦£«¥¢¤ª£«®¤®±©¦¥¦¦´¦©¨³µ´¹º¯ª¬rpo`[WVUQFQOHZ\ORITKSLEGIC8;;=<8667:9;:976977:;:=<<7;<8>598:88659:;<97?<9578452121..1426:8698598989;9@9{µ´´»²°¬²§§¯¹¹³ÀȺµÀ¯ÆÉλÂËÍÉ·Ë¿´ÀÇÌ°¶½È»ÂÇĽ¿·ºµ¥«°®|uijjmhjlnkkme]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\]^^^__bdm¢ §¨ª¨ª¦¨¤£¤®¤¥¯© ®ª³¥¦££¡¨© ¡ ¡ £¢ ¢ ¢¨£¢¨« «¯¤·¥££¢¬©¨«¯³¸²½µ³«¯rrh[XYSUREYLP\YMTNPLPRINIB<??A?=65799<<987:79:;<=>;7;;:=67:;8976989:6:=99577570141-+/434988::8::748=8?9~³®¨³¶®©¨¯©¨¬·¶¬¼Ê»¶¿¬ÌÇƹÂÏÐɵƾº¾Æ˵±½Å½ÃÆĽÁ³¹¯¦«¯«wxoninnnqggigd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUTSNPQYZZZ]\\^_`d~¢ ª©¦ª§¯¢§¬ ¤¨§®§ª¥¡§ª¤ £ ¢¥¥§¨¨ ±°¦°¼§ £¬´«§°´°¹µÀ±±«}prbVTUNRIGVQSRLLXMJLNRGMKACFDC>@75889;9:7::7<=:;@>:9;9:?759:9876958779;85576761321-*.102877;99;8948;8@8³¦±·ª¦¢°«ª§©²±¤¶Æ´¹º³Ëƺ¼ÃËÑ̳¹º¾ÀÄǶ´·½³»¼Ä¾Â±´®±®±¬¢khnoroqkpkdfge^ZYZYZZZ[ZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajzu¨ª¥¤ª§ ¥¢£¢¢£§¡¡¢¥¤¦¨¦¡ ´²§²·¡¢·¬ª¤²²¦µ¼µ««±£xrm]NPQLOCNNNPKFNNJJNMQIMJAGKHHC>858889:;69:68;99><8:>9;?8789:886857688974577820301*)-/12776:999984988A7w¶§¤¶°¤§¤©¥ ©¥¤³ª¢²Ãµµ²³ÇǸ»ÄÊÍǵ¯¼¿¸¼Ä³³®¶¢µÄº»¯ª¬´¯¯ ¨}^`gsqvqjnifhhj_XYXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQNMKLSWWVXXYX[]aosvq
¢¡£¤¡s}
{¢~~tz¢£ ¡¤£¢´¯¬¯¬¥¹¦¥°¡°®°»ª©¯ªvrbVLQOPMCSNLQMCPPHINSMHJJDJLEJK=749888;;69;7:<9::;79?9>@79:<89764445874312485/0102)(,-12764789::65:87A7w·¢£´¨¥¥¨£¦¥¦¦¦³§¥´À¸°´°ÊƹºÂÏÇ¿µ¯½Ã¯±Ç²§¬¤®¿¸±°§«¢rWV_hgihincjhgb\XXXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTRMMJHNSSSTUUWY[]ilrm
|tNXr_;Wo{
syz
}xqo
~¡ §¯¨©¨´¢¦¬«§´¢©£}qm_ZNSQVLDTJPMLFOOIELQMKPJIMPFIH=7599999:7:;:>>8:==6:?8>?589;79675333760.-/344110//((++-3854779<:79;86A9x· £®¡¦¦ª §©§¢©°¨§´Á¹±µ°Éù´¿ÏÀº±±¸Ä«®É®§£¢º§¨¦¥¤¡iQMRVZZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`moi{tPB@}y`JQnx|n~wuvxpQ{~xvgw
~¤£§©¥£°«¡¤¤¦ª¡ª¢¦¨tke][HQQSLIUMSILLPIHFKNLMTKQQOFIC<769:8:;;8:;8>?99>=7;<6;;478;7775344696/3/.125221/,')**,4833979:99::::?9v¶£§¡®¡§¨¥§¨¯¬ª¶¼¶¸¶³Â¼·¨ºÉ¹·©ª·¸¶Àª¢²¢ eMLNNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZntw~ji]Ut{
{uxsnupty}ª
yzhv{prmxxz{vsrwguz{¨ ©¥§¤ ¤qg`\\JVOQGKXROJMMRJJJMPHLQLRTMEHA<77;99>=:;<98@?::>=7==79947795675252572/2.,//200/-+(().1272198798775:<<7v®£¡³©¯©¥¬¬°±ª½´²¼¸¶ºµ² ·»³««¬µ³¥¤fJIJIGFHHPTTTWWSTUUUVWWWXXXXXYXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQRSV^u}ygw}gyvx|r|v{ok~|s{}tfv|
lohs|lyq}pmuqhq}pC
~wwz
}zu~£¢¤umkeaYWXTQJRUTOPNQVKNKNOJQOIOOKFD<;79;::?=9<:99??;8<=7<9999266856633621224.,,-..-0-+*''*.1362/876966527995y¦ ¦¯¬®«§©°¯±¬¼¸¬»¾¹³¨±¨§¬§¤~|z
eJGHFB@CDILLMQRPQSUTTUVWWWXWYYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNPQTX^eprm§ªÀ~uyb{xo|yy|
omxsxjjr}Inhw~licly
ksl|nr{hmp~s
z}~{vott
ywp|}lhmnmWUWTQQYOSUUTXUMNHMJMNKCINGE@:89;99:><9<;::=>:8:;9?868727575541442/024*+**-.+-*(*(',-1250,5567485HA895w¤¯¢ª¨µ¯®¬´¿«¼Â¿¦£¥
¢¤v~
|x~t}xuw|fOEGD@<>>AFGGKKKMPSRRTTTTVVWWXYZYYZWVTSPLE1@3 jrAo;<95<_IMOORWZRY\`§bitze~pmzutlts{jkLyg1vsl~}tfet~
filukp|gpp{n{s}|qpnum~wytiyyuiingcWQYWXY[MPUVZYNIIEJJHGBAFDCG=998;9:9<:9;:::@<9:<98>787715244533645031.**+),,++)(+'),,226,+5775478iO8;5n¤¨²¦º®«²°Â²»ÃÇz
twvwuxvoxsiUFID?<;9:?@ADDEGJLOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOPQVLAIQIb¯³ q|xm}mq
yyr txsu5q¨¡¡¢vp||shfbinrmpuioXuovlz|mqmpzsumbv
ux~}xpnnj^Z[][YX`_SN[[YXLHJFJG?CABG?CD=;97=;:;;9:99;:?<88=:8;66651121353475531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥´¨±®Á³ºÁÆ}nv
oy{{q{t|ko^JPG>@7458;;<=>@BEHLLLMNPQRUUVWXYXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~lv|}
~v¢y~
aªzv~s{\dqtz{wlgiaxo
znwszpsywkni]w}|}q|uw{}tmqrde^ZZ]S[f^XQUY]VGKKELG?F@DC?AA=:97<;;=<::99;;=>79>9986754244004645654-,)+('''&(())((+++/00Uq<23331E~W4=9\w¦ ª°©¯À±»Æºzvk~
yu¢~~s}lylSXLAE311266688:<?BEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJi{y{q|{|~v¡¥¬©H¯¯¨sl|}hggx~n
qGkwqyvhmk_w}
z{uv|wmow~}qqpjZ[[ZcbWge\UPQXZQDLLGOICFCCA@CA=988:::;;:888::?>6;>7585773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|~
¬¡¦¸¯³½´}tp~}¥yu
y_cVLC60./22123668:=??BEGHJLNQSTUTTVUSQOGC?80,#[>?84.]ps£UFIKMNPW`YpZ\^j
~
¡¥»±§»Çç¡¥{r~v
ihotqw{v
}nvug¢«£{zzogkx}w|qic\YY\h\af_ZOLNXSQIPKDNGCJDCADDA<:87=<:<:88778:==8<=68656623445576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nvpgx{¤¡¬¦«¯°¡xw}~mpj^CA4--////02234779;=?BDHJOQRSRSTTRPOHDB<87/9C><<63.lMPHIKKKNV`cggmu ¡£©¥£¬¨¶¢§Á®ȯxº|¡
¡
lpuvql
r¡¥¶©¢~kjl}~}q_[b^Yfj\lk_XKHOSQNMLFIQDDNFBCEGB>997=<:;:987767;:6=:785456345566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYppuqv~§ ªhf¤~
z}
xxhNR>//.,/.-/000212457;?CFNPRTPQQSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} §¦¢¡¢¨©«¨¬©ªµ«¿«¶ÈÉ·ÈÑϾ pi«©
§¢wz~¡{v«³ }¤£§¶°¨lss{|ynf^[_^agc_gg\REKKQOIJMFFMCHLFFCBGDA:85<<899975658>75=84745754546958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f3A@ib^Pqu`n}aw}|ªªBD}y|
w_bP460-1/,.00./..0015>AAMQRSPRSUSNSLEE@<>=FH@A@8662<9;FHGIIMOQYmw£§ªµ½¸¥®¬¬¨©µ¬±·²²»±³¾³Ä¬»É˸ÿ·¥£°²¬ª£
¥¦ ¢¦¢ª¨¤
£ ª ¤©±£§·»¡£°££¤¢«°³µ¢¦ªz{~{e^fZc`]bb^fg_[ODJHTOFHLFKGFFHAKFCFFA:87=<88:974658<54<76:54644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicWjpXz
v
ÚÈsV|{
qna@E64<3/110-,+-1/-4?DANVQRTUUWUM\QGGD<>>FHCD@8;<5C;=FKIGHROPW ®£³ª²ÁÇÄ«³Å¶´À³¸¾¶¿´Á¶»»¤¸Æ©¶ÉǶ¾¹´¨£´°±§¯ª¤w¤¡«±³©¨®µ»²º¬¯µ¢±¬²µ¼¸´®µ ¨¨£¨©°³º¸¸¨¸©¥ yrW_bUd``a^_f`[UJDELVQIJJEJHEA@@KDBMF<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AEWQJL\ZQcdWzuq}v~{¿»£¼´z
zyn]W@EN<6:46AB764//6CHCQ\OQUWU]WO_UIKJA@?GKFFD;>@7D7?BJJEGWTP^¤¤²´Ã¶¸ÁÌʶ»Ä½³´Á·¸Âµ¿°¸t±´¦ºÅ¤°Æ¹±³²´¨¤¶¶ª± ¢¢¥±¥¬§¤ ¬³º¢¨²¹µ»¾Ì¿ÅŽ½³Â·º·¿¸º¸º±¦±ª®¾°½¼Ã컨®«~yhUa_VhchdV[cYVTJHGLQGDIJAID>?BBK@@MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALRWTYVZwjp
o{rxb¹¡£{z||}xzufO\dGEL:Qd`[^SF?;HPDZcQQYYZgZS`aMSOEA?IJHEFA@C=E6B?HGKMSZT^¯¸µ»¹ÉÀ»½Êͼ¼Á¼¸¶¼»·¾µº³Æau²¥±«¾ª¥¨«ª¤¢²µ «§®¥§§¥¤¢§°³¨²²¼¶Á½ÓÉÉÓÆÂÅÌÂÊÄÀ¾¾¿¼¼¸´°¹··ÃºÆ¾ÄÉ°º«¢¬¥©·|n]_^\U_]heSXaVSVIEFNKA>HD=KB=B@=F>;H@796379>489:57045/26389374526?8@>GKRTTRPOQRQJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@JMPRLQ]hmlqslrrtÕÀµ }~y{{yt}zkepvY]\Peeb`ed][XX\MdmURmn_o_XgeUYTKDBKJHFHHHHBI9D@HKTTV]Z\¹À¹¾¸ÆÁ»¹ÊË»¶º¶¸¹´¸µµ®¶·du©p^¢¡¢¤«¥¨¦£¬¤ª±·°¼¸ÔÐÎÖÏÉÌÒÌÏÎÊÇÀ¿ÂʽÁ½ÂÀÅÄÆÊÀÉÏ´¤¼±µ°¬¹½}vi[]YW[_XbbQ[aTRLCBFGE<@F?BIB@D=:E>=J?47535;=468977022/24169775555D3ELM>510006:477@IOJ;.&**(-.0,@M+/54mI0Ht?>BD@CDGKODR\Zi`onlotu³¬¡¡
|s{
{tt{ylmu|iseilhfjii`fiimZmt¤½g[oh]ZYTHKOPJKPKTQHLAJFKP__bgjb·Ç°º´»¾¶±ÅǶ°¹±±»³±¨«¸¶¨§N §¥¡¦¬°¨¯§³³ÓÔÔÖÑËÏÓÔÎÓÏÌÆÃÊпÊÉËÉÒÈÍÎÃÐÒ¸°Ä½Äº¦·»Ä¢laZ[[V^VXdYO\XOQCBIECI<AD>BH?@B8;D>@I=56655;:687654/10146278875367C5B8?-0,1348=97,.,1;FL=),(.0007K?-46TW0DwC;B>EBACJM?UYSfWshroyy¡ª¦}
|p{r~qyulpxr{nxslipmcinpyiw}~Ë¿Ãߧncxnd[a`KPRUNY^P^]NQNTQUT\nnwr®¸¬µ¨°¶«½Á²«µ¦¥¹§¬¯¡¬´¤±®§«¬¤§¢¬¬ÎÒÕÑÍÌÒÓÓÐÔÑÎÈÃÔÑÈÎÒÓÓ×ÍÒÑÅÒÖÆÁÏÈÈ鿸Ðwlc[`[T^Q\ZOOSPOI>AGBCF=AB?FE>@?:===<JB45465<888664412/03526768533;=<E=@11+/349?5901022-2EO3)/3.32=N248C}_2AtD:==I>@CFH<VRMO[uwlwp}~ ¡
y
{r~z
v
owsls}|w|sxqkrriprzyr{¾Ë²vr
wiai]DZZ[WfdXekTX]]`c^cx{ª¤¤¢ ¡©¦ª±¹«¦´£¢®¢¤®¢§±¦k¢~¬
§°¢ ¡¥¤¨ÈÍÏÇÂËÐÓÑÔÒÎÓÍÆÖÓÍÔØÖÖØÕ×ÕÊÔÚÍÊØÖÑËÄÃËpm`^]VRWRZOJGJJJ@;:;EBD=CD>HC?CB;<9<:GC46544<5687543250/2546745544<>=E?A62/-16;=081/254/-.;R017/532ED28>nb5=tM99@I<AD?A;PLFKYpu~isyr
x~xs|}w{oxqmuvx}t|ylvun}v
uy{µ<AÆ¥~}jeWICecfchjdoy[_fhknin £¤¦²¤¥² ¢¥¢©¡¢±~
zª£}ª³§¦½ÃŹ¶ÅÍÑÐÒÐËÒËÉÔÎÑÕÚ××ØÔÙØÍØÛÎÉÚÚÒÖ¿ÌÍ´uslb[WQSPXUEFJIFF=:7:@BC:HE@EDBDA;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?2*(.BT29254/7K75<`bA<svV87AH:?C><9QECJTlnopbqqt}~
}x
zyq{{
uzzp}ppzr{rnzuw}}u|°tYªÂ·pnc=^hrqqpnwweiorvxr{ « ¡¬¢ ¦¬
}
~ly{ª¦®µ¼¨½ÆËÈÉËËÏÉÄÒÊÔ×Ø×Ø×ÔÛ×ÓÙÛÖÏÛÚÒÖÉÕÌuwfeXWNQR\GBEII>B>=8:>@<>H=@BABEA>?:87DB755479.566435532323647553458EBDCEB56<FNSM[nfcnsk`V>,4LG865433BF4=W_hLux^8;?F<<B<:9D?CGRk_mdbflvqy~
|}~wyn{{tz¡vvtu~too
u|
zv|¸Æ¥ÃʸxpfNec{w
¡yzw{|um¦ £«
z|¡¼ ¨¦¥§µ¾À¿¸ÆÉÍÎÅÍÊÑÖÕÔÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÛÆvvdfa]RUUTMKDMD;=<<9:<?9=A7>?@=@>=9867CA6455=80665547745613854564567HH=DJE7925;H>;9:7HP\ZRUXK9T>;95327I8=NYMHxxd5=>C=<@:6:>>@EQ_Yfa]\itzylwvz|~~
{~
z
|v~um|}~t|~x~yot}
|~{©Ã ½¤~}ss¦
{iGq¡¤
¡¦
¥¸¡¦ £®¶º´«ÀÆÊÐÈÇÍÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Û¶vutgfbT]YROOHCLC==>99;:99<=6@>>==9::;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWO<MTHN?96333>C;[X>5YypZ<<A<=>8589?<DRSRX_VXfmmmiqsy{{||{}|~uzszsm~
~w¡n©
{ |~£¢¤¯ Wr«[¢£¢
¥
²¡ §±¸¬¤½ÂÇÍÈÆÏÌÐÌÎ×ÏÑÔ®ÖÕØÚØÚÚ×ÖÙÚlyqccZZVQUWC@ID??>:49:;7:;:3<<?=>7;9:1:G=:27=@50677255?65;55858:57735HR7GOK994=EJB>1FCLA98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcbxlb~onxxz{}||w
sp
{uwvt
}¦¢¦¢¨r²¨
£ ¢©° o·ÄȲ¢¦±d¤ÍÇ
ª¤£
¥¨¡¢²´¥£¼Á¾ÇÆÅÉÈÉÂÊÓÌÍÔ¨ÒÑÖÖÖØÚÔÓÚÎo{d`[\[MISYBAGD;B>837<<:8>64::<:72?:929I:>67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF>;88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBcGv}|m~xz~{wv|mn{}xx|~¢³§£«³¢§¥¤®¢¸³¢¡¥°£¤§¨¬¯¤¡À£É¸«£¦²
¨¢
u²¤¡} ±®¢¤·¾´ÅÇĽÃÃÀÆÍÊÉÓ¦ÎÌÓÒÑÖØÓÐغovrY^S^TNHIMEBCD5>:77:?<<7=42669774>5;5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=88567=:JFDGMZ\YJf`;Hzzn
z|x~px|~}orz~|x¦»¬¨±½°¥³³¨£¢°¬µ£¸¥¥©¸§¤£©ª¤®°ª »»®Ê¡j¶¸«°£¬¾£^ª²|}´«¡¡ ¥¯¨¡¥³¸¬ÂÈĶº½¼ÅÇÇÂÑ ÆÉÍÍÅ×ÖÑËÓmweYWP\PNEC><CAB8@885?G==6<35345454B49:BM:B;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPdHb`bpJ@~s}un}|}pww|©ÂÀ¯½Æ»³´À½´«³¶¨²½«»¥¨¹¸«¦¦¢¢¤£©¯²±ª¤¢¦¥¤º¯©À¼®²¹¥¤¨~½°z¨±¬¡¤¬ ¡§¦¤¢£°²¦ÁÆï°º·ÅÄÿͦÇÄÇĽÖÐÍÄÊ
po^YW\XLJAKAFG?A@C;:4>A==5=6>343241A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUN79GD?CF\eF`igZ]\{uo~{q~{z§³ÆÉ¿ÂÌÂùǽ»¯«¹»³·º²À®¥Á¤«¯¼½ª®«££§«®µ°ª «¡¯µ§£ºº¶Á¼¬©³¥¤¨
©Ääy¡¦ ¯«¡ ² ¤ ¥¤¦¦¤¯¥ÀÄ¶Éþ¶Ï²Ä¿Ä¼³ÑÊÈ´quiYUYgPLHBLKLJAA>DD<5AE;;3=8B332263A05IEN>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBeZMe\fTbkyr{xz¡¨º½ÇÈÉÁÒÉËÂͽ³¼¾¨º¿½»Ã·¬Á©¬³¼¾ª°ª¤¥¤¬®³¶µ¡¯¥¢£³½ª¨½Á¤¶¸¯¬²¬¬¬©¦¥¥uy
££ª¥|£¡µ¥¤£¡¥¦¤£©§¢²¬¨»À拾·Ì¿¹¯Ä³»¾Á¸¬ÂÃÂÀjv^UTYXJJLIFDDHCCADL:4DI:;4<8E.12352B26SHO<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQG7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>iH_XbZccV x
¡®§¤Â½ÇÃÇÅÓÎÎÍ˼·°º¼´½Ë¼ÃÁ¶·¼³¿º½®¯¨ ©¨¶®©²·£§¡«·¸ª¥°¿Ä²½¹´¨«¶´®®¥¬¨²Å§||ª¤¡£¢Z¤e£²¥¡««©¦¦ ¤¨¥¶«©¹»Ã´¥´µËÀ¸ª¶«²»¸®¨¸º½¸hkWTRSMEIRMK?AHEEHHH95EM;>8=@J.32025C55OVN<LFKRLOHGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|gV;>@BFBpEjIReaLF¥¢©¦¢¯¾¯¡Æ¼ÄÄÇÆÏÏÎÒÊ¿»¶±º»»¾ÏµÃ½¸¹·³±µ³¸³«§«¬¹ª©§¯°£¯¥§£¥µÀ°¬¬´¿ÃºÀº´§º¶¹´¯¥®®¤¡tÂ}±¥£ © `J¥U° ¯¤®ª¤ ¥ §¢´¨ª³»»»ª±²ÇÀ¹¦¬«²²£¡²²´¤mjbYWMOJDOOPR;GKIGICC>:KU?A:=EM07534:B44MWO;JKOUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@BAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}hW;:BC@=QEWSsbWFHª ¢¨¯¨
¡£¤µÉµ©Å¹ÂÃÈÊÉÈÍÍÆ¿»³®¹¹ÁÁ̵ǺÁ¹µº°¯¯³µ§¤ª´µª©¦¬¤®¥¤¨¬»¿¨¬¶·¿Á¿¾¹³²Ä²¹¾£¯µ¬¹¦¦v¿®¡ ¡¨¨ª¡§nv¢¢®²£ª¨ª©£¢¤§¢±¦©«¹¶½²²®¾¹¶ £§¨¥¦©©`b^]NJKFGMJVL=MENKLBCD<QV=AABDO18=77?B75UXO?HNQYSPQUKQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=.-R`MUH~e^HE«¢»¯««¡£££¶Æ¾´À¹ÂÂÇÉÅÂÎȾ¹²¯¹µÁÂʵƲ¼µºª¨°££ª´»¦©¦«ª©¯§£ª«½»¨½µ¸¾Ç¼·¶¸Â²¾Á´ªµ·«¾¥£¢ ¼ ·©¥¢¡¨¤³ ¦¨ª¤¡¢ µ¯¥¤¯«ªª£¢¨©¤¡¡³´º´¨µ²³£¥ª¡u]Z][HGEFLQIMEGGBSLJBEGAVSCH=AGQ1;B7:BF79\YKALPTUSMWRNUJE@JJNO9C@5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-19f\FCCpbGE§£Ã¥ªª§¦¬¢«¶Ãü¾¶ÁÂÀÇÄ¿ÍÆ»½¹²°¹³¿Ãȵ¿°¼·¹¶¦¤«¬¡¡ªªÄ¢¤©¬¦¬¯«¢©©¾¸§¿²¸·Ç¶µ¹¸À³À¸µ³´¯¾££®¢£¥££ ½¤©¨«¡¥½¡£¢©¬¡¤ µ¬¥°¦¯¥¨ ¥¤«±µ±ª¥ª®¬ ¨e_W_[MHGJNLHEDIA>QIA<GIH\ROK=HOU4BF9>HG5Ca[KBNRUWVQXTRUI@8RQPM:GA4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,/Mv\4KZ5,MnW<-=)#zbQ5CKQ9mRF<KxeaVK¢£Å¬¡¬® £¤ ¦©¬¶±¢ª³¶ÅĽ¿µÀ»È¿Êǵ¸µ´±³´·ÁŶ¾±¸µ¹´§¬ª¬¥¤Á¥ª ¤©¯¡¦¨½µ¦±½¹·¶Ä²´¸º¿´ÄÁ¹¹®³µµ£¥¡® ¢©¨¬£Â¬©¬®¦ ½¡¤«¬¬¦¢W¥¡ ¸ª§´¢±®¡£¥²ª©¢¢¥¥¤_bXb_KGJJNFEAGK?=JB99JJN]QQI=LV\9FI=DMI8Hb\LCLPSYYVWOZ^IA=WQIK?H?5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWrGE6=ue\KM¡Ä¨¥¢´¢³§«¥ £¬©¬»°¨¬¶±ÇÅÁ²ÃýÆĽÄɼ¯°¶°´¯¿Ä´¹±°º´¬¨±©ª¥¡§Â¬±ª£®°©¥©¼¶§·»¾¯·Ä³³ÃÀ´Ç´»¸¬´¶ª¢¦¤¬¢ §ª°¯¯»²¦ ©©¢£¸ ¡£¯°¬¥§¡¢§³¦¦²¢¬¡ ¦«¯¤¦¢
_cYfdIHLJSBC@IH;;F?99OMU^RSJ>O^]=HPBLLI9Mc\LELRTY[SUO\bHA?ZQAHAKB7FELKM?;BHDNB=;N@A3/97CB97F;+6<46<25-/4@1+'VtSeO?104b[M23>0<v]^?[T^eq@8;HweA4£ 餪³¢¤µª³¬§¡¤²¬®©»²±µ´ÆÀÄ´ÀľÉĵ¿È´«µ¨°¹¬¿Ä³·®¶¸¥ª²«ª¦»´¨°¬ ´²¨«¹²¨º´¹³¸Àª·²Ä½µÇ¨¿¯®¶µ©§¬¡¦¥¢¢¥®¸®²µ¶ ¨¤¤ ·¢¥¥¯²²§ª¦¢¨ ¡®²¢¦¤«¢
¨©ª¡§¡
wbg[jiLONNT>CANC;:I?77RO]_RVQAW`\BJSHVKH:Td\NFON[W[RPQX]GAB[PBG>NC9HGHOP??CIBLB<2IA94177B>;7E7+6914801-/.<6-#Bqgsk23/1[bZ33806p[bH05IohUCWFyfC;££¡¦¿§§¯±¡©¶«º±¬£«´¶±°¹·°·¸¸Ä½Ãǽ½ÄÂÆÀ¸ÀÅÀº©¶¤¬»Á··ª²º¢±²¤§ª¹ª¦°« ¯´³«©¶¶¼´³¹·¬¸±Ã»¿¿¦Ä«±·¯¨««§«¡¢¡¡±¯³¬°¹© § ¶©¦£¢±±´¬³¨¬ ¥¢£³°¤¨¡©¨¦£
}igk`lmWPQ[UABET@<;IA7:XPd^PWWEY_^MLRN^KJ>Zc^NHPO\UYPKTWZI?DXPDF?N@=IGGQPB=DFBM?:1D?77547?=95E4+75/251--.,1=*'+=\p=>1.0dZd@1647gY`F(?8l}g[V;{cC=§¢©½¢ª°¬¤²¸ª¦¶´¬ µ½¯³¸»º¾·¶À¿ÉĹÄÂÀ¿¸Ä½Á·¯µ§«·²¼¾¿´©®±¶«®¨®¦¨§»¥¬³«¢±°³¬©¶´µ¾®±²µ¬°´³Á»Æ·¬½°±¸¬¬ª£²¦¥ª ¤³ª³««³§¡¦¤´®¨¡®®±¨´²ª¤¨¤¢¨µ©ª¦¥£
{dkqfoq^FYgVDBMXDZ9HB6>\Qh\OY]G[^]OMRXdJJC\b_PLMNXWXPJVVWL=EUJEDAM@AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,,%2+*5K1/'__`U150=`V^8)C3YU\gK6zfL@¤¡¥·¥¬ª¦¯®·ª¯µ»§¦±·Å·±¶½ÁõµºÄ¾ÌƹÃÀ¹¾¹Ã¸À¹²´«©º¶º¹¾´ª°µ§¬©¬«««¾¬®²£« ±³®®¶²¹¸ª®®±¨µ¯µ¼½Ê³ª·µ±´¯®¦¡´ ¨ ¦²¢ ¦¯¡¤£¥¨³ª¡¦³ª¶¥¯²µ¯¤¬§«·£ ª¤¢¢ z
{jmwmu{aFakYIHZZ={JFD6AbTi[M\aK\]ZRRRb`LKE_``QLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T_T_/5(C_Q\.+B/JGP[G3cYTKD¡±©²ª¬¦¤¯®¶©·µº¤¬´·É»´»º¿¿´³·ÃÀÌȼü¶½¾¿·¿¼±¼§º¹·¶Â¶«¬±·¦®«¨£°©¯»¤±³§¨£²´±²±µ±¸´©¯¬²§·¯·´ÄÆ·©¶¶¬°©§£¶ §±¡¤±§ ª©£¦¦¥¸¨£²µ¬¨²§®±µ¬¥ ¬¨©¸¢¤ §¤ v{lovt{~\Lfm\JNd\?b{GI8GgWf\L^bMXYWUWTi]OOH`]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANGf27'GbLV%-B.=ELQ<3rkICC¥¯¥®¯«¨¥±³´«·²¸¡«µ¹É¹Á»Â¸³±µÂÂÎÅÀÁ½´½¿¿º¾¼²Ã§©¹°¶¶¿¼®«²± §±¦¦¯¥²µ«±²¬©¨µ»¬µ³µ´ª¬¨¬©¹®²±ÈÀ¹¥º°©¬¬¥¨®±¦¥£¯¤©¯£££££ ¢«¦§¹¥¬µ·¥«¬©°¶®¢£©ª ¤´¡ ¦v}
|{|prq}|}\Sdo^NYg\FD[G;NmXb[L`bNVWVWTXg]QRLcY[TKGOTSNGIVS\N;P^IBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/+1()+,-*&5*/&0)38:1&*3Bc:6*HeHJ+:H>3BHS,>k;GHª«¢ª±¤©¥³µ²µ¶²²¡«®½ÌºÀºÇ±´´ÁÃÑÅƾÀ²¾À»¾·»Ä¦¬·¬²·¼À¯«±¬£§©¨¤°£ª²ª°¬°¯°®«³¼§·±²©³ª«¥¥£ºª²Ãº¶»©©§¬©§±¥ª¤£®ª¨¢£¥¬¢§©¢¦¤¬¸²²¢ª¢ ¬¯±¬ §§©£ ¦
¤~
|v~
rqpuk_Z`nbQsq\K;|F?XuX`ZNd[NVVUWQ\a^SONgXWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*25>10485(5/*,.30;),,'%234$,2-860)(1;\J0.JgDF8;B05EKX1@Y=LE¨¢«³ªª°·¸¶¯«¦««½É¼°½¶Â¯±«³ÃÃÎÏþ¿´ÀÂú¿³Çê®·²¸¾¾²ª¤§ª°¨§¨±¥´®«±¯²±´¬´¼¤¸³¬¯¨«£°·«ª»·¥·¶¤©§««ª¡©§¦±²¤§¥¡¡¬ª¡ ¦¥¢«¤£§±¸®®¤¦£ª«®©¢¥¤¤¢¢}zs|ru¤xk_`nfWecN?gLEbyWbXReTMVUVTO\]aUKNhVVVIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*39?./463)4+*,+.#4.-+&(+79*&6+<-2,&06VZ.0JgAA<<B+:JO^4D=GFD°¦£«±«ª¶¬¶²¬¦¬ª©¼ÀÀ·¸²»µ¥²¯ÃÉËÑ¿À»¹¿¾Á¹Á¹ÀĬ±µ±³ºÀ¾²±®¬ª«¨¶©¦®¯ª¹°¨²²¯³·ª··§´·«¬¥©ª£³³©¨¤´µ ·® ª¨ª¨«§ «¬©¹µªª©©¢ª ª¡ ¥¢¦£ª§´¯©§«££¥§§ª¢¤£ ~
¢txt~yv}orgfpw\askO^VHnyUdVQcOMVTUPOX[bUHOiTVSGPYUI>IHOQPxLMV=<KD?@A<@CUC9AK=5;E13;:7*4:=+-341*8**+*,))(/*&)%3;,$2)2021%/2Qb02?f=NX>C,>LT_/Ji5OD<±¢¦«¯¬¦°´µ°¬¦°ª¨º¾»À°¹®¡¶¯ÈÇÈÑÀ¾½»»Á½ºÂÀ¾¿®²²²µ¼»Â±±³ª³©¤´¨¥³³¹°£®¸²°²»«º°ª®¶¬ªª¬£ ¶©¡°³¢µª¨§©£ª¡¢¬¨½¯¬®¢¨¨ ¬°¡¢ §§¨ª±ª£ ®¢¡£££§¨¥}£wt|uxyysrxf¤vi_djtg}SXo^JxsSdSQ^MMRZfNLVYdXGRhRQ?BNQaQ:IHLSIqQLS;<I?;<=;@@W<<?H73CB15:93-5::)-31--5)(+-,42#2)',%.;.&1.0-14%,0Lg:48_=ad?F1CP[[*HM9U@4³¡¥§¤§¤§µ³²«¥±§ª¸¾À»¯§¹ª¦¯±ÉÇÈÑü¿¾¸½¾¼ÈºÁ¸°¯´±º»¸À²²º¬¸¬¢´§§¬²·º³¨¨½¶®¶¾°½§®¬µ¬©¯£ ¥«¨«³¥´¨ª§©£¨£©¨©½¬´°®ª¤ ®³£¤¥¥¥©«¦«¢¢¥¨©
~
~}
¡~r{z~|hx|ytoo{fxdagarzmgx]^T?W{mTbPQXKLNru]HZ[gYEUePD>JODCA9HGKS?jbJQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11'/>KH0%90%,,09/,,+6'17#-0GjI14X=fbAJ7GS`U*=9DW=*² ª¦¥¡¬¥¸³³¦©±¦¬¸Á½µ¯¢¸¨¨°ÂÉÉÌÁ¶½À´·¿ºÈµÂµ³²µ²½¸¹½µ¹µ¾ ³§««°¶¸µ¬¾½ª³Á´¼¡¯³µª¬°£¦©ª¤¥±§° «©§¡©¤¨¡¼¨®±®¡«£¤®¦¡£¤«£¥¥ £¥¬{{}£}yk~vyxc|zpooqvgsiheg_lslaio`o=ZykU^NPQJIMTZWM]^lWDW_O^PHMDF;7HEKO<rhKK9AE;;==;;=J49B<3;G<4?18-68;2(09/,4/.=-*K>)49&'.34.0+/4&,:$41AhY14S=e_DL6KVdO*;1NW=#¡¨¥¤ ¨¤¸°¯¤¯°©«¸Á¹²¹¯«¨´ºÈËÈ¿¶Â¾¯´½·Ä¶Ã²®¹²³À´º½·¨¹¸½ª£´¨©ª±¯¹±«¼½¥°Áµ¶¢¯¶µ§¦§°³¤¦¨¢¥¬¨© ª®¦ ¦£¨ ±¹£±¯¡¬¡¬¤§¦©¤ª§¡ª¡©|~}| x
|
|sp}qtt`zxhmoomh}qb{mieb]e
~_ZsjqJIiXZMPLJHPRQIO\_nSDXZRhOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23.:;83&2<0,85B*)-B*,4;NN@;73-.+-7**<%53<fd24M?e]FO=QZgH*>/WU5(§¡¡¡¥¢¸«²¥´´©¨¹Äµ²·®°´ÆÈÀ¶¾Á¹°´¼¶¾»¾¯«½°´¿°¼Ã¹¨»º·§§µ¨¨«±´±¨¿¸¦¼·²±·°¨¥§¯±¡¤ ¥¥ °§¡£¨¯¡¡¤¤¢·°¡¦±«¬£¯ª¤©¥§«¦¢¨¢z~zx
~yzprwoot_ywdkkjgglerkkdhXas^ZluiYE}][XOOKHHRUG2:^^lPDWUYeMHJEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<#8R=*113>D5,-'42+;+139cl84HBf[HTCT]hE.;1^Q,2¤£ª¦¡£¡¸ª°¡»¸¥¬½Ä²¯®¢µ¯¯´ÄĽ³¾º·°³¹¸º¸º®¿³´¹®¿Á·«½º´¥¢³«¨ª³¬®²¤Ã·¦©··«²¼ª§¦¨¯«£§¥¦¡³¦¥©©¡¥¤¹©¤§¦¥¡¨©¡¡¡¡¡£¬££§¤y|
}x
{w|lurmlsbythfifcmfghdfhi^ebifZezb`PsT[[SKIGIOS@!+i^jLCVU^`KHGEC.:B<F<6KPD8:D357==895?:;4>8@L=>93)8><:9*6@3.E4(+,>0-N?.+-7-1195,&.5-80576`tB3CDh[KWGU`hB377aL'2¤¥¦§¤¶¨ªº·§¬ÃÀ¶¯¬¢µ®§®¯·ÁÀ½±Á·°®²¶µ¹¸µ¬ª¼´¯²±½À·®¼¼±¤¶¬¦¦µª«¯¡ Ŭª§±µ¬¬µº¨©«±¥ª§¥¥®£¤ª¡¡ §¶¦¯©®¡¡¡ ¦¢ ¦®£§ x
w{~
{
s}gypkklguskagcbsacefeiibeoY^X\lcaLgW[`VIGHKMRX>9`liGBUS\[IHFEA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A<-5B37=+*,/A*JK./*+3722(57$+7.72685\yN2>HiZLZJVbfA:3@bF%5¤¡®¡ ¥´²£²¾·¡±Æ»¹°°£¶¬«®©¹¾½»À²¯¯®¶®³¹²§«¹±¯®³¶»¶¯¹¾¬¦µ« ¡²¥«°¦Å¡³¦°³°·®µ®¬®¢§ª¥§¦ ¥£©°¦¸§®¢¡£¥¡©©§§{t
|
ogynhkjgqrk[hcar`dgjnkeiecl\lluqaSbhceZIGLMOYQPUaeT@VRZTFGFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.4<;K6/.+,-24:5#3*)6.55465Z|]1:Kj[M[KXdc@A1HbB'4£±¡©³°¹À¶ ´Â»½¹±¦¶°©®¥¸º¸¸¬»°««·ªµ¹¤²µ±¯©±¶¶±³¶»§© ¶©ª£ª®¬Ä¯¦°±·¶¬±¯ª¢¤¬©§¤ª£¥ £«ª¨¹§¤ ¡k£q¥v¬©¢x
mi~wql}o]d`gkuxfhvifX]itnNPjcfqf]dfnkh][]
hOKC8ETg^JHPPUVKHRapteF[QUPFGFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,,08>G701.*.*/668,#1'214:276Xl15Ok[N[K[fb>G1Na<+/¤²¡ª®«£½Å¯©·Â¸¾¼§¶±¦«¤¸´³³°¹®ª§¬´¥±µ¢§¸¶µ¨§¶³®´®´¢©´«£¥§¨°¿¨§±´¹®¤¨ª«¦¡¡¨§¡¥¦§¨ ¨ª£³¯£¢££¡¡¢¥¨rx uif~sx o~|¡ {tvlmhdd{mrbTmcmiqXipnW]hZkjZplyrhY^FM>F^MERVVQPRWTg^LZLRRPEFG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82*/1<I:/01.*/(-4583%&2115>1<8Xt15Rk[N[L[g_=K1T^7/(§¬«ª¨ª¿Ã¯²º¼·Á¿ª¤·±ª¬¦´µ®¯³¶«©¥±¥¶³¬µ¶´¦§¨³±²¨®«¡³© ¤¥¢¥±¸¦§§·¾¦¬§©ª«§¦¢ ¡¨£§£¥¥ª£¤¦¦¡¶¤£ ¤®ª£±¥®¡zÔ¨ÀÆxw±¥·dÀ¿yy|Êq¼Å{r¶§º{l±«±yhlX±®oei¼¼nhzmqØ}Rkb¶²}pu¡ªVNXaOVNFU\XPPS[W[P@\DPNCFI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww11Tk\O[M]g\>L1Z[41!§¨ª¥²©±Â½²µÀµ¸¿Â«¦´©¨°µª°¶´¨¨¦µ¥¨¹®²²¶ª¥¤§²¯®±¦«§¤²¤¢¡ ¢ ²¯¤¡µº£ª¨¡¤¢£© © ¨¨§¢§£¡°££
¯kjªh
fq©q®¡¤~wº|k v±_j´[¥e`fzfixj©e¾rg¦v±j|±xucmm§n\ EigEu`}f{£¦X_«h}xzj¨8J¯[XTmcZKOX_\VV;NPWV/ISSJCEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3/.53/+/(.0.:6/'$203B/=;Uv2-Vj\OYL_gY:M5^X31¢§¦£¤«²¸´½¾°·Å²¸»Ã§©°¬°©ª±¯¤±º°¥¥¯³£ª¹©²²°£¥¡ª°¬¯¦¨£¢±£°©¢ µ³¡«¡¬ £©¥ ¡¨¤£¡ ¬¥¦ ¡µµy©¶w³·¬k¦z
w«gj±[¬{tpx
°vwqkkm|O¥XHcc~ch¥_yquR]P©ncp{
a/R¢n[Tkg`LK\dX\ZB>°wWXA#MiFBDA@A19>88:84;:9<9:A:E::;6:CB8=?KNH:5:AFBAAD<FD;0201;F,0.840,.(/3,>831/2-D1<<S}n3+Xj\OXM_fW7J9aT50 ³¦¦¡®©¨³¬ª»¶Â°¼Ã¹·Â«¯¯§¯³ª¢¯¼«¢¨¶¤¬µ¤¥²³¨£¢§ª³©°¨¦ ° °¤¤¨µ¯¡¨©§ª ¦©£ £¥¤£«¥¢ Õ¹q±ÂÆ}Ö»}¨¤{¢¥y«yV¯{~j¹Z¹w
}¦|zªy{±mt»oP¯§ÅQ zc`ªbsrk^Rµ´È
~|c¤3Bv]QjhdP@XfYdaJGLjJZSOYfZCC?E?0<<59<74<;8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DB./0483+-).323971#%5*>3==Qwj6*Yi[J[P_fT7H:aP72%£±¨©¥³ª¥´§¤¼·Á°ºÀ²·µ½´¶¨²±¤²³¦ ¯¶©¨º®¤°±¡²´±¡¤¨©±©´©¥¬£®¨®±©£¬¢§¡§¢¢¡¢¡¢£¨¡§¡¦¡²nhµr¬p§s´ut¶{¦£~£~°uÒÒu\®|
¤nª¦j
}}{±sy³et
nfRÉZÂ\yb__vsa]YÊoÀtMKµSUÆdVRjceXAOj_liPUFH9=WR[VYHB?J<2?;5=<56>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>II:1746@>/.24252-).26,742&60;5:=Pqh9'Wi\ANT_eP5G=aM62.£¥¯¥©º¬¦µ¥§¶»¼²»¿¸·µ¼¼´¦µµ£²²£ ¬°¥§»®¥²±´¸ª ¥¡ª¥²¨¬ª¥©¤«¢§«±¦¡¬¥¡¥§ ¦§¢£ ®¡£¥£
¬|x¨w£©p®¨£¢}®³\r²S¯}£~q×}w~w¯w´ael[°WKuyf`^vwgj]¯wwl5yÈ®³`DUo^g`EPl_pmVUM.echRYP;AD@L:5?91><16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@=V_cN6GB`I:77 ·±³Á¨²§ª²º¸´¹¾¹¸³·¾¶¦¹µ¡µ ©¬ ¨¶¬¨±²«´¤© ¨¢µ§¦ª¤¥¢¤¨§°¥ ©¢¢©¦¡¦©¤¡ ¢ §©~¦y¡ªp§¡¢£ªzyp±Z¨ xtØvt§¤|{²^d }n\«\[hgªcr{jq]«Z kndOJC¡\[Mt]bfMZa_rt_JU5JXHE=HFAM35A8.;>05A78@<6=<F?:<6?=B7.HVJE@H6KIN@IK@EN::@4.;>002154+*05/7,&21($$6671<OedA&Uf[?1T_bL7FH_C1=7¢¾³Á®«¨¦´°¸±µ¿¹º³²¹¼ª»¶¡²¥¦§§«²©°ª¶ª¯¡¢ ¦¤¤º££¬¡£ ¡¡©°°¦§¦¤¨¬¨©¨ ¤®£¡¡¡ ¡¬®nr´t©w¦t´zu´¦¤¤u¸n{¢kk¶Z¡eh ¢§mr´s³j
ju´af¢nk\`N¡|Rs£ly~no\¯V<weTon.[§ObRkeblYb\`p|cSYQ>?lo2BB@?M:!7@6.;@37C58??3;<CDBJFMIF62JTKEBJ6IJP?HOCFP=<E50;;010/75,+,326/#00,,289/9N`eD'UdY>/U^aL5FM^81A8¥º£±¿®««§·©¸¯µÁµ½²±»¸«Â·ª¬¡§¤¢««¨¶£³¨®ª¡¨ ¥«¸£¥£¡«¶°¦¬©¦¥£«²¤ ¨¬°¡£¡ ¡©«Ô»u±ÄÄ~Ö¸y§y¢¶u}wv²aºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¡~t«}¾ns¼t²uxmpm¤t½]w}[ay¼jZV[iy^i`dfbmyoX[YCA@q?CG+5H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,;:08LXaF'TcX</T^`K5<L[-6@9§¢¼£°Ã¯©ª¬±¨¹¯·Å±»³¯¼°®Á²¦£¤¢ª¥ª²¤µ§¤«§¸£®¡¦ ¤¯¹±«£§§¥¤ ¨«©¤²¢¥¦¡¡¤° ª
¶¸x¶wnlotoyrÀ»¼{²¨pt¹|{}¤»¹½uy³£tvut°ufi¶trqw¶^y}gylyb¬pt
~X[§iDdYTf_c]cQgfqmuBMOLD;ZL?J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7KT_G'SbW8*O]]=+;VV'=:<¦¡¡¿¦²Â³«ª¨¬«ª»¯±Æ¯µ´°¸§µ¹®«¤¢§ ¬¤®ª¦¶¨¨¡¤¬¥¾§¡ª¢¢¨¢²µ¶¬£¤¢¦¦«©¥¦¡©§§£©¡¬¢°©§¢kj©ytv{f{¾¿Àºoq
_rjZ^ack`cmvbke^`cqhr|fj~ptx~}b[xthP\n||jXlyrIJo
pNrMDV\f`LZWfc_OZmvjrRODEM<HI<L>2,2A?8/5?C<9;@;=C>RVVWYZ[[\]`aaa`\UG5CFUEJOHFPIIH;8=51:.1;:./-76=5&"/*2,%;8-7IR_I'S_V4)P^L(3>\O'?2>¨¨¡Á¤´¹¶£¬¦®§¨µ²¬È¬°´¶¤¾±³§¡¤ª£¬§®¤¥µª¤¢§©¾¨©¥ ¦©¨°²¾¬§§¢©¨¤¬££§¢ª¢®¦ ±¥¢¨¤¦¨¤hn}rw´ª
¡z¤
li{}urxyvv|jstudw}vkoyl_b[ogMXYfj_WYpzomfSOFR9PZNRO(+:KB635=@A9:C><ENSSTVWXZZ\]`bba_^^[TKCSGKNDGPLOI<:;489,2;820)6IRO8")+/2#4;*7FO[J'R^T10T^:+=8]K,<-@² ³¢¿¢£°±· ©¦³§¥°µªÉ«²¦µ¦À¨´¡¥¦¥ «§£¤·¬ ª¦Á¬¤¢£¨¨¨²Ã¯«ª©«¡¡¢¥¯¦¡¤¨¬¥¡°¡¢§¡£¤ ¡®|©¨
{
£e¡³®w{~wyzogykuyrhsyujtbxe_hdcdfjXk{qjk\SLPD_UF@??,4@F;45;>A;<?>>HNNOPSTVVXZ\_aca_^^]^]XVJKLBIOMRJ;<:786/3964.(&$-1..)+*7%+<(6CMLD/T\Q05M[17E4\G5<,@³ ¹¯¾ª±² ª¦²¢¬³°Å°«¤³¯¼¤´ ¨£¡¨¦©¦¤¦³µ°¦®¾¡¬¢¢©©«£´Ç³©¤ª§© ¥«ª®¨¥£«¡«¡¤°¤©¦ªf}ecylhjz£«je~h
eeihz¢kh¢wkj¢slnzyXe]
^lw\gswwoxxsmysvzhX]jsd]sik|qmc]QNWIdX@J3=F7?FD71<=?AC;;DGHHILNORRTW[^`aa`]]]]]_]ZUODHOKSN=>==6535554*&&%,*%.++'6*$;'/AI[J.6ZO6)EY/DO1YB;?.=¤º½¹¯«³°«¥¨®°¦®®°½±ª¨¥®°° ¤¢§¬¬£¦¨©³®¤£°¦¶¹¥®£¢ ¦{¤«¢¨´Ã·¥¡§¯££¤ª¨¡ ª¯©ª£ª¦¥§ ¬¡¥±¤¬¢¦ ¬~½s´s
hw¹Ä¸q¡£z¦tª|ËÀÀºq£}À½ÁÁ|zÂÀ}j¥²ooÊzxwyyq{pw
xlube^wc_eb^thmdbXKVIQZHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^__a_^^^^___]\SMPGUNA@?=6468266*&%#)*&.+*)109*#>I[L*#CP/#F[3PY/UAB;/8¢¹Ã´¯¯¿©©£¯©°¯¦²¶¯ª¦§¦±« «£ ª§¢«¢¥¨¥¥´¤£¦®¸´§¯¢¦ ¡ ¦«¤«¿¿±¡©¯©¢£¤ª£ ¡¬®¨«¥£¡¤¤¥©¤©®ª«®£¦¢¤Îz{¥z_]¨¡¡|§u«¯^dª{¨
t³c« ³j¯t|¸aY£Ínv{Û{q~ve{vvl~m}
}k_pjof`_xd[qhjdf`RTSW^JOC5AHED8>5;@?A;=8@>??BDDFIJLNPROS\^__^]]_``__][WOUJ=?><5578164('$!',&&/(&+360$7;SL+,-J0';[:L-!P@F4.1¬ÁÀ¿´´°·£ª©µ¬¦²¬¬¤¬¦°ª¡§¦¢¯¡¨§£¦¡°¬¦®±«¨¬ ¥¥¨££ª°¨¿Å³¨©±®¢¡ªª¡®¦©¨¥¥£¡ª¬³¥¢ªª¤§§¢²¢§¡¡r
v
¨q±|q¬} ¥x«~r¬v{|~ª¢}«zzVÄ{pÁ}mupmfweoawnrnlcmsuo`fmd_oijnfcWS\`ZRRC9II@C<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1''45-&7=WJ-<(=1)3V@F!G;C1-+¯ÓÆDz³££¢¢¯·¯©±§¨ª¨®««§¢¤£¦« ¢¦ ¨¨£°¨§¯¨§©¤¢¡§£¯¬¢¬µ©¹Ì±¦®«¢®¬¡©±§¨¨ª§£¢ª¯±¢¨«®¦§«««³¤¤§
¤k¤uz©u{²q¥p ¤_aR«
®u®¨z{f£¤£}©®^{¨U¢z£|Ä°Ås¯´³¹rb©¯Âuhkmkxxwnkfddqqf{ic\V_iXXTLLQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ''!+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÂÉÕÖÀ¡«¨¡¯¢°´°°©£¨§ª««¨¤¦ ¥¦§¦¤¬¢¬¡£¯£ª¤µ°¯¡©§¤¢¨ ¦°¥¢¨±¬¶Ç±µ©¬©¢ ¥³¡§ªª¢«§ ¡©¢²¬¡ª³²¢«©°°¸¥¥©}ªmv«y|°n¤Ò¸´¸É²_a©¥ zyªÉt£¨©~ÆÆwe¡¥s}¯^oµc±uK£m§Gd{o|myt|zm[ejrqfi^aXcm\^YILLJEDBA=A<A?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75785/)(%&%$&),5FNPPMFLJVF*L0/>-4NTQ;<F2,$¨¤Àƹ©²®¥¢³¹¬«¡¦¨¦ª¬©¦ ¦¥«£¯¬¦¡©¥§µ £¨«¶³¬¦ ¦§£ ª§®¡£§©°³Á±²©¨¥¢¤¯¦¢¥¥©®¬¦¥«£¶¬¡±¹°°¨´´µ¦©¥¡Nwz£|¤¦¸||z¹ÌÆöw¢~v¤¤¨~¯
¬}a¥l£p
}r¬`¤sqa¼}RUu¡z|ryr~o[lnwrjnZc_hnbd]LLQSAHGFH::K>B108856877-*5==?BDGILNPTWYYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOTF<E2:P[T6?G,- ©¬¤«¹«¯ ¢¬³µ¦¡¦¯®®¨§¥¥¤§¡³®¢©§³ ©¤£µ££¡©µ¹¤££¢²¦¥¡¢¯¤¨¢µ±Â°ªª§£¤¥¥£§¡¬£¤®¥»¬¢·¶®¶³º³µ©±£¦ ҵ÷z
¦x¢w¡
¥r«´nri¤}s®¥£¦mp²\¥szl{~n©a¢rr~bs²¸hw¤|u{xlhwixsnt\ddmmfh`JZWX<HF?S3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^``]Z[ZXURRQF:2230/++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH#)%r®¿¿¼»µ¨¤®¶¢¢£ª§©ª¥¢¦¡ µ§¢©§±¤«£¤¤ª´´¤¥©¯ ¦£§µ ª£µªÂ¯©«©¢¢¡¦£¦£¥©§« ¤¬¦¼¬½°£±´»¶©«´¦ª|¨}|°x¤¥m²o¡|¢¨¬
¨ £
{~««w y¯]£|¦§d|tk®]¥lr
]`[ m¤wy~jl~b}tmy_gepohghBY_Z=JS2S8AAC7$$3+''3, /667436:@CFIKMNQSSSVZ]_a`aaa^][ZXSPONI8152.*,ATVVVTTUUUUTTUTSSVWWXVUVQHFIJ#((¼©Æ÷Á´ ®¹¦££¤ ¯®©£¹ ¢« ¯ª®¡ª©¥®±¬§ ¨¢¡¥¡¤¨¥¶¨¾®¤©£ ¦¥£¢§ªª¡¢¨¨¼¤Ã«£¢´¼°©£µ±ªw¯~
}ºd°e®}¡§
°§¤¢¢
\lk³`|{²lfn±Z}´[¤kÈ¢f{»YvµZ²}S¯z¬X¡m¦xw|cs|bwt|ajfpmfeeOUc\AT]=H(>9=4!!,$2. *1/04579:<ACFHJLNPPRTWZ^```ab^_\[XUPMJGC553./@UYXWXWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³±·¾»´Á³£¦¥·© ²±¨¢µ ³¨ª«°¬®¨¢¯¬©§£¨®©¡¤£¢¥¢¨±¨»®¤¨}¡ ¨§¬¤£¤¢¤©º Ƨ¦©¡¬¶·®°©¡¾°¯¯ª£¯¤¸Ãº
¨¬¯¨¦«~սªb¤¿½}£×º·µ½¾j£o«nz²±Çk«°½¬yx¢¾»t¤wyb|ydfx{`kekjbPb[Si\@T`BL)<:4/$%2 $(0496678;>ADFGJKMNNQTW]a\__a^`[\YTQMHC><A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ»´´±Àº²½³¢®§¦³¦¥¿©¶¯§¡¿¦¦±±¹¨¯¥§¯¬®¦£¬¡¥ª £¦§ ¨¢ «¬©¸¬§£{¦¨¨§¨¦ ¢ªº©Å£¡°¤¬´¶¬²¬£¾«±±uvª¥·
epg¬nnw¥ v±qr©¤¯¤rlmmfxomqzipigqhi
gqd]cioZ]g~x¦`brpfd z
tdwgjx~ydlcflbKeWJkY:PdDP'J9+# ",)-2.5:457:<?ABDEHKLMOQSV\WZ\`_a]][TPLHD=:AB7MXYZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨´©ºº²´ª©¢®¤³ª½±ÃǼ´©¿«¬£ §« º£¤¬¦ª
¦ª¢¤£ ¥¦©£© ¥¥¦®¹ª¬{¦¦§¢¯¥¢«¹°Á¨¥´§±³¬¯®ª¼§±º¢©¦¶¢©ª´¤¢´¤¢¢£¢¥¢¬§¤~gtwtq§m}
phvowv|yiledodUaX@iZGb_MX+E=+&!640/ %2(*799469;>?ABDFJKKMPPQWUVY^_ac]^TQJEC>9=@ASX[\YWXXXXXYXXZ[[\^__`^^^__```_YY`¥©ª¤µ·¯®¢°¥ ¡·±ªÄ¼Ã¹¶©¡¤¥°¨¤·§©µ§¨¬£§¤¡¨¤¨©¦ £§ ´¹§ª|¡¤§´£¦«·¨¯Â¯¤¸§°°²®«¬¶¼£²¿§¤¦µ¢¦©¢±¢¤³«²¦¢¥«¢«
fuwztj}
xqryq{~jnd_pi`\_YmbP`bOX9FFE=2<=8/*&+)&&406658:==?AACHJGJKLMSSSUZ``i`eVPJACB;9EMV[^^[Z\[[[\]]_^]^_`aabaaa`bbbdb\[c¤¨£°³¬®£©§ ¨µª£²¹ª«¡¢z¡°¤¦±¨¸¦£©¢¯¤¨ ¡®ª¨§¨¸µ£¥y¡§·¢®µ¢°°u¤¿¤³¡y{¢µ¾x¯¦¡ªd\bv¤~mµ¤©°¬¥f ¡tzpªl¤©e¥
xkvq|ai[vggry¡dx
vhnyjpe_vokkg\ecaamQY=MMNRF=@TB91/&4:306678<;>@ABFHBGGIKLTUUY]`hfgXQI<DG<9UR[`ab`^`_`aa_\]___aabcdabaaedchd^]f¦£¡°±¬«ª¥©®¤§¥ª´®°¥©¥ªs¯ ¨«§¹ ¤~¬¤§¢
u®¥¨£¹³§ uw¥±µ´½¨¢~§£{¥±º¨±©¯¢y¬£©«©w¦{§{³{ bynqzqt
xht s{~ijx{qpgexnilj\diieqZ\GSLQ@E5-YTT6)!09=>643568;:=>>?DI@IEJKGRXZX[aaifYQH9DL<>bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah¤¦®®«¨ ©±§§ª¥Å¼¯ ¥§´¬§¢ ¾¡}¬£¡¡¨¢£¹±§
pu£«´´®Ê«¯·
°³±
©©|¨r{w¦h¤y´¡ ¨ªÂ«¡r¥}
³¡}¡|
nt{s}
uÅf©¢jogwt{vghupghk^bnlflWdF]QL2E46M`c7&3<EGD:63658;8>==>BL?NIJLCPZ]\Wb^jl\QE=KM@IdX]cfhgbbbbcc__babcccdiicbbbecafcbbi£ °©©¨¦¬ ¥¹±ª«¦¢¤©¡£©µ¢¯ §¥½ y«¢
v £¢¸¬¥bm §~¡§ ® ±¤¬~¢vk«uM«xª©ª«~¡|{§jlg·~n`cX{dgs}yl\|n`Sq
\`mz`Ye~
q¨«k£nr¥pgdlZlzeY_~aWPoventqjjo]iolkhWfM]XE9A4GC^k4+ICQMN=84859;6@;;>BO>QRKMBJ[]_W^_cu`ME:MNMTb\[ffiibbdbddbab`bdcabjkdbddgdbgeach ¹¡ª¤¦¬¢¶½«¯¢ ¥««´¡§ §´u¦~
¬£¨¥¯¦¢in ¡¥£¡ w§£©¬°¥z~}¢ps{ymª}¢tw¦g~w¥^{}s¢n·´ºs¶¨dƸ|q¶q£ct¬«a~j³~n~q£ls¤s~£^³o{³tr[²ibptuqhoXjkrre[f\aLD=D5QAYp2<RG_JR=<395::6C<;@IP?TNNQ@E_^[YX``{dIC8LWUVcaZffkkbbeadc`ab`dc_`cknccddhdbgfchh£¹« ¥¸¶ ¡¢£¤¬±¬« ¡¤¬x
q¡}¨ ¢¨§¤~k{} w¢ r¡©¨ª®~z y£xs}¨£d¡~mho{§}rhtªsªg]
vhªj¸f\©pa_§vwhumj¦\¨~w»j}©Z]³g\nqxwki[piwxa^dVaBPEO7VBRm4JZZ^NZD@151;;7H?:CHU?YSX]>Db]V`Qac|iEB9N[]XdfXffnmbbe_aa__``ec^bdoq_deekdcihgkiª¶¨c¬»²°¬¥§¬°§ª£¢ £ir{z¤¨¡iy{~¡ ¡rh p©¡¥ª£ª~°¤¢¸v£³¢£xzª¢r¡}°µ}l¡x~µ££«¨||tªZ]o{xbM{{
dzBMY¢js|ovy±³~¦t~mq|ori£]vHec`sp}}ne_kgu{bc_P]V\TV@YEPfDRV\aX^ID=B8?A:HE8LEXAWRZVEFa\Z`K`m}qEC<U^bZejVghmobff^a`\]^`hb_edvl^egfldelhhki±®S_¡§´º³³©¢©§ «£ §¡w
ny}r¡r¨|l
q¡x{¢£®}µ{¦z©£ §hxn~s sq|
o|£§¤p^©hv£dp¦aÓ|{xrsc¢~¢r£vk³`tª²¨¼wn¿¦ª´^orps¢r^¤gt¦`h¦lÓznvykyvrl©¥g_dyqlhfcmuwf_aQZePQaHVIT_WS[dj[dPECKLJKAJD8P@PMXSXOSQ`eeiSdxywIFEc]eZhiSihjncjf`c_\]]_hbahe|d^dgdkdjlfhlh±¬T]Kª°²µ°³¢¦ ¢¤§©
{p}h|wpl|£©yvnw
y¡¢³¡¢¶z¬§¤®¥p©}¤¢q¢®¤¯£wµ¶¶É¢s`©my u¡w ~oMf£qs¥{zubm~ lrd`stk{j´¶´Æ¦s~zj«tlswiytqPD}³^jukxfkfbstpmU[RXgORgIULXRU\gknUgWMJAJMKGJNAQJPdcjmeuss~x{nuz{UQOm^h\kiRjhilgmgce_\\\_ibdhk{_]dgcjfnmeile¢°¨
e@¢²¬¯¯µ¡¢§¡¡£¤¦¦ykyeyuj
z¥¨z}yp
y~£¦gnxl¢d|r¥xph§}¥{¡rv¹m¢b}£nsk«ku no¦`iiu¢~`uobh¡fjupdgor¢[_[d¡n^q|trd¥nx¢df§hrm¡oRn ^d§T]TmmrkqmphkwsjoQVUUeYSlIXO\HXhhrjYkVPREV\MXSaUhj^wu{|p}|r{sww^QsagbpgPkhhklohdg_]]]`jbjivu]\chcjirlfkmc¥¦zetm§®¥©°±¦©£¡¡¡¡{qh|st}|e|¦¡ª
}si¥}
¨¥¦x~¥²¯¥y{©u§n¥¢¼m|¥¯¢~¦{r¨¡h~o¬cx¨mª£uw«¦k±lw³©loo b«ªw§w}
¤ hu«f¶sv¾£Y¦«aurto{upbj}ngmSTXT``\kL\R\I]lmv_[qX[_Zgsemoqcqt`wz~yryr~{{wbydcnsdRlggomrifia_^\ajbll{o\\bibmiwmglnb¦«¤ªª¨§£©¢¤¨
t
zo
}strn}{
¤¥¤unl¨ª¢ t~y¯¤qy{r¨r}}zx{}}w¡¢
{l\zyszqio~qtqe_xvsupzooo
_wixfªt}jo~u|umlfsx{wZjWyinwrqowxo]k
nigVY^V\djcU`U^Q_owykjwejjju|pqtsaoubs{xuyuy
~|nmdyn^Wnghukxjiid\`ZcielqunZ[bkdlkymhloaº©§¡¢§¤¤«¢ ª¦¨~r||~ztrp|}y~£{¦
wqª
¨ ª~¨¨xq|pªq~qjo|hn] srulvtYro~j]id{
`ix{|vizlbqsw_s¨gnwowmdecyzZ[ifmv[{ywtnsrf\mkkbYX\YXjqZ^`Y^]er}ztotcjji{|rzvtdmthl{uz}{yyp{}s~zrhT\rilvpugkgd]aYjhkjqrmW[emlgryohjm`«±¡£¡¨¢¡}«¡¤{
|r|v
ros~z¥wz¬¡ª¡¢££«¢¨§¡~z©±¥±¦¡l}wwf}
w|zu¤ wqux§z
uj|yiqh`sp}{wvowt]^ogn_^YZ\SgpUc[[alhs{{rnpcjih{mx~phpplf{rw}{m|zy|}zxNdvjsnq{dkebb`[sfpfrqlU]ltmhxzpgikeº£¡¤ z~©
|x{mxr~mk~z~|©r|{©
¦¢¦¡¦x}§|}© © qyruav
ozvu¤u~~ss|
{y
¨
tymj|{mhklf^yh||vtvtzw\`p}nt`cZ[^QflSdZ]ajhuy~pllcjjgkrkktnwnynv}
wr~|{|{`i{kuhjdjc`i\cugobumkTbqyeoyzrejmm¸¡¤zw¤¤xy
{l{xr
}|kh}|~
|¦p ¡
|§w£ ¡£¢¤{
¡~|¤ ¥vuqwa~s}q~
jyrzs}}rz||{¦|
t
xdpz~xypkjf^}sh|uus|rj^`tvpwdcX]^RjhTeX^`givxqfkclgejm}gmpj}w
zkr~uv|z}jrntibhlb_qVtolm`xhlWjsvctzzqbkoy³¥¦ {u£¡wz
~~p~ztu
~wgc}x}y}o
¥¦u¡¡y¥{
ys¢ ¡}xr~n{d|qk
gwp}~y}~|ryz
£wuzs^vw|s}vfkc`~jkvssu}p{ccasnurmaY_]ZkdRbW_`hktyqbjclfh|khthloh|yl
qt|~z~|muttmfljbcuVipm`yglajvqex{yp_ql
¯§©
|v¨yx{}|{xsxys}d^}
t}~~£ ~r{¦ t§um|o¢|{qzkvm|n
xo~~ftj}
u
zwy~}¥y
t|qs~
k`ytyp|nanbd{bnovsxwrsav`oluno\Z^]]j]O\Wbahmszk_iejchwmflhilg|zwns}tz}z}|ryxxmlkh_irbhqofvgmlazhj|{wpawm«¡¤©|v¬|v~{|{vwotszo
}~|a\~rzz¤}|£
n¢¡pg{
p¡~|tsukqov}uort|}ernz~
uu{p}
ª{}~w}nm~afwstnza^o`jt^ojzyylrpey]mlsmsXZ]_ajZOWWdcfqqe]ihgbgqnchheigzwuo
s|u
x
|xzw{zryjk_phtkqomqgoke{bnzwpkww££¨¡§t¨ s|v
xxrs{
kroymvnq[Y~vu w~
m¡l¥
gx~}}pvplnoq|jsqxuzgtpw}
{{xur|{
¥|wwwli~[qrqoovY^o`oj^oj|zqnmjmw`pokqmYX`aamWPSYefbuob]kmdcekm`ff_gjurrotyvy
~wv
{{vjqb|b
|oplujhnlwx_q~y{sus~¥§
~t
zrxtpr
squlnltlv}mnUQ«xvry wz¤
}r
jh¢
qw{{|}lwjoklm{bz~wzx}zhumv|r{qx{{}}x|vogjw]vnmkprU]naqa_lnyphpfgsuhqlawe]Ue``qSPN[ed]xo{^\hqbbeei_he[go}okqs}v}
uvy{xs
~|yxgqj`~ook{`imtt_t|xwss
|y¡±¦~wtvspo
spqojiumn}|musRNᐙ|ptuv{r
¡
}x{zxin¥cpz|z}m|espkm{z\z{~{ziukt~mp~
{}wxxrken}jgsnghslS]odpZ_lrwflkbgxsppd_w`aUk_^tOMK_fc\xpt\[ev`addc`fbXissmkqv|tyvw~szq|~vesn|enpkZknyzr`vz{vrvvz¯
x~{
uwpypnomn~rcdwp|nz|jhlb¤ÁÜ®ï¢sluu¡np
£
~{vx
vxp¦^l|~v~~l}dxujoztX{zzftjmwo{utxtrpesw`rloahtfR`pgkU_ntyarc`i~qrn[cracVnZ\wLLKcfa]vsm[\dx^`df_cc^Xirknkrw}swxx|q|}{t
shuqyl{ntpWpyvyqdvyhvq¨£
}qxx||swpsjokil|t^`wv{ptzg`e|ëÚµÉÃÜsltvip
|zwxrvr¤
a
h}}
rrwhvritxmZ}}vbum~omz
}orz
tkoipv]qgn\it_QdqhfS_pvt`p`]hqsjWgiciWmW[tLJKef^ars
i[\ey^^dgz`d_]Yknenjtw~sr{vzs
|vv
{vlwvyyunwz}Xy
qngxvdv
q¡¡soqv|{yqtnodr~hflvv[_x{zqqiagaÕ¶¦xnqw{qj
zh{{~
zu{|qvx
¡¡af}~~m}ulmwutwvlc
|
p`tr}}zr
g{
|
opy~tlmiiwzagjiXktYRhribPbrxlbe^Zjntb\g_em_oTZnMGNfd\fnrkZ[cs_\ckvde]]Zllbmjsvqo|}txx
|ux{voxy{om{v^tlhzssgs|ruu~mu}|v~vqoljat|gbisyZ`w{ymq~edhhW_rs¼Ävq}qrj{{|{uvw~ru
rw~f~
q}f~|y}i~vgpyxswtlky
l_sy{~|sjz
y
~~nm{}vtnfe{tb[pbWnqSSmrhaNftxf`^]YoosZeb]jn`pOYjQDSf`Zjnm|nY[]mcZbpvcf\]`kicljsvpm~|tuz|
v~xtryy~oo{qixz~ml{ukjxtk n}uiw~yoztqkid`szh`epyZ`r|ygqyaee±²wKbZ¥ÙÐq{w}
nk
zy{wwpqu~{jy
¥px{q{}mwhxr|e~vdqsiyqou}wy
zk\rs~{sor
s
{
yno~vzdfh{o^XvZXpkNWqrf`Klwta^\[Zu~spXg]fjr`oNWgR?Xf^Zokgzq[ZXkeYcpy^g\^elgekiqwol~uo{vqq{|zyujy~ko~t|or{zon~xg¡
fogy}~|ixskkf_aoym_box\dkyaqv_eeÔê½2:>qx
u~~mku|
|wnvwo
lu{ufy§~nvy
|{w~jrh~xn|}wbz
rdri~nuru
tv~so\nuy|~y{rm
szunkvut[ggunWV{RYodLZrre[Ipxo\[[Y]t~thYb[gfodjMWfQ=]e\]ue`upZYTncYdpxYh]_gmgikipw}miyn|}zupnw~{{hz}js{r
zsv}~yx}|kl}kh~z}~~}kvrghb[bgso_aks`hpybst^cd n\5Z¯µti|u
svoltyx|y~rgv~~oqivynfy¤~ow
|pz}{h~lj{zj{wr`w~rdrgvnu{}owz|umYpwuxv{ytos~|onimtm\fdrpPZzM[n[O[rodUKsxiWYYZapt`]]agdiifNYhM@`c[`ua]ulXWStaZdnqVj^bhjgmlhpw|lh}}p~~{zwq|oqw{j}{mwxvv|x~}zm
£{uxklx}z~psqcf^Yf_oo_`gpfjntato[adjv{¿¦¤È¸qr{w
srro{tttwyypcwzirvgwucj|~su{
z{kxy~tgzhkytizw}h`x}kkth|jv{~q|v|tbVx~st
}qxyqq
z~wwjqilqo\faqmIduK]lTSYrnbQOtxaRXX]aps[a\ieedkdP[pIDc`[cp^]whUWVv][emgUk^aigennhpvzmiy}r{~y|v}pwrmw~p{wxztx~yuo~}
zw
{gt
y~{vgpn_d\XeYmra``plkhnatiY_dnw©Ú©Ç²qwotz
ytst}woqm
t
xtk`zyfrpgun[m}x~y|nxv{ltv~lgvdm{vmjww|abxziuuc~|gu|uwq{}nZWupv
zmtzlv
|~z}t~thtenlsYh^sdGmmKZ`WVUwmbPRtvXPVX^aqo\`cmed^ocT\rGBf_]fg][{bQV\t[[gkaUj_`nefkqhpvxtkuvx~w{t}ortqu~
{wx{|
w|}~{~ruy yutx^}
xs
w{bnm\b[[aVisc`[gnpfqaqfW]ck|Êι¡jmmlqq{~zyxsxut{jlvcuvof_}zerkjqcXmz
sx}os
t|y}ppo|fhqbmxqjlqx}}z]ezxjvxfwgu}rjo~yo}]Ysnu|opqwixx~s|u}{sgsankqWi]v[GmjLVU]SU{kaOTurPQTW^bt
i]`ljfcZoaXbpHAg\`e^\V{^NUepY[jh]Wh`^rejhrhpswxntzx~yur
pp{xwvyz|t}}~~~}|xuxx|muxd
so
ztdnjY_[\]Tgrd`YdqrgrbkeW[`jx¾®{·nas
hszqxz}~wwrvo{vejoausjb^~xyfqhkkZVow£
qrzwou
}xtqnhx_jl`mvjgjlywzvZg}|yfs~m
teupgk{unub]q}lu}|gv~nqivyt~m{|{yqflbn}lmVi_vUJijNQNgLX{haNUukLQTU_fuf^`qhgbWj]\khJDjYadVYUyYMVmjY]kd\Yec^temdqgrpuxqv~w|
}usnsy{zss
x}u~|{~{v{wwziv|{lrp
pglgX][\[Sdpd^WbrujuoeecW\[hporsddy}isusrwxvrunkzqagkgsmf]_}p{imxgjdUWro¦|{vt}t~|o~}x}}upqlgt\lg^ltdgeizo{rYhwuhpxvbw|okm{qgtfanzgsx|bwwjlru|r{{thywodfbm
{ljUhaoRJhjOKNoG]zfaMUtdJOSWajv~f]gsif`VdWbp\LKjWcaUTUsVLXudY^k`\Zce_vgmbpitor~ttwxz}u
nrt|zuq
zus|
}}z}v{£¥y
kt{zuznsy}vojieV][ZZSbnd[Xas{jhmi`bX_Ziikogl`hyxjrssmz|utmzhjyj_enhvgeXbwj~{ojpgf]TXog§wz|yvqqux{zv
vjruggn[lc]mr_gajxh{l[nstjp~zxaw
y
trpzsdri]qxert|yctqgjyusmyxvye|ywqddcm{|jjTgaeSJkgOGQjE`wfaMSr]JMTZekw|f^mqid]VaUnnVJSgWf^XMUlTJ[x^[^k]]Zce`yhlaoovnpwuz~wyzyz~qttyvt
}|kr{
~}~{v«zkryu~tnn|sjpnddX_ZYZTbjg[Z_ui^ml\aW\\kert}ii\kvugsvql{}|xurlygixf]dshzwccTeph
xxgijaWVYgc§o~w{qri{q|}xs
~ndurdgg\ja\oo\g_mtezh]torkq|~uvbu{ysuvbqn[rtcqs
|uesmam{pkj|zvsgv{zvqebdmr}ikSg]\TKqbPFU`GbvfaKSoXJMXXgku{eenqfdZW^XweTJ\bWhXYHWePHawZ]_lZ^\ac^~ij`otxmpnvzr|}uux|tuuyzz}~isz~~
zz|sq{{}eqys|zurol{~lzcpobe]eVYYWcfk_]]s
hXqn[^XZ\l{bpwulaYlssgtuolx~xvmntdite[gufvvz_]Rffkt~bdj\TW]bc¥hxtynq|jzo}}vty|xhdvl`f_^i^\skYe]oobze\w|knnpxytues|wpstcxe\qqbqr}tgre_nwjehz}uopvt}trb_fmn|dhSgWXSMv_PJYWHbtcaITmSJMZWilq|cmlscbZZ[aw\SKc]XiSWGY`MGitX^`l[[_bb\ihanxymojvym~vtttrvvx}}~~~pw|yxz~ttp¡zzwctxswtktn~kx|ps^pn`gblTZZWhcmf[\qeSrn[ZXW`lvciuji^Ymspksssi|~~{vnnldiqc[jrdtvs[WSearr]bc]SZ`\ceqq
ull{opr|~}sxszzzdeug]bY`gZ^vhWb]phawa[|vijroxtsuiq
wtkq~ogxX]lncrtztgp~\`prb`krmnvsrxkqa\ellz`fReSVQOu[QOXQHcsa`GVjPIPZUkkk|enoqb[ZXYlqWRPfVVhSTFZ\NHqtX_clbX``a]jcdmzxlpiuy{k}|y|mrovz|t|tx
utquo¡szzdvnmznfxpzksvsk^unagekR][UgalkZ\qdOon]VXUgishbted\Xmtloutxj|{vscdkna\nmcsxkZTVcdx}}q]d_cTZ_Ybcnp
tki|pguxu}m{uvpzv_frc[]VacXateU_`mdaq]]~phitqtquwkm
|rsgp~rtpT\gkfruwtcmvVcrl[_pg~fnx~ttsknaZdijw^eScTUPSlVPVRPGdr_aFXiNIXTVmhd|ikxkbW]U[tdSRWhQXfTSHZZPMwvZ_ekiYa`^^nbfkyunoivvl}{~krgt{u}r|
{ss}vn¤rvwly`d{pfysxlmqwgd|mcfghS_^Ug_ln[^nhNim`TVSogskexdd\Xoslqzwrl{vzykaelm^`ojepx~gZVX`lx|{p_c_gVX_Wcbkp}xllzn]xsn|kvtop|sXjn^X\UabWdpcS^biablZa~lfltvomwwli{nrfr~ntnd[aiiptts^imSeqeVcod|dsx}wlpmk`Yafgt\dU`URNWdRO[NOHdo\bGYiMJ_KXmd`xin~d`U_T]u\SR`fN]aUSJ\YPYtu]_ekhXba[^qcgjxqsnhvtzrz~|ynulst
y}|
sstxro~zz}~~}}~~}~~~~~~~}z{|~~}}~}~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~>.1111/o]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDARÌÚØØØØÝm=DDDDCXhggggfo
}}{{z}~||~}}}~}}~~~~~
-h
S7¤¤¤¤¤¤£r]____aR455552FØêççççíg.55554Ma____^j|}z{z|}{|~}}}~}}~~~~
|yzz{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~y{yz{{y{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~~xuwyz{{{z{}}}}~~~~}~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~rtx|||{||}}~~~~~~}~~~~xrvy|}|z}|}}~~~~~~~~ssvx}~|y}|}}~~~}~~
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxy}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvutvwuqrqnprpghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkigfgggihgmgjghehgccbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__`c_\_]`]^Z^]YY^ba^^ZY_\XWSNMLKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSSPMJMNPROMPQQQQRVVQQQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTttuxzzxvvwwz{|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPPRQPNNONONOOPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKLFDFJKKKHJLLLOMLLNOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBA@@CCDEACEHKOKIIJHGJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:<>><ED=?EA?@A@DEGGGGBDDEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@;;><;;<<HL==AA?BC=ADDFBFFDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprttsqrvyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;::;89:87:<978;;>=;;:8:@@AB?A?CFDBCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqususqsxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<979::988::78:9:;;8789;:8<;=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>=;<<>?=<=;:<===<<<<;;:;<>=>??A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquuuusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCC@><=?@??=;>=>CE??@=;===<;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVpoqssttuy{{{|~~~~~~mLPQNOPNNOPPO><<=>??@>@@???CED?=;<@>:;::97:<9==@=:<;;<;89;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}}~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC??AAABA@=<=;>=:::<:8988:;=??<;;<;::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@???@=?@><>@?===?>=>CD?;<=>@==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy||}||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABECDA?@@@?=@><=??@@@C@@?@@>=<=@EABBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{||}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@A@>;><?=<:>=?BBE@?@Na_J@CEIIIIMMKECFGHEGEEEDDCA?@>>BFJJGEEFFFJNNKJIGGHKLJGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|{{|~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@DED?<ACDB?>A?ADEDCWu~XGIJLLNOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHIHGFEFFFDFHGEEHHFHGHFQnopqrvvy{{{z}}~~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJHIGHHIGFBDFDDCAUtWILMLMMLJGGGGDGGGGFHFHECDDFEDDHHCCCGJJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrtwwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLKJKMJKHHFFGFEPl|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD???DFHDEGIKIIGHIGIIIJIHFJJJJIJIJJJFILLJJKKfopsstvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKKKKKMLKMLIFJVl
uIIFB??@???<<<>::<AA@><998<<=;>;9;?ABAACCC@ABEDBCFHIHHHLMLGIJMMNMJJKKJLMSloqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHGIIKLONNQNQ^r
fBB=88::9878896479;<:8567789787689;;<>A;999==>;;=ADEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56;<C@BFHKHLKMTg{T;8656766645763468:876565677778:7778:;7689989876:<@GFIFIFEFOSRSSROPPRTepqsttwy{|{|}~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:<DBDFEJbx
H676468874578467799766765::;::<89899877:::8878589;A=>>BA?AKLOQPQOOPQWkrrttuwz{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897:A9<D?]z>:88;<=>9:;<89;9:;:99;:9===?;;;=:><:<;<;<;9:<8::;:999<?<=ABDIJLKJKLWortutvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<:89989999:>=??Dw
l<;>BCEEBAAB>@CA@?=>>@?>?@?@==?B?AA?A?=@A@??A<><;:;:9;?=;;==AACABCAXpqtttvy{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::;<:::<;=>@?=a
^>DGIKJJFGGDFHGEC@@CECB@BCB?@DHECEDEEAFEFDFFD@B>=@>=?@>???>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:=:<:==>>;><?>B?J~
WGLLMKNIIKHIJJIECDFGFDCEFDBHIKGHGFGGEKJLIKKJCFCCDBAACBDCCDDCA=<>@hpsttvwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA97;>;<:=?>?<?>BAD>h
PMPMKNKJLIIJHKFDGHHIEEHFFELLMIJGGHIJNMOMLNKHGGGEECFFFFDEHHFCA?@Lmptuvxyyy|||}}~~~~}}}}~~~~~QA?>?FGG=<@@87<:;<:=?<==?@CBHS~
qMQOMLLLLJHHFJIDJHGKJHJGGGKLNLLHHIJMPNONMOKIGIJHIDIHHFFGGIGCBACUoquvxz{xxzz||}~~~~}~}~~~~~TDAABGHB?8?@8:;7<=:<?<<=?BCCLm
^RRPMNMKJGFCHJGLJGKOLKJJMMLOPNHIKLOQQPQOOJIJJLJLFGHGFGIFEEB@BB\prwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<8?==>@ED=BDCFJu|WVRRTROLKJEFFKONOWVQPOQSRNSTOMSLPSUWRSRPLJMMMKNGGJFFIJDDEEBDCcquyyzzz{z{z{|~}}~}}}}|}~~UFFGGGGHF>@B=?=<A?AADTKBHIFIKx
gVVkaERQQPJ;;QSR`u]UVTVYYSYXRZfPUWZ]RTWQPNRPPPQKKKGHJHEFIIIHIjsvyyzyz{{|z{|}|}~}}}}}}~~~THJIIGGFE??A@EACFDCDKVPJOONPPy
}al[dU:XXXSP?@VUY\d`VYbr^]W]ZVEQY[\Y_TYgRUVXTTVSOOMKLJIILMKOMSotvxyxwyyz{z{|}|~~}~}}}~}~~~~~VJJIHGFDDBA?HLIMPKIJOSQPTVUVTu
g;~znpXZ[ZRSRWVTZZuYU}a\X]^WIV^^[[_YHYXY\]XXYWRQMPQMMOSQQURassvwwvxyxz{{|}}}~}~}}}~~xy}YNKJIIFBD@A:OQQWXPPPQRSRVWWWWl
n~fYY\YSVTWRQWVcQerXZW_hP`fZZX\hbGOZig\[\]]WRNSPPQVVVVYZosuwvvtwxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZZRSQOQRQURUSV^ux
}{\PVXTRTRQQLOMKfyZ]TYUV]ZLTZUST^ZXWWWzkXZ\\^TQQPINOWVX[Zdqtvvttvxyy{{||}}~}}}~}}~~~zxwvsu{tk~~kqy^[VUSROKFCDAM^lVRSOOQOQVQSRRTcdv
~ymqVIKNNKMKHJDFHEC>ScURQQNKRURMOYQMNQSUUMQSRPOMLHCIGRSTZ]mrvvuttw{zz{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt`d]^[YUQLILIaltPQSMQRPS[RSRQRUUbs{|~}{{
u_]KC>BBCCA?DPCD@C>BHGV@INMG]iQHFOFDEFHGHBCHGHKGDBAC@NPMRdtuvustvy|z{{{|}}|{~}}}~~||}}vt{mh|gnqfheeb\XSQPURsWe[OONLQRPUYSUQQTROV`klsvz{xyurnstsyx~~kLG>>::>@?>>>jPJaEFHIEB?HMMGMQUJBE?><=<==?=?ACC@?<=B>IMFUouuvstvxz|z}{|}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QQZ\Y^IJOPNKLQRQTUUWQQWVPX[b]agmmlokh`nrimlqu{z}{xz||xwxdB@@A<:BCAACA[\N{NOONKLMOOPLKLWNHGAA<977599=;;;8989?;AG>\tuuwuvwy|||}||||~}|}}}}~}xuwz{zwyxuw{|yxuywcqhipmnmmhf^OO^\ZIGOQQOMPQNQRSVXSRYTNYZ[WY\_^_e`]^qwk^`gkwooljonnlfbYGFFHBAFHEEFCLQOaWRXQPSSRU[OOQWPMJDF>:96587979:365795<B=ftuwxwyy{}}||{|}}~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMKSTSPQUOLRSTWXSTXQLXYYVXXVXY]WXXhsk]V`tkaa_]d`_^YUPMOMLIGJKIHFCPOSZWTTNQSYS\eUOSTQNKIHC?A9988978847578599Gnruyyz{{}}}}|{}|}~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPWVVSTVOOUVWXYSUTLKSUUUUWPTUWTUR]n^RNY`[VY;DUWT[fJLPRROMMNMMLJFPPUYSTOJNOUST\VRUSSOMLIHHF?>=:787659967565Wqqtxzz{|}}}~||}|~}}y}}|~~~}||}}~}|rvqxxruuqqnppopuvtnjddjppqrpnfedc\^RTZVWTSVTRXXYYYRUOIGOPOOMRJOPOONNOTLMIPPSTU2<XMIAQ=c`QSQPNPPONNMPNTRPRLILKORPQRSTQSOLMKLLHCBA=:9876;B4566;eprvxy{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqpuuvcjgeWhtrrqniihpVVTUXUVURWVUZYXWUQSFFAFGGHFJDHJHGEHLHKIGLMPMG/E_R=3@>joaRRQ@GTQOPPQNQOPOLJLLOPNMPQQNPOJLMMKGEECB;==<9=G6676Dnquwz|{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknbePSTRSUOWVVYYVQQQO@>;=?@BAC@BEDA@GHGHFFHJMLDGCORB8DMS]gSQSAGUPOQQPMMNLJLKLNOOQLNNMIMLIKKLKGFFED<AA>;@E;<89Trsuy{{{|||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLONMQSLTUTWWULLKH=987;?A>==A@B=>EHFDFFIGJJ@FAA@EGDIOHQRa\QPROSNOOLLOMKMLMON[VKMQOHJHCIJLLKFFFE?BC>=BG?B?@druw{z{{|{zzw|wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B?;>A@@>ADIECHGIGIEBB?><BA@GIDMObePMOMWKLNKKMMLLKNNSdMJLRIIIEBIJLMNJGIFBBB@?EFEHDLopvzyy{{z|zwtxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLLIMPMPOHKE?B=999:?B?<ABAADDGKFDIIGGHCC?B>??@>CEDLMQTLJIMTFIIJLIJKIJLMOPRPKGCKGCCKJLNONIJIGCCCDIJMLIZsnxyxz{{y|vrpurtyyvxjqnjllnttmsu{stxronqovsnporpopstyjN`gsjt|ygosqiqheqHJCFGHGJKIJLDGB<>=:::;AB?=BBCCHEJLJEIIFGHCC;A@B>@?BEDIMOGHJGHKDHIKMHJLHIJLJM]RHIDNGBELKNNQNLMJKFGGJMNRNMcnjwvw{y{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoijthepFJCFEFDEEFEGCC@=<=:;:;ADA?BCEEIFJJLFIIGFFDB:ACC>?CCCDGKMHJNHDHDILNMHILGFFIILNKIHEOICGNMPNPNOOMKIHIOSQRNSggfrosxv{z|lhjoekpmsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhmf_pGJCEEDBBAE@DB>?>;;;=;=?DB?ACFGJFJILHGGGFEC?=DEB>ACBCEGHIGMPIFFFKNOKFHIFECDIIHKIGHPKDJMMQNONOPNJJIMRUURPXeaamfproryzgehhcilfqlflmgiklsmpvutpnvrosrsutqssutsuvvvyvutvlkuumrvqlnlerMGEDFBA@AD<BA>A=::=?;>?AB?@BEGJFJGIGFFFEDCAAEFCBBBDEEGGHFLPLIOJJLKIFHEFECCHHHKJGKRMCOONQOOONOOKKKPUWVVTY`_]i`mjnhrsbeffdhhfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwuksunutsprkksMGGEGAA@CD<AA@C<8:=>:?=@B@@@DFHEHFFHFEEDCDBDIFCGEAEGEFFGEJMKHQMJKHHIEFHHECIIJKMKPSNDRSQQRNOMOPMLNSWVWYVX^Z]d`hcjigk_defchggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxnouorsuqqipzMGGGHAABEE<@CBD<7:=>;>;AB>??CEFDFDDGECECDFFFJEEIGBGHFGFECFJJGMKLKHJKFIHJHEKKLLNORTOHTUTQTPQMNQNMQWZVZYWZ^ZXa```^hec`deggjhhjghnllomqpiuuxrrpupppruvpusuvu{~}xvtwvvvwplupmsunossyMHHGIDACGE<@EBD<8:>>><<BC=@>ABFCECCGDCDEFGGGIFGKHCIHGIGFDHKIGKHMKJKLHKJMKINLNNORUVOLVVTQTRRLOQPOTYZY\ZZ\__]`c^\bdlc`dghr
hgjfjnnponsqjtuxrsstrnpqvrquruus~y}uuvvvvxriuqkrtlqwquKIKHJFBDGE=AGDD@9<>@?>?CB<@>AAFCEDCHDFDFFHHFHGIKJEJHHJHFFLHHHJGLLLLLIMJMNMOLPPQUVWOKVVUSSRQLORRQV[[]^[]^``a`be^d`fh`ehjdssfjhglprqossnswwpuvtsmoruorspurvrtvuuuwvuwtgtrkqrkrwpwIJLIKGBEDE<AFDDB;??A@@ADA@B>ACHBEDFGEIEFEIHFIHJLHHJJIKJFJKHIJJGKKMLJILKMNNOLOPRUWVMNTVUSRQPMNTSRW[^^_]^``aab`cdebdicdijgvlkigmosqpqpprywruutsmmssmqrotuuspswtuuwvuuteqskpqjrvpwJLKKLGCCAE<?EEEC=AACBBCEACDAAEGCGGHFEIFCGJGGJEILHIJMKMLGKIHKKNQKRQLSMJMMNPPPTOWXX[NSQW\ZSVPNTUTTXZ_bb_da^ac^`fbacinhcihhmxvmhinosrpqrrrvtsusssnksqmprotvsqquvuswywutucmtkopjqtpwLMLLLGDA@D>=DEFC?CAEDDFCBEGCCIEBHJIGHJFDKJGHJHIKGJJNKNLILHJMKZfJd\KlRGNM_nUls[qpbwcRPbvuhucavaXnqbdvinzf\lu`lkU_wvijhhfglmjmojmosrprrqrsrssrtrnltonpqquurqstvvuuywutt`ktkppkqsqyKNJKJFB?@B?<DEFDCCCEEDFBEFGDDJDDJLKIKLGGNJHJKGKJIKJNLMMLLIMLL[sbdp^llULNer]geqlntgpi_aYnmbppbkjjgoqtetnn\pvgpNKqyvkaakeelxmkvlnosrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIIGED?AA?=BEFBECEDEEDCHHGDEKHGKMMJLLFJNHJKJIKJJIKMMNMMMKNMM[rponpplkMPQlXNibtrpamov\YlP[mmZqmkomxxtsip]`slqjUuyxoc^kfbgppjioppsspqpqqrrqqrrtlmrmmnorutqtrtuutuuzvutenukpolsrryJKGGFEEBAB=??EGBGDIEEDBFIHHDGKJGMLNJLMGLNIMKHJMIJJJJNONNMLNML\hdu]lqWlNOQmUZk^klvaldtTecNlYl\tpkilxjwuhp]_skhWbcw|oc`ghacityknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvIMGIEEDCAB<B@BFCGFKGECCHKHHFILKFMKKRRLHMMHNJIHNGJJHHNOMNLJNMJZtppoqqmlOQRnYskgooqqomt^nXat_nopoqroousttj[^tcwxrjnzhaacfabjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyytukoumtonssvtIKHJCEEE@@>CCAFCHIMHFCFJLIGFKMLFOJKWRKGKJJNIIJLIKJIIKLMMLIKKKSkbYi^_jcrrZ_Yjo_eeUk_d[abQ`mh\j\niid[oedp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrutwrHHFIDEDFA@AEDCGBHJLGFDGKLIEFJOLIOJL[QJFHHKMIHJJKKIHJGKKKKGHKJLKLJIKLNT[]TPUMQONOOURPPQOOQJJNPQdqiTYV[[\UY[]X]\\cfaafbcf_^fkmhmtxrtroppt
zpmmlkqsttrtvtuyyxuvqruovrtsuusGCEGFFAEC?CGDEGCIKLHFDGKLHDGIPKLOKLWMIFEHIJHIKHLJIFHHJHHHEFLHHJNKHO\W^O\\`^OXYS\\b^MYZMXaRKYaZS`d\aX[ddVVX\YZX\VY\^c_d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCDLMACDBDIEGGFKJKHEEJJJFDGHPJLMJMRIHEAHFJIKKILJIGEJHEFGEEJGBIMIJT_Y`X`a[`UXYT^^Z_RY\P^\YN_\^S[^d^Z]`c_Y_b[`^[UYXZ_^dcbaceiekrpoppnow
{
uqprrsuyzzyyxxxwryvxrqxvtvaSJJMIECBCFGEGGIJJIIDFKJJEEHINJNLHLNGHF>GGLIKKJKKIGEIFCDEBFJD?IKIN[cY^^a_RTSW_`\]Y^QY\MV_WKQY[Q[_ba]^ca`bbbcceZRYVW][^d`__cebhommllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQJFDGEBEGHFGHIFGJGHFHKIKDCKJMMLLHJJHJG?GFNJKKMKKKIGIEE@DAHIA>HIFO]aZ[d]_TQRX]\\\_[KW\LR\YIM^QQ]_bccccb\dcbdceXRVUT]Y[a_^_aa_dlkmjklnv~uz|
zrsuu{
~xpzwvx\RMC@IFCFKIFGGIGGJFFFILJNECKJLNJLIKJIIGBHHQMKKOMKKIHHFE?EBHHA@FECT]Y^X_Y_[]UXXP]]QKJV^X^[]VZaRR__bb``bb_cbbddbXPRRS\T\]]^^__`dhgljnnp{{|~{
srw
|x\SKBAGFDGMRHDRKFHHHDFKIMPEGIJKNLLILKJIGDHKQOMLPMLKKIJDEAECHFAAFDAVUE\T^SV_XNTUNZ[MJKT`a[_X_^b]OXb\``_bca]bbW__TQPQRYS^\[]^_`affelfoow|{{}
zo
~INFDFFGDIScQEW_IGGHDFMJPPFIIJKNLLKMKJJGEINQQNOPMNMNHLBDACCFDCACD@LHCLLPONLFMFFHIHGLLMOPILOPPSPLQTRUZXWYWWcVOSTPQOOQUT\YY[^^aaefchdlmqsszy{z~{}{
}KIEEGFGDKM^MHHYMGHJHGMLQQIKJKKNMUNOKKLGGKPTSNPPNOOOHKF`ED^LDfcCL[H^\smOMVmYLCO_TlWgJ]WU^DLQULMSVQRTXVTXTT\TPfZhheZTkTXWU[\\``abbb`gignlhrz|}~}}zr{z{
~z{LIEFFHEEKOTJKG`THJOJIOMRQKMKLORUROPJLNGHMQ[YOPPNOPPJKQQI|YYrsWPmGqnoaVPqqtOBjsnqtpSo_[nX]V\XUkhU]VcY`YZ^UUWituu_av_Yb\\f[_aaab^`cgmol`pwtx}~vxzmv~tx}|~|z~wwNIEHMMBDLLGJLFRVLKOHLRXWQNOOMQTNOQPKLOGMPS[ZTQROPPPKIZx]TxdhXRSPvftlpbnfkRrNLwmjrpsrqrpop]ezuxqqzq~r}ku}aRh|essoss|}p~xor```bb[aahlnkblfgmw~~{xwtvzhr~nt|~wx{~x|u|||ssNKF`]GAEMMHKKHJQOMNJNV^YULQSNYYLSRRNLPIQRTYWWQTPPQRKHgxlcxqmZJLTypumubnvPddHevqmwojfxxiWrQhzmijzz}lxzphnXuujvupash}ilx|o___cb\_degjjegbcdllppstsssyqrxbltgry{ssuy~svzn|}yxrnMJRtNCBEPQHKLJLQOOOMPZ`ZXKTWPa^RVQYSMPJSTUXWWPUPONSJKrouuquqchaVnLqp^GhyWvTKhx}w`y{sna]modSgrunmypwlvstqlm\s~zkmy|lun|lqvux^__b_]_eeighfe^bbiiijknokqnmjpacfdowxompsynqpj{ztromKKZVHGEGRQKMNLLQQPPPQW\YUNVYUfXRRY^TMNJTTVWYWOSOONQIRmHiwK`dvuUWlNnl{rajguTKWkg|lmlx_Zpz{_`zscroxqhd|ir{]TKk_vuljv|{m~yk|p]^^b[_bdegffec[ccikkrsrwgmihdg`alagsrlglmr|kmhk{tmmkmOGJKHJHHRQMOPMLSSROSRXRWTPWZVVTTTa`QONKTSSQVVOOMNOQJHQMOULKKRSRRROVUQQORRXXPNPUTWXX[[UQRW[WXW[ORTWWXQ]XV\UTOXRWWXYZ`\gr_[[Z]]_cZ_ccegdddcZdbgffmnmuffgc`f^^g`dlhfgkhpzhggkujhgilPIKKLMKJTRNRQPLVUTPTUXUZVR[]VUTWUYXOOLNWTPNUSNPNLQPKIQQKQMJJOQTRPQSRIIMOPQRPPPTURXW\WSRPQUUUSZQNRQWUSYVTXTSQTSUUYYX^Z_a]\ZZ\\`c\^bbdgeeebY`acabhhjncad^_c]Zc\bma^ffgmsdihkkedcfhQJKKNOLMTQOTQQMXWUTVXWWZVS\`VWVYUXTQPKOXSPNUPNQNLSPMNUSNQNMNQSPTPRTTNLNORTTQQQUWUYZ[ZSURTXWVY\SOSTWUTYUVXTRQWUVX\Z\`]WY_]^]\]`a^[bcchgfebX``b]`hegea^_]]^ZZ_Z_g`^^]chkahfhfd`bdbPKMLPQLOTPPTQOQZYXWYZZXYV]jdVXYZWVSTOKOVTPOTPPQNMRQOQXTQQOMORTNWQTTUONNQTUURRRTXVZ]\ZVVQRWXU[[VPSUUUVXSWWTRQXVV[_[_`_V_]^`\\``__ZbceiheebYb`b^^fdc`b]\\\\YZ[X[a[^]]_b__bddbd__`\PMNNRQMRSPSTQOV\ZZW[[\YZ[dqmhd_[YVVXRMNWSMMROQROMPSRUZUTPPLPWUQVRSRXMOPRUXUTTSTYX[^]\[VROUVU[[VQSVTVXTSXZSRQYWW]_[`_`Vb\`a]`b_\`]cachief`Zc`a__ee_`c[Z\[\ZZYYW\Z\[`^`[^^a`_c\Y`ZQNONVQPUSPUTSPW\\\Y^\_W\^jpwyc\[VVYRNPWSNQQPRTRLQTSY[WUORNSXVSRTRRZOQSSV[VVVSVZX]^\\^VSNTVV[[UQTTUWXRSY\TRR\XZ]^]aa`Wb[cb^ac_\bab_dgieg]\e`a`acd_b_YZ_[\[XXYWWZZZa\][]\\Z]`W[[ZPOOOYPUUSRWRTP[]^]\`\`U\\hjr}slh\UYWQOR[SRQTRTUTKRVUZZZSOSQUUUSNUQRZRTUTX]WXXSX\X^]YZ]UUNVVW^ZXQTTWXXSVY\TRV]Y]]a^cc_Y`[eb_dd^^cca^efief^^daaabcd_b^X[_[\[XXXXW[Z[`][[\[XZ[^V^Y]POORZPZUVWVTTT^^`_^b\`U]^bkyum}lZUZVQQT\TTTUTVYWLRZV\Z\RPUSWUUSOWQSXSWUV[^X[YUZ^X_^Y\YRWRYXY_YYRTUYYYUWY\UTZ]]^ab`ed]^]]eabfd^_dc`\gehfdb`ea_aabb_`^WY^Z\\ZYYWV]Z]^[Z[\[WY\]VXW]SOPWYP]UVYWWUX_`aa`c]`U]^beev{hXYZTVTV\XWWVVW]XOU\Y^]]TSXSWUTRSWQSVTXXX^^X][U]_X__X\VQYTYZZaX[TVWZZZXYYZWV]_`_dcbee^b\`fbdfd_`dba[fchfdfaf__abaa`_^VU]Y[\[Y\YY][[[XXY[YZZ]_]TY]UNTZVT\UWWYWV\`aacac__V[`da_zuohZ\ZVXVX[ZY[YXY`VOT][`a\UUYPTVURVUQSUW[[\__Z_\V__Y]^Y^VSYWYY\aY]UVZ[Z[ZZYZXY__``dcdeecdZbfcgfe^ab`c]bciedh_g^bbcaa`^_XTZZZ[[X\XX\[Z[WWZXW\[\`]V]]SOVZVVZVYVXWX^`badada^YYadb`kfh^\][WWYZ\\\_[Y[bVSW^]ac\SVYPVUUUVUSUTX]]_``]a]Wa^[^\[^XVXW[Z__Z^WX\\\]][Z\WZ_a^`dddffgcYcfehgd^c`_ec]fidei_g^cbcaa`__[XY[YZYXZXW[[Z[WXZTZ]\[`\U^bMRWYVWZY[\YWY^`baeada]^Yacb_a`a_]]]XW[[]]__\Z]cXYX]`cd_RXYPWUWXWVVWV]]^aba_b^Ya]]^Y\^YXUV[[`^\_YY^]^^`\ZZY[_b_bedefghcZefgigc_c^`feZiicficf_bbca``_]]ZX[YYXXZYWZ[ZYWYVU[]]]``bbxKWW\YW]\\]ZW\]_`bdbca]`Xbcb`cac^\]\XW[]_]`_][`d\\XZbecaR\YOXVY[YYWZZ`^abc`ac_\b]_][^^YYTX]\__^_[Z^^`bb\\W[]`bbcedgffge]eghifcab\cg`\iichife`baca_`_]]\Y\YXWXYYW\[ZWWXPXZ]acffrkJYW][Z_]\^\Y][^_bcbaa]b[bdb`cbb]\[ZWXiq`\`_]\ac_^YYcedbT_ZQYW\]\[Y[[c`ccc`bda`c^`\^^_ZXV[^\\aa_][`abfb^\S\_`cddfeggfff`fghhgdd`[fg^ahhcihfc`b`cb___]][Z[YXXXVZW\[ZVVULXX\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{{{{|{{{{zzzzz{{|||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvuvvvvuvvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{{|{{{{|{||{{{{{zzzzz{{||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||v}}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½sqrrrrq³ÖÒÒÒÒÖº}~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}v~~y1333332j{éääääèÊrooooon
¿éååååéÇ}~}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vxxxxxxxwwwwwwwxyyyzyywopppppprrrrrrrwzyyzzz~|||||||zzzzzyz{}||||{
|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvuuuxvvvz{x{xwvvxyyzz~|yyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{{{{{{{{{{{{{{{zzzzzzz{||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwww||}zy|{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwwy~|}}y{zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z|yww{~|||z|yxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzx{||}z|xxxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyywxzz{yyxxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxxyyyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{{||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}||}}|||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~
~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqppnnnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrqppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpppqrrqqqpopooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpooppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqqpppppppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqpqqqqpqpqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrqqqqqrqqqrrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrstrrsrsssssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz|~~|vvwwvuxzxxxxwwwvx|yy|zyy|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{{z{|{}|{{{{{{zyxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}|||~|}~~~~~}}||}}|}|}}{}}|||}}}}~~~~~~~~}|}}}}}~~~~~~~~
~~}~~~}}}~~~~~~~~~~~}~~~~
|||{|}||~~~~~~~~~~~~~~~~~~~~|}||}}~
}||~~
}}}
~~
}}~~
~~~~~~
~
~~
}}}~
~~~~~
~
~{z
~|}}}~|{|
~}~~~~~~}}~}}}
}|}~~~}|}}|z|
~}}}}~~}|}}zzz~~
~~~~||}}~~}}}}~}|zzz~~}~}}~
|}}~}}~~}~}{}~}}~~}}}|{{{zzyz~~~~}~~~~}~~}|~~~~~
~|~~~~~}}~}~~~}}}|{{|zzyyy{~~}~~|~~~~}|~~~~~~~~~~}||}
~}}}~~~~}}}}}|||{zyyyy}~~~~~~~~}~}}{|~~
~~}}}~~}}}}}}}}|{zzyyyy~~||
~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
|}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
||||}}||}}}}}}}}}}||{z|xyz{|~|~~{||}
~
~~
}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~||}
~{z|
~~~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}||}~}~~||~}{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~}~~~~}|}{}}}}}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{||||{|||zzy{|z}
~~~
~~~
~~~}~~}}}}~{{}}~
{z{ywz}~
~~~~}}||}~}|}}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}}~}~~~~
}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~}~~}|~}~}}|{|||z{z}~~|}|}||~~|{{}~}~~}{{{}|z{{{~~}||~~~y}~v{vx}|||{}}~}}~~}~~~|~~}}}{{}}|z||~||}|||||}|}{~{{{|||}|{{{{||zz}z~
~{|~~|z~xyvw|||{{}|~~~~~~~~}||}}|}}}}{|~~~~~~~|||||||~~{|{||||}|}|~|}||{{|y{|{{}{}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}}}}}|}|}}}~|}|}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||}}|}|}}}~}}~~|{{{||}|{z{|yzyxy{~
~~{zy{}}x|zr}{{|||~~}}
}~~|~~~}|}}~}||~|}}|}}}~}~}}}{|}~||{|}zzyyzy{{~~
~~~z{y}}zzz}q~z{|}}}}zx
~}~~}~}~~~}~}}
}~}~~}}}|~~~}}~}|}||{|}{{{zzz{{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv~
~~}~~}~~~}~~~|}}|~~~~}|}}||}}||{||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||{|{|~
~~~~~~~~~z{z}}uqz|zqz}}yxtt
~~~~}~}}}~}~~}}}~}~~}}~}}}}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xytu}
~}}~~~~}}|}}~~~~~~~~~~~
~~~}{z{z|{z~~}~~~~}~}}z{|
{{sy{|pwuvwyvtz
~}}}~}~~}~|}}~~|{{z|{|~~}~~}}}~}}{{zx|vyz|qtxwvxury
~|}}~}~~}|~~~~}}z{{||}}|~}~}}~~~}}}~}}}}}}z{{|v}yxzzruyyvwwsu
~~}}}~~~~}||~~~~{{|||}}}~}z~}~y~|||~}~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~~
}}}|{||yz{z~y|yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst
|~}~}~~|~~}~~}~}~~~~~~}||||zyvyyzyvyv~|{{{~|{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~}}}}||~~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{z{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvqwyrx
~~~~~}~|~{~}~~}}}~~~~~}}}~~|~~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}}{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~}|~}~~}}|~~~~}|~~~|}~}~~~
~~|{{||yw{ywxwwx{{z{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqspxwq{
~~}|~}}~~~~|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{|||zzzzzzxsvupprowvr{
}}~}~~~~}~|~}~~~|}~~z}~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyysuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|z|}{}}{yz{zyystunsqpxruz
~}~~}~~}~}{~~{|}{z||{yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}{||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~~|z}|{}~xwvyyy|}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~}~}}}|}z}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{~~
~||||x|yzyz|}|{||}}}||~{{{zzzupxwyvu|uv|
}
{~~}y|zzz}||}z||}}|z{~~~}}||}|vrvxxvtvt}
}
~
{||}zz{}}||z|~}|}}~~~~~|}}~~}|{xvuv
~
}}||{||}}~~~}~|||}}~~~}}~~~}}}~}}~~||
~
}}}||||~}~}}{|}}}}}~~~}|~~~~~}}
~
~~|~}}~||~~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uy~
}y|~{
~~~}}}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqtpurstv{}uvy
hzrss|s}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyy
rpvxqvtturstvinrotvnulwm{snym}rsvsvmmxlpylu}}~}}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}}|}|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyqjoyxpkyszozwvvp~~~z~}}}~}}~~~~~
xyrz{pp
x
xyks~y{krz|m{yyt}vnoot|uwqy}}m~uo
zrr{|upozls|nw~~}}{}{|}}~}~~}~}~|}~~
}w
}~{|{~{||}~}|~}}~~~~~~~}}}~|{|~||
}{{|}{||}~||~}}~~~}}|}~~~~~||}~{|||{{~
~|{}~{|{}~}||~}~~|~}}~~}}||~~|}}||}|||~z{{}~
{{~}|||}}|||}}|}|~}|}}|||}}|~}{|}|}|~|||zz||}
{}~}{||~}|}}|}{||||||}{{{}|{~|{|}}|}}}|zz{{||
zz
~|~~||}}|}}|}z{{z{|||{{{~{{}{{{~||||}~}{z|z|}
|
~~~~||}}{}}|}zz{y{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yzzy{}}zz{{}|}||z{}||}|~~|{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yzz{|{|{{z{}}|}|~~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|z{{{|}}}|~}||}~|{
~}}{
~|}}}~~~}}}}{|{zyzzyzz|yzz{{{}z{{{{}~}}}}||}}|
~|~~
}}~~~{||}}}|~~}}~{~{{zy{zyzz{yzzz{{|z{|{{~~}|}||}~
~~}|}~~~
~}|~~|}|~||~}|~}}}||{{zzzzy{zzzzzzz{|y{}{|}~}}}
~}~~~~}}~~~~~
~~||~}|~}{~|}}}~}|||}{{zzzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFL=8765999<>9?<D:;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>9=::;88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<9<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÒÓÔÔÔÔÔÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9?CE@<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÑÓÓÓÓÓÓÓÓÓÓÓÓÓÎÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚØÖ×××××××Ø××××ØÜÝÝÝÝÝÝÝÝÝÝÝÝÞÛ×Ø×Ø×××Ø×Ö×××ÖÓÒÓÓÓÓÓÔÔÔÔÔÔÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILO@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÍmpppppppppppj§ãÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde¦º¸¸¸¸¸¸¸¸¸¸¸¹³xssssssssssssp»¸¸¸¸¸¸¸¸¸¸¸·½ÒÒÒÒÒÒÒÓÓÓÒÓÓÓÜâáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVN<::77>C>8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÎN&+++++++++++"ôëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSO§£££££££££££¥2)++++++++++*%a©¤¤£££££££££¡«ÒÒÒÒÒÒÒÒÒÒÒÒÒÑßêêëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;@C>6:7>>;=B?9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÍÎR+11111111111'óééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWS
¨¤¤¤¤¤¤¤¤¤¤¤¦8/00000000000+eª¥¥¥¤¤¤¤¤¤¤¤£¬ÒÒÒÒÒÒÒÒÒÒÒÒÒÑÞêêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;>@@8:;8<;;<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÏ\9===========5ðççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbb^¬©©©©©©©©©©©« E=>>>>>>>>>>>9n¯©©©©©©©©©©©¨°ÒÒÒÓÒÒÒÒÒÒÒÒÒÑÞéééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB?;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÅÂÃÃÃÃÃÃÃÃÃÃÃÂÉÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÎÎÎÏÎÏÏÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÏÑÑÒÒÒÒÒÒÒÒÒÒÒÑÊÊÊÊÊÊÊÊÉÉÉÉÉÉÌÒÑÑÒÒÒÒÒÒÒÒÒÒÒÔÔÔÕÕÕÕÕÕÖÕÖÖÖØÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<8@B<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÏÐÐÏÏÏÏÏÏÏÐÔÐÐÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÎÎÏÑÎÏÓÓÏÎÐÔÒÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖØ××××××Ø×Ö××××ÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÕÖÖÖÖ×××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÎÎÑÁ§ÒÏ¡ËÑÆ«ÒÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÎÏÏÑŪ «Î³ÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D>A98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÏÏÓº¯«±¡´ÎÏÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<:6?B@C:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÏÏÓ±§§´¿ÉÆÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8FA?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏÏÑÀµ¤ ÃÒ ÎÐÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<B@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÏÔ£¢ÅÅÉج£¿ÕÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:=?>=<9@<<;:9?@=<==@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÑÄ{¢¡»ÍÈÒÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<;;8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÕ«¯¼ÀÓy°³¥ÐÛ¢µÕÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:969;::;8@?:<<9<>=;;:?9?;;9=>==;;=<@CB?>>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÉ
¢£¢¨»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;547<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÆÓÓÕ² © ¢©¢©ÐÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ACB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÒÑÒרϰ¥Ô¾ÖÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFHKH=657:979:;:<=9>99:8;=>>A>=9<<9=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÑÒÏÅÔÕÀ½ÖÔÓ¸ÈÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>775;8899:;<><>8::9;>?@=>>:5::<=?:;9:<=BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÒÒÓÔÒÒÔÕÓÓÓÖÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ>>786977899;;=?@<=89;;;?><<95:<>;:8:;???BBA>A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9599:7<=;>@==79:;9>;9966;=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<59:<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EILAALD??;:889386869>=>?=:6:;>;==:968:=;@@<@?=>?B><><<BEGIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDJ;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGIB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<?B?:8776=??@=@@??==;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>=<?@?<5676<>?><@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AA??@@BB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEFC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@C@CC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:;<>;==;><:;89:89AABA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B;9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=;?=:99:<9;ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6;DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<<DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875776858@>@;<9<;<>::;9:;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGGNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958:89:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995687673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86776668784;?;>=9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778777656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiihxsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778679645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptyvt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9867556747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsoupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664766=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:863656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87863767:66659>?:<?;?9;:7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==<?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757878789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687789:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495666788:<;=>:;::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYEDKPN<9886553956676879>:=>:<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643954775679=:=>;=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573146498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730473785766:=?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»ºº¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA8<;6:56534658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjdmgb\XQPQKTJB:IQ?A7<94:565455588686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸········¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®xpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µµ¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269664737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢¢¢ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¥¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;;;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤££¡¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::88:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££££££¢¡ ¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¢¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥£¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>98;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤£¢ «cimnifm £¤ ¡ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9;;>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:=>:?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾¸¶´³°¶µ¾ªptr\f_]]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾³¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=9F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VPQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
}§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s}~
z}}¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
z||}~x
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPFMHSWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~}}¨®²¯¯µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWLO_^\NUTbQDTM;?:<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
£ ¤£¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJCPK_bXZQ\S_MHQIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©¨§¡¥¨¨«©©¯¡¡££ ¡¤¤§¤©«®¬¥£¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdVOXKKJKSTpbYdW_[\RZPLC<8::698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®ªª«¤¡¢¥©§§©¨£¢¤ ¥¨£ ¡¢©§ ¢¢®¬«ª§®¨¥¤©©©©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPORd\dc[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨¦¥§¨¦©¨£§¦¤¥¢¡ ¡¡ ¡¤¤¢ ¢¢ ¡ ¢¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOWO^ddlgbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤¢ ¢¦¡¦¦¦¡ ¡¤¡ ¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvwa_\UYQUV[c^r_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;><@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯«ª¬¨¨«°©¨©¨¡ §©°²¯¬£¢¦¡©¥¤£¢¦ ¥¤¢¥£ ¥¢¢¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\V\hdocnihb^PQ@?;:8:8<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£¢ª©§®·¶´´¶³¯¬«®«¶°©²±®§¦¢££¢¨¥¡£¡¤¢§ £ ¢¥ ¤§ª©¨ª¬¥©¤¥©§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxib[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>AE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ª²¸¼¼½»º¿´¯±³µ´··¯µ´µ²°¨¤¢ ¤ª¦¦¡¤£¤«¥¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨©«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥ ¡¨¦¦¥£¡¤¢ ¡¥ vxyxc[RYT__alhukpgiibYSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶³º±ª®´±°±´´¶¼¼¾¼¼½Æº¸·º½´¯µ±±º¸·²³²ª¦¦¤¤§¨¤®¤««µµ®³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YSah`fsositdidb[LK>:8898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÃÆÃù½¿ÀÀ½¿Ä½¼º½¾´§ª±À½¸µ¹À³¯¯ªª¨§§¤¯§ª´¼±´µ¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`a^^jbbnwuvnl[bQU\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAB;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±±§¼¼¾ÅÄÆÉÇÅÆ»ÄÀÅÆÀ¹¯½¼À¾¾³«ª³»¾´µ·Âº¯°µª«¦ª£¤§±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklfnuqruqf^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎÌÌÇÁÃÇÇÈÊÅÄÅû¼¼ÁÅÁÅÅ¿ÃÂÆÅÀ±¾º¿Ã¶¶º©´³´©«³»»±±¯¬¤¬®´§ª©¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tkkndolhqxoyiia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄËÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄø´À·´¼Á¹··¿À»®¥®·¼·£·°¦´µ¬®¥¥£¨¤ ¥ª³²¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{vnkhguZfrwsxff]d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÅÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÉÆÃÃÄÂľ¸¾ÁÃÀľÁÏÏÎÆ«¯¶´µ« §´³®«¸µ³«©£¢©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuueeijh]jomxwbb``^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÏÏÌÃÇÆÈÈÈÇÉÇÅÉÇÈÇ¿ÅÇÄÄÇÈÊÒÏÒ̼¸¶´¸¸Á¾¾º½º¼º¼¬¦©»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqobagugihtmxl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÍÐÎÇÌÉÂÁÆÁËËÇÆÌÉÍÅÆÆÃÆÅÉÍÐÍÏÌÇÄÀÃÂÉÍÇÅÁÄÇÁ»¾´±°°Á¾¿ÁÆ¿¾¸·Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlidtnsb\bTWTSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<:>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÅÇÈÆÒÉÁÃÄ¿¿¾ÄËÈÊËȼ»ÈÇÉÍÈÃÈÉÉÆÅÃÂÁÂÇÇÉÊÇÌÈÇÈÍÆËÏÅ·ÀÀÀÀ»»½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrofegcjdajmnn^X\VUNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾÆÁ¹»Ãº¸¹¼¾ÁÆÁƺ¹ÉÉÃÅÄÀÄÁÂÁÄÁþ½ÂÀÀÁÂËÃÆÌËÅÈÑ°¾½¸º»¼¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfaebabccjbfcZYY\YQNE=;8:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿º½¿¹½ºº´¿¸µ·³¯»¼·À·½Â¿Á»¿Á¼»Å¾»ÁÄÀ¾¾¸¼ÁÁ˾½ÉÄÀÁÊ¿±Â¿»¸»¾¹µ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qc`bbgjffiei]VUSYOSKE8?6::779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µºÁ¸¾¸¿¼½·µ·°®¸¶¹¿»À¿·Á»»Ã¶ºÈ¸¶¹»½¹º¶»ÅÅʽ¹ÅÀ¿¼Á¾¸Æ½ÁÀ¼Å¸¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zxpmeefoiekgXXNKKKRILHC9>8=;6:;:67<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿½¼²¯¬±°·¼¶»¼ÀĹ···µº¹º»À½ÃÀºÄ¾Ǹ¹¸·µ¸º´·³»ÅÆËÁ»ÆÀÀ¿½¼¿ÉÃÄžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksebm_\THKJDJBCG?9;8=<7;;:78;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼¼À·ª¤®°·»³½¿»Ä·¶¸¶·¿¿Ä¼ÂÅÅÇÇÊÉÆÏÂÁ¸®µµ¼¾¸»²¾ÄÄÊÅÁÉÿ¿¾½ÇÌÇÇÄǽµµ¶Á½º»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qelintnwcga\cQKTHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?=??FD@A?>:7?@CC?A=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼«ª£°¹½¾³¼¾¼Å¸²¸¹½ÇÉÊÃÇÈÆÆÉÈÌÎÑÌÊĵºÀÃÈ¿¿µ¿À¿ÆÆ¿ËÆÿÁ¼ÀÃÌÊÇÅÆÁ¹½¼Ä¿À¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_b^`aNHM?E@?DC;;::;:8;<:9<>9:>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´¼Ã¼ºº¾¼Ä¿·½¿½ÇÌÆÇÉÆÆ¿ÄÄÊÈÌÌÍËÆÂÃËμ¹¾º¹ÀÿÈÆÄÁÁ¿ÅÀÊÉÃÃÃùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw{_pc[]_^SI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA>>ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µ»¶¹Ä¸´¼¶º½Á¼»¾¶¿Á¿¼¿ºÀËÂÇÈÀ¿¼¼ÀÅÂÇËÈÁÃÀÀÉËÂÀ»»°´¼½ÀÅÆÅÅ¿À¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}zmsxsgp]Z^\YQEDCMIAD=G::59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯·¶²µ³·¹¼»¶»»½ºÃ»·½·¹À»º¸¸µÅÁÃû¹³´ºÁ½¿ÇÀ¹À¼¾ÅĽ¾¹²°®¸·¿ÃÇÃĽ½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸¸¸½¹»±¶²ÈÀ»¶´±°·¬³©°³·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¦¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|vluzpni[__YSPAEHGK@DCH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯²´´´¶¸¹ÁÀ·½¹¸¹¶µ¿³´²¸±»ÁÀ÷·°µ¸¸¸Âº´»·»¾À»»¼®¯®³²¹ÁÂÄþ¼¿»º¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ¯µ´´½º¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsvvwnq`_e][TJ<>?FF=FCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Ã¿·º·¶¶²´À¶²´¸³ºÀÁù·²²²´²·¾º³µ²¼º¼¶º¾²´´´°¸¾ÃÆÄÀ½¿¹³¯²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtvrl^b`[]NHA?=HCFMD?775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·À½»¼¸¶º¶±Àº·¹¸¹»ÁÁÄû»¶´´°¶º¶´²¬¼¹¸µ¸Áº¸³±¬·¼ÁÇÿ¹ºµ®¥¬³±¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶ª¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wo{ournc\fX\]RNMA>JB@JI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³±¶º®¬¼²¸¹·»¿½¹¾À´¿»¼º¸¾Â¼ÂÊǾÀ¸¹¶²´¶³´¯¬»º¸¶¹Àö®®ª²¶¼½¹¶²±¤§§£¦©®¹¬««¥¨¤«®®§¯¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmuik][jT]\OMHDFLAFMF8665:5:=8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹ºµ¹»µµ³µ»¼À»¾À´¿¹¹º±ºÃ¼ÂÊž»¿¿¹´´³±±®°¹¹¶¼¸»¿²²²®±®¹¯ª«¬£¨¡¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬«¯£££¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndT`cW\QNLH?HQDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¯²²ºº··µµ¼´¯´«¶º¸ÀÄÁ»¶¼½¸²³°¯¬®·¶²´´¯ª¤¨¨ ¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡ª¨ª«¥££¦¢ ¥£¦¤§ ¢¤£¡¡¬«¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vybwln\QhTPNGOMLBOQ@>;>39:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¥¬ª¨µ²±°®¯²§¦¯£¯®µÁºµ·²·¶²´«²´®ª«¯°²³¥ ¢ ¤¥¨¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦©°£¥§ £ §¨¥ ££¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uu}mk{dhUQcMIHGNRNJNG;D@=2?749;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡©¡ «ª¦©¤©£¤®¥¬¬´¼·¬²±¯±µ¯¯³µª§¬£ £¢¥¤ ¤ª¡¡¦§ª¢ §¤§¨£¦ªªª®§¨°¥£¤¦§¬¦¡¤¡¯¨®²«¥ªª ¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}vx|dxz`bRU_HIIKSTIRPL8>B67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ £¨®¬««¯ª¯©¥¥¦¤ ¢¦ ¢®«¬µ²¶¦¯´«©ª´±°°¸§¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§ £±±±´©±¯¢¡¥¡ £¡¤¢ ¢¦¥¦¥¤¤¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|uvshle\SZYMQJNNULRLA7>B78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=?758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢¡£ £ ¢¯®¬¯±¬¶§±¦¦°®¬°§ ¢ ¡¢¤¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¾°¬±®©ª´±°¨«¨²µ·³·¬±´£ ¥ ¬¡¡¢ ¤¡ ¤¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xuiwu]mZR`HQUHFUVJBMG=JH8E<67;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¢¢ ¢©«§¬©ª´«««¥¥«¨ª¬ª¥¦ ¨¥±ª§®£«¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼·½³³µ¡«¢©¨²©«¨§¨ª¦§ §¨¥¤ª¢¢¨ ¥§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vqmiwmhm\X[BVMJGMGBFM<>L=4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DADABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·£°¦ ¤¤¤¢¤£¢ª¯¬§©£ ¡¬®®ª«¦ ¡£¡«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶ººÀĹ½»¬¯§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â¾¸´»Åü»·³©²ª³µ¯³®ª®£«§¶±¬¢¯¥ £¯±°¤¤¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤£¢¡¤¦¢¤
{tqkkurphW\QETHDIOH>EA3EH95;=6;<?<<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C?ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ ¡ ¥¥¦§ «±®§¤¤£ ¥«¥ym ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÁÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌÌÌÒǾ¿À½ÇÆ·ÃÉÈÂÀž¹´¹ºµº·°µ²ªº±®»¶¾»ºª·«ª¸º´¼®¸¢¥¢§¥¢£©¦§ª§ ¡¡¤£¤¨¢}zrkdioxjeZ[FJLDDSLDBD7:?;549979=><<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:=A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ³²¸§¡¡«ª¢¡¢ £¡¯³©¡wsqnp¦®´¹Å»ÍÇË¿ÂÌÎÍÌÈÉÑÌÍÌÇÉÅÆÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÒÓÌÓÐÓÓÌÊÂÅÆÆÊÇοÉÐËÆÄÆÄÁ»ÃÀ¾¾¾µ½³¾¿ÂÃÆÄÇÄ®¾¸²¸¼ÄÁÁº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLCEPIDB@55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª££¬®¦¥±ªÅÆÌÎÍ¿°Â©¥¨ª¡£©¡ ¤±±«¤ yrroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÏÊÓ×Ñ×ÒÔÕÓÓÈÌÇÍÍÉÒÌÎÓÍÄÇÉÊÁÅËÆÈÈž³³ÇÄËÊÊÎÅÊ¿¾¿¼ÁÇÄÌÌÈɿÿ°³¨¢ª£¦©¬¤¥¦
zruugbgvidVWQDMF@IQB=B<:23@<D<79<B=<=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ´¸¬®£¤£ ¤¬©¦°®¥¡¥¡|wpkebhqoq{
vpnqtp
³Â¾ÅÑÑ×ÖÖÒÖÍÔÖ×ÔÓÑÓÔÔÒÏÑÃÐÓÖ×ÕÖÒËÉÎÑËÆÍÒÊÒÕÖÙÕ×ÓÖØÎÒÉÎÑÌÏÐÌÒÏ¿ÇÆÊÃÌÌËÎÏÅÆǶ¿É¿ÒÌËÏÅÉÈ¿ÃÂÈÎÌÏÐÏÌÊÇ͸·»¨¥«§£ª¥©¨¨|wsvoc`erb]R\IJFAEHI>;@8=4585:76:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´¶ÂƲ¶©¢¥¦¡¢«µ§±¡¦«¡¡¢wica____^_`^blusqpolrquÄÇÆÔÕÖ××ÓÖÏÕÔÚÔÔÏÏÕÔÔÑÑÌÑÎÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐØ×ØÑ×Ò×ÙÕÖÌÎÏÉÍÑËÎÏ¿ÅÂÇÅÎÍÐÐÑÈËÌÀÊËÅÓÎËÎÈÄÉÆÆÈÌÊÓÓÑÕÏÒÌÒÁ¹Å±¥¨µ®§¨¬¥²¨°³¬¬
{zqstmacim_VP_JJBFCQM?<>44:=52755<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡©¯®ªª¬¦®¸¨«·ØÔÕÙÙÑÎÐÀ¼ÌÉ·À¯§«©£¤±¶³¤¶ª¡ª©¡¡~recb__a__a`_``_`fmppnkorwwÌÀÒÕÓØØÖÙÑÒÒ×ÏÓÎËÓÍÕÔÑÊÏÌÓÖÒÑÖÍÐÕÕÑÆÑÔÊÑÔÕÖÎÒÐØØØ×ËÈÍÃÈÎÌÉË¿È¿ÈÉÍÍÏÊÐÍÎËÎÎÇÊÏÐÊÎÊÂÉÆÉÌÊÌÑÒÌÓÑÐÏÏʽȹ°»¸µª¶°¨¸³¿»±
yvopnkbenpaW\ZIFFDLWE;@<34<=86855;>@<9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6==?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¥®¾´±ÀÙÒ×ÚÜÖÏÍËÃÓв«®¬¦³±¸«±¶©£l^^^adb``aa``a^__^]bmroostvvy¤¾ËÕÑÖÔÓØÖÎÎÔËÍÎÅÎÊÒÒÏÆÎÍÍÔÌÎÓÍÊ×ÕÐÌÑÓËÌÐÑÓÊÎÑÕÒÕÕÊÀÉÁÅÌÂÈÉÂÌÂÅÈÉÊÎÊÌÌÏÍÓËÅÇÏÌÇÇÊÄÆÀÅÉËÍÐÑÆÏÎÍÍÌÏÅÇÀ·¹½Ãýù²³¾±¼Äĵª¥¡
xpqknh``qhXXhVMGLIPPB;D>;67:89:57==@;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;776?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÅÃÁ¿»µ²±ÇùËÕÖÙÚÛØÍÌÏÉÖÖÅĸ²¶ª¤®¸»ÁÅÉ¡|ebbb`]^acb`_``aa`_][]grqqrsqmry¤ÆÓÏËÐÏÔÕÉÅÉÉÆÆ¿ÃÆÏÎÇÅÇÍÊÑÈËÎÍÆÑÒÏÎÌÔÊÇËÎÏÇÇÏÒËÐÏźľÆɼÂÆÈÎÄÂÇÀÆÍÇÃËÉËÏÇÃÃÏÈÆÁÆÇþÀÇËËËÎÂÊËÈÇËÏÄÅÇ»ÇÃÈÈÂÏÀ½¼¿°ÁÊǺ½ª±²§¥¢¤wntdl`^fqa[W`GHHGIMTG?J=64355=<48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥³±¬ÉÍÊÈľ½ºÍÍÆÐÕÕÙÚÛØÐÊÐÐÒÔÊź¾¾°¨·ªÅÝÖDZ~
t`[^^^`^`cdc_]]^_``_[Z\`krrookloo}¸ÑÈÉÊÏËÍĺÀû»ºº¾ÈÆÂÃÀÃÇÊÉÈÊÇÁÅÌÆÈËÍÉÄÂËÉÂÂËÐÄËÈ¿¹ÁºÅǽ¿ÆÏÊÿúÉÇȺÇÆÄÊÀ½ÁËÆÅýż¼¿ÃÄËÄļ¿ÉÂÅÇÑÅÀÈ¿ÊÊÆÈÆÐÃÃÆïÄËÇÄÊ·¿¼º´©¬¥¥¬£¡¥£ {vstfj[anmZ[XQDLFBGDLDFS@54334?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÇÍÏÎÍÕÐÖÙØÙÐÍÔÎÏÐËĸÆÁ¶µ¼¯ØÃu}{
vxurp_Z[]`abcdded`\\]]_^`[YZ\borokilposƼÉÅÌÀƱ¶º²²³²±Â¼¼»¹¸ÀÁÁž½¹½¿¹ÄÊÅƽÆÀ¸»ÄÉ¿ÂÉ»·ººÅ¾¼ÁÍÂƾ½µÀ½Ãº¼Æ»Â¹³¼Åö¿µµ¾¿ºËüµºÈº¿½ËÃÁÅÂÆÈÆÈÆÐÆÂÌȲÇÊÃÎÍÁÅ¿½²·°³§¨¨¹±¥°«¬yvwjeh`hocV^YJEJFHKAFBEI@9:648853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÆÂÄÈÎÒËÊÊÇÍÎÏÒÉÑÆÖÕÖØÎÌÐÈÍÈÊžÊÁ²µººÓpV
y~|tud\\]^``bcbbeeb]][\^\^]Z[]]hsqmggnpry½ÌÀúÁ¸®°°§ª¬§¸´·´³²³ºµ½±·°µ¯²»Â¼Áļ¿»µ²º¾À¸Ç¸´»µÀ¼·½ÆÀû´®²¶º¾³Ä·»µ«¸¼½À½°ºµ¯¶º²Å¼¶®»¿´¶´Å¼¾ÃÅÀÃÅÆÈËÆÀÆÆ»ÈË¿ÏÊÇÃÆÁ÷þ½¶¹¾Æ¿¬µºµ·¶xtxggebkn^V^`FKHHJFBCAEE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÎÈÆÉÎÌÐÍÎÉËÉÌÊËÆÑÏÓÑÏÈËÆÊÆÄÀ½Ï½³¹½½¹X{y~wx}th^]]]_`_`da^cec__\[^\]^Z[[]_lpmhfjmnr|¤Ç¿¹¸µ°¬¬§¢ª§«¬³©«©³¶°²©®¦¬²¼º¶Ã¹ºº±ªµ¹»´Âº°¿°½¼»µ»Ç¹Â¶ª¨°±Àµ¸¼¯°§±³´»¼«µ¥®¶®º±°ª¹¯»®»¸»¿¿½¹Â¿ÇÃÅÁ¼ÆÁÈ˸ÅÇÅ¿ÇÃúÄÆ»ÅÉÌ˳¹Â¼º²rvvkiablhYXW[ALKMIEAC?FA:9:995854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?<>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÆÏÒÌÄÆÁÅÐÈÏÂÄÇÁÆÆÅÅÌÄËÌÂÄÁÈÁº¼»Ê·´¼½·w|y~
z{wn^]]]]_`__dcbccb`_^[[ZZ]ZZZZ]dnohfgiknr¹°µ®¦¥§§ ¤ ¥«®£§¢«©¬ª°£¦ªµ¶±½¹¯¸¯¨®¸´´¼¸³¼®·¹´±»Á±Á®¥©¢¬±²³§¼ª«¨«¬´´¦¨®¡¤®©²¥§¨®¥¨·¬°²·¹º»±¼½¾¾Ä¿µÁÁÇÈ·¿ÀÅ·Ä¿»¿ÄþÄÈÌÊ¿¾ÃÀÀ©rtrji]aodWVXPHZRSKFFE>?@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·ºÄ°¶°ª©°±³µ½¯ÆÑÐÍÄÈ»»ÌÃÌÀ¼Ê¹ÀÆÀ¼ÌºÃÇź½Ä¾º·½Æ¹¶¹»¯²{~~xt|swf_]\\^_`^_ccab``_^]\ZXY[[YXZ\_fkfegehkor
ª¥¬¦ ¡¥¤¡£ª£¢¥¥§¤¬¤¦¬²¯¶·§°¬§ª´«´¹°¶´¬¶¸±¯º¹±·¤£§±§«¨¹ª¤¦§¨§² §¦¤¦¬§¤ ±¬²´²´°µ¼¶»ÁÁ²º¾ÃÁ²¹ºÂ³À½¿µ¸»½¾¼ÂÇÄÂþ¿Ã wpkae_ko`UY_HNhOTHEJF<=?=:;;825536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:7676778666;::;9:;<859<:>>@;ȵ¶½¸ºÁ»¾µ ¡¦º¶«³³»³ÅÐÉÌÃǹ¸ÉÂÎÁºË¹½È»·È»·ÄƳ¾Å¼·°¹À»±³·°£
}yvtomkjjqi_`]\\]_`_acb````]\[\\XYXXXVX[]^dcbegggjmo© ¡¢¡¢¦£¥¡§¢ª°±µ¢©ª©«¬¤µ¸·¯¬²´®²´®°ª£¢²¤¥©¸¡¦¦¨¬« ¥£¯©«§ª«¬°²¸¯¸¹»°¶»»º«²²¹²½´¶±±µ´¿µ½À½ÃÁºº½zrk_e^ddXTX^IW]KPGIJFA<??@;?<04536:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÐÉÉÁǼ¼ÅÅÐÀ¼Ê»»Á»¶Å¸µÁÁ³Âļªµº·¨±³©ysnpnkb^bff]]^]]]\]_`abccba_\[[Z[YXWWWWXXX[^bddeffhikr¨¡¡¡¨¥¦¡¤ ®®² ¥¢«§¡µ°±±¬§®²§¹³¦µ¡¢£¢¢¡©µª¢£¦¥¦£¬¡«¦£¤¦«³³ª´°²ª²¹´¯©¯²²²·³©¬®±·°º¶¹½¿¶²±
yue^e^[YVSZUK[QLIEHKIB=?AA@@:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ¸½¿¶¾½¿³¥£¥±Âµ¶½´¸ÃÍÉÈÁƸÂÁÈкÃÆÀ¶¼½¶Ãº¶¿Áµ»¿»ª¦±»±¨²¯}
ypqtqhfdiec\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXXVWadecdeddhjv¢¡¡¡¨£¨ª¦¯°«££·ª ®¨¶©¦¦¬°£·°£¶ ¢ª¦¡¬¸¯¢¡¤¡ ¡©©£¡£ªª°®¨´«ª¦²°¥ª®²±¯°®®§§§²®±´¯¼´¹¶®£yud^aVYWSRTKM^LPKGGLKE<@><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾¸¼®§§£ª»À½À¹®´¸ÂÍÈÇÄžǺÊ͵ÄÅű¿À¹ÀÁºÀÀ¹º½·¨¨±»¦©¢¥~xrjlrtpihedgb\\ZYZ\\\]^]\[\^\[\Y[\ZXVWWVWXWWWU[ccbbcbcdfj ¦¥¤¥¦¤ª¯¦¢£¶¨ ¡¢¨³¡¥§¤¯¥°¬«´ ©¡¡¬±°¢¢¡¦¦¡¢£¥¥«¤¥°§¥£««¥¨®¯®«¨ªª³¥¦«¯´±®¼µ±¯¯ zvrda\Z]XNLQGRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8846863321./2556;:8;7876<;:;;A8x»»±µ½°»²·¬¤§·»¼Áź±¹µÅÊËÁÄÇÇɸÈƵÅÂɯº¼Â¼ÃÀÁ½¼·º¶¦§²¶¢wodbgihfhjgjm`]\[ZZYZ\]\[\^_\ZY[YYZ[WUXWTTWUSTRU``_`a_`acdi£ ¥¡¥££¢£¡ªª¥¥±© ¤ª§¡¬¬©¨¬¢¡¡£«©°¢¡¢¤ ¡ ¡¤¦£«¥¢¤ª£«®¤®±©¦¥¦¦´¦©¨³µ´¹º¯ª¬rpo`[WVUQFQOHZ\ORITKSLEGIC8;;=<8667:9;:976977:;:=<<7;<8>598:88659:;<97?<9678452121..1426:86:859898:;9@9{µ´´»²°¬²§§¯¹¹³ÀȺµÀ¯ÆÉλÂËÍÉ·Ë¿´ÀÇÌ°¶½È»ÂÇĽ¿·ºµ¥«°®|uijjmhjlnkkme]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\]^^___bdm¢ §¨ª§ª¥¨¤£¤®¤¥¯© ®ª³¥¦¢£ ¨© ¡ ¡ £¢ ¢ ¢¨£¢¨« «¯¤·¥££¢¬©¨«¯³¸²½µ³«¯rrh[XYSUREYLP\YMTOPLPRINIB<??A?=65799<<987:79:;<=>;7;;:=67:;8976989:6:=99577571141-+/434988::8::748=8?9~³®¨³¶®©¨¯©¨¬·¶¬¼Ê»¶¿¬ÌÇƹÂÏÐɵƾº¾Æ˵±½Å½ÃÆĽÁ³¹¯¦«¯«wxoninnnqggigd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUTSNPQYZZZ]\\^_`d~¢ ª©¦ª¦¯¢§¬ ¤¨§®§ª¥ §ª¤ £ ¢¥¥§¨¨ ±°¦°¼§ £¬´«§°´°¹µÀ±±«}prbVTUNRIGVQSRLLXMJLNRGMKACFDC>@75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8³¦±·ª¦¢°«ª§©²±¤¶Æ´¹º³Ëƺ¼ÃËÑ̳¹º¾ÀÄǶ´·½³»¼Ä¾Â±´®±®±¬¢khnoroqkpkdfge^ZYZYZZZ[ZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajzu¨ª¤¤ª§ ¥¢£¢¡£§¡¡¢¥¤¦¨¦¡ ´²§²·¡¢·¬ª¤²²¦µ¼µ¬«±£xrm]NPQLOCNNNPKFNNKJNMQIMJAGKHHC>858889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12776:999984988A7w¶§¤¶°¤§¤©¥ ©¥¤³ª¢²Ãµµ²³ÇǸ»ÄÊÍǵ¯¼¿¸¼Ä³³®¶¢µÄº»¯ª¬´¯¯ ¨}^`gsqvqjnifhhj_XYXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQNMKLSWWVXXYX[]aosvq
¢ £¤¡s}
z¢~~tz¢£ ¡¤£¢´¯¬¯¬¥¹¦¥°¡°®°»ª©¯ªvrbVLQOPMCSNLQMCPPHINSMHJJDJLEJK=749888;;69;7:<9::;79?9>@79:<89764445874312485/0102)(,-12764789::65:87A7w·¢£´¨¥¥¨£¦¥¦¦¦³§¥´À¸°´°ÊƹºÂÏÇ¿µ¯½Ã¯±Ç²§¬¤®¿¸±°§«¢rWV_hgihincjhgb\XXXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTQMMJHNSSSTUUWY[]ilrm
|tNXr_;Wo{
ryz
}xqo
~¡ §¯¨©¨´¢¦¬«§´¢©£}qm_ZNSQVLDTJPMLFOOJFLQMKPJIMPFIH=7599999:7:;:>>8:==6:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9x· £®¡¦¦ª §©§¢©°¨§´Á¹±µ°Éù´¿ÏÀº±±¸Ä«®É®§£¢º§¨¦¥¤¡iQMRVZZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`moi{tPB@}y`JQnx|n~wuvxpQ{~xvgw
~¤£§©¥£°«¡¤¤¦ª¡ª¢¦¨tke][HQQSLIUMSILLPIHFKOLMTKQQOFIC<769:8:;;8:;8>?99>=7;<6;;478;6775344696/3/.115221/,')+*,4833979:99::::?9v¶£§¡®¡§¨¥§¨¯¬ª¶¼¶¸¶³Â¼·¨ºÉ¹·©ª·¸¶Àª¢²¢ dMLNNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZntw~ji]Ut{
{uxsnupty}ª
yzhv{prmxxz{vsrwguz{¨ ©¥§¤ ¤qg`\\JVOQGKXROJLMRJJJMPHLQLRTMEHA<78;99>=:;<98@?::>=7==79937795675252572/2.,./200/-+(().1262198798776:<<7v®£¡³©¯©¥¬¬°±ª½´²¼¸¶ºµ² ·»³««¬µ³¥¤
dKIJIGFHHPTTTWWSTUUUVWWWXXXXXXXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQRSV^u}ygw}gyvx|r|v{ok~|s{}tfv|
lohs|lyq}pmuqhq}pC
~wwz
}zu~£¢¤umkeaYWXTQJRUTOPNQVKNKNOJQOIOOKFD<;79;::?=9<:99??;8<=7<9999266856633621224.,,-..-0-+*''*.1362/876966527995y¦ ¦¯¬®«§©°¯±¬¼¸¬»¾¹³¨±¨§¬§¤~|z
~~bJGHFB@CDILLMQRPQSUTTUVWWWXWYYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNPQTX^eprm§ªÀ~uyb{xo|yy|
omxsxjjr}Inhw~licly
ksl|nr{hmp~s
z}~{vott
ywp|}lhmnmWUWTQQYOSUTTXUMNHMJMNKCINGE@:89;99:><9<;::=>:8:;9?868727575541442/024*+**-.+-*(*(',-1250,5567485HA895w¤¯¢ª¨µ¯®¬´¿«¼Â¿¦£¥
¢¤v~
|x~t}xtwydOEGD@<>>AFGGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jrAo;<95<_IMOORWZRY\`§bitze~pmzutlts{jkLyg1vsl~}tfet~
filukp|gpp{n{s}|qpnum~wytiyyuiingcWQYWXY[MPUVZYNIIEJJHGBAFDCG=998;9:9<:9;:::@<9:<98>787715244533645031.**+),,++)(+'),,226-+5775478iO8;5n¤¨²¦º®«²°Â²»ÃÇz
twvwuxvoxrhUFID?<;9:?@ADDEGJLOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOPQVLAIQIb¯³ q|xm}mq
yyr txsu5q¨¡¡¢vp||shfbinrmpuioXuovlz|mqmpzsumbv
ux~}xpnnj^Z[][YX`_SN[ZYXLHJFJG?CABG?CD=;97=;:;;9:99;:?<88=:8;66651121353475531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥´¨±®Á³ºÁÆ}nv
oy{{q{t|ko_JPG>@7458;;<=>@BEILLLMNPQRUUVWXYXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~lv|}
~v¢y~
aªzv~s{\dqtz{wlgiaxo
znwszpsywkni]w}|}q|uw{}tmqrde^ZZ]S[f^XQUY\VGKKELG?F@DC?AA=:97<;;=<::99;;=>79>9986754244004645654-,)+('''&(())((+++/00Uq<23331E~W4=9\w¦ ª°©¯À±»Æºzvk~
yu¢~~s}kzlSXLAE311266688:<?BEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJi{y{q|{|~v¡¥¬©H¯¯¨sl|}hggx~n
qGkwqyvhmk_w}
z{uv|wmow~}qqpjZ[[ZcbWge\UPQXZQDLLGOICFCCA@CA=988:::;;:888::?>6;>7595773344236756768;DFLMMLC7+"&'+)++,/00+nu22420L\5=<^t|~
¬¡¦¸¯³½´}tp~}¥yu
y_cVLC60./22123668:=??BEGHJLNQSTUTTVUSQOGC?80,#[>?84.]ps£UFIKMNPW`YpZ\^j
~
¡¥»±§»Çç¡¥{r~v
ihotqw{v
}nvug¢«£{zzogkx}w|qic\YY\h\af_ZOLNXSQIPKDNGCJDCADDA<:87=<:<:88778:==8<=68756623445576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nvpgx{¤¡¬¦«¯°¡xw}~mpj^CA4--////02234779;=?BDHJOQRSRSSTRPOHDB<87/9C><<63.lMPHIKKKNV`cggmu ¡£©¥£¬¨¶¢§Á®ȯxº|¡
¡
lpuvql
r¡¥¶©¢~kjl}~}q_[b^Yfj\lk_XKHPSQNMLFIQDDNFBCEGB>:97=<:;:987767;:6=:785456345566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYppuqv~§ ªhf¤~
z}
xxhNR>//.,/.-/000212457;?CFNPRTPQQSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} §¦¢¡¢¨©«¨¬©ªµ«¿«¶ÈÉ·ÈÑϾ pi«©
§¡wz~¡{v«³ }¤£§¶°¨lss{|ynf^[_^agc_gg\REKKQOIJMFFMCHLFFCBGDA:85<<899975658>75=84745754546958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f3A@ib^Pqu`n}aw}|ªªBD}y|
w_bP460-1/,.00./..0015>AAMQRSPRSUSNSLEE@<>=FH@A@8662<9;FHGIIMOQYmw£§ªµ½¸¥®¬¬¨©µ¬±·²²»±³¾³Ä¬»É˸ÿ·¥£°²¬ª£
¥¦ ¢¦¢ª§¤
£ ª ¤©±£§·»¡£°££¤¢«°³µ¢¦ªz{~{e^fZc`]bb^fg_[ODIHTOFHLFKGFFHAKFCFFA;87=<88:974658<54<76:54644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicWjpXz
v
ÚÈsV|{
qna@E64<3/110-,+-1/-4?DANVQRSUUWUM\QGGD<>>FHCD@8;<5C;=FKIGHROPW ®£³ª²ÁÇÄ«³Å¶´À³¸¾¶¿´Á¶»»¤¸Æ©¶ÉǶ¾¹´¨£´°±§¯ª¤w¤¡«±³©¨®µ»²º¬¯µ¢±¬²µ¼¸´®µ ¨¨£¨©°³º¸¸¨¸©¥ yrW_bUd``a^_f`[UJDELVQIJJEJHEA@@KDBMF<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AEWQJL\ZQcdWzuq}v~{¿»£¼´z
zyn]W@EN<6:46AB764//6CHCQ\OQUXU\WO_UIKJA@?GKFFD;>@7D7?BJJEGWTP^¤¤²´Ã¶¸ÁÌʶ»Ä½³´Á·¸Âµ¿°¸t±´¦ºÅ¤°Æ¹±³²´¨¤¶¶ª± ¢¢¥±¥¬§¤ ¬³º¢¨²¹µ»¾Ì¿ÅŽ½³Â·º·¿¸º¸º±¦±ª®¾°½¼Ã컨®«~yhUa_VhchdV[cYVTJGGLRGDIJAID>?BBL@@MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALRWTYVZwjp
o{rxb¹¡£{z||}xzufO\dGEL:Qd`[^SF?;HPDZcQQYYZgZS`aMSOEA?IJHEFA@C=E6B?HGKMSZT^¯¸µ»¹ÉÀ»½Êͼ¼Á¼¸¶¼»·¾µº³Æau²¥±«¾ª¥¨«ª¤¢²µ «§®¥§§¥¤¢§°³¨²²¼¶Á½ÓÉÉÓÆÂÅÌÂÊÄÀ¾¾¿¼¼¸´°¹··ÃºÆ¾ÄÉ°º«¢¬¥©·|n\^^\U_]gfSYaVRVIEFNKA>HD=KB=B@=F>;H@796379>489:57045/26389374526?8@>GKRTTRPOQRQJA9/,,,*+((,-,/P>(.48}<2Kq9>CKE@JMPRLQ]hmlqslrrtÕÀµ }~y{{yt}zlepvY]\Peeb`ed][XX\MdmURmn_o_XgeUYTKDBKKHFHHHHBI9D@HKTTV]Z\¹À¹¾¸ÆÁ»¹ÊË»¶º¶¸¹´¸µµ®¶·du©p^¢¡¢¤«¥¨¦£¬¤ª±·°¼¸ÔÐÎÖÏÉÌÒÌÏÎÊÇÀ¿ÂʽÁ½ÂÀÅÄÆÊÀÉÏ´¤¼±µ°¬¹½}vi[\YW[_XabQ\aTRLCBFGE<@F>BIB@D=:E>=J?47535;=468977022/24169775555D3ELM>510006:477@IOJ;.&**(-.0,@M+/54mI0Ht?>BD@CDGKODR\Zi`onlotu³¬¡¡
|s{
{tt{ylmu|iseilhfjih`fiimZmt¤½g[oh]ZYTHKOPJKPKTQHLAJFKP__bgjb·Ç°º´»¾¶±ÅǶ°¹±±»³±¨«¸¶¨§N §¥¡¦¬°¨¯§³³ÓÔÔÖÑËÏÓÔÎÓÏÌÆÃÊпÊÉËÉÒÈÍÎÃÐÒ¸°Ä½Äº¦·»Ä¢kaZZ[V^VYcYP]XORCBIECI;AD>BH?@B8;D>@I=56655;:687654/10146278875367C5B8?-0,1348=97,.,1;FL=),(.0007K?-46TW0DwC;B>EBACJM?UYSfWshroyy¡ª¦}
|p{r~qyulpxr{nxslipmcinpyiw}~Ë¿Ãߧncxnd[a`KPRUNY^P^]NQNTQUT\nnwr®¸¬µ¨°¶«½Á²«µ¦¥¹§¬¯¡¬´¤±®§«¬¤§¢¬¬ÎÒÕÑÍÌÒÓÓÐÔÑÎÈÃÔÑÈÎÒÓÓ×ÍÒÑÅÒÖÆÁÏÈÈ鿸ÐvkbZ_[T^Q\YOPTPNI>AGBCF=AB?FE>@?:==<<JB45465<888664412/03526768533;=<E=@11+/349?5901022-2EO3)/3.32=N248C}_2AtD:==I>@CFH<VRMO[uwlwp}~ ¡
y
{r~z
v
owsls}|w|sxqkrriprzyr{¾Ë²vr
wiai]DZZ[WfdXekTX]]`c^cx{ª¤¤¢ ¡©¦ª±¹«¦´£¢®¢¤®¢§±¦k¢~¬
§°¢ ¡¥¤¨ÈÍÏÇÂËÐÓÑÔÒÎÓÍÆÖÓÍÔØÖÖØÕ×ÕÊÔÚÍÊØÖÑËÄÃËol_\\VRWRZOJGIJJ@;:;EBD=CD>HC?CB;<9<:GC46544<5687543250/2546745544<>=E?A62/-16;=081/254/-.;R017/532ED28>nb5=tM99@I<AD?A;PLFKYpu~isyr
x~xs|}w{oxqmuvx}t|ylvtn}v
uy{µ<AÆ¥~}jeWICecfchjdoy[_fhknin £¤¦²¤¥² ¢¥¢©¡¢±~
zª£}ª³§¦½ÃŹ¶ÅÍÑÐÒÐËÒËÉÔÎÑÕÚ××ØÔÙØÍØÛÎÉÚÚÒÖ¿ÌÍ´uskaZWPSPXUEGJIFE=:7:@BC:HE@EDBDA;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?2*(.BT29254/7K75<`bA<svV87AH:?C><9QECJTlnopbqqt}~
}x
zyq{{
uzzp}ppzr{rnzuw}}u|°tYªÂ·pnc=^hrpqpnwweiorvxr{ « ¡¬¢ ¦¬
}
~ly{ª¦®µ¼¨½ÇËÈÉËËÏÉÄÒÊÔ×Ø×Ø×ÔÛ×ÓÙÛÖÏÛÚÒÖÉÕÌuwedXWNQR[GCFIH>B>=8:>@<>H=@BAAEA>?:87DB755479.566435532323647553458EBDCEB56<FNSM[nfcnsk`V>,4LG865433BF4=W_hLux^8;?F<<B<:9D?CGRk_mdbflvqy~
|}wyn{{tz¡vvtu~too
u|
zv|¸Æ¥ÃʸxpfNeczw
¡yzw{|um¦ £«
z|¡¼ ¨¦¥§µ¿¿¿¸ÆÉÍÎÅÍÊÑÖÕÔÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÛÆvvdfa]RUTTMKDMC;=<<9:<?9=A7>?@=?>=9867CA6455=80665547745613854564567HH=DJE7925;H>;9:7HP\ZRUXK9T>;95327I8=NYMHxxd5=>C=<@:6:>>@EQ_Yfa]\itzylwvz|~~
{~
{
|u~um|}~t|~x~yot}
|~{©Ã ½¤~
}ss¦
{iGq¡¤
¡¦
¥¸¡¦ £®¶¹´«ÀÆÊÐÈÇÍÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Û¶vutgfbT]YRNNHCLC==>99;:99<=6@>?==9::;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWO<MTHN?96333>C;[X>5YypZ<<A<=>8589?<DRSRX_VXfmmmiqsy{{||{}|~uzszsm~
~w¡n©
{ |~£¢¤¯
Wr«[¢£¢
¥
²¡ §²¸¬¥½ÂÇÍÈÆÏÌÐÌÎ×ÏÑÔ®ÖÕØÚØÚÚ×ÖÙÚlyqccZZUQUVC@IC??>:48:;7:;:3<<?=>7;9:1:G=:27=@50677255?65;55858:57735HR7GOK994=EJB>1FCLA98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcbxlb~onxxz{}||w
sp
{uwvt
}¦¢¦¢¨r²¨
£ ¢©° o·ÄȲ¢¦±d¤ÍÇ
«¤£
¥¨¡¢²´¥£¼Á¾ÇÆÅÉÈÉÂÊÓÌÍÔ¨ÒÑÖÖÖØÚÔÓÚÎo{d`[[[MHSYBAGD;B>837;<:9>64::<:72?:929I:>67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF>;88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBcGv}|m~xz~{wv|mo{}xx|~¢³§£«³¢§¥¤®¢¸³¡¡¥°£¤§¨¬¯¤¡À£É¸«£¦²
¨¢
u²¤¡} ±®¢£·¾´ÅÇĽÃÃÀÆÍÊÉÓ¦ÎÌÓÒÑÖØÓÐغovrY^S]TNGIMDACD5>:77:?<<7=42669774>5;5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=88567=:JFDGMZ\YJf`;Hzzn
z|x~px|~}osz~|x¦»¬¨±½°¥³³¨£¢°¬µ£¸¥¥©¸§¤£©ª¤®°ª »»®Ê¡j¶¸«°£¬¾£^ª²|}´«¡¡ ¥¯¨¡¤³¸¬ÂÈĶº½¼ÅÇÇÂÑ ÆÉÍÍÅ×ÖÑËÓmweYWP[ONEC><BAB8@885?G=<5<35345454B49:BM:B;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPdHb`bpJ@~s}un}|}pww|©ÂÀ¯½Æ»³´À½´«³¶¨²®¾«»¥§¹¸«¦¦¢¢¤£©¯²±ª¥¢¦¥¤º¯©À¼®²¹¥¤¨~½°z¨±¬ ¤¬ ¡§¦¤¢£°²¦ÁÆï°º·ÅÄÿͦÇÄÇĽÖÐÍÄÊ
po^YW\XLJAKAFG?A@C;:4>A==5=6>333242A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUN79GD?CF\eF`igZ]\{uo~{q~{z§³ÆÉ¿ÁÌÂùǽ»¯«¹»³·º²Á®¥À¤«¯¼½ª®«££§«®µ°ª «¡¯µ§£ºº¶Á¼¬©³¥¤¨
©Ääy¡¦ ¯« ² ¤ ¥¤¦¦¤¯¥ÀÄ¶Éþ¶Ï²Ä¿Ä¼³ÑÊÈ´quiYUYgQLHBLKLJAA>DD<5AE;;3=8B332262A05IEN>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBeZMe\fTbkyr{xz¡¨º½ÇÈÉÁÒÉËÂ̽³¼¾¨ºÀ¾»Ä·¬Á©¬³¼¾ª°ª¤¥¤¬®³¶µ¡¯¥¢£³½ª¨½Á¤¶¸¯¬²¬¬¬©¦¥¥uy
££ª¥|£¢µ¥¤£¡¥¦¤£©§¢²¬¨»À拾·Ì¿¹¯Ä³»¾Á¸¬ÂÃÂÀjv^UTYXJJLIFDDHCCADL:4DI:;4<8E.12242B26SHO<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQG7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>iH_XbZccV x
~¡®§¤Â½ÇÃÇÅÓÎÎÍ˼·°º¼´½Ë¼Ã¶·¼³¿º½®¯¨ ©¨¶®©²·£§¡«·¸ª¥°¿Ä²½¹´¨«¶´®®¥¬¨²Å§||ª¤¡£¢Z¤e¢³¥¡««©¦¦ ¤¨¥¶«©¹»Ã´¥´µËÀ¸ª¶«²»¸®¨¸º½¸hkWTRSMEIRMK?AHEEIHH95EM;>8=@J.32025C55OVN<LFKRLOHGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|gV;>@BFBpEjIReaLF¥¢©¦¢¯¾¯¡Æ¼ÄÄÆÆÎÏÎÒÊ¿»¶±º»»¾Ï¶Ä½¸¹·³±µ³¸³«§«¬¹ª©§¯°£¯¥§£¥µÀ°¬¬´¿ÃºÀº´§º¶¹´¯¥¯®¤¡tÂ}±¥£ © `J¥T¯¯¤®ª¤ ¥ §¢´¨ª³»»»ª±²ÇÀ¹¦¬«²²£¡²²´¤mjbYWMOJDOOPR;GKIGICC>:KU?A:=EM07544:B44MWO;JKOUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@BAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}hW;:BC@=QEWSsbWFHª ¢¨¯¨
¡£¤µÉµ©Å¹ÂÃÈÊÉÈÍÍÆ¿»³®¹¹ÁÁ̵ǺÁ¹µº°¯¯³µ§¤ª´´ª©¦¬¤®¥¤¨¬»¿¨¬¶·¿Á¿¾¹³²Ä²¹¾£¯µ¬¹¦¦v¿®¡ ¡¨¨ª¡§nv¢¢®²£ª¨ª©£¢¤§¢±¦©«¹¶½²²®¾¹¶ £§¨¥¦©©`b^]NJKFGMJVL=MENKLBCD<QV=AABDO18=76?B75UXO?HNQYSPQUKQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=.-R`MUH~e^HE«¢»¯ ««¡£££¶Æ¾´À¹ÂÂÇÉÅÂÍȾ¹²¯¹´ÀÂʵƲ¼µºª¨°££ª´»¦©¦«ª©¯§£ª«½»¨½µ¸¾Ç¼·¶¸Â²¾Áµªµ·«¾¥£¢ ¼ ·©¥¢¡¨¤³ ¦¨ª¤¡¢ ´¯¥¤¯«ªª£¢¨©¤¡¡³´º´¨µ²³£¥ª¡u]Z][HGEFLQIMEGGBSLJBEGAVSCH=AGQ1;B7:BF79\YKALPTUSMWRNUJE@JJNO9C@5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-19f\FCCpbGE§£Ã¥ªª§¦¬¢«¶Ãü¾¶ÁÂÀÇÄ¿ÍÆ»½¹²°¹³¿Âǵ¿°¼·¹¶¦¤«« ¡ªªÄ¢¤©¬¦¬¯«¢©©¾¸§¿²¸·Ç¶µ¹¸À³À¸µ³´¯¾££®¢£¥££ ½¥©©«¡¥½¡£¢©¬¡¤ µ¬¦°¦¯¥¨ ¥¤«±µ±ª¥ª®¬ ¨e_W_[MHGJNLHEDIA>QIA<GII\ROK=HOU4BF9>HG5Ca[KBNRUWVQXTRUI@8RQPM:GA4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,/Mv\4KZ5,MnW<-=)#zbQ5CKQ9mRF<KxeaVK¢£Å¬¡¬® £¤ ¦©¬¶±¢ª³¶ÅĽ¿µÀ»È¾Êǵ¸µ´±³´·ÁŶ¾±¸µ¹´§¬ª¬¥¤Á¥ª ¤©¯¡¦¨½µ¦±½¹·¶Ä²´¸º¿´ÄÁ¹¹¯³µµ£¥¡® ¢©¨¬£Â¬©¬®¦ ½¡¤«¬¬¦¢W¥¡ ¸ª§´¢±®¡£¥²ª©¢¢¥¥¤_bXb_KGJJNFEAGK?=JB99JKN^QQI=LV\9FI=DMI8Hb\LCLPSYYVWOZ^IA=WQIK?H?5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWrGE6=ue\KM¡Ä¨¥¡´¢³§«¥ £¬©¬»°¨¬¶±ÇÅÁ²ÃýÆļÄɼ¯°¶°´¯¾Ä´¹±°º´¬¨±©ª¥¡§Â¬±ª£®°©¥©¼¶§·»¾¯·Ä³³ÃÀ´Ç´»¸¬´¶ª¢¦¤¬¢ §ª°¯¯»±¦ ©©¢£¸ ¡£¯°¬¥§¡¢§´§¦²¢¬ ¦«¯¤¦¢
_cYfdIHLJSBC@IH;;F?99ONV^RSJ>O^]=HPBLLI9Mc\LELRTY[SUO\bHA?ZQAHAKB7FELKM?;BHDNB=;N@A3/97CB97F;+6<46<25-/4@1+'VtSeO?104b[M23>0<v]^?[T^eq@8;HweA4£ 餪³¢¤µª³¬§¡¤²¬®©»²±µ´ÆÀÄ´ÀľÉĵ¿ÈÁ´«µ¨¯¸¬¿Ã³·®¶¸¥ª²««¦»´¨°¬ ´²¨«¹²¨º´¹³¸Àª·²Ä½µÇ¨¿¯®¶µ©§¬¡¦¥¢¢¥®¸®²µ¶ ©¤¤ ·¢¥¥¯²²§ª¦¢¨ ¡¯²¢¦¤«¢
¨©ª¡§¡
wbg[jiLONNT>CANC::I?77RO]_RVQAW`\BJSHVKH:Td\NFON[W[RPQX]GAB[PBG>NC9HGHOP??CIBLB<2IA94177B>;7E7+6914801-/.<6-#Bqgsk23/1[bZ33806p[bH05IohUCWFyfC;££¡¦¿§§¯±¢©¶«º±¬£«´¶±°¹·°·¸¸Ä½Ãǽ½ÄÂÆÀ¸ÀÆÀ¹©¶¤¬»ÀÁ··ª²º¢±²¤§ª¹ª¦°« ¯´³«©¶¶¼´³¹·¬¸±Ã»¿¿¦Ä«±·¯¨««§«¡¢¡¡±¯³¬°¹© § ¶©¦£¢±±´¬³¨¬ ¥¢£³¯¤¨¡©¨¦£
}igk`lmWPQ[UABET@;;IA7:XPd^PWWEY_^MLRN^KJ>Yc^NHPO\UYPKTWZI?DXPDF?N@=IGGQPB=DFBM?:1D?77547?=95E4+75/251--.,1=*'+=\p=>1.0dZd@1647gY`F(?8l}g[V;{cC=§¢©½¢ª°¬¤²¹ª¦¶´¬ µ½¯³¸»º¾·¶À¿ÉĹÄÂÀ¿·Ã½À·®µ§«·±»½¾´©®±¶«®§®¦¨§»¥¬³«¢±°³¬©¶´µ¾®±²µ¬°´³Á»Æ·¬½°±¸¬¬ª£²¦¥ª ¤³ª³««³§¡¦¤´®¨¡®®±¨´²ª¤¨¤¢¨µ©ª¦¥£
{dkqfoq^FYgVDBMXDZ9HB6>]Qh\OY]G[^]OMRXdJJB\b_PLMNXWXPJVVWL=EUJEDAM@AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,,%2+*5K1/'__`U150=`V^8)C3YU\gK6zfL@¤¡¥·¥¬ª¦¯®·ª¯µ»§¦±·Å·±¶½ÁõµºÄ¾ÌƹÃÀ¹¾¹Ã¸À¸²´«©º¶º¹¾´©°µ§¬©¬«««¾¬®²£« ±®³®µ²¹¸ª®®±¨µ¯µ»¼Ê³ª·µ±´¯®¦¡´ ¨ ¦²£ ¦¯¡¤£¥¨³ª¡¦³ªµ¥¯²µ¯¤¬§«·£ ª¥¢¢ z
{jmwmu{aFakYIGZZ={JFD6AbTi[M\aK\]ZRRRb`LKE_``QLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T_T_/5(C_Q\.+B/JGP[G3cYTKD¡±©²ª¬¦¤¯®¶©·µº¤¬´·É»´»º¿¿´³·ÃÀÌȼü¶½¾¿·¾¼±¼§º¹·µÂ¶ª±·¦®«¨£°©¯»¤±³§¨£²µ±±°µ±¸´©¯¬²§·¯·´ÄÆ·©¶¶¬°©§£¶ §±¡¤±§ ª©£¦¦¥¸¨£²µ¬¨±§®±µ¬¥ ¬¨©¸¢¤ §¤ v{lovt{~\Lfm\JNc\>b{GI8GgWf\L^bMXYWUWTi]OOH`]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANGf27'GbLV%-B.=ELQ<3rkICC¥¯¥®¯«¨¥±³´«·²¸¡«µ¹É¹Á»Â¸³±µÂÂÎÅÀÁ½´½¿¾º¾¼²Ã§©¹°µµ¿¼®¬²± §±¦¦¯¥²µ«±²¬©¨µ»¬´²µ´ª¬¨¬©¸²°ÈÀ¹¥º°©¬¬¥¨®±¦¥£¯¤©°££££¤ ¢«¦§¹¥¬¶¶¥«¬©°¶®¢£©ª ¤´¡ §v}
|{|
prq}|}\Sdo^NXf\FD[G;NmXb[L`bNVWVWTXg]QRLcY[TKGOTSNGIVS\N;P^IBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/+1()+,-*&5*/&0)38:1&*3Bc:6*HeHJ+:H>3BHS,>k;GHª«¢ª±¤©¥³µ²µ¶²²¡«®½ÌºÀºÇ±´´ÁÃÑÅƾÀ²¾À»¾·»Ä¦¬¶«²·»À¯«±¬£§©¨¤°£ª²ª°¬°¯°®«³½§¶°²©³ª«¥¥£ºª²Ãº¶»©©§¬©§±¥ª¤£®ª¨¢£¥¬¢§©¢¦¤«¸³²¢ª¢ ¬¯±¬ §§©£ ¦
¤~
|v~
rqpuk_Z`nbQrp\K;|F?XuX`ZNd[NVVUWQ\a^SONgXWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*25>10485(5/*,.30;),,'%234$,2-860)(1;\J0.JgDF8;B05EKX1@Y=LE¨¢«³ªª°·¸¶¯«¦««½É¼°½¶Â¯±«³ÃÃÎÏþ¿´ÀÁù¿³Çꮶ²¸¾¾²ª¤§ª°¨§¨±¥´®«±¯®²±´¬´¼¤·³¬¬¯¨«£°·«ªº·¥·¶¤ª§«ªª¡©§¦±²¤§¥¡¡¬ª¡ ¦¥¢«¤£§±¸®®¤¦£ª«®©¢¥¤¤¢£}zs|ru¤xk_`nfWdcN?gLEbyWbXReTMVUVTO\]aUKNhVVVIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*39?./463)4+*,+.#4.-+&(+79*&6+<-2,&06VZ.0JgAA<<B+:JO^4D=GFD°¦£«±«ª¶¬¶²¬¦¬ª©¼ÀÀ·¸²»µ¥²¯ÃÉËÑ¿À»¹¿¾Á¸Á¹ÀĬ±´±³º¿½²°®¬ª«¨¶©¦®¯ª¹°¨²²¯³·ª¸¸¦´¶«¬¥©ª£³³©¨¤´´ ·® ª¨ª¨«§ «¬©¹µªª©©¢ª ª¡ ¥¢¦£ª§´¯©§«££¥§§ª¢¤£ ~
¢txt~xv}orgfpw\`rjO^VHnyUdVQcOMVTUPOX[bUHOiTVSGPYUI>IHOQPxLMV=<KD?@A<@CUC9AK=5;E13;:7*4:=+-341*8**+*,))(/*&)%3;,$2)2021%/2Qb02?f=NX>C,>LT_/Ji5OD<±¢¦«¯¬¥°´µ°¬¦°ª¨º¾»À°¹®¡¶¯ÈÇÈÑÀ¾½»»Á½ºÂ¿¾¿±±±µ¼»Â±±³ª³©¤´¨¥³³¹°£®¸²°³»¬º°ª®¶¬ªª¬£ ¶©¡°³¢µª¨§©£ª¡¢¬¨½¯¬®¢¨¨¬°¡¢¡¨¨¨ª±ª£ ®¢¡£££§¨¥}£wt|uxyyrrxf¤vi_ditf|SXo^JxsSdSQ^MMRZfNMVYdXGRhRQ?BNQaQ:IHLSIqQLS;<I?;<=;@@W<<?H73CB15:93-5::)-31--5)(+-,42#2)',%.;.&1.0-14%,0Lg:48_=ad?F1CP[[*HM9U@4³¡¥§¤§¤§µ³²«¥±§ª¸¾À»¯§¹ª¦¯±ÉÇÈÑü¿¾¸½¾¼ÈºÀ·¯¯³±¹»¸À²²º¬¸¬¢´§¨¬²¶¹³¨¨½¶®·¾°¾§¬µ¬©¯£ ¥«¨«³¥´¨«§©£¨£©¨©¾«´°®ª¤¡¯³£¤¥¦ ¥©«¦«¢¢¥¨©
~
~}
¡~r{z~|hx|ysno{fxdag`rzlfx]^T?W{mTbPQXKLNru]HZ[gYEUePD>JODCA9HGKS?jbJQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11'/>KH0%90%,,09/,,+6'17#-0GjI14X=fbAJ7GS`U*=9DW=*² ª¦¥¡«¥¸³³¦©±¦¬¸Á½µ¯¢¸¨¨°ÂÉÉÌÁ¶½À´·¿ºÈµÂ´²²´±¼¸¹½µ¹µ¾ ³§««°¶¸µ¬¾½ª³Á´¼¡¯³µª¬°£¦©ª¤¥°§° «©§¡©¤¨¡¼¨®±®¡«£¤¯¦¡¤¤«£¥¥ £¥¬{{}£}yk~vyxc|zpnoqvgsiheg^lsl`io`o=ZylU^NPQJIMTZWM]^lWDW_O^PHMDF;7HEKO<rhKK9AE;;==;;=J49B<3;G<4?18-68;2(09/,4/.=-*K>)49&'.34.0+/4&,:$41AhY14S=e_DL6KVdO*;1NW=#¡¨¥¤ ¨¤¸°¯¤¯°©«¸Á¹²¹¯«¨´ºÈËÈ¿¶Â¾¯´½·Ä¶Â±¹±³À´º½·¨¹¸½ª£´¨©ª±®¹±«¼½¥°Á¶·¢¯¶µ§¦§°³¤¦¨¢¥¬¨© «®¦ ¦£¨ ±¹£±¯¡¬¡¤§¦©¥ª§¡ª¡©|~}| x
|
|sp}qtt`zxhmoomh}qb{mieb\d~^YsjqJIiXZMPLJHPRQIO]_nSDXZRhOHKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23.:;83&2<0,85B*)-B*,4;NN@;73-.+-7**<%53<fd24M?e]FO=QZgH*>/WU5(§¡¡¡¥¡¸«²¥´´©¨¹Äµ²·®°´ÆÈÀ¶¾Á¹°´¼¶¾»¾¯ª½°´¿°¼Ã¹¨»º·§§µ©¨¬±´±¨¿¸¦®½·²±·°©¥§¯±¡¤ ¥¥ °§¡£¨¯¡¡¤¤¢·°¡¦±«¬£¯ª¤©¥§«¦¢¨¢z~zx
~yzprwoot_ywdjkjgglerkkdgWar^YkuiYE}^[XOOKHHRUG2:_^mPDWUYeMHJEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<#8R=*113>D5,-'42+;+139cl84HBf[HTCT]hE.;1^Q,2¤£ª¦¡£¡¸ª°¡»¸¥¬½Ä²¯®¢µ¯¯´ÄĽ³¾º·°³¹¸º¸º¿³´¸®¿Á·«½º´¥¢³«¨ª³¬®²¤Ã·¦ª¸·¬²¼ª§¥¨¯«£§¥¦¡³¦¥©©¡¥¤¹¨¤§¦¥¡©©¡¡¡¡¡£¬££§¤y|
}x
{w|lurmlsbytgfifcmfghdfgh]dbieZezb`PsT[[SKIGIOS@ *j^jLCVU^`KHGEC.:B<F<6KPD8:D357==895?:;4>8@L=>93)8><:9*6@3.E4(+,>0-N?.+-7-1195,&.5-80576`tB3CDh[KWGU`hB377aL'2¤¥¦§¤¶¨ªº·§¬ÃÀ¶¯¬¢µ®§¯¯·ÁÀ½±Á·°®²¶µ¹¸µ¬ª¼³¯²±½À·®¼¼±¤¶¬¦¦µª«¯¡ Ŭª¨²µ¬µº¨ª«±¥ª§¥¥£¤ª¡¡ §¶¥¯ª¡¡¢ ¦¢ ¦®£§ x
w{~
{
s}gyplklguskagcbsacefehhaenY]X\lcaLgW[`VIGHKMRX>9`liHBUS\[IHFEA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A<-5B37=++,/A*JK./*+3722(57$+7.72685\yN2>HiZLZJVbfA:3@bF%5¤¡®¡ ¥´²£²¾·¡±Æ¼¹°°£¶¬«¯©¹¾½»À²¯¯®¶®³¹²§«¹±¯®³¶»¶¯¹¾¬¥µ« ¢²¥«°¦Å¡³¦°³°·®µ¬¯¬®¢§ª¥§¦ ¥£©°¦¹§®¢¡£¥¡ª©§§{t
|
ogynhljgqrk[hcar`dgjnkeiecl\llupaSbhceZIGLMOYQPUaeT@VRZTFGFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.4<;K6/.+,-24:5#3*)6.55465Z|]1:Kj[M[KXdc@A1HbB'4£±¡©³°¸À¶ ´Â»½¹±¦¶°©®¥¸º¸¸¬»°««·ªµ¹¤²µ±¯©±¶¶±³¶»§© ¶ª ª£ª®¬Ä¯¦°±·¶¬±¯ª¢¤¬©¦¤ª£¥ £«ª©º¦¤ ¡k£q¥v¬©¢x
mi~wql}o]d`gkuxfhvifX\itnNPjcfqf]dfnkh][]
hNKC8ETg^JHPPUVKHRapteF[QUPFGFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,,08>G701.*.*/668,#1'214:276Xl15Ok[N[K[fb>G1Na<+/¤²¡ª®¬£½Å¯©·Â¸¾¼§·±¦«¤¸´³³°¹®ª§¬´¥±µ¢§¸¶µ¨§¶³®´®´¢©´«£¥§¨°¿¨§±´¹®¤¨««¥¡¡¨§¡¥¦§¨ ¨ª£´¯£¢££¡¡¢¥¨rx uif~sx o~|¡ |tvlmhdd{mrbTmcmiqXipnW]hZkjZplyrhY^FN>F^MERVVQPRWTg^LZLRRPEFG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82*/1<I:/01.*/(-4583%&2115>1<8Xt15Rk[N[L[g_=K1T^7/(§¬«ª¨ª¾Ã®²º¼·Á¿ª¤¸±ª¬¦³µ®¯³¶«©¥±¥¶³¬µ¶´¦§¨³±²¨®«¡³ª ¥¥¢¥±¸¦§§·¾¦¬§©ª¬§¥¡¡¨£§£¤¥ª£¤¦¦¡¶¤££®ª£±¥®¡zÔ¨ÀÆxw±¥·dÀ¿yy|Êq¼Å{r¶§º{l±«±yhlX±®oei¼¼nhzmqØ}Rkb¶²}pu¡ªVNXaOVNFU\XPPS[W[P@\DPNCFI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22BE/.32.+/)-/186- /416A1=:Ww11Tk\O[M]g\>L1Z[41!§¨ª¥²ª°Â½²µÀµ¸¿Â«¦´®®©¨°µª¯¶´¨¨¦µ¥¨¹®²²¶ª¥¤§²¯®±¦«§¥³¥¢¢ ¢ ²¯¤¡µº£ª¨¡¤¢£© © ¨¨§¢§£¡°££
¯kjªh
fq©q®¡¤~wº|k v±_j´[¥e`fzfixj©e¾rg¦v±j|±xucmm§n\ EigEu`}f{£¦X_«h}xzj¨8J¯[XTmcZKOX_\VV;NPWV/ISSJCEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3/.53/+/(.0.:6/'$203B/=;Uv2-Vj\OYL_gY:M5^X31¢§¦£¥«²¸´½¾°·Å²¸»Ã§©°¬°©ª±¯¤°º°¥¥¯³£ª¹©²²°£¥¡ª°¬¯¦¨ £¢±¤°©¢ µ³¡«¡¡£©¥ ¡§¤£¡ ¬¦¦ ¡µµy©¶w³·¬k¦z
w«gj±[¬{tpx
°vwqkkm|O¥XHcc~ch¥_yquR]P©ncp{
a/R¢n[Tkg`LK\dX\ZB>°wWXA#MiFBDA@A19>88:84;:9<9:A:E::;6:CB8=?KNH:5:AFBAAD<FD;0201;F,0.840,.(/3,>831/2-D1<<S}n3+Xj\OXM_fW7J9aT50 ³¦¦¡®©¨³¬ª»¶Â°¼Ã¹·Â«¯¯¨¯³ª¢¯¼«¢¨¶¤¬µ¤¥²³¨£¢§ª³©°¨¦ ° °¤¤¨µ¯¡¨©§ª¡¦©£ £¥££«¦¢ Õ¹q±ÂÆ}Ö»}¨¤{¢¥y«yV¯{~j¹Z¹w}¦|zªy{±mt»oP¯§ÅQ zc`ªbsrk^Rµ´È
~|c¤3Bu]PjhdP@XfYdaJGLjJZSOYfZCC?E?0<<59<74<;8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DB./0483+-).323971#%5*>3==Qwj6*Yi[J[P_fT7H:aP72%£±¨©¥³ª¥µ¨¤¼·Á°ºÀ²·µ½´¶¨²±¤²³§ ¯¶©¨º®¤°±¡²´±¡¤¨©±©´©¦¬£®¨±©£¬¢§¡¦¡¢¡¢¡¢¢¨ §¡§ ²nhµr¬p§r´ut¶{¦£~£~°uÒÒu\®|
¤nª¦j
}}{±sy³et
nfRÉZÂ\yb__vs
a]YÊoÀtMKµSUÆdUQjceXAOj_liPUFH9=WR[VYHB?J<2?;5=<56>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>II:1746@>/.24252-).26,742&60;5:=Pqh9'Wi\ANT_eP5G=aM62.£¥¯¥©»¦µ¥§¶»¼²»¿¸·µ¼¼´¦µµ£³²£ ¬°¥§»®¥²±´¸ª ¥¡ª¥²¨¬ª¥ª¤«¢¦«±¦¡«¥¡¥§ ¦§¢£® £¥¢
¬|x¨w£ªp®¨£¢}®³\r²S¯}£~q×}w~w¯w´ael[°WKuyf`^vvgj]¯wwl5yÈ®³_CTo^g`EPl_pmVUM.echRYP;AD@L:5?91><16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@=V_cN6GB`I:77 ·±³Á¨²§ª²º¸´¹¾¹¸³·¾¶¦¹µ¡¶® ©¬¨¶¬¨±²«´¤© ¨¢µ§¦ª¤¥¢¤¨§°¥ ¨¢¢©¦¡¦©¤ ¡¡ §©~¦y¡ªp§¡££ªzyp±Z¨ xtØvt§¤|{²^d }n\«\[hgªcr{jq]«Z kndOJC¡\ZMt]bfMZa_rt_JU5JXHE=GEAL35A8.;>05A78@<6=<F?:<6?=B7.HVJE@H6KIN@IK@EN::@4.;>002154+*05/7,&21($$6671<OedA&Uf[?1T_bL7FH_C1=7¢¾³Á®«¬¨¦´°¸±µ¿¹º³²¹¼ª»¶¡²¥¦§§«²©°ª¶ª¯¡¢ ¦¤¤º££¬¡£ ¡¡©°°¦§¦¤¨«¨©¨ ¤£ ¡¡ ¡¬®nr´t©w¦t´zu´§¤¤u¸n{¢kk¶Z¡eh ¢§mr´s³j
ju´af¢nk\`N¡|Rs£ly~no\¯V<weTon.[§ObRkeblYb\`p|cSYQ>?lo2BB@>M:!7@6.;@37C58??3;<CDBJFMIF62JTKEBJ6IJP?HOCFP=<E50;;010/75,+,326/#00,,289/9N`eD'UdY>/U^aL5FM^81A8¥º£±À®®««§·©¸¯µÁµ½²±»¸¬Â·ª¬¡§¤¢««¨¶£³¨®ª¡¨ ¥«¸£®¦£¡«¶°¦¬©¦¥£«²¤ ¨¬°¡¢¡ ¡©«Ô»u±ÄÄ~Ö¸y§y¢¶u}wv²aºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¡~t«}¾ns¼t²uxmpm¤t½]w}[ay¼jZV[iy^i`dfbmyoX[YCA@q?CG+4H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,;:08LXaF'TcX</T^`K5<L[-6@9§¢¼£°Ã¯ªª¬±¨¹¯·Å±»³¯¼°®Á²¦£¤¢«¥ª²¥µ§¤«§¸£®¡¦ £¯¹±«£§¦¥¤ ¨«©¤²¢¤¦¡¡¤° ª
¶¸x¶wnlotoyrÀ»¼{²¨pt¹|{}¤»¹½uy³£tvut°ufi¶trqw¶^y}gylyb¬pt
~X[§iDdYTf_c]cQgfqmuBMOLD;ZL>J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7KT_G'SbW8*O]]=+;VV'=:<¦¡¡¿¦²Â³«ª¨¬«ª»¯±Æ¯µ´°¸§µ¹®«¤¢§ ¥®ª§¶¨¨¡¤¬¥¾§¡ª¢¢¨¢²µ¶¬£¤¢¦¦«©¥¦¡©§§¢¨ ¬¢°©§¢kj©ytv{f{½¾Àºoq
_rjZ^acl`cmvbke^`cqhr|fj~ptx~}b[xthP\n||jWlzrIJo
pNrMDV\f`LZWfc_OZmvjrRODDM<HI<L>2,2A?8/5?C<9;@;=C>RVVWYZ[[\]`aaa`\UG5CFUEJOHFPIIH;8=51:.1;:./-76=5&"/*2,%;8-7IR_I'S_V4)P^L(3>\O'?2>¨¨¡Á¤´¹¶£¬¦®§¨µ²¬È¬°´¶¤¾²³¨¡¤ª£¬§®¤¥µª¤¢§©¾¨©¥ ¦©¨°²¾¬¦§¢©¨¤¬££§¢©¡®¦ ±¥¢¨¤¦¨¤hn}rw´ª
¡z¤
li{}urxyvv|jstudw}vkoyl_b[ogMXYfj_WYpzomfSOFS9PZNRO(+:KB635=@A9:C><ENSSTVWXZZ\]`bba_^^[TKCSGKNDGPLOI<:;489,2;820)6IRO8")+/2#4;*7FO[J'R^T10T^:+=8]K,<-@² ³¢¿¢£°±· ª¦³§¥°µªÉ«²¦µ¦À©´¡¥¦¥¡«§£¤·¬ ª¦Á¬¤££¨¨¨²Ã¯ªª©«¡¡¢¥¯¦¡¤§¬¥¡°¡¢§¡£¤ ¡®|©¨
{
£e¡³®w{~wyzogykuyrhsyujtbxe_hdcdfjXk{qjk\SLPD_UF@>?,4@F;45;>A;<?>>HNNOPSTVVXZ\_aca_^^]^]XVJKLBIOMRJ;<:786/3964.(&$-1..)+*7%+<(6CMLD/T\Q05M[17E4\G5<,@³ ¹¯¾ª±² ª¦²¢¬³°Å°«¤³¯¼¤´¡¨£¡¨¦©¦¤¦³µ°¦®¾¡¬¢¢©©«£´Ç³©£ª§© ¥«ª®¨¤¢« «¡¤°¤©¦ªf}ecylhjz£«je~g
eeihz¢kh£xkj£slnzyXe]
^lw\gswwowxsmysvzhX]jsd]sik|qmc]QNVIdX@I3=F7?FD71<=?AC;;DGHHILNORRTW[^`aa`]]]]]_]ZUODHOKSN=>==6535554*&&%,*%.++'6*$;'/AI[J.6ZO6)EY/DO1YB;?.=¤º½¹¯«³°«¥¨®°¦®®°½±ª¨¥®°° ¡¤¢§¬¤¦¨©³®¤£°¦¶¹¥®£¢ ¦{¤«¢¨´Ã·¥¡¦¯££¤ª¨¡ ª¯ª©¢ª¦¥§ «¡¥±¤¬¢¦ ¬~½s´s
hw¹Ä¸q¡£z¦t«}ËÀÀºq£}À½ÁÁ|zÂÀ}j¥²ooÊzxvyyq{pw
xlube^wc_eb^thmdbXKUIQYHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^_`a_^^^^___]\SMPGUNA@?=6468266*&%#)*&.+*)109*#>I[L*#CP/#F[3PY/UAB;/8¢¹Ã´¯¯¿©©£°©°¯¦²¶¯ª¦§¦±« «£ ª§¢¬£¥¨¥¥´¤£¦®¸´§¯¢¦ ¡ ¦«¤«¿¿± ¨¯©¢£¤ª£ ¡¬®¨ª¥£¡¤£¤©¤©®ª«®£¦¢¤Îz{¥z_]¨¡¡|§u«¯^dª{¨
t³c« ³j¯t|¸aY£Ínv{Û{q~ve{uvl~m}
}k_pjof`_xd[qhjdf`RTSW^JOC5AHED8>5;@?A;=8@>??BDDFIJLNPROS\___^]]_``__][WOUJ=?><5578164('$!',&&/(&+360$7;SL+,-J0';\:L-!P@F4.1¬ÁÀ¿´´°·£ª©µ¬¦²¬¬¤¬¦°ª¡§¦¢¯¡¨§£¦¡°¬¦®±«¨¬ ¥¥¨££ª°¨¿Å²§©±¢¡ªª¡®¦©¨¥¥¢ ª¬³¥¢ªª¤§§¢²¢§¡¡rv¨q±|q¬} ¥x«~r¬v{|~ª¢}«zzVÄ{pÁ}mupmfweoaxnrnlcmsuo`fmd_oijnfcWS\`ZRRC9II@C<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1''45-&7=WJ-<(=1)3V@F!G;C1-+¯ÓÆDz³££¢¢¯·¯©±§¨ª¨®««§¢¤£¦« ¢¦ ¨¨£°¨§¯¨§©¤¢¡§£¯¬¢¬µ©¹Ì±¬¦«¢®¬¡©±§¨¨ª§£¡ª¯±¢¨«®¦§«««³¤¤§
¤k¤uz©u{²q¥p ¤_aR«
®u®¨z{f£¤£}©®^{¨U¢{£|Ä°Ås¯´³¹rb©¯Âuhkmkxxwnkfddqqf{ic\V_iXXTLLQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ''!+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÂÉÕÖÀ¡«¨¡¯¢°´°°©£§§ª««¨¤¦ ¥¦§¦¤¬¢¬¡£¯£ª¤µ°¯¡©§¤¢¨ ¦°¥¢¨±¬¶Ç±´¨«©¢ ¥³¡§ªª¢ª¦ ¡©¢²¬¡ª³²¢«©±°¸¥¥©}ªmv«y|°n¤Ò¸´¸É²_a©¥ zyªÉt£¨©~ÆÆwe¡¥s}¯_oµc±uK£m§Gd{o|myt|zm[ejrqfi^aXcm\^YILLJEDBA=A<A?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75785/)(%&%$&),5FNPPMFLJVF*L0/>-4NTQ;<F2,$¨¤Àƹ©²®¦¢³¹¬«¡¥¨¦ª¬©¦ ¦¥«£¯¬¦¡©¥§µ £¨«¶³¬¦ ¦§£ ª§®¡£§©°³Á±²©¬§¥¢¤¯¦¢¥¥©®«¥¤«£¶¬¡±¹°°¨´´µ¦©¥¡Nwz£|¤¦¸||z¹ÌÆöw¢~v¤¤¨~¯
¬}a¥l£p
}r¬`¤sqa¼}RUu¡z|ryr~o[lnwrjnZc_hnbd]LLQSAHGFH::K>B108856877-*5==?BDGILNPTWYYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOTF<E2:P[T6?G,- ©¬¤«¹«¯ ¢¬³µ¦¡¥¯®®¨§¥¥¤§¡³®¢©§³ ©¤£µ££¡©µ¹¤££¢²¦¥¡¢¯¤¨¢µ±Ã°©¬©§£¤¥¥£§¡«¢¤®¥»¬¢·¶®¶´º³µ¨ ±£¦ ҵ÷z
¦x¢w¡
¥r«´nri¤}s®¥£¦mp²\¥szl{~n©a¢rr~bs²¸hw¤|u{xlhwixsnt\ddmmfh`JZWX<HF?S3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^``]Z[ZXURRQF:2230/++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH#)%r®¿¿¼»µ¨¤®¶¢¢£ª§©ª¥¢¦ µ¦¢©§±¤«£¤¤ª´´¤¥©¯ ¦£§µ ª£µªÂ¯¨ª¨¡¢¡¦£¦£¥©§« £¬¦¼¬½°£±µ»¶©«´¦ª|¨}|°x¤¥m²o¡|¢¨¬
¨ £
{~««w y¯]£|¦§d|uj®]¥lr
]`[ m¤wy~il~b}tmy_gepogghBY_Z=JS2S8AAC7$$3+''3, /667436:@CFIKMNQSSSVZ]_a`aaa^][ZXSPONI8152.*,ATVVVUTUUUUTTUTSSVWWXVUVQHFIJ#((¼©Æ÷Á´ ®¹¦££¤ ¯®©£¹ £«¡°ª®¡ª©¥±¬§ ¨¢¡¥¡¤¨¥¶¨¾®¤©£ ¦¥£¢§«ª¡¢¨§¼¤Ã«£¢´¼°©£¶±«w¯~
|ºd°e®}¡§
°§¤¢¢
\lk³`|{²lfn±Z}´[¤kÈ¢f|»YvµZ²}S¯z¬X¡m¦xw}cs|bwt|ajfomfeeOUc\AT]=H(>9=4!!,$2. *1/04579:<ACFHJLNPPRTWZ^```ab^_\[XUPMJGC553./@UYXWXWWXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³±·¾»´Á³£¦¥·© ²±¨¢µ ³¨ª«°¬®¨¢¯¬©§£¨®©¡¥£¢¥¢¨±¨»®¤¨}¡ ¨§¥£¤¢¤©º Ƨ¦©¡¬¶·®°©¡¿°°°ª£¯¤¸Ãº
¨¬¯¨¦«~սªb¤¿½}£×º·µ½¾j£o«nz²±Çk«±½¬yx¢¾»t¤wyb|ydfx{`kejjbPb[Si\@T`BL)<:4/$%2 $(0496678;>ADFGJKMNNQTW]a\__a^`[\YTQMHC><A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ»´´±À¹²½³¢®§¦³¦¥¿©¶¯§¡¿¦¦±±¹¨®¯¥§¯¬®¦£¬¡¥ª £¦§ ¨¢ «¬©¸¬§£{¦¨¨¨¨¦ ¢ªº©Å£¡°¤¬´¶¬²¬£¿«²²uvª¥·
e pg¬nnw¥ v±pr©¤¯¤rlmmfxomqzipigqhi
gqd]cioZ]g~x¦`brpfd z
tdwgjx~ydlcflbJeWJkY:PdDP'J9+# ",)-2.5:457:<?ABDEHKLMOQSV\WZ\`_a]][TPLHD=:AB7MXYZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨´©º¹²´ª©¢®¤³ª½±ÃǼ´©¿«¬£ §« º£¤®¬¦ª
¦ª¢¤£ ¥¦©£© ¥¥¦®¹ª¬{¦¦§¢¯¥¢«¹°Á¨¥´§±³¬°®ª¼§±»¢©¦¶£©ª´¤¢´¤£¢£¢¥¢¬§¤~gtwtq§m}
phvowv|yiledocUaX@iZGb_MX+E=+&!640/ %2(*799469;>?ABDFJKKMPPQWUVY^_ac]^TQJEC>9=@ASX[\YWXXXXXYXXZ[[\^__`^^^__```_YY`¥©ª¤µ·¯®¢°¥ ¶±ªÄ¼Ã¹¶©¡¤¥°¨¤·§©µ§¨¬£§¤¡¨¤¨©¦ £§ ´¹§ª|¡¤¨´£¦«·¨¯Â¯¤¸§°°²¯«¬¶½£²À§¤¦µ¢§©¢±¢¤³«³¦£¦¬ ¢« fuwztj}
xqryq{~jod_pi`\_YmbP`bOX9FFE=2<=8/*&+)&&406658:==?AACHJGJKLMSSSUZ``i`eVPJACB;9EMV[^^[Z\[[[\]]_^]^_`aabaaa`bbbdb\[c¤¨£°³¬®£©§ ¨µª£²¹ª«¡¢z¡°¤¦±©¸¦£©¢¯¤¨ ¡®«¨§¨¸µ£¥y¡§·¢®µ¢°°u¤¿¤³¡y{¢µ¿x°¦¡ªd\bw ¤~mµ¤©°¬¥f ¡tzpªl¤©e¥
xkvq|ai[vggqy¡dx
vhnykpe_vokkg\ecaamQY=MMNRF=@TB91/&4:306678<;>@ABFHBGGIKLTUUY]`hfgXQI<DG<9UR[`ab`^__`aa_\]___aabcdabaaedchd^]f¦£¡°±¬«ª¥©®£§¥ª´®°¥©¥ªs¯ ¨«§¹ ¤~¬¤§¢
u®¦¨£¹³§ uw¥±µ´½¨¢~§£{¥±º¨±©¯¢y¬£©«©w¦{§{³{ bynqzqt
xht s{~ijx{qpgexnilj\diidqZ\GSKQ@E5-YTT6)!09=>643568;:=>>?DI@IEJKGRXZX[aaifYQH9DL<>bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah¤¦®®«¨ ©±§§ª¥¬Ä¼¯ ¥§´¬§¢ ¾¡}¬£¡¡¨¢£¹±§
pu£«´´®Ê«¯·
°³²©©|¨r{w¦h¤y´¡ ¨ªÂ«¡r¥}
³¡}¡|
nt{s}
uÅf©¢jogwt{vghupghk^bnlfjWdE\PL2E46M`c7&3<EGD:63658;8>==>BL?NIJLCPZ]\Wb^jl\QE=KM@IdX]cfhgbbbbcc__babcccdiicbbbecafcbbi£ °©©¨¦¬ ¥¹±ª«¦¡¤©¡£©µ¢¯ §¥½ y«¢
v £¢¸¬¥bm §~¡§ ® ¡²¤¬~¢vk«uM«xª©ª«~¡|{§jlg·~n`cX{dgs}yl\|n`Sq
\`mz`Ye~
q¨«k£nr¥ogdlZlzeY_~aWPoventqjjo]ioljgWfM\WE9A4GC^k4+ICQMN=84859;6@;;>BO>QRKMBJ[]_W^_cu`ME:MNMTb\[ffiibbdbddbab`bdcabjkdbddgdbgeach ¹¡ª¤¦¬¢¶½«¯¢ ¥««´¡§ §´u¦~
¬£¨¥¯¦¢in¡¡¥£¡ w§£©¬°¥z~}¢ps{ymª}¢tw¦g~w¥^{}s¢n·´ºs¶¨dƸ|q¶q£ct¬«a~j³~n~q£lr£r~£^³o{³tr[²ibptuqhoXjkqpd[f\aKD=D5QAYp2<RG_JR=<395::6C<;@IP?TNNQ@E_^[YX``{dIC8LWUVcaZffkkbbeadc`ab`dc_`cknccddhdbgfchh£¹« ¥¸¶ ¡¢£¤¬±¬« ¡¥¬x
q¡}¨ ¢¨§¤~k{} w¢ r¡©¨ª®®~z y£xs}¨£d¡~mho{§}rhtªsªg]
vhªj¸f\©pa_§vwhu~mj¦\¨~w»j}©Z]³g\nqxwki[piwwa^cVaAPEO7VBRm4JZZ^NZD@151;;7H?:CHU?YSX]>Db]V`Qac|iEB9N[]XdfXffnmbbe_aa__``ec^bdoq_deekdcihgkiª¶¨c¬»²°¬¥§¬°§ª£¢ £ir{z¤¨¡iy{}¡ ¡rh p©¡¥ª£ª~°¤¢¸v£³¢£xzª¢r¡}°µ}l¡x~µ££«¨||tªZ]o{xbM{{
dzBMY¢js|ovy±³~¦t~mq|ori£]vHec`sp}}ne_kguzbb^O]V\TV@YEPfDRV\aX^ID=B8?A:HE8LEXAWRZVEFa\Z`K`m}qEC<U^bZejVghmobff^a`\]^`hb_edvl^egfldelhhli±®S_¡§´º³³©¢©§ «£ §¡w
ny}r¡r¨|l
q¡x{¢£®}µ{¦z©£ §hxn~s sq|
o|¤§¤p^©hv£dp¦aÓ|{xrsc¢~¢r£vk³`tª²¨¼wn¿¦ª´^orps¢r^¤gt¦`h¦lÓznvykyvrl©¥g_dyqlhfcmuvf^`QZePQaHVIT_WS[dj[ePECKLJKAJD8P@PMXSXOSQ`eeiSdxywIFEc]eZhiSihjncjf`c_\]]_hbahe|d^dgdkdjlfhlh±¬T]Kª°²µ°³¢¦ ¢¤§¨
{p}h|wpl|£©yvnw
y¡£³¡¢¶z¬§¤®¥p©~¥£q£¯¤¯£wµ¶¶É¢s`©my u¡x ~oMf£qs¥{zubm~ lrd`stk{j´¶´Æ¦s}yj«tlswiytqPD}³^jukxfkfbstolU[RXgORgIULXRU\gknUgWMJAJMKGJNAQJPdcjmeuss~x{nuz{TQNm^h\kiRjhilgmgce_\\\_ibdhk{_]dgcjfnmeile¢°¨
e@¢²¬¯¯µ¡¢§¡¡£¤¦¥ykyeyuj
z¥¨z}yp
y~¤¦gnxl¢d|r¥xph§}¥{¡rv¹m¢b}£nsk«ku no¦`iiu¢~`uobh¡fjupdgor¢[_[d¡n^q|trd¥nx¢cf§grm¡oRn ^d§T]TmmrkqmphkwsjnQVUUeYSlIXO\HXhhrjYkVPREV\MXSaUhj^wu{|p}|r{sww^QsagbpgPkhhklohdg_]]]`jbjivu]\chcjirlfkmc¥¦zetm§®¥©°±¥©£¡¡¡¢{qh|st}|e|¦¡ª
}si¥}
©¥¦x~¥²¯¥y{©u¨n¥¢¼m|¥¯¢~¦|r¨¡h~o¬cx¨mª£uw«¦k±lw³©loo b«ªw§w}
¤ hu«f¶sv¾£Y¦«aurto{upbj}nglRTXT``\kL\R\I]lmv_[qX[_Zgsemoqcqt`wz~yryr~{{vbydcnsdRlggomrifia_^\ajbll{o\\bibmiwmglnb¦«¤ªª¨§£©¢¤¨
t
zo
~strn}{
¤¥¤unl¨ª¢ t~x¯¤qy{s©r}}zx{}}w¡¢
{l\zyszqio~qtqe_xvsupzooo
_wixfªt}io~u|umlfsx{wZjWyinwrqowxo]k
nhgVY^V\djcU`U^Q_owykjwejjju|pqtsaoubs{xuyuy
}{mmdyn^Wnghukxjiid\`ZcielqunZ[bkdlkymhloaº©§¡¢§¤¤«¡ª¦¨~r||~{trp|}y~£{¦
wqª
¨ «~¨¨xq
}p«q~qjo|hn] srulvtYro~j]id{
`ix{|vizlbqsw_s¨glvnwmdeczzZ[ifmv[{ywtnsrf\mkkbYX\YXjqZ^`Y^]er}ztotcjji{|rzvtdmthl{uz}{yyp{}s~zrhT\rilvpugkgd]aYjhkjqrmW[emlgryohjm`«±¡£¡¨¡ }«¡¤{
|r|v
ros~z¥wz¬¡ª¢¢££«¢¨§¡~z©±¥±¦¡l}wwf}
w|{u¤ wqux§z
uj|yiqh`sp}{wvowt]^ogn_^YZ\SgpUc[[alht{{rnpcjih{mx~phpplf{rw}{m
|zy|~zxNdvjsnq{dkebb`[sfpfrqlU]ltmhxzpgikeº£¡¤ z~©
|y{mxr~mk~z~|©r|{©
¦¢¦¡¦x}§|}ª¡© qyruav
nzvu¤u~~ss|
{y
¨tymj|{mhklf^yh|{vtvu{w\`p}nt`cZ[^QflSdZ]`jhty~pllcjjgkrkktnwnynv}
wr~{{|{`i{kuhjdjc`i\cugobumlTbqyeoyzrejmm¸¢¤zw¤¤yz
{l{xr
}|kh}|~
|¦p ¡
|§w£ ¡£¢¤{¡~|¤ ¥vuqwa~s}q~
hxrzs}}rz||{¦{
s
xdpz~xypkjf^~si|uus|sj^`tvpwdcX]^RihSdX^_giuxqfkclgejm}gmpj}w
zkr~uv|z}jrntibhlb_qVtolm`xhlWjtvctzzqbkoy³¥¦ {u£¡x|~~p~ztu
~wgc}x}y}o
¥¦v¡¡y¥{
ys¢ ¡}xr~n{d|qk
fvp}~y}~|ryz
£vtxs^vw|s}vfkd`~jkwssu}q|ccasnurmaY_]ZkcRbW__gjty
pbjclfh|khthloh|yl
qt|~z~|muttmfljbcuVipm`yglajvpex{yp_ql
¯§©
|v¨yx|}}{xsxys}d^}
t}~~£ ~r{¦ t§um|o¢}{qzkvm|n
xo~~esj}
u
zwy~}¥y
t{~qr~k`ytyp|nanbe{bnovsxwstav`oluno\Z^]]i]O\Wb`glrzj_iejchwmflhilg|zwns}tz}z}|ryxxmlkh_irbhqoevgmlazhj|{wpawm«¡¥©|v¬|v~{||vwotszo
}~|a\~rzz¤}|£
n¢¡pg{
p¡~|tsukqov}uort|}ernz~
uu{p}
ª{}~v|nl}afwstnza^o`kt^pj{yylrpey^nlsmsXZ]_aiZOVWdbgpqe]ihgbgqnchheigzwuo
s|u
x
|xzw{zryjk_phtkqnmqgoke{bnzwpkww££¨¡§t¨ s|v
xyrs{
kroymvnq[Y~vu w~
m¡l¥
gx~}}pvplnoq|jsqxuzgtpw}
{{xur|{
¥|v~wwlh}~[qrqoovY^o`pj^oj|zqnmjmw`pokqmYX`aalWPRYeebuoa]kmdcekm`ff_gjurrotyvy
~wv
{{vjqb|b
|oplujhnlvw_q~y{sus~¥§
~tzrxtpr
tqulnltlv}mnUQ«xvry wz¤
}r
jh¢
qw{{|}lwjoklm{bz~wzx}zhumv|r{qx{{}|w|vogi~v]vnmkprU]nbra_mnyphpfgsuhplawe]Ue``pSPN[ed]xo{^\hqbbeei_he[go~okqs}v}
uvy{xs
~|yxgrj`~ook{`imtt_t|xwss
|y¡±¦~wtwspp
spqojiumn}|musRNᐙ|ptuv{r
¡
}x{zxin¥cpz|z}m|espkm{z\z{~{ziukt~mp~
{}wxwrkdn|igsnghslS]odpZ_lqwgkkbgxsppd`x`aUk_^tOMJ_fb\xpt\[eu`addc`fbXistnlqv|tyvw~szq|~vesn}enpkYknyzr`vz{vrvvz¯
x~{
uwpyqoomn~rcdwp|nz|jhlb¤ÁÜ®ï¢sluu¡np
£
~{vx
vxp¦^l|~v~~l}dxujoztX{zzftjmwo{utxtrpdrv_rloahtfR`pgkU^nsyarc`i~qrn[cracVnZ\wLLKcfa]vrm[\dx^`df_cc^Xirknkrw}swxx|q|}{t
shurym{ntpWpzvyqdvyhvq¨£
}qxx||swpsjoljm|t^`wv{ptzg`e|ëÚµÉÃÜsltvip
|zwxrvr¤
a
h}~
rrwhvritxmZ}}vbum~omz
}nqytjoiov~]rhm\it_QdqhfS_qvt`p`]hqsjXgiciWmW[tLJKef^ars
i[\ey^^dgz`d_]Yknenjtw~sr{vzs
|vv
{vlwvyxunwz}Xy
qngxvdv
q¡¡soqv||yrtnodr~iflww[_x{zqqiagaÕ¶¦xnqw{qj
zh{{~
zu{|qvx ¡¡af}~m}ulmwutwvkc
|
p`tr}}zr
g{
|
nox~tlmhiwz`giiXktYRhribPbrxmbe^Zjntb\h`em_oTZnMGNfd\fnqkZ[cs_\ckvde]]Zllbljsvqo|}txx
|ux{voxy{om{v^tlhzssgs|ruu~mu}|v~vqoljat|gbiuyZ`w{ymq~edhhW_rs¼Ävq}qrj{|
|{uvw~ru
rw~f~
q}f~|y}i~vgpyxswtlky
l_sy{~|sjz
y
~~nmz|usmee{sa[pbWnqSSmrhaNguxf`^]YoosZeb^jn`pOYjQDSf`Zjnm|nY[]mcZbpvcf\]`kicljsvpm~|tuz|
v~xtryy~oo{qixz~ml{ukjxtk n}uiw~yoztqljd`szh`eqzZ`r|ygqyaee±²wKbZ¥ÙÐq{w}
nk
zy|wwpqu~{jy
¥px{
p{}mwh
yr|e~vdqsiyqpu}wy
zk\rs~{sor
s
{
ynn}~uyceh{n^XvZWpkNWqrf`Klwta^\[Zu~spXg^gkr`oNWgR?Xf^Zokgyq[ZXkeYcpy^g\^elgfkiqwol~uo{vqq{|zyujy~ko~t|or{zon~xg¡
gogy}~|ixskkf_aoym_box\dkyaqv_eeÔê½2:>qx
u~~mku|
|wnvwo
lu{ufy¦~nvx
|{w~jrh~yn||wbz
rdri~nvru
tv~so\nuy|~y{rm
szumjvts[ggunWV{RYodLZrre[Iqxo\[[Y]u~thYb[hfodjMWeP=]e\]ue`uoZYTncYcqyZh]`gmgikipw}miyn|}zupnw~{{hz}js{r
zsv}~yx}|kl}kh~z}~~}kvqghb[bgso_aks`hpybst^cd n\5Z¯µti|u
svoltyx|y~rgv~~oqivynfy¤~ow
|pz}{h~lj{zj{wr`w~rdrgvnu|}owz|umYqwuxv{ytos~|onimtm[edqoPZzM[n[O[rodUKsxiWYZZaqt`]]`gdiifNYgM@`c[`u`]ulXWSt`ZdorWj^bhjgmlhpw|lh}}p~~{zwq|oqw{i}{mwxvv|x~}zm
£{uxklx}z~prqcf^Yf_oo_`gpfjntato[adjv{¿¦¤È¸qr{w
srro{tttwyypcwzirvgwucj|~su{
z{kxy~tgzhkytizw}h`x}kkth|jv{~q|v|tbVx~st
}qxyqq
z~vwjqilqo\f`qlIduK]lTSYrnbQOtxaRXX]aps[a\ieedkdP[pICc`[co]]whUWVv][enhVk^ajgennhpvzmiy}r{~y|v}pwrmw~p{wxztx~yuo~}
zw
{ht
y~{vgpn_d\XeYmra``plkhnatiY_dnw©Ú©Ç²qwotz
ytst}woqm
t
xtk`zyfrpgun[m}x~y|nxv|
ltu~lgvdm{vmjww|abxziuuc~|hu|uwq{}nZWupv
zmtzlv
|~z}t~thtenlsZh]sdGmmKZ`WVUwmbPRtvXPVX^aro\`cmed^ocT\qFBe^]eg][{bQV\t[Zgk`Vj_`offkqhpvxtkvvx~w{t}ortqu~
zvx{|
w|}~{~ruy yvtx^}
xs
wzbnm\b[[aVisc`[gnpfqaqfW]ck|Êι¡jmmlqq{~zyxsxut{jlvcuvof_}zerkjqcXlz
sx}ost{y}qpo|fhqbmxqjlqx}}z]ezxjvxfwhu}rjo~yo}]Ysnu|opqwixx~s|u}{sgsankqWi\v[GmjLVU]SU{kaOTurPQTW^ct
i]`ljfcZoaXboGAg\`e]\V{^NUepY[jh]Wg`^rejhrhpswxntzx~yur
pp{xwvyy{t}}~~~}|xuxx|muxd
so
ztdnjY_[\]Tgrd`YdqrgrbkeW[`jx¾®{·nas
hszqxz}~wwrvo{vejoausjb^~xyfqhkkZVow¢qrzvou
}xtqnhx_jl`mvjgjlywzvZg}|yfs~m
ueupgk{unub]q}lu}|gv~nqivyt~m{|{yqflbn}llUi_vUJijNQNgLX{haNUukLQTU_gvf^`qhgbWj]\kgJDjYbcVYUyYMVmjY]kd\Yec^temdqgrpuxqv~w|
}usnsy{zss
x}u~|{~{v{wwziv|{lrp
pglgX][\[Sdpd^WbrujuoeecW\[hporsddy}isusrwxvrumjzqagkgsmf]_}p{imxgjdUWro¦|{vt}t~|o~}x}}upqlgt\lg^ltdgeizo{rYhwuhpxwbw|ojm{qgtfanzhsx|cwwjlru|r{{thywodfbm
{ljUhaoRJhjOKNoG]zfaMUtdJOSWakw~f]gsif`VdWbp\KKjWcaUTUsVLXudY^k`[Zce_vgmbpitor~ttwxz}u
nrt|zuq
zus|
}}z}w{£¥y
kt{zuznsy}vojieV][ZZSbnd[Xas{jhmi`bX_Ziikogl`hyxjrssmz|utmzhjyj_enhvgeXbwj~{ojpgf]TXog§vz|zvqqux{zvvjruggn[ld]mr_gajxh{l[nstjp~zxaw
y
trpzsdri]qxert|yctqgjyusmyxvye
|ywqddcm{|jjTgaeSJkgOGQjE`wfaMSr]JMUZelx|f_nqid]VaUnnVJSgWe]XMUkTJ[y_[_k]]Zbe`yhlaoovnpwuz~wyzyz~qtt~zvt
}|kr{
~}~{w«zkryu~tnn|sjpnddX_ZYZTbjg[Z_ui^ml\aW\\kert}ii\kvugsvql{}|xurlygixf]dshzwccTeph
xxgijaWVYgc§o~w{qri{q|}xs
~ndurdgg\ja]oo\g_mtezh]torkq|~uvbt{ysuvbqn[rtcqs
|uesmam{pkj|zvtgv{zvqebdmr}ikSg]\TKqbPFU`GbvfaKSoXJMXXhkv{eenqfdZW^XweTJ\bWgWYHWdPHbxZ]_lZ^\ac^~ij`otxmpnvzr|}uux|suuyzz}~isz~~
zz|sq{{}dqys|zurol{~lzcpobe]eVYYWcfk_]]s
hXqn[^XZ\l{bpwulaYlssgtuolx~xvmntdhte[gufvvz_]Rffkt~bdj\TW]bc¤ixsynq|jzo}}vty}yidvl`f_^i_]tkYe]oobze\w|knnpxytues{wpstcxe\qqbqr}tgre_nwjehz}uopvt}trb_fmn|dhSgWXSMv_PJYWHbtcaITmSJMZWjlr|cmmscbZZ[aw\SKc]WhSVFX`MGiuX^`l[[_bb\ihanxymojvym~vtttqvvx}}~~~pw|yxz~ttq¡zzwcuxswtktn~kx|ps^pn`gblTZZWhcmf[\qeSrn[ZXW`lvciuji^Ymspksssi|~~zvnnldiqc[jrdtvs[WSearr]bc]SZ`\ceqq
ull{opr|~}sxt{z{deug]bY`g[^vhWb]phawa[|vijroxtsuiq
wtkq~ogxX]lncrtztgp~\`prb`ksmnvsqxkqa\ellz`fReSVQOu[QOXQHcsa`GVjPIPZVkkk}fnoqb[ZXYlqWRPfVVhSTEY[NHruX_clbX``a]jcdmzxlpiuy{k}|y|mrnvz|t|tx
utqvp¡szzewnmznfxpzksvsk^unagekR][UgalkZ\qdOon]VXUgishbted\Xmtloutxj|{vscdkna\nmcsxkZTVcdx}}q]d_cTZ_Ybcmp
tki|pguxu}m{uvp{v_frc[]VacXaueU_`mdaq]]~phitqtquwkm
}rsgprtpT\gkfruwtcmvVcrl[_pg~fnx~stsknaZdijw^eScTUPSlVPVRPGdr_aFXiNIXTWnie}ilxkbW]U[tdSRWhQXfTSGYYOMxv[_ekiYa`^^nbfkyunoivvl}{~krft{u}r|
{ss~vn¤rvwlz`d{pfysxlmqwgd|mcfghS_^Ug_ln[^nhNim`TVSogskexdd\Xoslqzwrl{vzykaelm^`ojepx~gZVX`lx|{p_c_gVX_Wcbkp}xllzn]xsn|kvtop|sXjn^X\UabWdpcS^biablZa~lfltvomwwli{nrfr~ntnd[aiiptts^imSeqeVcod|dsx}wlpmk`Yafgt\dU`URNWdRO[NOHdo\bGYiMJ_KYmd`yin~d`U_T]u\SR`fN\`URI[XPYtu]_ekhXba[^qcgjxqsnhvt{rz~|yntkst
y}|
sstxro~zz}~~}}~~}~~~~~~~}z{|~~}}~}~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~ÎÚØØØØÚ]-0000-F¡¡¡¡¡¡ wegfffh\CDDDDARÌÚØØØØÝm=DDDDE8.////+H
}}{{z}~||~}}}~}}~~~~~
Ûéççççê~S7¤¤¤¤¤¤£r]____aR455552FØêççççíg.55557':|}z{z|}{|~}}}~}}~~~~
|yzz{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~y{yz{{y{}|{~~~}~~~~~~~y{z|{z{}}{|~~~~}}~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}}}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}~
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx|{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~~xuwyz{{{z{}}}}~~~~}~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~rtx|||{||}}~~~~~~}~~~~xrvy|}|z}|}}~~~~~~~~ssvx}~|y}|}}~~~}~~
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxy}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvutvwuqrqnprpghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkigfgggihgmgjghehgccbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{}~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__`c_\_]`]^Z^]YY^ba^^ZY_\XWSNMLKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{}~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSSPMJMNPROMPQQQQRVVQQQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTttuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPPRQPNNONONOOPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKLFDFJKKKHJLLLOMLLNOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBA@@CCDEACEHKOKIIJHGJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:<>><ED=?EA?@A@DEGGGGBDDEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;899;;:@;;><;;<<HL==AA?BC=ADDFBFFDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprttsqrwyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;::;89:87:<978;;>=;;:8:@@AB?A?CFDBCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqususqsxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<979::988::78:9:;;8789;:8<;=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>=;=<>?=<=;:<===<<<<;;:;<>=>??A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquuuusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCC@><=?@??=;>=>CE??@=;===<;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVpoqssttuyz{{}~~~~~~mLPQNOPNNOPPO><<=>??@>@@???CED?=;<@>:;::97:<9==@=:<;;<;89;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}}~~~}~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABA@=<=;>=:::<:8988:;=@?<;;<;::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFEHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@?>?@=??><>@?===?==>CD?;<=>@==?AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy||}||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCDA?@@@?=@><=??@@@C@@?@@>=<=@EABBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBBC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{||}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@A@>;><?=<:>=?BBE@??Na_J@CEIIIILMKECFGHEGEEEDDCA?@>>BFJJGEEFFFJNMKJIGGHKLJGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|{{|~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@DED?<ACDB?>A?ADDDCWu~XGHJLLNOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHIHGFEFFFDFHGEEHHFHGHFQnopqrvvy{{{z}}~~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJHIGHHIGFBDFDDCAUtWILMLMMLJGGGGDGGGGFHFHECDDFEDDHHCCCGJJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrtwwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLKJKMJKHHFFGFEPl|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD???DFHDEGIKIIGHIGIIIJIHFJJJJIJIJJJFILLJJKKfopsstvxy{{{||}~~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKKKKKMLKMLIFJVl
uIIFB??@??><<<>::<AA@><998<<=;>;9;?ABAACCC@ABEDBCFHIHHHLMKGIJMMNMJJKKJLMSlortsswyz{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHGIHKLONNQNQ^r
fBB=88::9878896479;<:8567789787689;;<>A;999==>;;=ACEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@BFHKHLKNTg{T;8656766646763468:876565677778:7778:;7689989876:<@GFIFIFEFOSRSSROPORTepqsttwy{|{|}~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:<DBDFCCVx
H676468874578467799766765::;::<89899877:::8878589;A=>>BA?AKLOQPQOOPQWkrrttuwz{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897:A9<GR`|z>:88;<=>9:;<89;9:;:99;:9===?;;<=:><:<;<;<<::<8::;;999<?<=ABDIJMKJKLWortutvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<:89989999:>=>Ow
l<;>BCEEBAAB>@CA@?=>>@?>?@?@==?B?AA?A?=@A@??A<><;:;:9;?=;;==AACABCAXpqtttvy{{|}{}~~}}}~~~~~~~REBAGJNOLIGK:8:;9::;<:::<;=>@>N}
^>DGIKJJFGGDFHGECA@CECB@BCB?@DHECEDEEAFEFDFFD@B>=@>=?@>???>?>>:;=<`qrttuwzz{}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:=:<:==>>;><?>B?L~
WGLLMKNIIKHIJJIFDDFGFDCEFDBHIKGHGFGGEKJLIKKJCFCCDBAACBDCCDDCA=<>@hpsttvwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA97;>;<:=?>?<?>BAD>g
PMPMKNKJLIIJHKGEGHHIEEHFFELLMIJGGHIJNMOMLNKHFGGEECFFFFDEHHFCA?@Lmptuvxyyy|||}}~~~}}}}~~~~~QA?>?FGG=<@@87<:;<:=?<==?@CBHS~
qMQOMLLLLJIHFJJEJHGKJHJGGGKLNLLHHIJMPNONLOKIGIJHIDIHHFFGGIGCBACUoquvxz{xxzz||}~~~~}~}~~~~~TDAABGHB?8?@8:;7<=:<?<<=?BCCLm
^RRPMNMKJGFCHJGLJGKOLKJJLMLOPNHIKLOQPPQOOJIJJLJLFGHGFGIFEEB@BB\prwxyzyyyzz{{~~~~~}}}}~~~~~UECEEGGED;?A;=<8?==>@ED=BDCFJt|WVRRTROLKJEFFKONOWVQPOQSRMSTOMSLPSUWRSRPLKMMMKNGGJFFIJDDEEBDCcquyyzzz{z{z{|~}}~}}}}|}~~UFFGGGGHF>@B=?=<A?AADTKBHIFIKx
gVVkaERQQPJ;;QSR`u]UVTVYYRXXRZfPUWZ]RTWQPNRPPPQKKKGHJHEFIIIHIjsvyyzyz{{|z{|}|}~}}}}}}~~~THJIIGGFE??A@EACFDCDKVPJOONPQy
}al[dU:XXXSP?@VUY\d`VYbr^]V]ZVEQYZ\Y_TYgRUVXTTVSOOMKLJIILMKOMSotvxyxwyzz{z{|}|~~}~}}}~}~~~~~VJJIHGFDDBA?HLIMPKIJOSQPTVUWUv
g;~znpXZ[ZRSRWVTZZuYU}a\X]^WIV^^[[_YHYXY\]XXYWRQMPQMMOSQQURassvwwvxyxz{{|}}}~}~}}}~~xy}YNKJIIFBD@A:OQQWXPPPQRSRVWWXXm
n~fYY\YSVTWRQWVcQerXZW_hP`fZZX\hbGOZig][\]]WSNSPPQVVVVYZosuwvvtwxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZZRSQOQRQURUSV_ux
}{\PVXTRTRQQLOMKfyZ]TYUV]ZLTZUST^ZXWWWzkXZ\\^SPPPINOWVX[Zdqtvvttvxyy{{||}}~}~}~}}~~~zxwvsu{tk~~kqy^[VUSROKFCDAM^lVRSOOQOQVQSRRTcdv
~ymqVIKNNKMKHJDFHEC>ScURQQNKRURMOYQMNQSUUMQSRPNLLHCIGRSTZ]mrvvuttw{zz{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt`d]^[YUQLILIaltPQSMQRPS[RSRQRUUbs{|~}{{
u_]KC>BBCCA?DPCC@C>BHGV@INMG]iQHFOFDEFHGHBCHGHJGDBAC@NPMRdtuvustvy|z{{{||}|{~}}}~~||}}vt{mh|gnqfheeb\XSQPURsWe[OONLQRPUYSUQQTROV`klsvz{xytrnstsyx~~kLG>>::>@?>>>jPKaEFHIEB?HMMGMQUJBE?><=<==?=?ACB??<=B>IMFUouuvttvxz|z}{|}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QQZ\Y^IJOPNKLQRQTUUWQQWVPX[b]agmmlnjh`nrimlqu{z}{xz||xwxdB@@A<:BCAACA[\O{NOONKLMOOPLKLWNHGAA<977599=;;;8989?;AG>\tuvvuvwy|||}|||}~}|}}}}~}xuwz{zwyxuw{|yxuywcqhipmnmmhf^OO^\ZIGOQQOMPQNQRSVXSRYTNYZ[WY\_^_e_]^qwk^`gkwooljonnlfbYGFFHBAFHEEFCLQOaWRXQPSSRU[OOQWPMJDF>:96587979:365795<B=ftuwxwzy{}}||{|}}~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMKSTSPQUOLRSTWXSTXQLXYYVXXVXY]WXXhsk]V`tkaa_]d`_^YUPMOMLIGJKIHFCPOSZWTTNQSYS\eUOSTQNKIHC?A9988978847578599Gnruyyz{{}}}}|{}|}~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPWVVSTVOOUVWXYSUTLKSUUUUWPTUWTUR]n^RNY`[VY;DUWT[fJLPRROMMNMMLJFPPUYSTOJNOUST\VRUSSOMLIHHF?>=:787659967565Wqqtxzz{|}}}~||}|~}}y}}|~~~}||}}~}|rvqxxruuqqnppopuvtnjddjppqrpnfedc\^RTZVWTSVTRXWYYYRUOIGOPOOMRJOPOONNOTLMIPPSTU2<XMIAQ=c`QSQPNPPONNMPNTRPRLILKORPQRSTQSOLMKLLHCBA=:9876;B4566;eprvxy{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqpuuvcjgeWhtrrqniihpVVTUXUVURWVUZYXWVQSFFAFGGHFJDHJHGEHLHKIGLMPMG/E_R=3@>joaRRQ@GTQOPPQNQOPOLJLLOPNMPQQNPOJLMMKGEECB;==<9=G6676Dnquwz{{||}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknbePSTRSUOWVUYYVQQQO@>;=?@BAC@BEDA@GHGHFFHJMLDGCORB8DMS]gSQSAGUPOQQPMMNLJLKLNOOQLNNMIMLIKKLKGFFED<AA>;@E;<89Trsuy{{{|||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLONMQSLTUTWWULLKH=987;?A>==@@B=>EHFDFFIGJJ@FAA@EGDIOHQRa\QPROSNOOLLOMKMLMON[VKMQOHJHCIJLLKFFFE?BC>=BG?B?@druw{z{{|{zzw|wy}~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B?;>A@@>ADIECHGIGIEBB?><BA@GJEMObePMOMWKLNKKMMLLKNNSdMJLRIIIEBIJLMNJGIFBBB@?EFEHDLopvzyyz{z|zwtxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLLIMPMPOHKE?B=999:?B?<ABAADDGKFDIIGGHCC?B>??@>CEDLMQTLJIMTFIIJLIJKIJLMOPQPKGCKGCCKJLNONIJIGCCCDIJMLIZsnxyxzz{y|vrpurtyyvxjqnjllnttmsu{stxronqovsnporpopstyjN`gsjt|ygosqiqheqHJCFGHGJKIJLDGB<>=:::;AB?=BBCCHEJLJEIIFGHCC;A@B>@?BDDIMOGHJGHKDHIKMHJLHIJLJM]RHIDNGBELKNNQNKMJKFGGJMNRNMcnjwvw{y{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoijthepFJCFEFDEEFEGCC@=<=:;:;AD@?BCEEIFJJLFIIGFFDB:ACC>?CCCDGKNHJNHDHEILNMHILGFFIILNKIHEOICGNMPNPNNOMKIHIOSQRNSggfrosxv{z|lhjoekpmsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhmf_pGJCEEDBBAE@DB>?>;;;=;=?DB?ACFGKGJILHGGGFEC?=DEB>ACBCEGHIGMPIFFGKNOKFHIFECDIIHKIGHPKDJMMQNONOPNJJIMRUURPXeaamfproryzgehhcilfqlflmgiklsmpvutpnvrosrsutqssutsuvvvyvutvlkuumrvqlnlerMGEDFBA@AD<BA>A=::=?;>?AB?@BEGJFIGIGFFFDCBAAEFCBBBDEEGGHFLPLIOJJLKIFHEFECCHHHKJGKRMCOONQOOONOOKKKPUWVVTY`_]i`minhrsbeffdhhfnifmmhkkmriqvusqmvnoqrswsrstuuvvvwvwvvtwuksunutsprkksMGGEGAA@CD<AA@C<8:=>:?=@B@@@DFHEHFFHFEEDCEBDIFCGEAEGEFFGEJMKHQMJKHHIEFHHECIIJKMKPSNDRSQQRNOMOPMLNSWVWYVX^Z]d`hcjigk_defchggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxnouorsuqqipzMGGGHAABEE<@CBD<7:=>;>;AB>??CEFDFDDGECECDFFFJEEIGBGHFGFECFJJGMKLKHJKFIHJHDKKLLNORTOHTUTQTPQMNQNMQWZVZYWZ^ZXa```^hec`deggjhhjghnllomqpiuuxrrpupppruvpusuvu{~}xvtwvvvwplupmsunossyMHHGICACGE<@EBD<8:>>><<BB=@>ABFCECCGDCDDFGGGIFHJHCIHGIGFDHKIFKHMKJKKHKJMKINLNNORUVOLVVTQTRRLOQPOTYZY\ZZ\__]_c^\bdlc`dghr
hgjfjnnponsqjtuxrsstrnpqvrquruus~y}uuvvvvxriuqkrtlqwquKIKHJEBDGE=AGDD@9<>@?>?CB<@>AAGCEDCHDEDFFHHFHGIKJEJHHJHFFLHHHJGLLLLLIMJMNMOLPPQUVWOKVVUSSRQLORRQV[[]^[]^``a`bf]d`fh`ehjdssfjhflprqossnswwpuvtsmoruorspurvrtvuuuwvuwtgtrkqrkrwpwIJLIKGBEDE<AFDDB;??A@@@DA@B>ACHBEDFGEHEFEIHFIHJLHHJJIKJFJKHIJJGKKMLIILKMNNOLOPRUWVMNTVUSRQPMNTSRW[^^_]^``aab`cdeadicdijgvlkigmosqpqpprywruutsmmssmqrotuuspswtuuwvuuteqskpqjrvpwJLKKLGCCAE<?EEEC=AACBBCEACDAAEGCHFHFEIFCGJGGJFILHIJMKMLGKIHKKNQKRQLSMJMMNPPPTOWXX[NSQW\ZSVPNTUTTXZ_bb_da^ac^`fcabgnicihhmxvmhinosrpqrrrvtsusssnksqmprotvsqquvuswywutucmtkopjqtpwLMLLLGDA@D>=DEFC?CAEDDFCBEGCCIFBHJIGHJFDKJGHJIIKGJJNKNLILHJMKZfJd\KlRGNM_nUls[qpbwcRPbvuhucavaXnqbdvinzf\lu`lkV`wuhjhhfglmjmojmosrprrqrsrssrtrnltonpqquurqstvvuuywutt`ktkppkqsqyKNJKJFB?@B?<DEFDCCCEEDFBEFGDDKEEJLKIKLGGNIHJKGKJIJJNLMMLLIMLL[sbdp^llULNer]geqlntgpi_aYnmbppbkjjgoqtetnn\pvgpNLryvkaakeelxmkvlnosrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIIGED?AA?=BEFBFCEDEEDCHHGDDKHGKMMJLLFJOHJKJILJJIJMMNMMMKNMM[rponpplkMOPmXNibtrpamov\YlP[mmZqmkomxxtsip]`slqjUuyxoc^kfbgppjioppsspqpqqrrqqrrtlmrmmnorutqtrtuutuuzvutenukpolsrryJKGGEEEBAB=??EGBGDHEEDBFIHHEGKJGMLNJLMGLNIMKHJMIJIJJNONNMLNML\hdu]lqWlMOQnUZk^klvaldtTecNlYl\tpkilxjwuhp]_skhWbcw|oc`ghacityknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvIMGIEEDCAB<B@BFCGFKGECCHKHHFILKFMKKRRLHMMINJIHNGJJHINOMNLJMMJZtppoqqmlOQRnYskgooqqomt^nXat_nopoqroousttjZ^tcwxrjnzhaacfabjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyytukoumtonssvtIKHJCDDE@@>CCAFCHIMHFCFJLIGFJMLFOJJWRKGKJJNIIJLIKJIIKLMMLIKKKSkbYi^_jcrrZ_Yjo_eeUk_d[abQ`mh\j\niid[oedp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrutwrHHFJDECFA@AEDCFBHJLGFDGKLIEFJOLIOJL[QJFHHKMIHJJKKIHIGKKKKGHKJLKLJIKLNT[]TPUMQONOOURPPQOOQJJNPQdqiTYV[[\UYZ]X]\\cfaafbcf_^fkmhmtxrtroppt
zpmmlkqsttrtvtuyyxuvqruovrtsuusGCEGFF@EC?CGDEGCIKLHFDGKLHDGIPKLOKLWMIFEHIJHIKHLJIFHHJHHHEFLHHJNKHO\W^O\\`^OXYS\\b^MYZMXaRKYaZS`d\aX[ddVVX\YZX\VY\^c_d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCDLMBCDBDIEGGFKJKHEEJJJFDGHPJLMJMRIHEAHFJIKKILJIGEJHEFGEEJGBIMIJT_Y`X`a[`UXYT]^Z_RY\P^\YN_\^S[^d^Z]`c_Y_b[`^[UYXZ_^ccbaceiekrpoppnow
{
uqprrsuyyzyyxxxwryvxrqxvtvaSJJMIECBCFGEGGIJJIHDFKJJEEHINJNLHLNGHF>GGLIKKJKKIGEIFCDEBFJD?IKHN[cY^^a_RTSW__\]Y^QY\MV_WKQY[Q[_ba]^ca`bbbcceZRYVW]Z^d`__cebhommllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQJFDGEBEGHFGHIFGJGHFHKIKDCKJMMLLHJJHJG?GFNKKKMKKKIGIEE@DAHIA>HIFO]aZ[d]_TQRX]\\\_[KW\LR\YIM^QQ]_bccccb\dcbdceXRWUT]Y[a_^_aa_dlkmjklnv~uz|
zrsuu{
~xpzwvx\RMC@IFCEKIFGGIGGJFFFILJNECKJLNJLIKJIIGBHHQMKKOMKKIHHFE?EBHHA@FECT]Y^X_Y_[]UXXP]]QKJV^X^[]VZaRR__bb``bb_cbbddbXPRRS\T\]]^^___dhgljnnp{{|~{
srw
|x\SKBAGGDFMRHDRKFHHHDFKIMPEGIJKNLLILKJIGDHKQOMLPMLKKIJDEAECHFAAFDAVUE\T^SV_XNTUNZ[MJKT`a[_X_^b]OYb\``_bca]bbW`_TQPQRYS^\[]^_`affelfoow|{{}
zo
~INFDFFHDIScQEW_IGGHDFMJPPFIIJKNLLKMKJJGEINQQNOPMNMNILBDACCFDCACD@LHCLLPONLFMFFHIHGLLMOPILOPPSPLQSRUZXWYWWcVNRTPQPOQUT\YY[^^aaefchdlmqsszy{z~{}{
}KIEEGFGDKN^MHHYMGHJHGMLQQIKJKKNMUNOKKLGGKPTSNPPNOOOHLF`ED^LDfcCL[H^\smOMVmYLCO_TlWgJ]WU^DMQULMSVQRTXVTXTT\TOeZhheZUkTXWU[\\``abbb`gignlhrz|}~}}zr{z{
~z{LIEFFHEEKPTJKG`THJOJIOMRQKMKLORUROPJLNGHMQ[YOPPNPQPJKQQI|YYrsWPmGqnoaVPqqtOBjsnqtpSo_[nX]V\XUkhU]VcY`YZ^UUWituu_av_Yb\\f[_aaab^`cgmol`pwtx}~vxzmv~tx}|~|z~wwNIEHMMBDLLGJLFRVLKOHLRXWQNOOLQTNOQPKLOGMPS[ZTQROPPPKIZx]TxdhXRSPvftlpbnfkRrNLwmjrpsrqrpoo]ezuxqqzq~r}ku}aRh|essoss|}p~xor```bb[aahlnkblfgmw~~{xwtvzhr~nt|~wx{~x|u|||ssNKF`]GAEMMHKKHJQOMNJNV^YULQSNYYLSRRNLPIQRTYWWPTPPQRKHgxlcxqmZJLTypumubnvPddHevqmwojfxxiWrQhzmijzz}lxzphnXuujvupash}ilx|o___cb\_degjjehbcdllppstsssyqrxbltgry{ssuy~svzn|}yxrnMJRtNCBEPQHKLJLQOOOMPZ`ZXKTWPa^RVQYSMPJSTUXWWPUPONRJKrouuquqch`UnKqp^GhyWvTKhx}w`y{sna]modSgrunmypwlvstqlm\s~zkmy|lun|lqvux^__b_]_edighfe^bbiiijknokqnmjpacfdowxompsynqpj{ztromKKZVHGEGRQKMNLLQQPPPQW\YUNVYUfXRRY^TMNJTTVWYWOSOONQIRmHiwK`dvvTVlNnl{rajguTKVkg|lmlx_Zpz{_`zscroxqhd|ir{]TKk_vuljv|{m~yk|p]^^b[_bdegffec[ccikkrsrwgmihdg`alagsrlglmr|kmhk{tmmkmOGJKHJHHRQMOPLLSSROSRXRWTPWZVVTTTa`QONKTSSQVVOOMNOQJHQMOULKKRSRQROVUQQORRXXPMOUTWXX[[UQRW[WXW[ORTWWXQ]XV\UTOXRWWXYZ`\gr_[[[]]_cZ_ccegdddcZdbgffmnmuffgc`f^]g`dlhfgkhpzhggkujhgilPIKKLMKJTRNRQPLVVTPTUXUZVR[]VUTWUYXOOLNWTPNUSNPNLQPKIQQKQMJJOQTQPQSRJHMOPQRPPPTVRXW\WSRPQUUUSZQNRQWUSYVTXTSQTSUUYYX^Z_a]\[Z\\`c\]bcdgeeebY`acabhhjncad^_c]Zc\bma^ffgmsdihkkedcfhQJKKNOLMTQOTQRMXWUTVXWWZVS\`VWVYUXTQPKOXSPNUPNQNLSPMNUSNQNMNQSPTPRTTNKMORTTQQQUWUYZ[ZSURTXWVY\SOSTWUTYUVXTRQWUVX\Z\`]WY_]^]\]`a^[bbchgfebX``b]`hegea^_]]^ZZ_Z_g`^^]chkahfhfd`bdbPKMLPQLOTPPTQOQZYXWYZZXYV]jdVXYZWVSTOKOVTPOTPPQNMRQOQXTQQOMORTNWQSTUONNQTVURSRTXVZ]\ZVVQRWXU[[VPSUUUVXSWWTRQXVV[_[^`_V_]^`]\`___ZbcehheebYb`b^^fdc`b]\\\\YZ[X[a[^]]_b__bddbd__`\PMNNRQMRSPSUQOV\ZZW[[\YZ[dqmhd_[YVVXRMNWSMMROQROMPSQUZUTPPLPWUQVRSRXMOPRUXUTTSTYX[^]\[VROUVU[[VQSVTVXTSXZSRQYWW]_[```Vb\`a]`b_\`]cachief`Zc`a__ee_`c[Z\[\ZZYYW\Z\[`^`[^^a`_c\Y`ZQNONVQPUSPUTSPW\\\Y^\_W\^jpwyc\[VVYRNPWSNQQPRTRLQTSY[WUORNSXUSQTQRYOQSSV[UVVSVZX]^\\^VSNTVV[[UQTTUWXRSY\TRR\XZ]^]ba`Wb[cb^ac_\bab_dgieg]\d`a`acd_b_YZ_[\[XXYWWZZZa]][]\\Z]`W[[ZPOOOYPUUSRXSTP[]^]\`\`U\\hjr}slh\UYWQOR[SRQTRTUTKRVUZZZSOSQUUTRNUQRZRTUTX]WXXSX\X^]YZ]UUNVVW^ZXQTTWXXSVY\TRV]Y]]a^cc_Y`[eb_dd^^cca^efief^^daaabcd_b^X[_[\[XXXXW[Z[`][[\[XZ[^V^Y]POORZPZUVWVTTT^^`_^b]`U]^bkyum}lZUZVQQT\TTTUTVYWLRZV\Z\RPUSWUUROWQSWSWUV[^X[YUZ^X_^Y\YRWRYXY_YYRTUYYYUWY\UTZ]]^ab`ed]^]]eabfd^_dc`\gehfdb`ea_aabb_`^WY^Z\\ZYYWV]Z]^[Z[\[WY\]VXW]SOPWYQ]UVYWWUX_`aa`c]`U]^beev{hXYZTVTV\XWWVVW]XOU\Y^]]TSXSWUTRSWQSVTXXX^^X][U]_X__X\VQYTYZZaX[TVX[YZXYYZWV]_`_dcbee^b\`fbdfd_`dba[fchfdfaf__abaa`_^VU]Y[\[Y\YY][[[XXY[YZZ]_]TY]UNTZWT\UWWYWV\`aacac__V[`da_zuohZ\ZVXVX[ZY[YXY`VOT][`a\UUYPTVTRVUQSUW[[\__Z_\V__Y]^Y^VSYWYY\bY]UVZ\Z[ZZYZXY__``dcdeecdZbfcgfe^ab`c]bciedh_g^bbcaa`^_XTZZZ[[X\XX\[Z[WWZXW\[\`]V]]SOVZVVZVYVXWX]_badada^YYadb`kfh^\][WWYZ\\\_[Y[bVSW^]ac\SVYPVUUUVUSUTX]]_``]a]Wa^[^\[^XVXW[Z__[^WX\\\]][Z\WZ_a^`eddffgcYcfehgd^c`_ec]fidei_g^cbcaa`__[XY[YZYXZXW[[Z[WXZTZ]\[`\U^bMRWYVWZY[\YWY^`baeada]^Yacb_a`a_]]]XW[[]]__\Z]cXYX]`cd_RXYPWUWXWVVWV]]^aba_b^Ya]]^Y\]YXUV[[`^\_YY^]^^`\ZZY[_b_bedefghcZefgigc_c^`feZiicficf_bbca``_]]ZX[YYXXZYWZ[ZYWYVU[]]]``bbxKWW\YW]\\]ZW\]_`bdbca]`Xbcb`cac^\]\XW[\_]`_][`d\\XZbecaR\YOXVY[YYWZZ`^abc`ac_\b]_][^]YYTX]\__^_[Z^^`bb[[W[]`bbcedgffge]eghifcab\cg`\iichife`baca_`_]]\Y\YXWXYYW\[ZWWXPXZ]acffrkJYW][Z_]\^\Y][^_bcbaa]b[bdb`cbb]\[ZWXjq`\`_]\ac_^YYcedbT_ZQYW\]\[Y[[c`ccc`bda`c^`\^^^ZXU[^\\aa_][`abfb^[S\_`cddfeggfff`fghhgdd`[fg^ahhcihfc`b`cb___]][Z[YXXXVZW\[ZVVULXX\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyy{{{{{{{{{{{{{{{{{|{{{{{{{{{{||||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvvvvvvwwvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyy{{{{{{{{|{{{{|{||{{{{{{zz{{{|||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||upooooppz~}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÖ½sqrrrrq~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}upnoooooz~y1333332j{éääääèÊrooooon
}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vuuuuuuuvwwwwwwxyyyzyzxopppppprrrrrrrwzyyzzz~|||||||zzzzyyy{}||||||}}}~~}}|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvvvvywvvz{x{xwvvxyzzz~yyyxxxxyyyyzzyyyyzzzyxxyyyyy{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwww||}|z}{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwwy~|}}y}zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z|yww{~}||z{zwxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{yzzx{}}|{}{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyywxzzzz{xxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyxyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{|||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|}}}|||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~
~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqppnnnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrqppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpppqrrqqqpopooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpooppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqqpppppppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqpqqqqpqpqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtsttttwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrqqqqqrqqqrrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrstrrsrsssssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz|~~|vvwwvuxzxxxxwwwvx|yy|zyy|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{{z{|{}|{{{{{{zyxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}|||~|}~~~~~}}||}}|}|}}{}}|||}}}}~~~~~~~~}|}}}}}~~~~~~~~
~~}~~~}}}~~~~~~~~~~~}~~~~
|||{|}||~~~~~~~~~~~~~~~~~~~~|}||}}~
}||~~
}}}
~~
}}~~
~~~~~~
~
~
}}}~
~~~~~
~
~{z
~|}}}~|{|
~}~~~~~~}|~}}}
}|}~~~}|}}|z|
}}}~~}}}}zzz~~
~~~~|}}~~}}}}~}|zzz~~}}}~
|}}~}}~~}~}{}~}}~~~}}}|{{{zzyz~~~~}~~~~}~~}|~~~~~
~|~~~~~}}~}~~~}}}}{{|zzyyy{~~}~~|~~~~}|~~~~~~~~~~}||}
~}}}~~~~}}}}}|||{zzyyy}~~~~~~~~~}~}}{|~~
~~}}}~~}}}}}}}}|{zyyyyy
~~||~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~
|}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
||||}}||}}}}}}}}}}||{z|xyz{|~|~~{||}
}
~~
}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~||}
~{z|
~~~~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}||}~}~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~}~~~~}}}{}}}}}||}~~~
}{z}x~w{~~~~~~|{{|||||||||~}|{||||{|||zzy{|z}
~~~
~~~
~~}|~~}}}}~{{}}~
{z{ywz}~
~~~~}}||}~}|}}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}}~}~~~~}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~}~~}|~}~}}|{|||z{z}~~|}|}||~~|{{}~}~~}{{{}|z{{{~~}||~~~y}~v{vx}|||{}}~}}~~}~~~|~~}}}{{}}|z||~||}|||||}|}{~{{{|||}|{{{{||zz}z~
~{|~~|z~xyvw|||{{}|~~~~~~~~}||}}|}}}}{|~~~~}~|||||||~~{|{||||}|}|~|}||{{|y{|{{}{}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}}}}}|}|}}}~|}{}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||}}|}|}}}~}}~~|{{{||}|{z{|yzyxy{~
~~{zy{}}x|zr}{{|||~~}}
}~~|~~}|}}~}||~|}}|}}~~}~}}}{|}~||{|}zzyyzy{{~~
~~~z{y}}zzz}q~z{|}}}}zx
~}~~}~}~~~}~}}
}~~}~~}}}|~~~}}}}|}||{|}{{{zzz{{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv~
~~}~~}~~~}~~~|}}|~~~~}|}}||}}||{||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||{|{|~
~~~~~~~~~z{z}}uqz|zqz}}yxtt
~~~~}~}}}~}~~}}}~}~~}}~}}}~}~~}~|{|z|{z
~~~~~~}}~~{{z~~xry}qzx{xytu}
~}}~~~~}}|}}~~~~~~~~~~~
~~~~}{z{z|{z~~}~~~~}~}}z{|
{{sy{|pwuvwyvtz
~}}}~}~~}~|}}~~|{{z|{|~~}~~}}}~}}{{zx|vyz|qtxwvxury
~|}}~}~~}|~~~~}}z{{||}}|~}~}}~~~}}}~}}}}}}z{{|v}yxzzruyyvwwsu
~~}}}~~~~}||~~~~{{|||}}}~}z~}~y~|||~}~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~~
}}}|{||yz{z~y|yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst
|~}~}~~|~~}~~}~}~~~~~
~}||||zyvyyzyvyv~|{{{~|{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~}}}}|}~~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{z{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvqwyrx
~~~~~}~|~{~}~~}}}~~~~~}}}~~|~~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}}{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~}|~}~~}}|~~~~}|~~~|}~}~~~
~}}{{||yw{ywxwwx{{z{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqspxwq{
~~}|~}}~~}~|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{|||zzzzzzxsvupprowvr{
}}~}~~~~}~|~}~~~|}~~z}~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyysuuooqpwst}
~~~|~~}~~}}~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|z|}{}}{yz{zyystunsqpxruz
~}~~}~~}~}{~~{{}{z||{yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}{||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~~|z}|{}~xwvyyy|}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~}~}}}{}z}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{~~
~||||x|yzyz|}|{||}}}||~z{{zzzupxwyvu|uv|
}
{~~}y|zzz}||}z||}}|z{~~~}}||}|vrvxxvtvt}
}
~
{||}zz{}}||z|~}|}}~~~~~|}}~~}|{xvuv
~
}}||{||}}~~~}~|||}}~~~}}~~~}}}~}}~~||
~
}}}||||~}~}}{|}}}}}~~~}|~~~~~}}
~
~}|~}}~||~~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uz~
}y|~{
}}~}}}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqtpurstv{}uvy
hzrss|s}}~~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyy
rpvxqvtturstvinrotvnulwm{snym}rsvsvmmxlpylu}}~}}}}||}}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}}|}|~~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyqjoyxpkyszozwvvp~~~z~}}}~}}~~~~~
xyrz{pp
x
xyks~y{krz|m{yyt}vnoot|uwqy}}m~uo
zrr{|upozls|nw~~}}{}{|}}~}~~}~}~|}~~
}w
}~{|{~{||}~}|~~}~~~~~~~}}}~|{|~||
}{{|~{||}~||~}}~~~}}|}~~~~~~||}~{|||{{~
~|{}~{|{}~}||~}~~|~}}~~}}||~~|}|||}|||~z{{}~
{{~~|||}}|||}}|}|~}|}}|||}}|~}{|}|}|}|||zz||}
{}~}{||~}|}}|}{||||||}{{{}|{~|{|}}|}}}|zz{{||
zz
~|~~||}}|}}|}z{{z{|||{{{~{{}{{{~||||}~}{z|z|}
|
~~~||}}{}}|}zz{y{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yzzy{}}zz{{}|}||z{}||}|~~|{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yzz{|{|{{z{}}|}|~~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|z{{{|}}}|~}||}~|{
~}}{
~{}}}}~~}~}}{|{zyzzyzz|yzz{{{}z{{{|}~}}}}||}}|
~|~~
}}~~~{||}}}|~~}}~{~{{zy{zyzz{yzzz{{|z{||{~~}|}||}~
~~}|}~~~
~}|~~|}|~||~}|}}|||{{zzzzy{zzzzzzz{|y{}{|~}~}}}
~}~~~~}}~~~~~
~~||~}|~}{~|}}}~}|{|}{{zzzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7;<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFL=8765999<>9?<D9;<79<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÔÓÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>9=::;88:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<9<<98:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËÊÊÊËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÕÔÔÔÔÔÔÕÔÔÔÔÔÔÔÓÓÓÓÔÔÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9?CE@<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÐÑÐÐÐÐÐÑÑÑÑÑÑÑÍÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÙÙÚÛÛÛÛÛÛÛÚÛÜÛÛÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÜÜ×ÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILO@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌͲâÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde½æáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVN<::77>C>8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÎnPSSSSSTTTTTSL óëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSQblkkkkkkkkkkkkiUSSSSSSSSSSSSTKCCDCCDCCDDCCCFSSSSSSSSSSSSSKªòëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;@C>6:7>>;=B?9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÎqTXWWWXXXXXXWP¡ñééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWVepoooooooooooomYWWWWWWWWWWWWXPGHHHHHHHHHHHGJWWWWWWWWWWWWWO«ñêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;>@@8:;8<;;<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÎx^a````aaaa``Z¤îççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbbaoxwwwwwwwwwwwwucbbbbbbbbbbbbb\STTTUUUUUUUUTV`bbbbbbbbbbbb[¯ïééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB?;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÇÅÅÅÅÅÅÅÅÅÅÅÅÄËÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÏÎÎÏÎÏÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÍÎÎÎÎÎÎÎÎÎÎÎÎÎÍÌÌÌÌÌÌÌÌÌÌËËËÌÌËËËËËËÌÌËËÌÌÌËÍÍÍÍÍÍÍÍÍÍÍÍÍÍÔØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<8@B<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÏÏÏÏÏÏÏÏÏÏÏÓÏÏÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÑÔÔÓÏÎÒÔÏÎÎÓÓÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖ××××××Ö×××××Ö××××××××ÖÖÖÖÖÖÖ×××××××××××ØØ×ØØØØØÙÙÙÙÙÙÙÙÙØ×ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÑ°ÍÒ¨ ÐÏѤ¡ÐÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÏɺ¸°·£§Ö¯¡©ÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D>A98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÑâÅÀÈÐÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<:6?B@C:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÑ¿¨Ó¾¡´¢°²ÓÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8FA?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏѺ¤¡´¹¯³ªÕÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÑÀ © x¤ÕÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:=?>=<9@<<::9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÒ¦°®¨y©
¤ÕÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÑÉ×ĸ¯¦½¦¯ÖÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:969;::;8@?:<<9<>=;;:?9?:;9=>==;;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÅ §¥§»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;547<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÉÁ¡¡ Á¢«¤Ð«¤ÑÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÕ«©ØÅ·×¼ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFHKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÔÁ¾ÕÒÔÇÃÖÒÕÅÄÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELLA>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÑÔÕÒÒÒÔÕÓÓÓÔÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ>>786977899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9599:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EILAALD??;:889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEGIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDJ;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGIB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?:8776=??@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@BB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEFC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<;DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGGNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668884;?<?<9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiihxsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptyvt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsoupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9<<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹º¹¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676879>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»ºº¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjdmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸········¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®xpljac`YQMQLRFC9MPE>8;727967443588797;9:==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µµ¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥§©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢¢¢ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:99=7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¥¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AA??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;;;=<::<=<7;>CBDC?=ACADA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?C@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤££¡¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::88:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££££££¢¡ ¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¢¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::<;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=::9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥£¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>98;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤£¢ «cimnifm £¤ ¡ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9;;>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<??::97;8887489<;<8;;<=:=>:?A=:=<>>@?=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:;=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<97:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_]]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;9799;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=9F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8437:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VPQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8@B?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
}§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s}~
z}}¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
z||}~x
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPFMHSWRe^gTPL\QHLRCA997958866;79:;:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~}}¨®²¯¯µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWLO_^\NUTbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
£ ¤£¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJCPK_bXZQ\S_MHQIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©¨§¡¥¨¨«©©¯¡¡££ ¡¤¤§¤©«®¬¥£¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdVOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®ªª«¤¡¢¥©§§©¨£¢¤ ¥¨£ ¡¢©§ ¢¢®¬«ª§®¨¥¤©©©©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPORd\dc[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨¦¥§¨¦©¨£§¦¤¥¢¡ ¡¡ ¡¤¤¢ ¢¢ ¡ ¢¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOWO^ddlgbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤¢ ¢¦¡¦¦¦¡ ¡¤¡ ¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvwa_\UYQUV[c^r_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;><@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯«ª¬¨¨«°©¨©¨¡ §©°²¯¬£¢¦¡©¥¤£¢¦ ¥¤¢¥£ ¥¢¢¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[`_Z\V\hdocnihb^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£¢ª©§®·¶´´¶³¯¬«®«¶°©²±®§¦¢££¢¨¥¡£¡¤¢§ £ ¢¥ ¤§ª©¨ª¬¥©¤¥©§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxib[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9:;<>AE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ª²¸¼¼½»º¿´¯±³µ´··¯µ´µ²°¨¤¢ ¤ª¦¦¡¤£¤«¥¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨©«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥ ¡¨¦¦¥£¡¤¢ ¡¥ vxyxc[RYT__alhukpgiibYSL@<:;89797556285677:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶³º±ª®´±°±´´¶¼¼¾¼¼½Æº¸·º½´¯µ±±º¸·²³²ª¦¦¤¤§¨¤®¤««µµ®³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YSah`fsosiscidb[LK>:8898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÃÆÃù½¿ÀÀ½¿Ä½¼º½¾´§ª±À½¸µ¹À³¯¯ªª¨§§¤¯§ª´¼±´µ¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`a^^jbbnwuvnm[bQU\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAB;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±±§¼¼¾ÅÄÆÉÇÅÆ»ÄÀÅÆÀ¹¯½¼À¾¾³«ª³»¾´µ·Âº¯°µª«¦ª£¤§±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklfnuqruqf^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCBDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÅ¿ÃÂÆÅÀ±¾º¿Ã¶¶º©´³´©«³»»±±¯¬¤¬®´§ª©¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tkkndolhqxoyiia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆ¿ÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÄÄø´À·´¼Á¹··¿À»®¥®·¼·£·°¦´µ¬®¥¥£¨¤ ¥ª³²¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸·»¶·´¬¨©©«¦¨£~¡£vyz{vnkhguZfrwsxff]d[RXIF?;78876169744333646;8:<;=<8=><:;<;=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÈÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÉÆÃÃÄÂľ¸¾ÁÃÀľÁÏÏÎÆ«¯¶´µ« §´³®«¸µ³«©£¢©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuueeijh]jomxwbb``^XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÏÏÌÃÇÆÈÈÈÇÉÇÅÉÇÈÇ¿ÅÇÄÄÇÈÊÒÏÒ̼¸¶´¸¸Á¾¾º½º¼º¼¬¦©»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqobagugihtmxl]d[U`YLHC6<9988:53:664413525;:<>;;<=<;<=<;<>=?A?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÅÉÅÍÐÎÇÌÉÂÁÆÁËËÇÆÌÉÍÅÆÆÃÆÅÉÍÐÍÏÌÇÄÀÃÂÉÍÇÅÁÄÇÁ»¾´±°°Á¾¿ÁÆ¿¾¸·Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlidtnsb\bTWTSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<:>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÅÇÈÆÒÉÁÃÿ¿¾ÄËÈÊËȼ»ÈÇÉÍÈÃÈÉÉÆÅÃÂÁÂÇÇÉÊÇÌÈÇÈÍÆËÏÅ·ÀÀÀÀ»»½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrofegcjdajmnn^X\VUNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾÆÁ¹»Ãº¸¹¼¾ÁÆÁƺ¹ÉÉÃÅÄÀÄÁÂÁÄÁþ½ÂÀÀÁÂËÃÆÌËÅÈÑ°¾½¸º»¼¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbabccjbfcZYY\YQNE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿º½À¹½ºº´¿¸µ·³¯»¼·À·½Â¿Á»¿Á¼»Å¾»ÁÄÀ¾¾¸¼ÁÁ˾½ÉÄÀÀÊÀ±Á¿»¸»¾¹µ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qc`bbgjffiei]VUSYOSKE8?6;:779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µºÁ¸¾¸¿¼½·µ·°®¸¶¹¿»À¿·Á¼»Ã¶ºÈ¸¶¹»½¹º¶»ÅÅʽ¹ÅÀ¿¼Á¾¸Æ½ÁÀ¼Å¸¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zxpmeefoiekgXXNKKKRILHC9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿½¼²¯¬±°·¼¶»¼ÀĹ···µº¹º»À½ÃÀºÄ¾Ǹ¹¸·µ¸º´·³»ÅÆËÁ»ÆÀÀ¿½¼¿ÉÃÄžƸµ²²½¸¸¸¾ºº¹¼ºº´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksebm_\THKJDJBCG?9;8=<7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼¼À·ª¤®°·»³½¿»Ä·¶¸¶·¿¿Ä¼ÂÅÅÇÇÊÉÆÏÂÁ¸®µµ¼¾¸»²¾ÄÄÊÅÁÉÿ¿¾½ÇÌÇÇÄǽµµ¶Á½º»¿ÂºÀ¿¼¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qelintnwcga\cQKTHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?=??FD@A?>:7?@CC?A=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼«ª£°¹½¾³¼¾¼Å¸²¸¹½ÇÉÊÃÇÈÆÆÉÈÌÎÑÌÊĵºÀÃÈ¿¿µ¿À¿ÆÆ¿ËÆÿÁ¼ÀÃÌÊÇÅÆÁ¹½¼Ä¿À¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_b^`aNHM?E@?DC;;::;:8;<:9<>9:>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿®³½´¸Á±°±´¼Ã¼ºº¾¼Ä¿·½¿½ÇÌÆÇÉÆÆ¿ÄÄÊÈÌÌÍËÆÂÃËμ¹½º¹ÀÿÈÆÄÁÁ¿ÅÀÊÉÃÃÃùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw{_pc[]_^SI>CEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=?>AAA>>ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸´¼¶º½Á¼»¿¶¿Á¿¼¿ºÀËÂÇÈÀ¿¼¼¿ÅÂÇËÈÁÃÀÀÉÊÂÀ»»°´»½ÀÅÆÅÅ¿À¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}zmsxsgp]Z^\YQEDCMIAD=G::59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯·¶²µ³·¹¼»¶»»½ºÃ»·½·¹À»º¸¸µÅÁÃû¹³´ºÁ½¿ÇÀ¹À¼¾ÅĽ¾¹²°®¸·¿ÃÇÃĽ½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸¸¸½¹»±¶²ÈÀ»¶´±°·¬³©°³·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|vluzpmh\__YSPAEHGK@DCH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÁÀ·½¹¸¹¶µ¿³´²¸±»ÁÀ÷·°µ¸¸¸Âº´»·»¾À»»¼®¯®³²¹ÁÂÄþ¼¿»º¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ¯µ´´½º¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsvvwmp`^e][TJ<>?FF=FCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Ã¿·º·¶¶²´À¶²´¸³ºÀÁù·²²²´²·¾º³µ²¼º¼¶º¾²´´´°¸¾ÃÆÄÀ½¿¹³¯²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtvrl^b`[]NHA?=HCFMD?775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·À½»¼¸¶º¶±Àº·¹¸¹»ÁÁÄû»¶´´°¶º¶´²¬¼¹¸µ¸Áº¸³±¬·¼ÁÇÿ¹ºµ®¥¬³°¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wo{ourmc\fX\]RNMA>JB@JI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³±¶º®¬¼²¸¹·»¿½¹¾À´¿»¼º¸¾Â¼ÂÊǾÀ¸¹¶²´¶³´¯¬»º¸¶¹Àö®®ª²¶¼½¹¶²±¤§§£¦©®¹¬««¥¨¤«®®§¯¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶°ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmuik]ZjT]\OMHDFLAFMF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹ºµ¹»µµ³µ»¼À»¾À´¿¹¹º±ºÃ¼ÂÊÅ¿»¿¿¹´´³±±®°¹¹¶¼¸»¿²²²®±®¹¯ª«¬£¨¡¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬«¯£££¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndT`cW\QNLH?HQDMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¯²²ºº··µµ¼´¯´«¶º¸ÀÄÁ»µ¼½¸²³°¯¬®¶¶²´´¯ª¤¨¨ ¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨ª«¥££¦¢ ¥£¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vybwln\PhTPNGOMLBOQ@>;>39:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¸´§¥¬ª¨µ²±°®¯²§¦¯£¯®µÁºµ·²·¶²´«²´®ª«¯°²³¥ ¢ ¤¥¨¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦©°£¥§ £ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uu}mk{dhUQcMIHGNRNJNG;D@=2?859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡©¡ «ª¦©¤©£¤®¥¬¬´¼·¬²±¯±µ¯¯³µª§¬£ £¢¥¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¤¡¯¨®²«¥ªª ¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}vx|dxz`bRU_HIIKSTIRPL8>B67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ £¨®¬««¯ª¯©¥¥¦¤ ¢¦ ¢®«¬µ²¶¦¯´«©ª´±°°¸§¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«¹¨¦«§««©¬¬§ £±±±´©±¯¢¡¥¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvshle[SZYMQJNNULRLA7>B78=76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=?758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¥¢¡£ £ ¢¯®¬¯±¬¶§±¦¦°®¬°§ ¢ ¡¢¤¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¾°¬±®©ª´±°§«¨²µ·³·¬±´£ ¥«¡¡¢ ¤¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xuiwu]lZR`HQUHFUVJBMG=JH8E<67;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¢¢ ¢©«§¬©ª´«««¥¥«¨ª¬ª¥¦ ¨¥±ª§®£«¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼·½³³µ¡«¢©¨±©ª¨§§ª¦§ §¨¥¤ª¡¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vqmiwmhm\X[BVMJGMGBFM<>L=4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·£°¦ ¤¤¤¢¤£¢ª¯¬§©£ ¡¬®®ª«¦ ¡£¡«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶ººÀĹ½»¬®§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â½¸³»Åü»·³©²ª³´¯³®©®£«§¶±¬¢¯¥ £¯±°¤¤¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¥¦¢¤
{trkkurpgW\QETHDIOH>EA3EH95;=6;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ ¡ ¥¥¦§ «±®§¤¤£ ¥«¥ym ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌËÌÒǾ¿À½ÇÆ·ÃÉÈÂÀž¹´¹ºµº·°µ²ªº±®»¶¾»ºª·¬ªª¸º´»®¸£¥¢§¥¢£©¦§ª§ ¡¡¤£¤§¢}zrkdioxjeZ[FJLDDSLDBD7:?;549978>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ³²¸§¡¡«ª¢¡¢ £¡¯³©¡wsqnp¦®´¹Å»ÍÇË¿ÂÌÎÍÌÇÉÑÌÍÌÇÉÅÆÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÌÓÏÓÓÌÊÂÅÆÆÊÇοÈÐËÆÄÆÄÀ»ÃÀ¾¾¾µ½³¾¿ÂÃÆÄÇþ¸²¸¼ÄÁÁº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLCEPIDB@55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª££¬®¦¥±ªÅÆÌÎÍ¿°Â©¥¨ª¡£©¡ ¤±±«¤ yrroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÏÊÓ×Ñ×ÒÔÕÓÓÈÌÇÍÍÉÒÌÍÓÍÄÇÉÉÀÆËÆÈÈž³³ÇÄËÊÊÎÅÉ¿½¿¼ÁÇÄÌÌÈɿÿ°³¨¢ª£¦©¬¤¥¦
zruugbgvidVWQDMF@IQB=B<:23@<D<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤®°«¨¬±ÉÍÔ×ÏƻǬ´¸¬®£¤£ ¤¬©¦°®¥¡¥¡}wpkebhqoq{
vpnqtp
³Â¾ÅÑÐ×ÖÖÒÖÍÔÖ×ÔÓÑÒÔÔÒÏÑÃÐÓÖ×ÕÖÒËÉÎÐËÆÍÒÉÒÕÖÙÕ×ÓÖØÎÒÉÎÑÌÎÐËÒÏ¿ÇÆÉÃËËËÎÏÅÆǶ¿É¿ÒÌËÏÅÉÇ¿ÃÂÇÎÌÐÐÏÌÊÇ͸·»¨¥«§£ª¥©¨¨|wsvoc`erb]R\IJFAEHI>;@8=4585:76:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦«£°±©¨µÐÔ×ÚÒÇÆË´¶ÂƲ¶©¢¥¦¡¢«µ§±¡¦«¡¡¢wic`____^_`^blusqpolrquÄÇÆÔÕÖ××ÓÖÏÕÔÚÔÔÎÏÕÔÔÑÑÌÑÎÓ×ÖÓÕÐÏÒÓÑÉÓÑÇÐØ×ØÑ×Ò×ÙÕÖÌÎÏÉÌÑËÎпÅÁÇÅÍÌÐÐÑÈËÌÀÊËÅÓÎËÎÈÄÉÆÆÈËÊÓÓÐÕÏÒÌÒÁ¹Å±¥¨µ®§¨¬¥²¨°³¬¬
{zqstmacim_VP_JJBFCQM?<>44:=52755<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡©¯®ªª¬¦®¸¨«·ØÔÕÙÙÑÎÐÀ¼ÌÉ·À¯§«©£¤±¶³£¶ª¡ª©¡¡~recb__a__a`_``_`fmppnkorwwÌÀÒÕÓØØÖÙÑÒÒ×ÏÓÎËÓÍÕÔÑÊÏÌÓÖÒÑÖÍÐÕÕÑÅÑÔÊÐÔÕÖÎÒÐØØØ×ËÈÍÃÈÎÌÊË¿É¿ÇÈÍÍÏÊÐÍÎËÎÎÇÊÏÐÊÎÊÂÈÆÉÌÊËÑÒÌÓÑÐÏÏʽȹ°»¸µª¶°¨¸³¿»±
yvopnkbenpaW\ZIFFDLWE;@<33<=86855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><>>:EBE>¥§ £§¡¦¤§¸¶µµ¥®¾´±ÀÙÒ×ÚÜÖÏÍËÃÓв«®¬¦³±¸«³·©£l^^^adb``aa``a^__^]bmroostvvy¤¾ËÕÑÖÔÓØÖÎÎÓËÍÎÅÎÊÒÒÏÆÎÍÍÔÌÎÓÍÊ×ÕÐÌÑÓËËÏÑÓÉÎÑÕÒÕÕÊÀÉÁÅÌÂÈÉÂÌÂÅÈÉÊÎÊÌÌÏÍÓËÅÇÏÌÇÇÊÄÆÀÅÉËÍÏÐÆÏÎÍÍÌÏÅÇÀ·¹½Âýù²³¾°»Ãĵ©¥¡
xpqkmh``qhXXhVMGLIPPB;D>;67:89:57==A;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÅÃÁ¿»µ²±ÇùËÕÖÙÚÛØÍÌÏÉÖÖÅĸ²¶ª¤®¬¹¹±²À¡|ebbb`]^acb`_``aa`_][]grqqrsqmry¤ÆÓÏËÐÏÔÕÉÄÉÉÆÆ¿ÃÅÎÎÇÅÇÍÊÑÈËÎÍÆÑÒÏÎÌÔÊÇÊÍÎÇÇÏÒËÐÏźľÆɼÂÆÈÎÄÂÇÀÆÍÇÃËÉËÏÇÃÃÏÈÆÁÆÇþÀÇËËËÎÂÊËÈÇËÏÄÅÇ»ÇÂÈÈÂÏÀ½¼¿°ÁÊǺ½ª°²§¥¢¤wntdk`^fqa[W`GHHGIMTG?J=64355=<48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥³±¬ÉÍÊÈľ½ºÍÍÆÐÕÕÙÚÛØÐÊÐÐÒÔÊź¾¾°¨·«¾¹¹³¥~
t`[^^^`^`cdc_]]^_``_[Z\akrrookloo}¸ÑÈÉÊÏËÍĺ¿Ã»»º¹¾ÈÆÂÃÀÃÇÊÉÈÊÇÁÅËÆÈËÍÉÄÂÊÉÁÂËÐÄËÈ¿¹ÁºÅǽ¿ÆÏÊÿúÉÇȺÇÆÄÊÀ½ÁËÆÅýż¼¿ÃÄËÄļ¿ÉÂÅÇÑÅÀÈ¿ÊÉÆÇÆÐÃÃÆïÄËÇÄÊ·¿¼º´©¬¥¥¬£¡¥£ {vrtfiZanmZ[XQDLFBGDLDFS@54334?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ÊÏÑÌÇÂÃÇÍÏÎÍÕÐÖÙØÙÐÍÔÎÏÐËĸÆÁ¶µ¼±À·º{
vxurp_Z[]`abcdded`\\]]_^`[YZ\borokilposƼÉÅÌÀÆÁ°¶º²²´²±Á¼»»¹¸ÀÁÁž½¹½¿¹ÄÊÅƽÆÀ·»ÄÉ¿ÂÉ»·ººÅ¾¼ÁÍÂƾ½µÀ½Ãº¼Æ»Â¹³¼Åö¿µµ¾¿ºËüµºÈº¿½ËÃÁÅÂÅÈÅÈÅÐÆÂÌDzÆÉÃÎÍÁÅ¿½²·°³§¨¨¹±¥°«¬yvwjeh`hocV^YJEJFHKAFBEI@9:648853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÆÂÄÈÎÒËÊÊÇÍÎÏÒÉÑÆÖÕÖØÎÌÐÈÍÈÊžÊÁ²µº·»¶°
y~|tud\\]^``bcbbeeb]][\^\^]Z[]]hsqmggnpry½ÌÀúÀ¸°°§ª¬§¸´¶´³²³ºµ½±·°´®²»Â¼Áļ¿ºµ²º¾À¸Ç¸´»µÀ¼·½ÆÀû´®²¶º¾³Ä·»µ«¸¼½À½°ºµ¯¶º²Å¼¶®»¿´¶´Å¼¾ÃÅ¿ÃÄÅÇËÅÀÆÆ»ÇË¿ÏÉÇÃÆÁ÷þ½¶¹¾Æ¿¬µºµ·¶xtxfgebkn^V^`FKHHJFBCAEE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¥«³±¼¼± «£¯ª§¤ÆËÎÈÆÉÎÌÐÍÎÉËÉÌÊËÆÑÏÓÑÏÈËÆÊÆÄÀ½Ï½³¹½¹¸·{y~wx}th^]]]_`_`da^cec__\[^\]^Z[[]_lpnhfjnnr|¤Ç¿¹¸µ°«¬§¢ª§«¬³©«©³¶°²¨®¦¬²¼º¶Ã¹º¹°«µ¹»´Âº°¿°½¼»µ»Ç¹Â¶ª¨°±Àµ¸¼¯°§±³´»¼«µ¥®¶®º±°ª¹¯»®»¸»¿¿½¹Â¿ÆÂÅÀ¼ÆÁÈ˸ÅÇÅ¿ÇÃúÄÆ»ÅÉÌ˳¹Â¼º²rvvkiablhYWW[ALKMIEAC?FA:9:995854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÆÏÒÌÄÆÁÅÐÈÏÂÄÇÁÆÆÅÅÌÄËÌÂÄÁÈÁº¼»Ê·´¼½¶µ«|y~
z{wn^]]]]_`__dcbccb`_][[ZZ]ZZZZ]dnohfgiknr¹°µ®¦¥§§ ¤ ¥«£§¢«©¬ª°£¦ªµ¶±½¹¯·¯¨®¸´´¼¸³¼®·¹´±»Á±Á®¥©¢¬±²³§¼ª«¨«¬´´¦¨®¡¤®©²¥§¨®¥¨·¬°²·¹º»±¼½¾¾Ä¿µÁÁÇÈ·¿ÀÅ·Ä¿»¿ÄþÄÈÌÊ¿¾ÃÀÀ©rtrji]aodWVXPHZRSKFFE>?@9789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·ºÄ°¶°ª©°±³µ½¯ÆÑÐÍÄÈ»»ÌÃÌÀ¼Ê¹ÀÆÀ¼ÌºÃÇź½Ä¾º·½Æ¹¶¹»®²{~~xt|swf_]\\^_`^_ccab``_^]\ZXY[[YXZ\_fkfegehkor
ª¥¬¦ ¡¥¤¡£ª£¢¥¥§¤¬¤¦¬²¯¶·§°¬§ª´«´¹°¶´¬¶¸±¯º¹±·¤£§±§«¨¹ª¤¦§¨§² §¦¤¦¬§¤ ±¬²´²³°µ¼¶»ÁÁ²º¾ÃÁ²¹ºÂ³À½¿µ¸»½¾¼ÂÇÄÂþ¿Ã wpkae_ko`UY_HNhOTGEJF<=?=:;;825536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:7676788666;::;9:;<859<:>>@;ȵ¶½¸ºÁ»¾µ ¡¦º¶«³³»³ÅÐÉÌÃǹ¸ÉÂÎÁºË¹½È»·È»·ÄƳ¾Å¼·°¹À»±³·°¢}yvtomkjjqi_`]\\]_`_acb````][[[\XYXXXVX[]^dcbegggjmo© ¡¢¡¢¦£¥¡§¢ª°±µ¢©ª©«¬¤µ¸·¯¬²´®²´®°ª£¢²¤¥©¸¡¦¦¨¬« ¥£¯©«§ª«¬°²¸¯¸¹»°¶»»º«²²¹²½´¶±±µ´¿µ½À½ÃÁºº½zrk_e^ddXTX^IW]KPGIJFA<??@;?<04535:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÐÉÉÁǼ¼ÅÅÐÀ¼Ê»»Á»¶Å¸µÁÁ³Âļªµº·¨±³©ysnpnkb^bff]]^]]]\]_`abccba_\[[Z[YXWWWWXXX[^bddeffhikr¨¡¡¡¨¥¦¡¤ ®®² ¥¢«§¡µ°±±¬§®²§¹³¦µ¡¢£¢¢¡©µª¢£¦¥¦£¬¡«¦£¤¦«²³ª´°²ª²¹´¯©¯²²²·³©¬®±·°º¶¹½¿¶²±yue^e^[YVSZUK[QLIEHKIB=?AA@@:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ¸½¿¶¾½¿³¥£¥±Âµ¶½´¸ÃÍÉÈÁƸÂÁÈкÃÆÀ¶¼½¶Ãº¶¿Áµ»¿»ª¦±»±¨²¯}
ypqtqhfdiec\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXXVWadecdeddhjv¢¡¡¡¨£¨ª¦¯°«££·ª ®¨¶©¦¦¬°£·°£¶ ¢ª¦¡¬¸¯¢¡¤¡ ¡©©£¡£ªª°¨´«ª¦²°¥ª®²±¯°®®§§§²®±´¯¼´¹¶®£yud^aVYWSRTKM^LPKGGLKE<@><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾¸¼®§§£ª»À½À¹®´¸ÂÍÈÇÄžǺÊ͵ÄÅű¿À¹ÀÁºÀÀ¹º½·¨¨±»¦©¢¥~xrjlrtpihedgb\\ZYZ\\\]^]\[\^\[\Y[\ZXVWWVWXWWWU[ccbbcbcdfj ¦¥¤¥¦¤ª¯¦¢£¶¨ ¡¢¨³¡¥§¤¯¥°¬«´ ©¡¡¬±°¢¢¡¦¦¡¢£¥¤«¤¥°§¥£««¥¨®¯®«¨ªª³¥¦«¯´±®¼µ±¯¯ zvrda\Z]XNLQGRaMVPOJMOEBD?9=69:764599;9887;89=>;>;<69:7;6;7;;:85:;:;;6<;8846863321./2556;:8;7876<;:;;A8x»»±µ½°»²·¬¤§·»¼Áź±¹µÅÊËÁÄÇÇɸÈƵÅÂɯº¼Â¼ÃÀÁ½¼·º¶¦§²¶¢wodbgihfhjgjm`]\[ZZYZ\]\[\^_\ZY[YYZ[WUXWTTWUSTRU``_`a_`acdi£ ¥¡¥££¢£¡ªª¥¥±© ¤ª§¡¬¬©¨¬¢¡¡£«©°¢¡¢¤ ¡ ¡£¥£«¥¢¤ª£«®¤±©¦¥¦¦´¦©¨³µ´¹º¯ª¬rpo`[WVUQFQOHZ\ORITKSLEGIC8;;=<8667:9;:976977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:8698598989;9@9{µ´´»²°¬²§§¯¹¹³ÀȺµÀ¯ÆÉλÂËÍÉ·Ë¿´ÀÇÌ°¶½È»ÂÇĽ¿·ºµ¥«°®|uijjmhjlnkkme]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\]^^^__bdm¢ §¨ª§ª¥¨¤£¤®¤¥¯© ®ª³¥¦¢£ ¨© ¡ ¡ £¢ ¢ ¢¨£¢¨« «¯¤·¥££¢¬©¨«¯³¸²½µ³«¯rrh[XYSUREYLP\YMTNPLPRINIB<??A?<65799<<987:79:;<=>;7;;:=67:;8976989:6:=99577571141-+/434988::8::748=8?9~³¨³¶®©¨¯©¨¬·¶¬¼Ê»¶¿¬ÌÇƹÂÏÐɵƾº¾Æ˵±½Å½ÃÆĽÁ³¹¯¦«¯«wxoninnnqggigd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUTSNPQYZZZ]\\^_`d~¢ ª©¦ª¦¯¢§¬ ¤¨§®§ª¥ §ª¤ £ ¢¥¥§¨¨ ±°¦±¼§£¬´«§°´°¸µÀ±±«}prbVTUNRIGVQSRLLXMJLNRGMKACFDC>@75889;9:7::7<=:;@>:9;9:?759:9876958779;85576661320-*.102877;99;8948;8@8³¬¦±·ª¦¢°«ª§©²±¤¶Æ´¹º³Ëƺ¼ÃËÑ̳¹º¾ÀÄǶ´·½³»¼Ä¾Â±´®±®±¬¢khnoroqkpkdfge^ZYZYZZZ[ZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXZYYY\\]ajzv¨ª¤¤ª§ ¥¢£¢¡£§¡¡¢¥¤¦¨¦¡ ´²§²·¡¢·¬ª¤²²¦µ¼µ««±£xrm]NPQLOCNNNPKFNNKJNMQHMJAGKHHC=858889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12776:999984988A7w¶§¤¶°¤§¤©¥ ©¥¤³ª¢²Ãµµ²³ÇǸ»ÄÊÍǵ¯¼¿¸¼Ä³³®¶¢µÄº»¯ª¬´¯¯ ¨}^`gsqvqjnifhhj_XYXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQNMKLSWWVXXYX[]aosvp ¢ £¤¡s}
z¢~~sz¢£ ¡¤£¢´¯¬¯¬¥¹¦¥°¡°®°»ª©¯ªvrbVLQOPMCSNLQMCPPHINSMHJJDJLEKK<749888;;69;7:<9::;79?9>@79:<89764445874312485/0102)(,-12764789::65:87A7w·¡£´¨¥¥¨£¦¥¦¦¦³§¥´À¸°´°ÊƹºÂÏÇ¿µ¯½Ã¯±Ç²§¬¤®¿¸±°§«¢rWV_hgihincjhgb\XXXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTRMMJHNSSSTUUWY[]ilrm
|tNXr_;Wo{
ryz
}xqo
}¡ §¯¨©¨´¢¦¬«§³¡©£}qm_ZNSQVLDTJPMLFOOIELQMKOJIMPFIH=7599999:7:;:>>8:==6:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9x· £®¡¦¦ª §©§¢©°¨§´Á¹±µ°Éù´¿ÏÀº±±¸Ä«®É®§£¢º§¨¦¥¤¡iQMRVZZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`moiztPB@}y`JQnx|n~wuvxpQ{~xvgw
~¤£§©¥£±«¡¤¤¦ª¡©¢¦¨tke][HQQSLIUMSILLPIGFKNLMTKQQOFIC<769:8:;;8:;8>?99>=7;<6;;478;6775344696/3/.115221/,')+*,4833979:99::::?9v¶¢§¡®¡§¨¥§¨¯¬ª¶¼¶¸¶³Â¼·¨ºÉ¹·©ª·¸¶Àª¢²¢ eMLNNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZntw~ji]Ut{
{uxsnupty}ª
yzhv{prmxxz{vrrwguz{¨ ©¥§¤ ¤qg`\\JVOQGKXROJLMRJJJMPHLQLRTMEHA<78;99>=:;<98@?::>=7==79937795675252572/2.,./200/-+(().1262198798775:<<7v®£¡³©¯©¥¬¬°±ª½´²¼¸¶ºµ² ·»³««¬µ³¥¤fJIJIGFHHPTTTWWSTUUUVWWWXXXXXYXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQRSV^u}ygw}gyvx|r|v{ok~|s{}tfv|
lohs|lyq}pmuqhq}pC
~wwz
}zu~£¢¤umkeaYWXTQJRUTOPNQVKNKNOJQOINOKFD<;79;::?=9<:99??;8<=7<9999266856633621224.,,-..-0-+*''*.1362/876966527995y¦ ¦¯¬®«§©°¯±¬¼¸¬»¾¹³¨±¨§¬§¤~|z
eJGHFB@CDILLMQRPQSUTTUVWWWXWYYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNPQTX^eprm§ªÀ~uyb{xo|yy|
omxsxjjr}Inhw~licly
ksl|nr{hmp~s
z}~{vots
ywp|}lhmnmWUWTQQYOSUTTXUMNHMJMNKCINGE?:89;99:><9<;::=>:8:;9?868727575541442/024*+**-.+-*(*(',-1250,5567485HA895w¤¯¢ª¨µ¯®¬´¿«¼Â¿¦£¥
¢¤v~
|x~t}xuw|fOEGD@<>>AFGGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jrAo;<95<_IMOORWZRY\`§bitze~pmzutlts{jkLyg1vsl~}tfet~
filukp|gpp{n{s}|qpnum~wytiyyuiingcWQYWXY[MPUVZYNIIEJJHGBAFDCG=998;9:9<:9;:::@<9:<98>787715244533645031.**+),,++)(+'),,226-+5775478iO8;5n¤¨²¦º®«²°Â²»ÃÇz
twvwuxvoxsiUFID?<;9:?@ADDEGJLOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOPQVLAIQIb¯³ q|xm}mq
yyr txsu5q¨¡¡¢vp|{shfbimqmouioXuovlz|mqmpzsumbv
ux~}xpnnj^Z[][YX`_SN[ZYXLHJFJG?CABG?CD=;97=;:;;9:99;:?<88=:8;66651121353475531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥´¨±®Á³ºÁÆ}nv
oy{{q{t|ko^JPG>@7458;;<=>@BEILLLMNPQRUUVWXYXVUTSPLE<5*K[@-gI94/?©®_GLMNPL7CMRSDJv||v~lv|}
~v¢y~
aªzv~s{\dqtz{wlgiayo
znwszpsywkni]w}|}q|uw{}tmqrde^ZZ]S[f^XQUY\VGKKELG?F@DC?AA=:97<;;=<::99;;=>79>9986754244004645654-,)+('''&(())((+++/00Uq<23331E~W4=9\w¦ ª°©¯À±»Æºzvk~
yu¢~~s}lylSXLAE311266688:<?BEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJi{y{q|{|~v¡¥¬©H¯¯¨sl|}hggx~m
qGkwqyvhmk_w}
z{uv|wmow~}qqpjZ[[ZcbWge\UPQXZQDLLGOICFCCA@CA=978:::;;:888::?>6;>7585773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|~
¬¡¦¸¯³½´}tp~}¥yu
y_cVLC60./22123668:=??BEGHJLNQSTUTTVUSQOGC?80,#[>?84.]ps£UFIKMNPW`YpZ\^j
~
¡¥»±§»Çç¡¥{r~v
ihotqw{v
}nvug¡«£{zzogkx}w|qic\YY\h\af_ZOLNXSQIPKDNGCJDCADDA<:87=<:<:88778:==8<=68656623445576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nvpgx{¤¡¬¦«¯°¡xw}~mpj^CA4--////02234779;=?BDHJOQRSRSSTRPOHDB<87/9C><<63.lMPHIKKKNV`cggmu ¡£©¥£¬¨¶¢§Á®ȯxº|¡¡
lpuvql
r¡¥¶©¢~kjl}~}q_[b^Yfj\lk_XKHPSQNMLFIQDDNFBCEGB>:97=<:;:987767;:6=:785456345566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<ungYppuqv~§ ªhf¤~
z}
xxhNR>//.,/.-/000212457;?CFNPRTPQQSQNPIED>;<:CF?><752<?R5HHHLLMNR^o|s} §¦¢¡¢¨©«¨¬©ªµ«¿«¶ÈÉ·ÈÑϾ pi«©
§¡wz~¡{v«³ }¤£§¶°¨lss{|ynf^[_^agc_gg\REKKQOIJMFFMCHLFFCBGDA:85<<899975658>75=84745754546958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f3A@ib^Pqu`n}aw}|ªªBD}y|
w_bP460-1/,.00./..0015>AAMQRSPRSUSNSLEE@<>=FH@A@8662<9;FHGIIMOQYmw£§ªµ½¸¥®¬¬¨©µ¬±·²²»±³¾³Ä¬»É˸ÿ·¥£°²¬ª£
¥¦ ¢¦¢ª§¤
£ ª¡¤©±£§·»¡£°££¤¢«°®³µ¢¦ªz{~{e^fZc`]bb^fg_[ODIHTOFHLFKGFFHAKFCFFA;87=<88:974658<54<76:44644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicWjpXz
v
ÚÈsV|{
qna@E64<3/110-,+-1/-4?DANVQRSUUWUM\QGGD<>>FHCD@8;<5C;=FKIGHROPW ®£³ª²ÁÇÄ«³Å¶´À³¸¾¶¿´Á¶»»¤¸Æ©¶ÉǶ¾¹´¨£´°±§¯ª¤w¤¡«±³©¨®µ»²º¬¯µ¢±¬²µ¼¸µ®µ ¨¨£¨©°³º¸¸¨¸©¥ yrW_bUd``a^_f`[UJDELVQIJJEJHEA@@KDBMF<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AEWQJL\ZQcdWzuq}v~{¿»£¼´z
zyn]W@EN<6:46AB764//6CHCQ\OQUXU\WO_UIKJA@>GKFFD;>@7D7?BJJEGWTP^¤¤²´Ã¶¸ÁÌʶ»Ä½³´Á·¸Âµ¿°¸t±´¦ºÅ¤°Æ¹±³²´¨¤¶¶ª± ¢¢¥±¥¬§¤ ¬³º¢¨²¹µ»¾Ì¿ÅŽ½³Â·º¸¿¸º¸º±¦±ª®¾°½¼Â컨®«~yhUa_VhchdV[cYVTJGGLRGDIJAID>?BBL@@MD99669:?6:9966246/19599364627;=?6:1./58:9650*(,---,,*((++(ES/*00Jk52Pm6?FRLALRWTYVZwjp
o{rxb¹¡£{z||}xzueO\dGEL:Qd`[^SF?;HPDZcQQYYZgZS`aMSOEA?IJHEFA@C<D6B?HGKMSZT^¯¸µ»¹ÉÀ»½Êͼ¼Á¼¸¶¼»·¾µº³Æau²¥±«¾ª¥¨«ª¤¢²µ «§®¥§§¥£¢§°³¨±²¼¶Á½ÓÉÉÓÆÂÅÌÂÊÃÁ¾¾¿¼¼¸´°¹··ÃºÆ¾ÄÉ°º«¢¬¥©·|n\^^\U_]gfSYaVRVIEFNKA>HD=KB=B@=F>;H@796379>489:57045/26389374526?8@>GKRTTRPOQRQJA9/,,,*+((,-+/P>(.48}<2Kq9>CKE@JMPRLQ]hmlqslrrtÕÀµ }~y{{yt}zkepvY]\Peeb`ed][XX\MdmURmn_o_XgeUYTJDBKKHFHHHHBI9D@HKTTV]Z\¹À¹¾¸ÆÁ»¹ÊË»¶º¶¸¹´¸µµ®¶·du©p^¢¡¢¤«¥¨¦£¬¤ª°¬·°¼¸ÔÐÎÖÏÉÌÒÌÏÎÊÇÀÀÂʽÁ½ÂÀÅÄÆÊÀÉÏ´¤¼±µ°¬¹½}vi[\YW[_XabQ\aTRLCBFGE<@F>BIB@D=:E>=J?47535;=468977022/24169775555D3ELM>510006:477@IOJ;.&**(-./,@M+/54mI0Ht?>BD@CDGKODR\Zi`onlotu³¬¡¡
|s{
{tt{ylmu|iseilhfjih`fiimZmt¤½g[oh]ZYTHKOPJKPLSQHLAJFKP__bgjb·Ç°º´»¾¶±ÅǶ°¹±±»³±¨«¸¶¨§N §¥¡¦¬¯¨¯§³³ÔÔÔÖÑËÏÓÔÎÓÏÌÅÂÊпÊÉËÉÒÈÍÎÃÐÒ¸°Ä½Äº¦·»Ä¢kaZZ[V^VYcYP]XORCBIECI;AD>BH?@B8;D>@I=56655;:687654/10146278875367C5B8?-0,1348=97,.,1;FL=),(.0007K?-46TW0DwC;B>EBACJM?UYSfWshroyy¡ª¦}
|p{r~qyulpxr{nxslipmcinpyiw}~Ë¿Ãߧncxnd[a`JPRUNY^P]]MQNTQUT\nnwr®¸¬µ¨°¶«½Á²«µ¦¥¹§¬¯¡¬´¤±®§«¬¤§¢¬¬ÎÒÕÑÍËÒÓÓÐÔÑÎÈÃÔÑÈÎÒÓÓ×ÍÒÑÅÒÖÆÁÏÈÈ鿸ÐvkbZ_[T^Q\YOPTPNI>AGBCF=AB?FE>@?:==<<JA45465<888664412/03526768533;=<E=@11+/349?5901022-2EO3)/3.32=N248C}_2AtD:==I>@CFH<VRMO[uwlwp}~ ¡
y
{r~z
v
owsls}|w|sxqkrriprzyr{¾Ë²vr
wiai]CZZ[WfdXekTX]]`c^cx{ª¤¤¢ ¡©¦ª±¹«¦´£¢®¢¤®¢§±¦k¢~¬
§°¢ ¥¤¨ÈÍÏÇÂËÑÓÑÔÒÎÓÍÆÖÓÍÔØÖÖØÕ×ÕÊÔÚÍÊØÖÑËÄÃËol_\\VRWRZOJGIJJ@;:;EBD=CD>HC?CB;<9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/-.;R017/532ED28>nb5=tM99@I<AD?A;PLFKYpu~isyr
x~xs|}w{oxqmuvx}t|ylvtn}v
uy{µ<AÆ¥~}jeWICecfchjdoy[_fhknin £¤¦²¤¥² ¢¥¢©¡¢±~
zª£}ª³§¦½ÃŸ¶ÅÍÑÐÒÐËÒËÉÔÎÑÕÚ××ØÔÙØÍØÛÎÉÚÚÒÖ¿ÌÍ´uskaZWPSPXUEGJIFE=:7:@BC:HE@EDBDA;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?2*(.BT29254/7K75<`bA<svV87AH:?B><9QECJTlnopbqqt}~
}x
zyq{{
uzzp}ppzr{rnzuw}}u|°tYªÂ·pnc=^hrpqpnwweiorvxrz « ¡¬¢ ¦¬
}
~ly{ª¦®µ¼¨½ÇËÈÉËËÏÉÄÒÊÔ×Ø×Ø×ÔÛ×ÓÙÛÖÏÛÚÒÖÉÕÌuwedXWNQR[GCFIH>B>=8:>@<>H=@BAAEA>?:87DB755479.566435532323647553458EBDCEB56<FNSM[nfcnsk`V>,4LG865433BF4=W_hLux^8;?F<<A<:9D?CGRk_mdbflvqy~
|}wyn{{tz¡vvtu~too
u|
zv|¸Æ¥ÃʸxpeNeczw
¡yzw{|vm¦ £«
z|¡»¡¨¦¥§µ¿¿¿¸ÆÉÍÎÅÍÉÑÕÕÔÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÛÆvvdfa]RUTTMKDMC;=<<9:<?9=A7>?@=?>=9867CA6455=80665547745613854564557HH=DJE7925;H>;9:7HP\ZRUXK9T>;95327I8=NYMHxxd5=>C=<@:6:>>@EQ_Yfa]\itzylwvz|~~
{~
z
|u~um|}~t|~x~yot}
|~{©Ã ½¤}
}ss¦
{iGq¡¤
¡¦
¤·¡¦ £®¶¹´«ÀÆÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Û¶vutgfbT]YRNNHCLC==>99;:99<=6@>?==9::;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<9DWO<MTHN?96333>C;[X>5YypZ<<A<=>8589?<DRSRX_VXfmmmiqsy{{||{}|~uzszsm~
~w¡n©
{ |~£¢¤¯
Wr«[¢£¢
¤²¡ §²¸¬¥½ÂÇÍÈÆÏËÏÌÎ×ÏÑÔ®ÖÕØÚØÚÚ×ÖÙÚlyqccZZUQUVC@IC??>:48:;7:;:3<<?=>7;9:1:G=:27=@50677255?65;55858:57735HR7GOK994=EJB>1FCLA98:GX@5HWI66223:ECeX?&_yi_z>>9<;98:;@;BQKKSYPTcbxlb~onxxz{}||w
sp
{uwvt
}¦¢¦¢¨r²¨
£ ¢©° o·ÄȲ¢¦±d¤ÍÇ
«¤£
¥¨¡¢²´¥£¼Á¾ÇÆÅÈÈÉÂÊÓÌÍÔ¨ÒÑÖÖÖØÚÔÓÚÎo{d`[[[MHSYBAGD;B>837;<:9>64::<:72?:929I:>67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF>;88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHRWSRBcGv}|m~xz~{wv|mn{}xx|~¢³§£«³¢§¥¤®¢¸³¡¡¥°£¤§¨¬¯¤¡À£É¸«£¦²
¨£
u²¤¡} ±®¢£·¾´ÅÇĽÃÃÀÆÍÊÉÓ¦ÎÌÓÒÑÖØÓÐغovrY^S]TNGIMDACD5>:77:?<<7=42669774>5;5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=88567=:JFDGMZ\YJf`;Hzzn
z|x~px|~}osz~|x¦»¬¨±½°¥³³¨£¢°¬µ£¸¥¥©¸§¤£©ª¤®°ª »»®Ê¡j¶¸«°£¬¾£^ª²|}´«¡¡ ¥®¨¡¤³¸¬ÂÈĵº½¼ÅÇÇÂÑ ÆÉÍÍÅ×ÖÑËÓmweYWP[ONEC><BAB8@885?G=<5<35345454B49:BM:B;AHB;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPdHb`bpJ@~s}un}|}pww|©ÂÀ¯½Æ»³´À½´«³¶¨²®®½«»¥§¹¸«¦¦¢¢¤£©¯²±ª¤¢¦¥¤º¯©À¼®²¹¥¤¨~½°z¨±¬ ¤¬ ¡§¦¤¢£°²¦ÁÆï°º·ÅÄÿͦÇÄÇĽÖÐÍÄÊ
po^YW\XLJAK@EG>A@C;:5>A==5=6>333242A17@BN>G@CNCA=C=;86CC5BIB:878;5B>79VKDWOF8=4K@C>4EKHN>AA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUN79GD?CF\eF`igZ]\{uo~{q~{z§³ÆÉ¿ÁÌÂùǽ»¯«¹»³·º²À®¥À¤«¯¼½ª®«££§«®µ°ª «¡¯µ§£ºº¶Á¼¬©³¥¤¨
ªÃäy¡¦ ¯« ² ¤ ¥£¦¦¤¯¥ÀÄ¶Éþ¶Ï²Ä¿Ä¼³ÑÊÈ´quiYUYgQLHBLKKJAB=CD<5AE;;3=8B332262A05IEN>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBeZMe\fTbkyr{xz¡¨º½ÇÈÉÁÒÉËÂ̽³¼¾¨ºÀ½»Ä·¬Á©¬³¼¾ª°ª¤¥¤¬®³¶µ¡¯¥¢£³½ª¨½Á¤¶¸¯¬²¬¬¬©¦¥¥uy
££ª¥|£¢µ¥¤£¡¥¦¤£©§¢²¬¨»À拾·Ì¿¹¯Ä³»¾Á¸¬ÂÃÂÀjv^UTYXJJLIFDDHCCADL:4DI:;4<8E.12242B26SHO<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQG7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>iH_XbZccV x
~¡®§¤Â½ÇÃÇÅÓÎÎÍ˼·°º¼´½Ë»Ã¶·¼³¿º½®¯¨ ©¨¶®©²·£§¡«·¸ª¥°¿Ä²½¹´¨«¶´®®¥¬¨²Å§||ª¤¡£¢Z¤e¢³¥¡««©¦¦¡£¨¥¶«©¹»Ã´¥´µËÀ¸ª¶«²»¸®¨¸º½¸hkWTRSMEIRLK?AHEEHGG95FM;>7=@J.32025C55OVN<LFKRLOHGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C=4FE:BABG9/:A3603>GD94=tdMG;E+:f|gV;>@BFBpEjIReaLF¥¢©¦¢¯¾¯¡Æ¼ÄÄÆÆÎÏÎÒʾ»¶±º»»¾ÏµÃ½¸¹·³±µ³¸³«§«¬¹ª©§¯°£¯¥§£¥µÀ°¬¬´¿ÃºÀº´§º¶¹´¯¥®®¤¡tÂ}±¥£ © `J¥T¯¯¤®ª¤ ¥§¢´¨ª³»»»ª±²ÇÀ¹¦¬«²²£¡²²´¤mjbYWMOJDOOPR;HKIGICC>:KU?A:=EM07544:B44MWO;JKOUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@BAF3>58JKCA=C;4EA:A?>H@5*B52,>c]g:35tde@R7}hW;:BC@=QEWSsbWFHª ¢¨¯¨
¡£¤µÉµ©Å¹ÂÃÈÊÈÈÌÍÆ¿»³®¹¹ÁÁ̵ǺÁ¹µº°¯¯³µ§¤ª´´ª©¦¬¤®¥¤¨¬»¿¨¬¶·¿Á¿¾¹³²Ä²¹¾£¯µ¬¹¦¦v¿®¡ ¡¨¨ª¡§nv¢¢®²£ª¨ª©£¢¤§¢±¦©«¹¶½²²®¾¹¶ £§¨¥¦©©`b^]NJKFGMJVL=MENKLBCD<QV=AABDO18=76?B75UXO?HNQYSPQUKQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=.-R`MUH~e^HE«¢»¯««¡£££¶Æ¾´À¹ÂÂÇÉÅÂÍÈÁ¾¹²¯¹´ÀÂɵƲ¼µºª¨°££ª´»¦©¦«ª©¯§£ª«½»¨½µ¸¾Ç¼·¶¸Â²¾Áµªµ¶«¾¥£¢ ¼ ·©¥¢¡¨¤³ ¦¨ª¤¡¢ ´¯¥¤¯«ªª£¢¨©¤¡¡³´º´¨µ²³£¥ª¡u]Z][HGEFLPIMEGGBSLJBEGAWSCH=AGQ1;B7:BF79\YKALPTUSMWRNUJE@JJNO9C@5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-19f\FCCpbGE§£Ã¥©ª§¦¬¢«¶Ãü¾¶ÁÂÀÇÄ¿ÍÆ»½¹²°¹³¿Âǵ¿°¼·¹¶¦¤«« ¡ªªÄ¢¤©«¦¬¯«¢©©¾¸§¿²¸·Ç¶µ¹¸À²À·µ³´¯½££®¢£¥££ ½¥©©«¡¥½¡£¢©«¡¤ µ¬¦°¦¯¥¨ ¥¤«±µ±ª¥ª®¬ ¨e_W_[MHGINLHEDIA>QIA<GII\ROK=HOU4BF9>HG5Ca[KBNRUWVQXTRUI@8RQPM:GA4CHQSIC;C>GVKC@O>K<06;GF>;FA56?9:?9;15D0-,/Mv\4KZ5,MnW<-=)#zbQ5CKQ9mRF<KxeaVK¢£Å¬¡¬® £¤ ¦©¬¶±¢ª³¶ÅĽ¿µÀ»È¾Êǵ¸µ´±³´·ÁŶ¾±¸µ¹´§¬ª¬¥¤Á¥© ¤©¯¡¦¨½µ¦±½¹·¶Ä²´¸º¿´ÄÁ¸¹®³µµ£¥¡® ¢©¨¬£Â¬©¬®¦ ½¡¤««¬¦¡W¥¡ ¸ª§´¢±®¡£¥²ª©¢¢¥¥¤_bXb_KGJJNFEAGK?=JB99JKN]QQI=LV\9FI=DMI8Hb\LCLPSYYVWOZ^IA=WQIK?H?5HMXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6SZkWrGE6=ue\KM¡Ä¨¥¡´¢³§«¥ £¬©¬»°¨¬¶±ÇÅÁ²ÃýÆļÄɼ¯°¶°´¯¾Ä´¹±°º´¬¨±©ª¥¡§Á¬±ª£®°©¥©¼¶§·»¾¯·Ä³³ÃÀ´Ç´»·¬³¶ª¢¦¤¬¢ §ª°¯¯»±¦ ©¨¢£¸ ¡£°¯¬¥¦¡¢§´§¦²¢¬ ¦«¯¤¦¢
_cYfdIHLISAC@IH;;F?99ONV^RSJ>O^]=HPBLLI9Mc\LELRTY[SUO\bHA?ZQAHAKB7FELKM?;BHDNB=;N@A3/97CB97F;+6<46<25-/4@1+'VtSeO?104b[M23>0<v]^?[T^eq@8;HweA4£ 餪³¢¤µª³¬§¡¤²¬®©»²±µ´ÆÀÄ´ÀľÉĵ¿ÈÁ´«µ¨¯¸¬¿Ã³·®¶¸¥ª²««¦»´¨°¬ ´²¨«¹²¨º´¹³¸Àª·²Ä½µÆ¨¿¯¶µ©§¬¡¦¥¢¢¥®¸®²µ¶ ©¤¤ ·¢¥¥¯±²§«¦¢¨ ¡¯²¢¦¤«¢
¨©ª¡§¡
wbg[jiLOMNT=BANC::I?77RO]^RVQAW`\BJSHVKH:Td\NFON[W[RPQX]GAB[PBG>NC9HGHOP??CIBLB<2IA94177B>;7E7+6914801-/.<6-#Bqgsk23/1[bZ33806p[bH05IohUCWFyfC;££¡¦¿§§¯±¢©µ«º±¬£«´¶±°¹·°·¸¸Ä½Ãǽ½ÄÂÆÀ¸ÀÆÀ¹©¶¤¬»ÀÁ··ª²º¢±²¤§ª¹ª¦°« ¯´³«©¶¶¼´³¹·¬¸±Ã»¿¿¦Ã«°¶®¨««§«¡¢¡¡±¯³¬°¹©§ ¶©¦£¢°±´¬³§¬ ¥¢£³¯¤¨¡©¨¦£
}igk`lmWPQ[UABET@;;IA7:XPd^PWWEY_^MLRN^KJ>Yc^NHPO\UYPKTWZI?DXPDF?N@=IGGQPB=DFBM?:1D?77547?=95E4+75/251--.,1=*'+=\p=>1.0dZd@1647gY`F(?8l}g[V;{cC=§¢©½¢ª°¬¤²¹ª¦¶´¬ µ½¯³¸»º¾·¶À¿ÉĹÄÂÀ¿·Ã½À·®µ§«·±»½¾´©®±¶«®§®¦¨§»¤¬³«¢±°³¬©¶´µ¾®±²µ¬°´³ÁºÅ·¬½°±·«¬ª£²¦¥ª ¤³ª³««³§¡¦¤´®¨¡®®±¨´²ª¤¨¤¢¨µ©ª¦¥£
{dkqfoq^FYgVDBMXDZ9HB6>]Qh\NZ]G[^]OMRXdJJB\b_PLMNXWXPJVVWL=EUJEDAM@AFHHQPA;FDFK=87B=68719><65D0+80/05/*,/-*=,,%2+*5K1/'__`U150=`V^8)C3YU\gK6zfL@¤¡¥·¥¬ª¦¯®·ª¯µ»§¦±·Å·±¶½ÁõµºÄ¾ÌƹÃÀ¹¾¹Ã¸À¸²´«©º¶º¹¾´©°µ§¬©¬«««¾«²£« ±®³®µ²¹¸ª®®±¨µ¯µ»¼Ê³ª·µ±´¯®¦¡´ ¨ ¦²£ ¦¯¡¤£¥§³ª¡¦³ªµ¥¯²µ¯¤¬§«·£ ª¤¢¢ z
{jmwluzaFakYIGZZ={JFD6AbTi[M\aK\]ZRRRb`LKE_``QLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76)(9.$:K5."T_T_/5(C_Q\.+B/JGP[G3cYTKD¡±©²ª¬¦¤¯®¶©·µº¤¬´·É»´»º¿¿´³·ÃÀÌȼü¶½¾¿·¾¼±¼§º¹·µÂ¶ª±·¦®«¨£°©¯»¤±³§¨£²µ±±°µ±¸´©¯¬²§·¯·´ÄÆ·©¶¶¬°©§£¶ §²¡¤±§ ª©£¦¦¥¸¨£²µ¬¨±§®±µ¬¥ ¬¨©¸¢¤ §¤ v{lovt{~\Lfm\JNc\>b{GI8GgWf\L^bMXYWUWTi]OOH`]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANGf27'GbLV%-B.=ELQ<3rkICC¥¯¥®¯«¨¥±³´«·²¸¡«µ¹É¹Á»Â¸³±µÂÂÎÅÀÁ½´½¿¾º¾¼²Ã§©¹°µµ¿¼®¬²± §±¦¦¯¥²µª±±¬©¨µ»¬´²µ´ª¬¨¬©¸²°ÈÀ¹¥º°©¬¬¥¨®±¦¥£¯¤©¯£££££ ¢«¦¦¹¥¬¶¶¥«¬©°¶®¢£©ª £³¡ §v}
|{|
prq}|}\Sdo^NXf\FD[G;NmXb[L`bNVWVWTXg]QRLcY[TKGOTSNGIVS\N;P^IBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/+1()+,-*&5*/&0)38:1&*3Bc:6*HeHJ+:H>3BHS,>k;GHª«¢ª±¤©¥³µ²µ¶²²¡«®½ÌºÀºÇ±´´ÁÃÑÅƾÀ²¾À»¾·»Ä¦¬¶«²·»À¯«±¬£§©¨¤°£ª²ª°«°¯°®«³½§¶°²©³ª«¥¥£ºª²Ãº¶»©©§¬©§±¥ª¥£®ª¨¢£¥¬¢§©¢¦¤«¸³²¢ª¢ ¬¯±¬ §§©£ ¦
¤~
|v~
rqpuk_Z`nbQrp\K;|F?XuX`ZNd[NVVUWQ\a^SONgXWVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*25>10485(5/*,.30;),,'%234$,2-860)(1;\J0.JgDF8;B05EKX1@Y=LE¨¢«³ªª°·¸¶¯«¦««½É¼°½¶Â¯±«³ÃÃÎÏþ¿´ÀÁù¿³Çꮶ²¸¾¾²ª¤§ª°¨§¨±¥´®ª±®®²±´¬´¼¤·³¬¬¯¨«£°·«ªº·¥·¶¤ª§«ªª¡©§§²²¤§¥¡¡¬ª¡ ¦¥¢«¤¢§±¸®®¤¦£ª«®©¢¥¤¤¢£}zs|ru¤xk_`nfWdcN?gLEbyWbXReTMVUVTO\]aUKNhVUVIJHIOBGISQYoAMX@:JGFEG>>EQH8CKE87C72:::*39?./463)4+*,+.#4.-+&(+79*&6+<-2,&06VZ.0JgAA<<B+:JO^4D=GFD°¦£«±«ª¶¬¶²¬¦¬ª©¼ÀÀ·¸²»µ¥²¯ÃÉËÑ¿À»¹¿¾Á¸Á¹ÀĬ±´±³º¿½²°®¬ª«¨¶©¦®¯ª¹°¨²²¯²·ª¸¸¦³¶«¬¥©ª£³³©¨¤´´ ·® ª¨ª¨«§ «¬©º¶ªª©©¢ª ª¡ ¥¢¦£ª§´¯©§«££¥§§ª¢¤£ ~
¢txt~xv}orgfpw\`rjO^VHmyTdVQcOMVTUPOX[bUHOiTVSGOXUI>IHOQPxLMV=<KD?@A<@CUC9AK=5;E13;:7*4:=+-341*8**+*,))(/*&)%3;,$2)2021%/2Qb02?f=NX>C,>LT_/Ji5OD<±¢¦«¯¬¥°´µ°¬¦°ª¨º¾»À°¹®¡¶¯ÈÇÈÑÀ¾½»»Á½ºÂ¿¾¿±±±µ¼»Â±±³ª³©¤´¨¥³³¹°£®¸²°³»¬º°©¶«ªª¬£ ¶©¡°³¢µª¨§©£ª¡¢¨½¯¬®¢¨¨¬°¡¢¡¨¨¨ª±ª£ ®¢¡£££§¨¥}£
wt|uxyyrrxf¤vi_ditf|SXo^JxsSdSQ_MMRZfNMVYdXGRhQQ?BNQaQ:IHLSIqQLS;<I?;<=;@@W<<?H73CB15:93-5::)-31--5)(+-,42#2)',%.;.&1.0-14%,0Lg:48_=ad?F1CP[[*HM9U@4³¡¥¦¤§¤§µ³²«¥±§ª¸¾À»¯§¹ª¦¯±ÉÇÈÑü¿¾¸½¾¼ÈºÀ·¯¯³±¹»¸À²²º¬¸¬¢´§¨¬²¶¹³¨¨½¶®·¾°¾§¬µ«©¯£ ¥«¨«³¥´¨ª§©£¨£©¨©¾«´°®ª¤¡¯³£¤¥¦ ¥©«¦«¢¢¥¨©
~
~}
¡~r{z~|hx|ysno{fxdag`rzlfx]^T?W{lTaPQYKLNru]HZ[gYEUePD>JNDCA9HGKS?jbJQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11'/>KH0%90%,,09/,,+6'17#-0GjI14X=fbAJ7GS`U*=9DW=*² ª¦¥¡«¥¸³³¦©±¦¬¸Á½µ¯¢¸¨¨°ÂÉÉÌÁ¶½À´·¿ºÈµÂ´²²´±¼¸¹½µ¹µ¾ ³§««°¶¸µ¬¿½ª³Á´¼¡¯²µª¬°£¦©ª¤¥°§° «©§¡©¥©¡¼¨®±®¡«£¤¯¦¡¤¤«£¥¥ £¥¬{{~
£}yk~vyxc|zpnoqvgsiheg^lsl`io`o=ZxlU]NPRKIMTZWM]^lWDW_O^PHMDF;7HEKO<rhKK9AE;;==;;=J49B<3;G<4?18-68;2(09/,4/.=-*K>)49&'.34.0+/4&,:$41AhY14S=e_DL6KVdO*;1NW=# ¨¥¤ ¨¤¸°¯¤¯°©«¸Á¹²¹¯«¨´ºÈËÈ¿¶Â¾¯´½·Ä¶Â±¹±³À´º½·¨¹¸½ª£´¨©ª±®¹±«¼½¥°Á¶·¢¯¶µ§¦§°³¤¦¨¢¥¬¨© ª®¦ ¦¤© ±¹£±¯¡¬¡¤§¦©¥ª§¡ª¡©|~}| x
}
|sp}qtt`zxhmoomh}qb{mieb\d~^YsjqJI~iXYMPLJHPRQIO]_nSDXZRhNGKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23.:;83&2<0,85B*)-B*,4;NN@;73-.+-7**<%53<fd24M?e]FO=QZgH*>/WU5(§®¡¡¡¥¡¸«²¥´´©¨¹Äµ²·®°´ÆÈÀ¶¾Á¹°´¼¶¾»¾¯ª½°´¿°¼Ã¹¨»º·§§µ©¨¬±´±¨¿·¦®½·²±·°©¥§¯±¡¤ ¥¥ °§¡£¨¯¡¡¥¥£·°¡¦±«¬£¯ª¤©¥§«¦¢¨¢z~zx
~yzprwoot_ywdjkjgglerkkdgWar^YkuiYE}^[XOOKHHRUG2:_^mPDWUYeLHJEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<#8R=*113>D5,-'42+;+139cl84HBf[HTCT]hE.;1^Q,2¤£«¦¡£¡¸ª°¡»¸¥¬½Ä²¯®¢µ¯¯´ÄĽ³¾º·°³¹¸º¸º¿³´¸®¿Á·«½º´¥¢³«¨ª³¬®²£Ã·¦ª¸·¬²»ª§¥¨¯«£§¥¦¡³¦¤©©¡¦ ¤¹¨¤§¦¥¡©©¡¡¡¡¡£¬££§¤y|
}x
{w|lurmlsbytgfifcmfghdfgh]dbieZezb`PrT[[RKJGIOS@ *j^jLCVU^`KHGEC.:B<F<6KPD8:D357==895?:;4>8@L=>93)8><:9*6@3.E4(+,>0-N?.+-7-1195,&.5-80576`tB3CDh[KWGU`hB377aL'2¤¥¦§¤¶¨ªº·§«ÃÀ¶¯¬¢µ®§¯¯·ÁÀ½±À¶±®²¶µ¹¸µ¬ª¼³¯²°½À·®¼¼°¤¶¬¦¦µª«¯¡¡Å¬©¨²µ¬¬´¹¨ª«±¥ª§¥¥£¤ª¡¡¡§·¦¯ª¡¡¢ ¦¢ ¦®£§ x
w{~
{
s}gyplklguskagcbsacefehhaenY]X\lcaLgWZ`VIGHKMRX>9`liHBUS\[HHFEA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A<-5B37=++,/A*JK./*+3722(57$+7.72685\yN2>HiZLZJVbfA:3@bF%5¤¡®¡ ¥´²£²¾·¡±Å»¹°°£¶¬«®©¹¾½»À²®¯®¶®³¹²§«¹°¯®´¶»¶¯¹¾¬¦µ« ¡²¥«°¦Å¡³¦°²±·´¬¯¬®¢§ª¥§¦ ¥£¨°¦¹§®¢¡£¥¡ª©§§{t
|
ogynikjgqrk[hcaq`dgjnkeiecl\llupaSbhceZIFLMOYQPUaeT@VRZTFGFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24:5#3*)6.55465Z|]1:Kj[M[KXdc@A1HbB'4£±¡©³°¸À¶ ´Á»½¹±¦¶°©®¥¸º¸¸¬»¯¬««·ªµ¹¤³µ±¯©±¶¶±³¶»§© ¶ªª£ª®¬Ä¯¦°±·¶¬«°¯ª¢¤¬©¦¤ª£¤ £¬«©º¦¤ ¡k£q¥v¬©¢x
mi~wql}o]d`gkuxfhvifW\itnNPjceqf]dfnkh][]
hNKC8ETg^JHPPUVKHRapteF[QUPFGFC>1;=6=6<3f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,,08>G701.*.*/668,#1'214:276Xl15Ok[N[K[fb>G1Na<+/¤²¡ª®¬£½Å¯©·Â¸¾¼§·±¦«¤¸´³³°¹©§¬´¥±µ¢§¸¶µ¨§¶³®´®´¢©´«£¥§¨°¿¨§°µ¹£¨¬««¥¡¡¨§¡¥¦§¨¨«¤´¯£¢££¡¡¢¥¨rx uif~sx o~|¡ |tvlmhdd{mrbTmcmiqXionW]hZkjZplyrhY^FN>F^MERVVQPRWTg^LZLRRPEFG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82*/1<I:/01.*/(-4583%&2115>1<8Xt15Rk[N[L[g_=K1T^7/(§¬«ª¨ª¾Ã¯²¹¼·Á¿ª¤·±ª¬¦³µ®¯³¶«©¥±¥¶³¬µ¶µ¥¦©³±²¨®ª¡³© ¤¥¢¥±¸¦§§·½¦¬¦©©¬§¥¡¡¨£§£¤¥ª¢¤¦§¡¶¤££®ª£±¥®¡zÔ¨ÀÆxw±¥·dÀ¿yy|Êq¼Å{r¶§º{l±«±yhlX±®nei¼¼nhymqØ}Rkb¶²}~pu¡ªVNWaOVNFU\XPPS[W[P@\DPNCFI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22AE/.32.+/)-/186- /416A1=:Ww11Tk\O[M]g\>L1Z[41!§¨ª¥²ª°Â½²µÀµ·¿Â«¦´®©¨°µª¯¶´¨¨¦µ¥¨¹®²²¶ª¥¤§²¯®±¦«§¥²¥¢¢ ¢ ²¯¤¡µº£©¨ ¬¤¢£© © ¨¨§¢§£¡°££
¯kjªh
fq©q®¡¤~wº|k v±_j´[¥e`fzfixj©e¾rg¦v±j|±xucmm§n\ EigEu`}f{£¦X_«h}xzj¨8J¯[XTlcZKOX_\VV;NPWV/ISSJCEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3/.53/+/(.0.:6/'$203B/=;Uv2-Vj\OYL_gY:M5^X31¢§¦£¥«²¸´½¾°·Å²¸ºÃ§©°¬°©ª±¯¤±º°¤¥¯³£ª¹©²²°£¤ ª°¬¯¦¨£¢±¤°©¢ µ³¡ª¡¡£©¥ ¡¨¤¢¡ ¬¦¦ ¡µµy©¶w³·¬k¦z
w«gj±[¬{tpx
°vwqkkm|O¥XHcc~ch¥_yquR]P©ncpz
a/R¢n[Tkg`LK\dX\ZB>°wWXA#MiFBDA@A19>88:84;:9<9:A:E::;6:CB8=?KNH:5:AFBAAD<FD;0201;E,0.940,.(/3,>831/2-D1<<S}n3+Xj\OXM_fW7J9aT50 ³¦¦¡®©¨³¬ª»·Â°¼Ã¹¶Â«¬¯¯¨¯³ª¢¯¼«¢¨¶¤¬µ¤¥²³¨£¢§ª³©°¨¦ ° °¤¤¨µ¯¡¨©§ª¡¦©£ £¥££«¦¢ Õ¹q±ÂÆ}Ö»}¨¤{¢¥y«yV¯{~j¹Z¹w}¦|zªy{±mt»oP¯§ÅQ zc`ªbsrk^Rµ´È
~|c¤3Bu]PjhdP@XfYdaJGLjJZSOYfZCC?E?0<<59<74<;8=:<C:F:;>6:@C;6@OLH<9;DHCBCD<EF81211DB.00483+-).323971#%5*>3==Qwj6*Yi[J[P_fT7H:aP72%£±¨©¥³ª¥µ¨¤¼¸Á°ºÀ²·´½´¶¨²±¤²³§ ¯¶©¨º®¤°±¡²´±¡¤¨©±©´©¦¬£®¨±©£¬¢§¡¦¡¢¡¢¡¢¢¨ §¡§¡²nhµr¬p§r´ut¶{¦£~£~°uÒÒu\®|
¤nª¦j
}}{±sy³et
nfRÉZÂ\yb__vs
a]YÊoÀtMKµSUÆdUQjceXAOj_liPUFH9=WR[VYHB?J<2?;5=<56>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>II:1746@>/.24252-).26,742&60;5:=Pqh9'Wi\ANT_eP5G=aM62.£¥¯¥©»¦µ¥¨¶»¼³»¿¸·µ¼¼´¦µµ£³²¤ ¬°¥§»®¥²±´¸ª ¥¡ª¥²¨¬ª¥ª¤«¢¦«±¦¡«¥¡¥§ ¦§¢£® £¥£
¬|x¨w£ªp®
¨£¢}®³\r²S¯}£~q×}w~w¯w´ael[°WKuyf`^vvgj]¯wwl5yÈ®³_CTo^g`EPl_pmVUM.echRYP;AD@L:5?91><16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!03767=Pke>&Vg\@=V_cN6GB`I:77 ·±³Á¨²§ª²º·µ¹¾¹¸³·¾µ¦¹µ¡¶ ©¬¨¶¬¨±²«´¤© ¨¢µ§¦ª¤¥¡¤¨§°¥ ¨¢¢©¦¡¦©¤ ¡¢ ¦©~¦y¡ªp§¡££ªzyp±Z¨ xtØvt§¤|{²^d }n\«\[hgªcr{jq]«Z kndOJC¡\ZMt]bfMZa_rt_JU5JXHE=GEAL35A8.;>05A78@<6=<F?:<6?=B7.HVJE@H6KIN@IK@EN::@4.;>002154+*05/7,&21($$6671<OedA&Uf[?1T_bL7FH_C1=7¢¾³Á®«¬¨§µ±¸±µ¿¹º³²¹¼ª»¶¡²¥¦§§«²©°ª¶ª¯¡¢ ¦¤¤º££¬¡£ ¡¡©°°¦§¦¤¨«¨©¨ ¤£ ¡¡ ¡«®nr´t©w¦t´zu´§¤¤u¸n{¢kk¶Z¡eh ¢§mr´s³j
ju´af¢nk\`N¡|Rs£ly~no\¯V<weTon.[§ObRkeblYb\`p|cSYQ>?lo2BB@>M:!7@6.;@37C58??3;<CDBJFMIF62JTKEBJ6IJP?HOCFP=<E50;;010/75,+,326/#00,,289/9N`eD'UdY>/U^aL5FM^81A8¥º£±À®®««¨·ª¸¯µÁµ½²±»¸¬Â·ª¬¡§¤¢««¨¶£³¨®ª¡¨ ¥«¸£®¦£¡«¶°¦¬©¦¥£«²¤ ¨¬°¡¢¡ ¡©«Ó»u±ÄÄ~Ö¸y§y¢¶u}wv²aºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¡}t«}¾ns¼t²uxmpm¤t½]w}[ay¼jZV[iy^i`dfbmxoX[YCA@q?CG+4H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,;:08LXaF'TcX</T^`K5<L\-6@9§¢¼£°Ã¯ªª±¨¹¯·Å±»³¯¼°®Á²¦£¤¢«¥ª²¥µ§¤«§¸£®¡¦ £¯¹±«£§¦¥¤ ¨« ©¤²¢¤¦¡¡¤° ª
¶¸x¶wnlotoyrÀ»¼{²¨pt¹|{}¤»¹½uy³£tuut°ufi¶trqw¶^y}gylyb¬pt
~X[§iDdYTf_c]cQgfqmuBMOLD;ZL>J3<0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITBKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7KT_G'SbW8*O]]=+;VV'=:<¦¡¡¿¦²Â³«ª¨¬«ª»¯±Æ¯µ´°¸¨µ¹®«¤¢§ ¥®ª§¶¨¨¡¤¬¥¾§¡ª¢¢¨¢²µ¶¬£¤¢¦¦«©¥¦¡©§§¢¨ ¬¢°©§¢kj©ytv{f{½¾Àºoq
_rjZ^acl`cmvble^`cqhr{fj~ptx~}b[xthP\n||jWlzrIJo
pNrMDV\f`LZWfc_OZmvjrRODDM<HI<L>2,2A?8/5?C<9;@;=C>RVVWYZ[[\]`aaa`\UG5CFUEJOHFPIIH;8=51:.1;:./-76=5&"/*2,%;8-7IR^I'S_V4)P^L(3>\O'?2>¨¨¡Á¤´¹¶£¬¦®§¨µ²¬È¬°´¶¤¾²³¨¡¤ª£¬§®¤¥µª¤¢§©¾¨©¥ ¦©¨°²¾¬¦§¢©¨¤¬ ££§¢©¡®¦ ±¥¢¨¤¦¨¤hn}rw´ª
¡y¤
li{}urxyvv|jstudw}vkoyl_b[ogMXYfj_WYpzomfSOFS9PZNRO(+:KB635=@A9:C><ENSSTVWXZZ\]`bba_^^[TKCSGKNDGPLOI<:;489,2;820)6IRO8")+/2#4;*7FO[J'R^T10T^:+=8]K,<-@² ³¢¿¢£°±· ª¦³§¦°µªÉ«²¦µ¦À©´¡¥¦¥¡«§£¤·¬ ª¦Á¬¤££¨¨¨²Ã¯ªª©«¡¡¢¥¯¦¡¤§¬¥¡°¡¢§¡£¤¡®|©¨
{
£~e¡³®w{~wyzogyjuyrhsyujtbxe_hdcdfjXk{qjk\SLPD_UF@>?,4@F;45;>A;<?>>HNNOPSTVVXZ\_aca_^^]^]XVJKLBIOMRJ;<:786/3964.(&$-1..)+*7%+<(6CMLD/T\Q05M[17E4\G5<,@³ ¹¯¾ª±² ª¦²£¬³°Å°«¤³¯¼¤´¡¨£¡¨¦©¦¤¦³µ°¦®¾¡¬¢¢©©«£´Ç³©£ª§© ¥¬ª®¨¤¢« «¡¤°¤©¦ªf
}ecylhjz£«je~g
eeihz¢kh¢wkj£skmzyXe]
^lw\gswwnwxsmysvzhX]jsd]sij|qmc]QNVIdX@I3=F7?FD71<=?AC;;DGHHILNORRTW[^`aa`]]]]]_]ZUODHOKSN=>==6535554*&&%,*%.++'6*$;'/AI[J.6ZO6)EY/DO1YB;?.=¤º½¹¯«³°«¥¨®°§®®°½±ª¨¥®°° ¡¤¢¦¬¤¦¨©³®¤£°¦¶¹¥®£¢ ¦{¤«¢¨´Ã·¥¡¦¯££¤ª©¡ ª¯ª©¢ª¦¥§ «¡¥±¤¬¢¦ ¬~½s´s
hw¹Ä¸q¡£z¦t«}ËÀÀºq£}À½ÁÁ{zÂÀ}j¥²ooÊzxvyyq{pw
xlube^wc_eb^thmdbXKUIQYHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^_`a_^^^^___]\SMPGUNA@?=6468266*&%#)*&.+*)109*#>I[L*#CP/#F[3PY/UAB;/8¢¹Ã´¯¯¿©©£°ª°¯®¦²µ¯ª¦§¦±« «£ ª§¢¬£¥¨¥¥´¤£¦®¸´§¯¢¦ ¡ ¦«¤«¿¿± ¨¯©¢£¤ª£¡¡¬®¨ª¥£¡¤£¤©¤©®ª«®£¦¢¤Îz{¥z_]¨¡¡|§u«¯^dª{¨
t³c« ³j¯t|¸aY£Ínv{Û{q~ve{uvl~m}
}k_pjof`_xd[qhjdf`RTSW^JOC5AHED8>5;@?A;=8@>??BDDFIJLNPROS\___^]]_``__][WOUJ=?><5578164('$!',&&/(&+360$7:SL+,-J0';[:L-!P@F4.1¬ÁÀ¿´´°·£ª©µ«¦²¬¬¤¬¦°ª¡§¦¢¯¡¨§£¦¡°¬¦®±«¨¬ ¥¥¨££ª°¨¿Å²§©±¢¡ªª¡®¦©¨¥¥¢ ª¬³¥¢ªª¤§§¢²¢§¡¡rv¨q±|q¬} ¥x«~r¬v{|~ª¢}«zzVÄ{pÁ}mupmfweoaxnrnlcmsuo`fmd_oijnfcWS\`ZRRC8II@C<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;91478452&# 1' 1''45-&7=WJ-<(=1)3V@F!G;C1-+¯ÓÆDz³££¢¢¯·¯©±§¨ª¨®««§¢¤£¦« ¢¦ ¨¨£°¨§¯¨§©¤¢¡§£¯¬¢¬µ©¹Ì±¬¦«¢®¬¡©±§¨¨ª§£¡ª¯±¢¨«®¦§«««³¤¤§
¤k¤uz©u{²q¥p ¤_aR«
®u®¨z{f£¤£}©®^{¨U¢{£|Ä°Ås¯´³¹rb©¯Âthkmkxxwnkfddqqf{ic\V_iXXTLLQLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^`a`_^]\][SIB6799664,&$" ''!+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÂÉÕÖÀ¡«¨¡¯¢°´°°©£§§ª««¨¤¦ ¥¦§¦¤¬¢¬¡£¯£ª¤µ°¯¡©§¤¢¨¦°¥¢¨±¬¶Ç±´¨«©¡ ¥³¡§ªª¢ª¦ ¡©¢²¬¡ª³²¢«©±°¸¥¥ª}ªmv«y|°n¤Ò¸´¸É²_a©¥ zyªÉt£¨©~ÆÆwe¡¥s}¯_oµc±uK£m§Gd{o|myt|zm[ejrqfi^aXcm\^YILLJEDBA=A<A?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^__^\\\\\XMB75785/)(%&%$&),5FNPPMFLJVF*L0/>-4NTQ;<F2,$¨¤Àƹ©²®¦¢²¹¬«¡¥¨¦ª¬©¦ ¦¥«£¯¬¦¡©¥§µ £¨«¶³¬¦ ¦§£ ª§®¡£§©°³Á±²©¬§¥¢¤¯¦¢¥¥©®«¥¤«£¶¬¡±¹°°¨´´µ¦ª¦¡Nwz£|¤¦¸||z¹ÌÆöw¢~v¤¤§~¯
¬}a¥l£p
}r¬`¤sqa¼}RUu¡z|ryr~o[lnwrjnZc_hnbd]LLQSAHGFH::K>B108856877-*5==?BDGILNPTWYYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOTF<E2:P[T6?G,- ©¬¤«¹«¯ ¢¬³µ¦¡¥¯®®¨§¥¥¤§¡³®¢©§³ ©¤£µ££¡©µ¹¤££¢²¦¥ ¢¯¤¨¢µ±Ã°©¬©§£¤¥¥£§¡«¢¤®¥»¬¢·¶®¶´º³µ¨ ±¤¦ ҵ÷y
¦x¢w¡
¥r«´nri¤}s®¥£¦mp²\¥szl{~n©a¢rr~ bs²¸hw¤|u{xlhwixsnt\ddmmfh`JZWX<HF?S3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^`_]Z[ZXURRQF:2230/++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH#)%r®¿¿¼»µ¨¤®¶¢¢£ª§©ª¥¢¦ µ¦¢©§±¤«£¤¤ª´´¤¥©¯ ¦£§µ ª£µªÂ¯¨ª¨¡¢¡¦£¦£¥©§« £¬¦¼¬½°£±µ»¶©«´¦«|¨}|°x¤¥m²o¡|¢¨¬
¨ £
{~««w y¯]£|¦§d|uj®]¥lr
]`[ m¤wy~il~b}tmy_gepogghBY_Z=JS2S8AAC7$$3+''3, /667436:@CFIKMNQSSSVZ]_a`aaa^][ZXSPONI8152.*,ATVVVTTUUUUTTUTSSVWWXVUVQHFIJ#((¼©Æ÷Á´ ®¹¦££¤ ¯®©£¹ £«¡°ª®¡ª©¥±¬§ ¨¢¡¥¡¤¨¥¶¨¾®¤©£ ¦¥£¢§«ª¡¢¨§¼¤Ã«£¢´¼°©£¶±«w¯~|ºd°e®}¡§
°¨¤¢¢
\lk³`|{²lfn±Z}´[¤kÈ¢f|»YvµZ²}S¯z¬X¡m¦xw|cs|bwt|aifomfefOUc\AT]=H(>9=4!!,$2. *1/04579:<ACFHJLNPPRTWZ^```ab^_\[XUPMJGC553./@UYXWXWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³±·¾»´Á³£¦¥·© ²±¨¢µ ³¨ª«°¬®¨¢¯¬©§£¨®©¡¥£¢¥¢¨±¨»®¤¨|¡ ¨§¥£¤¢¤©º Ƨ¦©¡¬¶·®°©¡¿°°°ª£¯¤¸Ãº
¨¬¯©¦«~սªb¤¿½}£×º·µ½¾j£o«nz²±Çk«±½¬yx¢¾»t¤wyb|ydfx{`kejjbPb[Si\@T`BL)<:4/$%2 $(0496678;>ADFGJKMNNQTW]a\__a^`[\YTQMHC><A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ»´´±À¹²½³¢®§¦³¦¥¿©¶¯§¡¿¦¦±±¹¨®¯¥§¯¬®¦£¬¡¥ª £¦§ ¨¢ «¬©¸¬§£{¦¨¨¨¨¦ ¢ªº©Å£¡°¤¬´µ¬²¬£¿«²²uvª¥·e pg¬nnw¥ v±prª¤¯¤rlmmfxomqzipigqhi
gqd]cioZ]g~x¦`brpfd z
tdwgjx~ydlcflbJdWIjY:PdDP'J9+# ",)-2.5:457:<?ABDEHKLMOQSV\WZ\`_a]][TPLHD=:AB7MXYZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨´©º¹²´ª©¢®¤³ª½±ÃǼ´©¿«¬£ §« º£¤®¬¦ª
¦ª¢¤£ ¥¦©£© ¥¥¦®¹ª¬{¦¦§¢¯¥¢«¹°Á¨¥´§±³¬°®ª¼§±»¢©¦µ£©ª´¤¢´¤£¢££¥¢¬§¤~gtwtq§m}
phvowu|yikddocUaX@iZGb_MX+E=+&!640/ %2(*799469;>?ABDFJKKMPPQWUVY^_ac]^TQJEC>9=@ASX[\YWXXXXXYXXZ[[\^__`^^^__```_YY`¥©ª¤µ·¯®¢°¥ ¶±ªÄ¼Ã¹¶©¡¤¥°¨¤·§©µ§¨¬£§¤¡¨¤¨©¦ £§ ´¹§ª{¡¤¨´£¦«·¨¯Â¯¤¸§°°²¯«¬¶½£²À§¤¦µ¢§©¢±¢¤³«³¦£¦¬ ¢« fuwztj}
xqryq{~jnd_pi`\_YmbP`bOX9FFE=2<=8/*&+)&&406658:==?AACHJGJKLMSSSUZ``i`eVPJACB;9EMV[^^[Z\[[[\]]_^]^_`aabaaa`bbbdb\[c¤¨£°³¬®£©§ ¨µª£²¹ª«¡¢z¡°¤¦±©¸¦£©¢¯¤¨ ¡®«¨§¨¸µ£¥y¡§·¢®µ¢°°u¤¿¤³ y{¢µ¿x°¦¡ªd\bw ¤~mµ¤©°¬¥f ¡tzpªl¤©e¥
xkvq|ai[vggqy¡dx
vhnykpd_vokkg[ecaamQY=MMNRF=@TB91/&4:306678<;>@ABFHBGFIKLTUUY]`hfgXQI<DG<9UR[`ab`^__`aa_\]___aabcdabaaedchd^]f¦£¡°±¬«ª¥©®£§¥ª´®°¥©¥ªs¯ ¨«§¹ ¤~¬¤§¢
u®¦¨£¹³§ tv¥±µ´½¨¢~§£{¥±º¨±©¯¢y¬£©«©w¥{§{³{ bynqzqt
xht s{~ijx{qpfexnilj[diidqZ\GSKQ@E5-YTT6)!09=>643568;:=>>?DI@IEJKGRXZX[aaifYQH9DL<>bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah¤¦®®«¨ ©±§§ª¥¬Ä¼¯ ¥§´«§¢ ¾¡}¬£¡¡¨¢£¹±§
pu£«´´®Ê«¯·
°³²©©|¨r{w¦h¤y´¡ ¨ªÂ«¡r¥}
³¡}¡|
nt{s}
uÅf©¢jogwt{vghupghk^bnlfjWdE\PL2E46M`c7&3<EGD:63658;8>==>BL?NIJLCPZ]\Wb^jl\QE=KM@IdX]cfhgbbbbcc__babcccdiicbbbecafcbbi£ °©©¨¦¬ ¥¹±©«¦¡¤©¡£©µ¢¯ ¦¥½ y«¢
v £¢¸¬¥~bm §~¡§ ® ¡²¤¬~¢vk«uM«xª©ª«~¡|{§jlg·~n`cX{dgs}yl\|n`Sq
\`mz`Ye~
q¨ªk£nr¥ogdlZlzeY_~aWPoventqjjo]ioljgWfM\WE8A4GC^k4+ICQMN=84859;6@;;>BO>QRKMBJ[]_W^^cu`ME:MNMTb\[ffiibbdbddbab`bdcabjkdbddgdbgeach ¹¡ª¤¦¬¢¶½«¯¢ ¥««´¡§ §´u¦~
¬£¨¥¯¦¢in¡¡¥£¡ w§£©¬°¥z~}¢ps{ymª}¢tw¦g~w¥^{}s¢n·´ºs¶¨dƸ|q¶q£ct¬«a~j³~n~q£lr£r}£^³o{³tr[²ibptuqhoXjkqpd[f\aKC=D5QAYp2<RG_JR=<395::6C<;@IP?TNNQ@E_^[YW``{dIC8LWUVcaZffkkbbeadc`ab`cc_`cknccddhdbgfchh£¹« ¥¸µ ¡¢£¤¬±¬« ¡¥¬x
q¡}¨ ¢¨§¤~k{} w¢ r¡©¨ª®®~z y£xs}¨£d¡~mho{§}rhtªsªg]
vhªj¸f\©pa_§vwhu~lj¦\¨~w»j}©Z]³g\nqxwki[piwwa^cVaAPEN7VBRm4JZZ^NZD@151;;7H?:CHU?YSX]>Db]V`Qad|iEB9N[]XdfXffnmbbe_aa__``ec^bdoq_deekdcihgkiª¶¨c¬»²°¬¥§¬°§ª£¢ £ir{z¤¨¡iy{}¡ ¡rh p©¡¥ª¢ª~°¤¢¸v£³¢£xzª¢r¡}°µ}l¡x~µ££«¨||tªZ]o{xbM{{
dzBMY¢js|ovy±³~¦s}mp|ori£]vHec`sp}}ne_kguzbb^O]V\TV@YEPfDRV\aX^ID=B8?B:HE8LEXAWRZVEFa\Z`K`m}qEC<U^bZejVghmobff^a`\]^`hb_ecvl^egfldelhhli±®T_¡§´º³³©¢©§ «£ §¡w
ny}r¡r¨|l
q¡w{¢£®}µ{¦z©£ §hxn~s sq|
o|¤§¤p^©hv£dp¦aÓ|{xrsc¢~¢r£vk³`tª²¨¼wn¿¦ª´^orps¢r^¤gt¦`h¦lÓynvykyvrl©¥g_dyqlhfcmuvf^`QZePQaHVIT_WS[dj[ePECKLJKAJD8P@PMXSXOSQ`eejSdxywIFEc]eZhiSihjncjf`c_\]]_hbahe|d^dgdkdjlfhlh±¬T]Kª°²µ°³¢¦ ¢¤§¨
{p}h|wpl|£©
yvnw
¡x¡£³¡¢¶z¬§¤®¥p©~¥£q¢¯¤¯£wµ¶¶É¢sa©my u¡w ~oMf£qs¥{zubm~ lrd`stk{j´¶´Æ¦s}yj«slswiytqPD}³^jukxfkfbstolU[RXgOQgIULXRU\gknUgWMJAIMJGJNAQJPdcjmeuss~x{ntz{TQNm^h\kiRjhilgmgce_\\\_ibdhk{_]dgcjfnmeile¢°¨
e?¢²¬¯¯µ¡¢§¡¡£¤¦¥ykyeyuj
z¥¨z}yp
y~¤¦gnxl¢d|r¥xph§}¥{¡rv¹m¢b}£nsk«ku no¦aiiu¢~`uobh¡fjupdgor¢[_[d¡n^q|trd¥nx¢cf§gqm¡oRn ^d§T]TmmrkqmphkwsjnQVUUeYSlIXN[HWhhrjYkVPREV\MXSaUhj^wu{|p}|r{sww^QsagbpgPkhhklohdg_]]]`jbjivu]\chcjirlfkmc¥¦zetm§®¥©°±¥©£¡¡¡¢{qh|st}|e|¦¡ª
}si¥}
©¥¦x~¥²¯¥y{©u¨n¥¢¼m|¥¯
¢~¦|r¨¡h~o¬cx¨mª£uw«¦k±lw³©loo b«ªw§w}
¤ gu¬f¶sv¾£Y¦«aurto{upbj}nglRTXT``\kL[Q[I]lmv_[qY[_Zgsdmoqcqt`wz~yrys~{{vbydcnsdRlggomrifia_^\ajbll{o\\bibmiwmglnb¦«¤ªª¨§£©¢¤¨
t
zo
~strn}{
¤¥¤unl¨ª¢ t~x¯¤qy{s©r}}zx{}}w¡¢
{l\zyszqin~qtqe_xvsupzooo
_wixfªt}io~u{tmlfsw{wZjWyinwrqowxo]k
nhgVY^V\djcU`T]Q^owykjwdijju|pqtsaoubs{xuyuy
}{mmdyn^Wnghukxjiid\`ZcielqunZ[bkdlkymhloaº©§¡¢§¤¤«¡ª¦¨~r||~{trp|}y~£{¦
wqª
§ «~¨¨xq
}p«q~qjo|hn] srulvtYro~j]id{
`ix{|vizlbqsw_s¨glvnwmdecyzZ[ifmv[{ywtnsrf\mkkbYX\YXjqZ^`Y]]dr}ztotbjji{|qzvtdmthl{uz}{yzo{}s~zrhT\rilvpugkgd]aYjhkjqrmW[emlgryohjm`«±¡£¡¨¡ }«¡¤{
|r|v
ros~z¥wy¬¡ª¢¢££«¢¨§¡~z©±¥±¦¡l}wwf}
w|{u¤ wqux§zuj|yiqh`sp}{wvowt]^ogn_^YZ\SgpUc[[`lgt{{rnocjih{mx~phpplf{rw}{m
|zy|~zxNdvjsnq{dkebb`[sfpfrqlU]ltmhxzpgikeº¢¡¤ z~©
|y{mxr~mk~z~|©r
|z©
¦¢¦¡¦x}§|}ª¡© qyruav
nzvu¤u~~ss|
{y
¨t
ymj|{mhklf^yg|{vtvu{w\`p}nt`cZ[^QflSdZ]`jhty~pllcjjgkrkktnwnynv}
wq~{{|{`i{kuhjdjc`i\cugobumlTbqyeoyzrejmm¸¡¤zw¤¤yz
{l{xr
}|kh}|~
|¦p ¡
|§w£ ¡£¢¤{¡~|¤ ¥uuqwa}s}q~
hxrzs}}rz||{¦{
s
wdpz~xypkjf^~sh|uus|sj^`tvpwdcX]^RihSdX^`giuxqfkclgejm}gmpj}w
zkr~uv|z}jrntibhlb_qVtolm`xhlWjsvctzzqbkoy³¥¦ {u£¡x|~~p~ztu
~wgc}x}y}o
¥¦v¡¡y¥{
ys¢ ¡}wr~n{d|qk
fvp}~y}~|ryz
£vtxs^vw|s}vfkd`~ijwssu}q|ccasnurmaY_]ZkcRbW__gjty
pbjclfh|khthloh|xl
qt|~z~|muttmfljacuVipm`yglajvpex{yp_ql
¯§©
|v¨yx|}}{xsxys}d^}
t}~~£ ~q{¦ t§um|o¢}{qzkvm{n
xo~~esj}
u
zwy~}¥y
t{~qr~k`ytyp|n`mbe{bnovsxwstav`oluno\Z^]]i]O\Wb`glrzk_idjchwmflhilg|zwns}tz}z}|ryxxmlkh_iqbhqoevgmlazhj|{wpawm«¡¤©|v¬|v~{||vwptszo
}~|a\~rzz¤}|£
n¢¡pg{
p¡}|tsukqou}uort|}ernz~
uu{p}
ª{}~v|nl}afwstnza^o`kt^pjzyylrpey^nlsmsXZ]_aiZOVWdbepqe]ihgbgqnchheigzwuo
s|u
x
|xzw{zrykk_ohtkqnmqgoke{amzwpkww££¨¡¦t¨ s|v
xyrszlroymvnq[Y~vu w~
m¡l¦
gx~}}pvplnop|isqxuzgtpw}
{{xur|{
¥|v~wwlh}~[qrqoovY^o`pj^oj|zqnmjmw`pokqmYX`aalWPRYeeatoa\kmdcekm`ff_gjurrotyvy
~wv
{{vjqc|b
|oplujhnlww_q~y{sus~¥§
~tzrxtpr
tquloltlv}mnUQ«xvry wz¤
}r
jh¢
qw{{|}lwjoklm{bz~wzx}zhumv|r{qx{{}|w|vogi~v]vnmkprU]nbra_mnyphpfgsuhplawe]Ue``qSPN[ec\wo{^\hqbbeei_he[go~okqs}v}
uvy{xs
~|yxfrk`~ooj{`imtt^s|xwss
|x ±¦~wtwspp
spqojiumn}|musRNᐙ|ptuv{r
¡
}x{zxin¥cpz|z}m|esokm{z\y{~{ziukt~mp~
{}wxwrkdn|igsnghslS]odpZ_lqwgkkbgxsppd`x``Uk_^tOMK_fb[wpt\[eu`addc`fbXistnkqv|tyvw~szq|~vesn|e~nokYknyzr`vz{vrvvy¯
x~{
uwoyqoomn~rcdwp|nz|jhlb¤ÁÜ®ï¢sluu¡np
£
{vx
vxp¦^l|~v~~l}dxujoytX{zzgtjmwo{utxtrpdrv_rloahtfR`pgkU_nsyarc`i~qrn[crabVnZ\wLLKcf`]urm[\dy^`df_cc^Xirknkrw}swxx|q|}{t
shurymznspWpzvyqdvyhvq¨¢}qxx||svpsjoljm|t^`wv{ptzg`e|ëÚµÉÃÜsltvip
{zwxrvr¤
a
h}~
rrwhvritxmZ}}wbum~omz
}nqytjoiov~]rhm\it_QdqhfS_qvt`p`]hqrjWgichWmW[tLJKef^aqs
i[\ey^^dgz`d_]Yknenjsw}sr{vzs
|vv
{vlwvyxtnwz}Xy
qngxvdv
q¡¡soqv||yrsnodr~iflww[_x{zqqiagaÕ¶¦xnqw{qj
zh|{}
zu{|qvx ¡¡af}~m}ulmwutwvkc
|
p`tr}}zr
g{
|
nox~tlmhiwz`giiXktYRhribPbrxmbe^Zjntb\h`em_oTZnMGNfd[fmqkZ[cs_\ckvde]]Zllbljsvqo|}txx
|ux{voxy{omzv^tlhzssgs|ruu~mu}|v~vqoljat|gbiuyZ`w{ymq~edhhW_rs¼Ävq}qrj{|
|{uvw~ru
rw~f~
q}f~|y}i~vgpyxswtlky
l_sy{~|sjz
y
~~nmz|usmee{sa[pbWnqSSmrhaNguxf`^]YoosZeb^jn`pOYjQDSf`Yjmm|nY[]mcZbpvcf\]`kicljsvqm~|tuz|
v~xtrxy~oozqixz~ml{ukjxtk n}uiw~yoztqkjd`szh_eqzZ`r|ygqyaee±²wKbZ¥ÙÐq{w}
nk
zy|wwoqu~{jy
¤px{
p{}mvh
yr|e~
vdqsiyqpu}wy
zk\rs~{sor
s
{
ynn}~uyceh{n^XvZWpkNWqrf`Klwta^\[Zu~spXg]gjr`oNWgR?Xf^ZojgyqZZXkeYcpy^g\^elgfkiqwnl~up{vqq{|zyujy~ko~t|or{zon~xg¡
gogy}~|ixskkf_aoym_box\dkyaqv_eeÔê½2:>qx
u~~mku|
|wnvwn
lu{ufy¦~nvx
|{w~jqh~yn||wbz
rdri~nuru
tv~so\nuy|~y{rm
szumjvts[ggunWV{RYodLZrre[Iqxo\[[Y]uuiYb[hfodjMWeP=]e\]ue`toZYTncYcqyZh]`gmgikipw}liyn||zupnw~{{hz}js{r
zsv}~yx}|kl}kh~z}~~}kvqghb[bgro`aks`hpybst^cd n\5Z¯µti|u
svoltyx|y~rgv~~oqivynfy¤~ow
|pz}{h~lj{zj{wr`w~rdrgvnu|}owz|umYpwuxv{ytos~|onimtm[edqoPZzM[n[O[rodUKsxiWYZZaqua^]`gdiifNYgM@`c[`u`]ulWWSt`ZdorWj^bhjgmlhpw|kh}|o~~{zwq|oqw{i}{mwxvv|x~}zm£{uxklx}z~prqcf^Yf_pp_`gpfjntato[adjv{¿¦¤È¸qr{w
srro{sttwyypcwzirvgwucj|~su{
{{kxy~tgzhkytizw}h`x}kkth|iv{~q|v|tbVx~st
}qxyqq
z~vwjqhlqo\f`qlIduK]lTSYrnbQOtxaRXX]apt\a\ieedkdP[pICc`[co]]xgTWVv][enhVk^ajgennhpvzmiy}r{~y|v}pwrmw~p{wxztx~yuo~}
zw
{gt
y~{vgpn_d\XeYmsa``plkhnatiY_dnw©Ú©Ç²qwotz
ytst}woqm
t
xtk`zyfrpgun[m}x~y|nxw
|
ltv~lgvdm{vmjww|abxziuuc~|hu|uwq{}nZWupv
ymtzlv
|~z}t}thtenlsZh]sdGmmKZ`WVUwmbPRtvXPVX^`ro]`cmed^ocT\qFBe^]eg][zbQV\t[Zgk`Vj_`offkqhpvxtju~vx}w{t}ortqu~
zvx{|
w|}~{~ruy yvtx^}
xs
wzbnm\b[[aVisc`[gnpfqaqfW]ck|Êι¡jmmlqq{~zyxsxut{jlvcuvof_}zerkjqcXlz
rw}os
t{y}ppo|fhqamxqjlqx}}z]ezxjvxfwht}rjo~yo}]Ysnt|ooqwixx~s|u}{sgsankqWi\v[GmjLVU]SU{kaOTurPQTW^cui]`ljfcZoaXboGAg\`e]\V{]NUepY[jh]Wg`^rejhrgpswxntzx~yur
pp{xwvy
y{t}}~~~}|xuxx|muxd
so
ztdnjY_[\]Tgse`XcqrgrbkeW[`jx¾®{·nas
hszqxz}~wwrvo{vejoausjb^~xyfqhkkZVow¢qrzvou
}xtqnhx_jl`mvjgjkywzvZg}|yfs~m
ueupgk{unub]q}lu}{gu~nqivyt~m{|{xqflam}llUi_vUJijNQNgLX{haNUukLQTU_gvg^aqhgbWj]\kgJDjYbcVYUyYMVmjY]kd\Ydb^temdqgrpuwpv~w|
}usnsy{zsrx}u~|{~{v{wwziv|{lrp
pglgX][\[Sdpd^WbrujuoeecW\[hporsddy}isusrwxvrumjzqagkgsmf]_}p{imxgjdUWro¦|{vt}t~|o~}x}}upqlgt\lg^ltdgeizo{rYgwuhpxwbw|ojm{qgtfanzhsx{~bvwjlru|r{{thywodfbm
{ljUhaoRJhjOKNoG]zfaMUtdJOSWakwf]gtif`VdWbp\KKjWcaUTUsVLXudY^k`[Zcd_vgmbpitor~ttw~xz}u
nrt|zuq
zus|
}}z}w{£¥y
kt{zuznsy}vojieV][ZZSbnd[Xas{jhmi`bX_Ziikogl`hyxjrssmz|utmzhjyj_enhvgeXbwj{ojpgf]TXog§vz|zvqqux{zvvjruggn[lc]mr_gajxh{l[nrtjp~zxaw
y
trpzrcri]qxert|yctqgjyusmyyvye
|ywqddcm{|jjTgaeSIkfOGQjE`wfaMSr]JMUYelx|f_nqje]VaUnnVJSgWe]XMUkTJ[y_[_k]]Zbe_yhlaoovnpwuz~vyzyz~qtt~zvt}|kr{
~}~{w«zkryu~tnn|sjpnddX_ZYZTbjg[Z_ui^ml\aW\\kert}ii\kvugsvql{}|xuqlygixf]dshzwccTeph
xxgijaWVYgc§o~w{qri{q|}xs
~ndurdgg\ja]oo[g^mtezh]torkq|~uvbt{ysuvbqn[rtcqs
|uesmam{pkj|zvtgv{{vqebdmr}ikSg]\TKqbPFU`GbvfaKSoXJMXXhkv{eenqgdZW^XweTJ\bWgWYHWdPHbxZ]_lZ^\bc]~ij`otxmpnvzr|}uux|suuyzz|~isz~~
zz|sq{{}dqys|zurnl{~lzcpobe]eVYYWcfk_]\s
hXqn[^XZ\l{bpwulaYlssgtuolx~xvmnsdhte[gufvvz_]Rfgkt~bdj\TW]bc¤ixsynq|jzo~}vty}yidvl`f_^i_]tkYe\oobze\w|knnpxytues{wpstcxe\qqbqr|tgre_nwjehz}uopvt}srb_fmn|dhSgWXSMv^PIYWHbtcaITmSJMZWjlr|cmmscbZZ[aw\SKc]WhSVFX`MGiuX^`l[[_ab\ihanxymojvym~vtttqvvx}}~~~pw|yxz~ttq¡zzwcuxswtkto~kx|ps^pn`gblTZZWhcmf\\qeSrn[ZXW`lvciuji^Ymspksssi|~~zvnmkdiqc[jrdtvs[WSearr]bc]SZ`\ceqq
ull{opr|}}sxt{zzdeug]bY`g[^vhWb]phawa[|vijroxtsuiq
wtkq~ogxX]lncrszsgp~\`prb`ksmnvsqxkpa\ellz`fReSVQOuZQOXQHcsa`GVjPIPZVkkk}fnorb[ZXYlqWRPfVVhSTEY[NHqtX_clbX``a]jcdmzxlpiuy{k}|y|mrnvz|t|tx
utqvp¡szzewnmznfxpzksvsk^unagekR][UgalkZ\qdOon]VXUgishbted\Xmtloutxj|{vrcdkna\nmcsxkZTVcdx}}q]d_cTZ_Ybcmp
tki|pguyu}m{uvp{u_frc[]VacXateU_`mdaq]]~phitqtquwkm
}rsgprtpT\gkfrtvscmvVcrl[_pg~fnx~stsjmaZdijw^eScTUPSlVPVRPGdr_aFXiNIXTWnie}ilxlbW]U[tdSRWhQXfTSGYYOMwvZ_ekiYa`^]nbfkyunoivvl}{~krft{u}r|
{ss~vn¤rvwlz`d{pfysxlmqwgd|mcfghS_^Ug_ln[^nhNim`TVSogskexdd\Xoslqzwrl{vzykaelm^`ojepx~gZVX`lx|{p_c_gVX_Wcbkp}xllzn]xsm|kvtop|sXjn^X\UabWdpcS^biablZa~lfltvomwwli{nrfr~ntnd[aiiptts^imSeqeVcod|dsx}wlpmk`Yafgt\dU`URNWdQO[NOHdo\bGYiMJ_KYmd`yin~e`U_T]u\SR`fN\`URI[XPYtu]_ekhXb`[^qcgjxqsnhvt{rz~|yntkst
y}|
sstxro~zz}~~}}~~}~~~~~~~}z{|~~}}~}~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~mfggggg}
]-0000-F¡¡¡¡¡¡ wegfffc¾»»»»½³mfgggggmnnnnnojfggggfo
}}{{z}~||~}}}~}}~~~~~
g_```_^yS7¤¤¤¤¤¤£r]____[~ÈÄÄÄÄÆ»g^_____eggggghc_____^j|}z{z|}{|~}}}~}}~~~~
|yzz{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{y{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}~}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~~xuwyz{{{z{}}}}~~~~}~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}~~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~rtx|||{||}}~~~~~~}~~~~xrvy|}|z}|}}~~~~~~~~ssvx}~|y}|}}~~~}~~
ty}zxurkeimolffggpsswy}~yz{|}}}~~~}~~{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxy}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvutvwuqrqnprpghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkigfggghhgmgjghehgccbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__`c_\_]`]^Z^]YY^ba^^ZY_\XWSNMLKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{xvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSSPMJMNPROMPQQQQRVVQQQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTttuxzzxvvwwzz|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPPRQPNNONONOOPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKLFDFJKKKHJLLLOMLLNOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMLORNYpprwxwwtstwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBA@@CCDEACEHKOKIIJHGJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:<>><ED=?EA?@A@DEGGGGBDDEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??;898;;:@;;><;;<<HL==AA?BC=ADDFBFFDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprttsqrvyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;::;89:87:<978;;>=;;:8:@@AB?A?CFDBCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqususqsxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;;?@AB@=<9<=<979::988::78:9:;;8789;:8<;=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>=;<<>?=<=;:<===<<<<;;:;<>=>??A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquuuusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?CCC@><=?@??=;>=>CE??@=;===<;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVpoqssttuyz{{}~~~~~~mLPQNOPNNOPPO><<=>??@>@@???CED?=;<@>:;::97:<9==@=:<;;<;89;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}}~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC??AAABA@=<=;>=:::<:8988:;=??<;;<;::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvuw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@???@=?@><>@?===?==>CD?;<=>@==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hloppqtuvy||}||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCDA?@@@?=@><=??@@@C@@?@@>=<=@EABBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBCC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz|{||}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@A@>;><?=<:>=?BBE@??Na_J@CEIIIIMMKECFGHEGEEEDDCA?@>>BFJJGEEFFFJNNKJIGGHKLJGGCDDDEDABBC@CDEDDEDEFCBADeopqqtvux{|{{|~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@DED?;ACDB?>A?ADEDCWu~XGHJLLMOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHIHGFEFFFDFHGEEHHFHGHFQnnpqrvvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFJHIGHHIGFBDFDDCAUtWILMLMNLJGGGGDGGGGFHFHECDDFEDDHHCCCGJJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrswwz{{z{}}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKLKJKMJKHHFFGFEPl|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD???DFHDEGIKIIGHIGIIJJIHFJJJJIJIJJJFILLJJKKfopsstvxy{{{||}~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKKKKKMLKMLIFJVl
uIIFB??@???<<<>::<AA@><998<<=;>;9;?ABAACCC@ABEDBCFHIHHHLMLGIJMMNMJJKKJLMSloqtsswyz{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHGIIKLONNQNQ^r
fBB=88::9878896479;<:8567789787689;;<>A;999==>;;=ADEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@BFHKHLKNTg{T;8656766645763468:876565677778:7778:;7689989876:<@GFIFIFEFOSRSSROPPRTepqsttwy{|{|}~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:<DBDFFDVx
H676468874578467799766765::;::<89899877:::8878589;A=>>BA?AKLOQPQOOOQWkrrttuwz{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897:A9<D?P}z>:88;<=>9:;<89;9:;:99;:9===?;;;=:><:<;<;<<::<8::;:999<?<=ABDIJMKJKLWorsutvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?:;<:89989999:>=??Cv
l<;>BCEEBAAB>@CA@?=>>@?>?@?@==?B?AA?A?=@A@??A<><;:;:9;?=;;==AACABCAXpqtttvy{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:8:;9::;<:::<;=>@?=a
^>DGIKJJFGGDFHGEC@@CECB@BCB?@DHECEDEEAFEFDFFD@B>=@>=?@>???>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD97:=:<:==>>;><?>B?J~
WGLLMKNIIKHIJJIECDFGFDCEFDBHIKGHGFGGEKJLIKKJCFCCDBAACBDCCDDCA=<>@hpsttvwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA97;>;<:=?>?<?>BAD>h
PMPMKNKJLIIJHKFDGHHIEEHFFELLMIJGGHIJNMOMLNKHFGGEECFFFFDEHHFCA?@Lmptuvxyyy|||}}~~~~}}}}~~~~~QA?>?FGG=<@@87<:;<:=?<==?@CBHS~
qMQOMLLLLJIHFJIDJHGKJHJGGGKLNLLHHIJMPNONLOKIGIJHIDIHHFFGGIFCBACUopuwxz{xxzz||}~~~~}~}~~~~~TDAABGHB?8?@8:;7<=:<?<<=?BCCLm
^RRPMNMKJGFCHJGLJGKOLKJJLMLOPNHIKLOQQPQOOJIJJLJLFGHGFGIFEEB@BB\prwxyzyyyzz{{~~~~~}}}}~~~~UECEEGGED;?A;=<8?==>@ED=BDCFJu|WVRRTROLKJEFFKONOWVQPOQSRMSTOMSLPSUWRSRPLJMMMKNGGJFFHJDDEEBDCcquyyzzz{z{zz|~}}~}}}}|}~~UFFGGGGHF>@B=?=<A?AADTKBHIFIKx
gVVkaERQQPJ;;QSR`u]UVTVYYRXXRZfPUWZ]RTWQPNRPPPQKKKGHJHEFIIIHIjsvyyzyz{{|z{|}|}~}}}}}}~~~THJIIGGFE??A@EACFDCDKVPJOONPPy
}al[dU:XXXSP?@VUY\d`VYbr^]V]ZVEQYZ\Y_TYgRUVXTTVSOOMKLJIILMKOMSotvxyxwyzz{z{|}|~~}~}}}~}~~~~~VJJIHGFDDBA?HLIMPKIJOSQPTVUVTu
g;~znpXZ[ZRSRWVTZZuYU}a\X]^WIV^^[[_YHYXY\]XXYWRQMPQMMOSQQURassvwwvxyxz{{|}}}~}~}}}~~xy}YNKJIIFBD@A:OQQWXPPPQRSRVWWWWl
n~fYY\YSVTWRQWVcQerXZW_hP`fZZX\hbGOZig\[\]]WSNSPPQVVVVYZosuwvvtwxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZZRSQOQRQURUSV^ux
}{\PVXTRTRQQLOMKfyZ]TYUV]ZLTZUST^ZXWWWzkXZ\\^SPPPINOWVX[Zdqtvvttvxyy{{||}}~}}}~}}~~~zxwvsu{tk~~kry^[VUSROKFCDAM^lVRSOOQOQVQSRRTcdv
~ymqVIKNNKMKHJDFHEC>ScURQQNKRURMOYQMNQSUUMQSRPNLKGCIGRSTZ]mrvvuttw{zz{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt`d]^[YUQLILIaltPQSMQRPS[RSRQRUUbs{|~}{{
u_]KC>BBCCA?DPCC@C>BHGV@HNMG]iQHFOFDEFHGHBCHGHJGCBAC@NPMRdtuvustvy|z{{{||}|{~}}}~~||}}vt{mh|gnqfheeb\XSQPURsWe[OONLQRPUYSUQQTROV`klsvz{xytrnstsyx~~kLG>>::>@?>>>jPKaEFHIEB?HLMGMQUJBE?><=<==?=?ACB?><=B>IMFUouuvstvxz|z}{|}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QQZ\Y^IJOPNKLQRQTUUWQQWVPX[b]agmmlnjh`nrimlqu{z}{xz||xwxdB@@A<:BCAACA[\O{NOONKLMOOPLKLWNHGAA<977599=;;;8989?;AG>\tuuvuvwy|||}||||~}|}}}}~}xuwz{zwyxuw{|yxuywcqhipmnmmhf^OO^\ZIGOQQOMPQNQRSVXSRYTNYZ[WY\_^_e_]^qwk^`gkwooljomnlfbYGFFHBAFHEEFCLQOaWRXQPSSRU[OOQWPMIDF>996587979:365795<B=ftuwxwzy{}}||{|}}~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMKSTSPQUOLRSTWXSTXQLXYYVXXVXY]WXXhsk]V`tkaa_]d`_^YUPMOMLIGJKIHFCPOSZWTTNQSYS\eUOSTQNKIHC?A9988978847578599Gnruyyz{{}}}}|{}|}~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPWVVSTVOOUVWXYSUTLKSUUUUWPTUWTUR]n^RNY`[VY;DUWT[fJLPRROMMNMMLJFPPUYSTOJNOUST\VRUSSOMLIHHF?>=:787659967565Wqqtxzz{|}}}~||}|~}}y}}|~~~}||}}~}|rvqxxruuqqnppopuvtnjddjppqrpnfedc\^RTZVWTSVTRXWYYYRUOIGOPOOMRJOPOONNOTLMIPPSTU2<XMIAQ=c`QSQPNPPONNMPNTRPRLILKORPQRSTQSOLMKLLHCBA=:9876;B4566;eprvxy{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqpuuvcjgeWhtrrqniihpVVTUXUVURWVUZYXWVQSFFAFGGHFJDHJHGEHLHKIGLMPMG/E_R=3@>joaRRQ@GTQOPPQNQOPOLJLLOPNMPQQNPOJLMMKGEECB;==<9=G6676Dnquwz{{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknbePSTRSUOWVUYYVQQQO@>;=?@BAC@BEDA@GHGHFFHJMLDGCORB8DMS]gSQSAGUPOQQPMMNLJLKLNOOQLNNMIMLIKKLKGFFED<AA>;@E;<89Trsuy{{{|||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLONMQSLTUTWWULLKH=987;?A>==A@B=>EHFDFFIGJJ@FAA@EGDIOHQRa\QPROSNOOLLOMKMLMON[VKMQOHJHCIJLLKFFFE?BC>=BG?B?@druw{z{{|{zzw|wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSNKHCE=9879?B?;>A@@>ADIECHGIGIEBB?><BA@GJEMObePMOMWKLNKKMMLLKNNSdMJLRIIIEBIJLMNJGIFBBB@?EFEHDLopvzyy{{z|zwsxtx||yznqrmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLLIMPMPOGKE?B=999:?B?<ABAADDGKFDIIGGHCC?B>??@=CEDLMQTLJIMTFIIJLIJKIILMOPQPKGCKGCCKJLNONIJIGCCCDIJMLIZsnxyxzz{y|vrpurtyyvxjqnjllnttmsu{stxronqovsnporpopstyjN`gsjt|ygosqiqheqHJCFGHGJKIJLDGB<>=:::;AB?=BBCCHEJLJEIIFGHCC;A@B>@?BDDIMOGHJGHKDHIKMHJLHIJLJM]RHIDNGBELKNNQNKMJKFGGJMNRNMcnjwvw{y{z}qmlskptttuhpmjikktpnttyprytorqowsoqptrprutykNVmulq{vinoijthepFJCFEFDEEFEGCC@=<=:;:;AD@?BCEEIFJJLFIIGFFDB:ACC>?CCCDGKMHJNHDHEILNMHILGFFIILNKIHEOICGNMPNPNNOMKIHIOSQRNSggfrosxv{z|lhjoekpmsqfmlhikltmputwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhmf_pGJCEEDBBAE@DB>?>;;;=;=?DB?ACFGJFJILHGGGFEC?=DEB>ACBCEGHIGMPIFEFKNOKFHIFECDIIHKIGHPKDJMMQNONOPNJJIMRUURPXeaamfproryzgehhcilfqlflmgiklsmpvutpnvrosrsutqssutsuvvvyvutvlkuumrvqlnlerMGEDFBA@AD<BA>A=::=?;>?AB?@BEGJFJGIGFFFDCBAAEFCBBBDEEGGHFLPLHNIJLKIFHEFECCHHHKJGKRMCOONQOOONOOKKKPUWVVTY`_]i`minhrsbeffdhhfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwuksunutsprkksMGGEGAA@CD<AA@C<8:=>:?=@B@@@DFHEHFFHFEEDCEBDIFCGEAEGEFFGEIMKHQLJKHHIEFHHECIIJKMKPSNDRSQQRNOMOPMLNSWVWYVX^Z]d`hcjigk_defchggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxnouorsuqqipzMGGGHAABEE<@CBD<7:=>;>;AB>??CEFDFDDGECECDFFFJEEIGBGHFGFECFJJGMJLKHJKFIHJHEKKLLNORTOHTUTQTPQMNQNMQWZVZYWZ^ZXa```^hec`deggjhhjghnllomqpiuuxrrpupppruvpusuvu{~}xvtwvvvwplupmsunossyMHHGHCACGE<@EBD<8:>>><<BB=@>ABFCECCGCCDDFGGGIFGKHCIHGIGFDHKIFKHMKJKKHKJMKINLNNORUVOLVVTQTRRLOQPOTYZY\ZZ\__]_c^\bdlc`dghr
hgjfjnnponsqjtuxrsstrnpqvrquruus~y}uuvvvvxriuqkrtlqwquKIJHJEBDGE=AGDD@9<>@?>?CB<@>AAFCEDCHDEDFFGHFHGIKJEJHHJHFFLHHHJGLKLLLIMJMNMOLPPQUVWOKVVUSSRQLORRQV[[]^[]^``a`bf]d`fg`ehjdssfjhglprqossnswwpuvtsmoruorspurvrtvuuuwvuwtgtrkqrkrwpwIJKIKGBEDE<AFDDB;??A@@@DA@B>ACHBEDFGEHEFEIHFIHJLHHJJIKJFJKHIJJGKJLLIILKMNNOLOPRUWVMNTVUSRQPMNTSRW[^^_]^``aab`cdeadibdijgvlkigmosqpqpprywruutsmmssmqrotuuspswtuuwvuuteqskpqjrvpwJLLKLGCCAE<?EEDC=AACBBCEACDAAEGCGGHFEIFCGJGGJFILHIJMKMLGKIHKKNQKRPLSMJMMNPPPTOWXX[NSQW\ZSVPNTUTTXZ_bb_da^ac^`fcabgnhbihhmxvmhinosrpqrrrvtsusssnksqmprotvsqquvuswywutucmtkopjqtpwLMLLLGDA@D>=DEFC?CAEDDFCBEGCBHFBHJIGHJFDKJGHJHIKGJJNKNLILHJMKZfJd[KlRGNM_nUls[qpbwcRPbvuhucavaXnqbdvinzf\lu`lkV`wuhjghfglmjmojmosrprrqrsrssrtrnltonpqquurqstvvuuywutt`ktkppkqsqyKNJKJFB?@B?<DDFDCCBEEDFBEFGDDJEEJLKIKLGGNJHJKGKJIJJNLMMLLIMLL[sbdp^llULNer]geqlntgpi_aYnmbppbkijgoqtetnn\pvgpNLryvkaakeelxmkvlnosrprqpqrqrrrtrmmsnnoprutqsstuuutwxvutbmukpplrrqzKLIIGED?AA?=BEFBECEDEEDCHHGDDKHGKMMJLLFJNHJKJILJJIJMMNMMMKNMM[rponppkjLOPmXNibtrpamov\YlP[mmZqmkomxxtsip]`slqjUuyxoc^kfbgppjioppsspqpqqrrqqrrtlmrmmnorutqtrtuutuuzvutenukpolsrryJKGGEEEBAB=??EGBGDHEEDBFIHHEGKJGMLNJLMGLNIMKHJMIJIJJNONNMLNML\hdu]lqVkMOQnUZk^klvaldtTecNlYl\tpkilxjwuhp]_skhWbcw|oc`ghacityknnqsspqpqprqppprukmqmmmoqstqsrtvvswvzvuthoulsomsrtvIMGIEEDCAB<B@BFCGFKGECCHKHHFILKFMKKRRLHMMINJIHNGJJHINOMNLJMMJZtppoqqlkOQRnYskgooqqomt^nXat_nopoqroousttjZ^tcwxrjnzhaacfabjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyytukoumtonssvtIKHJCDDE@@>CCAFCHIMHFCFJLIGFJMLFOJJWRKGKJJNIIJLIKJIIKLMMLIKKKSkbYi^_jcrrZ_Yjo_eeUk_c[aaQ`mh\j\niid[oedp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrutwrHHFJDECFA@AEDCFBHJLGFCFKLIEFJOLIOJL[QJFHHKMIHJJKKIHIGKKKKGHKJLKLJIKLNT[]TPUMQONOOVQOPQNOQJJNPQdqiTYV[[\UYZ]X]\\cfaafbcf_^fkmhmtxrtroppt
zpmmlkqsttrtvtuyyxuvqruovrtsuusGCEGFF@EC>CGDEGCIKLGFDGJLHDGIPKLOKLWMIFEHIJHIKHLJIFHHJHHHEFLIHJNKHO\W^O\\`^OXYS\\b^MXZMXaRKYaZS`d\aX[ddVVX\YZX\VY\^c_d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtOBCDLLACDADIEGGFKJKGEEJJJFDGHPJLMJMRIHEAHFJIKKILJIGEJHEFGEEJGBILIJT_Y`X`a[`UXYT]^Z_RY\P^\YN_\^S[^d^Z]`c_Y_b[`^[UYXZ_^ccbaceiekrpoppnow
{
uqprrsuyzzyyxxxwryvxrqxvtvaSJJMHDCBCFGEGGIJJIHDFKKKEEHINJNLHLNGHF>GGLIKKJKKIGEIFCDEBFJD?IJHNZbY^^a_RTSW__\]Y^QY\MV_WKQY[Q[_ba]^ca`bbbcceZRYVW]Z^d`__cebhommllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxXQJFDGEBEGHFGHIFGJGHFHKIKDCKJMMLLHJJHJG?GFNJKKMKKKIGIEE@DAHIA>HIFO]`Z[d]_TQRX]\\\_[KW\LR\YIM^QQ]_bccccb\dcbdceXRWUT]Y[a_^_aa_dlkmjklnv~uz|
zrsuu{
~xpzwvx\RMC@IFCEKIFGGIGGJFFFILJNECKJLNJLIKJIIGBHHQMKKOMKKIHHFE?EBHHA@FECS]Y^X_Y_[]UXXO\\QKJV^X^[]VZaRR__bb``bb_cbbddbXPRRS\T\]]^^___dhgljnnp{{|~{
srw
|x\SKBAGGDFMRHDRKFHHHDFKIMPEGIJKNLLILKJIGDHKQOMLPMLKKIJDEAECHFAAFCAUUE\T^SV_XNTUMYZLJKT`a[_X_^b]OYb\``_bca]baW`_TQPQRYS^\[]]^`bffelfoow|{{}
zo
~INFDFFHDIScQEW_IGGHDFMJPPFIHJKNLLKMKJJGEJNQQNNPMNMNILBDACCFCB@CD@LHCLLPONLFMFFHIGFLKMOPILOPPSPLQSRUZXWYWWcVNRTPQPOQUT\YY[]\aaefchdlmqsszy{z~{}{
}KIEEGFGDKN^MHHYMGHJHGMLQQIKJKKNMUNOKKLGGKPSSNPPNOOOHLF`ED^LDfbCLZH^\smOMVmXKCO_TkVgI]WU^DLQULMSVQRTXVTXTT\TOeZhheZUkTXWU[\[``abbb`gignlhrz|}~}}zr{z{
~z{LIEFFHEEKPTJKG`THJOJIOMRQKMKLORUROPJLNGHMQ[YOPPNPQPJKQQI|YYrsWPmGqnoaVPqqtOBjsnqspSo_[nX]V\XUkhU]VcY`YZ^UUWituu_av_Xb\\f[_aaab^`cgmol`pwtx}~vxzmv~tx}|~|z~wwMIEHMMBDLLGJLFRVLKOHLRXWQNOOMQTNOQPKLOGMPS[ZTQROPPPKIZx]TxdhXRSPvftlpbnfkRrNLwmjrpsrqrpoo]ezuxqqzq~r}ku}aRh|essoss|}o~xor```bb[aahlnkblfgmw~~{xwtvzhr~nt|~wx{~x|u|||ssMKF`]GAEMMHKKHJPOMNJNV^YULQSNYYLSRRNLPIQRTYWWQTPPPRKHgxlcxqmZJKTypumubnvPddHevqmwojfxxiWrQhzmijzz}lxzphnXuujvupash}ilx|o___cb\_degjjegbcdllppstsssyqrxbltgry{ssuy~svzn|}yxrnMIRtNCBEPQHKLJLQOOOMPZ`ZXKTWPa^RVQYSMPJSTUXWWPUPONSJKrouuquqch`VnKqp^GhyWvTKhx}w`y{sna]modSgrunmypwlvstqlm\s~zkmy|lun|lqvux^__b_]_eeighfe^bbiiijknokqnmjpacfdowxompsynqpj{ztromKKZVHGEGRQKMNLLQQPPPQW\YUNVYUfXRRY^TMNJTTVWYWOSOONRIRmHiwK`dvvTVlNnl{rajguTKWkg|lmlx_Zpz{_`zscroxqhd|ir{]TKk_vuljv|{m~yk|p]^^b[_bdegfeec[ccikkrsrwgmihdg`alagsrlglmr|kmhk{tmmkmOGJKHJHHRQMOPLLSSROSRXRWTPWZVVTTTa`QONKTSSQVVOOMNOQJHQMOULKKRSRQROVUQQORRXXPMOUTWXX[[UQRW[WXW[ORTWWXQ]XV\UTOXRWWXYZ`\gr_[[Z]]_cZ_ccegdddcZdbgffmnmuffgc`f^]g`dlhfgkhpzhggkujhgilPIKKLMKJTRNRQPLVUTPTUXUZVR[]VUTWUYXOOLNWTPNUSNPNLQPKIQQKQMJJOQTQPQSRJHMOPQRPPPTURXW\WSRPQUUUSZQNRQWUSYVTXTSQTSUUYYX^Z_a]\ZZ\\`c\^bbdgeeebY`acabhhjncad^_c]Zc\bma^ffgmsdihkkedcfhQJKKNOLMTQOTQRMXWUTVXWWZVS\`VWVYUXTQPKOXSPNUPNQNLSPMNUSNQNMNQSOTPRTTNKMORTTQQQUWUYZ[YRURTXWVY\SOSTWUTYUVXTRQWUVX\Z\`]WY_]^]\]`a^[bcchgfebX``b]`hegea^_]]^ZZ_Z_g`^^]chkahfhfd`bdbPKMLPQLOTPPTQOQZYXWYZZXYV]jdVXYZWVSTOKOVTPOTPPQNMRQOQXTQQOMORTMWQSTUONNQTVURRRTXVZ]\ZVVQRWXU[[VPSUUUVXSWWTRQXVV[_[_`_V_]^`]\`___ZbceiheebYb`b^^fdc`b]\\\\YZ[X[a[^]]_b__bddbd__`\PMNNRQMRSPSUQOV\ZZW[[\YZ[dqmhd_[YVVXRMMWSMMROQROMPSRUZUTPPLPWUPVRSRXMOPRUXUTTSTYX[^]\[VROUVU[ZVQSVTVXTSXZSRQYWW]_[```Vb\`a]`b_\`]cachief`Zc`a__ee_`c[Z\[\ZZYYW\Z\[`^`[^^a`_c\Y`ZQNONVQPUSPUTSPW\\\Y^\_W\^jpwyc\[VVYRNPWSNQQPRTRLRTSY[WUORNSXUSQTQQYOQSSV[VVVSVZX]^\\^VSNTVV[[UQTTUWXRSY\TRR\XZ]^]ba`Wb[cb^ac_\bab_dgieg]\d`a`acd_b_YZ_[\[XXYWWZZZa]][]\\Z]`W[[ZPOOOYPUUSRXRTP[]^]\`\`U\\hjr}slh\UYWQOR[SRQTRTUTKQVUZZZSOSQUUTRNUQRZRTUTX]WXXSX\X^]YZ]UUNVVW^ZWQTTWXXSVY\TRV]Y]]a^cc_Y`[eb_dd^^cca^efief^^daaabcd_b^X[_[\[XXXXW[Z[`][[\[XZ[^V^Y]POORZPZUVWVTTT^^`_^b\`U]^bkyum}lZUZVQQT\TTTUTVYWLRZV\Z\RPUSWUUROWQSWSWUV[^X[YUZ^X_^Y\YRWRYXY_YYRTUYYYUWY\UTZ]]^ab`ed]^]]eabfd^_dc`\gehfdb`ea_aabb_`^WY^Z\\ZYYWV]Z]^[Z[\[WY\]VXW]SOPWYQ\UVYWWUX_`aa`c]`U]^beev{hXYZTVTV\XWWVVW]XOU\Y^]]TSXRVUSQRWQSVTXXX^^X][U]_X__X\VQXTYZZaX[TVX[YZWXYZWV]^`_dcbee^b\`fbdfd_`dba[fchfdfaf__abaa`_^VU]Y[\[Y\YY][[[XXY[YZZ]_]TY]UNTZVT\UWWYWV\`abcac__V[`da_zuohZ\ZVXVX[ZY[YXY`VOT][`a\UUYPTVTRUUQSUW[[\__Z_\V__Y]^Y]VRXWYY\bY]UVZ\Z[ZZYZXY__``dcdeecdZbfcgfe^ab`c]bciedh_g^bbcaa`^_XTZZZ[[X\XX\[Z[WWZXW\[\`]V]]SOVZVVZVYVXWX]_badada^YYadb`kfh^\][WWYZ\\\_[Y[bVSW^]ac\SVYPVUUUUUSUTX]]_``]a]Wa^[^\[^XUXW[Z__[^WX\\\]][Z\WZ_a^`dddffgcYcfehgd^c`_ec]fidei_g^cbcaa`__[XY[YZYXZXW[[Z[WXZTZ]\[`\U^bMRWYVWZY[\YWY^`baeada]^Yacb_a`a_]]]XW[[]]__\Z]cXYX]`cd_RXYPWUWXWVVWV]]^aba_b^Ya]]^Y\]YXUV[[`^\_YY^]^^`\ZZY[_b_bedefghcZefgigc_c^afeZiicficf_bbca``_]]ZW[YYXXZYWZ[ZYWXVU[]]]``baxKWW\YW]\\]ZW\]_`bdbca]`Xbcb`cac^\]\XW[\_]`_][`d\\XZbecaR\YOXVY[YYWYZ`^abc`ac_\b]_][^]YYTX]\__^_[Z^^`bb[[W[]`bbcedgffge]eghifcab[cg`\iichife`baca_`_]]\Y\YXWXYYW\[ZWVXPXZ]acffrkJYW][Z_]\^\X][^_bcbaa]b[bdb`cbb]\[ZWXjq`\`_]\ac_^YYcedbT_ZQYW\]\[Y[[c`ccc`bda`c^`\^^^ZXU[^\\aa_][`abfb^[S\_`cddfeggfff`fghhgdd`[eg^ahhcihfc`b`cb___]][Z[YXXXVZW\[ZVVULXX\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vuuuuuuuvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyyz{{zz{zzzzzzzzz{{{{zzzzzzzz{{|||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vutuuuutuvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyyzzz{{zzzzzzzzz{{z{zzzzzzzzz{{||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||xÅÔÒÒÒÒÔ{}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÓÏÄÅÅÅÅÅÇÒÔÔÔÓÓÓľ¾¾¾¾¾ÊÓÒÒÒÒÖº}~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}xÕçääääç{~y1333332j{éääääåàÔÔÔÔÔÔÖãååååäåÒËÌÍÌÍÌÛæååååéÇ}~}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}v~ywwwwwwxyzzzzzxooopppprrrrrrrwzyyzzz~
|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vtttttwuvwz{x{xwvy|zzzy}yyyxxxxyyyyzzyyyyzzzyxxyyyyyyyyyyyyyyyyyyyyyyyyyzzzzzzzz{||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwvz|y}}{}{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwvz~{}}}~|xxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z{xwwxy}}{}~|xxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{xzzz||||{~{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyy{xzzy|xxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyxyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxxyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oyyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{|||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|||||||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqppnnnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrqppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpppqrrqqqpopooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpooppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqqpppppppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqpqqqqpqpqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrqqqqqrqqqrrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrstrrsrsssssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz|~~|vvwwvuxzxxxxwwwvx|yy|zyy|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{{z{|{}|{{{{{{zyxyxxz{zzzyyz||{zz|||zzz{}||~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}|||~|}~~~~~}}||}}|}|}}{}}|||}}}}~~~~~
~~~}|}}}}}~~~~~~~~
~~}~~~}}}~~~~~~~~~~~}~~~~
|||{|}||~~~~~~~~~~~~~~~~~~~~|}||}}~
}||~~
}}}
~~
}}~~
~~~~~~
~
~
}}}~
~~~~~
~
~{z
~|}}}~|{|
~}~~~~~~}}~}}}
}|}~~~}|}}|z|
~}}}}~~}}}}zzz~~
~~~~||}}~~}}}}~}|zzz~~}~}}~
|}}~}}~~}~}{}~}}~~}}}|{{{zzyz~~~~|~~~~}~~}|~~~~~
~|~~~~~}}~}~~~}}}}{{|zzyyy{~~}~~|~~~~}|~~~~~~~~~~}||}
~}}}~~~~}}}}}|||{zyyyy}~~~~~~~~~}~}}{|~~
~~}}}~~}}}}}}}}|{zzyyyy~~||~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~~
|}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
||||}}||}}}}}}}}}}||{z|xyz{|~|~~{||}
~
~~
}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~||}
~{z|
~~~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}||}~}~~||~|{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{zz|~|~~}~~~~}}}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{}|||{|||zzy{|z}
~~~
~~~
~~}|~~}}}}~{{}}~
{z{ywz}~
~~~~}}||}~}|}}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}}~}~~~~}|||}~{{}w~vx~}|}|}~~z}}|~~~~~~~~~~}~~}|~}~}}|{|||z{z}~~|}|}||~~|{{}~}~~}{{{}{z{{{~~}||~~~y}~v{vx}|||{}}~}}~~}~~~|~~}}}{{}}|z||~||}|||||}|}{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~~}||}}|}}}}{|~~~~}~|||||||~~{|{||||}|}|~|}||{z|y{|{{}{}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}}}}}|}|}}}~|}{}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~~}~~{~|}~~}}}~}}~}|||}}|}|}}}~}}~~|{{{||}|{z{|yzyxy{~
~~{zy{}}x|zr}{{|||~~}}
}~~|~~~}|}}~}||~|}}|}}}~}~}}}{|}~||{|}zzyyzy{{~~
~~~z{y}}zzz}q~z{|}}}}zx
~}~~}~}~~~}~}}
}~}~~}}}|~~~}}}}|}||{|}{{{zzz{{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv~
~~}~~}~~~}~~~|}}|~~~~}|}}||}}||{||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xvw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||{|{|~
~~~~~~~~~z{z}}uqz|zqz}}yxtt
~~~~}~}}}~}~~}}}~}~~}}~}}}~}~~}~|{|z|{z
~~~~~~}~~~{{z~~xry}qzx{xytu}
~}}~~~~}}|}}~~~~~~~~}~~
~~~~}{z{z|{z~~}~~~~}~}}z{|
{{sy{|pwuvwyvtz
~}}}~}~~}~|}}~~|{{z|{|~~}~~}}}~}}{{zx|vyz|qtxwvxury
~|}}~}~~}|~~~~}}z{{||}}|~}~}}~~~}}}~}}}}}}z{{|v}yxzzruyyvwwsu
~~}}}~~~~}||~~~~{{|||}}}~}z~}~y~|||~}~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}~|~~~
~~~~
}}}|{||yz{z~y|yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst
|~}~}~~|~~}~~}~}~~~~~~}||||zyvyyzyvyv~|{{{~|{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~}}}}||~~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{z{~
}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvqwyrx
~~~~~}~|~{~}~~}}}~~~~~}}}~~|~~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}}{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~}|~}~~}}|~~~~}|~~~|}~}~~~
~~|{{||yw{ywxwwx{{z{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqspxwq{
~~}|~}}~~}~|}~}|~}}~~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{|||zzzzzzxsvupprowvr{
}}~}~~~~}~|~}~~~|}~~z}~t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~{z|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyysuuooqpwst}
~~~|~~}~~}}~~|||~{{~yz{z{~wwy{|{}||||{}|}}}}|}|~~~~|z|}{}}{yz{zyystunsqpxruz
~}~~}~~}~}{~~{|}{z||{yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}{||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~~|z}|{}~xwvyyy|}||}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~}~}}}|}z}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{~~
~||||x|yzyz|}|{||}}}||~{{{zzzupxwyvu|uv|
}
{~~}y|zzz}||}z||}}|z{~~~}}||}|vrvxxvtvt}
}
~
{||}zz{}}||z|~}|}}~~~~~|}}~~}|{xvuv
~
}}||{||}}~~~}~|||}}~~~}}~~~}}}~}}~~||
~
}}}||||~}~}}{|}}}}}~~~}|~~~~~}}
~
~}|~}}~||~~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uy~
}y|~{
}}~}}}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqtpurstv{}uvy
hzrss|s}}}~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vyy
rpvxqvtturstvinrotvnulwm{snym}rsvsvmmxlpylu}~}~}~}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}}|}|~~~~~~~}}~~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyqjoyxpkyszozwvvp~~~z~}}}~}}~~~~~
xyrz{pp
x
xyks~y{krz|m{yyt}vnoot|uwqy}}m~uo
zrr{|upozls|nw~~}}{}{|}}~}~~}~}~|}~~
}w
}~{|{~{||}~}|~}}~~~~~~~}}}~|{|~||
}{{|}{||}~||~}}~~~}}|}~~~~~||}~{|||{{~
~|{}~{|{}~}||~}~~|~}}~~}}||~~|}|||}|||~z{{}~
{{~}|||}}|||}}|}|~}|}}|||}}|~}{|}|}|~|||zz||}
{}~}{||~}|}}|}{||||||}{{{}|{~|{|}}|}}}|zz{{||
zz
~|~~||}}|}}|}z{{z{|||{{{~{{}{{{~||||}~}{z|z|}
|
~~~||}}{}}|}zz{y{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yzzy{}}zz{{}|}||z{}||}|~~|{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yzz{|{|{{z{}}|}|~~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|z{{{|}}}|~}||}~|{
~}}{
~|}}}~~~}}}}{|{zyzzyzz|yzz{{{}z{{{{}~}}}}||}}|
~|~~
}}~~~{||}}}|~~}}~{~{{zy{zyzz{yzzz{{|z{|{{~~}|}||}~
~~}|}~~~
~}|~~|}|~||~}|~}}|||{{zzzzy{zzzzzzz{|y{}{|~}~}}}
~}~~~~}}~~~~~
~~||~}|~}{~|}~}~}|{|}{{zzzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7:<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFL=8765999<>9?<D:;<8:<>;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>9=::;89:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<9<<97:9:::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÕÔÔÔÔÔÔÕÔÔÔÔÔÔÓÒÓÔÔÔÔÔÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9?CE@<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËÊÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÙÙÚÛÛÛÛÛÛÛÚÛÜÛÛÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÚÓÒÓÓÓÓÓÔÔÔÔÔÔÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILO@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÏÐÏÏÏÏÏÏÏÏÏÏÏÏÖÞÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccdddeÓÒÒÒÒÒÒÓÓÓÒÓÓÒÝãâââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVN<::77>C>8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÌÐÒÒÒÒÒÒÒÒÒÒÒÒÑÞìëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSQblkkkkkkkkkkkkiUSSSSSSSSSSSSTKCCDCCDCCDDCC?]ÒÓÒÒÒÒÒÒÒÒÒÒÒÐàìëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;@C>6:7>?;=B?9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÌÌÑÒÒÒÒÒÒÒÒÒÒÒÒÑÝêééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWVepoooooooooooomYWWWWWWWWWWWWXPGHHHHHHHHHHHD`ÑÓÒÒÒÒÒÒÒÒÒÒÒÐßëêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;>@@8:;8<;;<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÍÐÒÒÒÒÒÒÒÒÑÑÑÑÐÜèççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbbaoxwwwwwwwwwwwwucbbbbbbbbbbbbb\STTTUUUUUUUUQkÒÓÒÒÒÒÒÒÒÒÒÒÒÒÞéééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB?;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÎÎÎÎÎÎÎÎÍÍÍÍÍÍÎÏÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÏÎÎÎÎÏÎÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÍÎÎÎÎÎÎÎÎÎÎÎÎÎÍÌÌÌÌÌÌÌÌÌÌËËËÌÌËËËËËËÌÌËËÌÌËÍÔÔÔÕÕÕÕÕÕÖÕÖÖÖØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<8@B<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÑÔÔÓÏÎÑÒÎÏÒÔÕÔÐÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖ××××××Ö×××××Ö××××××××ÖÖÖÖÖÖÖ×××××××××××ØØ×ÖÖÖÖÖ×××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÑ°ÎÓ¸ÏÑÆÏÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÏÉ»¸¯·¹º¸¹¯¡ÒÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D>A98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÑâɣ¨²Ñ}~¯±ÒÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<:6?B@C:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÑ¿§ÐÓµÕÓÍÄÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8FA?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏѺ¤¬ÑÖ£´ÔÓÀ ÐÐÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÑÀ ¥·Ø¢µÔÕ°¢©ÕÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<9765::6:<;7<@@<::=:=?>=<9@<<::9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÒ¦¯®¦Ù¢µÔÕ¤¡¹ÔÑÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÑÉ×Ä Ù¢¶ÔÎÉÒÑÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:969;::;8@?:<<9<>=;;:?9?;<9=>==;;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÅ ¨Ú£µ×áÒÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÉÁ¡¡ ¿Ø¢´Ù²¤¦ÖÒÒÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÕ«©ÕÖ²ÆÖ¹¿ÕÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFHKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>;=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÔÁ½ÕÒÒÑÄÕÑÑÂÓÒÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELL@>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÑÔÕÒÒÒÓÕÓÓÓÕÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ>>786977899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9599:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9948<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EILAALD??;:889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEGIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDJ;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGIB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?:8776=??@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@BB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEFC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<;DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGGNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995686673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668784;?<?=9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiihxsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptyvt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsoupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8<:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495666788:=;<>:<::==9<<=<==<;=DHDCA<<<<>>@;8<815:AFEW®µµµ¶·¸¸¹¸¸¸¸¸·¸¹ºº¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676889>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498566:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»ºº¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545659756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjdmgb\XQPQKTJB:IQ?A7<94:565455588686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸········¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®xpljac`YQMQLRFC9MPE>8;727967443578797;::==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µµ¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥¨©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢¢¢ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:9:>7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¥¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AB??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<;;9:765846789=88;:;?;:;<:9:7768;;;=<::<=<7;>CBDC?=AC@DA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?B@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤££¡¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::88:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££££££¢¡ ¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¢¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::;;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=:;9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥£¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>99;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤£¢ «cimnifm £¤ ¡ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9;;>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<>?::97;8887489<;<8;;<=:=>:?A=:=<>>@@=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:<=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<:7:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_]]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;97::;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=9F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:846<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8537:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VPQAELOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8AB?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
}§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s}~
z}}¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
z||}~x
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPFMHSWRe^gTPL\QHLRCA997958866;79:<:>98;:::<<>=<D>96;;88>95157BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~}}¨®²¯¯µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWLO_^\NUTbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5256AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
£ ¤£¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJCPK_bXZQ\S_MHQIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©¨§¡¥¨¨«©©¯¡¡££ ¡¤¤§¤©«®¬¥£¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdVOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®ªª«¤¡¢¥©§§©¨£¢¤ ¥¨£ ¡¢©§ ¢¢®¬«ª§®¨¥¤©©©©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPORd\dc[]Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨¦¥§¨¦©¨£§¦¤¥¢¡ ¡¡ ¡¤¤¢ ¢¢ ¡ ¢¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOWO^ddlgbbZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤¢ ¢¦¡¦¦¦¡ ¡¤¡ ¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvwa_\UYQUV[c^r_h_cSQYTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;><@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯«ª¬¨¨«°©¨©¨¡ §©°²¯¬£¢¦¡©¥¤£¢¦ ¥¤¢¥£ ¥¢¢¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[_^Z\V\hdocnihb^PP@?;:898<;624333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£¢ª©§®·¶´´¶³¯¬«®«¶°©²±®§¦¢££¢¨¥¡£¡¤¢§ £ ¢¥ ¤§ª©¨ª«¥©¤¥ª§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxib[_^\bY`dnmkna_d`POA@;;9;8:9614364777:=:<;9==B?>?=<:?9;;<>BE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ª²¸¼¼½»º¿´¯±³µ´··¯µ´µ²°¨¤¢ ¤ª¦¦¡¤£¤«¥¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨©«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥ ¡¨¦¦¥£¡¤¢ ¡¥ vxyxc[RYT__alhukpgiibYSL@<:;89797556285678:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶³º±ª®´±°±´´¶¼¼¾¼¼½Æº¸·º½´¯µ±±º¸·²³²ª¦¦¤¤§¨¤®¤««µµ®³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa^YTah`fsositcidb[LK>:8898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÃÆÃù½¿ÀÀ½¿Ä½¼º½¾´§ª±À½¸µ¹À³¯¯ªª¨§§¤¯§ª´¼±´µ¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`a^^jbbnwuvnm[bQU\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAB;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±±§¼¼¾ÅÄÆÉÇÅÆ»ÄÀÅÆÀ¹¯½¼À¾¾³«ª³»¾´µ·Âº¯°µª«¦ª£¤§±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklfnuqruqf^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<;>BDE>>=@CCCDD;:8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿µ³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÅ¿ÃÂÆÅÀ±¾º¿Ã¶¶º©´³´©«³»»±±¯¬¤¬®´§ª©¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tkkndolhqxoyiia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABB@=@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐËÆÆÀÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÃÄø´À·´½Á¹··¿À»®¥®·¼·£·°¦´µ¬®¥¥£¨¤ ¥ª³²¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸¸»¶·´¬¨©©«¦¨£~¡£vyz{vnkiguZfrwsxff]d[RXIF?;78876169754333646;8:<;=<8=><:;<:=;;>>DAACB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÉÎÉÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÉÆÃÃÄÂĽ¸¾ÁÃÀľÁÏÏÎÆ«¯¶´µ« §´³®«¸µ³«©£¢©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuueeijh]jomxwbb``]XWFE8:8:979449766512335;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÏÏÌÃÇÆÈÈÈÇÉÇÅÉÇÈÇ¿ÅÇÄÄÇÈÊÒÏÒ̼¸¶´¸¸Á¾¾º½º¼º¼¬¦©»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqobagugihtmxl]d[U_YLHD6<9988:53:664413525;:<>;;<=<;<=<;<?=?B?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÍÐÎÇÌÉÂÁÆÁËÊÈÆÌÉÍÅÆÅÃÆÅÉÍÐÍÏÌÇÄÀÃÂÉÍÇÅÁÄÇÁ»¾´±°°Á¾¿ÁÆ¿¾¸·Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlidtnsb\bTWTSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<:>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÅÇÈÆÒÉÁÃÿ¿¾ÄËÈÊËȼ»ÈÇÉÍÈÃÈÉÉÅÅÃÂÁÂÇÇÉÊÇÌÈÇÈÍÆËÏÅ·ÀÀÀÀ»»½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrofegcjdajmnn^X\VUNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾÆÁ¹»Ãº¸¹¼¾ÁÆÁƺ¹ÉÉÃÅÄÀÄÁÂÁÄÁþ¾ÂÀÀÁÂËÃÆÌËÅÈÑ°¾½¸º»¼¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbabccjbfbZYY\XQNE=;9:;77996499:5314527:;:@=?<<977;;::<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿º½À¹½ºº´¿¸µ·³¯»¼·À·¾Â¿Á»¿À¼»Å¾»ÁÄÀ¾¾¸¼ÁÁ˾½ÉÄÀÀÊÀ±Á¿»¸»¾¹µ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ §¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qc`bbgjffiei]UUSYOSKE8?6;:779;65:;<6313417;98?=>;<;76998:<=@?>@==?B><@ACCA?C=:6<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µºÁ¸¾¸¿¼½·µ·°®¸¶¹¿»ÀÀ·Á¼»Ã¶ºÈ¸¶¹»½¹º¶»ÅÅʽ¹ÅÀ¿¼Á¾¸Æ½ÁÀ¼Å¸¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¡¢¡¡£¢ £ ¢¦zxpmedfoiekgXXNKKJRILHC9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<97>BDA?@88?þÆÁÁ¼¼¸¸º¿¶¼±Â¶´¼±´¶¸³º½¿½¼²¯¬±°·¼¶¼¼ÀĹ···¶º¹º»À½ÃÀºÄ¾Ǹ¹¸·µ¸º´·³»ÅÆËÁ»ÆÀÀ¿½¼¿ÉÃÄžƸµ²²½¸¸¸¾ºº¹¼»º´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksebl_[THKJDJBCG?9;8=<7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??==97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼¼À·ª¤®°·»³½¿»Ä·¶¸¶·À¿Ä¼ÂÅÅÇÇÊÉÆÏÂÁ¸®¶µ¼¾¸»²¾ÄÄÊÅÁÉÿ¿¾½ÇÌÇÇÄǽµµ¶Á½º»¿Âº¿Á¿½¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qelintnwcga[bPKTHEECGC<;98=:7:=:89;7<=53650689:<;@=<;><9>99=>;?>C<?>@?=??FD@A?>:7?@CC?A=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¹¯²¼¼°·»¶»¼««£°¹½¾³¼¾¼Å¸²¸¹½ÇÉÊÃÇÈÆÆÉÈÌÎÑÌÊĵºÀÃÈ¿¿µ¿À¿ÆÆ¿ËÆÿÁ¼ÀÃÌÊÇÅÆÁ¹½¼Ä¿À¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_b^aaMHM?E@?DC;;::;:8;<:9<>9:>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED<AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿³½´¸Á±°±´¼Ã¼ºº¾¼Ä¿·½¿½ÇÌÆÇÉÆÆ¿ÄÄÊÈÌÌÍËÆÂÃËμ¹½º¹ÀÿÈÆÄÁÁ¿ÅÀÊÉÃÃÃùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw{_pc[]_^SI>BEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=@>AAA>>ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µº¶¹Ä¸µ¼¶º½Á¼»¿¶¿Á¿¼¿ºÀËÂÇÈÀ¿¼¼¿ÅÂÇËÈÁÃÀÀÉÊÂÀ»»°´»½ÀÅÆÅÅ¿À¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}zmsxsgp]Z^\YQEDCMIAD=G::59;:<<:;;;=?:=54512788;<;B;?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯·¶²µ³·¹¼»¶»»½ºÃ»·½·¹À»º¸¸µÅÁÃû¹³´ºÁ½¿ÇÀ¹À¼¾ÅĽ¾¹²°®¸·¿ÃÇÃĽ½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸¸¸½¹»±¶²ÈÀ»¶´±°·¬³©°³·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¦¢¥ª¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|vluzpmh\__YSPAEHGK@DCH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÁÀ·½¹¸¹¶µ¿³´²¸±»ÁÀ÷·°µ¸¸¸Âº´»·»¾À»»¼®¯®³²¹ÁÂÄþ¼¿»º¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ¯µ´´½º¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zsvvwmp`^e][TJ<>?FF=FCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Ã¿·º·¶¶²´À¶²´¸³ºÀÁù·²²²´²·¾º³µ²¼º¼¶º¾²´´´°¸¾ÃÆÄÀ½¿¹³¯²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qtwtvql^b`[]NHA?=HCFMD@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·À½»¼¸¶º¶±Àº·¹¸¹»ÁÁÄû»¶´´°¶º¶´²¬¼¹¸µ¸Áº¸³±¬·¼ÁÇÿ¹ºµ®¥¬³°¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅɺ½¾¶±§¤¡©±®µ¹¶²±«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{wo|ourmc\fX\]RNMA>JB@JI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;66:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³±¶º®¬¼²¸¹·»¿½¹¾À´¿»¼º¸¾Â¼ÂÊǾÀ¸¹¶²´¶³´¯¬»º¸¶¹Àö®®ª²¶¼½¹¶²±¤§§£¦©®¹¬««¥¨¤«®®§¯¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬²®³©¦©ª®©¢£¢¢¯§¤¬¦©¡§§¦§©¯¶²«´¶¯ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyrvsmtik][jT]\OMHDFLAFMF8665:5:>8;97<=:;=:9236777>;=>::?><<<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹½µ²¸´¹ºµ¹»µµ³µ»¼À»¾À´¿¹¹º±ºÃ¼ÂÊÅ¿»¿¿¹³´³±±®°¹¹¶¼¸»¿²²²®±®¹¯ª«¬£¨¡¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬«¯£££¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndT`cW\QNLH?HQDMC=8875:7<>:;<89<;;<;8248978;;<;8;=>;<<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢¤ § ¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼¸ÀÁ¾¼¼¼¹®¯²²ºº··µµ¼´¯´«¶º¸ÀÄÁ»µ¼½¸²³°¯¬®·¶²´µ¯ª¤¨¨ ¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨ª«¥££¦¢ ¥£¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ x|vybwln\PhTPNGOLLCOQ@>;>39:5;9=;:9=99<;<<;936996:;?=:8;:><:=;9;=;<<=><@=?<8;@@A???949<7ACBD=@Cª¤£¢¡¢«¥¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¹µ§¥¬ª¨µ²±°®¯²§¦¯£¯®µÁºµ·²·¶²´«²´®ª«¯°²´®¥ ¢ ¤¥¨¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦©°£¥§ £ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}|uu}mk{dhUQcMIHGNRMJMG;D@<2?859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡©¡ «ª¦©¤©£¤®¥¬¬´¼·¬²±¯±µ¯¯³µª§¬£ £¢¥¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¤¡¯¨®²«¥ªª ¡£§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}vx|dxz`bRU_HIIKSTIRPL9>A67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ £¨®¬««¯ª¯©¥¥¦¤ ¢¦ ¢®«¬µ²¶¦¯´«©ª´±°°¸§¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«º¨¦«§««©¬¬§ £±±±´©±¯¢¡¤¡ £¡¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvshle\SZYMQJNOTLRLA7>B68<76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=?758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢§ §¡¤¢¡£ £ ¢¯®¬¯±¬¶§±¦¦°®¬°§ ¢ ¡¡¤¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½·¾°¬±®©ª´±°§«¨²µ·³·¬±´£ ¥ ¬¡¡¢ ¤¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xuiwu]mZR`HQUHFUVJBMG=JH8E<67;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:>758==?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¢¢ ¢©«§¬©ª´«««¥¥ª¨«¬ª¥¦ ¨¥±ª§®£«¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼·½³³µ¡«¢©¨²©ª¨§§©¦ § §¨¥¤ª¡¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vqmivmhm\X[BVMJGMGBFM<>L=4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?858<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·£°¦ ¤¤¤¢¤£¢ª¯¬§©£ ¡¬¯®ª«§ ¢£¡«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶ººÀĹ½»¬®§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â½¸³»Åü»·³©²ª³´¯³®©®£«§¶±¬¢¯¥ £¯±°¤¤¯£¡ ¡¦¡¤ªª £ ¦¨¡¢¤££¡¤¦¢¤{trkkurphW\QETHDIPH>EA4EH95;=6;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¢©²«»²¿«¯¬¥ ¡ ¥¥¦§ ¬±¯§¤¤£¡¦¬¦ym ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌËÌÒǾ¿À½ÇÆ·ÃÉÈÂÀŽ¹³¹º´»·°µ²ªº±®»¶¾ººª·¬ªª¸º´»®¸£¥¢§¥¢£©¦§ª§ ¡¡¤£¤§¢~zrkdioxjeZ[FJLDDSLDBD7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ³²¸§¡¡«ª¢¡¢ £¡¯³©¡wsqnp¦®´¹Å»ÍÇË¿ÂÌÎÍÌÈÉÑÌÍÌÇÉÅÆÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÒÓÌÓÏÓÓÌÊÂÅÆÆÊÇοÈÐËÆÅÆÄÀ»ÂÀ¾¾¾µ½³¾¿ÂÃÆÄÆþ¸²¸¼ÃÁÁº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLCEPIDB@55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>8;AA;;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª££¬®¦¥±ªÅÆÌÎÍ¿°Â©¥¨ª¡£©¡ ¤±±«¤ yrroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕ×Ò×ÍÆÇÉÌÃÅÊÏÊÓ×Ñ×ÒÕÕÓÓÈÌÇÍÍÉÒÌÍÓÍÄÇÉÉÀÅËÇÈÈž³³ÇÄËÊÊÎÅÉ¿½¿¼ÁÆÄÌÌÈɿÿ¯²¨¢ª£¦©¬¤¥¦
{ruvgbhwidVWQDMF@IQB=B<:23@<D<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A:9>8:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤¯ °«¨¬±ÉÍÔ×ÏƻǬ´¸¬®£¤£ ¤¬©¦°®¥¡¥¢}wpkebhqoq{
vpnqtp
³Â¾ÅÑÐ×ÖÖÒÖÍÔÖ×ÔÓÑÓÔÔÒÏÑÃÐÓÖ×ÕÖÒËÉÎÐËÆÍÒÊÒÕÖÙÕ×ÓÖØÎÒÉÎÑÌÎÐËÒÏ¿ÇÆÉÂËËËÎÏÅÆǶ¿Ê¿ÒÌËÏÅÉÇ¿ÃÂÈÎÌÏÐÎÌÊÇ͸·»¨¦«§£ª¥©¨¨|xsvpc`erb]R\IJFAEHI>;@8=4585:76:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦¬¤°±©¨µÐÔ×ÚÒÇÆË´¶ÂƲ¶©¢¥¦¡¢«µ§±¡¦«¡¡¢xida____^_`^blusqpolrquÄÇÆÔÕÖ××ÓÖÏÕÔÚÔÔÏÏÕÔÔÑÑÌÑÎÓ×ÖÓÕÐÏÒÓÑÉÓÑÈÐØ×ØÑ×Ò×ÙÕÖÌÎÏÉÌÑËÎпÅÁÆÅÎÌÐÐÑÈËÌÀÊËÅÓÎËÎÇÃÉÆÆÈËÊÔÓÐÔÏÒÌÒÁ¹Å±¥¨µ®§¨¬¥²¨°³¬¬
{zqstmacim_VP_JJBFCQM?<>44:=52755<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;9<74:><??=FAD=¤ ¥¥¥£¤££ §¡©¯®«ª«¦®¸¨«·ØÔÕÙÙÑÎÐÀ¼ÌÉ·À¯§«©£¤±¶³£¶ª¡ª©¡¡~rfcc__a`_a`_``_`fmppnkorvwÌÀÒÕÓØØÖÙÑÒÒ×ÏÓÎËÓÍÕÔÑÊÏÌÓÖÒÑÖÍÐÕÕÑÆÑÔÊÑÔÕÖÎÒÐØØØ×ËÈÎÃÈÎËÊÌ¿É¿ÇÈÍÍÏÊÐÍÎËÎÏÇÊÏÐÊÎÊÁÈÆÉÌÊËÑÒÌÓÑÑÏÏʽǹ°»¸µª¶°¨¸³¿»±
yvopokbenpaW\ZIFFDLWE;@<33<=86855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><=>:EBE>¥§ £§¡¦¤§¸¶µµ¥®¾µ±ÀÙÓ×ÚÜÖÏÍËÃÓв«®¬¦³²¹«³·©£l__^adb``aa``a^__^]bmroostuvy¤¾ËÕÑÖÔÓØÖÎÎÓËÍÎÅÎÊÒÒÏÆÎÍÍÔÌÎÓÍÊ×ÕÐÌÑÔËÌÏÑÓÊÍÑÕÒÕÕÊÀÉÁÅÌÂÈÉÂÌÂÅÇÊÊÎÊÌÌÐÍÓËÅÇÏÌÇÇÊÄÆÀÅÉËÍÏÐÆÏÎÍÍÌÏÅÇÀ·¹½Âýù²³¾°»ÃĶª¥¡
xprkmh``qhXXhVMGLIPPB;D>;67:89:56==A<:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;;;<=A:EAE>¨¤¤ª¢¡©©¥ÅÃÁ¿»µ²±ÇùËÕÖÙÚÛØÌÍÏÉÖÖÅĸ²¶ª¤®¹¹±²À¡}fbcb`]^acb`_``aa`_][]grqqrsqmry¤ÆÓÏËÐÏÔÕÉÄÉÉÆÆ¿ÃÅÎÎÇÅÇÍÊÑÈËÎÍÆÑÒÏÎÌÔÊÇÊÍÎÇÆÏÒËÐÏźľÆɼÂÆÈÎÄÂÇÀÆÍÇÃËÉËÏÇÃÃÏÈÆÁÆÇÿÀÇËËËÎÂÊËÈÇÌÐÄÅǺÇÃÈÈÂÏÀ½¼¿°ÁÊǺ½ª±²§¥¢¤wntdk`^fqa[W`GHHGIMTG?J=64355<<48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79;>=;>=FAC= ª®¥®ª« ¥³±¬ÉÍÊÈľ½ºÍÍÆÐÕÕÙÚÛØÐÊÐÐÒÔÊź¾¾°©·«¿º¹³¥~
t`[^^^`^`cdc_]]^_``_[Z\akrrookloo}¸ÑÈÉÊÏËÍĺ¿Ã»»º¹¾ÈÆÂÃÀÃÇÊÉÈÊÇÁÅËÆÈËÍÉÄÁÉÉÁÁËÐÄËÈ¿¹ÁºÅǽ¿ÅÎÊÿúÉÇȺÇÆÄÊÀ½ÁËÆÅýż¼¿ÃÄËÄÄ»¿ÉÂÅÇÒÅÁȾÊÉÆÇÆÐÃÃÆïÄËÇÄÊ·¿¼º´©¬¥¥¬£¡¥£ {vrtfiZanmZ[XQDLFBGDLCFR?54334?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ËÐÑÌÇÂÃÇÍÏÎÍÕÐÖÙØÙÐÌÔÎÏÐËĸÆÁ¶µ¼±À¶º¬{
vxusq_Z[]`abcdded`\\]]_^`[YZ\borokilposƼÉÅÌÀÆÁ°¶º²²´²±Á¼»»¹¸ÀÁÁž½¹½¿¹ÄÊÅƽÆÀ·»ÄÉ¿ÂÉ»·ººÅ¾¼ÁÍÂƾ½µÀ½Ãº¼Æ»Â¹³¼Åö¿¶µ¾¿ºË¼µºÈº¿½ËÃÁÅÂÅÈÅÈÅÐÆÂÌDzÆÉÃÎÍÁÅ¿½²·°³§¨¨¹±¥°«¬yvwjeh`hocV^YJEJFHKAEBEI@9:648853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9;<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÆÂÄÈÎÒËÊÊÇÍÍÏÒÉÑÆÖÕÖØÏÌÐÈÍÈÊŽÊÁ²µº·»¶¯
y~|tud\\]^``bcbbeeb]][\^\^]Z[]]hsqmggnpry½ÌÀúÀ¸°°§ª¬§¸´¶´³²³ºµ½±·°´®²»Â¼Áļ¿ºµ²º¾À¸Ç¸³»µÀ¼·½ÆÀûµ®²¶º¾³Ä·ºµ«¸¼½À½°º¶¯¶º²Å¼¶®»¿´¶´Å¼¾ÂÅ¿ÃÄÅÇËÅÀÆÆ»ÇËÀÏÉÇÃÆÁ÷þ¾¶¹¾Æ¿¬µºµ·¶xtxfgebkn^V^`FKHHJFBCADE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¦«³±¼¼± «£¯ª§¤ÆËÎÈÆÉÎÌÐÍÎÉËÉÌÊËÆÑÏÓÑÏÇÊÆÊÅÄÀ¼Ï½³¹½¹¸·{y~wx}th^]]]_`_`da^cec__\[^\]^Z[[]_lpmhfjnnr|¤Ç¿¹¸µ°«¬§¢ª§«¬³©«©³¶°²¨®¦¬²¼º¶Ã¹º¹°«µ¹»´Â¹¯¿°½¼»µ»Ç¹Â¶ª¨°±Àµ¸¼¯°§±³´»¼«µ¥®¶®º±°ª¹¯»»¸»¿¿½¹Â¿ÆÂÅÀ¼ÆÁÈ˸ÅÇÅ¿ÇÃúÄÆ»ÅÉÌ˳¹Â¼º²rvvkiablhYWW[ALKMIEAC?FA;9:995854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<:9;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÆÏÒÌÄÆÂÅÐÈÏÃÄÇÁÆÆÅÅÌÃÊÌÃÄÁÇÀº¼»Ê·´»½µµ«|y~z{xn^]]]]_`__dcbccb`_^[[ZZ]ZZZZ]dmohggiknr¹°µ®¦¥§§ ¤ ¥«£§¢«©¬ª°£¦ªµ¶±½¹¯·¯¨®¸´´»·³¼®·¹´±»Á±Á®¥¨¢«±²³§¼ª«¨«¬´´¦¨®¡¤¯©²¥§¨®¥¨·¬°²·¹º»±¼½¾¾Ä¿µÁÁÇÈ·¿ÀÅ·ÄÂÀ»¿ÄþÄÈÌÊ¿¾ÃÀÀ©rsrji]aodWVXPHZRSKFFE>?@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·ºÄ°¶°ª©°±³µ½¯ÆÑÐÍÄÈ»»ÌÃÌÀ½Ê¹ÀÅÀ¼ÌºÃÇź½Ä¾º·½Å¸¶¸»®±{~xt|swf_]]\^_`^_ccab``_^]\ZXY[[YXZ\_fkfegehkor
ª¥¬¦ ¡¥£¡£ª£¢¥¥§¥¤¥«²¯¶·§°¬§ª´«´¹°¶´¬¶¸±¯º¹±·¤£¦±§«§¹ª¤¦§¨§² §¦¤¦¬§¤ ±¬±³²³°µ¼¶»ÁÁ²º¾ÃÁ±¹¹Â³À½¿µ¸»½¾¼ÂÆÄÂþ¿Ã wpkae_ko`UY_HNhOTGEJF<=@=:;;8255369:8;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:7676778666;::;9;;<859<:>>@;ȵ¶½¸ºÁ»¾µ ¡¦º¶«³³»³ÅÐÉÌÃǹ¸ÉÂÎÁºË¹½È»¶Ç»·ÄƳ¾Å¼·°¹¿»°³¶¯¢}yvtpmkjjqi_`]\\]_`_acb````]\[\\XYXXXVX[]^dcbegggjmo© ¡¢¡¢¦£¥¡§¢ª°¬±µ¢©ª©«¬¤µ¸·¯¬²´®³µ®±ª£¢²¤¥©¸¡¦¦¨¬« ¥£¯©«§ª«¬°²¸®¸¹»°¶»»º«³²¹²½´¶±±µ´¿µ½¿½ÂÁºº½zrk_e^ddXTX^IW]KPGIJFA<??@;?<04535:;9:899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÐÉÉÁǼ¼ÅÅÐÁ¼Ê»»Á»µÅ¸µÁÁ³Âļªµ¹·§±²©ysnpnkc^bff]]^]]]\]_`abccba_\[[Z[YXXWWWXXX[^bddeffhikr¨¡¡¡¨¥¦¡¤ ¯² ¥¢«§¡µ°±±¬§®²§¹³¦¶¡¢£¡¢¡©µª¢£¦¥¦£¬¡«¦¢£¥«²³ª´°²ª²¹´¯©¯²²²·³©¬®±·°ºµ¹½¾¶³±yue^e^[YVSZUL\QLJEHKIB=?AA@@:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ¸½¿¶¾½¿³¥£¥±Âµ¶½µ¸ÃÍÉÈÁƸÂÁÈкÃÆÀ¶¼½¶Ãº¶¿Áµ»¿»ª¦±º±§±¯}
ypqtqhediec\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXXVWadecdeddhjv¢¡¡¡¨£¨ª¦®°«££·ª ®¨¶©¦¦¬°£·°£¶ ¢«¦¡¬¸¯¢¡¤¡ ¡©©£¡£ªª°¨´«ª¦²°¥ª®²±¯°®¯¦§§²®±´¯»³¹·£yud^aVYWSRTKM^LPLGHLKE<@><B<;7653498899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼´¹Â±¾¸¼®§§£ª»À½À¹®´¸ÂÍÈÇÄžǺÊ͵ÄÅı¿¿¹ÀÁºÀÀ¹º½·¨¨±»¦¨¡¤~xrjlrtpihedgb\\ZYZ\\\]^]\[\^\[\Z[\ZXVWWVWXWWWU[ccbbcbcdfj ¦¥¤¥¦¤ª¯¦¢£¶¨ ¡¢¨³¡¥§¤¯¥°¬«´ ©¡¡¬±°¢£¡¦¦¡¢¤¤¤«£¥°§¥£««¥¨®®®«¨©©³¥¦«¯´±®»µ°¯®yvrea\Z]XNLQGRaMVPOJMOEBD?9=69:764599;9887<89=>;>;<69:7;6;7;;:85:;:;;6<;8846863321./2556;:8;7876<;:;;A8x»»±µ½°»²·¬¤¦·»¼Áź±¹¶ÅÊËÁÄÇÇɸÈƵÅÂÈ®º¼Â¼ÂÀÁ½¼·º¶¦§²µ¢wodbgihfhjgjm`]\[ZZYZ\]\[\^_\ZY[YYY[WUXWTTWUSTRU``_`a_`acdi£ ¥¡¥££¢£¡ªª¥¥±© ¤ª§¡¬¬©¨¢¡¢¢«©°¢¡¢¤ ¡ ¡£¤£«¥¢¤ª£«®¥±©¦¥¦¦µ¦©¨³µ´¹º¯©¬rpo`[WVUQFQOHZ\ORJTKSLEGIC8;;=<8666:9;::76977:;:=<=6;<8>598:88659:;<97?<9678452121..1426:869869898:;9@9{µ´´»²°¬²§§¯¹¹³¿Èº¶À¯ÆÉμÂËÍÉ·ËÀ´ÀÇÌ°¶½Ç»ÁÇý¿·ºµ¤ª¯®|uijjmhjlnkkme]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\]^____bdm¢ §¨ª§ª¥¨¤¢¤®¤¥¯© ®©²¤¦£¤ ©© ¡ ¡ ¢¢ ¢ ¡¨£¢¨« «¯¤·¥¢£¢¬©¨«¯³¸²½µ³«¯rrh[YYSUREYLQ\YMTNPLQRINIB<??A?=65799<<987:79:;<=>;7;;:=67:;8976989:6:=99577571141-+/434988::8::748=8?9~³®¨³¶®¨§¯©¨¬·¶¬»Ê»¶¿¬ÌÇƹÂÏÐɵƾº¾Æ̵±½Ä¼ÂÅýÁ³¹¯¥ª¯«wxoninnnqggigd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUTSNPQYZZZ]\\^_`d~¢ ª©¦ª¦¯¢§¬ ¤¨§®¦©¥¡§ª¤ £ ¡¥¥§¨¨ ±°¦±¼¦£¬´«§°´°¹µ¿±±«|prbVTUNRIGVQRRLLXMJLNRGMKACFDC>@75889;9:7::7<=:;@>:9;9:?759::876958779;85576661320-*.102877;99;8948;8@8³¦±·ª¥¢°«ª§©²°¤¶Æ´¹º³Ëƺ¼ÃËÑ̳¹º¾ÀÅǶ´·¼²º»Ä¾Â±³°®°¬¢khmoroqkpkdfge^ZYZYZZZ[ZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajzv¨ª¤¤ª§ ¥¢£¢¢£§ ¡¡¤¤¦¨¦¡ ´²§²· ¢·¬ª¤²²¦µ¼µ««±£xrm]NPQLOCNNNPLFNNKJNNQHMJAGKHHC=858889:;69:68;99><8:>9;?8789:886857688974577820301+)-/12776:999984988A7w¶§¤¶°¤§£©¥ ©¥¤³ª¢²Ãµµ²³ÇǸ»ÄÊÍǵ¯¼¿¸¼Ä³³®¶¢¬µÄº»¯ª¬´¯¯ ¨}^`gsqvqjnifhhj_XYXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQNMKLSWWVXXYX[]aosvp ¢ £¤¡s}
z¢~~tz¢¢ ¡¤£¢´¯¬¯¬¥¹¦¥°¡±®°»ª©¯ªvrbVLQOPMCSNLQMCPPHHMSMHJJDJLEJJ<749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-12764789::65:87A7w·¢£´¨¥¥¨£¦¥¦¥¦³§¥´Á¸°´°ÊƹºÂÏÇ¿µ¯½Ã¯±Ç²§¬£¿¸±° ¨¬ª¢rWV`hgihincjhgb\XXXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTQMMJHNSSSTUUWY[]ilrl
|tNXr_;Wo{
ryz
}xqo
~¡ §¯¨©¨´¢¦¬«§³¡©£|qm_ZNSQVLDTJPMMFOOJELQMKOJIMOFIH=7599999:7:;:>>8:==6:?8>?589;79675333760.-/344110//()++-3854779<:79;86A9x· ¢¡¦¦© §¨§¢©°¨§´Â¹±µ°Éù´¿ÏÀº±±¸Ä«®É®§¢
¢º§¨¦¥£ iPNRVZZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORMKHFHNQQMPRTVXZ`moiztPB@}
x`JQnx|~n~wuvxpQ{~xvgw
~¤£§©¥£±«¡¤¤¦ª¡©¢¦¨ske][HQQSMIUMSILLPIGFJNLMTKQQOFIC<769:8:;;8:;8>?99>=7;<6;;478;6775344696/3/.115221/,')+*,4833979:99::::?9v¶¢¦¡®¡§¨¥¦§¯¬ª¶¼¶¸¶³Â¼·¨»É¹·©ª·¸¶Àª¢²¢ eMLNNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZntw~ji]Ut{
{uxsnupty}ªyzhv{prmxxz{vrrxguzz¨ ©¥¨¤ ¤qf`\\JVOQGKXROJMMSJJJLPHLQLRTMEHA<78;99>=:;<98@?::>=7==79937795675252572/2.,//200/-+(().1262198798775:<<7v®£¡³©¯©¥¬«°±ª½´²¼¸¶»µ³ ¸»³««¬µ³¥¤fJIJIGFHHPTTTWWSTUUUVWWWXXXXXYXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQRSV^u}ygw}gyvx|r|v{ok~|s{}tfv|
lohs|lyq}pmurhq}pCwwz}zt~£¢¥umkeaYWXTQJSVTOPOQWKNKOOJQOIOOKFD<;79;::?=9<:99??;8<=7<9999266856633621224.,,-..-0-+*''*.1362/876966527995y¦ ¦°¬®«§©°¯±¬¼¸¬»¾¹´®©±¨§¬§¤}|z
eJGHFB@CDILLMQRPQSUTTUVWWWXXYYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNPQTX^eprm§ªÀ~uyb{wo|yy|
omxsxjjr}Inhw~licly
ksl|nr{
imp~s
z}~zvott
ywp|}lhmnmWUWTRQYOSUUTYVMNHNKNNKCINGE?:89;99:><9<;::=>:8:;9?868727575541442/024*+**-.+-*(*(',-1250,5567485HA895w¤¯¢ª¨µ¯®¬´¿«¼Â¿¦£¥
¢¤v}|x~t}xuw|fOEGD@<>>AFGGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jrAo;<95<_IMOORWZRY\`§bitze~omzutlts|jkLyg1vsl~}tfet~
filukp{gpp{n{s}}qpnum~wytjyyuiingcWQYWXY\NPVWZYOIIEJJHGBAFDCG=998;9:9<:9;:::@<9:<98>787715244533645031.**+*,,++)(+'),,226-+5775478iO8;5n¤¨²¦º®«²°Â²»ÃÇz
swvwuxvoxsiUFID?<;9:?@ADDEGJLOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOPQVLAIQIb¯³ q|xm}lq
yyr txsu5q¨¡¡¢vp{{shfbimqmouioXuovl{|mrnpzsumbv
vy~}xpnnj^Z[][YXa`SO\[YXLHJFJG?CABG>CD=;97=;:;;9:99;:?<88=:8;66651121353475531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥´¨°®Á³ºÁÆ}nw
ny{{q{t|ko^JPG>@7458;;<=>@BEILLLMNPQRUUVWXYXVUTSPLE<5*K[@-gI94/>©®_GLMNPL7CMRSDJv||v~lw|}
~v¢y~
aªzv~s{\dqtz{wmgiayo
znwszqsywkni]w}|}q
|uw{|tmqrde^ZZ]S[g^XQVY]WGKKELG?F@DC>AA=;97<;;=<::99;;=>79>9986754244004645654-,)+('''&(())((+++/00Uq<23331E~W4=9\w¦ ª°©¯À±»Åºzvk~
yt¢
s}lylSXLAE311267688:<?BEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJi{y|r|z|~v¡¥¬©H¯¯¨sl|}hggx~m
q
Gkxqyvhmk_w}
z{uv|xmow~}qqpjZ\[ZccWgf\VPQXZQDLLGOIDFCCA@CA=978:::;;:888::?>6;>7595773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|~
¬ §¹¯³½´}tq~}¥yu
y_cVLC60./23133668:=??BEGHJLNQTTUTTVUSQOGC?80,#[>?84.]ps£UFIKMNPW`YpZ\^j
~
¡¥»±§»Èħ¡¤{r~v
ihotqv{v
}nvug¢«£{{zogkx}w|qic\YY\i]ag`ZOLNXSRIQKDNGCKDCADDA<:87=<:<:88778:==8<=68756623445576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nvpgx{¤¡¬¦«¯°¡xw}
mpj^CA4--////02234779;=?BDHJOQRSRSSTRPOHDB<87/9C><<63.lMPHJKLKNV`cggmu ¡£©¥£¬¨¶¢§Á®ȯxº|¡¡
lpuvql
r¡¥¶©¢
~kjk}~}q_[b^Yfj\ll_XKHOSQNNLFIQDDNFBCEGB>:97=<:;:987767;:6=:785456345566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<unhYppuqv~§ ªhf¤}
z}
xxhNR>//.,/.-/000212457;?CFNPRTPQQSQNPIEE>;<:CF?><752<?R5HHHLLMNR^o|s} §¦¢¡¢¨©«¨¬©ªµ«¾«¶ÈÉ·ÈÑϾ piª¨
§¡wz~¡{v«³ }¤£§¶°¨lss{|ynf^[__agc`gg]REKKQOJJMFFMCHMFFCBGDA:85<<899975658>75=84745754546958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f3A@ib_Pqu`n}aw}|ªªBD}y|
w_bP460-1/,.00./..0015>AAMQRSPRTUSNSLEE@<>=FH@A@8662<9;FHGIJNOQYmw£§ªµ½¸¥®¬¬¨©µ¬±·²²»±³¾³Ã¬»É˸ÿ·¥£°²¬¬ª£
¥¦ ¢¦¢ª§¤
£ ª¡¤©°¤§¸»¡£°££¤¢¬°³¶£¦«z{~{e^fZc`]bc^fg`[ODIHTOFHLFKGFGHAKFCFFA;87=<88:974658<54<76:54644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicWjpXz
v
ÚÈsV|{
qna@E64<3/110-,+-1/-4?DANVQRSUUWUM\QGGD<>>FHCDA8;<5C;=FKIGHROPW ®£³ª²ÁÇÄ«³Å¶´À³¸¾¶¿µÁ¶»»¤¸Æ©¶ÉǶ¾¹´¨£´°°§¯ª¤w¤¡«±³©¨®µ»²º¬¯µ¢±¬²µ¼¸µ®µ §¨£¨©°®³º¸¹¨¸ª¥ zrW_bUd``a__f`\UJDELVRIJKEJHEA@@KDBMF<867;<97:986555711<8895466497>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AEWQJL\ZQcdWzuq}v~{¿»£¼´z
zyo]W@EN<6:46AB764//7CHCQ\OQUXU\WO_UIKJA@>GKFFD;>@7D7?BJJEGWTP^¤¤²´Ã¶¸ÁÌÊ·¼Ä½³´Á·¸Âµ¿°¸t±´¦ºÅ¤°Æ¹±³²´¨¤¶¶ª° ¢¢¥±¥¬§¤ ¬³º¢©²¹µ»¾Ì¿ÅŽ½³Â¸º¸¿¸»¸º±¦±ª®¾±½¼Ãû©®«~yhUa`WicieV[dZWUJGGLRHDIKAID>?BBL@@MD99669:?6:9966246/19599364627;=?6:1./57::650*(,---,,*((++(ES/*00Jk52Pm6?FRLALRWTYVZwjpo{rxb¹¡£|z||}xzufP\dGEL:Qd`[^SF?;HPE[cQQYYZgZS`aMSOEA?IJHEFA@C<D6B?HGKMTZT^¯¸µ»¹ÉÀ»½Êͼ½Á¼¸¶¼»·¾µº²Æau²¥±«¾ª¥¨«ª¤¢³µ «§®¥§§¥£¢§°³§²²¼¶Á½ÓÉÉÓÆÂÅÌÂÊÃÁ¾¾¿¼¼¸µ°¹··ÃºÆ¾Äɱº«¢¬¦©·|o]^^\U`]hfSYbWSWIEFOK@>HD=KB=B@=F>;H@796379>489:57045/26389374526?8@>GKRTTRPPQRQJA9/,,,*+((,-+/P>(.48}<2Kq9>CKE@JMPRLQ]hmlqslrrsÕÀ¶ }y{{yt}zlfpvY]\Peeb`ed][XX\NdmURmn_o_XgeUYTJDBKKHFHHHHBI9D@HKTTV]Z[¹À¹¾¸ÆÁ»¹ÊË»¶º¶¸¹´¸µµ®··du©p^¢¡¢¤«¥¨¦£¬¤ª°¬·°¼¸ÔÐÎÖÏÉÌÒÌÏÎÊÇÀÀÂʽÁ½ÁÁÅÄÆÊÀÉÏ´¤¼±µ°¬¹½}wi[]YW[_XabQ\aTRLCBFHF<@F>BIB@D=:E>=J?47535;=468977022/24169775555D3ELM>510006:477@IOJ;.&**(-./,@M+/54mI0Ht?>BD@CDGKODR\Zi`pnlotu³¬¡¡
|s{
{tt{ylmu|iseilhfjih`fiimZnt¤½g[oh]ZYTHKOPJKPLSQHLAJFKP__bgjb¸Ç°º´»¾¶±ÅǶ°¹±±»³²¨¬¸¶¨§N §¥¡¦¬¯¨¯§³³ÔÔÔÖÑËÏÓÔÎÓÏÌÅÂÊпÊÉËÉÒÈÍÎÃÐÒ¸°Ä½Äº¦·»Å¢~laZZ[V^VYdZP]XORCBHFDJ;AD>BH?@B8;D>@I=56655;:687654/10146278875367C5B8?-0,1348=97,.,1;FL=),(.0007K?-46TW0DwC;B>EBACJM?UYSfWshrpyy¡ª¦}|
p{r~qyulqxr{nxslipmcinpyix}~Ë¿Ãߧncxnd[a`KPRUNY^P]]MQNTQUT\nnwr®¸¬µ¨°¶«½Á²«µ¦¥¹§¬¯¢¬´¤±®§«¬¤§¢¬¬ÎÒÕÑÍËÒÓÓÐÔÑÎÈÃÔÑÈÎÒÓÓÖÍÒÑÅÒÖÆÁÏÈÈ鿸ÐvkbZ_[U^Q\ZPPUQOI>AGBCF=AB?FE>@?:==<<JA45465<888664412/03526768533;=<E=@11+/349?5901022-2EO3)/3.32=N248C}_2AtD:==I>@CFH<VRMO[uwlwp}~ ¡
y
{r~z
v
owsls}|w|sxqkrriprzyr{¾Ë²vr
wiai]DZZ[WfdXekTX]]ac^cx{ª¤¤¢ ¡©¦ª±¹«¦´£¢®¢¤®£§² ¦k£~
§¯¡ ¥¤¨ÈÍÏÇÂËÑÓÑÔÒÎÓÍÆÖÓÍÔØÖÖØÕ×ÕÊÕÚÍÊØÖÑËÄÃÌok`]\VRWR[PJHJJK@;:;EBD=CD>HC?CB;<9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/-.;R017/532ED28>nb5=tM99@I<AD?A;PLFKYqv~isyr
xys{}w{oxqnvvx}t|ylvun}vuy|¶<AÆ¥~}jeWICecfchjdoy[_fhlnin £¤¦²¤¥² ¢¥¢©¢£²~
zª£}ª³§¦½ÃŸ¶ÅÍÑÐÒÐËÒËÉÔÎÑÕÚ××ØÔÙØÍØÛÎÉÚÚÒÖ¿ÌÍ´tskaZWPSPXUEGKJFF>:7:@BC:GE@EDBDA;?;;7DC75655;0689443341014558754449@>DBC<33.6FTWOQJAJF?2*(.BT29254/7K75<`bA<svV87AH:?B><9QECJTlnopbqqt}
}x
{
yq{{v{zp}ppzr{rnzuw}}u}°tYªÂ·pnc=^hrqqpnwwfiorvyrz « ¡¬¢ ¦ ¬
}
~lz{®«¦®µ¼¨½ÇËÈÉËËÏÉÄÒÊÔ×Ø×Ø×ÔÛ×ÓÚÛÖÐÚÚÒÖÉÕÌuwfeXWNQR\GCFII?B>=8:>@<>I=@BAAEA>?:87DB755479.566435532323647553458EBDCEB56<FNSM[nfcnsk`V>,4LG865433BF4=W_hLux^8;?F<<A<:9D>CGRk_mdbflvqy~
|}wyo{{tz¡vvtu~too
u}
zw|¸Æ¥ÃʸxpfNeczw
¡yyw{|vm¦ £¬
{| ¼ ¨¦¥§µ¿¿¿¸ÇÉÍÎÅÍÉÑÕÕÔÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÛÆvvdfa]RUUTMKDND;===9:<?9>A7>?@=?>=9867CA6455=80665547745613854564557HH=DJE7925;H>;9;7IP\ZRUXK9T>;95327I8=NYMHxxd5=>C=<@:6:>>@EQ_Yfa]\itzylwvz|~~{~
z
|v~un}}~t |~x~yot~
|~{©Ã ½¤~
}ss¦
{iGp¡¤
¡~¦
¤
·¡¦ £®¶¹´«ÀÆÊÐÈÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×Û·uutgfbT]YRONHDLC>=?99;:::<>6A>?==9:;;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<:DWN<MTHN?96333>C;[X>5YypZ<<A<=>8589?=DRSRX^VXfmmmiqsx{{||{}|~uzsztm~~w
¡n©
{¡}
£¢¤¯
Wr«[¢££
¤²¡ §²¸¬¥½ÂÇÍÈÆÏËÏÌÎ×ÏÑÔ®ÖÕØÚØÚÚ×ÖÙÚlyqccZZUQUWC@ID???:49:;7:<;4<<?=>7;::1:G=:27=@50677255?65;55858:57735HR7GOK994=EJB>1FCLB98:GX@5HWI66223:ECeX?&_yi_z>>9<;88;<@;BQKKSYPTcbymb~onxyz{}||w
sp
{uwvt
}¦¢¦¢¨r³¨
£ ¢©°o·ÄȲ¢¦²d¤ÍÇ
«¤£
¤¨¡¢²´¥£½Á¾ÇÆÅÈÈÉÂÊÓÌÍÔ¨ÒÑÖÖÖØÚÔÓÚÎo{d`[[[LHTZBBHD<B>837<<:9>64::<:72?:929I:>67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF>;88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHSWSRBcGv}|m~y{~{ww|mn{}xx|
~¢³§£ª³¢§ ¥¤®¢¸³¢¡¥°£¤§¨¬¯¤¡À£É¸«£¦®²
¨¢
u²¥¡~ ±®¢¤¸¾´ÅÇĽÃÃÀÆÍÊÉÓ¦ÎÍÔÒÐÖØÓÐغovrY^S]UNGINEACE5?;77:?<<7=43669774>5;5<L<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=88467=:JFDGNZ\YJf`;Izzn
z}x~px}~}osz~|y¦»¬¨±½¯¥³³©¤¢°¬µ£¹¦¥ª¸§¤£ ©ª¤®°ª »»®Ê¡j·¸«°£¬¾£^ª²|}´«¡¡ ¥®¨¡¤´¸«ÂÈĵº½¼ÅÇÇÂÑ¡ÆÊÍÍÅ×ÖÑËÔmweYWQ\PNEC?=CBB8@885?G=<6<35345454B49:BM:B;AHC;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPdHb`bpI@~s}un}|}pww|©ÁÀ¯½Æ»³´À½µ«³¶¨²®®¾«»¥¨¹¹«§¦¢¢¤£ª¯²±ª¤£¦¥¤º¯©À¼®²¹¥¤¨~½°z¨±¬ £¬ ¡¦¥¤¢£°²¦ÁÆï°º·ÅÄÿͦÇÄÇĽÖÑÍÅÊ
po^YW\YLJBKAFH?A@C;:5>A>=5=7>333241A17@BN>G@CNCA=C=;86CC5BIB:878:5B>79VKDWOF8=4K@C>4EKHN>BA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUN79GD?CF\eF`igZ]]{uo~{q~zz§³ÆÉ¿ÁÌÂùǽ»¯«º»³·º²À®¥À¤«°»½ª®«££§«®µ°ª «¡°µ§£»»¶Á¼¬©³¥¤¨
ªÄäz¡¦ ¯« ¡³ ¤ ¥£¦¦¤¯¥ÀÄ¶Éþ¶Ï²Ä¿Ä¼³ÑÊÈ´quiYUYgQLHCMKLJAB>DE<5AE<;3=8B332263A05IEN>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBeZMe\eTbjyr{xy¡¨º½ÇÈÉÁÒÉÊÂͽ³¼¾¨ºÀ½»Ä·¬Á©¬³¼¿ª°ª¤¥¤¬®³¶µ¡ °¥¢£´½ª©½Â¤¶·¯¬²¬¬¬ª¦¥¥uy
££ª¥|£ ¢µ¥¤£¡¥¥¤£©§¢²¬¨»À拾·ÌÀ¹¯Ä³»¾Â¹ÂÃÂÀiv^UTYXJJLIFDDIDCBDL:4DI:;4=8F.12242B26SHO<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQG7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>iH_XaZccV x
¡®§¤Â½ÇÃÇÅÓÎÎÍ˼¸°º¼´½Ë»Ã¶·¼³¿¹½®¯¨ ©¨¶®©²·¢§¡«·¸ª¥¯¿Å²½º³¨«¶´®®¥¬§²Å§||ª¥¡£¢Z¤e¢²¥¡ª«©¦¦ £¨¥¶«©¹»Ã´¥´¶ËÀ¸ª¶«²»¸®¨¸º½·hkWTRSMEJRMK?BHEEIHG96FM;>7>AK.32025C55OVN<LFKRLOHGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C>4FE:BABG9/:A3603>GD94=tdMG;E+:f|gV;>@BFBpEjIReaLF¥¢©¦¢¯¾¯¡Æ¼ÄÄÆÆÎÎÎÒÊ¿»¶²»»»¾ÏµÄ¾¹¹·³±µ³¸³«§«¬¹ª¨§¯°¤¯¤§¤¥µÀ±¬¬´¿ÃºÀº´¨º¶¹´¯¥¯®¤¡tÂ}±¥£ © `J¥T¯¯£®ª¤ ¥§¢´¨ª³»»»ª°²ÈÀ¹¦¬«²²£¡²²´¤mkcYWMOJDOPPR;HKIHJCD>:KU?A:=EM07544:B44MWO;JKOUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@BAF3>58JKCA=C;5EA:A?>H@5*B52,>c]g:35tde@R7}hW;:BC@=QEWSsbWFHª ¢¨¯¨
£¤µÉµ©Å¹ÂÄÈÊÉÈÌÍÇ¿»³®¹¹ÁÁ̵Ⱥ¹µº°¯¯³µ¦£ª´µª©¦¬¥®¥¤¨¬º¿¨¬¶¸¿ÂÀ¾¹³³Å²¹¾¤¯µ¬¹¦¦v¿®¡¡©¨ª¡§nv¢¢®²£«§©ª¬£¢¤§¢±¦©«¹¶½²²®¾¹· £§¨¥¦©©_b^]OJKFGMJVM=NFOKMBDD<QV=AABDO18=76?B75UXO?HNQYSPQUKQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=.-R`MUH~e^HE«¢»¯ ««¡£¬£¤¶Æ¾´À¹ÂÂÇÉÅÂÍȾ¹²¯ºµÁÂʵƲ¼µºª¨°¢£ª´»¦©¦«ª©¯§£ª«½»¨½µ¸¾Ç¼·¶¹Â²¿Áµª¶·¬¾¥£¢ ½¡·©¦¢¡¨¤³ ¦¨ª¤¡¢ ´¯¥¥¯ªª©¢¢¨©¤¡¡³´º´¨¶²³£¥ª¡u\Z]\HGEFLPINEGHCSLJBEGAWSCH=AGQ1;B7:BF79\YKALPTUSMWRNUJE@JJNO9D@5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</';*HB:SJ0,[oW71<*BdT49-19f\FCCpbGE§¤Ã¥ªª§¦¬¢«¶Äü¾¶ÁÂÀÇÄ¿ÌÅ»½¹²°¹³¿Âǵ¿°¼·¹¶¦¤«« ¡ªªÄ¢¤©«¦¬¯«¢©©¾·§¿²¹·Ç¶µ¹¹À³Àø¶³´°½££® ¢£¥££ ½¥©©«¡¥½¢£¢©¬¡¤ µ¬¦°¦®¥¨ ¥¤«±µ±ª¥ª®¬ ¨e_W_[MHGINLHFDIA>QIA<GII\ROK=IOU5BF9>HG5Ca[KBNRUWVQXTRUI@8RQPM:GA4CHQSIC;C>GVKC@O>K<06;GF>;FA55?9:?9;15D0-,/Mv\4KZ5,MnW<-=)#zbQ5CKQ9mQF<KxeaVK¢£Å¬¡¬® £¤ ¦©¬¶±£ª³¶ÅĽ¿µÀ»È¾ÉǶ¸µ´±³´·ÁŶ¾±¸µ¹´¦¬ª¬¥¤Á¥© ¤©¯¢¦¨¼µ¦±½¹·¶Ä²´¸»À´Å¹¹¯³µµ£¥¡® ¢©¨¬£Â¬©¬®¦ ½¡¤««¬¦¡W¥¡ ¸ª¦´¢°®¡£¥±«©¢¢¥¥¤^aXb_KGJJNFEAGK?=JB99JKN]QQI=LW\9FI=DMI8Hb\LCLPSYYVWOZ^IA=WQJL?H?5HLXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6S[kWqGE6=ue\KM¡Ä¨¦¡´¢³¨«¥ £¬©¬»°¨¬¶±ÇÅÁ²ÃýÆüÄɼ¯°¶°µ¯¾Ä´¹²°º´¬¨±©ª¥¡§Á¬±ª£®°©¤¨¼¶§·»¾°·Ä³³ÃÀ´È´¼¸¬´¶ª¢¦¤¬¢ §«°¯¯»±¦ ©¨¢£¸ ¡£°°¬¥¦¢¢§´§¦²¢¬ ¥«¯¥¦¢
~_dYfdIHLISAC@IH;;F?99ONV^RSJ?P^]=HPBLLI9Nc\LELRTY[SUO\bHA?ZQAHAKB7FELKM?;BHDNB=;N@A3/97CB97F;+6<46<25-/4@1+'VtSeO?104b[M23>0<v]^?[T]ep@8;HweA4£ 餪³¢¤µª³¬§¡¤²¬®©»²±µ´ÆÀÄ´ÀľÉĵ¿ÇÁ´«µ¨°¹¬¿Ã³¸¯¶¹¥ª²««¦»´¨°¬ ´²§«¹²¨º´¹³¹Àª·²Ä¾¶Ç¨À¯®·µ©§¬¡¦¥¢¢¥¯¸®²µ¶ ©¤¤ ·¢¥¥°²²§«¦¢¨ ¡¯²¢¦¤ª¢
¨¨ª¢¦¡
wag[jiLOMNT=CANC::I?77RO]^RVQAW`\BJSHVKH:Ud\NFON[W[RPQX]GAB[PBG>NC9HGHOP??CIBLB<2IA94177B>;7E7+6914801-/.<6-#Bqgsk23/1[bZ33806p[bH04IogUCWFyfC;££¡¦¿§¨¯±¢ªµ«º±¬£«´¶±°¹·°·¸¸Å½Ãǽ½ÄÂÆÀ¸ÀÅÀ¹©¶¤¬»ÀÁ··ª²º¢±²¤§ª¹ª¦°« ¯´³«©µ¶¼´³¹·¬¸±Ã»ÀÀ§Ä«±·¯©««§«¡¢¡¡±¯³¬°¹©§ ·©¦£¢±±´¬³¨ ¥¢£³¯¤§¡¨¨¦¢
}hfk`lmWPQ[UABET@;;IA7:XPd^PWWEY_^NMRN^KJ>Yc^NHPO\UYPKTWZI?DXPDF?N@=IGGQPB=DEBM?:1D?77547?=95E4+75/251--.,1=*'+=\p=>1.0dZd@1647gY`F(?8l}g[V;{cC=§¢ª½¢ª°¬¤²¹ª¦¶µ¬¡µ½¯³¸»º¾··À¿ÉĹÄÃÀ¿·Ã¼À¶®µ§«·±»½¾´©®±¶«®§®¦¨§»¤¬³«¢±°³¬©µ´µ½®±²µ¬°´³Á»Æ·¬½°±¸¬ª£²¦¥ª ¤³ª³««³§¡¦¥´®¨¡®®±¨´²ª¤¨¤¢¨µ©ª¦¥£
{djqfoq^FYgVDCMWDZ9HB6>]Qh\NZ]G[^^ONRXdJJB\b_PLMOXWXPJVVWL=EUJEDAM@AFHHQPA;GDFK=87B=68719><65D0+80/05/*,/-*=,,%2+*5K1/'__`U150=`V^8*C3YU\gK6zfL@¤¡¥·¥¬ª¦¯®·ª¯¶¼¨§±·Æ·±¶½ÁõµºÄ¾ÌƹÃÀ¹¾¹Ã·À¸²´¬©º¶º¹¾´©°µ§¬©¬«««¾«±£« ±³®µ²¸¸ª®¯±¨µ¯µ»¼Ê³ª·¶±´¯®¦¡´ © ¦²£®¡¦¯¡¤£¦¨³ª¢§³«¶¥¯±µ¯£¬§«·¢¡ª¤¢¢ z
{jmwlt{aFakYIGZZ={JFD6AbTi[M\bK\][RSRb`LKE_``QLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76((9.$:K5."U_T_/5(C_Q\.*A/JGP[G3cYUKD¡²©²ª¬¦¤¯®¶ª¸¶º¥¬´·Ê»´»º¿¿µ³·ÃÀÌȼüµ½¿¿·¾¼±¼§º¹·µÂ¶ª°·§®«©£°©¯º¤¬±³§¨£²´±²°´±·³©¯¬²§·¯·´ÄÆ·©¶·¬±©§£¶ ¨²¡¥²¨ ª©£¦¦¥¸¨£²µ¬¨²¨®±µ«¤ «¨©¸¢¤§¤ v{lovt{~\Lfm\KNc\>b{GI8GgWf\L^cMYYWUXTi]OOH`]_PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANGe27'GbLV%-A.=ELQ<3rkICC¥¯¥¯«¨¥±³´«¸²¸¡¬µ¹É¹Á»Â¸³±µÂÂÎÅ¿Á½³¼¿¾º¾¼²Ã¨©¹°µµ¿¼®«²± §±¦¦¯¥²µª±±¬©¨µ»´²´³ª¬¨¬©¸²°ÈÁ¹¥º±©¥¨®±¦¥¤¯¤©°££££¤ ¢«¦§º¥¬¶¶¦«¬©°µ®££¨ª £³¡§ w}
|{|
prq}||\Sdo^NXf\FD[G;NmXb\M`bNVWVWTXg]QRLcY[TKGOTSNGIVS\N;P^IBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/+1()+,-*&5*/&0)38:1&*3Bc:6*HeHJ+:G>3BHS,>k;GHª¬¢ª±¤©¥´µ²µ¶²²¢¬®½ÌºÀºÇ±´´ÁÃÑÅƾÀ²¾À»¾·»Ä§¬¶¬²·¼À¯«±¬£§©©¥°£ª²ª°«¯®°®«³¼§¶°²©²©«¥¥£ºª²Ãº¶»©©¨¬©§±¥ª¥£¯ª¨¢£¥¬¢§©¢¦¤®¬¸³²¢ª£ «¯°¬¦§©¤¦
¤~~
|v~
rqptl_ZanbQrp\K<
|F?XuXaZNd\NVVUWQ\a^SONgXVVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*25>10485(5/*,.30;),,'%234$,2-860)(1;\J0.JgDF8<B/4EKX2@Y=LE©¢«³ªª±·¹·¯¬¦««½É¼°½¶Â¯±¬³ÃÃÎÏþ¿³ÀÁù¿³Ç믷²¸¿¾±¬«¤§ª°¨¨©±¥´®ª±®±±´¬´¼¤·³¬¬®¨« £°·«ªº·¥·¶¤ª§¬«ª¡©§§²²¤§¦¡¡¬ª¡ ¦¥¢ª¤£ §±¸®®¤¦£ª¬©¡¤£¤
££|zs|ru¤xk_`meWdcN?gLEbyWbYReUNVUVTO\]aUKNhVUVIJHIOBGISQYoANX@:JGFEG>>EQH8CKE87C72:::*39?./463)4+*,+.#4.-+&(+79*&6+<-2,&06VZ.0JgAA<<B+:JO^4D=GFD°¦£«±«ª®¶¬·³¬¦¬ª©¼ÀÀ·¸²¼µ¦²°ÃÉËÑ¿Àº¸¿¾Á¹Á¹ÀĬ±´±³ºÀ¾²°®¬««¨¶ª§®¯ª¹°¨²±®²·ª¸¸¦´¶«¬¤©ª¤³³©¨¤´´ ·® ª¨ª¨«§ «¬©º¶ª«ªª¢ª ª¡ ¥¢¦£ª¨µ¯©¦«£¤¥¨§©¢££ ~
¢uxt~xv}oqgfow\`rjO^VHnyUeWQcPMVTUPOXZbUHOiTVSGOXUI>IHOQPxLNW=<KD?@A<@CUC9AK=5;E13;:7*4:=+-341*8**+*,))(/*&)%3;,$2)2021%/1Pb02?f=NX>C,>LT_0Ji5OD<±¢¦¬¯¬¦°´µ°¬¦°ª©º¾»À°¹®¡¶°ÉÇÈÑÀ¾¼º»Á½ºÂ¿¾¿±±±µ¼»Á±±³ª³©¤´©¦®³³¹±£®¸²°³»¬»°©¶¬ªª«£ ¶®©¡°³¢¶ª¨§ª£ª¡¢¨½¯¬®¢¨¨ ¬°¡¢¡§¨¨«±ª£ ®¢¡¢¤£§¨¥}£
xt|uxyyrrxf¤vi_ditf|RXp_JxsSdTQ_MMSZfNLVYdXGRhRQ?BNQaQ:IHLSIqQLS;<I?;<=;@@W<<?H73CB15:93-5::)-31--5)(+-,42#2)',%.;.&1.0-14%,0Kg:48_=ad?F1CP[[*HL9U@4³¡¥§¤§¤§µ³²«¥±§ª¸¾À»¯§¹ª¦¯±ÉÇÈÑü¿¾¸½¾¼ÈºÀ·¯¯³±¹»¸À³²º¬¸¬¢´§¨³·º³¨¨¾¶¯·¾°¿§¬µ«©¯£ ¥¬¨«³¥´¨ª§©£¨£©¨©¾«´°®ª¤¡¯³£¤¥¦ ¥ª¬¦ «¢¢¦¨©
~
~}
¡r{z~|ix|ysno{fw
dag_rzlfx]^T?W{lTaPQYLLNru]HZ[gYEUeOC>JNDCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11'/>KH0%90%,,09/,,+6'17#-0GjI14X=fbAJ7GS`U*=9CV=*² ¡ª¦¥¢«¥¸³´¦ª±¦¬¸Á½µ¯¢¹¨¨°ÂÊÉÌÁ¶½À´·¿ºÈ´Â´²±´±¼¸¹½µ¸µ¾¬¡³§«¬±¶¸µ¬¿½ª³Â´½¡¯²µª¬°£¦©ª¤¥±§° «©§¡©¥©¡¼¨®±®¡«£¤¯¦¡¤ ¤«£¥¥ £¥¬{{~£}yl~vyxc|zpnoqvgrjgeg]lsl`hp`o=[xlU]NPRKJMTZWM\^lWDW_O^OHMDF;7HEKO<rhKK9AE;;=>;;=J49B<3;G<4?18-68;2(09/,4/.=-*K>)49&'.34.0+/4&,:$41AhY14S=e_DL6KVdO*;1NW=# ¨¤¤ ¨¤¸°¯¤¯°©«¸Á¹²¹¯«¨´ºÈËȾ¶Â¾¯´½·Ä¶Â±¸±³À´»½·¨¹·½ª£´¨©«²¯º±«½¾¦°Á¶·¢®¶µ§¦§°³ ¥¦¨¢¥¨ª ª®¦ ¦¤© ±¹£±¯¡¬¡¥§§©¥«§¡ª¡©|~}| x
}
|sp~rtt`zxhmoomh}qc{miea\d~^YsjrIH~iXYMPLKHPRQIO\_nSDXZRgNGKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23.:;83&2<0,85B*)-B*,4;NN@;73-.+-7**<%53<fd24M?e]FO=QZgH*=/WT5(§®¡¡¡¥¡·«²¦´´ª¨¹Ä´² ·®°µÆÈÀ¶¾Á¹°´¼·¾»½¯ª½°´¿°½Ã¹©»º·§§µ©¨¬²´±¨¿¸¦®½¸³±·°©¥§¯±¡¤¡¥¥ ¯¦¡£¨¯¡¡¥¥£·°¡¦±«¬£¯ª¥©¦¨¬¦¢¨¢z~zx
~yzprwppt_ywdjkjgglerjkdgWar^YkuiXE}^[XOOKHHRUG29^^mPDWUYeLHJEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<#8R=*113>D5,-'42+;+139cl84HBf[HTCT]hE.:1]Q,2¤£«¦¡£¡¸ª°¡»¸¥¬½Ä²¯®¢µ°¬¯µÄĽ³¾º·°³¹¸º¸º®¿³´¸¯¿Á¸«½º´¥¢³«©«´®³¤Ä·§ª¸·¬²»ª§¥¨¯«£§¤¦¡²¥¤©©¡¦ ¤¹¨¤§¦¥¡¨ ©¡¡¡¡¡£¬££§¤y|
}x
{w|musmmtbythfifcmfghdfgh]dbieZezb`PrT[[RKJHIOS@ *i^jLCVU^`KHGEC.:B<F<6KPD8:D357==895?:;4>8@L=>93)8><:9*6@3.E4(+,>0-O?.+-7-1195,&.5-80576`tB3CDh[KWGU`hB377`L'2¤¥¦§¤¶¨ªº·§¬ÃÀ¶¯¬¢µ®§¯¯·ÁÀ½±Á·±®²¶µ¹¸µ¬ª¼³¯²±½À·®¼¼°¥¶¬¦§µª«¯¡¡Å¬ª¨²µ¬´¹¨ª«±¥ª§¥¥¢¤ª¡¡¡§·¦¯ª¡¡¢¡¦¢ ¦®£§ x
w{
{
s~gyplklgusjafcasadefdhhaenY]X\lcaMgWZ`VIHIKMRX>9`liHBUS\ZIGFEA.<?9A89RG@7:B037=7693:<97:9DM=B<0*<@;A<-5B37=++,/A*JK./*+3722(57$+7.72685\yN2>HiZLZJVbfA:3@aE%5¥¡®¡ ¥´²£²¾·¡±Å»¹°±£·««®©¹¾½»À²®¯®¶¯³¹²§«¹°¯®´¶»¶¯¹¾¦µ« ¡²¦«° ¦Å¡³¦°²±·´¬¯¬®¢¨«¦§¦ ¥£©±¦º¨®¢¡¤¥¡ª©§§{t
|
ogyniljgqrkZhcaq`dgjnkeiecl\lluqbSbiceZIGLMOYQPUaeT@VRZUFGFE@/<=7?6<FNa8:?249@37828?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24:5#3*)6.55465Z|]1:Lj[M[KXdc@A1G`A'4£±¡©³°¸À¶ ´Á»½¹±¦¶°©®¥¸º¸¸»°««·ªµ¹¤³µ±¯©±¶¶±³¶»§© ¶ª«£ª®¬Ä¯¦°±·¶¬«°¯ª¢¤©§¤ª£¥ £¬«©»¦¤ ¡k£q¥v¬©¢x
li~wql}o]dagluyfhvjfX\itnMOibepf]dfnkh][\hOKD8FTg^JHQPUVKHRapteF[QUPFGFC>1;=6=6<4f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,,08>G701.*.*/668,#1'214:286Xl15Ok\N[K[fb>G1N_;+.¤±¡ª®¬£½Å¯©·Â¸¾¼§·±¦«¤¸´³´°¹®©§¬´¦±µ¢§¸¶µ¨§¶³®´®´¢ª´«£¦§©°¿¨§°µ¹£¨¬««¥¡¡¨¨¢¦¦§¨¨«¤µ°£¢££¡¡¢¥¨rx uif~sx o~|¡ |tvknied{mrbTmdmiqXiomW]hZkjZpkyrhY^FN>F^MFRVVQPRWTg^MZLRRPEFG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82*/1<I:/01.*/(-4583%&2115>1<8Xt15Rk[O[L[g_=K1T]7/(§¬«ª¨ª¾Ã¯²¹¼·Á¿ª¤·±ª¬¦´µ®¯³·«©¥²¥¶³¬µ¶µ¥¦©³±²¨¯ª¡²© ¥¥¢¥±¸¦§§·½¦¬¦©©¬§¥¡¡¨¤§£¤¥ª¢¤¦§¡·¥££®ª¤±¥®¡zÔ¨ÀÆxw±¥·dÀ¿yy|Êq¼Å{r¶§º{l±«±yilX±®ofj¼¼ngymqØ~Rkb¶²}~pu¡ªVNWaOVNGV\XPPS\W[PA\DPNCFI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22AE/.32.+/)-/186- /416A1=:Ww11Tk\O[M]g\>L1YZ41!§¨ª¥²ª°Â½²µÀµ·¿Â«¦´®©¨°µª°¶´¨¨¦¶¦¨¹®²²¶ª¥¤§²¯®±§«§¥²¥¢¢ ¢¡²¯¤¡µº£©¨ ¬¤¢£© © ¨¨§¢§£¡°££
¯kjªh
fq©q®¡¤wº|k v±_j´[¥e`fzfixkªe¾sg¦v±j|±xucmm§n\ EigEu_}f{£§Y_«h|w{j¨8J¯[XTlcZKOY`\VV;NPWV0ISSJCEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3/.53/+/(.0.:6/'$203B/=;Uv2-Vj\OYL_gY:N5]W31£§¦£¥«²¸´½¾°·Å²¸ºÃ§©°¬°©ª±¯¤±»±¥¥¯³£ª¹©²²°£¤ ª°¬¯§¨ ££±¤°©¢ µ³¡ª¡¡£©¥ ¡§¤¢¡ ¬¦¦ ¡µµy©¶x´·¬k¦{
w«gj±[¬{tpx
°vwrkkm|O¥XHdd~ch¦_xqtR]P©ncpz
a/S¢n[Tkg`LK]dX\ZB>°wWXA#MiEBDA@A19>88:84;:9<9:A:E::;6:CB8=?KNH:5:AFBAAD<FD;0201;E,0.940,.(/3,>831/2-D1<<S}n3+Xj\OXM_fW7J9`T50 ´¦§¡©¨³¬ª»·Â°¼Ã¹¶Â«¯¯¨¯³ª¢°¼«¢¨¶£¬µ¤¥²³¨£¢¨«³©°¨¦ ° ¡±¥¤¨¶¯¡¨©§ª ¦©¤ £¥££«¦¢ Õ¹q±ÂÆ}Ö»}¨¤{¡¥y«yV¯{~j¹Z¹w}¦|{©y{±mu¼oP¯§ÅQ zc`ªasrk^Rµ´È
~|c¤4Cu]PjhdP@XgYdaJHMjJZSOYfZCD?E?0<<59<74<<8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DB.00483+-).323971#%5*>3==Qwj6*Yi[J[P_fT7H:aP72%£²¨©¥³ª¥µ¨¤¼¸Á°ºÀ²·´½´¶¨²±¤²´§ ¯¶©©»®£±²¡²´±¡¤¨ª±©´©¦¬¤®¨±©£«¢§¡§¡¢¢£¡¢¢¨ §¡§¡²nhµr¬p§r´vt¶{¦£~£}°uÒÒu\®|
¤nª¦k
}}{±sy³et
ofRÉZÂ\yb__vs
a]YÊo¿~rMKµSUÆdUQjceXAOk_liPUFH9=WR[WXHB?J<2?;5=<56>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>II:1746@>/.24252-).26,742&60;5:=Pqh9'Wi\ANT_eP5G=aM62.£¦°¥©»¦µ¥§¶»¼³»¿¸¸µ¼¼´¦µµ£³²£ ¬°¥¨»®¥²±´¸ª ¥¡ª¥²¨¬ª¥©¥«¢¦«±¦¡¬¥¡¥§ ¦§¢£ ® £¦£
¬|x¨w£ªp
¨£¢~®³\r²S¯}£~q×}w
~w¯w´ael[°WKuyf`^vvgj]¯vwk5yÈ®³_CTo^g`EPl_pmVUM.echRYQ;AC@L:5?91><16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!04767=Pke>&Vg\@=V_cN6GB`I:77 ¡·±³Á¨²§ª³º·µ¹¿º¸³·¾¶¦¸µ¡¶® ©¬©¶«©²²«´¤© ¨¢µ§¦ª¤¥¡¥¨§°¥ ¨¢¢©¥¡¦©¤ ¡¢ §©~¦y¡ªp§¡££ªzyp±Z¨ xtØvt¨¤|{²^d ~n]«\[hgªcr{jq]«Z kmdOJC¡\ZMt]bfMZa_rt_JU5JXHE=GEAL35A8.;>05A78@<6=<F?:<6?=B7.HVJE@H6KIN@IK@EN::@4.;>102154+*05/7,&21($%6671<OedA&Uf[?1T_bL7FH_C1=7¢¿³Â®«¬¨§µ±¸±µ¿º»³²¸¼ª»¶¡²¥¦¨¨¬±©°«·ª¯¡¢ ¦¥¤º££¬¡£ ¢¡©°°¦§¦¤§«¨©¨ ¡¤®£ ¡¡ ¡¬®nr´t©w¦t´zu´§¤¤u¸o{¢kk¶Z¡eh ¢§mr´t³jju´af¢ok]`N¡|Rs£ly~no\¯V<weTon.[§ObRkeblZb\`p|cSYQ>?lo2BB@>M:!7@6.;@37C58??3;<CDBJFMIF62JTKEBJ6IJP?HOCFP=<E50;;010/75,+,326/#00,,289/9N`eD'UdY>/U^aL5FM^81A8¥º¤±À®®««¨·ª¸¯µÁµ½²±»¸¬Â·ª¬¡§¤¢¬«¨¶¤´¨®ª¡¨ ¥«¸£¦£¡«¶°¦¬©¦¥£«³¤ ¨¬°¡¢¡ ¡©«Ô»u±ÄÄ~Ö¸y§y¢¶u}wvÁ²aºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¢~u«}¾ns¼t²uxmpm¤t½]w}[ay¼jZV[iy^iacfbmxoX[YCA@q?CG+4H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,;:08LXaF'TcX</T^`K5<L\-6?9§¢¼£°Ã¯ªª±¨¹¯·Å±»³¯¼°®Â²¦£¥¢«¥ª³¥µ§¤ «§¹£®¡¦ £¯¹±«£§¦¥¤¡¨¬ ©¤²¢¤¦¡¡¤° ª
¶¸y¶wnlotoyrÀ»¼{²¨pt¹|{}¤»¹½uy³£tuut°ufj¶tsqw¶^y}gylzb¬pt
~W[§iDdYTf_c]cQgfqmuBMOLD;ZL>J2;0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITAKNGEOF?G<7>7070/9:.,/-*8/%&2(4$(>7/7KT_G'SbW8*O]]=+;VV'=:<¦¡¡¿¦²Â³«ª¨«ª»¯±Æ¯µ´°¹¨µ¹®«¤¢§ ¥®«§¶¨¨¡¤¬¥¾§¡ª¢¢¨¢²µ¶¬££¢¦¦«©¥¦¡ª¦¦¢¨¡¬¢°©§¢kjªztv{f{½¾Àºoq
_rjZ^adl`cmvblf^`cqhr|fj~qtx~c\xuhP\n||jWlzrIJo
pNqMDV\f`LZWfc_O[mujqRODDM<HH<L?1,2A?8/5?C<9;@;=C>RVVWYZ[[\]`aaa`\UG5CFUEKOHFPIIH;8=51:.1;:./-76=5&"/*2,%;8-7IR^I'S_V4)P^L(3>\O'?2>¨©¢Á¤³¹¶£¬¦¯¦¨¶²¬È¬°´¶¤¾²³§¡¤ª£¬§®¤¥¶ª¥¢§©¾¨©¥ ¦©¨°²¾«¦§¢©©¤¬ ££§¬¢©¡®¦ ±¥¢¨¤¦¨¤ho~qw´ª
¡z¤
kj|}urxzvv|jstudw}vkoxl_b[ogMXYfj_WYoynmfSOFS9PZNRO'*;KB635=@A9:C><ENSSTVWXZZ\]`bba_^^[TKCSGKNDGPLOI<:;489,2;820)6IRO8")+/2#4;*7FO[I'R^T10T^:+=8]K,<-@² ³¢¿¢£°±· ª¦³§¥°µªÉ«²§¶¦Á¨µ¡¥¦¥¡¬§¤¤·¬ ¡ª¦Á¬¤££¨¨¨²Â¯ªª©ª¡¡¢¥¯¦¡£§¬¥¡°¡¢§¢¤¤ ¢®|©¨
{
£~e¡³®
w{~xyzpgykuyrhsyujtbxe_hdcdfjYk{pjj\SLPD_UF@>>,4@F;45;>A;<?>>HNNOPSTVVXZ\_aca_^^]^]XVJKLBIOMRJ;<:786/3964.(&$-1..)+*7%+<(6CMLD/T\Q05M[17E4\G5<,@²¹¯¾«±² ª¦²£¬³°Å°«®¤³¯¼¥µ¡¨£¡©§ª¦¥¦³¶°¦®¿¡¬¢¢©©«£´Ç³©£ª§© ¥¬ª®¨¤¢ª¡«¡¥°¤©¦ªf
}eczmhjz£«je~g
eeihz¢kh¢wkj£slnzyXe]^lw\htwwowxsmysvzhX]jsd]sij|rmc]QNVJdX@I3=F8?FD71<=?AC;;DGHHILNORRTW[^`aa`]]]]]_]ZUODHOKSN=>==6535554*&&%,*%.++'6*$;'/BI[J.6ZO6)EY/DO1YB;?.=¤º¼¹¯«²°«¥¨¯±§®®°½±ª©¥®°± ¡¤¢¦¬¤¦¨ª³®¤£°¦·¹¥®£¢ ¦{¤«¢¨´Ã·¤¡¦®£¤¤ª© ª¯©©¢©¦¥§ ¬¢¥±¥¬¢§¡¬ ½s´s
hw¹Ä¸q¡£z¦t«}ËÀÀºq£}À½ÁÁ|zÂÀ}j¥²poÊzxvyyq{pxxlube^wc_eb]thmdbXKUIQYHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^_`a_^^^^___^\SMPGUNA@?=6468266*&%#)*&.+*)109*#>I[L*#CP/#F[3PY/UAB;/8¡¹Ã´¯¯¿©©£°ª°¯®¦²µ¯«¦§¦±« «£ ª§£¬£¥©¥¥´¤£¦®¸´§¯¢¦ ¢ ¦«¤«¿¿° ¨®¨¢£¤ª£¡¡¬®¨ª¥£¢¤£¤©¤©®ª«®£§£¤Îz{¥z_]¨¡¡|§u«¯^dª{¨
t³c« ³j¯t|¸aY£Ínv{Û{q~ue{vvl~m}}k_pjof`_xd[qhjcf`RTSW^JOC4AHED8>5;@?A;=8@>??BDDFIJLNPROS\___^]]_``_^^[WOUJ=?><5578164('$!',&&/(&+360$7;SL+,-J0';\:L-!P@F4.1¬ÁÀÀ´´°·¤ª©µ«¦²¬¬¬¥¬¦°ª¡§¦¢¯¡¨§£¦¡±¬¦®±«¨¬ ¥¥¨¤£ª°¨¿Å²§©±¢¡ªª¡®¦©¨¥¥¢ ª¬³¥¢«ª¤¨§£²¢¨¡¡rv¨q°|q¬} ¥x«~r¬v{|ª¢}«zzVÄ{pÁ}mupmfwenaxnrnlcnsuo`fmd_oijnfcXS\`ZRRC8IH@C<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;92478452&# 1' 1''45-&7=WJ-<(=1)3V@F!G;C1.+¯ÓÆDz³£££¢®¯·¯©±§¨ª©®«¬§¢¤£¦« ¢¦ ¨¨£°¨§¯¨§©¤¢¡®§£®¬¢¬µ©¹Ì±¬¦«¢®¬¡©±¨¨¨ª¦£¡ª¯±¢¨¬¯¦§¬««³¤¥§
¤k¤uz©u{²q¥q ¤_aR«
®u®¨z{f£¤£}©®^{¨U¢{£|Ä°Ås¯´³¹rb©¯Âthkmlxwwnkfedqqf|ic]V_iXXTLLPLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^aa`_^]\][SIB6799664,&$" ''!+-"$.!3-&@DWH,G+56*1PKL# A9D4,'ÁÉÖÖÀ¡«¨¡¯¢±´°¯©¬£§§«««©¥¦ ¥¦§¦¤¬¢¬¡¤ ¯£ª¤µ°¯¡©§¤¢¨¦°¥¢¨±¬¶Ç±´©«©¡ ¥³¡§ªª¢ª¦ ¡©¢²¬¡ª³²¡«ª±±¹¦¥©}ªmv«y|°n¤Ò¸´¸É²_`©¥ zyªÉt£¨©~ÆÆwe¡¥t }¯_oµc±uK£m§Gdzn|nyt|zm[fjrqgi^aXcm\^YILLJEDBB=A<A?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^_`^\\\\\XMB75785/)(%&%$&),5FNPPMFLJVF*L0/>-4OTQ;<F2-$§¤Àǹ©²®¥£³¹¬«¡¥¨¦«¬©¦ ¦¥«£¯¬¦¡©¥§¶ £¨«¶³¬¦ ¦§£ ª¦ ¢¦©°³Á±²©¬§¥¢¤¯¦¢¥¥©®«¥¤«£¶¬¡±¹°°¨µµ¶§ª¦¡Nw{£|¤¦¸|}z¹ÍÆöx¢~v¤¤¨~¯
¬}a¥l£q
}r¬`¤sqa¼}RUu¡z{rys~o[lnwsjnZd_hnbd]KKQSAGGFH::K>B108856877-*5==?BDGILNPTWYYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOTF<E2:P[T6?G,-!©¬¤«¹«¯ ¡³´¦¡¥¯®®©§¥¥¤§¡³®¢©§³ ©¤£µ££¡©µ¹¤££¢²¦¥ ¢¯¬£§¢µ±Ã°©¬©§£¤¥¥£¨¡«¢¤®¥»¬¢·¶®¶´º³¶© ²£¦ ҵ÷z¦w¢w¡
¥r«´nsj¤}s®¥£¦mp²\¥szl{~n©a¢rs~bs²¸hw£{u{xlhwhxsnt]ddmmfh`JYWW<GF?S3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^``]Z[ZXURRQF:2230/++(@QRTUTSTVWWXXWUUVTQOQ[U%!2AH$*%r¿¿¼»µ¨¤®¶¢¢£ª¨®©«¥¢¦ µ¦¢©§±¤«£¤¤ª´´¤¥©¯ ¦£§³©£µªÂ¯¨ª¨¡¢¡¦£¦£¥©§« £¬¦¼¬½°£²µ»·©¬µ¦«|¨}|°x¤¥m±o |¢¨¬¡¨¡£{~««w z¯]£}¦§e|uj®]¥lr]`[ m£xy~il~b}tmy`gepogghBX_Z=JS2S8AAC7$$3+''3, /667436:@CFIKMNQSSSVZ]_a`aaa^][ZXSPONI8152.*,ATVVVUTUUUUTTUTSSVWWXVUVQHFIJ$))¼©Æ÷Á´ ®¹¦££¤ ¯®©£¹ £«¡°ª®¡ª©¥®±§ ¨¢¡¥¡¥¨¥¶¨¾®¤©£ ¦¥£¢§«ª¡¢¨¨¼¤Ã¬«£¢´»°©£¶±¬®w¯|ºd°d®}¡§°¨¤¢£
\lk³`|{²lgn±Z}µ\¤kÈ¢f|»YvµZ²}S¯z¬X¡m¥yw|cs|bwt|aifonfefOTb[AS]=H(>9=4!!-$1. *1/04579:<ACFHJLNPPRTWZ^```ab__\[XUPNJGC553./@UYXWXWXXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³±·¾»´Â³£§¥·© ²±¨¢µ ³¨ª«°¬¯©£¯¬©§£¨®©¡¥¤¢¥¢¨±¨»®¤¨|¡ ¨§¥¤¤¢¤¨º Ƨ¦©¡¬¶·®°©¡¿°°°ª£®¤¸Ãº
¨¬¯©¦«Ö½Âªb¤¿½}£×»¸µ½¾k£p«
oz²±Çk«±½¬yx¢¾»t£wyb|ydfx{`kejjbPb[Ri\?S`BL)<:4/$%2 $(0496678;>ADFGJKMNNQTW]a\__a^`[\YTQMIC><A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ»´´²Àº²¾³¢¯§¦³§¥¿©¶¯§¡¿¦¦±±¹¨®¯¥§¯¬®¦£¬¡¥ª £¦§ ¨¢ ¬¬©¸§£{§©¨¨¨¦ ¢ªº©Å£¡°¤¬´µ¬²¬£¿«³²uvª¤¶
e pg¬nnw¥¡v²qrª¤°¥rmmmfxomqzjqigrii
gqd^cioZ]g~x¦`brpfdz
tdwgjx~ydlcelbJdWIjY9OcDO'J9+# ",)-2.5:457:<?ABDEHKLMOQSV\W[\``a]][TPLHD=:AB7MXYZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨´©ºº²³«©¢®¤´ª½±ÃǼ´©¿«¬£ §« º£¤®¬¦ª
¦«¢¤¤ ¥¦©£© ¥¥¦®¹ª«{¦¦§¢¯¥¡«¹°Á¨¥´§±³¬°®ª¼§²»£©¥µ£©ª´¤®¢µ¥£ £¤£¥¢¬§
¤
htwtq§m}
phvowu|yikecocUaX?hZGa^MW+E=+&!640. %2(*799469;>?ABDFJKKMPPQWUVY^`ab]^UQKEC>9=@ASX[\YWXXXXXYXXZ[[\^__`^^^__```_YY`¥©ª¤µ¸®¯¢°¥® ¡·±ªÄ¼Ã¹¶©¡¤¥°¨¤·§©µ§¨¬£§¤¡¨¤¨©¦ £§ ´¹§ª{¡¤§´£¦«·¨¯Â¯¤¸§°°²¯«¬¶½£²À§¥¦´¢§© ¢±¢¥³«³¦£§¬ ¢« fuwztj}
xqryq{~jnd^pi`\_XlbO_bNX9FFD=2<=7.*%+)&&406658:==?AACHJGJKLMSSSUZ`aiaeVPJACB;9EMV[^^[Z\[[[\]]_^]^_`aabaaa`bbbdb\[c¤¨£°´¬¯£ª§® ¨¶ª£²¹ª«¡¢z¡°¤¦±©¸¦£©£¯¤© ¡®«¨§¨¸µ£¥y¡§·¢®µ¢°°u¤¿¤³ y{¢µ¿w¯¦¡ª~d\bw ¤~mµ¥©±¦f ¢u{pªm¤©e¥ylvq|ai[vfhqy¡dx
vhnykpe`vokkh[dca`lPY=MMMRF=?SB90/&4:306678<;>@ABFHBGGIKLTUUY]_gggXQJ<DH<9VR[`ab`^__`aa_\]___aabcdabaaedchd^]f¦£¡°±¬«ª¦©®£§¥ª´®°¥©¥ªt¯ ¨«§¹ ¤~¬¤¨¢
u®¦¨£¹³§uw¥±µ´½§¢~§£{¥±º©
±ª¯£y¬£©«ªw¥{§{³{ by
nrzqtxht t{~ijx{qpgexmilj[cihdpZ[HSKP@E5-YST6)!09=>643568;:=>>?DI@IEJKGSX[X[aaifYQH9EL<?bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah¤ ¦®®«¨ ©±¦§ª¥¬Ä¼¯ ¥§´¬§¢ ¾¡}¬£¡¡¨¡£¹±§
pu£«´´®Ê«¯·
°³±©ª|¨r{w¦h¤y´¡ ¨ªÂ«¡r¥~²¡}¡|
nt{s}
uÅf©¢jogwt{vgivpghk^bnlfjWdF\QL2E46M`c7&3<EGD:63658;8>==>BL?NIJLCQZ]\Wb^jl[QE=KM@IdX]cfhgbbbbcc__babcccdiicbbbecafcbbi¢ °©©¨¦¬ ¥¹±©«¦¡¤©¡£©¶¢° §¥½ y«¢
v £¢¸¬¥~bm ¡§~¡§ ® ¡²¤¬~¢vk«uM«xª©ª«
¢|{§jlg·~n`cX|dgs}yl]}oaTr]`mz`Ye~
r¨ªk£nr¥ogdlZl{eY_~aWPoveotqjjo]ioljgWfM\WE8A4GC^k4+ICQMN=84859;6@;;>BO>QRKMBJ\]_W^^cu_MD:MNMTb\\ffiibbdbddbab`bdcabjkdbddgdbgeach¡¹¡ª¤¦¬¢¶¼«¯¢ ¥««´¢¨ ¡§´u¦~
¬£¨¥¯¦¢in¡¡¤£¡ w§£©¬¯¥z}¢ps{ymª~¢tw¦g~w¥_{}s¢n·´ºt¶¨dƸ|q¶r¤dt¬«a~j³~n~q£lr£r}£^³p|³tr[²ibqtuqhoXjkqpd[g\aKC=D5QAYq2<SG_JR=<395::6C<;@IP?TNNQ@D_^[ZW``{dIC7LWUVcaZffkkbbeadc`ab`dd_`cknccddhdbgfchh¤¹« ¥¸¶® ¡¢£¤¬±¬«¡¡¥¬x
q¡}¨ ¢¨§¤~k{} w¢ r¡©¨ª®®~z y£xs}¨£d¡~mho{§}rht«sªg]
vhªj¹f\©pa_§vwhu~lj¦\¨~w»j}©Z]³g[nrxwki[piwwa^dVaAPDN6VBRm4JZZ^NZD@151;;7H?:CHU?YSX]>Db]V`Qad|iFB9N[]XefXffnmbbe_aa__``ec^bdoq_deekecihgkiª¶¨c¬»²°¬¥§¬°§«£¢ ¤ir{z¤¨¡iy{}¡¡rh p©¡¥«¢ª±®¤¢¸w£³¢£xzª¢r¡~°µ}l¡x~µ££«¨|}tªZ]o{xbM{{ezBMY¢js}ovy±³~¦s}mp|ori£]vHec_tq|}ne_kguzbc_P]W\SV@YEQgDRV\aX^ID=B8?A:HE8LEXAWRZVEFb\Z`K`m}qEC<V^bZejVghmobff^a`\]^`hb_ecvl^egfldelhili±®S_¡§´º³³¨¢©§ «£ ¨ w
nx
}r¡r¨|l
q¡x
z££®}µ{¦z©£§ixn~t sq|
o|¤§¤p^©hv£dp¦aÓ|{xrsc¢~¢r£vk³`tª²¨¼wo¿¦ª´^orpt£r^¤gt¦`h¦lÓynvykyvrl©¥g_eyqlhfcmuvf^aQZePQaHVIT_WS[ej[ePECKLJKAJD8P@QNXSXOSQ`eejSdxywJGEd]eZhiSihjncjf`c_\]]_ibahe|d^dgdkdjlfhmh°¬T]K~ª¯±´°³¢¦ ¢¤§©
{p}h}wpl|£©
yvnw
¡x¡£³¡¢¶z¬§¤®¥q©~¥£q¢®¤¯£wµ¶¶É¢t`©my u¡w ~oMf£rt¥{zubn~¡mrd`stk{j´¶´Æ¦s}yj«slswiytqPD}³^jvkxfkfbstolU[RYhOQhIULXRU\gknUgWMJAJMKHJNAQJPecjmeuss~x{ntz{UQNm^h\kiRjhilgmfce_\\\_ibdhk{_]dgcjfnmeime¢°¨
e@¢²«¯¯µ¡¢§¡¡£¤¦¦ykyeyuj
z¥¨z}yp
y~¤¦gnxl¢d|r¥xph§}¥{¢rv¹n¢b}£nsk«ku np§ajiu¢~`uobh¡fjuqegos¢[_[d¡n^q|trd¥nx¢cf§gqm¡oRn ^d§T]TmmrkqmphkwsjnQVUUeXSlIXN[HWhhsjYkVPREV\MXRaUhj^wu{|p}|r{sww^QsagbpgPkhhklohdg_]]]`jbjivu]\chcjirlfkmc¥¦zetm§®¥©°±¥©£¡¡¢¢{qh|su}|e|¦¡ª
}si¦}
©¥¦x~¥²¯¥z{©u¨n¥¢¼m|¥¯
¢~¦|s¨¡ip¬cx¨mª£vw«¦k±lw³©loo b«ªx§w}
¤ hu¬f¶sv¾¤Y¦«aurto{upbj}nglRTXT``\kL\Q[I]lmv_[qX[_Zgsenoqcqt`wz~yrys~{{vbydcnsdRlggomrifia_^\ajbllzo\\bibmiwmglob¦«¥ªª§§£©¢¤¨
t
zo
~turn|{
¤¥¤unl¨ª¢ t~y¯¤qy{s©q}}zx{}}w¡¢{m\zys{qin~rtqf_xwtvpzopn
_wixgªt}io}u{tllfsx{w[kWyinwrqowxo]k
nigVY^V\ejcU`T]Q^owykjvdijju|pqtsaotbt{xuyuy
~{nmdyn^Wnghukxjijd\`ZcielqunZ[bkdlkymhloaº©§¡£¦¤¤«¡ª¦¨~r||~{tsp|}
x~£{¦
wqª
§ «~¨¨yq
}p«q~qjo|gm] ssulwtYro~j]id{
`iy||w
jzlbqsw`t¨glvnwmcecyzZ\ignv[{ywtmsrf\mkkbYX\YXkq[^`Y]]er}ztotbjjj{|qzvtdmthm{~uz}{yzo{}szshT\rilvpuglgd]aYjhkjqrmW[emlgryohjm`«²¢£¡¨¡ }«¢¥{
|r}vros~z¥ xy¬¡ª¢¢¤£«¢¨¨¢~zª±¥°¦¡l}wxf}
x|{u¤ wqu
y§ztj|yirh`tq~{wvovt]^ogn_^YZ\SgqUc[[`lgt{{rnocjjh{mx~phookf{rw}
{m
|zy|}zxNdvjsnq{elebb`[sfpfrqmU]ltmhxzpgike»£¡¤ z~©
}x{mxr~ml~z~|©r
|{©
¦¢¦¡¦y~§|}ª¡© pyruaw
nzvu¤u~~ss|
|z
¨s
ymj}{mhklg^yg}{vuvu{w\`p}nt`cZ[]QflSdZ]`jhuy~pllckjgkrkktnwmynv}
wq~{{}{`i{kuhjejc`i\cugobumlTbqyeoyzrejmm¸¢¤zw¤¤yz
|l{xr
}}kh}|~
|¦o ¡
|¨w£ ¡£¢¤{¡~|¤ ¥uuqwa~s}qhxrzs}~rz||{¦{
s
xdpzxypljf^~sh|uvt|sj^`twpwdcX]^RihTdX^`giuyqfjclgejm}gmpj}wzkr~uv|{}jrntibilb_qVtolm`xhmWjsvctzzqbkoy³¥¦
¡|u£¡x|~~p~{tu
~wgc}x}y}o
¥¦v¡¡z¥{
zs¢ ¡}xr~n{d}qkfvp}~y}~}ry{¤vtxs^vw}s}vfleaijwstu}q|cdasnurmaY_]ZkcRbW__gjty
pbjbkfh|khthlnh|yl
qt|~z~|muttmfljacuVipn`xglajvpfx{yq_ql
¯§©
|w¨yy|}}{xsxys}d^}
t}~~£ ~q{¦ t§um{o¢}{qzkvm|n
xp~esj}
u
zwx~~
¥y
t{~qr~k`ytyp|nance{bnovsxwttaw`olunp]Z^]]i]O\Wb`glrzk_idichwmflhilg|zwns
}tz}z}|ryxxnlkh_iqbhqoevgmlazhj|{xpawm«¡¥©|v¬|w~{}|vxptszo
}~|a\~rzz¤||¤
n¢¡ph{
p¡}|usukqnu}uort|~ernz~
uu{p~«{}~v|nl~afwstnzb^oakt^pjzyymtqez^nlsmsYY]_`iZOVWdbepqe]ihfbgqnchheihzwuo
s|v
x
|xzw{{sykk_ohtkqomqgoke{amywplww££¨¡§t¨ t|v
xxrszlroxmvnq[Y~vu w~
m¡l¦
h
x~}}
pvplnoq|jsrxuzgtpw}
{{xur||
¥|v~wwlh}~[qrqoowZ^p`pk^oj|zqnmjmw`pokqnYX```lWPSYeeatoa]kldbfkn`ff_gjurrotyvyxv
{|wjqc|b
|opltjhnlww_q~y{tus~¥§
~tzrxtprtquloltlv}mnUQ«xvry wz£
}r
ji¢
qw{{|~lwjollm{bz~wzx}zhumv|r|rx{|
}|w|vogi~v]vnmkprU]nbra_mnyphpfgtviqlawf]Ue`_qSPN[ec\wo{^\hpabefj_gd[go~olqs}v|uvy|xs
~|zxgrk`~ook{`imtt^s|xxts
|y¡±¥~wtwspp
tpqojiumn}|musRNᐙ|otuv{r
¡
}x{zxin¥cpz|z}m|esokm{z\z{~{ziukt~mp~
|}wxwrkdn|igsngislS]ndpY_lqwgkkbgytppd`xa`Uk_^tOMK_fb[wpt\[du`beec`fbXissmkqv|tyvw~szr}~vesn|e~nokYlnyzr`vz{vrvvy¯ x~{
uwpyqopmn~rcdwp|nz|jhlb¤ÁÜ®ï¢slvu¡np
£
{vx
vxp¦^l|~v~~l}dxujoztX{zzgtjmwp|utxtrodrv_rloahtfR`pgkU_nsyarc`i~qsn[csbcVnZ\wLLKcf`]urm[\dx^`de_cc^Xirknkrw}swyx|q
}}{t~sguqymznspWqzvyqdvyhvq¨£}pwx|
|swpsjoljm|t^`wv{ptzg`e|ëÚµÉÃÜsltvip
{zwxrvr¤
a
h}~
rrwhvriuxmZ}}wbumpmz}nqytjoiou~]rhm\it_QdqhfS_qvt`p`]hqsjWgidiXmW[tLJKef^aqs
i[\ex]^dgz`d_]Yknenjsw~ss{vzs
|vv{vlwvyxtnwz|Xyqngxvdv
p¡¢snrv||yrsnodr~iflww[_x{zqqiagaÕ¶¦xnqw{pj
zh|{~
zu{|qvx ¡¡af}~m}ulmwutxvkc
|
p`tr}}{r
g{
}
nox~tlmhhwy_giiXktYRhribPbrxmbe^Zjntc\h`em_oTZnMGNfd[fmqkZ[br_\clvde]]Zllbljsvqo|}txx
}ux|voxyzomzv^tlhzssgr|q uu~mu}}v~wroljat|gbiuyZ`w{ymq~edhhW_rs¼Äuq}qri{|
|{uvw~ru
rw~f~
q}f~|y}i~vgpyxtxtljy
l_sy{~|sjz
y
~~nmz|usmfezsa[pbWnqSSmrhaNguxf`^]YootZfb^kn`pOYjQDSf`Yjmm|nY[]lbZbovdg\]`kickjsvqn|tuz}
v~xtrxy~oozqixz~ml{ujjwsl
n}uiw~zo{tqkjd`s{h`eqzZ`r|ygqy`ee±²wKbZ¥ÙÐqzw}
nk
zy|wwoqu~{jy
¤px{
p{}mvh
xr|e~
vdqsiyqpu}wy
zk\rs~|snrt{
ynn}~uycegzn]XvZWpkNWqrf`Klwta^\[Zu~spXg^gjr`oNWgR?Xf^Zojgyq[ZXjeYcpx_g\^elgfkiqwol~up{vqq{|zyujy~ko~t|or{zon~xg¡
fogy}~|hxskkf_aoxm_box\dkyaqu_eeÔê½2:>qy
u~~mku}
|wnvwn
lu{ufy¦~nvx
|{w~kqh~yn||wbz
rdri~nurutvtp\nuy|~y{rm
tzumjvts[ggunWV|SYodLZrre[Iqxo\[[Y]uuiZb[hfodjMWeP=]e\]ue`toZYUncYdqyZh]`gmgikipw}liyn|}zupnx~{{hz}js{rzsv}~yx}|kl}jh~z}~~}kuqghb[bgrn_aks`hpybss^cd n]6Z¯µti|u
svoltyx|y~rgv~~oqivynfy¤ow
|pz}{h~lj{zj{wr`w~rdrgvnu|}pxz|umYpwuxv|ytos~|onimtm[edqoPZzN[n[O[rodUKsxiWYZZaqua^]`gdiifNYgM@`c[`u`]ulWWSt`ZdorWj^bhkgmlipw|kh}|o~~{zwq|orx{i}{mwxvv|x~}zm£{uxjlx}z~prpcf^Yg_po_`gpfjntato[adjuz¿¦¤È¸qr{w
srro{sttwyypcwzirwgwucj|~su{
{{kxy~tgzhkytizw}h`x}kkth|iv|q|w|tcVx~st
}ryyrq
z~wwjqhlqo\f`qlIduK]lTSYrnbQOtxaRXX]apt]b\ieedkdP[pICc`[co]]xgTWVv^[fnhVk^ajgennipwzmiy}r{~y|v}pwrnw~p{xyztxzuo~}
yw
zgt
y~{
wgpn_d\XeYlra``plkhn`shY^cnw©Ú©Ç²qwotz
ytst}wpqmt
xtk`zyfrphun[m}x~y|nxw
|
ltv~lgvdm{vmjww|abxziuuc~|hu}vwq{}nZWupv
zmuylv
}~z}t~thtenlrYh]sdFmmKZ`WVUwmbPRtvXPVX^`rp^acmed^ocT\qFBe^]eg][zbQV\t[[gk`Vj_`offkphpvxtkuvx}w{t}ortqu~
zvx{|w|}}{~ruy yvtx^}
xt
x{bnl[b[[aVisb`[gnpfraqeW\bk|Êι¡jmmlqq{~zyxsxut{jlvcuvof_}zerkjqcXlz
rw}os
t{y}ppo|fgqamxqjlqx}}z]ezxjvxfwht~sko~yo}^Ysnt|oprwixxs{u}{sgsankpVi\v[GmjMVU]SU{kaOTurPQTW^cui]`ljfcZoaXboGAg\`e^\V{]NUepY[jh]Wg`_rfkgqgpswxntzx~yur
pp|xwvz
y{t}}~~}~|yuxw~|muxcso
{ucnjY_[\]Tgsd`XcqrgrbkdVZ_jx¾®{·nas
hszqx
z}~wwrvo{vejoausjb^~yyfqhkkZVow£
przvou
}xtqnhx_jl`mvjgjlywzvZg}|yfs~m
ueuqhk{unvc]q}lu}{gv~oriwzt~m{|{xqflam}klUi_vUJijNRNgLX{haNUukLPTU_gvg^aqhgbXi]\kgJDjYbcVYUyYMVmjY]kd\Ydb^tfldqgrpuwqv~w|
}usnsy{ztsx}u~|
{~{w|wwziv|{lrqpflgX][\[Sdpd^WbruiuoeebW[[hporsddy}isusrwxvrumjzqagkgsmf]_}p{imxgjdUWro¦|{vt}t~|o~}x}}upqlgt\lg^ltdgfizo{rYgwuhpxwbw|okn{rgtfanzhsx{~cwwklru|r{{uhywodfbm
{ljUhaoRJhjOKNoG^zfaMUtdJOSWakwf]gtif`WdWbp\KKjWcaUTUrVKXudZ_k`[Zcd_vgmbpitorutwxz|u~
nrt|zuq
zvs|
}}z~w{£¥y
kt{zuznsy}vojieV][ZZSbnd[Xas{jhmi`bX^Ziikpgl`hyxjrssmz|utmzgiyj_enhvgeXbwj~{ojpgf]TXog§vz|zvqqux|zvvjruggn[ld]mr_hajyh{l[nrtjp~zxaw
y
trpzscrj]qxert|yctqgjyusmyxvye|ywqddcm{|jjTgaeSJkfOGQjEaxfaMSr]JNUYelx|f_nqje]VaUnnVJSgWe]XMUkTI[y_[_j]]Zbe_yhlaoovnpxuz~wyzxy~qtt~zvt}|kr{
~}~{w«zjryu~tnn}sjpnddY_ZYZTbjg[Z_ui^ml\aW[[keqt}ii\kvugsvql{}|xurlyfiwf]dshzwccTeph
xxgijaWVYgc§o~w{qri{q}~xs
~ndvrdgg\ja]oo[h_muezh]torkr|~uvbu{ysuvbqn[rtcqs
|uesmam{pkj|zvtgw{zvqebdmr}ijSg]\TKqbPFV`GcvfaKSoXKMXXhkv{eenqgd[W]XweTJ\bWgWYHWdOGaxZ]_lZ^\bc^~ij`otxmpovzr|}uu
y|suuyzz|~
isz~~
z{}sq{{|eqys|zurn
l{~lzcpobe^eVYYWcfk_]\s
hXqn[^XZ[kzbpwvlaYlssgtuolx~xvmnsdhte[gufvvz_]Rfgkt~bdj\TW]bc¤ixsynq|jzo~vty}yidvm`f_^i_]tkYf]oobze\w|knopxytues{wps~tcxe\qqbqr|tgse_nwjehz}uopvt}srb_fmn|dhSfWXSMv^PIYWHbtcaITmSJNZWjlr|cmmscbZZ[aw\SKc]WhSVFX_MFiuX^`l[[_ab]ihanxympkvym~vtttqvvx}}~~~pw}yxz}ttq zz~wctxrwtkto~kx|ps^po`gblTZZWhcmf\\qeSrn[YXW_kvdiuji]Ymspksssi|~~zvnmkdipc[jrdtvs[VSearr]bc]SZ`\ceqq
ull{opr}~sxt{zzdeug]bY`g[^vhWb]piawa[|vijroxtsuiq
wtkq~ogxX]lncrsztgp~\`prb`ksmnvsqxkpa\ellz`fReTWQOuZQOXQHcsa`GVjQIQZVkkk}fnorb[ZXYlqWRPfVVhSTEY[NHqtX_clbX```]jcdmzxlpiuy{k}|y|nrnvz|t|tx
utqvp¡sy
zdvnnznfxpykrvsk^uoagekR][UgalkZ\qdOon\VWTfishbted\Xntloutxj|{vscdkn`\nmcsxkZTVcdx}}q]d_cTZ_Ybcmp
tki|pguyv~m{uvp{u_fsc[]VacXateU_`mdaq]]~phitqtquwkm
}rsgprtpT\gkfrtvtcmwVcrl[_pg~fnx~stsjmaZdijw^eScTUPSlVPVSPGdr_aFXiOIXTWnie}jlxlbW]U[tdSRWhQXfTSGYYOMwvZ_ekiYa`]^nbfkyvnoivvl}{krft{u}r|{ts~vn¤rvvly`d{pfysxlmrwgd|mcfghS_^Ug_ko[^nhNim`UVSnfskexed\Xoslqzwrl{vzykaelm^`ojeqx~gZVX`lx|{p_c^gVX_Wcbkp}xllzn]xtn|kvtop|sXjn_Y\UabWdpbS_bibblZa~lfltvomwwli{nrfr~ntnd[aiiptts_imSeqeVcod|dsx}wlpmk`Yafgt\dU`URNWdQO[NOHdo\bGYiMJ_KYmd`yin~e`U_T]u\SR`fN\`URI[XPYtu]_ekhXb`Z^qcgjxqsnhvt{rz~|yntkst
y}|
sstyso~zz}~~}}~~~~~~~~~~}z{|~~}}~}~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~>.1111/o]-0000-F¡¡¡¡¡¡ wegfffc¾»»»»½³mfgggggmnnnnorJ,00//,I
}}{{z}~||~}}}~}}~~~~~
-h
S7¤¤¤¤¤¤£r]____[~ÈÄÄÄÄÆ»g^_____egggghk=;|}z{z|}{|~}}}~}}~~~~
|yzz{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{y{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}}}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~~xuwyz{{{z{}}}}~~~~}~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}}~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~rtx|||{||}}~~~~~~}~~~~xrvy|}|z}|}}~~~~~~~ssvx}~|y}|}}~~~}~~
ty}zxurkeimolffggpsswy}~yz{|}}~~~~}~~{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxy}zxwy||||~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvutvwuqrqnprpghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkigfgggihgmgjghehgccbab``]X[[WXWTVQPTSSMJLKLLNOOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__`c_\_]`]^Z^]YY^ba^^ZY_\XWSNMLKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{yvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSSPMJMNPROMPQQQQRVVRQQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTttuxzzxvvwwz{|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPPRQPNNOOONOOPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMMMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKLFDFJKKKHJLLLOMLLNOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOONLORNYpprwxwwtttwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBA@@CCDEACEHKOKIIJHGJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOPNPOP`pprxxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAFQE=C=?EH9:;=?=<AF@>:<>><ED=?EA?@A@DEGGGGBDDEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOABA@BA?;><>??<899;;:@:;><;;<<HL==AA?BC=ADDFBFFDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprttsqrwxy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;::;88:87:<978;;>=;;:8:@@BB?A?CFDBCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqususqtxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;<?@AB@=<9<=<979::989::78:9:;;8789;:8<;=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJINJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?=<:=>A@A?>>@?>=;<<>?=<=;:<===<<<<;<:;<>=>??A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquuuusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AB?=?CCC@><=?@??=;>=>CE??@=;===<;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVpoqssttuyz{{|~~~~~~mLPQNOPNNOPPO><<=>??@>@@???CED?=;<@>:;::97:<9==@=:<;;<;89;?>=<=;<@==<<>;=<=>A@BAA@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}}~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC??AAABA@=<=;>>:::<:8988:;=@?<;;<;::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFFHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvvw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@A@;BCBC@???@=?@><>@?===?==>CD?;<=>@==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hlpppqtuvy||}||~~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGABDCDA?@@@?=@><=??@@@C@@?@@>=<=@EABBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBBC@BDDBDEAB>ABBAB@?=ABCDCCACEGA?=Vppqpruuwz||||}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@A@>;><?=<:>=?BBE@??Na_J@CEIIIIMMKECFGHEGEEEDDCA?@>>BFJJGEEFFFJNMKJIGGHKLJGGCDDDEDABBC@CDEDDEDEFCBAEeopqqtvux{|{||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@DED?<ACDB?>A?ADEDCWu~XGHJLLMOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHIHGFEFFFDFHGEEHHFHGHFQnopqrvvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFIHIGHHIGFBDFDDCAUtWILMLMNLJGGGGDGGGGFHFHECDDFEDDHHCCCGJJKLLLKLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrtwwz{{z{~}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKKKJKMJKHHFFGFEPl|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD???DFGDEGIKIIGHIGIIIJIHFJJJJIJIJJJFILLJJKKfopsstvxy{{{||}~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKKKKKMLKMLIFJVl
uIIFB??@???<<<>::<AA@><998<<=;>;9;?ABAACCC@ABEDBCFHIHHHLMLGIJMMNMJJKKJLMSloqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHGIHKLONNQNQ^r
fBB=88::9878896479;<:8567789787689;<<>A;999==>;;=ADEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@BFHKHLKNTg{T:8656766646763468:876565677778:7788:;7688989876:<@GFIFIFEFOSRSSROPPRTepqsttwy{|{|}~~~}}}}}~~RHHHIKIGIJIJJKDEHEB@5788=:=DBDFFDVxH676468874578467799776765::;::<89999877:::8878589;A=>>BA?AKLOQPQOOPQWkqrttuwz{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A@<:579897:A9<D?P}z>:88;<=>9:;<89;9:;::9;::>==?;;<=:><:<;<<=<::<8::;:999<?<=ABDIILKJKLWorsutvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?;;<:89989999:>=??Cv
l<;>BCEEBAAB>@CA@?=>>@???@?@==?B?AA?A?=AA@??A<><;:;:9;?=;;==AACABCAXpqtttvy{{|}{}~~}}}~~~~~~~REBAGJNOLIGK:8:;9::<<:::<;=>@?=a
^>DGIKJJFGGDFHGECA@CECC@BCB?@DHECEDEEAFEFDFFD@B>=@>=?@>???>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD979=:<;>=>>;><??C>J~
WGLLMKNIIKHIJJIFDDFGFDCFGEBHIKGHGFGGEKJLIJKJCFCCDBAACBDCCDDCA=;=@hpsttvwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA97;>;<:=?>?<?>BAE?h
PMPMKNKJLIIJHKGEGHHIEEIGFELLMIJGGHIJNMOMLNKHGGGEECFFFFDEHHFCA?@Lmptuvxyyy|||}}~~~~}}}}~~~~~QA?>?FGG=<@@87<:;<:=?<==?@CBHS~
qMQOMLLLLIHHFJJEJHGKJIJHHGKLNLLHHIJMPNONMOKIGIJHIDIHHFFGGIGCBACUoquwxz{xyzz||}~~~~}~}~~~~~TDAABGGB?8?@8:;7<=:<?<=>@BCCLm
^RRPMNMKJGFCHKGLJFKOLKJJLMLOPNHIKLOQQPQOOJIJJMKLFGHGFGIFEEB@BB\prwxyzyyy{z{|~~~~~}}}}~~~~UECEEGGED;?A;=<8?==>@ED>BDCFJt|WVRRTROLKKEFFKONOWVQPORSRMSTOMSLPSUWRSRPLJMMMLNGGJFFHJDDEEBDCcquyyzzz{z{zz|~}}~}}}}|}~~UFEGGGGHF>@B=?=<A?AADTKBHIFIKx
gVVkaERQQPK;;QSR`u]UVTVYYRXXRZfPUWZ]RTWQPNRPPQQKKKGHJHEFIIIHIjsvyyzyz{{|z{|}|}~}}}}}}~~~THJIIGFFE??A@EACFDCDKVPJPPNPPy
}al[dU:XXXSQ?@VUY\d`VYbr^]V]ZVEQYZ\Y_TYgRUVXTTVSOOMKLJIILMKOMTptvxyxxzyz{z{|}|~~}~}}}~}~~~~~VJJIHGFDDBA?HLIMPKIJOSRQTVUVTu
g;~znpXZ[ZRSRWVTZZuYU}a\X]^WIV^^[[_YHYXY\]XXYWRQMPQMMOSQQURbtsvwwvxxxz{{|}}}~}~}}}~~xy}YNKJIIFBD@A:OQQWXPPPQRSRVWWWWl
n~fYY\YSVTWRQWVcQerXZW_hP`fZZX\hbGOZig\[\]]WSNSPPQVVVVYZostwvvtwxx{{|}}}~~~}~}}}}r}ot|]SPOMKJEC?@;PPZZZRSQOQRQURUSV^ux
}{\PVXTRTRQQLOMKfyZ]TYUV]ZLTZUST^ZXWWWzkXZ\\^SPPOINOWVXZZdqtwvttvxyy{{|}}}~}}}~}}~~~zxwvsu{tk~~kry^[VUSROKFCDAM^lVRSOOQOQVQSRRTcdv
~ymqVIKNNKMKHJDFHEC>ScURQQNKRURMOYQMNQSUUMQSRPNLKHCIGRSTY]mrvwuttw{zz{{}|}}}~}}}~}~}}~~~~{vsw}~~du}iqt`d]][YUQLHLIaltPQSMQRPS[RSRQRUUbs{|~}{{
u_]KC>BBCCA?DPCC@C>BHGV@HNMG]iQHGOFDEFHGHBCHGHJGDAAC@NPMRdtuvuttvy|{{{{}}}|{~}}}~~||}}vt{mh|gnqfiedb\XSQPURsWe[OONLRRPUYSUQQTROV`klsvz{xytrnstsyx~~kLG>>::>@?>>>jPKaEFHIEB?GLMGMQUJBE?><=<==?=?ACB?><=B>IMFUouuvstvx{|{}{|}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QQZ\Y^IJOPNKLQRQTVUWQQWVPX[b]agmmlnjh`nrimlqu{z}{xz||xwxdB@@A<:BCAACA[\O{NOONKLMOOPLKLWNIGAA<977599=;;;8989?;BG>\tuvvuvwy|||}||}}~}|}}}}~}xuwz{zwyxuw{|yxuywcqhipmnmmhf^OO^\ZIGOQQOMPQNQRTVXSRYTNYZ[WY\_^_e_]^qwk^`gkwooljomnlfbYGFFHBAFHEEFCLQOaWRXQPSSRU[OOQVPMIDF>996587979:365795<B=ftuwxwzy{}}||{|}~~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMKSTSPQUOLRSTWXSTXQLXYYVXXVXY]WXXhsk]V`tkaa_]d`_^YUPMONLIGJKIHFCPOSZWTTNQSYS\eUOSTQNKIHC?A9988978847578599Gnruyyz{{}}}}|{}|}~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPWVVSTVOOUVWXYSUTLKSUUUUWPTUWTUR]n^RNY`[VY;DUWS[fJLPRROMMNMMLJFPPUYSTOJNOUST\VRUSRNMLIHHF?>=:787659967665Xqqtxzz{|}}}~||}|~}}y}}|~~~}||}}~}|rvqxxruuqqnppopuvtnjddjppqrpnfedc\^RTZVWTSVTRXWYYYRUOIGOPOOMRJOPOONNOTLMIPPSTU2<XMI@Q=c`QSQPMPPONNMPNTRPRLILKORPQRRTQROLMKLLHCBA=:9876;B4566;eprvxy{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqpuuvcjgeWhtrrqniihpVVTUXUVURWVUZYXWVQSFFAFGGHFJDHJHGEHLHKIGLMPMG/E_R>4@>joaRRQ@GTQOPPQNQOPOLJLLPPNMPQQNQOJLMMKGEECB;==<9=G6676Enquwz{{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknbePSTRSUOWVUYYVQQQO@>;=?@BAC@BEDA@GHGHFFHJMLDGCORC8DMS]gSQSAGUPOQQPMMNLJLKLNOOQLONMILKIKKLKGFFED<AA>;@E;<89Trsuy{{{|||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLONMQSLTUTWWULLKH=987;?A?==A@B==EHFDFFIGJJ@FAA@FGDIOHQRa\QPROSNOOLLOMKMLMON[VKMQOGIHCIKLLKFFFE?BC>=BG?B?@druw{z{{|{zzw|xy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B?;>A@@>AEJECHGIGIEBB?><B@@GJEMObePMOMWKLNKLMMLLKNNSdMJLRIIIFBJKLMNJGIFBBB@?EFEHDLopvzyy{{z|zwsxux||yznqqmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLLIMPMPOHKE?B=99::?B?<ABAADEGKFDIIGGHCC?B>?@@=CEDLMQTLJIMTFIIJLIJKIILMOPQPKGCKHCCKKLNONIJIGCCCDIJMLIZsnxyxzz{y|vrpurtyyvxjqokllnttmsv{stxronqovsnporpopstyjN`gsjt|ygosqjqheqHKCFGHGJKIJLDGB<>=:::;AB?=BBCCHEJLJEIIFGHCC;A@B>@?BDDIMOGHJGHKDHIKMHJLHIJLJM]RHIDNGBELLNNPNKMJKFGGJMNRNMcnjwvw{y{z}qmlskptttuhpmjikktpnttyprztorqowsoqptrprutykNVmulq{vinoikthepFJCFEFDEEFEGCC@=<=:;:;AD@?BCEEIFJJLFIIGFFDB:ACC>?CCCEGKMHJNHDHEILNMHILGFFIILNKIHEOICGNMOMPNNOMKIHIOSQRNSggfrosxv{z|lhjoekpmsqfmlhikltmoutwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhmf_pGJCEEDBBAE@DB>?>;;;>;=?DB?ACFGKGJILHGGGFEC?=DEB>ACBCEGHIGMPIEFGKNOKFHIFECDIJHKIGHPKDJNLQNONOPOJJIMRUURPXeaamfproryzgehhcilfqlflmgiklsmpwutpnvrosrsutqssutsuvvvyvutvlkuumrvqlnlerMGEDFBA@AD<BA>A=::=?;>?AB?@BEGJFJGIGFFFDCBAAEFCBBBDEEGGHFLPLHNJJLKIFHEFECCHIHKJGKRNCOONQPOONOPKKKPUWVVTY`_]i`ninhrsbeffdhhfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwuksunutsqskksMGGEFAB@DE<AA@C<8:=>:@=@C@@ADFIEHFFHFEEDCEBDIFCGEAEGEFFGEIMKHQMJKHHIEFHHECIIIKMKPSNDRSRQSNPMOPMLNSWVXYVX^Z]d`icjigk_defchggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxnouorsuqqipzMGGGHBBBEE<@CBD<7:>>;>;AB>??CEGDFDDGECECDFFFJEEIGBGHFGFECFJJGMKLKHJKFIHJHEKKLLNORTOHTUTQTPRMNQOMQWZVZYWZ^ZXa`a`^hec`deggjhhjghnllomqpiuuxrrpupppruvpusuvu{~}xvtwvvvwplupmsunossyNHHGIDBCHE=@EBD=8:>>=<<BB=@>ABFCECCGCCDDFGGGIFHJHCIHGIGFDHKIGKHMKJKLHKJMKINLONORUVOLVVTQTRRLOQPOTZZY\ZZ\__]_c_\bdlc`dghr
hgjfjnnponsqjtuxrsstrnpqvrquruus~y}uuvvvvxriuqkrtlqwquLIJHJFBDGE=AGDD@:<>@?>?CB<@>AAGCEDCHDEDFFGHFHGIKJEJHHJHFFLHHHJGLKLLLIMJMNMOLPPRUVWOKVVUSSRQLORRQV[[]^[]^``a`bf]d`fg`eijdssfjhflprqossnswwpuvtsmoruorspurvrtvuuuwvuwsgtrkqrkrwpwJJKIKGBEDE<AFDDB;??A@@ADA@B>ACHBEDFGEHEFEIHFIHJLHHJJIKJFJKHIKJGKKLLIIMKMNNOLOQRUWVMNTVUSRQPMNTSRW[^^_]^``abb`ddebdibdijgvlkigmosqpqpprywruutsmmssmqrotuuspswtuuwvuuufqskpqjrvpwJLLKLGCCAE<@EEDC=AACBBCEACDAAEGCGGHFEIFCGJGGJFILHIJMJMLGKIHLKNQKRPLRLJMMNPPPUOWXX[NSQW\ZSVPNTUTTXZ_bb_da^ac_afcabhnhbihhmxvmhinosrpqrrrvtsusssnksqmprotvsqquvuswywutucmtkopjqtqwLMLLLGDA@D>>DEFC?CAEDDFCBEGCBHFBHJIGHJFDKJGHJHIKGJJNKNLILHJMJZfJd[JlRGNM_nUls[qpbwcRPbvuhucavaXnqbdvimzf\lt`lkV`wvijghfglmjmojmosrprrqrsrssrtrnltonpqquurqstvvuuywutt`ktkppkqsryLNJKJFB?@B?<DDFDCCCEEDFBEFGDDJEEJLKIKLGGNIHJKGKJIJJNLMMLLIMML[sbdp]llULNer]geqlntgpi_aYnmbppbkjjgoqtetno\pvgpOLryvkaakeelxmkvlnpsrprqpqrqrrrtrmmsnnoprutqsstuuutwyvttbmukpplrrr{KLIHGED?AA?=BEFBECEDEEDCHHGDDKHGKMMJLLFJOHJKJIKJJIJMMNMMMKNMN[rponppkjLOPmXNibtrpamov\YlP[mmZqmkplxxtsip\`slqkUuyxoc^kfbgppjioppsspqpqqrrqqrrtlmrmmnorutqtrtuutuuzvutenukpolsrryJKGGEEDBAB=??EGBGDHEEDBFIHHEGKJGMLNJLMGLNIMKHIMIJIJJNONNMLNML\hdu]lqVkMOQnUZk^klvaldtTecNlYl\toljlxjwuhp]_skhWbcw|oc`ghacityknnqsspqpqprqppprukmqmmmoqstrsrtvvswvzvuthoulsomsrtvIMFIEEDCAB<B@BFCGFKGECCHKHHFILKFMKKRRLHMMINJIGMGJJHINOMNLJMMJZtppoqqlkOQRnYskgooqqomt^nXat_nopoqsoousttjZ^tcwxrjnzhaacfabjmtupsuvsqppqort{~}wlkqnlmnprsqttsuutxxyytukoumtonssvtIKHJCDDE@@>CCAFCHIMHFCFJLIGFJMLFOJJWRKGLKKNIIJLIKJIIKLMMLIKKJSkbYi^_jcrrZ_Yjo_eeUk_c[aaQ`mh\j\nijd[oedp]Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunvqrutwrHHFJDECFA@AEDCFBHJLGFCFKLIEFJOLIOJL[QJFHILMIHJJKKIHIGKKKKGHJIKKLJIKLNT[]TPUMQONOOVQOPQNOQJJNPQdqiTYV[[\UYZ]X]\\cfaafbcf_^fkmhmtyrtroppt
zpmmlkqsttrtvtuyyxuvqruovrtsuusHCEGFF@EC?CGDFGCIKLGFDGJLHDGIPKLOKLWMIFEHJJHIKHLJIGHHJHHHEFKHHJNKHO\W^O\\`^OXYS\\b^MYZMXaRKYaZS`d\aX[ddVVX\YZX\VY\^c_d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtPBCDLMACCBDIEGGFKJKHEEJJJFEHHPJLMJMRIHEAHFJIKKILJIGFJHEFGEEJFBILIJS_Y`X`a[`UXZT]^Z_RY\P^\YN_\^S[^d^Z]`c_Y_b[`^[UYYZ_^ccbaceiekrpoppnow
{
uqprrsuyzzyyxxxwryvxrqxvtvaSJJMIDCACFGEGGIJJIIDFKKKEFIINJNLHLNGHF>HGLIKKJKKIGEIFCDEBFJD?IKHNZbY^^a_RTSW__\]Y^QY\MV_WKQY[Q[_ba]^ca`babcceZRZWW]Z]d`__cebhommllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxYQJFDGEBDHHFGHIFGJGHFHKIKDDJJMMLLHJJHJG@GFNKKKMKKKIGIEE@DAHIA>HIFO]`Z[d]_TQRX]\\\_[KW\LR\YIM^QQ]_bccccb\dbadcfXRWUT\X[a_^_aa_dlkmjklnv~uz|
zrsuu{
~xpzwvx\RMC@IFCEKIFGGIGGJGFFILJNECJJLNJLIKKIIGCHHQMKKOMKKIHHFE?EBHHA@FECS]Y^X_X_[]UXXO]\QKJV^X^[]VZaRR__bb``bb_cbaddaXPRRS\S\]]^^___diglknnp{{|~{
srw
|x\SKBAGFDGMRHDRKFHHHDFKIMPEGIJKNLLJLLJIGDHKQOMLPMMKLIJDEAECHFAAFCAUUE\T^SW`XNTUMYZLJKT`a[_X_^b]OYb\``_bca]baW`_UQPQRYS^\[]]^`bffflfoow|{{}
zo
~INFDFFHDIScQEW_IGGHDFMJPPFIIJKNLLKMLJJGEJNQQNNPMNMNILBEACCFCB@CD?LGCLLPOOMFMFFHIGFLKMOPILOPPSPLQTSUZXWYWWcVNRTPQPOQVT\YY[]\aaefdhdlmqsszy{z~{}{
}KIEEGFGDKN^MHHYMGHJHGMLQQIKJKKNMUNOKKLGGKPSSNPPNOOOILFaED^LDfbCLZG^\smOMVnYKCP_TkVgJ]XU^DLQULMSVQRTXVTXTT\TOeZhheZUkTXWU[\[``abbcagignlhsz|}~}}zr{z{
~z{LIEFFHEELPTJKG`THJOJIOMRQKMKLORUROPJLNGHMQ[YOPPNPQPJKQQI|YYrsWPmGqnoaVPqqtOBksmqspSo_[nX]V\XUkhU]VcY`YZ^UUWituu`av_Yb\\f[_aaab_acgmom`pwtx}~vxzmv~tx}|~|z~wwNIEHMMBDLLGJLFRVLKOHLRXWQNOOMQTNOQPLLOGMPS[ZTQROPPQLIZx]TxdhXRSPvftlpbnfkRrNLwmjrpsrqrpoo]ezuxqqzq~r}ku}aRh|esspss|}p~xor```bb[bahlnkblfgmw~~{xwtvziq~nt|~wx{~x|u|||ssNKF`]GADMMHKKHKPOMNJNV^YULQSNYYLSSSNLPIQRTYWWPTPPPSLHgxlcxqmZJKTypumubnvPddHevqmwojfxxiWrQhzmijzz~lxzphnXuujvuqash}ilx|o___cb\_cegjjegbcdlmppstsssyqrxbmtgry{ssuy~svzn|}yxrnMJRtNCBEPQHKLJLQOOOMPZ`ZXKSWPa^RVQYSMPJSTVXWWOUPONRKLrouuquqch`UnKqp^GhyWvTKhx}w`y{sna]modSgrunmypwkustqlm\s~zkmy|lun|kqwux^__b_^`edighfe^bbiiijknokqnmjpacfcowxompsynqpj{ztromKKZVHGEGRQKMNLLQQPPPQW\YUNVYUfXRRY^TMNJTTWWYWOSOONRIRmHiwK`dvvTVlNnl{rajguTKWkg|lmlx_Zpz{_`zscroxqgc|ir{]TKl_vuljv|{nyl|p]^^b[_ceegfeec[ccikkrsrwgmihdg`alagsrlglmr|kmhk{tmmkmOGJKHJHHRQMOPLLSSROSRXRWTPWZVVTTTa`QONKTSSQVVOOMNOQKHQNPULKKRSRQROVUQQORRXXPMOUTWXX[[UQRW[WXW[ORTWWXQ]XV\UTOXRWWXYZ`\hs_\[[]]_cZ_ddegdddcZdbgffmnmuffgc`f^]g`dlhfgkhpzhggkujhgilPIKKLMKJTRNRQPLVVTPTUXUZURZ]UUTWUYXOOLNWTPNUSNPNLQPKIQQKQMJJOQTQPQSRJHMOPQRPPPTURXW\WSSPQUUVSZQNRRWTRXUSXTSQUSUUYYX^Z_a]\[Z\\`c\^bcdgeeecZ`adabhhjncad^_c]Zc\bma^ffgmsdihkkedcghQJKKNOLMTQOTQRMXWUTVXWWZVS\`VWVYUXTQPKOXSPNUPNQOLSPMOUSNQNMNQSPTPQTTNKMORTTQQQUWUYZ[YRURTXWVY\SOSTWTSYTVXTRQWVVX\Z\`]WY_]^]\]aa^[bcchgfdcX``b^`hegea^_]]^ZZ_Z_g`^^]chkahfhfd`bdbPKMLPQLPUPPTQOQZYXWYZZXXV]jdVXYZWVSTOKOVTPOTPPQOMRQORXTQQOMORTMWQSTUONNQTVURRRTXVZ]\ZVVQRWXU[[VPSUUUUXSWXTRQXVV[_[^`_V_]^`]\`___ZccehheebYb`b^_fdc`b]\\\\YZ[X[a[^]]_b__bddbd__`\PMNNRQMRSPSTQOV\ZZW[[\YZ[dqmhd_[YVVXRMMWSMMRORSOMPSRU[UTPPLPWUPVQRRXMOPRUXUTTSTYX[^]\[VROUWU[ZVQSVTUWUSXZSRQZWW]_[```Vb\`a]`b_\`]cachiegaZc`a__ee_`c[Z\[\ZZYYW\Z\Z`^_[^^a`_c\Y`ZQNONVQPUSPUUSPW\\\Y^]_W\^jpwyc\[VVYRNPWSNQQPRTRLRTTY[WUORNSXUSQRPRZOQSTV[VVVSVZX]^\\^VSNTVV[[UQTUUWXRSY[SRR\XZ^_]ba`Wb[cb^ac_\bab_dgieg^\d`a`acd_b_YZ_[\[XXYWWZZZa]][]\\Z]`W[[ZPOOOYPUUSRWRTP[]^]\`\`U\\hjr}slh\UYWQOS[SRQSRUUUKRWVZZZSOSQUUTRMTPRZRTUTX]WXXSX\X^]YZ]UUNVVW^ZWQTUWXXSVY[TRV]Y]^a^cc_Y`[eb_dd^^cca^efieg_^daaabcd_b^X[_[\[XXXXW[Z[`][[\[XZ[^V^Y]POOR[PZUVWVSTT^^`_^b\`U]^bkyum}lZUZVQQT\TTTVTVYWLRZV\[\RPUSWUUROVPSXSWUV[^X[YUZ^X_^Y\YRWRYXY_YYRTUYYYUWY[UTZ]]^ab`ed]^]]eabfd^_dc`\gehfeb`ea_aabb_`^VY^Z\\ZYYWV]Z]^[Z[\[WY\]VXW]SOPWYQ]UWYWWUX_`aa`c]`U]^beev{hXYZTVTV\XWWVWW]XOU\Y^]]TSXRVUSQRWQSVTXXX^^X][U]_X__X\VQXTZZZaX[TVWZYZWXYYWV]^`_dcbfe^b\`fbdfd_`dba[fchfdfaf__bbaa`_^VU]Z[\[Y\YY][[[XXY[ZZZ]_]TY]UNTZVT\UWWYWV\`abcac__V[`da_zuohZ\ZVXVX[ZY[YXY`VOU][`a\UUYPTVTRUUQTUW[[\__Z_\V__Y]^Y]VRXWZY\bY]UVZ[Z[ZZXZXY__``dcdeecdZbfcgfe^ab`c]bciedg`h^bbcaa`^_YT[ZZ[[X\XX\[Z[WWZXX\[\`]V]]SOVZVVZVYVXWX^`badada^YYadb`kfh^\][WXYZ\\\_[Z[bVSW^]ac\SVYPVUUUUUSUTX]]_``]a]Wa^[^\[^XUXW[Z__[^WX\\\]][Z\WZ_a^`ddeffgcYcfehgd^c`_ec]fidei`g^cbcaa`__\XY[YZYYZXW[[Z[WXZTZ]\[`\U^bMRWZWWZY[\XWY^`badada]^Yacb_a`a_\]]XW[[]]__\Z]cXYX]`cd_RXYPWUWXWVVWV]]^aba_b^Ya]]^Y]]YXUV[[`^]_YY^]^^`\ZZY[_b_cfdfgfhcZefgigc_c^afeZiicfjdf_bbca``_]]ZW[YYXXZYWZ[ZYWXVU\]]]``bbxKWW\YW]\\]ZW\]_`bdbca]`Xbcb`cac^\]\XW[]_]`_][`d\\XZbecaR\YOXVY[YYWYZ`^abc`ac_\b]_][^]YYTX]\__^_[Z^^`bb[[W[]`bbdfdgffhe]eghifcab[cg`\iichjge`baca_`_]]\Y\YXWXYYW\[ZWVXPXZ]acffrkJYW][Z_]\^\Y][^_bcbaa]b[bdb`cbb]][ZWXjq`\`_]\ac_^YYcedbT_ZQYW\]\[Y[[c`ccc`bda`c^`\^^^ZXU[^\\aa_][`abfb^[S\_`cddfegffgf_fghhgdd`[eg^ahhchigd`b`cb___]][Z[YXXXVZV\[ZVVULXX\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyyz{{zz{zzzzzzzzz{{{{zz{{{{{{{||||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvuvvvvuvvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyyzzz{{zzzzzzzzz{{z{zzzz{{{{{||||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||v}}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÓÏÄÅÅÅÅÅÇÒÔÔÔÓÓÓľ¾¾¾¾Â¢~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}v~~y1333332j{éääääåàÔÔÔÔÔÔÖãååååäåÒËÌÍÌÍЪ}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vxxxxxxxwwwwwwwxyyzzyywopppppprrrrrrrwzyyzzz~||}}}}}|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvuuuxvvvz{x{xwvx|zyyz~|yyxxxxyyyyzzyyyyzzzyxxyyyyyyyyyyyyyyyyyyyyyyyyyz{{{{||{|||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwvz}y{{y|{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwvz~zy{x{zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z{xwwxy|z|w|yxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{xzzz}|z|x|xxxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyy{yyzyyxxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyyyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyyyyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oxyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{|||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}|}}}|||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~
~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqppnnnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrqppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpppqrrqqqpopooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpooppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqqpppppppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqpqqqqpqpqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrqqqqqrqqqrrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrstrrsrsssssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz|~~|vvwwvuxzxxxxwwwvx|yy|zyy|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{{z{|{}|{{{{{{zyxyxxz{zzzyyz||{zz|||zzz{}}|~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}|||~|}~~~~~}}||}}|}|}}{}}|||}}}}~~~~~~~}|}}}}}~~~~~~~~
~~}~~~}}}~~~~~~~~~~~}~~~~
|||{|}||~~~~~~~~~~~~~~~~~~~|}||}}~
}||~~
}}}
~~
}}~~
~~~~~~
~
~
}}}~
~~~~~
~
~{z
~|}}}~|{|
~}~~~~~~}}~}}}
}|}~~~}|}}|z|
~}}}}~~}}}}zzz~~
~~~~||~}~~}}}}~}|zzz~~}}}~
|}}~}}~~}~}|}~}}~~~}}}|{{{zzyz~~~~|~~~~~~~}|~~~~~
~|~~~~~}}~}~~~}}}}{{|zzyyy{~~}~~|~~~~}|~~~~~~~~~}||}
~~}}~~~~}}}}}|||{zyyyy}~~~~~~~~~}~}}{|~~
~}}}~~}}}}}}}}|{zzyyyy
~~||~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~
|}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
||||}}||}}}}}}}}}}||{z|xyz{|~|~~{||}
}
~~
}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~||}
~{z|
~~~}||||||||||||||}|||~~{z{zxz{{|}{~}~}}}}||}~}~~||~}{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{{z|~|~~}~~~~}}}{}}}}}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{}|||{|||zzy{|z}
~~~
~~~
~~}|~~}}}}~{|}}~
{z{ywz}~
~~~}}}||}~}|}}}}}}|~|}|{}||z{z|}}}~}~~~}||~}}}}|{}|~~~~~}}}~~~~}|||}~{{}w~vx~}|}|}~~{~}|~~~~~~~~~~~}~~}|~}~}}|{|||{|z}~~|}|}|}~~|{{}~}~~}{{{}{z{{{~~}||~~~y}~v{vx}|||{}}~~}~~}~~~|~~}}}{{}}|z||~||}|||||}|}{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~~}||}}|}}}}{|~~~~}~|||||||~~{|{||||}|}|~|}||{{|y{|{{}{}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}}}}}|}|}}}~|}{}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~}~~{~|}~~}}}~}}~}|||}}|}|}}}~}}~~|{{{||}|{z{|yzyxy{~
~~{zy{}}y|zr}{{|||~~}}
}~~|~~}|}}~}||~|}}|}}}~}~}}}{|}~||{|}zzyyzy{{~~
~~~z{y}}zzz}q~z{|}}}}zx~
~}~~}}~~~}~}}
}~}~~}}}|~~~}}}}|}||{|}{{{zzz{{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv~
~~}~~}~~~}~~~|}}|~~~~}|}}||}}||{||{{{|{|||}|
~~~~~{zz||{v{tw~vr{~~{xuw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||{|{|}
~~~~~~~~~z{z}}uqz|zqz}}yxtt
~~~~}~}}}~}~~}}}~}~~}}~}}}~}~~}~|{|z|{z
~~~~~}~~~{{z~~xry}qzx{xytu}
~}}~~~~}}|}}~~~~~~~~}~~
~~~~}{z{z|{z~~}~~~~}~}}z{|
{{ry{|pwuvwyvtz
}}}~}~~}~|}}~~|{{z|{|~~}~~}}}~}}{{zx|vyz|qtxwvxury
~|}}~}~~}|~~~~}}z{{||}}|~}~}}~~~}}}~}}}}}}z{{|v}yxzzruyyvwwsu
~~}}}~~~~~}||~~~~{{|||}}}~}z~}~y~|||~}~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}}~|~~
~~~
}}}|{||yz{z~y|yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzswvst
|~}~}~~|~~}~~}~}~~~~~
~}||||zyvyyzyvyv~|{{{~}{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~}}}||}~~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{z{~}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvqxyrx
~~~~~}~|{~}~~}}}~~~~~}}}~~|~~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}}{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~}|~}~~}}|~~~~}|~~|}~}~~~
~}}{{||zw{ywxwwx{{z{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqspxwq{
~~}|~}}~~}~|}~}|~}}}~~~~~||z|{{y{zwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{|||zzzzzzxsvupprowvr{
}}~}~~~~}~|~}~~~|}~~z}}t|}zzzz|yyzz
wy|||||}|||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~zz|}|{}y{zzxyxy{||}|||||||}}}||}|~}~~~}|z||{|}{yzzzyysuuooqpwst}
~~~|~}~~}}~|||~{{~yz{z{~wwy{|{}||||{}|}|}}|}|~~~~|z|}{}}{yz{zyxstunsqpxruz
~}~~}~~}~}{~~{|}{z||{yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~~}~}~~{}|}|||wxuxxy{||}{||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~~|z}|{}~xwvyyy|}|||{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~}~}}}|}z}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{~~
~||||x|yzyz|}|{||}}}||~{{|zzzupxwyvu|uv|
}
{~~}y|zzz}||}z||}}|z{~~~}}||}|vrvxxvtvt}
}
~
{||}zz{}}||z|~}}}}~~~~~|}}~~}|{xvuv
~
}}||{||}}~~~}~||}}}~~~}}~~~}}}~}}~~||
~
}}}||||~}~}}{|}}}}}~~~}|~~~~~}}
~
~~|~}}~||~~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~}uz~
}y|~{
~}~}}}{}~~}{||}}}}|}}}}|
h
j|{qq|sstt}usqtpurstv{}uvy
hzrss|s}}}~}~|}}}||||}|||~}~}}}
}q{pyv~nypus|vzy
rpvxqvtturstvinrotvnulwm{snym}rsvsvmmxlpylu}~}~}~}}}||}}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}}|}|~~~~~~~}}~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyqjoyxpkyszozwvvp~~~z~}}}~}}~~}~~~
xyrz{pp
x
xyks~y{krz|m{yyt}vnoot|uwqy}}m~uo
zrr{|tpozls|nw~~}}{}{|}}~}~~}~}~|}~~
}w
}~{|{~{||}~}|~~}~~~~~~~}}}~|{|~||
}{{|}{||}~||~}}~~~}}|}~~~~~~||}~{|||{{~
~|{}~{|{}~}||~}~~|~}}~~}}||~~|}|||}|||~z{{}~
{{~~|||}}|||}}|}|~}|}}|||}}|~}{|}|}|~|||zz||}
{}~~{||~}|}}|}{||||||}{{{}|{~|{|}}|}}}|zz{{||
zz
~|~~||}}|}}|}z{{z{|||{{{~{{}{{{~||||}~}{z|z|}
|
~~~~||}}{}}|}zz{y{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yzzy{}}zz{{}|}||z{}||}|~~|{{|~}|
}|{
|~~}||}~}~{~}||yzzyz}}yzz{|{|{{z{}}|}|~~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|{{{{|}}}|~}||}~|{
~}}{
~~{}}}~~~}}}}{|{zyzzyzz|yzzz{{|z{{{|}~}}}}||}}|
~|~~
}}~~~{||}}}|~~}}~{~{{zyzzyzz{yzzz{{|z{|{{}~}|}||}~
~~}|}~~~
~}|~~|}|~||~}|~}||||{{zzzzy{zzzzzzz{|y{}||~}~}}}
~}~~~~}}~~~~~
~~||~}|~}{~|}~}~}|||}{{zzzyy{yzzyzz{{{z{}||~ÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÌÌÌËËËËËËËËËËËËËËÌËËËËËËËËËËËËËÌÌÌÌÌÍÍÍÎÎÏÏÏÏÐÐÐÑÑÑÒÒÒÒÒÒÒÓÓÓÓÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÔÔÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÓÓÒÒÒÒÒÒÒÑÑÑÑÑÓÇse`[KYgUMFH@=77897<<<:<;>6:=8<;:9878;;:?;=;<<>;?A?BBACDEDA>=<;@CCA@CCAAGHGIKRÂÕÒÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÊÊÊÊÊÊÊÊÊÊÊÊËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌËËËËËËËËËËËËÌÌÌËËËËËËËËËËËËÌÌÌÍÍÍÍÍÎÏÏÏÐÐÐÐÑÑÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÒÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÓÓÓÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÓÔÔÔÔÔÔÔÓÓÓÓÓÒÒÒÒÒÒÑÑÑÒÌrg`\MYeRKGK?;378;89>=9<:A:;=7:<<::78:;=?;?<=<?>?A=AA>CCDB@A>:;?CDACDDBBIGHHIN¾ÕÒÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÊÊËËÊÊÊÊÊÊÊËËËËËËËËËËËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÌÌÌÌÌÌËËËËËÌÌÌÌÌÌÌÌÌËËÌÌÌÌËËËËÌÌÌÍÍÍÍÍÎÎÏÏÐÐÐÐÐÑÑÒÒÒÒÒÓÓÓÓÓÓÓÓÔÓÓÓÓÓÓÓÔÔÔÕÕÕÔÔÔÔÓÓÓÔÔÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÒÓÓÓÔÔÔÔÔÔÔÔÔÔÓÓÓÓÓÓÒÒÒÒÑÑÒÏwh_^OWgMKFL=8765999<>9?<D9;<8:<=;979:<=@;>=>;<><=>A@>DCCC?A=:;=BCECCDA?EHJIJLºÕÓÓÓÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËÊÊÊËËËËËËËËËÌËËËÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÌÌÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÏÏÏÐÐÐÐÐÑÑÒÒÓÓÓÓÓÓÓÓÓÔÔÔÔÓÔÔÔÔÔÔÔÔÕÕÕÔÔÔÔÔÓÔÔÔÔÓÓÓÓÔÔÔÔÔÕÔÔÔÔÕÕÔÔÓÓÓÓÒÒÒÒÒÒÒÒÓÓÓÓÔÔÕÕÕÕÖÖÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÓÓÓÓÒÒÒÒÓÓÓÔÔÔÔÕÕÕÕÔÔÔÔÓÓÓÓÓÓÓÒÒÒÑÑÑ~gabNUjJHIK?<:937677=;>9=:::89:;;88:;;<>:===:<?<=?B@?CDCD>@==<@CDCBDBD>DHIIKL¶×ÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÌÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÎÎÎÏÏÏÐÐÐÐÐÑÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÔÔÔÔÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÔÕÕÕÕÕÔÔÔÓÓÓÓÓÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÒÒÒÑÒi_dSXlHHHK@=78476::?;D<<9<<97:9;::;<::;9>=>9=@;?AAB?BBAC=??><@BECCB@A;FIGMLI²ØÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÕÕÕÖÖËËËËËËËËËËËËËËËËËËËÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÎÍÍÍÍÌÌÌÌÌÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÌÍÍÍÎÎÎÎÎÏÏÏÏÐÐÐÐÑÒÒÒÒÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÓÓÓÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÔÔÕÔÔÔÔÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÓÓÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÓÓÓÓÓÒÒÒÔ£l_fRVjGHGIA>366:;<8C<BA><A<89:<::<<<9<=:;<==<?=@?@A?@A@B<>>?<BCCCF@AA=HJINMG®ØÓÔÔÔÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌËËËËËËËËËËËËËËËËÌÌÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÎÎÍÍÍÍÍÍÍÍÍÍÍÎÎÎÎÎÎÏÏÏÐÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÔÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÔÔÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÒÒÖ®kceRXhLJGIB8494:;:9@9?CE@<<999=:=;<<:=<;9<=;;?=@==>@@?BA>@<=9@DCBAAB><HJKMNH¨ÙÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÌÑÓÓÓÓÓÓÓÓÓÓÓÓÓÎÊËËËÌÌÌÌÌÌÌÌÌÌÍÍÍÍÍÍÎÎÎÍÍÍÍÍÍÏÏÏÏÏÏÏÏÏÏÏÏÐÐÑÑÑÑÑÑÑÑÑÑÑÒÒÑÕÙØØØÙÙÙÚÚÚÛÛÛÛÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÙÙÚÛÛÛÛÛÛÛÚÛÜÛÜÛÙ××××××××ÖÖÖÖÖ×ÚÚÚÚÚÚÚÚÚÚÚÛÜÜ×ÕÕÕÕÕÕÕÕÕÕÕÖÖÖ×ÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÓÓÔÔÔÔÔÕÕÕÕÖÕÕÕÕÕÕÕÔÔÔÔÓÓÓÓÓÓÒÕºkhhRXeIILO@99:4;A<7=9AC>@?=8::;9=;>?:;<<:;<:;>=@=???A@AA?A<<;>ADCAD@=<IIJMNF£ÚÓÔÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÌÍmpppppppppppj§ãÝÝÞÞÞÞÞÞÞÞÞÞÝÒÐÐÐÐÐÐÐÐÐÐÐÐÑȹ¹¹¹¹¹¹¹¹¹¹ºº·¥¤¤¤¤¤¤¤¤¤¤¤¤§`cccccccccddde ¿¼½½½½½½½½½½¾´½æáââââââââãããâØ××ÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÔÔÔÔÔÓÓÓÓÓÕÃqkjNSbLLVN<::77>C>8>:??A<?@7;:;;=;>>:;<><;=;=?>@<??=@@@A>?<><@AEBBF@@?GHJKOFÚÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××ÌÎN&+++++++++++"ôëëêêêêêêêêêëéÕÒÒÒÒÒÒÒÒÒÒÒÒÔÄ©ªªªªªªªªªªª«¦
NJTSSSSSSSSSSSQblkkkkkkkkkkkkiUSSSSSSSSSSSSNz¯ªªªªªªªªªªª¬SRSSSSSSSSSSSKªòëëëëëëëëëëëëéÙ××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÓÔËvliJN_MRUM><<7;@C>6:7=?;=B?9<9=;<:<=;=;=;;=<=>==;A=<A@AA=<?<;@BCADE=A@CFKKOFÜÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××××ÍÎR+11111111111'óééééééééêêéêéÕÒÒÒÒÒÒÒÒÒÒÒÒÔŪ«««««««««««¬¨RNYWWWWWWWWWWWVepoooooooooooomYWWWWWWWWWWWWS~°¬««««««««««®XWWWWWWWWWWWWO«ñêêêêêêêêêêêêéÙ×Ø×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÔÔÔÔÔÔÔÔÑzqiJT]ORUND>?;>@@8:;8<;;<?:;;8;99;<;:<9;;<;:===>=A?>??>=<=?<<AACADE<>@EFJKMFÜÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××××××××ÍÏ\9===========5ðççççççççççççæÕÑÒÒÒÒÒÒÒÒÒÒÒÓÅ®®®®®®®®®®®¯«]"''''''(((((')Zcbababbbbbbbaoxwwwwwwwwwwwwucbbbbbbbbbbbb^
²¯¯¯¯¯¯¯¯¯¯¯±¡babbbbbbbbbbb[¯ïééééééééééééçÙØØØØØ×××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔÔÖ£{qdI[`NNUO@A?=DB?;=:9;:==;<;:9899;<;<<::;<:;@=<=<@A<AA;;<@?<=B?DCCE<>BDFJLLEÜÕÕÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÍÍÅÂÃÃÃÃÃÃÃÃÃÃÃÂÉÐÏÏÏÏÏÏÏÏÐÐÐÐÐÏÎÎÎÎÎÎÏÎÎÎÎÏÏÍÌÌÌÌÌÌÌÌÌÌÌÌÌËÉÉÊÊÊÊÊÊÊÊÊÊÊÊÇÂÃÃÄÄÄÄÅÅÅÆÆÆÆËÌËÌËÌÌÍÌÌÌÌÌËÍÎÎÎÎÎÎÎÎÎÎÎÎÎÍÌÌÌÌÌÌÌÌÌÌËËËËÏÓÓÒÒÒÒÒÒÒÒÒÓÓÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÔØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØ××××××××Ö××××××ÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÖÕÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÔÔÔÔÔׯp^F^bPQWNGFCCIA?=;<:<8@B<=8::898;?;<<;;<<<<?;<>:>>8>B<>=A><>B@DEC@<>@>CIIKDÜÕÖÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØØØÎÍÏÐÐÏÏÏÏÏÏÏÐÔÐÐÎÌÍÌÏÓÒÒÎÍÏÒÎÎÎÎÎÎÎÑÔÔÓÎÐÔÒÏÎÐÔÒÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÐÑÑÑÑÑÑÒÓÓÔÔÔÔÕÕÕÖÖÖÖ×ÖÖÖ×Ö×××××××××ÖÖ××××××Ö×××××Ö××××××××ÖÖÖÖÖÖÕÕÖÕÖÖÖÖÖÖÖÖ×ÖÖØØØØØÙÙÙÙÙÙÙÙÙØ×ØØØØØØØØØÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØ×××××ØØ×××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÖÕÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÔÔÕÕظoWJ_cRQZKHAA<B==;:>><>?==?79:9978><<>;;<;<;?==>9;;9=>?@>@=;:B?BCB?=>@>BEGJBÜÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØÎÎÎÎÎÎÎÍÍÍÍÎÊÊÍÍÍÍйÇÓÀËÏÎÎÎÎÑ°ÏɨÒÐÆ«ÒÎÎÎÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÐÐÐÐÐÐÐÐÑÑÑÑÒÒÓÓÓÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÕÕÕÕÕÖÖÖÖÕÕÕÕÕÕÕÔÔÔÔÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØ×××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕØÀnUO`cWY[LLC@==;=:<>B>BC@<:898:::7;?>?<<;<:9?<<=89<?A>===A@=;AB@BC>;@?AAIGJAzÛÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙØØÙÙÎÎÎÎÎÎÎÎÎÎÍÒ©ÑÎÎÎ綤¢À¬ÓÎÎÎÏɺ¸¬«°Ð³ÒÎÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÑÑÒÒÒÓÓÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÕÕÕÖÖÖÖÖÖÕÕÕÕÕÕÕÔÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖ××××××Ø×××ØØØØØØØÙØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØÙÙØØØÙØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕ×ÈoZSae^]\OJD=@?>;7:>9?D>A98789;;<89?==<=<>;:A;9;9;<C@<;=>@A>=BD?BC==?>?>HIH?uÚÖÖÖ××××××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÎÎÎÎÎÎÎÎÎÎÏȼ¦ÒÐÐÎÊ ~毧ÔÏÏÏÑâÂÅÎÏÎÎÎÎÎÎÎÎÎÏÏÏÏÏÏÏÏÐÐÐÑÑÑÑÑÒÒÒÓÓÓÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÕÕÕÕÕÕÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØÙÙÙÙÙÙÙØØØØØ×××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÖÕÕÕÕÕ×Ís]Xih^_`OIF:A@>?<<:6?B@C:647:;:<:9><>==;?=<A><<:<<=<:<@=@B>>AB=CC==>;?AEKH@pÙÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÏÏÏÏÏÏÎÎÎÎÒ¬¥§©ÕÀ¼ÒÇËÓɪÔÏÏÏÑ¿¨ÐÔ»ÈƽÉÆÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÐÑÑÒÒÒÒÓÓÓÔÔÔÕÕÕÕÕÕÕÖÖÖÖÖÕÖÖÖÖÖÖÖÕÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÖÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙØØØØ××××××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÐu[[jia^]SNI<C@A>@>:8FA?C:749::9;;8;=?>>=A=<?@=><<<<<:=@@??=>B@?@B@<@=>AEKG?k×××××××××ØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÏÏÏÏÏÏÏÏÏÐ̬ÐÊŲÍÖªÔÏÏÏѺ¥ÒÑÎÑ ÎÐÐÐÏÏÏÏÏÏÏÏÏÏÏÏÏÏÐÐÐÑÑÒÒÒÓÓÓÓÔÔÔÔÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ×××××××××××Ø××ØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØ×××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÖÒr^^kkje]OLG?DCC@:=;<B<>=964:99::97;?@;<=@<<A><=;=<?<:<C@>=;=@>B>@A>@=@?FID?fÕ××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÏÏÏÏÏÏÏÏÏÓ±¢¯É £¿Ê¥§ØªªÔÏÏÏÑÀ ¥¼³ÂÚ£¿ÕÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÔÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÕÕÕÕÕÕÕÖÖÖÕÖÖÖÖÖÖÕÖÖÖÖÖ××××××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ××××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÒp`^phfeZQHGBEC@@7::<>:<97659:6:<;7<@@<::=:=?>=<9@<<::9?@>=<=@AC?@?>A;?@FJB?bÒØ××ØØØØØØØØØÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏÐÎlת£ÓÒ®¦µÕªªÔÏÐÐÐÒ¦¯®§ÐÇËÈÒÑÑÐÐÐÑÑÐÐÐÐÐÐÐÐÐÐÐÑÑÒÒÓÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖ×ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×ÖÖ×××ØØØ×××××ØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ÖÖÖÖÖÖ×Òn`\qdgdZUJ@CFCAB8;?<=;<<8558968;:9<:>?<==9<?>=::>9<::8>?<==<>@ACA><<:BDDJFB]ÐÙ××ØØØØØØØØÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÏÏÏÏÏÏÏÏѽ÷ÖÀÓÑÐÒÊÒÍÔª«ÕÑÏÐÐÑÉ×Ä¡ÐÚ¥³ÐÛ¢µÕÑÑÑÑÑÑÑÑÑÑÐÐÑÑÑÑÑÑÑÒÒÓÓÓÔÔÔÕÕÕÕÖÖÖÖ××××××ÖÖÖÖÖÖ××××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØØØØØØØÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÙÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØ××××××××××ÖÖ××ÖÖ×××××××××××ÖÖ×Ñl]\oghb]OF@HIGE@<<>><=><756:969;::;8@?:<<9<>=;;:?9?:;9=>==;;=<@CB??>;CFFGHDYÍÚØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÛÛÛÐÐÐÏÏÏÏÏÏÏ~{¥Ô¢ÓÌ£¡Ø««ÕÒ¦ÕÅ § ¨»ÕÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÓÓÔÔÔÕÕÕÕÖÖÖ××××××××××××××××××ÖÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖÖ××××ØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØ×××××××××××××××××××××××××Ö×ÏdV^pk\``NEHMIIOC>:B==@B;557<:7:;::;9==9::9=>?=;9>;<:<;9><>;<=>@CB?>A<ACGFFEUÉÛØØØÙÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÜÜÜÐÐÐÐÐÐÏÏÏÐÑէɣ¨¾Ê±£µÙ©©Ø¸«¡ÉÁ¡¡£¥¦¤¨ ¯§¢©ÐÓÒÒÒÒÒÒÒÒÒÒÑÑÑÒÒÒÓÒÓÓÓÓÔÔÔÕÕÖÖÖÖ××××××××××××××××××××ÖÖÖÖÖÖ×××××××ÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖÖ××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙØØØØØØ×××××××××××××××ØØ×××××××ØÍ]WbodO]TKHFSQKL@>=D<?CF=557;96:;:<=:;?::98:==?>;?;>=:;9>;=<=>ADB@?>?<@AEGEDRÅÛØÙÙÙÙÙÙÙÙÙÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÜÐÐÐÐÐÐÐÐÐÐÐÓ¹½ÓÏÔµÓÔ¼»ÔÎ ÓÕ«ªÖºÕ¾ÖÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÔÔÕÕÕÖÖÖ×××××××ØØØØ××××××××××××××ÖÖÖ××××××ÖÖÖÖÖÖÖÖÖÖ×××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÚÙÙÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØ×××××××××ØØØØØØØØØØØ××ÙË~ZUjj[L_MJLJULFB<=?GFHKH=657:979:;:<=9>99:8;=>>A>=9<<:=>>:=99:?EA@>=??B@GEDEPÁÜÙÙÙÙÙÙÙÙÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÜÜÐÐÐÐÐÐÐÐÐÐÐÐÑÁÑÑÊÈÒÐÔĸÒÒÑÒÂÒÐÓÇÌÒÑÔÁ¾ÕÓÓ¹ÇÖÓÓ¸ÈÕÒÒÒÒÒÓÓÓÓÓÓÓÒÒÒÓÓÓÓÔÔÔÔÔÕÕÕÖÖÖ××××××××ØØØØØ××××Ø×××××××××××××××××ÖÖÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙØØØØ××××××ØØØØØØØØØØØØØ×ÚÇw\RgiZNZNLPQWEJ??=?AELL@>775;8899:;<><>8::9;>?@=>>:5::;=?:;9:<>BB@????ABGDCDN¼ÝÙÙÙÙÙÙÙÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÐÑÑÐÐÐÐÐÐÐÐÐÐÒÐÐÑÑÐÐÑÓÔÑÑÑÑÓÑÑÑÒÒÑÑÑÔÕÒÒÒÕÔÓÓÓÖÔÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÖÖÖ×××××ØØØØØØØØØØ×××ØØ××××××××××××××××××ÖÖÖÖÖÖÖÖ××ÖÖÖÖÖÖÖÖÖ×××××ØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÚÚÙÚÚÚÛÚÚÚÚÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØÛÁsXUikSLRNPRYTFI<>C?ABEJ>>786977899;;=?@<=89;;;?><<95:=>;99;<???BBA=A=@ABFBBBKµÞÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÐÐÐÐÐÐÐÐÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÓÓÔÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÖ××××ØØØØØØØØØØØØ××ØØØ×××××××××××××××××××××ÖÖÖ××××ÖÖÖÖÖÖÖÖ×××××ØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØÙÙÙÙÙÙÙÙØØØØØØܼoTTllLKRJTRUKFD:>GDDADF<?89:9599:7<=;>@==79:;9>;9966:=@A>;<9:>?CA>?B=>BCEBABJ°ÞÙÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓÓÓÓÓÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÖÖÖÖÖÖ××××ØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××××××××ÖÖÖÖÖ×Ö××××ØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØܶkS[pkKUWR\QWHD><BJE=HJ?=<788:59896;><=@<<599<:?;9848<==AA<>;:<>@?=>A==CFGB?BIªßÚÚÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÐÏÔÐÎÏÒÒÓÒÒÒÒÒÒÒÒÒÒÓÓÓÔÔÔÔÔÔÓÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÖÖÖÖÖ×××××ØØØØØØØØØØØØØØØØØØØØØ××××××××ØØØ××××××××××××××××××××××××ØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÝ°dSar_OZTW_QRGB=EILAALD??;:889386869>=>?=:6:;>;==:968:=;@@<@?=??B><><<BEGIB>CI¤àÚÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÒÒÒÒÒÒÒÒÒÒÑÑÑÑÑÑÑÓÓѹ»ÌººÐÈÓÓÒÒÒÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ××××××××××××××××××××ØØØØØØØØØØÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÛÛÚÚÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÞª_U`n[UYQZ^OLGCFMIFDDJ;AA;<886486987<?A?=:7<?><??;:688==@A=@>A@=@:;:>=AEGIB@CGáÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÓ¾ÀÊ ¢ª©ÏÔÓÓÓÓÓÓÓÓÓÔÔÔÔÔÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖ××××××ØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØ××××××××××××××××××ØØØØØØØØØÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÞ¢\U^nX^]NZPTNCCLIIIFJD<BA<;876797799=?A?<:9@?<>B?:8776=??@=@A??<=;;8><?EIHA?CFáÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÓÓÓÓÓÒÒÒÒÒÒÒÒÒÒÔÈ®µ}ÄÕÓÓÓÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖ××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØ×××××××××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÝZXanYaWOWMPEBDLIMKFIE>BD98867975698==A>:89>><?@?<5676<>?>;@@@?>>?>;?>ABFGB@CHâÛÛÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞßßßÔÓÓÓÓÓÓÓÓÓÓÒÒÒÒÓϨ~¬£ÊÔÓÓÓÓÓÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××××ØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØ×ØØØØØØØØØØØØØ××××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÚÙÚÜZYcnZZRU^PL<@GNHRIHE>;HF89757875898;>>=;89A>=@?A>7596;>AB??@@BB?>?>A@DAFHB?EJâÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞßßßßßßßÔÔÔÓÓÓÓÓÓÓÓÓÓÓÖµ¥
ÂÖÔÔÔÔÔÔÔÕÕÕÕÕÕÕÕÕÕÕÕÖÖÖÖÖÖÖÖÖ××××××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØ×××××××××ØØØØØØØØØØÙÙÙÙÙÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛZ[gj\XLZ_VH:LHLJJCEFC@LH7:7678858789<<;;98@?=>??<67<47?BBA@@???A==?@>@@FE==DKâÜÜÜÜÝÝÝÝÝÞÞÞÞÞÞÞÞÞßßßßßßßßßÔÔÔÔÔÔÓÓÓÓÓÓÓÔÅ
}}|y~~¤ÛÖÔÔÔÔÔÔÕÕÕÕÕÕÕÖÖÕÖÖÖÖÖÖÖ×××××××××××××××ØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÙÙÙÙÙÙÙÙÙÙØØÙØØØØØØØØØØØØØØØØØØØØØØØØ××××××ØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÜÛÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÛÙZ^mhZSI][XJDMHJSLGFA@?JB8;669975868;:;:<98==;@=;:65<7;=B@AA<>=@A=<@??>BDE><DKâÜÝÝÝÝÝÝÞÞÞÞÞÞÞÞßßßßßßßßßßßßÕÕÔÔÔÔÔÔÓÓÓÓÓز¨}yv{wy~~®ÀÕÔÔÔÕÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÚÚÚÚÚÚÚÚÛÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÚÚÚÛÛÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÖy\ZlfXRO`QRAHGJFXLF@@CCK?;;788765768:9<<:=;?=;=><;88<9=?BABC<<?AB>=ABCBDEC@;CL}áÝÝÝÝÝÞÞÞÞÞÞÞßßßßßßßßßßßààààÕÕÕÔÕÔÔÔÔÔÓÔÒ»uy{
rs
¬×ÕÔÕÕÕÕÖÖÖÖÖÖÖÖÖÖÖÖÖ××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙØØÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÛÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÛÛÛÛÛÝÐr]_peWKPcOKBGCJHKFA<A=HPA::77876787<:8==<>;@?<?=;:;9:9<@B@BC@=A@?=@BCCA@@?@;EMxàÝÝÝÞÞÞßßßßßßßßßßßßàààààààààÕÕÕÕÕÕÕÕÔÕÔ×Èx
|z~sit
ÔÖÕÔÕÖÖÖÖÖÖÖÖÖÖÖ×××××××ØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÜÜÜÜÜÜÜÛÜÜÜÜÜÜÜÜÜÜÛÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÞÊj\cqeROX^K?GLIOKE@>AB?IO>9:76;76:;7;:8:<<>;==;><:;89:89ABBA@@;@B=:>ABC?>=>?=FNtßÞÞÞÞÞÞßßßßßßßàààààààààààààáÕÕÕÕÕÕÕÕÕÕÖÎ~|}sqÀÙÚ·´Ð×ÖÖÖÖ××××××××××ØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛßÀcZ[m`VPSSJDLHMHI<>ADCFND<<979:68;97<989<=;9@>:A?<757;8:@AEA?>9=B?;=BBB:>=;=>FNqÞÞÞÞÞßßßßßßßàààààààààààáááááÖÖÖÖÖÖÖÖÕÖØË
x{{yo}ukwtv{xÇÆØÙ××××××××ØØØØØØØØØØØØØØØØÙÙÙÙÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÜÛÛÛÛÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÜÜÜÜÜÜà·cWYkbRMUQLJKFKFC@>BA?EM>>=899:79:75=77:><;;B<9?=9668=9:@BF@>=<@BD@=@?C;@=<>?FOmÜßÞÞßßßààààààààààààáááááááááÖÖÖÖÖÖÖÖÖ×Õzw}«yxz{st~oq{yzs{v
¤ÍÙØ×××ØØØØØØØØØØØØØØØØØØØÙÙÙÙÚÚÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØØØØØØØØØØØØØØØØØØØØÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÜÜÜÛÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜáa[^lbRMVLMGKKDFBB;A=<ELCA>8:9:77966:5;>@;=;?=<?=:99:<9<ECF@?>@CBD=9=?A=B?=@>GOiÛßÞßßßàààààààááááááááááááâââÖÖÖÖÖÖÖÖ×Ð}zv{uszyzª¦wrr~~ÉÌÙ××ØØØØØØØØØØØØØØØØØØÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÙÙÙØØØÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜá¥_TbmbPOSIHGFJIIBA>BB<EED@>8:8;77:7886>?=;<9=<:>=;:67;6:DAF>???>CA?;==>;DC?><HOgÙàßßßàààààááááááááááââââââââÖÖÖÖÖÖ×ØØÈ~vv~~tvxzyuw¡»¡~|¨ÎØØØØØØØØØÙØØØØÙÙØØØØØÙÙÙÙÚÚÚÚÚÚÚÛÛÚÛÛÚÛÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÝÝÝÝÜß[Ogk\PQPICOJKGLGJB@?AGD@A<8<885897677@@?;<9>=8=<<:78=9?DCF>A?B@C?<:>=?>ED?=;KQc×áßàààààáááááááâââââââââââããÖÖÖÖÖ×ÕÁÜ´nxrs{pzyv
{x}¥|~{
½ÝÙØØØØØÙÙÙÙÙÙÙÙÙÙÙÙØÙÙÙÙÙÚÚÚÚÚÚÛÛÛÚÚÛÚÚÚÚÚÚÛÛÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÙÙÙÙÙÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÞXWhnYPQKHJSIMHMIKAC?CFBAD::<864887666?>>:<9<;:==<<8;<;DDDE>?>B>B?8=??CCB@A>;LTcÕáßàààááááááââââââââââââããããÖÖÖÖÖ׬¶zxrow{t{xun~
{
r|}~}ÇÔØØÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÙY`hl\QKGGOKNNOMDFBH?CHDD@:;;875777858@>@;<9<;<>:9;99;9FDEB<@>?<@C;>@?@?B?>:;JUcÕáààáááááâââââââââââããããããããÖÖ××ÛÊ
wqrnnx{xyvpxswvs}wwuw|ÃÛÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÙÚÚÚÚÛÚÛÛÛÛÛÛÛÛÛÛÛÛÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÚÚÚÚÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÒuYhijVNJHMNGMDPIFH?E=FLDC>;;<977966958>>?=;<@;=<:7;7998GDEB=A=B?>@<?AA?@B@>;<KTbÔâàááááââââââââããããããããããããã××××Ä{olnuv~~urmem{s{x{±ÎÚÙÙÙÙÙÙÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßÞÞÞáÉl[jjjSNGGNOEHFMII@;D>HI@=<:::868:77948=<==;8<<<<86789::EBEA?@<B?CC>>CDA@@?@<=KQaÓãàááâââââââããããããããããããããää×××Ù©v
~|wlpwyx|}
wjstwz}n{~yz~~x|~¶ÓÚÙÙÙÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßÞÞã½jaikiQNFMLKJXMNGA@@OAC?@;<89996866684;><=;96::9:958989:BDF?>>>@@@B?<A@?<>?A9>JO^Òãáááâââââãããããããããããããäääää×××ÚÊysomqsuwxv|u
wuru z{wvyvtmln{x»ÜÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÚÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßÞã³iinihPPOLLOROKSF?EDDD><<8;87995687673:>;>=7:>99996::87<CEG??;?>@=>A=;=>9A@@8ANQ\ÐäááââââããããããããããããääääääääØØØØÚ¹zvunjoxp}ktrvw
yyyyzuwzsko||v}|²ÞÚÚÚÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÝÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÚÛÛÛÛÛÚÚÚÚÚÚÚÚÚÚÚÛÛÚÛÛÛÛÛÛÛÛÛÛÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÛÜÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÞÞÞÞÞÞÝÞÞÞÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßàààààààßßßßßâªjkhkdSPOFPTRNHRK>DDCB;;9::86785668784;?<?=9<<7;::7::7:=CBC=A>?<9=>A@;<<;E@>;CNS\ÐäáââââããããããããããäääääääääääØØØÙÖov{oxxvpntwpptpso~sz
zsmrz}ov|}µÝÚÛÛÛÜÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÚÚÚÚÚÚÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßààààààààààààààßßßâ mhfkfUVRGPQNKLLEBHEG=8=<::778677656748><==:8:8>:;7877::>CD;CB>=8=@AC?><>E<>=BMP_ÒãáâââãããããããããäääääääääääääØØØÜÀvv~zxxpluyrk}lsotghiihxsg~xp{w}~
½ÝÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÜÜÜÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÛÛÛÛÛÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßààààààààààààààààààààßkmfnfSSIPYTLHFNFFEBF=;><;9778579645758<;=>::;;@9;;87:99@BA<AA??9?@BECA@@C;;=DKM`ÖäââââããããããããääääääääääääääÙÙÚÙs{ªrtuv}xhl|whxwnkptyvt|}spxyÈÞÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÛÛÛÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßàßßßßßßààààààààààààààààààààààáÛnmgscYQMU[WHCIFNKGBD??B:;:66756764876;<;>?:<9<B879:::9:AABABC@A>=?BCCDABF98=DJNbØäâââããããããääääääääääääääääåÙÙÚܨqµx~slznv}khjxv|u}
tfpy}w}z
{}|~´ÞÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÜÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÜÜÝÝÝÝÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßÞÞÞÞÞßßßßßßßßßßßààààààààààààààààààààààáààààààààâØ
oqkuaVOUU\ODMF>JGJED<?B:<9868456747649;;<;8>;<A88:=8=8:==@@@?AB?@>@CBCAAE76;DLNcÚäââããããããääääääääääääääääååÛÚÚÝlnsq
rmpnu~krvvzsxxsoupmkv|y
vr±ßÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààáááààáááááááááàâ×
mqov^RWSZZQJHC@Q@BD<9?A:<975745664756=<:==9>:<@8::<6;9;>=BBB;AB@C@@DDC<=@7:<EKMeÜãââãããããäääääääääääääååååååÓÎÆÀ~qlox{vounjssmxnttnotokpntmvr}vqwy¦ßÜÜÜÝÝÝÝÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÜÜÝÝÝÝÜÜÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞßßÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààáááááááááááááááááâÖnpmq`RYPW_YJLLIR?D=9;BF;:974565754666>=;?>9=9;>8=;:48;@@CBCABFA?C@ABDD;=>9;<BLMdàåããäääããäääääääääääåååååååå¹·µ¨srlpwztwxmqruwtrsllkq|npntkqw}~ysr ÙÝÜÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààááááááááááááááááááááãÕqljl^XZUW`VVPOPL=A:;<FA8:873656965857?=;?>9=8;<9=;;5:=CBB<CCDDDAA?>BCC<=>89<CKKcÍÑÙáÖÈØãäääääääääääåååååååååµµ¶«ryrn}vuwhjhipovmkkgefqtmynmywvxqkjhuuytuÁßÜÝÝÝÝÝÝÝÝÞÞÞÞÝÝÝÝÞÝÝÝÝÝÝÝÝÝÝÞÞÞÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààßßààààààààààààààààààààààààààááááááááááááááááââáááãÕqpciaWSYW_LRORMK@>89;A>87964767:66649>?:<?:?9::7:=<99<AA=;ACECF@>>>AED>@A78>FHJ^²µ¸Á¹µ»Èàåååääåäååçççççæåææ涶µµ}~pzurvgbcelkrofilvmw}
yllwxkvp|}xsuy|wv¹àÝÝÝÝÝÝÝÞÞÞÞÞÞÞÝÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÝÞÞÞÞÞÞÞÝÝÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááâââââââââââááãÕun^ncZTSXWKSKJMRGA8;;><98756566968669?<:==;?:;;9<<;9:>>>;<=ADBCA@@A?BC<<=7;>DEJ^±µ´µ¶··¶ËÚÉÞååÝàâÞÕÔÖÓÔàãàß߶¶·®{nyzrumchllmitxzqyzzzih}qdoq|~y{}|{§ÚÞÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààààààààààààààààáááááááááââââââââââââááãÖvlao_]WY\ZRPHJWLEG=@=;;=9646555867678?;9==<<99<:><:98>B;;>>@D@CEA@@=?@<==59<BGF]±µµ¶¸¹¹¹º½¸ÃÓÒ½ÁÁÀº»¼º»ÄÌſ÷··iu}guyguqkkyxpw|}ymiw{xwniuplyxww}{y ÜÞÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÝÝÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßààààààßßßßßßßßßßàààßßààààààààààààààààààààáàáááááááááááááááááâââââââââââââââáã×
rkgta[XX_^SUUQUJLF?ID;9=6647757877789<<:><8<:=>9;<9;9?A<=?C?A@EBBA<=C@:><549DGGZ±µµ¶·¹¹¹¹¹¹·¹¹¸¸¹¹ºººº¹¹º¹º»··¹npszopysnsulsvxqqpokoq~si}tsumu
rv
§ÝÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààßßßßàààààààààààààààààààààààáààáááááááááááááááááááááââââââââââââââââáã×qklr[WW]`TQUTPROJC@MA=;9653464687779:>;<>;9<:<<9<=<;==>=CDD@CBA?@><>A<8=:66:BJHX±µ´¶¶¸¹¹¸¸¹¸··¸¸¹ºº¹¹¸¸¸¸ºº»·¸¬{rxqvs~plmzrgolmntp{wwrrwzov||zvy|s}ruÓßÝÝÝÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßàààààààààààààààààßßàààààààààààààààààááááààááááááááááááááááááááááááââââââââââââââââââã×ojqjUVWa[OQRPNWIDDIJ?:9:753495766788:<;<>:<::=<9;<=;==<;=DGDCA<<<<>>@;8<815:AFEV®µµµ¶·¸¸¹¸¸¸¸¸·¸¹ºº¸¸··¸¸¹º»·¹ªrpxw|{{whnqjojcirmsr~xtqljvy}uvukvÕßÝÝÞÞßßßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßàßÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßßßßßàààààààßààààààààààààààààààààààààààààààààààààààááááááááááááááááááááááááááááááââââââââââââââââââââãØmlteVP\gXMXSRQYECKPN;9887553956676889>9=>9<99<;6899:<@@=>@F@BB@:><A=?;;;616<BGDP¨¶µµ¶¶¶·¸·¸¸¸¸¸¸¹º¹¸¸·····¹º·¶´rwx}|pzo}shjlggltlqwtqlvsqqwqr|yxv{wi}ÎßÝÞÞÞÛØÙÚÙÛÞßßßÞßàÞßßßÜÛÜÜÝÞÞààßààààßÞÞÞßØÒßÞßßÞÞÞßßÞÞßÞßßÞÞÞÞÞÞÞÞÞÞÞÞÞßßßßßßßßßßßßßßßßßßßßààßàààààààààààààààààààààààààààààààààààààààààààààààáááááááááááááááááââáâââââââââââââããâããâââããããââââãâä×hgudVUdeWJZYW[T=EMKH=8757643944775679=:=><=<9;<99:>9<>?>AACAEED>;<A><9<;737>DHEJ¡¶µµµµµ¶¶·¸¸¸¸··¸¸¸·¶¶¶¶¶·¸¹¶¶¶}zllzplyvnjhgeqzxoioopusmswgo}ryjprz©àßÝÙËÆ¿¼½¿¾ÂÍÒÐÖÞÙÜà×ÐÍÃÂÃÃÇÕ×ÓÙÜ×ÔØ×ÐÇÄÅǽ¼ÏÊÏÎØÝØÎÜÝÜÚÝÓÑÜÞßßÞßÞÞÞÞÞàßßßßßßßßßßßßßßßßßààààààààààààààààààààààààààààààààààààààààààààààààààààáááâââââââßâãâáâàáÞÖÛßÒÃÊÉÇÑÛÜâäááàÙÚÞÖÆÄÅÄÍÚÚßäáââÚ×ÞË}ifqaY^eaMLTKRZL;HMHFA=766534664876569<;>>:>99<979;;:>=<@@CDBGFBA=<C@=9<;777?DFFF¶´µµµ¶¶¶¸¸¸¸¸¸·¸¸·³µ¶·¶··¸¹µ¶·¢qoopintvqfeckngormfgkreov|xdsshqrieeno°ßÑÅ¿»¹¹¹¹¹ººº»º½ÍÆÃÇ¿ºººº»»»Á½ÁŽ¼¿¾¼»ºº¹¹ºº¹¹ºÃÅùÀÃÁ¼¿¹·¿ÏÏÔÞØÜÞßàÞÒÚàßßàààßßßßßßßßßßààààààààààààààààààààààààààààááààààààààààááááâââáàáââââáÚÚÝÑÂûÅÓÖàÝÉÓî¹À±ª«««°´¶ÉÒÅÑı¸¿´«««¬¯´´¼ÌÄÕδ´»«xlmm`]b_YKSUTQPD@QMHD?:78573156498466:<;=<8<96::88975<<<?@A@BDCBA<>B??===758>CEC@¶´´µµ·¸¸¸¸¸¸¹¹¸·µ±«¯³±³³³´´´¶¦kn{vqyxgch_qwaknoho}onckilxwlk~lpzvmlpoy±Æ¼º»»º¹¹¹ºººººººººººººººº»»º»»¼»ººº¹º»»ºººººººº¹¸··¸¸··¶µµµµ¸·»Ç¾ÃÅÇÍĸÀÉÇÒÜÙÙßÞÞàßßßßààáààààààààààààààààààààààààààáÜØââââáááàáàÞ×ÆÆÑÐÎÔÞÞÓÎÒßÒ¸¸¼²¬¬¬®±¾¹®·¬¨©©©ª«««ªªª«¬¬¸¬ªªª««««®®®®®®¼³¬«¤ynom_^]]TMRS\TJA?PIH>89683730573785766:<?<89;:::89:659;<>?D?CEBCB?@@A?@><787:AED?
¸´´µµ·¸¸¹¹¸¸··´®¬«ªª®®®¯°±³³µ£pnnrmp}uiaehfdcdqsmmwngimmepsoosqs|zu}u»ºº»»ºº¹¹¹ººººººº¹ºººº¹¸¹¹¹¹ºººº»º¹¹¹¹¹ºº¹¹º¹¹¸¸¸···¸¸···¶¶µµ¶¶¶µµµµµ¶µ····ºÁ¾¼ÆÉÊÛßààÞÛÝÝÞáâÐÖâáààààààààààààààáààáâÓ¾¼ÌØÝÜâàÑÙÛĽ·°°±±¯³»»³°´½³®®®¬«ªªª©©¨©©©©©ª««ªªª©©¨©©©©©©©ªªª¬®®®®®®®®¬¤xibqfaYZVQRN\SF=BRDA7<;6956545658756578;><;999:8779768<;>;D??C@ADA>?C=><>::77?CF>x²°³´µ¶·¸·¶²®®¬««ª©ª¬¬®¯±³´µ·nrtjhyfjfel]hnphlqbcfr~vhhljnz
|xqqy¯º¹ººº¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¸¸·····¸¹¹¹¹¹¸···¸¹¹¸¸¸¸··¶¶¶·····¶¶¶¶µ´´µµµµ¶¶µµ¶········¶·¸¿ÆÏÐľ¿ÀÄ××¼ÉÚÚàáàààááààààááàÛÞÞÔͼ·¶·ºÀÀÉķȾ²°°°°¯°¯®®®¯°°¯®®®®®¬¬«««ª©©©©©©©©©©¨©©¨©©©©©¨©©¨©©ªª«¬®¯®¬¡yjdmgb\XQPQKTJB:IQ?A7<94:565455688686;:9<==;:86688:867>===>AAEBBCAA@A:==?=9:7=AG<lª¦¨«°±°®«©¨ª««©©©©«¬¬®°³´µ¸¥oigstfkpmjdlornkmckp|njl|xc{~sjsnkq»¹¹¹¹¹¹¹¸¸¹¹¹¹¹¹¹º¹¸¸········¸¹¹¸¸¸·¶¶¶·····¶¶·¶¶¶¶·¶¶¶µµµµ¶µ´´´µµµ¶¶¶¶¶·····¸¸¸·¶·¶¶¸¹¸¸··¸¾¾¸º½½ÇÛàáàØÙÝááàÝ×ÊÁú¹¹¸·¸¸¸·µ´´´²²±±±°°¯¯¯¯¯¯¯¯¯¯¯®®¬¬¬««¬ªª©¨¨©©¦§©©§¡¥¨©©©¨¢¡¡¢§¨§©«¬¬®¯°°®®xpljac`YQMQLRFC9MPE>8;727967443578797;::==<::974:98658??@B=DCCCAC@BA@;@?@?<<:;CH=c¨¥¥¥¦¨¨¨§§§¨©ª©¨¨¨©ªª¬®°°°³´µµµ¥v~qfkxqomfelhclgfii}umio}vy
fhwoxoqorx§»¹¹¹¹¹¹¹¸¸¹º¹¹¹¹¹¹¹¸··µµµ¶¶¶······¶¶µµ¶¶·¶µµµ¶¶···¶µ´´´´´´´µ´´´´µµµ¶¶¶¶¶·······¶¶¶·¶¶··¸·¶·¸¸·¸¸¸¸¸ÀÅÓʼ¼ÃÍÏÈÀ½º¹¹¹ºº¹¸¸¸¸¸·µ´´´³³²²²±°¯¯¯¯®®®¯¯¯¯®¬¬¬««¬¬¬«§¡ ¡¡¤¤¦¨ ¤ª®¯®¬¬upikca^]UNSKRDD8NKGA:85269654737778979:;==>88875:9958?@@AD>FABC@BCBA?<@BB@=>::DF>\¦¥¦¦¦¦¦¦§¨§§¨¨¨¨§§©««¬¬´´´µ·¤s}unsrfjqcimchfhlnui_cgusvzngppr~zq¡»¹¹¹¹ººººº¹¶³¶µ¸¹¶¶µµ¶¶µµµµµµ·¶¶·¶¶¶µµ¶µµµµ´´´¶¶···µ´´³³´´µµ´´´µµµ¶¶¶¶¶¶···¸··¶¶¶¶µ¶µµ¶¶¶¶¶¶¶¶¶·¶¶·¸¸·º¸¸¸¸·¸¸¹¹¹¹ºººº¹¸····µµ´´´³³²²²±±°°¯®®®®®®¯¯¬¬«©¥¤¦¦¤ ¤¥¤££¢¢¢tncpa^^[TSTHTJ?<QBFC;8637:554838997897;9;=;7:75699858>??@E>B??C?<AAB?=?DA?>=9=CF?U¤¥¦¦§¨§¨©©¨§¨¨¨¨¨¨¨ª¬«ª©¨©«µµµ¶¹£wqrwtphykbcaelinsj_ceccejkbdjlv~¨½¹·¶·¹»»º¸µ±¬««ª®°¬¬««««¯°±¯¯°²µµ¶·µµ¶µµµµµµµ¶¶´¯¯³´´´¯®¯²µ´µµµµµ¶·············³°²¶µ´¶¶¶··¶¶¶µµµ¶¶···¹¸¸¸···¸¸¸¹ºººº¹¸¸···µµ´´´´´´´´³³²±°¯¯¯¯¯®¯¯¨£¢ ¡¡ tnit]`f^RTKDTI=ESHEB;:4469445738887899:;;?=8:93589639=>@?@:@BBB@?@BB?=>AAB?=:>EC@Q£¦¥¥§¨§©«ª¨¦¨¨¨©§¨¨¨¨§§¨¨©ªµµ···²´}ugijlfc`cheoxpibq|ypjffdfksj
¬¶²°´·²°°¬«ª©¨¨§¨©©©©¨¨§¨¨©©§¨ª««¬ª¬¬¬®®«§¥¤§ª¬¨¤£¤¥©°±±³µµ¶·¸··µµ¶·¸····²©¥¦¬«¨¯´¶µ³µ··¶µµµ¶¶¶·····¶¶····¹ººº¹¸¸··µ±³´´´²±°®¬«¬®®°±°«ª©ª¨¨£ ¡¡¢¢¢ ¡ ujknY\aVKODGUG>OWHD=<834484548289889::<99@<69:367914<??@@A:CFEBADBCA:;?ABC?@=@DC@O£§¦¥§¦¨ªªª¦¤¦§§¨¨¨¨¨¦¦¦¨««µ¶···¸²up{v`bikbefadgf}ylr}qoqxcmnqf¬¬«««¬¬®®¬¬¬ª§¥¦¥¥¥¦¨¨¨¨¨¥§¨¨¨¨¨§¨©©©§¥¤£¢¢¢£¢ ¢¢¡¢¡ ¡¡¢£¤££¥¥¥¨°´³³³°«ª©ª³´¶·¶±¨¥£¢¡¡¢¤¨ª©¨«³´±®®±³µ¶¶¶·¸¸········¶¶¸·´±®©¦§«¬©§¦¥¤¤¤¤¤¥¨©¦£ ¡ ¡££¢
tklhWXSJGMEHMG@SWFG==93637455738::::9<=::A<6=8378837;@??@@:BEC@BDCA?;<@CBCA@<AC@=N¢§¦¦§§©ª«©¤¥¥¥¥¦¨¨¨©¦¦§¨©©ªµ¶¶···¸³sh{sbgjkiibadih]]m|rfkr|t|nmss~ ©©«««ª«¬«¬«©©¨¥£¤¦¦¦¥¦§§ª©¦¦§§§¨¨§§¨¨§¥£¤¢¡¡¡¡ ¡¡£¥¤££¤¤¤¦§§§¦¥¤¥¦¦¦§ª«¦¤¢¡¡ ¡¤¥¥¥§§¥§¨¨¦¥¥¨¯´¶·¶µµ¶¶µµ³°¬«©©®«¨¥¥¦¦¦¥¤¤¥¥¥¦¥¤¤¤¤¥¢¡¡¡ ¡¡¢ sknd^SJHMFDLKEDQSCG=<8362846464898:;9;><9=;9=7359656<@=?@?<?BC>BBB?=>>BCAE@?:>E@;O£¦¥¤¦§¨©§¥¤¥¥¤¥§§§¨¨¦§§¦¥¦¦µµ¶¶¶µ¶¹mqmo||qgjf`al`TN[hjnom}qgqv~¨§¨ª©©ª««¬ªªª¨¦¥¥¤¢£¥¦¦¥¥¥¦©ª©¦¥£¤¥¦¦¤££¢¢¢¢ ¢¡¢££¢¡¢¢¤¥¤¢¢££¤¤£¤¤¤£¡ ¡¢¤¦§§¨©©§¥¥¤¢¤¤¥¨°°¬«ª«¬ª©§¥¥¦¥¥¥¥¦¥¦¨¨©¨¥¥¥¤¤¤¥¤££¤£¢¡¡¡¢¢ ¡ ~znrb^SMJPEFNMB@OE>I;=5363836675:;89;9:>=;:9:>7669656>B>>A?=>CA>CC@@;@@BBBE@>;>E?<P ¤£¤£££¤¤¢¤¥¥¤¥¦¦¦§§¦¦¦¥¦¦¥´µµµ´´µ¸h|}eszlpua_cTNOQ[hlillqmnqnt¢¤§¨¨¨©«ªªªª©§¦¥¤££££¤¤¥¦¦¥§¬©¤¡£¤¡ ¡ ¡£¢ ¡£¤¤£¢¤¥¥¥¤¢ £¤¤¤¦©©¨§¥¡£¥¨©©¨§¨¨¨©§¦¥¥¤¤¤¥¦¦¦¦¦¦¦§§¥¥¤££££¢¢¢¡¡¢¢¡¢£¤¢~qt`[TMGMHFLJ??NC<@;<4383747678;=8::99;=;;89=7789588?@=?A>;=D?=D@??:@AA?AE@><<C?<N¢¡¢¢ ¢¥¤¤¤¥¥¦§§§§¦¦¦¦¥¦¦¥µµµ´´´´·v¥±wfsroslcdiXORQOO]md`Zm¢¢£¥¦¦¦§§¨¨¨§¦¥¥¤£¢¡¡¡¢£¥§¦¦§¬¬§¦ ¡¡ ¡ ¡ ¢£¤££¦§¨§¨¥¢ ¡¡¡¡¤¥¥¥¤ £¦¦¦¦¦¦§¦§¦¥£¥¤¥¥¦¨¨§§§¥¥¥¥¥¤¤£££¢¡¢¢¢¢¢¡¡¢££¢ wos]ZNHJNGEFIDEN@<==<45;46465679;899899<;<7:;7888588?B?AA<>?@<<B@A>=A>??=BA@::@<<O¢¡ £¤¤¤¥¦§¨¨§§§¦¦¦¦¦¦¥µ´´´´´´µ´¶§ufxvclccec[RSSRM^ xXhv£¡¡£££££¤¤¥¦¦¥¤¤¢¡¡¤£££¢£¥¦¥¦¦§§¦¢ ¢£££¢¤¤¥¢¡¡¡¢£¥¦¦¥¤£¡ ¡¡ ¤££¤¥¦§¦¥¥££¤¤¤¤¥§§¦¦¦¦¦¥¥¦¤£££¤£¢¢£¤¡ ¡¡ ¡ ¡ }tlt^ZOHEGFBENE?F;:>?;46:69364688:89788:<;<9;;::67899>?@><=@>@:9@A?=A??AA>AA?:9=>:P ¢£¥¥¥¥§¨¨§¦¦¦¦§¦¦§´´´´³²²±°°«x~wb]SRQQLb ¢Z ¡¡ ¤§§¦¥¤¢¡£§¦¥¥¢¢¥¦¦¥¦§¦¦ ¡ ¡¡¢¢¤¦¦¢ ¡£¤£¢¡ ¡¡¢¢¢¢¤¥¥¦¤¤¤¤¢¢¢¢¤¥¥¥¥¥¥¥¦¥¥£¤£¢¢¢¡ ¡ |rgq^]PF?AD?JOBBF8CE>>98;7748459::;979:<;:<=><<:67698>?A>;?>=<8:>A@AB??AB@DA>:8>A<S¡¢£¢£¢¤¦§¦¥¥¦¦¦¤££²²°«§¦¦§¦¥¦¨¥¨¨§ª§¡y\QROL\ b ¡¦¦¦¦¤£¢¢¦§§¦£¥¦¦¥¥¦§¦¦¢¡¡¡ ¢£¤£¢ ¢¢¢¢¢¢¡¢£¥¥¤£¢£¤¢¡¡¡¢£¤¤¤¤£¤¤¤¤¢¢¢¡¢¡ zjfj`bNF>?@=JE@C@;@A<:;9:765846789=88;:;?;:;<:9:7768;;;=<::<=<7;>CBDC?=AC@DA?<:@B;W¢¢¡¢¤¥¤¤¥¦¤¢ ¨§¦¥¦¥¥¥§¦§¦¦¦¦¤¥¦§¨§¡©rNQMJT¡zr¢¢¡¢£¤¤££¥¦¥¥¦§¦¤¥¦¦¥¥£ ¡¡¡¡ ¡¢ ¡¡¢¢¢££¡¡ ¡¢¢£¤¤£¢¡¤¥¤£¤£¤£¢¢¢¢¢¡ ¡xlcdbdQGA=C;KHD:;;<>9::9:73795:888<98;9==;:;:9<<7647?<:=;<?><;8<ACACBB>?B@BA@:?@?;Y ¡¡¡¡¡¢¢¢¢¢¡¤¥¦¦§§¥¥¦§¦¦¦¥¤¤¦¥¤¤¤¥¦PRPOOpz £¤¢¡¡¢¢¢£¤¤¥¦¥¤££¡¡¡¡¡ ¡ ¡ ¢£¢£¡ ¢§¨¤¡ ¢££¢¢¢ wdghdbMCE<D9IJE9:;==::88:64795<968979<;;<::<;:<<8787>=;>>:B?:::?ADBCAA@?DAA@>:@>=:[ ¡¢¢ ¥¤¥¦§¦¥¥¦¦¤¢¢¢££¤£¢££¢§TXURNgmk ¡ ¡¢££££££¢¡ ¡¡ ¢¡ ¢ ¡£¢ ¢§§¥¡ ¡¡¢¡ rflbd[DBL=?8FKB<@>>=9;9:=85886;856:8<<;;<<;9<:==9587<9<?<:A?:::@@CBDAC@?CA@>=<@==:_¡¡¡ ¥¤¤¤££¢¢££¡¡¡¢¤£¢£¤¢§W^]TW_nk ¡¡¡ ¡ ¡¢¡¡¢¡¢¡ ¡¦¦¥ ¡¡ ooe^`W@JH8?7IE?EA<=;::;;;75;86;746::>;:=>>=;;;>;:8:996@A=:<=:;9?ACBDEC>?AA??>>?=<;`¡¡ ¡¢¢ ¥¥£¤¤¢ ¡¢££££¤¡°£]ed`ank¢¤¡ ¡¡¢¢¡ ¡¡ ¡¢¥£}nm_eVTEK<7>7REC>BA8;<;98:86;77:679:=>:<<=>=<=:?=:8<=9;@>>?=>99;?BC@CEC=?CB>@@>@=<<a ¡ ¥¥¤£¢ «cimnifm £¤ ¡ ¡¡ ¢£¤¢ xvg]_WTEE99;<Y>@8B?9;;>98;8:;79:589;=<9=;=><=>;??;9><<>?>@AA=87;BCE?AEC=@DBA@D;;>;<b¤¤¤¤ ¦ektxm[
¢ ¢¢¡¡ ¡¡ ¡¢¢¡¡xv_[]^Q=F:98?UCA;CC:<>?::97;8887489<;<8;;<=:=>:?A=:=<>>@@=@A>96<DCE@AEE=>EDD?B;:<9:d££¤£ ¥kqvzoe ¡¡¡ ¡¢¡ }xjabb\P<@<68CVHDB:8;:>;7796=:99647:;<=9::;?;==<@>;;>:=?=>@A?@<7;ACE??DD>?DDC>B=;<;:g££¢ ¤jjoysq £¥¢¡¢¢¡¡ ¢¡¡¡
wqgjd[\QA>86BG`BEG@>;<;:8865<8:834:69==99:<=;<:<><:>@:>@><?@?><8:CAD?>BD?>CEB=B@<<<:g¤¢ ¨}ges{zs¢¢£¡ ¡¡ ¢¨ª¦¥¥¬£¦¡§§²¨¢£ pqil\[\MF<77GGX>HNTF9>:89875=9873396:><:7:<;::::<<;?>;@@>;=>A<<67@>B@>AF><ADA=CB>=<9f¢¡¬jmzyq¡ ¡ ¤¢¤©£©½ÁÁº¼¸½º¹À¼¹º·º»»´½³ÁµnufgZ^YLIE:;LIS<VRIC:A:;;775:::82568;=<99;;<:7:8:<:=?9<?><<=A;958<;@?A?D=<AB@<DC===:a ©
pu{wo¡ ¡
¤¦¦ª«±¬¯¯«¦«ª±¹¹µ´´®¬¯´ÀÈÅÅÁ¾ÆÃÄÄúµ¾·¶´³°¶µ¾ªptr\f_]]IF??EKLVI\LD?=B:C9977;9971798:>88:<<;979:;=:>?9>A<;><>:969<:A>CAA=<B@@>BD>?>9\
ªzuv{y ¡¡}
£ª¡¢¤¢«±·´¹µ±³¯²²¥§³º±ºº¼¶·¶ÀÃý½¼¶¿ºº¼Áµ¸À¾´¯®¦©¯·n|g[cZ]_HE>AKISXY^AF99=9F??:7;;;63:7:9>8::<=998;9;<:>=;@@;<B<@:847<;B?AB>>;CDD@CC=>>9a
y}{
kxvwsq}r ¡
¡§ ¤£ª©³¶±µ°¨©¢¨®ª¯°µ¹¸¼Â¿Áĸ±µ°®¶³°¸¾¼º¼¾º³³§±·Âucb^ZWRMHFEPIYW_[CP:BC=GF?87::75597<9<98:=>::7;;>;;=;=?A;?><?:8537:AA@B>>:CDC?AC;=>9g©¥¢¢ ¢¦u{{v{zyz~}|z~
}s|}|~tpxvs|v
| ¥¢¯±©®¤¤¤¦¦¸·¬¬»½½ÂÃÀ¿¿¯¥°°´·¸³´¸¶´µ®¬´¯¸´¶yzcf`^VPQAEKOI\^_TGGBKLBD@=88;957797;7=<9=>=9;8:;@<:=:>BA8?<:?86429;B@?B>=8AB?>@D;@>7`¥ ¡¡ £¡rqpovqnpmnpvnoophpqpt~sqrqw{ryvwrrwvz{y|}{
}§¤¥«¦ª·µ¸²±§¯ª§¦¡¢¦©«§££ª°¦¦«¡´½¾³³¿¹»»º¹¼½®¨®±®°¸¼³´±±ª°©¨±±²¨¥wrt_ha`TVQIJHVM^^^TLJEQJEGC=:9974868388=:=<>;9;8:;?<<>9?C?8;:8<776379E>?C?=7@@A=?D<>=8T xqnmrxqqlnrpkqopmrs{uvwy~uqxvtw{rn|}yx}y
}s}~
z}}¡§¦ ¦°«¡£¥µ´²ª¦ª¯¢±¶¹½Â»¹Ã¾¼¸½¸µ±¬°¬¥ £ª¬¡¡§ª°©¦¦¤£¤¢¬¤¬³´³³¨·¶»¸°²¯²·¶º²µº³·¹»¸¼º¶²¯¬±±²³´³±±®³±³³¬¡vqs_c^RQTMOIGXOZ\dTNGUOEDJD>8:875888597::=<?:8<899=;==:B>?8;:9:986257B>?D@@6>?B?<C<=>:N|¡rorqqqqqpnsqoutrqvwuw|y
~w{|y}|}z
z||}~x
¢±©¤¥¯¬¬¬µ®¾¹®©µ°·±«±¶¬¯½ÂÂÀ¾º¼¶²®¶¶±´®º»³®¬§©§«§¢© ©¨¢¯°¸´±¼ººº²´µ¯¼´·³··»·¹°©¬µ¹±·²´·¶°»»¼»ºº¼µ¼¸´Áµ¬ªª«´±·¸¹µ¶´³°¬¦®°ª«°±«¬®°²±´®ª£xvreg[LRPFMHSWRe^gTPL\QHLRCA997958866;79:<:>98;:::<<>=<D>96;;88>95156BFDD?@7>>C>:A?@@;K|tuvuyustnvrstuvw}}~z|~}
~}}¨®²¯¯µ´³²µ¸°¼µµ±ª°ª³µ´»·´³¶´µ¯¸¸·§¢¦¬°°¯¶··¾µ¹¼³²±®µ»°´¯¯²»¶±¸À½´´´³¸³¼º¶´ºÀ½¹º¹º¾¹¹¹¾µ²±¯²¯ªµ´±³±´³®¸¸µ¿¯¤¦¨£«¬±¯³®®°°¬«ª«¢¢¦¨¢§«ª¥¬§¢§xyqfeYOOMIRMWLO_^\NUTbQDTM;?9<895775795:::9;8:<<:=<>>??B=86::9:@;5266AFCC>?7>=CB9?B?>;K¢}zxvttst~wzwv
£ ¤£¤¬´¹º¼¯¶´¸´´²·¸¹³«¯ª¨¬µ²²µ®±«®¦·³³±¥¡¨µ°¯¬«µº²»ºº´²·º¾»¹±¸°¹¨²¸»®´´·µ»¶¶¹¹¼·´¯±´·¶¹³·µ¦©«¨¨¯¬©®®§¢±´±´«¦¨§ £«®¨ª®¨¬²°¯¯©¨¡¡¡£¦£ ¢¥£¨rwngbUKTOOJCPK_bXZQ\S_LHQIA@9:866775894;9;9<7;>:8<<=?B@A=;6999:?;6378>FBB@B9>=@C>@FB>8Gyrsu{
£¡§ª©¢¢¡¥¨¬¯©§ª©¨§¡¥¨¨«©©¯¡¡££ ¡¤¤§¤©«®¬¥£¨«¯±´®ª¬®³¯¬¬´³´¹®®¬ª¬²°°°¨ª¦²´´¸®ª¶º°¯ª®¬°·³¸´·µ´»¼¸µµ±µ«²¬¨²³»¯±²´¶µ±±´³³¯¬«¯³¶´±¬®´ªª¦¥§«¨¨«©ª¨©³°ª§©¥£¢£°©¦¥¨«¬©¥¤¢ ¥¢¥£¢¢¦nuegdVOXKKJKSTpbYdW_[\RZPLC<89:698747748:<:<8:=97<<;>C?A>;9:9:;>=8458ADEDBC9>;@>B?GD>7B¢£¡¡£¤§¥¥¦©©«©¢¦¤¨¥¤¡££¬¨«®®ªª«¤¡¢¥©§§©¨£¢¤ ¥¨£ ¡¢©§ ¢¢®¬«ª§®¨¥¤©©©©¦£¨ª©§¤§®°¯³¯«°«ª¯²¯°³¹¯«¨°±®°²¹³´¯¯µ°¬³±®¬µµ´´³³°¯¬¬ª¬«¬¯±´³°°®°°°¬ª«ª«¦¥®°²°«¦©°¯©£¤©«§¨¦¨¦«°«©¯©¦¨©¦¥£¨°ª©¨¢©£¥§¤¡¡ ¢¥¡ ¤©ns^ji_UZNRNPORd\dc[\Y\PYOK@<;9:7:8735338:=9:89:9:=<<@D>@=9:<<<>;>95:<BAEACA9>;?@D@CB@7@
¢¢¤¡ ¡ ¦¡ ££¢¥¨©«©ª¦£¦¥ ¥ ¦¨¦¥§¨¦©¨£§¦¤¥¢¡ ¡¡ ¡¤¤¢ ¢¢ ¡ ¢¨ ¡¥¡ ¦£¢¤¡¬¦¡¡¤¬ª§¬¨¯«§´±®®¯µ²¬ª°«©µ°®®¬®·®§¬ª¤¨¯²¯¬«²¯ªª©««©®®®±±ª©«§§«¨©«¢¦©¨¨¥¨¨¬¨¨¥¤¥¨§¨¨¦©¬¯¯¨«©¡¢¢¥££©«¬¦¨¥£¨¢¡ ¤¡¡£ªosfnrd]]PUOWO^ddlgbaZZRTOMA:=::8;95163288;9999;99<;=?C>@=9;:;<@=><99<AAEAFA:=;?AABAEB8= ¥¢¥¢£¡¡£¨§« £ ¡££¥£¢¢¤¬¨¥© ¦©§«©¤¢ ¢¦¡¦¦¦¡ ¡¤¡ ¡ ££¢¢¤¡¡¢ ¡¤ §£ª±¨®«¬©¤ªª«¨¬¦¥¬ª°³¯««©°«¦©¥¥¨«¬§¦§¯«¥§««©«¨«ªª«¨¥¨£¦¥§¬©¬¨¢¤¡£¦£ª©¨¦§£¤§¨¦§¨§©¨«©¡¢¨£¦¥£¨¨§£¥¥¦© ¤¢¢¢¥ £uwkvwa_\UYQUV[c^r`h_cSQXTH><=8;9:85373347:89=9;:9<<A@C==>8;<=<@?C?:8:>?C@DA:;><@?CCEC9<¡¤©¥©§¨¬¦¢¢¤¦£¤±®²§¦¬£§ £¢¯«ª¬¨¨«°©¨©¨¡ §©°²¯¬£¢¦¡©¥¤£¢¦ ¥¤¢¥£ ¥¢¢¢¤¡ ¡£¨¢¨¡¡£¦¢¤¨©ª¨«°±¨¥¥§§¨¤¥©©ª§¢¥¦¨¦¥¥¢ ¥¥£¥¦ £¥££¥§¥©©ª¤§¤¦¢¦§¤«©§§¤¡¥¨¬§¦¥¥££¨¤£ £©§¨¦¡££©¨ ¨¢ ¡¦¢ |wo}yf[[_^Z\V\hdocmihb^PP@?;:898<;634333799;<9;;9>=B@@=;=8<=@=<<CA>:8=?D?C>:9?<B??ADB9:¤§¢ £¥§ª®¬³²³´¸·©ª§¯´²±ª®®±²®±¥«³¬±±©«¯««¬¶°´°«±²±£¢ª©§®·¶´´¶³¯¬«®«¶°©²±®§¦¢££¢¨¥¡£¡¤¢§ £ ¢¥ ¤§ª©¨ª¬¥©¤¥©§ª©ª¬§¤¤¤£¢¡¡ ¥¥¤¦¤ª¨¢§¥¥¡ª§©§§§£¨¥¦¥¡¤¨§¬¢§¤¡¦¥¥££§¥¥¤¥£¢ª£¡¡wrvxib[_^\bY`dnmkma_d`POA@<;9;8:9614364777:=:<;9==B?>?=<:?9:;<>BE@=9;@A>C<;9?9@@@@BC;9{££ ¢¢¢ ´´®µ¸³´¸¶·´¸¹·µ¹¸¹½¼¸ª²¸¼´½ºµ»º»¸³º¿¸·¹»±·¯¨®²¢ª²¸¼¼½»º¿´¯±³µ´··¯µ´µ²°¨¤¢ ¤ª¦¦¡¤£¤«¥¥¡¤£ ¡¢¨¡£ ¥¡£¥¡¨©©¨«¯¯®©¨©«¬¬«¨«§¥£ £££ ¢¥©¦¢§¤©¡£¢¢ ¥¦§¦¤¨ ¢¤¡£¢¨¨§£¥ ¡¨¦¦¥£¡¤¢ ¡¥ vxyxc[RYT__alhukpgiibYSL@<:;89797556285678:<;;;;@>?@=>>9:<967>;BFB<8;?CCD<>9>7>AB?FC;8p¢¦£¢¡¾·±¸¹¶··¸»¶½»½½Àŵ¢» ·¿¿ºÁÉ´»¶²¶¿ÅÁ¨ ¶³º±ª®´±°±´´¶¼¼¾¼¼½Æº¸·º½´¯µ±±º¸·²³²ª¦¦¤¤§¨¤®¤««µµ®³ §ª¬§ª©¥¦ § ¡¦¡¢¤£¡ ¡¤ ¦ªªª®°±«¬¬©©«®¨¦¥¦¥¦¤¤¦¦£§©¤¡ ¢£¦ ¢££¤¢¥ ¤¡£¡¡¥¤¥©£¤¥¢¤§§¡ |xa]YSah`fsositcidb[LK>:8898897345254669<<;=<?A?@@=>>89;867?9BEC<;<>CDC=@;=7=CC@EB<7g¢§«¦¡¾µ³´»º¹¸¹Â·«¸»ÀÂų£Ã§¸³½¿´Äǽ´»¸¾¶ÀÄÄ® °¢µ¶µ½¾ÁÃÆÃù½¿ÀÀ½¿Ä½¼º½¾´§ª±À½¸µ¹À³¯¯ªª¨§§¤¯§ª´¼±´µ¨¯±°¯¬ª¢¦£¬¦«¨¥¥ «°°¬¢« ¨¯²²³«¨®·µ²©¦¥¨«¥¥¤©¤¡ §¦¨©¦¡¥¦©£¢¦¡ ¨£¡¥¢ £¢¡}
p`a^^jbbnwuvnl[bQU\MG;<97979:7444143768<;;<<@@=@?>?>::9:7:?>EEE<==@BBBAB;<8@CC@D?;5_
¦§¥¹±¶³¹¼¼¹ºµª²¼±¾Á´¼Ç¹¸»®¿§ÆÿÊÆÉÈÅÅɼÂÇÇ¿±±§¼¼¾ÅÄÆÉÇÅÆ»ÄÀÅÆÀ¹¯½¼À¾¾³«ª³»¾´µ·Âº¯°µª«¦ª£¤§±¶«µ²³¨®¯§¦°¯²ª¯³¤«µ©§¨¤ ©²¸¾µµµª©¦®²·¸·¶©«¸¼¹·±¯®§¢£¨§¤¨£ ¡¢¤§§¡ ¡¥ ¡£¡¢¡¤|jfhaklfnuqruqf^_\RIE?:::7848<7654233657<:;<;=@>?@><=999;:<<>BDE>>=@CCCDD::8ABBAC@92[¶±¹µµ¾¾¶¸µ¸³¼¼ÄĺÃÇÁ¿´³ÅÅÆ¿ÂÍÇËÎËËÇÁÃÆÇÈÊÅÄÅû¼¼ÁÅÁÅÅ¿ÃÂÆÅÀ±¾º¿Ã¶¶º©´³´©«³»»±±¯¬¤¬®´§ª©¨ª¬©¥¥©¯«²»º¸»·¹·³¹¸³®¬³´ª°µ¹½Áº¾¾¼¾´º¹¸»º²±´¼»º»³³²§¤¦««¢¡ ¢£¡~z|tklncolhqwnyiia\gaQFDA<997644:8465332656=99;;=>;>>=;=99;;;?=ACABA@<@CCCEB;89D??@B?;2W
³·¸¸¸¾»°µ²¸¶µ¶ÀÃÁ¾ÃÂÀ¾»¾»»¼ÄÌÄÌÐÊÆÆÀÅÇËÈÔËÊÈÆ¿»»¾Ä¾ÅÈÆÆÃÄø´À·´¼Á¹··¿À»®¥®·¼·£·°¦´µ¬®¥¥£¨¤ ¥ª³²¾Á¾º¹º¸µ´²±´´³ºÀ¾À¿¾½»»½¾À·¶·¶»»²»¾¹¸¸»¶·´¬¨©©«¦¨£~¡£vyz{vnkiguZfrwsxef]d[RXIF?;78876169744333646;8:<;=<8=><:;<:=;;>>DAADB@@ABCCDC=99B@??@?=2L³»µ¶¿½½±¶¸Á½¼´¸¿Á±¸·¾ÁŽ»¼ÂÆÉ¿ÈÎÉÁÄÁÇÊÊÆÊÅÌÈÍÆÈÅ¿ÃÀËÍÏÉÆÃÃÄÂĽ¸¾ÁÃÀľÁÏÏÎÆ«¯¶´µ« §´³®«¸µ³«©£¢©¬¦¬µ´¿Â¾¹¸½¶°«¬¯µ´º¾Å¿»¼º³¹»¸¹¹µ°´½»±¿¼¸²¶¹³¹»´¨¬¬ª©§~¡¡¢~xyuueeiig]iomxwbb``]XWFE8:8:979449766512334;:=?;==::=;<>:;?><B@CBBEB=?CCCCDE@9:BAAB>BA5B¶»´¼ÆÁĽÁÅÂÀ´³½¿¬°¯ºÃÊþÍÈÅ·ÁÈÅ¿ÁÂÈËÊÂÂÄÉÌÍÏÏÌÃÇÆÈÈÈÇÉÇÅÉÇÈÇ¿ÅÇÄÄÇÈÊÒÏÒ̼¸¶´¸¸Á¾¾º½º¼º¼¬¦©»º¹·À²µ¸²Àƺ··Á³±©«µ³»¶Ã¶¶½µ±·¾¶³·¸°µ¶¿»°½º´«°±±³¼º³³®««±££ £¢ £ }qtqob`gugiitmxl]d[U_YLHC6<9988:53:664413525;:<>;;<=<;<=<;<?=?B?EABCC>@A@EEDEA;7>CBB>CB8;·ÀºÆÅÄÃÌÂÁĽ¾µ¯·»¯¯³ºÀÇÅÄÁÌËŶ¹ÀÂÂÄÇÊÑËÂÃÄÆÉÅÍÐÎÇÌÉÂÁÆÁËÊÈÆÌÉÍÅÆÅÃÆÅÉÍÐÍÏÌÇÄÀÃÂÉÍÇÅÁÄÇÁ»¾´±°°Á¾¿ÁÆ¿¾¸·Ãºº¶À¾µ²¬©¯²¸¾´À´´¸´·¹Ä¹¯¼¾¹¾¿Â¿µº¶«ª¬®¯°·¾¼¶´®®µ¤¥¨¨¦¢ } ¢¤£ ¡¢¤£¤¢}r|xpg`jjvlidtnsb\bTWTSMG:7;9977:748784523425;:9>:=<?=8;=999=<@A@EBABAA?@?DEDE@<:>BCB@CA:4¡ÅËÃüÀÃÇÁ¹½½»¸¶··®²·¸¼ÀÂÀÂÇÆǺ¼ÀÂÄÇÈÆÒÉÁÃÿ¿¾ÄËÈÊËȼ»ÈÇÉÍÈÃÈÉÉÅÅÃÂÁÂÇÇÈÊÇÌÈÇÈÍÆÌÏÅ·ÀÀÀÀ»»½µ³³¿¿¹¿Ã¹À·»Á¼º¸»¹½»²°¯°¬¹Â¸½¹·µ·º½Å½¸ÆÈÂÁÂƽ¼µ©®®°°¯³º·¹¶°¯¯³©¦«©®¦§¤¥£££¢ £
|§ ¢¤¡¡¤¢¢£¡£¢£¡¦yzyrofegcjdajmnn^X\VUNPJF99;97677637895613527<;<@;?<<:8:<998>=@??F?BAC?=A>@DCCA<9<CACDA@:3l¢ÊË»¹º¹Á»º·¾Á¼¼»¹±®µº¸¸»Äº¾À¾¾»¼ÀÅÁƾÆÁ¹»Ãº¸¹¼¾ÁÆÁƺ¹ÉÉÃÅÄÀÄÁÂÁÄÁþ½ÂÀÀÁÂËÃÆÌËÅÈа¾½¸º»¼¾·´°¹¾³¼¾±¹µ¸»¶¼³µ¹¶¹¶¹·±ºÁº¼Á¿·¾Ä¿ÆÃÃÇÇ»À¿¿¸²³³µ´±®·´·µ´±¬±§¥¥§°¨§«¦£¨¥¦¦ ¡¡¡¡¥ ©¤¥¤¥¢ ¤¢£¢¡£ ©¥¨}{xnfadbabccjbfbZYY\XQNE=;9:;77996499:5314527:;:@=?<<977;:9:<>@?>D<BAD@?>=BDBBB>:9B?AB=>85YÅǸµº¹Â¹¹¼ÃŸ»¹±±¶¼ºµ¹À»»¹¶·´´µ¿º½¿¹½ºº´¿¸µ·³¯»¼·À·¾Â¿Á»¿À¼»Å¾»ÁÄÀ¾¾¸¼ÁÁ˾½ÉÄÀÀÊÀ±Á¿»¸»¾¹µ·´¸¼´½¸µ´°³¼±·¶¸¿¶½¹½¾¹·º¾»¿ÀŽ½ËÃÆÃÄÀþ¶¹º¶¿¸»¿¼¸¶³²«°°²µ³³®¬«§¦§®«¢¨«¦¦ª£§¨ª£¡¥¡¡ ¡¦ ¨¡£¤¤¢¢ ¢¤¡¢¨¥¡|y}qc`bbgjffiei]UUSYOSKE8?6;;779;65:;<6313417;98?=>;<;76998:;=@?>@==?B><@ACCA?C=96<@A@<=87IÁÂÀº¼¹¾¶¸¾ÄÀ±½º²´³¸¼µ·¼À¼½´´±°µ·µºÁ¸¾¸¿¼½·µ·°®¸¶¹¿»ÀÀ·Á¼»Ã¶ºÈ¸¶¹»½¹º¶»ÅÅʽ¹ÅÀ¿¼Á¾¸Æ½ÁÀ¼Å¸¶·´¸¶¶»»¸¶´·ºµ´¸¼½¹¿¹ÃÀÀ»¹¼»¾½ÈĽÇÄúÀ½¾¶²¶¸²¹´ºÂº·²±¬¬«²¯²®¯¨£¤«¬¬ª¤¦¤¤¨ª¢§¦¨¡¡¡¦£¢¢¢ £¡¢ ¤ ¡¡¥¤¡¢¢¡¡£¢ £ ¢¦zxpmeefoiekgXXNKKJRILHC9>8=;6:;967<89860431799;?=>:<:889<8:;;;<=A>==CA<?CCD@??<:7>BDA?@88?þÆÁÁ¼¼¸¸º¿·¼±Â¶´¼±´¶¸³º½¿½¼²¯¬±°·¼¶»¼ÀĹ···¶º¹º»À½ÃÀºÄ¾Ǹ¹¸·µ¸º´·³»ÅÆËÁ»ÆÀÀ¿½¼¿ÉÃÄžƸµ²²½¸¸¸¾ºº¹¼»º´·»º¹¿¼ÄÀ¿¹º¸¿¹»ÅƽÅòº½»±¯¶¸³·³º¾À¹¶¬±«®©ª©ªª®¦¤¥§®©¥£¢£¡¤¥¥¦¢¦£¢¥£¡£¡¡ ¥¡ ¥ ¢¦¥ ¤£¤£¡¦~|knpgpksebl_[THKJDJBCG?9;8=<7;;978;7<<6275169<<=<A;<:;:9>9:;==@>D?=>D@??AFD??<=97?ACB@B9:9w½·Ç¾Ã¾½»¾¼½¶º¸½º·½³³°¸¸µ¹¼¼À·ª¤®°·»³½¾»Ä·¶¸¶·À¿Ä¼ÂÅÅÇÇÊÉÆÏÂÁ¸¯µµ¼¾¸»²¾ÄÄÊÅÁÉÿ¿¾½ÇÌÇÇÄǽµµ¶Á½º»¿Âº¿Á¿½¶·½½½ÁÁÀ¿¼¹·¼Â»·¿Å»Â¿¾µ·¼¼¯¯·¶°´³º¹º»¯©««¬¦ª¢§®¨¥ª¯§¤ ¦£¢£¨££«£¢¢¥£ ££¢££§ ¦ £ ¥¢qelintnwcga[bPKTHEECGC<;98=:7:=:89;7<=53650689:<;@=<:><9>99=>;?>C<?>@?=??FD@A?>:7?@CC?A=:8f¡¹¶Á´¿¼¹¼ÃÀ¾Àºµ¶²²À¸¯²¼¼°·»¶»¼«ª£°¹½¾³¼¾¼Å¸²¸¹½ÇÉÊÃÇÈÆÆÉÈÌÎÑÌÊŵºÀÃÈ¿¿µ¿À¿ÆÆ¿ËÆÿÁ¼ÀÃÌÊÇÅÆÁ¹½¼Ä¿À¿ÂȽÇÇÅżºÄ¿»Á¿ºÀ¼»»ÀĽ·¹Â¹¾½·´¶¸º®¯µ±°°²¶·´·¬®¬ª¬¬«¨«¡¦³ª¥¯¬¨©¥£¤§¢££§¡§¢¢¢¡ ¦¦¢¢¢¦¢§¥¢ ¤£¡ ¢¤tolltkln_b^aaMHM?E@?DC;;::;:8;<:9<>9:>4455199:9<;@<?==<8<;:<;;?>C>B>@?=??EEBAB?;6?BED=AA::Y¶¸¶±º»º¾Á¹¹Æ»¶µ²¥¾½´¶Á¿³½´¸Á±°±´¼Ã¼ºº¾¼Ä¿·½¿½ÇÌÆÇÉÆÆ¿ÄÄÊÈÌÌÍËÆÂÃËμ¹½º¹ÀÿÈÆÄÁÁ¿ÅÀÊÉÃÃÃùþ½¹¿¼ÂÆÂÉÎÇƾºÆ½º¿¹·À¹¹¾À¾µ´¼¸¶»°¯²²µ¯°¯®¬®³°³²¸«±²±ª°««¬«¬¶¨¬®²¦«¬©©¡¥ ¥¦¤¬¤¦¡ ¡¡ ¦ ¢§¨¢¤ ¢ª¦©¡¨¡¥ £¢§¡{zzmmw{_pc[]_^SI>BEIBC>C;>69:;;;;;;;==9=566218:9;;:A;?<<>7;<;<==<=@>AAA>>ABAECBD@<6>CDE>BD?;S º½´°»¼ÁÄ¿Åƺ¶¹²£»½´·Ä»°µºµ¹Ä¸´¼¶º½Á¼»¿¶¿Á¿¼¿ºÀËÂÇÈÀ¿¼¼¿ÅÂÇËÈÁÃÀÀÉÊÂÀ»»°´»½ÀÅÆÅÅ¿À¿ËÇÂÀÈÀºÂ»º³ººÁ¾ÀÊÎÊĽµ¼¼¹¿¹¹µµ³¿À¾·´³´¸·ª¯°°²±¯«¯§¯¶®²±¹®¶¶¸´³°±¶´º±®¬®¶§¬²¬¤£¡§§¨²«ª¥¤§§¥¥ ¦£¤¦¢£¢¥¢¢¡¥°´°¤¥¤©§¯§© « ¢¢¢¤¡¦§¯©±{}zmsxsgp]Z^\YQEDCMIAD=G::59;:<<:;;;=?:=54512788;<;B<?>:;6:=:;>=?@?;AAA>>?B@ABBE>:5:ABI?@B@;L žº¶Ã¼Æ¾¿ÈÅ·µ¸·¶¹»´¯·¶²µ³·¹¼»¶»»½ºÃ»·½·¹À»º¸¸µÅÁÃû¹³´ºÁ½¿ÇÀ¹À¼¾ÅĽ¾¹²°®¸·¿ÃÇÃĽ½¿¿Ãþ¿Ç¼¼¿´´®µµ¼¾¿ÎÍË·²¸¸¸½¹»±¶²ÈÀ»¶´±°·¬³©°³·¯«®ª±µ¯±¯·³ººÀ¿¶·¶²»ºÀµ²³·¬°º¯²¥¢¥«¬¯¹³²¨°¯±¯ª¢¨¡¤¨¬³®¨§¦¥¦«¤¤¦ª£¦²¸³«¥§¦§®«ª¥°¥¥¥¤£§±¬µ¸°²y|wluzpmh\__YSPAEHGK@DCH<=6;99<;::;:=?<=55613698<A>@;=@;;9<=8:=<@>::>=>==>@BBBAD=745=DG=CB?<E ÃÀ½¼ļ¼»Å»·³·¶¶»»³ µ¬¯±´´´¶¸¹ÁÀ·½¹¸¹¶µ¿³´²¸±»ÁÀ÷·°µ¸¸¸Âº´»·»¾À»»¼®¯®³²¹ÁÂÄþ¼¿»º¸¶Áµ¿ºµ®¯°½À¹ÏÊÉñ¯µ´´½º¾¹º»Êûº¶¯°½±¸¯²³°·½¶®¯®°·°¬¬²¶½¼Äº½·¶À¿Á·µ°¶²±³º±±¯§«¯«¶¿·µ©º³µ¹±§«¨§¶®²±µ¹¨¬¬¯ª¯°ª¨§¬±¬²¶½´±¬¤¨«¨¨«¬«¨¶©¦¨¦£®¼±»Á´¦|zrvvwmp`^e][TJ<>?FF=FCC9:5;99><<::<>>>>88315789>?A?;:?=<;==9;<9;:7;>==CA??ABDBA<858=CF=DD?<?Á¾Ã¾¾¾¹¶ºÀ±µ±³··Âµ³«³¨©®µ¯´¶¹Ã¿·º·¶¶²´À¶²´¸³ºÀÁù·²²²´²·¾º³µ²¼º¼¶º¾²´´´°¸¾ÃÆÄÀ½¿¹³¯²¼º®»´³¦«¨º¾¸Ë¿¾¬«°¯³º·¹¾»ÀÅÁ»¼·°µÄµ¿´¸»´»Ã³¶¶±¸¬©¥«²½·¿¿»»·±¼½¼¶±¯««©³¯°°«°´©¸À¶²©´µ°·¶¬¦«»³®´¸Â°±±µ±²µ±¬°²¸¸¹¸¾´±³®¬±©¯®ª²¸®¨§¡©¶¿¸º¿°}|qswtvql^b`[]NHA?=HCFMD@775;:9><<98=>;=?:8325768??B?:8>>=<9<9;;:<;;:<@>BB=@A?BB?<;7:<AD>BC?>A ¡»´½¿»¼¹·³¼¼¬³²´´¶ÀµÀ¯²³ªª±·©¹³·À½»¼¸¶º¶±Àº·¹¸¹»ÁÁÄû»¶´´°¶º¶´²¬¼¹¸µ¸Áº¸³±¬·¼ÁÇÿ¹ºµ®¥¬³°¦°¨ ¥¶µÂ·¶´¥¨«¨°¶³²ºµ»»»µ¸¶°µÄ²¾¼¿¼¹ºÅȺ½¾¶±§¤¡©±®µ¸¶²°«´·¶±¨¦ ¥¦¤¬§«¬¶©¯º±¤¦¥«±«¬©¸¶°²¸Á¶±±µ±¯»¶²·µµ²¼µº²°±²®´²ª®§¸µ²µ®ª¨¨²º½À¶´©{vo{ourmb\fX\]RNMA>JB@JI@665;78>:;87>><;?:9327575<<><<8>><<999;;;>;;9<>?A=<B@??B@>;67:@DACA?AB ¥ µ¯´»»´µ°±¶º®°´³¯µºµº°µ³±¶º®¬¼²¸¹·»¿½¹¾À´¿»¼º¸¾Â¼ÂÊǾÀ¸¹¶²´¶³´¯¬»º¸¶¹Àö®®ª²¶¼½¹¶²±¤§§£¦©®¹¬««¥¨¤«®®§¯¬¯±±±®®°¹°´¼¾¸¹¸Çż¼»¸©¢§¦¬±®²©¦©ª®©¢£¢¢¯§¤¬¦¨¡§§¦§©¯¶²«´¶¯ª°¯±©¹¶±µ±®¬·³¶¯®«®«´µ¯««±±²¨««³µ·º½°«¡zyqvsmtik][jT\\OMHDFLAFMF8665:5:>8;97<=:;=:9236777>;=>::?><;<::;9;>;=9<>=B<;@?@?A?>:55:@EBDA@BA¢¦¡¥©®®¸¹±²¨®¯¸²«°°ª²µ¹¹¾µ²¸´¹ºµ¹»µµ³µ»¼À»¾À´¿¹¹º±ºÃ¼ÂÊÅ¿»¿¿¹³´³±±®°¹¹¶¼¸»¿²²²®±®¹¯ª«¬£¨¡¡¨®¤£¤ ¢§¢£©©¡¦§¥ª§¬§¨§¬«¬²»´³´¹º¶²¶© «¬«¯£££¡© ¤¥ §¤£¡¥ª¬¢©ª©¤©®¥´±®±ª©®¯°¥¦ª¤¨³®¬©¦¦©«¦ª§«²¬¯³±«©wrxhtsndT`cW\QNLH?HQCMC=8875:7<>:;<89<;;<;8248978;;<;8<=>;=<:9<:;==<::@=<<;@>B@A?>958;<FACD?AA£¦¢£ §¨ªª©¨±¯°¥§¦²¯©¦« ¯°»µ½¼·ÀÁ¾¼¼¼¹®¯²²ºº··µµ¼´¯´«¶º¸ÀÄÁ»µ¼½¸²³°¯¬®·¶²´´¯ª¤¨¨ ¨©¡§¤¨ ¢¢¢¥¥££ ¥ ¤¬¤¦¨¤¢££«¬³®©®®®§ª¨¬¡©¨ª«¥¢£¦¢ ¥£¦¤§ ¢¤£¡¡««¤²ª¬¬§£¬®«¡¢¤¤¯¬¬©¦£¢ª¤ªª¤©«¦©¬«¦ y|vybvln\PhTPNGOLLCOQ@>;>39:5;9=;:9=99<;<<;936996:;?=:8;:><:<;9;=;<<=><@=?<8;@@A??>949<7ACBD=@Cª¤£¢¡¢ª¤¦¨¦¡§¤¡¦¨©¥¤ ¡§«¡¢§«µ²¼½ÀÂÂÀ¾À¹µ§¥¬ª¨µ²±°®¯²§¦¯£¯®µÁºµ·²·¶²´«²´®ª«¯°²´®¥ ¢ ¤¥¨¢ª £¥¨ ¡¢£¨§§¡ ¤¬¨¬¬ ©«¦ ¤¨¦¬£«¦©°£¥§ £ §¨¥ £¢¡£ ©ª¥®®¦¨©¡¢ª®ª§¡ ¢£©¬«§©¦¤¡©¢¥©¦¥¤¢¦¤¨£}}uu}mk{dhUQcMIHGNRMJMG;D@<2?859;>;99;8:<;;;9948;87;;><:9<:=;;<=9<<<>==A>@B@=7:?AB@@?855<:@C@D>AF®¤¢¥£¢©¨¨©ª¥¦¢¢£¢ £ ¡ ¡¨¬®¶·º¹º··»®¨ ¡©¡ «ª¦©¤©£¤®¥¬¬´¼·¬²±¯±µ¯¯³µª§¬£ £¢¥¤ ¤ª¡¡¦§ª¢ §¤§©£¦ªªª®§¨°¥£¤¦§¬¦¡¤¡¯¨®±ª¥ªª ¡¢§¥¡¢¢£¡¦§¦¨£©¥¤§©¤¥¥¡¥¤¬¬©¦«§¢ ¤£¤§§¡ ¥¢¦ {}vx|dxy`bRU_HIIKSTIRPL9>A67=65;:<<9;;8:<=:;8657:69>=><99=9==<>=;;<:>=<???@==7:>@@@??865=<>ABF@@G ®¤¦«¡£ª¬®§¬©¨ ¢¦ £¨®¬««¯ª¯©¥¥¦¤ ¢¦ ¢®«¬µ²¶¦¯´«©ª´±°°¸§¡¢£¥¦© ¦£§®®«¦¢±£¤¦¦ª¢¡ª¢©¤¨²«±²«º¨¦«§««©¬¬§ £±²°´©±¯¢¡¤¡ £ ¤¢ ¢¦¥¦¥¤¥¨£§£¦£¢¦¥¢¥¥¨¬¤¦§ ¥¡¥ ¦{|vvshle[SZYMQJNOTLRLA7>B68<76:<<=:<98:;<:;976:=59<;@=78;7=;===:;<8>==@>A>>>88<?@@=?758=>=A@F@AH¡ª ««¡¤ª«°©©§¥¥¥¤ ¡¥¡ª¢¦ §¡¤¢¡£ £ ¢¯®¬¯±¬¶§±¦¦°®¬°§£ ¡¡¤¢¥¡¤¤¨¨¬¨¤¬´·¶°§´¬¢£¯¥¤¦¡©¨®µ³²½¶¾°¬±®©ª´±°§«¨²µ·³·¬±´£ ¥«¡¡¢ ¤¡ £¡ ¥ ¡¨§©¡£¤ ¦ §¡¦£¢¥£¨ ©«¥¦¢£§|xuiwu]lZR`HQUHFUVJBMG=JH8E<67;>=<:<98::;:<966:<7;>=?>97=9>;<@<:@::@?;@>A@=<97:>@?:?758=>?A@D@BF«©©¢¥©©®¨¦ª¥¦§¦¨ª¡¥¤£¦¨®§¡¢¢ ¢©«§¬©ª´«««¥¥ª¨«¬ª¥ ¦ ¨¥±ª§®£«¶°´²±®¶¸½Àºµ´°·°®´©¦¤¥¬©¹³µ»Ã¼ÃÁ¶º¶«¯±¹·¼¯³°µÁ¼·¼²²´¡«¢©¨±©ª¨§§©¦ § §§¥¤ª¡¢¨ ¤§£§ ¦¢¡£¢¡¦¥¥¤¢¤ £
~vqmivmhm\X[BVMJGMGBFM<>L=4<96:=?<;::88<9:;;<54:<89>>?>88?9<;=?;=A=:?><@>?>?=<6;?A=;?867<<@DBDABCª ¦©£©ª¨©£¡© ¦¨§¬®¥©¥©ªª ±¢·£°¦ ¤¤¤¢¤£¢ª¯¬§©£ ¡¬¯®ª«§ ¢£¡«¤«²°¹²²±²±º½¼¼¹¶¸Ã¾¿Â¿¶ººÀĹ½»¬®§±±Â¶¸ÂÆÀÈÊÀÊ¿°¹¹½¹Â½¸³»Åüº¶³©²ª²´¯³®©®£«¦µ±¬¢¯¥ ¢¯±°¤¤¯£¡ ¡§¡¤ªª £ ¦¨¡¢¤££¡¤¦¢¤
{trkkurphW[QETHDIPH>EA4EH95;=6;<><<::89<89;8::8;<7;>=>=68@9;;=@<=@97<=;>=>=B>>7:A@><>958=;=C@ACBAª¡¥ª§¥ª¨¦¢§¦¬§±²«£©¬¢¡ ¡©²«»²¿«¯¬¥ ¡ ¤¥¦§ ¬±¯§¤¤£¡¦¬§ym ¤¢«¬´¼¶Ã¾¾³»ÁÃÂÅÀ¿ÂÆÆÅÃÈÂÀÅÈÍÐÈËò·µ¾²¾Å»¾ÌÍÅÌËËÒƾ¿À½ÇÆ·ÃÉÈÂÀŽ¹³¹º´»·°µ²ªº±®º¶¾ººª·¬ªª¸º´»®¸£¦¢§¥¢£©¦§ª§ ¡¡¤£¤§¢}zrkdioxjeZ[FJLDDSLDBD7:?;549979>?;<;;8><6:=9<=9<=:;=>>>7;A:>9=>9=>87;::;??=B>?7:A@=<=866<:<A?AAA>« §®¨¢«¥¤¢¢¥¡¥ª«°²®¤©¦¤¦¡ª§¢«¬¼¼¿ÃÁ³²¸§¡¡«ª¢¡¢ £¡¯³©¡wsqnp¦®´¹Å»ÍÇË¿ÂÌÎÍÌÈÉÑÌÍÌÇÉÅÆÌÐÒÕÎÓɽÀ¿Ã»ÆÅÈÅÑÓÌÓÏÒÓÌÊÂÅÆÆÊÇοÈÐËÆÄÆÄÀ»ÂÀ¾¾¾µ½³¾¿ÂÂÆÄÆþ¸±¸¼ÃÁÁº¼¼µ®§§¨ ¢©¥ ¨«©£¤¤ £
ytsebgrof^ZYCNLCEPIDB@55589B=68:A>;;><9>=7:=9:<8<<<;??><=>C<;:@=:;::8889;A><@?>8;AA<;>786:<>B>CA@>¯¨¯¦¨«£¢¥ ¦¦¤«¨«ª®¢ª££¬®¦¥±ªÅÆÌÎÍ¿°Â©¥¨ª¡£©¡ ¤±±«¤ yrroly¤¶º¹¾ËÁÓÒÓÈÍÎÑÓÑÒÑÐÑÑÍÎÎÐÅÎÔÕØÒ×ÍÆÇÉÌÃÅÊÎÊÓ×Ñ×ÒÔÕÓÓÈÌÆÌÍÉÒÌÍÓÍÄÆÉÉÀÅËÇÈÈž³³ÇÄËÊÊÎÅÉ¿½¾¼ÁÇÄÌÌÈÉÀÿ¯²¨¢ª£¦©¬¤¥¦
{ruvgbhwidVWQDMF@IQB=B<:23@<D<79<B=;=?;;>=9:><;>8:99:?:>=@>@<>;>;9==<96::>=<<@?>9:@A;9>9:::;>><A?A>¬¢¢©¦§¨¤¢ª¨£¬££§¦¬¢©£¤¯ °«¨¬±ÉÍÔ×ÏƻǬ´¸¬®£¤£ ¤¬©¦°®¥¡¥¢}wpkebhqoq{
vpnqtp
³Â¾ÅÑÐ×ÖÖÒÖÍÔÖ×ÔÓÑÓÔÔÒÏÑÃÐÓÖ×ÕÖÒËÉÎÐËÆÍÑÉÑÕÖÙÕ×ÒÖØÎÒÉÎÑÌÎÐËÒϾÆÆÉÂËËËÎÏÅÆƶ¿É¾ÒÌËÏÅÉǾÂÂÇÎÌÏÐÎÌÊÇ͸·»¨¦«§£ª¥©¨¨|xsvpc`erb]R\IJFAEHI>;@8=4585:76:<@=;><;9@;9:<;;<7==;:>;=<><?::<;;9;?=95;<><<=??>:;@B;9?98;==>?<A@D<« § §£¢ ©¤¥© ¡¡¦¨¤¢©¦¢¦¬¤°±©¨µÐÔ×ÚÒÇÆË´¶ÂƲ¶©¢¥¦¡¢«µ§±¡¦«¡¡¢xida____^_`^blusqpolrquÄÇÆÔÕÖ××ÓÖÏÕÔÚÔÔÏÏÕÔÔÑÑÌÑÎÓ×ÖÓÕÐÏÒÓÑÉÓÐÇÐØ×ØÐ×Ò×ÙÕÕÌÎÏÉÌÑËÎÏ¿ÅÁÆÅÎÌÐÐÑÈËË¿ÉËÅÓÍËÎÇÃÉÆÆÈËÊÔÓÐÔÏÒÌÒÁ¹Å±¥¨µ®§¨¬¥²¨°³¬¬
{zqstmacim_VP_JJBFCQM?<>44:=52755<<@<;<:9:@:8;:>:=8>::<@=<9;=?9:?=;=<==:6<=?@=<==>:<@B;:=74:><??=FAD=¤ ¥¥¥£¤££ §¡©¯®«ª«¦®¸¨«·ØÔÕÙÙÑÎÐÀ¼ÌÉ·À¯§«©£¤±¶³£¶ª¡ª©¡¡~rfcc__a`_a`_``_`fmppnkorwwÌÀÒÕÓØØÖÙÑÒÒ×ÏÓÎËÓÍÕÔÑÊÏÌÓÖÒÑÖÍÐÕÕÑÅÑÔÊÐÔÕÕÍÑÐØ×××ËÈÎÃÈÎÌÉ̿ȾÇÈÍÍÏÊÐÍÎËÎÎÇÊÏÏÊÎÊÁÈÆÉÌÉËÑÒÌÓÑÑÏÏʽǹ°»¸µª¶°¨¸³¿»±
yvopokbenpaW\ZIFFDLWE;@<33<=86855;>@=9<<8<>9<@;@:=8>98:?<=8;>B::=<:A==<:6=<?@=<;=>8;@A=:<88;><=>:EBE>¥§ £§¡¦¤§¸¶µµ¥®¾µ±ÀÙÒ×ÚÜÖÏÍËÃÓв«®¬¦³±¸«³·©£l__^adb```a``a^__^]bmroostuvy¤¾ËÕÑÖÔÓØÖÎÎÓËÍÎÅÎÊÒÒÏÆÎÍÍÔÌÎÓÍÊ×ÕÐÌÑÓÊËÐÑÓÉÍÑÕÒÕÕÊÀÉÁÅÌÂÇÉÂÌÂÅÇÊÊÎÊÌÌÏÍÓËÅÇÏÌÇÇÊÄÆÀÅÉËÌÏÐÆÏÎÍÍÌÏÅÇÀ·¹½Âýù²³¾°»ÃĶª¥¡
xprkmh``qhXXhVMGLIPPB;D>;67:89:57==@;:<=9<=9==:>:<8;=9;@<>;>>A<9=>=B=;775?<<?<<;<<8;A@<:<9;:;<=A:EAE>¨¤¤ª¢¡©©¥ÅÃÁ¿»µ²±Ç¹ËÕÖÙÚÛØÌÍÏÉÖÖÅĸ²¶ª£®¸¹±²À¡}fbcb`]^acb`_``aa`_][]grqqrsqmry¤ÆÓÏËÐÏÔÕÉÄÉÉÆÆ¿ÃÅÎÎÇÅÇÍÊÑÈËÎÍÆÑÒÏÎÌÔÊÇÊÍÎÇÆÏÒËÐÏźľÆɼÂÆÈÎÄÂÇÀÆÍÇÃËÉÊÏÇÃÃÏÈÆÁÆÇÿÀÆËËËÎÂÊËÈÇÌÐÄÅǺÇÃÈÈÂÏÀ½¼¿°ÁÊǹ½ª°²§¥¢£wntdk`^fqa[W`GHHGIMTG?J=64355<<48===:;=<9:;9?=9<;<8:<::@=@<==><:C><?=889:@>?><;;;;8:>?<;:79<>=;>=FAC= ª®¥®ª« ¥³±¬ÉÍÊÈľ½ºÍÍÆÐÕÕÙÚÛØÐÊÐÐÒÔÊź¾¾°¨·ª¾¹¹³¥~
t`[^^^`^`cdc_]]^_``_[Z\akrrookloo}¸ÑÈÉÊÏËÍĺ¿Ã»»º¹¾ÈÆÂÃÀÃÇÊÉÈÊÇÁÅËÆÈËÍÉÄÁÉÉÁÁËÐÄËÈ¿¹ÁºÅǽ¿ÅÎÊ¿úÉÇȺÇÅÄÊ¿½ÁËÆÅþż¼¿ÂÄËÄÄ»¿ÉÂÅÇÒÅÁȾÊÉÆÇÆÐÃÃÆïÄËÇÃÊ·¿¼º´©¬¥¥¬£ ¥£ {vrtfiZanmZ[XQDLFBGDLCFR?54334?<3:<<;9<<<8;=;A=:<:;7;=9;=;=;:8>><B>;?<99;?=;@><;9999:;=:<:69<><;>;CBD>¥©²©´®°¢¨¿¸¼ËÐÒÌÇÂÃÇÍÏÎÍÕÐÖÙØÙÐÌÔÎÏÐËĸÆÁ¶µ¼±À¶º¬{
vxusq_Z[]`abcdded`\\]]_^`[YZ\borokilposƼÉÅÌÀÆÁ°¶º²²´²±Á¼»»¹¸ÀÁÁž½¹½¿¹ÄÊÅŽÆÀ·»ÄÉ¿ÂÉ»·ººÅþ¼ÁÍÂƾ½µÀ½Ãº¼ÆºÂ¹³»Åö¿¶µ¾¿ºË¼µºÈº¿½ËÃÁÅÂÅÈÅÈÅÐÆÂÌDzÆÉÃÎÍÀÅ¿½²·°³§¨¨¹±¥°«¬yvwjeh`hocV^YJEJFHKAEBEI@9:648853;:;<9<<;9;9:@>::<:7:;7:;;?<:<@=@?=??;=;;@<>>>:998978:<<<;9:<>;;>:@@E>~¬ ¬µª·´²¡¦¢·ÆÂÄÈÎÒËÊÊÇÍÍÏÒÉÑÆÖÕÖØÏÌÐÈÍÈÊŽÊÁ²µº·º¶¯
y~|tud\\]^``bcbbeeb]][\^\^]Z[]]hsqmggnpry½ÌÀúÀ¸°°§ª¬§¸´¶´³²³ºµ½±·°´®²»Â»Áļ¿ºµ²º¾À¸Ç¸³»µÀ¼·½ÆÀû´¯²¶º¾³Ä¶ºµ¬¸¼½À½°¹¶®¶º²Å¼¶®»¿´¶´Å¼¾ÂÅ¿ÃÄÅÇËÅÀÆÆ»ÇËÀÏÉÇÃÆÁ÷þ¾¶¹¾Æ¿¬µºµ·¶xtxfgebkn^V^`FKHHJFBCADE?<:565633;:;=:;;:;>8<A=<:;87999;<:>;9>?=@?>B@=@::>;?==9:::856;=><<:;9>=9?:<@@<·¦«³±¼¼± «£¯ª§¤ÆËÎÈÆÉÎÌÐÍÎÉËÉËÊËÆÑÏÓÑÏÇÊÆÊÅÄÀ¼Ï½³¹½¹¸·{y~wx}th^]]]_`_`da^cec__\[^\]^Z[[]_lpnhfjnnr|¤Ç¿¹¸µ°«¬§¢ª§«¬³©«©³¶°²¨®§¬²»º¶Â¹º¹°«µ¹»´Â¹¯¿°½¼»µ»Ç¹Â¶ª¨°±Àµ¸¼¯°§±³´»¼«µ¥®¶®º±°ª¹¯»»¸»¿¿½¹Â¿ÆÂÅÀ¼ÆÁÇ˸ÅÇÅ¿ÇÃúÄÆ»ÅÉÌ˳¹Â¼º²rvvkiablhYWW[ALKMIEAC?FA;9:995854::9;<=;:;>8;@<=9:79>9;<:8;;:>>9A=?@?;>:;<:=<<8989768<<=;<::;>=;?;;>@<À«¨¸·¹Ã³©¡¦°µ±·¦ÆÏÒÌÄÆÂÅÐÈÏÃÄÇÁÆÆÅÅÌÃÊÌÃÄÁÇÀº»»Ê·´»½µµ«|y~
z{xn^]]]]_`__dcbccb`_^[[ZZ]ZZZZ]dnohfgiknr¹°µ®¦¥§§ ¤ ¥«£§¢«©¬ª°£¦ª´¶±½¹¯·¯¨®¸´´»·³¼®·¹´±»Á±Á®¤¨¢«±²³§¼ª«¨«¬´³¥¨ ¤¯©²¥§¨®¥§¶¬°²·¹º»±¼½¾¾Ä¿µÁÀÇÈ·¿ÀÄ·ÄÂÀ»¿ÄþÄÈÌÊ¿¾ÃÀÀ©rsrji]aodWVXPHZRSKFFE>?@:789776437:99:<;;<<7;=;;;<89>8=;<6:=;?=7A>?@?:<<:=9:;:7778879<;<;9;:<979><>?A;¯®¼·¹Ä°¶°ª©°±³µ½¯ÆÑÐÍÄÈ»»ÌÃÌÀ½Ê¹ÀÅÀ¼ÌºÃÆź¼Ä½¹¶¼Å¸¶¸»®±{~xt|swf_]\\^_`^_ccab``_^]\ZXY[[YXZ\_fkfegehkor
ª¥¬¦ ¡¥£¡£ª£¢¤¤§¤¬¤¥«²¯¶·§°¬§ª´«´¹°¶´¬¶¸±¯º¹°·¤£¦±§«§¹ª¤¦§¨§² §¦¤¦¬§¤ °¬¬¬±³²³°µ¼¶»ÁÁ²º¾ÃÁ±¹¹Â³À½¿µ¸»½¾¼ÂÆÄÂþ¿Ã wplae_ko`UY_HNhOTGEJF<=?=:;;825536999;9::<:7<?<<;<88<9<:;78::<98>:?=98<:;=:7676788666;::;9:;<859<:>>@;ȵ¶½¸ºÁ»¾µ ¡¦º¶«³³»³ÅÐÉÌÃǹ¸ÉÂÎÁºË¹½È»¶Ç»·ÃƳ¾Å»¶¯¸¿»°³¶¯¢}yvtpmkjjqi_`]\\]_`_acb````]\[\\XYXXXVX[]^dcbegggjmo© ¡¢¡¢¦£¥ §¢ª°¬±µ¢©ª©«¬¤µ¸¶¯¬²´®²µ®°ª£¢²¤¥©¸¡¦¦¨¬«¥£¯¨«§ª«¬°²¸®¸¹º°¶»»º«³²¹²½´¶±±µ´¿µ½¿½ÂÁºº½zrk_e^ddXTX^IW]KPGIJFA<??@;?<04536:;9;899<<7>?;=;;88<898<78:;;:;?:=;78<:=<74776757466;79:;:8:98:;9:<?;ɶ¸¾»·ÁÁÁ´¤¤¤¦À²¯¶¬´·ÆÐÉÉÁǼ¼ÅÅÐÁ¼Ê»»Á»µÅ¸µÁÁ³Âû¬©´¹·§±²©ysnpnkc^bff]]^]]]\]_`abccba_\[[Z[YXXWWWXXX[^bddeffhikr¨¡¡¡¨¥¥ ¤ ¯² ¥¢«¦¡µ°±±¬§®²§¹²¦¶ ¢£¡¢¡©µª¢£¦¥¦£¬¡«¦¢£¥«²³ª´°²ª²¸³®©¯²²²·³©¬®±·°ºµ¹½¾¶³±yue^e^[YVSZUL\QLJEHKIB=?AA@@:245249989;9:=<6=?;<>;7;;777>6:>;:8:=;<=:;<:=;8797465546785::8:99<87:89>@:Ƚ¸½¿¶¾½¿³¥£¥±Âµ¶½µ¸ÃÍÉÈÁƸÂÁÈкÃÆÀ¶¼½¶Ãº¶¿Áµ»¿ºª¦°º±§±¯}
ypqtqhediec\\[[]]\[^`a^__`^\[Z\ZYXVWWVXWXXVWadecdeddhjv¢¡ ¡¨£¨ª¦®°«££¶© ®¨µ©¦¦¬°£¶¯£¶ ¢«¦¡¬¸¯¢¡£¡ ¡¨©£¡£ªª°§³«ª¦¬²°¥ª®²±¯°®¯¦§§²®±´¯»³¹·£yud^aVYWSRTKM^LPLGHLKE<@><B<;7553398899:9>:8>>;=<<7>=676=7;=;979;;<>99:;:867654531045679:8:9::7:;99=@:vÀ¼µ¹Â±¾¸¼®§§£ª»À½À¹®´¸ÂÍÈÇÄžǺÊ͵ÄÅı¿¿¹ÀÁº¿¿¹¹¼·§¦°»¦¨¡¤~xrjlrtpihedgb\\ZYZ\\\]^]\[\^\[\Y[\ZXVWWVWXWWWU[ccbbcbcdfj ¥¤£¥¦¤ª¯¦¢¤µ§ ¡¢§³¡¥§¤®¤°¬«´ ©¡¡¬±°¢£¡¦¦¡¢¤¤¤«¤¤°¦¥¢ª«¬¥¨®®®«¨©©³¥¦«®³±®»µ°¯®yvrea\Z]XNLQGRaMVPOJMOEBD?9=69:754599;9887<89=>;>;<69:7;6;7;;:85:;:;;6<;8846863321./2556;:8;7876<;:;;A8x»»±µ½°»²·¬¤¦·»¼Áź±¹¶ÅÊËÁÄÇÇɸÈƵÅÂÈ®º¼Â¼ÂÀÁ½¼·º¶¥§±µ¢wodbgihfhjgjm`]\[ZZYZ\]\[\^_\ZY[YYY[WUXWTTWUSTSU``_`a_`acdi¤ ¤¡¬¥££¢£¡ªª¥¥°©¤ª§¡««©¨¢¡¡¢ª¨°¢ ¢¤ ¡ ¡£¤¢ª¤¢¤ª¢«¥±©¦¥¦¦µ¦ª¨³µ´¹º¯©¬rpo`[WVURFQOHZ\ORJTKSLEGIC8;;=<8666:9;::76977:;:=<<6;<8>598:88659:;<97?<9678452121..1426:86:859898:;9@9{µ´´»²°¬²§§¯¹¹³¿Èº¶À¯ÆÉμÂËÍÉ·ËÀ´ÀÇÌ°µ¼Ç»ÁÇý¾¶ºµ¤ª¯®|uijjmhjlnkkme]\\[[\ZXZ][[^``\XXZYXWXWTVVUTUURSOQY]\]^____bdm¢ §¨ª§ª¥¨¤¢¤®¤¥¯© ®©²¤¦££ ¨©¬ ¡ ¡ ¢¢ ¢ ¡¨¢¢¨« «¯¤·¥¢£¢¬©¨«¯³¸²½µ³«¯rrh[XYSUREYLQ\YMTNPLQRINIB<??A?=65799<<987:79:;<=>;7;;:=67:;8976989:6:=99577571140-+/434988::8::748=8?9~³®¨³¶®¨§¯©¨¬·¶¬»Ê»¶¿¬ÌÇƹÂÏÐɵƾº¾ÆË´°½Ä¼ÂÄüÀ²¹¯¥ª¯«wxoninnnqghigd]Z[[[[\[YZ[\\^__\XXYXWXWVUTSUVUUTSNOQYZZZ]\\^_`d~¢ ªª¦ª¦¯¢§¬ ¤¨§®¦©¥ §ª¤ £ ¡¥¥§¨¨ ±°¦±¼¦£¬µ«§°´°¹µ¿±±«|prbVTUNRIGVPSRLLXMJLNRGMKACFDC>@75889;9:7::7<=:;@>:9;9:?759::876958779;85576661320-*.102877;99;8948;8@8³¦±·ª¥¢°«ª§©²°¤¶Æ´¹º³Ëƺ¼ÃËÑÌ´¹º¾ÀÄǵ´¶¼²º»Ã¾Á°³°®°«¢khmoroqkpkdfge^ZYZYZZZ[ZZZ\\]\ZXXXYYWXWUUTRSUSVURNNNRWXYYYY\\]ajzv¨ª¤¤«¦ ¥¢£¢¡£§ ¡¡¤¤¦§¦ ´²§²· ¢·¬ª¤²²¦µ¼µ««±£xrm]NPQLODNNNPLFNNKJNNQHMJAGKHHC=858889:;69:68;99><8:>9;?8789:886857688974577820301*)-/12776:999984988A7w¶§¤¶°¤§£©¥ ©¥¤³ª¢²Ãµµ²³ÇǸ»ÄÊÍǵ¯¼¿¸¼Ä³²®¶¢¬µÃºº®ª«´¯¯§}^`gsqvqjnifhhj_XYXXXYYYZZY[[\\YXXWYYXUVRSRPQTQSUQNMKLSWWVXXYX[]aosvp¡¢ ¢¤¡s}
z¢~~sz¢¢ ¡££¢´¯¬¯¬¥¸¦¥°¡±®°»ª©¯ªvrbVLQOPMCSNLQMCPPHINSMHJJDJLEJJ<749888;;69;7:<9::;79?9>@79:<89764445874312585/0102)(,-12764889::65:87A7w·¢£´¨¥¥¨£¦¥¦¥¦³§¥´Á¸°´°ÊƹºÂÏÇ¿´¯½Ã¯±Ç²§¬£¿·°¯§¬¬ª¢rWV`hgihincjhgb\XXXXXYYYYYYZ[[[YYYVWWWSTPNPNOOPSTRMMJHNSSSTUUWY[]ilrl
|tNXr_;Wo{
rxz
|xqo
~ §¯¨©¨´¢¦¬«§³¡©£|qm_ZNSQVLDTJPMMFOOJELQMKOJIMOFIH=7599999:7:;:>>8:==6:?8>?589;79675333760.-/344110//()++-3844879<:79;86A9x· ¢¡¦¦© §¨§¢©°¨§´Â¹±µ°Éù´¿ÏÀº±±¸Ä«®É®§¢
¢º¦§¥¤£ iPMRVZZW]^bgc_YWWWXXXYZYXYXYZZZYXXVWWUSRNLKHGb\MORNKHFHNQQMPRTVXZ`moiztPB@}
x`JQnx|~n~wuvxpQ{~xvgw
~¤£§©¥£±«¡¤¤¦ª¡©¢¦¨ske][HQQSMIUMSILLPIGFKNLMTKQQOFIC<769:8:;;8:;8>?99>=7;<6;;478;6775344696/3/.115221/,')+*,4833979:99::::?9v¶¢¦¡®¡§¨¥¦§¯¬ª¶¼¶¸¶³Â¼·¨»É¹·©ª·¸¶Àª¢±¡eMLNNOLMQW[\ZXZUUVVVWYYXXYXXYYYZXXVVWUSPMJE@@kssIMKDDDINOhYNQSTUZntw~ji]Ut{
{uxsnupty}ªyzhv{prmxxz{vrqxguzz¨ ©¥¨¤ ¤qf`\\JVOQGKXROJMMSJJJMPHLQLRTMEHA<78;99>=:;<98@?::>=7==79937795675252572/2.,./200/-+(().1262198798776:<<7v®£¡´©¯©¥¬«°±ª½´²¼¸¶»µ³ ¸»³««¬µ³¥¤fJIJIGFHHPTTTWWSTUUUVWWWXXXXXYXYYWWUVUSPKF>93N<~MHJD@=ADj~LOQRSV^u}ygw}gyvx|r{vzok~|s{}tfv|
logs|lyq}pmurhq}pCwwz}zt~£¢¥umkeaYWXTQJSVTOPOQWKNKOOJQOIOOKFD<;79;::?=9<:99??;8<=7<9999266856633621224.,,-..-0-+*''*.1362/876966527995y¦ ¦°¬®«§©°¯±¬¼¸¬»¾¹´®©±¨§¬§¤}{z~~eJGHFB@CDILLMQRPQSUTTUVWWWXWYYYYYYYVVTSQKD78f70?¨iNHC=;:D
zZJNPQTX^eprm§ªÀ~uyb{wo|yy|
omxsxjjr}Inhw~licly
ksl|nr{
imp~s
z}~zvott
ywp|}lhmnmWUWTRQYOSUUTYVMNHNKNNKCINGE?:89;99:><9<;::=>:8:<9?868727565541442/024*+**-.+-*(*(',-1250,5567485HA895w¤°¢ª¨µ¯®¬´¿«¼Â¿¦£¥
¢¤v}|x~t}wtw|fOEGD@<>>AFGGKKKMPRRRTTTTVVWWXYZYYZWVTSPLE1@3 jrAo;<95<_IMOORWZRY\`§bitze~omzutlss|jkLyg1vsl~}tfet~
filukp{gpp{n{s}}qpnum~wytjyyuiingcWQYWXY\NPVWZYOIIEJJHGBAFDCG=998;9:9<:9;:::@<9:<98>787715244533645031.**+*,,++)(+'),,226-+5775478iO8;5n¤¨®²¦º®«²°Â²»ÃÇz
swvwuxvoxsiUFID?<;9:?@ADDEGJLOQQQQRSTUVVXZZYXVUTSPKE80/\`³G9XP;9441ºHLMOPQVLAIQIb¯³ q|xm}lq
yyqsxsu5q¨¡¡¢vp{{shfbimqmouioXuovl{|mrnpzsumbvvy~}xpnnj^Z[][YXa`SO\[YXLHJFJG?CABG>CD=;97=;:;;9:99;:?<88=:8;66651121353475531./,,+)*))***)(*)+/3DM2166643<vR7=7b¤§¯¥´¨°®Á³ºÁÆ}nw
ny{{q{t|ko^JPG>@7458;;<=>@BEILLLMNPQRUUVWXYXVUTSPLE<5*K[@-gI94/>©®_HLMNPL7CMRSDJv||v~lw|}
~u¡y~
aªzv~s{\dqtz{wmgiayn
znwszqsywkni]w}|}q
|uw{|tmqrde^ZZ]S[g^XQVY]WGKKELG?F@DC>AA=;97<;;=<::99;;=>79>9986754244104646654-,)+('''&(())((+++/00Uq<23331E~W4=9\w¦ ª°©¯À±»Åºzvk~
yt¢
s}lylSXLAE311267688:<?BEGFGJKMOPQSTUWVVVTSPMF@:2= #c[5311i?GoIFILMORLKT]YRJi{y|r|z|~w¡¥¬©H¯¯¨sl|}hggx~m
q
Gkxqyvhmk_w}
z{uv|xmow~}qqpjZ\[ZccWgf]VPQXZQDLLGOIDFCCA@CA=978:::;;:888::?>6;>7595773344236656768;DFLMMLC7+"%'+)++,/00+nu22420L\5=<^t|~
¬ §¹¯³½´}tq~}¥yu
y_cVLC60./23123668:=??BEGHJLNQSTUTTVUSQOGC?80,#[>?84.]ps£UFIKMNPW`YpZ\^j
~
¥»±§»È硤{r~v
ihotqv{v
}nvug¢«£{{zogky~w{pic\YY\i]ag`[PMNYSRIQKDNGCKDB@DDA<:87=<:<:88778:==8<=68756623445576867<BB?<8:>CQ^e\G2'&,,--.1(?[.310O_4?;nvpgx{¤¡¬¦«¯°¡xw}
mpj^CA4--////02234779;=?BDHJOQRSRSSTRPOHDB<87/9C><<63.lMQIIKLKNV`cggmu ¡£©¤£¬¨¶¢§Á®ǯxº|¡¡
louwql
r¡¥¶©¢
~kjk}~}q_[b^Yfj\ll_YLHPSQNNMGIQDDNFACEGB>:97=<:;:987767;:6=:785456345566668556310.*,,)().:Pa\@,(-++0,'r7240Ob3@<unhYppuqv~§ ªhf¤~
z}
xxhNR>//.,/.-/000212457;?CFNPRTPQQSQNPIEE>;<:CF?><752<@R5HHHLLMNR^o|s} §¦¢¡¢¨©«¨¬©ªµ«¾«¶ÈÉ·ÈÑϾ piª¨
§¡wz~¡{v«³ }¤£§¶°¨lss||ynf^[__agc`gg]REKKQOJJMGGMCHMFFCBGDA:85<<899975658>75=84745754546958:616863/0.-*,/.-'#*;XbB(*,1-(K^063Q
f3A@ib_Pqu`n}aw}|ªªBD}y|
w_bP460-1/,.00./..0015>AAMQRSPRTUSNSLEE@<>=FH@A@8662<9<FHGIJNOQYmw£§ªµ½¸¥®¬¬¨©´¬°·²²»±³¾³Ã¬»É˸ÿ·¥£°²¬¬ª£
¥¦ ¢¦¢ª§¤
£ ª¡¤©°¤§¸»¡£°££¤¢¬°³µ£¦«z{~{e^fZc`]bc^fg`[PDJHTOFHLGKHFGHAKFCFFA:87=<88:974658<54<76:54644739<38<202551/1.-**/,-*(*&%5XX/,0,,0871P
h5AC[XTLicWjpXz
v
ÚÈsV}{
qna@E64<3/110-,+-1/-4?DANVQRSUUWUM\QGGD<>>FHCD@8;<5C;=FKJGHROPW ®£³ª²ÁÇÄ«³Å¶³À³¸¾¶¿µÁ¶»»¤¸Æ©¶ÉǶ¾¹´¨£´°°§¯ª¤w¤¡«±²©¨®µ»²º¬¯µ¢±¬²µ¼¸µ®µ §¨£¨©°®³º·¹¨¸ª¥ zrX_bUd``a__f`\UJDELVRIJKEKHEA@@KDBMF<867;<97:986555711<8895466597>=3891.0121130,*,.,+++*('*)EZ00*/+hO60Rj6AEWQJL\ZQcdWzuq}v~{¿»£¼´z
zyo]W@EN<6:46AB764//7CHCQ\OQUXU\WO_UIKJA@>GKFFD;>@7D7?BJKEFWTP^¤¤²´Ã¶¸ÁÌÊ·¼Ä½³´Â¸¸Âµ¿°¸t±´¦ºÅ¤°Æ¹±³²´¨¤¶¶ª° ¢¢¥±¥¬§¤ ¬³¹¡¨±¹µ»¾Ì¿ÅŽ¼³Â¸º¸¿¸»¸º±¦±ª®¾±½¼Â»©®«~yhUa_VhcieV[dZWUJHGMRHDIKAID>?BBL@@MD99669:?6:9966246/19599364627;=?6:1./58::650*(,---,,*((++(ES/*00Jk52Pm6?FRLALRWTYVZwjpo{rxb¹¡£{z||}xzufP\dGEL:Qd`[^SF?;HPE[cQQYYZgZS`aMSOEA?IJHEFA@C<D6B?HGJLTZT^¯¸µ»¹ÉÀ»½Êͼ½Á¼¸¶¼¼·¾µº²Æ`u²¥±«¾ª¥¨«ª¤¢³µ «§®¥§§¥£¢§°³§²²¼¶Á½ÓÉÉÓÆÂÅÌÂÊÃÁ¾¾¿¼½¸µ°¹··ÃºÆ¾Äɱº«¢¬¦©·|o\^^\U`]hfSYbWSWJFFNKA>HD=KB=B@=F>;H@796379>489:57045/26389374526?8@>GKRTTRPPQRQJA9/,,,*+((,-+/P>(.48}<2Kq9>CKE@JMPRLQ]hmlqslrrsÕÀ¶ }y{{yt}zlfpvY]\Peeb`ed][XX\NdmURmn_o_XgeUYTJDBKKHFHHHHBI9D@HKTTV]Z[¹À¹¾¸ÆÁ»¹ÊË»·º¶¸¹´¸µµ®··du©p^¢¡¢¤«¥¨¦£¬¤ª°¬·°¼¸ÔÐÎÖÏÉËÑÌÏÎÊÇÀÀÂʾÁ½ÁÁÅÄÆÊÀÉÏ´¤¼±µ°¬¹½}wi[\YW[_XabQ\aTRLDBFHF<@F>BIB@D=:E>=J?47535;=468977022/24169775555D3ELM>510006:477@IOJ;.&**(-./,@M+/54mI0Ht?>BD@CDGKODR\Zi`pnlotu³¬¡¡
|s{
{tt{ylmu|iseilhfjih`fiimZnt¤½g[oh]ZYTHKOPJKPLSQHLAJFKP__bgjb¸Ç°º´»¾¶±ÅǶ°¹±±»³²¨¬¸¶¨§N §¥¡¦¬¯¨¯§³³ÔÔÔÖÑËÏÓÔÎÓÏÌÅÂÊпÊÉËÉÒÈÍÎÃÐÒ¸°Ä½Äº¦·»Å¢~laYZ[V^VYdZP]XORCCIFDJ;AD>BH?@B8;D>@I=56655;:687654/10146278875367C5B8?-0,1348=97,.,1;FL=),(.0007K?-46TW0DwC;B>EBACJM?UYSfWshrpyy¡ª¦}|
p{r~qyulqxr{nxslipmcinpyix}~Ë¿Ãߧncxnd[a`KPRUNY^P]]MQNTQUT\nnwr®¸¬µ¨°¶«½Á²«µ¦¥¹§¬¯¢¬´¤±®
§«¬¤§¢¬¬ÎÒÕÑÍËÒÓÓÐÔÑÎÈÃÔÑÈÎÒÓÓÖÍÒÑÅÒÖÆÁÏÈÈ鿸ÐvkbZ_[U^Q\ZPPUQOI>AGBCF=AB?FE>@?:==<<JA45465<888664412/03526768533;=<E=@11+/349?5901022-2EO3)/3.32=N248C}_2AtD:==I>@CFH<VRMO[uwlwp}~ ¡
y
{r~z
v
owsls||w|sxqkrriprzyr{¾Ë²vr
wiai]DZZ[WfdXekTX]]ac^cx{ª¤¤¢ ¡©¦ª²º«¦´£¢®¢¤®£§² ¦k£~
§¯¡ ¥¤¨ÈÍÏÇÂËÐÓÑÔÒÎÓÍÆÖÓÍÔØÖÖØÕ×ÕÊÕÚÍÊØÖÑËÄÃÌok_]\VRWR[PJHJJK@;:<ECE=CD>HC?CB;<9<:GB46544<5687543250/2546745544<>=E?A62/-16;=081/254/-.;R017/532ED28>nb5=tM99@I<AD?A;PLFKYqv~isyr
xys{}w{oxqnuvx}t|ylvun}vuy|¶<AÆ¥~}jeWICecfchjdoy[_fhknin £¤§³¥¤² ¢¥¢©¢£²~
zª£}ª³§¦½ÃŸ¶ÅÍÑÐÒÐËÒËÉÔÎÑÕÚ××ØÔÙØÍØÛÎÉÚÚÒÖ¿ÌÍ´tsjaYVPSPXUEGKJFF>:7:@BC:GE@EDBDA;?;;7DC75655;0689443341014558744449@>DBC<33.6FTWOQJAJF?2*(.BT29254/7K75<`bA<svV87AH:?B><9QECJTlnopbqqt}
}x
{
yq{{
uz
zp}ppzr{rnzuw}}u}°tYªÂ·pnc=^hrqqpnwwfioruyrz « ¡¬¢ ¦ ¬
}
~lz{®«¦®µ¼¨½ÆËÈÉËËÏÉÃÒÊÔ×Ø×Ø×ÔÛ×ÓÙÛÖÏÛÚÒÖÉÕÌtwedXWNQR\GCFII?B>=8:>@;>I=@BABEA>?:87DB755479.566435532323647553458EBDCEB56<FNSM[nfcnsk`V>,5LG865433BF4=W_hLux^8;?F<<A<:9D>CGRk_mdbflvqy~
|}wyo{{tz¡vvtu~too
u}
zw|¸Æ¥ÃʸxpfNeczw
¡yyw{|vm¦ £¬
{| ¼ ¨¦¥§µ¿¿¿¸ÇÉÍÎÄÍÊÑÕÕÔÙÕ×ÛÔ×ÙÚÛ×ÛÚÙØÎÛÆuucea]RUUTMKDND;==<9:<?9>A6>?@=?>=9867CA6455=80665547745613854564557HH=DJE7925;H>;9;7IP\ZRUXL9T>;95327I8=NYMHxxd5=>C=<@:6:>>@EQ_Yfa]\itzylwvz|~~{~
z
|v~um}}~t |~x~yot~
|~{©Ã ½¤~
}ss¦
{iGp¡¤
¡~¦
¤
·¡¦ £®¶¹´«ÀÆÊÐÇÇÌÏÓÒÒØÒÕ×À×ØÙÛØÚÚÙÙ×ܶttsffbT]YRONHDLC>=>99;:::<=6A>?==9:;;37D@8378>70688357<37804976755546FP5DNI8938AK=;3C@I<:DWO<MTHN?96333>C;[X>5YypZ<<A<=>8589?=DRSRX^VXfmmmiqsx{{||{}|~uzsztm~
~w¡n©
{¡}
£¢¤¯
Wr«[¢££
¤²¡ §²¸¬¥½ÂÇÍÇÆÏËÏÌÎÖÐÑÔÖÕØÚØÚÚ×ÖÙÙkxpccYYUQUWC@ID???:48:;7:<;4<<?=>7;::1:G=:27=@50677255?65;55858:57735HR7GOK994=EJB>1FCLB98:GX@5HWI66223:ECeX?&_yi_z>>9<;88;<@;BQKKSYPTcbymb~onxyz{}||w
sp
{uwvt
}¦¢¦¢¨r³¨
£ ¢©°o·ÄȲ¢¦²d¤ÍÇ
«¤£
¤¨¡¢²´¥£½Á¾ÇÅÅÈÈÉÂÊÒÍÍÔ¨ÒÑÖÖÖØÚÔÓÚÎnzd_[Z[LHTZBBHD;B>837<<:9>64::<:72?:929I:>67BC32:96264>=4;>6949;57944KQ<JQK9A7BGI@64JELF>;88ETA7>\86214:;E`XAFathLcZ>5;::5;:=:EMFHSWSRBcGv}|m~y{~{ww|mn{}xx|~¢³§£ª³¢§ ¥¤®¢¸³¢¡¥°£¤§©¬¯¤¡À£É¸«£¦®²
¨¢
u³¥¡~ ±®¢¤¸¾´ÅÇĽÃÃÀÆÍÊÉÒ¦ÎÍÔÒÐÖØÓÐعnuqY]R]UNGINEACE5>;77:?<<7=43669774>5;5<K<>;<BA75<;4277?@6?@784987;<55OMDPRL8@=EAGA5:JENED:6A@BS>9DO323575=v\<R\tiZM]S<=88467=:JFDGNZ\YJf`;Izzn
z}x~px}~}osz~|x¦»¬¨±½¯¥³³©¤¢°¬µ£¹¦¥ª¸§¤£ ©ª¤®°ª »»®Ê¡j·¸«°£¬¾£^ª²|}´«¡¡ ¥®¨¡¤´¸¬ÂÈŵº½¼ÅÇÈÂÑ ÆÊÍÍÅ×ÖÑËÔlvdYWP[PNEC?=CBB8@885?G=<6<35345454B49:BL:B;AHC;:@<746<B9?@B874::6><47TKCUQJ7<:IAD@4AJHNBA?6DA<JND/T=254:EJ\XJZQmgppDi`KI6757:>J@CIPdHb`bpI@~s}un}}}pww|ªÂÀ¯½Æ»³´À½µ«³¶¨²®½«»¥¨¹¹«§¦¢¢¤£ª¯²±ª¤£¦¥£º¯©¿¼®²¹¥¥¨~½°z¨±¬ £¬ ¦¥¤¢£°²¦ÁÆð°»·ÅÃÿͦÇÄÇĽÖÑÍÅÊ
oo^YW\YLJBKAFH?A@C;:5>A>>5<7=333241A17@BM>G@CNCA=C=;86CC5BIB:878:5B>79VKDWOF8=4K@C>4EKHN>BA6BB?BSE58P145;<8;D>9Ljj];WRdKgZUN79GD?CF\eF`igZ]]{uo~{q~zz§³ÆÉ¿ÁÌÂùǽ»¯«º»³·º²À®¦À¤«°»½ª®«££§«®µ°© ª¡°µ§£»º¶Á¼¬©´¥¥©
ªÄäz¡¦ ¯«¡¡³ ¤¥£¦¦¤¯¥ÀÄ¶Éý¶Ï²Ä¿Ä¼³ÑÊÈ´puiYUYgPKHCMKLJAB>DE<5AE<;3=9B332263A05IEN>I@HR@H>C@;>=FA5AU@;998<7E>8>VJCWOG8?4L@B;5JKCL?B?<BF=AHL9+G<367464A?7OaOaE/=>6klj`@:H>?EBeZMe\eTbjyr{xy¡¨º½ÇÈÉÁÒÉÊÂͽ³¼¾§ºÀ½»Ä·¬Á©¬³¼¿ª°ª¤¥¤¬®³¶µ ¯¥¢£´½©©½Â£¶·¯¬²¬¬ª¦¥¥uy
££ª¥|£ ¢µ¥¤£¡¥¥¤£©§¢²¬¨»Àį¥³·Ì¿¹¯Ä³»¾Â¹ÂÃÂÀhu^VTXXIJLIFDDIDCBDL:4DI:;4=8E.12242B26SHO<JBJQEKCDE:ELB<7EV=;=89?<I?:EUIAWQG7A:K:B79JMBI@C><DG<BCO=20H366170=B:=jjJK5QS3SppdN;D=@F>iH_XaZccV x
¡§¤Â½ÇÃÇÅÓÎÎÍ˼¸°º¼´½Ë»Ã¶¶¼³¿¹½®¯¨ ©¨¶®©²·¢§¡«·¸ª¥¯¿Å±½º³¨«·´¯¯¥¬¨ ²Å§||©¥¡£¢Z¤e¢²¥¡ª«©¦¦ £¨¥¶«©¹»Ã´¥´¶ËÀ¸ª¶«²»¸®¨¸º½·gjWTRSMEJRMK?BHEEIHG96FM;>7>AJ.32025C55OVN<LFKRLOHGI>IQ?:8IS;;?79>DLB@HSK@WPF:A?G6A7;HMCE;C>4FE:BABG9/:A3603>GD94=tdMG;E+:f|gV;>@BFBpEjIReaLF¥¢©¦¢¯¾¯¡Æ¼ÄÄÆÆÎÎÎÒÊ¿»¶²»»»¾ÏµÄ¾¹¹·³±µ³¸³«§«¬¹ª¨§¯¯¤¯¤§¤¥µÀ°¬¬´¿Ã¹Àº´¨º·¹´°¥¯®¤¡tÂ}°¥£ © `J¥T¯¯£®ª¤ ¥§¢´¨ª³»»»«°²È¿¸¦¬«²²£¡²²´¤mjbYWMOJDOPPR;HKIHJCD>:KU?A:=EM07544:B44MWO;JKOUNQJPHHJOB<>MR;>=8:<CR>DHRIBWNI@BAF3>58JKCA=C;5EA:A?>H@5+C52,>c]g:35tde@R7}hW;:BC@=QEWSsbWFHª ¢¨¯¨
£¤´Éµ©Å¹ÂÄÈÊÉÈÌÍÇ¿»³®¹¹ÁÁ̵Ⱥ¹µº°¯¯³µ¦£ª´µª©¦¬¥®¥¤¨¬º¿¨¬¶·¿ÂÀ¾¹³³Å³º¾¤¯µ¬¹¦¦v¿®¡ ¨¨ª¡§nv¢¢®²£«§©ª¬£¢¤§¢±¦©«¹¶½²²®¾¹¶ £§¨¥¦©©_b^]OJKFGMJVM=NFOKMBDD<QV=AABDO18=76?B75UXO?HNQYSPQUKQJJEAEMQ??=8=;GR<EDQBGYMKAHDE::39KIB>CB99C><@>;;G7-2>-1hNz\/0kh`<=BB86zfW;:=.-R`MUH~e^HE«¡»¯ ««¡£¬£¤¶Æ¾´À¹ÂÂÇÉÅÂÍȾ¹²¯ºµÁÂɵƲ¼µºª¨°¢£ª´»¦©¦«ª©¯§£ª«½»¨¬½µ¸¾Ç¼·¶¹Â³¿Áµª¶·¬¾¥£¢ ½¡·©¥¢¡¨¤³ ¦¨ª¤¡¢ ´¯¥¥¯ªª©¢¢¨©¤¡¡³´º´¨¶²²£¥ª¡u\Y]\HGEFLPINEGHCSLJBEGAWSCH=AGQ1;B7:BF79\YKALPTUSMWRNUJE@JJNO9D@5=<NQC??P?EZMJAKDG@53=IG?=EA97A;<@<<3@</(;*HB:SJ0,[oW71<*BdT49-19f\FCCpbGE§£Ã¥ªª§¦¬¢«¶Äü¾¶ÁÂÀÇÿÌÅ»½¹²°¹³¿Âǵ¿°¼·¹¶¥¤«« ¡ªªÄ¢¤©«¥¬¯«¢©©¾·§¿²¹·Ç¶µ¹¹À³Àø¶³´°½££®¢£¥££ ½¥©©«¡¥½¢£¢©¬¡¤ µ¬¦°¦®¥¨ ¥¤«±µ±ª¥ª¬ ¨e_W_\MHGINLHFDIB>QIA<GII\ROK=IOU5BF9>GG5CaZKBNRUWVQXTRUI@8RQPM:GA4CHQSIC;C>GVKC@O>K<06;GF>;FA55?9:?9;15D0-,/Mv\4KZ5,MnW<-=)#zbQ5CKQ9mQF<KxeaVK¢£Å¬¡¬® £¥ ¦©¬¶±£ª³¶ÅĽ¿µÀ»ÈÁ¾ÉǶ¸µ´±³´·ÁŶ¾±¸µ¸´¦¬ª¬¥¤Á¥©¤ª¯¢¦¨¼µ¦±½¹·¶Ä²´¸»À´Å¹¹¯³µµ£¥¡®¢©¨¬£Â¬©¬®¥ ½¡¤««¬¦¡W¥¡ ¸ª¦´¢°¡£¥±«©¡¢¥¤¤^aXb_KHJJNFEAGK?>KB:9JKN]QQI=LW\9FI=DMH8Hb[KCLPSYYVWOZ^IA=WQJL?H?5HLXSHA:@ADPH?>Q>K7099FE;8G?.6>78>77/1?91%1QUm[JO10=gWD17=-+w`S6S[kWqGE6=ue\KM¡Ä¨¦¡´¢³¨«¥ ¤©¬»°¨¬¶±ÇÅÁ²ÃýÆüÄɼ¯°¶°´¯¾Ã´¹²°º´¬¨±©ª¥¡§Á¬°ª£®±©¤¨¼¶§·»¾°·Ä³³ÃÀ´È´¼¸¬´¶ª¢¦£¬¡ §«°¯¯»±¦ ©¨¢£¸ ¡£°°¬¥¦¢¢§´§¦²¢« ¥«¯¥¦¡
~_dYfeIHLISAC@IH;;G?99ONV^RSJ?P^]=HPBLLI9Nc\LELRTY[SUO\bHA?ZQAHAKB7FELKM?;BHDNB=;N@A3/97CB97F;+6<46<25-/4@1+&VtSeO?104b[M23>0<v]^?[T]ep@8;HweA4£ 餪³¢¤µª³§¢¤²¬®©»²±µ´ÆÀÄ´ÀĽÉĵ¿ÇÁ´«µ¨¯¸¬¿Ã³¸¯¶¹¥ª²««¦»´¨° ´²§«¹²¨º´¹³¹Àª·²Ä¾¶Ç¨À¯®·µ©§¬¡¦¥¢¢¥¯¸®²µ¶ ©¤¤ ·¢¥¥°²²§«¦¢¨ ¡¯²¢¦¤ª¢
¨¨ª¢¦
wag[jiLOMNT=CANC;:I@77RO]^RVQAW`\BJSHVKH:Td\NFON[W[RPQX]GAB[PBG>NC9HGHOP??CIBLB<2IA94177B>;7E7+6914801-/.<6-#Bqgsk23/1[bZ23806p[bH04IogUCWFyfC;££¡¦À§¨¯±¢ªµ«º±¬¤«´¶±°¹·°·¸¸Å½Ãǽ½ÄÂÅ¿¸ÀÅÀ¹©¶¤¬»ÀÁ··ª±º¡±²¤§ª¹ª¦±« ¯´³«©µ¶¼´³¹·¬¸±Ã»ÀÀ§Ä«±·¯©««§«¡¢¡¡±¯³¬°¹©§ ¶©¦£¢±±´¬³¨ ¥¢£³¯¤§¡¨¨¦¢
}hfk`lmWPQ[UABET@<;IA8:XPd^PWWEY_^NMRN^KJ>Yc^OHPO\UYPKTWZI?DXPDF?N@=IGGQPB=DEBM?:1D?77547?=95E4+75/251--.,1=*'+=\p=>1.0dZc?1647gY`F(?8l}g[V;{cC>§¢ª½¢ª°¬¤²¹ª¦¶µ¬¡µ½¯³¸»»¾·¶À¿ÉĹÄÿ¿·Ã¼À¶®µ¦«·±»½¾´©®±¶«®§®¦¨§»¤¬³¬¢±°³¬©µ´µ½®±²µ¬°´³Á»Æ·¬½°±¸¬ª£²¦¥ª ¤³ª³««³§¡¦¤´®¨¡®®±¨´³ª¤¨¤¢¨µ©©¦¥£
zdjqfoq^FYgVDCMWD[9HC6>]Qh\NZ]G[^^ONRXdJJB\b_QLMOXWXPJVVWL=EUJEDAM@AFHHQPA;GDFK=87B=68719><65D0+80/05/*,/-*=,,%2+*5K1/'_^_T150=`V^8*C3YU\gK6zfL@¤¡¥·¤¬ª¦¯®·ª¯¶¼¨§±·Æ·±¶½ÁõµºÄ¾ÌƹÃÀ¹¾¹Ã·À¸±³«©º¶º¹¾´©°µ§¬©¬«««¾«±£« ±³®µ²¸¸ª®¯±¨µ¯µ»¼Ê³ª·¶±´¯®¦¡´ © ¦²£®¡¦¯¡¤£¦¨³ª¢§³«¶¥¯²¶¯£¬§«·¢ ©¤¡¢ z
zjmwlt{aFakYIGZZ={JFD6AbTi[M\bK\][RSRb`LKE_`_QLIPWVUOGWVUN:IVIH?CK?EDHHQNA?HHHE<7=>:75609?866B,-8,/04,(,/-*76((9.$:K5."U_T_/5(C_Q\.*A/JGP[G3cYUKD¡²©²ª¦¤¯®¶ª¸¶º¥¬´·Ê»´»º¿¿µ³·ÃÀÌȼü¶½¿¿·¾»°»¦¹¹¶µÂ¶ª°·§®«©£°©¯º¤¬±³§¨£²´±²°´±·³©¯¬²§·¯·´ÄÆ·©¶·¬±©§£¶ ¨²¡¥²¨ ª©£¦¦¥¸¨£²µ¬¨²¨®²¶«¤ «¨©¸¡¤§¤v{lovt{~\Lfm[KNc\>b{GI8GgWf\L^cMYYWUXTi]OOH`\^PJHQVURKHWUVM8MZNE@FK?HBCKSM??LOH@;:>;6;041<=458?)07)1.2)),,-+-9$042%9B7.#ANGe27'GbLV%,A.=ELQ<3rkICC¥¯¥®¯«¨¥±³´«¸²¸¡¬µ¹É¹®Á»Ã¸³±µÂÂÎÅÀÁ½´½¿¾º¾¼²Ã§¨¸°µµ¿¼®«²± §±¦¦¯¥²µª±±¬©¨µ»´²´³ª¬¨¬©¸²°ÈÁ¹¥º±©¥¨®±¦¥¤¯¤©°££££¤ ¢«¦§º¥¬¶¶¦«¬©±¶®££¨ª £³¡§ w}
|{|prq}||\Sdo]NXe\FD[G;NmXb\M`bNVWVWTXg]QRLcYZTKGOTSNGIVS\N;P^IBDHJAE??KSO>:NMC<<>9:5=+32=6249:(45)/+1()+,-*&5*/&0)38:1&*3Bc:6*HeHJ*:G>3BHS,>k;GHª¬£ª±¤©¥´µ²µ¶²²¢¬®½Ìº®ÀºÇ±´´ÂÃÑÅƾÀ²¾À»¾·»Ä¦«¶«²¶¼À¯«±¬£§©©¥°£ª²ª¯¬°¯°®¬´½§¶°²©²©«¥¥£ºª²Ãº¶»©©¨¬©§±¥ª¥£¯ª¨¢£¥¬¢§©¢¦¤®¬¸³²¢ª£ «¯±¬¦§©¤¦
¤~~
|v~
rqptl_Z`maQrp\K<
|F?XtXaZNd\NVVUWQ\a^SONgXVVKGLNRHEIVR]c<P]D<FHHBG?=JPL:>OJ=9?=2:7;*25>10485(5/*,.30;),,'%234$,2-860)(1;\J0.JgEF6;B/4EKX2@Y=LE©¢«³ªª±·¹·¯¬¦««½É¼°½¶Â¯±«³ÃÃÎÏÿ¿´ÀÁù¿³Çꮶ²¸¿¾±¬«¤§ª°¨¨©±¥´®ª±®®²±´®µ½¤·³¬¬®¨« £°·«ªº·¥·¶¤ª§¬«ª¡©§§²²¤§¦¡¡¬ª¡ ¦¥¢ª¤£ §±¸®®¤¦£ª¬ª¢¤£¤
¢£|zs|ru¤xk_`leWdcN?gLEbyWcYReUNVUVTO\]aUKMhVUVIJHIOBGISQYoANX@:JGFEG>>EQH8CKE87C72:::*39?./463)4+*,+.#4.-+&(+79*&6+<-2,&06VY.0JgAA;;B+:JO^4D=GFD°¦£«±«ª®¶¬·³¬¦¬ª©¼ÀÀ·¸²¼µ¦²°ÃÉËÑÀÀ»¹¿¾Á¹Á¹Àì±´±³ºÀ¾²°®¬««¨¶ª§®¯ª¹°¨²²¯³·«¹¸¦´·«¬¤©ª¤³³©¨¤´´ ·® ª¨ª¨«§ «¬©¹¶ªªªª¢ª ª¡ ¥¢¦£ª¨µ¯©¦«£¤¥¨§ª¢££ ~
¡uxt~xv}oqgfow\_rjO^VHnyUeWQcPMVTUPOXZbUHOiTUSGOXUI>IHOQPxLNW=<KD?@A<@CUC9AK=5;E13;:7*4:=+-341*8**+*,))(/*&)%3;,$2)2021%/1Pa02?f=NX?C,>LT_0Ji5OD<±¢¦¬¯¬¦°´µ°¬¦°ª©º¾»¿°¹®¢¶¯ÉÇÈÑÀ¾½»»Á½ºÃ¿¾¿±±±µ¼»Á±°³ª³©¤´©¥®³³¹±£®¸²±³»«»°ª®¶«ªª«£ ¶®©¡°²¡¶ª¨§ª£ª¡¢¨¾°¬®¢¨¨ ¬°¡¢ §¨¨«±ª£ ®¢¡¢¤£§¨¥}£
xu|uxyyrqwf~¤vi_citf|RXp_KxsSdTQ_MMSZfNLVYdXGRhRQ?BNQaQ:IHLSIqQLS;<I?;<=;@@W<<?H73CB15:93-5::)-31--5)(+-,42#2)',%.;.&1.0-14%,0Kg:48_=ad?F1CP[[*HL9U@4³¡¥§¤§¤§µ³²«¥°§ª·½À»¯§¹ª¦®°ÉÇÈÑü¿¾¸½¾¼ÈºÀ·¯¯³±ºº·À²²º¬¸¬¢´§¨³·º³¨¨¾¶¯·¾°¿§¬µ«©¯£¤¬¨ª²¤´¨«§©£¨£©¨©¾¬´°®ª¤ ®³¢¤¤¦ ¥ª¬¦ «¢¢¦¨©
~
~}
¢r{z~|ix|ysnnzfw
daf_qylfx]^T?W{mTbPQYLLNru]HZ[gYEUeOC>JNDCA9HGKS?jaIQ8=H<<<>:<?T6:?C45H>2;59027<5(.5/-11'/>KH0%90%,,09/,,+6'17#-0GiI24X=fbAJ7GS`U*=9CV=*² ¡ª¦¥¢«¥¸³´¦ª±¦¬·Á½µ¯¢¹¬§§°ÂÊÉÌÁ¶½À´·¿ºÈ´Â´²±´±½·¹½µ¸µ¾¬¡³§«¬±¶¸µ¬¿½ª³Á´¼¡¯³µª¬°£¥©ª¤¤°¥° «©§¡©¥©¡¼¨®±®¡«£¤®¦¡¤ ¤«£¥¥ £¥¬{{~
£}yl~vyxc|zpnnpufrjhdf]krl`hp`o=[ylU^NPRKJMTZWM\^lWDW_O^OHMDF;7HEKO<rhKK9AE;;=>;;=J49B<3;G<4?18-68;2(09/,4/.=-*K>)49&'.34.0+/4&,:$41AgY14S=e_DL6KVdO*;1NW=# ¨¤¤ ¨¤¸°¯¤¯¯©«¸Á¹²¹¯«¨´ºÈËȾ¶Â¾¯´½·Ä¶Â±¸±²À´»½·¨¹·½ª£´¨©«²¯º±«½¾¦°Á¶·¢¯¶µ§¦§°³¥¦¨¢¦¬¨©¡ª®¦ ¦¤© ±¹¤±¯¡¬¡¬¤§§¨¥«§¡ª¡©|~}| x
}
|sp~rtt`zxhmnnmg}qc{mid`[d~^YsjrIIiXZMPLKHPRQIO\_nSDXZRgNGKEF56HBLI5ZeJ@6EB9:>=>::C59>:3@F<2@23.:;83&2<0,85B*)-B*,4;NN@;73-.+-7**<%53<ec24M?e]FO=QZgH*=/WT5(§®¡¡¡¥¡·«²¦´´©¨¹Ã´² ¸®°µÆÈÀ¶¾Á¹°´¼·¾»½¯ª½°´¿±½Ã¹©»º·§§µ©¨¬²®´±¨¿¸¦®½¸³ ±·°¨¥§¯±¡¤ ¥¥ ¯¦¡£¨¯¡¡¥¥¢¸°¡¦±«¬£¯ª¥¨¥¨¬¦¢¨¢z~zx
~yzprwppt_ywdkkjgflerjkdgW`r^YkuiXE~^ZXOOKHHRUG29^^mPDWUYeLHJEE07F?KB6IJH;6F949>=<98@8;8:7@I>8<4-3<<75(5>1,;A1(+6<#8R=*113>D5,-'42+;+139cl84HBf[HTCT]hE.:1]Q,2¤£«¦¡£¡¸ª°¡»¸¥¬½Ã²¯®¢µ°¬¯µÅĽ³¾º·°³¹¸º¸º®¿³µ¸¯¿Á¸«½º´¥¢³«©«´®³¤Ã¶§ª¸·¬ ³¼ª§¥¨¯«¢§¤¦¡²¥¤©©¡¦ ¤¹¨¤§¦¥¡¨ ©¡¡ ¡¡£¬££§¤y|
}x
{w|musmmtbxthfifcmfghdfgh]daheZezb`PsT[[SKJHIOS@ *i^jLCVU^`KHGEC.:B<F<6KPD8:D357==895?:;4>8@L=>93)8><:9*6@3.E4(+,>0-O?.+-7-1195,&.5-80576`sB3CDh[KWGU`hB377`L'2¤¥¦§¤¶¨ªº·§¬ÃÀ¶¯¬¢¶®§¯¯·ÀÀ¼±Á·±®²¶µ¹¸µ¬ª¼³¯²±½¿·®¼¼°¥¶¬¦§µª«¯¡¡Å¬ª¨²µ¬´º§©«±¥ª§¥¥¢¤ª¡¡¡§·¥°«¡¡¡¡¦¢ ¦®£§ x
w{
{
s~gyplklguskafcas~adefdhhbenY]X\lcaLgWZ`VIGIKMRX>9`liHBUS\ZIGFEA.<?9A89RF@7:B037=7692:<97:9DM=B<0*<@;A<-5B37=++,/A*JK./*+3722(57$+7.72685\yN2>HiZLZJVbfA:3@aE%5¥¡¯¡ ¥´²£²¾·¡±Å»¹°±£·««®©¹½¼»À²®¯®¶¯³¹²§«¹°¯®´¶»¶¯¹¾¦µ« ¡²¦«° ¦Å¡³¦°²±·´«®¬®¢¨«¦§¦ ¥£©±¥º¨®¢¡¤¥¡ªª§§{t
|
ogyniljgqrkZhcaq`dgjmjdhecl\lluqbSbiceZIGLMOYQPUaeT@VRZTFGFE@/<=7?6<EMa8:?249@37818?7=8>FJ@D92-=A=A=05@9@1-+.3<;K6/.+,-24:5#3*)6.55465Z|]1:Lj[M[KXdc@A1G`A'4£²¡©³°¸À¶ ´Á»½¹±¦¶°©®¥¸¹··»°««·ªµ¹¤³µ±¯©±¶¶±³¶»§© ¶ª«£ª®¬Ä¯§°²¸µ¬«°¯ª¢¤©§¤ª£¥ £¬«©»¦¤ ¡k£q¥v¬©¢x
li~wql}o]dagluxfhvjfX\itnMOibepe]dfnjg\[\hOKD8FTg^JHQPUVKHRapteF[QUPEGFC>1;=6=6<4f\5:<75;D4860:B7?:>FLCB343=@@@=28@E=1,,08>G701.*.*/668,#1'214:286Xl15Ok\N[K[fb>G1N_;+.¤²¡ª®¬£½Å¯©·Â¸¾¼§·±¦«¤¸´²³±¹®©§¬´¦±µ¢§¸¶µ¨§¶³®´®´¢ª´«£¦§©°¿¨¨±µ¹¤¨¬ª«¥¡¡¨¨¢¦¦§¨¨«¤µ°£¢££¡¡¢¥¨rx uif~sx o~|¡ |tvknied{mrbTmdmiqXiomV]hZkiYpkyrhY^FN>F^MFSVVQPRWTg^MZLRRPEFG><49=9<7;0<<799:6=F5860<B;<9=FQG=.5<;@=@>59GA82*/1<I:/01.*/(-4583%&2115>1<8Xt15Rk[O[L[g_=K1T]7/(§«ª¨ª¾Ã®²¹¼·Á¿ª¤·±ª¬¦³µ¯¯³·«©¥²¥¶´¬µ¶µ¥¦©³²²¨¯ª¡²© ¤¥¢¥±¸¦¨¨·¾¦¦©©¬§¥¡¡¨¤§£¤¥ª¢¤¦§¡·¥££®ª¤±¥¯ ¡zÔ¨ÀÆxw±¥·dÀ¿yy|Êq¼Å{r¶§º{l±«±yilX±®ofj¼¼ngymqØ}Rjb¶²|~pu¡ªVNWaOVMFV\XPPS\W[PA\DPNDFI<<57=;:9:.=;878;9>F6:74>@>69?ERI:.5>;B<?A8:J>52*22AE/.32.+/)-/186- /416A1=:Ww11Tk\O[M]g\>L1YZ41!§¨ª¥²ª°Â½²µÀµ·¿Â«¦´®©¨¯´ª°¶´¨¨¦¶¦¨¹¯²²¶ª¥¤§²¯®±§«§¥²¥¢¢ ¢¡²¯¤¡µº£ª¨ ¬¤¡£© © ¨¨§¢§£¡°££
¯kjªh
fr ©q®¡¤wº|k v±_j´[¥e`fzfixkªe¾sg¦v±j|±xucmm§n\ EigEu_}f{£¦X^«g|w{j¨8J¯[XTlcZKOY`\VV;NPWV0ISSJCEF=?46?;8:90=8999:=<D8;:6=A@6<@HQG907<AC>@D8@G=13-33E3/.53/+/(.0.:6/'$203B/=;Uv2-Vj\OYL_gY:N5]W31£§¥£¥«²¸´½¾°·Å²¸ºÃ§©°¬°©ª±¯¤±»±¥¥¯³£ª¹©³³±£¤ ª°¬¯§¨ ££±¤°©£ µ³¡«¡¬¬ £©¥ ¡§¤¢¡ ¬¦¦ ¡µµy©¶x´·¬k¦{
w«gj±[¬{tpx
°vwrkkm|O¥XHdd~ch¦_xqtR]O©mboz
a/S¢n[Tkg`LK]dX\ZB>°wWXA#MiEBDA@A19>88:84;:9<9:A:E::;6:CB8=?KNH:5:AFBAAD<FD;0201;E,0.940,.(/3,>831/2-D1<<S}n3+Xj\OXM_fW7K9`T50 ´§§¡©¨³¬ª»·Â°¼Â¹¶Â«¯¯¨¯³ª¢°¼«¢¨¶£¬µ¤¥³´¨£¢¨ª²¨°¨¦ ° ¡±¥¥©¶¯¡¨©§© ¦©¤ £¥££«¦¢ Õ¹q±ÂÆ}Ö»}¨¤{¡¥y«yV¯{~j¹Z¹w}¦|{©y{±mu¼oP¯§ÅQ zc`ªasrk^Rµ´È
~|c¤4Cu]QihdP@XgYcaJHMjJZSOYfZCD?E?0<<59;74<<8=:<C:F:;>6:@C;6@OLH<:<DHCBCD<EF81211DB.00483+-).323971#%5*>3==Qwj6*Yi[J[P_fT7H:aP72%£²¨©¥³ª¥µ¨¤¼¸Á°ºÀ²·´½´¶§²±¤²´§ ¯¶©©»®£±²¡²´±¡¤¨©°©´©¦¬£® ©®±©£¬¢§¡§¡¢¢£¡¢¢¨ §¡§¡²nhµr¬p§r´vt¶{¦£~£}°uÒÒu\®|
¤nª¦k
}}{±sy³et
nfRÉZÂ\yb__vsa]YÊo¿~rMKµSUÆdUQjceXAOk_lhPUFH9=WR[WXHB?J<2?;5=<56>;7><=C;G9;@7;>D;.CRJG>?<IJFCED>II:1746@>/.24252-).26,742&60;5:=Pqh9'Wi\BMT_eP5G=aM62.£¦°¥©»¦´¥§¶»¼³»¾¸¸µ¼¼´¦µµ£³²£ ¬°¥¨»®¥²±´¸ª ¥¡ª¥²¨¬ª¥©¥«¢§«±¦¡¬¥¡¥§ ¦§¢£ ® £¥£
¬|x¨w£ªp
¨£¢~®³\r²S¯}£~q×}w
~w¯w´ael[°WKuyfa^vv
fj]¯vwk5yÈ®³`DUo]g`EPl_pmVUM.echRYQ;AC@L:5?91><16?98@=:C:G;<?:>>E9-EUJE@C:MKJBHG>GK97<46:>/04333.2..18*.32%!04767=Pke>&Vg\@<U_cN6GB`I:77 ¡·±³Á¨²§ª³º·µ¹¾º¸³·¾¶¦¸µ¡¶® ©¬©¶«©²²«´¤© ¨¢µ§¦ª¤¥¡¥¨¨°¥ ¨¢¢©¥¡¦©¤ ¡¢ §©~¦y¡ªp§¡££ªzyp±Z¨ xtØvt¨¤|{²^d }n]«\[hgªcrzjq]«Z kmdOJC¡\[Mt]bfMZa_rt`JU5JXHE=GEAL35A8.;>05A78@<6=<F?:<6?=B7.HVJE@H6KIN@IK@EN::@4.;>102154+*05/7,&21($%6671<OedA&Uf[?0T_bL7FH_C1=7¢¿³Â®«¬¨§µ±¸±µ¾º»³²¹¼ª»¶¡²¥¦¨¨¬±©°«·ª¯¡¢ ¦¥¤¹££¬¡£ ¢¡ª°°¦§¦¤§«¨©¨ ¡¤®£ ¡¡ ¡¬®nr´t©w¦t´zu´§¤¤u¸o{¢kk¶Z¡eh ¢§mr´t³jju´af¢ok]`N¡|Rs£ly~}no\¯V<weTon.[§OcRkeblZb\`q|cSYQ>?lo2BB@>M:!7@6.;@37C58??3;<CDBJFMIF62JTKEBJ6IJP?HOCFP=<E50;;010/75,+,326/#00,,289/9N`eD'UdY>.U^bL5FM^81A8¥º¤±À®««¨·ª¸¯µÀµ½²±»¸¬Â·ª¬¡§¤¢¬«¨¶¤´¨®ª¡¨ ¥«¸£¦£¡ ¬¶°¦¬©¦¥£«³¤ ¨¬°¡¢¡ ©«Ô»u±ÄÄ~Ö¸y§y¢¶u}wvÁ²aºyÀ|u¸bµ©}¬©q{u¼§ ia¦¯¢~u«}¾ns¼t²uxmpm¤t½]w}[ay¼jZV\jz^iacfbnyoX[YCA@q?CG+4H"';?10<?7:B99=C4<@NZ^``___ZPPRKEFJ4HLR@JNEFOB<E84=9020.87-*./180"-1,3,;:08LXaF'TcX</S]`K5<L[-6?9§¢¼£°Ã¯©«±¨¹¯·Ä±»³¯¼°®Â²¦£¥¢«¥ª³¥µ§¤ «§¬¸£®¡¦ £°¹±«£§§¥¤¡¨¬ ©¤²¢¤¦¡¡£° ª
¶¸y¶wnlotoyrÀ»¼{²¨pt¹|{}¤»¹½uy³£tuut°ufj¶tsqw¶^y|gylzb¬pt
~W[§iDdZTf_c]bPgfqnuBMOLD;ZL>J2;0 8>;.3=A99?=;<C6BTYZZ[[Z[^`b`]SGGH4DITAKNGEOF?G<7?7070/9:.,/-*8/%&2(4$(>7/7KT_G'SbW8*O]]=+;VV'=:<¦¡¡¿¦²Â³¬ª¨«ª»¯°Æ¯µ´°¸§µ¹®«¤¢§ ¥®«§¶¨¨¡¤¬¤½§¡ª¢¢¨¢²µ¶¬££¢¦¥«©¥¦¡ª¦¦¢¨¡¬¢°©§¢kjªztv{f{½¾Àºoq
_rjZ^acl`cmvblf^`cqhr|fj~qtx~c\xuhP\n||jXlzqHJo
pNqMDV\faL[Wfc^O[mukrRODDM<HH<L?1,2A?8/5?C<9;@;=C>RVVWYZ[[\]`aaa`\UG5CFTEJOHFPIIH;8=51:.1;:./-76=5&"/*2,%;8-7IR^I'S_V4)P^L(3>\O'?2>¨©¢Á¤³¹¶£¬¦¯¦¨¶²¬È¬°´¶¤¾²³§¡¤ª£¬§®¤¥¶ª¥¢§©¾¨©¥ ¦©¨°²¾«¦§¢©¨¤¬ ££§¬¢©¡®¦ ±¥¢¨¥¦¨¤ho~qw´ª
¡z¤
kj|}urwyvv|jsttcv}vkoxl_b[ogMXYfj_WYozonfSOFR9PZNRO'*;KB635=@A9:C><ENSSTVWXZZ\]`bba_^^[TKCRGKNDGPLOI<:;489,2;820)6IRO8")+/2#4;*7FO[I'R^T10T^:+=8]K,<-@² ³¢¿¢£°±· ª¦³§¥°µªÈ«³§¶¦Á¨µ¡¥¦¥¡¬§¤¤·¬ ¡ª¥Á¬¤££¨¨¨²Â¯ªª©ª¡¡¢¥¯¦¡£§¬¥¡°¡¢§¢¤¤ ¢®|©¨
{
£~e¡³®
w{~xyzofykuyqhsyujsbwe_hecdfjYk{qjj\RKPD_UF@>>,4@F;45;>A;<?>>HNNOPSTVVXZ\_aca_^^]^]XVJKLBIOMRJ;<:786/3964.(&$-1..)+*7%+<(6CMLD/T\Q05M[17E4\G5<,@²¹¯¾«±² ª¦²£¬³°Å°«®¤³¯¼¥µ¡¨£¡©§ª¦¥¦³¶°¦®¾¡¬¢¡©©«£´Ç³©£ª§¨ ¤¬ª®¨¤¢ª¡« ¥°¤©¦ªf
}eczmhjz£«je~g
eeihz¢kh¢wkj£slmzyXe]^lw\htwwoxxrmxsvzhX]jtd]shj|qmc]QMWJdX@I3=F8?FD71<=?AC;;DGHHILNORRTW[^`aa`]]]]]_^ZTODHOKSN=>==6535554*&&%,*%.++'6*$;'/BI[J.6ZO6)EY/DO1YB;?.=¤º¼¹¯«²°«¥¨¯±§®®°½±ª©¥®°± ¡¤¢¦¬¤¦¨ª´®¤£°¦·¹¥®£¢ ¦{¤«¢¨´Ã·¤¡¦®££¤ª© ª¯©©¢©¦¥§ ¬¡¥±¥¬£§ ¬½t´s
hw¹Ä¸q¡£z¦t«}ËÀÀºq£}À½ÁÁ|zÂÀ}j¥²poÊzxwyyp{pxxluae^xd_eb]thmdbXLUIQYHOD2IE?DB>/<?>@A:8DCBCEHIKMNPSVY^_`a_^^^^___^\SMPGUNA??=6468266*&%#)*&.+*)109*#>I[L*#CP/#F[3PY/UAB;/8¡¹Ã´¯¯¿©©£°ª°¯®¦²µ¯ª§§¦±« «£ ª§£¬£¥©¥¥´¤£¦®¬¸´§¯¢¦ ¡ ¦«¤«¿¿° ¨®¨¢¢¤ª¤¡¡¬®¨ª¥¢¢¤£¤©¤¨®ª«®£§£¤Îz{¥z_]¨¡¡|§u«¯^dª{¨
t³c« ³j¯t|¸aY£Ínv{Û{q~ve{uvk}m}~k^pjpg`_xd[qhjce`RTSW^JOC4AHED8>5;@?A;=8@>??BDDFIJLNPROS\___^]]_``_^^[WOUJ=?><5578164('$!',&&/(&+360$7;SL+,-J0';\:L-!P@F4.1¬ÁÀÀ´´°·¤ª©µ«¦²¬¬¬¥¦°ª¡§¦¢¯¡¨§£¦¡±¬¦®±«¨¬ ¥¥¨¤£ª°¨¿Å²§©±¢¡ªª¡®¦©§¦¥¢ ª¬³¥¢«ª¤¨§£²¢©¢¡rv¨q°|q¬} ¥x«~r¬v{|ª¢}«zzVÄ{pÁ}mupmfwenaxnrnlcnsuo`fmd_oijnfcXS\`ZRRC8IH@C<><@FDCEA=<<<>@@ABEFGE@CISWYZ\]^^\^_a_^^][ZRC>;92478452&# 1' 1''45-&7=WJ-=(>1)3V@F!G;C1.+¯ÓÆDz³ £££¢®¯·¯©±§¨ª©®«¬§¢¤£¦« ¢¦ ¨¨£°¬¨§¯¨§©¤¢¡®§£®¬¢¬µ©¹Ì±¬¦«¢®¬¡©±§¨¨ª¦£¡ª®±¢¨«¯¦§¬««³¤¥§
¤k¤uz©u{²q¥q ¤_aR«
®u®¨z{f£¤£}©®^{¨U¢{£|Ä°Ås¯´³¹rb©¯Âthkmlxwwnkfedqqf|ic]V_iXXTLLPLCCAB;C@@BI<=:9:<=>>?A=86;DLPRTVX[^^]\^aa`_^]\][SIB679:664,&$" ''!+-"$.!3-&@DWH,G+66*1PKL# A9D4,'ÁÉÖÖÀ «¨¡¯¢±´°¯©¬£§§«««©¥¦ ¥¦§¦¤¬¢¬¡¤ ¯£ª¤µ°¯¡©§¤¢¨¦°¥¢¨±¬¶Ç±´©«©¡ ¥³¡§ªª¢¬ª¦ ¡©¡²¡©²²¡«ª±°¸¦¦ª}ªmv«y|°n¤Ò¸´¸É²_`©¥ zyªÉt£¨©~ÆÆwe¡¥t }¯_oµc±uK£m§Gdzn|nyt|zm[fjrqgi^aWcm\^YILLJEDBB=A<A?J;79799:;;;3.6<AFILMOQSWZ[[[]^_^_`^\\\\\XMB75785/)(%&%$&),5FNPPMFLJVF*L1/=-4OTQ;<F2,$§¤Àǹ©²®¥£³¹¬«¡¥¨¦«¬©¦ ¦¥«£¯¬¦¡©¥§µ ¤¨«¶³¬¦ ¦§£ ª¦ £§©°³Á±²©¬§¥¢¤¯¦¢¥¥©«¥¤«£¶« ±¸°°¨µµ¶§ª¦¡Nw{£|¤¦¸|}z¹ÍÆöx¢~v¤¤¨~¯
¬}a¥l£q
}r¬`¤sqa¼}RUu¡z{rys
p[lnwsjnZd^gnbd]KKQSAGGFH::K>B108856877-*5==?BDGILNPTWYYZ[\__^]__\ZZZYUSOH@772.,*.+*'&?QTVWWWYXXWUOTF<E2:P[S6?G,- ©«¤«¹«¯ ¡³´¦¡¥¯®®©§¥¥¤§¡³®¢©§³ ©¤£µ££¡©µ¹¤££¢²¦¥ ¢¯¬¤¨¢µ±Ã°©¬©§£¤¥¥£¨¬¡«¢¤®¤º¬¡¶¶®¶´º³¶© ²¤¦ ҵ÷z¦w¢w¡
¥r«´nsj¤}s®¥£¦mp²\¥szl{~n©a¢rs~bs²¸hw£{u{xlhwhxsnt]dcmmfh`JYWW<GF?S3@F><*(63.013)&4:;<=>@CEIKNPRTVWWY]__^^``]Z[ZXURRQF:2230/++(@QRTUTSTVWWXXWUUVUQOQ[U%!2AH#*%r¿¿¼»µ¨¤®¶¢¢£ª¨®©«¥¢¦ µ¦¢©§±¤«£¤¤ª´´¤¥©¯ ¦£§³ ª£µªÂ¯¨ª¨¡¢¡¦£¦£¥©¦« £¬¦¼¬½°£±µ»·©«µ§«|¨}|°x¤¥m±o |¢¨¬¡¨¡£{~««w z¯]£}¦§e|uj®]¥lr]`[ m£xyjl~b}tmy`heoohghBX_Z=JS2S8AAC7$$3+''3, /667436:@CFIKMNQSSSVZ]_a`aaa^][ZWSPONI8152.*,ATVVVUTUUUUTTUTSSVWWXVUUQHFIJ#((¼©Æ÷Á´ ®¹¦££¤ ¯®©£¹ £«¡°ª®¡ª©¥±§ ¨¢¡¥¡¤¨¥¶¨¾®¤©£ ¦¤£¢§ªª ¢§§¼¤Â¬«£¢´»°©£¶²¬®w¯
|ºd°d®}¡§
°¨¤¢£
\lk³`|{²lgn±Z}µ\¤kÈ¢f{»YvµZ²}S¯z¬X¡m¥yw}cs|bwt|ajfonfefOTb[AS]=H(>9=4!!,$1. *1/04579:<ACFHJLNPPRTWZ^`_`ab^_\[XUPMJGC553./@UYXWXWWXWWXWVWWWWXWWXYZZ[\XWWGB;Ò³±·¾»´Â³£§¥·© ²±¨¢µ ³¨ª«°¬¯©£®¬©§£¨®©¡¤£¢¥¢¨±¨»®¤¨|¡ ¨§¬¤£¤¢£¨ºÆ§¦©¡¬¶·®±ª¡¿±°°ª£®¤¸Ãº
¨¬¯©¦«Õ½Âªb¤¿½}£×»¸µ½¾k£p«oz²±Çk«±½¬yx¢¾»t£wyb|ydfx{`kejjbPb[Ri\?S`BL)<:4/$%2 $(0496678;>ADFGJKMNNQTW]a\__a^`[\YTQMHC><A?5=SYYXYYZYZZYXWWXYZZYYXY[[]]\ZVXTWZ»´´²Àº²¾³¢®§¥³§¥¿©¶¯§¡¿¦¦±±¹¨®¯¥§¯¬®¦£¬¡¥ª £¦¦ ¨¢ ¬¬©¸§£{§©¨§¨¦ ¡ªº¨Å£¡°¤¬´µ¬²¬£¿«³²uvª¤¶
epg¬nnw¥¡v²qr«¤¯¥rmmmfxomqzjqigrii
gqd^cjpZ]g~x¦`brpfdztdwgjx~ydlcelbJdWIjY9OcDO'J9+# ",)-2.5:457:<?ABDEHKLMOQSV\W[\``a]][TPLHD=:AB7MXYZYYZYXXYXWWVWY]^^]\\\]^]^][[UW^¨´©ºº²³«©¢®£³ª½±ÃǼ´©¿«¬£ §« º£¤®¬¦ª
¦«¢¤¤ ¥¦©¢© ¥¥¦®¹ª«{¦¦¦¡®¥¡«¸°Á¨¥´§±³¬°®ª¼§²¼£©¥µ¢©ª´¤®¢µ¥¤ £¤¤¦¢¬§
¤
huwuq§m}
phvowu|yikecocUaX?hZGb_NW+E=+&!640. %2(*799469;>?ABDFJKKMPPQWTVY^`ab]^UPKEC>9=@ASX[\YWXXXXXYXXZZ[\^__`^^^__```_YY`¥©ª¤µ¸®¯¢°¥® ·±ªÄ¼Ã¹¶©¡¤¥°¨¤·§©µ§¨¬£§¤¡¨¤¨¨¥ £§ ´¹§ª{¡¤§³¢¥ª¶§®Á¯¤¸§°°²¯¬¶¾¤³Á§¥¦´¢¦© ¢±¢¥³«³¦£§¬ ¢« fvwztj}
zqryq{~jnd^pi`\_XlbO_cOX9FFD=2<=7.*%+)&&416658:==?AACHJGJKLMSSSUZ`aiaeUPJACB;9EMV[^^[Z\[[[\]]_^]^_`aabaaa`bbbdb\[c¤¨£°´¬¯£ª§® §µª£²¹ª«¡¢z¡°¤¦±©¸¦£©¢¯¤© ¡®ª§§¨¸µ£¥y¡¦¶¢~®´¢°¯u¤¿¤³ y{£µÀx°¦¡ª~d\bv¤~mµ¥©±¦f ¢u{qªm¤©e¥
ylvr|ai[vfhqxdwwhnykpe`vokkh[dcaamQY=MMMRF=?SB90/&4:306678<;>@ABFHBGFIKLTUUY]_gggWQI<DH<9VR[`ab`^__`aa_\]___aabcdabaaedchd^]f¦£¡°±¬«ª¦©®£§¥ª´®°¥©¥ªs¯ ¨«§¹ ¤~¬¤¨¢
u®¥¨£¸³§tw¤°µ´½§¢~§£{¥²»©
±ª¯£y¬£©«ªw¥{§{³{ by
nrzrtxht t{~ijx{qpgexmilj[cihdqZ[HSKP@E5-YST6)!09=>743568;:=>>?DI@IEJKGSX[X[aaifYQH9EL<?bV^bded`aa`bb_]`aabbbcfgcba`edcgcaah¤ ¦®®«¨ ©±¦§ª¥¬Ä¼¯ ¥§³¬§¢ ¾¡}¬£¡¡¨¡£
¸±¨
pu¢ª´´®Ê«¯·
°³³©ª{¨r{w¦h¤y´¡ ¨ªÂ«¡r¥~²¡}¡}
nt{s}
uÅf©¢iogwt|wgivpghk^bnlfjWdF\QL2E46M`c7&3<EGD:63658;8>==>BL?NIJLCQZ]\Wb^jl[QE=KM@JdX]cfhgbbbbcc__babcccdiicbbbecafcbbi¢ °©©¨¦¬ ¥¹±©«¦¡¤©¡£¨µ¡¯ §¥½ y«¢
w £
¡¸¥~bm ¦}¡§ ® ¡®³¤¬}¢uk«uM«xª©ª«
¢|{§jlg·~n`cX|dgs~zl]}oaTr]`mz`Ye~
r¨ªk£nr¥ogdlZl{eY_~aWPpveotqjjo]ioljgWfM\WE8A4FC^k4+ICQMN=84859;6@;;>BO>QRKMBJ\]_W^^cu_MD:MONTb\\ffiibbdbddbab`bdcabjkdbddgdbgeach¡¹¡ª¤¦¬¢¶¼ª®¢ ¥««´¡§ ¡§´u¦~
¬¤¨¤¯¦¢in¡¡££¡ w§£©¬±¥z|¢pr{ymª~¢tw¦g~w¥_{}s¢n·´ºt¶¨dŹ|q¶r¤du¬«a~j³~n~q£kr£r|£^³p|³tr[²jbqtuqhoXjkqpd[g\aKC=D6QAYq2<SG_JR=<395:96C<;@IP?TNNQ@E_^[YW``{dIC7LWUVcaZffkkbbeadc`ab`dd_`cknccddhdbgfchh¤¹« ¥¸µ¬ ¡¢£¤¬±¬«¡¡¥¬x
q¡}¨ ¢¨§¤~jz~}w¢ r¡©¨«®®~z y£xs}¨£d¡~mho{§}rht«sªg]
w
hªj¹f\©pa_§vwhu}lj¦\¨~w»j}©Z]³g[nrxwki[piwwa^dVaAPDN7UBQm4JZZ^NZD@151<;7H?:CHU?YSX]>Db]V`Qad|iFB9N[]YefXffnmbbe_aa__``ec^bdoq_deekecihgkiª¶¨c¬»±¯«¥§¬°§«£¢ ¤irzz¤¨¢i
yz}¡¡rh p©¡¥ª£«°®¤¢¸v£³¢£xz©¢r }°µ}l¡x~µ££«¨|}tªZ]o{ycM{{ezBMY¢js}ovy±³}¦s}mp|ori£]vHec_tq|}ne_kguzbc_P]W\SV@YEPgDRV\aX^ID=B8?B:IE7LEXAWR[VEFb\Z`K`m}qEC<V^bZejVghmobff^a`\]^`hb_ecvl^egfldelhili°®S_¡§´º²²¨¢©§ «£ ¨ w
nx}r¡r¨|l
q¡wz¢¢}µ{¦z©¤¡§ixn~s sq|
o¬{£§¤p_©hv£dp¦aÓ|{xrsc¢~¢r£vk³`u«³¨¼wo¿¦ª´^orpt£r^¤gt¦`h¦kÓynvykyvrl©¥g_eyqlhfcmuvf_aQZePQaHVIT_WS[ej[ePECKLIKBKE8P@QNXSXOSQ`ediSdxywJGEd]eZhiSihjncjf`c_\]]_hbahe|d^dgdkdjlghmh°¬T]K~ª¯±´°²¢¦ ¢¤§©
{p}h|wpk|£¨
yvnw
x ¢³¡¢¶z¬§¤®¥q©~¥£q¢¯¤¯£wµ¶¶Ê¢t`©my u¡w ~oMf£qt¥{zubn~ mrd`stk{j´¶´Æ¦s}yj«slswiytqPD}³^ivkxfkfbstolU[RYhOQgIULXRU\gknUgWMJAIMKHJNAQJPecjmeussy{ntz{UQNm^h[kiRjhilgmfce_\\\_ibdhk{_]dgcjfnleime¢¯§
e@¢²«¯¯µ¡¢§¡¡£¤¦¦ykye yuj
z¥¨z}yp
y~¤¦fnxl¢d|r¥xph§}¥{¢rv¹n¢b}£ntk«ku np§ajiu¢~`uobh¡fjuqegos¢[_[d¡n^q|trd¥nx¢cf§gqm¡oRn ^d§T]TmmskqmphkwsjnQVUUeXRlIXO[HWhhsjYkVPREV\LXRaUhj^wu{|p}|r{sww^QsagbpgPkhhklohdg_]]]`jbjivu]\chcjirlfkmc¦¦{etm§®¥©°±¥©£¡¡¢¢{qh|su}|e|¦¡ª}si¦}
¨¥¦x~¥²¯¥z{©u¨n¥¢¼m|¥¯
£~¦|s¨¡ip¬cx¨mª£vw«¦k±lw³©loo b«ªx§w}
¤ gt«f¶sv¾¤Y¦«avrto{upbj~nglRTXT``\jL\Q[H]lmv_[qX[_Zgsenoqcqt`wz~yrys~{{vbydcnsdRlggomrifia_^\ajbllzo\\bibmiwmglob¦ª¥ªª§§£©¢¤¨
t
zo~turn
|{
¤¤¤unl¨©¢t~y¯¤qy{s©q}}z
x{}}w¡£
|m\zys{qin~rtqf_xwtvpzopn
_wixgªt}io}u{tllfsx{w[kWyinwrrowxo\k
nifVY^V\ejcU`T]P^owykjvdijju{pqtsaotbt{xuzuy
~{nmdyn^Wnhhukxjijd\`ZcielqunZ[bkdlkymhlo`¹©§¡£¦¤¤«¡©¦¨~r||~{tsp|}
x~£{¦wqª
¦ «~¨¨yq
|p¬q~qjp}gm]¡tsulwtYro~j]id{
`iy||w
jzlbqsw`t¨glvmvmcecyzZ\ignv[{ywunsrf[lkkbYX\YXkq[^_Y]\er}ztotbjji{{qzvtdmthm{~uz}{yzo{}szshT\rilvouglgd]aYjhkjqrmW[emlgryohjm`«±¢£¡¨¡ }«¢¥{
|q}vros~z¥wy¬
©¡¢££«¢¨¨¢~zª²¦°§¢
l}wxf}
x|{u¤ wqu
y§y
tj|yirhasq~{wwpwt]]nhn_^YZ\SgqUc[Z`kgt{{rnocjjh~{lx~phookf{rw}{m
|zy|}zyOdwksnpzelebb`[sfpfrqmU]ltmhxzpgike»£¡¤ z~©
}x{mxr~mk~z~|©r
|{©
¥¢¦ ¦y~§|}ª¡¨¡pyruaw
nzvu¤v~~ts|
|z
¨s
ymj}{mhklg^yg}{vuvu{w\_p}mt`cZ[^PflSdZ]`jhty~pllckjgkrkktnwmynv}
vq~{{}{`i|kuhiejc`i\cugobumlTbqyeoyzrejmm¸¢¤zw¤¤yz|m{~wr
}}kh}|~
|¦p ¡
|¨w£ ¡¢¢¤{£~|¤ ¥uuqwa~s}qhxrzt~s{||{¦{
s~
xdpzwypljf^}sh|uvt|sj^`twpwdcX]^RigTdX^`giuxpfkclgejm}gmpj|wzkr~uv|{}jrntibilb_qVtolm`xhmWjsvctzzqbkoy³¥¦
¡|u¢¡x|~~pzsu
~wgc}x}y}o
¥¦u¡¡z¥{
z s£ }wr~n{d}qkfvp}y~~}sy{¤vsxs^vw}r}vfle`ijwstu}q|cdasourmaY_]ZjcRbW__gjtxpbjbkfh|khthloh|yl
qt|~z~|muttmfljbcuVipn`xglajvpfx{yq_ql
¯§©
|v§yy|}}{xsxys}d^}
t}~~£ ~q{¦ s§um|o¢}{qzkvm|n
xp~esj}u{wz~
¥y
t{~qr~k`ytyp{nance{bnovsxwttaw`olunp]Z^]]i]O\Wb`glrzj_idichwmflhilg|zwns
}tz}z}|ryyxnlkh_irbhqoevgmlazhj|{xpawm«¡¥©|v¬|w~{||vxosszo
|~|`[~rzz¤||¤n¢¡ph{
p¡}|usukqnu}uort|~gsnz~vu{q~«{|~v|nl}afwstnza^oakt^pjzyymtqez^nlsmsYY]_`iZOVWdbepp~e]ihfbgpnchhehgzwto
s|v
x
|xzw|{syjj_phtkqomqgoke{amywplww££¨¡§t¨¡t|v
xxrsz
lqoxlvnq[Y~vu w~
m¡l¦
h
x~}}
pvplnop|jsrxuzhupw}{|xvr}|
¥|v~wwkh~~[qrqoowZ^papk^oj|zqnmjmw`pokqnYX```lWPRYeeatoa]kldbfkn`ff_fjuqrotyvyxv
{{wjpc|b
|opltjhnlww_q~y{tus~¥§
~t
zrxtprtqulnltlv}mnUQ«xvry wz£
}r
ii£qw{{}~lwjollm{bz~w{x}zivmv}s{ry||
}|w|vogi~v]vnmkprU]nbra_mnyphpfgtviqlawf]Ue`_qSPM[ec\wo{^\hpabefj_gd[go}olqs}v|uvy|xs
~|zxgqj`~ook{`imtt^s|xxts
|y¡±¥~wtwspotpqojiumn||mtsRNßÉÖ|otuv{r
¡
}x{{win¦cpz|{}m|esokm{z[z{~{ziukt~mp~
|}wxwqkdn|igsngislS^oepY_lqwgkkbgytppd`xa`Uk_]tOMK_eb[wps\[du`beec`fbXissmkqv|syvw~szr}~vesn|e~nokYlnyzr`vz{vrvvy¯ x~{
uwpyqopmm~rcdwp|my|jhlc¤ÁÜ®ï¢slvu¡np
¡
{vx
wwp§^l|~wl}dxujoztX{{zgtjmwp|utxtrpdrv_rloahtfR`qgkU_nsyarc`i~qsn[csacVnZ[vLLKbe`]urm[\dx^`de_cc^Xirknkrw}svxx|q
}}{t
shuqymznspWqzvyqdvyhvq¨£}pwx|
|swpsjoljl|t^`wv{ptzg`e|ëÚµÉÃÜsltvhp
{zwxrvq
¥ a
h}~
rrwhvriuwlZ}~wbumpmz}nqy
tjoiou~]rhm\it_RdqifS_qvt`p`]hqsjWgidiWmW[sKIKde]aqr
i[\ex]^dgz`d_]Yknenjsw~ss~{vzs
|vv
|vlwvyxtnwz|Xyqngxvdv
p¡¢snrv}|yrsnodr~iflww[_xzzqqiagaÕ¶¦xnqw{p
i
zh{{~
zu{|qv
y ¢¡af}n~ulmwutxvkc}
p`tr}}{r
g{
}
nox~tlmhixz`giiXkuYRiribQbrxmbe^Zjntb\h`em^nTZmMGNec[fmpkY[br_\clvde]]Zllbljsvqo|}txx
}ux|woxyzomzv^tlhzssgr|q uu~mu}}v~wroljat|gbiuyZ`w{ymp~edhhW_rs¼Äuq}qri{{|zuvw~ru
sw f}
q}f~|y~j~
vfpyxtxtljy
l_sy{~|sjz
y
~~nmz|usmfe{tb[pbWnqSSnshaNguxf`^]YootZfb^kn`pPYjQDRf`Yjml{nY[]lbZbovdg\]`kickjsvpn~|tuz}
v}xurxy~oozqixz~ml{ukjwsl
n}uiw~zo{tqkjd`szh_eqzZar|ygpyaed±²wKbZ¥ÙÐqzw|
nk
zy{wwoqu~{jy
¥p
x|
p{}mvh
yr
}f~
vdqsiyppu}wyzk\rs~|snrt{
ynn}~uycfh{o^XvZWplNWqsg`Klwta^\[Zu~spXg^gjq`oNWgQ>Xe]YnjgypZZXjeYcpx_g\^elgfkiqwnl~up{vqq{|zyujy~ko~t|or{zoo~xg¡
fogy}~|hxskkf_`oxm_box\dkz`qu_eeÔê½2:>qy
u~~mku}{wmuwn
lu{ufy¦~nvy} {xkqh~yn||xbz
rerinurutvtp[nuy|~y{rm
tzunjvts[ggunWV|SYodKZrre[Iqxo\[[Y]utiZb[hfocjMWeP=]e\\ue`toZXTncYdqyZh]`gmgikipw}liyn|}zupnx~{{hz}js{rzsv}~yx}|kl}jh~z}~~}kuqghb[bfrn_aks`hpybss^cd n]6Z¯µti|u
svoktyx|y~rfu~~oqivynfy¤ox
|q{}{h~lj{zj{ws`xresgvnu|}pxz|umXpwuxv|ytos~|onimtm[edqoPZzN[o[N[rodUKsxiWYZZaqua^]`gdiifNYgM@`c[`u`]ulWWSt`ZdorWj]bhkgmlhpw|kh}|o~~|zwq|orx{j}{mvxvv|x~}zm£{uxjlx}z~prpcf^Yf_po_`gofjntato[adjuz¿¦¤È¸q
r{w
srrozsttwxypbvzirwgwucj|~su|{{kxy~tgzhkysizw~h`x~lkth|iv|q|w|tbVx~st
}ryyrq
z~wwjqhlqo\f`qlIduK]mUSYsnbQOtxaRXX]aps\b\ieedkdQ[pICc`[co]]xgTVUv^[enhVk]`jgennhpwzmiy}r{~y|v}owrnw~p|wxztxzuo~}
yw
zgt
y~{
wgpn_d\XdYlra``plkhn`shY^cnw©Ú©Ç²qwotz
ytss}voqms
xtk`yyfrphun[m}x~y|oxw
|
mtu~lfvdm{vnkww}acyzivvc~|hu}vwq{}nZWupv
zmuylv
}~z}t~thtenlrYh]sdFmmKZaWVUxmbPRtvXPVX^`ro]acmed^ocT\qFBe^]eg][zbQU[t[Zgk`Vj^`offkqhpvxtkuvx~w{t}ortqu~
{wx{|
w|}}{~ruy yvtx^}
x
t
x{bnl[b[[`Visb`[gnofraqeW\bk|Êι¡jmmkqq{~zyxsxtt{jlubuvnf_}zerkjqcXlzrw}ps
t{y~qpo|dgpamxqkmqx~~z]f{xjvyfwht~sko~yo}^Ytmt|oprwixxs{u}{sgrankpVi\v[GmjMVU]SU{kaOTurPQTW^cu
i]`ljfcZoaXboGAg\`e^\V{]NUdoYZjh]Wg`_rfjhrgpswxntzw~zur
pp|xvvz
z{t}}~~}~|yuxw~|muxcso
{ucnjY_Z\]Tgsd`XdqrgrbkdVZ_jx¾®{¶masgszqx
z}~wwruo{vejn`usia^~yyfqhkkZVow¢przw
p
v
}ytrohx_il`mvkhkkyx{w[g~}yfs~m
ueuqhk{unvc]r~lu}{gv~oriwzt~m{|{xqflam}klUi_vUJijNRNgLX|haNUukLPTU_gvg^aqhgbXi]\kgJDjYbcVYUyYMVmiY]kd\Ydb^tfldqgrpuwpv~w}
}usnsy{ztsy~u~|{~{w|wwziv|{lrqpflfW][\ZSdpd^WbruiuoeebW[[hporsddy|hsusrwxvrumjzqagkfsmf]_}p{imxgjdUWro¥|{vt}t~}p~y~}upqlgt[kg^ltdhfizo|rZhwuiqxwbw|pkn{rgtfao{gsx|~cwwklrv|r|{uhywodfbm
{ljUhaoRJhiOKNoG^zfaMUtdJOSWakwf]gtif`WdWbp\KKjWcaUTUrVKXudY^k`[Zcd_vfmbpitorutwwz}u~
mrt|zuq
zvs|
}}z~w{£¥y
kt{zuynsy}vojheV][ZYSbnd[Xas{jhli`bX^Ziikpgl`gywirssly~{utmzgiyj_enhvfeXbwj{ojpgf]TXog§vz|zvqqux|{vvjruggn[ld]mr_hajyh|m[nsukp~zxaw
ytrqzscrj]pxert|yctqgjzusmzyvye|ywqddcm{|jjTgaeSJkfOGQjEaxfaMSr]JNUYelx{f_nqjd]VaUnnVJSgWe]XMUkTI[x^[_k]]Zbe_yhlaoovnpxuz~wyzyz~qttzwt}|kr{
~}~{w«zjryu~tnn}sjomddY_ZYYTbjg[Z_ui^ml\aW[[keqt}ii\jvtfsvqkz}|xurlyfiwf]drgywbbTeph
xxgijaWVYgb§o~w{qri{q}ys
~ndvrdgg\ja]oo[h_mue{h^uorkr|~uvbu{ysvvbqn[rtcqr
|uesmam{qkj|{vsgw{zvqebdmr}ijSg]\TKqaPFV`GcvfaKSoXKMXXhkv{eenqgdZX]XweTJ\bWgWYHWdOGaxZ]_l[^\ac^~ij`otxmpovzr|}vvx|suuy{z|~
isz~~
z{}sq{{|eqys|zurn
l{~lzcpobe]eVYYVcfk_]\s
hXpnZ^XZ[kzbpwvlaYlrrftuokw~xvmnsdhte[gteuvy^\Rfgkt~bdj\TW]ab¤ixsynq|jzo~wty}yidvm`f_^i_]tkYf]oocze\x}loopxytues|xps~tcxe\qqbqr|tgse_nwjeh{}uopvt}srb_fmn|dhSfWXSMv^PIYWHbtcaISlSJNZWjlr|dmmscaZZ[aw\SKc]WhSVFX_MFiuX^`l[[^ab]ihanxympkvym~vtttqvux}}~~~pw}yxz}ttp zz~wctxrwtkto~kx|ps^po`gblTZZWhcmf\\qeSqn[ZXW_kvdiuji^Ylrokssrh|~{vnmkdipc[krdtvsZVTearr]bc]SY`[ceqq
ull{opr}~sxt{zzdeug]bY`g[^vhWb]piaxa\|vjkroxtsuiq
wtkr~ogxX]lncrsztgp~\`qscaksmnvsrxkpa\ellz`fReTWQOuZPOXQHcsa`FUjQJQZVkkk}fnorb[ZXYlqWRPfVVhSTEY[NHqtX_clbX```]jcdmzxlpiuy{k}|y|nrnvz}t|tx
utqvp¡sy
zdvnnznfxpykrvsk^tnagekR][UgalkZ\qdOom\VWTfishbted\Xmtloutxj
|{vscdkn`\mmcsxkYTVcdx}}q]d_cTZ_Xbcmp
tki|pguyv~m{uvp{u_fsc[]VacXateU_`mdaq]]~phitqtquwkm
}rshpqtpT\gkfqtvscmwVcsl\`phgnx~sssjmaZdijw^eScTUPSlVPVSPGdr_`EWiOIXTWnie}ilxlbW]U[tdSRWhQXfTSGYYOMwuZ_ekiYa`]^nbfkyvnoiuvl}{krft{u}r|{ts~vn¤rvvly`d{pfysxlmrwgd{lbfghS_^Ug_ko[^nhMil`UVSnfskexed\Xoskqzwrkzvzykaelm^`njeqx~gYVX`lx|{p_c^gVX_Wcbkp}xllzn]xsn}kvtop|sXjn_Y\UabWdpbS_bibblZa~lfltvomwwli|nrgq~ntnd[aiiottr_imSereVdpd|esx}wkpmk`Yafgt\dU`URNWdQN[NOHdo\bFYiMJ_KYmd`yin~e`U_T]u\SR`fN\`URI[XPYtu]_ekhXb`Z^qcgjxqsnhvs{rz~|yntkst
y}|
sstxso~zz}~~}}~~~~~~~~~~}z{|~~}}~}~~~~~~~~~|z||}~}}~}}}~}~~~~~~|z|{}~|}~}|}~~}~~~~~ÎÚØØØØÚ]-0000-F¡¡¡¡¡¡ wegfffc¾»»»»½³mfgggge¡ £cggggfo
}}{{z}~||~}}}~}}~~~~~
Ûéççççê~S7¤¤¤¤¤¤£r]____[~ÈÄÄÄÄÆ»g^____]¥£¤¤¤§|\____^j|}z{z|}{|~}}}~}}~~~~
|yzz{|{}}}}|}}}}~~~
~}xxy|}|}}}||}}~}~~~
~|wvx{}|{}}||}}~~~~~
~{wvx{|||}}}}}}~~~~
}|vvx||{|}}|}}~~~~~~~
~wxz{zz||||}}~~~~~~~}xyzzz{}|{{}~~~~~~~|xzzy{||{||}~~~~~~{yyxz||z{{}}~~~~~~{xyxz|z{{|}}~~~~~~~~
zxyy|{zz{||}~~}~~}~
yzyx{{z{||{~~~}~~~~~~y{yz{{y{}|{~~~}~}~~~~~y{z|{z{}}{|~~~~}~~~x{{{zz|}||}~~}}~
xz{zzz{||}}~~~}}~~
|x{|yzz|||}}~~}}~~
zy}{{{z||||}~~}}~~
~yy}zzz{}{|}~~~~}}}~
}zy{zyz||{}~~~~~}~~~~~
|yyzyz{{{{}~~~~~~~}~
{xzzx{|{{|~~~~~~}}
{xyyxxzz|}}~~~~~}~
zyxxxyyy|}~~~~~}~~
yxwwwyzy{|}~~~~~~~~~~
~ywywwzyy|{}~~~~~~~~~~~~
~ywyvxyx{|{~~~~~~~~~~~~~~~
ywwvzyx{{{}~~~~~~~~~~~~~~
xvxxzxz|z|~~~~~~~~~~~~~}~
}wuwyzz{{z~~~~~~~~~~~~~}~
{vvwxzz{{{}~~~~~~~~~~~~~~zuvvx{{{zz}~~~~~~~~~~~}~~~~~xuwyz{{{z{}}}}~~~~}~~~~~vrwzz{{{|}~}}}~~~~~~~~~~
tswzz{{{|}}}~}~~~~~~~~~~~~stvz||z{}|}}~}~~~~~}~~~~}suv{||{|}}}~~}~~~~}~}~~~rtx|||{||}}~~~~~~}~~~~xrvy|}|z}|}}~~~~~~~ssvx}~|y}|}}~~~}~~
ty}zxurkeimolffggpsswy}~yz{|}}~~~~}~~{z~{}||}ysrrrruupmkjjigcda_[\]^XUWXYSKEIJJKLMOOK`ttwy}}xzy{||}~~~}~~~
{|yz{zspqqqmljglmgefefdcededeeeedddcaa^]\ZXXWTPQRSRSMMJIFDHJGGHGGLNIgsuxy}zxwy||||~~~~~~~g^`cacnq}{z{}w||vxz{xxzop{xy{|{xw{xuwttvutvwuqrqnprpghklnomjiihheeddd_`ab``^]YXZZ[]]_`_`___`ba^^^^YY]\][WWVRTRSSNQJHIFDEHLLHFGIKJIMmrtxz{zwwy{z{|~~}~~~~~~gX[ZY\[\c\Z\^`kqmpponnonkinlklojikkijkigfgggihgmgjghehgbcbab``]X[[WXWTVQPTSSMJLKLLNNOTXXWUUTRPPMMPONKLMPQOLLJGIIGHHIHHHGFGHJJHHHIIHIVpsuyz{yvvyzz{|~}}~~~~~~l[XVVVYYZYYXUVhjlnnlkkjhhihdedb\bf__`c_\_]`]^Z^]YY^ba^^ZY_\XWSNMLKKKLIKMNKJKKLJKPLKKFGGIIFGIHIFEHGFFEDEEDDEIIIGHGHFFKMKIIIHGHKMMKLLLUqsvyz{yvwxwz{|~}~~~~~hRTUVSUWYYYWWW[[ac_^\[XVVYVRTRQQUTSSSPMJMNPROMPQQQQRVVRPQTPPNNOLJMLKLJJKKFIIJLIGJHIIEGGFFEEHIJGFGFFGGHJGGHHJLJJKIIHJKKJHJKJHIKLMOPPKTttuxzzxvvwwz{|~}~~~~~~~iPRTWUTVYWXXZ[TTSRPQSQQQONNPPQOLNPONNMLKMNNPMOPPRQPNNOOONOOPQONNONNPNMMKIHHJIIIIGFGGGIJHIHHIHHGHGHHIHILKJIHJJIJJHGJLKJIIHJJKLNMNMOQLUsrswzywvtvxz{}}}~~~~~~~~lOONTYUU][YWWXNMJJIFJOLJJGIJMMKJLMJGIIIJKLFDFJKKKHJLLLOMLLNOOOMNOLNNNPPOLMLNMLLJIHGIHIHHIIKLKKJIKJIJIIIIIGGJIGIIJJNMNLHIJIIJMOOMKORNYpprwxwwtttwz|~}~~~~~~~~~oKJMNQNNUWVVRSIECEERDDA>B?D@@>BDA@ADGFEHEBA@@CCDEACEHKOKIIJHGJIJIIKJLPNMLMMLMMMLIHDFFGFFFIJIIKJHLJIJJJIHHJKKHFGIJIKMNNJKOMLKMMOONPOP`porwxvtrsuwz}}}~~~~~~}sPPNNPMJKPRPNQCDBAEQE=C=?EH9:;=?=<AF@>:<>><ED=?EA?@A@DEGGGGBDDEFEGGGGJGHJKGCDGJGCDEAACGHGHGHJKJHILKIHJKKMNLMLLJJLKIKMOOPSQOPPNOPRQMPgposvutrqtxy}}}}~~~~~~vTUQQPOLMPPNOOAAA@BA?;><>??<898;;:@:;><;;<<HL==AA?BC=ADDFBFFDGIHC?@@@AABAA?><=>A@@?>?@EGGGIKLNMNMLMMJKMPUSNLNQNNMNLMMNONNMKKNNNMNNLTnpprttsqrvyy}}}~}~~~~~xQQRTRSQSSQQRO@@=>?<?>@A?=>9;::;88:87:<978;;>=;;:8:@@AB?A?CFDBCC?;>>@CCA?>?A>@@B?@<?B@ACEEEJKPOPOMMNLLLORQPRNLLOMKNOLLLKLKKJKKJMMKK\qqqtsusqtxxz}~}~~~~~~|RMOQPQRRTRSSN<;<;;<?@AB@=<9<=<979::988::78:9:;;8789;:8<;=@A@=;;><==@BCA?ABA=>==;=?CDB@?ADBEGJJJJJLMLLLMLLNUSKLMTIPJIMJIJKKJIHGJKIJfrqstsurrvyy{}~~~~}~~VLNPPNRQPPQQN8=?<<:=>A@A?>>@?>=;<<>?=<=;:<===<<<<;<:;<>=>??A@>?A?@@A@@@=??=<:;==<?@ABBA@BDFFFGFGGHIKLLLKLKJKIJJMLLJLKIHILLJIIHIKGMmpquuuusuxyy|}~~~~~~~~aKOONNOPOOPPO:<><=;?>>AA?=?BCC@><=?@??=;>=>CE??@=;===<;:=>AA?>@@?A??=<><=;;<=>A@?@>@CCDBDEHEEGHHHGFIJIIIIIHJJJJLKJJIIHHJJKLKIKJJHVpoqssttuyz{{|~~~~~~mLPQNOPNNOPPO><<=>??@>@@???CED?=;<@>:;::97:<9==@=:<;;<;89;?>=<=;<@==<<>;=<=>A@BA@@?BDCDEFFFCEGHIIHHIKKLMJJIJMMJKJKIHHHHJIJKJJNLII_pprrrtuvz{}}}~~~~~~~~vMNNMNNLLNPOL>A<<=?>BC?>AAABA@=<=;>=:::<:8988:;=??<;;<;::;>??=<8:><=>?=;>?@BCBBCCABBABBDBBDBDCFIGFEHIIKMJIJJKLJJIJEDIIFFHHIJJLJFFgpoqqtvvw{||}|~~}}}~~~~~zNIKKLLLEILNM<?<<=>@@AA;BCBC@???@=??><>@?===?==>CD?;<=>@==>AC@<9;A?>>A=;?B@BCB@CCACA==>@=?AAA@CEE@@CBCGGEDCFEFFGED@AGGFCFDGHJGC>Hlpppqtuvy||}||~}~~~~~~~~~QHKMMMKJKLOQ@?>>AA@@AGACDCDA?@@@?=@><=??@@@C@@?@@>=<=@EABBFHC=<@DCAA?>=@A>>>?<>@DGE@>@A?@CFECBBC@BDDBDEAB>ABBAB@@=ABCDCCACEGA?=Vppqpruuwz||||}~}}}}}~}~~~~~RHKMMLKKNNRUDB@CCAAB@BC@@AA@A@>;><?=<:>=?BBD@??Na_J@CEIIIIMMKECFGHEGEEEDDCA?@>>BFJJGDEGFFJNNKJIGGHKLJGGCDDDEDABBC@CDEDDEDEFCBAEeopqqtvux{|z||~}}}}}~~}~}RIIJJHJJLORSGFEGHDGHD@><;>@DED?<ACDB?=A?ADEDCWu~XGHJLLMOOLHGHGHIIHHGGHHECEEEEFHJJFEGIJMOOMMKJKJMNKIHGHIHGFEFFFDFHGEEHHFHGHFQnnpqrvvy{{{z}}~}}}}}~~}~~|PHGHIFGIJMNNJLIIJKLNJFCABCFIHIGHHIGFBDFDDCAUtWILMLMNLJGGGGDGGGGFHFHECDDFEDDHHCCCFJJKLLLLLLIJKJJIIIHJHHGHIHGGHFFFHJIIIIH]ooqrtwwz{{z{~}~~}}}}}~~}~~|MGFHFEFGGJKJLMLKMNMOKIHHJKKKKJKMJKHHFFGFEPl|PKLKHGFFDECC@ACCCCFFEB@>>@AA@BD???DFGDEGIKIIGHIGIIJJIHFJJJJIJIJJJFILLJJKKfopsstvxy{{{||}~}}}}}~~}~}OFFGFGHGEFGGMMMKLKIGCCCDIKKKKKKMLKMLIFJUl
uIIFB??@???<<<>::<AA@><998<<=;>;9;?ABAACCC@ABEDBCFHIHHHLMLGIJMMNMJJKKJLMSloqtsswy{{{|}}~~}}}}}~~~~~~QFEFGIIGDCEFNMLJIHE?9:>@EHGIHKLONNQNQ^r
fBB=88::9878896479;<:8567789787689;<<>A;999==>;;=ADEHJMLLGIHORQPPNLMMOQ]oprtsuxz{{||~~~~}}~}}~~QGFGHJHFEFGHLLJIIGCB56:<C@BFHKHLKNTg{T;8656766645763468:876565677778:7788:;7688989876:<@GFIFIFEFOSRSSROPPRTepqsttwy{|{|}~~~}}}}}~~RHHHIKIGIJIJJKDEHDB@5788=:<DBDFFDVx
H676468874578467799776765::;::<89999877:::8878589;A=>>BA?AKLOQPQOOPQWkqrttuwz{{{}}~~~}}}}~~~~THGIILMKJKKLIH?@A?<:579897:A9<D?P}z>:88;<=>9:;<89;9:;::9;::>==?;;;=:><:<;<<=;::<8::;:999<?<=ABDIJLKJKLWorsutvx{{{|{}~~}}}}~~~TFEFILNNLJJMB?;;<:89989999:>=??Cv
l<;>BCEEBAAB>@CA@?=>>@???@?@==?B?AA?A?=AA@??A<><;:;:9;?=:;==AACABCAXpqtttvy{{|}{}~~}}}~~~~~~~RECAGJNOLIGK:89;9::<<:::<;=>@?=a
^>DGIKJJFGGDFHGEC@@CECCABCB?@DHECEDEEAFEFDFFD@B>=@>=?@>>>?>?>>:;=<`qrttuwzzz}}}~~~~}}}}~~~~~~~PD@=CHOMGFBD979=:<;>=>>;><??C>J~
WGLLMKNIIKHIJJIECDFGFDCFGEBHIKGHGFGGEKJLIJKJCFCCDBAACBDCCDDCA=;=@hpsttvwzx{||}}~~~}}}~~~~~}~OA>=?DLK@BBA97;>;<:=?>?<?>BAE?h
PMPMKNKJLIIJHKFDGHHIEEIGFELLMIJGGHIJNMOMLNKHFGGEECFFFFDEHHFCA?@Lmptuvxyyy|||}}~~~}}}}~~~~~QA?>?FGG=<@@87<:;<:=?<==?@CBHS~
qMQOMLLLLIHHFJIDJHGKJIJHHGKLNLLHHIJMPNONMOKIGIJHIDIHHFFGGIFCBACUoquwxy{xyzz||}~~~~}~}~~~~~TDAABGGB?8?@8:;7<=:<?<==@BCDLm
^RRPMNMKJGFCHJGLJGKOLKKJLMLOPNHIKLOQQPQOOJIJJMKLFGHGFGIFEEB@BB\prwxyzyyy{z{|~~~~~}}}}~~~~~UECEEGGED;?A;=<8?==>@ED>CDCFJu|WVRRTROLKKEFFKONOWVQPORSRMSTOMSLPSUWRSRPLJMMMLNGGJFFHJDDEEBDCcquyyzzz{z{zz|~}}~}}}}|}~~UFFGGGGHF>@B=?=<A?AADTKBHIFILy
gVVkaERQQPK;:QSR`u]UVTVYYRXXRZfPUWZ]RTWQPNRPPQQKKKGHJHEFIIIHIjsvyyzyz{{|z{|}|}~}}}}}}~~~THJIIGFFE??A@EACFDCDKVPJPPNOPy
}al[dU:XXXSQ>@VUY\d`VYbr^]V]ZVEQYZ\Y_TYgRUVXTTVSOOMKLJIILMKOMTptvxyxwyyz{z{|}|~~}~}}}~}~~~~~VJJIHGFDDBA?HLIMPKIJOSRQTVUVTu
g;~znpXZ[ZRSRVVTZZuYU}a\X]^WIV^^[[_YHYXY\]XXYWRQMPQMMOSQQURbtsvwwvxxxz{{|}}}~}~}}}~~xy}YNKJIIFBD@A:OQQWXPPPQRSRVWWWWl
n~fYY\YSVTWRQWVcQerXZW_hP`fZZX\hbGOZig\[\]]WSNSPPQVVVVYZostwvvtwxx{{|}}}~~~}~}|~}r}ot|]SPOMKJEC?@;PPZZZRSQOQRQURUSV^ux
}{\PVXTRTRQQLOMKfyZ]TYUV]ZLTZUST^ZYWWWzkXZ\\^SPPOINOWVXZZeqtwvttvxyy{{|}}}~}~}~}}~~~zxwvsu{tk~~kry^[VUSROKFCDAM^lVRSOOQOQVQSRRTcdv
~ymqVIKNNKMKHJDFHEC>ScURQQNKRURMOYRNOQSUUMQSRPNLKHCIGRSTY]mrvwuttw{zz{{}{}}}~}}}~}~}}~~~{vsw}~~du}iqt`d]][YUQLHLIaltPQSMQRPS[RSRQRUUbs{|~}{{
u_]KC>BBCCA?DPCC@C>BHGV@HNMG]iQHFOFEFFHGHBCHGHJGDAAC@NPMRdtuvuttvy|{z{{|}}|{~}}}~~||}}vt{mh|gnqfiedb\XSQPURsWe[OONLQRPUYSUQQTROV`klsvz{xytrnstsyx~~kLG>>::>@?>>>jPKaEFHIEB?GLMGMQUJBE??==<==?=?ACB?><=B>IMFUouuvstvx{|z|{|}}}}|~}}|~~zywxwvvx{~~}{xv|uaxglpjljif`[QQZ\Y^IJOPNKLQRQTVUWQQWVPX[b]agmmlnjh`nrimlqu{z}{xz||xwxdB@@A<:BCAACA[\O{NOONKLMOOPLKLWNIGAA<977599=;;;8989?;AG>\tuuvuvwy|||}||}|~}|}}}}~}xuwz{zwyxuw{|yxuywcqhipmnmmhf^OO^\ZIGOQQOMPQNQRTVXSRYTNYZ[WY\_^_e_]^qwk^`gkwooljomnlfbYGFFHBAFHEEFCLQOaWRXQPSSRU[OOQVPMIDF>996586979:365795<B=ftuwxwzy{}}||{|}}~~{}~}}~~~~{wuy}|zx||||twvwvuwknihqnooojk`UW^ZWMKSTSPQUOLRSTWXSTXQLXYYVXXVXY]WXXhsk]V`tkaa_]d`_^YUPMONLIGJKIHECPOSZWTTNQSYS\eUOSTQNKIHC?A9988978847578599Gnruyyz{{}}}}|{}}}~~z}~|}~}~~}~|ttu{xrqoontxqrsxvuqfdgrnppqnmd]__YWOPWVVSTVOOUVWXYSUTLKSUUUUWPTUWTUR]n^RNY`[VY;DUWS[fJLPRROMMNMMLJEPPUYSTOJNOUSS\VRUSRNMLIHHF??=:787659967665Xqqtxzz{|}}}~||}|~}}y}}|~~~}||}}~}|rvqxxruuqqnppopuvtnjddjppqrpnfedc\^RTZVWTSVTRXWYYYRUOIGOPOOMRJOPOONNOTLMIPPSTU2<XMI@Q=c`QSQPMPPONMLPNTRPRLILKORPQRRTQROLMKLLHCBA=:9876;B4566;eprvxy{||}~|}|}}}}|{x|z{}}~|{y}|}|{puowuputosvpqqpuuvcjgeWhtrrqniihpVVTUXUVURWVUZYXWVQSFFAFGGHFJDHJHGEHLHKIGLMPMG/E_R>4@>joaRRQ@GTPOPOQNQOPOLJLLOPNMPQQNQOJLMMKGEECB;==<9=G6676Enquwz{{|}}|z||}~~}{yvxwyy|}zzv}{|zzoqnwrpvqmpspopssstfg`hZWkrsrlmmknbePSTRSUOWVUYYVQQQO@>;=?@BAC?BEDA@GHGHFFHJMLDGCORC8EMS]gSQSAGUOOQPPMMNLJLKLNOOQLONMILKIKKLKGFFED<AA>;@E;<89Trsuy{{{|||{y|zz~~|{uturvvzzxzr|{|yymqoxrqunnqroootssrutkgg^ejmpkoqmimcLONMQSLTUTWWULLKH=987;?A?<=A@B==EHFDFFIGJJ@FAA@FGDIOHQRa\QPROSOOOLMOMKMLMON[VKMQOGIHCIKLLKFFFE?BD>=BG?B?@druw{z{{|{zzw|wy~~{{qstprswtxxsz{yvwlqovqttloqrnnosvrtsrrklenshmnmlmljkILHHOQJQSQTSOKHCE=9879?B?;>A@@>AEJECHGIGIEBB?><BA@GJEMObePMOMVKLNKLMMLLKNNSdMJLRIIIFBJKLMNJGIFBBB@?EFEHDLopvzyyz{z|zwsxtx||yznqqmnorrvrsx|xvvmpmsputlpprooorvurVVnqglyjmqrnnjhoHJCGLLIMPMPOHKE?B=99::?B?<ABAADEGKFDIIGGHCC?B>?@A=CEDLMQTLJIMTFIIJLIJKIILMOPRPKGCKHCCKJLNONIJIGDCCDIJMLIZsnxyxzz{y|vrpurtyyvxjqokllnttmsv{stxronqovsnporpopstyjN`gsjt|ygosqjqheqHKCFGHGJKIJLDGB<>=:::;AB?=BBCCHEJLJEIIFGHCC;A@B>@?BDDIMOGHJGHKDHIKMHJLHIJLJM]RHIDNGBELKNNPNKMJKFGGJMNRNMcnjwvw{y{z}qmlskptttuhpmjikktpnttyprztorqowsoqptrprutykNVmulq{vinoikthepFJCFEFDEEFEGCC@=<=:;:;AD@?BCEEIFJJLFIIGFFDB:ACC>?CCCEGKMHJNHDHEILNMHILGFFIILNKIHEOICGNMOMPNNOMKIHIOSQRNSggfrosxv{z|lhjoekpmsqgnlhikltmoutwqoxtotsrvspqrtsrtuuvvXVuukotrkovlhmf_pGJCEEDBBAE@DB>?>;;;>;=?CB?ACFGJGJILHGGGFEC?=DEB>ACBCEGHIGMPIEFGKNOKFHIFECDIIHKIGHPKDJNLPNONOPOJJIMRUUROXeaamfproryzgehhcilfqlflmgiklsmpwutpnvrosrsutqssutsuvvvyvutvlkuumrvqlnlerMGEEFBA@AD<BA>A=::=?;>?AB?@BEGJFJGIGFFFDCBAAEFCBBBDEEGGHFLPLHNJJLKIFHEFECCHHHKJGKRNCOONQPOONOPKKKPUWVUTY`_]ianinhrsbeffdhhfnifmmhkkmriqvusqmvnoqrswsrstuvvvvwvwvvtwuksunutsqskksMGGEGAB@DE<AA@C<8:=>:@=@C@@ADFIEHFFHFEEDCEBDIFCGEAEGEFFGEIMKHQMJKHHIEFHHECIIIKMKPSNDRSRQSNPMOPMLNSWVXYWY^[]d`icjigk_defchggkggkmkmlpqgttursnvoqprtxqssuvuyvvtxuuwxnouorsuqqipzMGGGHBBBEE<@CBD<7:>>;>;@B>??CEGDFDDGECECDFFFJEEIGBGHFGFECFJJGMJLKHJKFIHJHEKKLLNORTOHTUTQTPRMNROMQWZVZYW[^ZXa```^hec`deggjhhjghnllomqpiuuxrrpupppruvpusuvu{~}xvtwvvvwplupmsunossyMHHGIDBCHE=@EBD=8:>>=<<BB=@>ABFCECCGCCDDFGGGIFHKHCIHGIGFDHKIGJHMKJKLHKJMKINLONORUVOLVVTQTRRLOQPOTZZY\ZZ]`_]_c_\bdlc`dghr
hgjfjnnponsqjtuxrsstrnpqvrquruus~y}uuvvvvxriuqkrtlqwquLIJHJFBDGE=AGDD@:<>@?>?CB<@>AAFCEDDGDEDFFHHFHGIKJEJHHKHEFLHHHJGLKLLLIMJMNMOLPPRUVWOKVVUSSRQLORRQV[[]^[]^`_a`bf]d`fh`eijdssfjhglprqossnswwpuvtsmoruorspurvrtvuuuwvuwsgtrkqrkrwpwJJKIKGBEDE<AFDDB;??A@@ADA@B>ACHBEDFGEHDFEIHFIHJMHHJJILJEJKHIJJGKJLLIIMKMNNOLOQRUWVMNTVUSRQPMNTSRW[^^_]^``aab`ddebdibdijgvlkigmosqpqpprywruutsmmssmqrotuuspswtuuwvuuufqskpqjrvpwJLLKLGCCAE<@EEDC=AACBBCEACDAAEGCGGHFEIECGIGGJFILHIJMKMLFKIHKKNQKRPLRLJMMNPPPUOWXX[NSQW\ZSVPNTUTTXZ_bb_da^ac_afcabhnhbihhmxvmhinosrpqrrrvtsusssnksqmprotvsqquvuswywutucmtkopjqtqwLMKLLGDA@D>>DEFC?CAEDDFCBEGCBHFBHIIGHJFDKJGHJHIKGJJNKNLILHKLJZfJd[JlRGNM_nUls[qpbwcRPbvuhucavaXnqbdvimzf\lt`lkV`wvijghfglmjmojmosrprrqrsrssrtrnltonpqquurqstvvuuywutt`ktkppkqsryLNJJJFB?@C?<DDFDCCCEEDFBEFGDDJEEIKKIKLGGNJHJKGKJIJJNLMMLLIMML[sbdo]llULNer]geqlntgpi_aYnmbppbkjjgoqtetno\pvgpOLryvkaakeelxmkvlnosrprqpqrqrrrtrmmsnnoprutqsstuuutwyvttbmukpplrrr{KLIHGED?AA?=BEFBECEDEEDBHHGDDKHGKMMJLLFJNHJKJIKJJIJMMNMMMKNMM[rponppkjLOPmXNibtrpamov\YlP[mmZqmkplxxtsip]`slqkUuyxoc^kfbgppjioppsspqpqqrrqqrrtlmrmmnorutqtrtuutuuzvutenukpolsrryJKGGEEDBAB=??EGBGDHEEDBFIHHEGKJGMLNJLMGLNIMKHIMIJIJJNONNMLNML\hdu]lqVkMOQnUZk^klvaldtTecNlYl\toljlxjwuho]`skhWbcw|oc`ghacityknnqsspqpqprqppprukmqmmmoqstrsrtvvswvzvuthoulsomsrtvIMFIEEDCAB<B@BFCGFKGECCHJHHFILKFMKKRRLHMMINJIGMGJJHINOMNLJMMJZtppoqqljOQRnYskgooqqomt^nXat_nopoqsoousttj[^tcwxrjnzhaacfabjmtupstvsqppqort{~}wlkqnlmnprsqttsuutxxyytukoumupnssvtIKHJCDDE@@=CCAFCHIMHFCFJLIGFJMLFOJJWRKGKJJNIHIKIKJIIKLMMLIKKJSkbYi^^ibrrZ_Yjo_eeUk_c[aaQ`mh\j\nijd[oedp\Z\k[mqcpsldgcdg``kmppotyruqopqny
vsnkmmonqrttrtuuvyxxsunqunwqrutwrHHFJDECFA@AEDCFBHJLGFCFKLIEFJOLIOJL[QJFHHKMIHJIKKIHIGKKKKGHJIKKLJIJLMS[]TPUMQONOOVQOPQNOQJJNPQdqiTYV[[\UY[]X]\\cfaafbcf_^fkmhmtxrtroppt
zpmmlkqsttrtvtuyyxuvqruovrtsuusHCEGFF@EC?CGDFGCIKLGFDGJLHDGIPKLOKLWMIFEGIJHIJHLJIGHHJHHHEEKHHJNKHO\V]O]\`^OXYS\\b^MYZMXaRKYaZS`d\aX[ddVVX\YZX\VY\^c_d`a_ehkgmttqqtpqr
}rkiorssstwyyxyxwxtqxrxsqrurtPBCDLMACCBDIEGGFKJKGEEJJJFEHHPJLMJMRIHEAHFJIKKILJIGFJHEFGEEJFBILIJT_Y_X`a[`UXZT]^Z_RY\P^\YN_\^S[^d^Z]`c_Y_b[`^[UYYZ_^ccbaceiekrpoppnow
{
uqprrsuyzzyyxxxwryvxrqxvtvaSJJMIDCACFGEGGIJJIIDFKKKEFIINJNLHLNGHF>HGLIKKJKKIGEIFDDEBFJD?IKHNZbY^^a_RTSW__\]Y^QY\MV_WKQY[Q[_ba]^ca`babcceZRZWW]Z]d`__cebhommllllu
yu|
}wrrtwyyyy~}yuyvvrnzwvxYQJFCGEBDHHFGHIFGJGHFHKIKDDJJMMLLHJJHIG@GFNJKKMKKKIGIEE@DAHIA>HIFO]`Z[d]_TQRX]\\\_[KW\LR\YIM^QQ]_bccccb\dbadcfXRWUT\X[a_^_aa_dlkmjklnv~uz|
zrsuu{
~xpzwvx\RMB@IFCEKIFGGIGGJFFFILJNECJJLNJLIKKIIGCHHQMKKOMKKIHHFE@EBHHA@FECS]Y^X_X_[]UXXP]\QKJV^X^[]VZaRR__bb``bb_cbaddaXPRRS\S\]]^^___diglknnp{{|~{
srw
|x\SKBAGFDGMRHDRKFHHHDFKIMPEGIJKNLLJLLJIGDHKQOMLPMMKLIJDEAECHFAAFCAUUE\T^SV`XNTUMYZLJKT`a[_X_^b]OYb\``^bca]baW`_UQPQRYS^\[]]^`bffflfoow|{{}
zo
~INFDFFGDIScQEW_IGGHDFMJPPFIIJKNLLKMLJJGEJNQQNNPMNLNILBEACCFCB@CD?LGCLLOOOMFMFFHIGFLKMOPILOPPSPLQTSUYXWYWWcVNRTPQPOQVT\YY[]\aaefdhdlmqsszy{z~{}{
}KIEEGFGDKN^MHHYMGHJHGMLQQIKJKKNMUNOKKLGGKPSSNPPNOOOILFaED^LDfbCLZG^\smOLVnYKCO_TkVgI]WU^DLQULMSVQSTXVTXTT\TOeZhheZUkTXWU[\[``abbcagignlhrz}}~}}zr{z{
~z{LIEFFHEELPTJKG`THJOJIOMRQKMKLORUROPJLNGIMQ[YOPPNPQPJKQQI|YYrsWPmGqnoaVQqqtOBjsnqspSo_[nX]V\XUkhU]VcY`YZ^UUWituu`av_Yb\\f[_aaab_acgmom`pwtx}~vxzmv~tx}|~|z~wwNIEHMMBDLLGJLFRVLKOHLRXWQNOOMQTNOQPLLOHNPS[ZTQROPPQLIZx]TxdhXRSPvftlpbnfkRrNLwmjrpsrqrpoo]ezuxqqzq~r}ku}aRh|esspss|}p~xor```bb[bahlnkblfgmw~~{xwtvziq~nt|~wx{~x|u|||ssNKF`]GADMMHKKHKPOMNJNV^YULQSNYYLSSSNLPIRRTYWWQTPPPRLHgxlcxqmZJKTypumubnvPddHevqmwojfxxiWrQhzmijzz}lxzphnXuujvuqash}ilx|o___cb\_degjjegbcdllppstsssyqrxbmtgry{ssuy~svzn|}yxrnMJRtNCBEPQHKLJLQOOOMPY`ZXKTWPa^RVQYSMPJSTVXWWPUPONRJLrouuquqch`VnKqp^GhyWvTKhx}w`y{sm`]modSgrunmypwkustqlm\s~zkmy|lun|kqwux^__b_^`edighfe^bbiiijknokqnmjpacfdowxompsynqpj{ztromKKZVHGEGRQJMNLLQQPPPQW\YUNVYUfXRRY^TMNJTTWWYWOSOONQIRmHiwK`dvvTVlNnl{rajguTKVkg|lmlw^Zpz{_`zscroxqgc|ir{]TKl_vuljv|{nyl|p]^^b[_ceegfeec[ccikkrsrwgmihdg`alagsrkglmr|kmhk{tmmkmOGJKHJHHRQMOPLLSSROSRXRWTPWZVVTTTa`QONKTSSQVVOOMNOQKHQNPULKKRSRQROVUQQORRXXPMOUTWXXZZTQRW[WWW[ORTWWXQ]XV\UTOXRWXXYZ`\hs_\[Y\]_cZ_ddegddcbZdbgffmnmuffgc`f^]g`dlgegkhpzhggkujhhilPIKKLMKJTRNRQPLVUTPTUXUZVR[]VUTWUYXOOLNWTPNUSNPNLQPKIQQKQMJJOQTQPQSRJHMOPQQPPPSURXW\WRRPQUUVSZQNRRWTSXUSXTSQUTUVYYX^Z_a]\[Z\\`c\^bcdgeeecZ`adabhhjncad^_c]Zc\bma^ffgmsdihkkedcfhQJKKNOLMTQOTQRMXWUTVXWWZVS\`VWVYUXTQPKOXSPNUPMQOLSPMOUSNQNMNQSPTPQTTNKMORTTQQQUVSXZ[YRURTXWVY\SOSTWTSYTVXTRQWVVX\Z\`]VY_]^]\]aa^[bcchgfdcX``b^`hegea^_]]^ZZ_Z_g`^^]chkahfhfd`bdbPKMLPQLPUPPTQOQZYXWY[ZXYV]jdVXYZWVSTOKOVTPOTPPQOMRQORXTQQOMORTMWQSTUOMNQTVURRRTWUZ]\ZVVQRWXU[[VPSUUTUXSWXTRQXVV[_[_`_V_]^`]\`___ZccehheebYb`b^_fdc`b]\\\\YZ[X[b\^]]_b__bddbd__`\PMNNRQMRSPSTQOV\ZZW[[\YZ[dqmhd_[YVVXRMMWSMMRORROLPSRU[UTPPLOWUPVRSRXMOPRUXUTTRTXX[^]\[VROUWU[ZVQSVTUWUSXZSRQZWW]_[```Vb\`a]`b_\`]cachiegaZc`a__ee_`c[Z\[\ZZYYW\Z\Z`^`[^^a`_c\Y`ZQNONVQPUSPUUSPW\\\Y^\_W\^jpwyc\[VVYRNPWSNQQPRTRLRTTY[WUORNRWURRTQRYOQSTV[VVVSVZX]^\\^VSNTVV[[UQTUUWXRSY[SRR\XZ^_]ba`Wb[cb^ac^\bab_dgieg^\d`a`acd_b_ZZ^[\[XXYWWZZZa]][]\\Z]`W[[ZPOOOYPUUSRXRTP[]^]\`\`U\\hjr}slh\UYWQOS[SRQSRUUUKRWVZZZSOSQUUTRNVQRZRTUTX]WXXSW\X^]YZ]UUNVVW^ZWQTUWXXSVY[TRV]Y]^a^cc_Y`[eb_dd^^cca^efieg_^daaabcd_b^X[_[\[XXXXW[Z[`][[\[XZ[^V^Y]POOR[PZUVWVTTT^^`_^b\`U]^bkyum~l[UZVQQT\TTTUTVYWLRZV\[\RPUSWUUROWQSWSWUV[^X[YUZ^X_^Y\YRWRYYY_YYRTUYYYUWY[UTZ]]^ab`ed]^]]eabfd^^dc`\gehfeb`ea_aabb_`^WY^Z\\ZYYWV]Z]^[Z[\[WY\]VXW]SOPWYQ]UWYWWUX_`aa`c]`U]^beev{iYYZTVTV\XWWVWW]XOU\Y^]]TSXRVUSQSWQSVTXXX^^X][V]_X__X\VQXTZZZaX[TVWZYZWXYYWV]_`_dcbfe^b\`fbdfd_`dba[fchfdfaf__abaa`_^VU]Y[\[Y\YY][[[XXY[ZZZ]_]TY]UNTZVT\UWWYWV\`abcac__V[`da_zupiZ\ZVXVX[ZY[YXY`VOU][`a\TUYPTVTRUUQSUW[[\__Z_\V__Y]^Y]VRXWZY\aY]UVZ[Z[ZZXZXY__``dcdeecdZbfcgfe^ab`c]bciedg`h^bbcaa`^_YT[ZZ[[X\XX\[Z[WWZXX\[\`]V]]SOVZVVZVYVXWX^`badada^YYadb`kfh_]][WXYZ\\\_[Z[bVSW^]ac\SVYPVUUUUUSUTX]]_``]a]Wa^[^\[^XUXW[Z__Z^WX\\\]][Z\WZ_a^`ddeffgcYcfehgd^c`_ec]fidei`g^cbcaa`__\XYZYZYXZXW[[Z[WXZTZ]\[`\U^bMRWZWWZY[\XWY^`baeada]^Yacb_a`a_\]]XX\[]]__\Z]cXYX]`cd_RXYPWUWWWVVWV]]^aba_b^Ya]]^Y]]YXUV[[`^\_YY^]^^`\ZZY[_b_cfdfgfhcZefgigc_c^afeZiicficf_bbca``_]]ZW[YYXXZYWZ[ZYWYVU[]]]``bbxKWW\YW]\\]ZW\]_`bdbca]`Xbcb`cac^\]\XX\\_]`_][`d\\XZbecaR\YOXVXYXYWYZ`^abc`ac_\b]_][^]YYTX]\__^_[Z^^`bb[[W[]`bbdfdgffhe]eghifcab[cg`\iichife`bbca_`_]]\Y\YXWXYYW\[ZWVXPXZ]acffrkJYW][Z_]\^\Y][^_bcbaa]b[bdb`cbb]][ZWXjq`\`_]\ac_^YYcedaT_ZQYW[\[[Y[[c`ccc`bda`c^`\^^^YXU[^\\aa_][`abfb^[S\_`cddfegffgf_fghhgdd`[eg^ahhcihfc`bacb___]][Z[YXXXVZV\[ZVVVMXX\gikhuxvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzz{zzz{{{{{{{{{{{{{{{|{{{{{{{{{{|||||||||||||{{{{||||||||||{{{|||||{{{{{{{}
~|||||||||||||||vvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwwwxxxxyyyzzzzzzzz{{{{{{{{{{{{{{{{{{{{{{z{{{{{{|||||||||||{{{{{{{{{{{|{{{{{{{||||{{{{{{{|
}|||{|||||||||||vvvvvvvvvvvwvwwwwwwwwwwwwwwwwwwwwwwxxxxxxyyyyyyyyyyyz{{zz{zzzzzzzz{||||{|{zzzzz{{|||||||||||{{{{{{{|||{{{{{{{{{|||||{|{{{{
~|||||||||||||||vvvvvvvwwvwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxyyyyyyyyyyyzzz{{zzzzzzzzz{}}}}|}|zzzzz{{||||||||||||||||{|||||{{{{{{{||||||{{{{{{
~||||||||||}}}||upooooppz~}}}}}x))***)+=?>>>>>m~~{¥×ÓÓÓÓÓÏÄÅÅÅÅÅÇÒÔÔÔÓÓØZ%+++*"ÛÒÒÒÒÖº}~~}|||||||||||||||||{||||||||||{{{{{~||||||||}}|||}}upnoooooz~y1333332j{éääääåàÔÔÔÔÔÔÖãåååååëTïååååéÇ}~}}}||||||||||||||||||||||||||||{{{~|||||||}|||}}}}vuuuuuuuvwwwwwwxyyzzyzwopppppprrrrrrrwzyyzzz~wsssssr|
|}}}}}}}}}}}|||||||||||||||||||||||||||{{~||||||||}}}}}}}vvvvvvywvvz{x{xwvy|zzyy}yyyxxxxyyyyzzyyyyzzzyxxyyyyyyyyyyyyyyyyyyy|}}}}}}{zzzzzz{||||}}}}}}}}}||}}}}||||||||||||||||||||||~}}||||||}}}}}}}wwwvvw}xww}zx}xwvz}zz{y|{xwwwwxxxxxyyyyyzzz{{{{{{{{{{{{{{{{{{{{{{{{{{||||||||||||||}}}}}}}}}}}}}}}}}}}||||||||{{||||||||||~
}}}|||}}}}}}}}}}wwwwwz}x{x||w{xwvz~zy}x|zxxxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||||||||||}}}}|}}}}}}}}}}}}}|||||||{{||||||||||}
}|}}}|}}}}}}}}}}wwwww}~ywwx{z{xwwxy}y|z{zwxxxxxxxxxyyyzzzz{{{{{{{{{{{{{{{{{{{{{{{{|||{||||||||||||||}}}}||}||}||||}}}}}|||||||||||||||||||~||}}}}|}}}}}}~~~wwwwwy|y{x|}y{xzzz|||}{}{xxxxxxxxyyyyzzzz{{{{{{{{{{{{{{{{{{{{|||{{||{|||||||||}||}}}}}}}||||||||}|}}}}}|||||||||||||||||||
||}}}}}}}}}}~~~~wwwwwvxxywyzxzxyyy{yzzy{xxxyyxxxxyyyyzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}||}||}}}}}|}}}}}||||||||||||}||}}}}}}}}}~~~~~wwwwwwwwwwwxxxxxxxxxxyyxyyyyyyyyyyzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||||}}}|||{|}}}}}}}}~~~~~~wwwwwwwwxxwxvyyxxxxxyyyyyyyyyyyyyzzzzzz{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{||{||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}||||}}}|}}|
||}}}}}~~~~~~~xxwxxxxxvqdj^jmyyyxyyyyyyyyyzzzzzzzzzzz{{{|{|||{{{{{{{{{{{{{{{{{{{{{{{{{{{||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~~~xxxxxxxymdbe__^oxyyyyyyyyyyzzzzzzzzzzz{{{{{{|||||||{{{{{{{{{{{{{{{{{{{{{{{|||||}||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
~|}~~~~~~~~~xxxxxxyndegedb^fxyyyyzzzzzzzzzzzzzzz{{{{{{{||||||{||{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}|
||~~~~~~~xxxxxywgedefdea_iyzzzzzzzzzzzzzz{{{{{{{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{|{|||||||||}}}}}}}}}}}}}}|}}}}}}}}}}}}}}}}}}}}}}}}}|
~||~yyyyyykeabeeaee^bxws{zzzzzzzzzzz{{{{{{{{{{{{|{{{{{{{{{{{{{{{{{{{{{{{{{||||||||}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
||yyyyytccedcfcghdfld^s{zzzzzzzzzzzz{{{{{{{|||{{{{{{{{{{{{{{{{{{{{{{{{{{|||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~
~||yyyzwdacgbbd][e_a]^`ahxzzzzzzzzzzz{{{{{{|||{|{{{{{{{{{{{{{{{{{{{{{|||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~
~}}yyyoobbbd^cg_]aa`\_db[m|zzzzzzzzzz{{{{|||{{{{{{{{{{{{{{{{{{||{{|{||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~}yzp]bedbd^fgg`Ybbace_\]s{{zzz{{{{{{||||||||{{{{{{{{{{{{{{||||||{|||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}}}}~}}~~~~~~~~~~~~~
~~yzlbdgcbgfa``dabedcdc^\bu|{{{{{{{{{||||{{||||{{{{{{{{{{{|||||||||||||||||||||}}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~
~z{tggffddff`^_acehde^bd`t|{{{{{{||||||||||{{|{||{{{{{||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
zzmhccgfgegffgbedebg[be`v||{{||||||||||{{||||{|||{{|||||||||||||||||||||||}}|}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~
{ziidcjfa`fecccgidcb`bdbt}||||||{|||||||{||||||||||||||||||||||||||||||||||||}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
vsedgcdfebefgdfhfec``cd`q}||||||||||||||||||||||||||||||||||||||||||}||}}|||}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~
~~ssgeddeijhfggcaffefgfeecu}|||||||||||||||||||||||||||||||||||||||||||}}}}}}|}}}}}}}~~~~~~~~~~~~~~~~~~~
~ttsu}~~trgdecfijiecec`fddggbbeap}||||||||||||||||}}}|||||||||||||||}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~sssstuxuuttuvuupfcfehhighgefeb_defc`bgw||||}}}}}|||||}}}}}}}}}|}}||}}}}}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~
~ssssssssttttssuoccagehhgjfdegfhfcbeb^by}|{{|}}}}}|||}}}}}}}{|}}}}}}}}}}}}}}}}}}}}~~~~~~~~~~~~~~~~~~~~~~~
~tsssssssssssssurgeedejhhgfihgceebdchdg{xusstvvyxvtttvwwwvtttuuxwxxwwz{|}}|}~~~~~~~~~~~~~~~~~~~~~~|{{}~|yyvvvy||zzwvwy{}{x
~usssssssssssssushegheklhjgijgggfddbednuttsstsssssssssssssstssssssssssttuusuwxy{~~}~|}x|~~}|xuvwywxvtssstutssssssstsssttstttsusttssssssrsssvvichjhjlefilh`fedc`ddftuuutttttttttttttttttttttttttttttsttssssstvvuuwux|~}~|zxustuuutssssssstttttttttuutttuuttuutuuuut
vsssssssssssssvvsggjfhgfhhfdigccgeefpvuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuttuttttttttstttvuuwvtsttttttttuuuuutuuuuuuuuttssssttsstttttuutu
wsssssrrrrsssrvvund]cgeikhehggjjigepvuuuuutttstttttttuuuuuuuttuuttuuuuuuuuuuutttuuuuuuuttuttuuuuuuuuuuuuuuuuuuuttsssssssttssssssttttttu
xsssssrrrrrsssvvwwibhhgjkihfddefihputtttssrqrrtuutttttttssrqqqqssttttttttttutrrrstttttuuuuuuuttuttttttttttttttssssssssssssssttstttttttu
yssssrqrrrrssswwwwljhdhikvzkefehgmrststsrpppqrstuttssrrsrqpoooopqsssrrrrstttsqpqrstttttttsstsssstttttsttttttttstttssrrqqrrsssrsssttttsv
yssrrqqrrrrssswwwwssjgiihy}qnulnpqrrrqqpopqqqstsssrqqppnnnmnmnnnpqrrrrrrrrsqpoopqrrssrqrrrrrrrrrrrssrsssssssssssrqoonnooqrssrrssrrssrv
xqpppqqrrrrssswwvvwvrqtsnv~vsxppprrrrqqppqqqqrssssqpqpoonnnnnonoppqqqqqppqrponopqqqqqppqqqqqrrrrrrrrrqqrqqrrrrqpoonnmnmnoqrrrrrrrrsrqxwopopqrrrssssrvvvvvvwvvusy~wwwopqqqqqqpppqrqrrssrrqppoopoooooooopopooooppqooopppppopoppqrqqqrrrrqqqqqqqqpppppqoonnnmmnmnopqqqqqqqqqqp{
vnopppqqqqqpppvvvvvuttssq}}}sopqqqppppqqpppqrrqqqpopooppooppooooooooopqqpnoppoopooprrrrqqqpqrqpqqqpppppppppoonnmnnnnnonopppqqqqqqqqp
uooopqqqqpppppvvvutsrrrrqyppppoppppqqqqpqqqqqqpooppppppopqppooopoooqqppoppooonopqqpppopooppppppppppooooooonnmmmnnnnonoopoppppppppptnoopqqqppoopovvusrqqqqqprppppppppppqqppqqqqqpppppppppqpppppppppoppqqpppqqooonopppooooppooppppppppppoooonnnnnnmnnnmnnoppoooooopsqu
tooonooooooooovutsqqqqqrrtqqqqqqqqqqqqqqqqqpqqqqpqpqpqqqpppppqqqpqpppqpppppppppppppppqqqpqppppqppqqpqqqqqqrqrqprtrrttttuvtstttuwwuoooooooonooooutsrrrrrrrrvqrrqqqrqrrqqrrrqqqqqrqqqrrqqrqqqqqqqqqqqpqqqqqqrssrrrsuutttttttuvwwwwwwxxxxwwxxxwvwvuvvvvwxz{|{{{zzzzz|
wqqqqqpnnpoppovtuussssssuyrssrrrsrrssrrrrrstrrsrsssssssrssttuuuuutuwxwwwwxxxwxxxyyyyyxxyyyzz{{{{{zzzyyxwwwuvuvvwyzz{~~~}}~~~~~
|zzyy|yxxvuvvtyvwxwwvwvvz|~~|vvwwvuxzxxxxwwwvx|yy|zyy|{yyyxxyyzzyyyxxzzyyxxxxwvwwxxwxxyyz{{z||}~}~}{{{{zyzyy{{~~~~}}}~~~~~~~}}}}|{{{yxxxxyyyxyxyyyxzzzzzz{{{|}~|{{z{|{}|{{{{{{zyxyxxz{zzzyyz||{zz|||zzz{}}|~~~~~~}}~~~~~
}zzxxwxxxxyxxyzzy{~|z|}}{|}}}|||~|}~~~~~}}||}}|}|}}{}}|||}}}}~~~~~~~~}|}}}}}~~~~~~~~
~~}~~~}}}~~~~~~~~~~~~}~~~~
|||{|}||~~~~~~~~~~~~~~~~~~~~|}||}}~
}||~~
}}}
~~
}}~~
~~~~~~
~
~
}}}~
~~~~~
~
~{z
~|}}}~|{|
~}~~~~~~}}~}}}
}|}~~~}|}}|z|
~}}}}~~}}}}zzz~~
~~~~~||}}~~}}}}~}|zzz~~}~}}~
|}}~}}~~}~~{}~}}~~}}}|{{{zzyz~~~~|~~~~~~~}|~~~~~
~|~~~~~}}~}~~~}}}|{{|zzyyy{~~}~~|~~~~}|~~~~~~~~~}||}
~~}}}~~~~}}}}}|||{zyyyy}~~~~~~~~~}~}}{|~~
~~}}}~~}}}}}}}}|{zzyyyy~~||~}~~~
}}}}}}~~}}}}}}}}}|{yyyyx|
~
~}}}~~~
}~}}}}}}}}}}}}||~~~|{yxwxyy}~
~~}~
|}|}~}}}}}}}}}}}}}|{{|z|yxy|~~~
||||}}||}}}}}}}}}}||{z|xyz{|~|~~{||}
~
~~
}}||}}|||}||}|}}}|||{z{|zzz{|yy}}~|{{~~}~|~||}
~{z|
~~~}||||||||||||||}}||~~{z{zxz{z|}{~}~}}}}||}~}~~||~}{}~
~}|{||}|zx{
~~~|||||||||||||}|||||||y{{{xxy{{z|~|~~}~~~~}|}{}}}|}||}~~~
}{z|x~w{~~~~~~|{{|||||||||~}|{}|||{|||zzy{|z}
~~~
~~~
~~}|~~}}}}}z|}}~
{z{ywz}~
~~~~}|||}~}|}}}}}}|~|}|{}||z{z{}}}~}~}~}||~}}}}|{}|~~~~~}|~}~~~~}|||}~{{}w~vx~}|}|}~~{~}|~~~~~~~~~~~}~~}|~}~}}|{|||z{z}~~|}|}|}~~|{{}~}~~}{{{}{z{{{~
~}||~~~y}~v{vx}|||{}}~~}~~~}~~~|~~}}}{{}}|z||~||}|||||}|}{~{{{|||}|{{{{||zz}z~~
~{|~~|z~xyvw|||{{}|~~~~~~~}||}}|}}}}{|~~~~}~|||||||~~{|{||||}|}|~|}||{{|y{|{{}{}~~
|{zzy{}z|~~y|yxxt|||{|||~~~~}~|z|}}~}}~~}}~{{}}}}}|}|}}}~|}{}|}}~|~}}}}|{{z|{||{z{{zzz{~~
~zxyyz~~{yzx~s|||{|||~~~~~~}~~{~|}~~}}}~}}~}|||}}|}|}}}~}}~~|{{{||}|{z{|yzyxy{~
~~{zy{}}y|zr}{{|||~~}}
}~~|~~}|}}~}||~|}}|}}}~}~}}}{|}~||{|}zzyyzy{{~~
~~~z{y}}zzz}q~z{|}}}}zx~
~}~~}}~~~}~}}
}~}~~}}}|~~~}}}}|}||{|}{{{zzz{{|}~}
~~~}yzz}|yw{t{|tw}~}{{vv~
~~}~}}~~~~}~~~|}}|~~~~}|}}||}}||{||{{{|{|||}|
~~~~~{{z||{v{tw~vr{~~{xuw|
~~}}}~~}~|}}}}~~}}~}~|~~}}}{|~|}|||{|{|}
~~~~~~~~~z{z}}uqz|zqz}}yxtt
~~~~}~}}}~}~~}}}~}~~}}~}}}~}~~}~|{|z|{z
~~~~~}~~~{{z~~xry}qzx{xytu}
~}}~~~~}}|}}~~~~~~~~}~~
~~~~}{z{z|{z~~}~~~~}~}}z{|
{{ry{|pwuvwyvtz
}}}~}~~}~|}}~~|{{z|{|~~}~~}}}~}}{{zx|vyz|qtxwvxury
~|}}~}~~}|~~~~}}z{{||}}|}}~}}~~~}}}~}}}}}}z{{|v}yxzzruyyvwwsu
~~}}}~~~~}||~~~~{{|||}}}~}z~}}y~|||~}~}~}}}}}~}|}}}}z{z|v|zw{xrvy{vvvst
}~}}}~~~}}}~|~~
~~~
}}}|{||yz{z~y{yx~{{{~}}~}~|}~}}}}}|~~|}|y{|xz|wzwsxwzsvvst
|~}~}~~~|~~}~~}~}~~~~~~}||||zyvyyzyvyv~|{{{~}{}}}~~}}|}}}}}}}|~|}y{{zy|wxxtuuxrwwtv
~~}}|||~~~}~~~~}~~~~}~~~~~~|}||{|uyyxxxyw{|{z{~}~}z{~~~}~}~~}}|}}}}}}|{}||z{{{z{wvxursvqwyrx
~~~~~}~|{~}~~}}}~~~~~}}}~~|~~~~~~~|}||{|xw{xuywwy|z{{}}|}wz}~~}}~~|~~}}|}}}}}}{|z{}zzx{|zz{xtxuqrtpxxqy
}~~}|~}|~}~~}}|~~~~}|~~~|}~}~~~
~}}{{||yw{ywxwwx{{z{|
}{zwz|}}||}}}~|}~~}}||}~~}}||{zz|{{zyzz{zxswuqqspxwq{
~~}|~}}~~}~|}~~|~}}}~~~~~||z|{{xzzwsvwxy{z{yz~{{wz|}|||~}|}}|}}}||}}}}}}|}{y{|||zzzzzzxsvupprowvr{
}}~}~~~~}~|~}~~~|}~~z}}t|}zzzz|yyzz
wy|||||}{||||}}}||}}}}~}}}}zy}||}zzzzzzysuuooqowts|
~}~}}~~~}~}~zz|}|{}y{zzxyxy{||}||{||||}}}||}|~}~~~}|z||{|}{yzzzyysuuooqpwst}
~~~|~~}~~}}~|||~{{~yz{z{~wwy{|{}||||{}|}|}}|}|~~~~|z|}{}}{yz{zyystunsqpxruz
~}~~}~~}~}{~~{|}{z||{yxxy|||}{||}}}||}}~}}}~~}{|}|||{zy{{yysrunvrpxquv
~~~}~}~}~~{}|}{||wxuxxy{||}|||||}~~}}~|}||}{z{yz|xzsrunwqqzqvw
~~~~|z}|{}~xwvyyy|}}|}{||}}~~~}~|~}}~|w{zz{yysqunwpuzqvy
~}~}}}|}z}zyvzxy{{|}}{|}}}}~}~~~}yy{zzzysruowqwysw{
~~~~}|z|{{w|yyy{z}~}||||}~~}~{{{z{ztpxrytvxtw{~~~
~||||x|yzyz|}|{||}}}||~{{{zzzupxwyvu|uv|
}
{~~}y|zzz}||}z||}}|z{~~~}}||}|vrvxxvt~vu}
}
~
{||}zz{}}||z|~}|}}~~~~~|}}~~}|{xvvv
~~
}}||{||}}~~~}~|||}}~~~}}~~~}}}~}}~~||
~
}}}||||~}~}}{|}}}}}~~~}|~~~~~}}
~
~~|~}}~||~~|z|}}}}}~~~}}|~~~~~
|{wy}~~ruv~
}uy~
}y|~{
~}~}}}{}~~}|||}}}}|}}}}|
h
j|{qq|sstt}usqtpurstv{}uvy
hzrss|s}}}~}~|}~}}||||}|||~}~}}}
}q{pyv~nypus|vzy
rpvxqvtturstvinrotvnulwm{snym}rsvsvmmxlpylu}~}~}~}}}|||}|}~}~|~
vpt{pru
muovo|uryyxqtwnwhwznpvr~ozyymonzoomw}xpqzprtfu~n{ysoy}}|}|~~~~~~~}}~~
~
quprsoszy~ttu~vnrynjrqmsw|ut|~xquwnyuzqvxuzyqjoyxpkyszozwvvp~~~z~}}}~}}~~~~~
xyrz{pp
x
xyks~y{krz|m{yyt}vnoot|uwqy}}m~uo
zrr{|tpozks|nw~~}}{}{|}}~}~~}~}~|}~~
}w
}~{|{~{||}~}|~~}~~~~~~~}}}~|{|~||
}{{|}{||}~||~}}~~~}}|}~~~~~|}}~{|||{{~
~|{}}{|{}~}||~}~~|~}}~~}}||~~|}|||}|||~z{{}~
{{~}{||}}|||}}|}|~}|}}|||}}|~}{|}|}|~|||zz||}
{|~~|||~}|}}|}{||||||}{{{}|{~|{|}}|}}}|zz{{||
zz
~|~~||}}|}}|}z{{z{|||{{{~{{}{{{~||||}~}{z|z|}
|
~~~}||}}{}}|}zz{y{|}{{{{~||||z{}||||~}|{{{{|{
z{
}~~||}}~}{~}|}yzzy{}}zz{{}|}||z{}||}|~~|{{|~}|
}|{
|~~}||}~}~{~}||yyzyz}}yzz{|{|{{z{}}|}|~~~|{{}~}|
~~~yz}
~{}~~~~~}}~}{}{zyzzyz|}yzz{{z|{{{{|}}}|~}||}~|{
~}}{
~|}}}~~~}}}}{|{zyzzyzz|yzz{{{}z{{{|}~}}}}||}}|
~|~~
}}~~~{||}}}|~~}}~{~{{zyzzyzz{yzzz{{|z{|||~~}|}||}~
~~}|}~~~
~}|~~|}|~||~}|~}||||{{zyzzy{zzzzzzz{|y{}||}~}}}
~}~~~~}}~~~~~
~~||~}|~}{~{}~}~}|||}{{zyzyy{yzzyzz{{{z{}||~
\ No newline at end of file
diff --git a/codec2/hidl/1.0/mts/res/bbb_aac_stereo_128kbps_48000hz.aac b/codec2/hidl/1.0/mts/res/bbb_aac_stereo_128kbps_48000hz.aac
deleted file mode 100644
index 831102d..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_aac_stereo_128kbps_48000hz.aac
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_aac_stereo_128kbps_48000hz.info b/codec2/hidl/1.0/mts/res/bbb_aac_stereo_128kbps_48000hz.info
deleted file mode 100644
index 5fcda0b..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_aac_stereo_128kbps_48000hz.info
+++ /dev/null
@@ -1,469 +0,0 @@
-5 32 0
-5 32 0
-337 1 0
-322 1 21333
-279 1 42666
-280 1 64000
-283 1 85333
-317 1 106666
-318 1 128000
-321 1 149333
-313 1 170666
-312 1 192000
-317 1 213333
-330 1 234666
-350 1 256000
-355 1 277333
-333 1 298666
-325 1 320000
-376 1 341333
-335 1 362666
-351 1 384000
-350 1 405333
-339 1 426666
-329 1 448000
-350 1 469333
-330 1 490666
-359 1 512000
-316 1 533333
-345 1 554666
-357 1 576000
-325 1 597333
-336 1 618666
-339 1 640000
-312 1 661333
-350 1 682666
-338 1 704000
-353 1 725333
-340 1 746666
-332 1 768000
-340 1 789333
-339 1 810666
-333 1 832000
-333 1 853333
-345 1 874666
-340 1 896000
-343 1 917333
-335 1 938666
-339 1 960000
-342 1 981333
-348 1 1002666
-350 1 1024000
-351 1 1045333
-342 1 1066666
-366 1 1088000
-340 1 1109333
-354 1 1130666
-340 1 1152000
-334 1 1173333
-338 1 1194666
-340 1 1216000
-351 1 1237333
-346 1 1258666
-331 1 1280000
-321 1 1301333
-343 1 1322666
-342 1 1344000
-345 1 1365333
-326 1 1386666
-342 1 1408000
-356 1 1429333
-351 1 1450666
-343 1 1472000
-347 1 1493333
-349 1 1514666
-350 1 1536000
-330 1 1557333
-341 1 1578666
-340 1 1600000
-330 1 1621333
-340 1 1642666
-335 1 1664000
-344 1 1685333
-359 1 1706666
-337 1 1728000
-346 1 1749333
-330 1 1770666
-351 1 1792000
-355 1 1813333
-352 1 1834666
-325 1 1856000
-342 1 1877333
-327 1 1898666
-349 1 1920000
-326 1 1941333
-337 1 1962666
-378 1 1984000
-321 1 2005333
-319 1 2026666
-346 1 2048000
-352 1 2069333
-349 1 2090666
-331 1 2112000
-330 1 2133333
-329 1 2154666
-333 1 2176000
-367 1 2197333
-362 1 2218666
-337 1 2240000
-337 1 2261333
-360 1 2282666
-333 1 2304000
-317 1 2325333
-344 1 2346666
-335 1 2368000
-337 1 2389333
-349 1 2410666
-336 1 2432000
-348 1 2453333
-349 1 2474666
-342 1 2496000
-359 1 2517333
-340 1 2538666
-340 1 2560000
-348 1 2581333
-334 1 2602666
-328 1 2624000
-341 1 2645333
-339 1 2666666
-337 1 2688000
-350 1 2709333
-326 1 2730666
-360 1 2752000
-344 1 2773333
-340 1 2794666
-343 1 2816000
-361 1 2837333
-329 1 2858666
-345 1 2880000
-345 1 2901333
-330 1 2922666
-342 1 2944000
-344 1 2965333
-330 1 2986666
-329 1 3008000
-335 1 3029333
-366 1 3050666
-328 1 3072000
-349 1 3093333
-339 1 3114666
-340 1 3136000
-335 1 3157333
-327 1 3178666
-348 1 3200000
-339 1 3221333
-334 1 3242666
-350 1 3264000
-325 1 3285333
-361 1 3306666
-338 1 3328000
-350 1 3349333
-353 1 3370666
-327 1 3392000
-346 1 3413333
-348 1 3434666
-339 1 3456000
-342 1 3477333
-334 1 3498666
-350 1 3520000
-354 1 3541333
-363 1 3562666
-322 1 3584000
-337 1 3605333
-355 1 3626666
-329 1 3648000
-324 1 3669333
-338 1 3690666
-356 1 3712000
-330 1 3733333
-321 1 3754666
-337 1 3776000
-345 1 3797333
-335 1 3818666
-348 1 3840000
-342 1 3861333
-348 1 3882666
-335 1 3904000
-344 1 3925333
-357 1 3946666
-368 1 3968000
-324 1 3989333
-343 1 4010666
-341 1 4032000
-329 1 4053333
-356 1 4074666
-317 1 4096000
-351 1 4117333
-340 1 4138666
-340 1 4160000
-332 1 4181333
-355 1 4202666
-357 1 4224000
-327 1 4245333
-338 1 4266666
-323 1 4288000
-346 1 4309333
-352 1 4330666
-347 1 4352000
-343 1 4373333
-311 1 4394666
-338 1 4416000
-365 1 4437333
-349 1 4458666
-327 1 4480000
-355 1 4501333
-319 1 4522666
-349 1 4544000
-351 1 4565333
-337 1 4586666
-340 1 4608000
-349 1 4629333
-316 1 4650666
-344 1 4672000
-334 1 4693333
-344 1 4714666
-347 1 4736000
-348 1 4757333
-334 1 4778666
-338 1 4800000
-331 1 4821333
-344 1 4842666
-342 1 4864000
-336 1 4885333
-326 1 4906666
-364 1 4928000
-350 1 4949333
-350 1 4970666
-363 1 4992000
-358 1 5013333
-305 1 5034666
-344 1 5056000
-346 1 5077333
-342 1 5098666
-330 1 5120000
-318 1 5141333
-361 1 5162666
-354 1 5184000
-313 1 5205333
-330 1 5226666
-350 1 5248000
-347 1 5269333
-346 1 5290666
-357 1 5312000
-325 1 5333333
-335 1 5354666
-331 1 5376000
-366 1 5397333
-329 1 5418666
-349 1 5440000
-371 1 5461333
-326 1 5482666
-333 1 5504000
-319 1 5525333
-327 1 5546666
-353 1 5568000
-356 1 5589333
-348 1 5610666
-338 1 5632000
-331 1 5653333
-341 1 5674666
-362 1 5696000
-326 1 5717333
-359 1 5738666
-315 1 5760000
-376 1 5781333
-343 1 5802666
-354 1 5824000
-353 1 5845333
-344 1 5866666
-334 1 5888000
-345 1 5909333
-355 1 5930666
-322 1 5952000
-334 1 5973333
-353 1 5994666
-338 1 6016000
-351 1 6037333
-334 1 6058666
-339 1 6080000
-345 1 6101333
-347 1 6122666
-355 1 6144000
-312 1 6165333
-352 1 6186666
-354 1 6208000
-318 1 6229333
-344 1 6250666
-363 1 6272000
-321 1 6293333
-339 1 6314666
-356 1 6336000
-334 1 6357333
-354 1 6378666
-325 1 6400000
-321 1 6421333
-341 1 6442666
-337 1 6464000
-351 1 6485333
-343 1 6506666
-341 1 6528000
-344 1 6549333
-341 1 6570666
-364 1 6592000
-319 1 6613333
-348 1 6634666
-332 1 6656000
-333 1 6677333
-343 1 6698666
-348 1 6720000
-347 1 6741333
-350 1 6762666
-342 1 6784000
-341 1 6805333
-326 1 6826666
-351 1 6848000
-329 1 6869333
-323 1 6890666
-350 1 6912000
-361 1 6933333
-326 1 6954666
-345 1 6976000
-345 1 6997333
-311 1 7018666
-349 1 7040000
-358 1 7061333
-352 1 7082666
-347 1 7104000
-364 1 7125333
-328 1 7146666
-318 1 7168000
-351 1 7189333
-340 1 7210666
-341 1 7232000
-355 1 7253333
-336 1 7274666
-352 1 7296000
-341 1 7317333
-334 1 7338666
-348 1 7360000
-342 1 7381333
-335 1 7402666
-342 1 7424000
-359 1 7445333
-349 1 7466666
-329 1 7488000
-356 1 7509333
-292 1 7530666
-316 1 7552000
-318 1 7573333
-320 1 7594666
-342 1 7616000
-285 1 7637333
-326 1 7658666
-352 1 7680000
-392 1 7701333
-364 1 7722666
-384 1 7744000
-334 1 7765333
-317 1 7786666
-326 1 7808000
-373 1 7829333
-354 1 7850666
-329 1 7872000
-347 1 7893333
-353 1 7914666
-338 1 7936000
-317 1 7957333
-354 1 7978666
-345 1 8000000
-350 1 8021333
-351 1 8042666
-332 1 8064000
-358 1 8085333
-315 1 8106666
-336 1 8128000
-358 1 8149333
-343 1 8170666
-319 1 8192000
-370 1 8213333
-344 1 8234666
-361 1 8256000
-343 1 8277333
-337 1 8298666
-354 1 8320000
-332 1 8341333
-348 1 8362666
-328 1 8384000
-345 1 8405333
-340 1 8426666
-346 1 8448000
-341 1 8469333
-344 1 8490666
-342 1 8512000
-341 1 8533333
-345 1 8554666
-337 1 8576000
-335 1 8597333
-335 1 8618666
-340 1 8640000
-345 1 8661333
-341 1 8682666
-342 1 8704000
-338 1 8725333
-343 1 8746666
-336 1 8768000
-338 1 8789333
-353 1 8810666
-339 1 8832000
-329 1 8853333
-349 1 8874666
-323 1 8896000
-351 1 8917333
-359 1 8938666
-357 1 8960000
-341 1 8981333
-333 1 9002666
-335 1 9024000
-328 1 9045333
-347 1 9066666
-343 1 9088000
-369 1 9109333
-331 1 9130666
-344 1 9152000
-330 1 9173333
-346 1 9194666
-337 1 9216000
-341 1 9237333
-338 1 9258666
-329 1 9280000
-360 1 9301333
-336 1 9322666
-341 1 9344000
-341 1 9365333
-345 1 9386666
-351 1 9408000
-349 1 9429333
-336 1 9450666
-326 1 9472000
-349 1 9493333
-343 1 9514666
-357 1 9536000
-342 1 9557333
-325 1 9578666
-346 1 9600000
-326 1 9621333
-402 1 9642666
-331 1 9664000
-339 1 9685333
-371 1 9706666
-314 1 9728000
-310 1 9749333
-364 1 9770666
-338 1 9792000
-339 1 9813333
-337 1 9834666
-355 1 9856000
-351 1 9877333
-332 1 9898666
-316 1 9920000
-474 1 9941333
diff --git a/codec2/hidl/1.0/mts/res/bbb_amrwb_1ch_14kbps_16000hz.amrwb b/codec2/hidl/1.0/mts/res/bbb_amrwb_1ch_14kbps_16000hz.amrwb
deleted file mode 100644
index 0d82593..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_amrwb_1ch_14kbps_16000hz.amrwb
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_amrwb_1ch_14kbps_16000hz.info b/codec2/hidl/1.0/mts/res/bbb_amrwb_1ch_14kbps_16000hz.info
deleted file mode 100644
index f6a61d4..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_amrwb_1ch_14kbps_16000hz.info
+++ /dev/null
@@ -1,494 +0,0 @@
-41 1 0
-41 1 20000
-41 1 40000
-41 1 60000
-41 1 80000
-41 1 100000
-41 1 120000
-41 1 140000
-41 1 160000
-41 1 180000
-41 1 200000
-41 1 220000
-41 1 240000
-41 1 260000
-41 1 280000
-41 1 300000
-41 1 320000
-41 1 340000
-41 1 360000
-41 1 380000
-41 1 400000
-41 1 420000
-41 1 440000
-41 1 460000
-41 1 480000
-41 1 500000
-41 1 520000
-41 1 540000
-41 1 560000
-41 1 580000
-41 1 600000
-41 1 620000
-41 1 640000
-41 1 660000
-41 1 680000
-41 1 700000
-41 1 720000
-41 1 740000
-41 1 760000
-41 1 780000
-41 1 800000
-41 1 820000
-41 1 840000
-41 1 860000
-41 1 880000
-41 1 900000
-41 1 920000
-41 1 940000
-41 1 960000
-41 1 980000
-41 1 1000000
-41 1 1020000
-41 1 1040000
-41 1 1060000
-41 1 1080000
-41 1 1100000
-41 1 1120000
-41 1 1140000
-41 1 1160000
-41 1 1180000
-41 1 1200000
-41 1 1220000
-41 1 1240000
-41 1 1260000
-41 1 1280000
-41 1 1300000
-41 1 1320000
-41 1 1340000
-41 1 1360000
-41 1 1380000
-41 1 1400000
-41 1 1420000
-41 1 1440000
-41 1 1460000
-41 1 1480000
-41 1 1500000
-41 1 1520000
-41 1 1540000
-41 1 1560000
-41 1 1580000
-41 1 1600000
-41 1 1620000
-41 1 1640000
-41 1 1660000
-41 1 1680000
-41 1 1700000
-41 1 1720000
-41 1 1740000
-41 1 1760000
-41 1 1780000
-41 1 1800000
-41 1 1820000
-41 1 1840000
-41 1 1860000
-41 1 1880000
-41 1 1900000
-41 1 1920000
-41 1 1940000
-41 1 1960000
-41 1 1980000
-41 1 2000000
-41 1 2020000
-41 1 2040000
-41 1 2060000
-41 1 2080000
-41 1 2100000
-41 1 2120000
-41 1 2140000
-41 1 2160000
-41 1 2180000
-41 1 2200000
-41 1 2220000
-41 1 2240000
-41 1 2260000
-41 1 2280000
-41 1 2300000
-41 1 2320000
-41 1 2340000
-41 1 2360000
-41 1 2380000
-41 1 2400000
-41 1 2420000
-41 1 2440000
-41 1 2460000
-41 1 2480000
-41 1 2500000
-41 1 2520000
-41 1 2540000
-41 1 2560000
-41 1 2580000
-41 1 2600000
-41 1 2620000
-41 1 2640000
-41 1 2660000
-41 1 2680000
-41 1 2700000
-41 1 2720000
-41 1 2740000
-41 1 2760000
-41 1 2780000
-41 1 2800000
-41 1 2820000
-41 1 2840000
-41 1 2860000
-41 1 2880000
-41 1 2900000
-41 1 2920000
-41 1 2940000
-41 1 2960000
-41 1 2980000
-41 1 3000000
-41 1 3020000
-41 1 3040000
-41 1 3060000
-41 1 3080000
-41 1 3100000
-41 1 3120000
-41 1 3140000
-41 1 3160000
-41 1 3180000
-41 1 3200000
-41 1 3220000
-41 1 3240000
-41 1 3260000
-41 1 3280000
-41 1 3300000
-41 1 3320000
-41 1 3340000
-41 1 3360000
-41 1 3380000
-41 1 3400000
-41 1 3420000
-41 1 3440000
-41 1 3460000
-41 1 3480000
-41 1 3500000
-41 1 3520000
-41 1 3540000
-41 1 3560000
-41 1 3580000
-41 1 3600000
-41 1 3620000
-41 1 3640000
-41 1 3660000
-41 1 3680000
-41 1 3700000
-41 1 3720000
-41 1 3740000
-41 1 3760000
-41 1 3780000
-41 1 3800000
-41 1 3820000
-41 1 3840000
-41 1 3860000
-41 1 3880000
-41 1 3900000
-41 1 3920000
-41 1 3940000
-41 1 3960000
-41 1 3980000
-41 1 4000000
-41 1 4020000
-41 1 4040000
-41 1 4060000
-41 1 4080000
-41 1 4100000
-41 1 4120000
-41 1 4140000
-41 1 4160000
-41 1 4180000
-41 1 4200000
-41 1 4220000
-41 1 4240000
-41 1 4260000
-41 1 4280000
-41 1 4300000
-41 1 4320000
-41 1 4340000
-41 1 4360000
-41 1 4380000
-41 1 4400000
-41 1 4420000
-41 1 4440000
-41 1 4460000
-41 1 4480000
-41 1 4500000
-41 1 4520000
-41 1 4540000
-41 1 4560000
-41 1 4580000
-41 1 4600000
-41 1 4620000
-41 1 4640000
-41 1 4660000
-41 1 4680000
-41 1 4700000
-41 1 4720000
-41 1 4740000
-41 1 4760000
-41 1 4780000
-41 1 4800000
-41 1 4820000
-41 1 4840000
-41 1 4860000
-41 1 4880000
-41 1 4900000
-41 1 4920000
-41 1 4940000
-41 1 4960000
-41 1 4980000
-41 1 5000000
-41 1 5020000
-41 1 5040000
-41 1 5060000
-41 1 5080000
-41 1 5100000
-41 1 5120000
-41 1 5140000
-41 1 5160000
-41 1 5180000
-41 1 5200000
-41 1 5220000
-41 1 5240000
-41 1 5260000
-41 1 5280000
-41 1 5300000
-41 1 5320000
-41 1 5340000
-41 1 5360000
-41 1 5380000
-41 1 5400000
-41 1 5420000
-41 1 5440000
-41 1 5460000
-41 1 5480000
-41 1 5500000
-41 1 5520000
-41 1 5540000
-41 1 5560000
-41 1 5580000
-41 1 5600000
-41 1 5620000
-41 1 5640000
-41 1 5660000
-41 1 5680000
-41 1 5700000
-41 1 5720000
-41 1 5740000
-41 1 5760000
-41 1 5780000
-41 1 5800000
-41 1 5820000
-41 1 5840000
-41 1 5860000
-41 1 5880000
-41 1 5900000
-41 1 5920000
-41 1 5940000
-41 1 5960000
-41 1 5980000
-41 1 6000000
-41 1 6020000
-41 1 6040000
-41 1 6060000
-41 1 6080000
-41 1 6100000
-41 1 6120000
-41 1 6140000
-41 1 6160000
-41 1 6180000
-41 1 6200000
-41 1 6220000
-41 1 6240000
-41 1 6260000
-41 1 6280000
-41 1 6300000
-41 1 6320000
-41 1 6340000
-41 1 6360000
-41 1 6380000
-41 1 6400000
-41 1 6420000
-41 1 6440000
-41 1 6460000
-41 1 6480000
-41 1 6500000
-41 1 6520000
-41 1 6540000
-41 1 6560000
-41 1 6580000
-41 1 6600000
-41 1 6620000
-41 1 6640000
-41 1 6660000
-41 1 6680000
-41 1 6700000
-41 1 6720000
-41 1 6740000
-41 1 6760000
-41 1 6780000
-41 1 6800000
-41 1 6820000
-41 1 6840000
-41 1 6860000
-41 1 6880000
-41 1 6900000
-41 1 6920000
-41 1 6940000
-41 1 6960000
-41 1 6980000
-41 1 7000000
-41 1 7020000
-41 1 7040000
-41 1 7060000
-41 1 7080000
-41 1 7100000
-41 1 7120000
-41 1 7140000
-41 1 7160000
-41 1 7180000
-41 1 7200000
-41 1 7220000
-41 1 7240000
-41 1 7260000
-41 1 7280000
-41 1 7300000
-41 1 7320000
-41 1 7340000
-41 1 7360000
-41 1 7380000
-41 1 7400000
-41 1 7420000
-41 1 7440000
-41 1 7460000
-41 1 7480000
-41 1 7500000
-41 1 7520000
-41 1 7540000
-41 1 7560000
-41 1 7580000
-41 1 7600000
-41 1 7620000
-41 1 7640000
-41 1 7660000
-41 1 7680000
-41 1 7700000
-41 1 7720000
-41 1 7740000
-41 1 7760000
-41 1 7780000
-41 1 7800000
-41 1 7820000
-41 1 7840000
-41 1 7860000
-41 1 7880000
-41 1 7900000
-41 1 7920000
-41 1 7940000
-41 1 7960000
-41 1 7980000
-41 1 8000000
-41 1 8020000
-41 1 8040000
-41 1 8060000
-41 1 8080000
-41 1 8100000
-41 1 8120000
-41 1 8140000
-41 1 8160000
-41 1 8180000
-41 1 8200000
-41 1 8220000
-41 1 8240000
-41 1 8260000
-41 1 8280000
-41 1 8300000
-41 1 8320000
-41 1 8340000
-41 1 8360000
-41 1 8380000
-41 1 8400000
-41 1 8420000
-41 1 8440000
-41 1 8460000
-41 1 8480000
-41 1 8500000
-41 1 8520000
-41 1 8540000
-41 1 8560000
-41 1 8580000
-41 1 8600000
-41 1 8620000
-41 1 8640000
-41 1 8660000
-41 1 8680000
-41 1 8700000
-41 1 8720000
-41 1 8740000
-41 1 8760000
-41 1 8780000
-41 1 8800000
-41 1 8820000
-41 1 8840000
-41 1 8860000
-41 1 8880000
-41 1 8900000
-41 1 8920000
-41 1 8940000
-41 1 8960000
-41 1 8980000
-41 1 9000000
-41 1 9020000
-41 1 9040000
-41 1 9060000
-41 1 9080000
-41 1 9100000
-41 1 9120000
-41 1 9140000
-41 1 9160000
-41 1 9180000
-41 1 9200000
-41 1 9220000
-41 1 9240000
-41 1 9260000
-41 1 9280000
-41 1 9300000
-41 1 9320000
-41 1 9340000
-41 1 9360000
-41 1 9380000
-41 1 9400000
-41 1 9420000
-41 1 9440000
-41 1 9460000
-41 1 9480000
-41 1 9500000
-41 1 9520000
-41 1 9540000
-41 1 9560000
-41 1 9580000
-41 1 9600000
-41 1 9620000
-41 1 9640000
-41 1 9660000
-41 1 9680000
-41 1 9700000
-41 1 9720000
-41 1 9740000
-41 1 9760000
-41 1 9780000
-41 1 9800000
-41 1 9820000
-41 1 9840000
-41 1 9860000
diff --git a/codec2/hidl/1.0/mts/res/bbb_av1_176_144.av1 b/codec2/hidl/1.0/mts/res/bbb_av1_176_144.av1
deleted file mode 100644
index 1d67af9..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_av1_176_144.av1
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_av1_176_144.info b/codec2/hidl/1.0/mts/res/bbb_av1_176_144.info
deleted file mode 100644
index cc51168..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_av1_176_144.info
+++ /dev/null
@@ -1,300 +0,0 @@
-6027 1 0
-6879 0 33000
-5 0 66000
-532 0 100000
-5 0 133000
-2458 0 166000
-5 0 200000
-475 0 233000
-5 0 266000
-1262 0 300000
-5 0 333000
-554 0 366000
-27 0 400000
-6971 0 433000
-5 0 466000
-601 0 500000
-5 0 533000
-3276 0 566000
-5 0 600000
-658 0 633000
-5 0 666000
-1680 0 700000
-5 0 733000
-610 0 766000
-24 0 800000
-6728 0 833000
-5 0 866000
-764 0 900000
-5 0 933000
-2656 0 966000
-5 0 1000000
-462 0 1033000
-5 0 1066000
-1459 0 1100000
-5 0 1133000
-608 0 1166000
-24 0 1200000
-7038 0 1233000
-5 0 1266000
-721 0 1300000
-5 0 1333000
-3102 0 1366000
-5 0 1400000
-752 0 1433000
-5 0 1466000
-1815 0 1500000
-5 0 1533000
-755 0 1566000
-25 0 1600000
-7657 0 1633000
-5 0 1666000
-852 0 1700000
-5 0 1733000
-3537 0 1766000
-5 0 1800000
-673 0 1833000
-5 0 1866000
-1774 0 1900000
-5 0 1933000
-554 0 1966000
-24 0 2000000
-8028 0 2033000
-5 0 2066000
-715 0 2100000
-5 0 2133000
-3395 0 2166000
-5 0 2200000
-736 0 2233000
-5 0 2266000
-1759 0 2300000
-5 0 2333000
-605 0 2366000
-23 0 2400000
-7651 0 2433000
-5 0 2466000
-619 0 2500000
-5 0 2533000
-2788 0 2566000
-5 0 2600000
-556 0 2633000
-5 0 2666000
-1335 0 2700000
-5 0 2733000
-521 0 2766000
-24 0 2800000
-2274 0 2833000
-676 0 2866000
-25 0 2900000
-6224 0 2933000
-5798 0 2966000
-5 0 3000000
-448 0 3033000
-5 0 3066000
-1950 0 3100000
-5 0 3133000
-386 0 3166000
-5 0 3200000
-1218 0 3233000
-5 0 3266000
-1316 0 3300000
-5 0 3333000
-580 0 3366000
-26 0 3400000
-6673 0 3433000
-5 0 3466000
-473 0 3500000
-5 0 3533000
-2467 0 3566000
-5 0 3600000
-429 0 3633000
-5 0 3666000
-1420 0 3700000
-5 0 3733000
-583 0 3766000
-29 0 3800000
-8492 0 3833000
-5 0 3866000
-720 0 3900000
-5 0 3933000
-3635 0 3966000
-5 0 4000000
-621 0 4033000
-5 0 4066000
-1969 0 4100000
-5 0 4133000
-49 0 4166000
-25 0 4200000
-7416 0 4233000
-5 0 4266000
-947 0 4300000
-5 0 4333000
-3713 0 4366000
-5 0 4400000
-714 0 4433000
-5 0 4466000
-2003 0 4500000
-5 0 4533000
-750 0 4566000
-25 0 4600000
-8470 0 4633000
-5 0 4666000
-737 0 4700000
-5 0 4733000
-4094 0 4766000
-5 0 4800000
-1019 0 4833000
-5 0 4866000
-2160 0 4900000
-5 0 4933000
-828 0 4966000
-24 0 5000000
-9282 0 5033000
-5 0 5066000
-655 0 5100000
-5 0 5133000
-3491 0 5166000
-5 0 5200000
-651 0 5233000
-5 0 5266000
-1906 0 5300000
-5 0 5333000
-662 0 5366000
-24 0 5400000
-9724 0 5433000
-5 0 5466000
-617 0 5500000
-5 0 5533000
-3145 0 5566000
-5 0 5600000
-578 0 5633000
-5 0 5666000
-1592 0 5700000
-5 0 5733000
-569 0 5766000
-25 0 5800000
-10015 0 5833000
-5 0 5866000
-609 0 5900000
-5 0 5933000
-3618 0 5966000
-5 0 6000000
-734 0 6033000
-5 0 6066000
-1748 0 6100000
-5 0 6133000
-550 0 6166000
-24 0 6200000
-8806 0 6233000
-5 0 6266000
-498 0 6300000
-5 0 6333000
-2913 0 6366000
-5 0 6400000
-597 0 6433000
-5 0 6466000
-1235 0 6500000
-5 0 6533000
-362 0 6566000
-24 0 6600000
-6592 0 6633000
-5 0 6666000
-468 0 6700000
-5 0 6733000
-1920 0 6766000
-5 0 6800000
-419 0 6833000
-5 0 6866000
-843 0 6900000
-5 0 6933000
-237 0 6966000
-24 0 7000000
-2687 0 7033000
-5 0 7066000
-399 0 7100000
-5 0 7133000
-200 0 7166000
-143 0 7200000
-25 0 7233000
-12603 0 7266000
-1139 0 7300000
-5 0 7333000
-56 0 7366000
-5 0 7400000
-273 0 7433000
-5 0 7466000
-48 0 7500000
-5 0 7533000
-102 0 7566000
-5 0 7600000
-39 0 7633000
-24 0 7666000
-3635 0 7700000
-5 0 7733000
-46 0 7766000
-5 0 7800000
-647 0 7833000
-5 0 7866000
-61 0 7900000
-5 0 7933000
-824 0 7966000
-5 0 8000000
-691 0 8033000
-27 0 8066000
-4573 0 8100000
-5 0 8133000
-473 0 8166000
-5 0 8200000
-1637 0 8233000
-5 0 8266000
-451 0 8300000
-5 0 8333000
-969 0 8366000
-5 0 8400000
-234 0 8433000
-24 0 8466000
-3361 0 8500000
-5 0 8533000
-168 0 8566000
-5 0 8600000
-662 0 8633000
-5 0 8666000
-129 0 8700000
-5 0 8733000
-443 0 8766000
-5 0 8800000
-183 0 8833000
-23 0 8866000
-2769 0 8900000
-5 0 8933000
-182 0 8966000
-5 0 9000000
-890 0 9033000
-5 0 9066000
-171 0 9100000
-5 0 9133000
-599 0 9166000
-5 0 9200000
-236 0 9233000
-23 0 9266000
-2316 0 9300000
-5 0 9333000
-333 0 9366000
-5 0 9400000
-759 0 9433000
-5 0 9466000
-210 0 9500000
-5 0 9533000
-324 0 9566000
-5 0 9600000
-98 0 9633000
-23 0 9666000
-1107 0 9700000
-5 0 9733000
-42 0 9766000
-5 0 9800000
-145 0 9833000
-5 0 9866000
-109 0 9900000
-89 0 9933000
-24 0 9966000
\ No newline at end of file
diff --git a/codec2/hidl/1.0/mts/res/bbb_av1_640_360.av1 b/codec2/hidl/1.0/mts/res/bbb_av1_640_360.av1
deleted file mode 100644
index 529bace..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_av1_640_360.av1
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_av1_640_360.info b/codec2/hidl/1.0/mts/res/bbb_av1_640_360.info
deleted file mode 100644
index fca7833..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_av1_640_360.info
+++ /dev/null
@@ -1,167 +0,0 @@
-12571 1 0
-9881 0 33000
-5 0 66000
-544 0 100000
-5 0 133000
-2642 0 166000
-5 0 200000
-531 0 233000
-5 0 266000
-1359 0 300000
-5 0 333000
-551 0 366000
-28 0 400000
-10791 0 433000
-5 0 466000
-655 0 500000
-5 0 533000
-3769 0 566000
-5 0 600000
-711 0 633000
-5 0 666000
-2004 0 700000
-5 0 733000
-657 0 766000
-26 0 800000
-8969 0 833000
-5 0 866000
-630 0 900000
-5 0 933000
-2787 0 966000
-5 0 1000000
-404 0 1033000
-5 0 1066000
-1518 0 1100000
-5 0 1133000
-493 0 1166000
-26 0 1200000
-9900 0 1233000
-5 0 1266000
-620 0 1300000
-5 0 1333000
-3072 0 1366000
-5 0 1400000
-668 0 1433000
-5 0 1466000
-1821 0 1500000
-5 0 1533000
-682 0 1566000
-26 0 1600000
-9560 0 1633000
-5 0 1666000
-667 0 1700000
-5 0 1733000
-3249 0 1766000
-5 0 1800000
-589 0 1833000
-5 0 1866000
-1816 0 1900000
-5 0 1933000
-548 0 1966000
-26 0 2000000
-9916 0 2033000
-5 0 2066000
-628 0 2100000
-5 0 2133000
-3034 0 2166000
-5 0 2200000
-590 0 2233000
-5 0 2266000
-1581 0 2300000
-5 0 2333000
-524 0 2366000
-26 0 2400000
-8182 0 2433000
-5 0 2466000
-552 0 2500000
-5 0 2533000
-2412 0 2566000
-5 0 2600000
-489 0 2633000
-5 0 2666000
-1227 0 2700000
-5 0 2733000
-432 0 2766000
-26 0 2800000
-2017 0 2833000
-516 0 2866000
-26 0 2900000
-16619 0 2933000
-6710 0 2966000
-5 0 3000000
-425 0 3033000
-5 0 3066000
-1964 0 3100000
-5 0 3133000
-386 0 3166000
-5 0 3200000
-1129 0 3233000
-5 0 3266000
-1156 0 3300000
-5 0 3333000
-486 0 3366000
-28 0 3400000
-10304 0 3433000
-5 0 3466000
-412 0 3500000
-5 0 3533000
-2608 0 3566000
-5 0 3600000
-397 0 3633000
-5 0 3666000
-1514 0 3700000
-5 0 3733000
-533 0 3766000
-26 0 3800000
-11698 0 3833000
-5 0 3866000
-542 0 3900000
-5 0 3933000
-3334 0 3966000
-5 0 4000000
-547 0 4033000
-5 0 4066000
-1809 0 4100000
-5 0 4133000
-55 0 4166000
-26 0 4200000
-9496 0 4233000
-5 0 4266000
-658 0 4300000
-5 0 4333000
-3232 0 4366000
-5 0 4400000
-600 0 4433000
-5 0 4466000
-1766 0 4500000
-5 0 4533000
-550 0 4566000
-25 0 4600000
-9951 0 4633000
-5 0 4666000
-624 0 4700000
-5 0 4733000
-3617 0 4766000
-5 0 4800000
-644 0 4833000
-5 0 4866000
-1841 0 4900000
-5 0 4933000
-649 0 4966000
-25 0 5000000
-9901 0 5033000
-5 0 5066000
-515 0 5100000
-5 0 5133000
-2814 0 5166000
-5 0 5200000
-511 0 5233000
-5 0 5266000
-1521 0 5300000
-5 0 5333000
-509 0 5366000
-26 0 5400000
-10579 0 5433000
-5 0 5466000
-575 0 5500000
-5 0 5533000
\ No newline at end of file
diff --git a/codec2/hidl/1.0/mts/res/bbb_avc_176x144_300kbps_60fps.h264 b/codec2/hidl/1.0/mts/res/bbb_avc_176x144_300kbps_60fps.h264
deleted file mode 100644
index da1e75d..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_avc_176x144_300kbps_60fps.h264
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_avc_176x144_300kbps_60fps.info b/codec2/hidl/1.0/mts/res/bbb_avc_176x144_300kbps_60fps.info
deleted file mode 100644
index 5456309..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_avc_176x144_300kbps_60fps.info
+++ /dev/null
@@ -1,62 +0,0 @@
-28 32 0
-10 32 0
-4780 1 33333
-960 0 100000
-480 0 66666
-246 0 50000
-264 0 83333
-1160 0 166666
-404 0 133333
-237 0 116666
-193 0 150000
-936 0 233333
-384 0 200000
-199 0 183333
-275 0 216666
-1086 0 300000
-520 0 266666
-301 0 250000
-270 0 283333
-1232 0 366666
-559 0 333333
-287 0 316666
-274 0 350000
-1084 0 433333
-485 0 400000
-307 0 383333
-284 0 416666
-1052 0 500000
-504 0 466666
-298 0 450000
-327 0 483333
-1189 0 566666
-358 0 533333
-172 0 516666
-185 0 550000
-1115 0 633333
-463 0 600000
-218 0 583333
-255 0 616666
-1155 0 700000
-622 0 666666
-356 0 650000
-341 0 683333
-1240 0 766666
-610 0 733333
-341 0 716666
-380 0 750000
-1326 0 833333
-620 0 800000
-396 0 783333
-353 0 816666
-1196 0 900000
-623 0 866666
-375 0 850000
-362 0 883333
-1192 0 966666
-654 0 933333
-359 0 916666
-352 0 950000
-828 0 1016666
-436 0 983333
-401 0 1000000
diff --git a/codec2/hidl/1.0/mts/res/bbb_avc_640x360_768kbps_30fps.h264 b/codec2/hidl/1.0/mts/res/bbb_avc_640x360_768kbps_30fps.h264
deleted file mode 100644
index 1d8c68f..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_avc_640x360_768kbps_30fps.h264
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_avc_640x360_768kbps_30fps.info b/codec2/hidl/1.0/mts/res/bbb_avc_640x360_768kbps_30fps.info
deleted file mode 100644
index b5f3b9b..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_avc_640x360_768kbps_30fps.info
+++ /dev/null
@@ -1,242 +0,0 @@
-29 32 0
-9 32 0
-38469 1 66666
-3270 0 200000
-443 0 133333
-246 0 100000
-214 0 166666
-2280 0 300000
-368 0 233333
-238 0 266666
-688 0 433333
-287 0 366666
-234 0 333333
-172 0 400000
-1363 0 566666
-273 0 500000
-166 0 466666
-182 0 533333
-3731 0 700000
-349 0 633333
-216 0 600000
-229 0 666666
-6061 0 833333
-408 0 766666
-271 0 733333
-241 0 800000
-7004 0 966666
-442 0 900000
-261 0 866666
-229 0 933333
-7354 0 1100000
-404 0 1033333
-264 0 1000000
-198 0 1066666
-4542 0 1233333
-286 0 1166666
-205 0 1133333
-131 0 1200000
-3329 0 1333333
-216 0 1266666
-136 0 1300000
-2353 0 1366666
-986 0 1400000
-808 0 1433333
-318 0 1466666
-62 0 1500000
-55649 1 1533333
-1606 0 1566666
-2935 0 1600000
-3564 0 1633333
-3324 0 1666666
-4543 0 1700000
-1740 0 1733333
-2737 0 1766666
-2762 0 1800000
-3185 0 1833333
-3238 0 1866666
-3395 0 1900000
-3421 0 1933333
-3482 0 1966666
-3370 0 2000000
-3656 0 2033333
-3509 0 2066666
-3684 0 2100000
-3732 0 2133333
-3366 0 2166666
-3374 0 2200000
-3202 0 2233333
-3449 0 2266666
-3360 0 2300000
-3372 0 2333333
-3460 0 2366666
-3511 0 2400000
-3471 0 2433333
-3330 0 2466666
-3377 0 2500000
-3744 0 2533333
-3667 0 2566666
-3867 0 2600000
-3776 0 2633333
-3329 0 2666666
-3876 0 2700000
-3385 0 2733333
-3566 0 2766666
-3301 0 2800000
-3570 0 2833333
-3132 0 2866666
-3487 0 2900000
-3270 0 2933333
-3472 0 2966666
-3487 0 3000000
-3503 0 3033333
-3443 0 3066666
-3528 0 3100000
-3258 0 3133333
-3707 0 3166666
-3120 0 3200000
-3347 0 3233333
-3372 0 3266666
-3161 0 3300000
-3393 0 3333333
-3399 0 3366666
-2905 0 3400000
-3543 0 3433333
-3103 0 3466666
-3099 0 3500000
-3457 0 3533333
-3191 0 3566666
-3290 0 3600000
-3312 0 3633333
-2955 0 3666666
-3341 0 3700000
-3102 0 3733333
-3186 0 3766666
-3180 0 3800000
-2839 0 3833333
-3089 0 3866666
-3110 0 3900000
-3165 0 3933333
-2684 0 3966666
-3082 0 4000000
-2694 0 4033333
-3051 0 4066666
-3002 0 4100000
-2929 0 4133333
-2676 0 4166666
-2411 0 4200000
-2874 0 4233333
-2572 0 4266666
-2420 0 4300000
-2500 0 4333333
-2137 0 4366666
-2344 0 4400000
-2028 0 4433333
-1754 0 4466666
-1627 0 4500000
-1375 0 4533333
-1069 0 4566666
-801 0 4600000
-21689 1 4633333
-261 0 4733333
-76 0 4666666
-45 0 4700000
-334 0 4800000
-61 0 4766666
-1577 0 4933333
-280 0 4866666
-72 0 4833333
-479 0 4900000
-2181 0 5066666
-919 0 5000000
-349 0 4966666
-534 0 5033333
-4860 0 5166666
-759 0 5100000
-677 0 5133333
-3101 0 5300000
-498 0 5233333
-327 0 5200000
-213 0 5266666
-1640 0 5433333
-259 0 5366666
-162 0 5333333
-148 0 5400000
-2130 0 5566666
-397 0 5500000
-191 0 5466666
-180 0 5533333
-1757 0 5700000
-338 0 5633333
-194 0 5600000
-141 0 5666666
-1103 0 5833333
-289 0 5766666
-149 0 5733333
-148 0 5800000
-3914 0 5966666
-1025 0 5900000
-714 0 5866666
-428 0 5933333
-4604 0 6100000
-1456 0 6033333
-699 0 6000000
-892 0 6066666
-4535 0 6233333
-1301 0 6166666
-708 0 6133333
-592 0 6200000
-2175 0 6333333
-603 0 6266666
-411 0 6300000
-1813 0 6366666
-5055 0 6466666
-1538 0 6400000
-2201 0 6433333
-6249 0 6533333
-1420 0 6500000
-2254 0 6566666
-2441 0 6633333
-293 0 6600000
-2062 0 6700000
-213 0 6666666
-2455 0 6800000
-344 0 6733333
-204 0 6766666
-3920 0 6933333
-751 0 6866666
-376 0 6833333
-337 0 6900000
-2882 0 7066666
-457 0 7000000
-222 0 6966666
-184 0 7033333
-2734 0 7200000
-472 0 7133333
-185 0 7100000
-250 0 7166666
-2735 0 7333333
-301 0 7266666
-307 0 7233333
-109 0 7300000
-1852 0 7466666
-322 0 7400000
-153 0 7366666
-195 0 7433333
-1506 0 7600000
-350 0 7533333
-170 0 7500000
-145 0 7566666
-2123 0 7733333
-430 0 7666666
-364 0 7633333
-190 0 7700000
-1296 0 7800000
-196 0 7766666
-858 0 7833333
-3865 0 7933333
-693 0 7866666
-1606 0 7900000
-4884 0 7966666
-2821 0 8033333
-2211 0 8000000
diff --git a/codec2/hidl/1.0/mts/res/bbb_flac_stereo_680kbps_48000hz.flac b/codec2/hidl/1.0/mts/res/bbb_flac_stereo_680kbps_48000hz.flac
deleted file mode 100644
index db94d8e..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_flac_stereo_680kbps_48000hz.flac
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_flac_stereo_680kbps_48000hz.info b/codec2/hidl/1.0/mts/res/bbb_flac_stereo_680kbps_48000hz.info
deleted file mode 100644
index 0355295..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_flac_stereo_680kbps_48000hz.info
+++ /dev/null
@@ -1,415 +0,0 @@
-42 32 0
-1386 1 0
-2401 1 24000
-2321 1 48000
-2367 1 72000
-2370 1 96000
-2334 1 120000
-2396 1 144000
-2375 1 168000
-2431 1 192000
-2428 1 216000
-2334 1 240000
-2261 1 264000
-2124 1 288000
-2152 1 312000
-2295 1 336000
-2183 1 360000
-2393 1 384000
-2400 1 408000
-2246 1 432000
-2289 1 456000
-2400 1 480000
-2335 1 504000
-2294 1 528000
-2260 1 552000
-2206 1 576000
-2185 1 600000
-2155 1 624000
-2118 1 648000
-2094 1 672000
-2050 1 696000
-2059 1 720000
-2030 1 744000
-2022 1 768000
-2078 1 792000
-2082 1 816000
-2094 1 840000
-2111 1 864000
-2043 1 888000
-2023 1 912000
-2024 1 936000
-2056 1 960000
-2108 1 984000
-2138 1 1008000
-2140 1 1032000
-2111 1 1056000
-2110 1 1080000
-2137 1 1104000
-2157 1 1128000
-2174 1 1152000
-2200 1 1176000
-2203 1 1200000
-2237 1 1224000
-2261 1 1248000
-2215 1 1272000
-2133 1 1296000
-2091 1 1320000
-2088 1 1344000
-2122 1 1368000
-2139 1 1392000
-2146 1 1416000
-2231 1 1440000
-2282 1 1464000
-2273 1 1488000
-2304 1 1512000
-2292 1 1536000
-2255 1 1560000
-2181 1 1584000
-2081 1 1608000
-2012 1 1632000
-2011 1 1656000
-2066 1 1680000
-2069 1 1704000
-2120 1 1728000
-2141 1 1752000
-2148 1 1776000
-2181 1 1800000
-2176 1 1824000
-2240 1 1848000
-2297 1 1872000
-2325 1 1896000
-2336 1 1920000
-2329 1 1944000
-2299 1 1968000
-2322 1 1992000
-2347 1 2016000
-2287 1 2040000
-2286 1 2064000
-2269 1 2088000
-2320 1 2112000
-2305 1 2136000
-2384 1 2160000
-2429 1 2184000
-2370 1 2208000
-2365 1 2232000
-2361 1 2256000
-2370 1 2280000
-2393 1 2304000
-2342 1 2328000
-2325 1 2352000
-2334 1 2376000
-2316 1 2400000
-2317 1 2424000
-2305 1 2448000
-2360 1 2472000
-2331 1 2496000
-2332 1 2520000
-2361 1 2544000
-2417 1 2568000
-2438 1 2592000
-2403 1 2616000
-2386 1 2640000
-2382 1 2664000
-2350 1 2688000
-2355 1 2712000
-2383 1 2736000
-2384 1 2760000
-2383 1 2784000
-2373 1 2808000
-2374 1 2832000
-2347 1 2856000
-2353 1 2880000
-2381 1 2904000
-2401 1 2928000
-2401 1 2952000
-2385 1 2976000
-2382 1 3000000
-2328 1 3024000
-2303 1 3048000
-2272 1 3072000
-2270 1 3096000
-2312 1 3120000
-2273 1 3144000
-2330 1 3168000
-2339 1 3192000
-2296 1 3216000
-2317 1 3240000
-2440 1 3264000
-2353 1 3288000
-2346 1 3312000
-2303 1 3336000
-2308 1 3360000
-2287 1 3384000
-2316 1 3408000
-2367 1 3432000
-2335 1 3456000
-2350 1 3480000
-2395 1 3504000
-2408 1 3528000
-2413 1 3552000
-2415 1 3576000
-2468 1 3600000
-2437 1 3624000
-2372 1 3648000
-2371 1 3672000
-2341 1 3696000
-2328 1 3720000
-2273 1 3744000
-2244 1 3768000
-2233 1 3792000
-2229 1 3816000
-2252 1 3840000
-2236 1 3864000
-2217 1 3888000
-2179 1 3912000
-2251 1 3936000
-2192 1 3960000
-2199 1 3984000
-2212 1 4008000
-2190 1 4032000
-2102 1 4056000
-2120 1 4080000
-2167 1 4104000
-2024 1 4128000
-2010 1 4152000
-2067 1 4176000
-2035 1 4200000
-2051 1 4224000
-2012 1 4248000
-2066 1 4272000
-2025 1 4296000
-1987 1 4320000
-1972 1 4344000
-1966 1 4368000
-1999 1 4392000
-1987 1 4416000
-1922 1 4440000
-2020 1 4464000
-2072 1 4488000
-2021 1 4512000
-2017 1 4536000
-2099 1 4560000
-2064 1 4584000
-2109 1 4608000
-2093 1 4632000
-2090 1 4656000
-2148 1 4680000
-2184 1 4704000
-2179 1 4728000
-2152 1 4752000
-2143 1 4776000
-2159 1 4800000
-2123 1 4824000
-2129 1 4848000
-2147 1 4872000
-2192 1 4896000
-2051 1 4920000
-2116 1 4944000
-2124 1 4968000
-2088 1 4992000
-2073 1 5016000
-2146 1 5040000
-2133 1 5064000
-2073 1 5088000
-2059 1 5112000
-2044 1 5136000
-2012 1 5160000
-2034 1 5184000
-2053 1 5208000
-2013 1 5232000
-1981 1 5256000
-2094 1 5280000
-2076 1 5304000
-1968 1 5328000
-2028 1 5352000
-2031 1 5376000
-2020 1 5400000
-2019 1 5424000
-2030 1 5448000
-2015 1 5472000
-1962 1 5496000
-2070 1 5520000
-2087 1 5544000
-1964 1 5568000
-2069 1 5592000
-2034 1 5616000
-1994 1 5640000
-1985 1 5664000
-2030 1 5688000
-2066 1 5712000
-1954 1 5736000
-1733 1 5760000
-1649 1 5784000
-1652 1 5808000
-1631 1 5832000
-1656 1 5856000
-1672 1 5880000
-1667 1 5904000
-1696 1 5928000
-1672 1 5952000
-1701 1 5976000
-1651 1 6000000
-1674 1 6024000
-1695 1 6048000
-1702 1 6072000
-1707 1 6096000
-1694 1 6120000
-1727 1 6144000
-1730 1 6168000
-1708 1 6192000
-1704 1 6216000
-1735 1 6240000
-1758 1 6264000
-1753 1 6288000
-1748 1 6312000
-1763 1 6336000
-1737 1 6360000
-1783 1 6384000
-1839 1 6408000
-1861 1 6432000
-1832 1 6456000
-1947 1 6480000
-1939 1 6504000
-1926 1 6528000
-1896 1 6552000
-1909 1 6576000
-1869 1 6600000
-1900 1 6624000
-1896 1 6648000
-1883 1 6672000
-1903 1 6696000
-1895 1 6720000
-1865 1 6744000
-1878 1 6768000
-1881 1 6792000
-1861 1 6816000
-1791 1 6840000
-1787 1 6864000
-1798 1 6888000
-1811 1 6912000
-1824 1 6936000
-1895 1 6960000
-2079 1 6984000
-2034 1 7008000
-2038 1 7032000
-2018 1 7056000
-2030 1 7080000
-2067 1 7104000
-1982 1 7128000
-1911 1 7152000
-1904 1 7176000
-1874 1 7200000
-1876 1 7224000
-1944 1 7248000
-1977 1 7272000
-1977 1 7296000
-1979 1 7320000
-2012 1 7344000
-1961 1 7368000
-1773 1 7392000
-1780 1 7416000
-1801 1 7440000
-1892 1 7464000
-1869 1 7488000
-1936 1 7512000
-2154 1 7536000
-2226 1 7560000
-2159 1 7584000
-2253 1 7608000
-2286 1 7632000
-2214 1 7656000
-2111 1 7680000
-2027 1 7704000
-1994 1 7728000
-1882 1 7752000
-1887 1 7776000
-1993 1 7800000
-1962 1 7824000
-1982 1 7848000
-1966 1 7872000
-1962 1 7896000
-1928 1 7920000
-1878 1 7944000
-1857 1 7968000
-1885 1 7992000
-1919 1 8016000
-1904 1 8040000
-1909 1 8064000
-1909 1 8088000
-1933 1 8112000
-1824 1 8136000
-1756 1 8160000
-1733 1 8184000
-1705 1 8208000
-1755 1 8232000
-1756 1 8256000
-1725 1 8280000
-1761 1 8304000
-1736 1 8328000
-1706 1 8352000
-1662 1 8376000
-1604 1 8400000
-1613 1 8424000
-1692 1 8448000
-1736 1 8472000
-1779 1 8496000
-1768 1 8520000
-1758 1 8544000
-1708 1 8568000
-1642 1 8592000
-1645 1 8616000
-1581 1 8640000
-1651 1 8664000
-1731 1 8688000
-1743 1 8712000
-1717 1 8736000
-1715 1 8760000
-1646 1 8784000
-1551 1 8808000
-1563 1 8832000
-1649 1 8856000
-1742 1 8880000
-1724 1 8904000
-1676 1 8928000
-1664 1 8952000
-1587 1 8976000
-1497 1 9000000
-1503 1 9024000
-1644 1 9048000
-1658 1 9072000
-1680 1 9096000
-1611 1 9120000
-1694 1 9144000
-1668 1 9168000
-1677 1 9192000
-1604 1 9216000
-1567 1 9240000
-1639 1 9264000
-1552 1 9288000
-1486 1 9312000
-1494 1 9336000
-1480 1 9360000
-1509 1 9384000
-1457 1 9408000
-1423 1 9432000
-1459 1 9456000
-1444 1 9480000
-1424 1 9504000
-1413 1 9528000
-1498 1 9552000
-1455 1 9576000
-1393 1 9600000
-1638 1 9624000
-1919 1 9648000
-1979 1 9672000
-1894 1 9696000
-2002 1 9720000
-2062 1 9744000
-2098 1 9768000
-1919 1 9792000
-1738 1 9816000
-1890 1 9840000
-1971 1 9864000
-2429 1 9888000
-1861 1 9912000
diff --git a/codec2/hidl/1.0/mts/res/bbb_g711alaw_1ch_8khz.info b/codec2/hidl/1.0/mts/res/bbb_g711alaw_1ch_8khz.info
deleted file mode 100644
index 66e5480..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_g711alaw_1ch_8khz.info
+++ /dev/null
@@ -1,10 +0,0 @@
-8192 1 0
-8192 1 1024000
-8192 1 2048000
-8192 1 3072000
-8192 1 4096000
-8192 1 5120000
-8192 1 6144000
-8192 1 7168000
-8192 1 8192000
-5462 1 9216000
\ No newline at end of file
diff --git a/codec2/hidl/1.0/mts/res/bbb_g711alaw_1ch_8khz.raw b/codec2/hidl/1.0/mts/res/bbb_g711alaw_1ch_8khz.raw
deleted file mode 100644
index cfc4a11..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_g711alaw_1ch_8khz.raw
+++ /dev/null
@@ -1 +0,0 @@
-kogOÇÅØÕJvCusXÓÕIvJ~}KuY]ÁÈÄôôôÊØIrtBRTóùÇÚÆÖTÅùììãÿÕOeb}ÙþíéëáÁ[sggDôåàààåÆ^LLKeZQIÙ÷ñóPvxnmpUäíäþÜ`hfvùèïæçÃugmtewX[ß_XØÄÔÏÏØÁXÐÖyegqRÛøåÿáøTGesF|OÂõÉÐYßYuÂæïæÈJkkwøëçÇwbimLùäæìäØCz|ybpÃåãçáèø[vxxJBôÿõþô]qgau_ÝûàãåÂÆVe|UÁTOpIp`dqÐôÁ÷äØLBFKrevtysgf}sOÔBqRÜÜFqÜÍNNMqwZÂûçåûôÙsiaØûãèêíý[ebfÜäéèïøYxdx|J÷çäèêâØsxgffyÄüÙPLdf{OÚÌöñÑ@q`oz@ÎåÿËÚ_}blCðåçùÝFfimbd[ÍäåVFHr||dv\ØÇ_EÛÖIpa~ÐöúãçðR|`opñííøôDdnkdÝäëîýÕppCDØöñÍÉÄöñÝ[ÇÃS{RÓÜÌÏTÜSWÔPÕÎÉÈÕvFEV÷øÍ]qKrcgUäíçÆÔH`knc~wÃûÉSACwxcfdx~{fgg|Ldf|ÓõÅÕö÷ÐMgggFçéáB}LÜííÔx|uôåõñüÒÅÛÀñSu\qfg{XÄAsKw[WM^Xsvra}EÍàøñÿSr}`erOåéàçö\tjjdÙáæúÌvfoj`CÑóðSNszxcg`}ÙßÁçäçÈxz|@üäåâÿØUsHÖäîèêâæáøØ^QÄö÷ÂÆñòóØÐÌÎÏÃDygfsDÙòþæîçÇ_ZßWMv}OÓXDÜÉÈWxbkmLßþåÀNdisÖÛÝMvNdczuGPÎýüùðPv~e@ÌäáäÿûÂÕÓuPð÷ÏÆôàÿÐ]ycdpÍííïáð\daEÊúæùÐDZ^TÆàêäõZurd|WÄúãëàüðP{acHÌðùÄKsckibwÖÒW^Ô|nkjkaAÍÃß]Sdln}Å÷ÿúÊAu~rrXüçõÈÃýçýääñ×DEÇÕÏáíàÊFBDIÖÖÆÂÛÝÝSUÓÝ\uJB\_]U^@PØøúÌËÌD}gHåíêïäñúÿñåçæäþáîàûÛ~kbZÉúìîðgkgsydooaqWÔÑF|aieRÀ÷ÿü÷IdepDÝÁË×wtH\ÆÁ÷çøðÇÝÛWv|feUòåûûçåQJKSöàïÃ@syrÔåìãääãæ÷ÀÕðäáèïûÂöÀÚÄÅSXqRÃÜÜZq}{cblzNJsyok`q_UA{ikcH@}fd_ÚÈÍÔWQrA×ßÍÈÏ^~NÆÑÚöñýþó÷ZCÑðæåôõùÂNv\×WÅøáàâåGfmbEåëüÈÆAÓäíèâàì÷PSSÌ÷QPÄÏÚÅÂßghbe|vEqxcnkom|FFwd|ufhdzspKPKGSAtadMÂÛÄÁÈF|t\òíàÌYVSßßÃËÍÂØËøûÀÊÒ}maHÙÎçìíàÎM|qrJZÄÇËäáäåäñÒõãïèîý_K_Ï÷ØØÂÚSØÅQIEweddxx}aocd~sz{J}njmxPöþòÜGJI^ÅñåðÒôÍQZDFÖõåçÍÐÛHdli{^\ÛúåóDyrbn}[UÀÞôãæçûW×ÇÄíéúÃÈæåçéäùý×ÁÍÔÞóÎÜwzE^HRNwA}pAsx~ljj|@w\Ozxzt\sfef~KH÷ûÃQAOXÖöøòõÇ[CvgIÙöùóÇÐFuÑÖ@RÜT×TÇöðPygvqMöýþçàíáÞ@psNWËåäúýËñÁÌåüÄþúþÊÍÖT×ÝóùæúÊÓZxep^ßUÖÛXKRvMWWÉÓXGJA~``bbXðåùÆÓPeavqÑÿÉÂÏqcfdfeesJÒUrljhgMýáÉÕ×vMwlfPUÀóÆÚÀþïëãúÀÚóúããùøáúâìçàãÈÍðÑL]ÅøåôñÈþóÑßÃN×ÉØ÷[fyr`~|gfK^ÚÒNJH@s||jawqtH|ÚÙdLqfpX_þ÷Sqy~zwÍüÿíýPdhisYÉæýÅÅÊÈþÞwwÐTUðûóÇÑFYJpCóóöÌEI\ÒóàååæãýËÎXuÅÌÃÿðüãà÷_yyuÏíçFr|eLQDÏøÛØÞfeKBws|uBtB}`rI|YYBôÖ~s`jeATÐZBMFÝV^ÍXuVFw[s|@OBÖLrØÉñøÎ@[RÎþÿúÖDØÔÅãáïàòÎ\ÆçäãþÖ@YÚÿçìãòóÕe`zzEØ÷øä÷ÅÎßÆUupFÙúä÷@~vpv×ÞVöÌPKefpHIryvuL|amkj`ex}cmmcdSÿçåÉHxy~×ñõÌæàûþóýæàíêïçùæáúðýåãèïíãàÉÒÅÅðåäåúÀBrvpyx}I\ÞÊòSggrtQÞßöø÷ÑPws_ÊÂCsegzz{pee}{dze|s`lcglha{a`bjla~}gsÒþàæöÚÅÇóäåýçéîàááãèêêêéãìèïæùþåçáâîãùÿÄM}|eerqDD}aa~|IDÜõûúÏ|laz~wGWÍôÍÚY~sLGCDÑPEFNv|uÞÍÚØ[sdonmih`abiiagdp_ÕPDKMÑýâéìíêèàççàãáûÉuggpIßÎÝÖÔRF|c`d~suOÔÃööÁP}sWÞÕÜQETÓÞÊß@Nsyyddffacbbz_\DE|gf`f|`lbnniknlg|spBSÃÜßÞ^ÑÏðùäóýáçúääìîëîèèêäÛÔÚÄÃôËóñÿùÜt}p\ÍóñùýÌÌTVMsI_LuK|zzdgmiolgd`lncfdzflii~LSVEXÑÝÕX@GTòäå÷ÆÆÏÄÂòýðòóõÉØÑÜ÷ËöüüüÿæáåöÎÈôüæãããéêïþùáíæååúåàîïçóòçæäçýóõÏÂU}mhhmojjhinjjo|LvBST×_s{d}Y×ßR\ÑVPYqpMÜùçöÇõüúäáçøþûìèãþÄÜÑSÐÔØñåçþWtGZÉæàíæøúôÓGFÛ÷óåáåÿóüùôñðûììèâþòËÊÀ^tzgzypga|{psd~glikmobammbobaw×ÞÃAtEqZßD^ÓÆåçýðôóö÷üÙPÊþáâûòòðþæàçþäøûçñôüñúïììîèíóDz\ÃðíäÎÈÑWÇTÑüäãâãáõËÅXXqd|qpLuajngtrc`nkmxyeailfcafim~}F@}}ddd{|rVóäàåÛWØÎÿääþÏðóöüÙÅóúéãÿñõËõ÷ÊðáâãéûÏþûûýôËÉñÊÃ÷ÏÚýååçýöúäíèãñ_QU[ÑSqqrytt~|wFwajjocaafdbcfbqÁÀÈØQÑÑPÖÔLJQÎüû÷^NJp\ÅÊÏÍõÙVYFÔýæìãüùççâæùçæâíéèàææûñÌÇÃüûæú÷ÂBZÑôþõþúùæýÖ[RÚÞÑ^Ig`blxgfy}Gugac`aa`afey~H~dsJ]^NpevHsqwp{g{IwswITÖNdIßÄó÷×[RÞÿçþôõüòÂÈ÷ûâáæäüþüäèáãàçäúòúèäææçåÉõôÂÇw`b||tgmhakkcdqfxxuDydinbduXÅusqa|e~v_ÉÚÞC~c`O×öÝXÔvEv{|pPQÊÍBq}Z]ÇÍËåùáæäàúâããíçæäçâéìàíçàæøæýùúúåÀS_õãïìáþUy|_FAT_Ing}CBppxdad~z|pAtdgeSDuO|pyx|FRMÒÁôÇLqyÖÉôÌZ[daeFKZ\ÝÁZpz×ÊÊýÅÏTITÓúùðùøåÏÃÞÿããïçááñ÷ÉæíãâàìäôÛôíëãäòWÖVßÛÖÓRÒXxmhm`eaduxdv@v|dptdmib{uyg{ccf|EQÃÔ_Xr{^ðåùQApafUÓÑD@ÖJrztÌõóõÂÎÙÚÀÿåæãçáääþöáãîîàáåçäíîææûøñÆ]AóùÿøÙÖ@[[R÷ÀÄÇPw}dkasLÃPu{ysÝÕDGsg``igAtMqbkkinrCIXursvxuÎ÷òöPHIB}HAs]ÞÜÒÕsetNõãæåòÃPÚñÇôýñýÿÎPòæâêâøúæçâëâíìúñÊöÁøáÿäÉv~~ywÈ÷ôýÓGLp`awvÝÁ@Bvdb~tsÕÑY]\qd|zvDzdgabbgcyCKtp{ctRÑ÷PAvxgfBJL@}{zcy_Ààçý÷ñüýïîíìúýÌÌÔÝùäíàíëëìëëâïãàûóÅRÌöûþÚZr}esSVÄÑTM~aizLÀóõÆEM}rA@MBHHqq{~@SÕCLprdlc```dzspdeGÑÄÑFr`cbxHpsDXLJuuÃäãéãÿÃÃUÖðúùùýÂÓBy@ÉôúìëííáçíáçãèîãâòôúþüÚMaf{dBÓPDÜËÚÄHvÛÒÒÕÚB|JATÔÙÀ÷Mq~`}sGTÖBadoo`aeeFCu}beKÕÁÂÄtMvtZpxdqIxeb{uBÛÁýÄÀ÷ÉûûøäåçñÀ\GßÚøøçäúçûãïïâïëéæòÇÊÃñÎ_qlggt^ÝÚ÷ý÷Ô^ÓýçäñùÝGxxtG]uQZylnicr[CPvzdd{~[qGÐ×tygeBÖK@Zswt]KSuCÜRve}q^ðõÄÄGLMÝÓåìúåÉÔLOPÂãìäçõSFÉÿûíäïïäËÁñýâéåýWreHqÍÈõÎVKpÕÞöãûöÙ|``I]ÃôÉÌ\rduO^ÆÚÕOgcaquAÒÑTpcjieVÐ^vfm`JÒÀÉÍßJfkfJÑüóóÙ}lopÆúïììüÓBSÒÄàëêàñ×ZÅüàîüÚÍõçàäö[ebfvEÃõÎÆJ~~L×ôààóV}dgwÙ÷ôMxboio{FðûÛw`knsZÛ×Ñ^xb`wÛøÈ\q|s|ÙþíâþôÚØG\Åôû÷_p{d`MõóðÉÍÞÓÑÚñûãâðXv@@_öþæåóüü÷ÞÉáàçßry{pËæçòÚÆÝTÜÄþýøóArxqKÙðËÞJNMuKwÅñÉÜ{fmlbeCGBKt|fa{KLp@}gcdKVØÇÚRBC\ÖÓÅØÓÜOeyKÞøüÃQYP]S÷àìâãåÃFMÇòáæáæòõ÷óøáíàþÈ×L{}qÛýÉÃÞÈôÉöøäðÅÍÄCzqtEYex{y~CFÑÁ]BsebzrÝFregdqDØñDtAvgdMSöô×ÖC_ÜùæüçðØZyggwwWÃAv|O\Õ÷òíæÃÝ_@BÒÎðåòÌÖÖÄòäûäçðÌÓÒTÛÏóáåÃ@\ÀðþúããüÙY^uCÜËýÀ[xadwÞðççñEciibrqAI{nlxBÐÓÒDygzt}LRÓÒNxceZÝñ÷ÃËÅ[uABÑÛ]QLpgx×ÊæííãüÞÖõòþâíïæÏXNÜôáîàçþÃ^BGFÛÂÂÙ@~fpÑþáåøõULNÔÔÍÉÓ×sf`eDÚÿóÈÖNw|uFYPtpzmio{GÁUGGBY_ÛÂÚÆÜÛEyzyZßüääþÃÕDF_ÑÆVGr`lozÕûæåóßEuHÑÍõÏñÀu{xFÓóçççüñåùåæàæûòÏÆÚÀòçúÇUÕGEÑÉåúôÜÑtdeYÌñ÷÷ÚwqLsHAC}eljorÕ@wHrxp}]ÎÞTVXyewMÐñÌÑÒux_ÜÂüäòÑ[x~wp×ÿþÏÂÈÊåääíìåõ÷×HRQÒýùõ÷òÀôùüåäþÍÐEq@HwÜö×JtrtUÛòáåÜQ@z`gsÒöÆËöÛ]ÐÑ\×Ôt}`jjinopJ|wI^ÆôüççñÊÎÀÆÐÕ×ÂØAGBtZÇÃÞÞ_K~eexxeNÑVEF\ÇÚÜËúøÍÕRMp|pTðñÊùäúåçííæùðòùý÷ÍÂ÷Í\MXWßÅõõÈÜA×ÂÙR\ÒÒPFXÇßÒÁ÷ÏQNydammolozqgzsJVÛÜÞÁRuFFHxID_tORG[ÝÚWÒPsKPTÛÚÛ÷ýöÉþåæááíâç÷ÄöÑvwHRÙ]DÄÂÁþúúùÉõôñÏÞß]NpsrwCHWØÝÎôÝXÝÖXSPÐßWÀÄÔ]ÖÎÁÒ@JqydcdepLGCuLÜÓA\ÓßÛÃÎÂÕXIqpsD×ÒÆÅÝT×Kp@AHtHOw@ßÆÍÇôýþçúðÓØÀOvq]ÞÞÐÕÌÊðÿÿúüýöÿçðõðýÄ^_PÖÐEUW×Ò@@tTÄ×ØÞÚUØÂWÏØØÅÝßMqx~xbadz{z~d{rpGE]ÖÜÜ]ÅÛ]SOqx~pS[×ÒÏÊWZBWÍÎÈ÷óýóöÁðåøçäùñËÀÔÖTÖÚÛÌÕÕU^Q^A[ÜÂÆÚÐÃÊRGNwMHOwru@FRÄÜÌÍÁþúòöÊÃÛÑRØðòÀÝUHzagzwutBMvwOHK_RÒÒWÑSTÞÍÃÖRY]Zw}EBLGH@LBE_R[PGA\PÒÂóöóòÎÂÜSÕÃð÷ÃTTÃÎÄÌüúäáøðüðüäúõÛÝSNvqCS[YÐP]ÓÐÓÞÉÎÍÚ[NSÖÐØWXWXwpydxp}~}|x||zdzsZ@wJUÜÒÊÊÌÙ]BCAF_PSEML\ÙÙÒÀóðôÊÆ÷ûáãçúûþÂW[D_×ßSNw@PUßÅÉñóñÌÞØÝÓÝÇõÉÅVAsvIptKZFCQÜØÄôþüËÝÚËýòÌÛUStqr}tCZMv}|sKGFUÜÐRwvYÖÄÛÎðßNtL@MA_Swqp}ydzwRVØÍÍÊ÷ðÌÅÌÃÃÄ×TÛÃÛÄÄÙ×S[ÄÅÐÏüùóøûþøçàææýÆWqtMG@ÑÓQÑ^X\VÜÚöðÂßÜÄËÁ^ÛÏ[uCqgacgdgxysvtutuNp|Kw|BÓÚõòõÔBu@__VÆÁÄÑ^usqBQÚËõóüñýüòúåüòýÍÙUTUXANvt_ÒØÝßÝRDSÝÞÆñýóòÈØT[Y[PTÒÓÛÐCuwO×ÍÿáçùüòöÊÜØÃÃØSHg`gex|spCJvAJJC[_WÝÉóËÞ]@t~|LSSÔ_@Yqrp~{tÑÎ÷ÁÁÃÄÄÍÀÉðòýÝOGKXÜÚÉðóÉÀÜ×[\TÇÌÉýüøóñøòôÀÖQUØßØÝUÔQA@_PÆÉõÄÐÒWÄõÍÓÛÏÌ^qe`l`de{swrr|CFPUÙËÀWÕÒWÅÒRGLQÑWZ×Þ]EtF_ÒóþÿüÉÝõÇÑÃÈóøýÍÇQX_@_PÐÝ_CXCwD@]ÂÛÆÏÆ^_PÑÈÐTÖÁÅ×ÜÜÖÑÇÖ^ÔTÙôñððÁÊþòýñððÊÄBdd|y|L^]Osyp}vAAX^×U@Lwt\ÑQZNuGAL@DYWÓSMBQRAÒÚWÑÂñòËÂ÷ÍÇÚÞÓØßÐÆÃöÀA×]QÝÒÇØØÔÀÖSÖQÁöòöÍÔÑÄTÃßTÄØÜÐÕ^ÙÄÉôÃÎÍÏÚÜQÕÜHBwsr{ee}e}ec``ywIG×ÑÞÉØËÃØñÿÌÔEuSZ[QP_]\IJqJ]ÖÎÌöùåÿøûôòðÂÜV[P]HPÙÝÕCtptPØUÝÝQÇÆÒÖÔÖÌÍYNwuQßÒÚöååÈÚÐ]ÓÙÂöðñþðÍËÍÙÄÒ@NNvpy~wttt}~|tGu|vLB[FFSØÁ÷ÃAt}JMGWÄÁÑ^CBDÐÙÐØÍÅÒÐÝÉÈÚðøóöôÁÐP]Ú÷ÉÆRVËÄÙÒEYÖ×ÛÜÖ÷ÿÂÇÔMAYUÙßÁðÌÜßHrCuZØËøþÙÞÇÙÈËÚÆÐRUqegg}gadgJsv|eCÐÜÀÍöåòËóÓG_K@ÓÑÆËSBLt@RTØÀÊóÅÙ÷ÊýäñÃóðñôZvHuZÓÑ\XVÕ_GXu@XwIØËòùßS^vwF\×õóõÅÚÀÆÊÇÝÅýúùòV_PPØÈÉÒÂÑJKJvuXLwysOHw}~y}}uCAQPZPTEÑÝ@@YÀÿöÐAqywu^ÇÅöüÚP×Ý÷ÿþûøçáåÏÄÕRÐÐÂÂP^VwqQWUÖ[IDÁòðÄÅÚTG@TØÚÊüÝTßYV×YMÚôô÷ÞU\ZYÒËÉÓ_Fxds}tJrpJ|{yevsKL_]ßÃÓÛÏõÏß]]ÀÂÉ÷Ý@CKs@WÚÎËõÛÜÛÃÎðòûãæøåöÕÓPG[X_QF}stCY[AINVÛÐÏËÖÇÒRGO^ÀÎÓÊôÇÛÛÃÉóçæóðÎ[@LGYSÔ×M{rr~wYVYÕÄßwqtz{r~|qOHvADH@VVRÒÊýõöÊÙUYDN_PÁÇUÐÙÕ_Þ÷óûáçüôÆÞÇÎËôôÈõßFHXAKWTAMSÒÐÝÝÚÕ_QQCMTÜVUÇÙÞÍÊÉôôØÐStJuEÔÅÄÊòÀ\tHuvGWQS_LKzmadewwJtC__UßÄÇÉÃÌÊÄÏÐ^YMvJÑßÀÍËÁSVØÀØòåúüÊÿËÔÐÃÀÚöÊÉÐÑ_OZ\ÕÔÌÀÔXF\KvIZCAÒÁÙ]UÖSWÄôÎÌýäòôôÛ_HERTÆòËÑÕMr|MECÕÄÑtwO~aar}xHUYsrrvtIOH]ÑÑÔWWZLGÕPDÛóÈÅÁÆÛÜÁÎÏõåáåÿüþÉÄöñöúåö÷ÞÔÕVÐÕUÖÁÑDuyxe|ZG_ÎòôÄWÒÇÕÓÄÁÂööðÇCLwpJwMÒÚÕRYÕÕXS_LWÇÝÜ_vrecezqEDGOqrtZ]NAË÷ËôØRUCAUZVÙØßÖÜÂÌõËØÀñòäúôÌõÄÍÊÃðøðÄßÛÔ[PXptWÄÆPLwyf}wuÒ÷÷ÁÒÑÔÙÈÛWÃúäýðñÆ]D×^DÕßÇURÇÅÑRw}sEWPZ@t}eacf|wIr|CuvKvsNÍöõØßYtstHJ×÷öÑÙÿñôÇÅÒÙ÷ÁöðóòýóÈØßøáúòðæåÿÃPEAÅÒÕYuv{mbaeEÃ÷ôôóõÂÝÔWÃøóÏÎõß]s}|~\UDFÕÊÂÞSApwZGZBwICymnbp}NPW[XGCAÒ÷óþýÌÝ]w~rZÉôÏÎõðôÎPGVÞñõñûúúýÏW[ZÂñôýðååþÃQ^EÔ[Y×^usdcgx]×Ùòö÷ÙÓ][XÚùôöýò÷Ú_wOvG×RßÝÌÍÞYHvpFHCYqps{gddwFwBGJ|yqtZÉÃóøÆEvr{{yÑ÷ÇõñýñÊÞPPUõöøàççåñÞÖTÊøåàæûùù÷ÕPßÊÅØÒAqza`ddIVWÄÛÁÏÈÈÇÁÉþÿöÇTßGrd`fpMDÒßËÈÆÔIAFTÑÒÕBI{gmiatMF_uJwJtuÝÊøýòñÏßRI~|ZPÛÀÐÈóôVZÕÝÊöäàáàçô\MMUÁöùýýüÊÚTÒ÷ýÍØÅDNvefd|BV]QE]ÛØÒÝôþðÂÁÎßÈËQMuKASUÂÊô÷ÛRtI]]WQQDIennmgw^_PAvp}{}_ÄÁÚßÙÐQGHNN_×ÔRWÕRVÐ[LEYQØðæíïïáðÂÉÎöûáàáäÿÄÕÆÆÚÙQRDtsyz}uJEYLC_QØÙÂþûðÈÙÐUY^WNuvsFDVÄÍÄÉÔIDNqNJ[]Ire`gzyDTQÒWXRvw×ÐUÚÐ]_AX[J[UYÖÞÔÞÑÓÏ×GQX^ÁÍòãíìãøðÃÐÍñóåäþöWRØSQÓ\[PE@HvCDNADutBTÌõüäÿòñÌÚÝWVVILJwE_ÕÆöÊÄÒÕPvqDQÜÖSJgcaf`~uutHMHwJA\YZ_@HF^YTÆS\ÕYZYWÖÖÓVYHLTÎåàëîáæûÇÉóøãíííç÷ÇÜWXEÝßÑßPFGLp_RICvrG]ÔÌÈÁÛØÌÅØÍÔ^SNyvqJUQß÷Ù[DvrwuWÑØRzecarrKEG]ÕPSÖQSÞÝU×ÝÑ×ØÜ×WR@_\EQÓ×SPLuDÓÅÿááâåùÊÅËòæäàãúõÒÓM_YDEZÞWU]ÖÝ\VSD|ytt^ÚÌÉÃÄÓÞÀÎòñÉÁVGL]TRÅÃØCr~y|DRÞÉÂEwrytC}qOtvrwZDAXu}LHOÖV^[P^_ÕÚÀÄßS\H@ÖVýîîâçäøåúûâììãæùÌÂÝRR^MCÔUWTVÄÎÓS_OvBHs^ßTOLOKTÅÛÓÑÙEHtAÔ^À÷Ú\JJyptq^ÅÀCqpxewBZ@EAÒÜÖÁßÅPE_ZYuMSW@pJ@EÐßÄÄÛÑCF]ÒÏüãáääüõÇ÷ñüúäúÌÎÇÚÑTÑVßÅÒ_@ÝßÕÙÜÜQLswC[ÝÛÞÑÑßÉöÊñÊÌTCvpÜÃÜÅÄËTCppSDSÐßDr|eyye~vKvqpwZFBBXÕSFrsZIpwNpzvJYPßöÄÝGEGÜûäæàììáæäáàïíååÿõÜØÅßÒÂÈÆÌÃÝÂôÁÄÕÐÐqeeqursppwMZ×ÃÀôÄZ_B|sRÛ×SÖVLJwuRÖÕÑLJvaeqtqv@HtwG\ÓÏØÆßÙÓCMN@G@PIvvv[PÅÁÒP@NvÔÀÿùçãããáíãâãçúÀÝXAYu^ÐÔÖßÍÑÞõóóõËÅÓ\LMwvuspqvXÛôøÿ÷ÅÙÕOMZ^ÕQSWW[IBÐÒ^^Fw}svpuryqtvq@ÜÒDPTMGANuqqp}ssrsC×ÏÍÐßX@GFWÀòòÿçâííïîëïáãüØÈËÚÔÓÝWÝÍ÷ôõþúûôÀÒA]Es~s~ag`evKÒÍ÷ÃßÄGOJwJNXCRÒÐÛÑSßÄÕA[s~J~spgdqrH_ÜÏôËÒÄÜVÁÖVTu~xe~IVÆÁÌ×^M~wFAÒÎÌöøûåâïïìïàäÿÀÏÀÓØÕJJÐ×TÎýøøæùö÷ÓÔÐECNemg`o~GÁöÿÿÉòßVÒÖßÚÝu\×J@UßÐÙÙD^J~spsrecf}aaMVTÄÊÕÕÑSD^]Nvd`g``|YSVÂQZGHOSÆöåûåàãããéêèëàçäÿöòõÅßXÝÜTÅðääãçóôÇQtHLeaokhicSÑÛ÷ÛÛÔ[\\×QRHqu|qLSÜÓ÷Û@EvsuK|{~aeffpCÔÛóôÃõÀÒÔP@qMebdg|BW\ÚÉRÐVNÐÌÎõøðÉåçæâéîéàúäÊÅÉÄWÅÝKCGNÖÿçæâáþýÅZPGylh`fzF]RÆÈÀÆÄÔÉñÝÄÍRtLCFÒÀÅÁÞOpvxxseazgnlcavWTÇÈÇ×TPEEKsvxonffyL^ÖÀÚÔÆÙÀÿøýüçøøãâëîçäûÿûûôÀÏÖMGXÖüúþåøÍØTEVSOyaciinmzsqBU^GÙÝÌóÀSU×BuCPÅÏÂÒQve~yyB@~xy`be~XÇÉÈÎÄ[EPRØÍÕpyaafetG^ÐÚÕÝÌÎýåøõöùüùçâéëæäþÏõññÿðßSWZqDÃýøøùòËÛWÖÇÉõ]}ebbfew_TÓØÛÐÈÿÿõÈÆÔÙQ[×ÐÚÆGwrredex|xgcbbndC^ÜÕSYDNuCÔÚTI}zdnc`gK[ESÆØÕÎýüûøçáãàíëîíãçÿýþöô÷ÍÄÚÔÑ÷üøçòÌÀÓ[BYÖTE|foikjlfEÐCÙÀÙWÆôÅËÚßQCOwLÕØÛCIDO|~r|rreaaz~pPÅÏÒÒ×X^_ÚõÎÅY}dam`{MÐØWWÜÚÃÀòùÿçøõËñûøíèîãçäðÎØÏÊÛÌÐEÓÚÈöæãçåõÝQRÕVØ×DrbcoogJÙÁõßRÏÃÞÍþÿÌÄGttpPßÏÇUX|pebds|bbibcdEßÓÓÓs|MGØ÷õWvxlomaOßÑ_ÜItÈõñæíâáúËÏþæèëçÊóùÊùáÿÑ[FEÈþäîîâçØuuDETÍÕmjldRÁS[peJÁ÷òþÿÌLege|WÁðÚTXffe}tG]ylbÓóþøýÌv~BÅüüðÐvdolcrÑÚÅAwzgZÏáâáâùÅG\ÊæêêâúËLRÎùæþ÷Ps|HØÿëëïäÉLqUÀðôÚLdbna{Uð÷ÇBKtIÙ÷ççôÒwzddtÝõòÉAv`dq@\ynnaB÷ÿö\wN}}Ý÷ñÇS}cc`fHÂÚÔqa|L^ÄøíâçöÇñúäâèùòòòýàïåÉZ|HÍóòèêíÌÐÛÆÓÍðÓArmifgCÒCNda}CTÒòñØDef^FÜÂVÐIzes@QÓDxajlrFÕýóóÜqPVÅòñÐPsa`yDÑÊRBqcgtVÁøåööÕGÔ÷úçéïæä÷ÁÌöÿãíÇZKsHSÿáëëæçóÎÌòüýúÛB}{gcuÕÏñAKtppCËñäðP@vq~×ÍÑÀ]try}PZVpmkctLÓÕCuKO^õÂÆËÕ}lgx{RÜÇÒwegrNÇôÿáþÉPÍüùïîèêèøÊùÿáââìøÞwIÑÅûâéâåÌØ÷Éúäô÷Åwlkb`}DSC|fklfsÂÌñÂBevqÖ÷ÄÛQLgaqÁÜ@M~chcÄÀÄÛ×G@ßÒúæÍöÓIafrtÍÃÕÐ]|oewÝåüäüÆVQË÷æïìãúðPWÎ÷âàáåÛDsCÐòìïãøþðËúæïîáôHsab}GØß@|e`leHÛñ÷ÌXMJrXÅÏöÆqbgJYÓ^Igohlzqtwxx{HÕÒÉõÃAwqdxARVWBydfyXÙúçåùþøóåâïïîàýúñÀòøáãìçÎÀVÑ÷ääæáÿûòýâìïâûÈNqecdq}zzljhigwZÞßÒ^LNIWÏÌW_E}vqWÇÏÅX|lb`atGKu@psSÓËÿþ÷ßQHKJ|E_Mt}amzrBÉòòôöñõùúæâæòöÍ×ØÅÜðùúòÈÅÐÏÂôùüòþð÷øæãíéíúðÅYOqtwrzf`f{qCUÝÜÙWGXWÕÝÁÔWU[FOLOZ\Iaonmba|}vrsBV×ÖÅÛQ@qrr~ruvs|ysHSØöùÿÿóäæàíâìààáùóóüóóýÏÇÏÊôñýüúúûùøåäãïàçùËÁ\OwsydgooohmcezxwIKARQÝÑST×ÔÖW^PEu}v}e{{{{eHBHNEXÖÞÛÒßÚYXOvuHt|tv{r}q]TÄõòÏÁðÿçáæäææþûüñþËÚÕÕWYÚÞÆóôñúàäúáæíìíáææÊÚSLZC~~q~dz{}Jt[_U_JY]×ØÙÃÍÎÑ_\D^@rgafm`ca~yxyvsxsBA\GAVRLtOtAO}wr}zgsI]ÛÉôÿùûçâïëèîéãåùóðððÚRWWÞÙÀñüùýûòóüýçãìæùäõÝWGJyclihbcft@vwKJYF^ÑßUÙôÝÒP[ÜÑRJffdz}qGFAvCÕSÛÙÍÇ_[KqCM^AHq||xs}XØÚÚÑTÔÁüäãæãïâæøøõËÀÕQSHKI]Øõþúæçúøûúæáàíàøðô÷÷÷ÊYt}dc`erN^]P^RÙõñÍßÒ\BNtsrvp}s{a`f`a`g`fa`dpLw]ÍØ^_Busvs}dz|z~tØÆöüýñóüçìèïéèàáúæçúñõÀÕÖUÒ×ÛÎöóðôþøùúãàåáçåùñËÍ_qp~aggaf~vwABAFFYEXÐÖÓR^ZHLOIJI~d|xzsqptKtupswuGXÕÚÛÞÅÝÚ_trr~dyrwtWÞÉõÎËñþäþÿåþþüüËÀÀÁÔÙÌÞÔÞØÅÜXØÇÎõ÷ÏñÿûãéîààäúüýÃWHvq}sK^N[UÐDXMEWÜSSÒÖÔWSBwwqpdgf`dzd`f`fzed}rpJRPQS]EOLvp}|vNOUÇÄÏÿùõõ÷ñùçáãììââãáøðôÀT_S\TÛËÏõòüñýð÷þøúçæøðýüðÉØ×MsrquwIp}suvstMqLÐVTÖPDGtde~~yxs{zs}swqsKOHZ×QYPEODBJHJIMwKRSSÔÔUÃÂÞÃ÷õÍüúäææäçþöÈõÀÒÜFLFDGÖÜÇöýöýùùûúäççþüóüööÊÅÇÜPßÌÐÑÔSDEJKHvtZVÜÉÀßÑ×us~flbmi`dedyepwpprywprqEBvwCtK[]ÐÙÙ\VÐÓÅËÏÉõùàæàììãáæäýó÷ÈÆÛØÇÄÝPTÅÚõðóøûåúýöðöõÃÈÌØÚÄÚVPSÕQ^tC^vvtLtKNKOGSÜÅÕWFCJp~dffd{~dz|rvNM_T]EQ]OFFAYDvvprt]ÃÄßÓWRÓVVWUÙÈþýþÿåþýðñÊÚÇÄÐLXVÖ\DN]ÜÀòåàæäúçøôô÷Ãôÿøüð÷÷öñóÃØ]RÔÜPGFÑÖ[S_^GQVW_Aqwvyda`mccbcegz~}wOwpKI}{rsuwqsqpX]ÙßÅÍ×ßÄÞÐØÆòûåþäáæåæçøü÷þùòÂÁÂÛÕ_KC[ÔõòþùæäûäüÎÁßÓßÞÐÝÅÎöÌÉÍÝAOELJtsIELvJ\BY[VXMLCO|~~gaaff}sZÕDPÙØ@CAJpwwJwru^PÐÞÝÑ\VÖÐ[F\ÄÓÎõÈÉÈýûçñòööÎÈÏÎÄÐRVYvZDTÝÈòúçäääóÎðýóò÷ÎÊõøúçýòòÌÄÄYLYASÐÖqL^F^ÛUFBOMIvfg{dggloibdqvsCIwuvg{zyeefxKFÕÅÕÓPÕPÇÕQÜÉñþýôþùøçîáåçáäåÿÈÎËÅÖÒAuAÞÊðüåäùÎõ÷ÐÒÀÌØÍôÌÊòÍýÿÜÕÕ^LMMutGCPXqJ]XTÝSDAGsHvezszdyegdyyES^SFwvtptwspNqvCAC×ßQT][^Ö]WÓßÒôñÊüøýüäúøüÊÚËÏÙØÝZL@CEÔRÜöùüþÿÂõ÷÷ñüõôýüüúóöþùøýýÃÇØÛÐÚVA_[AWÄTÐÒÞXZu|zgaaaoobggx{pJKpJpfdzzf{ez~||FCHGÝVDÐÜÒVTÐ÷õõóæçàìîîïìæâûöÊöÛÓÜÜ_]\YÊÅÂÈôSRÓÜÖÜÓÞóÆÆõóÚËñ÷ÏÎÄßôÓ×ÖS@QYFB\NSÉTÛÑAruHs|fxrdr~yIDRÕ]pJBqwvr|ppsquyH_SÔ\DF]ÑÖÒ×VÏÎÁôýðöåæææÿ÷ðôÛÓVEMA[A^]ÜÍõöñÅYXÓÇÜÂÈðüüùäåððøùýùûûÿò÷ÈÄÛÀÉÐPßØßØÚÖRpgdxal`ffaggyd~tp|s{z~dgs|~sqzIOB[^QÑQÒßÙÝÍ÷þøúÿçíååáæäàáççúÀÁÍÐVQYBUÛÂÌÅYQPMvOspX×ÃÊÌÔõ÷ÂßØ×ÎöýùÿÎÔôÉÌËÄATÙßÞÚEB^qrsdo`a~r}xwKuF^q|NK_DtepvI]Ôpr@GÓÔY]ÇRÖÞRv\ÝÛ÷ñ÷òúðüòõÑÌ÷÷÷ÂQ^FK×Ð\KPÔÉòÎÜßÕTU_LsM\ÍóÿôüýüýóôðúøæáäüåúúþûöÐÖÜÑÕ×^[@teebkhcgdezy}|sefg~dxxgzrt_urpOuSÆÏÈÈÜÙÀÝÛõÿýáãæáçòþåýðòËÓÐTSTÐÐÄÒQÖÛÛÂ÷ÃÅÓLwNr}HA[ÞõÃÈÁÅÎñõòðÂÍñññÿð÷þüÃÇÑS_ßÑÖ]wxeccdzxpIvO[@MY@IIpge~yqALAQZXF[OPßØÆÇT\ÖUÑÛõÂóýòóòôÀËÍØÝ×Hq}wHRYZW\YÙÍÛÈ÷ÌÐÔOqNFAÝÃÄËñóôùäçáçåäûüøååúàáåûýÌÃÀ×ÒÔFydbiilcfde{dx|qrsqrzda``f~wDLIIBKYÖÂÀËÊÆÑÜÙÇÈöåçæäæäúååóôÂÔECtqXWÕÜÙRRÕÓÜÛÛÐTEvr|xrMG[VVY\ÓÎÿþþþÿòñòþüüäáãæäÿ÷÷ÉËÂUL}g``dd{yyprqAYZCAIs|{eexrtLBBMN\TÝÎÀÀÇÜÔWÙÁÎöýøþüöËöõÆßSNt~{}vqBGDRTRVÛÅÄÝÝSEKwJXQÜÜßÀÂÎËùäçæççáåúäæàæáãìàçúÿÊÍÖArdbnlbafd`dez{}wup~yxgbgfge~~suIPÄÚÌðõË÷ôÁÌÈüåûøçàáçççûñÃÀUFtHNtwwqvuIYÐÓÄÏÒQZEu|pLDED^GZQÐôññöñóòòøåçáçåäçááääåóÚUO~zdfe{edz~{suI@@wr|~~{strpwuHDÔÁõ÷öðñËÌõöôññ÷óóýúüÈôÌÖDqy{ee{xgd{xyCWÑÛÓÔ×@J[G@UÙÄÌÍËöóóüåäúåçùåãìïïáçæåøûùò÷ÊÌVu|eddfdd`fgg{qvwvzedae}vKw|tuuSÛØËñôñ÷È÷ÿòòòóòååäáæúóñÞX_EKCLwtvr|ssvG_AIuvwsx}rq@@@YSÒÀÍÎöñôõòøûäæçäååàáúäàäüõÇØWOtv~deyerBD_ZBI}z}~}w@DHI_RQQÆö÷ôüþóþþøúðÌôÈÌÏôñöôËÓBupr{{~dggaaezvs}r}rpruLEDCETPTÀÈòüøûøþåçææáãíãæãàáàæúôÓ]P@prtw~egged{tw~rwrz}stqptwpN^RÔöÿüþþøáäúààæääúùþåæàåñ÷õÐ[]OuLJuKxyp~yrwszgf`fgxwwzywydg{vuqGXDPÞÌÊÎöùþüùåäááíãÿó÷ÙÕE[ÜßTSPX[KHZY^ÕQVGCPU][@CDuH@[×Ëóüòöðü÷óúæãäåæåþûò÷ÍUS×O}vwuHq~zge{z~MXu~{{~rywEtqEAwvLS×ÔPÖÄÕSÅÉöô÷ÃÄÈöþçùüøüÏSMxvOY]wKYDJI]R[EBNCKCVÒ\\VIrr|MÖÞËøäúççþúàíïìâàìîãíâùüòÃØÔ^TÁÅÓÔGpegz|rrt|dzfceee~~{dzd{x{~|pKGU÷È÷ÊÚÁÊÚÁÁÅÛÇÍÝÖZA^U^][\SQÝÆðôÍÚß\R]QÕÜØÁÊU@K@GSTÚÏòüøäùûúæåúùúåáæàæüÊß×tK@QÓØÓÃÚÕFLZq}|s}rstI}IQNJr}wMHERYvKO|qtAQØßßÏÆQÄØE[GD_@swLvrLvzzeJXFWÇWBTPEÕPVÇÃÜÆÅV_WYUÑÔÃðøûáâáçàääåýøçäÿäçýöõÆÈÏÀñýÿðóóÈÌÛR]MswKJwDZZXOp}zgzpwAvsrxeyerrIES^ÖQ_@AIpKKAYQ]ÐÔRMDuvDGWÛÒVÓT\FTGGS]ÓÃÐVÔR^EÜWÑØÞðçúÿþÿðôðÌÉÊöûçýÊõ÷ÍÀÊÚÅÄÚÍñÙÖÀÀR^R^WÖÓÃòÌÌööÛÙÑÑÔQPßÏSARSDR^BNNCÐÙXH@H~yef`afpxxps|~|wN@ÒÒXBYDMMupqKLU×VVßÐÝßÖR×ÜÇööôõ÷ÏÏÌÀÚËôñþþòüøúçæúýü÷óýñÊõÙÙÆÛPQÜÓÃÃÁÆÈÃÀÜÖB^Q_ÔSZVÖB_VYK[G_ÒßÛÏÙC@AA~yqwswpdyp|epsZQS\ÖPESYBsJJMIZFÖPtL\EFQ\Ñ×ÑÐÞZIM[GKM@DPÑUÌÀÄõñÄÚÁÈ÷ðóòùôÎÍñññüþñùûäáåùÿúøÿñÌÙÊÌÍÍÛÞÃËÇØÌÄßõÂÀßSXRYJtB|{~z|}efddgerdyqtKwx{ptpvJ~@^\]DKE_FD[EIT]ÜÄÒQÐ]^]UQ@T\ÁÊÌÁôÁÉËËÑPÖÕôÎÚÛËÀÊÏÁÐÖÒÅòñ÷óÿ÷ôÎÌÚÁÒÚöÃÁôõÉññ÷ô÷Íóúðö÷ÆÚÚÖREYEÒß[ADuH@uwup~Jp~sqvwqJMKtY^YX^@[Z@MJpqMwws}|vvw}~suOHFA]X_SPXFSÑÞÅÍËöËõóüððùåæãáúþ÷ñÿðÎ÷óñùÿððþüååñË÷÷ÂõÎËôÊØÆÛVUÞÓVÒ\XSAOWÑXGLr|eyzywpy~|vItM^BA]@JDAN^^EW\uBRGC^^ZPPQÒWG]TBttqpIJNDOtA_E]ÔÚÆÏÚÁÃÛßÁõÏÉÊöÎðýäáçæââáæååþûýþóÈÏÊÊÃÀÃËÚÁÝÀÄÒÅÃÙÕ×Ò×XR_ÚÙVW^@JttvpBNYO}}rs|s|~~}{|dgyz~}rxyrqMNADAFCZDC@X]ÝYE\YÑßÞÑÔPÔÜÙÐÖÝÛÇÝÛÞØÀöþúúúåûúøäåûûááçäøùþþðúÿô÷ýñÏÛP^QR@SCvJQPVRZD^E@V_BFS@LKtH[AMELvBVVÖUTTUDLv}zw\ZNtJwJrsp}xJBNq|pr}y{ezgqFZIGFGY\ÖÚÁÇüúúððó÷õñññüöøçþñýüûääååûóùøðÉöòöÊõßÒÞÖÎðËõñ÷ÊÍÁÐQR]×Õ[GAGKv}dddzqq}vvvzzdxqXÖPY_ZFKHAMZ×ÄÛÖWT__ONHvswJpy|rp~qtvKQÝÝUÕÙÁÂÚööÏÃöôññòäàæåâáäþûüüóüøûÚ^ÔOtG×ÕØÅÇÏÃSÑÄTÔÃööÉðöüóQVÛÓÞÊÎÏÌÀÜ÷Åws}yrD^DwJsLd|px}Jst}pr\q}w@uwvss}qsDyex~eqJOuOFO\B\V]M\ÝÙÐÍðüúóýûúýþçàáéèââûòûýñååååúüýÿöÊÆØÐÚÚ×ÑÆTP^vIXEXÛÜÝÄÞTÐ_KIDuJUAHuJpFBMWÕ@ZÓPTSDuOs}vrdK}MGEBZJpJpe}rex~~wrpGqsC[GÖÝÓTÜTÝÎÝÐÁÉÍþüý÷òõ÷üÂôûçùçåøðöÎð÷ÞÂóùðøùüôôÃ÷öËõòÿüäøûóõÞÍÂÐÔØÑQÑAus}wNp~xp|Ovrxx{|yyrrtFNHtuwG\LE_uFAq}{dfedffz{JDOJtutPPZPÒÓóü÷ô÷ôÂøþüÿûüàâçææúòæÿýðÎÛ÷ÉÚ×SNuÓÕÖÝÚÞñÍÓÝÄZQÁÅÉÞÃÂö÷ÂÀÏYPÉÐÕ×DCÕEqLwgswv[uHBFZvEJyOOCH}uB^V[ÔAvMIJrfgdgddx```g~y|IB[Z_TJH@ÔÆÞÃöòÿåááåæàíìààáæáæåÿÎÌÄõôññ÷ÏÃÁØß^SQT\PTEXVÚÈÍÀõñÉÄÃÞFKIwNvy|Irt\@NKKuEJv}rdNq~wpu]IEÕRvYDtr}zr{clmblsHtqpxwtuwFtwVÓØÆÛÙ÷÷üûáåçïèîàúøäûøþåóúçäûõVÕÒTÝÖÔYÔÖÞÜW@ÓÃÈòüñÁóýåþôÞØÕWÚß\ZÒÒÊöÒBXM]×]JtGG__p{qr@Õ\pvANNweabn`ge`fefgdikjjmf``}wuwFO@^ÒöçøðäáçæíáæàîêêêééïçÿñÿýåÏÄÁÓMXÜUV×ÁÁñÆÁÆÇUßÅPZSÚÈýôõ÷õÚÏÁÓGE^YP@^VYAVÖSYXD\SX]XAMLwwtwtFYXRDLMKyg`afacmamhoccdxwZUÖÞÙÒÐÓV×ÃÀÎüàãèêêîìâçäæûýåýÍÈòÊôÅÜÃÈÂ÷óÎÂØÌ][ÏßÒøóúíâæìíäþòüÊðÆÏô^pEIwKsI[]GÓTw{zlnii`afxBOuwFuup}vsyeryf`ed~eHuvC×P^URCZDQÇØÚýäùåââàìàííãæáàûýñ÷ñþõüûý÷ðÊ×F@qy{zqvuEÇÏÃÏöÃÎÌÂòþÿñùùôÉÊÍó÷ôøÿÊÚÌßZAwezfcfffz|eeqrexy}vv~zyxysprp~ys|e{zgffbl`dx~pAØÚÁðýýòðôðüÿäàãìëëêèìãìíçæçþüÿõÖWEXÑÑEWÖ]ÝÛÓVÒÝÞÁÞWÙÇ×WÞÒÃÃÜÅÊÊÆÉÛØÓÕGO}}|pppMItB[tv{s~{{y~pwrp~~ewyd}reyxaaa``rzztCuVÞWÕT@FÆ^ZÝÞÝþþñçíàïîèèáïáòüúñóüÈùøôÎÎÔWÝEw_\HSUEQÀØ÷øòüáåÿæþÍòóÙÃÀ\Y×wpM|gzdgs|`gzmaecfyeyKvyuNsZ^~vDtptxe|f`|vJIuJCs|Jq~H[@ÞØÝÂý÷ôñ÷õùù÷þûûýúý÷õÉÙ÷öÇÌÈÏÛÊÇÖÑQMYUQWÞÝÜþøðåçòúúñöóõÚööÈöËÜËÈÜÍñÃÑßXpt|f~qqp{bmfmogbkmbcge``yyq~xMDQÝÚÜÖÓTVÙPCUÂÃÃßÙÚÅÁËýÈÅÆÊÈÎÛÛÄñöñÿ÷õòøýðõ÷ÑÞÕÑSJywOvvtLpANFGCJÕÃöòòÿüäøùÿðüãââíîìâìáçóWWÀ×Ô×ÚÝÕ^tuJ~|xzdz|d~ya~y~vvyp|eavMAAÝÛÅõñÃóýýùÿýðûùðòýÌñÊ÷üòðöùöÇØÑ_QHN[]\TÊôÌôÃÞÛTÒÞÐ^_ÑTWÞT[]ÑÐÖßÖÞö÷ÆÎÈÈôñýûûûåáäûäùóòúûðÌÁÅÀÐQTFvwD[[EZF_[vsvwJLMLBAQÇÜÐ×PYSPAtHCK@DXZBOF^X\ÕÑÝÚ×ÔQQÕQTTTÇÀÏðöÌÐÓÔÑWZ\Ü×TÒÒÉÏÈÊöüÿäàæçùüñôðÈÀÂØÍõÏóòòÈÒQV]PA[_SÜTÙÚÍÚÝÆÈÛÌÃÁÄS^ÕÃÆÒBOZ]CMGGOZQGADBXTMKXÕÓÌÇÛÛÚÕÔÞÔRWqgzdddepr|JFyypr|}}qEFJMTFUÁßßÏôñþýÁÏöÕÒÃÌÏÎõýò÷ÎþåõñòðüòôõÊÌÅÃÅÁýñËÂÁõÎÄ\A[v}KwGOKQ×^RÙôõÅÒRÙT_S@uEUØÙßSÖØPYRYJNtsggazdc|GuILK^ZEdd|wNtez|}|{xeqwEÅÂQTSÕ\DAZÙÎðøååæçúøöØÁõõôÌØÇÛßÓUTÔQÔÅýþ÷ÉÀÌÇÜ\DMDÖØ]R×ÔØ×ROAA_]Gwr]ÜPq|pEAFVÍôüÿöÊ^tuIuZÖßÃôÍÙ×Np|xfde``ag~eomgfgstHZOH@tgaggxJpNÛÛÆ÷ßXÓUESÆÐÁöÊýúñÉýõÍûäþáâæãâýÎÈÞÜËØUöó÷ýðÔ]PLwDtr[WT×Öu~gew|KÑQAtr~{dd}uK_ÄõñÍÑÚÑRPÖQBG\ßõÖRÔ^×WÐWÞÌÆÀÀBuqg`cmmd~vPTK^ÕJOCr|qrsPYvQ[uACH\ØÞËå÷ÛÊÇÓÜ]UÊöóåàøùáçúä÷ÏððËøäýúü÷ÂÇSÞÏÇÕÉÜALu|r~eJtL_Ò_ÔÝÞVSwygd~pJONMZwLSGEÐÒ×ÜW^EC|OICÝØõüþÿóöÔÕ[uE_RYÐÖÖÅP^WPVÌ÷ýóÌõÂ]GMRS^ÒÚËõÃÊÀTØÜPRQ×ÅôÃÜñðÄËÊÙÚÐVôñÈÎúñÇ÷ÈÀÁØÒÉñôÿàðÉôTMtezBFMÔÂY]ßXuCs[ÃÐ[QD~sdgxdLÒÅÄòÈY[@qsv|BÝ×ÒÎÍÖÁõÃñ÷õúáåäûøóððÅßÓÒÇöôÿååååýÉßÙÜÆÕÅôÀößÐÒRpBAH@tuF^HEQSsFZ×ÁÏôñüÎÁÕSEÖÑÂÍóøæàäåð÷Á÷õËÀÁÛÞ\OtryxwKÔSÇÊñÌßÔZvesvtvIGÒTÑÖ^DGWÐÞ]ÖÉðÏßÀÁPWÑØýöåïëíàáùôôõöûùäíìæøõÔ]ÞTWÁPWõ÷ÉËßp~q}AU\ÂûÄ@K|bmgces}RóÙÙÄÙßÌØUÉÈTÂòÂôõßXßÜÂûúýãçôþñUZ[|y{aJIt]BMÔWJZ×Q_ðÜÐÎÓNJw}]ÇÂðäöýæýÏÂUFÞõÅÊåòúåðôôÆÝõ÷ÉòùÊÿòÁRQXCÓÂÚÇÖHFAwy}y}HIq[T^ÙÀÜLEuswvsy}qdgprv[T[ÛÌÙÁ÷Ü]WJpNOvVÐßÿáñÌ÷ÑF\VK[PDÖYdgdfdvtvÜÇßöòÓS\\EÕVQ÷õÉýöÆÌÖ]PÉÙUÍÌÃÂW[[AÔÖõÛ×ß[_ÕWP\SQAPPPÕÒõÅÚÀQFq|tpvJpJJMpwtKMBKvLsK}abijjkhbyp~EIqpqOCFPÑÒÕZÇÒÅÇÇÀóùøüÿÿüûõËØÛÖÔ[XQRBZQ\XuZÔÝUÛÓVQVQWÝÖÕVRX^ALGQQZty|x{ewCDUÄÂÇÔDSÐÐVÞÐØÌÊÌÊÊÁÎÃÞÒÄQUÄßLrxezzezsy|JBKwsKN}yzaccconmmf{ysMOÔÏËÛÜÌßÏÈÉÍöñüææûøûþáæúóðÎÅØÀÖ×ÇÑQCu|psG××NO[DGNN}GAIYÕOY\WÙR@[PCXÐTwDÒ[\×ÜWÓÍüÈÃÝÕßÄPÕÄWÑÙÂÞÚWVÑÙDYYvttJ}OsvEAsYRBZÝÓ@\w}vwer{aaxy@MAØôÛööÊÍöõôýñùæúöûûñòúöðþõõñÈÝÑ_DYDuZUXÕÓAHRBBVÑÝÛÍÍõÛVPÚßÑÄÁÙÀÅÑÌÎÁÛÔMDFuKR^ZÑRWÆÝL__FZSYÀñÅôÿüñøòÈðÍÖÆÏÑÑÑLtDJOWÛÇñýØÎÍDpLr{{x~uJrHMpHÓÓWöñ÷äþðÏÈÐÄÌóôøäþäôñýöÑÁöÊÛÇÍÄôÈñÉÅÛÞÎÁÐÓQSÜÇÚÒÝÞÑÚ×]TQÐÐÀôÊÐR×ÚRYÓÜÒÞÊÏÈÚÒÝÝVÝÅÓÛÅÄÓPFNC_]Î÷üúçææçõÄÞ_[ÖÓÝÐßßÓÑPTÖÒÃðÉÓÓ]Msvdx~xuDMKQÀÈùòóôûÆôÇÉÝñËÎöñðòøÛôÊÄÝÏÅÚÁÏõýßVÚúGÎðØü÷×ZQ||tF^P^ÓÃÐ^ÖÝWUÇÂØÄÂÏÙÐÀËßÓÏñóðüðõÀÞÒÛ^ME^TÕ\u\Ü]Ãð÷ÿçàçýñôÏßÙöÄM^ÅÒÞÜÓßÇÛÚÎSHLvtQXusLLEÔtpuMEESS[^õòÙSÝÝÇðòùýÊÈÊÇ_R\_ÂðöÎõÃÈòÀÖÐPÖÀÖMK}grNwswtC\]PÒP@TW^ÕØ×ÄÊÏËöÊÙÂÁÀõØÓÅPHOGvvYZYYJvHABÖÚÓÌÆTÐßÖÕTÑÅÊÈöüÊÁÅÓÓTusruHpqtJwqtu_UØÖW_stNtAtNÑÄÚÃõØE^X[ÙRu|LZBHIXÞÐÔÛFJF^ÝQYtxqtMursu[TÇÎÃÚÚÄÌÈÑ\WÛ÷ñüüÿóýüþýÊØÃõÁÓp{g|xggffr|vx`g|se`cezzr}|rrp]UYÖÁØöôÓTÚÍÙËÍÃüùøåÿÎØÇÔÀÀ@uFW]ÇõÀÏÂSÜÁ]SVKOM~d`ed|tyAG@QÌWqpdaebijoappurMFHÙÛÜÇõÅÞÈ÷ÊüåæîìàâéàçæúçåñÒÐÆÒÌ÷Ù^I}ds~adaombbmag`xyyOOe||dytzed`af|}ÕÞRÞß_×È×ÖßEOWÓ^ÐÎØÉùåìëíïêìàïìáúñÙÛÉÈÈòÈÛÃQYÁÓLD|zxgcbljcl`ygmlcmgddxfg|OQÝ÷ÎÛôÉÂþò÷óóöüüüÿøåúãììèïäòñÄÅôÍÞWKC@PWÐÎPE_KNvrabccgb`eagvHXWDwCLrtrrffa~Hp\ÜYÐÙÛòúáççæãìãââíãìêëàåçåøÿýËÚß×ZÔZ\]pez|d~re`bbaagzqBIÚðð÷ÄÔÓÞÕVÐÆSSÔÕõýùäùþþùúþûÎÕE@PPÑ@FÖÕÜðñþÿÏÃÇØTÔ]ELC^ÝÌËóÉÐRSVÕÓÐ\GvvGMwxpCSÚÞY[ÐT\ÜÇÆØÈòúíìââäþúåûääýòðÌðøúüÿúþüøøÿöÝÒ_KHIL}zps[ÚÌñÍÀØÍôÁËÝZSvKACCp[P_ÝÄðòÆÏÇ×XFO~dezqZÖÏÛ×T×ÀØÂÄF×SSÜßÌUÞÍÆòþäàäåþüÊÈüÈÛÀÆÏööòñÀV^YX^Yvppr@SÒÕ×Üß÷üþçååüôÁQßP@]ÜÛõùçááúýùóÃÑEvwr{}A]XÕÒTÆ÷ýóüûüòÞTÕKvCGZRÕßÙÎÐN[R\ZEOsxeeddxsu]R_ÍÜUßMGLK@PôËõÿþãâúççäÿôöÖSÔQÉ÷ðóÃËÏÆß^Ù\rMqsq|veOÐQÇÄõüÂÈöõÀÅõRNPEXÔQVLGVÐÌÞÏÏÞÊÆMwq}aaytLWÙUÜÍÂÅÆÊÓ_ÒÐÙÂðýÏÛÇÄËÀÅÄ_D^D^^A||LJwtBCvB\VAG}exrvvMEHC×ÞÊýöÈÁÎôÎÅØQ@rJPÝÅÆõÏÃõóñÎÝ_ryrJYOCFvFÑÞÈÛÛÁÓØÓÕÞ_Gt{qC@HH^MATÙÀ_NK~~pw|f{f`~rG@tZKEUTßÓÚÐ\ÕÓÏÊÉñÉÁöûçû÷ÂS[ÖÛÀT×ÒEÖÆØÅ×ÓRADGMww|ff{yz~MuIPÜÃÀÂUCss}dxyxzsRÖQÀÇÔÓÓÕIAXMJwuIvCÖGLXÞÙÀöÈÝÓSPVÓØMNMXRYÜÖA\]^L@ÔAwq|dggeeesqOPLxygesrrw[VÛðçàåùúüÉóüôðóÿÊõöÉññõÌÜÉðñÆÇÌSRÜÔHpv}G]R×YTPuGÐRTEOyy}ge}Htw_VVYMug`gfffyzeHÖÙÚõÌSYYQÒÊðôÀÃñõÈõýÚRÐÚÌñóóôööÃÌU^}dxztCEYtHws@PÁ×MK}}OSPWÔÅÌüäóÊØÜÓAPÃÄVQØÇüúóýÌÇÀÐÇòúóÂÆÐØËôýõÄ×ÐÛóåüööðÂÉÂT\v~yIMEBvwqJLIvfb`mbdex{ytÞÌÐ\uupqSZßÅÝÈóæäùçüþúøçáïâæþÿøûóô÷ÉÔÝÆÃÈÏÄU×ÙÈ^HCv}~Htq]^[V\ÜÜ÷òÁEsCCLÜÅÐWPßÒÇÆÜ××ÞÙU\Ò]I[UÚËóÿ÷ýýÿûçâàûöõËöûþËÙØÎÉö÷ôÛÑVS_t}xf`mbgdvxxzgOVÁÔGHpGÕÅóóöñõþåæúýð÷ðûüýüõôÚÇÊ÷öÆÈÆÖõñüðÏôÑPÝÊòÜÚÙÔÌÊøýõòÈÚËðÏ_NvsBP\F[YvAÚÙRJ[tpuL\HMJpHPÀØÑÛTÐõÿýÃËÊÎÌ÷üóðñÿøäãíæúåþÌÒÐÜÇÓÓÒÆõÎÀÛÇÆÜÙÎØUBr}qLC@MwMEEÜÕÕU@PQÑÔPØÖØÔ_Ã_D\LEBVÛ\ÐEC_ZÊõWÁÄÆÏöçüçæÿûóäÿPÞÁÅÜÐþÌÀõÄ÷ÒÇÌwvqd`mygbaobme^}ep}VVrE_\ÕVÿôÖÆÆÏÆûàÿûåÿËÎçúÅV×ÄÝôûòþÿòÊËçøØ[Q×TÚðñÊöõß^õðÙSNwdfquvpxd`~J~abfag}}dfd{zJGXOv|{uUÛÚÚPRWÈóð÷ÍÃÃ÷ôòåàæñýýúäÎÞ[BÖPÒØÁÇKO[ZP^Ys`faewJ^sxrzJZOp`}txtA_epxwZSVy~u}CÝÊÞLPVQôää÷Îýòøàîéæàçýøàà÷ÇÊÇÛËúøÎØZHpJ\}gljjadbcnjlyaba`adLÐ\Dts|JÙÛPPLqOÕÿðõõÖZ^ñþËóÂPTÅúþþýöÎÈúäðöÇ]VÂòûåþñQHVÃÙT_}aeqtp|flcgcfahjhaeypyygBAYGNwNÒÀ÷åçûÏõþååæáåøäáââíâåþóñóðÏWYÔÕÑÈÏÁÖ[^Lwtwqze{wqOKpvgfgfydeyeqtCG@AAHHBuJrvx}BSÐÐXOMÑÑÚËòáúòåæìâàáþûåäåûúþüüøäúÿõÑMvtprr~xeqJHv`ommnmagfgx~wKwwz|XM\^]TAÝôüåóñÜÄüóäçàâûäàìîíãòÁóýÿúðþýòçàáçþÁIJJvqr~rHGXIPDffaabhcaad~HuYF|rttsCuqDÐöÈÊðÖÝÃÅ÷ÎøãæàâèïãíúþÿõõÒÍôÃðýäçûåÃEMJKxs~q^\@M_@w|e{acf`gt@HvYIrHJD@FYIDVôü÷àçôÈÃóÌñåùáíêêéâæáÿùúôòäíìççäñÏÒFqxygag}@K[UGtxfllalma{HtFZFAIBpHQKCRÝôÁðñÌÌÝÜIKÜÖÜðþçàîêïîíæòßõóÏóÿäçììáûÿÄFÓÑFZ_ÔIFØU\[\qcgd`lcgma~wqxs~`ewMM[ÞÑÑäïãææáòôûåçãèêîæñüõõÊÍÇTÆøúñÆÁYdg|ddpzd|I^BIGwdgzgg}p{u^suMxda~q~JuqIPõÈÈ÷ÕEuNVQôþûáãîâäçùäáñüúçàæáûôßADALYpzpu~vwd`onioa`ax{}xqB}ffddvÔQZÜöüþçáå÷ÌÅREÍùýåíïìèéàþÂÐöÿÈÊóøþúìâüÄVZpXTKtpNw~vJ~egcbbommcadqdoiingg~KTÜÌåöÅÑ^Aw^ôÈöûãéééèïäýñýüÎÉõ÷õòáðÂÇ[JsC^F^JMFwQZ~xamnif`aegxzy{cmhnh`{{rwVÂõøÄÒWsHvOËÎóøçéèêâççþçúöÃÐÏßÆñÁÙZuHpJNHN|qJ}t~abbfd~vFBBIpygfcc{NLsGÇÊõôÏÜRONuJ×ÖW÷øäæãíàåùöÊÇÄ÷ÓÝÃÞÌñþùÂÙÙÚ×ÖÆU_ZNLqvtdg`nl`a|ysBr}zbmhjidvwAÔÉüåäåþüÉØßÆòñüåçàííííáçüñðÎÈÏÅßWÒÃØÁTYEH\ÐÖÆÚÖFJSIqprgfzeptB[MßS}}{zbkooa|KqGUG_ZMrf~tIÔÎóòäïìíèêèççáåäúü÷ÚôòðøùüÄßÊÉÈýÊÔFJNq|szcbcagLÑYXYTRCwpxg`ffxttJDÙÇ×ÔÜKq|xrtPÜÝÁýçúúìæøäåøäçøöðýøááîîàãàæàâãùðÈU_^^Adcab`f}ppp~x~|fokijigyd|AÕÇÁØPJWFw@×ÀÇÃüççáãáåúúððçû÷ÅÞÆÇôóýóüøúúàãäýýüÃØÀØÑYOLIYTTØÅÝTB^[effcbo`gzH}zsX×A}vMJH[VTØÇõýøáââëëììáíàæáûúäáâåäãäæàííæåÿ÷ßEEpxx`gee{y\PM^uLOzaimlbaeqexrvQCvKvNKN]UÍØÕÆôøúúâæàíãìããáÿþÿäâçâáúàåäââæöÏÝRÒ\YL~wqJ]VÃÖ@[tCArymlmnd~ru}vKCÛÝ_LvuvCSÛÅÐÝ^Óååúåûääîéâîá÷ÏöúåçáåæâïîéèçòÎSÜÕQY|daz|Ctxgzyybjjiolnlm`yJSYH@HYPßôØÇÙQÝÍøæúçáåæãâàúôÚÍõðúÿóýùäøààü÷ÌÆ×RÉÚELuwpMÕW^TØÖFÜÖpd`bbma`ooma`pE|e~s|gwrvtJrCÂ÷ÊÿäçåáïâãíâäçâãáæääûøáåñóÈÐ\WWKvrxfbcccd~yyyrg`cc`bolibfbg{qt}pLuttKvt_KHGZGEØýýøÿðÎØÎÍÂðýÉÛÃôÀÊòó÷ËöüüùûÎÕÙÆQVTQpzpOUÛÉÔrtwx~dzbjkhm`{wdzHuG_ÑÔOZSÕÌôþÌPÄßÌÿæãÿôöÎüàìäÈòÉÄÆÍÈÞWÕSQÜËÇJw|yuDMpxdgDÎÎVFqdeKEp~z`azB\CI~}@ß\\HdxsÜôÝÅEuAßûòþäÏÀÌÿãçæü×F\õÈÅñÑ@_ØþüòõDtvTÙO^pff}×ÁÌÀKzdIÖATWtfeOYÑÍ_xeJÒß÷÷VqKÓñøçüÐHUñôñåûÚÄðþæéïåÂÊþüûáçØDÜßÃÿøÆ~a~pt~zgbfe}_ÒRzmaevMuz`f`dZÁõSyq[ÝÊòÍ[SÙÛýääôSAXÒôúæñÓÔÇåããäòÎÔ×ÇôóÀÓ]]ÈòùüÁØZ^ÁððWXQI^ÌÃÍÕu~|L_ÓXutafJYWXIdmrAN@wtQÉðÅÙØAÑýçáääöÇûâéîâçÈÀöøäüþÎPÝðüöËÀOt[TÅÖXGqsßñôÜÜqzsAÆÂõÀXOBÔÈÄÏExx~HBNpgzv[ÛÔÛ\wYRÁÎÅÅAI@\ñòûúÞÅõüæáâäòõÇöó÷ÂY[V×ÉÎöÛ]ÒØ÷ðÊÙMsrx}v^_tuqGÛÚôÛ]XpLMWRqwuBTÄÁÅW×ÓÃõüúÚÓÔ]ÜõøúõÂÙÄöñÿõÚÁ_DVÑÜ^ZM^ÚÉöÉÇÁPSÃÚÐO}eLRÆÒÖWDÂñôôßRu}tLECvqqOÒÚÄÌõÂÖÈÿýþ÷Ò[OÐÜÁôÚÇEYËÌôÃÄSvSE@VIvp~NP\ÐÐ^vDÔRÞÊ]s}sIÑÊÇÌFGÅÛËñôÜHJJwX[]M_ÄÅö÷ÿ÷ÖÇÁóùôüÕK×ÔöççäÃØÝÈøÈýÃLJyvOEP{puq×ANG~ppAQLF{cg`}DQTJ}rCôýÿõPEq@ÛØÈ×NMO×ÆÍÌÞÙÕÛóðòÂ_FEÞÊýôÞSBCÆþøðÁ_wBVÅÇÒOtwMÝÄÖ\Duw^ÅÜ_pdgdrO@IurGÂñÂÕSHqvOAw|g{pÀÿñöÂÃÛðáíáôWMRÍË÷ÈÄÀ\Tôúú÷ÙQG_ÑÃÎXp{zwMDAvLCYÂÁÙZyd`wDSQqr}_ÁÎÈÓPvsprxf`ldM_×SÑ\IEMYSw~wÀËÆØÑßSÅþäâæ÷ÃEÑ\DPEZvLÕØÆËÛÜ×ÐÆÓÄÐu~ywJF]^XNY÷þåûñÍECv}Jup|rK@EÄÞÒW\QHM@LupARÛ÷õÌÜÞôõóÿôÅY]_QÀôôÓEGA]ÅÞ×AFEGVPD}e{d~M\ÚÅÒÊÏÿáùÌÖ_[pDW^BpKFÕÌÌÚôÚ×OFÝGp{ypvÚ÷ÀôÖ^A[õÀPÕEEuFô\BFwryG]tQÑ^MPùóÈÀÜWNØýÕÍòÍÏüìâååòØ@OÞP\Å×JtÊÊUÝÆ×E^ÎÌÙÑV^Zòçõöùô××ò÷ÍÁÚÝuXÙÔTEKem}z}MrMÃÜÖXKv}TÒWÖØÏÒÀáçåæåóÜÓÙTSXALsXÞGAXGuIT\YÑPZ[ÛõßÝÇÄØÍö÷ÅÊôÝÛ÷ôöðñÒDLvC}z}~KÖÇÆÐßDuMQ[MR\PÀüå÷ýüÅÃÂñÇSÙYH\\ØÓÅÍÕÍôòÉÔÄGHÖÚòÊÎôÜÌßôþÊùöÄññûñÍõR[DBH~t|ap@Ó÷Ã÷Å^[L]C_ÖuYÚÊåøúüÁÇÓÜÑZ]LKGwIqt@vrrq_ZRGuELYÄõóöÉ÷Éô÷õÎÚ÷ôÊùû÷ÛÕUAvME^AuurFÞÃÆÕ×QPÙßÁÅÔËÈþáàâæûòÂÊòÀÙ@tttDMQXw~mayyvrvdsqSÜÖÇÔØòôþøøúóùåäæøöÕVÑSÑ×Dpfypw@LLsdpJ^ÁÙÀVTÜÎùäæäòöôö÷ñüØÐÔÔÊóüÙw~yqvgyr}|a{EØS}|vDVQÄÊÅPKZÌþÿÅWEI^×ØõÖÕ]QËÿóÞ]HNDUÍôÃÝWVÁòþýñÀÐRÄÎÚÁ[w@SUÙÑYHH[SÔQNCPÄö÷ÌØWZFWWÒÅÂß^ØñÍõÅZw~p~~Hqy{{v^P@[usOAYßÞV_Òñòåçæäò÷ÿóýåËTY×WÔØÒL|}wpstuza~~rOX_qqu^ÙÍñËÈñóàììãøñÆÝÀØÃÓIuuHUPAtz~xedyde}pRÛñÈÙßRÁÉôûöÌÇÚÏöüóÚÓFFR×QXBtv|pqwtHwKDN\]SÞßÅðùúöÎ÷ôôöÌóýõÉCCÜÓSXAYt}|zpuN@w@XEOFÔÑÜÜP]XR\X]PWÞ]PNAÔ×UZYÕQG_tIJu[HLYXW_QÒTÀÀÜÑÒÙÛÐ×ÛÏÀÄÞÀ÷ùùÉÚÚßÔUÐ÷ýðóñôöÈÉØÖÓRV×\ÖUX@uNRMFJ~w|~||y~gacgrN[A^ZA]ÇõöñðñÿÿòøüüûõôñôõÄÝÜBvf`amgaofu\Y]ÆðÃÌðüûýøúüäàãæáïàûõ÷ÎÕEgcnnkhlgdfveLCqSYQÓSôüóÿñäàûãéìçÇØO|yf`xqYÓÛÉÇÜÄÊññöÎStwHFGLÖÔXÇôûçøÊId{r}xsysZÐ÷ÏÐWLÕô÷ûþöÌS]DÕÆÛÜRWÚÉûùñÝw}~}}{x|}LEÔÊýøöýåûýððÍÕUÝRBTÞQSÝññÚVYz`gzfg~rqeZTÐÔÚPÞöÌöõÅÀÐÂõÆññÞÚØôðõ÷ÖK}@vxt}eerFQÌýðõóåüøûýðÜÄÊÞóþõÍÓÅÀÇÐLr}eccbddaexwAÜð÷Åõõñäáâàùçäÿùçíàäçæçäñ÷Â[qgbkknnoaquERIJI[^XÓÒAw|rOr_ÑÝöòøùÈÈÉÕ[ZCBJ_\LGQ×ÚÓ]DuqZVÓÄÒÞÕY^PÝÈôóåíëâàáðþòñÿËÉ÷ßÛöüûþôËPYÕPÝEvuzdv}wMvNKLÆÄ_MdfaegewNGMCÓÖÅßÓÚÊÎóååçåòñÉóçáäþòçäúòÚWpacho``zgevu[ÝÇôÈòúæíïìãäúåúäáäýúåÿò×_wamnjnnfea{|t]ÔÒÞÔßÛÅÊôôñÇÌÚÞÃÎôñõÝZqLG|xdyKXõöÁÌÕÛÚÒäçåìàääüäùÂËÏÚÙXÛÊßýÁFTEÝØvH}{q}F^tH|fpw\ÌÓÓ×WÜPÐôÇÌôÅÇÇ÷äúóÜMCrz|{~wvKDM]OwttDYWÀÄÊÈßÚÆòûþååüÿñåáû÷×tppqwHtv|p|{tp~xd{|pMXLtvsOODEBVSQÝÏÿúýÄÕG@OF\DYÔTÙôÿáãàâãíâàçöÒÐGJAKpqdd{y|}DGq}wpp|dr~yYEÐÄÍöôöúåååçæûÊõ÷ÀÝ^]NrIMKHJMG~pt}HIsecdx{tMÑWDÔÎ÷ðøääöÊòÊÇÈõõWWÅ×ÄÍÍÁOCRq~wJehcfdztZsvÑÞÂ÷ÿåø÷äàæâáæüÂñÊÍðö÷×HßÑßÝLZIyvqzy~fb`t@~~tYq}GQNEÜVLIRÀS^ØÛT@ÑüÌÛÜÑEBEßÜÜ÷ùööñóó÷ùóÌ÷òüþÊÎúöÎõ÷ÏR@TC@PÑÕN}v}gya`ce[@tCvNvNÀñññõ÷þüåùôöÉËùÚÄÃQÓrde|qgohhbcfeepqvTÙÄÝÀÎÎùæàçäúåüÌáèêèúÞVwZNruJFMtF^EHw]@KÅÇÞÜÑZYLDßÂ÷ÅÊòÏÅÜL|u{s}}E@×ñöÉÎòúòöñÃÒF@\KB^Lvagmcr}zzimbnaz~I_õýôøæåççèéãæçûìèæÿõäáóÁÖzcbmnnhjikcgeq}e~z}tEÍÀÖYSôùðøüçìëîâûÁÙSCLEÞËöÂ@tvtEQWSQ]Kw^\SW×ÙÎòúüýÿüñP[XFÐÖMutLWØ÷ññ÷ÞÄÏÄÊÉÂÍØUÒ]NKLtdf~HYN~gmlgy}qEÖÑòøúáãëéìêêéìáøúäøúËÝQIFWur~`ikihhbfyyz~D_TÓØÓUÝÀÆÐÓÛ_\EÄöÀôÿðñÿÿ÷ôÎõôËÛ÷þþñùýôËðõÆÀÅÝ_@MOA[urstptw]ÅÇÊ]LGrNMrvruWVÀÙ\ÒÓSÙÒÃôÁÍÅ×ÆØÇõ÷ùÎ_ÕÞÎóÝ@sf`cbambmicepLBÖÐ]Ã÷óáçáîâìïíèîéîææàäùTv~niijnofx~sY]Ò÷þáçãæòúäáïáæàæìâÿøÉÐÐFuvxtMHw}vOLY\ÑÛVuNpvqf`lnbof~uÜÑsspBPLVÑZÅýäéìéèãäçâéâàøÉÍÖFÖBMJgabatxmohkmb|~~Mpt×ÒûäÿüõÉóðçáåîãåäåìçôõÑTÂÊÄÖpzaolnczagcca`g~aer|JqDÌÜÞÐQËþûææåââæûÿøðÙßJzrt_Ð@Ð]BÃÉöñÔÉÕITÜÍñPÚÂPØËúíäáüÅ×Ò_ÜtsLFSPT÷ÑÐÁÛÌóüíçñûÛÐWwMHzz`mzg~ginkcoaciac`wCTÖYÆöæêêîîííâñðäáãáùùWX_^[r}C|ea`z{ffcfafxqI_EXB]ÞÄöÊÙÆÉüÿüåúçþÊÜÙÇ÷ÏÞÙÜÝUGIuOJKM[[ROp~}q@uHE×ÇÇß]YSRG\F[RQÓÚÂýóúúûçåüÿñüýöôÞ]ÕFFqsq|{t}~ycg`ogapRQÍÌÛöðÿàèéëàìäÂýÿÃÓORKwvwvxxxdinlhocgdagefgeLBqI[QYEWYtTÎôöúîíæáãíìïäûæííæàäôØÆôÚEEpfcmdd`ez~rz~}tÆõÑÖ\ÛÝ_ÄËÀö÷åûôüúÉÐXÍü÷ñùöÚOC\u^ÂÒufpZp}}pdb`y`of{d}RÐÂòúàáãêïéêàäåúðñýÏÃÞÊ\OpsdkjjodalmdpHUÿäûüüäúúàáúåäøÊÑÏõÅUFGU[STw}uAFGWÄ^B~rEXÛóÅRGqqs|sxeblzyCPCqp@\ÓÚðòûùþçúçàääçûäùþåÊÂVKMwIREs{d~|{tu}`kobcqADK~N_QÜÞÚÛRÕÚÇÊûúÿðçìíàãííæúüÊõÈÁ_v||zacmlkjklg~xfd|uM^ÚÌTRQÏþáèãåøûäÿÉËÇPFJAZDÔBwGEÙÇWÚÝEtyq^PÝT[PZÐÉßÈÁÐÓGvAWôôÅöô÷øøçæåùøýýøúÊTÔDwwrz`ihjkhndqCtt^TQÓñàáàëéìïéëâúçúõÁÉúðÙõõØÁËóÂZE^LqOÐUqvL~sDursqdgvJuwFNDÕöòÌÛËÂßÊýóóúæüõôùðÞSWRJtTVHwLNs}F@tuNW^uPXBNGQXXÃ÷ÆYNTÝÖÆÎÇÀËòüýóóÚÔRÐÒ_TÂÚÜÆDtsswxg``zfdMNOPÌÂÊøâìåûçáçäìïûñúççøçùÐvvOse{pz`d|zzeprfa{dxss~yvwu@TÑ\MYQ@]ÞÇÜÌúåçàïïáíéíþöýñÙ×ÎÌÚÀÏËZ}uH{d|vz`zwKtMÜQÓ÷çäñÈÌÁÞØ÷úåóûöÀÄÚÎÂÑT^@AÓÉóÛSJvpvItKchicarIEqd~vAPÒËÕNJYÂôðÿåùûæííììáóÑÝõóÊÈô×KwwC]ÓUTGwIM_GFÐÅßÂÿæáçõÐHJZXT\CIMGWÇñðËÂÍÀÀ÷ÍÂÕBQõöýòÍÝupHtdaikbzsNNFÅõþþóúøçìîéàïèâáô]R||Muu|fwrse|{cxpJZLFGwYWÑÉÃõP}JPSÐÕUÕJ×ÊÈðüáâðüûåæóôÈW@ZUÑQD[pmlfaaayy}eey|wCRËÜÇýüåääåúÿùääûÞWÚH}xrOr}u[VSÂôÝA\Ý[stPÑ@]Ýöý÷úäñÏôä÷ÖÙÈß[ßÆÆÒVÆôðöô÷ÕpKD\E@RP@wvppyd{df`ld`ce~ILuÙÛUÕÊðÂXGRIBZVÙ]ÚæàçåââöËöÈõØõùýôøüäåðäÿÖÜÕVOg`binil`gxvzdyv_Æöòúóõóòý÷ñåðÃööÊòòöôÑ×@Juax|okbdesHpsuXÕßÙõôËUGÖÕÖÌ÷þúÿüÃÓÂËõÏÀÍ÷ÀÀ÷ôôÄÞTTÔGVÜL|e}w}OV^P]BUÓV÷ÏÞXqDZt^ÇóûýÉõÎÃÏôÍ]LprLHRÔJZDKÔ\Óñ÷TEzafm{sqfap{yXÑØXGR×WÆÿþõÀ÷òûøûãäÂÎÈøæáìâüÂÖGLptWCgcaerX\ÑÐ\^QÜÛÁÒAvqHÜ÷ÃôüÑÕ_WðöÿæñV]Ý÷÷ÊýûÃ[tKJsFF}`nmaae|vzl`gs[PDOeJZôçæïâøþûþÿæåþÈ]NMVÕÁöòÆ[L]VßÇÒVuSÉßóðóûStßÃôæä÷ÏISÑYÉüøÃXryezNP[@uwJAÜÿòÎRy{zgBIamjm`}ÇØQVLqÕ\ÂÿÌÉÔØÇôýàãáçäùúúþäñÕNMLÝÎÿá÷[[CPÂóäüÆVWSTØÌþËWI~ez~rx}ffeg|ZÜÇ×N]SRôüòòUÓÂÈúáîéæ÷Ç^IWØRF|`ddf~YTÞWtL{wØßÒXu[@]õùý÷QwpyYöôÎÜCÑÃÉùàâáçÛ]CZËÌÍÉÒÑÇßÜðþÁÝsxzrR]EB~epuÓûæçÿÝÕÇôíàùòÈÔ[EMÃÊUÑqfdf|eggmnko`}Cwqal{N×ÆÇóÌÜÕÁÈùâàûÈÚ]ÓÉ÷õþóþÿøäãìãùÊßR\ÌÂÛ\txdw×ÁÎÑ[qame@RALIJPÕÄØÌôûñÃØÂýËÄÃØYUßÒWÙÙØAglcpNNG@q|rvÙÄÀ^s}Z_wAQVSÐÚÓüùýÈ@OFÀÏÁòóÚ_WôýâîãñYs}]ÕØØFtNGßÀöûÊ]RÕQõòÀÈÅpOÙßÜñðÊÞyg~vE]ZEHsMQRÜÎÑ@qxtVZHLt_ôÄÑÚÞCyacepB^M]XwAÓÝôææýÙYÕÇ÷üòúýöåáúæàûÄ\BLÓÐTZXDOZÑÅÉúöÜNsffs_ÖTÛP@@XÞþÄRCq{yE\V^]QÍåïèëçÆBwsvÙØWCN~dxrKÑVp{fcietN|qNMPWÏÿýÄ]ÕÃÑ÷ûþÅÒUTØÜùäöUGq||FÄØÂåçäääìèâùÉ×ÕZZÆÞGWP_ÚÄöùßrahoccsFIARFVÚüàåÉÖIvpdv{eryKJFÅFconhczXÔIu^FÑñåéúÏÛÑVWÎðññáãæáàíãõÓTPT]ÔTÔZVÅòåíëïôu~gnjm``mayuAÓ÷ñ]wA[KpTßÜUÓÈûçïëä×tvsxD@p{gds}wÒÜ^u{ep~K_^XÓõääøãàòÕIwp~vBwuBuVËóïêáôPIAK[ÁËÌôñùæçîîäÍRYLez|pwT÷Éñä÷Ó\wswNTÞPX\ÇÍÿíäÄ^pxfcagdaeJÓÐÎåùS|y|egdrItÝÂüàëú×Xv~f}ZuYñäíãáàæñÓ[vuswÓñóçáäÉG}}`olbrguÜÞòäàäðTÜXMIEÁBHDÈðþåøÀÕNq}edeqvI^ÏÈôåçüôÕuelagg|@CÛÜÚôþòßI~updO[ÐÞ÷æîêèáÇT^vQÐÌ×[W÷åíáôô^ufytXWÕØÎåæâàðÇQLeoi`mfz`e\Ä÷ùüçýßL`cqawRIJÁüðÿóóÄÕpd```gyxrRÊÍóóùÿúØÐÓÂñÞòðýûçûçàáåàõwrrOOG@ÑÅ÷öÀÍöÛÙ]z{cbgM_]SÍÃ×ðüõöR`cmncHXÜõÿøàíâííñXG}vty|HQÐ×ÓÄYLueknndr|}pXVÛÍóüÿòÞ|MUSßÙØËýðæçùúúôZ~uTDSFuÁùýçâîãçåÎSDHp|vp]ÉÞÔÂôÑßÛUDwechilaswXÏ÷Æ÷üôÐKJtuswHp||HS^TÎQreeeL@EWtZ]ÔÎõóáýÀ^NQÄÁSÄÆÁÈùãèêàöUMIGÑHTÑS]WÚÎòóÂK|{fflkbamzuÙÊðþÈõÜQA_X__UVSßõñô÷ØÉ×Gq}vprNuMPBA[ÙÖT@vtrJLZEOSÝÅØÉáæùÀt}{``xZWÁöÿýæëïíãõÌÀ^ZIJtA]ÜÂüïáåæòUEw~ONey{qCFÄÄÜÃUK^[qut|wqFÅVÞÓ_ÐNtÞô^NIyqC_ÞÛõÇUÀÓtstzrA{M×óü÷ÏÐÏüÊÌþ÷ðòÕFTÈäççíáçþÌÚóôßÞÆÐLvHES^GVNsqÕ\NuL^ÞØÐØRFwqgfgOBI[\GUVßøüäóÿÈTWP@wYÑVZÚÈþøð\R|bcarxxaay|EËøöñöÝÚõóöøåýúþöøïèúÁP~qY^×ÀÆ_GIYÐýäÍÅS{~PÐÂ÷÷ÅÖôÉÙÊþ÷Ö\xkbcmed`asvvAÿü×ÒY_ÆÏÞüõÑ@B@JVõñÔWGOwrd}JtsuOwAPÇÝÒÛÊóäåãèíçäüðåáìäÏÅÆßÛUß÷ÛuKJpKBÝÙTu]V_ZEÛÓJuXFRÞÆÅ×qwO×ôõÿÏNq}ax@QÒÓCLUYÇÂóÍ\ÕÕDLÒÜFpfft@SÛòùÃ]CFOÞöõÁNpFÞÆüäæäúùóõýçþýÎÏÁÈÞôúòõÇÌÇÓÞøõÓ[M^YDÛûôÉÕ@w||DZJKpwwvM]_ÖUSJt@]V\@~~rJ_ÎõÎÀYwJRÏðÂÜAA^]ØüûóñÌÜVWÚÆÛÆÙÊóðüùøðöÍ×ÒÇÈÁÒÒVSBÝýççùåôOtwJv~sdgxrNSÜTÎÌTVX]S[ÜQAAWPWÃôòÍÔItDÙÓTSJvCB[ÜÐõÄ^NtI[vq]D\ÜÄÂÇ\ÇÔKwqs|tRÕÔRDÜÁýýòûÈØÏÄÞUZÖLÔÂÐÏÚÃÊÓÔßUT]NwOK@Ø]RUÛôÏÛÞWPÌØÒßØÛÛWWYGQNqwNq||qJ@ÔÌØÅßÙÉ×]^ECsytNX^TÕÔõPtw|xdg|HDÆÊñðõáåäàäù÷ÄÃß]]U×ÐTÒýòÝGygfmes{NJXÕTÈñ÷÷ÿüûõôôÁôüýçäóû÷ÆÒZgfc`daa~|rB[ÆõÅ_XNwxd|xyZG\ßÖõÃÉØõüþÝqt|{}uITUÌËòÈÛÑÕU]ÇÊÌÍÂRÓÖ×UÒÌÍÛÜÚÔÛ×^_YÕÊÂÀÙÜÖWÒÕ×\QTÚ×[_ØÙÒöùðÙACLag{qCQNOEuJrx|tJq}yx{ytIXÍøÿóñóÞÑÐÇðåäðßÍüòöÄÆßÓLKS×FKT\WÃòúýÐ]GDAuK@VÔÆUQÕ^Æ÷ÿäúô]taaxg`azuMZÄÇQQXOUÙôö[u@CZEÓÆÂØTVtssOwK_[@s~OÛÎÎÂËÁ÷óÇõõÐÅÂÎùæãáûÍRJLJN[ÕÂÖFDuJP×ÝÆÀ^Nu}}|~pNL_TÑÄÝTQ_]ÙÙÓ_DRXBVõôý÷ÌÆ[HCG[ÖÏóüÈÊÈËÍÙÝ×XKKdgxpvtGÁùçàæòÍDqL[JEÛßP\Ó÷ýúáâæÉT]×[NIAtqYÓPIu|z~DQÓYwLvssvÓòððüÏÕÑÏñÌùãâàûðþúþÉÜÑP@pwKqr|daBÞÓÒ[ts|ryqwLSÃÏÛÌúåùãïîîãåöÁÃTÔÉÅÍPCqtItxfypvWÄUÑSÆÛÙðòóÊÐAG\UßôùçäåøûçàæÓ]C}~gcbcgdrPõöþåÈÀÉóôÜÄËÁßÙÛÎñóýÿöðöôÓqp~gblgqs|rqsxJØÇÎüýóÈÖÙôýþðþóÏôÍÆPÎüûÿùÿÌÄUQ_B_Ku@|dz~|v[ÏÈÊûûúøÉÞÒÞÎÌÛÙÓÛñØ^×ÚËÂÏØ[ZÄÀZIqNYW×BJwvq|xytTYwCGYW÷áãàû÷ÒØÀÛÛÄ÷òüûóåæäù÷ÌÂÆßÒMvILF\ÙËÿåýWUÝFvqIqqrr~F]ÔÏÈ÷òÈÖÜÊõÚFRÙWßÛ\vNF@RE\ÌÈÅMqy}tGN@Hqs{}]ÂüûûáçðûúåæåõÂÝPZNLy}OSYDÔÖÑ]BLXßýáçùöÛÝTÃóåÿÍ×]DI@tswtB_DXÔÐvgaeywZRXTQ|v\ÝÆÊÿ÷ÑQGLRßÂÄÓ××ÝÏÞGW_XWÖRvvv~tSÄËúçÿ÷ÏZOXSÍÊõÙBt@I^ÞÍõÊóÂÇÿøÎÝVWZ@\KzdmnlfdptwuseeHUÝÎß[_]ÝÉðøçåàûÍÁWÔE}pp}pv|xdgzuZÖÛÃVLCtBÒýäøùùõÄÛöåúÇÕFII~zf`ddyvKAVBM]ZÂðýûðñÀ@pvtNMMu]EvqtIÕVV××ÀÆßÉÒQÁÄôÈÅÚ^MFu_ØÑÉÃXYXqpeuÄÑÇÞDq}pqvEE^ÔV×ÕGDZQÛÜÆöÈÖDws{qOwADu~x@GLEÞX^ÞÐPBÝöñááúçûýñÉÅSER@wDV@JprqYËÍÑðÎÓ\rxxIHu_ÑWUQWØÆôóÎôúòÎÝR__ÔÕDØÞFGwzep_ÒGJp`cmlg{y{pWVQÊËÂùàëééîáæöÍÎÄÙÄñÂ^ÕÑvNEGEGGEr{epOÕÆöüóðòðôÿþûþñöÞ[AOMYYF^]@Iv}ddrMM@ÑPJJvx|svFJ}pKu_óäçáíìãçþòöÈÌÃÆØÙÛÖTW×ÇÁÉðöPpwt@ÔWÓÎÉñüüüüýúøøüûúÈÕ×ÕSßSÐðÌWG|ggd}}|uJvs|}psvJ[XVÇÁÂÆõäàæïèîâþÃÝT\Ntt~t@L@@Pôõõùüý÷ÒVX@×Øõþý÷ÊÀßÎòÿôòýòòÍßÐÐWWUQ_ØÒYpg~uwZß\W^ttIrpOt~zrpuMTÉåæíìîîáûÉÝ[RS_X[Nwxw@F[GqB@JKJwEQÚöþãîïáæààúäæþ÷Á×ÐRARÒNÖ|KPftONFÝÖÑÆÏÕFwxe}}wNvCvCÜÄÿâïïàääóÌ]rp|{|vCGHEÕÑËõÈÂ^ÖVZÖFAÐQÕÖ×ÐÚÆÌÑÙùòøûÿþÛ\EL×ÝÐÕFv|de}z@ÔZ_AZPLt|d}r}N×É÷ÍöúæìâââáüÄ]Nqsqs}}rtBVVÝÙÖÑÑWOwAFGVÃÊôòÿùõÎõÏòùñðÈØSCtr}}w|qq|JÕÐÑQ\ÝW@sx{~ys}}qv]ÐÙÌüàîéêâòÒÒÆÞÜ×KZCvqwHQW×ÔAÝ\Mv~uFMÜÌ÷úýýåýÿçùåöôòÝI~rJJJu|xagz|YÐUMXXqe`fyss|GCNVÕÆøæàæäàÿÓOqvGWQD^UDWÆÄÂúúñÃÂÚ_vrODTUÕÓÌÚÝÅÁÔÇáìáààóØ^RÕÁõÆÔÕRpy|rOGw~p|`lhjcfdxvNM^ÖÌýâéîìãðÊÙÓWUÚ\NO]LFLMKÕÎÀÚßÔLOyeJÄôÿòööõ÷óòþãäøùåÉ×X}xw}|swXÓÐTXGKxydgfegeyrMp}N@UðøåçåóÏÙÖßÈÈÆÏÛÐT]ÑØÐÑGJHJtxdccfdqAÄßÃÈööüáïèìíçåùÊÀÚÝÜT_XOFI~dg}tp}~}qghjhcxyGFKÕÐÇóæííâîéàüÂÌÒAGS@Hu@J|~JDY_FBMF}~r}sGÓÄÙ×ÂÞÑÃòóöñ÷ðüðÇÐÒÙØ÷ðÏY]UHwJAwpAFKrx`hkmzvp~ARJZ÷ææìîíáääÿÌÝÂñóõÓ]ÚÐV_^HqMt}dzd`a~GÀÍÂÈËøÿåáæäàâæúüúôUELJCJtxxggxr~gvtCIup|y}MUPRW×Ý÷øåÿáíàãàæÿ÷ñýõòòÌÎÛÑØÁÒGvQÝXÕÖMusqB[ÌÀÖØÞÏÊÉòóóäåÿúþðùÊÃVEQuxx~{rydeeyffdbhofezrCBYÔñçàïèîêêíéìçåúóýÂÜTKFAtvrswquuXVREWÝÆÁÒÏö÷þäååúçáääæàæúûóÍÉTutzd~~q}~qvHMv~xeabfzfyf|DÔ×Ô÷çÿúââíìîîáíàòóËÒÌÆÜRrt`ezexyzzvÐCqÓÖÀÿäììèéîäüÏÈÅeccno`cbomfcxNvpv}r{||ztHFÝõóýóúåøúüÿåúóðñ÷ÒBOt}J[EXZYAFSPBANNCZÖ^Y]ÑßË÷óùûäãîéêîíæòÃ_p}prwgcblhjlacbmccdefzMUÚøíéêîéëîáçäòÊÉ\pyyg`blmgyrOUY^ÖÖS^Þ××Øôÿþççøúäûåäáããæñ]Drcbb`eppvNLHqpqydegcdd`fqCXÕ×ÌøäæìëêêêéíâåÂ]QÝYHebblhkiaggxzytw|pBÛòçìîéïíûÈUymkjjjjnhfruBM@JHDEXX_ÛôóçåòùËÆÃõýûææÿüÊ]KstDYÖßD]ÓTPPVTßÕYYLp|gcg|wHGAÀñòäâêëïìæóÅDKOu~fmnnhkfvÅüäèêêèìçÞJwzbmhkjjllfpGSÝÖÞÎõËÀþåäãíïïáæþùççáçöÖ\rbko`ggr}vp}}qMDDAHx`ccf~z~tNPÔÙÌúãïéèëéíáçðÈÖ@pemhknafdged{b`~^ÁñáíëìäùÙtgbmjibaeLÑÝÇÎøåäàçäçûýòõõüåùÃZNpzdg|rt}wBDAtJVô÷ô÷ÊñÇRHJCM×ÆÆñòÿúàíïîãâíéîàøÏÍÓK~glhholc``g}TÀòåáïïîâàáäãììíáþðË]Kxgdf`bbhilbg}LIÔÈñäííáàïììâãâãæææûçÿÍÙXv{dffdryesKr~ab`gpI_XGJvr}pJY_UÌÇÞÀÊùçàæâèëèëéâýÛØOgabkhomcz|rMOpAÕÒÊåàíîêîæþÈ_I|fomooapQÍåâêëêèèèîïïçÿùñÄÑ×IvvvvwtOM[ÕPRQÕPÐÊõÆðúúý÷ÏÖDOuGÓÓÁÊËÁÂøäþöðùþåáæûÈÀRvw~fcokhkhlniodrNQÌõôýçæáààìèèééïíçäóÛH}qeabcmkkiib`eFÙóàéîîëëîîêèéìíàúø÷ÃXs||~p}fe|{za```a{ytvvZYDL@G]ßÙßÇÝÛÍÍÑÖÐTÄðòäçÿõöüÅÖÚÑÑÙ×]FYÕÖVENR×WßÏòòÊøçãìîëêïâäÍZKyalhnapTÛõüçàççæææäåÿó÷ÏÛÒtx{y}~NJvtHS_tt[ÓßÁòùääáçòÒÚÁßÜÍóôÈôüäúùáãàäçàæùóþòÓOKuveefbhjolmzN]QÜñåûøæíâëîäæäÁ^pvvalnnonaa`fwCRõäæåçâïãàãïéâáâïâáçòÞRE]IJHqfezdfcg~egztqypAIuq@ß]ZCLItGVYZZVÕ@EÖÉÈÛõÏÉÃ×ÚÄÓUSYwI[N}exppysqEHMÑÐÁÎþìëêëáúðÀS{fmihhcex_÷üüüúäúúúçäþåýÐBqpts~e`mds~}HXUWØóúþþåúðõüåáøËÇPuuÔÇÝÐÅÍÀÅËþùñöôÀÖQXR]tq|{c`dojhc~}yzpLÓöáíâììçûææõÜÓÕQGvuvyfadgz~vGtKRSUÁýäøþþþùýÿæçûäæø÷ÿóôöÊÍÇEvuu}gzxyzzsIrfcablgzvBA[@ON[ÝÇWÐÐÛPSÍÊÞÕW^BAÒÐÁÆÛØÕSQÛÄEwtwptÒðýÀÚØÝÝöûàîïêêâóËÄÝ]E_VHfijlo`alobafpEMKG]TÓÊòüóôÁÖEFCuvdddgd~BIyvDVÁþãîæý÷ÀÁÈÊÿùò÷ôöõÍÃWX_ÐÆÎòúçâáûåòúãàæûþòÂÝÝÜ]rljonmcfqDÀýûãìîéëèãóÑts~sC@Lwzcmbd|ttHOuEÆûçøûçãìíïìçÿýýüýÙÔDKHO^Zt}gdqIWÅöÊÄEwKNvqJwpsvvÔÓX@qqvEÖØPuuqst\Ïü÷ñÿòóýääñÑJpqrvZCLtvL_UÅýùýÿáíëïçúùùúäå÷ÎÖBwO@AKxfgcl`fbl`axv[ÍåååäûååùüýöÑLKy{~e{zgevWÍññòöÃõòùùüøòôõÁóçûÈõÃÜÐÞÁÿæÿ÷ÏÇÄ÷þúäÿÌ÷ÈÚõñØ[Jd```m`mnhjjlxK\ÝÙÁüüùãáÈÃÞZFJOVÒBtKMKH_ÑÇÖu@UVÄÎÁUÞÅÃôóòàìçûøäæáççäøõ÷ÌÉÿòÆDX^SVÕÂûþÊÅÇ]IBte`mnalnaedaeqE×ÑÄòôÃÞÒWÇñòö÷ÄÑÃßÛÈ×GNvwvuCQRCZP_XÆóþÿþåáìëïàçúò÷ñþ÷ÕDXCJA\YN}{|yxxdmiio`d|K]\DSWQÐôðÛS@OJ}t@pacg|vKFÒÎÅÄòùþùæçü÷ÅÈÍÒßÜDvtMSÇÎ÷ÿþôÍðÿûæìïâíãïíàæûÃRZYLq|dzajhlmmgsßÍÎøçøñöòËÜÔÖÜFyz}zdgdggg}D@D^YL^ÒÛÊùçâãäåæãáâìâçøùçùÂÀÃÕHO_SP_RÛ×]^ÇÌÚÛ×XrggealnljicxvB\ZDPÖ[VVYMHFÚÁPMDMedwqwwCGqpZ^B[]]XXÜþæçäãâåûæàææáàäóÎöÂÒÕS@uGÔØÖDHHec`qyp@Aqy~wquYVFBDÐÕLvwKadp|||uLvAWÐÜÞÌÍ_RÐËõÚÇÞXKw@R\ÅÿçúäàïãäæàçýþæãçýôÎÖLt_XMIupg```a`cgbibeHG_ÇËÂÍôÿñËËÀ^JNAwd``oogdyqutwKÜÉðçàíàæââàæççäñõËÃÍÓW_[VTÚÎÉÊ÷ËÏñøççþóðÙGFEBuq|alkjonlfJLVÉÈÇÝØÁÐWÞÅÝÔYMq}ye~y~qv~~}ppNPßÀÛÀÈôðåâèèéèïèëìàæáçóÈÜ\OzgzypuKus|e~su\TECNJCuuKHOtuJsrabae{{zyxdzv^WßÃÄÛRLVÛÉöüåþüöÂÍÃÅÂÂÌóäâàåþòùøòúçææäøýýüò÷öô÷ÚR_GIq}~zeaccmbdID\ÛÃÄÀÂÅÞW_FEMIqe`mkkhocg~suqvCÓÈüúäæìîìïïíãæûùþüøçûñ÷ôñöðýðÇÐÔØõöüù÷ÎÝÖÒR^ZBMt||~e{{fdrBSÐÒSNwpvN@[QPupps}{xdaafxppwNOE×ôóøæâîéëêëîâæäåÿòóðÊßUWWUÕÙñÌÇËöùûñÌÇÍÈÜ\Z@]ÑSDwqJM@BIuwp}{z|qreffgeu@Os~rKut[WÖÞÄÉöþúüñÉÆõøáíïéîïâãâéèâæáààåóÃÚU@MYÑÖGs}|xexrttwOXWÇôÂÐEIrzfffdedd`cblonom`dyvBE[SQÇõùàéêêêèèèîïïïãääääûóÊÎÂöÿùççæåûààáåóÀRutv|yfmhnlcfg`ocfy}rpwtABGNzaazwZQÕÁÍÂüåàâããääãéèìãàããæûþýö÷ðôÐRZMOKNAFBqegcijna`fdeeexx~xzzdeeddzrwB^VÜÞÖÙÀÎÆÈþøùøÿýÿùþÿúççæäþñðÿøùúûÿËÚÛÞSBp|ppwtJqq~dedxqJJwsyewtr|rs}qFBB[YYYGRÕQVVÝQÕÏËÍÒ\ZPÓÇñÿýÿûòÿüóþÿøüóð÷ÿÿ÷ÂÙ_ZSY[Orggd{vL@MJNZCI]ÓÄÓYYYBtKG@uGDZ]RVÑÒÒÛÀÎôôÆÌÌÂÈ÷÷÷÷ÆÐÖÔEp}xz|rx||z|wD]YXÐÐRÓÀØÔ_ÔÐVÓÒÀÁÑEEMHGÖÅÆÍÇôÍÉÿøùøûÿõÄÂÂÀÀÈÃÞ]]ÙÉÆV_SRr|efmmbmg~JEtruGHJ^ÙÖVSVROBIu@KuuvCE×ÙÜÝÈññåáàçáàãçúæçäûòòÎÁõ÷ùñÂÀÜ^vK[Npwprdccbmhnnhl`f{dagffdsHIOKIs~sH@[^Y[ZÝÀñùüþäàæáìâããáçøüùýðôØÕDWÚñúùðö÷ö÷ðóÀÓE@txeamijjjhmohnlnoba{{z~wtOX]UÓÛËÉöäàéëêèîèèîìàççåùåäúòýýñôóúúøöÎØVADDMHr{aaggdcaalomaga`agclcgdabfacewZ\DÐÚÜÅýãííïèëïìéèìáááçääåäÿ÷÷ÀÒÕÜÀØÛßÕÕE_ÚÐDuIOOSÜÛÀROFCtpLI}zgexdxJrfzuspÑÁõðÂË÷ôôöòóðöñþüòøúòôõôÂðåøûù÷ÈôÀßÚÛPZF[Y@[ZMr}ptMOLK}s|~qBSSYÖÙÀöýåÿóòüÿüåæçþöÂÍ×G^SGtKW\M]ÖÚV[]^]_ÍóÊÞVTÕDA]]XuCQBMÕ×PIqvruRSDLK_RN[ÒÇÍÏöøúáîêéïïââïîíçÿðñÂÒÆÎÇVWÅÓPÖÞÓNygccfgg`lbconcc``ztwIWÇÃÑQÜÒQßË÷÷ÆÔÛÇßÆÈÈÊöäæåáãàáæäåýþåæçúûåäûñ÷ÊÓÔTÙÓDRWP[Iurgg{~edzxza`ffccfygd}tIwqvpxtTöýðþûþýäàâáâéîâìïãíïàúäçáåùþ÷ÚÛÏÉÅÒÜÑYuHNL}zedbolc`llmcllmbonl`fazsrptZVYÔÉÿÿúãâääæáâãàââáäçáûüþûçåûúùñ÷óÎÝÚÞQEMMuutJGCIOAQ_KHIv||~cmfaaggdgddrIvMPÑØÓ×ÃËÍôþå÷ôüððýüþøùüäçäçäçæäøÿöÁÒÕI{ss|~xzeedetIsp|~}rqssFwrD_QÕÙÁõõÚËþ÷ÌÈÎÌÁÀÚÇß[]ÖDPÛÓßÙÜÄÍÛÝÌÃÑS^_SXXBKuwqvwEÑWTÝØØÂWERXJuHvJOtwv}sJq|tÐÝÚ÷óúäåùääåääúûåý÷ÆÁÀõÇÁñôÙÛÚÇÔ]EIt{dddccblboimaaf{~stJLqsstI|xezwqwDR×Èýòçïìïïëëîîìíàåûø÷ÊðñÊÄÙÏÏÀÙÂÄÑÞTD}ga`cbionknmadyzy}vJ__CODRFqOw~dfy|qtDÑÎÊöúúùçâãàíîèíãâàáøýüóþúùøÿðüýöÈË÷UFAwgacoihhiilllmcbccnklcnbaezdNXA@YÜÊôýáàçæââçäììáàããåøåøóðñðõÍôÊ÷ÂÚ×YGKMCNBHvuJMÐÛÓÞUZLF\_RCtrz`oommmm``ce}ptNC\TÍóùúùäúùúäáãáæøûúøæàæúøøòõñ÷ÌßT]MMw}pvsqqIHLYK}{~rzdexdegbcccdsrvYÑÍ÷ÿúúÿýûúöÈöñÏÂÀÁÜÜÑÙÈÌÚÚ×[\WÚÝ\MFAwvLV_]ZC@WÓÍýùòðöóÿòüÍXZWZtM[Z\]LuC\Àóðñüüöôûÿ÷ÎÎôÁÙÜÓÄÄÕYNuNT×PRDAGZSÖNwrMKuHwuwNAtK[MGONG@FGu|z{vLFYVÝÚÂüäãïîîíïïéèïììáøòðòôÆÝÝTWTÕSZJJq{dge`gd`onb`gxtFSÔWÓÙW×ÜQ]EWß[FQ_AN[\PÞÅñååäæàíâîéìííéïàáàäóÏÊÈÏÈôüüðôõËÌÒÝZtq{|~fddciilobncd{`nbmlbzgfexqHqtBQUÂññøåàãïîêêêêêîâæáàääúýÛVÆÆÇÄÃÆÝWPP[NMGHp}pNRGG^FM^R]QQÝPLtwtqx|yd`cg~vu]ÞÅØ÷óÿüûåúæâììâááýýññ÷ÂõÏ÷ðõÈõÌÛÚÉÉÛÁÂÍÌÐSV^Y[PDANL[AppGK}y{zx{ss|xyyO[S×ÚöòýöøäûúåúþüåææçäåöÖBD_U]W_Ou{|ruOttuswHÕÁÂÇÑR\QÛÈÃðóûåüòòð÷ÍÞV]S^ÔßÚÜßÒÚÆÌÈ÷öÎýóöÿ÷ÍÇUENGSÔWELKCD\S[KqzedgzrJqygddrJFYPJ}yt@ZD_Ô^S]ÕÄËÈÙÝ××ßÄÃõüäøòüùçæâéîìíåüõýöÆÞÔÜÖMrzeg`fccnilcy~yyepLZYEÖÑTÚÙÊüóöÎÛÛÐÀÌòøõÁÞÂÈôòûçàçáááèèéìçþõÉöòæçùðØ\wwOCtygaijhibmikjilcfrvy~tDY^ÚôóüøàãääáíîèêïíïáþýùóûåüþÏSM@DBDCydcnihhlbljilaegegg`bgeyKZV@vpvIEÅðóÈ÷ÿðåçäæåæçæåäíîíàääúñúçúñ÷ûúüýýðÊÁ×Xqex}yff``oo`blob``af{dmgegaz\ÐENDQSQõñÄ_SQÜÍòáãæçãâæåàíïåöÿòÈÈËÉÔAERÝÔÝöôÑG@tg`d{zca|{|}pqz{v][MÇöÃQSTÙÓÉýóñÌýåøòûúôÜÐÞÌöðäáåðõôÒX\ÚÃ\@P^KBDXKKVQÝÞÂüóÝREuzcmcboocmonlnklafgOÖÑÔÅôóóûàããàíééîééíçþðñôñøûôÛÓ^qz{zfeyzestp}ptHMDÞõÄGLtdbnhonncsqv^PAA×ÁöññáéáäìéíìêêëëáþõÍÛUTÑÓR@Cqxdg|egpYwKAt}|I[tz~u}gggnndywKHGÄóôñæìâàîîìéêëâúôÓINZHy~~{efxqps|yypGvrNÒBp}wwwq~xabbmbacaf}VVZEQÉýüçàãìêêêèèçñÂÔv~yezfeprytACWÀÙ_XÅÚMzaf`bmlonkomoib``azvsrLÅÊÍÅÍÏÉñäæíéïëêëèèïìëëíäåàåÎÔDry{y{~x~}e{r~sBP\u~wOKr~dfzNYVÅÞßÚÄØÌÅÖÓÌñôÍÃñùøÿûýðñäãíîîííäåæüôûæùý÷õðñÑDt~z{dg{ptqt~{eda{df~fmcfil`c~v@PØÌòþýääøøüó÷À÷ûçáæçæáâàîëíîïàøñÊÁôÂÔ\DBEYÔStpxbohncg{e|{d{|{{}r}y|tAppVÑZTÜôøàîéïïíæäýüûäâéïâìïããáæûñôÈÆWX^VX@MuCC]PEtyeaijhknbclnmhoa`nhldqMQÛÏöøæíïìíïãççääúçáàãâïêïèíçÁÞÝÕU×ØWßÑPUW×Yv{fgfom`mmbfefaxfsA\s`gfaarAÚôñúäåäþÿûüüÿåäçââîéèèéëâéâøþÝZuOYÓÛÞÁÂÈÄ]DEqdmnkinjjjkkay`hhikhl`deHÝÍóÿþýöÏÊÃÄËøçæáìïèêèìêïøúñÄXMNuHM\ÜÛÅPP×]veddc`ezzqvzfsYÒlgoinextVÀôôõþøÿòþÿýðùäùäíèêéìãÇÛZq~|qIqpwA[SPZÔTCpqIvygbo`afiiefcjiff{OTÂÿûþòðòõôÍöýõñûäáíâíãìéìèçÎÁPtysvswqMXNCYÓRtyxd`c`eyxuK|afttvy`nkho`dI^UÏóçáãïîæóýäçæàìâââîìíèîáôÈÒX_BDOreywZ[DEJe`ggacoooiooca`gfljkhklzp\ÑñÿÿáãáäáãéïæãììîîëãíáàìÿùüôÀVÑÖHJJAQGKJECusq{``gzedxrvzysxged`nmddz~qwuYôýæîèêèêëîéïïïéâæúþöÙË÷ÌÀÔQÓQVUÕQN|gfc`g`bhionbobbmmm`ffagsvEÙÏÌñæáàâìíêêëíáàïàáàûûäàïîìããáþñòñöòöÈÉÅR]YNvxdgdge~dee~z{dfdye`gacdy}JLÔÎùáéëéëëéïíááâìàäåþóóòäáøööô÷õöýñÂDuv{zryecmoibceyef`loiobkicfsRÒÅôüäâèêëèèìâààåñòçäþøääóÈÆÜÎöòûåóÉ÷ôÌÊÞQGeydyvOOrz`e}JCLJrxzdc`zppZÇöàéééêîíáûÌÊÿñöÍÑÝÀôòüöÎÁÖWÖÚÛÙÑ[Cu|{{gbhnlclmbmb`d~wvy|rpJDÕÏõôÈðçàèïãäþóóôÄÞÚÇÌóøåÿþÊ÷ýóÿüóôØ[NuNws}{}}xy{~dcjhl`de|~e{~qwNF_ÞôûáìèéïâáãèêïåðÇßÂÛßÚÐÏòûááàäôRJJYÔÖÓ_sgabbconmlnofcmojibfrt{af|qLG×÷òçíêâýÀÐÄóøúòôÌÅÒÛËðüåäçãâàåòÁS|ad}uK]QGrddgf``fbldxydcmhleywutMÝüæàìïêëáöRFTÐÉñòþûòýøæäùýôÌÍÿþÎRI{iko`g{yenhikoblnjkces_ÊüöûããàààãæçáûñÆPu|r^ÛøæìèîáøÊÜS_A\ÜGw}z`iodrGLI]Cwr{dcmolmgwKxgfmlmetÕôñçïïéèîìæûóòûäàáþñÌÚÔUÛöçããìíää÷ßFy`njnfgbcloofzzrtrdggbhnon`CÕ[OOttsBÝÏýúáãáçøýÉÛØÓßÄùààçøÿçåöþáíïìàåõTEpglhihndq}y{xp~HGuquutrsu}edHYÏåáàäùûÿ÷ñåäþäçæàäääþøåæçåìèéìçäçüÏÀòõÉÏ×P[vzbom`nobc``f{adyxpsvuvvt_ÚÉäãïïãæøõÜPV[CÐÁöþäááúçãïéééíæýÈÙTÐTÑßÞÝÖÓRqxeaabbgx}yeamcfdyvwN]ÖßÍÀ×ÐÃöùàééâàúÿùýðö÷öúäåàíìâìïïééîïäðôÐLvzab`cae{}vsygcllmombil`caeqLSß÷ñüþþÿýýòñõñýüðÃòðÉóùøçáæããíïééìããáçääúøÎÅÛÕZKAMw~qIE_NtJtr|yr|sz{eesqvBUÁòýáàáàççäùþðÏÌÈùúóô÷ýñóúàïïîêéïîíâåÿöÁÄßÞÝZvxzgagfafg~wegffa``cagd|qprp@PÓÀÀôó÷ùåóöõÁÓPÖS\ÐÊóýðöýþäãííïïïéìáäüõWG_^A]PÑßSGNvvJ}}N[DDuss|z{qvstIDÖßÂÉÎËôñ÷ÉËñýþüóýöËÚÐßÀÍÊó÷ñþåøùüùýÎôôõÛÔÖ]w{gfcomggd{ydohhllbafgfe~ezfagdyLßÇØÁôÅ\XGYÔ×ÊöÊÉ÷ðÈÃÅÇÄÇÊåäúùûþÀV\WÑQTÅÇÔVUPGqezpBLp|s}g`fx|y{r{e}p}eerttFËðÍÉÈ÷ÎÑÞÌÍÌÍÈÃÛÎÈöö÷òüýôòÿðöÀÇÜPNOOIJ|r|||zz{{abomamb`bonlfcdeyxggg{~ruHwqqDSSÐÖQYGEWÕÀôÿÿðþçááäæûÊÆÖÒÔÑÛÇÇÛØ×ÑÊ÷Ï×^]ÔR}eqFNsdxtLHpzgdzfadvPDuIÚóÎØÍÏôðÍÃÞÄÍÅÖAAVRÙÎùàáúüäçøþöÝÃÂ÷ÇÜÂÙÐXABupKL@_ted`bggagfdfaddgegdgxET×RZXSXvtX\DNX\PUÖÆÆõñ÷ôÿáâàææççòðùúúåäûýòòü÷ÙßÔXC]ÒÞÞÐ\F^HMJtCIvpHD[QGATRUÀôóööÃÜÃÃÐS]ÑÝÒ]QÍõóûúøøåäáíâæçüöòÉÍÞÒÀTP[ABvuIuuvqKAYtIMpr{eegyrKKuOMBOYQÓÅWÙÒY_SSÖP]ÞØÁÆÉññûäåæäçààãíîíàæäûûüðòËÞÜÝÛÛÀËõÁÂöñËÂßS^Otw@VZX\CGSÑÇÌ÷ôÉÉÃÀÁÔWPXDwqHZÅÉöüñóðóòýýñò÷óûñðþóÈÐ×ÞÕ]\\DXTS\ÔÓXHKJtqu}{fga``cfzyx~wJ\ÓÒÑ\ZCqIMKKNZ]^Ð÷óåàììïêïíàÿËÞWWßÇÌÏÏö÷õöÊÞÒSY^Ktssqyfcbblcfdyzvursr{stGÐÏÈ÷ñóüþûæáçøúúæàâïáúøþóöóóüøýüýÎÚÑ_FJ}{fx~{fcmoihm`ege~y}wJs~e{sJpKOtuXÑÖßËþæìîêëéãùËÎÛÑÔÒÑÚÛÜÉõÌÁÌWXIKpxe`boklomga`ddgdeqZWÁöññõñùþò÷óòóÿûåúäæøÿñöòþøåæååûòóÉÆÆ]Lvy{zeefokjhmd{~|}|ys|yxyz{~s|~sOF]ÂûàæãïêëîêéíâáäÿÀÅÜYrqu|{pB[BC^P\XRYNwtqyf`fnczp|~yy}wOA_RVÒÇÎ÷÷ÌßÒØÎôñóòýÊÛßÛßØÓ×ÖØôòö÷ùýÀ]×ÚÚQ^UÛÕ^Bsrss{``gz{gzwuX]\VÐÁÂÜÔ\[YOwqs|ppx}wNGÖöýñþúúäúÿÃÛ×tedcnll`gd~vtIVÎ÷ðþúùñÃÖFsealnh`gbbfwNDE_RÈåãíæäøñööÈÓÑÜT^ÓÏÆÓÀÚUÝØÅ÷ÿþúüûÿüóÎÌÚÅÚÄõõÄÁÂÔS^]]BACsx}xr}wZA^UÀ÷ÎÒÞßTSXZCqtvwdg{fx}H[GVÂööóÿóÊËÁÅßRNNw|x|}qtvqqCÚ÷þæäùûûÿüôÞTDGJz~pHKuuqNÃòòÿåàâàãàåóõËÂßÛÞ×ÜÙÄÚÚÁÍðÿçíèêêëèìáàçüðñÍÅÝ_RBIBAE^DNGYZXFBuqMO@ZXXHt|}v}ggzy~xyrrvvw^ÕßñÿúæåùåýÊÈòõÜÖ]I}|zeqEÄñðäìîéëèîàúüôÍÐ\Ie{}}qwKFLVõðåæàâïïãìâãæúÿöÍÂÄ××ÒÒÕÚÀõýääææááâìãúðÍÙÔ^SBq~afyydddag{fgdfafe{~qwvBJtBIMOOQ[ÖÔ[ÝÜÙÛÐVTÙÉüäúÿþñýüòþóôÂÚ×SMvygdd{vBDÝÀüçûûäåäååðÓPMvsqvBÒÚÍôðçããîêïìííìãçðÞTXDH[^E_BSÇÆÇõýýùÿý÷ßÓRupz`okjnmcfzg`fztBAW\OH\P[PPU]ON^P×ÂØÚÏÃñòöùåûúåççãæåäþòüðÍÛÐROw}zgxz`ce}JÔÀÎôÿøøàâíïáäýËØPOBKwqpvNE]TÚôüçãîéèëéèìçüÎRJe`ga`mllmoof{@WPÞÞÒÒ\ENxg`llolob`c`aagx|qtG\XÐÀÜÑÑÄÈÎËÏÝ×RDÕõñ÷ôÎÁÚÃÀÎüäÿÿýÿöÁÁÂõñ÷ÎÂÜÔRXÖÐYBIIE\RF[TÖÌ÷ñó÷öùùýø÷ØUTBwYPHDU\ÓØÙØÚÅÝßÁ÷ÊÈÛÒÔOv|abcoinnkhca{GÚÏðùñõôÁÕPV_pafcfzaggfd{MRÀÁÙöõòûÌôñÀÇÙÆÆP]ONIHBWPÕÝÂöóðôðòøàæäáùòðöýñÏÚßÁÅÖ\[t|{ez{zsMÜ÷÷ð÷çàùäàþÊßDHqeaconhncfade~DQODÐÐÀÈÄÖYupp}dedcmbmfeex|rR÷ýùûøååþðÊßW^RYNsre`{qswAS\YÑÂÄÞÄÀôóöÊÌÇÒÜÏÅÝÓÐÔÆÿåáææáçâéèèéãåååñÞQEMIHXXGÔ×ÔÛßPEOtvMGP]NvqOÔ@pzgdffaclhjmcbf|AÙõÿåçáåÿáæðõÜYZt|xgddfyLEVÒÇöåæãïîïãâïãúÊÑFpda`ac`gpODSQÚñûäãïéìáããæúö÷ýòÊÃÊÆÜßÖÖÉñðõñøÿüäèêìîéíû÷]IDIzljhoohjcyqrstMEVYutuLJq}x|s}p{eqKuEÖ÷ÿúçäçàààãáø÷ÁÁ×@t||q}qASV_ÓÎñÿóýåæàæúýÀÛÔYXAXYI\RSÒÍðóøäàîëîééàäòõÅURMswLAFXÒÀñþåáââàâàæäÿ÷ÏÑ[xfgahkimac~MZTÆöÊÍÀÚÜ\ÕFuM~g{{xsLG[ÓÊñäæáìîìãîìæúòñÂßQsrqy{dg~H@MTÁÿÿåíìïéèîíààçòöÄR^CN^ALFP^[ÐÆýÿúääøçààáûòËÞQ[Kqrxdafdddy}JCB\ÑYNRTSNsqz{yfblfgae|sqquNANCRÕQÓýýÆÂÌÄÓÁÃUUQ\@KZÑÇÅÚÈðäøçáääååóÉÃÚØÝURYYÕ×TÜØÛËÌ÷äååááäûäåûûùðÊÃÜQXLutJO[ôòòòÿýðåàçþýÄ_CK|fmnjjnohildsLÃööüøøþÿóõÃÐEB|{gaa`ayrqJLRÐÚöõÂÉÃÆØÒÊòÎÇÆÐTGD_tqrv^MGÜÂôûáàèèèéãæúÿÓT]KJF_OvwLuGÓÞÇñóýûúçáãâãæûÈÑVXLpy`mlme~|r{z{~psdlonhhomobdgywuvvvyqOI@TÐÝÌðóõþûóöÅßÑßÑLJvrsZWÖÙÛßÙÅÏÙT_uvJF\ÙÀÃõñó÷òùùøûüýÿýüøæææááäääþôØBr|qvwKNM^ÑÜÓÞËÀõðóñÈÜUÐZOuNJ{gcloookhhnm`dqRÓÃÈõôñù÷ÅÔMq{ggca`cg{qDWWTYRÔÝõðöÈõ÷÷ýøøúúôÉËÂÙ\BHpyggqPQÀ÷õüåæáàìâçåúûòøûý÷ÄÕQÕT^CIuuSÁÆòççáããáííãúôÍ\vygggg`bllmgx|rsdcfdxe~pwJU^OSP[[VÔuzds[ÆÅ_BISÊþåõÜ]PÝÖTuysDRRMeuTÖUSP\ÑÞÙÇÖUÚÂýçáìïììíààæäøõÍËõòûÿ÷ÎÍÙÔWRÖÙÒÀÛÂÀÄÌÈÍËôÅÌðôöñöÌÀôÇÀñÍÅÚÙQEteamijkibgKÃÈÈõõôôÚõüÝR\H[[uuu[\BL]TSÒÞÈóóó÷÷öÍÄöþö÷ôÜÓÕ@qrtK~xr|rAQØôõ÷üøæàíëêëëèéæÿõÁWÕÞQ^UÐÙÍÉËÞÈÊÉ÷òçãáäøö÷ÚEYRBOvsq~eeamblhle}pCGpFSEÒÇWOIqx~xegfdgeKÑ×WÜÄÀÛÏôÏö÷ðûùÊÑWAvvqHGÑØ×ÐÒÚÚÜÔÅÏÌÈÊöýûúøü÷ÊÁÁóúþÿóðóóôÈÂÖ\\ÛÆÀ÷ýÿÿääçááúþûÿ÷ÊÉ÷ðÍÒQÔÔEB[Dtyeg{v|aboinom`fddxtCSÞÛÙÝVQÛõÈÛQ]D_PIM[[LvqrvL\×QSSRÒÅØÛÃÇTÔßËñ÷öÄÓ\tHJHNvtBÜÏ÷ñöÿúçàïêèéïìâæüÎÓQKvsrwvKZMG]UÞÂòçááááìîáäúþñôÊÄPJya``onnolmmmbg`bcdqKCvpuspJNJtwJFG]]NEQQV×ÁÛÅÁÂ÷ÍÞQ\GJAAIrsGE\YHtqwLOYÞÓRGTÉýðüÿûûüÿúáãáäÿüñÃÞWÕ×Y[TÙÁ÷ðñòõöõØÀÄTVED\\AEAHODÐÅÝÞÒQGtAJKt|~zd``ma`ad{vuG^QTÙWTßUW[Kwvedz}dfxpu_ÜÒÛÐÔÍÂÍðöÍÄÔßÄØQ×Y}rrw@LtHvLZUÐÖßØôñäæååçàçúääøôÇÆÖW^ÔÙÔÝßÖÖWQÒÖÜôóõðäããàæäþÊÊÌÖ]JszlhlagrNC^SÄôñö÷õôößÐWPÕAKvuMOLX_VVÇñôÆÓÓQGvrqqvquL@FA_ÓÔWWPØÊôóùöËÇÓÁÌÛÀÈôÿúüüûúåðóùÊÍÀÙßÛÁÅÆßÖÖÐÅÄÃöòÿùúýþååøòøüñÃUYX]FXJqvuwv~`fgfdg`ffccc`ged}qJVÎòðóñÈ÷òýòòýöñôÍÝÒÝVFCR]QÇÉõö÷÷ÈËÀÚÖÒZqr~vspvwuBÛðóöñøúäãíééãåððóõÐ\PGF@HOHZÖ×ÒÍöýåååçúðÿù÷ðöÈ÷ð÷Ç×R\u|yz`bmlmb`dx|rHF^ÝØÆÈôöÇ×PTVQCp{amfe|JKDÔÅÅÉôöýýúçæãæøôÂß_FAKutuKZWÔÀõüýòñõõõÊÛVÔWRÝÞÌ÷ÍÆÁ÷Êõ÷òþõÈ÷ýýðÏÃØ×ÛôÉÈÁTÝÝÚÄÒWWÝÑÞÒÔÑWQQ[qfbbbc`f{gdfzssO}BL\Ö×R]\_×Ì÷ØÜÐÝÀÏöÌ×ÁQuVÐVOvv{{yswNML]ÜÄÐÑÁÏÊðÌõöõÁôüÅTVuK]ÆÛÒÈñøúãéîâøÿûü÷ÅÒM~anmdgf~OßÏËñÿþäàãïìààáøÆ×[uItp{amhiogdgxrtuIvys}OUÝ×_RVU\ÙËÞÖ\A^ZUU\ZJtp[ÜÒÚÆØÁôÈöòÈÄ×DBOtqxabagg}uG]ÓÙÓÅÎóÿäããâéèîìãÿÁÝQEHZ^EB\^QÁöòòÊÈôÎÝS_Yvx{{{sCONYÝÆôóòÉÄÒÝ_ut|dcb`okhklikbd|JSÜÊ÷òäçäúýÄTWL|qOHt@FBRTÖÒÆÉÎÁÀõÊÞÐEI\GCSÒUWÇÃÁÉÉßÞÌßWYÖ×FDPÙØÆÌÊñþóöýýýüùùûøüõÈ÷õÛWÑ×R_ÑØÚ÷ýùþçàáààäóÍß^N}cjknadr]ÞÌôýóõôðóÊÅÅ×QWCCELyzyrqHRÖÍóòöôòñÊõÁÔ][urLBqpquMSÄóþùñÅÎý÷ÝP×ÑÔUßÊ÷ñÿäáààæáçðÀÙÌÇ]HrwKr{~LÕWTÜÐÛñðøàïîàåäûøÿüðÆØ_XÕYuJq~|ppxzdadglkjklf}uVÁôÿûâïïïíæåÿôÚÓROuf``adyK]Y]×ØÇôþþÿýôËÃÁÑGIrr|}~{wpvÓóúæâìïíâíçûùóôÀÄWÔÅÚÛØTSÐÛÇËÂÄÄTTÖÛÏÍÚÕPQÑÌÈÊÀÇÉÈôÎØPWPB@CtJs{dxrr}}wJO@[×ÞÎÎË÷Þ^Otp}z{yI]ÓÓÑÇ÷úáâíçûýÚÖSK|g``g{wICtHWÆôôðóöòóþüÿñÄÅÙ×S_]ÕÅÞÞÚÈùýþäûùÿðÎÆÀÛPAMJBX\TUÔßËÿùûúòóôÂÛZK~fcbmlcclincerqtVÂÁÃóüøäåúþÿóõÊÂÎÅ×Ñ_X]GYMpqp~xeed~}vCA[ÔÒÛÊüúæàåüÉÀÚYtprxddysquESÕÉþáãâïìææäðõÃW[\f`cd~}pqAÑÏ÷üààíãááòúñÉôÜÔGv~Jte`laz{xdcmmcagdafzqu}vJBVôÿóýûáàäòÄõòùõXX]ÝWspZ]u|rvIw}vuBCttJHsrNXY]ÝÚØÓÀñúçäøóõÎÆ÷üôÍÇÕQ]QXIBCuBTÛÅÞÂÌØÙÕ^PXNAYX[]_YE^S^ÓÉÎÌÀÀÛÓVQGJvyegafgeee~yyvZ]ÓÅÚÅÜÂð÷ÎÂÚV[AvJHv|e|J^TÝÞÙÉËÍôüýñýöÍö÷ÊÝWGvwtIHqOK|pqvMLMZQ×ÇöûäúçäøùþýÉËÈÎËÓßØRIpwursIONYXÐÍöÿýòòõ÷ÊÆÁÃVwuvsygfa`fac`x}p@_ÐÞÐÑØÇÀöòûøþúü÷ôËÀÝD[FMAMIKKMt~r|xxwZTÑÔÓÚÂóùùúúæçûååüËÌÂÃÀÏÛ×SXEZ_XVÔÖTÓÌÆÒÕÑÜÜÉõÍÀÀßÓÝWDOJHA^ÕÝÎôÏÇÛÆÚÄÊ÷öÊÊÁQ\[_ENusr~{~ef``z~rw@ÖÛÀÎòþÿÿüúäæäý÷ÁßTÕ××QGMAF@MuwsrstM\ÞÞÜVEF[W×Õ_S××ÓÔ×ÞÜÙÀ÷ÿûåäääøûøùûúÿöõÎÌÙ×PDMtqtrruvssvH^×ÚËÌËôöõÃÛÑRLOYRSTR@w|}pqJur|~|r}swNMFTÆÌöüòôÀÅÁÍÍÍÚØÜßÐ^WWSFNY××W×]FKNQØÃô÷÷ôôñõÁÐWZwtBED\]ZNK@AGÕÙÛÆÏ÷ñðòýÿòòúæáææþÎÒÕ\ZYEMtpKZ_QQR^DVßÓÝÙÑXOA_\PWQPYGNqyf`blmage|IMFÒËýäãâàçäúÿýõÆÖ_BL[]^\O~sqvuLMAEPTÑßßÓÒÚÄÍÌÀÍÆÖ×ÞÆÇÅÇÁÏÁÆÁßÙßV]Y[VÝÄÎÊÙÕÒÞÚÂÉÃÙW_D@EAHIFYÝÈñóý÷Ïõð÷ÎÂÌÄÑ×ÔQ^EOr|xzzzx~{a`fgzrIX_\XWßÃÉÂÇÚÀôöòùÿôÀõñöôÎÂÑSXGKtqx|ptFYPÔÔU\WÐ×ÖÞô÷õõÈÇßßUQ]\WWÜÀÂÌÒÖÄËñýåúøóôôÌÂÐGt}|pI@FNND\ÔVWÐÖWYXGX^ZVÙÍÌÎõÊÃÒQ^@Js{edgz~pLFYWÑÛÈüûûðÌÃØÒßÁÁÄÞÖÔWQSZKvq}}qJF__ÒÍÏÀÎÂÆÙØÆß×ÑÑÕVÓßÝÜÅÆÅÛÛÛÞÜßÜÞÒÕTQ_[ÔÜWÖÚØØÄÇÅÖ_XZFVÖÒÃÇÇÏ÷ÉÂÀ×]D@GMZSYGX]X[\_^FBJq}{x{z~|r}qO[\RßÞÅÉÂÎÍÆÍÀÁÌ÷÷÷ñöóÿþÿòÉÒ]YQ]BCKuuJEFF\[YÔÒÚÀËõËÍÉÈÐ^GBFAMCGFDDGZY]PPÐÅÎ÷ðóöôÉÁØÐÖÑ×ÛÛÐÜ××ØÞÝßÙÑÝÖ×ÐÑÝÓÒÕÖÝÕRIqq|xegfe~~xsHwH_T×ÜÃÎËöôÊÈôõÈõöüýüòñöð÷ÙÐVAAGLIwHALuL@F@LMZRÐÛÛÄÆÃÁÞÝÝÐÕÕßÜßÞÚÁÃÃÌÍÂÀÞÓÓTQ[@ZEGDIuDPÖÚ÷òüþúäúýöÅFrzd{xy~sIF_Ö×ÜÃÂÁÍÌÚÖ]IvssvuNAPÔÝØÞßÆÎÏÉÎÄÆßÕTÕVÕÑ×ÓÙQ_BKLMGA\RSÔÞØ×QQLLA[_ÑÁÈôôôÊÂööõñüøýõÆØÖÓÔ[^\[WVÝÆÀËð÷ÁÚÜPXMuvqtprwCARÕP_EF_QÖØÂõóôôñÉÌÌÅÝÒWYOH@LJABN[WÔÓØÌËÊ÷÷ÛSAv~zegg{|stRßØÂÈÆÆÊÍÚÅØÒTÔWVRTÖÒÇÏÎñÿýóóÿþüò÷ÅÖR@O@FD[]PWY_RZE^AXW×TW×ÕFM_FBXSÐÍóúúååøóýöÌÏÁÐSMqrwuLDY\VTTV]V×\[[@trxze{yrvIA_ÞÛ×Ö×ÔÝØÃËðþýñððÎÝÖVDLMBHJLOZ×ÝÚÂÏÈÍÀÎÀÂÍÄÛÛÓÔTQ^FLES]UØÞÝÓT@JtsprtKEØÅÆÈÈÏÂÉôôóþþùúåääåÿ÷ÁÚÝWDButtqOCFGuwrzdddaffge~s|~qtCÔôþåççåùùóÀÝSAA[^]ÑÝÇÌôñöö÷Ãß×ÜÐT×TVPRRGIussrswtvqtwtKHBYÕÛÇËòòôôöÈÚÃ÷óüåäåáãáæçûòÉÛÐV\YDF^Y^Q_CupvuqtIwJIHKOwprz~puVUUÐQ]P\EXQÑÛÆÈÉÂôÊÚßÚ×V]AA@RßÅôòüýõÃ×Dwyg`aag}qvvuJJB\ÓÍòøøúåÿ÷ÏÙT×ÝÇÂÌõÎôýýþþüËÇßQRP\AORÑÝÅßW[AANBSÝØÀÊðöÏÛ^t~z}v@YGPQRX^VQ××ÖÐÖÞUX]RX]^@OuwvwB_×ÅÎÃÄÅßÐÐP[GLIJMZ\@v}gdee}J[ÑÇÈòñÍÂÈôõõôÉÉÎÀÎñûúúûÿðõ÷ÊõôËÎÃÆÓDNws|rwvuF_TÒÙÒVFLI@\WÑÙÁÅÓßÑÔßÙÃÀÏÊÃÌôòýþåùñÛ_O|gc`{}suBOKI@A@DABIJJq}gbomfzsuXÙÎ÷òúåúäååúÿÿöÈñþúáâáäóÏßVYGF\ÐÕ×ÑRZMsswwqrvBG@\U]_XEVÒÆôñýýõÎõôÊËÂÁÁßRR×ÙÆÂñòöÍÓ]Mp~ruOLZXZ]RR^G@OJCDGYAtqrydz{x~sHO@Q×Þ÷óòÿÿÿþùåæáááúÿô×DMttMX×ÓÝØßßÁÃÚÙÞSAMODGLOuLLNC[X^ÝÇØÄÈôÈÃõÂÒUPEE]ÑÍôñòðóñÉÀÙWÑÂÆÙÙÝÕQ[QT]@wr}yy}r||rqr|~eeyyqXTÐÙÀö÷ôÊô÷ðüäãíàæåü÷Ý^CtwuKCFAFED_ÑÚÅÐWT]]\D@@OHLOMNNC\ÖÄôòåúÿøûó÷ÚÑÝVÑÛØÄØÑÕÕZAZD_VÖØÆÄÏÁÝÚÞXIqs}}vvqHJNLJNDBHFSÔßÚÃÅÅÍÆØØÞÛÎòùùøúøþýÉÞ×]t|vJtILABLZ^FNHHLYX[YDEHtHNLCO[×ÄÊýþüùüòþ÷ÊÊÉÍÍÛÄÂÚÚÛÐÔ_FAuu@YRÞØßÁÃÆÕ@CJwqtvptILMLAHIZE_ÝôóóñóñÊËßRWÖÒÙÃÉÈÈõñõÍÁÝÖ\D^RWS]AOGYXAOuJMD@OFCHtN_^FOKKBRÑÛÀÄÄÆõõÄÜÚÍÅÓÇÈ÷ñÈÄÅÞTDMCLNX×ÅÍÃÍÉÀÕSUTÔ_GCwv}|rss|qtwMQßÓÚôõñý÷ÌÀÏõñðüýòùûÿòòñÍÙÐTÐÐÞV[EKt}yegzypr}r}qvtGQÑTPPÑÇÌÊÏËÍÏôÁÓÖ×ÐÜÞßÞÅÃõÃÇÁßÖ_GCOL@^EZWÐÔCuJOD_AJBMKBEGLwqwqKZWÛÂÁÉýåù÷Êðñðÿûùøÿýþý÷ËÃØÐQÕÜÚÞÕ_SÕ\MJvp}stpp}rpuIC_\^]ÛÍÏööÊ÷õÍÓR_Q]TÕY_ÐÜÐÐÞØÖÕÔQ]WP^]YEVÑÒEN@DCABJNOtJKMwy~|y}OZUÝÒÄõõËÄÁðòðûççççåøòðÉØßÑRVÞÜURQ×V_\ZG[ANF^EE\PXMC@LH@\ÔÙÅÆÊõÍÄßÖWT×ÒÓÕ×ÒÆÂÇßÞØÐV\U×S_X[]P]\Cv}xeedeqtJNLBOuttu[WÖÀÌÌõõÈÈÀÅÈÉÉÈÊñþüýýðñôÌÃÐUÖÖQVSPÜÒÔ]EG@tKE_ÖÆÅØÞÖQZAEOFVÝÅÆÃÃÎÃÄÄÆõÊÍÏÌÂÆÃØT_TÖTÔRFCGA@F^QÖÑÕS[Bp{}rtMHr}|edegd|L[ÔÁÏËõÈÉÉðýòðñòýüüñÊÊö÷õõÂßÓÙÝÑßÇÄÝPFKqr}|K]ÖÚØÝÖÑQZ@OMGWÄØÚÇÚÇØÚÃÊñóðöüùþþóÊÎ÷ôÀÝTL}yr~|sqq|}|spsqEÑÐÖW\MIts}x|uGVÓÜÀÚÖÛÂ÷ðõÏÏÃÎÎÍÌôËõôÀÀßTÒÒÖÅÊôÉß_AqrqK@SÓÜÓ]RP_SAtK[TßÏö÷ÌÇÅÓÑØÇÁÌõõôýüñËÊðòüýõÞTV_YQÕYOtq~e}swD_FOuvrs{efd~}t@SUSQ×ÖÛ÷ôðþüúçççúøþ÷ÌÆÖDS]C[UØÐX_DvwuvCÕÒØÝÙÙÕÑÅÖ^ZADVÑØÃÂôÍÛÆÅßÅÜÓÃôðüòóðÍÀÏÆÆÞVRS^XÕÑVNqq|rqvN@PÔÑ×ÑS@ALKwqs{zyyrOCKOJCX^ÑÚÍóüùåääúýôõÍÙÅ××ÒP×ÓTVDwNLqwZÖÚÄÄÏÎÂÉÚÒ×AIAF\WÕÜÒTÑ×TÑT]TÛõòÿúúÿýöÈÊÊÃÆÅÞÞÛØÖENt}|rrwBLAXALMvssqrx{}tHYUÐÚØÜÛßÚÀÏñùóÿûüòöõËÁÙÑÔRPRFAJOFIKvqqwFVÝ×ÚÂÁÏÉôÊÀÑCF^UßÄÃÜÖßÜ×]WRSØËòüååòöõööñÈTWTP^FLv}||x}vJBFE^\V_BBMNHqx~puJKZSÕÕU×ÞÄÃðóòþûøþðôö÷õÎÒQÖØÐY@X_Z\ZOBHuCASTWÓÞÖÞõôÄTY_]ÐÚU_ÕS_S^YYZ]Ö×ÊÿüýððóññòöÙÒßÞÞY[[OHv}qyrpM@F^ALCOws}{x}ppeqE@XÕÄÁÎ÷ýøüååûûýóüùóÍÌÏÂÚÜÖGXVRTRZAOvpwu[]X]\ÓÍÀÝÔÖÔÑÑÙßTÑÙßÅÍØÝÅÓ×ÛÉõÈÂôõÌööÉÎÍÀÛU^Ytpwxyws|ssJIDWR@^EIDNvq}ps{x|~rHFÕÁÅÀÊËóòþþóÊôõÊòöÎö÷öõÃÀÞVWT^UÓR_^EY^ÑÓ\[SQÖÆÉÆÇÆÎÐSÓT\D[P^P]^[^ÑÛÊöññöüÿòòðñõõÅÑÒVZIvwqs}sssvvHq|xxzy|~rqy~sstOSÜØ÷öôðùåøúúüñ÷ñôÊÊÎÁÁÃØÔPT[LE\S]\GLFGBA_XYÑÆÎñðüýñõÇÜ×ÔWTÑTÔÕS_SÙÚÛÁõÏÇÈÇÆÌÆÃÒÙØTDY\utvvMuKOLXAwwJssstJvButw~xqwDRTÄÙÏóýÿÿòñõÁÁÄØÂÌÍöô÷ñÂÙÞÓQRZ\×SRP_YBJHI@QÐÙÊ÷õ÷õÎÇQX_QQR]]]Y]ÝÂö÷Êñýóýñöö÷õ÷ýöÈØWQZKsrvs}pJuq}y{{ezx{yzyw}yrwL_ÝÜÍôôÿäççûÿðõÀÉÉÁÉÈ÷ðòóôÞÓTZZ\FWÔ[XCuNJptESÙÀÉý÷ñðÌÀÚTWÝÑÖÙWÑÐ_ÑÅÌõÃÄÎÉËÊÌÍöÈôðÉÀÞR\GuvtvqwqtHNur|qqpvwpvtps}|r~y|qI^P\ÝÊðþååðÈÌÀÂËðñýøùùÿòðÁ^DS[E\_REAZBHuwAPÖÁËÎðóÏÂÁÜÓÔ_[[QTGZWÒÛÁôÍÀÇõ÷ÈðððòýüñóöÏÒYEF_Gwp}rpr|{zde~~ye~zzepv|}}vOWSRÄÌüúäçøþýõÊñòòùòðòôñõÐ[tvtwwwtwuwJBK[UÝÏ÷ýûäûøýô÷ÌØÝVQT[[PSÜÍÆÁÆÓÝÚÇÀÚÚÀÛÒÜÜÛßPR\@^T_DFD_VXZAIJJOKvwv~{xzrq|{espvI\×Å÷öñóöÃÏõÏõýüüóóýð÷Ã×YGNIHNGZGFBZ]UÞõ÷ôòþùóððÍÞÛÐGOH}rvuXÒÀÏÁËÊÏõòð÷öñüñËôÂÝÛÝPTÖWÖYMLMBw}rsp~zdefgxy|tsy}stKFTÍüåûøúþöðö÷ðýÿýö÷ËÁØÓ^MCLwrswKNIwu@XÕÆÉððüøýüùýðÌÙ×[tqspLEÜËÎôÎÇÎËÈõÊÁÏÇÝÞÒÑÖY_TRVÓÔS_EQTSVGOGLKJHsxd{~rqxzg`dy}w[ÐÏôñòòóðôôöðýýñ÷ÌÏöÆ×ÜÔW×XGLLAKtMG[ÔÅÍ÷õóòôôÊÏ÷õVGLJt}rwM\ÖÅÀ÷õ÷óöýÿýÿýÎÂÅÜÅÜVÕÓÜÚÝÑÔ]ZOIOHvHHps~|ddexy|zdfddepO\ßÀõ÷öòüýÿùýøûùüöýôÀÂÜTTÖ]AIB^LB[CCYSÓÚÌÈÈôñöôòöÂÅ^_PDF@_VÔ×ÇÏÍ÷ËÈð÷õ÷ÁÞÑDÕÐX]Ö]ÑØWÓVTÓZ[ÓÔ\ÕYE_uJpzxd~zgedfgfazzJw\ßÞ÷ññûäúåùñò÷õ÷ËÌÈÀÅÃÙßÜSÐÕ_ÙÞÒÚÜÖÞÁÀÀÆÁÎÅÄÄÔTEODBNDXYP^SØÃôðÿùúûþòôÎÇÛÓR\VQÕÕ×ÓÖÐW_\ZMLBJKqpp~ezxz{gfdgz{e|spqqwX]ÔõóóúúäåòóñõðöÌÊËÇÆßÕÑ]WTGGÑÐÔØÒÆÊÅÏÌÌ÷ÈôñôÀÚÛØÞPDVVVXuZVQÖÚËýòËÎÄÜÔES×VF]ÛÞÒWÐØØÃßÜÈÆÓT×ÜÖ]AIpyxdgfacladfgdey{ezpHGTÈüåäåùþüôõ÷÷òñõóòÊÏÛÜÆÅÒTØÆÒÓÂöõÊÊÚÎÂÖÕUÖWG[Ô×^EZ@BMOK[ØÞÍùäåøÿö÷ÈÞÚÆÀØÑßÇÇÐQQVWUÐÔWQFA\YYDJxygggacmagd~y|~|ptNYÜØÌðýþþÿðÊÏÎÌÃÎËÚÚÅÙÇQWÐÕÓPÒßÚÂÌñýùþðüËÞÂÇÞÚÞÓÄÍÐÚUHD@Jw@QÓÇÆôÊõôØÒRYÑØÚÇÎÂöÀRßVQÕÕWÅÎÝÅÆUÅÆÐRO}dxzaa`ccaccffdaazvMEÔßÏýüÿþþÌÏ÷õ÷Îöôó÷ßÃÅÞÉÓWÝÌÅÄ÷ÚÌûÿññõÒÕQ^CJZ@\WPÃÕPÖuJIÜ[×÷ÞðûóþÎÂÛVVÖÏÐÇñÎÇÑÖZCXJGTÐV×ÕPÞÐWWtOrrggdoafbf`fdedftqOÕTÙôþóðüÉËö÷ÃÂÃÃÈÅÒÔEÑ^@ÔÓÏÀÌÂØÊðøùúþ÷ü÷ÌÞP]_Ó\WÅßÂUO^S^[ÑÒÙöõóñÏÉÀÑRWØÚÛËôÅÞÛW\E[C^ÅÑQRÏÀRÆßWPZpysfmbb`cmmlbllbfy|t]õñõóõñôÃÍÿþÎ÷ûÿñôõÝ_ÐÑ]ÆóËÄõöÈÊûýÊúüÎÎþTJÖJ}R_FÒÜJWÔRÁGÚýËýûÊððÐÈôVÇñÞÆÎËÍ\\ÑJuÒMMÚÔAZÄÞ_^Û]vÐHgyxnh~figdmffm~J{YÈ_ËûÝÌóÖÚöÌòþØ÷ùÆÍÄÖÖA_ØWÆåÀÝñÉÍöçûÏðáñØåÃtWÓrvÆSwZE~q_[ÆÉ]ÉúÓÈûRÖóSVðÛñû×ÍòYSÞ\_CUòßWþ_LðÚDXÁÚuwMdbdmibabn`gmyfrD]ÖÅðÀTÂÃEÁ÷ÌðøçóñåÆUüQqÂÍÇËóýÜÖûËZåäÔñãÃ[ÍÌvvÜGtÚÀ}sÔD~ÖýÖQçø[óä\EùÏuÎæÁÏåÆMÃÞqJßNCÌÝ^ÓÚS[×WwPÍCvYrleiipyguihNulAöX[åÌqßùItçþ_ûîÏÎàÇLÈõsÕåÃßäÿÛúæÅôãðÉççÍôðGCÆ×}Tôp~QueVÒvUäÝ^ÿÀuYÊIYþÉÖäàÅÍýÖLÇÖwØð]DöÚOÛõN@ÍAvÂÅfwScnt~kdv|m}\`rüÓMòösRäSMãæUçèÖQáÃyÉÿuÖïõ_ãàÔçîÒÎîðÕçäAÞøCsôØ{Þþ{dò]gÍåHWîô|ùüfMåD}àùHåàtVàQdðÁzÂþ~wþLaüßlQöaqóz`ÍJHd]ZbAQkIæ}sàÜfðåzÑîÅYéù{ðãyKáBzàûsùëVÊóRëã[àèDÏî@qäPfóômJðe|åXzäåvÎæ}vüMgôóvÊãW[àôIþö{ÑæLqç×dð÷`Dóz~òBaõÅb}]nmGfef`wjoÞLaÃÊeÐåOuçñFàãBóâ^FæÖdðóqÌæSÍéþWáæSûìÔÍîõDäô{ËüHñqgÊÚgWùMFçÞ~ôÃeYöLRàþYòæÕÞáÛLÿýOÁäMFþ_xPRgvÃJËÐy__bd_bhsdashiv~fPÓXôX[öÊ_úäSÅäÓLñÀ}ÅÿtFçÆHçâQÊíÀÑãúÓåìÀÂáÄKóðpDõt~ÆP{Ñôu_þW|ÁÚYóB[àñXùç\ÚäÔ]åòLÎäOKò]gMXavÁw}ÍÑZÒdzSfk|~`pk}zcAÞzuò\tþùZðáW×ÿÅtÞÞxDþ\wþùHñàSÛíÿPçìÁõîþ\øåDÒçR}ÃË|IÆJsÊÅyßûrsþTzÌúuÑæÄBåårßçTÖâöuüäw[ðvgÜVgFðqpþQ`_ÆdfXddHkxc{XleÈ_eÍÿAÏîÂFäø|Òþ}zòÃqôåDÐìÿJóíÚÍîø_áïUÆìÇ@åú[üt~÷Ö`_û}püTsõ÷[ÿTLþúAÁãTwóÍqòâßÝáÿLÅûsxòQb[ñg{óXmEËebÑsxQMcdDn`öPgÂäw@îðtúàZYúScÛùJáÆxäãMÇéö[íì[öôCâá@õèÖ~øñeXúwcÌ÷`uäÔñÿzOàÑ{þáv@ãØdÎúÖìÇIãíIQâYzÏÅcsÿqaÊËguütlFJmFodkFzi\ÈduúÚvûáFÅïÅróÊavþ\}ùçEÀéõ×ììWÊïößãæÝÈíóÔçþKVóu~ØGfXÏqBåõuÈÿ}uùÕróûZØçØrÇÃvXÿÄ^ååRÂøÕsÓB`wÓryÁ_dUÌ|Óei||djzvbpÁKÎÈtØæÁLýçGÖÿIa×ÜgFùUHäæÐûèößîáÄãðÉãòÆìíÔÀç×sÚPbrW}qòñ@õývtóÐ}ÍüKSæöBöõ}EÿÔAäåVöæÖSÿÜg@ÊssõQ{[Ùy[Îsctaa`isQd}ÆCÚ÷_ÅçÐBøÿ}NôqzÉÆ}ÐàÛÒãáÛúî÷ôéæÄäà×ÐãýUþöpDÌ}lwpbI÷AEæÿtÛþ^AòÚwÇýYÑäÖwÉôtÖøÝQåýCÇûUM÷WeÔÁ{yÝJfYÑe}WzkdfohJHfFöCuü÷KÙþFXúÞ|ÝÉ}JõTsÄõYõâÂÞíäÌíûäþQøçÇÉáÆAþÁzGÖgbPW{Yö_RýÌwôäCwÏQ|ôõyZø^eöòtÃæÁWåñuõúJLüÀr×Åf~Êvm\DogKhglapbÐ|gõÎtÞåÕuóÍKÁÂ}GûßpÁüAÖãñVàà×øêùñìÌçà@ßíÇrüóLÑ÷w~ÑJeUÂvEäô^úà×ÅàÕ}øýwÓçUuçòÚá@XíÌxñö|_óGr÷Ôd\Ra{Íxo^BiyJkud`FobÙPpóûYÇçVuóÖPÐztñMgÆÀOÜçUEåñ_áéýúãVãâ\ÚæßOúÿXÉùKtõMdPÒeQûÔTçùNØòtLòÐqööNÝäÖvóñEÁýXDóÇsßóMPÈAwßCdDEcfBxh~~bsj}irÍBuóÌN÷åXÒçßqÈËuÝÍJ^åÂ[ûúNÜçÃVããÙçéÇÝâÿw×òOYüÙIôÂ}]ÌF~ÒÔMýòÜóæSDûÇ[ùå_ÛâËBþüw]þÔ}ÄÒ{NVr~ÝRdEÒzpÝud]taJDabLxo}{hdEfg÷ÜÒótGûÌNöðsBÈJe_DTÊDÕðÛ@÷üÐóãöðéáôïìÜÊàÍPûÿ^ÚçÔBùÚ|SÍtBöÔIßØvQùÇFåáÕËáÀRçõJôúFN÷_zVÝdvÄ{gÌS{GÙvqÕ|gvqn`wch~zkgGefÇBbQðtZá÷XæíGÐáBzôÌsÆäFVüÙGýó@ÍåÞÄâçÚÿäÞÍáÍKñóJÕúØSóÝ{ÚúuNÿÐ|ÅÉMôçÚÀïáÀääTTûÍuÊñrÅbEtl{FfeßCfÞ÷xCð@eSIbwDaaFeoOPgØrgÝØsÄáÄÑæùXÇÄzJõu|ñô{QûYAäÀyôâÜÃéåõìæÃæãÕÓæõEóûG\ñIrõPa^Üg|ÇMsóåYöóÔàúKõâÑQû×}TØdsÖfmDIcMØeDöIw÷Q`KYafFapqdDcgPzaõÔ{ÂãÈÀèçÖúðqÖåMNùÖÌñvQû[}õÉwÍàÙÃîóËìåN÷æCÖáÁqöõyÙûusòÑeÄðtÖàÃÅêíÈåãSÝàÉKóÍzuÄgcÔ{~vjgÔedÏÝsÂÿrNðJeÚXorRofWzgVC`@ÃrFó_QâùCÿåzEü}z÷ÔbSü|[ûP|ÉÌqôâÝñæüèÊäíÂöíÉ_ûÈd\ý||ôsmÛÞfMøAEàðÄìäZýæAÎíWBæÖgÎÃbrÖnlß|nÝÖfWñ{pñrcÚOiOYbFhk]xjRßc\øuMâü_ïï\óìNqúÐ~ÈÁzQÎ|HõqeÆQÎÿ[÷éÎÁìûTçþÓàæWûúvÒæLwçÐzòðeÙäEÞï÷Îèÿ]û÷pÌýIÐós{ÖqourjevkyÌzzüQ{ðÅÊðz_òdzÛfmUqi]Ól^ÉcMûwZïÊRâÚýVlÓÄ`\ÿdBäwrüZ}åôHâàSáèÚúèWÆé×GìÈtøÅg÷öfÛñaDüeqàApìý\îâAþáyÖâFÒïZ}ùwoÙv]Xk^ÈcDþdrþ~f÷JiÔ[sÔcÞlmËmûRmå÷dæZäOVí}yäZ~û\aùßmôÀoÔÿgÄéHÐÆRëópíü`äàpüìsWê\Oêô|äÚ{äåyäëNÿ_ÍèrqàApâ_añ[[@wN~ÚnzåydäpmåFhôÞk[õjvóbròdzÿ|cüM`úõxáâ}ñäaNðasäz`úHaàÞfûø{öïCùÐýñÇëËpãÀxãÿdüød÷çeÇàduçzdâP{éüqíàröàeÀïpQíKyùtmËHkÙAjAØcJÆ{qÑbaQgf_~l^IoJÚztÎpwñXqðÎZäçÞáätôüePñsBôptötw÷t}ËÅvÊü^õæÚÙúßR÷×Y÷ËÐñÊÝùùÎýüÛÉôÇÃÎÄØøòÊøüÛÍÑu[Åw[ÅuDÃ@Gsfuvxvr|NStuÖItArvMtw@u|X@AÓ\BÐÐL^ÝNPÅÕÛüñÑÉÑ}[CsD_u@ÞÑWÝ\ÜöÌÄôñÃÊý÷÷ðÀÏñÊÍÉÃÏÌÝÑÒÅÃÄÙÀÂÚÏÏ×ÞÅÙÂôõÌðþÄÐÇÅßÍÅSÚÆVÖ×LJGX@At}sseagg{~{|vrsr{}sEXB]ÚÍÙÙõÌ÷òöôóþÈßÛÑEEWCLQS[P_NB[]×Ý×ÒØØÕVVZRÙÎôòüüýöÊýóûðõÎÉðÏòüðóýùÿÿðÂÎÄY]WZ_ECJZPMwOprOMFMtvqyezg|wtKGUÕEOHIIuYÐS^WÞÕÜÔRÞÌÇÓÇÏÖ^BtHFIOGGE\QÔÓÕÛÁ÷ôñÌÏöÅQÐÔ]ÖÎôöùåòòõÞÒÛÛÅÅÒWÙÙPÎÛÛõýýðÿÁËÆWÛØôôÖÃQ×ßCÙWLÔWVR_Cx~flkicazxx^IsL}ysB^Ù]ÒÂÍñØñÿ÷äÍõôÓÂDZVZ]VW_LXZ]EG_ÜÆTWÛDMYw}pJ[ßË÷þþúáõóþòçñùöôùÆôþË÷òøÿñËÝÛÑMA_ÆR×Óx\ÑJrG_NR×IZDqxfgabex|LIYCJtGwuT××ßôËRÁÃÔÓÊÄÝÀÍFACrvrCGI[A@[]Ó^ÐÄýôÁÌÁßQYVNFQ^TÈðôöøôÍõððóüñô÷õØÇÓÚÁÍØôýÇØÇT\ÚõÅÈðÚ]ÚÃRVÅÆÝÇÜ\Lu}fmooli`ade{{ad~xXßÐÎùðÏýÿñýøþþøòÎÛUDCDDB^GEAGFuX^]ÁÓD×[wv@q~wFuÙËÁôÿüøæäáéáãíáäçûñ÷ÁÉñõÀÇÛWRCZQXTÐPEZYsv[AI×ÚÔX×BywsfeeeyrqHsgreytBÕÂõ÷ðóüóÁÍôÎÃÅTQS[Nvsru@|CFYYÑÙÑÎûñÒÃÖ_Ñ]EIvTÈÔQÆÃÍÁÆÕÌþýùøûæüÿóôÙVÃÝÝÆÓÔÝÅÑVÎñÇÞÎÚÊÑ@ÐQÕÊÝÑÎßYHtx``lnbmgf`bb`hm`l}_ÜóûääíâååæøúòÙÆËÁÙXpJtvstpepIJ_PÓÆÑVKFBMHgeBL^QÓÍ÷öÈþåäçâáíèáãíúÍóðÐÚVX__ÔYF_ÖTGZÜGvEqpXRTÛÌÄÛÖ_YZea|ddvr`z|bcgez~MSÚòæäÿøäðôøöGVÝ^M@F~y{qsBÑBNÔÉÆ÷ûöÛõÈÑ\KwtpZBBÞÁÛßÆ÷öåäááçàääçûðöÎÃG@WZ]ÓX×ÀÄÔÝÄÔ×TE\_OÒÂÁÈÿÂÖÍt`agbiddcxcb`h`ibr}WÒøáçîìïàäÿËÈõÞßÝSÔLOIx}vzqJHJWÏÛôðÞÂÐqw}|xJsqÙ^ÙôõðõàåùäêþäæEgÇÁb÷cõf_KÑGØC_FxÀaÆeó[ÀøÞäÑÍE|Jde{d}d}}}ezf`~drMWÅÈåüóâÌýötþwÐÍeønÁvz×cÆgÛtÇQýÌáòþáØú}÷`IqdAdDKFØYØÎ÷åòáäæçìáàâøåÊÅ^@TtJ×sÏÒZçröQCúoærØôTæ[ä×÷|Xcth|zmejÓsmiehp`|ßsòüóãáíæáÿüõÈÁÛUE[@OxszNxvYqÞ^Îü\ÍåeÉÒiÿl`õðféjîÕÌCðéîäüèáìåúÔýHPw}HaÙ|õJ_KZ[LXLØGÉØÛßñðÖÖFNC`u@Piö[úpÉëcÿægtëÕÅàzðqÅvRÜÄdÆd×OzÿdæAàÍåóÁçGûyRE`Çj}}lÈeLØwþÃÙìÝæïÖöùÈìç^ãÙ~ïoöËc`Êølc]äxØãjbôÂjìFrñq|ðÍmgÌüaÎÄSçØãÿâøäáÓçZõÁNÎÒÒ]sHOgRpwÄqô×tõXHólÀ]á^DàhUøo@årßìqNêe`áÊüHméáz|öjþfÒÑ_óKñßø\òÔÖÉfÍoHnÁK~hôÑujàù_ffÛÙë|ápÎTMöEýFôtÂsqÙeópôôqç}åÏ{ãlÈqjáÖ~æçuCâpêÑäåûãÂíøèðîþöätäsÆÞBâ{øÄxàhòXlîjã]akétHákúcJ{krhfaa{M{YeöIVýTêÁàãQíXÑægûô~ëgË÷nö`sWfKÈvvóÜÒyÎNdÌyyõoÆVmìÅâ}ðÄAîNÒïAFÔùFSËMDúzÒÅn×oôbæoý÷fÒhãÃ`ÐÏâ~ÇàtÀìiYýo|æá~iàÇmìÇgmøÅaúdqÿzôËfîdÜújïo[óéiLÃâßÚmhâüxbíPLëVÅÏìOææx{Áøèjx÷ëiNàèiWæjóþõdòÈjgÁænÉÆxeêÿßfYÂînfåöxîþwpöúcuóhìjÂÔkáçqtäeâeÀÖwôfþDýôLëJâáTÑèëZTùäDæÕÎSÏ^wÓÚgoÂÀ~bíbôúfì^YïRÎâSÐòmSEÕoØrQÜB{áqÇíu÷ädçÈ{ëw_ìcøÛ`çzuàzÐðyæôaíCâmRçbûønâtjèxæäÊh`\lèïwôÃYþsêì`×e\äázëÅøtbkóçt~øCá|GùjZ]fádãÊÉvÜFmîÉdmÛçï`lïËXikôöiïiÇÔoçbù_uîlåqrãàAZéoìðIè]åîÕïçÒãÍôøßñÓÀKZÒn^bgBÇ`pÉiìYuêHäçMêËÕàB×Qz}deirgPkJLhædÍü}}×ãdúÐqæYEÿÔC÷BtÍsY÷PUýþCþôqüCdðXböX`õtdÊzfËzòKBç@öâßáìûäíäùíä÷îýuêÅeú{aQhlÃoaùfsíxöî`ìýmêSgão|åwDÙknóGÈmâT]^øräåeéR}ïqQùmÒÍÐHküctìjñàníM~âjÞþhùFrãcôôfædRûaçSØàtéüóìTÜÈîIìÓ\ízÙÈmÃbmV@rcðaðôÑâÔîþÓéNæß}ãfMTkUljE~jôcÔýdã×ÎàwçÓÁøpæTÏÊvàvFüeØ×såÔJáÀZûÔ]ô}GÚesÔ}APdWKd]|@qsù_Xá÷ôâñäêßåÔáé^íçuòÉ}CVfgBbdTbyû^qâÿuçñrÿÞdÿÐ`ÂZnps|EQcÀæOüîTóâSTìOCâMvæNvøsyðtcÊCgô[{ùÛrûÇzÄÊaXügßýyÏøfDùdeç~wë}Ö@ÌEÓsÊføíiüÊnÿvnöahðmgýkÂügêòÃXàí{àÝKçdÜ×lXlcfKnyÓcðNJïòý{î^OâvÙùpÎåLÒáHWâqßæ}ÛûO\àPeåqcÊg{Ïx[Û~ÔrbÁ`cø{\äFø÷ÝãÚåæ]èåÛõþáUÿÝÕÉtôs{ðbDBlõf_åxæÁrâqtú|VùJCÈagÜcQivÛpEÿÉBçý|úøLÉñ\×ÝÍZYõt\ñw]GÐD`ñOaàÞ|åÒeÜÑdBÿOKíÅvæÉ`ÏÉoÙàeØîqFV|ÒeÝeêØdîÈaçØaçTfñZ`ÐX`ÓÛpøÎVäÁÂÃGü×Gá\sÂzd~bgc}vaZTgÖö|DÿPDåÀpøÊ~åä{ýètÛêYSë@zíVfìÏiäÚôVÍÃnòúlÃõmYQaPÎqÜöNýÎLæ_ÛíMúæRíñÑîÃ^ãÛ@åCqùrxÆezÃtsôDsÈQsÉÑvóÕÕý~Û]lÛdgÙfAÆdTù}QøÅå|ÇþyÞøHÇú@ÄçWÚú^Òÿp\Õrýppóa]ÑcÒGgÍÉHçþväÉzöÐ~ðÄyÆÀvÉÍpÁÏuòðAùßÑæuüåJäÃDóVDö[ÀuvöwÕó~ØðpSôY]øÝ^þÕ×_crÝfdÉsaÜGe\ÝJ@ÏÑKÃËWÉÉòõ×å÷\ùûÙÍåVPöHw×tcJFoqPaAðDRþÒOÕÛKqËÖ}ÞÊ^qÞô}_þWSþøÜùìõÂçþL÷áeEát}ôÐe_ÓfIØfyÃfÍY{õòLÙøÒ_Ç\HMZDv[ÏZxôØnÏÿ`Dÿ@säòtòýKôåsXçAqøÇuÀÅ}uXpysvyywÕEWãÐGñÿøsIúH{åÞfÊÄm]ùaQísÔëÈÖíÏvúöc÷æ`ÐíeNâyqádxæ~gæpcåFsæDBáQqð×dÇÝgÅVmôÔjÑÐkQÌcÁûüèuÖHqî_xâý}àçeýàmMäfaõhÕNlôÊcûçgüåbÔçfZçgRáfNäf}ö}ZãÜõúÁÊBíLdøJzæRgøÞoÚÂnZÉhuônrãreíËeãçxûÊdøÎfýóaÍÿc]ñiNünGqSé\XþqIôzyäO~ãT{ãÖmåÄo÷ØiWÇaÜõqûäwæîfÆïf@îeváwdýAnQQjDä{ÍëB÷êpVì{eãDeìÐeãCfçÑbåÌbûÜaúÜfçðgøæaÓåf@ÿ{Löarù{aÿxhÈpfæÊqéç~íþdùÈfúù|áäföäaßÿfQõnGöisñypöXvýGzþYeåöeôçyÜúaXõlEøpÞéõÄêÿZàßföØcöÿcEô`N÷b[ðnFøc}æâ[NëAtéBgìðdäógùûcÈújuäi{ãp|íÐ~ãÔbûTjÏü`TåaZãeuîpdîÐbåÂmýùgøàdñìgDèríveâKaàuôÑPò`VâsÄëJBîMgàÊfúülÊþoÃàaÖïHwâØzåÏfçð`ûäoWàd}æydåKgä_nñÅÑål\ì|ßér\î@xãügåçcðç`ØábOâzgávoÿQmüÉlõåoVíaIîrî[Hï]fûÄiÍç`Ðìt×éP_ì]záÏm÷úiwùleÿ`dáp`âÁ`çúdþæ~ýídÛìawìvsàÔrãÛgåÀhËñEålIçdpç~dãVmçón÷älÙãbSìaMèyaí]aíÈfïôlæûôànVïf\èeqécbíejæEiæÍnåÿnøíböêdDïdxíedèAaîÊcãä`çïcüîoÀîiwícgàyfâM`âßhåðÆûjßæiQâiN}sÙrÍaïônàüjýåißånJà`pìefìqhä^oàÃbãÿaáæcÄágOádrìszïtmâÑcáýgåûlÍüMúkdãz~î|{\pô{íúaòømÊæcØíe^NJïGxçMm÷JjÚSRÀh]åbÝëDèv|ïVqíÖ{àÁcòða÷ã|ÖãtuøgøMcåõaýädÆåcEämzøfyáw`çYbçÍgàç{æñcäÓiàOlívwîzÓêaáîcëòmîagéÚæìZb`Pã÷myëÂÀëddkçìnÐa`uëmÁílÕônÞùaÏúfUþgpõrüYqä÷HóúpSæ\~õÝgYówsñTgFÉ~qûòs]äE`ßýfbþÉlEïÕaá@wîguîPjÐëFmýì}cåí}xàçabúþaböÁjmöÀhfçäesïâ~ááp|àït`Çç@eÎíÓfXåRmpüÀa~øút~öåDeÜçP`yôÙfxöþ}gÒþZzÃâôpGÿô|{ßðE}SðÄvQåäÑZüäÒ^ÎQruÎÉNwÒõT@ÅûðÕWÎ÷ÕOPÄEpY_qwÄ÷Ý^Û÷ÀCMÓÙÑ]ÕÇPwJÓÜYIRÄXsIÓÄ^FÍýÚÐÏñÉÑ×ÍÈVDEVQuwZUXwwFYtZ×ÑTE_PXtuX]P@QÙÑÞÂóþñöýðÇÞÚÒÒÖÕÜÐÜÕUßÚÇÄÁÇÅWXÖÕ^uuBts}J[DXPßÓÖÆÁÙßÛÈÈÀÞÛÓ^]ÐT_S×PX\WUÕUT_G×ÜVQÓÚÞQTQP^^Z@CLA^AY^WÒÛÞUTÔRGOBASP\QÔÖÒÃÌÎÍÁÍÇØÛÄÜÕÒÖRUÝÔSTßÃÎÊô÷ÏÈÈÌØTQBttuIMXXSRTÐÔTTSXSTQÔ^YS[X\TÓ×RRÔUÔÛÛÒÓÝÆÇÚÁÀÆÞÅÄÖRWÓS@_\DKJBBvN_FtIGCuuuFAAXY\WÑßÁËòÿþüð÷ÎÃÃÎÝ\ÜÅÝUÝØÆÌÌËÌÂÇÄÙÑÕ_Lvqv|tMXFIYUQSPÞßßÀÏÆÝÞÓVQ]ÕÓÖßÝÓWÖÙÝSY]XDPRT××ÐÔSRÝÑV__]X[PSS^SP\DGGIMYIJERXFDPÑÕÐÇõËËôðÉßÙÜRE_ÕÐÐÛÚÝÅÊðËÌöóóÊöñÌÖ]\BttDDJKAD[SPZ\RT_]Q^C@BZ]WÞÛÛÝÝÞÚÄV×Ý×ÐßÛØÃÃÄÙÐÜPWÕWR^^QÕZNZD@prq|x}pvpN[GMG_@XÝßÃñúåøøüóôÎÜS_VÇÂÇÃõö÷ôÏÊÊÆÚÅßÒÜÕZIwspILtutO\]DÔÍÃØÅÄÀÓÕUS\WÝÛÛÛÙÐÕßÔZXRS^Y\×ÕQÔÕ\SSS\_TWQT×T]UWÐ]BIwqqpvHBL[ZBFZDXSÄôÌôüôÇØÇÒ^GTÒÝÍôöóÿùùòóùð÷öñõÄÙÜ_wqJws}swvv@MFQÕÕÐWQ_FF[YUÐÛÆÙÐÛÆÔRTÝÙßÍÊÁßÃÂÝ×ÐÔXLXZBC^PGOGVEHDu|x{ysCCBZQP[^ÝØÚöååþýòðÌÜØÐ×ÚÌÈÍÊòþôÊòôÅÅÌÂW[U×LuBOJtNtpKAuKXÓÙÁÉ÷ôÞÔÖÑ×TÓÆÀÕWÓ×]ZX[ETÒ×TÔ×P^]TTE\ÕYOATÔRVÖßÑÒÞÖ^ZDs{}wqvFGKu[SGEQ×ÒÇõõÍÁÚ×ÔUÝÎñðöýüøääúðöóýÊÍÀÚÕ[[]XE_CpswLvvvuuHQÑTÕÕFE\UÛÞÓÜÐÖßÃÆZVW]ÝÏÍõÅÑÚPXVRÝÕZ@uON@GHF_W]ZRFuq|}sJuBBA@OPÐÑÓÔÄöõôñþñÑRØÀÙËÿÏÎñùðôñÿöÆÎðÁÑW_DvpNR_M@[YtI[_AEWÔ×ßÉÞWÓÈÅßÍÏÚVÐÄ^O^V@tG×ÑWPÝVCBBWWWÜÜWTØOEÓUÄX]ÍÇTPÖZw}uAtrwYDzv\ADJ]ÅÝÊÌÌZvÖWÞþäöóþåÿðûàüðåäþ÷óÛ^TH_XqOCqs}tqss_Cr{LU@JRWwRôÎPÓôþÎXUWSRÁËÖñÊÀåxJýÃpKöÌÂÆpy^FupOGÓYuÒ_rrYGKz[Û_[qvQWßÕG]ÛÂÙÞôÊÕÑÛðüÓÂþõÉäåûüñðÁÛ÷ô]J×T×uIÝ_O^PÑMOX\[C]ÑV]^UVBÔÚV^ÅÉQ×SÕÔtFÑQCÂQ@[RÛVw\ÅT_ØõÝZ\TUHG[VQÔVPQD\ÜKq×XFMqLCvr_YuÚÅÕSU×ÖQÂÛÊþøääúáíàæææýðóóÍÓÆÏÐEWÓHpNBwqMYOuBNS@uuruvsKLÕÒÒÓÛßÝ×_ÝÖÖÙÌñØÄÆÝÅVQE@XXÔ\[YQDELJIrsu}sOCKtwuFFLEu@FXTSSXSÒ]RWßÔSÚÉôÿþÿùûçãáäåøùõôÈßß×VÑ_TÝS]NXÒÚÀV\^ÓÛ\Z@]GerOMJMQ\vu\PI@]ÝÅÂõÊÖÔÓÄÐX^TÐZ^WÀÐÅÀÉÃXUDOI@_@GBZIvJt}}sJNqvLHZXIuuFNrAÖÝÕ÷æçûçìææáãããÿø÷ôÐÕöÑÔÒÑÚI{YÑ^SÜÐZF×]LLwC|gdqssIYBGôÆY]ÊÚõøãäþöÀôÌÛÐÇÞOHrAÎUQÖÐÃØ~wQustVNrw{spFÕLWDwW\GPAÔtPY|wtuÑûûùáãåùÆúæÿñÛôÉ×S_QVFLÌÐBGvÂQEÅÍÒÆÙÚDw_DMG]@Bvr@M|tw^}pY_÷ùÂþÒÍôÜVsÒuvñÐûØùÅJðËýÏôËÀZôÚ]XL×OuvexCfJFv]vRO}XqJxdrtWÃËòæçøçæýþûåýó÷øýý\MP[ÙLwyFvR[DVEÕAAXpzBCsUwEX@LMVV[YRXÁþçäüàøôðÝÓõÒØÉÅÏÂßQÖTSßYÓQBFsGBqHtLuwNtuKER[BÖCMW__^LHNB]ÀööþüççùþåúäÿüöúçÇÓ_VßÇÒß_RÕ_ÓÐÙÐÛÒTXEXp~~~y|IpsLJFHHKvpDØÇÈôññÇÄõÄÀÐÑôôÀÅÞÉÈÑTÄñPÑWRTL^HAr{y|y|e|tv}uEMtpFOttKqJCÔÆÄÊÿüóåçãääàûøääðóÁÃËÀÜÅÅ\STPÕ^JÔ@\F^T]tIqpDAEE^@RQ×YJXÓÑÒÙõÿðÈÈÇTßÑÔS]ÖÅÙÖ]ÔÞQWQSuN[]OsOJqvJtuKqsKK_Ô^RYEZX_BtvvMPÐÇõÈüø÷òäàúåäåüñöñÅÝÛÁÌÑÖÙQ[[_PÕÑSÔØÔVR_HuIMNNZCIFFHuqMOJATÕÜÚÆÄÆÌÁÒÒÄÛÒÜÍÌÁÇôõÀÅÆÓSXG@uwtw}pwp|dd|{ywOtwvuNrpvvtHWÒÄöåäçáìééìììãàááÿò÷öÎÀÙÔWSENHH@AMGRDGFOtuNEZL[ZYAAZSEYÐÕÔPØÁÄßÌôÌUÑÐDM^ÑRYWØÛÓ×ÚÞXILu|srsqtvMIMwtAGX]PRYDFMNtJtJBAXÒÇÆñúäûäáçøüûûýôüüöÄôôßVÐØWZ\×RZPÜÒVW×S\XS_ROwA@NK@EGB[YYYRQÖßÛÌÌÄÝUQÕRVÓÙÒÜÌõÌÅÚÅ×OILu|{}p|~wt}xpHwpKIwspqvvptHAM\ÛôüùáííìîâáæàåäåøøÎóÚÖÞMXPH_KqRD@u[WBHGSWXRWPZLY_CBQÕPRUÒÚßÙÏÅÛÇØÐ\GXGAG[VÔRÓØßßÖÕ_@NCCJvvuIOIXYZGNXXIOCOr|ps|e}qstDÞðýåæáæçãáäúääúúçåÿõÉ÷ÁÔÐ×W_XPÑÖYV×PDLYSE@ALNuvMFuI[^\YPßÙÐÚÍÀÇÑ×Ô\]VÔÖÕÑÞÙÔÝÃÝÖTURLIDEurrOwqC]XKJNCt}pqr~sqs||J[XÝòûûúæàææáàæûååäøÿüôÁÒÑÐÕPTÔ]YSSZMOD@JC__CJE]AORSEAI]VVÖÅÆÆÙÝÅÞQ_X[[ZPÑ×ÖÓÒÝÒÓÒÕQQSR]__XBtu@[QWÕ×[L@EBvrs}x{~ydd|uDQÃöóÿûäççäççûùäçæúþøòõôÉÂÁØÙØÐÖTYZ@tKCHMJqttLFMBEZ@BKCWPÓÅÚÃÛßÄßÖÕ×ÐÔÕ×ÅÇßØÜÐÖWT\@^VREMNwr}tuNG_YDLwJuqq{{yz~uM_ÞÚÏöðòååæààãåÿúàæåûåÿÎôôÂÆØÀÅÒ×_GAOLtuMOLJLGX[RSXFDABBGYÕßÓÑÒÖÔQPS]\DD^Q×ÞÁÇßRWÓPX[PÞÓÔUVYNLD]ZET\XF@EuwsyxzdewM_ÕØÚÉ÷þåäççäøåçááàæáæäøýñðóñóñÁ×P^LuuKtr|ssqswu@HwZYAuAVÔQUÐÐÓÑßÎØÅßÑÖTÛÅÄÃÂÄÖPÑ\ECDSÕ_COHp}wHpuOGJwuBt}|}s~}wMODQßßÜÄ÷òóùååúøþäççäçäåüýýËÉõðöÏÂÚÔ\XFJvvJMJIA]Z@GWRMESW]S×ÞPPVÐTR^WÔZE_UWTÜÏÏÏÄÀÓ[GE\RWTÔW^EYDDBKNMC_^Juvv|xy}e{tMHO_ÑRÑÅöóõ÷ýüóýúçáááâààæäøö÷üòËËÆßWDLJspsvqpvKJvBICJL^\G__^Y\PTÖ\]WÝÑT×ÙÝ×ØÌÈõÏÙÞ\FCRDMGGEO@@MttJMNDR\KqvvqsquIvK^W_VÖÝÓÐØÊôÌËðüñðøåûúäææúûùóÉÊ÷ÊÁÁÌÅUZGGLtOAAtIAELNZV\HDÜÜE^TÔXE_WMuOZXIGWÖÖÓÆôõÏØÙ[HGP^@GSÕZZ_PBt@QDF_RKrvtIr~qvqvLSZEXÓßVQÙÊÜÐÌñööòúççæãíæþøúòôôðöÊÏÍÃTX^YFBLZNvsKAJJ[SLBÕÝYAEÔÔX_T]@@RÕ_ZPÒÑÕÞóýÍÝÞUAOMCKwt]_@CYZMA]ßRBIBtspHpdevuJICVVSÓÎÚÞÙÀÎÍÏðòõôðåäåäáøüÿÿÿñõðòÉÆÃÍÝRYT]_E@@JstFCHuAYQSÕÑVYWÖRD_PGX_\PSYSW×ÚÏÈÀßTÔSFtOFCOXV[YYSW]SÝÐ]L@BItp|xyyqwvq@]TÔßÇÅÓÑÄÃÁÅÈÌÏõùååúúúùÿüó÷÷ñÿñôËÈÚÐVÕÓÔ^G\DC@DCHtMAZDFEY\Y\RUSGZSRP^XZZV×ØÚÀÙÄÅÚT_YDCNFSTRSQUÖÜÑÕ\YFDFOtsp}r}wvsvKB^ÐÃÆÙÉËÎÍÉÏÇÓÇõ÷ðøåûûþåûùýñ÷öÎÃ÷ÈÜVUÖQGRÑPLZY[OJ@CMOFZTZEX^[Y]X\\\QXADF_D]ÐÞÑÝÚØTEQTEuFR[GGEÔÔVTÑÜ\^×VJwuKyz|JwpCG\_WÄÉÅÙÍ÷ÀÜØÁÜVÒÏñöýúäòüúäøðóüñÎÊ÷ôÞÖÜÐYQÑÛÝQQÒÓCI@ZwrCÕRB@QYNFÕÖEMCCupwADCGÓÄßÞÀÎU\VÐRGVÑQC]ÑÐ]]Õ×RSPÜYq|rrze|t}pCAZ\ÛËÄÚôöÈÜÐÛRXÓðòüúáãæäææùóõòóÉÁ÷ÂSE_TDGQÑ^GXRFOMDHuL\ÕXGGÕW_\ÞÝQ^XXKuNYXYPÙÃÌÚÁÄÑRZVSXQÔZG\WSSXPÑVQVÕFsyr|z|JGOwCS^QÝÛÓÛßÄÆÔPY[[SØ÷ôòäææääçäýÊôñõôÍÏÛT]WTV×ÁÇÕQQQEDBOuOZSZNME\YG[ÕROwItrqOEB^ÐÆÇÞÙØÖ\^WÕÙÅÅÄÔÑÒÔ^GQÓÕS]_Osx~{epNLNBSTDYÓÐÖßÇÞÑÕÓÕVßÁËùååãâàæäçùôóü÷ÇÁÆØTZ\\Y]S×Ð^ZQ\@BAFAA[XNHB@DD[ÑÖSXY[OvO^Y[ÝÂÝÕÑÜVXD_QÖÜÄÇÙÖÕT^ABSVXA^EJvppsvtDPS]TÑTC]ÓÐ×SÐßW]Ñ×VÐÂ÷óþúááäûúùñõòýÈÂÀÇÒUÞÄØÜÒÅÅßÔWW[M@[XBIXI}sKOwNBGZZXY@JqtZ_ÔÜØÙÕQ×ÔRVÙÅÅÉ÷öÃÓÐÐSZ_×YHAAJsrs||stB[PVWV^ZZRP\ÔÞ×^ÔÚØÙÌ÷ÿùúçççøüóüðñööÈÙ×ÓÑQÕÝÑÕ×ÓßÖVT]FLFW]@O@LwGED@C×ÞßÝÑP_CKBFF\TT^LBANNE]ÑÜÙÆÇÅßVPSY[\SCtuBMNBOMDSTPWÜÑVRY[V×TPYRGXÖÝÒÞÉòøûúåùòö÷óÿþò÷ÏÇÆÚÇÇÚÄÁÎÃÒØßVX\ZJuO[Ksqq|spvJODQWÕWGALHN[P×ÖÒÝWPÒÓÖÞØÍôÏÌËÀÞVPQY[MJtvrvwwvtOHGGGQRXSPWÕÛÙU]R×ÖÓØÈ÷ôðøåúÿòöËõÏöóöÊõÂÅÞßÓÞÛÙÅÄÚÞÛÝQ@GGFLHO@tw@MBYVSQ^RR^RIJwJICEXDFA@M@PÔ×ÜÍõ÷ÌÀØßÔWÕWFINNBuNC^[[Z__]SR_G]×ÐZ]PXMNGX]ÔÚÌÊ÷ÿøøñôõôÊô÷öñöýóñô÷ööÎÎË÷ÈÆÐÐÕDMNBv|pt|~vCGGAGBN@OHqJBMM@XS__RÔÝTßÆÂÛÁËñôÆÙÙÔFA@Buuuq|pqJKtHAZE[DSVVÕÚÓW\ÔÑZ\ÚËÊÈõöÊðýüôËôÈÚÚÀÏÂÇÏÃÉÁÄÏÏÛÞÌòðÇÜÒÚWZGFNHMDLE]ÔÐÔÑUXMJqqsvuutqpO[utEÐÔWTÂÏÁË÷ÉÆÅÅÞ]_\SYVX]XLZRZLC_PCLRÑ]ZXÕ\LK@HqFPßÝÓÇÎÇÊõö÷÷öñôÃÍÏôÈÏôþýñðòðõ÷üðÂÇÞÙ_COKtqpptKIARY[MGt|ysrsvuupNE][TÁôõÈÊñ÷ÎÉËôÆÙÝÖ^MNX\ZI@[BuwuwuMFLFYSSSUTYAAFZDWßÂÍÍÁôðÈÏöòýðñðÍÚÞÛÖÝÙÁÁÛÄÀÍÎõõ÷ÈÀÀÂÜVCBG@MD_SPSÑÓTYEwqspp|}r~xvJuH^ÓÚÅÍÃÌÉÍÀÌÊÎÃÙÜ×RYUQPW××QV_GMXXGZ\R\X\]GuvtvvtD]RQÝÅÌÍÉ÷ðòüþûùõÌÏÈÛÆõôÉË÷÷õöýðöôöÎÛVGHutJtHMM]PXOFAJ}}qsyysv~~w@BL×Í÷õ÷óÿðÏô÷ÊÆØßß_D[^ELEUQ[XAtwMADHXÕÔ\VÔQOvNCGLYÑÄßÓËðÌÏ÷ýýöðÿñÛÚÚÞPVØÂÇßÄÎÉÍÏòø÷öòñÅ^AXBvI\PWÓÜÛP]]Dtqpv|e{xed{|twO×ÎÇßÄññØÆññÂÁÃÏÜSÔÐÔÑÝÄÁÜUQ]DEOX[CYPXNNLu|ystptCTTRÐÌÎÉöÿûûþüùóËÀËÉÂÁÊñËÈõóöôýúþñÊÎÑEuwJpptZX_X\DOJHup|rtr~~ryyrM^PÖÉ÷ôËôð÷õÊöôÍÞÐÐWX]UWTQQR[IBvvqwHDE]SFGwutKqMLA_TÜÜÝÛõöòýþùÿöñôÏÀÄÁÅÞÝÅÂÃÅÃÈ÷õñòþüñÏÞWFGN@E]UÔÜÑ][GCLvqssxdfaggzrtIC^×ÐÖÓÄØÂÃÎ÷õôÍÛÙÆÆÄÀÏÂÀÝÄßR\AHtuK[_ZKtttrvKtuKADZCRÔÑÆÈðøåúÿÿýñöõ÷ËÊÊÏô÷È÷òòýóóüýõÅQ_EHwtLMIKACJKLKJtqwNqzzexy}uG\ÖÙÅÇÀÍÂÀÅÇÀËÊÍØÚÑÔÛÅÛÛÛØU_YGBtqspuIZEBBA\RG[V\DXPR_PÝÞÞÛËóýñõóöÍÀÀÇØÝÅÄÚÅÏÏÎõ÷ýüýÿðôÎÜÜßPD]ÕSZEPQ^S_ZFJwq~faafddJM@_UÕUÔÓßÐÛÈôöõôðôÃÈôÊÊÉÍÄÓÐÜÔDtvprrvvppwOJvLXKquCXAFUÁÍõüûøÿýÿòððòüöÎËðôöòð÷ÉôñõÇÞÅÝSGE[OsqJuwJZYNL]R\ZMurxzx}qwGVUTÙÀÛÑÔÒÜÙØÁÀÆÀÎÎÍÅÚÇßÔÕÒÐTWVYHtNJvqtCFGA^S\AG\GIMRRYVÚÀÃÂËôõÏÆÁÈôÃÌÎÂÁÉ÷öö÷óòüòð÷ñôÈÀÚÓÑÑ\XZ\P^^SYGAFNKpx{fa`dx|qBG[Z_]\UÙÅÀõñüûþòóòðÉõËÏÆÀÎÆÝWAuvsrqvsrqJuHuuvvwuMGRÕßÎô÷ðóòôöôðüòñ÷òÿüÿüóñõôÉÊÉÅÆÃÀÝTTPGDGDEDEA@G[@C@Iqvq||}qvuBFDPSPSÕUÕÓ×ÐÝÃôöõôÉÁÆÃÇØØÝÖÓÓÕW\DLNNuINNHuKB@MuOLJKL\QUÖÂÈÌÆÎôÎÁÍËö÷õöýüñòòñôÊññõõ÷öÊÌÉÚÐÖÒWSTPS]EONts|~~{eee{zxrvwqNBZEAVÙÒØÌôÎÉòòüòüðòðÈËóôÃÛÅÓZF\XvvvJ}|r}xx~xysJst_ÅÇÛÈò÷ôðòýðòÿûýýþúåùñðýÈÉËËÚÇÏÏÜÐÐÑ×P^\U^[FZHwtBwy~s}ex|pswwuLAC\W_GÔÍÞÐÞËÃÚËòôÎ÷ðõÉÈÍÍÇØPWÓU^TWDBEMqrpq}rsrrptJtL_ÑÔTÛñõÏôðööðòñöòòùúþöùùòöòüôÆÈÊÝÖÁÇÔWPÔYXAtvIv|red{dde|}sJtwMZ]EPÅÌÃÀÀ÷óðÊòÿññðüöôôÉÜÒQ_^\[OB@Bttp~yv}x~r~e~vvJYPÕÑÆÏöòüðÿúùóýþñðÿúýòùøýòóö÷ôÏÞØÙÔQÕSX[\@JJIIIX@Jqvryyx|p}sNAHIEXDVÙÄÓÒÚÇÏ÷ôõðóðõüþôÁÌÄSV×PYZE@M[@KtKqsvtqrr~zytwuYÖRTÄÊ÷ÊñýþýóóþüôÊüþüÿååòðýðÏÎÀÜ×ÖYGY^MOFOtO\BH@Fwrvq{{ss~pOuHMLJDUÕÐÌôÂÇ÷ôÎ÷ýþýóððöôÀÒßÓ^ES[CNOJJLFIIMwpuHp|~x}wHGÑÙ×Ûô÷õñÿüöýøÿüùó÷òùþÿúúòôðôÃÁÄÕSQ^CM[BwH^ACRPDDMv~eex{d|qqswwJAPÓÝÁÎËôóðñþûüýùúòðñÁÕÓÙPP×]AMBLK@Cpptrypw{aerxewON_ÐÜÇöô÷ñüüòøäøüøûøúäçäååý÷÷ÉÙÛ×Y_^NwBFKvBZLL[ELuvs}s{~}yytAvqA[FPÌÊÍËñôõððññóñöóýôÂÅÑYVÖQE^^COE\GMHtvur}qq{z|s}sNE_ÔÙÇÈ÷öñÿüóòøúòòøò÷üåûþûüÊÀÌÇÐÞÖ\__G@^TDI_WGM_Zwptpyzgex{~KBwJYW\ÒÏÎÂÉöôõ÷÷öòýóòþöÇÁÇW_ÖÜ][ÔÕXZ\ANHv}sqyz|sdgy~e~KFBWÃÃÊüûþúäúûäçøüúûýûçäÿòöÁÑÐSFEYAEWW[Z^CKD\BNGBvvtp{{{|vqvERD_ÚËÇÆËöÎõ÷ÉÃÂÆÀöó÷ËôÏÝU×_FYWR]ÔÖXMCOwtHvvuv}rqy{rvppC^PÜÌôñÿúùûääþûûñÎ÷ñôðþý÷ËÀÖSSDF\T×ÒÄß]^QVXW×DHCIs~efdze~wpqGTPÕÁÈÇÅôöÎÏÍÙÑÛÂÃõòöÈ÷ÊÐUÛÜPÔØßÔÖPOuvpsvtr|przz~ye}vst_Õ×Âðýþåäçàãçåäøô÷þüô÷üöÂØÖ@OALN\U]PÑPBB_FKD^NwOu}|r|y|qpKYYX×ÇÂÂñóõõðÊÜÒÖ]\ÔÒßÃÈÀÆÇ×[PÖP^ÔÙÐPQQZAFKuBButHwqIqrHBIDUÐÒÆô÷öúçåäåÿöôÈÚÚÈËÃôüÎÑÒÐ_ZQ×ÔÓÙÞÄÃÜU×ÝPAERMrrszdxx{|pptDGCQÙßÇñóôõôÅTÑÙÕQÙÍÏÊöÉØÇÚWUÇÒ\ÕØP@]YwpHt|vKrsp}tq}HYLNÕÇÙÂüúäàíæçàäüýýôÉôöÍÄÅUAM@IJE]A@ÕßÑÒÖ]VÓÕX\ÕFtHOvvNOuJ@FDRTRÔÏÊÉô÷ÃßÛÜZDQYGTÛÒÐÄÞVP××]ÕÑVUÜÐRPUXIESLuDZINCJuOOqvLKuZÕ×ÛöùøåæäååúñÏõËÌÌÎÛÐÑP@@_EAX×ÔÐÌÎÄÄÀÛÓÝÑX@ZFtww|yrr~}tLwJYPÕÄÍÁÍÎÍÅÇÚÐPÖßÓÛÌÍÀÇÇÆÞØØTQ×ÑUÕV[DFDLuNJtJIuJutwwutwHBFQÛÈñþåæáààäåûóöôõÏÄÅÖ]GAIvJutAW×ÖÑÞØÓßßÕQPRX__@NNOqqBG@F[]TÑØÅÇÆÆÄÅÙÐS_\]_VÓÝÒÐTTÑ×QYSQÕ×UÑÖÕQVÕPPSPWR[[ECNJqpvvquAEPØÌ÷üåäåúûþñ÷ôõËÂÆÛÒÖSEXZC@QÓÜÄÁÂÏÏÌÄÝÑÔS[\^@twws}}ppvvJXR\WÝÚÅÙÜÝÓ×ÔÖÔÜØÄÏÏÎÂÏÃÅÞÐÑW×ÝWQÕV_^EGC@DBNFLwwtqppps|u[]×ÌÊ÷üäæææáäøþðôñôÆÞÜÔXGFJswNMZSUVÖÒÜÙØÛVRT\^WPAMECHIEG@]VUÒØßÐÛÅÖSÖÑGF[[G\Ò×ÖÜÓÔ×ÖVSÕTVÕßÞ×ÙÚÑWÑßQ]ÕUP_ZNKus|||~vD\R×ÆÍÈñþÿýüÿöô÷ÊÈõÏÚÚÇÒWPQ^A\×ÖÜÚÆÁØÙÅÚÞÔYZRFHLJq|}qpqN@G^VÓØÜØÚÐÕU×Ð×PQÕTTÝÃÈÅÄÃÄÝÓÒÑWPSWWUU]R^@AFABLCHtJItpqpqIZÕÛÎÊõòøùùääþüòóÊÌËÀßÐÐW[[AIHJLAVVS×ÒÜ×ÒØÐS^RPRY[ZOKOMEYRÔßØÚÂÃÁÆÚÜÖÔP^XANuOFE\WUVSÑÐÕTÕWPÕÙÚÙÄÃÅÑÕU××WVRYGHHNtpsvKIGTÒÓØÁÉôöðñôõôÊÃÙÞØÜÔÐÒÓ×Ö×]\VÕÜÄÂÆÄÉÌÅØÝÔRSRFBBuspwtNGEZS×ÔÖØÙÕT×ÕSPUPYYAGP×ÔÕÞÅÞÚÌÅÔÜÝ_VÙØÖÑÞÑSRPXX\CJHKqsJKqvDEZÒÛÒÆ÷ñ÷óþòðýòõ÷ñÇÜÚÞV^UUED\BKZEM^ÝÑQÝÇÖWÒÓ^VÐPZ[[LMQUSÖÅÅÆÈÃÞÀÎÛWQWALZAtIMHuMFF]ÑÐTÔÝQ]VS]ÒÏÃÛÂËÁÅÅßUÐÞS@GFBLA@KN^\\PUÖØÀÄØÅÂÍÅÀÀØÀÆÝÔÖÐÐÒÝØÖWTUQRTÜÀÍÍÈËõÏßÜ×_YYBwwKNM@[Z\ÕTTÕUÐÔÕW]_UÑQQPSQÔÔQÕØÃÇÅÂÛÝÔ]ZGSÕÕÐÒÞÝØÄTX[EMtwvwNBLB^QÔÒÙÜÙÍõËÍÉôô÷õÈËÉÏÙÐÓTWÑÓV^S\GCIuC\\_×ÅÃÆÀÀÙÝßÓUVS[X×ÙÕÔÄÀÙÐÜÞÞØU^^YAOGEBNCDCNCZYQÕPWÐÑ^Z\\VÙÆÁÍõËÉöõÄÚÙQCCZCBD[OMXDZQV]WÙÝQÔÚÓUÐÝÒÅÃÜÐÚÄßÚÉÎÓÖÝURY]WÓÛÞÄÏôÏÆÎÚÕWQXCABNC_X@PWDF\WW×U\^VW[_ÖS]ÔÐV]ÜÚÞØÅÜ×ÞÑGA\YFQÙÙßÅÇÒÝÞT\^@qsNMJH_^[WV]×ÇØÓÆÌÄÅÊÈÆÀÃÅÛÆßÖÓÚÒVÝØWX[MqwNINQÐWÞÈÎÆÊ÷ÆßÙÐRTÓÔQÒÚÓÑÅÙPTÜÕ]QQGMEOuBFttBOKEVQTÖÖTVT_\×ÜÖÝÌÎÉõñÊÃõÏÓ×ÐZHDDHHE[NO@MCPW^]ÕU\RÞÝÔÛÁßÓÁÃÆÍÃØÛÀÇÖWP[ERQTÞÚÛØÇÏÀÀÍÚÕSWYD\[@GQ_MYQY[WW_WÔSXQS[^ÔQF_ÔTVÝÛÝÞÅÝSPVX[QUWÓÙÜÜÅÛÑÖÓWFG^DOMFAEXGZ_^]UÜÜÑÝÄÅÄÍÌÃÀÄÞÐßÙÓÑÒ×ÔÒÓP^YGMB_Y[TÐÑÐÄÌÆÅÚØÖÓØÓ×ÐÔÕÖÜÓÕ×ÝU^VV^DZ[Y_Y[@MMuIGA@[VÕÔÕÖ×ÔÜÒÓØÙÒÝÆÃÃÏÉÃÙÄÙVQQGHBZLHCDBLY^Z]_DYÒÙÞÀÊØQÜÆÓÖÚÙ×ÒÞÜßÅßRWÙÜÑÜÜUWÝßÒÅÍÜSÓÙQP×Q[EZZ_TRAQÜURÔÕXZRTPUÐ_@\RF[URZVÙÓÔÞØWÒÌßUÝÜQ\ÐßVUØÔ[ÔÓ]E^AKLYAHX_O[×V_UÐÖÞÈõÉ÷öÅÔÆÁÖT×Q[QÓUWÓÕGSØTZWÐ_]ßÙÕÜÂÖSÚÅWUÅÜRÕÛßUÙÅ×ÒÇÔYWÕE[Ð×GEUEt@FJLD@GTÝÕWÛÇÝÛÌßWÝÓ\SÞÞPÒÌÒÑÏÃP]\CBEZKu\]NDWDB^ÕTÐË÷ÀÃõÇÝÁØ^YTP^ÔÝUTÇÂÜØÆÙÑÑ×]QÞÜWÕÒTÕÝÖ]]ÖQ^ÖÝW×ÆÆÑÒÞ×PQV[WÙQFZSEB^RABQS[VÖPÔÂÌÞÜÇÞPPPFY×ÔRTÄÇØÚÛÕX^DNB@LD\YMGQR]ÑÚÀÊóöÍÎõÃÛßÕ[E_GA^PRQÙÚÔÜÃÜRP×PPÑÖSÔÄÜTÒÓÖßÜÝÐÙÎÁßÄÛ×ÔÖÕ\]PSVQ]FZ_OLEGDEECF]U×ÑÙÙÐÜÜÖWWTVÕßßÜÏÈÆØÄÄÔQ\MHNMLM@LLCG^\ÒÁÃÏÍÉÍÀÂÇÝ×ÔRXZFEVÕÕßÞØÇÜÑTRÔÖÔÕPÖÝÐÐÜÐÑßÑÝÝÕÐÛßÖÔÑÖW]SRS×ÖUTVWW\_]X_Q[ZXEZ\ÕÑÕÓÙÑWÕW]VUWQÕÜØÞÅØÙÙÝÕYZECBDZ@@EEG[RÔÇÎÌÀÎÉÃÃÁÚÜÑÔ^ADDGXRPPUÖÔPVTPÐÙÑÑØÚßÙÇÀÚÛÄÑÕÝßÒÒÝÔWTÔV[VÕQU×VY_][ZRSYXRDC[GD_RTWÔÝÖÑÅÞÑÓÜÐÔÜÛØØÀÙÖÒÑXEX[FDYFO@@OCRWWßÅßÓÅÀÅÅÌÄÓÜÓP^SSY_R]\VU\VÐÝ×ÑÙÝÐÙÅÞÛÚÓÖÐÒÔÔßÝÖÓÑPSP][SÑÖÕÐÓSPTP]\P][RSDCDA@XSSPTÑÔÐÄÛÓßÜ×ÐÝÝÝÐUR^SPY^P]SÕQ_[E[C[TÕÖÜßÐÝØÅÇÇÅÜÐÜÕ[Y_ED[XYY]PSSÔÖÖÜØÙÚÃÀÁÇÚÝÓßÝ×ÜÚÓÖÓÖVPWTWWÔP\S^_RVQ]VQR\]Y@BMHB]QPÑßÞÅÆÃÁÁÄÙÙÚÄÜÐ×]YXSRZ^^EZ^^EZXD[\RSÕÔVWÔÒÙÆÂÁÇÛßÖÔTS^ZY]QWWTÕÖÐÝÛÅÞØÛÒÐÜÚßÜÙÒÐÒÒÐÐÖTWP\_QUWR]QWU×ÖÕÕÑÝÖÑU^DCLOF^\QWVUÜÇÇÇÃÄØØßÓÔU]EFZEX^__\T×ÕUT\[QWRVÓÐTÑÜÒÞÃÃØÙÜÑW]_FFE[ZESQSQTUÖØØÜÇÄßÛÁÆÚÛÅÛßßßÓÛÁÒÔUT\X^[@CXE[ÕUWÐÛÜT×ÐPFAMuFSSÔÒÞÝÄÉÎÅÂËÄØÆÙÐÖT^B@FLOX[ARU]Y^^GE\GBV×\QÐÒÞÁÍÍÇÇØÝßÜVQÐÕ\\VTWÔÓQ]×W^ÕÒWTÓÓUÔØÓTßÅÝÜÁßWVTV]VU^XWP\UÝÜÙÃÂÛÞÙ×Y[ZLIAE_Õ×ÔÜÁÀÞÛÃÄÒÙÙÖÕQEMNLIO_ÔRQÝÔSÔÖR]TQZ\ÒÕ]ÓÝ×ÝÁÇÄÄÛÓTÔT^\T_D\V^YQÕSVß×TßÒTÑÜ×ÖÛÇØÙÀÀÚÁÇÐÕÖT[ZQ]AYQDDWÕVÝÁÛßÆÛQ^QEM\WSUÙÜÖÞÀÇÙÂÉÞÜÄÑ^RSGIBAO@\EGVU^]ÐQ[_QXZQT_QÜÐÒÎôÎÃÍÁÜÐÐPRÐ×X^TYCZRX^ÑÜWÔ×ZFVVSÕßØÝØÆÚÞÆÇ×ÑÙ×VTTYESQD^ÑÔÐÂÏÇÃÇÜÕR\Z[TÕ\_VSQ×ØÛÅÏÂÓ×ÓXF]\DE\]XXZFZWQYRÑ×_]W\XRQSWßÅÀ÷ôÆÄÇÙÕSPP]Q\ACBLBDRQ×ØÄÔXR\\V×ÑÞÇÇÙÙÄÆÄÆÁÝÖÝÙÑR_YE[^EE×ÞÓÒÛÚÞÜÝW\]QPRPXEPÓÐÒÍõÎÂÃÜPUÔ]_SRE[[OtLEB@\S^VUYF]Q[\×ÖTÇ÷ÉÃËÈÄÅÛÔRUÓ]ZR[LEVXXÔÝVR×\LXTYXÓÙÑÔÝÕWÄÉÅÚÈÃÓØØP[VÕ[EÕT_ÞÆÑÔÛÂßÝÚÕXTÑ[DS]FSÐÑÞÏõÒÕÚÝQÑÒ]XUÕE@AJwAXMEÔÕ_^\EFSUXRÞÓÑÄÏÚÛËÌÒÒÞÕ_ÕUZ[UWGYQ__UTZ[ÔQZ\VYYÓÒQWÓÖ×ÇÊÏÍõÎÝÓÒVSTT]PÜÓPTÔV×ÆÅÒÓÜTZ\PX_ÖQEPÐÒÜÄÇÑ×ÇÛÕÐÓVVW]AF_GJL^Z^ÕPED]S_RÖUWÞÓTÖßÚÇÅÙÐ×ÒÑ]RWSRUQPVVPYXRSP×PZ]UTWTTVUÝßÓÄÉÃÚÅÙ×UÑÑQVÐÐU×Õ^^UÓÔÐÚÞÖÐÑSPÐÐPQÖÖÑÓÜÒÝÅÚÓÐÒ×PUUDCEGFEGLC]YMFXZF^SR×ÙÓ×ÖÑÕÖÃÀÜÇÏÛÖÞÚÑÒÛÖ^WØTZ][MGS]AZ]DZPP[RÐTVÝÇÅÄÎÏÜØÂÄÞÙÇÚÅÃÜÔÒÒWQ×ÔPÕ×\EYRX]V_YWÒÕVÓÞÒÞÅÓWÒÛÖWÐT\QÔSYTÔ^ZXZ@D\EC_×Q]W^A[WVSÐÞÜÓÞÖVÝØÖVÑÝÑÜØÐVUÖTQVP^]U][WÕQUÖ×ÐÚÅÑ×ÜÝWÐÙÖÔØÅÝÐÐÔQÔßUWÙÝVÔÝÖWÐÙTSÒÞÖÝÙÖ×ÞÅÒWÖ×_PTYEXDCGXY_VPABEEDYXXPWUSPÖPZVÖÔÝÄÛÜÝÞÝßÃÛUÐÚßÑÒÜÔ]^_GA[ZCGXYRÕÔV×ÞÙÜÄÅÞÛÆÄÛÄÆÅÞßßÑÖÐÖÕÑÓÓÒÑW_VW[EPVRSVUUÒÓÑÝÝÓÕÔÐÕQWUÔVQRRWP__QV_]VSS_XXY[ZX^YDDZ\RQPPÔÖÓÝÓÛÄÛÚÚÅÁÇÛßÒÔTSGEZ[]RÕÖÔÝØÙÜÝÓÞÛØÝÜÙØÐQTTPÕÔWÕÜÞÝÜØÒÖÒÒÖWTW×ÒÖW×ÞÞ×ÐØÝÕÔU_^WW]SRZ[_FOADEXWÔ]Q×]AD^ZXRRXRÓÔP×ÔRTÜÝÝÚÃÚßÆÇÜÅÎÅÔ×ÑS[GMuHDD_ÔÐÕÓÜTTÞÄÅÆÌÃÄÀÆ×STT]VÖÖUÜÄßÐÜÝÑÜÜV\TT^[PPRWÑÐÓÞÞÕPP\RÔÝÓÖÓÐV_EAA\R\ÕÝ×VPYCAEZEZ[ZY\XG^P]RTÕTUÒÑ×ÜÄÅÄÍÃÅÆÆÒP\\XX]]]ÖÒÕÕÔSPÑÞÛØØÇÙÐT_\WVSÔÜÜÒÜÛÛßÄÁÜÚÄÓÜØ×\R×ÐÖÑÞßØÁÝWTRZYRW_YQ_NJKuLZZYSÕQ[DEAXR\SUTPQWR]ÔÜ×WÝÝ×ÖÖVQ×ÙÞÚÆÛÛÁÛU_R[BA_\YT×R_WUÔÒØÞÞÆÁÜÓÔWÔßßÐßÚÞÖÖÜÒÑÙÙÒÒÝÖTP]AETÕVÐÞßÅÁÙÐÝÜÕPÔÖVÕÖS[[YY\P]\VÕYC@@MA^^^RQZG^XXWÖÕUÐÝÖVVPP×ÓÓÙÇÁÁÁÆØÐÓÑSY^_X]_DXQS_WÖTÔÐW^^]STÜßßÞÇÛÐÝÄÆÚÇÀÁÆÌÃÝÐÑWÔÜÜÐßÅÙÜÅÄßÓÓQ_]S][E@MAX[[YYZY^DMDYZZS×WU×VPÔÑÑÒÞÜÜØÛÑR\R\RTÕÓÞÞ×WÑÑVTÕS[_\ZFXY]UÐTQÖÓÖÔÕVPÕÒÝØÃÍÇÚÚÞÝÚÛÑÔÒØÙÙÞÔ]RSSWÑÐÒÙÜ×ÐÅÆÛÞÒÐÐÐÖWW×TVÔÔPY\_A@AGXR]Y\TT[[]_YSVRUÐÜÓÑÑP_ÕÐÕÔßÞÒÝÒÑÑßÜTWÑ×UTPYZYS\^R^X_Y@C^RQÖßÅÚÂÁÞÛÅÛØÛØÜÝßÄÛßÞßÝßÝÖÝÅÚÝÒßÝÐÙß×ÑÜ×RR]\]UÔ]]\E@@AIHES]×ØÓTÔW^SÓÓPPÖÑÐÞÙÑUWVPVÓÔUÑU_^RPQVQSWÓÖPWQ\]VÕW]]YEE[XSÜßÓÚËËÀÀÆÛØÃÚÖÓÑU_SU_YUÐVTßÒ×ÒÒ×ÕßÙÖÜÇÚÙÚØÑÑßØÝÒßÖQP^LIGFCDWTWÐT^FFADR]FFRPX]ÔURVTUÐÄÛ×ÒÙÖ×ÛØÕWÒÒÖÞØÑ×ÜÔ^SQYNNOqvAY^ÑÇÚÅÌÍßßÀÅ×ÝÚÑTUP[YVWVÝÚÓßÂÁÜÜÅÙÝÞÙÖÑÅÝÔÒÐSRÖÑWTÖRDGGOBRS]ÖÇÚÖÝÜPX_GLADMLYY@XÔÕ]PÕWÕÐÓUTÐÑUÓÓTTÒÝÖÜÆÚÒßÜVVVZOBFC@_×ÑÞÍÎÂÀÅÒÓÒÕ\]T]F@DBFSW×ßÚØÙÆÁÛØÂÀÛÛÆÁÇÃÆÛØÄßÑÒÜÕQUS[GEZ@D^^RÖ×^EGMJuuvvJHuM[XPÓÞßßÛÄßßÚÞÝÅÄÝÝÙÙßÛÇØÙÄßTUÖS[FOtvuNOGUÒÝÁÂØÝÜÝTWÕQ\VQ[_UWWÒÅÄÅÇÃÄÅÂÂÇÁÀÙÙÇÄßÜÛÒQÔÖSWÒÕPVQ_EY^EXÕÔUÐ×\FCLwswvpuOKCRR\ÕÜÐUÒÜUÔØßÜÄÀÛÚÃÃßØÃÄÓÝÜTÕÑQZ[_CKFEA_ÜÛÙÄÆÜÐÐQGYQYG^RY]×ÓÑÅÏÁÅÍÃÅÇÊÌÇÌËÂÁÈÁÓÛÅUPÖÐÕ×ÜÖPUUYFXZF[WP_SSAIOwrvuqqOACYTWQÐÜÖÐØØßØÅÙÛÌÊÉÃÃÅÝÙÅÒÕÑÖVQV^GFCKKG^QÒÝÖÖÜßÖQ\XFZ\_RÔÖ×ÓÞÄÇÉõÂÁÏÈÉÊÈÁÃÎÌÆÅØÒÕWVPÕÑÒÒÖ×WQVSXD[^_]]\QQ^@OItuwvuHLD_]\PÕVSWTUÐÝÝßÄÃÈÎÇÚÜÓÓÖÖÖÒÓÖÔVSPSYD[ZEVÔÕÐÙßÐÕURY^E@E_QWÐßÜØÀÍÁÁÎÌÂÎÉÌÎ÷ÈÇÇÅÐÐÝÑU×ÓÖÑÛÞÖÑßÔ_R]ZFFABE_AICAutOJvuINC\\ZPÔ^XTÐ×ÐØÛÄÈõÌÀÏÍÜØÄÜÓÜßÕÕÝÔRPTDBY[BXVRVßÙWSÕ]FDYEZÕÕVÒÄÙÓÚÏÚÅÊõÉ÷ñÊÎöÎÜÜØÔ_QÕPUÜÑ×ØÅÐTÑÕZDXANF[@A_DHMFKwCGJBYZERPFF^XFS×QTØÇÞÅÈÏÇÁÌÄÚÂÚÖÝÙÕWÛÆÝÓÝWEZZBZWPSÖÞÐÕÕV[ZYAGRV\WÙÜ×ÓÛØÜÆÁÇÎôËÏÈÌÞÙÆß×ÒÓSSÖÖÑÛÆØßÞÑ][DOK@FLBDCHIItu@@uOZGF^^GDYZZVÐ×ÓÆÆÙÁËÎÌÎÎÂÎõÁÝÒÓUTÝÝÑÖ×_GZZBGP][QÖVRW]GYR^[VTRTßÐÖÝÞÚØÁÌÉõ÷õÏÌÌÄÚÛÝÕÕÕR_]QVÐÒ×ÖÐTY[DA@ZXZDYZMLMCCDYEF[^_YY@FDCCE\]VÓØÙÅÆÃÍÁÆÁÁÚÒÐÖTUÑÙßßÙßÔP]PPQÕÕÐÑÖÕUVRPV]YX\YZQÔUWÐÜßßÜÛÇÌÁÁÂÎÀÄÃÌÄÞÒÖS^]]QÖÒÐÜÝ×P\FMGDCMEDML@@@F@CMMOI@DAOA^DZQ×WÖÛÙÙÆÌÂÌÏÌÂÌÂÚÓÐÔSVÒÞÑÑÜÓPPWÕWÕWÕ×URRU]YPU]^VW^\T×TÔØÅÄÆÍÀÈôÏÃÊÌÝßÆÛUÑÞÖ]PQ\\TTTWS[G^ZCDR[@XRF@Y\[XQ_FCBLA@LNGYGZT×WÓÅÀØÁÍÃÆÄÇÙÛÞ×UÔVSÕÛßÒÙÛUSTÖUTÐÐÑÔÐÔÐÓTPUV[[WÕ]QÒÒ×ÝÛØßÙØÄÆÇÃÂÎØÝÅÁÙÒÞÚÖ\VÔTSQPQ\XGZDCLD[AZRQ^PUU_Y^DHtuuJuHFYZZRÓÖÔÞÀÅØÆÀÆÅÆÁÂÄÙÓÒÐTÕÜÛÞÙÇÅ×ÕÖ×\SÔÑÕÕÔÔÓÑ×TÕ^Z\VR]PÖÑWÐßÜÓÞÇÍÀÂÌÉÀÜÒÅÀßÛÆÄÓÕWW\[ZEAIJOCINMGE^SÕV]×ÓT_\_XMOMCOLAY[A_ÖÓÔÜÚÁÞÝØÅßßØÅÅÒÒÞÜWWÓÄÛÜÚÅÑÕÕUÔTÓØÅÛÙÚÀØÖÖÖRE]WV\QÔÕRPTÔÔÕÔÐØÙßØÄÞÑßÃÛÜßÅÚÒ×ÑÐWRRRZLLFMuN_TQTÞÅ×UÖÕZCFEBuu@BtuODA[WÖÕÐØÅØÐÝÆÆÛÄÃÌÆÛÅÀØÑßÄÅÓÐÞÛÔRPÔUQÕÇÙÐØÀÞRSÕUDDSU\^VÖTPÐÄÅÓÒÇÂÒÖÅÁÜÞÁÃØØÁÂÚÓÓÒÑS[YDHtKKwsK[[YUØÛÞÒUWQ^[ZXMIC@uwM[[YUÖÐÓÙÜÝßÜÜÚÞÑÓÚÇÓÖÞÇÒÒÜÞÔÑÔÜÓVVÓÛÝÐÂôÀÙÄÁVXQÐS@YÕQDF_ÔS\ÑÇÜÔÒÇÖZVÚÛÕØÏÆÝÅÏÁÝÚÁÇÒQRS^LIBOJJF\]ÔÛÀÛUSY_EBNABwqutrpFY@FÕÞÕSÑÚÞÝÁõÈØßÎÉÐÖÃÈÞÑÛÆÖÕØÅÕR×ÝÑVÑÚÅÞß×T_[^_^Y_^ZAAG\×ÜßÛÌÀÜ×ßÞÖÓÈËÇÛõõÛÑÇÎßÔÒßSAGS@qwCBwuXP[SÜÒZB^QFBRWGHHNHtL[[[PÔÕWTÔ×ÝÄÂÄÇÂÇÝÐÛÇÞÚÂÙWÕÚÞWQÒÒVVÚÍÄÞÃÎÜPÑÛÔYPÐWZXSGtLSQXSÝÞS_TÓÔÖÁÈÂÚÍôÍÙØÚÚÄÚÜÝßÓUPS_FFY\YD\ÖVYXRY@ODFutBtxKNvJRPADT×R]ØÎÇßÏðõÇÄÏÍÝÞÌÃÓÑÄØUUÒÐUUÔÖÖÓÐÕT]\WÔ×Ô×Q\][G[RPY_ÖÐ×ÓÄß×ØËÉÃËðõÌÊõÌÛßÁÅQ_ÔÑ[ND^@K^×_B^WYIFR]Y^R\YDFFOJCZD@D_^[^R]QÑßÜØÙßØÅÞTUÚÚ×ÑÚßUWÐÓP]ÓÆÛÖÒÃÆÕUÚÛÑÓÆÚÔPÓÓYG\PRY[_ZABDXE\ÒÆÇÆÈôôôõÎÂÂÂÇÇÇÛÓÒÜÕ]VÑÕSVÐ×^E_XACX]@KOAw|sJutO[DA[^_^_WÜÛÄÂÉÊÊÊÊËÌÈËÏÀÁØÜÑÐÕ]WÕPRÕUS^YZDEP×××ÕÒÑRYQWPRÕÕR_VQXXQÖÒÃÈõÊõôËÈÈËÉÀØØÜÓVR\ABDR^^TÑP_]P\_PP_^]\\GCCFZ^SP\[YGBCYRVÔÒßÜÙÜÒÓÒÑÜÚÆÄÅÄÙÑUUUÐ×UÔßÝ×ÐÞÒWÑØÚÒØÃÄÖVVR^_VRYDZGLtJBO@SÜÛÆÎËÃÃÏËÊÊËÌÀÇÛÑ×ÖÕVT×ÖÓÐÑWQ]]RÕREZ^DHKuvpwKNOD[ZFLMDYYÐØÅÅÍÈÀÅÌôÎÉô÷õËÍÆÒÔÖUÔWS]Q\ZE^^_RWWUÝÜÒÕÕ\]QT]STPZFZFAXWUßÁÊôôÊÆÃÎËÍÈÈÁÝÓQED^DMG[Y_VP]_VWQT]_QT^G@CNBA@CXV^ZEZFE_S]×ÝÙÝÑÔÕØÅÛÛÃÂÀÆÁØÒØØÓ×ÐÑÖÔÔPWÐßÞÙÚÙÚÀÃÞÖÔÔPPR__YAJwvqwNCGRÜÛÄÆÀÃÌÈÈÊôöõÃÅÝTWTP^]U×ÑÑÖÔÔVSWQYD\^@JIuvspqwuKNB@G_SVTÓÚÛÞÛÅÇÀÎÊÉÊÊõÎÈÁÛÚÚÓÔÑÐÕPQ]XX]RWPTÑßß×ÑÜÝQUÝÓTÔÔR@MFB@C[R×ÐÞÇÍÇÀÈÈÂÍÊÉÇÞßV]XEOB[DZ]T]RÕÖPWÔÐ×ÔUS]^[A@HuJBKwOXDO[]\ZQUUVÑÙÄÆÚÇÍÌÛÄÃÃÙØÅØÑØÁÛÒÖÑWUTÕTÜØØÚÂÆÒÒÝ×]PP_FAOINJwH@MFSÓÑßÂôÈËöñõÈõÊÏØØÝÐPYYQXDRWRXPQ_[RRYZ[F@CBCHuwwqttHC[[STWÖÓÓÐÄÆÀÃôËÂÎõËÃÍÂÃÙÝÞÙÖÑÖÔP__^\^PÖÞÓØÀÂßÅÀÚÒ××PXDYZAMFFAF^QÕÑÛÈÊÊËôÌÅÛÚÒÑÕW\X^GGGXE^SVQÕÑßÝÑÓÐÑTWRSZGFMwqtutwNB@LEY[D\ÔÑÑÜÀÃÆÄÉËÌÆÏÎÁÄÌËÀÛÙÇÙÜÑÖ×UTÑÒÜÞØÆÄÙÐßÜÖ][@MJuOOKuCDZGRÑÜÙÏðòñöñôÍÇÃÁÜVTÑVX\QSYYWP^ZSWSZXS]ZDZEAILKwqtKLOLD^XG_VV]UØÇÚÂõõÍÂõôÌÄÃÍÁßÅÆÙÔÔßÓS_T×PRÝÚÜÑÛÆØÒßÅÞVX^Y@HM@CLAE[YRÖÒÙÇÈ÷ôÉÃÌÀÝÔÓÒWRQTP^WÑ×UÔÒÐUTÜßÑVUÔRD^Q[LLAOqqKKqqI@LJOFFAXTÐÜØÃÉÈÎÎÉÏÍÌËÏÏÎÎÂÅØÛÚÝTÔÒÒTÕÛÆØÓØÚÓPTÑQD@ZENuIOutCXDDQßßÞÌñðÊÊ÷ÈÅÒÛÚÜÐÓßÓ×TÓßÖTÕÑÔQWWS_^R\XFEDNHHIuqwKHwtDYDO[S_^WÆÍÍÏ÷ñÎÍÈÉÁÛÃÍÁÅÛÚÐ×ÐÓÔ]PWP]SÑßÜÐÒÞÐ×UÑÓP\\SXABAECMGYSRTÜÛÛÁõËÂÅØØÖÑÒÖÔT×TPRTÝÑÖÐÞÛÑÐÝß×VUWQ_]SYEBIOIJttvuKtttHOH@^×ÝÛÃÏÊÃÁÃÌËÂÃÈ÷ËÁÌÂÂÚÞØÜÜ×ÕÑÐÝÝßÐÑÒWRPUWXXRWXLCCCJuOBFDPÒÅÆÀÊËÊËÃÇÛÁÛÝßÛÇÑTÕ×ÖPQÔÐÑQVWT]ZXY[ACGEZOOMC@INNOMNMCEEF[SÓÝÝÅÉ÷ÏÀÏÈÏÚÇÂÃØÒØÙÙÐÑÓ×ÑTRRQÖTÔÑÜÞÕÕÔÜÒUÐßÚÐPPS]AMF[XD_TÒÝÐÛÄÄÞÑÓÒÝÔÕÓÝÜÕV]]WRQÕÙÙ×ÐÙÚÑPÕÔV[E_\\D[^[AKHJuqqtuONIB@Z[RÖÙÂÁÀÏõôÊõôöôÃÃÍÉÁÙÇÆÛÔUÒÝÑWÖÐÓ×QP]R\[\PTP[ZE[NICFEAZPÓÜÝÀËõÍÇÁÃÂÛØÆÀÁÒÓÑÔVYQÕÕVV×ÔÕV]^EZFC@D[FFX\[MBC@OwJCZBOEY\XPßÆÀÀËÊÊËõ÷õÊÌÄÅÙÛÞÓÐÓßÔU×ÓÝWSUÜÐPÕÓÐPSÐÐÖQSVR\ZXXXE@Z]WÖÐÒØÇÄÙÜÞÅÜÒØÄÇÓ×Ö×VXSÑÒÔTÓÞß×Õ×T]ZX_YY^S_^]_[@@MwvuLJtHFYDDQßÞÖÝÂõÊÊðòöÊÉËÂÅÞØÛÞÙÞÙÙÅÅÓÕUÝßWSPÔP[^QTYFX^AKCYZCC_PSP×ÜÞÄÅÛÚÆÍÀÀÀÃÌÆÚÞÞÒSVÔ×Q^SUTXE]P\@CYYYEY_XZZ^EALNNJHLBAXS^YVÛÀÝßÍôÊÎôð÷ÏÁÀÆÜÕÕßÓ×UÓßÞÜÑÕUÖÔWV×Ó×PTÑÒT]]]ZOBZ^ZDRÔÕ]\UÑÖUÖÙÅÆÁÀÇÄÆÅßÑÓ×R^QUWPÕÖÕ^XSÕW[YVVRY_PR^X[FFNtttJuKM[ZAZ\ÖßÒßÄÎÏÇÌöóôÎÊ÷ÎØÜÅØÓ×ÜÛØßÒÝÓÖTTÕ×ÐURSWÔPXZ\YJuG_D@_TT\RÑÞÝÐÝÄÁÆÅÇÂÌÆÚÅÙÞ×]^SWSRPPW^@F^^AXUÐW_PÔUYGZZFNJMFBICCBCAADSTTÖØÂÀÄÃÈ÷ÉÌÏËÎØßÚÃÅÓÝÙØÝ×ÒßÝ×ÑÞÇÚÒÝÝÑÕQR\\^CIB[FCZ^W_[WÒÓVPÐÚßÒÆÎÏÃÁÂÆÚÜÕQTÕVPVÕT^D[_\Y]VÖT\RVVX@G[GItHMNtK@F@BAYQPWÒÛÆÀÍËÊôËÉÎÉÉÆÚÄÍÁÝÓÙØÓÔÔÒØÝÑßÛÛÔWTUS[X]RDAEDZDAZ\S^_PÕÑUÔÐØÅÙÅÂÏÃÙÙÛÚÐT×Ñ×RRQTQ[XY]]YPUÑÕSTÔUS_YEAIKHNMNO@EDOME\X^ÕØÂÂÀÉôõÌÍÌÃÄÜÛÆÆÚØÛØØÜÐÑßØÐÖßÅÅÓÕÔÖVXEX\Z@FY]YXRTWX[RPP^]UÐÓÒÞÇÁÚßÙÛÛßÒÓÐ×S\RÕÕR]WÔWRUÝÝÔVÔÕTR^^E@HKLLIJN@EZ@D[_^[]ÐÅÚØÀõôÏÌÈËÂÛÅÁÁÚßÚÄÚÞßÛÙßÖUÖÓÝÔWTÕWXGZ^EBG\W]\×ÑT__RSRX\UÝÒÖÞÇÃÚÜÞÙÙÓÔÖÐ×]_STQ_RWÖ×WÔÜÛÐWÖÐÔYEYXANMFEGBAG@CCFE^[D^ÕÜÑÑÞÀÏÆÇÍÈÏÄÇÃÌÆÛÆÍÂÄÄÀÆÛÓÑÐÝÜÑÖÜÜÖ]ZD[E@C[PS\PÔTYDY_DOGRTQRÖÙØÝÒÙØØÞÝÝÝÜÑUÔÐÓÑ×ÖÒÖVTÓÒUSWÓÕXAXYZAGXY[FGGFAAZY^^^SWÕ×ÔÜÄÂÃÃÏõÊÀÆÂËÌÚÛÁÆÞÞÄÛÝUUÖ×UQWÐ×Q\\_^^X\QWÕ]STÕQ]PVVX[]P\[QÓÜÐUÑÝÐWWÑÓÑÕ×ÓÒÝÖÕ×ÔÑ××ÑÐÖVÔÑÖSZ\RPY^VWRDDGACCFDGFFEE[^\ÕÜÛÅÇÃÃÀÅÇËôÈÂÎÈÈÂÛÁÃÅÜÒÙÓÖÕWÖUP]\\\_X^QV\Y\_]_Z]WPYDY]\^QÜÛÜÐÞØÒ×ÔÒØßÑÐÙÜÐTVÔÔÕVWWRSY]VQSX_SP\\TÖQEDY^[GZ_^EBEYYYRÖßÅÛÚÁÆÄÞÙÇÏÌÅÅÀÆØÒÙÅÛßÔÐÝÖUWÔÕTSQÕTTVÕÖÑURQÔUS^]R\@MFDEFXÕ×TSQÑ×Õ×ÝÇÅÝÝÞßÓTTÑÒÓÓÑÐÑU\]PSQSPTTQPWÔU_D^^DOCG@IuICDZ_UÜÚÙÙÇÁÀÄÀÎËËÍÂÍÍÀÞÛÁÇÙÓßÙÐQRÕÕS_RP]][_RPW]TÕWS^^ZDABG^SSSÔÝÐWWÒÜÓÓØÄÄÅÝßßÐÕWÑÑ×ÔUÕPYGE_Y^]QTÐ×V×ÐÓÕWWUQEAF@MNNFXEZQÖÖ××ßÙÛÛÙÇÆÇÅÅÇÇÅÙÛÁÆÁÛÙÚÞÐTÕÑÔTW×ÐÐWWÓÓÖUÔÔV^DGMCLIAZ[X^SVWQPUÒÞßØÃÃÚÞÙÚÄÝÐÙßÝÝÑ×ÔQYY\\\XRVQQRTÖ×ÐTVV\GNOIIHOAE[G\TUÑÔÙÅÆÀÅÍÏÌÁÇÃÀÃÀÁÄØÛÒÓÓÖURQÕTVPVTTVRÕÐÑÔ×ÓU]EZEFF@[\SRRUTÕÕ×ÜÞßÒÙÄÛØÐÑÐÖ×ÔÖÓÐTQWV]Y_\\RSQÔÔÖÔÓÞÙÙÖÒÖPYGZDABO@AAMG^^XYUßÞÞÜÛÛÛØÝÄÁÆÇÇÂÆÆÙÞÙÓÑUÖÖÕÖWUÝÖÐÜÐÝØÖ×ÒVSFCAMMHNBAFCYSRPTÐÙÚÙÚÀÄÚÞÙÛØÞÑÜÙÓÖT×ÖWS\SRQ]]WTÔVWÖUUQU\\\GDMACIFFC@G_]RQÓÞÜÛÅÄÃÇÅÇÃÍÌÆÛÅßÙÑÐUÕU^\VSTRQ×ÖUÕßÓÝÒÖÒÕVR\]^DCFDEXXPPRVVÔÓÞßÒÙÙÛÒÖÞÓÑÔÖÜ×ÕQÕÕWV\TUUWTßÓßÒÝÙÓÑÔÕTPSX[^ZALLKIHNDGDY_TÐÝÓßÛØØØÁÃÁÀÍÎÀÆÅßØÜÝÑVÑU×ÕÑÜÒßÐÓßÓÐWÔV_[GD@NHHBIBAXRRTWÑÞØÛÜÇÆÆÇÛÁÇÜÐÐÞßÐÔÕÒQR]QÕ\VVÕÐUÖÕÖUÕU]Q__^X]X^@GDAGF]WWVQÖÝÝÓÞÆÅÚßÙÆØÇÚÚÄßÞ×ÑÔPQSÕWWÑ×ÜßÙÒÒÙÞÓÔ×ÑTU]R\DAOFBB[EPRVTTÓÐÐÓÐÜßÒÑÒÜÐÑUÝÐÔÔWÔÑTTWÜPÐÄÒÁWÞÝÑØÕW_P\\YFYYDBHBBNMG][__UÔÖÐ×ÆÚÀÅÞÄÀÌÀÇÌÁÄØÜÙÐ×QÕÐÑÜÓßÜÞÜÒÛÝÔR\DQSY[A@IuHH@FE]VVÕÑÝßßÓÞÀÅÄÅØÅÚÙÓÞÅÙÐTÔÕWVR××UTWÖÖWVWÔV\ZE^G[ZX\[GMAD\^YÖÐÖÕÔÞÜÓÐÙÅÞßÝÛÄÚÞÙØÜÓ×T×VPPSÖ×ÓÖÓßÝÞÓÞÙÓÖVVWQSPV\XGCEDD[]TWTVW×UUQU×Õ×TÑÓÓÓ×ÜÞÐÔÔÐ×TUÓØÜÒÒØÆØÓÐÜÐVP_R\\X[Y@CKHAOLAYP\YYPÕWWÔÙÙÝÙØÀÀÁÀÂÍÅØÞÚÞ×ÒÐÝØÞßÒßÙÞÓÖÜÖSYE^ZGDEE@MLFFF^]QVQWWÖÐÒÑÝÛßØÜÛÁÄÇÅÀÀÄÙÖÓÕQWVÖ×VPVÕVRRQV\^X^R\Y[XXZD[]RPPV×TVQWÐÖÖÒÙÛÝÜÜØÚßßÞØßÐ×U×VWWTÐ×ÖÑÐÒÐÓÑßÙÐÖTÑÖVPPÕS]__SXYX[_ZY^]R^]^PQQÔÕÒÞÜÜØÁÇØÝÜÞÐÖÓÚÄØÛØÙÒ×ÐÔÓÑTWSQ[DFBANLNMFCC@ZX_\]UQTÕÑßÞÙØÇÁÁÍÁÌÎÁÂÇÁÁØßÜßÒÐÖTÐUWWRWS]X[[AFCEZE[[]YZZZ]X\PWÑÑÒÒÜÛÞØÞÄÀÅÆÅÁÇÚÞÓÒTVPSÕQRSPQSPRTQRQYR]XYE__^X\V__]PWPTUÔÔTÑÔÑÝÑÑÐÐ×ÖÖÖÓÔ××ÑÒÐÒÐÜßÝÐ×ÐÓÐÝÜØØÞÝÒÓTTPPQ]R^^ZGAL@BLBB[^^^]TTTW×ÜÝÞÙÅÀÆÆÆÀÁÇÆÇÆÄÚØÝØÜÐÐÐÐUW_]REABMNINuKuKHMEDYY\WWÕ×ÝØÙÚÚÆÌÂÀÁÌÃÀÁÚÇÄÄÛÓÓ×UVQUTVSÕÕQS^RRXGAXX[DFEDGFE_^\QÑÒÒÜÒÚÚÛÛÙÄÇÛÙÙÅÅØÜßÝÑÖVPSRPSVTVVWÕVRSPVPSYXPRYZ^\XXZYY]TWÔÐÖ××Ó×Ó××ÜÐÓÖÐÑÞÕÔÐÓÓ×ÖÐÝÐÐÐØßÞÚÀÄÄÃØÙßÜQ^S]^DDZFBLOBL@G[RPQSÕU×Ô×ßÓÞÞØÃÁÇÅÅÇÆÚØÅÆÛÙßÝÖÜÙÃÉÅPÝ_YTN@MLANwNL[HuLAAR_^ÖRÓTØÜSÆÀÆÚÆßÜÝÒÂÐÐÚÂÜÜÐßß×VVØVÐÝSÕÞWYUP[GC_ÔE@]XBX@UÞQVÁÁÅÁÚÍÌÜÞÇÚÍÛÁÍÌÙÆÛÒÅÔQÄÒQTXV^\_ßÖRÃÔWQSÑZ_^_JVZp\q[tFÖPU\Q^ÜÖVÝ[ÕØTTQÙWÕQTUUUØÑÖÚßWÚÅSØÇËÙÄõÊßÅôÞUÕÒ×Õ\]IACtDrB[^wAVCGRÔwÓÀEÑÃÛÀ
\ No newline at end of file
diff --git a/codec2/hidl/1.0/mts/res/bbb_g711mulaw_1ch_8khz.info b/codec2/hidl/1.0/mts/res/bbb_g711mulaw_1ch_8khz.info
deleted file mode 100644
index f00b9cd..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_g711mulaw_1ch_8khz.info
+++ /dev/null
@@ -1,10 +0,0 @@
-8192 1 0
-8192 1 1024000
-8192 1 2048000
-8192 1 3072000
-8192 1 4096000
-8192 1 5120000
-8192 1 6144000
-8192 1 7168000
-8192 1 8192000
-5462 1 9216000
diff --git a/codec2/hidl/1.0/mts/res/bbb_g711mulaw_1ch_8khz.raw b/codec2/hidl/1.0/mts/res/bbb_g711mulaw_1ch_8khz.raw
deleted file mode 100644
index f38f1ca..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_g711mulaw_1ch_8khz.raw
+++ /dev/null
@@ -1 +0,0 @@
-?CK^åæêý\X`ZTjòþ]X[PS\[koãÜåÙÚÚÜê]TZ`p|ÕÏåèäø{çÏÄÄÇÑþ^MFSëÐÅÁÀÉãiUKKfÚÍÈÈÈÍäl^^\QMhv]ëÙ×ÕtXOBEV}ÌÅÌÐîH@<=JXÏÀÃÊËá[KEQZMYiiìmjéåûÞÞéãjõ÷OMQKWpéÏÍÑÉÏ}eMUdR^àÛÝôkìk[àʾÊÜ\?9:?YÏÀ¹¼ËåYFAE_ÏÌÊÄÌêaMQOFVáÍÇËÉÀÎhWNO[`ÚÑÛÐÚoWKI[lïÎÈÇÍàãwMR}â|^V]VHLWóÙãØÌê_`c\TMXZOUKJSU^ý`WpîîdWîß]]_WYhàÎËÍÎÚêUAIêÎÇÀ¿ÅÓhMFJîÌÀ¼¾ÀÃÏkOLOR\ÙËÌÀ¼¿ÆêUNJJJOæÒêt_LJN^çßØ×÷bWHCMbÝÍÑÜçlSFDaÖÍËÏïcJAEFLhßÌÍwc]TRRLWmêälféø]VIPôØÎÇËÖpQQHCVÖŽÅÏÚfLB?Lî̼»¾¿ÂÓþVU`féØÖßÝæØ×îiåásQNpòîÞÞ}îryütþÝÝÝÿXdgxÙÏßoW\TGK~ÌÄËäû]H?BGPYáÎÝqc`XOGILOPNJKJR_LJRòÛçþØÙô_QKKKdËÁ¼ºº¼É`S^µ¸¾ÅüOR[ÚÌÛÖÒðçéâ×r[nWJKNjæbU\Yiz_ljUXTIRgßÈÏ×ÑqSRHMT^ÍÁÈËØmZ?9?LêÉÊÎßWJC?Ha÷ÕÕq^UMQOGKHSëíãËÌËÜOMQaÒÌÍÆÑê}TQ]ùÌÂÀ¾ÆÊÉÏéluæØÙàã×ÓÕêôßÞÞáfOKJUfêÔÐÊÁËålhí{_XS^òjeîÝÝzOF?E_íÐÍá^LA<8>Uøéî_X^QLGMZeuÞÓÒÏÕsXPMbßÌÉÌÑÎàþó[uÖØÞäÙÈÑóoOGLVßÅÅÃÉÖnLIgÜÎÊÏóegl}äȽ¾ËÛh[TLRzåÎÆ¿¼ÇÒÕuNIG]ßÕÏæ\UG@@=FYøðylûRB?>>?IbßáínqLDBSçÙÑÎÜcZPTTjÒËÛÝáÒËÒÌÌ×ûfgåþÞÉÅÈÜd`f]÷øãàèïîq~ñïn[[`nmo~lbtéÏÎßÜßfSJ]Íž»¾ÃË×ÎÑ×ÌËÊÌÐÉÂÈÎéP@=FhÝÎÄÂÖK;69<?KUOLC=:6:CIWzýödRI><AMpâÙÑÒÙ]LMVfïâÜúYZ\mããÙËÎÖåîéyXRJM}ÔÍÎÎËÍu\\rØȾ¼ÃàbUPSüͽ½ÄÇÌÌÇÊÙáþÖÌÉÀ¼¾ÃÎàØâèæçrjVpáîîhWSNGFDN^[UOC>@HWl~bNA?<=G]aSJLmçÜßýzwTcúìßÝÞlP^ä÷èØ×ÓÐÕÙhaöÕÊÍÚÛÏà^XnúzçÎÉÈÆÍeIEFfÍ¿º¹º¾ÒÜãcóÌÅÀÆÈÄÙtrsßØutåÞèæàíK@FLRWgWOGB@CERddYLR[J@LNUU\t\QeqbZIL_àéæãÜdRYnÔžÈßkwqíìáÜßàêÜÏÎáÜðSEH]ëÝËÄÅÈÞ_RVT\hæåÜÌÈÌÍÌ×ðÛÇÃÀ½¼ÂÓm\mÞÙééàèsêæv]gYMLLOORQICGLPUNN[SB87?EOtØÐÔîe[]lç×ÍÖðÚßuhecøÚÍËßóé]LDANlméÎÍÕfOSFARi}âìÚÇÉËÎzúåæĽ¼¶¸ÁÎáÜÊÍËÁÌÏÓùãßûìÕÝîYNfk]p^YcSVcUOPC?>>RbYn^NONZnUJMJP\]ÙÎàvc^jøØÏÔÛäiaXK]ëØÏÕåôd[÷ùbpî|û{åØÖuOKWW_ØÓÐËÈÅÉëbVU]{ÜÍÌÍÓÜ×ãßÍÒæÐÍÐÛßø{úïÕÏÊÎÜòhOMVlí~÷éi\pWQ_yzÝñid[cPHHFFjÖÍÏäñtMIXWöÑÝàÞWGJLJMMQT\ñ~SD?@K_ÓÉÝÿûW_YDJt~âÕäèâÐÿÇÎâèÕÍÇÇÏÏÉÎÆÄËÈÇÝßÖö_oçÏÍÚÖÜÐÕ÷íá^ùÝéØiIOTHPRKJ\lèð^\]aURRP?IYWZ\RçêL_WJUjlÐØsWOPMYßÒÑÅÓtL@AUkÝÊÒæçÜÝÐìYXó|~ÖÎÕåödk\VaÕÕØÞg]nðÕÈÍÍÊÇÓÜÝjZçßáÑÖÒÇÈÙlOO[ÞŽ½ËdTRM_vfÞÏéêìQJMQ\`YUR[`Z`SHT]Rkj`ÚøPUH?Mc|ôh`_cîxlßj[xdYhUQb^`ø_TêÝ×ÏÞbipÞÐÐÎøféüçÆɽÈÓÝmäËÌÇÐ÷bkèÑËÄÇÔÔÿMHMNgéÙÏÌÙçÝíä}[UdêÍÌØbPXVXúìx×ßt\MJV]]TOX[_QHE?8:=?HMOSQGEEGLqÐËÍÝ]OOPú×ÛßÊÈÎÐÕÓÊÈžÃËÏÊÉÎÖÓÍÇÀþ½ÅÇÈÝðææÖÍÌÍÎâ`TXVOOS]nìÛÔqKKTZvìíØÏÙösYUmÛàaUMKMNNVMMSNKNMRUHDFKD@INIHF>>DIPSKUðÐÈÉØèçåÔÌÍÓËÁÂÈÉÉÇÀ¾¾¿ÁÇÄÀÃÊÏÐÍËÉÆÂÇÏÑå_SRMMTWefRIIPQQ]fîÛÎÍÞRDIMPYd{ßÚßçkPU_eafõsfc^XRQ[ìßèéiULCBEA=@HIFA>;;>@IKLVmÿsf\_÷ÓÆÁÄÅ¿º»º¸¸¶¶µµ´·¹¹»ÀÇËËÈÇÉÎÝ[KKV]ìÞïøûpdRGHLPU[^ûáØØãtSUzìþíwg|òìÛíb^UQOOLLJJIGFFNmmfgRKJHJRHDFBBA>?ADKRUV`ráîììl÷ÞÕÏÌÕÓÉËÎÌÌÄ¿»¸¹¼½ÂÀÀ¿½¾»º¼¾ÌéüçæáÙÜÕ×ÑÏîZSVnßÕ×ÏÓßß|x_U]m_Z\RNMLKEACDKLHD>:9>BGJLNJDA>=AP_rwgj÷ïþjbe{ÔÌÍØääÞæàÔÓÖÔÕÛÝêõîÙÜØÒÒÒÑÊÉÍØÞÝÙÒÊÇÇÆÁ¿¾ÂÐÏÉÅÊÍÍÍÍÈÁÃËÕÓËÊÌËÓÕÛÞà}SE@>>@EC?>?@>9:>AB?>;;=CR^W`r{úmUNLSkúípnöxukWV_îÏËØäÛÒÎÌÉËÏÐÎÄÀÇÐæî÷sôûê×ÍËÐ{ZehÝÊÈÅÊÏÎÚóedéÙÕÍÉÍÑÕÒÐÙ×ÖÎÄÃÀÆÐÔÜÜâlZMKNOQUKHRNVULPKDA=<869<?ECFIEEFCFIYûìàcZfWhíflòäÍËÓÖÚÕØÙÒëtÜÐÉÆÎÔÔÖÐÊÈËÐÌÏÎËÖÚÒ×ÎÃÄÄÂÀ¾ÅÕfNnáÖÅÌÝÝõzä{öÒÌÇÆÇÉÛÜçijWLRWV_[I?=BKZTGHB<><<@EOOMIADJGIJAEPRdbSSLLLNRTxÕÌÈÍézêÞÑÌÌÐÞÖÕØÒëæÕÎÁ¾ÇÑ×ÛÜÛÙÜÖÉÆÇÁÎÞÐÎÎÓÚÜÝ×ÜáÙÞçÓÍÍËÓØÎÌÅÀÇ×mw~iörVWTOZZPQYdXI?:<<;?<78:=CGIIJLFGJFWãâÝêwö÷tøü^\vÞÑÎÙl][VnçÜÞßÚêxkdüÓÊÄÇÒÏËËÆÊÐËÊÆÅÁÀÈÊÊÎ×ßåáÒÎÊÍÙà`höÚÐÛÐÎÏÊÓ÷hqèìõl]JHEDNJJOSe[KIGHIIHIJMOP\PLU[ol^VLX\TWYUNKN]YUY]|÷^QL]ìæÕÙùipìÑËÐÚÛÒÔàÝÙÎÆÉÊÌÒÐÒÌÀ¼¾ÉÇÈËÌÎÓξ¾¼»½ÀÌÊÉËÍÝÚÚàåYHFRQRZKE<<=@I??GLWJOO[fOLABFL[iæ[UWIRMPXlÝèìaPGH^ùØïjüXfXNRVtuÜß`WShnäßÜÍÏÉÉÌÇÍÆÇÇÅËÊÌÊÆÀÄÈÅËÈÊÏÊÓÏÎÎÍârlÛÇÃÄÉÐ}QPRmdb{m]B:7<KR``VVNLILPNRVcZLKMre[^QVOORcp_ñãÚå_WOøÝÚßhiQLIMd\gnïãhVNúÛÜÓæÞ|]}òÎÏÖÏÏÍÞáëÑÇÇÃËÉÉ×ÙÝÊÅÇÆÈÄÌÚéÙÅÀ¾ÇÌÔzùxíéùòpðjNE@EHMIL[QOLXbWRLVZLEAFNZOKNGGJRgwáûmjTQNlÖÍÏwcUIIQ~ñõfbø[TNZßÛÔÛàÝëèâÑÍÊÇËÉÌÌÐØÉÇÂÂÈÈÍËÌÅÂÊÊÎÎÖänbÕÏÑÏêøbiipÙâååuYSL@IU_átZQNOUïýedTKHHAKcZ_VF@?ABTa]j[TUXO[ÞÙÔØt]]`S]bUoìîñýUMY^ÛÇÊÍÔátè×åÚÓ×ÓÑÝsÔÊÆ¿ÆÏÎÊËÆ¿ÆÅÄÎ×ÛØãÏÉÑÌÝXPPOYÝÙÚÓóe_VHIYWïâa`XLFPZUþõknnWLRNXeNLKIFFJGOa\ZVNGZpöÙscXOKJ`[_bSQNNGPmâÈÊÓÙ×ÒÒÃÂÅÄÍÒÞßýïÏËÅÈÅ¿¿¾Ä¿¿ÆÃÇÈÎÔæqßØÎÐèhTSMTryæõ}_PIAM_âÕÛãg_STcb_`]]WWNPbrýa_VTLDGHHHLNUVLMeõåõdTHFFO]VUfj_[[[áÌÇÁÇÑáà}øÖÎÏÏÓàó`OaÝÚÎÄ¿ÅÅÉËÅÉËÇÀÂÇÆÔÚÎÐÒè_IJNL`òtfíÜçæ\Xéððþè`R[Qc}üëâÙ_WPHSTe{ù`ILCCHIMMda[RFM\þâàæZ_XZhVOLW]OMFN[`éãÓåáÙÝÎÎÎÌÍË×ândìèÏÏËÌÎÊÎÆÃÃÆÿÁÊÔåÜà×ÞmWDKJQZlïçÙÓÙýlòÓÊÌ×ÏïeOOZeo[ugODBAGTiatXMLLNPhVeôúZOKM`ø\bhUYYn\q[`îpWMSWlÖÛæåe__ïñÌÄÎÍÝû_^tàÇÄÌËÛqcÝÑÎÅÌÃÃÌÜã×ÓÆÁÍÓ{TLQ]WßÝÛÞx\Vþì×ÇÎØëRHH]oáÚÝßnTL[^lãçÿ^KGIWZcñö{VG>?AMxôlWJEH\ðâÝßì\J@J[öÒÕÔêRDCVäÍÃÄÄÒò`qðæÈ¿¿È×úhçÒȾ¾»»ÂÒçßÛËÈÌ×iMEJXgáÚÞä[PP_úÚÈÈÕwSLKYëÙÚ_OFCACNdÖÎéYH?=BUgéú÷lOF>HYéÏÝnVRURëÐÅÆÐÚçêenæÙÎÙmVNLH_ÚÕÖÝßìò÷è×ÎÇÆÖjXbblØÐÊÍÕÒÒÙëÝÉÈËíTONQVÜÊËÔçäï|îæÐÓÏÔcTOW\êÖÜì\^_[\Yç×ÝîNJEDFMae`\YRJHN\^UbSKGK\yêåèq``nøóçéòî^QMO\ëÏÒàvktnsÙÈÄÆÇÍác_äÔÉÊÉÊÔÛØÕÏÉÅÈÐÝù_NSWéÓÝáìÜÚÝØÏÌÖæßæaMVYgjMONPQPadõão`UMFMQTïdSMKQLWfê×fZcXKK_r×ÚúùamîÏÊÒËÖêhOKKYY{ácXR^nþÙÔÅÊàïmb`ðÞÖÍÔßøøåÔÌÎËËÖßñð|èÞÕÉÍábnâÖÐÍÇÇÒëkl[aîÜÒâhOILXëÖÊË×gGAAFTWb]NB=DO`ôññfOKNZS_pòð^OGMhî×ÙáÜæi[c`öénv_VKOúÛÊÅÅÇÑëøÛÔÐÆÅÃÊÞj^íÚÈÂÈËÐál`edéààëbPJU÷ÐÉÍÏÛ~_]üýßÝñùUJHMfçÑÕÝø^YR[dksZVMEACNdã}ee`kméàèäîégONPgìÒËÌÐáÿfdmöäxeTHDCMýÎÊÌÕìg[]õßÛÞ×á[NNdòÕËËËÒ×ÍÏÍÊÈÊÎÔÞäèáÔËÎä~þeg÷ÝÍÍÚîõZLMQkß×ÙÙèYW_U\baSMD;<?CTþbX]TOVSoÞë}yiOMY_ô×ß÷ð[OmîàÒËÔöiOPYVúÑÐÞàÝÜÍÌÌÅÃÍÛÙù]qvðÓÏÛÙÔáÚÏÒÍÌÐßôfWa]YîØú\YTZ~èÔÉÍíwbMHKUðØäÜØéoõõnûüZSH??ABCV\RY]läÚÒËË×ÜÞâäõþûàêce`Zhåáìëm\PMMOOM^÷xgdnåçîÜÎÏßþp_VRV|Ö×ÜÏÌÎÍËÅÅÊÏÖÔÏÓÙßàÙßn_izíçÛÛÜîbûàëqnððtcjåíðãØÞu^OLIEECDCNWKNU\yéîìâp[dd]OQ]fmZ^peiîèzðtU\s|éèéÙÓØÝÐÍÊÉÉÄÆËÙæØöXX]pëofæàãÐÎÎÏÝÛÙ×Þìío^VUTXa\zêïÞÚïjïøjssóìyáæün÷Þãðb\WOKGLQMU_eaZ_îòcmñíéáÞàýj]WVUfùðäçï{ú\Vbb\Z]^YbíäßåÚÒÐËÍÕñéâ^XWnëìôþÞÛÖÐÑÍÒÓØÑËÕÛÖÓålmsøóg~yùðbbZ{æùêëè~éàzÞêêæïí_WOPOFILNNMPLNTVego÷îînçéos^VOQPVshùðÞÜyh`zßÞÝØÕÓÕ×âÖÍÎËÌÏ×Üâüù}÷èéßýþ~lukbhíàãèõàÜpe^Y_\^YT[bcpæíßßãÐÍÔØÛàéõpêÖÔâî}]NIKMY[Z`_WY^\\mqñðyör{ëßàøqkohYSPg`_e]a^`gmqhsecntñàÕØÕÔÞàírþáÖÙá|}áÞæßÒÍËÉÏÖÒÖÒÌÎÛèîr^XVarijôunòôóìÝÞßèh^søóêzjzjYVOKOVSPSRORRMLMUhbX\~îðÜÛßëo`acdmsqg_^nêëñâÕÖÚÛäÙÎÉÇËÎÎÐàzhelúìq^Ybt}íçÝ×Õ×ßìêïñïåÛÝçycUW]VZ\gd`víêæÚÐÒÜïçÜÓÔßé}rZVTSZag_XSQRU\dd~îôpYXjøæéÞÖí^Z_b_cmrYVVSOLNYpyêßßÜÙÖßçßááæú{èàéææëùqiæçôÞÒÏÕÏÎÐÏËÈÊÊÓãzWZ_eböñuökjmwîçØÖàííåÜãlèÞi[aWKIGKLKOOUXZ[Z[^VR\YR`òèÛÔÛü`[amlyããæõk[UW`wèÜÚÕÒ×ÓÑÔÎÍÒÔÓßë}{~jc^XZmðêïíïpfrîìä×ÓÕÔÝê{hkhu}ññèô`[Y^úßÑÉËÏÒÔØÜîêàáêq]QKHKLOQUV`[Xc\\ailyïÝÕÜënbZPR_rrümakWTVPNZ÷ÞÙãâáåæßáÝÖÔÓï^e\jîèÝÖÕÝâîûim{åßÝÓÒÏÕ×ÎÔÙáùu~êíéï~üvcbltäÝÛæõñ{æÛßòèÞßlWPMHDHLMNUYTTQRadu~êÜâyþðzçðpe_vözhùìogYdmðÔÐÑÑÝîÛåöáÝÕÏÓßåwimbltóîmaiaYfbnàèäÞãlmuõÝô|øâçûíî÷õåùkü|ëÚ×ÖÕâÛÐÔÒ×ÖÖÜæ`LLROR_lo^UOUSXbcjlú~b_YZnövh^Zec_bfk{ós_`wpcðèzõà×ÔÜàØßåçëòêíóãáØâcúovîðåêêûâùsøuâØÔØßý÷å|áí|åêíôÿkêæÝÚáÝßÞèîvþî]`XUSNMMSMSMGHHOX]eùöìÝéÜáé×Ñßüg[rhivulon][W\oøÞÞØÏÍÑÏÎÚÓÖàîwisn]tëïþaZVZtê}îïuåäñøûøßßk^YZvíðèØÍÍÝèóoñëàØÖÖÐÕßÜßëåñb^]XVOPXZZZSPRZeZRX_`hddqêâØàcZQS\_eyæãõk``fôëôéßçðóïÝÝçÖÏÔØÚãõsoçÙÝäpwÜæëðgkùúèî÷ÙÑàåü_ck~ëíâÖßîì]Ta[gêÜÏÐêìåëÝÜèäõq}WMQKKSKIKKQ\UXQMaôîâßØÍÔÜÕòel\bò÷äÜq`_Zbp|éâÜÕçëÙÛÓÌ×àÕÖ×ÚgX\[hòönjxÿmej[bjY]êÜÔÏìrlXXcnúÛÕÛæèáäÜåîçÓÎÏÔwmttêÜÝñà÷[\\X[j^YOU^]YSPOSS[acwths{g÷ïbakâÑØõcWOY[låçØÒètùïØÑÐÎÏËÉÍÞæýqóôààtlxYWvz~øh]fâÔÕåçè{eb|êèÛÒï}íkyúk_çÚÚÙì~ngkðÜÝòldOLUSZ\TV\RNQOMPXU\_loíáóéÞÛÞíooáàÝÙïba\UbzèÞÜÛèîéàÞÖÔÎÇÊÏÍØýòueijmudSUZ`kib]^xéõÞÜøåðpe^kâÞòÜÚäééáÝÕËÊÕÖÝib_ekrüú_NTTPXjwkýåíYVZMNQTPRW^]Xce]bxxpðÛÓÛØÛë~jf^ltãå}ôêþlìÙÕÎÉÊÒÚäìåÝÜÚÙÝÛíd]jb\y|b_rðõîîèþmwva_{íy~åëìßÜÝÚÚêôrZ[ZfüçæÜÔánZ][Xdzvqm_\MEILMQYY\Zamm~íæåÝáßÜæÞõlk_X\÷íáßÜãqwêâêÔÍÎÒÛÐÜûõáâèØÜÝõöm^hnÿüßâüjcn\X]habðâëo~ùrzåÚÞßÓÌÔÚÚém]fq{äÔÜöÿ_TR_gaþæöZY^PIITSN\~kUTTXZ]^]o÷õü{yh_eþseèÕÝçãäèîãÞÞÛÍÉÍÑÒÐÝåØÖØÍÍØÙìûþxóÿ}øãöf[OOMRhelÞÔÚæyñäþñæãàØ×Öäa_YV[Y_ðèþpjþþjsm^{åîîmXTMGMNWgfe^WTZho^cÜÙÜÚép~`b~hxëéíøîàßÛÜêá×ÓÌÎÚßÛæßÛáÖÏÖæíéühujVZzæãt^YOJSX[ñÙÙãðõüëÝézáÎÌÓÖ×ãofúlfþíå~påæõpYSUgzugbZSMIGJRY]TQa[X\XU]ßØÛêíjZUZ]\ùÙØõëÑ×ÚåçñëÙãØÖÕÔÓÕÝéíÏÉÍÔÖÊÍÑásgcçñýk[XNEFHMgáÙÙÚÕÛàïüyáÏÕÞÞÛínUSRPn~fdÿÛàìrbUYhdh`Y]aODBFQVS^tyiieacðØÕÐÓÞïoYPThÝÚÞÝÛÕÚÝsewë×Û×ÎÍÎÓÞzihà×ÚÓÖÍÍÐàukgýikûl[ULGKOnùëÓØÙëònijèÏÚØÓÔÙèmY^Xdûqíïßßìk]XVd]`kVVUNKLLYdY`e[RPOWYhÝàÔÏägXTNNO÷ÙåÛ×Ó×Ûìtt~Û×ÎÈËËÍ×ëø|ÛÏÍÈÊÎÏÏÙþsìÛçéðbWNIHLL]xzæèâÞÜÝåãÝÐÑØå{íeSLHJU_fðíÜÝäü]cd|öñþ`]NJEAIZ_dm[[Y\Z[ïÜÏÓÔ×Þíp]PQRgséáõÝÕÚwhÿïÜ×ÌÈÉÈËÚn__~âØÏÓÒÒÜç|ðÙÓßéçe]XMJLR`wnvgoéêðïÚÐÖàãÞíÝÜv_[\cr~àÛÚÙépZ]noywuf]MBBEJYlmtcXVSNSmåãèíëôud]^^múüq{ýqxói_gkwêÖÊÄÃÃÉÖàÝÝØÎÉÈÉÌÑæýääçêvpeZUONS[[gk_aluêëàÐÎÖÜëõ~klz^[XUcfxåßåÝü]e]W^[ho]TMHKNOe|uðyjpXYûô~èôomcii\i~k÷ëüì÷óÞùewjlãßÓÇÅÄÇÏÖáóßÖÕÍÌÐØzpêqwòmitga]Xaf^ce[Z`}ÞÚÒÌÑÔ×ßèïzxx]_[Xglþã×ÛæñýtXWfuî÷s[KGIJHP[[Z]_\X[bmkhmb]dlk{äsnþkhk{øøñxk]_|ÞÍÈ¿ÂÉÊÎåÝÕÏÇÅÅÅËÙåîyigïìöìtce_Vmp]aXTeoûßÝãéêßçéßýlr^OXW\~víÙêifXTY[zöêpQNMGHTS\geoÿtqùurëï~úïõùêîúzqamngvòûrt_ZfòçÑÉÉÆÍÏÜçÜÔÊÌÈÇÎÛðò_mjfggìz}oùînxrfQOZZkèßÝáæóìâÞÔ×Ýâxe^o{pæáêaTPOQRfpìÝàgQYSOQZaSW^ZXTYheci[S^]Q^øyliskmýçâæíqn\bøyÓÁÂÆËÌÏÌÎÎÆÄÄÇÉÏßàïppk_aü}z}xåÝòsm^X`]Ulí|^_^\{çèóõëf]YcükâÙçn[[OVYWlçâaVVQOMQY`gbgbðîøãíçtfmgk[_szbV\bfõíåæéö`dnðÞÒÇÉÌÌÒÚåÙ×ÒÎÌÎßÞåèö|öyìçðmaïíÿëîíu_UQY`iïéìööìÝØÛ×Üß}aXVîàíçæÜ{aVVrfsôìfTRMOOLPX\WWVYgd``jÿrdTUg]UY^VMX[ktíØæïegdîÎÌÊÈÄÄÉÊÌÉÈÃÅÍÍÐÛîêçìðàÝãÞáïàÚãæÿõóWMMVZSUUVX_húáâÚæhm`RUqéúrøw_\Y[p÷ýö_\XILWZVWb]ZYenòÞêäíëòa_^bebs]XXXhuçãðtb^QXýáÑÏËÇÇÇÉÅÇÆÆËÎâïick[kóüøíßöìÛÕÕÛÜçòn__YX[UVQWXjéÚÏÑÙçêý^_hkývsy{i]`ôðllcYSQUXV[TOWZXWbîðft}_dc^[WWVSUUTU`úÞßóíjbecyáÔÔÑËÆÅÅÿÂÉÇÒéÜÜèýñïzîßÙÚÛÐÎÎÚáðbofUPUPIKHMW\ñßÙàìæe^\X\^i`pðõéöríæýchUP[PUVQKLWT]mîÞÙÜñæîxãùx{[POQMP]xããßûl_PYdcñÝßØÏÎÍÆÃÃÄÃÈÌÑâÞáòêý\[õú|ÞÓÏÏÊÏØÙòýõg`]MEKGCPeâØÑÑÝÔìxðøìèï[nù\b~íóêêfl\PUVUTMGJSII_w{æÜþþöqfko^XLHKHHRjryàvhe]^säØÍÎÍÈÇÇÇÁ¿À¾¿ÈËÌÑØÓÚçíjïî|çÖÌÌÇËÔÚåvZ]_MIC@@AGQqöèÙééýinnúwp]W[RW^rîñÙébgXU[\RNPILJJVaûéÕÚáÛâñüubW_MFLKQ`zmèÝpóy^ôÞÞÛÏÕÝÍËÊÆÁÁÁ¾ÈÎÌÜçÝæyçï\`e^÷ÑËÊÆÉÐÓçhuePQQD@HJNdopäÝâäæýÝÖîæßpZ_adðâçãì^VXOOUMINKBDGIX{{äÝåú{tgf\UXOCBJJO_løâèüäêáÑÏÒÒËÏÏÇÆ¿¼»½¾ÂËÌÎÑÎÎÚâÞ÷_ejøÒÎÐÍÎßê}fxq^OIGA@BENUW`}leêïßÕâs}û`[asæÞàðvXMPOO`bPOOHFMPjäÝÝÞæigtpêßþVQOIIJMZelóèþïßÞÓÍÏÛØÏÑÏËÆÁ¾¿ÊÌÐÞÛ××ÑÖìszgWfáÓÏÎÏÔÜéyøäÝÛnSQMFFJMYm}òêéóÝÑÑÛÝäüêwiûôèäeYSTMLMORNKGFFBLalíþqkf^[aýç|]SMLBGHK\igqäêþÞÓÒÎÏËÈÇÈÅÀ¾»»ÂÅÇËÑÓÐØÚÙßæèû÷ØÒÏÊÔÞâñi`kù{fQJCA??DJgôaëâë{äÚæÜèíwa^X_þêéa]e^RPSRTTMIIMPVtçÞñðújlmèÛÞækSLIEHN_ôêzzîèàáÔÏÑËÏÚÜ×ÎÏÅÀÂÇËÌÖÝêÞÛéßófóèÝØÊÇËÍÛïvqþxêùfTFFCCK\êâÚìpÞàìßÐÑßæeZZVtíÞä~iRVLFLUQEFA=FGLgíòòòUR_eêÙÛzXODCEI^ì÷mî]ZÝÛ×ÊÅÆÉÎÜÞÐÊÀ»¼½¿ËÜÕÏÜÏÉÑõidfÝÐÌÂÂÆËê[Zff|ßþQE?=>DLpãsiVM\ãÙÔÐÑß_MKMRyãÖç|jJJMSYeoOD>=FPòÕÐÏÓßXP`çÒÒÖôXLCDGT÷ççcYNKgÞÉÆÉÆÏæemÜÊ¿¾¿ÆÍÜ_pÝÏÊÐÙtUR]êÑ¿¾¿ÃÌÝ_V}âÖÚè_LEBIN~ÖØä`\Z]ëÙËËÙðYNLLZïÛÔÝbWQHLWbnOB;9=BI`ÙÑØnY^SRïÙ×åsSGGHJ]àçüWIR_kåÏÅÆËØå×ÎÌÆ»½¾ÀÏÔÔÔÓÈÃÍÝhR]ßÕÔÀ½¾ÅÞóéäñßÖòcTD>AJK`ða^LIS`|ðÔ×éfMJQkcíàyô]MMUbvòfOI?>DTdþÓÔÕîQWtxçÔ×õtUIHOfõÜp`WFKZyãÏÍØØþeýÙÍËÁÃÊÌÙãßØÑÇÄåg\U]qÐÉ¿¿ÊËÕÞßÔÒÒÍé`SNKG[ÿÞ×c\ZVV`Ü×ÌÖubXWPùß÷âoZSQOSthwVD?;>>GZ_ñþ`[\^kÛàäÜÿRDKONqîåðYMKT^äÚÑÉÐÝußÒÏÃÂÀ¿ÀÏÜÏÑÉÆÆÄÏëY]÷çÎÆÁÆÍßêÙÝÎÌÚÙçYD?FHSfqaRJ?DJUàß×à`QMXWøØæèv_KIPVãîb_PG=@FQæáæèùebíðÎÊßØò]IJTZßáþõoQCMYïÍÒÌÒäxvÜØÊÃÄÇÎÖtzÝÙÆÈÈÍéfUaõÔÄÂÇÎÐÖÜÎÊÃÂÉÚ]UIFSeéíbRMHDM]éÖÙßj_[TjæÞØäWQQFK[kòl]KC@>DNWZYOOQN]ÿðÝÛábYVLOcpwz`OLJOjëÎËÍÏÐÏÔÍÆÃÃÂÈÓÎÖâÔÏÉÇÄËÞâyöÙÌÌÊÉÑÎÔÓÆÄÃÆÎÝ^WMGLWSNMD?@AKXhëíðl^^]yÞÞ{mgQSWWzåÞçjRDFHIZd\[aVUqòÜÑÐØív]\\Rfl_YSIEMS`ÝÔÓÚØ×ÛÏÍÊÅÊÔØßùêçîÖÏÎÔÝçôÞàÚÏÒÔÐÖØÏÊÇÅÁÅÎÕçk^WQZYSMJHJNWa~ïîêyejyÿîãüz}ic^_^hn]PICBEFIRRQXTU`xúøçéubWSTPT[XURQOU\rê×ÏÑÑÕÌÊÈÅÆÄÈÈÈÏÕÕÒÕÕÓÞåÞÜÚ×ÒÑÍÎÎÏÏÍÌÇÃÈËÏÜân^YUOLKCCB@EGMNOY]\bpvïöq}úüùzktg[SXSMNNNNMQ]`\^fjøëéñìèkj^XZ]ZRZWNTSWo{åÛÔÞãÖÑËÉÊÌÉÊÐÎÑÖÐÜèþýzkèìäÕÚ×ÎÈÌÎÉÊÅÄÅÉÊÊÛèr^h`PPWPLNNS[Zim~m\joúêëáßÞõlmflaTKIJEHGIPOOOXTOU`bnecyp^Z^Zc^SYSSNKU]oéÝÚÑÐÎËÆÿÀÂÁÇÍÏÔÖÖÖèpyzìëâ×ÒÏÒÎÔÕÒÓËÇÄÊÏÌÛïzd[QOGDA@FGJQZbXY\\jdk÷ì~ëÙîñuiîõp\QQJJLNRWdccXaþréëßåmi\W`_kc]WRROUSjêçèõ}üãÒÌÇÊÇÃÆÊÏÏÛÜáþvr]\]néÛÐÍÊËÍÏÎÎÊÉÈÅÈÏÕÚØÙÙÛkYSKGGMQT]lotlpêÛ×ßíðn`^ZTTXVQSUNIHJHIHKHJIHLV_Xoßêkm`[UXUSLNRMPZéäØÒÓ×ÕÒËÄÀÃÁÀÈÉÎÊËÎ×Ûâþù~ðúéÞØÕÕÙÐÏÏÍÇÈÍÉËÍÏ×ÜßmWVPIJKIJPXXc`bddkfjôøòplh]_^]\]PLQONUWVZ\ZZUUY[ejÿèéëçïèlZTTPLOTYZ{ìÝÛÝÜ×ÐÌÐÑÍÐÐÒÒÜáââýëßìüëêçîjéåÞÛÙÞ×ÑÎÇÁÂÈÈÌÍÒÓáz]WVSU\k^h~õei_gzíqrðùüyq`YQYVVLKJHLMKHJHJNMLSTV[puvsog^^XVSRX^^~åæÞÑÏÛÚØ×ÐËÉÇÄÄÆÅÇÉÏÖÚâ|mrm}éÜÞÛÓÒ×ÓÕÙÐÏÎËÊÎÖÓÒÖÝêú_UTW[Y]VSU[XTZ_W_ów{øteeZQLMQPPOOTNNUSUYWT\^]húvktf^f`\\[]_Y\qrqüü~ààìàÙÚßÒÍÌÊÊÌËÐØÜÛâðîd^dfe÷îåØÓØÓÏÏÎÍÌËËÐÒÕÒ×ØÜæåîuíÞôöûqfg[\]WZhyíÝâíöú[UPJDFEAHLMLOMPVQQYVUTOYVTWf`XYaZ\inôëënyóòçÜÞÝÛÏÈÊÈÄÄÇÉÉÌÓÕÙÝäèéåæïu{çèÛÖÔÏÎÍÎÓ×ÖØÛáÝßéçåèytsþvlZalXXZ_Z\^\^drîçþ{d`\VPLJJLNPLNRTX^_m|ogvo^dcckfXXVTZoáåìñzqóxxz~ëÜÐÓÐÑÍÐÓÖ×Üèäåõ_jxønf^oîâÓÍÈÊÌÎËÎÚÚÙáÚÑÏÒÕÙÙØ×Õàênqüîsed÷÷ismlewx{lbVYXOKIHEFGFGMKNPSY^YV\]SNTU[YWUVVioêíçßûíæìôéäÔÎÍÐÌÉÊÍÊËÏÒÙÐÏÔàãàèþm\aiûÛÔÐÏÉÌÎÌÑÞãíóììõïçÝ×ÞÝßïc^f_[ZU]g_W\m`jixj__`^RPQPKIIJJSUhýftëêaac\VYY\YT[lsóìïõnxùóidnæòÝÛÝÝÝÓÎË×ÔØØÞÝÞÞæõpxkXhf}ïÝÔÍËÌÌËÕÞÖÓÕÔÙÞÜÛÏÎËÓÔÔßææk_jbrõ÷W_ldlé}c`^_]XIKNLKJDCAFLVXUa]Y[XKNNOMQMJO\cÿçþñtÿtåÿwîÝ×ÐÓÙÐÏÏËÂÉÍËÉÌÍÑÝÝÜçøðb[cìÛÖÒÍÌÏÝÛÙõðáÞêßÚßÜÔßÓÑîýþl___[Ze`sjW\oj}îsfbeU]XMNUNLOMKLOPfrlrdXXZVZYUU^WXacaûíu{oikøoyñìðÚ×ÛÒÏÓÒÌÍÏÑÛçÜÞëêïg_aagüqîØÏÒÐÑàÚÙÙ×ÒÛÚÓÒÒÎÕØÐÏÏÓÓáåêéôèycmiczæ{ôðìih[RNJIIICCFKKONU\\V\VJLNNJNMNPRQda]eîyfóîñy|óÙÛÚÔÊËÈÄÂÂÃÄÊÆÎØÜØéñîîlonjÜçàÝÚqpñî÷îóìÔääÛÕèÜ×ÙÞÝæìÚòúørbukd`n]rÝ{éöbT[]URQJOTLQTPO]fqþoV\`WYXTRVVUV[O]mrümfco÷÷ñûxÞÞãÚÓÕ×ÍÊÊÊÑØÖÚéñxf_bibkoîßÛØ×çkjóåîàÝÖÒÒÏÌÍÖÖÎÏÓÐÎÎÑÔÙÝæéâÝõtìêíêèøpVKLOIDHJJIKKQOLPZVQTNNPLKURPUWMQ]^`ilwõwñíëïßÙÐÏÍÑËÅÍÌÉÊÌÈÉËËÎâãßóyvk`~éàßçkwt_X^UVjûáÛßüÛØàíéùÞØÓÏÑÞýÚÝßÜæc|ëíëèg`lWTULCHIPTROY\[dlWR^\lfZMVX]oýVTbdòûknåp÷ìpXmïéÙ×ÙÔÎÖÒÔÛößÙØØàvld\úôn\tüÝÔÝîíþ{}m^U_mßÕÑÚÒÓÒÓÕÙÖÎÏÊÉÌÒÍÍÎÐÎØó÷îöýúkibZMMF@@GKLMNOSQRUMJKPLONKNTQYm[TV^[säÞÝÝíëâïéÚÑÒÈÆÊÉËÔÐÍÓÖÔÜòô|r|ôóæñv÷éèàÙáçó_X]TS]ciìÛáÝãçÞ×ÛÔÖàß×××ÑÖÙÐÒàå÷qmíö÷oYOMGGLMOV]X^ib_kb]]VKLPOWc_cuhjdh^síêää}nù~öéÛàÕÓÔÕÔÚáÜßêîû]WSY\pjgynkêßéÝÙÞôû^W^dcïáæÜ×ÕÚÏËËÉËÍÌÎÒÏÍÍÍÈÉÌÎÓßáâûðûdPLFAADFJLMNLORWTUWTMLHHHJPYe_]]`\k÷àâÜÛäõîëäÝØÍËÊÌÊÌÎÍÍÕÙàügaZWjzþîëppþñîééô|fXTQOT_diwykmñÝÑÐÐÐÑÔ×ÔÐÑÒÌÉÇÊÌÑÙÙÝÜà}_SKHHLLNOOQVSWckg`c]URNMMOTZ_``_^m}îÝâáäîýzëâÞØÓÏÐÑØÜØÛäìr^ZPNSXW`efp|pxéçæïîsg\X\jvîîìâàÝÜÏÌËÊËËÉÍÍÌÊÈÊÉÇÄÈËÍÑÜß÷bTLEBDFIJKHLMNNSY[VPOOKFKJKMPPU[]uæèßÖÚÜÙÙãßÝÒÍÎÏÊÇÉËËËÎ×áâ~dZ]^ZYYWX[]kôòæÞðwhg[RV^efflehuôÚ××Ø×ÔÔÔÎÍËÉËÍÌËÉÉÌÌÍÔè~^PNLJMNMKNPNU[]abYTRPQPNUYTVY[]füãÛÙØÕ×ÜßÛØÚ××ÙÕÕÓÍÒÝÚßøfWONMMNQOKLNOO`zöèóûúb\idb~êæßßÜØÕÕÒÌÌÍÍËÏÍÇÄÃÃÉËÊÍÏÎÏÔÙÜßx[RMLLJLLHJKKNWXYXQMMLIMQSX\YRZZ[réêÜ×Ú×ØÝÙÑÔÔÔÕÔÍÍÌÉÊÎÕ×ìimg\a_YZXTRTUXdmb][XYUOQSTWbbbksðâßÞØ×ÚÛÔÏÎÌÊËÌÍÍÈÉÍÌÈÌÒÛåêz^ZXPLMQOMT`emg`]SNSQPSYbf]]lpvvãØÙÚÒÐÕÐÐÏÎÖßÚÜßÞÚ×ØÙÜñ`[VTQNNPLKKIIMNQXUSTSTVT[_gfag{u}âÜÓÒÏÎÏÐÍËÊÊÉÇÅÇÊÇÈÉÈÉÍÚñosbVTYYPMKKLLNYYPTYTNQSUYWVYYV]kpüØÑÒÐÐÏÉËÎÈÈÊÌÌÎÏÐÍÊÈÍ×ÙÛôhn^[_\[\OOVPOTYUNKJHJKOYYMOYOKKNW[WejftìÞÜÞØÏÐÑÏÍÌÉÉÅÇÑÕØêýgiîì{qtji\]hjlÿuweas}oha`f[]ahúÜÔÒÔØÖÒÙÕÎÊÇÌÍÊÍÐÎÓÙß~qú^SXYZ]VQPNKLNNP_jZPNNPTOYgYVgbYX_rúûuøåÿrçÝØÚÙáæÝØÐËÏÒÏÒÞs_QOX^koY\kf\]nqhf`^a\`yðmnx]TTR_øìÜÎÌÎËËÐÎÈÅÃÄÆÈÄÂÇÄÆÏÒÔáêýl|ãçòûdVQMKMRSSZQLNJGMMLPPNLMLNQONQPRV\d~ÙÝÙÛèâÛçâãçéåßïøhcl~loinqwïäÖÚßèínpouþîêãÛ~b\aer}èÞÔÒÏÌÏÎÎÊÍÎÏÍÍÉÊÈÊÑÜìùZ\auñêñàçýd_gWSRUSTQUZ]S]v^[TSY_]gpkX\^RWZcwêííÞävåêfidfmbUY_XT^XMNMQ\idyäy`}tgÿsyäáíäçwl{k~õûàÖÏÎÉÆÉËÈÌÌÍÓÏËÌÑÌËÓØÛãÝÞá×ÓÑÖÕÕÝßépo_UY\\Yehhi^VSNKNQVYcXUTOMQOMTT]grk÷umbc]V\\bkvnóûp_f[Xfdzéðxò{md{edqoòáówüplfîyöêëÖËÎÑÐÐÖÙÕßÝÛØÎÊÓÜÛÙßâÜèçæèß×êùâáqlql{øòáÔßßØØéêööüwuíÞsbprfpk`]^aôëj]b]POMIHIJQVOOVUQRPRY^bððj`kf__[VW\_}úxxìóïíùqúîåØ×ÚÛØÞÞÞâèÜÚÖÐÐÔÒÏÎËÊÍÓÒÙÕÓÖÜÛêëäétwîóàáâãÝáâî÷`lwmürgxø`lxk\idmðíéÞëabcbPQOQWYUYVLOVRMVUgvqnøtgrk`U\\_]hdøuZ_ngdunöû÷õìh]_ie\_aeu÷}ßâæÛ×æèãÝÙÖÔÔÏÚÝß×Ö×ÒÐ×ÏÎÌÉÍÏÑÎÏÑ×ßêÜßßßèìáÜåéßæíÛàâíqjpk\Z`RNPNQSMJKLKMTLOWY\YONVZVW\Pblmof\gmdfif]}oîæðuónlo~wb}nãÛßãÚãÝÜÜöt÷ÿÚÝèéÜâÜÞãõ÷ðæÔ×ÙÕÑÙÚÞßèãñèØáãÚÛÝÖ×ÙÚÙßÕÎÖØÙäçèùpgkgñíicf[]b[X[VP\VPUWQXXW\_\Zjljjlahgb_[VW_YYUSRXXYSPU[^]dcojmrujcqõìçßÜØÜÛÕÒÖÕÏÍÊÇÉÎÐÙ×ÑÖÞÙÕ×ÏÑÕÖÐÒÍÍ×ÜÙÙàÛÞÜÚÜêäéx~ëòxðnjqc^zöie_TRQMOQNOYVOPRQX]Y_k`coa\fc^llf{n[`peaklgttwñ{eo}`YZWV]\]f^ZcmfoüèäÞçãáéíãÛÞÝÛØÝÕÓÌÉËÊÆÆÉÊÍÍÐÎÓÐÕÝÞÜÜáâáÜçãîáæðçáëýúðùiplèëx{lb\ZZXV`^k^SSTURURPPSNRLKONPSTQOOTW_]cfcdagfabioîkgmköíë÷ütûíëó÷ïéäïéìéâØÐÎÎÍÍÎÍÏÌÍÎÎÉÉËÌÎÐÐÐÕÎÑÚÙÒ×ÞèslupbraX[vuyphflgaxl`drb^\Z\ic_g_X`xxù}}|}f_XSNXnh^Z\Y\TUVSO\`^WRVTRONMNKWdg]ddekn÷èãåÒÎÎÖÖÕÙÛÖ×ÖÒ×ÏËÐ×ÒÒÎÌÌÍÍÎÕÏÏÖÝØÔØÛÛíðìøÝÖÜÚ×ÙÜßãóvpnûÿidbe\WSLLLNWVSXXXQNNLOWjøtklhd\]c_gùæèøy}ml^^\XUY[VQORTVPWYX\wïï}ýëâàèØØÞáØÚ××ÓÌÈÊÍÆÉÌÐÎÒÒÕÒÏÎèlû^ZeûýêçäÞárõæ|üáØØÝÖØÒÕuxéòìÜÞÞßáîÙçYUSOTflfY\U_QKRVOS[UZSVTnWSYb[YXUUSWUfOMOPMW\^[^d^n`nyo_nïëôßÖÒÎÕÓÎÍÓÐËÈÉÁÀÆÆÎÔÎÓÖÍÍÍÍÎÒÓÑ×Üäêôèèúöä{tlX]igjéîïæë{ôm\]e[\}c\[\Vc`_yþbhòu{rfZ^USXTLP\S_eg`h\V\VMRTMQOPPYTVeWUaie÷ïñ|î|ïÞîôãÝßÐÒÓÙÔÛÙÒàÚÎËÏËÍÏÖØÝÖÙìàÔÏÖÏÏÒÙÚáÙØÜÛÔÑÒÌÏÎÕÛëßàôüê÷vöc[USY]VPOVRQ^XTOONRQOOTTZd^]Z[Yem^gmZdcVSNLJMLIJNN\f^[Z[ZuthtðñÕÒØÚÙÚàÏÐÒÑÎÒÈÆËÊÊÎÔÊÑÓÖÞéÙÝèús][òþøîèì×ßóïægvãçÝìààØÙàâÞkuÝôýúfaþgW_YKUXXi[]`dhXg[O^^a]S[`kwiübX_]\TIKLKLLOHHHKPOR]`ihl{[]büäìáØÔÐÍÉÉÍÉÈÄÄÈÈÉÊÉÊÌÑÞßæÛÙ××ÙÞáâêílrv|nu{gjwèÝßâÛ×Ýæáëc\]Y^XOR]TZma^\\[g\XSTLQ^WPYV[o]gýpXkeZTSMSNGDEEDT]ZWVOYZ[YdZYxñêäéëÙÙÒÎÉÍËÃÀÂÈÍÏÌÎÎÐÍÕÍËËÎÛyýñ|ïøûkûøìîybòáÜÔÒ×âÕÓÍÐÚëéÿ{èínhñðÜØð`i_núo\ZdemmVNWTbÿmVXb]^YMIFBHKMHJMJKLA???EJHHSYZYd^akñ×ÊÏÖÌÉÊÊÅÉÊÈ¿¼¾¿¾¾ÀÁÃËÑÖÑÓÍÞåãó_jí~yûãâ×äãäå~íçthrèÝÓÚÛÙÛçÞãòegkktblxkbxùqkjfnriojc__YYYYZdkjpf__\OKHIJIGEIE@CGGLOYh~øìëðóñxúáâÞÒÈÇÀ¾¾¿¿ÂÄÆËÌÊÎÓÍÓßÜÔÜÚçîáÝàØÕÞàêßoiÞíñÏÕÎÅÆÊÄÅÌÐÔÒÛÖäÞÚlVf]Y\U]ioeò|YNNDBAAHIJO`^[Yd[[VRXUOMSOJHMLQPM][Xaûul}qahfvåéèÓÌÏÍÆÆÈÄÇÅÅÇÊÉÈÎÒÖÙ×ÐÛÒÎÓÙÕÛùdbWONMWXZgäÞáÞØáÝßàÔÐÑ×ÐÏÙÝÜßÕÙÚÏÑÛèÞíhbYMMJGJJJMRMMWSLOOSXXPMPOOUVTVPPTRMNNKJJFDHLOPVcêçãÖÒÓÔÖÚÖÒÑÌÈÇÄÀ¿¿ÀÄÇÄÅËÊËÐÒÑÛøygiöögzùoïéòxðïìãìzëåû{ìñàáîçÜÛäÝéêóþd^SSRUVV_]Z`iZXQQNUPNNOPVYTVPPMYOLRTMOOIIIHHTNNZ`[xì{þ{bdälhïëïÐÐÖËÅÈüÂÀ½ÀÉÃÉÔÒÍ×ÕÒÜÏÏÙÞÞûzïgYln\r}gvâêÙÏÓÒÈÍÑÊÐßÓÕëáâmkùYV_QJNLKURHKMEILGJOMO\WO[^UhkPXfZVZOMRJHRXQ[][\aUR\WP]ibìêïàÓÙÚ×ÙÚÏÏÙÐÎÎÓÎÓÙÛÝëÙ×åßÝÞéÜåù÷v_k~uyìïíÐÏÕÌËÔÍÍ×ØÕÛèØ×ÝØÜîÜÜíß×àöíiUZRJPWWUNFEJECKF?EFGKMHHOQOWPO_fvîçí÷ó|xësa~àááíëççãÜÓÜæäÛÜÞééæ×Ø×ÑØÛÔÏÓÖÛÙõìþör[OY^XXZ_Vb^de`\þáØÔÔÐÒÌÏÏÑÖÒÇÆÆÅÂÄÆÄÉËÔz{âúýùèîþlZ[\PQRQQONLNRLPOIPOQPWXQOVPRMIX_ccïéçÛÖáÕÒÒÏÑÓÖÎÏÖÔÓß×ÛÙÒÔÖØÏ×åê÷mv]]ion{ÜÚßÙáëé|ðìôlmõ}yì{ioöõ÷í÷ìØØäÝÜÜÚ×ÓÎÎÎÌÉÌÎÌÏÕÔÍÎÖßãçâõw|dXYfhighcmiXUWY[__^`cuäîóûtjrucZ]a\bfjh`^dljný÷ïèúûvvþu|||åâÞÖØßôñý÷yhnîû{ññÝÞÝÛØÒÑÌÈÊËÐÒÖÚÖÝâàéßÛÞÕÔÓÝðvwotcimrî{êèßçïäÝéßáâæskþáãð`^goa_ee^hvdce`j|_\jÿòÞåèèèþüëûp{WKQNLLLMVTR\dPOVTRSSWgd[_|c~ãííÞÚ×ÐÒãÞØþðàßÞÞÛÒÔÙÞÐÍÛ×ÔÖÒÔÚÛÛßçàçâÓ×ÜàãÚÞænchWS\Ye^\vúlpëÚÛçñqê{mrb[g~êêírøêtkpk\^ZUKKINLGRd[]_\khgLLQY^ZLMRSQNOMWYfçàw{sþnfchëÞÖÏÍÍÊËÍÏØêãÛÛÚßêåéíò~{üvýçÓÐÙÝâßåînf_eùênpúüêúp^cclodYToítWRVgccxßÚÒÑØÜlZ[][høíàÚßêù^UROJLMHHIKPMCDKJKUZ]h^]bZKIKKO[V]èéäØíjò~fsãôãØÜÓÎ×ÝÓÛßÎÌÐÉÆÊÇÆÓÞÝìîÜê~ØÕÙÓÕüot_YfZTiz{úø[PPKMYQ\õucZTPNLLS[\læÚ×ßöè÷ptøu`dníÛøqýlû{ôzìßãáâ`[VKHGEELPWu}\lÿ\^aTQWTUtkXui[c`\néëÜÍÙèÛåóîo~Û×ÕÍÈÏÐÉÊÎÌÙÞÖÖÜÏÌÓÍÑÙàårìÞåýÝîc_[RTPM\Z_mñlûïìwrYOQKLPVQ\^]_gX_sdgõðúízlgaR^]QaïêÚÒÐÐÕØýþi[gmpjôøøçslyswßÙÓÕßÛàoe_prkñèÜÛáÛá|êîspvúæÚáî×ÖæÜÜêçóyÚÖÜÞÎ×åÙÝâãêðÝ×ÚÑÈÖÝÚ|_ZMN`d_üàkoíj[aUiàôiufQPULKOL^ðçæÔÝkhbWUXR`ïûðÞß÷âÛà×ÙÛÍÉÍÌÎÏÕÖÖçíóñåØÚÐÍÍÍÌÓÝíëíäþçÚâØíôðpV`c\bY[cl\furUchúãÞÙ×ÒÝãÿsg÷÷àßÕÏÊÈÌÍÖÙãÙÛÜâãéìn^ZTOOY\üräÛ×ßíühXMTXZW]eð|÷ølfe{ôìoøÝÖÞíáâuy÷êÓ×ÍÿÄÈÉÏÚÚÛØÎÏÌÅÄÊÏÛünë|{ãszÛÙÝÜíVPWSc}nàÎåb\RFEKGLURpÕêëæëíßê~ÝÝ{àÔàÚÛìjíîàÎÍÓÇËÙÐ×}ghROQNI\]Zo`_üy[húwmÖîôÝò^\YSoåàÖÌØÓÊÓÞà}dìÛçÜÍÔÎÍÖÚÚäïÛØÝÓÐÛÑÔâpvjaóàèåø]dcXOSOS]]Wi{lëâí_g[UXWQUQOSWLKVTXh{héßëãÙîo{[U]^XyóíÑÉ×ßÙõcmw\itføkLKLJLXZXíäìØÔñqnngÿxwÙÛÝÓØäßùotÝë~ßßàà{iicüùÛéúìimÿztmqwcsstÿñÛçèáwdWRZVX[V\Q\_QVYZ\_`\X_U\RIFA???@FOVPf]WVW^adtöðýhåðæååâÕÏÎÒÑÑÒÎÚÜêé÷ûijvp`hvmj[hûï~éòwvxw{îøýypilc^evvhZORONMYaf~æàåûeqôôwëôéßÛßÛÛãÞáëðæw~åì^TOMNNMMUOR\`\XUP\^SOMIGGGBBEEJNOU_^üÞÜéîßìÞÝÝßØÖÒÊÊÎÏÎÐÉÊÎÔÖÝçêâøûåöua[RVUdûú^^iee^]Sdc]kÿ^jm{ëpbit`iõ}YfðinúíyòßÑÝáîýíætýæyöëàìèzxöëfkkXZY[S^UXgcUkp`hïòbnYSWYMSNIIOOQb_bêÚéØØÜßØÚÚÓ×ÐÊÍØÎÎ×ÔÎØÕÐÛÛ×Ýïölfjf[h~jþóc]p``yöïèßßÛéxtèìõåãêâçõÞÝãèý_fd[\plh÷qzãï^mmdhqká×çÚÑÒ×ÏÔÝÕß÷äÞööö_Yf\^zèå×ÓêÝßfV_TNNOP[\T]_V\óózØ×ÙÌÐÖÞÝôæßÕÚÏÌÐÌÚ×Ó×õãØÛèåßæÚÝ×ÝçéìÝâóówrîåèðïëöèúo}uóôâÚÜôpúèpkñíðìÛÞÜèðîïwïçñéææòtd^amoÞÙÒÎËÊÊËÛæëmiøòïóíìòõu|ùðàÕÝòón_UXLNPOZf_\vâÝÏÔÕÙÎãÚåÝï×ÜÞØ×ÖÔÏéÚÛæïÞæèãÞÚÓíxèÎeÞÖêÒÙûguRRZdltlñáôl÷ïy~åàêæàÞëóâÜíñÞ×ÕÖÒÖÛáìñél_gk|þn[mînáÖÙÑËÈËÓ×ÚÞíëØæ_læðìîòìäéèÞr]_XZuj[U_^gýZQV[_ggrqikÛÓêrïïäÖÔÏÓÜÝÛämqnmàÖØÞÛáÜÓáøótøá÷_\SKT^XUYYanotðta|zkýêûæÜÞÜØÜëàãâÚêòæt]^eWXjgkk[X]c`øèòÞã{õì÷þ|öçÜÝ×ÒÜãçóó|ZTT[]VWZ\XQWZ[l~ê÷{mUZ^ZcZ^öæèáÛêgljiëq[R^g`\]iìõüéd\dlîvkZOWZ_[SU[i|åÞáèèåßÝõm{éÙ×ÒÒÑÕÓÑÐÓÛêáÚâòVNKROKKIJQTRXOHKQPUMHGMNNTSRTTVo~køãê×Úñ{çßêÜßàÒÏÏÍÑÞéåüâábZdzoåÛáÞàrîãoqy\^_PLHMLRZObebvÞ{VULIMF>A?CIVQV[TP_c]ëéîäÛçìÝÙÜÒÍÊÂÄÈÆÁÈËÊÎËÍ×ðôäðßÙël]SLUPILHCEFEEIKHOOP^^MRRLOZNMLHIJRSþëpììmûÝûùíg^zólôÞêÝÏÍÄÀÅÿÄÈÃÄÉÎ×êèÝÝÜÔÜéáwkãó_eRMOJGFD>?GDHOKEDGEKLLOJKR^uïÙÞéÚÝàÐÔÙÕÕ×ÒÒÒÑÎÌÎÇÄÄÀÃÌÔ×æçÚßìz\abtzôÞtgm\^WQTIFGGKFGMIKW]izfYa_TZTTQJJIP]VmíjôëéÓÍÉËËÊÇÄÇÆÆÄÇĽ¼¾¿ÈÍËÍÏÑÓÜèíúhýhnoUMMRLPTMHFFIIKNV`]èÕÖÙæüñìÿwõärrüþÛÓÏÌÏÐÐÏÎÐÎÞÿgbusöacùÿîÖ×ÐÑÞáåé}üog^alïßÜÕÝôqsyþòômeXXe_YOQQV`qèìkhô{nîåäêÜÔÎÅÄÆÆÌÐÎÍÎÌËÓÔÖÞÖÏÎÒÑÎÐÑÏÏÑØïðm\]]_SNVUhèß×ßáêßÚãÜïhrX\caaVhtmïæÕÔäÞåûjd^PLMMWhøÞéû{ùâéàædûrsîíß~ëßäÔÐÌÈÌÍÐÒÜÜÒÝéáäÞ××Ó×âykkjkkWVVTbqñþûîìÙÒÐËÍÍÒÚãuísanîéÛÏËÈÉÎÒÐÕáöfXXTNScojýð|äÙÓÕÒÎÒÔë}ý\XaehpÿíëÞô^hpnhg^UOMMQLLQOUZopmßî~í_e_\asÚÜÛÑÐÇÆÎËËÌÑÚØørüvÝÙÕÕàÜÞäìlênT_WUWRXM^ôväæÛÒàÜØÛâçÛq^sgjüvx_ewóßìÞÞìÛä_YWSIIQOZ^zë~îßàçäÛòmðóëàÖÓÞéåæÜâææmflfllcRR_\YZ`aPX`mwbeSMOTXX_g\`ùëÜÓØÜãÞÙÞçêwbT\uïçäÛÞàÛÕ×ÞïmTOT\k^adWcöëÝééãòêñþìmeZNWab]]l_c{ëâm^\PPUYRJNJHPTebZh\g~}íòèônþòÞÜÝ×ÝãØÎËÎØàri÷éâ}ûðgùäéçúñqbfe_XYRJJNONP_[]tíàâà~aUUSLOPONTqøvâäûóñÿ]cj_[Y[]Xaød_iìêâØÝîòqtwòê_^_iqjîùcnol_aûbXWRLKKMMMQUW^s_OOQKMUTTYixéÖËÈÍÏÍÒÝÔÒÚÖÕÑÜÛØÝ××ÛßîÝÖÖãåÞqpîû]VXSPeopûk{t[dôp{f^POSKMS]ZXmwxk_[KHKJJJONM\ùëçÛÞrkkvðÜÖÚáá×ÛÝÛÓçpóèÞ×ÕÕÚØØáß}lSLOMZagkZ]YTbtãù_\SS^quzüæßÒÌÕÜêîóbuáæxvêåÒÍÕÒßåâõåÔÎÕàäóêÜÚÓÛæûõéÕÍÒØØÖàÝà|nXPOQ]_g`XXW\_]WJFHEFLMQNNOZìßón[[VWrhíæîÜÕÊÌÐËÒÐÎÏËÉÃÆÊÐÑÏÎÔÚÙÝýïäáÝÞå~úëÝl]aXSP\ZVolixmííÙÓãgUaa_îæóztíðåãíúùìë}mðo]h~èÜÔÑÙÓÒÑÎËÆÈÎØÛÜØÎÐÜëéÝÝØÙÚé÷yrmZSOJHEFJLXOOMK^yãüd]VeýçÕÕ××ÛÐÍÊÎÓÖÙÖÎÒÓÒÚÚèäÛØØäÝäøÛ×ÒÖÞÚ÷tïÜÔíèêýßÛÏÓÛÔÝèÜÖÞl]XQU`undikXcèëp[iZV[_n\_[V]uâêöé{ôÛÑÓàÜÜÞÞÙÒÕÖ×ÑÏÌÇÄÊÍÍÐßñôîäòóðäÛÞâéääîëÞê}`SSW_ab_X_ggîþý~btvöüsêøéülámem^g`xénógalhÜÚzãæäÞØËÒÊÊÐÎÔÌÑuëâçîôÐßâÛåØðåßYWVLHEOKFICFEMlSMVSPQywTgmnýxÑÚøääÞäÎÈÑÎÍÑÜÞËÎçxùæîÚÎÔÐÑÔÛÜËÏêiwú|èÖ×ÛØÛìkÛÖëq^YLJW[WVOLHP\PIFJIKSSKJLNNQ\ei^XRN[~éçèupzÝÕÖÙßààÙÚÔÍÈÊ×ÓÒÎÌÞëi`øtðêãå\^hgulkUHJIMY\kTOTM\h^VHSZOZclQMVOYgrxOP[SaïÜë_txuÚÌËÙÞÓÔÏÈÂÁÉÈËÒÏÈÇÙåÜåéÜÎÏÞêh]V[mSJD>>>ILFGB?>COIFIHIL_ônfZUR[ëést_W^þÑÖÛÛøgl×ÐÜÕàu{æÎÐÐÓØÞÜÎÌÖØånwàÔÎÍÐÖw\xáë}lSIMQWZVRJDGKGJI@?@IMOVOOKQ`cke^Y]ðâÙÍËÎÞÛÐÍÍÊÉÍÏÌÉÅÆÅÆÍÐÔ×ÕÕÞyjüþ÷ÝÞã÷il_YZXWNMNQXW^\VXKJKJOLMOMWZaebcb]]`[[TXOS`róôj^_÷öçÜÔÉÍÔÍÊÄÆÈÉÐÎÍÌÌÎÎÐÒÑÏÌÎÑÛõ_WZVQTTPQNMW\]XHCEEBEIKJKOPY\XYNRj_nlo{cîÙÒÍÕ×íåÒÕÌËÈÆÎÌÈÄÂÅÇÔâÕÓÐÎÖÐÓÔËÈÉËÐã][\XWQSPT]dj]sfJIIIF@GHILP\[kdQRTZZUa[WfõØÜÜÖ÷ïáæÙÝÏÇÊÈÅÀÃÇÅÍÐÑÛÛñßÚáÖÓÌËÎÍág_\\OQTPWknb_mbYRMNHFJHJZa\Xk]T]\ebdj]fyÚÒÙÈËÚÜáÔß×ÍÏÉž¼¿¾¿ÁÆÊÉÑÏÎÚÔÌÅÄËËÌ×ÞðcWOOKIKSa\i~dZNJDDICEIN]Zdgdc]`V]v\apîÚãÖ×ßßîí]\íøíÖÐÊÈ¿ÂÂÅÊÔíÛÕÞÕÑÌËĽÄÉÎÐædóõdgmý]dé~nhnWGKLHDGJEIPYWNTPHLX__iì÷õÌÃÇÊÊÉÔÙÎÍËÇÀ¿Â½¸¹¼½½Ê×ÒÛÛÜßå{äÎÎ×äãkLKRLLVNLR]k`]eYLKNKKSVQN[lU[_OLIPWP[[W]tÛÝÜÙÿg[]xwÚÐÎÉǽ½¾»¾ÂÆÌËÏÌÉ×ÒÎËÇÊÉÎÚícec_kVNPV[PXXLHCAACIHIONSNW`SJJLKXüvgîØÒÐËÉÍÙßçpgßÏÓÍÅÃÄÀ½¾ÁÈÐàóØÑÝÜÕÏÐÍÄÆÒæyhVj}\ZU]YPX\PMKG>>FFCEEGILWKC@A>;BKKP\{îßÍ×æölbYlÚÝØÎÇÁÁ¼¼ÁÀÃÌÒ×ÓÒÝÝÛØÚÔÉÖàåi[Ualck[_dYvgPOIEBAJHIMKONONGE@B@>HNNTXxàÛÏæðzU]W^ÜÞÕÏËÁÀº»¿¾ÆËËÐËÎØáôÞíãÖãëh[]V\^]^RW\SYPIF>>==FJLPXd``]VPKJGGN^^UeäÜÛÚÞîp^][[ú÷zØÏÌÊÇÅÈÍÏØÜåæÙñîàëß×ÐÏàëêèùùã~lh]_WWZLKHB>=DHIQOU`TSMFE@?ALXYcûÝÒÍÌÍÐÒÝêíãÔÖÒÍËÇÅÅÅÅÉËÒ×ÖÞÝÞçíyðàéã}kf]nôøäèød\r]WVQTJINMVZ`h_írSRNMF?CCIQR\We~emh_TJPZ]ýÞÕÔÌÃÄÅÀ¿ÀËËÉÍÌÎÒÙèÚÔÖÏÐÒåíÜÝÝÓÛýd\^WQUNGFGIK_õkjk{paYVOKHIJOZZ\fëäúüî\WROSZuîïâÓËÎÎÄÊÏÌÍÎÌËÏØÖÓÎÉÉÂÂÈÇÈÊÈÆÇÏÖÝ~lklbLGIFHJSVVVPOPRJC@A>?AKOLRcþåâêt[{cXbûâäáÑËËÉÇÉÍÍÎÖÖËÎÙçëãåÚÕÓÕÒÏÎÎÈÇÌÒÒÒàêâêõk^_]k}{êæî{`liMJJGFCHKN\RNUjúbSW_[]ix{éåÛÓÎÉÆÆ¿¿ÄÄÉÅÈÊÉÎÎÌÉÆÍÌÇÌÊÈÅÅÊÍÑÙífgVOOHKMMNOnu_l[_^NQI@EDFHMWMOTXuaX\X^\^o~ßêýäÚÏÎÍÆÊÈÅÇÄÇÇÉÑÐÑÌÆËÆÉÎÈÍÌÆÆÊØÞïqðnk_PYW[oyáùbiZ`cSOEDEBLPT[RW\aèïm_X[WaqèçõïlñÍÍÎÍÎÌÌÂÁÆÂÉÙÞ×ÎÍËÉÌÊÆÃÂÁÀËÔÞrîþwkRQLINR`ZOPKMQPOF?><>ABDBDEHO[qk]b]ksìÚêåëvïßÏÊÎËÉÍÊÇÆÈÍÚèßÛÖÎÐÕÓÏÌÏÈÈÒØÞãûqÝèg_[YU_þyl|ê÷dîùVLHFFEIHCCEIHVgRMPURKQYTXZ\TaàÙÜÑÌËÍÉÃÆÇÅÆÌËÆÇÉÊÌÌÎÏÉÍ×ÕÝômz{\XTOJFGGGLPOPOTKHGGHFCDAFJFKNWZSV_[ZZ\XZm\]egefêÒÒÏÑÖÞêÞßàÖÓÝéáÚâÛÔÕÙÜØÑÒÏÎÝÿêäwy{vUNV^}éÝýTZYOPLNE>?@EHNYLN]Zdmõû^hrýßÚÐßtæíßÑÊÇÑÚØÞÒÈÄÌÝÔÝåãßÝìzþqvîÜå[XRO[f_VOLKQfÞÞxdWLM\gVPMHIN`n`]QPSbínn]LOUîÚïçf[cìÎÔÐÌÞâÞÐÇËÊÒùdmÛÝæ×öbmêÐÒÔÛfZX}ë^lVJJSúãßâ\NL]÷b|{ZJM^k÷ßlOM[ðíÙÙxW\ñ×ÎËÒô]}×Ú×ÍÎèåÖÐÊÁÃÍàÛÐÒÎÉËéfîíàÑÏäPIPVZPMKFJMRmñpNEIMX_[MHJHLhâÛqPWiîÛÔßiqëéÓÌÌÚqcjñÚÎÊ×óüåÍÇÇÌÔÝüúäÙÕâñnoÝÔÏÒãêhlãÖÕziv]lßàßýZPR_lój[ZIJ[kzj]LESc^bYZQPvÝÖçëêcöÓËÉÌÌØåÎÅÁÂÆËÜáØÏÌÒÐÞuïÖÒØÜâ^Zh|çùjeWUí×ÚîíWNUcäàÛâj^`üÝåÞgOOP]`]VKMXiéûènYkpãÝææc]bnÖÓÎÎìæÛÒÊÉÆÌÔÛåØÕÙàkixúÝÞØéoðêÙÕÜê_TTOSXlmZ[WeéçÚèojV^_zpWY[`}æâæ{úóàÛÑÍèóüoîÛÏÎÛàëæØ×ÑÚèãmfwöílh_kèÝØÝåãssáçó^QSMP_päñùzfà×ÚÚíp[SY_g`XWW^ðèåßÚàøÜÑÓÐÙðh^ôíãÚèåfkÜßÚàærXrgby]XVP^snôôlXfüpìÜoUSU]öÜåÞcdçèÜ×Ùî\[\Yjio_mæçØÙÑÙùåãÕÏÚÒý\ùüØËËÌáéîÝÏÝÓà_\OX^ftNU[Wûc^ePVUcw^cNGKHSfw|[SS`ÚÓÑÛtgWbéêÜú^_^úäßßìêýèÕÖÔàmdgìÜÓÚës`aäÐÏÖâlY`wçäð^YY_ïæùnf[YlçîmVLKLT^b][TQeà×àþr]WX^cYRKNVâÑ×ØààèÖÉÄÉÚy_pßÜÙÜåán|ÙÎÎÙêvem÷áÞiVNMY_fcX_akàãëhOLHYfrvWTSQmãÞÝòsXTVQTOJHDL_múrön]f_krYPQYâÜäéöìrçÐÌÆÊÙágönftghX^ýêãÜéîúóãòæôZPOY\coli^kÙÐÍÎ×ßf`XS\[VRS\afæìðymu]_b_ZVcpéÙÛßíìÚÛÕÑÚçknmwâÚÚòfecoçìúcdfexufSMNLP_nèçðÜÞÑÉÏßømiVfzl`V\dþÞßèÚèù^cîeVNOVXçÙáÚ÷lciÛâuþgg[cÚn`dYTOdoZvöl_sÏÕÝáîy^êÓþßÔßÞÒÄÆÍÍÔêb^ësnçú\ZÜÛ~ïäúglÞßêõxlhÔËÚØÏÚûúÔÙßãçï[jëý|g\MEQSNQS_T_áîøj\XR{ðzøêÞðâÉËÍÊÍÕîñë}ric_Ujìecie[]|nk÷thiéÚíîåæêßØÙçÜÚïéÙÚØÖ×ðf^XaSNSP\øåäôìfQZ_vi_pmtâÒÍÙÓÒçàà×årëj\nnêòçßþßÙÔÝüæe]øèÔÛÞÚîßíÚÐÜÏØæ××Î×ßÛpie`]PZRIUbóÙàÙçkh_o`mø[kçÜÍÏÎÒâåòî÷ho_\eY]WZbXTTWlgpd[g_jæÛÕØÝÙÝÚÙÛÞèÙÚÜÏÎÙèý~cX_glc[[TcìáäþûuuêíãçüÜÜÐÈÈÅÊÎÔàÛÔâëbZZZe_viYPEIOOXTWPLTWrî÷åýêÔÚÐÏÏÎÕÏÌÌÊÏØýx÷rõúeVJOVYa__ULV\lâëáw{îÞÏÌÊÌÔ×ÙØÙ×ÒéôýýÛÕÒëYPOWXKOTRRINfêrSRXexuåÜçu\hÞÐÑæ{g]lûéÛùþovÜÐÕìo\^f}ßÚáïzxãÔÐÓÖâôpæÝèãiYQQbr}ëök]]irýv]atæØÙßêzhdyyðçàíkê×ßÛçgYPVPP]WONNXlsbi[U^ckììxmð×ÔÍËÉÌÔÙÑÕÓÍÜ{kù{üêð_RSYVUZ[NIPPT^imWWZkëß×ÜÝ×ÔÈÄÄÇÏ×äîâêàñ][[]~tcZNQPOMLOKMRVqè×ÝëípãÝÚÎØßåèÞØÒÔèóddpúvj`ZXRUWXZ]Y\f]norëíçÕÏÎØÝØÚÚØÞÕÓÛÝaaîóqjckZSRMVZ^aYbjg^cüöîîsojqnjns{ìot^cüù~hkÿudlZ][Zi]^jjzmwð{ââî÷ðëéôúéÞáæìâÙÏÏÝèçíý~ôÙÓÖÔ×Ú×ÝÝéùòpwûmù~ib[^p_d\PYRPRROPKIGKT^ibkhboåÛØ×Ö×ÑÑÔÏÒÒÎÛÚ×ÙÚæïî`WJHIEKICJZnknäÖàÞÖÒÎÓÎÎÒÌÈÇÊÉÃÈÎÛÙÝþgQKGBB?>@DKLJQQQXM^aWqjuórÚÑÔÑ×ÌÈÎÇÁÃËåê^RQOIHOWkñéÝåîåÜÖÖØÞsYY\dd^øüjåÚÎËÏÜ]LNQTSOUOUhóÙÞô{_ýÚØÎÐØßsofþäéîpzèÝÎÏ×ïYSPSSNORS^gýÛÒÏ×ÓÍÎÓÖÖßþ}ïp`|ìurî××çxjNHKNJKPTVMQh{óüèsìØßØÛæâôàÛä××ìèêÚÕÛÙù\SQaXOZSMMTcwÞÓÖÛÕÍÒÏÎÓÖîåÜìÕÐÛßóçáåó_TSMGGFLLIMOYcîÖÙçÛÛ×ËÉÆÈÏËÌÑÏËÅÈÌËÊËÌ×ÙàiWKF@?BBCIW[gp][]hljòðcYRT^Slõï×ÔÏÏÝÝÝýhha`\ln^evúèñne[WgyóæñëþkltïÝÚÕÍÅ¿ÆÈÉÕÐÔ×ÑÜÝÙìéØÒÎÐÚÜtkÿsïgX[MLXSY_X^\_ãæm_QLJIMKMY^e_aó÷æìóèÜÝÕÍÍËÍÔ×ÝÕËÉÌÐÔËÌÎÔèzVIG@CHHNKMX[iïåÚÜÔÍÊÅÃÄÇËÍÍÎÌÉÌÓÎÍÑÔúmXIEB>==?BBIMINQZnüðìüíéçÛÚÚ×åßèëàÝÚ×ÛîhW_eROLO\jÚØãßýéèðÌËÍÄÈÌÌÒÌÏàÜÞèëièÛìÓãc}gïéX]SNWSdlY\QJVYnßóòûzîsóÚåßÚçäåÙÌÎÕî_`SMRNPYX\e_o^YYZfjzáæÜÝíçäÔÎÐÍÍÒÑ×ÍÉÎÙùYVVWY]ZXRVRNYVPOLNRV_j_YXU^^ef`wruïÞÑÎÓåÿda^dnfkü{ëÚÑÉÇÈÆÇÅÆÈËØñôe\b\VWLLNOQRedWSYVVRLTPOkgôæßØÙØÎÍÍÍËÊÎÜÛÙâïkn]T]_\\\_ePVZS]]UMGLONY_ö{füÝØÖÏÌÌØÛÔÛäÝÛÛ{yæûåßßã^apWPY\M@>FJLNZhTX÷ìàÙÑÍÏÙÌÈÊÆÉÊÑà×ÜßÖØØú]íöíî_h]OXVNOPJFGZbPPZjWSew^fîx_]qâqlêè|bõÒÞéíög`gíîîÙÏØØ×ÕÕÙÏÔßÙÔÑÐÜÝÎØÝÛÙÞqb|abs÷ý]SXSKOIHFMiaZ`X]X^á×××ÛÙÐÒÍÏÙØÝÜÏèæàuñTLMRWKC@>@FGJMMVWX}ëåïâÝÝÏÊÈËÌÍÍÒßÉÀ¿ÀÎìxYh]TZ[d_Zdlg\Ynb\çäìî÷gk_eíàÙæÜÔÞçî_R[NUSSgbú××ÝÝÔÍÔØ×áðcbn\`l_XQIKEGTSNMAEFBINP]mÛÓÚÏÊÍËËÀ¼¼¹¸½ÁÇÊËÎÄÀÊÑÚÌÉÕâøNGFEB<;B@?A?GKMVSMPMSYgßâùjrÚÏÖÏÑÊÄÀÁÆÎãëra_gìÜØàbZXZgvzsuo\YlmrzûëÝÔÎÒÓÑÑ×uhidõù_ZZ_{êÙ××ÙëæÞæÜÝàßê}ðo^\^ZLJP]k]PKE>DKOSWgùöÓÏÎÉÇ¿ÁÄ¿»¼¾ÁÄÉÏÎÌÏÎÜïu]dz[TPHA?A@@FJOOMPfm}òéò}ïâäõñélngæØâÚÑÕ×ÑÑÙÚÞÛÚÜéÙÐÐ×ÏÓÚÜÖÛäâæïmb_^ci[TUZVZYoçåÛo_dT^_TXS[zwâênñòsëðáÚãßçùäêåÚÙÏÝmÿìÞÕïbTJHGFIEFEAGMV_`ùôoáÙÔÉËÉÂÆÄÃÅÀÂÁÂÊÊÇÌÐ|XPBA=<=<<A?>BCJOPUjoðÙÐÉËÆÊÔÎÌÉÃÉÊÈÊÄÆÑÏÝõôd[XOZ_]YSX^_jmõéx[]VWWJHDBFCJP[îöUUV`u_xöhçÓÌÁÄÁÀÇÌËÆÁÆÈÏÝßødø`_[KIFIZOEC@?DFRPP_VZûñÎÌÑÒÛÝÔÕÊÈÍÂÇÍÌÍÄËÚÛ÷|àÛæùVNICDBGNIJGGIHKPILTR[WfßîìôvÜÐÎÊÊÍÆÆÊÎÑÏÖëí\MTZlóaôo`áÝØ×üÝþ]|îß×tèàséÜÎÅÌÉÒçúðmîZU^dqt|ÙõóâèÞÕÒÅË×ÎéózY_]NNHEMKPKAB=?GCIGAIGHYa}ùjäØÊ¿½¼»¿¼¾ÂÂÅÄÆ×ÕÌÉÇÉÐÏzimlhTS`RMIHNNIJGJIJNW]lgj`nìåØÛêäÝÒÐÒÍÎËÐÜîëåÙÞëëîï}d][^\\_iiq^VPSWb[]gûååìojqpenciqvòèàÓÕÍÎÎËÍÑÑ×ÒÓ×ÚìoýddWUWRNZRPOGKHCKIVpvßßéØÖÑÈÀ½¾À½½¾¿ÈÄÌàÓÑáñ^p\YXYXOOOLABD@CGKLIKMJKM_`W]hvkg{kZ{ÞÚØξÅÊÉÇÅĽÃÌÎÊÅÅÊÈÌÚêãÚèggUJGDLLHMNPTNPSZäÛöùnèîlæÜâØØÍÎÚÒÍÝôjßÒÙ×Ï×è^an[làð[JVhVSSVLFHPHCJPNLSpõàÔÍÈÉÇ¿ÃÁ½½¿ÈÌÍÎÖ×ÓÞáìÜn^VUL?<=??CLIDELV\}ÑÌÎÒÒÌÍÍÈÉÍÌÌÏÜöÞÛæ~cd}iq{YR[cdezål`PSfjéÕçpeWWURTNMFDNOataWVanñèÖÔÎÏÐËÍËÈÌÌËÎÌÏÐÍÜày\_Y]pgUNLPRNZ[SH?CFGWce\P]mvîëèéqÿèäÛÎÎÑÖËÄÄÈÇÅÅÊÎÑÜÛÜãmXRRMIGED?=??DKPNJLR[_lèß}pvÞÐÉÀÇÍÎÎÌÑÝÜåtc[cgfû`YegëåzçîgYOWlsï}ithôÝìÝâôòeXbzÚÚçØÚÙÏÏËÊÍÏÏÓÓÎÎÛ}ûfYYTMHA@?;;<>=<?@BLW`ZZl{wñ×ÈÉÈ¿ÁÄÃÁ¿ÆÎËÎÛâÝÎÖëÚÛêãÜÕàhgl_W^ô~WX_QPUeZTUWQLKW[ZYd^fþØÔÞéÜàíÛÓÕÔÎÉÒÛÙÏÖìq{p[Z{w]Y^^USdbZ[^yl[sj`^dvjiáÙäk]}ïùäÞåâÜÔÒÓÕÕèýqôðm|àèîäfZUUYOKHHMJL_^^tßàÜÏÅÄÍÎËÉËËÄÃÎ×ÍÊËÎÊÏõWX^UMNVNGLRNNMVTJIQNLOUUPOXY[b|ön_kwaoìäîßÎÍËÈÃÃÉÅÁÅÐØÒ×ëúÞßçâÞÜhS[]NLRXNHNY\Z_îvòØËÌ×ÝÞãìêÙÍÍÕÎØáæèÝàö|lbcñÝÕèr\XVX]Z\QF@AGIT]fWLPWcsñÜÿ^\kàÙÖÐÍÏÎÊÅÅÃÄÉÕöïÛÔÜÜÚû\YYaoñ~|dY]_ledôçíàÑÊÉËÛõ]\hj}na]_dyå×ÖÜàßââÙßàþ`uÛØÓÔßï[V\ZLIA?88;=FMT^^dçÛÐÐÕÎÏËĽº½½ÁÈÃÀ¾¾ÆÉÙopRR_[[RJXSQUMRNGNV\h_deYkzöÝáÚtS\sqõÿ}ý[ùÜÝÖÑÉÆÖÒÎÍÊÕÚÝzbh}÷veiVEDIIIIOOSMLORYapÜîåÓÒÍÌÌÌÍÑÏÌÌÎìzè\ROT^TRZixsàÚïcmïhUZtöbnîØÓØÎÌ×ÞÚÌÙùëÝíiíääðwäÚÖØÙÙþV\engbqtbYXVVPLNLJHCLHGLP]_[ëé}þÛÖàjep]`hwënèÊÈËÍÆÆØÜØÜÛêÛÏÓÚÏÒÌÍÖÌÑùíÿx^KHFABADHKNWQNLPXmãØÓÎÔÛÕÓÓÙ×ÍÖà×ØÛÔÔØÙöûb\[INRC>?FLMU]VU[iÿíëÛÚÜ~e÷þùßÙÐÎÑÒáñàÜÛÞâßÙâáÙÚÙåì||ýexî_QMSYR^wlto`~ñxÙÞìjWfhZlåÕÎÓÝÛÝáÞÚßn_VT_]pý\hf\ýmò×Ù|fNIJDNUQVJIVNOjöêjdpúzãÑÐÛâÙÔÎÏÎÇÌàÞÝÏÊÉÄÆÒàùd_VZ{aQKGIMTjnöõnlvîéãðcXW]îÙáÚÒöþmzÖØÑÊ×woïÙÙÜÓÎáiZ\\UcdSHAEHILRWNDHKTite^PM[gÚËÊÃÅÏÐÎÐÑÊÍÐÜn]_yþãØÔãh_owíäñy[rÝíÕÕÕÎsZíàÚÊÌÙÞ]qökÝÒÏáiTOMM^tib[X[bíÑÔÞqONNK`]IE?=DHSäêvy_VþmàÑÞÝûêåÚÓÈÇÉËÌÏÎÎÐÌ×ý^__ïÞÑÉÙii`tàÕÌÒãxzq}êßÐÜz]PMMPTOSJJMKRhîåú^oqqÚÒÔÔ}ñàÝÎÉÂÁÊÙäl]yêpdQHLKJPk|ìyZ_NYéìðj[iboÛÏÓØuYVOjØÚÞíaöàÝÏÈÆÈËéo`gÜßßÝñöåíîÖÐãïUOMTpog`PMVZòÎÊËÑïþåÚÅÈÏÔÝýig_àÜ~õWJLJRMKKEB?CHSaYVIDN]ûäåÕßíþâÝÏÅÈÎÝènñÝÙÚÐÕÐÑÏÌÇÄÇÏÜípnßàénZOLYúâÞ÷iWIEMapb_][týæêßÙÎ×àêàÒÜåáêj~ìñyëëêcKDGV^^ebWRTQXêæálUSQhmYbvyrôèñÒÏÓÝa^câÞâÔÔèmzÚÓÆÂÇ×kURoþêêdY^eíá×ÎÜopývÛÔâÜçV^ëíîÖÖÛìOKPXfnhf]U_vqîÞõaVQOZyh]^ZlÚåõèìaOIGMV`l_oiYbòïÚÊÊÓêkþäÙÒÔÎÓØÍÉÎÊÈÎæn`_òô|hjf^h÷çÝÎØî^UJJUmø|étbaiìÐåpaWNOgnxkowßÍÃÀÀËä`YUXëê{`^PLOT\õyVNJGAMY^RV]_syÞÐÓæoýá÷ÙÎÐçð}|êíÏËØ~dWRRdæéàÍËÌÌÌÄÀÆÏÝûÿhgãìdzumèæØÏíSI@CGGUc]bqcyèÒÈÍÝ÷]XVLQXNMTO\\dçdGCB@GNiû][lcõ×ÍÁ¾ÎÞéöxyÞÖ××ÉÇÊÉÈÅÇÛò{t}oû|ühxçÓÍÅ¿ÃÚ[PKB?EGHEIO[cóØÖoYch\V}ìî}ñÜÎËþ¿ÌúYXUOfaVNKLUSYñîl[NMVP\lljòÛÌÌÏÇÈÔþ]YVPX`Y[`[xÜÕÿÉÚt]b\iãÜÞÚ×ÏÊËÂÂÌßpk^QMNRUQY|ÙÝ×ÌÙónYQTY^}ìtinåßÑÅÌælUOJGIKLIM[ñôÝÍÏrRORMKLS]PZïàÑÈ¿¾ÍújXPPJSh[k×ÌŽº»ÇÉÈÊ×ñiX[UYñ×ÕËÉÌÝeSRHCDFQTK[îëÓÌÈÌÖ{íi_]gã`]fÜÕÐÍÏâþ]WSMLLWX]lÞÝÚÍËÒÚý[MDIKKRaaéîèÚÐÔí]P[ULQ^hôìÙÊ¿½½ÀÉå|lQXwóßùhzÙÍÅÉÙÚl[QJOZiyþêÝÍÊÆÈÖåv_MC@HEJNHMnæØÐÑËÓí^HGWIYp][ãÒÖÑÕÕæÿVLHGHKONTqÜßÕÕÏÑÎêóòà×ìÔÖÓÎËÎËÈÉÌÈÛYTT^^ebõçÙ×âßØèêoMNGEK_lnqßàúÖÒÛØqHGEBGQ\jîÛÑÏÈÅÆÅÅ×jeRXZOR]wóùòæk_[M?ABLTRSVjxéßÕÒÑÔëR_}rìëêÜÓÖÊËÏÍÍÚhP[|fqd[ãÏÓËÅÂÇËÍÞqe]VRXVnÝìüàÚöíé}fYMG@ADIUYjÞØãÙÒÙõ\\Z[UY]VRR]qk|ÞvTMMM_bgzZhoýÝÛÕÉÓál^væâsæäâÜÏÇÀ¾¿ÈØ}_]dö]|öso{çÞÔÕà\RNJJD@EIEN[êÛÖÐÜÛívcljml~ysíÛ×ÚÙêÝùeWSXVT^[_u`ciëù}bXYT\_hf^rîçêÝÉÊÏâYSNGHOg{ãØÑÓÊ¿ÃÅÇÛßákh][ZbníàÒÃÉÍÊÔ}gYP^^MONV`dææîá~\liV[YRYWdçwìòlô^ZëÚl^]PWamëèÛå}âòZUZNTcNQ_úÕÒÙÞôÞÒÛßÐÙÖÔÿd{ÝÌËËÅÉËÐÞèÕÚíìäô_W]fslew^UWþn^Z_lëéõêpdYWKIK^`]ind~yíÏÒÌÕÑÝ|{tbYk÷xhèÝÐÎÕnpRFGISOOQIIORfÜÏ×ÖØïèÚÕØÏÍÓÎÐØÏÃÀÎãuPWklúâäme]kóÓÌßçrNPtôàÙÙçøÚÝëÜÐÙømO@FGEMLHIUXXcÑÒúñkmäÞìÒÛõa`b\xÛ×ü{e^YTLS\YT[^YcsåïðéÛÕÌÍÇÀÅËÌÒÖÍÈÄÌÞçäíé~íÙéZ\[U\`ïë|[oxlhgéò[[jdpìäçúWY^úÙÛÑÞ^VSIObuñña_}kåàÕßnþþe_ðîdVJJZbrèÔÏán`c^ìØÛâ]VdìäÒÌÊÌÍÏÕÛÒËÐÒÝÞãÝëÚÍÔÛåÞåòëÏÛñh_kkfèÎÙÝþbXRQfh\\UYYX_olø}q[ZboymaPPT\lÞÛÝâkY\pÞÖàîcckoêÒÎÕ×ßîyzèãéäëÛÔÕÒÏÏÖ×ßûñåÝãñðxs`îÓËËÏÍÚ^ZY[WPULKOT^rî}ÞÞ|wjosiíucczuzáÚÔßü]Zfëò}s[Xa`iîôÚæl^Y]hXWofníæàånåü\YWURZpþýpfîâÓÓÔÎÝêÞæë}gø_QüàõÞèáÜóüí~|o^Y^\aêoq}éÚÞéì{tßéðíêèèzzjev^WX^WRQV[bûßéçíêÝúolg`QQUOZ]jl|þüÛuYYQOLKPR]eäÜ×ÖÛÉÍÌÈÌÏÙåáíoo~úó|ðÓÔïdOKIEMUNQ]\iþ}Ý×ÙÙÑÒÎÛÚÚãÚÒÓËÌÕÎÙäðhKJGHLHIPRT`iäÛçlj^YOLROPgeníøÛáÝêÛÒÐïWZRNSZ]{~ÞÜÔÝèöÿ~oäÜßßàpó÷ú}ñÞßéíèûéûkmkþÛàâëî÷yñÿúnu|èùilêêñØÏÕêca_IKNWav]^g[\QTORZ\WSPONOZ]jßÏÐÕ×ÕëöõäÖÍÌÖíßÒÔØæäíò_\súd\|nyáÔÍÓôndec[\bxüä}wþläÙÑÌÎÚoZIIOKHIN[_hæåuuj^}ëÚØi[b`ggòäàê|xZUU^Y\mibUP^éÝÞàÜãÙÕåÛÚóçàÞÐÊÇÉÎßp[^\^iþàødf[\sùïäâl^ZSSRPV^_m|÷æî}vmoëêòmfpi`yÛÚÓÙßãi]aeiùÞÕÒÝÜÝÜßëïúj\\QLJOVXZeâÐËÈÊÔßfW^i[géítmòÙÓÎÉÆÊÝ{oûi^]cZWkòu][RMPfvòkY^XUUXñÔÖÖÒÞýöÞÖßÏÇÆÈÎÕÐÍÐÝîötbVY\WTRLI`ìñðhZUQTOWY_ráÞèßÎÍÐÇÃÂÂÇÍØãá}ýÝæßt`WZ]ZOJOVXzæ~öräéëÖÔÕÜôcem}ìÚÏËÌÍÏÎËÈÊñoaSPKGFFKLTtÛØÐÍÝâÝÕÚîåÜâíëéÞ×ÕÓÑ×Ö×ÚòWVPKEDKWURTWUO\êåÝÒÓÕÝùëÚÓÐÖÐÕÞÚßäuÞÒÎÑÐÐßæ~vm`m\[bRLNPRXiÞÜÛÎÎÎÎÝìñìÞßèëñè×êlúèÜàÞêihæâg]V^kzú`\XXWRNOZ|kYadjyÙÉÇÈÎÙðêâèéæØÔÑÎÕÍÊÌÏÙßàãíñ_X]_dnëÜÑÍÓ{}ïdXW]WWTSPQdoûÞÝÙÔÜøîÜÛèdpëzìénX^dapfnßÝç_WOQSZe^b\WUNSoàÒÎÎÉËÖÎÎÍÊÍÛàïsh^_OS^rkeû÷ön`_jíÓÉÊÏØéî|àÔÍÑßùof]bZUYZ`meiýõXKIMOYhpi|uRXnïäÜÑÙöve^píàæóúúïÞëeymjzùpXQXWPZræÜÎËÑÙÞg^isßÛÛê`Zb]lëßÛÜÔàåÑÏÞîxyhbn\PMLEBDJLVZY[UMLQ]~ïÞíimoïÝÖÏËÍÇÎßãzügSVVSVXROLKN[høéàx_aZ`ðÓÌÏÏÏÚæéØÍÍåýd]]PNJHLLOX\by`_ngàÖÓÎÕ×ábVXQZ^__[ngXWY]þwwùúáäíÝðvâæÚÝçèl_d[mêöÝájkjWVM[æöåìeWRVWWgglûxûþeehwéíäØÝùfYUNW^Ycf[PObd_gìjkìôt`ï××ÉÉÍËÎÓ×ÝçrgpbYfxa[VTWkÜßõÖÞómTOO]][lõ{}vyêãÚÔÞÚÎÓÞîpmmûýeêìdeYNMVmðe\VHGEDKNONVywwÜÜàÏÈ¿ÁÁ½ÁÉÊØßÞæêæ×àkýöX^gegeegTNQMV^ýäØÑÕÖÔÖÚÐÐÎÐ×Øìic^_kkclob]XSLLT__aõu\\XOQUQWd\RU\[mÕÌËÉÅÃÇËÐÔØÝÞáãêêèø{{úåâÝÖØsVYZbüzóÞÝ×ÒÒÒÒÓÎÏÏÒÎÎÜþúþsíróÖßzeRKKLSSRZ[XURSVUX\hjyåãàãÛÌÈÊÃÀÂÆÐáï|n^ZYPZb_abtÚÛÛÏÒÓÙðxjbûêÛÐÓÙÜâíÞÔÑÚÔÓÔÔßíóôzz~vmêñkVKP[YhínzlZZ]TV^ZPNTU[_|ÝÍÊÅÃÂÂÉÎÝïipqljh^YQOYbdidW`b\\[YgwèØÐÇÂÃÉÊÈÈÎÌÊÐÙãúópcpñ^øR\uJZ^^dïø÷äÞþcYNMSSY^XaX`îåÑÆÃÃÈÌÌÕÞoTVRNRXad]gÿ÷ÜÛÜàl÷xhùdcóvþùûõèäÞ÷ëÏÔÏÎÑÐémg_úïõÿdWRLMSNbügmcht^ZRLSTS]úÝÙßØÎÊÄÆÆÆÉÒæo^WUWUQRSTY`xxïëøööz^YcddyáÜÙÔÑÏÚÝÛÞÔÏÖÖÝéraZTSSYRQQWVR[ÿô÷unïybUONPOTSSWXoôëßÑÈÂÁ½¿ÆÔððäëîû\h`XWX]vzûûcïn_XP[d_îßÙÎÓÓÍÓÑËÏÍØÚÔî]PT\[[[RQNIKQMRkô~_jjWMHJQOUURea^wÿãÏÊÈÊÌÈÑò^WXeywfk~fyãåàÎÍ×áàèmXT^f|~ÿóßèïçãüåÉÄÉÈÈÕêlqþãÛäýÿpUPRTQ^eYPVRHD@?>GJLOX^_løßÓÅÁÂÄÇÖÜëòy}çm^^o_d__\ýÞâçíü_^OM\æÚÑÔ××ÛÙÕÔÐÇÌÏÏÍÝújROQYQQQSQRUYjòó|ie\OOLKJMKMOT_VS^b}ÖÏÍËÍÕÞêøìÝÝãÞèõ|oöêóõe\][ZOLGGILWcæíáÝØØÒÉÃÀÄÅËÍÏÛáèïî}mj^c]PLKSZVSPRWK@?@FNOdd\þõåÔÊÅÅÆÂÁÈÒàÞðcera][a[RP[fjmd`_dSPTRUdóåëûàìöáÔÔØ×ÙÖÒÖäõðëéÙÖÞkn~]Y\cYVcd\TOH@>?ENXVPbq\gÙÊÊÄÂÅÈÌÌÑÞîà×ÕÛñnèôyml]W_ZSKNLHIPeâßàÝÜÏÑÌÉÊÌÈÆÊÎÑÎÚ~g_[a\ZONKKNTPKXZ`][VRQOS_~up{úïÙÎÍÑÉÅÈÇÈÊÑÙ×ÓÚÔÔßÞéõêâðeWvïjýù_[TW`iÞâøêëÞÜÝÔÕÕÌÍÑÎÐÖÏÜàxgu[OOPNTOLMLOJJLF@CJMNSa`kû×ËÈÃÀ¿¿ÄÁÄËÍÎÕÓàí|\ccZXTUYW[[jypgzïäâðÞØÙÐÌÍÍÎËÉÌÌÊÈÊÍÎÕßÝ{ZZNLPPWSPWX]_XPOMIFJNIPQIReüúüÙËÑÍÆÆÄÄÂÂÉÅÈÔÕÜðßãîpTYQHMNMOONNXõaWò÷âÑÌÄÄÀ»¾¾»¾ÁÂÌÒÞÝçMGGBCHGFCEJGN]XVXSTNRQNZ]dïÚÕÓÕÍÌÏÎÒÑÍÍÕÖ×Ùð`^ZS\hfjhkccrt`c^^ahùljoöíÜØÕÏÎÌÇÂÀ¾¾¿ÂÅÊÔámVSVTYQJGFD@?DIGFEGGLMJN_}èÏÅÁ¾¼¾ÂÁÀÂÉÊÌÔÜÝnVOQPKHFDEKOT^}kl÷øskìûûêÚÑÐËËÎÎÌÎÍÌÉÆÇÊ×ofTGFFHMVVX^_]WVWQOLMKGLLHJVajþúßÏÌÊÄ¿¾¾¾¿ÁÅÆÍàouïk]MFED@@@IKKONOYYRV`éÔËľ¹º»»½½ÁÃÅÎÜ~OE?>?>??;>A@JT[`_b\]fgjjléÚÕËÍÔÏÜäáÛÓÎÊÊÑÒÛn\UZfk÷ìeoò|tuy}ìýkj^VRKGKRY]ecâ×ÔÌÆ¿¼½¿ÃÄÊÕçf\^[PJE><9678:;<;>BB@?JXçÒÌÀ¼½º¼¿¾¾¾¿½ÀÄÊë\YNFE@<?>>DDJVeqïøëÞÛÜâÐÍÌÇÅÃÃÉÊÐÏËËÉËØømTE@=>CHKKTSQXVSQSW_ffc]OHGGJPNPZ^tüêßÎÇÃÁÀ¿½½ÁÅÉËÖÜùbVME@?BIJLKMLNFHPlã×Éž¼¼¼¾¾½½¾¿ÄÌÏëZKFE?>=<:;;;;<>AFIM_öîåÞÏÍÌÈËÌËÎÓÔÛÛÒÍÏáh^VNLKPRTZSX`fcZ\xÚÙÙÙÛ×äp]\a_úää×ÔÐÎÇÅÃÂÇÆÅÁÂÈÏÞßñ\PJD@>;:9:=@CDGHHKS{áÔÍÉÃÃÂÆÈÉËÇÄÄÅÉÐÖÜo\OKLJGFF@ADFKS_]ýÝ×ÌÄÅÉÈÃÃÄÆÇÆÇÊÊÊÎËÐßëjXNLJJLTOMU\TPIFHKV]mie\XTSV[km~ÞåëâÜÏËÈÊÆÀ¿À¿ÀÆÓéê^QKIF?@CEGNRS_^VcþñÜÍÈÅÁ¾½¾½½¾¾¿¾ÂÉÐÜl]RJCEC=>=;769;=CIVvßÍƾ¿¿ÀÀÀÂÃÃËÑÏ×åõù]XXXXYY^_iÿupvþtôÜÛäÖÍÎÒØÞùe^[dòòãÜÜãàÏÌÐØÖÏÐÍÉÊÎÝâpXYPJGC>?@?=@DBACLT]vßÛÚÒÊÊÉÈÈÄÀÀÀÁÃÅËÌÕé]SVMIFGE??AAFHMdëÕÈÁ¿¾¿Â¿½ÀÁÄÅÈÎÏÙájURQPQVSJMRNMIHHGINOZXXhke_benìëíåïéßßö÷ó|æÖÔÌËÑÚØÒç÷èööêúndkýøxg^qúzìÞÔÓÜÏËÇÄÂÀ¾½ºº»¾ÃÆÌßh\OIC@<;978768;=BIV{èÛÑËÈËËÊÊÊÌÍÑÕÙÞéðZONOSP]\WZ]slZZhóíâÔÏÌÌÉËÔðèãíîßÕÚÝÙÒÌÍÏÉÇÈÌËÈÊÏÕÐÔó^\[XMMJF@=?=;:=BDEN^nuíÖÍÎÏÊÅÆ¿»½ÂÌÊÌãlVXXIDBBC>BHIHJYapÛÌÊÍËÆÃÇÈÇÃÁÆÉÆÃÆÉËÔëpgo][\WQJMNLJGKPLKNYWOVc]ZWbíoha_]Yewkggwÿaf÷ÝÝèÛÞÝáûèåó~rjY]i^SMOVUOUWf]_õôãÝÐÄÀ¾»º»¾¾¼ÀÈÍÖáqNIE@==><99:<@@GMNQlÙÒÒÒÎÌÍÎÎËÌÐÍÒô`WVYUPQMHELUPR]j~{êÔÎÐÐÌÎÖÛÒÍÉÎÜät[ZüäîôçßáçÜÐÐÖØÚâ÷vjpoZWRNGHLC>>==?@GPSONQV_ñØÉÅÆÄÄËÎÊÊÛíòÿvdX[XOJILKNPXdZ\pr~ãÓÌÏÐÐÐÏÓÑÊËÎÌÊÏÙÑÔÚØÜßägX[ZSKMOONNU]TJGIFDKNX`cib^^hîåzôôétqßÜìþzl`cðóããèéýrvéågXZYVZðÖÓáçêïï×ÎÈÂþ»½¾¿¾ÅÕÜæïogmx]IA=>?DCHIDCFIJVg_\eo}óÛÔÒÔÚãùfdaZXLLLKLP`]QOWfxãÐÇÂÊÒØâãÝÜÑÏÔÙÚØÛßázjmõãÝÔÎËÆÉÎÍÔÍÇÈÊÎÐÓàïïîoTD>=98:<?CBEGJVfâÓÎÇÄÂÁÀÀÇÕöZUPTab_YMGEFLRZZ\^ZgäÎÊÏÎËÇÄž¼»¾ÃÄËÑÓÒÒÓëüf\\^lgZSKLV]yçØÜægY\^XW\YVUXXüòjbVQWXg÷êt[[WUZnÞÒÙ×ÑÓÕÓÌÌ×õ\VWTQXha_ZX_m}çÓÐÓÐÉÅ¿½¼¾ÃËÍÏÏÎÌÍÙÞø`Y^bc\OJKGDHJFDHIOXißÍÍÍÌÎÍÍÏÒÓ×ö_\ONQPLNNKMXzß×ÖÔØáÛÔÐÏÒÏÔÙÛãÕËÎÝÛáíóìãÑÊÑÙÞäæÙÐÎÌÑÞÙÝèÚ×êh\LHHGEHEB@>?DN\nïëãÑÒÏÇÉÝáìhd\^wð`Z\_\\m÷åù[b~yåÝâ~ìçáÚÕÔÈÄËÎÏÌÊÉËËËÏÛÙßÝÑÔäfjlrxýàÎÐÜçåo]`YMHDBHDBIMKIMWfûöåÔÚáìðzåÖÔØÙåöáíèÝûe^XYX[awqahtmjäÕÐÑÐÍÉÄ¿¼º¼ÃÈËÎÔÙ×ÐØÿfja\cmk]SNROOOKE@@CHLR\omeqzvóÚÕésa^\RZbVIFKRX\cðÞçæÔÏÐÏÊËÒØçÝßñìîfXY_råÞÙÑÐÚßÖÑÎÊÃÃÆÅÆÃÅÈÊÎáqhk_WRLMI=;>?>@DEEKTìßÞÏËÏ×ØÔÜîýøîcONSNLKLKKKSfbelk^lðéÜÏËÆÇÌÍÊÇÉÆÄÆËÎÏËÐàâáý]^mstmpéúolåÞèéûiSKKMIDBD?<>AGOX`nhet÷hxxk_]dçât_f_MLQYWYYaeWVhl`inoijîÐÊËÌÇÆÍÎÊÈÊÊÉÈÌÕÞØàðþqa[eûêøf]]MGHQWOUbbWOPYW[kyc`fôý_XY\QILVRRR[_Xc{ôîëßßmpôÜÛèäìj\YbqnæÐËÎÌÈÃÇÌÉÈËÒÐÊÇËÓÚÞ÷_Zmj_]ZVKGHHIHGJFAFM\emäÜàßÚÑ×ÜÜâl[]cYLHHC==CJLOW[ZY\íÝÖËÈÅÈÊÆÆÈÊËÊË×ÛÜáßñzliy{èÝÝÜÙÜÞ×ÏËËÐÕÕëedg`[WQID?>CBCJQ[^yÝÜåîêãô{ìçïüj_WSOMPPPWXPPSVU^síâéâÜÚÖÍÆÀ¾¾ÀÁÀÂÀ¿ÄÈÊÉËÔÜîn^NJNOV[\[URMPT[n|g`]\a[[\]^Z[[UQTQIFIMNNNOOLNXkzíáæèq_xéÝØÒÍÐÒØàßáçààßÕÌÆÈÍÐÔÐÏÔÍËÊÊËÏÓÓÒÔÙØÚÙèpmd]WSPNMIGGEFL]fnéáåâàçìyldf_]WMHD??@CGKPU[WXañÝÒÎÌÉÄÂÄÃÃÅÇÊÎÏÐÒÎËÎ×ÙÚ××ÖÒÖäôüêÛØÒÏÙÞï÷ðplg`_ZRRPMNQNJLT`qóñq]YVX]bivs[VVUSQNOLIIJNVVY^^gûÚÕÏÊÆÂÁ¿½¼¾¾¿ÂÆÊÌÍÐÔÕÖÛì~{y}ÿë×ßäÜØÐÎ×ßäßÜínhboöqfYV[_a`][YVRNNRWTMJJJMQ[b^TPT\[Yhz÷ìæÝØÐÎÑ×ÝäÛÏÉÅÃÁÂÃÆÇÆÁ½¾ÀÆÊÉÈÈÍÕàè}b_köùeTSROMOSZZY^jzäÚàôg]TMJJJKMLLHFFDCBCEHLPX`girvåÛÏÈÁ¿¿¾¾¾¿ÀÀÀÂÃÃÃÇÌÌÌÌÎÕÜÞàØÑÏËËÊÍÎÈÈÉÍÕâp[ZXROIE@<<<>BDGJKHCGJPQSTVYZc`d]QNIINYhwÿãßàÒÍÈÆÇÇÌÌÇÁ¾½¼½ÀÄÇÈÇÇÊÎÐÓ×ÙÖÚópg_^\^cd`WMKGA?BIHJLMMMOOPONNLMMLLMQTY`kxíìøêâÞäÝÐÏÏÏÑÓÑÏÐÑÎËËÊÌÐÖÖÐÎÐÎÎÑÜèéës`VRVVYZ\WWPLMLOW[\YUOMQYZTRSQURWd``ikkjepþvwyïvþÞÜßðnhuñä×ÑÓÑÎÔÐÒÕÐÐÏÑÕÖÙÑÑÙàëmhrji^TKKLNQX_b_\^ha]oòæòjkk`Z\ea[efgopxõñðéâÞÚÚãßßàÜÙÙØÙäõøýfVRONRSORRNRYenjjóóqòáêýlýõyñðáãögg_]e÷çäßåÚßÝÑÏÐÏÎÑÛæààââÝáìnoêÝãxlrpTQQMJEEFEKP[gZS[e]\lë÷xqxp^`][b\[[XagúëîîÝ××ÍÉÈËÉÈÇËÍÊËÌÎÔÔÝãÛÙÏ×àáîlX\h^VYVTLGGFE@BB@DHJNLIKJJLU\]^\]UPU]ailkhhïá×ÏÑÐÌÈÊÉÄÆÇÇÉËÏÒÏÒÖÚêþfyè×ÎÏÖØØØÙÖÔâógbZOMIEA?>==?@EC@BDBCFINNMPYZ^jo~òèÜÝ×ÌÈÁ¿¾¾ÀÂÀÀÂÄÈËËÌÏÍÌÎÔÓÒ×ÚÕÎÍÏØÝêycff_]SQNIIJKLGIIDCDIKIHIKGDGKLIFIIGMYhmfôèîçÒÇÅÅÃÀÀÃÄÁÀÄÉÉÉËÌÌÍÌÑÙÙáðþíâêéíýþgmèôf[]^^rîéâp^daZV_]SNKMOLO\TJN[TVöãÛÖàÜÙÙÚØÓÕÖØÖÐÒÔÏÎÔÙÚÚàÖÍÏÎÏÙÝÚáìèéthdikbhg_TRQQVZ_^_\SURPV`rrkøëáØÓÍÐÕÔÒÑÒÍÊËÐØàßúdlseZ\{n_n÷èxiokomßÕÜìx{ýecooj[`v`_þùu]VXSPZpqf^\mp^iðåßÞØÏÎɾ¾ÁÃÃÆÆÃÂÅËÑÖ×àðãÞåx{çñsùìò^QOKGGJKJHDFGBBGGHHMZY]zåáõuîñvíÜÙØäýéåíäÝÝÛØÌÊÌÉÇÈÉÊÌÍÒÐÍÊËÎÎÍÌÎ×ÙÜñý{êñfpyui][TKKNPMLNONIHJJGGJOKLSZ]YWXVOZ}ØÓÖÐÎÐÓÌÈÆÉÆÁÂÆľ¾ÃÇÅÂÈÎÌËÉÍÏÐÙçéÞÝçñîök[]^_SNMLFCDGHDDEGCDEFCBDHJINUTVZhyjüÝÑÑÎÇÆÌÌÊÉÆÇÈÆÆÉÌËÉÎÒÐÎËÍÎÎÏ×ÙÔÞïèìwf__Z[Y\ea]^cum\]]XRRPGEJHIKKKKLLS]X_u÷êñùáÜßÚÐÍØÚÒÖÖÓÒÐÏÏÑÌËÌËÌËÊÌÏÐØãðþ]NUURPONMMLMZ]UVQPQSTWUQUdYTfmvþëãÚÚèÜÐÙßÝÞÞãáèåíinøeséóíëîæßéîÞàörkmrjj`\[XWXYgö{{ïêêàzgpj[Z]X\^ZYXSU[WRZõïçÙÕÍÌÍÏÌÌÍËÌÎÎÍÓÙäãâÛäãÖÚëéçåüog]ZNKLLGGFDFCAEHIJNPUZ[_WUTZ]RNQMNYWYfpûÝÓÓËÃÃÿ¿ÂÂÄÅÇÍÎÏÙÛÖ×ÜæëÞÞáëàæöë}fSKIHGFACB?BEILOMOSX\mm`^fqdW^YPLJOQWYf÷ÞÜØÎÎÏËÆÇÈÅÂÀÅÇÆÇÉÏÓÒÕÐÎÏÏÐÖÒÓØÝÜÙ}ccYQKIGCA@@AADDDEGFGGB?DGAFHMMLQ]jcbkîÜÚÓÉÈËÊÆÆËÌÄÄÈÈÇÇÍÏÍÏÕÖ×ÖÛßÚÜÙàèùke\_a^`]X[[_ôéñì~g^dnlpaZTNHCCEEEEHHGMSVZ^am|ßÕÏÍÏÌÎÐÍÌÉÇÉÊÏÎÎÏÊÈÊÎÏÏÔÚ×Ùßì}n__YSVWUVW]]^k\SNPTMLMNLMKFGGGLUTXkößÙÑÎÎÑÓÎÎ×ÜØ×ÞàâãîíõêÜßèèùin{èïn_dcYX_xlnh`byóßÓÏÓÖØÕÑÔÒßigzhZ_ihnn_Q[amâÕÕ×ÒÒØÚÎÑÙÞÞÚãëîòåæþj^[^|ûupfcegrù]YSQ_\QZ\Y[X^cZ\i_e^^eaddZRNNX_dkyïçàÒÌÇÃÂÂÄÃÃÀÀÃÄÄÉÏÔÖÓÚäïî{y|þrg\[WNLKQMHJLHCBEHKOZdrûzòëzúíuogzíhdumc^imsìç×ÍÍÌÊÈÅÆÂÀÄÅÄÁÃÈÉÈÌÔÞÜÝÞÝÚÒÑÖÚÛÜßðïgYWNRPJLLGAADCFBGLNHBFEDFMKJMNW]WZ`u~à××ÏÍÈÇþ¿¿¿¾¾ÂÆÊÉÈËÌÎÓèxããåæàãï{sui^_e]VSV^peeld_lpovvït^ZYZWOROLHGKPX[oìçêÙÕÑÑÎÍÎÊÆÄÄÆÉÉÓÓ××ÙàÛÞÙÖÛÝÚßèèÝÝéãàßßôsxlkitfb]_hcVVe\SONNONUUROOQOQ^hrùçØÔÓØÏÌÎÎÍÎÐÒÍÊÊËÌÍØ÷`fm~o{m^[NRS[^ZZ[UY]ýãàåöqnwéÜáÖÕÎÍÒÔÓÖÙßìwoqküìçîíñçãÞÝÙØÞÓÕØÑÙßå}g^esü{g_\`emri\WMMLKNT[WOKLLT\cku\SOYahemüksoþæÜÜêïûúíæáÛÒÌÏÓÒÏËÊÆÀÂÄÅÍÒÛÓØäìûî÷_TNMKHJGGB==<:<>ADGOPOOMV^hkg÷ö|çëÛÒÔØÞééóâßÔÎÚãìàÝÚÔÎËÈËÉÉÈÀÀÁÄËÐÛÝØÔÊËÏÖêmYY^aYOKIA=>>><<=>?@AFEA@=<<?ADGJTXOPZekkèÚÕÒÏÈÇÌÌÉÅÂÀ¼º»¼¾½¾ÃÅÃÉÐÓÏÕÎÍÒÐÞq_ae`faOLGBA@@DED?ADIMKLKKHFKMO\hwbXVX]fæÖÕÝÙÑÖÍËÌÊÍÊËÊÍÌÅÁÅÈÌÌÎÖÎËÎ×ÙÎÎÒÒÓÕÜãùjWMOSOJJHGCCHFDCFHHIINLEKLKINmóg^evrvÛ×æmqvíßÔÉÇÊËÇÆÉÌÈÅÃÍØÑÓÝÜÜÝýcgpïýïØÚ÷dbZKHLNMGIRNRSVWNNXni_åØáwq}ëòÝÓÔ×ßÓÍÏÓÎÎÚîôëßØÖÌÉÌÖÛÚñjnèánbsl\`ej\\yvîìàÒÕïpg[NGEGFBCGEBBDB>@DIJK^øöüçÚÕÕÎÈÇÇÈÅÁÀÂÁÁÅËÐÖ×Ú×ÏÎÚéòlWMNPMJMOMMUZVSVZ]_eìÛæe_YLFB@CBBGTWXlsccúâØ××ÉÀÉÌÄÁÅÄ¿¾¾¿À¾¼½½¼¿ÉÐÛßé~{÷òpaaWOLKQRMKVkY\cZSR]iZNPZSKKKB<88989;>BLOY\\eæÕÚ×ÊÄÆÈÂÂÄÁ¿¹¹¹¹¹·¹¹·ºÀÆÎÚò]^h\OPPNMJOVVURQOOVeXQT]ñ`VSYYXWPNIFFEFIFIJSyyhgwÝÓÒËÈÇľ¿¾¿À¾¼º¹¸¸¹º»¼ÀË×àüXPOMMJMVTOQZca{áëmjçç_NIJHFEDCB@CEBAFHHINWUT^çÛßçßÞÝ×ÌÊÅÁÿ¿ÀÀÀÃÄ¿½¿ÅÌÍÈÌÞüfTONONQPNPSMNSPU`un[PY^\SPLJN]jxçìíèæéÞç÷òß×Úßá×ÏÏÑÎÓÖÖËÇÅÂÂÅÅÌÍÊÑÚÎÊÏÓÙÚÖÖöeZPNNLKNVZWZPNMLINLJPJEGJA>DGGPXasêÞÔÐÓÌÌÏÏÒÕØâÙÎËÉÊËÉÉÆÈ¿ÅÂÃÈÏÖÜãÚàýne`gkûsZVOFC@BGKNMRNLNRNNSTSORZcVVy÷g|íÚÏÈÁ¾¾ÁÂÃÅÊÌÓÒÎÌÆÁÃÆÃÃÇÇÉÉÎ×ÚÝãzjlxia_[``oufZOMIA>?@?BFGDBE@CIHB>>@DLW_vèÞØÎÊÅÃÄÅÃÇËËÌËÎËÉÈÇÆÿ¾ÃÀ¾ÅËâëîþ~úê{íõu~zúkXNJKIBEHEEFJMJIOQJUcmUHKJIITcèÚÖÎËÍÌÐÑÎÒÒÐÍÌËÆÆÂÁÀÀÀ¿ÆÁ¼½ÆÏÐïh[^jòéëãàÝæofgWLEB@AB?>?>=??=?IOH@@A?@DHLM]îßÕÑÐÓØÞÜáåÜÏËÊÉÄÃÀ¿ÀÄ¿º»ÃÏÎ×æi_^[\_nîéæssûoXQMLLGHMMNWXNJUjñQDKCA=BMQOZwâÚÚÛÐÏÑÔÐÐÓÕÏÌÏÌÅÀ¿Áü¼½ÇåéhWPRW]WUYcirshü|aVW]XPOKFCHIJAAMJG?;;;;;AJJN^|àÑÎÐÓÖÔÛÚßØÒÛ×ÎÌÉÅÆÅÇÃÁÃÀËÝãtZPUXUYW_j^`kópZPOLHGHMOO[\RIJZZXOHB?@CGLQ]l~ÞÔËÉÇÃÂÊÕÓÌËÊÈÄÆÆÆÂÄžÀÂÉÙÝðim`f^TMOYgheg[MHKJIGCCCACCGHHKJD?===<>@@?DNVn÷×ÑÑÉÇÉÌÉÆÁÃÊÇÄÄÂÂÀÇÅÉÈÃÑÏÒÚáxõ÷][\bue\\g`[UWNHHKMMLNTWMPUPNKMLHBELLNPWY[kÚÓÊÂÀ¾¿À¾¿¾¼»¼½¿ÂÁÃÂÃÁÆÊÎÐØëÜÙßáüwòwx}ÿu^RKJGHKHF@>>>>ACBFCFFEEDHJJIKUWgëÞÞÖÉÉÈÆÄÅ¿½¿ÀÄÉÈÃÈÉÈÎÎÌÈÃÂÄÇÇÉÐ×Ô×ØÔØÝÝçpok^XNLKLKMPLMMPNNLJLPMHKIGLOS\_üÞÏÉÁ½¿À¿¿¾½¾½½¼ÁÃÄÉÉÆÄÈËÍÐÔÕÔÌÉÏØØÚÙÛØÓÖàf[XNNSPMGECAFGLQOMJHDCACF?=AGJUpðçÚÒÌÆÀ¿½»½¿ÀÀÄÆÈÈÍ×ÔËÌÐÎÌÌÕÜäíÞØÔÎÍÕÝÙÙßÜëvePMOLOX^^TNHMS[a_\TNMLGHNQVVhåØÈÁ½¼¾ÁÁ¿¾¾¾¾ÂÅÉÎÞÜÑ××ßõïâÚÓÒØÝãùyøèéëöia[RNQNKF@=>BDGDDFEFHLPXXORTV[eýÞÛÚÜÖËÇÀ¾¼¼¾ÂÇÌÐÕÕÙåìèåÞÕÏÍÑÐÛÙÓÕÐÒÕÚêi][^YUSNSSOONQPLG?@DGLMQPMNPQWY^cmìÙÎÈÄÀÁÃÆÉÇÀ½½¾¿ÃÍÖåíàèìèôÞÔÎÉÉÈÌÚp\[küùòlUKHFFGCBEDBCJGEC?<98:AFJTZNIJQW_eûÙÔËÅ¿¾¾¾ÆÓáôåÕÏÎÔÚÞçðéÜÖÒÍÌËÇÆÈÍÔãrRILS[\oveTLLKJHHIFDLOOLGE@;:<>DMOY[Z_ïÒÊÈÄþ¼¸·¹¼¿ÈØpd{õÝ×ÔÐÎÔÓÏÊÌÏÒÚßßÑÐÝp]NA<<?CHKNOMB@A?><<>>>CFDB?<87;@GMUlÜÒØÎÇÇÇÈÈÇÊËÉÎ×äu[RTkéÏÊĽ¼½ÀÂÉÏÜîslcnîdYSNHACLTd_]oaYTNLGECDEKY\NKJEDEMZþÚ×ËÃÃÁÀÂÄÊÎÕÔÎÌÈÉÐ×ßçý}éØËÇÇÄÅÌÌÙícOHB>?BIKFGDC>=CJMMTZTLKKF@BCBHQaýi^^YZT`ïÞÓÎÉÇÉËÎÓÝèêóíåÏÈÇËÎÑËÌØÐÉÅÃÄÈÍÛ|gVKD@A@BLWSONOVQP]e[W[[ZTU[SMLQ]kÞÍÉÈËÏÎÑØ×ÍÌÐÌËÊÈÌÌÌÐÏÍÊËÍÃÀÁÄËÌËÒÞâÔÛÝÞûsiWNF><:<;=CEHBCFGHHJNILOOVUX[XXZmèÝÌÇÃÃÇÊÏÛîuyi`óãØÐÌÉÉÍËÇÂÁÁ¾¾¾ÁÅÊÓÝë|ô}÷íìïøñpWOMIIFFJOSOMHEGJLOXY]o÷ìßâùôá×ÏÈÁ½½ÁÆÈÍÑÏÓÖØØØÍÌÍÈÅÄÆÄÃÃÁÁÂÃÌÖÚó_XNIFHGIMNRXUOKGDDECEFADHGIMQW_qíÙ×ÒÐÐÑÓÓÔ×Û×ÓÒÖàÔÖÝÕÏÎËÉÊÇÇÅÃÁÁÄÇÇÉËÌÌÍÏÝçèÿg\c_YPW]gm]Z\ZTROTRUNNLMUWX`~ãÔÒÉÈÉÈËËÌÐÐÕÞÞÝÐÎÔÚÙÓ×ÕÍÈÿÀÃÂÅÆÍÑØâåíìïhXONKIJJIJKPYMJJJIHHGIKLRWVTVbtñáâÚÕÙÏÍÕØÛãòt÷smóÜÕÓÖØÓÐÌÇÅÅÃÃÃÁÄÉÌÒÛzemlcntöírd^XW[SS^hff[UTRNNWXUZ]f÷íàÝÞÜÚ×ÙÝÜ×ÓÐÒÕÓØÜèõìáßÜÕØ×ÐÍÎÐÒÏÓÝÚÙÛéûùoYNKIGCEKKLNOLC@@DDFIJKJMPMMJIKLO_íåêãÚçnjeküúÜØÛÝÙÖÝáçåååÜÍËÎÏÎÐâynzöv}çåýx}seWQPMMV`_VRUSKHJORONTNMSVRMLTYZcÜÖßÝÜÙÝ÷ìÞßÞßÝáéÝÝØØÙÔÒÓÚÓÑÖØâåîu]^^]\RTRQQQNNNNIFCEIEFHFCBDJGLMOOKKKNPT[]XWWfrrôùvkegyÿâÚÑÑÖÐËÉÉÌÊÎÜä÷ñüõéååéêûöÜÙÞùknûpSMWd^ULOY_]VMKLMJILXuf[]èÕÞêßÞÚÖßáëæßçùccxqëÞÏÈÉÎÒÌËÎÐ×îáàÙåîàëôic`[V\^amZQMLHFKJIKJLJILLKMKLKOg}ùqhirjXZinf^int~øãäÛ×ÙÙÑÉÆÈÊÊËËÔÖÐÎÍÍÌÎÓÔÔÒÙëìüj`oðëìôndl]_[Za]XV]ehuec|p~âÚÕØØáîááôroöïðoußÛÕÎÎÏÏÍÌÉÅÆÊÊÒ×ÔÝßìðâ{sib`X[][[WW\bkZ]_UTNMQMKOQQQT\\Z^_`^kvñçzëñkmrs÷toìéãäÝ××ÎÌÌÊÌËÈÈÇÅÂÄÈÊÌÎÎÑÖÔÜìîïéèâÜÛãà××Üàíql^YYbxhjnaesöåßÙÚÝÝáââü{tjfYW]hçÝØÒ×ÕÖÔÔÓÓ×ÔÙÕÎ×ÖÐÕÝôûìýonnfi{qnüñj]\\ZW[RQNJKIGHGJNOOPY[nòðõngaW]_\\^holôÙÕÍÈÄÄý½¼º»»»¼¼½½¿ÃÅÈÑÜìyzíäßÞÞØÙÛØÜëðqkk\ZUUWOJGFFDGJLONW[TUTQNQUZeôÞÝÙ×ÕÒÐÎÊÉËÏÎÍÊÈÆÃÉÎÏÐÔØÕÕÒÏÓÒÓÞèömd[SNJOQPQNJGECA@EHMKMPOSX\UPMNU\V\^Y[iö÷íÜÐÊÄ¿¾¾¼¹¹º¼¼¼½½¿ÁÇÏÜÞéöüðöèèîÝÛßãßzj]\VOMHFC>;;<;;>?DCEKIHLKKLLWg{ã×××Û×ÏÐÔÙÕÔÔÑÎÍÎÌÊÏÑ×ØÔÐÎÍÊÍÍÎÓÕÝãän_XPNNMMJC?>>>>@ELNPRQSROTROOQQONNPTRPU^dnàÎÈÉÇþ¿Á¾ÁÅÆÉÌÑâæîkTV[RNV`h`akunipk^YZWOJHJB<:;=<>GMVRPOOSY^cmpyðäÝÙÙßìðêÞÚÖÕÔÓÜéíéìêòùøéÚÔØÙÏÓáoúèèvl~éýk`UTUTNHHKNNKNY[innyôãàîýnij^XWUQQVVOSY^e÷ØÓ×ÐÎÎÌÎÑàéùZQMLGBDDHKKPXZ]xÞÙÕÐÍÐ×á÷dUMIDB@GKFEJQY^fgmqÝÍÇÅÊÌÏ×ØØÝòõî{kòÞäòáè~îêæÙÑÐÎÒÎÑÒÕÞÞèæèæÛÛåãàüslno`baUOSOTSYhck}âÙÞðìí}rjh`WZXYLKNJOS]ieyàØØÔÑÕÛÜãçìp^^YRORSWZXWW`èØÐÊÌÏÎÎÑÒÚì|fe[PNPQV]\[[W^áÓÔÑÍÈÆÈÇÈÍÕÛÜàíèìûîëæçèãßÖÐËÅÀ¿¿¿ÀÄÉÈËÑÖ×ßçïmp`]`cfke]ekhic`[W_^bhji]ZRSXSKKNOPQOOTQTXXYlÿí×ÑÎÊÍÏÍÓÜÝÔÛîøo]SRMMQWgæ×ÕÌÄÂÁ¿ÀÂÈÎÑÚßôn]QMNSSVY\d_xÛÖÍÊÈÆÃÃÇÄÆÇÊÎÑØßàæúúððÿèáÚÓÌÌÊÊÉÉÆÄÇÎÖßêýkr`WPIJOQPLLLIKNJKLJIJMNPWYX`\Z`]_^^uiøüiïíëéõy|ëÝÒÌÎÑÐ×ÓÒÔÐÕÚàèúq_XOKLLNPX`fïâÒËÎÎÌÍÌÍÍÖòu_XQQTWX`ðèßÚÖËÇǾ¿ÃÄÅÅÃÇËÖì}jf\ilgm`råãåÛÓÓÐÐÓÙìòp[VNHB?>=<<>BEGJMKHJNY`czn^]mtist~o^^ltùàêèÞá×ÔØÏÍÎÍÍËËÇÊÍÌÐÔÒÖßèôp^YSMKOMHGMS\üâÝÚÑÏÏÈÆÅÃÉÌÓÜét^`\YWUX^gn{çÙÒËÇÂÁÀ¿ÁÀÄËÒÞp\MHKIHEDDECCJNazsììðñng^OKHDDCDCFHGHIIKOQWZenjóáíõ÷æÝÝÜÞïûpeýÛ×ÙÚÞãèáâÞÒÌÑÑÓÑ×âãàÛ×ÙÞàîûpjøôk`]]fnpdh|øÞÙ×ÕÙØÏÐÒÏÙé~{`Yku]e}nòêëêèçïíãÙÜÝéñû^WRIFGCABB?><<@GINeçÞÖÏ×ÚÙãÿuxmUIJGJMIKKJKN_pâãëØÛÔÎßÚ×âäêääto^^]]`ytýïàØÔÕÚÖÔÏÈÊÌÉÏÔÖØÓ×ÞèìâçùmiZRNMMQNMU_îÙØÖÙËÇÐÌÈÐÜìf]VMIGCB@BGJILMPfv^fõóâÝæ÷k[VVSLMLGEFEJMMORTpÙÓÏÎÎÍÍÐÖÜízlqk^USMHNVUYcrnk÷àåìæáÚÕØÜÞåðîÞæïñôüãÑÍÉÊÊÉËÆÁÀÀÀÇÍÌÍ×ëvg_]]ijeüûüéísg^ZX_eto^WV^ýaVNKKJJIGD@>?DGFJRcêÛÑÍËÉÍÐÉÊÖÛîjhZROKLLJO_fwðå×ÍÊÇÃÂÃÇÆÃÇÎÜödVLIHIGHKV^ervè×ÎÌÇÃÁÄÉÇÆÊÎØÙÓÔÛàÛãîì÷ùÝ×ÖÛ×ÏÑÒËÀ»º¾ÄÂÁÅÎØo]e]ND>=>@CC@=?GOWTUY_fxj[Z[_\WRORUSUNMQW\[gøÙÑÎËÌËÈÈÇÇÉÏÙããùbZRRWSWcrwmòÞÖÑÕÓÍÊÈÊÎÓâéûkicjj]nprðßÖÕÏÌÇ¿ÂÁÁÈÌÓÛç}p_UY_bdjðâ×ÐÍÉÆÆÈÆÈÊÌÑØÞöiOJKI@>=;<<:9<?AEIGP_h|ã×Ûßâèînþd[_PKNNOQT_eiñÛ×ÌÊÉÄÂÃÆÂÄÊÍÔ×àíuUSWONLKP]b_|ãÑÐÍÅÄÃÁÀÂÅÈÈËÔØæpla^lc_dtlhóäÓÑÎÌÌÏËÈÈÉÎÔÜìwi\WTOLIJLLLOS[a`nök^q|s]UWMNOJFDJKIMQUWW[]c]`qývóÓÓäàßæóãá~~vna\h÷åçèÝÖÌÏËÉÌÌÍÍÔÝáèêï}pkkþú}îêéÜßÙÌÍÍÉÈÌÎËÍÎÎÐÖÛàîvj_[Z[^iÚÔÓÔÑÒÕÍÇËÐÓæla\RJDB><<::>??BC@ADLU_à×ØÒÏÏÐÑÕÛáôg`RNKIIHHOTW\_pôèØÛàÝàäêðÜÔÝääõ{efmYWTPWk_eîàÚÎÉÈÀ¼½ÀÀÁÇÊÍÑñ{n\\dm^XY_ZeóìåÖÕÓÎÍËÉÇÆÇÊÎÝõxj_VOGEDEMQPRTNNNPVUQLDCB@@CDCFKKOY[XXXQOW^]b}ôïßÖÕÛÐÎÔØçí÷íö_[XTUg{÷ëéíëçÞë{m[X\dnëâáÛ×ÕØÔÏÏÎÎÒÓÑÓÒÏÉÊÊÉÉÌÌËÐÚé`SRVXY\^_kõîòìÜáÛÖÕÖÝí~ôg^[^\NKGDCCC?>@@BEHLWpòáÝÛÚ×ÏÙçü_WNKKGIHGJNWfzz|kqüîÚÕØÝÛÙÙÓÏÏÎÎÚÝÜàën`]VPKKWsuâÙÛÒÍÊÉÈÄÆËÍÎÎÔÏÎÓØåþwý|la][[qãäÓËËÉÇÇÉÅÅÇÎÚßnXOKKKKHFDDEKNRTUKGJLQOMPVY\~l^quiiwüZMLUhäçm`]rÜÐÍÛîotïø|[OUfpp_QM[|ø}qunõìëåø~èàÓËÉÄÃÄÄÅÈÈÊÌÏÚßÜÛÓÎÑØÞßêüzp÷ëðáéàâåÞÝßÜÚçßÖÚ×××ßâÚåâ×ßæèëwgZMIEA?>=;;=>@AFK\àÝÝÚÛÚÚçÛÒïqn]ii[[[hn`_n|qðëÝÕÔÕÙÙØßæØÐØÙÚîòÿaWTZ\POTRTbuêÚÛÙÒÏÊÈÅ¿½¿¿¿À½½ÁÊÑÛã{ýìvk~óêßÝÜëÝÛÝÙÓËÇÉÌÏØÙègkp`^XTWPMLIEFD@DMSVaeVcqgðåy^]WOPOMJJLKM\õúyíåâéÞÚÞØÙÖÎÏÛö{cWWW\eõêûôðèèîüæÞßÝÜØÓÎÎÏÒØÜããÕÎÐÐÕÖÕÕÚÝà÷mnéãâÙÓÑÑÌÌËÈÉÎÐÎÑÙÜÝÙÖßñwüûf`heZOLKNXRIFCABCEHJLLOZaqìéëîyuéÛÜéwoflt]_hi_WWTX_nùwqspðæééàå|üíÜ×ØØæónZ][\]XZ`îÞÙ×ØÑÍÊÈÿÀÁÃÄÆÊÑÞòv\XUQTYX\g_eo}ìàÔËÉÉÉÉÃÂÉÌÎÐ×ÚÜåu\OIHHCBBCDEEEFKHFGLW\`XV[TV[^\ZY[ceon^guwxûãèæãàØßìwnd[cc]TUdgnk]ZVY_^kìòqe}ÝÓÖÒÐÎÎÒÑÍÉÇÉÌÑÒ×áëzþújh|ëãÙÖ×ÔÛØÛêâæ}xgfnncgc]^fóçîìðvdZb\\ZRPNLHHEHHILNX[dlv{ëy{ì~zh\YXQMLMSLJOV[mîñéóýßàßÕØßæüíæêvúkSTTYa_Y]X_h~ôøíêÚ×ÌÊÍÍËÈËÎÌÌÏÚåãøzlüêüïíøøyuðøîÚÕÛÖÌÇÇÈÊÌÐÛÛÞ÷o\UMD@>=;;<=>>DIKT^alqæÚ×ØÙÛÚØíõytþc\X[_^_jmyyä×ÙäóówdXTWWXW[_adcmòûyztéÛÚÕÏØÜåóãßéâÝÚÑÎÒÒÎÎÍÖÕÏÜßâêíéâæäì÷ùôçåàØÓÐÏÎÓÐÍÍÏÓÏÒ×á~kjndi\WX[YXPHJKJLKHJIGGGHKMLSW\xÞÔÖÕ×ÝÙÔÓÔÔÓØ×Úßïðïxd`pouåÝÛØÙÙÜÜâèøñgQWTPXUVXY[`éÖÔØ×ÏÎÌÇÅÁ¾¾ÁÇÍÕÖÕÛômsddb]^]høùñß×ÒÍÍÍËÍÖÑÏØÖ×ÝØÖÙåùpn[RQONHFEDEFHLORT]dlïêãÝÚØåús|xw`VNIEJMQ\\füæçÝÚ×ÒÓÍËÊÇÉÏÚàìmdb\[ZZ\hzýâÚÑÓÔ×ÛÛÛÛéwûzpïìÞÙßãâÙÜÚØÔÐÛÝÙÓÓÖÞàéúéÚÝÝã}ïïèæðzzïõìðüö{vwiWJFFFFHJNKLJMUU^SQ`_n÷úpnnmúßÙêîôïáÞØßûãv[wóx^WXNNOUX^__oíæõöãÞÜÖÞÛØÛãÙÒç}x[\nãéðÝ×ÏÍÇÁÂÆÏÑÎÒØçð_PHBELKJP^íÞÜ×ÐÐÌÈÇÃÄÈÈÈÏãúi[]ZVNIE><=@ACKLKOTZ[]WOUR^~îûmpy~nëÜëønclh~}ng\ZViîñèãêãÚÝØÔÝæúe`^ZWOIFIKKR[doóëòçÝÕÐÌÇÇÆÁÀÂÄÇÑãïug]hlg`mkvãØÔÔÛÜÚÞïrmkXONNNUa^^kîãÚÕÔÝæðïm[YRLGFHC?@@D@?FLQ\ríÛÙÔÌËÌÎÓæ}y_RW^\Zbd`q|øðäÝÞââÛÜëôg]ne`rð}zåáãÝÝíìÞízkøúdftëêäßÜ×ÐÕØÒÓÒÑÐÏÎÏÒÛÝÙÚézöúpm÷êèÙÓÐÐËÈÉÈÈÌÕßík^SG?<:89;=?BILToìÞÚÓÕÛÚÖÕÜççûuyaag^ONOTW]qøßÕÓ×ÚÔ×ÜÛãüoi[T^`WVV[_sæÕÐÏ×çÞÓÙîtûõü~íÜÙ×ÑÌÉÈÈÊÉËÖáêßåo]TY\TNP^þy|îóé×ÖÏÈÃÁÈÍÌÎÏÑÒÖäêmjÿkZ\VPPRVUONLILKD?>??DJR[wãÚÑÎÆÃÃÃÅÉÍÑÚèóp^[QJHHILP\okoúêåÚÐÐÑÓÚÜáãõe]TTRSPNYVXòÕÍÊÆÄÃÅÆÅËÎÏÕÚâæ{ýçèèê|sôèåÜàææ{{øèÞßèýtvößÝÜâåÝÝÚÝétyt`baZ[UNLOSTSSY[^biùìÝÞÜÙìl^YVSQNNOQ]oñòõäØÎÉÆÅËÎÓè÷r\RKHHKNQY]aZ]zäÚÚÖÕØÔÔÐÒÑ×åçëùrmoþçìëèÝÏÓÐÌÎÐÑÖÞäâétc_\`jn|~ýíÜÑÏÎÎÓÕÚàèh\PJGFEDGGDAAGMTWZyàãàÕÒÏÌÍÎÐÑÕÛÜàÝçû÷mjndk_VWVPOQMMLPSWaciüñéÛÒÎÊÈÍÒÝâèkZUTOLLOUWZgsþÝÐÉÇÆÃÄÊÊÌÖÚá{inQJHGLPSVWcõÞÙÒÈÈÅÇÉÉÔÍ×ÝÚíüeXP\ZMHDIMNOLGEEGIKLIJNWZSX\`xÚÑÕÓÎÉÈÌÔåÛÔÏÛjjnïzUUgo[RTX]YSX[``ZZ\]UT^jknïèéñá×ÎÊÌÏÔÛÞäÙÒÚßåÿwnuj]`a[`|éæìàßêëþktj^ckiiomkglrlñÝÞßââéòxwe[XPMKIJKMMMPOOXhoñçèçîàÖÙÞàèyicX\]XRMR\l}ïëëÝÜßÚÒÒÖÓ×ßØÙÜîzeXYZ]]W^\RVWX_^_gvúåØÎÌÎËÌÏÏÐÓÝÜÝÝÜñíêp]VYZSU]^^kjóßØÑÒÔÔÛØÛäãáwY[XTOKJIHJIGHOSVbmóëõõêåáØÔÎÏÐÎÑÙÚÜáïfid_c_]\\_ZQPTROOXg|öüòèàÕÏÏÎÎÊËÎÍÌÒÜÞàáâÞèûsjggljxýø}òÞãðþöîíÝÛßáâíòïyf^\]ckýïÝÚÞåéãèæÜÙØÜÛãvnimf^ZUTPQNPQLJHHNPTYa÷éâÞÔÐÑÑÒÍÌÊÌÓÙãí|ýúùve_cdb_[YUSUZ_nììîxgdhzùýmrúûòüúëîëâÙÑÎÌÌÌÌÏÎÏÏÎÎÑØÛÞßëúuf_ZWYTT[XUUX\lùèÜßÜÚØÛáéõp_^kps{qbYRSVW[[TRPRTSUX^_d|äßØÒÔÙáæâßßßèêîíõlyzsd^kúú{únd\^vêàÚÙØÚÙ×ÛãózgYZ`gfnng^\aceÿëéäÞÙ×ÖÔÓÑÔÔÎÊÉÊÊÐÞðýngkg_ZV\glvvpleyìòîêöj^clntyvtkd^WOJGFDEIKMR]_cðÜÓÌÇÆÈËÌÎÐÓÚãøm`_hnln^PQUWW[__cgt|öìíóðèåßÞâßä÷ùëääæåãÞãäãìêíyokixïæÞÜëýñìçàÝàêzmeafc]]dkïÜ×ÕÓÙÞÛÖÙÝàßæöûûwlg^TRONNMOPNIGJKMT]jmmizíàÝàåèâÚØÔÐÑÙáÛ×ØÚÝàösje\ZWOQVZdksüû~mzôùùìÚÙÛÛÝåíí~vomz{îáàÞðøæÜÖÓÍÍÏÕÚÚßàôeZRQRU]ac]^fnüxzôøyjjejkhxëßÞÞÛÜàðwlb\UQNMLKMPV_djzõèÝÒÎÎÖÞáêðìããæì÷ýzvrh\XVSSW[dmmðßÞâÞàäëêäìû÷õþxóíïîçäçèééëíííìðþ{wlhýîy÷çêéæåçømjhdyøðàååÞÙÝàâúnfbe_hskejojinmkd`[WSNONNPRTSV^inpíìæÝàÞßäßââßÙÙÙ×ØÕÑÐÑÔÝñokwn``\[[\fdcniküðèáÜÛÜßÝÝôke`dc_aedffdhkotuõçÝÙÖÕ×ÙÝãéõùöùééôîùúêëïíëöïøûõ÷îòðý÷ïþp]VWRQNMKJMPPOU]Y\m}ûîàÞÜØÚÛÝÚÛÝÚØÒÓÒÓ×ØÖÙëóyccd_]Y]c_[^adb__hpõééæäàãìîïôÿýíîíìçãááßßàâìñó|vibhfef][ftøçÙÔÑÐÍÌÎÒØçdTPMLNOOPU]cmøúîáàãßÞèøn]XUUX[^btüîêììäÞÞÝÝæäíþ|ÿxÿ÷úñëvl`\__dcmqrýìêúvv__cim÷ãÜÚÚÚÜàØØÛÖÒÏÓÛãéøòûilniyxîäâÜÖÙâçîtj_[XVYVTYabqþtlgdmwøêàÛÕÚÚ×Ýßßçïð{k^\b^\c`]i{üóéßÜÜÙÙésbXPMMKKNRTZpíêàÝããÜßèçéð}ýyxp|øñåÞÞ×ÑÓÕÕÐÐÒÔÙçøqa^acfhosykmqhglcizù}zúþd_ld`jsõßÕÎÍÍÍÏÕÓØßÞãôr_VQSY[^fjny}|woxúniibYTOMMNPTX]bmìéú÷ùýïéáÜÖÐÒ×ÖÖÞï÷xe__`\\^^hûïçàÞÝßâÝâàßæèéòü}wld_gro~éëïò{b[ZUVTZ\gêæäÝÜÞàÝÚÚÕÐÐÏÎÍÌÌÍÑÙãèï{e`[ZZW^add[YTNKLLIJJKMPURPWZaüÙÐÍËËÍÏÏÕáïrbcikn÷ïåßÚ×ØØÙáíûîô|ú|xspqe][UUTQTYYXWZYZ\\`jþéåÜÔÔÚÚØÜçáÙÔÒÍÌÍÉÇÉÊËÎÔÝèôxmjedlklvmaZVXZWZ]Y\]]\^YUSNPV[w~~õuotngjw÷éãÝÝàÚÛèíçúxoccbpíæÚÔÒÓÛàúeYOKHIIKSWXX[\\`nñßÔÏÏÍÍÑØÞê{ùïåàßÛÝÚÓÓÐÐÒÜåívptnc^põïçìzicc^`sïêâÛÖØÞélZPMRXbjetvpjkxwúùøôùì~iopjolb^[YXY`múçÞàåçìôôsie^]\_hmbXSKLMMS[h÷åÝÔ×ßàÝÙÛÛÚÝÝÞâÞ×ÎÎÍÎÑÖÛÙÛÛÚÜÞáäòf^YTRTYW[dl|ñëðxd_]bnyõêãçñí÷ûíëááÞÛáßÚÔÓÐÍÐ×èl^RKGHNSU[`^\]bbbfb`]\\WSQKFCEJNU[jëÞÙÔÎÍÍÌÍÍÍÐÑØÜ×ÐÎÉÆÉÌÕÞíykednôÿûõph_UUYYWTW`ebn}nmjgwðãÚ×ÓÓÛÞÛÚÜÜàããíqpùëãà×ÔØßño_VQPT[^^higoppkeb^\`fejbZWTOLNNOPT]^bwùìÙÕÔÑÑÑÐÏÍÊÉÉÉÎÑÙúf_ZZ_jûòîêííâàèêìqb_^fd_^[__^ahjlïåêåÝÚÝáÛàñ~tggoößÚ×ÔÕÔ×Ýâëzõàäëëïýviv}nbYTSOOSTRRQTWTRPMMOOWi}óëâØØÚÜÚÙÖÒÌÆÅÈÊÍÒÙïlaZY[\adbdgfm÷èæôy|oonfba^\_^_^^anøæÚÔÍÎÑÏÎÔÙèöïxõéêæêöþÿhchfmw÷êäæÞâïçìj]WTSQSXXW\\^_\^e`]dqüíèáæçßãêêëèÞÔÏÏÏÎÏÐÓÝìùoZRX\Z]_c`_hld^]]_kjhkfg]Z]^_`^iûåÛÓÐÒÏÒÓÐØÛÜÝßßèæàèèèôûlcc[[ajqìéíãáãýb`\YWZXVZ]___c]]hfmîÚÕÕ×Õ×ÜÜípzøñëàÝÝÝÛ×Ûßãïønflpzrnc^ekjc^[[_fb^da\Z^mkd^\\`pöèáææäÛÛæîèßçòäÝÙ×Üåçë|e_a_^júçßáßÝáÿr~}ümeaYXSRTUURWZY_vìñèÚÛ×ÓÙÞâÞÛ×ÖÒÓÔÏÎÑÔÔ×ßëõ}ôóìxhg\ZSOMKMOVTRTSWXZew÷|tuõåßÜÞÜßÞÚãñùúõîìíìæáÛàåãìøld`^_bkghzóýa[[^emc[`_\`ge_YWYW\h{éàãÝÒÍÏÙÛÖ×ÖÑÎÏÏÑÓÐÓÙÜáêóvÿîèìþlqýn_[XVSUZVQVSTV[]`mmknéßÞØ×ÜÙÛßòpmvo}ÿkmõíôóëêùÿüuozslojfyöñg^afab`[^^Z\\_YPPROS^h}îñæÚÛÜæãÕÔÖÎËËËËÍÏÔÖÝêíöqxìî~quûxmnheic^clggnti_ab_]bnüëçäÛÚßæíøy}úðòÿùðäàäíìêõxn~ûrmjhotonaXSOMMLMWZ[^_`^[ZZZiz÷âÞßÛÛÝÝâæÝÝÝÝÜ×ÐÒÓÓÖ×Úßáô~÷øwxquîðüngebZ\gmøäçêìøuhbg^dyïçäááÝàæåäÚÜßÞßàäáê|m{ø}üpdaecbclw÷öýri`VNQSTY_\TRRMLMKLR_iüãÞÜÛÝÝÝÖÓÔÖ×ÔÓÒÒ×ÛÜØÙÛÛàíòêîõíåæîsd\WTSQ\oøçêïø÷vhb^_ezåêèåçåêèàÜ×ÕÖØÒÏÐÐÕÛÞÙÚáî|^SOTPRUWWRSQQUVUWföô÷{n_]ZUSQOR[exòîâèùèàÙÖÛÞÞáÞÝßßÚÜÚÚâáí|ðñ÷æÜÚÝímbWTW\bròíòoqtmqcZ\i|íÞØÙßåæòöêåãÞÛÛÚÓÑ×ÜÛÖÔÒÓÛë}wmkvþk^ZWPMQSQUYfld^[WTTQNMJLPSZbs~rvúøéÙÙÖÐÒÎËËËÎÏÐØÞãøfroah}éõjlfXY[X`þðêïëëÿõçølhcexöêáàÚßéãçìçîóáÚÖÑÔÕÖßâÞääëwpqkjýõx^VWRTWX^buûöú÷rbb^\YWUNNOOS^a\^\ajlöçßÕÑÏÍÌÌÎÓÚÛßëçûùðtúó|wfY^_WYhøçæåÞÞàÝèðúb]cdmzþîð}õú{ö|o{èÛÔÑÎÍÑÓØÝÜÜáäæìëéê÷g]ZSQQRTTY`_cic__XTUWTONSY]k}ôèêîèíèáÞ×ÏÔÑÎÒÔØÛÜãë÷ýpuqcc\^c]\XWWYcyïùèàãÞÝÚÜá÷adl~íåáí÷íîúo{pqéÜÔÒÍÍÔØÛØØ×Ü|{}tkc_XSRRQOSX\`dglnwm``_^]VOPV[[\gsþý~ûìæáÖÔÔÐÎÏÐÖÙ×ÙÚÞñvùêôjajmgnh^`\Zabr}{òìùëÛÚå{kloõè~mþsmrljkhoøúÜÑÑÓÖÕÕ××ÔØëðíëìkii^\XQSWQOTV_bckb_`^YUSNOSVVMWgbiþæãÞÙÓÏÒÍÍÎÎÒÕÒÏÕßßÞàçîùdjyp|phc^XUYZiojonóßâïýùüö÷ëì|öëíçßéïæòùéÝÛÝàÚÛß×ØÝÞßâè}lkZUYOOYTRUU\]fzpalg]e^XWSVUNORPT\dþãçáÛÜÕÓÐÐÕÛÚÛÜÔØÞØÙØÛáâìwy|l~òpmlgkl÷òmiqwùãÝäåãÞóqó|mfiultnlilöéÜØ××ØÒÑÔÔÖ×ÛÛçöñxh]XYWTRUUUXX]WPQOONOQPQTWOPUUZ^sîéÙØÚÕÏÍÏÎÎÒ×Ù×ÚÜÛÞããáéût|i_gnrone_dd`cljkõäÝ×ÖÒÓ×Ûåîùýz|ö|ýþslqêçéãÛÞåÝåäßãáðëê}fkn[ZXX_Z\^_jcXX[UQUUZ\X`[ZYPOQWYfq|æëÞÕÓÑÑÔ×ÛãâåêàÞßØÚØ×àëìòwphmúspsmk`\\]bvõëÜÙÛÙÛÞåvilvwponnknïàØÙÜ×ÓÕÓ×Ø×ÙÛÙÓ×Ýêzuh\UTXUSV\ZWSONNMNONQPMOYSOQTY_mîîßÚÙÑÌËËÎÑÕÛâÝÝãÝÝÙÖÔÔÚëñ|hgndyýija[^[VZgrëâÝÓÙ×ÖÞâè|zïöøë{öóm÷æßÛáåÞÝÜÛÞßØÜÚÖÝáìpne[XZXWYVZ\^[TQWWVXYUXZVURRTPORW]lsnîÛÖÐÍÍÖÝßáàÜÖÖÓÏÏÏÑÔÕãkfsigmmpfbh`][Yct÷ãÜÝÖÕÞàâíòüliiw{dhzñéãÚßâäÛÙÜÖÖÖÔÓÒ×ÕØÞðkfdmeXVSTVTRNNLMPPPMPQMNMVXRSSX^zqqæßÒÎÌËÏÐÓÚÛÖÔÔÐÔÖÔÙ×ÛôiZXZYYYZY[Y\`\i~ïÞØÓÎÌÎÏÓÚÙÞéïwu|ihusîßäãäñïçåâççâéðîîéíspmbk|mfdfmxihb]\[^\XYXPNONTWRNMQUUX]nùçÙØÖÕØàÞÛÞÛÓÒÒÔÕÓÖÙáûje^]]]ehed`go}ìÛÙÚÓÐÏÕÖÖßìéõd^]RTXZjðáÞãÜÛÞÛÔÖÙØ×ÒÖÜÚàïéït|øzøk___`YQRTQUVQPMLMJKOORZUPSUY\c|ßÒÍÎÏÎÐØÖØÙÖÒÑÓØÙÜãêñl_a^YTUY\^]Y[bjþäÝÖÖÒÏÓÒÏÒÖßêûiZWUV_gîÜÝÚÝåÝÜÝÛÜâÞåïìðõøkm|pyñýrmgv}rxe^e_\[\UQOLNPTWONKHLPRYhôÞÚ×ÔÔÕÖÚÚØÖÓÓ×ØßÞØäùîýyúie__c\Z_ehüçßÙÛÕÔÚÚÜÞÙÛwe_\ZSSY_nøçâÙÛÙÕ×ÓÑÓÑÓÞàçíçíxþóîèî÷ýoh^]^\X]]VUPRQLLMNORQNLJLLMV^nìâÛØØÔÒÓÑÏÓÏÎÐÒ×ÓÚâàî|}ønc]`l_`iaajqòèßÜÜÚ×ØÚÔØàçlmtfcblxûúäÞßÙÜÝÖØÛÙâìöfýõjoønöêzñy{ñghòünÿkgm[\VNQOLPNKMLIKJIMMQ[YmíìÙÖ×ÎÌÍÍÐ×ÔÙÛÙÜÞÝáçáëìîróÿmëìðçîøëãáâäãÝææåü|g^f`^fjkulréáÚÖÑÏÎÎÐÓÚÝåéòqnxvÿþúòùõzlnh__`\\WVVPMMONNKJLKNNMRUVWVXjoûÛÕÕÎÍÌÌÔÕ×ÛÖ×ßÛÜåäíÿõoz|eeöôûéñãÜæÞßßØÝÚ×Úâçèéìsfxwyj[hwvøèÜÓÔÜÞåíügsùxdoéìð{õéêàíîÝäó{úîøoc]VOOLKJIGDILJKLMONMNV]e{ÝÒÍÌÍÏÐÒÚÛÙØÔ×ÛÕÔÛÞéîäçñ}êäðóàØÛÛÜèÞàøÿ}øydhüûlfgb`_^\iêìßÏÌÍÏÑØÙÜìèäâêöíäåôuvxz~ôüyvdcnkje[QOOKKKIGEIKLPORPRVZ^jîêßÖÓÐÐÑÖÜÞÝßàÞÜèççêåvzõÿñtðíèàÞ×ÓÏÐÖÒÜëàåëèìóæßôç}]fa[YbvòåäÚÛÛÚêñpkõêçäÞàØâpíxwýþzçÝïçä~æäôq^SLOMIIHGGIGGJJLIIMX_güíÞÓÑÑÐÐÞÞÙÛÙÞØÚÕÙíáçìÝóyïßçæÙèßÎÑ×ÖÛðÿwl`[hbnysàþtø[[]îhùÙëÕÎÕÐÞàéyyùÞôå×Þå÷øhaj\e{óxùþsìõ{zZ^TTKKLCIJFJHJLMLJZW^þ|ëÚÐÕÖÒÝÜØÙáààáÝçðüfõkbûñÞâßàêÜÕÏÏÍÐÙÒÙßëuolómyçíà}^lrliöðëØÛÕ×ÞÝâ÷pzêçéÜÙçìé{mgialçöwpÞâpäízugVOTJEFFHGEEDFDDFJORZnÛÖÚÕÛÖÚáßÑÐÞÙÎÑÖÚÚïmôönäÕÜæÚØÝÛÎÒÛÎÒÞÞÐ|[ù[Splcðí[yûQqãeçÓÜÓÎÜÕÖôÝÚxå×ëäÞÜßnn÷\[ñ__èüchæìllénXó]KOOB@PJAKLEJJEP\NjÝmÜÎïßÕ÷èØÞÔÐêÙÏäßæ÷ùcmêzäÍâï×ÝßØËÎÞÖÉ×êÍàZzñTXäqYhfPWliäÝoÝÎóÝÎp÷ÕrxÖè×ÎúßÔkqënma~ÔíyÐm_Öèfjãè[Y_LFLEAFIFBHK>EOJTeo÷çÕâ}àágãØÞÖÏËÕ×Íä}ÒvWàßåÜÕÓíùÎÜgÌÌü×ÇáhßßXXîdZèâSUýePøÓøvËÏhÕÌnfÏÞ[ÞÊâÞÍä_áìW\ì^aßïlóçsiûyYtß`XjTDMQAAVO>K[A@^ZDbØihÍßWíÏ]ZËÐlÎÂÞÞÈå_ÝÛUýÍáíÌÑéÍÊæÚÇÖÝËËßÚÖeaãúR|ÚVPv[MyðX~ÌïlÑâ[kÜ]kÐÝùÌÈçßÒù_åøYêÖnfØè^èÛ^bßcWàçJXqGBZP?LX>=RE=RnHSÒò_Ô×UpÌr_ÇÊ~ËÀøwÉáPÝÑ[øÃÚmÇÈýËÂðÞÂÖþËÌcëÏaTÚêNëÐNLÔoKßÍ\{ÂÚRÏÒJ_ÍfSÈÏ]ÌÈZwÈvLÖãNàÐPYÐ_IÒìDvØIWÕNHßQ=\]<Lo=;gF:bv?]ÊSUÈíJÖÍNöÂçkÁÏNÖÇP\É`NÈÎTÏ¿yܽÕp¿ÇiÈÀfÞÂaWËtJÕÚE\ÖMRÍjNÌÍXÞÊSXÑ_KÚÕXÜÇ{iÈÚ]ÐØNöÊ_WËúLÕÙHeÕNPÔ`IÛçFSoBEeJ<MJ9HY?Cì_IáÛMóÍ^[Ë×dÈÇ`ÕÆlcÊøLÕÕWßÊqßÁÐzÉÊqÎÄüßÂÛfÌÚNÜÒQ\×WKÜèK{Ï_dËìPÚàMkØ_pÈÐkÔÉþëÉé_ÑÓ^ãÌ_dÐmNtpKXá[QÜôOlmELmF@UL>IU@AXPJtòQjÙji×ÜmÎÌrçÌñ_×âSçÑZcËä]ËÆuÜÄâöÇÎòÍÄâàÉæ\ÕÖVeÛZPätNõÙZmÐzRâèQjÕ`hÈÖjÏËnèÌýoÍÔ^ÞÌ^\ÔoK_jIXãYSßõQhñLNrJ?QP>HV>?SMFcìM[ÔnZÐÏhÖÉzúÐçZëìOeÐnYÐÏ]×ÈréÅÑsËÃâÛÂÐnÏÍeðËpSáÜR]ä[UÜæOìÎTUÐ|MßÎ[öÊæ`ÍÍTíË|ùÆØ[ÒÌYhÕXKíxKdÕWVÐvHmäLJiL=L\?=OG<NiDLÜmMßÑcÞÂàcÌÎRðÐSNÓáWÙÍfôÄÑ[ÕÅçßÂÏmÉÃ~äÄäbÍÎQiÒZPÙøHmÎSUÒ{UÛÙPhÑ|_ÐÎcãÆ|YÕßWÔÆíïÉÑ_æÎUOÔwFi×KNÕjEfÜMEõU;Nw=<_F9LfBHØtKàÌYbÂÖZÍÈgkÎrGéÏQ\ÈäOÌÇ_åÁ×hÅÄiؾÚ`ÆÉbÛÀøPÏ×MiÎYFßÙH[ËüQ×ÑM^ÈõNÐÉXbÇêLÞÎQ÷Ää]ÇÅ]uÆkNÞçFUÑVIÜÜKZÒZDc\>EdC9LQ:?dNAnÝLZÎèWÎÉdçÃçTÕÜIXÐnSÏËfáÁÛûÄÄzÜÃØíÇÊïÝÅÕüËÐ\xÕ[PêeJjÞW`ÍÛ[ÝÑSZÏÿTÕÎhêËéTåàXiÑælÌÍpàÏþUó`HYóTOâmL~ßRQñMARR<>L>:NXFVã\QÞÝYêÊã_ÓËdøÑ]IûîKdÏ}]ÌÊôÎÀØìÂÉæǾÖÝÆÔäÄÅüâËûUçtFS{RVÔ×bÛÓXZÕõSßÒ\rÊØ`ØÛSfÑücÌÍwØÊùrÑíKaÛUUÛuNhëPiÞUGZQ=>I=;IHAUuLSäaQèÙmçËó`ÏÑS]ÚWMÝäSôÈèðÆÉèÍÂÙÚÁÊæÌÈûôÇÓ~ÐØVeßSDYVF]ÙcfÊÑZéÐlcÔèYåÓkõÌùYÝÚZøÏïvÍÓaåÎ~_Ù{MüãNPï\JköMS{N?LJ8>PC@\\JcØa[ÑÙ\êÐdjÍìRîÝS\Û}UåÛjÛÆàìÅÌßžÎ̾ÐwÏËåÝÉäcÐãMeøKFuzNkØmpÓßYÚÌ`YÞuRÙÛOgÏkMØÔZáÊãzÍ×[ÛÎ\_ÑáTúæJPÜXEnfCK\@;KD:HV=FôRKÚÞZìÌÿ[Õß\ãàSeÎíVãÒcøÇ×xÈÈùϾÏÖ¾ÄßËÈbíÅåTÒÕ_õØYPõ\M~àXgÌÚlÍÈùæÈþSÏÒYóË~[ËÔQçÉajÅßO×ØRmÕeTÙüLmqINßOCl`AP\?>ZL:HdCFëuVÕÎjåËx[ÕøQtôMZ×_Käá^îË~gÍ×lÉÁÓλÇxÇÆmèÊí^ÎÑjÝÏ\ZÛ_KtðLwÎû|ËÏ^êÔZ_ÔôWØØ]îÌøXÕ×gãÒjfÕåUíÕ_sÝcYíaLffGJ`O@PP=FU?<SQATß`ZÔß^ÙÍjñËìWÝÜ[ïß[kÍàhÎÎ^îËàwÇÇêËÁåïÆÐYûÓ^jÒë]ÚàSoßdPñý_ÒÓîÕÊqfÎåiÏÍméÆÜ`ÐÒXoÐüRæñN^wTPïpLgðNVï[LoZI\fIF^OCSN@LgJKØîQðÕZeÎß^ØÕU`Ý[MmfP{ÛeÿÖébØÒóÕÇØÖÁÈÚÃÄîÜÈßuÎÑlèËü`ÏèQqßZ`Øû]íéXvÏäcÍÉþÜÉâpËÛ[ÚÎd^ØmMxïLXæNKÞrNdêXWþQKWVAHYG@PN?KeMJå`FvÕZhÉÙjÊÅeôÉ`MÚßUãÌdxÒëeÓÕbßÍìæÆËèÑÌìßÉß\×Õ[ýÎêqÕïNèÎ[^ÑõRçÝ_ÚËçáÃÉáÌÌ}{Îß[Ü×QSçQFgYDNdJMíaJìÙOaÖbLr]FYfIIcMC^sKQêTKîêUæÉæöÊÏjåæN[Û[R×ÚNvÎkcËâOÚÆîáÁÍÛÄÉáÊÇÿñÊÛgÕÎdn×]TÛuIlîKRå_UÕÍkؾÕüÈÎ\ÛÆ÷vÎûS|êLU÷JEf]G_êLeØ]YÙwH\kIJdI>VW=LfGKtNIÛüNàÇÝâÀËøÎÖWùÍ_^ÏùQß×WvÎiSÛÝYßÈëàÂÕÜÄÍ^ÙÊaùÉãWØÛOêÎ[UÔöMæÖY÷Èàæ¿ÅÝÍÇsïÈÝ\ÕßNZæKGüN=PX?KûMLÞîUàÑT^Ö[MçjCTpCJ{MKwaHaáTdÕmuÆÏ`ÑÍNgÒSNÙüFqÒRhÎtRÝÞWÚÆî×½ÊѾÀÜÌÅàØÅÝmÎÝLnÓQRÚTEéìJ_ÏcgÈÖåÃÌhÓÊcÞÅy`ÊøKÞáFS÷BDíRBïøJ{×NV×TGç^A^j>Fd@?oO?pìGnÏ[_ÆÒmÃÃnÕÄ^WÎôPÝãNwÝQ]ÛWMäwQÝÑhÙÁÝãÄÎ{ËÐñÈÊzÎÎXðÊ_YËôMÔÖMëÌfìÃÙÞÀÑnÎÙVßÓ]õÕUNøVC[T?MW@OßNMÒwNÖçPÛÖNmÔLNèJE}WAoóDlÝG_ÎYhÃÛpÆèQÓyDñåHnÑL`ÌXTÒhRÍÚ]ÆÇsÉÀèÎÀzäÀùeÄÝYÏçKÙØJé×IfÑMWÈcVÃÓmÂÆbÐÉOøÅdðÃhSÏYCëW>nj?lÝGeÐLTÐPJØ\Aüh=Uü=GëDEÜQEÎqEÍÙLʾh̼^xÅSOÌhPÎnIÏíEÚâCüÐKæÁ\ô¾äp¿ÕVÅÒHÌÈUÒÄU{¿n^¿ÙRÌèNÌÍOÌ¿^оlßÀTWÈcVÆmIÖh=ib;Y^:PèBNÍPLÌVEÍd@Úì?iÛ?XÕFTÔLNÑRGÑ_HÎÛNÉÅS×ÌI^ÖIUÌMHÍ\IÈëJÎÏNØÃ`оôÓ»×äÀÜUÇáNÇÑLÒÏLÙËMåÈL[ËNLÆtNÁÒWÅÈTØÈMâÃVwÅ\OÏZEÜ]@ëb?cêG\ãNW÷FIvKJmPDk]C[çMZÞUY×jWÖÞhÌËìÉÌYÚÒMt×U`ÚVZØYYÙZSÜçXÜÒkÚÊèëÎíqÙúkÙÜó×ÜïÏÏÝÓÒéÝÚåáÞæêÏÔÛÏÒéßõ[iæYhç[fábQeUJ[WOXTQ^qZ[ø]ZcSX_ZYb[Riacòm`ôõ_lï^tæýéÒ×öÝöSi`Ufl[bìõ{înîØÞåÚÖáÜÓÙÙÖâÞ×ÛßÝàÞßîõñçáåêâàèÞÞùìçëàÚÛÞÖÐæôåçíßçrèäwùû_[ejbcZSTUMIJKNPNRXTUTNQSQUfi`oèßëëÛßÙÔØÚÕÐÜíéöfgza_wrisl]`ioúïûðéêýxwhqëÞÚÔÒÒÓØÜÓÕÎÖÚÞÝÖÞÔÒÖÕÒÏÑÐÖàÞækoyhmg`\gs_Y^VT^_d_ZXWOMMKRYZ\d~ýg^\]][jôqlzìýíüpëßåòåÞøk`Y]c]^degnvûóþéãÙÚ×ßÞ×çuõüo÷ÞÚØÏÍÔÓÛìñééççð{ëêuÞééÛÓÓÕÑãÜäzéêÚÚùàwúì`ëy_ýzxqmaOPJD@AGIMNOl]U_SOQU`lënðàß×é×ÑÙÌßÚÙóàehygnxzl_jhogemîã|yée_kYSV[iíÜØÐÐÍÉÛÕÐÓËÖÏØÚÏäÚÐÜÙÔÏÑ×Üîèõ_bmäpúòOnö\Tem]pù]hfWOJKIFMOR_]k`[ZeY[}úúíÚÜqãàýòÜæïáßdcaTXTae]icahnòlõæÓÚãÞãìwky]cuk|ÝÖÚ×ÏÚßÛÖÖÕÒ×ÙÙÚéäòèãßêÚÓåêå}nèÛçÝÖçoèápwçäïåîm_[SJECCDAHILMNNILPOPjíõÞÏÖÞÓÑ×ÓÎÐÐÏÔÞé~eaff`legbec[jlnãñeúiYXbWPYd[êÜâÙÑÒÏÉÌÉÁÉÇÅÉÌËÎ×ÙâÝ×Úâåézpahvj}ôsghkUXic]ûçýjú`OYUJMMMOTW]UKQTMOY`ýàÛÙÖÕÒÕâßÚÝáæ|vrh]XUT[aRadkkõë÷ÞÎ×ðàømõog]X|ÜüväáßãäþÞÐÓÏÏÎÊÒÑÕÚëwáïïäóýîçõxÞ×åëÞèÜöaóvþÜïöÞìk]ZOHHCBFEKJHFFH@EHDSlîÕÎÌÌÅÆÍÍÊÎÍÔêäÜãëiV[ZXUYVMV]\mtóäöw\d`_]KM`_lvòßÙØÝÐÍÌËÆÉÅÀÉÇÄÎßÔÖôèximmükdmø{dhîeXgWVjp}éßæéùmjgMIRLLWTHNRFGKMNP_rèÔÊÌÑÏÌÖÚÏØexîl_adPQPNWT`õ`^üÝäÙÎØéÛÝ÷m\YZVh``ìâéìäÙØÍÌÉÉËÈÌÌÊÎÖ×Þàdbzhoòjùâåýïæûù|gnl^ñàãÝÑàøßZHIKFALLGOGFH@HAETSzðÏÉËÂÄÃÈÌÑÜÝÛììîsü^^]OSXNW[]\zÞéÚÖìàõWYRRO[UWëkëÚÛÖÛÈÍϽ̿½Ð»Ìʾg½KåãEÙGÛJl\öeêamdOâIãMÕiâÏëËößfQ\LMNKSLSRSMNJHPLT_yçÜÍÒÕÆßÒØZÐYôßMÏBãXMúGäKéZävÓßÉÔÐÉêÎSÙH]WLcLf\cêjêÞÙÍÔÉÌÊÊÄÉÈÆÏÍÜçlb{Z\úTÞñgËTØw`ÎCÊTêÚ}ÊiÌúÙRjGZ@RNDM?ò;UDAM@VHRíUÔÒÕÇÉÅÊÉÐÒÛÝãé~gib^OUN^OWkWìlÝÒnßÍMÝðAÐCHÛ;ÖJPÁ?Âþߺa¶ÕÁÂ̸ÒÀÈÄÍÍüÓ]tYS]IëRÛ[l\hh_i_éeÝêéí×Öøùd^aH[a<tPAØ<Pi<Î<VÝ<¿GÑÊK¸Z¿þæÈNÖWçXpîæLäKù^NÑKÉcÈßÍÕãËeÎOqfHå?SRDÝM_éYÐáëÄïÊÃ÷»×ϽÜÄËlÇëPÃCØÜGºGÛÏD¾GoÌ=¼OéÇ?¾FÚà?Ä<cT:×4WR9Ö4ßEKÞ=ÒIÞårËêÇÑÆÏÌÉóËhÛã^ÝðñnU]^KpVYæWÚùZÛj\ÕDâo=É;lf:È@}ÎCºaͼT³íĺW³]¾¼M³HÉÛ<½9Ò]EÁ:ÉMR×?ÐJðölÕ\×íÏnÔýùÝJßC]QBã=\P@Ú<÷[?È=ÏlJ¼I½èë¿QÉVÞ{_ØgÓdÚZàUWëMÕUÙÚWÊSÍÞNÇDÝW?É8÷P>Ê9Ë[aÆV¾öËÍÎÇàÅÏÀÖÂÐØÌZÌUäì`ÆNÏæOÈ@ÓiDÂ?ÇoI¾?ÁZ]É@ÎG[N?T=P@JIQIN_NkM×]wÓ|¿âÈÇwÅj÷ÉKÎÚP¿KÜÙB×HUyJ\ÝXXÕPíñOÞ^LßOOÛBäxEÄQçÆS½Öæºc½Â]³ð¾c»cüÏcrÜ_fÎNðçBùQCÚFQÊCÓÙJ¼Qð½@ÇáH½;óÞ5Å8På2È:Zá7ÄAjÓC¼RÊÉP¼AÈåE»>ÄåK»EÏçIÎLWÑNÚÜJÂLíÎ?ÃCiÔ;ÁA_à<Æ>ìèE½@ÆÒOµF½Ås³_½¿w¾çÞÄ^ÊÊO½NãÏ;À?OÙ9¿A^È<ÀAzÊ;¼>ÔÐ<»7ÛL;Ó0Ý>Jâ;ÊBÝäO½M¿Ñì·JºkàÂBºJÍØOÂ>ÐXVØ<ÎGZÕ@Ä?àý?É>ËWZÌMÆMâ÷XÙJÐfÓÚ_¿[ÆÉ{·÷ÀÀh»}ÏÌeÊýÝrÞlYñ>èKCà:áPFÅFÚÎJÄlkÃpÞÆrõÔEqg8ýC>ê:Tw:î`NÉWäÅ[ÙÌLËÜN¿YmÄGÏéHËM[ÈNôÖOÊÚIÅ`QÆEpËFÎÏBÆZ?À=OÊ8ÌÜ@»Hn¸DÀÃX´ÚáµkлU¿ÄH»úM¾=nÌ4ÉM<¿;çÎ9½ZF»?ÕË<¸ZP¼9Ïa6É6Re8Ï?hoJÈLÇÜݽX»îd»EÂÝL¸EéË<ÃHDÃ:ÜiA½?ÚØAÃAåüCËFÐm[ÂDÍWTÇ=ÈbgÁCÄÖ]ÀnÍÂýÃËðÇßÚÏí×òâ\hñBlFK`:äHUÝAÄj[¿]ÌÊ_¿ÜÿÈ`ûwMSLMATK=u?[_@ÊLßÒS¼SûÇLÎõWÊkgÑû`Ù`ZßUkÙt}ÓÐaÐÚVÒ`LÖjFØjHÚZKÜNJÜQMÔ\`ËaØÆíÉÄÎÌÅÌÏÅÌÙÂÓ[¾çMÎNHv@DáCIÏJUÅOØÂHÄÓD¿rKÇCRÍ:Yf;ë?BÔ>eÜEÆ|o¹lÏ»TÌÌLÁpSÃVvÏEðß;ó]?ÒGZÄ?×ÈBÄ_PÆ>ìÐ@ÏdTÇGÚÚJÊLqÎIËrêÇZÁÒÔÄ|¾íÝÂ]ÄòmÅNëÝEáFEx:bTGÖIÖÚõÆüÂÐóÁ^ÊìSÆJ_{?~D?g9PQ?ÚFüÓLÇúÞÇYËòãÏVÊ{ÞÜXÈXdÒMêùUÍý\ÉâhÎûoÚSdèMUûRctLz\LoRbWUÏmjÉØÚÆÖ̾ì;ýÉÁlÅË[ÔÝSaxJK`FL{FOÎlWÆÑ[Ë×TÑìLÑôGàhBVU=RQ=gvGâÊ^ÒÂ|ÕÆr{Ä^aÆ_XÊ^XÏUOÖZGÛaKÚiNÏéTÎäNæÜIjÑKíÓOÞÏJfÏLMËPY¿Sø½bß»gñ»UÛ¼JÏÅAÑÜBÑWBØI@ÖEKÒ?àÒK¿Ôà¼jÈÅNÈï\ËKîúDjDGJ>\BOñGÖ^\ÃPÔÓNÂl^ÅXëÏVÞÍ_ñÉ]zÆWíÊSèÎ^mÈsMÍWGÜKNÞOhèPüSFãHGÏNnÌdÏÙïÇçÍÊoÀÍé¾ÚÐÉ~ÑïþÝZÚUNÖFf`DÛJmÍOÊãSÆWZÎRyÏ\aÝIKî>GwAXèVgÐÝ`ËÓRÍÏ^Ý×nûïßhjÛZn×YoeôfH×^IÈìRÍðMíõL`Ñ^\ÅçXÊÝHÞÝCëÈMéÂWd¾yR¾ñM¼ïM¾êKÂÝIËêIË|J×gHõjHòéVÏÝxÌãààeÒúeÉnUàNLPFKGSXIh|KøØReÑtfÍâUÏÛPÍÌNÓÀZé¿ks¿bNÅxJÄÞAÌè<Úx<ßáBÓÍDáÛEkuIsÞWîØ]ÓÞ^ÊléÅ_ÍÊpÅ×öÂálÇébÍaVÏTOäMNàYUÚfTÝvUÝ÷XÕþÿÓPénDéLKëJbäL}ÐRuÏQçÍRäÐOìÏ\åÍbæË{çÎlñÑVnýTÓVVÕIo÷GðeKßÝ]ËÐXÌÝMØôPÖæOäáWÝßVãÞ[ÔÖcÐìõÊ[ÑÍ\ÌàfÕxeØhQâ[XØXýÕPêÖVqÚkoÎîkÐþQûlGTïJLÝTIíeMnï\aÞõ\áÜzÝÝÔÛúÍÙmÏÎëßÍytØ]YùZG\dCWtIcÖeqÐð^ÿé\WÜøSìÜkWìÚSmÐzsÐÏîÏÄÛàËÐ_ÙÉMgÉZSÚôMmòJ]êJOáQJßkNÛÔ_ëÎñmän]_heXhÞhOÚêBÞÑHeÑbUÌÔZÔÓ\ÚÍTiËbWÏå[âçR[iVPUXOOYÿgzÇõe¾×PÑÎU]Í]NÍìJÜæEoÏIuÅUü¿ÜùÅÞWÍØGÙÊHôÅM^ÆOWÉKOÊPKÊVGÍdUÊe`ÉwWÕûLåîKçwEÚü?öó?wßGãÎPÒÀ[ø¾]WÂmNÅÓSÈËMÒÈE_ÌJIÛQ@þ^DÚÛGÎËKÒÍFûËJhËKpÉJ^ÌJSØShÇíÛºÍã½Ü`Å_KÏ[NÊpKÏìCèàBhÝ@[ÙBTÇTMÅÜMÇËOÎÛLÏÝJÓÕIßÑGo×A^ÒBe¾WrÁmiÐW]ÚNOÌ^PÇ|NÆøEÌæCÙêA{åHîÛWÎÌYÊÂJäÃJbÂMXÉYLÓcAwv>fÌNß¿`Ù¾VyÄNMÇfMÄôMÇaJËõFÍßFÎíIÍíJËÖKÏÊIñÍJbÑN_ØISÏNIÑN@ÜVJÊÛWÁËPÅÐLÏÜJÎÏRÉÌJØÌIíÑJwÛBeØAU×OV×jXÓeNÐkMÍØLÙËOîÎIjÛDgÏVìÁÛæ¿ÑhÈìJØéGØÐGgÚH]ÙFiÖBdÏGSÊQQÆh^¿bZÁ`KÄÖLÌÕKÏÎGÜÎ>[ÌANÇURÅõPÇüFÎ}?ÞÒH{ÍIhÇMZÂVLÂôFÍàEÓÏJÏÈLÖÄJfÀTQÅXMÆ\IÈ[=Ú÷>tÔHxÆUæ¿[`Â_KÈÜJÎÒDÜÐCáÈIùÃ]YÆêNÍÞJËÕHÎËC{ÇLSÊOLÍ\JÌmA×ç=÷ÍCnÄQíÁTnÂaOÆÒKÌËGÕËHêÉF^ÆNKÉXCÑvEÒÝDÛÍCxÅI]ÁQTÁi\ÃoJÎæAßËHóÄZúÁslÄoNÉÞDÙÎAYÏDMÑHLÉVHÆãHËÎLÐÊPÓÅLèÃIYÄXUÈüTÇéKÍá@Ü×>gÍD]ËLVËPLÇxEÊÕBÙÌDëÇFrÄI_ÀOIÅoIÅÜJÃÚDÊÎ>ÚÈBxÃJnÀMWÁGFÅM?ÊfAÊßBÍÑBÎÅFØ¿LfÃLOÅMLÀcIÂÛGÇÌHËÃGÒÂCáÂAYÅFKÈOJÆ_HÅí@ÍÖ>äÎ>íÊAvÆA^¾SU»êT¾ßIÃÚBÈÒ?ÓÌAíÍB\ÈHVÄMJÃW@ÌlCÇáFÇÑHÉÊGæÉK^ÉLTÄUNÃZEÅöGÉÓKÍÎDßÒ=_Í?LÆNPÂRN½nV¼ÚNÅÎIÔÎEÜÊGêÅMk¾^\ÃeOË_EÙ\?èq<qâ@oÍFï¿QeÀXRÃxWÅøNÈãGÔÖIÙÇRùÇZ[ÎQKÏ_GÍÛIÓÌKäÍGgÌEMÏJOÈYHËjFÊßKÈËNÊ×GÌòAÈ^DÅXYÂMñ¿IÈÂG¿ÔEÂIKÁ>çÊ:ÄhFºHu½=ÆÙ=»EO¿8àá:¿LL½?ÊÄB¼ôI½H[¿DâÅDýÙBìÏIÞÍJ~ÐKVÛPTÒkWÌÙ]ÕÎVqÊmPÛîKjÕYU×|KdÝPWÎÔUoÌgHìÓJFÐÝDgÃÿIɽbY½ÂK[Âu?ô¿dEÓÄSGÍÅSNÈËIFÎÐIFØâ?EØâ@JËÌMUÃÆQPÉÉURÇÃZHåËaMÞÅòJiÍqEVÒâIPÏÎZPØÍfMîËsHOÚëJOØÐSKðÐhNáÆÚVeÐÚQNíÖgSrÖæXvÍÌöhÒÌñQlÞvT[ÞÝ^YðÛ{bçÎÖÿyÞÙý^tægQVklWYåØïlèÙâ`_òë÷oýätY[òík]pæiU]òækcßÓèôÞ×Ý÷úßÝxfgwv[Yh~jYYdkZhúö|gmtjZ[jntavëõìàÕÐ×ØÓÖåìèððùýîõîþ~íçåæãäç{jøþl[[`ZUS\ifjuìò÷ããëìèÝÝâëéòlnó|mrûujnz~ý~|meûîxwóèëw{wtkkhba_ckbkl{ðéì}}üpe^`brunuüøñáßÝßãßäêéæîýðøq~ïüs{íàÞÜÚÙÞÝÝßê|u`ZZ[]_jirp|ôý{{rir}wýljrijn|òúppü}ûéèðóïäåèââäìçåøpzñrbmnf\\``X^mdZ]ea[[[dccijnzõíãÜÔÑÐÒÖÙÞáàÝïmîæï~îêäßßÜÞàåæëöÿm_XWXRY_jc]k~vquìííáÞäîëòxvnþóøìïòzøëîrknjfsp|úùôûrpîõxmmojitqqkrtneed]_k]\gpjcfs÷þóåÛÜÜÙÖÝíêîqfmÿôôéèîçÜÖÜß×ÕÕÜØ×ßønn`ZYff[\cfiquhmp}moulaa`hozìèéîïëèæwûïûóíèéááæêôîtzýyplluþh]gfaVTWROSUXV^ie_embiïíá×ÎÍÏÏÒÕÚÞîrmxåàåáÛ×ÙÚÞÜÛãèçíðîþh]YUV]_Z[Z^nnfûßáêçæâòþ~rnzïèééëôýíühjprljnúþvýþmqrsnm|zu|ú{o~yôo`]YWWVX\`_ig`dhfjqæÚÞÚÒÚåêåðld|ñïßÙØÕÑÏÏÓÕÏÖÙØ×ÚæëîlYW\YUSUYXXb_dwÿþôzwmddhj~ôéäëôéäûq|îëíßÛãìáàîûôüj^jh``lte^exg]fZQONQQOUaa`hvuilîêèØÍÍÐÓÔÕÞîêóúèßÝßÛÓÐÙÜÔÚæçßàzi}û_[`^[Y^ZV\c[\jñêãÝÙÚìûø÷ú|òäâþzòúnhjhg}ðù|ûútlo{|gnÿj^b|üpx÷íöñë÷lhfUNSXWWde\[hsegvúñäÛÛßãèúü}îÞ×ÖØÒÒÏÌÌÎÖØÕÓÛßâçÿhhnjfmaUUY_XXX[Z]vö}ÿÿdgn~éìòíôùíáähxynîÞßÚçõçuixpîÿgb[^^be\dmzogpc[WRSU\[``bb^uôõóüæØÛÚ×ÐÖöqêâëÜÑÞÞ×ÏÖÚ×ÐØãÞÖâõzmfWV]qm_bikZ]imcgyýúìÝëzóÜçíßÞèxõåk^lxbZeùö{tïxa``yyzîíy{ê^fñ~åjoßä{uøhYS[cZTYjfNXmbe\næïÛßßhWùzìÐÌØÕÐÍÑÕÎÈÒÖÍÌÐÙÕèl}]ljW^aWUSZWUUlaSN_}b\p{XpÙÞtòÙÐÞj~zspãÜù×ÜáÍO\ÒáV\ØßàãVOkdZV^eòj[ðmTSke\NiémhWXw{íþdoéàëìÚÛÿöéÖÒòàÐÛÝÌÍÎÒ×ÕâéÙÚo\ù|ú[]ïm^lu÷_^jnian÷xol~x`ýèxkæÝuùsþüZd÷vaàvbipéxYnç{méÛïhn|}]dixvüwtvfnî\Wùic_V^aXTlk[çæþr}úøvàéÛÐÏÌÌÎÉÅÈÊÉÊÒÖÕÕßòäÞóf{ó]V^`YW_j^Z`^sbZ[T[XU\^ÿððñèíïúmïøùêß×éæäîæwwgbjjûnijwfg_\]TUZSU^a\YY[cd_f[bdj{srjrðopzíýqèÝÚÑÐÑÏÎËÇÉÌÍÏÏÚÚÝííùwöm}îro^jðçáynkóénhbodMT^_\_wnX[nt]aoïçàÛÛøüòæõjl}õhlzáóçâÝáj~e^]bmbe`h]X\ZSSU\]WX^]gj]Z[c^SbùïÿÙÊËÎËÄÊÊÉÇÇÇÑÏÙÚôþØõûñ÷è]Nkökrîógdún_^YaRKLVTU]k`eÚäkoÛèÚÏÇÌÐØâÚßéôäì^\QTcÞ~uùõáêPYv[UZw^TYNUVdÿ^yfY{nescüZtjRYZ[öÎÎÐÉÇÌÏäÎÊÑÖéÚÝúsmwxd^ßô`eXàvgçßñäëèfYmf_dob`XTb_RYYlSVklÙÐàÐðßÚîyUð[W×õÎêÏç\ÖÜÓÞÚÜâhÚçnj_û^[XMO`J[cXoXp^SjW\NLTZzàÜÔÊËÏÊÊÓÐÎÍÓÕÙÏÓÓm_uhë_YPQdXphexgýccjVN`aU~Ygjb__wwikpjãÐËÌÒÇÏÚÖîòÛðéÝçÞàívø|ríjòv`dUd`V\Z_[X^Z[\gph`øa_ymml_]]`oâØØÐÒËËÏÐÍÎÌÑÒØÎËåñlxìåðílpÿmòôëõéð{jgiVPPPOR]VU_[d]]\XVféåÝÚ××åæÛæâóöÚÚâæìÝÝõ|æ×tö{p}^k]cTNORORMRYXS[f_ZVd^ZZ\W\aýãæÜÑÒÕÍËÇËÌÈÎÏÌÌÖÔãàÜâîççnq|tþl\ûandl}nZ]WVfbggkbpuûj\iòöðêÛÑÖÝÜå{íõûsnøçëùnüìuzvq[]ho^U^[WX[Z[\WU\\mýlpkfhjm`ZXX_tõåÛÝÒÏÙÔÌÈÎÍÌÍÒ×Ø×çïéãßõøêvihmtþ÷qüêüwqm][]_^^ha]dd][W_^\c|þîçäæäßãððæéðîßßãåÚÚâçäòrjeb[YZYRVYVRLKQNOY^YYX[^TUXWZ\zðæØÍÌËÉÄÁÁÄÄÄÇÈÉÉÑÔÙØÞáëýyqf^]]bc_eqfdd^Z[^fh_ihkccgrgkóÿütêâæíÞÚß~öôf_l÷pjyééóûçìj]_[RTTUWZX_]_XZcejoupjfd_^Z\Z\`cjðåä×ÎÌÎÌÉËÎÒÎÎÓÙÒÒØåÚÚíwôêygmûqgtîñwzûsmirmp^Ycb]\bfe`ikkkqvøíéßßæï}vþpwòêðîÞÛßçèçú^]_[RNSVRPYZSOU]YV\]YUVWXXVZ]c_néÚÒÏÉÅÅÄÂÆÉÊÇÍÌÍÏÏÞÕèøë_js]m\WpfbZh{`]dr{iqzug_kma`vÿtp~ðèíêÞæéäêóneiecdiyûpñêìíøÿmb^a`[XX[]^]jkhe^ji]^a^TRVURMSWUZfìÖÓÍÊÉÊËÇÉÌÍÌÌÎÎËÍÑÛÝÙãûõùzmjuöùkyútf_jrgbc_^ZX_c[]iknktíëõèßáåõúûnoxý÷ýöìëýïáïù|~q^]ff[TT^YWanj\\^aZSVWTQPTWUQQ\ijîÔÎÎÍÊÈÊÊÉÈÊÎÍÍÌÎÑÑÚãðöôþt|ýokssh_^eb\alma[goc^qrgc]oxxøæãäëïçìvmiihhuõúøòðïðòñývvqpnmmj`Z[biwzÿùi_bg`XTUSONPOLLR[fuáØÕÑÎÌËÊÌËËÎÏÌËÊÎÐÏÔÛÚÝàãéêêõø{jhbZ\a\_\WZZ_d_`ghb`\azsòæçáéìæíøýûóûýúæåìéîõø{{malxpg_^YTSZ[^eljf_Y[[WWNNPNQPQ[_mìèÞØÖÔÍÍÊÈÈÇÍÑÎÈÊÍÎÍÐÝÚÚàãêáæðúmeb^_Z[_^_[_ejiprjdfc``ejþìñöð÷üusrnnfflwùìãåíp{ótjhtìóý~wk^_fohf{njdbg[YUQOOQNLMPY_mýêçÝÙÐÍÌËËÌÎÍËÉÉÈÊÉÊÌÏÓ×ÖÕ×Õ×ãùtl_[[\ZTRUUWUY[b]Ygkc[cxüu~ôóò÷íÝêçí÷ø|èææáàæùuöngaerýla^]VQSX]V[^e[Y[`ZSRSUPSY_^fvííîæÙÓÕÏÍÍÎÏÐÌÊËÌËÌÍÒÓÓÜÝÛÖØÞàèümjd\WX\_\]cngbdzq_fsyorúìssxô|qlzûhgm}z|îÞÞÞæáòiegnpz}üzlgjfe`\]_aml\[WXROOSQMNZ_]^m÷pöçØÕÛÙÓÒÕÓÎËÉÉÉÆÈÈÊÌÏ×ÙÒÓÜÜäízf_[UVUWVVX\\X`]a\_lndmmlkmu}÷no{ï÷|úëïúéßÝÛÞëìncapf_eef^ab_ZY\_^epn\WXXVUVZ]X\kzlyùïòóêÜÚÞÜÖÒ×ÖÏÍÎÎÌÊÊÎÎÏÕÝÜÙÛããßç}hed^Z^ccZ]cf_^hwn]eîîgl}ýjgmz_Z^hj]dzøùóãÚÛÞêêi\dslbeqþghms`Zbufcmp\TXZ]SPWXWX_rhgjòìxvëÜîõÞ×ØØÔÎËËÊÇÄÊÐÏÍÔÚÚÖØÜÞßá{jljd`_h^XU\c\[hr^`þïkcgûûim{nabpþmhtðöþëÕÒßïì~b^_a\XZombakh_bníp`]`YUV\VLMX[\]axwsóÞèëëáÞßÞÖÔÛÚÕÍÌÍÌÉÏÒÑÐÑ×ÛÖÔÝãàßïpj|omgaa[UZca\[ckvsýöxk{÷pfmsejmntqkryúèÞÝâì}ürdZ^d`^jxijkqzoqïón_b`]YVROOOWYXWbn{ýìåçóöæáãæÝßÞÛÏÍÍÍÎÎÏÑÒÕØÙ×Ñ×ÚÜÝèôxþóülenf`afa]Z_cgfcgknjnp~rdhrptljhhxúêçâëæçç}mkea]ds{psw~÷í÷þnkcfc^YUVRTSYXUX\`lôáäêÝÜÞßÝÞäñäÛÙÖÏÍÎÎÐÍÎÏÒ×ÙØÝáÙÝíw}øvepöt_hji^\ba_^dg{ggjkhjojnnmvjcfdmeoóì÷ïèê{fv|gZdpieegüüx{÷înlúw[Y[\OMR\YV`enm{æÝæêßÙáîêãîwðÞ××ÓÎÌÔÒÍÌÎÖÕÒ×ÞÛÙÚìøîõkv÷éïvvðó`]bgYTaþp`bvj^cý÷g_a`[VYceaeóåíìáÞ}nyôpewövanõónnþùqrtîkVRTSNMQZSPVacgnéÜåçÚØÝîõéqjòÖÔÒÎÉÇÊËÊÊÏÕÛÔÕÝãÙàqgm{few÷lejpc^_e\Z_nýjdeÿymnìïwkjj\Z]kjksëáÞèãæ÷qhwqiuûgdn{qqisõxvwþdUOTRNR\e^YarlwïéñéíæäütjiiréÙÚÔÌÊÊËÌËÌÓÛÚ×ÛÚßÞé}oy|xúãåþuvuff`^[^gsh^_gnjeiþp^Y]ZTW^f`lóäåëêêønlyýëæçæüöðýlevòþrom^UQOPNMV^_]`s|ekóóøíåëõþóþwíâÜÏÍÍÇÆÈÊÌËÏÚÕÒÙåãäé{hnnkorúókhuna`bdccii]]`bfei÷÷riji^X^lkiïàïþõîxifluøîååëøÿ}lc`qxjblg\XVVUXZftro}÷|aoñôúróízo÷ûxôàØÕÐÍÉÉÌÎÎÏ×ÛÔÓÝàâåð}ìåéîðççíûyzi_bij`]j]SU\^Y^`eghika[WZhmüîéêþvúüqxëççÝÙØáòôôqhmùk]cc[UTURQUZ`hux{xlghpumýìùlûçêêßÙÐÏÍÊËËÏÒÕÒÖ×ØØÜêúñövýïöþúñìøx}oc_d{oa^b_Xegeb`ùëíîõtma\`ddn|{l_`c^]go÷îëãåçíxtsjhmqaZ[`_^`^_fs{uzîöxpkixù|skpeiøïðìÝÔÏÎÎÍÏÔØÙÕÑÐÓÙÞåäèååçåãÝáðêíxjng\[^i\UWWQUVX\^fu{þzec_]]iuú÷ðïzsññ÷ìêßÚÞßÜáìwuwkh_[ZXTXYYXZ^]eeeupjqt{þèë}opûøñéÝÙÚÖÏÍÎÑÔØÜÛÞØÕ×ÜÛàæìíóìèëçæçìèïvbeed_]^aZYa_`jyswlpqlp]\Y[]`fifdcb_btüúíßÛÙßâêìüyýzd]]^`[^aliihmmorpmeoúõhoui_^djnýèßÜÙÐÏÏ×ÚÛÚÜÚÙØ×ØÓÕ×ÚÙØ×ÝÞÜØÝäóóþf_^`XRVZRPWaeecd`^b^\W\`__ajrmmpüï}íäàèãÜ×Úäëëüdcb`[[[WRVW[\Y]chgifrxyþèò{nü÷hnèÜÛÝÛØÛÖÒÒÚÜÙÝèçâÞàåÞáÝãæÞÞéìßÓÖäîðèyhed^]_f_foûóüö}j_\WWUX[[ZWV^i[Ygôüz{àÞãÜÙÝãççìnmnrkyjoj_hph^amta_põnhjýn_\b\WdtíïñåÞåÜÛØÙÙØ×ÙáßÞÚÜÞÚÐÓ×ÖÔÕÛÙÒÖàåìêma^\ZWVVZ\]bpki_eZROUTTX[[V]foi|ãÚÛÜÛÖÙÝÝÜÚäëï÷l_^ing]ai`[Y[Y[_d_dksqr}}kccdhfzíàßßãÚÖÝÞ×ÔÓÕ×ÖßèëèøïêãâéæáßÞÛÛÙÜââàíxa`eb_fmrtr÷ò}kgYWUUVRSTPOW[[\kñèçßáÞÝßâßÛÞáëíúpk}vuzúùuyle_jiegmpnjnoe[XZXXZfopwïçÞßÝÙÖÔÒÐÎÏÚßÞÝéäÚÚÝÜÙÙÛØÓÕØÙ×Þéxe][Z\Z]__ntj^dc[SSWUPOUXPPYb`^ùßØÛÙÕÑÖÞÚÙÛãêìímeilf_g~viibZY_bf]iýûmyüu^W^ad_k÷æíñÜÖßÞÙÓÓØÖÐ×èèçëuxêàåíåÞÝßÞÔÏÙØÔÖçlbj`X]ms{óíétnofZWVWRMNOMLNRYY^ûÞåìå×ÖêäÖ×àãàÞîrûôüõïæãí~uoef^jiaktj^^_[ROUZVZa|{qôßÝÝØÑÎÎÐÒÏÕÜáÜÝàãÜ×ÜÝÛÕØÙÓÎÐ×ÛÞög[Y\VVZhimjmf^\]ZVRTZTPPTOPT_lsùÝÙÚÜÚÖÙÛÛØÚßìôózjo~{|uwpi]`XXWY]egnqdeY[Z\W_^bm{îîïéÛØÔÓÐÐÑØ×ÚÞâæãçìïçàáçáÝÙÛ×ÔÐÒ×Þì{de^bgn~ûíönie`_XWUUOLJIKKNTZ]alúõ÷òåéààÝÙÛÚßéëãäæâÞàáîæìqnc]Z[\hlh\ZZZTX\Z[\cfhaqýõäÝÖÏÍÎÑÑÓ××ÛØÜÛÜÞÚÙÝÙÔÔÓÕÔÒÓÚçvlg]YZ__]\c`\\_\\ZWY^WNMMOOS[enøëçåâßàáæåâÜÜßêèõýéçééèê~lke`ZVTV[]hg``cmpeiwnejsqmuîììéÜÕÓ×ÛÕØßââåêîææèçÞÞÞÛÙÒÒÓÑÖÚÞîííufoþrggtvlqmhc\YWPJIIIKLQ\_bm}þ~üñíôèÝÚØÛÚÖÚáÝÚÛÜÝßæòôíýeZXVTPTXXVVY^\X_j\W[aicd~ãßÛÒÎÏÑÓÑÔÖÖÔÒØÞÜÖÚØÓÖÙÝÚ×Ûåëçïregh^TW\[Y[hk^^opnh_[TOMOSWYex}}ëâé÷üðîëêââãáÝÝßççåíûÿðó{zxk]Z]\XWZaceblsmbdnd]_ppkxèâààÜÚÛÞäâÝÚáßÞàãÝÙ×ØÙÕÔÒÔÖÙÖÚÝâèòõ÷njhnullqkdcd]\VONJIHLOQRW`ehgmon}êæâÛÖÒÎÐÔÔÔÖÝÛÜÞãâÝäï{c[XTTQWXUTW\[]Z[XXYZ_epýìÝÚÙÕÕÔÚ×ÚÖÒÔ×ÙÔÐÒÑÒÕ×ÛÚÝÛÝçäááï|}sefefgfgcbeibaa]WXWRRSWX[`dftrtrÿ~ÿòúõïáÚØÚÚÝãäáåêêïøóñþymf^]][]^^][\`b_[^^[\^nu}÷àÜßäÞÚÞãßÜØÙÛØÓÑ×ÓÔÖÚÛ××ÛÛÙØÛÞÝèóøð{r{sqng^]ZURPPNMMMNNOTXYW^`hgcyëðêßÚÞÝÔÓÒÔÒÖÔÖÝÜÕÚàéçñhcmiXXX[SRTSOOPOQQOU\UZmæåéÝÔØÚÖÓÒÖÔÑÎÓÓÐÎÍÏ×ÖÓÝÝÜÜèåÞÞîõó÷útkm~lhdh]YZ`YOPUSMORVUYY[_can{meüßìôìÜáèÜÔÚÞÙÖÚÝÝßßäêtzò~k|yf`g_WTVWQSTUTTVZ\Z_möü|é×ÛÞÚÖØØÖÔÖ×ÔÔÏÍÐØÏÏÔØÓÒÚäÝÜï÷âåü{uýjjcZX]XRTQLLNLLMRSQU[YY_hogtçßááâÙÕÖÜÔÑ××ÖÒØÚÚÝîðvmlni^`b`ZZUPOXSOPTPMPXW[kuýöäÞØÔÒÖÑÎÏÕÓÐ×ÖÐÎÓÔÏÏÓÔÕØÙÚÞìêëûuþriinb\[]]]ja[WWTOOPORVSU^c\]fjfyëæóñèåÞÙÙÛÖÕÕÛÒÐÚãßærwûskhga_ib\Z\WUXZVTTPNOZY[køp{æÛÙÜ×ÓÐÓÕÕÐÒÚÛÒÐÒÑÍÍÔÖÓÖÞÞâîúøkekl_^d^Z^n`]bdYTXWNNTUPV^[]_^[f}þôßÙàåÙÙÞÙÓÐÓÕÖÖØÚâðíñkgqh`^^\[^d]]_YV[]VQPQOSY]eõëúéÚÙÚ×ÑÒØÓÏÑÒÏÕÙÔÏÐÑÎÍÔÚÖÚáãæþsvl`_i`Y]lcaqtff_XPQQMMONLRVWUXY\ctóïâÝÜÚÕÖ×ÐÎÒÒÏÎÔÖÖãþñëuuûob_`^\baVVZTOVYNIMTNMY^^móîå×ÚÙ×ÒÒÔÏÌÏÒÏÎÏÎÌËÌÍÍÓÙÙÝëéúkll]Y`d\X`h__ig_[XUSUQNPSOOZbXWcidtßÜßÜ×ÚÛÖÕ××Ô×ØÔÓÚàæõkx÷wgkla^gnd_]ZX[TRWWNNRURU^gmüëäÝÙØ×ÑÑÔÔÏÎÔÓÏÔÙÒÍÎÐÎÒÛáßåôìønmlebl}f]mze_lhYVZVQONKMONP\`Y\jznñÞÝàÝØÚÛÙÙØÔÓÔÓÐØäãå{møîohüþihnc^]XRUWPMRULKOPMP\d`{ááÛÒÎÐÎÌÍÎËËÏÒÍÎÓÎËÌÑÔØãõõsdgkcgz{ihla\en`^e`XXZUQNNNRXWXgpfmçÜåäÜØÝÛØÝààãâØÕÙÜÚÞï~úmdkypoü÷i_a^XZ]XX[XSTWONTXVV`ltîßÚ×ÐÎÏÎÌÌÐÎÎ×ÝÙ×ÚÕÐÓÙÜá÷rsecm{ùðæíokvxjzûf]a]UPPMJLNMPYVWe{tÿãÝåæÚØÞÞßëöéàáÛÔØÝÙÜô}éíuýêíûøt^ZXVUWZTRVTNNPOMRXUZlþùàÖÓÐÌÌËÈÇËÍÌÏÙÙÐÒÚÙÒØàéùb^b_]m~osõu``md\fl^Y^[SRTRORWV\jkjùåàà×ÕÛÛÖÛîñùonýðíáÝáäåûiuùtlüëótuvhbd\Z``[Z\YQV]WT]`]f}õñãÚÙØÎËÍÌÍÑ×ÚÝèçÝÜáÚÒÞöðómhvùüòëìæáî~úïscgp_TTUNLOONRVUZfdavëìå×ÕÚÛÚç|õëþwëßÞÛØÝêäèz~åðmÿêtbokYV]ZRX\TQUVQSZWS]k^]þåëàÒÎÌÈÅÊÊÈÌÒÓÓÙÝÚØßåæ}b_b]\focbÿí÷ð÷oxñýjnÿcZ\^XX^^[[bdfp|pûÞÜÝÚÙáíèíhfvke|èðóæìxuùûnþõx}íõpu~j]gr_[eh]^a\[^^WW_\[hýúéØÏÏÍÊÌÍÍÎ×ÞÛÜßßÞéôõtbbmgciúüôßÞææâéòîöjbhdZYYROSTPRZ_Y[ksþåßãßÞßæåèõuøìòéßßâååäìéê{vù÷~þxhfce_[]\Z\][\[YYY[ZY]`dvèÝ×ÐÍÊÉÈÈÌÍÎÕØÚÛÞæçùnec]X[[Zbzúùõìêòìíÿvtqjlmb]^^WW`ebcio|öêçåääæçëórlmomxòïðó{}öúwkqwþù~÷øývxýttst{piiga^[WVWXW[cgtéßÙÒÍÌÍÎÎÐÖÙÙÛÜàãéð÷rgih`avóíæãàÞÞßåï÷ürinlaYYYUSSVVXX\jpnyïççëíïòúû÷üîêæÞÞÞàÞáçìó÷yúïzvþxlkgdabf`^c_YYZWVVVTR[inùßÜÙÒÌÊÊÊÉÌÎÐÖÙ×Úäëíüjdd\UY^_hs~xøñíëêéxp|mlztc_fa]]febnw~ðêíôèç÷rùöediienðùøíñûûùxrý|xþíìùëèözöíwoþ~smg^\[URRRPXenpúäßÝÖÐÐÓÒÑ×ÚÙÜÝÛÞçèåð{sulcnûøíèãâêëçèìükhpd]^[WRSWUW^belyñéîêèôý}úóútvÿ{}ïáÝææáæîóð÷ztr{{~~opkacdc`_`\Z[]ZVWUW]hþéÞÛÚÔÏÏÏÌÌÐÒÔÕÜÞÜâìõõ{iic]]\_cyxsûðíûðéôskptpkih^\^_fkpüíêèàáâäèíùýtlib]Z^cgny~wsöôþ}ÿzsýëèêæáçõý~úû{wpke]\^ZUUX\]e|ðñêâÝÚ×Ö×ÚÛÚÜàêìéîûôðóû÷úonxþîæàäæÝßçéïüpspc``[TVYZ^eghrúýøêêý{úÿst~tkkcetúüýëçìèßçüîïmxëêø÷ìösptjjna\]\WU[\WXeggðéðäÙÖÙÕÐÔÖÓÔÛÙ×äîèìxl~}gfn`\gg_lïõwïå÷yðòlwõthii__u~qùæçäÝáìâÞé{wzc_hcZ]_][_ddo÷ô|üïvoyroðÞàèàÜâççì~óìsbed`_bb\^knmt}øêáåéçàßçââéâäîý÷óóðîê÷z|~up{îâßßÝÜÛÞíîúmkj`YY\^_aihnþ|}ÿ~õüþ{om~öuuuruüývþêáåçàéïýogeqþýóðìïêå}jhg_ZYXY^`_`kvüðëíëßÛÜßÝÚÚÙÛÜÜÝÞëõñ{zöñxkrnea][amnmûçáãââêïìñ}yriiúëþýæâêõîììé~llkc^eg`^af`^agkvýs{óõlhnnwëäãßÛÜÝØÛæçëvaaha`fi^_ifguyozëïvüçò}óïðçáîôèåíèÝÞó÷î~pkoyòèìæÞÚÞäÞèÿywjac`]amjbt{fdnzzú}mlxzimøqoýóynîèìêçîúì÷ecnkdwëëíçäñïì}nlbWU]_\]mlizwnùåêòäÞæçÜÝäâàæéãìùñèðwîêzii_WY^]^wõ{ìÝÞäÜÙäíëôp{ñývðèó÷çëu|íýovwe_g^[`cYZ`^\gyw|øø}y}mmùî÷ïßÞÝÚ×ÜáÛÞóûôh]ff]\fi]^b_atzloþ~nqìïüéãíñâáãßàéèâåøztigpu{ìèéêåÞââßçþqykfnhbevm_kvkizzmzürjvsikývcmý}xîéïìçïstxjiu~zñëîîçé÷øó{ddlf^_dcgjegmln~îîöïæçæßßáâæìóíëñöðùýñòtlkd_`mki|õöôæßäæçêùòêóúõûÿøîòþúï}lwxlfghjljib__[]dcbhwýüÿøùûîðñêëðïãááÞÝáëæëxuwe]`h_]`f`_klhnmfkñëìâÜêuîäñøèëûðìííçípzëíöíî~{ïíðçßîròëwsùwifhhm|pcuî~pûýihp|s~ómbnqdi~phxëóüìê{ñßì~ïîvnóìx~êüiýònglc\^kb\im^iùwm}óøìÝÚÝÙ×çýäãø|úviwó~zòþdrê{h{ôloíëýîà÷rèç{}çîpÿéí~ëçûðåûk{ýgiôûeg}fYbd[^ebe}ïÿ{éäïéÞízïònsëìuðßð÷Þáuona`gh\[no^fzf`lþ}ôÜÙâáÚåïãêkk|slüï~}åàîêäëö÷ûovìîzÿñ|þïøooøwkøïzúääõðëùsvwizëwdhqg`kpc`vsiyøuüàÞìîåëuutdkùýp}æäêèéþike^`b_fnk_ewpn÷çâÛÕØßÝÛàéíýigmebltpuëèûîáíptùutõùsüæí|ðòùìíïóêÞãíæéùû÷ýnnuqwwodhm^^feeggado~û÷êëôîîù{y|yýíííÞÝäêææûvm_]]___b__`elmðãáÞßÝßâàåïúüpjgdgwþþíìéåîõ{pûøûýuùïóôíôöíõïïþôéíøû÷øzorpsùø}|wzznmnjmuigighnþöþóëözþzow}zvÿîêìçéëëïÿjgfa`fhbbggeipýåÞßâÞÝááãèíöülcefejpst~øütw|tõê÷÷êèíëäáèéæõþïìððîûz|ýxhyýv~ûwkmoigprkipfaheelp{{üïøöæë÷ñîõýíèêêâëøð÷jfjicfkd^ab^`p{zíçíñçâççÞæòîòtkrrkmponx}nxôîúöëïõëçìéèòøôðüýíï÷ò÷tssoirö÷þôóst}sonuoiprfafbajrqs}öûôæéòìîúõïïïó~qlssklsoqþvmighai}þùîíôïêçääçíóîþikmgfijkkosqrýøùîêëçáâãåèîóìïùîèñùñ÷xuz|yyüunqllpyvoxvpnokb`_]`nvtöíëçãáããæëëèåíôúojjrphllfhklghjfinqrÿûxzûðëäàãåéí÷ý{qlhkowy{|þøóïéçëêèðõíèíîëðôððóôø{ysmmu~ypovz~úøþþõïù÷~kfa_^dlnv{y~îåääàæêéíòû}ogdggjllmm|ùþ}|nivypyñô{öîðìááêêíõzomcdghhgqwqv{~÷êêîäåíéãäèéæéíííòéãðû~|mjlibaighþ~{ôèí|ùôtcb_[drrüðìîæÝÞæàÜæêäëóù|l`bd^^jicp}okkldfne`yúnvõðìãßßååéîíîxuõÿnnx|züóvoúzlÿñ{|òò~ýéò}íçïîãì{w|xoy~ljysm}ïîëáàéìêûkhh^]cgmÿùûîâáìéàæðëë÷ÿvg_^_]^müpwïýrü÷po{vhnðÿoóîúïãåææéó|ü}kn}mfmylkwþrxíû}íð{öîúùéåéëááèãåõþù|ihuncjvff{þyïãéíãéuluf_m{q~ëîùìâåëàÝìîæõlprd]`c^bnfew~loôvimuigu{mvîôðÝÚÝáßãîôõupôûjk{kahpjkõîzýúgcyyqþìêîêäèìãåúöëúy|}kfrvfl÷ýôàÞäáåíþpnhh|ÿnlysvúéèæÞàòúóidonfgmnjjhdhywkpöûmoznipvr{íçâÙÚäæåëþsstounba`_`fpwûêåýjpnmyû÷ëååêêæäæäãïùîë÷pmkfilggûìòðéèëîïzmowtpujgtñôðßÛÞàáît~üomqqgii^Z_g`bnqlx~kdouimùø|åÙÝáÜÝæçèýp~ñohph_gwjiýïypûm_i|kjòëöûïýzæÝçèÝáñêêtixýifý|mìäöýèàìîèþi|öhfrodsôöìÞÛñþèïvöðoj}ýfac\Ycj_güýmlngdr~ipìòöæÞçéÜßððìþmþ~gi~zekvmm~{hiüuhmxkkñðwyòùùåÜÞßÚÞïòðys||nsîót|ûxùäæðóí|hmuimøufsóñíæå÷úåéþóòxx{ncdmd\_lhkÿtgforlpø}zìñ|øíèåæëõúðöopzqq~wtxwtkjprsútho~}y}|w~ïíóæÝàèçëú}õövyóõ~ùýll~òüôèìøóöqtõôsuùøöòíðïæèòôðût}}fagedfe_aok_cjgclrpúëóú÷öýøáâîåÞè÷ìè÷ðéølzê|hoh_esochofhtuipó|wîåçåÞÞîêàæëêäèçáîüññzuùüsþùmgkpjoxmj{ðÿwóëðìçó{ðéùzõ{nvûsk}ülhjhafngamúun{lci{xrõëîòìøxîêøxöîõîéóx~ù|vytlo~oi{þw~øùõèçöúîïzóëøüêçïôôûuýí~yëïxýïø{óë}rðëøïë÷úìçð{øúms}kfjeadjkmysc`ggfjjjs{~rtøthxøüïæèîïìïíàé}õèíöðíüolmebigaeikpþûxùìëîåçìèãæèåäçìííõøôøþõóñðõzmxyiguxpry~~ðñöïïóþüõþw{~ûyuppzslmwxmnyssmjjkihjljfehnpuutýøòïòèæéèççãåéíñü}qeggiopýøýïêëíïñìéêîîëêõv|{tÿû{ýîìïîêð÷ððùz{zûð÷yûëìúõêïþü}mlyyorphimd^bffjzüouúocelhjpqipòýuûüp|îïïçáèìääíçÞçüùörie_[]fflüõÿòî}{ìåæäßáæâäùs|{nx÷ù~îåíôîî÷îîym{|lhtsq{õôòìëÿusnpüîòøóôymfcbnpmþïûwsk`bghghihjnjdlunp|ÿ|~ðöûîæææßáçãäðummiionoøðýþüqs÷ìéêêåêô{mmzwrûîíðîèéìæãîèæñîêúnpúóøöìíêãï{|phkq{mjwm^[\[_hhksþwhfgcjpnr~}svzpoüîúyîïùù÷xuúêìèäèéãé}mpi`cmnj|úpm{~üðêììããîòüyýìíôíèëù÷íñõëëððïø{uocg|þxõìíçãëóïîýtü÷xþùrhikjntnnyþk`ab_blllpvheljjz÷þ}óïùxystùòòëåââãäéôòösklmjnmfivqmzø{ûóyklos{îìíìåéóïæãèåâãäßáïóõyüîîõíçëîçæìòóvloroigb_ciihkkhklf_fkghqûz}ûwtýõöðìîîêéöpnqnq|þòëìúzöõx{þrimnhdiko~õ}vøó÷ýýxsþðïêàßåèçëïèéõýðêëëìýoprr{÷ôðëíûóçäéìðõõô÷zzû}yýüuknlcbcdipojn|}iinmkqxp}óîñö÷tmÿóÿüììðïðöõíí}yõù~|ujhjqnlpljmkb`kpwùíçèàãìéçéêéêíïíæéíëíïíï÷ïçèïðìïóêíúöîúpqomo}ûoongbbb]]gqoûêò{û{lròòusùõôìëõ~zwsyòü}ö~mlqtvyvszòùuzwnoyþyookggijsîíóèÜÜáâãééáèøóõ}ms~mk}õx|íðùñðûþíëøîåèëçê÷÷ìêïðìøvtl_]ddafz|{ó}kddcfpoddqsjoû~px|~óåéûñë÷ùéêÿzððùìéöûîûlrvk^^^WXcklõåççÞßííâçúîç÷|~sikx{xïèòíàâîíçëïëë÷öæïûðóqpøõz|ùpfed^`qro÷åè÷îîtime_cf_^jkbjýþnuýzÿõò~|ô÷}òò{}ðî÷îäçðíîyxwh^`d`bmù÷ëßÞàâçðóðþnn|ncaf`dr{úìçêêäãèéàâéèããåáãéêæí÷ñîýv}shdggbfklp÷ùlge_[[[XX[][_ijtòìííéæííçëïçåîïëëíèåêëæí{~ùrid^ZX[^^e}ðîãàéïîï|zþunxwhl~zzñçæçäáæçààåãâêëååííéðwü÷s{ðþuwvlgklgjþü~õúmda_XUYXVZ^\apqmþîô~ðî~üêìíåâèèááíêáåòïî|þövgima\cgcmîéêåäîóõuejvkdlpkoùñõçÞãçßáçäÜßåÞÜàãÝãñèç}uøóÿúí÷u~~kcihciytmsrc]^XTW[WW^cak|{vôî÷ôêêìêçêèßÛÝàáçïëæñþöøxvwked`\\elvðî÷÷îí÷vmjdhmlpüøùóëæåÝÛàãÞÝÝÛÝãáÝßäçêðý{xtÿöðñùúzwyrifhlloonuwlb^]ZZYX[]_fmonuÿxry|~ôïîíåáÝÞåèîñòùø÷ñóùýxqtsjfihgxüÿõëíóþ}pkkgbfmvzôíîêâßããÞÞàÞÝßÝÙÜåäæõôî÷}ûóøöéìø÷íûmqnhdcc`gmb]ac[Z^\X[]]annhtülj}õúôééæÝÛÞáÞßíêåîòîíþýîüqt{f`ki`jypxíëysþodekfhýþxðåêñèÞèçÛÛÝÙ×ÜÝØÞîîéûlvÿs~íöúêçõ|öþhejb]chbcme]_c\Yad[`khgqtddljdrûv|êåëçÝÞåãßæèàèøîëþ{éäïóïyghh`gzts÷ëõýþxhgkbdpxmzëîúòéêîäâåÝÚÜÞÜßëëäíúñòsqøø÷éäêíëöoif^\ac_`fa]]]YZbb[^hddllefkghwõûòãäêãÜÞßÝÞàÝÛãïñó~|ïï÷øûlehh`dsohvùxpyoekplix{p{íôùïëçêâßÝÛÙÚÞÞÞæèèïþÿþpmovwóðùøô{kifbbhjhfkh___a`ekgdhkljkadf`afnnxóêêçäáßãäââèðó÷}~õëììëíüsouswþÿõö÷ý~xpsxokjmkhwü~{óîììíéäßããàÞâåáßåìñ÷qkoovøðôíïúsnc_dfa_gf__baadba__^]beb^clfhuûzùéêëäÞàßÞßàÞàèñôürwðìö÷íótt{þzÿ{þù~pq~nkt}nlyzln}ù|ûéææãßâÝÚÞáÜßïíãè}÷ìøotvnn|||zqiekgafpibjpdbkniiumd``_cb^^ekdh{úzñçâêãßàäååêèìú~ûxqþéíðêé~q|ø~{ôó÷üõüôò|t}xiizþnwñðûïéêíëêæãäáàÞêïçãêðëç÷nxü{rvuvnjehfa_fichpvlt~~lklf]Z[[\[]dkhgqòøüëáçêãâäçããàæëòðó}þíéëëåæûÿøúnrûöÿþûüóöú}þlhmxpntøö{ôííóìåßâàßÝâíñçâíéãæóýzznhggb]\^a]^_eglqþyoúñ{mnmj_^_a^^cjicmùòýíçãìïêçììêæçñðìí{zòæéîèæöÿþ~ý|òêçéëèâêùùùpgn{ynvüþpt}üûÿüôéëìêæìöíáéîíçèðú÷ózpppg__d_[^m}u{ìçû~÷þhadg`[[b`Z[^fci{øþôêæêôïäãèåáßäéçâê÷íæçñôìéüptû~uýåêõêâìpqý}ffs~nly÷}uôåçòðåàðøçãîìâàêéãàçóòñ÷rikf]Z\\XU\hik}ééìñ~{wkihj_]ab[Y_hhj}øóóëîïíîíèìõòèåòøìåññíìüöûíóxwòéîôàÙâëæãxjvõsbjývfdmüqnõäîýñäùhxçéÿéÞãïçÞãïèãåñuqql_]`^[\cnoýéâé}rkmf`]c`YV[ZTVdkbdÿëþr÷çìïãÛÝêìÞÝôøàÜìöèä÷þêæýpúî÷xöèçëíû}milmlkllhccenùîíéßâíúìëùñÜÜåèÛÚéöåÞìüðìqcerbWY``YZishqîðh`lud`qze]]^]Z^iiitýÿy{ûùïæàåäàåïóéåìèàê{ýèì{wðñxyèßæëàÞît÷éüktõzhjrdZ_suiqïìrl}ñýøâÜàçßÚßëêçèæçîïíò~uqmddkmkfnøxjjpkb^fd[Z`ZOQ\]X[ptcf{ùpoêÝåìÞÖÚåæÞßïìÞàóõæê}~ðõ~~ýø÷òôþ{onzýùýúunniehptjmøôúòåíûêÜÝáÜÖÛßÜÛÞéìãçulüõh^fla\lùl`l{k]dpoklpnkfdd^[agfbfmlilqnvõííêëìéæë|~çèúõèí}zóñtoòäé÷ðàäÿ~èèöóäçütòòkdmtqkimhb`fjfmñãåãÜÚÚÚÛÞàààåååéòðíýoxöÿrxõûkgmjc`inb\^bYRU[[Z^ifcilmlmzîéæàÝÜÜÜÜÜÞÝÜÞâãêîöõþoyÿspþ~sljhfgsúúúýðöpjwztpþþpmxvjjv÷ðáÝÛÛÛÚÜÝÝÜÝáééíòxpmc`epll{ösmotmmtsmkomndaachlqunikd``kpxûðíîëíññð÷îèäåçåëõ~}~ôù}üíïúõëð{÷éèðéàæøyyplmxpkfgd^Z\`^bqîéäÞÜàáÞÜÜÛÜßáäé÷û÷þw}úùòõ÷ywoopÿpfhlf]\ZXVY\^^eihd__fjkôéççßÝâçßÚÝÝÚÙÛÜßäðüù~ýzsovnhflkmq{{~ïîðþþnov{oq|thchccjy~íâÜÚÚÜãáÞÜßÝÝãïóugfkf_eikmxuomwzv{omv}leba^`cbajykhghdgmqoûïëîöüþêæèèáàâäãêðééñùô÷øûûszôíëëèêçááìøûüuspmmkc[YXVY]aepîéæäâáßÝÝÜÚØÛáæï|y|ulo}ùö÷÷üüwryvkfnka\][XUVWYZ\]`bemrx{òèèìéçåâÞÛÝÜÛÛÝÝâéèèñü÷ôþsvnjjoqyt{öíìúöîïv~ïñ|üüpb_d`bahpùôìåßåâÝÝàßÛÝäìíxojg^`ifhn}npÿùsyüôúý~rolhcb][\`\Y^je^iomhw}}yöëåäèåßßéæááëéæêõêãèñø÷z}|þ}íêéçàäððïùossldc^]^\Y\b_drò÷íàÚÝÜØ×ÚÝÛÛÞéêîõskkvjepzqjuvmiqpkhidba`a][YYWZZ]ahiq{yøñòôæäâáÚÜàÞÛÜàßàáëïìëùõøütmllnlsùìòêâàìçâçðùûsjfkgc_dccdlvþõéÝÜÜÜÚßçéèðöþynjkeeejglrwvþ÷íïõñõö|{prhed_YWZ[YX]`b_gjifný÷÷îâáãæÝÜßäÞÞãæßÜáéëåëîöùû}|õðîìêäæëôíîøohb_\[^^\[aehepöíëÞÖÔ×Ø×Úßåàãîw}÷xjmwskkyslhryrhjrnhfhgb]^\YWY\^^_fkielxwo~êåèàÚÛßàÛÚßæáßãíæãëýüíñrm|ûtqïèîöèäêðíçìyjljb]_ba_cgikqùðëåÝÙÚÝàßâïüòðzqv}tlzöù~üñô}|îíöy~ûqflui^^c^WW\\WW]b^\^ccbj{ôîêáÝÝÞÞÝÞßßÜÞÞÞÞàçêéèï}üðð}þéäêòêèót{õufbhg^Z]^[Z`jffvìíëÞ×ÖÛÜÙÜçñéèîôòìñû|ñíø|þöüvzyrmlpnjcgf]\\][WX\]XZfke^hrlkzäßßÞÙ×ÞßÝÝãéáßãçéèóúôòüou{torõííôðìôû~öòtmmqjb`bga_ekrp|íééãÛÜàçéêùöðøý{û|sp{î÷øôëè÷óïíúx~zwmoqkg`]^]\ZZXZ\ZZZ]^]blùïéáÞÜáãáßÜààÜÙÜãßààèìêîîúý÷óïîíô÷ðzpt~{jiqzi_aaa\[^`cetðçãâÛÜÜÜáåéãèïíéåõ}ÿú÷tvüóöuxz{ohjjicaegh^^_`b]^]^_]_aggdisòïîæÝÙÞáÞÝÞçåààêðêêëóöóú÷{pqwø|ûõíìþþüíð~ôíèôutqoc_cijem|ñîôéæåë÷ñðïüÿóïîþwooypwýëêúóëç÷uÿûwhgmnneilic\]\[WWY[^^]`ahipùêàââÞÛÚÜÛÚØÚàáßÝãëåäéý~ñïöyøóóúvuopmint|siggh^]`dfchuóîïáÜÛßäâààééäáãðóõûxkvýþwwúýýxnlghdabfiddjmi_`ab^Y\`h`^gknjtíäââÜÜÜÜÛÙÛÜßæçêéìòôñíû}ûñîzr~íôtÿòôtrõóùvsxqnhiiigbhoyøõðêäæëíëçîðéæåòúøúyjs÷ñü|ñëìúÿú{ogjmjklqmkomibb_YX[^\Z]djffvíìøîàÛÛÛÕÔ×ÜÝÜàçìééìêìëëççòÿ~ïí{suýuilu}kdjlb\akgaaltsuúíìåçéèäßââááßäèììðrxýùwlr~|igotnbakkkgkmjhhkgc_^^\]_`bjslkxéâïíßÚÛÞÚÖÙÞãâäíÿþíñù}óììí÷þ~øûywûñúu}öð}nnog^`hlgfpüýon~öù~ùëæããâååäçíõóúplv~zuþ÷ÿljqþ{ikxxpkmupliidd^ZZZ\[\_hhchnùíðíæÞÞåßØÕÚÞÜÙÞêíçêòúîèéíðïóø{|þûô~qrzütjhmj[[emeam}|npöìîõïæãäæåàßãèçëìúolqzsqstylbdllbj~õylsû}kehhd]\_c`]`a`abcer}{øêàâæáÝÙÝßÞÜÞêíèàæòïëêïùñíïúöìåèñïïõývpmml`]`idahlzmiyñòwtóèíðäÞÞáãàäçîþw{ýysxÿ}lfimnknwù|mpxyiaeie]Z]_^Z\adb`cjvt{ðéäâßÜÜÚÜÝÞÝÝäçæßãïòëéòýûñêïöíèéûz|~rijopfcffhechnslmsýö~üóêçëçàÞáëëéçõ|ùõûppu|uiikooku~öýs|ý}qmkgc]\]^_^^aff^_gnjlþêààâÝÚÛßßÞàæîéääçêéêéîô÷íêõ÷ìççñþýøyigjmhbdkokjp|zjiqttln~ôññëåãçíëèéíðòóúrmpÿþpoyûzp~ïîüxýþ}qllfb]\__]\^aggbeimlioôçèêáÛÚÞßÝÜàèçããèíèæèìíéëí÷~ùòïûy|þ{idhkg`enyonú÷|mmqspim~ïñøìåáçîìëëñüøõûomr{wmpyøúyýîèôzøôûkgkic^_dfd`cdbaacfkhflÿîõõëâÞãäßÜÞååàÞäéãßàææâäéò÷ôïîõ÷îíùngeifbahusntý{kfjmf^ep|wqùëêïðêêêëïïîîõ~üõóöú÷ðøw{óñ~q{óýjcjkgcejkiddedcchjkllrzýúûîåàáàÞÛÜáäàÜßçéâäëëæèï~~øù~wzõúummmklinvzÿos{þvotywiiosniuóíô}÷ïôzzöóöþùóðïøþúýöùû÷õøxü÷ùrgmptjlxyqffeb`acedddggilnýîèæåàáâçäÜÚÝàÞÝÜàéâáçîðëó÷ÿzø}tommnljlvwmknmomgozujfjonkwîéîôìéðùüðêìöôëîô|xýýÿxzzprkoxvrjmssnn|ùwgfklhegmlg`gjkkp÷ìçéèâäæìëåÞßççâäêðëçèíûóï÷}zýÿ|svý}|yþøö~pvü}rkopmb_dfgdjþû}svöúþúïåçïïììó|{÷ðóó÷ôõ~nourvqu|{wtyü~mfllf^adb][]afgl}íèêëåãâåâÝÜÜßàßßâìéâåëòíëôwpþÿqmptoohmquzo}þyqllhfc`eksqsüïôzzðîñòêæåçîííôýz÷÷ùü~ýskeglklnu|ôûxúóñþz{~ugcdb_^^difguùøùúíëéèëåãäçæäåæëéãäãéëèìõ|þöü|zùôõz{ñòù~ûýykfe_`^]bhhilqxzvt~ðìíêááçìëèæïôëìïïõûýukkmmnjpywwp|øûõ{xxne^^]]\^cgien|~÷ûëçäâçßÞÞãåáâàââæêéðóñø~pvþ}xtw||xpþôõüúò}oghgcdbinqpp~|þýúíìíðëæéêôöó÷ùýøòõ|uzxokmnnpqvûû÷üòìêë÷ð÷tjdhfc`^bbb_dlljk~íëìîéèéêïåâäåäàääêìëòö~ùùÿøy}ï÷ôîôïêøûðxqd`c__\^`bdaksps{õëçëèâæèìëèéìöîëñ÷|úøzrnqpvooy{üyyø~~v~mnnef_ca]dd`bemnpuóëîèçæàåæåàßÞãèçíëöõ~þ~lnxr|puûù~ýíóïð÷ðýxpnolf`dfgjjstqxxûóììðëëéðøìó÷ýøîùþwÿýywm|~~y|íòíðïêóõûþ|urjilhc__\]]]fefkl}ôïñíééêêãàãâßÞâãæíéîîöwö~ùþöîðìôòíòõzýymiefb^]]`]`cjpq|yöìêéíåãäåéãäîôõëíôûþðvpnuþnwxýô}øþø~þ~nvmlljojlbefcedozzwwùîïñìäççìëäéåçèæíìúõüsurÿyzöùîìëðñëìñüùö}}opneb^d``igupw||òõóñôîíðöðîôö~ïôýüyü÷}|zîsóæðãzìïõêþzmunnkdkkf`\``]_eoimm~üøôùäèâçìæâßâåÞãæéîëôûuýôöîòìîìîñèïûpnfvqkicb][]]acgoxyÿöïíìòìâçæçêçèëòìæêõ{üþyxpùú}}zøøzx{üwnhgkeiginie_cfnlk÷óùþüìíòôëçëìîéæèìëéíòú|úyutr÷ûóøòìïìóìëñøyyzvsuxnieafefhn|y}wyù~~u}úþû|÷òòòùíìôüûõú|~òêíñðêãéóõíôytlpnnjijba\]b^_bksmkkuþzyüëëîëêâáãâàßæêìèìùðôïêìíðìëìòøîùrkfkgefgga__dddkovxvzz÷ôðöîéìêîèãæåçââæë÷ñþvyxøûxtwÿxqquynljlqnkijjhfhopttwû|yuyôøùñêèîîîêèìíìêíóú~úyz{{ôúøöõñóòöíëõø{ö÷wtsþromlqikjimhkkoploktuwüýðìíîêãåêîíìô÷óèæêèêëðúõüó÷{zsvifc`c^^^_d`abgjlno~u{ýöíìëêåâãßãßÞâàäããêíîìðôù{ô}{zpzrojiibdaghghinkhhgojnuyööððîéëêìæáæäçãåèìñð}wssþvqrsuqup{wqvjpojkglmljnwllot{s{~ýü}öüöïõõôõù÷÷øòüúûöðóñóîíïõûóñõîîêêìïðó||stwopllgec_b`_``hklko|{|zûíïìêæâäääâãåäåäæèêïêîôôôõ}zmopgc`_^]^[\[\]_gfkknzzþúîêëèèäßàââßáâãèåææéóóù~xv~|xsÿþwqlppjecjjhfdgeecgllnu÷ððîðçèèéëååéëëççéîíïöøwtsptrx{yy{ýwqquxurkjtpkhlnijhkko{züóùùùòùòûúîõòøôõìþûôòóúøóîôôôêíìçâåæàêëìívlrolffhd`^^`_aeipuwrþ~úûûíòìëêáãäææåäèéçäéëíïøîëáÝçtïlk}^b_^b^Y^_h\[_ccpll÷qò{éîräâäèäìîïðàôôèàîîõííúxxêxôïqþë{k~tieamügaoj`jb~ìwxããçãèßßíìåèßéãßßëãéðæývæðw|jxknmíùpáýzvsõhmlm\ygVnWhZcøs~mvlí÷wïiþê}|vë{ÿv}}~~ê÷øèíyèçqêåÜêæÛÜíæÚì~þðûÿmo]baZfT`ilYcwadpýYóâföáèâ
\ No newline at end of file
diff --git a/codec2/hidl/1.0/mts/res/bbb_gsm_1ch_8khz_13kbps.info b/codec2/hidl/1.0/mts/res/bbb_gsm_1ch_8khz_13kbps.info
deleted file mode 100644
index 2dfbe31..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_gsm_1ch_8khz_13kbps.info
+++ /dev/null
@@ -1,17 +0,0 @@
-975 1 0
-975 1 600000
-975 1 1200000
-975 1 1800000
-975 1 2400000
-975 1 3000000
-975 1 3600000
-975 1 4200000
-975 1 4800000
-975 1 5400000
-975 1 6000000
-975 1 6600000
-975 1 7200000
-975 1 7800000
-975 1 8400000
-975 1 9000000
-520 1 9600000
diff --git a/codec2/hidl/1.0/mts/res/bbb_gsm_1ch_8khz_13kbps.raw b/codec2/hidl/1.0/mts/res/bbb_gsm_1ch_8khz_13kbps.raw
deleted file mode 100644
index df903a8..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_gsm_1ch_8khz_13kbps.raw
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_h263_352x288_300kbps_12fps.h263 b/codec2/hidl/1.0/mts/res/bbb_h263_352x288_300kbps_12fps.h263
deleted file mode 100644
index 652581f..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_h263_352x288_300kbps_12fps.h263
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_h263_352x288_300kbps_12fps.info b/codec2/hidl/1.0/mts/res/bbb_h263_352x288_300kbps_12fps.info
deleted file mode 100644
index 75bfcb6..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_h263_352x288_300kbps_12fps.info
+++ /dev/null
@@ -1,122 +0,0 @@
-26362 1 0
-12023 0 83333
-10647 0 166666
-10269 0 250000
-11076 0 333333
-11104 0 416666
-5909 0 500000
-4291 0 583333
-5149 0 666666
-5353 0 750000
-5185 0 833333
-2736 0 916666
-21575 1 1000000
-2196 0 1083333
-4340 0 1166666
-3109 0 1250000
-4410 0 1333333
-1731 0 1416666
-4557 0 1500000
-3376 0 1583333
-1352 0 1666666
-2844 0 1750000
-1787 0 1833333
-1088 0 1916666
-36843 1 2000000
-2520 0 2083333
-3749 0 2166666
-3784 0 2250000
-3402 0 2333333
-3795 0 2416666
-2345 0 2500000
-3142 0 2583333
-2948 0 2666666
-2018 0 2750000
-5133 0 2833333
-2276 0 2916666
-23468 1 3000000
-1522 0 3083333
-2299 0 3166666
-3273 0 3250000
-2630 0 3333333
-2915 0 3416666
-3032 0 3500000
-1890 0 3583333
-3718 0 3666666
-1990 0 3750000
-3139 0 3833333
-1806 0 3916666
-23208 1 4000000
-1419 0 4083333
-2263 0 4166666
-3131 0 4250000
-2645 0 4333333
-1880 0 4416666
-2239 0 4500000
-3637 0 4583333
-1941 0 4666666
-1577 0 4750000
-3777 0 4833333
-1816 0 4916666
-19601 1 5000000
-1104 0 5083333
-2808 0 5166666
-2411 0 5250000
-2159 0 5333333
-2411 0 5416666
-2408 0 5500000
-2388 0 5583333
-2418 0 5666666
-1481 0 5750000
-1926 0 5833333
-9022 1 5916666
-292 0 6000000
-701 0 6083333
-747 0 6166666
-2059 0 6250000
-1693 0 6333333
-2078 0 6416666
-2975 0 6500000
-1317 0 6583333
-1742 0 6666666
-1019 0 6750000
-1053 0 6833333
-14183 1 6916666
-1467 0 7000000
-994 0 7083333
-1709 0 7166666
-838 0 7250000
-1328 0 7333333
-2292 0 7416666
-1829 0 7500000
-1728 0 7583333
-2436 0 7666666
-1852 0 7750000
-2190 0 7833333
-15167 1 7916666
-1188 0 8000000
-2070 0 8083333
-3316 0 8166666
-2636 0 8250000
-950 0 8333333
-1260 0 8416666
-906 0 8500000
-1294 0 8583333
-1298 0 8666666
-1897 0 8750000
-1348 0 8833333
-13194 1 8916666
-1042 0 9000000
-1258 0 9083333
-1457 0 9166666
-990 0 9250000
-900 0 9333333
-963 0 9416666
-3448 0 9500000
-774 0 9583333
-1075 0 9666666
-750 0 9750000
-1054 0 9833333
-13139 1 9916666
-3104 0 10000000
-3366 0 10083333
diff --git a/codec2/hidl/1.0/mts/res/bbb_hevc_176x144_176kbps_60fps.hevc b/codec2/hidl/1.0/mts/res/bbb_hevc_176x144_176kbps_60fps.hevc
deleted file mode 100644
index f82236f..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_hevc_176x144_176kbps_60fps.hevc
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_hevc_176x144_176kbps_60fps.info b/codec2/hidl/1.0/mts/res/bbb_hevc_176x144_176kbps_60fps.info
deleted file mode 100644
index c4357ce..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_hevc_176x144_176kbps_60fps.info
+++ /dev/null
@@ -1,61 +0,0 @@
-1695 32 0
-1938 1 33333
-471 0 83333
-153 0 66666
-99 0 50000
-657 0 150000
-260 0 116666
-115 0 100000
-99 0 133333
-622 0 216666
-211 0 183333
-79 0 166666
-95 0 200000
-597 0 283333
-288 0 250000
-145 0 233333
-147 0 266666
-676 0 350000
-284 0 316666
-144 0 300000
-131 0 333333
-658 0 416666
-270 0 383333
-101 0 366666
-151 0 400000
-529 0 483333
-257 0 450000
-98 0 433333
-160 0 466666
-664 0 566666
-186 0 533333
-147 0 500000
-67 0 516666
-78 0 550000
-575 0 633333
-230 0 600000
-134 0 583333
-114 0 616666
-629 0 700000
-224 0 666666
-138 0 650000
-129 0 683333
-645 0 750000
-264 0 733333
-145 0 716666
-705 0 816666
-365 0 783333
-156 0 766666
-160 0 800000
-725 0 883333
-330 0 850000
-138 0 833333
-162 0 866666
-638 0 950000
-337 0 916666
-170 0 900000
-133 0 933333
-432 0 1016666
-287 0 983333
-130 0 966666
-136 0 1000000
diff --git a/codec2/hidl/1.0/mts/res/bbb_hevc_640x360_1600kbps_30fps.hevc b/codec2/hidl/1.0/mts/res/bbb_hevc_640x360_1600kbps_30fps.hevc
deleted file mode 100644
index 651f7cf..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_hevc_640x360_1600kbps_30fps.hevc
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_hevc_640x360_1600kbps_30fps.info b/codec2/hidl/1.0/mts/res/bbb_hevc_640x360_1600kbps_30fps.info
deleted file mode 100644
index 299491a..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_hevc_640x360_1600kbps_30fps.info
+++ /dev/null
@@ -1,302 +0,0 @@
-1075 32 0
-1075 32 0
-68613 1 66687
-19025 0 199687
-2405 0 133687
-777 0 99687
-681 0 166687
-20254 0 333687
-2927 0 266687
-766 0 233687
-658 0 299687
-20786 0 466687
-4214 0 399687
-609 0 366687
-661 0 433687
-20838 0 599687
-4209 0 533687
-506 0 499687
-586 0 566687
-20415 0 733687
-4207 0 666687
-427 0 633687
-514 0 699687
-24457 0 899687
-1904 0 833687
-921 0 766687
-992 0 799687
-543 0 866687
-24342 0 1066687
-1822 0 999687
-840 0 933687
-892 0 966687
-715 0 1033687
-22893 0 1233687
-1618 0 1166687
-881 0 1099687
-890 0 1133687
-794 0 1199687
-24292 0 1399687
-1673 0 1333687
-755 0 1266687
-810 0 1299687
-588 0 1366687
-19828 0 1533687
-1538 0 1466687
-894 0 1433687
-933 0 1499687
-19853 0 1666687
-2011 0 1599687
-981 0 1566687
-900 0 1633687
-22869 0 1833687
-1562 0 1766687
-842 0 1699687
-765 0 1733687
-665 0 1799687
-22346 0 1966687
-2245 0 1899687
-516 0 1866687
-604 0 1933687
-24333 0 2099687
-1765 0 2033687
-318 0 1999687
-320 0 2066687
-18577 0 2199687
-1123 0 2166687
-337 0 2133687
-17509 0 2299687
-869 0 2266687
-901 0 2233687
-23366 0 2433687
-1217 0 2366687
-380 0 2333687
-347 0 2399687
-19542 0 2533687
-1887 0 2499687
-467 0 2466687
-18939 0 2666687
-2863 0 2599687
-317 0 2566687
-272 0 2633687
-19353 0 2799687
-2092 0 2733687
-203 0 2699687
-310 0 2766687
-18800 0 2933687
-2038 0 2866687
-242 0 2833687
-199 0 2899687
-17452 0 3099687
-1060 0 3033687
-301 0 2966687
-452 0 2999687
-256 0 3066687
-21352 0 3199687
-409 0 3166687
-173 0 3133687
-19142 0 3299687
-642 0 3266687
-468 0 3233687
-19066 0 3433687
-635 0 3366687
-197 0 3333687
-190 0 3399687
-18813 0 3566687
-969 0 3499687
-165 0 3466687
-203 0 3533687
-17362 0 3733687
-246 0 3666687
-236 0 3599687
-174 0 3633687
-164 0 3699687
-17081 0 3899687
-353 0 3833687
-222 0 3766687
-181 0 3799687
-148 0 3866687
-10835 0 3999687
-185 0 3966687
-139 0 3933687
-7510 0 4133687
-149 0 4066687
-129 0 4033687
-132 0 4099687
-1063 0 4166687
-805 0 4266687
-157 0 4233687
-394 0 4199687
-90840 0 4399687
-6159 0 4333687
-1752 0 4299687
-985 0 4366687
-31338 0 4533687
-3390 0 4466687
-772 0 4433687
-781 0 4499687
-31084 0 4666687
-3498 0 4599687
-818 0 4566687
-881 0 4633687
-30416 0 4799687
-3265 0 4733687
-815 0 4699687
-790 0 4766687
-31053 0 4933687
-3106 0 4866687
-708 0 4833687
-713 0 4899687
-30230 0 5066687
-3214 0 4999687
-639 0 4966687
-768 0 5033687
-29657 0 5199687
-3013 0 5133687
-622 0 5099687
-720 0 5166687
-29344 0 5333687
-3196 0 5266687
-713 0 5233687
-775 0 5299687
-30420 0 5466687
-3374 0 5399687
-803 0 5366687
-717 0 5433687
-29960 0 5599687
-3283 0 5533687
-793 0 5499687
-790 0 5566687
-31011 0 5733687
-3397 0 5666687
-809 0 5633687
-831 0 5699687
-31194 0 5866687
-3401 0 5799687
-807 0 5766687
-827 0 5833687
-30326 0 5999687
-3186 0 5933687
-818 0 5899687
-863 0 5966687
-31559 0 6133687
-3364 0 6066687
-840 0 6033687
-919 0 6099687
-32013 0 6266687
-3495 0 6199687
-871 0 6166687
-803 0 6233687
-30294 0 6399687
-3153 0 6333687
-716 0 6299687
-812 0 6366687
-29952 0 6533687
-3299 0 6466687
-801 0 6433687
-749 0 6499687
-30598 0 6666687
-3536 0 6599687
-887 0 6566687
-850 0 6633687
-17246 0 6699687
-31110 0 6833687
-3198 0 6766687
-809 0 6733687
-836 0 6799687
-29784 0 6966687
-3155 0 6899687
-859 0 6866687
-958 0 6933687
-30666 0 7099687
-3371 0 7033687
-886 0 6999687
-861 0 7066687
-30416 0 7233687
-3350 0 7166687
-917 0 7133687
-987 0 7199687
-29509 0 7366687
-3574 0 7299687
-972 0 7266687
-885 0 7333687
-30872 0 7499687
-3399 0 7433687
-898 0 7399687
-1027 0 7466687
-31155 0 7633687
-3454 0 7566687
-965 0 7533687
-841 0 7599687
-28487 0 7766687
-3616 0 7699687
-921 0 7666687
-991 0 7733687
-23208 0 7899687
-3551 0 7833687
-918 0 7799687
-894 0 7866687
-16982 0 8033687
-3458 0 7966687
-844 0 7933687
-943 0 7999687
-30396 0 8199687
-4963 0 8133687
-1416 0 8066687
-1639 0 8099687
-524 0 8166687
-1368 0 8299687
-565 0 8266687
-392 0 8233687
-41317 1 8399687
-185 0 8366687
-477 0 8333687
-5342 0 8533687
-1275 0 8466687
-121 0 8433687
-982 0 8499687
-6465 0 8699687
-2606 0 8633687
-1163 0 8566687
-943 0 8599687
-1186 0 8666687
-11593 0 8833687
-3122 0 8766687
-1278 0 8733687
-1593 0 8799687
-9099 0 8999687
-978 0 8933687
-748 0 8866687
-835 0 8899687
-364 0 8966687
-4799 0 9099687
-365 0 9066687
-215 0 9033687
-4367 0 9199687
-302 0 9166687
-480 0 9133687
-6180 0 9333687
-771 0 9266687
-246 0 9233687
-281 0 9299687
-4636 0 9399687
-211 0 9366687
-4037 0 9499687
-382 0 9466687
-486 0 9433687
-3975 0 9599687
-312 0 9566687
-474 0 9533687
-6880 0 9733687
-1116 0 9666687
-206 0 9633687
-698 0 9699687
-6254 0 9899687
-2581 0 9833687
-1303 0 9766687
-985 0 9799687
-967 0 9866687
-6486 0 10033687
-3555 0 9966687
-1430 0 9933687
-1605 0 9999687
diff --git a/codec2/hidl/1.0/mts/res/bbb_mp3_stereo_192kbps_48000hz.info b/codec2/hidl/1.0/mts/res/bbb_mp3_stereo_192kbps_48000hz.info
deleted file mode 100644
index 21fbfd4..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_mp3_stereo_192kbps_48000hz.info
+++ /dev/null
@@ -1,414 +0,0 @@
-576 1 0
-576 1 24000
-576 1 48000
-576 1 72000
-576 1 96000
-576 1 120000
-576 1 144000
-576 1 168000
-576 1 192000
-576 1 216000
-576 1 240000
-576 1 264000
-576 1 288000
-576 1 312000
-576 1 336000
-576 1 360000
-576 1 384000
-576 1 408000
-576 1 432000
-576 1 456000
-576 1 480000
-576 1 504000
-576 1 528000
-576 1 552000
-576 1 576000
-576 1 600000
-576 1 624000
-576 1 648000
-576 1 672000
-576 1 696000
-576 1 720000
-576 1 744000
-576 1 768000
-576 1 792000
-576 1 816000
-576 1 840000
-576 1 864000
-576 1 888000
-576 1 912000
-576 1 936000
-576 1 960000
-576 1 984000
-576 1 1008000
-576 1 1032000
-576 1 1056000
-576 1 1080000
-576 1 1104000
-576 1 1128000
-576 1 1152000
-576 1 1176000
-576 1 1200000
-576 1 1224000
-576 1 1248000
-576 1 1272000
-576 1 1296000
-576 1 1320000
-576 1 1344000
-576 1 1368000
-576 1 1392000
-576 1 1416000
-576 1 1440000
-576 1 1464000
-576 1 1488000
-576 1 1512000
-576 1 1536000
-576 1 1560000
-576 1 1584000
-576 1 1608000
-576 1 1632000
-576 1 1656000
-576 1 1680000
-576 1 1704000
-576 1 1728000
-576 1 1752000
-576 1 1776000
-576 1 1800000
-576 1 1824000
-576 1 1848000
-576 1 1872000
-576 1 1896000
-576 1 1920000
-576 1 1944000
-576 1 1968000
-576 1 1992000
-576 1 2016000
-576 1 2040000
-576 1 2064000
-576 1 2088000
-576 1 2112000
-576 1 2136000
-576 1 2160000
-576 1 2184000
-576 1 2208000
-576 1 2232000
-576 1 2256000
-576 1 2280000
-576 1 2304000
-576 1 2328000
-576 1 2352000
-576 1 2376000
-576 1 2400000
-576 1 2424000
-576 1 2448000
-576 1 2472000
-576 1 2496000
-576 1 2520000
-576 1 2544000
-576 1 2568000
-576 1 2592000
-576 1 2616000
-576 1 2640000
-576 1 2664000
-576 1 2688000
-576 1 2712000
-576 1 2736000
-576 1 2760000
-576 1 2784000
-576 1 2808000
-576 1 2832000
-576 1 2856000
-576 1 2880000
-576 1 2904000
-576 1 2928000
-576 1 2952000
-576 1 2976000
-576 1 3000000
-576 1 3024000
-576 1 3048000
-576 1 3072000
-576 1 3096000
-576 1 3120000
-576 1 3144000
-576 1 3168000
-576 1 3192000
-576 1 3216000
-576 1 3240000
-576 1 3264000
-576 1 3288000
-576 1 3312000
-576 1 3336000
-576 1 3360000
-576 1 3384000
-576 1 3408000
-576 1 3432000
-576 1 3456000
-576 1 3480000
-576 1 3504000
-576 1 3528000
-576 1 3552000
-576 1 3576000
-576 1 3600000
-576 1 3624000
-576 1 3648000
-576 1 3672000
-576 1 3696000
-576 1 3720000
-576 1 3744000
-576 1 3768000
-576 1 3792000
-576 1 3816000
-576 1 3840000
-576 1 3864000
-576 1 3888000
-576 1 3912000
-576 1 3936000
-576 1 3960000
-576 1 3984000
-576 1 4008000
-576 1 4032000
-576 1 4056000
-576 1 4080000
-576 1 4104000
-576 1 4128000
-576 1 4152000
-576 1 4176000
-576 1 4200000
-576 1 4224000
-576 1 4248000
-576 1 4272000
-576 1 4296000
-576 1 4320000
-576 1 4344000
-576 1 4368000
-576 1 4392000
-576 1 4416000
-576 1 4440000
-576 1 4464000
-576 1 4488000
-576 1 4512000
-576 1 4536000
-576 1 4560000
-576 1 4584000
-576 1 4608000
-576 1 4632000
-576 1 4656000
-576 1 4680000
-576 1 4704000
-576 1 4728000
-576 1 4752000
-576 1 4776000
-576 1 4800000
-576 1 4824000
-576 1 4848000
-576 1 4872000
-576 1 4896000
-576 1 4920000
-576 1 4944000
-576 1 4968000
-576 1 4992000
-576 1 5016000
-576 1 5040000
-576 1 5064000
-576 1 5088000
-576 1 5112000
-576 1 5136000
-576 1 5160000
-576 1 5184000
-576 1 5208000
-576 1 5232000
-576 1 5256000
-576 1 5280000
-576 1 5304000
-576 1 5328000
-576 1 5352000
-576 1 5376000
-576 1 5400000
-576 1 5424000
-576 1 5448000
-576 1 5472000
-576 1 5496000
-576 1 5520000
-576 1 5544000
-576 1 5568000
-576 1 5592000
-576 1 5616000
-576 1 5640000
-576 1 5664000
-576 1 5688000
-576 1 5712000
-576 1 5736000
-576 1 5760000
-576 1 5784000
-576 1 5808000
-576 1 5832000
-576 1 5856000
-576 1 5880000
-576 1 5904000
-576 1 5928000
-576 1 5952000
-576 1 5976000
-576 1 6000000
-576 1 6024000
-576 1 6048000
-576 1 6072000
-576 1 6096000
-576 1 6120000
-576 1 6144000
-576 1 6168000
-576 1 6192000
-576 1 6216000
-576 1 6240000
-576 1 6264000
-576 1 6288000
-576 1 6312000
-576 1 6336000
-576 1 6360000
-576 1 6384000
-576 1 6408000
-576 1 6432000
-576 1 6456000
-576 1 6480000
-576 1 6504000
-576 1 6528000
-576 1 6552000
-576 1 6576000
-576 1 6600000
-576 1 6624000
-576 1 6648000
-576 1 6672000
-576 1 6696000
-576 1 6720000
-576 1 6744000
-576 1 6768000
-576 1 6792000
-576 1 6816000
-576 1 6840000
-576 1 6864000
-576 1 6888000
-576 1 6912000
-576 1 6936000
-576 1 6960000
-576 1 6984000
-576 1 7008000
-576 1 7032000
-576 1 7056000
-576 1 7080000
-576 1 7104000
-576 1 7128000
-576 1 7152000
-576 1 7176000
-576 1 7200000
-576 1 7224000
-576 1 7248000
-576 1 7272000
-576 1 7296000
-576 1 7320000
-576 1 7344000
-576 1 7368000
-576 1 7392000
-576 1 7416000
-576 1 7440000
-576 1 7464000
-576 1 7488000
-576 1 7512000
-576 1 7536000
-576 1 7560000
-576 1 7584000
-576 1 7608000
-576 1 7632000
-576 1 7656000
-576 1 7680000
-576 1 7704000
-576 1 7728000
-576 1 7752000
-576 1 7776000
-576 1 7800000
-576 1 7824000
-576 1 7848000
-576 1 7872000
-576 1 7896000
-576 1 7920000
-576 1 7944000
-576 1 7968000
-576 1 7992000
-576 1 8016000
-576 1 8040000
-576 1 8064000
-576 1 8088000
-576 1 8112000
-576 1 8136000
-576 1 8160000
-576 1 8184000
-576 1 8208000
-576 1 8232000
-576 1 8256000
-576 1 8280000
-576 1 8304000
-576 1 8328000
-576 1 8352000
-576 1 8376000
-576 1 8400000
-576 1 8424000
-576 1 8448000
-576 1 8472000
-576 1 8496000
-576 1 8520000
-576 1 8544000
-576 1 8568000
-576 1 8592000
-576 1 8616000
-576 1 8640000
-576 1 8664000
-576 1 8688000
-576 1 8712000
-576 1 8736000
-576 1 8760000
-576 1 8784000
-576 1 8808000
-576 1 8832000
-576 1 8856000
-576 1 8880000
-576 1 8904000
-576 1 8928000
-576 1 8952000
-576 1 8976000
-576 1 9000000
-576 1 9024000
-576 1 9048000
-576 1 9072000
-576 1 9096000
-576 1 9120000
-576 1 9144000
-576 1 9168000
-576 1 9192000
-576 1 9216000
-576 1 9240000
-576 1 9264000
-576 1 9288000
-576 1 9312000
-576 1 9336000
-576 1 9360000
-576 1 9384000
-576 1 9408000
-576 1 9432000
-576 1 9456000
-576 1 9480000
-576 1 9504000
-576 1 9528000
-576 1 9552000
-576 1 9576000
-576 1 9600000
-576 1 9624000
-576 1 9648000
-576 1 9672000
-576 1 9696000
-576 1 9720000
-576 1 9744000
-576 1 9768000
-576 1 9792000
-576 1 9816000
-576 1 9840000
-576 1 9864000
-576 1 9888000
-576 1 9912000
diff --git a/codec2/hidl/1.0/mts/res/bbb_mp3_stereo_192kbps_48000hz.mp3 b/codec2/hidl/1.0/mts/res/bbb_mp3_stereo_192kbps_48000hz.mp3
deleted file mode 100644
index b83a441..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_mp3_stereo_192kbps_48000hz.mp3
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_mpeg2_176x144_105kbps_25fps.info b/codec2/hidl/1.0/mts/res/bbb_mpeg2_176x144_105kbps_25fps.info
deleted file mode 100644
index c540642..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_mpeg2_176x144_105kbps_25fps.info
+++ /dev/null
@@ -1,249 +0,0 @@
-6458 1 40000
-4040 0 80000
-3255 0 120000
-3026 0 160000
-3293 0 200000
-3089 0 240000
-3305 0 280000
-1794 0 320000
-1848 0 360000
-1288 0 400000
-1511 0 440000
-1527 0 480000
-6146 1 520000
-1243 0 560000
-1099 0 600000
-1354 0 640000
-1366 0 680000
-1042 0 720000
-1600 0 760000
-875 0 800000
-1728 0 840000
-1254 0 880000
-994 0 920000
-1591 0 960000
-6265 1 1000000
-1018 0 1040000
-825 0 1080000
-869 0 1120000
-921 0 1160000
-975 0 1200000
-924 0 1240000
-834 0 1280000
-1066 0 1320000
-793 0 1360000
-889 0 1400000
-2050 0 1440000
-6276 1 1480000
-881 0 1520000
-260 0 1560000
-730 0 1600000
-431 0 1640000
-351 0 1680000
-321 0 1720000
-3802 0 1760000
-146 0 1800000
-6462 0 1840000
-3246 0 1880000
-533 0 1920000
-6231 1 1960000
-1378 0 2000000
-719 0 2040000
-818 0 2080000
-856 0 2120000
-937 0 2160000
-611 0 2200000
-3031 0 2240000
-1041 0 2280000
-604 0 2320000
-714 0 2360000
-1283 0 2400000
-7565 1 2440000
-602 0 2480000
-530 0 2520000
-2579 0 2560000
-115 0 2600000
-1058 0 2640000
-689 0 2680000
-1119 0 2720000
-698 0 2760000
-1006 0 2800000
-545 0 2840000
-1617 0 2880000
-9123 1 2920000
-527 0 2960000
-1576 0 3000000
-465 0 3040000
-741 0 3080000
-521 0 3120000
-1322 0 3160000
-775 0 3200000
-863 0 3240000
-910 0 3280000
-915 0 3320000
-926 0 3360000
-7556 1 3400000
-741 0 3440000
-527 0 3480000
-2516 0 3520000
-459 0 3560000
-404 0 3600000
-509 0 3640000
-1227 0 3680000
-1561 0 3720000
-490 0 3760000
-712 0 3800000
-803 0 3840000
-7524 1 3880000
-730 0 3920000
-461 0 3960000
-2526 0 4000000
-453 0 4040000
-632 0 4080000
-783 0 4120000
-843 0 4160000
-918 0 4200000
-961 0 4240000
-948 0 4280000
-959 0 4320000
-7598 1 4360000
-678 0 4400000
-569 0 4440000
-893 0 4480000
-624 0 4520000
-755 0 4560000
-2234 0 4600000
-556 0 4640000
-944 0 4680000
-739 0 4720000
-862 0 4760000
-938 0 4800000
-7574 1 4840000
-699 0 4880000
-701 0 4920000
-530 0 4960000
-689 0 5000000
-778 0 5040000
-856 0 5080000
-930 0 5120000
-975 0 5160000
-1021 0 5200000
-1074 0 5240000
-978 0 5280000
-8021 1 5320000
-704 0 5360000
-610 0 5400000
-697 0 5440000
-711 0 5480000
-820 0 5520000
-843 0 5560000
-251 0 5600000
-3367 0 5640000
-507 0 5680000
-3168 1 5720000
-779 0 5760000
-316 0 5800000
-635 0 5840000
-204 0 5880000
-978 0 5920000
-127 0 5960000
-589 0 6000000
-604 0 6040000
-666 0 6080000
-582 0 6120000
-729 0 6160000
-4152 1 6200000
-858 0 6240000
-739 0 6280000
-885 0 6320000
-749 0 6360000
-950 0 6400000
-593 0 6440000
-771 0 6480000
-678 0 6520000
-529 0 6560000
-835 0 6600000
-391 0 6640000
-4692 1 6680000
-473 0 6720000
-724 0 6760000
-381 0 6800000
-909 0 6840000
-394 0 6880000
-659 0 6920000
-367 0 6960000
-658 0 7000000
-523 0 7040000
-554 0 7080000
-553 0 7120000
-6080 1 7160000
-496 0 7200000
-763 0 7240000
-939 0 7280000
-715 0 7320000
-672 0 7360000
-614 0 7400000
-811 0 7440000
-916 0 7480000
-1153 0 7520000
-940 0 7560000
-322 0 7600000
-6613 1 7640000
-851 0 7680000
-1007 0 7720000
-520 0 7760000
-456 0 7800000
-639 0 7840000
-758 0 7880000
-879 0 7920000
-1152 0 7960000
-1061 0 8000000
-946 0 8040000
-859 0 8080000
-3610 1 8120000
-871 0 8160000
-746 0 8200000
-367 0 8240000
-397 0 8280000
-930 0 8320000
-337 0 8360000
-418 0 8400000
-740 0 8440000
-637 0 8480000
-666 0 8520000
-627 0 8560000
-4338 1 8600000
-745 0 8640000
-783 0 8680000
-465 0 8720000
-460 0 8760000
-455 0 8800000
-506 0 8840000
-492 0 8880000
-485 0 8920000
-517 0 8960000
-534 0 9000000
-395 0 9040000
-5626 1 9080000
-1169 0 9120000
-564 0 9160000
-261 0 9200000
-327 0 9240000
-303 0 9280000
-1145 0 9320000
-257 0 9360000
-498 0 9400000
-465 0 9440000
-414 0 9480000
-553 0 9520000
-5617 1 9560000
-1052 0 9600000
-592 0 9640000
-323 0 9680000
-497 0 9720000
-467 0 9760000
-705 0 9800000
-1086 0 9840000
-1253 0 9880000
-1252 0 9920000
-776 0 9960000
diff --git a/codec2/hidl/1.0/mts/res/bbb_mpeg2_176x144_105kbps_25fps.m2v b/codec2/hidl/1.0/mts/res/bbb_mpeg2_176x144_105kbps_25fps.m2v
deleted file mode 100644
index cdf90c3..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_mpeg2_176x144_105kbps_25fps.m2v
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_mpeg2_352x288_1mbps_60fps.info b/codec2/hidl/1.0/mts/res/bbb_mpeg2_352x288_1mbps_60fps.info
deleted file mode 100644
index 417caf9..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_mpeg2_352x288_1mbps_60fps.info
+++ /dev/null
@@ -1,60 +0,0 @@
-16680 1 16666
-17017 0 33333
-10534 0 50000
-10289 0 66666
-3698 0 83333
-2776 0 100000
-1936 0 116666
-1493 0 133333
-1217 0 150000
-993 0 166666
-805 0 183333
-857 0 200000
-5082 1 216666
-812 0 233333
-718 0 250000
-746 0 266666
-762 0 283333
-865 0 300000
-782 0 316666
-833 0 333333
-750 0 350000
-819 0 366666
-826 0 383333
-846 0 400000
-4522 1 416666
-678 0 433333
-718 0 450000
-803 0 466666
-769 0 483333
-762 0 500000
-587 0 516666
-635 0 533333
-658 0 550000
-714 0 566666
-677 0 583333
-699 0 600000
-4616 1 616666
-800 0 633333
-831 0 650000
-928 0 666666
-869 0 683333
-931 0 700000
-930 0 716666
-974 0 733333
-978 0 750000
-932 0 766666
-918 0 783333
-978 0 800000
-4655 1 816666
-897 0 833333
-896 0 850000
-883 0 866666
-949 0 883333
-965 0 900000
-951 0 916666
-901 0 933333
-965 0 950000
-955 0 966666
-948 0 983333
-968 0 1000000
diff --git a/codec2/hidl/1.0/mts/res/bbb_mpeg2_352x288_1mbps_60fps.m2v b/codec2/hidl/1.0/mts/res/bbb_mpeg2_352x288_1mbps_60fps.m2v
deleted file mode 100644
index 2f67c2b..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_mpeg2_352x288_1mbps_60fps.m2v
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_mpeg4_352x288_512kbps_30fps.info b/codec2/hidl/1.0/mts/res/bbb_mpeg4_352x288_512kbps_30fps.info
deleted file mode 100644
index 69ba9b2..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_mpeg4_352x288_512kbps_30fps.info
+++ /dev/null
@@ -1,241 +0,0 @@
-47 32 0
-21115 1 0
-16456 0 33333
-11880 0 66666
-12155 0 100000
-11402 0 133333
-5345 0 166666
-2986 0 200000
-1924 0 233333
-2275 0 266666
-2793 0 300000
-2756 0 333333
-2933 0 366666
-21100 1 400000
-1302 0 433333
-2206 0 466666
-1599 0 500000
-2558 0 533333
-2784 0 566666
-2458 0 600000
-2480 0 633333
-1446 0 666666
-3109 0 700000
-944 0 733333
-3134 0 766666
-21342 1 800000
-652 0 833333
-1708 0 866666
-2202 0 900000
-1695 0 933333
-1661 0 966666
-1652 0 1000000
-1679 0 1033333
-1690 0 1066666
-1824 0 1100000
-1803 0 1133333
-1598 0 1166666
-21540 1 1200000
-205 0 1233333
-1124 0 1266666
-1069 0 1300000
-838 0 1333333
-765 0 1366666
-4265 0 1400000
-94 0 1433333
-20463 0 1466666
-1028 0 1500000
-1475 0 1533333
-3630 0 1566666
-28373 1 1600000
-725 0 1633333
-1119 0 1666666
-1427 0 1700000
-1679 0 1733333
-1866 0 1766666
-1197 0 1800000
-1572 0 1833333
-1651 0 1866666
-1678 0 1900000
-1688 0 1933333
-1659 0 1966666
-19900 1 2000000
-584 0 2033333
-1475 0 2066666
-1678 0 2100000
-1010 0 2133333
-1435 0 2166666
-1612 0 2200000
-1602 0 2233333
-1709 0 2266666
-1737 0 2300000
-1835 0 2333333
-926 0 2366666
-20090 1 2400000
-631 0 2433333
-1576 0 2466666
-941 0 2500000
-2349 0 2533333
-1112 0 2566666
-1566 0 2600000
-1773 0 2633333
-979 0 2666666
-2246 0 2700000
-904 0 2733333
-1342 0 2766666
-20147 1 2800000
-630 0 2833333
-982 0 2866666
-2089 0 2900000
-1021 0 2933333
-1506 0 2966666
-1642 0 3000000
-968 0 3033333
-1262 0 3066666
-2270 0 3100000
-864 0 3133333
-1252 0 3166666
-20145 1 3200000
-595 0 3233333
-918 0 3266666
-1167 0 3300000
-1347 0 3333333
-1597 0 3366666
-1636 0 3400000
-944 0 3433333
-1295 0 3466666
-1397 0 3500000
-1413 0 3533333
-1432 0 3566666
-20180 1 3600000
-525 0 3633333
-1068 0 3666666
-1230 0 3700000
-1428 0 3733333
-916 0 3766666
-1948 0 3800000
-966 0 3833333
-1342 0 3866666
-1338 0 3900000
-1379 0 3933333
-1296 0 3966666
-17378 1 4000000
-583 0 4033333
-936 0 4066666
-1745 0 4100000
-987 0 4133333
-1393 0 4166666
-1495 0 4200000
-869 0 4233333
-1938 0 4266666
-828 0 4300000
-1851 0 4333333
-834 0 4366666
-17280 1 4400000
-580 0 4433333
-869 0 4466666
-1605 0 4500000
-843 0 4533333
-6147 1 4566666
-220 0 4600000
-1106 0 4633333
-395 0 4666666
-304 0 4700000
-1946 0 4733333
-154 0 4766666
-482 0 4800000
-949 0 4833333
-1088 0 4866666
-974 0 4900000
-876 0 4933333
-9164 1 4966666
-1019 0 5000000
-983 0 5033333
-1375 0 5066666
-1041 0 5100000
-789 0 5133333
-1037 0 5166666
-812 0 5200000
-732 0 5233333
-972 0 5266666
-708 0 5300000
-623 0 5333333
-10667 1 5366666
-463 0 5400000
-911 0 5433333
-861 0 5466666
-507 0 5500000
-1015 0 5533333
-501 0 5566666
-934 0 5600000
-812 0 5633333
-855 0 5666666
-804 0 5700000
-783 0 5733333
-10610 1 5766666
-950 0 5800000
-1292 0 5833333
-1002 0 5866666
-728 0 5900000
-960 0 5933333
-1230 0 5966666
-1315 0 6000000
-1248 0 6033333
-995 0 6066666
-1401 0 6100000
-905 0 6133333
-9326 1 6166666
-726 0 6200000
-667 0 6233333
-833 0 6266666
-1007 0 6300000
-1172 0 6333333
-1910 0 6366666
-1954 0 6400000
-1498 0 6433333
-1188 0 6466666
-784 0 6500000
-1005 0 6533333
-10030 1 6566666
-452 0 6600000
-763 0 6633333
-639 0 6666666
-671 0 6700000
-867 0 6733333
-963 0 6766666
-982 0 6800000
-995 0 6833333
-982 0 6866666
-747 0 6900000
-574 0 6933333
-12353 1 6966666
-474 0 7000000
-969 0 7033333
-633 0 7066666
-723 0 7100000
-1221 0 7133333
-674 0 7166666
-776 0 7200000
-572 0 7233333
-912 0 7266666
-564 0 7300000
-594 0 7333333
-16661 1 7366666
-518 0 7400000
-656 0 7433333
-625 0 7466666
-583 0 7500000
-584 0 7533333
-1027 0 7566666
-812 0 7600000
-729 0 7633333
-766 0 7666666
-901 0 7700000
-960 0 7733333
-12336 1 7766666
-944 0 7800000
-1398 0 7833333
-1625 0 7866666
-2103 0 7900000
-1630 0 7933333
-1228 0 7966666
diff --git a/codec2/hidl/1.0/mts/res/bbb_mpeg4_352x288_512kbps_30fps.m4v b/codec2/hidl/1.0/mts/res/bbb_mpeg4_352x288_512kbps_30fps.m4v
deleted file mode 100644
index b7ead00..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_mpeg4_352x288_512kbps_30fps.m4v
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_opus_stereo_128kbps_48000hz.info b/codec2/hidl/1.0/mts/res/bbb_opus_stereo_128kbps_48000hz.info
deleted file mode 100644
index 1ced12b..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_opus_stereo_128kbps_48000hz.info
+++ /dev/null
@@ -1,499 +0,0 @@
-19 32 0
-8 32 0
-8 32 0
-529 1 0
-329 1 13500
-349 1 33500
-336 1 53500
-383 1 73500
-359 1 93500
-344 1 113500
-343 1 133500
-332 1 153500
-320 1 173500
-319 1 193500
-323 1 213500
-320 1 233500
-328 1 253500
-340 1 273500
-318 1 293500
-319 1 313500
-335 1 333500
-511 1 353500
-395 1 373500
-327 1 393500
-479 1 413500
-332 1 433500
-320 1 453500
-321 1 473500
-310 1 493500
-310 1 513500
-310 1 533500
-326 1 553500
-330 1 573500
-318 1 593500
-309 1 613500
-304 1 633500
-298 1 653500
-294 1 673500
-300 1 693500
-314 1 713500
-304 1 733500
-307 1 753500
-321 1 773500
-333 1 793500
-335 1 813500
-306 1 833500
-315 1 853500
-320 1 873500
-315 1 893500
-308 1 913500
-320 1 933500
-311 1 953500
-311 1 973500
-313 1 993500
-314 1 1013500
-308 1 1033500
-307 1 1053500
-317 1 1073500
-328 1 1093500
-317 1 1113500
-312 1 1133500
-308 1 1153500
-315 1 1173500
-320 1 1193500
-322 1 1213500
-323 1 1233500
-322 1 1253500
-322 1 1273500
-301 1 1293500
-303 1 1313500
-308 1 1333500
-299 1 1353500
-297 1 1373500
-293 1 1393500
-295 1 1413500
-297 1 1433500
-300 1 1453500
-294 1 1473500
-299 1 1493500
-296 1 1513500
-303 1 1533500
-313 1 1553500
-306 1 1573500
-303 1 1593500
-311 1 1613500
-307 1 1633500
-310 1 1653500
-339 1 1673500
-325 1 1693500
-320 1 1713500
-315 1 1733500
-316 1 1753500
-338 1 1773500
-325 1 1793500
-325 1 1813500
-328 1 1833500
-304 1 1853500
-297 1 1873500
-322 1 1893500
-311 1 1913500
-307 1 1933500
-300 1 1953500
-301 1 1973500
-309 1 1993500
-300 1 2013500
-306 1 2033500
-305 1 2053500
-298 1 2073500
-291 1 2093500
-301 1 2113500
-300 1 2133500
-439 1 2153500
-292 1 2173500
-308 1 2193500
-305 1 2213500
-298 1 2233500
-297 1 2253500
-293 1 2273500
-408 1 2293500
-298 1 2313500
-452 1 2333500
-297 1 2353500
-303 1 2373500
-300 1 2393500
-310 1 2413500
-299 1 2433500
-306 1 2453500
-316 1 2473500
-308 1 2493500
-313 1 2513500
-309 1 2533500
-310 1 2553500
-315 1 2573500
-309 1 2593500
-317 1 2613500
-311 1 2633500
-328 1 2653500
-333 1 2673500
-326 1 2693500
-323 1 2713500
-316 1 2733500
-325 1 2753500
-316 1 2773500
-319 1 2793500
-326 1 2813500
-320 1 2833500
-328 1 2853500
-312 1 2873500
-314 1 2893500
-309 1 2913500
-306 1 2933500
-295 1 2953500
-304 1 2973500
-326 1 2993500
-291 1 3013500
-299 1 3033500
-293 1 3053500
-288 1 3073500
-294 1 3093500
-292 1 3113500
-292 1 3133500
-288 1 3153500
-308 1 3173500
-304 1 3193500
-292 1 3213500
-382 1 3233500
-381 1 3253500
-299 1 3273500
-316 1 3293500
-308 1 3313500
-301 1 3333500
-297 1 3353500
-299 1 3373500
-294 1 3393500
-295 1 3413500
-317 1 3433500
-297 1 3453500
-309 1 3473500
-313 1 3493500
-320 1 3513500
-329 1 3533500
-330 1 3553500
-324 1 3573500
-324 1 3593500
-309 1 3613500
-304 1 3633500
-313 1 3653500
-312 1 3673500
-299 1 3693500
-295 1 3713500
-301 1 3733500
-295 1 3753500
-297 1 3773500
-302 1 3793500
-298 1 3813500
-299 1 3833500
-296 1 3853500
-292 1 3873500
-307 1 3893500
-303 1 3913500
-313 1 3933500
-318 1 3953500
-313 1 3973500
-353 1 3993500
-371 1 4013500
-292 1 4033500
-300 1 4053500
-381 1 4073500
-294 1 4093500
-301 1 4113500
-305 1 4133500
-299 1 4153500
-305 1 4173500
-322 1 4193500
-315 1 4213500
-326 1 4233500
-338 1 4253500
-320 1 4273500
-319 1 4293500
-327 1 4313500
-330 1 4333500
-310 1 4353500
-303 1 4373500
-299 1 4393500
-293 1 4413500
-293 1 4433500
-294 1 4453500
-295 1 4473500
-295 1 4493500
-323 1 4513500
-309 1 4533500
-309 1 4553500
-301 1 4573500
-473 1 4593500
-291 1 4613500
-297 1 4633500
-294 1 4653500
-293 1 4673500
-304 1 4693500
-292 1 4713500
-302 1 4733500
-296 1 4753500
-298 1 4773500
-301 1 4793500
-307 1 4813500
-285 1 4833500
-294 1 4853500
-304 1 4873500
-294 1 4893500
-295 1 4913500
-325 1 4933500
-319 1 4953500
-323 1 4973500
-313 1 4993500
-303 1 5013500
-296 1 5033500
-295 1 5053500
-290 1 5073500
-297 1 5093500
-296 1 5113500
-296 1 5133500
-292 1 5153500
-295 1 5173500
-287 1 5193500
-294 1 5213500
-290 1 5233500
-297 1 5253500
-297 1 5273500
-297 1 5293500
-292 1 5313500
-297 1 5333500
-290 1 5353500
-293 1 5373500
-293 1 5393500
-291 1 5413500
-292 1 5433500
-290 1 5453500
-291 1 5473500
-296 1 5493500
-295 1 5513500
-327 1 5533500
-293 1 5553500
-291 1 5573500
-291 1 5593500
-311 1 5613500
-291 1 5633500
-294 1 5653500
-296 1 5673500
-295 1 5693500
-289 1 5713500
-295 1 5733500
-295 1 5753500
-297 1 5773500
-292 1 5793500
-297 1 5813500
-292 1 5833500
-295 1 5853500
-296 1 5873500
-295 1 5893500
-303 1 5913500
-304 1 5933500
-301 1 5953500
-307 1 5973500
-304 1 5993500
-310 1 6013500
-310 1 6033500
-305 1 6053500
-301 1 6073500
-302 1 6093500
-305 1 6113500
-298 1 6133500
-300 1 6153500
-300 1 6173500
-292 1 6193500
-297 1 6213500
-301 1 6233500
-297 1 6253500
-297 1 6273500
-298 1 6293500
-297 1 6313500
-300 1 6333500
-293 1 6353500
-293 1 6373500
-297 1 6393500
-294 1 6413500
-307 1 6433500
-302 1 6453500
-307 1 6473500
-320 1 6493500
-330 1 6513500
-333 1 6533500
-337 1 6553500
-331 1 6573500
-323 1 6593500
-312 1 6613500
-326 1 6633500
-328 1 6653500
-332 1 6673500
-333 1 6693500
-340 1 6713500
-336 1 6733500
-324 1 6753500
-312 1 6773500
-301 1 6793500
-289 1 6813500
-302 1 6833500
-296 1 6853500
-299 1 6873500
-289 1 6893500
-295 1 6913500
-299 1 6933500
-374 1 6953500
-391 1 6973500
-365 1 6993500
-340 1 7013500
-330 1 7033500
-337 1 7053500
-328 1 7073500
-329 1 7093500
-319 1 7113500
-312 1 7133500
-308 1 7153500
-304 1 7173500
-312 1 7193500
-311 1 7213500
-316 1 7233500
-299 1 7253500
-330 1 7273500
-330 1 7293500
-330 1 7313500
-342 1 7333500
-439 1 7353500
-322 1 7373500
-298 1 7393500
-293 1 7413500
-310 1 7433500
-303 1 7453500
-317 1 7473500
-453 1 7493500
-377 1 7513500
-374 1 7533500
-292 1 7553500
-295 1 7573500
-274 1 7593500
-292 1 7613500
-291 1 7633500
-367 1 7653500
-295 1 7673500
-298 1 7693500
-297 1 7713500
-301 1 7733500
-292 1 7753500
-344 1 7773500
-296 1 7793500
-297 1 7813500
-306 1 7833500
-308 1 7853500
-305 1 7873500
-313 1 7893500
-306 1 7913500
-322 1 7933500
-313 1 7953500
-305 1 7973500
-304 1 7993500
-313 1 8013500
-324 1 8033500
-312 1 8053500
-318 1 8073500
-311 1 8093500
-302 1 8113500
-305 1 8133500
-312 1 8153500
-313 1 8173500
-312 1 8193500
-335 1 8213500
-333 1 8233500
-346 1 8253500
-339 1 8273500
-337 1 8293500
-341 1 8313500
-335 1 8333500
-325 1 8353500
-324 1 8373500
-317 1 8393500
-315 1 8413500
-303 1 8433500
-317 1 8453500
-452 1 8473500
-324 1 8493500
-321 1 8513500
-335 1 8533500
-327 1 8553500
-315 1 8573500
-321 1 8593500
-319 1 8613500
-308 1 8633500
-314 1 8653500
-322 1 8673500
-328 1 8693500
-320 1 8713500
-324 1 8733500
-331 1 8753500
-330 1 8773500
-328 1 8793500
-318 1 8813500
-314 1 8833500
-318 1 8853500
-318 1 8873500
-325 1 8893500
-338 1 8913500
-341 1 8933500
-333 1 8953500
-330 1 8973500
-338 1 8993500
-333 1 9013500
-330 1 9033500
-344 1 9053500
-479 1 9073500
-473 1 9093500
-333 1 9113500
-337 1 9133500
-495 1 9153500
-353 1 9173500
-352 1 9193500
-344 1 9213500
-336 1 9233500
-324 1 9253500
-321 1 9273500
-350 1 9293500
-347 1 9313500
-343 1 9333500
-345 1 9353500
-337 1 9373500
-335 1 9393500
-333 1 9413500
-336 1 9433500
-334 1 9453500
-333 1 9473500
-331 1 9493500
-329 1 9513500
-319 1 9533500
-321 1 9553500
-316 1 9573500
-322 1 9593500
-448 1 9613500
-312 1 9633500
-306 1 9653500
-301 1 9673500
-303 1 9693500
-296 1 9713500
-300 1 9733500
-295 1 9753500
-300 1 9773500
-297 1 9793500
-300 1 9813500
-297 1 9833500
-512 1 9853500
-292 1 9873500
-468 1 9893500
diff --git a/codec2/hidl/1.0/mts/res/bbb_opus_stereo_128kbps_48000hz.opus b/codec2/hidl/1.0/mts/res/bbb_opus_stereo_128kbps_48000hz.opus
deleted file mode 100644
index 2b6b870..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_opus_stereo_128kbps_48000hz.opus
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_raw_1ch_16khz_s16le.raw b/codec2/hidl/1.0/mts/res/bbb_raw_1ch_16khz_s16le.raw
deleted file mode 100644
index 4a2f41b..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_raw_1ch_16khz_s16le.raw
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_raw_1ch_8khz_s16le.raw b/codec2/hidl/1.0/mts/res/bbb_raw_1ch_8khz_s16le.raw
deleted file mode 100644
index 3149eb2..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_raw_1ch_8khz_s16le.raw
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_raw_1ch_8khz_s32le.info b/codec2/hidl/1.0/mts/res/bbb_raw_1ch_8khz_s32le.info
deleted file mode 100644
index 10e24cc..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_raw_1ch_8khz_s32le.info
+++ /dev/null
@@ -1,10 +0,0 @@
-16384 1 0
-16384 1 1024000
-16384 1 2048000
-16384 1 3072000
-16384 1 4096000
-16384 1 5120000
-16384 1 6144000
-16384 1 7168000
-16384 1 8192000
-10924 1 9216000
diff --git a/codec2/hidl/1.0/mts/res/bbb_raw_1ch_8khz_s32le.raw b/codec2/hidl/1.0/mts/res/bbb_raw_1ch_8khz_s32le.raw
deleted file mode 100644
index fd91b46..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_raw_1ch_8khz_s32le.raw
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_raw_2ch_48khz_s16le.raw b/codec2/hidl/1.0/mts/res/bbb_raw_2ch_48khz_s16le.raw
deleted file mode 100644
index 498b2ec..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_raw_2ch_48khz_s16le.raw
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_vorbis_stereo_128kbps_48000hz.info b/codec2/hidl/1.0/mts/res/bbb_vorbis_stereo_128kbps_48000hz.info
deleted file mode 100644
index d9a6d33..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_vorbis_stereo_128kbps_48000hz.info
+++ /dev/null
@@ -1,520 +0,0 @@
-30 32 0
-4140 32 0
-33 32 0
-52 1 0
-58 1 2666
-61 1 5333
-56 1 8000
-59 1 10666
-63 1 13333
-66 1 16000
-71 1 18666
-76 1 21333
-374 1 24000
-366 1 36000
-378 1 57333
-393 1 78666
-393 1 100000
-386 1 121333
-375 1 142666
-388 1 164000
-378 1 185333
-379 1 206666
-374 1 228000
-356 1 249333
-358 1 270666
-332 1 292000
-335 1 313333
-363 1 334666
-341 1 356000
-360 1 377333
-341 1 398666
-335 1 420000
-357 1 441333
-355 1 462666
-363 1 484000
-382 1 505333
-371 1 526666
-357 1 548000
-353 1 569333
-350 1 590666
-327 1 612000
-315 1 633333
-307 1 654666
-303 1 676000
-295 1 697333
-312 1 718666
-316 1 740000
-315 1 761333
-318 1 782666
-330 1 804000
-318 1 825333
-315 1 846666
-322 1 868000
-315 1 889333
-310 1 910666
-315 1 932000
-314 1 953333
-302 1 974666
-313 1 996000
-322 1 1017333
-323 1 1038666
-319 1 1060000
-325 1 1081333
-328 1 1102666
-330 1 1124000
-333 1 1145333
-330 1 1166666
-344 1 1188000
-331 1 1209333
-342 1 1230666
-339 1 1252000
-314 1 1273333
-285 1 1294666
-295 1 1316000
-302 1 1337333
-305 1 1358666
-309 1 1380000
-327 1 1401333
-304 1 1422666
-336 1 1444000
-350 1 1465333
-346 1 1486666
-352 1 1508000
-341 1 1529333
-343 1 1550666
-351 1 1572000
-319 1 1593333
-328 1 1614666
-328 1 1636000
-324 1 1657333
-338 1 1678666
-317 1 1700000
-328 1 1721333
-335 1 1742666
-341 1 1764000
-335 1 1785333
-348 1 1806666
-362 1 1828000
-361 1 1849333
-344 1 1870666
-340 1 1892000
-333 1 1913333
-329 1 1934666
-328 1 1956000
-323 1 1977333
-310 1 1998666
-318 1 2020000
-312 1 2041333
-295 1 2062666
-329 1 2084000
-318 1 2105333
-311 1 2126666
-317 1 2148000
-62 1 2169333
-75 1 2181333
-73 1 2184000
-332 1 2186666
-327 1 2198666
-332 1 2220000
-325 1 2241333
-329 1 2262666
-330 1 2284000
-61 1 2305333
-61 1 2317333
-70 1 2320000
-70 1 2322666
-319 1 2325333
-303 1 2337333
-292 1 2358666
-313 1 2380000
-318 1 2401333
-346 1 2422666
-328 1 2444000
-316 1 2465333
-341 1 2486666
-328 1 2508000
-338 1 2529333
-341 1 2550666
-337 1 2572000
-347 1 2593333
-384 1 2614666
-358 1 2636000
-363 1 2657333
-363 1 2678666
-358 1 2700000
-339 1 2721333
-369 1 2742666
-343 1 2764000
-348 1 2785333
-363 1 2806666
-350 1 2828000
-358 1 2849333
-352 1 2870666
-338 1 2892000
-335 1 2913333
-342 1 2934666
-338 1 2956000
-340 1 2977333
-292 1 2998666
-279 1 3020000
-299 1 3041333
-303 1 3062666
-298 1 3084000
-297 1 3105333
-280 1 3126666
-297 1 3148000
-290 1 3169333
-306 1 3190666
-301 1 3212000
-306 1 3233333
-289 1 3254666
-311 1 3276000
-317 1 3297333
-344 1 3318666
-308 1 3340000
-304 1 3361333
-304 1 3382666
-312 1 3404000
-305 1 3425333
-299 1 3446666
-301 1 3468000
-318 1 3489333
-313 1 3510666
-330 1 3532000
-325 1 3553333
-325 1 3574666
-321 1 3596000
-349 1 3617333
-288 1 3638666
-300 1 3660000
-312 1 3681333
-302 1 3702666
-278 1 3724000
-284 1 3745333
-286 1 3766666
-274 1 3788000
-295 1 3809333
-281 1 3830666
-288 1 3852000
-278 1 3873333
-306 1 3894666
-62 1 3916000
-59 1 3928000
-61 1 3930666
-55 1 3933333
-70 1 3936000
-72 1 3938666
-324 1 3941333
-309 1 3953333
-301 1 3974666
-301 1 3996000
-291 1 4017333
-289 1 4038666
-306 1 4060000
-305 1 4081333
-286 1 4102666
-294 1 4124000
-290 1 4145333
-297 1 4166666
-308 1 4188000
-296 1 4209333
-292 1 4230666
-287 1 4252000
-291 1 4273333
-298 1 4294666
-295 1 4316000
-294 1 4337333
-295 1 4358666
-275 1 4380000
-280 1 4401333
-288 1 4422666
-285 1 4444000
-274 1 4465333
-298 1 4486666
-301 1 4508000
-300 1 4529333
-305 1 4550666
-297 1 4572000
-59 1 4593333
-56 1 4605333
-57 1 4608000
-55 1 4610666
-58 1 4613333
-57 1 4616000
-58 1 4618666
-68 1 4621333
-67 1 4624000
-71 1 4626666
-289 1 4629333
-282 1 4641333
-273 1 4662666
-279 1 4684000
-286 1 4705333
-282 1 4726666
-284 1 4748000
-278 1 4769333
-281 1 4790666
-280 1 4812000
-263 1 4833333
-260 1 4854666
-271 1 4876000
-273 1 4897333
-282 1 4918666
-279 1 4940000
-297 1 4961333
-291 1 4982666
-309 1 5004000
-283 1 5025333
-292 1 5046666
-304 1 5068000
-296 1 5089333
-293 1 5110666
-282 1 5132000
-273 1 5153333
-284 1 5174666
-281 1 5196000
-265 1 5217333
-272 1 5238666
-277 1 5260000
-280 1 5281333
-276 1 5302666
-273 1 5324000
-278 1 5345333
-280 1 5366666
-280 1 5388000
-268 1 5409333
-282 1 5430666
-277 1 5452000
-274 1 5473333
-275 1 5494666
-270 1 5516000
-282 1 5537333
-279 1 5558666
-260 1 5580000
-272 1 5601333
-275 1 5622666
-273 1 5644000
-276 1 5665333
-288 1 5686666
-294 1 5708000
-271 1 5729333
-277 1 5750666
-288 1 5772000
-276 1 5793333
-282 1 5814666
-276 1 5836000
-275 1 5857333
-268 1 5878666
-270 1 5900000
-266 1 5921333
-268 1 5942666
-282 1 5964000
-279 1 5985333
-279 1 6006666
-287 1 6028000
-286 1 6049333
-280 1 6070666
-290 1 6092000
-266 1 6113333
-292 1 6134666
-264 1 6156000
-271 1 6177333
-277 1 6198666
-292 1 6220000
-298 1 6241333
-284 1 6262666
-287 1 6284000
-275 1 6305333
-291 1 6326666
-287 1 6348000
-283 1 6369333
-284 1 6390666
-271 1 6412000
-282 1 6433333
-277 1 6454666
-282 1 6476000
-285 1 6497333
-280 1 6518666
-271 1 6540000
-289 1 6561333
-287 1 6582666
-294 1 6604000
-277 1 6625333
-281 1 6646666
-274 1 6668000
-271 1 6689333
-279 1 6710666
-288 1 6732000
-280 1 6753333
-284 1 6774666
-278 1 6796000
-276 1 6817333
-275 1 6838666
-263 1 6860000
-266 1 6881333
-247 1 6902666
-269 1 6924000
-263 1 6945333
-283 1 6966666
-280 1 6988000
-281 1 7009333
-299 1 7030666
-285 1 7052000
-288 1 7073333
-299 1 7094666
-288 1 7116000
-279 1 7137333
-276 1 7158666
-277 1 7180000
-282 1 7201333
-285 1 7222666
-295 1 7244000
-294 1 7265333
-304 1 7286666
-282 1 7308000
-299 1 7329333
-283 1 7350666
-282 1 7372000
-287 1 7393333
-306 1 7414666
-304 1 7436000
-289 1 7457333
-299 1 7478666
-281 1 7500000
-281 1 7521333
-66 1 7542666
-63 1 7554666
-289 1 7557333
-270 1 7569333
-257 1 7590666
-246 1 7612000
-264 1 7633333
-280 1 7654666
-273 1 7676000
-285 1 7697333
-267 1 7718666
-275 1 7740000
-278 1 7761333
-293 1 7782666
-281 1 7804000
-297 1 7825333
-294 1 7846666
-286 1 7868000
-290 1 7889333
-290 1 7910666
-289 1 7932000
-286 1 7953333
-282 1 7974666
-306 1 7996000
-287 1 8017333
-312 1 8038666
-312 1 8060000
-307 1 8081333
-293 1 8102666
-289 1 8124000
-285 1 8145333
-290 1 8166666
-285 1 8188000
-311 1 8209333
-307 1 8230666
-314 1 8252000
-318 1 8273333
-319 1 8294666
-315 1 8316000
-300 1 8337333
-295 1 8358666
-291 1 8380000
-282 1 8401333
-295 1 8422666
-296 1 8444000
-288 1 8465333
-304 1 8486666
-299 1 8508000
-298 1 8529333
-305 1 8550666
-295 1 8572000
-296 1 8593333
-295 1 8614666
-287 1 8636000
-292 1 8657333
-308 1 8678666
-287 1 8700000
-307 1 8721333
-295 1 8742666
-292 1 8764000
-292 1 8785333
-279 1 8806666
-289 1 8828000
-303 1 8849333
-307 1 8870666
-310 1 8892000
-300 1 8913333
-299 1 8934666
-299 1 8956000
-288 1 8977333
-290 1 8998666
-291 1 9020000
-304 1 9041333
-299 1 9062666
-304 1 9084000
-290 1 9105333
-309 1 9126666
-301 1 9148000
-296 1 9169333
-288 1 9190666
-305 1 9212000
-317 1 9233333
-292 1 9254666
-300 1 9276000
-301 1 9297333
-295 1 9318666
-282 1 9340000
-296 1 9361333
-295 1 9382666
-287 1 9404000
-292 1 9425333
-301 1 9446666
-311 1 9468000
-301 1 9489333
-307 1 9510666
-300 1 9532000
-309 1 9553333
-298 1 9574666
-304 1 9596000
-60 1 9617333
-59 1 9629333
-64 1 9632000
-64 1 9634666
-77 1 9637333
-72 1 9640000
-306 1 9642666
-297 1 9654666
-294 1 9676000
-295 1 9697333
-308 1 9718666
-303 1 9740000
-308 1 9761333
-289 1 9782666
-300 1 9804000
-304 1 9825333
-308 1 9846666
-64 1 9868000
-63 1 9880000
-64 1 9882666
-64 1 9885333
-60 1 9888000
-74 1 9890666
-69 1 9893333
-68 1 9896000
-61 1 9898666
-71 1 9901333
-76 1 9904000
-73 1 9906666
-70 1 9909333
-72 1 9912000
-60 1 9914666
-69 1 9917333
-82 1 9920000
-278 1 9922666
-30 1 9934666
diff --git a/codec2/hidl/1.0/mts/res/bbb_vorbis_stereo_128kbps_48000hz.vorbis b/codec2/hidl/1.0/mts/res/bbb_vorbis_stereo_128kbps_48000hz.vorbis
deleted file mode 100644
index 404c5f8..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_vorbis_stereo_128kbps_48000hz.vorbis
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_vp8_176x144_240kbps_60fps.info b/codec2/hidl/1.0/mts/res/bbb_vp8_176x144_240kbps_60fps.info
deleted file mode 100644
index 901ea45..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_vp8_176x144_240kbps_60fps.info
+++ /dev/null
@@ -1,60 +0,0 @@
-10271 1 0
-106 0 17000
-134 0 33000
-149 0 50000
-152 0 67000
-159 0 83000
-114 0 100000
-723 0 117000
-175 0 133000
-186 0 150000
-201 0 167000
-270 0 183000
-383 0 200000
-255 0 217000
-286 0 233000
-273 0 250000
-1224 0 267000
-220 0 283000
-231 0 300000
-192 0 317000
-182 0 333000
-289 0 350000
-204 0 367000
-237 0 383000
-187 0 400000
-898 0 417000
-231 0 433000
-266 0 450000
-278 0 467000
-205 0 483000
-255 0 500000
-169 0 517000
-233 0 533000
-1011 0 550000
-202 0 567000
-251 0 583000
-223 0 600000
-283 0 617000
-362 0 633000
-217 0 650000
-245 0 667000
-960 0 683000
-233 0 700000
-286 0 717000
-272 0 733000
-254 0 750000
-331 0 767000
-218 0 783000
-261 0 800000
-981 0 817000
-226 0 833000
-226 0 850000
-279 0 867000
-225 0 883000
-295 0 900000
-175 0 917000
-249 0 933000
-996 0 950000
-169 0 967000
-224 0 983000
diff --git a/codec2/hidl/1.0/mts/res/bbb_vp8_176x144_240kbps_60fps.vp8 b/codec2/hidl/1.0/mts/res/bbb_vp8_176x144_240kbps_60fps.vp8
deleted file mode 100644
index 6eba56c..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_vp8_176x144_240kbps_60fps.vp8
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_vp8_640x360_2mbps_30fps.info b/codec2/hidl/1.0/mts/res/bbb_vp8_640x360_2mbps_30fps.info
deleted file mode 100644
index 9c00c77..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_vp8_640x360_2mbps_30fps.info
+++ /dev/null
@@ -1,300 +0,0 @@
-86980 1 0
-6741 0 33000
-9433 0 67000
-9363 0 100000
-8671 0 133000
-9003 0 167000
-7751 0 200000
-13207 0 233000
-8542 0 267000
-9344 0 300000
-8069 0 333000
-8588 0 367000
-12087 0 400000
-7315 0 433000
-9654 0 467000
-13100 0 500000
-7832 0 533000
-10060 0 567000
-8540 0 600000
-8667 0 633000
-8532 0 667000
-6018 0 700000
-8520 0 733000
-15350 0 767000
-6110 0 800000
-7876 0 833000
-6133 0 867000
-9476 0 900000
-11002 0 933000
-7484 0 967000
-8760 0 1000000
-16515 0 1033000
-7482 0 1067000
-6983 0 1100000
-7561 0 1133000
-8263 0 1167000
-10682 0 1200000
-8108 0 1233000
-7924 0 1267000
-8693 0 1300000
-14190 0 1333000
-7393 0 1367000
-6864 0 1400000
-9431 0 1433000
-7674 0 1467000
-8458 0 1500000
-5899 0 1533000
-8259 0 1567000
-7963 0 1600000
-14779 0 1633000
-6877 0 1667000
-7268 0 1700000
-8526 0 1733000
-8467 0 1767000
-11200 0 1800000
-7261 0 1833000
-8280 0 1867000
-6718 0 1900000
-17742 0 1933000
-5206 0 1967000
-5700 0 2000000
-5872 0 2033000
-7915 0 2067000
-8493 0 2100000
-6545 0 2133000
-9072 0 2167000
-13200 0 2200000
-9632 0 2233000
-10016 0 2267000
-7824 0 2300000
-10628 0 2333000
-10401 0 2367000
-10892 0 2400000
-9023 0 2433000
-10734 0 2467000
-15045 0 2500000
-7940 0 2533000
-9657 0 2567000
-8743 0 2600000
-8074 0 2633000
-9445 0 2667000
-6494 0 2700000
-8601 0 2733000
-13478 0 2767000
-6942 0 2800000
-8002 0 2833000
-7940 0 2867000
-8320 0 2900000
-12215 0 2933000
-6668 0 2967000
-11384 0 3000000
-8378 0 3033000
-12908 0 3067000
-8420 0 3100000
-7502 0 3133000
-8482 0 3167000
-10968 0 3200000
-12338 0 3233000
-8657 0 3267000
-10468 0 3300000
-13878 0 3333000
-9374 0 3367000
-9857 0 3400000
-10381 0 3433000
-9984 0 3467000
-9956 0 3500000
-8905 0 3533000
-8672 0 3567000
-8122 0 3600000
-9677 0 3633000
-9812 0 3667000
-9622 0 3700000
-9023 0 3733000
-7147 0 3767000
-9146 0 3800000
-7488 0 3833000
-10812 0 3867000
-8340 0 3900000
-13280 0 3933000
-5167 0 3967000
-6991 0 4000000
-6543 0 4033000
-5952 0 4067000
-5164 0 4100000
-4011 0 4133000
-3794 0 4167000
-12959 0 4200000
-71020 1 4233000
-5351 0 4267000
-6283 0 4300000
-5080 0 4333000
-6707 0 4367000
-5857 0 4400000
-5221 0 4433000
-10972 0 4467000
-7023 0 4500000
-6907 0 4533000
-7851 0 4567000
-4843 0 4600000
-6085 0 4633000
-4868 0 4667000
-5093 0 4700000
-12807 0 4733000
-6330 0 4767000
-4209 0 4800000
-4596 0 4833000
-6316 0 4867000
-4954 0 4900000
-5533 0 4933000
-7749 0 4967000
-12486 0 5000000
-5468 0 5033000
-4353 0 5067000
-5786 0 5100000
-5551 0 5133000
-6711 0 5167000
-5688 0 5200000
-6258 0 5233000
-12975 0 5267000
-4873 0 5300000
-4552 0 5333000
-4844 0 5367000
-4774 0 5400000
-5025 0 5433000
-5204 0 5467000
-4814 0 5500000
-14835 0 5533000
-5343 0 5567000
-4808 0 5600000
-5071 0 5633000
-6324 0 5667000
-5243 0 5700000
-4995 0 5733000
-5134 0 5767000
-11054 0 5800000
-4807 0 5833000
-5118 0 5867000
-6424 0 5900000
-4984 0 5933000
-7187 0 5967000
-5505 0 6000000
-6941 0 6033000
-11517 0 6067000
-5646 0 6100000
-6832 0 6133000
-5294 0 6167000
-6200 0 6200000
-6328 0 6233000
-4348 0 6267000
-4607 0 6300000
-12958 0 6333000
-4308 0 6367000
-6084 0 6400000
-4494 0 6433000
-5338 0 6467000
-5742 0 6500000
-5472 0 6533000
-8459 0 6567000
-13075 0 6600000
-8986 0 6633000
-9583 0 6667000
-8792 0 6700000
-9004 0 6733000
-9632 0 6767000
-9393 0 6800000
-9259 0 6833000
-11927 0 6867000
-10323 0 6900000
-15248 0 6933000
-11244 0 6967000
-15558 0 7000000
-6197 0 7033000
-8044 0 7067000
-11432 0 7100000
-8737 0 7133000
-13885 0 7167000
-11158 0 7200000
-15152 0 7233000
-7025 0 7267000
-8025 0 7300000
-13362 0 7333000
-8090 0 7367000
-13637 0 7400000
-6148 0 7433000
-9270 0 7467000
-8633 0 7500000
-10673 0 7533000
-14208 0 7567000
-8084 0 7600000
-13783 0 7633000
-10660 0 7667000
-7466 0 7700000
-14433 0 7733000
-10934 0 7767000
-7239 0 7800000
-12548 0 7833000
-6564 0 7867000
-10761 0 7900000
-10992 0 7933000
-12924 0 7967000
-12348 0 8000000
-6770 0 8033000
-14288 0 8067000
-29345 1 8100000
-1822 0 8133000
-1087 0 8167000
-1109 0 8200000
-2007 0 8233000
-1798 0 8267000
-1635 0 8300000
-19607 0 8333000
-919 0 8367000
-2357 0 8400000
-3578 0 8433000
-4497 0 8467000
-4314 0 8500000
-3851 0 8533000
-3822 0 8567000
-4252 0 8600000
-4775 0 8633000
-12203 0 8667000
-5078 0 8700000
-5876 0 8733000
-6124 0 8767000
-4490 0 8800000
-3538 0 8833000
-3450 0 8867000
-3611 0 8900000
-2847 0 8933000
-2605 0 8967000
-12243 0 9000000
-1946 0 9033000
-1847 0 9067000
-2035 0 9100000
-2572 0 9133000
-2326 0 9167000
-2645 0 9200000
-2938 0 9233000
-2495 0 9267000
-2609 0 9300000
-9744 0 9333000
-1796 0 9367000
-1985 0 9400000
-1759 0 9433000
-2259 0 9467000
-2233 0 9500000
-2044 0 9533000
-2502 0 9567000
-2307 0 9600000
-2739 0 9633000
-11707 0 9667000
-5168 0 9700000
-4483 0 9733000
-3044 0 9767000
-4241 0 9800000
-4392 0 9833000
-4934 0 9867000
-5934 0 9900000
-5647 0 9933000
-5326 0 9967000
diff --git a/codec2/hidl/1.0/mts/res/bbb_vp8_640x360_2mbps_30fps.vp8 b/codec2/hidl/1.0/mts/res/bbb_vp8_640x360_2mbps_30fps.vp8
deleted file mode 100644
index 6ec460c..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_vp8_640x360_2mbps_30fps.vp8
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_vp9_176x144_285kbps_60fps.info b/codec2/hidl/1.0/mts/res/bbb_vp9_176x144_285kbps_60fps.info
deleted file mode 100644
index ca1a03c..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_vp9_176x144_285kbps_60fps.info
+++ /dev/null
@@ -1,60 +0,0 @@
-6939 1 0
-6818 0 17000
-310 0 33000
-273 0 50000
-267 0 67000
-239 0 83000
-232 0 100000
-222 0 117000
-186 0 133000
-194 0 150000
-189 0 167000
-18 0 183000
-2014 0 200000
-297 0 217000
-287 0 233000
-237 0 250000
-263 0 267000
-238 0 283000
-257 0 300000
-229 0 317000
-187 0 333000
-191 0 350000
-18 0 367000
-2203 0 383000
-265 0 400000
-224 0 417000
-254 0 433000
-252 0 450000
-273 0 467000
-208 0 483000
-154 0 500000
-182 0 517000
-138 0 533000
-18 0 550000
-2502 0 567000
-286 0 583000
-304 0 600000
-341 0 617000
-259 0 633000
-275 0 650000
-222 0 667000
-254 0 683000
-253 0 700000
-225 0 717000
-18 0 733000
-2501 0 750000
-282 0 767000
-298 0 783000
-252 0 800000
-242 0 817000
-250 0 833000
-260 0 850000
-218 0 867000
-213 0 883000
-144 0 900000
-18 0 917000
-233 0 933000
-254 0 950000
-229 0 967000
-239 0 983000
diff --git a/codec2/hidl/1.0/mts/res/bbb_vp9_176x144_285kbps_60fps.vp9 b/codec2/hidl/1.0/mts/res/bbb_vp9_176x144_285kbps_60fps.vp9
deleted file mode 100644
index 2633c8a..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_vp9_176x144_285kbps_60fps.vp9
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/bbb_vp9_640x360_1600kbps_30fps.info b/codec2/hidl/1.0/mts/res/bbb_vp9_640x360_1600kbps_30fps.info
deleted file mode 100644
index afe9679..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_vp9_640x360_1600kbps_30fps.info
+++ /dev/null
@@ -1,300 +0,0 @@
-54918 1 0
-46280 0 33000
-2006 0 67000
-2841 0 100000
-3044 0 133000
-3429 0 167000
-3196 0 200000
-2926 0 233000
-2821 0 267000
-1150 0 300000
-36 0 333000
-38084 0 367000
-3689 0 400000
-3473 0 433000
-3011 0 467000
-3090 0 500000
-2516 0 533000
-2771 0 567000
-3250 0 600000
-1159 0 633000
-34 0 667000
-39690 0 700000
-3615 0 733000
-2494 0 767000
-2893 0 800000
-3329 0 833000
-2939 0 867000
-2352 0 900000
-2732 0 933000
-1746 0 967000
-33 0 1000000
-41501 0 1033000
-2997 0 1067000
-2666 0 1100000
-3582 0 1133000
-2616 0 1167000
-2923 0 1200000
-2696 0 1233000
-1628 0 1267000
-1887 0 1300000
-33 0 1333000
-42876 0 1367000
-2588 0 1400000
-3316 0 1433000
-2287 0 1467000
-3375 0 1500000
-2108 0 1533000
-2961 0 1567000
-1730 0 1600000
-1800 0 1633000
-34 0 1667000
-43797 0 1700000
-2484 0 1733000
-2556 0 1767000
-2671 0 1800000
-2338 0 1833000
-3133 0 1867000
-2002 0 1900000
-1794 0 1933000
-1279 0 1967000
-32 0 2000000
-42642 0 2033000
-2686 0 2067000
-2202 0 2100000
-2145 0 2133000
-2566 0 2167000
-2190 0 2200000
-1580 0 2233000
-1711 0 2267000
-648 0 2300000
-32 0 2333000
-40409 0 2367000
-2628 0 2400000
-1973 0 2433000
-2360 0 2467000
-3043 0 2500000
-1730 0 2533000
-1456 0 2567000
-2312 0 2600000
-369 0 2633000
-32 0 2667000
-41391 0 2700000
-2967 0 2733000
-2454 0 2767000
-1825 0 2800000
-1853 0 2833000
-1746 0 2867000
-2347 0 2900000
-1362 0 2933000
-441 0 2967000
-34 0 3000000
-42503 0 3033000
-1877 0 3067000
-1690 0 3100000
-1367 0 3133000
-1520 0 3167000
-1240 0 3200000
-1094 0 3233000
-739 0 3267000
-392 0 3300000
-33 0 3333000
-35104 0 3367000
-1463 0 3400000
-2029 0 3433000
-1626 0 3467000
-1956 0 3500000
-799 0 3533000
-556 0 3567000
-584 0 3600000
-191 0 3633000
-36 0 3667000
-37652 0 3700000
-862 0 3733000
-524 0 3767000
-641 0 3800000
-584 0 3833000
-360 0 3867000
-365 0 3900000
-361 0 3933000
-154 0 3967000
-36 0 4000000
-125740 0 4033000
-332 0 4067000
-381 0 4100000
-420 0 4133000
-464 0 4167000
-288 0 4200000
-2660 0 4233000
-127564 1 4267000
-30696 0 4300000
-3423 0 4333000
-3310 0 4367000
-3513 0 4400000
-3735 0 4433000
-3358 0 4467000
-3108 0 4500000
-2800 0 4533000
-1751 0 4567000
-41 0 4600000
-39862 0 4633000
-3739 0 4667000
-3755 0 4700000
-3408 0 4733000
-3783 0 4767000
-3423 0 4800000
-2801 0 4833000
-2549 0 4867000
-1461 0 4900000
-40 0 4933000
-41667 0 4967000
-3623 0 5000000
-3356 0 5033000
-3424 0 5067000
-3548 0 5100000
-3119 0 5133000
-2905 0 5167000
-2772 0 5200000
-1623 0 5233000
-43 0 5267000
-46783 0 5300000
-3462 0 5333000
-3470 0 5367000
-3677 0 5400000
-3684 0 5433000
-3266 0 5467000
-3127 0 5500000
-2809 0 5533000
-1750 0 5567000
-40 0 5600000
-46215 0 5633000
-3599 0 5667000
-3558 0 5700000
-3544 0 5733000
-3632 0 5767000
-3548 0 5800000
-2968 0 5833000
-2715 0 5867000
-1729 0 5900000
-41 0 5933000
-45958 0 5967000
-3776 0 6000000
-3525 0 6033000
-3644 0 6067000
-3786 0 6100000
-3222 0 6133000
-2923 0 6167000
-2752 0 6200000
-1592 0 6233000
-41 0 6267000
-46031 0 6300000
-3520 0 6333000
-3380 0 6367000
-3371 0 6400000
-3427 0 6433000
-3135 0 6467000
-2988 0 6500000
-2730 0 6533000
-1671 0 6567000
-41 0 6600000
-45846 0 6633000
-3535 0 6667000
-3507 0 6700000
-3429 0 6733000
-3491 0 6767000
-3325 0 6800000
-2979 0 6833000
-2800 0 6867000
-1610 0 6900000
-40 0 6933000
-45958 0 6967000
-3762 0 7000000
-3254 0 7033000
-3408 0 7067000
-3860 0 7100000
-3198 0 7133000
-2966 0 7167000
-2882 0 7200000
-1763 0 7233000
-42 0 7267000
-46130 0 7300000
-3593 0 7333000
-3523 0 7367000
-3939 0 7400000
-3980 0 7433000
-3470 0 7467000
-3191 0 7500000
-2969 0 7533000
-1740 0 7567000
-41 0 7600000
-46300 0 7633000
-3739 0 7667000
-3781 0 7700000
-3964 0 7733000
-4023 0 7767000
-3480 0 7800000
-3065 0 7833000
-2934 0 7867000
-1805 0 7900000
-42 0 7933000
-38166 0 7967000
-4062 0 8000000
-3844 0 8033000
-4547 0 8067000
-934 0 8100000
-365 0 8133000
-181 0 8167000
-463 0 8200000
-419 0 8233000
-38 0 8267000
-9702 0 8300000
-344 0 8333000
-276 0 8367000
-1350 0 8400000
-1703 0 8433000
-1843 0 8467000
-1228 0 8500000
-35580 1 8533000
-27458 0 8567000
-2144 0 8600000
-2482 0 8633000
-2004 0 8667000
-2822 0 8700000
-2570 0 8733000
-1726 0 8767000
-1248 0 8800000
-844 0 8833000
-35 0 8867000
-14207 0 8900000
-1037 0 8933000
-749 0 8967000
-829 0 9000000
-915 0 9033000
-685 0 9067000
-767 0 9100000
-798 0 9133000
-342 0 9167000
-31 0 9200000
-12590 0 9233000
-923 0 9267000
-819 0 9300000
-776 0 9333000
-863 0 9367000
-729 0 9400000
-471 0 9433000
-638 0 9467000
-276 0 9500000
-38 0 9533000
-17272 0 9567000
-856 0 9600000
-1158 0 9633000
-2172 0 9667000
-2751 0 9700000
-2142 0 9733000
-1267 0 9767000
-1965 0 9800000
-1510 0 9833000
-34 0 9867000
-2692 0 9900000
-2778 0 9933000
-2585 0 9967000
diff --git a/codec2/hidl/1.0/mts/res/bbb_vp9_640x360_1600kbps_30fps.vp9 b/codec2/hidl/1.0/mts/res/bbb_vp9_640x360_1600kbps_30fps.vp9
deleted file mode 100644
index c1e2001..0000000
--- a/codec2/hidl/1.0/mts/res/bbb_vp9_640x360_1600kbps_30fps.vp9
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/sine_amrnb_1ch_12kbps_8000hz.amrnb b/codec2/hidl/1.0/mts/res/sine_amrnb_1ch_12kbps_8000hz.amrnb
deleted file mode 100644
index 3daf2e0..0000000
--- a/codec2/hidl/1.0/mts/res/sine_amrnb_1ch_12kbps_8000hz.amrnb
+++ /dev/null
Binary files differ
diff --git a/codec2/hidl/1.0/mts/res/sine_amrnb_1ch_12kbps_8000hz.info b/codec2/hidl/1.0/mts/res/sine_amrnb_1ch_12kbps_8000hz.info
deleted file mode 100644
index b36e813..0000000
--- a/codec2/hidl/1.0/mts/res/sine_amrnb_1ch_12kbps_8000hz.info
+++ /dev/null
@@ -1,833 +0,0 @@
-32 1 0
-32 1 20000
-32 1 40000
-32 1 60000
-32 1 80000
-32 1 100000
-32 1 120000
-32 1 140000
-32 1 160000
-32 1 180000
-32 1 200000
-32 1 220000
-32 1 240000
-32 1 260000
-32 1 280000
-32 1 300000
-32 1 320000
-32 1 340000
-32 1 360000
-32 1 380000
-32 1 400000
-32 1 420000
-32 1 440000
-32 1 460000
-32 1 480000
-32 1 500000
-32 1 520000
-32 1 540000
-32 1 560000
-32 1 580000
-32 1 600000
-32 1 620000
-32 1 640000
-32 1 660000
-32 1 680000
-32 1 700000
-32 1 720000
-32 1 740000
-32 1 760000
-32 1 780000
-32 1 800000
-32 1 820000
-32 1 840000
-32 1 860000
-32 1 880000
-32 1 900000
-32 1 920000
-32 1 940000
-32 1 960000
-32 1 980000
-32 1 1000000
-32 1 1020000
-32 1 1040000
-32 1 1060000
-32 1 1080000
-32 1 1100000
-32 1 1120000
-32 1 1140000
-32 1 1160000
-32 1 1180000
-32 1 1200000
-32 1 1220000
-32 1 1240000
-32 1 1260000
-32 1 1280000
-32 1 1300000
-32 1 1320000
-32 1 1340000
-32 1 1360000
-32 1 1380000
-32 1 1400000
-32 1 1420000
-32 1 1440000
-32 1 1460000
-32 1 1480000
-32 1 1500000
-32 1 1520000
-32 1 1540000
-32 1 1560000
-32 1 1580000
-32 1 1600000
-32 1 1620000
-32 1 1640000
-32 1 1660000
-32 1 1680000
-32 1 1700000
-32 1 1720000
-32 1 1740000
-32 1 1760000
-32 1 1780000
-32 1 1800000
-32 1 1820000
-32 1 1840000
-32 1 1860000
-32 1 1880000
-32 1 1900000
-32 1 1920000
-32 1 1940000
-32 1 1960000
-32 1 1980000
-32 1 2000000
-32 1 2020000
-32 1 2040000
-32 1 2060000
-32 1 2080000
-32 1 2100000
-32 1 2120000
-32 1 2140000
-32 1 2160000
-32 1 2180000
-32 1 2200000
-32 1 2220000
-32 1 2240000
-32 1 2260000
-32 1 2280000
-32 1 2300000
-32 1 2320000
-32 1 2340000
-32 1 2360000
-32 1 2380000
-32 1 2400000
-32 1 2420000
-32 1 2440000
-32 1 2460000
-32 1 2480000
-32 1 2500000
-32 1 2520000
-32 1 2540000
-32 1 2560000
-32 1 2580000
-32 1 2600000
-32 1 2620000
-32 1 2640000
-32 1 2660000
-32 1 2680000
-32 1 2700000
-32 1 2720000
-32 1 2740000
-32 1 2760000
-32 1 2780000
-32 1 2800000
-32 1 2820000
-32 1 2840000
-32 1 2860000
-32 1 2880000
-32 1 2900000
-32 1 2920000
-32 1 2940000
-32 1 2960000
-32 1 2980000
-32 1 3000000
-32 1 3020000
-32 1 3040000
-32 1 3060000
-32 1 3080000
-32 1 3100000
-32 1 3120000
-32 1 3140000
-32 1 3160000
-32 1 3180000
-32 1 3200000
-32 1 3220000
-32 1 3240000
-32 1 3260000
-32 1 3280000
-32 1 3300000
-32 1 3320000
-32 1 3340000
-32 1 3360000
-32 1 3380000
-32 1 3400000
-32 1 3420000
-32 1 3440000
-32 1 3460000
-32 1 3480000
-32 1 3500000
-32 1 3520000
-32 1 3540000
-32 1 3560000
-32 1 3580000
-32 1 3600000
-32 1 3620000
-32 1 3640000
-32 1 3660000
-32 1 3680000
-32 1 3700000
-32 1 3720000
-32 1 3740000
-32 1 3760000
-32 1 3780000
-32 1 3800000
-32 1 3820000
-32 1 3840000
-32 1 3860000
-32 1 3880000
-32 1 3900000
-32 1 3920000
-32 1 3940000
-32 1 3960000
-32 1 3980000
-32 1 4000000
-32 1 4020000
-32 1 4040000
-32 1 4060000
-32 1 4080000
-32 1 4100000
-32 1 4120000
-32 1 4140000
-32 1 4160000
-32 1 4180000
-32 1 4200000
-32 1 4220000
-32 1 4240000
-32 1 4260000
-32 1 4280000
-32 1 4300000
-32 1 4320000
-32 1 4340000
-32 1 4360000
-32 1 4380000
-32 1 4400000
-32 1 4420000
-32 1 4440000
-32 1 4460000
-32 1 4480000
-32 1 4500000
-32 1 4520000
-32 1 4540000
-32 1 4560000
-32 1 4580000
-32 1 4600000
-32 1 4620000
-32 1 4640000
-32 1 4660000
-32 1 4680000
-32 1 4700000
-32 1 4720000
-32 1 4740000
-32 1 4760000
-32 1 4780000
-32 1 4800000
-32 1 4820000
-32 1 4840000
-32 1 4860000
-32 1 4880000
-32 1 4900000
-32 1 4920000
-32 1 4940000
-32 1 4960000
-32 1 4980000
-32 1 5000000
-32 1 5020000
-32 1 5040000
-32 1 5060000
-32 1 5080000
-32 1 5100000
-32 1 5120000
-32 1 5140000
-32 1 5160000
-32 1 5180000
-32 1 5200000
-32 1 5220000
-32 1 5240000
-32 1 5260000
-32 1 5280000
-32 1 5300000
-32 1 5320000
-32 1 5340000
-32 1 5360000
-32 1 5380000
-32 1 5400000
-32 1 5420000
-32 1 5440000
-32 1 5460000
-32 1 5480000
-32 1 5500000
-32 1 5520000
-32 1 5540000
-32 1 5560000
-32 1 5580000
-32 1 5600000
-32 1 5620000
-32 1 5640000
-32 1 5660000
-32 1 5680000
-32 1 5700000
-32 1 5720000
-32 1 5740000
-32 1 5760000
-32 1 5780000
-32 1 5800000
-32 1 5820000
-32 1 5840000
-32 1 5860000
-32 1 5880000
-32 1 5900000
-32 1 5920000
-32 1 5940000
-32 1 5960000
-32 1 5980000
-32 1 6000000
-32 1 6020000
-32 1 6040000
-32 1 6060000
-32 1 6080000
-32 1 6100000
-32 1 6120000
-32 1 6140000
-32 1 6160000
-32 1 6180000
-32 1 6200000
-32 1 6220000
-32 1 6240000
-32 1 6260000
-32 1 6280000
-32 1 6300000
-32 1 6320000
-32 1 6340000
-32 1 6360000
-32 1 6380000
-32 1 6400000
-32 1 6420000
-32 1 6440000
-32 1 6460000
-32 1 6480000
-32 1 6500000
-32 1 6520000
-32 1 6540000
-32 1 6560000
-32 1 6580000
-32 1 6600000
-32 1 6620000
-32 1 6640000
-32 1 6660000
-32 1 6680000
-32 1 6700000
-32 1 6720000
-32 1 6740000
-32 1 6760000
-32 1 6780000
-32 1 6800000
-32 1 6820000
-32 1 6840000
-32 1 6860000
-32 1 6880000
-32 1 6900000
-32 1 6920000
-32 1 6940000
-32 1 6960000
-32 1 6980000
-32 1 7000000
-32 1 7020000
-32 1 7040000
-32 1 7060000
-32 1 7080000
-32 1 7100000
-32 1 7120000
-32 1 7140000
-32 1 7160000
-32 1 7180000
-32 1 7200000
-32 1 7220000
-32 1 7240000
-32 1 7260000
-32 1 7280000
-32 1 7300000
-32 1 7320000
-32 1 7340000
-32 1 7360000
-32 1 7380000
-32 1 7400000
-32 1 7420000
-32 1 7440000
-32 1 7460000
-32 1 7480000
-32 1 7500000
-32 1 7520000
-32 1 7540000
-32 1 7560000
-32 1 7580000
-32 1 7600000
-32 1 7620000
-32 1 7640000
-32 1 7660000
-32 1 7680000
-32 1 7700000
-32 1 7720000
-32 1 7740000
-32 1 7760000
-32 1 7780000
-32 1 7800000
-32 1 7820000
-32 1 7840000
-32 1 7860000
-32 1 7880000
-32 1 7900000
-32 1 7920000
-32 1 7940000
-32 1 7960000
-32 1 7980000
-32 1 8000000
-32 1 8020000
-32 1 8040000
-32 1 8060000
-32 1 8080000
-32 1 8100000
-32 1 8120000
-32 1 8140000
-32 1 8160000
-32 1 8180000
-32 1 8200000
-32 1 8220000
-32 1 8240000
-32 1 8260000
-32 1 8280000
-32 1 8300000
-32 1 8320000
-32 1 8340000
-32 1 8360000
-32 1 8380000
-32 1 8400000
-32 1 8420000
-32 1 8440000
-32 1 8460000
-32 1 8480000
-32 1 8500000
-32 1 8520000
-32 1 8540000
-32 1 8560000
-32 1 8580000
-32 1 8600000
-32 1 8620000
-32 1 8640000
-32 1 8660000
-32 1 8680000
-32 1 8700000
-32 1 8720000
-32 1 8740000
-32 1 8760000
-32 1 8780000
-32 1 8800000
-32 1 8820000
-32 1 8840000
-32 1 8860000
-32 1 8880000
-32 1 8900000
-32 1 8920000
-32 1 8940000
-32 1 8960000
-32 1 8980000
-32 1 9000000
-32 1 9020000
-32 1 9040000
-32 1 9060000
-32 1 9080000
-32 1 9100000
-32 1 9120000
-32 1 9140000
-32 1 9160000
-32 1 9180000
-32 1 9200000
-32 1 9220000
-32 1 9240000
-32 1 9260000
-32 1 9280000
-32 1 9300000
-32 1 9320000
-32 1 9340000
-32 1 9360000
-32 1 9380000
-32 1 9400000
-32 1 9420000
-32 1 9440000
-32 1 9460000
-32 1 9480000
-32 1 9500000
-32 1 9520000
-32 1 9540000
-32 1 9560000
-32 1 9580000
-32 1 9600000
-32 1 9620000
-32 1 9640000
-32 1 9660000
-32 1 9680000
-32 1 9700000
-32 1 9720000
-32 1 9740000
-32 1 9760000
-32 1 9780000
-32 1 9800000
-32 1 9820000
-32 1 9840000
-32 1 9860000
-32 1 9880000
-32 1 9900000
-32 1 9920000
-32 1 9940000
-32 1 9960000
-32 1 9980000
-32 1 10000000
-32 1 10020000
-32 1 10040000
-32 1 10060000
-32 1 10080000
-32 1 10100000
-32 1 10120000
-32 1 10140000
-32 1 10160000
-32 1 10180000
-32 1 10200000
-32 1 10220000
-32 1 10240000
-32 1 10260000
-32 1 10280000
-32 1 10300000
-32 1 10320000
-32 1 10340000
-32 1 10360000
-32 1 10380000
-32 1 10400000
-32 1 10420000
-32 1 10440000
-32 1 10460000
-32 1 10480000
-32 1 10500000
-32 1 10520000
-32 1 10540000
-32 1 10560000
-32 1 10580000
-32 1 10600000
-32 1 10620000
-32 1 10640000
-32 1 10660000
-32 1 10680000
-32 1 10700000
-32 1 10720000
-32 1 10740000
-32 1 10760000
-32 1 10780000
-32 1 10800000
-32 1 10820000
-32 1 10840000
-32 1 10860000
-32 1 10880000
-32 1 10900000
-32 1 10920000
-32 1 10940000
-32 1 10960000
-32 1 10980000
-32 1 11000000
-32 1 11020000
-32 1 11040000
-32 1 11060000
-32 1 11080000
-32 1 11100000
-32 1 11120000
-32 1 11140000
-32 1 11160000
-32 1 11180000
-32 1 11200000
-32 1 11220000
-32 1 11240000
-32 1 11260000
-32 1 11280000
-32 1 11300000
-32 1 11320000
-32 1 11340000
-32 1 11360000
-32 1 11380000
-32 1 11400000
-32 1 11420000
-32 1 11440000
-32 1 11460000
-32 1 11480000
-32 1 11500000
-32 1 11520000
-32 1 11540000
-32 1 11560000
-32 1 11580000
-32 1 11600000
-32 1 11620000
-32 1 11640000
-32 1 11660000
-32 1 11680000
-32 1 11700000
-32 1 11720000
-32 1 11740000
-32 1 11760000
-32 1 11780000
-32 1 11800000
-32 1 11820000
-32 1 11840000
-32 1 11860000
-32 1 11880000
-32 1 11900000
-32 1 11920000
-32 1 11940000
-32 1 11960000
-32 1 11980000
-32 1 12000000
-32 1 12020000
-32 1 12040000
-32 1 12060000
-32 1 12080000
-32 1 12100000
-32 1 12120000
-32 1 12140000
-32 1 12160000
-32 1 12180000
-32 1 12200000
-32 1 12220000
-32 1 12240000
-32 1 12260000
-32 1 12280000
-32 1 12300000
-32 1 12320000
-32 1 12340000
-32 1 12360000
-32 1 12380000
-32 1 12400000
-32 1 12420000
-32 1 12440000
-32 1 12460000
-32 1 12480000
-32 1 12500000
-32 1 12520000
-32 1 12540000
-32 1 12560000
-32 1 12580000
-32 1 12600000
-32 1 12620000
-32 1 12640000
-32 1 12660000
-32 1 12680000
-32 1 12700000
-32 1 12720000
-32 1 12740000
-32 1 12760000
-32 1 12780000
-32 1 12800000
-32 1 12820000
-32 1 12840000
-32 1 12860000
-32 1 12880000
-32 1 12900000
-32 1 12920000
-32 1 12940000
-32 1 12960000
-32 1 12980000
-32 1 13000000
-32 1 13020000
-32 1 13040000
-32 1 13060000
-32 1 13080000
-32 1 13100000
-32 1 13120000
-32 1 13140000
-32 1 13160000
-32 1 13180000
-32 1 13200000
-32 1 13220000
-32 1 13240000
-32 1 13260000
-32 1 13280000
-32 1 13300000
-32 1 13320000
-32 1 13340000
-32 1 13360000
-32 1 13380000
-32 1 13400000
-32 1 13420000
-32 1 13440000
-32 1 13460000
-32 1 13480000
-32 1 13500000
-32 1 13520000
-32 1 13540000
-32 1 13560000
-32 1 13580000
-32 1 13600000
-32 1 13620000
-32 1 13640000
-32 1 13660000
-32 1 13680000
-32 1 13700000
-32 1 13720000
-32 1 13740000
-32 1 13760000
-32 1 13780000
-32 1 13800000
-32 1 13820000
-32 1 13840000
-32 1 13860000
-32 1 13880000
-32 1 13900000
-32 1 13920000
-32 1 13940000
-32 1 13960000
-32 1 13980000
-32 1 14000000
-32 1 14020000
-32 1 14040000
-32 1 14060000
-32 1 14080000
-32 1 14100000
-32 1 14120000
-32 1 14140000
-32 1 14160000
-32 1 14180000
-32 1 14200000
-32 1 14220000
-32 1 14240000
-32 1 14260000
-32 1 14280000
-32 1 14300000
-32 1 14320000
-32 1 14340000
-32 1 14360000
-32 1 14380000
-32 1 14400000
-32 1 14420000
-32 1 14440000
-32 1 14460000
-32 1 14480000
-32 1 14500000
-32 1 14520000
-32 1 14540000
-32 1 14560000
-32 1 14580000
-32 1 14600000
-32 1 14620000
-32 1 14640000
-32 1 14660000
-32 1 14680000
-32 1 14700000
-32 1 14720000
-32 1 14740000
-32 1 14760000
-32 1 14780000
-32 1 14800000
-32 1 14820000
-32 1 14840000
-32 1 14860000
-32 1 14880000
-32 1 14900000
-32 1 14920000
-32 1 14940000
-32 1 14960000
-32 1 14980000
-32 1 15000000
-32 1 15020000
-32 1 15040000
-32 1 15060000
-32 1 15080000
-32 1 15100000
-32 1 15120000
-32 1 15140000
-32 1 15160000
-32 1 15180000
-32 1 15200000
-32 1 15220000
-32 1 15240000
-32 1 15260000
-32 1 15280000
-32 1 15300000
-32 1 15320000
-32 1 15340000
-32 1 15360000
-32 1 15380000
-32 1 15400000
-32 1 15420000
-32 1 15440000
-32 1 15460000
-32 1 15480000
-32 1 15500000
-32 1 15520000
-32 1 15540000
-32 1 15560000
-32 1 15580000
-32 1 15600000
-32 1 15620000
-32 1 15640000
-32 1 15660000
-32 1 15680000
-32 1 15700000
-32 1 15720000
-32 1 15740000
-32 1 15760000
-32 1 15780000
-32 1 15800000
-32 1 15820000
-32 1 15840000
-32 1 15860000
-32 1 15880000
-32 1 15900000
-32 1 15920000
-32 1 15940000
-32 1 15960000
-32 1 15980000
-32 1 16000000
-32 1 16020000
-32 1 16040000
-32 1 16060000
-32 1 16080000
-32 1 16100000
-32 1 16120000
-32 1 16140000
-32 1 16160000
-32 1 16180000
-32 1 16200000
-32 1 16220000
-32 1 16240000
-32 1 16260000
-32 1 16280000
-32 1 16300000
-32 1 16320000
-32 1 16340000
-32 1 16360000
-32 1 16380000
-32 1 16400000
-32 1 16420000
-32 1 16440000
-32 1 16460000
-32 1 16480000
-32 1 16500000
-32 1 16520000
-32 1 16540000
-32 1 16560000
-32 1 16580000
-32 1 16600000
-32 1 16620000
-32 1 16640000
diff --git a/codec2/hidl/1.0/mts/video/Android.bp b/codec2/hidl/1.0/mts/video/Android.bp
deleted file mode 100644
index e2d9b6f..0000000
--- a/codec2/hidl/1.0/mts/video/Android.bp
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-cc_test {
- name: "MtsHidlC2V1_0TargetVideoDecTest",
- defaults: ["MtsMediaC2V1_0Defaults"],
- srcs: ["MtsHidlC2V1_0TargetVideoDecTest.cpp"],
-}
-
-cc_test {
- name: "MtsHidlC2V1_0TargetVideoEncTest",
- defaults: ["MtsMediaC2V1_0Defaults"],
- srcs: ["MtsHidlC2V1_0TargetVideoEncTest.cpp"],
-}
-
diff --git a/codec2/hidl/1.0/mts/video/MtsHidlC2V1_0TargetVideoDecTest.cpp b/codec2/hidl/1.0/mts/video/MtsHidlC2V1_0TargetVideoDecTest.cpp
deleted file mode 100644
index 9a42d72..0000000
--- a/codec2/hidl/1.0/mts/video/MtsHidlC2V1_0TargetVideoDecTest.cpp
+++ /dev/null
@@ -1,867 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "codec2_hidl_hal_video_dec_test"
-
-#include <android-base/logging.h>
-#include <gtest/gtest.h>
-#include <stdio.h>
-#include <fstream>
-
-#include <codec2/hidl/client.h>
-#include <C2AllocatorIon.h>
-#include <C2Config.h>
-#include <C2Debug.h>
-#include <C2Buffer.h>
-#include <C2BufferPriv.h>
-
-using android::C2AllocatorIon;
-
-#include <VtsHalHidlTargetTestBase.h>
-#include "media_c2_video_hidl_test_common.h"
-#include "media_c2_hidl_test_common.h"
-
-struct FrameInfo {
- int bytesCount;
- uint32_t flags;
- int64_t timestamp;
-};
-
-class LinearBuffer : public C2Buffer {
- public:
- explicit LinearBuffer(const std::shared_ptr<C2LinearBlock>& block)
- : C2Buffer(
- {block->share(block->offset(), block->size(), ::C2Fence())}) {}
-};
-
-static ComponentTestEnvironment* gEnv = nullptr;
-
-namespace {
-
-class Codec2VideoDecHidlTest : public ::testing::VtsHalHidlTargetTestBase {
- private:
- typedef ::testing::VtsHalHidlTargetTestBase Super;
-
- public:
- ::std::string getTestCaseInfo() const override {
- return ::std::string() +
- "Component: " + gEnv->getComponent().c_str() + " | " +
- "Instance: " + gEnv->getInstance().c_str() + " | " +
- "Res: " + gEnv->getRes().c_str();
- }
-
- // google.codec2 Video test setup
- virtual void SetUp() override {
- Super::SetUp();
- mDisableTest = false;
- ALOGV("Codec2VideoDecHidlTest SetUp");
- mClient = android::Codec2Client::CreateFromService(
- gEnv->getInstance().c_str());
- ASSERT_NE(mClient, nullptr);
- mListener.reset(new CodecListener(
- [this](std::list<std::unique_ptr<C2Work>>& workItems) {
- handleWorkDone(workItems);
- }));
- ASSERT_NE(mListener, nullptr);
- for (int i = 0; i < MAX_INPUT_BUFFERS; ++i) {
- mWorkQueue.emplace_back(new C2Work);
- }
- mClient->createComponent(gEnv->getComponent().c_str(), mListener,
- &mComponent);
- ASSERT_NE(mComponent, nullptr);
-
- std::shared_ptr<C2AllocatorStore> store =
- android::GetCodec2PlatformAllocatorStore();
- CHECK_EQ(store->fetchAllocator(C2AllocatorStore::DEFAULT_LINEAR,
- &mLinearAllocator),
- C2_OK);
- mLinearPool = std::make_shared<C2PooledBlockPool>(mLinearAllocator,
- mBlockPoolId++);
- ASSERT_NE(mLinearPool, nullptr);
-
- mCompName = unknown_comp;
- struct StringToName {
- const char* Name;
- standardComp CompName;
- };
-
- const StringToName kStringToName[] = {
- {"h263", h263}, {"avc", avc}, {"mpeg2", mpeg2}, {"mpeg4", mpeg4},
- {"hevc", hevc}, {"vp8", vp8}, {"vp9", vp9}, {"av1", av1},
- };
-
- const size_t kNumStringToName =
- sizeof(kStringToName) / sizeof(kStringToName[0]);
-
- std::string substring;
- std::string comp;
- substring = std::string(gEnv->getComponent());
- /* TODO: better approach to find the component */
- /* "c2.android." => 11th position */
- size_t pos = 11;
- size_t len = substring.find(".decoder", pos);
- comp = substring.substr(pos, len - pos);
-
- for (size_t i = 0; i < kNumStringToName; ++i) {
- if (!strcasecmp(comp.c_str(), kStringToName[i].Name)) {
- mCompName = kStringToName[i].CompName;
- break;
- }
- }
- mEos = false;
- mFramesReceived = 0;
- mTimestampUs = 0u;
- mTimestampDevTest = false;
- if (mCompName == unknown_comp) mDisableTest = true;
- if (mDisableTest) std::cout << "[ WARN ] Test Disabled \n";
- }
-
- virtual void TearDown() override {
- if (mComponent != nullptr) {
- if (::testing::Test::HasFatalFailure()) return;
- mComponent->release();
- mComponent = nullptr;
- }
- Super::TearDown();
- }
-
- // callback function to process onWorkDone received by Listener
- void handleWorkDone(std::list<std::unique_ptr<C2Work>>& workItems) {
- for (std::unique_ptr<C2Work>& work : workItems) {
- if (!work->worklets.empty()) {
- // For decoder components current timestamp always exceeds
- // previous timestamp
- typedef std::unique_lock<std::mutex> ULock;
- bool codecConfig = ((work->worklets.front()->output.flags &
- C2FrameData::FLAG_CODEC_CONFIG) != 0);
- if (!codecConfig &&
- !work->worklets.front()->output.buffers.empty()) {
- EXPECT_GE(
- (work->worklets.front()->output.ordinal.timestamp.peeku()),
- mTimestampUs);
- mTimestampUs =
- work->worklets.front()->output.ordinal.timestamp.peeku();
-
- ULock l(mQueueLock);
- if (mTimestampDevTest) {
- bool tsHit = false;
- std::list<uint64_t>::iterator it = mTimestampUslist.begin();
- while (it != mTimestampUslist.end()) {
- if (*it == mTimestampUs) {
- mTimestampUslist.erase(it);
- tsHit = true;
- break;
- }
- it++;
- }
- if (tsHit == false) {
- if (mTimestampUslist.empty() == false) {
- EXPECT_EQ(tsHit, true)
- << "TimeStamp not recognized";
- } else {
- std::cout << "[ INFO ] Received non-zero "
- "output / TimeStamp not recognized \n";
- }
- }
- }
- }
- bool mCsd;
- workDone(mComponent, work, mFlushedIndices, mQueueLock,
- mQueueCondition, mWorkQueue, mEos, mCsd,
- mFramesReceived);
- (void)mCsd;
- }
- }
- }
-
- enum standardComp {
- h263,
- avc,
- mpeg2,
- mpeg4,
- hevc,
- vp8,
- vp9,
- av1,
- unknown_comp,
- };
-
- bool mEos;
- bool mDisableTest;
- bool mTimestampDevTest;
- uint64_t mTimestampUs;
- std::list<uint64_t> mTimestampUslist;
- std::list<uint64_t> mFlushedIndices;
- standardComp mCompName;
- uint32_t mFramesReceived;
- C2BlockPool::local_id_t mBlockPoolId;
- std::shared_ptr<C2BlockPool> mLinearPool;
- std::shared_ptr<C2Allocator> mLinearAllocator;
-
- std::mutex mQueueLock;
- std::condition_variable mQueueCondition;
- std::list<std::unique_ptr<C2Work>> mWorkQueue;
-
- std::shared_ptr<android::Codec2Client> mClient;
- std::shared_ptr<android::Codec2Client::Listener> mListener;
- std::shared_ptr<android::Codec2Client::Component> mComponent;
-
- protected:
- static void description(const std::string& description) {
- RecordProperty("description", description);
- }
-};
-
-void validateComponent(
- const std::shared_ptr<android::Codec2Client::Component>& component,
- Codec2VideoDecHidlTest::standardComp compName, bool& disableTest) {
- // Validate its a C2 Component
- if (component->getName().find("c2") == std::string::npos) {
- ALOGE("Not a c2 component");
- disableTest = true;
- return;
- }
-
- // Validate its not an encoder and the component to be tested is video
- if (component->getName().find("encoder") != std::string::npos) {
- ALOGE("Expected Decoder, given Encoder");
- disableTest = true;
- return;
- }
- std::vector<std::unique_ptr<C2Param>> queried;
- c2_status_t c2err =
- component->query({}, {C2PortMediaTypeSetting::input::PARAM_TYPE},
- C2_DONT_BLOCK, &queried);
- if (c2err != C2_OK && queried.size() == 0) {
- ALOGE("Query media type failed => %d", c2err);
- } else {
- std::string inputDomain =
- ((C2StreamMediaTypeSetting::input*)queried[0].get())->m.value;
- if (inputDomain.find("video/") == std::string::npos) {
- ALOGE("Expected Video Component");
- disableTest = true;
- return;
- }
- }
-
- // Validates component name
- if (compName == Codec2VideoDecHidlTest::unknown_comp) {
- ALOGE("Component InValid");
- disableTest = true;
- return;
- }
- ALOGV("Component Valid");
-}
-
-// number of elementary streams per component
-#define STREAM_COUNT 2
-// LookUpTable of clips and metadata for component testing
-void GetURLForComponent(Codec2VideoDecHidlTest::standardComp comp, char* mURL,
- char* info, size_t streamIndex = 1) {
- struct CompToURL {
- Codec2VideoDecHidlTest::standardComp comp;
- const char mURL[STREAM_COUNT][512];
- const char info[STREAM_COUNT][512];
- };
- ASSERT_TRUE(streamIndex < STREAM_COUNT);
-
- static const CompToURL kCompToURL[] = {
- {Codec2VideoDecHidlTest::standardComp::avc,
- {"bbb_avc_176x144_300kbps_60fps.h264",
- "bbb_avc_640x360_768kbps_30fps.h264"},
- {"bbb_avc_176x144_300kbps_60fps.info",
- "bbb_avc_640x360_768kbps_30fps.info"}},
- {Codec2VideoDecHidlTest::standardComp::hevc,
- {"bbb_hevc_176x144_176kbps_60fps.hevc",
- "bbb_hevc_640x360_1600kbps_30fps.hevc"},
- {"bbb_hevc_176x144_176kbps_60fps.info",
- "bbb_hevc_640x360_1600kbps_30fps.info"}},
- {Codec2VideoDecHidlTest::standardComp::mpeg2,
- {"bbb_mpeg2_176x144_105kbps_25fps.m2v",
- "bbb_mpeg2_352x288_1mbps_60fps.m2v"},
- {"bbb_mpeg2_176x144_105kbps_25fps.info",
- "bbb_mpeg2_352x288_1mbps_60fps.info"}},
- {Codec2VideoDecHidlTest::standardComp::h263,
- {"", "bbb_h263_352x288_300kbps_12fps.h263"},
- {"", "bbb_h263_352x288_300kbps_12fps.info"}},
- {Codec2VideoDecHidlTest::standardComp::mpeg4,
- {"", "bbb_mpeg4_352x288_512kbps_30fps.m4v"},
- {"", "bbb_mpeg4_352x288_512kbps_30fps.info"}},
- {Codec2VideoDecHidlTest::standardComp::vp8,
- {"bbb_vp8_176x144_240kbps_60fps.vp8",
- "bbb_vp8_640x360_2mbps_30fps.vp8"},
- {"bbb_vp8_176x144_240kbps_60fps.info",
- "bbb_vp8_640x360_2mbps_30fps.info"}},
- {Codec2VideoDecHidlTest::standardComp::vp9,
- {"bbb_vp9_176x144_285kbps_60fps.vp9",
- "bbb_vp9_640x360_1600kbps_30fps.vp9"},
- {"bbb_vp9_176x144_285kbps_60fps.info",
- "bbb_vp9_640x360_1600kbps_30fps.info"}},
- {Codec2VideoDecHidlTest::standardComp::av1,
- {"bbb_av1_640_360.av1",
- "bbb_av1_176_144.av1"},
- {"bbb_av1_640_360.info",
- "bbb_av1_176_144.info"}},
- };
-
- for (size_t i = 0; i < sizeof(kCompToURL) / sizeof(kCompToURL[0]); ++i) {
- if (kCompToURL[i].comp == comp) {
- strcat(mURL, kCompToURL[i].mURL[streamIndex]);
- strcat(info, kCompToURL[i].info[streamIndex]);
- return;
- }
- }
-}
-
-void decodeNFrames(const std::shared_ptr<android::Codec2Client::Component>& component,
- std::mutex &queueLock, std::condition_variable& queueCondition,
- std::list<std::unique_ptr<C2Work>>& workQueue,
- std::list<uint64_t>& flushedIndices,
- std::shared_ptr<C2BlockPool>& linearPool,
- std::ifstream& eleStream,
- android::Vector<FrameInfo>* Info,
- int offset, int range, bool signalEOS = true) {
- typedef std::unique_lock<std::mutex> ULock;
- int frameID = offset;
- int maxRetry = 0;
- while (1) {
- if (frameID == (int)Info->size() || frameID == (offset + range)) break;
- uint32_t flags = 0;
- std::unique_ptr<C2Work> work;
- // Prepare C2Work
- while (!work && (maxRetry < MAX_RETRY)) {
- ULock l(queueLock);
- if (!workQueue.empty()) {
- work.swap(workQueue.front());
- workQueue.pop_front();
- } else {
- queueCondition.wait_for(l, TIME_OUT);
- maxRetry++;
- }
- }
- if (!work && (maxRetry >= MAX_RETRY)) {
- ASSERT_TRUE(false) << "Wait for generating C2Work exceeded timeout";
- }
- int64_t timestamp = (*Info)[frameID].timestamp;
- if ((*Info)[frameID].flags) flags = (1 << ((*Info)[frameID].flags - 1));
- if (signalEOS && ((frameID == (int)Info->size() - 1) ||
- (frameID == (offset + range - 1))))
- flags |= C2FrameData::FLAG_END_OF_STREAM;
-
- work->input.flags = (C2FrameData::flags_t)flags;
- work->input.ordinal.timestamp = timestamp;
- work->input.ordinal.frameIndex = frameID;
- {
- ULock l(queueLock);
- flushedIndices.emplace_back(frameID);
- }
-
- int size = (*Info)[frameID].bytesCount;
- char* data = (char*)malloc(size);
- ASSERT_NE(data, nullptr);
-
- eleStream.read(data, size);
- ASSERT_EQ(eleStream.gcount(), size);
-
- work->input.buffers.clear();
- if (size) {
- std::shared_ptr<C2LinearBlock> block;
- ASSERT_EQ(C2_OK,
- linearPool->fetchLinearBlock(
- size, {C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE},
- &block));
- ASSERT_TRUE(block);
-
- // Write View
- C2WriteView view = block->map().get();
- if (view.error() != C2_OK) {
- fprintf(stderr, "C2LinearBlock::map() failed : %d", view.error());
- break;
- }
- ASSERT_EQ((size_t)size, view.capacity());
- ASSERT_EQ(0u, view.offset());
- ASSERT_EQ((size_t)size, view.size());
-
- memcpy(view.base(), data, size);
-
- work->input.buffers.emplace_back(new LinearBuffer(block));
- free(data);
- }
- work->worklets.clear();
- work->worklets.emplace_back(new C2Worklet);
- std::list<std::unique_ptr<C2Work>> items;
- items.push_back(std::move(work));
-
- // DO THE DECODING
- ASSERT_EQ(component->queue(&items), C2_OK);
- ALOGV("Frame #%d size = %d queued", frameID, size);
- frameID++;
- maxRetry = 0;
- }
-}
-
-TEST_F(Codec2VideoDecHidlTest, validateCompName) {
- if (mDisableTest) return;
- ALOGV("Checks if the given component is a valid video component");
- validateComponent(mComponent, mCompName, mDisableTest);
- ASSERT_EQ(mDisableTest, false);
-}
-
-// Bitstream Test
-TEST_F(Codec2VideoDecHidlTest, DecodeTest) {
- description("Decodes input file");
- if (mDisableTest) return;
-
- char mURL[512], info[512];
- std::ifstream eleStream, eleInfo;
-
- strcpy(mURL, gEnv->getRes().c_str());
- strcpy(info, gEnv->getRes().c_str());
- GetURLForComponent(mCompName, mURL, info);
-
- eleInfo.open(info);
- ASSERT_EQ(eleInfo.is_open(), true) << mURL << " - file not found";
- android::Vector<FrameInfo> Info;
- int bytesCount = 0;
- uint32_t flags = 0;
- uint32_t timestamp = 0;
- while (1) {
- if (!(eleInfo >> bytesCount)) break;
- eleInfo >> flags;
- eleInfo >> timestamp;
- bool codecConfig = flags ?
- ((1 << (flags - 1)) & C2FrameData::FLAG_CODEC_CONFIG) != 0 : 0;
- if (mTimestampDevTest && !codecConfig)
- mTimestampUslist.push_back(timestamp);
- Info.push_back({bytesCount, flags, timestamp});
- }
- eleInfo.close();
-
- ASSERT_EQ(mComponent->start(), C2_OK);
- ALOGV("mURL : %s", mURL);
- eleStream.open(mURL, std::ifstream::binary);
- ASSERT_EQ(eleStream.is_open(), true);
- ASSERT_NO_FATAL_FAILURE(decodeNFrames(
- mComponent, mQueueLock, mQueueCondition, mWorkQueue, mFlushedIndices,
- mLinearPool, eleStream, &Info, 0, (int)Info.size()));
-
- // blocking call to ensures application to Wait till all the inputs are
- // consumed
- if (!mEos) {
- ALOGV("Waiting for input consumption");
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue));
- }
-
- eleStream.close();
- if (mFramesReceived != Info.size()) {
- ALOGE("Input buffer count and Output buffer count mismatch");
- ALOGV("framesReceived : %d inputFrames : %zu", mFramesReceived,
- Info.size());
- ASSERT_TRUE(false);
- }
-
- if (mTimestampDevTest) EXPECT_EQ(mTimestampUslist.empty(), true);
-}
-
-
-// Adaptive Test
-TEST_F(Codec2VideoDecHidlTest, AdaptiveDecodeTest) {
- description("Adaptive Decode Test");
- if (mDisableTest) return;
- if (!(mCompName == avc || mCompName == hevc || mCompName == vp8 ||
- mCompName == vp9 || mCompName == mpeg2))
- return;
-
- typedef std::unique_lock<std::mutex> ULock;
- ASSERT_EQ(mComponent->start(), C2_OK);
-
- mTimestampDevTest = true;
- uint32_t timestampOffset = 0;
- uint32_t offset = 0;
- android::Vector<FrameInfo> Info;
- for (uint32_t i = 0; i < STREAM_COUNT * 2; i++) {
- char mURL[512], info[512];
- std::ifstream eleStream, eleInfo;
-
- strcpy(mURL, gEnv->getRes().c_str());
- strcpy(info, gEnv->getRes().c_str());
- GetURLForComponent(mCompName, mURL, info, i % STREAM_COUNT);
-
- eleInfo.open(info);
- ASSERT_EQ(eleInfo.is_open(), true) << mURL << " - file not found";
- int bytesCount = 0;
- uint32_t flags = 0;
- uint32_t timestamp = 0;
- uint32_t timestampMax = 0;
- while (1) {
- if (!(eleInfo >> bytesCount)) break;
- eleInfo >> flags;
- eleInfo >> timestamp;
- timestamp += timestampOffset;
- Info.push_back({bytesCount, flags, timestamp});
- bool codecConfig = flags ?
- ((1 << (flags - 1)) & C2FrameData::FLAG_CODEC_CONFIG) != 0 : 0;
-
- {
- ULock l(mQueueLock);
- if (mTimestampDevTest && !codecConfig)
- mTimestampUslist.push_back(timestamp);
- }
- if (timestampMax < timestamp) timestampMax = timestamp;
- }
- timestampOffset = timestampMax;
- eleInfo.close();
-
- // Reset Total frames before second decode loop
- // mFramesReceived = 0;
- ALOGV("mURL : %s", mURL);
- eleStream.open(mURL, std::ifstream::binary);
- ASSERT_EQ(eleStream.is_open(), true);
- ASSERT_NO_FATAL_FAILURE(
- decodeNFrames(mComponent, mQueueLock, mQueueCondition, mWorkQueue,
- mFlushedIndices, mLinearPool, eleStream, &Info,
- offset, (int)(Info.size() - offset), false));
-
- eleStream.close();
- offset = (int)Info.size();
- }
-
- // Send EOS
- // TODO Add function to send EOS work item
- int maxRetry = 0;
- std::unique_ptr<C2Work> work;
- while (!work && (maxRetry < MAX_RETRY)) {
- ULock l(mQueueLock);
- if (!mWorkQueue.empty()) {
- work.swap(mWorkQueue.front());
- mWorkQueue.pop_front();
- } else {
- mQueueCondition.wait_for(l, TIME_OUT);
- maxRetry++;
- }
- }
- ASSERT_NE(work, nullptr);
- work->input.flags = (C2FrameData::flags_t)C2FrameData::FLAG_END_OF_STREAM;
- work->input.ordinal.timestamp = 0;
- work->input.ordinal.frameIndex = 0;
- work->input.buffers.clear();
- work->worklets.clear();
- work->worklets.emplace_back(new C2Worklet);
-
- std::list<std::unique_ptr<C2Work>> items;
- items.push_back(std::move(work));
- ASSERT_EQ(mComponent->queue(&items), C2_OK);
-
- // blocking call to ensures application to Wait till all the inputs are
- // consumed
- ALOGV("Waiting for input consumption");
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue));
-
- if (mFramesReceived != ((Info.size()) + 1)) {
- ALOGE("Input buffer count and Output buffer count mismatch");
- ALOGV("framesReceived : %d inputFrames : %zu", mFramesReceived,
- Info.size() + 1);
- ASSERT_TRUE(false);
- }
-
- if (mTimestampDevTest) EXPECT_EQ(mTimestampUslist.empty(), true);
-}
-
-// thumbnail test
-TEST_F(Codec2VideoDecHidlTest, ThumbnailTest) {
- description("Test Request for thumbnail");
- if (mDisableTest) return;
-
- char mURL[512], info[512];
- std::ifstream eleStream, eleInfo;
-
- strcpy(mURL, gEnv->getRes().c_str());
- strcpy(info, gEnv->getRes().c_str());
- GetURLForComponent(mCompName, mURL, info);
-
- eleInfo.open(info);
- ASSERT_EQ(eleInfo.is_open(), true);
- android::Vector<FrameInfo> Info;
- int bytesCount = 0;
- uint32_t flags = 0;
- uint32_t timestamp = 0;
- while (1) {
- if (!(eleInfo >> bytesCount)) break;
- eleInfo >> flags;
- eleInfo >> timestamp;
- Info.push_back({bytesCount, flags, timestamp});
- }
- eleInfo.close();
-
- for (size_t i = 0; i < MAX_ITERATIONS; i++) {
- ASSERT_EQ(mComponent->start(), C2_OK);
-
- // request EOS for thumbnail
- // signal EOS flag with last frame
- size_t j = -1;
- do {
- j++;
- flags = 0;
- if (Info[j].flags) flags = 1u << (Info[j].flags - 1);
-
- } while (!(flags & SYNC_FRAME));
- eleStream.open(mURL, std::ifstream::binary);
- ASSERT_EQ(eleStream.is_open(), true);
- ASSERT_NO_FATAL_FAILURE(decodeNFrames(
- mComponent, mQueueLock, mQueueCondition, mWorkQueue,
- mFlushedIndices, mLinearPool, eleStream, &Info, 0, j + 1));
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue));
- eleStream.close();
- EXPECT_GE(mFramesReceived, 1U);
- ASSERT_EQ(mEos, true);
- ASSERT_EQ(mComponent->stop(), C2_OK);
- }
- ASSERT_EQ(mComponent->release(), C2_OK);
-}
-
-TEST_F(Codec2VideoDecHidlTest, EOSTest) {
- description("Test empty input buffer with EOS flag");
- if (mDisableTest) return;
- typedef std::unique_lock<std::mutex> ULock;
- ASSERT_EQ(mComponent->start(), C2_OK);
- std::unique_ptr<C2Work> work;
- // Prepare C2Work
- {
- ULock l(mQueueLock);
- if (!mWorkQueue.empty()) {
- work.swap(mWorkQueue.front());
- mWorkQueue.pop_front();
- } else {
- ASSERT_TRUE(false) << "mWorkQueue Empty at the start of test";
- }
- }
- ASSERT_NE(work, nullptr);
-
- work->input.flags = (C2FrameData::flags_t)C2FrameData::FLAG_END_OF_STREAM;
- work->input.ordinal.timestamp = 0;
- work->input.ordinal.frameIndex = 0;
- work->input.buffers.clear();
- work->worklets.clear();
- work->worklets.emplace_back(new C2Worklet);
-
- std::list<std::unique_ptr<C2Work>> items;
- items.push_back(std::move(work));
- ASSERT_EQ(mComponent->queue(&items), C2_OK);
-
- {
- ULock l(mQueueLock);
- if (mWorkQueue.size() != MAX_INPUT_BUFFERS) {
- mQueueCondition.wait_for(l, TIME_OUT);
- }
- }
- ASSERT_EQ(mEos, true);
- ASSERT_EQ(mWorkQueue.size(), (size_t)MAX_INPUT_BUFFERS);
- ASSERT_EQ(mComponent->stop(), C2_OK);
-}
-
-TEST_F(Codec2VideoDecHidlTest, FlushTest) {
- description("Tests Flush calls");
- if (mDisableTest) return;
- typedef std::unique_lock<std::mutex> ULock;
- ASSERT_EQ(mComponent->start(), C2_OK);
- char mURL[512], info[512];
- std::ifstream eleStream, eleInfo;
-
- strcpy(mURL, gEnv->getRes().c_str());
- strcpy(info, gEnv->getRes().c_str());
- GetURLForComponent(mCompName, mURL, info);
-
- eleInfo.open(info);
- ASSERT_EQ(eleInfo.is_open(), true);
- android::Vector<FrameInfo> Info;
- int bytesCount = 0;
- uint32_t flags = 0;
- uint32_t timestamp = 0;
- mFlushedIndices.clear();
- while (1) {
- if (!(eleInfo >> bytesCount)) break;
- eleInfo >> flags;
- eleInfo >> timestamp;
- Info.push_back({bytesCount, flags, timestamp});
- }
- eleInfo.close();
-
- ALOGV("mURL : %s", mURL);
- eleStream.open(mURL, std::ifstream::binary);
- ASSERT_EQ(eleStream.is_open(), true);
- // Decode 128 frames and flush. here 128 is chosen to ensure there is a key
- // frame after this so that the below section can be covered for all
- // components
- uint32_t numFramesFlushed = 128;
- ASSERT_NO_FATAL_FAILURE(decodeNFrames(
- mComponent, mQueueLock, mQueueCondition, mWorkQueue, mFlushedIndices,
- mLinearPool, eleStream, &Info, 0, numFramesFlushed, false));
- // flush
- std::list<std::unique_ptr<C2Work>> flushedWork;
- c2_status_t err =
- mComponent->flush(C2Component::FLUSH_COMPONENT, &flushedWork);
- ASSERT_EQ(err, C2_OK);
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue,
- (size_t)MAX_INPUT_BUFFERS - flushedWork.size()));
-
- {
- // Update mFlushedIndices based on the index received from flush()
- ULock l(mQueueLock);
- for (std::unique_ptr<C2Work>& work : flushedWork) {
- ASSERT_NE(work, nullptr);
- auto frameIndexIt =
- std::find(mFlushedIndices.begin(), mFlushedIndices.end(),
- work->input.ordinal.frameIndex.peeku());
- if (!mFlushedIndices.empty() &&
- (frameIndexIt != mFlushedIndices.end())) {
- mFlushedIndices.erase(frameIndexIt);
- work->input.buffers.clear();
- work->worklets.clear();
- mWorkQueue.push_back(std::move(work));
- }
- }
- }
- // Seek to next key frame and start decoding till the end
- mFlushedIndices.clear();
- int index = numFramesFlushed;
- bool keyFrame = false;
- flags = 0;
- while (index < (int)Info.size()) {
- if (Info[index].flags) flags = 1u << (Info[index].flags - 1);
- if ((flags & SYNC_FRAME) == SYNC_FRAME) {
- keyFrame = true;
- break;
- }
- flags = 0;
- eleStream.ignore(Info[index].bytesCount);
- index++;
- }
- if (keyFrame) {
- ASSERT_NO_FATAL_FAILURE(
- decodeNFrames(mComponent, mQueueLock, mQueueCondition, mWorkQueue,
- mFlushedIndices, mLinearPool, eleStream, &Info, index,
- (int)Info.size() - index));
- }
- eleStream.close();
- err = mComponent->flush(C2Component::FLUSH_COMPONENT, &flushedWork);
- ASSERT_EQ(err, C2_OK);
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue,
- (size_t)MAX_INPUT_BUFFERS - flushedWork.size()));
- {
- // Update mFlushedIndices based on the index received from flush()
- ULock l(mQueueLock);
- for (std::unique_ptr<C2Work>& work : flushedWork) {
- ASSERT_NE(work, nullptr);
- uint64_t frameIndex = work->input.ordinal.frameIndex.peeku();
- std::list<uint64_t>::iterator frameIndexIt = std::find(
- mFlushedIndices.begin(), mFlushedIndices.end(), frameIndex);
- if (!mFlushedIndices.empty() &&
- (frameIndexIt != mFlushedIndices.end())) {
- mFlushedIndices.erase(frameIndexIt);
- work->input.buffers.clear();
- work->worklets.clear();
- mWorkQueue.push_back(std::move(work));
- }
- }
- }
- ASSERT_EQ(mFlushedIndices.empty(), true);
- ASSERT_EQ(mComponent->stop(), C2_OK);
-}
-
-TEST_F(Codec2VideoDecHidlTest, DecodeTestEmptyBuffersInserted) {
- description("Decode with multiple empty input frames");
- if (mDisableTest) return;
-
- char mURL[512], info[512];
- std::ifstream eleStream, eleInfo;
-
- strcpy(mURL, gEnv->getRes().c_str());
- strcpy(info, gEnv->getRes().c_str());
- GetURLForComponent(mCompName, mURL, info);
-
- eleInfo.open(info);
- ASSERT_EQ(eleInfo.is_open(), true) << mURL << " - file not found";
- android::Vector<FrameInfo> Info;
- int bytesCount = 0;
- uint32_t frameId = 0;
- uint32_t flags = 0;
- uint32_t timestamp = 0;
- bool codecConfig = false;
- // This test introduces empty CSD after every 20th frame
- // and empty input frames at an interval of 5 frames.
- while (1) {
- if (!(frameId % 5)) {
- if (!(frameId % 20)) flags = 32;
- else flags = 0;
- bytesCount = 0;
- } else {
- if (!(eleInfo >> bytesCount)) break;
- eleInfo >> flags;
- eleInfo >> timestamp;
- codecConfig = flags ?
- ((1 << (flags - 1)) & C2FrameData::FLAG_CODEC_CONFIG) != 0 : 0;
- }
- Info.push_back({bytesCount, flags, timestamp});
- frameId++;
- }
- eleInfo.close();
-
- ASSERT_EQ(mComponent->start(), C2_OK);
- ALOGV("mURL : %s", mURL);
- eleStream.open(mURL, std::ifstream::binary);
- ASSERT_EQ(eleStream.is_open(), true);
- ASSERT_NO_FATAL_FAILURE(decodeNFrames(
- mComponent, mQueueLock, mQueueCondition, mWorkQueue, mFlushedIndices,
- mLinearPool, eleStream, &Info, 0, (int)Info.size()));
-
- // blocking call to ensures application to Wait till all the inputs are
- // consumed
- if (!mEos) {
- ALOGV("Waiting for input consumption");
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue));
- }
-
- eleStream.close();
- if (mFramesReceived != Info.size()) {
- ALOGE("Input buffer count and Output buffer count mismatch");
- ALOGV("framesReceived : %d inputFrames : %zu", mFramesReceived,
- Info.size());
- ASSERT_TRUE(false);
- }
-}
-
-} // anonymous namespace
-
-// TODO : Video specific configuration Test
-int main(int argc, char** argv) {
- gEnv = new ComponentTestEnvironment();
- ::testing::AddGlobalTestEnvironment(gEnv);
- ::testing::InitGoogleTest(&argc, argv);
- gEnv->init(&argc, argv);
- int status = gEnv->initFromOptions(argc, argv);
- if (status == 0) {
- int status = RUN_ALL_TESTS();
- LOG(INFO) << "C2 Test result = " << status;
- }
- return status;
-}
diff --git a/codec2/hidl/1.0/mts/video/MtsHidlC2V1_0TargetVideoEncTest.cpp b/codec2/hidl/1.0/mts/video/MtsHidlC2V1_0TargetVideoEncTest.cpp
deleted file mode 100644
index 8585c87..0000000
--- a/codec2/hidl/1.0/mts/video/MtsHidlC2V1_0TargetVideoEncTest.cpp
+++ /dev/null
@@ -1,620 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "codec2_hidl_hal_video_enc_test"
-
-#include <android-base/logging.h>
-#include <gtest/gtest.h>
-#include <stdio.h>
-#include <fstream>
-
-#include <codec2/hidl/client.h>
-#include <C2AllocatorIon.h>
-#include <C2Config.h>
-#include <C2Debug.h>
-#include <C2Buffer.h>
-#include <C2BufferPriv.h>
-
-using android::C2AllocatorIon;
-
-#include <VtsHalHidlTargetTestBase.h>
-#include "media_c2_video_hidl_test_common.h"
-#include "media_c2_hidl_test_common.h"
-
-class GraphicBuffer : public C2Buffer {
-public:
- explicit GraphicBuffer(const std::shared_ptr<C2GraphicBlock> &block)
- : C2Buffer({block->share(C2Rect(block->width(), block->height()),
- ::C2Fence())}) {}
-};
-
-static ComponentTestEnvironment* gEnv = nullptr;
-
-namespace {
-
-class Codec2VideoEncHidlTest : public ::testing::VtsHalHidlTargetTestBase {
- private:
- typedef ::testing::VtsHalHidlTargetTestBase Super;
-
- public:
- ::std::string getTestCaseInfo() const override {
- return ::std::string() +
- "Component: " + gEnv->getComponent().c_str() + " | " +
- "Instance: " + gEnv->getInstance().c_str() + " | " +
- "Res: " + gEnv->getRes().c_str();
- }
-
- // google.codec2 Video test setup
- virtual void SetUp() override {
- Super::SetUp();
- mDisableTest = false;
- ALOGV("Codec2VideoEncHidlTest SetUp");
- mClient = android::Codec2Client::CreateFromService(
- gEnv->getInstance().c_str());
- ASSERT_NE(mClient, nullptr);
- mListener.reset(new CodecListener(
- [this](std::list<std::unique_ptr<C2Work>>& workItems) {
- handleWorkDone(workItems);
- }));
- ASSERT_NE(mListener, nullptr);
- for (int i = 0; i < MAX_INPUT_BUFFERS; ++i) {
- mWorkQueue.emplace_back(new C2Work);
- }
- mClient->createComponent(gEnv->getComponent().c_str(), mListener,
- &mComponent);
- ASSERT_NE(mComponent, nullptr);
-
- std::shared_ptr<C2AllocatorStore> store =
- android::GetCodec2PlatformAllocatorStore();
- CHECK_EQ(store->fetchAllocator(C2AllocatorStore::DEFAULT_GRAPHIC,
- &mGraphicAllocator),
- C2_OK);
- mGraphicPool = std::make_shared<C2PooledBlockPool>(mGraphicAllocator,
- mBlockPoolId++);
- ASSERT_NE(mGraphicPool, nullptr);
-
- mCompName = unknown_comp;
- struct StringToName {
- const char* Name;
- standardComp CompName;
- };
-
- const StringToName kStringToName[] = {
- {"h263", h263}, {"avc", avc}, {"mpeg4", mpeg4},
- {"hevc", hevc}, {"vp8", vp8}, {"vp9", vp9},
- };
-
- const size_t kNumStringToName =
- sizeof(kStringToName) / sizeof(kStringToName[0]);
-
- std::string substring;
- std::string comp;
- substring = std::string(gEnv->getComponent());
- /* TODO: better approach to find the component */
- /* "c2.android." => 11th position */
- size_t pos = 11;
- size_t len = substring.find(".encoder", pos);
- comp = substring.substr(pos, len - pos);
-
- for (size_t i = 0; i < kNumStringToName; ++i) {
- if (!strcasecmp(comp.c_str(), kStringToName[i].Name)) {
- mCompName = kStringToName[i].CompName;
- break;
- }
- }
- mEos = false;
- mCsd = false;
- mConfig = false;
- mFramesReceived = 0;
- mFailedWorkReceived = 0;
- if (mCompName == unknown_comp) mDisableTest = true;
- if (mDisableTest) std::cout << "[ WARN ] Test Disabled \n";
- }
-
- virtual void TearDown() override {
- if (mComponent != nullptr) {
- if (::testing::Test::HasFatalFailure()) return;
- mComponent->release();
- mComponent = nullptr;
- }
- Super::TearDown();
- }
-
- void setupConfigParam(int32_t nWidth, int32_t nHeight);
-
- // callback function to process onWorkDone received by Listener
- void handleWorkDone(std::list<std::unique_ptr<C2Work>>& workItems) {
- for (std::unique_ptr<C2Work>& work : workItems) {
- if (!work->worklets.empty()) {
- if (work->result != C2_OK) mFailedWorkReceived++;
- workDone(mComponent, work, mFlushedIndices, mQueueLock,
- mQueueCondition, mWorkQueue, mEos, mCsd,
- mFramesReceived);
- }
- }
- }
-
- enum standardComp {
- h263,
- avc,
- mpeg4,
- hevc,
- vp8,
- vp9,
- unknown_comp,
- };
-
- bool mEos;
- bool mCsd;
- bool mDisableTest;
- bool mConfig;
- standardComp mCompName;
- uint32_t mFramesReceived;
- uint32_t mFailedWorkReceived;
-
- std::list<uint64_t> mFlushedIndices;
-
- C2BlockPool::local_id_t mBlockPoolId;
- std::shared_ptr<C2BlockPool> mGraphicPool;
- std::shared_ptr<C2Allocator> mGraphicAllocator;
-
- std::mutex mQueueLock;
- std::condition_variable mQueueCondition;
- std::list<std::unique_ptr<C2Work>> mWorkQueue;
-
- std::shared_ptr<android::Codec2Client> mClient;
- std::shared_ptr<android::Codec2Client::Listener> mListener;
- std::shared_ptr<android::Codec2Client::Component> mComponent;
-
- protected:
- static void description(const std::string& description) {
- RecordProperty("description", description);
- }
-};
-
-void validateComponent(
- const std::shared_ptr<android::Codec2Client::Component>& component,
- Codec2VideoEncHidlTest::standardComp compName, bool& disableTest) {
- // Validate its a C2 Component
- if (component->getName().find("c2") == std::string::npos) {
- ALOGE("Not a c2 component");
- disableTest = true;
- return;
- }
-
- // Validate its not an encoder and the component to be tested is video
- if (component->getName().find("decoder") != std::string::npos) {
- ALOGE("Expected Encoder, given Decoder");
- disableTest = true;
- return;
- }
- std::vector<std::unique_ptr<C2Param>> queried;
- c2_status_t c2err =
- component->query({}, {C2PortMediaTypeSetting::input::PARAM_TYPE},
- C2_DONT_BLOCK, &queried);
- if (c2err != C2_OK && queried.size() == 0) {
- ALOGE("Query media type failed => %d", c2err);
- } else {
- std::string inputDomain =
- ((C2StreamMediaTypeSetting::input*)queried[0].get())->m.value;
- if (inputDomain.find("video/") == std::string::npos) {
- ALOGE("Expected Video Component");
- disableTest = true;
- return;
- }
- }
-
- // Validates component name
- if (compName == Codec2VideoEncHidlTest::unknown_comp) {
- ALOGE("Component InValid");
- disableTest = true;
- return;
- }
- ALOGV("Component Valid");
-}
-
-// Set Default config param.
-void Codec2VideoEncHidlTest::setupConfigParam(int32_t nWidth, int32_t nHeight) {
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- C2VideoSizeStreamTuning::input inputSize(0u, nWidth, nHeight);
- std::vector<C2Param*> configParam{&inputSize};
- c2_status_t status =
- mComponent->config(configParam, C2_DONT_BLOCK, &failures);
- if (failures.size() == 0u ) mConfig = true;
- ASSERT_EQ(status, C2_OK);
-}
-
-// LookUpTable of clips for component testing
-void GetURLForComponent(char* URL) {
- strcat(URL, "bbb_352x288_420p_30fps_32frames.yuv");
-}
-
-void encodeNFrames(const std::shared_ptr<android::Codec2Client::Component>& component,
- std::mutex &queueLock, std::condition_variable& queueCondition,
- std::list<std::unique_ptr<C2Work>>& workQueue,
- std::list<uint64_t>& flushedIndices,
- std::shared_ptr<C2BlockPool>& graphicPool,
- std::ifstream& eleStream, uint32_t frameID,
- uint32_t nFrames, uint32_t nWidth, int32_t nHeight,
- bool flushed = false,bool signalEOS = true) {
- typedef std::unique_lock<std::mutex> ULock;
-
- uint32_t maxRetry = 0;
- int bytesCount = nWidth * nHeight * 3 >> 1;
- int32_t timestampIncr = ENCODER_TIMESTAMP_INCREMENT;
- uint64_t timestamp = 0;
- while (1) {
- if (nFrames == 0) break;
- uint32_t flags = 0;
- std::unique_ptr<C2Work> work;
- // Prepare C2Work
- while (!work && (maxRetry < MAX_RETRY)) {
- ULock l(queueLock);
- if (!workQueue.empty()) {
- work.swap(workQueue.front());
- workQueue.pop_front();
- } else {
- queueCondition.wait_for(l, TIME_OUT);
- maxRetry++;
- }
- }
- if (!work && (maxRetry >= MAX_RETRY)) {
- ASSERT_TRUE(false) << "Wait for generating C2Work exceeded timeout";
- }
- if (signalEOS && (nFrames == 1))
- flags |= C2FrameData::FLAG_END_OF_STREAM;
- if (flushed) {
- flags |= SYNC_FRAME;
- flushed = false;
- }
-
- work->input.flags = (C2FrameData::flags_t)flags;
- work->input.ordinal.timestamp = timestamp;
- work->input.ordinal.frameIndex = frameID;
- {
- ULock l(queueLock);
- flushedIndices.emplace_back(frameID);
- }
- char* data = (char*)malloc(bytesCount);
- ASSERT_NE(data, nullptr);
- memset(data, 0, bytesCount);
- if (eleStream.is_open()) {
- eleStream.read(data, bytesCount);
- ASSERT_EQ(eleStream.gcount(), bytesCount);
- }
- std::shared_ptr<C2GraphicBlock> block;
- ASSERT_EQ(
- C2_OK,
- graphicPool->fetchGraphicBlock(
- nWidth, nHeight, HAL_PIXEL_FORMAT_YV12,
- {C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE}, &block));
- ASSERT_TRUE(block);
- // Graphic View
- C2GraphicView view = block->map().get();
- if (view.error() != C2_OK) {
- fprintf(stderr, "C2GraphicBlock::map() failed : %d", view.error());
- break;
- }
-
- uint8_t* pY = view.data()[C2PlanarLayout::PLANE_Y];
- uint8_t* pU = view.data()[C2PlanarLayout::PLANE_U];
- uint8_t* pV = view.data()[C2PlanarLayout::PLANE_V];
-
- memcpy(pY, data, nWidth * nHeight);
- memcpy(pU, data + nWidth * nHeight, (nWidth * nHeight >> 2));
- memcpy(pV, data + (nWidth * nHeight * 5 >> 2), nWidth * nHeight >> 2);
-
- work->input.buffers.clear();
- work->input.buffers.emplace_back(new GraphicBuffer(block));
- work->worklets.clear();
- work->worklets.emplace_back(new C2Worklet);
- free(data);
-
- std::list<std::unique_ptr<C2Work>> items;
- items.push_back(std::move(work));
-
- // DO THE ENCODING
- ASSERT_EQ(component->queue(&items), C2_OK);
- ALOGV("Frame #%d size = %d queued", frameID, bytesCount);
- nFrames--;
- timestamp += timestampIncr;
- frameID++;
- maxRetry = 0;
- }
-}
-
-TEST_F(Codec2VideoEncHidlTest, validateCompName) {
- if (mDisableTest) return;
- ALOGV("Checks if the given component is a valid video component");
- validateComponent(mComponent, mCompName, mDisableTest);
- ASSERT_EQ(mDisableTest, false);
-}
-
-TEST_F(Codec2VideoEncHidlTest, EncodeTest) {
- description("Encodes input file");
- if (mDisableTest) return;
-
- char mURL[512];
- int32_t nWidth = ENC_DEFAULT_FRAME_WIDTH;
- int32_t nHeight = ENC_DEFAULT_FRAME_HEIGHT;
-
- strcpy(mURL, gEnv->getRes().c_str());
- GetURLForComponent(mURL);
-
- std::ifstream eleStream;
- eleStream.open(mURL, std::ifstream::binary);
- ASSERT_EQ(eleStream.is_open(), true) << mURL << " file not found";
- ALOGV("mURL : %s", mURL);
-
- setupConfigParam(nWidth, nHeight);
- if (!mConfig) {
- std::cout << "[ WARN ] Test Skipped \n";
- return;
- }
- ASSERT_EQ(mComponent->start(), C2_OK);
- ASSERT_NO_FATAL_FAILURE(
- encodeNFrames(mComponent, mQueueLock, mQueueCondition, mWorkQueue,
- mFlushedIndices, mGraphicPool, eleStream,
- 0, ENC_NUM_FRAMES, nWidth, nHeight));
-
- // blocking call to ensures application to Wait till all the inputs are
- // consumed
- ALOGD("Waiting for input consumption");
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue));
-
- eleStream.close();
- if (mFramesReceived != ENC_NUM_FRAMES) {
- ALOGE("Input buffer count and Output buffer count mismatch");
- ALOGE("framesReceived : %d inputFrames : %d", mFramesReceived,
- ENC_NUM_FRAMES);
- ASSERT_TRUE(false);
- }
-
- if (!mCsd && (mCompName != vp8 && mCompName != vp9)) {
- ASSERT_TRUE(false) << "CSD Buffer not received";
- }
-
- if (mCsd && (mCompName == vp8 || mCompName == vp9)) {
- ASSERT_TRUE(false) << "CSD Buffer not expected";
- }
-
- ASSERT_EQ(mComponent->stop(), C2_OK);
-}
-
-TEST_F(Codec2VideoEncHidlTest, EOSTest) {
- description("Test empty input buffer with EOS flag");
- if (mDisableTest) return;
- ASSERT_EQ(mComponent->start(), C2_OK);
-
- typedef std::unique_lock<std::mutex> ULock;
- std::unique_ptr<C2Work> work;
- {
- ULock l(mQueueLock);
- if (!mWorkQueue.empty()) {
- work.swap(mWorkQueue.front());
- mWorkQueue.pop_front();
- } else {
- ALOGE("mWorkQueue Empty is not expected at the start of the test");
- ASSERT_TRUE(false);
- }
- }
- ASSERT_NE(work, nullptr);
- work->input.flags = (C2FrameData::flags_t)C2FrameData::FLAG_END_OF_STREAM;
- work->input.ordinal.timestamp = 0;
- work->input.ordinal.frameIndex = 0;
- work->input.buffers.clear();
- work->worklets.clear();
- work->worklets.emplace_back(new C2Worklet);
-
- std::list<std::unique_ptr<C2Work>> items;
- items.push_back(std::move(work));
- ASSERT_EQ(mComponent->queue(&items), C2_OK);
- uint32_t queueSize;
- {
- ULock l(mQueueLock);
- queueSize = mWorkQueue.size();
- if (queueSize < MAX_INPUT_BUFFERS) {
- mQueueCondition.wait_for(l, TIME_OUT);
- }
- }
- ASSERT_EQ(mEos, true);
- ASSERT_EQ(mComponent->stop(), C2_OK);
-}
-
-TEST_F(Codec2VideoEncHidlTest, FlushTest) {
- description("Test Request for flush");
- if (mDisableTest) return;
- ASSERT_EQ(mComponent->start(), C2_OK);
-
- typedef std::unique_lock<std::mutex> ULock;
- char mURL[512];
- int32_t nWidth = ENC_DEFAULT_FRAME_WIDTH;
- int32_t nHeight = ENC_DEFAULT_FRAME_HEIGHT;
- strcpy(mURL, gEnv->getRes().c_str());
- GetURLForComponent(mURL);
- setupConfigParam(nWidth, nHeight);
-
- // Setting default configuration
- mFlushedIndices.clear();
- std::ifstream eleStream;
- uint32_t numFramesFlushed = 10;
- uint32_t numFrames = ENC_NUM_FRAMES;
- eleStream.open(mURL, std::ifstream::binary);
- ASSERT_EQ(eleStream.is_open(), true);
- ALOGV("mURL : %s", mURL);
- ASSERT_NO_FATAL_FAILURE(
- encodeNFrames(mComponent, mQueueLock, mQueueCondition, mWorkQueue,
- mFlushedIndices, mGraphicPool, eleStream,
- 0, numFramesFlushed, nWidth, nHeight));
- std::list<std::unique_ptr<C2Work>> flushedWork;
- c2_status_t err =
- mComponent->flush(C2Component::FLUSH_COMPONENT, &flushedWork);
- ASSERT_EQ(err, C2_OK);
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue,
- (size_t)MAX_INPUT_BUFFERS - flushedWork.size()));
- uint64_t frameIndex;
- {
- //Update mFlushedIndices based on the index received from flush()
- ULock l(mQueueLock);
- for (std::unique_ptr<C2Work>& work : flushedWork) {
- ASSERT_NE(work, nullptr);
- frameIndex = work->input.ordinal.frameIndex.peeku();
- std::list<uint64_t>::iterator frameIndexIt = std::find(
- mFlushedIndices.begin(), mFlushedIndices.end(), frameIndex);
- if (!mFlushedIndices.empty() &&
- (frameIndexIt != mFlushedIndices.end())) {
- mFlushedIndices.erase(frameIndexIt);
- work->input.buffers.clear();
- work->worklets.clear();
- mWorkQueue.push_back(std::move(work));
- }
- }
- }
- mFlushedIndices.clear();
- ASSERT_NO_FATAL_FAILURE(
- encodeNFrames(mComponent, mQueueLock, mQueueCondition, mWorkQueue,
- mFlushedIndices, mGraphicPool, eleStream,
- numFramesFlushed, numFrames - numFramesFlushed,
- nWidth, nHeight, true));
- eleStream.close();
- err = mComponent->flush(C2Component::FLUSH_COMPONENT, &flushedWork);
- ASSERT_EQ(err, C2_OK);
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue,
- (size_t)MAX_INPUT_BUFFERS - flushedWork.size()));
- {
- //Update mFlushedIndices based on the index received from flush()
- ULock l(mQueueLock);
- for (std::unique_ptr<C2Work>& work : flushedWork) {
- ASSERT_NE(work, nullptr);
- frameIndex = work->input.ordinal.frameIndex.peeku();
- std::list<uint64_t>::iterator frameIndexIt = std::find(
- mFlushedIndices.begin(), mFlushedIndices.end(), frameIndex);
- if (!mFlushedIndices.empty() &&
- (frameIndexIt != mFlushedIndices.end())) {
- mFlushedIndices.erase(frameIndexIt);
- work->input.buffers.clear();
- work->worklets.clear();
- mWorkQueue.push_back(std::move(work));
- }
- }
- }
- ASSERT_EQ(mFlushedIndices.empty(), true);
- ASSERT_EQ(mComponent->stop(), C2_OK);
-}
-
-TEST_F(Codec2VideoEncHidlTest, InvalidBufferTest) {
- description("Tests feeding larger/smaller input buffer");
- if (mDisableTest) return;
- ASSERT_EQ(mComponent->start(), C2_OK);
-
- std::ifstream eleStream;
- int32_t nWidth = ENC_DEFAULT_FRAME_WIDTH / 2;
- int32_t nHeight = ENC_DEFAULT_FRAME_HEIGHT / 2;
- setupConfigParam(nWidth, nHeight);
-
- ASSERT_NO_FATAL_FAILURE(
- encodeNFrames(mComponent, mQueueLock, mQueueCondition, mWorkQueue,
- mFlushedIndices, mGraphicPool, eleStream,
- 0, 1, nWidth, nHeight, false, false));
-
- // Feed larger input buffer.
- ASSERT_NO_FATAL_FAILURE(
- encodeNFrames(mComponent, mQueueLock, mQueueCondition, mWorkQueue,
- mFlushedIndices, mGraphicPool, eleStream,
- 1, 1, nWidth*2, nHeight*2, false, false));
-
- // Feed smaller input buffer.
- ASSERT_NO_FATAL_FAILURE(
- encodeNFrames(mComponent, mQueueLock, mQueueCondition, mWorkQueue,
- mFlushedIndices, mGraphicPool, eleStream,
- 2, 1, nWidth/2, nHeight/2, false, true));
-
- // blocking call to ensures application to Wait till all the inputs are
- // consumed
- ALOGD("Waiting for input consumption");
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue));
-
- if (mFramesReceived != 3) {
- ALOGE("Input buffer count and Output buffer count mismatch");
- ALOGE("framesReceived : %d inputFrames : 3", mFramesReceived);
- ASSERT_TRUE(false);
- }
-
- if (mFailedWorkReceived == 0) {
- ALOGE("Expected failed frame count mismatch");
- ALOGE("failedFramesReceived : %d", mFailedWorkReceived);
- ASSERT_TRUE(false);
- }
-
- ASSERT_EQ(mComponent->stop(), C2_OK);
-}
-
-class Codec2VideoEncResolutionTest : public Codec2VideoEncHidlTest,
- public ::testing::WithParamInterface<std::pair<int32_t, int32_t> > {
-};
-
-TEST_P(Codec2VideoEncResolutionTest, ResolutionTest) {
- description("Tests encoding at different resolutions");
- if (mDisableTest) return;
-
- std::ifstream eleStream;
- int32_t nWidth = GetParam().first;
- int32_t nHeight = GetParam().second;
- ALOGD("Trying encode for width %d height %d", nWidth, nHeight);
- mConfig = false;
- mEos = false;
- setupConfigParam(nWidth, nHeight);
- if (!mConfig) return;
- ASSERT_EQ(mComponent->start(), C2_OK);
-
- ASSERT_NO_FATAL_FAILURE(
- encodeNFrames(mComponent, mQueueLock, mQueueCondition, mWorkQueue,
- mFlushedIndices, mGraphicPool, eleStream, 0,
- MAX_INPUT_BUFFERS, nWidth, nHeight));
-
- ALOGD("Waiting for input consumption");
- ASSERT_NO_FATAL_FAILURE(
- waitOnInputConsumption(mQueueLock, mQueueCondition, mWorkQueue));
-
- ASSERT_EQ(mEos, true);
- ASSERT_EQ(mComponent->stop(), C2_OK);
- ASSERT_EQ(mComponent->reset(), C2_OK);
-}
-INSTANTIATE_TEST_CASE_P(NonStdSizes, Codec2VideoEncResolutionTest, ::testing::Values(
- std::make_pair(52, 18),
- std::make_pair(365, 365),
- std::make_pair(484, 362),
- std::make_pair(244, 488)));
-
-} // anonymous namespace
-
-int main(int argc, char** argv) {
- gEnv = new ComponentTestEnvironment();
- ::testing::AddGlobalTestEnvironment(gEnv);
- ::testing::InitGoogleTest(&argc, argv);
- gEnv->init(&argc, argv);
- int status = gEnv->initFromOptions(argc, argv);
- if (status == 0) {
- int status = RUN_ALL_TESTS();
- LOG(INFO) << "C2 Test result = " << status;
- }
- return status;
-}
diff --git a/codec2/hidl/1.0/mts/video/media_c2_video_hidl_test_common.h b/codec2/hidl/1.0/mts/video/media_c2_video_hidl_test_common.h
deleted file mode 100644
index dd45557..0000000
--- a/codec2/hidl/1.0/mts/video/media_c2_video_hidl_test_common.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef MEDIA_C2_VIDEO_HIDL_TEST_COMMON_H
-#define MEDIA_C2_VIDEO_HIDL_TEST_COMMON_H
-
-#define ENCODER_TIMESTAMP_INCREMENT 40000
-#define ENC_NUM_FRAMES 32
-#define ENC_DEFAULT_FRAME_WIDTH 352
-#define ENC_DEFAULT_FRAME_HEIGHT 288
-#define MAX_ITERATIONS 128
-
-/*
- * Common video utils
- */
-
-
-#endif // MEDIA_C2_VIDEO_HIDL_TEST_COMMON_H
diff --git a/codec2/hidl/1.0/utils/Android.bp b/codec2/hidl/1.0/utils/Android.bp
deleted file mode 100644
index d4a66bf..0000000
--- a/codec2/hidl/1.0/utils/Android.bp
+++ /dev/null
@@ -1,68 +0,0 @@
-// DO NOT DEPEND ON THIS DIRECTLY
-// use libstagefright_codec2-hidl-defaults instead
-cc_library {
- name: "libcodec2_hidl_utils@1.0",
- vendor_available: true,
-
- defaults: ["hidl_defaults"],
-
- srcs: [
- "Component.cpp",
- "ComponentStore.cpp",
- "Configurable.cpp",
- "InputSurface.cpp",
- "InputSurfaceConnection.cpp",
- "types.cpp",
- ],
-
- header_libs: [
- "libgui_headers",
- "libsystem_headers",
- "libstagefright_codec2_internal", // private
- ],
-
- shared_libs: [
- "android.hardware.graphics.bufferqueue@1.0",
- "android.hardware.graphics.common@1.0",
- "android.hardware.media.bufferpool@1.0",
- "android.hardware.media.omx@1.0",
- "android.hardware.media@1.0",
- "android.hidl.token@1.0-utils",
- "hardware.google.media.c2@1.0",
- "libbase",
- "libcutils",
- "libhidlbase",
- "liblog",
- "libstagefright_bufferpool@1.0",
- "libstagefright_bufferqueue_helper",
- "libstagefright_codec2",
- "libstagefright_codec2_vndk",
- "libui",
- "libutils",
- ],
-
- export_include_dirs: [
- "include",
- ],
-
- export_shared_lib_headers: [
- "android.hidl.token@1.0-utils",
- "hardware.google.media.c2@1.0",
- "libhidlbase",
- "libstagefright_bufferpool@1.0",
- "libstagefright_bufferqueue_helper",
- "libstagefright_codec2",
- "libui",
- ],
-}
-
-// public dependency for Codec 2.0 HAL service implementations
-cc_defaults {
- name: "libstagefright_codec2-hidl-defaults",
- defaults: ["libstagefright_codec2-impl-defaults"],
-
- shared_libs: [
- "hardware.google.media.c2@1.0",
- "libcodec2_hidl_utils@1.0",
- ],
-}
diff --git a/codec2/hidl/1.0/utils/Component.cpp b/codec2/hidl/1.0/utils/Component.cpp
deleted file mode 100644
index 4465504..0000000
--- a/codec2/hidl/1.0/utils/Component.cpp
+++ /dev/null
@@ -1,1059 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "Codec2-Component"
-#include <android-base/logging.h>
-
-#include <C2PlatformSupport.h>
-#include <codec2/hidl/1.0/Component.h>
-#include <codec2/hidl/1.0/ComponentStore.h>
-#include <codec2/hidl/1.0/types.h>
-
-#include <hidl/HidlBinderSupport.h>
-#include <utils/Timers.h>
-
-#include <C2BqBufferPriv.h>
-#include <C2Debug.h>
-#include <C2PlatformSupport.h>
-
-#include <chrono>
-#include <thread>
-
-namespace hardware {
-namespace google {
-namespace media {
-namespace c2 {
-namespace V1_0 {
-namespace utils {
-
-using namespace ::android;
-
-namespace /* unnamed */ {
-
-// Implementation of ConfigurableC2Intf based on C2ComponentInterface
-struct CompIntf : public ConfigurableC2Intf {
- CompIntf(const std::shared_ptr<C2ComponentInterface>& intf) :
- ConfigurableC2Intf(intf->getName()),
- mIntf(intf) {
- }
-
- virtual c2_status_t config(
- const std::vector<C2Param*>& params,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2SettingResult>>* const failures
- ) override {
- ALOGV("config");
- return mIntf->config_vb(params, mayBlock, failures);
- }
-
- virtual c2_status_t query(
- const std::vector<C2Param::Index>& indices,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2Param>>* const params
- ) const override {
- ALOGV("query");
- return mIntf->query_vb({}, indices, mayBlock, params);
- }
-
- virtual c2_status_t querySupportedParams(
- std::vector<std::shared_ptr<C2ParamDescriptor>>* const params
- ) const override {
- ALOGV("querySupportedParams");
- return mIntf->querySupportedParams_nb(params);
- }
-
- virtual c2_status_t querySupportedValues(
- std::vector<C2FieldSupportedValuesQuery>& fields,
- c2_blocking_t mayBlock) const override {
- ALOGV("querySupportedValues");
- return mIntf->querySupportedValues_vb(fields, mayBlock);
- }
-
-protected:
- std::shared_ptr<C2ComponentInterface> mIntf;
-};
-
-} // unnamed namespace
-
-// InputBufferManager
-// ==================
-//
-// InputBufferManager presents a way to track and untrack input buffers in this
-// (codec) process and send a notification to a listener, possibly in a
-// different process, when a tracked buffer no longer has any references in this
-// process. (In fact, this class would work for listeners in the same process
-// too, but the optimization discussed below will not be beneficial.)
-//
-// InputBufferManager holds a collection of records representing tracked buffers
-// and their callback listeners. Conceptually, one record is a triple (listener,
-// frameIndex, bufferIndex) where
-//
-// - (frameIndex, bufferIndex) is a pair of indices used to identify the buffer.
-// - listener is of type IComponentListener. Its onFramesRendered() function
-// will be called after the associated buffer dies. The argument of
-// onFramesRendered() is a list of RenderedFrame objects, each of which has
-// the following members:
-//
-// uint64_t bufferQueueId
-// int32_t slotId
-// int64_t timestampNs
-//
-// When a tracked buffer associated to the triple (listener, frameIndex,
-// bufferIndex) goes out of scope, listener->onFramesRendered() will be called
-// with a RenderedFrame object whose members are set as follows:
-//
-// bufferQueueId = frameIndex
-// slotId = ~bufferIndex
-// timestampNs = systemTime() at the time of notification
-//
-// The reason for the bitwise negation of bufferIndex is that onFramesRendered()
-// may be used for a different purpose when slotId is non-negative (which is a
-// more general use case).
-//
-// IPC Optimization
-// ----------------
-//
-// Since onFramesRendered() generally is an IPC call, InputBufferManager tries
-// not to call it too often. There is a mechanism to guarantee that any two
-// calls to the same listener are at least kNotificationPeriodNs nanoseconds
-// apart.
-//
-struct InputBufferManager {
- // The minimum time period between IPC calls to notify the client about the
- // destruction of input buffers.
- static constexpr nsecs_t kNotificationPeriodNs = 1000000;
-
- // Track all buffers in a C2FrameData object.
- //
- // input (C2FrameData) has the following two members that are of interest:
- //
- // C2WorkOrdinal ordinal
- // vector<shared_ptr<C2Buffer>> buffers
- //
- // Calling registerFrameData(listener, input) will register multiple
- // triples (, frameIndex, bufferIndex) where frameIndex is equal to
- // input.ordinal.frameIndex and bufferIndex runs through the indices of
- // input.buffers such that input.buffers[bufferIndex] is not null.
- //
- // This should be called from queue().
- static void registerFrameData(
- const sp<IComponentListener>& listener,
- const C2FrameData& input);
-
- // Untrack all buffers in a C2FrameData object.
- //
- // Calling unregisterFrameData(listener, input) will unregister and remove
- // pending notifications for all triples (l, fi, bufferIndex) such that
- // l = listener and fi = input.ordinal.frameIndex.
- //
- // This should be called from onWorkDone() and flush().
- static void unregisterFrameData(
- const wp<IComponentListener>& listener,
- const C2FrameData& input);
-
- // Untrack all buffers associated to a given listener.
- //
- // Calling unregisterFrameData(listener) will unregister and remove
- // pending notifications for all triples (l, frameIndex, bufferIndex) such
- // that l = listener.
- //
- // This should be called when the component cleans up all input buffers,
- // i.e., when reset(), release(), stop() or ~Component() is called.
- static void unregisterFrameData(
- const wp<IComponentListener>& listener);
-
-private:
- void _registerFrameData(
- const sp<IComponentListener>& listener,
- const C2FrameData& input);
- void _unregisterFrameData(
- const wp<IComponentListener>& listener,
- const C2FrameData& input);
- void _unregisterFrameData(
- const wp<IComponentListener>& listener);
-
- // The callback function tied to C2Buffer objects.
- //
- // Note: This function assumes that sInstance is the only instance of this
- // class.
- static void onBufferDestroyed(const C2Buffer* buf, void* arg);
- void _onBufferDestroyed(const C2Buffer* buf, void* arg);
-
- // Comparison operator for weak pointers.
- struct CompareWeakComponentListener {
- constexpr bool operator()(
- const wp<IComponentListener>& x,
- const wp<IComponentListener>& y) const {
- return x.get_refs() < y.get_refs();
- }
- };
-
- // Persistent data to be passed as "arg" in onBufferDestroyed().
- // This is essentially the triple (listener, frameIndex, bufferIndex) plus a
- // weak pointer to the C2Buffer object.
- //
- // Note that the "key" is bufferIndex according to operator<(). This is
- // designed to work with TrackedBuffersMap defined below.
- struct TrackedBuffer {
- wp<IComponentListener> listener;
- uint64_t frameIndex;
- size_t bufferIndex;
- std::weak_ptr<C2Buffer> buffer;
- TrackedBuffer(const wp<IComponentListener>& listener,
- uint64_t frameIndex,
- size_t bufferIndex,
- const std::shared_ptr<C2Buffer>& buffer)
- : listener(listener),
- frameIndex(frameIndex),
- bufferIndex(bufferIndex),
- buffer(buffer) {}
- TrackedBuffer(const TrackedBuffer&) = default;
- bool operator<(const TrackedBuffer& other) const {
- return bufferIndex < other.bufferIndex;
- }
- };
-
- // Map: listener -> frameIndex -> set<TrackedBuffer>.
- // Essentially, this is used to store triples (listener, frameIndex,
- // bufferIndex) that's searchable by listener and (listener, frameIndex).
- // However, the value of the innermost map is TrackedBuffer, which also
- // contains an extra copy of listener and frameIndex. This is needed
- // because onBufferDestroyed() needs to know listener and frameIndex too.
- typedef std::map<wp<IComponentListener>,
- std::map<uint64_t,
- std::set<TrackedBuffer>>,
- CompareWeakComponentListener> TrackedBuffersMap;
-
- // Storage for pending (unsent) death notifications for one listener.
- // Each pair in member named "indices" are (frameIndex, bufferIndex) from
- // the (listener, frameIndex, bufferIndex) triple.
- struct DeathNotifications {
-
- // The number of pending notifications for this listener.
- // count may be 0, in which case the DeathNotifications object will
- // remain valid for only a small period (kNotificationPeriodNs
- // nanoseconds).
- size_t count;
-
- // The timestamp of the most recent callback on this listener. This is
- // used to guarantee that callbacks do not occur too frequently, and
- // also to trigger expiration of a DeathNotifications object that has
- // count = 0.
- nsecs_t lastSentNs;
-
- // Map: frameIndex -> vector of bufferIndices
- // This is essentially a collection of (framdeIndex, bufferIndex).
- std::map<uint64_t, std::vector<size_t>> indices;
-
- DeathNotifications()
- : count(0),
- lastSentNs(systemTime() - kNotificationPeriodNs),
- indices() {}
- };
-
- // Mutex for the management of all input buffers.
- std::mutex mMutex;
-
- // Tracked input buffers.
- TrackedBuffersMap mTrackedBuffersMap;
-
- // Death notifications to be sent.
- //
- // A DeathNotifications object is associated to each listener. An entry in
- // this map will be removed if its associated DeathNotifications has count =
- // 0 and lastSentNs < systemTime() - kNotificationPeriodNs.
- std::map<wp<IComponentListener>, DeathNotifications> mDeathNotifications;
-
- // Condition variable signaled when an entry is added to mDeathNotifications.
- std::condition_variable mOnBufferDestroyed;
-
- // Notify the clients about buffer destructions.
- // Return false if all destructions have been notified.
- // Return true and set timeToRetry to the duration to wait for before
- // retrying if some destructions have not been notified.
- bool processNotifications(nsecs_t* timeToRetryNs);
-
- // Main function for the input buffer manager thread.
- void main();
-
- // The thread that manages notifications.
- //
- // Note: This variable is declared last so its initialization will happen
- // after all other member variables have been initialized.
- std::thread mMainThread;
-
- // Private constructor.
- InputBufferManager();
-
- // The only instance of this class.
- static InputBufferManager& getInstance();
-
-};
-
-// ComponentInterface
-ComponentInterface::ComponentInterface(
- const std::shared_ptr<C2ComponentInterface>& intf,
- const sp<ComponentStore>& store) :
- Configurable(new CachedConfigurable(std::make_unique<CompIntf>(intf))),
- mInterface(intf) {
- mInit = init(store.get());
-}
-
-c2_status_t ComponentInterface::status() const {
- return mInit;
-}
-
-// ComponentListener wrapper
-struct Component::Listener : public C2Component::Listener {
-
- Listener(const sp<Component>& component) :
- mComponent(component),
- mListener(component->mListener) {
- }
-
- virtual void onError_nb(
- std::weak_ptr<C2Component> /* c2component */,
- uint32_t errorCode) override {
- ALOGV("onError");
- sp<IComponentListener> listener = mListener.promote();
- if (listener) {
- Return<void> transStatus = listener->onError(Status::OK, errorCode);
- if (!transStatus.isOk()) {
- ALOGE("onError -- transaction failed.");
- }
- }
- }
-
- virtual void onTripped_nb(
- std::weak_ptr<C2Component> /* c2component */,
- std::vector<std::shared_ptr<C2SettingResult>> c2settingResult
- ) override {
- ALOGV("onTripped");
- sp<IComponentListener> listener = mListener.promote();
- if (listener) {
- hidl_vec<SettingResult> settingResults(c2settingResult.size());
- size_t ix = 0;
- for (const std::shared_ptr<C2SettingResult> &c2result :
- c2settingResult) {
- if (c2result) {
- if (objcpy(&settingResults[ix++], *c2result) !=
- Status::OK) {
- break;
- }
- }
- }
- settingResults.resize(ix);
- Return<void> transStatus = listener->onTripped(settingResults);
- if (!transStatus.isOk()) {
- ALOGE("onTripped -- transaction failed.");
- }
- }
- }
-
- virtual void onWorkDone_nb(
- std::weak_ptr<C2Component> /* c2component */,
- std::list<std::unique_ptr<C2Work>> c2workItems) override {
- ALOGV("onWorkDone");
- for (const std::unique_ptr<C2Work>& work : c2workItems) {
- if (work) {
- if (work->worklets.empty()
- || !work->worklets.back()
- || (work->worklets.back()->output.flags &
- C2FrameData::FLAG_INCOMPLETE) == 0) {
- InputBufferManager::
- unregisterFrameData(mListener, work->input);
- }
- }
- }
-
- sp<IComponentListener> listener = mListener.promote();
- if (listener) {
- WorkBundle workBundle;
-
- sp<Component> strongComponent = mComponent.promote();
- if (objcpy(&workBundle, c2workItems, strongComponent ?
- &strongComponent->mBufferPoolSender : nullptr)
- != Status::OK) {
- ALOGE("onWorkDone() received corrupted work items.");
- return;
- }
- Return<void> transStatus = listener->onWorkDone(workBundle);
- if (!transStatus.isOk()) {
- ALOGE("onWorkDone -- transaction failed.");
- return;
- }
- yieldBufferQueueBlocks(c2workItems, true);
- }
- }
-
-protected:
- wp<Component> mComponent;
- wp<IComponentListener> mListener;
-};
-
-// Component
-Component::Component(
- const std::shared_ptr<C2Component>& component,
- const sp<IComponentListener>& listener,
- const sp<ComponentStore>& store,
- const sp<::android::hardware::media::bufferpool::V1_0::
- IClientManager>& clientPoolManager) :
- Configurable(new CachedConfigurable(
- std::make_unique<CompIntf>(component->intf()))),
- mComponent(component),
- mInterface(component->intf()),
- mListener(listener),
- mStore(store),
- mBufferPoolSender(clientPoolManager) {
- // Retrieve supported parameters from store
- // TODO: We could cache this per component/interface type
- mInit = init(store.get());
-}
-
-c2_status_t Component::status() const {
- return mInit;
-}
-
-// Methods from ::android::hardware::media::c2::V1_0::IComponent
-Return<Status> Component::queue(const WorkBundle& workBundle) {
- ALOGV("queue -- converting input");
- std::list<std::unique_ptr<C2Work>> c2works;
-
- if (objcpy(&c2works, workBundle) != C2_OK) {
- ALOGV("queue -- corrupted");
- return Status::CORRUPTED;
- }
-
- // Register input buffers.
- for (const std::unique_ptr<C2Work>& work : c2works) {
- if (work) {
- InputBufferManager::
- registerFrameData(mListener, work->input);
- }
- }
-
- ALOGV("queue -- calling");
- return static_cast<Status>(mComponent->queue_nb(&c2works));
-}
-
-Return<void> Component::flush(flush_cb _hidl_cb) {
- std::list<std::unique_ptr<C2Work>> c2flushedWorks;
- ALOGV("flush -- calling");
- c2_status_t c2res = mComponent->flush_sm(
- C2Component::FLUSH_COMPONENT,
- &c2flushedWorks);
-
- // Unregister input buffers.
- for (const std::unique_ptr<C2Work>& work : c2flushedWorks) {
- if (work) {
- if (work->worklets.empty()
- || !work->worklets.back()
- || (work->worklets.back()->output.flags &
- C2FrameData::FLAG_INCOMPLETE) == 0) {
- InputBufferManager::
- unregisterFrameData(mListener, work->input);
- }
- }
- }
-
- WorkBundle flushedWorkBundle;
- Status res = static_cast<Status>(c2res);
- if (c2res == C2_OK) {
- ALOGV("flush -- converting output");
- res = objcpy(&flushedWorkBundle, c2flushedWorks, &mBufferPoolSender);
- }
- _hidl_cb(res, flushedWorkBundle);
- yieldBufferQueueBlocks(c2flushedWorks, true);
- return Void();
-}
-
-Return<Status> Component::drain(bool withEos) {
- ALOGV("drain");
- return static_cast<Status>(mComponent->drain_nb(withEos ?
- C2Component::DRAIN_COMPONENT_WITH_EOS :
- C2Component::DRAIN_COMPONENT_NO_EOS));
-}
-
-Return<Status> Component::setOutputSurface(
- uint64_t blockPoolId,
- const sp<HGraphicBufferProducer>& surface) {
- std::shared_ptr<C2BlockPool> pool;
- GetCodec2BlockPool(blockPoolId, mComponent, &pool);
- if (pool && pool->getAllocatorId() == C2PlatformAllocatorStore::BUFFERQUEUE) {
- std::shared_ptr<C2BufferQueueBlockPool> bqPool =
- std::static_pointer_cast<C2BufferQueueBlockPool>(pool);
- C2BufferQueueBlockPool::OnRenderCallback cb =
- [this](uint64_t producer, int32_t slot, int64_t nsecs) {
- // TODO: batch this
- hidl_vec<IComponentListener::RenderedFrame> rendered;
- rendered.resize(1);
- rendered[0] = { producer, slot, nsecs };
- (void)mListener->onFramesRendered(rendered).isOk();
- };
- if (bqPool) {
- bqPool->setRenderCallback(cb);
- bqPool->configureProducer(surface);
- }
- }
- return Status::OK;
-}
-
-Return<Status> Component::connectToOmxInputSurface(
- const sp<HGraphicBufferProducer>& producer,
- const sp<::android::hardware::media::omx::V1_0::
- IGraphicBufferSource>& source) {
- // TODO implement
- (void)producer;
- (void)source;
- return Status::OMITTED;
-}
-
-Return<Status> Component::disconnectFromInputSurface() {
- // TODO implement
- return Status::OK;
-}
-
-namespace /* unnamed */ {
-
-struct BlockPoolIntf : public ConfigurableC2Intf {
- BlockPoolIntf(const std::shared_ptr<C2BlockPool>& pool) :
- ConfigurableC2Intf("C2BlockPool:" +
- (pool ? std::to_string(pool->getLocalId()) :
- "null")),
- mPool(pool) {
- }
-
- virtual c2_status_t config(
- const std::vector<C2Param*>& params,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2SettingResult>>* const failures
- ) override {
- (void)params;
- (void)mayBlock;
- (void)failures;
- return C2_OK;
- }
-
- virtual c2_status_t query(
- const std::vector<C2Param::Index>& indices,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2Param>>* const params
- ) const override {
- (void)indices;
- (void)mayBlock;
- (void)params;
- return C2_OK;
- }
-
- virtual c2_status_t querySupportedParams(
- std::vector<std::shared_ptr<C2ParamDescriptor>>* const params
- ) const override {
- (void)params;
- return C2_OK;
- }
-
- virtual c2_status_t querySupportedValues(
- std::vector<C2FieldSupportedValuesQuery>& fields,
- c2_blocking_t mayBlock) const override {
- (void)fields;
- (void)mayBlock;
- return C2_OK;
- }
-
-protected:
- std::shared_ptr<C2BlockPool> mPool;
-};
-
-} // unnamed namespace
-
-Return<void> Component::createBlockPool(
- uint32_t allocatorId,
- createBlockPool_cb _hidl_cb) {
- std::shared_ptr<C2BlockPool> blockPool;
- c2_status_t status = CreateCodec2BlockPool(
- static_cast<C2PlatformAllocatorStore::id_t>(allocatorId),
- mComponent,
- &blockPool);
- if (status != C2_OK) {
- blockPool = nullptr;
- }
- if (blockPool) {
- mBlockPoolsMutex.lock();
- mBlockPools.emplace(blockPool->getLocalId(), blockPool);
- mBlockPoolsMutex.unlock();
- } else if (status == C2_OK) {
- status = C2_CORRUPTED;
- }
-
- _hidl_cb(static_cast<Status>(status),
- blockPool ? blockPool->getLocalId() : 0,
- new CachedConfigurable(
- std::make_unique<BlockPoolIntf>(blockPool)));
- return Void();
-}
-
-Return<Status> Component::destroyBlockPool(uint64_t blockPoolId) {
- std::lock_guard<std::mutex> lock(mBlockPoolsMutex);
- return mBlockPools.erase(blockPoolId) == 1 ?
- Status::OK : Status::CORRUPTED;
-}
-
-Return<Status> Component::start() {
- ALOGV("start");
- return static_cast<Status>(mComponent->start());
-}
-
-Return<Status> Component::stop() {
- ALOGV("stop");
- InputBufferManager::unregisterFrameData(mListener);
- return static_cast<Status>(mComponent->stop());
-}
-
-Return<Status> Component::reset() {
- ALOGV("reset");
- Status status = static_cast<Status>(mComponent->reset());
- {
- std::lock_guard<std::mutex> lock(mBlockPoolsMutex);
- mBlockPools.clear();
- }
- InputBufferManager::unregisterFrameData(mListener);
- return status;
-}
-
-Return<Status> Component::release() {
- ALOGV("release");
- Status status = static_cast<Status>(mComponent->release());
- {
- std::lock_guard<std::mutex> lock(mBlockPoolsMutex);
- mBlockPools.clear();
- }
- InputBufferManager::unregisterFrameData(mListener);
- return status;
-}
-
-void Component::setLocalId(const Component::LocalId& localId) {
- mLocalId = localId;
-}
-
-void Component::initListener(const sp<Component>& self) {
- std::shared_ptr<C2Component::Listener> c2listener =
- std::make_shared<Listener>(self);
- c2_status_t res = mComponent->setListener_vb(c2listener, C2_DONT_BLOCK);
- if (res != C2_OK) {
- mInit = res;
- }
-}
-
-Component::~Component() {
- InputBufferManager::unregisterFrameData(mListener);
- mStore->reportComponentDeath(mLocalId);
-}
-
-Component::InterfaceKey::InterfaceKey(const sp<IComponent>& component) {
- isRemote = component->isRemote();
- if (isRemote) {
- remote = ::android::hardware::toBinder(component);
- } else {
- local = component;
- }
-}
-
-// InputBufferManager implementation
-
-constexpr nsecs_t InputBufferManager::kNotificationPeriodNs;
-
-void InputBufferManager::registerFrameData(
- const sp<IComponentListener>& listener,
- const C2FrameData& input) {
- getInstance()._registerFrameData(listener, input);
-}
-
-void InputBufferManager::unregisterFrameData(
- const wp<IComponentListener>& listener,
- const C2FrameData& input) {
- getInstance()._unregisterFrameData(listener, input);
-}
-
-void InputBufferManager::unregisterFrameData(
- const wp<IComponentListener>& listener) {
- getInstance()._unregisterFrameData(listener);
-}
-
-void InputBufferManager::_registerFrameData(
- const sp<IComponentListener>& listener,
- const C2FrameData& input) {
- uint64_t frameIndex = input.ordinal.frameIndex.peeku();
- ALOGV("InputBufferManager::_registerFrameData called "
- "(listener @ %p, frameIndex = %llu)",
- listener.get(),
- static_cast<long long unsigned>(frameIndex));
- std::lock_guard<std::mutex> lock(mMutex);
-
- std::set<TrackedBuffer> &bufferIds =
- mTrackedBuffersMap[listener][frameIndex];
-
- for (size_t i = 0; i < input.buffers.size(); ++i) {
- if (!input.buffers[i]) {
- ALOGV("InputBufferManager::_registerFrameData: "
- "Input buffer at index %zu is null", i);
- continue;
- }
- const TrackedBuffer &bufferId =
- *bufferIds.emplace(listener, frameIndex, i, input.buffers[i]).
- first;
-
- c2_status_t status = input.buffers[i]->registerOnDestroyNotify(
- onBufferDestroyed,
- const_cast<void*>(reinterpret_cast<const void*>(&bufferId)));
- if (status != C2_OK) {
- ALOGD("InputBufferManager: registerOnDestroyNotify failed "
- "(listener @ %p, frameIndex = %llu, bufferIndex = %zu) "
- "=> %s (%d)",
- listener.get(),
- static_cast<unsigned long long>(frameIndex),
- i,
- asString(status), static_cast<int>(status));
- }
- }
-
- mDeathNotifications.emplace(listener, DeathNotifications());
-}
-
-// Remove a pair (listener, frameIndex) from mTrackedBuffersMap and
-// mDeathNotifications. This implies all bufferIndices are removed.
-//
-// This is called from onWorkDone() and flush().
-void InputBufferManager::_unregisterFrameData(
- const wp<IComponentListener>& listener,
- const C2FrameData& input) {
- uint64_t frameIndex = input.ordinal.frameIndex.peeku();
- ALOGV("InputBufferManager::_unregisterFrameData called "
- "(listener @ %p, frameIndex = %llu)",
- listener.unsafe_get(),
- static_cast<long long unsigned>(frameIndex));
- std::lock_guard<std::mutex> lock(mMutex);
-
- auto findListener = mTrackedBuffersMap.find(listener);
- if (findListener != mTrackedBuffersMap.end()) {
- std::map<uint64_t, std::set<TrackedBuffer>> &frameIndex2BufferIds
- = findListener->second;
- auto findFrameIndex = frameIndex2BufferIds.find(frameIndex);
- if (findFrameIndex != frameIndex2BufferIds.end()) {
- std::set<TrackedBuffer> &bufferIds = findFrameIndex->second;
- for (const TrackedBuffer& bufferId : bufferIds) {
- std::shared_ptr<C2Buffer> buffer = bufferId.buffer.lock();
- if (buffer) {
- c2_status_t status = buffer->unregisterOnDestroyNotify(
- onBufferDestroyed,
- const_cast<void*>(
- reinterpret_cast<const void*>(&bufferId)));
- if (status != C2_OK) {
- ALOGD("InputBufferManager: "
- "unregisterOnDestroyNotify failed "
- "(listener @ %p, "
- "frameIndex = %llu, "
- "bufferIndex = %zu) "
- "=> %s (%d)",
- bufferId.listener.unsafe_get(),
- static_cast<unsigned long long>(
- bufferId.frameIndex),
- bufferId.bufferIndex,
- asString(status), static_cast<int>(status));
- }
- }
- }
-
- frameIndex2BufferIds.erase(findFrameIndex);
- if (frameIndex2BufferIds.empty()) {
- mTrackedBuffersMap.erase(findListener);
- }
- }
- }
-
- auto findListenerD = mDeathNotifications.find(listener);
- if (findListenerD != mDeathNotifications.end()) {
- DeathNotifications &deathNotifications = findListenerD->second;
- auto findFrameIndex = deathNotifications.indices.find(frameIndex);
- if (findFrameIndex != deathNotifications.indices.end()) {
- std::vector<size_t> &bufferIndices = findFrameIndex->second;
- deathNotifications.count -= bufferIndices.size();
- deathNotifications.indices.erase(findFrameIndex);
- }
- }
-}
-
-// Remove listener from mTrackedBuffersMap and mDeathNotifications. This implies
-// all frameIndices and bufferIndices are removed.
-//
-// This is called when the component cleans up all input buffers, i.e., when
-// reset(), release(), stop() or ~Component() is called.
-void InputBufferManager::_unregisterFrameData(
- const wp<IComponentListener>& listener) {
- ALOGV("InputBufferManager::_unregisterFrameData called (listener @ %p)",
- listener.unsafe_get());
- std::lock_guard<std::mutex> lock(mMutex);
-
- auto findListener = mTrackedBuffersMap.find(listener);
- if (findListener != mTrackedBuffersMap.end()) {
- std::map<uint64_t, std::set<TrackedBuffer>> &frameIndex2BufferIds =
- findListener->second;
- for (auto findFrameIndex = frameIndex2BufferIds.begin();
- findFrameIndex != frameIndex2BufferIds.end();
- ++findFrameIndex) {
- std::set<TrackedBuffer> &bufferIds = findFrameIndex->second;
- for (const TrackedBuffer& bufferId : bufferIds) {
- std::shared_ptr<C2Buffer> buffer = bufferId.buffer.lock();
- if (buffer) {
- c2_status_t status = buffer->unregisterOnDestroyNotify(
- onBufferDestroyed,
- const_cast<void*>(
- reinterpret_cast<const void*>(&bufferId)));
- if (status != C2_OK) {
- ALOGD("InputBufferManager: "
- "unregisterOnDestroyNotify failed "
- "(listener @ %p, "
- "frameIndex = %llu, "
- "bufferIndex = %zu) "
- "=> %s (%d)",
- bufferId.listener.unsafe_get(),
- static_cast<unsigned long long>(bufferId.frameIndex),
- bufferId.bufferIndex,
- asString(status), static_cast<int>(status));
- }
- }
- }
- }
- mTrackedBuffersMap.erase(findListener);
- }
-
- mDeathNotifications.erase(listener);
-}
-
-// Move a buffer from mTrackedBuffersMap to mDeathNotifications.
-// This is called when a registered C2Buffer object is destroyed.
-void InputBufferManager::onBufferDestroyed(const C2Buffer* buf, void* arg) {
- getInstance()._onBufferDestroyed(buf, arg);
-}
-
-void InputBufferManager::_onBufferDestroyed(const C2Buffer* buf, void* arg) {
- if (!buf || !arg) {
- ALOGW("InputBufferManager::_onBufferDestroyed called "
- "with null argument(s) (buf @ %p, arg @ %p)",
- buf, arg);
- return;
- }
- TrackedBuffer id(*reinterpret_cast<TrackedBuffer*>(arg));
- ALOGV("InputBufferManager::_onBufferDestroyed called "
- "(listener @ %p, frameIndex = %llu, bufferIndex = %zu)",
- id.listener.unsafe_get(),
- static_cast<unsigned long long>(id.frameIndex),
- id.bufferIndex);
-
- std::lock_guard<std::mutex> lock(mMutex);
-
- auto findListener = mTrackedBuffersMap.find(id.listener);
- if (findListener == mTrackedBuffersMap.end()) {
- ALOGD("InputBufferManager::_onBufferDestroyed received "
- "invalid listener "
- "(listener @ %p, frameIndex = %llu, bufferIndex = %zu)",
- id.listener.unsafe_get(),
- static_cast<unsigned long long>(id.frameIndex),
- id.bufferIndex);
- return;
- }
-
- std::map<uint64_t, std::set<TrackedBuffer>> &frameIndex2BufferIds
- = findListener->second;
- auto findFrameIndex = frameIndex2BufferIds.find(id.frameIndex);
- if (findFrameIndex == frameIndex2BufferIds.end()) {
- ALOGD("InputBufferManager::_onBufferDestroyed received "
- "invalid frame index "
- "(listener @ %p, frameIndex = %llu, bufferIndex = %zu)",
- id.listener.unsafe_get(),
- static_cast<unsigned long long>(id.frameIndex),
- id.bufferIndex);
- return;
- }
-
- std::set<TrackedBuffer> &bufferIds = findFrameIndex->second;
- auto findBufferId = bufferIds.find(id);
- if (findBufferId == bufferIds.end()) {
- ALOGD("InputBufferManager::_onBufferDestroyed received "
- "invalid buffer index: "
- "(listener @ %p, frameIndex = %llu, bufferIndex = %zu)",
- id.listener.unsafe_get(),
- static_cast<unsigned long long>(id.frameIndex),
- id.bufferIndex);
- }
-
- bufferIds.erase(findBufferId);
- if (bufferIds.empty()) {
- frameIndex2BufferIds.erase(findFrameIndex);
- if (frameIndex2BufferIds.empty()) {
- mTrackedBuffersMap.erase(findListener);
- }
- }
-
- DeathNotifications &deathNotifications = mDeathNotifications[id.listener];
- deathNotifications.indices[id.frameIndex].emplace_back(id.bufferIndex);
- ++deathNotifications.count;
- mOnBufferDestroyed.notify_one();
-}
-
-// Notify the clients about buffer destructions.
-// Return false if all destructions have been notified.
-// Return true and set timeToRetry to the time point to wait for before
-// retrying if some destructions have not been notified.
-bool InputBufferManager::processNotifications(nsecs_t* timeToRetryNs) {
-
- struct Notification {
- sp<IComponentListener> listener;
- hidl_vec<IComponentListener::RenderedFrame> renderedFrames;
- Notification(const sp<IComponentListener>& l, size_t s)
- : listener(l), renderedFrames(s) {}
- };
- std::list<Notification> notifications;
-
- bool retry = false;
- {
- std::lock_guard<std::mutex> lock(mMutex);
- *timeToRetryNs = kNotificationPeriodNs;
- nsecs_t timeNowNs = systemTime();
- for (auto it = mDeathNotifications.begin();
- it != mDeathNotifications.end(); ) {
- sp<IComponentListener> listener = it->first.promote();
- if (!listener) {
- ++it;
- continue;
- }
- DeathNotifications &deathNotifications = it->second;
-
- nsecs_t timeSinceLastNotifiedNs =
- timeNowNs - deathNotifications.lastSentNs;
- // If not enough time has passed since the last callback, leave the
- // notifications for this listener untouched for now and retry
- // later.
- if (timeSinceLastNotifiedNs < kNotificationPeriodNs) {
- retry = true;
- *timeToRetryNs = std::min(*timeToRetryNs,
- kNotificationPeriodNs - timeSinceLastNotifiedNs);
- ALOGV("InputBufferManager: Notifications for "
- "listener @ %p will be postponed.",
- listener.get());
- ++it;
- continue;
- }
-
- // If enough time has passed since the last notification to this
- // listener but there are currently no pending notifications, the
- // listener can be removed from mDeathNotifications---there is no
- // need to keep track of the last notification time anymore.
- if (deathNotifications.count == 0) {
- it = mDeathNotifications.erase(it);
- continue;
- }
-
- // Create the argument for the callback.
- notifications.emplace_back(listener, deathNotifications.count);
- hidl_vec<IComponentListener::RenderedFrame>& renderedFrames =
- notifications.back().renderedFrames;
- size_t i = 0;
- for (std::pair<const uint64_t, std::vector<size_t>>& p :
- deathNotifications.indices) {
- uint64_t frameIndex = p.first;
- const std::vector<size_t> &bufferIndices = p.second;
- for (const size_t& bufferIndex : bufferIndices) {
- IComponentListener::RenderedFrame &renderedFrame
- = renderedFrames[i++];
- renderedFrame.slotId = ~bufferIndex;
- renderedFrame.bufferQueueId = frameIndex;
- renderedFrame.timestampNs = timeNowNs;
- ALOGV("InputBufferManager: "
- "Sending death notification (listener @ %p, "
- "frameIndex = %llu, bufferIndex = %zu)",
- listener.get(),
- static_cast<long long unsigned>(frameIndex),
- bufferIndex);
- }
- }
-
- // Clear deathNotifications for this listener and set retry to true
- // so processNotifications will be called again. This will
- // guarantee that a listener with no pending notifications will
- // eventually be removed from mDeathNotifications after
- // kNotificationPeriodNs nanoseconds has passed.
- retry = true;
- deathNotifications.indices.clear();
- deathNotifications.count = 0;
- deathNotifications.lastSentNs = timeNowNs;
- ++it;
- }
- }
-
- // Call onFramesRendered outside the lock to avoid deadlock.
- for (const Notification& notification : notifications) {
- if (!notification.listener->onFramesRendered(
- notification.renderedFrames).isOk()) {
- // This may trigger if the client has died.
- ALOGD("InputBufferManager: onFramesRendered transaction failed "
- "(listener @ %p)",
- notification.listener.get());
- }
- }
- if (retry) {
- ALOGV("InputBufferManager: Pending death notifications"
- "will be sent in %lldns.",
- static_cast<long long>(*timeToRetryNs));
- }
- return retry;
-}
-
-void InputBufferManager::main() {
- ALOGV("InputBufferManager: Starting main thread");
- nsecs_t timeToRetryNs;
- while (true) {
- std::unique_lock<std::mutex> lock(mMutex);
- while (mDeathNotifications.empty()) {
- ALOGV("InputBufferManager: Waiting for buffer deaths");
- mOnBufferDestroyed.wait(lock);
- }
- lock.unlock();
- ALOGV("InputBufferManager: Sending buffer death notifications");
- while (processNotifications(&timeToRetryNs)) {
- std::this_thread::sleep_for(
- std::chrono::nanoseconds(timeToRetryNs));
- ALOGV("InputBufferManager: Sending pending death notifications");
- }
- ALOGV("InputBufferManager: No pending death notifications");
- }
-}
-
-InputBufferManager::InputBufferManager()
- : mMainThread(&InputBufferManager::main, this) {
-}
-
-InputBufferManager& InputBufferManager::getInstance() {
- static InputBufferManager instance{};
- return instance;
-}
-
-} // namespace utils
-} // namespace V1_0
-} // namespace c2
-} // namespace media
-} // namespace google
-} // namespace hardware
diff --git a/codec2/hidl/1.0/utils/ComponentStore.cpp b/codec2/hidl/1.0/utils/ComponentStore.cpp
deleted file mode 100644
index 9a46b77..0000000
--- a/codec2/hidl/1.0/utils/ComponentStore.cpp
+++ /dev/null
@@ -1,436 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "Codec2-ComponentStore"
-#include <log/log.h>
-
-#include <codec2/hidl/1.0/ComponentStore.h>
-#include <codec2/hidl/1.0/InputSurface.h>
-#include <codec2/hidl/1.0/Component.h>
-#include <codec2/hidl/1.0/ConfigurableC2Intf.h>
-#include <codec2/hidl/1.0/types.h>
-
-#include <gui/bufferqueue/1.0/WGraphicBufferProducer.h>
-#include <media/stagefright/bqhelper/GraphicBufferSource.h>
-
-#include <C2PlatformSupport.h>
-#include <util/C2InterfaceHelper.h>
-
-#include <utils/Errors.h>
-
-#include <android-base/file.h>
-
-#ifdef LOG
-#undef LOG
-#endif
-
-#ifdef PLOG
-#undef PLOG
-#endif
-
-#include <android-base/logging.h>
-
-#include <ostream>
-#include <sstream>
-#include <iomanip>
-
-namespace hardware {
-namespace google {
-namespace media {
-namespace c2 {
-namespace V1_0 {
-namespace utils {
-
-using namespace ::android;
-using ::android::GraphicBufferSource;
-using namespace ::android::hardware::media::bufferpool::V1_0::implementation;
-
-namespace /* unnamed */ {
-
-struct StoreIntf : public ConfigurableC2Intf {
- StoreIntf(const std::shared_ptr<C2ComponentStore>& store) :
- ConfigurableC2Intf(store ? store->getName() : ""),
- mStore(store) {
- }
-
- c2_status_t config(
- const std::vector<C2Param*> ¶ms,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2SettingResult>> *const failures
- ) override {
- // Assume all params are blocking
- // TODO: Filter for supported params
- if (mayBlock == C2_DONT_BLOCK && params.size() != 0) {
- return C2_BLOCKING;
- }
- return mStore->config_sm(params, failures);
- }
-
- c2_status_t query(
- const std::vector<C2Param::Index> &indices,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2Param>> *const params) const override {
- // Assume all params are blocking
- // TODO: Filter for supported params
- if (mayBlock == C2_DONT_BLOCK && indices.size() != 0) {
- return C2_BLOCKING;
- }
- return mStore->query_sm({}, indices, params);
- }
-
- c2_status_t querySupportedParams(
- std::vector<std::shared_ptr<C2ParamDescriptor>> *const params
- ) const override {
- return mStore->querySupportedParams_nb(params);
- }
-
- c2_status_t querySupportedValues(
- std::vector<C2FieldSupportedValuesQuery> &fields,
- c2_blocking_t mayBlock) const override {
- // Assume all params are blocking
- // TODO: Filter for supported params
- if (mayBlock == C2_DONT_BLOCK && fields.size() != 0) {
- return C2_BLOCKING;
- }
- return mStore->querySupportedValues_sm(fields);
- }
-
-protected:
- std::shared_ptr<C2ComponentStore> mStore;
-};
-
-} // unnamed namespace
-
-ComponentStore::ComponentStore(const std::shared_ptr<C2ComponentStore>& store) :
- Configurable(new CachedConfigurable(std::make_unique<StoreIntf>(store))),
- mStore(store) {
-
- std::shared_ptr<C2ComponentStore> platformStore = android::GetCodec2PlatformComponentStore();
- SetPreferredCodec2ComponentStore(store);
-
- // Retrieve struct descriptors
- mParamReflector = mStore->getParamReflector();
-
- // Retrieve supported parameters from store
- mInit = init(this);
-}
-
-c2_status_t ComponentStore::validateSupportedParams(
- const std::vector<std::shared_ptr<C2ParamDescriptor>>& params) {
- c2_status_t res = C2_OK;
-
- for (const std::shared_ptr<C2ParamDescriptor> &desc : params) {
- if (!desc) {
- // All descriptors should be valid
- res = res ? res : C2_BAD_VALUE;
- continue;
- }
- C2Param::CoreIndex coreIndex = desc->index().coreIndex();
- std::lock_guard<std::mutex> lock(mStructDescriptorsMutex);
- auto it = mStructDescriptors.find(coreIndex);
- if (it == mStructDescriptors.end()) {
- std::shared_ptr<C2StructDescriptor> structDesc =
- mParamReflector->describe(coreIndex);
- if (!structDesc) {
- // All supported params must be described
- res = C2_BAD_INDEX;
- }
- mStructDescriptors.insert({ coreIndex, structDesc });
- }
- }
- return res;
-}
-
-// Methods from ::android::hardware::media::c2::V1_0::IComponentStore
-Return<void> ComponentStore::createComponent(
- const hidl_string& name,
- const sp<IComponentListener>& listener,
- const sp<IClientManager>& pool,
- createComponent_cb _hidl_cb) {
-
- sp<Component> component;
- std::shared_ptr<C2Component> c2component;
- Status status = static_cast<Status>(
- mStore->createComponent(name, &c2component));
-
- if (status == Status::OK) {
- onInterfaceLoaded(c2component->intf());
- component = new Component(c2component, listener, this, pool);
- if (!component) {
- status = Status::CORRUPTED;
- } else if (component->status() != C2_OK) {
- status = static_cast<Status>(component->status());
- } else {
- component->initListener(component);
- if (component->status() != C2_OK) {
- status = static_cast<Status>(component->status());
- } else {
- std::lock_guard<std::mutex> lock(mComponentRosterMutex);
- component->setLocalId(
- mComponentRoster.emplace(
- Component::InterfaceKey(component),
- c2component)
- .first);
- }
- }
- }
- _hidl_cb(status, component);
- return Void();
-}
-
-Return<void> ComponentStore::createInterface(
- const hidl_string& name,
- createInterface_cb _hidl_cb) {
- std::shared_ptr<C2ComponentInterface> c2interface;
- c2_status_t res = mStore->createInterface(name, &c2interface);
- sp<IComponentInterface> interface;
- if (res == C2_OK) {
- onInterfaceLoaded(c2interface);
- interface = new ComponentInterface(c2interface, this);
- }
- _hidl_cb((Status)res, interface);
- return Void();
-}
-
-Return<void> ComponentStore::listComponents(listComponents_cb _hidl_cb) {
- std::vector<std::shared_ptr<const C2Component::Traits>> c2traits =
- mStore->listComponents();
- hidl_vec<IComponentStore::ComponentTraits> traits(c2traits.size());
- size_t ix = 0;
- for (const std::shared_ptr<const C2Component::Traits> &c2trait : c2traits) {
- if (c2trait) {
- objcpy(&traits[ix++], *c2trait);
- }
- }
- traits.resize(ix);
- _hidl_cb(traits);
- return Void();
-}
-
-Return<sp<IInputSurface>> ComponentStore::createInputSurface() {
- sp<GraphicBufferSource> source = new GraphicBufferSource();
- if (source->initCheck() != OK) {
- return nullptr;
- }
- typedef ::android::hardware::graphics::bufferqueue::V1_0::
- IGraphicBufferProducer HGbp;
- typedef ::android::TWGraphicBufferProducer<HGbp> B2HGbp;
- return new InputSurface(
- this,
- std::make_shared<C2ReflectorHelper>(),
- new B2HGbp(source->getIGraphicBufferProducer()),
- source);
-}
-
-void ComponentStore::onInterfaceLoaded(const std::shared_ptr<C2ComponentInterface> &intf) {
- // invalidate unsupported struct descriptors if a new interface is loaded as it may have
- // exposed new descriptors
- std::lock_guard<std::mutex> lock(mStructDescriptorsMutex);
- if (!mLoadedInterfaces.count(intf->getName())) {
- mUnsupportedStructDescriptors.clear();
- mLoadedInterfaces.emplace(intf->getName());
- }
-}
-
-Return<void> ComponentStore::getStructDescriptors(
- const hidl_vec<uint32_t>& indices,
- getStructDescriptors_cb _hidl_cb) {
- hidl_vec<StructDescriptor> descriptors(indices.size());
- size_t dstIx = 0;
- Status res = Status::OK;
- for (size_t srcIx = 0; srcIx < indices.size(); ++srcIx) {
- std::lock_guard<std::mutex> lock(mStructDescriptorsMutex);
- const C2Param::CoreIndex coreIndex = C2Param::CoreIndex(indices[srcIx]).coreIndex();
- const auto item = mStructDescriptors.find(coreIndex);
- if (item == mStructDescriptors.end()) {
- // not in the cache, and not known to be unsupported, query local reflector
- if (!mUnsupportedStructDescriptors.count(coreIndex)) {
- std::shared_ptr<C2StructDescriptor> structDesc =
- mParamReflector->describe(coreIndex);
- if (!structDesc) {
- mUnsupportedStructDescriptors.emplace(coreIndex);
- } else {
- mStructDescriptors.insert({ coreIndex, structDesc });
- objcpy(&descriptors[dstIx++], *structDesc);
- continue;
- }
- }
- res = Status::NOT_FOUND;
- } else if (item->second) {
- objcpy(&descriptors[dstIx++], *item->second);
- } else {
- res = Status::NO_MEMORY;
- }
- }
- descriptors.resize(dstIx);
- _hidl_cb(res, descriptors);
- return Void();
-}
-
-Return<sp<IClientManager>> ComponentStore::getPoolClientManager() {
- return ClientManager::getInstance();
-}
-
-Return<Status> ComponentStore::copyBuffer(const Buffer& src, const Buffer& dst) {
- // TODO implement
- (void)src;
- (void)dst;
- return Status::OMITTED;
-}
-
-void ComponentStore::reportComponentDeath(
- const Component::LocalId& componentLocalId) {
- std::lock_guard<std::mutex> lock(mComponentRosterMutex);
- mComponentRoster.erase(componentLocalId);
-}
-
-std::shared_ptr<C2Component> ComponentStore::findC2Component(
- const sp<IComponent>& component) const {
- std::lock_guard<std::mutex> lock(mComponentRosterMutex);
- Component::LocalId it = mComponentRoster.find(
- Component::InterfaceKey(component));
- if (it == mComponentRoster.end()) {
- return std::shared_ptr<C2Component>();
- }
- return it->second.lock();
-}
-
-// Debug dump
-
-namespace /* unnamed */ {
-
-// Dump component traits
-std::ostream& dump(
- std::ostream& out,
- const std::shared_ptr<const C2Component::Traits>& comp) {
-
- constexpr const char indent[] = " ";
-
- out << indent << "name: " << comp->name << std::endl;
- out << indent << "domain: " << comp->domain << std::endl;
- out << indent << "kind: " << comp->kind << std::endl;
- out << indent << "rank: " << comp->rank << std::endl;
- out << indent << "mediaType: " << comp->mediaType << std::endl;
- out << indent << "aliases:";
- for (const auto& alias : comp->aliases) {
- out << ' ' << alias;
- }
- out << std::endl;
-
- return out;
-}
-
-// Dump component
-std::ostream& dump(
- std::ostream& out,
- const std::shared_ptr<C2Component>& comp) {
-
- constexpr const char indent[] = " ";
-
- std::shared_ptr<C2ComponentInterface> intf = comp->intf();
- if (!intf) {
- out << indent << "Unknown -- null interface" << std::endl;
- return out;
- }
- out << indent << "name: " << intf->getName() << std::endl;
- out << indent << "id: " << intf->getId() << std::endl;
- return out;
-}
-
-} // unnamed namespace
-
-Return<void> ComponentStore::debug(
- const hidl_handle& handle,
- const hidl_vec<hidl_string>& /* args */) {
- LOG(INFO) << "debug -- dumping...";
- const native_handle_t *h = handle.getNativeHandle();
- if (!h || h->numFds != 1) {
- LOG(ERROR) << "debug -- dumping failed -- "
- "invalid file descriptor to dump to";
- return Void();
- }
- std::ostringstream out;
-
- { // Populate "out".
-
- constexpr const char indent[] = " ";
-
- // Show name.
- out << "Beginning of dump -- C2ComponentStore: "
- << mStore->getName() << std::endl << std::endl;
-
- // Retrieve the list of supported components.
- std::vector<std::shared_ptr<const C2Component::Traits>> traitsList =
- mStore->listComponents();
-
- // Dump the traits of supported components.
- out << indent << "Supported components:" << std::endl << std::endl;
- if (traitsList.size() == 0) {
- out << indent << indent << "NONE" << std::endl << std::endl;
- } else {
- for (const auto& traits : traitsList) {
- dump(out, traits) << std::endl;
- }
- }
-
- // Retrieve the list of active components.
- std::list<std::shared_ptr<C2Component>> activeComps;
- {
- std::lock_guard<std::mutex> lock(mComponentRosterMutex);
- auto i = mComponentRoster.begin();
- while (i != mComponentRoster.end()) {
- std::shared_ptr<C2Component> c2comp = i->second.lock();
- if (!c2comp) {
- auto j = i;
- ++i;
- mComponentRoster.erase(j);
- } else {
- ++i;
- activeComps.emplace_back(c2comp);
- }
- }
- }
-
- // Dump active components.
- out << indent << "Active components:" << std::endl << std::endl;
- if (activeComps.size() == 0) {
- out << indent << indent << "NONE" << std::endl << std::endl;
- } else {
- for (const std::shared_ptr<C2Component>& c2comp : activeComps) {
- dump(out, c2comp) << std::endl;
- }
- }
-
- out << "End of dump -- C2ComponentStore: "
- << mStore->getName() << std::endl;
- }
-
- if (!android::base::WriteStringToFd(out.str(), h->data[0])) {
- PLOG(WARNING) << "debug -- dumping failed -- write()";
- } else {
- LOG(INFO) << "debug -- dumping succeeded";
- }
- return Void();
-}
-
-
-} // namespace utils
-} // namespace V1_0
-} // namespace c2
-} // namespace media
-} // namespace google
-} // namespace hardware
diff --git a/codec2/hidl/1.0/utils/Configurable.cpp b/codec2/hidl/1.0/utils/Configurable.cpp
deleted file mode 100644
index 50afd10..0000000
--- a/codec2/hidl/1.0/utils/Configurable.cpp
+++ /dev/null
@@ -1,169 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "Codec2-Configurable"
-#include <log/log.h>
-
-#include <codec2/hidl/1.0/Configurable.h>
-#include <codec2/hidl/1.0/ComponentStore.h>
-#include <codec2/hidl/1.0/types.h>
-#include <C2ParamInternal.h>
-
-namespace hardware {
-namespace google {
-namespace media {
-namespace c2 {
-namespace V1_0 {
-namespace utils {
-
-using namespace ::android;
-
-CachedConfigurable::CachedConfigurable(
- std::unique_ptr<ConfigurableC2Intf>&& intf) :
- mIntf(std::move(intf)) {
-}
-
-c2_status_t CachedConfigurable::init(ComponentStore* store) {
- // Retrieve supported parameters from store
- c2_status_t init = mIntf->querySupportedParams(&mSupportedParams);
- c2_status_t validate = store->validateSupportedParams(mSupportedParams);
- return init == C2_OK ? C2_OK : validate;
-}
-
-// Methods from ::android::hardware::media::c2::V1_0::IConfigurable follow.
-Return<void> CachedConfigurable::getName(getName_cb _hidl_cb) {
- _hidl_cb(mIntf->getName());
- return Void();
-}
-
-Return<void> CachedConfigurable::query(
- const hidl_vec<uint32_t>& indices,
- bool mayBlock,
- query_cb _hidl_cb) {
- typedef C2Param::Index Index;
- std::vector<Index> c2heapParamIndices(
- (Index*)indices.data(),
- (Index*)indices.data() + indices.size());
- std::vector<std::unique_ptr<C2Param>> c2heapParams;
- c2_status_t c2res = mIntf->query(
- c2heapParamIndices,
- mayBlock ? C2_MAY_BLOCK : C2_DONT_BLOCK,
- &c2heapParams);
-
- hidl_vec<uint8_t> params;
- createParamsBlob(¶ms, c2heapParams);
- _hidl_cb(static_cast<Status>(c2res), params);
-
- return Void();
-}
-
-Return<void> CachedConfigurable::config(
- const hidl_vec<uint8_t>& inParams,
- bool mayBlock,
- config_cb _hidl_cb) {
- // inParams is not writable, so create a copy as config modifies the parameters
- hidl_vec<uint8_t> inParamsCopy = inParams;
- std::vector<C2Param*> c2params;
- if (parseParamsBlob(&c2params, inParamsCopy) != C2_OK) {
- _hidl_cb(Status::CORRUPTED,
- hidl_vec<SettingResult>(),
- hidl_vec<uint8_t>());
- return Void();
- }
- // TODO: check if blob was invalid
- std::vector<std::unique_ptr<C2SettingResult>> c2failures;
- c2_status_t c2res = mIntf->config(
- c2params,
- mayBlock ? C2_MAY_BLOCK : C2_DONT_BLOCK,
- &c2failures);
- hidl_vec<SettingResult> failures(c2failures.size());
- {
- size_t ix = 0;
- for (const std::unique_ptr<C2SettingResult>& c2result : c2failures) {
- if (c2result) {
- objcpy(&failures[ix++], *c2result);
- }
- }
- failures.resize(ix);
- }
- hidl_vec<uint8_t> outParams;
- createParamsBlob(&outParams, c2params);
- _hidl_cb((Status)c2res, failures, outParams);
- return Void();
-}
-
-Return<void> CachedConfigurable::querySupportedParams(
- uint32_t start,
- uint32_t count,
- querySupportedParams_cb _hidl_cb) {
- C2LinearRange request = C2LinearCapacity(mSupportedParams.size()).range(
- start, count);
- hidl_vec<ParamDescriptor> params(request.size());
- Status res = Status::OK;
- size_t dstIx = 0;
- for (size_t srcIx = request.offset(); srcIx < request.endOffset(); ++srcIx) {
- if (mSupportedParams[srcIx]) {
- objcpy(¶ms[dstIx++], *mSupportedParams[srcIx]);
- } else {
- res = Status::BAD_INDEX;
- }
- }
- params.resize(dstIx);
- _hidl_cb(res, params);
- return Void();
-}
-
-Return<void> CachedConfigurable::querySupportedValues(
- const hidl_vec<FieldSupportedValuesQuery>& inFields,
- bool mayBlock,
- querySupportedValues_cb _hidl_cb) {
- std::vector<C2FieldSupportedValuesQuery> c2fields;
- {
- // C2FieldSupportedValuesQuery objects are restricted in that some
- // members are const.
- // C2ParamField - required for its constructor - has no constructors
- // from fields. Use C2ParamInspector.
- for (const FieldSupportedValuesQuery &query : inFields) {
- c2fields.emplace_back(_C2ParamInspector::CreateParamField(
- query.field.index,
- query.field.fieldId.offset,
- query.field.fieldId.size),
- query.type == FieldSupportedValuesQuery::Type::POSSIBLE ?
- C2FieldSupportedValuesQuery::POSSIBLE :
- C2FieldSupportedValuesQuery::CURRENT);
- }
- }
- c2_status_t c2res = mIntf->querySupportedValues(
- c2fields,
- mayBlock ? C2_MAY_BLOCK : C2_DONT_BLOCK);
- hidl_vec<FieldSupportedValuesQueryResult> outFields(inFields.size());
- {
- size_t ix = 0;
- for (const C2FieldSupportedValuesQuery &result : c2fields) {
- objcpy(&outFields[ix++], result);
- }
- }
- _hidl_cb((Status)c2res, outFields);
- return Void();
-}
-
-} // namespace utils
-} // namespace V1_0
-} // namespace c2
-} // namespace media
-} // namespace google
-} // namespace hardware
diff --git a/codec2/hidl/1.0/utils/InputSurface.cpp b/codec2/hidl/1.0/utils/InputSurface.cpp
deleted file mode 100644
index 4713af4..0000000
--- a/codec2/hidl/1.0/utils/InputSurface.cpp
+++ /dev/null
@@ -1,309 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "Codec2-InputSurface"
-#include <log/log.h>
-
-#include <codec2/hidl/1.0/InputSurface.h>
-#include <codec2/hidl/1.0/InputSurfaceConnection.h>
-
-#include <util/C2InterfaceHelper.h>
-#include <C2Component.h>
-#include <C2Config.h>
-
-#include <memory>
-
-namespace hardware {
-namespace google {
-namespace media {
-namespace c2 {
-namespace V1_0 {
-namespace utils {
-
-using namespace ::android;
-
-class InputSurface::ConfigurableImpl : public C2InterfaceHelper {
-public:
- explicit ConfigurableImpl(
- const std::shared_ptr<C2ReflectorHelper> &helper)
- : C2InterfaceHelper(helper) {
-
- setDerivedInstance(this);
-
- addParameter(
- DefineParam(mEos, C2_NAME_INPUT_SURFACE_EOS_TUNING)
- .withDefault(new C2InputSurfaceEosTuning(false))
- .withFields({C2F(mEos, value).oneOf({true, false})})
- .withSetter(EosSetter)
- .build());
- }
-
- static C2R EosSetter(bool mayBlock, C2P<C2InputSurfaceEosTuning> &me) {
- (void)mayBlock;
- return me.F(me.v.value).validatePossible(me.v.value);
- }
-
- bool eos() const { return mEos->value; }
-
-private:
- std::shared_ptr<C2InputSurfaceEosTuning> mEos;
-};
-
-namespace {
-
-class ConfigurableWrapper : public ConfigurableC2Intf {
-public:
- ConfigurableWrapper(
- const std::shared_ptr<InputSurface::ConfigurableImpl> &impl,
- const sp<GraphicBufferSource> &source)
- : ConfigurableC2Intf("input-surface"),
- mImpl(impl),
- mSource(source) {
- }
-
- ~ConfigurableWrapper() override = default;
-
- c2_status_t query(
- const std::vector<C2Param::Index> &indices,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2Param>>* const params) const override {
- return mImpl->query({}, indices, mayBlock, params);
- }
-
- c2_status_t config(
- const std::vector<C2Param*> ¶ms,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2SettingResult>>* const failures) override {
- c2_status_t err = mImpl->config(params, mayBlock, failures);
- if (mImpl->eos()) {
- sp<GraphicBufferSource> source = mSource.promote();
- if (source == nullptr || source->signalEndOfInputStream() != OK) {
- // TODO: put something in |failures|
- err = C2_BAD_VALUE;
- }
- // TODO: reset eos?
- }
- return err;
- }
-
- c2_status_t querySupportedParams(
- std::vector<std::shared_ptr<C2ParamDescriptor>>* const params) const override {
- return mImpl->querySupportedParams(params);
- }
-
- c2_status_t querySupportedValues(
- std::vector<C2FieldSupportedValuesQuery>& fields,
- c2_blocking_t mayBlock) const override {
- return mImpl->querySupportedValues(fields, mayBlock);
- }
-
-private:
- const std::shared_ptr<InputSurface::ConfigurableImpl> mImpl;
- wp<GraphicBufferSource> mSource;
-};
-
-} // namespace
-
-
-Return<void> InputSurface::connectToComponent(
- const sp<IComponent>& component,
- connectToComponent_cb _hidl_cb) {
- Status status;
- sp<InputSurfaceConnection> conn;
- if (!component) {
- status = Status::BAD_VALUE;
- } else {
- std::shared_ptr<C2Component> comp = mStore->findC2Component(component);
- if (!comp) {
- conn = new InputSurfaceConnection(mSource, component);
- } else {
- conn = new InputSurfaceConnection(mSource, comp);
- }
- if (!conn->init()) {
- conn = nullptr;
- status = Status::BAD_VALUE;
- } else {
- status = Status::OK;
- }
- }
- _hidl_cb(status, conn);
- return Void();
-}
-
-Return<sp<IConfigurable>> InputSurface::getConfigurable() {
- return mConfigurable;
-}
-
-// Derived methods from IGraphicBufferProducer
-
-Return<void> InputSurface::requestBuffer(
- int32_t slot,
- requestBuffer_cb _hidl_cb) {
- return mBase->requestBuffer(slot, _hidl_cb);
-}
-
-Return<int32_t> InputSurface::setMaxDequeuedBufferCount(
- int32_t maxDequeuedBuffers) {
- return mBase->setMaxDequeuedBufferCount(maxDequeuedBuffers);
-}
-
-Return<int32_t> InputSurface::setAsyncMode(
- bool async) {
- return mBase->setAsyncMode(async);
-}
-
-Return<void> InputSurface::dequeueBuffer(
- uint32_t width,
- uint32_t height,
- PixelFormat format,
- uint32_t usage,
- bool getFrameTimestamps,
- dequeueBuffer_cb _hidl_cb) {
- return mBase->dequeueBuffer(
- width, height, format, usage, getFrameTimestamps, _hidl_cb);
-}
-
-Return<int32_t> InputSurface::detachBuffer(
- int32_t slot) {
- return mBase->detachBuffer(slot);
-}
-
-Return<void> InputSurface::detachNextBuffer(
- detachNextBuffer_cb _hidl_cb) {
- return mBase->detachNextBuffer(_hidl_cb);
-}
-
-Return<void> InputSurface::attachBuffer(
- const AnwBuffer& buffer,
- attachBuffer_cb _hidl_cb) {
- return mBase->attachBuffer(buffer, _hidl_cb);
-}
-
-Return<void> InputSurface::queueBuffer(
- int32_t slot,
- const QueueBufferInput& input,
- queueBuffer_cb _hidl_cb) {
- return mBase->queueBuffer(slot, input, _hidl_cb);
-}
-
-Return<int32_t> InputSurface::cancelBuffer(
- int32_t slot,
- const hidl_handle& fence) {
- return mBase->cancelBuffer(slot, fence);
-}
-
-Return<void> InputSurface::query(
- int32_t what,
- query_cb _hidl_cb) {
- return mBase->query(what, _hidl_cb);
-}
-
-Return<void> InputSurface::connect(
- const sp<HProducerListener>& listener,
- int32_t api,
- bool producerControlledByApp,
- connect_cb _hidl_cb) {
- return mBase->connect(listener, api, producerControlledByApp, _hidl_cb);
-}
-
-Return<int32_t> InputSurface::disconnect(
- int32_t api,
- DisconnectMode mode) {
- return mBase->disconnect(api, mode);
-}
-
-Return<int32_t> InputSurface::setSidebandStream(
- const hidl_handle& stream) {
- return mBase->setSidebandStream(stream);
-}
-
-Return<void> InputSurface::allocateBuffers(
- uint32_t width,
- uint32_t height,
- PixelFormat format,
- uint32_t usage) {
- return mBase->allocateBuffers(width, height, format, usage);
-}
-
-Return<int32_t> InputSurface::allowAllocation(
- bool allow) {
- return mBase->allowAllocation(allow);
-}
-
-Return<int32_t> InputSurface::setGenerationNumber(
- uint32_t generationNumber) {
- return mBase->setGenerationNumber(generationNumber);
-}
-
-Return<void> InputSurface::getConsumerName(
- getConsumerName_cb _hidl_cb) {
- return mBase->getConsumerName(_hidl_cb);
-}
-
-Return<int32_t> InputSurface::setSharedBufferMode(
- bool sharedBufferMode) {
- return mBase->setSharedBufferMode(sharedBufferMode);
-}
-
-Return<int32_t> InputSurface::setAutoRefresh(
- bool autoRefresh) {
- return mBase->setAutoRefresh(autoRefresh);
-}
-
-Return<int32_t> InputSurface::setDequeueTimeout(
- int64_t timeoutNs) {
- return mBase->setDequeueTimeout(timeoutNs);
-}
-
-Return<void> InputSurface::getLastQueuedBuffer(
- getLastQueuedBuffer_cb _hidl_cb) {
- return mBase->getLastQueuedBuffer(_hidl_cb);
-}
-
-Return<void> InputSurface::getFrameTimestamps(
- getFrameTimestamps_cb _hidl_cb) {
- return mBase->getFrameTimestamps(_hidl_cb);
-}
-
-Return<void> InputSurface::getUniqueId(
- getUniqueId_cb _hidl_cb) {
- return mBase->getUniqueId(_hidl_cb);
-}
-
-// Constructor is exclusive to ComponentStore.
-InputSurface::InputSurface(
- const sp<ComponentStore>& store,
- const std::shared_ptr<C2ReflectorHelper>& reflector,
- const sp<HGraphicBufferProducer>& base,
- const sp<GraphicBufferSource>& source) :
- mStore(store),
- mBase(base),
- mSource(source),
- mHelper(std::make_shared<ConfigurableImpl>(reflector)),
- mConfigurable(new CachedConfigurable(
- std::make_unique<ConfigurableWrapper>(mHelper, source))) {
-
- mConfigurable->init(store.get());
-}
-
-} // namespace utils
-} // namespace V1_0
-} // namespace c2
-} // namespace media
-} // namespace google
-} // namespace hardware
-
diff --git a/codec2/hidl/1.0/utils/InputSurfaceConnection.cpp b/codec2/hidl/1.0/utils/InputSurfaceConnection.cpp
deleted file mode 100644
index 4f4af6a..0000000
--- a/codec2/hidl/1.0/utils/InputSurfaceConnection.cpp
+++ /dev/null
@@ -1,439 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "Codec2-InputSurfaceConnection"
-#include <log/log.h>
-
-#include <codec2/hidl/1.0/InputSurfaceConnection.h>
-
-#include <memory>
-#include <list>
-#include <mutex>
-#include <atomic>
-
-#include <hidl/HidlSupport.h>
-#include <media/stagefright/bqhelper/ComponentWrapper.h>
-#include <system/graphics.h>
-#include <ui/GraphicBuffer.h>
-#include <utils/Errors.h>
-
-#include <C2.h>
-#include <C2AllocatorGralloc.h>
-#include <C2BlockInternal.h>
-#include <C2Buffer.h>
-#include <C2Component.h>
-#include <C2Config.h>
-#include <C2Debug.h>
-#include <C2PlatformSupport.h>
-#include <C2Work.h>
-
-namespace hardware {
-namespace google {
-namespace media {
-namespace c2 {
-namespace V1_0 {
-namespace utils {
-
-constexpr int32_t kBufferCount = 16;
-
-using namespace ::android;
-using ::android::hardware::hidl_string;
-using ::android::hardware::hidl_vec;
-using ::android::hardware::Return;
-
-namespace /* unnamed */ {
-
-class Buffer2D : public C2Buffer {
-public:
- explicit Buffer2D(C2ConstGraphicBlock block) : C2Buffer({ block }) {
- }
-};
-
-} // unnamed namespace
-
-struct InputSurfaceConnection::Impl : public ComponentWrapper {
- Impl(const sp<GraphicBufferSource>& source,
- const std::shared_ptr<C2Component>& comp) :
- mSource(source), mComp(comp), mRemoteComp(),
- mFrameIndex(0) {
- std::shared_ptr<C2ComponentInterface> intf = comp->intf();
- mCompName = intf ? intf->getName() : "";
- }
-
- Impl(const sp<GraphicBufferSource>& source,
- const sp<IComponent>& comp) :
- mSource(source), mComp(), mRemoteComp(comp),
- mFrameIndex(0) {
- Return<void> transStatus = comp->getName(
- [this](const hidl_string& name) {
- mCompName = name.c_str();
- });
- if (!transStatus.isOk()) {
- ALOGD("getName -- Cannot obtain remote component name.");
- }
- }
-
- virtual ~Impl() = default;
-
- bool init() {
- sp<GraphicBufferSource> source = mSource.promote();
- if (source == nullptr) {
- return false;
- }
- status_t err = source->initCheck();
- if (err != OK) {
- ALOGD("Impl::init -- GBS init failed: %d", err);
- return false;
- }
-
- // TODO: read settings properly from the interface
- C2VideoSizeStreamTuning::input inputSize;
- C2StreamUsageTuning::input usage;
- c2_status_t c2Status = compQuery({ &inputSize, &usage },
- {},
- C2_MAY_BLOCK,
- nullptr);
- if (c2Status != C2_OK) {
- ALOGD("Impl::init -- cannot query information from "
- "the component interface: %s.", asString(c2Status));
- return false;
- }
-
- // TODO: proper color aspect & dataspace
- android_dataspace dataSpace = HAL_DATASPACE_BT709;
-
- // TODO: use the usage read from intf
- // uint32_t grallocUsage =
- // C2AndroidMemoryUsage(C2MemoryUsage(usage.value)).
- // asGrallocUsage();
-
- uint32_t grallocUsage =
- mCompName.compare(0, 11, "c2.android.") == 0 ?
- GRALLOC_USAGE_SW_READ_OFTEN :
- GRALLOC_USAGE_HW_VIDEO_ENCODER;
-
- err = source->configure(
- this, dataSpace, kBufferCount,
- inputSize.width, inputSize.height,
- grallocUsage);
- if (err != OK) {
- ALOGD("Impl::init -- GBS configure failed: %d", err);
- return false;
- }
- for (int32_t i = 0; i < kBufferCount; ++i) {
- if (!source->onInputBufferAdded(i).isOk()) {
- ALOGD("Impl::init: populating GBS slots failed");
- return false;
- }
- }
- if (!source->start().isOk()) {
- ALOGD("Impl::init -- GBS start failed");
- return false;
- }
- mAllocatorMutex.lock();
- c2_status_t c2err = GetCodec2PlatformAllocatorStore()->fetchAllocator(
- C2AllocatorStore::PLATFORM_START + 1, // GRALLOC
- &mAllocator);
- mAllocatorMutex.unlock();
- if (c2err != OK) {
- ALOGD("Impl::init -- failed to fetch gralloc allocator: %d", c2err);
- return false;
- }
- return true;
- }
-
- // From ComponentWrapper
- virtual status_t submitBuffer(
- int32_t bufferId,
- const sp<GraphicBuffer>& buffer,
- int64_t timestamp,
- int fenceFd) override {
- ALOGV("Impl::submitBuffer -- bufferId = %d", bufferId);
- // TODO: Use fd to construct fence
- (void)fenceFd;
-
- std::shared_ptr<C2GraphicAllocation> alloc;
- C2Handle* handle = WrapNativeCodec2GrallocHandle(
- buffer->handle,
- buffer->width, buffer->height,
- buffer->format, buffer->usage, buffer->stride);
- mAllocatorMutex.lock();
- c2_status_t err = mAllocator->priorGraphicAllocation(handle, &alloc);
- mAllocatorMutex.unlock();
- if (err != OK) {
- return UNKNOWN_ERROR;
- }
- std::shared_ptr<C2GraphicBlock> block =
- _C2BlockFactory::CreateGraphicBlock(alloc);
-
- std::unique_ptr<C2Work> work(new C2Work);
- work->input.flags = (C2FrameData::flags_t)0;
- work->input.ordinal.timestamp = timestamp;
- work->input.ordinal.frameIndex = mFrameIndex.fetch_add(
- 1, std::memory_order_relaxed);
- work->input.buffers.clear();
- std::shared_ptr<C2Buffer> c2Buffer(
- // TODO: fence
- new Buffer2D(block->share(
- C2Rect(block->width(), block->height()), ::C2Fence())),
- [bufferId, src = mSource](C2Buffer* ptr) {
- delete ptr;
- sp<GraphicBufferSource> source = src.promote();
- if (source != nullptr) {
- // TODO: fence
- (void)source->onInputBufferEmptied(bufferId, -1);
- }
- });
- work->input.buffers.push_back(c2Buffer);
- work->worklets.clear();
- work->worklets.emplace_back(new C2Worklet);
- std::list<std::unique_ptr<C2Work>> items;
- items.push_back(std::move(work));
-
- err = compQueue(&items);
- return (err == C2_OK) ? OK : UNKNOWN_ERROR;
- }
-
- virtual status_t submitEos(int32_t /* bufferId */) override {
- ALOGV("Impl::submitEos");
-
- std::unique_ptr<C2Work> work(new C2Work);
- work->input.flags = (C2FrameData::flags_t)0;
- work->input.ordinal.frameIndex = mFrameIndex.fetch_add(
- 1, std::memory_order_relaxed);
- work->input.buffers.clear();
- work->worklets.clear();
- work->worklets.emplace_back(new C2Worklet);
- std::list<std::unique_ptr<C2Work>> items;
- items.push_back(std::move(work));
-
- c2_status_t err = compQueue(&items);
- return (err == C2_OK) ? OK : UNKNOWN_ERROR;
- }
-
- void dispatchDataSpaceChanged(
- int32_t dataSpace, int32_t aspects, int32_t pixelFormat) override {
- // TODO
- (void)dataSpace;
- (void)aspects;
- (void)pixelFormat;
- }
-
-private:
- c2_status_t compQuery(
- const std::vector<C2Param*> &stackParams,
- const std::vector<C2Param::Index> &heapParamIndices,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2Param>>* const heapParams) {
- std::shared_ptr<C2Component> comp = mComp.lock();
- if (comp) {
- std::shared_ptr<C2ComponentInterface> intf = comp->intf();
- if (intf) {
- return intf->query_vb(stackParams,
- heapParamIndices,
- mayBlock,
- heapParams);
- } else {
- ALOGD("compQuery -- component does not have an interface.");
- return C2_BAD_STATE;
- }
- }
- if (!mRemoteComp) {
- ALOGD("compQuery -- component no longer exists.");
- return C2_BAD_STATE;
- }
-
- hidl_vec<ParamIndex> indices(
- stackParams.size() + heapParamIndices.size());
- size_t numIndices = 0;
- for (C2Param* const& stackParam : stackParams) {
- if (!stackParam) {
- ALOGD("compQuery -- null stack param encountered.");
- continue;
- }
- indices[numIndices++] = static_cast<ParamIndex>(stackParam->index());
- }
- size_t numStackIndices = numIndices;
- for (const C2Param::Index& index : heapParamIndices) {
- indices[numIndices++] =
- static_cast<ParamIndex>(static_cast<uint32_t>(index));
- }
- indices.resize(numIndices);
- if (heapParams) {
- heapParams->reserve(heapParams->size() + numIndices);
- }
- c2_status_t status;
- Return<void> transStatus = mRemoteComp->query(
- indices,
- mayBlock == C2_MAY_BLOCK,
- [&status, &numStackIndices, &stackParams, heapParams](
- Status s, const Params& p) {
- status = static_cast<c2_status_t>(s);
- if (status != C2_OK && status != C2_BAD_INDEX) {
- ALOGD("compQuery -- call failed: %s.", asString(status));
- return;
- }
- std::vector<C2Param*> paramPointers;
- c2_status_t parseStatus = parseParamsBlob(¶mPointers, p);
- if (parseStatus != C2_OK) {
- ALOGD("compQuery -- error while parsing params: %s.",
- asString(parseStatus));
- status = parseStatus;
- return;
- }
- size_t i = 0;
- for (auto it = paramPointers.begin();
- it != paramPointers.end(); ) {
- C2Param* paramPointer = *it;
- if (numStackIndices > 0) {
- --numStackIndices;
- if (!paramPointer) {
- ALOGD("compQuery -- null stack param.");
- ++it;
- continue;
- }
- for (; i < stackParams.size() &&
- !stackParams[i]; ) {
- ++i;
- }
- CHECK(i < stackParams.size());
- if (stackParams[i]->index() !=
- paramPointer->index()) {
- ALOGD("compQuery -- param skipped. index = %d",
- static_cast<int>(
- stackParams[i]->index()));
- stackParams[i++]->invalidate();
- continue;
- }
- if (!stackParams[i++]->updateFrom(*paramPointer)) {
- ALOGD("compQuery -- param update failed: "
- "index = %d.",
- static_cast<int>(paramPointer->index()));
- }
- } else {
- if (!paramPointer) {
- ALOGD("compQuery -- null heap param.");
- ++it;
- continue;
- }
- if (!heapParams) {
- ALOGD("compQuery -- too many stack params.");
- break;
- }
- heapParams->emplace_back(C2Param::Copy(*paramPointer));
- }
- ++it;
- }
- });
- if (!transStatus.isOk()) {
- ALOGD("compQuery -- transaction failed.");
- return C2_CORRUPTED;
- }
- return status;
- }
-
- c2_status_t compQueue(std::list<std::unique_ptr<C2Work>>* const items) {
- std::shared_ptr<C2Component> comp = mComp.lock();
- if (comp) {
- return comp->queue_nb(items);
- }
-
- WorkBundle workBundle;
- Status hidlStatus = objcpy(&workBundle, *items, nullptr);
- if (hidlStatus != Status::OK) {
- ALOGD("compQueue -- bad input.");
- return C2_CORRUPTED;
- }
- Return<Status> transStatus = mRemoteComp->queue(workBundle);
- if (!transStatus.isOk()) {
- ALOGD("compQueue -- transaction failed.");
- return C2_CORRUPTED;
- }
- c2_status_t status =
- static_cast<c2_status_t>(static_cast<Status>(transStatus));
- if (status != C2_OK) {
- ALOGV("compQueue -- call failed: %s.", asString(status));
- }
- return status;
- }
-
- wp<GraphicBufferSource> mSource;
- std::weak_ptr<C2Component> mComp;
- sp<IComponent> mRemoteComp;
- std::string mCompName;
-
- // Needed for ComponentWrapper implementation
- std::mutex mAllocatorMutex;
- std::shared_ptr<C2Allocator> mAllocator;
- std::atomic_uint64_t mFrameIndex;
-};
-
-InputSurfaceConnection::InputSurfaceConnection(
- const sp<GraphicBufferSource>& source,
- const std::shared_ptr<C2Component>& comp) :
- mSource(source),
- mImpl(new Impl(source, comp)) {
-}
-
-InputSurfaceConnection::InputSurfaceConnection(
- const sp<GraphicBufferSource>& source,
- const sp<IComponent>& comp) :
- mSource(source),
- mImpl(new Impl(source, comp)) {
-}
-
-InputSurfaceConnection::~InputSurfaceConnection() {
- if (mSource) {
- (void)mSource->stop();
- (void)mSource->release();
- mSource.clear();
- }
- mImpl.clear();
-}
-
-bool InputSurfaceConnection::init() {
- mMutex.lock();
- sp<Impl> impl = mImpl;
- mMutex.unlock();
-
- if (!impl) {
- return false;
- }
- return impl->init();
-}
-
-Return<Status> InputSurfaceConnection::disconnect() {
- ALOGV("disconnect");
- mMutex.lock();
- if (mSource) {
- (void)mSource->stop();
- (void)mSource->release();
- mSource.clear();
- }
- mImpl.clear();
- mMutex.unlock();
- ALOGV("disconnected");
- return Status::OK;
-}
-
-} // namespace utils
-} // namespace V1_0
-} // namespace c2
-} // namespace media
-} // namespace google
-} // namespace hardware
-
diff --git a/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/Component.h b/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/Component.h
deleted file mode 100644
index a6e4333..0000000
--- a/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/Component.h
+++ /dev/null
@@ -1,174 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_COMPONENT_H
-#define HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_COMPONENT_H
-
-#include <codec2/hidl/1.0/Configurable.h>
-#include <codec2/hidl/1.0/types.h>
-
-#include <android/hardware/media/bufferpool/1.0/IClientManager.h>
-#include <hardware/google/media/c2/1.0/IComponentListener.h>
-#include <hardware/google/media/c2/1.0/IComponentStore.h>
-#include <hardware/google/media/c2/1.0/IComponent.h>
-#include <hidl/Status.h>
-#include <hwbinder/IBinder.h>
-
-#include <C2Component.h>
-#include <C2Buffer.h>
-#include <C2.h>
-
-#include <list>
-#include <map>
-#include <memory>
-
-namespace hardware {
-namespace google {
-namespace media {
-namespace c2 {
-namespace V1_0 {
-namespace utils {
-
-using ::android::hardware::hidl_array;
-using ::android::hardware::hidl_memory;
-using ::android::hardware::hidl_string;
-using ::android::hardware::hidl_vec;
-using ::android::hardware::Return;
-using ::android::hardware::Void;
-using ::android::hardware::IBinder;
-using ::android::sp;
-using ::android::wp;
-
-struct ComponentStore;
-
-struct ComponentInterface : public Configurable<IComponentInterface> {
- ComponentInterface(
- const std::shared_ptr<C2ComponentInterface>& interface,
- const sp<ComponentStore>& store);
- c2_status_t status() const;
-
-protected:
- c2_status_t mInit;
- std::shared_ptr<C2ComponentInterface> mInterface;
- sp<ComponentStore> mStore;
-};
-
-struct Component : public Configurable<IComponent> {
- Component(
- const std::shared_ptr<C2Component>&,
- const sp<IComponentListener>& listener,
- const sp<ComponentStore>& store,
- const sp<::android::hardware::media::bufferpool::V1_0::
- IClientManager>& clientPoolManager);
- c2_status_t status() const;
-
- typedef ::android::hardware::graphics::bufferqueue::V1_0::
- IGraphicBufferProducer HGraphicBufferProducer;
-
- // Methods from IComponent follow.
- virtual Return<Status> queue(const WorkBundle& workBundle) override;
- virtual Return<void> flush(flush_cb _hidl_cb) override;
- virtual Return<Status> drain(bool withEos) override;
- virtual Return<Status> setOutputSurface(
- uint64_t blockPoolId,
- const sp<HGraphicBufferProducer>& surface) override;
- virtual Return<Status> connectToOmxInputSurface(
- const sp<HGraphicBufferProducer>& producer,
- const sp<::android::hardware::media::omx::V1_0::
- IGraphicBufferSource>& source) override;
- virtual Return<Status> disconnectFromInputSurface() override;
- virtual Return<void> createBlockPool(
- uint32_t allocatorId,
- createBlockPool_cb _hidl_cb) override;
- virtual Return<Status> destroyBlockPool(uint64_t blockPoolId) override;
- virtual Return<Status> start() override;
- virtual Return<Status> stop() override;
- virtual Return<Status> reset() override;
- virtual Return<Status> release() override;
-
-protected:
- c2_status_t mInit;
- std::shared_ptr<C2Component> mComponent;
- std::shared_ptr<C2ComponentInterface> mInterface;
- sp<IComponentListener> mListener;
- sp<ComponentStore> mStore;
- ::hardware::google::media::c2::V1_0::utils::DefaultBufferPoolSender
- mBufferPoolSender;
-
- std::mutex mBlockPoolsMutex;
- // This map keeps C2BlockPool objects that are created by createBlockPool()
- // alive. These C2BlockPool objects can be deleted by calling
- // destroyBlockPool(), reset() or release(), or by destroying the component.
- std::map<uint64_t, std::shared_ptr<C2BlockPool>> mBlockPools;
-
- // This struct is a comparable wrapper for IComponent.
- //
- // An IComponent object is either local or remote. If it is local, we can
- // use the underlying pointer as a key. If it is remote, we have to use the
- // underlying pointer of the associated binder object as a key.
- //
- // See interfacesEqual() for more detail.
- struct InterfaceKey {
- // An InterfaceKey is constructed from IComponent.
- InterfaceKey(const sp<IComponent>& component);
- // operator< is defined here to control the default definition of
- // std::less<InterfaceKey>, which will be used in type Roster defined
- // below.
- bool operator<(const InterfaceKey& other) const {
- return isRemote ?
- (other.isRemote ?
- // remote & remote
- std::less<IBinder*>()(
- remote.unsafe_get(),
- other.remote.unsafe_get()) :
- // remote & local
- false) :
- (other.isRemote ?
- // local & remote
- true :
- // local & local
- std::less<IComponent*>()(
- local.unsafe_get(),
- other.local.unsafe_get()));
- }
- private:
- bool isRemote;
- wp<IBinder> remote;
- wp<IComponent> local;
- };
-
- typedef std::map<InterfaceKey, std::weak_ptr<C2Component>> Roster;
- typedef Roster::const_iterator LocalId;
- LocalId mLocalId;
- void setLocalId(const LocalId& localId);
-
- void initListener(const sp<Component>& self);
-
- virtual ~Component() override;
-
- friend struct ComponentStore;
-
- struct Listener;
-};
-
-} // namespace utils
-} // namespace V1_0
-} // namespace c2
-} // namespace media
-} // namespace google
-} // namespace hardware
-
-#endif // HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_COMPONENT_H
diff --git a/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/ComponentStore.h b/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/ComponentStore.h
deleted file mode 100644
index c700a5c..0000000
--- a/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/ComponentStore.h
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_COMPONENTSTORE_H
-#define HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_COMPONENTSTORE_H
-
-#include <codec2/hidl/1.0/Component.h>
-#include <codec2/hidl/1.0/Configurable.h>
-#include <hardware/google/media/c2/1.0/IComponentStore.h>
-#include <android/hardware/media/bufferpool/1.0/IClientManager.h>
-#include <hidl/Status.h>
-
-#include <C2Component.h>
-#include <C2Param.h>
-#include <C2.h>
-
-#include <map>
-#include <memory>
-#include <mutex>
-#include <set>
-#include <vector>
-
-namespace hardware {
-namespace google {
-namespace media {
-namespace c2 {
-namespace V1_0 {
-namespace utils {
-
-using ::android::hardware::media::bufferpool::V1_0::IClientManager;
-
-using ::android::hardware::hidl_array;
-using ::android::hardware::hidl_handle;
-using ::android::hardware::hidl_memory;
-using ::android::hardware::hidl_string;
-using ::android::hardware::hidl_vec;
-using ::android::hardware::Return;
-using ::android::hardware::Void;
-using ::android::sp;
-using ::android::wp;
-
-struct ComponentStore : public Configurable<IComponentStore> {
- ComponentStore(const std::shared_ptr<C2ComponentStore>& store);
- virtual ~ComponentStore() = default;
-
- c2_status_t status() const {
- return mInit;
- }
-
- c2_status_t validateSupportedParams(
- const std::vector<std::shared_ptr<C2ParamDescriptor>>& params);
-
- // Methods from ::android::hardware::media::c2::V1_0::IComponentStore
- Return<void> createComponent(
- const hidl_string& name,
- const sp<IComponentListener>& listener,
- const sp<IClientManager>& pool,
- createComponent_cb _hidl_cb) override;
- Return<void> createInterface(
- const hidl_string& name,
- createInterface_cb _hidl_cb) override;
- Return<void> listComponents(listComponents_cb _hidl_cb) override;
- Return<sp<IInputSurface>> createInputSurface() override;
- Return<void> getStructDescriptors(
- const hidl_vec<uint32_t>& indices,
- getStructDescriptors_cb _hidl_cb) override;
- Return<sp<IClientManager>> getPoolClientManager() override;
- Return<Status> copyBuffer(
- const Buffer& src,
- const Buffer& dst) override;
-
- // Debug dump
- Return<void> debug(
- const hidl_handle& handle,
- const hidl_vec<hidl_string>& args) override;
-
-protected:
- // does bookkeeping for an interface that has been loaded
- void onInterfaceLoaded(const std::shared_ptr<C2ComponentInterface> &intf);
-
- c2_status_t mInit;
- std::shared_ptr<C2ComponentStore> mStore;
- std::shared_ptr<C2ParamReflector> mParamReflector;
-
- std::map<C2Param::CoreIndex, std::shared_ptr<C2StructDescriptor>> mStructDescriptors;
- std::set<C2Param::CoreIndex> mUnsupportedStructDescriptors;
- std::set<C2String> mLoadedInterfaces;
- mutable std::mutex mStructDescriptorsMutex;
-
- // Component lifetime management
- Component::Roster mComponentRoster;
- mutable std::mutex mComponentRosterMutex;
- void reportComponentDeath(const Component::LocalId& componentLocalId);
-
- friend Component;
-
- // C2Component lookup
- std::shared_ptr<C2Component> findC2Component(
- const sp<IComponent>& component) const;
-
- friend struct InputSurface;
-};
-
-} // namespace utils
-} // namespace V1_0
-} // namespace c2
-} // namespace media
-} // namespace google
-} // namespace hardware
-
-#endif // HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_COMPONENTSTORE_H
diff --git a/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/Configurable.h b/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/Configurable.h
deleted file mode 100644
index 1c4c437..0000000
--- a/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/Configurable.h
+++ /dev/null
@@ -1,157 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_CONFIGURABLE_H
-#define HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_CONFIGURABLE_H
-
-#include <codec2/hidl/1.0/ConfigurableC2Intf.h>
-
-#include <C2Component.h>
-#include <C2Param.h>
-#include <C2.h>
-
-#include <hardware/google/media/c2/1.0/IConfigurable.h>
-#include <hidl/Status.h>
-
-#include <memory>
-
-namespace hardware {
-namespace google {
-namespace media {
-namespace c2 {
-namespace V1_0 {
-namespace utils {
-
-using ::android::hardware::hidl_array;
-using ::android::hardware::hidl_memory;
-using ::android::hardware::hidl_string;
-using ::android::hardware::hidl_vec;
-using ::android::hardware::Return;
-using ::android::hardware::Void;
-using ::android::sp;
-
-struct ComponentStore;
-
-/**
- * Implementation of the IConfigurable interface that supports caching of
- * supported parameters from a supplied ComponentStore.
- *
- * This is mainly the same for all of the configurable C2 interfaces though
- * there are slight differences in the blocking behavior. This is handled in the
- * ConfigurableC2Intf implementations.
- */
-struct CachedConfigurable : public IConfigurable {
- CachedConfigurable(std::unique_ptr<ConfigurableC2Intf>&& intf);
-
- c2_status_t init(ComponentStore* store);
-
- // Methods from ::android::hardware::media::c2::V1_0::IConfigurable
-
- virtual Return<void> getName(getName_cb _hidl_cb) override;
-
- virtual Return<void> query(
- const hidl_vec<uint32_t>& indices,
- bool mayBlock,
- query_cb _hidl_cb) override;
-
- virtual Return<void> config(
- const hidl_vec<uint8_t>& inParams,
- bool mayBlock,
- config_cb _hidl_cb) override;
-
- virtual Return<void> querySupportedParams(
- uint32_t start,
- uint32_t count,
- querySupportedParams_cb _hidl_cb) override;
-
- virtual Return<void> querySupportedValues(
- const hidl_vec<FieldSupportedValuesQuery>& inFields,
- bool mayBlock,
- querySupportedValues_cb _hidl_cb) override;
-
-protected:
- // Common Codec2.0 interface wrapper
- std::unique_ptr<ConfigurableC2Intf> mIntf;
-
- // Cached supported params
- std::vector<std::shared_ptr<C2ParamDescriptor>> mSupportedParams;
-};
-
-/**
- * Template that implements the `IConfigurable` interface for an inherited
- * interface. Classes that implement a child interface `I` of `IConfigurable`
- * can derive from `Configurable<I>`.
- */
-template <typename I>
-struct Configurable : public I {
- Configurable(const sp<CachedConfigurable>& intf): mIntf(intf) {
- }
-
- c2_status_t init(ComponentStore* store) {
- return mIntf->init(store);
- }
-
- // Methods from ::android::hardware::media::c2::V1_0::IConfigurable
-
- using getName_cb = typename I::getName_cb;
- virtual Return<void> getName(getName_cb _hidl_cb) override {
- return mIntf->getName(_hidl_cb);
- }
-
- using query_cb = typename I::query_cb;
- virtual Return<void> query(
- const hidl_vec<uint32_t>& indices,
- bool mayBlock,
- query_cb _hidl_cb) override {
- return mIntf->query(indices, mayBlock, _hidl_cb);
- }
-
- using config_cb = typename I::config_cb;
- virtual Return<void> config(
- const hidl_vec<uint8_t>& inParams,
- bool mayBlock,
- config_cb _hidl_cb) override {
- return mIntf->config(inParams, mayBlock, _hidl_cb);
- }
-
- using querySupportedParams_cb = typename I::querySupportedParams_cb;
- virtual Return<void> querySupportedParams(
- uint32_t start,
- uint32_t count,
- querySupportedParams_cb _hidl_cb) override {
- return mIntf->querySupportedParams(start, count, _hidl_cb);
- }
-
- using querySupportedValues_cb = typename I::querySupportedValues_cb;
- virtual Return<void> querySupportedValues(
- const hidl_vec<FieldSupportedValuesQuery>& inFields,
- bool mayBlock,
- querySupportedValues_cb _hidl_cb) override {
- return mIntf->querySupportedValues(inFields, mayBlock, _hidl_cb);
- }
-
-protected:
- sp<CachedConfigurable> mIntf;
-};
-
-} // namespace utils
-} // namespace V1_0
-} // namespace c2
-} // namespace media
-} // namespace google
-} // namespace hardware
-
-#endif // HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_CONFIGURABLE_H
diff --git a/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/ConfigurableC2Intf.h b/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/ConfigurableC2Intf.h
deleted file mode 100644
index c616ea3..0000000
--- a/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/ConfigurableC2Intf.h
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_CONFIGURABLEC2INTF_H
-#define HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_CONFIGURABLEC2INTF_H
-
-#include <C2Work.h>
-#include <C2Component.h>
-#include <C2Param.h>
-#include <C2.h>
-
-#include <hidl/HidlSupport.h>
-#include <utils/StrongPointer.h>
-#include <vector>
-#include <memory>
-
-namespace hardware {
-namespace google {
-namespace media {
-namespace c2 {
-namespace V1_0 {
-namespace utils {
-
-using ::android::sp;
-using ::android::hardware::hidl_string;
-using ::android::hardware::hidl_vec;
-using ::android::hardware::Return;
-using ::android::hardware::Void;
-
-/**
- * Common Codec 2.0 interface wrapper.
- */
-struct ConfigurableC2Intf {
- C2String getName() const { return mName; }
- /** C2ComponentInterface::query_vb sans stack params */
- virtual c2_status_t query(
- const std::vector<C2Param::Index> &indices,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2Param>>* const params) const = 0;
- /** C2ComponentInterface::config_vb */
- virtual c2_status_t config(
- const std::vector<C2Param*> ¶ms,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2SettingResult>>* const failures) = 0;
- /** C2ComponentInterface::querySupportedParams_nb */
- virtual c2_status_t querySupportedParams(
- std::vector<std::shared_ptr<C2ParamDescriptor>>* const params) const = 0;
- /** C2ComponentInterface::querySupportedParams_nb */
- virtual c2_status_t querySupportedValues(
- std::vector<C2FieldSupportedValuesQuery>& fields, c2_blocking_t mayBlock) const = 0;
-
- virtual ~ConfigurableC2Intf() = default;
-
- ConfigurableC2Intf(const C2String& name) : mName(name) {}
-
-protected:
- C2String mName; /* cache component name */
-};
-
-} // namespace utils
-} // namespace V1_0
-} // namespace c2
-} // namespace media
-} // namespace google
-} // namespace hardware
-
-#endif // HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_CONFIGURABLEC2INTF_H
diff --git a/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/InputSurface.h b/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/InputSurface.h
deleted file mode 100644
index 0e86d63..0000000
--- a/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/InputSurface.h
+++ /dev/null
@@ -1,200 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_INPUTSURFACE_H
-#define HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_INPUTSURFACE_H
-
-#include <codec2/hidl/1.0/ComponentStore.h>
-
-#include <hardware/google/media/c2/1.0/IInputSurface.h>
-#include <hardware/google/media/c2/1.0/IComponent.h>
-
-#include <android/hardware/graphics/bufferqueue/1.0/IGraphicBufferProducer.h>
-#include <android/hardware/graphics/bufferqueue/1.0/IProducerListener.h>
-#include <android/hardware/graphics/common/1.0/types.h>
-#include <android/hardware/media/1.0/types.h>
-
-#include <gui/IGraphicBufferProducer.h>
-#include <media/stagefright/bqhelper/GraphicBufferSource.h>
-
-#include <hidl/HidlSupport.h>
-#include <hidl/Status.h>
-
-class C2ReflectorHelper;
-
-namespace hardware {
-namespace google {
-namespace media {
-namespace c2 {
-namespace V1_0 {
-namespace utils {
-
-using ::android::hardware::hidl_handle;
-using ::android::hardware::hidl_string;
-using ::android::hardware::hidl_vec;
-using ::android::hardware::Return;
-using ::android::hardware::Void;
-using ::android::sp;
-
-using ::android::hardware::graphics::common::V1_0::PixelFormat;
-using ::android::hardware::media::V1_0::AnwBuffer;
-
-struct InputSurface : public IInputSurface {
-
- typedef ::android::hidl::base::V1_0::IBase IBase;
-
- typedef ::android::hardware::graphics::bufferqueue::V1_0::
- IProducerListener HProducerListener;
-
- typedef ::android::
- IGraphicBufferProducer BGraphicBufferProducer;
-
- typedef ::android::hardware::graphics::bufferqueue::V1_0::
- IGraphicBufferProducer HGraphicBufferProducer;
-
- typedef ::android::
- GraphicBufferSource GraphicBufferSource;
-
-// Type disambiguation
-
- typedef ::hardware::google::media::c2::V1_0::Status Status;
-
-// New methods from IInputSurface
-
- virtual Return<void> connectToComponent(
- const sp<IComponent>& component,
- connectToComponent_cb _hidl_cb) override;
-
- virtual Return<sp<IConfigurable>> getConfigurable() override;
-
-// Methods derived from IGraphicBufferProducer
-
- virtual Return<void> requestBuffer(
- int32_t slot,
- requestBuffer_cb _hidl_cb) override;
-
- virtual Return<int32_t> setMaxDequeuedBufferCount(
- int32_t maxDequeuedBuffers) override;
-
- virtual Return<int32_t> setAsyncMode(
- bool async) override;
-
- virtual Return<void> dequeueBuffer(
- uint32_t width,
- uint32_t height,
- PixelFormat format,
- uint32_t usage,
- bool getFrameTimestamps,
- dequeueBuffer_cb _hidl_cb) override;
-
- virtual Return<int32_t> detachBuffer(
- int32_t slot) override;
-
- virtual Return<void> detachNextBuffer(
- detachNextBuffer_cb _hidl_cb) override;
-
- virtual Return<void> attachBuffer(
- const AnwBuffer& buffer,
- attachBuffer_cb _hidl_cb) override;
-
- virtual Return<void> queueBuffer(
- int32_t slot,
- const QueueBufferInput& input,
- queueBuffer_cb _hidl_cb) override;
-
- virtual Return<int32_t> cancelBuffer(
- int32_t slot,
- const hidl_handle& fence) override;
-
- virtual Return<void> query(
- int32_t what,
- query_cb _hidl_cb) override;
-
- virtual Return<void> connect(
- const sp<HProducerListener>& listener,
- int32_t api,
- bool producerControlledByApp,
- connect_cb _hidl_cb) override;
-
- virtual Return<int32_t> disconnect(
- int32_t api,
- DisconnectMode mode) override;
-
- virtual Return<int32_t> setSidebandStream(
- const hidl_handle& stream) override;
-
- virtual Return<void> allocateBuffers(
- uint32_t width,
- uint32_t height,
- PixelFormat format,
- uint32_t usage) override;
-
- virtual Return<int32_t> allowAllocation(
- bool allow) override;
-
- virtual Return<int32_t> setGenerationNumber(
- uint32_t generationNumber) override;
-
- virtual Return<void> getConsumerName(
- getConsumerName_cb _hidl_cb) override;
-
- virtual Return<int32_t> setSharedBufferMode(
- bool sharedBufferMode) override;
-
- virtual Return<int32_t> setAutoRefresh(
- bool autoRefresh) override;
-
- virtual Return<int32_t> setDequeueTimeout(
- int64_t timeoutNs) override;
-
- virtual Return<void> getLastQueuedBuffer(
- getLastQueuedBuffer_cb _hidl_cb) override;
-
- virtual Return<void> getFrameTimestamps(
- getFrameTimestamps_cb _hidl_cb) override;
-
- virtual Return<void> getUniqueId(
- getUniqueId_cb _hidl_cb) override;
-
- class ConfigurableImpl;
-
-protected:
- sp<ComponentStore> mStore;
- sp<HGraphicBufferProducer> mBase;
- sp<GraphicBufferSource> mSource;
- std::shared_ptr<ConfigurableImpl> mHelper;
- sp<CachedConfigurable> mConfigurable;
-
- InputSurface(
- const sp<ComponentStore>& store,
- const std::shared_ptr<C2ReflectorHelper>& reflector,
- const sp<HGraphicBufferProducer>& base,
- const sp<GraphicBufferSource>& source);
-
- virtual ~InputSurface() override = default;
-
- friend struct ComponentStore;
-};
-
-
-} // namespace utils
-} // namespace V1_0
-} // namespace c2
-} // namespace media
-} // namespace google
-} // namespace hardware
-
-#endif // HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_INPUTSURFACE_H
diff --git a/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/InputSurfaceConnection.h b/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/InputSurfaceConnection.h
deleted file mode 100644
index 9c8c96e..0000000
--- a/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/InputSurfaceConnection.h
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_INPUTSURFACECONNECTION_H
-#define HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_INPUTSURFACECONNECTION_H
-
-#include <codec2/hidl/1.0/Component.h>
-
-#include <hardware/google/media/c2/1.0/IComponent.h>
-#include <hardware/google/media/c2/1.0/IInputSurfaceConnection.h>
-
-#include <media/stagefright/bqhelper/GraphicBufferSource.h>
-
-#include <hidl/HidlSupport.h>
-#include <hidl/Status.h>
-
-#include <C2Component.h>
-
-#include <memory>
-#include <mutex>
-
-namespace hardware {
-namespace google {
-namespace media {
-namespace c2 {
-namespace V1_0 {
-namespace utils {
-
-using ::android::hardware::Return;
-using ::android::hardware::Void;
-using ::android::sp;
-using ::android::GraphicBufferSource;
-
-struct InputSurfaceConnection : public IInputSurfaceConnection {
-
- virtual Return<Status> disconnect() override;
-
-protected:
-
- InputSurfaceConnection(
- const sp<GraphicBufferSource>& source,
- const std::shared_ptr<C2Component>& component);
-
- InputSurfaceConnection(
- const sp<GraphicBufferSource>& source,
- const sp<IComponent>& component);
-
- bool init();
-
- friend struct InputSurface;
-
- InputSurfaceConnection() = delete;
- InputSurfaceConnection(const InputSurfaceConnection&) = delete;
- void operator=(const InputSurfaceConnection&) = delete;
-
- struct Impl;
-
- std::mutex mMutex;
- sp<GraphicBufferSource> mSource;
- sp<Impl> mImpl;
-
- virtual ~InputSurfaceConnection() override;
-};
-
-} // namespace utils
-} // namespace V1_0
-} // namespace c2
-} // namespace media
-} // namespace google
-} // namespace hardware
-
-#endif // HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_INPUTSURFACECONNECTION_H
diff --git a/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/types.h b/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/types.h
deleted file mode 100644
index 268ca00..0000000
--- a/codec2/hidl/1.0/utils/include/codec2/hidl/1.0/types.h
+++ /dev/null
@@ -1,368 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_TYPES_H
-#define HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_TYPES_H
-
-#include <chrono>
-
-#include <bufferpool/ClientManager.h>
-#include <android/hardware/media/bufferpool/1.0/IClientManager.h>
-#include <android/hardware/media/bufferpool/1.0/types.h>
-#include <hardware/google/media/c2/1.0/IComponentStore.h>
-#include <hardware/google/media/c2/1.0/types.h>
-#include <gui/IGraphicBufferProducer.h>
-
-#include <C2Component.h>
-#include <C2Param.h>
-#include <C2ParamDef.h>
-#include <C2Work.h>
-
-using namespace std::chrono_literals;
-
-namespace hardware {
-namespace google {
-namespace media {
-namespace c2 {
-namespace V1_0 {
-namespace utils {
-
-using ::android::hardware::hidl_bitfield;
-using ::android::hardware::hidl_handle;
-using ::android::hardware::hidl_string;
-using ::android::hardware::hidl_vec;
-using ::android::status_t;
-using ::android::sp;
-using ::android::hardware::media::bufferpool::V1_0::implementation::
- ConnectionId;
-using ::android::IGraphicBufferProducer;
-
-// Types of metadata for Blocks.
-struct C2Hidl_Range {
- uint32_t offset;
- uint32_t length; // Do not use "size" because the name collides with C2Info::size().
-};
-typedef C2GlobalParam<C2Info, C2Hidl_Range, 0> C2Hidl_RangeInfo;
-
-struct C2Hidl_Rect {
- uint32_t left;
- uint32_t top;
- uint32_t width;
- uint32_t height;
-};
-typedef C2GlobalParam<C2Info, C2Hidl_Rect, 1> C2Hidl_RectInfo;
-
-// C2SettingResult -> SettingResult
-Status objcpy(
- SettingResult* d,
- const C2SettingResult& s);
-
-// SettingResult -> std::unique_ptr<C2SettingResult>
-c2_status_t objcpy(
- std::unique_ptr<C2SettingResult>* d,
- const SettingResult& s);
-
-// C2ParamDescriptor -> ParamDescriptor
-Status objcpy(
- ParamDescriptor* d,
- const C2ParamDescriptor& s);
-
-// ParamDescriptor -> std::shared_ptr<C2ParamDescriptor>
-c2_status_t objcpy(
- std::shared_ptr<C2ParamDescriptor>* d,
- const ParamDescriptor& s);
-
-// C2FieldSupportedValuesQuery -> FieldSupportedValuesQuery
-Status objcpy(
- FieldSupportedValuesQuery* d,
- const C2FieldSupportedValuesQuery& s);
-
-// FieldSupportedValuesQuery -> C2FieldSupportedValuesQuery
-c2_status_t objcpy(
- C2FieldSupportedValuesQuery* d,
- const FieldSupportedValuesQuery& s);
-
-// C2FieldSupportedValuesQuery -> FieldSupportedValuesQueryResult
-Status objcpy(
- FieldSupportedValuesQueryResult* d,
- const C2FieldSupportedValuesQuery& s);
-
-// FieldSupportedValuesQuery, FieldSupportedValuesQueryResult -> C2FieldSupportedValuesQuery
-c2_status_t objcpy(
- C2FieldSupportedValuesQuery* d,
- const FieldSupportedValuesQuery& sq,
- const FieldSupportedValuesQueryResult& sr);
-
-// C2Component::Traits -> ComponentTraits
-Status objcpy(
- IComponentStore::ComponentTraits* d,
- const C2Component::Traits& s);
-
-// ComponentTraits -> C2Component::Traits, std::unique_ptr<std::vector<std::string>>
-// Note: The output d is only valid as long as aliasesBuffer remains alive.
-c2_status_t objcpy(
- C2Component::Traits* d,
- std::unique_ptr<std::vector<std::string>>* aliasesBuffer,
- const IComponentStore::ComponentTraits& s);
-
-// C2StructDescriptor -> StructDescriptor
-Status objcpy(
- StructDescriptor* d,
- const C2StructDescriptor& s);
-
-// StructDescriptor -> C2StructDescriptor
-c2_status_t objcpy(
- std::unique_ptr<C2StructDescriptor>* d,
- const StructDescriptor& s);
-
-// Abstract class to be used in
-// objcpy(std::list<std::unique_ptr<C2Work>> -> WorkBundle).
-struct BufferPoolSender {
- typedef ::android::hardware::media::bufferpool::V1_0::
- ResultStatus ResultStatus;
- typedef ::android::hardware::media::bufferpool::V1_0::
- BufferStatusMessage BufferStatusMessage;
- typedef ::android::hardware::media::bufferpool::
- BufferPoolData BufferPoolData;
-
- /**
- * Send bpData and return BufferStatusMessage that can be supplied to
- * IClientManager::receive() in the receiving process.
- *
- * This function will be called from within the function
- * objcpy(std::list<std::unique_ptr<C2Work>> -> WorkBundle).
- *
- * \param[in] bpData BufferPoolData identifying the buffer to send.
- * \param[out] bpMessage BufferStatusMessage of the transaction. Information
- * inside \p bpMessage should be passed to the receiving process by some
- * other means so it can call receive() properly.
- * \return ResultStatus value that determines the success of the operation.
- * (See the possible values of ResultStatus in
- * hardware/interfaces/media/bufferpool/1.0/types.hal.)
- */
- virtual ResultStatus send(
- const std::shared_ptr<BufferPoolData>& bpData,
- BufferStatusMessage* bpMessage) = 0;
-
- virtual ~BufferPoolSender() = default;
-};
-
-// Default implementation of BufferPoolSender.
-//
-// To use DefaultBufferPoolSender, the IClientManager instance of the receiving
-// process must be set before send() can operate. DefaultBufferPoolSender will
-// hold a strong reference to the IClientManager instance and use it to call
-// IClientManager::registerSender() to establish the bufferpool connection when
-// send() is called.
-struct DefaultBufferPoolSender : BufferPoolSender {
- typedef ::android::hardware::media::bufferpool::V1_0::implementation::
- ClientManager ClientManager;
- typedef ::android::hardware::media::bufferpool::V1_0::
- IClientManager IClientManager;
-
- // Set the IClientManager instance of the receiving process and the refresh
- // interval for the connection. The default interval is 4.5 seconds, which
- // is slightly shorter than the amount of time the bufferpool will keep an
- // inactive connection for.
- DefaultBufferPoolSender(
- const sp<IClientManager>& receiverManager = nullptr,
- std::chrono::steady_clock::duration refreshInterval = 4500ms);
-
- // Set the IClientManager instance of the receiving process and the refresh
- // interval for the connection. The default interval is 4.5 seconds, which
- // is slightly shorter than the amount of time the bufferpool will keep an
- // inactive connection for.
- void setReceiver(
- const sp<IClientManager>& receiverManager,
- std::chrono::steady_clock::duration refreshInterval = 4500ms);
-
- // Implementation of BufferPoolSender::send(). send() will establish a
- // bufferpool connection if needed, then send the bufferpool data over to
- // the receiving process.
- virtual ResultStatus send(
- const std::shared_ptr<BufferPoolData>& bpData,
- BufferStatusMessage* bpMessage) override;
-
-private:
- std::mutex mMutex;
- sp<ClientManager> mSenderManager;
- sp<IClientManager> mReceiverManager;
- int64_t mReceiverConnectionId;
- int64_t mSourceConnectionId;
- std::chrono::steady_clock::time_point mLastSent;
- std::chrono::steady_clock::duration mRefreshInterval;
-};
-
-// std::list<std::unique_ptr<C2Work>> -> WorkBundle
-// Note: If bufferpool will be used, bpSender must not be null.
-Status objcpy(
- WorkBundle* d,
- const std::list<std::unique_ptr<C2Work>>& s,
- BufferPoolSender* bpSender = nullptr);
-
-// WorkBundle -> std::list<std::unique_ptr<C2Work>>
-c2_status_t objcpy(
- std::list<std::unique_ptr<C2Work>>* d,
- const WorkBundle& s);
-
-/**
- * Parses a params blob and returns C2Param pointers to its params.
- * \param[out] params target vector of C2Param pointers
- * \param[in] blob parameter blob to parse
- * \retval C2_OK if the full blob was parsed
- * \retval C2_BAD_VALUE otherwise
- */
-c2_status_t parseParamsBlob(
- std::vector<C2Param*> *params,
- const hidl_vec<uint8_t> &blob);
-
-/**
- * Concatenates a list of C2Params into a params blob.
- * \param[out] blob target blob
- * \param[in] params parameters to concatenate
- * \retval C2_OK if the blob was successfully created
- * \retval C2_BAD_VALUE if the blob was not successful (this only happens if the parameters were
- * not const)
- */
-Status createParamsBlob(
- hidl_vec<uint8_t> *blob,
- const std::vector<C2Param*> ¶ms);
-Status createParamsBlob(
- hidl_vec<uint8_t> *blob,
- const std::vector<std::unique_ptr<C2Param>> ¶ms);
-Status createParamsBlob(
- hidl_vec<uint8_t> *blob,
- const std::vector<std::shared_ptr<const C2Info>> ¶ms);
-Status createParamsBlob(
- hidl_vec<uint8_t> *blob,
- const std::vector<std::unique_ptr<C2Tuning>> ¶ms);
-
-/**
- * Parses a params blob and create a vector of C2Params whose members are copies
- * of the params in the blob.
- * \param[out] params the resulting vector
- * \param[in] blob parameter blob to parse
- * \retval C2_OK if the full blob was parsed and params was constructed
- * \retval C2_BAD_VALUE otherwise
- */
-c2_status_t copyParamsFromBlob(
- std::vector<std::unique_ptr<C2Param>>* params,
- Params blob);
-
-/**
- * Parses a params blob and applies updates to params
- * \param[in,out] params params to be updated
- * \param[in] blob parameter blob containing updates
- * \retval C2_OK if the full blob was parsed and params was updated
- * \retval C2_BAD_VALUE otherwise
- */
-c2_status_t updateParamsFromBlob(
- const std::vector<C2Param*>& params,
- const Params& blob);
-
-/**
- * Converts a BufferPool status value to c2_status_t.
- * \param BufferPool status
- * \return Corresponding c2_status_t
- */
-c2_status_t toC2Status(::android::hardware::media::bufferpool::V1_0::
- ResultStatus rs);
-
-// BufferQueue-Based Block Operations
-// ==================================
-
-// Create a GraphicBuffer object from a graphic block and attach it to an
-// IGraphicBufferProducer.
-status_t attachToBufferQueue(const C2ConstGraphicBlock& block,
- const sp<IGraphicBufferProducer>& igbp,
- uint32_t generation,
- int32_t* bqSlot);
-
-// Return false if block does not come from a bufferqueue-based blockpool.
-// Otherwise, extract generation, bqId and bqSlot and return true.
-bool getBufferQueueAssignment(const C2ConstGraphicBlock& block,
- uint32_t* generation,
- uint64_t* bqId,
- int32_t* bqSlot);
-
-// Disassociate the given block with its designated bufferqueue so that
-// cancelBuffer() will not be called when the block is destroyed. If the block
-// does not have a designated bufferqueue, the function returns false.
-// Otherwise, it returns true.
-//
-// Note: This function should be called after attachBuffer() or queueBuffer() is
-// called manually.
-bool yieldBufferQueueBlock(const C2ConstGraphicBlock& block);
-
-// Call yieldBufferQueueBlock() on blocks in the given workList. processInput
-// determines whether input blocks are yielded. processOutput works similarly on
-// output blocks. (The default value of processInput is false while the default
-// value of processOutput is true. This implies that in most cases, only output
-// buffers contain bufferqueue-based blocks.)
-//
-// Note: This function should be called after WorkBundle has been successfully
-// sent over the Treble boundary to another process.
-void yieldBufferQueueBlocks(const std::list<std::unique_ptr<C2Work>>& workList,
- bool processInput = false,
- bool processOutput = true);
-
-// Assign the given block to a bufferqueue so that when the block is destroyed,
-// cancelBuffer() will be called.
-//
-// If the block does not come from a bufferqueue-based blockpool, this function
-// returns false.
-//
-// If the block already has a bufferqueue assignment that matches the given one,
-// the function returns true.
-//
-// If the block already has a bufferqueue assignment that does not match the
-// given one, the block will be reassigned to the given bufferqueue. This
-// will call attachBuffer() on the given igbp. The function then returns true on
-// success or false on any failure during the operation.
-//
-// Note: This function should be called after detachBuffer() or dequeueBuffer()
-// is called manually.
-bool holdBufferQueueBlock(const C2ConstGraphicBlock& block,
- const sp<IGraphicBufferProducer>& igbp,
- uint64_t bqId,
- uint32_t generation);
-
-// Call holdBufferQueueBlock() on input or output blocks in the given workList.
-// Since the bufferqueue assignment for input and output buffers can be
-// different, this function takes forInput to determine whether the given
-// bufferqueue is for input buffers or output buffers. (The default value of
-// forInput is false.)
-//
-// In the (rare) case that both input and output buffers are bufferqueue-based,
-// this function must be called twice, once for the input buffers and once for
-// the output buffers.
-//
-// Note: This function should be called after WorkBundle has been received from
-// another process.
-void holdBufferQueueBlocks(const std::list<std::unique_ptr<C2Work>>& workList,
- const sp<IGraphicBufferProducer>& igbp,
- uint64_t bqId,
- uint32_t generation,
- bool forInput = false);
-
-} // namespace utils
-} // namespace V1_0
-} // namespace c2
-} // namespace media
-} // namespace google
-} // namespace hardware
-
-#endif // HARDWARE_GOOGLE_MEDIA_C2_V1_0_UTILS_TYPES_H
diff --git a/codec2/hidl/1.0/utils/types.cpp b/codec2/hidl/1.0/utils/types.cpp
deleted file mode 100644
index 10a7cef..0000000
--- a/codec2/hidl/1.0/utils/types.cpp
+++ /dev/null
@@ -1,1803 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "Codec2-types"
-#include <log/log.h>
-
-#include <codec2/hidl/1.0/types.h>
-
-#include <gui/bufferqueue/1.0/WGraphicBufferProducer.h>
-#include <C2AllocatorIon.h>
-#include <C2AllocatorGralloc.h>
-#include <C2BlockInternal.h>
-#include <C2Buffer.h>
-#include <C2Component.h>
-#include <C2Param.h>
-#include <C2ParamInternal.h>
-#include <C2PlatformSupport.h>
-#include <C2Work.h>
-#include <util/C2ParamUtils.h>
-
-#include <algorithm>
-#include <functional>
-#include <unordered_map>
-
-#include <media/stagefright/foundation/AUtils.h>
-
-namespace hardware {
-namespace google {
-namespace media {
-namespace c2 {
-namespace V1_0 {
-namespace utils {
-
-using namespace ::android;
-using ::android::hardware::Return;
-using ::android::hardware::media::bufferpool::BufferPoolData;
-using ::android::hardware::media::bufferpool::V1_0::BufferStatusMessage;
-using ::android::hardware::media::bufferpool::V1_0::ResultStatus;
-using ::android::hardware::media::bufferpool::V1_0::implementation::
- ClientManager;
-using ::android::hardware::media::bufferpool::V1_0::implementation::
- TransactionId;
-using ::android::TWGraphicBufferProducer;
-
-namespace /* unnamed */ {
-
-template <typename Common, typename DstVector, typename SrcVector>
-void copyVector(DstVector* d, const SrcVector& s) {
- static_assert(sizeof(Common) == sizeof(decltype((*d)[0])),
- "DstVector's component size does not match Common");
- static_assert(sizeof(Common) == sizeof(decltype(s[0])),
- "SrcVector's component size does not match Common");
- d->resize(s.size());
- std::copy(
- reinterpret_cast<const Common*>(&s[0]),
- reinterpret_cast<const Common*>(&s[0] + s.size()),
- reinterpret_cast<Common*>(&(*d)[0]));
-}
-
-// C2ParamField -> ParamField
-void objcpy(ParamField *d, const C2ParamField &s) {
- d->index = static_cast<ParamIndex>(_C2ParamInspector::GetIndex(s));
- d->fieldId.offset = static_cast<uint32_t>(_C2ParamInspector::GetOffset(s));
- d->fieldId.size = static_cast<uint32_t>(_C2ParamInspector::GetSize(s));
-}
-
-struct C2ParamFieldBuilder : public C2ParamField {
- C2ParamFieldBuilder() : C2ParamField(
- static_cast<C2Param::Index>(static_cast<uint32_t>(0)), 0, 0) {
- }
- // ParamField -> C2ParamField
- C2ParamFieldBuilder(const ParamField& s) : C2ParamField(
- static_cast<C2Param::Index>(static_cast<uint32_t>(s.index)),
- static_cast<uint32_t>(s.fieldId.offset),
- static_cast<uint32_t>(s.fieldId.size)) {
- }
-};
-
-// C2WorkOrdinalStruct -> WorkOrdinal
-void objcpy(WorkOrdinal *d, const C2WorkOrdinalStruct &s) {
- d->frameIndex = static_cast<uint64_t>(s.frameIndex.peeku());
- d->timestampUs = static_cast<uint64_t>(s.timestamp.peeku());
- d->customOrdinal = static_cast<uint64_t>(s.customOrdinal.peeku());
-}
-
-// WorkOrdinal -> C2WorkOrdinalStruct
-void objcpy(C2WorkOrdinalStruct *d, const WorkOrdinal &s) {
- d->frameIndex = c2_cntr64_t(s.frameIndex);
- d->timestamp = c2_cntr64_t(s.timestampUs);
- d->customOrdinal = c2_cntr64_t(s.customOrdinal);
-}
-
-// C2FieldSupportedValues::range's type -> FieldSupportedValues::Range
-void objcpy(
- FieldSupportedValues::Range* d,
- const decltype(C2FieldSupportedValues::range)& s) {
- d->min = static_cast<PrimitiveValue>(s.min.u64);
- d->max = static_cast<PrimitiveValue>(s.max.u64);
- d->step = static_cast<PrimitiveValue>(s.step.u64);
- d->num = static_cast<PrimitiveValue>(s.num.u64);
- d->denom = static_cast<PrimitiveValue>(s.denom.u64);
-}
-
-// C2FieldSupportedValues -> FieldSupportedValues
-Status objcpy(FieldSupportedValues *d, const C2FieldSupportedValues &s) {
- d->typeOther = static_cast<int32_t>(s.type);
- switch (s.type) {
- case C2FieldSupportedValues::EMPTY:
- d->type = FieldSupportedValues::Type::EMPTY;
- d->values.resize(0);
- return Status::OK;
- case C2FieldSupportedValues::RANGE:
- d->type = FieldSupportedValues::Type::RANGE;
- objcpy(&d->range, s.range);
- d->values.resize(0);
- return Status::OK;
- default:
- switch (s.type) {
- case C2FieldSupportedValues::VALUES:
- d->type = FieldSupportedValues::Type::VALUES;
- break;
- case C2FieldSupportedValues::FLAGS:
- d->type = FieldSupportedValues::Type::FLAGS;
- break;
- default:
- d->type = FieldSupportedValues::Type::OTHER;
- // Copy all fields in this case
- objcpy(&d->range, s.range);
- }
- d->values.resize(s.values.size());
- copyVector<uint64_t>(&d->values, s.values);
- return Status::OK;
- }
-}
-
-// FieldSupportedValues::Range -> C2FieldSupportedValues::range's type
-void objcpy(
- decltype(C2FieldSupportedValues::range)* d,
- const FieldSupportedValues::Range& s) {
- d->min.u64 = static_cast<uint64_t>(s.min);
- d->max.u64 = static_cast<uint64_t>(s.max);
- d->step.u64 = static_cast<uint64_t>(s.step);
- d->num.u64 = static_cast<uint64_t>(s.num);
- d->denom.u64 = static_cast<uint64_t>(s.denom);
-}
-
-// FieldSupportedValues -> C2FieldSupportedValues
-c2_status_t objcpy(C2FieldSupportedValues *d, const FieldSupportedValues &s) {
- switch (s.type) {
- case FieldSupportedValues::Type::EMPTY:
- d->type = C2FieldSupportedValues::EMPTY;
- return C2_OK;
- case FieldSupportedValues::Type::RANGE:
- d->type = C2FieldSupportedValues::RANGE;
- objcpy(&d->range, s.range);
- d->values.resize(0);
- return C2_OK;
- default:
- switch (s.type) {
- case FieldSupportedValues::Type::VALUES:
- d->type = C2FieldSupportedValues::VALUES;
- break;
- case FieldSupportedValues::Type::FLAGS:
- d->type = C2FieldSupportedValues::FLAGS;
- break;
- default:
- d->type = static_cast<C2FieldSupportedValues::type_t>(s.typeOther);
- // Copy all fields in this case
- objcpy(&d->range, s.range);
- }
- copyVector<uint64_t>(&d->values, s.values);
- return C2_OK;
- }
-}
-
-} // unnamed namespace
-
-// C2FieldSupportedValuesQuery -> FieldSupportedValuesQuery
-Status objcpy(
- FieldSupportedValuesQuery* d,
- const C2FieldSupportedValuesQuery& s) {
- objcpy(&d->field, s.field());
- switch (s.type()) {
- case C2FieldSupportedValuesQuery::POSSIBLE:
- d->type = FieldSupportedValuesQuery::Type::POSSIBLE;
- break;
- case C2FieldSupportedValuesQuery::CURRENT:
- d->type = FieldSupportedValuesQuery::Type::CURRENT;
- break;
- default:
- ALOGE("Unknown type of C2FieldSupportedValuesQuery: %u",
- static_cast<unsigned>(s.type()));
- return Status::BAD_VALUE;
- }
- return Status::OK;
-}
-
-// FieldSupportedValuesQuery -> C2FieldSupportedValuesQuery
-c2_status_t objcpy(
- C2FieldSupportedValuesQuery* d,
- const FieldSupportedValuesQuery& s) {
- C2FieldSupportedValuesQuery::type_t dType;
- switch (s.type) {
- case FieldSupportedValuesQuery::Type::POSSIBLE:
- dType = C2FieldSupportedValuesQuery::POSSIBLE;
- break;
- case FieldSupportedValuesQuery::Type::CURRENT:
- dType = C2FieldSupportedValuesQuery::CURRENT;
- break;
- default:
- ALOGE("Unknown type of FieldSupportedValuesQuery: %u",
- static_cast<unsigned>(s.type));
- return C2_BAD_VALUE;
- }
- *d = C2FieldSupportedValuesQuery(C2ParamFieldBuilder(s.field), dType);
- return C2_OK;
-}
-
-// C2FieldSupportedValuesQuery -> FieldSupportedValuesQueryResult
-Status objcpy(
- FieldSupportedValuesQueryResult* d,
- const C2FieldSupportedValuesQuery& s) {
- d->status = static_cast<Status>(s.status);
- return objcpy(&d->values, s.values);
-}
-
-// FieldSupportedValuesQuery, FieldSupportedValuesQueryResult ->
-// C2FieldSupportedValuesQuery
-c2_status_t objcpy(
- C2FieldSupportedValuesQuery* d,
- const FieldSupportedValuesQuery& sq,
- const FieldSupportedValuesQueryResult& sr) {
- c2_status_t status = objcpy(d, sq);
- if (status != C2_OK) {
- return status;
- }
- d->status = static_cast<c2_status_t>(sr.status);
- return objcpy(&d->values, sr.values);
-}
-
-// C2Component::Traits -> IComponentStore::ComponentTraits
-Status objcpy(
- IComponentStore::ComponentTraits *d,
- const C2Component::Traits &s) {
- d->name = s.name;
-
- switch (s.domain) {
- case C2Component::DOMAIN_VIDEO:
- d->domain = IComponentStore::ComponentTraits::Domain::VIDEO;
- break;
- case C2Component::DOMAIN_AUDIO:
- d->domain = IComponentStore::ComponentTraits::Domain::AUDIO;
- break;
- default:
- d->domain = IComponentStore::ComponentTraits::Domain::OTHER;
- }
- d->domainOther = static_cast<uint32_t>(s.domain);
-
- switch (s.kind) {
- case C2Component::KIND_DECODER:
- d->kind = IComponentStore::ComponentTraits::Kind::DECODER;
- break;
- case C2Component::KIND_ENCODER:
- d->kind = IComponentStore::ComponentTraits::Kind::ENCODER;
- break;
- default:
- d->kind = IComponentStore::ComponentTraits::Kind::OTHER;
- }
- d->kindOther = static_cast<uint32_t>(s.kind);
-
- d->rank = static_cast<uint32_t>(s.rank);
-
- d->mediaType = s.mediaType;
-
- d->aliases.resize(s.aliases.size());
- for (size_t ix = s.aliases.size(); ix > 0; ) {
- --ix;
- d->aliases[ix] = s.aliases[ix];
- }
- return Status::OK;
-}
-
-// ComponentTraits -> C2Component::Traits, std::unique_ptr<std::vector<std::string>>
-c2_status_t objcpy(
- C2Component::Traits* d,
- std::unique_ptr<std::vector<std::string>>* aliasesBuffer,
- const IComponentStore::ComponentTraits& s) {
- d->name = s.name.c_str();
-
- switch (s.domain) {
- case IComponentStore::ComponentTraits::Domain::VIDEO:
- d->domain = C2Component::DOMAIN_VIDEO;
- break;
- case IComponentStore::ComponentTraits::Domain::AUDIO:
- d->domain = C2Component::DOMAIN_AUDIO;
- break;
- default:
- d->domain = static_cast<C2Component::domain_t>(s.domainOther);
- }
-
- switch (s.kind) {
- case IComponentStore::ComponentTraits::Kind::DECODER:
- d->kind = C2Component::KIND_DECODER;
- break;
- case IComponentStore::ComponentTraits::Kind::ENCODER:
- d->kind = C2Component::KIND_ENCODER;
- break;
- default:
- d->kind = static_cast<C2Component::kind_t>(s.kindOther);
- }
-
- d->rank = static_cast<C2Component::rank_t>(s.rank);
- d->mediaType = s.mediaType.c_str();
-
- // aliasesBuffer must not be resized after this.
- *aliasesBuffer = std::make_unique<std::vector<std::string>>(
- s.aliases.size());
- (*aliasesBuffer)->resize(s.aliases.size());
- std::vector<C2StringLiteral> dAliases(s.aliases.size());
- for (size_t i = 0; i < s.aliases.size(); ++i) {
- (**aliasesBuffer)[i] = s.aliases[i].c_str();
- d->aliases[i] = (**aliasesBuffer)[i].c_str();
- }
- return C2_OK;
-}
-
-namespace /* unnamed */ {
-
-// C2ParamFieldValues -> ParamFieldValues
-Status objcpy(ParamFieldValues *d, const C2ParamFieldValues &s) {
- objcpy(&d->paramOrField, s.paramOrField);
- if (s.values) {
- d->values.resize(1);
- return objcpy(&d->values[0], *s.values);
- }
- d->values.resize(0);
- return Status::OK;
-}
-
-// ParamFieldValues -> C2ParamFieldValues
-c2_status_t objcpy(C2ParamFieldValues *d, const ParamFieldValues &s) {
- d->paramOrField = C2ParamFieldBuilder(s.paramOrField);
- if (s.values.size() == 1) {
- d->values = std::make_unique<C2FieldSupportedValues>();
- return objcpy(d->values.get(), s.values[0]);
- } else if (s.values.size() == 0) {
- d->values.reset();
- return C2_OK;
- }
- ALOGE("Multiple FieldSupportedValues objects. "
- "(Only one is allowed.)");
- return C2_BAD_VALUE;
-}
-
-} // unnamed namespace
-
-// C2SettingResult -> SettingResult
-Status objcpy(SettingResult *d, const C2SettingResult &s) {
- d->failureOther = static_cast<uint32_t>(s.failure);
- switch (s.failure) {
- case C2SettingResult::READ_ONLY:
- d->failure = SettingResult::Failure::READ_ONLY;
- break;
- case C2SettingResult::MISMATCH:
- d->failure = SettingResult::Failure::MISMATCH;
- break;
- case C2SettingResult::BAD_VALUE:
- d->failure = SettingResult::Failure::BAD_VALUE;
- break;
- case C2SettingResult::BAD_TYPE:
- d->failure = SettingResult::Failure::BAD_TYPE;
- break;
- case C2SettingResult::BAD_PORT:
- d->failure = SettingResult::Failure::BAD_PORT;
- break;
- case C2SettingResult::BAD_INDEX:
- d->failure = SettingResult::Failure::BAD_INDEX;
- break;
- case C2SettingResult::CONFLICT:
- d->failure = SettingResult::Failure::CONFLICT;
- break;
- case C2SettingResult::UNSUPPORTED:
- d->failure = SettingResult::Failure::UNSUPPORTED;
- break;
- case C2SettingResult::INFO_CONFLICT:
- d->failure = SettingResult::Failure::INFO_CONFLICT;
- break;
- default:
- d->failure = SettingResult::Failure::OTHER;
- }
- Status status = objcpy(&d->field, s.field);
- if (status != Status::OK) {
- return status;
- }
- d->conflicts.resize(s.conflicts.size());
- size_t i = 0;
- for (const C2ParamFieldValues& sConflict : s.conflicts) {
- ParamFieldValues &dConflict = d->conflicts[i++];
- status = objcpy(&dConflict, sConflict);
- if (status != Status::OK) {
- return status;
- }
- }
- return Status::OK;
-}
-
-// SettingResult -> std::unique_ptr<C2SettingResult>
-c2_status_t objcpy(std::unique_ptr<C2SettingResult> *d, const SettingResult &s) {
- *d = std::unique_ptr<C2SettingResult>(new C2SettingResult {
- .field = C2ParamFieldValues(C2ParamFieldBuilder()) });
- if (!*d) {
- return C2_NO_MEMORY;
- }
-
- // failure
- switch (s.failure) {
- case SettingResult::Failure::READ_ONLY:
- (*d)->failure = C2SettingResult::READ_ONLY;
- break;
- case SettingResult::Failure::MISMATCH:
- (*d)->failure = C2SettingResult::MISMATCH;
- break;
- case SettingResult::Failure::BAD_VALUE:
- (*d)->failure = C2SettingResult::BAD_VALUE;
- break;
- case SettingResult::Failure::BAD_TYPE:
- (*d)->failure = C2SettingResult::BAD_TYPE;
- break;
- case SettingResult::Failure::BAD_PORT:
- (*d)->failure = C2SettingResult::BAD_PORT;
- break;
- case SettingResult::Failure::BAD_INDEX:
- (*d)->failure = C2SettingResult::BAD_INDEX;
- break;
- case SettingResult::Failure::CONFLICT:
- (*d)->failure = C2SettingResult::CONFLICT;
- break;
- case SettingResult::Failure::UNSUPPORTED:
- (*d)->failure = C2SettingResult::UNSUPPORTED;
- break;
- case SettingResult::Failure::INFO_CONFLICT:
- (*d)->failure = C2SettingResult::INFO_CONFLICT;
- break;
- default:
- (*d)->failure = static_cast<C2SettingResult::Failure>(s.failureOther);
- }
-
- // field
- c2_status_t status = objcpy(&(*d)->field, s.field);
- if (status != C2_OK) {
- return status;
- }
-
- // conflicts
- (*d)->conflicts.clear();
- (*d)->conflicts.reserve(s.conflicts.size());
- for (const ParamFieldValues& sConflict : s.conflicts) {
- (*d)->conflicts.emplace_back(
- C2ParamFieldValues{ C2ParamFieldBuilder(), nullptr });
- status = objcpy(&(*d)->conflicts.back(), sConflict);
- if (status != C2_OK) {
- return status;
- }
- }
- return C2_OK;
-}
-
-// C2ParamDescriptor -> ParamDescriptor
-Status objcpy(ParamDescriptor *d, const C2ParamDescriptor &s) {
- d->index = static_cast<ParamIndex>(s.index());
- d->attrib = static_cast<hidl_bitfield<ParamDescriptor::Attrib>>(
- _C2ParamInspector::GetAttrib(s));
- d->name = s.name();
- copyVector<uint32_t>(&d->dependencies, s.dependencies());
- return Status::OK;
-}
-
-// ParamDescriptor -> C2ParamDescriptor
-c2_status_t objcpy(std::shared_ptr<C2ParamDescriptor> *d, const ParamDescriptor &s) {
- std::vector<C2Param::Index> dDependencies;
- dDependencies.reserve(s.dependencies.size());
- for (const ParamIndex& sDependency : s.dependencies) {
- dDependencies.emplace_back(static_cast<uint32_t>(sDependency));
- }
- *d = std::make_shared<C2ParamDescriptor>(
- C2Param::Index(static_cast<uint32_t>(s.index)),
- static_cast<C2ParamDescriptor::attrib_t>(s.attrib),
- C2String(s.name.c_str()),
- std::move(dDependencies));
- return C2_OK;
-}
-
-// C2StructDescriptor -> StructDescriptor
-Status objcpy(StructDescriptor *d, const C2StructDescriptor &s) {
- d->type = static_cast<ParamIndex>(s.coreIndex().coreIndex());
- d->fields.resize(s.numFields());
- size_t i = 0;
- for (const auto& sField : s) {
- FieldDescriptor& dField = d->fields[i++];
- dField.fieldId.offset = static_cast<uint32_t>(
- _C2ParamInspector::GetOffset(sField));
- dField.fieldId.size = static_cast<uint32_t>(
- _C2ParamInspector::GetSize(sField));
- dField.type = static_cast<hidl_bitfield<FieldDescriptor::Type>>(
- sField.type());
- dField.length = static_cast<uint32_t>(sField.extent());
- dField.name = static_cast<hidl_string>(sField.name());
- const auto& sNamedValues = sField.namedValues();
- dField.namedValues.resize(sNamedValues.size());
- size_t j = 0;
- for (const auto& sNamedValue : sNamedValues) {
- FieldDescriptor::NamedValue& dNamedValue = dField.namedValues[j++];
- dNamedValue.name = static_cast<hidl_string>(sNamedValue.first);
- dNamedValue.value = static_cast<PrimitiveValue>(
- sNamedValue.second.u64);
- }
- }
- return Status::OK;
-}
-
-// StructDescriptor -> C2StructDescriptor
-c2_status_t objcpy(std::unique_ptr<C2StructDescriptor> *d, const StructDescriptor &s) {
- C2Param::CoreIndex dIndex = C2Param::CoreIndex(static_cast<uint32_t>(s.type));
- std::vector<C2FieldDescriptor> dFields;
- dFields.reserve(s.fields.size());
- for (const auto &sField : s.fields) {
- C2FieldDescriptor dField = {
- static_cast<uint32_t>(sField.type),
- sField.length,
- sField.name,
- sField.fieldId.offset,
- sField.fieldId.size };
- C2FieldDescriptor::NamedValuesType namedValues;
- namedValues.reserve(sField.namedValues.size());
- for (const auto& sNamedValue : sField.namedValues) {
- namedValues.emplace_back(
- sNamedValue.name,
- C2Value::Primitive(static_cast<uint64_t>(sNamedValue.value)));
- }
- _C2ParamInspector::AddNamedValues(dField, std::move(namedValues));
- dFields.emplace_back(dField);
- }
- *d = std::make_unique<C2StructDescriptor>(
- _C2ParamInspector::CreateStructDescriptor(dIndex, std::move(dFields)));
- return C2_OK;
-}
-
-namespace /* unnamed */ {
-
-// Find or add a hidl BaseBlock object from a given C2Handle* to a list and an
-// associated map.
-// Note: The handle is not cloned.
-Status _addBaseBlock(
- uint32_t* index,
- const C2Handle* handle,
- std::list<BaseBlock>* baseBlocks,
- std::map<const void*, uint32_t>* baseBlockIndices) {
- if (!handle) {
- ALOGE("addBaseBlock called on a null C2Handle.");
- return Status::BAD_VALUE;
- }
- auto it = baseBlockIndices->find(handle);
- if (it != baseBlockIndices->end()) {
- *index = it->second;
- } else {
- *index = baseBlocks->size();
- baseBlockIndices->emplace(handle, *index);
- baseBlocks->emplace_back();
-
- BaseBlock &dBaseBlock = baseBlocks->back();
- dBaseBlock.type = BaseBlock::Type::NATIVE;
- // This does not clone the handle.
- dBaseBlock.nativeBlock =
- reinterpret_cast<const native_handle_t*>(handle);
-
- }
- return Status::OK;
-}
-
-// Find or add a hidl BaseBlock object from a given BufferPoolData to a list and
-// an associated map.
-Status _addBaseBlock(
- uint32_t* index,
- const std::shared_ptr<BufferPoolData> bpData,
- BufferPoolSender* bufferPoolSender,
- std::list<BaseBlock>* baseBlocks,
- std::map<const void*, uint32_t>* baseBlockIndices) {
- if (!bpData) {
- ALOGE("addBaseBlock called on a null BufferPoolData.");
- return Status::BAD_VALUE;
- }
- auto it = baseBlockIndices->find(bpData.get());
- if (it != baseBlockIndices->end()) {
- *index = it->second;
- } else {
- *index = baseBlocks->size();
- baseBlockIndices->emplace(bpData.get(), *index);
- baseBlocks->emplace_back();
-
- BaseBlock &dBaseBlock = baseBlocks->back();
- dBaseBlock.type = BaseBlock::Type::POOLED;
-
- if (bufferPoolSender) {
- ResultStatus bpStatus = bufferPoolSender->send(
- bpData,
- &dBaseBlock.pooledBlock);
-
- if (bpStatus != ResultStatus::OK) {
- ALOGE("Failed to send buffer with BufferPool. Error: %d.",
- static_cast<int>(bpStatus));
- return Status::BAD_VALUE;
- }
- }
- }
- return Status::OK;
-}
-
-Status addBaseBlock(
- uint32_t* index,
- const C2Handle* handle,
- const std::shared_ptr<const _C2BlockPoolData>& blockPoolData,
- BufferPoolSender* bufferPoolSender,
- std::list<BaseBlock>* baseBlocks,
- std::map<const void*, uint32_t>* baseBlockIndices) {
- if (!blockPoolData) {
- // No BufferPoolData ==> NATIVE block.
- return _addBaseBlock(
- index, handle,
- baseBlocks, baseBlockIndices);
- }
- switch (blockPoolData->getType()) {
- case _C2BlockPoolData::TYPE_BUFFERPOOL: {
- // BufferPoolData
- std::shared_ptr<BufferPoolData> bpData;
- if (!_C2BlockFactory::GetBufferPoolData(blockPoolData, &bpData)
- || !bpData) {
- ALOGE("BufferPoolData unavailable in a block.");
- return Status::BAD_VALUE;
- }
- return _addBaseBlock(
- index, bpData,
- bufferPoolSender, baseBlocks, baseBlockIndices);
- }
- case _C2BlockPoolData::TYPE_BUFFERQUEUE:
- // Do the same thing as a NATIVE block.
- return _addBaseBlock(
- index, handle,
- baseBlocks, baseBlockIndices);
- default:
- ALOGE("Unknown C2BlockPoolData type.");
- return Status::BAD_VALUE;
- }
-}
-
-// C2Fence -> hidl_handle
-// Note: File descriptors are not duplicated. The original file descriptor must
-// not be closed before the transaction is complete.
-Status objcpy(hidl_handle* d, const C2Fence& s) {
- (void)s; // TODO: implement s.fd()
- int fenceFd = -1;
- d->setTo(nullptr);
- if (fenceFd >= 0) {
- native_handle_t *handle = native_handle_create(1, 0);
- if (!handle) {
- return Status::NO_MEMORY;
- }
- handle->data[0] = fenceFd;
- d->setTo(handle, true /* owns */);
- }
- return Status::OK;
-}
-
-// C2ConstLinearBlock -> Block
-// Note: Native handles are not duplicated. The original handles must not be
-// closed before the transaction is complete.
-Status objcpy(Block* d, const C2ConstLinearBlock& s,
- BufferPoolSender* bufferPoolSender,
- std::list<BaseBlock>* baseBlocks,
- std::map<const void*, uint32_t>* baseBlockIndices) {
- std::shared_ptr<const _C2BlockPoolData> bpData =
- _C2BlockFactory::GetLinearBlockPoolData(s);
- Status status = addBaseBlock(&d->index, s.handle(), bpData,
- bufferPoolSender, baseBlocks, baseBlockIndices);
- if (status != Status::OK) {
- return status;
- }
-
- // Create the metadata.
- C2Hidl_RangeInfo dRangeInfo;
- dRangeInfo.offset = static_cast<uint32_t>(s.offset());
- dRangeInfo.length = static_cast<uint32_t>(s.size());
- status = createParamsBlob(&d->meta,
- std::vector<C2Param*>{ &dRangeInfo });
- if (status != Status::OK) {
- return Status::BAD_VALUE;
- }
-
- // Copy the fence
- return objcpy(&d->fence, s.fence());
-}
-
-// C2ConstGraphicBlock -> Block
-// Note: Native handles are not duplicated. The original handles must not be
-// closed before the transaction is complete.
-Status objcpy(Block* d, const C2ConstGraphicBlock& s,
- BufferPoolSender* bufferPoolSender,
- std::list<BaseBlock>* baseBlocks,
- std::map<const void*, uint32_t>* baseBlockIndices) {
- std::shared_ptr<const _C2BlockPoolData> bpData =
- _C2BlockFactory::GetGraphicBlockPoolData(s);
- Status status = addBaseBlock(&d->index, s.handle(), bpData,
- bufferPoolSender, baseBlocks, baseBlockIndices);
-
- // Create the metadata.
- C2Hidl_RectInfo dRectInfo;
- C2Rect sRect = s.crop();
- dRectInfo.left = static_cast<uint32_t>(sRect.left);
- dRectInfo.top = static_cast<uint32_t>(sRect.top);
- dRectInfo.width = static_cast<uint32_t>(sRect.width);
- dRectInfo.height = static_cast<uint32_t>(sRect.height);
- status = createParamsBlob(&d->meta,
- std::vector<C2Param*>{ &dRectInfo });
- if (status != Status::OK) {
- return Status::BAD_VALUE;
- }
-
- // Copy the fence
- return objcpy(&d->fence, s.fence());
-}
-
-// C2BufferData -> Buffer
-// This function only fills in d->blocks.
-Status objcpy(Buffer* d, const C2BufferData& s,
- BufferPoolSender* bufferPoolSender,
- std::list<BaseBlock>* baseBlocks,
- std::map<const void*, uint32_t>* baseBlockIndices) {
- Status status;
- d->blocks.resize(
- s.linearBlocks().size() +
- s.graphicBlocks().size());
- size_t i = 0;
- for (const C2ConstLinearBlock& linearBlock : s.linearBlocks()) {
- Block& dBlock = d->blocks[i++];
- status = objcpy(
- &dBlock, linearBlock,
- bufferPoolSender, baseBlocks, baseBlockIndices);
- if (status != Status::OK) {
- return status;
- }
- }
- for (const C2ConstGraphicBlock& graphicBlock : s.graphicBlocks()) {
- Block& dBlock = d->blocks[i++];
- status = objcpy(
- &dBlock, graphicBlock,
- bufferPoolSender, baseBlocks, baseBlockIndices);
- if (status != Status::OK) {
- return status;
- }
- }
- return Status::OK;
-}
-
-// C2Buffer -> Buffer
-Status objcpy(Buffer* d, const C2Buffer& s,
- BufferPoolSender* bufferPoolSender,
- std::list<BaseBlock>* baseBlocks,
- std::map<const void*, uint32_t>* baseBlockIndices) {
- Status status = createParamsBlob(&d->info, s.info());
- if (status != Status::OK) {
- return status;
- }
- return objcpy(d, s.data(), bufferPoolSender, baseBlocks, baseBlockIndices);
-}
-
-// C2InfoBuffer -> InfoBuffer
-Status objcpy(InfoBuffer* d, const C2InfoBuffer& s,
- BufferPoolSender* bufferPoolSender,
- std::list<BaseBlock>* baseBlocks,
- std::map<const void*, uint32_t>* baseBlockIndices) {
- // TODO: C2InfoBuffer is not implemented.
- (void)d;
- (void)s;
- (void)bufferPoolSender;
- (void)baseBlocks;
- (void)baseBlockIndices;
- return Status::OK;
- /*
- // Stub implementation that may work in the future.
- d->index = static_cast<uint32_t>(s.index());
- d->buffer.info.resize(0);
- return objcpy(&d->buffer, s.data(), baseBlocks, baseBlockIndices);
- */
-}
-
-// C2FrameData -> FrameData
-Status objcpy(FrameData* d, const C2FrameData& s,
- BufferPoolSender* bufferPoolSender,
- std::list<BaseBlock>* baseBlocks,
- std::map<const void*, uint32_t>* baseBlockIndices) {
- d->flags = static_cast<hidl_bitfield<FrameData::Flags>>(s.flags);
- objcpy(&d->ordinal, s.ordinal);
-
- Status status;
- d->buffers.resize(s.buffers.size());
- size_t i = 0;
- for (const std::shared_ptr<C2Buffer>& sBuffer : s.buffers) {
- Buffer& dBuffer = d->buffers[i++];
- if (!sBuffer) {
- // A null (pointer to) C2Buffer corresponds to a Buffer with empty
- // info and blocks.
- dBuffer.info.resize(0);
- dBuffer.blocks.resize(0);
- continue;
- }
- status = objcpy(
- &dBuffer, *sBuffer,
- bufferPoolSender, baseBlocks, baseBlockIndices);
- if (status != Status::OK) {
- return status;
- }
- }
-
- status = createParamsBlob(&d->configUpdate, s.configUpdate);
- if (status != Status::OK) {
- return status;
- }
-
- d->infoBuffers.resize(s.infoBuffers.size());
- i = 0;
- for (const std::shared_ptr<C2InfoBuffer>& sInfoBuffer : s.infoBuffers) {
- InfoBuffer& dInfoBuffer = d->infoBuffers[i++];
- if (!sInfoBuffer) {
- ALOGE("Null C2InfoBuffer");
- return Status::BAD_VALUE;
- }
- status = objcpy(&dInfoBuffer, *sInfoBuffer,
- bufferPoolSender, baseBlocks, baseBlockIndices);
- if (status != Status::OK) {
- return status;
- }
- }
-
- return status;
-}
-
-} // unnamed namespace
-
-// DefaultBufferPoolSender's implementation
-
-DefaultBufferPoolSender::DefaultBufferPoolSender(
- const sp<IClientManager>& receiverManager,
- std::chrono::steady_clock::duration refreshInterval)
- : mReceiverManager(receiverManager),
- mSourceConnectionId(0),
- mLastSent(std::chrono::steady_clock::now()),
- mRefreshInterval(refreshInterval) {
-}
-
-void DefaultBufferPoolSender::setReceiver(
- const sp<IClientManager>& receiverManager,
- std::chrono::steady_clock::duration refreshInterval) {
- std::lock_guard<std::mutex> lock(mMutex);
- if (mReceiverManager != receiverManager) {
- mReceiverManager = receiverManager;
- }
- mRefreshInterval = refreshInterval;
-}
-
-ResultStatus DefaultBufferPoolSender::send(
- const std::shared_ptr<BufferPoolData>& bpData,
- BufferStatusMessage* bpMessage) {
- if (!mReceiverManager) {
- ALOGE("No access to receiver's BufferPool.");
- return ResultStatus::NOT_FOUND;
- }
- ResultStatus rs;
- std::lock_guard<std::mutex> lock(mMutex);
- if (!mSenderManager) {
- mSenderManager = ClientManager::getInstance();
- if (!mSenderManager) {
- ALOGE("Failed to retrieve local BufferPool ClientManager.");
- return ResultStatus::CRITICAL_ERROR;
- }
- }
- int64_t connectionId = bpData->mConnectionId;
- std::chrono::steady_clock::time_point now =
- std::chrono::steady_clock::now();
- std::chrono::steady_clock::duration interval = now - mLastSent;
- if (mSourceConnectionId == 0 ||
- mSourceConnectionId != connectionId ||
- interval > mRefreshInterval) {
- // Initialize the bufferpool connection.
- mSourceConnectionId = connectionId;
- if (mSourceConnectionId == 0) {
- return ResultStatus::CRITICAL_ERROR;
- }
-
- int64_t receiverConnectionId;
- rs = mSenderManager->registerSender(mReceiverManager,
- connectionId,
- &receiverConnectionId);
- if ((rs != ResultStatus::OK) && (rs != ResultStatus::ALREADY_EXISTS)) {
- ALOGW("registerSender -- returned error: %d.",
- static_cast<int>(rs));
- return rs;
- } else {
- ALOGV("registerSender -- succeeded.");
- mReceiverConnectionId = receiverConnectionId;
- }
- }
-
- uint64_t transactionId;
- int64_t timestampUs;
- rs = mSenderManager->postSend(
- mReceiverConnectionId, bpData, &transactionId, ×tampUs);
- if (rs != ResultStatus::OK) {
- ALOGE("ClientManager::postSend -- returned error: %d.",
- static_cast<int>(rs));
- return rs;
- }
- if (!bpMessage) {
- ALOGE("Null output parameter for BufferStatusMessage.");
- return ResultStatus::CRITICAL_ERROR;
- }
- bpMessage->connectionId = mReceiverConnectionId;
- bpMessage->bufferId = bpData->mId;
- bpMessage->transactionId = transactionId;
- bpMessage->timestampUs = timestampUs;
- mLastSent = now;
- return rs;
-}
-
-// std::list<std::unique_ptr<C2Work>> -> WorkBundle
-Status objcpy(
- WorkBundle* d,
- const std::list<std::unique_ptr<C2Work>>& s,
- BufferPoolSender* bufferPoolSender) {
- Status status = Status::OK;
-
- // baseBlocks holds a list of BaseBlock objects that Blocks can refer to.
- std::list<BaseBlock> baseBlocks;
-
- // baseBlockIndices maps a raw pointer to native_handle_t or BufferPoolData
- // inside baseBlocks to the corresponding index into baseBlocks. The keys
- // (pointers) are used to identify blocks that have the same "base block" in
- // s, a list of C2Work objects. Because baseBlocks will be copied into a
- // hidl_vec eventually, the values of baseBlockIndices are zero-based
- // integer indices instead of list iterators.
- //
- // Note that the pointers can be raw because baseBlockIndices has a shorter
- // lifespan than all of base blocks.
- std::map<const void*, uint32_t> baseBlockIndices;
-
- d->works.resize(s.size());
- size_t i = 0;
- for (const std::unique_ptr<C2Work>& sWork : s) {
- Work &dWork = d->works[i++];
- if (!sWork) {
- ALOGW("Null C2Work encountered.");
- continue;
- }
- status = objcpy(&dWork.input, sWork->input,
- bufferPoolSender, &baseBlocks, &baseBlockIndices);
- if (status != Status::OK) {
- return status;
- }
- if (sWork->worklets.size() == 0) {
- ALOGW("Work with no worklets.");
- } else {
- if (sWork->worklets.size() > 1) {
- ALOGW("Work with multiple worklets. "
- "Only the first worklet will be marshalled.");
- }
- if (!sWork->worklets.front()) {
- ALOGE("Null worklet encountered.");
- return Status::BAD_VALUE;
- }
-
- // Parcel the first worklet.
- const C2Worklet &sWorklet = *sWork->worklets.front();
- Worklet &dWorklet = dWork.worklet;
-
- dWorklet.tunings.resize(sWorklet.tunings.size());
- size_t j = 0;
- for (const std::unique_ptr<C2Tuning>& sTuning : sWorklet.tunings) {
- status = createParamsBlob(
- &dWorklet.tunings[j++],
- std::vector<C2Param*>
- { reinterpret_cast<C2Param*>(sTuning.get()) });
- if (status != Status::OK) {
- return status;
- }
- }
-
- dWorklet.failures.resize(sWorklet.failures.size());
- j = 0;
- for (const std::unique_ptr<C2SettingResult>& sFailure :
- sWorklet.failures) {
- if (!sFailure) {
- ALOGE("Null C2SettingResult");
- return Status::BAD_VALUE;
- }
- status = objcpy(&dWorklet.failures[j++], *sFailure);
- if (status != Status::OK) {
- return status;
- }
- }
-
- status = objcpy(&dWorklet.output, sWorklet.output,
- bufferPoolSender, &baseBlocks, &baseBlockIndices);
- if (status != Status::OK) {
- return status;
- }
- }
- dWork.workletProcessed = sWork->workletsProcessed > 0;
- dWork.result = static_cast<Status>(sWork->result);
- }
-
- // Copy std::list<BaseBlock> to hidl_vec<BaseBlock>.
- {
- d->baseBlocks.resize(baseBlocks.size());
- size_t i = 0;
- for (const BaseBlock& baseBlock : baseBlocks) {
- d->baseBlocks[i++] = baseBlock;
- }
- }
-
- return Status::OK;
-}
-
-namespace /* unnamed */ {
-
-struct C2BaseBlock {
- enum type_t {
- LINEAR,
- GRAPHIC,
- };
- type_t type;
- std::shared_ptr<C2LinearBlock> linear;
- std::shared_ptr<C2GraphicBlock> graphic;
-};
-
-// hidl_handle -> C2Fence
-// Note: File descriptors are not duplicated. The original file descriptor must
-// not be closed before the transaction is complete.
-c2_status_t objcpy(C2Fence* d, const hidl_handle& s) {
- // TODO: Implement.
- (void)s;
- *d = C2Fence();
- return C2_OK;
-}
-
-// C2LinearBlock, vector<C2Param*>, C2Fence -> C2Buffer
-c2_status_t createLinearBuffer(
- std::shared_ptr<C2Buffer>* buffer,
- const std::shared_ptr<C2LinearBlock>& block,
- const std::vector<C2Param*>& meta,
- const C2Fence& fence) {
- // Check the block meta. It should have exactly 1 C2Info:
- // C2Hidl_RangeInfo.
- if ((meta.size() != 1) || !meta[0]) {
- ALOGE("Invalid block metadata for ion block.");
- return C2_BAD_VALUE;
- }
- if (meta[0]->size() != sizeof(C2Hidl_RangeInfo)) {
- ALOGE("Invalid block metadata for ion block: range.");
- return C2_BAD_VALUE;
- }
- C2Hidl_RangeInfo *rangeInfo =
- reinterpret_cast<C2Hidl_RangeInfo*>(meta[0]);
-
- // Create C2Buffer from C2LinearBlock.
- *buffer = C2Buffer::CreateLinearBuffer(block->share(
- rangeInfo->offset, rangeInfo->length,
- fence));
- if (!(*buffer)) {
- ALOGE("Cannot create a linear buffer.");
- return C2_BAD_VALUE;
- }
- return C2_OK;
-}
-
-// C2GraphicBlock, vector<C2Param*>, C2Fence -> C2Buffer
-c2_status_t createGraphicBuffer(
- std::shared_ptr<C2Buffer>* buffer,
- const std::shared_ptr<C2GraphicBlock>& block,
- const std::vector<C2Param*>& meta,
- const C2Fence& fence) {
- // Check the block meta. It should have exactly 1 C2Info:
- // C2Hidl_RectInfo.
- if ((meta.size() != 1) || !meta[0]) {
- ALOGE("Invalid block metadata for graphic block.");
- return C2_BAD_VALUE;
- }
- if (meta[0]->size() != sizeof(C2Hidl_RectInfo)) {
- ALOGE("Invalid block metadata for graphic block: crop rect.");
- return C2_BAD_VALUE;
- }
- C2Hidl_RectInfo *rectInfo =
- reinterpret_cast<C2Hidl_RectInfo*>(meta[0]);
-
- // Create C2Buffer from C2GraphicBlock.
- *buffer = C2Buffer::CreateGraphicBuffer(block->share(
- C2Rect(rectInfo->width, rectInfo->height).
- at(rectInfo->left, rectInfo->top),
- fence));
- if (!(*buffer)) {
- ALOGE("Cannot create a graphic buffer.");
- return C2_BAD_VALUE;
- }
- return C2_OK;
-}
-
-// Buffer -> C2Buffer
-// Note: The native handles will be cloned.
-c2_status_t objcpy(std::shared_ptr<C2Buffer>* d, const Buffer& s,
- const std::vector<C2BaseBlock>& baseBlocks) {
- c2_status_t status;
- *d = nullptr;
-
- // Currently, a non-null C2Buffer must contain exactly 1 block.
- if (s.blocks.size() == 0) {
- return C2_OK;
- } else if (s.blocks.size() != 1) {
- ALOGE("Currently, a C2Buffer must contain exactly 1 block.");
- return C2_BAD_VALUE;
- }
-
- const Block &sBlock = s.blocks[0];
- if (sBlock.index >= baseBlocks.size()) {
- ALOGE("Index into baseBlocks is out of range.");
- return C2_BAD_VALUE;
- }
- const C2BaseBlock &baseBlock = baseBlocks[sBlock.index];
-
- // Parse meta.
- std::vector<C2Param*> sBlockMeta;
- status = parseParamsBlob(&sBlockMeta, sBlock.meta);
- if (status != C2_OK) {
- ALOGE("Invalid block params blob.");
- return C2_BAD_VALUE;
- }
-
- // Copy fence.
- C2Fence dFence;
- status = objcpy(&dFence, sBlock.fence);
-
- // Construct a block.
- switch (baseBlock.type) {
- case C2BaseBlock::LINEAR:
- status = createLinearBuffer(d, baseBlock.linear, sBlockMeta, dFence);
- break;
- case C2BaseBlock::GRAPHIC:
- status = createGraphicBuffer(d, baseBlock.graphic, sBlockMeta, dFence);
- break;
- default:
- ALOGE("Invalid BaseBlock type.");
- return C2_BAD_VALUE;
- }
- if (status != C2_OK) {
- return status;
- }
-
- // Parse info
- std::vector<C2Param*> params;
- status = parseParamsBlob(¶ms, s.info);
- if (status != C2_OK) {
- ALOGE("Invalid buffer params blob.");
- return status;
- }
- for (C2Param* param : params) {
- if (param == nullptr) {
- ALOGE("Null buffer param encountered.");
- return C2_BAD_VALUE;
- }
- std::shared_ptr<C2Param> c2param(
- C2Param::Copy(*param).release());
- if (!c2param) {
- ALOGE("Invalid buffer param inside a blob.");
- return C2_BAD_VALUE;
- }
- status = (*d)->setInfo(std::static_pointer_cast<C2Info>(c2param));
- if (status != C2_OK) {
- ALOGE("C2Buffer::setInfo failed().");
- return C2_BAD_VALUE;
- }
- }
-
- return C2_OK;
-}
-
-// FrameData -> C2FrameData
-c2_status_t objcpy(C2FrameData* d, const FrameData& s,
- const std::vector<C2BaseBlock>& baseBlocks) {
- c2_status_t status;
- d->flags = static_cast<C2FrameData::flags_t>(s.flags);
- objcpy(&d->ordinal, s.ordinal);
- d->buffers.clear();
- d->buffers.reserve(s.buffers.size());
- for (const Buffer& sBuffer : s.buffers) {
- std::shared_ptr<C2Buffer> dBuffer;
- status = objcpy(&dBuffer, sBuffer, baseBlocks);
- if (status != C2_OK) {
- return status;
- }
- d->buffers.emplace_back(dBuffer);
- }
-
- std::vector<C2Param*> params;
- status = parseParamsBlob(¶ms, s.configUpdate);
- if (status != C2_OK) {
- ALOGE("Failed to parse frame data params.");
- return status;
- }
- d->configUpdate.clear();
- for (C2Param* param : params) {
- d->configUpdate.emplace_back(C2Param::Copy(*param));
- if (!d->configUpdate.back()) {
- ALOGE("Unexpected error while parsing frame data params.");
- return C2_BAD_VALUE;
- }
- }
-
- // TODO: Implement this once C2InfoBuffer has constructors.
- d->infoBuffers.clear();
- return C2_OK;
-}
-
-// BaseBlock -> C2BaseBlock
-c2_status_t objcpy(C2BaseBlock* d, const BaseBlock& s) {
- switch (s.type) {
- case BaseBlock::Type::NATIVE: {
- native_handle_t* sHandle =
- native_handle_clone(s.nativeBlock);
- if (sHandle == nullptr) {
- ALOGE("Null native handle in a block.");
- return C2_BAD_VALUE;
- }
- const C2Handle *sC2Handle =
- reinterpret_cast<const C2Handle*>(sHandle);
-
- d->linear = _C2BlockFactory::CreateLinearBlock(sC2Handle);
- if (d->linear) {
- d->type = C2BaseBlock::LINEAR;
- return C2_OK;
- }
-
- d->graphic = _C2BlockFactory::CreateGraphicBlock(sC2Handle);
- if (d->graphic) {
- d->type = C2BaseBlock::GRAPHIC;
- return C2_OK;
- }
-
- ALOGE("Unknown handle type in native BaseBlock.");
- if (sHandle) {
- native_handle_close(sHandle);
- native_handle_delete(sHandle);
- }
- return C2_BAD_VALUE;
- }
- case BaseBlock::Type::POOLED: {
- const BufferStatusMessage &bpMessage =
- s.pooledBlock;
- sp<ClientManager> bp = ClientManager::getInstance();
- std::shared_ptr<BufferPoolData> bpData;
- native_handle_t *cHandle;
- ResultStatus bpStatus = bp->receive(
- bpMessage.connectionId,
- bpMessage.transactionId,
- bpMessage.bufferId,
- bpMessage.timestampUs,
- &cHandle,
- &bpData);
- if (bpStatus != ResultStatus::OK) {
- ALOGE("Failed to receive buffer from bufferpool -- "
- "resultStatus = %d",
- static_cast<int>(bpStatus));
- return toC2Status(bpStatus);
- } else if (!bpData) {
- ALOGE("No data in bufferpool transaction.");
- return C2_BAD_VALUE;
- }
-
- d->linear = _C2BlockFactory::CreateLinearBlock(cHandle, bpData);
- if (d->linear) {
- d->type = C2BaseBlock::LINEAR;
- return C2_OK;
- }
-
- d->graphic = _C2BlockFactory::CreateGraphicBlock(cHandle, bpData);
- if (d->graphic) {
- d->type = C2BaseBlock::GRAPHIC;
- return C2_OK;
- }
-
- ALOGE("Unknown handle type in pooled BaseBlock.");
- return C2_BAD_VALUE;
- }
- default:
- ALOGE("Corrupted BaseBlock type: %d", static_cast<int>(s.type));
- return C2_BAD_VALUE;
- }
-}
-
-} // unnamed namespace
-
-// WorkBundle -> std::list<std::unique_ptr<C2Work>>
-c2_status_t objcpy(std::list<std::unique_ptr<C2Work>>* d, const WorkBundle& s) {
- c2_status_t status;
-
- // Convert BaseBlocks to C2BaseBlocks.
- std::vector<C2BaseBlock> dBaseBlocks(s.baseBlocks.size());
- for (size_t i = 0; i < s.baseBlocks.size(); ++i) {
- status = objcpy(&dBaseBlocks[i], s.baseBlocks[i]);
- if (status != C2_OK) {
- return status;
- }
- }
-
- d->clear();
- for (const Work& sWork : s.works) {
- d->emplace_back(std::make_unique<C2Work>());
- C2Work& dWork = *d->back();
-
- // input
- status = objcpy(&dWork.input, sWork.input, dBaseBlocks);
- if (status != C2_OK) {
- ALOGE("Error constructing C2Work's input.");
- return C2_BAD_VALUE;
- }
-
- // worklet(s)
- dWork.worklets.clear();
- // TODO: Currently, tunneling is not supported.
- if (sWork.workletProcessed) {
- dWork.workletsProcessed = 1;
-
- const Worklet &sWorklet = sWork.worklet;
- std::unique_ptr<C2Worklet> dWorklet = std::make_unique<C2Worklet>();
-
- // tunings
- dWorklet->tunings.clear();
- dWorklet->tunings.reserve(sWorklet.tunings.size());
- for (const Params& sTuning : sWorklet.tunings) {
- std::vector<C2Param*> dParams;
- status = parseParamsBlob(&dParams, sTuning);
- if (status != C2_OK) {
- ALOGE("Failed to parse C2Tuning in C2Worklet.");
- return C2_BAD_VALUE;
- }
- for (C2Param* param : dParams) {
- std::unique_ptr<C2Param> dParam = C2Param::Copy(*param);
- if (!dParam) {
- ALOGE("Null C2Tuning encountered while "
- "parsing C2Worklet.");
- return C2_BAD_VALUE;
- }
- dWorklet->tunings.emplace_back(
- std::unique_ptr<C2Tuning>(
- reinterpret_cast<C2Tuning*>(
- dParam.release())));
- }
- }
- // failures
- dWorklet->failures.clear();
- dWorklet->failures.reserve(sWorklet.failures.size());
- for (const SettingResult& sFailure : sWorklet.failures) {
- std::unique_ptr<C2SettingResult> dFailure;
- status = objcpy(&dFailure, sFailure);
- if (status != C2_OK) {
- ALOGE("Failed to create C2SettingResult in C2Worklet.");
- return C2_BAD_VALUE;
- }
- dWorklet->failures.emplace_back(std::move(dFailure));
- }
- // output
- status = objcpy(&dWorklet->output, sWorklet.output, dBaseBlocks);
- if (status != C2_OK) {
- ALOGE("Failed to create output C2FrameData.");
- return C2_BAD_VALUE;
- }
- dWork.worklets.emplace_back(std::move(dWorklet));
- } else {
- dWork.worklets.emplace_back(std::make_unique<C2Worklet>());
- dWork.workletsProcessed = 0;
- }
-
- // result
- dWork.result = static_cast<c2_status_t>(sWork.result);
- }
-
- return C2_OK;
-}
-
-constexpr size_t PARAMS_ALIGNMENT = 8; // 64-bit alignment
-static_assert(PARAMS_ALIGNMENT % alignof(C2Param) == 0, "C2Param alignment mismatch");
-static_assert(PARAMS_ALIGNMENT % alignof(C2Info) == 0, "C2Param alignment mismatch");
-static_assert(PARAMS_ALIGNMENT % alignof(C2Tuning) == 0, "C2Param alignment mismatch");
-
-// Params -> std::vector<C2Param*>
-c2_status_t parseParamsBlob(std::vector<C2Param*> *params, const hidl_vec<uint8_t> &blob) {
- // assuming blob is const here
- size_t size = blob.size();
- size_t ix = 0;
- const uint8_t *data = blob.data();
- C2Param *p = nullptr;
-
- do {
- p = C2ParamUtils::ParseFirst(data + ix, size - ix);
- if (p) {
- params->emplace_back(p);
- ix += p->size();
- ix = align(ix, PARAMS_ALIGNMENT);
- }
- } while (p);
-
- return ix == size ? C2_OK : C2_BAD_VALUE;
-}
-
-namespace /* unnamed */ {
-
-/**
- * Concatenates a list of C2Params into a params blob.
- * \param[out] blob target blob
- * \param[in] params parameters to concatenate
- * \retval C2_OK if the blob was successfully created
- * \retval C2_BAD_VALUE if the blob was not successful (this only happens if the parameters were
- * not const)
- */
-template<typename T>
-Status _createParamsBlob(hidl_vec<uint8_t> *blob, const T ¶ms) {
- // assuming the parameter values are const
- size_t size = 0;
- for (const auto &p : params) {
- if (!p) {
- continue;
- }
- size += p->size();
- size = align(size, PARAMS_ALIGNMENT);
- }
- blob->resize(size);
- size_t ix = 0;
- for (const auto &p : params) {
- if (!p) {
- continue;
- }
- // NEVER overwrite even if param values (e.g. size) changed
- size_t paramSize = std::min(p->size(), size - ix);
- std::copy(
- reinterpret_cast<const uint8_t*>(&*p),
- reinterpret_cast<const uint8_t*>(&*p) + paramSize,
- &(*blob)[ix]);
- ix += paramSize;
- ix = align(ix, PARAMS_ALIGNMENT);
- }
- blob->resize(ix);
- return ix == size ? Status::OK : Status::CORRUPTED;
-}
-
-} // unnamed namespace
-
-// std::vector<const C2Param*> -> Params
-Status createParamsBlob(
- hidl_vec<uint8_t> *blob,
- const std::vector<const C2Param*> ¶ms) {
- return _createParamsBlob(blob, params);
-}
-
-// std::vector<C2Param*> -> Params
-Status createParamsBlob(
- hidl_vec<uint8_t> *blob,
- const std::vector<C2Param*> ¶ms) {
- return _createParamsBlob(blob, params);
-}
-
-// std::vector<std::unique_ptr<C2Param>> -> Params
-Status createParamsBlob(
- hidl_vec<uint8_t> *blob,
- const std::vector<std::unique_ptr<C2Param>> ¶ms) {
- return _createParamsBlob(blob, params);
-}
-
-// std::vector<std::unique_ptr<C2Tuning>> -> Params
-Status createParamsBlob(
- hidl_vec<uint8_t> *blob,
- const std::vector<std::unique_ptr<C2Tuning>> ¶ms) {
- return _createParamsBlob(blob, params);
-}
-
-// std::vector<std::shared_ptr<const C2Info>> -> Params
-Status createParamsBlob(
- hidl_vec<uint8_t> *blob,
- const std::vector<std::shared_ptr<const C2Info>> ¶ms) {
- return _createParamsBlob(blob, params);
-}
-
-// Params -> std::vector<std::unique_ptr<C2Param>>
-c2_status_t copyParamsFromBlob(
- std::vector<std::unique_ptr<C2Param>>* params,
- Params blob) {
- std::vector<C2Param*> paramPointers;
- c2_status_t status = parseParamsBlob(¶mPointers, blob);
- if (status != C2_OK) {
- ALOGE("copyParamsFromBlob -- blob parsing failed.");
- return status;
- }
- params->resize(paramPointers.size());
- size_t i = 0;
- for (C2Param* const& paramPointer : paramPointers) {
- if (!paramPointer) {
- ALOGE("copyParamsFromBlob -- corrupted params blob.");
- return C2_BAD_VALUE;
- }
- (*params)[i++] = C2Param::Copy(*paramPointer);
- }
- return C2_OK;
-}
-
-// Params -> update std::vector<std::unique_ptr<C2Param>>
-c2_status_t updateParamsFromBlob(
- const std::vector<C2Param*>& params,
- const Params& blob) {
- std::unordered_map<uint32_t, C2Param*> index2param;
- for (C2Param* const& param : params) {
- if (!param) {
- ALOGE("updateParamsFromBlob -- corrupted input params.");
- return C2_BAD_VALUE;
- }
- if (index2param.find(param->index()) == index2param.end()) {
- index2param.emplace(param->index(), param);
- }
- }
-
- std::vector<C2Param*> paramPointers;
- c2_status_t status = parseParamsBlob(¶mPointers, blob);
- if (status != C2_OK) {
- ALOGE("updateParamsFromBlob -- blob parsing failed.");
- return status;
- }
-
- for (C2Param* const& paramPointer : paramPointers) {
- if (!paramPointer) {
- ALOGE("updateParamsFromBlob -- corrupted param in blob.");
- return C2_BAD_VALUE;
- }
- decltype(index2param)::iterator i = index2param.find(
- paramPointer->index());
- if (i == index2param.end()) {
- ALOGW("updateParamsFromBlob -- unseen param index.");
- continue;
- }
- if (!i->second->updateFrom(*paramPointer)) {
- ALOGE("updateParamsFromBlob -- mismatching sizes: "
- "%u vs %u (index = %u).",
- static_cast<unsigned>(params.size()),
- static_cast<unsigned>(paramPointer->size()),
- static_cast<unsigned>(i->first));
- return C2_BAD_VALUE;
- }
- }
- return C2_OK;
-}
-
-// Convert BufferPool ResultStatus to c2_status_t.
-c2_status_t toC2Status(ResultStatus rs) {
- switch (rs) {
- case ResultStatus::OK:
- return C2_OK;
- case ResultStatus::NO_MEMORY:
- return C2_NO_MEMORY;
- case ResultStatus::ALREADY_EXISTS:
- return C2_DUPLICATE;
- case ResultStatus::NOT_FOUND:
- return C2_NOT_FOUND;
- case ResultStatus::CRITICAL_ERROR:
- return C2_CORRUPTED;
- default:
- ALOGW("Unrecognized BufferPool ResultStatus: %d", static_cast<int>(rs));
- return C2_CORRUPTED;
- }
-}
-
-namespace /* unnamed */ {
-
-// Create a GraphicBuffer object from a graphic block.
-sp<GraphicBuffer> createGraphicBuffer(const C2ConstGraphicBlock& block) {
- uint32_t width;
- uint32_t height;
- uint32_t format;
- uint64_t usage;
- uint32_t stride;
- uint32_t generation;
- uint64_t bqId;
- int32_t bqSlot;
- _UnwrapNativeCodec2GrallocMetadata(
- block.handle(), &width, &height, &format, &usage,
- &stride, &generation, &bqId, reinterpret_cast<uint32_t*>(&bqSlot));
- native_handle_t *grallocHandle =
- UnwrapNativeCodec2GrallocHandle(block.handle());
- sp<GraphicBuffer> graphicBuffer =
- new GraphicBuffer(grallocHandle,
- GraphicBuffer::CLONE_HANDLE,
- width, height, format,
- 1, usage, stride);
- native_handle_delete(grallocHandle);
- return graphicBuffer;
-}
-
-template <typename BlockProcessor>
-void forEachBlock(C2FrameData& frameData,
- BlockProcessor process) {
- for (const std::shared_ptr<C2Buffer>& buffer : frameData.buffers) {
- if (buffer) {
- for (const C2ConstGraphicBlock& block :
- buffer->data().graphicBlocks()) {
- process(block);
- }
- }
- }
-}
-
-template <typename BlockProcessor>
-void forEachBlock(const std::list<std::unique_ptr<C2Work>>& workList,
- BlockProcessor process,
- bool processInput, bool processOutput) {
- for (const std::unique_ptr<C2Work>& work : workList) {
- if (!work) {
- continue;
- }
- if (processInput) {
- forEachBlock(work->input, process);
- }
- if (processOutput) {
- for (const std::unique_ptr<C2Worklet>& worklet : work->worklets) {
- if (worklet) {
- forEachBlock(worklet->output,
- process);
- }
- }
- }
- }
-}
-
-sp<HGraphicBufferProducer> getHgbp(const sp<IGraphicBufferProducer>& igbp) {
- sp<HGraphicBufferProducer> hgbp =
- igbp->getHalInterface<HGraphicBufferProducer>();
- return hgbp ? hgbp :
- new TWGraphicBufferProducer<HGraphicBufferProducer>(igbp);
-}
-
-} // unnamed namespace
-
-status_t attachToBufferQueue(const C2ConstGraphicBlock& block,
- const sp<IGraphicBufferProducer>& igbp,
- uint32_t generation,
- int32_t* bqSlot) {
- if (!igbp) {
- ALOGW("attachToBufferQueue -- null producer.");
- return NO_INIT;
- }
-
- sp<GraphicBuffer> graphicBuffer = createGraphicBuffer(block);
- graphicBuffer->setGenerationNumber(generation);
-
- ALOGV("attachToBufferQueue -- attaching buffer: "
- "block dimension %ux%u, "
- "graphicBuffer dimension %ux%u, "
- "format %#x, usage %#llx, stride %u, generation %u.",
- static_cast<unsigned>(block.width()),
- static_cast<unsigned>(block.height()),
- static_cast<unsigned>(graphicBuffer->getWidth()),
- static_cast<unsigned>(graphicBuffer->getHeight()),
- static_cast<unsigned>(graphicBuffer->getPixelFormat()),
- static_cast<unsigned long long>(graphicBuffer->getUsage()),
- static_cast<unsigned>(graphicBuffer->getStride()),
- static_cast<unsigned>(graphicBuffer->getGenerationNumber()));
-
- status_t result = igbp->attachBuffer(bqSlot, graphicBuffer);
- if (result != OK) {
- ALOGW("attachToBufferQueue -- attachBuffer failed. Error code = %d",
- static_cast<int>(result));
- return false;
- }
- ALOGV("attachToBufferQueue -- attachBuffer returned slot %d",
- static_cast<int>(*bqSlot));
- return true;
-}
-
-bool getBufferQueueAssignment(const C2ConstGraphicBlock& block,
- uint32_t* generation,
- uint64_t* bqId,
- int32_t* bqSlot) {
- return _C2BlockFactory::GetBufferQueueData(
- _C2BlockFactory::GetGraphicBlockPoolData(block),
- generation, bqId, bqSlot);
-}
-
-bool yieldBufferQueueBlock(const C2ConstGraphicBlock& block) {
- std::shared_ptr<_C2BlockPoolData> data =
- _C2BlockFactory::GetGraphicBlockPoolData(block);
- if (data && _C2BlockFactory::GetBufferQueueData(data)) {
- _C2BlockFactory::YieldBlockToBufferQueue(data);
- return true;
- }
- return false;
-}
-
-void yieldBufferQueueBlocks(
- const std::list<std::unique_ptr<C2Work>>& workList,
- bool processInput, bool processOutput) {
- forEachBlock(workList, yieldBufferQueueBlock, processInput, processOutput);
-}
-
-bool holdBufferQueueBlock(const C2ConstGraphicBlock& block,
- const sp<IGraphicBufferProducer>& igbp,
- uint64_t bqId,
- uint32_t generation) {
- std::shared_ptr<_C2BlockPoolData> data =
- _C2BlockFactory::GetGraphicBlockPoolData(block);
- if (!data) {
- return false;
- }
-
- uint32_t oldGeneration;
- uint64_t oldId;
- int32_t oldSlot;
- // If the block is not bufferqueue-based, do nothing.
- if (!_C2BlockFactory::GetBufferQueueData(
- data, &oldGeneration, &oldId, &oldSlot) ||
- (oldId == 0)) {
- return false;
- }
-
- // If the block's bqId is the same as the desired bqId, just hold.
- if ((oldId == bqId) && (oldGeneration == generation)) {
- ALOGV("holdBufferQueueBlock -- import without attaching: "
- "bqId %llu, bqSlot %d, generation %u.",
- static_cast<long long unsigned>(oldId),
- static_cast<int>(oldSlot),
- static_cast<unsigned>(generation));
- _C2BlockFactory::HoldBlockFromBufferQueue(data, getHgbp(igbp));
- return true;
- }
-
- // Otherwise, attach to the given igbp, which must not be null.
- if (!igbp) {
- return false;
- }
-
- int32_t bqSlot;
- status_t result = attachToBufferQueue(block, igbp, generation, &bqSlot);
-
- if (result != OK) {
- ALOGE("holdBufferQueueBlock -- fail to attach: "
- "target bqId %llu, generation %u.",
- static_cast<long long unsigned>(bqId),
- static_cast<unsigned>(generation));
-
- return false;
- }
-
- ALOGV("holdBufferQueueBlock -- attached: "
- "bqId %llu, bqSlot %d, generation %u.",
- static_cast<long long unsigned>(bqId),
- static_cast<int>(bqSlot),
- static_cast<unsigned>(generation));
- _C2BlockFactory::AssignBlockToBufferQueue(
- data, getHgbp(igbp), bqId, bqSlot, true);
- return true;
-}
-
-void holdBufferQueueBlocks(const std::list<std::unique_ptr<C2Work>>& workList,
- const sp<IGraphicBufferProducer>& igbp,
- uint64_t bqId,
- uint32_t generation,
- bool forInput) {
- forEachBlock(workList,
- std::bind(holdBufferQueueBlock,
- std::placeholders::_1, igbp, bqId, generation),
- forInput, !forInput);
-}
-
-} // namespace utils
-} // namespace V1_0
-} // namespace c2
-} // namespace media
-} // namespace google
-} // namespace hardware
-
diff --git a/codec2/hidl/Android.mk b/codec2/hidl/Android.mk
deleted file mode 100644
index 5e7c2ef..0000000
--- a/codec2/hidl/Android.mk
+++ /dev/null
@@ -1 +0,0 @@
-include $(call all-makefiles-under,$(call my-dir))
diff --git a/codec2/hidl/client/Android.bp b/codec2/hidl/client/Android.bp
deleted file mode 100644
index bdcd38b..0000000
--- a/codec2/hidl/client/Android.bp
+++ /dev/null
@@ -1,37 +0,0 @@
-cc_library {
- name: "libcodec2_hidl_client",
-
- srcs: [
- "client.cpp",
- ],
-
- shared_libs: [
- "android.hardware.graphics.bufferqueue@1.0",
- "android.hardware.media.bufferpool@1.0",
- "hardware.google.media.c2@1.0",
- "libbase",
- "libbinder",
- "libcodec2_hidl_utils@1.0",
- "libcutils",
- "libgui",
- "libhidlbase",
- "liblog",
- "libstagefright_bufferpool@1.0",
- "libstagefright_bufferqueue_helper",
- "libstagefright_codec2",
- "libstagefright_codec2_vndk",
- "libui",
- "libutils",
- ],
-
- export_include_dirs: [
- "include",
- ],
-
- export_shared_lib_headers: [
- "libcodec2_hidl_utils@1.0",
- "libstagefright_codec2",
- ],
-
-}
-
diff --git a/codec2/hidl/client/client.cpp b/codec2/hidl/client/client.cpp
deleted file mode 100644
index 8b4b48b..0000000
--- a/codec2/hidl/client/client.cpp
+++ /dev/null
@@ -1,1390 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "Codec2Client"
-#include <log/log.h>
-
-#include <codec2/hidl/client.h>
-
-#include <deque>
-#include <limits>
-#include <map>
-#include <type_traits>
-#include <vector>
-
-#include <android-base/properties.h>
-#include <bufferpool/ClientManager.h>
-#include <cutils/native_handle.h>
-#include <gui/bufferqueue/1.0/H2BGraphicBufferProducer.h>
-#include <gui/bufferqueue/1.0/WGraphicBufferProducer.h>
-#include <hidl/HidlSupport.h>
-#undef LOG
-
-#include <android/hardware/media/bufferpool/1.0/IClientManager.h>
-#include <hardware/google/media/c2/1.0/IComponent.h>
-#include <hardware/google/media/c2/1.0/IComponentInterface.h>
-#include <hardware/google/media/c2/1.0/IComponentListener.h>
-#include <hardware/google/media/c2/1.0/IComponentStore.h>
-#include <hardware/google/media/c2/1.0/IConfigurable.h>
-
-#include <C2Debug.h>
-#include <C2BufferPriv.h>
-#include <C2PlatformSupport.h>
-
-namespace android {
-
-using ::android::hardware::hidl_vec;
-using ::android::hardware::hidl_string;
-using ::android::hardware::Return;
-using ::android::hardware::Void;
-using ::android::TWGraphicBufferProducer;
-
-using namespace ::hardware::google::media::c2::V1_0;
-using namespace ::hardware::google::media::c2::V1_0::utils;
-using namespace ::android::hardware::media::bufferpool::V1_0;
-using namespace ::android::hardware::media::bufferpool::V1_0::implementation;
-
-namespace /* unnamed */ {
-
-// c2_status_t value that corresponds to hwbinder transaction failure.
-constexpr c2_status_t C2_TRANSACTION_FAILED = C2_CORRUPTED;
-
-// List of known IComponentStore services in the decreasing order of preference.
-constexpr const char* kClientNames[] = {
- "default",
- "software",
- };
-
-// Number of known IComponentStore services.
-constexpr size_t kNumClients = std::extent<decltype(kClientNames)>::value;
-
-typedef std::array<std::shared_ptr<Codec2Client>, kNumClients> ClientList;
-
-// Convenience methods to obtain known clients.
-std::shared_ptr<Codec2Client> getClient(size_t index) {
- return Codec2Client::CreateFromService(kClientNames[index]);
-}
-
-ClientList getClientList() {
- ClientList list;
- for (size_t i = 0; i < list.size(); ++i) {
- list[i] = getClient(i);
- }
- return list;
-}
-
-} // unnamed
-
-// Codec2ConfigurableClient
-
-const C2String& Codec2ConfigurableClient::getName() const {
- return mName;
-}
-
-Codec2ConfigurableClient::Base* Codec2ConfigurableClient::base() const {
- return static_cast<Base*>(mBase.get());
-}
-
-Codec2ConfigurableClient::Codec2ConfigurableClient(
- const sp<Codec2ConfigurableClient::Base>& base) : mBase(base) {
- Return<void> transStatus = base->getName(
- [this](const hidl_string& name) {
- mName = name.c_str();
- });
- if (!transStatus.isOk()) {
- ALOGE("Cannot obtain name from IConfigurable.");
- }
-}
-
-c2_status_t Codec2ConfigurableClient::query(
- const std::vector<C2Param*> &stackParams,
- const std::vector<C2Param::Index> &heapParamIndices,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2Param>>* const heapParams) const {
- hidl_vec<ParamIndex> indices(
- stackParams.size() + heapParamIndices.size());
- size_t numIndices = 0;
- for (C2Param* const& stackParam : stackParams) {
- if (!stackParam) {
- ALOGW("query -- null stack param encountered.");
- continue;
- }
- indices[numIndices++] = static_cast<ParamIndex>(stackParam->index());
- }
- size_t numStackIndices = numIndices;
- for (const C2Param::Index& index : heapParamIndices) {
- indices[numIndices++] =
- static_cast<ParamIndex>(static_cast<uint32_t>(index));
- }
- indices.resize(numIndices);
- if (heapParams) {
- heapParams->reserve(heapParams->size() + numIndices);
- }
- c2_status_t status;
- Return<void> transStatus = base()->query(
- indices,
- mayBlock == C2_MAY_BLOCK,
- [&status, &numStackIndices, &stackParams, heapParams](
- Status s, const Params& p) {
- status = static_cast<c2_status_t>(s);
- if (status != C2_OK && status != C2_BAD_INDEX) {
- ALOGE("query -- call failed. "
- "Error code = %d", static_cast<int>(status));
- return;
- }
- std::vector<C2Param*> paramPointers;
- c2_status_t parseStatus = parseParamsBlob(¶mPointers, p);
- if (parseStatus != C2_OK) {
- ALOGE("query -- error while parsing params. "
- "Error code = %d", static_cast<int>(status));
- status = parseStatus;
- return;
- }
- size_t i = 0;
- for (auto it = paramPointers.begin(); it != paramPointers.end(); ) {
- C2Param* paramPointer = *it;
- if (numStackIndices > 0) {
- --numStackIndices;
- if (!paramPointer) {
- ALOGW("query -- null stack param.");
- ++it;
- continue;
- }
- for (; i < stackParams.size() && !stackParams[i]; ) {
- ++i;
- }
- if (i >= stackParams.size()) {
- ALOGE("query -- unexpected error.");
- status = C2_CORRUPTED;
- return;
- }
- if (stackParams[i]->index() != paramPointer->index()) {
- ALOGW("query -- param skipped. index = %d",
- static_cast<int>(stackParams[i]->index()));
- stackParams[i++]->invalidate();
- continue;
- }
- if (!stackParams[i++]->updateFrom(*paramPointer)) {
- ALOGW("query -- param update failed. index = %d",
- static_cast<int>(paramPointer->index()));
- }
- } else {
- if (!paramPointer) {
- ALOGW("query -- null heap param.");
- ++it;
- continue;
- }
- if (!heapParams) {
- ALOGW("query -- unexpected extra stack param.");
- } else {
- heapParams->emplace_back(C2Param::Copy(*paramPointer));
- }
- }
- ++it;
- }
- });
- if (!transStatus.isOk()) {
- ALOGE("query -- transaction failed.");
- return C2_TRANSACTION_FAILED;
- }
- return status;
-}
-
-c2_status_t Codec2ConfigurableClient::config(
- const std::vector<C2Param*> ¶ms,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2SettingResult>>* const failures) {
- Params hidlParams;
- Status hidlStatus = createParamsBlob(&hidlParams, params);
- if (hidlStatus != Status::OK) {
- ALOGE("config -- bad input.");
- return C2_TRANSACTION_FAILED;
- }
- c2_status_t status;
- Return<void> transStatus = base()->config(
- hidlParams,
- mayBlock == C2_MAY_BLOCK,
- [&status, ¶ms, failures](
- Status s,
- const hidl_vec<SettingResult> f,
- const Params& o) {
- status = static_cast<c2_status_t>(s);
- if (status != C2_OK) {
- ALOGD("config -- call failed. "
- "Error code = %d", static_cast<int>(status));
- }
- size_t i = failures->size();
- failures->resize(i + f.size());
- for (const SettingResult& sf : f) {
- status = objcpy(&(*failures)[i++], sf);
- if (status != C2_OK) {
- ALOGE("config -- invalid returned SettingResult. "
- "Error code = %d", static_cast<int>(status));
- return;
- }
- }
- status = updateParamsFromBlob(params, o);
- });
- if (!transStatus.isOk()) {
- ALOGE("config -- transaction failed.");
- return C2_TRANSACTION_FAILED;
- }
- return status;
-}
-
-c2_status_t Codec2ConfigurableClient::querySupportedParams(
- std::vector<std::shared_ptr<C2ParamDescriptor>>* const params) const {
- // TODO: Cache and query properly!
- c2_status_t status;
- Return<void> transStatus = base()->querySupportedParams(
- std::numeric_limits<uint32_t>::min(),
- std::numeric_limits<uint32_t>::max(),
- [&status, params](
- Status s,
- const hidl_vec<ParamDescriptor>& p) {
- status = static_cast<c2_status_t>(s);
- if (status != C2_OK) {
- ALOGE("querySupportedParams -- call failed. "
- "Error code = %d", static_cast<int>(status));
- return;
- }
- size_t i = params->size();
- params->resize(i + p.size());
- for (const ParamDescriptor& sp : p) {
- status = objcpy(&(*params)[i++], sp);
- if (status != C2_OK) {
- ALOGE("querySupportedParams -- "
- "invalid returned ParamDescriptor. "
- "Error code = %d", static_cast<int>(status));
- return;
- }
- }
- });
- if (!transStatus.isOk()) {
- ALOGE("querySupportedParams -- transaction failed.");
- return C2_TRANSACTION_FAILED;
- }
- return status;
-}
-
-c2_status_t Codec2ConfigurableClient::querySupportedValues(
- std::vector<C2FieldSupportedValuesQuery>& fields,
- c2_blocking_t mayBlock) const {
- hidl_vec<FieldSupportedValuesQuery> inFields(fields.size());
- for (size_t i = 0; i < fields.size(); ++i) {
- Status hidlStatus = objcpy(&inFields[i], fields[i]);
- if (hidlStatus != Status::OK) {
- ALOGE("querySupportedValues -- bad input");
- return C2_TRANSACTION_FAILED;
- }
- }
-
- c2_status_t status;
- Return<void> transStatus = base()->querySupportedValues(
- inFields,
- mayBlock == C2_MAY_BLOCK,
- [&status, &inFields, &fields](
- Status s,
- const hidl_vec<FieldSupportedValuesQueryResult>& r) {
- status = static_cast<c2_status_t>(s);
- if (status != C2_OK) {
- ALOGE("querySupportedValues -- call failed. "
- "Error code = %d", static_cast<int>(status));
- return;
- }
- if (r.size() != fields.size()) {
- ALOGE("querySupportedValues -- input and output lists "
- "have different sizes.");
- status = C2_CORRUPTED;
- return;
- }
- for (size_t i = 0; i < fields.size(); ++i) {
- status = objcpy(&fields[i], inFields[i], r[i]);
- if (status != C2_OK) {
- ALOGE("querySupportedValues -- invalid returned value. "
- "Error code = %d", static_cast<int>(status));
- return;
- }
- }
- });
- if (!transStatus.isOk()) {
- ALOGE("querySupportedValues -- transaction failed.");
- return C2_TRANSACTION_FAILED;
- }
- return status;
-}
-
-// Codec2Client::Component::HidlListener
-struct Codec2Client::Component::HidlListener : public IComponentListener {
- std::weak_ptr<Component> component;
- std::weak_ptr<Listener> base;
-
- virtual Return<void> onWorkDone(const WorkBundle& workBundle) override {
- std::list<std::unique_ptr<C2Work>> workItems;
- c2_status_t status = objcpy(&workItems, workBundle);
- if (status != C2_OK) {
- ALOGI("onWorkDone -- received corrupted WorkBundle. "
- "status = %d.", static_cast<int>(status));
- return Void();
- }
- // release input buffers potentially held by the component from queue
- size_t numDiscardedInputBuffers = 0;
- std::shared_ptr<Codec2Client::Component> strongComponent = component.lock();
- if (strongComponent) {
- numDiscardedInputBuffers = strongComponent->handleOnWorkDone(workItems);
- }
- if (std::shared_ptr<Codec2Client::Listener> listener = base.lock()) {
- listener->onWorkDone(component, workItems, numDiscardedInputBuffers);
- } else {
- ALOGD("onWorkDone -- listener died.");
- }
- return Void();
- }
-
- virtual Return<void> onTripped(
- const hidl_vec<SettingResult>& settingResults) override {
- std::vector<std::shared_ptr<C2SettingResult>> c2SettingResults(
- settingResults.size());
- c2_status_t status;
- for (size_t i = 0; i < settingResults.size(); ++i) {
- std::unique_ptr<C2SettingResult> c2SettingResult;
- status = objcpy(&c2SettingResult, settingResults[i]);
- if (status != C2_OK) {
- ALOGI("onTripped -- received corrupted SettingResult. "
- "status = %d.", static_cast<int>(status));
- return Void();
- }
- c2SettingResults[i] = std::move(c2SettingResult);
- }
- if (std::shared_ptr<Codec2Client::Listener> listener = base.lock()) {
- listener->onTripped(component, c2SettingResults);
- } else {
- ALOGD("onTripped -- listener died.");
- }
- return Void();
- }
-
- virtual Return<void> onError(Status s, uint32_t errorCode) override {
- ALOGD("onError -- status = %d, errorCode = %u.",
- static_cast<int>(s),
- static_cast<unsigned>(errorCode));
- if (std::shared_ptr<Listener> listener = base.lock()) {
- listener->onError(component, s == Status::OK ?
- errorCode : static_cast<c2_status_t>(s));
- } else {
- ALOGD("onError -- listener died.");
- }
- return Void();
- }
-
- virtual Return<void> onFramesRendered(
- const hidl_vec<RenderedFrame>& renderedFrames) override {
- std::shared_ptr<Listener> listener = base.lock();
- std::vector<Codec2Client::Listener::RenderedFrame> rfs;
- rfs.reserve(renderedFrames.size());
- for (const RenderedFrame& rf : renderedFrames) {
- if (rf.slotId >= 0) {
- if (listener) {
- rfs.emplace_back(rf.bufferQueueId,
- rf.slotId,
- rf.timestampNs);
- }
- } else {
- std::shared_ptr<Codec2Client::Component> strongComponent =
- component.lock();
- if (strongComponent) {
- uint64_t frameIndex = rf.bufferQueueId;
- size_t bufferIndex = static_cast<size_t>(~rf.slotId);
- ALOGV("Received death notification of input buffer: "
- "frameIndex = %llu, bufferIndex = %zu.",
- static_cast<long long unsigned>(frameIndex),
- bufferIndex);
- std::shared_ptr<C2Buffer> buffer =
- strongComponent->freeInputBuffer(
- frameIndex, bufferIndex);
- if (buffer) {
- listener->onInputBufferDone(buffer);
- }
- }
- }
- }
- if (!rfs.empty()) {
- if (listener) {
- listener->onFramesRendered(rfs);
- } else {
- ALOGD("onFramesRendered -- listener died.");
- }
- }
- return Void();
- }
-};
-
-// Codec2Client
-Codec2Client::Base* Codec2Client::base() const {
- return static_cast<Base*>(mBase.get());
-}
-
-Codec2Client::Codec2Client(const sp<Codec2Client::Base>& base, std::string instanceName) :
- Codec2ConfigurableClient(base), mListed(false), mInstanceName(instanceName) {
- Return<sp<IClientManager>> transResult = base->getPoolClientManager();
- if (!transResult.isOk()) {
- ALOGE("getPoolClientManager -- failed transaction.");
- } else {
- mHostPoolManager = static_cast<sp<IClientManager>>(transResult);
- }
-}
-
-c2_status_t Codec2Client::createComponent(
- const C2String& name,
- const std::shared_ptr<Codec2Client::Listener>& listener,
- std::shared_ptr<Codec2Client::Component>* const component) {
-
- // TODO: Add support for Bufferpool
-
-
- c2_status_t status;
- sp<Component::HidlListener> hidlListener = new Component::HidlListener();
- hidlListener->base = listener;
- Return<void> transStatus = base()->createComponent(
- name,
- hidlListener,
- ClientManager::getInstance(),
- [&status, component, hidlListener](
- Status s,
- const sp<IComponent>& c) {
- status = static_cast<c2_status_t>(s);
- if (status != C2_OK) {
- return;
- }
- *component = std::make_shared<Codec2Client::Component>(c);
- hidlListener->component = *component;
- });
- if (!transStatus.isOk()) {
- ALOGE("createComponent -- failed transaction.");
- return C2_TRANSACTION_FAILED;
- }
-
- if (status != C2_OK) {
- return status;
- }
-
- if (!*component) {
- ALOGE("createComponent -- null component.");
- return C2_CORRUPTED;
- }
-
- status = (*component)->setDeathListener(*component, listener);
- if (status != C2_OK) {
- ALOGE("createComponent -- setDeathListener returned error: %d.",
- static_cast<int>(status));
- }
-
- (*component)->mBufferPoolSender.setReceiver(mHostPoolManager);
- return status;
-}
-
-c2_status_t Codec2Client::createInterface(
- const C2String& name,
- std::shared_ptr<Codec2Client::Interface>* const interface) {
- c2_status_t status;
- Return<void> transStatus = base()->createInterface(
- name,
- [&status, interface](
- Status s,
- const sp<IComponentInterface>& i) {
- status = static_cast<c2_status_t>(s);
- if (status != C2_OK) {
- ALOGE("createInterface -- call failed. "
- "Error code = %d", static_cast<int>(status));
- return;
- }
- *interface = std::make_shared<Codec2Client::Interface>(i);
- });
- if (!transStatus.isOk()) {
- ALOGE("createInterface -- failed transaction.");
- return C2_TRANSACTION_FAILED;
- }
- return status;
-}
-
-c2_status_t Codec2Client::createInputSurface(
- std::shared_ptr<Codec2Client::InputSurface>* const inputSurface) {
- Return<sp<IInputSurface>> transResult = base()->createInputSurface();
- if (!transResult.isOk()) {
- ALOGE("createInputSurface -- failed transaction.");
- return C2_TRANSACTION_FAILED;
- }
- sp<IInputSurface> result = static_cast<sp<IInputSurface>>(transResult);
- if (!result) {
- *inputSurface = nullptr;
- return C2_OK;
- }
- *inputSurface = std::make_shared<InputSurface>(result);
- if (!*inputSurface) {
- ALOGE("createInputSurface -- unknown error.");
- return C2_CORRUPTED;
- }
- return C2_OK;
-}
-
-const std::vector<C2Component::Traits>& Codec2Client::listComponents() const {
- std::lock_guard<std::mutex> lock(mMutex);
- if (mListed) {
- return mTraitsList;
- }
- Return<void> transStatus = base()->listComponents(
- [this](const hidl_vec<IComponentStore::ComponentTraits>& t) {
- mTraitsList.resize(t.size());
- mAliasesBuffer.resize(t.size());
- for (size_t i = 0; i < t.size(); ++i) {
- c2_status_t status = objcpy(
- &mTraitsList[i], &mAliasesBuffer[i], t[i]);
- mTraitsList[i].owner = mInstanceName;
- if (status != C2_OK) {
- ALOGE("listComponents -- corrupted output.");
- return;
- }
- }
- });
- if (!transStatus.isOk()) {
- ALOGE("listComponents -- failed transaction.");
- }
- mListed = true;
- return mTraitsList;
-}
-
-c2_status_t Codec2Client::copyBuffer(
- const std::shared_ptr<C2Buffer>& src,
- const std::shared_ptr<C2Buffer>& dst) {
- // TODO: Implement?
- (void)src;
- (void)dst;
- ALOGE("copyBuffer not implemented");
- return C2_OMITTED;
-}
-
-std::shared_ptr<C2ParamReflector>
- Codec2Client::getParamReflector() {
- // TODO: this is not meant to be exposed as C2ParamReflector on the client side; instead, it
- // should reflect the HAL API.
- struct SimpleParamReflector : public C2ParamReflector {
- virtual std::unique_ptr<C2StructDescriptor> describe(C2Param::CoreIndex coreIndex) const {
- hidl_vec<ParamIndex> indices(1);
- indices[0] = static_cast<ParamIndex>(coreIndex.coreIndex());
- std::unique_ptr<C2StructDescriptor> descriptor;
- Return<void> transStatus = mBase->getStructDescriptors(
- indices,
- [&descriptor](
- Status s,
- const hidl_vec<StructDescriptor>& sd) {
- c2_status_t status = static_cast<c2_status_t>(s);
- if (status != C2_OK) {
- ALOGE("getStructDescriptors -- call failed. "
- "Error code = %d", static_cast<int>(status));
- descriptor.reset();
- return;
- }
- if (sd.size() != 1) {
- ALOGD("getStructDescriptors -- returned vector of size %zu.",
- sd.size());
- descriptor.reset();
- return;
- }
- status = objcpy(&descriptor, sd[0]);
- if (status != C2_OK) {
- ALOGD("getStructDescriptors -- failed to convert. "
- "Error code = %d", static_cast<int>(status));
- descriptor.reset();
- return;
- }
- });
- return descriptor;
- }
-
- SimpleParamReflector(sp<Base> base)
- : mBase(base) { }
-
- sp<Base> mBase;
- };
-
- return std::make_shared<SimpleParamReflector>(base());
-};
-
-std::shared_ptr<Codec2Client> Codec2Client::CreateFromService(
- const char* instanceName, bool waitForService) {
- if (!instanceName) {
- return nullptr;
- }
- sp<Base> baseStore = waitForService ?
- Base::getService(instanceName) :
- Base::tryGetService(instanceName);
- if (!baseStore) {
- if (waitForService) {
- ALOGE("Codec2.0 service inaccessible. Check the device manifest.");
- } else {
- ALOGW("Codec2.0 service not available right now. Try again later.");
- }
- return nullptr;
- }
- return std::make_shared<Codec2Client>(baseStore, instanceName);
-}
-
-c2_status_t Codec2Client::ForAllStores(
- const std::string &key,
- std::function<c2_status_t(const std::shared_ptr<Codec2Client>&)> predicate) {
- c2_status_t status = C2_NO_INIT; // no IComponentStores present
-
- // Cache the mapping key -> index of Codec2Client in getClient().
- static std::mutex key2IndexMutex;
- static std::map<std::string, size_t> key2Index;
-
- // By default try all stores. However, try the last known client first. If the last known
- // client fails, retry once. We do this by pushing the last known client in front of the
- // list of all clients.
- std::deque<size_t> indices;
- for (size_t index = kNumClients; index > 0; ) {
- indices.push_front(--index);
- }
-
- bool wasMapped = false;
- std::unique_lock<std::mutex> lock(key2IndexMutex);
- auto it = key2Index.find(key);
- if (it != key2Index.end()) {
- indices.push_front(it->second);
- wasMapped = true;
- }
- lock.unlock();
-
- for (size_t index : indices) {
- std::shared_ptr<Codec2Client> client = getClient(index);
- if (client) {
- status = predicate(client);
- if (status == C2_OK) {
- lock.lock();
- key2Index[key] = index; // update last known client index
- return status;
- }
- }
- if (wasMapped) {
- ALOGI("Could not find '%s' in last instance. Retrying...", key.c_str());
- wasMapped = false;
- }
- }
- return status; // return the last status from a valid client
-}
-
-std::shared_ptr<Codec2Client::Component>
- Codec2Client::CreateComponentByName(
- const char* componentName,
- const std::shared_ptr<Listener>& listener,
- std::shared_ptr<Codec2Client>* owner) {
- std::shared_ptr<Component> component;
- c2_status_t status = ForAllStores(
- componentName,
- [owner, &component, componentName, &listener](
- const std::shared_ptr<Codec2Client> &client) -> c2_status_t {
- c2_status_t status = client->createComponent(componentName, listener, &component);
- if (status == C2_OK) {
- if (owner) {
- *owner = client;
- }
- } else if (status != C2_NOT_FOUND) {
- ALOGD("IComponentStore(%s)::createComponent('%s') returned %s",
- client->getInstanceName().c_str(), componentName, asString(status));
- }
- return status;
- });
- if (status != C2_OK) {
- ALOGI("Could not create component '%s' (%s)", componentName, asString(status));
- }
- return component;
-}
-
-std::shared_ptr<Codec2Client::Interface>
- Codec2Client::CreateInterfaceByName(
- const char* interfaceName,
- std::shared_ptr<Codec2Client>* owner) {
- std::shared_ptr<Interface> interface;
- c2_status_t status = ForAllStores(
- interfaceName,
- [owner, &interface, interfaceName](
- const std::shared_ptr<Codec2Client> &client) -> c2_status_t {
- c2_status_t status = client->createInterface(interfaceName, &interface);
- if (status == C2_OK) {
- if (owner) {
- *owner = client;
- }
- } else if (status != C2_NOT_FOUND) {
- ALOGD("IComponentStore(%s)::createInterface('%s') returned %s",
- client->getInstanceName().c_str(), interfaceName, asString(status));
- }
- return status;
- });
- if (status != C2_OK) {
- ALOGI("Could not create interface '%s' (%s)", interfaceName, asString(status));
- }
- return interface;
-}
-
-std::shared_ptr<Codec2Client::InputSurface> Codec2Client::CreateInputSurface() {
- uint32_t serviceMask = ::android::base::GetUintProperty(
- "debug.stagefright.c2inputsurface", uint32_t(0));
- for (size_t i = 0; i < kNumClients; ++i) {
- if ((1 << i) & serviceMask) {
- std::shared_ptr<Codec2Client> client = getClient(i);
- std::shared_ptr<Codec2Client::InputSurface> inputSurface;
- if (client &&
- client->createInputSurface(&inputSurface) == C2_OK &&
- inputSurface) {
- return inputSurface;
- }
- }
- }
- ALOGW("Could not create an input surface from any Codec2.0 services.");
- return nullptr;
-}
-
-const std::vector<C2Component::Traits>& Codec2Client::ListComponents() {
- static std::vector<C2Component::Traits> traitsList = [](){
- std::vector<C2Component::Traits> list;
- size_t listSize = 0;
- ClientList clientList = getClientList();
- for (const std::shared_ptr<Codec2Client>& client : clientList) {
- if (!client) {
- continue;
- }
- listSize += client->listComponents().size();
- }
- list.reserve(listSize);
- for (const std::shared_ptr<Codec2Client>& client : clientList) {
- if (!client) {
- continue;
- }
- list.insert(
- list.end(),
- client->listComponents().begin(),
- client->listComponents().end());
- }
- return list;
- }();
-
- return traitsList;
-}
-
-// Codec2Client::Listener
-
-Codec2Client::Listener::~Listener() {
-}
-
-// Codec2Client::Component
-
-Codec2Client::Component::Base* Codec2Client::Component::base() const {
- return static_cast<Base*>(mBase.get());
-}
-
-Codec2Client::Component::Component(const sp<Codec2Client::Component::Base>& base) :
- Codec2Client::Configurable(base),
- mBufferPoolSender(nullptr) {
-}
-
-Codec2Client::Component::~Component() {
-}
-
-c2_status_t Codec2Client::Component::createBlockPool(
- C2Allocator::id_t id,
- C2BlockPool::local_id_t* blockPoolId,
- std::shared_ptr<Codec2Client::Configurable>* configurable) {
- c2_status_t status;
- Return<void> transStatus = base()->createBlockPool(
- static_cast<uint32_t>(id),
- [&status, blockPoolId, configurable](
- Status s,
- uint64_t pId,
- const sp<IConfigurable>& c) {
- status = static_cast<c2_status_t>(s);
- configurable->reset();
- if (status != C2_OK) {
- ALOGE("createBlockPool -- call failed. "
- "Error code = %d", static_cast<int>(status));
- return;
- }
- *blockPoolId = static_cast<C2BlockPool::local_id_t>(pId);
- *configurable = std::make_shared<Codec2Client::Configurable>(c);
- });
- if (!transStatus.isOk()) {
- ALOGE("createBlockPool -- transaction failed.");
- return C2_TRANSACTION_FAILED;
- }
- return status;
-}
-
-c2_status_t Codec2Client::Component::destroyBlockPool(
- C2BlockPool::local_id_t localId) {
- Return<Status> transResult = base()->destroyBlockPool(
- static_cast<uint64_t>(localId));
- if (!transResult.isOk()) {
- ALOGE("destroyBlockPool -- transaction failed.");
- return C2_TRANSACTION_FAILED;
- }
- return static_cast<c2_status_t>(static_cast<Status>(transResult));
-}
-
-size_t Codec2Client::Component::handleOnWorkDone(
- const std::list<std::unique_ptr<C2Work>> &workItems) {
- // Input buffers' lifetime management
- std::vector<uint64_t> inputDone;
- for (const std::unique_ptr<C2Work> &work : workItems) {
- if (work) {
- if (work->worklets.empty()
- || !work->worklets.back()
- || (work->worklets.back()->output.flags & C2FrameData::FLAG_INCOMPLETE) == 0) {
- // input is complete
- inputDone.emplace_back(work->input.ordinal.frameIndex.peeku());
- }
- }
- }
-
- size_t numDiscardedInputBuffers = 0;
- {
- std::lock_guard<std::mutex> lock(mInputBuffersMutex);
- for (uint64_t inputIndex : inputDone) {
- auto it = mInputBuffers.find(inputIndex);
- if (it == mInputBuffers.end()) {
- ALOGV("onWorkDone -- returned consumed/unknown "
- "input frame: index %llu",
- (long long)inputIndex);
- } else {
- ALOGV("onWorkDone -- processed input frame: "
- "index %llu (containing %zu buffers)",
- (long long)inputIndex, it->second.size());
- mInputBuffers.erase(it);
- mInputBufferCount.erase(inputIndex);
- ++numDiscardedInputBuffers;
- }
- }
- }
-
- // Output bufferqueue-based blocks' lifetime management
- mOutputBufferQueueMutex.lock();
- sp<IGraphicBufferProducer> igbp = mOutputIgbp;
- uint64_t bqId = mOutputBqId;
- uint32_t generation = mOutputGeneration;
- mOutputBufferQueueMutex.unlock();
-
- if (igbp) {
- holdBufferQueueBlocks(workItems, igbp, bqId, generation);
- }
- return numDiscardedInputBuffers;
-}
-
-std::shared_ptr<C2Buffer> Codec2Client::Component::freeInputBuffer(
- uint64_t frameIndex,
- size_t bufferIndex) {
- std::shared_ptr<C2Buffer> buffer;
- std::lock_guard<std::mutex> lock(mInputBuffersMutex);
- auto it = mInputBuffers.find(frameIndex);
- if (it == mInputBuffers.end()) {
- ALOGI("freeInputBuffer -- Unrecognized input frame index %llu.",
- static_cast<long long unsigned>(frameIndex));
- return nullptr;
- }
- if (bufferIndex >= it->second.size()) {
- ALOGI("freeInputBuffer -- Input buffer no. %zu is invalid in "
- "input frame index %llu.",
- bufferIndex, static_cast<long long unsigned>(frameIndex));
- return nullptr;
- }
- buffer = it->second[bufferIndex];
- if (!buffer) {
- ALOGI("freeInputBuffer -- Input buffer no. %zu in "
- "input frame index %llu has already been freed.",
- bufferIndex, static_cast<long long unsigned>(frameIndex));
- return nullptr;
- }
- it->second[bufferIndex] = nullptr;
- if (--mInputBufferCount[frameIndex] == 0) {
- mInputBuffers.erase(it);
- mInputBufferCount.erase(frameIndex);
- }
- return buffer;
-}
-
-c2_status_t Codec2Client::Component::queue(
- std::list<std::unique_ptr<C2Work>>* const items) {
- // remember input buffers queued to hold reference to them
- {
- std::lock_guard<std::mutex> lock(mInputBuffersMutex);
- for (const std::unique_ptr<C2Work> &work : *items) {
- if (!work) {
- continue;
- }
- if (work->input.buffers.size() == 0) {
- continue;
- }
-
- uint64_t inputIndex = work->input.ordinal.frameIndex.peeku();
- auto res = mInputBuffers.emplace(inputIndex, work->input.buffers);
- if (!res.second) {
- // TODO: append? - for now we are replacing
- res.first->second = work->input.buffers;
- ALOGI("queue -- duplicate input frame: index %llu. "
- "Discarding the old input frame...",
- (long long)inputIndex);
- }
- mInputBufferCount[inputIndex] = work->input.buffers.size();
- ALOGV("queue -- queueing input frame: "
- "index %llu (containing %zu buffers)",
- (long long)inputIndex, work->input.buffers.size());
- }
- }
-
- WorkBundle workBundle;
- Status hidlStatus = objcpy(&workBundle, *items, &mBufferPoolSender);
- if (hidlStatus != Status::OK) {
- ALOGE("queue -- bad input.");
- return C2_TRANSACTION_FAILED;
- }
- Return<Status> transStatus = base()->queue(workBundle);
- if (!transStatus.isOk()) {
- ALOGE("queue -- transaction failed.");
- return C2_TRANSACTION_FAILED;
- }
- c2_status_t status =
- static_cast<c2_status_t>(static_cast<Status>(transStatus));
- if (status != C2_OK) {
- ALOGE("queue -- call failed. "
- "Error code = %d", static_cast<int>(status));
- }
- return status;
-}
-
-c2_status_t Codec2Client::Component::flush(
- C2Component::flush_mode_t mode,
- std::list<std::unique_ptr<C2Work>>* const flushedWork) {
- (void)mode; // Flush mode isn't supported in HIDL yet.
- c2_status_t status;
- Return<void> transStatus = base()->flush(
- [&status, flushedWork](
- Status s, const WorkBundle& wb) {
- status = static_cast<c2_status_t>(s);
- if (status != C2_OK) {
- ALOGE("flush -- call failed. "
- "Error code = %d", static_cast<int>(status));
- return;
- }
- status = objcpy(flushedWork, wb);
- });
- if (!transStatus.isOk()) {
- ALOGE("flush -- transaction failed.");
- return C2_TRANSACTION_FAILED;
- }
-
- // Indices of flushed work items.
- std::vector<uint64_t> flushedIndices;
- for (const std::unique_ptr<C2Work> &work : *flushedWork) {
- if (work) {
- if (work->worklets.empty()
- || !work->worklets.back()
- || (work->worklets.back()->output.flags &
- C2FrameData::FLAG_INCOMPLETE) == 0) {
- // input is complete
- flushedIndices.emplace_back(
- work->input.ordinal.frameIndex.peeku());
- }
- }
- }
-
- // Input buffers' lifetime management
- for (uint64_t flushedIndex : flushedIndices) {
- std::lock_guard<std::mutex> lock(mInputBuffersMutex);
- auto it = mInputBuffers.find(flushedIndex);
- if (it == mInputBuffers.end()) {
- ALOGV("flush -- returned consumed/unknown input frame: "
- "index %llu",
- (long long)flushedIndex);
- } else {
- ALOGV("flush -- returned unprocessed input frame: "
- "index %llu (containing %zu buffers)",
- (long long)flushedIndex, mInputBufferCount[flushedIndex]);
- mInputBuffers.erase(it);
- mInputBufferCount.erase(flushedIndex);
- }
- }
-
- // Output bufferqueue-based blocks' lifetime management
- mOutputBufferQueueMutex.lock();
- sp<IGraphicBufferProducer> igbp = mOutputIgbp;
- uint64_t bqId = mOutputBqId;
- uint32_t generation = mOutputGeneration;
- mOutputBufferQueueMutex.unlock();
-
- if (igbp) {
- holdBufferQueueBlocks(*flushedWork, igbp, bqId, generation);
- }
-
- return status;
-}
-
-c2_status_t Codec2Client::Component::drain(C2Component::drain_mode_t mode) {
- Return<Status> transStatus = base()->drain(
- mode == C2Component::DRAIN_COMPONENT_WITH_EOS);
- if (!transStatus.isOk()) {
- ALOGE("drain -- transaction failed.");
- return C2_TRANSACTION_FAILED;
- }
- c2_status_t status =
- static_cast<c2_status_t>(static_cast<Status>(transStatus));
- if (status != C2_OK) {
- ALOGE("drain -- call failed. "
- "Error code = %d", static_cast<int>(status));
- }
- return status;
-}
-
-c2_status_t Codec2Client::Component::start() {
- Return<Status> transStatus = base()->start();
- if (!transStatus.isOk()) {
- ALOGE("start -- transaction failed.");
- return C2_TRANSACTION_FAILED;
- }
- c2_status_t status =
- static_cast<c2_status_t>(static_cast<Status>(transStatus));
- if (status != C2_OK) {
- ALOGE("start -- call failed. "
- "Error code = %d", static_cast<int>(status));
- }
- return status;
-}
-
-c2_status_t Codec2Client::Component::stop() {
- Return<Status> transStatus = base()->stop();
- if (!transStatus.isOk()) {
- ALOGE("stop -- transaction failed.");
- return C2_TRANSACTION_FAILED;
- }
- c2_status_t status =
- static_cast<c2_status_t>(static_cast<Status>(transStatus));
- if (status != C2_OK) {
- ALOGE("stop -- call failed. "
- "Error code = %d", static_cast<int>(status));
- }
- mInputBuffersMutex.lock();
- mInputBuffers.clear();
- mInputBufferCount.clear();
- mInputBuffersMutex.unlock();
- return status;
-}
-
-c2_status_t Codec2Client::Component::reset() {
- Return<Status> transStatus = base()->reset();
- if (!transStatus.isOk()) {
- ALOGE("reset -- transaction failed.");
- return C2_TRANSACTION_FAILED;
- }
- c2_status_t status =
- static_cast<c2_status_t>(static_cast<Status>(transStatus));
- if (status != C2_OK) {
- ALOGE("reset -- call failed. "
- "Error code = %d", static_cast<int>(status));
- }
- mInputBuffersMutex.lock();
- mInputBuffers.clear();
- mInputBufferCount.clear();
- mInputBuffersMutex.unlock();
- return status;
-}
-
-c2_status_t Codec2Client::Component::release() {
- Return<Status> transStatus = base()->release();
- if (!transStatus.isOk()) {
- ALOGE("release -- transaction failed.");
- return C2_TRANSACTION_FAILED;
- }
- c2_status_t status =
- static_cast<c2_status_t>(static_cast<Status>(transStatus));
- if (status != C2_OK) {
- ALOGE("release -- call failed. "
- "Error code = %d", static_cast<int>(status));
- }
- mInputBuffersMutex.lock();
- mInputBuffers.clear();
- mInputBufferCount.clear();
- mInputBuffersMutex.unlock();
- return status;
-}
-
-c2_status_t Codec2Client::Component::setOutputSurface(
- C2BlockPool::local_id_t blockPoolId,
- const sp<IGraphicBufferProducer>& surface,
- uint32_t generation) {
- sp<HGraphicBufferProducer> igbp =
- surface->getHalInterface<HGraphicBufferProducer>();
- if (!igbp) {
- igbp = new TWGraphicBufferProducer<HGraphicBufferProducer>(surface);
- }
-
- Return<Status> transStatus = base()->setOutputSurface(
- static_cast<uint64_t>(blockPoolId), igbp);
- if (!transStatus.isOk()) {
- ALOGE("setOutputSurface -- transaction failed.");
- return C2_TRANSACTION_FAILED;
- }
- c2_status_t status =
- static_cast<c2_status_t>(static_cast<Status>(transStatus));
- if (status != C2_OK) {
- ALOGE("setOutputSurface -- call failed. "
- "Error code = %d", static_cast<int>(status));
- } else {
- std::lock_guard<std::mutex> lock(mOutputBufferQueueMutex);
- if (mOutputIgbp != surface) {
- mOutputIgbp = surface;
- if (!surface) {
- mOutputBqId = 0;
- } else if (surface->getUniqueId(&mOutputBqId) != OK) {
- ALOGE("setOutputSurface -- cannot obtain bufferqueue id.");
- }
- }
- mOutputGeneration = generation;
- }
- return status;
-}
-
-status_t Codec2Client::Component::queueToOutputSurface(
- const C2ConstGraphicBlock& block,
- const QueueBufferInput& input,
- QueueBufferOutput* output) {
- uint32_t generation;
- uint64_t bqId;
- int32_t bqSlot;
- if (!getBufferQueueAssignment(block, &generation, &bqId, &bqSlot) ||
- bqId == 0) {
- // Block not from bufferqueue -- it must be attached before queuing.
-
- mOutputBufferQueueMutex.lock();
- sp<IGraphicBufferProducer> outputIgbp = mOutputIgbp;
- uint32_t outputGeneration = mOutputGeneration;
- mOutputBufferQueueMutex.unlock();
-
- status_t status = !attachToBufferQueue(block,
- outputIgbp,
- outputGeneration,
- &bqSlot);
- if (status != OK) {
- ALOGW("queueToOutputSurface -- attaching failed.");
- return INVALID_OPERATION;
- }
-
- status = outputIgbp->queueBuffer(static_cast<int>(bqSlot),
- input, output);
- if (status != OK) {
- ALOGE("queueToOutputSurface -- queueBuffer() failed "
- "on non-bufferqueue-based block. "
- "Error code = %d.",
- static_cast<int>(status));
- return status;
- }
- return OK;
- }
-
- mOutputBufferQueueMutex.lock();
- sp<IGraphicBufferProducer> outputIgbp = mOutputIgbp;
- uint64_t outputBqId = mOutputBqId;
- uint32_t outputGeneration = mOutputGeneration;
- mOutputBufferQueueMutex.unlock();
-
- if (!outputIgbp) {
- ALOGV("queueToOutputSurface -- output surface is null.");
- return NO_INIT;
- }
-
- if (bqId != outputBqId) {
- ALOGV("queueToOutputSurface -- bufferqueue ids mismatch.");
- return DEAD_OBJECT;
- }
-
- if (generation != outputGeneration) {
- ALOGV("queueToOutputSurface -- generation numbers mismatch.");
- return DEAD_OBJECT;
- }
-
- status_t status = outputIgbp->queueBuffer(static_cast<int>(bqSlot),
- input, output);
- if (status != OK) {
- ALOGD("queueToOutputSurface -- queueBuffer() failed "
- "on bufferqueue-based block. "
- "Error code = %d.",
- static_cast<int>(status));
- return status;
- }
- if (!yieldBufferQueueBlock(block)) {
- ALOGD("queueToOutputSurface -- cannot yield bufferqueue-based block "
- "to the bufferqueue.");
- return UNKNOWN_ERROR;
- }
- return OK;
-}
-
-c2_status_t Codec2Client::Component::connectToOmxInputSurface(
- const sp<HGraphicBufferProducer>& producer,
- const sp<HGraphicBufferSource>& source) {
- Return<Status> transStatus = base()->connectToOmxInputSurface(
- producer, source);
- if (!transStatus.isOk()) {
- ALOGE("connectToOmxInputSurface -- transaction failed.");
- return C2_TRANSACTION_FAILED;
- }
- c2_status_t status =
- static_cast<c2_status_t>(static_cast<Status>(transStatus));
- if (status != C2_OK) {
- ALOGE("connectToOmxInputSurface -- call failed. "
- "Error code = %d", static_cast<int>(status));
- }
- return status;
-}
-
-c2_status_t Codec2Client::Component::disconnectFromInputSurface() {
- Return<Status> transStatus = base()->disconnectFromInputSurface();
- if (!transStatus.isOk()) {
- ALOGE("disconnectToInputSurface -- transaction failed.");
- return C2_TRANSACTION_FAILED;
- }
- c2_status_t status =
- static_cast<c2_status_t>(static_cast<Status>(transStatus));
- if (status != C2_OK) {
- ALOGE("disconnectFromInputSurface -- call failed. "
- "Error code = %d", static_cast<int>(status));
- }
- return status;
-}
-
-c2_status_t Codec2Client::Component::setDeathListener(
- const std::shared_ptr<Component>& component,
- const std::shared_ptr<Listener>& listener) {
-
- struct HidlDeathRecipient : public hardware::hidl_death_recipient {
- std::weak_ptr<Component> component;
- std::weak_ptr<Listener> base;
-
- virtual void serviceDied(
- uint64_t /* cookie */,
- const wp<::android::hidl::base::V1_0::IBase>& /* who */
- ) override {
- if (std::shared_ptr<Codec2Client::Listener> listener = base.lock()) {
- listener->onDeath(component);
- } else {
- ALOGW("onDeath -- listener died.");
- }
- }
- };
-
- sp<HidlDeathRecipient> deathRecipient = new HidlDeathRecipient();
- deathRecipient->base = listener;
- deathRecipient->component = component;
-
- component->mDeathRecipient = deathRecipient;
- Return<bool> transResult = component->base()->linkToDeath(
- component->mDeathRecipient, 0);
- if (!transResult.isOk()) {
- ALOGE("setDeathListener -- failed transaction: linkToDeath.");
- return C2_TRANSACTION_FAILED;
- }
- if (!static_cast<bool>(transResult)) {
- ALOGE("setDeathListener -- linkToDeath call failed.");
- return C2_CORRUPTED;
- }
- return C2_OK;
-}
-
-// Codec2Client::InputSurface
-
-Codec2Client::InputSurface::Base* Codec2Client::InputSurface::base() const {
- return static_cast<Base*>(mBase.get());
-}
-
-Codec2Client::InputSurface::InputSurface(const sp<IInputSurface>& base) :
- mBase(base),
- mGraphicBufferProducer(new
- ::android::hardware::graphics::bufferqueue::V1_0::utils::
- H2BGraphicBufferProducer(base)) {
-}
-
-c2_status_t Codec2Client::InputSurface::connectToComponent(
- const std::shared_ptr<Codec2Client::Component>& component,
- std::shared_ptr<Connection>* connection) {
- c2_status_t status;
- Return<void> transStatus = base()->connectToComponent(
- component->base(),
- [&status, connection](
- Status s,
- const sp<IInputSurfaceConnection>& c) {
- status = static_cast<c2_status_t>(s);
- if (status != C2_OK) {
- ALOGE("connectToComponent -- call failed. "
- "Error code = %d", static_cast<int>(status));
- return;
- }
- *connection = std::make_shared<Connection>(c);
- });
- if (!transStatus.isOk()) {
- ALOGE("connect -- transaction failed.");
- return C2_TRANSACTION_FAILED;
- }
- return status;
-}
-
-std::shared_ptr<Codec2Client::Configurable>
- Codec2Client::InputSurface::getConfigurable() const {
- Return<sp<IConfigurable>> transResult = base()->getConfigurable();
- if (!transResult.isOk()) {
- ALOGW("getConfigurable -- transaction failed.");
- return nullptr;
- }
- if (!static_cast<sp<IConfigurable>>(transResult)) {
- ALOGW("getConfigurable -- null pointer.");
- return nullptr;
- }
- return std::make_shared<Configurable>(transResult);
-}
-
-const sp<IGraphicBufferProducer>&
- Codec2Client::InputSurface::getGraphicBufferProducer() const {
- return mGraphicBufferProducer;
-}
-
-const sp<IInputSurface>& Codec2Client::InputSurface::getHalInterface() const {
- return mBase;
-}
-
-// Codec2Client::InputSurfaceConnection
-
-Codec2Client::InputSurfaceConnection::Base*
- Codec2Client::InputSurfaceConnection::base() const {
- return static_cast<Base*>(mBase.get());
-}
-
-Codec2Client::InputSurfaceConnection::InputSurfaceConnection(
- const sp<Codec2Client::InputSurfaceConnection::Base>& base) :
- mBase(base) {
-}
-
-c2_status_t Codec2Client::InputSurfaceConnection::disconnect() {
- Return<Status> transResult = base()->disconnect();
- return static_cast<c2_status_t>(static_cast<Status>(transResult));
-}
-
-} // namespace android
-
diff --git a/codec2/hidl/client/include/codec2/hidl/client.h b/codec2/hidl/client/include/codec2/hidl/client.h
deleted file mode 100644
index fb59ad6..0000000
--- a/codec2/hidl/client/include/codec2/hidl/client.h
+++ /dev/null
@@ -1,485 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef CODEC2_HIDL_CLIENT_H_
-#define CODEC2_HIDL_CLIENT_H_
-
-#include <gui/IGraphicBufferProducer.h>
-#include <codec2/hidl/1.0/types.h>
-
-#include <C2PlatformSupport.h>
-#include <C2Component.h>
-#include <C2Buffer.h>
-#include <C2Param.h>
-#include <C2.h>
-
-#include <hidl/HidlSupport.h>
-#include <utils/StrongPointer.h>
-
-#include <functional>
-#include <map>
-#include <memory>
-#include <mutex>
-
-/**
- * This file contains minimal interfaces for the framework to access Codec2.0.
- *
- * Codec2Client is the main class that contains the following inner classes:
- * - Listener
- * - Configurable
- * - Interface
- * - Component
- *
- * Classes in Codec2Client, interfaces in Codec2.0, and HIDL interfaces are
- * related as follows:
- * - Codec2Client <==> C2ComponentStore <==> IComponentStore
- * - Codec2Client::Listener <==> C2Component::Listener <==> IComponentListener
- * - Codec2Client::Configurable <==> [No equivalent] <==> IConfigurable
- * - Codec2Client::Interface <==> C2ComponentInterface <==> IComponentInterface
- * - Codec2Client::Component <==> C2Component <==> IComponent
- *
- * The entry point is Codec2Client::CreateFromService(), which creates a
- * Codec2Client object. From Codec2Client, Interface and Component objects can
- * be created by calling createComponent() and createInterface().
- *
- * createComponent() takes a Listener object, which must be implemented by the
- * user.
- *
- * At the present, createBlockPool() is the only method that yields a
- * Configurable object. Note, however, that Interface, Component and
- * Codec2Client are all subclasses of Configurable.
- */
-
-// Forward declaration of Codec2.0 HIDL interfaces
-namespace hardware {
-namespace google {
-namespace media {
-namespace c2 {
-namespace V1_0 {
-struct IConfigurable;
-struct IComponentInterface;
-struct IComponent;
-struct IComponentStore;
-struct IInputSurface;
-struct IInputSurfaceConnection;
-} // namespace V1_0
-} // namespace c2
-} // namespace media
-} // namespace google
-} // namespace hardware
-
-namespace android {
-namespace hardware {
-namespace media {
-namespace bufferpool {
-namespace V1_0 {
-struct IClientManager;
-} // namespace V1_0
-} // namespace bufferpool
-} // namespace media
-} // namespace hardware
-} // namespace android
-
-// Forward declarations of other classes
-namespace android {
-namespace hardware {
-namespace graphics {
-namespace bufferqueue {
-namespace V1_0 {
-struct IGraphicBufferProducer;
-} // namespace V1_0
-} // namespace bufferqueue
-} // namespace graphics
-namespace media {
-namespace omx {
-namespace V1_0 {
-struct IGraphicBufferSource;
-} // namespace V1_0
-} // namespace omx
-} // namespace media
-} // namespace hardware
-} // namespace android
-
-namespace android {
-
-// This class is supposed to be called Codec2Client::Configurable, but forward
-// declaration of an inner class is not possible.
-struct Codec2ConfigurableClient {
-
- typedef ::hardware::google::media::c2::V1_0::IConfigurable Base;
-
- const C2String& getName() const;
-
- c2_status_t query(
- const std::vector<C2Param*>& stackParams,
- const std::vector<C2Param::Index> &heapParamIndices,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2Param>>* const heapParams) const;
-
- c2_status_t config(
- const std::vector<C2Param*> ¶ms,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2SettingResult>>* const failures);
-
- c2_status_t querySupportedParams(
- std::vector<std::shared_ptr<C2ParamDescriptor>>* const params
- ) const;
-
- c2_status_t querySupportedValues(
- std::vector<C2FieldSupportedValuesQuery>& fields,
- c2_blocking_t mayBlock) const;
-
- // base cannot be null.
- Codec2ConfigurableClient(const sp<Base>& base);
-
-protected:
- C2String mName;
- sp<Base> mBase;
-
- Base* base() const;
-
- friend struct Codec2Client;
-};
-
-struct Codec2Client : public Codec2ConfigurableClient {
-
- typedef ::hardware::google::media::c2::V1_0::IComponentStore Base;
-
- struct Listener;
-
- typedef Codec2ConfigurableClient Configurable;
-
- typedef Configurable Interface; // These two types may diverge in the future.
-
- struct Component;
-
- struct InputSurface;
-
- struct InputSurfaceConnection;
-
- typedef Codec2Client Store;
-
- std::string getInstanceName() const { return mInstanceName; }
-
- c2_status_t createComponent(
- const C2String& name,
- const std::shared_ptr<Listener>& listener,
- std::shared_ptr<Component>* const component);
-
- c2_status_t createInterface(
- const C2String& name,
- std::shared_ptr<Interface>* const interface);
-
- c2_status_t createInputSurface(
- std::shared_ptr<InputSurface>* const inputSurface);
-
- const std::vector<C2Component::Traits>& listComponents() const;
-
- c2_status_t copyBuffer(
- const std::shared_ptr<C2Buffer>& src,
- const std::shared_ptr<C2Buffer>& dst);
-
- std::shared_ptr<C2ParamReflector> getParamReflector();
-
- static std::shared_ptr<Codec2Client> CreateFromService(
- const char* instanceName,
- bool waitForService = true);
-
- // Try to create a component with a given name from all known
- // IComponentStore services.
- static std::shared_ptr<Component> CreateComponentByName(
- const char* componentName,
- const std::shared_ptr<Listener>& listener,
- std::shared_ptr<Codec2Client>* owner = nullptr);
-
- // Try to create a component interface with a given name from all known
- // IComponentStore services.
- static std::shared_ptr<Interface> CreateInterfaceByName(
- const char* interfaceName,
- std::shared_ptr<Codec2Client>* owner = nullptr);
-
- // List traits from all known IComponentStore services.
- static const std::vector<C2Component::Traits>& ListComponents();
-
- // Create an input surface.
- static std::shared_ptr<InputSurface> CreateInputSurface();
-
- // base cannot be null.
- Codec2Client(const sp<Base>& base, std::string instanceName);
-
-protected:
- Base* base() const;
-
- // Finds the first store where the predicate returns OK, and returns the last
- // predicate result. Uses key to remember the last store found, and if cached,
- // it tries that store before trying all stores (one retry).
- static c2_status_t ForAllStores(
- const std::string& key,
- std::function<c2_status_t(const std::shared_ptr<Codec2Client>&)> predicate);
-
- mutable std::mutex mMutex;
- mutable bool mListed;
- std::string mInstanceName;
- mutable std::vector<C2Component::Traits> mTraitsList;
- mutable std::vector<std::unique_ptr<std::vector<std::string>>>
- mAliasesBuffer;
-
- sp<::android::hardware::media::bufferpool::V1_0::IClientManager>
- mHostPoolManager;
-};
-
-struct Codec2Client::Listener {
-
- // This is called when the component produces some output.
- //
- // numDiscardedInputBuffers is the number of input buffers contained in
- // workItems that have just become unused. Note that workItems may contain
- // more input buffers than numDiscardedInputBuffers because buffers that
- // have been previously reported by onInputBufferDone() are not counted
- // towards numDiscardedInputBuffers, but may still show up in workItems.
- virtual void onWorkDone(
- const std::weak_ptr<Component>& comp,
- std::list<std::unique_ptr<C2Work>>& workItems,
- size_t numDiscardedInputBuffers) = 0;
-
- // This is called when the component goes into a tripped state.
- virtual void onTripped(
- const std::weak_ptr<Component>& comp,
- const std::vector<std::shared_ptr<C2SettingResult>>& settingResults
- ) = 0;
-
- // This is called when the component encounters an error.
- virtual void onError(
- const std::weak_ptr<Component>& comp,
- uint32_t errorCode) = 0;
-
- // This is called when the process that hosts the component shuts down
- // unexpectedly.
- virtual void onDeath(
- const std::weak_ptr<Component>& comp) = 0;
-
- // This is called when an input buffer is no longer in use by the codec.
- // Input buffers that have been returned by onWorkDone() or flush() will not
- // trigger a call to this function.
- virtual void onInputBufferDone(
- const std::shared_ptr<C2Buffer>& buffer) = 0;
-
- // This structure is used for transporting onFramesRendered() event to the
- // client in the case where the output buffers are obtained from a
- // bufferqueue.
- struct RenderedFrame {
- // The id of the bufferqueue.
- uint64_t bufferQueueId;
- // The slot of the buffer inside the bufferqueue.
- int32_t slotId;
- // The timestamp.
- int64_t timestampNs;
-
- RenderedFrame(uint64_t bufferQueueId, int32_t slotId,
- int64_t timestampNs)
- : bufferQueueId(bufferQueueId),
- slotId(slotId),
- timestampNs(timestampNs) {}
- RenderedFrame(const RenderedFrame&) = default;
- };
-
- // This is called when the component becomes aware of frames being rendered.
- virtual void onFramesRendered(
- const std::vector<RenderedFrame>& renderedFrames) = 0;
-
- virtual ~Listener();
-
-};
-
-struct Codec2Client::Component : public Codec2Client::Configurable {
-
- typedef ::hardware::google::media::c2::V1_0::IComponent Base;
-
- c2_status_t createBlockPool(
- C2Allocator::id_t id,
- C2BlockPool::local_id_t* blockPoolId,
- std::shared_ptr<Configurable>* configurable);
-
- c2_status_t destroyBlockPool(
- C2BlockPool::local_id_t localId);
-
- c2_status_t queue(
- std::list<std::unique_ptr<C2Work>>* const items);
-
- c2_status_t flush(
- C2Component::flush_mode_t mode,
- std::list<std::unique_ptr<C2Work>>* const flushedWork);
-
- c2_status_t drain(C2Component::drain_mode_t mode);
-
- c2_status_t start();
-
- c2_status_t stop();
-
- c2_status_t reset();
-
- c2_status_t release();
-
- typedef ::android::
- IGraphicBufferProducer IGraphicBufferProducer;
- typedef IGraphicBufferProducer::
- QueueBufferInput QueueBufferInput;
- typedef IGraphicBufferProducer::
- QueueBufferOutput QueueBufferOutput;
-
- typedef ::android::hardware::graphics::bufferqueue::V1_0::
- IGraphicBufferProducer HGraphicBufferProducer;
- typedef ::android::hardware::media::omx::V1_0::
- IGraphicBufferSource HGraphicBufferSource;
-
- // Set the output surface to be used with a blockpool previously created by
- // createBlockPool().
- c2_status_t setOutputSurface(
- C2BlockPool::local_id_t blockPoolId,
- const sp<IGraphicBufferProducer>& surface,
- uint32_t generation);
-
- // Extract a slot number from of the block, then call
- // IGraphicBufferProducer::queueBuffer().
- //
- // If the output surface has not been set, NO_INIT will be returned.
- //
- // If the block does not come from a bufferqueue-based blockpool,
- // attachBuffer() will be called, followed by queueBuffer().
- //
- // If the block has a bqId that does not match the id of the output surface,
- // DEAD_OBJECT will be returned.
- //
- // If the call to queueBuffer() is successful but the block cannot be
- // associated to the output surface for automatic cancellation upon
- // destruction, UNKNOWN_ERROR will be returned.
- //
- // Otherwise, the return value from queueBuffer() will be returned.
- status_t queueToOutputSurface(
- const C2ConstGraphicBlock& block,
- const QueueBufferInput& input,
- QueueBufferOutput* output);
-
- c2_status_t connectToOmxInputSurface(
- const sp<HGraphicBufferProducer>& producer,
- const sp<HGraphicBufferSource>& source);
-
- c2_status_t disconnectFromInputSurface();
-
- // base cannot be null.
- Component(const sp<Base>& base);
-
- ~Component();
-
-protected:
- Base* base() const;
-
- // Mutex for mInputBuffers and mInputBufferCount.
- mutable std::mutex mInputBuffersMutex;
-
- // Map: frameIndex -> vector of bufferIndices
- //
- // mInputBuffers[frameIndex][bufferIndex] may be null if the buffer in that
- // slot has been freed.
- mutable std::map<uint64_t, std::vector<std::shared_ptr<C2Buffer>>>
- mInputBuffers;
-
- // Map: frameIndex -> number of bufferIndices that have not been freed
- //
- // mInputBufferCount[frameIndex] keeps track of the number of non-null
- // elements in mInputBuffers[frameIndex]. When mInputBufferCount[frameIndex]
- // decreases to 0, frameIndex can be removed from both mInputBuffers and
- // mInputBufferCount.
- mutable std::map<uint64_t, size_t> mInputBufferCount;
-
- ::hardware::google::media::c2::V1_0::utils::DefaultBufferPoolSender
- mBufferPoolSender;
-
- std::mutex mOutputBufferQueueMutex;
- sp<IGraphicBufferProducer> mOutputIgbp;
- uint64_t mOutputBqId;
- uint32_t mOutputGeneration;
-
- static c2_status_t setDeathListener(
- const std::shared_ptr<Component>& component,
- const std::shared_ptr<Listener>& listener);
- sp<::android::hardware::hidl_death_recipient> mDeathRecipient;
-
- friend struct Codec2Client;
-
- struct HidlListener;
- // Return the number of input buffers that should be discarded.
- size_t handleOnWorkDone(const std::list<std::unique_ptr<C2Work>> &workItems);
- // Remove an input buffer from mInputBuffers and return it.
- std::shared_ptr<C2Buffer> freeInputBuffer(uint64_t frameIndex, size_t bufferIndex);
-
-};
-
-struct Codec2Client::InputSurface {
-public:
- typedef ::hardware::google::media::c2::V1_0::IInputSurface Base;
-
- typedef ::hardware::google::media::c2::V1_0::IInputSurfaceConnection
- ConnectionBase;
-
- typedef Codec2Client::InputSurfaceConnection Connection;
-
- typedef ::android::IGraphicBufferProducer IGraphicBufferProducer;
-
- c2_status_t connectToComponent(
- const std::shared_ptr<Component>& component,
- std::shared_ptr<Connection>* connection);
-
- std::shared_ptr<Configurable> getConfigurable() const;
-
- const sp<IGraphicBufferProducer>& getGraphicBufferProducer() const;
-
- // Return the underlying IInputSurface.
- const sp<Base>& getHalInterface() const;
-
- // base cannot be null.
- InputSurface(const sp<Base>& base);
-
-protected:
- Base* base() const;
- sp<Base> mBase;
-
- sp<IGraphicBufferProducer> mGraphicBufferProducer;
-
- friend struct Codec2Client;
- friend struct Component;
-};
-
-struct Codec2Client::InputSurfaceConnection {
-
- typedef ::hardware::google::media::c2::V1_0::IInputSurfaceConnection Base;
-
- c2_status_t disconnect();
-
- // base cannot be null.
- InputSurfaceConnection(const sp<Base>& base);
-
-protected:
- Base* base() const;
- sp<Base> mBase;
-
- friend struct Codec2Client::InputSurface;
-};
-
-} // namespace android
-
-#endif // CODEC2_HIDL_CLIENT_H_
-
diff --git a/codec2/hidl/services/Android.bp b/codec2/hidl/services/Android.bp
deleted file mode 100644
index f2a177a..0000000
--- a/codec2/hidl/services/Android.bp
+++ /dev/null
@@ -1,92 +0,0 @@
-cc_binary {
- name: "hardware.google.media.c2@1.0-service",
- defaults: ["hidl_defaults"],
- soc_specific: true,
- relative_install_path: "hw",
- srcs: [
- "vendor.cpp",
- ],
-
- init_rc: ["hardware.google.media.c2@1.0-service.rc"],
-
- shared_libs: [
- "android.hardware.media.omx@1.0",
- "hardware.google.media.c2@1.0",
- "libavservices_minijail_vendor",
- "libbinder",
- "libcodec2_hidl_utils@1.0",
- "libhidlbase",
- "liblog",
- "libstagefright_codec2_vndk",
- "libstagefright_omx",
- "libstagefright_xmlparser",
- "libutils",
- ],
-
- arch: {
- arm: {
- required: ["codec2.vendor.base.policy"],
- },
- x86: {
- required: ["codec2.vendor.base.policy"],
- },
- },
-
- compile_multilib: "32",
-}
-
-cc_library_shared {
- name: "libcodec2_serviceregistrant",
- // need vendor version for update packaging, system version may have more dependencies
- vendor_available: true,
- srcs: [
- "C2SoftwareCodecServiceRegistrant.cpp",
- ],
-
- header_libs: [
- "libmedia_headers",
- ],
-
- shared_libs: [
- "hardware.google.media.c2@1.0",
- "liblog",
- "libcodec2_hidl_utils@1.0",
- "libstagefright_codec2_vndk",
- "libutils",
- ],
-
- // Codecs
- runtime_libs: [
- "libstagefright_soft_c2avcdec",
- "libstagefright_soft_c2avcenc",
- "libstagefright_soft_c2aacdec",
- "libstagefright_soft_c2aacenc",
- "libstagefright_soft_c2amrnbdec",
- "libstagefright_soft_c2amrnbenc",
- "libstagefright_soft_c2amrwbdec",
- "libstagefright_soft_c2amrwbenc",
- "libstagefright_soft_c2hevcdec",
- "libstagefright_soft_c2g711alawdec",
- "libstagefright_soft_c2g711mlawdec",
- "libstagefright_soft_c2mpeg2dec",
- "libstagefright_soft_c2h263dec",
- "libstagefright_soft_c2h263enc",
- "libstagefright_soft_c2mpeg4dec",
- "libstagefright_soft_c2mpeg4enc",
- "libstagefright_soft_c2mp3dec",
- "libstagefright_soft_c2vorbisdec",
- "libstagefright_soft_c2opusdec",
- "libstagefright_soft_c2vp8dec",
- "libstagefright_soft_c2vp9dec",
- "libstagefright_soft_c2vp8enc",
- "libstagefright_soft_c2vp9enc",
- "libstagefright_soft_c2rawdec",
- "libstagefright_soft_c2flacdec",
- "libstagefright_soft_c2flacenc",
- "libstagefright_soft_c2gsmdec",
- "libstagefright_soft_c2xaacdec",
- ],
-
- compile_multilib: "32",
-}
-
diff --git a/codec2/hidl/services/C2SoftwareCodecServiceRegistrant.cpp b/codec2/hidl/services/C2SoftwareCodecServiceRegistrant.cpp
deleted file mode 100644
index 04efa44..0000000
--- a/codec2/hidl/services/C2SoftwareCodecServiceRegistrant.cpp
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Copyright 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftwareCodecServiceRegistrant"
-
-#include <C2PlatformSupport.h>
-#include <codec2/hidl/1.0/ComponentStore.h>
-#include <media/CodecServiceRegistrant.h>
-#include <log/log.h>
-
-extern "C" void RegisterCodecServices() {
- using namespace ::hardware::google::media::c2::V1_0;
- android::sp<IComponentStore> store =
- new utils::ComponentStore(
- android::GetCodec2PlatformComponentStore());
- if (store == nullptr) {
- ALOGE("Cannot create Codec2's IComponentStore software service.");
- } else {
- if (store->registerAsService("software") != android::OK) {
- ALOGE("Cannot register Codec2's "
- "IComponentStore software service.");
- } else {
- ALOGI("Codec2's IComponentStore software service created.");
- }
- }
-}
-
diff --git a/codec2/hidl/services/hardware.google.media.c2@1.0-service.rc b/codec2/hidl/services/hardware.google.media.c2@1.0-service.rc
deleted file mode 100644
index 0640e6a..0000000
--- a/codec2/hidl/services/hardware.google.media.c2@1.0-service.rc
+++ /dev/null
@@ -1,7 +0,0 @@
-service hardware-google-media-c2-hal-1-0 /vendor/bin/hw/hardware.google.media.c2@1.0-service
- class hal
- user mediacodec
- group camera mediadrm drmrpc
- ioprio rt 4
- writepid /dev/cpuset/foreground/tasks
-
diff --git a/codec2/hidl/services/vendor.cpp b/codec2/hidl/services/vendor.cpp
deleted file mode 100644
index 149d4f9..0000000
--- a/codec2/hidl/services/vendor.cpp
+++ /dev/null
@@ -1,150 +0,0 @@
-/*
- * Copyright 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "hardware.google.media.c2@1.0-service"
-
-#include <codec2/hidl/1.0/ComponentStore.h>
-#include <hidl/HidlTransportSupport.h>
-#include <binder/ProcessState.h>
-#include <minijail.h>
-
-#include <C2Component.h>
-
-// OmxStore is added for visibility by dumpstate.
-#include <media/stagefright/omx/1.0/OmxStore.h>
-
-// This is created by module "codec2.vendor.base.policy". This can be modified.
-static constexpr char kBaseSeccompPolicyPath[] =
- "/vendor/etc/seccomp_policy/codec2.vendor.base.policy";
-
-// Additional device-specific seccomp permissions can be added in this file.
-static constexpr char kExtSeccompPolicyPath[] =
- "/vendor/etc/seccomp_policy/codec2.vendor.ext.policy";
-
-class DummyC2Store : public C2ComponentStore {
-public:
- DummyC2Store() = default;
-
- virtual ~DummyC2Store() override = default;
-
- virtual C2String getName() const override {
- return "default";
- }
-
- virtual c2_status_t createComponent(
- C2String /*name*/,
- std::shared_ptr<C2Component>* const /*component*/) override {
- return C2_NOT_FOUND;
- }
-
- virtual c2_status_t createInterface(
- C2String /* name */,
- std::shared_ptr<C2ComponentInterface>* const /* interface */) override {
- return C2_NOT_FOUND;
- }
-
- virtual std::vector<std::shared_ptr<const C2Component::Traits>>
- listComponents() override {
- return {};
- }
-
- virtual c2_status_t copyBuffer(
- std::shared_ptr<C2GraphicBuffer> /* src */,
- std::shared_ptr<C2GraphicBuffer> /* dst */) override {
- return C2_OMITTED;
- }
-
- virtual c2_status_t query_sm(
- const std::vector<C2Param*>& /* stackParams */,
- const std::vector<C2Param::Index>& /* heapParamIndices */,
- std::vector<std::unique_ptr<C2Param>>* const /* heapParams */) const override {
- return C2_OMITTED;
- }
-
- virtual c2_status_t config_sm(
- const std::vector<C2Param*>& /* params */,
- std::vector<std::unique_ptr<C2SettingResult>>* const /* failures */) override {
- return C2_OMITTED;
- }
-
- virtual std::shared_ptr<C2ParamReflector> getParamReflector() const override {
- return nullptr;
- }
-
- virtual c2_status_t querySupportedParams_nb(
- std::vector<std::shared_ptr<C2ParamDescriptor>>* const /* params */) const override {
- return C2_OMITTED;
- }
-
- virtual c2_status_t querySupportedValues_sm(
- std::vector<C2FieldSupportedValuesQuery>& /* fields */) const override {
- return C2_OMITTED;
- }
-};
-
-int main(int /* argc */, char** /* argv */) {
- ALOGD("hardware.google.media.c2@1.0-service starting...");
-
- signal(SIGPIPE, SIG_IGN);
- android::SetUpMinijail(kBaseSeccompPolicyPath, kExtSeccompPolicyPath);
-
- // vndbinder is needed by BufferQueue.
- android::ProcessState::initWithDriver("/dev/vndbinder");
- android::ProcessState::self()->startThreadPool();
-
- // Extra threads may be needed to handle a stacked IPC sequence that
- // contains alternating binder and hwbinder calls. (See b/35283480.)
- android::hardware::configureRpcThreadpool(8, true /* callerWillJoin */);
-
- // Create IComponentStore service.
- {
- using namespace ::hardware::google::media::c2::V1_0;
- android::sp<IComponentStore> store;
-
- // Vendor's TODO: Replace this with
- // store = new utils::ComponentStore(
- // /* implementation of C2ComponentStore */);
- ALOGD("Instantiating Codec2's dummy IComponentStore service...");
- store = new utils::ComponentStore(
- std::make_shared<DummyC2Store>());
-
- if (store == nullptr) {
- ALOGE("Cannot create Codec2's IComponentStore service.");
- } else {
- if (store->registerAsService("default") != android::OK) {
- ALOGE("Cannot register Codec2's "
- "IComponentStore service.");
- } else {
- ALOGI("Codec2's IComponentStore service created.");
- }
- }
- }
-
- // Register IOmxStore service.
- {
- using namespace ::android::hardware::media::omx::V1_0;
- android::sp<IOmxStore> omxStore = new implementation::OmxStore();
- if (omxStore == nullptr) {
- ALOGE("Cannot create IOmxStore HAL service.");
- } else if (omxStore->registerAsService() != android::OK) {
- ALOGE("Cannot register IOmxStore HAL service.");
- }
- }
-
- android::hardware::joinRpcThreadpool();
- return 0;
-}
diff --git a/codec2/include/C2.h b/codec2/include/C2.h
deleted file mode 100644
index ef3466d..0000000
--- a/codec2/include/C2.h
+++ /dev/null
@@ -1,552 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2_H_
-#define C2_H_
-
-#include <errno.h>
-
-#include <string>
-
-/** nanoseconds with arbitrary origin. */
-typedef int64_t c2_nsecs_t;
-
-/** \mainpage Codec2
- *
- * Codec2 is a generic frame-based data processing API.
- *
- * The media subsystem accesses components via the \ref API.
- */
-
-/** \ingroup API
- *
- * The Codec2 API defines the operation of data processing components and their interaction with
- * the rest of the system.
- *
- * Coding Conventions
- *
- * Mitigating Binary Compatibility.
- *
- * While full binary compatibility is not a goal of the API (due to our use of STL), we try to
- * mitigate binary breaks by adhering to the following conventions:
- *
- * - at most one vtable with placeholder virtual methods
- * - all optional/placeholder virtual methods returning a c2_status_t, with C2_OMITTED not requiring
- * any update to input/output arguments.
- * - limiting symbol export of inline methods
- * - use of pimpl (or shared-pimpl)
- *
- * Naming
- *
- * - all classes and types prefix with C2
- * - classes for internal use prefix with _C2
- * - enum values in global namespace prefix with C2_ all caps
- * - enum values inside classes have no C2_ prefix as class already has it
- * - supporting two kinds of enum naming: all-caps and kCamelCase
- * \todo revisit kCamelCase for param-type
- *
- * Aspects
- *
- * Aspects define certain common behavior across a group of objects.
- * - classes whose name matches _C2.*Aspect
- * - only protected constructors
- * - no desctructor and copiable
- * - all methods are inline or static (this is opposite of the interface paradigm where all methods
- * are virtual, which would not work due to the at most one vtable rule.)
- * - only private variables (this prevents subclasses interfering with the aspects.)
- */
-
-/// \defgroup types Common Types
-/// @{
-
-/**
- * C2String: basic string implementation
- */
-typedef std::string C2String;
-
-/**
- * C2StringLiteral: basic string literal implementation.
- * \note these are never owned by any object, and can only refer to C string literals.
- */
-typedef const char *C2StringLiteral;
-
-/**
- * c2_status_t: status codes used.
- */
-enum c2_status_t : int32_t {
-/*
- * Use POSIX errno constants.
- */
- C2_OK = 0, ///< operation completed successfully
-
- // bad input
- C2_BAD_VALUE = EINVAL, ///< argument has invalid value (user error)
- C2_BAD_INDEX = ENXIO, ///< argument uses invalid index (user error)
- C2_CANNOT_DO = ENOTSUP, ///< argument/index is valid but not possible
-
- // bad sequencing of events
- C2_DUPLICATE = EEXIST, ///< object already exists
- C2_NOT_FOUND = ENOENT, ///< object not found
- C2_BAD_STATE = EPERM, ///< operation is not permitted in the current state
- C2_BLOCKING = EWOULDBLOCK, ///< operation would block but blocking is not permitted
- C2_CANCELED = EINTR, ///< operation interrupted/canceled
-
- // bad environment
- C2_NO_MEMORY = ENOMEM, ///< not enough memory to complete operation
- C2_REFUSED = EACCES, ///< missing permission to complete operation
-
- C2_TIMED_OUT = ETIMEDOUT, ///< operation did not complete within timeout
-
- // bad versioning
- C2_OMITTED = ENOSYS, ///< operation is not implemented/supported (optional only)
-
- // unknown fatal
- C2_CORRUPTED = EFAULT, ///< some unexpected error prevented the operation
- C2_NO_INIT = ENODEV, ///< status has not been initialized
-};
-
-/**
- * Type that describes the desired blocking behavior for variable blocking calls. Blocking in this
- * API is used in a somewhat modified meaning such that operations that merely update variables
- * protected by mutexes are still considered "non-blocking" (always used in quotes).
- */
-enum c2_blocking_t : int32_t {
- /**
- * The operation SHALL be "non-blocking". This means that it shall not perform any file
- * operations, or call/wait on other processes. It may use a protected region as long as the
- * mutex is never used to protect code that is otherwise "may block".
- */
- C2_DONT_BLOCK = false,
- /**
- * The operation MAY be temporarily blocking.
- */
- C2_MAY_BLOCK = true,
-};
-
-/// @}
-
-/// \defgroup utils Utilities
-/// @{
-
-#define C2_DO_NOT_COPY(type) \
- type& operator=(const type &) = delete; \
- type(const type &) = delete; \
-
-#define C2_DEFAULT_MOVE(type) \
- type& operator=(type &&) = default; \
- type(type &&) = default; \
-
-#define C2_ALLOW_OVERFLOW __attribute__((no_sanitize("integer")))
-#define C2_CONST __attribute__((const))
-#define C2_HIDE __attribute__((visibility("hidden")))
-#define C2_INLINE inline C2_HIDE
-#define C2_INTERNAL __attribute__((internal_linkage))
-#define C2_PACK __attribute__((aligned(4)))
-#define C2_PURE __attribute__((pure))
-
-#define DEFINE_OTHER_COMPARISON_OPERATORS(type) \
- inline bool operator!=(const type &other) const { return !(*this == other); } \
- inline bool operator<=(const type &other) const { return (*this == other) || (*this < other); } \
- inline bool operator>=(const type &other) const { return !(*this < other); } \
- inline bool operator>(const type &other) const { return !(*this < other) && !(*this == other); }
-
-#define DEFINE_FIELD_BASED_COMPARISON_OPERATORS(type, field) \
- inline bool operator<(const type &other) const { return field < other.field; } \
- inline bool operator==(const type &other) const { return field == other.field; } \
- DEFINE_OTHER_COMPARISON_OPERATORS(type)
-
-#define DEFINE_FIELD_AND_MASK_BASED_COMPARISON_OPERATORS(type, field, mask) \
- inline bool operator<(const type &other) const { \
- return (field & mask) < (other.field & (mask)); \
- } \
- inline bool operator==(const type &other) const { \
- return (field & mask) == (other.field & (mask)); \
- } \
- DEFINE_OTHER_COMPARISON_OPERATORS(type)
-
-#define DEFINE_ENUM_OPERATORS(etype) \
- inline constexpr etype operator|(etype a, etype b) { return (etype)(std::underlying_type<etype>::type(a) | std::underlying_type<etype>::type(b)); } \
- inline constexpr etype &operator|=(etype &a, etype b) { a = (etype)(std::underlying_type<etype>::type(a) | std::underlying_type<etype>::type(b)); return a; } \
- inline constexpr etype operator&(etype a, etype b) { return (etype)(std::underlying_type<etype>::type(a) & std::underlying_type<etype>::type(b)); } \
- inline constexpr etype &operator&=(etype &a, etype b) { a = (etype)(std::underlying_type<etype>::type(a) & std::underlying_type<etype>::type(b)); return a; } \
- inline constexpr etype operator^(etype a, etype b) { return (etype)(std::underlying_type<etype>::type(a) ^ std::underlying_type<etype>::type(b)); } \
- inline constexpr etype &operator^=(etype &a, etype b) { a = (etype)(std::underlying_type<etype>::type(a) ^ std::underlying_type<etype>::type(b)); return a; } \
- inline constexpr etype operator~(etype a) { return (etype)(~std::underlying_type<etype>::type(a)); }
-
-template<typename T, typename B>
-class C2_HIDE c2_cntr_t;
-
-/// \cond INTERNAL
-
-/// \defgroup utils_internal
-/// @{
-
-template<typename T>
-struct C2_HIDE _c2_cntr_compat_helper {
- template<typename U, typename E=typename std::enable_if<std::is_integral<U>::value>::type>
- C2_ALLOW_OVERFLOW
- inline static constexpr T get(const U &value) {
- return T(value);
- }
-
- template<typename U, typename E=typename std::enable_if<(sizeof(U) >= sizeof(T))>::type>
- C2_ALLOW_OVERFLOW
- inline static constexpr T get(const c2_cntr_t<U, void> &value) {
- return T(value.mValue);
- }
-};
-
-/// @}
-
-/// \endcond
-
-/**
- * Integral counter type.
- *
- * This is basically an unsigned integral type that is NEVER checked for overflow/underflow - and
- * comparison operators are redefined.
- *
- * \note Comparison of counter types is not fully transitive, e.g.
- * it could be that a > b > c but a !> c.
- * std::less<>, greater<>, less_equal<> and greater_equal<> specializations yield total ordering,
- * but may not match semantic ordering of the values.
- *
- * Technically: counter types represent integer values: A * 2^N + value, where A can be arbitrary.
- * This makes addition, subtraction, multiplication (as well as bitwise operations) well defined.
- * However, division is in general not well defined, as the result may depend on A. This is also
- * true for logical operators and boolean conversion.
- *
- * Even though well defined, bitwise operators are not implemented for counter types as they are not
- * meaningful.
- */
-template<typename T, typename B=typename std::enable_if<std::is_integral<T>::value && std::is_unsigned<T>::value>::type>
-class C2_HIDE c2_cntr_t {
- using compat = _c2_cntr_compat_helper<T>;
-
- T mValue;
- constexpr static T HALF_RANGE = T(~0) ^ (T(~0) >> 1);
-
- template<typename U>
- friend struct _c2_cntr_compat_helper;
-public:
-
- /**
- * Default constructor. Initialized counter to 0.
- */
- inline constexpr c2_cntr_t() : mValue(T(0)) {}
-
- /**
- * Construct from a compatible type.
- */
- template<typename U>
- inline constexpr c2_cntr_t(const U &value) : mValue(compat::get(value)) {}
-
- /**
- * Peek as underlying signed type.
- */
- C2_ALLOW_OVERFLOW
- inline constexpr typename std::make_signed<T>::type peek() const {
- return static_cast<typename std::make_signed<T>::type>(mValue);
- }
-
- /**
- * Peek as underlying unsigned type.
- */
- inline constexpr T peeku() const {
- return mValue;
- }
-
- /**
- * Peek as long long - e.g. for printing.
- */
- C2_ALLOW_OVERFLOW
- inline constexpr long long peekll() const {
- return (long long)mValue;
- }
-
- /**
- * Peek as unsigned long long - e.g. for printing.
- */
- C2_ALLOW_OVERFLOW
- inline constexpr unsigned long long peekull() const {
- return (unsigned long long)mValue;
- }
-
- /**
- * Convert to a smaller counter type. This is always safe.
- */
- template<typename U, typename E=typename std::enable_if<(sizeof(U) < sizeof(T))>::type>
- inline constexpr operator c2_cntr_t<U>() {
- return c2_cntr_t<U>(mValue);
- }
-
- /**
- * Arithmetic operators
- */
-
-#define DEFINE_C2_CNTR_BINARY_OP(attrib, op, op_assign) \
- template<typename U> \
- attrib inline c2_cntr_t<T>& operator op_assign(const U &value) { \
- mValue op_assign compat::get(value); \
- return *this; \
- } \
- \
- template<typename U, typename E=decltype(compat::get(U(0)))> \
- attrib inline constexpr c2_cntr_t<T> operator op(const U &value) const { \
- return c2_cntr_t<T>(mValue op compat::get(value)); \
- } \
- \
- template<typename U, typename E=typename std::enable_if<(sizeof(U) < sizeof(T))>::type> \
- attrib inline constexpr c2_cntr_t<U> operator op(const c2_cntr_t<U> &value) const { \
- return c2_cntr_t<U>(U(mValue) op value.peeku()); \
- }
-
-#define DEFINE_C2_CNTR_UNARY_OP(attrib, op) \
- attrib inline constexpr c2_cntr_t<T> operator op() const { \
- return c2_cntr_t<T>(op mValue); \
- }
-
-#define DEFINE_C2_CNTR_CREMENT_OP(attrib, op) \
- attrib inline c2_cntr_t<T> &operator op() { \
- op mValue; \
- return *this; \
- } \
- attrib inline c2_cntr_t<T> operator op(int) { \
- return c2_cntr_t<T, void>(mValue op); \
- }
-
- DEFINE_C2_CNTR_BINARY_OP(C2_ALLOW_OVERFLOW, +, +=)
- DEFINE_C2_CNTR_BINARY_OP(C2_ALLOW_OVERFLOW, -, -=)
- DEFINE_C2_CNTR_BINARY_OP(C2_ALLOW_OVERFLOW, *, *=)
-
- DEFINE_C2_CNTR_UNARY_OP(C2_ALLOW_OVERFLOW, -)
- DEFINE_C2_CNTR_UNARY_OP(C2_ALLOW_OVERFLOW, +)
-
- DEFINE_C2_CNTR_CREMENT_OP(C2_ALLOW_OVERFLOW, ++)
- DEFINE_C2_CNTR_CREMENT_OP(C2_ALLOW_OVERFLOW, --)
-
- template<typename U, typename E=typename std::enable_if<std::is_unsigned<U>::value>::type>
- C2_ALLOW_OVERFLOW
- inline constexpr c2_cntr_t<T> operator<<(const U &value) const {
- return c2_cntr_t<T>(mValue << value);
- }
-
- template<typename U, typename E=typename std::enable_if<std::is_unsigned<U>::value>::type>
- C2_ALLOW_OVERFLOW
- inline c2_cntr_t<T> &operator<<=(const U &value) {
- mValue <<= value;
- return *this;
- }
-
- /**
- * Comparison operators
- */
- C2_ALLOW_OVERFLOW
- inline constexpr bool operator<=(const c2_cntr_t<T> &other) const {
- return T(other.mValue - mValue) < HALF_RANGE;
- }
-
- C2_ALLOW_OVERFLOW
- inline constexpr bool operator>=(const c2_cntr_t<T> &other) const {
- return T(mValue - other.mValue) < HALF_RANGE;
- }
-
- inline constexpr bool operator==(const c2_cntr_t<T> &other) const {
- return mValue == other.mValue;
- }
-
- inline constexpr bool operator!=(const c2_cntr_t<T> &other) const {
- return !(*this == other);
- }
-
- inline constexpr bool operator<(const c2_cntr_t<T> &other) const {
- return *this <= other && *this != other;
- }
-
- inline constexpr bool operator>(const c2_cntr_t<T> &other) const {
- return *this >= other && *this != other;
- }
-};
-
-template<typename U, typename T, typename E=typename std::enable_if<std::is_integral<U>::value>::type>
-inline constexpr c2_cntr_t<T> operator+(const U &a, const c2_cntr_t<T> &b) {
- return b + a;
-}
-
-template<typename U, typename T, typename E=typename std::enable_if<std::is_integral<U>::value>::type>
-inline constexpr c2_cntr_t<T> operator-(const U &a, const c2_cntr_t<T> &b) {
- return c2_cntr_t<T>(a) - b;
-}
-
-template<typename U, typename T, typename E=typename std::enable_if<std::is_integral<U>::value>::type>
-inline constexpr c2_cntr_t<T> operator*(const U &a, const c2_cntr_t<T> &b) {
- return b * a;
-}
-
-typedef c2_cntr_t<uint32_t> c2_cntr32_t; /** 32-bit counter type */
-typedef c2_cntr_t<uint64_t> c2_cntr64_t; /** 64-bit counter type */
-
-/// \cond INTERNAL
-
-/// \defgroup utils_internal
-/// @{
-
-template<typename... T> struct c2_types;
-
-/** specialization for a single type */
-template<typename T>
-struct c2_types<T> {
- typedef typename std::decay<T>::type wide_type;
- typedef wide_type narrow_type;
- typedef wide_type min_type; // type for min(T...)
-};
-
-/** specialization for two types */
-template<typename T, typename U>
-struct c2_types<T, U> {
- static_assert(std::is_floating_point<T>::value == std::is_floating_point<U>::value,
- "mixing floating point and non-floating point types is disallowed");
- static_assert(std::is_signed<T>::value == std::is_signed<U>::value,
- "mixing signed and unsigned types is disallowed");
-
- typedef typename std::decay<
- decltype(true ? std::declval<T>() : std::declval<U>())>::type wide_type;
- typedef typename std::decay<
- typename std::conditional<sizeof(T) < sizeof(U), T, U>::type>::type narrow_type;
- typedef typename std::conditional<
- std::is_signed<T>::value, wide_type, narrow_type>::type min_type;
-};
-
-/// @}
-
-/// \endcond
-
-/**
- * Type support utility class. Only supports similar classes, such as:
- * - all floating point
- * - all unsigned/all signed
- * - all pointer
- */
-template<typename T, typename U, typename... V>
-struct c2_types<T, U, V...> {
- /** Common type that accommodates all template parameter types. */
- typedef typename c2_types<typename c2_types<T, U>::wide_type, V...>::wide_type wide_type;
- /** Narrowest type of the template parameter types. */
- typedef typename c2_types<typename c2_types<T, U>::narrow_type, V...>::narrow_type narrow_type;
- /** Type that accommodates the minimum value for any input for the template parameter types. */
- typedef typename c2_types<typename c2_types<T, U>::min_type, V...>::min_type min_type;
-};
-
-/**
- * \ingroup utils_internal
- * specialization for two values */
-template<typename T, typename U>
-inline constexpr typename c2_types<T, U>::wide_type c2_max(const T a, const U b) {
- typedef typename c2_types<T, U>::wide_type wide_type;
- return ({ wide_type a_(a), b_(b); a_ > b_ ? a_ : b_; });
-}
-
-/**
- * Finds the maximum value of a list of "similarly typed" values.
- *
- * This is an extension to std::max where the types do not have to be identical, and the smallest
- * resulting type is used that accommodates the argument types.
- *
- * \note Value types must be similar, e.g. all floating point, all pointers, all signed, or all
- * unsigned.
- *
- * @return the largest of the input arguments.
- */
-template<typename T, typename U, typename... V>
-constexpr typename c2_types<T, U, V...>::wide_type c2_max(const T a, const U b, const V ... c) {
- typedef typename c2_types<T, U, V...>::wide_type wide_type;
- return ({ wide_type a_(a), b_(c2_max(b, c...)); a_ > b_ ? a_ : b_; });
-}
-
-/**
- * \ingroup utils_internal
- * specialization for two values */
-template<typename T, typename U>
-inline constexpr typename c2_types<T, U>::min_type c2_min(const T a, const U b) {
- typedef typename c2_types<T, U>::wide_type wide_type;
- return ({
- wide_type a_(a), b_(b);
- static_cast<typename c2_types<T, U>::min_type>(a_ < b_ ? a_ : b_);
- });
-}
-
-/**
- * Finds the minimum value of a list of "similarly typed" values.
- *
- * This is an extension to std::min where the types do not have to be identical, and the smallest
- * resulting type is used that accommodates the argument types.
- *
- * \note Value types must be similar, e.g. all floating point, all pointers, all signed, or all
- * unsigned.
- *
- * @return the smallest of the input arguments.
- */
-template<typename T, typename U, typename... V>
-constexpr typename c2_types<T, U, V...>::min_type c2_min(const T a, const U b, const V ... c) {
- typedef typename c2_types<U, V...>::min_type rest_type;
- typedef typename c2_types<T, rest_type>::wide_type wide_type;
- return ({
- wide_type a_(a), b_(c2_min(b, c...));
- static_cast<typename c2_types<T, rest_type>::min_type>(a_ < b_ ? a_ : b_);
- });
-}
-
-/**
- * \ingroup utils_internal
- */
-template<typename T, typename U, typename V>
-inline constexpr typename c2_types<T, V>::wide_type c2_clamp(const T a, const U b, const V c) {
- typedef typename c2_types<T, U, V>::wide_type wide_type;
- return ({
- wide_type a_(a), b_(b), c_(c);
- static_cast<typename c2_types<T, V>::wide_type>(b_ < a_ ? a_ : b_ > c_ ? c_ : b_);
- });
-}
-
-/// @}
-
-#include <functional>
-template<typename T>
-struct std::less<::c2_cntr_t<T>> {
- constexpr bool operator()(const ::c2_cntr_t<T> &lh, const ::c2_cntr_t<T> &rh) const {
- return lh.peeku() < rh.peeku();
- }
-};
-template<typename T>
-struct std::less_equal<::c2_cntr_t<T>> {
- constexpr bool operator()(const ::c2_cntr_t<T> &lh, const ::c2_cntr_t<T> &rh) const {
- return lh.peeku() <= rh.peeku();
- }
-};
-template<typename T>
-struct std::greater<::c2_cntr_t<T>> {
- constexpr bool operator()(const ::c2_cntr_t<T> &lh, const ::c2_cntr_t<T> &rh) const {
- return lh.peeku() > rh.peeku();
- }
-};
-template<typename T>
-struct std::greater_equal<::c2_cntr_t<T>> {
- constexpr bool operator()(const ::c2_cntr_t<T> &lh, const ::c2_cntr_t<T> &rh) const {
- return lh.peeku() >= rh.peeku();
- }
-};
-
-#endif // C2_H_
diff --git a/codec2/include/C2Buffer.h b/codec2/include/C2Buffer.h
deleted file mode 100644
index 2997f6e..0000000
--- a/codec2/include/C2Buffer.h
+++ /dev/null
@@ -1,2305 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2BUFFER_H_
-#define C2BUFFER_H_
-
-#include <C2.h>
-#include <C2BufferBase.h>
-#include <C2Param.h> // for C2Info
-
-#include <memory>
-#include <vector>
-
-#ifdef __ANDROID__
-#include <android-C2Buffer.h>
-#else
-
-typedef void* C2Handle;
-
-#endif
-
-/// \defgroup buffer Buffers
-/// @{
-
-/// \defgroup buffer_sync Synchronization
-/// @{
-
-/**
- * Synchronization is accomplished using event and fence objects.
- *
- * These are cross-process extensions of promise/future infrastructure.
- * Events are analogous to std::promise<void>, whereas fences are to std::shared_future<void>.
- *
- * Fences and events are shareable/copyable.
- *
- * Fences are used in two scenarios, and all copied instances refer to the same event.
- * \todo do events need to be copyable or should they be unique?
- *
- * acquire sync fence object: signaled when it is safe for the component or client to access
- * (the contents of) an object.
- *
- * release sync fence object: \todo
- *
- * Fences can be backed by hardware. Hardware fences are guaranteed to signal NO MATTER WHAT within
- * a short (platform specific) amount of time; this guarantee is usually less than 15 msecs.
- */
-
-/**
- * Fence object used by components and the framework.
- *
- * Implements the waiting for an event, analogous to a 'future'.
- *
- * To be implemented by vendors if using HW fences.
- */
-class C2Fence {
-public:
- /**
- * Waits for a fence to be signaled with a timeout.
- *
- * \todo a mechanism to cancel a wait - for now the only way to do this is to abandon the
- * event, but fences are shared so canceling a wait will cancel all waits.
- *
- * \param timeoutNs the maximum time to wait in nsecs
- *
- * \retval C2_OK the fence has been signaled
- * \retval C2_TIMED_OUT the fence has not been signaled within the timeout
- * \retval C2_BAD_STATE the fence has been abandoned without being signaled (it will never
- * be signaled)
- * \retval C2_REFUSED no permission to wait for the fence (unexpected - system)
- * \retval C2_CORRUPTED some unknown error prevented waiting for the fence (unexpected)
- */
- c2_status_t wait(c2_nsecs_t timeoutNs);
-
- /**
- * Used to check if this fence is valid (if there is a chance for it to be signaled.)
- * A fence becomes invalid if the controling event is destroyed without it signaling the fence.
- *
- * \return whether this fence is valid
- */
- bool valid() const;
-
- /**
- * Used to check if this fence has been signaled (is ready).
- *
- * \return whether this fence has been signaled
- */
- bool ready() const;
-
- /**
- * Returns a file descriptor that can be used to wait for this fence in a select system call.
- * \note The returned file descriptor, if valid, must be closed by the caller.
- *
- * This can be used in e.g. poll() system calls. This file becomes readable (POLLIN) when the
- * fence is signaled, and bad (POLLERR) if the fence is abandoned.
- *
- * \return a file descriptor representing this fence (with ownership), or -1 if the fence
- * has already been signaled (\todo or abandoned).
- *
- * \todo this must be compatible with fences used by gralloc
- */
- int fd() const;
-
- /**
- * Returns whether this fence is a hardware-backed fence.
- * \return whether this is a hardware fence
- */
- bool isHW() const;
-
- /**
- * Null-fence. A fence that has fired.
- */
- constexpr C2Fence() : mImpl(nullptr) { }
-
-private:
- class Impl;
- std::shared_ptr<Impl> mImpl;
- C2Fence(std::shared_ptr<Impl> impl);
- friend struct _C2FenceFactory;
-};
-
-/**
- * Event object used by components and the framework.
- *
- * Implements the signaling of an event, analogous to a 'promise'.
- *
- * Hardware backed events do not go through this object, and must be exposed directly as fences
- * by vendors.
- */
-class C2Event {
-public:
- /**
- * Returns a fence for this event.
- */
- C2Fence fence() const;
-
- /**
- * Signals (all) associated fence(s).
- * This has no effect no effect if the event was already signaled or abandoned.
- *
- * \retval C2_OK the fence(s) were successfully signaled
- * \retval C2_BAD_STATE the fence(s) have already been abandoned or merged (caller error)
- * \retval C2_DUPLICATE the fence(s) have already been signaled (caller error)
- * \retval C2_REFUSED no permission to signal the fence (unexpected - system)
- * \retval C2_CORRUPTED some unknown error prevented signaling the fence(s) (unexpected)
- */
- c2_status_t fire();
-
- /**
- * Trigger this event from the merging of the supplied fences. This means that it will be
- * abandoned if any of these fences have been abandoned, and it will be fired if all of these
- * fences have been signaled.
- *
- * \retval C2_OK the merging was successfully done
- * \retval C2_NO_MEMORY not enough memory to perform the merging
- * \retval C2_DUPLICATE the fence have already been merged (caller error)
- * \retval C2_BAD_STATE the fence have already been signaled or abandoned (caller error)
- * \retval C2_REFUSED no permission to merge the fence (unexpected - system)
- * \retval C2_CORRUPTED some unknown error prevented merging the fence(s) (unexpected)
- */
- c2_status_t merge(std::vector<C2Fence> fences);
-
- /**
- * Abandons the event and any associated fence(s).
- * \note Call this to explicitly abandon an event before it is destructed to avoid a warning.
- *
- * This has no effect no effect if the event was already signaled or abandoned.
- *
- * \retval C2_OK the fence(s) were successfully signaled
- * \retval C2_BAD_STATE the fence(s) have already been signaled or merged (caller error)
- * \retval C2_DUPLICATE the fence(s) have already been abandoned (caller error)
- * \retval C2_REFUSED no permission to abandon the fence (unexpected - system)
- * \retval C2_CORRUPTED some unknown error prevented signaling the fence(s) (unexpected)
- */
- c2_status_t abandon();
-
-private:
- class Impl;
- std::shared_ptr<Impl> mImpl;
-};
-
-/// \addtogroup buf_internal Internal
-/// @{
-
-/**
- * Interface for objects that encapsulate an updatable status value.
- */
-struct _C2InnateStatus {
- inline c2_status_t status() const { return mStatus; }
-
-protected:
- _C2InnateStatus(c2_status_t status) : mStatus(status) { }
-
- c2_status_t mStatus; // this status is updatable by the object
-};
-
-/// @}
-
-/**
- * This is a utility template for objects protected by an acquire fence, so that errors during
- * acquiring the object are propagated to the object itself.
- */
-template<typename T>
-class C2Acquirable : public C2Fence {
-public:
- /**
- * Acquires the object protected by an acquire fence. Any errors during the mapping will be
- * passed to the object.
- *
- * \return acquired object potentially invalidated if waiting for the fence failed.
- */
- T get() {
- // TODO:
- // wait();
- return mT;
- }
-
-protected:
- C2Acquirable(c2_status_t error, C2Fence fence, T t) : C2Fence(fence), mInitialError(error), mT(t) { }
-
-private:
- c2_status_t mInitialError;
- T mT; // TODO: move instead of copy
-};
-
-/// @}
-
-/// \defgroup linear Linear Data Blocks
-/// @{
-
-/**************************************************************************************************
- LINEAR ASPECTS, BLOCKS AND VIEWS
-**************************************************************************************************/
-
-/**
- * Basic segment math support.
- */
-struct C2Segment {
- uint32_t offset;
- uint32_t size;
-
- inline constexpr C2Segment(uint32_t offset_, uint32_t size_)
- : offset(offset_),
- size(size_) {
- }
-
- inline constexpr bool isEmpty() const {
- return size == 0;
- }
-
- inline constexpr bool isValid() const {
- return offset <= ~size;
- }
-
- inline constexpr operator bool() const {
- return isValid() && !isEmpty();
- }
-
- inline constexpr bool operator!() const {
- return !bool(*this);
- }
-
- C2_ALLOW_OVERFLOW
- inline constexpr bool contains(const C2Segment &other) const {
- if (!isValid() || !other.isValid()) {
- return false;
- } else {
- return offset <= other.offset
- && offset + size >= other.offset + other.size;
- }
- }
-
- inline constexpr bool operator==(const C2Segment &other) const {
- if (!isValid()) {
- return !other.isValid();
- } else {
- return offset == other.offset && size == other.size;
- }
- }
-
- inline constexpr bool operator!=(const C2Segment &other) const {
- return !operator==(other);
- }
-
- inline constexpr bool operator>=(const C2Segment &other) const {
- return contains(other);
- }
-
- inline constexpr bool operator>(const C2Segment &other) const {
- return contains(other) && !operator==(other);
- }
-
- inline constexpr bool operator<=(const C2Segment &other) const {
- return other.contains(*this);
- }
-
- inline constexpr bool operator<(const C2Segment &other) const {
- return other.contains(*this) && !operator==(other);
- }
-
- C2_ALLOW_OVERFLOW
- inline constexpr uint32_t end() const {
- return offset + size;
- }
-
- C2_ALLOW_OVERFLOW
- inline constexpr C2Segment intersect(const C2Segment &other) const {
- return C2Segment(c2_max(offset, other.offset),
- c2_min(end(), other.end()) - c2_max(offset, other.offset));
- }
-
- /** clamps end to offset if it overflows */
- inline constexpr C2Segment normalize() const {
- return C2Segment(offset, c2_max(offset, end()) - offset);
- }
-
- /** clamps end to max if it overflows */
- inline constexpr C2Segment saturate() const {
- return C2Segment(offset, c2_min(size, ~offset));
- }
-
-};
-
-/**
- * Common aspect for all objects that have a linear capacity.
- */
-class _C2LinearCapacityAspect {
-/// \name Linear capacity interface
-/// @{
-public:
- inline constexpr uint32_t capacity() const { return mCapacity; }
-
- inline constexpr operator C2Segment() const {
- return C2Segment(0, mCapacity);
- }
-
-protected:
-
-#if UINTPTR_MAX == 0xffffffff
- static_assert(sizeof(size_t) == sizeof(uint32_t), "size_t is too big");
-#else
- static_assert(sizeof(size_t) > sizeof(uint32_t), "size_t is too small");
- // explicitly disable construction from size_t
- inline explicit _C2LinearCapacityAspect(size_t capacity) = delete;
-#endif
-
- inline explicit constexpr _C2LinearCapacityAspect(uint32_t capacity)
- : mCapacity(capacity) { }
-
- inline explicit constexpr _C2LinearCapacityAspect(const _C2LinearCapacityAspect *parent)
- : mCapacity(parent == nullptr ? 0 : parent->capacity()) { }
-
-private:
- uint32_t mCapacity;
-/// @}
-};
-
-/**
- * Aspect for objects that have a linear range inside a linear capacity.
- *
- * This class is copiable.
- */
-class _C2LinearRangeAspect : public _C2LinearCapacityAspect {
-/// \name Linear range interface
-/// @{
-public:
- inline constexpr uint32_t offset() const { return mOffset; }
- inline constexpr uint32_t endOffset() const { return mOffset + mSize; }
- inline constexpr uint32_t size() const { return mSize; }
-
- inline constexpr operator C2Segment() const {
- return C2Segment(mOffset, mSize);
- }
-
-private:
- // subrange of capacity [0, capacity] & [size, size + offset]
- inline constexpr _C2LinearRangeAspect(uint32_t capacity_, size_t offset, size_t size)
- : _C2LinearCapacityAspect(capacity_),
- mOffset(c2_min(offset, capacity())),
- mSize(c2_min(size, capacity() - mOffset)) {
- }
-
-protected:
- // copy constructor (no error check)
- inline constexpr _C2LinearRangeAspect(const _C2LinearRangeAspect &other)
- : _C2LinearCapacityAspect(other.capacity()),
- mOffset(other.offset()),
- mSize(other.size()) {
- }
-
- // parent capacity range [0, capacity]
- inline constexpr explicit _C2LinearRangeAspect(const _C2LinearCapacityAspect *parent)
- : _C2LinearCapacityAspect(parent),
- mOffset(0),
- mSize(capacity()) {
- }
-
- // subrange of parent capacity [0, capacity] & [size, size + offset]
- inline constexpr _C2LinearRangeAspect(const _C2LinearCapacityAspect *parent, size_t offset, size_t size)
- : _C2LinearCapacityAspect(parent),
- mOffset(c2_min(offset, capacity())),
- mSize(c2_min(size, capacity() - mOffset)) {
- }
-
- // subsection of the parent's and [offset, offset + size] ranges
- inline constexpr _C2LinearRangeAspect(const _C2LinearRangeAspect *parent, size_t offset, size_t size)
- : _C2LinearCapacityAspect(parent),
- mOffset(c2_min(c2_max(offset, parent == nullptr ? 0 : parent->offset()), capacity())),
- mSize(std::min(c2_min(size, parent == nullptr ? 0 : parent->size()), capacity() - mOffset)) {
- }
-
-public:
- inline constexpr _C2LinearRangeAspect childRange(size_t offset, size_t size) const {
- return _C2LinearRangeAspect(
- mSize,
- c2_min(c2_max(offset, mOffset), capacity()) - mOffset,
- c2_min(c2_min(size, mSize), capacity() - c2_min(c2_max(offset, mOffset), capacity())));
- }
-
- friend class _C2EditableLinearRangeAspect;
- // invariants 0 <= mOffset <= mOffset + mSize <= capacity()
- uint32_t mOffset;
- uint32_t mSize;
-/// @}
-};
-
-/**
- * Utility class for safe range calculations using size_t-s.
- */
-class C2LinearRange : public _C2LinearRangeAspect {
-public:
- inline constexpr C2LinearRange(const _C2LinearCapacityAspect &parent, size_t offset, size_t size)
- : _C2LinearRangeAspect(&parent, offset, size) { }
-
- inline constexpr C2LinearRange(const _C2LinearRangeAspect &parent, size_t offset, size_t size)
- : _C2LinearRangeAspect(&parent, offset, size) { }
-
- inline constexpr C2LinearRange intersect(size_t offset, size_t size) const {
- return C2LinearRange(*this, offset, size);
- }
-};
-
-/**
- * Utility class for simple and safe capacity and range construction.
- */
-class C2LinearCapacity : public _C2LinearCapacityAspect {
-public:
- inline constexpr explicit C2LinearCapacity(size_t capacity)
- : _C2LinearCapacityAspect(c2_min(capacity, std::numeric_limits<uint32_t>::max())) { }
-
- inline constexpr C2LinearRange range(size_t offset, size_t size) const {
- return C2LinearRange(*this, offset, size);
- }
-};
-
-/**
- * Aspect for objects that have an editable linear range.
- *
- * This class is copiable.
- */
-class _C2EditableLinearRangeAspect : public _C2LinearRangeAspect {
- using _C2LinearRangeAspect::_C2LinearRangeAspect;
-
-public:
-/// \name Editable linear range interface
-/// @{
-
- /**
- * Sets the offset to |offset|, while trying to keep the end of the buffer unchanged (e.g.
- * size will grow if offset is decreased, and may shrink if offset is increased.) Returns
- * true if successful, which is equivalent to if 0 <= |offset| <= capacity().
- *
- * Note: setting offset and size will yield different result depending on the order of the
- * operations. Always set offset first to ensure proper size.
- */
- inline bool setOffset(uint32_t offset) {
- if (offset > capacity()) {
- return false;
- }
-
- if (offset > mOffset + mSize) {
- mSize = 0;
- } else {
- mSize = mOffset + mSize - offset;
- }
- mOffset = offset;
- return true;
- }
-
- /**
- * Sets the size to |size|. Returns true if successful, which is equivalent to
- * if 0 <= |size| <= capacity() - offset().
- *
- * Note: setting offset and size will yield different result depending on the order of the
- * operations. Always set offset first to ensure proper size.
- */
- inline bool setSize(uint32_t size) {
- if (size > capacity() - mOffset) {
- return false;
- } else {
- mSize = size;
- return true;
- }
- }
-
- /**
- * Sets the offset to |offset| with best effort. Same as setOffset() except that offset will
- * be clamped to the buffer capacity.
- *
- * Note: setting offset and size (even using best effort) will yield different result depending
- * on the order of the operations. Always set offset first to ensure proper size.
- */
- inline void setOffset_be(uint32_t offset) {
- (void)setOffset(c2_min(offset, capacity()));
- }
-
- /**
- * Sets the size to |size| with best effort. Same as setSize() except that the selected region
- * will be clamped to the buffer capacity (e.g. size is clamped to [0, capacity() - offset()]).
- *
- * Note: setting offset and size (even using best effort) will yield different result depending
- * on the order of the operations. Always set offset first to ensure proper size.
- */
- inline void setSize_be(uint32_t size) {
- mSize = c2_min(size, capacity() - mOffset);
- }
-/// @}
-};
-
-/**************************************************************************************************
- ALLOCATIONS
-**************************************************************************************************/
-
-/// \ingroup allocator Allocation and memory placement
-/// @{
-
-class C2LinearAllocation;
-class C2GraphicAllocation;
-
-/**
- * Allocators are used by the framework to allocate memory (allocations) for buffers. They can
- * support either 1D or 2D allocations.
- *
- * \note In theory they could support both, but in practice, we will use only one or the other.
- *
- * Never constructed on stack.
- *
- * Allocators are provided by vendors.
- */
-class C2Allocator {
-public:
- /**
- * Allocator ID type.
- */
- typedef uint32_t id_t;
- enum : id_t {
- BAD_ID = 0xBADD, // invalid allocator ID
- };
-
- /**
- * Allocation types. This is a bitmask and is used in C2Allocator::Info
- * to list the supported allocation types of an allocator.
- */
- enum type_t : uint32_t {
- LINEAR = 1 << 0, //
- GRAPHIC = 1 << 1,
- };
-
- /**
- * Information about an allocator.
- *
- * Allocators don't have a query API so all queriable information is stored here.
- */
- struct Traits {
- C2String name; ///< allocator name
- id_t id; ///< allocator ID
- type_t supportedTypes; ///< supported allocation types
- C2MemoryUsage minimumUsage; ///< usage that is minimally required for allocations
- C2MemoryUsage maximumUsage; ///< usage that is maximally allowed for allocations
- };
-
- /**
- * Returns the unique name of this allocator.
- *
- * This method MUST be "non-blocking" and return within 1ms.
- *
- * \return the name of this allocator.
- * \retval an empty string if there was not enough memory to allocate the actual name.
- */
- virtual C2String getName() const = 0;
-
- /**
- * Returns a unique ID for this allocator. This ID is used to get this allocator from the
- * allocator store, and to identify this allocator across all processes.
- *
- * This method MUST be "non-blocking" and return within 1ms.
- *
- * \return a unique ID for this allocator.
- */
- virtual id_t getId() const = 0;
-
- /**
- * Returns the allocator traits.
- *
- * This method MUST be "non-blocking" and return within 1ms.
- *
- * Allocators don't have a full-fledged query API, only this method.
- *
- * \return allocator information
- */
- virtual std::shared_ptr<const Traits> getTraits() const = 0;
-
- /**
- * Allocates a 1D allocation of given |capacity| and |usage|. If successful, the allocation is
- * stored in |allocation|. Otherwise, |allocation| is set to 'nullptr'.
- *
- * \param capacity the size of requested allocation (the allocation could be slightly
- * larger, e.g. to account for any system-required alignment)
- * \param usage the memory usage info for the requested allocation. \note that the
- * returned allocation may be later used/mapped with different usage.
- * The allocator should layout the buffer to be optimized for this usage,
- * but must support any usage. One exception: protected buffers can
- * only be used in a protected scenario.
- * \param allocation pointer to where the allocation shall be stored on success. nullptr
- * will be stored here on failure
- *
- * \retval C2_OK the allocation was successful
- * \retval C2_NO_MEMORY not enough memory to complete the allocation
- * \retval C2_TIMED_OUT the allocation timed out
- * \retval C2_REFUSED no permission to complete the allocation
- * \retval C2_BAD_VALUE capacity or usage are not supported (invalid) (caller error)
- * \retval C2_OMITTED this allocator does not support 1D allocations
- * \retval C2_CORRUPTED some unknown, unrecoverable error occured during allocation (unexpected)
- */
- virtual c2_status_t newLinearAllocation(
- uint32_t capacity __unused, C2MemoryUsage usage __unused,
- std::shared_ptr<C2LinearAllocation> *allocation /* nonnull */) {
- *allocation = nullptr;
- return C2_OMITTED;
- }
-
- /**
- * (Re)creates a 1D allocation from a native |handle|. If successful, the allocation is stored
- * in |allocation|. Otherwise, |allocation| is set to 'nullptr'.
- *
- * \param handle the handle for the existing allocation. On success, the allocation will
- * take ownership of |handle|.
- * \param allocation pointer to where the allocation shall be stored on success. nullptr
- * will be stored here on failure
- *
- * \retval C2_OK the allocation was recreated successfully
- * \retval C2_NO_MEMORY not enough memory to recreate the allocation
- * \retval C2_TIMED_OUT the recreation timed out (unexpected)
- * \retval C2_REFUSED no permission to recreate the allocation
- * \retval C2_BAD_VALUE invalid handle (caller error)
- * \retval C2_OMITTED this allocator does not support 1D allocations
- * \retval C2_CORRUPTED some unknown, unrecoverable error occured during allocation (unexpected)
- */
- virtual c2_status_t priorLinearAllocation(
- const C2Handle *handle __unused,
- std::shared_ptr<C2LinearAllocation> *allocation /* nonnull */) {
- *allocation = nullptr;
- return C2_OMITTED;
- }
-
- /**
- * Allocates a 2D allocation of given |width|, |height|, |format| and |usage|. If successful,
- * the allocation is stored in |allocation|. Otherwise, |allocation| is set to 'nullptr'.
- *
- * \param width the width of requested allocation (the allocation could be slightly
- * larger, e.g. to account for any system-required alignment)
- * \param height the height of requested allocation (the allocation could be slightly
- * larger, e.g. to account for any system-required alignment)
- * \param format the pixel format of requested allocation. This could be a vendor
- * specific format.
- * \param usage the memory usage info for the requested allocation. \note that the
- * returned allocation may be later used/mapped with different usage.
- * The allocator should layout the buffer to be optimized for this usage,
- * but must support any usage. One exception: protected buffers can
- * only be used in a protected scenario.
- * \param allocation pointer to where the allocation shall be stored on success. nullptr
- * will be stored here on failure
- *
- * \retval C2_OK the allocation was successful
- * \retval C2_NO_MEMORY not enough memory to complete the allocation
- * \retval C2_TIMED_OUT the allocation timed out
- * \retval C2_REFUSED no permission to complete the allocation
- * \retval C2_BAD_VALUE width, height, format or usage are not supported (invalid) (caller error)
- * \retval C2_OMITTED this allocator does not support 2D allocations
- * \retval C2_CORRUPTED some unknown, unrecoverable error occured during allocation (unexpected)
- */
- virtual c2_status_t newGraphicAllocation(
- uint32_t width __unused, uint32_t height __unused, uint32_t format __unused,
- C2MemoryUsage usage __unused,
- std::shared_ptr<C2GraphicAllocation> *allocation /* nonnull */) {
- *allocation = nullptr;
- return C2_OMITTED;
- }
-
- /**
- * (Re)creates a 2D allocation from a native handle. If successful, the allocation is stored
- * in |allocation|. Otherwise, |allocation| is set to 'nullptr'.
- *
- * \param handle the handle for the existing allocation. On success, the allocation will
- * take ownership of |handle|.
- * \param allocation pointer to where the allocation shall be stored on success. nullptr
- * will be stored here on failure
- *
- * \retval C2_OK the allocation was recreated successfully
- * \retval C2_NO_MEMORY not enough memory to recreate the allocation
- * \retval C2_TIMED_OUT the recreation timed out (unexpected)
- * \retval C2_REFUSED no permission to recreate the allocation
- * \retval C2_BAD_VALUE invalid handle (caller error)
- * \retval C2_OMITTED this allocator does not support 2D allocations
- * \retval C2_CORRUPTED some unknown, unrecoverable error occured during recreation (unexpected)
- */
- virtual c2_status_t priorGraphicAllocation(
- const C2Handle *handle __unused,
- std::shared_ptr<C2GraphicAllocation> *allocation /* nonnull */) {
- *allocation = nullptr;
- return C2_OMITTED;
- }
-
- virtual ~C2Allocator() = default;
-protected:
- C2Allocator() = default;
-};
-
-/**
- * \ingroup linear allocator
- * 1D allocation interface.
- */
-class C2LinearAllocation : public _C2LinearCapacityAspect {
-public:
- /**
- * Maps a portion of an allocation starting from |offset| with |size| into local process memory.
- * Stores the starting address into |addr|, or NULL if the operation was unsuccessful.
- * |fence| will contain an acquire sync fence object. If it is already
- * safe to access the buffer contents, then it will contain an empty (already fired) fence.
- *
- * \param offset starting position of the portion to be mapped (this does not have to
- * be page aligned)
- * \param size size of the portion to be mapped (this does not have to be page
- * aligned)
- * \param usage the desired usage. \todo this must be kSoftwareRead and/or
- * kSoftwareWrite.
- * \param fence a pointer to a fence object if an async mapping is requested. If
- * not-null, and acquire fence will be stored here on success, or empty
- * fence on failure. If null, the mapping will be synchronous.
- * \param addr a pointer to where the starting address of the mapped portion will be
- * stored. On failure, nullptr will be stored here.
- *
- * \todo Only one portion can be mapped at the same time - this is true for gralloc, but there
- * is no need for this for 1D buffers.
- * \todo Do we need to support sync operation as we could just wait for the fence?
- *
- * \retval C2_OK the operation was successful
- * \retval C2_REFUSED no permission to map the portion
- * \retval C2_TIMED_OUT the operation timed out
- * \retval C2_DUPLICATE if the allocation is already mapped.
- * \retval C2_NO_MEMORY not enough memory to complete the operation
- * \retval C2_BAD_VALUE the parameters (offset/size) are invalid or outside the allocation, or
- * the usage flags are invalid (caller error)
- * \retval C2_CORRUPTED some unknown error prevented the operation from completing (unexpected)
- */
- virtual c2_status_t map(
- size_t offset, size_t size, C2MemoryUsage usage, C2Fence *fence /* nullable */,
- void **addr /* nonnull */) = 0;
-
- /**
- * Unmaps a portion of an allocation at |addr| with |size|. These must be parameters previously
- * passed to and returned by |map|; otherwise, this operation is a no-op.
- *
- * \param addr starting address of the mapped region
- * \param size size of the mapped region
- * \param fence a pointer to a fence object if an async unmapping is requested. If
- * not-null, a release fence will be stored here on success, or empty fence
- * on failure. This fence signals when the original allocation contains
- * all changes that happened to the mapped region. If null, the unmapping
- * will be synchronous.
- *
- * \retval C2_OK the operation was successful
- * \retval C2_TIMED_OUT the operation timed out
- * \retval C2_NOT_FOUND if the allocation was not mapped previously.
- * \retval C2_BAD_VALUE the parameters (addr/size) do not correspond to previously mapped
- * regions (caller error)
- * \retval C2_CORRUPTED some unknown error prevented the operation from completing (unexpected)
- * \retval C2_REFUSED no permission to unmap the portion (unexpected - system)
- */
- virtual c2_status_t unmap(void *addr, size_t size, C2Fence *fence /* nullable */) = 0;
-
- /**
- * Returns the allocator ID for this allocation. This is useful to put the handle into context.
- */
- virtual C2Allocator::id_t getAllocatorId() const = 0;
-
- /**
- * Returns a pointer to the allocation handle.
- */
- virtual const C2Handle *handle() const = 0;
-
- /**
- * Returns true if this is the same allocation as |other|.
- */
- virtual bool equals(const std::shared_ptr<C2LinearAllocation> &other) const = 0;
-
-protected:
- // \todo should we limit allocation directly?
- C2LinearAllocation(size_t capacity) : _C2LinearCapacityAspect(c2_min(capacity, UINT32_MAX)) {}
- virtual ~C2LinearAllocation() = default;
-};
-
-class C2CircularBlock;
-class C2LinearBlock;
-class C2GraphicBlock;
-
-/**
- * Block pools are used by components to obtain output buffers in an efficient way. They can
- * support either linear (1D), circular (1D) or graphic (2D) blocks.
- *
- * Block pools decouple the recycling of memory/allocations from the components. They are meant to
- * be an opaque service (there are no public APIs other than obtaining blocks) provided by the
- * platform. Block pools are also meant to decouple allocations from memory used by buffers. This
- * is accomplished by allowing pools to allot multiple memory 'blocks' on a single allocation. As
- * their name suggest, block pools maintain a pool of memory blocks. When a component asks for
- * a memory block, pools will try to return a free memory block already in the pool. If no such
- * block exists, they will allocate memory using the backing allocator and allot a block on that
- * allocation. When blocks are no longer used in the system, they are recycled back to the block
- * pool and are available as free blocks.
- *
- * Never constructed on stack.
- */
-class C2BlockPool {
-public:
- /**
- * Block pool ID type.
- */
- typedef uint64_t local_id_t;
-
- enum : local_id_t {
- BASIC_LINEAR = 0, ///< ID of basic (unoptimized) block pool for fetching 1D blocks
- BASIC_GRAPHIC = 1, ///< ID of basic (unoptimized) block pool for fetching 2D blocks
- PLATFORM_START = 0x10,
- };
-
- /**
- * Returns the ID for this block pool. This ID is used to get this block pool from the platform.
- * It is only valid in the current process.
- *
- * This method MUST be "non-blocking" and return within 1ms.
- *
- * \return a local ID for this block pool.
- */
- virtual local_id_t getLocalId() const = 0;
-
- /**
- * Returns the ID of the backing allocator of this block pool.
- *
- * This method MUST be "non-blocking" and return within 1ms.
- *
- * \return the ID of the backing allocator of this block pool.
- */
- virtual C2Allocator::id_t getAllocatorId() const = 0;
-
- /**
- * Obtains a linear writeable block of given |capacity| and |usage|. If successful, the
- * block is stored in |block|. Otherwise, |block| is set to 'nullptr'.
- *
- * \param capacity the size of requested block.
- * \param usage the memory usage info for the requested block. Returned blocks will be
- * optimized for this usage, but may be used with any usage. One exception:
- * protected blocks/buffers can only be used in a protected scenario.
- * \param block pointer to where the obtained block shall be stored on success. nullptr will
- * be stored here on failure
- *
- * \retval C2_OK the operation was successful
- * \retval C2_NO_MEMORY not enough memory to complete any required allocation
- * \retval C2_TIMED_OUT the operation timed out
- * \retval C2_REFUSED no permission to complete any required allocation
- * \retval C2_BAD_VALUE capacity or usage are not supported (invalid) (caller error)
- * \retval C2_OMITTED this pool does not support linear blocks
- * \retval C2_CORRUPTED some unknown, unrecoverable error occured during operation (unexpected)
- */
- virtual c2_status_t fetchLinearBlock(
- uint32_t capacity __unused, C2MemoryUsage usage __unused,
- std::shared_ptr<C2LinearBlock> *block /* nonnull */) {
- *block = nullptr;
- return C2_OMITTED;
- }
-
- /**
- * Obtains a circular writeable block of given |capacity| and |usage|. If successful, the
- * block is stored in |block|. Otherwise, |block| is set to 'nullptr'.
- *
- * \param capacity the size of requested circular block. (note: the size of the obtained
- * block could be slightly larger, e.g. to accommodate any system-required
- * alignment)
- * \param usage the memory usage info for the requested block. Returned blocks will be
- * optimized for this usage, but may be used with any usage. One exception:
- * protected blocks/buffers can only be used in a protected scenario.
- * \param block pointer to where the obtained block shall be stored on success. nullptr
- * will be stored here on failure
- *
- * \retval C2_OK the operation was successful
- * \retval C2_NO_MEMORY not enough memory to complete any required allocation
- * \retval C2_TIMED_OUT the operation timed out
- * \retval C2_REFUSED no permission to complete any required allocation
- * \retval C2_BAD_VALUE capacity or usage are not supported (invalid) (caller error)
- * \retval C2_OMITTED this pool does not support circular blocks
- * \retval C2_CORRUPTED some unknown, unrecoverable error occured during operation (unexpected)
- */
- virtual c2_status_t fetchCircularBlock(
- uint32_t capacity __unused, C2MemoryUsage usage __unused,
- std::shared_ptr<C2CircularBlock> *block /* nonnull */) {
- *block = nullptr;
- return C2_OMITTED;
- }
-
- /**
- * Obtains a 2D graphic block of given |width|, |height|, |format| and |usage|. If successful,
- * the block is stored in |block|. Otherwise, |block| is set to 'nullptr'.
- *
- * \param width the width of requested block (the obtained block could be slightly larger, e.g.
- * to accommodate any system-required alignment)
- * \param height the height of requested block (the obtained block could be slightly larger,
- * e.g. to accommodate any system-required alignment)
- * \param format the pixel format of requested block. This could be a vendor specific format.
- * \param usage the memory usage info for the requested block. Returned blocks will be
- * optimized for this usage, but may be used with any usage. One exception:
- * protected blocks/buffers can only be used in a protected scenario.
- * \param block pointer to where the obtained block shall be stored on success. nullptr
- * will be stored here on failure
- *
- * \retval C2_OK the operation was successful
- * \retval C2_NO_MEMORY not enough memory to complete any required allocation
- * \retval C2_TIMED_OUT the operation timed out
- * \retval C2_REFUSED no permission to complete any required allocation
- * \retval C2_BAD_VALUE width, height, format or usage are not supported (invalid) (caller
- * error)
- * \retval C2_OMITTED this pool does not support 2D blocks
- * \retval C2_CORRUPTED some unknown, unrecoverable error occured during operation (unexpected)
- */
- virtual c2_status_t fetchGraphicBlock(
- uint32_t width __unused, uint32_t height __unused, uint32_t format __unused,
- C2MemoryUsage usage __unused,
- std::shared_ptr<C2GraphicBlock> *block /* nonnull */) {
- *block = nullptr;
- return C2_OMITTED;
- }
-
- virtual ~C2BlockPool() = default;
-protected:
- C2BlockPool() = default;
-};
-
-/// @}
-
-// ================================================================================================
-// BLOCKS
-// ================================================================================================
-
-/**
- * Blocks are sections of allocations. They can be either 1D or 2D.
- */
-
-class C2LinearAllocation;
-
-/**
- * A 1D block.
- *
- * \note capacity() is not meaningful for users of blocks; instead size() is the capacity of the
- * usable portion. Use and offset() and size() if accessing the block directly through its handle
- * to represent the allotted range of the underlying allocation to this block.
- */
-class C2Block1D : public _C2LinearRangeAspect {
-public:
- /**
- * Returns the underlying handle for this allocation.
- *
- * \note that the block and its block pool has shared ownership of the handle
- * and if all references to the block are released, the underlying block
- * allocation may get reused even if a client keeps a clone of this handle.
- */
- const C2Handle *handle() const;
-
- /**
- * Returns the allocator's ID that created the underlying allocation for this block. This
- * provides the context for understanding the handle.
- */
- C2Allocator::id_t getAllocatorId() const;
-
-protected:
- class Impl;
- /** construct a block. */
- C2Block1D(std::shared_ptr<Impl> impl, const _C2LinearRangeAspect &range);
-
- friend struct _C2BlockFactory;
- std::shared_ptr<Impl> mImpl;
-};
-
-/**
- * Read view provides read-only access for a linear memory segment.
- *
- * This class is copiable.
- */
-class C2ReadView : public _C2LinearCapacityAspect {
-public:
- /**
- * \return pointer to the start of the block or nullptr on error.
- * This pointer is only valid during the lifetime of this view or until it is released.
- */
- const uint8_t *data() const;
-
- /**
- * Returns a portion of this view.
- *
- * \param offset the start offset of the portion. \note This is clamped to the capacity of this
- * view.
- * \param size the size of the portion. \note This is clamped to the remaining data from offset.
- *
- * \return a read view containing a portion of this view
- */
- C2ReadView subView(size_t offset, size_t size) const;
-
- /**
- * \return error during the creation/mapping of this view.
- */
- c2_status_t error() const;
-
- /**
- * Releases this view. This sets error to C2_NO_INIT.
- */
- //void release();
-
-protected:
- class Impl;
- C2ReadView(std::shared_ptr<Impl> impl, uint32_t offset, uint32_t size);
- explicit C2ReadView(c2_status_t error);
-
-private:
- friend struct _C2BlockFactory;
- std::shared_ptr<Impl> mImpl;
- uint32_t mOffset; /**< offset into the linear block backing this read view */
-};
-
-/**
- * Write view provides read/write access for a linear memory segment.
- *
- * This class is copiable. \todo movable only?
- */
-class C2WriteView : public _C2EditableLinearRangeAspect {
-public:
- /**
- * Start of the block.
- *
- * \return pointer to the start of the block or nullptr on error.
- * This pointer is only valid during the lifetime of this view or until it is released.
- */
- uint8_t *base();
-
- /**
- * \return pointer to the block at the current offset or nullptr on error.
- * This pointer is only valid during the lifetime of this view or until it is released.
- */
- uint8_t *data();
-
- /**
- * \return error during the creation/mapping of this view.
- */
- c2_status_t error() const;
-
- /**
- * Releases this view. This sets error to C2_NO_INIT.
- */
- //void release();
-
-protected:
- class Impl;
- C2WriteView(std::shared_ptr<Impl> impl);
- explicit C2WriteView(c2_status_t error);
-
-private:
- friend struct _C2BlockFactory;
- std::shared_ptr<Impl> mImpl;
-};
-
-/**
- * A constant (read-only) linear block (portion of an allocation) with an acquire fence.
- * Blocks are unmapped when created, and can be mapped into a read view on demand.
- *
- * This class is copiable and contains a reference to the allocation that it is based on.
- */
-class C2ConstLinearBlock : public C2Block1D {
-public:
- /**
- * Maps this block into memory and returns a read view for it.
- *
- * \return a read view for this block.
- */
- C2Acquirable<C2ReadView> map() const;
-
- /**
- * Returns a portion of this block.
- *
- * \param offset the start offset of the portion. \note This is clamped to the capacity of this
- * block.
- * \param size the size of the portion. \note This is clamped to the remaining data from offset.
- *
- * \return a constant linear block containing a portion of this block
- */
- C2ConstLinearBlock subBlock(size_t offset, size_t size) const;
-
- /**
- * Returns the acquire fence for this block.
- *
- * \return a fence that must be waited on before reading the block.
- */
- C2Fence fence() const { return mFence; }
-
-protected:
- C2ConstLinearBlock(std::shared_ptr<Impl> impl, const _C2LinearRangeAspect &range, C2Fence mFence);
-
-private:
- friend struct _C2BlockFactory;
- C2Fence mFence;
-};
-
-/**
- * Linear block is a writeable 1D block. Once written, it can be shared in whole or in parts with
- * consumers/readers as read-only const linear block(s).
- */
-class C2LinearBlock : public C2Block1D {
-public:
- /**
- * Maps this block into memory and returns a write view for it.
- *
- * \return a write view for this block.
- */
- C2Acquirable<C2WriteView> map();
-
- /**
- * Creates a read-only const linear block for a portion of this block; optionally protected
- * by an acquire fence. There are two ways to use this:
- *
- * 1) share ready block after writing data into the block. In this case no fence shall be
- * supplied, and the block shall not be modified after calling this method.
- * 2) share block metadata before actually (finishing) writing the data into the block. In
- * this case a fence must be supplied that will be triggered when the data is written.
- * The block shall be modified only until firing the event for the fence.
- */
- C2ConstLinearBlock share(size_t offset, size_t size, C2Fence fence);
-
-protected:
- C2LinearBlock(std::shared_ptr<Impl> impl, const _C2LinearRangeAspect &range);
-
- friend struct _C2BlockFactory;
-};
-
-/// @}
-
-/**************************************************************************************************
- CIRCULAR BLOCKS AND VIEWS
-**************************************************************************************************/
-
-/// \defgroup circular Circular buffer support
-/// @{
-
-/**
- * Circular blocks can be used to share data between a writer and a reader (and/or other consumers)-
- * in a memory-efficient way by reusing a section of memory. Circular blocks are a bit more complex
- * than single reader/single writer schemes to facilitate block-based consuming of data.
- *
- * They can operate in two modes:
- *
- * 1) one writer that creates blocks to be consumed (this model can be used by components)
- *
- * 2) one writer that writes continuously, and one reader that can creates blocks to be consumed
- * by further recipients (this model is used by the framework, and cannot be used by components.)
- *
- * Circular blocks have four segments with running pointers:
- * - reserved: data reserved and available for the writer
- * - committed: data committed by the writer and available to the reader (if present)
- * - used: data used by consumers (if present)
- * - available: unused data available to be reserved
- */
-class C2CircularBlock : public C2Block1D {
- // TODO: add methods
-
-private:
- size_t mReserved __unused; // end of reserved section
- size_t mCommitted __unused; // end of committed section
- size_t mUsed __unused; // end of used section
- size_t mFree __unused; // end of free section
-};
-
-class _C2CircularBlockSegment : public _C2LinearCapacityAspect {
-public:
- /**
- * Returns the available size for this segment.
- *
- * \return currently available size for this segment
- */
- size_t available() const;
-
- /**
- * Reserve some space for this segment from its current start.
- *
- * \param size desired space in bytes
- * \param fence a pointer to an acquire fence. If non-null, the reservation is asynchronous and
- * a fence will be stored here that will be signaled when the reservation is
- * complete. If null, the reservation is synchronous.
- *
- * \retval C2_OK the space was successfully reserved
- * \retval C2_NO_MEMORY the space requested cannot be reserved
- * \retval C2_TIMED_OUT the reservation timed out \todo when?
- * \retval C2_CORRUPTED some unknown error prevented reserving space. (unexpected)
- */
- c2_status_t reserve(size_t size, C2Fence *fence /* nullable */);
-
- /**
- * Abandons a portion of this segment. This will move to the beginning of this segment.
- *
- * \note This methods is only allowed if this segment is producing blocks.
- *
- * \param size number of bytes to abandon
- *
- * \retval C2_OK the data was successfully abandoned
- * \retval C2_TIMED_OUT the operation timed out (unexpected)
- * \retval C2_CORRUPTED some unknown error prevented abandoning the data (unexpected)
- */
- c2_status_t abandon(size_t size);
-
- /**
- * Share a portion as block(s) with consumers (these are moved to the used section).
- *
- * \note This methods is only allowed if this segment is producing blocks.
- * \note Share does not move the beginning of the segment. (\todo add abandon/offset?)
- *
- * \param size number of bytes to share
- * \param fence fence to be used for the section
- * \param blocks vector where the blocks of the section are appended to
- *
- * \retval C2_OK the portion was successfully shared
- * \retval C2_NO_MEMORY not enough memory to share the portion
- * \retval C2_TIMED_OUT the operation timed out (unexpected)
- * \retval C2_CORRUPTED some unknown error prevented sharing the data (unexpected)
- */
- c2_status_t share(size_t size, C2Fence fence, std::vector<C2ConstLinearBlock> &blocks);
-
- /**
- * Returns the beginning offset of this segment from the start of this circular block.
- *
- * @return beginning offset
- */
- size_t begin();
-
- /**
- * Returns the end offset of this segment from the start of this circular block.
- *
- * @return end offset
- */
- size_t end();
-};
-
-/**
- * A circular write-view is a dynamic mapped view for a segment of a circular block. Care must be
- * taken when using this view so that only the section owned by the segment is modified.
- */
-class C2CircularWriteView : public _C2LinearCapacityAspect {
-public:
- /**
- * Start of the circular block.
- * \note the segment does not own this pointer.
- *
- * \return pointer to the start of the circular block or nullptr on error.
- */
- uint8_t *base();
-
- /**
- * \return error during the creation/mapping of this view.
- */
- c2_status_t error() const;
-};
-
-/**
- * The writer of a circular buffer.
- *
- * Can commit data to a reader (not supported for components) OR share data blocks directly with a
- * consumer.
- *
- * If a component supports outputting data into circular buffers, it must allocate a circular
- * block and use a circular writer.
- */
-class C2CircularWriter : public _C2CircularBlockSegment {
-public:
- /**
- * Commits a portion of this segment to the next segment. This moves the beginning of the
- * segment.
- *
- * \param size number of bytes to commit to the next segment
- * \param fence fence used for the commit (the fence must signal before the data is committed)
- */
- c2_status_t commit(size_t size, C2Fence fence);
-
- /**
- * Maps this block into memory and returns a write view for it.
- *
- * \return a write view for this block.
- */
- C2Acquirable<C2CircularWriteView> map();
-};
-
-/// @}
-
-/// \defgroup graphic Graphic Data Blocks
-/// @{
-
-/**
- * C2Rect: rectangle type with non-negative coordinates.
- *
- * \note This struct has public fields without getters/setters. All methods are inline.
- */
-struct C2Rect {
-// public:
- uint32_t width;
- uint32_t height;
- uint32_t left;
- uint32_t top;
-
- constexpr inline C2Rect()
- : C2Rect(0, 0, 0, 0) { }
-
- constexpr inline C2Rect(uint32_t width_, uint32_t height_)
- : C2Rect(width_, height_, 0, 0) { }
-
- constexpr C2Rect inline at(uint32_t left_, uint32_t top_) const {
- return C2Rect(width, height, left_, top_);
- }
-
- // utility methods
-
- inline constexpr bool isEmpty() const {
- return width == 0 || height == 0;
- }
-
- inline constexpr bool isValid() const {
- return left <= ~width && top <= ~height;
- }
-
- inline constexpr operator bool() const {
- return isValid() && !isEmpty();
- }
-
- inline constexpr bool operator!() const {
- return !bool(*this);
- }
-
- C2_ALLOW_OVERFLOW
- inline constexpr bool contains(const C2Rect &other) const {
- if (!isValid() || !other.isValid()) {
- return false;
- } else {
- return left <= other.left && top <= other.top
- && left + width >= other.left + other.width
- && top + height >= other.top + other.height;
- }
- }
-
- inline constexpr bool operator==(const C2Rect &other) const {
- if (!isValid()) {
- return !other.isValid();
- } else {
- return left == other.left && top == other.top
- && width == other.width && height == other.height;
- }
- }
-
- inline constexpr bool operator!=(const C2Rect &other) const {
- return !operator==(other);
- }
-
- inline constexpr bool operator>=(const C2Rect &other) const {
- return contains(other);
- }
-
- inline constexpr bool operator>(const C2Rect &other) const {
- return contains(other) && !operator==(other);
- }
-
- inline constexpr bool operator<=(const C2Rect &other) const {
- return other.contains(*this);
- }
-
- inline constexpr bool operator<(const C2Rect &other) const {
- return other.contains(*this) && !operator==(other);
- }
-
- C2_ALLOW_OVERFLOW
- inline constexpr uint32_t right() const {
- return left + width;
- }
-
- C2_ALLOW_OVERFLOW
- inline constexpr uint32_t bottom() const {
- return top + height;
- }
-
- C2_ALLOW_OVERFLOW
- inline constexpr C2Rect intersect(const C2Rect &other) const {
- return C2Rect(c2_min(right(), other.right()) - c2_max(left, other.left),
- c2_min(bottom(), other.bottom()) - c2_max(top, other.top),
- c2_max(left, other.left),
- c2_max(top, other.top));
- }
-
- /** clamps right and bottom to top, left if they overflow */
- inline constexpr C2Rect normalize() const {
- return C2Rect(c2_max(left, right()) - left, c2_max(top, bottom()) - top, left, top);
- }
-
-private:
- /// note: potentially unusual argument order
- constexpr inline C2Rect(uint32_t width_, uint32_t height_, uint32_t left_, uint32_t top_)
- : width(width_),
- height(height_),
- left(left_),
- top(top_) { }
-};
-
-/**
- * Interface for objects that have a width and height (planar capacity).
- */
-class _C2PlanarCapacityAspect {
-/// \name Planar capacity interface
-/// @{
-public:
- inline constexpr uint32_t width() const { return _mWidth; }
- inline constexpr uint32_t height() const { return _mHeight; }
-
- inline constexpr operator C2Rect() const {
- return C2Rect(_mWidth, _mHeight);
- }
-
-protected:
- inline constexpr _C2PlanarCapacityAspect(uint32_t width, uint32_t height)
- : _mWidth(width), _mHeight(height) { }
-
- inline explicit constexpr _C2PlanarCapacityAspect(const _C2PlanarCapacityAspect *parent)
- : _mWidth(parent == nullptr ? 0 : parent->width()),
- _mHeight(parent == nullptr ? 0 : parent->height()) { }
-
-private:
- uint32_t _mWidth;
- uint32_t _mHeight;
-/// @}
-};
-
-/**
- * C2PlaneInfo: information on the layout of a singe flexible plane.
- *
- * Public fields without getters/setters.
- */
-struct C2PlaneInfo {
-//public:
- enum channel_t : uint32_t {
- CHANNEL_Y, ///< luma
- CHANNEL_R, ///< red
- CHANNEL_G, ///< green
- CHANNEL_B, ///< blue
- CHANNEL_A, ///< alpha
- CHANNEL_CR, ///< Cr
- CHANNEL_CB, ///< Cb
- } channel;
-
- int32_t colInc; ///< column increment in bytes. may be negative
- int32_t rowInc; ///< row increment in bytes. may be negative
-
- uint32_t colSampling; ///< subsampling compared to width (must be a power of 2)
- uint32_t rowSampling; ///< subsampling compared to height (must be a power of 2)
-
- uint32_t allocatedDepth; ///< size of each sample (must be a multiple of 8)
- uint32_t bitDepth; ///< significant bits per sample
- /**
- * the right shift of the significant bits in the sample. E.g. if a 10-bit significant
- * value is laid out in a 16-bit allocation aligned to LSB (values 0-1023), rightShift
- * would be 0 as the 16-bit value read from the sample does not need to be right shifted
- * and can be used as is (after applying a 10-bit mask of 0x3FF).
- *
- * +--------+--------+
- * | VV|VVVVVVVV|
- * +--------+--------+
- * 15 8 7 0
- *
- * If the value is laid out aligned to MSB, rightShift would be 6, as the value read
- * from the allocated sample must be right-shifted by 6 to get the actual sample value.
- *
- * +--------+--------+
- * |VVVVVVVV|VV |
- * +--------+--------+
- * 15 8 7 0
- */
- uint32_t rightShift;
-
- enum endianness_t : uint32_t {
- NATIVE,
- LITTLE_END, // LITTLE_ENDIAN is reserved macro
- BIG_END, // BIG_ENDIAN is a reserved macro
- } endianness; ///< endianness of the samples
-
- /**
- * The following two fields define the relation between multiple planes. If multiple planes are
- * interleaved, they share a root plane (whichever plane's start address is the lowest), and
- * |offset| is the offset of this plane inside the root plane (in bytes). |rootIx| is the index
- * of the root plane. If a plane is independent, rootIx is its index and offset is 0.
- */
- uint32_t rootIx; ///< index of the root plane
- uint32_t offset; ///< offset of this plane inside of the root plane
-
- inline constexpr ssize_t minOffset(uint32_t width, uint32_t height) const {
- ssize_t offs = 0;
- if (width > 0 && colInc < 0) {
- offs += colInc * (ssize_t)(width - 1);
- }
- if (height > 0 && rowInc < 0) {
- offs += rowInc * (ssize_t)(height - 1);
- }
- return offs;
- }
-
- inline constexpr ssize_t maxOffset(uint32_t width, uint32_t height) const {
- ssize_t offs = (allocatedDepth + 7) >> 3;
- if (width > 0 && colInc > 0) {
- offs += colInc * (ssize_t)(width - 1);
- }
- if (height > 0 && rowInc > 0) {
- offs += rowInc * (ssize_t)(height - 1);
- }
- return offs;
- }
-} C2_PACK;
-
-struct C2PlanarLayout {
-//public:
- enum type_t : uint32_t {
- TYPE_UNKNOWN = 0,
- TYPE_YUV = 0x100, ///< YUV image with 3 planes
- TYPE_YUVA, ///< YUVA image with 4 planes
- TYPE_RGB, ///< RGB image with 3 planes
- TYPE_RGBA, ///< RBGA image with 4 planes
- };
-
- type_t type; // image type
- uint32_t numPlanes; // number of component planes
- uint32_t rootPlanes; // number of layout planes (root planes)
-
- enum plane_index_t : uint32_t {
- PLANE_Y = 0,
- PLANE_U = 1,
- PLANE_V = 2,
- PLANE_R = 0,
- PLANE_G = 1,
- PLANE_B = 2,
- PLANE_A = 3,
- MAX_NUM_PLANES = 4,
- };
-
- C2PlaneInfo planes[MAX_NUM_PLANES];
-};
-
-/**
- * Aspect for objects that have a planar section (crop rectangle).
- *
- * This class is copiable.
- */
-class _C2PlanarSectionAspect : public _C2PlanarCapacityAspect {
-/// \name Planar section interface
-/// @{
-private:
- inline constexpr _C2PlanarSectionAspect(uint32_t width, uint32_t height, const C2Rect &crop)
- : _C2PlanarCapacityAspect(width, height),
- mCrop(C2Rect(std::min(width - std::min(crop.left, width), crop.width),
- std::min(height - std::min(crop.top, height), crop.height)).at(
- std::min(crop.left, width),
- std::min(crop.height, height))) {
- }
-
-public:
- // crop can be an empty rect, does not have to line up with subsampling
- // NOTE: we do not support floating-point crop
- inline constexpr C2Rect crop() const { return mCrop; }
-
- /**
- * Returns a child planar section for |crop|, where the capacity represents this section.
- */
- inline constexpr _C2PlanarSectionAspect childSection(const C2Rect &crop) const {
- return _C2PlanarSectionAspect(
- mCrop.width, mCrop.height,
- // crop and translate |crop| rect
- C2Rect(c2_min(mCrop.right() - c2_clamp(mCrop.left, crop.left, mCrop.right()),
- crop.width),
- c2_min(mCrop.bottom() - c2_clamp(mCrop.top, crop.top, mCrop.bottom()),
- crop.height))
- .at(c2_clamp(mCrop.left, crop.left, mCrop.right()) - mCrop.left,
- c2_clamp(mCrop.top, crop.top, mCrop.bottom()) - mCrop.top));
- }
-
-protected:
- inline constexpr _C2PlanarSectionAspect(const _C2PlanarCapacityAspect *parent)
- : _C2PlanarCapacityAspect(parent), mCrop(width(), height()) {}
-
- inline constexpr _C2PlanarSectionAspect(const _C2PlanarCapacityAspect *parent, const C2Rect &crop)
- : _C2PlanarCapacityAspect(parent),
- mCrop(parent == nullptr ? C2Rect() : ((C2Rect)*parent).intersect(crop).normalize()) { }
-
- inline constexpr _C2PlanarSectionAspect(const _C2PlanarSectionAspect *parent, const C2Rect &crop)
- : _C2PlanarCapacityAspect(parent),
- mCrop(parent == nullptr ? C2Rect() : parent->crop().intersect(crop).normalize()) { }
-
-private:
- friend class _C2EditablePlanarSectionAspect;
- C2Rect mCrop;
-/// @}
-};
-
-/**
- * Aspect for objects that have an editable planar section (crop rectangle).
- *
- * This class is copiable.
- */
-class _C2EditablePlanarSectionAspect : public _C2PlanarSectionAspect {
-/// \name Planar section interface
-/// @{
- using _C2PlanarSectionAspect::_C2PlanarSectionAspect;
-
-public:
- // crop can be an empty rect, does not have to line up with subsampling
- // NOTE: we do not support floating-point crop
- inline constexpr C2Rect crop() const { return mCrop; }
-
- /**
- * Sets crop to crop intersected with [(0,0) .. (width, height)]
- */
- inline void setCrop_be(const C2Rect &crop) {
- mCrop.left = std::min(width(), crop.left);
- mCrop.top = std::min(height(), crop.top);
- // It's guaranteed that mCrop.left <= width() && mCrop.top <= height()
- mCrop.width = std::min(width() - mCrop.left, crop.width);
- mCrop.height = std::min(height() - mCrop.top, crop.height);
- }
-
- /**
- * If crop is within the dimensions of this object, it sets crop to it.
- *
- * \return true iff crop is within the dimensions of this object
- */
- inline bool setCrop(const C2Rect &crop) {
- if (width() < crop.width || height() < crop.height
- || width() - crop.width < crop.left || height() - crop.height < crop.top) {
- return false;
- }
- mCrop = crop;
- return true;
- }
-/// @}
-};
-
-/**
- * Utility class for safe range calculations using size_t-s.
- */
-class C2PlanarSection : public _C2PlanarSectionAspect {
-public:
- inline constexpr C2PlanarSection(const _C2PlanarCapacityAspect &parent, const C2Rect &crop)
- : _C2PlanarSectionAspect(&parent, crop) { }
-
- inline constexpr C2PlanarSection(const _C2PlanarSectionAspect &parent, const C2Rect &crop)
- : _C2PlanarSectionAspect(&parent, crop) { }
-
- inline constexpr C2PlanarSection intersect(const C2Rect &crop) const {
- return C2PlanarSection(*this, crop);
- }
-};
-
-/**
- * Utility class for simple and safe planar capacity and section construction.
- */
-class C2PlanarCapacity : public _C2PlanarCapacityAspect {
-public:
- inline constexpr explicit C2PlanarCapacity(size_t width, size_t height)
- : _C2PlanarCapacityAspect(c2_min(width, std::numeric_limits<uint32_t>::max()),
- c2_min(height, std::numeric_limits<uint32_t>::max())) { }
-
- inline constexpr C2PlanarSection section(const C2Rect &crop) const {
- return C2PlanarSection(*this, crop);
- }
-};
-
-
-/**
- * \ingroup graphic allocator
- * 2D allocation interface.
- */
-class C2GraphicAllocation : public _C2PlanarCapacityAspect {
-public:
- /**
- * Maps a rectangular section (as defined by |rect|) of a 2D allocation into local process
- * memory for flexible access. On success, it fills out |layout| with the plane specifications
- * and fills the |addr| array with pointers to the first byte of the top-left pixel of each
- * plane used. Otherwise, it leaves |layout| and |addr| untouched. |fence| will contain
- * an acquire sync fence object. If it is already safe to access the
- * buffer contents, then it will be an empty (already fired) fence.
- *
- * Safe regions for the pointer addresses returned can be gotten via C2LayoutInfo.minOffset()/
- * maxOffset().
- *
- * \param rect section to be mapped (this does not have to be aligned)
- * \param usage the desired usage. \todo this must be kSoftwareRead and/or
- * kSoftwareWrite.
- * \param fence a pointer to a fence object if an async mapping is requested. If
- * not-null, and acquire fence will be stored here on success, or empty
- * fence on failure. If null, the mapping will be synchronous.
- * \param layout a pointer to where the mapped planes' descriptors will be
- * stored. On failure, nullptr will be stored here.
- * \param addr pointer to an array with at least C2PlanarLayout::MAX_NUM_PLANES
- * elements. Only layout.numPlanes elements will be modified on success.
- *
- * \retval C2_OK the operation was successful
- * \retval C2_REFUSED no permission to map the section
- * \retval C2_DUPLICATE there is already a mapped region and this allocation cannot support
- * multi-mapping (caller error)
- * \retval C2_TIMED_OUT the operation timed out
- * \retval C2_NO_MEMORY not enough memory to complete the operation
- * \retval C2_BAD_VALUE the parameters (rect) are invalid or outside the allocation, or the
- * usage flags are invalid (caller error)
- * \retval C2_CORRUPTED some unknown error prevented the operation from completing (unexpected)
-
- */
- virtual c2_status_t map(
- C2Rect rect, C2MemoryUsage usage, C2Fence *fence,
- C2PlanarLayout *layout /* nonnull */, uint8_t **addr /* nonnull */) = 0;
-
- /**
- * Unmaps a section of an allocation at |addr| with |rect|. These must be parameters previously
- * passed to and returned by |map|; otherwise, this operation is a no-op.
- *
- * \param addr pointer to an array with at least C2PlanarLayout::MAX_NUM_PLANES
- * elements containing the starting addresses of the mapped layers
- * \param rect boundaries of the mapped section
- * \param fence a pointer to a fence object if an async unmapping is requested. If
- * not-null, a release fence will be stored here on success, or empty fence
- * on failure. This fence signals when the original allocation contains
- * all changes that happened to the mapped section. If null, the unmapping
- * will be synchronous.
- *
- * \retval C2_OK the operation was successful
- * \retval C2_TIMED_OUT the operation timed out
- * \retval C2_NOT_FOUND there is no such mapped region (caller error)
- * \retval C2_CORRUPTED some unknown error prevented the operation from completing (unexpected)
- * \retval C2_REFUSED no permission to unmap the section (unexpected - system)
- */
- virtual c2_status_t unmap(
- uint8_t **addr /* nonnull */, C2Rect rect, C2Fence *fence /* nullable */) = 0;
-
- /**
- * Returns the allocator ID for this allocation. This is useful to put the handle into context.
- */
- virtual C2Allocator::id_t getAllocatorId() const = 0;
-
- /**
- * Returns a pointer to the allocation handle.
- */
- virtual const C2Handle *handle() const = 0;
-
- /**
- * Returns true if this is the same allocation as |other|.
- */
- virtual bool equals(const std::shared_ptr<const C2GraphicAllocation> &other) const = 0;
-
-protected:
- using _C2PlanarCapacityAspect::_C2PlanarCapacityAspect;
- virtual ~C2GraphicAllocation() = default;
-};
-
-class C2GraphicAllocation;
-
-/**
- * A 2D block.
- *
- * \note width()/height() is not meaningful for users of blocks; instead, crop().width() and
- * crop().height() is the capacity of the usable portion. Use and crop() if accessing the block
- * directly through its handle to represent the allotted region of the underlying allocation to this
- * block.
- */
-class C2Block2D : public _C2PlanarSectionAspect {
-public:
- /**
- * Returns the underlying handle for this allocation.
- *
- * \note that the block and its block pool has shared ownership of the handle
- * and if all references to the block are released, the underlying block
- * allocation may get reused even if a client keeps a clone of this handle.
- */
- const C2Handle *handle() const;
-
- /**
- * Returns the allocator's ID that created the underlying allocation for this block. This
- * provides the context for understanding the handle.
- */
- C2Allocator::id_t getAllocatorId() const;
-
-protected:
- class Impl;
- C2Block2D(std::shared_ptr<Impl> impl, const _C2PlanarSectionAspect §ion);
-
- friend struct _C2BlockFactory;
- std::shared_ptr<Impl> mImpl;
-};
-
-/**
- * Graphic view provides read or read-write access for a graphic block.
- *
- * This class is copiable.
- *
- * \note Due to the subsampling of graphic buffers, a read view must still contain a crop rectangle
- * to ensure subsampling is followed. This results in nearly identical interface between read and
- * write views, so C2GraphicView can encompass both of them.
- */
-class C2GraphicView : public _C2EditablePlanarSectionAspect {
-public:
- /**
- * \return array of pointers (of layout().numPlanes elements) to the start of the planes or
- * nullptr on error. Regardless of crop rect, they always point to the top-left corner of each
- * plane. Access outside of the crop rect results in an undefined behavior.
- */
- const uint8_t *const *data() const;
-
- /**
- * \return array of pointers (of layout().numPlanes elements) to the start of the planes or
- * nullptr on error. Regardless of crop rect, they always point to the top-left corner of each
- * plane. Access outside of the crop rect results in an undefined behavior.
- */
- uint8_t *const *data();
-
- /**
- * \return layout of the graphic block to interpret the returned data.
- */
- const C2PlanarLayout layout() const;
-
- /**
- * Returns a section of this view.
- *
- * \param rect the dimension of the section. \note This is clamped to the crop of this view.
- *
- * \return a read view containing the requested section of this view
- */
- const C2GraphicView subView(const C2Rect &rect) const;
- C2GraphicView subView(const C2Rect &rect);
-
- /**
- * \return error during the creation/mapping of this view.
- */
- c2_status_t error() const;
-
-protected:
- class Impl;
- C2GraphicView(std::shared_ptr<Impl> impl, const _C2PlanarSectionAspect §ion);
- explicit C2GraphicView(c2_status_t error);
-
-private:
- friend struct _C2BlockFactory;
- std::shared_ptr<Impl> mImpl;
-};
-
-/**
- * A constant (read-only) graphic block (portion of an allocation) with an acquire fence.
- * Blocks are unmapped when created, and can be mapped into a read view on demand.
- *
- * This class is copiable and contains a reference to the allocation that it is based on.
- */
-class C2ConstGraphicBlock : public C2Block2D {
-public:
- /**
- * Maps this block into memory and returns a read view for it.
- *
- * \return a read view for this block.
- */
- C2Acquirable<const C2GraphicView> map() const;
-
- /**
- * Returns a section of this block.
- *
- * \param rect the coordinates of the section. \note This is clamped to the crop rectangle of
- * this block.
- *
- * \return a constant graphic block containing a portion of this block
- */
- C2ConstGraphicBlock subBlock(const C2Rect &rect) const;
-
- /**
- * Returns the acquire fence for this block.
- *
- * \return a fence that must be waited on before reading the block.
- */
- C2Fence fence() const { return mFence; }
-
-protected:
- C2ConstGraphicBlock(
- std::shared_ptr<Impl> impl, const _C2PlanarSectionAspect §ion, C2Fence fence);
-
-private:
- friend struct _C2BlockFactory;
- C2Fence mFence;
-};
-
-/**
- * Graphic block is a writeable 2D block. Once written, it can be shared in whole or in part with
- * consumers/readers as read-only const graphic block.
- */
-class C2GraphicBlock : public C2Block2D {
-public:
- /**
- * Maps this block into memory and returns a write view for it.
- *
- * \return a write view for this block.
- */
- C2Acquirable<C2GraphicView> map();
-
- /**
- * Creates a read-only const linear block for a portion of this block; optionally protected
- * by an acquire fence. There are two ways to use this:
- *
- * 1) share ready block after writing data into the block. In this case no fence shall be
- * supplied, and the block shall not be modified after calling this method.
- * 2) share block metadata before actually (finishing) writing the data into the block. In
- * this case a fence must be supplied that will be triggered when the data is written.
- * The block shall be modified only until firing the event for the fence.
- */
- C2ConstGraphicBlock share(const C2Rect &crop, C2Fence fence);
-
-protected:
- C2GraphicBlock(std::shared_ptr<Impl> impl, const _C2PlanarSectionAspect §ion);
-
- friend struct _C2BlockFactory;
-};
-
-/// @}
-
-/// \defgroup buffer_onj Buffer objects
-/// @{
-
-// ================================================================================================
-// BUFFERS
-// ================================================================================================
-
-/// \todo: Do we still need this?
-///
-// There are 2 kinds of buffers: linear or graphic. Linear buffers can contain a single block, or
-// a list of blocks (LINEAR_CHUNKS). Support for list of blocks is optional, and can allow consuming
-// data from circular buffers or scattered data sources without extra memcpy. Currently, list of
-// graphic blocks is not supported.
-
-class C2LinearBuffer; // read-write buffer
-class C2GraphicBuffer; // read-write buffer
-class C2LinearChunksBuffer;
-
-/**
- * C2BufferData: the main, non-meta data of a buffer. A buffer can contain either linear blocks
- * or graphic blocks, and can contain either a single block or multiple blocks. This is determined
- * by its type.
- */
-class C2BufferData {
-public:
- /**
- * The type of buffer data.
- */
- enum type_t : uint32_t {
- INVALID, ///< invalid buffer type. Do not use.
- LINEAR, ///< the buffer contains a single linear block
- LINEAR_CHUNKS, ///< the buffer contains one or more linear blocks
- GRAPHIC, ///< the buffer contains a single graphic block
- GRAPHIC_CHUNKS, ///< the buffer contains one of more graphic blocks
- };
- typedef type_t Type; // deprecated
-
- /**
- * Gets the type of this buffer (data).
- * \return the type of this buffer data.
- */
- type_t type() const;
-
- /**
- * Gets the linear blocks of this buffer.
- * \return a constant list of const linear blocks of this buffer.
- * \retval empty list if this buffer does not contain linear block(s).
- */
- const std::vector<C2ConstLinearBlock> linearBlocks() const;
-
- /**
- * Gets the graphic blocks of this buffer.
- * \return a constant list of const graphic blocks of this buffer.
- * \retval empty list if this buffer does not contain graphic block(s).
- */
- const std::vector<C2ConstGraphicBlock> graphicBlocks() const;
-
-private:
- class Impl;
- std::shared_ptr<Impl> mImpl;
-
-protected:
- // no public constructor
- explicit C2BufferData(const std::vector<C2ConstLinearBlock> &blocks);
- explicit C2BufferData(const std::vector<C2ConstGraphicBlock> &blocks);
-};
-
-/**
- * C2Buffer: buffer base class. These are always used as shared_ptrs. Though the underlying buffer
- * objects (native buffers, ion buffers, or dmabufs) are reference-counted by the system,
- * C2Buffers hold only a single reference.
- *
- * These objects cannot be used on the stack.
- */
-class C2Buffer {
-public:
- /**
- * Gets the buffer's data.
- *
- * \return the buffer's data.
- */
- const C2BufferData data() const;
-
- /**
- * These will still work if used in onDeathNotify.
- */
-#if 0
- inline std::shared_ptr<C2LinearBuffer> asLinearBuffer() const {
- return mType == LINEAR ? std::shared_ptr::reinterpret_cast<C2LinearBuffer>(this) : nullptr;
- }
-
- inline std::shared_ptr<C2GraphicBuffer> asGraphicBuffer() const {
- return mType == GRAPHIC ? std::shared_ptr::reinterpret_cast<C2GraphicBuffer>(this) : nullptr;
- }
-
- inline std::shared_ptr<C2CircularBuffer> asCircularBuffer() const {
- return mType == CIRCULAR ? std::shared_ptr::reinterpret_cast<C2CircularBuffer>(this) : nullptr;
- }
-#endif
-
- ///@name Pre-destroy notification handling
- ///@{
-
- /**
- * Register for notification just prior to the destruction of this object.
- */
- typedef void (*OnDestroyNotify) (const C2Buffer *buf, void *arg);
-
- /**
- * Registers for a pre-destroy notification. This is called just prior to the destruction of
- * this buffer (when this buffer is no longer valid.)
- *
- * \param onDestroyNotify the notification callback
- * \param arg an arbitrary parameter passed to the callback
- *
- * \retval C2_OK the registration was successful.
- * \retval C2_DUPLICATE a notification was already registered for this callback and argument
- * \retval C2_NO_MEMORY not enough memory to register for this callback
- * \retval C2_CORRUPTED an unknown error prevented the registration (unexpected)
- */
- c2_status_t registerOnDestroyNotify(OnDestroyNotify onDestroyNotify, void *arg = nullptr);
-
- /**
- * Unregisters a previously registered pre-destroy notification.
- *
- * \param onDestroyNotify the notification callback
- * \param arg an arbitrary parameter passed to the callback
- *
- * \retval C2_OK the unregistration was successful.
- * \retval C2_NOT_FOUND the notification was not found
- * \retval C2_CORRUPTED an unknown error prevented the registration (unexpected)
- */
- c2_status_t unregisterOnDestroyNotify(OnDestroyNotify onDestroyNotify, void *arg = nullptr);
-
- ///@}
-
- virtual ~C2Buffer() = default;
-
- ///@name Buffer-specific arbitrary metadata handling
- ///@{
-
- /**
- * Gets the list of metadata associated with this buffer.
- *
- * \return a constant list of info objects associated with this buffer.
- */
- const std::vector<std::shared_ptr<const C2Info>> info() const;
-
- /**
- * Attaches (or updates) an (existing) metadata for this buffer.
- * If the metadata is stream specific, the stream information will be reset.
- *
- * \param info Metadata to update
- *
- * \retval C2_OK the metadata was successfully attached/updated.
- * \retval C2_NO_MEMORY not enough memory to attach the metadata (this return value is not
- * used if the same kind of metadata is already attached to the buffer).
- */
- c2_status_t setInfo(const std::shared_ptr<C2Info> &info);
-
- /**
- * Checks if there is a certain type of metadata attached to this buffer.
- *
- * \param index the parameter type of the metadata
- *
- * \return true iff there is a metadata with the parameter type attached to this buffer.
- */
- bool hasInfo(C2Param::Type index) const;
-
- /**
- * Checks if there is a certain type of metadata attached to this buffer, and returns a
- * shared pointer to it if there is. Returns an empty shared pointer object (nullptr) if there
- * is not.
- *
- * \param index the parameter type of the metadata
- *
- * \return shared pointer to the metadata.
- */
- std::shared_ptr<const C2Info> getInfo(C2Param::Type index) const;
-
- /**
- * Removes a metadata from the buffer.
- */
- std::shared_ptr<C2Info> removeInfo(C2Param::Type index);
- ///@}
-
- /**
- * Creates a buffer containing a single linear block.
- *
- * \param block the content of the buffer.
- *
- * \return shared pointer to the created buffer.
- */
- static std::shared_ptr<C2Buffer> CreateLinearBuffer(const C2ConstLinearBlock &block);
-
- /**
- * Creates a buffer containing a single graphic block.
- *
- * \param block the content of the buffer.
- *
- * \return shared pointer to the created buffer.
- */
- static std::shared_ptr<C2Buffer> CreateGraphicBuffer(const C2ConstGraphicBlock &block);
-
-
-
-protected:
- // no public constructor
- explicit C2Buffer(const std::vector<C2ConstLinearBlock> &blocks);
- explicit C2Buffer(const std::vector<C2ConstGraphicBlock> &blocks);
-
-private:
- class Impl;
- std::shared_ptr<Impl> mImpl;
-// Type _mType;
-};
-
-/**
- * An extension of C2Info objects that can contain arbitrary buffer data.
- *
- * \note This object is not describable and contains opaque data.
- */
-class C2InfoBuffer {
-public:
- /**
- * Gets the index of this info object.
- *
- * \return the parameter index.
- */
- const C2Param::Index index() const;
-
- /**
- * Gets the buffer's data.
- *
- * \return the buffer's data.
- */
- const C2BufferData data() const;
-};
-
-/// @}
-
-/// \cond INTERNAL
-
-/// \todo These are no longer used
-
-/// \addtogroup linear
-/// @{
-
-/** \deprecated */
-class C2LinearBuffer
- : public C2Buffer, public _C2LinearRangeAspect,
- public std::enable_shared_from_this<C2LinearBuffer> {
-public:
- /** \todo what is this? */
- const C2Handle *handle() const;
-
-protected:
- inline C2LinearBuffer(const C2ConstLinearBlock &block);
-
-private:
- class Impl;
- Impl *mImpl;
-};
-
-class C2ReadCursor;
-
-class C2WriteCursor {
-public:
- uint32_t remaining() const; // remaining data to be read
- void commit(); // commits the current position. discard data before current position
- void reset() const; // resets position to the last committed position
- // slices off at most |size| bytes, and moves cursor ahead by the number of bytes
- // sliced off.
- C2ReadCursor slice(uint32_t size) const;
- // slices off at most |size| bytes, and moves cursor ahead by the number of bytes
- // sliced off.
- C2WriteCursor reserve(uint32_t size);
- // bool read(T&);
- // bool write(T&);
- C2Fence waitForSpace(uint32_t size);
-};
-
-/// @}
-
-/// \addtogroup graphic
-/// @{
-
-struct C2ColorSpace {
-//public:
- enum Standard {
- BT601,
- BT709,
- BT2020,
- // TODO
- };
-
- enum Range {
- LIMITED,
- FULL,
- // TODO
- };
-
- enum TransferFunction {
- BT709Transfer,
- BT2020Transfer,
- HybridLogGamma2,
- HybridLogGamma4,
- // TODO
- };
-};
-
-/** \deprecated */
-class C2GraphicBuffer : public C2Buffer {
-public:
- // constant attributes
- inline uint32_t width() const { return mWidth; }
- inline uint32_t height() const { return mHeight; }
- inline uint32_t format() const { return mFormat; }
- inline const C2MemoryUsage usage() const { return mUsage; }
-
- // modifiable attributes
-
-
- virtual const C2ColorSpace colorSpace() const = 0;
- // best effort
- virtual void setColorSpace_be(const C2ColorSpace &colorSpace) = 0;
- virtual bool setColorSpace(const C2ColorSpace &colorSpace) = 0;
-
- const C2Handle *handle() const;
-
-protected:
- uint32_t mWidth;
- uint32_t mHeight;
- uint32_t mFormat;
- C2MemoryUsage mUsage;
-
- class Impl;
- Impl *mImpl;
-};
-
-/// @}
-
-/// \endcond
-
-/// @}
-
-#endif // C2BUFFER_H_
diff --git a/codec2/include/C2BufferBase.h b/codec2/include/C2BufferBase.h
deleted file mode 100644
index 2bd48f0..0000000
--- a/codec2/include/C2BufferBase.h
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2BUFFER_BASE_H_
-#define C2BUFFER_BASE_H_
-
-/// \defgroup allocator Allocation and memory placement
-/// @{
-
-/**
- * Buffer/memory usage bits. These shall be used by the allocators to select optimal memory type/
- * pool and buffer layout. Usage bits are conceptually separated into read and write usage, while
- * the buffer use life-cycle is separated into producers (writers) and consumers (readers).
- * These two concepts are related but not equivalent: consumers may only read buffers and only
- * producers may write to buffers; note, however, that buffer producers may also want or need to
- * read the buffers.
- *
- * Read and write buffer usage bits shall be or-ed to arrive at the full buffer usage. Admittedly,
- * this does not account for the amount of reading and writing (e.g. a buffer may have one or more
- * readers); however, the proper information necessary to properly weigh the various usages would be
- * the amount of data read/written for each usage type. This would result in an integer array of
- * size 64 (or the number of distinct usages) for memory usage, and likely such detailed information
- * would not always be available.
- *
- * That platform-agnostic Codec 2.0 API only defines the bare minimum usages. Platforms shall define
- * usage bits that are appropriate for the platform.
- */
-struct C2MemoryUsage {
-// public:
- /**
- * Buffer read usage.
- */
- enum read_t : uint64_t {
- /** Buffer is read by the CPU. */
- CPU_READ = 1 << 0,
- /**
- * Buffer shall only be read by trusted hardware. The definition of trusted hardware is
- * platform specific, but this flag is reserved to prevent mapping this block into CPU
- * readable memory resulting in bus fault. This flag can be used when buffer access must be
- * protected.
- */
- READ_PROTECTED = 1 << 1,
- };
-
- /**
- * Buffer write usage.
- */
- enum write_t : uint64_t {
- /** Buffer is writted to by the CPU. */
- CPU_WRITE = 1 << 2,
- /**
- * Buffer shall only be written to by trusted hardware. The definition of trusted hardware
- * is platform specific, but this flag is reserved to prevent mapping this block into CPU
- * writable memory resulting in bus fault. This flag can be used when buffer integrity must
- * be protected.
- */
- WRITE_PROTECTED = 1 << 3,
- };
-
- enum : uint64_t {
- /**
- * Buffer usage bits reserved for the platform. We don't separately reserve read and
- * write usages as platforms may have asymmetric distribution between them.
- */
- PLATFORM_MASK = ~(CPU_READ | CPU_WRITE | READ_PROTECTED | WRITE_PROTECTED),
- };
-
- /** Create a usage from separate consumer and producer usage mask. \deprecated */
- inline C2MemoryUsage(uint64_t consumer, uint64_t producer)
- : expected(consumer | producer) { }
-
- inline explicit C2MemoryUsage(uint64_t expected_)
- : expected(expected_) { }
-
- uint64_t expected; // expected buffer usage
-};
-
-/// @}
-
-#endif // C2BUFFER_BASE_H_
-
diff --git a/codec2/include/C2Component.h b/codec2/include/C2Component.h
deleted file mode 100644
index 7624851..0000000
--- a/codec2/include/C2Component.h
+++ /dev/null
@@ -1,976 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2COMPONENT_H_
-
-#define C2COMPONENT_H_
-
-#include <stdbool.h>
-#include <stdint.h>
-
-#include <list>
-#include <memory>
-#include <vector>
-#include <functional>
-
-#include <C2Enum.h>
-#include <C2Param.h>
-#include <C2Work.h>
-
-/// \defgroup components Components
-/// @{
-
-struct C2FieldSupportedValuesQuery {
- enum type_t : uint32_t {
- POSSIBLE, ///< query all possible values regardless of other settings
- CURRENT, ///< query currently possible values given dependent settings
- };
-
-private:
- C2ParamField _mField;
- type_t _mType;
-public:
- c2_status_t status;
- C2FieldSupportedValues values;
-
- C2FieldSupportedValuesQuery(const C2ParamField &field_, type_t type_)
- : _mField(field_), _mType(type_), status(C2_NO_INIT) { }
-
- static C2FieldSupportedValuesQuery
- Current(const C2ParamField &field_) {
- return C2FieldSupportedValuesQuery(field_, CURRENT);
- }
-
- static C2FieldSupportedValuesQuery
- Possible(const C2ParamField &field_) {
- return C2FieldSupportedValuesQuery(field_, POSSIBLE);
- }
-
- inline C2ParamField field() const { return _mField; };
-
- inline type_t type() const { return _mType; }
-};
-
-/**
- * Component interface object. This object contains all of the configuration of a potential or
- * actual component. It can be created and used independently of an actual C2Component instance to
- * query support and parameters for various component settings and configurations for a potential
- * component. Actual components also expose this interface.
- */
-
-class C2ComponentInterface {
-public:
- // ALWAYS AVAILABLE METHODS
- // =============================================================================================
-
- /**
- * Returns the name of this component or component interface object.
- * This is a unique name for this component or component interface 'class'; however, multiple
- * instances of this component SHALL have the same name.
- *
- * When attached to a component, this method MUST be supported in any component state.
- * This call does not change the state nor the internal configuration of the component.
- *
- * This method MUST be "non-blocking" and return within 1ms.
- *
- * \return the name of this component or component interface object.
- * \retval an empty string if there was not enough memory to allocate the actual name.
- */
- virtual C2String getName() const = 0;
-
- /**
- * Returns a unique ID for this component or interface object.
- * This ID is used as work targets, unique work IDs, and when configuring tunneling.
- *
- * When attached to a component, this method MUST be supported in any component state.
- * This call does not change the state nor the internal configuration of the component.
- *
- * This method MUST be "non-blocking" and return within 1ms.
- *
- * \return a unique node ID for this component or component interface instance.
- */
- virtual c2_node_id_t getId() const = 0;
-
- /**
- * Queries a set of parameters from the component or interface object.
- * Querying is performed at best effort: the component SHALL query all supported parameters and
- * skip unsupported ones, heap allocated parameters that could not be allocated or parameters
- * that could not be queried without blocking. Any errors are communicated in the return value.
- * Additionally, preallocated (e.g. stack) parameters that could not be queried are invalidated.
- * Invalid or blocking parameters to be allocated on the heap are omitted from the result.
- *
- * \note Parameter values do not depend on the order of query.
- *
- * \todo This method cannot be used to query info-buffers. Is that a problem?
- *
- * When attached to a component, this method MUST be supported in any component state except
- * released.
- * This call does not change the state nor the internal configuration of the component.
- *
- * This method has a variable blocking behavior based on state.
- * In the stopped state this method MUST be "non-blocking" and return within 1ms.
- * In the running states this method may be momentarily blocking, but MUST return within 5ms.
- *
- * \param[in,out] stackParams a list of params queried. These are initialized specific to each
- * setting; e.g. size and index are set and rest of the members are
- * cleared.
- * \note Flexible settings that are of incorrect size will be
- * invalidated.
- * \param[in] heapParamIndices a vector of param indices for params to be queried and returned
- * on the heap. These parameters will be returned in heapParams.
- * Unsupported param indices will be ignored.
- * \param[in] mayBlock if true (C2_MAY_BLOCK), implementation may momentarily block.
- * Otherwise (C2_DONT_BLOCK), it must be "non-blocking".
- * \param[out] heapParams a list of params where to which the supported heap parameters
- * will be appended in the order they appear in heapParamIndices.
- *
- * \retval C2_OK all parameters could be queried
- * \retval C2_BAD_INDEX all supported parameters could be queried, but some parameters were not
- * supported
- * \retval C2_BAD_STATE when called in the released component state (user error)
- * (this error code is only allowed for interfaces connected to components)
- * \retval C2_NO_MEMORY could not allocate memory for a supported parameter
- * \retval C2_BLOCKING the operation must block to complete but mayBlock is false
- * (this error code is only allowed for interfaces connected to components)
- * \retval C2_TIMED_OUT could not query the parameters within the time limit (unexpected)
- * (this error code is only allowed for interfaces connected to components
- * in the running state)
- * \retval C2_CORRUPTED some unknown error prevented the querying of the parameters
- * (unexpected)
- * (this error code is only allowed for interfaces connected to components)
- */
- virtual c2_status_t query_vb(
- const std::vector<C2Param*> &stackParams,
- const std::vector<C2Param::Index> &heapParamIndices,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2Param>>* const heapParams) const = 0;
-
- /**
- * Sets a set of parameters for the component or interface object.
- *
- * Tuning is performed at best effort: the component SHALL process the configuration updates in
- * the order they appear in |params|. If any parameter update fails, the component shall
- * communicate the failure in the return value and in |failures|, and still process the
- * remaining parameters. Unsupported parameters are skipped, though they are communicated in
- * ther return value. Most parameters are updated at best effort - such that even if client
- * specifies an unsupported value for a field, the closest supported value is used. On the
- * other hand, strict parameters only accept specific values for their fields, and if the client
- * specifies an unsupported value, the parameter setting shall fail for that field.
- * If the client tries to change the value of a field that requires momentary blocking without
- * setting |mayBlock| to C2_MAY_BLOCK, that parameter shall also be skipped and a specific
- * return value shall be used. Final values for all parameters set are propagated back to the
- * caller in |params|.
- *
- * \note Parameter tuning DOES depend on the order of the tuning parameters. E.g. some parameter
- * update may allow some subsequent values for further parameter updates.
- *
- * When attached to a component, this method MUST be supported in any component state except
- * released.
- *
- * This method has a variable blocking behavior based on state.
- * In the stopped state this method MUST be "non-blocking" and return within 1ms.
- * In the running states this method may be momentarily blocking, but MUST return within 5ms.
- *
- * \param[in,out] params a list of parameter updates. These will be updated to the actual
- * parameter values after the updates (this is because tuning is performed
- * at best effort).
- * \todo params that could not be updated are not marked here, so are
- * confusing - are they "existing" values or intended to be configured
- * values?
- * \param[in] mayBlock if true (C2_MAY_BLOCK), implementation may momentarily block.
- * Otherwise (C2_DONT_BLOCK), it must be "non-blocking".
- * \param[out] failures a list of parameter failures and optional guidance
- *
- * \retval C2_OK all parameters could be updated successfully
- * \retval C2_BAD_INDEX all supported parameters could be updated successfully, but some
- * parameters were not supported
- * \retval C2_BAD_VALUE some supported parameters could not be updated successfully because
- * they contained unsupported values. These are returned in |failures|.
- * \retval C2_BAD_STATE when called in the released component state (user error)
- * (this error code is only allowed for interfaces connected to components)
- * \retval C2_NO_MEMORY some supported parameters could not be updated successfully because
- * they contained unsupported values, but could not allocate a failure
- * object for them.
- * \retval C2_TIMED_OUT could not set the parameters within the time limit (unexpected)
- * (this error code is only allowed for interfaces connected to components
- * in the running state)
- * \retval C2_BLOCKING the operation must block to complete but mayBlock is false
- * (this error code is only allowed for interfaces connected to components)
- * \retval C2_CORRUPTED some unknown error prevented the update of the parameters
- * (unexpected)
- * (this error code is only allowed for interfaces connected to components)
- */
- virtual c2_status_t config_vb(
- const std::vector<C2Param*> ¶ms,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2SettingResult>>* const failures) = 0;
-
- // TUNNELING
- // =============================================================================================
-
- /**
- * Creates a tunnel from this component to the target component.
- *
- * If the component is successfully created, subsequent work items queued may include a
- * tunneled path between these components.
- *
- * When attached to a component, this method MUST be supported in any component state except
- * released.
- *
- * This method may be momentarily blocking, but MUST return within 5ms.
- *
- * \retval C2_OK the tunnel was successfully created
- * \retval C2_BAD_INDEX the target component does not exist
- * \retval C2_DUPLICATE the tunnel already exists
- * \retval C2_OMITTED tunneling is not supported by this component
- * \retval C2_CANNOT_DO the specific tunnel is not supported
- * \retval C2_BAD_STATE when called in the released component state (user error)
- * (this error code is only allowed for interfaces connected to components)
- *
- * \retval C2_TIMED_OUT could not create the tunnel within the time limit (unexpected)
- * \retval C2_CORRUPTED some unknown error prevented the creation of the tunnel (unexpected)
- * (this error code is only allowed for interfaces connected to components)
- */
- virtual c2_status_t createTunnel_sm(c2_node_id_t targetComponent) = 0;
-
- /**
- * Releases a tunnel from this component to the target component.
- *
- * The release of a tunnel is delayed while there are pending work items for the tunnel.
- * After releasing a tunnel, subsequent work items queued MUST NOT include a tunneled
- * path between these components.
- *
- * When attached to a component, this method MUST be supported in any component state except
- * released.
- *
- * This method may be momentarily blocking, but MUST return within 5ms.
- *
- * \retval C2_OK the tunnel was marked for release successfully
- * \retval C2_BAD_INDEX the target component does not exist
- * \retval C2_NOT_FOUND the tunnel does not exist
- * \retval C2_OMITTED tunneling is not supported by this component
- * \retval C2_BAD_STATE when called in the released component state (user error)
- * (this error code is only allowed for interfaces connected to components)
- *
- * \retval C2_TIMED_OUT could not mark the tunnel for release within the time limit (unexpected)
- * \retval C2_CORRUPTED some unknown error prevented the release of the tunnel (unexpected)
- * (this error code is only allowed for interfaces connected to components)
- */
- virtual c2_status_t releaseTunnel_sm(c2_node_id_t targetComponent) = 0;
-
- // REFLECTION MECHANISM (USED FOR EXTENSION)
- // =============================================================================================
-
- /**
- * Returns the set of supported parameters.
- *
- * When attached to a component, this method MUST be supported in any component state except
- * released.
- *
- * This method MUST be "non-blocking" and return within 1ms.
- *
- * \param[out] params a vector of supported parameters will be appended to this vector.
- *
- * \retval C2_OK the operation completed successfully.
- * \retval C2_BAD_STATE when called in the released component state (user error)
- * (this error code is only allowed for interfaces connected to components)
- * \retval C2_NO_MEMORY not enough memory to complete this method.
- */
- virtual c2_status_t querySupportedParams_nb(
- std::vector<std::shared_ptr<C2ParamDescriptor>> * const params) const = 0;
-
- /**
- * Retrieves the supported values for the queried fields.
- *
- * Client SHALL set the parameter-field specifier and the type of supported values query (e.g.
- * currently supported values, or potential supported values) in fields.
- * Upon return the component SHALL fill in the supported values for the fields listed as well
- * as a status for each field. Component shall process all fields queried even if some queries
- * fail.
- *
- * When attached to a component, this method MUST be supported in any component state except
- * released.
- *
- * This method has a variable blocking behavior based on state.
- * In the stopped state this method MUST be "non-blocking" and return within 1ms.
- * In the running states this method may be momentarily blocking, but MUST return within 5ms.
- *
- * \param[in out] fields a vector of fields descriptor structures.
- * \param[in] mayBlock if true (C2_MAY_BLOCK), implementation may momentarily block.
- * Otherwise (C2_DONT_BLOCK), it must be "non-blocking".
- *
- * \retval C2_OK the operation completed successfully.
- * \retval C2_BAD_STATE when called in the released component state (user error)
- * (this error code is only allowed for interfaces connected to components)
- * \retval C2_BAD_INDEX at least one field was not recognized as a component field
- * \retval C2_TIMED_OUT could not query supported values within the time limit (unexpected)
- * (this error code is only allowed for interfaces connected to components
- * in the running state)
- * \retval C2_BLOCKING the operation must block to complete but mayBlock is false
- * (this error code is only allowed for interfaces connected to components)
- * \retval C2_CORRUPTED some unknown error prevented the operation from completing (unexpected)
- * (this error code is only allowed for interfaces connected to components)
- */
- virtual c2_status_t querySupportedValues_vb(
- std::vector<C2FieldSupportedValuesQuery> &fields, c2_blocking_t mayBlock) const = 0;
-
- virtual ~C2ComponentInterface() = default;
-};
-
-class C2Component {
-public:
- class Listener {
- public:
- virtual void onWorkDone_nb(std::weak_ptr<C2Component> component,
- std::list<std::unique_ptr<C2Work>> workItems) = 0;
-
- virtual void onTripped_nb(std::weak_ptr<C2Component> component,
- std::vector<std::shared_ptr<C2SettingResult>> settingResult) = 0;
-
- virtual void onError_nb(std::weak_ptr<C2Component> component,
- uint32_t errorCode) = 0;
-
- // virtual void onTunnelReleased(<from>, <to>) = 0;
-
- // virtual void onComponentReleased(<id>) = 0;
-
- virtual ~Listener() = default;
- };
-
- /**
- * Sets the listener for this component
- *
- * This method MUST be supported in all states except released.
- * The listener can only be set to non-null value in stopped state (that does not include
- * tripped or error). It can be set to nullptr in both stopped and running states.
- * Components only use the listener in running state.
- *
- * If listener is nullptr, the component SHALL guarantee that no more listener callbacks are
- * done to the original listener once this method returns. (Any pending listener callbacks will
- * need to be completed during this call - hence this call may be temporarily blocking.)
- *
- * This method has a variable blocking behavior based on state.
- * In the stopped state this method MUST be "non-blocking" and return within 1ms.
- * In the running states this method may be momentarily blocking, but MUST return within 5ms.
- *
- * Component SHALL handle listener notifications from the same thread (the thread used is
- * at the component's discretion.)
- *
- * \note This could also be accomplished by passing a weak_ptr to a component-specific listener
- * here and requiring the client to always promote the weak_ptr before any callback. This would
- * put the burden on the client to clear the listener - wait for its deletion - at which point
- * it is guaranteed that no more listener callbacks will occur.
- *
- * \param[in] listener the component listener object
- * \param[in] mayBlock if true (C2_MAY_BLOCK), implementation may momentarily block.
- * Otherwise (C2_DONT_BLOCK), it must be "non-blocking".
- *
- * \retval C2_BAD_STATE attempting to change the listener in the running state to a non-null
- * value (user error), or called in the released state
- * \retval C2_BLOCKING the operation must block to complete but mayBlock is false
- * \retval C2_OK listener was updated successfully.
- */
- virtual c2_status_t setListener_vb(
- const std::shared_ptr<Listener> &listener, c2_blocking_t mayBlock) = 0;
-
- /// component domain (e.g. audio or video)
- enum domain_t : uint32_t;
-
- /// component kind (e.g. encoder, decoder or filter)
- enum kind_t : uint32_t;
-
- /// component rank. This number is used to determine component ordering (the lower the sooner)
- /// in the component list.
- typedef uint32_t rank_t;
-
- /// component attributes
- enum attrib_t : uint64_t;
-
- /**
- * Information about a component.
- */
- struct Traits {
- // public:
- C2String name; ///< name of the component
- domain_t domain; ///< component domain
- kind_t kind; ///< component kind
- rank_t rank; ///< component rank
- C2String mediaType; ///< media type supported by the component
- C2String owner; ///< name of the component store owning this component
-
- /**
- * name alias(es) for backward compatibility.
- * \note Multiple components can have the same alias as long as their media-type differs.
- */
- std::vector<C2StringLiteral> aliases; ///< name aliases for backward compatibility
- };
-
- // METHODS AVAILABLE WHEN RUNNING
- // =============================================================================================
-
- /**
- * Queues up work for the component.
- *
- * This method MUST be supported in running (including tripped and error) states.
- *
- * This method MUST be "non-blocking" and return within 1 ms
- *
- * It is acceptable for this method to return OK and return an error value using the
- * onWorkDone() callback.
- *
- * \retval C2_OK the work was successfully queued
- * \retval C2_BAD_INDEX some component(s) in the work do(es) not exist
- * \retval C2_CANNOT_DO the components are not tunneled
- * \retval C2_BAD_STATE when called in the stopped or released state (user error)
- *
- * \retval C2_NO_MEMORY not enough memory to queue the work
- * \retval C2_CORRUPTED some unknown error prevented queuing the work (unexpected)
- */
- virtual c2_status_t queue_nb(std::list<std::unique_ptr<C2Work>>* const items) = 0;
-
- /**
- * Announces a work to be queued later for the component. This reserves a slot for the queue
- * to ensure correct work ordering even if the work is queued later.
- *
- * This method MUST be supported in running (including tripped and error) states.
- *
- * This method MUST be "non-blocking" and return within 1 ms
- *
- * \retval C2_OK the work announcement has been successfully recorded
- * \retval C2_BAD_INDEX some component(s) in the work outline do(es) not exist
- * \retval C2_CANNOT_DO the componentes are not tunneled
- * \retval C2_BAD_STATE when called in the stopped or released state (user error)
- *
- * \retval C2_NO_MEMORY not enough memory to record the work announcement
- * \retval C2_CORRUPTED some unknown error prevented recording the announcement (unexpected)
- *
- * \todo Can this be rolled into queue_nb?
- * \todo Expose next work item for each component to detect stalls
- */
- virtual c2_status_t announce_nb(const std::vector<C2WorkOutline> &items) = 0;
-
- enum flush_mode_t : uint32_t {
- /// flush work from this component only
- FLUSH_COMPONENT,
-
- /// flush work from this component and all components connected downstream from it via
- /// tunneling
- FLUSH_CHAIN = (1 << 16),
- };
-
- /**
- * Discards and abandons any pending work for the component, and optionally any component
- * downstream.
- *
- * \todo define this: we could flush all work before last item queued for component across all
- * components linked to this; flush only work items that are queued to this
- * component
- * \todo return work # of last flushed item; or all flushed (but not returned items)
- * \todo we could make flush take a work item and flush all work before/after that item to allow
- * TBD (slicing/seek?)
- * \todo we could simply take a list of numbers and flush those... this is bad for decoders
- * also, what would happen to fine grade references?
- *
- * This method MUST be supported in running (including tripped and error) states.
- *
- * This method may be momentarily blocking, but must return within 5ms.
- *
- * Work that could be immediately abandoned/discarded SHALL be returned in |flushedWork|; this
- * can be done in an arbitrary order.
- *
- * Work that could not be abandoned or discarded immediately SHALL be marked to be
- * discarded at the earliest opportunity, and SHALL be returned via the onWorkDone() callback.
- * This shall be completed within 500ms.
- *
- * \param mode flush mode
- *
- * \retval C2_OK the component has been successfully flushed
- * \retval C2_BAD_STATE when called in the stopped or released state (user error)
- * \retval C2_TIMED_OUT the flush could not be completed within the time limit (unexpected)
- * \retval C2_CORRUPTED some unknown error prevented flushing from completion (unexpected)
- */
- virtual c2_status_t flush_sm(flush_mode_t mode, std::list<std::unique_ptr<C2Work>>* const flushedWork) = 0;
-
- enum drain_mode_t : uint32_t {
- /// drain component only and add an "end-of-stream" marker. Component shall process all
- /// queued work and complete the current stream. If new input is received, it shall start
- /// a new stream. \todo define what a stream is.
- DRAIN_COMPONENT_WITH_EOS,
- /// drain component without setting "end-of-stream" marker. Component shall process all
- /// queued work but shall expect more work items for the same stream.
- DRAIN_COMPONENT_NO_EOS = (1 << 0),
-
- /// marks the last work item with a persistent "end-of-stream" marker that will drain
- /// downstream components
- /// \todo this may confuse work-ordering downstream
- DRAIN_CHAIN = (1 << 16),
-
- /**
- * \todo define this; we could place EOS to all upstream components, just this component, or
- * all upstream and downstream component.
- * \todo should EOS carry over to downstream components?
- */
- };
-
- /**
- * Drains the component, and optionally downstream components. This is a signalling method;
- * as such it does not wait for any work completion.
- *
- * Marks last work item as "drain-till-here", so component is notified not to wait for further
- * work before it processes work already queued. This method can also used to set the
- * end-of-stream flag after work has been queued. Client can continue to queue further work
- * immediately after this method returns.
- *
- * This method MUST be supported in running (including tripped) states.
- *
- * This method MUST be "non-blocking" and return within 1ms.
- *
- * Work that is completed SHALL be returned via the onWorkDone() callback.
- *
- * \param mode drain mode
- *
- * \retval C2_OK the drain request has been successfully recorded
- * \retval C2_BAD_STATE when called in the stopped or released state (user error)
- * \retval C2_BAD_VALUE the drain mode is not supported by the component
- * \todo define supported modes discovery
- * \retval C2_TIMED_OUT the flush could not be completed within the time limit (unexpected)
- * \retval C2_CORRUPTED some unknown error prevented flushing from completion (unexpected)
- */
- virtual c2_status_t drain_nb(drain_mode_t mode) = 0;
-
- // STATE CHANGE METHODS
- // =============================================================================================
-
- /**
- * Starts the component.
- *
- * This method MUST be supported in stopped state, as well as during the tripped state.
- *
- * If the return value is C2_OK, the component shall be in the running state.
- * If the return value is C2_BAD_STATE or C2_DUPLICATE, no state change is expected as a
- * response to this call.
- * Otherwise, the component shall be in the stopped state.
- *
- * \note If a component is in the tripped state and start() is called while the component
- * configuration still results in a trip, start shall succeed and a new onTripped callback
- * should be used to communicate the configuration conflict that results in the new trip.
- *
- * \todo This method MUST return within 500ms. Seems this should be able to return quickly, as
- * there are no immediate guarantees. Though there are guarantees for responsiveness immediately
- * after start returns.
- *
- * \retval C2_OK the component has started (or resumed) successfully
- * \retval C2_DUPLICATE when called during another start call from another thread
- * \retval C2_BAD_STATE when called in any state other than the stopped state or tripped state,
- * including when called during another state change call from another
- * thread (user error)
- * \retval C2_NO_MEMORY not enough memory to start the component
- * \retval C2_TIMED_OUT the component could not be started within the time limit (unexpected)
- * \retval C2_CORRUPTED some unknown error prevented starting the component (unexpected)
- */
- virtual c2_status_t start() = 0;
-
- /**
- * Stops the component.
- *
- * This method MUST be supported in running (including tripped) state.
- *
- * This method MUST return withing 500ms.
- *
- * Upon this call, all pending work SHALL be abandoned and all buffer references SHALL be
- * released.
- * If the return value is C2_BAD_STATE or C2_DUPLICATE, no state change is expected as a
- * response to this call.
- * For all other return values, the component shall be in the stopped state.
- *
- * \todo should this return completed work, since client will just free it? Perhaps just to
- * verify accounting.
- *
- * This does not alter any settings and tunings that may have resulted in a tripped state.
- * (Is this material given the definition? Perhaps in case we want to start again.)
- *
- * \retval C2_OK the component has started successfully
- * \retval C2_DUPLICATE when called during another stop call from another thread
- * \retval C2_BAD_STATE when called in any state other than the running state, including when
- * called during another state change call from another thread (user error)
- * \retval C2_TIMED_OUT the component could not be stopped within the time limit (unexpected)
- * \retval C2_CORRUPTED some unknown error prevented stopping the component (unexpected)
- */
- virtual c2_status_t stop() = 0;
-
- /**
- * Resets the component.
- *
- * This method MUST be supported in all (including tripped) states other than released.
- *
- * This method MUST be supported during any other blocking call.
- *
- * This method MUST return withing 500ms.
- *
- * After this call returns all work SHALL be abandoned, all buffer references SHALL be released.
- * If the return value is C2_BAD_STATE or C2_DUPLICATE, no state change is expected as a
- * response to this call.
- * For all other return values, the component shall be in the stopped state.
- *
- * \todo should this return completed work, since client will just free it? Also, if it unblocks
- * a stop, where should completed work be returned?
- *
- * This brings settings back to their default - "guaranteeing" no tripped space.
- *
- * \todo reclaim support - it seems that since ownership is passed, this will allow reclaiming
- * stuff.
- *
- * \retval C2_OK the component has been reset
- * \retval C2_DUPLICATE when called during another reset call from another thread
- * \retval C2_BAD_STATE when called in the released state
- * \retval C2_TIMED_OUT the component could not be reset within the time limit (unexpected)
- * \retval C2_CORRUPTED some unknown error prevented resetting the component (unexpected)
- */
- virtual c2_status_t reset() = 0;
-
- /**
- * Releases the component.
- *
- * This method MUST be supported in stopped state.
- *
- * This method MUST return withing 500ms. Upon return all references shall be abandoned.
- *
- * \retval C2_OK the component has been released
- * \retval C2_DUPLICATE the component is already released
- * \retval C2_BAD_STATE the component is running
- * \retval C2_TIMED_OUT the component could not be released within the time limit (unexpected)
- * \retval C2_CORRUPTED some unknown error prevented releasing the component (unexpected)
- */
- virtual c2_status_t release() = 0;
-
- /**
- * Returns the interface for this component.
- *
- * \return the component interface
- */
- virtual std::shared_ptr<C2ComponentInterface> intf() = 0;
-
- virtual ~C2Component() = default;
-};
-
-C2ENUM(C2Component::kind_t, uint32_t,
- KIND_OTHER,
- KIND_DECODER,
- KIND_ENCODER
-);
-
-C2ENUM(C2Component::domain_t, uint32_t,
- DOMAIN_OTHER,
- DOMAIN_VIDEO,
- DOMAIN_AUDIO,
- DOMAIN_IMAGE
-);
-
-class C2FrameInfoParser {
-public:
- /**
- * \return the content type supported by this info parser.
- *
- * \todo this may be redundant
- */
- virtual C2StringLiteral getType() const = 0;
-
- /**
- * \return a vector of supported parameter indices parsed by this info parser.
- *
- * This method MUST be "non-blocking" and return within 1ms.
- *
- * \todo sticky vs. non-sticky params? this may be communicated by param-reflector.
- */
- virtual const std::vector<C2Param::Index> getParsedParams() const = 0;
-
- /**
- * Resets this info parser. This brings this parser to its initial state after creation.
- *
- * This method SHALL return within 5ms.
- *
- * \retval C2_OK the info parser was reset
- * \retval C2_TIMED_OUT could not reset the parser within the time limit (unexpected)
- * \retval C2_CORRUPTED some unknown error prevented the resetting of the parser (unexpected)
- */
- virtual c2_status_t reset() { return C2_OK; }
-
- virtual c2_status_t parseFrame(C2FrameData &frame);
-
- virtual ~C2FrameInfoParser() = default;
-};
-
-class C2AllocatorStore {
-public:
- typedef C2Allocator::id_t id_t;
-
- enum : C2Allocator::id_t {
- DEFAULT_LINEAR, ///< basic linear allocator type
- DEFAULT_GRAPHIC, ///< basic graphic allocator type
- PLATFORM_START = 0x10,
- VENDOR_START = 0x100,
- BAD_ID = C2Allocator::BAD_ID, ///< DO NOT USE
- };
-
- /**
- * Returns the unique name of this allocator store.
- *
- * This method MUST be "non-blocking" and return within 1ms.
- *
- * \return the name of this allocator store.
- * \retval an empty string if there was not enough memory to allocate the actual name.
- */
- virtual C2String getName() const = 0;
-
- /**
- * Returns the set of allocators supported by this allocator store.
- *
- * This method MUST be "non-blocking" and return within 1ms.
- *
- * \retval vector of allocator information (as shared pointers)
- * \retval an empty vector if there was not enough memory to allocate the whole vector.
- */
- virtual std::vector<std::shared_ptr<const C2Allocator::Traits>> listAllocators_nb() const = 0;
-
- /**
- * Retrieves/creates a shared allocator object.
- *
- * This method MUST be return within 5ms.
- *
- * The allocator is created on first use, and the same allocator is returned on subsequent
- * concurrent uses in the same process. The allocator is freed when it is no longer referenced.
- *
- * \param id the ID of the allocator to create. This is defined by the store, but
- * the ID of the default linear and graphic allocators is formalized.
- * \param allocator shared pointer where the created allocator is stored. Cleared on failure
- * and updated on success.
- *
- * \retval C2_OK the allocator was created successfully
- * \retval C2_TIMED_OUT could not create the allocator within the time limit (unexpected)
- * \retval C2_CORRUPTED some unknown error prevented the creation of the allocator (unexpected)
- *
- * \retval C2_NOT_FOUND no such allocator
- * \retval C2_NO_MEMORY not enough memory to create the allocator
- */
- virtual c2_status_t fetchAllocator(id_t id, std::shared_ptr<C2Allocator>* const allocator) = 0;
-
- virtual ~C2AllocatorStore() = default;
-};
-
-class C2ComponentStore {
-public:
- /**
- * Returns the name of this component or component interface object.
- * This is a unique name for this component or component interface 'class'; however, multiple
- * instances of this component SHALL have the same name.
- *
- * This method MUST be supported in any state. This call does not change the state nor the
- * internal states of the component.
- *
- * This method MUST be "non-blocking" and return within 1ms.
- *
- * \return the name of this component or component interface object.
- * \retval an empty string if there was not enough memory to allocate the actual name.
- */
- virtual C2String getName() const = 0;
-
- /**
- * Creates a component.
- *
- * This method SHALL return within 100ms.
- *
- * \param name name of the component to create
- * \param component shared pointer where the created component is stored. Cleared on
- * failure and updated on success.
- *
- * \retval C2_OK the component was created successfully
- * \retval C2_TIMED_OUT could not create the component within the time limit (unexpected)
- * \retval C2_CORRUPTED some unknown error prevented the creation of the component (unexpected)
- *
- * \retval C2_NOT_FOUND no such component
- * \retval C2_NO_MEMORY not enough memory to create the component
- */
- virtual c2_status_t createComponent(
- C2String name, std::shared_ptr<C2Component>* const component) = 0;
-
- /**
- * Creates a component interface.
- *
- * This method SHALL return within 100ms.
- *
- * \param name name of the component interface to create
- * \param interface shared pointer where the created interface is stored
- *
- * \retval C2_OK the component interface was created successfully
- * \retval C2_TIMED_OUT could not create the component interface within the time limit
- * (unexpected)
- * \retval C2_CORRUPTED some unknown error prevented the creation of the component interface
- * (unexpected)
- *
- * \retval C2_NOT_FOUND no such component interface
- * \retval C2_NO_MEMORY not enough memory to create the component interface
- *
- * \todo Do we need an interface, or could this just be a component that is never started?
- */
- virtual c2_status_t createInterface(
- C2String name, std::shared_ptr<C2ComponentInterface>* const interface) = 0;
-
- /**
- * Returns the list of components supported by this component store.
- *
- * This method MUST return within 500ms.
- *
- * \retval vector of component information.
- */
- virtual std::vector<std::shared_ptr<const C2Component::Traits>> listComponents() = 0;
-
- // -------------------------------------- UTILITY METHODS --------------------------------------
-
- // on-demand buffer layout conversion (swizzling)
- //
- virtual c2_status_t copyBuffer(
- std::shared_ptr<C2GraphicBuffer> src, std::shared_ptr<C2GraphicBuffer> dst) = 0;
-
- // -------------------------------------- CONFIGURATION API -----------------------------------
- // e.g. for global settings (system-wide stride, etc.)
-
- /**
- * Queries a set of system-wide parameters.
- * Querying is performed at best effort: the store SHALL query all supported parameters and
- * skip unsupported ones, or heap allocated parameters that could not be allocated. Any errors
- * are communicated in the return value. Additionally, preallocated (e.g. stack) parameters that
- * could not be queried are invalidated. Parameters to be allocated on the heap are omitted from
- * the result.
- *
- * \note Parameter values do not depend on the order of query.
- *
- * This method may be momentarily blocking, but MUST return within 5ms.
- *
- * \param stackParams a list of params queried. These are initialized specific to each
- * setting; e.g. size and index are set and rest of the members are
- * cleared.
- * NOTE: Flexible settings that are of incorrect size will be invalidated.
- * \param heapParamIndices a vector of param indices for params to be queried and returned on the
- * heap. These parameters will be returned in heapParams. Unsupported param
- * indices will be ignored.
- * \param heapParams a list of params where to which the supported heap parameters will be
- * appended in the order they appear in heapParamIndices.
- *
- * \retval C2_OK all parameters could be queried
- * \retval C2_BAD_INDEX all supported parameters could be queried, but some parameters were not
- * supported
- * \retval C2_NO_MEMORY could not allocate memory for a supported parameter
- * \retval C2_CORRUPTED some unknown error prevented the querying of the parameters
- * (unexpected)
- */
- virtual c2_status_t query_sm(
- const std::vector<C2Param*> &stackParams,
- const std::vector<C2Param::Index> &heapParamIndices,
- std::vector<std::unique_ptr<C2Param>>* const heapParams) const = 0;
-
- /**
- * Sets a set of system-wide parameters.
- *
- * \note There are no settable system-wide parameters defined thus far, but may be added in the
- * future.
- *
- * Tuning is performed at best effort: the store SHALL update all supported configuration at
- * best effort (unless configured otherwise) and skip unsupported ones. Any errors are
- * communicated in the return value and in |failures|.
- *
- * \note Parameter tuning DOES depend on the order of the tuning parameters. E.g. some parameter
- * update may allow some subsequent parameter update.
- *
- * This method may be momentarily blocking, but MUST return within 5ms.
- *
- * \param params a list of parameter updates. These will be updated to the actual
- * parameter values after the updates (this is because tuning is performed
- * at best effort).
- * \todo params that could not be updated are not marked here, so are
- * confusing - are they "existing" values or intended to be configured
- * values?
- * \param failures a list of parameter failures
- *
- * \retval C2_OK all parameters could be updated successfully
- * \retval C2_BAD_INDEX all supported parameters could be updated successfully, but some
- * parameters were not supported
- * \retval C2_BAD_VALUE some supported parameters could not be updated successfully because
- * they contained unsupported values. These are returned in |failures|.
- * \retval C2_NO_MEMORY some supported parameters could not be updated successfully because
- * they contained unsupported values, but could not allocate a failure
- * object for them.
- * \retval C2_CORRUPTED some unknown error prevented the update of the parameters
- * (unexpected)
- */
- virtual c2_status_t config_sm(
- const std::vector<C2Param*> ¶ms,
- std::vector<std::unique_ptr<C2SettingResult>>* const failures) = 0;
-
- // REFLECTION MECHANISM (USED FOR EXTENSION)
- // =============================================================================================
-
- /**
- * Returns the parameter reflector.
- *
- * This is used to describe parameter fields. This is shared for all components created by
- * this component store.
- *
- * This method MUST be "non-blocking" and return within 1ms.
- *
- * \return a shared parameter reflector object.
- */
- virtual std::shared_ptr<C2ParamReflector> getParamReflector() const = 0;
-
- /**
- * Returns the set of supported parameters.
- *
- * This method MUST be "non-blocking" and return within 1ms.
- *
- * \param[out] params a vector of supported parameters will be appended to this vector.
- *
- * \retval C2_OK the operation completed successfully.
- * \retval C2_NO_MEMORY not enough memory to complete this method.
- */
- virtual c2_status_t querySupportedParams_nb(
- std::vector<std::shared_ptr<C2ParamDescriptor>> * const params) const = 0;
-
- /**
- * Retrieves the supported values for the queried fields.
- *
- * Client SHALL set the parameter-field specifier and the type of supported values query (e.g.
- * currently supported values, or potential supported values) in fields.
- * Upon return the store SHALL fill in the supported values for the fields listed as well
- * as a status for each field. Store shall process all fields queried even if some queries
- * fail.
- *
- * This method may be momentarily blocking, but MUST return within 5ms.
- *
- * \param[in out] fields a vector of fields descriptor structures.
- *
- * \retval C2_OK the operation completed successfully.
- * \retval C2_BAD_INDEX at least one field was not recognized as a component store field
- */
- virtual c2_status_t querySupportedValues_sm(
- std::vector<C2FieldSupportedValuesQuery> &fields) const = 0;
-
- virtual ~C2ComponentStore() = default;
-};
-
-// ================================================================================================
-
-/// @}
-
-#endif // C2COMPONENT_H_
diff --git a/codec2/include/C2Config.h b/codec2/include/C2Config.h
deleted file mode 100644
index be5f128..0000000
--- a/codec2/include/C2Config.h
+++ /dev/null
@@ -1,2188 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2CONFIG_H_
-#define C2CONFIG_H_
-
-#include <C2.h>
-#include <C2Component.h>
-#include <C2Enum.h>
-#include <C2ParamDef.h>
-
-/// \defgroup config Component configuration
-/// @{
-
-/**
- * Enumerated boolean.
- */
-C2ENUM(c2_bool_t, uint32_t,
- C2_FALSE, ///< true
- C2_TRUE, ///< false
-)
-
-typedef C2SimpleValueStruct<c2_bool_t> C2BoolValue;
-
-typedef C2SimpleValueStruct<C2EasyEnum<c2_bool_t>> C2EasyBoolValue;
-
-/**
- * Enumerated set tri-state.
- *
- * Used for optional configurations to distinguish between values set by the client,
- * default values set by the component, or unset values.
- */
-C2ENUM(c2_set_t, uint32_t,
- C2_UNSET, // parameter is unset and has no value
- C2_SET, // parameter is/has been set by the client
- C2_DEFAULT, // parameter has not been set by the client, but is set by the component
-)
-
-/** Enumerations used by configuration parameters */
-struct C2Config {
- enum aac_packaging_t : uint32_t; ///< AAC packaging (RAW vs ADTS)
- enum aac_sbr_mode_t : uint32_t; ///< AAC SBR mode
- enum api_feature_t : uint64_t; ///< API features
- enum api_level_t : uint32_t; ///< API level
- enum bitrate_mode_t : uint32_t; ///< bitrate control mode
- enum drc_compression_mode_t : int32_t; ///< DRC compression mode
- enum drc_effect_type_t : int32_t; ///< DRC effect type
- enum intra_refresh_mode_t : uint32_t; ///< intra refresh modes
- enum level_t : uint32_t; ///< coding level
- enum ordinal_key_t : uint32_t; ///< work ordering keys
- enum pcm_encoding_t : uint32_t; ///< PCM encoding
- enum picture_type_t : uint32_t; ///< picture types
- enum platform_feature_t : uint64_t; ///< platform features
- enum platform_level_t : uint32_t; ///< platform level
- enum prepend_header_mode_t : uint32_t; ///< prepend header operational modes
- enum profile_t : uint32_t; ///< coding profile
- enum scaling_method_t : uint32_t; ///< scaling methods
- enum scan_order_t : uint32_t; ///< scan orders
- enum secure_mode_t : uint32_t; ///< secure/protected modes
- enum supplemental_info_t : uint32_t; ///< supplemental information types
- enum tiling_mode_t : uint32_t; ///< tiling modes
-};
-
-namespace {
-
-enum C2ParamIndexKind : C2Param::type_index_t {
- C2_PARAM_INDEX_INVALID = 0x0, ///< do not use
- C2_PARAM_INDEX_STRUCT_START = 0x1, ///< struct only indices
- C2_PARAM_INDEX_PARAM_START = 0x800, ///< regular parameters
- C2_PARAM_INDEX_CODER_PARAM_START = 0x1000, ///< en/transcoder parameters
- C2_PARAM_INDEX_PICTURE_PARAM_START = 0x1800, ///< image/video parameters
- C2_PARAM_INDEX_VIDEO_PARAM_START = 0x2000, ///< video parameters
- C2_PARAM_INDEX_IMAGE_PARAM_START = 0x2800, ///< image parameters
- C2_PARAM_INDEX_AUDIO_PARAM_START = 0x3000, ///< image parameters
- C2_PARAM_INDEX_PLATFORM_START = 0x4000, ///< platform-defined parameters
-
- /* =================================== structure indices =================================== */
-
- kParamIndexColorXy = C2_PARAM_INDEX_STRUCT_START,
- kParamIndexMasteringDisplayColorVolume,
- kParamIndexChromaOffset,
- kParamIndexGopLayer,
-
- /* =================================== parameter indices =================================== */
-
- kParamIndexApiLevel = C2_PARAM_INDEX_PARAM_START,
- kParamIndexApiFeatures,
-
- /* ------------------------------------ all components ------------------------------------ */
-
- /* generic component characteristics */
- kParamIndexName,
- kParamIndexAliases,
- kParamIndexKind,
- kParamIndexDomain,
- kParamIndexAttributes,
- kParamIndexTimeStretch,
-
- /* coding characteristics */
- kParamIndexProfileLevel,
- kParamIndexInitData,
- kParamIndexSupplementalData,
- kParamIndexSubscribedSupplementalData,
-
- /* pipeline characteristics */
- kParamIndexMediaType,
- kParamIndexDelayRequest,
- kParamIndexDelay,
- kParamIndexMaxReferenceAge,
- kParamIndexMaxReferenceCount,
- kParamIndexReorderBufferDepth,
- kParamIndexReorderKey,
- kParamIndexStreamCount,
- kParamIndexSubscribedParamIndices,
- kParamIndexSuggestedBufferCount,
- kParamIndexBatchSize,
- kParamIndexCurrentWork,
- kParamIndexLastWorkQueued,
-
- /* memory allocation */
- kParamIndexAllocators,
- kParamIndexBlockPools,
- kParamIndexBufferType,
- kParamIndexUsage,
- kParamIndexOutOfMemory,
- kParamIndexMaxBufferSize,
-
- /* misc. state */
- kParamIndexTripped,
- kParamIndexConfigCounter,
-
- /* resources */
- kParamIndexResourcesNeeded,
- kParamIndexResourcesReserved,
- kParamIndexOperatingRate,
- kParamIndexRealTimePriority,
-
- /* protected content */
- kParamIndexSecureMode,
-
- /* ------------------------------------ (trans/en)coders ------------------------------------ */
-
- kParamIndexBitrate = C2_PARAM_INDEX_CODER_PARAM_START,
- kParamIndexBitrateMode,
- kParamIndexQuality,
- kParamIndexComplexity,
- kParamIndexPrependHeaderMode,
-
- /* --------------------------------- image/video components --------------------------------- */
-
- kParamIndexPictureSize = C2_PARAM_INDEX_PICTURE_PARAM_START,
- kParamIndexCropRect,
- kParamIndexPixelFormat,
- kParamIndexRotation,
- kParamIndexPixelAspectRatio,
- kParamIndexScaledPictureSize,
- kParamIndexScaledCropRect,
- kParamIndexScalingMethod,
- kParamIndexColorInfo,
- kParamIndexColorAspects,
- kParamIndexHdrStaticMetadata,
- kParamIndexDefaultColorAspects,
-
- kParamIndexBlockSize,
- kParamIndexBlockCount,
- kParamIndexBlockRate,
-
- kParamIndexPictureTypeMask,
- kParamIndexPictureType,
- kParamIndexHdr10PlusMetadata,
-
- /* ------------------------------------ video components ------------------------------------ */
-
- kParamIndexFrameRate = C2_PARAM_INDEX_VIDEO_PARAM_START,
- kParamIndexMaxBitrate,
- kParamIndexMaxFrameRate,
- kParamIndexMaxPictureSize,
- kParamIndexGop,
- kParamIndexSyncFrameInterval,
- kParamIndexRequestSyncFrame,
- kParamIndexTemporalLayering,
- kParamIndexLayerIndex,
- kParamIndexLayerCount,
- kParamIndexIntraRefresh,
-
- /* ------------------------------------ image components ------------------------------------ */
-
- kParamIndexTileLayout = C2_PARAM_INDEX_IMAGE_PARAM_START,
- kParamIndexTileHandling,
-
- /* ------------------------------------ audio components ------------------------------------ */
-
- kParamIndexSampleRate = C2_PARAM_INDEX_AUDIO_PARAM_START,
- kParamIndexChannelCount,
- kParamIndexPcmEncoding,
- kParamIndexAacPackaging,
- kParamIndexMaxChannelCount,
- kParamIndexAacSbrMode, // aac encode, enum
- kParamIndexDrcEncodedTargetLevel, // drc, float (dBFS)
- kParamIndexDrcTargetReferenceLevel, // drc, float (dBFS)
- kParamIndexDrcCompression, // drc, enum
- kParamIndexDrcBoostFactor, // drc, float (0-1)
- kParamIndexDrcAttenuationFactor, // drc, float (0-1)
- kParamIndexDrcEffectType, // drc, enum
-
- /* ============================== platform-defined parameters ============================== */
-
- kParamIndexPlatformLevel = C2_PARAM_INDEX_PLATFORM_START, // all, u32
- kParamIndexPlatformFeatures, // all, u64 mask
- kParamIndexStoreIonUsage, // store, struct
- kParamIndexAspectsToDataSpace, // store, struct
- kParamIndexFlexiblePixelFormatDescriptor, // store, struct
- kParamIndexFlexiblePixelFormatDescriptors, // store, struct[]
- kParamIndexDataSpaceToAspects, // store, struct
- kParamIndexDataSpace, // u32
- kParamIndexSurfaceScaling, // u32
-
- // input surface
- kParamIndexInputSurfaceEos, // input-surface, eos
- kParamIndexTimedControl, // struct
- kParamIndexStartAt, // input-surface, struct
- kParamIndexSuspendAt, // input-surface, struct
- kParamIndexResumeAt, // input-surface, struct
- kParamIndexStopAt, // input-surface, struct
- kParamIndexTimeOffset, // input-surface, struct
- kParamIndexMinFrameRate, // input-surface, float
- kParamIndexTimestampGapAdjustment, // input-surface, struct
-
- kParamIndexSurfaceAllocator, // u32
-
- // deprecated indices due to renaming
- kParamIndexAacStreamFormat = kParamIndexAacPackaging,
- kParamIndexCsd = kParamIndexInitData,
- kParamIndexMaxVideoSizeHint = kParamIndexMaxPictureSize,
- kParamIndexMime = kParamIndexMediaType,
- kParamIndexRequestedInfos = kParamIndexSubscribedParamIndices,
-
-
- // deprecated indices due to removal
- kParamIndexSupportedParams = 0xDEAD0000,
- kParamIndexReadOnlyParams,
- kParamIndexTemporal,
-};
-
-}
-
-/**
- * Codec 2.0 parameter types follow the following naming convention:
- *
- * C2<group><domain><index><type>
- *
- * E.g. C2StreamPictureSizeInfo: group="" domain="Stream" index="PictureSize" type="Info".
- * Group is somewhat arbitrary, but denotes kind of objects the parameter is defined.
- * At this point we use Component and Store to distinguish basic component/store parameters.
- *
- * Parameter keys are named C2_PARAMKEY_[<group>_]<domain>_<index> as type is not expected
- * to distinguish parameters. E.g. a component could change the type of the parameter and it
- * is not expected users would need to change the key.
- */
-
-/* ----------------------------------------- API level ----------------------------------------- */
-
-enum C2Config::api_level_t : uint32_t {
- API_L0_1 = 0, ///< support for API level 0.1
-};
-
-// read-only
-typedef C2GlobalParam<C2Setting, C2SimpleValueStruct<C2Config::api_level_t>, kParamIndexApiLevel>
- C2ApiLevelSetting;
-constexpr char C2_PARAMKEY_API_LEVEL[] = "api.level";
-
-enum C2Config::api_feature_t : uint64_t {
- API_REFLECTION = (1U << 0), ///< ability to list supported parameters
- API_VALUES = (1U << 1), ///< ability to list supported values for each parameter
- API_CURRENT_VALUES = (1U << 2), ///< ability to list currently supported values for each parameter
- API_DEPENDENCY = (1U << 3), ///< have a defined parameter dependency
-
- API_STREAMS = (1ULL << 32), ///< supporting variable number of streams
-
- API_TUNNELING = (1ULL << 48), ///< tunneling API
-};
-
-// read-only
-typedef C2GlobalParam<C2Setting, C2SimpleValueStruct<C2Config::api_feature_t>, kParamIndexApiFeatures>
- C2ApiFeaturesSetting;
-constexpr char C2_PARAMKEY_API_FEATURES[] = "api.features";
-
-/* ----------------------------- generic component characteristics ----------------------------- */
-
-/**
- * The name of the component.
- *
- * This must contain only alphanumeric characters or dot '.', hyphen '-', plus '+', or
- * underline '_'. The name of each component must be unique.
- *
- * For Android: Component names must start with 'c2.' followed by the company name or abbreviation
- * and another dot, e.g. 'c2.android.'. Use of lowercase is preferred but not required.
- */
-// read-only
-typedef C2GlobalParam<C2Setting, C2StringValue, kParamIndexName> C2ComponentNameSetting;
-constexpr char C2_PARAMKEY_COMPONENT_NAME[] = "component.name";
-
-/**
- * Alternate names (aliases) of the component.
- *
- * This is a comma ',' separated list of alternate component names. Unlike component names that
- * must be unique, multiple components can have the same alias.
- */
-// read-only
-typedef C2GlobalParam<C2Setting, C2StringValue, kParamIndexAliases> C2ComponentAliasesSetting;
-constexpr char C2_PARAMKEY_COMPONENT_ALIASES[] = "component.aliases";
-
-/**
- * Component kind.
- */
-// read-only
-typedef C2GlobalParam<C2Setting, C2SimpleValueStruct<C2Component::kind_t>, kParamIndexKind>
- C2ComponentKindSetting;
-constexpr char C2_PARAMKEY_COMPONENT_KIND[] = "component.kind";
-
-/**
- * Component domain.
- */
-// read-only
-typedef C2GlobalParam<C2Setting, C2SimpleValueStruct<C2Component::domain_t>, kParamIndexDomain>
- C2ComponentDomainSetting;
-typedef C2ComponentDomainSetting C2ComponentDomainInfo; // deprecated
-typedef C2Component::domain_t C2DomainKind; // deprecated
-constexpr char C2_PARAMKEY_COMPONENT_DOMAIN[] = "component.domain";
-
-constexpr C2Component::domain_t C2DomainAudio = C2Component::DOMAIN_AUDIO; // deprecated
-constexpr C2Component::domain_t C2DomainOther = C2Component::DOMAIN_OTHER; // deprecate
-constexpr C2Component::domain_t C2DomainVideo = C2Component::DOMAIN_VIDEO; // deprecate
-
-/**
- * Component attributes.
- *
- * These are a set of flags provided by the component characterizing its processing algorithm.
- */
-C2ENUM(C2Component::attrib_t, uint64_t,
- ATTRIB_IS_TEMPORAL = 1u << 0, ///< component input ordering matters for processing
-)
-
-// read-only
-typedef C2GlobalParam<C2Setting, C2SimpleValueStruct<C2Component::attrib_t>, kParamIndexAttributes>
- C2ComponentAttributesSetting;
-constexpr char C2_PARAMKEY_COMPONENT_ATTRIBUTES[] = "component.attributes";
-
-// deprecated
-typedef C2ComponentAttributesSetting C2ComponentTemporalInfo;
-
-/**
- * Time stretching.
- *
- * This is the ratio between the rate of the input timestamp, and the rate of the output timestamp.
- * E.g. if this is 4.0, for every 1 seconds of input timestamp difference, the output shall differ
- * by 4 seconds.
- */
-typedef C2GlobalParam<C2Tuning, C2FloatValue, kParamIndexTimeStretch> C2ComponentTimeStretchTuning;
-constexpr char C2_PARAMKEY_TIME_STRETCH[] = "algo.time-stretch";
-
-/* ----------------------------------- coding characteristics ----------------------------------- */
-
-/**
- * Profile and level.
- *
- * Profile determines the tools used by the component.
- * Level determines the level of resources used by the component.
- */
-
-namespace {
-
-enum : uint32_t {
- _C2_PL_MP2V_BASE = 0x1000,
- _C2_PL_AAC_BASE = 0x2000,
- _C2_PL_H263_BASE = 0x3000,
- _C2_PL_MP4V_BASE = 0x4000,
- _C2_PL_AVC_BASE = 0x5000,
- _C2_PL_HEVC_BASE = 0x6000,
- _C2_PL_VP9_BASE = 0x7000,
- _C2_PL_DV_BASE = 0x8000,
-
- C2_PROFILE_LEVEL_VENDOR_START = 0x70000000,
-};
-
-}
-
-enum C2Config::profile_t : uint32_t {
- PROFILE_UNUSED = 0, ///< profile is not used by this media type
-
- // AAC (MPEG-2 Part 7 and MPEG-4 Part 3) profiles
- PROFILE_AAC_LC = _C2_PL_AAC_BASE, ///< AAC Low-Complexity
- PROFILE_AAC_MAIN, ///< AAC Main
- PROFILE_AAC_SSR, ///< AAC Scalable Sampling Rate
- PROFILE_AAC_LTP, ///< AAC Long Term Prediction
- PROFILE_AAC_HE, ///< AAC High-Efficiency
- PROFILE_AAC_SCALABLE, ///< AAC Scalable
- PROFILE_AAC_ER_LC, ///< AAC Error Resilient Low-Complexity
- PROFILE_AAC_ER_SCALABLE, ///< AAC Error Resilient Scalable
- PROFILE_AAC_LD, ///< AAC Low Delay
- PROFILE_AAC_HE_PS, ///< AAC High-Efficiency Parametric Stereo
- PROFILE_AAC_ELD, ///< AAC Enhanced Low Delay
- PROFILE_AAC_XHE, ///< AAC Extended High-Efficiency
-
- // MPEG-2 Video profiles
- PROFILE_MP2V_SIMPLE = _C2_PL_MP2V_BASE, ///< MPEG-2 Video (H.262) Simple
- PROFILE_MP2V_MAIN, ///< MPEG-2 Video (H.262) Main
- PROFILE_MP2V_SNR_SCALABLE, ///< MPEG-2 Video (H.262) SNR Scalable
- PROFILE_MP2V_SPATIALLY_SCALABLE, ///< MPEG-2 Video (H.262) Spatially Scalable
- PROFILE_MP2V_HIGH, ///< MPEG-2 Video (H.262) High
- PROFILE_MP2V_422, ///< MPEG-2 Video (H.262) 4:2:2
- PROFILE_MP2V_MULTIVIEW, ///< MPEG-2 Video (H.262) Multi-view
-
- // H.263 profiles
- PROFILE_H263_BASELINE = _C2_PL_H263_BASE, ///< H.263 Baseline (Profile 0)
- PROFILE_H263_H320, ///< H.263 H.320 Coding Efficiency Version 2 Backward-Compatibility (Profile 1)
- PROFILE_H263_V1BC, ///< H.263 Version 1 Backward-Compatibility (Profile 2)
- PROFILE_H263_ISWV2, ///< H.263 Version 2 Interactive and Streaming Wireless (Profile 3)
- PROFILE_H263_ISWV3, ///< H.263 Version 3 Interactive and Streaming Wireless (Profile 4)
- PROFILE_H263_HIGH_COMPRESSION, ///< H.263 Conversational High Compression (Profile 5)
- PROFILE_H263_INTERNET, ///< H.263 Conversational Internet (Profile 6)
- PROFILE_H263_INTERLACE, ///< H.263 Conversational Interlace (Profile 7)
- PROFILE_H263_HIGH_LATENCY, ///< H.263 High Latency (Profile 8)
-
- // MPEG-4 Part 2 (Video) Natural Visual Profiles
- PROFILE_MP4V_SIMPLE, ///< MPEG-4 Video Simple
- PROFILE_MP4V_SIMPLE_SCALABLE, ///< MPEG-4 Video Simple Scalable
- PROFILE_MP4V_CORE, ///< MPEG-4 Video Core
- PROFILE_MP4V_MAIN, ///< MPEG-4 Video Main
- PROFILE_MP4V_NBIT, ///< MPEG-4 Video N-Bit
- PROFILE_MP4V_ARTS, ///< MPEG-4 Video Advanced Realtime Simple
- PROFILE_MP4V_CORE_SCALABLE, ///< MPEG-4 Video Core Scalable
- PROFILE_MP4V_ACE, ///< MPEG-4 Video Advanced Coding Efficiency
- PROFILE_MP4V_ADVANCED_CORE, ///< MPEG-4 Video Advanced Core
- PROFILE_MP4V_SIMPLE_STUDIO, ///< MPEG-4 Video Simple Studio
- PROFILE_MP4V_CORE_STUDIO, ///< MPEG-4 Video Core Studio
- PROFILE_MP4V_ADVANCED_SIMPLE, ///< MPEG-4 Video Advanced Simple
- PROFILE_MP4V_FGS, ///< MPEG-4 Video Fine Granularity Scalable
-
- // AVC / MPEG-4 Part 10 (H.264) profiles
- PROFILE_AVC_BASELINE = _C2_PL_AVC_BASE, ///< AVC (H.264) Baseline
- PROFILE_AVC_CONSTRAINED_BASELINE, ///< AVC (H.264) Constrained Baseline
- PROFILE_AVC_MAIN, ///< AVC (H.264) Main
- PROFILE_AVC_EXTENDED, ///< AVC (H.264) Extended
- PROFILE_AVC_HIGH, ///< AVC (H.264) High
- PROFILE_AVC_PROGRESSIVE_HIGH, ///< AVC (H.264) Progressive High
- PROFILE_AVC_CONSTRAINED_HIGH, ///< AVC (H.264) Constrained High
- PROFILE_AVC_HIGH_10, ///< AVC (H.264) High 10
- PROFILE_AVC_PROGRESSIVE_HIGH_10, ///< AVC (H.264) Progressive High 10
- PROFILE_AVC_HIGH_422, ///< AVC (H.264) High 4:2:2
- PROFILE_AVC_HIGH_444_PREDICTIVE, ///< AVC (H.264) High 4:4:4 Predictive
- PROFILE_AVC_HIGH_10_INTRA, ///< AVC (H.264) High 10 Intra
- PROFILE_AVC_HIGH_422_INTRA, ///< AVC (H.264) High 4:2:2 Intra
- PROFILE_AVC_HIGH_444_INTRA, ///< AVC (H.264) High 4:4:4 Intra
- PROFILE_AVC_CAVLC_444_INTRA, ///< AVC (H.264) CAVLC 4:4:4 Intra
- PROFILE_AVC_SCALABLE_BASELINE = _C2_PL_AVC_BASE + 0x100, ///< AVC (H.264) Scalable Baseline
- PROFILE_AVC_SCALABLE_CONSTRAINED_BASELINE, ///< AVC (H.264) Scalable Constrained Baseline
- PROFILE_AVC_SCALABLE_HIGH, ///< AVC (H.264) Scalable High
- PROFILE_AVC_SCALABLE_CONSTRAINED_HIGH, ///< AVC (H.264) Scalable Constrained High
- PROFILE_AVC_SCALABLE_HIGH_INTRA, ///< AVC (H.264) Scalable High Intra
- PROFILE_AVC_MULTIVIEW_HIGH = _C2_PL_AVC_BASE + 0x200, ///< AVC (H.264) Multiview High
- PROFILE_AVC_STEREO_HIGH, ///< AVC (H.264) Stereo High
- PROFILE_AVC_MFC_HIGH, ///< AVC (H.264) MFC High
- PROFILE_AVC_MULTIVIEW_DEPTH_HIGH = _C2_PL_AVC_BASE + 0x300, ///< AVC (H.264) Multiview Depth High
- PROFILE_AVC_MFC_DEPTH_HIGH, ///< AVC (H.264) MFC Depth High
- PROFILE_AVC_ENHANCED_MULTIVIEW_DEPTH_HIGH = _C2_PL_AVC_BASE + 0x400, ///< AVC (H.264) Enhanced Multiview Depth High
-
- // HEVC profiles
- PROFILE_HEVC_MAIN = _C2_PL_HEVC_BASE, ///< HEVC (H.265) Main
- PROFILE_HEVC_MAIN_10, ///< HEVC (H.265) Main 10
- PROFILE_HEVC_MAIN_STILL, ///< HEVC (H.265) Main Still Picture
- PROFILE_HEVC_MONO = _C2_PL_HEVC_BASE + 0x100, ///< HEVC (H.265) Monochrome
- PROFILE_HEVC_MONO_12, ///< HEVC (H.265) Monochrome 12
- PROFILE_HEVC_MONO_16, ///< HEVC (H.265) Monochrome 16
- PROFILE_HEVC_MAIN_12, ///< HEVC (H.265) Main 12
- PROFILE_HEVC_MAIN_422_10, ///< HEVC (H.265) Main 4:2:2 10
- PROFILE_HEVC_MAIN_422_12, ///< HEVC (H.265) Main 4:2:2 12
- PROFILE_HEVC_MAIN_444, ///< HEVC (H.265) Main 4:4:4
- PROFILE_HEVC_MAIN_444_10, ///< HEVC (H.265) Main 4:4:4 10
- PROFILE_HEVC_MAIN_444_12, ///< HEVC (H.265) Main 4:4:4 12
- PROFILE_HEVC_MAIN_INTRA, ///< HEVC (H.265) Main Intra
- PROFILE_HEVC_MAIN_10_INTRA, ///< HEVC (H.265) Main 10 Intra
- PROFILE_HEVC_MAIN_12_INTRA, ///< HEVC (H.265) Main 12 Intra
- PROFILE_HEVC_MAIN_422_10_INTRA, ///< HEVC (H.265) Main 4:2:2 10 Intra
- PROFILE_HEVC_MAIN_422_12_INTRA, ///< HEVC (H.265) Main 4:2:2 12 Intra
- PROFILE_HEVC_MAIN_444_INTRA, ///< HEVC (H.265) Main 4:4:4 Intra
- PROFILE_HEVC_MAIN_444_10_INTRA, ///< HEVC (H.265) Main 4:4:4 10 Intra
- PROFILE_HEVC_MAIN_444_12_INTRA, ///< HEVC (H.265) Main 4:4:4 12 Intra
- PROFILE_HEVC_MAIN_444_16_INTRA, ///< HEVC (H.265) Main 4:4:4 16 Intra
- PROFILE_HEVC_MAIN_444_STILL, ///< HEVC (H.265) Main 4:4:4 Still Picture
- PROFILE_HEVC_MAIN_444_16_STILL, ///< HEVC (H.265) Main 4:4:4 16 Still Picture
- PROFILE_HEVC_HIGH_444 = _C2_PL_HEVC_BASE + 0x200, ///< HEVC (H.265) High Throughput 4:4:4
- PROFILE_HEVC_HIGH_444_10, ///< HEVC (H.265) High Throughput 4:4:4 10
- PROFILE_HEVC_HIGH_444_14, ///< HEVC (H.265) High Throughput 4:4:4 14
- PROFILE_HEVC_HIGH_444_16_INTRA, ///< HEVC (H.265) High Throughput 4:4:4 16 Intra
- PROFILE_HEVC_SX_MAIN = _C2_PL_HEVC_BASE + 0x300, ///< HEVC (H.265) Screen-Extended Main
- PROFILE_HEVC_SX_MAIN_10, ///< HEVC (H.265) Screen-Extended Main 10
- PROFILE_HEVC_SX_MAIN_444, ///< HEVC (H.265) Screen-Extended Main 4:4:4
- PROFILE_HEVC_SX_MAIN_444_10, ///< HEVC (H.265) Screen-Extended Main 4:4:4 10
- PROFILE_HEVC_SX_HIGH_444, ///< HEVC (H.265) Screen-Extended High Throughput 4:4:4
- PROFILE_HEVC_SX_HIGH_444_10, ///< HEVC (H.265) Screen-Extended High Throughput 4:4:4 10
- PROFILE_HEVC_SX_HIGH_444_14, ///< HEVC (H.265) Screen-Extended High Throughput 4:4:4 14
- PROFILE_HEVC_MULTIVIEW_MAIN = _C2_PL_HEVC_BASE + 0x400, ///< HEVC (H.265) Multiview Main
- PROFILE_HEVC_SCALABLE_MAIN = _C2_PL_HEVC_BASE + 0x500, ///< HEVC (H.265) Scalable Main
- PROFILE_HEVC_SCALABLE_MAIN_10, ///< HEVC (H.265) Scalable Main 10
- PROFILE_HEVC_SCALABLE_MONO = _C2_PL_HEVC_BASE + 0x600, ///< HEVC (H.265) Scalable Monochrome
- PROFILE_HEVC_SCALABLE_MONO_12, ///< HEVC (H.265) Scalable Monochrome 12
- PROFILE_HEVC_SCALABLE_MONO_16, ///< HEVC (H.265) Scalable Monochrome 16
- PROFILE_HEVC_SCALABLE_MAIN_444, ///< HEVC (H.265) Scalable Main 4:4:4
- PROFILE_HEVC_3D_MAIN = _C2_PL_HEVC_BASE + 0x700, ///< HEVC (H.265) 3D Main
-
- // VP9 profiles
- PROFILE_VP9_0 = _C2_PL_VP9_BASE, ///< VP9 Profile 0 (4:2:0)
- PROFILE_VP9_1, ///< VP9 Profile 1 (4:2:2 or 4:4:4)
- PROFILE_VP9_2, ///< VP9 Profile 2 (4:2:0, 10 or 12 bit)
- PROFILE_VP9_3, ///< VP9 Profile 3 (4:2:2 or 4:4:4, 10 or 12 bit)
-
- // Dolby Vision profiles
- PROFILE_DV_AV_PER = _C2_PL_DV_BASE + 0, ///< Dolby Vision dvav.per profile (deprecated)
- PROFILE_DV_AV_PEN, ///< Dolby Vision dvav.pen profile (deprecated)
- PROFILE_DV_HE_DER, ///< Dolby Vision dvhe.der profile (deprecated)
- PROFILE_DV_HE_DEN, ///< Dolby Vision dvhe.den profile (deprecated)
- PROFILE_DV_HE_04 = _C2_PL_DV_BASE + 4, ///< Dolby Vision dvhe.04 profile
- PROFILE_DV_HE_05 = _C2_PL_DV_BASE + 5, ///< Dolby Vision dvhe.05 profile
- PROFILE_DV_HE_DTH, ///< Dolby Vision dvhe.dth profile (deprecated)
- PROFILE_DV_HE_07 = _C2_PL_DV_BASE + 7, ///< Dolby Vision dvhe.07 profile
- PROFILE_DV_HE_08 = _C2_PL_DV_BASE + 8, ///< Dolby Vision dvhe.08 profile
- PROFILE_DV_AV_09 = _C2_PL_DV_BASE + 9, ///< Dolby Vision dvav.09 profile
-};
-
-enum C2Config::level_t : uint32_t {
- LEVEL_UNUSED = 0, ///< level is not used by this media type
-
- // MPEG-2 Video levels
- LEVEL_MP2V_LOW = _C2_PL_MP2V_BASE, ///< MPEG-2 Video (H.262) Low Level
- LEVEL_MP2V_MAIN, ///< MPEG-2 Video (H.262) Main Level
- LEVEL_MP2V_HIGH_1440, ///< MPEG-2 Video (H.262) High 1440 Level
- LEVEL_MP2V_HIGH, ///< MPEG-2 Video (H.262) High Level
- LEVEL_MP2V_HIGHP, ///< MPEG-2 Video (H.262) HighP Level
-
- // H.263 levels
- LEVEL_H263_10 = _C2_PL_H263_BASE, ///< H.263 Level 10
- LEVEL_H263_20, ///< H.263 Level 20
- LEVEL_H263_30, ///< H.263 Level 30
- LEVEL_H263_40, ///< H.263 Level 40
- LEVEL_H263_45, ///< H.263 Level 45
- LEVEL_H263_50, ///< H.263 Level 50
- LEVEL_H263_60, ///< H.263 Level 60
- LEVEL_H263_70, ///< H.263 Level 70
-
- // MPEG-4 Part 2 (Video) levels
- LEVEL_MP4V_0 = _C2_PL_MP4V_BASE, ///< MPEG-4 Video Level 0
- LEVEL_MP4V_0B, ///< MPEG-4 Video Level 0b
- LEVEL_MP4V_1, ///< MPEG-4 Video Level 1
- LEVEL_MP4V_2, ///< MPEG-4 Video Level 2
- LEVEL_MP4V_3, ///< MPEG-4 Video Level 3
- LEVEL_MP4V_3B, ///< MPEG-4 Video Level 3b
- LEVEL_MP4V_4, ///< MPEG-4 Video Level 4
- LEVEL_MP4V_4A, ///< MPEG-4 Video Level 4a
- LEVEL_MP4V_5, ///< MPEG-4 Video Level 5
- LEVEL_MP4V_6, ///< MPEG-4 Video Level 6
-
- // AVC / MPEG-4 Part 10 (H.264) levels
- LEVEL_AVC_1 = _C2_PL_AVC_BASE, ///< AVC (H.264) Level 1
- LEVEL_AVC_1B, ///< AVC (H.264) Level 1b
- LEVEL_AVC_1_1, ///< AVC (H.264) Level 1.1
- LEVEL_AVC_1_2, ///< AVC (H.264) Level 1.2
- LEVEL_AVC_1_3, ///< AVC (H.264) Level 1.3
- LEVEL_AVC_2, ///< AVC (H.264) Level 2
- LEVEL_AVC_2_1, ///< AVC (H.264) Level 2.1
- LEVEL_AVC_2_2, ///< AVC (H.264) Level 2.2
- LEVEL_AVC_3, ///< AVC (H.264) Level 3
- LEVEL_AVC_3_1, ///< AVC (H.264) Level 3.1
- LEVEL_AVC_3_2, ///< AVC (H.264) Level 3.2
- LEVEL_AVC_4, ///< AVC (H.264) Level 4
- LEVEL_AVC_4_1, ///< AVC (H.264) Level 4.1
- LEVEL_AVC_4_2, ///< AVC (H.264) Level 4.2
- LEVEL_AVC_5, ///< AVC (H.264) Level 5
- LEVEL_AVC_5_1, ///< AVC (H.264) Level 5.1
- LEVEL_AVC_5_2, ///< AVC (H.264) Level 5.2
-
- // HEVC (H.265) tiers and levels
- LEVEL_HEVC_MAIN_1 = _C2_PL_HEVC_BASE, ///< HEVC (H.265) Main Tier Level 1
- LEVEL_HEVC_MAIN_2, ///< HEVC (H.265) Main Tier Level 2
- LEVEL_HEVC_MAIN_2_1, ///< HEVC (H.265) Main Tier Level 2.1
- LEVEL_HEVC_MAIN_3, ///< HEVC (H.265) Main Tier Level 3
- LEVEL_HEVC_MAIN_3_1, ///< HEVC (H.265) Main Tier Level 3.1
- LEVEL_HEVC_MAIN_4, ///< HEVC (H.265) Main Tier Level 4
- LEVEL_HEVC_MAIN_4_1, ///< HEVC (H.265) Main Tier Level 4.1
- LEVEL_HEVC_MAIN_5, ///< HEVC (H.265) Main Tier Level 5
- LEVEL_HEVC_MAIN_5_1, ///< HEVC (H.265) Main Tier Level 5.1
- LEVEL_HEVC_MAIN_5_2, ///< HEVC (H.265) Main Tier Level 5.2
- LEVEL_HEVC_MAIN_6, ///< HEVC (H.265) Main Tier Level 6
- LEVEL_HEVC_MAIN_6_1, ///< HEVC (H.265) Main Tier Level 6.1
- LEVEL_HEVC_MAIN_6_2, ///< HEVC (H.265) Main Tier Level 6.2
-
- LEVEL_HEVC_HIGH_4 = _C2_PL_HEVC_BASE + 0x100, ///< HEVC (H.265) High Tier Level 4
- LEVEL_HEVC_HIGH_4_1, ///< HEVC (H.265) High Tier Level 4.1
- LEVEL_HEVC_HIGH_5, ///< HEVC (H.265) High Tier Level 5
- LEVEL_HEVC_HIGH_5_1, ///< HEVC (H.265) High Tier Level 5.1
- LEVEL_HEVC_HIGH_5_2, ///< HEVC (H.265) High Tier Level 5.2
- LEVEL_HEVC_HIGH_6, ///< HEVC (H.265) High Tier Level 6
- LEVEL_HEVC_HIGH_6_1, ///< HEVC (H.265) High Tier Level 6.1
- LEVEL_HEVC_HIGH_6_2, ///< HEVC (H.265) High Tier Level 6.2
-
- // VP9 levels
- LEVEL_VP9_1 = _C2_PL_VP9_BASE, ///< VP9 Level 1
- LEVEL_VP9_1_1, ///< VP9 Level 1.1
- LEVEL_VP9_2, ///< VP9 Level 2
- LEVEL_VP9_2_1, ///< VP9 Level 2.1
- LEVEL_VP9_3, ///< VP9 Level 3
- LEVEL_VP9_3_1, ///< VP9 Level 3.1
- LEVEL_VP9_4, ///< VP9 Level 4
- LEVEL_VP9_4_1, ///< VP9 Level 4.1
- LEVEL_VP9_5, ///< VP9 Level 5
- LEVEL_VP9_5_1, ///< VP9 Level 5.1
- LEVEL_VP9_5_2, ///< VP9 Level 5.2
- LEVEL_VP9_6, ///< VP9 Level 6
- LEVEL_VP9_6_1, ///< VP9 Level 6.1
- LEVEL_VP9_6_2, ///< VP9 Level 6.2
-
- // Dolby Vision level
- LEVEL_DV_MAIN_HD_24 = _C2_PL_DV_BASE, ///< Dolby Vision main tier hd24
- LEVEL_DV_MAIN_HD_30, ///< Dolby Vision main tier hd30
- LEVEL_DV_MAIN_FHD_24, ///< Dolby Vision main tier fhd24
- LEVEL_DV_MAIN_FHD_30, ///< Dolby Vision main tier fhd30
- LEVEL_DV_MAIN_FHD_60, ///< Dolby Vision main tier fhd60
- LEVEL_DV_MAIN_UHD_24, ///< Dolby Vision main tier uhd24
- LEVEL_DV_MAIN_UHD_30, ///< Dolby Vision main tier uhd30
- LEVEL_DV_MAIN_UHD_48, ///< Dolby Vision main tier uhd48
- LEVEL_DV_MAIN_UHD_60, ///< Dolby Vision main tier uhd60
-
- LEVEL_DV_HIGH_HD_24 = _C2_PL_DV_BASE + 0x100, ///< Dolby Vision high tier hd24
- LEVEL_DV_HIGH_HD_30, ///< Dolby Vision high tier hd30
- LEVEL_DV_HIGH_FHD_24, ///< Dolby Vision high tier fhd24
- LEVEL_DV_HIGH_FHD_30, ///< Dolby Vision high tier fhd30
- LEVEL_DV_HIGH_FHD_60, ///< Dolby Vision high tier fhd60
- LEVEL_DV_HIGH_UHD_24, ///< Dolby Vision high tier uhd24
- LEVEL_DV_HIGH_UHD_30, ///< Dolby Vision high tier uhd30
- LEVEL_DV_HIGH_UHD_48, ///< Dolby Vision high tier uhd48
- LEVEL_DV_HIGH_UHD_60, ///< Dolby Vision high tier uhd60
-};
-
-struct C2ProfileLevelStruct {
- C2Config::profile_t profile; ///< coding profile
- C2Config::level_t level; ///< coding level
-
- C2ProfileLevelStruct(
- C2Config::profile_t profile_ = C2Config::PROFILE_UNUSED,
- C2Config::level_t level_ = C2Config::LEVEL_UNUSED)
- : profile(profile_), level(level_) { }
-
- DEFINE_AND_DESCRIBE_C2STRUCT(ProfileLevel)
- C2FIELD(profile, "profile")
- C2FIELD(level, "level")
-};
-
-// TODO: may need to make this explicit (have .set member)
-typedef C2StreamParam<C2Info, C2ProfileLevelStruct, kParamIndexProfileLevel>
- C2StreamProfileLevelInfo;
-constexpr char C2_PARAMKEY_PROFILE_LEVEL[] = "coded.pl";
-#define C2_PARAMKEY_STREAM_PROFILE_LEVEL C2_PARAMKEY_PROFILE_LEVEL
-
-/**
- * Codec-specific initialization data.
- *
- * This is initialization data for the codec.
- *
- * For AVC/HEVC, these are the concatenated SPS/PPS/VPS NALs.
- *
- * TODO: define for other codecs.
- */
-typedef C2StreamParam<C2Info, C2BlobValue, kParamIndexInitData> C2StreamInitDataInfo;
-typedef C2StreamInitDataInfo C2StreamCsdInfo; // deprecated
-constexpr char C2_PARAMKEY_INIT_DATA[] = "coded.init-data";
-#define C2_PARAMKEY_STREAM_INIT_DATA C2_PARAMKEY_INIT_DATA
-
-/**
- * Supplemental Data.
- *
- * This is coding-specific supplemental informational data, e.g. SEI for AVC/HEVC.
- * This structure is not a configuration so it does not have a parameter key.
- * This structure shall be returned in the configuration update, and can be repeated as needed
- * in the same update.
- */
-C2ENUM(C2Config::supplemental_info_t, uint32_t,
- INFO_NONE = 0,
-
- INFO_PREFIX_SEI_UNIT = 0x10000, ///< prefix SEI payload types add this flag
- INFO_SUFFIX_SEI_UNIT = 0x20000, ///< suffix SEI payload types add this flag
-
- INFO_SEI_USER_DATA = INFO_PREFIX_SEI_UNIT | 4, ///< closed-captioning data (ITU-T T35)
- INFO_SEI_MDCV = INFO_PREFIX_SEI_UNIT | 137, ///< mastering display color volume
- INFO_SET_USER_DATA_SFX = INFO_SUFFIX_SEI_UNIT | 4, ///< closed-captioning data (ITU-T T35)
-
- INFO_VENDOR_START = 0x70000000
-)
-
-struct C2SupplementalDataStruct {
- C2SupplementalDataStruct()
- : type_(INFO_NONE) { }
-
- C2SupplementalDataStruct(
- size_t flexCount, C2Config::supplemental_info_t type, std::vector<uint8_t> data_)
- : type_(type) {
- memcpy(data, &data_[0], c2_min(data_.size(), flexCount));
- }
-
- C2Config::supplemental_info_t type_;
- uint8_t data[];
-
- DEFINE_AND_DESCRIBE_FLEX_C2STRUCT(SupplementalData, data)
- C2FIELD(type_, "type")
- C2FIELD(data, "data")
-};
-typedef C2StreamParam<C2Info, C2SupplementalDataStruct, kParamIndexSupplementalData>
- C2StreamSupplementalDataInfo;
-
-/**
- * Supplemental Data Subscription
- */
-typedef C2StreamParam<C2Tuning, C2SimpleArrayStruct<C2Config::supplemental_info_t>,
- kParamIndexSubscribedSupplementalData>
- C2StreamSubscribedSupplementalDataTuning;
-constexpr char C2_PARAMKEY_SUBSCRIBED_SUPPLEMENTAL_DATA[] = "output.subscribed-supplemental";
-
-/* ---------------------------------- pipeline characteristics ---------------------------------- */
-
-/**
- * Media-type.
- *
- * This is defined for both port and stream, but stream media type may be a subtype of the
- * port media type.
- */
-typedef C2PortParam<C2Setting, C2StringValue, kParamIndexMediaType> C2PortMediaTypeSetting;
-typedef C2PortMediaTypeSetting C2PortMimeConfig; // deprecated
-constexpr char C2_PARAMKEY_INPUT_MEDIA_TYPE[] = "input.media-type";
-constexpr char C2_PARAMKEY_OUTPUT_MEDIA_TYPE[] = "output.media-type";
-#define C2_NAME_INPUT_PORT_MIME_SETTING C2_PARAMKEY_INPUT_MEDIA_TYPE
-#define C2_NAME_OUTPUT_PORT_MIME_SETTING C2_PARAMKEY_OUTPUT_MEDIA_TYPE
-
-typedef C2StreamParam<C2Setting, C2StringValue, kParamIndexMediaType> C2StreamMediaTypeSetting;
-
-/**
- * Pipeline delays.
- *
- * Input delay is the number of additional input frames requested by the component to process
- * an input frame.
- *
- * Output delay is the number of additional output frames that need to be generated before an
- * output can be released by the component.
- *
- * Pipeline delay is the number of additional frames that are processed at one time by the
- * component.
- *
- * As these may vary from frame to frame, the number is the maximum required value. E.g. if
- * input delay is 0, the component is expected to consume each frame queued even if no further
- * frames are queued. Similarly, if input delay is 1, as long as there are always exactly 2
- * outstanding input frames queued to the component, it shall produce output.
- */
-
-typedef C2PortParam<C2Tuning, C2Uint32Value, kParamIndexDelayRequest> C2PortRequestedDelayTuning;
-typedef C2PortRequestedDelayTuning C2PortRequestedLatencyTuning; // deprecated
-constexpr char C2_PARAMKEY_INPUT_DELAY_REQUEST[] = "input.delay.requested";
-constexpr char C2_PARAMKEY_OUTPUT_DELAY_REQUEST[] = "output.delay.requested";
-
-typedef C2GlobalParam<C2Tuning, C2Uint32Value, kParamIndexDelayRequest>
- C2RequestedPipelineDelayTuning;
-typedef C2RequestedPipelineDelayTuning C2ComponentRequestedLatencyTuning; // deprecated
-constexpr char C2_PARAMKEY_PIPELINE_DELAY_REQUEST[] = "pipeline-delay.requested";
-
-// read-only
-typedef C2PortParam<C2Tuning, C2Uint32Value, kParamIndexDelay> C2PortActualDelayTuning;
-typedef C2PortActualDelayTuning C2PortLatencyInfo; // deprecated
-constexpr char C2_PARAMKEY_INPUT_DELAY[] = "input.delay.actual";
-constexpr char C2_PARAMKEY_OUTPUT_DELAY[] = "output.delay.actual";
-
-// read-only
-typedef C2GlobalParam<C2Tuning, C2Uint32Value, kParamIndexDelay> C2ActualPipelineDelayTuning;
-typedef C2ActualPipelineDelayTuning C2ComponentLatencyInfo; // deprecated
-constexpr char C2_PARAMKEY_PIPELINE_DELAY[] = "algo.delay.actual";
-
-/**
- * Reference characteristics.
- *
- * The component may hold onto input and output buffers even after completing the corresponding
- * work item.
- *
- * Max reference age is the longest number of additional frame processing that a component may
- * hold onto a buffer for. Max reference count is the number of buffers that a component may
- * hold onto at the same time at the worst case. These numbers assume single frame per buffers.
- *
- * Use max-uint32 if there is no limit for the max age or count.
- */
-typedef C2StreamParam<C2Tuning, C2Uint32Value, kParamIndexMaxReferenceAge>
- C2StreamMaxReferenceAgeTuning;
-constexpr char C2_PARAMKEY_INPUT_MAX_REFERENCE_AGE[] = "input.reference.max-age";
-constexpr char C2_PARAMKEY_OUTPUT_MAX_REFERENCE_AGE[] = "output.reference.max-age";
-
-typedef C2StreamParam<C2Tuning, C2Uint32Value, kParamIndexMaxReferenceCount>
- C2StreamMaxReferenceCountTuning;
-constexpr char C2_PARAMKEY_INPUT_MAX_REFERENCE_COUNT[] = "input.reference.max-count";
-constexpr char C2_PARAMKEY_OUTPUT_MAX_REFERENCE_COUNT[] = "output.reference.max-count";
-
-/**
- * Output reordering.
- *
- * The size of the window to use for output buffer reordering. 0 is interpreted as 1.
- */
-// output only
-typedef C2PortParam<C2Tuning, C2Uint32Value, kParamIndexReorderBufferDepth>
- C2PortReorderBufferDepthTuning;
-constexpr char C2_PARAMKEY_OUTPUT_REORDER_DEPTH[] = "output.reorder.depth";
-
-C2ENUM(C2Config::ordinal_key_t, uint32_t,
- ORDINAL,
- TIMESTAMP,
- CUSTOM)
-
-// read-only, output only
-typedef C2PortParam<C2Setting, C2SimpleValueStruct<C2Config::ordinal_key_t>, kParamIndexReorderKey>
- C2PortReorderKeySetting;
-constexpr char C2_PARAMKEY_OUTPUT_REORDER_KEY[] = "output.reorder.key";
-
-/**
- * Stream count.
- */
-// private
-typedef C2PortParam<C2Tuning, C2Uint32Value, kParamIndexStreamCount> C2PortStreamCountTuning;
-typedef C2PortStreamCountTuning C2PortStreamCountConfig; // deprecated
-constexpr char C2_PARAMKEY_INPUT_STREAM_COUNT[] = "input.stream-count";
-constexpr char C2_PARAMKEY_OUTPUT_STREAM_COUNT[] = "output.stream-count";
-
-/**
- * Config update subscription.
- */
-// private
-typedef C2GlobalParam<C2Tuning, C2Uint32Array, kParamIndexSubscribedParamIndices>
- C2SubscribedParamIndicesTuning;
-constexpr char C2_PARAMKEY_SUBSCRIBED_PARAM_INDICES[] = "output.subscribed-indices";
-
-/**
- * Suggested buffer (C2Frame) count. This is a suggestion by the component for the number of
- * input and output frames allocated for the component's use in the buffer pools.
- *
- * Component shall set the acceptable range of buffers allocated for it. E.g. client shall
- * allocate at least the minimum required value.
- */
-// read-only
-typedef C2PortParam<C2Tuning, C2Uint64Array, kParamIndexSuggestedBufferCount>
- C2PortSuggestedBufferCountTuning;
-constexpr char C2_PARAMKEY_INPUT_SUGGESTED_BUFFER_COUNT[] = "input.buffers.pool-size";
-constexpr char C2_PARAMKEY_OUTPUT_SUGGESTED_BUFFER_COUNT[] = "output.buffers.pool-size";
-
-/**
- * Input/output batching.
- *
- * For input, component requests that client batches work in batches of specified size. For output,
- * client requests that the component batches work completion in given batch size.
- * Value 0 means don't care.
- */
-typedef C2PortParam<C2Tuning, C2Uint64Array, kParamIndexBatchSize> C2PortBatchSizeTuning;
-constexpr char C2_PARAMKEY_INPUT_BATCH_SIZE[] = "input.buffers.batch-size";
-constexpr char C2_PARAMKEY_OUTPUT_BATCH_SIZE[] = "output.buffers.batch-size";
-
-/**
- * Current & last work ordinals.
- *
- * input port: last work queued to component.
- * output port: last work completed by component.
- * global: current work.
- */
-typedef C2PortParam<C2Tuning, C2WorkOrdinalStruct, kParamIndexLastWorkQueued> C2LastWorkQueuedTuning;
-typedef C2GlobalParam<C2Tuning, C2WorkOrdinalStruct, kParamIndexCurrentWork> C2CurrentWorkTuning;
-
-
-/* ------------------------------------- memory allocation ------------------------------------- */
-
-/**
- * Allocators to use.
- *
- * These are requested by the component.
- *
- * If none specified, client will use the default allocator ID based on the component domain and
- * kind.
- */
-typedef C2PortParam<C2Tuning, C2SimpleArrayStruct<C2Allocator::id_t>, kParamIndexAllocators>
- C2PortAllocatorsTuning;
-constexpr char C2_PARAMKEY_INPUT_ALLOCATORS[] = "input.buffers.allocator-ids";
-constexpr char C2_PARAMKEY_OUTPUT_ALLOCATORS[] = "output.buffers.allocator-ids";
-
-typedef C2GlobalParam<C2Tuning, C2SimpleArrayStruct<C2Allocator::id_t>, kParamIndexAllocators>
- C2PrivateAllocatorsTuning;
-constexpr char C2_PARAMKEY_PRIVATE_ALLOCATORS[] = "algo.buffers.allocator-ids";
-
-/**
- * Allocator to use for outputting to surface.
- *
- * Components can optionally request allocator type for outputting to surface.
- *
- * If none specified, client will use the default BufferQueue-backed allocator ID for outputting to
- * surface.
- */
-typedef C2PortParam<C2Tuning, C2Uint32Value, kParamIndexSurfaceAllocator>
- C2PortSurfaceAllocatorTuning;
-constexpr char C2_PARAMKEY_OUTPUT_SURFACE_ALLOCATOR[] = "output.buffers.surface-allocator-id";
-
-/**
- * Block pools to use.
- *
- * These are allocated by the client for the component using the allocator IDs specified by the
- * component. This is not used for the input port.
- */
-typedef C2PortParam<C2Tuning, C2SimpleArrayStruct<C2BlockPool::local_id_t>, kParamIndexBlockPools>
- C2PortBlockPoolsTuning;
-constexpr char C2_PARAMKEY_OUTPUT_BLOCK_POOLS[] = "output.buffers.pool-ids";
-
-typedef C2GlobalParam<C2Tuning, C2SimpleArrayStruct<C2BlockPool::local_id_t>, kParamIndexBlockPools>
- C2PrivateBlockPoolsTuning;
-constexpr char C2_PARAMKEY_PRIVATE_BLOCK_POOLS[] = "algo.buffers.pool-ids";
-
-/**
- * The max number of private allocations at any one time by the component.
- * (This is an array with a corresponding value for each private allocator)
- */
-typedef C2GlobalParam<C2Tuning, C2Uint32Array, kParamIndexMaxReferenceCount>
- C2MaxPrivateBufferCountTuning;
-constexpr char C2_PARAMKEY_MAX_PRIVATE_BUFFER_COUNT[] = "algo.buffers.max-count";
-
-/**
- * Buffer type
- *
- * This is provided by the component for the client to allocate the proper buffer type for the
- * input port, and can be provided by the client to control the buffer type for the output.
- */
-// private
-typedef C2StreamParam<C2Setting, C2SimpleValueStruct<C2EasyEnum<C2BufferData::type_t>>,
- kParamIndexBufferType>
- C2StreamBufferTypeSetting;
-
-constexpr C2BufferData::type_t C2FormatAudio = C2BufferData::LINEAR; // deprecated
-constexpr C2BufferData::type_t C2FormatCompressed = C2BufferData::LINEAR; // deprecated
-constexpr C2BufferData::type_t C2FormatVideo = C2BufferData::GRAPHIC; // deprecated
-typedef C2BufferData::type_t C2FormatKind; // deprecated
-
-typedef C2StreamBufferTypeSetting C2StreamFormatConfig; // deprecated
-constexpr char C2_PARAMKEY_INPUT_STREAM_BUFFER_TYPE[] = "input.buffers.type";
-constexpr char C2_PARAMKEY_OUTPUT_STREAM_BUFFER_TYPE[] = "output.buffers.type";
-
-// deprecated
-#define C2_NAME_INPUT_STREAM_FORMAT_SETTING C2_PARAMKEY_INPUT_STREAM_BUFFER_TYPE
-#define C2_NAME_OUTPUT_STREAM_FORMAT_SETTING C2_PARAMKEY_OUTPUT_STREAM_BUFFER_TYPE
-
-/**
- * Memory usage.
- *
- * Suggested by component for input and negotiated between client and component for output.
- */
-typedef C2StreamParam<C2Tuning, C2Uint64Value, kParamIndexUsage> C2StreamUsageTuning;
-constexpr char C2_PARAMKEY_INPUT_STREAM_USAGE[] = "input.buffers.usage";
-constexpr char C2_PARAMKEY_OUTPUT_STREAM_USAGE[] = "output.buffers.usage";
-// deprecated
-#define C2_NAME_INPUT_STREAM_USAGE_SETTING C2_PARAMKEY_INPUT_STREAM_USAGE
-
-/**
- * Picture (video or image frame) size.
- */
-struct C2PictureSizeStruct {
- inline C2PictureSizeStruct()
- : width(0), height(0) { }
-
- inline C2PictureSizeStruct(uint32_t width_, uint32_t height_)
- : width(width_), height(height_) { }
-
- uint32_t width; ///< video width
- uint32_t height; ///< video height
-
- DEFINE_AND_DESCRIBE_C2STRUCT(PictureSize)
- C2FIELD(width, "width")
- C2FIELD(height, "height")
-};
-
-/**
- * Out of memory signaling
- *
- * This is a configuration for the client to mark that it cannot allocate necessary private and/
- * or output buffers to continue operation, and to signal the failing configuration.
- */
-struct C2OutOfMemoryStruct {
- C2BlockPool::local_id_t pool; ///< pool ID that failed the allocation
- uint64_t usage; ///< memory usage used
- C2PictureSizeStruct planar; ///< buffer dimensions to be allocated if 2D
- uint32_t format; ///< pixel format to be used if 2D
- uint32_t capacity; ///< buffer capacity to be allocated if 1D
- c2_bool_t outOfMemory; ///< true if component is out of memory
-
- DEFINE_AND_DESCRIBE_C2STRUCT(OutOfMemory)
- C2FIELD(pool, "pool")
- C2FIELD(usage, "usage")
- C2FIELD(planar, "planar")
- C2FIELD(format, "format")
- C2FIELD(capacity, "capacity")
- C2FIELD(outOfMemory, "out-of-memory")
-};
-
-typedef C2GlobalParam<C2Tuning, C2OutOfMemoryStruct, kParamIndexOutOfMemory> C2OutOfMemoryTuning;
-constexpr char C2_PARAMKEY_OUT_OF_MEMORY[] = "algo.oom";
-
-/**
- * Max buffer size
- *
- * This is a hint provided by the component for the maximum buffer size expected on a stream for the
- * current configuration on its input and output streams. This is communicated to clients so they
- * can preallocate input buffers, or configure downstream components that require a maximum size on
- * their buffers.
- *
- * Read-only. Required to be provided by components on all compressed streams.
- */
-typedef C2StreamParam<C2Info, C2Uint32Value, kParamIndexMaxBufferSize> C2StreamMaxBufferSizeInfo;
-constexpr char C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE[] = "input.buffers.max-size";
-constexpr char C2_PARAMKEY_OUTPUT_MAX_BUFFER_SIZE[] = "output.buffers.max-size";
-
-#define C2_NAME_STREAM_MAX_BUFFER_SIZE_SETTING C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE
-
-/* ---------------------------------------- misc. state ---------------------------------------- */
-
-/**
- * Tripped state,
- *
- * This state exists to be able to provide reasoning for a tripped state during normal
- * interface operations, as well as to allow client to trip the component on demand.
- */
-typedef C2GlobalParam<C2Tuning, C2BoolValue, kParamIndexTripped>
- C2TrippedTuning;
-constexpr char C2_PARAMKEY_TRIPPED[] = "algo.tripped";
-
-/**
- * Configuration counters.
- *
- * Configurations are tracked using three counters. The input counter is incremented exactly
- * once with each work accepted by the component. The output counter is incremented exactly
- * once with each work completed by the component (in the order of work completion). The
- * global counter is incremented exactly once during to each config() call. These counters
- * shall be read-only.
- *
- * TODO: these should be counters.
- */
-typedef C2PortParam<C2Tuning, C2Uint64Value, kParamIndexConfigCounter> C2PortConfigCounterTuning;
-typedef C2GlobalParam<C2Tuning, C2Uint64Value, kParamIndexConfigCounter> C2ConfigCounterTuning;
-constexpr char C2_PARAMKEY_INPUT_COUNTER[] = "input.buffers.counter";
-constexpr char C2_PARAMKEY_OUTPUT_COUNTER[] = "output.buffers.counter";
-constexpr char C2_PARAMKEY_CONFIG_COUNTER[] = "algo.config.counter";
-
-/* ----------------------------------------- resources ----------------------------------------- */
-
-/**
- * Resources needed and resources reserved for current configuration.
- *
- * Resources are tracked as a vector of positive numbers. Available resources are defined by
- * the vendor.
- *
- * By default, no resources are reserved for a component. If resource reservation is successful,
- * the component shall be able to use those resources exclusively. If however, the component is
- * not using all of the reserved resources, those may be shared with other components.
- *
- * TODO: define some of the resources.
- */
-typedef C2GlobalParam<C2Tuning, C2Uint64Array, kParamIndexResourcesNeeded> C2ResourcesNeededTuning;
-typedef C2GlobalParam<C2Tuning, C2Uint64Array, kParamIndexResourcesReserved>
- C2ResourcesReservedTuning;
-constexpr char C2_PARAMKEY_RESOURCES_NEEDED[] = "resources.needed";
-constexpr char C2_PARAMKEY_RESOURCES_RESERVED[] = "resources.reserved";
-
-/**
- * Operating rate.
- *
- * Operating rate is the expected rate of work through the component. Negative values is
- * invalid.
- *
- * TODO: this could distinguish set value
- */
-typedef C2GlobalParam<C2Tuning, C2FloatValue, kParamIndexOperatingRate> C2OperatingRateTuning;
-constexpr char C2_PARAMKEY_OPERATING_RATE[] = "algo.rate";
-
-/**
- * Realtime / operating point.
- *
- * Priority value defines the operating point for the component. Operating points are defined by
- * the vendor. Priority value of 0 means that the client requires operation at the given operating
- * rate. Priority values -1 and below define operating points in decreasing performance. In this
- * case client expects best effort without exceeding the specific operating point. This allows
- * client to run components deeper in the background by using larger priority values. In these
- * cases operating rate is a hint for the maximum rate that the client anticipates.
- *
- * Operating rate and priority are used in tandem. E.g. if there are components that run at a
- * higher operating point (priority) it will make more resources available for components at
- * a lower operating point, so operating rate can be used to gate those components.
- *
- * Positive priority values are not defined at the moment and shall be treated equivalent to 0.
- */
-typedef C2GlobalParam<C2Tuning, C2Int32Value, kParamIndexRealTimePriority>
- C2RealTimePriorityTuning;
-constexpr char C2_PARAMKEY_PRIORITY[] = "algo.priority";
-
-/* ------------------------------------- protected content ------------------------------------- */
-
-/**
- * Secure mode.
- */
-C2ENUM(C2Config::secure_mode_t, uint32_t,
- SM_UNPROTECTED, ///< no content protection
- SM_READ_PROTECTED, ///< input and output buffers shall be protected from reading
-)
-
-typedef C2GlobalParam<C2Tuning, C2SimpleValueStruct<C2Config::secure_mode_t>, kParamIndexSecureMode>
- C2SecureModeTuning;
-constexpr char C2_PARAMKEY_SECURE_MODE[] = "algo.secure-mode";
-
-/* ===================================== ENCODER COMPONENTS ===================================== */
-
-/**
- * Bitrate
- */
-typedef C2StreamParam<C2Info, C2Uint32Value, kParamIndexBitrate> C2StreamBitrateInfo;
-typedef C2StreamBitrateInfo C2BitrateTuning; // deprecated
-constexpr char C2_PARAMKEY_BITRATE[] = "coded.bitrate";
-#define C2_NAME_STREAM_BITRATE_SETTING C2_PARAMKEY_BITRATE
-
-/**
- * Bitrate mode.
- *
- * TODO: refine this with bitrate ranges and suggested window
- */
-C2ENUM(C2Config::bitrate_mode_t, uint32_t,
- BITRATE_CONST_SKIP_ALLOWED = 0, ///< constant bitrate, frame skipping allowed
- BITRATE_CONST = 1, ///< constant bitrate, keep all frames
- BITRATE_VARIABLE_SKIP_ALLOWED = 2, ///< bitrate can vary, frame skipping allowed
- BITRATE_VARIABLE = 3, ///< bitrate can vary, keep all frames
- BITRATE_IGNORE = 7, ///< bitrate can be exceeded at will to achieve
- ///< quality or other settings
-
- // bitrate modes are composed of the following flags
- BITRATE_FLAG_KEEP_ALL_FRAMES = 1,
- BITRATE_FLAG_CAN_VARY = 2,
- BITRATE_FLAG_CAN_EXCEED = 4,
-)
-
-typedef C2StreamParam<C2Tuning, C2SimpleValueStruct<C2Config::bitrate_mode_t>,
- kParamIndexBitrateMode>
- C2StreamBitrateModeTuning;
-constexpr char C2_PARAMKEY_BITRATE_MODE[] = "algo.bitrate-mode";
-
-/**
- * Quality.
- *
- * This is defined by each component, the higher the better the output quality at the expense of
- * less compression efficiency. This setting is defined for the output streams in case the
- * component can support varying quality on each stream, or as an output port tuning in case the
- * quality is global to all streams.
- */
-typedef C2StreamParam<C2Tuning, C2Uint32Value, kParamIndexQuality> C2StreamQualityTuning;
-typedef C2PortParam<C2Tuning, C2Uint32Value, kParamIndexQuality> C2QualityTuning;
-constexpr char C2_PARAMKEY_QUALITY[] = "algo.quality";
-
-/**
- * Complexity.
- *
- * This is defined by each component, this higher the value, the more resources the component
- * will use to produce better quality at the same compression efficiency or better compression
- * efficiency at the same quality. This setting is defined for the output streams in case the
- * component can support varying complexity on each stream, or as an output port tuning in case the
- * quality is global to all streams
- */
-typedef C2StreamParam<C2Tuning, C2Uint32Value, kParamIndexComplexity> C2StreamComplexityTuning;
-typedef C2PortParam<C2Tuning, C2Uint32Value, kParamIndexComplexity> C2ComplexityTuning;
-constexpr char C2_PARAMKEY_COMPLEXITY[] = "algo.complexity";
-
-/**
- * Header (init-data) handling around sync frames.
- */
-C2ENUM(C2Config::prepend_header_mode_t, uint32_t,
- /**
- * don't prepend header. Signal header only through C2StreamInitDataInfo.
- */
- PREPEND_HEADER_TO_NONE,
-
- /**
- * prepend header before the first output frame and thereafter before the next sync frame
- * if it changes.
- */
- PREPEND_HEADER_ON_CHANGE,
-
- /**
- * prepend header before every sync frame.
- */
- PREPEND_HEADER_TO_ALL_SYNC,
-)
-
-typedef C2GlobalParam<C2Setting, C2BoolValue, kParamIndexPrependHeaderMode>
- C2PrependHeaderModeSetting;
-constexpr char C2_PARAMKEY_PREPEND_HEADER_MODE[] = "output.buffers.prepend-header";
-
-/* =================================== IMAGE/VIDEO COMPONENTS =================================== */
-
-/*
- * Order of transformation is:
- *
- * crop => (scaling => scaled-crop) => sample-aspect-ratio => flip => rotation
- */
-
-/**
- * Picture (image- and video frame) size.
- *
- * This is used for the output of the video decoder, and the input of the video encoder.
- */
-typedef C2PictureSizeStruct C2VideoSizeStruct; // deprecated
-
-typedef C2StreamParam<C2Info, C2PictureSizeStruct, kParamIndexPictureSize> C2StreamPictureSizeInfo;
-constexpr char C2_PARAMKEY_PICTURE_SIZE[] = "raw.size";
-#define C2_PARAMKEY_STREAM_PICTURE_SIZE C2_PARAMKEY_PICTURE_SIZE
-#define C2_NAME_STREAM_VIDEO_SIZE_INFO C2_PARAMKEY_PICTURE_SIZE
-typedef C2StreamPictureSizeInfo C2VideoSizeStreamInfo; // deprecated
-typedef C2StreamPictureSizeInfo C2VideoSizeStreamTuning; // deprecated
-#define C2_NAME_STREAM_VIDEO_SIZE_SETTING C2_PARAMKEY_PICTURE_SIZE
-
-/**
- * Crop rectangle.
- */
-struct C2RectStruct : C2Rect {
- C2RectStruct() = default;
- C2RectStruct(const C2Rect &rect) : C2Rect(rect) { }
-
- bool operator==(const C2RectStruct &) = delete;
- bool operator!=(const C2RectStruct &) = delete;
-
- DEFINE_AND_DESCRIBE_BASE_C2STRUCT(Rect)
- C2FIELD(width, "width")
- C2FIELD(height, "height")
- C2FIELD(left, "left")
- C2FIELD(top, "top")
-};
-
-typedef C2StreamParam<C2Info, C2RectStruct, kParamIndexCropRect> C2StreamCropRectInfo;
-constexpr char C2_PARAMKEY_CROP_RECT[] = "raw.crop";
-constexpr char C2_PARAMKEY_CODED_CROP_RECT[] = "coded.crop";
-
-/**
- * Pixel format.
- */
-// TODO: define some
-
-typedef C2StreamParam<C2Info, C2Uint32Value, kParamIndexPixelFormat> C2StreamPixelFormatInfo;
-constexpr char C2_PARAMKEY_PIXEL_FORMAT[] = "raw.pixel-format";
-
-/**
- * Extended rotation information also incorporating a flip.
- *
- * Rotation is counter clock-wise.
- */
-struct C2RotationStruct {
- C2RotationStruct(int32_t rotation = 0)
- : flip(0), value(rotation) { }
-
- int32_t flip; ///< horizontal flip (left-right flip applied prior to rotation)
- int32_t value; ///< rotation in degrees counter clockwise
-
- DEFINE_AND_DESCRIBE_BASE_C2STRUCT(Rotation)
- C2FIELD(flip, "flip")
- C2FIELD(value, "value")
-};
-
-typedef C2StreamParam<C2Info, C2RotationStruct, kParamIndexRotation> C2StreamRotationInfo;
-constexpr char C2_PARAMKEY_ROTATION[] = "raw.rotation";
-constexpr char C2_PARAMKEY_VUI_ROTATION[] = "coded.vui.rotation";
-
-/**
- * Pixel (sample) aspect ratio.
- */
-typedef C2StreamParam<C2Info, C2PictureSizeStruct, kParamIndexPixelAspectRatio>
- C2StreamPixelAspectRatioInfo;
-constexpr char C2_PARAMKEY_PIXEL_ASPECT_RATIO[] = "raw.sar";
-constexpr char C2_PARAMKEY_VUI_PIXEL_ASPECT_RATIO[] = "coded.vui.sar";
-
-/**
- * In-line scaling.
- *
- * Components can optionally support scaling of raw image/video frames. Or scaling only a
- * portion of raw image/video frames (scaled-crop).
- */
-
-C2ENUM(C2Config::scaling_method_t, uint32_t,
- SCALING_ARBITRARY, ///< arbitrary, unspecified
-)
-
-typedef C2StreamParam<C2Tuning, C2SimpleValueStruct<C2Config::scaling_method_t>,
- kParamIndexScalingMethod>
- C2StreamScalingMethodTuning;
-constexpr char C2_PARAMKEY_SCALING_MODE[] = "raw.scaling-method";
-#define C2_PARAMKEY_STREAM_SCALING_MODE C2_PARAMKEY_SCALING_MODE
-
-typedef C2StreamParam<C2Tuning, C2PictureSizeStruct, kParamIndexScaledPictureSize>
- C2StreamScaledPictureSizeTuning;
-constexpr char C2_PARAMKEY_SCALED_PICTURE_SIZE[] = "raw.scaled-size";
-#define C2_PARAMKEY_STREAM_SCALED_PICTURE_SIZE C2_PARAMKEY_SCALED_PICTURE_SIZE
-
-typedef C2StreamParam<C2Tuning, C2RectStruct, kParamIndexScaledCropRect>
- C2StreamScaledCropRectTuning;
-constexpr char C2_PARAMKEY_SCALED_CROP_RECT[] = "raw.scaled-crop";
-
-/* ------------------------------------- color information ------------------------------------- */
-
-/**
- * Color Info
- *
- * Chroma location can vary for top and bottom fields, so use an array, that can have 0 to 2
- * values. Empty array is used for non YUV formats.
- */
-
-struct C2Color {
- enum matrix_t : uint32_t; ///< matrix coefficient (YUV <=> RGB)
- enum plane_layout_t : uint32_t; ///< plane layout for flexible formats
- enum primaries_t : uint32_t; ///< color primaries and white point
- enum range_t : uint32_t; ///< range of color component values
- enum subsampling_t : uint32_t; ///< chroma subsampling
- enum transfer_t : uint32_t; ///< transfer function
-};
-
-/// Chroma subsampling
-C2ENUM(C2Color::subsampling_t, uint32_t,
- MONOCHROME, ///< there are no Cr nor Cb planes
- MONOCHROME_ALPHA, ///< there are no Cr nor Cb planes, but there is an alpha plane
- RGB, ///< RGB
- RGBA, ///< RGBA
- YUV_420, ///< Cr and Cb planes are subsampled by 2 both horizontally and vertically
- YUV_422, ///< Cr and Cb planes are subsampled horizontally
- YUV_444, ///< Cr and Cb planes are not subsampled
- YUVA_444, ///< Cr and Cb planes are not subsampled, there is an alpha plane
-)
-
-struct C2ChromaOffsetStruct {
- // chroma offsets defined by ITU
- constexpr static C2ChromaOffsetStruct ITU_YUV_444() { return { 0.0f, 0.0f }; }
- constexpr static C2ChromaOffsetStruct ITU_YUV_422() { return { 0.0f, 0.0f }; }
- constexpr static C2ChromaOffsetStruct ITU_YUV_420_0() { return { 0.0f, 0.5f }; }
- constexpr static C2ChromaOffsetStruct ITU_YUV_420_1() { return { 0.5f, 0.5f }; }
- constexpr static C2ChromaOffsetStruct ITU_YUV_420_2() { return { 0.0f, 0.0f }; }
- constexpr static C2ChromaOffsetStruct ITU_YUV_420_3() { return { 0.5f, 0.0f }; }
- constexpr static C2ChromaOffsetStruct ITU_YUV_420_4() { return { 0.0f, 1.0f }; }
- constexpr static C2ChromaOffsetStruct ITU_YUV_420_5() { return { 0.5f, 1.0f }; }
-
- float x; ///< x offset in pixels (towards right)
- float y; ///< y offset in pixels (towards down)
-
- DEFINE_AND_DESCRIBE_C2STRUCT(ChromaOffset)
- C2FIELD(x, "x")
- C2FIELD(y, "y")
-};
-
-struct C2ColorInfoStruct {
- C2ColorInfoStruct()
- : bitDepth(8), subsampling(C2Color::YUV_420) { }
-
- uint32_t bitDepth;
- C2Color::subsampling_t subsampling;
- C2ChromaOffsetStruct locations[]; // max 2 elements
-
- C2ColorInfoStruct(
- size_t /* flexCount */, uint32_t bitDepth_, C2Color::subsampling_t subsampling_)
- : bitDepth(bitDepth_), subsampling(subsampling_) { }
-
- C2ColorInfoStruct(
- size_t flexCount, uint32_t bitDepth_, C2Color::subsampling_t subsampling_,
- std::initializer_list<C2ChromaOffsetStruct> locations_)
- : bitDepth(bitDepth_), subsampling(subsampling_) {
- size_t ix = 0;
- for (const C2ChromaOffsetStruct &location : locations_) {
- if (ix == flexCount) {
- break;
- }
- locations[ix] = location;
- ++ix;
- }
- }
-
- DEFINE_AND_DESCRIBE_FLEX_C2STRUCT(ColorInfo, locations)
- C2FIELD(bitDepth, "bit-depth")
- C2FIELD(subsampling, "subsampling")
- C2FIELD(locations, "locations")
-};
-
-typedef C2StreamParam<C2Info, C2ColorInfoStruct, kParamIndexColorInfo> C2StreamColorInfo;
-constexpr char C2_PARAMKEY_COLOR_INFO[] = "raw.color-format";
-constexpr char C2_PARAMKEY_CODED_COLOR_INFO[] = "coded.color-format";
-
-/**
- * Color Aspects
- */
-
-/* The meaning of the following enumerators is as described in ITU-T H.273. */
-
-/// Range
-C2ENUM(C2Color::range_t, uint32_t,
- RANGE_UNSPECIFIED, ///< range is unspecified
- RANGE_FULL, ///< full range
- RANGE_LIMITED, ///< limited range
-
- RANGE_VENDOR_START = 0x80, ///< vendor-specific range values start here
- RANGE_OTHER = 0XFF ///< max value, reserved for undefined values
-)
-
-/// Color primaries
-C2ENUM(C2Color::primaries_t, uint32_t,
- PRIMARIES_UNSPECIFIED, ///< primaries are unspecified
- PRIMARIES_BT709, ///< Rec.ITU-R BT.709-6 or equivalent
- PRIMARIES_BT470_M, ///< Rec.ITU-R BT.470-6 System M or equivalent
- PRIMARIES_BT601_625, ///< Rec.ITU-R BT.601-6 625 or equivalent
- PRIMARIES_BT601_525, ///< Rec.ITU-R BT.601-6 525 or equivalent
- PRIMARIES_GENERIC_FILM, ///< Generic Film
- PRIMARIES_BT2020, ///< Rec.ITU-R BT.2020 or equivalent
- PRIMARIES_RP431, ///< SMPTE RP 431-2 or equivalent
- PRIMARIES_EG432, ///< SMPTE EG 432-1 or equivalent
- PRIMARIES_EBU3213, ///< EBU Tech.3213-E or equivalent
- ///
- PRIMARIES_VENDOR_START = 0x80, ///< vendor-specific primaries values start here
- PRIMARIES_OTHER = 0xff ///< max value, reserved for undefined values
-)
-
-/// Transfer function
-C2ENUM(C2Color::transfer_t, uint32_t,
- TRANSFER_UNSPECIFIED, ///< transfer is unspecified
- TRANSFER_LINEAR, ///< Linear transfer characteristics
- TRANSFER_SRGB, ///< sRGB or equivalent
- TRANSFER_170M, ///< SMPTE 170M or equivalent (e.g. BT.601/709/2020)
- TRANSFER_GAMMA22, ///< Assumed display gamma 2.2
- TRANSFER_GAMMA28, ///< Assumed display gamma 2.8
- TRANSFER_ST2084, ///< SMPTE ST 2084 for 10/12/14/16 bit systems
- TRANSFER_HLG, ///< ARIB STD-B67 hybrid-log-gamma
-
- TRANSFER_240M = 0x40, ///< SMPTE 240M or equivalent
- TRANSFER_XVYCC, ///< IEC 61966-2-4 or equivalent
- TRANSFER_BT1361, ///< Rec.ITU-R BT.1361 extended gamut
- TRANSFER_ST428, ///< SMPTE ST 428-1 or equivalent
- ///
- TRANSFER_VENDOR_START = 0x80, ///< vendor-specific transfer values start here
- TRANSFER_OTHER = 0xff ///< max value, reserved for undefined values
-)
-
-/// Matrix coefficient
-C2ENUM(C2Color::matrix_t, uint32_t,
- MATRIX_UNSPECIFIED, ///< matrix coefficients are unspecified
- MATRIX_BT709, ///< Rec.ITU-R BT.709-5 or equivalent
- MATRIX_FCC47_73_682, ///< FCC Title 47 CFR 73.682 or equivalent (KR=0.30, KB=0.11)
- MATRIX_BT601, ///< Rec.ITU-R BT.470, BT.601-6 625 or equivalent
- MATRIX_240M, ///< SMPTE 240M or equivalent
- MATRIX_BT2020, ///< Rec.ITU-R BT.2020 non-constant luminance
- MATRIX_BT2020_CONSTANT, ///< Rec.ITU-R BT.2020 constant luminance
- MATRIX_VENDOR_START = 0x80, ///< vendor-specific matrix coefficient values start here
- MATRIX_OTHER = 0xff, ///< max value, reserved for undefined values
-
- MATRIX_SMPTE240M = MATRIX_240M, // deprecated
- MATRIX_BT2020CONSTANT = MATRIX_BT2020_CONSTANT, // deprecated
-)
-
-constexpr C2Color::matrix_t MATRIX_BT470_6M = MATRIX_FCC47_73_682; // deprecated
-constexpr C2Color::matrix_t MATRIX_BT709_5 = MATRIX_BT709; // deprecated
-constexpr C2Color::matrix_t MATRIX_BT601_6 = MATRIX_BT601; // deprecated
-
-struct C2ColorAspectsStruct {
- C2Color::range_t range;
- C2Color::primaries_t primaries;
- C2Color::transfer_t transfer;
- C2Color::matrix_t matrix;
-
- C2ColorAspectsStruct()
- : range(C2Color::RANGE_UNSPECIFIED),
- primaries(C2Color::PRIMARIES_UNSPECIFIED),
- transfer(C2Color::TRANSFER_UNSPECIFIED),
- matrix(C2Color::MATRIX_UNSPECIFIED) { }
-
- C2ColorAspectsStruct(C2Color::range_t range_, C2Color::primaries_t primaries_,
- C2Color::transfer_t transfer_, C2Color::matrix_t matrix_)
- : range(range_), primaries(primaries_), transfer(transfer_), matrix(matrix_) {}
-
- DEFINE_AND_DESCRIBE_C2STRUCT(ColorAspects)
- C2FIELD(range, "range")
- C2FIELD(primaries, "primaries")
- C2FIELD(transfer, "transfer")
- C2FIELD(matrix, "matrix")
-};
-
-typedef C2StreamParam<C2Info, C2ColorAspectsStruct, kParamIndexColorAspects>
- C2StreamColorAspectsInfo;
-constexpr char C2_PARAMKEY_COLOR_ASPECTS[] = "raw.color";
-constexpr char C2_PARAMKEY_VUI_COLOR_ASPECTS[] = "coded.vui.color";
-
-/**
- * Default color aspects to use. These come from the container or client and shall be handled
- * according to the coding standard.
- */
-typedef C2StreamParam<C2Tuning, C2ColorAspectsStruct, kParamIndexDefaultColorAspects>
- C2StreamColorAspectsTuning;
-constexpr char C2_PARAMKEY_DEFAULT_COLOR_ASPECTS[] = "default.color";
-
-/**
- * HDR Static Metadata Info.
- */
-struct C2ColorXyStruct {
- float x; ///< x color coordinate in xyY space [0-1]
- float y; ///< y color coordinate in xyY space [0-1]
-
- DEFINE_AND_DESCRIBE_C2STRUCT(ColorXy)
- C2FIELD(x, "x")
- C2FIELD(y, "y")
-};
-
-struct C2MasteringDisplayColorVolumeStruct {
- C2ColorXyStruct red; ///< coordinates of red display primary
- C2ColorXyStruct green; ///< coordinates of green display primary
- C2ColorXyStruct blue; ///< coordinates of blue display primary
- C2ColorXyStruct white; ///< coordinates of white point
-
- float maxLuminance; ///< max display mastering luminance in cd/m^2
- float minLuminance; ///< min display mastering luminance in cd/m^2
-
- DEFINE_AND_DESCRIBE_C2STRUCT(MasteringDisplayColorVolume)
- C2FIELD(red, "red")
- C2FIELD(green, "green")
- C2FIELD(blue, "blue")
- C2FIELD(white, "white")
-
- C2FIELD(maxLuminance, "max-luminance")
- C2FIELD(minLuminance, "min-luminance")
-};
-
-struct C2HdrStaticMetadataStruct {
- C2MasteringDisplayColorVolumeStruct mastering;
-
- // content descriptors
- float maxCll; ///< max content light level (pixel luminance) in cd/m^2
- float maxFall; ///< max frame average light level (frame luminance) in cd/m^2
-
- DEFINE_AND_DESCRIBE_BASE_C2STRUCT(HdrStaticMetadata)
- C2FIELD(mastering, "mastering")
- C2FIELD(maxCll, "max-cll")
- C2FIELD(maxFall, "max-fall")
-};
-typedef C2StreamParam<C2Info, C2HdrStaticMetadataStruct, kParamIndexHdrStaticMetadata>
- C2StreamHdrStaticInfo;
-constexpr char C2_PARAMKEY_HDR_STATIC_INFO[] = "raw.hdr-static-info";
-
-/**
- * HDR10+ Metadata Info.
- */
-typedef C2StreamParam<C2Info, C2BlobValue, kParamIndexHdr10PlusMetadata>
- C2StreamHdr10PlusInfo;
-constexpr char C2_PARAMKEY_INPUT_HDR10_PLUS_INFO[] = "input.hdr10-plus-info";
-constexpr char C2_PARAMKEY_OUTPUT_HDR10_PLUS_INFO[] = "output.hdr10-plus-info";
-
-/* ------------------------------------ block-based coding ----------------------------------- */
-
-/**
- * Block-size, block count and block rate. Used to determine or communicate profile-level
- * requirements.
- */
-typedef C2StreamParam<C2Info, C2PictureSizeStruct, kParamIndexBlockSize> C2StreamBlockSizeInfo;
-constexpr char C2_PARAMKEY_BLOCK_SIZE[] = "coded.block-size";
-
-typedef C2StreamParam<C2Info, C2Uint32Value, kParamIndexBlockCount> C2StreamBlockCountInfo;
-constexpr char C2_PARAMKEY_BLOCK_COUNT[] = "coded.block-count";
-
-typedef C2StreamParam<C2Info, C2FloatValue, kParamIndexBlockRate> C2StreamBlockRateInfo;
-constexpr char C2_PARAMKEY_BLOCK_RATE[] = "coded.block-rate";
-
-/* ====================================== VIDEO COMPONENTS ====================================== */
-
-/**
- * Frame rate (coded and port for raw data)
- *
- * Coded frame rates are what is represented in the compressed bitstream and should correspond to
- * the timestamp.
- *
- * Frame rates on raw ports should still correspond to the timestamps.
- *
- * For slow motion or timelapse recording, the timestamp shall be adjusted prior to feeding an
- * encoder, and the time stretch parameter should be used to signal the relationship between
- * timestamp and real-world time.
- */
-typedef C2StreamParam<C2Info, C2FloatValue, kParamIndexFrameRate> C2StreamFrameRateInfo;
-constexpr char C2_PARAMKEY_FRAME_RATE[] = "coded.frame-rate";
-#define C2_NAME_STREAM_FRAME_RATE_SETTING C2_PARAMKEY_FRAME_RATE
-
-typedef C2PortParam<C2Info, C2FloatValue, kParamIndexFrameRate> C2PortFrameRateInfo;
-constexpr char C2_PARAMKEY_INPUT_FRAME_RATE[] = "input.frame-rate";
-constexpr char C2_PARAMKEY_OUTPUT_FRAME_RATE[] = "output.frame-rate";
-
-/**
- * Time stretch. Ratio between real-world time and timestamp. E.g. time stretch of 4.0 means that
- * timestamp grows 1/4 the speed of real-world time (e.g. 4x slo-mo input). This can be used to
- * optimize encoding.
- */
-typedef C2PortParam<C2Info, C2FloatValue, kParamIndexTimeStretch> C2PortTimeStretchInfo;
-constexpr char C2_PARAMKEY_INPUT_TIME_STRETCH[] = "input.time-stretch";
-constexpr char C2_PARAMKEY_OUTPUT_TIME_STRETCH[] = "output.time-stretch";
-
-/**
- * Max video frame size.
- */
-typedef C2StreamParam<C2Tuning, C2PictureSizeStruct, kParamIndexMaxPictureSize>
- C2StreamMaxPictureSizeTuning;
-typedef C2StreamMaxPictureSizeTuning C2MaxVideoSizeHintPortSetting;
-constexpr char C2_PARAMKEY_MAX_PICTURE_SIZE[] = "raw.max-size";
-
-/**
- * Picture type mask.
- */
-C2ENUM(C2Config::picture_type_t, uint32_t,
- SYNC_FRAME = (1 << 0), ///< sync frame, e.g. IDR
- I_FRAME = (1 << 1), ///< intra frame that is completely encoded
- P_FRAME = (1 << 2), ///< inter predicted frame from previous frames
- B_FRAME = (1 << 3), ///< backward predicted (out-of-order) frame
-)
-
-typedef C2Config::picture_type_t C2PictureTypeMask; // deprecated
-constexpr C2Config::picture_type_t C2PictureTypeKeyFrame = C2Config::SYNC_FRAME; // deprecated
-
-/**
- * Allowed picture types.
- */
-typedef C2StreamParam<C2Tuning, C2SimpleValueStruct<C2EasyEnum<C2Config::picture_type_t>>,
- kParamIndexPictureTypeMask>
- C2StreamPictureTypeMaskTuning;
-constexpr char C2_PARAMKEY_PICTURE_TYPE_MASK[] = "coding.picture-type-mask";
-
-/**
- * Resulting picture type
- */
-typedef C2StreamParam<C2Info, C2SimpleValueStruct<C2EasyEnum<C2Config::picture_type_t>>,
- kParamIndexPictureType>
- C2StreamPictureTypeInfo;
-typedef C2StreamPictureTypeInfo C2StreamPictureTypeMaskInfo;
-constexpr char C2_PARAMKEY_PICTURE_TYPE[] = "coded.picture-type";
-
-/**
- * GOP specification.
- *
- * GOP is specified in layers between sync frames, by specifying the number of specific type of
- * frames between the previous type (starting with sync frames for the first layer):
- *
- * E.g.
- * - 4 I frames between each sync frame
- * - 2 P frames between each I frame
- * - 1 B frame between each P frame
- *
- * [ { I, 4 }, { P, 2 }, { B, 1 } ] ==> (Sync)BPBPB IBPBPB IBPBPB IBPBPB IBPBPB (Sync)BPBPB
- *
- * For infinite GOP, I layer can be omitted (as the first frame is always a sync frame.):
- *
- * [ { P, MAX_UINT } ] ==> (Sync)PPPPPPPPPPPPPPPPPP...
- *
- * Sync frames can also be requested on demand, and as a time-based interval. For time-based
- * interval, if there hasn't been a sync frame in at least the given time, the next I frame shall
- * be encoded as a sync frame. For sync request, the next I frame shall be encoded as a sync frame.
- *
- * Temporal layering will determine GOP structure other than the I frame count between sync
- * frames.
- */
-struct C2GopLayerStruct {
- C2GopLayerStruct(C2Config::picture_type_t type, uint32_t count_)
- : type_(type), count(count_) { }
-
- C2Config::picture_type_t type_;
- uint32_t count;
-
- DEFINE_AND_DESCRIBE_C2STRUCT(GopLayer)
- C2FIELD(type_, "type")
- C2FIELD(count, "count")
-};
-
-typedef C2StreamParam<C2Tuning, C2SimpleArrayStruct<C2GopLayerStruct>, kParamIndexGop>
- C2StreamGopTuning;
-constexpr char C2_PARAMKEY_GOP[] = "coding.gop";
-
-/**
- * Sync frame can be requested on demand by the client.
- *
- * If true, the next I frame shall be encoded as a sync frame. This config can be passed
- * synchronously with the work, or directly to the component - leading to different result.
- * If it is passed with work, it shall take effect when that work item is being processed (so
- * the first I frame at or after that work item shall be a sync frame).
- */
-typedef C2StreamParam<C2Tuning, C2EasyBoolValue, kParamIndexRequestSyncFrame>
- C2StreamRequestSyncFrameTuning;
-constexpr char C2_PARAMKEY_REQUEST_SYNC_FRAME[] = "coding.request-sync-frame";
-
-/**
- * Sync frame interval in time domain (timestamp).
- *
- * If there hasn't been a sync frame in at least this value, the next intra frame shall be encoded
- * as a sync frame. The value of MAX_I64 or a negative value means no sync frames after the first
- * frame. A value of 0 means all sync frames.
- */
-typedef C2StreamParam<C2Tuning, C2Int64Value, kParamIndexSyncFrameInterval>
- C2StreamSyncFrameIntervalTuning;
-constexpr char C2_PARAMKEY_SYNC_FRAME_INTERVAL[] = "coding.sync-frame-interval";
-// deprecated
-#define C2_PARAMKEY_SYNC_FRAME_PERIOD C2_PARAMKEY_SYNC_FRAME_INTERVAL
-
-/**
- * Temporal layering
- *
- * Layer index is a value between 0 and layer count - 1. Layers with higher index have higher
- * frequency:
- * 0
- * 1 1
- * 2 2 2 2
- */
-typedef C2StreamParam<C2Info, C2Uint32Value, kParamIndexLayerIndex> C2StreamLayerIndexInfo;
-constexpr char C2_PARAMKEY_LAYER_INDEX[] = "coded.layer-index";
-
-typedef C2StreamParam<C2Info, C2Uint32Value, kParamIndexLayerCount> C2StreamLayerCountInfo;
-constexpr char C2_PARAMKEY_LAYER_COUNT[] = "coded.layer-count";
-
-struct C2TemporalLayeringStruct {
- C2TemporalLayeringStruct()
- : layerCount(0), bLayerCount(0) { }
-
- C2TemporalLayeringStruct(size_t /* flexCount */, uint32_t layerCount_, uint32_t bLayerCount_)
- : layerCount(layerCount_), bLayerCount(c2_min(layerCount_, bLayerCount_)) { }
-
- C2TemporalLayeringStruct(size_t flexCount, uint32_t layerCount_, uint32_t bLayerCount_,
- std::initializer_list<float> ratios)
- : layerCount(layerCount_), bLayerCount(c2_min(layerCount_, bLayerCount_)) {
- size_t ix = 0;
- for (float ratio : ratios) {
- if (ix == flexCount) {
- break;
- }
- bitrateRatios[ix++] = ratio;
- }
- }
-
- uint32_t layerCount; ///< total number of layers (0 means no temporal layering)
- uint32_t bLayerCount; ///< total number of bidirectional layers (<= num layers)
- /**
- * Bitrate budgets for each layer and the layers below, given as a ratio of the total
- * stream bitrate. This can be omitted or partially specififed by the client while configuring,
- * in which case the component shall fill in appropriate values for the missing layers.
- * This must be provided by the component when queried for at least layer count - 1 (as the
- * last layer's budget is always 1.0).
- */
- float bitrateRatios[]; ///< 1.0-based
-
- DEFINE_AND_DESCRIBE_FLEX_C2STRUCT(TemporalLayering, bitrateRatios)
- C2FIELD(layerCount, "layer-count")
- C2FIELD(bLayerCount, "b-layer-count")
- C2FIELD(bitrateRatios, "bitrate-ratios")
-};
-
-typedef C2StreamParam<C2Tuning, C2TemporalLayeringStruct, kParamIndexTemporalLayering>
- C2StreamTemporalLayeringTuning;
-constexpr char C2_PARAMKEY_TEMPORAL_LAYERING[] = "coding.temporal-layering";
-
-/**
- * Intra-refresh.
- */
-
-C2ENUM(C2Config::intra_refresh_mode_t, uint32_t,
- INTRA_REFRESH_DISABLED, ///< no intra refresh
- INTRA_REFRESH_ARBITRARY, ///< arbitrary, unspecified
-)
-
-struct C2IntraRefreshStruct {
- C2IntraRefreshStruct()
- : mode(C2Config::INTRA_REFRESH_DISABLED), period(0.) { }
-
- C2IntraRefreshStruct(C2Config::intra_refresh_mode_t mode_, float period_)
- : mode(mode_), period(period_) { }
-
- C2Config::intra_refresh_mode_t mode; ///< refresh mode
- float period; ///< intra refresh period in frames (must be >= 1), 0 means disabled
-
- DEFINE_AND_DESCRIBE_C2STRUCT(IntraRefresh)
- C2FIELD(mode, "mode")
- C2FIELD(period, "period")
-};
-
-typedef C2StreamParam<C2Tuning, C2IntraRefreshStruct, kParamIndexIntraRefresh>
- C2StreamIntraRefreshTuning;
-constexpr char C2_PARAMKEY_INTRA_REFRESH[] = "coding.intra-refresh";
-
-/* ====================================== IMAGE COMPONENTS ====================================== */
-
-/**
- * Tile layout.
- *
- * This described how the image is decomposed into tiles.
- */
-C2ENUM(C2Config::scan_order_t, uint32_t,
- SCAN_LEFT_TO_RIGHT_THEN_DOWN
-)
-
-struct C2TileLayoutStruct {
- C2PictureSizeStruct tile; ///< tile size
- uint32_t columnCount; ///< number of tiles horizontally
- uint32_t rowCount; ///< number of tiles vertically
- C2Config::scan_order_t order; ///< tile order
-
- DEFINE_AND_DESCRIBE_C2STRUCT(TileLayout)
- C2FIELD(tile, "tile")
- C2FIELD(columnCount, "columns")
- C2FIELD(rowCount, "rows")
- C2FIELD(order, "order")
-};
-
-typedef C2StreamParam<C2Info, C2TileLayoutStruct, kParamIndexTileLayout> C2StreamTileLayoutInfo;
-constexpr char C2_PARAMKEY_TILE_LAYOUT[] = "coded.tile-layout";
-
-/**
- * Tile handling.
- *
- * Whether to concatenate tiles or output them each.
- */
-C2ENUM(C2Config::tiling_mode_t, uint32_t,
- TILING_SEPARATE, ///< output each tile in a separate onWorkDone
- TILING_CONCATENATE ///< output one work completion per frame (concatenate tiles)
-)
-
-typedef C2StreamParam<C2Tuning, C2TileLayoutStruct, kParamIndexTileHandling>
- C2StreamTileHandlingTuning;
-constexpr char C2_PARAMKEY_TILE_HANDLING[] = "coding.tile-handling";
-
-/* ====================================== AUDIO COMPONENTS ====================================== */
-
-/**
- * Sample rate
- */
-typedef C2StreamParam<C2Info, C2Uint32Value, kParamIndexSampleRate> C2StreamSampleRateInfo;
-constexpr char C2_PARAMKEY_SAMPLE_RATE[] = "raw.sample-rate";
-constexpr char C2_PARAMKEY_CODED_SAMPLE_RATE[] = "coded.sample-rate";
-// deprecated
-#define C2_NAME_STREAM_SAMPLE_RATE_SETTING C2_PARAMKEY_SAMPLE_RATE
-
-/**
- * Channel count.
- */
-typedef C2StreamParam<C2Info, C2Uint32Value, kParamIndexChannelCount> C2StreamChannelCountInfo;
-constexpr char C2_PARAMKEY_CHANNEL_COUNT[] = "raw.channel-count";
-constexpr char C2_PARAMKEY_CODED_CHANNEL_COUNT[] = "coded.channel-count";
-// deprecated
-#define C2_NAME_STREAM_CHANNEL_COUNT_SETTING C2_PARAMKEY_CHANNEL_COUNT
-
-/**
- * Max channel count. Used to limit the number of coded or decoded channels.
- */
-typedef C2StreamParam<C2Info, C2Uint32Value, kParamIndexMaxChannelCount> C2StreamMaxChannelCountInfo;
-constexpr char C2_PARAMKEY_MAX_CHANNEL_COUNT[] = "raw.max-channel-count";
-constexpr char C2_PARAMKEY_MAX_CODED_CHANNEL_COUNT[] = "coded.max-channel-count";
-
-/**
- * Audio sample format (PCM encoding)
- */
-C2ENUM(C2Config::pcm_encoding_t, uint32_t,
- PCM_16,
- PCM_8,
- PCM_FLOAT
-)
-
-typedef C2StreamParam<C2Info, C2SimpleValueStruct<C2Config::pcm_encoding_t>, kParamIndexPcmEncoding>
- C2StreamPcmEncodingInfo;
-constexpr char C2_PARAMKEY_PCM_ENCODING[] = "raw.pcm-encoding";
-constexpr char C2_PARAMKEY_CODED_PCM_ENCODING[] = "coded.pcm-encoding";
-
-/**
- * AAC SBR Mode. Used during encoding.
- */
-C2ENUM(C2Config::aac_sbr_mode_t, uint32_t,
- AAC_SBR_OFF,
- AAC_SBR_SINGLE_RATE,
- AAC_SBR_DUAL_RATE,
- AAC_SBR_AUTO ///< let the codec decide
-)
-
-typedef C2StreamParam<C2Info, C2SimpleValueStruct<C2Config::aac_sbr_mode_t>, kParamIndexAacSbrMode>
- C2StreamAacSbrModeTuning;
-constexpr char C2_PARAMKEY_AAC_SBR_MODE[] = "coding.aac-sbr-mode";
-
-/**
- * DRC Compression. Used during decoding.
- */
-C2ENUM(C2Config::drc_compression_mode_t, int32_t,
- DRC_COMPRESSION_ODM_DEFAULT, ///< odm's default
- DRC_COMPRESSION_NONE,
- DRC_COMPRESSION_LIGHT,
- DRC_COMPRESSION_HEAVY ///<
-)
-
-typedef C2StreamParam<C2Info, C2SimpleValueStruct<C2Config::drc_compression_mode_t>,
- kParamIndexDrcCompression>
- C2StreamDrcCompressionModeTuning;
-constexpr char C2_PARAMKEY_DRC_COMPRESSION_MODE[] = "coding.drc.compression-mode";
-
-/**
- * DRC target reference level in dBFS. Used during decoding.
- */
-typedef C2StreamParam<C2Info, C2FloatValue, kParamIndexDrcTargetReferenceLevel>
- C2StreamDrcTargetReferenceLevelTuning;
-constexpr char C2_PARAMKEY_DRC_TARGET_REFERENCE_LEVEL[] = "coding.drc.reference-level";
-
-/**
- * DRC target reference level in dBFS. Used during decoding.
- */
-typedef C2StreamParam<C2Info, C2FloatValue, kParamIndexDrcEncodedTargetLevel>
- C2StreamDrcEncodedTargetLevelTuning;
-constexpr char C2_PARAMKEY_DRC_ENCODED_TARGET_LEVEL[] = "coding.drc.encoded-level";
-
-/**
- * DRC target reference level in dBFS. Used during decoding.
- */
-typedef C2StreamParam<C2Info, C2FloatValue, kParamIndexDrcBoostFactor>
- C2StreamDrcBoostFactorTuning;
-constexpr char C2_PARAMKEY_DRC_BOOST_FACTOR[] = "coding.drc.boost-factor";
-
-/**
- * DRC target reference level in dBFS. Used during decoding.
- */
-typedef C2StreamParam<C2Info, C2FloatValue, kParamIndexDrcAttenuationFactor>
- C2StreamDrcAttenuationFactorTuning;
-constexpr char C2_PARAMKEY_DRC_ATTENUATION_FACTOR[] = "coding.drc.attenuation-factor";
-
-/**
- * DRC Effect Type (see ISO 23003-4) Uniform Dynamic Range Control. Used during decoding.
- */
-C2ENUM(C2Config::drc_effect_type_t, int32_t,
- DRC_EFFECT_ODM_DEFAULT = -2, ///< odm's default
- DRC_EFFECT_OFF = -1, ///< no DRC
- DRC_EFFECT_NONE = 0, ///< no DRC except to prevent clipping
- DRC_EFFECT_LATE_NIGHT,
- DRC_EFFECT_NOISY_ENVIRONMENT,
- DRC_EFFECT_LIMITED_PLAYBACK_RANGE,
- DRC_EFFECT_LOW_PLAYBACK_LEVEL,
- DRC_EFFECT_DIALOG_ENHANCEMENT,
- DRC_EFFECT_GENERAL_COMPRESSION
-)
-
-typedef C2StreamParam<C2Info, C2SimpleValueStruct<C2Config::drc_effect_type_t>,
- kParamIndexDrcEffectType>
- C2StreamDrcEffectTypeTuning;
-constexpr char C2_PARAMKEY_DRC_EFFECT_TYPE[] = "coding.drc.effect-type";
-
-/* --------------------------------------- AAC components --------------------------------------- */
-
-/**
- * AAC stream format
- */
-C2ENUM(C2Config::aac_packaging_t, uint32_t,
- AAC_PACKAGING_RAW,
- AAC_PACKAGING_ADTS
-)
-
-typedef C2Config::aac_packaging_t C2AacStreamFormatKind; // deprecated
-// deprecated
-constexpr C2Config::aac_packaging_t C2AacStreamFormatRaw = C2Config::AAC_PACKAGING_RAW;
-constexpr C2Config::aac_packaging_t C2AacStreamFormatAdts = C2Config::AAC_PACKAGING_ADTS;
-
-typedef C2StreamParam<C2Info, C2SimpleValueStruct<C2EasyEnum<C2Config::aac_packaging_t>>,
- kParamIndexAacPackaging> C2StreamAacPackagingInfo;
-typedef C2StreamAacPackagingInfo C2StreamAacFormatInfo;
-constexpr char C2_PARAMKEY_AAC_PACKAGING[] = "coded.aac-packaging";
-#define C2_NAME_STREAM_AAC_FORMAT_SETTING C2_PARAMKEY_AAC_PACKAGING
-
-/* ================================ PLATFORM-DEFINED PARAMETERS ================================ */
-
-/**
- * Platform level and features.
- */
-enum C2Config::platform_level_t : uint32_t {
- PLATFORM_P, ///< support for Android 9.0 feature set
-};
-
-// read-only
-typedef C2GlobalParam<C2Setting, C2SimpleValueStruct<C2Config::platform_level_t>,
- kParamIndexPlatformLevel>
- C2PlatformLevelSetting;
-constexpr char C2_PARAMKEY_PLATFORM_LEVEL[] = "api.platform-level";
-
-enum C2Config::platform_feature_t : uint64_t {
- // no platform-specific features have been defined
-};
-
-// read-only
-typedef C2GlobalParam<C2Setting, C2SimpleValueStruct<C2Config::platform_feature_t>,
- kParamIndexPlatformFeatures>
- C2PlatformFeaturesSetting;
-constexpr char C2_PARAMKEY_PLATFORM_FEATURES[] = "api.platform-features";
-
-/**
- * This structure describes the preferred ion allocation parameters for a given memory usage.
- */
-struct C2StoreIonUsageStruct {
- inline C2StoreIonUsageStruct() {
- memset(this, 0, sizeof(*this));
- }
-
- inline C2StoreIonUsageStruct(uint64_t usage_, uint32_t capacity_)
- : usage(usage_), capacity(capacity_), heapMask(0), allocFlags(0), minAlignment(0) { }
-
- uint64_t usage; ///< C2MemoryUsage
- uint32_t capacity; ///< capacity
- int32_t heapMask; ///< ion heapMask
- int32_t allocFlags; ///< ion allocation flags
- uint32_t minAlignment; ///< minimum alignment
-
- DEFINE_AND_DESCRIBE_C2STRUCT(StoreIonUsage)
- C2FIELD(usage, "usage")
- C2FIELD(capacity, "capacity")
- C2FIELD(heapMask, "heap-mask")
- C2FIELD(allocFlags, "alloc-flags")
- C2FIELD(minAlignment, "min-alignment")
-};
-
-// store, private
-typedef C2GlobalParam<C2Info, C2StoreIonUsageStruct, kParamIndexStoreIonUsage>
- C2StoreIonUsageInfo;
-
-/**
- * Flexible pixel format descriptors
- */
-struct C2FlexiblePixelFormatDescriptorStruct {
- uint32_t pixelFormat;
- uint32_t bitDepth;
- C2Color::subsampling_t subsampling;
- C2Color::plane_layout_t layout;
-
- DEFINE_AND_DESCRIBE_C2STRUCT(FlexiblePixelFormatDescriptor)
- C2FIELD(pixelFormat, "pixel-format")
- C2FIELD(bitDepth, "bit-depth")
- C2FIELD(subsampling, "subsampling")
- C2FIELD(layout, "layout")
-};
-
-/**
- * Plane layout of flexible pixel formats.
- *
- * bpp: bytes per color component, e.g. 1 for 8-bit formats, and 2 for 10-16-bit formats.
- */
-C2ENUM(C2Color::plane_layout_t, uint32_t,
- /** Unknown layout */
- UNKNOWN_LAYOUT,
-
- /** Planar layout with rows of each plane packed (colInc = bpp) */
- PLANAR_PACKED,
-
- /** Semiplanar layout with rows of each plane packed (colInc_Y/A = bpp (planar),
- * colInc_Cb/Cr = 2*bpp (interleaved). Used only for YUV(A) formats. */
- SEMIPLANAR_PACKED,
-
- /** Interleaved packed. colInc = N*bpp (N are the number of color components) */
- INTERLEAVED_PACKED,
-
- /** Interleaved aligned. colInc = smallest power of 2 >= N*bpp (N are the number of color
- * components) */
- INTERLEAVED_ALIGNED
-)
-
-typedef C2GlobalParam<C2Info, C2SimpleArrayStruct<C2FlexiblePixelFormatDescriptorStruct>,
- kParamIndexFlexiblePixelFormatDescriptors>
- C2StoreFlexiblePixelFormatDescriptorsInfo;
-
-/**
- * This structure describes the android dataspace for a raw video/image frame.
- */
-typedef C2StreamParam<C2Info, C2Uint32Value, kParamIndexDataSpace> C2StreamDataSpaceInfo;
-constexpr char C2_PARAMKEY_DATA_SPACE[] = "raw.data-space";
-
-/**
- * This structure describes the android surface scaling mode for a raw video/image frame.
- */
-typedef C2StreamParam<C2Info, C2Uint32Value, kParamIndexSurfaceScaling> C2StreamSurfaceScalingInfo;
-constexpr char C2_PARAMKEY_SURFACE_SCALING_MODE[] = "raw.surface-scaling";
-
-/* ======================================= INPUT SURFACE ======================================= */
-
-/**
- * Input surface EOS
- */
-typedef C2GlobalParam<C2Tuning, C2EasyBoolValue, kParamIndexInputSurfaceEos>
- C2InputSurfaceEosTuning;
-constexpr char C2_PARAMKEY_INPUT_SURFACE_EOS[] = "input-surface.eos";
-#define C2_NAME_INPUT_SURFACE_EOS_TUNING C2_PARAMKEY_INPUT_SURFACE_EOS
-
-/**
- * Start/suspend/resume/stop controls and timestamps for input surface.
- *
- * TODO: make these counters
- */
-
-struct C2TimedControlStruct {
- c2_bool_t enabled; ///< control is enabled
- int64_t timestamp; ///< if enabled, time the control should take effect
-
- C2TimedControlStruct()
- : enabled(C2_FALSE), timestamp(0) { }
-
- /* implicit */ C2TimedControlStruct(uint64_t timestamp_)
- : enabled(C2_TRUE), timestamp(timestamp_) { }
-
- DEFINE_AND_DESCRIBE_C2STRUCT(TimedControl)
- C2FIELD(enabled, "enabled")
- C2FIELD(timestamp, "timestamp")
-};
-
-typedef C2PortParam<C2Tuning, C2TimedControlStruct, kParamIndexStartAt>
- C2PortStartTimestampTuning;
-constexpr char C2_PARAMKEY_INPUT_SURFACE_START_AT[] = "input-surface.start";
-typedef C2PortParam<C2Tuning, C2TimedControlStruct, kParamIndexSuspendAt>
- C2PortSuspendTimestampTuning;
-constexpr char C2_PARAMKEY_INPUT_SURFACE_SUSPEND_AT[] = "input-surface.suspend";
-typedef C2PortParam<C2Tuning, C2TimedControlStruct, kParamIndexResumeAt>
- C2PortResumeTimestampTuning;
-constexpr char C2_PARAMKEY_INPUT_SURFACE_RESUME_AT[] = "input-surface.resume";
-typedef C2PortParam<C2Tuning, C2TimedControlStruct, kParamIndexStopAt>
- C2PortStopTimestampTuning;
-constexpr char C2_PARAMKEY_INPUT_SURFACE_STOP_AT[] = "input-surface.stop";
-
-/**
- * Time offset for input surface. Input timestamp to codec is surface buffer timestamp plus this
- * time offset.
- */
-typedef C2GlobalParam<C2Tuning, C2Int64Value, kParamIndexTimeOffset> C2ComponentTimeOffsetTuning;
-constexpr char C2_PARAMKEY_INPUT_SURFACE_TIME_OFFSET[] = "input-surface.time-offset";
-
-/**
- * Minimum fps for input surface.
- *
- * Repeat frame to meet this.
- */
-typedef C2PortParam<C2Tuning, C2FloatValue, kParamIndexMinFrameRate> C2PortMinFrameRateTuning;
-constexpr char C2_PARAMKEY_INPUT_SURFACE_MIN_FRAME_RATE[] = "input-surface.min-frame-rate";
-
-/**
- * Timestamp adjustment (override) for input surface buffers. These control the input timestamp
- * fed to the codec, but do not impact the output timestamp.
- */
-struct C2TimestampGapAdjustmentStruct {
- /// control modes
- enum mode_t : uint32_t;
-
- inline C2TimestampGapAdjustmentStruct();
-
- inline C2TimestampGapAdjustmentStruct(mode_t mode_, uint64_t value_)
- : mode(mode_), value(value_) { }
-
- mode_t mode; ///< control mode
- uint64_t value; ///< control value for gap between two timestamp
-
- DEFINE_AND_DESCRIBE_C2STRUCT(TimestampGapAdjustment)
- C2FIELD(mode, "mode")
- C2FIELD(value, "value")
-};
-
-C2ENUM(C2TimestampGapAdjustmentStruct::mode_t, uint32_t,
- NONE,
- MIN_GAP,
- FIXED_GAP,
-);
-
-inline C2TimestampGapAdjustmentStruct::C2TimestampGapAdjustmentStruct()
- : mode(C2TimestampGapAdjustmentStruct::NONE), value(0) { }
-
-typedef C2PortParam<C2Tuning, C2TimestampGapAdjustmentStruct> C2PortTimestampGapTuning;
-constexpr char C2_PARAMKEY_INPUT_SURFACE_TIMESTAMP_ADJUSTMENT[] = "input-surface.timestamp-adjustment";
-
-/// @}
-
-#endif // C2CONFIG_H_
diff --git a/codec2/include/C2Enum.h b/codec2/include/C2Enum.h
deleted file mode 100644
index b0fad8f..0000000
--- a/codec2/include/C2Enum.h
+++ /dev/null
@@ -1,228 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2ENUM_H_
-#define C2ENUM_H_
-
-#include <C2Param.h>
-#include <_C2MacroUtils.h>
-
-#include <utility>
-#include <vector>
-
-/** \file
- * Tools for easier enum support.
- */
-
-/// \cond INTERNAL
-
-/* ---------------------------- UTILITIES FOR ENUMERATION REFLECTION ---------------------------- */
-
-/**
- * Utility class that allows ignoring enum value assignment (e.g. both '(_C2EnumConst)kValue = x'
- * and '(_C2EnumConst)kValue' will eval to kValue.
- */
-template<typename T>
-class _C2EnumConst {
-public:
- // implicit conversion from T
- inline _C2EnumConst(T value) : _mValue(value) {}
- // implicit conversion to T
- inline operator T() { return _mValue; }
- // implicit conversion to C2Value::Primitive
- inline operator C2Value::Primitive() { return (T)_mValue; }
- // ignore assignment and return T here to avoid implicit conversion to T later
- inline T &operator =(T value __unused) { return _mValue; }
-private:
- T _mValue;
-};
-
-/// mapper to get name of enum
-/// \note this will contain any initialization, which we will remove when converting to lower-case
-#define _C2_GET_ENUM_NAME(x, y) #x
-/// mapper to get value of enum
-#define _C2_GET_ENUM_VALUE(x, type) (_C2EnumConst<type>)x
-
-/// \endcond
-
-class _C2EnumUtils {
- static C2String camelCaseToDashed(C2String name);
-
- static std::vector<C2String> sanitizeEnumValueNames(
- const std::vector<C2StringLiteral> names,
- C2StringLiteral _prefix = nullptr);
-
- friend class C2UtilTest_EnumUtilsTest_Test;
-
-public:
- // this may not be used...
- static C2_HIDE std::vector<C2String> parseEnumValuesFromString(C2StringLiteral value);
-
- template<typename T>
- static C2_HIDE C2FieldDescriptor::NamedValuesType sanitizeEnumValues(
- std::vector<T> values,
- std::vector<C2StringLiteral> names,
- C2StringLiteral prefix = nullptr) {
- C2FieldDescriptor::NamedValuesType namedValues;
- std::vector<C2String> sanitizedNames = sanitizeEnumValueNames(names, prefix);
- for (size_t i = 0; i < values.size() && i < sanitizedNames.size(); ++i) {
- namedValues.emplace_back(sanitizedNames[i], values[i]);
- }
- return namedValues;
- }
-
- template<typename E>
- static C2_HIDE C2FieldDescriptor::NamedValuesType customEnumValues(
- std::vector<std::pair<C2StringLiteral, E>> items) {
- C2FieldDescriptor::NamedValuesType namedValues;
- for (auto &item : items) {
- namedValues.emplace_back(item.first, item.second);
- }
- return namedValues;
- }
-};
-
-#define DEFINE_C2_ENUM_VALUE_AUTO_HELPER(name, type, prefix, ...) \
- _DEFINE_C2_ENUM_VALUE_AUTO_HELPER(__C2_GENERATE_GLOBAL_VARS__, name, type, prefix, \
- ##__VA_ARGS__)
-#define _DEFINE_C2_ENUM_VALUE_AUTO_HELPER(enabled, name, type, prefix, ...) \
- __DEFINE_C2_ENUM_VALUE_AUTO_HELPER(enabled, name, type, prefix, ##__VA_ARGS__)
-#define __DEFINE_C2_ENUM_VALUE_AUTO_HELPER(enabled, name, type, prefix, ...) \
- ___DEFINE_C2_ENUM_VALUE_AUTO_HELPER##enabled(name, type, prefix, ##__VA_ARGS__)
-#define ___DEFINE_C2_ENUM_VALUE_AUTO_HELPER(name, type, prefix, ...) \
-template<> \
-C2FieldDescriptor::NamedValuesType C2FieldDescriptor::namedValuesFor(const name &r __unused) { \
- return _C2EnumUtils::sanitizeEnumValues( \
- std::vector<C2Value::Primitive> { _C2_MAP(_C2_GET_ENUM_VALUE, type, __VA_ARGS__) }, \
- { _C2_MAP(_C2_GET_ENUM_NAME, type, __VA_ARGS__) }, \
- prefix); \
-}
-#define ___DEFINE_C2_ENUM_VALUE_AUTO_HELPER__C2_GENERATE_GLOBAL_VARS__(name, type, prefix, ...)
-
-#define DEFINE_C2_ENUM_VALUE_CUSTOM_HELPER(name, names) \
- _DEFINE_C2_ENUM_VALUE_CUSTOM_HELPER(__C2_GENERATE_GLOBAL_VARS__, name, names)
-#define _DEFINE_C2_ENUM_VALUE_CUSTOM_HELPER(enabled, name, names) \
- __DEFINE_C2_ENUM_VALUE_CUSTOM_HELPER(enabled, name, names)
-#define __DEFINE_C2_ENUM_VALUE_CUSTOM_HELPER(enabled, name, names) \
- ___DEFINE_C2_ENUM_VALUE_CUSTOM_HELPER##enabled(name, names)
-#define ___DEFINE_C2_ENUM_VALUE_CUSTOM_HELPER(name, names) \
-template<> \
-C2FieldDescriptor::NamedValuesType C2FieldDescriptor::namedValuesFor(const name &r __unused) { \
- return _C2EnumUtils::customEnumValues( \
- std::vector<std::pair<C2StringLiteral, name>> names); \
-}
-#define ___DEFINE_C2_ENUM_VALUE_CUSTOM_HELPER__C2_GENERATE_GLOBAL_VARS__(name, names)
-
-/**
- * Defines an enum type with the default named value mapper. The default mapper
- * finds and removes the longest common prefix across all of the enum value names, and
- * replaces camel-case separators with dashes ('-').
- *
- * This macro must be used in the global scope and namespace.
- *
- * ~~~~~~~~~~~~~ (.cpp)
- * C2ENUM(c2_enum_t, uint32_t,
- * C2_VALUE1,
- * C2_VALUE2 = 5,
- * C2_VALUE3 = C2_VALUE1 + 1)
- * // named values are: C2_VALUE1 => "1", C2_VALUE2 => "2", ...
- * // longest common prefix is "C2_VALUE"
- * ~~~~~~~~~~~~~
- *
- * \param name name of the enum type (This can be an inner class enum.)
- * \param type underlying type
- */
-#define C2ENUM(name, type, ...) \
-enum name : type { __VA_ARGS__ }; \
-DEFINE_C2_ENUM_VALUE_AUTO_HELPER(name, type, nullptr, __VA_ARGS__)
-
-/**
- * Defines an enum type with the default named value mapper but custom prefix. The default
- * mapper removes the prefix from all of the enum value names (if present), and
- * inserts dashes at camel-case separators (lowHigh becomes low-high) and also replaces
- * non-leading underscores with dashes ('-').
- *
- * This macro must be used in the global scope and namespace.
- *
- * ~~~~~~~~~~~~~ (.cpp)
- * C2ENUM_CUSTOM_PREFIX(c2_enum_t, uint32_t, "C2_",
- * C2_VALUE1,
- * C2_VALUE2 = 5,
- * C2_VALUE3 = C2_VALUE1 + 1)
- * // named values are: C2_VALUE1 => "VALUE1", C2_VALUE2 => "VALUE2", ...
- * ~~~~~~~~~~~~~
- *
- * \param name name of the enum type (This can be an inner class enum.)
- * \param type underlying type
- * \param prefix prefix to remove
- */
-#define C2ENUM_CUSTOM_PREFIX(name, type, prefix, ...) \
-enum name : type { __VA_ARGS__ }; \
-DEFINE_C2_ENUM_VALUE_AUTO_HELPER(name, type, prefix, __VA_ARGS__)
-
-/**
- * Defines an enum type with custom names.
- *
- * This macro must be used in the global scope and namespace.
- *
- * ~~~~~~~~~~~~~ (.cpp)
- * C2ENUM_CUSTOM_NAMES(SomeStruct::c2_enum_t, uint32_t, ({
- * { "One", SomeStruct::C2_VALUE1 },
- * { "Two", SomeStruct::C2_VALUE2 },
- * { "Three", SomeStruct::C2_VALUE3 } }),
- * C2_VALUE1,
- * C2_VALUE2 = 5,
- * C2_VALUE3 = C2_VALUE1 + 1)
- *
- * // named values are: C2_VALUE1 => "One", C2_VALUE2 => "Two", ...
- * ~~~~~~~~~~~~~
- */
-#define C2ENUM_CUSTOM_NAMES(name, type, names, ...) \
-enum name : type { __VA_ARGS__ }; \
-DEFINE_C2_ENUM_VALUE_CUSTOM_HELPER(name, names)
-
-/**
- * Make enums usable as their integral types.
- *
- * Note: this makes them not usable in printf()
- */
-template<class E>
-struct C2EasyEnum {
- using U = typename std::underlying_type<E>::type;
- E value;
- // define conversion functions
- inline constexpr operator E() const { return value; }
- inline constexpr C2EasyEnum(E value_) : value(value_) { }
- inline constexpr C2EasyEnum(U value_) : value(E(value_)) { }
- inline constexpr C2EasyEnum() = default;
-};
-
-// make C2EasyEnum behave like a regular enum
-
-namespace std {
- template<typename E>
- struct underlying_type<C2EasyEnum<E>> {
- typedef typename underlying_type<E>::type type;
- };
-
- template<typename E>
- struct is_enum<C2EasyEnum<E>> {
- constexpr static bool value = true;
- };
-}
-
-#endif // C2ENUM_H_
-
diff --git a/codec2/include/C2Param.h b/codec2/include/C2Param.h
deleted file mode 100644
index efc5c89..0000000
--- a/codec2/include/C2Param.h
+++ /dev/null
@@ -1,1682 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2PARAM_H_
-#define C2PARAM_H_
-
-#include <C2.h>
-
-#include <stdbool.h>
-#include <stdint.h>
-
-#include <algorithm>
-#include <string>
-#include <type_traits>
-#include <utility>
-#include <vector>
-
-/// \addtogroup Parameters
-/// @{
-
-/// \defgroup internal Internal helpers.
-
-/*!
- * \file
- * PARAMETERS: SETTINGs, TUNINGs, and INFOs
- * ===
- *
- * These represent miscellaneous control and metadata information and are likely copied into
- * kernel space. Therefore, these are C-like structures designed to carry just a small amount of
- * information. We are using C++ to be able to add constructors, as well as non-virtual and class
- * methods.
- *
- * ==Specification details:
- *
- * Restrictions:
- * - must be POD struct, e.g. no vtable (no virtual destructor)
- * - must have the same size in 64-bit and 32-bit mode (no size_t)
- * - as such, no pointer members
- * - some common member field names are reserved as they are defined as methods for all
- * parameters:
- * they are: size, type, kind, index and stream
- *
- * Behavior:
- * - Params can be global (not related to input or output), related to input or output,
- * or related to an input/output stream.
- * - All params are queried/set using a unique param index, which incorporates a potential stream
- * index and/or port.
- * - Querying (supported) params MUST never fail.
- * - All params MUST have default values.
- * - If some fields have "unsupported" or "invalid" values during setting, this SHOULD be
- * communicated to the app.
- * a) Ideally, this should be avoided. When setting parameters, in general, component should do
- * "best effort" to apply all settings. It should change "invalid/unsupported" values to the
- * nearest supported values.
- * - This is communicated to the client by changing the source values in tune()/
- * configure().
- * b) If falling back to a supported value is absolutely impossible, the component SHALL return
- * an error for the specific setting, but should continue to apply other settings.
- * TODO: this currently may result in unintended results.
- *
- * **NOTE:** unlike OMX, params are not versioned. Instead, a new struct with new param index
- * SHALL be added as new versions are required.
- *
- * The proper subtype (Setting, Info or Param) is incorporated into the class type. Define structs
- * to define multiple subtyped versions of related parameters.
- *
- * ==Implementation details:
- *
- * - Use macros to define parameters
- * - All parameters must have a default constructor
- * - This is only used for instantiating the class in source (e.g. will not be used
- * when building a parameter by the framework from key/value pairs.)
- */
-
-/// \ingroup internal
-
-/**
- * Parameter base class.
- */
-struct C2Param {
- // param index encompasses the following:
- //
- // - kind (setting, tuning, info, struct)
- // - scope
- // - direction (global, input, output)
- // - stream flag
- // - stream ID (usually 0)
- // - and the parameter's type (core index)
- // - flexible parameter flag
- // - vendor extension flag
- // - type index (this includes the vendor extension flag)
- //
- // layout:
- //
- // kind : <------- scope -------> : <----- core index ----->
- // +------+-----+---+------+--------+----|------+--------------+
- // | kind | dir | - |stream|streamID|flex|vendor| type index |
- // +------+-----+---+------+--------+----+------+--------------+
- // bit: 31..30 29.28 25 24 .. 17 16 15 14 .. 0
- //
-public:
- /**
- * C2Param kinds, usable as bitmaps.
- */
- enum kind_t : uint32_t {
- NONE = 0,
- STRUCT = (1 << 0),
- INFO = (1 << 1),
- SETTING = (1 << 2),
- TUNING = (1 << 3) | SETTING, // tunings are settings
- };
-
- /**
- * The parameter type index specifies the underlying parameter type of a parameter as
- * an integer value.
- *
- * Parameter types are divided into two groups: platform types and vendor types.
- *
- * Platform types are defined by the platform and are common for all implementations.
- *
- * Vendor types are defined by each vendors, so they may differ between implementations.
- * It is recommended that vendor types be the same for all implementations by a specific
- * vendor.
- */
- typedef uint32_t type_index_t;
- enum : uint32_t {
- TYPE_INDEX_VENDOR_START = 0x00008000, ///< vendor indices SHALL start after this
- };
-
- /**
- * Core index is the underlying parameter type for a parameter. It is used to describe the
- * layout of the parameter structure regardless of the component or parameter kind/scope.
- *
- * It is used to identify and distinguish global parameters, and also parameters on a given
- * port or stream. They must be unique for the set of global parameters, as well as for the
- * set of parameters on each port or each stream, but the same core index can be used for
- * parameters on different streams or ports, as well as for global parameters and port/stream
- * parameters.
- *
- * Multiple parameter types can share the same layout.
- *
- * \note The layout for all parameters with the same core index across all components must
- * be identical.
- */
- struct CoreIndex {
- //public:
- enum : uint32_t {
- IS_FLEX_FLAG = 0x00010000,
- };
-
- protected:
- enum : uint32_t {
- KIND_MASK = 0xC0000000,
- KIND_STRUCT = 0x00000000,
- KIND_TUNING = 0x40000000,
- KIND_SETTING = 0x80000000,
- KIND_INFO = 0xC0000000,
-
- DIR_MASK = 0x30000000,
- DIR_GLOBAL = 0x20000000,
- DIR_UNDEFINED = DIR_MASK, // MUST have all bits set
- DIR_INPUT = 0x00000000,
- DIR_OUTPUT = 0x10000000,
-
- IS_STREAM_FLAG = 0x02000000,
- STREAM_ID_MASK = 0x01FE0000,
- STREAM_ID_SHIFT = 17,
- MAX_STREAM_ID = STREAM_ID_MASK >> STREAM_ID_SHIFT,
- STREAM_MASK = IS_STREAM_FLAG | STREAM_ID_MASK,
-
- IS_VENDOR_FLAG = 0x00008000,
- TYPE_INDEX_MASK = 0x0000FFFF,
- CORE_MASK = TYPE_INDEX_MASK | IS_FLEX_FLAG,
- };
-
- public:
- /// constructor/conversion from uint32_t
- inline CoreIndex(uint32_t index) : mIndex(index) { }
-
- // no conversion from uint64_t
- inline CoreIndex(uint64_t index) = delete;
-
- /// returns true iff this is a vendor extension parameter
- inline bool isVendor() const { return mIndex & IS_VENDOR_FLAG; }
-
- /// returns true iff this is a flexible parameter (with variable size)
- inline bool isFlexible() const { return mIndex & IS_FLEX_FLAG; }
-
- /// returns the core index
- /// This is the combination of the parameter type index and the flexible flag.
- inline uint32_t coreIndex() const { return mIndex & CORE_MASK; }
-
- /// returns the parameter type index
- inline type_index_t typeIndex() const { return mIndex & TYPE_INDEX_MASK; }
-
- DEFINE_FIELD_AND_MASK_BASED_COMPARISON_OPERATORS(CoreIndex, mIndex, CORE_MASK)
-
- protected:
- uint32_t mIndex;
- };
-
- /**
- * Type encompasses the parameter's kind (tuning, setting, info), its scope (whether the
- * parameter is global, input or output, and whether it is for a stream) and the its base
- * index (which also determines its layout).
- */
- struct Type : public CoreIndex {
- //public:
- /// returns true iff this is a global parameter (not for input nor output)
- inline bool isGlobal() const { return (mIndex & DIR_MASK) == DIR_GLOBAL; }
- /// returns true iff this is an input or input stream parameter
- inline bool forInput() const { return (mIndex & DIR_MASK) == DIR_INPUT; }
- /// returns true iff this is an output or output stream parameter
- inline bool forOutput() const { return (mIndex & DIR_MASK) == DIR_OUTPUT; }
-
- /// returns true iff this is a stream parameter
- inline bool forStream() const { return mIndex & IS_STREAM_FLAG; }
- /// returns true iff this is a port (input or output) parameter
- inline bool forPort() const { return !forStream() && !isGlobal(); }
-
- /// returns the parameter type: the parameter index without the stream ID
- inline uint32_t type() const { return mIndex & (~STREAM_ID_MASK); }
-
- /// return the kind (struct, info, setting or tuning) of this param
- inline kind_t kind() const {
- switch (mIndex & KIND_MASK) {
- case KIND_STRUCT: return STRUCT;
- case KIND_INFO: return INFO;
- case KIND_SETTING: return SETTING;
- case KIND_TUNING: return TUNING;
- default: return NONE; // should not happen
- }
- }
-
- /// constructor/conversion from uint32_t
- inline Type(uint32_t index) : CoreIndex(index) { }
-
- // no conversion from uint64_t
- inline Type(uint64_t index) = delete;
-
- DEFINE_FIELD_AND_MASK_BASED_COMPARISON_OPERATORS(Type, mIndex, ~STREAM_ID_MASK)
-
- private:
- friend struct C2Param; // for setPort()
- friend struct C2Tuning; // for KIND_TUNING
- friend struct C2Setting; // for KIND_SETTING
- friend struct C2Info; // for KIND_INFO
- // for DIR_GLOBAL
- template<typename T, typename S, int I, class F> friend struct C2GlobalParam;
- template<typename T, typename S, int I, class F> friend struct C2PortParam; // for kDir*
- template<typename T, typename S, int I, class F> friend struct C2StreamParam; // for kDir*
- friend struct _C2ParamInspector; // for testing
-
- /**
- * Sets the port/stream direction.
- * @return true on success, false if could not set direction (e.g. it is global param).
- */
- inline bool setPort(bool output) {
- if (isGlobal()) {
- return false;
- } else {
- mIndex = (mIndex & ~DIR_MASK) | (output ? DIR_OUTPUT : DIR_INPUT);
- return true;
- }
- }
- };
-
- /**
- * index encompasses all remaining information: basically the stream ID.
- */
- struct Index : public Type {
- /// returns the index as uint32_t
- inline operator uint32_t() const { return mIndex; }
-
- /// constructor/conversion from uint32_t
- inline Index(uint32_t index) : Type(index) { }
-
- /// copy constructor
- inline Index(const Index &index) = default;
-
- // no conversion from uint64_t
- inline Index(uint64_t index) = delete;
-
- /// returns the stream ID or ~0 if not a stream
- inline unsigned stream() const {
- return forStream() ? rawStream() : ~0U;
- }
-
- /// Returns an index with stream field set to given stream.
- inline Index withStream(unsigned stream) const {
- Index ix = mIndex;
- (void)ix.setStream(stream);
- return ix;
- }
-
- /// sets the port (direction). Returns true iff successful.
- inline Index withPort(bool output) const {
- Index ix = mIndex;
- (void)ix.setPort(output);
- return ix;
- }
-
- DEFINE_FIELD_BASED_COMPARISON_OPERATORS(Index, mIndex)
-
- private:
- friend struct C2Param; // for setStream, MakeStreamId, isValid
- friend struct _C2ParamInspector; // for testing
-
- /**
- * @return true if the type is valid, e.g. direction is not undefined AND
- * stream is 0 if not a stream param.
- */
- inline bool isValid() const {
- // there is no Type::isValid (even though some of this check could be
- // performed on types) as this is only used on index...
- return (forStream() ? rawStream() < MAX_STREAM_ID : rawStream() == 0)
- && (mIndex & DIR_MASK) != DIR_UNDEFINED;
- }
-
- /// returns the raw stream ID field
- inline unsigned rawStream() const {
- return (mIndex & STREAM_ID_MASK) >> STREAM_ID_SHIFT;
- }
-
- /// returns the streamId bitfield for a given |stream|. If stream is invalid,
- /// returns an invalid bitfield.
- inline static uint32_t MakeStreamId(unsigned stream) {
- // saturate stream ID (max value is invalid)
- if (stream > MAX_STREAM_ID) {
- stream = MAX_STREAM_ID;
- }
- return (stream << STREAM_ID_SHIFT) & STREAM_ID_MASK;
- }
-
- inline bool convertToStream(bool output, unsigned stream) {
- mIndex = (mIndex & ~DIR_MASK) | IS_STREAM_FLAG;
- (void)setPort(output);
- return setStream(stream);
- }
-
- inline void convertToPort(bool output) {
- mIndex = (mIndex & ~(DIR_MASK | IS_STREAM_FLAG));
- (void)setPort(output);
- }
-
- inline void convertToGlobal() {
- mIndex = (mIndex & ~(DIR_MASK | IS_STREAM_FLAG)) | DIR_GLOBAL;
- }
-
- /**
- * Sets the stream index.
- * \return true on success, false if could not set index (e.g. not a stream param).
- */
- inline bool setStream(unsigned stream) {
- if (forStream()) {
- mIndex = (mIndex & ~STREAM_ID_MASK) | MakeStreamId(stream);
- return this->stream() < MAX_STREAM_ID;
- }
- return false;
- }
- };
-
-public:
- // public getters for Index methods
-
- /// returns true iff this is a vendor extension parameter
- inline bool isVendor() const { return _mIndex.isVendor(); }
- /// returns true iff this is a flexible parameter
- inline bool isFlexible() const { return _mIndex.isFlexible(); }
- /// returns true iff this is a global parameter (not for input nor output)
- inline bool isGlobal() const { return _mIndex.isGlobal(); }
- /// returns true iff this is an input or input stream parameter
- inline bool forInput() const { return _mIndex.forInput(); }
- /// returns true iff this is an output or output stream parameter
- inline bool forOutput() const { return _mIndex.forOutput(); }
-
- /// returns true iff this is a stream parameter
- inline bool forStream() const { return _mIndex.forStream(); }
- /// returns true iff this is a port (input or output) parameter
- inline bool forPort() const { return _mIndex.forPort(); }
-
- /// returns the stream ID or ~0 if not a stream
- inline unsigned stream() const { return _mIndex.stream(); }
-
- /// returns the parameter type: the parameter index without the stream ID
- inline Type type() const { return _mIndex.type(); }
-
- /// returns the index of this parameter
- /// \todo: should we restrict this to C2ParamField?
- inline uint32_t index() const { return (uint32_t)_mIndex; }
-
- /// returns the core index of this parameter
- inline CoreIndex coreIndex() const { return _mIndex.coreIndex(); }
-
- /// returns the kind of this parameter
- inline kind_t kind() const { return _mIndex.kind(); }
-
- /// returns the size of the parameter or 0 if the parameter is invalid
- inline size_t size() const { return _mSize; }
-
- /// returns true iff the parameter is valid
- inline operator bool() const { return _mIndex.isValid() && _mSize > 0; }
-
- /// returns true iff the parameter is invalid
- inline bool operator!() const { return !operator bool(); }
-
- // equality is done by memcmp (use equals() to prevent any overread)
- inline bool operator==(const C2Param &o) const {
- return equals(o) && memcmp(this, &o, _mSize) == 0;
- }
- inline bool operator!=(const C2Param &o) const { return !operator==(o); }
-
- /// safe(r) type cast from pointer and size
- inline static C2Param* From(void *addr, size_t len) {
- // _mSize must fit into size, but really C2Param must also to be a valid param
- if (len < sizeof(C2Param)) {
- return nullptr;
- }
- // _mSize must match length
- C2Param *param = (C2Param*)addr;
- if (param->_mSize != len) {
- return nullptr;
- }
- return param;
- }
-
- /// Returns managed clone of |orig| at heap.
- inline static std::unique_ptr<C2Param> Copy(const C2Param &orig) {
- if (orig.size() == 0) {
- return nullptr;
- }
- void *mem = ::operator new (orig.size());
- C2Param *param = new (mem) C2Param(orig.size(), orig._mIndex);
- param->updateFrom(orig);
- return std::unique_ptr<C2Param>(param);
- }
-
- /// Returns managed clone of |orig| as a stream parameter at heap.
- inline static std::unique_ptr<C2Param> CopyAsStream(
- const C2Param &orig, bool output, unsigned stream) {
- std::unique_ptr<C2Param> copy = Copy(orig);
- if (copy) {
- copy->_mIndex.convertToStream(output, stream);
- }
- return copy;
- }
-
- /// Returns managed clone of |orig| as a port parameter at heap.
- inline static std::unique_ptr<C2Param> CopyAsPort(const C2Param &orig, bool output) {
- std::unique_ptr<C2Param> copy = Copy(orig);
- if (copy) {
- copy->_mIndex.convertToPort(output);
- }
- return copy;
- }
-
- /// Returns managed clone of |orig| as a global parameter at heap.
- inline static std::unique_ptr<C2Param> CopyAsGlobal(const C2Param &orig) {
- std::unique_ptr<C2Param> copy = Copy(orig);
- if (copy) {
- copy->_mIndex.convertToGlobal();
- }
- return copy;
- }
-
-#if 0
- template<typename P, class=decltype(C2Param(P()))>
- P *As() { return P::From(this); }
- template<typename P>
- const P *As() const { return const_cast<const P*>(P::From(const_cast<C2Param*>(this))); }
-#endif
-
-protected:
- /// sets the stream field. Returns true iff successful.
- inline bool setStream(unsigned stream) {
- return _mIndex.setStream(stream);
- }
-
- /// sets the port (direction). Returns true iff successful.
- inline bool setPort(bool output) {
- return _mIndex.setPort(output);
- }
-
-public:
- /// invalidate this parameter. There is no recovery from this call; e.g. parameter
- /// cannot be 'corrected' to be valid.
- inline void invalidate() { _mSize = 0; }
-
- // if other is the same kind of (valid) param as this, copy it into this and return true.
- // otherwise, do not copy anything, and return false.
- inline bool updateFrom(const C2Param &other) {
- if (other._mSize <= _mSize && other._mIndex == _mIndex && _mSize > 0) {
- memcpy(this, &other, other._mSize);
- return true;
- }
- return false;
- }
-
-protected:
- // returns |o| if it is a null ptr, or if can suitably be a param of given |type| (e.g. has
- // same type (ignoring stream ID), and size). Otherwise, returns null. If |checkDir| is false,
- // allow undefined or different direction (e.g. as constructed from C2PortParam() vs.
- // C2PortParam::input), but still require equivalent type (stream, port or global); otherwise,
- // return null.
- inline static const C2Param* IfSuitable(
- const C2Param* o, size_t size, Type type, size_t flexSize = 0, bool checkDir = true) {
- if (o == nullptr || o->_mSize < size || (flexSize && ((o->_mSize - size) % flexSize))) {
- return nullptr;
- } else if (checkDir) {
- return o->_mIndex.type() == type.mIndex ? o : nullptr;
- } else if (o->_mIndex.isGlobal()) {
- return nullptr;
- } else {
- return ((o->_mIndex.type() ^ type.mIndex) & ~Type::DIR_MASK) ? nullptr : o;
- }
- }
-
- /// base constructor
- inline C2Param(uint32_t paramSize, Index paramIndex)
- : _mSize(paramSize),
- _mIndex(paramIndex) {
- if (paramSize > sizeof(C2Param)) {
- memset(this + 1, 0, paramSize - sizeof(C2Param));
- }
- }
-
- /// base constructor with stream set
- inline C2Param(uint32_t paramSize, Index paramIndex, unsigned stream)
- : _mSize(paramSize),
- _mIndex(paramIndex | Index::MakeStreamId(stream)) {
- if (paramSize > sizeof(C2Param)) {
- memset(this + 1, 0, paramSize - sizeof(C2Param));
- }
- if (!forStream()) {
- invalidate();
- }
- }
-
-private:
- friend struct _C2ParamInspector; // for testing
-
- /// returns true iff |o| has the same size and index as this. This performs the
- /// basic check for equality.
- inline bool equals(const C2Param &o) const {
- return _mSize == o._mSize && _mIndex == o._mIndex;
- }
-
- uint32_t _mSize;
- Index _mIndex;
-};
-
-/// \ingroup internal
-/// allow C2Params access to private methods, e.g. constructors
-#define C2PARAM_MAKE_FRIENDS \
- template<typename U, typename S, int I, class F> friend struct C2GlobalParam; \
- template<typename U, typename S, int I, class F> friend struct C2PortParam; \
- template<typename U, typename S, int I, class F> friend struct C2StreamParam; \
-
-/**
- * Setting base structure for component method signatures. Wrap constructors.
- */
-struct C2Setting : public C2Param {
-protected:
- template<typename ...Args>
- inline C2Setting(const Args(&... args)) : C2Param(args...) { }
-public: // TODO
- enum : uint32_t { PARAM_KIND = Type::KIND_SETTING };
-};
-
-/**
- * Tuning base structure for component method signatures. Wrap constructors.
- */
-struct C2Tuning : public C2Setting {
-protected:
- template<typename ...Args>
- inline C2Tuning(const Args(&... args)) : C2Setting(args...) { }
-public: // TODO
- enum : uint32_t { PARAM_KIND = Type::KIND_TUNING };
-};
-
-/**
- * Info base structure for component method signatures. Wrap constructors.
- */
-struct C2Info : public C2Param {
-protected:
- template<typename ...Args>
- inline C2Info(const Args(&... args)) : C2Param(args...) { }
-public: // TODO
- enum : uint32_t { PARAM_KIND = Type::KIND_INFO };
-};
-
-/**
- * Structure uniquely specifying a field in an arbitrary structure.
- *
- * \note This structure is used differently in C2FieldDescriptor to
- * identify array fields, such that _mSize is the size of each element. This is
- * because the field descriptor contains the array-length, and we want to keep
- * a relevant element size for variable length arrays.
- */
-struct _C2FieldId {
-//public:
- /**
- * Constructor used for C2FieldDescriptor that removes the array extent.
- *
- * \param[in] offset pointer to the field in an object at address 0.
- */
- template<typename T, class B=typename std::remove_extent<T>::type>
- inline _C2FieldId(T* offset)
- : // offset is from "0" so will fit on 32-bits
- _mOffset((uint32_t)(uintptr_t)(offset)),
- _mSize(sizeof(B)) { }
-
- /**
- * Direct constructor from offset and size.
- *
- * \param[in] offset offset of the field.
- * \param[in] size size of the field.
- */
- inline _C2FieldId(size_t offset, size_t size)
- : _mOffset(offset), _mSize(size) {}
-
- /**
- * Constructor used to identify a field in an object.
- *
- * \param U[type] pointer to the object that contains this field. This is needed in case the
- * field is in an (inherited) base class, in which case T will be that base class.
- * \param pm[im] member pointer to the field
- */
- template<typename R, typename T, typename U, typename B=typename std::remove_extent<R>::type>
- inline _C2FieldId(U *, R T::* pm)
- : _mOffset((uint32_t)(uintptr_t)(&(((U*)256)->*pm)) - 256u),
- _mSize(sizeof(B)) { }
-
- /**
- * Constructor used to identify a field in an object.
- *
- * \param pm[im] member pointer to the field
- */
- template<typename R, typename T, typename B=typename std::remove_extent<R>::type>
- inline _C2FieldId(R T::* pm)
- : _mOffset((uint32_t)(uintptr_t)(&(((T*)0)->*pm))),
- _mSize(sizeof(B)) { }
-
- inline bool operator==(const _C2FieldId &other) const {
- return _mOffset == other._mOffset && _mSize == other._mSize;
- }
-
- inline bool operator<(const _C2FieldId &other) const {
- return _mOffset < other._mOffset ||
- // NOTE: order parent structure before sub field
- (_mOffset == other._mOffset && _mSize > other._mSize);
- }
-
- DEFINE_OTHER_COMPARISON_OPERATORS(_C2FieldId)
-
-#if 0
- inline uint32_t offset() const { return _mOffset; }
- inline uint32_t size() const { return _mSize; }
-#endif
-
-#if defined(FRIEND_TEST)
- friend void PrintTo(const _C2FieldId &d, ::std::ostream*);
-#endif
-
-private:
- friend struct _C2ParamInspector;
- friend struct C2FieldDescriptor;
-
- uint32_t _mOffset; // offset of field
- uint32_t _mSize; // size of field
-};
-
-/**
- * Structure uniquely specifying a 'field' in a configuration. The field
- * can be a field of a configuration, a subfield of a field of a configuration,
- * and even the whole configuration. Moreover, if the field can point to an
- * element in a array field, or to the entire array field.
- *
- * This structure is used for querying supported values for a field, as well
- * as communicating configuration failures and conflicts when trying to change
- * a configuration for a component/interface or a store.
- */
-struct C2ParamField {
-//public:
- /**
- * Create a field identifier using a configuration parameter (variable),
- * and a pointer to member.
- *
- * ~~~~~~~~~~~~~ (.cpp)
- *
- * struct C2SomeParam {
- * uint32_t mField;
- * uint32_t mArray[2];
- * C2OtherStruct mStruct;
- * uint32_t mFlexArray[];
- * } *mParam;
- *
- * C2ParamField(mParam, &mParam->mField);
- * C2ParamField(mParam, &mParam->mArray);
- * C2ParamField(mParam, &mParam->mArray[0]);
- * C2ParamField(mParam, &mParam->mStruct.mSubField);
- * C2ParamField(mParam, &mParam->mFlexArray);
- * C2ParamField(mParam, &mParam->mFlexArray[2]);
- *
- * ~~~~~~~~~~~~~
- *
- * \todo fix what this is for T[] (for now size becomes T[1])
- *
- * \note this does not work for 64-bit members as it triggers a
- * 'taking address of packed member' warning.
- *
- * \param param pointer to parameter
- * \param offset member pointer
- */
- template<typename S, typename T>
- inline C2ParamField(S* param, T* offset)
- : _mIndex(param->index()),
- _mFieldId((T*)((uintptr_t)offset - (uintptr_t)param)) {}
-
- template<typename S, typename T>
- inline static C2ParamField Make(S& param, T& offset) {
- return C2ParamField(param.index(), (uintptr_t)&offset - (uintptr_t)¶m, sizeof(T));
- }
-
- /**
- * Create a field identifier using a configuration parameter (variable),
- * and a member pointer. This method cannot be used to refer to an
- * array element or a subfield.
- *
- * ~~~~~~~~~~~~~ (.cpp)
- *
- * C2SomeParam mParam;
- * C2ParamField(&mParam, &C2SomeParam::mMemberField);
- *
- * ~~~~~~~~~~~~~
- *
- * \param p pointer to parameter
- * \param T member pointer to the field member
- */
- template<typename R, typename T, typename U>
- inline C2ParamField(U *p, R T::* pm) : _mIndex(p->index()), _mFieldId(p, pm) { }
-
- /**
- * Create a field identifier to a configuration parameter (variable).
- *
- * ~~~~~~~~~~~~~ (.cpp)
- *
- * C2SomeParam mParam;
- * C2ParamField(&mParam);
- *
- * ~~~~~~~~~~~~~
- *
- * \param param pointer to parameter
- */
- template<typename S>
- inline C2ParamField(S* param)
- : _mIndex(param->index()), _mFieldId(0u, param->size()) { }
-
- /** Copy constructor. */
- inline C2ParamField(const C2ParamField &other) = default;
-
- /**
- * Equality operator.
- */
- inline bool operator==(const C2ParamField &other) const {
- return _mIndex == other._mIndex && _mFieldId == other._mFieldId;
- }
-
- /**
- * Ordering operator.
- */
- inline bool operator<(const C2ParamField &other) const {
- return _mIndex < other._mIndex ||
- (_mIndex == other._mIndex && _mFieldId < other._mFieldId);
- }
-
- DEFINE_OTHER_COMPARISON_OPERATORS(C2ParamField)
-
-protected:
- inline C2ParamField(C2Param::Index index, uint32_t offset, uint32_t size)
- : _mIndex(index), _mFieldId(offset, size) {}
-
-private:
- friend struct _C2ParamInspector;
-
- C2Param::Index _mIndex; ///< parameter index
- _C2FieldId _mFieldId; ///< field identifier
-};
-
-/**
- * A shared (union) representation of numeric values
- */
-class C2Value {
-public:
- /// A union of supported primitive types.
- union Primitive {
- // first member is always zero initialized so it must be the largest
- uint64_t u64; ///< uint64_t value
- int64_t i64; ///< int64_t value
- c2_cntr64_t c64; ///< c2_cntr64_t value
- uint32_t u32; ///< uint32_t value
- int32_t i32; ///< int32_t value
- c2_cntr32_t c32; ///< c2_cntr32_t value
- float fp; ///< float value
-
- // constructors - implicit
- Primitive(uint64_t value) : u64(value) { }
- Primitive(int64_t value) : i64(value) { }
- Primitive(c2_cntr64_t value) : c64(value) { }
- Primitive(uint32_t value) : u32(value) { }
- Primitive(int32_t value) : i32(value) { }
- Primitive(c2_cntr32_t value) : c32(value) { }
- Primitive(uint8_t value) : u32(value) { }
- Primitive(char value) : i32(value) { }
- Primitive(float value) : fp(value) { }
-
- // allow construction from enum type
- template<typename E, typename = typename std::enable_if<std::is_enum<E>::value>::type>
- Primitive(E value)
- : Primitive(static_cast<typename std::underlying_type<E>::type>(value)) { }
-
- Primitive() : u64(0) { }
-
- /** gets value out of the union */
- template<typename T> const T &ref() const;
-
- // verify that we can assume standard aliasing
- static_assert(sizeof(u64) == sizeof(i64), "");
- static_assert(sizeof(u64) == sizeof(c64), "");
- static_assert(sizeof(u32) == sizeof(i32), "");
- static_assert(sizeof(u32) == sizeof(c32), "");
- };
- // verify that we can assume standard aliasing
- static_assert(offsetof(Primitive, u64) == offsetof(Primitive, i64), "");
- static_assert(offsetof(Primitive, u64) == offsetof(Primitive, c64), "");
- static_assert(offsetof(Primitive, u32) == offsetof(Primitive, i32), "");
- static_assert(offsetof(Primitive, u32) == offsetof(Primitive, c32), "");
-
- enum type_t : uint32_t {
- NO_INIT,
- INT32,
- UINT32,
- CNTR32,
- INT64,
- UINT64,
- CNTR64,
- FLOAT,
- };
-
- template<typename T, bool = std::is_enum<T>::value>
- inline static constexpr type_t TypeFor() {
- using U = typename std::underlying_type<T>::type;
- return TypeFor<U>();
- }
-
- // deprectated
- template<typename T, bool B = std::is_enum<T>::value>
- inline static constexpr type_t typeFor() {
- return TypeFor<T, B>();
- }
-
- // constructors - implicit
- template<typename T>
- C2Value(T value) : _mType(typeFor<T>()), _mValue(value) { }
-
- C2Value() : _mType(NO_INIT) { }
-
- inline type_t type() const { return _mType; }
-
- template<typename T>
- inline bool get(T *value) const {
- if (_mType == typeFor<T>()) {
- *value = _mValue.ref<T>();
- return true;
- }
- return false;
- }
-
- /// returns the address of the value
- void *get() const {
- return _mType == NO_INIT ? nullptr : (void*)&_mValue;
- }
-
- /// returns the size of the contained value
- size_t inline sizeOf() const {
- return SizeFor(_mType);
- }
-
- static size_t SizeFor(type_t type) {
- switch (type) {
- case INT32:
- case UINT32:
- case CNTR32: return sizeof(_mValue.i32);
- case INT64:
- case UINT64:
- case CNTR64: return sizeof(_mValue.i64);
- case FLOAT: return sizeof(_mValue.fp);
- default: return 0;
- }
- }
-
-private:
- type_t _mType;
- Primitive _mValue;
-};
-
-template<> inline const int32_t &C2Value::Primitive::ref<int32_t>() const { return i32; }
-template<> inline const int64_t &C2Value::Primitive::ref<int64_t>() const { return i64; }
-template<> inline const uint32_t &C2Value::Primitive::ref<uint32_t>() const { return u32; }
-template<> inline const uint64_t &C2Value::Primitive::ref<uint64_t>() const { return u64; }
-template<> inline const c2_cntr32_t &C2Value::Primitive::ref<c2_cntr32_t>() const { return c32; }
-template<> inline const c2_cntr64_t &C2Value::Primitive::ref<c2_cntr64_t>() const { return c64; }
-template<> inline const float &C2Value::Primitive::ref<float>() const { return fp; }
-
-// provide types for enums and uint8_t, char even though we don't provide reading as them
-template<> constexpr C2Value::type_t C2Value::TypeFor<char, false>() { return INT32; }
-template<> constexpr C2Value::type_t C2Value::TypeFor<int32_t, false>() { return INT32; }
-template<> constexpr C2Value::type_t C2Value::TypeFor<int64_t, false>() { return INT64; }
-template<> constexpr C2Value::type_t C2Value::TypeFor<uint8_t, false>() { return UINT32; }
-template<> constexpr C2Value::type_t C2Value::TypeFor<uint32_t, false>() { return UINT32; }
-template<> constexpr C2Value::type_t C2Value::TypeFor<uint64_t, false>() { return UINT64; }
-template<> constexpr C2Value::type_t C2Value::TypeFor<c2_cntr32_t, false>() { return CNTR32; }
-template<> constexpr C2Value::type_t C2Value::TypeFor<c2_cntr64_t, false>() { return CNTR64; }
-template<> constexpr C2Value::type_t C2Value::TypeFor<float, false>() { return FLOAT; }
-
-// forward declare easy enum template
-template<typename E> struct C2EasyEnum;
-
-/**
- * field descriptor. A field is uniquely defined by an index into a parameter.
- * (Note: Stream-id is not captured as a field.)
- *
- * Ordering of fields is by offset. In case of structures, it is depth first,
- * with a structure taking an index just before and in addition to its members.
- */
-struct C2FieldDescriptor {
-//public:
- /** field types and flags
- * \note: only 32-bit and 64-bit fields are supported (e.g. no boolean, as that
- * is represented using INT32).
- */
- enum type_t : uint32_t {
- // primitive types
- INT32 = C2Value::INT32, ///< 32-bit signed integer
- UINT32 = C2Value::UINT32, ///< 32-bit unsigned integer
- CNTR32 = C2Value::CNTR32, ///< 32-bit counter
- INT64 = C2Value::INT64, ///< 64-bit signed integer
- UINT64 = C2Value::UINT64, ///< 64-bit signed integer
- CNTR64 = C2Value::CNTR64, ///< 64-bit counter
- FLOAT = C2Value::FLOAT, ///< 32-bit floating point
-
- // array types
- STRING = 0x100, ///< fixed-size string (POD)
- BLOB, ///< blob. Blobs have no sub-elements and can be thought of as byte arrays;
- ///< however, bytes cannot be individually addressed by clients.
-
- // complex types
- STRUCT_FLAG = 0x20000, ///< structs. Marked with this flag in addition to their coreIndex.
- };
-
- typedef std::pair<C2String, C2Value::Primitive> NamedValueType;
- typedef std::vector<NamedValueType> NamedValuesType;
- //typedef std::pair<std::vector<C2String>, std::vector<C2Value::Primitive>> NamedValuesType;
-
- /**
- * Template specialization that returns the named values for a type.
- *
- * \todo hide from client.
- *
- * \return a vector of name-value pairs.
- */
- template<typename B>
- static NamedValuesType namedValuesFor(const B &);
-
- /** specialization for easy enums */
- template<typename E>
- inline static NamedValuesType namedValuesFor(const C2EasyEnum<E> &) {
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wnull-dereference"
- return namedValuesFor(*(E*)nullptr);
-#pragma GCC diagnostic pop
- }
-
-private:
- template<typename B, bool enabled=std::is_arithmetic<B>::value || std::is_enum<B>::value>
- struct C2_HIDE _NamedValuesGetter;
-
-public:
- inline C2FieldDescriptor(uint32_t type, uint32_t extent, C2String name, size_t offset, size_t size)
- : _mType((type_t)type), _mExtent(extent), _mName(name), _mFieldId(offset, size) { }
-
- inline C2FieldDescriptor(const C2FieldDescriptor &) = default;
-
- template<typename T, class B=typename std::remove_extent<T>::type>
- inline C2FieldDescriptor(const T* offset, const char *name)
- : _mType(this->GetType((B*)nullptr)),
- _mExtent(std::is_array<T>::value ? std::extent<T>::value : 1),
- _mName(name),
- _mNamedValues(_NamedValuesGetter<B>::getNamedValues()),
- _mFieldId(offset) {}
-
-/*
- template<typename T, typename B=typename std::remove_extent<T>::type>
- inline C2FieldDescriptor<T, B, false>(T* offset, const char *name)
- : _mType(this->GetType((B*)nullptr)),
- _mExtent(std::is_array<T>::value ? std::extent<T>::value : 1),
- _mName(name),
- _mFieldId(offset) {}
-*/
-
- /// \deprecated
- template<typename T, typename S, class B=typename std::remove_extent<T>::type>
- inline C2FieldDescriptor(S*, T S::* field, const char *name)
- : _mType(this->GetType((B*)nullptr)),
- _mExtent(std::is_array<T>::value ? std::extent<T>::value : 1),
- _mName(name),
- _mFieldId(&(((S*)0)->*field)) {}
-
- /// returns the type of this field
- inline type_t type() const { return _mType; }
- /// returns the length of the field in case it is an array. Returns 0 for
- /// T[] arrays, returns 1 for T[1] arrays as well as if the field is not an array.
- inline size_t extent() const { return _mExtent; }
- /// returns the name of the field
- inline C2String name() const { return _mName; }
-
- const NamedValuesType &namedValues() const { return _mNamedValues; }
-
-#if defined(FRIEND_TEST)
- friend void PrintTo(const C2FieldDescriptor &, ::std::ostream*);
- friend bool operator==(const C2FieldDescriptor &, const C2FieldDescriptor &);
- FRIEND_TEST(C2ParamTest_ParamFieldList, VerifyStruct);
-#endif
-
-private:
- /**
- * Construct an offseted field descriptor.
- */
- inline C2FieldDescriptor(const C2FieldDescriptor &desc, size_t offset)
- : _mType(desc._mType), _mExtent(desc._mExtent),
- _mName(desc._mName), _mNamedValues(desc._mNamedValues),
- _mFieldId(desc._mFieldId._mOffset + offset, desc._mFieldId._mSize) { }
-
- type_t _mType;
- uint32_t _mExtent; // the last member can be arbitrary length if it is T[] array,
- // extending to the end of the parameter (this is marked with
- // 0). T[0]-s are not fields.
- C2String _mName;
- NamedValuesType _mNamedValues;
-
- _C2FieldId _mFieldId; // field identifier (offset and size)
-
- // NOTE: We do not capture default value(s) here as that may depend on the component.
- // NOTE: We also do not capture bestEffort, as 1) this should be true for most fields,
- // 2) this is at parameter granularity.
-
- // type resolution
- inline static type_t GetType(int32_t*) { return INT32; }
- inline static type_t GetType(uint32_t*) { return UINT32; }
- inline static type_t GetType(c2_cntr32_t*) { return CNTR32; }
- inline static type_t GetType(int64_t*) { return INT64; }
- inline static type_t GetType(uint64_t*) { return UINT64; }
- inline static type_t GetType(c2_cntr64_t*) { return CNTR64; }
- inline static type_t GetType(float*) { return FLOAT; }
- inline static type_t GetType(char*) { return STRING; }
- inline static type_t GetType(uint8_t*) { return BLOB; }
-
- template<typename T,
- class=typename std::enable_if<std::is_enum<T>::value>::type>
- inline static type_t GetType(T*) {
- typename std::underlying_type<T>::type underlying(0);
- return GetType(&underlying);
- }
-
- // verify C2Struct by having a FieldList() and a CORE_INDEX.
- template<typename T,
- class=decltype(T::CORE_INDEX + 1), class=decltype(T::FieldList())>
- inline static type_t GetType(T*) {
- static_assert(!std::is_base_of<C2Param, T>::value, "cannot use C2Params as fields");
- return (type_t)(T::CORE_INDEX | STRUCT_FLAG);
- }
-
- friend struct _C2ParamInspector;
-};
-
-// no named values for compound types
-template<typename B>
-struct C2FieldDescriptor::_NamedValuesGetter<B, false> {
- inline static C2FieldDescriptor::NamedValuesType getNamedValues() {
- return NamedValuesType();
- }
-};
-
-template<typename B>
-struct C2FieldDescriptor::_NamedValuesGetter<B, true> {
- inline static C2FieldDescriptor::NamedValuesType getNamedValues() {
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wnull-dereference"
- return C2FieldDescriptor::namedValuesFor(*(B*)nullptr);
-#pragma GCC diagnostic pop
- }
-};
-
-#define DEFINE_NO_NAMED_VALUES_FOR(type) \
-template<> inline C2FieldDescriptor::NamedValuesType C2FieldDescriptor::namedValuesFor(const type &) { \
- return NamedValuesType(); \
-}
-
-// We cannot subtype constructor for enumerated types so insted define no named values for
-// non-enumerated integral types.
-DEFINE_NO_NAMED_VALUES_FOR(int32_t)
-DEFINE_NO_NAMED_VALUES_FOR(uint32_t)
-DEFINE_NO_NAMED_VALUES_FOR(c2_cntr32_t)
-DEFINE_NO_NAMED_VALUES_FOR(int64_t)
-DEFINE_NO_NAMED_VALUES_FOR(uint64_t)
-DEFINE_NO_NAMED_VALUES_FOR(c2_cntr64_t)
-DEFINE_NO_NAMED_VALUES_FOR(uint8_t)
-DEFINE_NO_NAMED_VALUES_FOR(char)
-DEFINE_NO_NAMED_VALUES_FOR(float)
-
-/**
- * Describes the fields of a structure.
- */
-struct C2StructDescriptor {
-public:
- /// Returns the core index of the struct
- inline C2Param::CoreIndex coreIndex() const { return _mType.coreIndex(); }
-
- // Returns the number of fields in this struct (not counting any recursive fields).
- // Must be at least 1 for valid structs.
- inline size_t numFields() const { return _mFields.size(); }
-
- // Returns the list of direct fields (not counting any recursive fields).
- typedef std::vector<C2FieldDescriptor>::const_iterator field_iterator;
- inline field_iterator cbegin() const { return _mFields.cbegin(); }
- inline field_iterator cend() const { return _mFields.cend(); }
-
- // only supplying const iterator - but these names are needed for range based loops
- inline field_iterator begin() const { return _mFields.cbegin(); }
- inline field_iterator end() const { return _mFields.cend(); }
-
- template<typename T>
- inline C2StructDescriptor(T*)
- : C2StructDescriptor(T::CORE_INDEX, T::FieldList()) { }
-
- inline C2StructDescriptor(
- C2Param::CoreIndex type,
- const std::vector<C2FieldDescriptor> &fields)
- : _mType(type), _mFields(fields) { }
-
-private:
- friend struct _C2ParamInspector;
-
- inline C2StructDescriptor(
- C2Param::CoreIndex type,
- std::vector<C2FieldDescriptor> &&fields)
- : _mType(type), _mFields(std::move(fields)) { }
-
- const C2Param::CoreIndex _mType;
- const std::vector<C2FieldDescriptor> _mFields;
-};
-
-/**
- * Describes parameters for a component.
- */
-struct C2ParamDescriptor {
-public:
- /**
- * Returns whether setting this param is required to configure this component.
- * This can only be true for builtin params for platform-defined components (e.g. video and
- * audio encoders/decoders, video/audio filters).
- * For vendor-defined components, it can be true even for vendor-defined params,
- * but it is not recommended, in case the component becomes platform-defined.
- */
- inline bool isRequired() const { return _mAttrib & IS_REQUIRED; }
-
- /**
- * Returns whether this parameter is persistent. This is always true for C2Tuning and C2Setting,
- * but may be false for C2Info. If true, this parameter persists across frames and applies to
- * the current and subsequent frames. If false, this C2Info parameter only applies to the
- * current frame and is not assumed to have the same value (or even be present) on subsequent
- * frames, unless it is specified for those frames.
- */
- inline bool isPersistent() const { return _mAttrib & IS_PERSISTENT; }
-
- inline bool isStrict() const { return _mAttrib & IS_STRICT; }
-
- inline bool isReadOnly() const { return _mAttrib & IS_READ_ONLY; }
-
- inline bool isVisible() const { return !(_mAttrib & IS_HIDDEN); }
-
- inline bool isPublic() const { return !(_mAttrib & IS_INTERNAL); }
-
- /// Returns the name of this param.
- /// This defaults to the underlying C2Struct's name, but could be altered for a component.
- inline C2String name() const { return _mName; }
-
- /// Returns the parameter index
- inline C2Param::Index index() const { return _mIndex; }
-
- /// Returns the indices of parameters that this parameter has a dependency on
- inline const std::vector<C2Param::Index> &dependencies() const { return _mDependencies; }
-
- /// \deprecated
- template<typename T>
- inline C2ParamDescriptor(bool isRequired, C2StringLiteral name, const T*)
- : _mIndex(T::PARAM_TYPE),
- _mAttrib(IS_PERSISTENT | (isRequired ? IS_REQUIRED : 0)),
- _mName(name) { }
-
- /// \deprecated
- inline C2ParamDescriptor(
- bool isRequired, C2StringLiteral name, C2Param::Index index)
- : _mIndex(index),
- _mAttrib(IS_PERSISTENT | (isRequired ? IS_REQUIRED : 0)),
- _mName(name) { }
-
- enum attrib_t : uint32_t {
- // flags that default on
- IS_REQUIRED = 1u << 0, ///< parameter is required to be specified
- IS_PERSISTENT = 1u << 1, ///< parameter retains its value
- // flags that default off
- IS_STRICT = 1u << 2, ///< parameter is strict
- IS_READ_ONLY = 1u << 3, ///< parameter is publicly read-only
- IS_HIDDEN = 1u << 4, ///< parameter shall not be visible to clients
- IS_INTERNAL = 1u << 5, ///< parameter shall not be used by framework (other than testing)
- IS_CONST = 1u << 6 | IS_READ_ONLY, ///< parameter is publicly const (hence read-only)
- };
-
- inline C2ParamDescriptor(
- C2Param::Index index, attrib_t attrib, C2StringLiteral name)
- : _mIndex(index),
- _mAttrib(attrib),
- _mName(name) { }
-
- inline C2ParamDescriptor(
- C2Param::Index index, attrib_t attrib, C2String &&name,
- std::vector<C2Param::Index> &&dependencies)
- : _mIndex(index),
- _mAttrib(attrib),
- _mName(name),
- _mDependencies(std::move(dependencies)) { }
-
-private:
- const C2Param::Index _mIndex;
- const uint32_t _mAttrib;
- const C2String _mName;
- std::vector<C2Param::Index> _mDependencies;
-
- friend struct _C2ParamInspector;
-};
-
-DEFINE_ENUM_OPERATORS(::C2ParamDescriptor::attrib_t)
-
-
-/// \ingroup internal
-/// Define a structure without CORE_INDEX.
-/// \note _FIELD_LIST is used only during declaration so that C2Struct declarations can end with
-/// a simple list of C2FIELD-s and closing bracket. Mark it unused as it is not used in templated
-/// structs.
-#define DEFINE_BASE_C2STRUCT(name) \
-private: \
- const static std::vector<C2FieldDescriptor> _FIELD_LIST __unused; /**< structure fields */ \
-public: \
- typedef C2##name##Struct _type; /**< type name shorthand */ \
- static const std::vector<C2FieldDescriptor> FieldList(); /**< structure fields factory */
-
-/// Define a structure with matching CORE_INDEX.
-#define DEFINE_C2STRUCT(name) \
-public: \
- enum : uint32_t { CORE_INDEX = kParamIndex##name }; \
- DEFINE_BASE_C2STRUCT(name)
-
-/// Define a flexible structure without CORE_INDEX.
-#define DEFINE_BASE_FLEX_C2STRUCT(name, flexMember) \
-public: \
- FLEX(C2##name##Struct, flexMember) \
- DEFINE_BASE_C2STRUCT(name)
-
-/// Define a flexible structure with matching CORE_INDEX.
-#define DEFINE_FLEX_C2STRUCT(name, flexMember) \
-public: \
- FLEX(C2##name##Struct, flexMember) \
- enum : uint32_t { CORE_INDEX = kParamIndex##name | C2Param::CoreIndex::IS_FLEX_FLAG }; \
- DEFINE_BASE_C2STRUCT(name)
-
-/// \ingroup internal
-/// Describe a structure of a templated structure.
-// Use list... as the argument gets resubsitituted and it contains commas. Alternative would be
-// to wrap list in an expression, e.g. ({ std::vector<C2FieldDescriptor> list; })) which converts
-// it from an initializer list to a vector.
-#define DESCRIBE_TEMPLATED_C2STRUCT(strukt, list...) \
- _DESCRIBE_TEMPLATABLE_C2STRUCT(template<>, strukt, __C2_GENERATE_GLOBAL_VARS__, list)
-
-/// \deprecated
-/// Describe the fields of a structure using an initializer list.
-#define DESCRIBE_C2STRUCT(name, list...) \
- _DESCRIBE_TEMPLATABLE_C2STRUCT(, C2##name##Struct, __C2_GENERATE_GLOBAL_VARS__, list)
-
-/// \ingroup internal
-/// Macro layer to get value of enabled that is passed in as a macro variable
-#define _DESCRIBE_TEMPLATABLE_C2STRUCT(template, strukt, enabled, list...) \
- __DESCRIBE_TEMPLATABLE_C2STRUCT(template, strukt, enabled, list)
-
-/// \ingroup internal
-/// Macro layer to resolve to the specific macro based on macro variable
-#define __DESCRIBE_TEMPLATABLE_C2STRUCT(template, strukt, enabled, list...) \
- ___DESCRIBE_TEMPLATABLE_C2STRUCT##enabled(template, strukt, list)
-
-#define ___DESCRIBE_TEMPLATABLE_C2STRUCT(template, strukt, list...) \
- template \
- const std::vector<C2FieldDescriptor> strukt::FieldList() { return list; }
-
-#define ___DESCRIBE_TEMPLATABLE_C2STRUCT__C2_GENERATE_GLOBAL_VARS__(template, strukt, list...)
-
-/**
- * Describe a field of a structure.
- * These must be in order.
- *
- * There are two ways to use this macro:
- *
- * ~~~~~~~~~~~~~ (.cpp)
- * struct C2VideoWidthStruct {
- * int32_t width;
- * C2VideoWidthStruct() {} // optional default constructor
- * C2VideoWidthStruct(int32_t _width) : width(_width) {}
- *
- * DEFINE_AND_DESCRIBE_C2STRUCT(VideoWidth)
- * C2FIELD(width, "width")
- * };
- * ~~~~~~~~~~~~~
- *
- * ~~~~~~~~~~~~~ (.cpp)
- * struct C2VideoWidthStruct {
- * int32_t width;
- * C2VideoWidthStruct() = default; // optional default constructor
- * C2VideoWidthStruct(int32_t _width) : width(_width) {}
- *
- * DEFINE_C2STRUCT(VideoWidth)
- * } C2_PACK;
- *
- * DESCRIBE_C2STRUCT(VideoWidth, {
- * C2FIELD(width, "width")
- * })
- * ~~~~~~~~~~~~~
- *
- * For flexible structures (those ending in T[]), use the flexible macros:
- *
- * ~~~~~~~~~~~~~ (.cpp)
- * struct C2VideoFlexWidthsStruct {
- * int32_t widths[];
- * C2VideoFlexWidthsStruct(); // must have a default constructor
- *
- * private:
- * // may have private constructors taking number of widths as the first argument
- * // This is used by the C2Param factory methods, e.g.
- * // C2VideoFlexWidthsGlobalParam::AllocUnique(size_t, int32_t);
- * C2VideoFlexWidthsStruct(size_t flexCount, int32_t value) {
- * for (size_t i = 0; i < flexCount; ++i) {
- * widths[i] = value;
- * }
- * }
- *
- * // If the last argument is T[N] or std::initializer_list<T>, the flexCount will
- * // be automatically calculated and passed by the C2Param factory methods, e.g.
- * // int widths[] = { 1, 2, 3 };
- * // C2VideoFlexWidthsGlobalParam::AllocUnique(widths);
- * template<unsigned N>
- * C2VideoFlexWidthsStruct(size_t flexCount, const int32_t(&init)[N]) {
- * for (size_t i = 0; i < flexCount; ++i) {
- * widths[i] = init[i];
- * }
- * }
- *
- * DEFINE_AND_DESCRIBE_FLEX_C2STRUCT(VideoFlexWidths, widths)
- * C2FIELD(widths, "widths")
- * };
- * ~~~~~~~~~~~~~
- *
- * ~~~~~~~~~~~~~ (.cpp)
- * struct C2VideoFlexWidthsStruct {
- * int32_t mWidths[];
- * C2VideoFlexWidthsStruct(); // must have a default constructor
- *
- * DEFINE_FLEX_C2STRUCT(VideoFlexWidths, mWidths)
- * } C2_PACK;
- *
- * DESCRIBE_C2STRUCT(VideoFlexWidths, {
- * C2FIELD(mWidths, "widths")
- * })
- * ~~~~~~~~~~~~~
- *
- */
-#define DESCRIBE_C2FIELD(member, name) \
- C2FieldDescriptor(&((_type*)(nullptr))->member, name),
-
-#define C2FIELD(member, name) _C2FIELD(member, name, __C2_GENERATE_GLOBAL_VARS__)
-/// \if 0
-#define _C2FIELD(member, name, enabled) __C2FIELD(member, name, enabled)
-#define __C2FIELD(member, name, enabled) DESCRIBE_C2FIELD##enabled(member, name)
-#define DESCRIBE_C2FIELD__C2_GENERATE_GLOBAL_VARS__(member, name)
-/// \endif
-
-/// Define a structure with matching CORE_INDEX and start describing its fields.
-/// This must be at the end of the structure definition.
-#define DEFINE_AND_DESCRIBE_C2STRUCT(name) \
- _DEFINE_AND_DESCRIBE_C2STRUCT(name, DEFINE_C2STRUCT, __C2_GENERATE_GLOBAL_VARS__)
-
-/// Define a base structure (with no CORE_INDEX) and start describing its fields.
-/// This must be at the end of the structure definition.
-#define DEFINE_AND_DESCRIBE_BASE_C2STRUCT(name) \
- _DEFINE_AND_DESCRIBE_C2STRUCT(name, DEFINE_BASE_C2STRUCT, __C2_GENERATE_GLOBAL_VARS__)
-
-/// Define a flexible structure with matching CORE_INDEX and start describing its fields.
-/// This must be at the end of the structure definition.
-#define DEFINE_AND_DESCRIBE_FLEX_C2STRUCT(name, flexMember) \
- _DEFINE_AND_DESCRIBE_FLEX_C2STRUCT( \
- name, flexMember, DEFINE_FLEX_C2STRUCT, __C2_GENERATE_GLOBAL_VARS__)
-
-/// Define a flexible base structure (with no CORE_INDEX) and start describing its fields.
-/// This must be at the end of the structure definition.
-#define DEFINE_AND_DESCRIBE_BASE_FLEX_C2STRUCT(name, flexMember) \
- _DEFINE_AND_DESCRIBE_FLEX_C2STRUCT( \
- name, flexMember, DEFINE_BASE_FLEX_C2STRUCT, __C2_GENERATE_GLOBAL_VARS__)
-
-/// \if 0
-/*
- Alternate declaration of field definitions in case no field list is to be generated.
- The specific macro is chosed based on the value of __C2_GENERATE_GLOBAL_VARS__ (whether it is
- defined (to be empty) or not. This requires two level of macro substitution.
- TRICKY: use namespace declaration to handle closing bracket that is normally after
- these macros.
-*/
-
-#define _DEFINE_AND_DESCRIBE_C2STRUCT(name, defineMacro, enabled) \
- __DEFINE_AND_DESCRIBE_C2STRUCT(name, defineMacro, enabled)
-#define __DEFINE_AND_DESCRIBE_C2STRUCT(name, defineMacro, enabled) \
- ___DEFINE_AND_DESCRIBE_C2STRUCT##enabled(name, defineMacro)
-#define ___DEFINE_AND_DESCRIBE_C2STRUCT__C2_GENERATE_GLOBAL_VARS__(name, defineMacro) \
- defineMacro(name) } C2_PACK; namespace {
-#define ___DEFINE_AND_DESCRIBE_C2STRUCT(name, defineMacro) \
- defineMacro(name) } C2_PACK; \
- const std::vector<C2FieldDescriptor> C2##name##Struct::FieldList() { return _FIELD_LIST; } \
- const std::vector<C2FieldDescriptor> C2##name##Struct::_FIELD_LIST = {
-
-#define _DEFINE_AND_DESCRIBE_FLEX_C2STRUCT(name, flexMember, defineMacro, enabled) \
- __DEFINE_AND_DESCRIBE_FLEX_C2STRUCT(name, flexMember, defineMacro, enabled)
-#define __DEFINE_AND_DESCRIBE_FLEX_C2STRUCT(name, flexMember, defineMacro, enabled) \
- ___DEFINE_AND_DESCRIBE_FLEX_C2STRUCT##enabled(name, flexMember, defineMacro)
-#define ___DEFINE_AND_DESCRIBE_FLEX_C2STRUCT__C2_GENERATE_GLOBAL_VARS__(name, flexMember, defineMacro) \
- defineMacro(name, flexMember) } C2_PACK; namespace {
-#define ___DEFINE_AND_DESCRIBE_FLEX_C2STRUCT(name, flexMember, defineMacro) \
- defineMacro(name, flexMember) } C2_PACK; \
- const std::vector<C2FieldDescriptor> C2##name##Struct::FieldList() { return _FIELD_LIST; } \
- const std::vector<C2FieldDescriptor> C2##name##Struct::_FIELD_LIST = {
-/// \endif
-
-
-/**
- * Parameter reflector class.
- *
- * This class centralizes the description of parameter structures. This can be shared
- * by multiple components as describing a parameter does not imply support of that
- * parameter. However, each supported parameter and any dependent structures within
- * must be described by the parameter reflector provided by a component.
- */
-class C2ParamReflector {
-public:
- /**
- * Describes a parameter structure.
- *
- * \param[in] coreIndex the core index of the parameter structure containing at least the
- * core index
- *
- * \return the description of the parameter structure
- * \retval nullptr if the parameter is not supported by this reflector
- *
- * This methods shall not block and return immediately.
- *
- * \note this class does not take a set of indices because we would then prefer
- * to also return any dependent structures, and we don't want this logic to be
- * repeated in each reflector. Alternately, this could just return a map of all
- * descriptions, but we want to conserve memory if client only wants the description
- * of a few indices.
- */
- virtual std::unique_ptr<C2StructDescriptor> describe(C2Param::CoreIndex coreIndex) const = 0;
-
-protected:
- virtual ~C2ParamReflector() = default;
-};
-
-/**
- * Generic supported values for a field.
- *
- * This can be either a range or a set of values. The range can be a simple range, an arithmetic,
- * geometric or multiply-accumulate series with a clear minimum and maximum value. Values can
- * be discrete values, or can optionally represent flags to be or-ed.
- *
- * \note Do not use flags to represent bitfields. Use individual values or separate fields instead.
- */
-struct C2FieldSupportedValues {
-//public:
- enum type_t {
- EMPTY, ///< no supported values
- RANGE, ///< a numeric range that can be continuous or discrete
- VALUES, ///< a list of values
- FLAGS ///< a list of flags that can be OR-ed
- };
-
- type_t type; /** Type of values for this field. */
-
- typedef C2Value::Primitive Primitive;
-
- /**
- * Range specifier for supported value. Used if type is RANGE.
- *
- * If step is 0 and num and denom are both 1, the supported values are any value, for which
- * min <= value <= max.
- *
- * Otherwise, the range represents a geometric/arithmetic/multiply-accumulate series, where
- * successive supported values can be derived from previous values (starting at min), using the
- * following formula:
- * v[0] = min
- * v[i] = v[i-1] * num / denom + step for i >= 1, while min < v[i] <= max.
- */
- struct {
- /** Lower end of the range (inclusive). */
- Primitive min;
- /** Upper end of the range (inclusive if permitted by series). */
- Primitive max;
- /** Step between supported values. */
- Primitive step;
- /** Numerator of a geometric series. */
- Primitive num;
- /** Denominator of a geometric series. */
- Primitive denom;
- } range;
-
- /**
- * List of values. Used if type is VALUES or FLAGS.
- *
- * If type is VALUES, this is the list of supported values in decreasing preference.
- *
- * If type is FLAGS, this vector contains { min-mask, flag1, flag2... }. Basically, the first
- * value is the required set of flags to be set, and the rest of the values are flags that can
- * be set independently. FLAGS is only supported for integral types. Supported flags should
- * not overlap, as it can make validation non-deterministic. The standard validation method
- * is that starting from the original value, if each flag is removed when fully present (the
- * min-mask must be fully present), we shall arrive at 0.
- */
- std::vector<Primitive> values;
-
- C2FieldSupportedValues()
- : type(EMPTY) {
- }
-
- template<typename T>
- C2FieldSupportedValues(T min, T max, T step = T(std::is_floating_point<T>::value ? 0 : 1))
- : type(RANGE),
- range{min, max, step, (T)1, (T)1} { }
-
- template<typename T>
- C2FieldSupportedValues(T min, T max, T num, T den) :
- type(RANGE),
- range{min, max, (T)0, num, den} { }
-
- template<typename T>
- C2FieldSupportedValues(T min, T max, T step, T num, T den)
- : type(RANGE),
- range{min, max, step, num, den} { }
-
- /// \deprecated
- template<typename T>
- C2FieldSupportedValues(bool flags, std::initializer_list<T> list)
- : type(flags ? FLAGS : VALUES),
- range{(T)0, (T)0, (T)0, (T)0, (T)0} {
- for (T value : list) {
- values.emplace_back(value);
- }
- }
-
- /// \deprecated
- template<typename T>
- C2FieldSupportedValues(bool flags, const std::vector<T>& list)
- : type(flags ? FLAGS : VALUES),
- range{(T)0, (T)0, (T)0, (T)0, (T)0} {
- for(T value : list) {
- values.emplace_back(value);
- }
- }
-
- /// \internal
- /// \todo: create separate values vs. flags initializer as for flags we want
- /// to list both allowed and required flags
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wnull-dereference"
- template<typename T, typename E=decltype(C2FieldDescriptor::namedValuesFor(*(T*)nullptr))>
- C2FieldSupportedValues(bool flags, const T*)
- : type(flags ? FLAGS : VALUES),
- range{(T)0, (T)0, (T)0, (T)0, (T)0} {
- C2FieldDescriptor::NamedValuesType named = C2FieldDescriptor::namedValuesFor(*(T*)nullptr);
- if (flags) {
- values.emplace_back(0); // min-mask defaults to 0
- }
- for (const C2FieldDescriptor::NamedValueType &item : named){
- values.emplace_back(item.second);
- }
- }
-};
-#pragma GCC diagnostic pop
-
-/**
- * Supported values for a specific field.
- *
- * This is a pair of the field specifier together with an optional supported values object.
- * This structure is used when reporting parameter configuration failures and conflicts.
- */
-struct C2ParamFieldValues {
- C2ParamField paramOrField; ///< the field or parameter
- /// optional supported values for the field if paramOrField specifies an actual field that is
- /// numeric (non struct, blob or string). Supported values for arrays (including string and
- /// blobs) describe the supported values for each element (character for string, and bytes for
- /// blobs). It is optional for read-only strings and blobs.
- std::unique_ptr<C2FieldSupportedValues> values;
-
- // This struct is meant to be move constructed.
- C2_DEFAULT_MOVE(C2ParamFieldValues);
-
- // Copy constructor/assignment is also provided as this object may get copied.
- C2ParamFieldValues(const C2ParamFieldValues &other)
- : paramOrField(other.paramOrField),
- values(other.values ? std::make_unique<C2FieldSupportedValues>(*other.values) : nullptr) { }
-
- C2ParamFieldValues& operator=(const C2ParamFieldValues &other) {
- paramOrField = other.paramOrField;
- values = other.values ? std::make_unique<C2FieldSupportedValues>(*other.values) : nullptr;
- return *this;
- }
-
-
- /**
- * Construct with no values.
- */
- C2ParamFieldValues(const C2ParamField ¶mOrField_)
- : paramOrField(paramOrField_) { }
-
- /**
- * Construct with values.
- */
- C2ParamFieldValues(const C2ParamField ¶mOrField_, const C2FieldSupportedValues &values_)
- : paramOrField(paramOrField_),
- values(std::make_unique<C2FieldSupportedValues>(values_)) { }
-
- /**
- * Construct from fields.
- */
- C2ParamFieldValues(const C2ParamField ¶mOrField_, std::unique_ptr<C2FieldSupportedValues> &&values_)
- : paramOrField(paramOrField_),
- values(std::move(values_)) { }
-};
-
-/// @}
-
-// include debug header for C2Params.h if C2Debug.h was already included
-#ifdef C2UTILS_DEBUG_H_
-#include <util/C2Debug-param.h>
-#endif
-
-#endif // C2PARAM_H_
diff --git a/codec2/include/C2ParamDef.h b/codec2/include/C2ParamDef.h
deleted file mode 100644
index 0a33283..0000000
--- a/codec2/include/C2ParamDef.h
+++ /dev/null
@@ -1,931 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/** \file
- * Templates used to declare parameters.
- */
-#ifndef C2PARAM_DEF_H_
-#define C2PARAM_DEF_H_
-
-#include <type_traits>
-
-#include <C2Param.h>
-
-/// \addtogroup Parameters
-/// @{
-
-/* ======================== UTILITY TEMPLATES FOR PARAMETER DEFINITIONS ======================== */
-
-/// \addtogroup internal
-/// @{
-
-/// Helper class that checks if a type has equality and inequality operators.
-struct C2_HIDE _C2Comparable_impl
-{
- template<typename S, typename=decltype(S() == S())>
- static std::true_type TestEqual(int);
- template<typename>
- static std::false_type TestEqual(...);
-
- template<typename S, typename=decltype(S() != S())>
- static std::true_type TestNotEqual(int);
- template<typename>
- static std::false_type TestNotEqual(...);
-};
-
-/**
- * Helper template that returns if a type has equality and inequality operators.
- *
- * Use as _C2Comparable<typename S>::value.
- */
-template<typename S>
-struct C2_HIDE _C2Comparable
- : public std::integral_constant<bool, decltype(_C2Comparable_impl::TestEqual<S>(0))::value
- || decltype(_C2Comparable_impl::TestNotEqual<S>(0))::value> {
-};
-
-/// Helper class that checks if a type has a CORE_INDEX constant.
-struct C2_HIDE _C2CoreIndexHelper_impl
-{
- template<typename S, int=S::CORE_INDEX>
- static std::true_type TestCoreIndex(int);
- template<typename>
- static std::false_type TestCoreIndex(...);
-};
-
-/// Macro that defines and thus overrides a type's CORE_INDEX for a setting
-#define _C2_CORE_INDEX_OVERRIDE(coreIndex) \
-public: \
- enum : uint32_t { CORE_INDEX = coreIndex };
-
-
-/// Helper template that adds a CORE_INDEX to a type if it does not have one (for testing)
-template<typename S, int CoreIndex>
-struct C2_HIDE _C2AddCoreIndex : public S {
- _C2_CORE_INDEX_OVERRIDE(CoreIndex)
-};
-
-/**
- * \brief Helper class to check struct requirements for parameters.
- *
- * Features:
- * - verify default constructor, no virtual methods, and no equality operators.
- * - expose PARAM_TYPE, and non-flex FLEX_SIZE.
- */
-template<typename S, int CoreIndex, unsigned TypeFlags>
-struct C2_HIDE _C2StructCheck {
- static_assert(
- std::is_default_constructible<S>::value, "C2 structure must have default constructor");
- static_assert(!std::is_polymorphic<S>::value, "C2 structure must not have virtual methods");
- static_assert(!_C2Comparable<S>::value, "C2 structure must not have operator== or !=");
-
-public:
- enum : uint32_t {
- PARAM_TYPE = CoreIndex | TypeFlags
- };
-
-protected:
- enum : uint32_t {
- FLEX_SIZE = 0,
- };
-};
-
-/// Helper class that checks if a type has an integer FLEX_SIZE member.
-struct C2_HIDE _C2Flexible_impl {
- /// specialization for types that have a FLEX_SIZE member
- template<typename S, unsigned=S::FLEX_SIZE>
- static std::true_type TestFlexSize(int);
- template<typename>
- static std::false_type TestFlexSize(...);
-};
-
-/// Helper template that returns if a type has an integer FLEX_SIZE member.
-template<typename S>
-struct C2_HIDE _C2Flexible
- : public std::integral_constant<bool, decltype(_C2Flexible_impl::TestFlexSize<S>(0))::value> {
-};
-
-/// Macro to test if a type is flexible (has a FLEX_SIZE member).
-#define IF_FLEXIBLE(S) ENABLE_IF(_C2Flexible<S>::value)
-/// Shorthand for std::enable_if
-#define ENABLE_IF(cond) typename std::enable_if<cond>::type
-
-template<typename T, typename V=void>
-struct C2_HIDE _c2_enable_if_type {
- typedef V type;
-};
-
-/// Helper template that exposes the flexible subtype of a struct.
-template<typename S, typename E=void>
-struct C2_HIDE _C2FlexHelper {
- typedef void FlexType;
- enum : uint32_t { FLEX_SIZE = 0 };
-};
-
-/// Specialization for flexible types. This only works if _FlexMemberType is public.
-template<typename S>
-struct C2_HIDE _C2FlexHelper<S,
- typename _c2_enable_if_type<typename S::_FlexMemberType>::type> {
- typedef typename _C2FlexHelper<typename S::_FlexMemberType>::FlexType FlexType;
- enum : uint32_t { FLEX_SIZE = _C2FlexHelper<typename S::_FlexMemberType>::FLEX_SIZE };
-};
-
-/// Specialization for flex arrays.
-template<typename S>
-struct C2_HIDE _C2FlexHelper<S[],
- typename std::enable_if<std::is_void<typename _C2FlexHelper<S>::FlexType>::value>::type> {
- typedef S FlexType;
- enum : uint32_t { FLEX_SIZE = sizeof(S) };
-};
-
-/**
- * \brief Helper class to check flexible struct requirements and add common operations.
- *
- * Features:
- * - expose CORE_INDEX and FieldList (this is normally inherited from the struct, but flexible
- * structs cannot be base classes and thus inherited from)
- * - disable copy assignment and construction (TODO: this is already done in the FLEX macro for the
- * flexible struct, so may not be needed here)
- */
-template<typename S, int ParamIndex, unsigned TypeFlags>
-struct C2_HIDE _C2FlexStructCheck :
-// add flexible flag as _C2StructCheck defines PARAM_TYPE
- public _C2StructCheck<S, ParamIndex | C2Param::CoreIndex::IS_FLEX_FLAG, TypeFlags> {
-public:
- enum : uint32_t {
- /// \hideinitializer
- CORE_INDEX = ParamIndex | C2Param::CoreIndex::IS_FLEX_FLAG, ///< flexible struct core-index
- };
-
- inline static const std::vector<C2FieldDescriptor> FieldList() { return S::FieldList(); }
-
- // default constructor needed because of the disabled copy constructor
- inline _C2FlexStructCheck() = default;
-
-protected:
- // cannot copy flexible params
- _C2FlexStructCheck(const _C2FlexStructCheck<S, ParamIndex, TypeFlags> &) = delete;
- _C2FlexStructCheck& operator= (const _C2FlexStructCheck<S, ParamIndex, TypeFlags> &) = delete;
-
- // constants used for helper methods
- enum : uint32_t {
- /// \hideinitializer
- FLEX_SIZE = _C2FlexHelper<S>::FLEX_SIZE, ///< size of flexible type
- /// \hideinitializer
- MAX_SIZE = (uint32_t)std::min((size_t)UINT32_MAX, SIZE_MAX), // TODO: is this always u32 max?
- /// \hideinitializer
- BASE_SIZE = sizeof(S) + sizeof(C2Param), ///< size of the base param
- };
-
- /// returns the allocated size of this param with flexCount, or 0 if it would overflow.
- inline static size_t CalcSize(size_t flexCount, size_t size = BASE_SIZE) {
- if (flexCount <= (MAX_SIZE - size) / S::FLEX_SIZE) {
- return size + S::FLEX_SIZE * flexCount;
- }
- return 0;
- }
-
- /// dynamic new operator usable for params of type S
- inline void* operator new(size_t size, size_t flexCount) noexcept {
- // TODO: assert(size == BASE_SIZE);
- size = CalcSize(flexCount, size);
- if (size > 0) {
- return ::operator new(size);
- }
- return nullptr;
- }
-};
-
-/// Define From() cast operators for params.
-#define DEFINE_CAST_OPERATORS(_Type) \
- inline static _Type* From(C2Param *other) { \
- return (_Type*)C2Param::IfSuitable( \
- other, sizeof(_Type), _Type::PARAM_TYPE, _Type::FLEX_SIZE, \
- (_Type::PARAM_TYPE & T::Index::DIR_UNDEFINED) != T::Index::DIR_UNDEFINED); \
- } \
- inline static const _Type* From(const C2Param *other) { \
- return const_cast<const _Type*>(From(const_cast<C2Param *>(other))); \
- } \
- inline static _Type* From(std::nullptr_t) { return nullptr; } \
-
-/**
- * Define flexible allocators (AllocShared or AllocUnique) for flexible params.
- * - P::AllocXyz(flexCount, args...): allocate for given flex-count. This maps to
- * T(flexCount, args...)\
- *
- * Clang does not support args... followed by templated param as args... eats it. Hence,
- * provide specializations where the initializer replaces the flexCount.
- *
- * Specializations that deduce flexCount:
- * - P::AllocXyz(T[], args...): allocate for size of (and with) init array.
- * - P::AllocXyz(std::initializer_list<T>, args...): allocate for size of (and with) initializer
- * list.
- * - P::AllocXyz(std::vector<T>, args...): allocate for size of (and with) init vector.
- * These specializations map to T(flexCount = size-of-init, args..., init)
- */
-#define DEFINE_FLEXIBLE_ALLOC(_Type, S, ptr, Ptr) \
- template<typename ...Args> \
- inline static std::ptr##_ptr<_Type> Alloc##Ptr(size_t flexCount, const Args(&... args)) { \
- return std::ptr##_ptr<_Type>(new(flexCount) _Type(flexCount, args...)); \
- } \
- template<typename ...Args, typename U=typename S::FlexType> \
- inline static std::ptr##_ptr<_Type> Alloc##Ptr( \
- const std::initializer_list<U> &init, const Args(&... args)) { \
- return std::ptr##_ptr<_Type>(new(init.size()) _Type(init.size(), args..., init)); \
- } \
- template<typename ...Args, typename U=typename S::FlexType> \
- inline static std::ptr##_ptr<_Type> Alloc##Ptr( \
- const std::vector<U> &init, const Args(&... args)) { \
- return std::ptr##_ptr<_Type>(new(init.size()) _Type(init.size(), args..., init)); \
- } \
- template<typename ...Args, typename U=typename S::FlexType, unsigned N> \
- inline static std::ptr##_ptr<_Type> Alloc##Ptr(const U(&init)[N], const Args(&... args)) { \
- return std::ptr##_ptr<_Type>(new(N) _Type(N, args..., init)); \
- } \
-
-/**
- * Define flexible methods AllocShared, AllocUnique and flexCount.
- */
-#define DEFINE_FLEXIBLE_METHODS(_Type, S) \
- DEFINE_FLEXIBLE_ALLOC(_Type, S, shared, Shared) \
- DEFINE_FLEXIBLE_ALLOC(_Type, S, unique, Unique) \
- inline size_t flexCount() const { \
- static_assert(sizeof(_Type) == _Type::BASE_SIZE, "incorrect BASE_SIZE"); \
- size_t sz = this->size(); \
- if (sz >= sizeof(_Type)) { \
- return (sz - sizeof(_Type)) / _Type::FLEX_SIZE; \
- } \
- return 0; \
- } \
-
-/// Mark flexible member variable and make structure flexible.
-#define FLEX(cls, m) \
- C2_DO_NOT_COPY(cls) \
-private: \
- C2PARAM_MAKE_FRIENDS \
- /** \if 0 */ \
- template<typename, typename> friend struct _C2FlexHelper; \
-public: \
- typedef decltype(m) _FlexMemberType; \
- /* default constructor with flexCount */ \
- inline cls(size_t) : cls() {} \
- /* constexpr static _FlexMemberType cls::* flexMember = &cls::m; */ \
- typedef typename _C2FlexHelper<_FlexMemberType>::FlexType FlexType; \
- static_assert(\
- !std::is_void<FlexType>::value, \
- "member is not flexible, or a flexible array of a flexible type"); \
- enum : uint32_t { FLEX_SIZE = _C2FlexHelper<_FlexMemberType>::FLEX_SIZE }; \
- /** \endif */ \
-
-/// @}
-
-/**
- * Global-parameter template.
- *
- * Base template to define a global setting/tuning or info based on a structure and
- * an optional ParamIndex. Global parameters are not tied to a port (input or output).
- *
- * Parameters wrap structures by prepending a (parameter) header. The fields of the wrapped
- * structure can be accessed directly, and constructors and potential public methods are also
- * wrapped.
- *
- * \tparam T param type C2Setting, C2Tuning or C2Info
- * \tparam S wrapped structure
- * \tparam ParamIndex optional parameter index override. Must be specified for base/reused
- * structures.
- */
-template<typename T, typename S, int ParamIndex=S::CORE_INDEX, class Flex=void>
-struct C2_HIDE C2GlobalParam : public T, public S,
- public _C2StructCheck<S, ParamIndex, T::PARAM_KIND | T::Type::DIR_GLOBAL> {
- _C2_CORE_INDEX_OVERRIDE(ParamIndex)
-private:
- typedef C2GlobalParam<T, S, ParamIndex> _Type;
-
-public:
- /// Wrapper around base structure's constructor.
- template<typename ...Args>
- inline C2GlobalParam(const Args(&... args)) : T(sizeof(_Type), _Type::PARAM_TYPE), S(args...) { }
-
- DEFINE_CAST_OPERATORS(_Type)
-};
-
-/**
- * Global-parameter template for flexible structures.
- *
- * Base template to define a global setting/tuning or info based on a flexible structure and
- * an optional ParamIndex. Global parameters are not tied to a port (input or output).
- *
- * \tparam T param type C2Setting, C2Tuning or C2Info
- * \tparam S wrapped flexible structure
- * \tparam ParamIndex optional parameter index override. Must be specified for base/reused
- * structures.
- *
- * Parameters wrap structures by prepending a (parameter) header. The fields and methods of flexible
- * structures can be accessed via the m member variable; however, the constructors of the structure
- * are wrapped directly. (This is because flexible types cannot be subclassed.)
- */
-template<typename T, typename S, int ParamIndex>
-struct C2_HIDE C2GlobalParam<T, S, ParamIndex, IF_FLEXIBLE(S)>
- : public T, public _C2FlexStructCheck<S, ParamIndex, T::PARAM_KIND | T::Type::DIR_GLOBAL> {
-private:
- typedef C2GlobalParam<T, S, ParamIndex> _Type;
-
- /// Wrapper around base structure's constructor.
- template<typename ...Args>
- inline C2GlobalParam(size_t flexCount, const Args(&... args))
- : T(_Type::CalcSize(flexCount), _Type::PARAM_TYPE), m(flexCount, args...) { }
-
-public:
- S m; ///< wrapped flexible structure
-
- DEFINE_FLEXIBLE_METHODS(_Type, S)
- DEFINE_CAST_OPERATORS(_Type)
-};
-
-/**
- * Port-parameter template.
- *
- * Base template to define a port setting/tuning or info based on a structure and
- * an optional ParamIndex. Port parameters are tied to a port (input or output), but not to a
- * specific stream.
- *
- * \tparam T param type C2Setting, C2Tuning or C2Info
- * \tparam S wrapped structure
- * \tparam ParamIndex optional parameter index override. Must be specified for base/reused
- * structures.
- *
- * Parameters wrap structures by prepending a (parameter) header. The fields of the wrapped
- * structure can be accessed directly, and constructors and potential public methods are also
- * wrapped.
- *
- * There are 3 flavors of port parameters: unspecified, input and output. Parameters with
- * unspecified port expose a setPort method, and add an initial port parameter to the constructor.
- */
-template<typename T, typename S, int ParamIndex=S::CORE_INDEX, class Flex=void>
-struct C2_HIDE C2PortParam : public T, public S,
- private _C2StructCheck<S, ParamIndex, T::PARAM_KIND | T::Index::DIR_UNDEFINED> {
- _C2_CORE_INDEX_OVERRIDE(ParamIndex)
-private:
- typedef C2PortParam<T, S, ParamIndex> _Type;
-
-public:
- /// Default constructor.
- inline C2PortParam() : T(sizeof(_Type), _Type::PARAM_TYPE) { }
- template<typename ...Args>
- /// Wrapper around base structure's constructor while specifying port/direction.
- inline C2PortParam(bool _output, const Args(&... args))
- : T(sizeof(_Type), _output ? output::PARAM_TYPE : input::PARAM_TYPE), S(args...) { }
- /// Set port/direction.
- inline void setPort(bool output) { C2Param::setPort(output); }
-
- DEFINE_CAST_OPERATORS(_Type)
-
- /// Specialization for an input port parameter.
- struct input : public T, public S,
- public _C2StructCheck<S, ParamIndex, T::PARAM_KIND | T::Index::DIR_INPUT> {
- _C2_CORE_INDEX_OVERRIDE(ParamIndex)
- /// Wrapper around base structure's constructor.
- template<typename ...Args>
- inline input(const Args(&... args)) : T(sizeof(_Type), input::PARAM_TYPE), S(args...) { }
-
- DEFINE_CAST_OPERATORS(input)
-
- };
-
- /// Specialization for an output port parameter.
- struct output : public T, public S,
- public _C2StructCheck<S, ParamIndex, T::PARAM_KIND | T::Index::DIR_OUTPUT> {
- _C2_CORE_INDEX_OVERRIDE(ParamIndex)
- /// Wrapper around base structure's constructor.
- template<typename ...Args>
- inline output(const Args(&... args)) : T(sizeof(_Type), output::PARAM_TYPE), S(args...) { }
-
- DEFINE_CAST_OPERATORS(output)
- };
-};
-
-/**
- * Port-parameter template for flexible structures.
- *
- * Base template to define a port setting/tuning or info based on a flexible structure and
- * an optional ParamIndex. Port parameters are tied to a port (input or output), but not to a
- * specific stream.
- *
- * \tparam T param type C2Setting, C2Tuning or C2Info
- * \tparam S wrapped flexible structure
- * \tparam ParamIndex optional parameter index override. Must be specified for base/reused
- * structures.
- *
- * Parameters wrap structures by prepending a (parameter) header. The fields and methods of flexible
- * structures can be accessed via the m member variable; however, the constructors of the structure
- * are wrapped directly. (This is because flexible types cannot be subclassed.)
- *
- * There are 3 flavors of port parameters: unspecified, input and output. Parameters with
- * unspecified port expose a setPort method, and add an initial port parameter to the constructor.
- */
-template<typename T, typename S, int ParamIndex>
-struct C2_HIDE C2PortParam<T, S, ParamIndex, IF_FLEXIBLE(S)>
- : public T, public _C2FlexStructCheck<S, ParamIndex, T::PARAM_KIND | T::Type::DIR_UNDEFINED> {
-private:
- typedef C2PortParam<T, S, ParamIndex> _Type;
-
- /// Default constructor for basic allocation: new(flexCount) P.
- inline C2PortParam(size_t flexCount) : T(_Type::CalcSize(flexCount), _Type::PARAM_TYPE) { }
- template<typename ...Args>
- /// Wrapper around base structure's constructor while also specifying port/direction.
- inline C2PortParam(size_t flexCount, bool _output, const Args(&... args))
- : T(_Type::CalcSize(flexCount), _output ? output::PARAM_TYPE : input::PARAM_TYPE),
- m(flexCount, args...) { }
-
-public:
- /// Set port/direction.
- inline void setPort(bool output) { C2Param::setPort(output); }
-
- S m; ///< wrapped flexible structure
-
- DEFINE_FLEXIBLE_METHODS(_Type, S)
- DEFINE_CAST_OPERATORS(_Type)
-
- /// Specialization for an input port parameter.
- struct input : public T,
- public _C2FlexStructCheck<S, ParamIndex, T::PARAM_KIND | T::Index::DIR_INPUT> {
- private:
- /// Wrapper around base structure's constructor while also specifying port/direction.
- template<typename ...Args>
- inline input(size_t flexCount, const Args(&... args))
- : T(_Type::CalcSize(flexCount), input::PARAM_TYPE), m(flexCount, args...) { }
-
- public:
- S m; ///< wrapped flexible structure
-
- DEFINE_FLEXIBLE_METHODS(input, S)
- DEFINE_CAST_OPERATORS(input)
- };
-
- /// Specialization for an output port parameter.
- struct output : public T,
- public _C2FlexStructCheck<S, ParamIndex, T::PARAM_KIND | T::Index::DIR_OUTPUT> {
- private:
- /// Wrapper around base structure's constructor while also specifying port/direction.
- template<typename ...Args>
- inline output(size_t flexCount, const Args(&... args))
- : T(_Type::CalcSize(flexCount), output::PARAM_TYPE), m(flexCount, args...) { }
-
- public:
- S m; ///< wrapped flexible structure
-
- DEFINE_FLEXIBLE_METHODS(output, S)
- DEFINE_CAST_OPERATORS(output)
- };
-};
-
-/**
- * Stream-parameter template.
- *
- * Base template to define a stream setting/tuning or info based on a structure and
- * an optional ParamIndex. Stream parameters are tied to a specific stream on a port (input or
- * output).
- *
- * \tparam T param type C2Setting, C2Tuning or C2Info
- * \tparam S wrapped structure
- * \tparam ParamIndex optional paramter index override. Must be specified for base/reused
- * structures.
- *
- * Parameters wrap structures by prepending a (parameter) header. The fields of the wrapped
- * structure can be accessed directly, and constructors and potential public methods are also
- * wrapped.
- *
- * There are 3 flavors of stream parameters: unspecified port, input and output. All of these expose
- * a setStream method and an extra initial streamID parameter for the constructor. Moreover,
- * parameters with unspecified port expose a setPort method, and add an additional initial port
- * parameter to the constructor.
- */
-template<typename T, typename S, int ParamIndex=S::CORE_INDEX, class Flex=void>
-struct C2_HIDE C2StreamParam : public T, public S,
- private _C2StructCheck<S, ParamIndex,
- T::PARAM_KIND | T::Index::IS_STREAM_FLAG | T::Index::DIR_UNDEFINED> {
- _C2_CORE_INDEX_OVERRIDE(ParamIndex)
-private:
- typedef C2StreamParam<T, S, ParamIndex> _Type;
-
-public:
- /// Default constructor. Port/direction and stream-ID is undefined.
- inline C2StreamParam() : T(sizeof(_Type), _Type::PARAM_TYPE) { }
- /// Wrapper around base structure's constructor while also specifying port/direction and
- /// stream-ID.
- template<typename ...Args>
- inline C2StreamParam(bool _output, unsigned stream, const Args(&... args))
- : T(sizeof(_Type), _output ? output::PARAM_TYPE : input::PARAM_TYPE, stream),
- S(args...) { }
- /// Set port/direction.
- inline void setPort(bool output) { C2Param::setPort(output); }
- /// Set stream-id. \retval true if the stream-id was successfully set.
- inline bool setStream(unsigned stream) { return C2Param::setStream(stream); }
-
- DEFINE_CAST_OPERATORS(_Type)
-
- /// Specialization for an input stream parameter.
- struct input : public T, public S,
- public _C2StructCheck<S, ParamIndex,
- T::PARAM_KIND | T::Index::IS_STREAM_FLAG | T::Type::DIR_INPUT> {
- _C2_CORE_INDEX_OVERRIDE(ParamIndex)
-
- /// Default constructor. Stream-ID is undefined.
- inline input() : T(sizeof(_Type), input::PARAM_TYPE) { }
- /// Wrapper around base structure's constructor while also specifying stream-ID.
- template<typename ...Args>
- inline input(unsigned stream, const Args(&... args))
- : T(sizeof(_Type), input::PARAM_TYPE, stream), S(args...) { }
- /// Set stream-id. \retval true if the stream-id was successfully set.
- inline bool setStream(unsigned stream) { return C2Param::setStream(stream); }
-
- DEFINE_CAST_OPERATORS(input)
- };
-
- /// Specialization for an output stream parameter.
- struct output : public T, public S,
- public _C2StructCheck<S, ParamIndex,
- T::PARAM_KIND | T::Index::IS_STREAM_FLAG | T::Type::DIR_OUTPUT> {
- _C2_CORE_INDEX_OVERRIDE(ParamIndex)
-
- /// Default constructor. Stream-ID is undefined.
- inline output() : T(sizeof(_Type), output::PARAM_TYPE) { }
- /// Wrapper around base structure's constructor while also specifying stream-ID.
- template<typename ...Args>
- inline output(unsigned stream, const Args(&... args))
- : T(sizeof(_Type), output::PARAM_TYPE, stream), S(args...) { }
- /// Set stream-id. \retval true if the stream-id was successfully set.
- inline bool setStream(unsigned stream) { return C2Param::setStream(stream); }
-
- DEFINE_CAST_OPERATORS(output)
- };
-};
-
-/**
- * Stream-parameter template for flexible structures.
- *
- * Base template to define a stream setting/tuning or info based on a flexible structure and
- * an optional ParamIndex. Stream parameters are tied to a specific stream on a port (input or
- * output).
- *
- * \tparam T param type C2Setting, C2Tuning or C2Info
- * \tparam S wrapped flexible structure
- * \tparam ParamIndex optional parameter index override. Must be specified for base/reused
- * structures.
- *
- * Parameters wrap structures by prepending a (parameter) header. The fields and methods of flexible
- * structures can be accessed via the m member variable; however, the constructors of the structure
- * are wrapped directly. (This is because flexible types cannot be subclassed.)
- *
- * There are 3 flavors of stream parameters: unspecified port, input and output. All of these expose
- * a setStream method and an extra initial streamID parameter for the constructor. Moreover,
- * parameters with unspecified port expose a setPort method, and add an additional initial port
- * parameter to the constructor.
- */
-template<typename T, typename S, int ParamIndex>
-struct C2_HIDE C2StreamParam<T, S, ParamIndex, IF_FLEXIBLE(S)>
- : public T,
- public _C2FlexStructCheck<S, ParamIndex,
- T::PARAM_KIND | T::Index::IS_STREAM_FLAG | T::Index::DIR_UNDEFINED> {
-private:
- typedef C2StreamParam<T, S, ParamIndex> _Type;
- /// Default constructor. Port/direction and stream-ID is undefined.
- inline C2StreamParam(size_t flexCount) : T(_Type::CalcSize(flexCount), _Type::PARAM_TYPE, 0u) { }
- /// Wrapper around base structure's constructor while also specifying port/direction and
- /// stream-ID.
- template<typename ...Args>
- inline C2StreamParam(size_t flexCount, bool _output, unsigned stream, const Args(&... args))
- : T(_Type::CalcSize(flexCount), _output ? output::PARAM_TYPE : input::PARAM_TYPE, stream),
- m(flexCount, args...) { }
-
-public:
- S m; ///< wrapped flexible structure
-
- /// Set port/direction.
- inline void setPort(bool output) { C2Param::setPort(output); }
- /// Set stream-id. \retval true if the stream-id was successfully set.
- inline bool setStream(unsigned stream) { return C2Param::setStream(stream); }
-
- DEFINE_FLEXIBLE_METHODS(_Type, S)
- DEFINE_CAST_OPERATORS(_Type)
-
- /// Specialization for an input stream parameter.
- struct input : public T,
- public _C2FlexStructCheck<S, ParamIndex,
- T::PARAM_KIND | T::Index::IS_STREAM_FLAG | T::Type::DIR_INPUT> {
- private:
- /// Default constructor. Stream-ID is undefined.
- inline input(size_t flexCount) : T(_Type::CalcSize(flexCount), input::PARAM_TYPE) { }
- /// Wrapper around base structure's constructor while also specifying stream-ID.
- template<typename ...Args>
- inline input(size_t flexCount, unsigned stream, const Args(&... args))
- : T(_Type::CalcSize(flexCount), input::PARAM_TYPE, stream), m(flexCount, args...) { }
-
- public:
- S m; ///< wrapped flexible structure
-
- /// Set stream-id. \retval true if the stream-id was successfully set.
- inline bool setStream(unsigned stream) { return C2Param::setStream(stream); }
-
- DEFINE_FLEXIBLE_METHODS(input, S)
- DEFINE_CAST_OPERATORS(input)
- };
-
- /// Specialization for an output stream parameter.
- struct output : public T,
- public _C2FlexStructCheck<S, ParamIndex,
- T::PARAM_KIND | T::Index::IS_STREAM_FLAG | T::Type::DIR_OUTPUT> {
- private:
- /// Default constructor. Stream-ID is undefined.
- inline output(size_t flexCount) : T(_Type::CalcSize(flexCount), output::PARAM_TYPE) { }
- /// Wrapper around base structure's constructor while also specifying stream-ID.
- template<typename ...Args>
- inline output(size_t flexCount, unsigned stream, const Args(&... args))
- : T(_Type::CalcSize(flexCount), output::PARAM_TYPE, stream), m(flexCount, args...) { }
-
- public:
- S m; ///< wrapped flexible structure
-
- /// Set stream-id. \retval true if the stream-id was successfully set.
- inline bool setStream(unsigned stream) { return C2Param::setStream(stream); }
-
- DEFINE_FLEXIBLE_METHODS(output, S)
- DEFINE_CAST_OPERATORS(output)
- };
-};
-
-/* ======================== SIMPLE VALUE PARAMETERS ======================== */
-
-/**
- * \ingroup internal
- * A structure template encapsulating a single element with default constructors and no core-index.
- */
-template<typename T>
-struct C2SimpleValueStruct {
- T value; ///< simple value of the structure
- // Default constructor.
- inline C2SimpleValueStruct() = default;
- // Constructor with an initial value.
- inline C2SimpleValueStruct(T value) : value(value) {}
- DEFINE_BASE_C2STRUCT(SimpleValue)
-};
-
-// TODO: move this and next to some generic place
-/**
- * Interface to a block of (mapped) memory containing an array of some type (T).
- */
-template<typename T>
-struct C2MemoryBlock {
- /// \returns the number of elements in this block.
- virtual size_t size() const = 0;
- /// \returns a const pointer to the start of this block. Care must be taken to not read outside
- /// the block.
- virtual const T *data() const = 0; // TODO: should this be friend access only in some C2Memory module?
- /// \returns a pointer to the start of this block. Care must be taken to not read or write
- /// outside the block.
- inline T *data() { return const_cast<T*>(const_cast<const C2MemoryBlock*>(this)->data()); }
-
-protected:
- // TODO: for now it should never be deleted as C2MemoryBlock
- virtual ~C2MemoryBlock() = default;
-};
-
-/**
- * Interface to a block of memory containing a constant (constexpr) array of some type (T).
- */
-template<typename T>
-struct C2ConstMemoryBlock : public C2MemoryBlock<T> {
- virtual const T * data() const { return _mData; }
- virtual size_t size() const { return _mSize; }
-
- /// Constructor.
- template<unsigned N>
- inline constexpr C2ConstMemoryBlock(const T(&init)[N]) : _mData(init), _mSize(N) {}
-
-private:
- const T *_mData;
- const size_t _mSize;
-};
-
-/// \addtogroup internal
-/// @{
-
-/// Helper class to initialize flexible arrays with various initalizers.
-struct _C2ValueArrayHelper {
- // char[]-s are used as null terminated strings, so the last element is never inited.
-
- /// Initialize a flexible array using a constexpr memory block.
- template<typename T>
- static void init(T(&array)[], size_t arrayLen, const C2MemoryBlock<T> &block) {
- // reserve last element for terminal 0 for strings
- if (arrayLen && std::is_same<T, char>::value) {
- --arrayLen;
- }
- if (block.data()) {
- memcpy(array, block.data(), std::min(arrayLen, block.size()) * sizeof(T));
- }
- }
-
- /// Initialize a flexible array using an initializer list.
- template<typename T>
- static void init(T(&array)[], size_t arrayLen, const std::initializer_list<T> &init) {
- size_t ix = 0;
- // reserve last element for terminal 0 for strings
- if (arrayLen && std::is_same<T, char>::value) {
- --arrayLen;
- }
- for (const T &item : init) {
- if (ix == arrayLen) {
- break;
- }
- array[ix++] = item;
- }
- }
-
- /// Initialize a flexible array using a vector.
- template<typename T>
- static void init(T(&array)[], size_t arrayLen, const std::vector<T> &init) {
- size_t ix = 0;
- // reserve last element for terminal 0 for strings
- if (arrayLen && std::is_same<T, char>::value) {
- --arrayLen;
- }
- for (const T &item : init) {
- if (ix == arrayLen) {
- break;
- }
- array[ix++] = item;
- }
- }
-
- /// Initialize a flexible array using another flexible array.
- template<typename T, unsigned N>
- static void init(T(&array)[], size_t arrayLen, const T(&str)[N]) {
- // reserve last element for terminal 0 for strings
- if (arrayLen && std::is_same<T, char>::value) {
- --arrayLen;
- }
- if (arrayLen) {
- memcpy(array, str, std::min(arrayLen, (size_t)N) * sizeof(T));
- }
- }
-};
-
-/**
- * Specialization for a flexible blob and string arrays. A structure template encapsulating a single
- * flexible array member with default flexible constructors and no core-index. This type cannot be
- * constructed on its own as it's size is 0.
- *
- * \internal This is different from C2SimpleArrayStruct<T[]> simply because its member has the name
- * as value to reflect this is a single value.
- */
-template<typename T>
-struct C2SimpleValueStruct<T[]> {
- static_assert(std::is_same<T, char>::value || std::is_same<T, uint8_t>::value,
- "C2SimpleValueStruct<T[]> is only for BLOB or STRING");
- T value[];
-
- inline C2SimpleValueStruct() = default;
- DEFINE_BASE_C2STRUCT(SimpleValue)
- FLEX(C2SimpleValueStruct, value)
-
-private:
- inline C2SimpleValueStruct(size_t flexCount, const C2MemoryBlock<T> &block) {
- _C2ValueArrayHelper::init(value, flexCount, block);
- }
-
- inline C2SimpleValueStruct(size_t flexCount, const std::initializer_list<T> &init) {
- _C2ValueArrayHelper::init(value, flexCount, init);
- }
-
- inline C2SimpleValueStruct(size_t flexCount, const std::vector<T> &init) {
- _C2ValueArrayHelper::init(value, flexCount, init);
- }
-
- template<unsigned N>
- inline C2SimpleValueStruct(size_t flexCount, const T(&init)[N]) {
- _C2ValueArrayHelper::init(value, flexCount, init);
- }
-};
-
-/// @}
-
-/**
- * A structure template encapsulating a single flexible array element of a specific type (T) with
- * default constructors and no core-index. This type cannot be constructed on its own as it's size
- * is 0. Instead, it is meant to be used as a parameter, e.g.
- *
- * typedef C2StreamParam<C2Info, C2SimpleArrayStruct<C2MyFancyStruct>,
- * kParamIndexMyFancyArrayStreamParam> C2MyFancyArrayStreamInfo;
- */
-template<typename T>
-struct C2SimpleArrayStruct {
- static_assert(!std::is_same<T, char>::value && !std::is_same<T, uint8_t>::value,
- "use C2SimpleValueStruct<T[]> is for BLOB or STRING");
-
- T values[]; ///< array member
- /// Default constructor
- inline C2SimpleArrayStruct() = default;
- DEFINE_BASE_FLEX_C2STRUCT(SimpleArray, values)
- //FLEX(C2SimpleArrayStruct, values)
-
-private:
- /// Construct from a C2MemoryBlock.
- /// Used only by the flexible parameter allocators (AllocUnique & AllocShared).
- inline C2SimpleArrayStruct(size_t flexCount, const C2MemoryBlock<T> &block) {
- _C2ValueArrayHelper::init(values, flexCount, block);
- }
-
- /// Construct from an initializer list.
- /// Used only by the flexible parameter allocators (AllocUnique & AllocShared).
- inline C2SimpleArrayStruct(size_t flexCount, const std::initializer_list<T> &init) {
- _C2ValueArrayHelper::init(values, flexCount, init);
- }
-
- /// Construct from an vector.
- /// Used only by the flexible parameter allocators (AllocUnique & AllocShared).
- inline C2SimpleArrayStruct(size_t flexCount, const std::vector<T> &init) {
- _C2ValueArrayHelper::init(values, flexCount, init);
- }
-
- /// Construct from another flexible array.
- /// Used only by the flexible parameter allocators (AllocUnique & AllocShared).
- template<unsigned N>
- inline C2SimpleArrayStruct(size_t flexCount, const T(&init)[N]) {
- _C2ValueArrayHelper::init(values, flexCount, init);
- }
-};
-
-/**
- * \addtogroup simplevalue Simple value and array structures.
- * @{
- *
- * Simple value structures.
- *
- * Structures containing a single simple value. These can be reused to easily define simple
- * parameters of various types:
- *
- * typedef C2PortParam<C2Tuning, C2Int32Value, kParamIndexMyIntegerPortParam>
- * C2MyIntegerPortParamTuning;
- *
- * They contain a single member (value or values) that is described as "value" or "values".
- *
- * These structures don't define a core index, and as such, they cannot be used in structure
- * declarations. Use type[] instead, such as int32_t field[].
- */
-/// A 32-bit signed integer parameter in value, described as "value"
-typedef C2SimpleValueStruct<int32_t> C2Int32Value;
-/// A 32-bit signed integer array parameter in values, described as "values"
-typedef C2SimpleArrayStruct<int32_t> C2Int32Array;
-/// A 32-bit unsigned integer parameter in value, described as "value"
-typedef C2SimpleValueStruct<uint32_t> C2Uint32Value;
-/// A 32-bit unsigned integer array parameter in values, described as "values"
-typedef C2SimpleArrayStruct<uint32_t> C2Uint32Array;
-/// A 64-bit signed integer parameter in value, described as "value"
-typedef C2SimpleValueStruct<int64_t> C2Int64Value;
-/// A 64-bit signed integer array parameter in values, described as "values"
-typedef C2SimpleArrayStruct<int64_t> C2Int64Array;
-/// A 64-bit unsigned integer parameter in value, described as "value"
-typedef C2SimpleValueStruct<uint64_t> C2Uint64Value;
-/// A 64-bit unsigned integer array parameter in values, described as "values"
-typedef C2SimpleArrayStruct<uint64_t> C2Uint64Array;
-/// A float parameter in value, described as "value"
-typedef C2SimpleValueStruct<float> C2FloatValue;
-/// A float array parameter in values, described as "values"
-typedef C2SimpleArrayStruct<float> C2FloatArray;
-/// A blob flexible parameter in value, described as "value"
-typedef C2SimpleValueStruct<uint8_t[]> C2BlobValue;
-/// A string flexible parameter in value, described as "value"
-typedef C2SimpleValueStruct<char[]> C2StringValue;
-
-template<typename T>
-const std::vector<C2FieldDescriptor> C2SimpleValueStruct<T>::FieldList() {
- return { DESCRIBE_C2FIELD(value, "value") };
-}
-template<typename T>
-const std::vector<C2FieldDescriptor> C2SimpleValueStruct<T[]>::FieldList() {
- return { DESCRIBE_C2FIELD(value, "value") };
-}
-template<typename T>
-const std::vector<C2FieldDescriptor> C2SimpleArrayStruct<T>::FieldList() {
- return { DESCRIBE_C2FIELD(values, "values") };
-}
-
-/// @}
-
-/// @}
-
-#endif // C2PARAM_DEF_H_
diff --git a/codec2/include/C2Work.h b/codec2/include/C2Work.h
deleted file mode 100644
index 6923f3e..0000000
--- a/codec2/include/C2Work.h
+++ /dev/null
@@ -1,235 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2WORK_H_
-
-#define C2WORK_H_
-
-#include <C2Buffer.h>
-#include <C2Param.h>
-
-#include <memory>
-#include <list>
-#include <vector>
-
-#include <stdint.h>
-#include <stdbool.h>
-
-/// \defgroup work Work and data processing
-/// @{
-
-/**
- * Information describing the reason a parameter settings may fail, or
- * may be overriden.
- */
-struct C2SettingResult {
- enum Failure : uint32_t {
- /* parameter failures below */
- BAD_TYPE, ///< parameter is not supported
- BAD_PORT, ///< parameter is not supported on the specific port
- BAD_INDEX, ///< parameter is not supported on the specific stream
- READ_ONLY, ///< parameter is read-only and cannot be set
- MISMATCH, ///< parameter mismatches input data
-
- /* field failures below */
- BAD_VALUE, ///< strict parameter does not accept value for the field at all
- CONFLICT, ///< strict parameter field value is in conflict with an/other setting(s)
-
- /// parameter field is out of range due to other settings (this failure mode
- /// can only be used for strict calculated parameters)
- UNSUPPORTED,
-
- /// field does not access the requested parameter value at all. It has been corrected to
- /// the closest supported value. This failure mode is provided to give guidance as to what
- /// are the currently supported values for this field (which may be a subset of the at-all-
- /// potential values)
- INFO_BAD_VALUE,
-
- /// requested parameter value is in conflict with an/other setting(s)
- /// and has been corrected to the closest supported value. This failure
- /// mode is given to provide guidance as to what are the currently supported values as well
- /// as to optionally provide suggestion to the client as to how to enable the requested
- /// parameter value.
- INFO_CONFLICT,
- };
-
- Failure failure; ///< failure code
-
- /// Failing (or corrected) field or parameterand optionally, currently supported values for the
- /// field. Values must only be set for field failures other than BAD_VALUE, and only if they are
- /// different from the globally supported values (e.g. due to restrictions by another param or
- /// input data).
- C2ParamFieldValues field;
-
- /// Conflicting parameters or fields with optional suggestions with (optional) suggested values
- /// for any conflicting fields to avoid the conflict. Must only be set for CONFLICT, UNSUPPORTED
- /// and INFO_CONFLICT failure codes.
- std::vector<C2ParamFieldValues> conflicts;
-};
-
-// ================================================================================================
-// WORK
-// ================================================================================================
-
-/** Unique ID for a processing node. */
-typedef uint32_t c2_node_id_t;
-
-enum {
- kParamIndexWorkOrdinal,
-};
-
-/**
- * Information for ordering work items on a component port.
- */
-struct C2WorkOrdinalStruct {
-//public:
- c2_cntr64_t timestamp; /** frame timestamp in microseconds */
- c2_cntr64_t frameIndex; /** submission ordinal on the initial component */
- c2_cntr64_t customOrdinal; /** can be given by the component, e.g. decode order */
-
- DEFINE_AND_DESCRIBE_C2STRUCT(WorkOrdinal)
- C2FIELD(timestamp, "timestamp")
- C2FIELD(frameIndex, "frame-index")
- C2FIELD(customOrdinal, "custom-ordinal")
-};
-
-/**
- * This structure represents a Codec 2.0 frame with its metadata.
- *
- * A frame basically consists of an ordered sets of buffers, configuration changes and info buffers
- * along with some non-configuration metadata.
- */
-struct C2FrameData {
-//public:
- enum flags_t : uint32_t {
- /**
- * For input frames: no output frame shall be generated when processing this frame, but
- * metadata shall still be processed.
- * For output frames: this frame shall be discarded and but metadata is still valid.
- */
- FLAG_DROP_FRAME = (1 << 0),
- /**
- * This frame is the last frame of the current stream. Further frames are part of a new
- * stream.
- */
- FLAG_END_OF_STREAM = (1 << 1),
- /**
- * This frame shall be discarded with its metadata.
- * This flag is only set by components - e.g. as a response to the flush command.
- */
- FLAG_DISCARD_FRAME = (1 << 2),
- /**
- * This frame is not the last frame produced for the input.
- *
- * This flag is normally set by the component - e.g. when an input frame results in multiple
- * output frames, this flag is set on all but the last output frame.
- *
- * Also, when components are chained, this flag should be propagated down the
- * work chain. That is, if set on an earlier frame of a work-chain, it should be propagated
- * to all later frames in that chain. Additionally, components down the chain could set
- * this flag even if not set earlier, e.g. if multiple output frame is generated at that
- * component for the input frame.
- */
- FLAG_INCOMPLETE = (1 << 3),
- /**
- * This frame contains only codec-specific configuration data, and no actual access unit.
- *
- * \deprecated pass codec configuration with using the \todo codec-specific configuration
- * info together with the access unit.
- */
- FLAG_CODEC_CONFIG = (1u << 31),
- };
-
- /**
- * Frame flags */
- flags_t flags;
- C2WorkOrdinalStruct ordinal;
- std::vector<std::shared_ptr<C2Buffer>> buffers;
- //< for initial work item, these may also come from the parser - if provided
- //< for output buffers, these are the responses to requestedInfos
- std::vector<std::unique_ptr<C2Param>> configUpdate;
- std::vector<std::shared_ptr<C2InfoBuffer>> infoBuffers;
-};
-
-struct C2Worklet {
-//public:
- // IN
- c2_node_id_t component;
-
- /** Configuration changes to be applied before processing this worklet. */
- std::vector<std::unique_ptr<C2Tuning>> tunings;
- std::vector<std::unique_ptr<C2SettingResult>> failures;
-
- // OUT
- C2FrameData output;
-};
-
-/**
- * Information about partial work-chains not part of the current work items.
- *
- * To be defined later.
- */
-struct C2WorkChainInfo;
-
-/**
- * This structure holds information about all a single work item.
- *
- * This structure shall be passed by the client to the component for the first worklet. As such,
- * worklets must not be empty. The ownership of this object is passed.
- */
-struct C2Work {
-//public:
- /// additional work chain info not part of this work
- std::shared_ptr<C2WorkChainInfo> chainInfo;
-
- /// The input data to be processed as part of this work/work-chain. This is provided by the
- /// client with ownership. When the work is returned (via onWorkDone), the input buffer-pack's
- /// buffer vector shall contain nullptrs.
- C2FrameData input;
-
- /// The chain of components, tunings (including output buffer pool IDs) and info requests that the
- /// data must pass through. If this has more than a single element, the tunnels between successive
- /// components of the worklet chain must have been (successfully) pre-registered at the time that
- /// the work is submitted. Allocating the output buffers in the worklets is the responsibility of
- /// each component. Upon work submission, each output buffer-pack shall be an appropriately sized
- /// vector containing nullptrs. When the work is completed/returned to the client, output buffers
- /// pointers from all but the final worklet shall be nullptrs.
- std::list<std::unique_ptr<C2Worklet>> worklets;
-
- /// Number of worklets successfully processed in this chain. This shall be initialized to 0 by the
- /// client when the work is submitted. It shall contain the number of worklets that were
- /// successfully processed when the work is returned to the client. If this is less then the number
- /// of worklets, result must not be success. It must be in the range of [0, worklets.size()].
- uint32_t workletsProcessed;
-
- /// The final outcome of the work (corresponding to the current workletsProcessed). If 0 when
- /// work is returned, it is assumed that all worklets have been processed.
- c2_status_t result;
-};
-
-/**
- * Information about a future work to be submitted to the component. The information is used to
- * reserve the work for work ordering purposes.
- */
-struct C2WorkOutline {
-//public:
- C2WorkOrdinalStruct ordinal;
- std::vector<c2_node_id_t> chain;
-};
-
-/// @}
-
-#endif // C2WORK_H_
diff --git a/codec2/include/_C2MacroUtils.h b/codec2/include/_C2MacroUtils.h
deleted file mode 100644
index 04e9ba5..0000000
--- a/codec2/include/_C2MacroUtils.h
+++ /dev/null
@@ -1,162 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2UTILS_MACRO_UTILS_H_
-#define C2UTILS_MACRO_UTILS_H_
-
-/** \file
- * Macro utilities for the utils library used by Codec2 implementations.
- */
-
-/// \if 0
-
-/* --------------------------------- VARIABLE ARGUMENT COUNTING --------------------------------- */
-
-// remove empty arguments - _C2_ARG() expands to '', while _C2_ARG(x) expands to ', x'
-// _C2_ARGn(...) does the same for n arguments
-#define _C2_ARG(...) , ##__VA_ARGS__
-#define _C2_ARG2(_1, _2) _C2_ARG(_1) _C2_ARG(_2)
-#define _C2_ARG4(_1, _2, _3, _4) _C2_ARG2(_1, _2) _C2_ARG2(_3, _4)
-#define _C2_ARG8(_1, _2, _3, _4, _5, _6, _7, _8) _C2_ARG4(_1, _2, _3, _4) _C2_ARG4(_5, _6, _7, _8)
-#define _C2_ARG16(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16) \
- _C2_ARG8(_1, _2, _3, _4, _5, _6, _7, _8) _C2_ARG8(_9, _10, _11, _12, _13, _14, _15, _16)
-
-// return the 65th argument
-#define _C2_ARGC_3(_, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, \
- _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, \
- _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, \
- _49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, _61, _62, _63, _64, ...) _64
-
-/// \endif
-
-/**
- * Returns the number of arguments.
- */
-// We do this by prepending 1 and appending 65 designed values such that the 65th element
-// will be the number of arguments.
-#define _C2_ARGC(...) _C2_ARGC_1(0, ##__VA_ARGS__, \
- 64, 63, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53, 52, 51, 50, 49, 48, 47, 46, 45, 44, 43, \
- 42, 41, 40, 39, 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, \
- 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0)
-
-/// \if 0
-
-// step 1. remove empty arguments - this is needed to allow trailing comma in enum definitions
-// (NOTE: we don't know which argument will have this trailing comma so we have to try all)
-#define _C2_ARGC_1(_, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, \
- _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, \
- _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, \
- _49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, _61, _62, _63, _64, ...) \
- _C2_ARGC_2(_ _C2_ARG(_0) \
- _C2_ARG16(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16) \
- _C2_ARG16(_17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32) \
- _C2_ARG16(_33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48) \
- _C2_ARG16(_49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, _61, _62, _63, _64), \
- ##__VA_ARGS__)
-
-// step 2. this is needed as removed arguments cannot be passed directly as empty into a macro
-#define _C2_ARGC_2(...) _C2_ARGC_3(__VA_ARGS__)
-
-/// \endif
-
-/* -------------------------------- VARIABLE ARGUMENT CONVERSION -------------------------------- */
-
-/// \if 0
-
-// macros that convert _1, _2, _3, ... to fn(_1, arg), fn(_2, arg), fn(_3, arg), ...
-#define _C2_MAP_64(fn, arg, head, ...) fn(head, arg), _C2_MAP_63(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_63(fn, arg, head, ...) fn(head, arg), _C2_MAP_62(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_62(fn, arg, head, ...) fn(head, arg), _C2_MAP_61(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_61(fn, arg, head, ...) fn(head, arg), _C2_MAP_60(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_60(fn, arg, head, ...) fn(head, arg), _C2_MAP_59(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_59(fn, arg, head, ...) fn(head, arg), _C2_MAP_58(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_58(fn, arg, head, ...) fn(head, arg), _C2_MAP_57(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_57(fn, arg, head, ...) fn(head, arg), _C2_MAP_56(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_56(fn, arg, head, ...) fn(head, arg), _C2_MAP_55(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_55(fn, arg, head, ...) fn(head, arg), _C2_MAP_54(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_54(fn, arg, head, ...) fn(head, arg), _C2_MAP_53(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_53(fn, arg, head, ...) fn(head, arg), _C2_MAP_52(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_52(fn, arg, head, ...) fn(head, arg), _C2_MAP_51(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_51(fn, arg, head, ...) fn(head, arg), _C2_MAP_50(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_50(fn, arg, head, ...) fn(head, arg), _C2_MAP_49(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_49(fn, arg, head, ...) fn(head, arg), _C2_MAP_48(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_48(fn, arg, head, ...) fn(head, arg), _C2_MAP_47(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_47(fn, arg, head, ...) fn(head, arg), _C2_MAP_46(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_46(fn, arg, head, ...) fn(head, arg), _C2_MAP_45(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_45(fn, arg, head, ...) fn(head, arg), _C2_MAP_44(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_44(fn, arg, head, ...) fn(head, arg), _C2_MAP_43(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_43(fn, arg, head, ...) fn(head, arg), _C2_MAP_42(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_42(fn, arg, head, ...) fn(head, arg), _C2_MAP_41(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_41(fn, arg, head, ...) fn(head, arg), _C2_MAP_40(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_40(fn, arg, head, ...) fn(head, arg), _C2_MAP_39(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_39(fn, arg, head, ...) fn(head, arg), _C2_MAP_38(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_38(fn, arg, head, ...) fn(head, arg), _C2_MAP_37(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_37(fn, arg, head, ...) fn(head, arg), _C2_MAP_36(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_36(fn, arg, head, ...) fn(head, arg), _C2_MAP_35(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_35(fn, arg, head, ...) fn(head, arg), _C2_MAP_34(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_34(fn, arg, head, ...) fn(head, arg), _C2_MAP_33(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_33(fn, arg, head, ...) fn(head, arg), _C2_MAP_32(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_32(fn, arg, head, ...) fn(head, arg), _C2_MAP_31(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_31(fn, arg, head, ...) fn(head, arg), _C2_MAP_30(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_30(fn, arg, head, ...) fn(head, arg), _C2_MAP_29(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_29(fn, arg, head, ...) fn(head, arg), _C2_MAP_28(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_28(fn, arg, head, ...) fn(head, arg), _C2_MAP_27(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_27(fn, arg, head, ...) fn(head, arg), _C2_MAP_26(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_26(fn, arg, head, ...) fn(head, arg), _C2_MAP_25(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_25(fn, arg, head, ...) fn(head, arg), _C2_MAP_24(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_24(fn, arg, head, ...) fn(head, arg), _C2_MAP_23(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_23(fn, arg, head, ...) fn(head, arg), _C2_MAP_22(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_22(fn, arg, head, ...) fn(head, arg), _C2_MAP_21(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_21(fn, arg, head, ...) fn(head, arg), _C2_MAP_20(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_20(fn, arg, head, ...) fn(head, arg), _C2_MAP_19(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_19(fn, arg, head, ...) fn(head, arg), _C2_MAP_18(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_18(fn, arg, head, ...) fn(head, arg), _C2_MAP_17(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_17(fn, arg, head, ...) fn(head, arg), _C2_MAP_16(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_16(fn, arg, head, ...) fn(head, arg), _C2_MAP_15(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_15(fn, arg, head, ...) fn(head, arg), _C2_MAP_14(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_14(fn, arg, head, ...) fn(head, arg), _C2_MAP_13(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_13(fn, arg, head, ...) fn(head, arg), _C2_MAP_12(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_12(fn, arg, head, ...) fn(head, arg), _C2_MAP_11(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_11(fn, arg, head, ...) fn(head, arg), _C2_MAP_10(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_10(fn, arg, head, ...) fn(head, arg), _C2_MAP_9(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_9(fn, arg, head, ...) fn(head, arg), _C2_MAP_8(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_8(fn, arg, head, ...) fn(head, arg), _C2_MAP_7(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_7(fn, arg, head, ...) fn(head, arg), _C2_MAP_6(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_6(fn, arg, head, ...) fn(head, arg), _C2_MAP_5(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_5(fn, arg, head, ...) fn(head, arg), _C2_MAP_4(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_4(fn, arg, head, ...) fn(head, arg), _C2_MAP_3(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_3(fn, arg, head, ...) fn(head, arg), _C2_MAP_2(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_2(fn, arg, head, ...) fn(head, arg), _C2_MAP_1(fn, arg, ##__VA_ARGS__)
-#define _C2_MAP_1(fn, arg, head, ...) fn(head, arg)
-
-/// \endif
-
-/**
- * Maps each argument using another macro x -> fn(x, arg)
- */
-// use wrapper to call the proper mapper based on the number of arguments
-#define _C2_MAP(fn, arg, ...) _C2_MAP__(_C2_ARGC(__VA_ARGS__), fn, arg, ##__VA_ARGS__)
-
-/// \if 0
-
-// evaluate _n so it becomes a number
-#define _C2_MAP__(_n, fn, arg, ...) _C2_MAP_(_n, fn, arg, __VA_ARGS__)
-// call the proper mapper
-#define _C2_MAP_(_n, fn, arg, ...) _C2_MAP_##_n (fn, arg, __VA_ARGS__)
-
-/// \endif
-
-#endif // C2UTILS_MACRO_UTILS_H_
diff --git a/codec2/include/android-C2Buffer.h b/codec2/include/android-C2Buffer.h
deleted file mode 100644
index 26beab7..0000000
--- a/codec2/include/android-C2Buffer.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2BUFFER_H_
-#define ANDROID_C2BUFFER_H_
-
-#include <cutils/native_handle.h>
-#include <hardware/gralloc.h>
-
-/* Use android native handle for C2Handle */
-typedef ::native_handle_t C2Handle;
-
-namespace android {
-
-/**
- * Android platform buffer/memory usage bits.
- */
-struct C2AndroidMemoryUsage : public C2MemoryUsage {
- inline C2AndroidMemoryUsage(const C2MemoryUsage &usage) : C2MemoryUsage(usage) { }
-
-// public:
- /**
- * Reuse gralloc flags where possible, as Codec 2.0 API only uses bits 0 and 1.
- */
- enum consumer_t : uint64_t {
- RENDERSCRIPT_READ = GRALLOC_USAGE_RENDERSCRIPT,
- HW_TEXTURE_READ = GRALLOC_USAGE_HW_TEXTURE,
- HW_COMPOSER_READ = GRALLOC_USAGE_HW_COMPOSER,
- // gralloc does not define a video decoder read usage flag, so use encoder for
- // now
- HW_CODEC_READ = GRALLOC_USAGE_HW_VIDEO_ENCODER,
- READ_PROTECTED = GRALLOC_USAGE_PROTECTED,
- };
-
- enum producer_t : uint64_t {
- RENDERSCRIPT_WRITE = GRALLOC_USAGE_RENDERSCRIPT,
- HW_TEXTURE_WRITE = GRALLOC_USAGE_HW_RENDER,
- HW_COMPOSER_WRITE = GRALLOC_USAGE_HW_COMPOSER | GRALLOC_USAGE_HW_RENDER,
- HW_CODEC_WRITE = GRALLOC_USAGE_HW_VIDEO_ENCODER,
- // gralloc does not define a write protected usage flag, so use read protected
- // now
- WRITE_PROTECTED = GRALLOC_USAGE_PROTECTED,
- };
-
- /**
- * Convert from gralloc usage.
- */
- static C2MemoryUsage FromGrallocUsage(uint64_t usage);
-
- /**
- * Convert to gralloc usage.
- */
- uint64_t asGrallocUsage() const;
-};
-
-} // namespace android
-
-#endif // ANDROID_C2BUFFER_H_
diff --git a/codec2/include/media/stagefright/codec2/1.0/InputSurface.h b/codec2/include/media/stagefright/codec2/1.0/InputSurface.h
deleted file mode 100644
index 226dcc1..0000000
--- a/codec2/include/media/stagefright/codec2/1.0/InputSurface.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Copyright 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_HARDWARE_MEDIA_C2_V1_0_INPUT_SURFACE_H
-#define ANDROID_HARDWARE_MEDIA_C2_V1_0_INPUT_SURFACE_H
-
-#include <memory>
-
-#include <C2Component.h>
-#include <gui/bufferqueue/1.0/WGraphicBufferProducer.h>
-#include <media/stagefright/codec2/1.0/InputSurfaceConnection.h>
-
-namespace android {
-
-class GraphicBufferSource;
-
-namespace hardware {
-namespace media {
-namespace c2 {
-namespace V1_0 {
-namespace implementation {
-
-using ::android::sp;
-
-typedef ::android::hardware::graphics::bufferqueue::V1_0::IGraphicBufferProducer
- HGraphicBufferProducer;
-typedef ::android::IGraphicBufferProducer BGraphicBufferProducer;
-
-// TODO: ::android::TWGraphicBufferProducer<IInputSurface>
-typedef ::android::TWGraphicBufferProducer<HGraphicBufferProducer> InputSurfaceBase;
-
-class InputSurface : public InputSurfaceBase {
-public:
- virtual ~InputSurface() = default;
-
- // Methods from IInputSurface
- sp<InputSurfaceConnection> connectToComponent(
- const std::shared_ptr<::C2Component> &comp);
- // TODO: intf()
-
- static sp<InputSurface> Create();
-
-private:
- InputSurface(
- const sp<BGraphicBufferProducer> &base,
- const sp<::android::GraphicBufferSource> &source);
-
- sp<::android::GraphicBufferSource> mSource;
-};
-
-} // namespace implementation
-} // namespace V1_0
-} // namespace c2
-} // namespace media
-} // namespace hardware
-} // namespace android
-
-#endif // ANDROID_HARDWARE_MEDIA_C2_V1_0_INPUT_SURFACE_H
diff --git a/codec2/include/media/stagefright/codec2/1.0/InputSurfaceConnection.h b/codec2/include/media/stagefright/codec2/1.0/InputSurfaceConnection.h
deleted file mode 100644
index 06e52cf..0000000
--- a/codec2/include/media/stagefright/codec2/1.0/InputSurfaceConnection.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Copyright 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_HARDWARE_MEDIA_C2_V1_0_INPUT_SURFACE_CONNECTION_H
-#define ANDROID_HARDWARE_MEDIA_C2_V1_0_INPUT_SURFACE_CONNECTION_H
-
-#include <memory>
-
-#include <C2Component.h>
-#include <gui/bufferqueue/1.0/WGraphicBufferProducer.h>
-#include <media/stagefright/bqhelper/GraphicBufferSource.h>
-#include <media/stagefright/codec2/1.0/InputSurfaceConnection.h>
-
-namespace android {
-namespace hardware {
-namespace media {
-namespace c2 {
-namespace V1_0 {
-namespace implementation {
-
-// TODO: inherit from IInputSurfaceConnection
-class InputSurfaceConnection : public RefBase {
-public:
- virtual ~InputSurfaceConnection();
-
- // From IInputSurfaceConnection
- void disconnect();
-
-private:
- friend class InputSurface;
-
- // For InputSurface
- InputSurfaceConnection(
- const sp<GraphicBufferSource> &source, const std::shared_ptr<C2Component> &comp);
- bool init();
-
- InputSurfaceConnection() = delete;
-
- class Impl;
-
- sp<GraphicBufferSource> mSource;
- sp<Impl> mImpl;
-
- DISALLOW_EVIL_CONSTRUCTORS(InputSurfaceConnection);
-};
-
-} // namespace implementation
-} // namespace V1_0
-} // namespace c2
-} // namespace media
-} // namespace hardware
-} // namespace android
-
-#endif // ANDROID_HARDWARE_MEDIA_C2_V1_0_INPUT_SURFACE_CONNECTION_H
diff --git a/codec2/tests/Android.bp b/codec2/tests/Android.bp
deleted file mode 100644
index f54c039..0000000
--- a/codec2/tests/Android.bp
+++ /dev/null
@@ -1,76 +0,0 @@
-cc_test {
- name: "codec2_param_test",
-
- srcs: [
- "C2Param_test.cpp",
- ],
-
- include_dirs: [
- "hardware/google/av/codec2/include",
- "hardware/google/av/codec2/vndk/include",
- ],
-
- // param tests must not depend on any codec2 libraries as all params should be templated
- shared_libs: [
- ],
-
- static_libs: [
- ],
-
- cflags: [
- "-Werror",
- "-Wall",
- ],
-}
-
-cc_test {
- name: "codec2_test",
-
- srcs: [
- "C2_test.cpp",
- "C2SampleComponent_test.cpp",
- "C2UtilTest.cpp",
- "vndk/C2BufferTest.cpp",
- ],
-
- include_dirs: [
- ],
-
- shared_libs: [
- "libcutils",
- "liblog",
- "libstagefright_codec2",
- "libstagefright_codec2_vndk",
- "libutils",
- ],
-
- cflags: [
- "-Werror",
- "-Wall",
- ],
-}
-
-cc_test {
- name: "codec2_interface_test",
-
- srcs: [
- "C2ComponentInterface_test.cpp",
- ],
-
- include_dirs: [
- "frameworks/native/include/media/openmax",
- ],
-
- shared_libs: [
- "libcutils",
- "liblog",
- "libstagefright_codec2",
- "libstagefright_codec2_vndk",
- "libutils",
- ],
-
- cflags: [
- "-Werror",
- "-Wall",
- ],
-}
diff --git a/codec2/tests/C2ComponentInterface_test.cpp b/codec2/tests/C2ComponentInterface_test.cpp
deleted file mode 100644
index e907964..0000000
--- a/codec2/tests/C2ComponentInterface_test.cpp
+++ /dev/null
@@ -1,706 +0,0 @@
-/*
- * Copyright 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#define LOG_TAG "C2ComponentInterface_test"
-
-#include <dlfcn.h>
-#include <stdio.h>
-
-#include <gtest/gtest.h>
-#include <utils/Log.h>
-
-#include <C2Component.h>
-#include <C2Config.h>
-#include <util/C2InterfaceHelper.h>
-#include <C2Param.h>
-
-#if !defined(UNUSED)
-#define UNUSED(expr) \
- do { \
- (void)(expr); \
- } while (0)
-
-#endif //!defined(UNUSED)
-
-namespace android {
-
-template <class T> std::unique_ptr<T> alloc_unique_cstr(const char *cstr) {
- size_t len = strlen(cstr);
- std::unique_ptr<T> ptr = T::AllocUnique(len);
- memcpy(ptr->m.value, cstr, len);
- return ptr;
-}
-
-class C2CompIntfTest : public ::testing::Test {
-protected:
- C2CompIntfTest() {}
- ~C2CompIntfTest() override {}
-
- void setComponent(std::shared_ptr<C2ComponentInterface> intf) {
- mIntf = intf;
- }
-
- void resetResults() {
- mIntf = nullptr;
- mParamResults.clear();
- }
-
- template <typename T> void testUnsupportedParam();
-
- template <typename T> void testSupportedParam();
-
- // testReadOnlyParam() and testWritableParam() are the main functions for testing a parameter.
- // A caller should find out if a tested parameter is read-only or writable before calling them
- // and it must call one of the corresponded them.
-
- // If a parameter is read-only this is called.
- // Test read-only parameter |preParam|. The test expects failure while config() with |newParam|,
- // and make sure |preParam| stay unchanged.
- template <typename T>
- void testReadOnlyParam(const T &preParam, const T &newParam);
-
- // If a parameter is writable this is called.
- // Test one filed |writableField| for given writable parameter |param|.
- // |validValues| contains all values obtained from querySupportedValues() for |writableField|.
- // The test checks validity for config() with each value, and make sure values are config-ed
- // by query() them out. |invalidValues| contains some values which are not in |validValues|.
- // The test expects C2_BAD_VALUE while config() with these values,
- // and |param| should stay unchanged.
- template <typename TParam, typename TRealField, typename TField>
- void testWritableParam(TParam *const param, TRealField *const writableField,
- const std::vector<TField> &validValues,
- const std::vector<TField> &invalidValues);
-
- // Test all the defined parameters in C2Param.h.
- void testMain(std::shared_ptr<C2ComponentInterface> intf,
- const std::string &componentName);
-
- // Check permission of parameter type |T| for testing interface.
- // This should be called first of the testing per parameter type,
- // therefore different testing process is applied according to the permission type.
- template <typename T>
- void checkParamPermission(
- int *const writable,
- const std::vector<std::shared_ptr<C2ParamDescriptor>> &supportedParams);
-
-private:
- enum ParamPermission : int {
- WRITABLE,
- READONLY,
- UNSUPPORTED,
- };
-
- struct paramTestInfo {
- std::string name;
- int result;
- paramTestInfo(const char *name_, int result_)
- : name(name_), result(result_) {}
- };
-
- // queryOnStack() and queryonHeap() both call an interface's query_vb() and
- // check if a component has a parameter whose type is |T|.
- // If a component has, the value should be copied into an argument, that is
- // |p| in queryOnStack() and |heapParams| in queryOnHeap().
- // The return value is c2_status_t (e.g. C2_OK).
- template <typename T> c2_status_t queryOnStack(T *const p);
-
- template <typename T>
- c2_status_t queryOnHeap(const T &p,
- std::vector<std::unique_ptr<C2Param>> *const heapParams);
-
- // Get a value whose type is |T| in a component. The value is copied to |param|.
- // This should be called only if a component has the parameter.
- template <typename T> void getValue(T *const param);
-
- // Check if the parameter's value in component is equal to |expected| and
- // queryOnStack() and queryOnHeap() are succeeded. When this function called,
- // it should be guaranteed a component has the parameter.
- template <typename T> void queryParamAsExpected(const T &expected);
-
- // Test if query functions works correctly for supported parameters.
- // "Support" means here a component has the parameter.
- template <typename T> void querySupportedParam();
-
- // Test query functions works correctly for unsupported parameters.
- // "Unsupport" means here a component doesn't have the parameter.
- template <typename T> void queryUnsupportedParam();
-
- // Execute an interface's config_vb(). |T| is a single parameter type, not std::vector.
- // config() creates std::vector<C2Param *> {p} and passes it to config_vb().
- template <typename T>
- c2_status_t
- config(T *const p,
- std::vector<std::unique_ptr<C2SettingResult>> *const failures);
-
- // Test if config works correctly for read-only parameters.
- // Because the failure of config() is assumed, |newParam| doesn't matter.
- template <typename T> void configReadOnlyParam(const T &newParam);
-
- // Test if config works correctly for writable parameters.
- // This changes the parameter's value to |newParam|.
- // |stConfig| is a return value of config().
- template <typename T> void configWritableParamValidValue(const T &newParam, c2_status_t *stConfig);
-
- // Test if config works correctly in the case an invalid value |newParam| is tried to write
- // to an writable parameter.
- template <typename T> void configWritableParamInvalidValue(const T &newParam);
-
- // Create values for testing from |validValueInfos|. The values are returned as arguments.
- // |validValues| : valid values, which can be written for the parameter.
- // |InvalidValues| : invalid values, which cannot be written for the parameter.
- // config() should be failed if these values are used as new values.
- // This function should be called only for writable and supported parameters.
- template <typename TField>
- void getTestValues(const C2FieldSupportedValues &validValueInfos,
- std::vector<TField> *const validValues,
- std::vector<TField> *const invalidValues);
-
- // Output the summary of test results. Categorizes parameters with their configuration.
- void outputResults(const std::string &name);
-
- std::shared_ptr<C2ComponentInterface> mIntf;
- std::vector<paramTestInfo> mParamResults;
- std::string mCurrentParamName;
-};
-
-// factory function
-// TODO(hiroh): Add factory functions for other types.
-template <typename T> std::unique_ptr<T> makeParam() {
- return std::make_unique<T>();
-}
-
-template <> std::unique_ptr<C2PortMimeConfig::input> makeParam() {
- // TODO(hiroh): Set more precise length.
- return C2PortMimeConfig::input::AllocUnique(100);
-}
-
-#define TRACED_FAILURE(func) \
- do { \
- SCOPED_TRACE(mCurrentParamName); \
- func; \
- if (::testing::Test::HasFatalFailure()) { \
- return; \
- } \
- } while (false)
-
-template <typename T> c2_status_t C2CompIntfTest::queryOnStack(T *const p) {
- std::vector<C2Param*> stackParams{p};
- return mIntf->query_vb(stackParams, {}, C2_DONT_BLOCK, nullptr);
-}
-
-template <typename T>
-c2_status_t C2CompIntfTest::queryOnHeap(
- const T &p, std::vector<std::unique_ptr<C2Param>> *const heapParams) {
- uint32_t index = p.index() & ~0x03FE0000;
- if (p.forStream()) {
- index |= ((p.stream() << 17) & 0x01FE0000) | 0x02000000;
- }
- return mIntf->query_vb({}, {index}, C2_DONT_BLOCK, heapParams);
-}
-
-template <typename T> void C2CompIntfTest::getValue(T *const param) {
- // When getValue() is called, a component has to have the parameter.
- ASSERT_EQ(C2_OK, queryOnStack(param));
-}
-
-template <typename T>
-void C2CompIntfTest::queryParamAsExpected(const T &expected) {
- // TODO(hiroh): Don't create param on stack and call queryOnStack for flex params.
- // Note that all the current supported parameters are non-flex params.
- T stack;
- std::unique_ptr<T> pHeap = makeParam<T>();
- std::vector<std::unique_ptr<C2Param>> heapParams;
-
- ASSERT_EQ(C2_OK, queryOnStack(&stack));
-
- // |stack| is a parameter value. The parameter size shouldn't be 0.
- EXPECT_NE(0u, stack.size());
- EXPECT_EQ(stack, expected);
-
- ASSERT_EQ(C2_OK, queryOnHeap(*pHeap, &heapParams));
-
- // |*heapParams[0]| is a parameter value. The size of |heapParams| has to be one.
- ASSERT_EQ(1u, heapParams.size());
- EXPECT_TRUE(heapParams[0]);
- EXPECT_EQ(*heapParams[0], expected);
-}
-
-template <typename T> void C2CompIntfTest::querySupportedParam() {
- std::unique_ptr<T> param = makeParam<T>();
- // The current parameter's value is acquired by getValue(), which should be succeeded.
- getValue(param.get());
- queryParamAsExpected(*param);
-}
-
-template <typename T> void C2CompIntfTest::queryUnsupportedParam() {
- // TODO(hiroh): Don't create param on stack and call queryOnStack for flex params.
- // Note that all the current supported parameters are non-flex params.
- T stack;
- std::unique_ptr<T> pHeap = makeParam<T>();
- std::vector<std::unique_ptr<C2Param>> heapParams;
- // If a component doesn't have the parameter, queryOnStack() and queryOnHeap()
- // should return C2_BAD_INDEX.
- ASSERT_EQ(C2_BAD_INDEX, queryOnStack(&stack));
- EXPECT_FALSE(stack);
- ASSERT_EQ(C2_BAD_INDEX, queryOnHeap(*pHeap, &heapParams));
- EXPECT_EQ(0u, heapParams.size());
-}
-
-template <typename T>
-c2_status_t C2CompIntfTest::config(
- T *const p, std::vector<std::unique_ptr<C2SettingResult>> *const failures) {
- std::vector<C2Param*> params{p};
- return mIntf->config_vb(params, C2_DONT_BLOCK, failures);
-}
-
-// Create a new parameter copied from |p|.
-template <typename T> std::unique_ptr<T> makeParamFrom(const T &p) {
- std::unique_ptr<T> retP = makeParam<T>();
- EXPECT_TRUE(retP->updateFrom(p));
- EXPECT_TRUE(memcmp(retP.get(), &p, sizeof(T)) == 0);
- return retP;
-}
-
-template <typename T>
-void C2CompIntfTest::configReadOnlyParam(const T &newParam) {
- std::unique_ptr<T> p = makeParamFrom(newParam);
-
- std::vector<C2Param*> params{p.get()};
- std::vector<std::unique_ptr<C2SettingResult>> failures;
-
- // config_vb should be failed because a parameter is read-only.
- ASSERT_EQ(C2_BAD_VALUE, mIntf->config_vb(params, C2_DONT_BLOCK, &failures));
- ASSERT_EQ(1u, failures.size());
- EXPECT_EQ(C2SettingResult::READ_ONLY, failures[0]->failure);
-}
-
-template <typename T>
-void C2CompIntfTest::configWritableParamValidValue(const T &newParam, c2_status_t *configResult) {
- std::unique_ptr<T> p = makeParamFrom(newParam);
-
- std::vector<C2Param*> params{p.get()};
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- // In most cases, config_vb return C2_OK and the parameter's value should be changed
- // to |newParam|, which is confirmed in a caller of configWritableParamValueValue().
- // However, this can return ~~~~ and the parameter's values is not changed,
- // because there may be dependent limitations between fields or between parameters.
- // TODO(hiroh): I have to fill the return value. Comments in C2Component.h doesn't mention
- // about the return value when conflict happens. I set C2_BAD_VALUE to it temporarily now.
- c2_status_t stConfig = mIntf->config_vb(params, C2_DONT_BLOCK, &failures);
- if (stConfig == C2_OK) {
- EXPECT_EQ(0u, failures.size());
- } else {
- ASSERT_EQ(C2_BAD_VALUE, stConfig);
- EXPECT_EQ(1u, failures.size());
- EXPECT_EQ(C2SettingResult::CONFLICT, failures[0]->failure);
- }
- *configResult = stConfig;
-}
-
-template <typename T>
-void C2CompIntfTest::configWritableParamInvalidValue(const T &newParam) {
- std::unique_ptr<T> p = makeParamFrom(newParam);
-
- std::vector<C2Param*> params{p.get()};
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- // Although a parameter is writable, config_vb should be failed,
- // because a new value is invalid.
- ASSERT_EQ(C2_BAD_VALUE, mIntf->config_vb(params, C2_DONT_BLOCK, &failures));
- ASSERT_EQ(1u, failures.size());
- EXPECT_EQ(C2SettingResult::BAD_VALUE, failures[0]->failure);
-}
-
-// There is only used enum type for the field type, that is C2DomainKind.
-// If another field type is added, it is necessary to add function for that.
-template <>
-void C2CompIntfTest::getTestValues(
- const C2FieldSupportedValues &validValueInfos,
- std::vector<C2DomainKind> *const validValues,
- std::vector<C2DomainKind> *const invalidValues) {
- UNUSED(validValueInfos);
- validValues->emplace_back(C2DomainVideo);
- validValues->emplace_back(C2DomainAudio);
- validValues->emplace_back(C2DomainOther);
-
- // There is no invalid value.
- UNUSED(invalidValues);
-}
-
-template <typename TField>
-void C2CompIntfTest::getTestValues(
- const C2FieldSupportedValues &validValueInfos,
- std::vector<TField> *const validValues,
- std::vector<TField> *const invalidValues) {
- using TStorage = typename _c2_reduce_enum_to_underlying_type<TField>::type;
-
- // The supported values are represented by C2Values. C2Value::Primitive needs to
- // be transformed to a primitive value. This function is one to do that.
- auto prim2Value = [](const C2Value::Primitive &prim) -> TField {
- return (TField)prim.ref<TStorage>();
- static_assert(std::is_same<TStorage, int32_t>::value ||
- std::is_same<TStorage, uint32_t>::value ||
- std::is_same<TStorage, int64_t>::value ||
- std::is_same<TStorage, uint64_t>::value ||
- std::is_same<TStorage, float>::value, "Invalid TField type.");
- };
-
- // The size of validValueInfos is one.
- const auto &c2FSV = validValueInfos;
-
- switch (c2FSV.type) {
- case C2FieldSupportedValues::type_t::EMPTY: {
- invalidValues->emplace_back(TField(0));
- // TODO(hiroh) : Should other invalid values be tested?
- break;
- }
- case C2FieldSupportedValues::type_t::RANGE: {
- const auto &range = c2FSV.range;
- auto rmin = prim2Value(range.min);
- auto rmax = prim2Value(range.max);
- auto rstep = prim2Value(range.step);
-
- ASSERT_LE(rmin, rmax);
-
- if (rstep != 0) {
- // Increase linear
- for (auto v = rmin; v <= rmax; v = TField(v + rstep)) {
- validValues->emplace_back(v);
- }
- if (rmin > std::numeric_limits<TField>::min()) {
- invalidValues->emplace_back(TField(rmin - 1));
- }
- if (rmax < std::numeric_limits<TField>::max()) {
- invalidValues->emplace_back(TField(rmax + 1));
- }
- const unsigned int N = validValues->size();
- if (N >= 2) {
- if (std::is_same<TField, float>::value) {
- invalidValues->emplace_back(TField((validValues->at(0) + validValues->at(1)) / 2));
- invalidValues->emplace_back(TField((validValues->at(N - 2) + validValues->at(N - 1)) / 2));
- } else {
- if (rstep > 1) {
- invalidValues->emplace_back(TField(validValues->at(0) + 1));
- invalidValues->emplace_back(TField(validValues->at(N - 1) - 1));
- }
- }
- }
- } else {
- // There should be two cases, except linear case.
- // 1. integer geometric case
- // 2. float geometric case
-
- auto num = prim2Value(range.num);
- auto denom = prim2Value(range.denom);
-
- // If both range.num and range.denom are 1 and step is 0, we should use
- // VALUES, shouldn't we?
- ASSERT_FALSE(num == 1 && denom == 1);
-
- // (num / denom) is not less than 1.
- ASSERT_FALSE(denom == 0);
- ASSERT_LE(denom, num);
- for (auto v = rmin; v <= rmax; v = TField(v * num / denom)) {
- validValues->emplace_back(v);
- }
-
- if (rmin > std::numeric_limits<TField>::min()) {
- invalidValues->emplace_back(TField(rmin - 1));
- }
- if (rmax < std::numeric_limits<TField>::max()) {
- invalidValues->emplace_back(TField(rmax + 1));
- }
-
- const unsigned int N = validValues->size();
- if (N >= 2) {
- if (std::is_same<TField, float>::value) {
- invalidValues->emplace_back(TField((validValues->at(0) + validValues->at(1)) / 2));
- invalidValues->emplace_back(TField((validValues->at(N - 2) + validValues->at(N - 1)) / 2));
- } else {
- if (validValues->at(1) - validValues->at(0) > 1) {
- invalidValues->emplace_back(TField(validValues->at(0) + 1));
- }
- if (validValues->at(N - 1) - validValues->at(N - 2) > 1) {
- invalidValues->emplace_back(TField(validValues->at(N - 1) - 1));
- }
- }
- }
- }
- break;
- }
- case C2FieldSupportedValues::type_t::VALUES: {
- for (const C2Value::Primitive &prim : c2FSV.values) {
- validValues->emplace_back(prim2Value(prim));
- }
- auto minv = *std::min_element(validValues->begin(), validValues->end());
- auto maxv = *std::max_element(validValues->begin(), validValues->end());
- if (minv - 1 > std::numeric_limits<TField>::min()) {
- invalidValues->emplace_back(TField(minv - 1));
- }
- if (maxv + 1 < std::numeric_limits<TField>::max()) {
- invalidValues->emplace_back(TField(maxv + 1));
- }
- break;
- }
- case C2FieldSupportedValues::type_t::FLAGS: {
- // TODO(hiroh) : Implement the case that param.type is FLAGS.
- break;
- }
- }
-}
-
-template <typename T>
-void C2CompIntfTest::testReadOnlyParam(const T &preParam, const T &newParam) {
- TRACED_FAILURE(configReadOnlyParam(newParam));
- // Parameter value must not be changed
- TRACED_FAILURE(queryParamAsExpected(preParam));
-}
-
-template <typename TParam, typename TRealField, typename TField>
-void C2CompIntfTest::testWritableParam(
- TParam *const param, TRealField *const writableField,
- const std::vector<TField> &validValues,
- const std::vector<TField> &invalidValues) {
- c2_status_t stConfig;
-
- // Get the parameter's value in the beginning in order to reset the value at the end.
- TRACED_FAILURE(getValue(param));
- std::unique_ptr<TParam> defaultParam = makeParamFrom(*param);
-
- // Test valid values
- for (const auto &val : validValues) {
- std::unique_ptr<TParam> preParam = makeParamFrom(*param);
-
- // Param is try to be changed
- *writableField = val;
- TRACED_FAILURE(configWritableParamValidValue(*param, &stConfig));
- if (stConfig == C2_OK) {
- TRACED_FAILURE(queryParamAsExpected(*param));
- } else {
- // Param is unchanged because a field value conflicts with other field or parameter.
- TRACED_FAILURE(queryParamAsExpected(*preParam));
- }
- }
-
- // Store the current parameter in order to test |param| is unchanged
- // after trying to write an invalid value.
- std::unique_ptr<TParam> lastValidParam = makeParamFrom(*param);
-
- // Test invalid values
- for (const auto &val : invalidValues) {
- // Param is changed
- *writableField = val;
- TRACED_FAILURE(configWritableParamInvalidValue(*param));
- TRACED_FAILURE(queryParamAsExpected(*lastValidParam));
- }
- // Reset the parameter by config().
- TRACED_FAILURE(configWritableParamValidValue(*defaultParam, &stConfig));
-}
-
-template <typename T> void C2CompIntfTest::testUnsupportedParam() {
- TRACED_FAILURE(queryUnsupportedParam<T>());
-}
-
-template <typename T> void C2CompIntfTest::testSupportedParam() {
- TRACED_FAILURE(querySupportedParam<T>());
-}
-
-bool isSupportedParam(
- const C2Param ¶m,
- const std::vector<std::shared_ptr<C2ParamDescriptor>> &sParams) {
- for (const auto &pd : sParams) {
- if (param.type() == pd->index().type()) {
- return true;
- }
- }
- return false;
-}
-
-template <typename T>
-void C2CompIntfTest::checkParamPermission(
- int *const result,
- const std::vector<std::shared_ptr<C2ParamDescriptor>> &supportedParams) {
- std::unique_ptr<T> param = makeParam<T>();
-
- if (!isSupportedParam(*param, supportedParams)) {
- // If a parameter isn't supported, it just finish after calling testUnsupportedParam().
- testUnsupportedParam<T>();
- *result = ParamPermission::UNSUPPORTED;
- return;
- }
-
- testSupportedParam<T>();
-
- TRACED_FAILURE(getValue(param.get()));
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- // Config does not change the parameter, because param is the present param.
- // This config is executed to find out if a parameter is read-only or writable.
- c2_status_t stStack = config(param.get(), &failures);
- if (stStack == C2_BAD_VALUE) {
- // Read-only
- std::unique_ptr<T> newParam = makeParam<T>();
- testReadOnlyParam(*param, *newParam);
- *result = ParamPermission::READONLY;
- } else {
- // Writable
- EXPECT_EQ(stStack, C2_OK);
- *result = ParamPermission::WRITABLE;
- }
-}
-
-void C2CompIntfTest::outputResults(const std::string &name) {
- std::vector<std::string> params[3];
- for (const auto &testInfo : mParamResults) {
- int result = testInfo.result;
- ASSERT_TRUE(0 <= result && result <= 2);
- params[result].emplace_back(testInfo.name);
- }
- const char *resultString[] = {"Writable", "Read-Only", "Unsupported"};
- printf("\n----TEST RESULTS (%s)----\n\n", name.c_str());
- for (int i = 0; i < 3; i++) {
- printf("[ %s ]\n", resultString[i]);
- for (const auto &t : params[i]) {
- printf("%s\n", t.c_str());
- }
- printf("\n");
- }
-}
-
-#define TEST_GENERAL_WRITABLE_FIELD(TParam_, field_type_name_, field_name_) \
- do { \
- std::unique_ptr<TParam_> param = makeParam<TParam_>(); \
- std::vector<C2FieldSupportedValuesQuery> validValueInfos = { \
- C2FieldSupportedValuesQuery::Current( \
- C2ParamField(param.get(), &field_type_name_::field_name_)) \
- }; \
- ASSERT_EQ(C2_OK, \
- mIntf->querySupportedValues_vb(validValueInfos, C2_DONT_BLOCK)); \
- ASSERT_EQ(1u, validValueInfos.size()); \
- std::vector<decltype(param->field_name_)> validValues; \
- std::vector<decltype(param->field_name_)> invalidValues; \
- getTestValues(validValueInfos[0].values, &validValues, &invalidValues); \
- testWritableParam(param.get(), ¶m->field_name_, validValues,\
- invalidValues); \
- } while (0)
-
-#define TEST_VSSTRUCT_WRITABLE_FIELD(TParam_, field_type_name_) \
- do { \
- TEST_GENERAL_WRITABLE_FIELD(TParam_, field_type_name_, width); \
- TEST_GENERAL_WRITABLE_FIELD(TParam_, field_type_name_, height); \
- } while (0)
-
-#define TEST_U32_WRITABLE_FIELD(TParam_, field_type_name_) \
- TEST_GENERAL_WRITABLE_FIELD(TParam_, field_type_name_, value)
-
-#define TEST_ENUM_WRITABLE_FIELD(TParam_, field_type_name_) \
- TEST_GENERAL_WRITABLE_FIELD(TParam_, field_type_name_, value)
-
-// TODO(hiroh): Support parameters based on char[] and uint32_t[].
-//#define TEST_STRING_WRITABLE_FIELD(TParam_, field_type_name_)
-// TEST_GENERAL_WRITABLE_FIELD(TParam_, field_type_name_, m.value)
-//#define TEST_U32ARRAY_WRITABLE_FIELD(Tparam_, field_type_name_)
-// TEST_GENERAL_WRITABLE_FIELD(Tparam_, uint32_t[], field_type_name_, values)
-
-#define EACH_TEST(TParam_, field_type_name_, test_name) \
- do { \
- int result = 0; \
- this->mCurrentParamName = #TParam_; \
- checkParamPermission<TParam_>(&result, supportedParams); \
- if (result == ParamPermission::WRITABLE) { \
- test_name(TParam_, field_type_name_); \
- } \
- mParamResults.emplace_back(#TParam_, result); \
- } while (0)
-
-#define EACH_TEST_SELF(type_, test_name) EACH_TEST(type_, type_, test_name)
-#define EACH_TEST_INPUT(type_, test_name) EACH_TEST(type_::input, type_, test_name)
-#define EACH_TEST_OUTPUT(type_, test_name) EACH_TEST(type_::output, type_, test_name)
-void C2CompIntfTest::testMain(std::shared_ptr<C2ComponentInterface> intf,
- const std::string &componentName) {
- setComponent(intf);
-
- std::vector<std::shared_ptr<C2ParamDescriptor>> supportedParams;
- ASSERT_EQ(C2_OK, mIntf->querySupportedParams_nb(&supportedParams));
-
- EACH_TEST_SELF(C2ComponentLatencyInfo, TEST_U32_WRITABLE_FIELD);
- EACH_TEST_SELF(C2ComponentTemporalInfo, TEST_U32_WRITABLE_FIELD);
- EACH_TEST_INPUT(C2PortLatencyInfo, TEST_U32_WRITABLE_FIELD);
- EACH_TEST_OUTPUT(C2PortLatencyInfo, TEST_U32_WRITABLE_FIELD);
- EACH_TEST_INPUT(C2StreamFormatConfig, TEST_U32_WRITABLE_FIELD);
- EACH_TEST_OUTPUT(C2StreamFormatConfig, TEST_U32_WRITABLE_FIELD);
- EACH_TEST_INPUT(C2PortStreamCountConfig, TEST_U32_WRITABLE_FIELD);
- EACH_TEST_OUTPUT(C2PortStreamCountConfig, TEST_U32_WRITABLE_FIELD);
-
- EACH_TEST_SELF(C2ComponentDomainInfo, TEST_ENUM_WRITABLE_FIELD);
-
- // TODO(hiroh): Support parameters based on uint32_t[] and char[].
- // EACH_TEST_INPUT(C2PortMimeConfig, TEST_STRING_WRITABLE_FIELD);
- // EACH_TEST_OUTPUT(C2PortMimeConfig, TEST_STRING_WRITABLE_FIELD);
- // EACH_TEST_INPUT(C2StreamMimeConfig, TEST_STRING_WRITABLE_FIELD);
- // EACH_TEST_OUTPUT(C2StreamMimeConfig, TEST_STRING_WRITABLE_FIELD);
-
- // EACH_TEST_SELF(C2SupportedParamsInfo, TEST_U32ARRAY_WRITABLE_FIELD);
- // EACH_TEST_SELF(C2RequiredParamsInfo, TEST_U32ARRAY_WRITABLE_FIELD);
- // EACH_TEST_SELF(C2ReadOnlyParamsInfo, TEST_U32ARRAY_WRITABLE_FIELD);
- // EACH_TEST_SELF(C2RequestedInfosInfo, TEST_U32ARRAY_WRITABLE_FIELD);
-
- EACH_TEST_INPUT(C2VideoSizeStreamInfo, TEST_VSSTRUCT_WRITABLE_FIELD);
- EACH_TEST_OUTPUT(C2VideoSizeStreamInfo, TEST_VSSTRUCT_WRITABLE_FIELD);
- EACH_TEST_INPUT(C2VideoSizeStreamTuning, TEST_VSSTRUCT_WRITABLE_FIELD);
- EACH_TEST_OUTPUT(C2VideoSizeStreamTuning, TEST_VSSTRUCT_WRITABLE_FIELD);
- EACH_TEST_INPUT(C2MaxVideoSizeHintPortSetting, TEST_VSSTRUCT_WRITABLE_FIELD);
- EACH_TEST_OUTPUT(C2MaxVideoSizeHintPortSetting, TEST_VSSTRUCT_WRITABLE_FIELD);
-
- outputResults(componentName);
- resetResults();
-}
-
-TEST_F(C2CompIntfTest, C2V4L2CodecIntf) {
-
- // Read a shared object library.
- void* compLib = dlopen("system/lib/libv4l2_codec2.so", RTLD_NOW);
-
- if (!compLib) {
- printf("Cannot open library: %s.\n", dlerror());
- FAIL();
- return;
- }
-
- typedef C2ComponentStore* create_t();
- create_t* create_store= (create_t*) dlsym(compLib, "create_store");
- const char* dlsym_error = dlerror();
- if (dlsym_error) {
- printf("Cannot load symbol create: %s.\n", dlsym_error);
- FAIL();
- return;
- }
-
- typedef void destroy_t(C2ComponentStore*);
- destroy_t* destroy_store = (destroy_t*) dlsym(compLib, "destroy_store");
- dlsym_error = dlerror();
- if (dlsym_error) {
- printf("Cannot load symbol destroy: %s.\n", dlsym_error);
- FAIL();
- return;
- }
-
- std::shared_ptr<C2ComponentStore> componentStore(create_store(), destroy_store);
- std::shared_ptr<C2ComponentInterface> componentIntf;
- componentStore->createInterface("v4l2.decoder", &componentIntf);
- auto componentName = "C2V4L2Codec";
- testMain(componentIntf, componentName);
-}
-
-} // namespace android
diff --git a/codec2/tests/C2Param_test.cpp b/codec2/tests/C2Param_test.cpp
deleted file mode 100644
index 564d4d2..0000000
--- a/codec2/tests/C2Param_test.cpp
+++ /dev/null
@@ -1,2515 +0,0 @@
-/*
- * Copyright 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2Param_test"
-
-#include <gtest/gtest.h>
-
-#define __C2_GENERATE_GLOBAL_VARS__
-#include <C2ParamDef.h>
-
-#include <list>
-
-void PrintTo(const _C2FieldId &id, ::std::ostream* os) {
- *os << "@" << id._mOffset << "+" << id._mSize;
-}
-
-void PrintTo(const C2FieldDescriptor &fd, ::std::ostream *os) {
- using FD=C2FieldDescriptor;
- switch (fd.type()) {
- case FD::INT32: *os << "i32"; break;
- case FD::INT64: *os << "i64"; break;
- case FD::UINT32: *os << "u32"; break;
- case FD::UINT64: *os << "u64"; break;
- case FD::FLOAT: *os << "float"; break;
- case FD::STRING: *os << "char"; break;
- case FD::BLOB: *os << "u8"; break;
- default:
- if (fd.type() & FD::STRUCT_FLAG) {
- *os << "struct-" << (fd.type() & ~FD::STRUCT_FLAG);
- } else {
- *os << "type-" << fd.type();
- }
- }
- *os << " " << fd.name();
- if (fd.extent() > 1) {
- *os << "[" << fd.extent() << "]";
- } else if (fd.extent() == 0) {
- *os << "[]";
- }
- *os << " (";
- PrintTo(fd._mFieldId, os);
- *os << "*" << fd.extent() << ")";
-}
-
-enum C2ParamIndexType : C2Param::type_index_t {
- kParamIndexNumber,
- kParamIndexNumbers,
- kParamIndexNumber2,
- kParamIndexVendorStart = C2Param::TYPE_INDEX_VENDOR_START,
- kParamIndexVendorNumbers,
-};
-
-void ffff(int(*)(int)) {}
-
-/* ============================= STRUCT DECLARATION AND DESCRIPTION ============================= */
-
-typedef C2FieldDescriptor FD;
-
-class C2ParamTest : public ::testing::Test {
-};
-
-class C2ParamTest_ParamFieldList
- : public ::testing::TestWithParam<std::vector<C2FieldDescriptor>> {
-};
-
-enum {
- kParamIndexSize,
- kParamIndexTestA,
- kParamIndexTestB,
- kParamIndexTestFlexS32,
- kParamIndexTestFlexEndS32,
- kParamIndexTestFlexS64,
- kParamIndexTestFlexEndS64,
- kParamIndexTestFlexSize,
- kParamIndexTestFlexEndSize,
-};
-
-struct C2SizeStruct {
- int32_t width;
- int32_t height;
- enum : uint32_t { CORE_INDEX = kParamIndexSize }; // <= needed for C2FieldDescriptor
- const static std::vector<C2FieldDescriptor> _FIELD_LIST;
- static const std::vector<C2FieldDescriptor> FieldList(); // <= needed for C2FieldDescriptor
- const static FD::type_t TYPE = (FD::type_t)(CORE_INDEX | FD::STRUCT_FLAG);
-};
-
-DEFINE_NO_NAMED_VALUES_FOR(C2SizeStruct)
-
-// Test 1. define a structure without any helper methods
-
-bool operator==(const C2FieldDescriptor &a, const C2FieldDescriptor &b) {
- return a.type() == b.type()
- && a.extent() == b.extent()
- && a.name() == b.name()
- && a._mFieldId == b._mFieldId;
-}
-
-struct C2TestStruct_A {
- int32_t signed32;
- int64_t signed64[2];
- uint32_t unsigned32[1];
- uint64_t unsigned64;
- float fp32;
- C2SizeStruct sz[3];
- uint8_t blob[100];
- char string[100];
- bool yesNo[100];
-
- const static std::vector<C2FieldDescriptor> _FIELD_LIST;
- static const std::vector<C2FieldDescriptor> FieldList();
- // enum : uint32_t { CORE_INDEX = kParamIndexTest };
- // typedef C2TestStruct_A _type;
-} __attribute__((packed));
-
-const std::vector<C2FieldDescriptor> C2TestStruct_A::FieldList() {
- return _FIELD_LIST;
-}
-const std::vector<C2FieldDescriptor> C2TestStruct_A::_FIELD_LIST =
- { { FD::INT32, 1, "s32", 0, 4 },
- { FD::INT64, 2, "s64", 4, 8 },
- { FD::UINT32, 1, "u32", 20, 4 },
- { FD::UINT64, 1, "u64", 24, 8 },
- { FD::FLOAT, 1, "fp", 32, 4 },
- { C2SizeStruct::TYPE, 3, "size", 36, 8 },
- { FD::BLOB, 100, "blob", 60, 1 },
- { FD::STRING, 100, "str", 160, 1 },
- { FD::BLOB, 100, "y-n", 260, 1 } };
-
-TEST_P(C2ParamTest_ParamFieldList, VerifyStruct) {
- std::vector<C2FieldDescriptor> fields = GetParam(), expected = C2TestStruct_A::_FIELD_LIST;
-
- // verify first field descriptor
- EXPECT_EQ(FD::INT32, fields[0].type());
- EXPECT_STREQ("s32", fields[0].name().c_str());
- EXPECT_EQ(1u, fields[0].extent());
- EXPECT_EQ(_C2FieldId(0, 4), fields[0]._mFieldId);
-
- EXPECT_EQ(expected[0], fields[0]);
- EXPECT_EQ(expected[1], fields[1]);
- EXPECT_EQ(expected[2], fields[2]);
- EXPECT_EQ(expected[3], fields[3]);
- EXPECT_EQ(expected[4], fields[4]);
- EXPECT_EQ(expected[5], fields[5]);
- EXPECT_EQ(expected[6], fields[6]);
- EXPECT_EQ(expected[7], fields[7]);
- for (size_t i = 8; i < fields.size() && i < expected.size(); ++i) {
- EXPECT_EQ(expected[i], fields[i]);
- }
-}
-
-INSTANTIATE_TEST_CASE_P(InitializerList, C2ParamTest_ParamFieldList, ::testing::Values(C2TestStruct_A::_FIELD_LIST));
-
-// define fields using C2FieldDescriptor pointer constructor
-const std::vector<C2FieldDescriptor> C2TestStruct_A_FD_PTR_fieldList =
- { C2FieldDescriptor(&((C2TestStruct_A*)(nullptr))->signed32, "s32"),
- C2FieldDescriptor(&((C2TestStruct_A*)(nullptr))->signed64, "s64"),
- C2FieldDescriptor(&((C2TestStruct_A*)(nullptr))->unsigned32, "u32"),
- C2FieldDescriptor(&((C2TestStruct_A*)(nullptr))->unsigned64, "u64"),
- C2FieldDescriptor(&((C2TestStruct_A*)(nullptr))->fp32, "fp"),
- C2FieldDescriptor(&((C2TestStruct_A*)(nullptr))->sz, "size"),
- C2FieldDescriptor(&((C2TestStruct_A*)(nullptr))->blob, "blob"),
- C2FieldDescriptor(&((C2TestStruct_A*)(nullptr))->string, "str"),
- // C2FieldDescriptor(&((C2TestStruct_A*)(nullptr))->yesNo, "y-n")
- };
-
-INSTANTIATE_TEST_CASE_P(PointerConstructor, C2ParamTest_ParamFieldList, ::testing::Values(C2TestStruct_A_FD_PTR_fieldList));
-
-// define fields using C2FieldDescriptor member-pointer constructor
-const std::vector<C2FieldDescriptor> C2TestStruct_A_FD_MEM_PTR_fieldList =
- { C2FieldDescriptor((C2TestStruct_A*)0, &C2TestStruct_A::signed32, "s32"),
- C2FieldDescriptor((C2TestStruct_A*)0, &C2TestStruct_A::signed64, "s64"),
- C2FieldDescriptor((C2TestStruct_A*)0, &C2TestStruct_A::unsigned32, "u32"),
- C2FieldDescriptor((C2TestStruct_A*)0, &C2TestStruct_A::unsigned64, "u64"),
- C2FieldDescriptor((C2TestStruct_A*)0, &C2TestStruct_A::fp32, "fp"),
- C2FieldDescriptor((C2TestStruct_A*)0, &C2TestStruct_A::sz, "size"),
- C2FieldDescriptor((C2TestStruct_A*)0, &C2TestStruct_A::blob, "blob"),
- C2FieldDescriptor((C2TestStruct_A*)0, &C2TestStruct_A::string, "str"),
- // C2FieldDescriptor((C2TestStruct_A*)0, &C2TestStruct_A::yesNo, "y-n")
- };
-
-INSTANTIATE_TEST_CASE_P(MemberPointerConstructor, C2ParamTest_ParamFieldList, ::testing::Values(C2TestStruct_A_FD_MEM_PTR_fieldList));
-
-// Test 2. define a structure with two-step helper methods
-
-struct C2TestAStruct {
- int32_t signed32;
- int64_t signed64[2];
- uint32_t unsigned32[1];
- uint64_t unsigned64;
- float fp32;
- C2SizeStruct sz[3];
- uint8_t blob[100];
- char string[100];
- bool yesNo[100];
-
-private: // test access level
- DEFINE_C2STRUCT(TestA)
-} C2_PACK;
-
-DESCRIBE_C2STRUCT(TestA, {
- C2FIELD(signed32, "s32")
- C2FIELD(signed64, "s64")
- C2FIELD(unsigned32, "u32")
- C2FIELD(unsigned64, "u64")
- C2FIELD(fp32, "fp")
- C2FIELD(sz, "size")
- C2FIELD(blob, "blob")
- C2FIELD(string, "str")
- // C2FIELD(yesNo, "y-n")
-}) // ; optional
-
-INSTANTIATE_TEST_CASE_P(DescribeStruct2Step, C2ParamTest_ParamFieldList, ::testing::Values(C2TestAStruct::FieldList()));
-
-// Test 3. define a structure with one-step helper method
-
-struct C2TestBStruct {
- int32_t signed32;
- int64_t signed64[2];
- uint32_t unsigned32[1];
- uint64_t unsigned64;
- float fp32;
- C2SizeStruct sz[3];
- uint8_t blob[100];
- char string[100];
- bool yesNo[100];
-
-private: // test access level
- DEFINE_AND_DESCRIBE_C2STRUCT(TestB)
-
- C2FIELD(signed32, "s32")
- C2FIELD(signed64, "s64")
- C2FIELD(unsigned32, "u32")
- C2FIELD(unsigned64, "u64")
- C2FIELD(fp32, "fp")
- C2FIELD(sz, "size")
- C2FIELD(blob, "blob")
- C2FIELD(string, "str")
- // C2FIELD(yesNo, "y-n")
-};
-
-INSTANTIATE_TEST_CASE_P(DescribeStruct1Step, C2ParamTest_ParamFieldList, ::testing::Values(C2TestBStruct::FieldList()));
-
-// Test 4. flexible members
-
-template<typename T>
-class C2ParamTest_FlexParamFieldList : public ::testing::Test {
-protected:
- using type_t=FD::type_t;
-
- // static std::vector<std::vector<C2FieldDescriptor>>
- static std::vector<std::vector<C2FieldDescriptor>>
- GetLists();
-
- constexpr static type_t FlexType =
- std::is_same<T, int32_t>::value ? FD::INT32 :
- std::is_same<T, int64_t>::value ? FD::INT64 :
- std::is_same<T, uint32_t>::value ? FD::UINT32 :
- std::is_same<T, uint64_t>::value ? FD::UINT64 :
- std::is_same<T, float>::value ? FD::FLOAT :
- std::is_same<T, uint8_t>::value ? FD::BLOB :
- std::is_same<T, char>::value ? FD::STRING :
- std::is_same<T, C2SizeStruct>::value ? C2SizeStruct::TYPE : (type_t)0;
- constexpr static size_t FLEX_SIZE = sizeof(T);
-};
-
-typedef ::testing::Types<int32_t, int64_t, C2SizeStruct> FlexTypes;
-TYPED_TEST_CASE(C2ParamTest_FlexParamFieldList, FlexTypes);
-
-TYPED_TEST(C2ParamTest_FlexParamFieldList, VerifyStruct) {
- for (auto a : this->GetLists()) {
- std::vector<C2FieldDescriptor> fields = a;
- if (fields.size() > 1) {
- EXPECT_EQ(2u, fields.size());
- EXPECT_EQ(C2FieldDescriptor(FD::INT32, 1, "s32", 0, 4), fields[0]);
- EXPECT_EQ(C2FieldDescriptor(this->FlexType, 0, "flex", 4, this->FLEX_SIZE),
- fields[1]);
- } else {
- EXPECT_EQ(1u, fields.size());
- EXPECT_EQ(C2FieldDescriptor(this->FlexType, 0, "flex", 0, this->FLEX_SIZE),
- fields[0]);
- }
- }
-}
-
-struct C2TestStruct_FlexS32 {
- int32_t mFlex[];
-
- const static std::vector<C2FieldDescriptor> _FIELD_LIST;
- static const std::vector<C2FieldDescriptor> FieldList();
- // enum : uint32_t { CORE_INDEX = kParamIndexTestFlex, FLEX_SIZE = 4 };
- // typedef C2TestStruct_FlexS32 _type;
- // typedef int32_t FlexType;
-};
-
-const std::vector<C2FieldDescriptor> C2TestStruct_FlexS32::FieldList() {
- return _FIELD_LIST;
-}
-const std::vector<C2FieldDescriptor> C2TestStruct_FlexS32::_FIELD_LIST = {
- { FD::INT32, 0, "flex", 0, 4 }
-};
-
-struct C2TestStruct_FlexEndS32 {
- int32_t signed32;
- int32_t mFlex[];
-
- const static std::vector<C2FieldDescriptor> _FIELD_LIST;
- static const std::vector<C2FieldDescriptor> FieldList();
- // enum : uint32_t { CORE_INDEX = kParamIndexTestFlexEnd, FLEX_SIZE = 4 };
- // typedef C2TestStruct_FlexEnd _type;
- // typedef int32_t FlexType;
-};
-
-const std::vector<C2FieldDescriptor> C2TestStruct_FlexEndS32::FieldList() {
- return _FIELD_LIST;
-}
-const std::vector<C2FieldDescriptor> C2TestStruct_FlexEndS32::_FIELD_LIST = {
- { FD::INT32, 1, "s32", 0, 4 },
- { FD::INT32, 0, "flex", 4, 4 },
-};
-
-const static std::vector<C2FieldDescriptor> C2TestStruct_FlexEndS32_ptr_fieldList = {
- C2FieldDescriptor(&((C2TestStruct_FlexEndS32*)0)->signed32, "s32"),
- C2FieldDescriptor(&((C2TestStruct_FlexEndS32*)0)->mFlex, "flex"),
-};
-
-struct C2TestFlexS32Struct {
- int32_t mFlexSigned32[];
-private: // test access level
- C2TestFlexS32Struct() {}
-
- DEFINE_AND_DESCRIBE_FLEX_C2STRUCT(TestFlexS32, mFlexSigned32)
- C2FIELD(mFlexSigned32, "flex")
-};
-
-struct C2TestFlexEndS32Struct {
- int32_t signed32;
- int32_t mFlexSigned32[];
-private: // test access level
- C2TestFlexEndS32Struct() {}
-
- DEFINE_FLEX_C2STRUCT(TestFlexEndS32, mFlexSigned32)
-} C2_PACK;
-
-DESCRIBE_C2STRUCT(TestFlexEndS32, {
- C2FIELD(signed32, "s32")
- C2FIELD(mFlexSigned32, "flex")
-}) // ; optional
-
-template<>
-std::vector<std::vector<C2FieldDescriptor>>
-//std::vector<std::vector<C2FieldDescriptor>>
-C2ParamTest_FlexParamFieldList<int32_t>::GetLists() {
- return {
- C2TestStruct_FlexS32::FieldList(),
- C2TestStruct_FlexEndS32::FieldList(),
- C2TestStruct_FlexEndS32_ptr_fieldList,
- C2TestFlexS32Struct::FieldList(),
- C2TestFlexEndS32Struct::FieldList(),
- };
-}
-
-struct C2TestStruct_FlexS64 {
- int64_t mFlexSigned64[];
-
- const static std::vector<C2FieldDescriptor> _FIELD_LIST;
- static const std::vector<C2FieldDescriptor> FieldList();
- // enum : uint32_t { CORE_INDEX = kParamIndexTestFlexS64, FLEX_SIZE = 8 };
- // typedef C2TestStruct_FlexS64 _type;
- // typedef int64_t FlexType;
-};
-
-const std::vector<C2FieldDescriptor> C2TestStruct_FlexS64::FieldList() {
- return _FIELD_LIST;
-}
-const std::vector<C2FieldDescriptor> C2TestStruct_FlexS64::_FIELD_LIST = {
- { FD::INT64, 0, "flex", 0, 8 }
-};
-
-struct C2TestStruct_FlexEndS64 {
- int32_t signed32;
- int64_t mSigned64Flex[];
-
- const static std::vector<C2FieldDescriptor> _FIELD_LIST;
- static const std::vector<C2FieldDescriptor> FieldList();
- // enum : uint32_t { CORE_INDEX = C2TestStruct_FlexEndS64, FLEX_SIZE = 8 };
- // typedef C2TestStruct_FlexEndS64 _type;
- // typedef int64_t FlexType;
-};
-
-const std::vector<C2FieldDescriptor> C2TestStruct_FlexEndS64::FieldList() {
- return _FIELD_LIST;
-}
-const std::vector<C2FieldDescriptor> C2TestStruct_FlexEndS64::_FIELD_LIST = {
- { FD::INT32, 1, "s32", 0, 4 },
- { FD::INT64, 0, "flex", 4, 8 },
-};
-
-struct C2TestFlexS64Struct {
- int64_t mFlexSigned64[];
- C2TestFlexS64Struct() {}
-
- DEFINE_AND_DESCRIBE_FLEX_C2STRUCT(TestFlexS64, mFlexSigned64)
- C2FIELD(mFlexSigned64, "flex")
-};
-
-struct C2TestFlexEndS64Struct {
- int32_t signed32;
- int64_t mFlexSigned64[];
- C2TestFlexEndS64Struct() {}
-
- DEFINE_FLEX_C2STRUCT(TestFlexEndS64, mFlexSigned64)
-} C2_PACK;
-
-DESCRIBE_C2STRUCT(TestFlexEndS64, {
- C2FIELD(signed32, "s32")
- C2FIELD(mFlexSigned64, "flex")
-}) // ; optional
-
-template<>
-std::vector<std::vector<C2FieldDescriptor>>
-//std::vector<std::vector<C2FieldDescriptor>>
-C2ParamTest_FlexParamFieldList<int64_t>::GetLists() {
- return {
- C2TestStruct_FlexS64::FieldList(),
- C2TestStruct_FlexEndS64::FieldList(),
- C2TestFlexS64Struct::FieldList(),
- C2TestFlexEndS64Struct::FieldList(),
- };
-}
-
-struct C2TestStruct_FlexSize {
- C2SizeStruct mFlexSize[];
-
- const static std::vector<C2FieldDescriptor> _FIELD_LIST;
- static const std::vector<C2FieldDescriptor> FieldList();
- // enum : uint32_t { CORE_INDEX = kParamIndexTestFlexSize, FLEX_SIZE = 8 };
- // typedef C2TestStruct_FlexSize _type;
- // typedef C2SizeStruct FlexType;
-};
-
-const std::vector<C2FieldDescriptor> C2TestStruct_FlexSize::FieldList() {
- return _FIELD_LIST;
-}
-const std::vector<C2FieldDescriptor> C2TestStruct_FlexSize::_FIELD_LIST = {
- { C2SizeStruct::TYPE, 0, "flex", 0, sizeof(C2SizeStruct) }
-};
-
-struct C2TestStruct_FlexEndSize {
- int32_t signed32;
- C2SizeStruct mSizeFlex[];
-
- const static std::vector<C2FieldDescriptor> _FIELD_LIST;
- static const std::vector<C2FieldDescriptor> FieldList();
- // enum : uint32_t { CORE_INDEX = C2TestStruct_FlexEndSize, FLEX_SIZE = 8 };
- // typedef C2TestStruct_FlexEndSize _type;
- // typedef C2SizeStruct FlexType;
-};
-
-const std::vector<C2FieldDescriptor> C2TestStruct_FlexEndSize::FieldList() {
- return _FIELD_LIST;
-}
-const std::vector<C2FieldDescriptor> C2TestStruct_FlexEndSize::_FIELD_LIST = {
- { FD::INT32, 1, "s32", 0, 4 },
- { C2SizeStruct::TYPE, 0, "flex", 4, sizeof(C2SizeStruct) },
-};
-
-struct C2TestFlexSizeStruct {
- C2SizeStruct mFlexSize[];
- C2TestFlexSizeStruct() {}
-
- DEFINE_AND_DESCRIBE_FLEX_C2STRUCT(TestFlexSize, mFlexSize)
- C2FIELD(mFlexSize, "flex")
-};
-
-struct C2TestFlexEndSizeStruct {
- int32_t signed32;
- C2SizeStruct mFlexSize[];
- C2TestFlexEndSizeStruct() {}
-
- DEFINE_FLEX_C2STRUCT(TestFlexEndSize, mFlexSize)
-} C2_PACK;
-
-DESCRIBE_C2STRUCT(TestFlexEndSize, {
- C2FIELD(signed32, "s32")
- C2FIELD(mFlexSize, "flex")
-}) // ; optional
-
-struct C2TestBaseFlexEndSizeStruct {
- int32_t signed32;
- C2SizeStruct mFlexSize[];
- C2TestBaseFlexEndSizeStruct() {}
-
- DEFINE_BASE_FLEX_C2STRUCT(TestBaseFlexEndSize, mFlexSize)
-} C2_PACK;
-
-DESCRIBE_C2STRUCT(TestBaseFlexEndSize, {
- C2FIELD(signed32, "s32")
- C2FIELD(mFlexSize, "flex")
-}) // ; optional
-
-struct C2TestBaseFlexEndSize2Struct {
- int32_t signed32;
- C2SizeStruct mFlexSize[];
- C2TestBaseFlexEndSize2Struct() {}
-
- DEFINE_AND_DESCRIBE_BASE_FLEX_C2STRUCT(TestBaseFlexEndSize2, mFlexSize)
- C2FIELD(signed32, "s32")
- C2FIELD(mFlexSize, "flex")
-};
-
-template<>
-std::vector<std::vector<C2FieldDescriptor>>
-//std::vector<std::vector<C2FieldDescriptor>>
-C2ParamTest_FlexParamFieldList<C2SizeStruct>::GetLists() {
- return {
- C2TestStruct_FlexSize::FieldList(),
- C2TestStruct_FlexEndSize::FieldList(),
- C2TestFlexSizeStruct::FieldList(),
- C2TestFlexEndSizeStruct::FieldList(),
- C2TestBaseFlexEndSizeStruct::FieldList(),
- C2TestBaseFlexEndSize2Struct::FieldList(),
- };
-}
-
-TEST_F(C2ParamTest, FieldId) {
- // pointer constructor
- EXPECT_EQ(_C2FieldId(0, 4), _C2FieldId(&((C2TestStruct_A*)0)->signed32));
- EXPECT_EQ(_C2FieldId(4, 8), _C2FieldId(&((C2TestStruct_A*)0)->signed64));
- EXPECT_EQ(_C2FieldId(20, 4), _C2FieldId(&((C2TestStruct_A*)0)->unsigned32));
- EXPECT_EQ(_C2FieldId(24, 8), _C2FieldId(&((C2TestStruct_A*)0)->unsigned64));
- EXPECT_EQ(_C2FieldId(32, 4), _C2FieldId(&((C2TestStruct_A*)0)->fp32));
- EXPECT_EQ(_C2FieldId(36, 8), _C2FieldId(&((C2TestStruct_A*)0)->sz));
- EXPECT_EQ(_C2FieldId(60, 1), _C2FieldId(&((C2TestStruct_A*)0)->blob));
- EXPECT_EQ(_C2FieldId(160, 1), _C2FieldId(&((C2TestStruct_A*)0)->string));
- EXPECT_EQ(_C2FieldId(260, 1), _C2FieldId(&((C2TestStruct_A*)0)->yesNo));
-
- EXPECT_EQ(_C2FieldId(0, 4), _C2FieldId(&((C2TestFlexEndSizeStruct*)0)->signed32));
- EXPECT_EQ(_C2FieldId(4, 8), _C2FieldId(&((C2TestFlexEndSizeStruct*)0)->mFlexSize));
-
- EXPECT_EQ(_C2FieldId(0, 4), _C2FieldId(&((C2TestBaseFlexEndSizeStruct*)0)->signed32));
- EXPECT_EQ(_C2FieldId(4, 8), _C2FieldId(&((C2TestBaseFlexEndSizeStruct*)0)->mFlexSize));
-
- // member pointer constructor
- EXPECT_EQ(_C2FieldId(0, 4), _C2FieldId((C2TestStruct_A*)0, &C2TestStruct_A::signed32));
- EXPECT_EQ(_C2FieldId(4, 8), _C2FieldId((C2TestStruct_A*)0, &C2TestStruct_A::signed64));
- EXPECT_EQ(_C2FieldId(20, 4), _C2FieldId((C2TestStruct_A*)0, &C2TestStruct_A::unsigned32));
- EXPECT_EQ(_C2FieldId(24, 8), _C2FieldId((C2TestStruct_A*)0, &C2TestStruct_A::unsigned64));
- EXPECT_EQ(_C2FieldId(32, 4), _C2FieldId((C2TestStruct_A*)0, &C2TestStruct_A::fp32));
- EXPECT_EQ(_C2FieldId(36, 8), _C2FieldId((C2TestStruct_A*)0, &C2TestStruct_A::sz));
- EXPECT_EQ(_C2FieldId(60, 1), _C2FieldId((C2TestStruct_A*)0, &C2TestStruct_A::blob));
- EXPECT_EQ(_C2FieldId(160, 1), _C2FieldId((C2TestStruct_A*)0, &C2TestStruct_A::string));
- EXPECT_EQ(_C2FieldId(260, 1), _C2FieldId((C2TestStruct_A*)0, &C2TestStruct_A::yesNo));
-
- EXPECT_EQ(_C2FieldId(0, 4), _C2FieldId((C2TestFlexEndSizeStruct*)0, &C2TestFlexEndSizeStruct::signed32));
- EXPECT_EQ(_C2FieldId(4, 8), _C2FieldId((C2TestFlexEndSizeStruct*)0, &C2TestFlexEndSizeStruct::mFlexSize));
-
- EXPECT_EQ(_C2FieldId(0, 4), _C2FieldId((C2TestBaseFlexEndSizeStruct*)0, &C2TestBaseFlexEndSizeStruct::signed32));
- EXPECT_EQ(_C2FieldId(4, 8), _C2FieldId((C2TestBaseFlexEndSizeStruct*)0, &C2TestBaseFlexEndSizeStruct::mFlexSize));
-
- // member pointer sans type pointer
- EXPECT_EQ(_C2FieldId(0, 4), _C2FieldId(&C2TestStruct_A::signed32));
- EXPECT_EQ(_C2FieldId(4, 8), _C2FieldId(&C2TestStruct_A::signed64));
- EXPECT_EQ(_C2FieldId(20, 4), _C2FieldId(&C2TestStruct_A::unsigned32));
- EXPECT_EQ(_C2FieldId(24, 8), _C2FieldId(&C2TestStruct_A::unsigned64));
- EXPECT_EQ(_C2FieldId(32, 4), _C2FieldId(&C2TestStruct_A::fp32));
- EXPECT_EQ(_C2FieldId(36, 8), _C2FieldId(&C2TestStruct_A::sz));
- EXPECT_EQ(_C2FieldId(60, 1), _C2FieldId(&C2TestStruct_A::blob));
- EXPECT_EQ(_C2FieldId(160, 1), _C2FieldId(&C2TestStruct_A::string));
- EXPECT_EQ(_C2FieldId(260, 1), _C2FieldId(&C2TestStruct_A::yesNo));
-
- EXPECT_EQ(_C2FieldId(0, 4), _C2FieldId(&C2TestFlexEndSizeStruct::signed32));
- EXPECT_EQ(_C2FieldId(4, 8), _C2FieldId(&C2TestFlexEndSizeStruct::mFlexSize));
-
- EXPECT_EQ(_C2FieldId(0, 4), _C2FieldId(&C2TestBaseFlexEndSizeStruct::signed32));
- EXPECT_EQ(_C2FieldId(4, 8), _C2FieldId(&C2TestBaseFlexEndSizeStruct::mFlexSize));
-
- typedef C2GlobalParam<C2Info, C2TestAStruct> C2TestAInfo;
- typedef C2GlobalParam<C2Info, C2TestFlexEndSizeStruct> C2TestFlexEndSizeInfo;
- typedef C2GlobalParam<C2Info, C2TestBaseFlexEndSizeStruct, kParamIndexTestFlexEndSize> C2TestFlexEndSizeInfoFromBase;
-
- // pointer constructor in C2Param
- EXPECT_EQ(_C2FieldId(8, 4), _C2FieldId(&((C2TestAInfo*)0)->signed32));
- EXPECT_EQ(_C2FieldId(12, 8), _C2FieldId(&((C2TestAInfo*)0)->signed64));
- EXPECT_EQ(_C2FieldId(28, 4), _C2FieldId(&((C2TestAInfo*)0)->unsigned32));
- EXPECT_EQ(_C2FieldId(32, 8), _C2FieldId(&((C2TestAInfo*)0)->unsigned64));
- EXPECT_EQ(_C2FieldId(40, 4), _C2FieldId(&((C2TestAInfo*)0)->fp32));
- EXPECT_EQ(_C2FieldId(44, 8), _C2FieldId(&((C2TestAInfo*)0)->sz));
- EXPECT_EQ(_C2FieldId(68, 1), _C2FieldId(&((C2TestAInfo*)0)->blob));
- EXPECT_EQ(_C2FieldId(168, 1), _C2FieldId(&((C2TestAInfo*)0)->string));
- EXPECT_EQ(_C2FieldId(268, 1), _C2FieldId(&((C2TestAInfo*)0)->yesNo));
-
- EXPECT_EQ(_C2FieldId(8, 4), _C2FieldId(&((C2TestFlexEndSizeInfo*)0)->m.signed32));
- EXPECT_EQ(_C2FieldId(12, 8), _C2FieldId(&((C2TestFlexEndSizeInfo*)0)->m.mFlexSize));
-
- EXPECT_EQ(_C2FieldId(8, 4), _C2FieldId(&((C2TestFlexEndSizeInfoFromBase*)0)->m.signed32));
- EXPECT_EQ(_C2FieldId(12, 8), _C2FieldId(&((C2TestFlexEndSizeInfoFromBase*)0)->m.mFlexSize));
-
- // member pointer in C2Param
- EXPECT_EQ(_C2FieldId(8, 4), _C2FieldId((C2TestAInfo*)0, &C2TestAInfo::signed32));
- EXPECT_EQ(_C2FieldId(12, 8), _C2FieldId((C2TestAInfo*)0, &C2TestAInfo::signed64));
- EXPECT_EQ(_C2FieldId(28, 4), _C2FieldId((C2TestAInfo*)0, &C2TestAInfo::unsigned32));
- EXPECT_EQ(_C2FieldId(32, 8), _C2FieldId((C2TestAInfo*)0, &C2TestAInfo::unsigned64));
- EXPECT_EQ(_C2FieldId(40, 4), _C2FieldId((C2TestAInfo*)0, &C2TestAInfo::fp32));
- EXPECT_EQ(_C2FieldId(44, 8), _C2FieldId((C2TestAInfo*)0, &C2TestAInfo::sz));
- EXPECT_EQ(_C2FieldId(68, 1), _C2FieldId((C2TestAInfo*)0, &C2TestAInfo::blob));
- EXPECT_EQ(_C2FieldId(168, 1), _C2FieldId((C2TestAInfo*)0, &C2TestAInfo::string));
- EXPECT_EQ(_C2FieldId(268, 1), _C2FieldId((C2TestAInfo*)0, &C2TestAInfo::yesNo));
-
- // NOTE: cannot use a member pointer for flex params due to introduction of 'm'
- // EXPECT_EQ(_C2FieldId(8, 4), _C2FieldId(&C2TestFlexEndSizeInfo::m.signed32));
- // EXPECT_EQ(_C2FieldId(12, 8), _C2FieldId(&C2TestFlexEndSizeInfo::m.mFlexSize));
-
- // EXPECT_EQ(_C2FieldId(8, 4), _C2FieldId(&C2TestFlexEndSizeInfoFromBase::m.signed32));
- // EXPECT_EQ(_C2FieldId(12, 8), _C2FieldId(&C2TestFlexEndSizeInfoFromBase::m.mFlexSize));
-
-
-}
-
-struct S32 {
- template<typename T, class B=typename std::remove_extent<T>::type>
- inline S32(const T*) {
- static_assert(!std::is_array<T>::value, "should not be an array");
- static_assert(std::is_same<B, int32_t>::value, "should be int32_t");
- }
-};
-
-struct FLX {
- template<typename U, typename T, class B=typename std::remove_extent<T>::type>
- inline FLX(const T*, const U*) {
- static_assert(std::is_array<T>::value, "should be an array");
- static_assert(std::extent<T>::value == 0, "should be an array of 0 extent");
- static_assert(std::is_same<B, U>::value, "should be type U");
- }
-};
-
-struct MP {
- template<typename U, typename T, typename ExpectedU, typename UnexpectedU>
- inline MP(T U::*, const ExpectedU*, const UnexpectedU*) {
- static_assert(!std::is_same<U, UnexpectedU>::value, "should not be member pointer of the base type");
- static_assert(std::is_same<U, ExpectedU>::value, "should be member pointer of the derived type");
- }
-
- template<typename U, typename T, typename B, typename D>
- inline MP(T D::*, const D*) { }
-};
-
-void compiledStatic_arrayTypePropagationTest() {
- (void)S32(&((C2TestFlexEndS32Struct *)0)->signed32);
- (void)FLX(&((C2TestFlexEndS32Struct *)0)->mFlexSigned32, (int32_t*)0);
- (void)FLX(&((C2TestFlexS32Struct *)0)->mFlexSigned32, (int32_t*)0);
-
- typedef C2GlobalParam<C2Info, C2TestAStruct> C2TestAInfo;
-
- // TRICKY: &derivedClass::baseMember has type of baseClass::*
- static_assert(std::is_same<decltype(&C2TestAInfo::signed32), int32_t C2TestAStruct::*>::value,
- "base member pointer should have base class in type");
-
- // therefore, member pointer expands to baseClass::* in templates
- (void)MP(&C2TestAInfo::signed32,
- (C2TestAStruct*)0 /* expected */, (C2TestAInfo*)0 /* unexpected */);
- // but can be cast to derivedClass::*
- (void)MP((int32_t C2TestAInfo::*)&C2TestAInfo::signed32,
- (C2TestAInfo*)0 /* expected */, (C2TestAStruct*)0 /* unexpected */);
-
- // TRICKY: baseClass::* does not autoconvert to derivedClass::* even in templates
- // (void)MP(&C2TestAInfo::signed32, (C2TestAInfo*)0);
-}
-
-TEST_F(C2ParamTest, MemberPointerCast) {
- typedef C2GlobalParam<C2Info, C2TestAStruct> C2TestAInfo;
-
- static_assert(offsetof(C2TestAInfo, signed32) == 8, "offset should be 8");
- constexpr int32_t C2TestAStruct::* s32ptr = &C2TestAInfo::signed32;
- constexpr int32_t C2TestAInfo::* s32ptr_derived = (int32_t C2TestAStruct::*)&C2TestAInfo::signed32;
- constexpr int32_t C2TestAInfo::* s32ptr_cast2derived = (int32_t C2TestAInfo::*)s32ptr;
- C2TestAInfo *info = (C2TestAInfo *)256;
- C2TestAStruct *strukt = (C2TestAStruct *)info;
- int32_t *info_s32_derived = &(info->*s32ptr_derived);
- int32_t *info_s32_cast2derived = &(info->*s32ptr_cast2derived);
- int32_t *info_s32 = &(info->*s32ptr);
- int32_t *strukt_s32 = &(strukt->*s32ptr);
-
- EXPECT_EQ(256u, (uintptr_t)info);
- EXPECT_EQ(264u, (uintptr_t)strukt);
- EXPECT_EQ(264u, (uintptr_t)info_s32_derived);
- EXPECT_EQ(264u, (uintptr_t)info_s32_cast2derived);
- EXPECT_EQ(264u, (uintptr_t)info_s32);
- EXPECT_EQ(264u, (uintptr_t)strukt_s32);
-
- typedef C2GlobalParam<C2Info, C2TestFlexEndSizeStruct> C2TestFlexEndSizeInfo;
- static_assert(offsetof(C2TestFlexEndSizeInfo, m.signed32) == 8, "offset should be 8");
- static_assert(offsetof(C2TestFlexEndSizeInfo, m.mFlexSize) == 12, "offset should be 12");
-
- typedef C2GlobalParam<C2Info, C2TestBaseFlexEndSizeStruct, kParamIndexTestFlexEndSize> C2TestFlexEndSizeInfoFromBase;
- static_assert(offsetof(C2TestFlexEndSizeInfoFromBase, m.signed32) == 8, "offset should be 8");
- static_assert(offsetof(C2TestFlexEndSizeInfoFromBase, m.mFlexSize) == 12, "offset should be 12");
-}
-
-/* ===================================== PARAM USAGE TESTS ===================================== */
-
-struct C2NumberStruct {
- int32_t mNumber;
- C2NumberStruct() {}
- C2NumberStruct(int32_t _number) : mNumber(_number) {}
-
- DEFINE_AND_DESCRIBE_C2STRUCT(Number)
- C2FIELD(mNumber, "number")
-};
-
-struct C2NumberBaseStruct {
- int32_t mNumber;
- C2NumberBaseStruct() {}
- C2NumberBaseStruct(int32_t _number) : mNumber(_number) {}
-
- DEFINE_AND_DESCRIBE_BASE_C2STRUCT(NumberBase)
- C2FIELD(mNumber, "number")
-};
-
-struct C2NumbersStruct {
- int32_t mNumbers[];
- C2NumbersStruct() {}
-
- DEFINE_AND_DESCRIBE_FLEX_C2STRUCT(Numbers, mNumbers)
- C2FIELD(mNumbers, "numbers")
-};
-static_assert(sizeof(C2NumbersStruct) == 0, "C2NumbersStruct has incorrect size");
-
-typedef C2GlobalParam<C2Info, C2NumberStruct> C2NumberInfo;
-
-typedef C2GlobalParam<C2Tuning, C2NumberStruct> C2NumberTuning;
-typedef C2PortParam<C2Tuning, C2NumberStruct> C2NumberPortTuning;
-typedef C2StreamParam<C2Tuning, C2NumberStruct> C2NumberStreamTuning;
-
-typedef C2GlobalParam<C2Tuning, C2NumbersStruct> C2NumbersTuning;
-typedef C2PortParam<C2Tuning, C2NumbersStruct> C2NumbersPortTuning;
-typedef C2StreamParam<C2Tuning, C2NumbersStruct> C2NumbersStreamTuning;
-
-//
-#if 0
-
-void test() {
- C2NumberStruct s(10);
- (void)C2NumberStruct::FieldList();
-};
-
-typedef C2StreamParam<C2Tuning, C2Int64Value, kParamIndexNumberB> C2NumberConfig4;
-typedef C2PortParam<C2Tuning, C2Int32Value, kParamIndexNumber> C2NumberConfig3;
-typedef C2GlobalParam<C2Tuning, C2StringValue, kParamIndexNumber> C2VideoNameConfig;
-
-void test3() {
- C2NumberConfig3 s(10);
- s.value = 11;
- s = 12;
- (void)C2NumberConfig3::FieldList();
- std::shared_ptr<C2VideoNameConfig> n = C2VideoNameConfig::AllocShared(25);
- strcpy(n->m.value, "lajos");
- C2NumberConfig4 t(false, 0, 11);
- t.value = 15;
-};
-
-struct C2NumbersStruct {
- int32_t mNumbers[];
- enum { CORE_INDEX = kParamIndexNumber };
- const static std::vector<C2FieldDescriptor> FieldList();
- static const std::vector<C2FieldDescriptor> FieldList();
- C2NumbersStruct() {}
-
- FLEX(C2NumbersStruct, mNumbers);
-};
-
-static_assert(sizeof(C2NumbersStruct) == 0, "yes");
-
-
-typedef C2GlobalParam<C2Info, C2NumbersStruct> C2NumbersInfo;
-
-const std::vector<C2FieldDescriptor> C2NumbersStruct::FieldList() {
- return _FIELD_LIST;
-}
-const std::vector<C2FieldDescriptor> C2NumbersStruct::_FIELD_LIST =
-// { { FD::INT32, 0, "widths" } };
- { C2FieldDescriptor(&((C2NumbersStruct*)(nullptr))->mNumbers, "number") };
-
-typedef C2PortParam<C2Tuning, C2NumberStruct> C2NumberConfig;
-
-std::vector<C2FieldDescriptor> myList = C2NumberConfig::FieldList();
-
- std::unique_ptr<C2ParamDescriptor> __test_describe(uint32_t paramType) {
- std::list<C2FieldDescriptor> fields = describeC2Params<C2NumberConfig>();
-
- auto widths = C2NumbersInfo::AllocShared(5);
- widths->flexCount();
- widths->m.mNumbers[4] = 1;
-
- test();
- test3();
-
- C2NumberConfig outputWidth(false, 123);
-
- C2Param::Index index(paramType);
- switch (paramType) {
- case C2NumberConfig::CORE_INDEX:
- return std::unique_ptr<C2ParamDescriptor>(new C2ParamDescriptor{
- true /* isRequired */,
- "number",
- index,
- });
- }
- return nullptr;
- }
-
-
-} // namespace android
-
-#endif
-//
-
-template<typename T>
-bool canSetPort(T &o, bool output) { return o.setPort(output); }
-bool canSetPort(...) { return false; }
-
-template<typename S, typename=decltype(((S*)0)->setPort(true))>
-static std::true_type _canCallSetPort(int);
-template<typename>
-static std::false_type _canCallSetPort(...);
-#define canCallSetPort(x) decltype(_canCallSetPort<std::remove_reference<decltype(x)>::type>(0))::value
-
-/* ======================================= STATIC TESTS ======================================= */
-
-static_assert(_C2Comparable<int>::value, "int is not comparable");
-static_assert(!_C2Comparable<void>::value, "void is comparable");
-
-struct C2_HIDE _test0 {
- bool operator==(const _test0&);
- bool operator!=(const _test0&);
-};
-struct C2_HIDE _test1 {
- bool operator==(const _test1&);
-};
-struct C2_HIDE _test2 {
- bool operator!=(const _test2&);
-};
-static_assert(_C2Comparable<_test0>::value, "class with == and != is not comparable");
-static_assert(_C2Comparable<_test1>::value, "class with == is not comparable");
-static_assert(_C2Comparable<_test2>::value, "class with != is not comparable");
-
-/* ======================================= C2PARAM TESTS ======================================= */
-
-struct _C2ParamInspector {
- static void StaticTest();
- static void StaticFromBaseTest();
- static void StaticFlexTest();
- static void StaticFlexFromBaseTest();
-};
-
-// TEST_F(_C2ParamInspector, StaticTest) {
-void _C2ParamInspector::StaticTest() {
- typedef C2Param::Index I;
-
- // C2NumberStruct: CORE_INDEX = kIndex (args)
- static_assert(C2NumberStruct::CORE_INDEX == kParamIndexNumber, "bad index");
- static_assert(sizeof(C2NumberStruct) == 4, "bad size");
-
- // C2NumberTuning: kIndex | tun | global (args)
- static_assert(C2NumberTuning::CORE_INDEX == kParamIndexNumber, "bad index");
- static_assert(C2NumberTuning::PARAM_TYPE == (kParamIndexNumber | I::KIND_TUNING | I::DIR_GLOBAL), "bad index");
- static_assert(sizeof(C2NumberTuning) == 12, "bad size");
-
- static_assert(offsetof(C2NumberTuning, _mSize) == 0, "bad size");
- static_assert(offsetof(C2NumberTuning, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2NumberTuning, mNumber) == 8, "bad offset");
-
- // C2NumberPortTuning: kIndex | tun | port (bool, args)
- static_assert(sizeof(C2NumberPortTuning) == 12, "bad size");
- // C2NumberPortTuning::input: kIndex | tun | port | input (args)
- // C2NumberPortTuning::output: kIndex | tun | port | output (args)
- static_assert(C2NumberPortTuning::input::CORE_INDEX ==
- kParamIndexNumber, "bad index");
- static_assert(C2NumberPortTuning::input::PARAM_TYPE ==
- (kParamIndexNumber | I::KIND_TUNING | I::DIR_INPUT), "bad index");
- static_assert(C2NumberPortTuning::output::CORE_INDEX ==
- kParamIndexNumber, "bad index");
- static_assert(C2NumberPortTuning::output::PARAM_TYPE ==
- (kParamIndexNumber | I::KIND_TUNING | I::DIR_OUTPUT), "bad index");
- static_assert(sizeof(C2NumberPortTuning::input) == 12, "bad size");
- static_assert(sizeof(C2NumberPortTuning::output) == 12, "bad size");
- static_assert(offsetof(C2NumberPortTuning::input, _mSize) == 0, "bad size");
- static_assert(offsetof(C2NumberPortTuning::input, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2NumberPortTuning::input, mNumber) == 8, "bad offset");
- static_assert(offsetof(C2NumberPortTuning::output, _mSize) == 0, "bad size");
- static_assert(offsetof(C2NumberPortTuning::output, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2NumberPortTuning::output, mNumber) == 8, "bad offset");
-
- // C2NumberStreamTuning: kIndex | tun | str (bool, uint, args)
- static_assert(sizeof(C2NumberStreamTuning) == 12u, "bad size");
- // C2NumberStreamTuning::input kIndex | tun | str | input (int, args)
- // C2NumberStreamTuning::output kIx | tun | str | output (int, args)
- static_assert(C2NumberStreamTuning::input::CORE_INDEX ==
- kParamIndexNumber, "bad index");
- static_assert(C2NumberStreamTuning::input::PARAM_TYPE ==
- (kParamIndexNumber | I::KIND_TUNING | I::DIR_INPUT | I::IS_STREAM_FLAG), "bad index");
- static_assert(C2NumberStreamTuning::output::CORE_INDEX ==
- kParamIndexNumber, "bad index");
- static_assert(C2NumberStreamTuning::output::PARAM_TYPE ==
- (kParamIndexNumber | I::KIND_TUNING | I::DIR_OUTPUT | I::IS_STREAM_FLAG), "bad index");
- static_assert(sizeof(C2NumberStreamTuning::input) == 12u, "bad size");
- static_assert(sizeof(C2NumberStreamTuning::output) == 12u, "bad size");
- static_assert(offsetof(C2NumberStreamTuning::input, _mSize) == 0, "bad size");
- static_assert(offsetof(C2NumberStreamTuning::input, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2NumberStreamTuning::input, mNumber) == 8, "bad offset");
- static_assert(offsetof(C2NumberStreamTuning::output, _mSize) == 0, "bad size");
- static_assert(offsetof(C2NumberStreamTuning::output, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2NumberStreamTuning::output, mNumber) == 8, "bad offset");
-}
-
-void _C2ParamInspector::StaticFromBaseTest() {
- enum { kParamIndexMy = 3102 };
- typedef C2NumberBaseStruct C2MyStruct;
- typedef C2GlobalParam<C2Setting, C2MyStruct, kParamIndexMy> C2MySetting;
- typedef C2PortParam<C2Setting, C2MyStruct, kParamIndexMy> C2MyPortSetting;
- typedef C2StreamParam<C2Setting, C2MyStruct, kParamIndexMy> C2MyStreamSetting;
-
- typedef C2Param::Index I;
-
- // C2MyStruct has no CORE_INDEX
- //static_assert(C2MyStruct::CORE_INDEX == kParamIndexMy, "bad index");
- static_assert(sizeof(C2MyStruct) == 4, "bad size");
-
- // C2MySetting: kIndex | tun | global (args)
- static_assert(C2MySetting::CORE_INDEX == kParamIndexMy, "bad index");
- static_assert(C2MySetting::PARAM_TYPE == (kParamIndexMy | I::KIND_SETTING | I::DIR_GLOBAL), "bad index");
- static_assert(sizeof(C2MySetting) == 12, "bad size");
-
- static_assert(offsetof(C2MySetting, _mSize) == 0, "bad size");
- static_assert(offsetof(C2MySetting, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2MySetting, mNumber) == 8, "bad offset");
-
- // C2MyPortSetting: kIndex | tun | port (bool, args)
- static_assert(sizeof(C2MyPortSetting) == 12, "bad size");
- // C2MyPortSetting::input: kIndex | tun | port | input (args)
- // C2MyPortSetting::output: kIndex | tun | port | output (args)
- static_assert(C2MyPortSetting::input::CORE_INDEX ==
- kParamIndexMy, "bad index");
- static_assert(C2MyPortSetting::input::PARAM_TYPE ==
- (kParamIndexMy | I::KIND_SETTING | I::DIR_INPUT), "bad index");
- static_assert(C2MyPortSetting::output::CORE_INDEX ==
- kParamIndexMy, "bad index");
- static_assert(C2MyPortSetting::output::PARAM_TYPE ==
- (kParamIndexMy | I::KIND_SETTING | I::DIR_OUTPUT), "bad index");
- static_assert(sizeof(C2MyPortSetting::input) == 12, "bad size");
- static_assert(sizeof(C2MyPortSetting::output) == 12, "bad size");
- static_assert(offsetof(C2MyPortSetting::input, _mSize) == 0, "bad size");
- static_assert(offsetof(C2MyPortSetting::input, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2MyPortSetting::input, mNumber) == 8, "bad offset");
- static_assert(offsetof(C2MyPortSetting::output, _mSize) == 0, "bad size");
- static_assert(offsetof(C2MyPortSetting::output, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2MyPortSetting::output, mNumber) == 8, "bad offset");
-
- // C2MyStreamSetting: kIndex | tun | str (bool, uint, args)
- static_assert(sizeof(C2MyStreamSetting) == 12u, "bad size");
- // C2MyStreamSetting::input kIndex | tun | str | input (int, args)
- // C2MyStreamSetting::output kIx | tun | str | output (int, args)
- static_assert(C2MyStreamSetting::input::CORE_INDEX ==
- kParamIndexMy, "bad index");
- static_assert(C2MyStreamSetting::input::PARAM_TYPE ==
- (kParamIndexMy | I::KIND_SETTING | I::DIR_INPUT | I::IS_STREAM_FLAG), "bad index");
- static_assert(C2MyStreamSetting::output::CORE_INDEX ==
- kParamIndexMy, "bad index");
- static_assert(C2MyStreamSetting::output::PARAM_TYPE ==
- (kParamIndexMy | I::KIND_SETTING | I::DIR_OUTPUT | I::IS_STREAM_FLAG), "bad index");
- static_assert(sizeof(C2MyStreamSetting::input) == 12u, "bad size");
- static_assert(sizeof(C2MyStreamSetting::output) == 12u, "bad size");
- static_assert(offsetof(C2MyStreamSetting::input, _mSize) == 0, "bad size");
- static_assert(offsetof(C2MyStreamSetting::input, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2MyStreamSetting::input, mNumber) == 8, "bad offset");
- static_assert(offsetof(C2MyStreamSetting::output, _mSize) == 0, "bad size");
- static_assert(offsetof(C2MyStreamSetting::output, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2MyStreamSetting::output, mNumber) == 8, "bad offset");
-}
-
-void _C2ParamInspector::StaticFlexTest() {
- typedef C2Param::Index I;
-
- // C2NumbersStruct: CORE_INDEX = kIndex (args)
- static_assert(C2NumbersStruct::CORE_INDEX == (I::IS_FLEX_FLAG | kParamIndexNumbers), "bad index");
- static_assert(sizeof(C2NumbersStruct) == 0, "bad size");
-
- // C2NumbersTuning: kIndex | tun | global (args)
- static_assert(C2NumbersTuning::CORE_INDEX == (I::IS_FLEX_FLAG | kParamIndexNumbers), "bad index");
- static_assert(C2NumbersTuning::PARAM_TYPE == (I::IS_FLEX_FLAG | kParamIndexNumbers | I::KIND_TUNING | I::DIR_GLOBAL), "bad index");
- static_assert(sizeof(C2NumbersTuning) == 8, "bad size");
-
- static_assert(offsetof(C2NumbersTuning, _mSize) == 0, "bad size");
- static_assert(offsetof(C2NumbersTuning, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2NumbersTuning, m.mNumbers) == 8, "bad offset");
-
- // C2NumbersPortTuning: kIndex | tun | port (bool, args)
- static_assert(sizeof(C2NumbersPortTuning) == 8, "bad size");
- // C2NumbersPortTuning::input: kIndex | tun | port | input (args)
- // C2NumbersPortTuning::output: kIndex | tun | port | output (args)
- static_assert(C2NumbersPortTuning::input::CORE_INDEX ==
- (I::IS_FLEX_FLAG | kParamIndexNumbers), "bad index");
- static_assert(C2NumbersPortTuning::input::PARAM_TYPE ==
- (I::IS_FLEX_FLAG | kParamIndexNumbers | I::KIND_TUNING | I::DIR_INPUT), "bad index");
- static_assert(C2NumbersPortTuning::output::CORE_INDEX ==
- (I::IS_FLEX_FLAG | kParamIndexNumbers), "bad index");
- static_assert(C2NumbersPortTuning::output::PARAM_TYPE ==
- (I::IS_FLEX_FLAG | kParamIndexNumbers | I::KIND_TUNING | I::DIR_OUTPUT), "bad index");
- static_assert(sizeof(C2NumbersPortTuning::input) == 8, "bad size");
- static_assert(sizeof(C2NumbersPortTuning::output) == 8, "bad size");
- static_assert(offsetof(C2NumbersPortTuning::input, _mSize) == 0, "bad size");
- static_assert(offsetof(C2NumbersPortTuning::input, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2NumbersPortTuning::input, m.mNumbers) == 8, "bad offset");
- static_assert(offsetof(C2NumbersPortTuning::output, _mSize) == 0, "bad size");
- static_assert(offsetof(C2NumbersPortTuning::output, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2NumbersPortTuning::output, m.mNumbers) == 8, "bad offset");
-
- // C2NumbersStreamTuning: kIndex | tun | str (bool, uint, args)
- static_assert(sizeof(C2NumbersStreamTuning) == 8, "bad size");
- // C2NumbersStreamTuning::input kIndex | tun | str | input (int, args)
- // C2NumbersStreamTuning::output kIx | tun | str | output (int, args)
- static_assert(C2NumbersStreamTuning::input::CORE_INDEX ==
- (I::IS_FLEX_FLAG | kParamIndexNumbers), "bad index");
- static_assert(C2NumbersStreamTuning::input::PARAM_TYPE ==
- (I::IS_FLEX_FLAG | kParamIndexNumbers | I::KIND_TUNING | I::DIR_INPUT | I::IS_STREAM_FLAG), "bad index");
- static_assert(C2NumbersStreamTuning::output::CORE_INDEX ==
- (I::IS_FLEX_FLAG | kParamIndexNumbers), "bad index");
- static_assert(C2NumbersStreamTuning::output::PARAM_TYPE ==
- (I::IS_FLEX_FLAG | kParamIndexNumbers | I::KIND_TUNING | I::DIR_OUTPUT | I::IS_STREAM_FLAG), "bad index");
- static_assert(sizeof(C2NumbersStreamTuning::input) == 8, "bad size");
- static_assert(sizeof(C2NumbersStreamTuning::output) == 8, "bad size");
- static_assert(offsetof(C2NumbersStreamTuning::input, _mSize) == 0, "bad size");
- static_assert(offsetof(C2NumbersStreamTuning::input, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2NumbersStreamTuning::input, m.mNumbers) == 8, "bad offset");
- static_assert(offsetof(C2NumbersStreamTuning::output, _mSize) == 0, "bad size");
- static_assert(offsetof(C2NumbersStreamTuning::output, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2NumbersStreamTuning::output, m.mNumbers) == 8, "bad offset");
-}
-
-template<bool, unsigned ...N>
-struct _print_as_warning { };
-
-template<unsigned ...N>
-struct _print_as_warning<true, N...> : std::true_type { };
-
-#define static_assert_equals(a, b, msg) \
-static_assert(_print_as_warning<(a) == (b), a, b>::value, msg)
-
-void _C2ParamInspector::StaticFlexFromBaseTest() {
- enum { kParamIndexMy = 1203 };
- typedef C2TestBaseFlexEndSizeStruct C2MyStruct;
- typedef C2GlobalParam<C2Info, C2MyStruct, kParamIndexMy> C2MyInfo;
- typedef C2PortParam<C2Info, C2MyStruct, kParamIndexMy> C2MyPortInfo;
- typedef C2StreamParam<C2Info, C2MyStruct, kParamIndexMy> C2MyStreamInfo;
-
- typedef C2Param::Index I;
-
- // C2MyStruct has no CORE_INDEX
- //static_assert(C2MyStruct::CORE_INDEX == (I::IS_FLEX_FLAG | kParamIndexMy), "bad index");
- static_assert(sizeof(C2MyStruct) == 4, "bad size");
-
- // C2MyInfo: kIndex | tun | global (args)
- static_assert_equals(C2MyInfo::CORE_INDEX, (I::IS_FLEX_FLAG | kParamIndexMy), "bad index");
- static_assert_equals(C2MyInfo::PARAM_TYPE, (I::IS_FLEX_FLAG | kParamIndexMy | I::KIND_INFO | I::DIR_GLOBAL), "bad index");
- static_assert(sizeof(C2MyInfo) == 12, "bad size");
-
- static_assert(offsetof(C2MyInfo, _mSize) == 0, "bad size");
- static_assert(offsetof(C2MyInfo, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2MyInfo, m.signed32) == 8, "bad offset");
-
- // C2MyPortInfo: kIndex | tun | port (bool, args)
- static_assert(sizeof(C2MyPortInfo) == 12, "bad size");
- // C2MyPortInfo::input: kIndex | tun | port | input (args)
- // C2MyPortInfo::output: kIndex | tun | port | output (args)
- static_assert(C2MyPortInfo::input::CORE_INDEX ==
- (I::IS_FLEX_FLAG | kParamIndexMy), "bad index");
- static_assert(C2MyPortInfo::input::PARAM_TYPE ==
- (I::IS_FLEX_FLAG | kParamIndexMy | I::KIND_INFO | I::DIR_INPUT), "bad index");
- static_assert(C2MyPortInfo::output::CORE_INDEX ==
- (I::IS_FLEX_FLAG | kParamIndexMy), "bad index");
- static_assert(C2MyPortInfo::output::PARAM_TYPE ==
- (I::IS_FLEX_FLAG | kParamIndexMy | I::KIND_INFO | I::DIR_OUTPUT), "bad index");
- static_assert(sizeof(C2MyPortInfo::input) == 12, "bad size");
- static_assert(sizeof(C2MyPortInfo::output) == 12, "bad size");
- static_assert(offsetof(C2MyPortInfo::input, _mSize) == 0, "bad size");
- static_assert(offsetof(C2MyPortInfo::input, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2MyPortInfo::input, m.signed32) == 8, "bad offset");
- static_assert(offsetof(C2MyPortInfo::output, _mSize) == 0, "bad size");
- static_assert(offsetof(C2MyPortInfo::output, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2MyPortInfo::output, m.signed32) == 8, "bad offset");
-
- // C2MyStreamInfo: kIndex | tun | str (bool, uint, args)
- static_assert(sizeof(C2MyStreamInfo) == 12, "bad size");
- // C2MyStreamInfo::input kIndex | tun | str | input (int, args)
- // C2MyStreamInfo::output kIx | tun | str | output (int, args)
- static_assert(C2MyStreamInfo::input::CORE_INDEX ==
- (I::IS_FLEX_FLAG | kParamIndexMy), "bad index");
- static_assert(C2MyStreamInfo::input::PARAM_TYPE ==
- (I::IS_FLEX_FLAG | kParamIndexMy | I::KIND_INFO | I::DIR_INPUT | I::IS_STREAM_FLAG), "bad index");
- static_assert(C2MyStreamInfo::output::CORE_INDEX ==
- (I::IS_FLEX_FLAG | kParamIndexMy), "bad index");
- static_assert(C2MyStreamInfo::output::PARAM_TYPE ==
- (I::IS_FLEX_FLAG | kParamIndexMy | I::KIND_INFO | I::DIR_OUTPUT | I::IS_STREAM_FLAG), "bad index");
- static_assert(sizeof(C2MyStreamInfo::input) == 12, "bad size");
- static_assert(sizeof(C2MyStreamInfo::output) == 12, "bad size");
- static_assert(offsetof(C2MyStreamInfo::input, _mSize) == 0, "bad size");
- static_assert(offsetof(C2MyStreamInfo::input, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2MyStreamInfo::input, m.signed32) == 8, "bad offset");
- static_assert(offsetof(C2MyStreamInfo::output, _mSize) == 0, "bad size");
- static_assert(offsetof(C2MyStreamInfo::output, _mIndex) == 4, "bad offset");
- static_assert(offsetof(C2MyStreamInfo::output, m.signed32) == 8, "bad offset");
-}
-
-TEST_F(C2ParamTest, ParamOpsTest) {
- const C2NumberStruct str(100);
- C2NumberStruct bstr;
-
- {
- EXPECT_EQ(100, str.mNumber);
- bstr.mNumber = 100;
-
- C2Param::CoreIndex index = C2NumberStruct::CORE_INDEX;
- EXPECT_FALSE(index.isVendor());
- EXPECT_FALSE(index.isFlexible());
- EXPECT_EQ(index.coreIndex(), kParamIndexNumber);
- EXPECT_EQ(index.typeIndex(), kParamIndexNumber);
- }
-
- const C2NumberTuning tun(100);
- C2NumberTuning btun;
-
- {
- C2NumberInfo inf(100);
- std::unique_ptr<C2NumbersTuning> tun_ = C2NumbersTuning::AllocUnique(1);
-
- EXPECT_EQ(tun.coreIndex(), inf.coreIndex());
- EXPECT_NE(tun.coreIndex(), tun_->coreIndex());
- EXPECT_NE(tun.type(), inf.type());
- EXPECT_NE(tun.type(), tun_->type());
- }
-
- {
- // flags & invariables
- for (const auto &p : { tun, btun }) {
- EXPECT_TRUE((bool)p);
- EXPECT_FALSE(!p);
- EXPECT_EQ(12u, p.size());
-
- EXPECT_FALSE(p.isVendor());
- EXPECT_FALSE(p.isFlexible());
- EXPECT_TRUE(p.isGlobal());
- EXPECT_FALSE(p.forInput());
- EXPECT_FALSE(p.forOutput());
- EXPECT_FALSE(p.forStream());
- EXPECT_FALSE(p.forPort());
- }
-
- // value
- EXPECT_EQ(100, tun.mNumber);
- EXPECT_EQ(0, btun.mNumber);
- EXPECT_FALSE(tun == btun);
- EXPECT_FALSE(tun.operator==(btun));
- EXPECT_TRUE(tun != btun);
- EXPECT_TRUE(tun.operator!=(btun));
- btun.mNumber = 100;
- EXPECT_EQ(tun, btun);
-
- // index
- EXPECT_EQ(C2Param::Type(tun.type()).coreIndex(), C2NumberStruct::CORE_INDEX);
- EXPECT_EQ(C2Param::Type(tun.type()).typeIndex(), kParamIndexNumber);
- EXPECT_EQ(tun.type(), C2NumberTuning::PARAM_TYPE);
- EXPECT_EQ(tun.stream(), ~0u);
-
- C2Param::CoreIndex index = C2NumberTuning::CORE_INDEX;
- EXPECT_FALSE(index.isVendor());
- EXPECT_FALSE(index.isFlexible());
- EXPECT_EQ(index.coreIndex(), kParamIndexNumber);
- EXPECT_EQ(index.typeIndex(), kParamIndexNumber);
-
- C2Param::Type type = C2NumberTuning::PARAM_TYPE;
- EXPECT_FALSE(type.isVendor());
- EXPECT_FALSE(type.isFlexible());
- EXPECT_TRUE(type.isGlobal());
- EXPECT_FALSE(type.forInput());
- EXPECT_FALSE(type.forOutput());
- EXPECT_FALSE(type.forStream());
- EXPECT_FALSE(type.forPort());
-
- EXPECT_EQ(C2NumberTuning::From(nullptr), nullptr);
- EXPECT_EQ(C2NumberTuning::From(&tun), &tun);
- EXPECT_EQ(C2NumberPortTuning::From(&tun), nullptr);
- EXPECT_EQ(C2NumberPortTuning::input::From(&tun), nullptr);
- EXPECT_EQ(C2NumberPortTuning::output::From(&tun), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::From(&tun), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::input::From(&tun), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::output::From(&tun), nullptr);
-
- EXPECT_EQ(*(C2Param::Copy(btun)), btun);
- btun.invalidate();
- EXPECT_FALSE(C2Param::Copy(btun));
- }
-
- const C2NumberPortTuning outp1(true, 100), inp1(false, 100);
- C2NumberPortTuning boutp1, binp1, binp3(false, 100);
- const C2NumberPortTuning::input inp2(100);
- C2NumberPortTuning::input binp2;
- const C2NumberPortTuning::output outp2(100);
- C2NumberPortTuning::output boutp2;
-
- EXPECT_EQ(inp1.coreIndex(), tun.coreIndex());
- EXPECT_EQ(outp1.coreIndex(), tun.coreIndex());
- EXPECT_EQ(binp1.coreIndex(), tun.coreIndex());
- EXPECT_EQ(boutp1.coreIndex(), tun.coreIndex());
- EXPECT_EQ(inp2.coreIndex(), tun.coreIndex());
- EXPECT_EQ(outp2.coreIndex(), tun.coreIndex());
-
- EXPECT_EQ(inp1.type(), inp2.type());
- EXPECT_EQ(outp1.type(), outp2.type());
- EXPECT_NE(inp1.type(), outp1.type());
- EXPECT_NE(inp2.type(), outp2.type());
- EXPECT_NE(inp1.type(), binp1.type());
- EXPECT_NE(outp1.type(), boutp1.type());
- EXPECT_NE(inp1.type(), tun.type());
- EXPECT_NE(inp2.type(), tun.type());
-
- {
- static_assert(canCallSetPort(binp3), "should be able to");
- static_assert(canCallSetPort(binp1), "should be able to");
- static_assert(!canCallSetPort(inp1), "should not be able to (const)");
- static_assert(!canCallSetPort(inp2), "should not be able to (const & type)");
- static_assert(!canCallSetPort(binp2), "should not be able to (type)");
-
- // flags & invariables
- for (const auto &p : { outp1, inp1, boutp1 }) {
- EXPECT_EQ(12u, p.size());
- EXPECT_FALSE(p.isVendor());
- EXPECT_FALSE(p.isFlexible());
- EXPECT_FALSE(p.isGlobal());
- EXPECT_FALSE(p.forStream());
- EXPECT_TRUE(p.forPort());
- }
- for (const auto &p : { inp2, binp2 }) {
- EXPECT_EQ(12u, p.size());
- EXPECT_FALSE(p.isVendor());
- EXPECT_FALSE(p.isFlexible());
- EXPECT_FALSE(p.isGlobal());
- EXPECT_FALSE(p.forStream());
- EXPECT_TRUE(p.forPort());
- }
- for (const auto &p : { outp2, boutp2 }) {
- EXPECT_EQ(12u, p.size());
- EXPECT_FALSE(p.isVendor());
- EXPECT_FALSE(p.isFlexible());
- EXPECT_FALSE(p.isGlobal());
- EXPECT_FALSE(p.forStream());
- EXPECT_TRUE(p.forPort());
- }
-
- // port specific flags & invariables
- EXPECT_FALSE(outp1.forInput());
- EXPECT_TRUE(outp1.forOutput());
-
- EXPECT_TRUE(inp1.forInput());
- EXPECT_FALSE(inp1.forOutput());
-
- for (const auto &p : { outp1, inp1 }) {
- EXPECT_TRUE((bool)p);
- EXPECT_FALSE(!p);
- EXPECT_EQ(100, p.mNumber);
- }
- for (const auto &p : { outp2, boutp2 }) {
- EXPECT_TRUE((bool)p);
- EXPECT_FALSE(!p);
-
- EXPECT_FALSE(p.forInput());
- EXPECT_TRUE(p.forOutput());
- }
- for (const auto &p : { inp2, binp2 }) {
- EXPECT_TRUE((bool)p);
- EXPECT_FALSE(!p);
-
- EXPECT_TRUE(p.forInput());
- EXPECT_FALSE(p.forOutput());
- }
- for (const auto &p : { boutp1 } ) {
- EXPECT_FALSE((bool)p);
- EXPECT_TRUE(!p);
-
- EXPECT_FALSE(p.forInput());
- EXPECT_FALSE(p.forOutput());
- EXPECT_EQ(0, p.mNumber);
- }
-
- // values
- EXPECT_EQ(100, inp2.mNumber);
- EXPECT_EQ(100, outp2.mNumber);
- EXPECT_EQ(0, binp1.mNumber);
- EXPECT_EQ(0, binp2.mNumber);
- EXPECT_EQ(0, boutp1.mNumber);
- EXPECT_EQ(0, boutp2.mNumber);
-
- EXPECT_TRUE(inp1 != outp1);
- EXPECT_TRUE(inp1 == inp2);
- EXPECT_TRUE(outp1 == outp2);
- EXPECT_TRUE(binp1 == boutp1);
- EXPECT_TRUE(binp2 != boutp2);
-
- EXPECT_TRUE(inp1 != binp1);
- binp1.mNumber = 100;
- EXPECT_TRUE(inp1 != binp1);
- binp1.setPort(false /* output */);
- EXPECT_TRUE((bool)binp1);
- EXPECT_FALSE(!binp1);
- EXPECT_TRUE(inp1 == binp1);
-
- EXPECT_TRUE(inp2 != binp2);
- binp2.mNumber = 100;
- EXPECT_TRUE(inp2 == binp2);
-
- binp1.setPort(true /* output */);
- EXPECT_TRUE(outp1 == binp1);
-
- EXPECT_TRUE(outp1 != boutp1);
- boutp1.mNumber = 100;
- EXPECT_TRUE(outp1 != boutp1);
- boutp1.setPort(true /* output */);
- EXPECT_TRUE((bool)boutp1);
- EXPECT_FALSE(!boutp1);
- EXPECT_TRUE(outp1 == boutp1);
-
- EXPECT_TRUE(outp2 != boutp2);
- boutp2.mNumber = 100;
- EXPECT_TRUE(outp2 == boutp2);
-
- boutp1.setPort(false /* output */);
- EXPECT_TRUE(inp1 == boutp1);
-
- // index
- EXPECT_EQ(C2Param::Type(inp1.type()).coreIndex(), C2NumberStruct::CORE_INDEX);
- EXPECT_EQ(C2Param::Type(inp1.type()).typeIndex(), kParamIndexNumber);
- EXPECT_EQ(inp1.type(), C2NumberPortTuning::input::PARAM_TYPE);
- EXPECT_EQ(inp1.stream(), ~0u);
-
- EXPECT_EQ(C2Param::Type(inp2.type()).coreIndex(), C2NumberStruct::CORE_INDEX);
- EXPECT_EQ(C2Param::Type(inp2.type()).typeIndex(), kParamIndexNumber);
- EXPECT_EQ(inp2.type(), C2NumberPortTuning::input::PARAM_TYPE);
- EXPECT_EQ(inp2.stream(), ~0u);
-
- EXPECT_EQ(C2Param::Type(outp1.type()).coreIndex(), C2NumberStruct::CORE_INDEX);
- EXPECT_EQ(C2Param::Type(outp1.type()).typeIndex(), kParamIndexNumber);
- EXPECT_EQ(outp1.type(), C2NumberPortTuning::output::PARAM_TYPE);
- EXPECT_EQ(outp1.stream(), ~0u);
-
- EXPECT_EQ(C2Param::Type(outp2.type()).coreIndex(), C2NumberStruct::CORE_INDEX);
- EXPECT_EQ(C2Param::Type(outp2.type()).typeIndex(), kParamIndexNumber);
- EXPECT_EQ(outp2.type(), C2NumberPortTuning::output::PARAM_TYPE);
- EXPECT_EQ(outp2.stream(), ~0u);
-
- C2Param::CoreIndex index = C2NumberPortTuning::input::PARAM_TYPE;
- EXPECT_FALSE(index.isVendor());
- EXPECT_FALSE(index.isFlexible());
- EXPECT_EQ(index.coreIndex(), kParamIndexNumber);
- EXPECT_EQ(index.typeIndex(), kParamIndexNumber);
-
- index = C2NumberPortTuning::output::PARAM_TYPE;
- EXPECT_FALSE(index.isVendor());
- EXPECT_FALSE(index.isFlexible());
- EXPECT_EQ(index.coreIndex(), kParamIndexNumber);
- EXPECT_EQ(index.typeIndex(), kParamIndexNumber);
-
- C2Param::Type type = C2NumberPortTuning::input::PARAM_TYPE;
- EXPECT_FALSE(type.isVendor());
- EXPECT_FALSE(type.isFlexible());
- EXPECT_FALSE(type.isGlobal());
- EXPECT_TRUE(type.forInput());
- EXPECT_FALSE(type.forOutput());
- EXPECT_FALSE(type.forStream());
- EXPECT_TRUE(type.forPort());
-
- type = C2NumberPortTuning::output::PARAM_TYPE;
- EXPECT_FALSE(type.isVendor());
- EXPECT_FALSE(type.isFlexible());
- EXPECT_FALSE(type.isGlobal());
- EXPECT_FALSE(type.forInput());
- EXPECT_TRUE(type.forOutput());
- EXPECT_FALSE(type.forStream());
- EXPECT_TRUE(type.forPort());
-
- EXPECT_EQ(C2NumberPortTuning::From(nullptr), nullptr);
- EXPECT_EQ(C2NumberPortTuning::input::From(nullptr), nullptr);
- EXPECT_EQ(C2NumberPortTuning::output::From(nullptr), nullptr);
- EXPECT_EQ(C2NumberTuning::From(&inp1), nullptr);
- EXPECT_EQ(C2NumberTuning::From(&inp2), nullptr);
- EXPECT_EQ(C2NumberTuning::From(&outp1), nullptr);
- EXPECT_EQ(C2NumberTuning::From(&outp2), nullptr);
- EXPECT_EQ(C2NumberPortTuning::From(&inp1), &inp1);
- EXPECT_EQ(C2NumberPortTuning::From(&inp2), (C2NumberPortTuning*)&inp2);
- EXPECT_EQ(C2NumberPortTuning::From(&outp1), &outp1);
- EXPECT_EQ(C2NumberPortTuning::From(&outp2), (C2NumberPortTuning*)&outp2);
- EXPECT_EQ(C2NumberPortTuning::input::From(&inp1), (C2NumberPortTuning::input*)&inp1);
- EXPECT_EQ(C2NumberPortTuning::input::From(&inp2), &inp2);
- EXPECT_EQ(C2NumberPortTuning::input::From(&outp1), nullptr);
- EXPECT_EQ(C2NumberPortTuning::input::From(&outp2), nullptr);
- EXPECT_EQ(C2NumberPortTuning::output::From(&inp1), nullptr);
- EXPECT_EQ(C2NumberPortTuning::output::From(&inp2), nullptr);
- EXPECT_EQ(C2NumberPortTuning::output::From(&outp1), (C2NumberPortTuning::output*)&outp1);
- EXPECT_EQ(C2NumberPortTuning::output::From(&outp2), &outp2);
- EXPECT_EQ(C2NumberStreamTuning::From(&inp1), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::From(&inp2), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::From(&outp1), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::From(&outp2), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::input::From(&inp1), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::input::From(&inp2), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::input::From(&outp1), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::input::From(&outp2), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::output::From(&inp1), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::output::From(&inp2), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::output::From(&outp1), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::output::From(&outp2), nullptr);
-
- EXPECT_EQ(*(C2Param::Copy(inp1)), inp1);
- EXPECT_EQ(*(C2Param::Copy(inp2)), inp2);
- EXPECT_EQ(*(C2Param::Copy(outp1)), outp1);
- EXPECT_EQ(*(C2Param::Copy(outp2)), outp2);
- }
-
- const C2NumberStreamTuning outs1(true, 1u, 100), ins1(false, 1u, 100);
- C2NumberStreamTuning bouts1, bins1, bins3(false, 1u, 100);
- const C2NumberStreamTuning::input ins2(1u, 100);
- C2NumberStreamTuning::input bins2;
- const C2NumberStreamTuning::output outs2(1u, 100);
- C2NumberStreamTuning::output bouts2;
-
- EXPECT_EQ(ins1.coreIndex(), tun.coreIndex());
- EXPECT_EQ(outs1.coreIndex(), tun.coreIndex());
- EXPECT_EQ(bins1.coreIndex(), tun.coreIndex());
- EXPECT_EQ(bouts1.coreIndex(), tun.coreIndex());
- EXPECT_EQ(ins2.coreIndex(), tun.coreIndex());
- EXPECT_EQ(outs2.coreIndex(), tun.coreIndex());
-
- EXPECT_EQ(ins1.type(), ins2.type());
- EXPECT_EQ(ins1.type(), bins2.type());
- EXPECT_EQ(outs1.type(), outs2.type());
- EXPECT_EQ(outs1.type(), bouts2.type());
- EXPECT_NE(ins1.type(), outs1.type());
- EXPECT_NE(ins2.type(), outs2.type());
- EXPECT_NE(ins1.type(), bins1.type());
- EXPECT_NE(outs1.type(), bouts1.type());
- EXPECT_NE(ins1.type(), tun.type());
- EXPECT_NE(ins2.type(), tun.type());
-
- {
- static_assert(canCallSetPort(bins3), "should be able to");
- static_assert(canCallSetPort(bins1), "should be able to");
- static_assert(!canCallSetPort(ins1), "should not be able to (const)");
- static_assert(!canCallSetPort(ins2), "should not be able to (const & type)");
- static_assert(!canCallSetPort(bins2), "should not be able to (type)");
-
- // flags & invariables
- for (const auto &p : { outs1, ins1, bouts1 }) {
- EXPECT_EQ(12u, p.size());
- EXPECT_FALSE(p.isVendor());
- EXPECT_FALSE(p.isFlexible());
- EXPECT_FALSE(p.isGlobal());
- EXPECT_TRUE(p.forStream());
- EXPECT_FALSE(p.forPort());
- }
- for (const auto &p : { ins2, bins2 }) {
- EXPECT_EQ(12u, p.size());
- EXPECT_FALSE(p.isVendor());
- EXPECT_FALSE(p.isFlexible());
- EXPECT_FALSE(p.isGlobal());
- EXPECT_TRUE(p.forStream());
- EXPECT_FALSE(p.forPort());
- }
- for (const auto &p : { outs2, bouts2 }) {
- EXPECT_EQ(12u, p.size());
- EXPECT_FALSE(p.isVendor());
- EXPECT_FALSE(p.isFlexible());
- EXPECT_FALSE(p.isGlobal());
- EXPECT_TRUE(p.forStream());
- EXPECT_FALSE(p.forPort());
- }
-
- // port specific flags & invariables
- EXPECT_FALSE(outs1.forInput());
- EXPECT_TRUE(outs1.forOutput());
-
- EXPECT_TRUE(ins1.forInput());
- EXPECT_FALSE(ins1.forOutput());
-
- for (const auto &p : { outs1, ins1 }) {
- EXPECT_TRUE((bool)p);
- EXPECT_FALSE(!p);
- EXPECT_EQ(100, p.mNumber);
- EXPECT_EQ(1u, p.stream());
- }
- for (const auto &p : { outs2, bouts2 }) {
- EXPECT_TRUE((bool)p);
- EXPECT_FALSE(!p);
-
- EXPECT_FALSE(p.forInput());
- EXPECT_TRUE(p.forOutput());
- }
- for (const auto &p : { ins2, bins2 }) {
- EXPECT_TRUE((bool)p);
- EXPECT_FALSE(!p);
-
- EXPECT_TRUE(p.forInput());
- EXPECT_FALSE(p.forOutput());
- }
- for (const auto &p : { bouts1 } ) {
- EXPECT_FALSE((bool)p);
- EXPECT_TRUE(!p);
-
- EXPECT_FALSE(p.forInput());
- EXPECT_FALSE(p.forOutput());
- EXPECT_EQ(0, p.mNumber);
- }
-
- // values
- EXPECT_EQ(100, ins2.mNumber);
- EXPECT_EQ(100, outs2.mNumber);
- EXPECT_EQ(0, bins1.mNumber);
- EXPECT_EQ(0, bins2.mNumber);
- EXPECT_EQ(0, bouts1.mNumber);
- EXPECT_EQ(0, bouts2.mNumber);
-
- EXPECT_EQ(1u, ins2.stream());
- EXPECT_EQ(1u, outs2.stream());
- EXPECT_EQ(0u, bins1.stream());
- EXPECT_EQ(0u, bins2.stream());
- EXPECT_EQ(0u, bouts1.stream());
- EXPECT_EQ(0u, bouts2.stream());
-
- EXPECT_TRUE(ins1 != outs1);
- EXPECT_TRUE(ins1 == ins2);
- EXPECT_TRUE(outs1 == outs2);
- EXPECT_TRUE(bins1 == bouts1);
- EXPECT_TRUE(bins2 != bouts2);
-
- EXPECT_TRUE(ins1 != bins1);
- bins1.mNumber = 100;
- EXPECT_TRUE(ins1 != bins1);
- bins1.setPort(false /* output */);
- EXPECT_TRUE(ins1 != bins1);
- bins1.setStream(1u);
- EXPECT_TRUE(ins1 == bins1);
-
- EXPECT_TRUE(ins2 != bins2);
- bins2.mNumber = 100;
- EXPECT_TRUE(ins2 != bins2);
- bins2.setStream(1u);
- EXPECT_TRUE(ins2 == bins2);
-
- bins1.setPort(true /* output */);
- EXPECT_TRUE(outs1 == bins1);
-
- EXPECT_TRUE(outs1 != bouts1);
- bouts1.mNumber = 100;
- EXPECT_TRUE(outs1 != bouts1);
- bouts1.setPort(true /* output */);
- EXPECT_TRUE(outs1 != bouts1);
- bouts1.setStream(1u);
- EXPECT_TRUE(outs1 == bouts1);
-
- EXPECT_TRUE(outs2 != bouts2);
- bouts2.mNumber = 100;
- EXPECT_TRUE(outs2 != bouts2);
- bouts2.setStream(1u);
- EXPECT_TRUE(outs2 == bouts2);
-
- bouts1.setPort(false /* output */);
- EXPECT_TRUE(ins1 == bouts1);
-
- // index
- EXPECT_EQ(C2Param::Type(ins1.type()).coreIndex(), C2NumberStruct::CORE_INDEX);
- EXPECT_EQ(C2Param::Type(ins1.type()).typeIndex(), kParamIndexNumber);
- EXPECT_EQ(ins1.type(), C2NumberStreamTuning::input::PARAM_TYPE);
-
- EXPECT_EQ(C2Param::Type(ins2.type()).coreIndex(), C2NumberStruct::CORE_INDEX);
- EXPECT_EQ(C2Param::Type(ins2.type()).typeIndex(), kParamIndexNumber);
- EXPECT_EQ(ins2.type(), C2NumberStreamTuning::input::PARAM_TYPE);
-
- EXPECT_EQ(C2Param::Type(outs1.type()).coreIndex(), C2NumberStruct::CORE_INDEX);
- EXPECT_EQ(C2Param::Type(outs1.type()).typeIndex(), kParamIndexNumber);
- EXPECT_EQ(outs1.type(), C2NumberStreamTuning::output::PARAM_TYPE);
-
- EXPECT_EQ(C2Param::Type(outs2.type()).coreIndex(), C2NumberStruct::CORE_INDEX);
- EXPECT_EQ(C2Param::Type(outs2.type()).typeIndex(), kParamIndexNumber);
- EXPECT_EQ(outs2.type(), C2NumberStreamTuning::output::PARAM_TYPE);
-
- C2Param::CoreIndex index = C2NumberStreamTuning::input::PARAM_TYPE;
- EXPECT_FALSE(index.isVendor());
- EXPECT_FALSE(index.isFlexible());
- EXPECT_EQ(index.coreIndex(), kParamIndexNumber);
- EXPECT_EQ(index.typeIndex(), kParamIndexNumber);
-
- index = C2NumberStreamTuning::output::PARAM_TYPE;
- EXPECT_FALSE(index.isVendor());
- EXPECT_FALSE(index.isFlexible());
- EXPECT_EQ(index.coreIndex(), kParamIndexNumber);
- EXPECT_EQ(index.typeIndex(), kParamIndexNumber);
-
- C2Param::Type type = C2NumberStreamTuning::input::PARAM_TYPE;
- EXPECT_FALSE(type.isVendor());
- EXPECT_FALSE(type.isFlexible());
- EXPECT_FALSE(type.isGlobal());
- EXPECT_TRUE(type.forInput());
- EXPECT_FALSE(type.forOutput());
- EXPECT_TRUE(type.forStream());
- EXPECT_FALSE(type.forPort());
-
- type = C2NumberStreamTuning::output::PARAM_TYPE;
- EXPECT_FALSE(type.isVendor());
- EXPECT_FALSE(type.isFlexible());
- EXPECT_FALSE(type.isGlobal());
- EXPECT_FALSE(type.forInput());
- EXPECT_TRUE(type.forOutput());
- EXPECT_TRUE(type.forStream());
- EXPECT_FALSE(type.forPort());
-
- EXPECT_EQ(C2NumberPortTuning::From(nullptr), nullptr);
- EXPECT_EQ(C2NumberPortTuning::input::From(nullptr), nullptr);
- EXPECT_EQ(C2NumberPortTuning::output::From(nullptr), nullptr);
- EXPECT_EQ(C2NumberTuning::From(&ins1), nullptr);
- EXPECT_EQ(C2NumberTuning::From(&ins2), nullptr);
- EXPECT_EQ(C2NumberTuning::From(&outs1), nullptr);
- EXPECT_EQ(C2NumberTuning::From(&outs2), nullptr);
- EXPECT_EQ(C2NumberPortTuning::From(&ins1), nullptr);
- EXPECT_EQ(C2NumberPortTuning::From(&ins2), nullptr);
- EXPECT_EQ(C2NumberPortTuning::From(&outs1), nullptr);
- EXPECT_EQ(C2NumberPortTuning::From(&outs2), nullptr);
- EXPECT_EQ(C2NumberPortTuning::input::From(&ins1), nullptr);
- EXPECT_EQ(C2NumberPortTuning::input::From(&ins2), nullptr);
- EXPECT_EQ(C2NumberPortTuning::input::From(&outs1), nullptr);
- EXPECT_EQ(C2NumberPortTuning::input::From(&outs2), nullptr);
- EXPECT_EQ(C2NumberPortTuning::output::From(&ins1), nullptr);
- EXPECT_EQ(C2NumberPortTuning::output::From(&ins2), nullptr);
- EXPECT_EQ(C2NumberPortTuning::output::From(&outs1), nullptr);
- EXPECT_EQ(C2NumberPortTuning::output::From(&outs2), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::From(&ins1), &ins1);
- EXPECT_EQ(C2NumberStreamTuning::From(&ins2), (C2NumberStreamTuning*)&ins2);
- EXPECT_EQ(C2NumberStreamTuning::From(&outs1), &outs1);
- EXPECT_EQ(C2NumberStreamTuning::From(&outs2), (C2NumberStreamTuning*)&outs2);
- EXPECT_EQ(C2NumberStreamTuning::input::From(&ins1), (C2NumberStreamTuning::input*)&ins1);
- EXPECT_EQ(C2NumberStreamTuning::input::From(&ins2), &ins2);
- EXPECT_EQ(C2NumberStreamTuning::input::From(&outs1), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::input::From(&outs2), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::output::From(&ins1), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::output::From(&ins2), nullptr);
- EXPECT_EQ(C2NumberStreamTuning::output::From(&outs1), (C2NumberStreamTuning::output*)&outs1);
- EXPECT_EQ(C2NumberStreamTuning::output::From(&outs2), &outs2);
-
- EXPECT_EQ(*(C2Param::Copy(ins1)), ins1);
- EXPECT_EQ(*(C2Param::Copy(ins2)), ins2);
- EXPECT_EQ(*(C2Param::Copy(outs1)), outs1);
- EXPECT_EQ(*(C2Param::Copy(outs2)), outs2);
- }
-
- {
- uint32_t videoWidth[] = { 12u, C2NumberStreamTuning::output::PARAM_TYPE, 100 };
- C2Param *p1 = C2Param::From(videoWidth, sizeof(videoWidth));
- EXPECT_NE(p1, nullptr);
- EXPECT_EQ(12u, p1->size());
- EXPECT_EQ(p1->type(), C2NumberStreamTuning::output::PARAM_TYPE);
-
- p1 = C2Param::From(videoWidth, sizeof(videoWidth) + 2);
- EXPECT_EQ(p1, nullptr);
-
- p1 = C2Param::From(videoWidth, sizeof(videoWidth) - 2);
- EXPECT_EQ(p1, nullptr);
-
- p1 = C2Param::From(videoWidth, 3);
- EXPECT_EQ(p1, nullptr);
-
- p1 = C2Param::From(videoWidth, 0);
- EXPECT_EQ(p1, nullptr);
- }
-}
-
-void StaticTestAddCoreIndex() {
- struct nobase {};
- struct base { enum : uint32_t { CORE_INDEX = 1 }; };
- static_assert(_C2AddCoreIndex<nobase, 2>::CORE_INDEX == 2, "should be 2");
- static_assert(_C2AddCoreIndex<base, 1>::CORE_INDEX == 1, "should be 1");
-}
-
-class TestFlexHelper {
- struct _Flex {
- int32_t a;
- char b[];
- _Flex() {}
- FLEX(_Flex, b);
- };
-
- struct _BoFlex {
- _Flex a;
- _BoFlex() {}
- FLEX(_BoFlex, a);
- };
-
- struct _NonFlex {
- };
-
-
- static void StaticTest() {
- static_assert(std::is_same<_C2FlexHelper<char>::FlexType, void>::value, "should be void");
- static_assert(std::is_same<_C2FlexHelper<char[]>::FlexType, char>::value, "should be char");
- static_assert(std::is_same<_C2FlexHelper<_Flex>::FlexType, char>::value, "should be char");
-
- static_assert(std::is_same<_C2FlexHelper<_BoFlex>::FlexType, char>::value, "should be void");
-
- static_assert(_C2Flexible<_Flex>::value, "should be flexible");
- static_assert(!_C2Flexible<_NonFlex>::value, "should not be flexible");
- }
-};
-
-TEST_F(C2ParamTest, FlexParamOpsTest) {
-// const C2NumbersStruct str{100};
- C2NumbersStruct bstr;
- {
-// EXPECT_EQ(100, str->m.mNumbers[0]);
- (void)&bstr.mNumbers[0];
-
- C2Param::CoreIndex index = C2NumbersStruct::CORE_INDEX;
- EXPECT_FALSE(index.isVendor());
- EXPECT_TRUE(index.isFlexible());
- EXPECT_EQ(index.coreIndex(), kParamIndexNumbers | C2Param::CoreIndex::IS_FLEX_FLAG);
- EXPECT_EQ(index.typeIndex(), kParamIndexNumbers);
- }
-
- std::unique_ptr<C2NumbersTuning> tun_ = C2NumbersTuning::AllocUnique(1);
- tun_->m.mNumbers[0] = 100;
- std::unique_ptr<const C2NumbersTuning> tun = std::move(tun_);
- std::shared_ptr<C2NumbersTuning> btun = C2NumbersTuning::AllocShared(1);
-
- {
- // flags & invariables
- const C2NumbersTuning *T[] = { tun.get(), btun.get() };
- for (const auto p : T) {
- EXPECT_TRUE((bool)(*p));
- EXPECT_FALSE(!(*p));
- EXPECT_EQ(12u, p->size());
-
- EXPECT_FALSE(p->isVendor());
- EXPECT_TRUE(p->isFlexible());
- EXPECT_TRUE(p->isGlobal());
- EXPECT_FALSE(p->forInput());
- EXPECT_FALSE(p->forOutput());
- EXPECT_FALSE(p->forStream());
- EXPECT_FALSE(p->forPort());
- }
-
- // value
- EXPECT_EQ(100, tun->m.mNumbers[0]);
- EXPECT_EQ(0, btun->m.mNumbers[0]);
- EXPECT_FALSE(*tun == *btun);
- EXPECT_FALSE(tun->operator==(*btun));
- EXPECT_TRUE(*tun != *btun);
- EXPECT_TRUE(tun->operator!=(*btun));
- btun->m.mNumbers[0] = 100;
- EXPECT_EQ(*tun, *btun);
-
- // index
- EXPECT_EQ(C2Param::Type(tun->type()).coreIndex(), C2NumbersStruct::CORE_INDEX);
- EXPECT_EQ(C2Param::Type(tun->type()).typeIndex(), kParamIndexNumbers);
- EXPECT_EQ(tun->type(), C2NumbersTuning::PARAM_TYPE);
- EXPECT_EQ(tun->stream(), ~0u);
-
- C2Param::CoreIndex index = C2NumbersTuning::CORE_INDEX;
- EXPECT_FALSE(index.isVendor());
- EXPECT_TRUE(index.isFlexible());
- EXPECT_EQ(index.coreIndex(), kParamIndexNumbers | C2Param::CoreIndex::IS_FLEX_FLAG);
- EXPECT_EQ(index.typeIndex(), kParamIndexNumbers);
-
- C2Param::Type type = C2NumbersTuning::PARAM_TYPE;
- EXPECT_FALSE(type.isVendor());
- EXPECT_TRUE(type.isFlexible());
- EXPECT_TRUE(type.isGlobal());
- EXPECT_FALSE(type.forInput());
- EXPECT_FALSE(type.forOutput());
- EXPECT_FALSE(type.forStream());
- EXPECT_FALSE(type.forPort());
-
- EXPECT_EQ(C2NumbersTuning::From(nullptr), nullptr);
- EXPECT_EQ(C2NumbersTuning::From(tun.get()), tun.get());
- EXPECT_EQ(C2NumbersPortTuning::From(tun.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::input::From(tun.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::output::From(tun.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::From(tun.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::input::From(tun.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::output::From(tun.get()), nullptr);
-
- EXPECT_EQ(*(C2Param::Copy(*tun)), *tun);
- }
-
- std::unique_ptr<C2NumbersPortTuning> outp1_(C2NumbersPortTuning::AllocUnique(1, true)),
- inp1_ = C2NumbersPortTuning::AllocUnique(1, false);
- outp1_->m.mNumbers[0] = 100;
- inp1_->m.mNumbers[0] = 100;
- std::unique_ptr<const C2NumbersPortTuning> outp1 = std::move(outp1_);
- std::unique_ptr<const C2NumbersPortTuning> inp1 = std::move(inp1_);
- std::shared_ptr<C2NumbersPortTuning> boutp1(C2NumbersPortTuning::AllocShared(1)),
- binp1 = C2NumbersPortTuning::AllocShared(1),
- binp3 = C2NumbersPortTuning::AllocShared(1, false);
- binp3->m.mNumbers[0] = 100;
- std::unique_ptr<C2NumbersPortTuning::input> inp2_(C2NumbersPortTuning::input::AllocUnique(1));
- inp2_->m.mNumbers[0] = 100;
- std::unique_ptr<const C2NumbersPortTuning::input> inp2 = std::move(inp2_);
- std::shared_ptr<C2NumbersPortTuning::input> binp2(C2NumbersPortTuning::input::AllocShared(1));
- std::unique_ptr<C2NumbersPortTuning::output> outp2_(C2NumbersPortTuning::output::AllocUnique(1));
- outp2_->m.mNumbers[0] = 100;
- std::unique_ptr<const C2NumbersPortTuning::output> outp2 = std::move(outp2_);
- std::shared_ptr<C2NumbersPortTuning::output> boutp2(C2NumbersPortTuning::output::AllocShared(1));
-
- {
- static_assert(canCallSetPort(*binp3), "should be able to");
- static_assert(canCallSetPort(*binp1), "should be able to");
- static_assert(!canCallSetPort(*inp1), "should not be able to (const)");
- static_assert(!canCallSetPort(*inp2), "should not be able to (const & type)");
- static_assert(!canCallSetPort(*binp2), "should not be able to (type)");
-
- // flags & invariables
- const C2NumbersPortTuning *P[] = { outp1.get(), inp1.get(), boutp1.get() };
- for (const auto p : P) {
- EXPECT_EQ(12u, p->size());
- EXPECT_FALSE(p->isVendor());
- EXPECT_TRUE(p->isFlexible());
- EXPECT_FALSE(p->isGlobal());
- EXPECT_FALSE(p->forStream());
- EXPECT_TRUE(p->forPort());
- }
- const C2NumbersPortTuning::input *PI[] = { inp2.get(), binp2.get() };
- for (const auto p : PI) {
- EXPECT_EQ(12u, p->size());
- EXPECT_FALSE(p->isVendor());
- EXPECT_TRUE(p->isFlexible());
- EXPECT_FALSE(p->isGlobal());
- EXPECT_FALSE(p->forStream());
- EXPECT_TRUE(p->forPort());
- }
- const C2NumbersPortTuning::output *PO[] = { outp2.get(), boutp2.get() };
- for (const auto p : PO) {
- EXPECT_EQ(12u, p->size());
- EXPECT_FALSE(p->isVendor());
- EXPECT_TRUE(p->isFlexible());
- EXPECT_FALSE(p->isGlobal());
- EXPECT_FALSE(p->forStream());
- EXPECT_TRUE(p->forPort());
- }
-
- // port specific flags & invariables
- EXPECT_FALSE(outp1->forInput());
- EXPECT_TRUE(outp1->forOutput());
-
- EXPECT_TRUE(inp1->forInput());
- EXPECT_FALSE(inp1->forOutput());
-
- const C2NumbersPortTuning *P2[] = { outp1.get(), inp1.get() };
- for (const auto p : P2) {
- EXPECT_TRUE((bool)(*p));
- EXPECT_FALSE(!(*p));
- EXPECT_EQ(100, p->m.mNumbers[0]);
- }
- for (const auto p : PO) {
- EXPECT_TRUE((bool)(*p));
- EXPECT_FALSE(!(*p));
-
- EXPECT_FALSE(p->forInput());
- EXPECT_TRUE(p->forOutput());
- }
- for (const auto p : PI) {
- EXPECT_TRUE((bool)(*p));
- EXPECT_FALSE(!(*p));
-
- EXPECT_TRUE(p->forInput());
- EXPECT_FALSE(p->forOutput());
- }
- const C2NumbersPortTuning *P3[] = { boutp1.get() };
- for (const auto p : P3) {
- EXPECT_FALSE((bool)(*p));
- EXPECT_TRUE(!(*p));
-
- EXPECT_FALSE(p->forInput());
- EXPECT_FALSE(p->forOutput());
- EXPECT_EQ(0, p->m.mNumbers[0]);
- }
-
- // values
- EXPECT_EQ(100, inp2->m.mNumbers[0]);
- EXPECT_EQ(100, outp2->m.mNumbers[0]);
- EXPECT_EQ(0, binp1->m.mNumbers[0]);
- EXPECT_EQ(0, binp2->m.mNumbers[0]);
- EXPECT_EQ(0, boutp1->m.mNumbers[0]);
- EXPECT_EQ(0, boutp2->m.mNumbers[0]);
-
- EXPECT_TRUE(*inp1 != *outp1);
- EXPECT_TRUE(*inp1 == *inp2);
- EXPECT_TRUE(*outp1 == *outp2);
- EXPECT_TRUE(*binp1 == *boutp1);
- EXPECT_TRUE(*binp2 != *boutp2);
-
- EXPECT_TRUE(*inp1 != *binp1);
- binp1->m.mNumbers[0] = 100;
- EXPECT_TRUE(*inp1 != *binp1);
- binp1->setPort(false /* output */);
- EXPECT_TRUE((bool)*binp1);
- EXPECT_FALSE(!*binp1);
- EXPECT_TRUE(*inp1 == *binp1);
-
- EXPECT_TRUE(*inp2 != *binp2);
- binp2->m.mNumbers[0] = 100;
- EXPECT_TRUE(*inp2 == *binp2);
-
- binp1->setPort(true /* output */);
- EXPECT_TRUE(*outp1 == *binp1);
-
- EXPECT_TRUE(*outp1 != *boutp1);
- boutp1->m.mNumbers[0] = 100;
- EXPECT_TRUE(*outp1 != *boutp1);
- boutp1->setPort(true /* output */);
- EXPECT_TRUE((bool)*boutp1);
- EXPECT_FALSE(!*boutp1);
- EXPECT_TRUE(*outp1 == *boutp1);
-
- EXPECT_TRUE(*outp2 != *boutp2);
- boutp2->m.mNumbers[0] = 100;
- EXPECT_TRUE(*outp2 == *boutp2);
-
- boutp1->setPort(false /* output */);
- EXPECT_TRUE(*inp1 == *boutp1);
-
- // index
- EXPECT_EQ(C2Param::Type(inp1->type()).coreIndex(), C2NumbersStruct::CORE_INDEX);
- EXPECT_EQ(C2Param::Type(inp1->type()).typeIndex(), kParamIndexNumbers);
- EXPECT_EQ(inp1->type(), C2NumbersPortTuning::input::PARAM_TYPE);
- EXPECT_EQ(inp1->stream(), ~0u);
-
- EXPECT_EQ(C2Param::Type(inp2->type()).coreIndex(), C2NumbersStruct::CORE_INDEX);
- EXPECT_EQ(C2Param::Type(inp2->type()).typeIndex(), kParamIndexNumbers);
- EXPECT_EQ(inp2->type(), C2NumbersPortTuning::input::PARAM_TYPE);
- EXPECT_EQ(inp2->stream(), ~0u);
-
- EXPECT_EQ(C2Param::Type(outp1->type()).coreIndex(), C2NumbersStruct::CORE_INDEX);
- EXPECT_EQ(C2Param::Type(outp1->type()).typeIndex(), kParamIndexNumbers);
- EXPECT_EQ(outp1->type(), C2NumbersPortTuning::output::PARAM_TYPE);
- EXPECT_EQ(outp1->stream(), ~0u);
-
- EXPECT_EQ(C2Param::Type(outp2->type()).coreIndex(), C2NumbersStruct::CORE_INDEX);
- EXPECT_EQ(C2Param::Type(outp2->type()).typeIndex(), kParamIndexNumbers);
- EXPECT_EQ(outp2->type(), C2NumbersPortTuning::output::PARAM_TYPE);
- EXPECT_EQ(outp2->stream(), ~0u);
-
- C2Param::CoreIndex index = C2NumbersPortTuning::input::PARAM_TYPE;
- EXPECT_FALSE(index.isVendor());
- EXPECT_TRUE(index.isFlexible());
- EXPECT_EQ(index.coreIndex(), kParamIndexNumbers | C2Param::CoreIndex::IS_FLEX_FLAG);
- EXPECT_EQ(index.typeIndex(), kParamIndexNumbers);
-
- index = C2NumbersPortTuning::output::PARAM_TYPE;
- EXPECT_FALSE(index.isVendor());
- EXPECT_TRUE(index.isFlexible());
- EXPECT_EQ(index.coreIndex(), kParamIndexNumbers | C2Param::CoreIndex::IS_FLEX_FLAG);
- EXPECT_EQ(index.typeIndex(), kParamIndexNumbers);
-
- C2Param::Type type = C2NumbersPortTuning::input::PARAM_TYPE;
- EXPECT_FALSE(type.isVendor());
- EXPECT_TRUE(type.isFlexible());
- EXPECT_FALSE(type.isGlobal());
- EXPECT_TRUE(type.forInput());
- EXPECT_FALSE(type.forOutput());
- EXPECT_FALSE(type.forStream());
- EXPECT_TRUE(type.forPort());
-
- type = C2NumbersPortTuning::output::PARAM_TYPE;
- EXPECT_FALSE(type.isVendor());
- EXPECT_TRUE(type.isFlexible());
- EXPECT_FALSE(type.isGlobal());
- EXPECT_FALSE(type.forInput());
- EXPECT_TRUE(type.forOutput());
- EXPECT_FALSE(type.forStream());
- EXPECT_TRUE(type.forPort());
-
- EXPECT_EQ(C2NumbersPortTuning::From(nullptr), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::input::From(nullptr), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::output::From(nullptr), nullptr);
- EXPECT_EQ(C2NumbersTuning::From(inp1.get()), nullptr);
- EXPECT_EQ(C2NumbersTuning::From(inp2.get()), nullptr);
- EXPECT_EQ(C2NumbersTuning::From(outp1.get()), nullptr);
- EXPECT_EQ(C2NumbersTuning::From(outp2.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::From(inp1.get()), inp1.get());
- EXPECT_EQ(C2NumbersPortTuning::From(inp2.get()), (C2NumbersPortTuning*)inp2.get());
- EXPECT_EQ(C2NumbersPortTuning::From(outp1.get()), outp1.get());
- EXPECT_EQ(C2NumbersPortTuning::From(outp2.get()), (C2NumbersPortTuning*)outp2.get());
- EXPECT_EQ(C2NumbersPortTuning::input::From(inp1.get()), (C2NumbersPortTuning::input*)inp1.get());
- EXPECT_EQ(C2NumbersPortTuning::input::From(inp2.get()), inp2.get());
- EXPECT_EQ(C2NumbersPortTuning::input::From(outp1.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::input::From(outp2.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::output::From(inp1.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::output::From(inp2.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::output::From(outp1.get()), (C2NumbersPortTuning::output*)outp1.get());
- EXPECT_EQ(C2NumbersPortTuning::output::From(outp2.get()), outp2.get());
- EXPECT_EQ(C2NumbersStreamTuning::From(inp1.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::From(inp2.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::From(outp1.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::From(outp2.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::input::From(inp1.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::input::From(inp2.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::input::From(outp1.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::input::From(outp2.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::output::From(inp1.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::output::From(inp2.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::output::From(outp1.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::output::From(outp2.get()), nullptr);
-
- EXPECT_EQ(*(C2Param::Copy(*inp1)), *inp1);
- EXPECT_EQ(*(C2Param::Copy(*inp2)), *inp2);
- EXPECT_EQ(*(C2Param::Copy(*outp1)), *outp1);
- EXPECT_EQ(*(C2Param::Copy(*outp2)), *outp2);
- }
-
- std::unique_ptr<C2NumbersStreamTuning> outs1_(C2NumbersStreamTuning::AllocUnique(1, true, 1u));
- outs1_->m.mNumbers[0] = 100;
- std::unique_ptr<const C2NumbersStreamTuning> outs1 = std::move(outs1_);
- std::unique_ptr<C2NumbersStreamTuning> ins1_(C2NumbersStreamTuning::AllocUnique(1, false, 1u));
- ins1_->m.mNumbers[0] = 100;
- std::unique_ptr<const C2NumbersStreamTuning> ins1 = std::move(ins1_);
- std::shared_ptr<C2NumbersStreamTuning> bouts1(C2NumbersStreamTuning::AllocShared(1));
- std::shared_ptr<C2NumbersStreamTuning> bins1(C2NumbersStreamTuning::AllocShared(1));
- std::shared_ptr<C2NumbersStreamTuning> bins3(C2NumbersStreamTuning::AllocShared(1, false, 1u));
- bins3->m.mNumbers[0] = 100;
- std::unique_ptr<C2NumbersStreamTuning::input> ins2_(C2NumbersStreamTuning::input::AllocUnique(1, 1u));
- ins2_->m.mNumbers[0] = 100;
- std::unique_ptr<const C2NumbersStreamTuning::input> ins2 = std::move(ins2_);
- std::shared_ptr<C2NumbersStreamTuning::input> bins2(C2NumbersStreamTuning::input::AllocShared(1));
- std::unique_ptr<C2NumbersStreamTuning::output> outs2_(C2NumbersStreamTuning::output::AllocUnique(1, 1u));
- outs2_->m.mNumbers[0] = 100;
- std::unique_ptr<const C2NumbersStreamTuning::output> outs2 = std::move(outs2_);
- std::shared_ptr<C2NumbersStreamTuning::output> bouts2(C2NumbersStreamTuning::output::AllocShared(1));
-
- {
- static_assert(canCallSetPort(*bins3), "should be able to");
- static_assert(canCallSetPort(*bins1), "should be able to");
- static_assert(!canCallSetPort(*ins1), "should not be able to (const)");
- static_assert(!canCallSetPort(*ins2), "should not be able to (const & type)");
- static_assert(!canCallSetPort(*bins2), "should not be able to (type)");
-
- // flags & invariables
- const C2NumbersStreamTuning *S[] = { outs1.get(), ins1.get(), bouts1.get() };
- for (const auto p : S) {
- EXPECT_EQ(12u, p->size());
- EXPECT_FALSE(p->isVendor());
- EXPECT_TRUE(p->isFlexible());
- EXPECT_FALSE(p->isGlobal());
- EXPECT_TRUE(p->forStream());
- EXPECT_FALSE(p->forPort());
- }
- const C2NumbersStreamTuning::input *SI[] = { ins2.get(), bins2.get() };
- for (const auto p : SI) {
- EXPECT_EQ(12u, p->size());
- EXPECT_FALSE(p->isVendor());
- EXPECT_TRUE(p->isFlexible());
- EXPECT_FALSE(p->isGlobal());
- EXPECT_TRUE(p->forStream());
- EXPECT_FALSE(p->forPort());
- }
- const C2NumbersStreamTuning::output *SO[] = { outs2.get(), bouts2.get() };
- for (const auto p : SO) {
- EXPECT_EQ(12u, p->size());
- EXPECT_FALSE(p->isVendor());
- EXPECT_TRUE(p->isFlexible());
- EXPECT_FALSE(p->isGlobal());
- EXPECT_TRUE(p->forStream());
- EXPECT_FALSE(p->forPort());
- }
-
- // port specific flags & invariables
- EXPECT_FALSE(outs1->forInput());
- EXPECT_TRUE(outs1->forOutput());
-
- EXPECT_TRUE(ins1->forInput());
- EXPECT_FALSE(ins1->forOutput());
-
- const C2NumbersStreamTuning *S2[] = { outs1.get(), ins1.get() };
- for (const auto p : S2) {
- EXPECT_TRUE((bool)(*p));
- EXPECT_FALSE(!(*p));
- EXPECT_EQ(100, p->m.mNumbers[0]);
- EXPECT_EQ(1u, p->stream());
- }
- for (const auto p : SO) {
- EXPECT_TRUE((bool)(*p));
- EXPECT_FALSE(!(*p));
-
- EXPECT_FALSE(p->forInput());
- EXPECT_TRUE(p->forOutput());
- }
- for (const auto p : SI) {
- EXPECT_TRUE((bool)(*p));
- EXPECT_FALSE(!(*p));
-
- EXPECT_TRUE(p->forInput());
- EXPECT_FALSE(p->forOutput());
- }
- const C2NumbersStreamTuning *S3[] = { bouts1.get() };
- for (const auto p : S3) {
- EXPECT_FALSE((bool)(*p));
- EXPECT_TRUE(!(*p));
-
- EXPECT_FALSE(p->forInput());
- EXPECT_FALSE(p->forOutput());
- EXPECT_EQ(0, p->m.mNumbers[0]);
- }
-
- // values
- EXPECT_EQ(100, ins2->m.mNumbers[0]);
- EXPECT_EQ(100, outs2->m.mNumbers[0]);
- EXPECT_EQ(0, bins1->m.mNumbers[0]);
- EXPECT_EQ(0, bins2->m.mNumbers[0]);
- EXPECT_EQ(0, bouts1->m.mNumbers[0]);
- EXPECT_EQ(0, bouts2->m.mNumbers[0]);
-
- EXPECT_EQ(1u, ins2->stream());
- EXPECT_EQ(1u, outs2->stream());
- EXPECT_EQ(0u, bins1->stream());
- EXPECT_EQ(0u, bins2->stream());
- EXPECT_EQ(0u, bouts1->stream());
- EXPECT_EQ(0u, bouts2->stream());
-
- EXPECT_TRUE(*ins1 != *outs1);
- EXPECT_TRUE(*ins1 == *ins2);
- EXPECT_TRUE(*outs1 == *outs2);
- EXPECT_TRUE(*bins1 == *bouts1);
- EXPECT_TRUE(*bins2 != *bouts2);
-
- EXPECT_TRUE(*ins1 != *bins1);
- bins1->m.mNumbers[0] = 100;
- EXPECT_TRUE(*ins1 != *bins1);
- bins1->setPort(false /* output */);
- EXPECT_TRUE(*ins1 != *bins1);
- bins1->setStream(1u);
- EXPECT_TRUE(*ins1 == *bins1);
-
- EXPECT_TRUE(*ins2 != *bins2);
- bins2->m.mNumbers[0] = 100;
- EXPECT_TRUE(*ins2 != *bins2);
- bins2->setStream(1u);
- EXPECT_TRUE(*ins2 == *bins2);
-
- bins1->setPort(true /* output */);
- EXPECT_TRUE(*outs1 == *bins1);
-
- EXPECT_TRUE(*outs1 != *bouts1);
- bouts1->m.mNumbers[0] = 100;
- EXPECT_TRUE(*outs1 != *bouts1);
- bouts1->setPort(true /* output */);
- EXPECT_TRUE(*outs1 != *bouts1);
- bouts1->setStream(1u);
- EXPECT_TRUE(*outs1 == *bouts1);
-
- EXPECT_TRUE(*outs2 != *bouts2);
- bouts2->m.mNumbers[0] = 100;
- EXPECT_TRUE(*outs2 != *bouts2);
- bouts2->setStream(1u);
- EXPECT_TRUE(*outs2 == *bouts2);
-
- bouts1->setPort(false /* output */);
- EXPECT_TRUE(*ins1 == *bouts1);
-
- // index
- EXPECT_EQ(C2Param::Type(ins1->type()).coreIndex(), C2NumbersStruct::CORE_INDEX);
- EXPECT_EQ(C2Param::Type(ins1->type()).typeIndex(), kParamIndexNumbers);
- EXPECT_EQ(ins1->type(), C2NumbersStreamTuning::input::PARAM_TYPE);
-
- EXPECT_EQ(C2Param::Type(ins2->type()).coreIndex(), C2NumbersStruct::CORE_INDEX);
- EXPECT_EQ(C2Param::Type(ins2->type()).typeIndex(), kParamIndexNumbers);
- EXPECT_EQ(ins2->type(), C2NumbersStreamTuning::input::PARAM_TYPE);
-
- EXPECT_EQ(C2Param::Type(outs1->type()).coreIndex(), C2NumbersStruct::CORE_INDEX);
- EXPECT_EQ(C2Param::Type(outs1->type()).typeIndex(), kParamIndexNumbers);
- EXPECT_EQ(outs1->type(), C2NumbersStreamTuning::output::PARAM_TYPE);
-
- EXPECT_EQ(C2Param::Type(outs2->type()).coreIndex(), C2NumbersStruct::CORE_INDEX);
- EXPECT_EQ(C2Param::Type(outs2->type()).typeIndex(), kParamIndexNumbers);
- EXPECT_EQ(outs2->type(), C2NumbersStreamTuning::output::PARAM_TYPE);
-
- C2Param::CoreIndex index = C2NumbersStreamTuning::input::PARAM_TYPE;
- EXPECT_FALSE(index.isVendor());
- EXPECT_TRUE(index.isFlexible());
- EXPECT_EQ(index.coreIndex(), kParamIndexNumbers | C2Param::CoreIndex::IS_FLEX_FLAG);
- EXPECT_EQ(index.typeIndex(), kParamIndexNumbers);
-
- index = C2NumbersStreamTuning::output::PARAM_TYPE;
- EXPECT_FALSE(index.isVendor());
- EXPECT_TRUE(index.isFlexible());
- EXPECT_EQ(index.coreIndex(), kParamIndexNumbers | C2Param::CoreIndex::IS_FLEX_FLAG);
- EXPECT_EQ(index.typeIndex(), kParamIndexNumbers);
-
- C2Param::Type type = C2NumbersStreamTuning::input::PARAM_TYPE;
- EXPECT_FALSE(type.isVendor());
- EXPECT_TRUE(type.isFlexible());
- EXPECT_FALSE(type.isGlobal());
- EXPECT_TRUE(type.forInput());
- EXPECT_FALSE(type.forOutput());
- EXPECT_TRUE(type.forStream());
- EXPECT_FALSE(type.forPort());
-
- type = C2NumbersStreamTuning::output::PARAM_TYPE;
- EXPECT_FALSE(type.isVendor());
- EXPECT_TRUE(type.isFlexible());
- EXPECT_FALSE(type.isGlobal());
- EXPECT_FALSE(type.forInput());
- EXPECT_TRUE(type.forOutput());
- EXPECT_TRUE(type.forStream());
- EXPECT_FALSE(type.forPort());
-
- EXPECT_EQ(C2NumbersPortTuning::From(nullptr), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::input::From(nullptr), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::output::From(nullptr), nullptr);
- EXPECT_EQ(C2NumbersTuning::From(ins1.get()), nullptr);
- EXPECT_EQ(C2NumbersTuning::From(ins2.get()), nullptr);
- EXPECT_EQ(C2NumbersTuning::From(outs1.get()), nullptr);
- EXPECT_EQ(C2NumbersTuning::From(outs2.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::From(ins1.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::From(ins2.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::From(outs1.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::From(outs2.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::input::From(ins1.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::input::From(ins2.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::input::From(outs1.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::input::From(outs2.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::output::From(ins1.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::output::From(ins2.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::output::From(outs1.get()), nullptr);
- EXPECT_EQ(C2NumbersPortTuning::output::From(outs2.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::From(ins1.get()), ins1.get());
- EXPECT_EQ(C2NumbersStreamTuning::From(ins2.get()), (C2NumbersStreamTuning*)ins2.get());
- EXPECT_EQ(C2NumbersStreamTuning::From(outs1.get()), outs1.get());
- EXPECT_EQ(C2NumbersStreamTuning::From(outs2.get()), (C2NumbersStreamTuning*)outs2.get());
- EXPECT_EQ(C2NumbersStreamTuning::input::From(ins1.get()), (C2NumbersStreamTuning::input*)ins1.get());
- EXPECT_EQ(C2NumbersStreamTuning::input::From(ins2.get()), ins2.get());
- EXPECT_EQ(C2NumbersStreamTuning::input::From(outs1.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::input::From(outs2.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::output::From(ins1.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::output::From(ins2.get()), nullptr);
- EXPECT_EQ(C2NumbersStreamTuning::output::From(outs1.get()), (C2NumbersStreamTuning::output*)outs1.get());
- EXPECT_EQ(C2NumbersStreamTuning::output::From(outs2.get()), outs2.get());
-
- EXPECT_EQ(*(C2Param::Copy(*ins1)), *ins1);
- EXPECT_EQ(*(C2Param::Copy(*ins2)), *ins2);
- EXPECT_EQ(*(C2Param::Copy(*outs1)), *outs1);
- EXPECT_EQ(*(C2Param::Copy(*outs2)), *outs2);
- }
-
- {
- C2Int32Value int32Value(INT32_MIN);
- static_assert(std::is_same<decltype(int32Value.value), int32_t>::value, "should be int32_t");
- EXPECT_EQ(INT32_MIN, int32Value.value);
- std::vector<C2FieldDescriptor> fields = int32Value.FieldList();
- EXPECT_EQ(1u, fields.size());
- EXPECT_EQ(FD::INT32, fields.cbegin()->type());
- EXPECT_EQ(1u, fields.cbegin()->extent());
- EXPECT_EQ(C2String("value"), fields.cbegin()->name());
- }
-
- {
- C2Uint32Value uint32Value(UINT32_MAX);
- static_assert(std::is_same<decltype(uint32Value.value), uint32_t>::value, "should be uint32_t");
- EXPECT_EQ(UINT32_MAX, uint32Value.value);
- std::vector<C2FieldDescriptor> fields = uint32Value.FieldList();
- EXPECT_EQ(1u, fields.size());
- EXPECT_EQ(FD::UINT32, fields.cbegin()->type());
- EXPECT_EQ(1u, fields.cbegin()->extent());
- EXPECT_EQ(C2String("value"), fields.cbegin()->name());
- }
-
- {
- C2Int64Value int64Value(INT64_MIN);
- static_assert(std::is_same<decltype(int64Value.value), int64_t>::value, "should be int64_t");
- EXPECT_EQ(INT64_MIN, int64Value.value);
- std::vector<C2FieldDescriptor> fields = int64Value.FieldList();
- EXPECT_EQ(1u, fields.size());
- EXPECT_EQ(FD::INT64, fields.cbegin()->type());
- EXPECT_EQ(1u, fields.cbegin()->extent());
- EXPECT_EQ(C2String("value"), fields.cbegin()->name());
- }
-
- {
- C2Uint64Value uint64Value(UINT64_MAX);
- static_assert(std::is_same<decltype(uint64Value.value), uint64_t>::value, "should be uint64_t");
- EXPECT_EQ(UINT64_MAX, uint64Value.value);
- std::vector<C2FieldDescriptor> fields = uint64Value.FieldList();
- EXPECT_EQ(1u, fields.size());
- EXPECT_EQ(FD::UINT64, fields.cbegin()->type());
- EXPECT_EQ(1u, fields.cbegin()->extent());
- EXPECT_EQ(C2String("value"), fields.cbegin()->name());
- }
-
- {
- C2FloatValue floatValue(123.4f);
- static_assert(std::is_same<decltype(floatValue.value), float>::value, "should be float");
- EXPECT_EQ(123.4f, floatValue.value);
- std::vector<C2FieldDescriptor> fields = floatValue.FieldList();
- EXPECT_EQ(1u, fields.size());
- EXPECT_EQ(FD::FLOAT, fields.cbegin()->type());
- EXPECT_EQ(1u, fields.cbegin()->extent());
- EXPECT_EQ(C2String("value"), fields.cbegin()->name());
- }
-
- {
- uint8_t initValue[] = "ABCD";
- typedef C2GlobalParam<C2Setting, C2BlobValue, 0> BlobSetting;
- std::unique_ptr<BlobSetting> blobValue = BlobSetting::AllocUnique(6, C2ConstMemoryBlock<uint8_t>(initValue));
- static_assert(std::is_same<decltype(blobValue->m.value), uint8_t[]>::value, "should be uint8_t[]");
- EXPECT_EQ(0, memcmp(blobValue->m.value, "ABCD\0", 6));
- EXPECT_EQ(6u, blobValue->flexCount());
- std::vector<C2FieldDescriptor> fields = blobValue->FieldList();
- EXPECT_EQ(1u, fields.size());
- EXPECT_EQ(FD::BLOB, fields.cbegin()->type());
- EXPECT_EQ(0u, fields.cbegin()->extent());
- EXPECT_EQ(C2String("value"), fields.cbegin()->name());
-
- blobValue = BlobSetting::AllocUnique(3, C2ConstMemoryBlock<uint8_t>(initValue));
- EXPECT_EQ(0, memcmp(blobValue->m.value, "ABC", 3));
- EXPECT_EQ(3u, blobValue->flexCount());
- }
-
- {
- constexpr char initValue[] = "ABCD";
- typedef C2GlobalParam<C2Setting, C2StringValue, 0> StringSetting;
- std::unique_ptr<StringSetting> stringValue = StringSetting::AllocUnique(6, C2ConstMemoryBlock<char>(initValue));
- stringValue = StringSetting::AllocUnique(6, initValue);
- static_assert(std::is_same<decltype(stringValue->m.value), char[]>::value, "should be char[]");
- EXPECT_EQ(0, memcmp(stringValue->m.value, "ABCD\0", 6));
- EXPECT_EQ(6u, stringValue->flexCount());
- std::vector<C2FieldDescriptor> fields = stringValue->FieldList();
- EXPECT_EQ(1u, fields.size());
- EXPECT_EQ(FD::STRING, fields.cbegin()->type());
- EXPECT_EQ(0u, fields.cbegin()->extent());
- EXPECT_EQ(C2String("value"), fields.cbegin()->name());
-
- stringValue = StringSetting::AllocUnique(3, C2ConstMemoryBlock<char>(initValue));
- EXPECT_EQ(0, memcmp(stringValue->m.value, "AB", 3));
- EXPECT_EQ(3u, stringValue->flexCount());
-
- stringValue = StringSetting::AllocUnique(11, "initValue");
- EXPECT_EQ(0, memcmp(stringValue->m.value, "initValue\0", 11));
- EXPECT_EQ(11u, stringValue->flexCount());
-
- stringValue = StringSetting::AllocUnique(initValue);
- EXPECT_EQ(0, memcmp(stringValue->m.value, "ABCD", 5));
- EXPECT_EQ(5u, stringValue->flexCount());
-
- stringValue = StringSetting::AllocUnique({ 'A', 'B', 'C', 'D' });
- EXPECT_EQ(0, memcmp(stringValue->m.value, "ABC", 4));
- EXPECT_EQ(4u, stringValue->flexCount());
- }
-
- {
- uint32_t videoWidth[] = { 12u, C2NumbersStreamTuning::output::PARAM_TYPE, 100 };
- C2Param *p1 = C2Param::From(videoWidth, sizeof(videoWidth));
- EXPECT_NE(nullptr, p1);
- EXPECT_EQ(12u, p1->size());
- EXPECT_EQ(p1->type(), C2NumbersStreamTuning::output::PARAM_TYPE);
-
- C2NumbersStreamTuning::output *vst = C2NumbersStreamTuning::output::From(p1);
- EXPECT_NE(nullptr, vst);
- if (vst) {
- EXPECT_EQ(1u, vst->flexCount());
- EXPECT_EQ(100, vst->m.mNumbers[0]);
- }
-
- p1 = C2Param::From(videoWidth, sizeof(videoWidth) + 2);
- EXPECT_EQ(nullptr, p1);
-
- p1 = C2Param::From(videoWidth, sizeof(videoWidth) - 2);
- EXPECT_EQ(nullptr, p1);
-
- p1 = C2Param::From(videoWidth, 3);
- EXPECT_EQ(nullptr, p1);
-
- p1 = C2Param::From(videoWidth, 0);
- EXPECT_EQ(nullptr, p1);
- }
-
- {
- uint32_t videoWidth[] = { 16u, C2NumbersPortTuning::input::PARAM_TYPE, 101, 102 };
-
- C2Param *p1 = C2Param::From(videoWidth, sizeof(videoWidth));
- EXPECT_NE(nullptr, p1);
- EXPECT_EQ(16u, p1->size());
- EXPECT_EQ(p1->type(), C2NumbersPortTuning::input::PARAM_TYPE);
-
- C2NumbersPortTuning::input *vpt = C2NumbersPortTuning::input::From(p1);
- EXPECT_NE(nullptr, vpt);
- if (vpt) {
- EXPECT_EQ(2u, vpt->flexCount());
- EXPECT_EQ(101, vpt->m.mNumbers[0]);
- EXPECT_EQ(102, vpt->m.mNumbers[1]);
- }
-
- p1 = C2Param::From(videoWidth, sizeof(videoWidth) + 2);
- EXPECT_EQ(nullptr, p1);
-
- p1 = C2Param::From(videoWidth, sizeof(videoWidth) - 2);
- EXPECT_EQ(nullptr, p1);
-
- p1 = C2Param::From(videoWidth, 3);
- EXPECT_EQ(nullptr, p1);
-
- p1 = C2Param::From(videoWidth, 0);
- EXPECT_EQ(nullptr, p1);
- }
-}
-
-TEST_F(C2ParamTest, C2ValueTest) {
- C2Value val;
- int32_t i32 = -32;
- int64_t i64 = -64;
- uint32_t u32 = 32;
- uint64_t u64 = 64;
- float fp = 1.5f;
-
- EXPECT_EQ(C2Value::NO_INIT, val.type());
- EXPECT_EQ(false, val.get(&i32));
- EXPECT_EQ(-32, i32);
- EXPECT_EQ(false, val.get(&i64));
- EXPECT_EQ(-64, i64);
- EXPECT_EQ(false, val.get(&u32));
- EXPECT_EQ(32u, u32);
- EXPECT_EQ(false, val.get(&u64));
- EXPECT_EQ(64u, u64);
- EXPECT_EQ(false, val.get(&fp));
- EXPECT_EQ(1.5f, fp);
-
- val = int32_t(-3216);
- EXPECT_EQ(C2Value::INT32, val.type());
- EXPECT_EQ(true, val.get(&i32));
- EXPECT_EQ(-3216, i32);
- EXPECT_EQ(false, val.get(&i64));
- EXPECT_EQ(-64, i64);
- EXPECT_EQ(false, val.get(&u32));
- EXPECT_EQ(32u, u32);
- EXPECT_EQ(false, val.get(&u64));
- EXPECT_EQ(64u, u64);
- EXPECT_EQ(false, val.get(&fp));
- EXPECT_EQ(1.5f, fp);
-
- val = uint32_t(3216);
- EXPECT_EQ(C2Value::UINT32, val.type());
- EXPECT_EQ(false, val.get(&i32));
- EXPECT_EQ(-3216, i32);
- EXPECT_EQ(false, val.get(&i64));
- EXPECT_EQ(-64, i64);
- EXPECT_EQ(true, val.get(&u32));
- EXPECT_EQ(3216u, u32);
- EXPECT_EQ(false, val.get(&u64));
- EXPECT_EQ(64u, u64);
- EXPECT_EQ(false, val.get(&fp));
- EXPECT_EQ(1.5f, fp);
-
- val = int64_t(-6432);
- EXPECT_EQ(C2Value::INT64, val.type());
- EXPECT_EQ(false, val.get(&i32));
- EXPECT_EQ(-3216, i32);
- EXPECT_EQ(true, val.get(&i64));
- EXPECT_EQ(-6432, i64);
- EXPECT_EQ(false, val.get(&u32));
- EXPECT_EQ(3216u, u32);
- EXPECT_EQ(false, val.get(&u64));
- EXPECT_EQ(64u, u64);
- EXPECT_EQ(false, val.get(&fp));
- EXPECT_EQ(1.5f, fp);
-
- val = uint64_t(6432);
- EXPECT_EQ(C2Value::UINT64, val.type());
- EXPECT_EQ(false, val.get(&i32));
- EXPECT_EQ(-3216, i32);
- EXPECT_EQ(false, val.get(&i64));
- EXPECT_EQ(-6432, i64);
- EXPECT_EQ(false, val.get(&u32));
- EXPECT_EQ(3216u, u32);
- EXPECT_EQ(true, val.get(&u64));
- EXPECT_EQ(6432u, u64);
- EXPECT_EQ(false, val.get(&fp));
- EXPECT_EQ(1.5f, fp);
-
- val = 15.25f;
- EXPECT_EQ(C2Value::FLOAT, val.type());
- EXPECT_EQ(false, val.get(&i32));
- EXPECT_EQ(-3216, i32);
- EXPECT_EQ(false, val.get(&i64));
- EXPECT_EQ(-6432, i64);
- EXPECT_EQ(false, val.get(&u32));
- EXPECT_EQ(3216u, u32);
- EXPECT_EQ(false, val.get(&u64));
- EXPECT_EQ(6432u, u64);
- EXPECT_EQ(true, val.get(&fp));
- EXPECT_EQ(15.25f, fp);
-}
-
diff --git a/codec2/tests/C2SampleComponent_test.cpp b/codec2/tests/C2SampleComponent_test.cpp
deleted file mode 100644
index cd354ad..0000000
--- a/codec2/tests/C2SampleComponent_test.cpp
+++ /dev/null
@@ -1,432 +0,0 @@
-/*
- * Copyright 2014 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SampleComponent_test"
-
-#include <gtest/gtest.h>
-
-#define __C2_GENERATE_GLOBAL_VARS__
-#include <C2Component.h>
-#include <C2Config.h>
-#include <C2Debug.h>
-#include <C2Enum.h>
-
-#include <unordered_map>
-
-class C2SampleComponentTest : public ::testing::Test {
-};
-
-void PrintTo(const C2FieldDescriptor &fd, ::std::ostream *os) {
- using FD=C2FieldDescriptor;
- switch (fd.type()) {
- case FD::INT32: *os << "i32"; break;
- case FD::INT64: *os << "i64"; break;
- case FD::UINT32: *os << "u32"; break;
- case FD::UINT64: *os << "u64"; break;
- case FD::FLOAT: *os << "float"; break;
- case FD::STRING: *os << "char"; break;
- case FD::BLOB: *os << "u8"; break;
- default:
- if (fd.type() & FD::STRUCT_FLAG) {
- *os << "struct-" << (fd.type() & ~FD::STRUCT_FLAG);
- } else {
- *os << "type-" << fd.type();
- }
- }
- *os << " " << fd.name();
- if (fd.extent() > 1) {
- *os << "[" << fd.extent() << "]";
- } else if (fd.extent() == 0) {
- *os << "[]";
- }
- *os << " (" << fd._mFieldId << "*" << fd.extent() << ")";
-}
-
-C2ENUM(
- MetadataType, int32_t,
- kInvalid = -1,
- kNone = 0,
- kGralloc,
- kNativeHandle,
- kANativeWindow,
- kCamera,
-)
-
-enum {
- kParamIndexVideoConfig = 0x1234,
-};
-
-struct C2VideoConfigStruct {
- int32_t width;
- uint32_t height;
- MetadataType metadataType;
- int32_t supportedFormats[];
-
- C2VideoConfigStruct() {}
-
- DEFINE_AND_DESCRIBE_FLEX_C2STRUCT(VideoConfig, supportedFormats)
- C2FIELD(width, "width")
- C2FIELD(height, "height")
- C2FIELD(metadataType, "metadata-type")
- C2FIELD(supportedFormats, "formats")
-};
-
-typedef C2PortParam<C2Tuning, C2VideoConfigStruct> C2VideoConfigPortTuning;
-
-class MyComponentInstance : public C2ComponentInterface {
-public:
- virtual C2String getName() const override {
- /// \todo this seems too specific
- return "sample.interface";
- };
-
- virtual c2_node_id_t getId() const override {
- /// \todo how are these shared?
- return 0;
- }
-
- virtual c2_status_t config_vb(
- const std::vector<C2Param*> ¶ms,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2SettingResult>>* const failures) override {
- (void)params;
- (void)failures;
- (void)mayBlock;
- return C2_OMITTED;
- }
-
- virtual c2_status_t createTunnel_sm(c2_node_id_t targetComponent) override {
- (void)targetComponent;
- return C2_OMITTED;
- }
-
- virtual c2_status_t query_vb(
- const std::vector<C2Param*> &stackParams,
- const std::vector<C2Param::Index> &heapParamIndices,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2Param>>* const heapParams) const override {
- for (C2Param* const param : stackParams) {
- (void)mayBlock;
- if (!*param) { // param is already invalid - remember it
- continue;
- }
-
- // note: this does not handle stream params (should use index...)
- if (!mMyParams.count(param->index())) {
- continue; // not my param
- }
-
- C2Param & myParam = mMyParams.find(param->index())->second;
- if (myParam.size() != param->size()) { // incorrect size
- param->invalidate();
- continue;
- }
-
- param->updateFrom(myParam);
- }
-
- for (const C2Param::Index index : heapParamIndices) {
- if (mMyParams.count(index)) {
- C2Param & myParam = mMyParams.find(index)->second;
- std::unique_ptr<C2Param> paramCopy(C2Param::Copy(myParam));
- heapParams->push_back(std::move(paramCopy));
- }
- }
-
- return C2_OK;
- }
-
- std::unordered_map<uint32_t, C2Param &> mMyParams;
-
- C2ComponentDomainInfo mDomainInfo;
-
- MyComponentInstance() {
- mMyParams.insert({mDomainInfo.index(), mDomainInfo});
- }
-
- virtual c2_status_t releaseTunnel_sm(c2_node_id_t targetComponent) override {
- (void)targetComponent;
- return C2_OMITTED;
- }
-
- class MyParamReflector : public C2ParamReflector {
- const MyComponentInstance *instance;
-
- public:
- MyParamReflector(const MyComponentInstance *i) : instance(i) { }
-
- virtual std::unique_ptr<C2StructDescriptor> describe(C2Param::CoreIndex paramIndex) const override {
- switch (paramIndex.typeIndex()) {
- case decltype(instance->mDomainInfo)::CORE_INDEX:
- default:
- return std::unique_ptr<C2StructDescriptor>(new C2StructDescriptor{
- instance->mDomainInfo.type(),
- decltype(instance->mDomainInfo)::FieldList(),
- });
- }
- return nullptr;
- }
- };
-
- virtual c2_status_t querySupportedValues_vb(
- std::vector<C2FieldSupportedValuesQuery> &fields,
- c2_blocking_t mayBlock) const override {
- (void)mayBlock;
- for (C2FieldSupportedValuesQuery &query : fields) {
- if (query.field() == C2ParamField(&mDomainInfo, &C2ComponentDomainInfo::value)) {
- query.values = C2FieldSupportedValues(
- false /* flag */,
- &mDomainInfo.value
- //,
- //{(int32_t)C2DomainVideo}
- );
- query.status = C2_OK;
- } else {
- query.status = C2_BAD_INDEX;
- }
- }
- return C2_OK;
- }
-
- std::shared_ptr<C2ParamReflector> getParamReflector() const {
- return std::shared_ptr<C2ParamReflector>(new MyParamReflector(this));
- }
-
- virtual c2_status_t querySupportedParams_nb(
- std::vector<std::shared_ptr<C2ParamDescriptor>> * const params) const override {
- params->push_back(std::make_shared<C2ParamDescriptor>(
- true /* required */, "_domain", &mDomainInfo));
- params->push_back(std::shared_ptr<C2ParamDescriptor>(
- new C2ParamDescriptor(true /* required */, "_domain", &mDomainInfo)));
- return C2_OK;
- }
-
- virtual ~MyComponentInstance() override = default;
-};
-
-template<typename E, bool S=std::is_enum<E>::value>
-struct getter {
- int32_t get(const C2FieldSupportedValues::Primitive &p, int32_t*) {
- return p.i32;
- }
- int64_t get(const C2FieldSupportedValues::Primitive &p, int64_t*) {
- return p.i64;
- }
- uint32_t get(const C2FieldSupportedValues::Primitive &p, uint32_t*) {
- return p.u32;
- }
- uint64_t get(const C2FieldSupportedValues::Primitive &p, uint64_t*) {
- return p.u64;
- }
- float get(const C2FieldSupportedValues::Primitive &p, float*) {
- return p.fp;
- }
-};
-
-template<typename E>
-struct getter<E, true> {
- typename std::underlying_type<E>::type get(const C2FieldSupportedValues::Primitive &p, E*) {
- using u=typename std::underlying_type<E>::type;
- return getter<u>().get(p, (u*)0);
- }
-};
-
-template<typename T, bool E=std::is_enum<T>::value>
-struct lax_underlying_type {
- typedef typename std::underlying_type<T>::type type;
-};
-
-template<typename T>
-struct lax_underlying_type<T, false> {
- typedef T type;
-};
-
-template<typename E>
-typename lax_underlying_type<E>::type get(
- const C2FieldSupportedValues::Primitive &p, E*) {
- return getter<E>().get(p, (E*)0);
-}
-
-template<typename T>
-void dumpFSV(const C2FieldSupportedValues &sv, T*t) {
- using namespace std;
- cout << (std::is_enum<T>::value ? (std::is_signed<typename lax_underlying_type<T>::type>::value ? "i" : "u")
- : std::is_integral<T>::value ? std::is_signed<T>::value ? "i" : "u" : "f")
- << (8 * sizeof(T));
- if (sv.type == sv.RANGE) {
- cout << ".range(" << get(sv.range.min, t);
- if (get(sv.range.step, t) != std::is_integral<T>::value) {
- cout << ":" << get(sv.range.step, t);
- }
- if (get(sv.range.num, t) != 1 || get(sv.range.denom, t) != 1) {
- cout << ":" << get(sv.range.num, t) << "/" << get(sv.range.denom, t);
- }
- cout << get(sv.range.max, t) << ")";
- }
- if (sv.values.size()) {
- cout << (sv.type == sv.FLAGS ? ".flags(" : ".list(");
- const char *sep = "";
- for (const C2FieldSupportedValues::Primitive &p : sv.values) {
- cout << sep << get(p, t);
- sep = ",";
- }
- cout << ")";
- }
- cout << endl;
-}
-
-void dumpType(C2Param::Type type) {
- using namespace std;
- cout << (type.isVendor() ? "Vendor" : "C2");
- if (type.forInput()) {
- cout << "Input";
- } else if (type.forOutput()) {
- cout << "Output";
- } else if (type.forPort() && !type.forStream()) {
- cout << "Port";
- }
- if (type.forStream()) {
- cout << "Stream";
- }
-
- if (type.isFlexible()) {
- cout << "Flex";
- }
-
- cout << type.typeIndex();
-
- switch (type.kind()) {
- case C2Param::INFO: cout << "Info"; break;
- case C2Param::SETTING: cout << "Setting"; break;
- case C2Param::TUNING: cout << "Tuning"; break;
- case C2Param::STRUCT: cout << "Struct"; break;
- default: cout << "Kind" << (int32_t)type.kind(); break;
- }
-}
-
-void dumpType(C2Param::CoreIndex type) {
- using namespace std;
- cout << (type.isVendor() ? "Vendor" : "C2");
- if (type.isFlexible()) {
- cout << "Flex";
- }
-
- cout << type.typeIndex() << "Struct";
-}
-
-void dumpType(C2FieldDescriptor::type_t type) {
- using namespace std;
- switch (type) {
- case C2FieldDescriptor::BLOB: cout << "blob "; break;
- case C2FieldDescriptor::FLOAT: cout << "float "; break;
- case C2FieldDescriptor::INT32: cout << "int32_t "; break;
- case C2FieldDescriptor::INT64: cout << "int64_t "; break;
- case C2FieldDescriptor::UINT32: cout << "uint32_t "; break;
- case C2FieldDescriptor::UINT64: cout << "uint64_t "; break;
- case C2FieldDescriptor::STRING: cout << "char "; break;
- default:
- cout << "struct ";
- dumpType((C2Param::Type)type);
- break;
- }
-}
-
-void dumpStruct(const C2StructDescriptor &sd) {
- using namespace std;
- cout << "struct ";
- dumpType(sd.coreIndex());
- cout << " {" << endl;
- //C2FieldDescriptor &f;
- for (const C2FieldDescriptor &f : sd) {
- PrintTo(f, &cout);
- cout << endl;
-
- if (f.namedValues().size()) {
- cout << ".named(";
- const char *sep = "";
- for (const C2FieldDescriptor::NamedValueType &p : f.namedValues()) {
- cout << sep << p.first << "=";
- switch (f.type()) {
- case C2FieldDescriptor::INT32: cout << get(p.second, (int32_t *)0); break;
- case C2FieldDescriptor::INT64: cout << get(p.second, (int64_t *)0); break;
- case C2FieldDescriptor::UINT32: cout << get(p.second, (uint32_t *)0); break;
- case C2FieldDescriptor::UINT64: cout << get(p.second, (uint64_t *)0); break;
- case C2FieldDescriptor::FLOAT: cout << get(p.second, (float *)0); break;
- default: cout << "???"; break;
- }
- sep = ",";
- }
- cout << ")";
- }
- }
-
- cout << "};" << endl;
-}
-
-void dumpDesc(const C2ParamDescriptor &pd) {
- using namespace std;
- if (pd.isRequired()) {
- cout << "required ";
- }
- if (pd.isPersistent()) {
- cout << "persistent ";
- }
- cout << "struct ";
- dumpType(C2Param::Type(pd.index().type()));
- cout << " " << pd.name() << ";" << endl;
-}
-
-TEST_F(C2SampleComponentTest, ReflectorTest) {
- C2ComponentDomainInfo domainInfo;
- std::shared_ptr<MyComponentInstance> myComp(new MyComponentInstance);
- std::shared_ptr<C2ComponentInterface> comp = myComp;
-
- std::unique_ptr<C2StructDescriptor> desc{
- myComp->getParamReflector()->describe(C2ComponentDomainInfo::CORE_INDEX)};
- dumpStruct(*desc);
-
- std::vector<C2FieldSupportedValuesQuery> query = {
- { C2ParamField(&domainInfo, &C2ComponentDomainInfo::value),
- C2FieldSupportedValuesQuery::CURRENT },
- C2FieldSupportedValuesQuery(C2ParamField(&domainInfo, &C2ComponentDomainInfo::value),
- C2FieldSupportedValuesQuery::CURRENT),
- C2FieldSupportedValuesQuery::Current(C2ParamField(&domainInfo, &C2ComponentDomainInfo::value)),
- };
-
- EXPECT_EQ(C2_OK, comp->querySupportedValues_vb(query, C2_DONT_BLOCK));
-
- for (const C2FieldSupportedValuesQuery &q : query) {
- dumpFSV(q.values, &domainInfo.value);
- }
-}
-
-TEST_F(C2SampleComponentTest, FieldSupportedValuesTest) {
- typedef C2GlobalParam<C2Info, C2Uint32Value, 0> Uint32TestInfo;
- Uint32TestInfo t;
- std::vector<C2FieldSupportedValues> values;
- values.push_back(C2FieldSupportedValues(0, 10, 1)); // min, max, step
- values.push_back(C2FieldSupportedValues(1, 64, 2, 1)); // min, max, num, den
- values.push_back(C2FieldSupportedValues(false, {1, 2, 3})); // flags, std::initializer_list
- uint32_t val[] = {1, 3, 5, 7};
- std::vector<uint32_t> v(std::begin(val), std::end(val));
- values.push_back(C2FieldSupportedValues(false, v)); // flags, std::vector
-
- for (const C2FieldSupportedValues &sv : values) {
- dumpFSV(sv, &t.value);
- }
-}
-
diff --git a/codec2/tests/C2UtilTest.cpp b/codec2/tests/C2UtilTest.cpp
deleted file mode 100644
index 59cd313..0000000
--- a/codec2/tests/C2UtilTest.cpp
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2UtilTest"
-
-#include <gtest/gtest.h>
-
-#define __C2_GENERATE_GLOBAL_VARS__
-#include <_C2MacroUtils.h>
-#include <C2Enum.h>
-
-/** \file
- * Tests for vndk/util.
- */
-
-/* --------------------------------------- _C2MacroUtils --------------------------------------- */
-
-static_assert(0 == _C2_ARGC(), "should be 0");
-static_assert(1 == _C2_ARGC(1), "should be 1");
-static_assert(2 == _C2_ARGC(1, 2), "should be 2");
-static_assert(64 == _C2_ARGC(
- 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
- 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
- 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64), "should be 64");
-
-static_assert(0 == _C2_ARGC(,), "should be 0");
-static_assert(1 == _C2_ARGC(1,), "should be 1");
-static_assert(2 == _C2_ARGC(1, 2,), "should be 2");
-static_assert(64 == _C2_ARGC(
- 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
- 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
- 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,), "should be 64");
-
-/* ---------------------------------------- _C2EnumUtils ---------------------------------------- */
-
-class C2UtilTest : public ::testing::Test {
-};
-
-C2ENUM(Enum1, uint32_t,
- Enum1Value1,
- Enum1Value2,
- Enum1Value4 = Enum1Value2 + 2,
-);
-
-C2ENUM_CUSTOM_PREFIX(Enum2, uint32_t, "Enum",
- Enum2Value1,
- Enum2Value2,
- Enum2Value4 = Enum1Value2 + 2,
-);
-
-C2ENUM_CUSTOM_NAMES(Enum3, uint8_t,
- ({ { "value1", Enum3Value1 },
- { "value2", Enum3Value2 },
- { "value4", Enum3Value4 },
- { "invalid", Invalid } }),
- Enum3Value1,
- Enum3Value2,
- Enum3Value4 = Enum3Value2 + 2,
- Invalid,
-);
-
-TEST_F(C2UtilTest, EnumUtilsTest) {
- std::vector<std::pair<C2String, Enum3>> pairs ( { { "value1", Enum3Value1 },
- { "value2", Enum3Value2 },
- { "value4", Enum3Value4 },
- { "invalid", Invalid } });
- Enum3 e3;
- C2FieldDescriptor::namedValuesFor(e3);
-
- // upper case
- EXPECT_EQ("yes", _C2EnumUtils::camelCaseToDashed("YES"));
- EXPECT_EQ("no", _C2EnumUtils::camelCaseToDashed("NO"));
- EXPECT_EQ("yes-no", _C2EnumUtils::camelCaseToDashed("YES_NO"));
- EXPECT_EQ("yes-no", _C2EnumUtils::camelCaseToDashed("YES__NO"));
- EXPECT_EQ("a2dp", _C2EnumUtils::camelCaseToDashed("A2DP"));
- EXPECT_EQ("mp2-ts", _C2EnumUtils::camelCaseToDashed("MP2_TS"));
- EXPECT_EQ("block-2d", _C2EnumUtils::camelCaseToDashed("BLOCK_2D"));
- EXPECT_EQ("mpeg-2-ts", _C2EnumUtils::camelCaseToDashed("MPEG_2_TS"));
- EXPECT_EQ("_hidden-value", _C2EnumUtils::camelCaseToDashed("_HIDDEN_VALUE"));
- EXPECT_EQ("__hidden-value2", _C2EnumUtils::camelCaseToDashed("__HIDDEN_VALUE2"));
- EXPECT_EQ("__hidden-value-2", _C2EnumUtils::camelCaseToDashed("__HIDDEN_VALUE_2"));
-
- // camel case
- EXPECT_EQ("yes", _C2EnumUtils::camelCaseToDashed("Yes"));
- EXPECT_EQ("no", _C2EnumUtils::camelCaseToDashed("No"));
- EXPECT_EQ("yes-no", _C2EnumUtils::camelCaseToDashed("YesNo"));
- EXPECT_EQ("yes-no", _C2EnumUtils::camelCaseToDashed("Yes_No"));
- EXPECT_EQ("mp2-ts", _C2EnumUtils::camelCaseToDashed("MP2Ts"));
- EXPECT_EQ("block-2d", _C2EnumUtils::camelCaseToDashed("Block2D"));
- EXPECT_EQ("mpeg-2-ts", _C2EnumUtils::camelCaseToDashed("Mpeg2ts"));
- EXPECT_EQ("_hidden-value", _C2EnumUtils::camelCaseToDashed("_HiddenValue"));
- EXPECT_EQ("__hidden-value-2", _C2EnumUtils::camelCaseToDashed("__HiddenValue2"));
-
- // mixed case
- EXPECT_EQ("mp2t-s", _C2EnumUtils::camelCaseToDashed("MP2T_s"));
- EXPECT_EQ("block-2d", _C2EnumUtils::camelCaseToDashed("Block_2D"));
- EXPECT_EQ("block-2-d", _C2EnumUtils::camelCaseToDashed("Block2_D"));
- EXPECT_EQ("mpeg-2-ts", _C2EnumUtils::camelCaseToDashed("Mpeg_2ts"));
- EXPECT_EQ("mpeg-2-ts", _C2EnumUtils::camelCaseToDashed("Mpeg_2_TS"));
- EXPECT_EQ("_hidden-value", _C2EnumUtils::camelCaseToDashed("_Hidden__VALUE"));
- EXPECT_EQ("__hidden-value-2", _C2EnumUtils::camelCaseToDashed("__HiddenValue_2"));
- EXPECT_EQ("_2", _C2EnumUtils::camelCaseToDashed("_2"));
- EXPECT_EQ("__23", _C2EnumUtils::camelCaseToDashed("__23"));
-}
-
diff --git a/codec2/tests/C2_test.cpp b/codec2/tests/C2_test.cpp
deleted file mode 100644
index 2ada9f9..0000000
--- a/codec2/tests/C2_test.cpp
+++ /dev/null
@@ -1,159 +0,0 @@
-/*
- * Copyright 2014 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2_test"
-
-#include <gtest/gtest.h>
-
-#include <C2.h>
-
-/* ======================================= STATIC TESTS ======================================= */
-
-template<int N>
-struct c2_const_checker
-{
- inline constexpr static int num() { return N; }
-};
-
-constexpr auto min_i32_i32 = c2_min(int32_t(1), int32_t(2));
-static_assert(std::is_same<decltype(min_i32_i32), const int32_t>::value, "should be int32_t");
-constexpr auto min_i32_i64 = c2_min(int32_t(3), int64_t(2));
-static_assert(std::is_same<decltype(min_i32_i64), const int64_t>::value, "should be int64_t");
-constexpr auto min_i8_i32 = c2_min(int8_t(0xff), int32_t(0xffffffff));
-static_assert(std::is_same<decltype(min_i8_i32), const int32_t>::value, "should be int32_t");
-
-static_assert(c2_const_checker<min_i32_i32>::num() == 1, "should be 1");
-static_assert(c2_const_checker<min_i32_i64>::num() == 2, "should be 2");
-static_assert(c2_const_checker<min_i8_i32>::num() == 0xffffffff, "should be 0xffffffff");
-
-constexpr auto min_u32_u32 = c2_min(uint32_t(1), uint32_t(2));
-static_assert(std::is_same<decltype(min_u32_u32), const uint32_t>::value, "should be uint32_t");
-constexpr auto min_u32_u64 = c2_min(uint32_t(3), uint64_t(2));
-static_assert(std::is_same<decltype(min_u32_u64), const uint32_t>::value, "should be uint32_t");
-constexpr auto min_u32_u8 = c2_min(uint32_t(0xffffffff), uint8_t(0xff));
-static_assert(std::is_same<decltype(min_u32_u8), const uint8_t>::value, "should be uint8_t");
-
-static_assert(c2_const_checker<min_u32_u32>::num() == 1, "should be 1");
-static_assert(c2_const_checker<min_u32_u64>::num() == 2, "should be 2");
-static_assert(c2_const_checker<min_u32_u8>::num() == 0xff, "should be 0xff");
-
-constexpr auto max_i32_i32 = c2_max(int32_t(1), int32_t(2));
-static_assert(std::is_same<decltype(max_i32_i32), const int32_t>::value, "should be int32_t");
-constexpr auto max_i32_i64 = c2_max(int32_t(3), int64_t(2));
-static_assert(std::is_same<decltype(max_i32_i64), const int64_t>::value, "should be int64_t");
-constexpr auto max_i8_i32 = c2_max(int8_t(0xff), int32_t(0xffffffff));
-static_assert(std::is_same<decltype(max_i8_i32), const int32_t>::value, "should be int32_t");
-
-static_assert(c2_const_checker<max_i32_i32>::num() == 2, "should be 2");
-static_assert(c2_const_checker<max_i32_i64>::num() == 3, "should be 3");
-static_assert(c2_const_checker<max_i8_i32>::num() == 0xffffffff, "should be 0xffffffff");
-
-constexpr auto max_u32_u32 = c2_max(uint32_t(1), uint32_t(2));
-static_assert(std::is_same<decltype(max_u32_u32), const uint32_t>::value, "should be uint32_t");
-constexpr auto max_u32_u64 = c2_max(uint32_t(3), uint64_t(2));
-static_assert(std::is_same<decltype(max_u32_u64), const uint64_t>::value, "should be uint64_t");
-constexpr auto max_u32_u8 = c2_max(uint32_t(0x7fffffff), uint8_t(0xff));
-static_assert(std::is_same<decltype(max_u32_u8), const uint32_t>::value, "should be uint32_t");
-
-static_assert(c2_const_checker<max_u32_u32>::num() == 2, "should be 2");
-static_assert(c2_const_checker<max_u32_u64>::num() == 3, "should be 3");
-static_assert(c2_const_checker<max_u32_u8>::num() == 0x7fffffff, "should be 0x7fffffff");
-
-/* ======================================= COUNTER TESTS ======================================= */
-
-void c2_cntr_static_test() {
- // sanity checks for construction/assignment
- constexpr c2_cntr32_t c32_a(123);
- constexpr c2_cntr64_t c64_a(-456);
- c2_cntr32_t c32_b __unused = c64_a;
- // c32_b = 64.; // DISALLOWED
- // c2_cntr64_t c64_b = c32_a; // DISALLOWED
-
- // sanity checks for some constexpr operators
- static_assert(std::is_same<decltype(c32_a + c64_a), decltype(c64_a + c32_a)>::value, "+ should result same type");
- static_assert(c32_a + c64_a == c2_cntr32_t(-333), "123 + -456 = -333");
- static_assert(c32_a + c32_a == c2_cntr32_t(246), "123 + 123 = 246");
- static_assert(c64_a + c32_a == c2_cntr32_t(-333), "-456 + 123 = 579");
- static_assert(std::is_same<decltype(c32_a + 1), decltype(1 + c32_a)>::value, "+ should result same type");
- static_assert(c32_a + 456 == c2_cntr32_t(579), "123 + 456 = 579");
- static_assert(456 + c64_a == c2_cntr64_t(0), "456 + -456 = 0");
- static_assert(std::is_same<decltype(c32_a - c64_a), decltype(c64_a - c32_a)>::value, "- should result same type");
- static_assert(c32_a - c64_a == c2_cntr32_t(579), "123 - -456 = 579");
- static_assert(c32_a - c32_a == c2_cntr32_t(0), "123 - 123 = 0");
- static_assert(c64_a - c32_a == c2_cntr32_t(-579), "-456 - 123 = -579");
- static_assert(std::is_same<decltype(c32_a - 1), decltype(1 - c32_a)>::value, "- should result same type");
- static_assert(c32_a - 456 == c2_cntr32_t(-333), "123 - 456 = -333");
- static_assert(456 - c64_a == c2_cntr64_t(912), "456 - -456 = 912");
- static_assert(std::is_same<decltype(c32_a * c64_a), decltype(c64_a * c32_a)>::value, "* should result same type");
- static_assert(c32_a * c64_a == c2_cntr32_t(-56088), "123 * -456 = -56088");
- static_assert(c32_a * c32_a == c2_cntr32_t(15129), "123 * 123 = 15129");
- static_assert(c64_a * c32_a == c2_cntr32_t(-56088), "-456 * 123 = -56088");
- static_assert(std::is_same<decltype(c32_a * 1), decltype(1 * c32_a)>::value, "* should result same type");
- static_assert(c32_a * 456 == c2_cntr32_t(56088), "123 * 456 = 56088");
- static_assert(456 * c64_a == c2_cntr64_t(-207936), "456 * -456 = -207936");
-
- static_assert((c32_a << 26u) == c2_cntr32_t(0xEC000000), "123 << 26 = 0xEC000000");
-
- // sanity checks for unary operators
- static_assert(c2_cntr32_t(1) == +c2_cntr32_t(1), "1 == +1");
- static_assert(c2_cntr32_t(1) == -c2_cntr32_t(-1), "1 == --1");
-
- // sanity checks for comparison
- using c8_t = c2_cntr_t<uint8_t>;
- static_assert(c8_t(-0x80) > c8_t(0x7f), "80 > 7F");
- static_assert(c8_t(-0x80) >= c8_t(0x7f), "80 >= 7F");
- static_assert(c8_t(0x7f) > c8_t(0x7e), "7F > 7E");
- static_assert(c8_t(0x7f) >= c8_t(0x7e), "7F >= 7E");
- static_assert(!(c8_t(-0x80) > c8_t(0)), "80 !> 00");
- static_assert(!(c8_t(-0x80) >= c8_t(0)), "80 !>= 00");
- static_assert(!(c8_t(-0x80) > c8_t(-0x80)), "80 !> 80");
- static_assert(c8_t(-0x80) >= c8_t(-0x80), "80 >= 80");
-
- static_assert(c8_t(-0x80) == c8_t(0x80), "80 == 80");
- static_assert(!(c8_t(-0x80) == c8_t(0)), "80 != 0");
- static_assert(c8_t(-0x80) != c8_t(0x7f), "80 != 7F");
- static_assert(!(c8_t(0x7f) != c8_t(0x7f)), "80 != 7F");
-
- static_assert(c8_t(0x7f) < c8_t(-0x80), "7F < 80");
- static_assert(c8_t(0x7f) <= c8_t(-0x80), "7F < 80");
- static_assert(c8_t(0x7e) < c8_t(0x7f), "7E < 7F");
- static_assert(c8_t(0x7e) <= c8_t(0x7f), "7E < 7F");
- static_assert(!(c8_t(-0x40) < c8_t(0x40)), "-40 !< 40");
- static_assert(!(c8_t(-0x40) <= c8_t(0x40)), "-40 !<= 40");
- static_assert(!(c8_t(-0x40) < c8_t(-0x40)), "-40 !< -40");
- static_assert(c8_t(-0x40) <= c8_t(-0x40), "-40 <= -40");
-
- static_assert(c2_cntr32_t(-0x7fffffff - 1) > c2_cntr32_t(0x7fffffff), "80 > 7F");
- static_assert(!(c2_cntr32_t(-0x7fffffff - 1) > c2_cntr32_t(0)), "80 !> 00");
- static_assert(c2_cntr32_t(1) == c2_cntr32_t(c2_cntr64_t(0x100000001ul)), "1 == 1");
-}
-
-class C2Test : public ::testing::Test {
-};
-
-TEST_F(C2Test, CounterTest) {
- c2_cntr32_t c32_a(123);
- c2_cntr64_t c64_a(-456);
- EXPECT_EQ(c32_a += 3, c2_cntr32_t(126));
- EXPECT_EQ(c32_a += c64_a, c2_cntr32_t(-330));
- EXPECT_EQ(c32_a <<= 2u, c2_cntr32_t(-1320));
- EXPECT_EQ(c64_a *= 3, c2_cntr64_t(-1368));
- EXPECT_EQ(c32_a -= c64_a, c2_cntr32_t(48));
- EXPECT_EQ(c32_a -= 40, c2_cntr32_t(8));
- EXPECT_EQ(c32_a *= c32_a, c2_cntr32_t(64));
-}
-
diff --git a/codec2/tests/vndk/C2BufferTest.cpp b/codec2/tests/vndk/C2BufferTest.cpp
deleted file mode 100644
index 780994a..0000000
--- a/codec2/tests/vndk/C2BufferTest.cpp
+++ /dev/null
@@ -1,768 +0,0 @@
-/*
- * Copyright 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <gtest/gtest.h>
-
-#include <C2AllocatorIon.h>
-#include <C2AllocatorGralloc.h>
-#include <C2Buffer.h>
-#include <C2BufferPriv.h>
-#include <C2ParamDef.h>
-
-#include <system/graphics.h>
-
-namespace android {
-
-class C2BufferUtilsTest : public ::testing::Test {
- static void StaticSegmentTest() {
- // constructor
- static_assert(C2Segment(123u, 456u).offset == 123, "");
- static_assert(C2Segment(123u, 456u).size == 456, "");
-
- // empty
- static_assert(!C2Segment(123u, 456u).isEmpty(), "");
- static_assert(C2Segment(123u, 0u).isEmpty(), "");
-
- // valid
- static_assert(C2Segment(123u, 456u).isValid(), "");
- static_assert(C2Segment(123u, ~123u).isValid(), "");
- static_assert(!C2Segment(123u, 1 + ~123u).isValid(), "");
-
- // bool()
- static_assert(C2Segment(123u, 456u), "");
- static_assert((bool)C2Segment(123u, ~123u), "");
- static_assert(!bool(C2Segment(123u, 1 + ~123u)), "");
- static_assert(!bool(C2Segment(123u, 0)), "");
-
- // !
- static_assert(!!C2Segment(123u, 456u), "");
- static_assert(!!C2Segment(123u, ~123u), "");
- static_assert(!C2Segment(123u, 1 + ~123u), "");
- static_assert(!C2Segment(123u, 0), "");
-
- // contains
- static_assert(C2Segment(123u, ~123u).contains(C2Segment(123u, 0)), "");
- static_assert(!C2Segment(123u, 1 + ~123u).contains(C2Segment(123u, 0)), "");
- static_assert(C2Segment(123u, ~123u).contains(C2Segment(123u, ~123u)), "");
- static_assert(!C2Segment(123u, ~123u).contains(C2Segment(123u, 1 + ~123u)), "");
- static_assert(!C2Segment(123u, 1 + ~123u).contains(C2Segment(123u, 1 + ~123u)), "");
- static_assert(!C2Segment(123u, ~123u).contains(C2Segment(122u, 2u)), "");
- static_assert(C2Segment(123u, ~123u).contains(C2Segment(123u, 2u)), "");
- static_assert(C2Segment(123u, 3u).contains(C2Segment(124u, 2u)), "");
- static_assert(!C2Segment(123u, 3u).contains(C2Segment(125u, 2u)), "");
-
- // ==
- static_assert(C2Segment(123u, 456u) == C2Segment(123u, 456u), "");
- static_assert(!(C2Segment(123u, 456u) == C2Segment(123u, 457u)), "");
- static_assert(!(C2Segment(123u, 456u) == C2Segment(123u, 455u)), "");
- static_assert(!(C2Segment(123u, 456u) == C2Segment(122u, 456u)), "");
- static_assert(!(C2Segment(123u, 456u) == C2Segment(124u, 456u)), "");
- static_assert(!(C2Segment(123u, 0u) == C2Segment(124u, 0u)), "");
- static_assert(C2Segment(123u, 0u) == C2Segment(123u, 0u), "");
- static_assert(C2Segment(123u, 1 + ~123u) == C2Segment(124u, 1 + ~124u), "");
-
- // !=
- static_assert(!(C2Segment(123u, 456u) != C2Segment(123u, 456u)), "");
- static_assert(C2Segment(123u, 456u) != C2Segment(123u, 457u), "");
- static_assert(C2Segment(123u, 456u) != C2Segment(123u, 455u), "");
- static_assert(C2Segment(123u, 456u) != C2Segment(122u, 456u), "");
- static_assert(C2Segment(123u, 456u) != C2Segment(124u, 456u), "");
- static_assert(C2Segment(123u, 0u) != C2Segment(124u, 0u), "");
- static_assert(!(C2Segment(123u, 0u) != C2Segment(123u, 0u)), "");
- static_assert(!(C2Segment(123u, 1 + ~123u) != C2Segment(124u, 1 + ~124u)), "");
-
- // <=
- static_assert(C2Segment(123u, 456u) <= C2Segment(123u, 456u), "");
- static_assert(C2Segment(123u, 456u) <= C2Segment(123u, 457u), "");
- static_assert(C2Segment(123u, 456u) <= C2Segment(122u, 457u), "");
- static_assert(!(C2Segment(123u, 457u) <= C2Segment(123u, 456u)), "");
- static_assert(!(C2Segment(122u, 457u) <= C2Segment(123u, 456u)), "");
- static_assert(!(C2Segment(123u, 457u) <= C2Segment(124u, 457u)), "");
- static_assert(!(C2Segment(122u, 457u) <= C2Segment(123u, 457u)), "");
- static_assert(!(C2Segment(122u, 0u) <= C2Segment(123u, 0u)), "");
- static_assert(C2Segment(123u, 0u) <= C2Segment(122u, 1u), "");
- static_assert(C2Segment(122u, 0u) <= C2Segment(122u, 1u), "");
- static_assert(!(C2Segment(122u, ~122u) <= C2Segment(122u, 1 + ~122u)), "");
- static_assert(!(C2Segment(122u, 1 + ~122u) <= C2Segment(122u, ~122u)), "");
- static_assert(!(C2Segment(122u, 1 + ~122u) <= C2Segment(122u, 1 + ~122u)), "");
-
- // <
- static_assert(!(C2Segment(123u, 456u) < C2Segment(123u, 456u)), "");
- static_assert(C2Segment(123u, 456u) < C2Segment(123u, 457u), "");
- static_assert(C2Segment(123u, 456u) < C2Segment(122u, 457u), "");
- static_assert(!(C2Segment(123u, 457u) < C2Segment(123u, 456u)), "");
- static_assert(!(C2Segment(122u, 457u) < C2Segment(123u, 456u)), "");
- static_assert(!(C2Segment(123u, 457u) < C2Segment(124u, 457u)), "");
- static_assert(!(C2Segment(122u, 457u) < C2Segment(123u, 457u)), "");
- static_assert(!(C2Segment(122u, 0u) < C2Segment(123u, 0u)), "");
- static_assert(C2Segment(123u, 0u) < C2Segment(122u, 1u), "");
- static_assert(C2Segment(122u, 0u) < C2Segment(122u, 1u), "");
- static_assert(!(C2Segment(122u, ~122u) < C2Segment(122u, 1 + ~122u)), "");
- static_assert(!(C2Segment(122u, 1 + ~122u) < C2Segment(122u, ~122u)), "");
- static_assert(!(C2Segment(122u, 1 + ~122u) < C2Segment(122u, 1 + ~122u)), "");
-
- // <=
- static_assert(C2Segment(123u, 456u) >= C2Segment(123u, 456u), "");
- static_assert(C2Segment(123u, 457u) >= C2Segment(123u, 456u), "");
- static_assert(C2Segment(122u, 457u) >= C2Segment(123u, 456u), "");
- static_assert(!(C2Segment(123u, 456u) >= C2Segment(123u, 457u)), "");
- static_assert(!(C2Segment(123u, 456u) >= C2Segment(122u, 457u)), "");
- static_assert(!(C2Segment(124u, 457u) >= C2Segment(123u, 457u)), "");
- static_assert(!(C2Segment(123u, 457u) >= C2Segment(122u, 457u)), "");
- static_assert(!(C2Segment(123u, 0u) >= C2Segment(122u, 0u)), "");
- static_assert(C2Segment(122u, 1u) >= C2Segment(123u, 0u), "");
- static_assert(C2Segment(122u, 1u) >= C2Segment(122u, 0u), "");
- static_assert(!(C2Segment(122u, 1 + ~122u) >= C2Segment(122u, ~122u)), "");
- static_assert(!(C2Segment(122u, ~122u) >= C2Segment(122u, 1 + ~122u)), "");
- static_assert(!(C2Segment(122u, 1 + ~122u) >= C2Segment(122u, 1 + ~122u)), "");
-
- // <
- static_assert(!(C2Segment(123u, 456u) > C2Segment(123u, 456u)), "");
- static_assert(C2Segment(123u, 457u) > C2Segment(123u, 456u), "");
- static_assert(C2Segment(122u, 457u) > C2Segment(123u, 456u), "");
- static_assert(!(C2Segment(123u, 456u) > C2Segment(123u, 457u)), "");
- static_assert(!(C2Segment(123u, 456u) > C2Segment(122u, 457u)), "");
- static_assert(!(C2Segment(124u, 457u) > C2Segment(123u, 457u)), "");
- static_assert(!(C2Segment(123u, 457u) > C2Segment(122u, 457u)), "");
- static_assert(!(C2Segment(123u, 0u) > C2Segment(122u, 0u)), "");
- static_assert(C2Segment(122u, 1u) > C2Segment(123u, 0u), "");
- static_assert(C2Segment(122u, 1u) > C2Segment(122u, 0u), "");
- static_assert(!(C2Segment(122u, 1 + ~122u) > C2Segment(122u, ~122u)), "");
- static_assert(!(C2Segment(122u, ~122u) > C2Segment(122u, 1 + ~122u)), "");
- static_assert(!(C2Segment(122u, 1 + ~122u) > C2Segment(122u, 1 + ~122u)), "");
-
- // end
- static_assert(C2Segment(123u, 456u).end() == 579u, "");
- static_assert(C2Segment(123u, 0u).end() == 123u, "");
- static_assert(C2Segment(123u, ~123u).end() == 0xffffffffu, "");
- static_assert(C2Segment(123u, 1 + ~123u).end() == 0u, "");
-
- // intersect
- static_assert(C2Segment(123u, 456u).intersect(C2Segment(123u, 456u)) == C2Segment(123u, 456u), "");
- static_assert(C2Segment(123u, 456u).intersect(C2Segment(123u, 460u)) == C2Segment(123u, 456u), "");
- static_assert(C2Segment(123u, 456u).intersect(C2Segment(124u, 460u)) == C2Segment(124u, 455u), "");
- static_assert(C2Segment(123u, 456u).intersect(C2Segment(579u, 460u)) == C2Segment(579u, 0u), "");
- static_assert(C2Segment(123u, 456u).intersect(C2Segment(589u, 460u)) == C2Segment(589u, ~9u /* -10 */), "");
- static_assert(C2Segment(123u, 456u).intersect(C2Segment(123u, 455u)) == C2Segment(123u, 455u), "");
- static_assert(C2Segment(123u, 456u).intersect(C2Segment(122u, 456u)) == C2Segment(123u, 455u), "");
- static_assert(C2Segment(123u, 456u).intersect(C2Segment(0u, 123u)) == C2Segment(123u, 0u), "");
- static_assert(C2Segment(123u, 456u).intersect(C2Segment(0u, 0u)) == C2Segment(123u, ~122u /* -123 */), "");
-
- // normalize (change invalid segments to empty segments)
- static_assert(C2Segment(123u, 456u).normalize() == C2Segment(123u, 456u), "");
- static_assert(C2Segment(123u, ~123u).normalize() == C2Segment(123u, ~123u), "");
- static_assert(C2Segment(123u, 1 + ~123u).normalize() == C2Segment(123u, 0u), "");
-
- // note: normalize cannot be used to make this work
- static_assert(C2Segment(123u, 456u).intersect(C2Segment(150u, ~150u)).normalize() == C2Segment(150u, 429u), "");
- static_assert(C2Segment(123u, 456u).intersect(C2Segment(150u, 1 + ~150u)).normalize() != C2Segment(150u, 429u), "");
- static_assert(C2Segment(123u, 456u).intersect(C2Segment(150u, 1 + ~150u)).normalize() == C2Segment(150u, 0u), "");
-
- // saturate (change invalid segments to full segments up to max)
- static_assert(C2Segment(123u, 456u).saturate() == C2Segment(123u, 456u), "");
- static_assert(C2Segment(123u, ~123u).saturate() == C2Segment(123u, ~123u), "");
- static_assert(C2Segment(123u, 1 + ~123u).saturate() == C2Segment(123u, ~123u), "");
-
- // note: saturate can be used to make this work but only partially
- static_assert(C2Segment(123u, 456u).intersect(C2Segment(150u, 1 + ~150u).saturate()).normalize() == C2Segment(150u, 429u), "");
- static_assert(C2Segment(123u, 456u).intersect(C2Segment(0u, 100u).saturate()).normalize() == C2Segment(123u, 0u), "");
- static_assert(C2Segment(123u, 456u).intersect(C2Segment(1000u, 100u).saturate()).normalize() != C2Segment(579u, 0u), "");
- static_assert(C2Segment(123u, 456u).intersect(C2Segment(1000u, 100u).saturate()).normalize() == C2Segment(1000u, 0u), "");
-
- }
-
- static void StaticLinearRangeAndCapacityTest() {
- class TestCapacity : public _C2LinearCapacityAspect {
- using _C2LinearCapacityAspect::_C2LinearCapacityAspect;
- friend class C2BufferUtilsTest;
- };
-
- class TestRange : public _C2LinearRangeAspect {
- using _C2LinearRangeAspect::_C2LinearRangeAspect;
- friend class C2BufferUtilsTest;
- };
-
- // _C2LinearCapacityAspect
- static_assert(TestCapacity(0u).capacity() == 0u, "");
- constexpr TestCapacity cap(123u);
- static_assert(TestCapacity(&cap).capacity() == 123u, "");
- static_assert(TestCapacity(nullptr).capacity() == 0u, "");
-
- // _C2LinearCapacityRange
- static_assert(TestRange(&cap).capacity() == 123u, "");
- static_assert(TestRange(&cap).offset() == 0u, "");
- static_assert(TestRange(&cap).size() == 123u, "");
- static_assert(TestRange(&cap).endOffset() == 123u, "");
-
- constexpr TestRange range(&cap, 50u, 100u);
-
- static_assert(range.capacity() == 123u, "");
- static_assert(range.offset() == 50u, "");
- static_assert(range.size() == 73u, "");
- static_assert(range.endOffset() == 123u, "");
-
- static_assert(TestRange(&cap, 20u, 30u).capacity() == 123u, "");
- static_assert(TestRange(&cap, 20u, 30u).offset() == 20u, "");
- static_assert(TestRange(&cap, 20u, 30u).size() == 30u, "");
- static_assert(TestRange(&cap, 20u, 30u).endOffset() == 50u, "");
-
- static_assert(TestRange(&cap, 200u, 30u).capacity() == 123u, "");
- static_assert(TestRange(&cap, 200u, 30u).offset() == 123u, "");
- static_assert(TestRange(&cap, 200u, 30u).size() == 0u, "");
- static_assert(TestRange(&cap, 200u, 30u).endOffset() == 123u, "");
-
- }
-
-};
-
-
-class C2BufferTest : public ::testing::Test {
-public:
- C2BufferTest()
- : mBlockPoolId(C2BlockPool::PLATFORM_START),
- mLinearAllocator(std::make_shared<C2AllocatorIon>('i')),
- mSize(0u),
- mAddr(nullptr),
- mGraphicAllocator(std::make_shared<C2AllocatorGralloc>('g')) {
- }
-
- ~C2BufferTest() = default;
-
- void allocateLinear(size_t capacity) {
- c2_status_t err = mLinearAllocator->newLinearAllocation(
- capacity,
- { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE },
- &mLinearAllocation);
- if (err != C2_OK) {
- mLinearAllocation.reset();
- FAIL() << "C2Allocator::newLinearAllocation() failed: " << err;
- }
- }
-
- void mapLinear(size_t offset, size_t size, uint8_t **addr) {
- ASSERT_TRUE(mLinearAllocation);
- c2_status_t err = mLinearAllocation->map(
- offset,
- size,
- { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE },
- // TODO: fence
- nullptr,
- &mAddr);
- if (err != C2_OK) {
- mAddr = nullptr;
- FAIL() << "C2LinearAllocation::map() failed: " << err;
- }
- ASSERT_NE(nullptr, mAddr);
- mSize = size;
- *addr = (uint8_t *)mAddr;
- }
-
- void unmapLinear() {
- ASSERT_TRUE(mLinearAllocation);
- ASSERT_NE(nullptr, mAddr);
- ASSERT_NE(0u, mSize);
-
- // TODO: fence
- ASSERT_EQ(C2_OK, mLinearAllocation->unmap(mAddr, mSize, nullptr));
- mSize = 0u;
- mAddr = nullptr;
- }
-
- std::shared_ptr<C2BlockPool> makeLinearBlockPool() {
- return std::make_shared<C2PooledBlockPool>(mLinearAllocator, mBlockPoolId++);
- }
-
- void allocateGraphic(uint32_t width, uint32_t height) {
- c2_status_t err = mGraphicAllocator->newGraphicAllocation(
- width,
- height,
- HAL_PIXEL_FORMAT_YCBCR_420_888,
- { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE },
- &mGraphicAllocation);
- if (err != C2_OK) {
- mGraphicAllocation.reset();
- FAIL() << "C2Allocator::newGraphicAllocation() failed: " << err;
- }
- }
-
- void mapGraphic(C2Rect rect, C2PlanarLayout *layout, uint8_t **addr) {
- ASSERT_TRUE(mGraphicAllocation);
- c2_status_t err = mGraphicAllocation->map(
- rect,
- { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE },
- // TODO: fence
- nullptr,
- layout,
- addr);
- if (err != C2_OK) {
- addr[C2PlanarLayout::PLANE_Y] = nullptr;
- addr[C2PlanarLayout::PLANE_U] = nullptr;
- addr[C2PlanarLayout::PLANE_V] = nullptr;
- FAIL() << "C2GraphicAllocation::map() failed: " << err;
- }
- mMappedRect = rect;
- memcpy(mAddrGraphic, addr, sizeof(uint8_t*) * C2PlanarLayout::MAX_NUM_PLANES);
- }
-
- void unmapGraphic() {
- ASSERT_TRUE(mGraphicAllocation);
-
- // TODO: fence
- ASSERT_EQ(C2_OK, mGraphicAllocation->unmap(mAddrGraphic, mMappedRect, nullptr));
- }
-
- std::shared_ptr<C2BlockPool> makeGraphicBlockPool() {
- return std::make_shared<C2BasicGraphicBlockPool>(mGraphicAllocator);
- }
-
-private:
- C2BlockPool::local_id_t mBlockPoolId;
- std::shared_ptr<C2Allocator> mLinearAllocator;
- std::shared_ptr<C2LinearAllocation> mLinearAllocation;
- size_t mSize;
- void *mAddr;
- C2Rect mMappedRect;
- uint8_t* mAddrGraphic[C2PlanarLayout::MAX_NUM_PLANES];
-
- std::shared_ptr<C2Allocator> mGraphicAllocator;
- std::shared_ptr<C2GraphicAllocation> mGraphicAllocation;
-};
-
-TEST_F(C2BufferTest, LinearAllocationTest) {
- constexpr size_t kCapacity = 1024u * 1024u;
-
- allocateLinear(kCapacity);
-
- uint8_t *addr = nullptr;
- mapLinear(0u, kCapacity, &addr);
- ASSERT_NE(nullptr, addr);
-
- for (size_t i = 0; i < kCapacity; ++i) {
- addr[i] = i % 100u;
- }
-
- unmapLinear();
- addr = nullptr;
-
- mapLinear(kCapacity / 3, kCapacity / 3, &addr);
- ASSERT_NE(nullptr, addr);
- for (size_t i = 0; i < kCapacity / 3; ++i) {
- ASSERT_EQ((i + kCapacity / 3) % 100, addr[i]) << " at i = " << i;
- }
-}
-
-TEST_F(C2BufferTest, BlockPoolTest) {
- constexpr size_t kCapacity = 1024u * 1024u;
-
- std::shared_ptr<C2BlockPool> blockPool(makeLinearBlockPool());
-
- std::shared_ptr<C2LinearBlock> block;
- ASSERT_EQ(C2_OK, blockPool->fetchLinearBlock(
- kCapacity,
- { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE },
- &block));
- ASSERT_TRUE(block);
-
- C2Acquirable<C2WriteView> writeViewHolder = block->map();
- C2WriteView writeView = writeViewHolder.get();
- ASSERT_EQ(C2_OK, writeView.error());
- ASSERT_EQ(kCapacity, writeView.capacity());
- ASSERT_EQ(0u, writeView.offset());
- ASSERT_EQ(kCapacity, writeView.size());
-
- uint8_t *data = writeView.data();
- ASSERT_NE(nullptr, data);
- for (size_t i = 0; i < writeView.size(); ++i) {
- data[i] = i % 100u;
- }
-
- writeView.setOffset(kCapacity / 3);
- data = writeView.data();
- ASSERT_NE(nullptr, data);
- for (size_t i = 0; i < writeView.size(); ++i) {
- ASSERT_EQ((i + kCapacity / 3) % 100u, data[i]) << " at i = " << i
- << "; data = " << static_cast<void *>(data);
- }
-
- C2Fence fence;
- C2ConstLinearBlock constBlock = block->share(
- kCapacity / 3, kCapacity / 3, fence);
-
- C2Acquirable<C2ReadView> readViewHolder = constBlock.map();
- C2ReadView readView = readViewHolder.get();
- ASSERT_EQ(C2_OK, readView.error());
- ASSERT_EQ(kCapacity / 3, readView.capacity());
-
- // TODO: fence
- const uint8_t *constData = readView.data();
- ASSERT_NE(nullptr, constData);
- for (size_t i = 0; i < readView.capacity(); ++i) {
- ASSERT_EQ((i + kCapacity / 3) % 100u, constData[i]) << " at i = " << i
- << "; data = " << static_cast<void *>(data)
- << "; constData = " << static_cast<const void *>(constData);
- }
-
- readView = readView.subView(333u, 100u);
- ASSERT_EQ(C2_OK, readView.error());
- ASSERT_EQ(100u, readView.capacity());
-
- constData = readView.data();
- ASSERT_NE(nullptr, constData);
- for (size_t i = 0; i < readView.capacity(); ++i) {
- ASSERT_EQ((i + 333u + kCapacity / 3) % 100u, constData[i]) << " at i = " << i;
- }
-}
-
-void fillPlane(const C2Rect rect, const C2PlaneInfo info, uint8_t *addr, uint8_t value) {
- for (uint32_t row = 0; row < rect.height / info.rowSampling; ++row) {
- int32_t rowOffset = (row + rect.top / info.rowSampling) * info.rowInc;
- for (uint32_t col = 0; col < rect.width / info.colSampling; ++col) {
- int32_t colOffset = (col + rect.left / info.colSampling) * info.colInc;
- addr[rowOffset + colOffset] = value;
- }
- }
-}
-
-bool verifyPlane(const C2Rect rect, const C2PlaneInfo info, const uint8_t *addr, uint8_t value) {
- for (uint32_t row = 0; row < rect.height / info.rowSampling; ++row) {
- int32_t rowOffset = (row + rect.top / info.rowSampling) * info.rowInc;
- for (uint32_t col = 0; col < rect.width / info.colSampling; ++col) {
- int32_t colOffset = (col + rect.left / info.colSampling) * info.colInc;
- if (addr[rowOffset + colOffset] != value) {
- return false;
- }
- }
- }
- return true;
-}
-
-TEST_F(C2BufferTest, GraphicAllocationTest) {
- constexpr uint32_t kWidth = 320;
- constexpr uint32_t kHeight = 240;
-
- allocateGraphic(kWidth, kHeight);
-
- uint8_t *addr[C2PlanarLayout::MAX_NUM_PLANES];
- C2Rect rect(kWidth, kHeight);
- C2PlanarLayout layout;
- mapGraphic(rect, &layout, addr);
- ASSERT_NE(nullptr, addr[C2PlanarLayout::PLANE_Y]);
- ASSERT_NE(nullptr, addr[C2PlanarLayout::PLANE_U]);
- ASSERT_NE(nullptr, addr[C2PlanarLayout::PLANE_V]);
-
- uint8_t *y = addr[C2PlanarLayout::PLANE_Y];
- C2PlaneInfo yInfo = layout.planes[C2PlanarLayout::PLANE_Y];
- uint8_t *u = addr[C2PlanarLayout::PLANE_U];
- C2PlaneInfo uInfo = layout.planes[C2PlanarLayout::PLANE_U];
- uint8_t *v = addr[C2PlanarLayout::PLANE_V];
- C2PlaneInfo vInfo = layout.planes[C2PlanarLayout::PLANE_V];
-
- fillPlane(rect, yInfo, y, 0);
- fillPlane(rect, uInfo, u, 0);
- fillPlane(rect, vInfo, v, 0);
- fillPlane(C2Rect(kWidth / 2, kHeight / 2).at(kWidth / 4, kHeight / 4), yInfo, y, 0x12);
- fillPlane(C2Rect(kWidth / 2, kHeight / 2).at(kWidth / 4, kHeight / 4), uInfo, u, 0x34);
- fillPlane(C2Rect(kWidth / 2, kHeight / 2).at(kWidth / 4, kHeight / 4), vInfo, v, 0x56);
-
- unmapGraphic();
-
- mapGraphic(rect, &layout, addr);
- ASSERT_NE(nullptr, addr[C2PlanarLayout::PLANE_Y]);
- ASSERT_NE(nullptr, addr[C2PlanarLayout::PLANE_U]);
- ASSERT_NE(nullptr, addr[C2PlanarLayout::PLANE_V]);
-
- y = addr[C2PlanarLayout::PLANE_Y];
- yInfo = layout.planes[C2PlanarLayout::PLANE_Y];
- u = addr[C2PlanarLayout::PLANE_U];
- uInfo = layout.planes[C2PlanarLayout::PLANE_U];
- v = addr[C2PlanarLayout::PLANE_V];
- vInfo = layout.planes[C2PlanarLayout::PLANE_V];
-
- ASSERT_TRUE(verifyPlane(C2Rect(kWidth / 2, kHeight / 2).at(kWidth / 4, kHeight / 4), yInfo, y, 0x12));
- ASSERT_TRUE(verifyPlane(C2Rect(kWidth / 2, kHeight / 2).at(kWidth / 4, kHeight / 4), uInfo, u, 0x34));
- ASSERT_TRUE(verifyPlane(C2Rect(kWidth / 2, kHeight / 2).at(kWidth / 4, kHeight / 4), vInfo, v, 0x56));
- ASSERT_TRUE(verifyPlane({ kWidth, kHeight / 4 }, yInfo, y, 0));
- ASSERT_TRUE(verifyPlane({ kWidth, kHeight / 4 }, uInfo, u, 0));
- ASSERT_TRUE(verifyPlane({ kWidth, kHeight / 4 }, vInfo, v, 0));
- ASSERT_TRUE(verifyPlane({ kWidth / 4, kHeight }, yInfo, y, 0));
- ASSERT_TRUE(verifyPlane({ kWidth / 4, kHeight }, uInfo, u, 0));
- ASSERT_TRUE(verifyPlane({ kWidth / 4, kHeight }, vInfo, v, 0));
-}
-
-TEST_F(C2BufferTest, GraphicBlockPoolTest) {
- constexpr uint32_t kWidth = 320;
- constexpr uint32_t kHeight = 240;
-
- std::shared_ptr<C2BlockPool> blockPool(makeGraphicBlockPool());
-
- std::shared_ptr<C2GraphicBlock> block;
- ASSERT_EQ(C2_OK, blockPool->fetchGraphicBlock(
- kWidth,
- kHeight,
- HAL_PIXEL_FORMAT_YCBCR_420_888,
- { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE },
- &block));
- ASSERT_TRUE(block);
-
- C2Acquirable<C2GraphicView> graphicViewHolder = block->map();
- C2GraphicView graphicView = graphicViewHolder.get();
- ASSERT_EQ(C2_OK, graphicView.error());
- ASSERT_EQ(kWidth, graphicView.width());
- ASSERT_EQ(kHeight, graphicView.height());
-
- uint8_t *const *data = graphicView.data();
- C2PlanarLayout layout = graphicView.layout();
- ASSERT_NE(nullptr, data);
-
- uint8_t *y = data[C2PlanarLayout::PLANE_Y];
- C2PlaneInfo yInfo = layout.planes[C2PlanarLayout::PLANE_Y];
- uint8_t *u = data[C2PlanarLayout::PLANE_U];
- C2PlaneInfo uInfo = layout.planes[C2PlanarLayout::PLANE_U];
- uint8_t *v = data[C2PlanarLayout::PLANE_V];
- C2PlaneInfo vInfo = layout.planes[C2PlanarLayout::PLANE_V];
-
- fillPlane({ kWidth, kHeight }, yInfo, y, 0);
- fillPlane({ kWidth, kHeight }, uInfo, u, 0);
- fillPlane({ kWidth, kHeight }, vInfo, v, 0);
- fillPlane(C2Rect(kWidth / 2, kHeight / 2).at(kWidth / 4, kHeight / 4), yInfo, y, 0x12);
- fillPlane(C2Rect(kWidth / 2, kHeight / 2).at(kWidth / 4, kHeight / 4), uInfo, u, 0x34);
- fillPlane(C2Rect(kWidth / 2, kHeight / 2).at(kWidth / 4, kHeight / 4), vInfo, v, 0x56);
-
- C2Fence fence;
- C2ConstGraphicBlock constBlock = block->share(C2Rect(kWidth, kHeight), fence);
- block.reset();
-
- C2Acquirable<const C2GraphicView> constViewHolder = constBlock.map();
- const C2GraphicView constGraphicView = constViewHolder.get();
- ASSERT_EQ(C2_OK, constGraphicView.error());
- ASSERT_EQ(kWidth, constGraphicView.width());
- ASSERT_EQ(kHeight, constGraphicView.height());
-
- const uint8_t *const *constData = constGraphicView.data();
- layout = graphicView.layout();
- ASSERT_NE(nullptr, constData);
-
- const uint8_t *cy = constData[C2PlanarLayout::PLANE_Y];
- yInfo = layout.planes[C2PlanarLayout::PLANE_Y];
- const uint8_t *cu = constData[C2PlanarLayout::PLANE_U];
- uInfo = layout.planes[C2PlanarLayout::PLANE_U];
- const uint8_t *cv = constData[C2PlanarLayout::PLANE_V];
- vInfo = layout.planes[C2PlanarLayout::PLANE_V];
-
- ASSERT_TRUE(verifyPlane(C2Rect(kWidth / 2, kHeight / 2).at(kWidth / 4, kHeight / 4), yInfo, cy, 0x12));
- ASSERT_TRUE(verifyPlane(C2Rect(kWidth / 2, kHeight / 2).at(kWidth / 4, kHeight / 4), uInfo, cu, 0x34));
- ASSERT_TRUE(verifyPlane(C2Rect(kWidth / 2, kHeight / 2).at(kWidth / 4, kHeight / 4), vInfo, cv, 0x56));
- ASSERT_TRUE(verifyPlane({ kWidth, kHeight / 4 }, yInfo, cy, 0));
- ASSERT_TRUE(verifyPlane({ kWidth, kHeight / 4 }, uInfo, cu, 0));
- ASSERT_TRUE(verifyPlane({ kWidth, kHeight / 4 }, vInfo, cv, 0));
- ASSERT_TRUE(verifyPlane({ kWidth / 4, kHeight }, yInfo, cy, 0));
- ASSERT_TRUE(verifyPlane({ kWidth / 4, kHeight }, uInfo, cu, 0));
- ASSERT_TRUE(verifyPlane({ kWidth / 4, kHeight }, vInfo, cv, 0));
-}
-
-class BufferData : public C2BufferData {
-public:
- explicit BufferData(const std::vector<C2ConstLinearBlock> &blocks) : C2BufferData(blocks) {}
- explicit BufferData(const std::vector<C2ConstGraphicBlock> &blocks) : C2BufferData(blocks) {}
-};
-
-class Buffer : public C2Buffer {
-public:
- explicit Buffer(const std::vector<C2ConstLinearBlock> &blocks) : C2Buffer(blocks) {}
- explicit Buffer(const std::vector<C2ConstGraphicBlock> &blocks) : C2Buffer(blocks) {}
-};
-
-TEST_F(C2BufferTest, BufferDataTest) {
- std::shared_ptr<C2BlockPool> linearBlockPool(makeLinearBlockPool());
- std::shared_ptr<C2BlockPool> graphicBlockPool(makeGraphicBlockPool());
-
- constexpr uint32_t kWidth1 = 320;
- constexpr uint32_t kHeight1 = 240;
- constexpr C2Rect kCrop1(kWidth1, kHeight1);
- constexpr uint32_t kWidth2 = 176;
- constexpr uint32_t kHeight2 = 144;
- constexpr C2Rect kCrop2(kWidth2, kHeight2);
- constexpr size_t kCapacity1 = 1024u;
- constexpr size_t kCapacity2 = 2048u;
-
- std::shared_ptr<C2LinearBlock> linearBlock1;
- std::shared_ptr<C2LinearBlock> linearBlock2;
- ASSERT_EQ(C2_OK, linearBlockPool->fetchLinearBlock(
- kCapacity1,
- { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE },
- &linearBlock1));
- ASSERT_EQ(C2_OK, linearBlockPool->fetchLinearBlock(
- kCapacity2,
- { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE },
- &linearBlock2));
- std::shared_ptr<C2GraphicBlock> graphicBlock1;
- std::shared_ptr<C2GraphicBlock> graphicBlock2;
- ASSERT_EQ(C2_OK, graphicBlockPool->fetchGraphicBlock(
- kWidth1,
- kHeight1,
- HAL_PIXEL_FORMAT_YCBCR_420_888,
- { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE },
- &graphicBlock1));
- ASSERT_EQ(C2_OK, graphicBlockPool->fetchGraphicBlock(
- kWidth2,
- kHeight2,
- HAL_PIXEL_FORMAT_YCBCR_420_888,
- { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE },
- &graphicBlock2));
-
- std::shared_ptr<C2BufferData> data(new BufferData({ linearBlock1->share(0, kCapacity1, C2Fence()) }));
- EXPECT_EQ(C2BufferData::LINEAR, data->type());
- ASSERT_EQ(1u, data->linearBlocks().size());
- EXPECT_EQ(linearBlock1->handle(), data->linearBlocks().front().handle());
- EXPECT_TRUE(data->graphicBlocks().empty());
-
- data.reset(new BufferData({
- linearBlock1->share(0, kCapacity1, C2Fence()),
- linearBlock2->share(0, kCapacity2, C2Fence()),
- }));
- EXPECT_EQ(C2BufferData::LINEAR_CHUNKS, data->type());
- ASSERT_EQ(2u, data->linearBlocks().size());
- EXPECT_EQ(linearBlock1->handle(), data->linearBlocks().front().handle());
- EXPECT_EQ(linearBlock2->handle(), data->linearBlocks().back().handle());
- EXPECT_TRUE(data->graphicBlocks().empty());
-
- data.reset(new BufferData({ graphicBlock1->share(kCrop1, C2Fence()) }));
- EXPECT_EQ(C2BufferData::GRAPHIC, data->type());
- ASSERT_EQ(1u, data->graphicBlocks().size());
- EXPECT_EQ(graphicBlock1->handle(), data->graphicBlocks().front().handle());
- EXPECT_TRUE(data->linearBlocks().empty());
-
- data.reset(new BufferData({
- graphicBlock1->share(kCrop1, C2Fence()),
- graphicBlock2->share(kCrop2, C2Fence()),
- }));
- EXPECT_EQ(C2BufferData::GRAPHIC_CHUNKS, data->type());
- ASSERT_EQ(2u, data->graphicBlocks().size());
- EXPECT_EQ(graphicBlock1->handle(), data->graphicBlocks().front().handle());
- EXPECT_EQ(graphicBlock2->handle(), data->graphicBlocks().back().handle());
- EXPECT_TRUE(data->linearBlocks().empty());
-}
-
-void DestroyCallback(const C2Buffer * /* buf */, void *arg) {
- std::function<void(void)> *cb = (std::function<void(void)> *)arg;
- (*cb)();
-}
-
-enum : uint32_t {
- kParamIndexNumber1,
- kParamIndexNumber2,
-};
-
-typedef C2GlobalParam<C2Info, C2Int32Value, kParamIndexNumber1> C2Number1Info;
-typedef C2GlobalParam<C2Info, C2Int32Value, kParamIndexNumber2> C2Number2Info;
-
-TEST_F(C2BufferTest, BufferTest) {
- std::shared_ptr<C2BlockPool> alloc(makeLinearBlockPool());
- constexpr size_t kCapacity = 1024u;
- std::shared_ptr<C2LinearBlock> block;
-
- ASSERT_EQ(C2_OK, alloc->fetchLinearBlock(
- kCapacity,
- { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE },
- &block));
-
- std::atomic_bool destroyed(false);
- std::function<void(void)> arg = [&destroyed](){ destroyed = true; };
-
- std::shared_ptr<C2Buffer> buffer(new Buffer( { block->share(0, kCapacity, C2Fence()) }));
- ASSERT_EQ(C2_OK, buffer->registerOnDestroyNotify(&DestroyCallback, &arg));
- EXPECT_FALSE(destroyed);
- ASSERT_EQ(C2_DUPLICATE, buffer->registerOnDestroyNotify(&DestroyCallback, &arg));
- buffer.reset();
- EXPECT_TRUE(destroyed);
-
- buffer.reset(new Buffer( { block->share(0, kCapacity, C2Fence()) }));
- destroyed = false;
- ASSERT_EQ(C2_OK, buffer->registerOnDestroyNotify(&DestroyCallback, &arg));
- EXPECT_FALSE(destroyed);
- ASSERT_EQ(C2_NOT_FOUND, buffer->unregisterOnDestroyNotify(&DestroyCallback, nullptr));
- ASSERT_EQ(C2_OK, buffer->unregisterOnDestroyNotify(&DestroyCallback, &arg));
- EXPECT_FALSE(destroyed);
- ASSERT_EQ(C2_NOT_FOUND, buffer->unregisterOnDestroyNotify(&DestroyCallback, &arg));
- buffer.reset();
- EXPECT_FALSE(destroyed);
-
- std::shared_ptr<C2Info> info1(new C2Number1Info(1));
- std::shared_ptr<C2Info> info2(new C2Number2Info(2));
- buffer.reset(new Buffer( { block->share(0, kCapacity, C2Fence()) }));
- EXPECT_TRUE(buffer->info().empty());
- EXPECT_FALSE(buffer->hasInfo(info1->type()));
- EXPECT_FALSE(buffer->hasInfo(info2->type()));
-
- ASSERT_EQ(C2_OK, buffer->setInfo(info1));
- EXPECT_EQ(1u, buffer->info().size());
- EXPECT_EQ(*info1, *buffer->info().front());
- EXPECT_TRUE(buffer->hasInfo(info1->type()));
- EXPECT_FALSE(buffer->hasInfo(info2->type()));
-
- ASSERT_EQ(C2_OK, buffer->setInfo(info2));
- EXPECT_EQ(2u, buffer->info().size());
- EXPECT_TRUE(buffer->hasInfo(info1->type()));
- EXPECT_TRUE(buffer->hasInfo(info2->type()));
-
- std::shared_ptr<C2Info> removed = buffer->removeInfo(info1->type());
- ASSERT_TRUE(removed);
- EXPECT_EQ(*removed, *info1);
- EXPECT_EQ(1u, buffer->info().size());
- EXPECT_EQ(*info2, *buffer->info().front());
- EXPECT_FALSE(buffer->hasInfo(info1->type()));
- EXPECT_TRUE(buffer->hasInfo(info2->type()));
-
- removed = buffer->removeInfo(info1->type());
- ASSERT_FALSE(removed);
- EXPECT_EQ(1u, buffer->info().size());
- EXPECT_FALSE(buffer->hasInfo(info1->type()));
- EXPECT_TRUE(buffer->hasInfo(info2->type()));
-
- std::shared_ptr<C2Info> info3(new C2Number2Info(3));
- ASSERT_EQ(C2_OK, buffer->setInfo(info3));
- EXPECT_EQ(1u, buffer->info().size());
- EXPECT_FALSE(buffer->hasInfo(info1->type()));
- EXPECT_TRUE(buffer->hasInfo(info2->type()));
-
- removed = buffer->removeInfo(info2->type());
- ASSERT_TRUE(removed);
- EXPECT_EQ(*info3, *removed);
- EXPECT_TRUE(buffer->info().empty());
- EXPECT_FALSE(buffer->hasInfo(info1->type()));
- EXPECT_FALSE(buffer->hasInfo(info2->type()));
-}
-
-TEST_F(C2BufferTest, MultipleLinearMapTest) {
- std::shared_ptr<C2BlockPool> pool(makeLinearBlockPool());
- constexpr size_t kCapacity = 524288u;
- for (int i = 0; i < 100; ++i) {
- std::vector<C2WriteView> wViews;
- std::vector<C2ReadView> rViews;
- for (int j = 0; j < 16; ++j) {
- std::shared_ptr<C2LinearBlock> block;
- ASSERT_EQ(C2_OK, pool->fetchLinearBlock(
- kCapacity,
- { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE },
- &block));
- wViews.push_back(block->map().get());
- C2ConstLinearBlock cBlock = block->share(0, kCapacity / 2, C2Fence());
- rViews.push_back(cBlock.map().get());
- }
- }
-}
-
-} // namespace android
diff --git a/codec2/vndk/Android.bp b/codec2/vndk/Android.bp
deleted file mode 100644
index 845d113..0000000
--- a/codec2/vndk/Android.bp
+++ /dev/null
@@ -1,108 +0,0 @@
-cc_library_headers {
- name: "libstagefright_codec2_internal",
-
- export_include_dirs: [
- "internal",
- ],
-
- // TODO: Remove this when this module is moved back to frameworks/av.
- vendor_available: true,
-}
-
-// !!!DO NOT DEPEND ON THIS SHARED LIBRARY DIRECTLY!!!
-// use libstagefright_codec2-impl-defaults instead
-cc_library_shared {
- name: "libstagefright_codec2_vndk",
- vendor_available: true,
-
- srcs: [
- "C2AllocatorIon.cpp",
- "C2AllocatorGralloc.cpp",
- "C2Buffer.cpp",
- "C2Config.cpp",
- "C2PlatformStorePluginLoader.cpp",
- "C2Store.cpp",
- "platform/C2BqBuffer.cpp",
- "util/C2Debug.cpp",
- "util/C2InterfaceHelper.cpp",
- "util/C2InterfaceUtils.cpp",
- "util/C2ParamUtils.cpp",
- ],
-
- export_include_dirs: [
- "include",
- ],
-
- export_shared_lib_headers: [
- "libbase",
- "android.hardware.media.bufferpool@1.0",
- "android.hidl.token@1.0-utils",
- ],
-
- local_include_dirs: [
- "internal",
- ],
-
- include_dirs: [
- "frameworks/native/include/media/hardware",
- "hardware/google/av/codec2/include",
- ],
-
- header_libs: [
- "libgui_headers",
- ],
-
- shared_libs: [
- "android.hardware.graphics.allocator@2.0",
- "android.hardware.graphics.bufferqueue@1.0",
- "android.hardware.graphics.mapper@2.0",
- "android.hardware.media.bufferpool@1.0",
- "android.hidl.token@1.0-utils",
- "libbase",
- "libbinder",
- "libcutils",
- "libdl",
- "libhardware",
- "libhidlbase",
- "libion",
- "libfmq",
- "liblog",
- "libstagefright_bufferqueue_helper",
- "libstagefright_foundation",
- "libstagefright_bufferpool@1.0",
- "libui",
- "libutils",
- ],
-
- cflags: [
- "-Werror",
- "-Wall",
- ],
-}
-
-// public dependency for implementing Codec 2 components
-cc_defaults {
- name: "libstagefright_codec2-impl-defaults",
-
- shared_libs: [
- "libbase", // for C2_LOG
- "liblog", // for ALOG
- "libstagefright_codec2",
- "libstagefright_codec2_vndk",
- "libutils",
- ],
-}
-
-// public dependency for implementing Codec 2 framework utilities
-// THIS IS ONLY FOR FRAMEWORK USE ONLY
-cc_defaults {
- name: "libstagefright_codec2-internal-defaults",
- defaults: ["libstagefright_codec2-impl-defaults"],
-
- shared_libs: [
- "libcutils", // for properties
- ],
-
- // TODO: separate internal headers so they can be exposed here
-}
-
diff --git a/codec2/vndk/C2AllocatorGralloc.cpp b/codec2/vndk/C2AllocatorGralloc.cpp
deleted file mode 100644
index d3fbbd0..0000000
--- a/codec2/vndk/C2AllocatorGralloc.cpp
+++ /dev/null
@@ -1,769 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2AllocatorGralloc"
-#include <utils/Log.h>
-
-#include <android/hardware/graphics/allocator/2.0/IAllocator.h>
-#include <android/hardware/graphics/mapper/2.0/IMapper.h>
-#include <cutils/native_handle.h>
-#include <hardware/gralloc.h>
-
-#include <C2AllocatorGralloc.h>
-#include <C2Buffer.h>
-#include <C2PlatformSupport.h>
-
-namespace android {
-
-namespace {
- enum : uint64_t {
- /**
- * Usage mask that is passed through from gralloc to Codec 2.0 usage.
- */
- PASSTHROUGH_USAGE_MASK =
- ~(GRALLOC_USAGE_SW_READ_MASK | GRALLOC_USAGE_SW_WRITE_MASK | GRALLOC_USAGE_PROTECTED)
- };
-
- // verify that passthrough mask is within the platform mask
- static_assert((~C2MemoryUsage::PLATFORM_MASK & PASSTHROUGH_USAGE_MASK) == 0, "");
-}
-
-C2MemoryUsage C2AndroidMemoryUsage::FromGrallocUsage(uint64_t usage) {
- // gralloc does not support WRITE_PROTECTED
- return C2MemoryUsage(
- ((usage & GRALLOC_USAGE_SW_READ_MASK) ? C2MemoryUsage::CPU_READ : 0) |
- ((usage & GRALLOC_USAGE_SW_WRITE_MASK) ? C2MemoryUsage::CPU_WRITE : 0) |
- ((usage & GRALLOC_USAGE_PROTECTED) ? C2MemoryUsage::READ_PROTECTED : 0) |
- (usage & PASSTHROUGH_USAGE_MASK));
-}
-
-uint64_t C2AndroidMemoryUsage::asGrallocUsage() const {
- // gralloc does not support WRITE_PROTECTED
- return (((expected & C2MemoryUsage::CPU_READ) ? GRALLOC_USAGE_SW_READ_OFTEN : 0) |
- ((expected & C2MemoryUsage::CPU_WRITE) ? GRALLOC_USAGE_SW_WRITE_OFTEN : 0) |
- ((expected & C2MemoryUsage::READ_PROTECTED) ? GRALLOC_USAGE_PROTECTED : 0) |
- (expected & PASSTHROUGH_USAGE_MASK));
-}
-
-using ::android::hardware::graphics::allocator::V2_0::IAllocator;
-using ::android::hardware::graphics::common::V1_0::BufferUsage;
-using ::android::hardware::graphics::common::V1_0::PixelFormat;
-using ::android::hardware::graphics::mapper::V2_0::BufferDescriptor;
-using ::android::hardware::graphics::mapper::V2_0::Error;
-using ::android::hardware::graphics::mapper::V2_0::IMapper;
-using ::android::hardware::graphics::mapper::V2_0::YCbCrLayout;
-using ::android::hardware::hidl_handle;
-using ::android::hardware::hidl_vec;
-
-namespace {
-
-struct BufferDescriptorInfo {
- IMapper::BufferDescriptorInfo mapperInfo;
- uint32_t stride;
-};
-
-}
-
-/* ===================================== GRALLOC ALLOCATION ==================================== */
-static c2_status_t maperr2error(Error maperr) {
- switch (maperr) {
- case Error::NONE: return C2_OK;
- case Error::BAD_DESCRIPTOR: return C2_BAD_VALUE;
- case Error::BAD_BUFFER: return C2_BAD_VALUE;
- case Error::BAD_VALUE: return C2_BAD_VALUE;
- case Error::NO_RESOURCES: return C2_NO_MEMORY;
- case Error::UNSUPPORTED: return C2_CANNOT_DO;
- }
- return C2_CORRUPTED;
-}
-
-static
-bool native_handle_is_invalid(const native_handle_t *const handle) {
- // perform basic validation of a native handle
- if (handle == nullptr) {
- // null handle is considered valid
- return false;
- }
- return ((size_t)handle->version != sizeof(native_handle_t) ||
- handle->numFds < 0 ||
- handle->numInts < 0 ||
- // for sanity assume handles must occupy less memory than INT_MAX bytes
- handle->numFds > int((INT_MAX - handle->version) / sizeof(int)) - handle->numInts);
-}
-
-class C2HandleGralloc : public C2Handle {
-private:
- struct ExtraData {
- uint32_t width;
- uint32_t height;
- uint32_t format;
- uint32_t usage_lo;
- uint32_t usage_hi;
- uint32_t stride;
- uint32_t generation;
- uint32_t igbp_id_lo;
- uint32_t igbp_id_hi;
- uint32_t igbp_slot;
- uint32_t magic;
- };
-
- enum {
- NUM_INTS = sizeof(ExtraData) / sizeof(int),
- };
- const static uint32_t MAGIC = '\xc2gr\x00';
-
- static
- const ExtraData* getExtraData(const C2Handle *const handle) {
- if (handle == nullptr
- || native_handle_is_invalid(handle)
- || handle->numInts < NUM_INTS) {
- return nullptr;
- }
- return reinterpret_cast<const ExtraData*>(
- &handle->data[handle->numFds + handle->numInts - NUM_INTS]);
- }
-
- static
- ExtraData *getExtraData(C2Handle *const handle) {
- return const_cast<ExtraData *>(getExtraData(const_cast<const C2Handle *const>(handle)));
- }
-
-public:
- void getIgbpData(uint32_t *generation, uint64_t *igbp_id, uint32_t *igbp_slot) const {
- const ExtraData *ed = getExtraData(this);
- *generation = ed->generation;
- *igbp_id = unsigned(ed->igbp_id_lo) | uint64_t(unsigned(ed->igbp_id_hi)) << 32;
- *igbp_slot = ed->igbp_slot;
- }
-
- static bool isValid(const C2Handle *const o) {
- if (o == nullptr) { // null handle is always valid
- return true;
- }
- const ExtraData *xd = getExtraData(o);
- // we cannot validate width/height/format/usage without accessing gralloc driver
- return xd != nullptr && xd->magic == MAGIC;
- }
-
- static C2HandleGralloc* WrapAndMoveNativeHandle(
- const native_handle_t *const handle,
- uint32_t width, uint32_t height, uint32_t format, uint64_t usage,
- uint32_t stride, uint32_t generation, uint64_t igbp_id = 0, uint32_t igbp_slot = 0) {
- //CHECK(handle != nullptr);
- if (native_handle_is_invalid(handle) ||
- handle->numInts > int((INT_MAX - handle->version) / sizeof(int)) - NUM_INTS - handle->numFds) {
- return nullptr;
- }
- ExtraData xd = {
- width, height, format, uint32_t(usage & 0xFFFFFFFF), uint32_t(usage >> 32),
- stride, generation, uint32_t(igbp_id & 0xFFFFFFFF), uint32_t(igbp_id >> 32),
- igbp_slot, MAGIC
- };
- native_handle_t *res = native_handle_create(handle->numFds, handle->numInts + NUM_INTS);
- if (res != nullptr) {
- memcpy(&res->data, &handle->data, sizeof(int) * (handle->numFds + handle->numInts));
- *getExtraData(res) = xd;
- }
- return reinterpret_cast<C2HandleGralloc *>(res);
- }
-
- static C2HandleGralloc* WrapNativeHandle(
- const native_handle_t *const handle,
- uint32_t width, uint32_t height, uint32_t format, uint64_t usage,
- uint32_t stride, uint32_t generation, uint64_t igbp_id = 0, uint32_t igbp_slot = 0) {
- if (handle == nullptr) {
- return nullptr;
- }
- native_handle_t *clone = native_handle_clone(handle);
- if (clone == nullptr) {
- return nullptr;
- }
- C2HandleGralloc *res = WrapAndMoveNativeHandle(
- clone, width, height, format, usage, stride, generation, igbp_id, igbp_slot);
- if (res == nullptr) {
- native_handle_close(clone);
- }
- native_handle_delete(clone);
- return res;
- }
-
- static native_handle_t* UnwrapNativeHandle(
- const C2Handle *const handle) {
- const ExtraData *xd = getExtraData(handle);
- if (xd == nullptr || xd->magic != MAGIC) {
- return nullptr;
- }
- native_handle_t *res = native_handle_create(handle->numFds, handle->numInts - NUM_INTS);
- if (res != nullptr) {
- memcpy(&res->data, &handle->data, sizeof(int) * (res->numFds + res->numInts));
- }
- return res;
- }
-
- static native_handle_t* UnwrapNativeHandle(
- const C2Handle *const handle,
- uint32_t *generation, uint64_t *igbp_id, uint32_t *igbp_slot) {
- const ExtraData *xd = getExtraData(handle);
- if (xd == nullptr || xd->magic != MAGIC) {
- return nullptr;
- }
- *generation = xd->generation;
- *igbp_id = unsigned(xd->igbp_id_lo) | uint64_t(unsigned(xd->igbp_id_hi)) << 32;
- *igbp_slot = xd->igbp_slot;
- native_handle_t *res = native_handle_create(handle->numFds, handle->numInts - NUM_INTS);
- if (res != nullptr) {
- memcpy(&res->data, &handle->data, sizeof(int) * (res->numFds + res->numInts));
- }
- return res;
- }
-
- static const C2HandleGralloc* Import(
- const C2Handle *const handle,
- uint32_t *width, uint32_t *height, uint32_t *format,
- uint64_t *usage, uint32_t *stride,
- uint32_t *generation, uint64_t *igbp_id, uint32_t *igbp_slot) {
- const ExtraData *xd = getExtraData(handle);
- if (xd == nullptr) {
- return nullptr;
- }
- *width = xd->width;
- *height = xd->height;
- *format = xd->format;
- *usage = xd->usage_lo | (uint64_t(xd->usage_hi) << 32);
- *stride = xd->stride;
- *generation = xd->generation;
- *igbp_id = xd->igbp_id_lo | (uint64_t(xd->igbp_id_hi) << 32);
- *igbp_slot = xd->igbp_slot;
- return reinterpret_cast<const C2HandleGralloc *>(handle);
- }
-};
-
-native_handle_t *UnwrapNativeCodec2GrallocHandle(const C2Handle *const handle) {
- return C2HandleGralloc::UnwrapNativeHandle(handle);
-}
-
-native_handle_t *UnwrapNativeCodec2GrallocHandle(
- const C2Handle *const handle,
- uint32_t *generation, uint64_t *igbp_id, uint32_t *igbp_slot) {
- return C2HandleGralloc::UnwrapNativeHandle(handle, generation, igbp_id, igbp_slot);
-}
-
-C2Handle *WrapNativeCodec2GrallocHandle(
- const native_handle_t *const handle,
- uint32_t width, uint32_t height, uint32_t format, uint64_t usage, uint32_t stride,
- uint32_t generation, uint64_t igbp_id, uint32_t igbp_slot) {
- return C2HandleGralloc::WrapNativeHandle(handle, width, height, format, usage, stride,
- generation, igbp_id, igbp_slot);
-}
-
-class C2AllocationGralloc : public C2GraphicAllocation {
-public:
- virtual ~C2AllocationGralloc() override;
-
- virtual c2_status_t map(
- C2Rect rect, C2MemoryUsage usage, C2Fence *fence,
- C2PlanarLayout *layout /* nonnull */, uint8_t **addr /* nonnull */) override;
- virtual c2_status_t unmap(
- uint8_t **addr /* nonnull */, C2Rect rect, C2Fence *fence /* nullable */) override;
- virtual C2Allocator::id_t getAllocatorId() const override { return mAllocatorId; }
- virtual const C2Handle *handle() const override { return mLockedHandle ? : mHandle; }
- virtual bool equals(const std::shared_ptr<const C2GraphicAllocation> &other) const override;
-
- // internal methods
- // |handle| will be moved.
- C2AllocationGralloc(
- const BufferDescriptorInfo &info,
- const sp<IMapper> &mapper,
- hidl_handle &hidlHandle,
- const C2HandleGralloc *const handle,
- C2Allocator::id_t allocatorId);
- int dup() const;
- c2_status_t status() const;
-
-private:
- const BufferDescriptorInfo mInfo;
- const sp<IMapper> mMapper;
- const hidl_handle mHidlHandle;
- const C2HandleGralloc *mHandle;
- buffer_handle_t mBuffer;
- const C2HandleGralloc *mLockedHandle;
- bool mLocked;
- C2Allocator::id_t mAllocatorId;
- std::mutex mMappedLock;
-};
-
-C2AllocationGralloc::C2AllocationGralloc(
- const BufferDescriptorInfo &info,
- const sp<IMapper> &mapper,
- hidl_handle &hidlHandle,
- const C2HandleGralloc *const handle,
- C2Allocator::id_t allocatorId)
- : C2GraphicAllocation(info.mapperInfo.width, info.mapperInfo.height),
- mInfo(info),
- mMapper(mapper),
- mHidlHandle(std::move(hidlHandle)),
- mHandle(handle),
- mBuffer(nullptr),
- mLockedHandle(nullptr),
- mLocked(false),
- mAllocatorId(allocatorId) {
-}
-
-C2AllocationGralloc::~C2AllocationGralloc() {
- if (mBuffer && mLocked) {
- // implementation ignores addresss and rect
- uint8_t* addr[C2PlanarLayout::MAX_NUM_PLANES] = {};
- unmap(addr, C2Rect(), nullptr);
- }
- if (mBuffer) {
- mMapper->freeBuffer(const_cast<native_handle_t *>(mBuffer));
- }
- if (mHandle) {
- native_handle_delete(
- const_cast<native_handle_t *>(reinterpret_cast<const native_handle_t *>(mHandle)));
- }
- if (mLockedHandle) {
- native_handle_delete(
- const_cast<native_handle_t *>(
- reinterpret_cast<const native_handle_t *>(mLockedHandle)));
- }
-}
-
-c2_status_t C2AllocationGralloc::map(
- C2Rect rect, C2MemoryUsage usage, C2Fence *fence,
- C2PlanarLayout *layout /* nonnull */, uint8_t **addr /* nonnull */) {
- uint64_t grallocUsage = static_cast<C2AndroidMemoryUsage>(usage).asGrallocUsage();
- ALOGV("mapping buffer with usage %#llx => %#llx",
- (long long)usage.expected, (long long)grallocUsage);
-
- // TODO
- (void) fence;
-
- std::lock_guard<std::mutex> lock(mMappedLock);
- if (mBuffer && mLocked) {
- ALOGD("already mapped");
- return C2_DUPLICATE;
- }
- if (!layout || !addr) {
- ALOGD("wrong param");
- return C2_BAD_VALUE;
- }
-
- c2_status_t err = C2_OK;
- if (!mBuffer) {
- mMapper->importBuffer(
- mHidlHandle, [&err, this](const auto &maperr, const auto &buffer) {
- err = maperr2error(maperr);
- if (err == C2_OK) {
- mBuffer = static_cast<buffer_handle_t>(buffer);
- }
- });
- if (err != C2_OK) {
- ALOGD("importBuffer failed: %d", err);
- return err;
- }
- if (mBuffer == nullptr) {
- ALOGD("importBuffer returned null buffer");
- return C2_CORRUPTED;
- }
- uint32_t generation = 0;
- uint64_t igbp_id = 0;
- uint32_t igbp_slot = 0;
- if (mHandle) {
- mHandle->getIgbpData(&generation, &igbp_id, &igbp_slot);
- }
- mLockedHandle = C2HandleGralloc::WrapAndMoveNativeHandle(
- mBuffer, mInfo.mapperInfo.width, mInfo.mapperInfo.height,
- (uint32_t)mInfo.mapperInfo.format, mInfo.mapperInfo.usage, mInfo.stride,
- generation, igbp_id, igbp_slot);
- }
-
- // UGLY HACK: assume YCbCr 4:2:0 8-bit format (and lockable via lockYCbCr) if we don't
- // recognize the format
- PixelFormat format = mInfo.mapperInfo.format;
- if (format != PixelFormat::RGBA_8888 && format != PixelFormat::RGBX_8888) {
- format = PixelFormat::YCBCR_420_888;
- }
-
- switch (format) {
- case PixelFormat::YCBCR_420_888:
- case PixelFormat::YV12: {
- YCbCrLayout ycbcrLayout;
- mMapper->lockYCbCr(
- const_cast<native_handle_t *>(mBuffer), grallocUsage,
- { (int32_t)rect.left, (int32_t)rect.top, (int32_t)rect.width, (int32_t)rect.height },
- // TODO: fence
- hidl_handle(),
- [&err, &ycbcrLayout](const auto &maperr, const auto &mapLayout) {
- err = maperr2error(maperr);
- if (err == C2_OK) {
- ycbcrLayout = mapLayout;
- }
- });
- if (err != C2_OK) {
- ALOGD("lockYCbCr failed: %d", err);
- return err;
- }
- addr[C2PlanarLayout::PLANE_Y] = (uint8_t *)ycbcrLayout.y;
- addr[C2PlanarLayout::PLANE_U] = (uint8_t *)ycbcrLayout.cb;
- addr[C2PlanarLayout::PLANE_V] = (uint8_t *)ycbcrLayout.cr;
- layout->type = C2PlanarLayout::TYPE_YUV;
- layout->numPlanes = 3;
- layout->rootPlanes = 3;
- layout->planes[C2PlanarLayout::PLANE_Y] = {
- C2PlaneInfo::CHANNEL_Y, // channel
- 1, // colInc
- (int32_t)ycbcrLayout.yStride, // rowInc
- 1, // mColSampling
- 1, // mRowSampling
- 8, // allocatedDepth
- 8, // bitDepth
- 0, // rightShift
- C2PlaneInfo::NATIVE, // endianness
- C2PlanarLayout::PLANE_Y, // rootIx
- 0, // offset
- };
- layout->planes[C2PlanarLayout::PLANE_U] = {
- C2PlaneInfo::CHANNEL_CB, // channel
- (int32_t)ycbcrLayout.chromaStep, // colInc
- (int32_t)ycbcrLayout.cStride, // rowInc
- 2, // mColSampling
- 2, // mRowSampling
- 8, // allocatedDepth
- 8, // bitDepth
- 0, // rightShift
- C2PlaneInfo::NATIVE, // endianness
- C2PlanarLayout::PLANE_U, // rootIx
- 0, // offset
- };
- layout->planes[C2PlanarLayout::PLANE_V] = {
- C2PlaneInfo::CHANNEL_CR, // channel
- (int32_t)ycbcrLayout.chromaStep, // colInc
- (int32_t)ycbcrLayout.cStride, // rowInc
- 2, // mColSampling
- 2, // mRowSampling
- 8, // allocatedDepth
- 8, // bitDepth
- 0, // rightShift
- C2PlaneInfo::NATIVE, // endianness
- C2PlanarLayout::PLANE_V, // rootIx
- 0, // offset
- };
- // handle interleaved formats
- intptr_t uvOffset = addr[C2PlanarLayout::PLANE_V] - addr[C2PlanarLayout::PLANE_U];
- if (uvOffset > 0 && uvOffset < (intptr_t)ycbcrLayout.chromaStep) {
- layout->rootPlanes = 2;
- layout->planes[C2PlanarLayout::PLANE_V].rootIx = C2PlanarLayout::PLANE_U;
- layout->planes[C2PlanarLayout::PLANE_V].offset = uvOffset;
- } else if (uvOffset < 0 && uvOffset > -(intptr_t)ycbcrLayout.chromaStep) {
- layout->rootPlanes = 2;
- layout->planes[C2PlanarLayout::PLANE_U].rootIx = C2PlanarLayout::PLANE_V;
- layout->planes[C2PlanarLayout::PLANE_U].offset = -uvOffset;
- }
- break;
- }
-
- case PixelFormat::RGBA_8888:
- // TODO: alpha channel
- // fall-through
- case PixelFormat::RGBX_8888: {
- void *pointer = nullptr;
- mMapper->lock(
- const_cast<native_handle_t *>(mBuffer),
- grallocUsage,
- { (int32_t)rect.left, (int32_t)rect.top, (int32_t)rect.width, (int32_t)rect.height },
- // TODO: fence
- hidl_handle(),
- [&err, &pointer](const auto &maperr, const auto &mapPointer) {
- err = maperr2error(maperr);
- if (err == C2_OK) {
- pointer = mapPointer;
- }
- });
- if (err != C2_OK) {
- ALOGD("lock failed: %d", err);
- return err;
- }
- addr[C2PlanarLayout::PLANE_R] = (uint8_t *)pointer;
- addr[C2PlanarLayout::PLANE_G] = (uint8_t *)pointer + 1;
- addr[C2PlanarLayout::PLANE_B] = (uint8_t *)pointer + 2;
- layout->type = C2PlanarLayout::TYPE_RGB;
- layout->numPlanes = 3;
- layout->rootPlanes = 1;
- layout->planes[C2PlanarLayout::PLANE_R] = {
- C2PlaneInfo::CHANNEL_R, // channel
- 4, // colInc
- 4 * (int32_t)mInfo.stride, // rowInc
- 1, // mColSampling
- 1, // mRowSampling
- 8, // allocatedDepth
- 8, // bitDepth
- 0, // rightShift
- C2PlaneInfo::NATIVE, // endianness
- C2PlanarLayout::PLANE_R, // rootIx
- 0, // offset
- };
- layout->planes[C2PlanarLayout::PLANE_G] = {
- C2PlaneInfo::CHANNEL_G, // channel
- 4, // colInc
- 4 * (int32_t)mInfo.stride, // rowInc
- 1, // mColSampling
- 1, // mRowSampling
- 8, // allocatedDepth
- 8, // bitDepth
- 0, // rightShift
- C2PlaneInfo::NATIVE, // endianness
- C2PlanarLayout::PLANE_R, // rootIx
- 1, // offset
- };
- layout->planes[C2PlanarLayout::PLANE_B] = {
- C2PlaneInfo::CHANNEL_B, // channel
- 4, // colInc
- 4 * (int32_t)mInfo.stride, // rowInc
- 1, // mColSampling
- 1, // mRowSampling
- 8, // allocatedDepth
- 8, // bitDepth
- 0, // rightShift
- C2PlaneInfo::NATIVE, // endianness
- C2PlanarLayout::PLANE_R, // rootIx
- 2, // offset
- };
- break;
- }
- default: {
- ALOGD("unsupported pixel format: %d", mInfo.mapperInfo.format);
- return C2_OMITTED;
- }
- }
- mLocked = true;
-
- return C2_OK;
-}
-
-c2_status_t C2AllocationGralloc::unmap(
- uint8_t **addr, C2Rect rect, C2Fence *fence /* nullable */) {
- // TODO: check addr and size, use fence
- (void)addr;
- (void)rect;
-
- std::lock_guard<std::mutex> lock(mMappedLock);
- c2_status_t err = C2_OK;
- mMapper->unlock(
- const_cast<native_handle_t *>(mBuffer),
- [&err, &fence](const auto &maperr, const auto &releaseFence) {
- // TODO
- (void) fence;
- (void) releaseFence;
- err = maperr2error(maperr);
- if (err == C2_OK) {
- // TODO: fence
- }
- });
- if (err == C2_OK) {
- mLocked = false;
- }
- return err;
-}
-
-bool C2AllocationGralloc::equals(const std::shared_ptr<const C2GraphicAllocation> &other) const {
- return other && other->handle() == handle();
-}
-
-/* ===================================== GRALLOC ALLOCATOR ==================================== */
-class C2AllocatorGralloc::Impl {
-public:
- Impl(id_t id, bool bufferQueue);
-
- id_t getId() const {
- return mTraits->id;
- }
-
- C2String getName() const {
- return mTraits->name;
- }
-
- std::shared_ptr<const C2Allocator::Traits> getTraits() const {
- return mTraits;
- }
-
- c2_status_t newGraphicAllocation(
- uint32_t width, uint32_t height, uint32_t format, const C2MemoryUsage &usage,
- std::shared_ptr<C2GraphicAllocation> *allocation);
-
- c2_status_t priorGraphicAllocation(
- const C2Handle *handle,
- std::shared_ptr<C2GraphicAllocation> *allocation);
-
- c2_status_t status() const { return mInit; }
-
-private:
- std::shared_ptr<C2Allocator::Traits> mTraits;
- c2_status_t mInit;
- sp<IAllocator> mAllocator;
- sp<IMapper> mMapper;
- const bool mBufferQueue;
-};
-
-void _UnwrapNativeCodec2GrallocMetadata(
- const C2Handle *const handle,
- uint32_t *width, uint32_t *height, uint32_t *format,uint64_t *usage, uint32_t *stride,
- uint32_t *generation, uint64_t *igbp_id, uint32_t *igbp_slot) {
- (void)C2HandleGralloc::Import(handle, width, height, format, usage, stride,
- generation, igbp_id, igbp_slot);
-}
-
-C2AllocatorGralloc::Impl::Impl(id_t id, bool bufferQueue)
- : mInit(C2_OK), mBufferQueue(bufferQueue) {
- // TODO: get this from allocator
- C2MemoryUsage minUsage = { 0, 0 }, maxUsage = { ~(uint64_t)0, ~(uint64_t)0 };
- Traits traits = { "android.allocator.gralloc", id, C2Allocator::GRAPHIC, minUsage, maxUsage };
- mTraits = std::make_shared<C2Allocator::Traits>(traits);
-
- // gralloc allocator is a singleton, so all objects share a global service
- mAllocator = IAllocator::getService();
- mMapper = IMapper::getService();
- if (mAllocator == nullptr || mMapper == nullptr) {
- mInit = C2_CORRUPTED;
- }
-}
-
-c2_status_t C2AllocatorGralloc::Impl::newGraphicAllocation(
- uint32_t width, uint32_t height, uint32_t format, const C2MemoryUsage &usage,
- std::shared_ptr<C2GraphicAllocation> *allocation) {
- uint64_t grallocUsage = static_cast<C2AndroidMemoryUsage>(usage).asGrallocUsage();
- ALOGV("allocating buffer with usage %#llx => %#llx",
- (long long)usage.expected, (long long)grallocUsage);
-
- BufferDescriptorInfo info = {
- {
- width,
- height,
- 1u, // layerCount
- (PixelFormat)format,
- grallocUsage,
- },
- 0u, // stride placeholder
- };
- c2_status_t err = C2_OK;
- BufferDescriptor desc;
- mMapper->createDescriptor(
- info.mapperInfo, [&err, &desc](const auto &maperr, const auto &descriptor) {
- err = maperr2error(maperr);
- if (err == C2_OK) {
- desc = descriptor;
- }
- });
- if (err != C2_OK) {
- return err;
- }
-
- // IAllocator shares IMapper error codes.
- hidl_handle buffer;
- mAllocator->allocate(
- desc,
- 1u,
- [&err, &buffer, &info](const auto &maperr, const auto &stride, auto &buffers) {
- err = maperr2error(maperr);
- if (err != C2_OK) {
- return;
- }
- if (buffers.size() != 1u) {
- err = C2_CORRUPTED;
- return;
- }
- info.stride = stride;
- buffer = buffers[0];
- });
- if (err != C2_OK) {
- return err;
- }
-
-
- allocation->reset(new C2AllocationGralloc(
- info, mMapper, buffer,
- C2HandleGralloc::WrapAndMoveNativeHandle(
- buffer.getNativeHandle(),
- info.mapperInfo.width, info.mapperInfo.height,
- (uint32_t)info.mapperInfo.format, info.mapperInfo.usage, info.stride,
- 0, 0, mBufferQueue ? ~0 : 0),
- mTraits->id));
- return C2_OK;
-}
-
-c2_status_t C2AllocatorGralloc::Impl::priorGraphicAllocation(
- const C2Handle *handle,
- std::shared_ptr<C2GraphicAllocation> *allocation) {
- BufferDescriptorInfo info;
- info.mapperInfo.layerCount = 1u;
- uint32_t generation;
- uint64_t igbp_id;
- uint32_t igbp_slot;
- const C2HandleGralloc *grallocHandle = C2HandleGralloc::Import(
- handle,
- &info.mapperInfo.width, &info.mapperInfo.height,
- (uint32_t *)&info.mapperInfo.format, (uint64_t *)&info.mapperInfo.usage, &info.stride,
- &generation, &igbp_id, &igbp_slot);
- if (grallocHandle == nullptr) {
- return C2_BAD_VALUE;
- }
-
- hidl_handle hidlHandle;
- hidlHandle.setTo(C2HandleGralloc::UnwrapNativeHandle(grallocHandle), true);
-
- allocation->reset(new C2AllocationGralloc(info, mMapper, hidlHandle, grallocHandle, mTraits->id));
- return C2_OK;
-}
-
-C2AllocatorGralloc::C2AllocatorGralloc(id_t id, bool bufferQueue)
- : mImpl(new Impl(id, bufferQueue)) {}
-
-C2AllocatorGralloc::~C2AllocatorGralloc() { delete mImpl; }
-
-C2Allocator::id_t C2AllocatorGralloc::getId() const {
- return mImpl->getId();
-}
-
-C2String C2AllocatorGralloc::getName() const {
- return mImpl->getName();
-}
-
-std::shared_ptr<const C2Allocator::Traits> C2AllocatorGralloc::getTraits() const {
- return mImpl->getTraits();
-}
-
-c2_status_t C2AllocatorGralloc::newGraphicAllocation(
- uint32_t width, uint32_t height, uint32_t format, C2MemoryUsage usage,
- std::shared_ptr<C2GraphicAllocation> *allocation) {
- return mImpl->newGraphicAllocation(width, height, format, usage, allocation);
-}
-
-c2_status_t C2AllocatorGralloc::priorGraphicAllocation(
- const C2Handle *handle,
- std::shared_ptr<C2GraphicAllocation> *allocation) {
- return mImpl->priorGraphicAllocation(handle, allocation);
-}
-
-c2_status_t C2AllocatorGralloc::status() const {
- return mImpl->status();
-}
-
-bool C2AllocatorGralloc::isValid(const C2Handle* const o) {
- return C2HandleGralloc::isValid(o);
-}
-
-} // namespace android
diff --git a/codec2/vndk/C2AllocatorIon.cpp b/codec2/vndk/C2AllocatorIon.cpp
deleted file mode 100644
index 736aac5..0000000
--- a/codec2/vndk/C2AllocatorIon.cpp
+++ /dev/null
@@ -1,561 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2AllocatorIon"
-#include <utils/Log.h>
-
-#include <list>
-
-#include <ion/ion.h>
-#include <sys/mman.h>
-#include <unistd.h> // getpagesize, size_t, close, dup
-
-#include <C2AllocatorIon.h>
-#include <C2Buffer.h>
-#include <C2Debug.h>
-#include <C2ErrnoUtils.h>
-
-namespace android {
-
-namespace {
- constexpr size_t USAGE_LRU_CACHE_SIZE = 1024;
-}
-
-/* size_t <=> int(lo), int(hi) conversions */
-constexpr inline int size2intLo(size_t s) {
- return int(s & 0xFFFFFFFF);
-}
-
-constexpr inline int size2intHi(size_t s) {
- // cast to uint64_t as size_t may be 32 bits wide
- return int((uint64_t(s) >> 32) & 0xFFFFFFFF);
-}
-
-constexpr inline size_t ints2size(int intLo, int intHi) {
- // convert in 2 stages to 64 bits as intHi may be negative
- return size_t(unsigned(intLo)) | size_t(uint64_t(unsigned(intHi)) << 32);
-}
-
-/* ========================================= ION HANDLE ======================================== */
-/**
- * ION handle
- *
- * There can be only a sole ion client per process, this is captured in the ion fd that is passed
- * to the constructor, but this should be managed by the ion buffer allocator/mapper.
- *
- * ion uses ion_user_handle_t for buffers. We don't store this in the native handle as
- * it requires an ion_free to decref. Instead, we share the buffer to get an fd that also holds
- * a refcount.
- *
- * This handle will not capture mapped fd-s as updating that would require a global mutex.
- */
-
-struct C2HandleIon : public C2Handle {
- // ion handle owns ionFd(!) and bufferFd
- C2HandleIon(int bufferFd, size_t size)
- : C2Handle(cHeader),
- mFds{ bufferFd },
- mInts{ int(size & 0xFFFFFFFF), int((uint64_t(size) >> 32) & 0xFFFFFFFF), kMagic } { }
-
- static bool isValid(const C2Handle * const o);
-
- int bufferFd() const { return mFds.mBuffer; }
- size_t size() const {
- return size_t(unsigned(mInts.mSizeLo))
- | size_t(uint64_t(unsigned(mInts.mSizeHi)) << 32);
- }
-
-protected:
- struct {
- int mBuffer; // shared ion buffer
- } mFds;
- struct {
- int mSizeLo; // low 32-bits of size
- int mSizeHi; // high 32-bits of size
- int mMagic;
- } mInts;
-
-private:
- typedef C2HandleIon _type;
- enum {
- kMagic = '\xc2io\x00',
- numFds = sizeof(mFds) / sizeof(int),
- numInts = sizeof(mInts) / sizeof(int),
- version = sizeof(C2Handle)
- };
- //constexpr static C2Handle cHeader = { version, numFds, numInts, {} };
- const static C2Handle cHeader;
-};
-
-const C2Handle C2HandleIon::cHeader = {
- C2HandleIon::version,
- C2HandleIon::numFds,
- C2HandleIon::numInts,
- {}
-};
-
-// static
-bool C2HandleIon::isValid(const C2Handle * const o) {
- if (!o || memcmp(o, &cHeader, sizeof(cHeader))) {
- return false;
- }
- const C2HandleIon *other = static_cast<const C2HandleIon*>(o);
- return other->mInts.mMagic == kMagic;
-}
-
-// TODO: is the dup of an ion fd identical to ion_share?
-
-/* ======================================= ION ALLOCATION ====================================== */
-class C2AllocationIon : public C2LinearAllocation {
-public:
- /* Interface methods */
- virtual c2_status_t map(
- size_t offset, size_t size, C2MemoryUsage usage, C2Fence *fence,
- void **addr /* nonnull */) override;
- virtual c2_status_t unmap(void *addr, size_t size, C2Fence *fenceFd) override;
- virtual ~C2AllocationIon() override;
- virtual const C2Handle *handle() const override;
- virtual id_t getAllocatorId() const override;
- virtual bool equals(const std::shared_ptr<C2LinearAllocation> &other) const override;
-
- // internal methods
- C2AllocationIon(int ionFd, size_t size, size_t align, unsigned heapMask, unsigned flags, C2Allocator::id_t id);
- C2AllocationIon(int ionFd, size_t size, int shareFd, C2Allocator::id_t id);
-
- c2_status_t status() const;
-
-protected:
- class Impl;
- Impl *mImpl;
-
- // TODO: we could make this encapsulate shared_ptr and copiable
- C2_DO_NOT_COPY(C2AllocationIon);
-};
-
-class C2AllocationIon::Impl {
-private:
- /**
- * Constructs an ion allocation.
- *
- * \note We always create an ion allocation, even if the allocation or import fails
- * so that we can capture the error.
- *
- * \param ionFd ion client (ownership transferred to created object)
- * \param capacity size of allocation
- * \param bufferFd buffer handle (ownership transferred to created object). Must be
- * invalid if err is not 0.
- * \param buffer ion buffer user handle (ownership transferred to created object). Must be
- * invalid if err is not 0.
- * \param err errno during buffer allocation or import
- */
- Impl(int ionFd, size_t capacity, int bufferFd, ion_user_handle_t buffer, C2Allocator::id_t id, int err)
- : mIonFd(ionFd),
- mHandle(bufferFd, capacity),
- mBuffer(buffer),
- mId(id),
- mInit(c2_map_errno<ENOMEM, EACCES, EINVAL>(err)),
- mMapFd(-1) {
- if (mInit != C2_OK) {
- // close ionFd now on error
- if (mIonFd >= 0) {
- close(mIonFd);
- mIonFd = -1;
- }
- // C2_CHECK(bufferFd < 0);
- // C2_CHECK(buffer < 0);
- }
- }
-
-public:
- /**
- * Constructs an ion allocation by importing a shared buffer fd.
- *
- * \param ionFd ion client (ownership transferred to created object)
- * \param capacity size of allocation
- * \param bufferFd buffer handle (ownership transferred to created object)
- *
- * \return created ion allocation (implementation) which may be invalid if the
- * import failed.
- */
- static Impl *Import(int ionFd, size_t capacity, int bufferFd, C2Allocator::id_t id) {
- ion_user_handle_t buffer = -1;
- int ret = ion_import(ionFd, bufferFd, &buffer);
- return new Impl(ionFd, capacity, bufferFd, buffer, id, ret);
- }
-
- /**
- * Constructs an ion allocation by allocating an ion buffer.
- *
- * \param ionFd ion client (ownership transferred to created object)
- * \param size size of allocation
- * \param align desired alignment of allocation
- * \param heapMask mask of heaps considered
- * \param flags ion allocation flags
- *
- * \return created ion allocation (implementation) which may be invalid if the
- * allocation failed.
- */
- static Impl *Alloc(int ionFd, size_t size, size_t align, unsigned heapMask, unsigned flags, C2Allocator::id_t id) {
- int bufferFd = -1;
- ion_user_handle_t buffer = -1;
- size_t alignedSize = align == 0 ? size : (size + align - 1) & ~(align - 1);
- int ret = ion_alloc(ionFd, alignedSize, align, heapMask, flags, &buffer);
- ALOGV("ion_alloc(ionFd = %d, size = %zu, align = %zu, prot = %d, flags = %d) "
- "returned (%d) ; buffer = %d",
- ionFd, alignedSize, align, heapMask, flags, ret, buffer);
- if (ret == 0) {
- // get buffer fd for native handle constructor
- ret = ion_share(ionFd, buffer, &bufferFd);
- if (ret != 0) {
- ion_free(ionFd, buffer);
- buffer = -1;
- }
- }
- return new Impl(ionFd, alignedSize, bufferFd, buffer, id, ret);
- }
-
- c2_status_t map(size_t offset, size_t size, C2MemoryUsage usage, C2Fence *fence, void **addr) {
- (void)fence; // TODO: wait for fence
- *addr = nullptr;
- if (!mMappings.empty()) {
- ALOGV("multiple map");
- // TODO: technically we should return DUPLICATE here, but our block views don't
- // actually unmap, so we end up remapping an ion buffer multiple times.
- //
- // return C2_DUPLICATE;
- }
- if (size == 0) {
- return C2_BAD_VALUE;
- }
-
- int prot = PROT_NONE;
- int flags = MAP_SHARED;
- if (usage.expected & C2MemoryUsage::CPU_READ) {
- prot |= PROT_READ;
- }
- if (usage.expected & C2MemoryUsage::CPU_WRITE) {
- prot |= PROT_WRITE;
- }
-
- size_t alignmentBytes = offset % PAGE_SIZE;
- size_t mapOffset = offset - alignmentBytes;
- size_t mapSize = size + alignmentBytes;
- Mapping map = { nullptr, alignmentBytes, mapSize };
-
- c2_status_t err = C2_OK;
- if (mMapFd == -1) {
- int ret = ion_map(mIonFd, mBuffer, mapSize, prot,
- flags, mapOffset, (unsigned char**)&map.addr, &mMapFd);
- ALOGV("ion_map(ionFd = %d, handle = %d, size = %zu, prot = %d, flags = %d, "
- "offset = %zu) returned (%d)",
- mIonFd, mBuffer, mapSize, prot, flags, mapOffset, ret);
- if (ret) {
- mMapFd = -1;
- map.addr = *addr = nullptr;
- err = c2_map_errno<EINVAL>(-ret);
- } else {
- *addr = (uint8_t *)map.addr + alignmentBytes;
- }
- } else {
- map.addr = mmap(nullptr, mapSize, prot, flags, mMapFd, mapOffset);
- ALOGV("mmap(size = %zu, prot = %d, flags = %d, mapFd = %d, offset = %zu) "
- "returned (%d)",
- mapSize, prot, flags, mMapFd, mapOffset, errno);
- if (map.addr == MAP_FAILED) {
- map.addr = *addr = nullptr;
- err = c2_map_errno<EINVAL>(errno);
- } else {
- *addr = (uint8_t *)map.addr + alignmentBytes;
- }
- }
- if (map.addr) {
- mMappings.push_back(map);
- }
- return err;
- }
-
- c2_status_t unmap(void *addr, size_t size, C2Fence *fence) {
- if (mMapFd < 0 || mMappings.empty()) {
- ALOGD("tried to unmap unmapped buffer");
- return C2_NOT_FOUND;
- }
- for (auto it = mMappings.begin(); it != mMappings.end(); ++it) {
- if (addr != (uint8_t *)it->addr + it->alignmentBytes ||
- size + it->alignmentBytes != it->size) {
- continue;
- }
- int err = munmap(it->addr, it->size);
- if (err != 0) {
- ALOGD("munmap failed");
- return c2_map_errno<EINVAL>(errno);
- }
- if (fence) {
- *fence = C2Fence(); // not using fences
- }
- (void)mMappings.erase(it);
- ALOGV("successfully unmapped: %d", mBuffer);
- return C2_OK;
- }
- ALOGD("unmap failed to find specified map");
- return C2_BAD_VALUE;
- }
-
- ~Impl() {
- if (!mMappings.empty()) {
- ALOGD("Dangling mappings!");
- for (const Mapping &map : mMappings) {
- (void)munmap(map.addr, map.size);
- }
- }
- if (mMapFd >= 0) {
- close(mMapFd);
- mMapFd = -1;
- }
- if (mInit == C2_OK) {
- (void)ion_free(mIonFd, mBuffer);
- native_handle_close(&mHandle);
- }
- if (mIonFd >= 0) {
- close(mIonFd);
- }
- }
-
- c2_status_t status() const {
- return mInit;
- }
-
- const C2Handle *handle() const {
- return &mHandle;
- }
-
- C2Allocator::id_t getAllocatorId() const {
- return mId;
- }
-
- ion_user_handle_t ionHandle() const {
- return mBuffer;
- }
-
-private:
- int mIonFd;
- C2HandleIon mHandle;
- ion_user_handle_t mBuffer;
- C2Allocator::id_t mId;
- c2_status_t mInit;
- int mMapFd; // only one for now
- struct Mapping {
- void *addr;
- size_t alignmentBytes;
- size_t size;
- };
- std::list<Mapping> mMappings;
-};
-
-c2_status_t C2AllocationIon::map(
- size_t offset, size_t size, C2MemoryUsage usage, C2Fence *fence, void **addr) {
- return mImpl->map(offset, size, usage, fence, addr);
-}
-
-c2_status_t C2AllocationIon::unmap(void *addr, size_t size, C2Fence *fence) {
- return mImpl->unmap(addr, size, fence);
-}
-
-c2_status_t C2AllocationIon::status() const {
- return mImpl->status();
-}
-
-C2Allocator::id_t C2AllocationIon::getAllocatorId() const {
- return mImpl->getAllocatorId();
-}
-
-bool C2AllocationIon::equals(const std::shared_ptr<C2LinearAllocation> &other) const {
- if (!other || other->getAllocatorId() != getAllocatorId()) {
- return false;
- }
- // get user handle to compare objects
- std::shared_ptr<C2AllocationIon> otherAsIon = std::static_pointer_cast<C2AllocationIon>(other);
- return mImpl->ionHandle() == otherAsIon->mImpl->ionHandle();
-}
-
-const C2Handle *C2AllocationIon::handle() const {
- return mImpl->handle();
-}
-
-C2AllocationIon::~C2AllocationIon() {
- delete mImpl;
-}
-
-C2AllocationIon::C2AllocationIon(int ionFd, size_t size, size_t align,
- unsigned heapMask, unsigned flags, C2Allocator::id_t id)
- : C2LinearAllocation(size),
- mImpl(Impl::Alloc(ionFd, size, align, heapMask, flags, id)) { }
-
-C2AllocationIon::C2AllocationIon(int ionFd, size_t size, int shareFd, C2Allocator::id_t id)
- : C2LinearAllocation(size),
- mImpl(Impl::Import(ionFd, size, shareFd, id)) { }
-
-/* ======================================= ION ALLOCATOR ====================================== */
-C2AllocatorIon::C2AllocatorIon(id_t id)
- : mInit(C2_OK),
- mIonFd(ion_open()) {
- if (mIonFd < 0) {
- switch (errno) {
- case ENOENT: mInit = C2_OMITTED; break;
- default: mInit = c2_map_errno<EACCES>(errno); break;
- }
- } else {
- C2MemoryUsage minUsage = { 0, 0 };
- C2MemoryUsage maxUsage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- Traits traits = { "android.allocator.ion", id, LINEAR, minUsage, maxUsage };
- mTraits = std::make_shared<Traits>(traits);
- mBlockSize = ::getpagesize();
- }
-}
-
-C2AllocatorIon::~C2AllocatorIon() {
- if (mInit == C2_OK) {
- ion_close(mIonFd);
- }
-}
-
-C2Allocator::id_t C2AllocatorIon::getId() const {
- std::lock_guard<std::mutex> lock(mUsageMapperLock);
- return mTraits->id;
-}
-
-C2String C2AllocatorIon::getName() const {
- std::lock_guard<std::mutex> lock(mUsageMapperLock);
- return mTraits->name;
-}
-
-std::shared_ptr<const C2Allocator::Traits> C2AllocatorIon::getTraits() const {
- std::lock_guard<std::mutex> lock(mUsageMapperLock);
- return mTraits;
-}
-
-void C2AllocatorIon::setUsageMapper(
- const UsageMapperFn &mapper, uint64_t minUsage, uint64_t maxUsage, uint64_t blockSize) {
- std::lock_guard<std::mutex> lock(mUsageMapperLock);
- mUsageMapperCache.clear();
- mUsageMapperLru.clear();
- mUsageMapper = mapper;
- Traits traits = {
- mTraits->name, mTraits->id, LINEAR,
- C2MemoryUsage(minUsage), C2MemoryUsage(maxUsage)
- };
- mTraits = std::make_shared<Traits>(traits);
- mBlockSize = blockSize;
-}
-
-std::size_t C2AllocatorIon::MapperKeyHash::operator()(const MapperKey &k) const {
- return std::hash<uint64_t>{}(k.first) ^ std::hash<size_t>{}(k.second);
-}
-
-c2_status_t C2AllocatorIon::mapUsage(
- C2MemoryUsage usage, size_t capacity, size_t *align, unsigned *heapMask, unsigned *flags) {
- std::lock_guard<std::mutex> lock(mUsageMapperLock);
- c2_status_t res = C2_OK;
- // align capacity
- capacity = (capacity + mBlockSize - 1) & ~(mBlockSize - 1);
- MapperKey key = std::make_pair(usage.expected, capacity);
- auto entry = mUsageMapperCache.find(key);
- if (entry == mUsageMapperCache.end()) {
- if (mUsageMapper) {
- res = mUsageMapper(usage, capacity, align, heapMask, flags);
- } else {
- *align = 0; // TODO make this 1
- *heapMask = ~0; // default mask
- *flags = 0; // default flags
- res = C2_NO_INIT;
- }
- // add usage to cache
- MapperValue value = std::make_tuple(*align, *heapMask, *flags, res);
- mUsageMapperLru.emplace_front(key, value);
- mUsageMapperCache.emplace(std::make_pair(key, mUsageMapperLru.begin()));
- if (mUsageMapperCache.size() > USAGE_LRU_CACHE_SIZE) {
- // remove LRU entry
- MapperKey lruKey = mUsageMapperLru.front().first;
- mUsageMapperCache.erase(lruKey);
- mUsageMapperLru.pop_back();
- }
- } else {
- // move entry to MRU
- mUsageMapperLru.splice(mUsageMapperLru.begin(), mUsageMapperLru, entry->second);
- const MapperValue &value = entry->second->second;
- std::tie(*align, *heapMask, *flags, res) = value;
- }
- return res;
-}
-
-c2_status_t C2AllocatorIon::newLinearAllocation(
- uint32_t capacity, C2MemoryUsage usage, std::shared_ptr<C2LinearAllocation> *allocation) {
- if (allocation == nullptr) {
- return C2_BAD_VALUE;
- }
-
- allocation->reset();
- if (mInit != C2_OK) {
- return mInit;
- }
-
- size_t align = 0;
- unsigned heapMask = ~0;
- unsigned flags = 0;
- c2_status_t ret = mapUsage(usage, capacity, &align, &heapMask, &flags);
- if (ret && ret != C2_NO_INIT) {
- return ret;
- }
-
- std::shared_ptr<C2AllocationIon> alloc
- = std::make_shared<C2AllocationIon>(dup(mIonFd), capacity, align, heapMask, flags, mTraits->id);
- ret = alloc->status();
- if (ret == C2_OK) {
- *allocation = alloc;
- }
- return ret;
-}
-
-c2_status_t C2AllocatorIon::priorLinearAllocation(
- const C2Handle *handle, std::shared_ptr<C2LinearAllocation> *allocation) {
- *allocation = nullptr;
- if (mInit != C2_OK) {
- return mInit;
- }
-
- if (!C2HandleIon::isValid(handle)) {
- return C2_BAD_VALUE;
- }
-
- // TODO: get capacity and validate it
- const C2HandleIon *h = static_cast<const C2HandleIon*>(handle);
- std::shared_ptr<C2AllocationIon> alloc
- = std::make_shared<C2AllocationIon>(dup(mIonFd), h->size(), h->bufferFd(), mTraits->id);
- c2_status_t ret = alloc->status();
- if (ret == C2_OK) {
- *allocation = alloc;
- native_handle_delete(const_cast<native_handle_t*>(
- reinterpret_cast<const native_handle_t*>(handle)));
- }
- return ret;
-}
-
-bool C2AllocatorIon::isValid(const C2Handle* const o) {
- return C2HandleIon::isValid(o);
-}
-
-} // namespace android
-
diff --git a/codec2/vndk/C2Buffer.cpp b/codec2/vndk/C2Buffer.cpp
deleted file mode 100644
index 47366ca..0000000
--- a/codec2/vndk/C2Buffer.cpp
+++ /dev/null
@@ -1,1304 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2Buffer"
-#include <utils/Log.h>
-
-#include <list>
-#include <map>
-#include <mutex>
-
-#include <C2AllocatorIon.h>
-#include <C2AllocatorGralloc.h>
-#include <C2BufferPriv.h>
-#include <C2BlockInternal.h>
-#include <bufferpool/ClientManager.h>
-
-namespace {
-
-using android::C2AllocatorGralloc;
-using android::C2AllocatorIon;
-using android::hardware::media::bufferpool::BufferPoolData;
-using android::hardware::media::bufferpool::V1_0::ResultStatus;
-using android::hardware::media::bufferpool::V1_0::implementation::BufferPoolAllocation;
-using android::hardware::media::bufferpool::V1_0::implementation::BufferPoolAllocator;
-using android::hardware::media::bufferpool::V1_0::implementation::ClientManager;
-using android::hardware::media::bufferpool::V1_0::implementation::ConnectionId;
-using android::hardware::media::bufferpool::V1_0::implementation::INVALID_CONNECTIONID;
-
-// This anonymous namespace contains the helper classes that allow our implementation to create
-// block/buffer objects.
-//
-// Inherit from the parent, share with the friend.
-class ReadViewBuddy : public C2ReadView {
- using C2ReadView::C2ReadView;
- friend class ::C2ConstLinearBlock;
-};
-
-class WriteViewBuddy : public C2WriteView {
- using C2WriteView::C2WriteView;
- friend class ::C2LinearBlock;
-};
-
-class ConstLinearBlockBuddy : public C2ConstLinearBlock {
- using C2ConstLinearBlock::C2ConstLinearBlock;
- friend class ::C2LinearBlock;
-};
-
-class LinearBlockBuddy : public C2LinearBlock {
- using C2LinearBlock::C2LinearBlock;
- friend class ::C2BasicLinearBlockPool;
-};
-
-class AcquirableReadViewBuddy : public C2Acquirable<C2ReadView> {
- using C2Acquirable::C2Acquirable;
- friend class ::C2ConstLinearBlock;
-};
-
-class AcquirableWriteViewBuddy : public C2Acquirable<C2WriteView> {
- using C2Acquirable::C2Acquirable;
- friend class ::C2LinearBlock;
-};
-
-class GraphicViewBuddy : public C2GraphicView {
- using C2GraphicView::C2GraphicView;
- friend class ::C2ConstGraphicBlock;
- friend class ::C2GraphicBlock;
-};
-
-class AcquirableConstGraphicViewBuddy : public C2Acquirable<const C2GraphicView> {
- using C2Acquirable::C2Acquirable;
- friend class ::C2ConstGraphicBlock;
-};
-
-class AcquirableGraphicViewBuddy : public C2Acquirable<C2GraphicView> {
- using C2Acquirable::C2Acquirable;
- friend class ::C2GraphicBlock;
-};
-
-class ConstGraphicBlockBuddy : public C2ConstGraphicBlock {
- using C2ConstGraphicBlock::C2ConstGraphicBlock;
- friend class ::C2GraphicBlock;
-};
-
-class GraphicBlockBuddy : public C2GraphicBlock {
- using C2GraphicBlock::C2GraphicBlock;
- friend class ::C2BasicGraphicBlockPool;
-};
-
-class BufferDataBuddy : public C2BufferData {
- using C2BufferData::C2BufferData;
- friend class ::C2Buffer;
-};
-
-} // namespace
-
-/* ========================================== 1D BLOCK ========================================= */
-
-/**
- * This class is the base class for all 1D block and view implementations.
- *
- * This is basically just a placeholder for the underlying 1D allocation and the range of the
- * alloted portion to this block. There is also a placeholder for a blockpool data.
- */
-class C2_HIDE _C2Block1DImpl : public _C2LinearRangeAspect {
-public:
- _C2Block1DImpl(const std::shared_ptr<C2LinearAllocation> &alloc,
- const std::shared_ptr<_C2BlockPoolData> &poolData = nullptr,
- size_t offset = 0, size_t size = ~(size_t)0)
- : _C2LinearRangeAspect(alloc.get(), offset, size),
- mAllocation(alloc),
- mPoolData(poolData) { }
-
- _C2Block1DImpl(const _C2Block1DImpl &other, size_t offset = 0, size_t size = ~(size_t)0)
- : _C2LinearRangeAspect(&other, offset, size),
- mAllocation(other.mAllocation),
- mPoolData(other.mPoolData) { }
-
- /** returns pool data */
- std::shared_ptr<_C2BlockPoolData> poolData() const {
- return mPoolData;
- }
-
- /** returns native handle */
- const C2Handle *handle() const {
- return mAllocation ? mAllocation->handle() : nullptr;
- }
-
- /** returns the allocator's ID */
- C2Allocator::id_t getAllocatorId() const {
- // BAD_ID can only happen if this Impl class is initialized for a view - never for a block.
- return mAllocation ? mAllocation->getAllocatorId() : C2Allocator::BAD_ID;
- }
-
- std::shared_ptr<C2LinearAllocation> getAllocation() const {
- return mAllocation;
- }
-
-private:
- std::shared_ptr<C2LinearAllocation> mAllocation;
- std::shared_ptr<_C2BlockPoolData> mPoolData;
-};
-
-/**
- * This class contains the mapped data pointer, and the potential error.
- *
- * range is the mapped range of the underlying allocation (which is part of the allotted
- * range).
- */
-class C2_HIDE _C2MappedBlock1DImpl : public _C2Block1DImpl {
-public:
- _C2MappedBlock1DImpl(const _C2Block1DImpl &block, uint8_t *data,
- size_t offset = 0, size_t size = ~(size_t)0)
- : _C2Block1DImpl(block, offset, size), mData(data), mError(C2_OK) { }
-
- _C2MappedBlock1DImpl(c2_status_t error)
- : _C2Block1DImpl(nullptr), mData(nullptr), mError(error) {
- // CHECK(error != C2_OK);
- }
-
- const uint8_t *data() const {
- return mData;
- }
-
- uint8_t *data() {
- return mData;
- }
-
- c2_status_t error() const {
- return mError;
- }
-
-private:
- uint8_t *mData;
- c2_status_t mError;
-};
-
-/**
- * Block implementation.
- */
-class C2Block1D::Impl : public _C2Block1DImpl {
- using _C2Block1DImpl::_C2Block1DImpl;
-};
-
-const C2Handle *C2Block1D::handle() const {
- return mImpl->handle();
-};
-
-C2Allocator::id_t C2Block1D::getAllocatorId() const {
- return mImpl->getAllocatorId();
-};
-
-C2Block1D::C2Block1D(std::shared_ptr<Impl> impl, const _C2LinearRangeAspect &range)
- // always clamp subrange to parent (impl) range for safety
- : _C2LinearRangeAspect(impl.get(), range.offset(), range.size()), mImpl(impl) {
-}
-
-/**
- * Read view implementation.
- *
- * range of Impl is the mapped range of the underlying allocation (which is part of the allotted
- * range). range of View is 0 to capacity() (not represented as an actual range). This maps to a
- * subrange of Impl range starting at mImpl->offset() + _mOffset.
- */
-class C2ReadView::Impl : public _C2MappedBlock1DImpl {
- using _C2MappedBlock1DImpl::_C2MappedBlock1DImpl;
-};
-
-C2ReadView::C2ReadView(std::shared_ptr<Impl> impl, uint32_t offset, uint32_t size)
- : _C2LinearCapacityAspect(C2LinearCapacity(impl->size()).range(offset, size).size()),
- mImpl(impl),
- mOffset(C2LinearCapacity(impl->size()).range(offset, size).offset()) { }
-
-C2ReadView::C2ReadView(c2_status_t error)
- : _C2LinearCapacityAspect(0u), mImpl(std::make_shared<Impl>(error)), mOffset(0u) {
- // CHECK(error != C2_OK);
-}
-
-const uint8_t *C2ReadView::data() const {
- return mImpl->error() ? nullptr : mImpl->data() + mOffset;
-}
-
-c2_status_t C2ReadView::error() const {
- return mImpl->error();
-}
-
-C2ReadView C2ReadView::subView(size_t offset, size_t size) const {
- C2LinearRange subRange(*this, offset, size);
- return C2ReadView(mImpl, mOffset + subRange.offset(), subRange.size());
-}
-
-/**
- * Write view implementation.
- */
-class C2WriteView::Impl : public _C2MappedBlock1DImpl {
- using _C2MappedBlock1DImpl::_C2MappedBlock1DImpl;
-};
-
-C2WriteView::C2WriteView(std::shared_ptr<Impl> impl)
-// UGLY: _C2LinearRangeAspect requires a bona-fide object for capacity to prevent spoofing, so
-// this is what we have to do.
-// TODO: use childRange
- : _C2EditableLinearRangeAspect(std::make_unique<C2LinearCapacity>(impl->size()).get()), mImpl(impl) { }
-
-C2WriteView::C2WriteView(c2_status_t error)
- : _C2EditableLinearRangeAspect(nullptr), mImpl(std::make_shared<Impl>(error)) {}
-
-uint8_t *C2WriteView::base() { return mImpl->data(); }
-
-uint8_t *C2WriteView::data() { return mImpl->data() + offset(); }
-
-c2_status_t C2WriteView::error() const { return mImpl->error(); }
-
-/**
- * Const linear block implementation.
- */
-C2ConstLinearBlock::C2ConstLinearBlock(std::shared_ptr<Impl> impl, const _C2LinearRangeAspect &range, C2Fence fence)
- : C2Block1D(impl, range), mFence(fence) { }
-
-C2Acquirable<C2ReadView> C2ConstLinearBlock::map() const {
- void *base = nullptr;
- uint32_t len = size();
- c2_status_t error = mImpl->getAllocation()->map(
- offset(), len, { C2MemoryUsage::CPU_READ, 0 }, nullptr, &base);
- // TODO: wait on fence
- if (error == C2_OK) {
- std::shared_ptr<ReadViewBuddy::Impl> rvi = std::shared_ptr<ReadViewBuddy::Impl>(
- new ReadViewBuddy::Impl(*mImpl, (uint8_t *)base, offset(), len),
- [base, len](ReadViewBuddy::Impl *i) {
- (void)i->getAllocation()->unmap(base, len, nullptr);
- delete i;
- });
- return AcquirableReadViewBuddy(error, C2Fence(), ReadViewBuddy(rvi, 0, len));
- } else {
- return AcquirableReadViewBuddy(error, C2Fence(), ReadViewBuddy(error));
- }
-}
-
-C2ConstLinearBlock C2ConstLinearBlock::subBlock(size_t offset_, size_t size_) const {
- C2LinearRange subRange(*mImpl, offset_, size_);
- return C2ConstLinearBlock(mImpl, subRange, mFence);
-}
-
-/**
- * Linear block implementation.
- */
-C2LinearBlock::C2LinearBlock(std::shared_ptr<Impl> impl, const _C2LinearRangeAspect &range)
- : C2Block1D(impl, range) { }
-
-C2Acquirable<C2WriteView> C2LinearBlock::map() {
- void *base = nullptr;
- uint32_t len = size();
- c2_status_t error = mImpl->getAllocation()->map(
- offset(), len, { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE }, nullptr, &base);
- // TODO: wait on fence
- if (error == C2_OK) {
- std::shared_ptr<WriteViewBuddy::Impl> rvi = std::shared_ptr<WriteViewBuddy::Impl>(
- new WriteViewBuddy::Impl(*mImpl, (uint8_t *)base, 0, len),
- [base, len](WriteViewBuddy::Impl *i) {
- (void)i->getAllocation()->unmap(base, len, nullptr);
- delete i;
- });
- return AcquirableWriteViewBuddy(error, C2Fence(), WriteViewBuddy(rvi));
- } else {
- return AcquirableWriteViewBuddy(error, C2Fence(), WriteViewBuddy(error));
- }
-}
-
-C2ConstLinearBlock C2LinearBlock::share(size_t offset_, size_t size_, C2Fence fence) {
- return ConstLinearBlockBuddy(mImpl, C2LinearRange(*this, offset_, size_), fence);
-}
-
-C2BasicLinearBlockPool::C2BasicLinearBlockPool(
- const std::shared_ptr<C2Allocator> &allocator)
- : mAllocator(allocator) { }
-
-c2_status_t C2BasicLinearBlockPool::fetchLinearBlock(
- uint32_t capacity,
- C2MemoryUsage usage,
- std::shared_ptr<C2LinearBlock> *block /* nonnull */) {
- block->reset();
-
- std::shared_ptr<C2LinearAllocation> alloc;
- c2_status_t err = mAllocator->newLinearAllocation(capacity, usage, &alloc);
- if (err != C2_OK) {
- return err;
- }
-
- *block = _C2BlockFactory::CreateLinearBlock(alloc);
-
- return C2_OK;
-}
-
-struct C2_HIDE C2PooledBlockPoolData : _C2BlockPoolData {
-
- virtual type_t getType() const override {
- return TYPE_BUFFERPOOL;
- }
-
- void getBufferPoolData(std::shared_ptr<BufferPoolData> *data) const {
- *data = mData;
- }
-
- C2PooledBlockPoolData(const std::shared_ptr<BufferPoolData> &data) : mData(data) {}
-
- virtual ~C2PooledBlockPoolData() override {}
-
-private:
- std::shared_ptr<BufferPoolData> mData;
-};
-
-bool _C2BlockFactory::GetBufferPoolData(
- const std::shared_ptr<const _C2BlockPoolData> &data,
- std::shared_ptr<BufferPoolData> *bufferPoolData) {
- if (data && data->getType() == _C2BlockPoolData::TYPE_BUFFERPOOL) {
- const std::shared_ptr<const C2PooledBlockPoolData> poolData =
- std::static_pointer_cast<const C2PooledBlockPoolData>(data);
- poolData->getBufferPoolData(bufferPoolData);
- return true;
- }
- return false;
-}
-
-std::shared_ptr<C2LinearBlock> _C2BlockFactory::CreateLinearBlock(
- const std::shared_ptr<C2LinearAllocation> &alloc,
- const std::shared_ptr<_C2BlockPoolData> &data, size_t offset, size_t size) {
- std::shared_ptr<C2Block1D::Impl> impl =
- std::make_shared<C2Block1D::Impl>(alloc, data, offset, size);
- return std::shared_ptr<C2LinearBlock>(new C2LinearBlock(impl, *impl));
-}
-
-std::shared_ptr<_C2BlockPoolData> _C2BlockFactory::GetLinearBlockPoolData(
- const C2Block1D &block) {
- if (block.mImpl) {
- return block.mImpl->poolData();
- }
- return nullptr;
-}
-
-std::shared_ptr<C2LinearBlock> _C2BlockFactory::CreateLinearBlock(
- const C2Handle *handle) {
- // TODO: get proper allocator? and mutex?
- static std::unique_ptr<C2AllocatorIon> sAllocator = std::make_unique<C2AllocatorIon>(0);
-
- std::shared_ptr<C2LinearAllocation> alloc;
- if (C2AllocatorIon::isValid(handle)) {
- c2_status_t err = sAllocator->priorLinearAllocation(handle, &alloc);
- if (err == C2_OK) {
- std::shared_ptr<C2LinearBlock> block = _C2BlockFactory::CreateLinearBlock(alloc);
- return block;
- }
- }
- return nullptr;
-}
-
-std::shared_ptr<C2LinearBlock> _C2BlockFactory::CreateLinearBlock(
- const C2Handle *cHandle, const std::shared_ptr<BufferPoolData> &data) {
- // TODO: get proper allocator? and mutex?
- static std::unique_ptr<C2AllocatorIon> sAllocator = std::make_unique<C2AllocatorIon>(0);
-
- std::shared_ptr<C2LinearAllocation> alloc;
- if (C2AllocatorIon::isValid(cHandle)) {
- native_handle_t *handle = native_handle_clone(cHandle);
- if (handle) {
- c2_status_t err = sAllocator->priorLinearAllocation(handle, &alloc);
- const std::shared_ptr<C2PooledBlockPoolData> poolData =
- std::make_shared<C2PooledBlockPoolData>(data);
- if (err == C2_OK && poolData) {
- // TODO: config params?
- std::shared_ptr<C2LinearBlock> block =
- _C2BlockFactory::CreateLinearBlock(alloc, poolData);
- return block;
- }
- }
- }
- return nullptr;
-};
-
-/**
- * Wrapped C2Allocator which is injected to buffer pool on behalf of
- * C2BlockPool.
- */
-class _C2BufferPoolAllocator : public BufferPoolAllocator {
-public:
- _C2BufferPoolAllocator(const std::shared_ptr<C2Allocator> &allocator)
- : mAllocator(allocator) {}
-
- ~_C2BufferPoolAllocator() override {}
-
- ResultStatus allocate(const std::vector<uint8_t> ¶ms,
- std::shared_ptr<BufferPoolAllocation> *alloc,
- size_t *allocSize) override;
-
- bool compatible(const std::vector<uint8_t> &newParams,
- const std::vector<uint8_t> &oldParams) override;
-
- // Methods for codec2 component (C2BlockPool).
- /**
- * Transforms linear allocation parameters for C2Allocator to parameters
- * for buffer pool.
- *
- * @param capacity size of linear allocation
- * @param usage memory usage pattern for linear allocation
- * @param params allocation parameters for buffer pool
- */
- void getLinearParams(uint32_t capacity, C2MemoryUsage usage,
- std::vector<uint8_t> *params);
-
- /**
- * Transforms graphic allocation parameters for C2Allocator to parameters
- * for buffer pool.
- *
- * @param width width of graphic allocation
- * @param height height of graphic allocation
- * @param format color format of graphic allocation
- * @param params allocation parameter for buffer pool
- */
- void getGraphicParams(uint32_t width, uint32_t height,
- uint32_t format, C2MemoryUsage usage,
- std::vector<uint8_t> *params);
-
- /**
- * Transforms an existing native handle to an C2LinearAllcation.
- * Wrapper to C2Allocator#priorLinearAllocation
- */
- c2_status_t priorLinearAllocation(
- const C2Handle *handle,
- std::shared_ptr<C2LinearAllocation> *c2Allocation);
-
- /**
- * Transforms an existing native handle to an C2GraphicAllcation.
- * Wrapper to C2Allocator#priorGraphicAllocation
- */
- c2_status_t priorGraphicAllocation(
- const C2Handle *handle,
- std::shared_ptr<C2GraphicAllocation> *c2Allocation);
-
-private:
- static constexpr int kMaxIntParams = 5; // large enough number;
-
- enum AllocType : uint8_t {
- ALLOC_NONE = 0,
-
- ALLOC_LINEAR,
- ALLOC_GRAPHIC,
- };
-
- union AllocParams {
- struct {
- AllocType allocType;
- C2MemoryUsage usage;
- uint32_t params[kMaxIntParams];
- } data;
- uint8_t array[0];
-
- AllocParams() : data{ALLOC_NONE, {0, 0}, {0}} {}
- AllocParams(C2MemoryUsage usage, uint32_t capacity)
- : data{ALLOC_LINEAR, usage, {[0] = capacity}} {}
- AllocParams(
- C2MemoryUsage usage,
- uint32_t width, uint32_t height, uint32_t format)
- : data{ALLOC_GRAPHIC, usage, {width, height, format}} {}
- };
-
- const std::shared_ptr<C2Allocator> mAllocator;
-};
-
-struct LinearAllocationDtor {
- LinearAllocationDtor(const std::shared_ptr<C2LinearAllocation> &alloc)
- : mAllocation(alloc) {}
-
- void operator()(BufferPoolAllocation *poolAlloc) { delete poolAlloc; }
-
- const std::shared_ptr<C2LinearAllocation> mAllocation;
-};
-
-struct GraphicAllocationDtor {
- GraphicAllocationDtor(const std::shared_ptr<C2GraphicAllocation> &alloc)
- : mAllocation(alloc) {}
-
- void operator()(BufferPoolAllocation *poolAlloc) { delete poolAlloc; }
-
- const std::shared_ptr<C2GraphicAllocation> mAllocation;
-};
-
-ResultStatus _C2BufferPoolAllocator::allocate(
- const std::vector<uint8_t> ¶ms,
- std::shared_ptr<BufferPoolAllocation> *alloc,
- size_t *allocSize) {
- AllocParams c2Params;
- memcpy(&c2Params, params.data(), std::min(sizeof(AllocParams), params.size()));
- c2_status_t status = C2_BAD_VALUE;
- switch(c2Params.data.allocType) {
- case ALLOC_NONE:
- break;
- case ALLOC_LINEAR: {
- std::shared_ptr<C2LinearAllocation> c2Linear;
- status = mAllocator->newLinearAllocation(
- c2Params.data.params[0], c2Params.data.usage, &c2Linear);
- if (status == C2_OK && c2Linear) {
- BufferPoolAllocation *ptr = new BufferPoolAllocation(c2Linear->handle());
- if (ptr) {
- *alloc = std::shared_ptr<BufferPoolAllocation>(
- ptr, LinearAllocationDtor(c2Linear));
- if (*alloc) {
- *allocSize = (size_t)c2Params.data.params[0];
- return ResultStatus::OK;
- }
- delete ptr;
- }
- return ResultStatus::NO_MEMORY;
- }
- break;
- }
- case ALLOC_GRAPHIC: {
- std::shared_ptr<C2GraphicAllocation> c2Graphic;
- status = mAllocator->newGraphicAllocation(
- c2Params.data.params[0],
- c2Params.data.params[1],
- c2Params.data.params[2],
- c2Params.data.usage, &c2Graphic);
- if (status == C2_OK && c2Graphic) {
- BufferPoolAllocation *ptr = new BufferPoolAllocation(c2Graphic->handle());
- if (ptr) {
- *alloc = std::shared_ptr<BufferPoolAllocation>(
- ptr, GraphicAllocationDtor(c2Graphic));
- if (*alloc) {
- *allocSize = c2Params.data.params[0] * c2Params.data.params[1];
- return ResultStatus::OK;
- }
- delete ptr;
- }
- return ResultStatus::NO_MEMORY;
- }
- break;
- }
- default:
- break;
- }
- return ResultStatus::CRITICAL_ERROR;
-}
-
-bool _C2BufferPoolAllocator::compatible(
- const std::vector<uint8_t> &newParams,
- const std::vector<uint8_t> &oldParams) {
- AllocParams newAlloc;
- AllocParams oldAlloc;
- memcpy(&newAlloc, newParams.data(), std::min(sizeof(AllocParams), newParams.size()));
- memcpy(&oldAlloc, oldParams.data(), std::min(sizeof(AllocParams), oldParams.size()));
-
- // TODO: support not exact matching. e.g) newCapacity < oldCapacity
- if (newAlloc.data.allocType == oldAlloc.data.allocType &&
- newAlloc.data.usage.expected == oldAlloc.data.usage.expected) {
- for (int i = 0; i < kMaxIntParams; ++i) {
- if (newAlloc.data.params[i] != oldAlloc.data.params[i]) {
- return false;
- }
- }
- return true;
- }
- return false;
-}
-
-void _C2BufferPoolAllocator::getLinearParams(
- uint32_t capacity, C2MemoryUsage usage, std::vector<uint8_t> *params) {
- AllocParams c2Params(usage, capacity);
- params->assign(c2Params.array, c2Params.array + sizeof(AllocParams));
-}
-
-void _C2BufferPoolAllocator::getGraphicParams(
- uint32_t width, uint32_t height, uint32_t format, C2MemoryUsage usage,
- std::vector<uint8_t> *params) {
- AllocParams c2Params(usage, width, height, format);
- params->assign(c2Params.array, c2Params.array + sizeof(AllocParams));
-}
-
-c2_status_t _C2BufferPoolAllocator::priorLinearAllocation(
- const C2Handle *handle,
- std::shared_ptr<C2LinearAllocation> *c2Allocation) {
- return mAllocator->priorLinearAllocation(handle, c2Allocation);
-}
-
-c2_status_t _C2BufferPoolAllocator::priorGraphicAllocation(
- const C2Handle *handle,
- std::shared_ptr<C2GraphicAllocation> *c2Allocation) {
- return mAllocator->priorGraphicAllocation(handle, c2Allocation);
-}
-
-class C2PooledBlockPool::Impl {
-public:
- Impl(const std::shared_ptr<C2Allocator> &allocator)
- : mInit(C2_OK),
- mBufferPoolManager(ClientManager::getInstance()),
- mAllocator(std::make_shared<_C2BufferPoolAllocator>(allocator)) {
- if (mAllocator && mBufferPoolManager) {
- if (mBufferPoolManager->create(
- mAllocator, &mConnectionId) == ResultStatus::OK) {
- return;
- }
- }
- mInit = C2_NO_INIT;
- }
-
- ~Impl() {
- if (mInit == C2_OK) {
- mBufferPoolManager->close(mConnectionId);
- }
- }
-
- c2_status_t fetchLinearBlock(
- uint32_t capacity, C2MemoryUsage usage,
- std::shared_ptr<C2LinearBlock> *block /* nonnull */) {
- block->reset();
- if (mInit != C2_OK) {
- return mInit;
- }
- std::vector<uint8_t> params;
- mAllocator->getLinearParams(capacity, usage, ¶ms);
- std::shared_ptr<BufferPoolData> bufferPoolData;
- native_handle_t *cHandle = nullptr;
- ResultStatus status = mBufferPoolManager->allocate(
- mConnectionId, params, &cHandle, &bufferPoolData);
- if (status == ResultStatus::OK) {
- native_handle_t *handle = native_handle_clone(cHandle);
- if (handle) {
- std::shared_ptr<C2LinearAllocation> alloc;
- std::shared_ptr<C2PooledBlockPoolData> poolData =
- std::make_shared<C2PooledBlockPoolData>(bufferPoolData);
- c2_status_t err = mAllocator->priorLinearAllocation(handle, &alloc);
- if (err == C2_OK && poolData && alloc) {
- *block = _C2BlockFactory::CreateLinearBlock(alloc, poolData, 0, capacity);
- if (*block) {
- return C2_OK;
- }
- }
- }
- return C2_NO_MEMORY;
- }
- if (status == ResultStatus::NO_MEMORY) {
- return C2_NO_MEMORY;
- }
- return C2_CORRUPTED;
- }
-
- c2_status_t fetchGraphicBlock(
- uint32_t width, uint32_t height, uint32_t format,
- C2MemoryUsage usage,
- std::shared_ptr<C2GraphicBlock> *block) {
- block->reset();
- if (mInit != C2_OK) {
- return mInit;
- }
- std::vector<uint8_t> params;
- mAllocator->getGraphicParams(width, height, format, usage, ¶ms);
- std::shared_ptr<BufferPoolData> bufferPoolData;
- native_handle_t *cHandle = nullptr;
- ResultStatus status = mBufferPoolManager->allocate(
- mConnectionId, params, &cHandle, &bufferPoolData);
- if (status == ResultStatus::OK) {
- native_handle_t *handle = native_handle_clone(cHandle);
- if (handle) {
- std::shared_ptr<C2GraphicAllocation> alloc;
- std::shared_ptr<C2PooledBlockPoolData> poolData =
- std::make_shared<C2PooledBlockPoolData>(bufferPoolData);
- c2_status_t err = mAllocator->priorGraphicAllocation(
- handle, &alloc);
- if (err == C2_OK && poolData && alloc) {
- *block = _C2BlockFactory::CreateGraphicBlock(
- alloc, poolData, C2Rect(width, height));
- if (*block) {
- return C2_OK;
- }
- }
- }
- return C2_NO_MEMORY;
- }
- if (status == ResultStatus::NO_MEMORY) {
- return C2_NO_MEMORY;
- }
- return C2_CORRUPTED;
- }
-
- ConnectionId getConnectionId() {
- return mInit != C2_OK ? INVALID_CONNECTIONID : mConnectionId;
- }
-
-private:
- c2_status_t mInit;
- const android::sp<ClientManager> mBufferPoolManager;
- ConnectionId mConnectionId; // locally
- const std::shared_ptr<_C2BufferPoolAllocator> mAllocator;
-};
-
-C2PooledBlockPool::C2PooledBlockPool(
- const std::shared_ptr<C2Allocator> &allocator, const local_id_t localId)
- : mAllocator(allocator), mLocalId(localId), mImpl(new Impl(allocator)) {}
-
-C2PooledBlockPool::~C2PooledBlockPool() {
-}
-
-c2_status_t C2PooledBlockPool::fetchLinearBlock(
- uint32_t capacity,
- C2MemoryUsage usage,
- std::shared_ptr<C2LinearBlock> *block /* nonnull */) {
- if (mImpl) {
- return mImpl->fetchLinearBlock(capacity, usage, block);
- }
- return C2_CORRUPTED;
-}
-
-c2_status_t C2PooledBlockPool::fetchGraphicBlock(
- uint32_t width,
- uint32_t height,
- uint32_t format,
- C2MemoryUsage usage,
- std::shared_ptr<C2GraphicBlock> *block) {
- if (mImpl) {
- return mImpl->fetchGraphicBlock(width, height, format, usage, block);
- }
- return C2_CORRUPTED;
-}
-
-int64_t C2PooledBlockPool::getConnectionId() {
- if (mImpl) {
- return mImpl->getConnectionId();
- }
- return 0;
-}
-
-/* ========================================== 2D BLOCK ========================================= */
-
-/**
- * Implementation that is shared between all 2D blocks and views.
- *
- * For blocks' Impl's crop is always the allotted crop, even if it is a sub block.
- *
- * For views' Impl's crop is the mapped portion - which for now is always the
- * allotted crop.
- */
-class C2_HIDE _C2Block2DImpl : public _C2PlanarSectionAspect {
-public:
- /**
- * Impl's crop is always the or part of the allotted crop of the allocation.
- */
- _C2Block2DImpl(const std::shared_ptr<C2GraphicAllocation> &alloc,
- const std::shared_ptr<_C2BlockPoolData> &poolData = nullptr,
- const C2Rect &allottedCrop = C2Rect(~0u, ~0u))
- : _C2PlanarSectionAspect(alloc.get(), allottedCrop),
- mAllocation(alloc),
- mPoolData(poolData) { }
-
- virtual ~_C2Block2DImpl() = default;
-
- /** returns pool data */
- std::shared_ptr<_C2BlockPoolData> poolData() const {
- return mPoolData;
- }
-
- /** returns native handle */
- const C2Handle *handle() const {
- return mAllocation ? mAllocation->handle() : nullptr;
- }
-
- /** returns the allocator's ID */
- C2Allocator::id_t getAllocatorId() const {
- // BAD_ID can only happen if this Impl class is initialized for a view - never for a block.
- return mAllocation ? mAllocation->getAllocatorId() : C2Allocator::BAD_ID;
- }
-
- std::shared_ptr<C2GraphicAllocation> getAllocation() const {
- return mAllocation;
- }
-
-private:
- std::shared_ptr<C2GraphicAllocation> mAllocation;
- std::shared_ptr<_C2BlockPoolData> mPoolData;
-};
-
-class C2_HIDE _C2MappingBlock2DImpl
- : public _C2Block2DImpl, public std::enable_shared_from_this<_C2MappingBlock2DImpl> {
-public:
- using _C2Block2DImpl::_C2Block2DImpl;
-
- virtual ~_C2MappingBlock2DImpl() override = default;
-
- /**
- * This class contains the mapped data pointer, and the potential error.
- */
- struct Mapped {
- private:
- friend class _C2MappingBlock2DImpl;
-
- Mapped(const std::shared_ptr<_C2Block2DImpl> &impl, bool writable, C2Fence *fence __unused)
- : mImpl(impl), mWritable(writable) {
- memset(mData, 0, sizeof(mData));
- const C2Rect crop = mImpl->crop();
- // gralloc requires mapping the whole region of interest as we cannot
- // map multiple regions
- mError = mImpl->getAllocation()->map(
- crop,
- { C2MemoryUsage::CPU_READ, writable ? C2MemoryUsage::CPU_WRITE : 0 },
- nullptr,
- &mLayout,
- mData);
- if (mError != C2_OK) {
- memset(&mLayout, 0, sizeof(mLayout));
- memset(mData, 0, sizeof(mData));
- memset(mOffsetData, 0, sizeof(mData));
- } else {
- // TODO: validate plane layout and
- // adjust data pointers to the crop region's top left corner.
- // fail if it is not on a subsampling boundary
- for (size_t planeIx = 0; planeIx < mLayout.numPlanes; ++planeIx) {
- const uint32_t colSampling = mLayout.planes[planeIx].colSampling;
- const uint32_t rowSampling = mLayout.planes[planeIx].rowSampling;
- if (crop.left % colSampling || crop.right() % colSampling
- || crop.top % rowSampling || crop.bottom() % rowSampling) {
- // cannot calculate data pointer
- mImpl->getAllocation()->unmap(mData, crop, nullptr);
- memset(&mLayout, 0, sizeof(mLayout));
- memset(mData, 0, sizeof(mData));
- memset(mOffsetData, 0, sizeof(mData));
- mError = C2_BAD_VALUE;
- return;
- }
- mOffsetData[planeIx] =
- mData[planeIx] + (ssize_t)crop.left * mLayout.planes[planeIx].colInc
- + (ssize_t)crop.top * mLayout.planes[planeIx].rowInc;
- }
- }
- }
-
- explicit Mapped(c2_status_t error)
- : mImpl(nullptr), mWritable(false), mError(error) {
- // CHECK(error != C2_OK);
- memset(&mLayout, 0, sizeof(mLayout));
- memset(mData, 0, sizeof(mData));
- memset(mOffsetData, 0, sizeof(mData));
- }
-
- public:
- ~Mapped() {
- if (mData[0] != nullptr) {
- mImpl->getAllocation()->unmap(mData, mImpl->crop(), nullptr);
- }
- }
-
- /** returns mapping status */
- c2_status_t error() const { return mError; }
-
- /** returns data pointer */
- uint8_t *const *data() const { return mOffsetData; }
-
- /** returns the plane layout */
- C2PlanarLayout layout() const { return mLayout; }
-
- /** returns whether the mapping is writable */
- bool writable() const { return mWritable; }
-
- private:
- const std::shared_ptr<_C2Block2DImpl> mImpl;
- bool mWritable;
- c2_status_t mError;
- uint8_t *mData[C2PlanarLayout::MAX_NUM_PLANES];
- uint8_t *mOffsetData[C2PlanarLayout::MAX_NUM_PLANES];
- C2PlanarLayout mLayout;
- };
-
- /**
- * Maps the allotted region.
- *
- * If already mapped and it is currently in use, returns the existing mapping.
- * If fence is provided, an acquire fence is stored there.
- */
- std::shared_ptr<Mapped> map(bool writable, C2Fence *fence) {
- std::lock_guard<std::mutex> lock(mMappedLock);
- std::shared_ptr<Mapped> existing = mMapped.lock();
- if (!existing) {
- existing = std::shared_ptr<Mapped>(new Mapped(shared_from_this(), writable, fence));
- mMapped = existing;
- } else {
- // if we mapped the region read-only, we cannot remap it read-write
- if (writable && !existing->writable()) {
- existing = std::shared_ptr<Mapped>(new Mapped(C2_CANNOT_DO));
- }
- if (fence != nullptr) {
- *fence = C2Fence();
- }
- }
- return existing;
- }
-
-private:
- std::weak_ptr<Mapped> mMapped;
- std::mutex mMappedLock;
-};
-
-class C2_HIDE _C2MappedBlock2DImpl : public _C2Block2DImpl {
-public:
- _C2MappedBlock2DImpl(const _C2Block2DImpl &impl,
- std::shared_ptr<_C2MappingBlock2DImpl::Mapped> mapping)
- : _C2Block2DImpl(impl), mMapping(mapping) {
- }
-
- virtual ~_C2MappedBlock2DImpl() override = default;
-
- std::shared_ptr<_C2MappingBlock2DImpl::Mapped> mapping() const { return mMapping; }
-
-private:
- std::shared_ptr<_C2MappingBlock2DImpl::Mapped> mMapping;
-};
-
-/**
- * Block implementation.
- */
-class C2Block2D::Impl : public _C2MappingBlock2DImpl {
-public:
- using _C2MappingBlock2DImpl::_C2MappingBlock2DImpl;
- virtual ~Impl() override = default;
-};
-
-const C2Handle *C2Block2D::handle() const {
- return mImpl->handle();
-}
-
-C2Allocator::id_t C2Block2D::getAllocatorId() const {
- return mImpl->getAllocatorId();
-}
-
-C2Block2D::C2Block2D(std::shared_ptr<Impl> impl, const _C2PlanarSectionAspect §ion)
- // always clamp subsection to parent (impl) crop for safety
- : _C2PlanarSectionAspect(impl.get(), section.crop()), mImpl(impl) {
-}
-
-/**
- * Graphic view implementation.
- *
- * range of Impl is the mapped range of the underlying allocation. range of View is the current
- * crop.
- */
-class C2GraphicView::Impl : public _C2MappedBlock2DImpl {
-public:
- using _C2MappedBlock2DImpl::_C2MappedBlock2DImpl;
- virtual ~Impl() override = default;
-};
-
-C2GraphicView::C2GraphicView(std::shared_ptr<Impl> impl, const _C2PlanarSectionAspect §ion)
- : _C2EditablePlanarSectionAspect(impl.get(), section.crop()), mImpl(impl) {
-}
-
-const uint8_t *const *C2GraphicView::data() const {
- return mImpl->mapping()->data();
-}
-
-uint8_t *const *C2GraphicView::data() {
- return mImpl->mapping()->data();
-}
-
-const C2PlanarLayout C2GraphicView::layout() const {
- return mImpl->mapping()->layout();
-}
-
-const C2GraphicView C2GraphicView::subView(const C2Rect &rect) const {
- return C2GraphicView(mImpl, C2PlanarSection(*mImpl, rect));
-}
-
-C2GraphicView C2GraphicView::subView(const C2Rect &rect) {
- return C2GraphicView(mImpl, C2PlanarSection(*mImpl, rect));
-}
-
-c2_status_t C2GraphicView::error() const {
- return mImpl->mapping()->error();
-}
-
-/**
- * Const graphic block implementation.
- */
-C2ConstGraphicBlock::C2ConstGraphicBlock(
- std::shared_ptr<Impl> impl, const _C2PlanarSectionAspect §ion, C2Fence fence)
- : C2Block2D(impl, section), mFence(fence) { }
-
-C2Acquirable<const C2GraphicView> C2ConstGraphicBlock::map() const {
- C2Fence fence;
- std::shared_ptr<_C2MappingBlock2DImpl::Mapped> mapping =
- mImpl->map(false /* writable */, &fence);
- std::shared_ptr<GraphicViewBuddy::Impl> gvi =
- std::shared_ptr<GraphicViewBuddy::Impl>(new GraphicViewBuddy::Impl(*mImpl, mapping));
- return AcquirableConstGraphicViewBuddy(
- mapping->error(), fence, GraphicViewBuddy(gvi, C2PlanarSection(*mImpl, crop())));
-}
-
-C2ConstGraphicBlock C2ConstGraphicBlock::subBlock(const C2Rect &rect) const {
- return C2ConstGraphicBlock(mImpl, C2PlanarSection(*mImpl, crop().intersect(rect)), mFence);
-}
-
-/**
- * Graphic block implementation.
- */
-C2GraphicBlock::C2GraphicBlock(
- std::shared_ptr<Impl> impl, const _C2PlanarSectionAspect §ion)
- : C2Block2D(impl, section) { }
-
-C2Acquirable<C2GraphicView> C2GraphicBlock::map() {
- C2Fence fence;
- std::shared_ptr<_C2MappingBlock2DImpl::Mapped> mapping =
- mImpl->map(true /* writable */, &fence);
- std::shared_ptr<GraphicViewBuddy::Impl> gvi =
- std::shared_ptr<GraphicViewBuddy::Impl>(new GraphicViewBuddy::Impl(*mImpl, mapping));
- return AcquirableGraphicViewBuddy(
- mapping->error(), fence, GraphicViewBuddy(gvi, C2PlanarSection(*mImpl, crop())));
-}
-
-C2ConstGraphicBlock C2GraphicBlock::share(const C2Rect &crop, C2Fence fence) {
- return ConstGraphicBlockBuddy(mImpl, C2PlanarSection(*mImpl, crop), fence);
-}
-
-/**
- * Basic block pool implementations.
- */
-C2BasicGraphicBlockPool::C2BasicGraphicBlockPool(
- const std::shared_ptr<C2Allocator> &allocator)
- : mAllocator(allocator) {}
-
-c2_status_t C2BasicGraphicBlockPool::fetchGraphicBlock(
- uint32_t width,
- uint32_t height,
- uint32_t format,
- C2MemoryUsage usage,
- std::shared_ptr<C2GraphicBlock> *block /* nonnull */) {
- block->reset();
-
- std::shared_ptr<C2GraphicAllocation> alloc;
- c2_status_t err = mAllocator->newGraphicAllocation(width, height, format, usage, &alloc);
- if (err != C2_OK) {
- return err;
- }
-
- *block = _C2BlockFactory::CreateGraphicBlock(alloc);
-
- return C2_OK;
-}
-
-std::shared_ptr<C2GraphicBlock> _C2BlockFactory::CreateGraphicBlock(
- const std::shared_ptr<C2GraphicAllocation> &alloc,
- const std::shared_ptr<_C2BlockPoolData> &data, const C2Rect &allottedCrop) {
- std::shared_ptr<C2Block2D::Impl> impl =
- std::make_shared<C2Block2D::Impl>(alloc, data, allottedCrop);
- return std::shared_ptr<C2GraphicBlock>(new C2GraphicBlock(impl, *impl));
-}
-
-std::shared_ptr<_C2BlockPoolData> _C2BlockFactory::GetGraphicBlockPoolData(
- const C2Block2D &block) {
- if (block.mImpl) {
- return block.mImpl->poolData();
- }
- return nullptr;
-}
-
-std::shared_ptr<C2GraphicBlock> _C2BlockFactory::CreateGraphicBlock(
- const C2Handle *cHandle,
- const std::shared_ptr<BufferPoolData> &data) {
- // TODO: get proper allocator? and mutex?
- static std::unique_ptr<C2AllocatorGralloc> sAllocator = std::make_unique<C2AllocatorGralloc>(0);
-
- std::shared_ptr<C2GraphicAllocation> alloc;
- if (C2AllocatorGralloc::isValid(cHandle)) {
- native_handle_t *handle = native_handle_clone(cHandle);
- if (handle) {
- c2_status_t err = sAllocator->priorGraphicAllocation(handle, &alloc);
- const std::shared_ptr<C2PooledBlockPoolData> poolData =
- std::make_shared<C2PooledBlockPoolData>(data);
- if (err == C2_OK && poolData) {
- // TODO: config setup?
- std::shared_ptr<C2GraphicBlock> block =
- _C2BlockFactory::CreateGraphicBlock(alloc, poolData);
- return block;
- }
- }
- }
- return nullptr;
-};
-
-
-/* ========================================== BUFFER ========================================= */
-
-class C2BufferData::Impl {
-public:
- explicit Impl(const std::vector<C2ConstLinearBlock> &blocks)
- : mType(blocks.size() == 1 ? LINEAR : LINEAR_CHUNKS),
- mLinearBlocks(blocks) {
- }
-
- explicit Impl(const std::vector<C2ConstGraphicBlock> &blocks)
- : mType(blocks.size() == 1 ? GRAPHIC : GRAPHIC_CHUNKS),
- mGraphicBlocks(blocks) {
- }
-
- type_t type() const { return mType; }
- const std::vector<C2ConstLinearBlock> &linearBlocks() const { return mLinearBlocks; }
- const std::vector<C2ConstGraphicBlock> &graphicBlocks() const { return mGraphicBlocks; }
-
-private:
- type_t mType;
- std::vector<C2ConstLinearBlock> mLinearBlocks;
- std::vector<C2ConstGraphicBlock> mGraphicBlocks;
-};
-
-C2BufferData::C2BufferData(const std::vector<C2ConstLinearBlock> &blocks) : mImpl(new Impl(blocks)) {}
-C2BufferData::C2BufferData(const std::vector<C2ConstGraphicBlock> &blocks) : mImpl(new Impl(blocks)) {}
-
-C2BufferData::type_t C2BufferData::type() const { return mImpl->type(); }
-
-const std::vector<C2ConstLinearBlock> C2BufferData::linearBlocks() const {
- return mImpl->linearBlocks();
-}
-
-const std::vector<C2ConstGraphicBlock> C2BufferData::graphicBlocks() const {
- return mImpl->graphicBlocks();
-}
-
-class C2Buffer::Impl {
-public:
- Impl(C2Buffer *thiz, const std::vector<C2ConstLinearBlock> &blocks)
- : mThis(thiz), mData(blocks) {}
- Impl(C2Buffer *thiz, const std::vector<C2ConstGraphicBlock> &blocks)
- : mThis(thiz), mData(blocks) {}
-
- ~Impl() {
- for (const auto &pair : mNotify) {
- pair.first(mThis, pair.second);
- }
- }
-
- const C2BufferData &data() const { return mData; }
-
- c2_status_t registerOnDestroyNotify(OnDestroyNotify onDestroyNotify, void *arg) {
- auto it = std::find_if(
- mNotify.begin(), mNotify.end(),
- [onDestroyNotify, arg] (const auto &pair) {
- return pair.first == onDestroyNotify && pair.second == arg;
- });
- if (it != mNotify.end()) {
- return C2_DUPLICATE;
- }
- mNotify.emplace_back(onDestroyNotify, arg);
- return C2_OK;
- }
-
- c2_status_t unregisterOnDestroyNotify(OnDestroyNotify onDestroyNotify, void *arg) {
- auto it = std::find_if(
- mNotify.begin(), mNotify.end(),
- [onDestroyNotify, arg] (const auto &pair) {
- return pair.first == onDestroyNotify && pair.second == arg;
- });
- if (it == mNotify.end()) {
- return C2_NOT_FOUND;
- }
- mNotify.erase(it);
- return C2_OK;
- }
-
- std::vector<std::shared_ptr<const C2Info>> info() const {
- std::vector<std::shared_ptr<const C2Info>> result(mInfos.size());
- std::transform(
- mInfos.begin(), mInfos.end(), result.begin(),
- [] (const auto &elem) { return elem.second; });
- return result;
- }
-
- c2_status_t setInfo(const std::shared_ptr<C2Info> &info) {
- // To "update" you need to erase the existing one if any, and then insert.
- (void) mInfos.erase(info->coreIndex());
- (void) mInfos.insert({ info->coreIndex(), info });
- return C2_OK;
- }
-
- bool hasInfo(C2Param::Type index) const {
- return mInfos.count(index.coreIndex()) > 0;
- }
-
- std::shared_ptr<const C2Info> getInfo(C2Param::Type index) const {
- auto it = mInfos.find(index.coreIndex());
- if (it == mInfos.end()) {
- return nullptr;
- }
- return std::const_pointer_cast<const C2Info>(it->second);
- }
-
- std::shared_ptr<C2Info> removeInfo(C2Param::Type index) {
- auto it = mInfos.find(index.coreIndex());
- if (it == mInfos.end()) {
- return nullptr;
- }
- std::shared_ptr<C2Info> ret = it->second;
- (void) mInfos.erase(it);
- return ret;
- }
-
-private:
- C2Buffer * const mThis;
- BufferDataBuddy mData;
- std::map<C2Param::CoreIndex, std::shared_ptr<C2Info>> mInfos;
- std::list<std::pair<OnDestroyNotify, void *>> mNotify;
-};
-
-C2Buffer::C2Buffer(const std::vector<C2ConstLinearBlock> &blocks)
- : mImpl(new Impl(this, blocks)) {}
-
-C2Buffer::C2Buffer(const std::vector<C2ConstGraphicBlock> &blocks)
- : mImpl(new Impl(this, blocks)) {}
-
-const C2BufferData C2Buffer::data() const { return mImpl->data(); }
-
-c2_status_t C2Buffer::registerOnDestroyNotify(OnDestroyNotify onDestroyNotify, void *arg) {
- return mImpl->registerOnDestroyNotify(onDestroyNotify, arg);
-}
-
-c2_status_t C2Buffer::unregisterOnDestroyNotify(OnDestroyNotify onDestroyNotify, void *arg) {
- return mImpl->unregisterOnDestroyNotify(onDestroyNotify, arg);
-}
-
-const std::vector<std::shared_ptr<const C2Info>> C2Buffer::info() const {
- return mImpl->info();
-}
-
-c2_status_t C2Buffer::setInfo(const std::shared_ptr<C2Info> &info) {
- return mImpl->setInfo(info);
-}
-
-bool C2Buffer::hasInfo(C2Param::Type index) const {
- return mImpl->hasInfo(index);
-}
-
-std::shared_ptr<const C2Info> C2Buffer::getInfo(C2Param::Type index) const {
- return mImpl->getInfo(index);
-}
-
-std::shared_ptr<C2Info> C2Buffer::removeInfo(C2Param::Type index) {
- return mImpl->removeInfo(index);
-}
-
-// static
-std::shared_ptr<C2Buffer> C2Buffer::CreateLinearBuffer(const C2ConstLinearBlock &block) {
- return std::shared_ptr<C2Buffer>(new C2Buffer({ block }));
-}
-
-// static
-std::shared_ptr<C2Buffer> C2Buffer::CreateGraphicBuffer(const C2ConstGraphicBlock &block) {
- return std::shared_ptr<C2Buffer>(new C2Buffer({ block }));
-}
-
diff --git a/codec2/vndk/C2Config.cpp b/codec2/vndk/C2Config.cpp
deleted file mode 100644
index da12903..0000000
--- a/codec2/vndk/C2Config.cpp
+++ /dev/null
@@ -1,231 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2Config"
-#include <utils/Log.h>
-
-/**
- * Define and initialize global config field descriptors in this cpp file
- */
-#define __C2_GENERATE_GLOBAL_VARS__
-#include <C2Config.h>
-
-DEFINE_C2_ENUM_VALUE_CUSTOM_HELPER(C2Config::profile_t, ({
- { "unused", C2Config::PROFILE_UNUSED },
- { "aac-lc", C2Config::PROFILE_AAC_LC },
- { "aac-main", C2Config::PROFILE_AAC_MAIN },
- { "aac-ssr", C2Config::PROFILE_AAC_SSR },
- { "aac-ltp", C2Config::PROFILE_AAC_LTP },
- { "aac-he", C2Config::PROFILE_AAC_HE },
- { "aac-scalable", C2Config::PROFILE_AAC_SCALABLE },
- { "aac-er-lc", C2Config::PROFILE_AAC_ER_LC },
- { "aac-er-scalable", C2Config::PROFILE_AAC_ER_SCALABLE },
- { "aac-ld", C2Config::PROFILE_AAC_LD },
- { "aac-he-ps", C2Config::PROFILE_AAC_HE_PS },
- { "aac-eld", C2Config::PROFILE_AAC_ELD },
- { "aac-xhe", C2Config::PROFILE_AAC_XHE },
- { "mp2v-simple", C2Config::PROFILE_MP2V_SIMPLE },
- { "mp2v-main", C2Config::PROFILE_MP2V_MAIN },
- { "mp2v-snr-scalable", C2Config::PROFILE_MP2V_SNR_SCALABLE },
- { "mp2v-spatially-scalable", C2Config::PROFILE_MP2V_SPATIALLY_SCALABLE },
- { "mp2v-high", C2Config::PROFILE_MP2V_HIGH },
- { "mp2v-422", C2Config::PROFILE_MP2V_422 },
- { "mp2v-multiview", C2Config::PROFILE_MP2V_MULTIVIEW },
- { "h263-baseline", C2Config::PROFILE_H263_BASELINE },
- { "h263-h320", C2Config::PROFILE_H263_H320 },
- { "h263-v1bc", C2Config::PROFILE_H263_V1BC },
- { "h263-iswv2", C2Config::PROFILE_H263_ISWV2 },
- { "h263-iswv3", C2Config::PROFILE_H263_ISWV3 },
- { "h263-high-compression", C2Config::PROFILE_H263_HIGH_COMPRESSION },
- { "h263-internet", C2Config::PROFILE_H263_INTERNET },
- { "h263-interlace", C2Config::PROFILE_H263_INTERLACE },
- { "h263-high-latency", C2Config::PROFILE_H263_HIGH_LATENCY },
- { "mp4v-simple", C2Config::PROFILE_MP4V_SIMPLE },
- { "mp4v-simple-scalable", C2Config::PROFILE_MP4V_SIMPLE_SCALABLE },
- { "mp4v-core", C2Config::PROFILE_MP4V_CORE },
- { "mp4v-main", C2Config::PROFILE_MP4V_MAIN },
- { "mp4v-nbit", C2Config::PROFILE_MP4V_NBIT },
- { "mp4v-arts", C2Config::PROFILE_MP4V_ARTS },
- { "mp4v-core-scalable", C2Config::PROFILE_MP4V_CORE_SCALABLE },
- { "mp4v-ace", C2Config::PROFILE_MP4V_ACE },
- { "mp4v-advanced-core", C2Config::PROFILE_MP4V_ADVANCED_CORE },
- { "mp4v-simple-studio", C2Config::PROFILE_MP4V_SIMPLE_STUDIO },
- { "mp4v-core-studio", C2Config::PROFILE_MP4V_CORE_STUDIO },
- { "mp4v-advanced-simple", C2Config::PROFILE_MP4V_ADVANCED_SIMPLE },
- { "mp4v-fgs", C2Config::PROFILE_MP4V_FGS },
- { "avc-baseline", C2Config::PROFILE_AVC_BASELINE },
- { "avc-constrained-baseline", C2Config::PROFILE_AVC_CONSTRAINED_BASELINE },
- { "avc-main", C2Config::PROFILE_AVC_MAIN },
- { "avc-extended", C2Config::PROFILE_AVC_EXTENDED },
- { "avc-high", C2Config::PROFILE_AVC_HIGH },
- { "avc-progressive-high", C2Config::PROFILE_AVC_PROGRESSIVE_HIGH },
- { "avc-constrained-high", C2Config::PROFILE_AVC_CONSTRAINED_HIGH },
- { "avc-high-10", C2Config::PROFILE_AVC_HIGH_10 },
- { "avc-progressive-high-10", C2Config::PROFILE_AVC_PROGRESSIVE_HIGH_10 },
- { "avc-high-422", C2Config::PROFILE_AVC_HIGH_422 },
- { "avc-high-444-predictive", C2Config::PROFILE_AVC_HIGH_444_PREDICTIVE },
- { "avc-high-10-intra", C2Config::PROFILE_AVC_HIGH_10_INTRA },
- { "avc-high-422-intra", C2Config::PROFILE_AVC_HIGH_422_INTRA },
- { "avc-high-444-intra", C2Config::PROFILE_AVC_HIGH_444_INTRA },
- { "avc-cavlc-444-intra", C2Config::PROFILE_AVC_CAVLC_444_INTRA },
- { "avc-scalable-baseline", C2Config::PROFILE_AVC_SCALABLE_BASELINE },
- { "avc-scalable-constrained-baseline", C2Config::PROFILE_AVC_SCALABLE_CONSTRAINED_BASELINE },
- { "avc-scalable-high", C2Config::PROFILE_AVC_SCALABLE_HIGH },
- { "avc-scalable-constrained-high", C2Config::PROFILE_AVC_SCALABLE_CONSTRAINED_HIGH },
- { "avc-scalable-high-intra", C2Config::PROFILE_AVC_SCALABLE_HIGH_INTRA },
- { "avc-multiview-high", C2Config::PROFILE_AVC_MULTIVIEW_HIGH },
- { "avc-stereo-high", C2Config::PROFILE_AVC_STEREO_HIGH },
- { "avc-mfc-high", C2Config::PROFILE_AVC_MFC_HIGH },
- { "avc-multiview-depth-high", C2Config::PROFILE_AVC_MULTIVIEW_DEPTH_HIGH },
- { "avc-mfc-depth-high", C2Config::PROFILE_AVC_MFC_DEPTH_HIGH },
- { "avc-enhanced-multiview-depth-high", C2Config::PROFILE_AVC_ENHANCED_MULTIVIEW_DEPTH_HIGH },
- { "hevc-main", C2Config::PROFILE_HEVC_MAIN },
- { "hevc-main-10", C2Config::PROFILE_HEVC_MAIN_10 },
- { "hevc-main-still", C2Config::PROFILE_HEVC_MAIN_STILL },
- { "hevc-mono", C2Config::PROFILE_HEVC_MONO },
- { "hevc-mono-12", C2Config::PROFILE_HEVC_MONO_12 },
- { "hevc-mono-16", C2Config::PROFILE_HEVC_MONO_16 },
- { "hevc-main-12", C2Config::PROFILE_HEVC_MAIN_12 },
- { "hevc-main-422-10", C2Config::PROFILE_HEVC_MAIN_422_10 },
- { "hevc-main-422-12", C2Config::PROFILE_HEVC_MAIN_422_12 },
- { "hevc-main-444", C2Config::PROFILE_HEVC_MAIN_444 },
- { "hevc-main-444-10", C2Config::PROFILE_HEVC_MAIN_444_10 },
- { "hevc-main-444-12", C2Config::PROFILE_HEVC_MAIN_444_12 },
- { "hevc-main-intra", C2Config::PROFILE_HEVC_MAIN_INTRA },
- { "hevc-main-10-intra", C2Config::PROFILE_HEVC_MAIN_10_INTRA },
- { "hevc-main-12-intra", C2Config::PROFILE_HEVC_MAIN_12_INTRA },
- { "hevc-main-422-10-intra", C2Config::PROFILE_HEVC_MAIN_422_10_INTRA },
- { "hevc-main-422-12-intra", C2Config::PROFILE_HEVC_MAIN_422_12_INTRA },
- { "hevc-main-444-intra", C2Config::PROFILE_HEVC_MAIN_444_INTRA },
- { "hevc-main-444-10-intra", C2Config::PROFILE_HEVC_MAIN_444_10_INTRA },
- { "hevc-main-444-12-intra", C2Config::PROFILE_HEVC_MAIN_444_12_INTRA },
- { "hevc-main-444-16-intra", C2Config::PROFILE_HEVC_MAIN_444_16_INTRA },
- { "hevc-main-444-still", C2Config::PROFILE_HEVC_MAIN_444_STILL },
- { "hevc-main-444-16-still", C2Config::PROFILE_HEVC_MAIN_444_16_STILL },
- { "hevc-high-444", C2Config::PROFILE_HEVC_HIGH_444 },
- { "hevc-high-444-10", C2Config::PROFILE_HEVC_HIGH_444_10 },
- { "hevc-high-444-14", C2Config::PROFILE_HEVC_HIGH_444_14 },
- { "hevc-high-444-16-intra", C2Config::PROFILE_HEVC_HIGH_444_16_INTRA },
- { "hevc-sx-main", C2Config::PROFILE_HEVC_SX_MAIN },
- { "hevc-sx-main-10", C2Config::PROFILE_HEVC_SX_MAIN_10 },
- { "hevc-sx-main-444", C2Config::PROFILE_HEVC_SX_MAIN_444 },
- { "hevc-sx-main-444-10", C2Config::PROFILE_HEVC_SX_MAIN_444_10 },
- { "hevc-sx-high-444", C2Config::PROFILE_HEVC_SX_HIGH_444 },
- { "hevc-sx-high-444-10", C2Config::PROFILE_HEVC_SX_HIGH_444_10 },
- { "hevc-sx-high-444-14", C2Config::PROFILE_HEVC_SX_HIGH_444_14 },
- { "hevc-multiview-main", C2Config::PROFILE_HEVC_MULTIVIEW_MAIN },
- { "hevc-scalable-main", C2Config::PROFILE_HEVC_SCALABLE_MAIN },
- { "hevc-scalable-main-10", C2Config::PROFILE_HEVC_SCALABLE_MAIN_10 },
- { "hevc-scalable-mono", C2Config::PROFILE_HEVC_SCALABLE_MONO },
- { "hevc-scalable-mono-12", C2Config::PROFILE_HEVC_SCALABLE_MONO_12 },
- { "hevc-scalable-mono-16", C2Config::PROFILE_HEVC_SCALABLE_MONO_16 },
- { "hevc-scalable-main-444", C2Config::PROFILE_HEVC_SCALABLE_MAIN_444 },
- { "hevc-3d-main", C2Config::PROFILE_HEVC_3D_MAIN },
- { "vp9-0", C2Config::PROFILE_VP9_0 },
- { "vp9-1", C2Config::PROFILE_VP9_1 },
- { "vp9-2", C2Config::PROFILE_VP9_2 },
- { "vp9-3", C2Config::PROFILE_VP9_3 },
-}))
-
-DEFINE_C2_ENUM_VALUE_CUSTOM_HELPER(C2Config::level_t, ({
- { "unused", C2Config::LEVEL_UNUSED },
- { "mp2v-low", C2Config::LEVEL_MP2V_LOW },
- { "mp2v-main", C2Config::LEVEL_MP2V_MAIN },
- { "mp2v-high-1440", C2Config::LEVEL_MP2V_HIGH_1440 },
- { "mp2v-high", C2Config::LEVEL_MP2V_HIGH },
- { "mp2v-highp", C2Config::LEVEL_MP2V_HIGHP },
- { "h263-10", C2Config::LEVEL_H263_10 },
- { "h263-20", C2Config::LEVEL_H263_20 },
- { "h263-30", C2Config::LEVEL_H263_30 },
- { "h263-40", C2Config::LEVEL_H263_40 },
- { "h263-45", C2Config::LEVEL_H263_45 },
- { "h263-50", C2Config::LEVEL_H263_50 },
- { "h263-60", C2Config::LEVEL_H263_60 },
- { "h263-70", C2Config::LEVEL_H263_70 },
- { "mp4v-0", C2Config::LEVEL_MP4V_0 },
- { "mp4v-0b", C2Config::LEVEL_MP4V_0B },
- { "mp4v-1", C2Config::LEVEL_MP4V_1 },
- { "mp4v-2", C2Config::LEVEL_MP4V_2 },
- { "mp4v-3", C2Config::LEVEL_MP4V_3 },
- { "mp4v-3b", C2Config::LEVEL_MP4V_3B },
- { "mp4v-4", C2Config::LEVEL_MP4V_4 },
- { "mp4v-4a", C2Config::LEVEL_MP4V_4A },
- { "mp4v-5", C2Config::LEVEL_MP4V_5 },
- { "mp4v-6", C2Config::LEVEL_MP4V_6 },
- { "avc-1", C2Config::LEVEL_AVC_1 },
- { "avc-1b", C2Config::LEVEL_AVC_1B },
- { "avc-1.1", C2Config::LEVEL_AVC_1_1 },
- { "avc-1.2", C2Config::LEVEL_AVC_1_2 },
- { "avc-1.3", C2Config::LEVEL_AVC_1_3 },
- { "avc-2", C2Config::LEVEL_AVC_2 },
- { "avc-2.1", C2Config::LEVEL_AVC_2_1 },
- { "avc-2.2", C2Config::LEVEL_AVC_2_2 },
- { "avc-3", C2Config::LEVEL_AVC_3 },
- { "avc-3.1", C2Config::LEVEL_AVC_3_1 },
- { "avc-3.2", C2Config::LEVEL_AVC_3_2 },
- { "avc-4", C2Config::LEVEL_AVC_4 },
- { "avc-4.1", C2Config::LEVEL_AVC_4_1 },
- { "avc-4.2", C2Config::LEVEL_AVC_4_2 },
- { "avc-5", C2Config::LEVEL_AVC_5 },
- { "avc-5.1", C2Config::LEVEL_AVC_5_1 },
- { "avc-5.2", C2Config::LEVEL_AVC_5_2 },
- { "hevc-main-1", C2Config::LEVEL_HEVC_MAIN_1 },
- { "hevc-main-2", C2Config::LEVEL_HEVC_MAIN_2 },
- { "hevc-main-2.1", C2Config::LEVEL_HEVC_MAIN_2_1 },
- { "hevc-main-3", C2Config::LEVEL_HEVC_MAIN_3 },
- { "hevc-main-3.1", C2Config::LEVEL_HEVC_MAIN_3_1 },
- { "hevc-main-4", C2Config::LEVEL_HEVC_MAIN_4 },
- { "hevc-main-4.1", C2Config::LEVEL_HEVC_MAIN_4_1 },
- { "hevc-main-5", C2Config::LEVEL_HEVC_MAIN_5 },
- { "hevc-main-5.1", C2Config::LEVEL_HEVC_MAIN_5_1 },
- { "hevc-main-5.2", C2Config::LEVEL_HEVC_MAIN_5_2 },
- { "hevc-main-6", C2Config::LEVEL_HEVC_MAIN_6 },
- { "hevc-main-6.1", C2Config::LEVEL_HEVC_MAIN_6_1 },
- { "hevc-main-6.2", C2Config::LEVEL_HEVC_MAIN_6_2 },
- { "hevc-high-4", C2Config::LEVEL_HEVC_HIGH_4 },
- { "hevc-high-4.1", C2Config::LEVEL_HEVC_HIGH_4_1 },
- { "hevc-high-5", C2Config::LEVEL_HEVC_HIGH_5 },
- { "hevc-high-5.1", C2Config::LEVEL_HEVC_HIGH_5_1 },
- { "hevc-high-5.2", C2Config::LEVEL_HEVC_HIGH_5_2 },
- { "hevc-high-6", C2Config::LEVEL_HEVC_HIGH_6 },
- { "hevc-high-6.1", C2Config::LEVEL_HEVC_HIGH_6_1 },
- { "hevc-high-6.2", C2Config::LEVEL_HEVC_HIGH_6_2 },
- { "vp9-1", C2Config::LEVEL_VP9_1 },
- { "vp9-1.1", C2Config::LEVEL_VP9_1_1 },
- { "vp9-2", C2Config::LEVEL_VP9_2 },
- { "vp9-2.1", C2Config::LEVEL_VP9_2_1 },
- { "vp9-3", C2Config::LEVEL_VP9_3 },
- { "vp9-3.1", C2Config::LEVEL_VP9_3_1 },
- { "vp9-4", C2Config::LEVEL_VP9_4 },
- { "vp9-4.1", C2Config::LEVEL_VP9_4_1 },
- { "vp9-5", C2Config::LEVEL_VP9_5 },
- { "vp9-5.1", C2Config::LEVEL_VP9_5_1 },
- { "vp9-5.2", C2Config::LEVEL_VP9_5_2 },
- { "vp9-6", C2Config::LEVEL_VP9_6 },
- { "vp9-6.1", C2Config::LEVEL_VP9_6_1 },
- { "vp9-6.2", C2Config::LEVEL_VP9_6_2 },
-}))
-
-DEFINE_C2_ENUM_VALUE_CUSTOM_HELPER(C2BufferData::type_t, ({
- { "invalid", C2BufferData::INVALID },
- { "linear", C2BufferData::LINEAR },
- { "linear-chunks", C2BufferData::LINEAR_CHUNKS },
- { "graphic", C2BufferData::GRAPHIC },
- { "graphic-chunks", C2BufferData::GRAPHIC_CHUNKS },
-}))
-
-
diff --git a/codec2/vndk/C2PlatformStorePluginLoader.cpp b/codec2/vndk/C2PlatformStorePluginLoader.cpp
deleted file mode 100644
index 7a460f4..0000000
--- a/codec2/vndk/C2PlatformStorePluginLoader.cpp
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * Copyright 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2PlatformStorePluginLoader"
-
-#include <dlfcn.h>
-
-#include <utils/Log.h>
-
-#include "C2PlatformStorePluginLoader.h"
-
-/* static */ android::Mutex C2PlatformStorePluginLoader::sMutex;
-/* static */ std::unique_ptr<C2PlatformStorePluginLoader> C2PlatformStorePluginLoader::sInstance;
-
-C2PlatformStorePluginLoader::C2PlatformStorePluginLoader(const char *libPath)
- : mCreateBlockPool(nullptr) {
- mLibHandle = dlopen(libPath, RTLD_NOW | RTLD_NODELETE);
- if (mLibHandle == nullptr) {
- ALOGD("Failed to load library: %s (%s)", libPath, dlerror());
- return;
- }
- mCreateBlockPool = (CreateBlockPoolFunc)dlsym(mLibHandle, "CreateBlockPool");
- if (mCreateBlockPool == nullptr) {
- ALOGD("Failed to find symbol: CreateBlockPool (%s)", dlerror());
- }
- mCreateAllocator = (CreateAllocatorFunc)dlsym(mLibHandle, "CreateAllocator");
- if (mCreateAllocator == nullptr) {
- ALOGD("Failed to find symbol: CreateAllocator (%s)", dlerror());
- }
-}
-
-C2PlatformStorePluginLoader::~C2PlatformStorePluginLoader() {
- if (mLibHandle != nullptr) {
- ALOGV("Closing handle");
- dlclose(mLibHandle);
- }
-}
-
-c2_status_t C2PlatformStorePluginLoader::createBlockPool(
- ::C2Allocator::id_t allocatorId, ::C2BlockPool::local_id_t blockPoolId,
- std::shared_ptr<C2BlockPool>* pool) {
- if (mCreateBlockPool == nullptr) {
- ALOGD("Handle or CreateBlockPool symbol is null");
- return C2_NOT_FOUND;
- }
-
- std::shared_ptr<::C2BlockPool> ptr(mCreateBlockPool(allocatorId, blockPoolId));
- if (ptr) {
- *pool = ptr;
- return C2_OK;
- }
- ALOGD("Failed to CreateBlockPool by allocator id: %u", allocatorId);
- return C2_BAD_INDEX;
-}
-
-c2_status_t C2PlatformStorePluginLoader::createAllocator(
- ::C2Allocator::id_t allocatorId, std::shared_ptr<C2Allocator>* const allocator) {
- if (mCreateAllocator == nullptr) {
- ALOGD("Handle or CreateAllocator symbol is null");
- return C2_NOT_FOUND;
- }
-
- c2_status_t res = C2_CORRUPTED;
- allocator->reset(mCreateAllocator(allocatorId, &res));
- if (res != C2_OK) {
- ALOGD("Failed to CreateAllocator by id: %u, res: %d", allocatorId, res);
- allocator->reset();
- return res;
- }
- return C2_OK;
-}
-
-// static
-const std::unique_ptr<C2PlatformStorePluginLoader>& C2PlatformStorePluginLoader::GetInstance() {
- android::Mutex::Autolock _l(sMutex);
- if (!sInstance) {
- ALOGV("Loading library");
- sInstance.reset(new C2PlatformStorePluginLoader("libstagefright_ccodec_ext.so"));
- }
- return sInstance;
-}
diff --git a/codec2/vndk/C2Store.cpp b/codec2/vndk/C2Store.cpp
deleted file mode 100644
index 33019ed..0000000
--- a/codec2/vndk/C2Store.cpp
+++ /dev/null
@@ -1,974 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#define LOG_TAG "C2Store"
-#define LOG_NDEBUG 0
-#include <utils/Log.h>
-
-#include <C2AllocatorGralloc.h>
-#include <C2AllocatorIon.h>
-#include <C2BufferPriv.h>
-#include <C2BqBufferPriv.h>
-#include <C2Component.h>
-#include <C2Config.h>
-#include <C2PlatformStorePluginLoader.h>
-#include <C2PlatformSupport.h>
-#include <util/C2InterfaceHelper.h>
-
-#include <dlfcn.h>
-#include <unistd.h> // getpagesize
-
-#include <map>
-#include <memory>
-#include <mutex>
-
-namespace android {
-
-/**
- * Returns the preferred component store in this process to access its interface.
- */
-std::shared_ptr<C2ComponentStore> GetPreferredCodec2ComponentStore();
-
-/**
- * The platform allocator store provides basic allocator-types for the framework based on ion and
- * gralloc. Allocators are not meant to be updatable.
- *
- * \todo Provide allocator based on ashmem
- * \todo Move ion allocation into its HIDL or provide some mapping from memory usage to ion flags
- * \todo Make this allocator store extendable
- */
-class C2PlatformAllocatorStoreImpl : public C2PlatformAllocatorStore {
-public:
- C2PlatformAllocatorStoreImpl();
-
- virtual c2_status_t fetchAllocator(
- id_t id, std::shared_ptr<C2Allocator> *const allocator) override;
-
- virtual std::vector<std::shared_ptr<const C2Allocator::Traits>> listAllocators_nb()
- const override {
- return std::vector<std::shared_ptr<const C2Allocator::Traits>>(); /// \todo
- }
-
- virtual C2String getName() const override {
- return "android.allocator-store";
- }
-
- void setComponentStore(std::shared_ptr<C2ComponentStore> store);
-
- ~C2PlatformAllocatorStoreImpl() override = default;
-
-private:
- /// returns a shared-singleton ion allocator
- std::shared_ptr<C2Allocator> fetchIonAllocator();
-
- /// returns a shared-singleton gralloc allocator
- std::shared_ptr<C2Allocator> fetchGrallocAllocator();
-
- /// returns a shared-singleton bufferqueue supporting gralloc allocator
- std::shared_ptr<C2Allocator> fetchBufferQueueAllocator();
-
- /// component store to use
- std::mutex _mComponentStoreSetLock; // protects the entire updating _mComponentStore and its
- // dependencies
- std::mutex _mComponentStoreReadLock; // must protect only read/write of _mComponentStore
- std::shared_ptr<C2ComponentStore> _mComponentStore;
-};
-
-C2PlatformAllocatorStoreImpl::C2PlatformAllocatorStoreImpl() {
-}
-
-c2_status_t C2PlatformAllocatorStoreImpl::fetchAllocator(
- id_t id, std::shared_ptr<C2Allocator> *const allocator) {
- allocator->reset();
- switch (id) {
- // TODO: should we implement a generic registry for all, and use that?
- case C2PlatformAllocatorStore::ION:
- case C2AllocatorStore::DEFAULT_LINEAR:
- *allocator = fetchIonAllocator();
- break;
-
- case C2PlatformAllocatorStore::GRALLOC:
- case C2AllocatorStore::DEFAULT_GRAPHIC:
- *allocator = fetchGrallocAllocator();
- break;
-
- case C2PlatformAllocatorStore::BUFFERQUEUE:
- *allocator = fetchBufferQueueAllocator();
- break;
-
- default:
- // Try to create allocator from platform store plugins.
- c2_status_t res =
- C2PlatformStorePluginLoader::GetInstance()->createAllocator(id, allocator);
- if (res != C2_OK) {
- return res;
- }
- break;
- }
- if (*allocator == nullptr) {
- return C2_NO_MEMORY;
- }
- return C2_OK;
-}
-
-namespace {
-
-std::mutex gIonAllocatorMutex;
-std::weak_ptr<C2AllocatorIon> gIonAllocator;
-
-void UseComponentStoreForIonAllocator(
- const std::shared_ptr<C2AllocatorIon> allocator,
- std::shared_ptr<C2ComponentStore> store) {
- C2AllocatorIon::UsageMapperFn mapper;
- uint64_t minUsage = 0;
- uint64_t maxUsage = C2MemoryUsage(C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE).expected;
- size_t blockSize = getpagesize();
-
- // query min and max usage as well as block size via supported values
- C2StoreIonUsageInfo usageInfo;
- std::vector<C2FieldSupportedValuesQuery> query = {
- C2FieldSupportedValuesQuery::Possible(C2ParamField::Make(usageInfo, usageInfo.usage)),
- C2FieldSupportedValuesQuery::Possible(C2ParamField::Make(usageInfo, usageInfo.capacity)),
- };
- c2_status_t res = store->querySupportedValues_sm(query);
- if (res == C2_OK) {
- if (query[0].status == C2_OK) {
- const C2FieldSupportedValues &fsv = query[0].values;
- if (fsv.type == C2FieldSupportedValues::FLAGS && !fsv.values.empty()) {
- minUsage = fsv.values[0].u64;
- maxUsage = 0;
- for (C2Value::Primitive v : fsv.values) {
- maxUsage |= v.u64;
- }
- }
- }
- if (query[1].status == C2_OK) {
- const C2FieldSupportedValues &fsv = query[1].values;
- if (fsv.type == C2FieldSupportedValues::RANGE && fsv.range.step.u32 > 0) {
- blockSize = fsv.range.step.u32;
- }
- }
-
- mapper = [store](C2MemoryUsage usage, size_t capacity,
- size_t *align, unsigned *heapMask, unsigned *flags) -> c2_status_t {
- if (capacity > UINT32_MAX) {
- return C2_BAD_VALUE;
- }
- C2StoreIonUsageInfo usageInfo = { usage.expected, capacity };
- std::vector<std::unique_ptr<C2SettingResult>> failures; // TODO: remove
- c2_status_t res = store->config_sm({&usageInfo}, &failures);
- if (res == C2_OK) {
- *align = usageInfo.minAlignment;
- *heapMask = usageInfo.heapMask;
- *flags = usageInfo.allocFlags;
- }
- return res;
- };
- }
-
- allocator->setUsageMapper(mapper, minUsage, maxUsage, blockSize);
-}
-
-}
-
-void C2PlatformAllocatorStoreImpl::setComponentStore(std::shared_ptr<C2ComponentStore> store) {
- // technically this set lock is not needed, but is here for safety in case we add more
- // getter orders
- std::lock_guard<std::mutex> lock(_mComponentStoreSetLock);
- {
- std::lock_guard<std::mutex> lock(_mComponentStoreReadLock);
- _mComponentStore = store;
- }
- std::shared_ptr<C2AllocatorIon> allocator;
- {
- std::lock_guard<std::mutex> lock(gIonAllocatorMutex);
- allocator = gIonAllocator.lock();
- }
- if (allocator) {
- UseComponentStoreForIonAllocator(allocator, store);
- }
-}
-
-std::shared_ptr<C2Allocator> C2PlatformAllocatorStoreImpl::fetchIonAllocator() {
- std::lock_guard<std::mutex> lock(gIonAllocatorMutex);
- std::shared_ptr<C2AllocatorIon> allocator = gIonAllocator.lock();
- if (allocator == nullptr) {
- std::shared_ptr<C2ComponentStore> componentStore;
- {
- std::lock_guard<std::mutex> lock(_mComponentStoreReadLock);
- componentStore = _mComponentStore;
- }
- allocator = std::make_shared<C2AllocatorIon>(C2PlatformAllocatorStore::ION);
- UseComponentStoreForIonAllocator(allocator, componentStore);
- gIonAllocator = allocator;
- }
- return allocator;
-}
-
-std::shared_ptr<C2Allocator> C2PlatformAllocatorStoreImpl::fetchGrallocAllocator() {
- static std::mutex mutex;
- static std::weak_ptr<C2Allocator> grallocAllocator;
- std::lock_guard<std::mutex> lock(mutex);
- std::shared_ptr<C2Allocator> allocator = grallocAllocator.lock();
- if (allocator == nullptr) {
- allocator = std::make_shared<C2AllocatorGralloc>(C2PlatformAllocatorStore::GRALLOC);
- grallocAllocator = allocator;
- }
- return allocator;
-}
-
-std::shared_ptr<C2Allocator> C2PlatformAllocatorStoreImpl::fetchBufferQueueAllocator() {
- static std::mutex mutex;
- static std::weak_ptr<C2Allocator> grallocAllocator;
- std::lock_guard<std::mutex> lock(mutex);
- std::shared_ptr<C2Allocator> allocator = grallocAllocator.lock();
- if (allocator == nullptr) {
- allocator = std::make_shared<C2AllocatorGralloc>(
- C2PlatformAllocatorStore::BUFFERQUEUE, true);
- grallocAllocator = allocator;
- }
- return allocator;
-}
-
-namespace {
- std::mutex gPreferredComponentStoreMutex;
- std::shared_ptr<C2ComponentStore> gPreferredComponentStore;
-
- std::mutex gPlatformAllocatorStoreMutex;
- std::weak_ptr<C2PlatformAllocatorStoreImpl> gPlatformAllocatorStore;
-}
-
-std::shared_ptr<C2AllocatorStore> GetCodec2PlatformAllocatorStore() {
- std::lock_guard<std::mutex> lock(gPlatformAllocatorStoreMutex);
- std::shared_ptr<C2PlatformAllocatorStoreImpl> store = gPlatformAllocatorStore.lock();
- if (store == nullptr) {
- store = std::make_shared<C2PlatformAllocatorStoreImpl>();
- store->setComponentStore(GetPreferredCodec2ComponentStore());
- gPlatformAllocatorStore = store;
- }
- return store;
-}
-
-void SetPreferredCodec2ComponentStore(std::shared_ptr<C2ComponentStore> componentStore) {
- static std::mutex mutex;
- std::lock_guard<std::mutex> lock(mutex); // don't interleve set-s
-
- // update preferred store
- {
- std::lock_guard<std::mutex> lock(gPreferredComponentStoreMutex);
- gPreferredComponentStore = componentStore;
- }
-
- // update platform allocator's store as well if it is alive
- std::shared_ptr<C2PlatformAllocatorStoreImpl> allocatorStore;
- {
- std::lock_guard<std::mutex> lock(gPlatformAllocatorStoreMutex);
- allocatorStore = gPlatformAllocatorStore.lock();
- }
- if (allocatorStore) {
- allocatorStore->setComponentStore(componentStore);
- }
-}
-
-std::shared_ptr<C2ComponentStore> GetPreferredCodec2ComponentStore() {
- std::lock_guard<std::mutex> lock(gPreferredComponentStoreMutex);
- return gPreferredComponentStore ? gPreferredComponentStore : GetCodec2PlatformComponentStore();
-}
-
-namespace {
-
-class _C2BlockPoolCache {
-public:
- _C2BlockPoolCache() : mBlockPoolSeqId(C2BlockPool::PLATFORM_START + 1) {}
-
- c2_status_t _createBlockPool(
- C2PlatformAllocatorStore::id_t allocatorId,
- std::shared_ptr<const C2Component> component,
- C2BlockPool::local_id_t poolId,
- std::shared_ptr<C2BlockPool> *pool) {
- std::shared_ptr<C2AllocatorStore> allocatorStore =
- GetCodec2PlatformAllocatorStore();
- std::shared_ptr<C2Allocator> allocator;
- c2_status_t res = C2_NOT_FOUND;
-
- switch(allocatorId) {
- case C2PlatformAllocatorStore::ION:
- case C2AllocatorStore::DEFAULT_LINEAR:
- res = allocatorStore->fetchAllocator(
- C2AllocatorStore::DEFAULT_LINEAR, &allocator);
- if (res == C2_OK) {
- std::shared_ptr<C2BlockPool> ptr =
- std::make_shared<C2PooledBlockPool>(
- allocator, poolId);
- *pool = ptr;
- mBlockPools[poolId] = ptr;
- mComponents[poolId] = component;
- }
- break;
- case C2PlatformAllocatorStore::GRALLOC:
- case C2AllocatorStore::DEFAULT_GRAPHIC:
- res = allocatorStore->fetchAllocator(
- C2AllocatorStore::DEFAULT_GRAPHIC, &allocator);
- if (res == C2_OK) {
- std::shared_ptr<C2BlockPool> ptr =
- std::make_shared<C2PooledBlockPool>(allocator, poolId);
- *pool = ptr;
- mBlockPools[poolId] = ptr;
- mComponents[poolId] = component;
- }
- break;
- case C2PlatformAllocatorStore::BUFFERQUEUE:
- res = allocatorStore->fetchAllocator(
- C2PlatformAllocatorStore::BUFFERQUEUE, &allocator);
- if (res == C2_OK) {
- std::shared_ptr<C2BlockPool> ptr =
- std::make_shared<C2BufferQueueBlockPool>(
- allocator, poolId);
- *pool = ptr;
- mBlockPools[poolId] = ptr;
- mComponents[poolId] = component;
- }
- break;
- default:
- // Try to create block pool from platform store plugins.
- std::shared_ptr<C2BlockPool> ptr;
- res = C2PlatformStorePluginLoader::GetInstance()->createBlockPool(
- allocatorId, poolId, &ptr);
- if (res == C2_OK) {
- *pool = ptr;
- mBlockPools[poolId] = ptr;
- mComponents[poolId] = component;
- }
- break;
- }
- return res;
- }
-
- c2_status_t createBlockPool(
- C2PlatformAllocatorStore::id_t allocatorId,
- std::shared_ptr<const C2Component> component,
- std::shared_ptr<C2BlockPool> *pool) {
- return _createBlockPool(allocatorId, component, mBlockPoolSeqId++, pool);
- }
-
- bool getBlockPool(
- C2BlockPool::local_id_t blockPoolId,
- std::shared_ptr<const C2Component> component,
- std::shared_ptr<C2BlockPool> *pool) {
- // TODO: use one iterator for multiple blockpool type scalability.
- std::shared_ptr<C2BlockPool> ptr;
- auto it = mBlockPools.find(blockPoolId);
- if (it != mBlockPools.end()) {
- ptr = it->second.lock();
- if (!ptr) {
- mBlockPools.erase(it);
- mComponents.erase(blockPoolId);
- } else {
- auto found = mComponents.find(blockPoolId);
- if (component == found->second.lock()) {
- *pool = ptr;
- return true;
- }
- }
- }
- return false;
- }
-
-private:
- C2BlockPool::local_id_t mBlockPoolSeqId;
-
- std::map<C2BlockPool::local_id_t, std::weak_ptr<C2BlockPool>> mBlockPools;
- std::map<C2BlockPool::local_id_t, std::weak_ptr<const C2Component>> mComponents;
-};
-
-static std::unique_ptr<_C2BlockPoolCache> sBlockPoolCache =
- std::make_unique<_C2BlockPoolCache>();
-static std::mutex sBlockPoolCacheMutex;
-
-} // anynymous namespace
-
-c2_status_t GetCodec2BlockPool(
- C2BlockPool::local_id_t id, std::shared_ptr<const C2Component> component,
- std::shared_ptr<C2BlockPool> *pool) {
- pool->reset();
- std::lock_guard<std::mutex> lock(sBlockPoolCacheMutex);
- std::shared_ptr<C2AllocatorStore> allocatorStore = GetCodec2PlatformAllocatorStore();
- std::shared_ptr<C2Allocator> allocator;
- c2_status_t res = C2_NOT_FOUND;
-
- if (id >= C2BlockPool::PLATFORM_START) {
- if (sBlockPoolCache->getBlockPool(id, component, pool)) {
- return C2_OK;
- }
- }
-
- switch (id) {
- case C2BlockPool::BASIC_LINEAR:
- res = allocatorStore->fetchAllocator(C2AllocatorStore::DEFAULT_LINEAR, &allocator);
- if (res == C2_OK) {
- *pool = std::make_shared<C2BasicLinearBlockPool>(allocator);
- }
- break;
- case C2BlockPool::BASIC_GRAPHIC:
- res = allocatorStore->fetchAllocator(C2AllocatorStore::DEFAULT_GRAPHIC, &allocator);
- if (res == C2_OK) {
- *pool = std::make_shared<C2BasicGraphicBlockPool>(allocator);
- }
- break;
- // TODO: remove this. this is temporary
- case C2BlockPool::PLATFORM_START:
- res = sBlockPoolCache->_createBlockPool(
- C2PlatformAllocatorStore::BUFFERQUEUE, component, id, pool);
- break;
- default:
- break;
- }
- return res;
-}
-
-c2_status_t CreateCodec2BlockPool(
- C2PlatformAllocatorStore::id_t allocatorId,
- std::shared_ptr<const C2Component> component,
- std::shared_ptr<C2BlockPool> *pool) {
- pool->reset();
-
- std::lock_guard<std::mutex> lock(sBlockPoolCacheMutex);
- return sBlockPoolCache->createBlockPool(allocatorId, component, pool);
-}
-
-class C2PlatformComponentStore : public C2ComponentStore {
-public:
- virtual std::vector<std::shared_ptr<const C2Component::Traits>> listComponents() override;
- virtual std::shared_ptr<C2ParamReflector> getParamReflector() const override;
- virtual C2String getName() const override;
- virtual c2_status_t querySupportedValues_sm(
- std::vector<C2FieldSupportedValuesQuery> &fields) const override;
- virtual c2_status_t querySupportedParams_nb(
- std::vector<std::shared_ptr<C2ParamDescriptor>> *const params) const override;
- virtual c2_status_t query_sm(
- const std::vector<C2Param*> &stackParams,
- const std::vector<C2Param::Index> &heapParamIndices,
- std::vector<std::unique_ptr<C2Param>> *const heapParams) const override;
- virtual c2_status_t createInterface(
- C2String name, std::shared_ptr<C2ComponentInterface> *const interface) override;
- virtual c2_status_t createComponent(
- C2String name, std::shared_ptr<C2Component> *const component) override;
- virtual c2_status_t copyBuffer(
- std::shared_ptr<C2GraphicBuffer> src, std::shared_ptr<C2GraphicBuffer> dst) override;
- virtual c2_status_t config_sm(
- const std::vector<C2Param*> ¶ms,
- std::vector<std::unique_ptr<C2SettingResult>> *const failures) override;
- C2PlatformComponentStore();
-
- virtual ~C2PlatformComponentStore() override = default;
-
-private:
-
- /**
- * An object encapsulating a loaded component module.
- *
- * \todo provide a way to add traits to known components here to avoid loading the .so-s
- * for listComponents
- */
- struct ComponentModule : public C2ComponentFactory,
- public std::enable_shared_from_this<ComponentModule> {
- virtual c2_status_t createComponent(
- c2_node_id_t id, std::shared_ptr<C2Component> *component,
- ComponentDeleter deleter = std::default_delete<C2Component>()) override;
- virtual c2_status_t createInterface(
- c2_node_id_t id, std::shared_ptr<C2ComponentInterface> *interface,
- InterfaceDeleter deleter = std::default_delete<C2ComponentInterface>()) override;
-
- /**
- * \returns the traits of the component in this module.
- */
- std::shared_ptr<const C2Component::Traits> getTraits();
-
- /**
- * Creates an uninitialized component module.
- *
- * \param name[in] component name.
- *
- * \note Only used by ComponentLoader.
- */
- ComponentModule()
- : mInit(C2_NO_INIT),
- mLibHandle(nullptr),
- createFactory(nullptr),
- destroyFactory(nullptr),
- mComponentFactory(nullptr) {
- }
-
- /**
- * Initializes a component module with a given library path. Must be called exactly once.
- *
- * \note Only used by ComponentLoader.
- *
- * \param alias[in] module alias
- * \param libPath[in] library path
- *
- * \retval C2_OK the component module has been successfully loaded
- * \retval C2_NO_MEMORY not enough memory to loading the component module
- * \retval C2_NOT_FOUND could not locate the component module
- * \retval C2_CORRUPTED the component module could not be loaded (unexpected)
- * \retval C2_REFUSED permission denied to load the component module (unexpected)
- * \retval C2_TIMED_OUT could not load the module within the time limit (unexpected)
- */
- c2_status_t init(std::string alias, std::string libPath);
-
- virtual ~ComponentModule() override;
-
- protected:
- std::recursive_mutex mLock; ///< lock protecting mTraits
- std::shared_ptr<C2Component::Traits> mTraits; ///< cached component traits
-
- c2_status_t mInit; ///< initialization result
-
- void *mLibHandle; ///< loaded library handle
- C2ComponentFactory::CreateCodec2FactoryFunc createFactory; ///< loaded create function
- C2ComponentFactory::DestroyCodec2FactoryFunc destroyFactory; ///< loaded destroy function
- C2ComponentFactory *mComponentFactory; ///< loaded/created component factory
- };
-
- /**
- * An object encapsulating a loadable component module.
- *
- * \todo make this also work for enumerations
- */
- struct ComponentLoader {
- /**
- * Load the component module.
- *
- * This method simply returns the component module if it is already currently loaded, or
- * attempts to load it if it is not.
- *
- * \param module[out] pointer to the shared pointer where the loaded module shall be stored.
- * This will be nullptr on error.
- *
- * \retval C2_OK the component module has been successfully loaded
- * \retval C2_NO_MEMORY not enough memory to loading the component module
- * \retval C2_NOT_FOUND could not locate the component module
- * \retval C2_CORRUPTED the component module could not be loaded
- * \retval C2_REFUSED permission denied to load the component module
- */
- c2_status_t fetchModule(std::shared_ptr<ComponentModule> *module) {
- c2_status_t res = C2_OK;
- std::lock_guard<std::mutex> lock(mMutex);
- std::shared_ptr<ComponentModule> localModule = mModule.lock();
- if (localModule == nullptr) {
- localModule = std::make_shared<ComponentModule>();
- res = localModule->init(mAlias, mLibPath);
- if (res == C2_OK) {
- mModule = localModule;
- }
- }
- *module = localModule;
- return res;
- }
-
- /**
- * Creates a component loader for a specific library path (or name).
- */
- ComponentLoader(std::string alias, std::string libPath)
- : mAlias(alias), mLibPath(libPath) {}
-
- private:
- std::mutex mMutex; ///< mutex guarding the module
- std::weak_ptr<ComponentModule> mModule; ///< weak reference to the loaded module
- std::string mAlias; ///< component alias
- std::string mLibPath; ///< library path
- };
-
- struct Interface : public C2InterfaceHelper {
- std::shared_ptr<C2StoreIonUsageInfo> mIonUsageInfo;
-
- Interface(std::shared_ptr<C2ReflectorHelper> reflector)
- : C2InterfaceHelper(reflector) {
- setDerivedInstance(this);
-
- struct Setter {
- static C2R setIonUsage(bool /* mayBlock */, C2P<C2StoreIonUsageInfo> &me) {
- me.set().heapMask = ~0;
- me.set().allocFlags = 0;
- me.set().minAlignment = 0;
- return C2R::Ok();
- }
- };
-
- addParameter(
- DefineParam(mIonUsageInfo, "ion-usage")
- .withDefault(new C2StoreIonUsageInfo())
- .withFields({
- C2F(mIonUsageInfo, usage).flags({C2MemoryUsage::CPU_READ | C2MemoryUsage::CPU_WRITE}),
- C2F(mIonUsageInfo, capacity).inRange(0, UINT32_MAX, 1024),
- C2F(mIonUsageInfo, heapMask).any(),
- C2F(mIonUsageInfo, allocFlags).flags({}),
- C2F(mIonUsageInfo, minAlignment).equalTo(0)
- })
- .withSetter(Setter::setIonUsage)
- .build());
- }
- };
-
- /**
- * Retrieves the component loader for a component.
- *
- * \return a non-ref-holding pointer to the component loader.
- *
- * \retval C2_OK the component loader has been successfully retrieved
- * \retval C2_NO_MEMORY not enough memory to locate the component loader
- * \retval C2_NOT_FOUND could not locate the component to be loaded
- * \retval C2_CORRUPTED the component loader could not be identified due to some modules being
- * corrupted (this can happen if the name does not refer to an already
- * identified component but some components could not be loaded due to
- * bad library)
- * \retval C2_REFUSED permission denied to find the component loader for the named component
- * (this can happen if the name does not refer to an already identified
- * component but some components could not be loaded due to lack of
- * permissions)
- */
- c2_status_t findComponent(C2String name, ComponentLoader **loader);
-
- std::map<C2String, ComponentLoader> mComponents; ///< map of name -> components
- std::vector<C2String> mComponentsList; ///< list of components
- std::shared_ptr<C2ReflectorHelper> mReflector;
- Interface mInterface;
-};
-
-c2_status_t C2PlatformComponentStore::ComponentModule::init(
- std::string alias, std::string libPath) {
- ALOGV("in %s", __func__);
- ALOGV("loading dll");
- mLibHandle = dlopen(libPath.c_str(), RTLD_NOW|RTLD_NODELETE);
- if (mLibHandle == nullptr) {
- // could be access/symbol or simply not being there
- ALOGD("could not dlopen %s: %s", libPath.c_str(), dlerror());
- mInit = C2_CORRUPTED;
- } else {
- createFactory =
- (C2ComponentFactory::CreateCodec2FactoryFunc)dlsym(mLibHandle, "CreateCodec2Factory");
- destroyFactory =
- (C2ComponentFactory::DestroyCodec2FactoryFunc)dlsym(mLibHandle, "DestroyCodec2Factory");
-
- mComponentFactory = createFactory();
- if (mComponentFactory == nullptr) {
- ALOGD("could not create factory in %s", libPath.c_str());
- mInit = C2_NO_MEMORY;
- } else {
- mInit = C2_OK;
- }
- }
- if (mInit != C2_OK) {
- return mInit;
- }
-
- std::shared_ptr<C2ComponentInterface> intf;
- c2_status_t res = createInterface(0, &intf);
- if (res != C2_OK) {
- ALOGD("failed to create interface: %d", res);
- return mInit;
- }
-
- std::shared_ptr<C2Component::Traits> traits(new (std::nothrow) C2Component::Traits);
- if (traits) {
- if (alias != intf->getName()) {
- ALOGV("%s is alias to %s", alias.c_str(), intf->getName().c_str());
- }
- traits->name = alias;
- // TODO: get this from interface properly.
- bool encoder = (traits->name.find("encoder") != std::string::npos);
- uint32_t mediaTypeIndex = encoder ? C2PortMimeConfig::output::PARAM_TYPE
- : C2PortMimeConfig::input::PARAM_TYPE;
- std::vector<std::unique_ptr<C2Param>> params;
- res = intf->query_vb({}, { mediaTypeIndex }, C2_MAY_BLOCK, ¶ms);
- if (res != C2_OK) {
- ALOGD("failed to query interface: %d", res);
- return mInit;
- }
- if (params.size() != 1u) {
- ALOGD("failed to query interface: unexpected vector size: %zu", params.size());
- return mInit;
- }
- C2PortMimeConfig *mediaTypeConfig = (C2PortMimeConfig *)(params[0].get());
- if (mediaTypeConfig == nullptr) {
- ALOGD("failed to query media type");
- return mInit;
- }
- traits->mediaType = mediaTypeConfig->m.value;
- // TODO: get this properly.
- traits->rank = 0x200;
-
- // TODO: define these values properly
- bool decoder = (traits->name.find("decoder") != std::string::npos);
- traits->kind =
- decoder ? C2Component::KIND_DECODER :
- encoder ? C2Component::KIND_ENCODER :
- C2Component::KIND_OTHER;
- if (strncmp(traits->mediaType.c_str(), "audio/", 6) == 0) {
- traits->domain = C2Component::DOMAIN_AUDIO;
- } else if (strncmp(traits->mediaType.c_str(), "video/", 6) == 0) {
- traits->domain = C2Component::DOMAIN_VIDEO;
- } else if (strncmp(traits->mediaType.c_str(), "image/", 6) == 0) {
- traits->domain = C2Component::DOMAIN_IMAGE;
- } else {
- traits->domain = C2Component::DOMAIN_OTHER;
- }
- }
- mTraits = traits;
-
- return mInit;
-}
-
-C2PlatformComponentStore::ComponentModule::~ComponentModule() {
- ALOGV("in %s", __func__);
- if (destroyFactory && mComponentFactory) {
- destroyFactory(mComponentFactory);
- }
- if (mLibHandle) {
- ALOGV("unloading dll");
- dlclose(mLibHandle);
- }
-}
-
-c2_status_t C2PlatformComponentStore::ComponentModule::createInterface(
- c2_node_id_t id, std::shared_ptr<C2ComponentInterface> *interface,
- std::function<void(::C2ComponentInterface*)> deleter) {
- interface->reset();
- if (mInit != C2_OK) {
- return mInit;
- }
- std::shared_ptr<ComponentModule> module = shared_from_this();
- c2_status_t res = mComponentFactory->createInterface(
- id, interface, [module, deleter](C2ComponentInterface *p) mutable {
- // capture module so that we ensure we still have it while deleting interface
- deleter(p); // delete interface first
- module.reset(); // remove module ref (not technically needed)
- });
- return res;
-}
-
-c2_status_t C2PlatformComponentStore::ComponentModule::createComponent(
- c2_node_id_t id, std::shared_ptr<C2Component> *component,
- std::function<void(::C2Component*)> deleter) {
- component->reset();
- if (mInit != C2_OK) {
- return mInit;
- }
- std::shared_ptr<ComponentModule> module = shared_from_this();
- c2_status_t res = mComponentFactory->createComponent(
- id, component, [module, deleter](C2Component *p) mutable {
- // capture module so that we ensure we still have it while deleting component
- deleter(p); // delete component first
- module.reset(); // remove module ref (not technically needed)
- });
- return res;
-}
-
-std::shared_ptr<const C2Component::Traits> C2PlatformComponentStore::ComponentModule::getTraits() {
- std::unique_lock<std::recursive_mutex> lock(mLock);
- return mTraits;
-}
-
-C2PlatformComponentStore::C2PlatformComponentStore()
- : mReflector(std::make_shared<C2ReflectorHelper>()),
- mInterface(mReflector) {
-
- auto emplace = [this](const char *alias, const char *libPath) {
- // ComponentLoader is neither copiable nor movable, so it must be
- // constructed in-place. Now ComponentLoader takes two arguments in
- // constructor, so we need to use piecewise_construct to achieve this
- // behavior.
- mComponents.emplace(
- std::piecewise_construct,
- std::forward_as_tuple(alias),
- std::forward_as_tuple(alias, libPath));
- mComponentsList.emplace_back(alias);
- };
- // TODO: move this also into a .so so it can be updated
- emplace("c2.android.avc.decoder", "libstagefright_soft_c2avcdec.so");
- emplace("c2.android.avc.encoder", "libstagefright_soft_c2avcenc.so");
- emplace("c2.android.aac.decoder", "libstagefright_soft_c2aacdec.so");
- emplace("c2.android.aac.encoder", "libstagefright_soft_c2aacenc.so");
- emplace("c2.android.amrnb.decoder", "libstagefright_soft_c2amrnbdec.so");
- emplace("c2.android.amrnb.encoder", "libstagefright_soft_c2amrnbenc.so");
- emplace("c2.android.amrwb.decoder", "libstagefright_soft_c2amrwbdec.so");
- emplace("c2.android.amrwb.encoder", "libstagefright_soft_c2amrwbenc.so");
- emplace("c2.android.hevc.decoder", "libstagefright_soft_c2hevcdec.so");
- emplace("c2.android.g711.alaw.decoder", "libstagefright_soft_c2g711alawdec.so");
- emplace("c2.android.g711.mlaw.decoder", "libstagefright_soft_c2g711mlawdec.so");
- emplace("c2.android.mpeg2.decoder", "libstagefright_soft_c2mpeg2dec.so");
- emplace("c2.android.h263.decoder", "libstagefright_soft_c2h263dec.so");
- emplace("c2.android.h263.encoder", "libstagefright_soft_c2h263enc.so");
- emplace("c2.android.mpeg4.decoder", "libstagefright_soft_c2mpeg4dec.so");
- emplace("c2.android.mpeg4.encoder", "libstagefright_soft_c2mpeg4enc.so");
- emplace("c2.android.mp3.decoder", "libstagefright_soft_c2mp3dec.so");
- emplace("c2.android.vorbis.decoder", "libstagefright_soft_c2vorbisdec.so");
- emplace("c2.android.opus.decoder", "libstagefright_soft_c2opusdec.so");
- emplace("c2.android.vp8.decoder", "libstagefright_soft_c2vp8dec.so");
- emplace("c2.android.vp9.decoder", "libstagefright_soft_c2vp9dec.so");
- emplace("c2.android.vp8.encoder", "libstagefright_soft_c2vp8enc.so");
- emplace("c2.android.vp9.encoder", "libstagefright_soft_c2vp9enc.so");
- emplace("c2.android.raw.decoder", "libstagefright_soft_c2rawdec.so");
- emplace("c2.android.flac.decoder", "libstagefright_soft_c2flacdec.so");
- emplace("c2.android.flac.encoder", "libstagefright_soft_c2flacenc.so");
- emplace("c2.android.gsm.decoder", "libstagefright_soft_c2gsmdec.so");
- emplace("c2.android.xaac.decoder", "libstagefright_soft_c2xaacdec.so");
-
- // "Aliases"
- // TODO: use aliases proper from C2Component::Traits
- emplace("OMX.google.h264.decoder", "libstagefright_soft_c2avcdec.so");
- emplace("OMX.google.h264.encoder", "libstagefright_soft_c2avcenc.so");
- emplace("OMX.google.aac.decoder", "libstagefright_soft_c2aacdec.so");
- emplace("OMX.google.aac.encoder", "libstagefright_soft_c2aacenc.so");
- emplace("OMX.google.amrnb.decoder", "libstagefright_soft_c2amrnbdec.so");
- emplace("OMX.google.amrnb.encoder", "libstagefright_soft_c2amrnbenc.so");
- emplace("OMX.google.amrwb.decoder", "libstagefright_soft_c2amrwbdec.so");
- emplace("OMX.google.amrwb.encoder", "libstagefright_soft_c2amrwbenc.so");
- emplace("OMX.google.hevc.decoder", "libstagefright_soft_c2hevcdec.so");
- emplace("OMX.google.g711.alaw.decoder", "libstagefright_soft_c2g711alawdec.so");
- emplace("OMX.google.g711.mlaw.decoder", "libstagefright_soft_c2g711mlawdec.so");
- emplace("OMX.google.mpeg2.decoder", "libstagefright_soft_c2mpeg2dec.so");
- emplace("OMX.google.h263.decoder", "libstagefright_soft_c2h263dec.so");
- emplace("OMX.google.h263.encoder", "libstagefright_soft_c2h263enc.so");
- emplace("OMX.google.mpeg4.decoder", "libstagefright_soft_c2mpeg4dec.so");
- emplace("OMX.google.mpeg4.encoder", "libstagefright_soft_c2mpeg4enc.so");
- emplace("OMX.google.mp3.decoder", "libstagefright_soft_c2mp3dec.so");
- emplace("OMX.google.vorbis.decoder", "libstagefright_soft_c2vorbisdec.so");
- emplace("OMX.google.opus.decoder", "libstagefright_soft_c2opusdec.so");
- emplace("OMX.google.vp8.decoder", "libstagefright_soft_c2vp8dec.so");
- emplace("OMX.google.vp9.decoder", "libstagefright_soft_c2vp9dec.so");
- emplace("OMX.google.vp8.encoder", "libstagefright_soft_c2vp8enc.so");
- emplace("OMX.google.vp9.encoder", "libstagefright_soft_c2vp9enc.so");
- emplace("OMX.google.raw.decoder", "libstagefright_soft_c2rawdec.so");
- emplace("OMX.google.flac.decoder", "libstagefright_soft_c2flacdec.so");
- emplace("OMX.google.flac.encoder", "libstagefright_soft_c2flacenc.so");
- emplace("OMX.google.gsm.decoder", "libstagefright_soft_c2gsmdec.so");
- emplace("OMX.google.xaac.decoder", "libstagefright_soft_c2xaacdec.so");
-}
-
-c2_status_t C2PlatformComponentStore::copyBuffer(
- std::shared_ptr<C2GraphicBuffer> src, std::shared_ptr<C2GraphicBuffer> dst) {
- (void)src;
- (void)dst;
- return C2_OMITTED;
-}
-
-c2_status_t C2PlatformComponentStore::query_sm(
- const std::vector<C2Param*> &stackParams,
- const std::vector<C2Param::Index> &heapParamIndices,
- std::vector<std::unique_ptr<C2Param>> *const heapParams) const {
- return mInterface.query(stackParams, heapParamIndices, C2_MAY_BLOCK, heapParams);
-}
-
-c2_status_t C2PlatformComponentStore::config_sm(
- const std::vector<C2Param*> ¶ms,
- std::vector<std::unique_ptr<C2SettingResult>> *const failures) {
- return mInterface.config(params, C2_MAY_BLOCK, failures);
-}
-
-std::vector<std::shared_ptr<const C2Component::Traits>> C2PlatformComponentStore::listComponents() {
- // This method SHALL return within 500ms.
- std::vector<std::shared_ptr<const C2Component::Traits>> list;
- for (const C2String &alias : mComponentsList) {
- ComponentLoader &loader = mComponents.at(alias);
- std::shared_ptr<ComponentModule> module;
- c2_status_t res = loader.fetchModule(&module);
- if (res == C2_OK) {
- std::shared_ptr<const C2Component::Traits> traits = module->getTraits();
- if (traits) {
- list.push_back(traits);
- }
- }
- }
- return list;
-}
-
-c2_status_t C2PlatformComponentStore::findComponent(C2String name, ComponentLoader **loader) {
- *loader = nullptr;
- auto pos = mComponents.find(name);
- // TODO: check aliases
- if (pos == mComponents.end()) {
- return C2_NOT_FOUND;
- }
- *loader = &pos->second;
- return C2_OK;
-}
-
-c2_status_t C2PlatformComponentStore::createComponent(
- C2String name, std::shared_ptr<C2Component> *const component) {
- // This method SHALL return within 100ms.
- component->reset();
- ComponentLoader *loader;
- c2_status_t res = findComponent(name, &loader);
- if (res == C2_OK) {
- std::shared_ptr<ComponentModule> module;
- res = loader->fetchModule(&module);
- if (res == C2_OK) {
- // TODO: get a unique node ID
- res = module->createComponent(0, component);
- }
- }
- return res;
-}
-
-c2_status_t C2PlatformComponentStore::createInterface(
- C2String name, std::shared_ptr<C2ComponentInterface> *const interface) {
- // This method SHALL return within 100ms.
- interface->reset();
- ComponentLoader *loader;
- c2_status_t res = findComponent(name, &loader);
- if (res == C2_OK) {
- std::shared_ptr<ComponentModule> module;
- res = loader->fetchModule(&module);
- if (res == C2_OK) {
- // TODO: get a unique node ID
- res = module->createInterface(0, interface);
- }
- }
- return res;
-}
-
-c2_status_t C2PlatformComponentStore::querySupportedParams_nb(
- std::vector<std::shared_ptr<C2ParamDescriptor>> *const params) const {
- return mInterface.querySupportedParams(params);
-}
-
-c2_status_t C2PlatformComponentStore::querySupportedValues_sm(
- std::vector<C2FieldSupportedValuesQuery> &fields) const {
- return mInterface.querySupportedValues(fields, C2_MAY_BLOCK);
-}
-
-C2String C2PlatformComponentStore::getName() const {
- return "android.componentStore.platform";
-}
-
-std::shared_ptr<C2ParamReflector> C2PlatformComponentStore::getParamReflector() const {
- return mReflector;
-}
-
-std::shared_ptr<C2ComponentStore> GetCodec2PlatformComponentStore() {
- static std::mutex mutex;
- static std::weak_ptr<C2ComponentStore> platformStore;
- std::lock_guard<std::mutex> lock(mutex);
- std::shared_ptr<C2ComponentStore> store = platformStore.lock();
- if (store == nullptr) {
- store = std::make_shared<C2PlatformComponentStore>();
- platformStore = store;
- }
- return store;
-}
-
-} // namespace android
diff --git a/codec2/vndk/include/C2AllocatorGralloc.h b/codec2/vndk/include/C2AllocatorGralloc.h
deleted file mode 100644
index 05d989e..0000000
--- a/codec2/vndk/include/C2AllocatorGralloc.h
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef STAGEFRIGHT_CODEC2_ALLOCATOR_GRALLOC_H_
-#define STAGEFRIGHT_CODEC2_ALLOCATOR_GRALLOC_H_
-
-#include <functional>
-
-#include <C2Buffer.h>
-
-namespace android {
-
-/**
- * Unwrap the native handle from a Codec2 handle allocated by C2AllocatorGralloc.
- *
- * @param handle a handle allocated by C2AllocatorGralloc. This includes handles returned for a
- * graphic block allocation handle returned.
- *
- * @return a new NON-OWNING native handle that must be deleted using native_handle_delete.
- */
-native_handle_t *UnwrapNativeCodec2GrallocHandle(const C2Handle *const handle);
-
-/**
- * Wrap the gralloc handle and metadata into Codec2 handle recognized by
- * C2AllocatorGralloc.
- *
- * @return a new NON-OWNING C2Handle that must be deleted using native_handle_delete.
- */
-C2Handle *WrapNativeCodec2GrallocHandle(
- const native_handle_t *const handle,
- uint32_t width, uint32_t height, uint32_t format, uint64_t usage, uint32_t stride,
- uint32_t generation = 0, uint64_t igbp_id = 0, uint32_t igbp_slot = 0);
-
-/**
- * \todo Get this from the buffer
- */
-void _UnwrapNativeCodec2GrallocMetadata(
- const C2Handle *const handle,
- uint32_t *width, uint32_t *height, uint32_t *format, uint64_t *usage, uint32_t *stride,
- uint32_t *generation, uint64_t *igbp_id, uint32_t *igbp_slot);
-
-class C2AllocatorGralloc : public C2Allocator {
-public:
- virtual id_t getId() const override;
-
- virtual C2String getName() const override;
-
- virtual std::shared_ptr<const Traits> getTraits() const override;
-
- virtual c2_status_t newGraphicAllocation(
- uint32_t width, uint32_t height, uint32_t format, C2MemoryUsage usage,
- std::shared_ptr<C2GraphicAllocation> *allocation) override;
-
- virtual c2_status_t priorGraphicAllocation(
- const C2Handle *handle,
- std::shared_ptr<C2GraphicAllocation> *allocation) override;
-
- C2AllocatorGralloc(id_t id, bool bufferQueue = false);
-
- c2_status_t status() const;
-
- virtual ~C2AllocatorGralloc() override;
-
- static bool isValid(const C2Handle* const o);
-
-private:
- class Impl;
- Impl *mImpl;
-};
-
-} // namespace android
-
-#endif // STAGEFRIGHT_CODEC2_ALLOCATOR_GRALLOC_H_
diff --git a/codec2/vndk/include/C2AllocatorIon.h b/codec2/vndk/include/C2AllocatorIon.h
deleted file mode 100644
index 1b2051f..0000000
--- a/codec2/vndk/include/C2AllocatorIon.h
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef STAGEFRIGHT_CODEC2_ALLOCATOR_ION_H_
-#define STAGEFRIGHT_CODEC2_ALLOCATOR_ION_H_
-
-#include <functional>
-#include <list>
-#include <mutex>
-#include <tuple>
-#include <unordered_map>
-
-#include <C2Buffer.h>
-
-namespace android {
-
-class C2AllocatorIon : public C2Allocator {
-public:
- // Usage mapper function used by the allocator
- // (usage, capacity) => (align, heapMask, flags)
- //
- // capacity is aligned to the default block-size (defaults to page size) to reduce caching
- // overhead
- typedef std::function<c2_status_t(C2MemoryUsage, size_t,
- /* => */ size_t*, unsigned*, unsigned*)> UsageMapperFn;
-
- virtual id_t getId() const override;
-
- virtual C2String getName() const override;
-
- virtual std::shared_ptr<const Traits> getTraits() const override;
-
- virtual c2_status_t newLinearAllocation(
- uint32_t capacity, C2MemoryUsage usage,
- std::shared_ptr<C2LinearAllocation> *allocation) override;
-
- virtual c2_status_t priorLinearAllocation(
- const C2Handle *handle,
- std::shared_ptr<C2LinearAllocation> *allocation) override;
-
- C2AllocatorIon(id_t id);
-
- virtual c2_status_t status() const { return mInit; }
-
- virtual ~C2AllocatorIon() override;
-
- static bool isValid(const C2Handle* const o);
-
- /**
- * Updates the usage mapper for subsequent new allocations, as well as the supported
- * minimum and maximum usage masks and default block-size to use for the mapper.
- *
- * \param mapper this method is called to map Codec 2.0 buffer usage to ion flags
- * required by the ion device
- * \param minUsage minimum buffer usage required for supported allocations (defaults to 0)
- * \param maxUsage maximum buffer usage supported by the ion allocator (defaults to SW_READ
- * | SW_WRITE)
- * \param blockSize alignment used prior to calling |mapper| for the buffer capacity.
- * This also helps reduce the size of cache required for caching mapper results.
- * (defaults to the page size)
- */
- void setUsageMapper(
- const UsageMapperFn &mapper, uint64_t minUsage, uint64_t maxUsage, uint64_t blockSize);
-
-private:
- c2_status_t mapUsage(C2MemoryUsage usage, size_t size,
- /* => */ size_t *align, unsigned *heapMask, unsigned *flags);
-
- c2_status_t mInit;
- int mIonFd;
-
- // this locks mTraits, mBlockSize, mUsageMapper, mUsageMapperLru and mUsageMapperCache
- mutable std::mutex mUsageMapperLock;
- std::shared_ptr<const Traits> mTraits;
- size_t mBlockSize;
- UsageMapperFn mUsageMapper;
- typedef std::pair<uint64_t, size_t> MapperKey;
- struct MapperKeyHash {
- std::size_t operator()(const MapperKey &) const;
- };
- typedef std::tuple<size_t, unsigned, unsigned, c2_status_t> MapperValue;
- typedef std::pair<MapperKey, MapperValue> MapperKeyValue;
- typedef std::list<MapperKeyValue>::iterator MapperKeyValuePointer;
- std::list<MapperKeyValue> mUsageMapperLru;
- std::unordered_map<MapperKey, MapperKeyValuePointer, MapperKeyHash> mUsageMapperCache;
-};
-
-} // namespace android
-
-#endif // STAGEFRIGHT_CODEC2_ALLOCATOR_ION_H_
diff --git a/codec2/vndk/include/C2BqBufferPriv.h b/codec2/vndk/include/C2BqBufferPriv.h
deleted file mode 100644
index 0141f62..0000000
--- a/codec2/vndk/include/C2BqBufferPriv.h
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef STAGEFRIGHT_CODEC2_BQ_BUFFER_PRIV_H_
-#define STAGEFRIGHT_CODEC2_BQ_BUFFER_PRIV_H_
-
-#include <functional>
-
-#include <C2Buffer.h>
-#include <gui/bufferqueue/1.0/WGraphicBufferProducer.h>
-
-class C2BufferQueueBlockPool : public C2BlockPool {
-public:
- C2BufferQueueBlockPool(const std::shared_ptr<C2Allocator> &allocator, const local_id_t localId);
-
- virtual ~C2BufferQueueBlockPool() override;
-
- virtual C2Allocator::id_t getAllocatorId() const override {
- return mAllocator->getId();
- };
-
- virtual local_id_t getLocalId() const override {
- return mLocalId;
- };
-
- virtual c2_status_t fetchGraphicBlock(
- uint32_t width,
- uint32_t height,
- uint32_t format,
- C2MemoryUsage usage,
- std::shared_ptr<C2GraphicBlock> *block /* nonnull */) override;
-
- typedef std::function<void(uint64_t producer, int32_t slot, int64_t nsecs)> OnRenderCallback;
-
- /**
- * Sets render callback.
- *
- * \param renderCallbak callback to call for all dequeue buffer.
- */
- virtual void setRenderCallback(const OnRenderCallback &renderCallback = OnRenderCallback());
-
- /**
- * Configures an IGBP in order to create blocks. A newly created block is
- * dequeued from the configured IGBP. Unique Id of IGBP and the slot number of
- * blocks are passed via native_handle. Managing IGBP is responsibility of caller.
- * When IGBP is not configured, block will be created via allocator.
- * Since zero is not used for Unique Id of IGBP, if IGBP is not configured or producer
- * is configured as nullptr, unique id which is bundled in native_handle is zero.
- *
- * \param producer the IGBP, which will be used to fetch blocks
- */
- virtual void configureProducer(const android::sp<android::HGraphicBufferProducer> &producer);
-
-private:
- const std::shared_ptr<C2Allocator> mAllocator;
- const local_id_t mLocalId;
-
- class Impl;
- std::shared_ptr<Impl> mImpl;
-
- friend struct C2BufferQueueBlockPoolData;
-};
-
-#endif // STAGEFRIGHT_CODEC2_BUFFER_PRIV_H_
diff --git a/codec2/vndk/include/C2BufferPriv.h b/codec2/vndk/include/C2BufferPriv.h
deleted file mode 100644
index d0b9152..0000000
--- a/codec2/vndk/include/C2BufferPriv.h
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef STAGEFRIGHT_CODEC2_BUFFER_PRIV_H_
-#define STAGEFRIGHT_CODEC2_BUFFER_PRIV_H_
-
-#include <functional>
-
-#include <C2Buffer.h>
-#include <android/hardware/media/bufferpool/1.0/IAccessor.h>
-
-class C2BasicLinearBlockPool : public C2BlockPool {
-public:
- explicit C2BasicLinearBlockPool(const std::shared_ptr<C2Allocator> &allocator);
-
- virtual ~C2BasicLinearBlockPool() override = default;
-
- virtual C2Allocator::id_t getAllocatorId() const override {
- return mAllocator->getId();
- }
-
- virtual local_id_t getLocalId() const override {
- return BASIC_LINEAR;
- }
-
- virtual c2_status_t fetchLinearBlock(
- uint32_t capacity,
- C2MemoryUsage usage,
- std::shared_ptr<C2LinearBlock> *block /* nonnull */) override;
-
- // TODO: fetchCircularBlock
-
-private:
- const std::shared_ptr<C2Allocator> mAllocator;
-};
-
-class C2BasicGraphicBlockPool : public C2BlockPool {
-public:
- explicit C2BasicGraphicBlockPool(const std::shared_ptr<C2Allocator> &allocator);
-
- virtual ~C2BasicGraphicBlockPool() override = default;
-
- virtual C2Allocator::id_t getAllocatorId() const override {
- return mAllocator->getId();
- }
-
- virtual local_id_t getLocalId() const override {
- return BASIC_GRAPHIC;
- }
-
- virtual c2_status_t fetchGraphicBlock(
- uint32_t width,
- uint32_t height,
- uint32_t format,
- C2MemoryUsage usage,
- std::shared_ptr<C2GraphicBlock> *block /* nonnull */) override;
-
-private:
- const std::shared_ptr<C2Allocator> mAllocator;
-};
-
-class C2PooledBlockPool : public C2BlockPool {
-public:
- C2PooledBlockPool(const std::shared_ptr<C2Allocator> &allocator, const local_id_t localId);
-
- virtual ~C2PooledBlockPool() override;
-
- virtual C2Allocator::id_t getAllocatorId() const override {
- return mAllocator->getId();
- }
-
- virtual local_id_t getLocalId() const override {
- return mLocalId;
- }
-
- virtual c2_status_t fetchLinearBlock(
- uint32_t capacity,
- C2MemoryUsage usage,
- std::shared_ptr<C2LinearBlock> *block /* nonnull */) override;
-
- virtual c2_status_t fetchGraphicBlock(
- uint32_t width,
- uint32_t height,
- uint32_t format,
- C2MemoryUsage usage,
- std::shared_ptr<C2GraphicBlock> *block) override;
-
- /**
- * Retrieves the connection Id for underlying bufferpool
- */
- int64_t getConnectionId();
-
- /**
- * Retrieves the accessor which is used by underlying bufferpool. (It can be
- * passed to receiving process.)
- *
- * \param accessor IAccessor will be written to this out parameter.
- *
- * \return true IAcessor is writen successfully.
- * \return false IAccessor is not written.
- */
- bool getAccessor(android::sp<android::hardware::media::bufferpool::V1_0::IAccessor> *accessor);
-
-private:
- const std::shared_ptr<C2Allocator> mAllocator;
- const local_id_t mLocalId;
-
- class Impl;
- std::unique_ptr<Impl> mImpl;
-};
-
-#endif // STAGEFRIGHT_CODEC2_BUFFER_PRIV_H_
diff --git a/codec2/vndk/include/C2ComponentFactory.h b/codec2/vndk/include/C2ComponentFactory.h
deleted file mode 100644
index f6d8b98..0000000
--- a/codec2/vndk/include/C2ComponentFactory.h
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef STAGEFRIGHT_CODEC2_COMPONENT_FACTORY_H_
-#define STAGEFRIGHT_CODEC2_COMPONENT_FACTORY_H_
-
-#include <C2Component.h>
-
-#include <functional>
-#include <memory>
-
-/**
- * Component factory object that enables to create a component and/or interface from a dynamically
- * linked library. This is needed because the component/interfaces are managed objects, but we
- * cannot safely create a managed object and pass it in C.
- *
- * Components/interfaces typically inherit from std::enable_shared_from_this, but C requires
- * passing simple pointer, and shared_ptr constructor needs to know the class to be constructed
- * derives from enable_shared_from_this.
- *
- */
-class C2ComponentFactory {
-public:
- typedef std::function<void(::C2Component*)> ComponentDeleter;
- typedef std::function<void(::C2ComponentInterface*)> InterfaceDeleter;
-
- /**
- * Creates a component.
- *
- * This method SHALL return within 100ms.
- *
- * \param id component ID for the created component
- * \param component shared pointer where the created component is stored. Cleared on
- * failure and updated on success.
- *
- * \retval C2_OK the component was created successfully
- * \retval C2_TIMED_OUT could not create the component within the time limit (unexpected)
- * \retval C2_CORRUPTED some unknown error prevented the creation of the component (unexpected)
- *
- * \retval C2_NO_MEMORY not enough memory to create the component
- */
- virtual c2_status_t createComponent(
- c2_node_id_t id, std::shared_ptr<C2Component>* const component,
- ComponentDeleter deleter = std::default_delete<C2Component>()) = 0;
-
- /**
- * Creates a component interface.
- *
- * This method SHALL return within 100ms.
- *
- * \param id component interface ID for the created interface
- * \param interface shared pointer where the created interface is stored. Cleared on
- * failure and updated on success.
- *
- * \retval C2_OK the component interface was created successfully
- * \retval C2_TIMED_OUT could not create the component interface within the time limit
- * (unexpected)
- * \retval C2_CORRUPTED some unknown error prevented the creation of the component interface
- * (unexpected)
- *
- * \retval C2_NO_MEMORY not enough memory to create the component interface
- */
- virtual c2_status_t createInterface(
- c2_node_id_t id, std::shared_ptr<C2ComponentInterface>* const interface,
- InterfaceDeleter deleter = std::default_delete<C2ComponentInterface>()) = 0;
-
- virtual ~C2ComponentFactory() = default;
-
- typedef ::C2ComponentFactory* (*CreateCodec2FactoryFunc)(void);
- typedef void (*DestroyCodec2FactoryFunc)(::C2ComponentFactory*);
-};
-
-
-#endif // STAGEFRIGHT_CODEC2_COMPONENT_FACTORY_H_
diff --git a/codec2/vndk/include/C2Debug.h b/codec2/vndk/include/C2Debug.h
deleted file mode 100644
index af1cdab..0000000
--- a/codec2/vndk/include/C2Debug.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2UTILS_DEBUG_H_
-#define C2UTILS_DEBUG_H_
-
-#include <util/C2Debug-log.h>
-
-// To allow arbitrary ordering of C2Debug.h and API headers and to keep debug utilities separately
-// from the API definitions, we provide API header specific debug headers.
-#ifdef C2PARAM_H_
-#include <util/C2Debug-param.h>
-#endif
-
-#endif // C2UTILS_DEBUG_H_
diff --git a/codec2/vndk/include/C2ErrnoUtils.h b/codec2/vndk/include/C2ErrnoUtils.h
deleted file mode 100644
index 5b995f6..0000000
--- a/codec2/vndk/include/C2ErrnoUtils.h
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef STAGEFRIGHT_CODEC2_ERRNO_UTILS_H_
-#define STAGEFRIGHT_CODEC2_ERRNO_UTILS_H_
-
-#include <errno.h>
-#include <C2.h>
-
-// standard ERRNO mappings
-template<int N> constexpr c2_status_t _c2_errno2status_impl();
-template<> constexpr c2_status_t _c2_errno2status_impl<0>() { return C2_OK; }
-template<> constexpr c2_status_t _c2_errno2status_impl<EINVAL>() { return C2_BAD_VALUE; }
-template<> constexpr c2_status_t _c2_errno2status_impl<EACCES>() { return C2_REFUSED; }
-template<> constexpr c2_status_t _c2_errno2status_impl<EPERM>() { return C2_REFUSED; }
-template<> constexpr c2_status_t _c2_errno2status_impl<ENOMEM>() { return C2_NO_MEMORY; }
-
-// map standard errno-s to the equivalent c2_status_t
-template<int... N> struct _c2_map_errno_impl;
-template<int E, int ... N> struct _c2_map_errno_impl<E, N...> {
- static c2_status_t map(int result) {
- if (result == E) {
- return _c2_errno2status_impl <E>();
- } else {
- return _c2_map_errno_impl<N...>::map(result);
- }
- }
-};
-template<> struct _c2_map_errno_impl<> {
- static c2_status_t map(int result) {
- return result == 0 ? C2_OK : C2_CORRUPTED;
- }
-};
-
-template<int... N>
-c2_status_t c2_map_errno(int result) {
- return _c2_map_errno_impl<N...>::map(result);
-}
-
-#endif // STAGEFRIGHT_CODEC2_ERRNO_UTILS_H_
-
diff --git a/codec2/vndk/include/C2PlatformStorePluginLoader.h b/codec2/vndk/include/C2PlatformStorePluginLoader.h
deleted file mode 100644
index 4c10643..0000000
--- a/codec2/vndk/include/C2PlatformStorePluginLoader.h
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Copyright 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef STAGEFRIGHT_C2_PLATFORM_STORE_PLUGIN_LOADER_H_
-
-#define STAGEFRIGHT_C2_PLATFORM_STORE_PLUGIN_LOADER_H_
-
-#include <memory>
-
-#include <utils/Mutex.h>
-
-#include <C2.h>
-#include <C2Buffer.h>
-
-/**
- * Extern C interface for creating block pool from platform store extension.
- *
- * \param alloctorId the ID of the backing allocator type.
- * \parem blockPoolId the ID of created block pool.
- *
- * \return pointer of created C2BlockPool, nullptr on error.
- */
-typedef ::C2BlockPool* (*CreateBlockPoolFunc)(::C2Allocator::id_t, ::C2BlockPool::local_id_t);
-
-/**
- * Extern C interface for creating allocator from platform store extension.
- *
- * \param alloctorId the ID of the allocator to create.
- * \param status the returned status from creating allocator.
- *
- * \return pointer of created C2Allocator, nullptr on error.
- */
-typedef ::C2Allocator* (*CreateAllocatorFunc)(::C2Allocator::id_t, ::c2_status_t*);
-
-class C2PlatformStorePluginLoader {
-public:
- static const std::unique_ptr<C2PlatformStorePluginLoader>& GetInstance();
- ~C2PlatformStorePluginLoader();
-
- /**
- * Creates block pool from platform store extension.
- *
- * \param alloctorId the ID of the backing allocator type.
- * \param blockPoolId the ID of created block pool.
- * \param pool shared pointer where the created block pool is stored.
- *
- * \retval C2_OK the block pool was created successfully.
- * \retval C2_NOT_FOUND the extension symbol was not found.
- * \retval C2_BAD_INDEX the input allocatorId is not defined in platform store extension.
- */
- c2_status_t createBlockPool(::C2Allocator::id_t allocatorId,
- ::C2BlockPool::local_id_t blockPoolId,
- std::shared_ptr<C2BlockPool>* pool);
-
- /**
- * Creates allocator from platform store extension.
- *
- * Note that this allocator is not created as shared singleton as C2AllocatorStore does, because
- * C interface only allows raw pointer transmission for extension.
- *
- * \param alloctorId the ID of the allocator to create.
- * \param allocator shared pointer where the created allocator is stored.
- *
- * \retval C2_OK the allocator was created successfully.
- * \retval C2_TIMED_OUT could not create the allocator within the time limit (unexpected)
- * \retval C2_CORRUPTED some unknown error prevented the creation of the allocator (unexpected)
- * \retval C2_NOT_FOUND the extension symbol was not found.
- * \retval C2_BAD_INDEX the input allocatorId is not defined in platform store extension.
- * \retval C2_NO_MEMORY not enough memory to create the allocator
- */
- c2_status_t createAllocator(::C2Allocator::id_t allocatorId,
- std::shared_ptr<C2Allocator>* const allocator);
-
-private:
- explicit C2PlatformStorePluginLoader(const char *libPath);
-
- static android::Mutex sMutex;
- static std::unique_ptr<C2PlatformStorePluginLoader> sInstance;
-
- void *mLibHandle;
- CreateBlockPoolFunc mCreateBlockPool;
- CreateAllocatorFunc mCreateAllocator;
-};
-
-#endif // STAGEFRIGHT_C2_PLATFORM_STORE_PLUGIN_LOADER_H_
diff --git a/codec2/vndk/include/C2PlatformSupport.h b/codec2/vndk/include/C2PlatformSupport.h
deleted file mode 100644
index f31282c..0000000
--- a/codec2/vndk/include/C2PlatformSupport.h
+++ /dev/null
@@ -1,136 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef STAGEFRIGHT_CODEC2_PLATFORM_SUPPORT_H_
-#define STAGEFRIGHT_CODEC2_PLATFORM_SUPPORT_H_
-
-#include <C2Component.h>
-#include <C2ComponentFactory.h>
-
-#include <memory>
-
-namespace android {
-
-/**
- * Returns the platform allocator store.
- * \retval nullptr if the platform allocator store could not be obtained
- */
-std::shared_ptr<C2AllocatorStore> GetCodec2PlatformAllocatorStore();
-
-/**
- * Platform allocator store IDs
- */
-class C2PlatformAllocatorStore : public C2AllocatorStore {
-public:
- enum : id_t {
- /**
- * ID of the ion backed platform allocator.
- *
- * C2Handle consists of:
- * fd shared ion buffer handle
- * int size (lo 32 bits)
- * int size (hi 32 bits)
- * int magic '\xc2io\x00'
- */
- ION = PLATFORM_START,
-
- /**
- * ID of the gralloc backed platform allocator.
- *
- * C2Handle layout is not public. Use C2AllocatorGralloc::UnwrapNativeCodec2GrallocHandle
- * to get the underlying gralloc handle from a C2Handle, and WrapNativeCodec2GrallocHandle
- * to create a C2Handle from a gralloc handle - for C2Allocator::priorAllocation.
- */
- GRALLOC,
-
- /**
- * ID of the bufferqueue backed platform allocator.
- *
- * C2Handle layout is not public. Use C2AllocatorGralloc::UnwrapNativeCodec2GrallocHandle
- * to get the underlying handle from a C2Handle, and WrapNativeCodec2GrallocHandle
- * to create a C2Handle from a handle - for C2Allocator::priorAllocation.
- */
- BUFFERQUEUE,
-
- /**
- * ID of indicating the end of platform allocator definition.
- *
- * \note always put this macro in the last place.
- *
- * Extended platform store plugin should use this macro as the start ID of its own allocator
- * types.
- */
- PLATFORM_END,
- };
-};
-
-/**
- * Retrieves a block pool for a component.
- *
- * \param id the local ID of the block pool
- * \param component the component using the block pool (must be non-null)
- * \param pool pointer to where the obtained block pool shall be stored on success. nullptr
- * will be stored here on failure
- *
- * \retval C2_OK the operation was successful
- * \retval C2_BAD_VALUE the component is null
- * \retval C2_NOT_FOUND if the block pool does not exist
- * \retval C2_NO_MEMORY not enough memory to fetch the block pool (this return value is only
- * possible for basic pools)
- * \retval C2_TIMED_OUT the operation timed out (this return value is only possible for basic pools)
- * \retval C2_REFUSED no permission to complete any required allocation (this return value is only
- * possible for basic pools)
- * \retval C2_CORRUPTED some unknown, unrecoverable error occured during operation (unexpected,
- * this return value is only possible for basic pools)
- */
-c2_status_t GetCodec2BlockPool(
- C2BlockPool::local_id_t id, std::shared_ptr<const C2Component> component,
- std::shared_ptr<C2BlockPool> *pool);
-
-/**
- * Creates a block pool.
- * \param allocatorId the allocator ID which is used to allocate blocks
- * \param component the component using the block pool (must be non-null)
- * \param pool pointer to where the created block pool shall be store on success.
- * nullptr will be stored here on failure
- *
- * \retval C2_OK the operation was successful
- * \retval C2_BAD_VALUE the component is null
- * \retval C2_NOT_FOUND if the allocator does not exist
- * \retval C2_NO_MEMORY not enough memory to create a block pool
- */
-c2_status_t CreateCodec2BlockPool(
- C2PlatformAllocatorStore::id_t allocatorId,
- std::shared_ptr<const C2Component> component,
- std::shared_ptr<C2BlockPool> *pool);
-
-/**
- * Returns the platform component store.
- * \retval nullptr if the platform component store could not be obtained
- */
-std::shared_ptr<C2ComponentStore> GetCodec2PlatformComponentStore();
-
-/**
- * Sets the preferred component store in this process for the sole purpose of accessing its
- * interface. If this is not called, the default IComponentStore HAL (if exists) is the preferred
- * store for this purpose. If the default IComponentStore HAL is not present, the platform
- * component store is used.
- */
-void SetPreferredCodec2ComponentStore(std::shared_ptr<C2ComponentStore> store);
-
-} // namespace android
-
-#endif // STAGEFRIGHT_CODEC2_PLATFORM_SUPPORT_H_
diff --git a/codec2/vndk/include/android-C2Debug-log.h b/codec2/vndk/include/android-C2Debug-log.h
deleted file mode 100644
index 5910228..0000000
--- a/codec2/vndk/include/android-C2Debug-log.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2UTILS_ANDROID_DEBUG_LOG_H_
-#define C2UTILS_ANDROID_DEBUG_LOG_H_
-
-/*
- * Android provides logging and debug macros. Redefine them with C2 prefix and add support for
- * opting out of verbose logs.
- */
-
-#ifdef C2_LOG_TAG
-#define LOG_TAG C2_LOG_TAG
-#endif
-
-#include <android-base/logging.h>
-
-#ifdef C2_LOG_VERBOSE
-#define C2_LOG(LEVEL) LOG(::android::base::LEVEL)
-#else
-/**
- * Use as follows:
- *
- * #define C2_LOG_TAG "tag"
- * //#define C2_LOG_VERBOSE // enable verbose logs in this file
- * #include <C2Debug.h>
- *
- * C2_LOG(DEBUG) << expr ...;
- *
- * Log levels are: VERBOSE, DEBUG, INFO, WARNING, ERROR, FATAL (aborts).
- *
- * No endl is required.
- */
-#define C2_LOG(LEVEL) \
- (::android::base::LEVEL != ::android::base::VERBOSE) && LOG(::android::base::LEVEL)
-#endif
-
-#define C2_CHECK CHECK
-#define C2_CHECK_LT CHECK_LT
-#define C2_CHECK_LE CHECK_LE
-#define C2_CHECK_EQ CHECK_EQ
-#define C2_CHECK_GE CHECK_GE
-#define C2_CHECK_GT CHECK_GT
-#define C2_CHECK_NE CHECK_NE
-
-#define C2_DCHECK DCHECK
-#define C2_DCHECK_LT DCHECK_LT
-#define C2_DCHECK_LE DCHECK_LE
-#define C2_DCHECK_EQ DCHECK_EQ
-#define C2_DCHECK_GE DCHECK_GE
-#define C2_DCHECK_GT DCHECK_GT
-#define C2_DCHECK_NE DCHECK_NE
-
-#endif // C2UTILS_ANDROID_DEBUG_LOG_H_
diff --git a/codec2/vndk/include/util/C2Debug-base.h b/codec2/vndk/include/util/C2Debug-base.h
deleted file mode 100644
index a040e42..0000000
--- a/codec2/vndk/include/util/C2Debug-base.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2UTILS_DEBUG_BASE_H_
-#define C2UTILS_DEBUG_BASE_H_
-
-#include <iostream>
-
-/**
- * Debug print utilities for Codec 2.0 base objects.
- */
-
-#define C2_DECLARE_AS_STRING_AND_DEFINE_STREAM_OUT(type) \
-const char *asString(type i, const char *def = "??"); \
-inline std::ostream& operator<<(std::ostream& os, const type &i) { \
- return os << asString(i); \
-}
-
-C2_DECLARE_AS_STRING_AND_DEFINE_STREAM_OUT(c2_status_t)
-
-
-#endif // C2UTILS_DEBUG_BASE_H_
-
diff --git a/codec2/vndk/include/util/C2Debug-interface.h b/codec2/vndk/include/util/C2Debug-interface.h
deleted file mode 100644
index 3f31875..0000000
--- a/codec2/vndk/include/util/C2Debug-interface.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2UTILS_DEBUG_INTERFACE_H_
-#define C2UTILS_DEBUG_INTERFACE_H_
-
-#include <util/C2Debug-base.h>
-#include <util/C2InterfaceUtils.h>
-
-#include <iostream>
-
-template<typename T>
-std::ostream& operator<<(std::ostream& os, const C2SupportedRange<T> &i);
-
-template<typename T>
-std::ostream& operator<<(std::ostream& os, const C2SupportedValueSet<T> &i);
-
-template<typename T>
-std::ostream& operator<<(std::ostream& os, const C2FieldSupportedValuesHelper<T> &i);
-
-#endif // C2UTILS_DEBUG_INTERFACE_H_
diff --git a/codec2/vndk/include/util/C2Debug-log.h b/codec2/vndk/include/util/C2Debug-log.h
deleted file mode 100644
index 195c4c1..0000000
--- a/codec2/vndk/include/util/C2Debug-log.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2UTILS_DEBUG_LOG_H_
-#define C2UTILS_DEBUG_LOG_H_
-
-// Platform specific debug utilities
-#ifdef __ANDROID__
-#include <android-C2Debug-log.h>
-#else
-// TODO: implement base debug utils
-#endif
-
-#endif // C2UTILS_DEBUG_LOG_H_
diff --git a/codec2/vndk/include/util/C2Debug-param.h b/codec2/vndk/include/util/C2Debug-param.h
deleted file mode 100644
index e1c1de0..0000000
--- a/codec2/vndk/include/util/C2Debug-param.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2UTILS_DEBUG_PARAM_H_
-#define C2UTILS_DEBUG_PARAM_H_
-
-#include <C2Param.h>
-#include <util/C2Debug-base.h>
-
-#include <iostream>
-
-/**
- * Debug/print declarations for objects defined in C2Param.h
- */
-C2_DECLARE_AS_STRING_AND_DEFINE_STREAM_OUT(C2FieldDescriptor::type_t)
-
-std::ostream& operator<<(std::ostream& os, const C2Param::CoreIndex &i);
-std::ostream& operator<<(std::ostream& os, const C2Param::Type &i);
-std::ostream& operator<<(std::ostream& os, const C2Param::Index &i);
-std::ostream& operator<<(std::ostream& os, const _C2FieldId &i);
-std::ostream& operator<<(std::ostream& os, const C2FieldDescriptor &i);
-std::ostream& operator<<(std::ostream& os, const C2ParamField &i);
-
-#endif // C2UTILS_DEBUG_PARAM_H_
diff --git a/codec2/vndk/include/util/C2InterfaceHelper.h b/codec2/vndk/include/util/C2InterfaceHelper.h
deleted file mode 100644
index bfb43af..0000000
--- a/codec2/vndk/include/util/C2InterfaceHelper.h
+++ /dev/null
@@ -1,752 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2UTILS_INTERFACE_HELPER_H_
-#define C2UTILS_INTERFACE_HELPER_H_
-
-#include <C2Component.h>
-#include <util/C2InterfaceUtils.h>
-
-#include <map>
-#include <mutex>
-#include <vector>
-
-#include <stddef.h>
-
-/**
- * Interface Helper
- */
-using C2R = C2SettingResultsBuilder;
-
-template<typename T, bool E=std::is_enum<T>::value>
-struct _c2_reduce_enum_to_underlying_type {
- typedef T type;
-};
-
-template<typename T>
-struct _c2_reduce_enum_to_underlying_type<T, true> {
- typedef typename std::underlying_type<T>::type type;
-};
-
-/**
- * Helper class to implement parameter reflectors. This class is dynamic and is designed to be
- * shared by multiple interfaces. This allows interfaces to add structure descriptors as needed.
- */
-class C2ReflectorHelper : public C2ParamReflector {
-public:
- C2ReflectorHelper() = default;
- virtual ~C2ReflectorHelper() = default;
- virtual std::unique_ptr<C2StructDescriptor> describe(
- C2Param::CoreIndex paramIndex) const override;
-
- /**
- * Adds support for describing the given parameters.
- *
- * \param Params types of codec 2.0 structs (or parameters) to describe
- */
- template<typename... Params>
- C2_INLINE void addStructDescriptors() {
- std::vector<C2StructDescriptor> structs;
- addStructDescriptors(structs, (_Tuple<Params...> *)nullptr);
- }
-
- /**
- * Adds support for describing a specific struct.
- *
- * \param strukt descriptor for the struct that will be moved out.
- */
- void addStructDescriptor(C2StructDescriptor &&strukt);
-
-private:
- template<typename... Params>
- class C2_HIDE _Tuple { };
-
- /**
- * Adds support for describing the given descriptors.
- *
- * \param structs List of structure descriptors to add support for
- */
- void addStructDescriptors(
- std::vector<C2StructDescriptor> &structs, _Tuple<> *);
-
- /**
- * Utility method that adds support for describing the given descriptors in a recursive manner
- * one structure at a time using a list of structure descriptors temporary.
- *
- * \param T the type of codec 2.0 struct to describe
- * \param Params rest of the structs
- * \param structs Temporary list of structure descriptors used to optimize the operation.
- */
- template<typename T, typename... Params>
- C2_INLINE void addStructDescriptors(
- std::vector<C2StructDescriptor> &structs, _Tuple<T, Params...> *) {
- structs.emplace_back((T*)nullptr);
- addStructDescriptors(structs, (_Tuple<Params...> *)nullptr);
- }
-
- mutable std::mutex _mMutex;
- std::map<C2Param::CoreIndex, const C2StructDescriptor> _mStructs; ///< descriptors
-};
-
-/**
- * Utility class that implements the codec 2.0 interface API-s for some parameters.
- *
- * This class must be subclassed.
- */
-class C2InterfaceHelper {
-public:
- /**
- * Returns the base offset of a field at |offset| that could be part of an array or part of a
- * sub-structure.
- *
- * This method does not do field size verification, e.g. if offset if obtained from a structure,
- * it will not stop at the structure boundary - this is okay, as we just want the base offset
- * here, which is the same.
- */
- static
- size_t GetBaseOffset(const std::shared_ptr<C2ParamReflector> &reflector,
- C2Param::CoreIndex index, size_t offset);
-
- /**
- * The interface helper class uses references to std::shared_ptr<T> config parameters.
- * Internally, these need to be generalized to std::shared_ptr<C2Param> refs, but the cast is
- * not allowed (as these are references). As such, this class never returns pointer to the
- * shared_ptrs.
- */
- struct ParamRef {
- template<typename T, typename enable=
- typename std::enable_if<std::is_convertible<T, C2Param>::value>::type>
- inline C2_HIDE ParamRef(std::shared_ptr<T> ¶m)
- : _mRef(reinterpret_cast<std::shared_ptr<C2Param>*>(¶m)) { }
-
- // used by comparison operator for containers
- operator std::shared_ptr<C2Param> *() const { return _mRef; }
-
- /**
- * Returns a shared pointer to the parameter.
- */
- std::shared_ptr<C2Param> get() const { return *_mRef; }
-
- private:
- std::shared_ptr<C2Param> *_mRef;
- };
-
- /**
- * Field helper.
- *
- * Contains additional information for the field: possible values, and currently supported
- * values.
- */
- class FieldHelper {
- public:
- /**
- * Creates helper for a field with given possible values.
- *
- * \param param parameter reference. The parameter does not have to be initialized at this
- * point.
- * \param field field identifier
- * \param values possible values for the field
- */
- FieldHelper(const ParamRef ¶m, const _C2FieldId &field,
- std::unique_ptr<C2FieldSupportedValues> &&values);
-
- /**
- * Creates a param-field identifier for this field. This method is called after the
- * underlying parameter has been initialized.
- *
- * \aram index
- *
- * @return C2ParamField
- */
- C2ParamField makeParamField(C2Param::Index index) const;
-
- /**
- * Sets the currently supported values for this field.
- *
- * \param values currently supported values that will be moved out
- */
- void setSupportedValues(std::unique_ptr<C2FieldSupportedValues> &&values);
-
- /**
- * Gets the currently supported values for this field. This defaults to the possible values
- * if currently supported values were never set.
- */
- const C2FieldSupportedValues *getSupportedValues() const;
-
- /**
- * Gets the possible values for this field.
- */
- const C2FieldSupportedValues *getPossibleValues() const;
-
- protected:
- // TODO: move to impl for safety
- ParamRef mParam;
- _C2FieldId mFieldId;
- std::unique_ptr<C2FieldSupportedValues> mPossible;
- std::unique_ptr<C2FieldSupportedValues> mSupported; ///< if different from possible
- };
-
- template<typename T>
- struct C2_HIDE Param;
- class ParamHelper;
-
- /**
- * Factory is an interface to get the parameter helpers from a std::shared_ptr<T> &.
- */
- class Factory {
- // \todo this may be already in ParamHelper
- virtual std::shared_ptr<C2ParamReflector> getReflector() const = 0;
-
- virtual std::shared_ptr<ParamHelper> getParamHelper(const ParamRef ¶m) const = 0;
-
- public:
- virtual ~Factory() = default;
-
- template<typename T>
- Param<T> get(std::shared_ptr<T> ¶m, std::shared_ptr<T> altValue = nullptr) const {
- return Param<T>(getParamHelper(ParamRef(param)),
- altValue == nullptr ? param : altValue,
- getReflector());
- }
- };
-
- /**
- * Typed field helper.
- */
- template<typename T>
- struct Field {
- /**
- * Constructor.
- *
- * \param helper helper for this field
- * \param index parameter index (this is needed as it is not available during parameter
- * construction) \todo remove
- */
- Field(std::shared_ptr<FieldHelper> helper, C2Param::Index index);
-
- bool supportsAtAll(T value) const {
- return C2FieldSupportedValuesHelper<T>(*_mHelper->getPossibleValues()).supports(value);
- }
-
- bool supportsNow(T value) const {
- return C2FieldSupportedValuesHelper<T>(*_mHelper->getSupportedValues()).supports(value);
- }
-
- /**
- * Creates a conflict resolution suggestion builder for this field.
- */
- C2ParamFieldValuesBuilder<T> shouldBe() const;
-
- /**
- * Creates a currently supported values builder for this field. This is only supported
- * for non-const fields to disallow setting supported values for dependencies.
- */
- C2ParamFieldValuesBuilder<T> mustBe();
-
- operator C2ParamField() const {
- return _mField;
- }
-
- // TODO
- C2R validatePossible(const T &value __unused) const {
- /// TODO
- return C2R::Ok();
- }
-
- private:
- std::shared_ptr<FieldHelper> _mHelper;
- C2ParamField _mField;
- };
-
- class ParamHelper {
- public:
- ParamHelper(ParamRef param, C2StringLiteral name, C2StructDescriptor &&);
- ParamHelper(ParamHelper &&);
- ~ParamHelper();
-
- /**
- * Finds a field descriptor.
- */
- std::shared_ptr<FieldHelper> findField(size_t baseOffs, size_t baseSize) const;
-
- /// returns the parameter ref for this parameter
- const ParamRef ref() const;
-
- /// returns the current value of this parameter as modifiable. The constness of this
- /// object determines the constness of the returned value.
- std::shared_ptr<C2Param> value();
-
- /// returns the current value of this parameter as const
- std::shared_ptr<const C2Param> value() const;
-
- /**
- * Performs a configuration change request for this parameter.
- *
- * \param value the value that is being assigned to this parameter.
- * This could be pointing to the current value of the
- * parameter. This must not change.
- * \param mayBlock whether blocking is allowed
- * \param endValue the resulting value
- * \param factory parameter factory (to access dependencies)
- * \param failures vector of failures to append any failures from this
- * operation
- *
- * \retval C2_OK configuration was successful
- * \retval C2_BAD_VALUE value is incorrect (TBD)
- * \retval C2_NO_MEMORY not enough memory to perform the assignment
- * \retval C2_TIMED_OUT configuration timed out
- * \retval C2_BLOCKING configuration requires blocking to be allowed
- * \retval C2_CORRUPTED interface is corrupted
- */
- c2_status_t trySet(
- const C2Param *value, bool mayBlock,
- bool *changed,
- Factory &factory,
- std::vector<std::unique_ptr<C2SettingResult>>* const failures);
-
- /// returns parameter indices that depend on this parameter
- const std::vector<C2Param::Index> getDownDependencies() const;
-
- /// adds a dependent parameter
- void addDownDependency(C2Param::Index index);
-
- /// returns that parameter refs for parameters that depend on this
- const std::vector<ParamRef> getDependenciesAsRefs() const;
-
- /// returns and moves out stored struct descriptor
- C2StructDescriptor retrieveStructDescriptor();
-
- /// returns the name of this parameter
- C2String name() const;
-
- /// returns the index of this parameter
- C2Param::Index index() const;
-
- /// returns the parameter descriptor
- std::shared_ptr<const C2ParamDescriptor> getDescriptor() const;
-
- /**
- * Validates param helper.
- *
- * For now, this fills field info for const params.
- *
- * \retval C2_CORRUPTED the parameter cannot be added as such
- */
- c2_status_t validate(const std::shared_ptr<C2ParamReflector> &reflector);
-
- protected:
- typedef C2ParamDescriptor::attrib_t attrib_t;
- attrib_t& attrib();
-
- /// sets the default value of this parameter
- void setDefaultValue(std::shared_ptr<C2Param> default_);
-
- /// sets the setter method
- void setSetter(std::function<C2R(const C2Param *, bool, bool *, Factory &)> setter);
-
- /// sets the getter method
- void setGetter(std::function<std::shared_ptr<C2Param>(bool)> getter);
-
- /// sets the dependencies
- void setDependencies(std::vector<C2Param::Index> indices, std::vector<ParamRef> refs);
-
- /// sets the fields and their supported values
- void setFields(std::vector<C2ParamFieldValues> &&fields);
-
- /// build this into a final ParamHelper object
- std::shared_ptr<ParamHelper> build();
-
- class Impl;
- std::unique_ptr<Impl> mImpl;
- };
-
- /**
- * Typed parameter helper. This provides access to members as well as field helpers.
- */
- template<typename T>
- struct C2_HIDE Param {
- Param(
- std::shared_ptr<ParamHelper> helper, std::shared_ptr<T> ¶m,
- std::shared_ptr<C2ParamReflector> reflector)
- : v(*param.get()),
- _mTypedParam(param),
- _mHelper(helper),
- _mReflector(reflector) { }
-
- template<typename S>
- using FieldType = Field<
- typename _c2_reduce_enum_to_underlying_type<
- typename std::remove_const<
- typename std::remove_extent<S>::type>::type>::type>;
-
- template<typename S>
- FieldType<S> F(S &field) {
- size_t offs = (uintptr_t)&field - (uintptr_t)&get();
- // this must fall either within sizeof(T) + FLEX_SIZE or param->size()
- // size_t size = sizeof(field);
- // mParam may be null
- size_t baseSize = sizeof(typename std::remove_extent<S>::type);
- size_t baseOffs = GetBaseOffset(
- _mReflector, T::CORE_INDEX, offs - sizeof(C2Param));
- if (~baseOffs == 0) {
- // C2_LOG(FATAL) << "unknown field at offset " << offs << " size " << sizeof(S)
- // << " base-size " << baseSize;
- // __builtin_trap();
- } else {
- baseOffs += sizeof(C2Param);
- }
-
- std::shared_ptr<FieldHelper> helper = _mHelper->findField(baseOffs, baseSize);
- return FieldType<S>(helper, _mTypedParam->index());
- }
-
- // const Param have const Fields; however, remove const from S
- template<typename S>
- const FieldType<S> F(S &field) const {
- return const_cast<const FieldType<S>>(const_cast<Param *>(this)->F(field));
- }
-
- /// Returns a const ref value of this const param.
- const T &get() const {
- return *_mTypedParam.get();
- }
-
- /// Returns a modifiable ref value of this non-const param.
- T &set() {
- return *_mTypedParam.get();
- }
-
- /// Const-reference to the value.s
- T const &v;
-
- private:
- std::shared_ptr<T> _mTypedParam;
- std::shared_ptr<ParamHelper> _mHelper;
- std::shared_ptr<C2ParamReflector> _mReflector;
- };
-
- template<typename T>
- using C2P = Param<T>;
-
- /**
- * Templated move builder class for a parameter helper.
- */
- template<typename T>
- class C2_HIDE ParamBuilder : private ParamHelper {
- public:
- /** Construct the parameter builder from minimal info required. */
- ParamBuilder(std::shared_ptr<T> ¶m, C2StringLiteral name)
- : ParamHelper(param, name, C2StructDescriptor((T*)nullptr)),
- mTypedParam(¶m) {
- attrib() = attrib_t::IS_PERSISTENT;
- }
-
- /** Makes this parameter required. */
- inline ParamBuilder &required() {
- attrib() |= attrib_t::IS_REQUIRED;
- return *this;
- }
-
- /** Makes this parameter transient (not persistent). */
- inline ParamBuilder &transient() {
- attrib() &= ~attrib_t::IS_PERSISTENT;
- return *this;
- }
-
- /** Makes this parameter hidden (not exposed in JAVA API). */
- inline ParamBuilder &hidden() {
- attrib() |= attrib_t::IS_HIDDEN;
- return *this;
- }
-
- /** Makes this parameter internal (not exposed to query/settings). */
- inline ParamBuilder &internal() {
- attrib() |= attrib_t::IS_INTERNAL;
- return *this;
- }
-
- /** Adds default value. Must be added exactly once. */
- inline ParamBuilder &withDefault(std::shared_ptr<T> default_) {
- // CHECK(!mDefaultValue);
- // WARN_IF(!default_); // could be nullptr if OOM
- // technically, this could be in the parent
- *mTypedParam = std::shared_ptr<T>(T::From(C2Param::Copy(*default_).release()));
- setDefaultValue(default_);
- std::shared_ptr<T> *typedParam = mTypedParam;
- setGetter([typedParam](bool) -> std::shared_ptr<C2Param> {
- return std::static_pointer_cast<C2Param>(*typedParam);
- });
- return *this;
- }
-
- /** Adds default value. Must be added exactly once. */
- inline ParamBuilder &withDefault(T *default_) {
- return withDefault(std::shared_ptr<T>(default_));
- }
-
- /** Adds all fields to this parameter with their possible values. */
- inline ParamBuilder &withFields(std::vector<C2ParamFieldValues> &&fields_) {
- setFields(std::move(fields_));
- return *this;
- }
-
- /**
- * Adds a constant value (also as default). Must be added exactly once.
- *
- * Const parameters by definition have no dependencies.
- */
- inline ParamBuilder &withConstValue(std::shared_ptr<T> default_) {
- attrib() |= attrib_t::IS_CONST;
- setSetter([default_](
- const C2Param *value, bool mayBlock __unused, bool *changed, Factory &) -> C2R {
- *changed = false;
- const T *typedValue = T::From(value);
- if (typedValue == nullptr) {
- return C2R::Corrupted(); // TODO BadValue/Invalid. This should not happen here.
- }
- if (*typedValue != *default_) {
- return C2R::Corrupted(); // TODO ReadOnly(*default_);
- }
- *changed = false;
- return C2R::Ok();
- });
- return withDefault(default_);
- }
-
- /** Adds constant value (also as default). Must be added exactly once. */
- inline ParamBuilder &withConstValue(T *default_) {
- return withConstValue(std::shared_ptr<T>(default_));
- }
-
- /**
- * Use a strict setter.
- *
- * \param fn strict setter
- * \param deps dependencies (references)
- */
- template<typename ... Deps>
- inline ParamBuilder &withSetter(
- C2R (*fn)(bool, const C2P<T> &, C2P<T> &, const C2P<Deps> &...),
- std::shared_ptr<Deps>& ... deps) {
- attrib() |= attrib_t::IS_STRICT;
- std::shared_ptr<T> *typedParam = mTypedParam;
- setSetter([typedParam, fn, &deps...](
- const C2Param *value, bool mayBlock, bool *changed, Factory &factory) -> C2R {
- *changed = false;
- const T *typedValue = T::From(value);
- if (typedValue == nullptr) {
- return C2R::Corrupted(); // TODO BadValue/Invalid. This should not happen here.
- }
- // Do copy-on-change for parameters in this helper so change can be detected by
- // a change of the pointer. Do this by working on a proposed value.
- std::shared_ptr<T> proposedValue =
- std::shared_ptr<T>(T::From(C2Param::Copy(*value).release()));
- if (proposedValue == nullptr) {
- return C2R::NoMemory(value->index());
- }
- C2P<T> oldValue = factory.get(*typedParam);
- // Get a parameter helper with value pointing to proposedValue
- C2P<T> helper = factory.get(*typedParam, proposedValue);
- C2R result = fn(mayBlock, oldValue, helper, factory.get(deps)...);
-
- // If value changed, copy result to current value
- if (helper.get() != *typedParam->get()) {
- *typedParam = proposedValue;
- *changed = true;
- }
- return result;
- });
- setDependencies(std::vector<C2Param::Index>{ deps->index()... },
- std::vector<ParamRef>{ ParamRef(deps)... });
- return *this;
- }
-
- /**
- * Use a non-strict setter.
- *
- * \param fn non-strict setter
- * \param deps dependencies (references)
- */
- template<typename ... Deps>
- inline ParamBuilder &withSetter(
- C2R (*fn)(bool, C2P<T> &, const C2P<Deps> &...), std::shared_ptr<Deps>& ... deps) {
- std::shared_ptr<T> *typedParam = mTypedParam;
- setSetter([typedParam, fn, &deps...](
- const C2Param *value, bool mayBlock, bool *changed, Factory &factory) -> C2R {
- *changed = false;
- const T *typedValue = T::From(value);
- if (typedValue == nullptr) {
- return C2R::Corrupted(); // TODO BadValue/Invalid. This should not happen here.
- }
- // Do copy-on-change for parameters in this helper so change can be detected by
- // a change of the pointer. Do this by working on a proposed value.
- std::shared_ptr<T> proposedValue =
- std::shared_ptr<T>(T::From(C2Param::Copy(*value).release()));
- if (proposedValue == nullptr) {
- return C2R::NoMemory(value->index());
- }
- // Get a parameter helper with value pointing to proposedValue
- C2P<T> helper = factory.get(*typedParam, proposedValue);
- C2R result = fn(mayBlock, helper, factory.get(deps)...);
-
- // If value changed, copy result to current value
- if (helper.get() != *typedParam->get()) {
- *typedParam = proposedValue;
- *changed = true;
- }
- return result;
- });
- setDependencies(std::vector<C2Param::Index>{ deps->index()... },
- std::vector<ParamRef>{ ParamRef(deps)... });
- return *this;
- }
-
- /**
- * Marks this a calculated (read-only) field.
- *
- * \param fn non-strict setter (calculator)
- * \param deps dependencies (references)
- */
- template<typename ... Deps>
- inline ParamBuilder &calculatedAs(
- C2R (*fn)(bool, C2P<T> &, const C2P<Deps> &...), std::shared_ptr<Deps>& ... deps) {
- attrib() |= attrib_t::IS_READ_ONLY;
- return withSetter(fn, std::forward<decltype(deps)>(deps)...);
- }
-
- inline std::shared_ptr<ParamHelper> build() {
- return ParamHelper::build();
- }
-
- protected:
- std::shared_ptr<T> *mTypedParam;
- };
-
- template<typename T>
- static ParamBuilder<T> DefineParam(std::shared_ptr<T> ¶m, C2StringLiteral name) {
- return ParamBuilder<T>(param, name);
- }
-
-public:
- c2_status_t query(
- const std::vector<C2Param*> &stackParams,
- const std::vector<C2Param::Index> &heapParamIndices,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2Param>>* const heapParams) const;
-
- /**
- * Helper implementing config calls as well as other configuration updates.
- *
- * This method is virtual, so implementations may provide wrappers around it (and perform
- * actions just before and after a configuration).
- *
- * \param params
- * \param mayBlock
- * \param failures
- * \param updateParams if true, the updated parameter values are copied back into the arguments
- * passed in |params|
- * \param changes pointed to a vector to receive settings with their values changed. If not
- * null, settings with their values changed are added to this.
- * \return result from config
- */
- virtual c2_status_t config(
- const std::vector<C2Param*> ¶ms, c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2SettingResult>>* const failures,
- bool updateParams = true,
- std::vector<std::shared_ptr<C2Param>> *changes = nullptr);
-
- c2_status_t querySupportedParams(
- std::vector<std::shared_ptr<C2ParamDescriptor>> *const params) const;
-
- c2_status_t querySupportedValues(
- std::vector<C2FieldSupportedValuesQuery> &fields, c2_blocking_t mayBlock) const;
-
- std::shared_ptr<C2ReflectorHelper> getReflector() {
- return mReflector;
- }
-
- typedef std::unique_lock<std::mutex> Lock;
-
- /**
- * Locks the interface and returns a lock. This lock must be unlocked or released without
- * calling any other blocking call.
- */
- Lock lock() const;
-
-private:
- void setInterfaceAddressBounds(uintptr_t start, uintptr_t end) {
- // TODO: exclude this helper
- (void)start;
- (void)end;
- }
-
-protected:
- mutable std::mutex mMutex;
- std::shared_ptr<C2ReflectorHelper> mReflector;
- struct FactoryImpl;
- std::shared_ptr<FactoryImpl> _mFactory;
-
- C2InterfaceHelper(std::shared_ptr<C2ReflectorHelper> reflector);
-
- /**
- * Adds a parameter to this interface.
- * \note This method CHECKs.
- *
- * \param param parameter to add.
- */
- void addParameter(std::shared_ptr<ParamHelper> param);
-
- /**
- * Returns the dependency index for a parameter.
- *
- * \param ix the index of the parameter
- */
- size_t getDependencyIndex_l(C2Param::Index ix) const;
-
- virtual ~C2InterfaceHelper() = default;
-
- /**
- * Sets subclass instance's address and size.
- *
- * \todo allow subclass to specify parameter address range directly (e.g. do not assume that
- * they are local to the subclass instance)
- *
- * \param T type of the derived instance
- * \param instance pointer to the derived instance
- */
- template<typename T>
- inline C2_HIDE void setDerivedInstance(T *instance) {
- setInterfaceAddressBounds((uintptr_t)instance, (uintptr_t)(instance + 1));
- }
-
- C2_DO_NOT_COPY(C2InterfaceHelper);
-};
-
-/**
- * Creates a C2ParamFieldValuesBuilder class for a field of a parameter
- *
- * \param spParam a configuration parameter in an interface class subclassed from C2InterfaceHelper.
- * \param field a field of such parameter
- */
-#define C2F(spParam, field) \
- C2ParamFieldValuesBuilder< \
- typename _c2_reduce_enum_to_underlying_type< \
- typename std::remove_reference< \
- typename std::remove_extent< \
- decltype(spParam->field)>::type>::type>::type>( \
- C2ParamField(spParam.get(), &spParam->field))
-
-#endif // C2UTILS_INTERFACE_HELPER_H_
diff --git a/codec2/vndk/include/util/C2InterfaceUtils.h b/codec2/vndk/include/util/C2InterfaceUtils.h
deleted file mode 100644
index e9037e5..0000000
--- a/codec2/vndk/include/util/C2InterfaceUtils.h
+++ /dev/null
@@ -1,1135 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2UTILS_INTERFACE_UTILS_H_
-#define C2UTILS_INTERFACE_UTILS_H_
-
-#include <C2Param.h>
-#include <C2Work.h>
-
-#include <cmath>
-#include <iterator>
-#include <limits>
-#include <type_traits>
-
-/**
- * Helper class to map underlying types to C2Value types as well as to print field values. This is
- * generally the same as simply the underlying type except for characters (STRING) and bytes (BLOB).
- */
-template<typename T>
-struct C2_HIDE _C2FieldValueHelper {
- typedef T ValueType;
- inline static std::ostream& put(std::ostream &os, const C2Value::Primitive &p) {
- return os << p.ref<T>();
- }
-};
-
-template<>
-struct C2_HIDE _C2FieldValueHelper<uint8_t> {
- typedef uint32_t ValueType;
- static std::ostream& put(std::ostream &os, const C2Value::Primitive &p);
-};
-
-template<>
-struct C2_HIDE _C2FieldValueHelper<char> {
- typedef int32_t ValueType;
- static std::ostream& put(std::ostream &os, const C2Value::Primitive &p);
-};
-
-/**
- * Supported value range utility for a field of a given type.
- *
- * This mimics C2FieldSupportedValue for RANGE type.
- */
-template<typename T>
-class C2SupportedRange {
- typedef typename _C2FieldValueHelper<T>::ValueType ValueType;
-
-//private:
- constexpr static T MIN_VALUE = std::numeric_limits<T>::min();
- constexpr static T MAX_VALUE = std::numeric_limits<T>::max();
- constexpr static T MIN_STEP = std::is_floating_point<T>::value ? 0 : 1;
-
-public:
- /**
- * Constructs an empty range with no supported values.
- *
- * \note This is a specializated supported range representation that is only used for
- * this object - it is equivalent to the EMPTY type in C2FieldSupportedValues.
- */
- inline static constexpr C2SupportedRange<T> None() {
- return C2SupportedRange(MAX_VALUE, MIN_VALUE);
- }
-
- /**
- * Constructs a range with all values supported.
- */
- inline static constexpr C2SupportedRange<T> Any() {
- return C2SupportedRange(MIN_VALUE, MAX_VALUE);
- }
-
- /**
- * Constructs a range with a single supported value.
- *
- * \param value the sole supported value
- */
- inline static constexpr C2SupportedRange<T> EqualTo(T value) {
- return C2SupportedRange(value, value);
- }
-
- /**
- * Constructs a range with supported values greater than a given value.
- *
- * \param value the given value
- */
- inline static C2SupportedRange<T> GreaterThan(T value) {
- return (value == MAX_VALUE ? None() :
- std::is_floating_point<T>::value ?
- C2SupportedRange(std::nextafter(value, MAX_VALUE), MAX_VALUE) :
- C2SupportedRange(value + MIN_STEP, MAX_VALUE));
- }
-
- /**
- * Constructs a range with supported values greater than or equal to a given value.
- *
- * \param value the given value
- */
- inline static constexpr C2SupportedRange<T> GreaterThanOrEqualTo(T value) {
- return C2SupportedRange(value, MAX_VALUE);
- }
-
- /**
- * Constructs a range with supported values greater than or equal to (aka not less than) a given
- * value.
- *
- * \param value the given value
- */
- inline static constexpr C2SupportedRange<T> NotLessThan(T value) {
- return GreaterThanOrEqualTo(value);
- }
-
- /**
- * Constructs a range with supported values less than or equal to a given value.
- *
- * \param value the given value
- */
- inline static constexpr C2SupportedRange<T> LessThanOrEqualTo(T value) {
- return C2SupportedRange(MIN_VALUE, value);
- }
-
- /**
- * Constructs a range with supported values less than or equal to (aka not greater than) a given
- * value.
- *
- * \param value the given value
- */
- inline static constexpr C2SupportedRange<T> NotGreaterThan(T value) {
- return LessThanOrEqualTo(value);
- }
-
- /**
- * Constructs a range with supported values less than a given value.
- *
- * \param value the given value
- */
- inline static C2SupportedRange<T> LessThan(T value) {
- return (value == MIN_VALUE ? None() :
- std::is_floating_point<T>::value ?
- C2SupportedRange(MIN_VALUE, std::nextafter(value, MIN_VALUE)) :
- C2SupportedRange(MIN_VALUE, value - MIN_STEP));
- }
-
- /**
- * Constructs a continuous or arithmetic range between two values.
- *
- * \param min the lower value
- * \param max the higher value (if this is lower than |min| the range will be empty)
- * \param step the step of the arithmetic range. (If this is 0 for floating point types or 1 for
- * integer types, the constructed range is continuous)
- */
- inline static constexpr
- C2SupportedRange<T> InRange(T min, T max, T step = MIN_STEP) {
- return C2SupportedRange(min, max, step);
- }
-
- /**
- * Constructs a range over a geometric series between two values.
- *
- * \param min the lower bound of the range. This value is always part of the constructed range
- * as long as it is not greater than |max|.
- * \param max the upper bound of the range. This value is only part of the constructed
- * range if it is part of the geometric series.
- * \param num the numerator of the geometric series.
- * \param denom the denominator of the geometric series.
- */
- inline static constexpr
- C2SupportedRange<T> InSeries(T min, T max, T num, T denom) {
- return C2SupportedRange(min, max, 0, num, denom);
- }
-
- /**
- * Constructs a range over a multiply-accumulate series between two values.
- *
- * \param min the lower bound of the range. This value is always part of the constructed range
- * as long as it is not greater than |max|.
- * \param max the upper bound of the range. This value is only part of the constructed
- * range if it is part of the series.
- * \param step the accumulator of the multiply-accumulate series
- * \param num the numerator of the multiply-accumulate series.
- * \param denom the denominator of the multiply-accumulate series.
- */
- inline static constexpr
- C2SupportedRange<T> InMacSeries(T min, T max, T step, T num, T denom) {
- return C2SupportedRange(min, max, step, num, denom);
- }
-
- /**
- * Constructs a range from a generic C2FieldSupportedValues object. This will be an empty
- * range if the supported values are not of RANGE type.
- *
- * \param values the supported values object
- */
- C2SupportedRange(const C2FieldSupportedValues &values);
-
- /**
- * Returns whether this range is empty.
- */
- inline constexpr bool isEmpty() const {
- return _mMin > _mMax;
- }
-
- /**
- * Returns whether this range is valid.
- *
- * Ranges are valid if they are continuous or monotonic.
- */
- inline constexpr bool isValid() const {
- // TODO: handle overflow or negative series
- return _mDenom > 0 && _mNum >= _mDenom && _mMin * (_mDenom - _mNum) < _mStep * _mDenom;
- }
-
- /**
- * Returns whether a value is part of this range.
- *
- * \param value the value to check.
- */
- bool contains(T value) const;
-
- /**
- * Returns a new range that is the intersection of this range and another, if it is
- * representable as a range object.
- *
- * \param limit the other range
- */
- C2SupportedRange<T> limitedTo(const C2SupportedRange<T> &limit) const;
-
- /**
- * Converts this object to a C2FieldSupportedValues object.
- */
- inline operator C2FieldSupportedValues() const {
- return C2FieldSupportedValues(_mMin, _mMax, _mStep, _mNum, _mDenom);
- }
-
- /**
- * Returns the lower bound and starting point of this range.
- */
- inline C2_HIDE constexpr T min() const { return _mMin; }
-
- /**
- * Returns the upper bound of this range.
- */
- inline C2_HIDE constexpr T max() const { return _mMax; }
-
- /**
- * Returns the step of this range.
- */
- inline C2_HIDE constexpr T step() const { return _mStep; }
-
- /**
- * Returns the numerator of this range.
- */
- inline C2_HIDE constexpr T num() const { return _mNum; }
-
- /**
- * Returns the denominator of this range.
- */
- inline C2_HIDE constexpr T denom() const { return _mDenom; }
-
-private:
- /**
- * Returns whether x[i...] is all values between _mMin and _mMax.
- */
- inline C2_HIDE constexpr bool isSimpleRange() const {
- return _mStep == MIN_STEP && _mNum == 1 && _mDenom == 1;
- }
-
- /**
- * Returns whether x[i...] is defined as such:
- * x[i + 1] = x[i] + _mStep, where _mStep > 0 and _mMin <= x[i] <= _mMax
- */
- inline C2_HIDE constexpr bool isArithmeticSeries() const {
- return _mStep > MIN_STEP && _mNum == 1 && _mDenom == 1;
- }
-
- /**
- * Returns whether x[i...] is defined as such:
- * x[i] = x[0] * (_mNum / _mDenom) ^ i (with rounding), where _mNum > _mDenom > 0 and x[0] > 0
- */
- inline C2_HIDE constexpr bool isGeometricSeries() const {
- return _mMin > 0 && _mStep == 0 && _mNum > _mDenom && _mDenom > 0;
- }
-
- /**
- * Returns whether x[i...] is defined as such:
- * x[i + 1] = x[i] * _mNum / _mDenom + _mStep (with rounding), while x[i + 1] > x[i], where
- * _mStep != 0, _mDenom > 0 and _mNum > 0
- */
- inline C2_HIDE constexpr bool isMacSeries() const {
- return _mStep != 0 && _mNum > 0 && _mDenom > 0;
- }
-
- /**
- * Constructs an arithmetic or continuous range.
- *
- * \param min the lower value
- * \param max the higher value (if this is lower than |min| the range will be empty)
- * \param step the step of the arithmetic range. (If this is 0 for floating point types or 1 for
- * integer types, the constructed range is continuous)
- */
- constexpr C2_HIDE C2SupportedRange(T min, T max, T step = T(std::is_floating_point<T>::value ? 0 : 1))
- : _mMin(min), _mMax(max), _mStep(step), _mNum(1), _mDenom(1) { }
-
- /**
- * Constructs a range over a geomertic sor multiply-accumulate series.
- *
- * \param min the lower bound of the range. This value is always part of the constructed range
- * as long as it is not greater than |max|.
- * \param max the upper bound of the range. This value is only part of the constructed
- * range if it is part of the geometric series.
- * \param step the accumulator of the multiply-accumulate series. This is 0 for a pure geometric
- * series
- * \param num the numerator of the geometric series.
- * \param denom the denominator of the geometric series.
- */
- constexpr C2_HIDE C2SupportedRange(T min, T max, T step, T num, T den)
- : _mMin(min), _mMax(max), _mStep(step), _mNum(num), _mDenom(den) { }
-
- T _mMin; ///< lower bound and starting point
- T _mMax; ///< upper bound
- T _mStep; ///< step of an arithmetic series (0 if continuous floating point range)
- T _mNum; ///< numerator of a geometric series
- T _mDenom; ///< denominator of a geometric series
-};
-
-/**
- * Ordered supported flag set for a field of a given type.
- */
-template<typename T>
-class C2SupportedFlags {
- typedef typename _C2FieldValueHelper<T>::ValueType ValueType;
-
-public:
- /**
- * Constructs an empty flag set.
- *
- * \note This is a specializated supported flags representation that is only used for
- * this object - it is equivalent to the EMPTY type in C2FieldSupportedValues.
- */
- static inline C2SupportedFlags<T> None() {
- return C2SupportedFlags(std::initializer_list<C2Value::Primitive>());
- }
-
- /**
- * Constructs a flags set of given flags.
- *
- * \param flags the ordered set of flags as an initializer list.
- * \param min minimum set of flags to be set.
- */
- static inline C2SupportedFlags<T> Flags(const std::initializer_list<T> flags, T min = T(0)) {
- return C2SupportedFlags(min, flags);
- }
-
- /**
- * Constructs a flags set of given flags.
- *
- * \param flags the ordered set of flags.
- * \param min minimum set of flags to be set.
- */
- static inline C2SupportedFlags<T> Flags(const std::vector<T> &flags, T min = T(0)) {
- return C2SupportedFlags(min, flags);
- }
-
- /**
- * Constructs a flag set from a generic C2FieldSupportedValues object. This will be an empty
- * set if the supported values are not of FLAGS type.
- *
- * \param values the supported values object
- */
- C2SupportedFlags<T>(const C2FieldSupportedValues &values) {
- if (values.type == C2FieldSupportedValues::FLAGS) {
- _mValues.insert(_mValues.end(), values.values.begin(), values.values.end());
- }
- }
-
- /**
- * Returns whether this set is empty.
- */
- constexpr bool isEmpty() const {
- return _mValues.empty();
- }
-
- /**
- * Returns whether a value is part of this set.
- *
- * \param value the value to check.
- */
- bool contains(T value) const;
-
- /**
- * Returns a new flag set that is the intersection of this set and another.
- *
- * \param limit the other value set
- */
- C2SupportedFlags<T> limitedTo(const C2SupportedFlags<T> &limit) const;
-
- /**
- * Converts this object to a C2FieldSupportedValues object.
- */
- operator C2FieldSupportedValues() const {
- return C2FieldSupportedValues(!isEmpty() /* flags */, _mValues);
- }
-
- /**
- * Returns the ordered set of flags of this object.
- */
- const std::vector<T> flags() const;
-
- /**
- * Returns the minimum set of flags for this object.
- */
- T min() const;
-
- /**
- * Clears this supported value set.
- */
- inline void clear() {
- _mValues.clear();
- }
-
-private:
- /**
- * Constructs a flag set directly from an internal representation.
- *
- * \param values a vector containing the minimum flag set followed by the set of flags
- */
- C2SupportedFlags(std::vector<C2Value::Primitive> &&values)
- : _mValues(values) {
- }
-
- /**
- * Constructs a flag set from a set of flags and a minimum flag set.
- *
- * \param flags the set
- */
- C2SupportedFlags(T min, const std::vector<T> &flags) {
- _mValues.emplace_back(min);
- for (T elem : flags) {
- _mValues.emplace_back(elem);
- }
- }
-
- /**
- * Constructs a flag set from a set of initializer list values and a minimum flag set
- *
- * \param flags the set
- */
- C2SupportedFlags(T min, const std::initializer_list<T> flags) {
- _mValues.emplace_back(min);
- for (T elem : flags) {
- _mValues.emplace_back(elem);
- }
- }
-
- std::vector<C2Value::Primitive> _mValues; ///< the minimum flag set followed by the set of flags
-};
-
-/**
- * Ordered supported value set for a field of a given type.
- */
-template<typename T>
-class C2SupportedValueSet {
- typedef typename _C2FieldValueHelper<T>::ValueType ValueType;
-
-public:
- /**
- * Constructs an empty value set.
- *
- * \note This is a specializated supported range representation that is only used for
- * this object - it is equivalent to the EMPTY type in C2FieldSupportedValues.
- */
- static inline C2SupportedValueSet<T> None() {
- return C2SupportedValueSet({ });
- }
-
- /**
- * Constructs a value set of given values.
- *
- * \param values the ordered set of values as an initializer list.
- */
- static inline C2SupportedValueSet<T> OneOf(const std::initializer_list<T> values) {
- return C2SupportedValueSet(values);
- }
-
- /**
- * Constructs a value set of given values.
- *
- * \param values the ordered set of values.
- */
- static inline C2SupportedValueSet<T> OneOf(const std::vector<T> &values) {
- return C2SupportedValueSet(values);
- }
-
- /**
- * Constructs a value set from a generic C2FieldSupportedValues object. This will be an empty
- * set if the supported values are not of VALUES type.
- *
- * \param values the supported values object
- */
- C2SupportedValueSet<T>(const C2FieldSupportedValues &values) {
- if (values.type == C2FieldSupportedValues::VALUES) {
- _mValues.insert(_mValues.end(), values.values.begin(), values.values.end());
- }
- }
-
- /**
- * Returns whether this range is empty.
- */
- constexpr bool isEmpty() const {
- return _mValues.empty();
- }
-
- /**
- * Returns whether a value is part of this set.
- *
- * \param value the value to check.
- */
- bool contains(T value) const;
-
- /**
- * Returns a new value set that is the intersection of this set and another.
- *
- * \param limit the other value set
- */
- C2SupportedValueSet<T> limitedTo(const C2SupportedValueSet<T> &limit) const;
-
- /**
- * Returns a new value set that is the intersection of this set and a value range.
- *
- * \param limit the other range
- */
- C2SupportedValueSet<T> limitedTo(const C2SupportedRange<T> &limit) const;
-
- /**
- * Returns a new value set that is the intersection of this set and a flag set.
- *
- * \param limit the other flag set
- */
- C2SupportedValueSet<T> limitedTo(const C2SupportedFlags<T> &limit) const;
-
- /**
- * Converts this object to a C2FieldSupportedValues object.
- */
- operator C2FieldSupportedValues() const {
- return C2FieldSupportedValues(false /* flags */, _mValues);
- }
-
- /**
- * Returns the ordered set of values of this object.
- */
- const std::vector<T> values() const;
-
- /**
- * Clears this supported value set.
- */
- inline void clear() {
- _mValues.clear();
- }
-
-private:
- /**
- * Constructs a value set from a set of C2Value::Primitive values.
- *
- * \param values the set
- */
- C2SupportedValueSet(std::vector<C2Value::Primitive> &&values)
- : _mValues(values) {
- }
-
- /**
- * Constructs a value set from a set of values.
- *
- * \param values the set
- */
- C2SupportedValueSet(const std::vector<T> &values) {
- for (T elem : values) {
- _mValues.emplace_back(elem);
- }
- }
-
- /**
- * Constructs a value set from a set of initializer list values
- *
- * \param values the set
- */
- C2SupportedValueSet(const std::initializer_list<T> values) {
- for (T elem : values) {
- _mValues.emplace_back(elem);
- }
- }
-
- std::vector<C2Value::Primitive> _mValues; ///< the supported set of values
-};
-
-/**
- * Helper class to handle C2FieldSupporteValues object for fields of various types.
- */
-template<typename T>
-class C2FieldSupportedValuesHelper;
-
-// templated operator must be predeclared for friend declaration
-template<typename T>
-std::ostream& operator<<(std::ostream& os, const C2FieldSupportedValuesHelper<T> &i);
-
-template<typename T>
-class C2FieldSupportedValuesHelper {
-public:
- /**
- * Creates a helper for a specific type from a generic C2FieldSupportedValues struct.
- */
- C2FieldSupportedValuesHelper(const C2FieldSupportedValues &values);
-
- // TRICKY: needed for std::unique_ptr<Impl> declaration
- ~C2FieldSupportedValuesHelper();
-
- // support copy constructor/operator
- C2FieldSupportedValuesHelper(const C2FieldSupportedValuesHelper &);
- C2FieldSupportedValuesHelper& operator=(const C2FieldSupportedValuesHelper &);
-
- bool supports(T value) const;
-
-private:
- // use pimpl as implementation may change in the future
- struct Impl;
- std::unique_ptr<Impl> _mImpl;
-
- friend std::ostream& operator<< <T>(std::ostream& os, const C2FieldSupportedValuesHelper<T> &i);
- //friend std::ostream& operator<<(std::ostream& os, const C2FieldSupportedValuesHelper &i);
-};
-
-/**
- * Builder for supported values for a field of a given type.
- *
- * This builder can be used to successively restrict the supported values for a field. Upon
- * creation, there are no supported values specified - which for this builder means that all
- * values are supported.
- */
-template<typename T>
-class C2ParamFieldValuesBuilder {
-public:
- /**
- * Creates a builder with no defined values - but implicitly any value allowed.
- */
- C2ParamFieldValuesBuilder(const C2ParamField &field);
-
- /**
- * Get C2ParamFieldValues from this builder.
- */
- operator C2ParamFieldValues() const;
-
- /**
- * Define the supported values as the currently supported values of this builder.
- */
- C2ParamFieldValuesBuilder<T> &any();
-
- /**
- * Restrict (and thus define) the supported values to none.
- *
- * \note This really should not be used from the builder as all params must have supported
- * values, but is here in case this is really the case.
- */
- C2ParamFieldValuesBuilder<T> &none();
-
- /**
- * Restrict (and thus define) the supported values to |value| alone.
- */
- C2ParamFieldValuesBuilder<T> &equalTo(T value);
-
- /**
- * Restrict (and thus define) the supported values to values greater than |value|.
- */
- inline C2ParamFieldValuesBuilder<T> &greaterThan(T value) {
- return limitTo(C2SupportedRange<T>::GreaterThan(value));
- }
-
- /**
- * Restrict (and thus define) the supported values to values greater than or equal to |value|.
- */
- C2ParamFieldValuesBuilder<T> &greaterThanOrEqualTo(T value) {
- return limitTo(C2SupportedRange<T>::GreaterThanOrEqualTo(value));
- }
-
- /**
- * Restrict (and thus define) the supported values to values greater than or equal to |value|.
- */
- C2ParamFieldValuesBuilder<T> ¬LessThan(T value) {
- return limitTo(C2SupportedRange<T>::NotLessThan(value));
- }
-
- /**
- * Restrict (and thus define) the supported values to values less than or equal to |value|.
- */
- C2ParamFieldValuesBuilder<T> &lessThanOrEqualTo(T value) {
- return limitTo(C2SupportedRange<T>::LessThanOrEqualTo(value));
- }
-
- /**
- * Restrict (and thus define) the supported values to values less than or equal to |value|.
- */
- C2ParamFieldValuesBuilder<T> ¬GreaterThan(T value) {
- return limitTo(C2SupportedRange<T>::NotGreaterThan(value));
- }
-
- /**
- * Restrict (and thus define) the supported values to values less than |value|.
- */
- C2ParamFieldValuesBuilder<T> &lessThan(T value) {
- return limitTo(C2SupportedRange<T>::LessThan(value));
- }
-
- /**
- * Restrict (and thus define) the supported values to values in the range of [ |min|, |max| ]
- * with optional |step|.
- */
- C2ParamFieldValuesBuilder<T> &inRange(
- T min, T max, T step = std::is_floating_point<T>::value ? T(0) : T(1)) {
- return limitTo(C2SupportedRange<T>::InRange(min, max, step));
- }
-
- /**
- * Restrict (and thus define) the supported values to values in the geometric series starting
- * from |min| with factor |num| / |denom|, not greater than |max|.
- */
- C2ParamFieldValuesBuilder<T> &inSeries(T min, T max, T num, T denom) {
- return limitTo(C2SupportedRange<T>::InSeries(min, max, num, denom));
- }
-
- /**
- * Restrict (and thus define) the supported values to values in the multiply-accumulate series
- * starting from |min| with factor |num| / |denom| and |step|, not greater than |max|.
- */
- C2ParamFieldValuesBuilder<T> &inMacSeries(T min, T max, T step, T num, T denom) {
- return limitTo(C2SupportedRange<T>::InMacSeries(min, max, step, num, denom));
- }
-
- /**
- * Restrict (and thus define) the supported values to values in |values|.
- */
- C2ParamFieldValuesBuilder<T> &oneOf(const std::initializer_list<T> values) {
- return limitTo(C2SupportedValueSet<T>::OneOf(values));
- }
-
- /**
- * Restrict (and thus define) the supported values to values in |values|.
- */
- C2ParamFieldValuesBuilder<T> &oneOf(const std::vector<T> &values) {
- return limitTo(C2SupportedValueSet<T>::OneOf(values));
- }
-
- /**
- * Restrict (and thus define) the supported values to flags in |flags| with at least |min|
- * set.
- */
- C2ParamFieldValuesBuilder<T> &flags(const std::vector<T> &flags, T min = T(0)) {
- return limitTo(C2SupportedFlags<T>::Flags(flags, min));
- }
-
- /**
- * Restrict (and thus define) the supported values to flags in |values| with at least |min|
- * set.
- */
- C2ParamFieldValuesBuilder<T> &flags(const std::initializer_list<T> flags, T min = T(0)) {
- return limitTo(C2SupportedFlags<T>::Flags(flags, min));
- }
-
- virtual ~C2ParamFieldValuesBuilder();
-
- // support copy constructor/operator
- C2ParamFieldValuesBuilder(const C2ParamFieldValuesBuilder &);
- C2ParamFieldValuesBuilder& operator=(const C2ParamFieldValuesBuilder &);
-
-private:
- /**
- * Restrict (and thus define) the supported values to a value set.
- */
- C2ParamFieldValuesBuilder<T> &limitTo(const C2SupportedValueSet<T> &limit);
-
- /**
- * Restrict (and thus define) the supported values to a value set.
- */
- C2ParamFieldValuesBuilder<T> &limitTo(const C2SupportedFlags<T> &limit);
-
- /**
- * Restrict (and thus define) the supported values to a range.
- */
- C2ParamFieldValuesBuilder<T> &limitTo(const C2SupportedRange<T> &limit);
-
- struct Impl;
- std::unique_ptr<Impl> _mImpl;
-};
-
-/**
- * Builder for a list of setting conflicts.
- */
-class C2SettingConflictsBuilder {
-public:
- /**
- * Creates an empty list of setting conflicts.
- */
- C2SettingConflictsBuilder();
-
- /**
- * Creates a list containing a single setting conflict.
- */
- C2SettingConflictsBuilder(C2ParamFieldValues &&conflict);
-
- /**
- * Adds a conflict to the current list of conflicts and returns this
- */
- C2SettingConflictsBuilder& with(C2ParamFieldValues &&conflict);
-
- /**
- * Gets the current list of conflicts (and moves them out of this builder.)
- * (this is why it is not const)
- */
- std::vector<C2ParamFieldValues> retrieveConflicts();
-
- /**
- * Returns whether the current list is empty.
- */
- inline bool empty() const { return _mConflicts.empty(); }
-
- inline operator bool() const { return empty(); }
-
-private:
- std::vector<C2ParamFieldValues> _mConflicts;
-};
-
-/**
- * Setting result builder for a parameter.
- */
-struct C2SettingResultBuilder {
- /**
- * Creates a read-only setting result failure.
- *
- * This does not take FSV as only the current value of the field is supported.
- */
- static C2SettingResult ReadOnly(const C2ParamField ¶m);
-
- /**
- * Creates a bad-value or infoinformational bad-value setting result failure.
- *
- * This does not take FSV as the value is outside of the possible values. As such, there are no
- * conflicts for this case either.
- */
- static C2SettingResult BadValue(const C2ParamField ¶mField, bool isInfo = false);
-
- /**
- * Creates a conflict (or informational conflict) setting result failure.
- *
- * This takes FSV so use paramFieldValues and optional conflicts.
- */
- static C2SettingResult Conflict(
- C2ParamFieldValues &¶mFieldValues, C2SettingConflictsBuilder &conflicts,
- bool isInfo = false);
-
- // TODO: retrieve results
-
-
-private:
- C2ParamField _mParamField;
- C2SettingResult _mResult;
-
- C2SettingResultBuilder(const C2SettingResultBuilder &) = delete;
-};
-
-/**
- * Setting results (PLURAL) builder.
- *
- * Setting results contain a failure status along with a list of failing fields or params.
- */
-struct C2SettingResultsBuilder {
- C2SettingResultsBuilder(const C2SettingResultsBuilder&) = delete;
- C2SettingResultsBuilder(C2SettingResultsBuilder&&) = default;
- C2SettingResultsBuilder &operator=(C2SettingResultsBuilder&&) = default;
-
- /** \returns (default) successful result with no details. */
- inline static C2SettingResultsBuilder Ok() {
- return C2SettingResultsBuilder(C2_OK);
- }
-
- /** \returns Interface is in bad state, with no further details. */
- inline static C2SettingResultsBuilder BadState() {
- return C2SettingResultsBuilder(C2_BAD_STATE);
- }
-
- /** \returns Interface connection timed out, with no further details. */
- inline static C2SettingResultsBuilder TimedOut() {
- return C2SettingResultsBuilder(C2_TIMED_OUT);
- }
-
- /** \returns Interface connection is corrupted, with no further details. */
- inline static C2SettingResultsBuilder Corrupted() {
- return C2SettingResultsBuilder(C2_CORRUPTED);
- }
-
- inline static C2SettingResultsBuilder NoMemory(C2Param::Index index_ __unused) {
- // TODO: try to add failure result
- return C2SettingResultsBuilder(C2_NO_MEMORY);
- }
-
- // TODO: this should not be a constructor
- /** Creates a builder with a single bad value setting result. */
- C2SettingResultsBuilder(C2SettingResult &&result);
-
- /** Combines this results with other results. */
- C2SettingResultsBuilder plus(C2SettingResultsBuilder&& results);
-
- /** Retrieve (get and move out) failures and return the failure status. */
- c2_status_t retrieveFailures(std::vector<std::unique_ptr<C2SettingResult>>* const failures);
-
-private:
- /** Setting results based on a single status. This is used when actual setting could not be
- * attempted to get a single C2SettingResult, or when a setting succeeded without
- * 'complaints'. */
- C2SettingResultsBuilder(c2_status_t status);
- // status must be one of OK, BAD_STATE, TIMED_OUT, CORRUPTED or NO_MEMORY
- // mainly: BLOCKING, BAD_INDEX, BAD_VALUE and NO_MEMORY requires a setting attempt, but
- // NO_MEMORY may not allow us to create a results structure.
-
- /**
- * One of OK, BAD_INDEX, BAD_VALUE, BAD_STATE, NO_MEMORY, TIMED_OUT, BLOCKING or CORRUPTED.
- */
- c2_status_t _mStatus __unused;
-
- /**
- * Vector of individual setting result details.
- */
- std::vector<std::unique_ptr<C2SettingResult>> _mResults;
-};
-
-/**
- * Utility class to enumerate fields of parameters.
- */
-struct C2FieldUtils {
- struct _Inspector;
-
- /**
- * An extended field descriptor object with structural information (lineage back to the root of
- * the param).
- */
- struct Info {
- typedef C2FieldDescriptor::type_t type_t; ///< field type
- typedef C2FieldDescriptor::NamedValuesType NamedValuesType; ///< named values list type
-
- /// returns the name of the field
- C2String name() const;
-
- /// returns the type of this field
- type_t type() const;
-
- /**
- * Returns the defined name-value pairings for this field. The returned reference is
- * only valid during the validity of this object
- */
- const NamedValuesType &namedValues() const;
-
- /**
- * The index of this field. E.g. param.field or param.field[0] has an index of 0, and
- * param.struct[2].field[3] has an index of 3.
- */
- size_t index() const;
-
- /// returns the length of the field in case it is an array. Returns 0 for
- /// T[] arrays if this info comes from a C2Param::Index object, and the currently used
- /// extent if it comes from a C2Param object. Returns 1 for T[1] arrays as well as if the
- /// field is not an array.
- size_t extent() const;
-
- /**
- * The (structural) depth of this field. E.g. param.field or param.field[0] has a depth of
- * 0, and param.struct.field or param.struct[0].field[0] has a depth of 1.
- */
- size_t depth() const;
-
- /**
- * Returns the offset of this field in the parameter in bytes.
- */
- size_t offset() const;
-
- /**
- * Returns the size of this field in bytes.
- */
- size_t size() const;
-
- /**
- * The offset of this field's array. E.g. for param.struct[2].field[3] this is the offset
- * of its smallest sibling: param.struct[2].field[0].
- */
- size_t arrayOffset() const;
-
- /**
- * Returns the size of this field's array. This is equivalent to extent() * size()
- */
- size_t arraySize() const;
-
- /**
- * The offset of the base field. The base field is a cousin of the current field where
- * all indices are 0. E.g. the the base field for param.struct[2].field[3] is
- * param.struct[0].field[0]. Base fields are used to specify supported values for
- * all cousin fields.
- */
- size_t baseFieldOffset() const;
-
- /**
- * Returns whether this field is an arithmetic (integral, counter or float) field.
- */
- bool isArithmetic() const;
-
- /**
- * Returns whether this field can have a flexible extent. extent() returns the current
- * extent.
- */
- bool isFlexible() const;
-
- /// returns whether this info is valid
- inline bool isValid() const { return _mImpl != nullptr; }
-
- /// returns the info for the parent of this field, or an invalid Info object if it has no
- /// parents
- Info parent() const;
-
- /// returns whether this info is valid
- inline operator bool() const { return isValid(); }
-
- struct Impl;
- Info(std::shared_ptr<Impl>);
-
- private:
- std::shared_ptr<Impl> _mImpl;
- friend struct _Inspector;
- };
-
- /**
- * An (input) iterator object over fields using Info objects.
- */
- struct Iterator {
- typedef Info const value_type;
- typedef ptrdiff_t difference_type;
- typedef Info const * pointer;
- typedef Info const reference;
- typedef std::input_iterator_tag iterator_category;
-
- /// return Info at current position
- virtual reference operator*() const;
-
- /// move to the next field
- virtual Iterator& operator++();
-
- virtual bool operator==(const Iterator &) const;
- inline bool operator!=(const Iterator &other) const { return !operator==(other); }
-
- virtual ~Iterator() = default;
-
- struct Impl;
- Iterator(std::shared_ptr<Impl>);
-
- protected:
- std::shared_ptr<Impl> mImpl;
- };
-
- /**
- * An (input) iterable object representing a list of fields.
- */
- struct List {
- /// returns an iterator to the beginning of the list
- virtual Iterator begin() const;
-
- /// returns an iterator to the end of the list
- virtual Iterator end() const;
-
- virtual ~List() = default;
-
- struct Impl;
- List(std::shared_ptr<Impl>);
-
- protected:
- std::shared_ptr<Impl> mImpl;
- };
-
- /**
- * Enumerates all (base) fields at index 0 of the parameter. The order of iteration is the
- * following:
- * Fields of a structure are enumerated in field order. However, sub-fields of a structure
- * are enumerated directly after the structure field, and prior to sibling fields.
- *
- * In essence the order of enumeration is first by increasing offset, then by decreasing size.
- *
- * \param param parameter to enumerate its fields
- * \param reflector parameter reflector used for enumeration
- *
- * \return an iterable object
- */
- static List enumerateFields(
- const C2Param ¶m,
- const std::shared_ptr<C2ParamReflector> &reflector);
-
- /**
- * Enumerates all cousin fields up to depth - level for a field. If level is 0, it enumerates
- * only the field. For level 1, it enumerates all fields in its current array (which may be
- * itself if extent is 1). The order of iteration is by increasing field offset.
- */
- static List enumerateCousins(
- const Info &field,
- uint32_t level = ~0);
-
- /**
- * Locates the field in a parameter and returns a list of 2 elements - the most-specific field
- * array of the parameter that contains the entire field. If the field is not a valid field
- * specifier for this parameter (e.g. it is outside the bounds of the parameter), it returns
- * an empty list.
- */
- static std::vector<Info> locateField(
- const C2Param ¶m, const _C2FieldId &field,
- const std::shared_ptr<C2ParamReflector> &reflector);
-
- static std::vector<Info> locateField(
- const C2ParamField &pf, const std::shared_ptr<C2ParamReflector> &reflector);
-
-};
-
-#include <util/C2Debug-interface.h>
-
-#endif // C2UTILS_INTERFACE_UTILS_H_
diff --git a/codec2/vndk/include/util/C2ParamUtils.h b/codec2/vndk/include/util/C2ParamUtils.h
deleted file mode 100644
index b51bd94..0000000
--- a/codec2/vndk/include/util/C2ParamUtils.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2UTILS_PARAM_UTILS_H_
-#define C2UTILS_PARAM_UTILS_H_
-
-#include <utility>
-#include <vector>
-
-/** \file
- * Utilities for parameter handling to be used by Codec2 implementations.
- */
-
-/// \cond INTERNAL
-
-struct C2Param;
-
-class C2ParamUtils {
- friend class C2UtilTest_ParamUtilsTest_Test;
-
-public:
-
- /// safe(r) parsing from parameter blob
- static
- C2Param *ParseFirst(const uint8_t *blob, size_t size);
-};
-
-/// \endcond
-
-#endif // C2UTILS_PARAM_UTILS_H_
-
diff --git a/codec2/vndk/internal/C2BlockInternal.h b/codec2/vndk/internal/C2BlockInternal.h
deleted file mode 100644
index 2abf3ac..0000000
--- a/codec2/vndk/internal/C2BlockInternal.h
+++ /dev/null
@@ -1,337 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_STAGEFRIGHT_C2BLOCK_INTERNAL_H_
-#define ANDROID_STAGEFRIGHT_C2BLOCK_INTERNAL_H_
-
-#include <android/hardware/graphics/bufferqueue/1.0/IGraphicBufferProducer.h>
-
-#include <C2Buffer.h>
-
-namespace android {
-namespace hardware {
-namespace media {
-namespace bufferpool {
-
-struct BufferPoolData;
-
-}
-}
-}
-}
-
-/**
- * Stores informations from C2BlockPool implementations which are required by C2Block.
- */
-struct C2_HIDE _C2BlockPoolData {
- enum type_t : int {
- TYPE_BUFFERPOOL = 0,
- TYPE_BUFFERQUEUE,
- };
-
- virtual type_t getType() const = 0;
-
-protected:
- _C2BlockPoolData() = default;
-
- virtual ~_C2BlockPoolData() = default;
-};
-
-struct C2BufferQueueBlockPoolData;
-
-/**
- * Internal only interface for creating blocks by block pool/buffer passing implementations.
- *
- * \todo this must be hidden
- */
-struct _C2BlockFactory {
- /**
- * Create a linear block from an allocation for an allotted range.
- *
- * \param alloc parent allocation
- * \param data blockpool data
- * \param offset allotted range offset
- * \param size allotted size
- *
- * \return shared pointer to the linear block. nullptr if there was not enough memory to
- * create this block.
- */
- static
- std::shared_ptr<C2LinearBlock> CreateLinearBlock(
- const std::shared_ptr<C2LinearAllocation> &alloc,
- const std::shared_ptr<_C2BlockPoolData> &data = nullptr,
- size_t offset = 0,
- size_t size = ~(size_t)0);
-
- /**
- * Create a graphic block from an allocation for an allotted section.
- *
- * \param alloc parent allocation
- * \param data blockpool data
- * \param crop allotted crop region
- *
- * \return shared pointer to the graphic block. nullptr if there was not enough memory to
- * create this block.
- */
- static
- std::shared_ptr<C2GraphicBlock> CreateGraphicBlock(
- const std::shared_ptr<C2GraphicAllocation> &alloc,
- const std::shared_ptr<_C2BlockPoolData> &data = nullptr,
- const C2Rect &allottedCrop = C2Rect(~0u, ~0u));
-
- /**
- * Return a block pool data from 1D block.
- *
- * \param shared pointer to the 1D block which is already created.
- */
- static
- std::shared_ptr<_C2BlockPoolData> GetLinearBlockPoolData(
- const C2Block1D& block);
-
- /**
- * Return a block pool data from 2D block.
- *
- * \param shared pointer to the 2D block which is already created.
- */
- static
- std::shared_ptr<_C2BlockPoolData> GetGraphicBlockPoolData(
- const C2Block2D& block);
-
- /**
- * Create a linear block from the received native handle.
- *
- * \param handle native handle to a linear block
- *
- * \return shared pointer to the linear block. nullptr if there was not enough memory to
- * create this block.
- */
- static
- std::shared_ptr<C2LinearBlock> CreateLinearBlock(
- const C2Handle *handle);
-
- /**
- * Create a graphic block from the received native handle.
- *
- * \param handle native handle to a graphic block
- *
- * \return shared pointer to the graphic block. nullptr if there was not enough memory to
- * create this block.
- */
- static
- std::shared_ptr<C2GraphicBlock> CreateGraphicBlock(
- const C2Handle *handle);
-
- /**
- * Create a linear block from the received bufferpool data.
- *
- * \param data bufferpool data to a linear block
- *
- * \return shared pointer to the linear block. nullptr if there was not enough memory to
- * create this block.
- */
- static
- std::shared_ptr<C2LinearBlock> CreateLinearBlock(
- const C2Handle *handle,
- const std::shared_ptr<android::hardware::media::bufferpool::BufferPoolData> &data);
-
- /**
- * Create a graphic block from the received bufferpool data.
- *
- * \param data bufferpool data to a graphic block
- *
- * \return shared pointer to the graphic block. nullptr if there was not enough memory to
- * create this block.
- */
- static
- std::shared_ptr<C2GraphicBlock> CreateGraphicBlock(
- const C2Handle *handle,
- const std::shared_ptr<android::hardware::media::bufferpool::BufferPoolData> &data);
-
- /**
- * Get bufferpool data from the blockpool data.
- *
- * \param poolData blockpool data
- * \param bufferPoolData pointer to bufferpool data where the bufferpool
- * data is stored.
- *
- * \return {\code true} when there is valid bufferpool data, {\code false} otherwise.
- */
- static
- bool GetBufferPoolData(
- const std::shared_ptr<const _C2BlockPoolData> &poolData,
- std::shared_ptr<android::hardware::media::bufferpool::BufferPoolData> *bufferPoolData);
-
- /*
- * Life Cycle Management of BufferQueue-Based Blocks
- * =================================================
- *
- * A block that is created by a bufferqueue-based blockpool requires some
- * special treatment when it is destroyed. In particular, if the block
- * corresponds to a held (dequeued/attached) GraphicBuffer in a slot of a
- * bufferqueue, its destruction should trigger a call to
- * IGraphicBufferProducer::cancelBuffer(). On the other hand, if the
- * GraphicBuffer is not held, i.e., if it has been queued or detached,
- * cancelBuffer() should not be called upon the destruction of the block.
- *
- * _C2BlockPoolData created by a bufferqueue-based blockpool includes two
- * main pieces of information:
- * - "held" status: Whether cancelBuffer() should be called upon
- * destruction of the block.
- * - bufferqueue assignment: The quadruple (igbp, generation, bqId,
- * bqSlot), where igbp is the IGraphicBufferProducer instance of the
- * bufferqueue, generation is the latest generation number, of the
- * bufferqueue, bqId is the globally unique id of the bufferqueue, and
- * bqSlot is the slot in the bufferqueue.
- *
- * igbp is the instance of IGraphicBufferProducer on which cancelBuffer()
- * will be called if "held" status is true when the block is destroyed.
- * (bqSlot is an input to cancelBuffer().) However, only generation, bqId
- * and bqSlot are retained when a block is transferred from one process to
- * another. It is the responsibility of both the sending and receiving
- * processes to maintain consistency of "held" status and igbp. Below are
- * functions provided for this purpose:
- *
- * - GetBufferQueueData(): Returns generation, bqId and bqSlot.
- * - HoldBlockFromBufferQueue(): Sets "held" status to true.
- * - YieldBlockToBufferQueue(): Sets "held" status to false.
- * - AssignBlockToBufferQueue(): Sets the bufferqueue assignment and
- * "held" status.
- *
- * All these functions operate on _C2BlockPoolData, which can be obtained by
- * calling GetGraphicBlockPoolData().
- *
- * HoldBlockFromBufferQueue() will mark the block as held, while
- * YieldBlockToBufferQueue() will do the opposite. These two functions do
- * not modify the bufferqueue assignment, so it is not wrong to call
- * HoldBlockFromBufferQueue() after YieldBlockToBufferQueue() if it can be
- * guaranteed that the block is not destroyed during the period between the
- * two calls.
- *
- * AssingBlockToBufferQueue() has a "held" status as an optional argument.
- * The default value is true.
- *
- * Maintaining Consistency with IGraphicBufferProducer Operations
- * ==============================================================
- *
- * dequeueBuffer()
- * - This function is called by the blockpool. It should not be called
- * manually. The blockpool will automatically generate the correct
- * information for _C2BlockPoolData, with "held" status set to true.
- *
- * queueBuffer()
- * - After queueBuffer() is called, YieldBlockToBufferQueue() should be
- * called.
- *
- * attachBuffer()
- * - After attachBuffer() is called, AssignBlockToBufferQueue() should be
- * called with "held" status set to true.
- *
- * detachBuffer()
- * - After detachBuffer() is called, HoldBlockFromBufferQueue() should be
- * called.
- */
-
- /**
- * Get bufferqueue data from the blockpool data.
- *
- * Calling this function with \p generation set to nullptr will return
- * whether the block comes from a bufferqueue-based blockpool, but will not
- * fill in the values for \p generation, \p bqId or \p bqSlot.
- *
- * \param[in] poolData blockpool data.
- * \param[out] generation Generation number attached to the buffer.
- * \param[out] bqId Id of the bufferqueue owning the buffer (block).
- * \param[out] bqSlot Slot number of the buffer.
- *
- * \return \c true when there is valid bufferqueue data;
- * \c false otherwise.
- */
- static
- bool GetBufferQueueData(
- const std::shared_ptr<_C2BlockPoolData>& poolData,
- uint32_t* generation = nullptr,
- uint64_t* bqId = nullptr,
- int32_t* bqSlot = nullptr);
-
- /**
- * Set bufferqueue assignment and "held" status to a block created by a
- * bufferqueue-based blockpool.
- *
- * \param poolData blockpool data associated to the block.
- * \param igbp \c IGraphicBufferProducer instance from the designated
- * bufferqueue.
- * \param generation Generation number that the buffer belongs to.
- * \param bqId Id of the bufferqueue that will own the buffer (block).
- * \param bqSlot Slot number of the buffer.
- * \param held Whether the block is held. This "held" status can be
- * changed later by calling YieldBlockToBufferQueue() or
- * HoldBlockFromBufferQueue().
- *
- * \return \c true if \p poolData is valid bufferqueue data;
- * \c false otherwise.
- *
- * Note: \p generation should match the latest generation number set on the
- * bufferqueue, and \p bqId should match the unique id for the bufferqueue
- * (obtainable by calling igbp->getUniqueId()).
- */
- static
- bool AssignBlockToBufferQueue(
- const std::shared_ptr<_C2BlockPoolData>& poolData,
- const ::android::sp<::android::hardware::graphics::bufferqueue::
- V1_0::IGraphicBufferProducer>& igbp,
- uint32_t generation,
- uint64_t bqId,
- int32_t bqSlot,
- bool held = true);
-
- /**
- * Hold a block from the designated bufferqueue. This causes the destruction
- * of the block to trigger a call to cancelBuffer().
- *
- * This function assumes that \p poolData comes from a bufferqueue-based
- * block. It does not check if that is the case.
- *
- * \param poolData blockpool data associated to the block.
- * \param igbp \c IGraphicBufferProducer instance to be assigned to the
- * block. This is not needed when the block is local.
- *
- * \return The previous held status.
- */
- static
- bool HoldBlockFromBufferQueue(
- const std::shared_ptr<_C2BlockPoolData>& poolData,
- const ::android::sp<::android::hardware::graphics::bufferqueue::
- V1_0::IGraphicBufferProducer>& igbp = nullptr);
-
- /**
- * Yield a block to the designated bufferqueue. This causes the destruction
- * of the block not to trigger a call to cancelBuffer();
- *
- * This function assumes that \p poolData comes from a bufferqueue-based
- * block. It does not check if that is the case.
- *
- * \param poolData blockpool data associated to the block.
- *
- * \return The previous held status.
- */
- static
- bool YieldBlockToBufferQueue(
- const std::shared_ptr<_C2BlockPoolData>& poolData);
-
-};
-
-#endif // ANDROID_STAGEFRIGHT_C2BLOCK_INTERNAL_H_
-
diff --git a/codec2/vndk/internal/C2ParamInternal.h b/codec2/vndk/internal/C2ParamInternal.h
deleted file mode 100644
index 24a8f27..0000000
--- a/codec2/vndk/internal/C2ParamInternal.h
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_STAGEFRIGHT_C2PARAM_INTERNAL_H_
-#define ANDROID_STAGEFRIGHT_C2PARAM_INTERNAL_H_
-
-#include <C2Param.h>
-
-struct C2_HIDE _C2ParamInspector {
- inline static uint32_t GetOffset(const C2FieldDescriptor &fd) {
- return fd._mFieldId._mOffset;
- }
-
- inline static void SetOffset(C2FieldDescriptor &fd, uint32_t offset) {
- fd._mFieldId._mOffset = offset;
- }
-
- inline static uint32_t GetEndOffset(const C2FieldDescriptor &fd, uint32_t paramSize = 0) {
- uint32_t endOffset = fd._mFieldId._mOffset + fd._mExtent * fd._mFieldId._mSize;
- /// for flex parameters return paramSize if given
- return fd._mExtent ? endOffset : std::max(endOffset, paramSize);
- }
-
- inline static uint32_t GetSize(const C2FieldDescriptor &fd) {
- return fd._mFieldId._mSize;
- }
-
- inline static uint32_t GetIndex(const C2ParamField &pf) {
- return pf._mIndex;
- }
-
- inline static uint32_t GetOffset(const C2ParamField &pf) {
- return pf._mFieldId._mOffset;
- }
-
- inline static uint32_t GetSize(const C2ParamField &pf) {
- return pf._mFieldId._mSize;
- }
-
- inline static uint32_t GetOffset(const _C2FieldId &f) {
- return f._mOffset;
- }
-
- inline static uint32_t GetSize(const _C2FieldId &f) {
- return f._mSize;
- }
-
- inline static _C2FieldId GetField(const C2FieldDescriptor &fd) {
- return fd._mFieldId;
- }
-
- inline static uint32_t GetAttrib(const C2ParamDescriptor &pd) {
- return pd._mAttrib;
- }
-
- inline static _C2FieldId GetField(const C2ParamField &pf) {
- return pf._mFieldId;
- }
-
- inline static
- C2ParamField CreateParamField(C2Param::Index index, uint32_t offset, uint32_t size) {
- return C2ParamField(index, offset, size);
- }
-
- inline static
- C2ParamField CreateParamField(C2Param::Index index, _C2FieldId field) {
- return C2ParamField(index, field._mOffset, field._mSize);
- }
-
- inline static
- void TrimParam(C2Param *param, uint32_t newSize) {
- if (param && *param && param->size() > newSize && newSize >= sizeof(C2Param)) {
- param->_mSize = newSize;
- }
- }
-
- inline static void AddNamedValues(
- C2FieldDescriptor &fd, C2FieldDescriptor::NamedValuesType &&namedValues) {
- fd._mNamedValues = std::move(namedValues);
- }
-
- inline static
- C2StructDescriptor CreateStructDescriptor(C2Param::CoreIndex index,
- std::vector<C2FieldDescriptor> &&fields) {
- return C2StructDescriptor(index, std::move(fields));
- }
-
- inline static
- C2FieldDescriptor OffsetFieldDescriptor(const C2FieldDescriptor &fd, size_t offset) {
- return C2FieldDescriptor(fd, offset);
- }
-
- // expose attributes
- typedef C2ParamDescriptor::attrib_t attrib_t;
-};
-
-#endif // ANDROID_STAGEFRIGHT_C2PARAM_INTERNAL_H_
-
diff --git a/codec2/vndk/platform/C2BqBuffer.cpp b/codec2/vndk/platform/C2BqBuffer.cpp
deleted file mode 100644
index 90eba49..0000000
--- a/codec2/vndk/platform/C2BqBuffer.cpp
+++ /dev/null
@@ -1,486 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2BqBuffer"
-#include <utils/Log.h>
-
-#include <ui/BufferQueueDefs.h>
-#include <list>
-#include <map>
-#include <mutex>
-
-#include <C2AllocatorGralloc.h>
-#include <C2BqBufferPriv.h>
-#include <C2BlockInternal.h>
-
-using ::android::AnwBuffer;
-using ::android::BufferQueueDefs::NUM_BUFFER_SLOTS;
-using ::android::C2AllocatorGralloc;
-using ::android::C2AndroidMemoryUsage;
-using ::android::Fence;
-using ::android::GraphicBuffer;
-using ::android::HGraphicBufferProducer;
-using ::android::IGraphicBufferProducer;
-using ::android::hidl_handle;
-using ::android::sp;
-using ::android::status_t;
-using ::android::wp;
-
-using ::android::hardware::Return;
-using ::android::hardware::graphics::common::V1_0::PixelFormat;
-
-struct C2BufferQueueBlockPoolData : public _C2BlockPoolData {
-
- bool held;
- bool local;
- uint32_t generation;
- uint64_t bqId;
- int32_t bqSlot;
- sp<HGraphicBufferProducer> igbp;
- std::shared_ptr<C2BufferQueueBlockPool::Impl> localPool;
-
- virtual type_t getType() const override {
- return TYPE_BUFFERQUEUE;
- }
-
- // Create a remote BlockPoolData.
- C2BufferQueueBlockPoolData(
- uint32_t generation, uint64_t bqId, int32_t bqSlot,
- const sp<HGraphicBufferProducer>& producer = nullptr);
-
- // Create a local BlockPoolData.
- C2BufferQueueBlockPoolData(
- uint32_t generation, uint64_t bqId, int32_t bqSlot,
- const std::shared_ptr<C2BufferQueueBlockPool::Impl>& pool);
-
- virtual ~C2BufferQueueBlockPoolData() override;
-
-};
-
-bool _C2BlockFactory::GetBufferQueueData(
- const std::shared_ptr<_C2BlockPoolData>& data,
- uint32_t* generation, uint64_t* bqId, int32_t* bqSlot) {
- if (data && data->getType() == _C2BlockPoolData::TYPE_BUFFERQUEUE) {
- if (generation) {
- const std::shared_ptr<C2BufferQueueBlockPoolData> poolData =
- std::static_pointer_cast<C2BufferQueueBlockPoolData>(data);
- *generation = poolData->generation;
- if (bqId) {
- *bqId = poolData->bqId;
- }
- if (bqSlot) {
- *bqSlot = poolData->bqSlot;
- }
- }
- return true;
- }
- return false;
-}
-
-bool _C2BlockFactory::AssignBlockToBufferQueue(
- const std::shared_ptr<_C2BlockPoolData>& data,
- const sp<HGraphicBufferProducer>& igbp,
- uint32_t generation,
- uint64_t bqId,
- int32_t bqSlot,
- bool held) {
- if (data && data->getType() == _C2BlockPoolData::TYPE_BUFFERQUEUE) {
- const std::shared_ptr<C2BufferQueueBlockPoolData> poolData =
- std::static_pointer_cast<C2BufferQueueBlockPoolData>(data);
- poolData->igbp = igbp;
- poolData->generation = generation;
- poolData->bqId = bqId;
- poolData->bqSlot = bqSlot;
- poolData->held = held;
- return true;
- }
- return false;
-}
-
-bool _C2BlockFactory::HoldBlockFromBufferQueue(
- const std::shared_ptr<_C2BlockPoolData>& data,
- const sp<HGraphicBufferProducer>& igbp) {
- const std::shared_ptr<C2BufferQueueBlockPoolData> poolData =
- std::static_pointer_cast<C2BufferQueueBlockPoolData>(data);
- if (!poolData->local) {
- poolData->igbp = igbp;
- }
- if (poolData->held) {
- poolData->held = true;
- return false;
- }
- poolData->held = true;
- return true;
-}
-
-bool _C2BlockFactory::YieldBlockToBufferQueue(
- const std::shared_ptr<_C2BlockPoolData>& data) {
- const std::shared_ptr<C2BufferQueueBlockPoolData> poolData =
- std::static_pointer_cast<C2BufferQueueBlockPoolData>(data);
- if (!poolData->held) {
- poolData->held = false;
- return false;
- }
- poolData->held = false;
- return true;
-}
-
-std::shared_ptr<C2GraphicBlock> _C2BlockFactory::CreateGraphicBlock(
- const C2Handle *handle) {
- // TODO: get proper allocator? and mutex?
- static std::unique_ptr<C2AllocatorGralloc> sAllocator = std::make_unique<C2AllocatorGralloc>(0);
-
- std::shared_ptr<C2GraphicAllocation> alloc;
- if (C2AllocatorGralloc::isValid(handle)) {
- uint32_t width;
- uint32_t height;
- uint32_t format;
- uint64_t usage;
- uint32_t stride;
- uint32_t generation;
- uint64_t bqId;
- uint32_t bqSlot;
- android::_UnwrapNativeCodec2GrallocMetadata(
- handle, &width, &height, &format, &usage, &stride, &generation, &bqId, &bqSlot);
- c2_status_t err = sAllocator->priorGraphicAllocation(handle, &alloc);
- if (err == C2_OK) {
- std::shared_ptr<C2GraphicBlock> block;
- if (bqId || bqSlot) {
- // BQBBP
- std::shared_ptr<C2BufferQueueBlockPoolData> poolData =
- std::make_shared<C2BufferQueueBlockPoolData>(generation,
- bqId,
- (int32_t)bqSlot);
- block = _C2BlockFactory::CreateGraphicBlock(alloc, poolData);
- } else {
- block = _C2BlockFactory::CreateGraphicBlock(alloc);
- }
- return block;
- }
- }
- return nullptr;
-}
-
-class C2BufferQueueBlockPool::Impl
- : public std::enable_shared_from_this<C2BufferQueueBlockPool::Impl> {
-private:
- c2_status_t fetchFromIgbp_l(
- uint32_t width,
- uint32_t height,
- uint32_t format,
- C2MemoryUsage usage,
- std::shared_ptr<C2GraphicBlock> *block /* nonnull */) {
- // We have an IGBP now.
- sp<Fence> fence = new Fence();
- C2AndroidMemoryUsage androidUsage = usage;
- status_t status;
- PixelFormat pixelFormat = static_cast<PixelFormat>(format);
- int slot;
- ALOGV("tries to dequeue buffer");
- Return<void> transStatus = mProducer->dequeueBuffer(
- width, height, pixelFormat, androidUsage.asGrallocUsage(), false,
- [&status, &slot, &fence](
- int32_t tStatus, int32_t tSlot, hidl_handle const& tFence,
- HGraphicBufferProducer::FrameEventHistoryDelta const& tTs) {
- status = tStatus;
- slot = tSlot;
- if (!android::conversion::convertTo(fence.get(), tFence) &&
- status == android::NO_ERROR) {
- status = android::BAD_VALUE;
- }
- (void) tTs;
- });
- // dequeueBuffer returns flag.
- if (!transStatus.isOk() || status < android::OK) {
- ALOGD("cannot dequeue buffer %d", status);
- if (transStatus.isOk() && status == android::INVALID_OPERATION) {
- // Too many buffer dequeued. retrying after some time is required.
- return C2_TIMED_OUT;
- } else {
- return C2_BAD_VALUE;
- }
- }
- ALOGV("dequeued a buffer successfully");
- native_handle_t* nh = nullptr;
- hidl_handle fenceHandle;
- if (fence) {
- android::conversion::wrapAs(&fenceHandle, &nh, *fence);
- }
- if (fence) {
- static constexpr int kFenceWaitTimeMs = 10;
-
- status_t status = fence->wait(kFenceWaitTimeMs);
- if (status == -ETIME) {
- // fence is not signalled yet.
- (void)mProducer->cancelBuffer(slot, fenceHandle).isOk();
- return C2_TIMED_OUT;
- }
- if (status != android::NO_ERROR) {
- ALOGD("buffer fence wait error %d", status);
- (void)mProducer->cancelBuffer(slot, fenceHandle).isOk();
- return C2_BAD_VALUE;
- } else if (mRenderCallback) {
- nsecs_t signalTime = fence->getSignalTime();
- if (signalTime >= 0 && signalTime < INT64_MAX) {
- mRenderCallback(mProducerId, slot, signalTime);
- } else {
- ALOGV("got fence signal time of %lld", (long long)signalTime);
- }
- }
- }
-
- sp<GraphicBuffer> &slotBuffer = mBuffers[slot];
- if (status & IGraphicBufferProducer::BUFFER_NEEDS_REALLOCATION || !slotBuffer) {
- if (!slotBuffer) {
- slotBuffer = new GraphicBuffer();
- }
- // N.B. This assumes requestBuffer# returns an existing allocation
- // instead of a new allocation.
- Return<void> transStatus = mProducer->requestBuffer(
- slot,
- [&status, &slotBuffer](int32_t tStatus, AnwBuffer const& tBuffer){
- status = tStatus;
- if (!android::conversion::convertTo(slotBuffer.get(), tBuffer) &&
- status == android::NO_ERROR) {
- status = android::BAD_VALUE;
- }
- });
-
- if (!transStatus.isOk()) {
- return C2_BAD_VALUE;
- } else if (status != android::NO_ERROR) {
- slotBuffer.clear();
- (void)mProducer->cancelBuffer(slot, fenceHandle).isOk();
- return C2_BAD_VALUE;
- }
- }
- if (slotBuffer) {
- ALOGV("buffer wraps %llu %d", (unsigned long long)mProducerId, slot);
- C2Handle *c2Handle = android::WrapNativeCodec2GrallocHandle(
- slotBuffer->handle,
- slotBuffer->width,
- slotBuffer->height,
- slotBuffer->format,
- slotBuffer->usage,
- slotBuffer->stride,
- slotBuffer->getGenerationNumber(),
- mProducerId, slot);
- if (c2Handle) {
- std::shared_ptr<C2GraphicAllocation> alloc;
- c2_status_t err = mAllocator->priorGraphicAllocation(c2Handle, &alloc);
- if (err != C2_OK) {
- return err;
- }
- std::shared_ptr<C2BufferQueueBlockPoolData> poolData =
- std::make_shared<C2BufferQueueBlockPoolData>(
- slotBuffer->getGenerationNumber(),
- mProducerId, slot, shared_from_this());
- *block = _C2BlockFactory::CreateGraphicBlock(alloc, poolData);
- return C2_OK;
- }
- // Block was not created. call requestBuffer# again next time.
- slotBuffer.clear();
- (void)mProducer->cancelBuffer(slot, fenceHandle).isOk();
- }
- return C2_BAD_VALUE;
- }
-
-public:
- Impl(const std::shared_ptr<C2Allocator> &allocator)
- : mInit(C2_OK), mProducerId(0), mAllocator(allocator) {
- }
-
- ~Impl() {
- bool noInit = false;
- for (int i = 0; i < NUM_BUFFER_SLOTS; ++i) {
- if (!noInit && mProducer) {
- Return<int32_t> transResult =
- mProducer->detachBuffer(static_cast<int32_t>(i));
- noInit = !transResult.isOk() ||
- static_cast<int32_t>(transResult) == android::NO_INIT;
- }
- mBuffers[i].clear();
- }
- }
-
- c2_status_t fetchGraphicBlock(
- uint32_t width,
- uint32_t height,
- uint32_t format,
- C2MemoryUsage usage,
- std::shared_ptr<C2GraphicBlock> *block /* nonnull */) {
- block->reset();
- if (mInit != C2_OK) {
- return mInit;
- }
-
- static int kMaxIgbpRetry = 20; // TODO: small number can cause crash in releasing.
- static int kMaxIgbpRetryDelayUs = 10000;
-
- int curTry = 0;
-
- while (curTry++ < kMaxIgbpRetry) {
- std::unique_lock<std::mutex> lock(mMutex);
- // TODO: return C2_NO_INIT
- if (mProducerId == 0) {
- std::shared_ptr<C2GraphicAllocation> alloc;
- c2_status_t err = mAllocator->newGraphicAllocation(
- width, height, format, usage, &alloc);
- if (err != C2_OK) {
- return err;
- }
- std::shared_ptr<C2BufferQueueBlockPoolData> poolData =
- std::make_shared<C2BufferQueueBlockPoolData>(
- 0, (uint64_t)0, ~0, shared_from_this());
- // TODO: config?
- *block = _C2BlockFactory::CreateGraphicBlock(alloc, poolData);
- ALOGV("allocated a buffer successfully");
-
- return C2_OK;
- }
- c2_status_t status = fetchFromIgbp_l(width, height, format, usage, block);
- if (status == C2_TIMED_OUT) {
- lock.unlock();
- ::usleep(kMaxIgbpRetryDelayUs);
- continue;
- }
- return status;
- }
- return C2_TIMED_OUT;
- }
-
- void setRenderCallback(const OnRenderCallback &renderCallback) {
- std::lock_guard<std::mutex> lock(mMutex);
- mRenderCallback = renderCallback;
- }
-
- void configureProducer(const sp<HGraphicBufferProducer> &producer) {
- int32_t status = android::OK;
- uint64_t producerId = 0;
- if (producer) {
- Return<void> transStatus = producer->getUniqueId(
- [&status, &producerId](int32_t tStatus, int64_t tProducerId) {
- status = tStatus;
- producerId = tProducerId;
- });
- if (!transStatus.isOk()) {
- ALOGD("configureProducer -- failed to connect to the producer");
- return;
- }
- }
- {
- std::lock_guard<std::mutex> lock(mMutex);
- bool noInit = false;
- for (int i = 0; i < NUM_BUFFER_SLOTS; ++i) {
- if (!noInit && mProducer) {
- Return<int32_t> transResult =
- mProducer->detachBuffer(static_cast<int32_t>(i));
- noInit = !transResult.isOk() ||
- static_cast<int32_t>(transResult) == android::NO_INIT;
- }
- mBuffers[i].clear();
- }
- if (producer && status == android::OK) {
- mProducer = producer;
- mProducerId = producerId;
- } else {
- mProducer = nullptr;
- mProducerId = 0;
- }
- }
- }
-
-private:
- friend struct C2BufferQueueBlockPoolData;
-
- void cancel(uint64_t igbp_id, int32_t igbp_slot) {
- std::lock_guard<std::mutex> lock(mMutex);
- if (igbp_id == mProducerId && mProducer) {
- (void)mProducer->cancelBuffer(igbp_slot, nullptr).isOk();
- }
- }
-
- c2_status_t mInit;
- uint64_t mProducerId;
- OnRenderCallback mRenderCallback;
-
- const std::shared_ptr<C2Allocator> mAllocator;
-
- std::mutex mMutex;
- sp<HGraphicBufferProducer> mProducer;
-
- sp<GraphicBuffer> mBuffers[NUM_BUFFER_SLOTS];
-};
-
-C2BufferQueueBlockPoolData::C2BufferQueueBlockPoolData(
- uint32_t generation, uint64_t bqId, int32_t bqSlot,
- const sp<HGraphicBufferProducer>& producer) :
- held(producer && bqId != 0), local(false),
- generation(generation), bqId(bqId), bqSlot(bqSlot),
- igbp(producer),
- localPool() {
-}
-
-C2BufferQueueBlockPoolData::C2BufferQueueBlockPoolData(
- uint32_t generation, uint64_t bqId, int32_t bqSlot,
- const std::shared_ptr<C2BufferQueueBlockPool::Impl>& pool) :
- held(true), local(true),
- generation(generation), bqId(bqId), bqSlot(bqSlot),
- igbp(pool ? pool->mProducer : nullptr),
- localPool(pool) {
-}
-
-C2BufferQueueBlockPoolData::~C2BufferQueueBlockPoolData() {
- if (!held || bqId == 0) {
- return;
- }
- if (local && localPool) {
- localPool->cancel(bqId, bqSlot);
- } else if (igbp) {
- igbp->cancelBuffer(bqSlot, nullptr);
- }
-}
-
-C2BufferQueueBlockPool::C2BufferQueueBlockPool(
- const std::shared_ptr<C2Allocator> &allocator, const local_id_t localId)
- : mAllocator(allocator), mLocalId(localId), mImpl(new Impl(allocator)) {}
-
-C2BufferQueueBlockPool::~C2BufferQueueBlockPool() {}
-
-c2_status_t C2BufferQueueBlockPool::fetchGraphicBlock(
- uint32_t width,
- uint32_t height,
- uint32_t format,
- C2MemoryUsage usage,
- std::shared_ptr<C2GraphicBlock> *block /* nonnull */) {
- if (mImpl) {
- return mImpl->fetchGraphicBlock(width, height, format, usage, block);
- }
- return C2_CORRUPTED;
-}
-
-void C2BufferQueueBlockPool::configureProducer(const sp<HGraphicBufferProducer> &producer) {
- if (mImpl) {
- mImpl->configureProducer(producer);
- }
-}
-
-void C2BufferQueueBlockPool::setRenderCallback(const OnRenderCallback &renderCallback) {
- if (mImpl) {
- mImpl->setRenderCallback(renderCallback);
- }
-}
diff --git a/codec2/vndk/util/C2Debug.cpp b/codec2/vndk/util/C2Debug.cpp
deleted file mode 100644
index b4aa719..0000000
--- a/codec2/vndk/util/C2Debug.cpp
+++ /dev/null
@@ -1,279 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <C2ParamInternal.h>
-#include <util/C2Debug-interface.h>
-#include <util/C2Debug-param.h>
-#include <util/C2InterfaceUtils.h>
-
-#include <iostream>
-
-#include <android-base/stringprintf.h>
-
-using android::base::StringPrintf;
-
-/* -------------------------------- asString -------------------------------- */
-
-const char *asString(c2_status_t i, const char *def) {
- switch (i) {
- case C2_OK: return "OK";
- case C2_BAD_VALUE: return "BAD_VALUE";
- case C2_BAD_INDEX: return "BAD_INDEX";
- case C2_CANNOT_DO: return "CANNOT_DO";
- case C2_DUPLICATE: return "DUPLICATE";
- case C2_NOT_FOUND: return "NOT_FOUND";
- case C2_BAD_STATE: return "BAD_STATE";
- case C2_BLOCKING: return "BLOCKING";
- case C2_CANCELED: return "CANCELED";
- case C2_NO_MEMORY: return "NO_MEMORY";
- case C2_REFUSED: return "REFUSED";
- case C2_TIMED_OUT: return "TIMED_OUT";
- case C2_OMITTED: return "OMITTED";
- case C2_CORRUPTED: return "CORRUPTED";
- case C2_NO_INIT: return "NO_INIT";
- default: return def;
- }
-}
-
-const char *asString(C2FieldDescriptor::type_t i, const char *def) {
- switch (i) {
- case C2FieldDescriptor::BLOB: return "u8";
- case C2FieldDescriptor::CNTR32: return "c32";
- case C2FieldDescriptor::CNTR64: return "c64";
- case C2FieldDescriptor::FLOAT: return "fp";
- case C2FieldDescriptor::INT32: return "i32";
- case C2FieldDescriptor::INT64: return "i64";
- case C2FieldDescriptor::STRING: return "chr";
- case C2FieldDescriptor::UINT32: return "u32";
- case C2FieldDescriptor::UINT64: return "u64";
- default: return (i & C2FieldDescriptor::STRUCT_FLAG) ? "struct" : def;
- }
-}
-
-/* ------------------------------ C2ParamField ------------------------------ */
-
-static std::string attribParamCoreIndex(const C2Param::CoreIndex &i) {
- return StringPrintf("%c%c%03x",
- i.isFlexible() ? 'F' : '-',
- i.isVendor() ? 'V' : '-',
- i.coreIndex());
-}
-
-static std::string attribParamIndex(
- const C2Param::Type &i, bool addStream, unsigned streamId) {
- std::string v = StringPrintf("%c%c",
- i.forInput() ? 'I' : i.forOutput() ? 'O' : '-',
- i.forStream() ? 'S' : i.forPort() ? 'P' : 'G');
- if (addStream) {
- if (i.forStream()) {
- v += StringPrintf("%02d", streamId);
- } else {
- v += "--";
- }
- }
-
- return v
- + StringPrintf("%c ",
- i.kind() == C2Param::STRUCT ? 'S' :
- i.kind() == C2Param::INFO ? 'i' :
- i.kind() == C2Param::TUNING ? 't' :
- i.kind() == C2Param::SETTING ? 's' :
- i.kind() == C2Param::NONE ? '-' : '?')
- + attribParamCoreIndex(i);
-}
-
-std::ostream& operator<<(std::ostream& os, const C2Param::CoreIndex &i) {
- return os << "Param::CoreIndex(" << attribParamCoreIndex(i) << ")";
-}
-
-std::ostream& operator<<(std::ostream& os, const C2Param::Type &i) {
- return os << StringPrintf("Param::Type(%08x: ", i.type())
- << attribParamIndex(i, false, 0) << ")";
-}
-
-std::ostream& operator<<(std::ostream& os, const C2Param::Index &i) {
- return os << StringPrintf("Param::Index(%08x: ", (uint32_t)i)
- << attribParamIndex(i, true, i.stream()) << ")";
-}
-
-static std::string attribFieldId(const _C2FieldId &i) {
- return StringPrintf("Field(@%02x+%02x)",
- _C2ParamInspector::GetOffset(i),
- _C2ParamInspector::GetSize(i));
-}
-
-
-std::ostream& operator<<(std::ostream& os, const _C2FieldId &i) {
- return os << "<" << attribFieldId(i) << ">";
-}
-
-
-std::ostream& operator<<(std::ostream& os, const C2FieldDescriptor &i) {
- os << attribFieldId(_C2ParamInspector::GetField(i)) << " ";
- if (i.namedValues().size()) {
- os << "enum ";
- }
- return os << asString(i.type()) << " " << i.name()
- << StringPrintf("[%zu]", i.extent());
-}
-
-
-std::ostream& operator<<(std::ostream& os, const C2ParamField &i) {
- os << "<" << C2Param::Index(_C2ParamInspector::GetIndex(i))
- << StringPrintf("::Field(@%02x+%02x)>",
- _C2ParamInspector::GetOffset(i),
- _C2ParamInspector::GetSize(i));
- return os;
-}
-
-
-/* -------------------------- _C2FieldValueHelper -------------------------- */
-
-std::ostream& _C2FieldValueHelper<char>::put(std::ostream &os, const C2Value::Primitive &p) {
- if (isprint(p.i32)) {
- return os << StringPrintf("'%c'", p.i32);
- } else {
- return os << StringPrintf("'\\x%02x'", (uint32_t)p.i32);
- }
-}
-
-std::ostream& _C2FieldValueHelper<uint8_t>::put(std::ostream &os, const C2Value::Primitive &p) {
- return os << StringPrintf("0x%02x", p.u32);
-}
-
-/* ---------------------- C2FieldSupportedValuesHelper ---------------------- */
-
-template<typename T>
-std::ostream& operator<<(std::ostream &os, const c2_cntr_t<T> &v) {
- return os << "ctr(" << v.peeku() << ")";
-}
-
-template<typename T>
-std::ostream& operator<<(std::ostream& os, const C2SupportedRange<T> &i) {
- os << "Range(";
- _C2FieldValueHelper<T>::put(os, i.min());
- os << "..";
- _C2FieldValueHelper<T>::put(os, i.max());
- os << " *= " << i.num() << " /= " << i.denom() << " += " << i.step() << ")";
- return os;
-}
-template std::ostream& operator<<(std::ostream& os, const C2SupportedRange<char> &i);
-template std::ostream& operator<<(std::ostream& os, const C2SupportedRange<uint8_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2SupportedRange<int32_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2SupportedRange<uint32_t> &i);
-//template std::ostream& operator<<(std::ostream& os, const C2SupportedRange<c2_cntr32_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2SupportedRange<int64_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2SupportedRange<uint64_t> &i);
-//template std::ostream& operator<<(std::ostream& os, const C2SupportedRange<c2_cntr64_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2SupportedRange<float> &i);
-
-template<typename T>
-std::ostream& operator<<(std::ostream& os, const C2SupportedFlags<T> &i) {
- os << "Flags[";
- if (!i.isEmpty()) {
- os << "min=";
- _C2FieldValueHelper<T>::put(os, i.min());
- }
- bool comma = false;
- for (const T &v : i.flags()) {
- if (comma) {
- os << ", ";
- }
- _C2FieldValueHelper<T>::put(os, v);
- comma = true;
- }
- os << "]";
- return os;
-}
-template std::ostream& operator<<(std::ostream& os, const C2SupportedFlags<char> &i);
-template std::ostream& operator<<(std::ostream& os, const C2SupportedFlags<uint8_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2SupportedFlags<int32_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2SupportedFlags<uint32_t> &i);
-//template std::ostream& operator<<(std::ostream& os, const C2SupportedFlags<c2_cntr32_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2SupportedFlags<int64_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2SupportedFlags<uint64_t> &i);
-//template std::ostream& operator<<(std::ostream& os, const C2SupportedFlags<c2_cntr64_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2SupportedFlags<float> &i);
-
-template<typename T>
-std::ostream& operator<<(std::ostream& os, const C2SupportedValueSet<T> &i) {
- os << "Values[";
- bool comma = false;
- for (const T &v : i.values()) {
- if (comma) {
- os << ", ";
- }
- _C2FieldValueHelper<T>::put(os, v);
- comma = true;
- }
- os << "]";
- return os;
-}
-template std::ostream& operator<<(std::ostream& os, const C2SupportedValueSet<char> &i);
-template std::ostream& operator<<(std::ostream& os, const C2SupportedValueSet<uint8_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2SupportedValueSet<int32_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2SupportedValueSet<uint32_t> &i);
-//template std::ostream& operator<<(std::ostream& os, const C2SupportedValueSet<c2_cntr32_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2SupportedValueSet<int64_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2SupportedValueSet<uint64_t> &i);
-//template std::ostream& operator<<(std::ostream& os, const C2SupportedValueSet<c2_cntr64_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2SupportedValueSet<float> &i);
-
-template<typename T>
-struct C2FieldSupportedValuesHelper<T>::Impl {
- Impl(const C2FieldSupportedValues &values);
-
-private:
- typedef typename _C2FieldValueHelper<T>::ValueType ValueType;
- C2FieldSupportedValues::type_t _mType;
- C2SupportedRange<ValueType> _mRange;
- C2SupportedValueSet<ValueType> _mValues;
- C2SupportedFlags<ValueType> _mFlags;
-
-public:
-// friend std::ostream& operator<< <T>(std::ostream& os, const C2FieldSupportedValuesHelper<T>::Impl &i);
-// friend std::ostream& operator<<(std::ostream& os, const Impl &i);
- std::ostream& streamOut(std::ostream& os) const;
-};
-
-template<typename T>
-std::ostream& C2FieldSupportedValuesHelper<T>::Impl::streamOut(std::ostream& os) const {
- if (_mType == C2FieldSupportedValues::RANGE) {
- os << _mRange;
- } else if (_mType == C2FieldSupportedValues::VALUES) {
- os << _mValues;
- } else if (_mType == C2FieldSupportedValues::FLAGS) {
- os << _mFlags;
- } else {
- os << "Unknown FSV type: " << (uint32_t)_mType;
- }
- return os;
-}
-
-template<typename T>
-std::ostream& operator<<(std::ostream& os, const C2FieldSupportedValuesHelper<T> &i) {
- return i._mImpl->streamOut(os);
-}
-template std::ostream& operator<<(std::ostream& os, const C2FieldSupportedValuesHelper<char> &i);
-template std::ostream& operator<<(std::ostream& os, const C2FieldSupportedValuesHelper<uint8_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2FieldSupportedValuesHelper<int32_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2FieldSupportedValuesHelper<uint32_t> &i);
-//template std::ostream& operator<<(std::ostream& os, const C2FieldSupportedValuesHelper<c2_cntr32_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2FieldSupportedValuesHelper<int64_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2FieldSupportedValuesHelper<uint64_t> &i);
-//template std::ostream& operator<<(std::ostream& os, const C2FieldSupportedValuesHelper<c2_cntr64_t> &i);
-template std::ostream& operator<<(std::ostream& os, const C2FieldSupportedValuesHelper<float> &i);
-
diff --git a/codec2/vndk/util/C2InterfaceHelper.cpp b/codec2/vndk/util/C2InterfaceHelper.cpp
deleted file mode 100644
index e447fbe..0000000
--- a/codec2/vndk/util/C2InterfaceHelper.cpp
+++ /dev/null
@@ -1,841 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <C2Debug.h>
-#include <C2ParamInternal.h>
-#include <util/C2InterfaceHelper.h>
-
-#include <android-base/stringprintf.h>
-
-using ::android::base::StringPrintf;
-
-/* --------------------------------- ReflectorHelper --------------------------------- */
-
-void C2ReflectorHelper::addStructDescriptors(
- std::vector<C2StructDescriptor> &structs, _Tuple<> *) {
- std::lock_guard<std::mutex> lock(_mMutex);
- for (C2StructDescriptor &strukt : structs) {
- // TODO: check if structure descriptions conflict with existing ones
- addStructDescriptor(std::move(strukt));
- }
-}
-
-std::unique_ptr<C2StructDescriptor>
-C2ReflectorHelper::describe(C2Param::CoreIndex paramIndex) const {
- std::lock_guard<std::mutex> lock(_mMutex);
- auto it = _mStructs.find(paramIndex);
- if (it == _mStructs.end()) {
- return nullptr;
- } else {
- return std::make_unique<C2StructDescriptor>(it->second);
- }
-};
-
-void C2ReflectorHelper::addStructDescriptor(C2StructDescriptor &&strukt) {
- if (_mStructs.find(strukt.coreIndex()) != _mStructs.end()) {
- // already added
- // TODO: validate that descriptor matches stored descriptor
- }
- // validate that all struct fields are known to this reflector
- for (const C2FieldDescriptor &fd : strukt) {
- if (fd.type() & C2FieldDescriptor::STRUCT_FLAG) {
- C2Param::CoreIndex coreIndex = fd.type() &~ C2FieldDescriptor::STRUCT_FLAG;
- if (_mStructs.find(coreIndex) == _mStructs.end()) {
- C2_LOG(INFO) << "missing struct descriptor #" << coreIndex << " for field "
- << fd.name() << " of struct #" << strukt.coreIndex();
- }
- }
- }
- _mStructs.emplace(strukt.coreIndex(), strukt);
-}
-
-
-/* ---------------------------- ParamHelper ---------------------------- */
-
-class C2InterfaceHelper::ParamHelper::Impl {
-public:
- Impl(ParamRef param, C2StringLiteral name, C2StructDescriptor &&strukt)
- : mParam(param), mName(name), _mStruct(strukt) { }
-
- Impl(Impl&&) = default;
-
- void addDownDependency(C2Param::Index index) {
- mDownDependencies.push_back(index);
- }
-
- C2InterfaceHelper::ParamHelper::attrib_t& attrib() {
- return mAttrib;
- }
-
- void build() {
- // move dependencies into descriptor
- mDescriptor = std::make_shared<C2ParamDescriptor>(
- index(), (C2ParamDescriptor::attrib_t)mAttrib,
- std::move(mName), std::move(mDependencies));
- }
-
- void createFieldsAndSupportedValues(const std::shared_ptr<C2ParamReflector> &reflector) {
- for (const C2FieldUtils::Info &f :
- C2FieldUtils::enumerateFields(*mDefaultValue, reflector)) {
- if (!f.isArithmetic()) {
- continue;
- }
- std::unique_ptr<C2FieldSupportedValues> fsvPointer;
-
- // create a breakable structure
- do {
- C2FieldSupportedValues fsv;
- switch (f.type()) {
- case C2FieldDescriptor::INT32: fsv = C2SupportedRange<int32_t>::Any(); break;
- case C2FieldDescriptor::UINT32: fsv = C2SupportedRange<uint32_t>::Any(); break;
- case C2FieldDescriptor::INT64: fsv = C2SupportedRange<int64_t>::Any(); break;
- case C2FieldDescriptor::UINT64: fsv = C2SupportedRange<uint64_t>::Any(); break;
- case C2FieldDescriptor::FLOAT: fsv = C2SupportedRange<float>::Any(); break;
- case C2FieldDescriptor::BLOB: fsv = C2SupportedRange<uint8_t>::Any(); break;
- case C2FieldDescriptor::STRING: fsv = C2SupportedRange<char>::Any(); break;
- default:
- continue; // break out of do {} while
- }
- fsvPointer = std::make_unique<C2FieldSupportedValues>(fsv);
- } while (false);
-
- mFields.emplace_hint(
- mFields.end(),
- _C2FieldId(f.offset(), f.size()),
- std::make_shared<FieldHelper>(
- mParam, _C2FieldId(f.offset(), f.size()), std::move(fsvPointer)));
- }
- }
-
- /**
- * Finds a field descriptor.
- */
- std::shared_ptr<FieldHelper> findField(size_t baseOffs, size_t baseSize) const {
- auto it = mFields.find(_C2FieldId(baseOffs, baseSize));
- if (it == mFields.end()) {
- return nullptr;
- }
- return it->second;
- }
-
- const std::vector<ParamRef> getDependenciesAsRefs() const {
- return mDependenciesAsRefs;
- }
-
- std::shared_ptr<const C2ParamDescriptor> getDescriptor() const {
- return mDescriptor;
- }
-
- const std::vector<C2Param::Index> getDownDependencies() const {
- return mDownDependencies;
- }
-
- C2Param::Index index() const {
- if (!mDefaultValue) {
- fprintf(stderr, "%s missing default value\n", mName.c_str());
- }
- return mDefaultValue->index();
- }
-
- C2String name() const {
- return mName;
- }
-
- const ParamRef ref() const {
- return mParam;
- }
-
- C2StructDescriptor retrieveStructDescriptor() {
- return std::move(_mStruct);
- }
-
- void setDefaultValue(std::shared_ptr<C2Param> default_) {
- mDefaultValue = default_;
- }
-
- void setDependencies(std::vector<C2Param::Index> indices, std::vector<ParamRef> refs) {
- mDependencies = indices;
- mDependenciesAsRefs = refs;
- }
-
- void setFields(std::vector<C2ParamFieldValues> &&fields) {
- // do not allow adding fields multiple times, or to const values
- if (!mFields.empty()) {
- C2_LOG(FATAL) << "Trying to add fields to param " << mName << " multiple times";
- } else if (mAttrib & attrib_t::IS_CONST) {
- C2_LOG(FATAL) << "Trying to add fields to const param " << mName;
- }
-
- for (C2ParamFieldValues &pfv : fields) {
- mFields.emplace_hint(
- mFields.end(),
- // _C2FieldId constructor
- _C2ParamInspector::GetField(pfv.paramOrField),
- // Field constructor
- std::make_shared<FieldHelper>(mParam,
- _C2ParamInspector::GetField(pfv.paramOrField),
- std::move(pfv.values)));
- }
- }
-
- void setGetter(std::function<std::shared_ptr<C2Param>(bool)> getter) {
- mGetter = getter;
- }
-
- void setSetter(std::function<C2R(const C2Param *, bool, bool *, Factory &)> setter) {
- mSetter = setter;
- }
-
- c2_status_t trySet(
- const C2Param *value, bool mayBlock, bool *changed, Factory &f,
- std::vector<std::unique_ptr<C2SettingResult>>* const failures) {
- C2R result = mSetter(value, mayBlock, changed, f);
- return result.retrieveFailures(failures);
- }
-
- c2_status_t validate(const std::shared_ptr<C2ParamReflector> &reflector) {
- if (!mSetter && mFields.empty()) {
- C2_LOG(WARNING) << "Param " << mName << " has no setter, making it const";
- // dependencies are empty in this case
- mAttrib |= attrib_t::IS_CONST;
- } else if (!mSetter) {
- C2_LOG(FATAL) << "Param " << mName << " has no setter";
- }
-
- if (mAttrib & attrib_t::IS_CONST) {
- createFieldsAndSupportedValues(reflector);
- } else {
- // TODO: update default based on setter and verify that FSV covers the values
- }
-
- if (mFields.empty()) {
- C2_LOG(FATAL) << "Param " << mName << " has no fields";
- }
-
- return C2_OK;
- }
-
- std::shared_ptr<C2Param> value() {
- return mParam.get();
- }
-
- std::shared_ptr<const C2Param> value() const {
- return mParam.get();
- }
-
-private:
- typedef _C2ParamInspector::attrib_t attrib_t;
- ParamRef mParam;
- C2String mName;
- C2StructDescriptor _mStruct;
- std::shared_ptr<C2Param> mDefaultValue;
- attrib_t mAttrib;
- std::function<C2R(const C2Param *, bool, bool *, Factory &)> mSetter;
- std::function<std::shared_ptr<C2Param>(bool)> mGetter;
- std::vector<C2Param::Index> mDependencies;
- std::vector<ParamRef> mDependenciesAsRefs;
- std::vector<C2Param::Index> mDownDependencies; // TODO: this does not work for stream dependencies
- std::map<_C2FieldId, std::shared_ptr<FieldHelper>> mFields;
- std::shared_ptr<C2ParamDescriptor> mDescriptor;
-};
-
-C2InterfaceHelper::ParamHelper::ParamHelper(
- ParamRef param, C2StringLiteral name, C2StructDescriptor &&strukt)
- : mImpl(std::make_unique<C2InterfaceHelper::ParamHelper::Impl>(
- param, name, std::move(strukt))) { }
-
-C2InterfaceHelper::ParamHelper::ParamHelper(C2InterfaceHelper::ParamHelper &&) = default;
-
-C2InterfaceHelper::ParamHelper::~ParamHelper() = default;
-
-void C2InterfaceHelper::ParamHelper::addDownDependency(C2Param::Index index) {
- return mImpl->addDownDependency(index);
-}
-
-C2InterfaceHelper::ParamHelper::attrib_t& C2InterfaceHelper::ParamHelper::attrib() {
- return mImpl->attrib();
-}
-
-std::shared_ptr<C2InterfaceHelper::ParamHelper> C2InterfaceHelper::ParamHelper::build() {
- mImpl->build();
- return std::make_shared<C2InterfaceHelper::ParamHelper>(std::move(*this));
-}
-
-std::shared_ptr<C2InterfaceHelper::FieldHelper>
-C2InterfaceHelper::ParamHelper::findField(size_t baseOffs, size_t baseSize) const {
- return mImpl->findField(baseOffs, baseSize);
-}
-
-const std::vector<C2InterfaceHelper::ParamRef>
-C2InterfaceHelper::ParamHelper::getDependenciesAsRefs() const {
- return mImpl->getDependenciesAsRefs();
-}
-
-std::shared_ptr<const C2ParamDescriptor>
-C2InterfaceHelper::ParamHelper::getDescriptor() const {
- return mImpl->getDescriptor();
-}
-
-const std::vector<C2Param::Index> C2InterfaceHelper::ParamHelper::getDownDependencies() const {
- return mImpl->getDownDependencies();
-}
-
-C2Param::Index C2InterfaceHelper::ParamHelper::index() const {
- return mImpl->index();
-}
-
-C2String C2InterfaceHelper::ParamHelper::name() const {
- return mImpl->name();
-}
-
-const C2InterfaceHelper::ParamRef C2InterfaceHelper::ParamHelper::ref() const {
- return mImpl->ref();
-}
-
-C2StructDescriptor C2InterfaceHelper::ParamHelper::retrieveStructDescriptor() {
- return mImpl->retrieveStructDescriptor();
-}
-
-void C2InterfaceHelper::ParamHelper::setDefaultValue(std::shared_ptr<C2Param> default_) {
- mImpl->setDefaultValue(default_);
-}
-
-void C2InterfaceHelper::ParamHelper::setDependencies(
- std::vector<C2Param::Index> indices, std::vector<ParamRef> refs) {
- mImpl->setDependencies(indices, refs);
-}
-
-void C2InterfaceHelper::ParamHelper::setFields(std::vector<C2ParamFieldValues> &&fields) {
- return mImpl->setFields(std::move(fields));
-}
-
-void C2InterfaceHelper::ParamHelper::setGetter(
- std::function<std::shared_ptr<C2Param>(bool)> getter) {
- mImpl->setGetter(getter);
-}
-
-void C2InterfaceHelper::ParamHelper::setSetter(
- std::function<C2R(const C2Param *, bool, bool *, Factory &)> setter) {
- mImpl->setSetter(setter);
-}
-
-c2_status_t C2InterfaceHelper::ParamHelper::trySet(
- const C2Param *value, bool mayBlock, bool *changed, Factory &f,
- std::vector<std::unique_ptr<C2SettingResult>>* const failures) {
- return mImpl->trySet(value, mayBlock, changed, f, failures);
-}
-
-c2_status_t C2InterfaceHelper::ParamHelper::validate(
- const std::shared_ptr<C2ParamReflector> &reflector) {
- return mImpl->validate(reflector);
-}
-
-std::shared_ptr<C2Param> C2InterfaceHelper::ParamHelper::value() {
- return mImpl->value();
-}
-
-std::shared_ptr<const C2Param> C2InterfaceHelper::ParamHelper::value() const {
- return mImpl->value();
-}
-
-/* ---------------------------- FieldHelper ---------------------------- */
-
-C2ParamField C2InterfaceHelper::FieldHelper::makeParamField(C2Param::Index index) const {
- return _C2ParamInspector::CreateParamField(index, mFieldId);
-}
-
-C2InterfaceHelper::FieldHelper::FieldHelper(const ParamRef ¶m, const _C2FieldId &field,
- std::unique_ptr<C2FieldSupportedValues> &&values)
- : mParam(param),
- mFieldId(field),
- mPossible(std::move(values)) {
- C2_LOG(VERBOSE) << "Creating field helper " << field << " "
- << C2FieldSupportedValuesHelper<uint32_t>(*mPossible);
-}
-
-void C2InterfaceHelper::FieldHelper::setSupportedValues(
- std::unique_ptr<C2FieldSupportedValues> &&values) {
- mSupported = std::move(values);
-}
-
-const C2FieldSupportedValues *C2InterfaceHelper::FieldHelper::getSupportedValues() const {
- return (mSupported ? mSupported : mPossible).get();
-}
-
-const C2FieldSupportedValues *C2InterfaceHelper::FieldHelper::getPossibleValues() const {
- return mPossible.get();
-}
-
-
-/* ---------------------------- Field ---------------------------- */
-
-/**
- * Wrapper around field-supported-values builder that gets stored in the
- * field helper when the builder goes out of scope.
- */
-template<typename T>
-struct SupportedValuesBuilder : C2ParamFieldValuesBuilder<T> {
- SupportedValuesBuilder(
- C2ParamField &field, std::shared_ptr<C2InterfaceHelper::FieldHelper> helper)
- : C2ParamFieldValuesBuilder<T>(field), _mHelper(helper), _mField(field) {
- }
-
- /**
- * Save builder values on destruction.
- */
- virtual ~SupportedValuesBuilder() override {
- _mHelper->setSupportedValues(std::move(C2ParamFieldValues(*this).values));
- }
-
-private:
- std::shared_ptr<C2InterfaceHelper::FieldHelper> _mHelper;
- C2ParamField _mField;
-};
-
-
-template<typename T>
-C2ParamFieldValuesBuilder<T> C2InterfaceHelper::Field<T>::shouldBe() const {
- return C2ParamFieldValuesBuilder<T>(_mField);
-}
-
-template<typename T>
-C2ParamFieldValuesBuilder<T> C2InterfaceHelper::Field<T>::mustBe() {
- return SupportedValuesBuilder<T>(_mField, _mHelper);
-}
-
-/*
-template<typename T> C2SettingResultsBuilder C2InterfaceHelper::Field<T>::validatePossible(T &value)
-const {
- /// TODO
- return C2SettingResultsBuilder::Ok();
-}
-*/
-
-template<typename T>
-C2InterfaceHelper::Field<T>::Field(std::shared_ptr<FieldHelper> helper, C2Param::Index index)
- : _mHelper(helper), _mField(helper->makeParamField(index)) { }
-
-template struct C2InterfaceHelper::Field<uint8_t>;
-template struct C2InterfaceHelper::Field<char>;
-template struct C2InterfaceHelper::Field<int32_t>;
-template struct C2InterfaceHelper::Field<uint32_t>;
-//template struct C2InterfaceHelper::Field<c2_cntr32_t>;
-template struct C2InterfaceHelper::Field<int64_t>;
-template struct C2InterfaceHelper::Field<uint64_t>;
-//template struct C2InterfaceHelper::Field<c2_cntr64_t>;
-template struct C2InterfaceHelper::Field<float>;
-
-/* --------------------------------- Factory --------------------------------- */
-
-struct C2InterfaceHelper::FactoryImpl : public C2InterfaceHelper::Factory {
- virtual std::shared_ptr<C2ParamReflector> getReflector() const override {
- return _mReflector;
- }
-
- virtual std::shared_ptr<ParamHelper>
- getParamHelper(const ParamRef ¶m) const override {
- return _mParams.find(param)->second;
- }
-
-public:
- FactoryImpl(std::shared_ptr<C2ParamReflector> reflector)
- : _mReflector(reflector) { }
-
- virtual ~FactoryImpl() = default;
-
- void addParam(std::shared_ptr<ParamHelper> param) {
- _mParams.insert({ param->ref(), param });
- _mIndexToHelper.insert({param->index(), param});
-
- // add down-dependencies (and validate dependencies as a result)
- size_t ix = 0;
- for (const ParamRef &ref : param->getDependenciesAsRefs()) {
- // dependencies must already be defined
- if (!_mParams.count(ref)) {
- C2_LOG(FATAL) << "Parameter " << param->name() << " has a dependency at index "
- << ix << " that is not yet defined";
- }
- _mParams.find(ref)->second->addDownDependency(param->index());
- ++ix;
- }
-
- _mDependencyIndex.emplace(param->index(), _mDependencyIndex.size());
- }
-
- std::shared_ptr<ParamHelper> getParam(C2Param::Index ix) const {
- // TODO: handle streams separately
- const auto it = _mIndexToHelper.find(ix);
- if (it == _mIndexToHelper.end()) {
- return nullptr;
- }
- return it->second;
- }
-
- /**
- * TODO: this could return a copy using proper pointer cast.
- */
- std::shared_ptr<C2Param> getParamValue(C2Param::Index ix) const {
- std::shared_ptr<ParamHelper> helper = getParam(ix);
- return helper ? helper->value() : nullptr;
- }
-
- c2_status_t querySupportedParams(
- std::vector<std::shared_ptr<C2ParamDescriptor>> *const params) const {
- for (const auto &it : _mParams) {
- // TODO: change querySupportedParams signature?
- params->push_back(
- std::const_pointer_cast<C2ParamDescriptor>(it.second->getDescriptor()));
- }
- // TODO: handle errors
- return C2_OK;
- }
-
- size_t getDependencyIndex(C2Param::Index ix) {
- // in this version of the helper there is only a single stream so
- // we can look up directly by index
- auto it = _mDependencyIndex.find(ix);
- return it == _mDependencyIndex.end() ? SIZE_MAX : it->second;
- }
-
-private:
- std::map<ParamRef, std::shared_ptr<ParamHelper>> _mParams;
- std::map<C2Param::Index, std::shared_ptr<ParamHelper>> _mIndexToHelper;
- std::shared_ptr<C2ParamReflector> _mReflector;
- std::map<C2Param::Index, size_t> _mDependencyIndex;
-};
-
-/* --------------------------------- Helper --------------------------------- */
-
-namespace {
-
-static std::string asString(C2Param *p) {
- char addr[20];
- sprintf(addr, "%p:[", p);
- std::string v = addr;
- for (size_t i = 0; i < p->size(); ++i) {
- char d[4];
- sprintf(d, " %02x", *(((uint8_t *)p) + i));
- v += d + (i == 0);
- }
- return v + "]";
-}
-
-}
-
-C2InterfaceHelper::C2InterfaceHelper(std::shared_ptr<C2ReflectorHelper> reflector)
- : mReflector(reflector),
- _mFactory(std::make_shared<FactoryImpl>(reflector)) { }
-
-
-size_t C2InterfaceHelper::GetBaseOffset(const std::shared_ptr<C2ParamReflector> &reflector,
- C2Param::CoreIndex index, size_t offset) {
- std::unique_ptr<C2StructDescriptor> param = reflector->describe(index);
- if (param == nullptr) {
- return ~(size_t)0; // param structure not described
- }
-
- for (const C2FieldDescriptor &field : *param) {
- size_t fieldOffset = _C2ParamInspector::GetOffset(field);
- size_t fieldSize = _C2ParamInspector::GetSize(field);
- size_t fieldExtent = field.extent();
- if (offset < fieldOffset) {
- return ~(size_t)0; // not found
- }
- if (offset == fieldOffset) {
- // exact match
- return offset;
- }
- if (field.extent() == 0 || offset < fieldOffset + fieldSize * fieldExtent) {
- // reduce to first element in case of array
- offset = fieldOffset + (offset - fieldOffset) % fieldSize;
- if (field.type() >= C2FieldDescriptor::STRUCT_FLAG) {
- // this offset is within a field
- offset = GetBaseOffset(
- reflector, field.type() & ~C2FieldDescriptor::STRUCT_FLAG,
- offset - fieldOffset);
- return ~offset ? fieldOffset + offset : offset;
- }
- }
- }
- return ~(size_t)0; // not found
-}
-
-void C2InterfaceHelper::addParameter(std::shared_ptr<ParamHelper> param) {
- std::lock_guard<std::mutex> lock(mMutex);
- mReflector->addStructDescriptor(param->retrieveStructDescriptor());
- c2_status_t err = param->validate(mReflector);
- if (err != C2_CORRUPTED) {
- _mFactory->addParam(param);
-
- // run setter to ensure correct values
- bool changed = false;
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- (void)param->trySet(param->value().get(), C2_MAY_BLOCK, &changed, *_mFactory, &failures);
- }
-}
-
-c2_status_t C2InterfaceHelper::config(
- const std::vector<C2Param*> ¶ms, c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2SettingResult>>* const failures, bool updateParams,
- std::vector<std::shared_ptr<C2Param>> *changes __unused /* TODO */) {
- std::lock_guard<std::mutex> lock(mMutex);
- bool paramWasInvalid = false; // TODO is this the same as bad value?
- bool paramNotFound = false;
- bool paramBadValue = false;
- bool paramNoMemory = false;
- bool paramBlocking = false;
- bool paramTimedOut = false;
- bool paramCorrupted = false;
-
- // dependencies
- // down dependencies are marked dirty, but params set are not immediately
- // marked dirty (unless they become down dependency) so that we can
- // avoid setting them if they did not change
-
- // TODO: there could be multiple indices for the same dependency index
- // { depIx, paramIx } may be a suitable key
- std::map<size_t, std::pair<C2Param::Index, bool>> dependencies;
-
- // we cannot determine the last valid parameter, so add an extra
- // loop iteration after the last parameter
- for (size_t p_ix = 0; p_ix <= params.size(); ++p_ix) {
- C2Param *p = nullptr;
- C2Param::Index paramIx = 0u;
- size_t paramDepIx = SIZE_MAX;
- bool last = p_ix == params.size();
- if (!last) {
- p = params[p_ix];
- if (!*p) {
- paramWasInvalid = true;
- p->invalidate();
- continue;
- }
-
- paramIx = p->index();
- paramDepIx = getDependencyIndex_l(paramIx);
- if (paramDepIx == SIZE_MAX) {
- // unsupported parameter
- paramNotFound = true;
- continue;
- }
-
- //
- // first insert - mark not dirty
- // it may have been marked dirty by a dependency update
- // this does not overrwrite(!)
- (void)dependencies.insert({ paramDepIx, { paramIx, false /* dirty */ }});
- auto it = dependencies.find(paramDepIx);
- C2_LOG(VERBOSE) << "marking dependency for setting at #" << paramDepIx << ": "
- << it->second.first << ", update "
- << (it->second.second ? "always (dirty)" : "only if changed");
- } else {
- // process any remaining dependencies
- if (dependencies.empty()) {
- continue;
- }
- C2_LOG(VERBOSE) << "handling dirty down dependencies after last setting";
- }
-
- // process any dirtied down-dependencies until the next param
- while (dependencies.size() && dependencies.begin()->first <= paramDepIx) {
- auto min = dependencies.begin();
- C2Param::Index ix = min->second.first;
- bool dirty = min->second.second;
- dependencies.erase(min);
-
- std::shared_ptr<ParamHelper> param = _mFactory->getParam(ix);
- C2_LOG(VERBOSE) << "old value " << asString(param->value().get());
- if (!last) {
- C2_LOG(VERBOSE) << "new value " << asString(p);
- }
- if (!last && !dirty && ix == paramIx && *param->value() == *p) {
- // no change in value - and dependencies were not updated
- // no need to update
- C2_LOG(VERBOSE) << "ignoring setting unchanged param " << ix;
- continue;
- }
-
- // apply setting
- bool changed = false;
- C2_LOG(VERBOSE) << "setting param " << ix;
- std::shared_ptr<C2Param> oldValue = param->value();
- c2_status_t res = param->trySet(
- (!last && paramIx == ix) ? p : param->value().get(), mayBlock,
- &changed, *_mFactory, failures);
- std::shared_ptr<C2Param> newValue = param->value();
- C2_CHECK_EQ(oldValue == newValue, *oldValue == *newValue);
- switch (res) {
- case C2_OK: break;
- case C2_BAD_VALUE: paramBadValue = true; break;
- case C2_NO_MEMORY: paramNoMemory = true; break;
- case C2_TIMED_OUT: paramTimedOut = true; break;
- case C2_BLOCKING: paramBlocking = true; break;
- case C2_CORRUPTED: paramCorrupted = true; break;
- default: ;// TODO fatal
- }
-
- // copy back result for configured values (or invalidate if it does not fit or match)
- if (updateParams && !last && paramIx == ix) {
- if (!p->updateFrom(*param->value())) {
- p->invalidate();
- }
- }
-
- // compare ptrs as params are copy on write
- if (changed) {
- C2_LOG(VERBOSE) << "param " << ix << " value changed";
- // value changed update down-dependencies and mark them dirty
- for (const C2Param::Index ix : param->getDownDependencies()) {
- C2_LOG(VERBOSE) << 1;
- auto insert_res = dependencies.insert(
- { getDependencyIndex_l(ix), { ix, true /* dirty */ }});
- if (!insert_res.second) {
- (*insert_res.first).second.second = true; // mark dirty
- }
-
- auto it = dependencies.find(getDependencyIndex_l(ix));
- C2_CHECK(it->second.second);
- C2_LOG(VERBOSE) << "marking down dependencies to update at #"
- << getDependencyIndex_l(ix) << ": " << it->second.first;
- }
- }
- }
- }
-
- return (paramCorrupted ? C2_CORRUPTED :
- paramBlocking ? C2_BLOCKING :
- paramTimedOut ? C2_TIMED_OUT :
- paramNoMemory ? C2_NO_MEMORY :
- (paramBadValue || paramWasInvalid) ? C2_BAD_VALUE :
- paramNotFound ? C2_BAD_INDEX : C2_OK);
-}
-
-size_t C2InterfaceHelper::getDependencyIndex_l(C2Param::Index ix) const {
- return _mFactory->getDependencyIndex(ix);
-}
-
-c2_status_t C2InterfaceHelper::query(
- const std::vector<C2Param*> &stackParams,
- const std::vector<C2Param::Index> &heapParamIndices,
- c2_blocking_t mayBlock __unused /* TODO */,
- std::vector<std::unique_ptr<C2Param>>* const heapParams) const {
- std::lock_guard<std::mutex> lock(mMutex);
- bool paramWasInvalid = false;
- bool paramNotFound = false;
- bool paramDidNotFit = false;
- bool paramNoMemory = false;
-
- for (C2Param* const p : stackParams) {
- if (!*p) {
- paramWasInvalid = true;
- p->invalidate();
- } else {
- std::shared_ptr<C2Param> value = _mFactory->getParamValue(p->index());
- if (!value) {
- paramNotFound = true;
- p->invalidate();
- } else if (!p->updateFrom(*value)) {
- paramDidNotFit = true;
- p->invalidate();
- }
- }
- }
-
- for (const C2Param::Index ix : heapParamIndices) {
- std::shared_ptr<C2Param> value = _mFactory->getParamValue(ix);
- if (value) {
- std::unique_ptr<C2Param> p = C2Param::Copy(*value);
- if (p != nullptr) {
- heapParams->push_back(std::move(p));
- } else {
- paramNoMemory = true;
- }
- } else {
- paramNotFound = true;
- }
- }
-
- return paramNoMemory ? C2_NO_MEMORY :
- paramNotFound ? C2_BAD_INDEX :
- // the following errors are not marked in the return value
- paramDidNotFit ? C2_OK :
- paramWasInvalid ? C2_OK : C2_OK;
-}
-
-c2_status_t C2InterfaceHelper::querySupportedParams(
- std::vector<std::shared_ptr<C2ParamDescriptor>> *const params) const {
- std::lock_guard<std::mutex> lock(mMutex);
- return _mFactory->querySupportedParams(params);
-}
-
-
-c2_status_t C2InterfaceHelper::querySupportedValues(
- std::vector<C2FieldSupportedValuesQuery> &fields, c2_blocking_t mayBlock __unused) const {
- std::lock_guard<std::mutex> lock(mMutex);
- for (C2FieldSupportedValuesQuery &query : fields) {
- C2_LOG(VERBOSE) << "querying field " << query.field();
- C2Param::Index ix = _C2ParamInspector::GetIndex(query.field());
- std::shared_ptr<ParamHelper> param = _mFactory->getParam(ix);
- if (!param) {
- C2_LOG(VERBOSE) << "bad param";
- query.status = C2_BAD_INDEX;
- continue;
- }
- size_t offs = GetBaseOffset(
- mReflector, ix,
- _C2ParamInspector::GetOffset(query.field()) - sizeof(C2Param));
- if (~offs == 0) {
- C2_LOG(VERBOSE) << "field could not be found";
- query.status = C2_NOT_FOUND;
- continue;
- }
- offs += sizeof(C2Param);
- C2_LOG(VERBOSE) << "field resolved to "
- << StringPrintf("@%02zx+%02x", offs, _C2ParamInspector::GetSize(query.field()));
- std::shared_ptr<FieldHelper> field =
- param->findField(offs, _C2ParamInspector::GetSize(query.field()));
- if (!field) {
- C2_LOG(VERBOSE) << "bad field";
- query.status = C2_NOT_FOUND;
- continue;
- }
-
- const C2FieldSupportedValues *values = nullptr;
- switch (query.type()) {
- case C2FieldSupportedValuesQuery::CURRENT:
- values = field->getSupportedValues();
- break;
- case C2FieldSupportedValuesQuery::POSSIBLE:
- values = field->getPossibleValues();
- break;
- default:
- C2_LOG(VERBOSE) << "bad query type: " << query.type();
- query.status = C2_BAD_VALUE;
- }
- if (values) {
- query.values = *values;
- query.status = C2_OK;
- } else {
- C2_LOG(DEBUG) << "no values published by component";
- query.status = C2_CORRUPTED;
- }
- }
- return C2_OK;
-}
-
-std::unique_lock<std::mutex> C2InterfaceHelper::lock() const {
- return std::unique_lock<std::mutex>(mMutex);
-}
diff --git a/codec2/vndk/util/C2InterfaceUtils.cpp b/codec2/vndk/util/C2InterfaceUtils.cpp
deleted file mode 100644
index 61ec911..0000000
--- a/codec2/vndk/util/C2InterfaceUtils.cpp
+++ /dev/null
@@ -1,1292 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wunused-parameter"
-#pragma clang diagnostic ignored "-Wunused-variable"
-#pragma clang diagnostic ignored "-Wunused-value"
-
-#define C2_LOG_VERBOSE
-
-#include <C2Debug.h>
-#include <C2Param.h>
-#include <C2ParamDef.h>
-#include <C2ParamInternal.h>
-#include <util/C2InterfaceUtils.h>
-
-#include <cmath>
-#include <limits>
-#include <map>
-#include <type_traits>
-
-#include <android-base/stringprintf.h>
-
-std::ostream& operator<<(std::ostream& os, const _C2FieldId &i);
-
-std::ostream& operator<<(std::ostream& os, const C2ParamField &i);
-
-/* ---------------------------- C2SupportedRange ---------------------------- */
-
-/**
- * Helper class for supported values range calculations.
- */
-template<typename T, bool FP=std::is_floating_point<T>::value>
-struct _C2TypedSupportedRangeHelper {
- /**
- * type of range size: a - b if a >= b and a and b are of type T
- */
- typedef typename std::make_unsigned<T>::type DiffType;
-
- /**
- * calculate (high - low) mod step
- */
- static DiffType mod(T low, T high, T step) {
- return DiffType(high - low) % DiffType(step);
- }
-};
-
-template<typename T>
-struct _C2TypedSupportedRangeHelper<T, true> {
- typedef T DiffType;
-
- static DiffType mod(T low, T high, T step) {
- return fmod(high - low, step);
- }
-};
-
-template<typename T>
-C2SupportedRange<T>::C2SupportedRange(const C2FieldSupportedValues &values) {
- if (values.type == C2FieldSupportedValues::RANGE) {
- _mMin = values.range.min.ref<ValueType>();
- _mMax = values.range.max.ref<ValueType>();
- _mStep = values.range.step.ref<ValueType>();
- _mNum = values.range.num.ref<ValueType>();
- _mDenom = values.range.denom.ref<ValueType>();
- } else {
- _mMin = MAX_VALUE;
- _mMax = MIN_VALUE;
- _mStep = MIN_STEP;
- _mNum = 0;
- _mDenom = 0;
- }
-}
-
-template<typename T>
-bool C2SupportedRange<T>::contains(T value) const {
- // value must fall between min and max
- if (value < _mMin || value > _mMax) {
- return false;
- }
- // simple ranges contain all values between min and max
- if (isSimpleRange()) {
- return true;
- }
- // min is always part of the range
- if (value == _mMin) {
- return true;
- }
- // stepped ranges require (val - min) % step to be zero
- if (isArithmeticSeries()) {
- return _C2TypedSupportedRangeHelper<T>::mod(_mMin, value, _mStep) == 0;
- }
- // pure geometric series require (val / min) to be integer multiple of (num/denom)
- if (isGeometricSeries()) {
- if (value <= 0) {
- return false;
- }
- double log2base = log2(_mNum / _mDenom);
- double power = llround(log2(value / double(_mMin)) / log2base);
- // TODO: validate that result falls within precision (other than round)
- return value == T(_mMin * pow(_mNum / _mDenom, power) + MIN_STEP / 2);
- }
- // multiply-accumulate series require validating by walking through the series
- if (isMacSeries()) {
- double lastValue = _mMin;
- double base = _mNum / _mDenom;
- while (true) {
- // this cast is safe as _mMin <= lastValue <= _mMax
- if (T(lastValue + MIN_STEP / 2) == value) {
- return true;
- }
- double nextValue = fma(lastValue, base, _mStep);
- if (nextValue <= lastValue || nextValue > _mMax) {
- return false; // series is no longer monotonic or within range
- }
- lastValue = nextValue;
- };
- }
- // if we are here, this must be an invalid range
- return false;
-}
-
-template<typename T>
-C2SupportedRange<T> C2SupportedRange<T>::limitedTo(const C2SupportedRange<T> &limit) const {
- // TODO - this only works for simple ranges
- return C2SupportedRange(std::max(_mMin, limit._mMin), std::min(_mMax, limit._mMax),
- std::max(_mStep, limit._mStep));
-}
-
-template class C2SupportedRange<uint8_t>;
-template class C2SupportedRange<char>;
-template class C2SupportedRange<int32_t>;
-template class C2SupportedRange<uint32_t>;
-//template class C2SupportedRange<c2_cntr32_t>;
-template class C2SupportedRange<int64_t>;
-template class C2SupportedRange<uint64_t>;
-//template class C2SupportedRange<c2_cntr64_t>;
-template class C2SupportedRange<float>;
-
-/* -------------------------- C2SupportedFlags -------------------------- */
-
-/**
- * Ordered supported flag set for a field of a given type.
- */
-// float flags are not supported, but define a few methods to support generic supported values code
-template<>
-bool C2SupportedFlags<float>::contains(float value) const {
- return false;
-}
-
-template<>
-const std::vector<float> C2SupportedFlags<float>::flags() const {
- return std::vector<float>();
-}
-
-template<>
-C2SupportedFlags<float> C2SupportedFlags<float>::limitedTo(const C2SupportedFlags<float> &limit) const {
- std::vector<C2Value::Primitive> values;
- return C2SupportedFlags(std::move(values));
-}
-
-template<>
-float C2SupportedFlags<float>::min() const {
- return 0;
-}
-
-template<typename T>
-bool C2SupportedFlags<T>::contains(T value) const {
- // value must contain the minimal mask
- T minMask = min();
- if (~value & minMask) {
- return false;
- }
- value &= ~minMask;
- // otherwise, remove flags from value and see if we arrive at 0
- for (const C2Value::Primitive &v : _mValues) {
- if (value == 0) {
- break;
- }
- if ((~value & v.ref<ValueType>()) == 0) {
- value &= ~v.ref<ValueType>();
- }
- }
- return value == 0;
-}
-
-template<typename T>
-const std::vector<T> C2SupportedFlags<T>::flags() const {
- std::vector<T> vals(c2_max(_mValues.size(), 1u) - 1);
- if (!_mValues.empty()) {
- std::transform(_mValues.cbegin() + 1, _mValues.cend(), vals.begin(),
- [](const C2Value::Primitive &p)->T {
- return p.ref<ValueType>();
- });
- }
- return vals;
-}
-
-template<typename T>
-C2SupportedFlags<T> C2SupportedFlags<T>::limitedTo(const C2SupportedFlags<T> &limit) const {
- std::vector<C2Value::Primitive> values = _mValues; // make a copy
- T minMask = min() | limit.min();
- // minimum mask must be covered by both this and other
- if (limit.contains(minMask) && contains(minMask)) {
- values[0] = minMask;
- // keep only flags that are covered by limit
- std::remove_if(values.begin(), values.end(), [&limit, minMask](const C2Value::Primitive &v) -> bool {
- T value = v.ref<ValueType>() | minMask;
- return value == minMask || !limit.contains(value); });
- // we also need to do it vice versa
- for (const C2Value::Primitive &v : _mValues) {
- T value = v.ref<ValueType>() | minMask;
- if (value != minMask && contains(value)) {
- values.emplace_back((ValueType)value);
- }
- }
- }
- return C2SupportedFlags(std::move(values));
-}
-
-template<typename T>
-T C2SupportedFlags<T>::min() const {
- if (!_mValues.empty()) {
- return _mValues.front().template ref<ValueType>();
- } else {
- return T(0);
- }
-}
-
-template class C2SupportedFlags<uint8_t>;
-template class C2SupportedFlags<char>;
-template class C2SupportedFlags<int32_t>;
-template class C2SupportedFlags<uint32_t>;
-//template class C2SupportedFlags<c2_cntr32_t>;
-template class C2SupportedFlags<int64_t>;
-template class C2SupportedFlags<uint64_t>;
-//template class C2SupportedFlags<c2_cntr64_t>;
-
-/* -------------------------- C2SupportedValueSet -------------------------- */
-
-/**
- * Ordered supported value set for a field of a given type.
- */
-template<typename T>
-bool C2SupportedValueSet<T>::contains(T value) const {
- return std::find_if(_mValues.cbegin(), _mValues.cend(),
- [value](const C2Value::Primitive &p) -> bool {
- return value == p.ref<ValueType>();
- }) != _mValues.cend();
-}
-
-template<typename T>
-C2SupportedValueSet<T> C2SupportedValueSet<T>::limitedTo(const C2SupportedValueSet<T> &limit) const {
- std::vector<C2Value::Primitive> values = _mValues; // make a copy
- std::remove_if(values.begin(), values.end(), [&limit](const C2Value::Primitive &v) -> bool {
- return !limit.contains(v.ref<ValueType>()); });
- return C2SupportedValueSet(std::move(values));
-}
-
-template<typename T>
-C2SupportedValueSet<T> C2SupportedValueSet<T>::limitedTo(const C2SupportedRange<T> &limit) const {
- std::vector<C2Value::Primitive> values = _mValues; // make a copy
- std::remove_if(values.begin(), values.end(), [&limit](const C2Value::Primitive &v) -> bool {
- return !limit.contains(v.ref<ValueType>()); });
- return C2SupportedValueSet(std::move(values));
-}
-
-template<typename T>
-C2SupportedValueSet<T> C2SupportedValueSet<T>::limitedTo(const C2SupportedFlags<T> &limit) const {
- std::vector<C2Value::Primitive> values = _mValues; // make a copy
- std::remove_if(values.begin(), values.end(), [&limit](const C2Value::Primitive &v) -> bool {
- return !limit.contains(v.ref<ValueType>()); });
- return C2SupportedValueSet(std::move(values));
-}
-
-template<typename T>
-const std::vector<T> C2SupportedValueSet<T>::values() const {
- std::vector<T> vals(_mValues.size());
- std::transform(_mValues.cbegin(), _mValues.cend(), vals.begin(), [](const C2Value::Primitive &p) -> T {
- return p.ref<ValueType>();
- });
- return vals;
-}
-
-template class C2SupportedValueSet<uint8_t>;
-template class C2SupportedValueSet<char>;
-template class C2SupportedValueSet<int32_t>;
-template class C2SupportedValueSet<uint32_t>;
-//template class C2SupportedValueSet<c2_cntr32_t>;
-template class C2SupportedValueSet<int64_t>;
-template class C2SupportedValueSet<uint64_t>;
-//template class C2SupportedValueSet<c2_cntr64_t>;
-template class C2SupportedValueSet<float>;
-
-/* ---------------------- C2FieldSupportedValuesHelper ---------------------- */
-
-template<typename T>
-struct C2FieldSupportedValuesHelper<T>::Impl {
- Impl(const C2FieldSupportedValues &values)
- : _mType(values.type),
- _mRange(values),
- _mValues(values),
- _mFlags(values) { }
-
- bool supports(T value) const;
-
-private:
- typedef typename _C2FieldValueHelper<T>::ValueType ValueType;
- C2FieldSupportedValues::type_t _mType;
- C2SupportedRange<ValueType> _mRange;
- C2SupportedValueSet<ValueType> _mValues;
- C2SupportedValueSet<ValueType> _mFlags;
-
-// friend std::ostream& operator<< <T>(std::ostream& os, const C2FieldSupportedValuesHelper<T>::Impl &i);
-// friend std::ostream& operator<<(std::ostream& os, const Impl &i);
- std::ostream& streamOut(std::ostream& os) const;
-};
-
-template<typename T>
-bool C2FieldSupportedValuesHelper<T>::Impl::supports(T value) const {
- switch (_mType) {
- case C2FieldSupportedValues::RANGE: return _mRange.contains(value);
- case C2FieldSupportedValues::VALUES: return _mValues.contains(value);
- case C2FieldSupportedValues::FLAGS: return _mFlags.contains(value);
- default: return false;
- }
-}
-
-template<typename T>
-C2FieldSupportedValuesHelper<T>::C2FieldSupportedValuesHelper(const C2FieldSupportedValues &values)
- : _mImpl(std::make_unique<C2FieldSupportedValuesHelper<T>::Impl>(values)) { }
-
-template<typename T>
-C2FieldSupportedValuesHelper<T>::~C2FieldSupportedValuesHelper() = default;
-
-template<typename T>
-bool C2FieldSupportedValuesHelper<T>::supports(T value) const {
- return _mImpl->supports(value);
-}
-
-template class C2FieldSupportedValuesHelper<uint8_t>;
-template class C2FieldSupportedValuesHelper<char>;
-template class C2FieldSupportedValuesHelper<int32_t>;
-template class C2FieldSupportedValuesHelper<uint32_t>;
-//template class C2FieldSupportedValuesHelper<c2_cntr32_t>;
-template class C2FieldSupportedValuesHelper<int64_t>;
-template class C2FieldSupportedValuesHelper<uint64_t>;
-//template class C2FieldSupportedValuesHelper<c2_cntr64_t>;
-template class C2FieldSupportedValuesHelper<float>;
-
-/* ----------------------- C2ParamFieldValuesBuilder ----------------------- */
-
-template<typename T>
-struct C2ParamFieldValuesBuilder<T>::Impl {
- Impl(const C2ParamField &field)
- : _mParamField(field),
- _mType(type_t::RANGE),
- _mDefined(false),
- _mRange(C2SupportedRange<T>::Any()),
- _mValues(C2SupportedValueSet<T>::None()),
- _mFlags(C2SupportedFlags<T>::None()) { }
-
- /**
- * Get C2ParamFieldValues from this builder.
- */
- operator C2ParamFieldValues() const {
- if (!_mDefined) {
- return C2ParamFieldValues(_mParamField);
- }
- switch (_mType) {
- case type_t::EMPTY:
- case type_t::VALUES:
- return C2ParamFieldValues(_mParamField, (C2FieldSupportedValues)_mValues);
- case type_t::RANGE:
- return C2ParamFieldValues(_mParamField, (C2FieldSupportedValues)_mRange);
- case type_t::FLAGS:
- return C2ParamFieldValues(_mParamField, (C2FieldSupportedValues)_mFlags);
- default:
- // TRESPASS
- // should never get here
- return C2ParamFieldValues(_mParamField);
- }
- }
-
- /** Define the supported values as the currently supported values of this builder. */
- void any() {
- _mDefined = true;
- }
-
- /** Restrict (and thus define) the supported values to none. */
- void none() {
- _mDefined = true;
- _mType = type_t::VALUES;
- _mValues.clear();
- }
-
- /** Restrict (and thus define) the supported values to |value| alone. */
- void equalTo(T value) {
- return limitTo(C2SupportedValueSet<T>::OneOf({value}));
- }
-
- /** Restrict (and thus define) the supported values to a value set. */
- void limitTo(const C2SupportedValueSet<T> &limit) {
- if (!_mDefined) {
- C2_LOG(VERBOSE) << "NA.limitTo(" << C2FieldSupportedValuesHelper<T>(limit) << ")";
-
- // shortcut for first limit applied
- _mDefined = true;
- _mValues = limit;
- _mType = _mValues.isEmpty() ? type_t::EMPTY : type_t::VALUES;
- } else {
- switch (_mType) {
- case type_t::EMPTY:
- case type_t::VALUES:
- C2_LOG(VERBOSE) << "(" << C2FieldSupportedValuesHelper<T>(_mValues) << ").limitTo("
- << C2FieldSupportedValuesHelper<T>(limit) << ")";
-
- _mValues = _mValues.limitedTo(limit);
- _mType = _mValues.isEmpty() ? type_t::EMPTY : type_t::VALUES;
- break;
- case type_t::RANGE:
- C2_LOG(VERBOSE) << "(" << C2FieldSupportedValuesHelper<T>(_mRange) << ").limitTo("
- << C2FieldSupportedValuesHelper<T>(limit) << ")";
-
- _mValues = limit.limitedTo(_mRange);
- _mType = _mValues.isEmpty() ? type_t::EMPTY : type_t::VALUES;
- break;
- case type_t::FLAGS:
- C2_LOG(VERBOSE) << "(" << C2FieldSupportedValuesHelper<T>(_mRange) << ").limitTo("
- << C2FieldSupportedValuesHelper<T>(limit) << ")";
-
- _mValues = limit.limitedTo(_mFlags);
- _mType = _mValues.isEmpty() ? type_t::EMPTY : type_t::VALUES;
- break;
- default:
- C2_LOG(FATAL); // should not be here
- }
- // TODO: support flags
- }
- C2_LOG(VERBOSE) << " = " << _mType << ":" << C2FieldSupportedValuesHelper<T>(_mValues);
- }
-
- /** Restrict (and thus define) the supported values to a flag set. */
- void limitTo(const C2SupportedFlags<T> &limit) {
- if (!_mDefined) {
- C2_LOG(VERBOSE) << "NA.limitTo(" << C2FieldSupportedValuesHelper<T>(limit) << ")";
-
- // shortcut for first limit applied
- _mDefined = true;
- _mFlags = limit;
- _mType = _mFlags.isEmpty() ? type_t::EMPTY : type_t::FLAGS;
- } else {
- switch (_mType) {
- case type_t::EMPTY:
- case type_t::VALUES:
- C2_LOG(VERBOSE) << "(" << C2FieldSupportedValuesHelper<T>(_mValues) << ").limitTo("
- << C2FieldSupportedValuesHelper<T>(limit) << ")";
-
- _mValues = _mValues.limitedTo(limit);
- _mType = _mValues.isEmpty() ? type_t::EMPTY : type_t::VALUES;
- C2_LOG(VERBOSE) << " = " << _mType << ":" << C2FieldSupportedValuesHelper<T>(_mValues);
- break;
- case type_t::FLAGS:
- C2_LOG(VERBOSE) << "(" << C2FieldSupportedValuesHelper<T>(_mFlags) << ").limitTo("
- << C2FieldSupportedValuesHelper<T>(limit) << ")";
-
- _mFlags = _mFlags.limitedTo(limit);
- _mType = _mFlags.isEmpty() ? type_t::EMPTY : type_t::FLAGS;
- C2_LOG(VERBOSE) << " = " << _mType << ":" << C2FieldSupportedValuesHelper<T>(_mFlags);
- break;
- case type_t::RANGE:
- C2_LOG(FATAL) << "limiting ranges to flags is not supported";
- _mType = type_t::EMPTY;
- break;
- default:
- C2_LOG(FATAL); // should not be here
- }
- }
- }
-
- void limitTo(const C2SupportedRange<T> &limit) {
- if (!_mDefined) {
- C2_LOG(VERBOSE) << "NA.limitTo(" << C2FieldSupportedValuesHelper<T>(limit) << ")";
-
- // shortcut for first limit applied
- _mDefined = true;
- _mRange = limit;
- _mType = _mRange.isEmpty() ? type_t::EMPTY : type_t::RANGE;
- C2_LOG(VERBOSE) << " = " << _mType << ":" << C2FieldSupportedValuesHelper<T>(_mRange);
- } else {
- switch (_mType) {
- case type_t::EMPTY:
- case type_t::VALUES:
- C2_LOG(VERBOSE) << "(" << C2FieldSupportedValuesHelper<T>(_mValues) << ").limitTo("
- << C2FieldSupportedValuesHelper<T>(limit) << ")";
- _mValues = _mValues.limitedTo(limit);
- _mType = _mValues.isEmpty() ? type_t::EMPTY : type_t::VALUES;
- C2_LOG(VERBOSE) << " = " << _mType << ":" << C2FieldSupportedValuesHelper<T>(_mValues);
- break;
- case type_t::FLAGS:
- C2_LOG(FATAL) << "limiting flags to ranges is not supported";
- _mType = type_t::EMPTY;
- break;
- case type_t::RANGE:
- C2_LOG(VERBOSE) << "(" << C2FieldSupportedValuesHelper<T>(_mRange) << ").limitTo("
- << C2FieldSupportedValuesHelper<T>(limit) << ")";
- _mRange = _mRange.limitedTo(limit);
- C2_DCHECK(_mValues.isEmpty());
- _mType = _mRange.isEmpty() ? type_t::EMPTY : type_t::RANGE;
- C2_LOG(VERBOSE) << " = " << _mType << ":" << C2FieldSupportedValuesHelper<T>(_mRange);
- break;
- default:
- C2_LOG(FATAL); // should not be here
- }
- }
- }
-
-private:
- void instantiate() __unused {
- (void)_mValues.values(); // instantiate non-const values()
- }
-
- void instantiate() const __unused {
- (void)_mValues.values(); // instantiate const values()
- }
-
- typedef C2FieldSupportedValues::type_t type_t;
-
- C2ParamField _mParamField;
- type_t _mType;
- bool _mDefined;
- C2SupportedRange<T> _mRange;
- C2SupportedValueSet<T> _mValues;
- C2SupportedFlags<T> _mFlags;
-
-};
-
-template<typename T>
-C2ParamFieldValuesBuilder<T>::operator C2ParamFieldValues() const {
- return (C2ParamFieldValues)(*_mImpl.get());
-}
-
-template<typename T>
-C2ParamFieldValuesBuilder<T>::C2ParamFieldValuesBuilder(const C2ParamField &field)
- : _mImpl(std::make_unique<C2ParamFieldValuesBuilder<T>::Impl>(field)) { }
-
-template<typename T>
-C2ParamFieldValuesBuilder<T> &C2ParamFieldValuesBuilder<T>::any() {
- _mImpl->any();
- return *this;
-}
-
-template<typename T>
-C2ParamFieldValuesBuilder<T> &C2ParamFieldValuesBuilder<T>::none() {
- _mImpl->none();
- return *this;
-}
-
-template<typename T>
-C2ParamFieldValuesBuilder<T> &C2ParamFieldValuesBuilder<T>::equalTo(T value) {
- _mImpl->equalTo(value);
- return *this;
-}
-
-template<typename T>
-C2ParamFieldValuesBuilder<T> &C2ParamFieldValuesBuilder<T>::limitTo(const C2SupportedValueSet<T> &limit) {
- _mImpl->limitTo(limit);
- return *this;
-}
-
-template<typename T>
-C2ParamFieldValuesBuilder<T> &C2ParamFieldValuesBuilder<T>::limitTo(const C2SupportedFlags<T> &limit) {
- _mImpl->limitTo(limit);
- return *this;
-}
-
-template<typename T>
-C2ParamFieldValuesBuilder<T> &C2ParamFieldValuesBuilder<T>::limitTo(const C2SupportedRange<T> &limit) {
- _mImpl->limitTo(limit);
- return *this;
-}
-
-template<typename T>
-C2ParamFieldValuesBuilder<T>::C2ParamFieldValuesBuilder(const C2ParamFieldValuesBuilder<T> &other)
- : _mImpl(std::make_unique<C2ParamFieldValuesBuilder<T>::Impl>(*other._mImpl.get())) { }
-
-template<typename T>
-C2ParamFieldValuesBuilder<T> &C2ParamFieldValuesBuilder<T>::operator=(
- const C2ParamFieldValuesBuilder<T> &other) {
- _mImpl = std::make_unique<C2ParamFieldValuesBuilder<T>::Impl>(*other._mImpl.get());
- return *this;
-}
-
-template<typename T>
-C2ParamFieldValuesBuilder<T>::~C2ParamFieldValuesBuilder() = default;
-
-template class C2ParamFieldValuesBuilder<uint8_t>;
-template class C2ParamFieldValuesBuilder<char>;
-template class C2ParamFieldValuesBuilder<int32_t>;
-template class C2ParamFieldValuesBuilder<uint32_t>;
-//template class C2ParamFieldValuesBuilder<c2_cntr32_t>;
-template class C2ParamFieldValuesBuilder<int64_t>;
-template class C2ParamFieldValuesBuilder<uint64_t>;
-//template class C2ParamFieldValuesBuilder<c2_cntr64_t>;
-template class C2ParamFieldValuesBuilder<float>;
-
-/* ------------------------- C2SettingResultBuilder ------------------------- */
-
-C2SettingConflictsBuilder::C2SettingConflictsBuilder() : _mConflicts() { }
-
-C2SettingConflictsBuilder::C2SettingConflictsBuilder(C2ParamFieldValues &&conflict) {
- _mConflicts.emplace_back(std::move(conflict));
-}
-
-C2SettingConflictsBuilder& C2SettingConflictsBuilder::with(C2ParamFieldValues &&conflict) {
- _mConflicts.emplace_back(std::move(conflict));
- return *this;
-}
-
-std::vector<C2ParamFieldValues> C2SettingConflictsBuilder::retrieveConflicts() {
- return std::move(_mConflicts);
-}
-
-/* ------------------------- C2SettingResult/sBuilder ------------------------- */
-
-C2SettingResult C2SettingResultBuilder::ReadOnly(const C2ParamField ¶m) {
- return C2SettingResult { C2SettingResult::READ_ONLY, { param }, { } };
-}
-
-C2SettingResult C2SettingResultBuilder::BadValue(const C2ParamField ¶mField, bool isInfo) {
- return { isInfo ? C2SettingResult::INFO_BAD_VALUE : C2SettingResult::BAD_VALUE,
- { paramField }, { } };
-}
-
-C2SettingResult C2SettingResultBuilder::Conflict(
- C2ParamFieldValues &¶mFieldValues, C2SettingConflictsBuilder &conflicts, bool isInfo) {
- C2_CHECK(!conflicts.empty());
- if (isInfo) {
- return C2SettingResult {
- C2SettingResult::INFO_CONFLICT,
- std::move(paramFieldValues), conflicts.retrieveConflicts()
- };
- } else {
- return C2SettingResult {
- C2SettingResult::CONFLICT,
- std::move(paramFieldValues), conflicts.retrieveConflicts()
- };
- }
-}
-
-C2SettingResultsBuilder::C2SettingResultsBuilder(C2SettingResult &&result)
- : _mStatus(C2_BAD_VALUE) {
- _mResults.emplace_back(new C2SettingResult(std::move(result)));
-}
-
-C2SettingResultsBuilder C2SettingResultsBuilder::plus(C2SettingResultsBuilder&& results) {
- for (std::unique_ptr<C2SettingResult> &r : results._mResults) {
- _mResults.emplace_back(std::move(r));
- }
- results._mResults.clear();
- // TODO: mStatus
- return std::move(*this);
-}
-
-c2_status_t C2SettingResultsBuilder::retrieveFailures(
- std::vector<std::unique_ptr<C2SettingResult>>* const failures) {
- for (std::unique_ptr<C2SettingResult> &r : _mResults) {
- failures->emplace_back(std::move(r));
- }
- _mResults.clear();
- return _mStatus;
-}
-
-C2SettingResultsBuilder::C2SettingResultsBuilder(c2_status_t status) : _mStatus(status) {
- // status must be one of OK, BAD_STATE, TIMED_OUT or CORRUPTED
- // mainly: BLOCKING, BAD_INDEX, BAD_VALUE and NO_MEMORY requires a setting attempt
-}
-
-#pragma clang diagnostic pop
-
-/* ------------------------- C2FieldUtils ------------------------- */
-
-struct C2_HIDE C2FieldUtils::_Inspector {
- /// returns the implementation object
- inline static std::shared_ptr<Info::Impl> GetImpl(const Info &info) {
- return info._mImpl;
- }
-};
-
-/* ------------------------- C2FieldUtils::Info ------------------------- */
-
-struct C2_HIDE C2FieldUtils::Info::Impl {
- C2FieldDescriptor field;
- std::shared_ptr<Impl> parent;
- uint32_t index;
- uint32_t depth;
- uint32_t baseFieldOffset;
- uint32_t arrayOffset;
- uint32_t usedExtent;
-
- /// creates a copy of this object including copies of its parent chain
- Impl clone() const;
-
- /// creates a copy of a shared pointer to an object
- static std::shared_ptr<Impl> Clone(const std::shared_ptr<Impl> &);
-
- Impl(const C2FieldDescriptor &field_, std::shared_ptr<Impl> parent_,
- uint32_t index_, uint32_t depth_, uint32_t baseFieldOffset_,
- uint32_t arrayOffset_, uint32_t usedExtent_)
- : field(field_), parent(parent_), index(index_), depth(depth_),
- baseFieldOffset(baseFieldOffset_), arrayOffset(arrayOffset_), usedExtent(usedExtent_) { }
-};
-
-std::shared_ptr<C2FieldUtils::Info::Impl> C2FieldUtils::Info::Impl::Clone(const std::shared_ptr<Impl> &info) {
- if (info) {
- return std::make_shared<Impl>(info->clone());
- }
- return nullptr;
-}
-
-C2FieldUtils::Info::Impl C2FieldUtils::Info::Impl::clone() const {
- Impl res = Impl(*this);
- res.parent = Clone(res.parent);
- return res;
-}
-
-C2FieldUtils::Info::Info(std::shared_ptr<Impl> impl)
- : _mImpl(impl) { }
-
-size_t C2FieldUtils::Info::arrayOffset() const {
- return _mImpl->arrayOffset;
-}
-
-size_t C2FieldUtils::Info::arraySize() const {
- return extent() * size();
-}
-
-size_t C2FieldUtils::Info::baseFieldOffset() const {
- return _mImpl->baseFieldOffset;
-};
-
-size_t C2FieldUtils::Info::depth() const {
- return _mImpl->depth;
-}
-
-size_t C2FieldUtils::Info::extent() const {
- return _mImpl->usedExtent;
-}
-
-size_t C2FieldUtils::Info::index() const {
- return _mImpl->index;
-}
-
-bool C2FieldUtils::Info::isArithmetic() const {
- switch (_mImpl->field.type()) {
- case C2FieldDescriptor::BLOB:
- case C2FieldDescriptor::CNTR32:
- case C2FieldDescriptor::CNTR64:
- case C2FieldDescriptor::FLOAT:
- case C2FieldDescriptor::INT32:
- case C2FieldDescriptor::INT64:
- case C2FieldDescriptor::STRING:
- case C2FieldDescriptor::UINT32:
- case C2FieldDescriptor::UINT64:
- return true;
- default:
- return false;
- }
-}
-
-bool C2FieldUtils::Info::isFlexible() const {
- return _mImpl->field.extent() == 0;
-}
-
-C2String C2FieldUtils::Info::name() const {
- return _mImpl->field.name();
-}
-
-const C2FieldUtils::Info::NamedValuesType &C2FieldUtils::Info::namedValues() const {
- return _mImpl->field.namedValues();
-}
-
-size_t C2FieldUtils::Info::offset() const {
- return _C2ParamInspector::GetOffset(_mImpl->field);
-}
-
-C2FieldUtils::Info C2FieldUtils::Info::parent() const {
- return Info(_mImpl->parent);
-};
-
-size_t C2FieldUtils::Info::size() const {
- return _C2ParamInspector::GetSize(_mImpl->field);
-}
-
-C2FieldUtils::Info::type_t C2FieldUtils::Info::type() const {
- return _mImpl->field.type();
-}
-
-/* ------------------------- C2FieldUtils::Iterator ------------------------- */
-
-struct C2_HIDE C2FieldUtils::Iterator::Impl : public _C2ParamInspector {
- Impl() = default;
-
- virtual ~Impl() = default;
-
- /// implements object equality
- virtual bool equals(const std::shared_ptr<Impl> &other) const {
- return other != nullptr && mHead == other->mHead;
- };
-
- /// returns the info pointed to by this iterator
- virtual value_type get() const {
- return Info(mHead);
- }
-
- /// increments this iterator
- virtual void increment() {
- // note: this cannot be abstract as we instantiate this for List::end(). increment to end()
- // instead.
- mHead.reset();
- }
-
-protected:
- Impl(std::shared_ptr<C2FieldUtils::Info::Impl> head)
- : mHead(head) { }
-
- std::shared_ptr<Info::Impl> mHead; ///< current field
-};
-
-C2FieldUtils::Iterator::Iterator(std::shared_ptr<Impl> impl)
- : mImpl(impl) { }
-
-C2FieldUtils::Iterator::value_type C2FieldUtils::Iterator::operator*() const {
- return mImpl->get();
-}
-
-C2FieldUtils::Iterator& C2FieldUtils::Iterator::operator++() {
- mImpl->increment();
- return *this;
-}
-
-bool C2FieldUtils::Iterator::operator==(const Iterator &other) const {
- return mImpl->equals(other.mImpl);
-}
-
-/* ------------------------- C2FieldUtils::List ------------------------- */
-
-struct C2_HIDE C2FieldUtils::List::Impl {
- virtual std::shared_ptr<Iterator::Impl> begin() const = 0;
-
- /// returns an iterator to the end of the list
- virtual std::shared_ptr<Iterator::Impl> end() const {
- return std::make_shared<Iterator::Impl>();
- }
-
- virtual ~Impl() = default;
-};
-
-C2FieldUtils::List::List(std::shared_ptr<Impl> impl)
- : mImpl(impl) { }
-
-C2FieldUtils::Iterator C2FieldUtils::List::begin() const {
- return C2FieldUtils::Iterator(mImpl->begin());
-}
-
-C2FieldUtils::Iterator C2FieldUtils::List::end() const {
- return C2FieldUtils::Iterator(mImpl->end());
-}
-
-/* ------------------------- C2FieldUtils::enumerateFields ------------------------- */
-
-namespace {
-
-/**
- * Iterator base class helper that allows descending into the field hierarchy.
- */
-struct C2FieldUtilsFieldsIteratorHelper : public C2FieldUtils::Iterator::Impl {
- virtual ~C2FieldUtilsFieldsIteratorHelper() override = default;
-
- /// returns the base-field's offset of the parent field (or the param offset if no parent)
- static inline uint32_t GetParentBaseFieldOffset(
- const std::shared_ptr<C2FieldUtils::Info::Impl> parent) {
- return parent == nullptr ? sizeof(C2Param) : parent->baseFieldOffset;
- }
-
- /// returns the offset of the parent field (or the param)
- static inline uint32_t GetParentOffset(const std::shared_ptr<C2FieldUtils::Info::Impl> parent) {
- return parent == nullptr ? sizeof(C2Param) : GetOffset(parent->field);
- }
-
-protected:
- C2FieldUtilsFieldsIteratorHelper(
- std::shared_ptr<C2ParamReflector> reflector,
- uint32_t paramSize,
- std::shared_ptr<C2FieldUtils::Info::Impl> head = nullptr)
- : C2FieldUtils::Iterator::Impl(head),
- mParamSize(paramSize),
- mReflector(reflector) { }
-
- /// returns a leaf info object at a specific index for a child field
- std::shared_ptr<C2FieldUtils::Info::Impl> makeLeaf(
- const C2FieldDescriptor &field, uint32_t index) {
- uint32_t parentOffset = GetParentOffset(mHead);
- uint32_t arrayOffset = parentOffset + GetOffset(field);
- uint32_t usedExtent = field.extent() ? :
- (std::max(arrayOffset, mParamSize) - arrayOffset) / GetSize(field);
-
- return std::make_shared<C2FieldUtils::Info::Impl>(
- OffsetFieldDescriptor(field, parentOffset + index * GetSize(field)),
- mHead /* parent */, index, mHead == nullptr ? 0 : mHead->depth + 1,
- GetParentBaseFieldOffset(mHead) + GetOffset(field),
- arrayOffset, usedExtent);
- }
-
- /// returns whether this struct index have been traversed to get to this field
- bool visited(C2Param::CoreIndex index) const {
- for (const std::shared_ptr<C2StructDescriptor> &sd : mHistory) {
- if (sd->coreIndex() == index) {
- return true;
- }
- }
- return false;
- }
-
- uint32_t mParamSize;
- std::shared_ptr<C2ParamReflector> mReflector;
- std::vector<std::shared_ptr<C2StructDescriptor>> mHistory; // structure types visited
-};
-
-/**
- * Iterator implementing enumerateFields() that visits each base field.
- */
-struct C2FieldUtilsFieldsIterator : public C2FieldUtilsFieldsIteratorHelper {
- /// enumerate base fields of a parameter
- C2FieldUtilsFieldsIterator(const C2Param ¶m, std::shared_ptr<C2ParamReflector> reflector)
- : C2FieldUtilsFieldsIteratorHelper(reflector, param.size()) {
- descendInto(param.coreIndex());
- }
-
- /// enumerate base fields of a field
- C2FieldUtilsFieldsIterator(std::shared_ptr<C2FieldUtilsFieldsIterator> impl)
- : C2FieldUtilsFieldsIteratorHelper(impl->mReflector, impl->mParamSize, impl->mHead) {
- mHistory = impl->mHistory;
- if (mHead->field.type() & C2FieldDescriptor::STRUCT_FLAG) {
- C2Param::CoreIndex index = { mHead->field.type() &~C2FieldDescriptor::STRUCT_FLAG };
- if (!visited(index)) {
- descendInto(index);
- }
- }
- }
-
- virtual ~C2FieldUtilsFieldsIterator() override = default;
-
- /// Increments this iterator by visiting each base field.
- virtual void increment() override {
- // don't go past end
- if (mHead == nullptr || _mFields.empty()) {
- return;
- }
-
- // descend into structures
- if (mHead->field.type() & C2FieldDescriptor::STRUCT_FLAG) {
- C2Param::CoreIndex index = { mHead->field.type() &~C2FieldDescriptor::STRUCT_FLAG };
- // do not recurse into the same structs
- if (!visited(index) && descendInto(index)) {
- return;
- }
- }
-
- // ascend after the last field in the current struct
- while (!mHistory.empty() && _mFields.back() == mHistory.back()->end()) {
- mHead = mHead->parent;
- mHistory.pop_back();
- _mFields.pop_back();
- }
-
- // done if history is now empty
- if (_mFields.empty()) {
- // we could be traversing a sub-tree so clear head
- mHead.reset();
- return;
- }
-
- // move to the next field in the current struct
- C2StructDescriptor::field_iterator next = _mFields.back();
- mHead->field = OffsetFieldDescriptor(*next, GetParentOffset(mHead->parent));
- mHead->index = 0; // reset index just in case for correctness
- mHead->baseFieldOffset = GetParentBaseFieldOffset(mHead->parent) + GetOffset(*next);
- mHead->arrayOffset = GetOffset(mHead->field);
- mHead->usedExtent = mHead->field.extent() ? :
- (std::max(mHead->arrayOffset, mParamSize) - mHead->arrayOffset)
- / GetSize(mHead->field);
- ++_mFields.back();
- }
-
-private:
- /// If the current field is a known, valid (untraversed) structure, it modifies this iterator
- /// to point to the first field of the structure and returns true. Otherwise, it does not
- /// modify this iterator and returns false.
- bool descendInto(C2Param::CoreIndex index) {
- std::unique_ptr<C2StructDescriptor> descUnique = mReflector->describe(index);
- // descend into known structs (as long as they have at least one field)
- if (descUnique && descUnique->begin() != descUnique->end()) {
- std::shared_ptr<C2StructDescriptor> desc(std::move(descUnique));
- mHistory.emplace_back(desc);
- C2StructDescriptor::field_iterator first = desc->begin();
- mHead = makeLeaf(*first, 0 /* index */);
- _mFields.emplace_back(++first);
- return true;
- }
- return false;
- }
-
- /// next field pointers for each depth.
- /// note: _mFields may be shorted than mHistory, if iterating at a depth
- std::vector<C2StructDescriptor::field_iterator> _mFields;
-};
-
-/**
- * Iterable implementing enumerateFields().
- */
-struct C2FieldUtilsFieldIterable : public C2FieldUtils::List::Impl {
- /// returns an iterator to the beginning of the list
- virtual std::shared_ptr<C2FieldUtils::Iterator::Impl> begin() const override {
- return std::make_shared<C2FieldUtilsFieldsIterator>(*_mParam, _mReflector);
- };
-
- C2FieldUtilsFieldIterable(const C2Param ¶m, std::shared_ptr<C2ParamReflector> reflector)
- : _mParam(¶m), _mReflector(reflector) { }
-
-private:
- const C2Param *_mParam;
- std::shared_ptr<C2ParamReflector> _mReflector;
-};
-
-}
-
-C2FieldUtils::List C2FieldUtils::enumerateFields(
- const C2Param ¶m, const std::shared_ptr<C2ParamReflector> &reflector) {
- return C2FieldUtils::List(std::make_shared<C2FieldUtilsFieldIterable>(param, reflector));
-}
-
-/* ------------------------- C2FieldUtils::enumerate siblings ------------------------- */
-
-namespace {
-
-struct C2FieldUtilsCousinsIterator : public C2FieldUtils::Iterator::Impl {
- C2FieldUtilsCousinsIterator(
- const std::shared_ptr<C2FieldUtils::Info::Impl> &info, size_t level)
- // clone info chain as this iterator will change it
- : C2FieldUtils::Iterator::Impl(C2FieldUtils::Info::Impl::Clone(info)) {
- if (level == 0) {
- return;
- }
-
- // store parent chain (up to level) for quick access
- std::shared_ptr<C2FieldUtils::Info::Impl> node = mHead;
- size_t ix = 0;
- for (; ix < level && node; ++ix) {
- node->index = 0;
- _mPath.emplace_back(node);
- node = node->parent;
- }
- setupPath(ix);
- }
-
- virtual ~C2FieldUtilsCousinsIterator() override = default;
-
- /// Increments this iterator by visiting each index.
- virtual void increment() override {
- size_t ix = 0;
- while (ix < _mPath.size()) {
- if (++_mPath[ix]->index < _mPath[ix]->usedExtent) {
- setupPath(ix + 1);
- return;
- }
- _mPath[ix++]->index = 0;
- }
- mHead.reset();
- }
-
-private:
- /// adjusts field offsets along the path up to the specific level - 1.
- /// This in-fact has to be done down the path from parent to child as child fields must
- /// fall within parent fields.
- void setupPath(size_t level) {
- C2_CHECK_LE(level, _mPath.size());
- uint32_t oldArrayOffset = level ? _mPath[level - 1]->arrayOffset : 0 /* unused */;
- while (level) {
- --level;
- C2FieldUtils::Info::Impl &path = *_mPath[level];
- uint32_t size = GetSize(path.field);
- uint32_t offset = path.arrayOffset + size * path.index;
- SetOffset(path.field, offset);
- if (level) {
- // reset child's array offset to fall within current index, but hold onto the
- // original value of the arrayOffset so that we can adjust subsequent children.
- // This is because the modulo is only defined within the current array.
- uint32_t childArrayOffset =
- offset + (_mPath[level - 1]->arrayOffset - oldArrayOffset) % size;
- oldArrayOffset = _mPath[level - 1]->arrayOffset;
- _mPath[level - 1]->arrayOffset = childArrayOffset;
- }
- }
- }
-
- std::vector<std::shared_ptr<C2FieldUtils::Info::Impl>> _mPath;
-};
-
-/**
- * Iterable implementing enumerateFields().
- */
-struct C2FieldUtilsCousinsIterable : public C2FieldUtils::List::Impl {
- /// returns an iterator to the beginning of the list
- virtual std::shared_ptr<C2FieldUtils::Iterator::Impl> begin() const override {
- return std::make_shared<C2FieldUtilsCousinsIterator>(_mHead, _mLevel);
- };
-
- C2FieldUtilsCousinsIterable(const C2FieldUtils::Info &field, uint32_t level)
- : _mHead(C2FieldUtils::_Inspector::GetImpl(field)), _mLevel(level) { }
-
-private:
- std::shared_ptr<C2FieldUtils::Info::Impl> _mHead;
- size_t _mLevel;
-};
-
-}
-
-C2FieldUtils::List C2FieldUtils::enumerateCousins(const C2FieldUtils::Info &field, uint32_t level) {
- return C2FieldUtils::List(std::make_shared<C2FieldUtilsCousinsIterable>(field, level));
-}
-
-/* ------------------------- C2FieldUtils::locateField ------------------------- */
-
-namespace {
-
-/**
- * Iterator implementing locateField().
- */
-struct C2FieldUtilsFieldLocator : public C2FieldUtilsFieldsIteratorHelper {
- C2FieldUtilsFieldLocator(
- C2Param::CoreIndex index, const _C2FieldId &field, uint32_t paramSize,
- std::shared_ptr<C2ParamReflector> reflector)
- : C2FieldUtilsFieldsIteratorHelper(reflector, paramSize),
- _mField(field) {
- while (descendInto(index)) {
- if ((mHead->field.type() & C2FieldDescriptor::STRUCT_FLAG) == 0) {
- break;
- }
- index = C2Param::CoreIndex(mHead->field.type() &~ C2FieldDescriptor::STRUCT_FLAG);
- }
- }
-
- void increment() {
- mHead = _mTail;
- _mTail = nullptr;
- }
-
-private:
- /// If the current field is a known, valid (untraversed) structure, it modifies this iterator
- /// to point to the field at the beginning/end of the given field of the structure and returns
- /// true. Otherwise, including if no such field exists in the structure, it does not modify this
- /// iterator and returns false.
- bool descendInto(C2Param::CoreIndex index) {
- // check that the boundaries of the field to be located are still within the same parent
- // field
- if (mHead != _mTail) {
- return false;
- }
-
- std::unique_ptr<C2StructDescriptor> descUnique = mReflector->describe(index);
- // descend into known structs (as long as they have at least one field)
- if (descUnique && descUnique->begin() != descUnique->end()) {
- std::shared_ptr<C2StructDescriptor> desc(std::move(descUnique));
- mHistory.emplace_back(desc);
-
- uint32_t parentOffset = GetParentOffset(mHead);
-
- // locate field using a dummy field descriptor
- C2FieldDescriptor dummy = {
- C2FieldDescriptor::BLOB, 1 /* extent */, "name",
- GetOffset(_mField) - parentOffset, GetSize(_mField)
- };
-
- // locate first field where offset is greater than dummy offset (which is one past)
- auto it = std::upper_bound(
- desc->cbegin(), desc->cend(), dummy,
- [](const C2FieldDescriptor &a, const C2FieldDescriptor &b) -> bool {
- return _C2ParamInspector::GetOffset(a) < _C2ParamInspector::GetOffset(b);
- });
- if (it == desc->begin()) {
- // field is prior to first field
- return false;
- }
- --it;
- const C2FieldDescriptor &field = *it;
-
- // check that dummy end-offset is within this field
- uint32_t structSize = std::max(mParamSize, parentOffset) - parentOffset;
- if (GetEndOffset(dummy) > GetEndOffset(field, structSize)) {
- return false;
- }
-
- uint32_t startIndex = (GetOffset(dummy) - GetOffset(field)) / GetSize(field);
- uint32_t endIndex =
- (GetEndOffset(dummy) - GetOffset(field) + GetSize(field) - 1) / GetSize(field);
- if (endIndex > startIndex) {
- // Field size could be zero, in which case end index is still on start index.
- // However, for all other cases, endIndex was rounded up to the next index, so
- // decrement it.
- --endIndex;
- }
- std::shared_ptr<C2FieldUtils::Info::Impl> startLeaf =
- makeLeaf(field, startIndex);
- if (endIndex == startIndex) {
- _mTail = startLeaf;
- mHead = startLeaf;
- } else {
- _mTail = makeLeaf(field, endIndex);
- mHead = startLeaf;
- }
- return true;
- }
- return false;
- }
-
- _C2FieldId _mField;
- std::shared_ptr<C2FieldUtils::Info::Impl> _mTail;
-};
-
-/**
- * Iterable implementing locateField().
- */
-struct C2FieldUtilsFieldLocation : public C2FieldUtils::List::Impl {
- /// returns an iterator to the beginning of the list
- virtual std::shared_ptr<C2FieldUtils::Iterator::Impl> begin() const override {
- return std::make_shared<C2FieldUtilsFieldLocator>(
- _mIndex, _mField, _mParamSize, _mReflector);
- };
-
- C2FieldUtilsFieldLocation(
- const C2ParamField &pf, std::shared_ptr<C2ParamReflector> reflector)
- : _mIndex(C2Param::CoreIndex(_C2ParamInspector::GetIndex(pf))),
- _mField(_C2ParamInspector::GetField(pf)),
- _mParamSize(0),
- _mReflector(reflector) { }
-
-
- C2FieldUtilsFieldLocation(
- const C2Param ¶m, const _C2FieldId &field,
- std::shared_ptr<C2ParamReflector> reflector)
- : _mIndex(param.coreIndex()),
- _mField(field),
- _mParamSize(param.size()),
- _mReflector(reflector) { }
-
-private:
- C2Param::CoreIndex _mIndex;
- _C2FieldId _mField;
- uint32_t _mParamSize;
- std::shared_ptr<C2ParamReflector> _mReflector;
-};
-
-}
-
-std::vector<C2FieldUtils::Info> C2FieldUtils::locateField(
- const C2ParamField &pf, const std::shared_ptr<C2ParamReflector> &reflector) {
- C2FieldUtils::List location = { std::make_shared<C2FieldUtilsFieldLocation>(pf, reflector) };
- return std::vector<Info>(location.begin(), location.end());
-}
-
-std::vector<C2FieldUtils::Info> C2FieldUtils::locateField(
- const C2Param ¶m, const _C2FieldId &field,
- const std::shared_ptr<C2ParamReflector> &reflector) {
- C2FieldUtils::List location = {
- std::make_shared<C2FieldUtilsFieldLocation>(param, field, reflector)
- };
- return std::vector<Info>(location.begin(), location.end());
-}
-
diff --git a/codec2/vndk/util/C2ParamUtils.cpp b/codec2/vndk/util/C2ParamUtils.cpp
deleted file mode 100644
index 80573d8..0000000
--- a/codec2/vndk/util/C2ParamUtils.cpp
+++ /dev/null
@@ -1,209 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#define __C2_GENERATE_GLOBAL_VARS__ // to be able to implement the methods defined
-#include <C2Enum.h>
-#include <util/C2Debug-log.h>
-#include <util/C2ParamUtils.h>
-
-#include <utility>
-#include <vector>
-
-/** \file
- * Utilities for parameter handling to be used by Codec2 implementations.
- */
-
-/// \cond INTERNAL
-
-/* ---------------------------- UTILITIES FOR ENUMERATION REFLECTION ---------------------------- */
-
-static size_t countLeadingUnderscores(C2StringLiteral a) {
- size_t i = 0;
- while (a[i] == '_') {
- ++i;
- }
- return i;
-}
-
-static size_t countMatching(C2StringLiteral a, const C2String &b) {
- for (size_t i = 0; i < b.size(); ++i) {
- if (!a[i] || a[i] != b[i]) {
- return i;
- }
- }
- return b.size();
-}
-
-// ABCDef => abc-def
-// ABCD2ef => abcd2-ef // 0
-// ABCD2Ef => ancd2-ef // -1
-// AbcDef => abc-def // -1
-// Abc2Def => abc-2def
-// Abc2def => abc-2-def
-// _Yo => _yo
-// _yo => _yo
-// C2_yo => c2-yo
-// C2__yo => c2-yo
-
-//static
-C2String _C2EnumUtils::camelCaseToDashed(C2String name) {
- enum {
- kNone = '.',
- kLower = 'a',
- kUpper = 'A',
- kDigit = '1',
- kDash = '-',
- kUnderscore = '_',
- } type = kNone;
- size_t word_start = 0;
- for (size_t ix = 0; ix < name.size(); ++ix) {
- C2_LOG(VERBOSE) << name.substr(0, word_start) << "|"
- << name.substr(word_start, ix - word_start) << "["
- << name.substr(ix, 1) << "]" << name.substr(ix + 1)
- << ": " << (char)type;
- if (isupper(name[ix])) {
- if (type == kLower) {
- name.insert(ix++, 1, '-');
- word_start = ix;
- }
- name[ix] = tolower(name[ix]);
- type = kUpper;
- } else if (islower(name[ix])) {
- if (type == kDigit && ix > 0) {
- name.insert(ix++, 1, '-');
- word_start = ix;
- } else if (type == kUpper && ix > word_start + 1) {
- name.insert(ix++ - 1, 1, '-');
- word_start = ix - 1;
- }
- type = kLower;
- } else if (isdigit(name[ix])) {
- if (type == kLower) {
- name.insert(ix++, 1, '-');
- word_start = ix;
- }
- type = kDigit;
- } else if (name[ix] == '_') {
- if (type == kDash) {
- name.erase(ix--, 1);
- } else if (type != kNone && type != kUnderscore) {
- name[ix] = '-';
- type = kDash;
- word_start = ix + 1;
- } else {
- type = kUnderscore;
- word_start = ix + 1;
- }
- } else {
- name.resize(ix);
- }
- }
- C2_LOG(VERBOSE) << "=> " << name;
- return name;
-}
-
-//static
-std::vector<C2String> _C2EnumUtils::sanitizeEnumValueNames(
- const std::vector<C2StringLiteral> names,
- C2StringLiteral _prefix) {
- std::vector<C2String> sanitizedNames;
- C2String prefix;
- size_t extraUnderscores = 0;
- bool first = true;
- if (_prefix) {
- extraUnderscores = countLeadingUnderscores(_prefix);
- prefix = _prefix + extraUnderscores;
- first = false;
- C2_LOG(VERBOSE) << "prefix:" << prefix << ", underscores:" << extraUnderscores;
- }
-
- // calculate prefix and minimum leading underscores
- for (C2StringLiteral s : names) {
- C2_LOG(VERBOSE) << s;
- size_t underscores = countLeadingUnderscores(s);
- if (first) {
- extraUnderscores = underscores;
- prefix = s + underscores;
- first = false;
- } else {
- size_t matching = countMatching(
- s + underscores,
- prefix);
- prefix.resize(matching);
- extraUnderscores = std::min(underscores, extraUnderscores);
- }
- C2_LOG(VERBOSE) << "prefix:" << prefix << ", underscores:" << extraUnderscores;
- if (prefix.size() == 0 && extraUnderscores == 0) {
- break;
- }
- }
-
- // we swallow the first underscore after upper case prefixes
- bool upperCasePrefix = true;
- for (size_t i = 0; i < prefix.size(); ++i) {
- if (islower(prefix[i])) {
- upperCasePrefix = false;
- break;
- }
- }
-
- for (C2StringLiteral s : names) {
- size_t underscores = countLeadingUnderscores(s);
- C2String sanitized = C2String(s, underscores - extraUnderscores);
- sanitized.append(s + prefix.size() + underscores +
- (upperCasePrefix && s[prefix.size() + underscores] == '_'));
- sanitizedNames.push_back(camelCaseToDashed(sanitized));
- }
-
- for (C2String s : sanitizedNames) {
- C2_LOG(VERBOSE) << s;
- }
-
- return sanitizedNames;
-}
-
-//static
-std::vector<C2String> _C2EnumUtils::parseEnumValuesFromString(C2StringLiteral value) {
- std::vector<C2String> foundNames;
- size_t pos = 0, len = strlen(value);
- do {
- size_t endPos = strcspn(value + pos, " ,=") + pos;
- if (endPos > pos) {
- foundNames.emplace_back(value + pos, endPos - pos);
- }
- if (value[endPos] && value[endPos] != ',') {
- endPos += strcspn(value + endPos, ",");
- }
- pos = strspn(value + endPos, " ,") + endPos;
- } while (pos < len);
- return foundNames;
-}
-
-/// safe(r) parsing from parameter blob
-//static
-C2Param *C2ParamUtils::ParseFirst(const uint8_t *blob, size_t size) {
- // _mSize must fit into size, but really C2Param must also to be a valid param
- if (size < sizeof(C2Param)) {
- return nullptr;
- }
- // _mSize must match length
- C2Param *param = (C2Param*)blob;
- if (param->size() > size) {
- return nullptr;
- }
- return param;
-}
-
diff --git a/media/codecs/aac/Android.bp b/media/codecs/aac/Android.bp
deleted file mode 100644
index b70f30a..0000000
--- a/media/codecs/aac/Android.bp
+++ /dev/null
@@ -1,30 +0,0 @@
-cc_library_shared {
- name: "libstagefright_soft_c2aacdec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: [
- "C2SoftAacDec.cpp",
- "DrcPresModeWrap.cpp",
- ],
-
- static_libs: [
- "libFraunhoferAAC",
- ],
-}
-
-cc_library_shared {
- name: "libstagefright_soft_c2aacenc",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: ["C2SoftAacEnc.cpp"],
-
- static_libs: [
- "libFraunhoferAAC",
- ],
-}
diff --git a/media/codecs/aac/C2SoftAacDec.cpp b/media/codecs/aac/C2SoftAacDec.cpp
deleted file mode 100644
index c7c8442..0000000
--- a/media/codecs/aac/C2SoftAacDec.cpp
+++ /dev/null
@@ -1,941 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftAacDec"
-#include <log/log.h>
-
-#include <inttypes.h>
-#include <math.h>
-#include <numeric>
-
-#include <cutils/properties.h>
-#include <media/stagefright/foundation/MediaDefs.h>
-#include <media/stagefright/foundation/hexdump.h>
-#include <media/stagefright/MediaErrors.h>
-#include <utils/misc.h>
-
-#include <C2PlatformSupport.h>
-#include <SimpleC2Interface.h>
-
-#include "C2SoftAacDec.h"
-
-#define FILEREAD_MAX_LAYERS 2
-
-#define DRC_DEFAULT_MOBILE_REF_LEVEL -16.0 /* 64*-0.25dB = -16 dB below full scale for mobile conf */
-#define DRC_DEFAULT_MOBILE_DRC_CUT 1.0 /* maximum compression of dynamic range for mobile conf */
-#define DRC_DEFAULT_MOBILE_DRC_BOOST 1.0 /* maximum compression of dynamic range for mobile conf */
-#define DRC_DEFAULT_MOBILE_DRC_HEAVY C2Config::DRC_COMPRESSION_HEAVY /* switch for heavy compression for mobile conf */
-#define DRC_DEFAULT_MOBILE_DRC_EFFECT 3 /* MPEG-D DRC effect type; 3 => Limited playback range */
-#define DRC_DEFAULT_MOBILE_ENC_LEVEL (0.25) /* encoder target level; -1 => the value is unknown, otherwise dB step value (e.g. 64 for -16 dB) */
-#define MAX_CHANNEL_COUNT 8 /* maximum number of audio channels that can be decoded */
-// names of properties that can be used to override the default DRC settings
-#define PROP_DRC_OVERRIDE_REF_LEVEL "aac_drc_reference_level"
-#define PROP_DRC_OVERRIDE_CUT "aac_drc_cut"
-#define PROP_DRC_OVERRIDE_BOOST "aac_drc_boost"
-#define PROP_DRC_OVERRIDE_HEAVY "aac_drc_heavy"
-#define PROP_DRC_OVERRIDE_ENC_LEVEL "aac_drc_enc_target_level"
-#define PROP_DRC_OVERRIDE_EFFECT "ro.aac_drc_effect_type"
-
-namespace android {
-
-class C2SoftAacDec::IntfImpl : public C2InterfaceHelper {
-public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper> &helper)
- : C2InterfaceHelper(helper) {
-
- setDerivedInstance(this);
-
- addParameter(
- DefineParam(mInputFormat, C2_NAME_INPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::input(0u, C2FormatCompressed))
- .build());
-
- addParameter(
- DefineParam(mOutputFormat, C2_NAME_OUTPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::output(0u, C2FormatAudio))
- .build());
-
- addParameter(
- DefineParam(mInputMediaType, C2_NAME_INPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::input>(
- MEDIA_MIMETYPE_AUDIO_AAC))
- .build());
-
- addParameter(
- DefineParam(mOutputMediaType, C2_NAME_OUTPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::output>(
- MEDIA_MIMETYPE_AUDIO_RAW))
- .build());
-
- addParameter(
- DefineParam(mSampleRate, C2_NAME_STREAM_SAMPLE_RATE_SETTING)
- .withDefault(new C2StreamSampleRateInfo::output(0u, 44100))
- .withFields({C2F(mSampleRate, value).oneOf({
- 7350, 8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000
- })})
- .withSetter(Setter<decltype(*mSampleRate)>::NonStrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mChannelCount, C2_NAME_STREAM_CHANNEL_COUNT_SETTING)
- .withDefault(new C2StreamChannelCountInfo::output(0u, 1))
- .withFields({C2F(mChannelCount, value).inRange(1, 8)})
- .withSetter(Setter<decltype(*mChannelCount)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mBitrate, C2_NAME_STREAM_BITRATE_SETTING)
- .withDefault(new C2BitrateTuning::input(0u, 64000))
- .withFields({C2F(mBitrate, value).inRange(8000, 960000)})
- .withSetter(Setter<decltype(*mBitrate)>::NonStrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mInputMaxBufSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
- .withConstValue(new C2StreamMaxBufferSizeInfo::input(0u, 8192))
- .build());
-
- addParameter(
- DefineParam(mAacFormat, C2_NAME_STREAM_AAC_FORMAT_SETTING)
- .withDefault(new C2StreamAacFormatInfo::input(0u, C2AacStreamFormatRaw))
- .withFields({C2F(mAacFormat, value).oneOf({
- C2AacStreamFormatRaw, C2AacStreamFormatAdts
- })})
- .withSetter(Setter<decltype(*mAacFormat)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mProfileLevel, C2_PARAMKEY_PROFILE_LEVEL)
- .withDefault(new C2StreamProfileLevelInfo::input(0u,
- C2Config::PROFILE_AAC_LC, C2Config::LEVEL_UNUSED))
- .withFields({
- C2F(mProfileLevel, profile).oneOf({
- C2Config::PROFILE_AAC_LC,
- C2Config::PROFILE_AAC_HE,
- C2Config::PROFILE_AAC_HE_PS,
- C2Config::PROFILE_AAC_LD,
- C2Config::PROFILE_AAC_ELD,
- C2Config::PROFILE_AAC_ER_SCALABLE,
- C2Config::PROFILE_AAC_XHE}),
- C2F(mProfileLevel, level).oneOf({
- C2Config::LEVEL_UNUSED
- })
- })
- .withSetter(ProfileLevelSetter)
- .build());
-
- addParameter(
- DefineParam(mDrcCompressMode, C2_PARAMKEY_DRC_COMPRESSION_MODE)
- .withDefault(new C2StreamDrcCompressionModeTuning::input(0u, C2Config::DRC_COMPRESSION_HEAVY))
- .withFields({
- C2F(mDrcCompressMode, value).oneOf({
- C2Config::DRC_COMPRESSION_ODM_DEFAULT,
- C2Config::DRC_COMPRESSION_NONE,
- C2Config::DRC_COMPRESSION_LIGHT,
- C2Config::DRC_COMPRESSION_HEAVY})
- })
- .withSetter(Setter<decltype(*mDrcCompressMode)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mDrcTargetRefLevel, C2_PARAMKEY_DRC_TARGET_REFERENCE_LEVEL)
- .withDefault(new C2StreamDrcTargetReferenceLevelTuning::input(0u, DRC_DEFAULT_MOBILE_REF_LEVEL))
- .withFields({C2F(mDrcTargetRefLevel, value).inRange(-31.75, 0.25)})
- .withSetter(Setter<decltype(*mDrcTargetRefLevel)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mDrcEncTargetLevel, C2_PARAMKEY_DRC_ENCODED_TARGET_LEVEL)
- .withDefault(new C2StreamDrcEncodedTargetLevelTuning::input(0u, DRC_DEFAULT_MOBILE_ENC_LEVEL))
- .withFields({C2F(mDrcEncTargetLevel, value).inRange(-31.75, 0.25)})
- .withSetter(Setter<decltype(*mDrcEncTargetLevel)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mDrcBoostFactor, C2_PARAMKEY_DRC_BOOST_FACTOR)
- .withDefault(new C2StreamDrcBoostFactorTuning::input(0u, DRC_DEFAULT_MOBILE_DRC_BOOST))
- .withFields({C2F(mDrcBoostFactor, value).inRange(0, 1.)})
- .withSetter(Setter<decltype(*mDrcBoostFactor)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mDrcAttenuationFactor, C2_PARAMKEY_DRC_ATTENUATION_FACTOR)
- .withDefault(new C2StreamDrcAttenuationFactorTuning::input(0u, DRC_DEFAULT_MOBILE_DRC_CUT))
- .withFields({C2F(mDrcAttenuationFactor, value).inRange(0, 1.)})
- .withSetter(Setter<decltype(*mDrcAttenuationFactor)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mDrcEffectType, C2_PARAMKEY_DRC_EFFECT_TYPE)
- .withDefault(new C2StreamDrcEffectTypeTuning::input(0u, C2Config::DRC_EFFECT_LIMITED_PLAYBACK_RANGE))
- .withFields({
- C2F(mDrcEffectType, value).oneOf({
- C2Config::DRC_EFFECT_ODM_DEFAULT,
- C2Config::DRC_EFFECT_OFF,
- C2Config::DRC_EFFECT_NONE,
- C2Config::DRC_EFFECT_LATE_NIGHT,
- C2Config::DRC_EFFECT_NOISY_ENVIRONMENT,
- C2Config::DRC_EFFECT_LIMITED_PLAYBACK_RANGE,
- C2Config::DRC_EFFECT_LOW_PLAYBACK_LEVEL,
- C2Config::DRC_EFFECT_DIALOG_ENHANCEMENT,
- C2Config::DRC_EFFECT_GENERAL_COMPRESSION})
- })
- .withSetter(Setter<decltype(*mDrcEffectType)>::StrictValueWithNoDeps)
- .build());
- }
-
- bool isAdts() const { return mAacFormat->value == C2AacStreamFormatAdts; }
- static C2R ProfileLevelSetter(bool mayBlock, C2P<C2StreamProfileLevelInfo::input> &me) {
- (void)mayBlock;
- (void)me; // TODO: validate
- return C2R::Ok();
- }
- int32_t getDrcCompressMode() const { return mDrcCompressMode->value == C2Config::DRC_COMPRESSION_HEAVY ? 1 : 0; }
- int32_t getDrcTargetRefLevel() const { return (mDrcTargetRefLevel->value <= 0 ? -mDrcTargetRefLevel->value * 4. + 0.5 : -1); }
- int32_t getDrcEncTargetLevel() const { return (mDrcEncTargetLevel->value <= 0 ? -mDrcEncTargetLevel->value * 4. + 0.5 : -1); }
- int32_t getDrcBoostFactor() const { return mDrcBoostFactor->value * 127. + 0.5; }
- int32_t getDrcAttenuationFactor() const { return mDrcAttenuationFactor->value * 127. + 0.5; }
- int32_t getDrcEffectType() const { return mDrcEffectType->value; }
-
-private:
- std::shared_ptr<C2StreamFormatConfig::input> mInputFormat;
- std::shared_ptr<C2StreamFormatConfig::output> mOutputFormat;
- std::shared_ptr<C2PortMimeConfig::input> mInputMediaType;
- std::shared_ptr<C2PortMimeConfig::output> mOutputMediaType;
- std::shared_ptr<C2StreamSampleRateInfo::output> mSampleRate;
- std::shared_ptr<C2StreamChannelCountInfo::output> mChannelCount;
- std::shared_ptr<C2BitrateTuning::input> mBitrate;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mInputMaxBufSize;
- std::shared_ptr<C2StreamAacFormatInfo::input> mAacFormat;
- std::shared_ptr<C2StreamProfileLevelInfo::input> mProfileLevel;
- std::shared_ptr<C2StreamDrcCompressionModeTuning::input> mDrcCompressMode;
- std::shared_ptr<C2StreamDrcTargetReferenceLevelTuning::input> mDrcTargetRefLevel;
- std::shared_ptr<C2StreamDrcEncodedTargetLevelTuning::input> mDrcEncTargetLevel;
- std::shared_ptr<C2StreamDrcBoostFactorTuning::input> mDrcBoostFactor;
- std::shared_ptr<C2StreamDrcAttenuationFactorTuning::input> mDrcAttenuationFactor;
- std::shared_ptr<C2StreamDrcEffectTypeTuning::input> mDrcEffectType;
- // TODO Add : C2StreamAacSbrModeTuning
-};
-
-constexpr char COMPONENT_NAME[] = "c2.android.aac.decoder";
-
-C2SoftAacDec::C2SoftAacDec(
- const char *name,
- c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl)
- : SimpleC2Component(std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mAACDecoder(nullptr),
- mStreamInfo(nullptr),
- mSignalledError(false),
- mOutputDelayRingBuffer(nullptr) {
-}
-
-C2SoftAacDec::~C2SoftAacDec() {
- onRelease();
-}
-
-c2_status_t C2SoftAacDec::onInit() {
- status_t err = initDecoder();
- return err == OK ? C2_OK : C2_CORRUPTED;
-}
-
-c2_status_t C2SoftAacDec::onStop() {
- drainDecoder();
- // reset the "configured" state
- mOutputDelayCompensated = 0;
- mOutputDelayRingBufferWritePos = 0;
- mOutputDelayRingBufferReadPos = 0;
- mOutputDelayRingBufferFilled = 0;
- mBuffersInfo.clear();
-
- // To make the codec behave the same before and after a reset, we need to invalidate the
- // streaminfo struct. This does that:
- mStreamInfo->sampleRate = 0; // TODO: mStreamInfo is read only
-
- mSignalledError = false;
-
- return C2_OK;
-}
-
-void C2SoftAacDec::onReset() {
- (void)onStop();
-}
-
-void C2SoftAacDec::onRelease() {
- if (mAACDecoder) {
- aacDecoder_Close(mAACDecoder);
- mAACDecoder = nullptr;
- }
- if (mOutputDelayRingBuffer) {
- delete[] mOutputDelayRingBuffer;
- mOutputDelayRingBuffer = nullptr;
- }
-}
-
-status_t C2SoftAacDec::initDecoder() {
- ALOGV("initDecoder()");
- status_t status = UNKNOWN_ERROR;
- mAACDecoder = aacDecoder_Open(TT_MP4_ADIF, /* num layers */ 1);
- if (mAACDecoder != nullptr) {
- mStreamInfo = aacDecoder_GetStreamInfo(mAACDecoder);
- if (mStreamInfo != nullptr) {
- status = OK;
- }
- }
-
- mOutputDelayCompensated = 0;
- mOutputDelayRingBufferSize = 2048 * MAX_CHANNEL_COUNT * kNumDelayBlocksMax;
- mOutputDelayRingBuffer = new short[mOutputDelayRingBufferSize];
- mOutputDelayRingBufferWritePos = 0;
- mOutputDelayRingBufferReadPos = 0;
- mOutputDelayRingBufferFilled = 0;
-
- if (mAACDecoder == nullptr) {
- ALOGE("AAC decoder is null. TODO: Can not call aacDecoder_SetParam in the following code");
- }
-
- //aacDecoder_SetParam(mAACDecoder, AAC_PCM_LIMITER_ENABLE, 0);
-
- //init DRC wrapper
- mDrcWrap.setDecoderHandle(mAACDecoder);
- mDrcWrap.submitStreamData(mStreamInfo);
-
- // for streams that contain metadata, use the mobile profile DRC settings unless overridden by platform properties
- // TODO: change the DRC settings depending on audio output device type (HDMI, loadspeaker, headphone)
-
- // DRC_PRES_MODE_WRAP_DESIRED_TARGET
- int32_t targetRefLevel = mIntf->getDrcTargetRefLevel();
- ALOGV("AAC decoder using desired DRC target reference level of %d", targetRefLevel);
- mDrcWrap.setParam(DRC_PRES_MODE_WRAP_DESIRED_TARGET, (unsigned)targetRefLevel);
-
- // DRC_PRES_MODE_WRAP_DESIRED_ATT_FACTOR
-
- int32_t attenuationFactor = mIntf->getDrcAttenuationFactor();
- ALOGV("AAC decoder using desired DRC attenuation factor of %d", attenuationFactor);
- mDrcWrap.setParam(DRC_PRES_MODE_WRAP_DESIRED_ATT_FACTOR, (unsigned)attenuationFactor);
-
- // DRC_PRES_MODE_WRAP_DESIRED_BOOST_FACTOR
- int32_t boostFactor = mIntf->getDrcBoostFactor();
- ALOGV("AAC decoder using desired DRC boost factor of %d", boostFactor);
- mDrcWrap.setParam(DRC_PRES_MODE_WRAP_DESIRED_BOOST_FACTOR, (unsigned)boostFactor);
-
- // DRC_PRES_MODE_WRAP_DESIRED_HEAVY
- int32_t compressMode = mIntf->getDrcCompressMode();
- ALOGV("AAC decoder using desried DRC heavy compression switch of %d", compressMode);
- mDrcWrap.setParam(DRC_PRES_MODE_WRAP_DESIRED_HEAVY, (unsigned)compressMode);
-
- // DRC_PRES_MODE_WRAP_ENCODER_TARGET
- int32_t encTargetLevel = mIntf->getDrcEncTargetLevel();
- ALOGV("AAC decoder using encoder-side DRC reference level of %d", encTargetLevel);
- mDrcWrap.setParam(DRC_PRES_MODE_WRAP_ENCODER_TARGET, (unsigned)encTargetLevel);
-
- // AAC_UNIDRC_SET_EFFECT
- int32_t effectType = mIntf->getDrcEffectType();
- ALOGV("AAC decoder using MPEG-D DRC effect type %d", effectType);
- aacDecoder_SetParam(mAACDecoder, AAC_UNIDRC_SET_EFFECT, effectType);
-
- // By default, the decoder creates a 5.1 channel downmix signal.
- // For seven and eight channel input streams, enable 6.1 and 7.1 channel output
- aacDecoder_SetParam(mAACDecoder, AAC_PCM_MAX_OUTPUT_CHANNELS, -1);
-
- return status;
-}
-
-bool C2SoftAacDec::outputDelayRingBufferPutSamples(INT_PCM *samples, int32_t numSamples) {
- if (numSamples == 0) {
- return true;
- }
- if (outputDelayRingBufferSpaceLeft() < numSamples) {
- ALOGE("RING BUFFER WOULD OVERFLOW");
- return false;
- }
- if (mOutputDelayRingBufferWritePos + numSamples <= mOutputDelayRingBufferSize
- && (mOutputDelayRingBufferReadPos <= mOutputDelayRingBufferWritePos
- || mOutputDelayRingBufferReadPos > mOutputDelayRingBufferWritePos + numSamples)) {
- // faster memcopy loop without checks, if the preconditions allow this
- for (int32_t i = 0; i < numSamples; i++) {
- mOutputDelayRingBuffer[mOutputDelayRingBufferWritePos++] = samples[i];
- }
-
- if (mOutputDelayRingBufferWritePos >= mOutputDelayRingBufferSize) {
- mOutputDelayRingBufferWritePos -= mOutputDelayRingBufferSize;
- }
- } else {
- ALOGV("slow C2SoftAacDec::outputDelayRingBufferPutSamples()");
-
- for (int32_t i = 0; i < numSamples; i++) {
- mOutputDelayRingBuffer[mOutputDelayRingBufferWritePos] = samples[i];
- mOutputDelayRingBufferWritePos++;
- if (mOutputDelayRingBufferWritePos >= mOutputDelayRingBufferSize) {
- mOutputDelayRingBufferWritePos -= mOutputDelayRingBufferSize;
- }
- }
- }
- mOutputDelayRingBufferFilled += numSamples;
- return true;
-}
-
-int32_t C2SoftAacDec::outputDelayRingBufferGetSamples(INT_PCM *samples, int32_t numSamples) {
-
- if (numSamples > mOutputDelayRingBufferFilled) {
- ALOGE("RING BUFFER WOULD UNDERRUN");
- return -1;
- }
-
- if (mOutputDelayRingBufferReadPos + numSamples <= mOutputDelayRingBufferSize
- && (mOutputDelayRingBufferWritePos < mOutputDelayRingBufferReadPos
- || mOutputDelayRingBufferWritePos >= mOutputDelayRingBufferReadPos + numSamples)) {
- // faster memcopy loop without checks, if the preconditions allow this
- if (samples != nullptr) {
- for (int32_t i = 0; i < numSamples; i++) {
- samples[i] = mOutputDelayRingBuffer[mOutputDelayRingBufferReadPos++];
- }
- } else {
- mOutputDelayRingBufferReadPos += numSamples;
- }
- if (mOutputDelayRingBufferReadPos >= mOutputDelayRingBufferSize) {
- mOutputDelayRingBufferReadPos -= mOutputDelayRingBufferSize;
- }
- } else {
- ALOGV("slow C2SoftAacDec::outputDelayRingBufferGetSamples()");
-
- for (int32_t i = 0; i < numSamples; i++) {
- if (samples != nullptr) {
- samples[i] = mOutputDelayRingBuffer[mOutputDelayRingBufferReadPos];
- }
- mOutputDelayRingBufferReadPos++;
- if (mOutputDelayRingBufferReadPos >= mOutputDelayRingBufferSize) {
- mOutputDelayRingBufferReadPos -= mOutputDelayRingBufferSize;
- }
- }
- }
- mOutputDelayRingBufferFilled -= numSamples;
- return numSamples;
-}
-
-int32_t C2SoftAacDec::outputDelayRingBufferSamplesAvailable() {
- return mOutputDelayRingBufferFilled;
-}
-
-int32_t C2SoftAacDec::outputDelayRingBufferSpaceLeft() {
- return mOutputDelayRingBufferSize - outputDelayRingBufferSamplesAvailable();
-}
-
-void C2SoftAacDec::drainRingBuffer(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool,
- bool eos) {
- while (!mBuffersInfo.empty() && outputDelayRingBufferSamplesAvailable()
- >= mStreamInfo->frameSize * mStreamInfo->numChannels) {
- Info &outInfo = mBuffersInfo.front();
- ALOGV("outInfo.frameIndex = %" PRIu64, outInfo.frameIndex);
- int samplesize __unused = mStreamInfo->numChannels * sizeof(int16_t);
-
- int available = outputDelayRingBufferSamplesAvailable();
- int numFrames = outInfo.decodedSizes.size();
- int numSamples = numFrames * (mStreamInfo->frameSize * mStreamInfo->numChannels);
- if (available < numSamples) {
- if (eos) {
- numSamples = available;
- } else {
- break;
- }
- }
- ALOGV("%d samples available (%d), or %d frames",
- numSamples, available, numFrames);
- ALOGV("getting %d from ringbuffer", numSamples);
-
- std::shared_ptr<C2LinearBlock> block;
- std::function<void(const std::unique_ptr<C2Work>&)> fillWork =
- [&block, numSamples, pool, this]()
- -> std::function<void(const std::unique_ptr<C2Work>&)> {
- auto fillEmptyWork = [](
- const std::unique_ptr<C2Work> &work, c2_status_t err) {
- work->result = err;
- C2FrameData &output = work->worklets.front()->output;
- output.flags = work->input.flags;
- output.buffers.clear();
- output.ordinal = work->input.ordinal;
-
- work->workletsProcessed = 1u;
- };
-
- using namespace std::placeholders;
- if (numSamples == 0) {
- return std::bind(fillEmptyWork, _1, C2_OK);
- }
-
- // TODO: error handling, proper usage, etc.
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- c2_status_t err = pool->fetchLinearBlock(
- numSamples * sizeof(int16_t), usage, &block);
- if (err != C2_OK) {
- ALOGD("failed to fetch a linear block (%d)", err);
- return std::bind(fillEmptyWork, _1, C2_NO_MEMORY);
- }
- C2WriteView wView = block->map().get();
- // TODO
- INT_PCM *outBuffer = reinterpret_cast<INT_PCM *>(wView.data());
- int32_t ns = outputDelayRingBufferGetSamples(outBuffer, numSamples);
- if (ns != numSamples) {
- ALOGE("not a complete frame of samples available");
- mSignalledError = true;
- return std::bind(fillEmptyWork, _1, C2_CORRUPTED);
- }
- return [buffer = createLinearBuffer(block)](
- const std::unique_ptr<C2Work> &work) {
- work->result = C2_OK;
- C2FrameData &output = work->worklets.front()->output;
- output.flags = work->input.flags;
- output.buffers.clear();
- output.buffers.push_back(buffer);
- output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
- };
- }();
-
- if (work && work->input.ordinal.frameIndex == c2_cntr64_t(outInfo.frameIndex)) {
- fillWork(work);
- } else {
- finish(outInfo.frameIndex, fillWork);
- }
-
- ALOGV("out timestamp %" PRIu64 " / %u", outInfo.timestamp, block ? block->capacity() : 0);
- mBuffersInfo.pop_front();
- }
-}
-
-void C2SoftAacDec::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 1u;
- work->worklets.front()->output.configUpdate.clear();
- work->worklets.front()->output.flags = work->input.flags;
-
- if (mSignalledError) {
- return;
- }
-
- UCHAR* inBuffer[FILEREAD_MAX_LAYERS];
- UINT inBufferLength[FILEREAD_MAX_LAYERS] = {0};
- UINT bytesValid[FILEREAD_MAX_LAYERS] = {0};
-
- INT_PCM tmpOutBuffer[2048 * MAX_CHANNEL_COUNT];
- C2ReadView view = mDummyReadView;
- size_t offset = 0u;
- size_t size = 0u;
- if (!work->input.buffers.empty()) {
- view = work->input.buffers[0]->data().linearBlocks().front().map().get();
- size = view.capacity();
- }
-
- bool eos = (work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0;
- bool codecConfig = (work->input.flags & C2FrameData::FLAG_CODEC_CONFIG) != 0;
-
- //TODO
-#if 0
- if (mInputBufferCount == 0 && !codecConfig) {
- ALOGW("first buffer should have FLAG_CODEC_CONFIG set");
- codecConfig = true;
- }
-#endif
- if (codecConfig && size > 0u) {
- // const_cast because of libAACdec method signature.
- inBuffer[0] = const_cast<UCHAR *>(view.data() + offset);
- inBufferLength[0] = size;
-
- AAC_DECODER_ERROR decoderErr =
- aacDecoder_ConfigRaw(mAACDecoder,
- inBuffer,
- inBufferLength);
-
- if (decoderErr != AAC_DEC_OK) {
- ALOGE("aacDecoder_ConfigRaw decoderErr = 0x%4.4x", decoderErr);
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->worklets.front()->output.buffers.clear();
- return;
- }
-
- Info inInfo;
- inInfo.frameIndex = work->input.ordinal.frameIndex.peeku();
- inInfo.timestamp = work->input.ordinal.timestamp.peeku();
- inInfo.bufferSize = size;
- inInfo.decodedSizes.clear();
- while (size > 0u) {
- ALOGV("size = %zu", size);
- if (mIntf->isAdts()) {
- size_t adtsHeaderSize = 0;
- // skip 30 bits, aac_frame_length follows.
- // ssssssss ssssiiip ppffffPc ccohCCll llllllll lll?????
-
- const uint8_t *adtsHeader = view.data() + offset;
-
- bool signalError = false;
- if (size < 7) {
- ALOGE("Audio data too short to contain even the ADTS header. "
- "Got %zu bytes.", size);
- hexdump(adtsHeader, size);
- signalError = true;
- } else {
- bool protectionAbsent = (adtsHeader[1] & 1);
-
- unsigned aac_frame_length =
- ((adtsHeader[3] & 3) << 11)
- | (adtsHeader[4] << 3)
- | (adtsHeader[5] >> 5);
-
- if (size < aac_frame_length) {
- ALOGE("Not enough audio data for the complete frame. "
- "Got %zu bytes, frame size according to the ADTS "
- "header is %u bytes.",
- size, aac_frame_length);
- hexdump(adtsHeader, size);
- signalError = true;
- } else {
- adtsHeaderSize = (protectionAbsent ? 7 : 9);
- if (aac_frame_length < adtsHeaderSize) {
- signalError = true;
- } else {
- // const_cast because of libAACdec method signature.
- inBuffer[0] = const_cast<UCHAR *>(adtsHeader + adtsHeaderSize);
- inBufferLength[0] = aac_frame_length - adtsHeaderSize;
-
- offset += adtsHeaderSize;
- size -= adtsHeaderSize;
- }
- }
- }
-
- if (signalError) {
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- } else {
- // const_cast because of libAACdec method signature.
- inBuffer[0] = const_cast<UCHAR *>(view.data() + offset);
- inBufferLength[0] = size;
- }
-
- // Fill and decode
- bytesValid[0] = inBufferLength[0];
-
- INT prevSampleRate = mStreamInfo->sampleRate;
- INT prevNumChannels = mStreamInfo->numChannels;
-
- aacDecoder_Fill(mAACDecoder,
- inBuffer,
- inBufferLength,
- bytesValid);
-
- // run DRC check
- mDrcWrap.submitStreamData(mStreamInfo);
- mDrcWrap.update();
-
- UINT inBufferUsedLength = inBufferLength[0] - bytesValid[0];
- size -= inBufferUsedLength;
- offset += inBufferUsedLength;
-
- AAC_DECODER_ERROR decoderErr;
- do {
- if (outputDelayRingBufferSpaceLeft() <
- (mStreamInfo->frameSize * mStreamInfo->numChannels)) {
- ALOGV("skipping decode: not enough space left in ringbuffer");
- // discard buffer
- size = 0;
- break;
- }
-
- int numConsumed = mStreamInfo->numTotalBytes;
- decoderErr = aacDecoder_DecodeFrame(mAACDecoder,
- tmpOutBuffer,
- 2048 * MAX_CHANNEL_COUNT,
- 0 /* flags */);
-
- numConsumed = mStreamInfo->numTotalBytes - numConsumed;
-
- if (decoderErr == AAC_DEC_NOT_ENOUGH_BITS) {
- break;
- }
- inInfo.decodedSizes.push_back(numConsumed);
-
- if (decoderErr != AAC_DEC_OK) {
- ALOGW("aacDecoder_DecodeFrame decoderErr = 0x%4.4x", decoderErr);
- }
-
- if (bytesValid[0] != 0) {
- ALOGE("bytesValid[0] != 0 should never happen");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
-
- size_t numOutBytes =
- mStreamInfo->frameSize * sizeof(int16_t) * mStreamInfo->numChannels;
-
- if (decoderErr == AAC_DEC_OK) {
- if (!outputDelayRingBufferPutSamples(tmpOutBuffer,
- mStreamInfo->frameSize * mStreamInfo->numChannels)) {
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- } else {
- ALOGW("AAC decoder returned error 0x%4.4x, substituting silence", decoderErr);
-
- memset(tmpOutBuffer, 0, numOutBytes); // TODO: check for overflow
-
- if (!outputDelayRingBufferPutSamples(tmpOutBuffer,
- mStreamInfo->frameSize * mStreamInfo->numChannels)) {
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
-
- // Discard input buffer.
- size = 0;
-
- aacDecoder_SetParam(mAACDecoder, AAC_TPDEC_CLEAR_BUFFER, 1);
-
- // After an error, replace bufferSize with the sum of the
- // decodedSizes to resynchronize the in/out lists.
- inInfo.decodedSizes.pop_back();
- inInfo.bufferSize = std::accumulate(
- inInfo.decodedSizes.begin(), inInfo.decodedSizes.end(), 0);
-
- // fall through
- }
-
- /*
- * AAC+/eAAC+ streams can be signalled in two ways: either explicitly
- * or implicitly, according to MPEG4 spec. AAC+/eAAC+ is a dual
- * rate system and the sampling rate in the final output is actually
- * doubled compared with the core AAC decoder sampling rate.
- *
- * Explicit signalling is done by explicitly defining SBR audio object
- * type in the bitstream. Implicit signalling is done by embedding
- * SBR content in AAC extension payload specific to SBR, and hence
- * requires an AAC decoder to perform pre-checks on actual audio frames.
- *
- * Thus, we could not say for sure whether a stream is
- * AAC+/eAAC+ until the first data frame is decoded.
- */
- if (!mStreamInfo->sampleRate || !mStreamInfo->numChannels) {
- // if ((mInputBufferCount > 2) && (mOutputBufferCount <= 1)) {
- ALOGD("Invalid AAC stream");
- // TODO: notify(OMX_EventError, OMX_ErrorUndefined, decoderErr, NULL);
- // mSignalledError = true;
- // }
- } else if ((mStreamInfo->sampleRate != prevSampleRate) ||
- (mStreamInfo->numChannels != prevNumChannels)) {
- ALOGI("Reconfiguring decoder: %d->%d Hz, %d->%d channels",
- prevSampleRate, mStreamInfo->sampleRate,
- prevNumChannels, mStreamInfo->numChannels);
-
- C2StreamSampleRateInfo::output sampleRateInfo(0u, mStreamInfo->sampleRate);
- C2StreamChannelCountInfo::output channelCountInfo(0u, mStreamInfo->numChannels);
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- c2_status_t err = mIntf->config(
- { &sampleRateInfo, &channelCountInfo },
- C2_MAY_BLOCK,
- &failures);
- if (err == OK) {
- // TODO: this does not handle the case where the values are
- // altered during config.
- C2FrameData &output = work->worklets.front()->output;
- output.configUpdate.push_back(C2Param::Copy(sampleRateInfo));
- output.configUpdate.push_back(C2Param::Copy(channelCountInfo));
- } else {
- ALOGE("Config Update failed");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- }
- ALOGV("size = %zu", size);
- } while (decoderErr == AAC_DEC_OK);
- }
-
- int32_t outputDelay = mStreamInfo->outputDelay * mStreamInfo->numChannels;
-
- mBuffersInfo.push_back(std::move(inInfo));
- work->workletsProcessed = 0u;
- if (!eos && mOutputDelayCompensated < outputDelay) {
- // discard outputDelay at the beginning
- int32_t toCompensate = outputDelay - mOutputDelayCompensated;
- int32_t discard = outputDelayRingBufferSamplesAvailable();
- if (discard > toCompensate) {
- discard = toCompensate;
- }
- int32_t discarded = outputDelayRingBufferGetSamples(nullptr, discard);
- mOutputDelayCompensated += discarded;
- return;
- }
-
- if (eos) {
- drainInternal(DRAIN_COMPONENT_WITH_EOS, pool, work);
- } else {
- drainRingBuffer(work, pool, false /* not EOS */);
- }
-}
-
-c2_status_t C2SoftAacDec::drainInternal(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool,
- const std::unique_ptr<C2Work> &work) {
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
-
- bool eos = (drainMode == DRAIN_COMPONENT_WITH_EOS);
-
- drainDecoder();
- drainRingBuffer(work, pool, eos);
-
- if (eos) {
- auto fillEmptyWork = [](const std::unique_ptr<C2Work> &work) {
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
- };
- while (mBuffersInfo.size() > 1u) {
- finish(mBuffersInfo.front().frameIndex, fillEmptyWork);
- mBuffersInfo.pop_front();
- }
- if (work && work->workletsProcessed == 0u) {
- fillEmptyWork(work);
- }
- mBuffersInfo.clear();
- }
-
- return C2_OK;
-}
-
-c2_status_t C2SoftAacDec::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- return drainInternal(drainMode, pool, nullptr);
-}
-
-c2_status_t C2SoftAacDec::onFlush_sm() {
- drainDecoder();
- mBuffersInfo.clear();
-
- int avail;
- while ((avail = outputDelayRingBufferSamplesAvailable()) > 0) {
- if (avail > mStreamInfo->frameSize * mStreamInfo->numChannels) {
- avail = mStreamInfo->frameSize * mStreamInfo->numChannels;
- }
- int32_t ns = outputDelayRingBufferGetSamples(nullptr, avail);
- if (ns != avail) {
- ALOGW("not a complete frame of samples available");
- break;
- }
- }
- mOutputDelayRingBufferReadPos = mOutputDelayRingBufferWritePos;
-
- return C2_OK;
-}
-
-void C2SoftAacDec::drainDecoder() {
- // flush decoder until outputDelay is compensated
- while (mOutputDelayCompensated > 0) {
- // a buffer big enough for MAX_CHANNEL_COUNT channels of decoded HE-AAC
- INT_PCM tmpOutBuffer[2048 * MAX_CHANNEL_COUNT];
-
- // run DRC check
- mDrcWrap.submitStreamData(mStreamInfo);
- mDrcWrap.update();
-
- AAC_DECODER_ERROR decoderErr =
- aacDecoder_DecodeFrame(mAACDecoder,
- tmpOutBuffer,
- 2048 * MAX_CHANNEL_COUNT,
- AACDEC_FLUSH);
- if (decoderErr != AAC_DEC_OK) {
- ALOGW("aacDecoder_DecodeFrame decoderErr = 0x%4.4x", decoderErr);
- }
-
- int32_t tmpOutBufferSamples = mStreamInfo->frameSize * mStreamInfo->numChannels;
- if (tmpOutBufferSamples > mOutputDelayCompensated) {
- tmpOutBufferSamples = mOutputDelayCompensated;
- }
- outputDelayRingBufferPutSamples(tmpOutBuffer, tmpOutBufferSamples);
-
- mOutputDelayCompensated -= tmpOutBufferSamples;
- }
-}
-
-class C2SoftAacDecFactory : public C2ComponentFactory {
-public:
- C2SoftAacDecFactory() : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {
- }
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftAacDec(COMPONENT_NAME,
- id,
- std::make_shared<C2SoftAacDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id, std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftAacDec::IntfImpl>(
- COMPONENT_NAME, id, std::make_shared<C2SoftAacDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftAacDecFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftAacDecFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/aac/C2SoftAacDec.h b/media/codecs/aac/C2SoftAacDec.h
deleted file mode 100644
index 965c29e..0000000
--- a/media/codecs/aac/C2SoftAacDec.h
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_AAC_DEC_H_
-#define ANDROID_C2_SOFT_AAC_DEC_H_
-
-#include <SimpleC2Component.h>
-
-
-#include "aacdecoder_lib.h"
-#include "DrcPresModeWrap.h"
-
-namespace android {
-
-struct C2SoftAacDec : public SimpleC2Component {
- class IntfImpl;
-
- C2SoftAacDec(const char *name, c2_node_id_t id, const std::shared_ptr<IntfImpl> &intfImpl);
- virtual ~C2SoftAacDec();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
-
-private:
- enum {
- kNumDelayBlocksMax = 8,
- };
-
- std::shared_ptr<IntfImpl> mIntf;
-
- HANDLE_AACDECODER mAACDecoder;
- CStreamInfo *mStreamInfo;
- bool mIsFirst;
- size_t mInputBufferCount;
- size_t mOutputBufferCount;
- bool mSignalledError;
- struct Info {
- uint64_t frameIndex;
- size_t bufferSize;
- uint64_t timestamp;
- std::vector<int32_t> decodedSizes;
- };
- std::list<Info> mBuffersInfo;
-
- CDrcPresModeWrapper mDrcWrap;
-
- enum {
- NONE,
- AWAITING_DISABLED,
- AWAITING_ENABLED
- } mOutputPortSettingsChange;
-
- void initPorts();
- status_t initDecoder();
- bool isConfigured() const;
- void drainDecoder();
-
- void drainRingBuffer(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool,
- bool eos);
- c2_status_t drainInternal(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool,
- const std::unique_ptr<C2Work> &work);
-
-// delay compensation
- bool mEndOfInput;
- bool mEndOfOutput;
- int32_t mOutputDelayCompensated;
- int32_t mOutputDelayRingBufferSize;
- short *mOutputDelayRingBuffer;
- int32_t mOutputDelayRingBufferWritePos;
- int32_t mOutputDelayRingBufferReadPos;
- int32_t mOutputDelayRingBufferFilled;
- bool outputDelayRingBufferPutSamples(INT_PCM *samples, int numSamples);
- int32_t outputDelayRingBufferGetSamples(INT_PCM *samples, int numSamples);
- int32_t outputDelayRingBufferSamplesAvailable();
- int32_t outputDelayRingBufferSpaceLeft();
-
- C2_DO_NOT_COPY(C2SoftAacDec);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_AAC_DEC_H_
diff --git a/media/codecs/aac/C2SoftAacEnc.cpp b/media/codecs/aac/C2SoftAacEnc.cpp
deleted file mode 100644
index 87730ae..0000000
--- a/media/codecs/aac/C2SoftAacEnc.cpp
+++ /dev/null
@@ -1,603 +0,0 @@
-/*
- * Copyright (C) 2012 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftAacEnc"
-#include <utils/Log.h>
-
-#include <inttypes.h>
-
-#include <C2PlatformSupport.h>
-#include <SimpleC2Interface.h>
-#include <media/stagefright/foundation/MediaDefs.h>
-#include <media/stagefright/foundation/hexdump.h>
-
-#include "C2SoftAacEnc.h"
-
-namespace android {
-
-class C2SoftAacEnc::IntfImpl : public C2InterfaceHelper {
-public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper> &helper)
- : C2InterfaceHelper(helper) {
-
- setDerivedInstance(this);
-
- addParameter(
- DefineParam(mInputFormat, C2_NAME_INPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::input(0u, C2FormatAudio))
- .build());
-
- addParameter(
- DefineParam(mOutputFormat, C2_NAME_OUTPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::output(0u, C2FormatCompressed))
- .build());
-
- addParameter(
- DefineParam(mInputMediaType, C2_NAME_INPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::input>(
- MEDIA_MIMETYPE_AUDIO_RAW))
- .build());
-
- addParameter(
- DefineParam(mOutputMediaType, C2_NAME_OUTPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::output>(
- MEDIA_MIMETYPE_AUDIO_AAC))
- .build());
-
- addParameter(
- DefineParam(mSampleRate, C2_NAME_STREAM_SAMPLE_RATE_SETTING)
- .withDefault(new C2StreamSampleRateInfo::input(0u, 44100))
- .withFields({C2F(mSampleRate, value).oneOf({
- 8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000
- })})
- .withSetter((Setter<decltype(*mSampleRate)>::StrictValueWithNoDeps))
- .build());
-
- addParameter(
- DefineParam(mChannelCount, C2_NAME_STREAM_CHANNEL_COUNT_SETTING)
- .withDefault(new C2StreamChannelCountInfo::input(0u, 1))
- .withFields({C2F(mChannelCount, value).inRange(1, 6)})
- .withSetter(Setter<decltype(*mChannelCount)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mBitrate, C2_NAME_STREAM_BITRATE_SETTING)
- .withDefault(new C2BitrateTuning::output(0u, 64000))
- .withFields({C2F(mBitrate, value).inRange(8000, 960000)})
- .withSetter(Setter<decltype(*mBitrate)>::NonStrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mInputMaxBufSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
- .withDefault(new C2StreamMaxBufferSizeInfo::input(0u, 8192))
- .calculatedAs(MaxBufSizeCalculator, mChannelCount)
- .build());
-
- addParameter(
- DefineParam(mProfileLevel, C2_PARAMKEY_PROFILE_LEVEL)
- .withDefault(new C2StreamProfileLevelInfo::output(0u,
- C2Config::PROFILE_AAC_LC, C2Config::LEVEL_UNUSED))
- .withFields({
- C2F(mProfileLevel, profile).oneOf({
- C2Config::PROFILE_AAC_LC,
- C2Config::PROFILE_AAC_HE,
- C2Config::PROFILE_AAC_HE_PS,
- C2Config::PROFILE_AAC_LD,
- C2Config::PROFILE_AAC_ELD}),
- C2F(mProfileLevel, level).oneOf({
- C2Config::LEVEL_UNUSED
- })
- })
- .withSetter(ProfileLevelSetter)
- .build());
- }
-
- uint32_t getSampleRate() const { return mSampleRate->value; }
- uint32_t getChannelCount() const { return mChannelCount->value; }
- uint32_t getBitrate() const { return mBitrate->value; }
- static C2R ProfileLevelSetter(bool mayBlock, C2P<C2StreamProfileLevelInfo::output> &me) {
- (void)mayBlock;
- (void)me; // TODO: validate
- return C2R::Ok();
- }
-
- static C2R MaxBufSizeCalculator(
- bool mayBlock,
- C2P<C2StreamMaxBufferSizeInfo::input> &me,
- const C2P<C2StreamChannelCountInfo::input> &channelCount) {
- (void)mayBlock;
- me.set().value = 1024 * sizeof(short) * channelCount.v.value;
- return C2R::Ok();
- }
-
-private:
- std::shared_ptr<C2StreamFormatConfig::input> mInputFormat;
- std::shared_ptr<C2StreamFormatConfig::output> mOutputFormat;
- std::shared_ptr<C2PortMimeConfig::input> mInputMediaType;
- std::shared_ptr<C2PortMimeConfig::output> mOutputMediaType;
- std::shared_ptr<C2StreamSampleRateInfo::input> mSampleRate;
- std::shared_ptr<C2StreamChannelCountInfo::input> mChannelCount;
- std::shared_ptr<C2BitrateTuning::output> mBitrate;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mInputMaxBufSize;
- std::shared_ptr<C2StreamProfileLevelInfo::output> mProfileLevel;
-};
-
-constexpr char COMPONENT_NAME[] = "c2.android.aac.encoder";
-
-C2SoftAacEnc::C2SoftAacEnc(
- const char *name,
- c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl)
- : SimpleC2Component(std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mAACEncoder(nullptr),
- mSBRMode(-1),
- mSBRRatio(0),
- mAACProfile(AOT_AAC_LC),
- mNumBytesPerInputFrame(0u),
- mOutBufferSize(0u),
- mSentCodecSpecificData(false),
- mInputSize(0),
- mInputTimeUs(-1ll),
- mSignalledError(false),
- mOutIndex(0u) {
-}
-
-C2SoftAacEnc::~C2SoftAacEnc() {
- onReset();
-}
-
-c2_status_t C2SoftAacEnc::onInit() {
- status_t err = initEncoder();
- return err == OK ? C2_OK : C2_CORRUPTED;
-}
-
-status_t C2SoftAacEnc::initEncoder() {
- if (AACENC_OK != aacEncOpen(&mAACEncoder, 0, 0)) {
- ALOGE("Failed to init AAC encoder");
- return UNKNOWN_ERROR;
- }
- return setAudioParams();
-}
-
-c2_status_t C2SoftAacEnc::onStop() {
- mSentCodecSpecificData = false;
- mInputSize = 0u;
- mInputTimeUs = -1ll;
- mSignalledError = false;
- return C2_OK;
-}
-
-void C2SoftAacEnc::onReset() {
- (void)onStop();
- aacEncClose(&mAACEncoder);
-}
-
-void C2SoftAacEnc::onRelease() {
- // no-op
-}
-
-c2_status_t C2SoftAacEnc::onFlush_sm() {
- mSentCodecSpecificData = false;
- mInputSize = 0u;
- return C2_OK;
-}
-
-static CHANNEL_MODE getChannelMode(uint32_t nChannels) {
- CHANNEL_MODE chMode = MODE_INVALID;
- switch (nChannels) {
- case 1: chMode = MODE_1; break;
- case 2: chMode = MODE_2; break;
- case 3: chMode = MODE_1_2; break;
- case 4: chMode = MODE_1_2_1; break;
- case 5: chMode = MODE_1_2_2; break;
- case 6: chMode = MODE_1_2_2_1; break;
- default: chMode = MODE_INVALID;
- }
- return chMode;
-}
-
-//static AUDIO_OBJECT_TYPE getAOTFromProfile(OMX_U32 profile) {
-// if (profile == OMX_AUDIO_AACObjectLC) {
-// return AOT_AAC_LC;
-// } else if (profile == OMX_AUDIO_AACObjectHE) {
-// return AOT_SBR;
-// } else if (profile == OMX_AUDIO_AACObjectHE_PS) {
-// return AOT_PS;
-// } else if (profile == OMX_AUDIO_AACObjectLD) {
-// return AOT_ER_AAC_LD;
-// } else if (profile == OMX_AUDIO_AACObjectELD) {
-// return AOT_ER_AAC_ELD;
-// } else {
-// ALOGW("Unsupported AAC profile - defaulting to AAC-LC");
-// return AOT_AAC_LC;
-// }
-//}
-
-status_t C2SoftAacEnc::setAudioParams() {
- // We call this whenever sample rate, number of channels, bitrate or SBR mode change
- // in reponse to setParameter calls.
-
- ALOGV("setAudioParams: %u Hz, %u channels, %u bps, %i sbr mode, %i sbr ratio",
- mIntf->getSampleRate(), mIntf->getChannelCount(), mIntf->getBitrate(), mSBRMode, mSBRRatio);
-
- if (AACENC_OK != aacEncoder_SetParam(mAACEncoder, AACENC_AOT, mAACProfile)) {
- ALOGE("Failed to set AAC encoder parameters");
- return UNKNOWN_ERROR;
- }
-
- if (AACENC_OK != aacEncoder_SetParam(mAACEncoder, AACENC_SAMPLERATE, mIntf->getSampleRate())) {
- ALOGE("Failed to set AAC encoder parameters");
- return UNKNOWN_ERROR;
- }
- if (AACENC_OK != aacEncoder_SetParam(mAACEncoder, AACENC_BITRATE, mIntf->getBitrate())) {
- ALOGE("Failed to set AAC encoder parameters");
- return UNKNOWN_ERROR;
- }
- if (AACENC_OK != aacEncoder_SetParam(mAACEncoder, AACENC_CHANNELMODE,
- getChannelMode(mIntf->getChannelCount()))) {
- ALOGE("Failed to set AAC encoder parameters");
- return UNKNOWN_ERROR;
- }
- if (AACENC_OK != aacEncoder_SetParam(mAACEncoder, AACENC_TRANSMUX, TT_MP4_RAW)) {
- ALOGE("Failed to set AAC encoder parameters");
- return UNKNOWN_ERROR;
- }
-
- if (mSBRMode != -1 && mAACProfile == AOT_ER_AAC_ELD) {
- if (AACENC_OK != aacEncoder_SetParam(mAACEncoder, AACENC_SBR_MODE, mSBRMode)) {
- ALOGE("Failed to set AAC encoder parameters");
- return UNKNOWN_ERROR;
- }
- }
-
- /* SBR ratio parameter configurations:
- 0: Default configuration wherein SBR ratio is configured depending on audio object type by
- the FDK.
- 1: Downsampled SBR (default for ELD)
- 2: Dualrate SBR (default for HE-AAC)
- */
- if (AACENC_OK != aacEncoder_SetParam(mAACEncoder, AACENC_SBR_RATIO, mSBRRatio)) {
- ALOGE("Failed to set AAC encoder parameters");
- return UNKNOWN_ERROR;
- }
-
- return OK;
-}
-
-void C2SoftAacEnc::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 1u;
- work->worklets.front()->output.flags = work->input.flags;
-
- if (mSignalledError) {
- return;
- }
- bool eos = (work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0;
-
- uint32_t sampleRate = mIntf->getSampleRate();
- uint32_t channelCount = mIntf->getChannelCount();
-
- if (!mSentCodecSpecificData) {
- // The very first thing we want to output is the codec specific
- // data.
-
- if (AACENC_OK != aacEncEncode(mAACEncoder, nullptr, nullptr, nullptr, nullptr)) {
- ALOGE("Unable to initialize encoder for profile / sample-rate / bit-rate / channels");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
-
- uint32_t bitrate = mIntf->getBitrate();
- uint32_t actualBitRate = aacEncoder_GetParam(mAACEncoder, AACENC_BITRATE);
- if (bitrate != actualBitRate) {
- ALOGW("Requested bitrate %u unsupported, using %u", bitrate, actualBitRate);
- }
-
- AACENC_InfoStruct encInfo;
- if (AACENC_OK != aacEncInfo(mAACEncoder, &encInfo)) {
- ALOGE("Failed to get AAC encoder info");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
-
- std::unique_ptr<C2StreamCsdInfo::output> csd =
- C2StreamCsdInfo::output::AllocUnique(encInfo.confSize, 0u);
- if (!csd) {
- ALOGE("CSD allocation failed");
- mSignalledError = true;
- work->result = C2_NO_MEMORY;
- return;
- }
- memcpy(csd->m.value, encInfo.confBuf, encInfo.confSize);
- ALOGV("put csd");
-#if defined(LOG_NDEBUG) && !LOG_NDEBUG
- hexdump(csd->m.value, csd->flexCount());
-#endif
- work->worklets.front()->output.configUpdate.push_back(std::move(csd));
-
- mOutBufferSize = encInfo.maxOutBufBytes;
- mNumBytesPerInputFrame = encInfo.frameLength * channelCount * sizeof(int16_t);
- mInputTimeUs = work->input.ordinal.timestamp;
-
- mSentCodecSpecificData = true;
- }
-
- uint8_t temp[1];
- C2ReadView view = mDummyReadView;
- const uint8_t *data = temp;
- size_t capacity = 0u;
- if (!work->input.buffers.empty()) {
- view = work->input.buffers[0]->data().linearBlocks().front().map().get();
- data = view.data();
- capacity = view.capacity();
- }
-
- size_t numFrames = (capacity + mInputSize + (eos ? mNumBytesPerInputFrame - 1 : 0))
- / mNumBytesPerInputFrame;
- ALOGV("capacity = %zu; mInputSize = %zu; numFrames = %zu mNumBytesPerInputFrame = %u",
- capacity, mInputSize, numFrames, mNumBytesPerInputFrame);
-
- std::shared_ptr<C2LinearBlock> block;
- std::shared_ptr<C2Buffer> buffer;
- std::unique_ptr<C2WriteView> wView;
- uint8_t *outPtr = temp;
- size_t outAvailable = 0u;
- uint64_t inputIndex = work->input.ordinal.frameIndex.peeku();
-
- AACENC_InArgs inargs;
- AACENC_OutArgs outargs;
- memset(&inargs, 0, sizeof(inargs));
- memset(&outargs, 0, sizeof(outargs));
- inargs.numInSamples = capacity / sizeof(int16_t);
-
- void* inBuffer[] = { (unsigned char *)data };
- INT inBufferIds[] = { IN_AUDIO_DATA };
- INT inBufferSize[] = { (INT)capacity };
- INT inBufferElSize[] = { sizeof(int16_t) };
-
- AACENC_BufDesc inBufDesc;
- inBufDesc.numBufs = sizeof(inBuffer) / sizeof(void*);
- inBufDesc.bufs = (void**)&inBuffer;
- inBufDesc.bufferIdentifiers = inBufferIds;
- inBufDesc.bufSizes = inBufferSize;
- inBufDesc.bufElSizes = inBufferElSize;
-
- void* outBuffer[] = { outPtr };
- INT outBufferIds[] = { OUT_BITSTREAM_DATA };
- INT outBufferSize[] = { 0 };
- INT outBufferElSize[] = { sizeof(UCHAR) };
-
- AACENC_BufDesc outBufDesc;
- outBufDesc.numBufs = sizeof(outBuffer) / sizeof(void*);
- outBufDesc.bufs = (void**)&outBuffer;
- outBufDesc.bufferIdentifiers = outBufferIds;
- outBufDesc.bufSizes = outBufferSize;
- outBufDesc.bufElSizes = outBufferElSize;
-
- AACENC_ERROR encoderErr = AACENC_OK;
-
- class FillWork {
- public:
- FillWork(uint32_t flags, C2WorkOrdinalStruct ordinal,
- const std::shared_ptr<C2Buffer> &buffer)
- : mFlags(flags), mOrdinal(ordinal), mBuffer(buffer) {
- }
- ~FillWork() = default;
-
- void operator()(const std::unique_ptr<C2Work> &work) {
- work->worklets.front()->output.flags = (C2FrameData::flags_t)mFlags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = mOrdinal;
- work->workletsProcessed = 1u;
- work->result = C2_OK;
- if (mBuffer) {
- work->worklets.front()->output.buffers.push_back(mBuffer);
- }
- ALOGV("timestamp = %lld, index = %lld, w/%s buffer",
- mOrdinal.timestamp.peekll(),
- mOrdinal.frameIndex.peekll(),
- mBuffer ? "" : "o");
- }
-
- private:
- const uint32_t mFlags;
- const C2WorkOrdinalStruct mOrdinal;
- const std::shared_ptr<C2Buffer> mBuffer;
- };
-
- C2WorkOrdinalStruct outOrdinal = work->input.ordinal;
-
- while (encoderErr == AACENC_OK && inargs.numInSamples > 0) {
- if (numFrames && !block) {
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- // TODO: error handling, proper usage, etc.
- c2_status_t err = pool->fetchLinearBlock(mOutBufferSize, usage, &block);
- if (err != C2_OK) {
- ALOGE("fetchLinearBlock failed : err = %d", err);
- work->result = C2_NO_MEMORY;
- return;
- }
-
- wView.reset(new C2WriteView(block->map().get()));
- outPtr = wView->data();
- outAvailable = wView->size();
- --numFrames;
- }
-
- memset(&outargs, 0, sizeof(outargs));
-
- outBuffer[0] = outPtr;
- outBufferSize[0] = outAvailable;
-
- encoderErr = aacEncEncode(mAACEncoder,
- &inBufDesc,
- &outBufDesc,
- &inargs,
- &outargs);
-
- if (encoderErr == AACENC_OK) {
- if (buffer) {
- outOrdinal.frameIndex = mOutIndex++;
- outOrdinal.timestamp = mInputTimeUs;
- cloneAndSend(
- inputIndex,
- work,
- FillWork(C2FrameData::FLAG_INCOMPLETE, outOrdinal, buffer));
- buffer.reset();
- }
-
- if (outargs.numOutBytes > 0) {
- mInputSize = 0;
- int consumed = (capacity / sizeof(int16_t)) - inargs.numInSamples
- + outargs.numInSamples;
- mInputTimeUs = work->input.ordinal.timestamp
- + (consumed * 1000000ll / channelCount / sampleRate);
- buffer = createLinearBuffer(block, 0, outargs.numOutBytes);
-#if defined(LOG_NDEBUG) && !LOG_NDEBUG
- hexdump(outPtr, std::min(outargs.numOutBytes, 256));
-#endif
- outPtr = temp;
- outAvailable = 0;
- block.reset();
- } else {
- mInputSize += outargs.numInSamples * sizeof(int16_t);
- }
-
- if (outargs.numInSamples > 0) {
- inBuffer[0] = (int16_t *)inBuffer[0] + outargs.numInSamples;
- inBufferSize[0] -= outargs.numInSamples * sizeof(int16_t);
- inargs.numInSamples -= outargs.numInSamples;
- }
- }
- ALOGV("encoderErr = %d mInputSize = %zu inargs.numInSamples = %d, mInputTimeUs = %lld",
- encoderErr, mInputSize, inargs.numInSamples, mInputTimeUs.peekll());
- }
-
- if (eos && inBufferSize[0] > 0) {
- if (numFrames && !block) {
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- // TODO: error handling, proper usage, etc.
- c2_status_t err = pool->fetchLinearBlock(mOutBufferSize, usage, &block);
- if (err != C2_OK) {
- ALOGE("fetchLinearBlock failed : err = %d", err);
- work->result = C2_NO_MEMORY;
- return;
- }
-
- wView.reset(new C2WriteView(block->map().get()));
- outPtr = wView->data();
- outAvailable = wView->size();
- --numFrames;
- }
-
- memset(&outargs, 0, sizeof(outargs));
-
- outBuffer[0] = outPtr;
- outBufferSize[0] = outAvailable;
-
- // Flush
- inargs.numInSamples = -1;
-
- (void)aacEncEncode(mAACEncoder,
- &inBufDesc,
- &outBufDesc,
- &inargs,
- &outargs);
- }
-
- outOrdinal.frameIndex = mOutIndex++;
- outOrdinal.timestamp = mInputTimeUs;
- FillWork((C2FrameData::flags_t)(eos ? C2FrameData::FLAG_END_OF_STREAM : 0),
- outOrdinal, buffer)(work);
-}
-
-c2_status_t C2SoftAacEnc::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- switch (drainMode) {
- case DRAIN_COMPONENT_NO_EOS:
- [[fallthrough]];
- case NO_DRAIN:
- // no-op
- return C2_OK;
- case DRAIN_CHAIN:
- return C2_OMITTED;
- case DRAIN_COMPONENT_WITH_EOS:
- break;
- default:
- return C2_BAD_VALUE;
- }
-
- (void)pool;
- mSentCodecSpecificData = false;
- mInputSize = 0u;
-
- // TODO: we don't have any pending work at this time to drain.
- return C2_OK;
-}
-
-class C2SoftAacEncFactory : public C2ComponentFactory {
-public:
- C2SoftAacEncFactory() : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {
- }
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftAacEnc(COMPONENT_NAME,
- id,
- std::make_shared<C2SoftAacEnc::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id, std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftAacEnc::IntfImpl>(
- COMPONENT_NAME, id, std::make_shared<C2SoftAacEnc::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftAacEncFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftAacEncFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/aac/C2SoftAacEnc.h b/media/codecs/aac/C2SoftAacEnc.h
deleted file mode 100644
index 82fb438..0000000
--- a/media/codecs/aac/C2SoftAacEnc.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_AAC_ENC_H_
-#define ANDROID_C2_SOFT_AAC_ENC_H_
-
-#include <atomic>
-
-#include <SimpleC2Component.h>
-
-#include "aacenc_lib.h"
-
-namespace android {
-
-class C2SoftAacEnc : public SimpleC2Component {
-public:
- class IntfImpl;
-
- C2SoftAacEnc(const char *name, c2_node_id_t id, const std::shared_ptr<IntfImpl> &intfImpl);
- virtual ~C2SoftAacEnc();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
-
-private:
- std::shared_ptr<IntfImpl> mIntf;
-
- HANDLE_AACENCODER mAACEncoder;
-
- int32_t mSBRMode;
- int32_t mSBRRatio;
- AUDIO_OBJECT_TYPE mAACProfile;
- UINT mNumBytesPerInputFrame;
- UINT mOutBufferSize;
-
- bool mSentCodecSpecificData;
- size_t mInputSize;
- c2_cntr64_t mInputTimeUs;
-
- bool mSignalledError;
- std::atomic_uint64_t mOutIndex;
-
- status_t initEncoder();
-
- status_t setAudioParams();
-
- C2_DO_NOT_COPY(C2SoftAacEnc);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_AAC_ENC_H_
diff --git a/media/codecs/aac/DrcPresModeWrap.cpp b/media/codecs/aac/DrcPresModeWrap.cpp
deleted file mode 100644
index 5b9aebc..0000000
--- a/media/codecs/aac/DrcPresModeWrap.cpp
+++ /dev/null
@@ -1,372 +0,0 @@
-/*
- * Copyright (C) 2014 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-#include "DrcPresModeWrap.h"
-
-#include <assert.h>
-
-#define LOG_TAG "C2SoftAacDrcWrapper"
-//#define LOG_NDEBUG 0
-#include <utils/Log.h>
-
-//#define DRC_PRES_MODE_WRAP_DEBUG
-
-#define GPM_ENCODER_TARGET_LEVEL 64
-#define MAX_TARGET_LEVEL 40
-
-CDrcPresModeWrapper::CDrcPresModeWrapper()
-{
- mDataUpdate = true;
-
- /* Data from streamInfo. */
- /* Initialized to the same values as in the aac decoder */
- mStreamPRL = -1;
- mStreamDRCPresMode = -1;
- mStreamNrAACChan = 0;
- mStreamNrOutChan = 0;
-
- /* Desired values (set by user). */
- /* Initialized to the same values as in the aac decoder */
- mDesTarget = -1;
- mDesAttFactor = 0;
- mDesBoostFactor = 0;
- mDesHeavy = 0;
-
- mEncoderTarget = -1;
-
- /* Values from last time. */
- /* Initialized to the same values as the desired values */
- mLastTarget = -1;
- mLastAttFactor = 0;
- mLastBoostFactor = 0;
- mLastHeavy = 0;
-}
-
-CDrcPresModeWrapper::~CDrcPresModeWrapper()
-{
-}
-
-void
-CDrcPresModeWrapper::setDecoderHandle(const HANDLE_AACDECODER handle)
-{
- mHandleDecoder = handle;
-}
-
-void
-CDrcPresModeWrapper::submitStreamData(CStreamInfo* pStreamInfo)
-{
- assert(pStreamInfo);
-
- if (mStreamPRL != pStreamInfo->drcProgRefLev) {
- mStreamPRL = pStreamInfo->drcProgRefLev;
- mDataUpdate = true;
-#ifdef DRC_PRES_MODE_WRAP_DEBUG
- ALOGV("DRC presentation mode wrapper: drcProgRefLev is %d\n", mStreamPRL);
-#endif
- }
-
- if (mStreamDRCPresMode != pStreamInfo->drcPresMode) {
- mStreamDRCPresMode = pStreamInfo->drcPresMode;
- mDataUpdate = true;
-#ifdef DRC_PRES_MODE_WRAP_DEBUG
- ALOGV("DRC presentation mode wrapper: drcPresMode is %d\n", mStreamDRCPresMode);
-#endif
- }
-
- if (mStreamNrAACChan != pStreamInfo->aacNumChannels) {
- mStreamNrAACChan = pStreamInfo->aacNumChannels;
- mDataUpdate = true;
-#ifdef DRC_PRES_MODE_WRAP_DEBUG
- ALOGV("DRC presentation mode wrapper: aacNumChannels is %d\n", mStreamNrAACChan);
-#endif
- }
-
- if (mStreamNrOutChan != pStreamInfo->numChannels) {
- mStreamNrOutChan = pStreamInfo->numChannels;
- mDataUpdate = true;
-#ifdef DRC_PRES_MODE_WRAP_DEBUG
- ALOGV("DRC presentation mode wrapper: numChannels is %d\n", mStreamNrOutChan);
-#endif
- }
-
-
-
- if (mStreamNrOutChan<mStreamNrAACChan) {
- mIsDownmix = true;
- } else {
- mIsDownmix = false;
- }
-
- if (mIsDownmix && (mStreamNrOutChan == 1)) {
- mIsMonoDownmix = true;
- } else {
- mIsMonoDownmix = false;
- }
-
- if (mIsDownmix && mStreamNrOutChan == 2){
- mIsStereoDownmix = true;
- } else {
- mIsStereoDownmix = false;
- }
-
-}
-
-void
-CDrcPresModeWrapper::setParam(const DRC_PRES_MODE_WRAP_PARAM param, const int value)
-{
- switch (param) {
- case DRC_PRES_MODE_WRAP_DESIRED_TARGET:
- mDesTarget = value;
- break;
- case DRC_PRES_MODE_WRAP_DESIRED_ATT_FACTOR:
- mDesAttFactor = value;
- break;
- case DRC_PRES_MODE_WRAP_DESIRED_BOOST_FACTOR:
- mDesBoostFactor = value;
- break;
- case DRC_PRES_MODE_WRAP_DESIRED_HEAVY:
- mDesHeavy = value;
- break;
- case DRC_PRES_MODE_WRAP_ENCODER_TARGET:
- mEncoderTarget = value;
- break;
- default:
- break;
- }
- mDataUpdate = true;
-}
-
-void
-CDrcPresModeWrapper::update()
-{
- // Get Data from Decoder
- int progRefLevel = mStreamPRL;
- int drcPresMode = mStreamDRCPresMode;
-
- // by default, do as desired
- int newTarget = mDesTarget;
- int newAttFactor = mDesAttFactor;
- int newBoostFactor = mDesBoostFactor;
- int newHeavy = mDesHeavy;
-
- if (mDataUpdate) {
- // sanity check
- if (mDesTarget < MAX_TARGET_LEVEL){
- mDesTarget = MAX_TARGET_LEVEL; // limit target level to -10 dB or below
- newTarget = MAX_TARGET_LEVEL;
- }
-
- if (mEncoderTarget != -1) {
- if (mDesTarget<124) { // if target level > -31 dB
- if ((mIsStereoDownmix == false) && (mIsMonoDownmix == false)) {
- // no stereo or mono downmixing, calculated scaling of light DRC
- /* use as little compression as possible */
- newAttFactor = 0;
- newBoostFactor = 0;
- if (mDesTarget<progRefLevel) { // if target level > PRL
- if (mEncoderTarget < mDesTarget) { // if mEncoderTarget > target level
- // mEncoderTarget > target level > PRL
- int calcFactor;
- float calcFactor_norm;
- // 0.0f < calcFactor_norm < 1.0f
- calcFactor_norm = (float)(mDesTarget - progRefLevel) /
- (float)(mEncoderTarget - progRefLevel);
- calcFactor = (int)(calcFactor_norm*127.0f); // 0 <= calcFactor < 127
- // calcFactor is the lower limit
- newAttFactor = (calcFactor>newAttFactor) ? calcFactor : newAttFactor;
- // new AttFactor will be always = calcFactor, as it is set to 0 before.
- newBoostFactor = newAttFactor;
- } else {
- /* target level > mEncoderTarget > PRL */
- // newTDLimiterEnable = 1;
- // the time domain limiter must always be active in this case.
- // It is assumed that the framework activates it by default
- newAttFactor = 127;
- newBoostFactor = 127;
- }
- } else { // target level <= PRL
- // no restrictions required
- // newAttFactor = newAttFactor;
- }
- } else { // downmixing
- // if target level > -23 dB or mono downmix
- if ( (mDesTarget<92) || mIsMonoDownmix ) {
- newHeavy = 1;
- } else {
- // we perform a downmix, so, we need at least full light DRC
- newAttFactor = 127;
- }
- }
- } else { // target level <= -31 dB
- // playback -31 dB: light DRC only needed if we perform downmixing
- if (mIsDownmix) { // we do downmixing
- newAttFactor = 127;
- }
- }
- }
- else { // handle other used encoder target levels
-
- // Sanity check: DRC presentation mode is only specified for max. 5.1 channels
- if (mStreamNrAACChan > 6) {
- drcPresMode = 0;
- }
-
- switch (drcPresMode) {
- case 0:
- default: // presentation mode not indicated
- {
-
- if (mDesTarget<124) { // if target level > -31 dB
- // no stereo or mono downmixing
- if ((mIsStereoDownmix == false) && (mIsMonoDownmix == false)) {
- if (mDesTarget<progRefLevel) { // if target level > PRL
- // newTDLimiterEnable = 1;
- // the time domain limiter must always be active in this case.
- // It is assumed that the framework activates it by default
- newAttFactor = 127; // at least, use light compression
- } else { // target level <= PRL
- // no restrictions required
- // newAttFactor = newAttFactor;
- }
- } else { // downmixing
- // newTDLimiterEnable = 1;
- // the time domain limiter must always be active in this case.
- // It is assumed that the framework activates it by default
-
- // if target level > -23 dB or mono downmix
- if ( (mDesTarget < 92) || mIsMonoDownmix ) {
- newHeavy = 1;
- } else{
- // we perform a downmix, so, we need at least full light DRC
- newAttFactor = 127;
- }
- }
- } else { // target level <= -31 dB
- if (mIsDownmix) { // we do downmixing.
- // newTDLimiterEnable = 1;
- // the time domain limiter must always be active in this case.
- // It is assumed that the framework activates it by default
- newAttFactor = 127;
- }
- }
- }
- break;
-
- // Presentation mode 1 and 2 according to ETSI TS 101 154:
- // Digital Video Broadcasting (DVB); Specification for the use of Video and Audio Coding
- // in Broadcasting Applications based on the MPEG-2 Transport Stream,
- // section C.5.4., "Decoding", and Table C.33
- // ISO DRC -> newHeavy = 0 (Use light compression, MPEG-style)
- // Compression_value -> newHeavy = 1 (Use heavy compression, DVB-style)
- // scaling restricted -> newAttFactor = 127
-
- case 1: // presentation mode 1, Light:-31/Heavy:-23
- {
- if (mDesTarget < 124) { // if target level > -31 dB
- // playback up to -23 dB
- newHeavy = 1;
- } else { // target level <= -31 dB
- // playback -31 dB
- if (mIsDownmix) { // we do downmixing.
- newAttFactor = 127;
- }
- }
- }
- break;
-
- case 2: // presentation mode 2, Light:-23/Heavy:-23
- {
- if (mDesTarget < 124) { // if target level > -31 dB
- // playback up to -23 dB
- if (mIsMonoDownmix) { // if mono downmix
- newHeavy = 1;
- } else {
- newHeavy = 0;
- newAttFactor = 127;
- }
- } else { // target level <= -31 dB
- // playback -31 dB
- newHeavy = 0;
- if (mIsDownmix) { // we do downmixing.
- newAttFactor = 127;
- }
- }
- }
- break;
-
- } // switch()
- } // if (mEncoderTarget == GPM_ENCODER_TARGET_LEVEL)
-
- // sanity again
- if (newHeavy == 1) {
- newBoostFactor=127; // not really needed as the same would be done by the decoder anyway
- newAttFactor = 127;
- }
-
- // update the decoder
- if (newTarget != mLastTarget) {
- aacDecoder_SetParam(mHandleDecoder, AAC_DRC_REFERENCE_LEVEL, newTarget);
- mLastTarget = newTarget;
-#ifdef DRC_PRES_MODE_WRAP_DEBUG
- if (newTarget != mDesTarget)
- ALOGV("DRC presentation mode wrapper: forced target level to %d (from %d)\n", newTarget, mDesTarget);
- else
- ALOGV("DRC presentation mode wrapper: set target level to %d\n", newTarget);
-#endif
- }
-
- if (newAttFactor != mLastAttFactor) {
- aacDecoder_SetParam(mHandleDecoder, AAC_DRC_ATTENUATION_FACTOR, newAttFactor);
- mLastAttFactor = newAttFactor;
-#ifdef DRC_PRES_MODE_WRAP_DEBUG
- if (newAttFactor != mDesAttFactor)
- ALOGV("DRC presentation mode wrapper: forced attenuation factor to %d (from %d)\n", newAttFactor, mDesAttFactor);
- else
- ALOGV("DRC presentation mode wrapper: set attenuation factor to %d\n", newAttFactor);
-#endif
- }
-
- if (newBoostFactor != mLastBoostFactor) {
- aacDecoder_SetParam(mHandleDecoder, AAC_DRC_BOOST_FACTOR, newBoostFactor);
- mLastBoostFactor = newBoostFactor;
-#ifdef DRC_PRES_MODE_WRAP_DEBUG
- if (newBoostFactor != mDesBoostFactor)
- ALOGV("DRC presentation mode wrapper: forced boost factor to %d (from %d)\n",
- newBoostFactor, mDesBoostFactor);
- else
- ALOGV("DRC presentation mode wrapper: set boost factor to %d\n", newBoostFactor);
-#endif
- }
-
- if (newHeavy != mLastHeavy) {
- aacDecoder_SetParam(mHandleDecoder, AAC_DRC_HEAVY_COMPRESSION, newHeavy);
- mLastHeavy = newHeavy;
-#ifdef DRC_PRES_MODE_WRAP_DEBUG
- if (newHeavy != mDesHeavy)
- ALOGV("DRC presentation mode wrapper: forced heavy compression to %d (from %d)\n",
- newHeavy, mDesHeavy);
- else
- ALOGV("DRC presentation mode wrapper: set heavy compression to %d\n", newHeavy);
-#endif
- }
-
-#ifdef DRC_PRES_MODE_WRAP_DEBUG
- ALOGV("DRC config: tgt_lev: %3d, cut: %3d, boost: %3d, heavy: %d\n", newTarget,
- newAttFactor, newBoostFactor, newHeavy);
-#endif
- mDataUpdate = false;
-
- } // if (mDataUpdate)
-}
diff --git a/media/codecs/aac/DrcPresModeWrap.h b/media/codecs/aac/DrcPresModeWrap.h
deleted file mode 100644
index f0b6cf2..0000000
--- a/media/codecs/aac/DrcPresModeWrap.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (C) 2014 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-#pragma once
-#include "aacdecoder_lib.h"
-
-typedef enum
-{
- DRC_PRES_MODE_WRAP_DESIRED_TARGET = 0x0000,
- DRC_PRES_MODE_WRAP_DESIRED_ATT_FACTOR = 0x0001,
- DRC_PRES_MODE_WRAP_DESIRED_BOOST_FACTOR = 0x0002,
- DRC_PRES_MODE_WRAP_DESIRED_HEAVY = 0x0003,
- DRC_PRES_MODE_WRAP_ENCODER_TARGET = 0x0004
-} DRC_PRES_MODE_WRAP_PARAM;
-
-
-class CDrcPresModeWrapper {
-public:
- CDrcPresModeWrapper();
- ~CDrcPresModeWrapper();
- void setDecoderHandle(const HANDLE_AACDECODER handle);
- void setParam(const DRC_PRES_MODE_WRAP_PARAM param, const int value);
- void submitStreamData(CStreamInfo*);
- void update();
-
-protected:
- HANDLE_AACDECODER mHandleDecoder;
- int mDesTarget;
- int mDesAttFactor;
- int mDesBoostFactor;
- int mDesHeavy;
-
- int mEncoderTarget;
-
- int mLastTarget;
- int mLastAttFactor;
- int mLastBoostFactor;
- int mLastHeavy;
-
- SCHAR mStreamPRL;
- SCHAR mStreamDRCPresMode;
- INT mStreamNrAACChan;
- INT mStreamNrOutChan;
-
- bool mIsDownmix;
- bool mIsMonoDownmix;
- bool mIsStereoDownmix;
-
- bool mDataUpdate;
-};
diff --git a/media/codecs/aac/MODULE_LICENSE_APACHE2 b/media/codecs/aac/MODULE_LICENSE_APACHE2
deleted file mode 100644
index e69de29..0000000
--- a/media/codecs/aac/MODULE_LICENSE_APACHE2
+++ /dev/null
diff --git a/media/codecs/aac/NOTICE b/media/codecs/aac/NOTICE
deleted file mode 100644
index c5b1efa..0000000
--- a/media/codecs/aac/NOTICE
+++ /dev/null
@@ -1,190 +0,0 @@
-
- Copyright (c) 2005-2008, The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
diff --git a/media/codecs/aac/patent_disclaimer.txt b/media/codecs/aac/patent_disclaimer.txt
deleted file mode 100644
index b4bf11d..0000000
--- a/media/codecs/aac/patent_disclaimer.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-
-THIS IS NOT A GRANT OF PATENT RIGHTS.
-
-Google makes no representation or warranty that the codecs for which
-source code is made available hereunder are unencumbered by
-third-party patents. Those intending to use this source code in
-hardware or software products are advised that implementations of
-these codecs, including in open source software or shareware, may
-require patent licenses from the relevant patent holders.
diff --git a/media/codecs/amr_nb_wb/Android.bp b/media/codecs/amr_nb_wb/Android.bp
deleted file mode 100644
index 764b3db..0000000
--- a/media/codecs/amr_nb_wb/Android.bp
+++ /dev/null
@@ -1,77 +0,0 @@
-cc_library_shared {
- name: "libstagefright_soft_c2amrnbdec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: ["C2SoftAmrDec.cpp"],
-
- cflags: [
- "-DAMRNB",
- ],
-
- static_libs: [
- "libstagefright_amrnbdec",
- "libstagefright_amrwbdec",
- ],
-
- shared_libs: [
- "libstagefright_amrnb_common",
- ],
-}
-
-cc_library_shared {
- name: "libstagefright_soft_c2amrwbdec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: ["C2SoftAmrDec.cpp"],
-
- static_libs: [
- "libstagefright_amrnbdec",
- "libstagefright_amrwbdec",
- ],
-
- shared_libs: [
- "libstagefright_amrnb_common",
- ],
-}
-
-cc_library_shared {
- name: "libstagefright_soft_c2amrnbenc",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: ["C2SoftAmrNbEnc.cpp"],
-
- static_libs: [
- "libstagefright_amrnbenc",
- ],
-
- shared_libs: [
- "libstagefright_amrnb_common",
- ],
-}
-
-cc_library_shared {
- name: "libstagefright_soft_c2amrwbenc",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: ["C2SoftAmrWbEnc.cpp"],
-
- static_libs: [
- "libstagefright_amrwbenc",
- ],
-
- shared_libs: [
- "libstagefright_enc_common",
- ],
-}
diff --git a/media/codecs/amr_nb_wb/C2SoftAmrDec.cpp b/media/codecs/amr_nb_wb/C2SoftAmrDec.cpp
deleted file mode 100644
index c591e21..0000000
--- a/media/codecs/amr_nb_wb/C2SoftAmrDec.cpp
+++ /dev/null
@@ -1,438 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#ifdef AMRNB
-#define LOG_TAG "C2SoftAmrNbDec"
-#else
-#define LOG_TAG "C2SoftAmrWbDec"
-#endif
-#include <log/log.h>
-
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <C2PlatformSupport.h>
-#include <SimpleC2Interface.h>
-
-#include "C2SoftAmrDec.h"
-#include "gsmamr_dec.h"
-#include "pvamrwbdecoder.h"
-
-namespace android {
-
-#ifdef AMRNB
- constexpr char COMPONENT_NAME[] = "c2.android.amrnb.decoder";
-#else
- constexpr char COMPONENT_NAME[] = "c2.android.amrwb.decoder";
-#endif
-
-class C2SoftAmrDec::IntfImpl : public C2InterfaceHelper {
-public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper> &helper)
- : C2InterfaceHelper(helper) {
-
- setDerivedInstance(this);
-
- addParameter(
- DefineParam(mInputFormat, C2_NAME_INPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::input(0u, C2FormatCompressed))
- .build());
-
- addParameter(
- DefineParam(mOutputFormat, C2_NAME_OUTPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::output(0u, C2FormatAudio))
- .build());
-
- addParameter(
- DefineParam(mInputMediaType, C2_NAME_INPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::input>(
-#ifdef AMRNB
- MEDIA_MIMETYPE_AUDIO_AMR_NB
-#else
- MEDIA_MIMETYPE_AUDIO_AMR_WB
-#endif
- )).build());
-
- addParameter(
- DefineParam(mOutputMediaType, C2_NAME_OUTPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::output>(
- MEDIA_MIMETYPE_AUDIO_RAW))
- .build());
-
- addParameter(
- DefineParam(mSampleRate, C2_NAME_STREAM_SAMPLE_RATE_SETTING)
-#ifdef AMRNB
- .withDefault(new C2StreamSampleRateInfo::output(0u, 8000))
- .withFields({C2F(mSampleRate, value).equalTo(8000)})
-#else
- .withDefault(new C2StreamSampleRateInfo::output(0u, 16000))
- .withFields({C2F(mSampleRate, value).equalTo(16000)})
-#endif
- .withSetter((Setter<decltype(*mSampleRate)>::StrictValueWithNoDeps))
- .build());
-
- addParameter(
- DefineParam(mChannelCount, C2_NAME_STREAM_CHANNEL_COUNT_SETTING)
- .withDefault(new C2StreamChannelCountInfo::output(0u, 1))
- .withFields({C2F(mChannelCount, value).equalTo(1)})
- .withSetter((Setter<decltype(*mChannelCount)>::StrictValueWithNoDeps))
- .build());
-
- addParameter(
- DefineParam(mBitrate, C2_NAME_STREAM_BITRATE_SETTING)
-#ifdef AMRNB
- .withDefault(new C2BitrateTuning::input(0u, 4750))
- .withFields({C2F(mBitrate, value).inRange(4750, 12200)})
-#else
- .withDefault(new C2BitrateTuning::input(0u, 6600))
- .withFields({C2F(mBitrate, value).inRange(6600, 23850)})
-#endif
- .withSetter(Setter<decltype(*mBitrate)>::NonStrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mInputMaxBufSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
- .withConstValue(new C2StreamMaxBufferSizeInfo::input(0u, 8192))
- .build());
- }
-
-private:
- std::shared_ptr<C2StreamFormatConfig::input> mInputFormat;
- std::shared_ptr<C2StreamFormatConfig::output> mOutputFormat;
- std::shared_ptr<C2PortMimeConfig::input> mInputMediaType;
- std::shared_ptr<C2PortMimeConfig::output> mOutputMediaType;
- std::shared_ptr<C2StreamSampleRateInfo::output> mSampleRate;
- std::shared_ptr<C2StreamChannelCountInfo::output> mChannelCount;
- std::shared_ptr<C2BitrateTuning::input> mBitrate;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mInputMaxBufSize;
-};
-
-C2SoftAmrDec::C2SoftAmrDec(
- const char *name,
- c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl)
- : SimpleC2Component(std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mAmrHandle(nullptr),
- mDecoderBuf(nullptr),
- mDecoderCookie(nullptr) {
-#ifdef AMRNB
- mIsWide = false;
-#else
- mIsWide = true;
-#endif
-}
-
-C2SoftAmrDec::~C2SoftAmrDec() {
- (void)onRelease();
-}
-
-c2_status_t C2SoftAmrDec::onInit() {
- status_t err = initDecoder();
- return err == OK ? C2_OK : C2_NO_MEMORY;
-}
-
-c2_status_t C2SoftAmrDec::onStop() {
- if (!mIsWide) {
- Speech_Decode_Frame_reset(mAmrHandle);
- } else {
- pvDecoder_AmrWb_Reset(mAmrHandle, 0 /* reset_all */);
- }
- mSignalledError = false;
- mSignalledOutputEos = false;
-
- return C2_OK;
-}
-
-void C2SoftAmrDec::onReset() {
- (void)onStop();
-}
-
-void C2SoftAmrDec::onRelease() {
- if (!mIsWide) {
- if (mAmrHandle) {
- GSMDecodeFrameExit(&mAmrHandle);
- }
- mAmrHandle = nullptr;
- } else {
- if (mDecoderBuf) {
- free(mDecoderBuf);
- }
- mDecoderBuf = nullptr;
- mAmrHandle = nullptr;
- mDecoderCookie = nullptr;
- }
-}
-
-c2_status_t C2SoftAmrDec::onFlush_sm() {
- return onStop();
-}
-
-status_t C2SoftAmrDec::initDecoder() {
- if (!mIsWide) {
- if (GSMInitDecode(&mAmrHandle, (int8_t *)"AMRNBDecoder"))
- return UNKNOWN_ERROR;
- } else {
- uint32_t memReq = pvDecoder_AmrWbMemRequirements();
- mDecoderBuf = malloc(memReq);
- if (mDecoderBuf) {
- pvDecoder_AmrWb_Init(&mAmrHandle, mDecoderBuf, &mDecoderCookie);
- }
- else {
- return NO_MEMORY;
- }
- }
- mSignalledError = false;
- mSignalledOutputEos = false;
-
- return OK;
-}
-
-static size_t getFrameSize(bool isWide, unsigned FM) {
- static const size_t kFrameSizeNB[16] = {
- 12, 13, 15, 17, 19, 20, 26, 31,
- 5, 6, 5, 5, // SID
- 0, 0, 0, // future use
- 0 // no data
- };
- static const size_t kFrameSizeWB[16] = {
- 17, 23, 32, 36, 40, 46, 50, 58, 60,
- 5, // SID
- 0, 0, 0, 0, // future use
- 0, // speech lost
- 0 // no data
- };
-
- if (FM > 15 || (isWide && FM > 9 && FM < 14) || (!isWide && FM > 11 && FM < 15)) {
- ALOGE("illegal AMR frame mode %d", FM);
- return 0;
- }
- // add 1 for header byte
- return (isWide ? kFrameSizeWB[FM] : kFrameSizeNB[FM]) + 1;
-}
-
-static status_t calculateNumFrames(const uint8 *input, size_t inSize,
- std::vector<size_t> *frameSizeList, bool isWide) {
- for (size_t k = 0; k < inSize;) {
- int16_t FM = ((input[0] >> 3) & 0x0f);
- size_t frameSize = getFrameSize(isWide, FM);
- if (frameSize == 0) {
- return UNKNOWN_ERROR;
- }
- if ((inSize - k) >= frameSize) {
- input += frameSize;
- k += frameSize;
- }
- else break;
- frameSizeList->push_back(frameSize);
- }
- return OK;
-}
-
-void C2SoftAmrDec::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 1u;
- work->worklets.front()->output.flags = work->input.flags;
-
- if (mSignalledError || mSignalledOutputEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
-
- C2ReadView rView = mDummyReadView;
- size_t inOffset = 0u;
- size_t inSize = 0u;
- if (!work->input.buffers.empty()) {
- rView = work->input.buffers[0]->data().linearBlocks().front().map().get();
- inSize = rView.capacity();
- if (inSize && rView.error()) {
- ALOGE("read view map failed %d", rView.error());
- work->result = rView.error();
- return;
- }
- }
-
- bool eos = (work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0;
- if (inSize == 0) {
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- }
- return;
- }
-
- ALOGV("in buffer attr. size %zu timestamp %d frameindex %d", inSize,
- (int)work->input.ordinal.timestamp.peeku(), (int)work->input.ordinal.frameIndex.peeku());
-
- std::vector<size_t> frameSizeList;
- if (OK != calculateNumFrames(rView.data() + inOffset, inSize, &frameSizeList,
- mIsWide)) {
- work->result = C2_CORRUPTED;
- mSignalledError = true;
- return;
- }
- if (frameSizeList.empty()) {
- ALOGE("input size smaller than expected");
- work->result = C2_CORRUPTED;
- mSignalledError = true;
- return;
- }
-
- int16_t outSamples = mIsWide ? kNumSamplesPerFrameWB : kNumSamplesPerFrameNB;
- size_t calOutSize = outSamples * frameSizeList.size() * sizeof(int16_t);
- std::shared_ptr<C2LinearBlock> block;
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- c2_status_t err = pool->fetchLinearBlock(calOutSize, usage, &block);
- if (err != C2_OK) {
- ALOGE("fetchLinearBlock for Output failed with status %d", err);
- work->result = C2_NO_MEMORY;
- return;
- }
- C2WriteView wView = block->map().get();
- if (wView.error()) {
- ALOGE("write view map failed %d", wView.error());
- work->result = wView.error();
- return;
- }
-
- int16_t *output = reinterpret_cast<int16_t *>(wView.data());
- auto it = frameSizeList.begin();
- const uint8_t *inPtr = rView.data() + inOffset;
- size_t inPos = 0;
- while (inPos < inSize) {
- if (it == frameSizeList.end()) {
- ALOGD("unexpected trailing bytes, ignoring them");
- break;
- }
- uint8_t *input = const_cast<uint8_t *>(inPtr + inPos);
- int16_t FM = ((*input >> 3) & 0x0f);
- if (!mIsWide) {
- int32_t numBytesRead = AMRDecode(mAmrHandle,
- (Frame_Type_3GPP) FM,
- input + 1, output, MIME_IETF);
- if (static_cast<size_t>(numBytesRead + 1) != *it) {
- ALOGE("panic, parsed size does not match decoded size");
- work->result = C2_CORRUPTED;
- mSignalledError = true;
- return;
- }
- } else {
- if (FM >= 9) {
- // Produce silence instead of comfort noise and for
- // speech lost/no data.
- memset(output, 0, outSamples * sizeof(int16_t));
- } else {
- int16_t FT;
- RX_State_wb rx_state;
- int16_t numRecSamples;
-
- mime_unsorting(const_cast<uint8_t *>(&input[1]),
- mInputSampleBuffer, &FT, &FM, 1, &rx_state);
- pvDecoder_AmrWb(FM, mInputSampleBuffer, output, &numRecSamples,
- mDecoderBuf, FT, mDecoderCookie);
- if (numRecSamples != outSamples) {
- ALOGE("Sample output per frame incorrect");
- work->result = C2_CORRUPTED;
- mSignalledError = true;
- return;
- }
- /* Delete the 2 LSBs (14-bit output) */
- for (int i = 0; i < numRecSamples; ++i) {
- output[i] &= 0xfffC;
- }
- }
- }
- inPos += *it;
- output += outSamples;
- ++it;
- }
-
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.buffers.push_back(createLinearBuffer(block));
- work->worklets.front()->output.ordinal = work->input.ordinal;
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- }
-}
-
-c2_status_t C2SoftAmrDec::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- (void)pool;
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
- return C2_OK;
-}
-
-class C2SoftAMRDecFactory : public C2ComponentFactory {
-public:
- C2SoftAMRDecFactory() : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {
- }
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftAmrDec(COMPONENT_NAME, id,
- std::make_shared<C2SoftAmrDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftAmrDec::IntfImpl>(
- COMPONENT_NAME, id, std::make_shared<C2SoftAmrDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftAMRDecFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftAMRDecFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/amr_nb_wb/C2SoftAmrDec.h b/media/codecs/amr_nb_wb/C2SoftAmrDec.h
deleted file mode 100644
index 6384450..0000000
--- a/media/codecs/amr_nb_wb/C2SoftAmrDec.h
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_AMR_DEC_H_
-#define ANDROID_C2_SOFT_AMR_DEC_H_
-
-#include <SimpleC2Component.h>
-
-
-namespace android {
-
-struct C2SoftAmrDec : public SimpleC2Component {
- class IntfImpl;
-
- C2SoftAmrDec(const char *name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl);
- virtual ~C2SoftAmrDec();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
-private:
- enum {
- kNumSamplesPerFrameNB = 160,
- kNumSamplesPerFrameWB = 320,
- };
-
- std::shared_ptr<IntfImpl> mIntf;
- void *mAmrHandle;
- void *mDecoderBuf;
- int16_t *mDecoderCookie;
-
- int16_t mInputSampleBuffer[477];
-
- bool mIsWide;
- bool mSignalledError;
- bool mSignalledOutputEos;
-
- status_t initDecoder();
-
- C2_DO_NOT_COPY(C2SoftAmrDec);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_AMR_DEC_H_
diff --git a/media/codecs/amr_nb_wb/C2SoftAmrNbEnc.cpp b/media/codecs/amr_nb_wb/C2SoftAmrNbEnc.cpp
deleted file mode 100644
index ca21480..0000000
--- a/media/codecs/amr_nb_wb/C2SoftAmrNbEnc.cpp
+++ /dev/null
@@ -1,355 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftAmrNbEnc"
-#include <log/log.h>
-
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <C2PlatformSupport.h>
-#include <SimpleC2Interface.h>
-
-#include "C2SoftAmrNbEnc.h"
-
-namespace android {
-
-constexpr char COMPONENT_NAME[] = "c2.android.amrnb.encoder";
-
-class C2SoftAmrNbEnc::IntfImpl : public C2InterfaceHelper {
- public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper>& helper)
- : C2InterfaceHelper(helper) {
- setDerivedInstance(this);
-
- addParameter(
- DefineParam(mInputFormat, C2_NAME_INPUT_STREAM_FORMAT_SETTING)
- .withConstValue(
- new C2StreamFormatConfig::input(0u, C2FormatAudio))
- .build());
-
- addParameter(
- DefineParam(mOutputFormat, C2_NAME_OUTPUT_STREAM_FORMAT_SETTING)
- .withConstValue(
- new C2StreamFormatConfig::output(0u, C2FormatCompressed))
- .build());
-
- addParameter(
- DefineParam(mInputMediaType, C2_NAME_INPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::input>(
- MEDIA_MIMETYPE_AUDIO_RAW))
- .build());
-
- addParameter(
- DefineParam(mOutputMediaType, C2_NAME_OUTPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::output>(
- MEDIA_MIMETYPE_AUDIO_AMR_NB))
- .build());
-
- addParameter(
- DefineParam(mChannelCount, C2_NAME_STREAM_CHANNEL_COUNT_SETTING)
- .withDefault(new C2StreamChannelCountInfo::input(0u, 1))
- .withFields({C2F(mChannelCount, value).equalTo(1)})
- .withSetter((Setter<decltype(*mChannelCount)>::StrictValueWithNoDeps))
- .build());
-
- addParameter(
- DefineParam(mSampleRate, C2_NAME_STREAM_SAMPLE_RATE_SETTING)
- .withDefault(new C2StreamSampleRateInfo::input(0u, 8000))
- .withFields({C2F(mSampleRate, value).equalTo(8000)})
- .withSetter(
- (Setter<decltype(*mSampleRate)>::StrictValueWithNoDeps))
- .build());
-
- addParameter(
- DefineParam(mBitrate, C2_NAME_STREAM_BITRATE_SETTING)
- .withDefault(new C2BitrateTuning::output(0u, 4750))
- .withFields({C2F(mBitrate, value).inRange(4750, 12200)})
- .withSetter(Setter<decltype(*mBitrate)>::NonStrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mInputMaxBufSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
- .withConstValue(new C2StreamMaxBufferSizeInfo::input(0u, 8192))
- .build());
- }
-
- uint32_t getSampleRate() const { return mSampleRate->value; }
- uint32_t getChannelCount() const { return mChannelCount->value; }
- uint32_t getBitrate() const { return mBitrate->value; }
-
- private:
- std::shared_ptr<C2StreamFormatConfig::input> mInputFormat;
- std::shared_ptr<C2StreamFormatConfig::output> mOutputFormat;
- std::shared_ptr<C2PortMimeConfig::input> mInputMediaType;
- std::shared_ptr<C2PortMimeConfig::output> mOutputMediaType;
- std::shared_ptr<C2StreamSampleRateInfo::input> mSampleRate;
- std::shared_ptr<C2StreamChannelCountInfo::input> mChannelCount;
- std::shared_ptr<C2BitrateTuning::output> mBitrate;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mInputMaxBufSize;
-};
-
-C2SoftAmrNbEnc::C2SoftAmrNbEnc(const char* name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl)
- : SimpleC2Component(
- std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mEncState(nullptr),
- mSidState(nullptr) {
-}
-
-C2SoftAmrNbEnc::~C2SoftAmrNbEnc() {
- onRelease();
-}
-
-c2_status_t C2SoftAmrNbEnc::onInit() {
- bool dtx_enable = false;
-
- if (AMREncodeInit(&mEncState, &mSidState, dtx_enable) != 0)
- return C2_CORRUPTED;
- // TODO: get mode directly from config
- switch(mIntf->getBitrate()) {
- case 4750: mMode = MR475;
- break;
- case 5150: mMode = MR515;
- break;
- case 5900: mMode = MR59;
- break;
- case 6700: mMode = MR67;
- break;
- case 7400: mMode = MR74;
- break;
- case 7950: mMode = MR795;
- break;
- case 10200: mMode = MR102;
- break;
- case 12200: mMode = MR122;
- break;
- default: mMode = MR795;
- }
- mIsFirst = true;
- mSignalledError = false;
- mSignalledOutputEos = false;
- mAnchorTimeStamp = 0;
- mProcessedSamples = 0;
- mFilledLen = 0;
-
- return C2_OK;
-}
-
-void C2SoftAmrNbEnc::onRelease() {
- if (mEncState) {
- AMREncodeExit(&mEncState, &mSidState);
- mEncState = mSidState = nullptr;
- }
-}
-
-c2_status_t C2SoftAmrNbEnc::onStop() {
- if (AMREncodeReset(mEncState, mSidState) != 0)
- return C2_CORRUPTED;
- mIsFirst = true;
- mSignalledError = false;
- mSignalledOutputEos = false;
- mAnchorTimeStamp = 0;
- mProcessedSamples = 0;
- mFilledLen = 0;
-
- return C2_OK;
-}
-
-void C2SoftAmrNbEnc::onReset() {
- (void) onStop();
-}
-
-c2_status_t C2SoftAmrNbEnc::onFlush_sm() {
- return onStop();
-}
-
-static void fillEmptyWork(const std::unique_ptr<C2Work> &work) {
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
-}
-
-void C2SoftAmrNbEnc::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 1u;
- work->worklets.front()->output.flags = work->input.flags;
-
- if (mSignalledError || mSignalledOutputEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
-
- bool eos = ((work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0);
- size_t inOffset = 0u;
- size_t inSize = 0u;
- C2ReadView rView = mDummyReadView;
- if (!work->input.buffers.empty()) {
- rView = work->input.buffers[0]->data().linearBlocks().front().map().get();
- inSize = rView.capacity();
- if (inSize && rView.error()) {
- ALOGE("read view map failed %d", rView.error());
- work->result = C2_CORRUPTED;
- return;
- }
- }
-
- ALOGV("in buffer attr. size %zu timestamp %d frameindex %d, flags %x",
- inSize, (int)work->input.ordinal.timestamp.peeku(),
- (int)work->input.ordinal.frameIndex.peeku(), work->input.flags);
-
- size_t outCapacity = kNumBytesPerInputFrame;
- outCapacity += mFilledLen + inSize;
- std::shared_ptr<C2LinearBlock> outputBlock;
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- c2_status_t err = pool->fetchLinearBlock(outCapacity, usage, &outputBlock);
- if (err != C2_OK) {
- ALOGE("fetchLinearBlock for Output failed with status %d", err);
- work->result = C2_NO_MEMORY;
- return;
- }
- C2WriteView wView = outputBlock->map().get();
- if (wView.error()) {
- ALOGE("write view map failed %d", wView.error());
- work->result = C2_CORRUPTED;
- return;
- }
- uint64_t outTimeStamp =
- mProcessedSamples * 1000000ll / mIntf->getSampleRate();
- size_t inPos = 0;
- size_t outPos = 0;
- while (inPos < inSize) {
- const uint8_t *inPtr = rView.data() + inOffset;
- int validSamples = mFilledLen / sizeof(int16_t);
- if ((inPos + (kNumBytesPerInputFrame - mFilledLen)) <= inSize) {
- memcpy(mInputFrame + validSamples, inPtr + inPos,
- (kNumBytesPerInputFrame - mFilledLen));
- inPos += (kNumBytesPerInputFrame - mFilledLen);
- } else {
- memcpy(mInputFrame + validSamples, inPtr + inPos, (inSize - inPos));
- mFilledLen += (inSize - inPos);
- inPos += (inSize - inPos);
- if (eos) {
- validSamples = mFilledLen / sizeof(int16_t);
- memset(mInputFrame + validSamples, 0, (kNumBytesPerInputFrame - mFilledLen));
- } else break;
-
- }
- Frame_Type_3GPP frameType;
- int numEncBytes = AMREncode(mEncState, mSidState, mMode, mInputFrame,
- wView.data() + outPos, &frameType,
- AMR_TX_WMF);
- if (numEncBytes < 0 || numEncBytes > ((int)outCapacity - (int)outPos)) {
- ALOGE("encodeFrame call failed, state [%d %zu %zu]", numEncBytes, outPos, outCapacity);
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- // Convert header byte from WMF to IETF format.
- if (numEncBytes > 0)
- wView.data()[outPos] = ((wView.data()[outPos] << 3) | 4) & 0x7c;
- outPos += numEncBytes;
- mProcessedSamples += kNumSamplesPerFrame;
- mFilledLen = 0;
- }
- ALOGV("causal sample size %d", mFilledLen);
- if (mIsFirst) {
- mIsFirst = false;
- mAnchorTimeStamp = work->input.ordinal.timestamp.peekull();
- }
- fillEmptyWork(work);
- if (outPos != 0) {
- work->worklets.front()->output.buffers.push_back(
- createLinearBuffer(std::move(outputBlock), 0, outPos));
- work->worklets.front()->output.ordinal.timestamp = mAnchorTimeStamp + outTimeStamp;
-
- }
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- if (mFilledLen) ALOGV("Discarding trailing %d bytes", mFilledLen);
- }
-}
-
-c2_status_t C2SoftAmrNbEnc::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- (void) pool;
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
-
- onFlush_sm();
- return C2_OK;
-}
-
-class C2SoftAmrNbEncFactory : public C2ComponentFactory {
-public:
- C2SoftAmrNbEncFactory()
- : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {}
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftAmrNbEnc(
- COMPONENT_NAME, id,
- std::make_shared<C2SoftAmrNbEnc::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftAmrNbEnc::IntfImpl>(
- COMPONENT_NAME, id,
- std::make_shared<C2SoftAmrNbEnc::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftAmrNbEncFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftAmrNbEncFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/amr_nb_wb/C2SoftAmrNbEnc.h b/media/codecs/amr_nb_wb/C2SoftAmrNbEnc.h
deleted file mode 100644
index 6ab14db..0000000
--- a/media/codecs/amr_nb_wb/C2SoftAmrNbEnc.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_AMR_NB_ENC_H_
-#define ANDROID_C2_SOFT_AMR_NB_ENC_H_
-
-#include <SimpleC2Component.h>
-
-#include "gsmamr_enc.h"
-
-namespace android {
-
-class C2SoftAmrNbEnc : public SimpleC2Component {
- public:
- class IntfImpl;
- C2SoftAmrNbEnc(const char* name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl);
- virtual ~C2SoftAmrNbEnc();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
-
-private:
- std::shared_ptr<IntfImpl> mIntf;
- static const int32_t kNumSamplesPerFrame = L_FRAME;
- static const int32_t kNumBytesPerInputFrame = kNumSamplesPerFrame * sizeof(int16_t);
-
- void *mEncState;
- void *mSidState;
- Mode mMode;
- bool mIsFirst;
- bool mSignalledError;
- bool mSignalledOutputEos;
- uint64_t mAnchorTimeStamp;
- uint64_t mProcessedSamples;
- int32_t mFilledLen;
- int16_t mInputFrame[kNumSamplesPerFrame];
-
- C2_DO_NOT_COPY(C2SoftAmrNbEnc);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_AMR_NB_ENC_H_
diff --git a/media/codecs/amr_nb_wb/C2SoftAmrWbEnc.cpp b/media/codecs/amr_nb_wb/C2SoftAmrWbEnc.cpp
deleted file mode 100644
index be3892f..0000000
--- a/media/codecs/amr_nb_wb/C2SoftAmrWbEnc.cpp
+++ /dev/null
@@ -1,430 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftAmrWbEnc"
-#include <log/log.h>
-
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <C2Debug.h>
-#include <C2PlatformSupport.h>
-#include <SimpleC2Interface.h>
-
-#include "C2SoftAmrWbEnc.h"
-#include "cmnMemory.h"
-
-namespace android {
-
-constexpr char COMPONENT_NAME[] = "c2.android.amrwb.encoder";
-
-class C2SoftAmrWbEnc::IntfImpl : public C2InterfaceHelper {
- public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper>& helper)
- : C2InterfaceHelper(helper) {
- setDerivedInstance(this);
-
- addParameter(
- DefineParam(mInputFormat, C2_NAME_INPUT_STREAM_FORMAT_SETTING)
- .withConstValue(
- new C2StreamFormatConfig::input(0u, C2FormatAudio))
- .build());
-
- addParameter(
- DefineParam(mOutputFormat, C2_NAME_OUTPUT_STREAM_FORMAT_SETTING)
- .withConstValue(
- new C2StreamFormatConfig::output(0u, C2FormatCompressed))
- .build());
-
- addParameter(
- DefineParam(mInputMediaType, C2_NAME_INPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::input>(
- MEDIA_MIMETYPE_AUDIO_RAW))
- .build());
-
- addParameter(
- DefineParam(mOutputMediaType, C2_NAME_OUTPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::output>(
- MEDIA_MIMETYPE_AUDIO_AMR_WB))
- .build());
-
- addParameter(
- DefineParam(mChannelCount, C2_NAME_STREAM_CHANNEL_COUNT_SETTING)
- .withDefault(new C2StreamChannelCountInfo::input(0u, 1))
- .withFields({C2F(mChannelCount, value).equalTo(1)})
- .withSetter((Setter<decltype(*mChannelCount)>::StrictValueWithNoDeps))
- .build());
-
- addParameter(
- DefineParam(mSampleRate, C2_NAME_STREAM_SAMPLE_RATE_SETTING)
- .withDefault(new C2StreamSampleRateInfo::input(0u, 16000))
- .withFields({C2F(mSampleRate, value).equalTo(16000)})
- .withSetter(
- (Setter<decltype(*mSampleRate)>::StrictValueWithNoDeps))
- .build());
-
- addParameter(
- DefineParam(mBitrate, C2_NAME_STREAM_BITRATE_SETTING)
- .withDefault(new C2BitrateTuning::output(0u, 6600))
- .withFields({C2F(mBitrate, value).inRange(6600, 23850)})
- .withSetter(Setter<decltype(*mBitrate)>::NonStrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mInputMaxBufSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
- .withConstValue(new C2StreamMaxBufferSizeInfo::input(0u, 8192))
- .build());
- }
-
- uint32_t getSampleRate() const { return mSampleRate->value; }
- uint32_t getChannelCount() const { return mChannelCount->value; }
- uint32_t getBitrate() const { return mBitrate->value; }
-
- private:
- std::shared_ptr<C2StreamFormatConfig::input> mInputFormat;
- std::shared_ptr<C2StreamFormatConfig::output> mOutputFormat;
- std::shared_ptr<C2PortMimeConfig::input> mInputMediaType;
- std::shared_ptr<C2PortMimeConfig::output> mOutputMediaType;
- std::shared_ptr<C2StreamSampleRateInfo::input> mSampleRate;
- std::shared_ptr<C2StreamChannelCountInfo::input> mChannelCount;
- std::shared_ptr<C2BitrateTuning::output> mBitrate;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mInputMaxBufSize;
-};
-
-C2SoftAmrWbEnc::C2SoftAmrWbEnc(const char* name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl)
- : SimpleC2Component(
- std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mEncoderHandle(nullptr),
- mApiHandle(nullptr),
- mMemOperator(nullptr) {
-}
-
-C2SoftAmrWbEnc::~C2SoftAmrWbEnc() {
- onRelease();
-}
-
-c2_status_t C2SoftAmrWbEnc::onInit() {
- // TODO: get mode directly from config
- switch(mIntf->getBitrate()) {
- case 6600: mMode = VOAMRWB_MD66;
- break;
- case 8850: mMode = VOAMRWB_MD885;
- break;
- case 12650: mMode = VOAMRWB_MD1265;
- break;
- case 14250: mMode = VOAMRWB_MD1425;
- break;
- case 15850: mMode = VOAMRWB_MD1585;
- break;
- case 18250: mMode = VOAMRWB_MD1825;
- break;
- case 19850: mMode = VOAMRWB_MD1985;
- break;
- case 23050: mMode = VOAMRWB_MD2305;
- break;
- case 23850: mMode = VOAMRWB_MD2385;
- break;
- default: mMode = VOAMRWB_MD2305;
- }
- status_t err = initEncoder();
- mIsFirst = true;
- mSignalledError = false;
- mSignalledOutputEos = false;
- mAnchorTimeStamp = 0;
- mProcessedSamples = 0;
- mFilledLen = 0;
-
- return err == OK ? C2_OK : C2_NO_MEMORY;
-}
-
-void C2SoftAmrWbEnc::onRelease() {
- if (mEncoderHandle) {
- CHECK_EQ((VO_U32)VO_ERR_NONE, mApiHandle->Uninit(mEncoderHandle));
- mEncoderHandle = nullptr;
- }
- if (mApiHandle) {
- delete mApiHandle;
- mApiHandle = nullptr;
- }
- if (mMemOperator) {
- delete mMemOperator;
- mMemOperator = nullptr;
- }
-}
-
-c2_status_t C2SoftAmrWbEnc::onStop() {
- for (int i = 0; i < kNumSamplesPerFrame; i++) {
- mInputFrame[i] = 0x0008; /* EHF_MASK */
- }
- uint8_t outBuffer[kNumBytesPerInputFrame];
- (void) encodeInput(outBuffer, kNumBytesPerInputFrame);
- mIsFirst = true;
- mSignalledError = false;
- mSignalledOutputEos = false;
- mAnchorTimeStamp = 0;
- mProcessedSamples = 0;
- mFilledLen = 0;
-
- return C2_OK;
-}
-
-void C2SoftAmrWbEnc::onReset() {
- (void) onStop();
-}
-
-c2_status_t C2SoftAmrWbEnc::onFlush_sm() {
- return onStop();
-}
-
-status_t C2SoftAmrWbEnc::initEncoder() {
- mApiHandle = new VO_AUDIO_CODECAPI;
- if (!mApiHandle) return NO_MEMORY;
-
- if (VO_ERR_NONE != voGetAMRWBEncAPI(mApiHandle)) {
- ALOGE("Failed to get api handle");
- return UNKNOWN_ERROR;
- }
-
- mMemOperator = new VO_MEM_OPERATOR;
- if (!mMemOperator) return NO_MEMORY;
-
- mMemOperator->Alloc = cmnMemAlloc;
- mMemOperator->Copy = cmnMemCopy;
- mMemOperator->Free = cmnMemFree;
- mMemOperator->Set = cmnMemSet;
- mMemOperator->Check = cmnMemCheck;
-
- VO_CODEC_INIT_USERDATA userData;
- memset(&userData, 0, sizeof(userData));
- userData.memflag = VO_IMF_USERMEMOPERATOR;
- userData.memData = (VO_PTR) mMemOperator;
-
- if (VO_ERR_NONE != mApiHandle->Init(
- &mEncoderHandle, VO_AUDIO_CodingAMRWB, &userData)) {
- ALOGE("Failed to init AMRWB encoder");
- return UNKNOWN_ERROR;
- }
-
- VOAMRWBFRAMETYPE type = VOAMRWB_RFC3267;
- if (VO_ERR_NONE != mApiHandle->SetParam(
- mEncoderHandle, VO_PID_AMRWB_FRAMETYPE, &type)) {
- ALOGE("Failed to set AMRWB encoder frame type to %d", type);
- return UNKNOWN_ERROR;
- }
-
- if (VO_ERR_NONE !=
- mApiHandle->SetParam(
- mEncoderHandle, VO_PID_AMRWB_MODE, &mMode)) {
- ALOGE("Failed to set AMRWB encoder mode to %d", mMode);
- return UNKNOWN_ERROR;
- }
-
- return OK;
-}
-
-int C2SoftAmrWbEnc::encodeInput(uint8_t *buffer, uint32_t length) {
- VO_CODECBUFFER inputData;
- memset(&inputData, 0, sizeof(inputData));
- inputData.Buffer = (unsigned char *) mInputFrame;
- inputData.Length = kNumBytesPerInputFrame;
-
- CHECK_EQ((VO_U32)VO_ERR_NONE,
- mApiHandle->SetInputData(mEncoderHandle, &inputData));
-
- VO_AUDIO_OUTPUTINFO outputInfo;
- memset(&outputInfo, 0, sizeof(outputInfo));
- VO_CODECBUFFER outputData;
- memset(&outputData, 0, sizeof(outputData));
- outputData.Buffer = buffer;
- outputData.Length = length;
- VO_U32 ret = mApiHandle->GetOutputData(
- mEncoderHandle, &outputData, &outputInfo);
- if (ret != VO_ERR_NONE && ret != VO_ERR_INPUT_BUFFER_SMALL) {
- ALOGD("encountered error during encode call");
- return -1;
- }
- return outputData.Length;
-}
-
-static void fillEmptyWork(const std::unique_ptr<C2Work> &work) {
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
-}
-
-void C2SoftAmrWbEnc::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 1u;
- work->worklets.front()->output.flags = work->input.flags;
-
- if (mSignalledError || mSignalledOutputEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
-
- size_t inOffset = 0u;
- size_t inSize = 0u;
- C2ReadView rView = mDummyReadView;
- if (!work->input.buffers.empty()) {
- rView = work->input.buffers[0]->data().linearBlocks().front().map().get();
- inSize = rView.capacity();
- if (inSize && rView.error()) {
- ALOGE("read view map failed %d", rView.error());
- work->result = rView.error();
- return;
- }
- }
- bool eos = (work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0;
-
- ALOGV("in buffer attr. size %zu timestamp %d frameindex %d, flags %x",
- inSize, (int)work->input.ordinal.timestamp.peeku(),
- (int)work->input.ordinal.frameIndex.peeku(), work->input.flags);
-
- size_t outCapacity = kNumBytesPerInputFrame;
- outCapacity += mFilledLen + inSize;
- std::shared_ptr<C2LinearBlock> outputBlock;
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- c2_status_t err = pool->fetchLinearBlock(outCapacity, usage, &outputBlock);
- if (err != C2_OK) {
- ALOGE("fetchLinearBlock for Output failed with status %d", err);
- work->result = C2_NO_MEMORY;
- return;
- }
- C2WriteView wView = outputBlock->map().get();
- if (wView.error()) {
- ALOGE("write view map failed %d", wView.error());
- work->result = wView.error();
- return;
- }
- uint64_t outTimeStamp =
- mProcessedSamples * 1000000ll / mIntf->getSampleRate();
- size_t inPos = 0;
- size_t outPos = 0;
- while (inPos < inSize) {
- const uint8_t *inPtr = rView.data() + inOffset;
- int validSamples = mFilledLen / sizeof(int16_t);
- if ((inPos + (kNumBytesPerInputFrame - mFilledLen)) <= inSize) {
- memcpy(mInputFrame + validSamples, inPtr + inPos,
- (kNumBytesPerInputFrame - mFilledLen));
- inPos += (kNumBytesPerInputFrame - mFilledLen);
- } else {
- memcpy(mInputFrame + validSamples, inPtr + inPos, (inSize - inPos));
- mFilledLen += (inSize - inPos);
- inPos += (inSize - inPos);
- if (eos) {
- validSamples = mFilledLen / sizeof(int16_t);
- memset(mInputFrame + validSamples, 0, (kNumBytesPerInputFrame - mFilledLen));
- } else break;
- }
- int numEncBytes = encodeInput((wView.data() + outPos), outCapacity - outPos);
- if (numEncBytes < 0) {
- ALOGE("encodeFrame call failed, state [%d %zu %zu]", numEncBytes, outPos, outCapacity);
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- outPos += numEncBytes;
- mProcessedSamples += kNumSamplesPerFrame;
- mFilledLen = 0;
- }
- ALOGV("causal sample size %d", mFilledLen);
- if (mIsFirst) {
- mIsFirst = false;
- mAnchorTimeStamp = work->input.ordinal.timestamp.peekull();
- }
- fillEmptyWork(work);
- if (outPos != 0) {
- work->worklets.front()->output.buffers.push_back(
- createLinearBuffer(std::move(outputBlock), 0, outPos));
- work->worklets.front()->output.ordinal.timestamp = mAnchorTimeStamp + outTimeStamp;
- }
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- if (mFilledLen) ALOGV("Discarding trailing %d bytes", mFilledLen);
- }
-}
-
-c2_status_t C2SoftAmrWbEnc::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- (void) pool;
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
-
- onFlush_sm();
- return C2_OK;
-}
-
-class C2SoftAmrWbEncFactory : public C2ComponentFactory {
-public:
- C2SoftAmrWbEncFactory()
- : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {}
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftAmrWbEnc(
- COMPONENT_NAME, id,
- std::make_shared<C2SoftAmrWbEnc::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftAmrWbEnc::IntfImpl>(
- COMPONENT_NAME, id,
- std::make_shared<C2SoftAmrWbEnc::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftAmrWbEncFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftAmrWbEncFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/amr_nb_wb/C2SoftAmrWbEnc.h b/media/codecs/amr_nb_wb/C2SoftAmrWbEnc.h
deleted file mode 100644
index 0cc9e9f..0000000
--- a/media/codecs/amr_nb_wb/C2SoftAmrWbEnc.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_AMR_WB_ENC_H_
-#define ANDROID_C2_SOFT_AMR_WB_ENC_H_
-
-#include <SimpleC2Component.h>
-
-#include "voAMRWB.h"
-
-namespace android {
-
-class C2SoftAmrWbEnc : public SimpleC2Component {
-public:
- class IntfImpl;
- C2SoftAmrWbEnc(const char* name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl);
- virtual ~C2SoftAmrWbEnc();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
-
-private:
- std::shared_ptr<IntfImpl> mIntf;
- static const int32_t kNumSamplesPerFrame = 320;
- static const int32_t kNumBytesPerInputFrame = kNumSamplesPerFrame * sizeof(int16_t);
-
- void *mEncoderHandle;
- VO_AUDIO_CODECAPI *mApiHandle;
- VO_MEM_OPERATOR *mMemOperator;
- VOAMRWBMODE mMode;
- bool mIsFirst;
- bool mSignalledError;
- bool mSignalledOutputEos;
- uint64_t mAnchorTimeStamp;
- uint64_t mProcessedSamples;
- int32_t mFilledLen;
- int16_t mInputFrame[kNumSamplesPerFrame];
-
- status_t initEncoder();
- int encodeInput(uint8_t *buffer, uint32_t length);
-
- C2_DO_NOT_COPY(C2SoftAmrWbEnc);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_AMR_WB_ENC_H_
diff --git a/media/codecs/amr_nb_wb/MODULE_LICENSE_APACHE2 b/media/codecs/amr_nb_wb/MODULE_LICENSE_APACHE2
deleted file mode 100644
index e69de29..0000000
--- a/media/codecs/amr_nb_wb/MODULE_LICENSE_APACHE2
+++ /dev/null
diff --git a/media/codecs/amr_nb_wb/NOTICE b/media/codecs/amr_nb_wb/NOTICE
deleted file mode 100644
index c5b1efa..0000000
--- a/media/codecs/amr_nb_wb/NOTICE
+++ /dev/null
@@ -1,190 +0,0 @@
-
- Copyright (c) 2005-2008, The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
diff --git a/media/codecs/amr_nb_wb/patent_disclaimer.txt b/media/codecs/amr_nb_wb/patent_disclaimer.txt
deleted file mode 100644
index b4bf11d..0000000
--- a/media/codecs/amr_nb_wb/patent_disclaimer.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-
-THIS IS NOT A GRANT OF PATENT RIGHTS.
-
-Google makes no representation or warranty that the codecs for which
-source code is made available hereunder are unencumbered by
-third-party patents. Those intending to use this source code in
-hardware or software products are advised that implementations of
-these codecs, including in open source software or shareware, may
-require patent licenses from the relevant patent holders.
diff --git a/media/codecs/avc/Android.bp b/media/codecs/avc/Android.bp
deleted file mode 100644
index d883951..0000000
--- a/media/codecs/avc/Android.bp
+++ /dev/null
@@ -1,37 +0,0 @@
-cc_library_shared {
- name: "libstagefright_soft_c2avcdec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_signed-defaults",
- ],
-
- static_libs: ["libavcdec"],
-
- srcs: ["C2SoftAvcDec.cpp"],
-
- include_dirs: [
- "external/libavc/decoder",
- "external/libavc/common",
- ],
-}
-
-cc_library_shared {
- name: "libstagefright_soft_c2avcenc",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_signed-defaults",
- ],
-
- static_libs: ["libavcenc"],
-
- srcs: ["C2SoftAvcEnc.cpp"],
-
- include_dirs: [
- "external/libavc/encoder",
- "external/libavc/common",
- ],
-
- cflags: [
- "-Wno-unused-variable",
- ],
-}
diff --git a/media/codecs/avc/C2SoftAvcDec.cpp b/media/codecs/avc/C2SoftAvcDec.cpp
deleted file mode 100644
index 3e62744..0000000
--- a/media/codecs/avc/C2SoftAvcDec.cpp
+++ /dev/null
@@ -1,978 +0,0 @@
-/*
- * Copyright 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftAvcDec"
-#include <log/log.h>
-
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <C2Debug.h>
-#include <C2PlatformSupport.h>
-#include <Codec2Mapper.h>
-#include <SimpleC2Interface.h>
-
-#include "C2SoftAvcDec.h"
-#include "ih264d.h"
-
-namespace android {
-
-namespace {
-
-constexpr char COMPONENT_NAME[] = "c2.android.avc.decoder";
-
-} // namespace
-
-class C2SoftAvcDec::IntfImpl : public SimpleInterface<void>::BaseParams {
-public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper> &helper)
- : SimpleInterface<void>::BaseParams(
- helper,
- COMPONENT_NAME,
- C2Component::KIND_DECODER,
- C2Component::DOMAIN_VIDEO,
- MEDIA_MIMETYPE_VIDEO_AVC) {
- noPrivateBuffers(); // TODO: account for our buffers here
- noInputReferences();
- noOutputReferences();
- noInputLatency();
- noTimeStretch();
-
- // TODO: output latency and reordering
-
- addParameter(
- DefineParam(mAttrib, C2_PARAMKEY_COMPONENT_ATTRIBUTES)
- .withConstValue(new C2ComponentAttributesSetting(C2Component::ATTRIB_IS_TEMPORAL))
- .build());
-
- // coded and output picture size is the same for this codec
- addParameter(
- DefineParam(mSize, C2_PARAMKEY_PICTURE_SIZE)
- .withDefault(new C2StreamPictureSizeInfo::output(0u, 320, 240))
- .withFields({
- C2F(mSize, width).inRange(2, 4080, 2),
- C2F(mSize, height).inRange(2, 4080, 2),
- })
- .withSetter(SizeSetter)
- .build());
-
- addParameter(
- DefineParam(mMaxSize, C2_PARAMKEY_MAX_PICTURE_SIZE)
- .withDefault(new C2StreamMaxPictureSizeTuning::output(0u, 320, 240))
- .withFields({
- C2F(mSize, width).inRange(2, 4080, 2),
- C2F(mSize, height).inRange(2, 4080, 2),
- })
- .withSetter(MaxPictureSizeSetter, mSize)
- .build());
-
- addParameter(
- DefineParam(mProfileLevel, C2_PARAMKEY_PROFILE_LEVEL)
- .withDefault(new C2StreamProfileLevelInfo::input(0u,
- C2Config::PROFILE_AVC_CONSTRAINED_BASELINE, C2Config::LEVEL_AVC_5_2))
- .withFields({
- C2F(mProfileLevel, profile).oneOf({
- C2Config::PROFILE_AVC_CONSTRAINED_BASELINE,
- C2Config::PROFILE_AVC_BASELINE,
- C2Config::PROFILE_AVC_MAIN,
- C2Config::PROFILE_AVC_CONSTRAINED_HIGH,
- C2Config::PROFILE_AVC_PROGRESSIVE_HIGH,
- C2Config::PROFILE_AVC_HIGH}),
- C2F(mProfileLevel, level).oneOf({
- C2Config::LEVEL_AVC_1, C2Config::LEVEL_AVC_1B, C2Config::LEVEL_AVC_1_1,
- C2Config::LEVEL_AVC_1_2, C2Config::LEVEL_AVC_1_3,
- C2Config::LEVEL_AVC_2, C2Config::LEVEL_AVC_2_1, C2Config::LEVEL_AVC_2_2,
- C2Config::LEVEL_AVC_3, C2Config::LEVEL_AVC_3_1, C2Config::LEVEL_AVC_3_2,
- C2Config::LEVEL_AVC_4, C2Config::LEVEL_AVC_4_1, C2Config::LEVEL_AVC_4_2,
- C2Config::LEVEL_AVC_5, C2Config::LEVEL_AVC_5_1, C2Config::LEVEL_AVC_5_2
- })
- })
- .withSetter(ProfileLevelSetter, mSize)
- .build());
-
- addParameter(
- DefineParam(mMaxInputSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
- .withDefault(new C2StreamMaxBufferSizeInfo::input(0u, 320 * 240 * 3 / 4))
- .withFields({
- C2F(mMaxInputSize, value).any(),
- })
- .calculatedAs(MaxInputSizeSetter, mMaxSize)
- .build());
-
- C2ChromaOffsetStruct locations[1] = { C2ChromaOffsetStruct::ITU_YUV_420_0() };
- std::shared_ptr<C2StreamColorInfo::output> defaultColorInfo =
- C2StreamColorInfo::output::AllocShared(
- 1u, 0u, 8u /* bitDepth */, C2Color::YUV_420);
- memcpy(defaultColorInfo->m.locations, locations, sizeof(locations));
-
- defaultColorInfo =
- C2StreamColorInfo::output::AllocShared(
- { C2ChromaOffsetStruct::ITU_YUV_420_0() },
- 0u, 8u /* bitDepth */, C2Color::YUV_420);
- helper->addStructDescriptors<C2ChromaOffsetStruct>();
-
- addParameter(
- DefineParam(mColorInfo, C2_PARAMKEY_CODED_COLOR_INFO)
- .withConstValue(defaultColorInfo)
- .build());
-
- addParameter(
- DefineParam(mDefaultColorAspects, C2_PARAMKEY_DEFAULT_COLOR_ASPECTS)
- .withDefault(new C2StreamColorAspectsTuning::output(
- 0u, C2Color::RANGE_UNSPECIFIED, C2Color::PRIMARIES_UNSPECIFIED,
- C2Color::TRANSFER_UNSPECIFIED, C2Color::MATRIX_UNSPECIFIED))
- .withFields({
- C2F(mDefaultColorAspects, range).inRange(
- C2Color::RANGE_UNSPECIFIED, C2Color::RANGE_OTHER),
- C2F(mDefaultColorAspects, primaries).inRange(
- C2Color::PRIMARIES_UNSPECIFIED, C2Color::PRIMARIES_OTHER),
- C2F(mDefaultColorAspects, transfer).inRange(
- C2Color::TRANSFER_UNSPECIFIED, C2Color::TRANSFER_OTHER),
- C2F(mDefaultColorAspects, matrix).inRange(
- C2Color::MATRIX_UNSPECIFIED, C2Color::MATRIX_OTHER)
- })
- .withSetter(DefaultColorAspectsSetter)
- .build());
-
- addParameter(
- DefineParam(mCodedColorAspects, C2_PARAMKEY_VUI_COLOR_ASPECTS)
- .withDefault(new C2StreamColorAspectsInfo::input(
- 0u, C2Color::RANGE_LIMITED, C2Color::PRIMARIES_UNSPECIFIED,
- C2Color::TRANSFER_UNSPECIFIED, C2Color::MATRIX_UNSPECIFIED))
- .withFields({
- C2F(mCodedColorAspects, range).inRange(
- C2Color::RANGE_UNSPECIFIED, C2Color::RANGE_OTHER),
- C2F(mCodedColorAspects, primaries).inRange(
- C2Color::PRIMARIES_UNSPECIFIED, C2Color::PRIMARIES_OTHER),
- C2F(mCodedColorAspects, transfer).inRange(
- C2Color::TRANSFER_UNSPECIFIED, C2Color::TRANSFER_OTHER),
- C2F(mCodedColorAspects, matrix).inRange(
- C2Color::MATRIX_UNSPECIFIED, C2Color::MATRIX_OTHER)
- })
- .withSetter(CodedColorAspectsSetter)
- .build());
-
- addParameter(
- DefineParam(mColorAspects, C2_PARAMKEY_COLOR_ASPECTS)
- .withDefault(new C2StreamColorAspectsInfo::output(
- 0u, C2Color::RANGE_UNSPECIFIED, C2Color::PRIMARIES_UNSPECIFIED,
- C2Color::TRANSFER_UNSPECIFIED, C2Color::MATRIX_UNSPECIFIED))
- .withFields({
- C2F(mColorAspects, range).inRange(
- C2Color::RANGE_UNSPECIFIED, C2Color::RANGE_OTHER),
- C2F(mColorAspects, primaries).inRange(
- C2Color::PRIMARIES_UNSPECIFIED, C2Color::PRIMARIES_OTHER),
- C2F(mColorAspects, transfer).inRange(
- C2Color::TRANSFER_UNSPECIFIED, C2Color::TRANSFER_OTHER),
- C2F(mColorAspects, matrix).inRange(
- C2Color::MATRIX_UNSPECIFIED, C2Color::MATRIX_OTHER)
- })
- .withSetter(ColorAspectsSetter, mDefaultColorAspects, mCodedColorAspects)
- .build());
-
- // TODO: support more formats?
- addParameter(
- DefineParam(mPixelFormat, C2_PARAMKEY_PIXEL_FORMAT)
- .withConstValue(new C2StreamPixelFormatInfo::output(
- 0u, HAL_PIXEL_FORMAT_YCBCR_420_888))
- .build());
- }
-
- static C2R SizeSetter(bool mayBlock, const C2P<C2StreamPictureSizeInfo::output> &oldMe,
- C2P<C2VideoSizeStreamInfo::output> &me) {
- (void)mayBlock;
- C2R res = C2R::Ok();
- if (!me.F(me.v.width).supportsAtAll(me.v.width)) {
- res = res.plus(C2SettingResultBuilder::BadValue(me.F(me.v.width)));
- me.set().width = oldMe.v.width;
- }
- if (!me.F(me.v.height).supportsAtAll(me.v.height)) {
- res = res.plus(C2SettingResultBuilder::BadValue(me.F(me.v.height)));
- me.set().height = oldMe.v.height;
- }
- return res;
- }
-
- static C2R MaxPictureSizeSetter(bool mayBlock, C2P<C2StreamMaxPictureSizeTuning::output> &me,
- const C2P<C2StreamPictureSizeInfo::output> &size) {
- (void)mayBlock;
- // TODO: get max width/height from the size's field helpers vs. hardcoding
- me.set().width = c2_min(c2_max(me.v.width, size.v.width), 4080u);
- me.set().height = c2_min(c2_max(me.v.height, size.v.height), 4080u);
- return C2R::Ok();
- }
-
- static C2R MaxInputSizeSetter(bool mayBlock, C2P<C2StreamMaxBufferSizeInfo::input> &me,
- const C2P<C2StreamMaxPictureSizeTuning::output> &maxSize) {
- (void)mayBlock;
- // assume compression ratio of 2
- me.set().value = (((maxSize.v.width + 15) / 16) * ((maxSize.v.height + 15) / 16) * 192);
- return C2R::Ok();
- }
-
- static C2R ProfileLevelSetter(bool mayBlock, C2P<C2StreamProfileLevelInfo::input> &me,
- const C2P<C2StreamPictureSizeInfo::output> &size) {
- (void)mayBlock;
- (void)size;
- (void)me; // TODO: validate
- return C2R::Ok();
- }
-
- static C2R DefaultColorAspectsSetter(bool mayBlock, C2P<C2StreamColorAspectsTuning::output> &me) {
- (void)mayBlock;
- if (me.v.range > C2Color::RANGE_OTHER) {
- me.set().range = C2Color::RANGE_OTHER;
- }
- if (me.v.primaries > C2Color::PRIMARIES_OTHER) {
- me.set().primaries = C2Color::PRIMARIES_OTHER;
- }
- if (me.v.transfer > C2Color::TRANSFER_OTHER) {
- me.set().transfer = C2Color::TRANSFER_OTHER;
- }
- if (me.v.matrix > C2Color::MATRIX_OTHER) {
- me.set().matrix = C2Color::MATRIX_OTHER;
- }
- return C2R::Ok();
- }
-
- static C2R CodedColorAspectsSetter(bool mayBlock, C2P<C2StreamColorAspectsInfo::input> &me) {
- (void)mayBlock;
- if (me.v.range > C2Color::RANGE_OTHER) {
- me.set().range = C2Color::RANGE_OTHER;
- }
- if (me.v.primaries > C2Color::PRIMARIES_OTHER) {
- me.set().primaries = C2Color::PRIMARIES_OTHER;
- }
- if (me.v.transfer > C2Color::TRANSFER_OTHER) {
- me.set().transfer = C2Color::TRANSFER_OTHER;
- }
- if (me.v.matrix > C2Color::MATRIX_OTHER) {
- me.set().matrix = C2Color::MATRIX_OTHER;
- }
- return C2R::Ok();
- }
-
- static C2R ColorAspectsSetter(bool mayBlock, C2P<C2StreamColorAspectsInfo::output> &me,
- const C2P<C2StreamColorAspectsTuning::output> &def,
- const C2P<C2StreamColorAspectsInfo::input> &coded) {
- (void)mayBlock;
- // take default values for all unspecified fields, and coded values for specified ones
- me.set().range = coded.v.range == RANGE_UNSPECIFIED ? def.v.range : coded.v.range;
- me.set().primaries = coded.v.primaries == PRIMARIES_UNSPECIFIED
- ? def.v.primaries : coded.v.primaries;
- me.set().transfer = coded.v.transfer == TRANSFER_UNSPECIFIED
- ? def.v.transfer : coded.v.transfer;
- me.set().matrix = coded.v.matrix == MATRIX_UNSPECIFIED ? def.v.matrix : coded.v.matrix;
- return C2R::Ok();
- }
-
- std::shared_ptr<C2StreamColorAspectsInfo::output> getColorAspects_l() {
- return mColorAspects;
- }
-
-private:
- std::shared_ptr<C2StreamProfileLevelInfo::input> mProfileLevel;
- std::shared_ptr<C2StreamPictureSizeInfo::output> mSize;
- std::shared_ptr<C2StreamMaxPictureSizeTuning::output> mMaxSize;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mMaxInputSize;
- std::shared_ptr<C2StreamColorInfo::output> mColorInfo;
- std::shared_ptr<C2StreamColorAspectsInfo::input> mCodedColorAspects;
- std::shared_ptr<C2StreamColorAspectsTuning::output> mDefaultColorAspects;
- std::shared_ptr<C2StreamColorAspectsInfo::output> mColorAspects;
- std::shared_ptr<C2StreamPixelFormatInfo::output> mPixelFormat;
-};
-
-static size_t getCpuCoreCount() {
- long cpuCoreCount = 1;
-#if defined(_SC_NPROCESSORS_ONLN)
- cpuCoreCount = sysconf(_SC_NPROCESSORS_ONLN);
-#else
- // _SC_NPROC_ONLN must be defined...
- cpuCoreCount = sysconf(_SC_NPROC_ONLN);
-#endif
- CHECK(cpuCoreCount >= 1);
- ALOGV("Number of CPU cores: %ld", cpuCoreCount);
- return (size_t)cpuCoreCount;
-}
-
-static void *ivd_aligned_malloc(void *ctxt, WORD32 alignment, WORD32 size) {
- (void) ctxt;
- return memalign(alignment, size);
-}
-
-static void ivd_aligned_free(void *ctxt, void *mem) {
- (void) ctxt;
- free(mem);
-}
-
-C2SoftAvcDec::C2SoftAvcDec(
- const char *name,
- c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl)
- : SimpleC2Component(std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mDecHandle(nullptr),
- mOutBufferFlush(nullptr),
- mIvColorFormat(IV_YUV_420P),
- mWidth(320),
- mHeight(240),
- mHeaderDecoded(false) {
- GENERATE_FILE_NAMES();
- CREATE_DUMP_FILE(mInFile);
-}
-
-C2SoftAvcDec::~C2SoftAvcDec() {
- onRelease();
-}
-
-c2_status_t C2SoftAvcDec::onInit() {
- status_t err = initDecoder();
- return err == OK ? C2_OK : C2_CORRUPTED;
-}
-
-c2_status_t C2SoftAvcDec::onStop() {
- if (OK != resetDecoder()) return C2_CORRUPTED;
- resetPlugin();
- return C2_OK;
-}
-
-void C2SoftAvcDec::onReset() {
- (void) onStop();
-}
-
-void C2SoftAvcDec::onRelease() {
- (void) deleteDecoder();
- if (mOutBufferFlush) {
- ivd_aligned_free(nullptr, mOutBufferFlush);
- mOutBufferFlush = nullptr;
- }
- if (mOutBlock) {
- mOutBlock.reset();
- }
-}
-
-c2_status_t C2SoftAvcDec::onFlush_sm() {
- if (OK != setFlushMode()) return C2_CORRUPTED;
-
- uint32_t bufferSize = mStride * mHeight * 3 / 2;
- mOutBufferFlush = (uint8_t *)ivd_aligned_malloc(nullptr, 128, bufferSize);
- if (!mOutBufferFlush) {
- ALOGE("could not allocate tmp output buffer (for flush) of size %u ", bufferSize);
- return C2_NO_MEMORY;
- }
-
- while (true) {
- ivd_video_decode_ip_t s_decode_ip;
- ivd_video_decode_op_t s_decode_op;
-
- setDecodeArgs(&s_decode_ip, &s_decode_op, nullptr, nullptr, 0, 0, 0);
- (void) ivdec_api_function(mDecHandle, &s_decode_ip, &s_decode_op);
- if (0 == s_decode_op.u4_output_present) {
- resetPlugin();
- break;
- }
- }
-
- if (mOutBufferFlush) {
- ivd_aligned_free(nullptr, mOutBufferFlush);
- mOutBufferFlush = nullptr;
- }
-
- return C2_OK;
-}
-
-status_t C2SoftAvcDec::createDecoder() {
- ivdext_create_ip_t s_create_ip;
- ivdext_create_op_t s_create_op;
-
- s_create_ip.s_ivd_create_ip_t.u4_size = sizeof(ivdext_create_ip_t);
- s_create_ip.s_ivd_create_ip_t.e_cmd = IVD_CMD_CREATE;
- s_create_ip.s_ivd_create_ip_t.u4_share_disp_buf = 0;
- s_create_ip.s_ivd_create_ip_t.e_output_format = mIvColorFormat;
- s_create_ip.s_ivd_create_ip_t.pf_aligned_alloc = ivd_aligned_malloc;
- s_create_ip.s_ivd_create_ip_t.pf_aligned_free = ivd_aligned_free;
- s_create_ip.s_ivd_create_ip_t.pv_mem_ctxt = nullptr;
- s_create_op.s_ivd_create_op_t.u4_size = sizeof(ivdext_create_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(nullptr,
- &s_create_ip,
- &s_create_op);
- if (status != IV_SUCCESS) {
- ALOGE("error in %s: 0x%x", __func__,
- s_create_op.s_ivd_create_op_t.u4_error_code);
- return UNKNOWN_ERROR;
- }
- mDecHandle = (iv_obj_t*)s_create_op.s_ivd_create_op_t.pv_handle;
- mDecHandle->pv_fxns = (void *)ivdec_api_function;
- mDecHandle->u4_size = sizeof(iv_obj_t);
-
- return OK;
-}
-
-status_t C2SoftAvcDec::setNumCores() {
- ivdext_ctl_set_num_cores_ip_t s_set_num_cores_ip;
- ivdext_ctl_set_num_cores_op_t s_set_num_cores_op;
-
- s_set_num_cores_ip.u4_size = sizeof(ivdext_ctl_set_num_cores_ip_t);
- s_set_num_cores_ip.e_cmd = IVD_CMD_VIDEO_CTL;
- s_set_num_cores_ip.e_sub_cmd = IVDEXT_CMD_CTL_SET_NUM_CORES;
- s_set_num_cores_ip.u4_num_cores = mNumCores;
- s_set_num_cores_op.u4_size = sizeof(ivdext_ctl_set_num_cores_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_set_num_cores_ip,
- &s_set_num_cores_op);
- if (IV_SUCCESS != status) {
- ALOGD("error in %s: 0x%x", __func__, s_set_num_cores_op.u4_error_code);
- return UNKNOWN_ERROR;
- }
-
- return OK;
-}
-
-status_t C2SoftAvcDec::setParams(size_t stride, IVD_VIDEO_DECODE_MODE_T dec_mode) {
- ivd_ctl_set_config_ip_t s_set_dyn_params_ip;
- ivd_ctl_set_config_op_t s_set_dyn_params_op;
-
- s_set_dyn_params_ip.u4_size = sizeof(ivd_ctl_set_config_ip_t);
- s_set_dyn_params_ip.e_cmd = IVD_CMD_VIDEO_CTL;
- s_set_dyn_params_ip.e_sub_cmd = IVD_CMD_CTL_SETPARAMS;
- s_set_dyn_params_ip.u4_disp_wd = (UWORD32) stride;
- s_set_dyn_params_ip.e_frm_skip_mode = IVD_SKIP_NONE;
- s_set_dyn_params_ip.e_frm_out_mode = IVD_DISPLAY_FRAME_OUT;
- s_set_dyn_params_ip.e_vid_dec_mode = dec_mode;
- s_set_dyn_params_op.u4_size = sizeof(ivd_ctl_set_config_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_set_dyn_params_ip,
- &s_set_dyn_params_op);
- if (status != IV_SUCCESS) {
- ALOGE("error in %s: 0x%x", __func__, s_set_dyn_params_op.u4_error_code);
- return UNKNOWN_ERROR;
- }
-
- return OK;
-}
-
-void C2SoftAvcDec::getVersion() {
- ivd_ctl_getversioninfo_ip_t s_get_versioninfo_ip;
- ivd_ctl_getversioninfo_op_t s_get_versioninfo_op;
- UWORD8 au1_buf[512];
-
- s_get_versioninfo_ip.u4_size = sizeof(ivd_ctl_getversioninfo_ip_t);
- s_get_versioninfo_ip.e_cmd = IVD_CMD_VIDEO_CTL;
- s_get_versioninfo_ip.e_sub_cmd = IVD_CMD_CTL_GETVERSION;
- s_get_versioninfo_ip.pv_version_buffer = au1_buf;
- s_get_versioninfo_ip.u4_version_buffer_size = sizeof(au1_buf);
- s_get_versioninfo_op.u4_size = sizeof(ivd_ctl_getversioninfo_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_get_versioninfo_ip,
- &s_get_versioninfo_op);
- if (status != IV_SUCCESS) {
- ALOGD("error in %s: 0x%x", __func__,
- s_get_versioninfo_op.u4_error_code);
- } else {
- ALOGV("ittiam decoder version number: %s",
- (char *) s_get_versioninfo_ip.pv_version_buffer);
- }
-}
-
-status_t C2SoftAvcDec::initDecoder() {
- if (OK != createDecoder()) return UNKNOWN_ERROR;
- mNumCores = MIN(getCpuCoreCount(), MAX_NUM_CORES);
- mStride = ALIGN64(mWidth);
- mSignalledError = false;
- resetPlugin();
- (void) setNumCores();
- if (OK != setParams(mStride, IVD_DECODE_FRAME)) return UNKNOWN_ERROR;
- (void) getVersion();
-
- return OK;
-}
-
-bool C2SoftAvcDec::setDecodeArgs(ivd_video_decode_ip_t *ps_decode_ip,
- ivd_video_decode_op_t *ps_decode_op,
- C2ReadView *inBuffer,
- C2GraphicView *outBuffer,
- size_t inOffset,
- size_t inSize,
- uint32_t tsMarker) {
- uint32_t displayStride = mStride;
- uint32_t displayHeight = mHeight;
- size_t lumaSize = displayStride * displayHeight;
- size_t chromaSize = lumaSize >> 2;
-
- ps_decode_ip->u4_size = sizeof(ivd_video_decode_ip_t);
- ps_decode_ip->e_cmd = IVD_CMD_VIDEO_DECODE;
- if (inBuffer) {
- ps_decode_ip->u4_ts = tsMarker;
- ps_decode_ip->pv_stream_buffer = const_cast<uint8_t *>(inBuffer->data() + inOffset);
- ps_decode_ip->u4_num_Bytes = inSize;
- } else {
- ps_decode_ip->u4_ts = 0;
- ps_decode_ip->pv_stream_buffer = nullptr;
- ps_decode_ip->u4_num_Bytes = 0;
- }
- ps_decode_ip->s_out_buffer.u4_min_out_buf_size[0] = lumaSize;
- ps_decode_ip->s_out_buffer.u4_min_out_buf_size[1] = chromaSize;
- ps_decode_ip->s_out_buffer.u4_min_out_buf_size[2] = chromaSize;
- if (outBuffer) {
- if (outBuffer->width() < displayStride || outBuffer->height() < displayHeight) {
- ALOGE("Output buffer too small: provided (%dx%d) required (%ux%u)",
- outBuffer->width(), outBuffer->height(), displayStride, displayHeight);
- return false;
- }
- ps_decode_ip->s_out_buffer.pu1_bufs[0] = outBuffer->data()[C2PlanarLayout::PLANE_Y];
- ps_decode_ip->s_out_buffer.pu1_bufs[1] = outBuffer->data()[C2PlanarLayout::PLANE_U];
- ps_decode_ip->s_out_buffer.pu1_bufs[2] = outBuffer->data()[C2PlanarLayout::PLANE_V];
- } else {
- ps_decode_ip->s_out_buffer.pu1_bufs[0] = mOutBufferFlush;
- ps_decode_ip->s_out_buffer.pu1_bufs[1] = mOutBufferFlush + lumaSize;
- ps_decode_ip->s_out_buffer.pu1_bufs[2] = mOutBufferFlush + lumaSize + chromaSize;
- }
- ps_decode_ip->s_out_buffer.u4_num_bufs = 3;
- ps_decode_op->u4_size = sizeof(ivd_video_decode_op_t);
-
- return true;
-}
-
-bool C2SoftAvcDec::getVuiParams() {
- ivdext_ctl_get_vui_params_ip_t s_get_vui_params_ip;
- ivdext_ctl_get_vui_params_op_t s_get_vui_params_op;
-
- s_get_vui_params_ip.u4_size = sizeof(ivdext_ctl_get_vui_params_ip_t);
- s_get_vui_params_ip.e_cmd = IVD_CMD_VIDEO_CTL;
- s_get_vui_params_ip.e_sub_cmd =
- (IVD_CONTROL_API_COMMAND_TYPE_T) IH264D_CMD_CTL_GET_VUI_PARAMS;
- s_get_vui_params_op.u4_size = sizeof(ivdext_ctl_get_vui_params_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_get_vui_params_ip,
- &s_get_vui_params_op);
- if (status != IV_SUCCESS) {
- ALOGD("error in %s: 0x%x", __func__, s_get_vui_params_op.u4_error_code);
- return false;
- }
-
- VuiColorAspects vuiColorAspects;
- vuiColorAspects.primaries = s_get_vui_params_op.u1_colour_primaries;
- vuiColorAspects.transfer = s_get_vui_params_op.u1_tfr_chars;
- vuiColorAspects.coeffs = s_get_vui_params_op.u1_matrix_coeffs;
- vuiColorAspects.fullRange = s_get_vui_params_op.u1_video_full_range_flag;
-
- // convert vui aspects to C2 values if changed
- if (!(vuiColorAspects == mBitstreamColorAspects)) {
- mBitstreamColorAspects = vuiColorAspects;
- ColorAspects sfAspects;
- C2StreamColorAspectsInfo::input codedAspects = { 0u };
- ColorUtils::convertIsoColorAspectsToCodecAspects(
- vuiColorAspects.primaries, vuiColorAspects.transfer, vuiColorAspects.coeffs,
- vuiColorAspects.fullRange, sfAspects);
- if (!C2Mapper::map(sfAspects.mPrimaries, &codedAspects.primaries)) {
- codedAspects.primaries = C2Color::PRIMARIES_UNSPECIFIED;
- }
- if (!C2Mapper::map(sfAspects.mRange, &codedAspects.range)) {
- codedAspects.range = C2Color::RANGE_UNSPECIFIED;
- }
- if (!C2Mapper::map(sfAspects.mMatrixCoeffs, &codedAspects.matrix)) {
- codedAspects.matrix = C2Color::MATRIX_UNSPECIFIED;
- }
- if (!C2Mapper::map(sfAspects.mTransfer, &codedAspects.transfer)) {
- codedAspects.transfer = C2Color::TRANSFER_UNSPECIFIED;
- }
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- (void)mIntf->config({&codedAspects}, C2_MAY_BLOCK, &failures);
- }
- return true;
-}
-
-status_t C2SoftAvcDec::setFlushMode() {
- ivd_ctl_flush_ip_t s_set_flush_ip;
- ivd_ctl_flush_op_t s_set_flush_op;
-
- s_set_flush_ip.u4_size = sizeof(ivd_ctl_flush_ip_t);
- s_set_flush_ip.e_cmd = IVD_CMD_VIDEO_CTL;
- s_set_flush_ip.e_sub_cmd = IVD_CMD_CTL_FLUSH;
- s_set_flush_op.u4_size = sizeof(ivd_ctl_flush_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_set_flush_ip,
- &s_set_flush_op);
- if (status != IV_SUCCESS) {
- ALOGE("error in %s: 0x%x", __func__, s_set_flush_op.u4_error_code);
- return UNKNOWN_ERROR;
- }
-
- return OK;
-}
-
-status_t C2SoftAvcDec::resetDecoder() {
- ivd_ctl_reset_ip_t s_reset_ip;
- ivd_ctl_reset_op_t s_reset_op;
-
- s_reset_ip.u4_size = sizeof(ivd_ctl_reset_ip_t);
- s_reset_ip.e_cmd = IVD_CMD_VIDEO_CTL;
- s_reset_ip.e_sub_cmd = IVD_CMD_CTL_RESET;
- s_reset_op.u4_size = sizeof(ivd_ctl_reset_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_reset_ip,
- &s_reset_op);
- if (IV_SUCCESS != status) {
- ALOGE("error in %s: 0x%x", __func__, s_reset_op.u4_error_code);
- return UNKNOWN_ERROR;
- }
- mStride = 0;
- (void) setNumCores();
- mSignalledError = false;
- mHeaderDecoded = false;
-
- return OK;
-}
-
-void C2SoftAvcDec::resetPlugin() {
- mSignalledOutputEos = false;
- gettimeofday(&mTimeStart, nullptr);
- gettimeofday(&mTimeEnd, nullptr);
-}
-
-status_t C2SoftAvcDec::deleteDecoder() {
- if (mDecHandle) {
- ivdext_delete_ip_t s_delete_ip;
- ivdext_delete_op_t s_delete_op;
-
- s_delete_ip.s_ivd_delete_ip_t.u4_size = sizeof(ivdext_delete_ip_t);
- s_delete_ip.s_ivd_delete_ip_t.e_cmd = IVD_CMD_DELETE;
- s_delete_op.s_ivd_delete_op_t.u4_size = sizeof(ivdext_delete_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_delete_ip,
- &s_delete_op);
- if (status != IV_SUCCESS) {
- ALOGE("error in %s: 0x%x", __func__,
- s_delete_op.s_ivd_delete_op_t.u4_error_code);
- return UNKNOWN_ERROR;
- }
- mDecHandle = nullptr;
- }
-
- return OK;
-}
-
-static void fillEmptyWork(const std::unique_ptr<C2Work> &work) {
- uint32_t flags = 0;
- if (work->input.flags & C2FrameData::FLAG_END_OF_STREAM) {
- flags |= C2FrameData::FLAG_END_OF_STREAM;
- ALOGV("signalling eos");
- }
- work->worklets.front()->output.flags = (C2FrameData::flags_t)flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
-}
-
-void C2SoftAvcDec::finishWork(uint64_t index, const std::unique_ptr<C2Work> &work) {
- std::shared_ptr<C2Buffer> buffer = createGraphicBuffer(std::move(mOutBlock),
- C2Rect(mWidth, mHeight));
- mOutBlock = nullptr;
- {
- IntfImpl::Lock lock = mIntf->lock();
- buffer->setInfo(mIntf->getColorAspects_l());
- }
-
- auto fillWork = [buffer](const std::unique_ptr<C2Work> &work) {
- work->worklets.front()->output.flags = (C2FrameData::flags_t)0;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.buffers.push_back(buffer);
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
- };
- if (work && c2_cntr64_t(index) == work->input.ordinal.frameIndex) {
- fillWork(work);
- } else {
- finish(index, fillWork);
- }
-}
-
-c2_status_t C2SoftAvcDec::ensureDecoderState(const std::shared_ptr<C2BlockPool> &pool) {
- if (!mDecHandle) {
- ALOGE("not supposed to be here, invalid decoder context");
- return C2_CORRUPTED;
- }
- if (mStride != ALIGN64(mWidth)) {
- mStride = ALIGN64(mWidth);
- if (OK != setParams(mStride, IVD_DECODE_FRAME)) return C2_CORRUPTED;
- }
- if (mOutBlock &&
- (mOutBlock->width() != mStride || mOutBlock->height() != mHeight)) {
- mOutBlock.reset();
- }
- if (!mOutBlock) {
- uint32_t format = HAL_PIXEL_FORMAT_YV12;
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- c2_status_t err = pool->fetchGraphicBlock(mStride, mHeight, format, usage, &mOutBlock);
- if (err != C2_OK) {
- ALOGE("fetchGraphicBlock for Output failed with status %d", err);
- return err;
- }
- ALOGV("provided (%dx%d) required (%dx%d)",
- mOutBlock->width(), mOutBlock->height(), mStride, mHeight);
- }
-
- return C2_OK;
-}
-
-// TODO: can overall error checking be improved?
-// TODO: allow configuration of color format and usage for graphic buffers instead
-// of hard coding them to HAL_PIXEL_FORMAT_YV12
-// TODO: pass coloraspects information to surface
-// TODO: test support for dynamic change in resolution
-// TODO: verify if the decoder sent back all frames
-void C2SoftAvcDec::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 0u;
- work->worklets.front()->output.flags = work->input.flags;
- if (mSignalledError || mSignalledOutputEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
-
- size_t inOffset = 0u;
- size_t inSize = 0u;
- uint32_t workIndex = work->input.ordinal.frameIndex.peeku() & 0xFFFFFFFF;
- C2ReadView rView = mDummyReadView;
- if (!work->input.buffers.empty()) {
- rView = work->input.buffers[0]->data().linearBlocks().front().map().get();
- inSize = rView.capacity();
- if (inSize && rView.error()) {
- ALOGE("read view map failed %d", rView.error());
- work->result = rView.error();
- return;
- }
- }
- bool eos = ((work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0);
- bool hasPicture = false;
-
- ALOGV("in buffer attr. size %zu timestamp %d frameindex %d, flags %x",
- inSize, (int)work->input.ordinal.timestamp.peeku(),
- (int)work->input.ordinal.frameIndex.peeku(), work->input.flags);
- size_t inPos = 0;
- while (inPos < inSize) {
- if (C2_OK != ensureDecoderState(pool)) {
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return;
- }
-
- ivd_video_decode_ip_t s_decode_ip;
- ivd_video_decode_op_t s_decode_op;
- {
- C2GraphicView wView = mOutBlock->map().get();
- if (wView.error()) {
- ALOGE("graphic view map failed %d", wView.error());
- work->result = wView.error();
- return;
- }
- if (!setDecodeArgs(&s_decode_ip, &s_decode_op, &rView, &wView,
- inOffset + inPos, inSize - inPos, workIndex)) {
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return;
- }
-
- if (false == mHeaderDecoded) {
- /* Decode header and get dimensions */
- setParams(mStride, IVD_DECODE_HEADER);
- }
-
- WORD32 delay;
- GETTIME(&mTimeStart, nullptr);
- TIME_DIFF(mTimeEnd, mTimeStart, delay);
- (void) ivdec_api_function(mDecHandle, &s_decode_ip, &s_decode_op);
- WORD32 decodeTime;
- GETTIME(&mTimeEnd, nullptr);
- TIME_DIFF(mTimeStart, mTimeEnd, decodeTime);
- ALOGV("decodeTime=%6d delay=%6d numBytes=%6d", decodeTime, delay,
- s_decode_op.u4_num_bytes_consumed);
- }
- if (IVD_MEM_ALLOC_FAILED == (s_decode_op.u4_error_code & 0xFF)) {
- ALOGE("allocation failure in decoder");
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return;
- } else if (IVD_STREAM_WIDTH_HEIGHT_NOT_SUPPORTED == (s_decode_op.u4_error_code & 0xFF)) {
- ALOGE("unsupported resolution : %dx%d", mWidth, mHeight);
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return;
- } else if (IVD_RES_CHANGED == (s_decode_op.u4_error_code & 0xFF)) {
- ALOGV("resolution changed");
- drainInternal(DRAIN_COMPONENT_NO_EOS, pool, work);
- resetDecoder();
- resetPlugin();
- work->workletsProcessed = 0u;
-
- /* Decode header and get new dimensions */
- setParams(mStride, IVD_DECODE_HEADER);
- (void) ivdec_api_function(mDecHandle, &s_decode_ip, &s_decode_op);
- }
- if (0 < s_decode_op.u4_pic_wd && 0 < s_decode_op.u4_pic_ht) {
- if (mHeaderDecoded == false) {
- mHeaderDecoded = true;
- setParams(ALIGN64(s_decode_op.u4_pic_wd), IVD_DECODE_FRAME);
- }
- if (s_decode_op.u4_pic_wd != mWidth || s_decode_op.u4_pic_ht != mHeight) {
- mWidth = s_decode_op.u4_pic_wd;
- mHeight = s_decode_op.u4_pic_ht;
- CHECK_EQ(0u, s_decode_op.u4_output_present);
-
- C2VideoSizeStreamInfo::output size(0u, mWidth, mHeight);
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- c2_status_t err = mIntf->config({&size}, C2_MAY_BLOCK, &failures);
- if (err == OK) {
- work->worklets.front()->output.configUpdate.push_back(
- C2Param::Copy(size));
- } else {
- ALOGE("Cannot set width and height");
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return;
- }
- continue;
- }
- }
- (void)getVuiParams();
- hasPicture |= (1 == s_decode_op.u4_frame_decoded_flag);
- if (s_decode_op.u4_output_present) {
- finishWork(s_decode_op.u4_ts, work);
- }
- if (0 == s_decode_op.u4_num_bytes_consumed) {
- ALOGD("Bytes consumed is zero. Ignoring remaining bytes");
- break;
- }
- inPos += s_decode_op.u4_num_bytes_consumed;
- if (hasPicture && (inSize - inPos)) {
- ALOGD("decoded frame in current access nal, ignoring further trailing bytes %d",
- (int)inSize - (int)inPos);
- break;
- }
- }
- if (eos) {
- drainInternal(DRAIN_COMPONENT_WITH_EOS, pool, work);
- mSignalledOutputEos = true;
- } else if (!hasPicture) {
- fillEmptyWork(work);
- }
-}
-
-c2_status_t C2SoftAvcDec::drainInternal(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool,
- const std::unique_ptr<C2Work> &work) {
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
-
- if (OK != setFlushMode()) return C2_CORRUPTED;
- while (true) {
- if (C2_OK != ensureDecoderState(pool)) {
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return C2_CORRUPTED;
- }
- C2GraphicView wView = mOutBlock->map().get();
- if (wView.error()) {
- ALOGE("graphic view map failed %d", wView.error());
- return C2_CORRUPTED;
- }
- ivd_video_decode_ip_t s_decode_ip;
- ivd_video_decode_op_t s_decode_op;
- if (!setDecodeArgs(&s_decode_ip, &s_decode_op, nullptr, &wView, 0, 0, 0)) {
- mSignalledError = true;
- work->workletsProcessed = 1u;
- return C2_CORRUPTED;
- }
- (void) ivdec_api_function(mDecHandle, &s_decode_ip, &s_decode_op);
- if (s_decode_op.u4_output_present) {
- finishWork(s_decode_op.u4_ts, work);
- } else {
- fillEmptyWork(work);
- break;
- }
- }
-
- return C2_OK;
-}
-
-c2_status_t C2SoftAvcDec::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- return drainInternal(drainMode, pool, nullptr);
-}
-
-class C2SoftAvcDecFactory : public C2ComponentFactory {
-public:
- C2SoftAvcDecFactory() : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {
- }
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftAvcDec(COMPONENT_NAME,
- id,
- std::make_shared<C2SoftAvcDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftAvcDec::IntfImpl>(
- COMPONENT_NAME, id, std::make_shared<C2SoftAvcDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftAvcDecFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftAvcDecFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/avc/C2SoftAvcDec.h b/media/codecs/avc/C2SoftAvcDec.h
deleted file mode 100644
index 2127a93..0000000
--- a/media/codecs/avc/C2SoftAvcDec.h
+++ /dev/null
@@ -1,196 +0,0 @@
-/*
- * Copyright 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_AVC_DEC_H_
-#define ANDROID_C2_SOFT_AVC_DEC_H_
-
-#include <sys/time.h>
-
-#include <media/stagefright/foundation/ColorUtils.h>
-
-#include <SimpleC2Component.h>
-
-#include "ih264_typedefs.h"
-#include "iv.h"
-#include "ivd.h"
-
-namespace android {
-
-#define ivdec_api_function ih264d_api_function
-#define ivdext_create_ip_t ih264d_create_ip_t
-#define ivdext_create_op_t ih264d_create_op_t
-#define ivdext_delete_ip_t ih264d_delete_ip_t
-#define ivdext_delete_op_t ih264d_delete_op_t
-#define ivdext_ctl_set_num_cores_ip_t ih264d_ctl_set_num_cores_ip_t
-#define ivdext_ctl_set_num_cores_op_t ih264d_ctl_set_num_cores_op_t
-#define ivdext_ctl_get_vui_params_ip_t ih264d_ctl_get_vui_params_ip_t
-#define ivdext_ctl_get_vui_params_op_t ih264d_ctl_get_vui_params_op_t
-#define ALIGN64(x) ((((x) + 63) >> 6) << 6)
-#define MAX_NUM_CORES 4
-#define IVDEXT_CMD_CTL_SET_NUM_CORES \
- (IVD_CONTROL_API_COMMAND_TYPE_T)IH264D_CMD_CTL_SET_NUM_CORES
-#define MIN(a, b) (((a) < (b)) ? (a) : (b))
-#define GETTIME(a, b) gettimeofday(a, b);
-#define TIME_DIFF(start, end, diff) \
- diff = (((end).tv_sec - (start).tv_sec) * 1000000) + \
- ((end).tv_usec - (start).tv_usec);
-
-#ifdef FILE_DUMP_ENABLE
- #define INPUT_DUMP_PATH "/sdcard/clips/avcd_input"
- #define INPUT_DUMP_EXT "h264"
- #define GENERATE_FILE_NAMES() { \
- GETTIME(&mTimeStart, NULL); \
- strcpy(mInFile, ""); \
- sprintf(mInFile, "%s_%ld.%ld.%s", INPUT_DUMP_PATH, \
- mTimeStart.tv_sec, mTimeStart.tv_usec, \
- INPUT_DUMP_EXT); \
- }
- #define CREATE_DUMP_FILE(m_filename) { \
- FILE *fp = fopen(m_filename, "wb"); \
- if (fp != NULL) { \
- fclose(fp); \
- } else { \
- ALOGD("Could not open file %s", m_filename); \
- } \
- }
- #define DUMP_TO_FILE(m_filename, m_buf, m_size, m_offset)\
- { \
- FILE *fp = fopen(m_filename, "ab"); \
- if (fp != NULL && m_buf != NULL && m_offset == 0) { \
- int i; \
- i = fwrite(m_buf, 1, m_size, fp); \
- ALOGD("fwrite ret %d to write %d", i, m_size); \
- if (i != (int) m_size) { \
- ALOGD("Error in fwrite, returned %d", i); \
- perror("Error in write to file"); \
- } \
- } else if (fp == NULL) { \
- ALOGD("Could not write to file %s", m_filename);\
- } \
- if (fp) { \
- fclose(fp); \
- } \
- }
-#else /* FILE_DUMP_ENABLE */
- #define INPUT_DUMP_PATH
- #define INPUT_DUMP_EXT
- #define OUTPUT_DUMP_PATH
- #define OUTPUT_DUMP_EXT
- #define GENERATE_FILE_NAMES()
- #define CREATE_DUMP_FILE(m_filename)
- #define DUMP_TO_FILE(m_filename, m_buf, m_size, m_offset)
-#endif /* FILE_DUMP_ENABLE */
-
-
-class C2SoftAvcDec : public SimpleC2Component {
-public:
- class IntfImpl;
- C2SoftAvcDec(const char *name, c2_node_id_t id, const std::shared_ptr<IntfImpl> &intfImpl);
- virtual ~C2SoftAvcDec();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
-
-private:
- status_t createDecoder();
- status_t setNumCores();
- status_t setParams(size_t stride, IVD_VIDEO_DECODE_MODE_T dec_mode);
- void getVersion();
- status_t initDecoder();
- bool setDecodeArgs(ivd_video_decode_ip_t *ps_decode_ip,
- ivd_video_decode_op_t *ps_decode_op,
- C2ReadView *inBuffer,
- C2GraphicView *outBuffer,
- size_t inOffset,
- size_t inSize,
- uint32_t tsMarker);
- bool getVuiParams();
- c2_status_t ensureDecoderState(const std::shared_ptr<C2BlockPool> &pool);
- void finishWork(uint64_t index, const std::unique_ptr<C2Work> &work);
- status_t setFlushMode();
- c2_status_t drainInternal(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool,
- const std::unique_ptr<C2Work> &work);
- status_t resetDecoder();
- void resetPlugin();
- status_t deleteDecoder();
-
- std::shared_ptr<IntfImpl> mIntf;
-
- // TODO:This is not the right place for this enum. These should
- // be part of c2-vndk so that they can be accessed by all video plugins
- // until then, make them feel at home
- enum {
- kNotSupported,
- kPreferBitstream,
- kPreferContainer,
- };
-
- iv_obj_t *mDecHandle;
- std::shared_ptr<C2GraphicBlock> mOutBlock;
- uint8_t *mOutBufferFlush;
-
- size_t mNumCores;
- IV_COLOR_FORMAT_T mIvColorFormat;
-
- uint32_t mWidth;
- uint32_t mHeight;
- uint32_t mStride;
- bool mSignalledOutputEos;
- bool mSignalledError;
- bool mHeaderDecoded;
- // Color aspects. These are ISO values and are meant to detect changes in aspects to avoid
- // converting them to C2 values for each frame
- struct VuiColorAspects {
- uint8_t primaries;
- uint8_t transfer;
- uint8_t coeffs;
- uint8_t fullRange;
-
- // default color aspects
- VuiColorAspects()
- : primaries(2), transfer(2), coeffs(2), fullRange(0) { }
-
- bool operator==(const VuiColorAspects &o) {
- return primaries == o.primaries && transfer == o.transfer && coeffs == o.coeffs
- && fullRange == o.fullRange;
- }
- } mBitstreamColorAspects;
-
- // profile
- struct timeval mTimeStart;
- struct timeval mTimeEnd;
-#ifdef FILE_DUMP_ENABLE
- char mInFile[200];
-#endif /* FILE_DUMP_ENABLE */
-
- C2_DO_NOT_COPY(C2SoftAvcDec);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_AVC_DEC_H_
diff --git a/media/codecs/avc/C2SoftAvcEnc.cpp b/media/codecs/avc/C2SoftAvcEnc.cpp
deleted file mode 100644
index bfe745c..0000000
--- a/media/codecs/avc/C2SoftAvcEnc.cpp
+++ /dev/null
@@ -1,1559 +0,0 @@
-/*
- * Copyright 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftAvcEnc"
-#include <log/log.h>
-#include <utils/misc.h>
-
-#include <media/hardware/VideoAPI.h>
-#include <media/stagefright/MediaDefs.h>
-#include <media/stagefright/MediaErrors.h>
-#include <media/stagefright/MetaData.h>
-#include <media/stagefright/foundation/AUtils.h>
-
-#include <C2Debug.h>
-#include <C2PlatformSupport.h>
-#include <Codec2BufferUtils.h>
-#include <SimpleC2Interface.h>
-#include <util/C2InterfaceHelper.h>
-
-#include "C2SoftAvcEnc.h"
-#include "ih264e.h"
-#include "ih264e_error.h"
-
-namespace android {
-
-class C2SoftAvcEnc::IntfImpl : public C2InterfaceHelper {
-public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper> &helper)
- : C2InterfaceHelper(helper) {
-
- setDerivedInstance(this);
-
- addParameter(
- DefineParam(mInputFormat, C2_NAME_INPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::input(0u, C2FormatVideo))
- .build());
-
- addParameter(
- DefineParam(mOutputFormat, C2_NAME_OUTPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::output(0u, C2FormatCompressed))
- .build());
-
- addParameter(
- DefineParam(mInputMediaType, C2_NAME_INPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::input>(
- MEDIA_MIMETYPE_VIDEO_RAW))
- .build());
-
- addParameter(
- DefineParam(mOutputMediaType, C2_NAME_OUTPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::output>(
- MEDIA_MIMETYPE_VIDEO_AVC))
- .build());
-
- addParameter(
- DefineParam(mUsage, C2_NAME_INPUT_STREAM_USAGE_SETTING)
- .withConstValue(new C2StreamUsageTuning::input(
- 0u, (uint64_t)C2MemoryUsage::CPU_READ))
- .build());
-
- addParameter(
- DefineParam(mSize, C2_NAME_STREAM_VIDEO_SIZE_SETTING)
- .withDefault(new C2VideoSizeStreamTuning::input(0u, 320, 240))
- .withFields({
- C2F(mSize, width).inRange(2, 2560, 2),
- C2F(mSize, height).inRange(2, 2560, 2),
- })
- .withSetter(SizeSetter)
- .build());
-
- addParameter(
- DefineParam(mFrameRate, C2_NAME_STREAM_FRAME_RATE_SETTING)
- .withDefault(new C2StreamFrameRateInfo::output(0u, 30.))
- // TODO: More restriction?
- .withFields({C2F(mFrameRate, value).greaterThan(0.)})
- .withSetter(Setter<decltype(*mFrameRate)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mBitrate, C2_NAME_STREAM_BITRATE_SETTING)
- .withDefault(new C2BitrateTuning::output(0u, 64000))
- .withFields({C2F(mBitrate, value).inRange(4096, 12000000)})
- .withSetter(BitrateSetter)
- .build());
-
- addParameter(
- DefineParam(mIntraRefresh, C2_PARAMKEY_INTRA_REFRESH)
- .withDefault(new C2StreamIntraRefreshTuning::output(
- 0u, C2Config::INTRA_REFRESH_DISABLED, 0.))
- .withFields({
- C2F(mIntraRefresh, mode).oneOf({
- C2Config::INTRA_REFRESH_DISABLED, C2Config::INTRA_REFRESH_ARBITRARY }),
- C2F(mIntraRefresh, period).any()
- })
- .withSetter(IntraRefreshSetter)
- .build());
-
- addParameter(
- DefineParam(mProfileLevel, C2_PARAMKEY_PROFILE_LEVEL)
- .withDefault(new C2StreamProfileLevelInfo::output(
- 0u, PROFILE_AVC_CONSTRAINED_BASELINE, LEVEL_AVC_4_1))
- .withFields({
- C2F(mProfileLevel, profile).oneOf({
- PROFILE_AVC_BASELINE,
- PROFILE_AVC_CONSTRAINED_BASELINE,
- PROFILE_AVC_MAIN,
- }),
- C2F(mProfileLevel, level).oneOf({
- LEVEL_AVC_1,
- LEVEL_AVC_1B,
- LEVEL_AVC_1_1,
- LEVEL_AVC_1_2,
- LEVEL_AVC_1_3,
- LEVEL_AVC_2,
- LEVEL_AVC_2_1,
- LEVEL_AVC_2_2,
- LEVEL_AVC_3,
- LEVEL_AVC_3_1,
- LEVEL_AVC_3_2,
- LEVEL_AVC_4,
- LEVEL_AVC_4_1,
- LEVEL_AVC_4_2,
- LEVEL_AVC_5,
- }),
- })
- .withSetter(ProfileLevelSetter, mSize, mFrameRate, mBitrate)
- .build());
-
- addParameter(
- DefineParam(mRequestSync, C2_PARAMKEY_REQUEST_SYNC_FRAME)
- .withDefault(new C2StreamRequestSyncFrameTuning::output(0u, C2_FALSE))
- .withFields({C2F(mRequestSync, value).oneOf({ C2_FALSE, C2_TRUE }) })
- .withSetter(Setter<decltype(*mRequestSync)>::NonStrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mSyncFramePeriod, C2_PARAMKEY_SYNC_FRAME_INTERVAL)
- .withDefault(new C2StreamSyncFrameIntervalTuning::output(0u, 1000000))
- .withFields({C2F(mSyncFramePeriod, value).any()})
- .withSetter(Setter<decltype(*mSyncFramePeriod)>::StrictValueWithNoDeps)
- .build());
- }
-
- static C2R BitrateSetter(bool mayBlock, C2P<C2StreamBitrateInfo::output> &me) {
- (void)mayBlock;
- C2R res = C2R::Ok();
- if (me.v.value <= 4096) {
- me.set().value = 4096;
- }
- return res;
- }
-
- static C2R SizeSetter(bool mayBlock, const C2P<C2StreamPictureSizeInfo::input> &oldMe,
- C2P<C2StreamPictureSizeInfo::input> &me) {
- (void)mayBlock;
- C2R res = C2R::Ok();
- if (!me.F(me.v.width).supportsAtAll(me.v.width)) {
- res = res.plus(C2SettingResultBuilder::BadValue(me.F(me.v.width)));
- me.set().width = oldMe.v.width;
- }
- if (!me.F(me.v.height).supportsAtAll(me.v.height)) {
- res = res.plus(C2SettingResultBuilder::BadValue(me.F(me.v.height)));
- me.set().height = oldMe.v.height;
- }
- return res;
- }
-
- static C2R ProfileLevelSetter(
- bool mayBlock,
- C2P<C2StreamProfileLevelInfo::output> &me,
- const C2P<C2VideoSizeStreamTuning::input> &size,
- const C2P<C2StreamFrameRateInfo::output> &frameRate,
- const C2P<C2BitrateTuning::output> &bitrate) {
- (void)mayBlock;
- if (!me.F(me.v.profile).supportsAtAll(me.v.profile)) {
- me.set().profile = PROFILE_AVC_CONSTRAINED_BASELINE;
- }
-
- struct LevelLimits {
- C2Config::level_t level;
- float mbsPerSec;
- uint64_t mbs;
- uint32_t bitrate;
- };
- constexpr LevelLimits kLimits[] = {
- { LEVEL_AVC_1, 1485, 99, 64000 },
- // Decoder does not properly handle level 1b.
- // { LEVEL_AVC_1B, 1485, 99, 128000 },
- { LEVEL_AVC_1_1, 3000, 396, 192000 },
- { LEVEL_AVC_1_2, 6000, 396, 384000 },
- { LEVEL_AVC_1_3, 11880, 396, 768000 },
- { LEVEL_AVC_2, 11880, 396, 2000000 },
- { LEVEL_AVC_2_1, 19800, 792, 4000000 },
- { LEVEL_AVC_2_2, 20250, 1620, 4000000 },
- { LEVEL_AVC_3, 40500, 1620, 10000000 },
- { LEVEL_AVC_3_1, 108000, 3600, 14000000 },
- { LEVEL_AVC_3_2, 216000, 5120, 20000000 },
- { LEVEL_AVC_4, 245760, 8192, 20000000 },
- { LEVEL_AVC_4_1, 245760, 8192, 50000000 },
- { LEVEL_AVC_4_2, 522240, 8704, 50000000 },
- { LEVEL_AVC_5, 589824, 22080, 135000000 },
- };
-
- uint64_t mbs = uint64_t((size.v.width + 15) / 16) * ((size.v.height + 15) / 16);
- float mbsPerSec = float(mbs) * frameRate.v.value;
-
- // Check if the supplied level meets the MB / bitrate requirements. If
- // not, update the level with the lowest level meeting the requirements.
-
- bool found = false;
- // By default needsUpdate = false in case the supplied level does meet
- // the requirements. For Level 1b, we want to update the level anyway,
- // so we set it to true in that case.
- bool needsUpdate = (me.v.level == LEVEL_AVC_1B);
- for (const LevelLimits &limit : kLimits) {
- if (mbs <= limit.mbs && mbsPerSec <= limit.mbsPerSec &&
- bitrate.v.value <= limit.bitrate) {
- // This is the lowest level that meets the requirements, and if
- // we haven't seen the supplied level yet, that means we don't
- // need the update.
- if (needsUpdate) {
- ALOGD("Given level %x does not cover current configuration: "
- "adjusting to %x", me.v.level, limit.level);
- me.set().level = limit.level;
- }
- found = true;
- break;
- }
- if (me.v.level == limit.level) {
- // We break out of the loop when the lowest feasible level is
- // found. The fact that we're here means that our level doesn't
- // meet the requirement and needs to be updated.
- needsUpdate = true;
- }
- }
- if (!found) {
- // We set to the highest supported level.
- me.set().level = LEVEL_AVC_5;
- }
-
- return C2R::Ok();
- }
-
- static C2R IntraRefreshSetter(bool mayBlock, C2P<C2StreamIntraRefreshTuning::output> &me) {
- (void)mayBlock;
- C2R res = C2R::Ok();
- if (me.v.period < 1) {
- me.set().mode = C2Config::INTRA_REFRESH_DISABLED;
- me.set().period = 0;
- } else {
- // only support arbitrary mode (cyclic in our case)
- me.set().mode = C2Config::INTRA_REFRESH_ARBITRARY;
- }
- return res;
- }
-
- IV_PROFILE_T getProfile_l() const {
- switch (mProfileLevel->profile) {
- case PROFILE_AVC_CONSTRAINED_BASELINE: [[fallthrough]];
- case PROFILE_AVC_BASELINE: return IV_PROFILE_BASE;
- case PROFILE_AVC_MAIN: return IV_PROFILE_MAIN;
- default:
- ALOGD("Unrecognized profile: %x", mProfileLevel->profile);
- return IV_PROFILE_DEFAULT;
- }
- }
-
- UWORD32 getLevel_l() const {
- struct Level {
- C2Config::level_t c2Level;
- UWORD32 avcLevel;
- };
- constexpr Level levels[] = {
- { LEVEL_AVC_1, 10 },
- { LEVEL_AVC_1B, 9 },
- { LEVEL_AVC_1_1, 11 },
- { LEVEL_AVC_1_2, 12 },
- { LEVEL_AVC_1_3, 13 },
- { LEVEL_AVC_2, 20 },
- { LEVEL_AVC_2_1, 21 },
- { LEVEL_AVC_2_2, 22 },
- { LEVEL_AVC_3, 30 },
- { LEVEL_AVC_3_1, 31 },
- { LEVEL_AVC_3_2, 32 },
- { LEVEL_AVC_4, 40 },
- { LEVEL_AVC_4_1, 41 },
- { LEVEL_AVC_4_2, 42 },
- { LEVEL_AVC_5, 50 },
- };
- for (const Level &level : levels) {
- if (mProfileLevel->level == level.c2Level) {
- return level.avcLevel;
- }
- }
- ALOGD("Unrecognized level: %x", mProfileLevel->level);
- return 41;
- }
- uint32_t getSyncFramePeriod_l() const {
- if (mSyncFramePeriod->value < 0 || mSyncFramePeriod->value == INT64_MAX) {
- return 0;
- }
- double period = mSyncFramePeriod->value / 1e6 * mFrameRate->value;
- return (uint32_t)c2_max(c2_min(period + 0.5, double(UINT32_MAX)), 1.);
- }
-
- // unsafe getters
- std::shared_ptr<C2StreamPictureSizeInfo::input> getSize_l() const { return mSize; }
- std::shared_ptr<C2StreamIntraRefreshTuning::output> getIntraRefresh_l() const { return mIntraRefresh; }
- std::shared_ptr<C2StreamFrameRateInfo::output> getFrameRate_l() const { return mFrameRate; }
- std::shared_ptr<C2StreamBitrateInfo::output> getBitrate_l() const { return mBitrate; }
- std::shared_ptr<C2StreamRequestSyncFrameTuning::output> getRequestSync_l() const { return mRequestSync; }
-
-private:
- std::shared_ptr<C2StreamFormatConfig::input> mInputFormat;
- std::shared_ptr<C2StreamFormatConfig::output> mOutputFormat;
- std::shared_ptr<C2PortMimeConfig::input> mInputMediaType;
- std::shared_ptr<C2PortMimeConfig::output> mOutputMediaType;
- std::shared_ptr<C2StreamUsageTuning::input> mUsage;
- std::shared_ptr<C2VideoSizeStreamTuning::input> mSize;
- std::shared_ptr<C2StreamFrameRateInfo::output> mFrameRate;
- std::shared_ptr<C2StreamRequestSyncFrameTuning::output> mRequestSync;
- std::shared_ptr<C2StreamIntraRefreshTuning::output> mIntraRefresh;
- std::shared_ptr<C2BitrateTuning::output> mBitrate;
- std::shared_ptr<C2StreamProfileLevelInfo::output> mProfileLevel;
- std::shared_ptr<C2StreamSyncFrameIntervalTuning::output> mSyncFramePeriod;
-};
-
-#define ive_api_function ih264e_api_function
-
-constexpr char COMPONENT_NAME[] = "c2.android.avc.encoder";
-
-namespace {
-
-// From external/libavc/encoder/ih264e_bitstream.h
-constexpr uint32_t MIN_STREAM_SIZE = 0x800;
-
-static size_t GetCPUCoreCount() {
- long cpuCoreCount = 1;
-#if defined(_SC_NPROCESSORS_ONLN)
- cpuCoreCount = sysconf(_SC_NPROCESSORS_ONLN);
-#else
- // _SC_NPROC_ONLN must be defined...
- cpuCoreCount = sysconf(_SC_NPROC_ONLN);
-#endif
- CHECK(cpuCoreCount >= 1);
- ALOGV("Number of CPU cores: %ld", cpuCoreCount);
- return (size_t)cpuCoreCount;
-}
-
-} // namespace
-
-C2SoftAvcEnc::C2SoftAvcEnc(
- const char *name, c2_node_id_t id, const std::shared_ptr<IntfImpl> &intfImpl)
- : SimpleC2Component(std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mIvVideoColorFormat(IV_YUV_420P),
- mAVCEncProfile(IV_PROFILE_BASE),
- mAVCEncLevel(41),
- mStarted(false),
- mSawInputEOS(false),
- mSawOutputEOS(false),
- mSignalledError(false),
- mCodecCtx(nullptr),
- // TODO: output buffer size
- mOutBufferSize(524288) {
-
- // If dump is enabled, then open create an empty file
- GENERATE_FILE_NAMES();
- CREATE_DUMP_FILE(mInFile);
- CREATE_DUMP_FILE(mOutFile);
-
- initEncParams();
-}
-
-C2SoftAvcEnc::~C2SoftAvcEnc() {
- releaseEncoder();
-}
-
-c2_status_t C2SoftAvcEnc::onInit() {
- return C2_OK;
-}
-
-c2_status_t C2SoftAvcEnc::onStop() {
- return C2_OK;
-}
-
-void C2SoftAvcEnc::onReset() {
- // TODO: use IVE_CMD_CTL_RESET?
- releaseEncoder();
- initEncParams();
-}
-
-void C2SoftAvcEnc::onRelease() {
- releaseEncoder();
-}
-
-c2_status_t C2SoftAvcEnc::onFlush_sm() {
- // TODO: use IVE_CMD_CTL_FLUSH?
- return C2_OK;
-}
-
-void C2SoftAvcEnc::initEncParams() {
- mCodecCtx = nullptr;
- mMemRecords = nullptr;
- mNumMemRecords = DEFAULT_MEM_REC_CNT;
- mHeaderGenerated = 0;
- mNumCores = GetCPUCoreCount();
- mArch = DEFAULT_ARCH;
- mSliceMode = DEFAULT_SLICE_MODE;
- mSliceParam = DEFAULT_SLICE_PARAM;
- mHalfPelEnable = DEFAULT_HPEL;
- mIInterval = DEFAULT_I_INTERVAL;
- mIDRInterval = DEFAULT_IDR_INTERVAL;
- mDisableDeblkLevel = DEFAULT_DISABLE_DEBLK_LEVEL;
- mEnableFastSad = DEFAULT_ENABLE_FAST_SAD;
- mEnableAltRef = DEFAULT_ENABLE_ALT_REF;
- mEncSpeed = DEFAULT_ENC_SPEED;
- mIntra4x4 = DEFAULT_INTRA4x4;
- mConstrainedIntraFlag = DEFAULT_CONSTRAINED_INTRA;
- mPSNREnable = DEFAULT_PSNR_ENABLE;
- mReconEnable = DEFAULT_RECON_ENABLE;
- mEntropyMode = DEFAULT_ENTROPY_MODE;
- mBframes = DEFAULT_B_FRAMES;
-
- gettimeofday(&mTimeStart, nullptr);
- gettimeofday(&mTimeEnd, nullptr);
-}
-
-c2_status_t C2SoftAvcEnc::setDimensions() {
- ive_ctl_set_dimensions_ip_t s_dimensions_ip;
- ive_ctl_set_dimensions_op_t s_dimensions_op;
- IV_STATUS_T status;
-
- s_dimensions_ip.e_cmd = IVE_CMD_VIDEO_CTL;
- s_dimensions_ip.e_sub_cmd = IVE_CMD_CTL_SET_DIMENSIONS;
- s_dimensions_ip.u4_ht = mSize->height;
- s_dimensions_ip.u4_wd = mSize->width;
-
- s_dimensions_ip.u4_timestamp_high = -1;
- s_dimensions_ip.u4_timestamp_low = -1;
-
- s_dimensions_ip.u4_size = sizeof(ive_ctl_set_dimensions_ip_t);
- s_dimensions_op.u4_size = sizeof(ive_ctl_set_dimensions_op_t);
-
- status = ive_api_function(mCodecCtx, &s_dimensions_ip, &s_dimensions_op);
- if (status != IV_SUCCESS) {
- ALOGE("Unable to set frame dimensions = 0x%x\n",
- s_dimensions_op.u4_error_code);
- return C2_CORRUPTED;
- }
- return C2_OK;
-}
-
-c2_status_t C2SoftAvcEnc::setNumCores() {
- IV_STATUS_T status;
- ive_ctl_set_num_cores_ip_t s_num_cores_ip;
- ive_ctl_set_num_cores_op_t s_num_cores_op;
- s_num_cores_ip.e_cmd = IVE_CMD_VIDEO_CTL;
- s_num_cores_ip.e_sub_cmd = IVE_CMD_CTL_SET_NUM_CORES;
- s_num_cores_ip.u4_num_cores = MIN(mNumCores, CODEC_MAX_CORES);
- s_num_cores_ip.u4_timestamp_high = -1;
- s_num_cores_ip.u4_timestamp_low = -1;
- s_num_cores_ip.u4_size = sizeof(ive_ctl_set_num_cores_ip_t);
-
- s_num_cores_op.u4_size = sizeof(ive_ctl_set_num_cores_op_t);
-
- status = ive_api_function(
- mCodecCtx, (void *) &s_num_cores_ip, (void *) &s_num_cores_op);
- if (status != IV_SUCCESS) {
- ALOGE("Unable to set processor params = 0x%x\n",
- s_num_cores_op.u4_error_code);
- return C2_CORRUPTED;
- }
- return C2_OK;
-}
-
-c2_status_t C2SoftAvcEnc::setFrameRate() {
- ive_ctl_set_frame_rate_ip_t s_frame_rate_ip;
- ive_ctl_set_frame_rate_op_t s_frame_rate_op;
- IV_STATUS_T status;
-
- s_frame_rate_ip.e_cmd = IVE_CMD_VIDEO_CTL;
- s_frame_rate_ip.e_sub_cmd = IVE_CMD_CTL_SET_FRAMERATE;
-
- s_frame_rate_ip.u4_src_frame_rate = mFrameRate->value + 0.5;
- s_frame_rate_ip.u4_tgt_frame_rate = mFrameRate->value + 0.5;
-
- s_frame_rate_ip.u4_timestamp_high = -1;
- s_frame_rate_ip.u4_timestamp_low = -1;
-
- s_frame_rate_ip.u4_size = sizeof(ive_ctl_set_frame_rate_ip_t);
- s_frame_rate_op.u4_size = sizeof(ive_ctl_set_frame_rate_op_t);
-
- status = ive_api_function(mCodecCtx, &s_frame_rate_ip, &s_frame_rate_op);
- if (status != IV_SUCCESS) {
- ALOGE("Unable to set frame rate = 0x%x\n",
- s_frame_rate_op.u4_error_code);
- return C2_CORRUPTED;
- }
- return C2_OK;
-}
-
-c2_status_t C2SoftAvcEnc::setIpeParams() {
- ive_ctl_set_ipe_params_ip_t s_ipe_params_ip;
- ive_ctl_set_ipe_params_op_t s_ipe_params_op;
- IV_STATUS_T status;
-
- s_ipe_params_ip.e_cmd = IVE_CMD_VIDEO_CTL;
- s_ipe_params_ip.e_sub_cmd = IVE_CMD_CTL_SET_IPE_PARAMS;
-
- s_ipe_params_ip.u4_enable_intra_4x4 = mIntra4x4;
- s_ipe_params_ip.u4_enc_speed_preset = mEncSpeed;
- s_ipe_params_ip.u4_constrained_intra_pred = mConstrainedIntraFlag;
-
- s_ipe_params_ip.u4_timestamp_high = -1;
- s_ipe_params_ip.u4_timestamp_low = -1;
-
- s_ipe_params_ip.u4_size = sizeof(ive_ctl_set_ipe_params_ip_t);
- s_ipe_params_op.u4_size = sizeof(ive_ctl_set_ipe_params_op_t);
-
- status = ive_api_function(mCodecCtx, &s_ipe_params_ip, &s_ipe_params_op);
- if (status != IV_SUCCESS) {
- ALOGE("Unable to set ipe params = 0x%x\n",
- s_ipe_params_op.u4_error_code);
- return C2_CORRUPTED;
- }
- return C2_OK;
-}
-
-c2_status_t C2SoftAvcEnc::setBitRate() {
- ive_ctl_set_bitrate_ip_t s_bitrate_ip;
- ive_ctl_set_bitrate_op_t s_bitrate_op;
- IV_STATUS_T status;
-
- s_bitrate_ip.e_cmd = IVE_CMD_VIDEO_CTL;
- s_bitrate_ip.e_sub_cmd = IVE_CMD_CTL_SET_BITRATE;
-
- s_bitrate_ip.u4_target_bitrate = mBitrate->value;
-
- s_bitrate_ip.u4_timestamp_high = -1;
- s_bitrate_ip.u4_timestamp_low = -1;
-
- s_bitrate_ip.u4_size = sizeof(ive_ctl_set_bitrate_ip_t);
- s_bitrate_op.u4_size = sizeof(ive_ctl_set_bitrate_op_t);
-
- status = ive_api_function(mCodecCtx, &s_bitrate_ip, &s_bitrate_op);
- if (status != IV_SUCCESS) {
- ALOGE("Unable to set bit rate = 0x%x\n", s_bitrate_op.u4_error_code);
- return C2_CORRUPTED;
- }
- return C2_OK;
-}
-
-c2_status_t C2SoftAvcEnc::setFrameType(IV_PICTURE_CODING_TYPE_T e_frame_type) {
- ive_ctl_set_frame_type_ip_t s_frame_type_ip;
- ive_ctl_set_frame_type_op_t s_frame_type_op;
- IV_STATUS_T status;
- s_frame_type_ip.e_cmd = IVE_CMD_VIDEO_CTL;
- s_frame_type_ip.e_sub_cmd = IVE_CMD_CTL_SET_FRAMETYPE;
-
- s_frame_type_ip.e_frame_type = e_frame_type;
-
- s_frame_type_ip.u4_timestamp_high = -1;
- s_frame_type_ip.u4_timestamp_low = -1;
-
- s_frame_type_ip.u4_size = sizeof(ive_ctl_set_frame_type_ip_t);
- s_frame_type_op.u4_size = sizeof(ive_ctl_set_frame_type_op_t);
-
- status = ive_api_function(mCodecCtx, &s_frame_type_ip, &s_frame_type_op);
- if (status != IV_SUCCESS) {
- ALOGE("Unable to set frame type = 0x%x\n",
- s_frame_type_op.u4_error_code);
- return C2_CORRUPTED;
- }
- return C2_OK;
-}
-
-c2_status_t C2SoftAvcEnc::setQp() {
- ive_ctl_set_qp_ip_t s_qp_ip;
- ive_ctl_set_qp_op_t s_qp_op;
- IV_STATUS_T status;
-
- s_qp_ip.e_cmd = IVE_CMD_VIDEO_CTL;
- s_qp_ip.e_sub_cmd = IVE_CMD_CTL_SET_QP;
-
- s_qp_ip.u4_i_qp = DEFAULT_I_QP;
- s_qp_ip.u4_i_qp_max = DEFAULT_QP_MAX;
- s_qp_ip.u4_i_qp_min = DEFAULT_QP_MIN;
-
- s_qp_ip.u4_p_qp = DEFAULT_P_QP;
- s_qp_ip.u4_p_qp_max = DEFAULT_QP_MAX;
- s_qp_ip.u4_p_qp_min = DEFAULT_QP_MIN;
-
- s_qp_ip.u4_b_qp = DEFAULT_P_QP;
- s_qp_ip.u4_b_qp_max = DEFAULT_QP_MAX;
- s_qp_ip.u4_b_qp_min = DEFAULT_QP_MIN;
-
- s_qp_ip.u4_timestamp_high = -1;
- s_qp_ip.u4_timestamp_low = -1;
-
- s_qp_ip.u4_size = sizeof(ive_ctl_set_qp_ip_t);
- s_qp_op.u4_size = sizeof(ive_ctl_set_qp_op_t);
-
- status = ive_api_function(mCodecCtx, &s_qp_ip, &s_qp_op);
- if (status != IV_SUCCESS) {
- ALOGE("Unable to set qp 0x%x\n", s_qp_op.u4_error_code);
- return C2_CORRUPTED;
- }
- return C2_OK;
-}
-
-c2_status_t C2SoftAvcEnc::setEncMode(IVE_ENC_MODE_T e_enc_mode) {
- IV_STATUS_T status;
- ive_ctl_set_enc_mode_ip_t s_enc_mode_ip;
- ive_ctl_set_enc_mode_op_t s_enc_mode_op;
-
- s_enc_mode_ip.e_cmd = IVE_CMD_VIDEO_CTL;
- s_enc_mode_ip.e_sub_cmd = IVE_CMD_CTL_SET_ENC_MODE;
-
- s_enc_mode_ip.e_enc_mode = e_enc_mode;
-
- s_enc_mode_ip.u4_timestamp_high = -1;
- s_enc_mode_ip.u4_timestamp_low = -1;
-
- s_enc_mode_ip.u4_size = sizeof(ive_ctl_set_enc_mode_ip_t);
- s_enc_mode_op.u4_size = sizeof(ive_ctl_set_enc_mode_op_t);
-
- status = ive_api_function(mCodecCtx, &s_enc_mode_ip, &s_enc_mode_op);
- if (status != IV_SUCCESS) {
- ALOGE("Unable to set in header encode mode = 0x%x\n",
- s_enc_mode_op.u4_error_code);
- return C2_CORRUPTED;
- }
- return C2_OK;
-}
-
-c2_status_t C2SoftAvcEnc::setVbvParams() {
- ive_ctl_set_vbv_params_ip_t s_vbv_ip;
- ive_ctl_set_vbv_params_op_t s_vbv_op;
- IV_STATUS_T status;
-
- s_vbv_ip.e_cmd = IVE_CMD_VIDEO_CTL;
- s_vbv_ip.e_sub_cmd = IVE_CMD_CTL_SET_VBV_PARAMS;
-
- s_vbv_ip.u4_vbv_buf_size = 0;
- s_vbv_ip.u4_vbv_buffer_delay = 1000;
-
- s_vbv_ip.u4_timestamp_high = -1;
- s_vbv_ip.u4_timestamp_low = -1;
-
- s_vbv_ip.u4_size = sizeof(ive_ctl_set_vbv_params_ip_t);
- s_vbv_op.u4_size = sizeof(ive_ctl_set_vbv_params_op_t);
-
- status = ive_api_function(mCodecCtx, &s_vbv_ip, &s_vbv_op);
- if (status != IV_SUCCESS) {
- ALOGE("Unable to set VBV params = 0x%x\n", s_vbv_op.u4_error_code);
- return C2_CORRUPTED;
- }
- return C2_OK;
-}
-
-c2_status_t C2SoftAvcEnc::setAirParams() {
- ive_ctl_set_air_params_ip_t s_air_ip;
- ive_ctl_set_air_params_op_t s_air_op;
- IV_STATUS_T status;
-
- s_air_ip.e_cmd = IVE_CMD_VIDEO_CTL;
- s_air_ip.e_sub_cmd = IVE_CMD_CTL_SET_AIR_PARAMS;
-
- s_air_ip.e_air_mode =
- (mIntraRefresh->mode == C2Config::INTRA_REFRESH_DISABLED || mIntraRefresh->period < 1)
- ? IVE_AIR_MODE_NONE : IVE_AIR_MODE_CYCLIC;
- s_air_ip.u4_air_refresh_period = mIntraRefresh->period;
-
- s_air_ip.u4_timestamp_high = -1;
- s_air_ip.u4_timestamp_low = -1;
-
- s_air_ip.u4_size = sizeof(ive_ctl_set_air_params_ip_t);
- s_air_op.u4_size = sizeof(ive_ctl_set_air_params_op_t);
-
- status = ive_api_function(mCodecCtx, &s_air_ip, &s_air_op);
- if (status != IV_SUCCESS) {
- ALOGE("Unable to set air params = 0x%x\n", s_air_op.u4_error_code);
- return C2_CORRUPTED;
- }
- return C2_OK;
-}
-
-c2_status_t C2SoftAvcEnc::setMeParams() {
- IV_STATUS_T status;
- ive_ctl_set_me_params_ip_t s_me_params_ip;
- ive_ctl_set_me_params_op_t s_me_params_op;
-
- s_me_params_ip.e_cmd = IVE_CMD_VIDEO_CTL;
- s_me_params_ip.e_sub_cmd = IVE_CMD_CTL_SET_ME_PARAMS;
-
- s_me_params_ip.u4_enable_fast_sad = mEnableFastSad;
- s_me_params_ip.u4_enable_alt_ref = mEnableAltRef;
-
- s_me_params_ip.u4_enable_hpel = mHalfPelEnable;
- s_me_params_ip.u4_enable_qpel = DEFAULT_QPEL;
- s_me_params_ip.u4_me_speed_preset = DEFAULT_ME_SPEED;
- s_me_params_ip.u4_srch_rng_x = DEFAULT_SRCH_RNG_X;
- s_me_params_ip.u4_srch_rng_y = DEFAULT_SRCH_RNG_Y;
-
- s_me_params_ip.u4_timestamp_high = -1;
- s_me_params_ip.u4_timestamp_low = -1;
-
- s_me_params_ip.u4_size = sizeof(ive_ctl_set_me_params_ip_t);
- s_me_params_op.u4_size = sizeof(ive_ctl_set_me_params_op_t);
-
- status = ive_api_function(mCodecCtx, &s_me_params_ip, &s_me_params_op);
- if (status != IV_SUCCESS) {
- ALOGE("Unable to set me params = 0x%x\n", s_me_params_op.u4_error_code);
- return C2_CORRUPTED;
- }
- return C2_OK;
-}
-
-c2_status_t C2SoftAvcEnc::setGopParams() {
- IV_STATUS_T status;
- ive_ctl_set_gop_params_ip_t s_gop_params_ip;
- ive_ctl_set_gop_params_op_t s_gop_params_op;
-
- s_gop_params_ip.e_cmd = IVE_CMD_VIDEO_CTL;
- s_gop_params_ip.e_sub_cmd = IVE_CMD_CTL_SET_GOP_PARAMS;
-
- s_gop_params_ip.u4_i_frm_interval = mIInterval;
- s_gop_params_ip.u4_idr_frm_interval = mIDRInterval;
-
- s_gop_params_ip.u4_timestamp_high = -1;
- s_gop_params_ip.u4_timestamp_low = -1;
-
- s_gop_params_ip.u4_size = sizeof(ive_ctl_set_gop_params_ip_t);
- s_gop_params_op.u4_size = sizeof(ive_ctl_set_gop_params_op_t);
-
- status = ive_api_function(mCodecCtx, &s_gop_params_ip, &s_gop_params_op);
- if (status != IV_SUCCESS) {
- ALOGE("Unable to set GOP params = 0x%x\n",
- s_gop_params_op.u4_error_code);
- return C2_CORRUPTED;
- }
- return C2_OK;
-}
-
-c2_status_t C2SoftAvcEnc::setProfileParams() {
- IntfImpl::Lock lock = mIntf->lock();
-
- IV_STATUS_T status;
- ive_ctl_set_profile_params_ip_t s_profile_params_ip;
- ive_ctl_set_profile_params_op_t s_profile_params_op;
-
- s_profile_params_ip.e_cmd = IVE_CMD_VIDEO_CTL;
- s_profile_params_ip.e_sub_cmd = IVE_CMD_CTL_SET_PROFILE_PARAMS;
-
- s_profile_params_ip.e_profile = mIntf->getProfile_l();
- s_profile_params_ip.u4_entropy_coding_mode = mEntropyMode;
- s_profile_params_ip.u4_timestamp_high = -1;
- s_profile_params_ip.u4_timestamp_low = -1;
-
- s_profile_params_ip.u4_size = sizeof(ive_ctl_set_profile_params_ip_t);
- s_profile_params_op.u4_size = sizeof(ive_ctl_set_profile_params_op_t);
- lock.unlock();
-
- status = ive_api_function(mCodecCtx, &s_profile_params_ip, &s_profile_params_op);
- if (status != IV_SUCCESS) {
- ALOGE("Unable to set profile params = 0x%x\n",
- s_profile_params_op.u4_error_code);
- return C2_CORRUPTED;
- }
- return C2_OK;
-}
-
-c2_status_t C2SoftAvcEnc::setDeblockParams() {
- IV_STATUS_T status;
- ive_ctl_set_deblock_params_ip_t s_deblock_params_ip;
- ive_ctl_set_deblock_params_op_t s_deblock_params_op;
-
- s_deblock_params_ip.e_cmd = IVE_CMD_VIDEO_CTL;
- s_deblock_params_ip.e_sub_cmd = IVE_CMD_CTL_SET_DEBLOCK_PARAMS;
-
- s_deblock_params_ip.u4_disable_deblock_level = mDisableDeblkLevel;
-
- s_deblock_params_ip.u4_timestamp_high = -1;
- s_deblock_params_ip.u4_timestamp_low = -1;
-
- s_deblock_params_ip.u4_size = sizeof(ive_ctl_set_deblock_params_ip_t);
- s_deblock_params_op.u4_size = sizeof(ive_ctl_set_deblock_params_op_t);
-
- status = ive_api_function(mCodecCtx, &s_deblock_params_ip, &s_deblock_params_op);
- if (status != IV_SUCCESS) {
- ALOGE("Unable to enable/disable deblock params = 0x%x\n",
- s_deblock_params_op.u4_error_code);
- return C2_CORRUPTED;
- }
- return C2_OK;
-}
-
-void C2SoftAvcEnc::logVersion() {
- ive_ctl_getversioninfo_ip_t s_ctl_ip;
- ive_ctl_getversioninfo_op_t s_ctl_op;
- UWORD8 au1_buf[512];
- IV_STATUS_T status;
-
- s_ctl_ip.e_cmd = IVE_CMD_VIDEO_CTL;
- s_ctl_ip.e_sub_cmd = IVE_CMD_CTL_GETVERSION;
- s_ctl_ip.u4_size = sizeof(ive_ctl_getversioninfo_ip_t);
- s_ctl_op.u4_size = sizeof(ive_ctl_getversioninfo_op_t);
- s_ctl_ip.pu1_version = au1_buf;
- s_ctl_ip.u4_version_bufsize = sizeof(au1_buf);
-
- status = ive_api_function(mCodecCtx, (void *) &s_ctl_ip, (void *) &s_ctl_op);
-
- if (status != IV_SUCCESS) {
- ALOGE("Error in getting version: 0x%x", s_ctl_op.u4_error_code);
- } else {
- ALOGV("Ittiam encoder version: %s", (char *)s_ctl_ip.pu1_version);
- }
- return;
-}
-
-c2_status_t C2SoftAvcEnc::initEncoder() {
- IV_STATUS_T status;
- WORD32 level;
-
- CHECK(!mStarted);
-
- c2_status_t errType = C2_OK;
-
- {
- IntfImpl::Lock lock = mIntf->lock();
- mSize = mIntf->getSize_l();
- mBitrate = mIntf->getBitrate_l();
- mFrameRate = mIntf->getFrameRate_l();
- mIntraRefresh = mIntf->getIntraRefresh_l();
- mAVCEncLevel = mIntf->getLevel_l();
- mIInterval = mIntf->getSyncFramePeriod_l();
- mIDRInterval = mIntf->getSyncFramePeriod_l();
- }
- uint32_t width = mSize->width;
- uint32_t height = mSize->height;
-
- mStride = width;
-
- // TODO
- mIvVideoColorFormat = IV_YUV_420P;
-
- ALOGD("Params width %d height %d level %d colorFormat %d", width,
- height, mAVCEncLevel, mIvVideoColorFormat);
-
- /* Getting Number of MemRecords */
- {
- iv_num_mem_rec_ip_t s_num_mem_rec_ip;
- iv_num_mem_rec_op_t s_num_mem_rec_op;
-
- s_num_mem_rec_ip.u4_size = sizeof(iv_num_mem_rec_ip_t);
- s_num_mem_rec_op.u4_size = sizeof(iv_num_mem_rec_op_t);
-
- s_num_mem_rec_ip.e_cmd = IV_CMD_GET_NUM_MEM_REC;
-
- status = ive_api_function(nullptr, &s_num_mem_rec_ip, &s_num_mem_rec_op);
-
- if (status != IV_SUCCESS) {
- ALOGE("Get number of memory records failed = 0x%x\n",
- s_num_mem_rec_op.u4_error_code);
- return C2_CORRUPTED;
- }
-
- mNumMemRecords = s_num_mem_rec_op.u4_num_mem_rec;
- }
-
- /* Allocate array to hold memory records */
- if (mNumMemRecords > SIZE_MAX / sizeof(iv_mem_rec_t)) {
- ALOGE("requested memory size is too big.");
- return C2_CORRUPTED;
- }
- mMemRecords = (iv_mem_rec_t *)malloc(mNumMemRecords * sizeof(iv_mem_rec_t));
- if (nullptr == mMemRecords) {
- ALOGE("Unable to allocate memory for hold memory records: Size %zu",
- mNumMemRecords * sizeof(iv_mem_rec_t));
- mSignalledError = true;
- return C2_CORRUPTED;
- }
-
- {
- iv_mem_rec_t *ps_mem_rec;
- ps_mem_rec = mMemRecords;
- for (size_t i = 0; i < mNumMemRecords; i++) {
- ps_mem_rec->u4_size = sizeof(iv_mem_rec_t);
- ps_mem_rec->pv_base = nullptr;
- ps_mem_rec->u4_mem_size = 0;
- ps_mem_rec->u4_mem_alignment = 0;
- ps_mem_rec->e_mem_type = IV_NA_MEM_TYPE;
-
- ps_mem_rec++;
- }
- }
-
- /* Getting MemRecords Attributes */
- {
- iv_fill_mem_rec_ip_t s_fill_mem_rec_ip;
- iv_fill_mem_rec_op_t s_fill_mem_rec_op;
-
- s_fill_mem_rec_ip.u4_size = sizeof(iv_fill_mem_rec_ip_t);
- s_fill_mem_rec_op.u4_size = sizeof(iv_fill_mem_rec_op_t);
-
- s_fill_mem_rec_ip.e_cmd = IV_CMD_FILL_NUM_MEM_REC;
- s_fill_mem_rec_ip.ps_mem_rec = mMemRecords;
- s_fill_mem_rec_ip.u4_num_mem_rec = mNumMemRecords;
- s_fill_mem_rec_ip.u4_max_wd = width;
- s_fill_mem_rec_ip.u4_max_ht = height;
- s_fill_mem_rec_ip.u4_max_level = mAVCEncLevel;
- s_fill_mem_rec_ip.e_color_format = DEFAULT_INP_COLOR_FORMAT;
- s_fill_mem_rec_ip.u4_max_ref_cnt = DEFAULT_MAX_REF_FRM;
- s_fill_mem_rec_ip.u4_max_reorder_cnt = DEFAULT_MAX_REORDER_FRM;
- s_fill_mem_rec_ip.u4_max_srch_rng_x = DEFAULT_MAX_SRCH_RANGE_X;
- s_fill_mem_rec_ip.u4_max_srch_rng_y = DEFAULT_MAX_SRCH_RANGE_Y;
-
- status = ive_api_function(nullptr, &s_fill_mem_rec_ip, &s_fill_mem_rec_op);
-
- if (status != IV_SUCCESS) {
- ALOGE("Fill memory records failed = 0x%x\n",
- s_fill_mem_rec_op.u4_error_code);
- return C2_CORRUPTED;
- }
- }
-
- /* Allocating Memory for Mem Records */
- {
- WORD32 total_size;
- iv_mem_rec_t *ps_mem_rec;
- total_size = 0;
- ps_mem_rec = mMemRecords;
-
- for (size_t i = 0; i < mNumMemRecords; i++) {
- ps_mem_rec->pv_base = ive_aligned_malloc(
- ps_mem_rec->u4_mem_alignment, ps_mem_rec->u4_mem_size);
- if (ps_mem_rec->pv_base == nullptr) {
- ALOGE("Allocation failure for mem record id %zu size %u\n", i,
- ps_mem_rec->u4_mem_size);
- return C2_CORRUPTED;
-
- }
- total_size += ps_mem_rec->u4_mem_size;
-
- ps_mem_rec++;
- }
- }
-
- /* Codec Instance Creation */
- {
- ive_init_ip_t s_init_ip;
- ive_init_op_t s_init_op;
-
- mCodecCtx = (iv_obj_t *)mMemRecords[0].pv_base;
- mCodecCtx->u4_size = sizeof(iv_obj_t);
- mCodecCtx->pv_fxns = (void *)ive_api_function;
-
- s_init_ip.u4_size = sizeof(ive_init_ip_t);
- s_init_op.u4_size = sizeof(ive_init_op_t);
-
- s_init_ip.e_cmd = IV_CMD_INIT;
- s_init_ip.u4_num_mem_rec = mNumMemRecords;
- s_init_ip.ps_mem_rec = mMemRecords;
- s_init_ip.u4_max_wd = width;
- s_init_ip.u4_max_ht = height;
- s_init_ip.u4_max_ref_cnt = DEFAULT_MAX_REF_FRM;
- s_init_ip.u4_max_reorder_cnt = DEFAULT_MAX_REORDER_FRM;
- s_init_ip.u4_max_level = mAVCEncLevel;
- s_init_ip.e_inp_color_fmt = mIvVideoColorFormat;
-
- if (mReconEnable || mPSNREnable) {
- s_init_ip.u4_enable_recon = 1;
- } else {
- s_init_ip.u4_enable_recon = 0;
- }
- s_init_ip.e_recon_color_fmt = DEFAULT_RECON_COLOR_FORMAT;
- s_init_ip.e_rc_mode = DEFAULT_RC_MODE;
- s_init_ip.u4_max_framerate = DEFAULT_MAX_FRAMERATE;
- s_init_ip.u4_max_bitrate = DEFAULT_MAX_BITRATE;
- s_init_ip.u4_num_bframes = mBframes;
- s_init_ip.e_content_type = IV_PROGRESSIVE;
- s_init_ip.u4_max_srch_rng_x = DEFAULT_MAX_SRCH_RANGE_X;
- s_init_ip.u4_max_srch_rng_y = DEFAULT_MAX_SRCH_RANGE_Y;
- s_init_ip.e_slice_mode = mSliceMode;
- s_init_ip.u4_slice_param = mSliceParam;
- s_init_ip.e_arch = mArch;
- s_init_ip.e_soc = DEFAULT_SOC;
-
- status = ive_api_function(mCodecCtx, &s_init_ip, &s_init_op);
-
- if (status != IV_SUCCESS) {
- ALOGE("Init encoder failed = 0x%x\n", s_init_op.u4_error_code);
- return C2_CORRUPTED;
- }
- }
-
- /* Get Codec Version */
- logVersion();
-
- /* set processor details */
- setNumCores();
-
- /* Video control Set Frame dimensions */
- setDimensions();
-
- /* Video control Set Frame rates */
- setFrameRate();
-
- /* Video control Set IPE Params */
- setIpeParams();
-
- /* Video control Set Bitrate */
- setBitRate();
-
- /* Video control Set QP */
- setQp();
-
- /* Video control Set AIR params */
- setAirParams();
-
- /* Video control Set VBV params */
- setVbvParams();
-
- /* Video control Set Motion estimation params */
- setMeParams();
-
- /* Video control Set GOP params */
- setGopParams();
-
- /* Video control Set Deblock params */
- setDeblockParams();
-
- /* Video control Set Profile params */
- setProfileParams();
-
- /* Video control Set in Encode header mode */
- setEncMode(IVE_ENC_MODE_HEADER);
-
- ALOGV("init_codec successfull");
-
- mSpsPpsHeaderReceived = false;
- mStarted = true;
-
- return C2_OK;
-}
-
-c2_status_t C2SoftAvcEnc::releaseEncoder() {
- IV_STATUS_T status = IV_SUCCESS;
- iv_retrieve_mem_rec_ip_t s_retrieve_mem_ip;
- iv_retrieve_mem_rec_op_t s_retrieve_mem_op;
- iv_mem_rec_t *ps_mem_rec;
-
- if (!mStarted) {
- return C2_OK;
- }
-
- s_retrieve_mem_ip.u4_size = sizeof(iv_retrieve_mem_rec_ip_t);
- s_retrieve_mem_op.u4_size = sizeof(iv_retrieve_mem_rec_op_t);
- s_retrieve_mem_ip.e_cmd = IV_CMD_RETRIEVE_MEMREC;
- s_retrieve_mem_ip.ps_mem_rec = mMemRecords;
-
- status = ive_api_function(mCodecCtx, &s_retrieve_mem_ip, &s_retrieve_mem_op);
-
- if (status != IV_SUCCESS) {
- ALOGE("Unable to retrieve memory records = 0x%x\n",
- s_retrieve_mem_op.u4_error_code);
- return C2_CORRUPTED;
- }
-
- /* Free memory records */
- ps_mem_rec = mMemRecords;
- for (size_t i = 0; i < s_retrieve_mem_op.u4_num_mem_rec_filled; i++) {
- if (ps_mem_rec) ive_aligned_free(ps_mem_rec->pv_base);
- else {
- ALOGE("memory record is null.");
- return C2_CORRUPTED;
- }
- ps_mem_rec++;
- }
-
- if (mMemRecords) free(mMemRecords);
-
- // clear other pointers into the space being free()d
- mCodecCtx = nullptr;
-
- mStarted = false;
-
- return C2_OK;
-}
-
-c2_status_t C2SoftAvcEnc::setEncodeArgs(
- ive_video_encode_ip_t *ps_encode_ip,
- ive_video_encode_op_t *ps_encode_op,
- const C2GraphicView *const input,
- uint8_t *base,
- uint32_t capacity,
- uint64_t timestamp) {
- iv_raw_buf_t *ps_inp_raw_buf;
-
- ps_inp_raw_buf = &ps_encode_ip->s_inp_buf;
- ps_encode_ip->s_out_buf.pv_buf = base;
- ps_encode_ip->s_out_buf.u4_bytes = 0;
- ps_encode_ip->s_out_buf.u4_bufsize = capacity;
- ps_encode_ip->u4_size = sizeof(ive_video_encode_ip_t);
- ps_encode_op->u4_size = sizeof(ive_video_encode_op_t);
-
- ps_encode_ip->e_cmd = IVE_CMD_VIDEO_ENCODE;
- ps_encode_ip->pv_bufs = nullptr;
- ps_encode_ip->pv_mb_info = nullptr;
- ps_encode_ip->pv_pic_info = nullptr;
- ps_encode_ip->u4_mb_info_type = 0;
- ps_encode_ip->u4_pic_info_type = 0;
- ps_encode_ip->u4_is_last = 0;
- ps_encode_ip->u4_timestamp_high = timestamp >> 32;
- ps_encode_ip->u4_timestamp_low = timestamp & 0xFFFFFFFF;
- ps_encode_op->s_out_buf.pv_buf = nullptr;
-
- /* Initialize color formats */
- memset(ps_inp_raw_buf, 0, sizeof(iv_raw_buf_t));
- ps_inp_raw_buf->u4_size = sizeof(iv_raw_buf_t);
- ps_inp_raw_buf->e_color_fmt = mIvVideoColorFormat;
- if (input == nullptr) {
- if (mSawInputEOS){
- ps_encode_ip->u4_is_last = 1;
- }
- return C2_OK;
- }
-
- if (input->width() < mSize->width ||
- input->height() < mSize->height) {
- /* Expect width height to be configured */
- ALOGW("unexpected Capacity Aspect %d(%d) x %d(%d)", input->width(),
- mSize->width, input->height(), mSize->height);
- return C2_BAD_VALUE;
- }
- ALOGV("width = %d, height = %d", input->width(), input->height());
- const C2PlanarLayout &layout = input->layout();
- uint8_t *yPlane = const_cast<uint8_t *>(input->data()[C2PlanarLayout::PLANE_Y]);
- uint8_t *uPlane = const_cast<uint8_t *>(input->data()[C2PlanarLayout::PLANE_U]);
- uint8_t *vPlane = const_cast<uint8_t *>(input->data()[C2PlanarLayout::PLANE_V]);
- int32_t yStride = layout.planes[C2PlanarLayout::PLANE_Y].rowInc;
- int32_t uStride = layout.planes[C2PlanarLayout::PLANE_U].rowInc;
- int32_t vStride = layout.planes[C2PlanarLayout::PLANE_V].rowInc;
-
- uint32_t width = mSize->width;
- uint32_t height = mSize->height;
- // width and height are always even (as block size is 16x16)
- CHECK_EQ((width & 1u), 0u);
- CHECK_EQ((height & 1u), 0u);
- size_t yPlaneSize = width * height;
-
- switch (layout.type) {
- case C2PlanarLayout::TYPE_RGB:
- [[fallthrough]];
- case C2PlanarLayout::TYPE_RGBA: {
- ALOGV("yPlaneSize = %zu", yPlaneSize);
- MemoryBlock conversionBuffer = mConversionBuffers.fetch(yPlaneSize * 3 / 2);
- mConversionBuffersInUse.emplace(conversionBuffer.data(), conversionBuffer);
- yPlane = conversionBuffer.data();
- uPlane = yPlane + yPlaneSize;
- vPlane = uPlane + yPlaneSize / 4;
- yStride = width;
- uStride = vStride = yStride / 2;
- ConvertRGBToPlanarYUV(yPlane, yStride, height, conversionBuffer.size(), *input);
- break;
- }
- case C2PlanarLayout::TYPE_YUV: {
- if (!IsYUV420(*input)) {
- ALOGE("input is not YUV420");
- return C2_BAD_VALUE;
- }
-
- if (layout.planes[layout.PLANE_Y].colInc == 1
- && layout.planes[layout.PLANE_U].colInc == 1
- && layout.planes[layout.PLANE_V].colInc == 1
- && uStride == vStride
- && yStride == 2 * vStride) {
- // I420 compatible - already set up above
- break;
- }
-
- // copy to I420
- yStride = width;
- uStride = vStride = yStride / 2;
- MemoryBlock conversionBuffer = mConversionBuffers.fetch(yPlaneSize * 3 / 2);
- mConversionBuffersInUse.emplace(conversionBuffer.data(), conversionBuffer);
- MediaImage2 img = CreateYUV420PlanarMediaImage2(width, height, yStride, height);
- status_t err = ImageCopy(conversionBuffer.data(), &img, *input);
- if (err != OK) {
- ALOGE("Buffer conversion failed: %d", err);
- return C2_BAD_VALUE;
- }
- yPlane = conversionBuffer.data();
- uPlane = yPlane + yPlaneSize;
- vPlane = uPlane + yPlaneSize / 4;
- break;
-
- }
-
- case C2PlanarLayout::TYPE_YUVA:
- ALOGE("YUVA plane type is not supported");
- return C2_BAD_VALUE;
-
- default:
- ALOGE("Unrecognized plane type: %d", layout.type);
- return C2_BAD_VALUE;
- }
-
- switch (mIvVideoColorFormat) {
- case IV_YUV_420P:
- {
- // input buffer is supposed to be const but Ittiam API wants bare pointer.
- ps_inp_raw_buf->apv_bufs[0] = yPlane;
- ps_inp_raw_buf->apv_bufs[1] = uPlane;
- ps_inp_raw_buf->apv_bufs[2] = vPlane;
-
- ps_inp_raw_buf->au4_wd[0] = input->width();
- ps_inp_raw_buf->au4_wd[1] = input->width() / 2;
- ps_inp_raw_buf->au4_wd[2] = input->width() / 2;
-
- ps_inp_raw_buf->au4_ht[0] = input->height();
- ps_inp_raw_buf->au4_ht[1] = input->height() / 2;
- ps_inp_raw_buf->au4_ht[2] = input->height() / 2;
-
- ps_inp_raw_buf->au4_strd[0] = yStride;
- ps_inp_raw_buf->au4_strd[1] = uStride;
- ps_inp_raw_buf->au4_strd[2] = vStride;
- break;
- }
-
- case IV_YUV_422ILE:
- {
- // TODO
- // ps_inp_raw_buf->apv_bufs[0] = pu1_buf;
- // ps_inp_raw_buf->au4_wd[0] = mWidth * 2;
- // ps_inp_raw_buf->au4_ht[0] = mHeight;
- // ps_inp_raw_buf->au4_strd[0] = mStride * 2;
- break;
- }
-
- case IV_YUV_420SP_UV:
- case IV_YUV_420SP_VU:
- default:
- {
- ps_inp_raw_buf->apv_bufs[0] = yPlane;
- ps_inp_raw_buf->apv_bufs[1] = uPlane;
-
- ps_inp_raw_buf->au4_wd[0] = input->width();
- ps_inp_raw_buf->au4_wd[1] = input->width();
-
- ps_inp_raw_buf->au4_ht[0] = input->height();
- ps_inp_raw_buf->au4_ht[1] = input->height() / 2;
-
- ps_inp_raw_buf->au4_strd[0] = yStride;
- ps_inp_raw_buf->au4_strd[1] = uStride;
- break;
- }
- }
- return C2_OK;
-}
-
-void C2SoftAvcEnc::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 1u;
- work->worklets.front()->output.flags = work->input.flags;
-
- IV_STATUS_T status;
- WORD32 timeDelay, timeTaken;
- uint64_t timestamp = work->input.ordinal.timestamp.peekull();
-
- // Initialize encoder if not already initialized
- if (mCodecCtx == nullptr) {
- if (C2_OK != initEncoder()) {
- ALOGE("Failed to initialize encoder");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- }
- if (mSignalledError) {
- return;
- }
-
- // while (!mSawOutputEOS && !outQueue.empty()) {
- c2_status_t error;
- ive_video_encode_ip_t s_encode_ip;
- ive_video_encode_op_t s_encode_op;
-
- if (!mSpsPpsHeaderReceived) {
- constexpr uint32_t kHeaderLength = MIN_STREAM_SIZE;
- uint8_t header[kHeaderLength];
- error = setEncodeArgs(
- &s_encode_ip, &s_encode_op, nullptr, header, kHeaderLength, timestamp);
- if (error != C2_OK) {
- ALOGE("setEncodeArgs failed: %d", error);
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- status = ive_api_function(mCodecCtx, &s_encode_ip, &s_encode_op);
-
- if (IV_SUCCESS != status) {
- ALOGE("Encode header failed = 0x%x\n",
- s_encode_op.u4_error_code);
- return;
- } else {
- ALOGV("Bytes Generated in header %d\n",
- s_encode_op.s_out_buf.u4_bytes);
- }
-
- mSpsPpsHeaderReceived = true;
-
- std::unique_ptr<C2StreamCsdInfo::output> csd =
- C2StreamCsdInfo::output::AllocUnique(s_encode_op.s_out_buf.u4_bytes, 0u);
- if (!csd) {
- ALOGE("CSD allocation failed");
- mSignalledError = true;
- work->result = C2_NO_MEMORY;
- return;
- }
- memcpy(csd->m.value, header, s_encode_op.s_out_buf.u4_bytes);
- work->worklets.front()->output.configUpdate.push_back(std::move(csd));
-
- DUMP_TO_FILE(
- mOutFile, csd->m.value, csd->flexCount());
- }
-
- // handle dynamic config parameters
- {
- IntfImpl::Lock lock = mIntf->lock();
- std::shared_ptr<C2StreamIntraRefreshTuning::output> intraRefresh = mIntf->getIntraRefresh_l();
- std::shared_ptr<C2StreamBitrateInfo::output> bitrate = mIntf->getBitrate_l();
- std::shared_ptr<C2StreamRequestSyncFrameTuning::output> requestSync = mIntf->getRequestSync_l();
- lock.unlock();
-
- if (bitrate != mBitrate) {
- mBitrate = bitrate;
- setBitRate();
- }
-
- if (intraRefresh != mIntraRefresh) {
- mIntraRefresh = intraRefresh;
- setAirParams();
- }
-
- if (requestSync != mRequestSync) {
- // we can handle IDR immediately
- if (requestSync->value) {
- // unset request
- C2StreamRequestSyncFrameTuning::output clearSync(0u, C2_FALSE);
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- mIntf->config({ &clearSync }, C2_MAY_BLOCK, &failures);
- ALOGV("Got sync request");
- setFrameType(IV_IDR_FRAME);
- }
- mRequestSync = requestSync;
- }
- }
-
- if (work->input.flags & C2FrameData::FLAG_END_OF_STREAM) {
- mSawInputEOS = true;
- }
-
- /* In normal mode, store inputBufferInfo and this will be returned
- when encoder consumes this input */
- // if (!mInputDataIsMeta && (inputBufferInfo != NULL)) {
- // for (size_t i = 0; i < MAX_INPUT_BUFFER_HEADERS; i++) {
- // if (NULL == mInputBufferInfo[i]) {
- // mInputBufferInfo[i] = inputBufferInfo;
- // break;
- // }
- // }
- // }
- std::shared_ptr<const C2GraphicView> view;
- std::shared_ptr<C2Buffer> inputBuffer;
- if (!work->input.buffers.empty()) {
- inputBuffer = work->input.buffers[0];
- view = std::make_shared<const C2GraphicView>(
- inputBuffer->data().graphicBlocks().front().map().get());
- if (view->error() != C2_OK) {
- ALOGE("graphic view map err = %d", view->error());
- return;
- }
- }
-
- std::shared_ptr<C2LinearBlock> block;
-
- do {
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- // TODO: error handling, proper usage, etc.
- c2_status_t err = pool->fetchLinearBlock(mOutBufferSize, usage, &block);
- if (err != C2_OK) {
- ALOGE("fetch linear block err = %d", err);
- work->result = err;
- return;
- }
- C2WriteView wView = block->map().get();
- if (wView.error() != C2_OK) {
- ALOGE("write view map err = %d", wView.error());
- work->result = wView.error();
- return;
- }
-
- error = setEncodeArgs(
- &s_encode_ip, &s_encode_op, view.get(), wView.base(), wView.capacity(), timestamp);
- if (error != C2_OK) {
- ALOGE("setEncodeArgs failed : %d", error);
- mSignalledError = true;
- work->result = error;
- return;
- }
-
- // DUMP_TO_FILE(
- // mInFile, s_encode_ip.s_inp_buf.apv_bufs[0],
- // (mHeight * mStride * 3 / 2));
-
- GETTIME(&mTimeStart, nullptr);
- /* Compute time elapsed between end of previous decode()
- * to start of current decode() */
- TIME_DIFF(mTimeEnd, mTimeStart, timeDelay);
- status = ive_api_function(mCodecCtx, &s_encode_ip, &s_encode_op);
-
- if (IV_SUCCESS != status) {
- if ((s_encode_op.u4_error_code & 0xFF) == IH264E_BITSTREAM_BUFFER_OVERFLOW) {
- // TODO: use IVE_CMD_CTL_GETBUFINFO for proper max input size?
- mOutBufferSize *= 2;
- continue;
- }
- ALOGE("Encode Frame failed = 0x%x\n",
- s_encode_op.u4_error_code);
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- } while (IV_SUCCESS != status);
-
- // Hold input buffer reference
- if (inputBuffer) {
- mBuffers[s_encode_ip.s_inp_buf.apv_bufs[0]] = inputBuffer;
- }
-
- GETTIME(&mTimeEnd, nullptr);
- /* Compute time taken for decode() */
- TIME_DIFF(mTimeStart, mTimeEnd, timeTaken);
-
- ALOGV("timeTaken=%6d delay=%6d numBytes=%6d", timeTaken, timeDelay,
- s_encode_op.s_out_buf.u4_bytes);
-
- void *freed = s_encode_op.s_inp_buf.apv_bufs[0];
- /* If encoder frees up an input buffer, mark it as free */
- if (freed != nullptr) {
- if (mBuffers.count(freed) == 0u) {
- ALOGD("buffer not tracked");
- } else {
- // Release input buffer reference
- mBuffers.erase(freed);
- mConversionBuffersInUse.erase(freed);
- }
- }
-
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->worklets.front()->output.ordinal.timestamp =
- ((uint64_t)s_encode_op.u4_timestamp_high << 32) | s_encode_op.u4_timestamp_low;
- work->worklets.front()->output.buffers.clear();
-
- if (s_encode_op.s_out_buf.u4_bytes) {
- std::shared_ptr<C2Buffer> buffer =
- createLinearBuffer(block, 0, s_encode_op.s_out_buf.u4_bytes);
- if (IV_IDR_FRAME == s_encode_op.u4_encoded_frame_type) {
- ALOGV("IDR frame produced");
- buffer->setInfo(std::make_shared<C2StreamPictureTypeMaskInfo::output>(
- 0u /* stream id */, C2PictureTypeKeyFrame));
- }
- work->worklets.front()->output.buffers.push_back(buffer);
- }
-
- if (s_encode_op.u4_is_last) {
- // outputBufferHeader->nFlags |= OMX_BUFFERFLAG_EOS;
- mSawOutputEOS = true;
- } else {
- // outputBufferHeader->nFlags &= ~OMX_BUFFERFLAG_EOS;
- }
-}
-
-c2_status_t C2SoftAvcEnc::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- // TODO: use IVE_CMD_CTL_FLUSH?
- (void)drainMode;
- (void)pool;
- return C2_OK;
-}
-
-
-class C2SoftAvcEncFactory : public C2ComponentFactory {
-public:
- C2SoftAvcEncFactory() : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {
- }
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftAvcEnc(COMPONENT_NAME,
- id,
- std::make_shared<C2SoftAvcEnc::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftAvcEnc::IntfImpl>(
- COMPONENT_NAME, id, std::make_shared<C2SoftAvcEnc::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftAvcEncFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftAvcEncFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/avc/C2SoftAvcEnc.h b/media/codecs/avc/C2SoftAvcEnc.h
deleted file mode 100644
index aa3ca61..0000000
--- a/media/codecs/avc/C2SoftAvcEnc.h
+++ /dev/null
@@ -1,296 +0,0 @@
-/*
- * Copyright 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_AVC_ENC_H__
-#define ANDROID_C2_SOFT_AVC_ENC_H__
-
-#include <map>
-
-#include <utils/Vector.h>
-
-#include <SimpleC2Component.h>
-
-#include "ih264_typedefs.h"
-#include "iv2.h"
-#include "ive2.h"
-
-namespace android {
-
-#define CODEC_MAX_CORES 4
-#define LEN_STATUS_BUFFER (10 * 1024)
-#define MAX_VBV_BUFF_SIZE (120 * 16384)
-#define MAX_NUM_IO_BUFS 3
-
-#define DEFAULT_MAX_REF_FRM 2
-#define DEFAULT_MAX_REORDER_FRM 0
-#define DEFAULT_QP_MIN 10
-#define DEFAULT_QP_MAX 40
-#define DEFAULT_MAX_BITRATE 20000000
-#define DEFAULT_MAX_SRCH_RANGE_X 256
-#define DEFAULT_MAX_SRCH_RANGE_Y 256
-#define DEFAULT_MAX_FRAMERATE 120000
-#define DEFAULT_NUM_CORES 1
-#define DEFAULT_NUM_CORES_PRE_ENC 0
-#define DEFAULT_FPS 30
-#define DEFAULT_ENC_SPEED IVE_NORMAL
-
-#define DEFAULT_MEM_REC_CNT 0
-#define DEFAULT_RECON_ENABLE 0
-#define DEFAULT_CHKSUM_ENABLE 0
-#define DEFAULT_START_FRM 0
-#define DEFAULT_NUM_FRMS 0xFFFFFFFF
-#define DEFAULT_INP_COLOR_FORMAT IV_YUV_420SP_VU
-#define DEFAULT_RECON_COLOR_FORMAT IV_YUV_420P
-#define DEFAULT_LOOPBACK 0
-#define DEFAULT_SRC_FRAME_RATE 30
-#define DEFAULT_TGT_FRAME_RATE 30
-#define DEFAULT_MAX_WD 1920
-#define DEFAULT_MAX_HT 1920
-#define DEFAULT_MAX_LEVEL 41
-#define DEFAULT_STRIDE 0
-#define DEFAULT_WD 1280
-#define DEFAULT_HT 720
-#define DEFAULT_PSNR_ENABLE 0
-#define DEFAULT_ME_SPEED 100
-#define DEFAULT_ENABLE_FAST_SAD 0
-#define DEFAULT_ENABLE_ALT_REF 0
-#define DEFAULT_RC_MODE IVE_RC_STORAGE
-#define DEFAULT_BITRATE 6000000
-#define DEFAULT_I_QP 22
-#define DEFAULT_I_QP_MAX DEFAULT_QP_MAX
-#define DEFAULT_I_QP_MIN DEFAULT_QP_MIN
-#define DEFAULT_P_QP 28
-#define DEFAULT_P_QP_MAX DEFAULT_QP_MAX
-#define DEFAULT_P_QP_MIN DEFAULT_QP_MIN
-#define DEFAULT_B_QP 22
-#define DEFAULT_B_QP_MAX DEFAULT_QP_MAX
-#define DEFAULT_B_QP_MIN DEFAULT_QP_MIN
-#define DEFAULT_AIR IVE_AIR_MODE_NONE
-#define DEFAULT_AIR_REFRESH_PERIOD 30
-#define DEFAULT_SRCH_RNG_X 64
-#define DEFAULT_SRCH_RNG_Y 48
-#define DEFAULT_I_INTERVAL 30
-#define DEFAULT_IDR_INTERVAL 1000
-#define DEFAULT_B_FRAMES 0
-#define DEFAULT_DISABLE_DEBLK_LEVEL 0
-#define DEFAULT_HPEL 1
-#define DEFAULT_QPEL 1
-#define DEFAULT_I4 1
-#define DEFAULT_EPROFILE IV_PROFILE_BASE
-#define DEFAULT_ENTROPY_MODE 0
-#define DEFAULT_SLICE_MODE IVE_SLICE_MODE_NONE
-#define DEFAULT_SLICE_PARAM 256
-#define DEFAULT_ARCH ARCH_ARM_A9Q
-#define DEFAULT_SOC SOC_GENERIC
-#define DEFAULT_INTRA4x4 0
-#define STRLENGTH 500
-#define DEFAULT_CONSTRAINED_INTRA 0
-
-#define MIN(a, b) ((a) < (b))? (a) : (b)
-#define MAX(a, b) ((a) > (b))? (a) : (b)
-#define ALIGN16(x) ((((x) + 15) >> 4) << 4)
-#define ALIGN128(x) ((((x) + 127) >> 7) << 7)
-#define ALIGN4096(x) ((((x) + 4095) >> 12) << 12)
-
-/** Used to remove warnings about unused parameters */
-#define UNUSED(x) ((void)(x))
-
-/** Get time */
-#define GETTIME(a, b) gettimeofday(a, b);
-
-/** Compute difference between start and end */
-#define TIME_DIFF(start, end, diff) \
- diff = (((end).tv_sec - (start).tv_sec) * 1000000) + \
- ((end).tv_usec - (start).tv_usec);
-
-#define ive_aligned_malloc(alignment, size) memalign(alignment, size)
-#define ive_aligned_free(buf) free(buf)
-
-struct C2SoftAvcEnc : public SimpleC2Component {
- class IntfImpl;
-
- C2SoftAvcEnc(const char *name, c2_node_id_t id, const std::shared_ptr<IntfImpl> &intfImpl);
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
-
-protected:
- virtual ~C2SoftAvcEnc();
-
-private:
- // OMX input buffer's timestamp and flags
- typedef struct {
- int64_t mTimeUs;
- int32_t mFlags;
- } InputBufferInfo;
-
- std::shared_ptr<IntfImpl> mIntf;
-
- int32_t mStride;
-
- struct timeval mTimeStart; // Time at the start of decode()
- struct timeval mTimeEnd; // Time at the end of decode()
-
-#ifdef FILE_DUMP_ENABLE
- char mInFile[200];
- char mOutFile[200];
-#endif /* FILE_DUMP_ENABLE */
-
- IV_COLOR_FORMAT_T mIvVideoColorFormat;
-
- IV_PROFILE_T mAVCEncProfile __unused;
- WORD32 mAVCEncLevel;
- bool mStarted;
- bool mSpsPpsHeaderReceived;
-
- bool mSawInputEOS;
- bool mSawOutputEOS;
- bool mSignalledError;
- bool mIntra4x4;
- bool mEnableFastSad;
- bool mEnableAltRef;
- bool mReconEnable;
- bool mPSNREnable;
- bool mEntropyMode;
- bool mConstrainedIntraFlag;
- IVE_SPEED_CONFIG mEncSpeed;
-
- iv_obj_t *mCodecCtx; // Codec context
- iv_mem_rec_t *mMemRecords; // Memory records requested by the codec
- size_t mNumMemRecords; // Number of memory records requested by codec
- size_t mNumCores; // Number of cores used by the codec
-
- // configurations used by component in process
- // (TODO: keep this in intf but make them internal only)
- std::shared_ptr<C2StreamPictureSizeInfo::input> mSize;
- std::shared_ptr<C2StreamIntraRefreshTuning::output> mIntraRefresh;
- std::shared_ptr<C2StreamFrameRateInfo::output> mFrameRate;
- std::shared_ptr<C2StreamBitrateInfo::output> mBitrate;
- std::shared_ptr<C2StreamRequestSyncFrameTuning::output> mRequestSync;
-
- uint32_t mOutBufferSize;
- UWORD32 mHeaderGenerated;
- UWORD32 mBframes;
- IV_ARCH_T mArch;
- IVE_SLICE_MODE_T mSliceMode;
- UWORD32 mSliceParam;
- bool mHalfPelEnable;
- UWORD32 mIInterval;
- UWORD32 mIDRInterval;
- UWORD32 mDisableDeblkLevel;
- std::map<const void *, std::shared_ptr<C2Buffer>> mBuffers;
- MemoryBlockPool mConversionBuffers;
- std::map<const void *, MemoryBlock> mConversionBuffersInUse;
-
- void initEncParams();
- c2_status_t initEncoder();
- c2_status_t releaseEncoder();
-
- c2_status_t setFrameType(IV_PICTURE_CODING_TYPE_T e_frame_type);
- c2_status_t setQp();
- c2_status_t setEncMode(IVE_ENC_MODE_T e_enc_mode);
- c2_status_t setDimensions();
- c2_status_t setNumCores();
- c2_status_t setFrameRate();
- c2_status_t setIpeParams();
- c2_status_t setBitRate();
- c2_status_t setAirParams();
- c2_status_t setMeParams();
- c2_status_t setGopParams();
- c2_status_t setProfileParams();
- c2_status_t setDeblockParams();
- c2_status_t setVbvParams();
- void logVersion();
- c2_status_t setEncodeArgs(
- ive_video_encode_ip_t *ps_encode_ip,
- ive_video_encode_op_t *ps_encode_op,
- const C2GraphicView *const input,
- uint8_t *base,
- uint32_t capacity,
- uint64_t timestamp);
-
- C2_DO_NOT_COPY(C2SoftAvcEnc);
-};
-
-#ifdef FILE_DUMP_ENABLE
-
-#define INPUT_DUMP_PATH "/sdcard/media/avce_input"
-#define INPUT_DUMP_EXT "yuv"
-#define OUTPUT_DUMP_PATH "/sdcard/media/avce_output"
-#define OUTPUT_DUMP_EXT "h264"
-
-#define GENERATE_FILE_NAMES() { \
- GETTIME(&mTimeStart, NULL); \
- strcpy(mInFile, ""); \
- sprintf(mInFile, "%s_%ld.%ld.%s", INPUT_DUMP_PATH, \
- mTimeStart.tv_sec, mTimeStart.tv_usec, \
- INPUT_DUMP_EXT); \
- strcpy(mOutFile, ""); \
- sprintf(mOutFile, "%s_%ld.%ld.%s", OUTPUT_DUMP_PATH,\
- mTimeStart.tv_sec, mTimeStart.tv_usec, \
- OUTPUT_DUMP_EXT); \
-}
-
-#define CREATE_DUMP_FILE(m_filename) { \
- FILE *fp = fopen(m_filename, "wb"); \
- if (fp != NULL) { \
- ALOGD("Opened file %s", m_filename); \
- fclose(fp); \
- } else { \
- ALOGD("Could not open file %s", m_filename); \
- } \
-}
-#define DUMP_TO_FILE(m_filename, m_buf, m_size) \
-{ \
- FILE *fp = fopen(m_filename, "ab"); \
- if (fp != NULL && m_buf != NULL) { \
- int i; \
- i = fwrite(m_buf, 1, m_size, fp); \
- ALOGD("fwrite ret %d to write %d", i, m_size); \
- if (i != (int)m_size) { \
- ALOGD("Error in fwrite, returned %d", i); \
- perror("Error in write to file"); \
- } \
- fclose(fp); \
- } else { \
- ALOGD("Could not write to file %s", m_filename);\
- if (fp != NULL) \
- fclose(fp); \
- } \
-}
-#else /* FILE_DUMP_ENABLE */
-#define INPUT_DUMP_PATH
-#define INPUT_DUMP_EXT
-#define OUTPUT_DUMP_PATH
-#define OUTPUT_DUMP_EXT
-#define GENERATE_FILE_NAMES()
-#define CREATE_DUMP_FILE(m_filename)
-#define DUMP_TO_FILE(m_filename, m_buf, m_size)
-#endif /* FILE_DUMP_ENABLE */
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_AVC_ENC_H__
diff --git a/media/codecs/base/Android.bp b/media/codecs/base/Android.bp
deleted file mode 100644
index 473cb4d..0000000
--- a/media/codecs/base/Android.bp
+++ /dev/null
@@ -1,129 +0,0 @@
-// DO NOT DEPEND ON THIS DIRECTLY
-// use libstagefright_soft_c2-defaults instead
-cc_library_shared {
- name: "libstagefright_soft_c2common",
- defaults: ["libstagefright_codec2-impl-defaults"],
- vendor_available: true,
-
- srcs: [
- "SimpleC2Component.cpp",
- "SimpleC2Interface.cpp",
- ],
-
- export_include_dirs: [
- "include",
- ],
-
- export_shared_lib_headers: [
- "libstagefright_ccodec_utils",
- ],
-
- shared_libs: [
- "libcutils", // for properties
- "liblog", // for ALOG
- "libstagefright_ccodec_utils", // for ImageCopy
- "libstagefright_foundation", // for Mutexed
- ],
-
- sanitize: {
- misc_undefined: [
- "unsigned-integer-overflow",
- "signed-integer-overflow",
- ],
- cfi: true,
- },
-
- ldflags: ["-Wl,-Bsymbolic"],
-}
-
-// public dependency for software codec implementation
-// to be used by code under media/codecs/* only as its stability is not guaranteed
-cc_defaults {
- name: "libstagefright_soft_c2-defaults",
- defaults: ["libstagefright_codec2-impl-defaults"],
- vendor_available: true,
-
- export_shared_lib_headers: [
- "libstagefright_ccodec_utils",
- ],
-
- shared_libs: [
- "libcutils", // for properties
- "liblog", // for ALOG
- "libstagefright_foundation", // for ColorUtils and MIME
- "libstagefright_ccodec_utils", // for ImageCopy
- "libstagefright_soft_c2common",
- ],
-
- cflags: [
- "-Wall",
- "-Werror",
- ],
-
- ldflags: ["-Wl,-Bsymbolic"],
-}
-
-// public dependency for software codec implementation
-// to be used by code under media/codecs/* only
-cc_defaults {
- name: "libstagefright_soft_c2_sanitize_all-defaults",
-
- sanitize: {
- misc_undefined: [
- "unsigned-integer-overflow",
- "signed-integer-overflow",
- ],
- cfi: true,
- },
-}
-
-// public dependency for software codec implementation
-// to be used by code under media/codecs/* only
-cc_defaults {
- name: "libstagefright_soft_c2_sanitize_signed-defaults",
-
- sanitize: {
- misc_undefined: [
- "signed-integer-overflow",
- ],
- cfi: true,
- },
-}
-
-// TEMP: used by cheets2 project - remove when no longer used
-cc_library_shared {
- name: "libstagefright_simple_c2component",
- vendor_available: true,
-
- srcs: [
- "SimpleC2Interface.cpp",
- ],
-
- local_include_dirs: [
- "include",
- ],
-
- export_include_dirs: [
- "include",
- ],
-
- shared_libs: [
- "libcutils",
- "liblog",
- "libstagefright_codec2",
- "libstagefright_codec2_vndk",
- "libstagefright_foundation",
- "libutils",
- ],
-
- sanitize: {
- misc_undefined: [
- "unsigned-integer-overflow",
- "signed-integer-overflow",
- ],
- cfi: true,
- },
-
- ldflags: ["-Wl,-Bsymbolic"],
-}
-
diff --git a/media/codecs/base/SimpleC2Component.cpp b/media/codecs/base/SimpleC2Component.cpp
deleted file mode 100644
index 50b4d20..0000000
--- a/media/codecs/base/SimpleC2Component.cpp
+++ /dev/null
@@ -1,569 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "SimpleC2Component"
-#include <log/log.h>
-
-#include <cutils/properties.h>
-#include <media/stagefright/foundation/AMessage.h>
-
-#include <inttypes.h>
-
-#include <C2Config.h>
-#include <C2Debug.h>
-#include <C2PlatformSupport.h>
-#include <SimpleC2Component.h>
-
-namespace android {
-
-std::unique_ptr<C2Work> SimpleC2Component::WorkQueue::pop_front() {
- std::unique_ptr<C2Work> work = std::move(mQueue.front().work);
- mQueue.pop_front();
- return work;
-}
-
-void SimpleC2Component::WorkQueue::push_back(std::unique_ptr<C2Work> work) {
- mQueue.push_back({ std::move(work), NO_DRAIN });
-}
-
-bool SimpleC2Component::WorkQueue::empty() const {
- return mQueue.empty();
-}
-
-void SimpleC2Component::WorkQueue::clear() {
- mQueue.clear();
-}
-
-uint32_t SimpleC2Component::WorkQueue::drainMode() const {
- return mQueue.front().drainMode;
-}
-
-void SimpleC2Component::WorkQueue::markDrain(uint32_t drainMode) {
- mQueue.push_back({ nullptr, drainMode });
-}
-
-////////////////////////////////////////////////////////////////////////////////
-
-SimpleC2Component::WorkHandler::WorkHandler() : mRunning(false) {}
-
-void SimpleC2Component::WorkHandler::setComponent(
- const std::shared_ptr<SimpleC2Component> &thiz) {
- mThiz = thiz;
-}
-
-static void Reply(const sp<AMessage> &msg, int32_t *err = nullptr) {
- sp<AReplyToken> replyId;
- CHECK(msg->senderAwaitsResponse(&replyId));
- sp<AMessage> reply = new AMessage;
- if (err) {
- reply->setInt32("err", *err);
- }
- reply->postReply(replyId);
-}
-
-void SimpleC2Component::WorkHandler::onMessageReceived(const sp<AMessage> &msg) {
- std::shared_ptr<SimpleC2Component> thiz = mThiz.lock();
- if (!thiz) {
- ALOGD("component not yet set; msg = %s", msg->debugString().c_str());
- sp<AReplyToken> replyId;
- if (msg->senderAwaitsResponse(&replyId)) {
- sp<AMessage> reply = new AMessage;
- reply->setInt32("err", C2_CORRUPTED);
- reply->postReply(replyId);
- }
- return;
- }
-
- switch (msg->what()) {
- case kWhatProcess: {
- if (mRunning) {
- if (thiz->processQueue()) {
- (new AMessage(kWhatProcess, this))->post();
- }
- } else {
- ALOGV("Ignore process message as we're not running");
- }
- break;
- }
- case kWhatInit: {
- int32_t err = thiz->onInit();
- Reply(msg, &err);
- [[fallthrough]];
- }
- case kWhatStart: {
- mRunning = true;
- break;
- }
- case kWhatStop: {
- int32_t err = thiz->onStop();
- Reply(msg, &err);
- break;
- }
- case kWhatReset: {
- thiz->onReset();
- mRunning = false;
- Reply(msg);
- break;
- }
- case kWhatRelease: {
- thiz->onRelease();
- mRunning = false;
- Reply(msg);
- break;
- }
- default: {
- ALOGD("Unrecognized msg: %d", msg->what());
- break;
- }
- }
-}
-
-////////////////////////////////////////////////////////////////////////////////
-
-namespace {
-
-struct DummyReadView : public C2ReadView {
- DummyReadView() : C2ReadView(C2_NO_INIT) {}
-};
-
-} // namespace
-
-SimpleC2Component::SimpleC2Component(
- const std::shared_ptr<C2ComponentInterface> &intf)
- : mDummyReadView(DummyReadView()),
- mIntf(intf),
- mLooper(new ALooper),
- mHandler(new WorkHandler) {
- mLooper->setName(intf->getName().c_str());
- (void)mLooper->registerHandler(mHandler);
- mLooper->start(false, false, ANDROID_PRIORITY_VIDEO);
-}
-
-SimpleC2Component::~SimpleC2Component() {
- mLooper->unregisterHandler(mHandler->id());
- (void)mLooper->stop();
-}
-
-c2_status_t SimpleC2Component::setListener_vb(
- const std::shared_ptr<C2Component::Listener> &listener, c2_blocking_t mayBlock) {
- mHandler->setComponent(shared_from_this());
-
- Mutexed<ExecState>::Locked state(mExecState);
- if (state->mState == RUNNING) {
- if (listener) {
- return C2_BAD_STATE;
- } else if (!mayBlock) {
- return C2_BLOCKING;
- }
- }
- state->mListener = listener;
- // TODO: wait for listener change to have taken place before returning
- // (e.g. if there is an ongoing listener callback)
- return C2_OK;
-}
-
-c2_status_t SimpleC2Component::queue_nb(std::list<std::unique_ptr<C2Work>> * const items) {
- {
- Mutexed<ExecState>::Locked state(mExecState);
- if (state->mState != RUNNING) {
- return C2_BAD_STATE;
- }
- }
- bool queueWasEmpty = false;
- {
- Mutexed<WorkQueue>::Locked queue(mWorkQueue);
- queueWasEmpty = queue->empty();
- while (!items->empty()) {
- queue->push_back(std::move(items->front()));
- items->pop_front();
- }
- }
- if (queueWasEmpty) {
- (new AMessage(WorkHandler::kWhatProcess, mHandler))->post();
- }
- return C2_OK;
-}
-
-c2_status_t SimpleC2Component::announce_nb(const std::vector<C2WorkOutline> &items) {
- (void)items;
- return C2_OMITTED;
-}
-
-c2_status_t SimpleC2Component::flush_sm(
- flush_mode_t flushMode, std::list<std::unique_ptr<C2Work>>* const flushedWork) {
- (void)flushMode;
- {
- Mutexed<ExecState>::Locked state(mExecState);
- if (state->mState != RUNNING) {
- return C2_BAD_STATE;
- }
- }
- {
- Mutexed<WorkQueue>::Locked queue(mWorkQueue);
- queue->incGeneration();
- // TODO: queue->splicedBy(flushedWork, flushedWork->end());
- while (!queue->empty()) {
- std::unique_ptr<C2Work> work = queue->pop_front();
- if (work) {
- flushedWork->push_back(std::move(work));
- }
- }
- }
- {
- Mutexed<PendingWork>::Locked pending(mPendingWork);
- while (!pending->empty()) {
- flushedWork->push_back(std::move(pending->begin()->second));
- pending->erase(pending->begin());
- }
- }
-
- return C2_OK;
-}
-
-c2_status_t SimpleC2Component::drain_nb(drain_mode_t drainMode) {
- if (drainMode == DRAIN_CHAIN) {
- return C2_OMITTED;
- }
- {
- Mutexed<ExecState>::Locked state(mExecState);
- if (state->mState != RUNNING) {
- return C2_BAD_STATE;
- }
- }
- bool queueWasEmpty = false;
- {
- Mutexed<WorkQueue>::Locked queue(mWorkQueue);
- queueWasEmpty = queue->empty();
- queue->markDrain(drainMode);
- }
- if (queueWasEmpty) {
- (new AMessage(WorkHandler::kWhatProcess, mHandler))->post();
- }
-
- return C2_OK;
-}
-
-c2_status_t SimpleC2Component::start() {
- Mutexed<ExecState>::Locked state(mExecState);
- if (state->mState == RUNNING) {
- return C2_BAD_STATE;
- }
- bool needsInit = (state->mState == UNINITIALIZED);
- state.unlock();
- if (needsInit) {
- sp<AMessage> reply;
- (new AMessage(WorkHandler::kWhatInit, mHandler))->postAndAwaitResponse(&reply);
- int32_t err;
- CHECK(reply->findInt32("err", &err));
- if (err != C2_OK) {
- return (c2_status_t)err;
- }
- } else {
- (new AMessage(WorkHandler::kWhatStart, mHandler))->post();
- }
- state.lock();
- state->mState = RUNNING;
- return C2_OK;
-}
-
-c2_status_t SimpleC2Component::stop() {
- ALOGV("stop");
- {
- Mutexed<ExecState>::Locked state(mExecState);
- if (state->mState != RUNNING) {
- return C2_BAD_STATE;
- }
- state->mState = STOPPED;
- }
- {
- Mutexed<WorkQueue>::Locked queue(mWorkQueue);
- queue->clear();
- }
- {
- Mutexed<PendingWork>::Locked pending(mPendingWork);
- pending->clear();
- }
- sp<AMessage> reply;
- (new AMessage(WorkHandler::kWhatStop, mHandler))->postAndAwaitResponse(&reply);
- int32_t err;
- CHECK(reply->findInt32("err", &err));
- if (err != C2_OK) {
- return (c2_status_t)err;
- }
- return C2_OK;
-}
-
-c2_status_t SimpleC2Component::reset() {
- ALOGV("reset");
- {
- Mutexed<ExecState>::Locked state(mExecState);
- state->mState = UNINITIALIZED;
- }
- {
- Mutexed<WorkQueue>::Locked queue(mWorkQueue);
- queue->clear();
- }
- {
- Mutexed<PendingWork>::Locked pending(mPendingWork);
- pending->clear();
- }
- sp<AMessage> reply;
- (new AMessage(WorkHandler::kWhatReset, mHandler))->postAndAwaitResponse(&reply);
- return C2_OK;
-}
-
-c2_status_t SimpleC2Component::release() {
- ALOGV("release");
- sp<AMessage> reply;
- (new AMessage(WorkHandler::kWhatRelease, mHandler))->postAndAwaitResponse(&reply);
- return C2_OK;
-}
-
-std::shared_ptr<C2ComponentInterface> SimpleC2Component::intf() {
- return mIntf;
-}
-
-namespace {
-
-std::list<std::unique_ptr<C2Work>> vec(std::unique_ptr<C2Work> &work) {
- std::list<std::unique_ptr<C2Work>> ret;
- ret.push_back(std::move(work));
- return ret;
-}
-
-} // namespace
-
-void SimpleC2Component::finish(
- uint64_t frameIndex, std::function<void(const std::unique_ptr<C2Work> &)> fillWork) {
- std::unique_ptr<C2Work> work;
- {
- Mutexed<PendingWork>::Locked pending(mPendingWork);
- if (pending->count(frameIndex) == 0) {
- ALOGW("unknown frame index: %" PRIu64, frameIndex);
- return;
- }
- work = std::move(pending->at(frameIndex));
- pending->erase(frameIndex);
- }
- if (work) {
- fillWork(work);
- std::shared_ptr<C2Component::Listener> listener = mExecState.lock()->mListener;
- listener->onWorkDone_nb(shared_from_this(), vec(work));
- ALOGV("returning pending work");
- }
-}
-
-void SimpleC2Component::cloneAndSend(
- uint64_t frameIndex,
- const std::unique_ptr<C2Work> ¤tWork,
- std::function<void(const std::unique_ptr<C2Work> &)> fillWork) {
- std::unique_ptr<C2Work> work(new C2Work);
- if (currentWork->input.ordinal.frameIndex == frameIndex) {
- work->input.flags = currentWork->input.flags;
- work->input.ordinal = currentWork->input.ordinal;
- } else {
- Mutexed<PendingWork>::Locked pending(mPendingWork);
- if (pending->count(frameIndex) == 0) {
- ALOGW("unknown frame index: %" PRIu64, frameIndex);
- return;
- }
- work->input.flags = pending->at(frameIndex)->input.flags;
- work->input.ordinal = pending->at(frameIndex)->input.ordinal;
- }
- work->worklets.emplace_back(new C2Worklet);
- if (work) {
- fillWork(work);
- std::shared_ptr<C2Component::Listener> listener = mExecState.lock()->mListener;
- listener->onWorkDone_nb(shared_from_this(), vec(work));
- ALOGV("cloned and sending work");
- }
-}
-
-bool SimpleC2Component::processQueue() {
- std::unique_ptr<C2Work> work;
- uint64_t generation;
- int32_t drainMode;
- bool isFlushPending = false;
- bool hasQueuedWork = false;
- {
- Mutexed<WorkQueue>::Locked queue(mWorkQueue);
- if (queue->empty()) {
- return false;
- }
-
- generation = queue->generation();
- drainMode = queue->drainMode();
- isFlushPending = queue->popPendingFlush();
- work = queue->pop_front();
- hasQueuedWork = !queue->empty();
- }
- if (isFlushPending) {
- ALOGV("processing pending flush");
- c2_status_t err = onFlush_sm();
- if (err != C2_OK) {
- ALOGD("flush err: %d", err);
- // TODO: error
- }
- }
-
- if (!mOutputBlockPool) {
- c2_status_t err = [this] {
- // TODO: don't use query_vb
- C2StreamFormatConfig::output outputFormat(0u);
- std::vector<std::unique_ptr<C2Param>> params;
- c2_status_t err = intf()->query_vb(
- { &outputFormat },
- { C2PortBlockPoolsTuning::output::PARAM_TYPE },
- C2_DONT_BLOCK,
- ¶ms);
- if (err != C2_OK && err != C2_BAD_INDEX) {
- ALOGD("query err = %d", err);
- return err;
- }
- C2BlockPool::local_id_t poolId =
- outputFormat.value == C2FormatVideo
- ? C2BlockPool::BASIC_GRAPHIC
- : C2BlockPool::BASIC_LINEAR;
- if (params.size()) {
- C2PortBlockPoolsTuning::output *outputPools =
- C2PortBlockPoolsTuning::output::From(params[0].get());
- if (outputPools && outputPools->flexCount() >= 1) {
- poolId = outputPools->m.values[0];
- }
- }
-
- err = GetCodec2BlockPool(poolId, shared_from_this(), &mOutputBlockPool);
- ALOGD("Using output block pool with poolID %llu => got %llu - %d",
- (unsigned long long)poolId,
- (unsigned long long)(
- mOutputBlockPool ? mOutputBlockPool->getLocalId() : 111000111),
- err);
- return err;
- }();
- if (err != C2_OK) {
- Mutexed<ExecState>::Locked state(mExecState);
- std::shared_ptr<C2Component::Listener> listener = state->mListener;
- state.unlock();
- listener->onError_nb(shared_from_this(), err);
- return hasQueuedWork;
- }
- }
-
- if (!work) {
- c2_status_t err = drain(drainMode, mOutputBlockPool);
- if (err != C2_OK) {
- Mutexed<ExecState>::Locked state(mExecState);
- std::shared_ptr<C2Component::Listener> listener = state->mListener;
- state.unlock();
- listener->onError_nb(shared_from_this(), err);
- }
- return hasQueuedWork;
- }
-
- {
- std::vector<C2Param *> updates;
- for (const std::unique_ptr<C2Param> ¶m: work->input.configUpdate) {
- if (param) {
- updates.emplace_back(param.get());
- }
- }
- if (!updates.empty()) {
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- c2_status_t err = intf()->config_vb(updates, C2_MAY_BLOCK, &failures);
- ALOGD("applied %zu configUpdates => %s (%d)", updates.size(), asString(err), err);
- }
- }
-
- ALOGV("start processing frame #%" PRIu64, work->input.ordinal.frameIndex.peeku());
- // If input buffer list is not empty, it means we have some input to process on.
- // However, input could be a null buffer. In such case, clear the buffer list
- // before making call to process().
- if (!work->input.buffers.empty() && !work->input.buffers[0]) {
- ALOGD("Encountered null input buffer. Clearing the input buffer");
- work->input.buffers.clear();
- }
- process(work, mOutputBlockPool);
- ALOGV("processed frame #%" PRIu64, work->input.ordinal.frameIndex.peeku());
- {
- Mutexed<WorkQueue>::Locked queue(mWorkQueue);
- if (queue->generation() != generation) {
- ALOGD("work form old generation: was %" PRIu64 " now %" PRIu64,
- queue->generation(), generation);
- work->result = C2_NOT_FOUND;
- queue.unlock();
- {
- Mutexed<ExecState>::Locked state(mExecState);
- std::shared_ptr<C2Component::Listener> listener = state->mListener;
- state.unlock();
- listener->onWorkDone_nb(shared_from_this(), vec(work));
- }
- queue.lock();
- return hasQueuedWork;
- }
- }
- if (work->workletsProcessed != 0u) {
- Mutexed<ExecState>::Locked state(mExecState);
- ALOGV("returning this work");
- std::shared_ptr<C2Component::Listener> listener = state->mListener;
- state.unlock();
- listener->onWorkDone_nb(shared_from_this(), vec(work));
- } else {
- ALOGV("queue pending work");
- work->input.buffers.clear();
- std::unique_ptr<C2Work> unexpected;
- {
- Mutexed<PendingWork>::Locked pending(mPendingWork);
- uint64_t frameIndex = work->input.ordinal.frameIndex.peeku();
- if (pending->count(frameIndex) != 0) {
- unexpected = std::move(pending->at(frameIndex));
- pending->erase(frameIndex);
- }
- (void)pending->insert({ frameIndex, std::move(work) });
- }
- if (unexpected) {
- ALOGD("unexpected pending work");
- unexpected->result = C2_CORRUPTED;
- Mutexed<ExecState>::Locked state(mExecState);
- std::shared_ptr<C2Component::Listener> listener = state->mListener;
- state.unlock();
- listener->onWorkDone_nb(shared_from_this(), vec(unexpected));
- }
- }
- return hasQueuedWork;
-}
-
-std::shared_ptr<C2Buffer> SimpleC2Component::createLinearBuffer(
- const std::shared_ptr<C2LinearBlock> &block) {
- return createLinearBuffer(block, block->offset(), block->size());
-}
-
-std::shared_ptr<C2Buffer> SimpleC2Component::createLinearBuffer(
- const std::shared_ptr<C2LinearBlock> &block, size_t offset, size_t size) {
- return C2Buffer::CreateLinearBuffer(block->share(offset, size, ::C2Fence()));
-}
-
-std::shared_ptr<C2Buffer> SimpleC2Component::createGraphicBuffer(
- const std::shared_ptr<C2GraphicBlock> &block) {
- return createGraphicBuffer(block, C2Rect(block->width(), block->height()));
-}
-
-std::shared_ptr<C2Buffer> SimpleC2Component::createGraphicBuffer(
- const std::shared_ptr<C2GraphicBlock> &block, const C2Rect &crop) {
- return C2Buffer::CreateGraphicBuffer(block->share(crop, ::C2Fence()));
-}
-
-} // namespace android
diff --git a/media/codecs/base/SimpleC2Interface.cpp b/media/codecs/base/SimpleC2Interface.cpp
deleted file mode 100644
index c849a4e..0000000
--- a/media/codecs/base/SimpleC2Interface.cpp
+++ /dev/null
@@ -1,315 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "SimpleC2Interface"
-#include <utils/Log.h>
-
-// use MediaDefs here vs. MediaCodecConstants as this is not MediaCodec specific/dependent
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <SimpleC2Interface.h>
-
-namespace android {
-
-/* SimpleInterface */
-
-SimpleInterface<void>::BaseParams::BaseParams(
- const std::shared_ptr<C2ReflectorHelper> &reflector,
- C2String name,
- C2Component::kind_t kind,
- C2Component::domain_t domain,
- C2String mediaType,
- std::vector<C2String> aliases)
- : C2InterfaceHelper(reflector) {
- setDerivedInstance(this);
-
- addParameter(
- DefineParam(mName, C2_PARAMKEY_COMPONENT_NAME)
- .withConstValue(AllocSharedString<C2ComponentNameSetting>(name.c_str()))
- .build());
-
- if (aliases.size()) {
- C2String joined;
- for (const C2String &alias : aliases) {
- if (joined.length()) {
- joined += ",";
- }
- joined += alias;
- }
- addParameter(
- DefineParam(mAliases, C2_PARAMKEY_COMPONENT_ALIASES)
- .withConstValue(AllocSharedString<C2ComponentAliasesSetting>(joined.c_str()))
- .build());
- }
-
- addParameter(
- DefineParam(mKind, C2_PARAMKEY_COMPONENT_KIND)
- .withConstValue(new C2ComponentKindSetting(kind))
- .build());
-
- addParameter(
- DefineParam(mDomain, C2_PARAMKEY_COMPONENT_DOMAIN)
- .withConstValue(new C2ComponentDomainSetting(domain))
- .build());
-
- // simple interfaces have single streams
- addParameter(
- DefineParam(mInputStreamCount, C2_PARAMKEY_INPUT_STREAM_COUNT)
- .withConstValue(new C2PortStreamCountTuning::input(1))
- .build());
-
- addParameter(
- DefineParam(mOutputStreamCount, C2_PARAMKEY_OUTPUT_STREAM_COUNT)
- .withConstValue(new C2PortStreamCountTuning::output(1))
- .build());
-
- // set up buffer formats and allocators
-
- // default to linear buffers and no media type
- C2BufferData::type_t rawBufferType = C2BufferData::LINEAR;
- C2String rawMediaType;
- C2Allocator::id_t rawAllocator = C2AllocatorStore::DEFAULT_LINEAR;
- C2BlockPool::local_id_t rawPoolId = C2BlockPool::BASIC_LINEAR;
- C2BufferData::type_t codedBufferType = C2BufferData::LINEAR;
- C2Allocator::id_t codedAllocator = C2AllocatorStore::DEFAULT_LINEAR;
- C2BlockPool::local_id_t codedPoolId = C2BlockPool::BASIC_LINEAR;
-
- switch (domain) {
- case C2Component::DOMAIN_IMAGE:
- case C2Component::DOMAIN_VIDEO:
- // TODO: should we define raw image? The only difference is timestamp handling
- rawBufferType = C2BufferData::GRAPHIC;
- rawMediaType = MEDIA_MIMETYPE_VIDEO_RAW;
- rawAllocator = C2AllocatorStore::DEFAULT_GRAPHIC;
- rawPoolId = C2BlockPool::BASIC_GRAPHIC;
- break;
- case C2Component::DOMAIN_AUDIO:
- rawBufferType = C2BufferData::LINEAR;
- rawMediaType = MEDIA_MIMETYPE_AUDIO_RAW;
- rawAllocator = C2AllocatorStore::DEFAULT_LINEAR;
- rawPoolId = C2BlockPool::BASIC_LINEAR;
- break;
- default:
- break;
- }
- bool isEncoder = kind == C2Component::KIND_ENCODER;
-
- // handle raw decoders
- if (mediaType == rawMediaType) {
- codedBufferType = rawBufferType;
- codedAllocator = rawAllocator;
- codedPoolId = rawPoolId;
- }
-
- addParameter(
- DefineParam(mInputFormat, C2_PARAMKEY_INPUT_STREAM_BUFFER_TYPE)
- .withConstValue(new C2StreamBufferTypeSetting::input(
- 0u, isEncoder ? rawBufferType : codedBufferType))
- .build());
-
- addParameter(
- DefineParam(mInputMediaType, C2_PARAMKEY_INPUT_MEDIA_TYPE)
- .withConstValue(AllocSharedString<C2PortMediaTypeSetting::input>(
- isEncoder ? rawMediaType : mediaType))
- .build());
-
- addParameter(
- DefineParam(mOutputFormat, C2_PARAMKEY_OUTPUT_STREAM_BUFFER_TYPE)
- .withConstValue(new C2StreamBufferTypeSetting::output(
- 0u, isEncoder ? codedBufferType : rawBufferType))
- .build());
-
- addParameter(
- DefineParam(mOutputMediaType, C2_PARAMKEY_OUTPUT_MEDIA_TYPE)
- .withConstValue(AllocSharedString<C2PortMediaTypeSetting::output>(
- isEncoder ? mediaType : rawMediaType))
- .build());
-
- C2Allocator::id_t inputAllocators[1] = { isEncoder ? rawAllocator : codedAllocator };
- C2Allocator::id_t outputAllocators[1] = { isEncoder ? codedAllocator : rawAllocator };
- C2BlockPool::local_id_t outputPoolIds[1] = { isEncoder ? codedPoolId : rawPoolId };
-
- addParameter(
- DefineParam(mInputAllocators, C2_PARAMKEY_INPUT_ALLOCATORS)
- .withDefault(C2PortAllocatorsTuning::input::AllocShared(inputAllocators))
- .withFields({ C2F(mInputAllocators, m.values[0]).any(),
- C2F(mInputAllocators, m.values).inRange(0, 1) })
- .withSetter(Setter<C2PortAllocatorsTuning::input>::NonStrictValuesWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mOutputAllocators, C2_PARAMKEY_OUTPUT_ALLOCATORS)
- .withDefault(C2PortAllocatorsTuning::output::AllocShared(outputAllocators))
- .withFields({ C2F(mOutputAllocators, m.values[0]).any(),
- C2F(mOutputAllocators, m.values).inRange(0, 1) })
- .withSetter(Setter<C2PortAllocatorsTuning::output>::NonStrictValuesWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mOutputPoolIds, C2_PARAMKEY_OUTPUT_BLOCK_POOLS)
- .withDefault(C2PortBlockPoolsTuning::output::AllocShared(outputPoolIds))
- .withFields({ C2F(mOutputPoolIds, m.values[0]).any(),
- C2F(mOutputPoolIds, m.values).inRange(0, 1) })
- .withSetter(Setter<C2PortBlockPoolsTuning::output>::NonStrictValuesWithNoDeps)
- .build());
-
- // add stateless params
- addParameter(
- DefineParam(mSubscribedParamIndices, C2_PARAMKEY_SUBSCRIBED_PARAM_INDICES)
- .withDefault(C2SubscribedParamIndicesTuning::AllocShared(0u))
- .withFields({ C2F(mSubscribedParamIndices, m.values[0]).any(),
- C2F(mSubscribedParamIndices, m.values).any() })
- .withSetter(Setter<C2SubscribedParamIndicesTuning>::NonStrictValuesWithNoDeps)
- .build());
-
- /* TODO
-
- addParameter(
- DefineParam(mCurrentWorkOrdinal, C2_PARAMKEY_CURRENT_WORK)
- .withDefault(new C2CurrentWorkTuning())
- .withFields({ C2F(mCurrentWorkOrdinal, m.timeStamp).any(),
- C2F(mCurrentWorkOrdinal, m.frameIndex).any(),
- C2F(mCurrentWorkOrdinal, m.customOrdinal).any() })
- .withSetter(Setter<C2CurrentWorkTuning>::NonStrictValuesWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mLastInputQueuedWorkOrdinal, C2_PARAMKEY_LAST_INPUT_QUEUED)
- .withDefault(new C2LastWorkQueuedTuning::input())
- .withFields({ C2F(mLastInputQueuedWorkOrdinal, m.timeStamp).any(),
- C2F(mLastInputQueuedWorkOrdinal, m.frameIndex).any(),
- C2F(mLastInputQueuedWorkOrdinal, m.customOrdinal).any() })
- .withSetter(Setter<C2LastWorkQueuedTuning::input>::NonStrictValuesWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mLastOutputQueuedWorkOrdinal, C2_PARAMKEY_LAST_OUTPUT_QUEUED)
- .withDefault(new C2LastWorkQueuedTuning::output())
- .withFields({ C2F(mLastOutputQueuedWorkOrdinal, m.timeStamp).any(),
- C2F(mLastOutputQueuedWorkOrdinal, m.frameIndex).any(),
- C2F(mLastOutputQueuedWorkOrdinal, m.customOrdinal).any() })
- .withSetter(Setter<C2LastWorkQueuedTuning::output>::NonStrictValuesWithNoDeps)
- .build());
-
- std::shared_ptr<C2OutOfMemoryTuning> mOutOfMemory;
-
- std::shared_ptr<C2PortConfigCounterTuning::input> mInputConfigCounter;
- std::shared_ptr<C2PortConfigCounterTuning::output> mOutputConfigCounter;
- std::shared_ptr<C2ConfigCounterTuning> mDirectConfigCounter;
-
- */
-}
-
-void SimpleInterface<void>::BaseParams::noInputLatency() {
- addParameter(
- DefineParam(mRequestedInputDelay, C2_PARAMKEY_INPUT_DELAY_REQUEST)
- .withConstValue(new C2PortRequestedDelayTuning::input(0u))
- .build());
-
- addParameter(
- DefineParam(mActualInputDelay, C2_PARAMKEY_INPUT_DELAY)
- .withConstValue(new C2PortActualDelayTuning::input(0u))
- .build());
-}
-
-void SimpleInterface<void>::BaseParams::noOutputLatency() {
- addParameter(
- DefineParam(mRequestedOutputDelay, C2_PARAMKEY_OUTPUT_DELAY_REQUEST)
- .withConstValue(new C2PortRequestedDelayTuning::output(0u))
- .build());
-
- addParameter(
- DefineParam(mActualOutputDelay, C2_PARAMKEY_OUTPUT_DELAY)
- .withConstValue(new C2PortActualDelayTuning::output(0u))
- .build());
-}
-
-void SimpleInterface<void>::BaseParams::noPipelineLatency() {
- addParameter(
- DefineParam(mRequestedPipelineDelay, C2_PARAMKEY_PIPELINE_DELAY_REQUEST)
- .withConstValue(new C2RequestedPipelineDelayTuning(0u))
- .build());
-
- addParameter(
- DefineParam(mActualPipelineDelay, C2_PARAMKEY_PIPELINE_DELAY)
- .withConstValue(new C2ActualPipelineDelayTuning(0u))
- .build());
-}
-
-void SimpleInterface<void>::BaseParams::noPrivateBuffers() {
- addParameter(
- DefineParam(mPrivateAllocators, C2_PARAMKEY_PRIVATE_ALLOCATORS)
- .withConstValue(C2PrivateAllocatorsTuning::AllocShared(0u))
- .build());
-
- addParameter(
- DefineParam(mMaxPrivateBufferCount, C2_PARAMKEY_MAX_PRIVATE_BUFFER_COUNT)
- .withConstValue(C2MaxPrivateBufferCountTuning::AllocShared(0u))
- .build());
-
- addParameter(
- DefineParam(mPrivatePoolIds, C2_PARAMKEY_PRIVATE_BLOCK_POOLS)
- .withConstValue(C2PrivateBlockPoolsTuning::AllocShared(0u))
- .build());
-}
-
-void SimpleInterface<void>::BaseParams::noInputReferences() {
- addParameter(
- DefineParam(mMaxInputReferenceAge, C2_PARAMKEY_INPUT_MAX_REFERENCE_AGE)
- .withConstValue(new C2StreamMaxReferenceAgeTuning::input(0u))
- .build());
-
- addParameter(
- DefineParam(mMaxInputReferenceCount, C2_PARAMKEY_INPUT_MAX_REFERENCE_COUNT)
- .withConstValue(new C2StreamMaxReferenceCountTuning::input(0u))
- .build());
-}
-
-void SimpleInterface<void>::BaseParams::noOutputReferences() {
- addParameter(
- DefineParam(mMaxOutputReferenceAge, C2_PARAMKEY_OUTPUT_MAX_REFERENCE_AGE)
- .withConstValue(new C2StreamMaxReferenceAgeTuning::output(0u))
- .build());
-
- addParameter(
- DefineParam(mMaxOutputReferenceCount, C2_PARAMKEY_OUTPUT_MAX_REFERENCE_COUNT)
- .withConstValue(new C2StreamMaxReferenceCountTuning::output(0u))
- .build());
-}
-
-void SimpleInterface<void>::BaseParams::noTimeStretch() {
- addParameter(
- DefineParam(mTimeStretch, C2_PARAMKEY_TIME_STRETCH)
- .withConstValue(new C2ComponentTimeStretchTuning(1.f))
- .build());
-}
-
-/*
- Clients need to handle the following base params due to custom dependency.
-
- std::shared_ptr<C2ApiLevelSetting> mApiLevel;
- std::shared_ptr<C2ApiFeaturesSetting> mApiFeatures;
- std::shared_ptr<C2ComponentAttributesSetting> mAttrib;
-
- std::shared_ptr<C2PortSuggestedBufferCountTuning::input> mSuggestedInputBufferCount;
- std::shared_ptr<C2PortSuggestedBufferCountTuning::output> mSuggestedOutputBufferCount;
-
- std::shared_ptr<C2TrippedTuning> mTripped;
-
-*/
-
-} // namespace android
diff --git a/media/codecs/base/include/SimpleC2Component.h b/media/codecs/base/include/SimpleC2Component.h
deleted file mode 100644
index b3a98f4..0000000
--- a/media/codecs/base/include/SimpleC2Component.h
+++ /dev/null
@@ -1,244 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef SIMPLE_C2_COMPONENT_H_
-#define SIMPLE_C2_COMPONENT_H_
-
-#include <list>
-#include <unordered_map>
-
-#include <C2Component.h>
-
-#include <media/stagefright/foundation/AHandler.h>
-#include <media/stagefright/foundation/ALooper.h>
-#include <media/stagefright/foundation/Mutexed.h>
-
-namespace android {
-
-class SimpleC2Component
- : public C2Component, public std::enable_shared_from_this<SimpleC2Component> {
-public:
- explicit SimpleC2Component(
- const std::shared_ptr<C2ComponentInterface> &intf);
- virtual ~SimpleC2Component();
-
- // C2Component
- // From C2Component
- virtual c2_status_t setListener_vb(
- const std::shared_ptr<Listener> &listener, c2_blocking_t mayBlock) override;
- virtual c2_status_t queue_nb(std::list<std::unique_ptr<C2Work>>* const items) override;
- virtual c2_status_t announce_nb(const std::vector<C2WorkOutline> &items) override;
- virtual c2_status_t flush_sm(
- flush_mode_t mode, std::list<std::unique_ptr<C2Work>>* const flushedWork) override;
- virtual c2_status_t drain_nb(drain_mode_t mode) override;
- virtual c2_status_t start() override;
- virtual c2_status_t stop() override;
- virtual c2_status_t reset() override;
- virtual c2_status_t release() override;
- virtual std::shared_ptr<C2ComponentInterface> intf() override;
-
- // for handler
- bool processQueue();
-
-protected:
- /**
- * Initialize internal states of the component according to the config set
- * in the interface.
- *
- * This method is called during start(), but only at the first invocation or
- * after reset().
- */
- virtual c2_status_t onInit() = 0;
-
- /**
- * Stop the component.
- */
- virtual c2_status_t onStop() = 0;
-
- /**
- * Reset the component.
- */
- virtual void onReset() = 0;
-
- /**
- * Release the component.
- */
- virtual void onRelease() = 0;
-
- /**
- * Flush the component.
- */
- virtual c2_status_t onFlush_sm() = 0;
-
- /**
- * Process the given work and finish pending work using finish().
- *
- * \param[in,out] work the work to process
- * \param[in] pool the pool to use for allocating output blocks.
- */
- virtual void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) = 0;
-
- /**
- * Drain the component and finish pending work using finish().
- *
- * \param[in] drainMode mode of drain.
- * \param[in] pool the pool to use for allocating output blocks.
- *
- * \retval C2_OK The component has drained all pending output
- * work.
- * \retval C2_OMITTED Unsupported mode (e.g. DRAIN_CHAIN)
- */
- virtual c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) = 0;
-
- // for derived classes
- /**
- * Finish pending work.
- *
- * This method will retrieve the pending work according to |frameIndex| and
- * feed the work into |fillWork| function. |fillWork| must be
- * "non-blocking". Once |fillWork| returns the filled work will be returned
- * to the client.
- *
- * \param[in] frameIndex the index of the pending work
- * \param[in] fillWork the function to fill the retrieved work.
- */
- void finish(uint64_t frameIndex, std::function<void(const std::unique_ptr<C2Work> &)> fillWork);
-
- /**
- * Clone pending or current work and send the work back to client.
- *
- * This method will retrieve and clone the pending or current work according
- * to |frameIndex| and feed the work into |fillWork| function. |fillWork|
- * must be "non-blocking". Once |fillWork| returns the filled work will be
- * returned to the client.
- *
- * \param[in] frameIndex the index of the work
- * \param[in] currentWork the current work under processing
- * \param[in] fillWork the function to fill the retrieved work.
- */
- void cloneAndSend(
- uint64_t frameIndex,
- const std::unique_ptr<C2Work> ¤tWork,
- std::function<void(const std::unique_ptr<C2Work> &)> fillWork);
-
-
- std::shared_ptr<C2Buffer> createLinearBuffer(
- const std::shared_ptr<C2LinearBlock> &block);
-
- std::shared_ptr<C2Buffer> createLinearBuffer(
- const std::shared_ptr<C2LinearBlock> &block, size_t offset, size_t size);
-
- std::shared_ptr<C2Buffer> createGraphicBuffer(
- const std::shared_ptr<C2GraphicBlock> &block);
-
- std::shared_ptr<C2Buffer> createGraphicBuffer(
- const std::shared_ptr<C2GraphicBlock> &block,
- const C2Rect &crop);
-
- static constexpr uint32_t NO_DRAIN = ~0u;
-
- C2ReadView mDummyReadView;
-
-private:
- const std::shared_ptr<C2ComponentInterface> mIntf;
-
- class WorkHandler : public AHandler {
- public:
- enum {
- kWhatProcess,
- kWhatInit,
- kWhatStart,
- kWhatStop,
- kWhatReset,
- kWhatRelease,
- };
-
- WorkHandler();
- ~WorkHandler() override = default;
-
- void setComponent(const std::shared_ptr<SimpleC2Component> &thiz);
-
- protected:
- void onMessageReceived(const sp<AMessage> &msg) override;
-
- private:
- std::weak_ptr<SimpleC2Component> mThiz;
- bool mRunning;
- };
-
- enum {
- UNINITIALIZED,
- STOPPED,
- RUNNING,
- };
-
- struct ExecState {
- ExecState() : mState(UNINITIALIZED) {}
-
- int mState;
- std::shared_ptr<C2Component::Listener> mListener;
- };
- Mutexed<ExecState> mExecState;
-
- sp<ALooper> mLooper;
- sp<WorkHandler> mHandler;
-
- class WorkQueue {
- public:
- inline WorkQueue() : mFlush(false), mGeneration(0ul) {}
-
- inline uint64_t generation() const { return mGeneration; }
- inline void incGeneration() { ++mGeneration; mFlush = true; }
-
- std::unique_ptr<C2Work> pop_front();
- void push_back(std::unique_ptr<C2Work> work);
- bool empty() const;
- uint32_t drainMode() const;
- void markDrain(uint32_t drainMode);
- inline bool popPendingFlush() {
- bool flush = mFlush;
- mFlush = false;
- return flush;
- }
- void clear();
-
- private:
- struct Entry {
- std::unique_ptr<C2Work> work;
- uint32_t drainMode;
- };
-
- bool mFlush;
- uint64_t mGeneration;
- std::list<Entry> mQueue;
- };
- Mutexed<WorkQueue> mWorkQueue;
-
- typedef std::unordered_map<uint64_t, std::unique_ptr<C2Work>> PendingWork;
- Mutexed<PendingWork> mPendingWork;
-
- std::shared_ptr<C2BlockPool> mOutputBlockPool;
-
- SimpleC2Component() = delete;
-};
-
-} // namespace android
-
-#endif // SIMPLE_C2_COMPONENT_H_
diff --git a/media/codecs/base/include/SimpleC2Interface.h b/media/codecs/base/include/SimpleC2Interface.h
deleted file mode 100644
index 2051d3d..0000000
--- a/media/codecs/base/include/SimpleC2Interface.h
+++ /dev/null
@@ -1,236 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_SIMPLE_C2_INTERFACE_H_
-#define ANDROID_SIMPLE_C2_INTERFACE_H_
-
-#include <C2Component.h>
-#include <C2Config.h>
-#include <util/C2InterfaceHelper.h>
-
-namespace android {
-
-/**
- * Wrap a common interface object (such as Codec2Client::Interface, or C2InterfaceHelper into
- * a C2ComponentInterface.
- *
- * \param T common interface type
- */
-template <typename T>
-class SimpleC2Interface : public C2ComponentInterface {
-public:
- SimpleC2Interface(const char *name, c2_node_id_t id, const std::shared_ptr<T> &impl)
- : mName(name),
- mId(id),
- mImpl(impl) {
- }
-
- ~SimpleC2Interface() override = default;
-
- // From C2ComponentInterface
- C2String getName() const override { return mName; }
- c2_node_id_t getId() const override { return mId; }
- c2_status_t query_vb(
- const std::vector<C2Param*> &stackParams,
- const std::vector<C2Param::Index> &heapParamIndices,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2Param>>* const heapParams) const override {
- return mImpl->query(stackParams, heapParamIndices, mayBlock, heapParams);
- }
- c2_status_t config_vb(
- const std::vector<C2Param*> ¶ms,
- c2_blocking_t mayBlock,
- std::vector<std::unique_ptr<C2SettingResult>>* const failures) override {
- return mImpl->config(params, mayBlock, failures);
- }
- c2_status_t createTunnel_sm(c2_node_id_t) override { return C2_OMITTED; }
- c2_status_t releaseTunnel_sm(c2_node_id_t) override { return C2_OMITTED; }
- c2_status_t querySupportedParams_nb(
- std::vector<std::shared_ptr<C2ParamDescriptor>> * const params) const override {
- return mImpl->querySupportedParams(params);
- }
- c2_status_t querySupportedValues_vb(
- std::vector<C2FieldSupportedValuesQuery> &fields,
- c2_blocking_t mayBlock) const override {
- return mImpl->querySupportedValues(fields, mayBlock);
- }
-
-private:
- C2String mName;
- const c2_node_id_t mId;
- const std::shared_ptr<T> mImpl;
-};
-
-/**
- * Utility classes for common interfaces.
- */
-template<>
-class SimpleC2Interface<void> {
-public:
- /**
- * Base Codec 2.0 parameters required for all components.
- */
- struct BaseParams : C2InterfaceHelper {
- explicit BaseParams(
- const std::shared_ptr<C2ReflectorHelper> &helper,
- C2String name,
- C2Component::kind_t kind,
- C2Component::domain_t domain,
- C2String mediaType,
- std::vector<C2String> aliases = std::vector<C2String>());
-
- /// Marks that this component has no input latency. Otherwise, component must
- /// add support for C2PortRequestedDelayTuning::input and C2PortActualDelayTuning::input.
- void noInputLatency();
-
- /// Marks that this component has no output latency. Otherwise, component must
- /// add support for C2PortRequestedDelayTuning::output and C2PortActualDelayTuning::output.
- void noOutputLatency();
-
- /// Marks that this component has no pipeline latency. Otherwise, component must
- /// add support for C2RequestedPipelineDelayTuning and C2ActualPipelineDelayTuning.
- void noPipelineLatency();
-
- /// Marks that this component has no need for private buffers. Otherwise, component must
- /// add support for C2MaxPrivateBufferCountTuning, C2PrivateAllocatorsTuning and
- /// C2PrivateBlockPoolsTuning.
- void noPrivateBuffers();
-
- /// Marks that this component holds no references to input buffers. Otherwise, component
- /// must add support for C2StreamMaxReferenceAgeTuning::input and
- /// C2StreamMaxReferenceCountTuning::input.
- void noInputReferences();
-
- /// Marks that this component holds no references to output buffers. Otherwise, component
- /// must add support for C2StreamMaxReferenceAgeTuning::output and
- /// C2StreamMaxReferenceCountTuning::output.
- void noOutputReferences();
-
- /// Marks that this component does not stretch time. Otherwise, component
- /// must add support for C2ComponentTimeStretchTuning.
- void noTimeStretch();
-
- std::shared_ptr<C2ApiLevelSetting> mApiLevel;
- std::shared_ptr<C2ApiFeaturesSetting> mApiFeatures;
-
- std::shared_ptr<C2PlatformLevelSetting> mPlatformLevel;
- std::shared_ptr<C2PlatformFeaturesSetting> mPlatformFeatures;
-
- std::shared_ptr<C2ComponentNameSetting> mName;
- std::shared_ptr<C2ComponentAliasesSetting> mAliases;
- std::shared_ptr<C2ComponentKindSetting> mKind;
- std::shared_ptr<C2ComponentDomainSetting> mDomain;
- std::shared_ptr<C2ComponentAttributesSetting> mAttrib;
- std::shared_ptr<C2ComponentTimeStretchTuning> mTimeStretch;
-
- std::shared_ptr<C2PortMediaTypeSetting::input> mInputMediaType;
- std::shared_ptr<C2PortMediaTypeSetting::output> mOutputMediaType;
- std::shared_ptr<C2StreamBufferTypeSetting::input> mInputFormat;
- std::shared_ptr<C2StreamBufferTypeSetting::output> mOutputFormat;
-
- std::shared_ptr<C2PortRequestedDelayTuning::input> mRequestedInputDelay;
- std::shared_ptr<C2PortRequestedDelayTuning::output> mRequestedOutputDelay;
- std::shared_ptr<C2RequestedPipelineDelayTuning> mRequestedPipelineDelay;
-
- std::shared_ptr<C2PortActualDelayTuning::input> mActualInputDelay;
- std::shared_ptr<C2PortActualDelayTuning::output> mActualOutputDelay;
- std::shared_ptr<C2ActualPipelineDelayTuning> mActualPipelineDelay;
-
- std::shared_ptr<C2StreamMaxReferenceAgeTuning::input> mMaxInputReferenceAge;
- std::shared_ptr<C2StreamMaxReferenceCountTuning::input> mMaxInputReferenceCount;
- std::shared_ptr<C2StreamMaxReferenceAgeTuning::output> mMaxOutputReferenceAge;
- std::shared_ptr<C2StreamMaxReferenceCountTuning::output> mMaxOutputReferenceCount;
- std::shared_ptr<C2MaxPrivateBufferCountTuning> mMaxPrivateBufferCount;
-
- std::shared_ptr<C2PortStreamCountTuning::input> mInputStreamCount;
- std::shared_ptr<C2PortStreamCountTuning::output> mOutputStreamCount;
-
- std::shared_ptr<C2SubscribedParamIndicesTuning> mSubscribedParamIndices;
- std::shared_ptr<C2PortSuggestedBufferCountTuning::input> mSuggestedInputBufferCount;
- std::shared_ptr<C2PortSuggestedBufferCountTuning::output> mSuggestedOutputBufferCount;
-
- std::shared_ptr<C2CurrentWorkTuning> mCurrentWorkOrdinal;
- std::shared_ptr<C2LastWorkQueuedTuning::input> mLastInputQueuedWorkOrdinal;
- std::shared_ptr<C2LastWorkQueuedTuning::output> mLastOutputQueuedWorkOrdinal;
-
- std::shared_ptr<C2PortAllocatorsTuning::input> mInputAllocators;
- std::shared_ptr<C2PortAllocatorsTuning::output> mOutputAllocators;
- std::shared_ptr<C2PrivateAllocatorsTuning> mPrivateAllocators;
- std::shared_ptr<C2PortBlockPoolsTuning::output> mOutputPoolIds;
- std::shared_ptr<C2PrivateBlockPoolsTuning> mPrivatePoolIds;
-
- std::shared_ptr<C2TrippedTuning> mTripped;
- std::shared_ptr<C2OutOfMemoryTuning> mOutOfMemory;
-
- std::shared_ptr<C2PortConfigCounterTuning::input> mInputConfigCounter;
- std::shared_ptr<C2PortConfigCounterTuning::output> mOutputConfigCounter;
- std::shared_ptr<C2ConfigCounterTuning> mDirectConfigCounter;
- };
-};
-
-template<typename T>
-using SimpleInterface = SimpleC2Interface<T>;
-
-template<typename T, typename ...Args>
-std::shared_ptr<T> AllocSharedString(const Args(&... args), const char *str) {
- size_t len = strlen(str) + 1;
- std::shared_ptr<T> ret = T::AllocShared(len, args...);
- strcpy(ret->m.value, str);
- return ret;
-}
-
-template<typename T, typename ...Args>
-std::shared_ptr<T> AllocSharedString(const Args(&... args), const std::string &str) {
- std::shared_ptr<T> ret = T::AllocShared(str.length() + 1, args...);
- strcpy(ret->m.value, str.c_str());
- return ret;
-}
-
-template <typename T>
-struct Setter {
- typedef typename std::remove_reference<T>::type type;
-
- static C2R NonStrictValueWithNoDeps(
- bool mayBlock, C2InterfaceHelper::C2P<type> &me) {
- (void)mayBlock;
- return me.F(me.v.value).validatePossible(me.v.value);
- }
-
- static C2R NonStrictValuesWithNoDeps(
- bool mayBlock, C2InterfaceHelper::C2P<type> &me) {
- (void)mayBlock;
- C2R res = C2R::Ok();
- for (size_t ix = 0; ix < me.v.flexCount(); ++ix) {
- res.plus(me.F(me.v.m.values[ix]).validatePossible(me.v.m.values[ix]));
- }
- return res;
- }
-
- static C2R StrictValueWithNoDeps(
- bool mayBlock,
- const C2InterfaceHelper::C2P<type> &old,
- C2InterfaceHelper::C2P<type> &me) {
- (void)mayBlock;
- if (!me.F(me.v.value).supportsNow(me.v.value)) {
- me.set().value = old.v.value;
- }
- return me.F(me.v.value).validatePossible(me.v.value);
- }
-};
-
-} // namespace android
-
-#endif // ANDROID_SIMPLE_C2_INTERFACE_H_
diff --git a/media/codecs/cmds/Android.bp b/media/codecs/cmds/Android.bp
deleted file mode 100644
index 69142e8..0000000
--- a/media/codecs/cmds/Android.bp
+++ /dev/null
@@ -1,37 +0,0 @@
-cc_binary {
- name: "codec2",
- defaults: ["libstagefright_codec2-impl-defaults"],
-
- srcs: [
- "codec2.cpp",
- ],
-
- include_dirs: [
- ],
-
- shared_libs: [
- "libbase",
- "libbinder",
- "libcutils",
- "libdatasource",
- "libgui",
- "liblog",
- "libstagefright",
- "libstagefright_foundation",
- "libui",
- "libutils",
- ],
-
- cflags: [
- "-Werror",
- "-Wall",
- ],
-
- sanitize: {
- cfi: true,
- misc_undefined: [
- "unsigned-integer-overflow",
- "signed-integer-overflow",
- ],
- },
-}
diff --git a/media/codecs/cmds/codec2.cpp b/media/codecs/cmds/codec2.cpp
deleted file mode 100644
index da59810..0000000
--- a/media/codecs/cmds/codec2.cpp
+++ /dev/null
@@ -1,482 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <inttypes.h>
-#include <fcntl.h>
-#include <stdlib.h>
-#include <string.h>
-#include <sys/time.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-
-#include <thread>
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "codec2"
-#include <log/log.h>
-
-#include <binder/IServiceManager.h>
-#include <binder/ProcessState.h>
-#include <datasource/DataSourceFactory.h>
-#include <media/DataSource.h>
-#include <media/IMediaHTTPService.h>
-#include <media/MediaSource.h>
-#include <media/stagefright/foundation/ABuffer.h>
-#include <media/stagefright/foundation/ALooper.h>
-#include <media/stagefright/foundation/AMessage.h>
-#include <media/stagefright/foundation/AUtils.h>
-#include <media/stagefright/MediaDefs.h>
-#include <media/stagefright/MediaErrors.h>
-#include <media/stagefright/MediaExtractorFactory.h>
-#include <media/stagefright/MetaData.h>
-#include <media/stagefright/Utils.h>
-
-#include <gui/GLConsumer.h>
-#include <gui/IProducerListener.h>
-#include <gui/Surface.h>
-#include <gui/SurfaceComposerClient.h>
-
-#include <C2AllocatorGralloc.h>
-#include <C2Buffer.h>
-#include <C2BufferPriv.h>
-#include <C2Component.h>
-#include <C2Config.h>
-#include <C2Debug.h>
-#include <C2PlatformSupport.h>
-#include <C2Work.h>
-
-using namespace android;
-using namespace std::chrono_literals;
-
-namespace {
-
-class LinearBuffer : public C2Buffer {
-public:
- explicit LinearBuffer(const std::shared_ptr<C2LinearBlock> &block)
- : C2Buffer({ block->share(block->offset(), block->size(), ::C2Fence()) }) {}
-};
-
-class Listener;
-
-class SimplePlayer {
-public:
- SimplePlayer();
- ~SimplePlayer();
-
- void onWorkDone(std::weak_ptr<C2Component> component,
- std::list<std::unique_ptr<C2Work>> workItems);
- void onTripped(std::weak_ptr<C2Component> component,
- std::vector<std::shared_ptr<C2SettingResult>> settingResult);
- void onError(std::weak_ptr<C2Component> component, uint32_t errorCode);
-
- void play(const sp<IMediaSource> &source);
-
-private:
- typedef std::unique_lock<std::mutex> ULock;
-
- std::shared_ptr<Listener> mListener;
- std::shared_ptr<C2Component> mComponent;
-
- sp<IProducerListener> mProducerListener;
-
- std::atomic_int mLinearPoolId;
-
- std::shared_ptr<C2Allocator> mAllocIon;
- std::shared_ptr<C2BlockPool> mLinearPool;
-
- std::mutex mQueueLock;
- std::condition_variable mQueueCondition;
- std::list<std::unique_ptr<C2Work>> mWorkQueue;
-
- std::mutex mProcessedLock;
- std::condition_variable mProcessedCondition;
- std::list<std::unique_ptr<C2Work>> mProcessedWork;
-
- sp<Surface> mSurface;
- sp<SurfaceComposerClient> mComposerClient;
- sp<SurfaceControl> mControl;
-};
-
-class Listener : public C2Component::Listener {
-public:
- explicit Listener(SimplePlayer *thiz) : mThis(thiz) {}
- virtual ~Listener() = default;
-
- virtual void onWorkDone_nb(std::weak_ptr<C2Component> component,
- std::list<std::unique_ptr<C2Work>> workItems) override {
- mThis->onWorkDone(component, std::move(workItems));
- }
-
- virtual void onTripped_nb(std::weak_ptr<C2Component> component,
- std::vector<std::shared_ptr<C2SettingResult>> settingResult) override {
- mThis->onTripped(component, settingResult);
- }
-
- virtual void onError_nb(std::weak_ptr<C2Component> component,
- uint32_t errorCode) override {
- mThis->onError(component, errorCode);
- }
-
-private:
- SimplePlayer * const mThis;
-};
-
-
-SimplePlayer::SimplePlayer()
- : mListener(new Listener(this)),
- mProducerListener(new DummyProducerListener),
- mLinearPoolId(C2BlockPool::PLATFORM_START),
- mComposerClient(new SurfaceComposerClient) {
- CHECK_EQ(mComposerClient->initCheck(), (status_t)OK);
-
- std::shared_ptr<C2AllocatorStore> store = GetCodec2PlatformAllocatorStore();
- CHECK_EQ(store->fetchAllocator(C2AllocatorStore::DEFAULT_LINEAR, &mAllocIon), C2_OK);
- mLinearPool = std::make_shared<C2PooledBlockPool>(mAllocIon, mLinearPoolId++);
-
- mControl = mComposerClient->createSurface(
- String8("A Surface"),
- 1280,
- 800,
- HAL_PIXEL_FORMAT_YV12);
- //PIXEL_FORMAT_RGB_565);
-
- CHECK(mControl != nullptr);
- CHECK(mControl->isValid());
-
- SurfaceComposerClient::Transaction{}
- .setLayer(mControl, INT_MAX)
- .show(mControl)
- .apply();
-
- mSurface = mControl->getSurface();
- CHECK(mSurface != nullptr);
- mSurface->connect(NATIVE_WINDOW_API_CPU, mProducerListener);
-}
-
-SimplePlayer::~SimplePlayer() {
- mComposerClient->dispose();
-}
-
-void SimplePlayer::onWorkDone(
- std::weak_ptr<C2Component> component, std::list<std::unique_ptr<C2Work>> workItems) {
- ALOGV("SimplePlayer::onWorkDone");
- (void) component;
- ULock l(mProcessedLock);
- for (auto & item : workItems) {
- mProcessedWork.push_back(std::move(item));
- }
- mProcessedCondition.notify_all();
-}
-
-void SimplePlayer::onTripped(
- std::weak_ptr<C2Component> component,
- std::vector<std::shared_ptr<C2SettingResult>> settingResult) {
- (void) component;
- (void) settingResult;
- // TODO
-}
-
-void SimplePlayer::onError(std::weak_ptr<C2Component> component, uint32_t errorCode) {
- (void) component;
- (void) errorCode;
- // TODO
-}
-
-void SimplePlayer::play(const sp<IMediaSource> &source) {
- ALOGV("SimplePlayer::play");
- sp<AMessage> format;
- (void) convertMetaDataToMessage(source->getFormat(), &format);
-
- sp<ABuffer> csd0, csd1;
- format->findBuffer("csd-0", &csd0);
- format->findBuffer("csd-1", &csd1);
-
- status_t err = source->start();
-
- if (err != OK) {
- fprintf(stderr, "source returned error %d (0x%08x)\n", err, err);
- return;
- }
-
- std::shared_ptr<C2ComponentStore> store = GetCodec2PlatformComponentStore();
- std::shared_ptr<C2Component> component;
- (void)store->createComponent("c2.android.avc.decoder", &component);
-
- (void)component->setListener_vb(mListener, C2_DONT_BLOCK);
- std::unique_ptr<C2PortBlockPoolsTuning::output> pools =
- C2PortBlockPoolsTuning::output::AllocUnique({ (uint64_t)C2BlockPool::BASIC_GRAPHIC });
- std::vector<std::unique_ptr<C2SettingResult>> result;
- (void)component->intf()->config_vb({pools.get()}, C2_DONT_BLOCK, &result);
- component->start();
-
- for (int i = 0; i < 8; ++i) {
- mWorkQueue.emplace_back(new C2Work);
- }
-
- std::atomic_bool running(true);
- std::thread surfaceThread([this, &running]() {
- const sp<IGraphicBufferProducer> &igbp = mSurface->getIGraphicBufferProducer();
- while (running) {
- std::unique_ptr<C2Work> work;
- {
- ULock l(mProcessedLock);
- if (mProcessedWork.empty()) {
- mProcessedCondition.wait_for(l, 100ms);
- if (mProcessedWork.empty()) {
- continue;
- }
- }
- work.swap(mProcessedWork.front());
- mProcessedWork.pop_front();
- }
- int slot;
- sp<Fence> fence;
- ALOGV("Render: Frame #%lld", work->worklets.front()->output.ordinal.frameIndex.peekll());
- const std::shared_ptr<C2Buffer> &output = work->worklets.front()->output.buffers[0];
- if (output) {
- const C2ConstGraphicBlock block = output->data().graphicBlocks().front();
- native_handle_t *grallocHandle = UnwrapNativeCodec2GrallocHandle(block.handle());
- sp<GraphicBuffer> buffer(new GraphicBuffer(
- grallocHandle,
- GraphicBuffer::CLONE_HANDLE,
- block.width(),
- block.height(),
- HAL_PIXEL_FORMAT_YV12,
- 1,
- (uint64_t)GRALLOC_USAGE_SW_READ_OFTEN | GRALLOC_USAGE_SW_WRITE_OFTEN,
- block.width()));
- native_handle_delete(grallocHandle);
-
- status_t err = igbp->attachBuffer(&slot, buffer);
-
- IGraphicBufferProducer::QueueBufferInput qbi(
- (work->worklets.front()->output.ordinal.timestamp * 1000ll).peekll(),
- false,
- HAL_DATASPACE_UNKNOWN,
- Rect(block.width(), block.height()),
- NATIVE_WINDOW_SCALING_MODE_SCALE_TO_WINDOW,
- 0,
- Fence::NO_FENCE,
- 0);
- IGraphicBufferProducer::QueueBufferOutput qbo;
- err = igbp->queueBuffer(slot, qbi, &qbo);
- }
-
- work->input.buffers.clear();
- work->worklets.clear();
-
- ULock l(mQueueLock);
- mWorkQueue.push_back(std::move(work));
- mQueueCondition.notify_all();
- }
- ALOGV("render loop finished");
- });
-
- long numFrames = 0;
- mLinearPool.reset(new C2PooledBlockPool(mAllocIon, mLinearPoolId++));
-
- for (;;) {
- size_t size = 0u;
- void *data = nullptr;
- int64_t timestamp = 0u;
- MediaBufferBase *buffer = nullptr;
- sp<ABuffer> csd;
- if (csd0 != nullptr) {
- csd = csd0;
- csd0 = nullptr;
- } else if (csd1 != nullptr) {
- csd = csd1;
- csd1 = nullptr;
- } else {
- status_t err = source->read(&buffer);
- if (err != OK) {
- CHECK(buffer == nullptr);
-
- if (err == INFO_FORMAT_CHANGED) {
- continue;
- }
-
- break;
- }
- MetaDataBase &meta = buffer->meta_data();
- CHECK(meta.findInt64(kKeyTime, ×tamp));
-
- size = buffer->size();
- data = buffer->data();
- }
-
- if (csd != nullptr) {
- size = csd->size();
- data = csd->data();
- }
-
- // Prepare C2Work
-
- std::unique_ptr<C2Work> work;
- while (!work) {
- ULock l(mQueueLock);
- if (!mWorkQueue.empty()) {
- work.swap(mWorkQueue.front());
- mWorkQueue.pop_front();
- } else {
- mQueueCondition.wait_for(l, 100ms);
- }
- }
- work->input.flags = (C2FrameData::flags_t)0;
- work->input.ordinal.timestamp = timestamp;
- work->input.ordinal.frameIndex = numFrames;
-
- std::shared_ptr<C2LinearBlock> block;
- mLinearPool->fetchLinearBlock(
- size,
- { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE },
- &block);
- C2WriteView view = block->map().get();
- if (view.error() != C2_OK) {
- fprintf(stderr, "C2LinearBlock::map() failed : %d", view.error());
- break;
- }
- memcpy(view.base(), data, size);
-
- work->input.buffers.clear();
- work->input.buffers.emplace_back(new LinearBuffer(block));
- work->worklets.clear();
- work->worklets.emplace_back(new C2Worklet);
-
- std::list<std::unique_ptr<C2Work>> items;
- items.push_back(std::move(work));
-
- ALOGV("Frame #%ld size = %zu", numFrames, size);
- // DO THE DECODING
- component->queue_nb(&items);
-
- if (buffer) {
- buffer->release();
- buffer = nullptr;
- }
-
- ++numFrames;
- }
- ALOGV("main loop finished");
- source->stop();
- running.store(false);
- surfaceThread.join();
-
- component->release();
- printf("\n");
-}
-
-} // namespace
-
-static void usage(const char *me) {
- fprintf(stderr, "usage: %s [options] [input_filename]\n", me);
- fprintf(stderr, " -h(elp)\n");
-}
-
-int main(int argc, char **argv) {
- android::ProcessState::self()->startThreadPool();
-
- int res;
- while ((res = getopt(argc, argv, "h")) >= 0) {
- switch (res) {
- case 'h':
- default:
- {
- usage(argv[0]);
- exit(1);
- break;
- }
- }
- }
-
- argc -= optind;
- argv += optind;
-
- if (argc < 1) {
- fprintf(stderr, "No input file specified\n");
- return 1;
- }
-
- status_t err = OK;
- SimplePlayer player;
-
- for (int k = 0; k < argc && err == OK; ++k) {
- const char *filename = argv[k];
-
- sp<DataSource> dataSource =
- DataSourceFactory::getInstance()->CreateFromURI(nullptr /* httpService */, filename);
-
- if (strncasecmp(filename, "sine:", 5) && dataSource == nullptr) {
- fprintf(stderr, "Unable to create data source.\n");
- return 1;
- }
-
- Vector<sp<IMediaSource> > mediaSources;
- sp<IMediaSource> mediaSource;
-
- sp<IMediaExtractor> extractor = MediaExtractorFactory::Create(dataSource);
-
- if (extractor == nullptr) {
- fprintf(stderr, "could not create extractor.\n");
- return -1;
- }
-
- sp<MetaData> meta = extractor->getMetaData();
-
- if (meta != nullptr) {
- const char *mime;
- if (!meta->findCString(kKeyMIMEType, &mime)) {
- fprintf(stderr, "extractor did not provide MIME type.\n");
- return -1;
- }
- }
-
- size_t numTracks = extractor->countTracks();
-
- size_t i;
- for (i = 0; i < numTracks; ++i) {
- meta = extractor->getTrackMetaData(i, 0);
-
- if (meta == nullptr) {
- break;
- }
- const char *mime;
- meta->findCString(kKeyMIMEType, &mime);
-
- // TODO: allowing AVC only for the time being
- if (!strncasecmp(mime, "video/avc", 9)) {
- break;
- }
-
- meta = nullptr;
- }
-
- if (meta == nullptr) {
- fprintf(stderr, "No AVC track found.\n");
- return -1;
- }
-
- mediaSource = extractor->getTrack(i);
- if (mediaSource == nullptr) {
- fprintf(stderr, "skip NULL track %zu, total tracks %zu.\n", i, numTracks);
- return -1;
- }
-
- player.play(mediaSource);
- }
-
- return 0;
-}
diff --git a/media/codecs/flac/Android.bp b/media/codecs/flac/Android.bp
deleted file mode 100644
index 32c3b36..0000000
--- a/media/codecs/flac/Android.bp
+++ /dev/null
@@ -1,27 +0,0 @@
-cc_library_shared {
- name: "libstagefright_soft_c2flacdec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- header_libs: ["libFLAC-headers"],
-
- srcs: ["C2SoftFlacDec.cpp"],
-
- shared_libs: [
- "libstagefright_flacdec",
- ],
-}
-
-cc_library_shared {
- name: "libstagefright_soft_c2flacenc",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: ["C2SoftFlacEnc.cpp"],
-
- static_libs: ["libFLAC"],
-}
diff --git a/media/codecs/flac/C2SoftFlacDec.cpp b/media/codecs/flac/C2SoftFlacDec.cpp
deleted file mode 100644
index f1e2f51..0000000
--- a/media/codecs/flac/C2SoftFlacDec.cpp
+++ /dev/null
@@ -1,372 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftFlacDec"
-#include <log/log.h>
-
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <C2PlatformSupport.h>
-#include <SimpleC2Interface.h>
-
-#include "C2SoftFlacDec.h"
-
-namespace android {
-
-constexpr char COMPONENT_NAME[] = "c2.android.flac.decoder";
-
-class C2SoftFlacDec::IntfImpl : public C2InterfaceHelper {
-public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper> &helper)
- : C2InterfaceHelper(helper) {
-
- setDerivedInstance(this);
-
- addParameter(
- DefineParam(mInputFormat, C2_NAME_INPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::input(0u, C2FormatCompressed))
- .build());
-
- addParameter(
- DefineParam(mOutputFormat, C2_NAME_OUTPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::output(0u, C2FormatAudio))
- .build());
-
- addParameter(
- DefineParam(mInputMediaType, C2_NAME_INPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::input>(
- MEDIA_MIMETYPE_AUDIO_FLAC))
- .build());
-
- addParameter(
- DefineParam(mOutputMediaType, C2_NAME_OUTPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::output>(
- MEDIA_MIMETYPE_AUDIO_RAW))
- .build());
-
- addParameter(
- DefineParam(mSampleRate, C2_NAME_STREAM_SAMPLE_RATE_SETTING)
- .withDefault(new C2StreamSampleRateInfo::output(0u, 44100))
- .withFields({C2F(mSampleRate, value).inRange(1, 655350)})
- .withSetter((Setter<decltype(*mSampleRate)>::StrictValueWithNoDeps))
- .build());
-
- addParameter(
- DefineParam(mChannelCount, C2_NAME_STREAM_CHANNEL_COUNT_SETTING)
- .withDefault(new C2StreamChannelCountInfo::output(0u, 1))
- .withFields({C2F(mChannelCount, value).inRange(1, 8)})
- .withSetter(Setter<decltype(*mChannelCount)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mBitrate, C2_NAME_STREAM_BITRATE_SETTING)
- .withDefault(new C2BitrateTuning::input(0u, 768000))
- .withFields({C2F(mBitrate, value).inRange(1, 21000000)})
- .withSetter(Setter<decltype(*mBitrate)>::NonStrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mInputMaxBufSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
- .withConstValue(new C2StreamMaxBufferSizeInfo::input(0u, 32768))
- .build());
- }
-
-private:
- std::shared_ptr<C2StreamFormatConfig::input> mInputFormat;
- std::shared_ptr<C2StreamFormatConfig::output> mOutputFormat;
- std::shared_ptr<C2PortMimeConfig::input> mInputMediaType;
- std::shared_ptr<C2PortMimeConfig::output> mOutputMediaType;
- std::shared_ptr<C2StreamSampleRateInfo::output> mSampleRate;
- std::shared_ptr<C2StreamChannelCountInfo::output> mChannelCount;
- std::shared_ptr<C2BitrateTuning::input> mBitrate;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mInputMaxBufSize;
-};
-
-C2SoftFlacDec::C2SoftFlacDec(
- const char *name,
- c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl)
- : SimpleC2Component(std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mFLACDecoder(nullptr) {
-}
-
-C2SoftFlacDec::~C2SoftFlacDec() {
- onRelease();
-}
-
-c2_status_t C2SoftFlacDec::onInit() {
- status_t err = initDecoder();
- return err == OK ? C2_OK : C2_NO_MEMORY;
-}
-
-c2_status_t C2SoftFlacDec::onStop() {
- if (mFLACDecoder) mFLACDecoder->flush();
- memset(&mStreamInfo, 0, sizeof(mStreamInfo));
- mHasStreamInfo = false;
- mSignalledError = false;
- mSignalledOutputEos = false;
- return C2_OK;
-}
-
-void C2SoftFlacDec::onReset() {
- mInputBufferCount = 0;
- (void)onStop();
-}
-
-void C2SoftFlacDec::onRelease() {
- mInputBufferCount = 0;
- if (mFLACDecoder) delete mFLACDecoder;
- mFLACDecoder = nullptr;
-}
-
-c2_status_t C2SoftFlacDec::onFlush_sm() {
- return onStop();
-}
-
-status_t C2SoftFlacDec::initDecoder() {
- if (mFLACDecoder) {
- delete mFLACDecoder;
- }
- mFLACDecoder = FLACDecoder::Create();
- if (!mFLACDecoder) {
- ALOGE("initDecoder: failed to create FLACDecoder");
- mSignalledError = true;
- return NO_MEMORY;
- }
-
- memset(&mStreamInfo, 0, sizeof(mStreamInfo));
- mHasStreamInfo = false;
- mSignalledError = false;
- mSignalledOutputEos = false;
- mInputBufferCount = 0;
-
- return OK;
-}
-
-static void fillEmptyWork(const std::unique_ptr<C2Work> &work) {
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
-}
-
-// (TODO) add multiframe support, in plugin and FLACDecoder.cpp
-void C2SoftFlacDec::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 1u;
- work->worklets.front()->output.configUpdate.clear();
- work->worklets.front()->output.flags = work->input.flags;
-
- if (mSignalledError || mSignalledOutputEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
-
- C2ReadView rView = mDummyReadView;
- size_t inOffset = 0u;
- size_t inSize = 0u;
- if (!work->input.buffers.empty()) {
- rView = work->input.buffers[0]->data().linearBlocks().front().map().get();
- inSize = rView.capacity();
- if (inSize && rView.error()) {
- ALOGE("read view map failed %d", rView.error());
- work->result = C2_CORRUPTED;
- return;
- }
- }
- bool eos = (work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0;
- bool codecConfig = (work->input.flags & C2FrameData::FLAG_CODEC_CONFIG) != 0;
-
- ALOGV("in buffer attr. size %zu timestamp %d frameindex %d", inSize,
- (int)work->input.ordinal.timestamp.peeku(), (int)work->input.ordinal.frameIndex.peeku());
-
- if (inSize == 0) {
- fillEmptyWork(work);
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- }
- return;
- }
-
- if (mInputBufferCount == 0 && !codecConfig) {
- ALOGV("First frame has to include configuration, forcing config");
- codecConfig = true;
- }
-
- uint8_t *input = const_cast<uint8_t *>(rView.data() + inOffset);
- if (codecConfig) {
- status_t decoderErr = mFLACDecoder->parseMetadata(input, inSize);
- if (decoderErr != OK && decoderErr != WOULD_BLOCK) {
- ALOGE("process: FLACDecoder parseMetaData returns error %d", decoderErr);
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
-
- mInputBufferCount++;
- fillEmptyWork(work);
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- }
-
- if (decoderErr == WOULD_BLOCK) {
- ALOGV("process: parseMetadata is Blocking, Continue %d", decoderErr);
- } else {
- mStreamInfo = mFLACDecoder->getStreamInfo();
- if (mStreamInfo.sample_rate && mStreamInfo.max_blocksize &&
- mStreamInfo.channels) {
- mHasStreamInfo = true;
- C2StreamSampleRateInfo::output sampleRateInfo(
- 0u, mStreamInfo.sample_rate);
- C2StreamChannelCountInfo::output channelCountInfo(
- 0u, mStreamInfo.channels);
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- c2_status_t err =
- mIntf->config({&sampleRateInfo, &channelCountInfo},
- C2_MAY_BLOCK, &failures);
- if (err == OK) {
- work->worklets.front()->output.configUpdate.push_back(
- C2Param::Copy(sampleRateInfo));
- work->worklets.front()->output.configUpdate.push_back(
- C2Param::Copy(channelCountInfo));
- } else {
- ALOGE("Config Update failed");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- }
- ALOGD("process: decoder configuration : %d Hz, %d channels, %d samples,"
- " %d block size", mStreamInfo.sample_rate, mStreamInfo.channels,
- (int)mStreamInfo.total_samples, mStreamInfo.max_blocksize);
- }
- return;
- }
-
- size_t outSize;
- if (mHasStreamInfo)
- outSize = mStreamInfo.max_blocksize * mStreamInfo.channels * sizeof(short);
- else
- outSize = kMaxBlockSize * FLACDecoder::kMaxChannels * sizeof(short);
-
- std::shared_ptr<C2LinearBlock> block;
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- c2_status_t err = pool->fetchLinearBlock(outSize, usage, &block);
- if (err != C2_OK) {
- ALOGE("fetchLinearBlock for Output failed with status %d", err);
- work->result = C2_NO_MEMORY;
- return;
- }
- C2WriteView wView = block->map().get();
- if (wView.error()) {
- ALOGE("write view map failed %d", wView.error());
- work->result = C2_CORRUPTED;
- return;
- }
-
- short *output = reinterpret_cast<short *>(wView.data());
- status_t decoderErr = mFLACDecoder->decodeOneFrame(
- input, inSize, output, &outSize);
- if (decoderErr != OK) {
- ALOGE("process: FLACDecoder decodeOneFrame returns error %d", decoderErr);
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
-
- mInputBufferCount++;
- ALOGV("out buffer attr. size %zu", outSize);
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.buffers.push_back(createLinearBuffer(block, 0, outSize));
- work->worklets.front()->output.ordinal = work->input.ordinal;
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- }
-}
-
-c2_status_t C2SoftFlacDec::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- (void) pool;
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
-
- if (mFLACDecoder) mFLACDecoder->flush();
-
- return C2_OK;
-}
-
-class C2SoftFlacDecFactory : public C2ComponentFactory {
-public:
- C2SoftFlacDecFactory() : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {
- }
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftFlacDec(COMPONENT_NAME,
- id,
- std::make_shared<C2SoftFlacDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftFlacDec::IntfImpl>(
- COMPONENT_NAME, id, std::make_shared<C2SoftFlacDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftFlacDecFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftFlacDecFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/flac/C2SoftFlacDec.h b/media/codecs/flac/C2SoftFlacDec.h
deleted file mode 100644
index b491bfd..0000000
--- a/media/codecs/flac/C2SoftFlacDec.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_FLAC_DEC_H_
-#define ANDROID_C2_SOFT_FLAC_DEC_H_
-
-#include <SimpleC2Component.h>
-
-#include "FLACDecoder.h"
-
-namespace android {
-
-struct C2SoftFlacDec : public SimpleC2Component {
- class IntfImpl;
-
- C2SoftFlacDec(const char *name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl);
- virtual ~C2SoftFlacDec();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
-
-private:
- enum {
- kMaxBlockSize = 4096
- };
-
- std::shared_ptr<IntfImpl> mIntf;
- FLACDecoder *mFLACDecoder;
- FLAC__StreamMetadata_StreamInfo mStreamInfo;
- bool mSignalledError;
- bool mSignalledOutputEos;
- bool mHasStreamInfo;
- size_t mInputBufferCount;
-
- status_t initDecoder();
-
- C2_DO_NOT_COPY(C2SoftFlacDec);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_FLAC_DEC_H_
diff --git a/media/codecs/flac/C2SoftFlacEnc.cpp b/media/codecs/flac/C2SoftFlacEnc.cpp
deleted file mode 100644
index e4192c7..0000000
--- a/media/codecs/flac/C2SoftFlacEnc.cpp
+++ /dev/null
@@ -1,460 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftFlacEnc"
-#include <log/log.h>
-
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <C2PlatformSupport.h>
-#include <SimpleC2Interface.h>
-
-#include "C2SoftFlacEnc.h"
-
-namespace android {
-
-class C2SoftFlacEnc::IntfImpl : public C2InterfaceHelper {
-public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper> &helper)
- : C2InterfaceHelper(helper) {
- setDerivedInstance(this);
- addParameter(
- DefineParam(mInputFormat, C2_NAME_INPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::input(0u, C2FormatAudio))
- .build());
- addParameter(
- DefineParam(mOutputFormat, C2_NAME_OUTPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::output(0u, C2FormatCompressed))
- .build());
- addParameter(
- DefineParam(mInputMediaType, C2_NAME_INPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::input>(
- MEDIA_MIMETYPE_AUDIO_RAW))
- .build());
- addParameter(
- DefineParam(mOutputMediaType, C2_NAME_OUTPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::output>(
- MEDIA_MIMETYPE_AUDIO_FLAC))
- .build());
- addParameter(
- DefineParam(mSampleRate, C2_NAME_STREAM_SAMPLE_RATE_SETTING)
- .withDefault(new C2StreamSampleRateInfo::input(0u, 44100))
- .withFields({C2F(mSampleRate, value).inRange(1, 655350)})
- .withSetter((Setter<decltype(*mSampleRate)>::StrictValueWithNoDeps))
- .build());
- addParameter(
- DefineParam(mChannelCount, C2_NAME_STREAM_CHANNEL_COUNT_SETTING)
- .withDefault(new C2StreamChannelCountInfo::input(0u, 1))
- .withFields({C2F(mChannelCount, value).inRange(1, 2)})
- .withSetter(Setter<decltype(*mChannelCount)>::StrictValueWithNoDeps)
- .build());
- addParameter(
- DefineParam(mBitrate, C2_NAME_STREAM_BITRATE_SETTING)
- .withDefault(new C2BitrateTuning::output(0u, 768000))
- .withFields({C2F(mBitrate, value).inRange(1, 21000000)})
- .withSetter(Setter<decltype(*mBitrate)>::NonStrictValueWithNoDeps)
- .build());
- addParameter(
- DefineParam(mInputMaxBufSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
- .withConstValue(new C2StreamMaxBufferSizeInfo::input(0u, 4608))
- .build());
- }
-
- uint32_t getSampleRate() const { return mSampleRate->value; }
- uint32_t getChannelCount() const { return mChannelCount->value; }
- uint32_t getBitrate() const { return mBitrate->value; }
-
-private:
- std::shared_ptr<C2StreamFormatConfig::input> mInputFormat;
- std::shared_ptr<C2StreamFormatConfig::output> mOutputFormat;
- std::shared_ptr<C2PortMimeConfig::input> mInputMediaType;
- std::shared_ptr<C2PortMimeConfig::output> mOutputMediaType;
- std::shared_ptr<C2StreamSampleRateInfo::input> mSampleRate;
- std::shared_ptr<C2StreamChannelCountInfo::input> mChannelCount;
- std::shared_ptr<C2BitrateTuning::output> mBitrate;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mInputMaxBufSize;
-};
-constexpr char COMPONENT_NAME[] = "c2.android.flac.encoder";
-
-C2SoftFlacEnc::C2SoftFlacEnc(
- const char *name,
- c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl)
- : SimpleC2Component(std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mFlacStreamEncoder(nullptr),
- mInputBufferPcm32(nullptr) {
-}
-
-C2SoftFlacEnc::~C2SoftFlacEnc() {
- onRelease();
-}
-
-c2_status_t C2SoftFlacEnc::onInit() {
- mFlacStreamEncoder = FLAC__stream_encoder_new();
- if (!mFlacStreamEncoder) return C2_CORRUPTED;
-
- mInputBufferPcm32 = (FLAC__int32*) malloc(
- kInBlockSize * kMaxNumChannels * sizeof(FLAC__int32));
- if (!mInputBufferPcm32) return C2_NO_MEMORY;
-
- mSignalledError = false;
- mSignalledOutputEos = false;
- mCompressionLevel = FLAC_COMPRESSION_LEVEL_DEFAULT;
- mIsFirstFrame = true;
- mAnchorTimeStamp = 0ull;
- mProcessedSamples = 0u;
- mEncoderWriteData = false;
- mEncoderReturnedNbBytes = 0;
- mHeaderOffset = 0;
- mWroteHeader = false;
-
- status_t err = configureEncoder();
- return err == OK ? C2_OK : C2_CORRUPTED;
-}
-
-void C2SoftFlacEnc::onRelease() {
- if (mFlacStreamEncoder) {
- FLAC__stream_encoder_delete(mFlacStreamEncoder);
- mFlacStreamEncoder = nullptr;
- }
-
- if (mInputBufferPcm32) {
- free(mInputBufferPcm32);
- mInputBufferPcm32 = nullptr;
- }
-}
-
-void C2SoftFlacEnc::onReset() {
- mCompressionLevel = FLAC_COMPRESSION_LEVEL_DEFAULT;
- (void) onStop();
-}
-
-c2_status_t C2SoftFlacEnc::onStop() {
- mSignalledError = false;
- mSignalledOutputEos = false;
- mIsFirstFrame = true;
- mAnchorTimeStamp = 0ull;
- mProcessedSamples = 0u;
- mEncoderWriteData = false;
- mEncoderReturnedNbBytes = 0;
- mHeaderOffset = 0;
- mWroteHeader = false;
-
- c2_status_t status = drain(DRAIN_COMPONENT_NO_EOS, nullptr);
- if (C2_OK != status) return status;
-
- status_t err = configureEncoder();
- if (err != OK) mSignalledError = true;
- return C2_OK;
-}
-
-c2_status_t C2SoftFlacEnc::onFlush_sm() {
- return onStop();
-}
-
-static void fillEmptyWork(const std::unique_ptr<C2Work> &work) {
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
-}
-
-void C2SoftFlacEnc::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 1u;
- work->worklets.front()->output.flags = work->input.flags;
-
- if (mSignalledError || mSignalledOutputEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
-
- bool eos = ((work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0);
- C2ReadView rView = mDummyReadView;
- size_t inOffset = 0u;
- size_t inSize = 0u;
- if (!work->input.buffers.empty()) {
- rView = work->input.buffers[0]->data().linearBlocks().front().map().get();
- inSize = rView.capacity();
- if (inSize && rView.error()) {
- ALOGE("read view map failed %d", rView.error());
- work->result = C2_CORRUPTED;
- return;
- }
- }
-
- ALOGV("in buffer attr. size %zu timestamp %d frameindex %d, flags %x",
- inSize, (int)work->input.ordinal.timestamp.peeku(),
- (int)work->input.ordinal.frameIndex.peeku(), work->input.flags);
- if (mIsFirstFrame && inSize) {
- mAnchorTimeStamp = work->input.ordinal.timestamp.peekull();
- mIsFirstFrame = false;
- }
-
- if (!mWroteHeader) {
- std::unique_ptr<C2StreamCsdInfo::output> csd =
- C2StreamCsdInfo::output::AllocUnique(mHeaderOffset, 0u);
- if (!csd) {
- ALOGE("CSD allocation failed");
- mSignalledError = true;
- work->result = C2_NO_MEMORY;
- return;
- }
- memcpy(csd->m.value, mHeader, mHeaderOffset);
- ALOGV("put csd, %d bytes", mHeaderOffset);
-
- work->worklets.front()->output.configUpdate.push_back(std::move(csd));
- mWroteHeader = true;
- }
-
- uint32_t sampleRate = mIntf->getSampleRate();
- uint32_t channelCount = mIntf->getChannelCount();
- uint64_t outTimeStamp = mProcessedSamples * 1000000ll / sampleRate;
-
- size_t outCapacity = inSize;
- outCapacity += mBlockSize * channelCount * sizeof(int16_t);
-
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- c2_status_t err = pool->fetchLinearBlock(outCapacity, usage, &mOutputBlock);
- if (err != C2_OK) {
- ALOGE("fetchLinearBlock for Output failed with status %d", err);
- work->result = C2_NO_MEMORY;
- return;
- }
- C2WriteView wView = mOutputBlock->map().get();
- if (wView.error()) {
- ALOGE("write view map failed %d", wView.error());
- work->result = C2_CORRUPTED;
- return;
- }
-
- mEncoderWriteData = true;
- mEncoderReturnedNbBytes = 0;
- size_t inPos = 0;
- while (inPos < inSize) {
- const uint8_t *inPtr = rView.data() + inOffset;
- size_t processSize = MIN(kInBlockSize * channelCount * sizeof(int16_t), (inSize - inPos));
- const unsigned nbInputFrames = processSize / (channelCount * sizeof(int16_t));
- const unsigned nbInputSamples = processSize / sizeof(int16_t);
- const int16_t *pcm16 = reinterpret_cast<const int16_t *>(inPtr + inPos);
- ALOGV("about to encode %zu bytes", processSize);
-
- for (unsigned i = 0; i < nbInputSamples; i++) {
- mInputBufferPcm32[i] = (FLAC__int32) pcm16[i];
- }
-
- FLAC__bool ok = FLAC__stream_encoder_process_interleaved(
- mFlacStreamEncoder, mInputBufferPcm32, nbInputFrames);
- if (!ok) {
- ALOGE("error encountered during encoding");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- mOutputBlock.reset();
- return;
- }
- inPos += processSize;
- }
- if (eos && (C2_OK != drain(DRAIN_COMPONENT_WITH_EOS, pool))) {
- ALOGE("error encountered during encoding");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- mOutputBlock.reset();
- return;
- }
- fillEmptyWork(work);
- if (mEncoderReturnedNbBytes != 0) {
- std::shared_ptr<C2Buffer> buffer = createLinearBuffer(std::move(mOutputBlock), 0, mEncoderReturnedNbBytes);
- work->worklets.front()->output.buffers.push_back(buffer);
- work->worklets.front()->output.ordinal.timestamp = mAnchorTimeStamp + outTimeStamp;
- } else {
- ALOGV("encoder process_interleaved returned without data to write");
- }
- mOutputBlock = nullptr;
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- }
- mEncoderWriteData = false;
- mEncoderReturnedNbBytes = 0;
-}
-
-FLAC__StreamEncoderWriteStatus C2SoftFlacEnc::onEncodedFlacAvailable(
- const FLAC__byte buffer[], size_t bytes, unsigned samples,
- unsigned current_frame) {
- (void) current_frame;
- ALOGV("%s (bytes=%zu, samples=%u, curr_frame=%u)", __func__, bytes, samples,
- current_frame);
-
- if (samples == 0) {
- ALOGI("saving %zu bytes of header", bytes);
- memcpy(mHeader + mHeaderOffset, buffer, bytes);
- mHeaderOffset += bytes;// will contain header size when finished receiving header
- return FLAC__STREAM_ENCODER_WRITE_STATUS_OK;
- }
-
- if ((samples == 0) || !mEncoderWriteData) {
- // called by the encoder because there's header data to save, but it's not the role
- // of this component (unless WRITE_FLAC_HEADER_IN_FIRST_BUFFER is defined)
- ALOGV("ignoring %zu bytes of header data (samples=%d)", bytes, samples);
- return FLAC__STREAM_ENCODER_WRITE_STATUS_OK;
- }
-
- // write encoded data
- C2WriteView wView = mOutputBlock->map().get();
- uint8_t* outData = wView.data();
- ALOGV("writing %zu bytes of encoded data on output", bytes);
- // increment mProcessedSamples to maintain audio synchronization during
- // play back
- mProcessedSamples += samples;
- if (bytes + mEncoderReturnedNbBytes > mOutputBlock->capacity()) {
- ALOGE("not enough space left to write encoded data, dropping %zu bytes", bytes);
- // a fatal error would stop the encoding
- return FLAC__STREAM_ENCODER_WRITE_STATUS_OK;
- }
- memcpy(outData + mEncoderReturnedNbBytes, buffer, bytes);
- mEncoderReturnedNbBytes += bytes;
- return FLAC__STREAM_ENCODER_WRITE_STATUS_OK;
-}
-
-
-status_t C2SoftFlacEnc::configureEncoder() {
- ALOGV("%s numChannel=%d, sampleRate=%d", __func__, mIntf->getChannelCount(), mIntf->getSampleRate());
-
- if (mSignalledError || !mFlacStreamEncoder) {
- ALOGE("can't configure encoder: no encoder or invalid state");
- return UNKNOWN_ERROR;
- }
-
- FLAC__bool ok = true;
- ok = ok && FLAC__stream_encoder_set_channels(mFlacStreamEncoder, mIntf->getChannelCount());
- ok = ok && FLAC__stream_encoder_set_sample_rate(mFlacStreamEncoder, mIntf->getSampleRate());
- ok = ok && FLAC__stream_encoder_set_bits_per_sample(mFlacStreamEncoder, 16);
- ok = ok && FLAC__stream_encoder_set_compression_level(mFlacStreamEncoder, mCompressionLevel);
- ok = ok && FLAC__stream_encoder_set_verify(mFlacStreamEncoder, false);
- if (!ok) {
- ALOGE("unknown error when configuring encoder");
- return UNKNOWN_ERROR;
- }
-
- ok &= FLAC__STREAM_ENCODER_INIT_STATUS_OK ==
- FLAC__stream_encoder_init_stream(mFlacStreamEncoder,
- flacEncoderWriteCallback /*write_callback*/,
- nullptr /*seek_callback*/,
- nullptr /*tell_callback*/,
- nullptr /*metadata_callback*/,
- (void *) this /*client_data*/);
-
- if (!ok) {
- ALOGE("unknown error when configuring encoder");
- return UNKNOWN_ERROR;
- }
-
- mBlockSize = FLAC__stream_encoder_get_blocksize(mFlacStreamEncoder);
-
- ALOGV("encoder successfully configured");
- return OK;
-}
-
-FLAC__StreamEncoderWriteStatus C2SoftFlacEnc::flacEncoderWriteCallback(
- const FLAC__StreamEncoder *,
- const FLAC__byte buffer[],
- size_t bytes,
- unsigned samples,
- unsigned current_frame,
- void *client_data) {
- return ((C2SoftFlacEnc*) client_data)->onEncodedFlacAvailable(
- buffer, bytes, samples, current_frame);
-}
-
-c2_status_t C2SoftFlacEnc::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- (void) pool;
- switch (drainMode) {
- case NO_DRAIN:
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- case DRAIN_CHAIN:
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- case DRAIN_COMPONENT_WITH_EOS:
- // TODO: This flag is not being sent back to the client
- // because there are no items in PendingWork queue as all the
- // inputs are being sent back with emptywork or valid encoded data
- // mSignalledOutputEos = true;
- case DRAIN_COMPONENT_NO_EOS:
- break;
- default:
- return C2_BAD_VALUE;
- }
- FLAC__bool ok = FLAC__stream_encoder_finish(mFlacStreamEncoder);
- if (!ok) return C2_CORRUPTED;
- mIsFirstFrame = true;
- mAnchorTimeStamp = 0ull;
- mProcessedSamples = 0u;
-
- return C2_OK;
-}
-
-class C2SoftFlacEncFactory : public C2ComponentFactory {
-public:
- C2SoftFlacEncFactory() : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {
- }
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftFlacEnc(COMPONENT_NAME,
- id,
- std::make_shared<C2SoftFlacEnc::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftFlacEnc::IntfImpl>(
- COMPONENT_NAME, id, std::make_shared<C2SoftFlacEnc::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftFlacEncFactory() override = default;
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftFlacEncFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/flac/C2SoftFlacEnc.h b/media/codecs/flac/C2SoftFlacEnc.h
deleted file mode 100644
index cdf305e..0000000
--- a/media/codecs/flac/C2SoftFlacEnc.h
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_FLAC_ENC_H_
-#define ANDROID_C2_SOFT_FLAC_ENC_H_
-
-#include <SimpleC2Component.h>
-
-#include "FLAC/stream_encoder.h"
-
-#define FLAC_COMPRESSION_LEVEL_MIN 0
-#define FLAC_COMPRESSION_LEVEL_DEFAULT 5
-#define FLAC_COMPRESSION_LEVEL_MAX 8
-
-#define FLAC_HEADER_SIZE 128
-
-#define MIN(a, b) (((a) < (b)) ? (a) : (b))
-
-namespace android {
-
-class C2SoftFlacEnc : public SimpleC2Component {
-public:
- class IntfImpl;
-
- C2SoftFlacEnc(const char *name, c2_node_id_t id, const std::shared_ptr<IntfImpl> &intfImpl);
- virtual ~C2SoftFlacEnc();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
-
-private:
- status_t configureEncoder();
- static FLAC__StreamEncoderWriteStatus flacEncoderWriteCallback(
- const FLAC__StreamEncoder *encoder, const FLAC__byte buffer[],
- size_t bytes, unsigned samples, unsigned current_frame,
- void *client_data);
- FLAC__StreamEncoderWriteStatus onEncodedFlacAvailable(
- const FLAC__byte buffer[], size_t bytes, unsigned samples,
- unsigned current_frame);
-
- std::shared_ptr<IntfImpl> mIntf;
- const unsigned int kInBlockSize = 1152;
- const unsigned int kMaxNumChannels = 2;
- FLAC__StreamEncoder* mFlacStreamEncoder;
- FLAC__int32* mInputBufferPcm32;
- std::shared_ptr<C2LinearBlock> mOutputBlock;
- bool mSignalledError;
- bool mSignalledOutputEos;
- uint32_t mCompressionLevel;
- uint32_t mBlockSize;
- bool mIsFirstFrame;
- uint64_t mAnchorTimeStamp;
- uint64_t mProcessedSamples;
- // should the data received by the callback be written to the output port
- bool mEncoderWriteData;
- size_t mEncoderReturnedNbBytes;
- unsigned mHeaderOffset;
- bool mWroteHeader;
- char mHeader[FLAC_HEADER_SIZE];
-
- C2_DO_NOT_COPY(C2SoftFlacEnc);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_FLAC_ENC_H_
diff --git a/media/codecs/flac/MODULE_LICENSE_APACHE2 b/media/codecs/flac/MODULE_LICENSE_APACHE2
deleted file mode 100644
index e69de29..0000000
--- a/media/codecs/flac/MODULE_LICENSE_APACHE2
+++ /dev/null
diff --git a/media/codecs/flac/NOTICE b/media/codecs/flac/NOTICE
deleted file mode 100644
index c5b1efa..0000000
--- a/media/codecs/flac/NOTICE
+++ /dev/null
@@ -1,190 +0,0 @@
-
- Copyright (c) 2005-2008, The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
diff --git a/media/codecs/g711/Android.bp b/media/codecs/g711/Android.bp
deleted file mode 100644
index 56cbc20..0000000
--- a/media/codecs/g711/Android.bp
+++ /dev/null
@@ -1,23 +0,0 @@
-cc_library_shared {
- name: "libstagefright_soft_c2g711alawdec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: ["C2SoftG711Dec.cpp"],
-
- cflags: [
- "-DALAW",
- ],
-}
-
-cc_library_shared {
- name: "libstagefright_soft_c2g711mlawdec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: ["C2SoftG711Dec.cpp"],
-}
diff --git a/media/codecs/g711/C2SoftG711Dec.cpp b/media/codecs/g711/C2SoftG711Dec.cpp
deleted file mode 100644
index 1c71d45..0000000
--- a/media/codecs/g711/C2SoftG711Dec.cpp
+++ /dev/null
@@ -1,323 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftG711Dec"
-#include <log/log.h>
-
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <C2PlatformSupport.h>
-#include <SimpleC2Interface.h>
-
-#include "C2SoftG711Dec.h"
-
-namespace android {
-
-#ifdef ALAW
-constexpr char COMPONENT_NAME[] = "c2.android.g711.alaw.decoder";
-#else
-constexpr char COMPONENT_NAME[] = "c2.android.g711.mlaw.decoder";
-#endif
-
-class C2SoftG711Dec::IntfImpl : public C2InterfaceHelper {
-public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper> &helper)
- : C2InterfaceHelper(helper) {
-
- setDerivedInstance(this);
-
- addParameter(
- DefineParam(mInputFormat, C2_NAME_INPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::input(0u, C2FormatCompressed))
- .build());
-
- addParameter(
- DefineParam(mOutputFormat, C2_NAME_OUTPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::output(0u, C2FormatAudio))
- .build());
-
- addParameter(
- DefineParam(mInputMediaType, C2_NAME_INPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::input>(
-#ifdef ALAW
- MEDIA_MIMETYPE_AUDIO_G711_ALAW
-#else
- MEDIA_MIMETYPE_AUDIO_G711_MLAW
-#endif
- )).build());
-
- addParameter(
- DefineParam(mOutputMediaType, C2_NAME_OUTPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::output>(
- MEDIA_MIMETYPE_AUDIO_RAW))
- .build());
-
- addParameter(
- DefineParam(mSampleRate, C2_NAME_STREAM_SAMPLE_RATE_SETTING)
- .withDefault(new C2StreamSampleRateInfo::output(0u, 8000))
- .withFields({C2F(mSampleRate, value).inRange(8000, 48000)})
- .withSetter((Setter<decltype(*mSampleRate)>::StrictValueWithNoDeps))
- .build());
-
- addParameter(
- DefineParam(mChannelCount, C2_NAME_STREAM_CHANNEL_COUNT_SETTING)
- .withDefault(new C2StreamChannelCountInfo::output(0u, 1))
- .withFields({C2F(mChannelCount, value).equalTo(1)})
- .withSetter(Setter<decltype(*mChannelCount)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mBitrate, C2_NAME_STREAM_BITRATE_SETTING)
- .withDefault(new C2BitrateTuning::input(0u, 64000))
- .withFields({C2F(mBitrate, value).equalTo(64000)})
- .withSetter(Setter<decltype(*mBitrate)>::NonStrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mInputMaxBufSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
- .withConstValue(new C2StreamMaxBufferSizeInfo::input(0u, 8192))
- .build());
- }
-
-private:
- std::shared_ptr<C2StreamFormatConfig::input> mInputFormat;
- std::shared_ptr<C2StreamFormatConfig::output> mOutputFormat;
- std::shared_ptr<C2PortMimeConfig::input> mInputMediaType;
- std::shared_ptr<C2PortMimeConfig::output> mOutputMediaType;
- std::shared_ptr<C2StreamSampleRateInfo::output> mSampleRate;
- std::shared_ptr<C2StreamChannelCountInfo::output> mChannelCount;
- std::shared_ptr<C2BitrateTuning::input> mBitrate;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mInputMaxBufSize;
-};
-
-C2SoftG711Dec::C2SoftG711Dec(
- const char *name,
- c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl)
- : SimpleC2Component(std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl) {
-}
-
-C2SoftG711Dec::~C2SoftG711Dec() {
- onRelease();
-}
-
-c2_status_t C2SoftG711Dec::onInit() {
- mSignalledOutputEos = false;
- return C2_OK;
-}
-
-c2_status_t C2SoftG711Dec::onStop() {
- mSignalledOutputEos = false;
- return C2_OK;
-}
-
-void C2SoftG711Dec::onReset() {
- (void)onStop();
-}
-
-void C2SoftG711Dec::onRelease() {
-}
-
-c2_status_t C2SoftG711Dec::onFlush_sm() {
- return onStop();
-}
-
-void C2SoftG711Dec::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 1u;
- work->worklets.front()->output.flags = work->input.flags;
-
- if (mSignalledOutputEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
-
- C2ReadView rView = mDummyReadView;
- size_t inOffset = 0u;
- size_t inSize = 0u;
- if (!work->input.buffers.empty()) {
- rView = work->input.buffers[0]->data().linearBlocks().front().map().get();
- inSize = rView.capacity();
- if (inSize && rView.error()) {
- ALOGE("read view map failed %d", rView.error());
- work->result = C2_CORRUPTED;
- return;
- }
- }
- bool eos = (work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0;
- int outSize = inSize * sizeof(int16_t);
-
- ALOGV("in buffer attr. size %zu timestamp %d frameindex %d", inSize,
- (int)work->input.ordinal.timestamp.peeku(), (int)work->input.ordinal.frameIndex.peeku());
-
- if (inSize == 0) {
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- }
- return;
- }
-
- uint8_t *inputptr = const_cast<uint8_t *>(rView.data() + inOffset);
-
- std::shared_ptr<C2LinearBlock> block;
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- c2_status_t err = pool->fetchLinearBlock(outSize, usage, &block);
- if (err != C2_OK) {
- ALOGE("fetchLinearBlock for Output failed with status %d", err);
- work->result = C2_NO_MEMORY;
- return;
- }
- C2WriteView wView = block->map().get();
- if (wView.error()) {
- ALOGE("write view map failed %d", wView.error());
- work->result = C2_CORRUPTED;
- return;
- }
- int16_t *outputptr = reinterpret_cast<int16_t *>(wView.data());
-
-#ifdef ALAW
- DecodeALaw(outputptr, inputptr, inSize);
-#else
- DecodeMLaw(outputptr, inputptr, inSize);
-#endif
-
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.buffers.push_back(createLinearBuffer(block));
- work->worklets.front()->output.ordinal = work->input.ordinal;
-
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- }
-}
-
-c2_status_t C2SoftG711Dec::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- (void) pool;
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
-
- return C2_OK;
-}
-
-#ifdef ALAW
-void C2SoftG711Dec::DecodeALaw(
- int16_t *out, const uint8_t *in, size_t inSize) {
- while (inSize > 0) {
- inSize--;
- int32_t x = *in++;
-
- int32_t ix = x ^ 0x55;
- ix &= 0x7f;
-
- int32_t iexp = ix >> 4;
- int32_t mant = ix & 0x0f;
-
- if (iexp > 0) {
- mant += 16;
- }
-
- mant = (mant << 4) + 8;
-
- if (iexp > 1) {
- mant = mant << (iexp - 1);
- }
-
- *out++ = (x > 127) ? mant : -mant;
- }
-}
-#else
-void C2SoftG711Dec::DecodeMLaw(
- int16_t *out, const uint8_t *in, size_t inSize) {
- while (inSize > 0) {
- inSize--;
- int32_t x = *in++;
-
- int32_t mantissa = ~x;
- int32_t exponent = (mantissa >> 4) & 7;
- int32_t segment = exponent + 1;
- mantissa &= 0x0f;
-
- int32_t step = 4 << segment;
-
- int32_t abs = (0x80l << exponent) + step * mantissa + step / 2 - 4 * 33;
-
- *out++ = (x < 0x80) ? -abs : abs;
- }
-}
-#endif
-
-class C2SoftG711DecFactory : public C2ComponentFactory {
-public:
- C2SoftG711DecFactory() : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {
- }
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftG711Dec(COMPONENT_NAME, id,
- std::make_shared<C2SoftG711Dec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id, std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftG711Dec::IntfImpl>(
- COMPONENT_NAME, id, std::make_shared<C2SoftG711Dec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftG711DecFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftG711DecFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/g711/C2SoftG711Dec.h b/media/codecs/g711/C2SoftG711Dec.h
deleted file mode 100644
index 23e8ffc..0000000
--- a/media/codecs/g711/C2SoftG711Dec.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_G711_DEC_H_
-#define ANDROID_C2_SOFT_G711_DEC_H_
-
-#include <SimpleC2Component.h>
-
-
-namespace android {
-
-struct C2SoftG711Dec : public SimpleC2Component {
- class IntfImpl;
-
- C2SoftG711Dec(const char *name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl);
- virtual ~C2SoftG711Dec();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
-private:
- std::shared_ptr<IntfImpl> mIntf;
- bool mSignalledOutputEos;
-
-#ifdef ALAW
- void DecodeALaw(int16_t *out, const uint8_t *in, size_t inSize);
-#else
- void DecodeMLaw(int16_t *out, const uint8_t *in, size_t inSize);
-#endif
-
- C2_DO_NOT_COPY(C2SoftG711Dec);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_G711_DEC_H_
diff --git a/media/codecs/g711/MODULE_LICENSE_APACHE2 b/media/codecs/g711/MODULE_LICENSE_APACHE2
deleted file mode 100644
index e69de29..0000000
--- a/media/codecs/g711/MODULE_LICENSE_APACHE2
+++ /dev/null
diff --git a/media/codecs/g711/NOTICE b/media/codecs/g711/NOTICE
deleted file mode 100644
index c5b1efa..0000000
--- a/media/codecs/g711/NOTICE
+++ /dev/null
@@ -1,190 +0,0 @@
-
- Copyright (c) 2005-2008, The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
diff --git a/media/codecs/gsm/Android.bp b/media/codecs/gsm/Android.bp
deleted file mode 100644
index 8075747..0000000
--- a/media/codecs/gsm/Android.bp
+++ /dev/null
@@ -1,11 +0,0 @@
-cc_library_shared {
- name: "libstagefright_soft_c2gsmdec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: ["C2SoftGsmDec.cpp"],
-
- static_libs: ["libgsm"],
-}
diff --git a/media/codecs/gsm/C2SoftGsmDec.cpp b/media/codecs/gsm/C2SoftGsmDec.cpp
deleted file mode 100644
index 7101c79..0000000
--- a/media/codecs/gsm/C2SoftGsmDec.cpp
+++ /dev/null
@@ -1,311 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftGsmDec"
-#include <log/log.h>
-
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <C2PlatformSupport.h>
-#include <SimpleC2Interface.h>
-
-#include "C2SoftGsmDec.h"
-
-namespace android {
-
-constexpr char COMPONENT_NAME[] = "c2.android.gsm.decoder";
-
-class C2SoftGsmDec::IntfImpl : public C2InterfaceHelper {
- public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper>& helper)
- : C2InterfaceHelper(helper) {
- setDerivedInstance(this);
-
- addParameter(
- DefineParam(mInputFormat, C2_NAME_INPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::input(0u, C2FormatCompressed))
- .build());
-
- addParameter(
- DefineParam(mOutputFormat, C2_NAME_OUTPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::output(0u, C2FormatAudio))
- .build());
-
- addParameter(
- DefineParam(mInputMediaType, C2_NAME_INPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::input>(
- MEDIA_MIMETYPE_AUDIO_MSGSM))
- .build());
-
- addParameter(
- DefineParam(mOutputMediaType, C2_NAME_OUTPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::output>(
- MEDIA_MIMETYPE_AUDIO_RAW))
- .build());
-
- addParameter(
- DefineParam(mSampleRate, C2_NAME_STREAM_SAMPLE_RATE_SETTING)
- .withDefault(new C2StreamSampleRateInfo::output(0u, 8000))
- .withFields({C2F(mSampleRate, value).equalTo(8000)})
- .withSetter((Setter<decltype(*mSampleRate)>::StrictValueWithNoDeps))
- .build());
-
- addParameter(
- DefineParam(mChannelCount, C2_NAME_STREAM_CHANNEL_COUNT_SETTING)
- .withDefault(new C2StreamChannelCountInfo::output(0u, 1))
- .withFields({C2F(mChannelCount, value).equalTo(1)})
- .withSetter(Setter<decltype(*mChannelCount)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mBitrate, C2_NAME_STREAM_BITRATE_SETTING)
- .withDefault(new C2BitrateTuning::input(0u, 13200))
- .withFields({C2F(mBitrate, value).equalTo(13200)})
- .withSetter(Setter<decltype(*mBitrate)>::NonStrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mInputMaxBufSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
- .withConstValue(new C2StreamMaxBufferSizeInfo::input(0u, 1024 / MSGSM_IN_FRM_SZ * MSGSM_IN_FRM_SZ))
- .build());
- }
-
- private:
- std::shared_ptr<C2StreamFormatConfig::input> mInputFormat;
- std::shared_ptr<C2StreamFormatConfig::output> mOutputFormat;
- std::shared_ptr<C2PortMimeConfig::input> mInputMediaType;
- std::shared_ptr<C2PortMimeConfig::output> mOutputMediaType;
- std::shared_ptr<C2StreamSampleRateInfo::output> mSampleRate;
- std::shared_ptr<C2StreamChannelCountInfo::output> mChannelCount;
- std::shared_ptr<C2BitrateTuning::input> mBitrate;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mInputMaxBufSize;
-};
-
-C2SoftGsmDec::C2SoftGsmDec(const char *name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl)
- : SimpleC2Component(
- std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mGsm(nullptr) {
-}
-
-C2SoftGsmDec::~C2SoftGsmDec() {
- onRelease();
-}
-
-c2_status_t C2SoftGsmDec::onInit() {
- if (!mGsm) mGsm = gsm_create();
- if (!mGsm) return C2_NO_MEMORY;
- int msopt = 1;
- (void)gsm_option(mGsm, GSM_OPT_WAV49, &msopt);
- mSignalledError = false;
- mSignalledEos = false;
- return C2_OK;
-}
-
-c2_status_t C2SoftGsmDec::onStop() {
- if (mGsm) {
- gsm_destroy(mGsm);
- mGsm = nullptr;
- }
- if (!mGsm) mGsm = gsm_create();
- if (!mGsm) return C2_NO_MEMORY;
- int msopt = 1;
- (void)gsm_option(mGsm, GSM_OPT_WAV49, &msopt);
- mSignalledError = false;
- mSignalledEos = false;
- return C2_OK;
-}
-
-void C2SoftGsmDec::onReset() {
- (void)onStop();
-}
-
-void C2SoftGsmDec::onRelease() {
- if (mGsm) {
- gsm_destroy(mGsm);
- mGsm = nullptr;
- }
-}
-
-c2_status_t C2SoftGsmDec::onFlush_sm() {
- return onStop();
-}
-
-static size_t decodeGSM(gsm handle, int16_t *out, size_t outCapacity,
- uint8_t *in, size_t inSize) {
- size_t outSize = 0;
-
- if (inSize % MSGSM_IN_FRM_SZ == 0
- && (inSize / MSGSM_IN_FRM_SZ * MSGSM_OUT_FRM_SZ * sizeof(*out)
- <= outCapacity)) {
- while (inSize > 0) {
- gsm_decode(handle, in, out);
- in += FRGSM_IN_FRM_SZ;
- inSize -= FRGSM_IN_FRM_SZ;
- out += FRGSM_OUT_FRM_SZ;
- outSize += FRGSM_OUT_FRM_SZ;
-
- gsm_decode(handle, in, out);
- in += FRGSM_IN_FRM_SZ_MINUS_1;
- inSize -= FRGSM_IN_FRM_SZ_MINUS_1;
- out += FRGSM_OUT_FRM_SZ;
- outSize += FRGSM_OUT_FRM_SZ;
- }
- }
-
- return outSize * sizeof(int16_t);
-}
-
-void C2SoftGsmDec::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 1u;
- work->worklets.front()->output.flags = work->input.flags;
-
- if (mSignalledError || mSignalledEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
-
- bool eos = ((work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0);
- C2ReadView rView = mDummyReadView;
- size_t inOffset = 0u;
- size_t inSize = 0u;
- if (!work->input.buffers.empty()) {
- rView = work->input.buffers[0]->data().linearBlocks().front().map().get();
- inSize = rView.capacity();
- if (inSize && rView.error()) {
- ALOGE("read view map failed %d", rView.error());
- work->result = rView.error();
- return;
- }
- }
-
- if (inSize == 0) {
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- if (eos) {
- mSignalledEos = true;
- ALOGV("signalled EOS");
- }
- return;
- }
- ALOGV("in buffer attr. size %zu timestamp %d frameindex %d", inSize,
- (int)work->input.ordinal.timestamp.peeku(), (int)work->input.ordinal.frameIndex.peeku());
-
- size_t outCapacity = (inSize / MSGSM_IN_FRM_SZ ) * MSGSM_OUT_FRM_SZ * sizeof(int16_t);
- std::shared_ptr<C2LinearBlock> block;
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- c2_status_t err = pool->fetchLinearBlock(outCapacity, usage, &block);
- if (err != C2_OK) {
- ALOGE("fetchLinearBlock for Output failed with status %d", err);
- work->result = C2_NO_MEMORY;
- return;
- }
- C2WriteView wView = block->map().get();
- if (wView.error()) {
- ALOGE("write view map failed %d", wView.error());
- work->result = wView.error();
- return;
- }
-
- int16_t *output = reinterpret_cast<int16_t *>(wView.data());
- uint8_t *input = const_cast<uint8_t *>(rView.data() + inOffset);
- size_t outSize = decodeGSM(mGsm, output, outCapacity, input, inSize);
- if (!outSize) {
- ALOGE("encountered improper insize or outsize");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- ALOGV("out buffer attr. size %zu", outSize);
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.buffers.push_back(createLinearBuffer(block, 0, outSize));
- work->worklets.front()->output.ordinal = work->input.ordinal;
- if (eos) {
- mSignalledEos = true;
- ALOGV("signalled EOS");
- }
-}
-
-c2_status_t C2SoftGsmDec::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- (void) pool;
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
-
- return C2_OK;
-}
-
-class C2SoftGSMDecFactory : public C2ComponentFactory {
-public:
- C2SoftGSMDecFactory() : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {
- }
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftGsmDec(COMPONENT_NAME,
- id,
- std::make_shared<C2SoftGsmDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftGsmDec::IntfImpl>(
- COMPONENT_NAME, id, std::make_shared<C2SoftGsmDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftGSMDecFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftGSMDecFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/gsm/C2SoftGsmDec.h b/media/codecs/gsm/C2SoftGsmDec.h
deleted file mode 100644
index 2b209fe..0000000
--- a/media/codecs/gsm/C2SoftGsmDec.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_GSM_DEC_H_
-#define ANDROID_C2_SOFT_GSM_DEC_H_
-
-#include <SimpleC2Component.h>
-
-
-extern "C" {
- #include "gsm.h"
-}
-
-namespace android {
-
-#define FRGSM_IN_FRM_SZ 33
-#define FRGSM_IN_FRM_SZ_MINUS_1 32
-#define FRGSM_OUT_FRM_SZ 160
-#define MSGSM_IN_FRM_SZ (FRGSM_IN_FRM_SZ + FRGSM_IN_FRM_SZ_MINUS_1)
-#define MSGSM_OUT_FRM_SZ (FRGSM_OUT_FRM_SZ * 2)
-
-struct C2SoftGsmDec : public SimpleC2Component {
- class IntfImpl;
-
- C2SoftGsmDec(const char *name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl);
- virtual ~C2SoftGsmDec();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
- private:
- std::shared_ptr<IntfImpl> mIntf;
- gsm mGsm;
- bool mSignalledError;
- bool mSignalledEos;
-
- C2_DO_NOT_COPY(C2SoftGsmDec);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_GSM_DEC_H_
diff --git a/media/codecs/gsm/MODULE_LICENSE_APACHE2 b/media/codecs/gsm/MODULE_LICENSE_APACHE2
deleted file mode 100644
index e69de29..0000000
--- a/media/codecs/gsm/MODULE_LICENSE_APACHE2
+++ /dev/null
diff --git a/media/codecs/gsm/NOTICE b/media/codecs/gsm/NOTICE
deleted file mode 100644
index c5b1efa..0000000
--- a/media/codecs/gsm/NOTICE
+++ /dev/null
@@ -1,190 +0,0 @@
-
- Copyright (c) 2005-2008, The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
diff --git a/media/codecs/hevc/Android.bp b/media/codecs/hevc/Android.bp
deleted file mode 100644
index 519de68..0000000
--- a/media/codecs/hevc/Android.bp
+++ /dev/null
@@ -1,16 +0,0 @@
-cc_library_shared {
- name: "libstagefright_soft_c2hevcdec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_signed-defaults",
- ],
-
- srcs: ["C2SoftHevcDec.cpp"],
-
- static_libs: ["libhevcdec"],
-
- include_dirs: [
- "external/libhevc/decoder",
- "external/libhevc/common",
- ],
-}
diff --git a/media/codecs/hevc/C2SoftHevcDec.cpp b/media/codecs/hevc/C2SoftHevcDec.cpp
deleted file mode 100644
index 99892ce..0000000
--- a/media/codecs/hevc/C2SoftHevcDec.cpp
+++ /dev/null
@@ -1,976 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftHevcDec"
-#include <log/log.h>
-
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <C2Debug.h>
-#include <C2PlatformSupport.h>
-#include <Codec2Mapper.h>
-#include <SimpleC2Interface.h>
-
-#include "C2SoftHevcDec.h"
-#include "ihevcd_cxa.h"
-
-namespace android {
-
-namespace {
-
-constexpr char COMPONENT_NAME[] = "c2.android.hevc.decoder";
-
-} // namespace
-
-class C2SoftHevcDec::IntfImpl : public SimpleInterface<void>::BaseParams {
-public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper> &helper)
- : SimpleInterface<void>::BaseParams(
- helper,
- COMPONENT_NAME,
- C2Component::KIND_DECODER,
- C2Component::DOMAIN_VIDEO,
- MEDIA_MIMETYPE_VIDEO_HEVC) {
- noPrivateBuffers(); // TODO: account for our buffers here
- noInputReferences();
- noOutputReferences();
- noInputLatency();
- noTimeStretch();
-
- // TODO: output latency and reordering
-
- addParameter(
- DefineParam(mAttrib, C2_PARAMKEY_COMPONENT_ATTRIBUTES)
- .withConstValue(new C2ComponentAttributesSetting(C2Component::ATTRIB_IS_TEMPORAL))
- .build());
-
- addParameter(
- DefineParam(mSize, C2_PARAMKEY_PICTURE_SIZE)
- .withDefault(new C2StreamPictureSizeInfo::output(0u, 320, 240))
- .withFields({
- C2F(mSize, width).inRange(2, 4096, 2),
- C2F(mSize, height).inRange(2, 4096, 2),
- })
- .withSetter(SizeSetter)
- .build());
-
- addParameter(
- DefineParam(mProfileLevel, C2_PARAMKEY_PROFILE_LEVEL)
- .withDefault(new C2StreamProfileLevelInfo::input(0u,
- C2Config::PROFILE_HEVC_MAIN, C2Config::LEVEL_HEVC_MAIN_5_1))
- .withFields({
- C2F(mProfileLevel, profile).oneOf({
- C2Config::PROFILE_HEVC_MAIN,
- C2Config::PROFILE_HEVC_MAIN_STILL}),
- C2F(mProfileLevel, level).oneOf({
- C2Config::LEVEL_HEVC_MAIN_1,
- C2Config::LEVEL_HEVC_MAIN_2, C2Config::LEVEL_HEVC_MAIN_2_1,
- C2Config::LEVEL_HEVC_MAIN_3, C2Config::LEVEL_HEVC_MAIN_3_1,
- C2Config::LEVEL_HEVC_MAIN_4, C2Config::LEVEL_HEVC_MAIN_4_1,
- C2Config::LEVEL_HEVC_MAIN_5, C2Config::LEVEL_HEVC_MAIN_5_1,
- C2Config::LEVEL_HEVC_MAIN_5_2, C2Config::LEVEL_HEVC_HIGH_4,
- C2Config::LEVEL_HEVC_HIGH_4_1, C2Config::LEVEL_HEVC_HIGH_5,
- C2Config::LEVEL_HEVC_HIGH_5_1, C2Config::LEVEL_HEVC_HIGH_5_2
- })
- })
- .withSetter(ProfileLevelSetter, mSize)
- .build());
-
- addParameter(
- DefineParam(mMaxSize, C2_PARAMKEY_MAX_PICTURE_SIZE)
- .withDefault(new C2StreamMaxPictureSizeTuning::output(0u, 320, 240))
- .withFields({
- C2F(mSize, width).inRange(2, 4096, 2),
- C2F(mSize, height).inRange(2, 4096, 2),
- })
- .withSetter(MaxPictureSizeSetter, mSize)
- .build());
-
- addParameter(
- DefineParam(mMaxInputSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
- .withDefault(new C2StreamMaxBufferSizeInfo::input(0u, 320 * 240 * 3 / 4))
- .withFields({
- C2F(mMaxInputSize, value).any(),
- })
- .calculatedAs(MaxInputSizeSetter, mMaxSize)
- .build());
-
- C2ChromaOffsetStruct locations[1] = { C2ChromaOffsetStruct::ITU_YUV_420_0() };
- std::shared_ptr<C2StreamColorInfo::output> defaultColorInfo =
- C2StreamColorInfo::output::AllocShared(
- 1u, 0u, 8u /* bitDepth */, C2Color::YUV_420);
- memcpy(defaultColorInfo->m.locations, locations, sizeof(locations));
-
- defaultColorInfo = C2StreamColorInfo::output::AllocShared(
- {C2ChromaOffsetStruct::ITU_YUV_420_0()}, 0u, 8u /* bitDepth */,
- C2Color::YUV_420);
- helper->addStructDescriptors<C2ChromaOffsetStruct>();
-
- addParameter(
- DefineParam(mColorInfo, C2_PARAMKEY_CODED_COLOR_INFO)
- .withConstValue(defaultColorInfo)
- .build());
-
- addParameter(
- DefineParam(mDefaultColorAspects, C2_PARAMKEY_DEFAULT_COLOR_ASPECTS)
- .withDefault(new C2StreamColorAspectsTuning::output(
- 0u, C2Color::RANGE_UNSPECIFIED, C2Color::PRIMARIES_UNSPECIFIED,
- C2Color::TRANSFER_UNSPECIFIED, C2Color::MATRIX_UNSPECIFIED))
- .withFields({
- C2F(mDefaultColorAspects, range).inRange(
- C2Color::RANGE_UNSPECIFIED, C2Color::RANGE_OTHER),
- C2F(mDefaultColorAspects, primaries).inRange(
- C2Color::PRIMARIES_UNSPECIFIED, C2Color::PRIMARIES_OTHER),
- C2F(mDefaultColorAspects, transfer).inRange(
- C2Color::TRANSFER_UNSPECIFIED, C2Color::TRANSFER_OTHER),
- C2F(mDefaultColorAspects, matrix).inRange(
- C2Color::MATRIX_UNSPECIFIED, C2Color::MATRIX_OTHER)
- })
- .withSetter(DefaultColorAspectsSetter)
- .build());
-
- addParameter(
- DefineParam(mCodedColorAspects, C2_PARAMKEY_VUI_COLOR_ASPECTS)
- .withDefault(new C2StreamColorAspectsInfo::input(
- 0u, C2Color::RANGE_LIMITED, C2Color::PRIMARIES_UNSPECIFIED,
- C2Color::TRANSFER_UNSPECIFIED, C2Color::MATRIX_UNSPECIFIED))
- .withFields({
- C2F(mCodedColorAspects, range).inRange(
- C2Color::RANGE_UNSPECIFIED, C2Color::RANGE_OTHER),
- C2F(mCodedColorAspects, primaries).inRange(
- C2Color::PRIMARIES_UNSPECIFIED, C2Color::PRIMARIES_OTHER),
- C2F(mCodedColorAspects, transfer).inRange(
- C2Color::TRANSFER_UNSPECIFIED, C2Color::TRANSFER_OTHER),
- C2F(mCodedColorAspects, matrix).inRange(
- C2Color::MATRIX_UNSPECIFIED, C2Color::MATRIX_OTHER)
- })
- .withSetter(CodedColorAspectsSetter)
- .build());
-
- addParameter(
- DefineParam(mColorAspects, C2_PARAMKEY_COLOR_ASPECTS)
- .withDefault(new C2StreamColorAspectsInfo::output(
- 0u, C2Color::RANGE_UNSPECIFIED, C2Color::PRIMARIES_UNSPECIFIED,
- C2Color::TRANSFER_UNSPECIFIED, C2Color::MATRIX_UNSPECIFIED))
- .withFields({
- C2F(mColorAspects, range).inRange(
- C2Color::RANGE_UNSPECIFIED, C2Color::RANGE_OTHER),
- C2F(mColorAspects, primaries).inRange(
- C2Color::PRIMARIES_UNSPECIFIED, C2Color::PRIMARIES_OTHER),
- C2F(mColorAspects, transfer).inRange(
- C2Color::TRANSFER_UNSPECIFIED, C2Color::TRANSFER_OTHER),
- C2F(mColorAspects, matrix).inRange(
- C2Color::MATRIX_UNSPECIFIED, C2Color::MATRIX_OTHER)
- })
- .withSetter(ColorAspectsSetter, mDefaultColorAspects, mCodedColorAspects)
- .build());
-
- // TODO: support more formats?
- addParameter(
- DefineParam(mPixelFormat, C2_PARAMKEY_PIXEL_FORMAT)
- .withConstValue(new C2StreamPixelFormatInfo::output(
- 0u, HAL_PIXEL_FORMAT_YCBCR_420_888))
- .build());
- }
-
- static C2R SizeSetter(bool mayBlock, const C2P<C2StreamPictureSizeInfo::output> &oldMe,
- C2P<C2VideoSizeStreamInfo::output> &me) {
- (void)mayBlock;
- C2R res = C2R::Ok();
- if (!me.F(me.v.width).supportsAtAll(me.v.width)) {
- res = res.plus(C2SettingResultBuilder::BadValue(me.F(me.v.width)));
- me.set().width = oldMe.v.width;
- }
- if (!me.F(me.v.height).supportsAtAll(me.v.height)) {
- res = res.plus(C2SettingResultBuilder::BadValue(me.F(me.v.height)));
- me.set().height = oldMe.v.height;
- }
- return res;
- }
-
- static C2R MaxPictureSizeSetter(bool mayBlock, C2P<C2StreamMaxPictureSizeTuning::output> &me,
- const C2P<C2StreamPictureSizeInfo::output> &size) {
- (void)mayBlock;
- // TODO: get max width/height from the size's field helpers vs. hardcoding
- me.set().width = c2_min(c2_max(me.v.width, size.v.width), 4096u);
- me.set().height = c2_min(c2_max(me.v.height, size.v.height), 4096u);
- return C2R::Ok();
- }
-
- static C2R MaxInputSizeSetter(bool mayBlock, C2P<C2StreamMaxBufferSizeInfo::input> &me,
- const C2P<C2StreamMaxPictureSizeTuning::output> &maxSize) {
- (void)mayBlock;
- // assume compression ratio of 2
- me.set().value = (((maxSize.v.width + 63) / 64) * ((maxSize.v.height + 63) / 64) * 3072);
- return C2R::Ok();
- }
-
- static C2R ProfileLevelSetter(bool mayBlock, C2P<C2StreamProfileLevelInfo::input> &me,
- const C2P<C2StreamPictureSizeInfo::output> &size) {
- (void)mayBlock;
- (void)size;
- (void)me; // TODO: validate
- return C2R::Ok();
- }
-
- static C2R DefaultColorAspectsSetter(bool mayBlock, C2P<C2StreamColorAspectsTuning::output> &me) {
- (void)mayBlock;
- if (me.v.range > C2Color::RANGE_OTHER) {
- me.set().range = C2Color::RANGE_OTHER;
- }
- if (me.v.primaries > C2Color::PRIMARIES_OTHER) {
- me.set().primaries = C2Color::PRIMARIES_OTHER;
- }
- if (me.v.transfer > C2Color::TRANSFER_OTHER) {
- me.set().transfer = C2Color::TRANSFER_OTHER;
- }
- if (me.v.matrix > C2Color::MATRIX_OTHER) {
- me.set().matrix = C2Color::MATRIX_OTHER;
- }
- return C2R::Ok();
- }
-
- static C2R CodedColorAspectsSetter(bool mayBlock, C2P<C2StreamColorAspectsInfo::input> &me) {
- (void)mayBlock;
- if (me.v.range > C2Color::RANGE_OTHER) {
- me.set().range = C2Color::RANGE_OTHER;
- }
- if (me.v.primaries > C2Color::PRIMARIES_OTHER) {
- me.set().primaries = C2Color::PRIMARIES_OTHER;
- }
- if (me.v.transfer > C2Color::TRANSFER_OTHER) {
- me.set().transfer = C2Color::TRANSFER_OTHER;
- }
- if (me.v.matrix > C2Color::MATRIX_OTHER) {
- me.set().matrix = C2Color::MATRIX_OTHER;
- }
- return C2R::Ok();
- }
-
- static C2R ColorAspectsSetter(bool mayBlock, C2P<C2StreamColorAspectsInfo::output> &me,
- const C2P<C2StreamColorAspectsTuning::output> &def,
- const C2P<C2StreamColorAspectsInfo::input> &coded) {
- (void)mayBlock;
- // take default values for all unspecified fields, and coded values for specified ones
- me.set().range = coded.v.range == RANGE_UNSPECIFIED ? def.v.range : coded.v.range;
- me.set().primaries = coded.v.primaries == PRIMARIES_UNSPECIFIED
- ? def.v.primaries : coded.v.primaries;
- me.set().transfer = coded.v.transfer == TRANSFER_UNSPECIFIED
- ? def.v.transfer : coded.v.transfer;
- me.set().matrix = coded.v.matrix == MATRIX_UNSPECIFIED ? def.v.matrix : coded.v.matrix;
- return C2R::Ok();
- }
-
- std::shared_ptr<C2StreamColorAspectsInfo::output> getColorAspects_l() {
- return mColorAspects;
- }
-
-private:
- std::shared_ptr<C2StreamProfileLevelInfo::input> mProfileLevel;
- std::shared_ptr<C2StreamPictureSizeInfo::output> mSize;
- std::shared_ptr<C2StreamMaxPictureSizeTuning::output> mMaxSize;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mMaxInputSize;
- std::shared_ptr<C2StreamColorInfo::output> mColorInfo;
- std::shared_ptr<C2StreamColorAspectsInfo::input> mCodedColorAspects;
- std::shared_ptr<C2StreamColorAspectsTuning::output> mDefaultColorAspects;
- std::shared_ptr<C2StreamColorAspectsInfo::output> mColorAspects;
- std::shared_ptr<C2StreamPixelFormatInfo::output> mPixelFormat;
-};
-
-static size_t getCpuCoreCount() {
- long cpuCoreCount = 1;
-#if defined(_SC_NPROCESSORS_ONLN)
- cpuCoreCount = sysconf(_SC_NPROCESSORS_ONLN);
-#else
- // _SC_NPROC_ONLN must be defined...
- cpuCoreCount = sysconf(_SC_NPROC_ONLN);
-#endif
- CHECK(cpuCoreCount >= 1);
- ALOGV("Number of CPU cores: %ld", cpuCoreCount);
- return (size_t)cpuCoreCount;
-}
-
-static void *ivd_aligned_malloc(void *ctxt, WORD32 alignment, WORD32 size) {
- (void) ctxt;
- return memalign(alignment, size);
-}
-
-static void ivd_aligned_free(void *ctxt, void *mem) {
- (void) ctxt;
- free(mem);
-}
-
-C2SoftHevcDec::C2SoftHevcDec(
- const char *name,
- c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl)
- : SimpleC2Component(std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mDecHandle(nullptr),
- mOutBufferFlush(nullptr),
- mIvColorformat(IV_YUV_420P),
- mWidth(320),
- mHeight(240),
- mHeaderDecoded(false) {
-}
-
-C2SoftHevcDec::~C2SoftHevcDec() {
- onRelease();
-}
-
-c2_status_t C2SoftHevcDec::onInit() {
- status_t err = initDecoder();
- return err == OK ? C2_OK : C2_CORRUPTED;
-}
-
-c2_status_t C2SoftHevcDec::onStop() {
- if (OK != resetDecoder()) return C2_CORRUPTED;
- resetPlugin();
- return C2_OK;
-}
-
-void C2SoftHevcDec::onReset() {
- (void) onStop();
-}
-
-void C2SoftHevcDec::onRelease() {
- (void) deleteDecoder();
- if (mOutBufferFlush) {
- ivd_aligned_free(nullptr, mOutBufferFlush);
- mOutBufferFlush = nullptr;
- }
- if (mOutBlock) {
- mOutBlock.reset();
- }
-}
-
-c2_status_t C2SoftHevcDec::onFlush_sm() {
- if (OK != setFlushMode()) return C2_CORRUPTED;
-
- uint32_t displayStride = mStride;
- uint32_t displayHeight = mHeight;
- uint32_t bufferSize = displayStride * displayHeight * 3 / 2;
- mOutBufferFlush = (uint8_t *)ivd_aligned_malloc(nullptr, 128, bufferSize);
- if (!mOutBufferFlush) {
- ALOGE("could not allocate tmp output buffer (for flush) of size %u ", bufferSize);
- return C2_NO_MEMORY;
- }
-
- while (true) {
- ivd_video_decode_ip_t s_decode_ip;
- ivd_video_decode_op_t s_decode_op;
-
- setDecodeArgs(&s_decode_ip, &s_decode_op, nullptr, nullptr, 0, 0, 0);
- (void) ivdec_api_function(mDecHandle, &s_decode_ip, &s_decode_op);
- if (0 == s_decode_op.u4_output_present) {
- resetPlugin();
- break;
- }
- }
-
- if (mOutBufferFlush) {
- ivd_aligned_free(nullptr, mOutBufferFlush);
- mOutBufferFlush = nullptr;
- }
-
- return C2_OK;
-}
-
-status_t C2SoftHevcDec::createDecoder() {
- ivdext_create_ip_t s_create_ip;
- ivdext_create_op_t s_create_op;
-
- s_create_ip.s_ivd_create_ip_t.u4_size = sizeof(ivdext_create_ip_t);
- s_create_ip.s_ivd_create_ip_t.e_cmd = IVD_CMD_CREATE;
- s_create_ip.s_ivd_create_ip_t.u4_share_disp_buf = 0;
- s_create_ip.s_ivd_create_ip_t.e_output_format = mIvColorformat;
- s_create_ip.s_ivd_create_ip_t.pf_aligned_alloc = ivd_aligned_malloc;
- s_create_ip.s_ivd_create_ip_t.pf_aligned_free = ivd_aligned_free;
- s_create_ip.s_ivd_create_ip_t.pv_mem_ctxt = nullptr;
- s_create_op.s_ivd_create_op_t.u4_size = sizeof(ivdext_create_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_create_ip,
- &s_create_op);
- if (status != IV_SUCCESS) {
- ALOGE("error in %s: 0x%x", __func__,
- s_create_op.s_ivd_create_op_t.u4_error_code);
- return UNKNOWN_ERROR;
- }
- mDecHandle = (iv_obj_t*)s_create_op.s_ivd_create_op_t.pv_handle;
- mDecHandle->pv_fxns = (void *)ivdec_api_function;
- mDecHandle->u4_size = sizeof(iv_obj_t);
-
- return OK;
-}
-
-status_t C2SoftHevcDec::setNumCores() {
- ivdext_ctl_set_num_cores_ip_t s_set_num_cores_ip;
- ivdext_ctl_set_num_cores_op_t s_set_num_cores_op;
-
- s_set_num_cores_ip.u4_size = sizeof(ivdext_ctl_set_num_cores_ip_t);
- s_set_num_cores_ip.e_cmd = IVD_CMD_VIDEO_CTL;
- s_set_num_cores_ip.e_sub_cmd = IVDEXT_CMD_CTL_SET_NUM_CORES;
- s_set_num_cores_ip.u4_num_cores = mNumCores;
- s_set_num_cores_op.u4_size = sizeof(ivdext_ctl_set_num_cores_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_set_num_cores_ip,
- &s_set_num_cores_op);
- if (IV_SUCCESS != status) {
- ALOGD("error in %s: 0x%x", __func__, s_set_num_cores_op.u4_error_code);
- return UNKNOWN_ERROR;
- }
-
- return OK;
-}
-
-status_t C2SoftHevcDec::setParams(size_t stride, IVD_VIDEO_DECODE_MODE_T dec_mode) {
- ivd_ctl_set_config_ip_t s_set_dyn_params_ip;
- ivd_ctl_set_config_op_t s_set_dyn_params_op;
-
- s_set_dyn_params_ip.u4_size = sizeof(ivd_ctl_set_config_ip_t);
- s_set_dyn_params_ip.e_cmd = IVD_CMD_VIDEO_CTL;
- s_set_dyn_params_ip.e_sub_cmd = IVD_CMD_CTL_SETPARAMS;
- s_set_dyn_params_ip.u4_disp_wd = (UWORD32) stride;
- s_set_dyn_params_ip.e_frm_skip_mode = IVD_SKIP_NONE;
- s_set_dyn_params_ip.e_frm_out_mode = IVD_DISPLAY_FRAME_OUT;
- s_set_dyn_params_ip.e_vid_dec_mode = dec_mode;
- s_set_dyn_params_op.u4_size = sizeof(ivd_ctl_set_config_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_set_dyn_params_ip,
- &s_set_dyn_params_op);
- if (status != IV_SUCCESS) {
- ALOGE("error in %s: 0x%x", __func__, s_set_dyn_params_op.u4_error_code);
- return UNKNOWN_ERROR;
- }
-
- return OK;
-}
-
-status_t C2SoftHevcDec::getVersion() {
- ivd_ctl_getversioninfo_ip_t s_get_versioninfo_ip;
- ivd_ctl_getversioninfo_op_t s_get_versioninfo_op;
- UWORD8 au1_buf[512];
-
- s_get_versioninfo_ip.u4_size = sizeof(ivd_ctl_getversioninfo_ip_t);
- s_get_versioninfo_ip.e_cmd = IVD_CMD_VIDEO_CTL;
- s_get_versioninfo_ip.e_sub_cmd = IVD_CMD_CTL_GETVERSION;
- s_get_versioninfo_ip.pv_version_buffer = au1_buf;
- s_get_versioninfo_ip.u4_version_buffer_size = sizeof(au1_buf);
- s_get_versioninfo_op.u4_size = sizeof(ivd_ctl_getversioninfo_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_get_versioninfo_ip,
- &s_get_versioninfo_op);
- if (status != IV_SUCCESS) {
- ALOGD("error in %s: 0x%x", __func__,
- s_get_versioninfo_op.u4_error_code);
- } else {
- ALOGV("ittiam decoder version number: %s",
- (char *) s_get_versioninfo_ip.pv_version_buffer);
- }
-
- return OK;
-}
-
-status_t C2SoftHevcDec::initDecoder() {
- if (OK != createDecoder()) return UNKNOWN_ERROR;
- mNumCores = MIN(getCpuCoreCount(), MAX_NUM_CORES);
- mStride = ALIGN64(mWidth);
- mSignalledError = false;
- resetPlugin();
- (void) setNumCores();
- if (OK != setParams(mStride, IVD_DECODE_FRAME)) return UNKNOWN_ERROR;
- (void) getVersion();
-
- return OK;
-}
-
-bool C2SoftHevcDec::setDecodeArgs(ivd_video_decode_ip_t *ps_decode_ip,
- ivd_video_decode_op_t *ps_decode_op,
- C2ReadView *inBuffer,
- C2GraphicView *outBuffer,
- size_t inOffset,
- size_t inSize,
- uint32_t tsMarker) {
- uint32_t displayStride = mStride;
- uint32_t displayHeight = mHeight;
- size_t lumaSize = displayStride * displayHeight;
- size_t chromaSize = lumaSize >> 2;
-
- ps_decode_ip->u4_size = sizeof(ivd_video_decode_ip_t);
- ps_decode_ip->e_cmd = IVD_CMD_VIDEO_DECODE;
- if (inBuffer) {
- ps_decode_ip->u4_ts = tsMarker;
- ps_decode_ip->pv_stream_buffer = const_cast<uint8_t *>(inBuffer->data() + inOffset);
- ps_decode_ip->u4_num_Bytes = inSize;
- } else {
- ps_decode_ip->u4_ts = 0;
- ps_decode_ip->pv_stream_buffer = nullptr;
- ps_decode_ip->u4_num_Bytes = 0;
- }
- ps_decode_ip->s_out_buffer.u4_min_out_buf_size[0] = lumaSize;
- ps_decode_ip->s_out_buffer.u4_min_out_buf_size[1] = chromaSize;
- ps_decode_ip->s_out_buffer.u4_min_out_buf_size[2] = chromaSize;
- if (outBuffer) {
- if (outBuffer->width() < displayStride || outBuffer->height() < displayHeight) {
- ALOGE("Output buffer too small: provided (%dx%d) required (%ux%u)",
- outBuffer->width(), outBuffer->height(), displayStride, displayHeight);
- return false;
- }
- ps_decode_ip->s_out_buffer.pu1_bufs[0] = outBuffer->data()[C2PlanarLayout::PLANE_Y];
- ps_decode_ip->s_out_buffer.pu1_bufs[1] = outBuffer->data()[C2PlanarLayout::PLANE_U];
- ps_decode_ip->s_out_buffer.pu1_bufs[2] = outBuffer->data()[C2PlanarLayout::PLANE_V];
- } else {
- ps_decode_ip->s_out_buffer.pu1_bufs[0] = mOutBufferFlush;
- ps_decode_ip->s_out_buffer.pu1_bufs[1] = mOutBufferFlush + lumaSize;
- ps_decode_ip->s_out_buffer.pu1_bufs[2] = mOutBufferFlush + lumaSize + chromaSize;
- }
- ps_decode_ip->s_out_buffer.u4_num_bufs = 3;
- ps_decode_op->u4_size = sizeof(ivd_video_decode_op_t);
- ps_decode_op->u4_output_present = 0;
-
- return true;
-}
-
-bool C2SoftHevcDec::getVuiParams() {
- ivdext_ctl_get_vui_params_ip_t s_get_vui_params_ip;
- ivdext_ctl_get_vui_params_op_t s_get_vui_params_op;
-
- s_get_vui_params_ip.u4_size = sizeof(ivdext_ctl_get_vui_params_ip_t);
- s_get_vui_params_ip.e_cmd = IVD_CMD_VIDEO_CTL;
- s_get_vui_params_ip.e_sub_cmd =
- (IVD_CONTROL_API_COMMAND_TYPE_T) IHEVCD_CXA_CMD_CTL_GET_VUI_PARAMS;
- s_get_vui_params_op.u4_size = sizeof(ivdext_ctl_get_vui_params_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_get_vui_params_ip,
- &s_get_vui_params_op);
- if (status != IV_SUCCESS) {
- ALOGD("error in %s: 0x%x", __func__, s_get_vui_params_op.u4_error_code);
- return false;
- }
-
- VuiColorAspects vuiColorAspects;
- vuiColorAspects.primaries = s_get_vui_params_op.u1_colour_primaries;
- vuiColorAspects.transfer = s_get_vui_params_op.u1_transfer_characteristics;
- vuiColorAspects.coeffs = s_get_vui_params_op.u1_matrix_coefficients;
- vuiColorAspects.fullRange = s_get_vui_params_op.u1_video_full_range_flag;
-
- // convert vui aspects to C2 values if changed
- if (!(vuiColorAspects == mBitstreamColorAspects)) {
- mBitstreamColorAspects = vuiColorAspects;
- ColorAspects sfAspects;
- C2StreamColorAspectsInfo::input codedAspects = { 0u };
- ColorUtils::convertIsoColorAspectsToCodecAspects(
- vuiColorAspects.primaries, vuiColorAspects.transfer, vuiColorAspects.coeffs,
- vuiColorAspects.fullRange, sfAspects);
- if (!C2Mapper::map(sfAspects.mPrimaries, &codedAspects.primaries)) {
- codedAspects.primaries = C2Color::PRIMARIES_UNSPECIFIED;
- }
- if (!C2Mapper::map(sfAspects.mRange, &codedAspects.range)) {
- codedAspects.range = C2Color::RANGE_UNSPECIFIED;
- }
- if (!C2Mapper::map(sfAspects.mMatrixCoeffs, &codedAspects.matrix)) {
- codedAspects.matrix = C2Color::MATRIX_UNSPECIFIED;
- }
- if (!C2Mapper::map(sfAspects.mTransfer, &codedAspects.transfer)) {
- codedAspects.transfer = C2Color::TRANSFER_UNSPECIFIED;
- }
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- (void)mIntf->config({&codedAspects}, C2_MAY_BLOCK, &failures);
- }
- return true;
-}
-
-status_t C2SoftHevcDec::setFlushMode() {
- ivd_ctl_flush_ip_t s_set_flush_ip;
- ivd_ctl_flush_op_t s_set_flush_op;
-
- s_set_flush_ip.u4_size = sizeof(ivd_ctl_flush_ip_t);
- s_set_flush_ip.e_cmd = IVD_CMD_VIDEO_CTL;
- s_set_flush_ip.e_sub_cmd = IVD_CMD_CTL_FLUSH;
- s_set_flush_op.u4_size = sizeof(ivd_ctl_flush_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_set_flush_ip,
- &s_set_flush_op);
- if (status != IV_SUCCESS) {
- ALOGE("error in %s: 0x%x", __func__, s_set_flush_op.u4_error_code);
- return UNKNOWN_ERROR;
- }
-
- return OK;
-}
-
-status_t C2SoftHevcDec::resetDecoder() {
- ivd_ctl_reset_ip_t s_reset_ip;
- ivd_ctl_reset_op_t s_reset_op;
-
- s_reset_ip.u4_size = sizeof(ivd_ctl_reset_ip_t);
- s_reset_ip.e_cmd = IVD_CMD_VIDEO_CTL;
- s_reset_ip.e_sub_cmd = IVD_CMD_CTL_RESET;
- s_reset_op.u4_size = sizeof(ivd_ctl_reset_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_reset_ip,
- &s_reset_op);
- if (IV_SUCCESS != status) {
- ALOGE("error in %s: 0x%x", __func__, s_reset_op.u4_error_code);
- return UNKNOWN_ERROR;
- }
- mStride = 0;
- (void) setNumCores();
- mSignalledError = false;
- mHeaderDecoded = false;
- return OK;
-}
-
-void C2SoftHevcDec::resetPlugin() {
- mSignalledOutputEos = false;
- gettimeofday(&mTimeStart, nullptr);
- gettimeofday(&mTimeEnd, nullptr);
-}
-
-status_t C2SoftHevcDec::deleteDecoder() {
- if (mDecHandle) {
- ivdext_delete_ip_t s_delete_ip;
- ivdext_delete_op_t s_delete_op;
-
- s_delete_ip.s_ivd_delete_ip_t.u4_size = sizeof(ivdext_delete_ip_t);
- s_delete_ip.s_ivd_delete_ip_t.e_cmd = IVD_CMD_DELETE;
- s_delete_op.s_ivd_delete_op_t.u4_size = sizeof(ivdext_delete_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_delete_ip,
- &s_delete_op);
- if (status != IV_SUCCESS) {
- ALOGE("error in %s: 0x%x", __func__,
- s_delete_op.s_ivd_delete_op_t.u4_error_code);
- return UNKNOWN_ERROR;
- }
- mDecHandle = nullptr;
- }
-
- return OK;
-}
-
-void fillEmptyWork(const std::unique_ptr<C2Work> &work) {
- uint32_t flags = 0;
- if (work->input.flags & C2FrameData::FLAG_END_OF_STREAM) {
- flags |= C2FrameData::FLAG_END_OF_STREAM;
- ALOGV("signalling eos");
- }
- work->worklets.front()->output.flags = (C2FrameData::flags_t)flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
-}
-
-void C2SoftHevcDec::finishWork(uint64_t index, const std::unique_ptr<C2Work> &work) {
- std::shared_ptr<C2Buffer> buffer = createGraphicBuffer(std::move(mOutBlock),
- C2Rect(mWidth, mHeight));
- mOutBlock = nullptr;
- {
- IntfImpl::Lock lock = mIntf->lock();
- buffer->setInfo(mIntf->getColorAspects_l());
- }
-
- auto fillWork = [buffer](const std::unique_ptr<C2Work> &work) {
- work->worklets.front()->output.flags = (C2FrameData::flags_t)0;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.buffers.push_back(buffer);
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
- };
- if (work && c2_cntr64_t(index) == work->input.ordinal.frameIndex) {
- fillWork(work);
- } else {
- finish(index, fillWork);
- }
-}
-
-c2_status_t C2SoftHevcDec::ensureDecoderState(const std::shared_ptr<C2BlockPool> &pool) {
- if (!mDecHandle) {
- ALOGE("not supposed to be here, invalid decoder context");
- return C2_CORRUPTED;
- }
- if (mStride != ALIGN64(mWidth)) {
- mStride = ALIGN64(mWidth);
- if (OK != setParams(mStride, IVD_DECODE_FRAME)) return C2_CORRUPTED;
- }
- if (mOutBlock &&
- (mOutBlock->width() != mStride || mOutBlock->height() != mHeight)) {
- mOutBlock.reset();
- }
- if (!mOutBlock) {
- uint32_t format = HAL_PIXEL_FORMAT_YV12;
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- c2_status_t err = pool->fetchGraphicBlock(mStride, mHeight, format, usage, &mOutBlock);
- if (err != C2_OK) {
- ALOGE("fetchGraphicBlock for Output failed with status %d", err);
- return err;
- }
- ALOGV("provided (%dx%d) required (%dx%d)",
- mOutBlock->width(), mOutBlock->height(), mStride, mHeight);
- }
-
- return C2_OK;
-}
-
-// TODO: can overall error checking be improved?
-// TODO: allow configuration of color format and usage for graphic buffers instead
-// of hard coding them to HAL_PIXEL_FORMAT_YV12
-// TODO: pass coloraspects information to surface
-// TODO: test support for dynamic change in resolution
-// TODO: verify if the decoder sent back all frames
-void C2SoftHevcDec::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 0u;
- work->worklets.front()->output.configUpdate.clear();
- work->worklets.front()->output.flags = work->input.flags;
-
- if (mSignalledError || mSignalledOutputEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
-
- size_t inOffset = 0u;
- size_t inSize = 0u;
- uint32_t workIndex = work->input.ordinal.frameIndex.peeku() & 0xFFFFFFFF;
- C2ReadView rView = mDummyReadView;
- if (!work->input.buffers.empty()) {
- rView = work->input.buffers[0]->data().linearBlocks().front().map().get();
- inSize = rView.capacity();
- if (inSize && rView.error()) {
- ALOGE("read view map failed %d", rView.error());
- work->result = rView.error();
- return;
- }
- }
- bool eos = ((work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0);
- bool hasPicture = false;
-
- ALOGV("in buffer attr. size %zu timestamp %d frameindex %d, flags %x",
- inSize, (int)work->input.ordinal.timestamp.peeku(),
- (int)work->input.ordinal.frameIndex.peeku(), work->input.flags);
- size_t inPos = 0;
- while (inPos < inSize) {
- if (C2_OK != ensureDecoderState(pool)) {
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return;
- }
- C2GraphicView wView = mOutBlock->map().get();
- if (wView.error()) {
- ALOGE("graphic view map failed %d", wView.error());
- work->result = wView.error();
- return;
- }
- ivd_video_decode_ip_t s_decode_ip;
- ivd_video_decode_op_t s_decode_op;
- if (!setDecodeArgs(&s_decode_ip, &s_decode_op, &rView, &wView,
- inOffset + inPos, inSize - inPos, workIndex)) {
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return;
- }
-
- if (false == mHeaderDecoded) {
- /* Decode header and get dimensions */
- setParams(mStride, IVD_DECODE_HEADER);
- }
- WORD32 delay;
- GETTIME(&mTimeStart, nullptr);
- TIME_DIFF(mTimeEnd, mTimeStart, delay);
- (void) ivdec_api_function(mDecHandle, &s_decode_ip, &s_decode_op);
- WORD32 decodeTime;
- GETTIME(&mTimeEnd, nullptr);
- TIME_DIFF(mTimeStart, mTimeEnd, decodeTime);
- ALOGV("decodeTime=%6d delay=%6d numBytes=%6d", decodeTime, delay,
- s_decode_op.u4_num_bytes_consumed);
- if (IVD_MEM_ALLOC_FAILED == (s_decode_op.u4_error_code & 0xFF)) {
- ALOGE("allocation failure in decoder");
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return;
- } else if (IVD_STREAM_WIDTH_HEIGHT_NOT_SUPPORTED == (s_decode_op.u4_error_code & 0xFF)) {
- ALOGE("unsupported resolution : %dx%d", mWidth, mHeight);
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return;
- } else if (IVD_RES_CHANGED == (s_decode_op.u4_error_code & 0xFF)) {
- ALOGV("resolution changed");
- drainInternal(DRAIN_COMPONENT_NO_EOS, pool, work);
- resetDecoder();
- resetPlugin();
- work->workletsProcessed = 0u;
-
- /* Decode header and get new dimensions */
- setParams(mStride, IVD_DECODE_HEADER);
- (void) ivdec_api_function(mDecHandle, &s_decode_ip, &s_decode_op);
- }
- if (0 < s_decode_op.u4_pic_wd && 0 < s_decode_op.u4_pic_ht) {
- if (mHeaderDecoded == false) {
- mHeaderDecoded = true;
- setParams(ALIGN64(s_decode_op.u4_pic_wd), IVD_DECODE_FRAME);
- }
- if (s_decode_op.u4_pic_wd != mWidth || s_decode_op.u4_pic_ht != mHeight) {
- mWidth = s_decode_op.u4_pic_wd;
- mHeight = s_decode_op.u4_pic_ht;
- CHECK_EQ(0u, s_decode_op.u4_output_present);
-
- C2VideoSizeStreamInfo::output size(0u, mWidth, mHeight);
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- c2_status_t err =
- mIntf->config({&size}, C2_MAY_BLOCK, &failures);
- if (err == OK) {
- work->worklets.front()->output.configUpdate.push_back(
- C2Param::Copy(size));
- } else {
- ALOGE("Cannot set width and height");
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return;
- }
- continue;
- }
- }
- (void) getVuiParams();
- hasPicture |= (1 == s_decode_op.u4_frame_decoded_flag);
- if (s_decode_op.u4_output_present) {
- finishWork(s_decode_op.u4_ts, work);
- }
- if (0 == s_decode_op.u4_num_bytes_consumed) {
- ALOGD("Bytes consumed is zero. Ignoring remaining bytes");
- break;
- }
- inPos += s_decode_op.u4_num_bytes_consumed;
- if (hasPicture && (inSize - inPos)) {
- ALOGD("decoded frame in current access nal, ignoring further trailing bytes %d",
- (int)inSize - (int)inPos);
- break;
- }
- }
-
- if (eos) {
- drainInternal(DRAIN_COMPONENT_WITH_EOS, pool, work);
- mSignalledOutputEos = true;
- } else if (!hasPicture) {
- fillEmptyWork(work);
- }
-}
-
-c2_status_t C2SoftHevcDec::drainInternal(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool,
- const std::unique_ptr<C2Work> &work) {
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
-
- if (OK != setFlushMode()) return C2_CORRUPTED;
- while (true) {
- if (C2_OK != ensureDecoderState(pool)) {
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return C2_CORRUPTED;
- }
- C2GraphicView wView = mOutBlock->map().get();
- if (wView.error()) {
- ALOGE("graphic view map failed %d", wView.error());
- return C2_CORRUPTED;
- }
- ivd_video_decode_ip_t s_decode_ip;
- ivd_video_decode_op_t s_decode_op;
- if (!setDecodeArgs(&s_decode_ip, &s_decode_op, nullptr, &wView, 0, 0, 0)) {
- mSignalledError = true;
- work->workletsProcessed = 1u;
- return C2_CORRUPTED;
- }
- (void) ivdec_api_function(mDecHandle, &s_decode_ip, &s_decode_op);
- if (s_decode_op.u4_output_present) {
- finishWork(s_decode_op.u4_ts, work);
- } else {
- fillEmptyWork(work);
- break;
- }
- }
-
- return C2_OK;
-}
-
-c2_status_t C2SoftHevcDec::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- return drainInternal(drainMode, pool, nullptr);
-}
-
-class C2SoftHevcDecFactory : public C2ComponentFactory {
-public:
- C2SoftHevcDecFactory() : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {
- }
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftHevcDec(COMPONENT_NAME,
- id,
- std::make_shared<C2SoftHevcDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftHevcDec::IntfImpl>(
- COMPONENT_NAME, id, std::make_shared<C2SoftHevcDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftHevcDecFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftHevcDecFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/hevc/C2SoftHevcDec.h b/media/codecs/hevc/C2SoftHevcDec.h
deleted file mode 100644
index 75111fc..0000000
--- a/media/codecs/hevc/C2SoftHevcDec.h
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_HEVC_DEC_H_
-#define ANDROID_C2_SOFT_HEVC_DEC_H_
-
-#include <media/stagefright/foundation/ColorUtils.h>
-
-#include <SimpleC2Component.h>
-
-#include "ihevc_typedefs.h"
-#include "iv.h"
-#include "ivd.h"
-
-namespace android {
-
-#define ivdec_api_function ihevcd_cxa_api_function
-#define ivdext_create_ip_t ihevcd_cxa_create_ip_t
-#define ivdext_create_op_t ihevcd_cxa_create_op_t
-#define ivdext_delete_ip_t ihevcd_cxa_delete_ip_t
-#define ivdext_delete_op_t ihevcd_cxa_delete_op_t
-#define ivdext_ctl_set_num_cores_ip_t ihevcd_cxa_ctl_set_num_cores_ip_t
-#define ivdext_ctl_set_num_cores_op_t ihevcd_cxa_ctl_set_num_cores_op_t
-#define ivdext_ctl_get_vui_params_ip_t ihevcd_cxa_ctl_get_vui_params_ip_t
-#define ivdext_ctl_get_vui_params_op_t ihevcd_cxa_ctl_get_vui_params_op_t
-#define ALIGN64(x) ((((x) + 63) >> 6) << 6)
-#define MAX_NUM_CORES 4
-#define IVDEXT_CMD_CTL_SET_NUM_CORES \
- (IVD_CONTROL_API_COMMAND_TYPE_T)IHEVCD_CXA_CMD_CTL_SET_NUM_CORES
-#define MIN(a, b) (((a) < (b)) ? (a) : (b))
-#define GETTIME(a, b) gettimeofday(a, b);
-#define TIME_DIFF(start, end, diff) \
- diff = (((end).tv_sec - (start).tv_sec) * 1000000) + \
- ((end).tv_usec - (start).tv_usec);
-
-
-struct C2SoftHevcDec : public SimpleC2Component {
- class IntfImpl;
-
- C2SoftHevcDec(const char* name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl);
- virtual ~C2SoftHevcDec();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
- private:
- status_t createDecoder();
- status_t setNumCores();
- status_t setParams(size_t stride, IVD_VIDEO_DECODE_MODE_T dec_mode);
- status_t getVersion();
- status_t initDecoder();
- bool setDecodeArgs(ivd_video_decode_ip_t *ps_decode_ip,
- ivd_video_decode_op_t *ps_decode_op,
- C2ReadView *inBuffer,
- C2GraphicView *outBuffer,
- size_t inOffset,
- size_t inSize,
- uint32_t tsMarker);
- bool getVuiParams();
- // TODO:This is not the right place for colorAspects functions. These should
- // be part of c2-vndk so that they can be accessed by all video plugins
- // until then, make them feel at home
- bool colorAspectsDiffer(const ColorAspects &a, const ColorAspects &b);
- void updateFinalColorAspects(
- const ColorAspects &otherAspects, const ColorAspects &preferredAspects);
- status_t handleColorAspectsChange();
- c2_status_t ensureDecoderState(const std::shared_ptr<C2BlockPool> &pool);
- void finishWork(uint64_t index, const std::unique_ptr<C2Work> &work);
- status_t setFlushMode();
- c2_status_t drainInternal(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool,
- const std::unique_ptr<C2Work> &work);
- status_t resetDecoder();
- void resetPlugin();
- status_t deleteDecoder();
-
- // TODO:This is not the right place for this enum. These should
- // be part of c2-vndk so that they can be accessed by all video plugins
- // until then, make them feel at home
- enum {
- kNotSupported,
- kPreferBitstream,
- kPreferContainer,
- };
-
- std::shared_ptr<IntfImpl> mIntf;
- iv_obj_t *mDecHandle;
- std::shared_ptr<C2GraphicBlock> mOutBlock;
- uint8_t *mOutBufferFlush;
-
- size_t mNumCores;
- IV_COLOR_FORMAT_T mIvColorformat;
-
- uint32_t mWidth;
- uint32_t mHeight;
- uint32_t mStride;
- bool mSignalledOutputEos;
- bool mSignalledError;
- bool mHeaderDecoded;
-
- // Color aspects. These are ISO values and are meant to detect changes in aspects to avoid
- // converting them to C2 values for each frame
- struct VuiColorAspects {
- uint8_t primaries;
- uint8_t transfer;
- uint8_t coeffs;
- uint8_t fullRange;
-
- // default color aspects
- VuiColorAspects()
- : primaries(2), transfer(2), coeffs(2), fullRange(0) { }
-
- bool operator==(const VuiColorAspects &o) {
- return primaries == o.primaries && transfer == o.transfer && coeffs == o.coeffs
- && fullRange == o.fullRange;
- }
- } mBitstreamColorAspects;
-
- // profile
- struct timeval mTimeStart;
- struct timeval mTimeEnd;
-
- C2_DO_NOT_COPY(C2SoftHevcDec);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_HEVC_DEC_H_
diff --git a/media/codecs/mp3/Android.bp b/media/codecs/mp3/Android.bp
deleted file mode 100644
index 6e013b8..0000000
--- a/media/codecs/mp3/Android.bp
+++ /dev/null
@@ -1,11 +0,0 @@
-cc_library_shared {
- name: "libstagefright_soft_c2mp3dec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: ["C2SoftMp3Dec.cpp"],
-
- static_libs: ["libstagefright_mp3dec"],
-}
diff --git a/media/codecs/mp3/C2SoftMp3Dec.cpp b/media/codecs/mp3/C2SoftMp3Dec.cpp
deleted file mode 100644
index c8b8397..0000000
--- a/media/codecs/mp3/C2SoftMp3Dec.cpp
+++ /dev/null
@@ -1,558 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftMp3Dec"
-#include <log/log.h>
-
-#include <numeric>
-
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <C2PlatformSupport.h>
-#include <SimpleC2Interface.h>
-
-#include "C2SoftMp3Dec.h"
-#include "pvmp3decoder_api.h"
-
-namespace android {
-
-constexpr char COMPONENT_NAME[] = "c2.android.mp3.decoder";
-
-class C2SoftMP3::IntfImpl : public C2InterfaceHelper {
-public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper> &helper)
- : C2InterfaceHelper(helper) {
-
- setDerivedInstance(this);
-
- addParameter(
- DefineParam(mInputFormat, C2_NAME_INPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::input(0u, C2FormatCompressed))
- .build());
-
- addParameter(
- DefineParam(mOutputFormat, C2_NAME_OUTPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::output(0u, C2FormatAudio))
- .build());
-
- addParameter(
- DefineParam(mInputMediaType, C2_NAME_INPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::input>(
- MEDIA_MIMETYPE_AUDIO_MPEG))
- .build());
-
- addParameter(
- DefineParam(mOutputMediaType, C2_NAME_OUTPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::output>(
- MEDIA_MIMETYPE_AUDIO_RAW))
- .build());
-
- addParameter(
- DefineParam(mSampleRate, C2_NAME_STREAM_SAMPLE_RATE_SETTING)
- .withDefault(new C2StreamSampleRateInfo::output(0u, 44100))
- .withFields({C2F(mSampleRate, value).oneOf({8000, 11025, 12000, 16000,
- 22050, 24000, 32000, 44100, 48000})})
- .withSetter((Setter<decltype(*mSampleRate)>::StrictValueWithNoDeps))
- .build());
-
- addParameter(
- DefineParam(mChannelCount, C2_NAME_STREAM_CHANNEL_COUNT_SETTING)
- .withDefault(new C2StreamChannelCountInfo::output(0u, 2))
- .withFields({C2F(mChannelCount, value).inRange(1, 2)})
- .withSetter(Setter<decltype(*mChannelCount)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mBitrate, C2_NAME_STREAM_BITRATE_SETTING)
- .withDefault(new C2BitrateTuning::input(0u, 64000))
- .withFields({C2F(mBitrate, value).inRange(8000, 320000)})
- .withSetter(Setter<decltype(*mBitrate)>::NonStrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mInputMaxBufSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
- .withConstValue(new C2StreamMaxBufferSizeInfo::input(0u, 8192))
- .build());
- }
-
-private:
- std::shared_ptr<C2StreamFormatConfig::input> mInputFormat;
- std::shared_ptr<C2StreamFormatConfig::output> mOutputFormat;
- std::shared_ptr<C2PortMimeConfig::input> mInputMediaType;
- std::shared_ptr<C2PortMimeConfig::output> mOutputMediaType;
- std::shared_ptr<C2StreamSampleRateInfo::output> mSampleRate;
- std::shared_ptr<C2StreamChannelCountInfo::output> mChannelCount;
- std::shared_ptr<C2BitrateTuning::input> mBitrate;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mInputMaxBufSize;
-};
-
-C2SoftMP3::C2SoftMP3(const char *name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl)
- : SimpleC2Component(std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mConfig(nullptr),
- mDecoderBuf(nullptr) {
-}
-
-C2SoftMP3::~C2SoftMP3() {
- onRelease();
-}
-
-c2_status_t C2SoftMP3::onInit() {
- status_t err = initDecoder();
- return err == OK ? C2_OK : C2_NO_MEMORY;
-}
-
-c2_status_t C2SoftMP3::onStop() {
- // Make sure that the next buffer output does not still
- // depend on fragments from the last one decoded.
- pvmp3_InitDecoder(mConfig, mDecoderBuf);
- mSignalledError = false;
- mIsFirst = true;
- mSignalledOutputEos = false;
- mAnchorTimeStamp = 0;
- mProcessedSamples = 0;
-
- return C2_OK;
-}
-
-void C2SoftMP3::onReset() {
- (void)onStop();
-}
-
-void C2SoftMP3::onRelease() {
- mGaplessBytes = false;
- if (mDecoderBuf) {
- free(mDecoderBuf);
- mDecoderBuf = nullptr;
- }
-
- if (mConfig) {
- delete mConfig;
- mConfig = nullptr;
- }
-}
-
-status_t C2SoftMP3::initDecoder() {
- mConfig = new tPVMP3DecoderExternal{};
- if (!mConfig) return NO_MEMORY;
- mConfig->equalizerType = flat;
- mConfig->crcEnabled = false;
-
- size_t memRequirements = pvmp3_decoderMemRequirements();
- mDecoderBuf = malloc(memRequirements);
- if (!mDecoderBuf) return NO_MEMORY;
-
- pvmp3_InitDecoder(mConfig, mDecoderBuf);
-
- mIsFirst = true;
- mGaplessBytes = false;
- mSignalledError = false;
- mSignalledOutputEos = false;
- mAnchorTimeStamp = 0;
- mProcessedSamples = 0;
-
- return OK;
-}
-
-/* The below code is borrowed from ./test/mp3reader.cpp */
-static bool parseMp3Header(uint32_t header, size_t *frame_size,
- uint32_t *out_sampling_rate = nullptr,
- uint32_t *out_channels = nullptr,
- uint32_t *out_bitrate = nullptr,
- uint32_t *out_num_samples = nullptr) {
- *frame_size = 0;
- if (out_sampling_rate) *out_sampling_rate = 0;
- if (out_channels) *out_channels = 0;
- if (out_bitrate) *out_bitrate = 0;
- if (out_num_samples) *out_num_samples = 1152;
-
- if ((header & 0xffe00000) != 0xffe00000) return false;
-
- unsigned version = (header >> 19) & 3;
- if (version == 0x01) return false;
-
- unsigned layer = (header >> 17) & 3;
- if (layer == 0x00) return false;
-
- unsigned bitrate_index = (header >> 12) & 0x0f;
- if (bitrate_index == 0 || bitrate_index == 0x0f) return false;
-
- unsigned sampling_rate_index = (header >> 10) & 3;
- if (sampling_rate_index == 3) return false;
-
- static const int kSamplingRateV1[] = { 44100, 48000, 32000 };
- int sampling_rate = kSamplingRateV1[sampling_rate_index];
- if (version == 2 /* V2 */) {
- sampling_rate /= 2;
- } else if (version == 0 /* V2.5 */) {
- sampling_rate /= 4;
- }
-
- unsigned padding = (header >> 9) & 1;
-
- if (layer == 3) { // layer I
- static const int kBitrateV1[] =
- {
- 32, 64, 96, 128, 160, 192, 224, 256, 288, 320, 352, 384, 416, 448
- };
- static const int kBitrateV2[] =
- {
- 32, 48, 56, 64, 80, 96, 112, 128, 144, 160, 176, 192, 224, 256
- };
-
- int bitrate = (version == 3 /* V1 */) ? kBitrateV1[bitrate_index - 1] :
- kBitrateV2[bitrate_index - 1];
-
- if (out_bitrate) {
- *out_bitrate = bitrate;
- }
- *frame_size = (12000 * bitrate / sampling_rate + padding) * 4;
- if (out_num_samples) {
- *out_num_samples = 384;
- }
- } else { // layer II or III
- static const int kBitrateV1L2[] =
- {
- 32, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320, 384
- };
-
- static const int kBitrateV1L3[] =
- {
- 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320
- };
-
- static const int kBitrateV2[] =
- {
- 8, 16, 24, 32, 40, 48, 56, 64, 80, 96, 112, 128, 144, 160
- };
-
- int bitrate;
- if (version == 3 /* V1 */) {
- bitrate = (layer == 2 /* L2 */) ? kBitrateV1L2[bitrate_index - 1] :
- kBitrateV1L3[bitrate_index - 1];
-
- if (out_num_samples) {
- *out_num_samples = 1152;
- }
- } else { // V2 (or 2.5)
- bitrate = kBitrateV2[bitrate_index - 1];
- if (out_num_samples) {
- *out_num_samples = (layer == 1 /* L3 */) ? 576 : 1152;
- }
- }
-
- if (out_bitrate) {
- *out_bitrate = bitrate;
- }
-
- if (version == 3 /* V1 */) {
- *frame_size = 144000 * bitrate / sampling_rate + padding;
- } else { // V2 or V2.5
- size_t tmp = (layer == 1 /* L3 */) ? 72000 : 144000;
- *frame_size = tmp * bitrate / sampling_rate + padding;
- }
- }
-
- if (out_sampling_rate) {
- *out_sampling_rate = sampling_rate;
- }
-
- if (out_channels) {
- int channel_mode = (header >> 6) & 3;
-
- *out_channels = (channel_mode == 3) ? 1 : 2;
- }
-
- return true;
-}
-
-static uint32_t U32_AT(const uint8_t *ptr) {
- return ptr[0] << 24 | ptr[1] << 16 | ptr[2] << 8 | ptr[3];
-}
-
-static status_t calculateOutSize(uint8 *header, size_t inSize,
- std::vector<size_t> *decodedSizes) {
- uint32_t channels;
- uint32_t numSamples;
- size_t frameSize;
- size_t totalInSize = 0;
-
- while (totalInSize + 4 < inSize) {
- if (!parseMp3Header(U32_AT(header + totalInSize), &frameSize,
- nullptr, &channels, nullptr, &numSamples)) {
- ALOGE("Error in parse mp3 header during outSize estimation");
- return UNKNOWN_ERROR;
- }
- totalInSize += frameSize;
- decodedSizes->push_back(numSamples * channels * sizeof(int16_t));
- }
-
- if (decodedSizes->empty()) return UNKNOWN_ERROR;
-
- return OK;
-}
-
-c2_status_t C2SoftMP3::onFlush_sm() {
- return onStop();
-}
-
-c2_status_t C2SoftMP3::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- (void) pool;
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
-
- return C2_OK;
-}
-
-// TODO: Can overall error checking be improved? As in the check for validity of
-// work, pool ptr, work->input.buffers.size() == 1, ...
-// TODO: Blind removal of 529 samples from the output may not work. Because
-// mpeg layer 1 frame size is 384 samples per frame. This should introduce
-// negative values and can cause SEG faults. Soft omx mp3 plugin can have
-// this problem (CHECK!)
-void C2SoftMP3::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 1u;
- work->worklets.front()->output.configUpdate.clear();
- work->worklets.front()->output.flags = work->input.flags;
-
- if (mSignalledError || mSignalledOutputEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
-
- bool eos = ((work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0);
- size_t inSize = 0u;
- C2ReadView rView = mDummyReadView;
- if (!work->input.buffers.empty()) {
- rView = work->input.buffers[0]->data().linearBlocks().front().map().get();
- inSize = rView.capacity();
- if (inSize && rView.error()) {
- ALOGE("read view map failed %d", rView.error());
- work->result = rView.error();
- return;
- }
- }
-
- if (inSize == 0 && (!mGaplessBytes || !eos)) {
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- return;
- }
- ALOGV("in buffer attr. size %zu timestamp %d frameindex %d", inSize,
- (int)work->input.ordinal.timestamp.peeku(), (int)work->input.ordinal.frameIndex.peeku());
-
- int32_t numChannels = mConfig->num_channels;
- size_t calOutSize;
- std::vector<size_t> decodedSizes;
- if (inSize && OK != calculateOutSize(const_cast<uint8 *>(rView.data()),
- inSize, &decodedSizes)) {
- work->result = C2_CORRUPTED;
- return;
- }
- calOutSize = std::accumulate(decodedSizes.begin(), decodedSizes.end(), 0);
- if (eos) {
- calOutSize += kPVMP3DecoderDelay * numChannels * sizeof(int16_t);
- }
-
- std::shared_ptr<C2LinearBlock> block;
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- c2_status_t err = pool->fetchLinearBlock(calOutSize, usage, &block);
- if (err != C2_OK) {
- ALOGE("fetchLinearBlock for Output failed with status %d", err);
- work->result = C2_NO_MEMORY;
- return;
- }
- C2WriteView wView = block->map().get();
- if (wView.error()) {
- ALOGE("write view map failed %d", wView.error());
- work->result = wView.error();
- return;
- }
-
- int outSize = 0;
- int outOffset = 0;
- auto it = decodedSizes.begin();
- size_t inPos = 0;
- int32_t samplingRate = mConfig->samplingRate;
- while (inPos < inSize) {
- if (it == decodedSizes.end()) {
- ALOGE("unexpected trailing bytes, ignoring them");
- break;
- }
-
- mConfig->pInputBuffer = const_cast<uint8 *>(rView.data() + inPos);
- mConfig->inputBufferCurrentLength = (inSize - inPos);
- mConfig->inputBufferMaxLength = 0;
- mConfig->inputBufferUsedLength = 0;
- mConfig->outputFrameSize = (calOutSize - outSize);
- mConfig->pOutputBuffer = reinterpret_cast<int16_t *> (wView.data() + outSize);
-
- ERROR_CODE decoderErr;
- if ((decoderErr = pvmp3_framedecoder(mConfig, mDecoderBuf))
- != NO_DECODING_ERROR) {
- ALOGE("mp3 decoder returned error %d", decoderErr);
- if (decoderErr != NO_ENOUGH_MAIN_DATA_ERROR
- && decoderErr != SIDE_INFO_ERROR) {
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
-
- // This is recoverable, just ignore the current frame and
- // play silence instead.
- ALOGV("ignoring error and sending silence");
- if (mConfig->outputFrameSize == 0) {
- mConfig->outputFrameSize = *it / sizeof(int16_t);
- }
- memset(mConfig->pOutputBuffer, 0, mConfig->outputFrameSize * sizeof(int16_t));
- } else if (mConfig->samplingRate != samplingRate
- || mConfig->num_channels != numChannels) {
- ALOGI("Reconfiguring decoder: %d->%d Hz, %d->%d channels",
- samplingRate, mConfig->samplingRate,
- numChannels, mConfig->num_channels);
- samplingRate = mConfig->samplingRate;
- numChannels = mConfig->num_channels;
-
- C2StreamSampleRateInfo::output sampleRateInfo(0u, samplingRate);
- C2StreamChannelCountInfo::output channelCountInfo(0u, numChannels);
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- c2_status_t err = mIntf->config(
- { &sampleRateInfo, &channelCountInfo },
- C2_MAY_BLOCK,
- &failures);
- if (err == OK) {
- work->worklets.front()->output.configUpdate.push_back(C2Param::Copy(sampleRateInfo));
- work->worklets.front()->output.configUpdate.push_back(C2Param::Copy(channelCountInfo));
- } else {
- ALOGE("Config Update failed");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- }
- if (*it != mConfig->outputFrameSize * sizeof(int16_t)) {
- ALOGE("panic, parsed size does not match decoded size");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- outSize += mConfig->outputFrameSize * sizeof(int16_t);
- inPos += mConfig->inputBufferUsedLength;
- it++;
- }
- if (mIsFirst) {
- mIsFirst = false;
- mGaplessBytes = true;
- // The decoder delay is 529 samples, so trim that many samples off
- // the start of the first output buffer. This essentially makes this
- // decoder have zero delay, which the rest of the pipeline assumes.
- outOffset = kPVMP3DecoderDelay * numChannels * sizeof(int16_t);
- mAnchorTimeStamp = work->input.ordinal.timestamp.peekull();
- }
- if (eos) {
- if (calOutSize >=
- outSize + kPVMP3DecoderDelay * numChannels * sizeof(int16_t)) {
- if (!memset(reinterpret_cast<int16_t*>(wView.data() + outSize), 0,
- kPVMP3DecoderDelay * numChannels * sizeof(int16_t))) {
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- ALOGV("Adding 529 samples at end");
- mGaplessBytes = false;
- outSize += kPVMP3DecoderDelay * numChannels * sizeof(int16_t);
- }
- }
-
- uint64_t outTimeStamp = mProcessedSamples * 1000000ll / samplingRate;
- mProcessedSamples += ((outSize - outOffset) / (numChannels * sizeof(int16_t)));
- ALOGV("out buffer attr. offset %d size %d timestamp %u", outOffset, outSize - outOffset,
- (uint32_t)(mAnchorTimeStamp + outTimeStamp));
- decodedSizes.clear();
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.buffers.push_back(
- createLinearBuffer(block, outOffset, outSize - outOffset));
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->worklets.front()->output.ordinal.timestamp = mAnchorTimeStamp + outTimeStamp;
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- }
-}
-
-class C2SoftMp3DecFactory : public C2ComponentFactory {
-public:
- C2SoftMp3DecFactory() : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {
- }
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftMP3(COMPONENT_NAME,
- id,
- std::make_shared<C2SoftMP3::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftMP3::IntfImpl>(
- COMPONENT_NAME, id, std::make_shared<C2SoftMP3::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftMp3DecFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftMp3DecFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
-
diff --git a/media/codecs/mp3/C2SoftMp3Dec.h b/media/codecs/mp3/C2SoftMp3Dec.h
deleted file mode 100644
index 402bdc4..0000000
--- a/media/codecs/mp3/C2SoftMp3Dec.h
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_MP3_DEC_H_
-#define ANDROID_C2_SOFT_MP3_DEC_H_
-
-#include <SimpleC2Component.h>
-
-
-struct tPVMP3DecoderExternal;
-
-bool parseMp3Header(uint32_t header, size_t *frame_size,
- uint32_t *out_sampling_rate = nullptr,
- uint32_t *out_channels = nullptr,
- uint32_t *out_bitrate = nullptr,
- uint32_t *out_num_samples = nullptr);
-
-namespace android {
-
-struct C2SoftMP3 : public SimpleC2Component {
- class IntfImpl;
-
- C2SoftMP3(const char *name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl);
- virtual ~C2SoftMP3();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
-
-private:
- enum {
- kPVMP3DecoderDelay = 529 // samples
- };
-
- std::shared_ptr<IntfImpl> mIntf;
- tPVMP3DecoderExternal *mConfig;
- void *mDecoderBuf;
-
- bool mIsFirst;
- bool mSignalledError;
- bool mSignalledOutputEos;
- bool mGaplessBytes;
- uint64_t mAnchorTimeStamp;
- uint64_t mProcessedSamples;
-
- status_t initDecoder();
-
- C2_DO_NOT_COPY(C2SoftMP3);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_MP3_DEC_H_
diff --git a/media/codecs/mp3/MODULE_LICENSE_APACHE2 b/media/codecs/mp3/MODULE_LICENSE_APACHE2
deleted file mode 100644
index e69de29..0000000
--- a/media/codecs/mp3/MODULE_LICENSE_APACHE2
+++ /dev/null
diff --git a/media/codecs/mp3/NOTICE b/media/codecs/mp3/NOTICE
deleted file mode 100644
index c5b1efa..0000000
--- a/media/codecs/mp3/NOTICE
+++ /dev/null
@@ -1,190 +0,0 @@
-
- Copyright (c) 2005-2008, The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
diff --git a/media/codecs/mp3/patent_disclaimer.txt b/media/codecs/mp3/patent_disclaimer.txt
deleted file mode 100644
index b4bf11d..0000000
--- a/media/codecs/mp3/patent_disclaimer.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-
-THIS IS NOT A GRANT OF PATENT RIGHTS.
-
-Google makes no representation or warranty that the codecs for which
-source code is made available hereunder are unencumbered by
-third-party patents. Those intending to use this source code in
-hardware or software products are advised that implementations of
-these codecs, including in open source software or shareware, may
-require patent licenses from the relevant patent holders.
diff --git a/media/codecs/mpeg2/Android.bp b/media/codecs/mpeg2/Android.bp
deleted file mode 100644
index 85d867e..0000000
--- a/media/codecs/mpeg2/Android.bp
+++ /dev/null
@@ -1,16 +0,0 @@
-cc_library_shared {
- name: "libstagefright_soft_c2mpeg2dec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_signed-defaults",
- ],
-
- srcs: ["C2SoftMpeg2Dec.cpp"],
-
- static_libs: ["libmpeg2dec"],
-
- include_dirs: [
- "external/libmpeg2/decoder",
- "external/libmpeg2/common",
- ],
-}
diff --git a/media/codecs/mpeg2/C2SoftMpeg2Dec.cpp b/media/codecs/mpeg2/C2SoftMpeg2Dec.cpp
deleted file mode 100644
index da32ec0..0000000
--- a/media/codecs/mpeg2/C2SoftMpeg2Dec.cpp
+++ /dev/null
@@ -1,1069 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftMpeg2Dec"
-#include <log/log.h>
-
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <C2Debug.h>
-#include <C2PlatformSupport.h>
-#include <Codec2Mapper.h>
-#include <SimpleC2Interface.h>
-
-#include "C2SoftMpeg2Dec.h"
-#include "impeg2d.h"
-
-namespace android {
-
-constexpr char COMPONENT_NAME[] = "c2.android.mpeg2.decoder";
-
-class C2SoftMpeg2Dec::IntfImpl : public SimpleInterface<void>::BaseParams {
-public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper> &helper)
- : SimpleInterface<void>::BaseParams(
- helper,
- COMPONENT_NAME,
- C2Component::KIND_DECODER,
- C2Component::DOMAIN_VIDEO,
- MEDIA_MIMETYPE_VIDEO_MPEG2) {
- noPrivateBuffers(); // TODO: account for our buffers here
- noInputReferences();
- noOutputReferences();
- noInputLatency();
- noTimeStretch();
-
- // TODO: output latency and reordering
-
- addParameter(
- DefineParam(mAttrib, C2_PARAMKEY_COMPONENT_ATTRIBUTES)
- .withConstValue(new C2ComponentAttributesSetting(C2Component::ATTRIB_IS_TEMPORAL))
- .build());
-
- addParameter(
- DefineParam(mSize, C2_PARAMKEY_PICTURE_SIZE)
- .withDefault(new C2StreamPictureSizeInfo::output(0u, 320, 240))
- .withFields({
- C2F(mSize, width).inRange(16, 1920, 4),
- C2F(mSize, height).inRange(16, 1088, 4),
- })
- .withSetter(SizeSetter)
- .build());
-
- addParameter(
- DefineParam(mProfileLevel, C2_PARAMKEY_PROFILE_LEVEL)
- .withDefault(new C2StreamProfileLevelInfo::input(0u,
- C2Config::PROFILE_MP2V_SIMPLE, C2Config::LEVEL_MP2V_HIGH))
- .withFields({
- C2F(mProfileLevel, profile).oneOf({
- C2Config::PROFILE_MP2V_SIMPLE,
- C2Config::PROFILE_MP2V_MAIN}),
- C2F(mProfileLevel, level).oneOf({
- C2Config::LEVEL_MP2V_LOW,
- C2Config::LEVEL_MP2V_MAIN,
- C2Config::LEVEL_MP2V_HIGH_1440,
- C2Config::LEVEL_MP2V_HIGH})
- })
- .withSetter(ProfileLevelSetter, mSize)
- .build());
-
- addParameter(
- DefineParam(mMaxSize, C2_PARAMKEY_MAX_PICTURE_SIZE)
- .withDefault(new C2StreamMaxPictureSizeTuning::output(0u, 320, 240))
- .withFields({
- C2F(mSize, width).inRange(2, 1920, 2),
- C2F(mSize, height).inRange(2, 1088, 2),
- })
- .withSetter(MaxPictureSizeSetter, mSize)
- .build());
-
- addParameter(
- DefineParam(mMaxInputSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
- .withDefault(new C2StreamMaxBufferSizeInfo::input(0u, 320 * 240 * 3 / 2))
- .withFields({
- C2F(mMaxInputSize, value).any(),
- })
- .calculatedAs(MaxInputSizeSetter, mMaxSize)
- .build());
-
- C2ChromaOffsetStruct locations[1] = { C2ChromaOffsetStruct::ITU_YUV_420_0() };
- std::shared_ptr<C2StreamColorInfo::output> defaultColorInfo =
- C2StreamColorInfo::output::AllocShared(
- 1u, 0u, 8u /* bitDepth */, C2Color::YUV_420);
- memcpy(defaultColorInfo->m.locations, locations, sizeof(locations));
-
- defaultColorInfo =
- C2StreamColorInfo::output::AllocShared(
- { C2ChromaOffsetStruct::ITU_YUV_420_0() },
- 0u, 8u /* bitDepth */, C2Color::YUV_420);
- helper->addStructDescriptors<C2ChromaOffsetStruct>();
-
- addParameter(
- DefineParam(mColorInfo, C2_PARAMKEY_CODED_COLOR_INFO)
- .withConstValue(defaultColorInfo)
- .build());
-
- addParameter(
- DefineParam(mDefaultColorAspects, C2_PARAMKEY_DEFAULT_COLOR_ASPECTS)
- .withDefault(new C2StreamColorAspectsTuning::output(
- 0u, C2Color::RANGE_UNSPECIFIED, C2Color::PRIMARIES_UNSPECIFIED,
- C2Color::TRANSFER_UNSPECIFIED, C2Color::MATRIX_UNSPECIFIED))
- .withFields({
- C2F(mDefaultColorAspects, range).inRange(
- C2Color::RANGE_UNSPECIFIED, C2Color::RANGE_OTHER),
- C2F(mDefaultColorAspects, primaries).inRange(
- C2Color::PRIMARIES_UNSPECIFIED, C2Color::PRIMARIES_OTHER),
- C2F(mDefaultColorAspects, transfer).inRange(
- C2Color::TRANSFER_UNSPECIFIED, C2Color::TRANSFER_OTHER),
- C2F(mDefaultColorAspects, matrix).inRange(
- C2Color::MATRIX_UNSPECIFIED, C2Color::MATRIX_OTHER)
- })
- .withSetter(DefaultColorAspectsSetter)
- .build());
-
- addParameter(
- DefineParam(mCodedColorAspects, C2_PARAMKEY_VUI_COLOR_ASPECTS)
- .withDefault(new C2StreamColorAspectsInfo::input(
- 0u, C2Color::RANGE_LIMITED, C2Color::PRIMARIES_UNSPECIFIED,
- C2Color::TRANSFER_UNSPECIFIED, C2Color::MATRIX_UNSPECIFIED))
- .withFields({
- C2F(mCodedColorAspects, range).inRange(
- C2Color::RANGE_UNSPECIFIED, C2Color::RANGE_OTHER),
- C2F(mCodedColorAspects, primaries).inRange(
- C2Color::PRIMARIES_UNSPECIFIED, C2Color::PRIMARIES_OTHER),
- C2F(mCodedColorAspects, transfer).inRange(
- C2Color::TRANSFER_UNSPECIFIED, C2Color::TRANSFER_OTHER),
- C2F(mCodedColorAspects, matrix).inRange(
- C2Color::MATRIX_UNSPECIFIED, C2Color::MATRIX_OTHER)
- })
- .withSetter(CodedColorAspectsSetter)
- .build());
-
- addParameter(
- DefineParam(mColorAspects, C2_PARAMKEY_COLOR_ASPECTS)
- .withDefault(new C2StreamColorAspectsInfo::output(
- 0u, C2Color::RANGE_UNSPECIFIED, C2Color::PRIMARIES_UNSPECIFIED,
- C2Color::TRANSFER_UNSPECIFIED, C2Color::MATRIX_UNSPECIFIED))
- .withFields({
- C2F(mColorAspects, range).inRange(
- C2Color::RANGE_UNSPECIFIED, C2Color::RANGE_OTHER),
- C2F(mColorAspects, primaries).inRange(
- C2Color::PRIMARIES_UNSPECIFIED, C2Color::PRIMARIES_OTHER),
- C2F(mColorAspects, transfer).inRange(
- C2Color::TRANSFER_UNSPECIFIED, C2Color::TRANSFER_OTHER),
- C2F(mColorAspects, matrix).inRange(
- C2Color::MATRIX_UNSPECIFIED, C2Color::MATRIX_OTHER)
- })
- .withSetter(ColorAspectsSetter, mDefaultColorAspects, mCodedColorAspects)
- .build());
-
- // TODO: support more formats?
- addParameter(
- DefineParam(mPixelFormat, C2_PARAMKEY_PIXEL_FORMAT)
- .withConstValue(new C2StreamPixelFormatInfo::output(
- 0u, HAL_PIXEL_FORMAT_YCBCR_420_888))
- .build());
- }
-
- static C2R SizeSetter(bool mayBlock, const C2P<C2StreamPictureSizeInfo::output> &oldMe,
- C2P<C2VideoSizeStreamInfo::output> &me) {
- (void)mayBlock;
- C2R res = C2R::Ok();
- if (!me.F(me.v.width).supportsAtAll(me.v.width)) {
- res = res.plus(C2SettingResultBuilder::BadValue(me.F(me.v.width)));
- me.set().width = oldMe.v.width;
- }
- if (!me.F(me.v.height).supportsAtAll(me.v.height)) {
- res = res.plus(C2SettingResultBuilder::BadValue(me.F(me.v.height)));
- me.set().height = oldMe.v.height;
- }
- return res;
- }
-
- static C2R MaxPictureSizeSetter(bool mayBlock, C2P<C2StreamMaxPictureSizeTuning::output> &me,
- const C2P<C2StreamPictureSizeInfo::output> &size) {
- (void)mayBlock;
- // TODO: get max width/height from the size's field helpers vs. hardcoding
- me.set().width = c2_min(c2_max(me.v.width, size.v.width), 1920u);
- me.set().height = c2_min(c2_max(me.v.height, size.v.height), 1088u);
- return C2R::Ok();
- }
-
- static C2R MaxInputSizeSetter(bool mayBlock, C2P<C2StreamMaxBufferSizeInfo::input> &me,
- const C2P<C2StreamMaxPictureSizeTuning::output> &maxSize) {
- (void)mayBlock;
- // assume compression ratio of 1
- me.set().value = (((maxSize.v.width + 15) / 16) * ((maxSize.v.height + 15) / 16) * 384);
- return C2R::Ok();
- }
-
- static C2R ProfileLevelSetter(bool mayBlock, C2P<C2StreamProfileLevelInfo::input> &me,
- const C2P<C2StreamPictureSizeInfo::output> &size) {
- (void)mayBlock;
- (void)size;
- (void)me; // TODO: validate
- return C2R::Ok();
- }
-
- static C2R DefaultColorAspectsSetter(bool mayBlock, C2P<C2StreamColorAspectsTuning::output> &me) {
- (void)mayBlock;
- if (me.v.range > C2Color::RANGE_OTHER) {
- me.set().range = C2Color::RANGE_OTHER;
- }
- if (me.v.primaries > C2Color::PRIMARIES_OTHER) {
- me.set().primaries = C2Color::PRIMARIES_OTHER;
- }
- if (me.v.transfer > C2Color::TRANSFER_OTHER) {
- me.set().transfer = C2Color::TRANSFER_OTHER;
- }
- if (me.v.matrix > C2Color::MATRIX_OTHER) {
- me.set().matrix = C2Color::MATRIX_OTHER;
- }
- return C2R::Ok();
- }
-
- static C2R CodedColorAspectsSetter(bool mayBlock, C2P<C2StreamColorAspectsInfo::input> &me) {
- (void)mayBlock;
- if (me.v.range > C2Color::RANGE_OTHER) {
- me.set().range = C2Color::RANGE_OTHER;
- }
- if (me.v.primaries > C2Color::PRIMARIES_OTHER) {
- me.set().primaries = C2Color::PRIMARIES_OTHER;
- }
- if (me.v.transfer > C2Color::TRANSFER_OTHER) {
- me.set().transfer = C2Color::TRANSFER_OTHER;
- }
- if (me.v.matrix > C2Color::MATRIX_OTHER) {
- me.set().matrix = C2Color::MATRIX_OTHER;
- }
- return C2R::Ok();
- }
-
- static C2R ColorAspectsSetter(bool mayBlock, C2P<C2StreamColorAspectsInfo::output> &me,
- const C2P<C2StreamColorAspectsTuning::output> &def,
- const C2P<C2StreamColorAspectsInfo::input> &coded) {
- (void)mayBlock;
- // take default values for all unspecified fields, and coded values for specified ones
- me.set().range = coded.v.range == RANGE_UNSPECIFIED ? def.v.range : coded.v.range;
- me.set().primaries = coded.v.primaries == PRIMARIES_UNSPECIFIED
- ? def.v.primaries : coded.v.primaries;
- me.set().transfer = coded.v.transfer == TRANSFER_UNSPECIFIED
- ? def.v.transfer : coded.v.transfer;
- me.set().matrix = coded.v.matrix == MATRIX_UNSPECIFIED ? def.v.matrix : coded.v.matrix;
- return C2R::Ok();
- }
-
- std::shared_ptr<C2StreamColorAspectsInfo::output> getColorAspects_l() {
- return mColorAspects;
- }
-
-private:
- std::shared_ptr<C2StreamProfileLevelInfo::input> mProfileLevel;
- std::shared_ptr<C2StreamPictureSizeInfo::output> mSize;
- std::shared_ptr<C2StreamMaxPictureSizeTuning::output> mMaxSize;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mMaxInputSize;
- std::shared_ptr<C2StreamColorInfo::output> mColorInfo;
- std::shared_ptr<C2StreamColorAspectsInfo::input> mCodedColorAspects;
- std::shared_ptr<C2StreamColorAspectsTuning::output> mDefaultColorAspects;
- std::shared_ptr<C2StreamColorAspectsInfo::output> mColorAspects;
- std::shared_ptr<C2StreamPixelFormatInfo::output> mPixelFormat;
-};
-
-static size_t getCpuCoreCount() {
- long cpuCoreCount = 1;
-#if defined(_SC_NPROCESSORS_ONLN)
- cpuCoreCount = sysconf(_SC_NPROCESSORS_ONLN);
-#else
- // _SC_NPROC_ONLN must be defined...
- cpuCoreCount = sysconf(_SC_NPROC_ONLN);
-#endif
- CHECK(cpuCoreCount >= 1);
- ALOGV("Number of CPU cores: %ld", cpuCoreCount);
- return (size_t)cpuCoreCount;
-}
-
-static void *ivd_aligned_malloc(WORD32 alignment, WORD32 size) {
- return memalign(alignment, size);
-}
-
-static void ivd_aligned_free(void *mem) {
- free(mem);
-}
-
-C2SoftMpeg2Dec::C2SoftMpeg2Dec(
- const char *name,
- c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl)
- : SimpleC2Component(std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mDecHandle(nullptr),
- mMemRecords(nullptr),
- mOutBufferDrain(nullptr),
- mIvColorformat(IV_YUV_420P),
- mWidth(320),
- mHeight(240) {
- // If input dump is enabled, then open create an empty file
- GENERATE_FILE_NAMES();
- CREATE_DUMP_FILE(mInFile);
-}
-
-C2SoftMpeg2Dec::~C2SoftMpeg2Dec() {
- onRelease();
-}
-
-c2_status_t C2SoftMpeg2Dec::onInit() {
- status_t err = initDecoder();
- return err == OK ? C2_OK : C2_CORRUPTED;
-}
-
-c2_status_t C2SoftMpeg2Dec::onStop() {
- if (OK != resetDecoder()) return C2_CORRUPTED;
- resetPlugin();
- return C2_OK;
-}
-
-void C2SoftMpeg2Dec::onReset() {
- (void) onStop();
-}
-
-void C2SoftMpeg2Dec::onRelease() {
- (void) deleteDecoder();
- if (mOutBufferDrain) {
- ivd_aligned_free(mOutBufferDrain);
- mOutBufferDrain = nullptr;
- }
- if (mOutBlock) {
- mOutBlock.reset();
- }
- if (mMemRecords) {
- ivd_aligned_free(mMemRecords);
- mMemRecords = nullptr;
- }
-}
-
-c2_status_t C2SoftMpeg2Dec::onFlush_sm() {
- if (OK != setFlushMode()) return C2_CORRUPTED;
-
- uint32_t displayStride = mStride;
- uint32_t displayHeight = mHeight;
- uint32_t bufferSize = displayStride * displayHeight * 3 / 2;
- mOutBufferDrain = (uint8_t *)ivd_aligned_malloc(128, bufferSize);
- if (!mOutBufferDrain) {
- ALOGE("could not allocate tmp output buffer (for flush) of size %u ", bufferSize);
- return C2_NO_MEMORY;
- }
-
- while (true) {
- ivd_video_decode_ip_t s_decode_ip;
- ivd_video_decode_op_t s_decode_op;
-
- setDecodeArgs(&s_decode_ip, &s_decode_op, nullptr, nullptr, 0, 0, 0);
- (void) ivdec_api_function(mDecHandle, &s_decode_ip, &s_decode_op);
- if (0 == s_decode_op.u4_output_present) {
- resetPlugin();
- break;
- }
- }
-
- if (mOutBufferDrain) {
- ivd_aligned_free(mOutBufferDrain);
- mOutBufferDrain = nullptr;
- }
-
- return C2_OK;
-}
-
-status_t C2SoftMpeg2Dec::getNumMemRecords() {
- iv_num_mem_rec_ip_t s_num_mem_rec_ip;
- iv_num_mem_rec_op_t s_num_mem_rec_op;
-
- s_num_mem_rec_ip.u4_size = sizeof(s_num_mem_rec_ip);
- s_num_mem_rec_ip.e_cmd = IV_CMD_GET_NUM_MEM_REC;
- s_num_mem_rec_op.u4_size = sizeof(s_num_mem_rec_op);
-
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_num_mem_rec_ip,
- &s_num_mem_rec_op);
- if (IV_SUCCESS != status) {
- ALOGE("Error in getting mem records: 0x%x", s_num_mem_rec_op.u4_error_code);
- return UNKNOWN_ERROR;
- }
- mNumMemRecords = s_num_mem_rec_op.u4_num_mem_rec;
-
- return OK;
-}
-
-status_t C2SoftMpeg2Dec::fillMemRecords() {
- iv_mem_rec_t *ps_mem_rec = (iv_mem_rec_t *) ivd_aligned_malloc(
- 128, mNumMemRecords * sizeof(iv_mem_rec_t));
- if (!ps_mem_rec) {
- ALOGE("Allocation failure");
- return NO_MEMORY;
- }
- memset(ps_mem_rec, 0, mNumMemRecords * sizeof(iv_mem_rec_t));
- for (size_t i = 0; i < mNumMemRecords; i++)
- ps_mem_rec[i].u4_size = sizeof(iv_mem_rec_t);
- mMemRecords = ps_mem_rec;
-
- ivdext_fill_mem_rec_ip_t s_fill_mem_ip;
- ivdext_fill_mem_rec_op_t s_fill_mem_op;
-
- s_fill_mem_ip.s_ivd_fill_mem_rec_ip_t.u4_size = sizeof(ivdext_fill_mem_rec_ip_t);
- s_fill_mem_ip.u4_share_disp_buf = 0;
- s_fill_mem_ip.e_output_format = mIvColorformat;
- s_fill_mem_ip.u4_deinterlace = 1;
- s_fill_mem_ip.s_ivd_fill_mem_rec_ip_t.e_cmd = IV_CMD_FILL_NUM_MEM_REC;
- s_fill_mem_ip.s_ivd_fill_mem_rec_ip_t.pv_mem_rec_location = mMemRecords;
- s_fill_mem_ip.s_ivd_fill_mem_rec_ip_t.u4_max_frm_wd = mWidth;
- s_fill_mem_ip.s_ivd_fill_mem_rec_ip_t.u4_max_frm_ht = mHeight;
- s_fill_mem_op.s_ivd_fill_mem_rec_op_t.u4_size = sizeof(ivdext_fill_mem_rec_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_fill_mem_ip,
- &s_fill_mem_op);
- if (IV_SUCCESS != status) {
- ALOGE("Error in filling mem records: 0x%x",
- s_fill_mem_op.s_ivd_fill_mem_rec_op_t.u4_error_code);
- return UNKNOWN_ERROR;
- }
-
- CHECK_EQ(mNumMemRecords, s_fill_mem_op.s_ivd_fill_mem_rec_op_t.u4_num_mem_rec_filled);
- for (size_t i = 0; i < mNumMemRecords; i++, ps_mem_rec++) {
- ps_mem_rec->pv_base = ivd_aligned_malloc(
- ps_mem_rec->u4_mem_alignment, ps_mem_rec->u4_mem_size);
- if (!ps_mem_rec->pv_base) {
- ALOGE("Allocation failure for memory record #%zu of size %u",
- i, ps_mem_rec->u4_mem_size);
- return NO_MEMORY;
- }
- }
-
- return OK;
-}
-
-status_t C2SoftMpeg2Dec::createDecoder() {
- ivdext_init_ip_t s_init_ip;
- ivdext_init_op_t s_init_op;
-
- s_init_ip.s_ivd_init_ip_t.u4_size = sizeof(ivdext_init_ip_t);
- s_init_ip.s_ivd_init_ip_t.e_cmd = (IVD_API_COMMAND_TYPE_T)IV_CMD_INIT;
- s_init_ip.s_ivd_init_ip_t.pv_mem_rec_location = mMemRecords;
- s_init_ip.s_ivd_init_ip_t.u4_frm_max_wd = mWidth;
- s_init_ip.s_ivd_init_ip_t.u4_frm_max_ht = mHeight;
- s_init_ip.u4_share_disp_buf = 0;
- s_init_ip.u4_deinterlace = 1;
- s_init_ip.s_ivd_init_ip_t.u4_num_mem_rec = mNumMemRecords;
- s_init_ip.s_ivd_init_ip_t.e_output_format = mIvColorformat;
- s_init_op.s_ivd_init_op_t.u4_size = sizeof(ivdext_init_op_t);
-
- mDecHandle = (iv_obj_t *)mMemRecords[0].pv_base;
- mDecHandle->pv_fxns = (void *)ivdec_api_function;
- mDecHandle->u4_size = sizeof(iv_obj_t);
-
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_init_ip,
- &s_init_op);
- if (status != IV_SUCCESS) {
- ALOGE("error in %s: 0x%x", __func__,
- s_init_op.s_ivd_init_op_t.u4_error_code);
- return UNKNOWN_ERROR;
- }
-
- return OK;
-}
-
-status_t C2SoftMpeg2Dec::setNumCores() {
- ivdext_ctl_set_num_cores_ip_t s_set_num_cores_ip;
- ivdext_ctl_set_num_cores_op_t s_set_num_cores_op;
-
- s_set_num_cores_ip.u4_size = sizeof(ivdext_ctl_set_num_cores_ip_t);
- s_set_num_cores_ip.e_cmd = IVD_CMD_VIDEO_CTL;
- s_set_num_cores_ip.e_sub_cmd = IVDEXT_CMD_CTL_SET_NUM_CORES;
- s_set_num_cores_ip.u4_num_cores = mNumCores;
- s_set_num_cores_op.u4_size = sizeof(ivdext_ctl_set_num_cores_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_set_num_cores_ip,
- &s_set_num_cores_op);
- if (status != IV_SUCCESS) {
- ALOGD("error in %s: 0x%x", __func__, s_set_num_cores_op.u4_error_code);
- return UNKNOWN_ERROR;
- }
-
- return OK;
-}
-
-status_t C2SoftMpeg2Dec::setParams(size_t stride) {
- ivd_ctl_set_config_ip_t s_set_dyn_params_ip;
- ivd_ctl_set_config_op_t s_set_dyn_params_op;
-
- s_set_dyn_params_ip.u4_size = sizeof(ivd_ctl_set_config_ip_t);
- s_set_dyn_params_ip.e_cmd = IVD_CMD_VIDEO_CTL;
- s_set_dyn_params_ip.e_sub_cmd = IVD_CMD_CTL_SETPARAMS;
- s_set_dyn_params_ip.u4_disp_wd = (UWORD32) stride;
- s_set_dyn_params_ip.e_frm_skip_mode = IVD_SKIP_NONE;
- s_set_dyn_params_ip.e_frm_out_mode = IVD_DISPLAY_FRAME_OUT;
- s_set_dyn_params_ip.e_vid_dec_mode = IVD_DECODE_FRAME;
- s_set_dyn_params_op.u4_size = sizeof(ivd_ctl_set_config_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_set_dyn_params_ip,
- &s_set_dyn_params_op);
- if (status != IV_SUCCESS) {
- ALOGE("error in %s: 0x%x", __func__, s_set_dyn_params_op.u4_error_code);
- return UNKNOWN_ERROR;
- }
-
- return OK;
-}
-
-status_t C2SoftMpeg2Dec::getVersion() {
- ivd_ctl_getversioninfo_ip_t s_get_versioninfo_ip;
- ivd_ctl_getversioninfo_op_t s_get_versioninfo_op;
- UWORD8 au1_buf[512];
-
- s_get_versioninfo_ip.u4_size = sizeof(ivd_ctl_getversioninfo_ip_t);
- s_get_versioninfo_ip.e_cmd = IVD_CMD_VIDEO_CTL;
- s_get_versioninfo_ip.e_sub_cmd = IVD_CMD_CTL_GETVERSION;
- s_get_versioninfo_ip.pv_version_buffer = au1_buf;
- s_get_versioninfo_ip.u4_version_buffer_size = sizeof(au1_buf);
- s_get_versioninfo_op.u4_size = sizeof(ivd_ctl_getversioninfo_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_get_versioninfo_ip,
- &s_get_versioninfo_op);
- if (status != IV_SUCCESS) {
- ALOGD("error in %s: 0x%x", __func__,
- s_get_versioninfo_op.u4_error_code);
- } else {
- ALOGV("ittiam decoder version number: %s",
- (char *) s_get_versioninfo_ip.pv_version_buffer);
- }
-
- return OK;
-}
-
-status_t C2SoftMpeg2Dec::initDecoder() {
- status_t ret = getNumMemRecords();
- if (OK != ret) return ret;
-
- ret = fillMemRecords();
- if (OK != ret) return ret;
-
- if (OK != createDecoder()) return UNKNOWN_ERROR;
-
- mNumCores = MIN(getCpuCoreCount(), MAX_NUM_CORES);
- mStride = ALIGN64(mWidth);
- mSignalledError = false;
- resetPlugin();
- (void) setNumCores();
- if (OK != setParams(mStride)) return UNKNOWN_ERROR;
- (void) getVersion();
-
- return OK;
-}
-
-bool C2SoftMpeg2Dec::setDecodeArgs(ivd_video_decode_ip_t *ps_decode_ip,
- ivd_video_decode_op_t *ps_decode_op,
- C2ReadView *inBuffer,
- C2GraphicView *outBuffer,
- size_t inOffset,
- size_t inSize,
- uint32_t tsMarker) {
- uint32_t displayStride = mStride;
- uint32_t displayHeight = mHeight;
- size_t lumaSize = displayStride * displayHeight;
- size_t chromaSize = lumaSize >> 2;
-
- ps_decode_ip->u4_size = sizeof(ivd_video_decode_ip_t);
- ps_decode_ip->e_cmd = IVD_CMD_VIDEO_DECODE;
- if (inBuffer) {
- ps_decode_ip->u4_ts = tsMarker;
- ps_decode_ip->pv_stream_buffer = const_cast<uint8_t *>(inBuffer->data() + inOffset);
- ps_decode_ip->u4_num_Bytes = inSize;
- } else {
- ps_decode_ip->u4_ts = 0;
- ps_decode_ip->pv_stream_buffer = nullptr;
- ps_decode_ip->u4_num_Bytes = 0;
- }
- ps_decode_ip->s_out_buffer.u4_min_out_buf_size[0] = lumaSize;
- ps_decode_ip->s_out_buffer.u4_min_out_buf_size[1] = chromaSize;
- ps_decode_ip->s_out_buffer.u4_min_out_buf_size[2] = chromaSize;
- if (outBuffer) {
- if (outBuffer->width() < displayStride || outBuffer->height() < displayHeight) {
- ALOGE("Output buffer too small: provided (%dx%d) required (%ux%u)",
- outBuffer->width(), outBuffer->height(), displayStride, displayHeight);
- return false;
- }
- ps_decode_ip->s_out_buffer.pu1_bufs[0] = outBuffer->data()[C2PlanarLayout::PLANE_Y];
- ps_decode_ip->s_out_buffer.pu1_bufs[1] = outBuffer->data()[C2PlanarLayout::PLANE_U];
- ps_decode_ip->s_out_buffer.pu1_bufs[2] = outBuffer->data()[C2PlanarLayout::PLANE_V];
- } else {
- ps_decode_ip->s_out_buffer.pu1_bufs[0] = mOutBufferDrain;
- ps_decode_ip->s_out_buffer.pu1_bufs[1] = mOutBufferDrain + lumaSize;
- ps_decode_ip->s_out_buffer.pu1_bufs[2] = mOutBufferDrain + lumaSize + chromaSize;
- }
- ps_decode_ip->s_out_buffer.u4_num_bufs = 3;
- ps_decode_op->u4_size = sizeof(ivd_video_decode_op_t);
-
- return true;
-}
-
-
-bool C2SoftMpeg2Dec::getSeqInfo() {
- ivdext_ctl_get_seq_info_ip_t s_ctl_get_seq_info_ip;
- ivdext_ctl_get_seq_info_op_t s_ctl_get_seq_info_op;
-
- s_ctl_get_seq_info_ip.u4_size = sizeof(ivdext_ctl_get_seq_info_ip_t);
- s_ctl_get_seq_info_ip.e_cmd = IVD_CMD_VIDEO_CTL;
- s_ctl_get_seq_info_ip.e_sub_cmd =
- (IVD_CONTROL_API_COMMAND_TYPE_T)IMPEG2D_CMD_CTL_GET_SEQ_INFO;
- s_ctl_get_seq_info_op.u4_size = sizeof(ivdext_ctl_get_seq_info_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_ctl_get_seq_info_ip,
- &s_ctl_get_seq_info_op);
- if (status != IV_SUCCESS) {
- ALOGW("Error in getting Sequence info: 0x%x", s_ctl_get_seq_info_op.u4_error_code);
- return false;
- }
-
- VuiColorAspects vuiColorAspects;
- vuiColorAspects.primaries = s_ctl_get_seq_info_op.u1_colour_primaries;
- vuiColorAspects.transfer = s_ctl_get_seq_info_op.u1_transfer_characteristics;
- vuiColorAspects.coeffs = s_ctl_get_seq_info_op.u1_matrix_coefficients;
- vuiColorAspects.fullRange = false; // mpeg2 video has limited range.
-
- // convert vui aspects to C2 values if changed
- if (!(vuiColorAspects == mBitstreamColorAspects)) {
- mBitstreamColorAspects = vuiColorAspects;
- ColorAspects sfAspects;
- C2StreamColorAspectsInfo::input codedAspects = { 0u };
- ColorUtils::convertIsoColorAspectsToCodecAspects(
- vuiColorAspects.primaries, vuiColorAspects.transfer, vuiColorAspects.coeffs,
- vuiColorAspects.fullRange, sfAspects);
- if (!C2Mapper::map(sfAspects.mPrimaries, &codedAspects.primaries)) {
- codedAspects.primaries = C2Color::PRIMARIES_UNSPECIFIED;
- }
- if (!C2Mapper::map(sfAspects.mRange, &codedAspects.range)) {
- codedAspects.range = C2Color::RANGE_UNSPECIFIED;
- }
- if (!C2Mapper::map(sfAspects.mMatrixCoeffs, &codedAspects.matrix)) {
- codedAspects.matrix = C2Color::MATRIX_UNSPECIFIED;
- }
- if (!C2Mapper::map(sfAspects.mTransfer, &codedAspects.transfer)) {
- codedAspects.transfer = C2Color::TRANSFER_UNSPECIFIED;
- }
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- (void)mIntf->config({&codedAspects}, C2_MAY_BLOCK, &failures);
- }
- return true;
-}
-
-status_t C2SoftMpeg2Dec::setFlushMode() {
- ivd_ctl_flush_ip_t s_set_flush_ip;
- ivd_ctl_flush_op_t s_set_flush_op;
-
- s_set_flush_ip.u4_size = sizeof(ivd_ctl_flush_ip_t);
- s_set_flush_ip.e_cmd = IVD_CMD_VIDEO_CTL;
- s_set_flush_ip.e_sub_cmd = IVD_CMD_CTL_FLUSH;
- s_set_flush_op.u4_size = sizeof(ivd_ctl_flush_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_set_flush_ip,
- &s_set_flush_op);
- if (status != IV_SUCCESS) {
- ALOGE("error in %s: 0x%x", __func__, s_set_flush_op.u4_error_code);
- return UNKNOWN_ERROR;
- }
-
- return OK;
-}
-
-status_t C2SoftMpeg2Dec::resetDecoder() {
- ivd_ctl_reset_ip_t s_reset_ip;
- ivd_ctl_reset_op_t s_reset_op;
-
- s_reset_ip.u4_size = sizeof(ivd_ctl_reset_ip_t);
- s_reset_ip.e_cmd = IVD_CMD_VIDEO_CTL;
- s_reset_ip.e_sub_cmd = IVD_CMD_CTL_RESET;
- s_reset_op.u4_size = sizeof(ivd_ctl_reset_op_t);
- IV_API_CALL_STATUS_T status = ivdec_api_function(mDecHandle,
- &s_reset_ip,
- &s_reset_op);
- if (IV_SUCCESS != status) {
- ALOGE("error in %s: 0x%x", __func__, s_reset_op.u4_error_code);
- return UNKNOWN_ERROR;
- }
- (void) setNumCores();
- mStride = 0;
- mSignalledError = false;
-
- return OK;
-}
-
-void C2SoftMpeg2Dec::resetPlugin() {
- mSignalledOutputEos = false;
- gettimeofday(&mTimeStart, nullptr);
- gettimeofday(&mTimeEnd, nullptr);
-}
-
-status_t C2SoftMpeg2Dec::deleteDecoder() {
- if (mMemRecords) {
- iv_mem_rec_t *ps_mem_rec = mMemRecords;
-
- for (size_t i = 0; i < mNumMemRecords; i++, ps_mem_rec++) {
- if (ps_mem_rec->pv_base) {
- ivd_aligned_free(ps_mem_rec->pv_base);
- }
- }
- ivd_aligned_free(mMemRecords);
- mMemRecords = nullptr;
- }
- mDecHandle = nullptr;
-
- return OK;
-}
-
-status_t C2SoftMpeg2Dec::reInitDecoder() {
- deleteDecoder();
-
- status_t ret = initDecoder();
- if (OK != ret) {
- ALOGE("Failed to initialize decoder");
- deleteDecoder();
- return ret;
- }
- return OK;
-}
-
-void fillEmptyWork(const std::unique_ptr<C2Work> &work) {
- uint32_t flags = 0;
- if (work->input.flags & C2FrameData::FLAG_END_OF_STREAM) {
- flags |= C2FrameData::FLAG_END_OF_STREAM;
- ALOGV("signalling eos");
- }
- work->worklets.front()->output.flags = (C2FrameData::flags_t)flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
-}
-
-void C2SoftMpeg2Dec::finishWork(uint64_t index, const std::unique_ptr<C2Work> &work) {
- std::shared_ptr<C2Buffer> buffer = createGraphicBuffer(std::move(mOutBlock),
- C2Rect(mWidth, mHeight));
- mOutBlock = nullptr;
- {
- IntfImpl::Lock lock = mIntf->lock();
- buffer->setInfo(mIntf->getColorAspects_l());
- }
-
- auto fillWork = [buffer](const std::unique_ptr<C2Work> &work) {
- work->worklets.front()->output.flags = (C2FrameData::flags_t)0;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.buffers.push_back(buffer);
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
- };
- if (work && c2_cntr64_t(index) == work->input.ordinal.frameIndex) {
- fillWork(work);
- } else {
- finish(index, fillWork);
- }
-}
-
-c2_status_t C2SoftMpeg2Dec::ensureDecoderState(const std::shared_ptr<C2BlockPool> &pool) {
- if (!mDecHandle) {
- ALOGE("not supposed to be here, invalid decoder context");
- return C2_CORRUPTED;
- }
- if (mStride != ALIGN64(mWidth)) {
- mStride = ALIGN64(mWidth);
- if (OK != setParams(mStride)) return C2_CORRUPTED;
- }
- if (mOutBlock &&
- (mOutBlock->width() != mStride || mOutBlock->height() != mHeight)) {
- mOutBlock.reset();
- }
- if (!mOutBlock) {
- uint32_t format = HAL_PIXEL_FORMAT_YV12;
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- c2_status_t err = pool->fetchGraphicBlock(mStride, mHeight, format, usage, &mOutBlock);
- if (err != C2_OK) {
- ALOGE("fetchGraphicBlock for Output failed with status %d", err);
- return err;
- }
- ALOGV("provided (%dx%d) required (%dx%d)",
- mOutBlock->width(), mOutBlock->height(), mStride, mHeight);
- }
-
- return C2_OK;
-}
-
-// TODO: can overall error checking be improved?
-// TODO: allow configuration of color format and usage for graphic buffers instead
-// of hard coding them to HAL_PIXEL_FORMAT_YV12
-// TODO: pass coloraspects information to surface
-// TODO: test support for dynamic change in resolution
-// TODO: verify if the decoder sent back all frames
-void C2SoftMpeg2Dec::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 0u;
- work->worklets.front()->output.configUpdate.clear();
- work->worklets.front()->output.flags = work->input.flags;
-
- if (mSignalledError || mSignalledOutputEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
-
- size_t inOffset = 0u;
- size_t inSize = 0u;
- uint32_t workIndex = work->input.ordinal.frameIndex.peeku() & 0xFFFFFFFF;
- C2ReadView rView = mDummyReadView;
- if (!work->input.buffers.empty()) {
- rView = work->input.buffers[0]->data().linearBlocks().front().map().get();
- inSize = rView.capacity();
- if (inSize && rView.error()) {
- ALOGE("read view map failed %d", rView.error());
- work->result = C2_CORRUPTED;
- return;
- }
- }
- bool eos = ((work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0);
- bool hasPicture = false;
-
- ALOGV("in buffer attr. size %zu timestamp %d frameindex %d, flags %x",
- inSize, (int)work->input.ordinal.timestamp.peeku(),
- (int)work->input.ordinal.frameIndex.peeku(), work->input.flags);
- size_t inPos = 0;
- while (inPos < inSize) {
- if (C2_OK != ensureDecoderState(pool)) {
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return;
- }
- C2GraphicView wView = mOutBlock->map().get();
- if (wView.error()) {
- ALOGE("graphic view map failed %d", wView.error());
- work->result = C2_CORRUPTED;
- return;
- }
-
- ivd_video_decode_ip_t s_decode_ip;
- ivd_video_decode_op_t s_decode_op;
- if (!setDecodeArgs(&s_decode_ip, &s_decode_op, &rView, &wView,
- inOffset + inPos, inSize - inPos, workIndex)) {
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return;
- }
- // If input dump is enabled, then write to file
- DUMP_TO_FILE(mInFile, s_decode_ip.pv_stream_buffer, s_decode_ip.u4_num_Bytes);
- WORD32 delay;
- GETTIME(&mTimeStart, nullptr);
- TIME_DIFF(mTimeEnd, mTimeStart, delay);
- (void) ivdec_api_function(mDecHandle, &s_decode_ip, &s_decode_op);
- WORD32 decodeTime;
- GETTIME(&mTimeEnd, nullptr);
- TIME_DIFF(mTimeStart, mTimeEnd, decodeTime);
- ALOGV("decodeTime=%6d delay=%6d numBytes=%6d ", decodeTime, delay,
- s_decode_op.u4_num_bytes_consumed);
- if (IMPEG2D_UNSUPPORTED_DIMENSIONS == s_decode_op.u4_error_code) {
- ALOGV("unsupported resolution : %dx%d", s_decode_op.u4_pic_wd, s_decode_op.u4_pic_ht);
- drainInternal(DRAIN_COMPONENT_NO_EOS, pool, work);
- resetPlugin();
- work->workletsProcessed = 0u;
- mWidth = s_decode_op.u4_pic_wd;
- mHeight = s_decode_op.u4_pic_ht;
-
- ALOGI("Configuring decoder: mWidth %d , mHeight %d ",
- mWidth, mHeight);
- C2VideoSizeStreamInfo::output size(0u, mWidth, mHeight);
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- c2_status_t err =
- mIntf->config({&size}, C2_MAY_BLOCK, &failures);
- if (err == OK) {
- work->worklets.front()->output.configUpdate.push_back(
- C2Param::Copy(size));
- } else {
- ALOGE("Cannot set width and height");
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return;
- }
-
- if (OK != reInitDecoder()) {
- ALOGE("Failed to reinitialize decoder");
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return;
- }
- continue;
- } else if (IVD_RES_CHANGED == (s_decode_op.u4_error_code & 0xFF)) {
- ALOGV("resolution changed");
- drainInternal(DRAIN_COMPONENT_NO_EOS, pool, work);
- resetDecoder();
- resetPlugin();
- work->workletsProcessed = 0u;
- continue;
- }
- if (0 < s_decode_op.u4_pic_wd && 0 < s_decode_op.u4_pic_ht) {
- if (s_decode_op.u4_pic_wd != mWidth || s_decode_op.u4_pic_ht != mHeight) {
- mWidth = s_decode_op.u4_pic_wd;
- mHeight = s_decode_op.u4_pic_ht;
- CHECK_EQ(0u, s_decode_op.u4_output_present);
-
- ALOGI("Configuring decoder out: mWidth %d , mHeight %d ",
- mWidth, mHeight);
- C2VideoSizeStreamInfo::output size(0u, mWidth, mHeight);
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- c2_status_t err =
- mIntf->config({&size}, C2_MAY_BLOCK, &failures);
- if (err == OK) {
- work->worklets.front()->output.configUpdate.push_back(
- C2Param::Copy(size));
- } else {
- ALOGE("Cannot set width and height");
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return;
- }
- }
- }
-
- (void) getSeqInfo();
- hasPicture |= (1 == s_decode_op.u4_frame_decoded_flag);
- if (s_decode_op.u4_output_present) {
- finishWork(s_decode_op.u4_ts, work);
- }
-
- inPos += s_decode_op.u4_num_bytes_consumed;
- if (hasPicture && (inSize - inPos) != 0) {
- ALOGD("decoded frame in current access nal, ignoring further trailing bytes %d",
- (int)inSize - (int)inPos);
- break;
- }
- }
-
- if (eos) {
- drainInternal(DRAIN_COMPONENT_WITH_EOS, pool, work);
- mSignalledOutputEos = true;
- } else if (!hasPicture) {
- fillEmptyWork(work);
- }
-}
-
-c2_status_t C2SoftMpeg2Dec::drainInternal(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool,
- const std::unique_ptr<C2Work> &work) {
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
-
- if (OK != setFlushMode()) return C2_CORRUPTED;
- while (true) {
- if (C2_OK != ensureDecoderState(pool)) {
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return C2_CORRUPTED;
- }
- C2GraphicView wView = mOutBlock->map().get();
- if (wView.error()) {
- ALOGE("graphic view map failed %d", wView.error());
- return C2_CORRUPTED;
- }
- ivd_video_decode_ip_t s_decode_ip;
- ivd_video_decode_op_t s_decode_op;
- if (!setDecodeArgs(&s_decode_ip, &s_decode_op, nullptr, &wView, 0, 0, 0)) {
- mSignalledError = true;
- work->workletsProcessed = 1u;
- return C2_CORRUPTED;
- }
- (void) ivdec_api_function(mDecHandle, &s_decode_ip, &s_decode_op);
- if (s_decode_op.u4_output_present) {
- finishWork(s_decode_op.u4_ts, work);
- } else {
- fillEmptyWork(work);
- break;
- }
- }
-
- return C2_OK;
-}
-
-c2_status_t C2SoftMpeg2Dec::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- return drainInternal(drainMode, pool, nullptr);
-}
-
-class C2SoftMpeg2DecFactory : public C2ComponentFactory {
-public:
- C2SoftMpeg2DecFactory() : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {
- }
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftMpeg2Dec(COMPONENT_NAME,
- id,
- std::make_shared<C2SoftMpeg2Dec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftMpeg2Dec::IntfImpl>(
- COMPONENT_NAME, id, std::make_shared<C2SoftMpeg2Dec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftMpeg2DecFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftMpeg2DecFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/mpeg2/C2SoftMpeg2Dec.h b/media/codecs/mpeg2/C2SoftMpeg2Dec.h
deleted file mode 100644
index 9999872..0000000
--- a/media/codecs/mpeg2/C2SoftMpeg2Dec.h
+++ /dev/null
@@ -1,195 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_MPEG2_DEC_H_
-#define ANDROID_C2_SOFT_MPEG2_DEC_H_
-
-#include <SimpleC2Component.h>
-
-#include <media/stagefright/foundation/ColorUtils.h>
-
-#include "iv_datatypedef.h"
-#include "iv.h"
-#include "ivd.h"
-
-namespace android {
-
-#define ivdec_api_function impeg2d_api_function
-#define ivdext_init_ip_t impeg2d_init_ip_t
-#define ivdext_init_op_t impeg2d_init_op_t
-#define ivdext_fill_mem_rec_ip_t impeg2d_fill_mem_rec_ip_t
-#define ivdext_fill_mem_rec_op_t impeg2d_fill_mem_rec_op_t
-#define ivdext_ctl_set_num_cores_ip_t impeg2d_ctl_set_num_cores_ip_t
-#define ivdext_ctl_set_num_cores_op_t impeg2d_ctl_set_num_cores_op_t
-#define ivdext_ctl_get_seq_info_ip_t impeg2d_ctl_get_seq_info_ip_t
-#define ivdext_ctl_get_seq_info_op_t impeg2d_ctl_get_seq_info_op_t
-#define ALIGN64(x) ((((x) + 63) >> 6) << 6)
-#define MAX_NUM_CORES 4
-#define IVDEXT_CMD_CTL_SET_NUM_CORES \
- (IVD_CONTROL_API_COMMAND_TYPE_T)IMPEG2D_CMD_CTL_SET_NUM_CORES
-#define MIN(a, b) (((a) < (b)) ? (a) : (b))
-#define GETTIME(a, b) gettimeofday(a, b);
-#define TIME_DIFF(start, end, diff) \
- diff = (((end).tv_sec - (start).tv_sec) * 1000000) + \
- ((end).tv_usec - (start).tv_usec);
-
-#ifdef FILE_DUMP_ENABLE
- #define INPUT_DUMP_PATH "/sdcard/clips/mpeg2d_input"
- #define INPUT_DUMP_EXT "m2v"
- #define GENERATE_FILE_NAMES() { \
- GETTIME(&mTimeStart, NULL); \
- strcpy(mInFile, ""); \
- sprintf(mInFile, "%s_%ld.%ld.%s", INPUT_DUMP_PATH, \
- mTimeStart.tv_sec, mTimeStart.tv_usec, \
- INPUT_DUMP_EXT); \
- }
- #define CREATE_DUMP_FILE(m_filename) { \
- FILE *fp = fopen(m_filename, "wb"); \
- if (fp != NULL) { \
- fclose(fp); \
- } else { \
- ALOGD("Could not open file %s", m_filename); \
- } \
- }
- #define DUMP_TO_FILE(m_filename, m_buf, m_size) \
- { \
- FILE *fp = fopen(m_filename, "ab"); \
- if (fp != NULL && m_buf != NULL) { \
- uint32_t i; \
- i = fwrite(m_buf, 1, m_size, fp); \
- ALOGD("fwrite ret %d to write %d", i, m_size); \
- if (i != (uint32_t)m_size) { \
- ALOGD("Error in fwrite, returned %d", i); \
- perror("Error in write to file"); \
- } \
- fclose(fp); \
- } else { \
- ALOGD("Could not write to file %s", m_filename);\
- } \
- }
-#else /* FILE_DUMP_ENABLE */
- #define INPUT_DUMP_PATH
- #define INPUT_DUMP_EXT
- #define OUTPUT_DUMP_PATH
- #define OUTPUT_DUMP_EXT
- #define GENERATE_FILE_NAMES()
- #define CREATE_DUMP_FILE(m_filename)
- #define DUMP_TO_FILE(m_filename, m_buf, m_size)
-#endif /* FILE_DUMP_ENABLE */
-
-struct C2SoftMpeg2Dec : public SimpleC2Component {
- class IntfImpl;
-
- C2SoftMpeg2Dec(const char* name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl);
- virtual ~C2SoftMpeg2Dec();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
- private:
- status_t getNumMemRecords();
- status_t fillMemRecords();
- status_t createDecoder();
- status_t setNumCores();
- status_t setParams(size_t stride);
- status_t getVersion();
- status_t initDecoder();
- bool setDecodeArgs(ivd_video_decode_ip_t *ps_decode_ip,
- ivd_video_decode_op_t *ps_decode_op,
- C2ReadView *inBuffer,
- C2GraphicView *outBuffer,
- size_t inOffset,
- size_t inSize,
- uint32_t tsMarker);
- bool getSeqInfo();
- c2_status_t ensureDecoderState(const std::shared_ptr<C2BlockPool> &pool);
- void finishWork(uint64_t index, const std::unique_ptr<C2Work> &work);
- status_t setFlushMode();
- c2_status_t drainInternal(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool,
- const std::unique_ptr<C2Work> &work);
- status_t resetDecoder();
- void resetPlugin();
- status_t deleteDecoder();
- status_t reInitDecoder();
-
- // TODO:This is not the right place for this enum. These should
- // be part of c2-vndk so that they can be accessed by all video plugins
- // until then, make them feel at home
- enum {
- kNotSupported,
- kPreferBitstream,
- kPreferContainer,
- };
-
- std::shared_ptr<IntfImpl> mIntf;
- iv_obj_t *mDecHandle;
- iv_mem_rec_t *mMemRecords;
- size_t mNumMemRecords;
- std::shared_ptr<C2GraphicBlock> mOutBlock;
- uint8_t *mOutBufferDrain;
-
- size_t mNumCores;
- IV_COLOR_FORMAT_T mIvColorformat;
-
- uint32_t mWidth;
- uint32_t mHeight;
- uint32_t mStride;
- bool mSignalledOutputEos;
- bool mSignalledError;
-
- // Color aspects. These are ISO values and are meant to detect changes in aspects to avoid
- // converting them to C2 values for each frame
- struct VuiColorAspects {
- uint8_t primaries;
- uint8_t transfer;
- uint8_t coeffs;
- uint8_t fullRange;
-
- // default color aspects
- VuiColorAspects()
- : primaries(2), transfer(2), coeffs(2), fullRange(0) { }
-
- bool operator==(const VuiColorAspects &o) {
- return primaries == o.primaries && transfer == o.transfer && coeffs == o.coeffs
- && fullRange == o.fullRange;
- }
- } mBitstreamColorAspects;
-
- // profile
- struct timeval mTimeStart;
- struct timeval mTimeEnd;
-#ifdef FILE_DUMP_ENABLE
- char mInFile[200];
-#endif /* FILE_DUMP_ENABLE */
-
- C2_DO_NOT_COPY(C2SoftMpeg2Dec);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_MPEG2_DEC_H_
diff --git a/media/codecs/mpeg4_h263/Android.bp b/media/codecs/mpeg4_h263/Android.bp
deleted file mode 100644
index 3155bc2..0000000
--- a/media/codecs/mpeg4_h263/Android.bp
+++ /dev/null
@@ -1,66 +0,0 @@
-cc_library_shared {
- name: "libstagefright_soft_c2mpeg4dec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_signed-defaults",
- ],
-
- srcs: ["C2SoftMpeg4Dec.cpp"],
-
- static_libs: ["libstagefright_m4vh263dec"],
-
- cflags: [
- "-DOSCL_IMPORT_REF=",
- "-DMPEG4",
- ],
-}
-
-cc_library_shared {
- name: "libstagefright_soft_c2h263dec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_signed-defaults",
- ],
-
- srcs: ["C2SoftMpeg4Dec.cpp"],
-
- static_libs: ["libstagefright_m4vh263dec"],
-
- cflags: [
- "-DOSCL_IMPORT_REF=",
- ],
-}
-
-cc_library_shared {
- name: "libstagefright_soft_c2mpeg4enc",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_signed-defaults",
- ],
-
-
- srcs: ["C2SoftMpeg4Enc.cpp"],
-
- static_libs: ["libstagefright_m4vh263enc"],
-
- cflags: [
- "-DMPEG4",
- "-DOSCL_IMPORT_REF=",
- ],
-}
-
-cc_library_shared {
- name: "libstagefright_soft_c2h263enc",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_signed-defaults",
- ],
-
- srcs: ["C2SoftMpeg4Enc.cpp"],
-
- static_libs: [ "libstagefright_m4vh263enc" ],
-
- cflags: [
- "-DOSCL_IMPORT_REF=",
- ],
-}
diff --git a/media/codecs/mpeg4_h263/C2SoftMpeg4Dec.cpp b/media/codecs/mpeg4_h263/C2SoftMpeg4Dec.cpp
deleted file mode 100644
index 901f5ed..0000000
--- a/media/codecs/mpeg4_h263/C2SoftMpeg4Dec.cpp
+++ /dev/null
@@ -1,746 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#ifdef MPEG4
- #define LOG_TAG "C2SoftMpeg4Dec"
-#else
- #define LOG_TAG "C2SoftH263Dec"
-#endif
-#include <log/log.h>
-
-#include <media/stagefright/foundation/AUtils.h>
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <C2Debug.h>
-#include <C2PlatformSupport.h>
-#include <SimpleC2Interface.h>
-
-#include "C2SoftMpeg4Dec.h"
-#include "mp4dec_api.h"
-
-namespace android {
-
-#ifdef MPEG4
-constexpr char COMPONENT_NAME[] = "c2.android.mpeg4.decoder";
-#else
-constexpr char COMPONENT_NAME[] = "c2.android.h263.decoder";
-#endif
-
-class C2SoftMpeg4Dec::IntfImpl : public SimpleInterface<void>::BaseParams {
-public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper> &helper)
- : SimpleInterface<void>::BaseParams(
- helper,
- COMPONENT_NAME,
- C2Component::KIND_DECODER,
- C2Component::DOMAIN_VIDEO,
-#ifdef MPEG4
- MEDIA_MIMETYPE_VIDEO_MPEG4
-#else
- MEDIA_MIMETYPE_VIDEO_H263
-#endif
- ) {
- noPrivateBuffers(); // TODO: account for our buffers here
- noInputReferences();
- noOutputReferences();
- noInputLatency();
- noTimeStretch();
-
- // TODO: output latency and reordering
-
- addParameter(
- DefineParam(mAttrib, C2_PARAMKEY_COMPONENT_ATTRIBUTES)
- .withConstValue(new C2ComponentAttributesSetting(C2Component::ATTRIB_IS_TEMPORAL))
- .build());
-
- addParameter(
- DefineParam(mSize, C2_PARAMKEY_PICTURE_SIZE)
- .withDefault(new C2StreamPictureSizeInfo::output(0u, 176, 144))
- .withFields({
-#ifdef MPEG4
- C2F(mSize, width).inRange(2, 1920, 2),
- C2F(mSize, height).inRange(2, 1088, 2),
-#else
- C2F(mSize, width).inRange(2, 352, 2),
- C2F(mSize, height).inRange(2, 288, 2),
-#endif
- })
- .withSetter(SizeSetter)
- .build());
-
-#ifdef MPEG4
- addParameter(
- DefineParam(mProfileLevel, C2_PARAMKEY_PROFILE_LEVEL)
- .withDefault(new C2StreamProfileLevelInfo::input(0u,
- C2Config::PROFILE_MP4V_SIMPLE, C2Config::LEVEL_MP4V_3))
- .withFields({
- C2F(mProfileLevel, profile).equalTo(
- C2Config::PROFILE_MP4V_SIMPLE),
- C2F(mProfileLevel, level).oneOf({
- C2Config::LEVEL_MP4V_0,
- C2Config::LEVEL_MP4V_0B,
- C2Config::LEVEL_MP4V_1,
- C2Config::LEVEL_MP4V_2,
- C2Config::LEVEL_MP4V_3,
- C2Config::LEVEL_MP4V_3B,
- C2Config::LEVEL_MP4V_4,
- C2Config::LEVEL_MP4V_4A,
- C2Config::LEVEL_MP4V_5,
- C2Config::LEVEL_MP4V_6})
- })
- .withSetter(ProfileLevelSetter, mSize)
- .build());
-#else
- addParameter(
- DefineParam(mProfileLevel, C2_PARAMKEY_PROFILE_LEVEL)
- .withDefault(new C2StreamProfileLevelInfo::input(0u,
- C2Config::PROFILE_H263_BASELINE, C2Config::LEVEL_H263_30))
- .withFields({
- C2F(mProfileLevel, profile).oneOf({
- C2Config::PROFILE_H263_BASELINE,
- C2Config::PROFILE_H263_ISWV2}),
- C2F(mProfileLevel, level).oneOf({
- C2Config::LEVEL_H263_10,
- C2Config::LEVEL_H263_20,
- C2Config::LEVEL_H263_30,
- C2Config::LEVEL_H263_40,
- C2Config::LEVEL_H263_45})
- })
- .withSetter(ProfileLevelSetter, mSize)
- .build());
-#endif
-
- addParameter(
- DefineParam(mMaxSize, C2_PARAMKEY_MAX_PICTURE_SIZE)
-#ifdef MPEG4
- .withDefault(new C2StreamMaxPictureSizeTuning::output(0u, 1920, 1088))
-#else
- .withDefault(new C2StreamMaxPictureSizeTuning::output(0u, 352, 288))
-#endif
- .withFields({
-#ifdef MPEG4
- C2F(mSize, width).inRange(2, 1920, 2),
- C2F(mSize, height).inRange(2, 1088, 2),
-#else
- C2F(mSize, width).inRange(2, 352, 2),
- C2F(mSize, height).inRange(2, 288, 2),
-#endif
- })
- .withSetter(MaxPictureSizeSetter, mSize)
- .build());
-
- addParameter(
- DefineParam(mMaxInputSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
-#ifdef MPEG4
- .withDefault(new C2StreamMaxBufferSizeInfo::input(0u, 1920 * 1088 * 3 / 2))
-#else
- .withDefault(new C2StreamMaxBufferSizeInfo::input(0u, 352 * 288 * 3 / 2))
-#endif
- .withFields({
- C2F(mMaxInputSize, value).any(),
- })
- .calculatedAs(MaxInputSizeSetter, mMaxSize)
- .build());
-
- C2ChromaOffsetStruct locations[1] = { C2ChromaOffsetStruct::ITU_YUV_420_0() };
- std::shared_ptr<C2StreamColorInfo::output> defaultColorInfo =
- C2StreamColorInfo::output::AllocShared(
- 1u, 0u, 8u /* bitDepth */, C2Color::YUV_420);
- memcpy(defaultColorInfo->m.locations, locations, sizeof(locations));
-
- defaultColorInfo =
- C2StreamColorInfo::output::AllocShared(
- { C2ChromaOffsetStruct::ITU_YUV_420_0() },
- 0u, 8u /* bitDepth */, C2Color::YUV_420);
- helper->addStructDescriptors<C2ChromaOffsetStruct>();
-
- addParameter(
- DefineParam(mColorInfo, C2_PARAMKEY_CODED_COLOR_INFO)
- .withConstValue(defaultColorInfo)
- .build());
-
- // TODO: support more formats?
- addParameter(
- DefineParam(mPixelFormat, C2_PARAMKEY_PIXEL_FORMAT)
- .withConstValue(new C2StreamPixelFormatInfo::output(
- 0u, HAL_PIXEL_FORMAT_YCBCR_420_888))
- .build());
- }
-
- static C2R SizeSetter(bool mayBlock, const C2P<C2StreamPictureSizeInfo::output> &oldMe,
- C2P<C2VideoSizeStreamInfo::output> &me) {
- (void)mayBlock;
- C2R res = C2R::Ok();
- if (!me.F(me.v.width).supportsAtAll(me.v.width)) {
- res = res.plus(C2SettingResultBuilder::BadValue(me.F(me.v.width)));
- me.set().width = oldMe.v.width;
- }
- if (!me.F(me.v.height).supportsAtAll(me.v.height)) {
- res = res.plus(C2SettingResultBuilder::BadValue(me.F(me.v.height)));
- me.set().height = oldMe.v.height;
- }
- return res;
- }
-
- static C2R MaxPictureSizeSetter(bool mayBlock, C2P<C2StreamMaxPictureSizeTuning::output> &me,
- const C2P<C2StreamPictureSizeInfo::output> &size) {
- (void)mayBlock;
- // TODO: get max width/height from the size's field helpers vs. hardcoding
-#ifdef MPEG4
- me.set().width = c2_min(c2_max(me.v.width, size.v.width), 1920u);
- me.set().height = c2_min(c2_max(me.v.height, size.v.height), 1088u);
-#else
- me.set().width = c2_min(c2_max(me.v.width, size.v.width), 352u);
- me.set().height = c2_min(c2_max(me.v.height, size.v.height), 288u);
-#endif
- return C2R::Ok();
- }
-
- static C2R MaxInputSizeSetter(bool mayBlock, C2P<C2StreamMaxBufferSizeInfo::input> &me,
- const C2P<C2StreamMaxPictureSizeTuning::output> &maxSize) {
- (void)mayBlock;
- // assume compression ratio of 1
- me.set().value = (((maxSize.v.width + 15) / 16) * ((maxSize.v.height + 15) / 16) * 384);
- return C2R::Ok();
- }
-
- static C2R ProfileLevelSetter(bool mayBlock, C2P<C2StreamProfileLevelInfo::input> &me,
- const C2P<C2StreamPictureSizeInfo::output> &size) {
- (void)mayBlock;
- (void)size;
- (void)me; // TODO: validate
- return C2R::Ok();
- }
-
- uint32_t getMaxWidth() const { return mMaxSize->width; }
- uint32_t getMaxHeight() const { return mMaxSize->height; }
-
-private:
- std::shared_ptr<C2StreamProfileLevelInfo::input> mProfileLevel;
- std::shared_ptr<C2StreamPictureSizeInfo::output> mSize;
- std::shared_ptr<C2StreamMaxPictureSizeTuning::output> mMaxSize;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mMaxInputSize;
- std::shared_ptr<C2StreamColorInfo::output> mColorInfo;
- std::shared_ptr<C2StreamPixelFormatInfo::output> mPixelFormat;
-};
-
-C2SoftMpeg4Dec::C2SoftMpeg4Dec(
- const char *name,
- c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl)
- : SimpleC2Component(std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mDecHandle(nullptr),
- mOutputBuffer{},
- mInitialized(false) {
-}
-
-C2SoftMpeg4Dec::~C2SoftMpeg4Dec() {
- onRelease();
-}
-
-c2_status_t C2SoftMpeg4Dec::onInit() {
- status_t err = initDecoder();
- return err == OK ? C2_OK : C2_CORRUPTED;
-}
-
-c2_status_t C2SoftMpeg4Dec::onStop() {
- if (mInitialized) {
- if (mDecHandle) {
- PVCleanUpVideoDecoder(mDecHandle);
- }
- mInitialized = false;
- }
- for (int32_t i = 0; i < kNumOutputBuffers; ++i) {
- if (mOutputBuffer[i]) {
- free(mOutputBuffer[i]);
- mOutputBuffer[i] = nullptr;
- }
- }
- mNumSamplesOutput = 0;
- mFramesConfigured = false;
- mSignalledOutputEos = false;
- mSignalledError = false;
-
- return C2_OK;
-}
-
-void C2SoftMpeg4Dec::onReset() {
- (void)onStop();
- (void)onInit();
-}
-
-void C2SoftMpeg4Dec::onRelease() {
- if (mInitialized) {
- if (mDecHandle) {
- PVCleanUpVideoDecoder(mDecHandle);
- delete mDecHandle;
- mDecHandle = nullptr;
- }
- mInitialized = false;
- }
- if (mOutBlock) {
- mOutBlock.reset();
- }
- for (int32_t i = 0; i < kNumOutputBuffers; ++i) {
- if (mOutputBuffer[i]) {
- free(mOutputBuffer[i]);
- mOutputBuffer[i] = nullptr;
- }
- }
-}
-
-c2_status_t C2SoftMpeg4Dec::onFlush_sm() {
- if (mInitialized) {
- if (PV_TRUE != PVResetVideoDecoder(mDecHandle)) {
- return C2_CORRUPTED;
- }
- }
- mSignalledOutputEos = false;
- mSignalledError = false;
- return C2_OK;
-}
-
-status_t C2SoftMpeg4Dec::initDecoder() {
-#ifdef MPEG4
- mIsMpeg4 = true;
-#else
- mIsMpeg4 = false;
-#endif
- if (!mDecHandle) {
- mDecHandle = new tagvideoDecControls;
- }
- if (!mDecHandle) {
- ALOGE("mDecHandle is null");
- return NO_MEMORY;
- }
- memset(mDecHandle, 0, sizeof(tagvideoDecControls));
-
- /* TODO: bring these values to 352 and 288. It cannot be done as of now
- * because, h263 doesn't seem to allow port reconfiguration. In OMX, the
- * problem of larger width and height than default width and height is
- * overcome by adaptivePlayBack() api call. This call gets width and height
- * information from extractor. Such a thing is not possible here.
- * So we are configuring to larger values.*/
- mWidth = 1408;
- mHeight = 1152;
- mNumSamplesOutput = 0;
- mInitialized = false;
- mFramesConfigured = false;
- mSignalledOutputEos = false;
- mSignalledError = false;
-
- return OK;
-}
-
-void fillEmptyWork(const std::unique_ptr<C2Work> &work) {
- uint32_t flags = 0;
- if (work->input.flags & C2FrameData::FLAG_END_OF_STREAM) {
- flags |= C2FrameData::FLAG_END_OF_STREAM;
- ALOGV("signalling eos");
- }
- work->worklets.front()->output.flags = (C2FrameData::flags_t)flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
-}
-
-void C2SoftMpeg4Dec::finishWork(uint64_t index, const std::unique_ptr<C2Work> &work) {
- std::shared_ptr<C2Buffer> buffer = createGraphicBuffer(std::move(mOutBlock),
- C2Rect(mWidth, mHeight));
- mOutBlock = nullptr;
- auto fillWork = [buffer, index](const std::unique_ptr<C2Work> &work) {
- uint32_t flags = 0;
- if ((work->input.flags & C2FrameData::FLAG_END_OF_STREAM) &&
- (c2_cntr64_t(index) == work->input.ordinal.frameIndex)) {
- flags |= C2FrameData::FLAG_END_OF_STREAM;
- ALOGV("signalling eos");
- }
- work->worklets.front()->output.flags = (C2FrameData::flags_t)flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.buffers.push_back(buffer);
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
- };
- if (work && c2_cntr64_t(index) == work->input.ordinal.frameIndex) {
- fillWork(work);
- } else {
- finish(index, fillWork);
- }
-}
-
-c2_status_t C2SoftMpeg4Dec::ensureDecoderState(const std::shared_ptr<C2BlockPool> &pool) {
- if (!mDecHandle) {
- ALOGE("not supposed to be here, invalid decoder context");
- return C2_CORRUPTED;
- }
-
- mOutputBufferSize = align(mIntf->getMaxWidth(), 16) * align(mIntf->getMaxHeight(), 16) * 3 / 2;
- for (int32_t i = 0; i < kNumOutputBuffers; ++i) {
- if (!mOutputBuffer[i]) {
- mOutputBuffer[i] = (uint8_t *)malloc(mOutputBufferSize);
- if (!mOutputBuffer[i]) {
- return C2_NO_MEMORY;
- }
- }
- }
- if (mOutBlock &&
- (mOutBlock->width() != align(mWidth, 16) || mOutBlock->height() != mHeight)) {
- mOutBlock.reset();
- }
- if (!mOutBlock) {
- uint32_t format = HAL_PIXEL_FORMAT_YV12;
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- c2_status_t err = pool->fetchGraphicBlock(align(mWidth, 16), mHeight, format, usage, &mOutBlock);
- if (err != C2_OK) {
- ALOGE("fetchGraphicBlock for Output failed with status %d", err);
- return err;
- }
- ALOGV("provided (%dx%d) required (%dx%d)",
- mOutBlock->width(), mOutBlock->height(), mWidth, mHeight);
- }
- return C2_OK;
-}
-
-bool C2SoftMpeg4Dec::handleResChange(const std::unique_ptr<C2Work> &work) {
- uint32_t disp_width, disp_height;
- PVGetVideoDimensions(mDecHandle, (int32 *)&disp_width, (int32 *)&disp_height);
-
- uint32_t buf_width, buf_height;
- PVGetBufferDimensions(mDecHandle, (int32 *)&buf_width, (int32 *)&buf_height);
-
- CHECK_LE(disp_width, buf_width);
- CHECK_LE(disp_height, buf_height);
-
- ALOGV("display size (%dx%d), buffer size (%dx%d)",
- disp_width, disp_height, buf_width, buf_height);
-
- bool resChanged = false;
- if (disp_width != mWidth || disp_height != mHeight) {
- mWidth = disp_width;
- mHeight = disp_height;
- resChanged = true;
- for (int32_t i = 0; i < kNumOutputBuffers; ++i) {
- if (mOutputBuffer[i]) {
- free(mOutputBuffer[i]);
- mOutputBuffer[i] = nullptr;
- }
- }
-
- if (!mIsMpeg4) {
- PVCleanUpVideoDecoder(mDecHandle);
-
- uint8_t *vol_data[1]{};
- int32_t vol_size = 0;
-
- if (!PVInitVideoDecoder(
- mDecHandle, vol_data, &vol_size, 1, mIntf->getMaxWidth(), mIntf->getMaxHeight(), H263_MODE)) {
- ALOGE("Error in PVInitVideoDecoder H263_MODE while resChanged was set to true");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return true;
- }
- }
- mFramesConfigured = false;
- }
- return resChanged;
-}
-
-/* TODO: can remove temporary copy after library supports writing to display
- * buffer Y, U and V plane pointers using stride info. */
-static void copyOutputBufferToYV12Frame(uint8_t *dst, uint8_t *src, size_t dstYStride,
- size_t srcYStride, uint32_t width, uint32_t height) {
- size_t dstUVStride = align(dstYStride / 2, 16);
- size_t srcUVStride = srcYStride / 2;
- uint8_t *srcStart = src;
- uint8_t *dstStart = dst;
- size_t vStride = align(height, 16);
- for (size_t i = 0; i < height; ++i) {
- memcpy(dst, src, width);
- src += srcYStride;
- dst += dstYStride;
- }
- /* U buffer */
- src = srcStart + vStride * srcYStride;
- dst = dstStart + (dstYStride * height) + (dstUVStride * height / 2);
- for (size_t i = 0; i < height / 2; ++i) {
- memcpy(dst, src, width / 2);
- src += srcUVStride;
- dst += dstUVStride;
- }
- /* V buffer */
- src = srcStart + vStride * srcYStride * 5 / 4;
- dst = dstStart + (dstYStride * height);
- for (size_t i = 0; i < height / 2; ++i) {
- memcpy(dst, src, width / 2);
- src += srcUVStride;
- dst += dstUVStride;
- }
-}
-
-void C2SoftMpeg4Dec::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 1u;
- work->worklets.front()->output.configUpdate.clear();
- work->worklets.front()->output.flags = work->input.flags;
-
- if (mSignalledError || mSignalledOutputEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
-
- size_t inOffset = 0u;
- size_t inSize = 0u;
- uint32_t workIndex = work->input.ordinal.frameIndex.peeku() & 0xFFFFFFFF;
- C2ReadView rView = mDummyReadView;
- if (!work->input.buffers.empty()) {
- rView = work->input.buffers[0]->data().linearBlocks().front().map().get();
- inSize = rView.capacity();
- if (inSize && rView.error()) {
- ALOGE("read view map failed %d", rView.error());
- work->result = C2_CORRUPTED;
- return;
- }
- }
- ALOGV("in buffer attr. size %zu timestamp %d frameindex %d, flags %x",
- inSize, (int)work->input.ordinal.timestamp.peeku(),
- (int)work->input.ordinal.frameIndex.peeku(), work->input.flags);
-
- bool eos = ((work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0);
- if (inSize == 0) {
- fillEmptyWork(work);
- if (eos) {
- mSignalledOutputEos = true;
- }
- return;
- }
-
- uint8_t *bitstream = const_cast<uint8_t *>(rView.data() + inOffset);
- uint32_t *start_code = (uint32_t *)bitstream;
- bool volHeader = *start_code == 0xB0010000;
- if (volHeader) {
- PVCleanUpVideoDecoder(mDecHandle);
- mInitialized = false;
- }
-
- if (!mInitialized) {
- uint8_t *vol_data[1]{};
- int32_t vol_size = 0;
-
- bool codecConfig = (work->input.flags & C2FrameData::FLAG_CODEC_CONFIG) != 0;
- if (codecConfig || volHeader) {
- vol_data[0] = bitstream;
- vol_size = inSize;
- }
- MP4DecodingMode mode = (mIsMpeg4) ? MPEG4_MODE : H263_MODE;
- if (!PVInitVideoDecoder(
- mDecHandle, vol_data, &vol_size, 1,
- mIntf->getMaxWidth(), mIntf->getMaxHeight(), mode)) {
- ALOGE("PVInitVideoDecoder failed. Unsupported content?");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- mInitialized = true;
- MP4DecodingMode actualMode = PVGetDecBitstreamMode(mDecHandle);
- if (mode != actualMode) {
- ALOGE("Decoded mode not same as actual mode of the decoder");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
-
- PVSetPostProcType(mDecHandle, 0);
- if (handleResChange(work)) {
- ALOGI("Setting width and height");
- C2VideoSizeStreamInfo::output size(0u, mWidth, mHeight);
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- c2_status_t err = mIntf->config({&size}, C2_MAY_BLOCK, &failures);
- if (err == OK) {
- work->worklets.front()->output.configUpdate.push_back(
- C2Param::Copy(size));
- } else {
- ALOGE("Config update size failed");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- }
- if (codecConfig) {
- fillEmptyWork(work);
- return;
- }
- }
-
- size_t inPos = 0;
- while (inPos < inSize) {
- c2_status_t err = ensureDecoderState(pool);
- if (C2_OK != err) {
- mSignalledError = true;
- work->result = err;
- return;
- }
- C2GraphicView wView = mOutBlock->map().get();
- if (wView.error()) {
- ALOGE("graphic view map failed %d", wView.error());
- work->result = C2_CORRUPTED;
- return;
- }
-
- uint32_t yFrameSize = sizeof(uint8) * mDecHandle->size;
- if (mOutputBufferSize < yFrameSize * 3 / 2){
- ALOGE("Too small output buffer: %zu bytes", mOutputBufferSize);
- mSignalledError = true;
- work->result = C2_NO_MEMORY;
- return;
- }
-
- if (!mFramesConfigured) {
- PVSetReferenceYUV(mDecHandle,mOutputBuffer[1]);
- mFramesConfigured = true;
- }
-
- // Need to check if header contains new info, e.g., width/height, etc.
- VopHeaderInfo header_info;
- uint32_t useExtTimestamp = (inPos == 0);
- int32_t tmpInSize = (int32_t)inSize;
- uint8_t *bitstreamTmp = bitstream;
- uint32_t timestamp = workIndex;
- if (PVDecodeVopHeader(
- mDecHandle, &bitstreamTmp, ×tamp, &tmpInSize,
- &header_info, &useExtTimestamp,
- mOutputBuffer[mNumSamplesOutput & 1]) != PV_TRUE) {
- ALOGE("failed to decode vop header.");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
-
- // H263 doesn't have VOL header, the frame size information is in short header, i.e. the
- // decoder may detect size change after PVDecodeVopHeader.
- bool resChange = handleResChange(work);
- if (mIsMpeg4 && resChange) {
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- } else if (resChange) {
- ALOGI("Setting width and height");
- C2VideoSizeStreamInfo::output size(0u, mWidth, mHeight);
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- c2_status_t err = mIntf->config({&size}, C2_MAY_BLOCK, &failures);
- if (err == OK) {
- work->worklets.front()->output.configUpdate.push_back(C2Param::Copy(size));
- } else {
- ALOGE("Config update size failed");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- continue;
- }
-
- if (PVDecodeVopBody(mDecHandle, &tmpInSize) != PV_TRUE) {
- ALOGE("failed to decode video frame.");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- if (handleResChange(work)) {
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
-
- uint8_t *outputBufferY = wView.data()[C2PlanarLayout::PLANE_Y];
- (void)copyOutputBufferToYV12Frame(outputBufferY, mOutputBuffer[mNumSamplesOutput & 1],
- wView.width(), align(mWidth, 16), mWidth, mHeight);
-
- inPos += inSize - (size_t)tmpInSize;
- finishWork(workIndex, work);
- ++mNumSamplesOutput;
- if (inSize - inPos != 0) {
- ALOGD("decoded frame, ignoring further trailing bytes %d",
- (int)inSize - (int)inPos);
- break;
- }
- }
-}
-
-c2_status_t C2SoftMpeg4Dec::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- (void)pool;
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
- return C2_OK;
-}
-
-class C2SoftMpeg4DecFactory : public C2ComponentFactory {
-public:
- C2SoftMpeg4DecFactory() : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {
- }
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftMpeg4Dec(COMPONENT_NAME,
- id,
- std::make_shared<C2SoftMpeg4Dec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftMpeg4Dec::IntfImpl>(
- COMPONENT_NAME, id, std::make_shared<C2SoftMpeg4Dec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftMpeg4DecFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftMpeg4DecFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/mpeg4_h263/C2SoftMpeg4Dec.h b/media/codecs/mpeg4_h263/C2SoftMpeg4Dec.h
deleted file mode 100644
index 716a095..0000000
--- a/media/codecs/mpeg4_h263/C2SoftMpeg4Dec.h
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2_SOFT_MPEG4_DEC_H_
-#define C2_SOFT_MPEG4_DEC_H_
-
-#include <SimpleC2Component.h>
-
-
-struct tagvideoDecControls;
-
-namespace android {
-
-struct C2SoftMpeg4Dec : public SimpleC2Component {
- class IntfImpl;
-
- C2SoftMpeg4Dec(const char* name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl);
- virtual ~C2SoftMpeg4Dec();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
- private:
- enum {
- kNumOutputBuffers = 2,
- };
-
- status_t initDecoder();
- c2_status_t ensureDecoderState(const std::shared_ptr<C2BlockPool> &pool);
- void finishWork(uint64_t index, const std::unique_ptr<C2Work> &work);
- bool handleResChange(const std::unique_ptr<C2Work> &work);
-
- std::shared_ptr<IntfImpl> mIntf;
- tagvideoDecControls *mDecHandle;
- std::shared_ptr<C2GraphicBlock> mOutBlock;
- uint8_t *mOutputBuffer[kNumOutputBuffers];
- size_t mOutputBufferSize;
-
- uint32_t mWidth;
- uint32_t mHeight;
- uint32_t mNumSamplesOutput;
-
- bool mIsMpeg4;
- bool mInitialized;
- bool mFramesConfigured;
- bool mSignalledOutputEos;
- bool mSignalledError;
-
- C2_DO_NOT_COPY(C2SoftMpeg4Dec);
-};
-
-} // namespace android
-
-#endif // C2_SOFT_MPEG4_DEC_H_
diff --git a/media/codecs/mpeg4_h263/C2SoftMpeg4Enc.cpp b/media/codecs/mpeg4_h263/C2SoftMpeg4Enc.cpp
deleted file mode 100644
index c8796f3..0000000
--- a/media/codecs/mpeg4_h263/C2SoftMpeg4Enc.cpp
+++ /dev/null
@@ -1,671 +0,0 @@
-/*
- * Copyright 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#ifdef MPEG4
- #define LOG_TAG "C2SoftMpeg4Enc"
-#else
- #define LOG_TAG "C2SoftH263Enc"
-#endif
-#include <log/log.h>
-
-#include <inttypes.h>
-
-#include <media/hardware/VideoAPI.h>
-#include <media/stagefright/foundation/AUtils.h>
-#include <media/stagefright/MediaDefs.h>
-#include <utils/misc.h>
-
-#include <C2Debug.h>
-#include <C2PlatformSupport.h>
-#include <SimpleC2Interface.h>
-#include <util/C2InterfaceHelper.h>
-
-#include "C2SoftMpeg4Enc.h"
-#include "mp4enc_api.h"
-
-namespace android {
-
-#ifdef MPEG4
-constexpr char COMPONENT_NAME[] = "c2.android.mpeg4.encoder";
-#else
-constexpr char COMPONENT_NAME[] = "c2.android.h263.encoder";
-#endif
-
-class C2SoftMpeg4Enc::IntfImpl : public C2InterfaceHelper {
- public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper>& helper)
- : C2InterfaceHelper(helper) {
- setDerivedInstance(this);
-
- addParameter(
- DefineParam(mInputFormat, C2_NAME_INPUT_STREAM_FORMAT_SETTING)
- .withConstValue(
- new C2StreamFormatConfig::input(0u, C2FormatVideo))
- .build());
-
- addParameter(
- DefineParam(mOutputFormat, C2_NAME_OUTPUT_STREAM_FORMAT_SETTING)
- .withConstValue(
- new C2StreamFormatConfig::output(0u, C2FormatCompressed))
- .build());
-
- addParameter(
- DefineParam(mInputMediaType, C2_NAME_INPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::input>(
- MEDIA_MIMETYPE_VIDEO_RAW))
- .build());
-
- addParameter(
- DefineParam(mOutputMediaType, C2_NAME_OUTPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::output>(
-#ifdef MPEG4
- MEDIA_MIMETYPE_VIDEO_MPEG4
-#else
- MEDIA_MIMETYPE_VIDEO_H263
-#endif
- ))
- .build());
-
- addParameter(DefineParam(mUsage, C2_NAME_INPUT_STREAM_USAGE_SETTING)
- .withConstValue(new C2StreamUsageTuning::input(
- 0u, (uint64_t)C2MemoryUsage::CPU_READ))
- .build());
-
- addParameter(
- DefineParam(mSize, C2_NAME_STREAM_VIDEO_SIZE_SETTING)
- .withDefault(new C2VideoSizeStreamTuning::input(0u, 176, 144))
- .withFields({
-#ifdef MPEG4
- C2F(mSize, width).inRange(16, 176, 16),
- C2F(mSize, height).inRange(16, 144, 16),
-#else
- C2F(mSize, width).oneOf({176, 352}),
- C2F(mSize, height).oneOf({144, 288}),
-#endif
- })
- .withSetter(SizeSetter)
- .build());
-
- addParameter(
- DefineParam(mFrameRate, C2_NAME_STREAM_FRAME_RATE_SETTING)
- .withDefault(new C2StreamFrameRateInfo::output(0u, 17.))
- // TODO: More restriction?
- .withFields({C2F(mFrameRate, value).greaterThan(0.)})
- .withSetter(
- Setter<decltype(*mFrameRate)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mBitrate, C2_NAME_STREAM_BITRATE_SETTING)
- .withDefault(new C2BitrateTuning::output(0u, 64000))
- .withFields({C2F(mBitrate, value).inRange(4096, 12000000)})
- .withSetter(BitrateSetter)
- .build());
-
- addParameter(
- DefineParam(mSyncFramePeriod, C2_PARAMKEY_SYNC_FRAME_INTERVAL)
- .withDefault(new C2StreamSyncFrameIntervalTuning::output(0u, 1000000))
- .withFields({C2F(mSyncFramePeriod, value).any()})
- .withSetter(Setter<decltype(*mSyncFramePeriod)>::StrictValueWithNoDeps)
- .build());
-
-#ifdef MPEG4
- addParameter(
- DefineParam(mProfileLevel, C2_PARAMKEY_PROFILE_LEVEL)
- .withDefault(new C2StreamProfileLevelInfo::output(
- 0u, PROFILE_MP4V_SIMPLE, LEVEL_MP4V_2))
- .withFields({
- C2F(mProfileLevel, profile).equalTo(
- PROFILE_MP4V_SIMPLE),
- C2F(mProfileLevel, level).oneOf({
- C2Config::LEVEL_MP4V_0,
- C2Config::LEVEL_MP4V_0B,
- C2Config::LEVEL_MP4V_1,
- C2Config::LEVEL_MP4V_2})
- })
- .withSetter(ProfileLevelSetter)
- .build());
-#else
- addParameter(
- DefineParam(mProfileLevel, C2_PARAMKEY_PROFILE_LEVEL)
- .withDefault(new C2StreamProfileLevelInfo::output(
- 0u, PROFILE_H263_BASELINE, LEVEL_H263_45))
- .withFields({
- C2F(mProfileLevel, profile).equalTo(
- PROFILE_H263_BASELINE),
- C2F(mProfileLevel, level).oneOf({
- C2Config::LEVEL_H263_10,
- C2Config::LEVEL_H263_20,
- C2Config::LEVEL_H263_30,
- C2Config::LEVEL_H263_40,
- C2Config::LEVEL_H263_45})
- })
- .withSetter(ProfileLevelSetter)
- .build());
-#endif
- }
-
- static C2R BitrateSetter(bool mayBlock, C2P<C2StreamBitrateInfo::output> &me) {
- (void)mayBlock;
- C2R res = C2R::Ok();
- if (me.v.value <= 4096) {
- me.set().value = 4096;
- }
- return res;
- }
-
- static C2R SizeSetter(bool mayBlock, const C2P<C2StreamPictureSizeInfo::input> &oldMe,
- C2P<C2StreamPictureSizeInfo::input> &me) {
- (void)mayBlock;
- C2R res = C2R::Ok();
- if (!me.F(me.v.width).supportsAtAll(me.v.width)) {
- res = res.plus(C2SettingResultBuilder::BadValue(me.F(me.v.width)));
- me.set().width = oldMe.v.width;
- }
- if (!me.F(me.v.height).supportsAtAll(me.v.height)) {
- res = res.plus(C2SettingResultBuilder::BadValue(me.F(me.v.height)));
- me.set().height = oldMe.v.height;
- }
- return res;
- }
-
- static C2R ProfileLevelSetter(
- bool mayBlock,
- C2P<C2StreamProfileLevelInfo::output> &me) {
- (void)mayBlock;
- if (!me.F(me.v.profile).supportsAtAll(me.v.profile)) {
-#ifdef MPEG4
- me.set().profile = PROFILE_MP4V_SIMPLE;
-#else
- me.set().profile = PROFILE_H263_BASELINE;
-#endif
- }
- if (!me.F(me.v.level).supportsAtAll(me.v.level)) {
-#ifdef MPEG4
- me.set().level = LEVEL_MP4V_2;
-#else
- me.set().level = LEVEL_H263_45;
-#endif
- }
- return C2R::Ok();
- }
-
- // unsafe getters
- std::shared_ptr<C2StreamPictureSizeInfo::input> getSize_l() const { return mSize; }
- std::shared_ptr<C2StreamFrameRateInfo::output> getFrameRate_l() const { return mFrameRate; }
- std::shared_ptr<C2StreamBitrateInfo::output> getBitrate_l() const { return mBitrate; }
- uint32_t getSyncFramePeriod() const {
- if (mSyncFramePeriod->value < 0 || mSyncFramePeriod->value == INT64_MAX) {
- return 0;
- }
- double period = mSyncFramePeriod->value / 1e6 * mFrameRate->value;
- return (uint32_t)c2_max(c2_min(period + 0.5, double(UINT32_MAX)), 1.);
- }
-
- private:
- std::shared_ptr<C2StreamFormatConfig::input> mInputFormat;
- std::shared_ptr<C2StreamFormatConfig::output> mOutputFormat;
- std::shared_ptr<C2PortMimeConfig::input> mInputMediaType;
- std::shared_ptr<C2PortMimeConfig::output> mOutputMediaType;
- std::shared_ptr<C2StreamUsageTuning::input> mUsage;
- std::shared_ptr<C2VideoSizeStreamTuning::input> mSize;
- std::shared_ptr<C2StreamFrameRateInfo::output> mFrameRate;
- std::shared_ptr<C2BitrateTuning::output> mBitrate;
- std::shared_ptr<C2StreamProfileLevelInfo::output> mProfileLevel;
- std::shared_ptr<C2StreamSyncFrameIntervalTuning::output> mSyncFramePeriod;
-};
-
-C2SoftMpeg4Enc::C2SoftMpeg4Enc(const char* name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl)
- : SimpleC2Component(
- std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mHandle(nullptr),
- mEncParams(nullptr),
- mStarted(false),
- mOutBufferSize(524288) {
-}
-
-C2SoftMpeg4Enc::~C2SoftMpeg4Enc() {
- onRelease();
-}
-
-c2_status_t C2SoftMpeg4Enc::onInit() {
-#ifdef MPEG4
- mEncodeMode = COMBINE_MODE_WITH_ERR_RES;
-#else
- mEncodeMode = H263_MODE;
-#endif
- if (!mHandle) {
- mHandle = new tagvideoEncControls;
- }
-
- if (!mEncParams) {
- mEncParams = new tagvideoEncOptions;
- }
-
- if (!(mEncParams && mHandle)) return C2_NO_MEMORY;
-
- mSignalledOutputEos = false;
- mSignalledError = false;
-
- return initEncoder();
-}
-
-c2_status_t C2SoftMpeg4Enc::onStop() {
- if (!mStarted) {
- return C2_OK;
- }
- if (mHandle) {
- (void)PVCleanUpVideoEncoder(mHandle);
- }
- mStarted = false;
- mSignalledOutputEos = false;
- mSignalledError = false;
- return C2_OK;
-}
-
-void C2SoftMpeg4Enc::onReset() {
- onStop();
- initEncoder();
-}
-
-void C2SoftMpeg4Enc::onRelease() {
- onStop();
- if (mEncParams) {
- delete mEncParams;
- mEncParams = nullptr;
- }
- if (mHandle) {
- delete mHandle;
- mHandle = nullptr;
- }
-}
-
-c2_status_t C2SoftMpeg4Enc::onFlush_sm() {
- return C2_OK;
-}
-
-static void fillEmptyWork(const std::unique_ptr<C2Work> &work) {
- uint32_t flags = 0;
- if (work->input.flags & C2FrameData::FLAG_END_OF_STREAM) {
- flags |= C2FrameData::FLAG_END_OF_STREAM;
- ALOGV("signalling eos");
- }
- work->worklets.front()->output.flags = (C2FrameData::flags_t)flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
-}
-
-c2_status_t C2SoftMpeg4Enc::initEncParams() {
- if (mHandle) {
- memset(mHandle, 0, sizeof(tagvideoEncControls));
- } else return C2_CORRUPTED;
- if (mEncParams) {
- memset(mEncParams, 0, sizeof(tagvideoEncOptions));
- } else return C2_CORRUPTED;
-
- if (!PVGetDefaultEncOption(mEncParams, 0)) {
- ALOGE("Failed to get default encoding parameters");
- return C2_CORRUPTED;
- }
-
- if (mFrameRate->value == 0) {
- ALOGE("Framerate should not be 0");
- return C2_BAD_VALUE;
- }
-
- mEncParams->encMode = mEncodeMode;
- mEncParams->encWidth[0] = mSize->width;
- mEncParams->encHeight[0] = mSize->height;
- mEncParams->encFrameRate[0] = mFrameRate->value + 0.5;
- mEncParams->rcType = VBR_1;
- mEncParams->vbvDelay = 5.0f;
- mEncParams->profile_level = CORE_PROFILE_LEVEL2;
- mEncParams->packetSize = 32;
- mEncParams->rvlcEnable = PV_OFF;
- mEncParams->numLayers = 1;
- mEncParams->timeIncRes = 1000;
- mEncParams->tickPerSrc = mEncParams->timeIncRes / (mFrameRate->value + 0.5);
- mEncParams->bitRate[0] = mBitrate->value;
- mEncParams->iQuant[0] = 15;
- mEncParams->pQuant[0] = 12;
- mEncParams->quantType[0] = 0;
- mEncParams->noFrameSkipped = PV_OFF;
-
- // PV's MPEG4 encoder requires the video dimension of multiple
- if (mSize->width % 16 != 0 || mSize->height % 16 != 0) {
- ALOGE("Video frame size %dx%d must be a multiple of 16",
- mSize->width, mSize->height);
- return C2_BAD_VALUE;
- }
-
- // Set IDR frame refresh interval
- mEncParams->intraPeriod = mIntf->getSyncFramePeriod();
- mEncParams->numIntraMB = 0;
- mEncParams->sceneDetect = PV_ON;
- mEncParams->searchRange = 16;
- mEncParams->mv8x8Enable = PV_OFF;
- mEncParams->gobHeaderInterval = 0;
- mEncParams->useACPred = PV_ON;
- mEncParams->intraDCVlcTh = 0;
-
- return C2_OK;
-}
-
-c2_status_t C2SoftMpeg4Enc::initEncoder() {
- if (mStarted) {
- return C2_OK;
- }
- {
- IntfImpl::Lock lock = mIntf->lock();
- mSize = mIntf->getSize_l();
- mBitrate = mIntf->getBitrate_l();
- mFrameRate = mIntf->getFrameRate_l();
- }
- c2_status_t err = initEncParams();
- if (C2_OK != err) {
- ALOGE("Failed to initialized encoder params");
- mSignalledError = true;
- return err;
- }
- if (!PVInitVideoEncoder(mHandle, mEncParams)) {
- ALOGE("Failed to initialize the encoder");
- mSignalledError = true;
- return C2_CORRUPTED;
- }
-
- // 1st buffer for codec specific data
- mNumInputFrames = -1;
- mStarted = true;
- return C2_OK;
-}
-
-void C2SoftMpeg4Enc::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 1u;
- work->worklets.front()->output.flags = work->input.flags;
- if (mSignalledError || mSignalledOutputEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
-
- // Initialize encoder if not already initialized
- if (!mStarted && C2_OK != initEncoder()) {
- ALOGE("Failed to initialize encoder");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
-
- std::shared_ptr<C2LinearBlock> block;
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- c2_status_t err = pool->fetchLinearBlock(mOutBufferSize, usage, &block);
- if (err != C2_OK) {
- ALOGE("fetchLinearBlock for Output failed with status %d", err);
- work->result = C2_NO_MEMORY;
- return;
- }
-
- C2WriteView wView = block->map().get();
- if (wView.error()) {
- ALOGE("write view map failed %d", wView.error());
- work->result = wView.error();
- return;
- }
-
- uint8_t *outPtr = (uint8_t *)wView.data();
- if (mNumInputFrames < 0) {
- // The very first thing we want to output is the codec specific data.
- int32_t outputSize = mOutBufferSize;
- if (!PVGetVolHeader(mHandle, outPtr, &outputSize, 0)) {
- ALOGE("Failed to get VOL header");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- } else {
- ALOGV("Bytes Generated in header %d\n", outputSize);
- }
-
- ++mNumInputFrames;
- std::unique_ptr<C2StreamCsdInfo::output> csd =
- C2StreamCsdInfo::output::AllocUnique(outputSize, 0u);
- if (!csd) {
- ALOGE("CSD allocation failed");
- mSignalledError = true;
- work->result = C2_NO_MEMORY;
- return;
- }
- memcpy(csd->m.value, outPtr, outputSize);
- work->worklets.front()->output.configUpdate.push_back(std::move(csd));
- }
-
- std::shared_ptr<const C2GraphicView> rView;
- std::shared_ptr<C2Buffer> inputBuffer;
- bool eos = ((work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0);
- if (!work->input.buffers.empty()) {
- inputBuffer = work->input.buffers[0];
- rView = std::make_shared<const C2GraphicView>(
- inputBuffer->data().graphicBlocks().front().map().get());
- if (rView->error() != C2_OK) {
- ALOGE("graphic view map err = %d", rView->error());
- work->result = rView->error();
- return;
- }
- } else {
- fillEmptyWork(work);
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- }
- return;
- }
-
- uint64_t inputTimeStamp = work->input.ordinal.timestamp.peekull();
- const C2ConstGraphicBlock inBuffer = inputBuffer->data().graphicBlocks().front();
- if (inBuffer.width() < mSize->width ||
- inBuffer.height() < mSize->height) {
- /* Expect width height to be configured */
- ALOGW("unexpected Capacity Aspect %d(%d) x %d(%d)", inBuffer.width(),
- mSize->width, inBuffer.height(), mSize->height);
- work->result = C2_BAD_VALUE;
- return;
- }
-
- const C2PlanarLayout &layout = rView->layout();
- uint8_t *yPlane = const_cast<uint8_t *>(rView->data()[C2PlanarLayout::PLANE_Y]);
- uint8_t *uPlane = const_cast<uint8_t *>(rView->data()[C2PlanarLayout::PLANE_U]);
- uint8_t *vPlane = const_cast<uint8_t *>(rView->data()[C2PlanarLayout::PLANE_V]);
- int32_t yStride = layout.planes[C2PlanarLayout::PLANE_Y].rowInc;
- int32_t uStride = layout.planes[C2PlanarLayout::PLANE_U].rowInc;
- int32_t vStride = layout.planes[C2PlanarLayout::PLANE_V].rowInc;
- uint32_t width = mSize->width;
- uint32_t height = mSize->height;
- // width and height are always even (as block size is 16x16)
- CHECK_EQ((width & 1u), 0u);
- CHECK_EQ((height & 1u), 0u);
- size_t yPlaneSize = width * height;
- switch (layout.type) {
- case C2PlanarLayout::TYPE_RGB:
- [[fallthrough]];
- case C2PlanarLayout::TYPE_RGBA: {
- MemoryBlock conversionBuffer = mConversionBuffers.fetch(yPlaneSize * 3 / 2);
- mConversionBuffersInUse.emplace(conversionBuffer.data(), conversionBuffer);
- yPlane = conversionBuffer.data();
- uPlane = yPlane + yPlaneSize;
- vPlane = uPlane + yPlaneSize / 4;
- yStride = width;
- uStride = vStride = width / 2;
- ConvertRGBToPlanarYUV(yPlane, yStride, height, conversionBuffer.size(), *rView.get());
- break;
- }
- case C2PlanarLayout::TYPE_YUV: {
- if (!IsYUV420(*rView)) {
- ALOGE("input is not YUV420");
- work->result = C2_BAD_VALUE;
- break;
- }
-
- if (layout.planes[layout.PLANE_Y].colInc == 1
- && layout.planes[layout.PLANE_U].colInc == 1
- && layout.planes[layout.PLANE_V].colInc == 1
- && uStride == vStride
- && yStride == 2 * vStride) {
- // I420 compatible - planes are already set up above
- break;
- }
-
- // copy to I420
- MemoryBlock conversionBuffer = mConversionBuffers.fetch(yPlaneSize * 3 / 2);
- mConversionBuffersInUse.emplace(conversionBuffer.data(), conversionBuffer);
- MediaImage2 img = CreateYUV420PlanarMediaImage2(width, height, width, height);
- status_t err = ImageCopy(conversionBuffer.data(), &img, *rView);
- if (err != OK) {
- ALOGE("Buffer conversion failed: %d", err);
- work->result = C2_BAD_VALUE;
- return;
- }
- yPlane = conversionBuffer.data();
- uPlane = yPlane + yPlaneSize;
- vPlane = uPlane + yPlaneSize / 4;
- yStride = width;
- uStride = vStride = width / 2;
- break;
- }
-
- case C2PlanarLayout::TYPE_YUVA:
- ALOGE("YUVA plane type is not supported");
- work->result = C2_BAD_VALUE;
- return;
-
- default:
- ALOGE("Unrecognized plane type: %d", layout.type);
- work->result = C2_BAD_VALUE;
- return;
- }
-
- CHECK(NULL != yPlane);
- /* Encode frames */
- VideoEncFrameIO vin, vout;
- memset(&vin, 0, sizeof(vin));
- memset(&vout, 0, sizeof(vout));
- vin.yChan = yPlane;
- vin.uChan = uPlane;
- vin.vChan = vPlane;
- vin.timestamp = (inputTimeStamp + 500) / 1000; // in ms
- vin.height = align(height, 16);
- vin.pitch = align(width, 16);
-
- uint32_t modTimeMs = 0;
- int32_t nLayer = 0;
- MP4HintTrack hintTrack;
- int32_t outputSize = mOutBufferSize;
- if (!PVEncodeVideoFrame(mHandle, &vin, &vout, &modTimeMs, outPtr, &outputSize, &nLayer) ||
- !PVGetHintTrack(mHandle, &hintTrack)) {
- ALOGE("Failed to encode frame or get hint track at frame %" PRId64, mNumInputFrames);
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- ALOGV("outputSize filled : %d", outputSize);
- ++mNumInputFrames;
- CHECK(NULL == PVGetOverrunBuffer(mHandle));
-
- fillEmptyWork(work);
- if (outputSize) {
- std::shared_ptr<C2Buffer> buffer = createLinearBuffer(block, 0, outputSize);
- work->worklets.front()->output.ordinal.timestamp = inputTimeStamp;
- if (hintTrack.CodeType == 0) {
- buffer->setInfo(std::make_shared<C2StreamPictureTypeMaskInfo::output>(
- 0u /* stream id */, C2PictureTypeKeyFrame));
- }
- work->worklets.front()->output.buffers.push_back(buffer);
- }
- if (eos) {
- mSignalledOutputEos = true;
- }
-
- mConversionBuffersInUse.erase(yPlane);
-}
-
-c2_status_t C2SoftMpeg4Enc::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- (void)pool;
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
-
- return C2_OK;
-}
-
-class C2SoftMpeg4EncFactory : public C2ComponentFactory {
-public:
- C2SoftMpeg4EncFactory()
- : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {}
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftMpeg4Enc(
- COMPONENT_NAME, id,
- std::make_shared<C2SoftMpeg4Enc::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftMpeg4Enc::IntfImpl>(
- COMPONENT_NAME, id,
- std::make_shared<C2SoftMpeg4Enc::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftMpeg4EncFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftMpeg4EncFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/mpeg4_h263/C2SoftMpeg4Enc.h b/media/codecs/mpeg4_h263/C2SoftMpeg4Enc.h
deleted file mode 100644
index 43461fc..0000000
--- a/media/codecs/mpeg4_h263/C2SoftMpeg4Enc.h
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * Copyright 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2_SOFT_MPEG4_ENC_H__
-#define C2_SOFT_MPEG4_ENC_H__
-
-#include <map>
-
-#include <Codec2BufferUtils.h>
-#include <SimpleC2Component.h>
-
-#include "mp4enc_api.h"
-
-namespace android {
-
-struct C2SoftMpeg4Enc : public SimpleC2Component {
- class IntfImpl;
-
- C2SoftMpeg4Enc(const char* name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl);
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
-
-protected:
-
- virtual ~C2SoftMpeg4Enc();
-
-private:
- std::shared_ptr<IntfImpl> mIntf;
-
- tagvideoEncControls *mHandle;
- tagvideoEncOptions *mEncParams;
-
- bool mStarted;
- bool mSignalledOutputEos;
- bool mSignalledError;
-
- uint32_t mOutBufferSize;
- // configurations used by component in process
- // (TODO: keep this in intf but make them internal only)
- std::shared_ptr<C2StreamPictureSizeInfo::input> mSize;
- std::shared_ptr<C2StreamFrameRateInfo::output> mFrameRate;
- std::shared_ptr<C2StreamBitrateInfo::output> mBitrate;
-
- int64_t mNumInputFrames;
- MP4EncodingMode mEncodeMode;
-
- MemoryBlockPool mConversionBuffers;
- std::map<void *, MemoryBlock> mConversionBuffersInUse;
-
- c2_status_t initEncParams();
- c2_status_t initEncoder();
-
- C2_DO_NOT_COPY(C2SoftMpeg4Enc);
-};
-
-} // namespace android
-
-#endif // C2_SOFT_MPEG4_ENC_H__
diff --git a/media/codecs/mpeg4_h263/MODULE_LICENSE_APACHE2 b/media/codecs/mpeg4_h263/MODULE_LICENSE_APACHE2
deleted file mode 100644
index e69de29..0000000
--- a/media/codecs/mpeg4_h263/MODULE_LICENSE_APACHE2
+++ /dev/null
diff --git a/media/codecs/mpeg4_h263/NOTICE b/media/codecs/mpeg4_h263/NOTICE
deleted file mode 100644
index c5b1efa..0000000
--- a/media/codecs/mpeg4_h263/NOTICE
+++ /dev/null
@@ -1,190 +0,0 @@
-
- Copyright (c) 2005-2008, The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
diff --git a/media/codecs/mpeg4_h263/patent_disclaimer.txt b/media/codecs/mpeg4_h263/patent_disclaimer.txt
deleted file mode 100644
index b4bf11d..0000000
--- a/media/codecs/mpeg4_h263/patent_disclaimer.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-
-THIS IS NOT A GRANT OF PATENT RIGHTS.
-
-Google makes no representation or warranty that the codecs for which
-source code is made available hereunder are unencumbered by
-third-party patents. Those intending to use this source code in
-hardware or software products are advised that implementations of
-these codecs, including in open source software or shareware, may
-require patent licenses from the relevant patent holders.
diff --git a/media/codecs/opus/Android.bp b/media/codecs/opus/Android.bp
deleted file mode 100644
index a6233a6..0000000
--- a/media/codecs/opus/Android.bp
+++ /dev/null
@@ -1,11 +0,0 @@
-cc_library_shared {
- name: "libstagefright_soft_c2opusdec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: ["C2SoftOpusDec.cpp"],
-
- shared_libs: ["libopus"],
-}
diff --git a/media/codecs/opus/C2SoftOpusDec.cpp b/media/codecs/opus/C2SoftOpusDec.cpp
deleted file mode 100644
index 2439c3c..0000000
--- a/media/codecs/opus/C2SoftOpusDec.cpp
+++ /dev/null
@@ -1,544 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftOpusDec"
-#include <log/log.h>
-
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <C2PlatformSupport.h>
-#include <SimpleC2Interface.h>
-
-#include "C2SoftOpusDec.h"
-
-extern "C" {
- #include <opus.h>
- #include <opus_multistream.h>
-}
-
-namespace android {
-
-constexpr char COMPONENT_NAME[] = "c2.android.opus.decoder";
-
-class C2SoftOpusDec::IntfImpl : public C2InterfaceHelper {
- public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper>& helper)
- : C2InterfaceHelper(helper) {
- setDerivedInstance(this);
-
- addParameter(
- DefineParam(mInputFormat, C2_NAME_INPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::input(0u, C2FormatCompressed))
- .build());
-
- addParameter(
- DefineParam(mOutputFormat, C2_NAME_OUTPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::output(0u, C2FormatAudio))
- .build());
-
- addParameter(
- DefineParam(mInputMediaType, C2_NAME_INPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::input>(
- MEDIA_MIMETYPE_AUDIO_OPUS))
- .build());
-
- addParameter(
- DefineParam(mOutputMediaType, C2_NAME_OUTPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::output>(
- MEDIA_MIMETYPE_AUDIO_RAW))
- .build());
-
- addParameter(
- DefineParam(mSampleRate, C2_NAME_STREAM_SAMPLE_RATE_SETTING)
- .withDefault(new C2StreamSampleRateInfo::output(0u, 48000))
- .withFields({C2F(mSampleRate, value).equalTo(48000)})
- .withSetter((Setter<decltype(*mSampleRate)>::StrictValueWithNoDeps))
- .build());
-
- addParameter(
- DefineParam(mChannelCount, C2_NAME_STREAM_CHANNEL_COUNT_SETTING)
- .withDefault(new C2StreamChannelCountInfo::output(0u, 1))
- .withFields({C2F(mChannelCount, value).inRange(1, 8)})
- .withSetter(Setter<decltype(*mChannelCount)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mBitrate, C2_NAME_STREAM_BITRATE_SETTING)
- .withDefault(new C2BitrateTuning::input(0u, 6000))
- .withFields({C2F(mBitrate, value).inRange(6000, 510000)})
- .withSetter(Setter<decltype(*mBitrate)>::NonStrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mInputMaxBufSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
- .withConstValue(new C2StreamMaxBufferSizeInfo::input(0u, 960 * 6))
- .build());
- }
-
- private:
- std::shared_ptr<C2StreamFormatConfig::input> mInputFormat;
- std::shared_ptr<C2StreamFormatConfig::output> mOutputFormat;
- std::shared_ptr<C2PortMimeConfig::input> mInputMediaType;
- std::shared_ptr<C2PortMimeConfig::output> mOutputMediaType;
- std::shared_ptr<C2StreamSampleRateInfo::output> mSampleRate;
- std::shared_ptr<C2StreamChannelCountInfo::output> mChannelCount;
- std::shared_ptr<C2BitrateTuning::input> mBitrate;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mInputMaxBufSize;
-};
-
-C2SoftOpusDec::C2SoftOpusDec(const char *name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl)
- : SimpleC2Component(
- std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mDecoder(nullptr) {
-}
-
-C2SoftOpusDec::~C2SoftOpusDec() {
- onRelease();
-}
-
-c2_status_t C2SoftOpusDec::onInit() {
- status_t err = initDecoder();
- return err == OK ? C2_OK : C2_NO_MEMORY;
-}
-
-c2_status_t C2SoftOpusDec::onStop() {
- if (mDecoder) {
- opus_multistream_decoder_destroy(mDecoder);
- mDecoder = nullptr;
- }
- memset(&mHeader, 0, sizeof(mHeader));
- mCodecDelay = 0;
- mSeekPreRoll = 0;
- mSamplesToDiscard = 0;
- mInputBufferCount = 0;
- mSignalledError = false;
- mSignalledOutputEos = false;
-
- return C2_OK;
-}
-
-void C2SoftOpusDec::onReset() {
- (void)onStop();
-}
-
-void C2SoftOpusDec::onRelease() {
- if (mDecoder) {
- opus_multistream_decoder_destroy(mDecoder);
- mDecoder = nullptr;
- }
-}
-
-status_t C2SoftOpusDec::initDecoder() {
- memset(&mHeader, 0, sizeof(mHeader));
- mCodecDelay = 0;
- mSeekPreRoll = 0;
- mSamplesToDiscard = 0;
- mInputBufferCount = 0;
- mSignalledError = false;
- mSignalledOutputEos = false;
-
- return OK;
-}
-
-c2_status_t C2SoftOpusDec::onFlush_sm() {
- if (mDecoder) {
- opus_multistream_decoder_ctl(mDecoder, OPUS_RESET_STATE);
- mSamplesToDiscard = mSeekPreRoll;
- mSignalledOutputEos = false;
- }
- return C2_OK;
-}
-
-c2_status_t C2SoftOpusDec::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- (void) pool;
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
-
- return C2_OK;
-}
-
-static void fillEmptyWork(const std::unique_ptr<C2Work> &work) {
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
-}
-
-static uint16_t ReadLE16(const uint8_t *data, size_t data_size,
- uint32_t read_offset) {
- if (read_offset + 1 > data_size)
- return 0;
- uint16_t val;
- val = data[read_offset];
- val |= data[read_offset + 1] << 8;
- return val;
-}
-
-static const int kRate = 48000;
-
-// Opus uses Vorbis channel mapping, and Vorbis channel mapping specifies
-// mappings for up to 8 channels. This information is part of the Vorbis I
-// Specification:
-// http://www.xiph.org/vorbis/doc/Vorbis_I_spec.html
-static const int kMaxChannels = 8;
-
-// Maximum packet size used in Xiph's opusdec.
-static const int kMaxOpusOutputPacketSizeSamples = 960 * 6;
-
-// Default audio output channel layout. Used to initialize |stream_map| in
-// OpusHeader, and passed to opus_multistream_decoder_create() when the header
-// does not contain mapping information. The values are valid only for mono and
-// stereo output: Opus streams with more than 2 channels require a stream map.
-static const int kMaxChannelsWithDefaultLayout = 2;
-static const uint8_t kDefaultOpusChannelLayout[kMaxChannelsWithDefaultLayout] = { 0, 1 };
-
-// Parses Opus Header. Header spec: http://wiki.xiph.org/OggOpus#ID_Header
-static bool ParseOpusHeader(const uint8_t *data, size_t data_size,
- OpusHeader* header) {
- // Size of the Opus header excluding optional mapping information.
- const size_t kOpusHeaderSize = 19;
-
- // Offset to the channel count byte in the Opus header.
- const size_t kOpusHeaderChannelsOffset = 9;
-
- // Offset to the pre-skip value in the Opus header.
- const size_t kOpusHeaderSkipSamplesOffset = 10;
-
- // Offset to the gain value in the Opus header.
- const size_t kOpusHeaderGainOffset = 16;
-
- // Offset to the channel mapping byte in the Opus header.
- const size_t kOpusHeaderChannelMappingOffset = 18;
-
- // Opus Header contains a stream map. The mapping values are in the header
- // beyond the always present |kOpusHeaderSize| bytes of data. The mapping
- // data contains stream count, coupling information, and per channel mapping
- // values:
- // - Byte 0: Number of streams.
- // - Byte 1: Number coupled.
- // - Byte 2: Starting at byte 2 are |header->channels| uint8 mapping
- // values.
- const size_t kOpusHeaderNumStreamsOffset = kOpusHeaderSize;
- const size_t kOpusHeaderNumCoupledOffset = kOpusHeaderNumStreamsOffset + 1;
- const size_t kOpusHeaderStreamMapOffset = kOpusHeaderNumStreamsOffset + 2;
-
- if (data_size < kOpusHeaderSize) {
- ALOGE("Header size is too small.");
- return false;
- }
- header->channels = *(data + kOpusHeaderChannelsOffset);
- if (header->channels <= 0 || header->channels > kMaxChannels) {
- ALOGE("Invalid Header, wrong channel count: %d", header->channels);
- return false;
- }
-
- header->skip_samples = ReadLE16(data,
- data_size,
- kOpusHeaderSkipSamplesOffset);
-
- header->gain_db = static_cast<int16_t>(ReadLE16(data,
- data_size,
- kOpusHeaderGainOffset));
-
- header->channel_mapping = *(data + kOpusHeaderChannelMappingOffset);
- if (!header->channel_mapping) {
- if (header->channels > kMaxChannelsWithDefaultLayout) {
- ALOGE("Invalid Header, missing stream map.");
- return false;
- }
- header->num_streams = 1;
- header->num_coupled = header->channels > 1;
- header->stream_map[0] = 0;
- header->stream_map[1] = 1;
- return true;
- }
- if (data_size < kOpusHeaderStreamMapOffset + header->channels) {
- ALOGE("Invalid stream map; insufficient data for current channel "
- "count: %d", header->channels);
- return false;
- }
- header->num_streams = *(data + kOpusHeaderNumStreamsOffset);
- header->num_coupled = *(data + kOpusHeaderNumCoupledOffset);
- if (header->num_streams + header->num_coupled != header->channels) {
- ALOGE("Inconsistent channel mapping.");
- return false;
- }
- for (int i = 0; i < header->channels; ++i)
- header->stream_map[i] = *(data + kOpusHeaderStreamMapOffset + i);
- return true;
-}
-
-// Convert nanoseconds to number of samples.
-static uint64_t ns_to_samples(uint64_t ns, int rate) {
- return static_cast<double>(ns) * rate / 1000000000;
-}
-
-void C2SoftOpusDec::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 1u;
- work->worklets.front()->output.configUpdate.clear();
- work->worklets.front()->output.flags = work->input.flags;
-
- if (mSignalledError || mSignalledOutputEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
-
- bool eos = ((work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0);
- size_t inOffset = 0u;
- size_t inSize = 0u;
- C2ReadView rView = mDummyReadView;
- if (!work->input.buffers.empty()) {
- rView = work->input.buffers[0]->data().linearBlocks().front().map().get();
- inSize = rView.capacity();
- if (inSize && rView.error()) {
- ALOGE("read view map failed %d", rView.error());
- work->result = C2_CORRUPTED;
- return;
- }
- }
- if (inSize == 0) {
- fillEmptyWork(work);
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- }
- return;
- }
-
- ALOGV("in buffer attr. size %zu timestamp %d frameindex %d", inSize,
- (int)work->input.ordinal.timestamp.peeku(), (int)work->input.ordinal.frameIndex.peeku());
- const uint8_t *data = rView.data() + inOffset;
- if (mInputBufferCount < 3) {
- if (mInputBufferCount == 0) {
- if (!ParseOpusHeader(data, inSize, &mHeader)) {
- ALOGE("Encountered error while Parsing Opus Header.");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- uint8_t channel_mapping[kMaxChannels] = {0};
- if (mHeader.channels <= kMaxChannelsWithDefaultLayout) {
- memcpy(&channel_mapping,
- kDefaultOpusChannelLayout,
- kMaxChannelsWithDefaultLayout);
- } else {
- memcpy(&channel_mapping,
- mHeader.stream_map,
- mHeader.channels);
- }
- int status = OPUS_INVALID_STATE;
- mDecoder = opus_multistream_decoder_create(kRate,
- mHeader.channels,
- mHeader.num_streams,
- mHeader.num_coupled,
- channel_mapping,
- &status);
- if (!mDecoder || status != OPUS_OK) {
- ALOGE("opus_multistream_decoder_create failed status = %s",
- opus_strerror(status));
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- status = opus_multistream_decoder_ctl(mDecoder,
- OPUS_SET_GAIN(mHeader.gain_db));
- if (status != OPUS_OK) {
- ALOGE("Failed to set OPUS header gain; status = %s",
- opus_strerror(status));
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- } else {
- if (inSize < 8) {
- ALOGE("Input sample size is too small.");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- int64_t samples = ns_to_samples( *(reinterpret_cast<int64_t*>
- (const_cast<uint8_t *> (data))), kRate);
- if (mInputBufferCount == 1) {
- mCodecDelay = samples;
- mSamplesToDiscard = mCodecDelay;
- }
- else {
- mSeekPreRoll = samples;
-
- ALOGI("Configuring decoder: %d Hz, %d channels",
- kRate, mHeader.channels);
- C2StreamSampleRateInfo::output sampleRateInfo(0u, kRate);
- C2StreamChannelCountInfo::output channelCountInfo(0u, mHeader.channels);
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- c2_status_t err = mIntf->config(
- { &sampleRateInfo, &channelCountInfo },
- C2_MAY_BLOCK,
- &failures);
- if (err == OK) {
- work->worklets.front()->output.configUpdate.push_back(C2Param::Copy(sampleRateInfo));
- work->worklets.front()->output.configUpdate.push_back(C2Param::Copy(channelCountInfo));
- } else {
- ALOGE("Config Update failed");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- }
- }
-
- ++mInputBufferCount;
- fillEmptyWork(work);
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- }
- return;
- }
-
- // Ignore CSD re-submissions.
- if ((work->input.flags & C2FrameData::FLAG_CODEC_CONFIG)) {
- fillEmptyWork(work);
- return;
- }
-
- // When seeking to zero, |mCodecDelay| samples has to be discarded
- // instead of |mSeekPreRoll| samples (as we would when seeking to any
- // other timestamp).
- if (work->input.ordinal.timestamp.peeku() == 0) mSamplesToDiscard = mCodecDelay;
-
- std::shared_ptr<C2LinearBlock> block;
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- c2_status_t err = pool->fetchLinearBlock(
- kMaxNumSamplesPerBuffer * kMaxChannels * sizeof(int16_t),
- usage, &block);
- if (err != C2_OK) {
- ALOGE("fetchLinearBlock for Output failed with status %d", err);
- work->result = C2_NO_MEMORY;
- return;
- }
- C2WriteView wView = block->map().get();
- if (wView.error()) {
- ALOGE("write view map failed %d", wView.error());
- work->result = C2_CORRUPTED;
- return;
- }
-
- int numSamples = opus_multistream_decode(mDecoder,
- data,
- inSize,
- reinterpret_cast<int16_t *> (wView.data()),
- kMaxOpusOutputPacketSizeSamples,
- 0);
- if (numSamples < 0) {
- ALOGE("opus_multistream_decode returned numSamples %d", numSamples);
- numSamples = 0;
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
-
- int outOffset = 0;
- if (mSamplesToDiscard > 0) {
- if (mSamplesToDiscard > numSamples) {
- mSamplesToDiscard -= numSamples;
- numSamples = 0;
- } else {
- numSamples -= mSamplesToDiscard;
- outOffset = mSamplesToDiscard * sizeof(int16_t) * mHeader.channels;
- mSamplesToDiscard = 0;
- }
- }
-
- if (numSamples) {
- int outSize = numSamples * sizeof(int16_t) * mHeader.channels;
- ALOGV("out buffer attr. offset %d size %d ", outOffset, outSize);
-
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.buffers.push_back(createLinearBuffer(block, outOffset, outSize));
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
- } else {
- fillEmptyWork(work);
- block.reset();
- }
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- }
-}
-
-class C2SoftOpusDecFactory : public C2ComponentFactory {
-public:
- C2SoftOpusDecFactory() : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {
- }
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftOpusDec(COMPONENT_NAME,
- id,
- std::make_shared<C2SoftOpusDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftOpusDec::IntfImpl>(
- COMPONENT_NAME, id, std::make_shared<C2SoftOpusDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftOpusDecFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftOpusDecFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/opus/C2SoftOpusDec.h b/media/codecs/opus/C2SoftOpusDec.h
deleted file mode 100644
index 92b7426..0000000
--- a/media/codecs/opus/C2SoftOpusDec.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_OPUS_DEC_H_
-#define ANDROID_C2_SOFT_OPUS_DEC_H_
-
-#include <SimpleC2Component.h>
-
-
-struct OpusMSDecoder;
-
-namespace android {
-
-struct OpusHeader {
- int channels;
- int skip_samples;
- int channel_mapping;
- int num_streams;
- int num_coupled;
- int16_t gain_db;
- uint8_t stream_map[8];
-};
-
-struct C2SoftOpusDec : public SimpleC2Component {
- class IntfImpl;
-
- C2SoftOpusDec(const char *name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl);
- virtual ~C2SoftOpusDec();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
-private:
- enum {
- kMaxNumSamplesPerBuffer = 960 * 6
- };
-
- std::shared_ptr<IntfImpl> mIntf;
- OpusMSDecoder *mDecoder;
- OpusHeader mHeader;
-
- int64_t mCodecDelay;
- int64_t mSeekPreRoll;
- int64_t mSamplesToDiscard;
- size_t mInputBufferCount;
- bool mSignalledError;
- bool mSignalledOutputEos;
-
- status_t initDecoder();
-
- C2_DO_NOT_COPY(C2SoftOpusDec);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_OPUS_DEC_H_
diff --git a/media/codecs/raw/Android.bp b/media/codecs/raw/Android.bp
deleted file mode 100644
index 150eb91..0000000
--- a/media/codecs/raw/Android.bp
+++ /dev/null
@@ -1,9 +0,0 @@
-cc_library_shared {
- name: "libstagefright_soft_c2rawdec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: ["C2SoftRawDec.cpp"],
-}
diff --git a/media/codecs/raw/C2SoftRawDec.cpp b/media/codecs/raw/C2SoftRawDec.cpp
deleted file mode 100644
index 5c83481..0000000
--- a/media/codecs/raw/C2SoftRawDec.cpp
+++ /dev/null
@@ -1,233 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftRawDec"
-#include <log/log.h>
-
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <C2PlatformSupport.h>
-#include <SimpleC2Interface.h>
-
-#include "C2SoftRawDec.h"
-
-namespace android {
-
-constexpr char COMPONENT_NAME[] = "c2.android.raw.decoder";
-
-class C2SoftRawDec::IntfImpl : public C2InterfaceHelper {
-public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper> &helper)
- : C2InterfaceHelper(helper) {
-
- setDerivedInstance(this);
-
- addParameter(
- DefineParam(mInputFormat, C2_NAME_INPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::input(0u, C2FormatCompressed))
- .build());
-
- addParameter(
- DefineParam(mOutputFormat, C2_NAME_OUTPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::output(0u, C2FormatAudio))
- .build());
-
- addParameter(
- DefineParam(mInputMediaType, C2_NAME_INPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::input>(
- MEDIA_MIMETYPE_AUDIO_RAW))
- .build());
-
- addParameter(
- DefineParam(mOutputMediaType, C2_NAME_OUTPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::output>(
- MEDIA_MIMETYPE_AUDIO_RAW))
- .build());
-
- addParameter(
- DefineParam(mSampleRate, C2_NAME_STREAM_SAMPLE_RATE_SETTING)
- .withDefault(new C2StreamSampleRateInfo::output(0u, 44100))
- .withFields({C2F(mSampleRate, value).inRange(8000, 192000)})
- .withSetter((Setter<decltype(*mSampleRate)>::StrictValueWithNoDeps))
- .build());
-
- addParameter(
- DefineParam(mChannelCount, C2_NAME_STREAM_CHANNEL_COUNT_SETTING)
- .withDefault(new C2StreamChannelCountInfo::output(0u, 2))
- .withFields({C2F(mChannelCount, value).inRange(1, 8)})
- .withSetter(Setter<decltype(*mChannelCount)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mBitrate, C2_NAME_STREAM_BITRATE_SETTING)
- .withDefault(new C2BitrateTuning::input(0u, 64000))
- .withFields({C2F(mBitrate, value).inRange(1, 10000000)})
- .withSetter(Setter<decltype(*mBitrate)>::NonStrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mInputMaxBufSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
- .withConstValue(new C2StreamMaxBufferSizeInfo::input(0u, 64 * 1024))
- .build());
-
- addParameter(
- DefineParam(mPcmEncodingInfo, C2_PARAMKEY_PCM_ENCODING)
- .withDefault(new C2StreamPcmEncodingInfo::output(0u, C2Config::PCM_16))
- .withFields({C2F(mPcmEncodingInfo, value).oneOf({
- C2Config::PCM_16,
- C2Config::PCM_8,
- C2Config::PCM_FLOAT})
- })
- .withSetter((Setter<decltype(*mPcmEncodingInfo)>::StrictValueWithNoDeps))
- .build());
-
- }
-
-private:
- std::shared_ptr<C2StreamFormatConfig::input> mInputFormat;
- std::shared_ptr<C2StreamFormatConfig::output> mOutputFormat;
- std::shared_ptr<C2PortMimeConfig::input> mInputMediaType;
- std::shared_ptr<C2PortMimeConfig::output> mOutputMediaType;
- std::shared_ptr<C2StreamSampleRateInfo::output> mSampleRate;
- std::shared_ptr<C2StreamChannelCountInfo::output> mChannelCount;
- std::shared_ptr<C2BitrateTuning::input> mBitrate;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mInputMaxBufSize;
- std::shared_ptr<C2StreamPcmEncodingInfo::output> mPcmEncodingInfo;
-};
-
-C2SoftRawDec::C2SoftRawDec(
- const char *name,
- c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl)
- : SimpleC2Component(std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl) {
-}
-
-C2SoftRawDec::~C2SoftRawDec() {
- onRelease();
-}
-
-c2_status_t C2SoftRawDec::onInit() {
- mSignalledEos = false;
- return C2_OK;
-}
-
-c2_status_t C2SoftRawDec::onStop() {
- mSignalledEos = false;
- return C2_OK;
-}
-
-void C2SoftRawDec::onReset() {
- (void)onStop();
-}
-
-void C2SoftRawDec::onRelease() {
-}
-
-c2_status_t C2SoftRawDec::onFlush_sm() {
- return onStop();
-}
-
-void C2SoftRawDec::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- (void)pool;
- work->result = C2_OK;
- work->workletsProcessed = 1u;
-
- if (mSignalledEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
-
- ALOGV("in buffer attr. timestamp %d frameindex %d",
- (int)work->input.ordinal.timestamp.peeku(), (int)work->input.ordinal.frameIndex.peeku());
-
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- if (!work->input.buffers.empty()) {
- work->worklets.front()->output.buffers.push_back(work->input.buffers[0]);
- }
- if (work->input.flags & C2FrameData::FLAG_END_OF_STREAM) {
- mSignalledEos = true;
- ALOGV("signalled EOS");
- }
-}
-
-c2_status_t C2SoftRawDec::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- (void) pool;
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
-
- return C2_OK;
-}
-
-class C2SoftRawDecFactory : public C2ComponentFactory {
-public:
- C2SoftRawDecFactory() : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {
- }
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftRawDec(COMPONENT_NAME,
- id,
- std::make_shared<C2SoftRawDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftRawDec::IntfImpl>(
- COMPONENT_NAME, id, std::make_shared<C2SoftRawDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftRawDecFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftRawDecFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/raw/C2SoftRawDec.h b/media/codecs/raw/C2SoftRawDec.h
deleted file mode 100644
index 7dfdec5..0000000
--- a/media/codecs/raw/C2SoftRawDec.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_RAW_DEC_H_
-#define ANDROID_C2_SOFT_RAW_DEC_H_
-
-#include <SimpleC2Component.h>
-
-
-namespace android {
-
-struct C2SoftRawDec : public SimpleC2Component {
- class IntfImpl;
-
- C2SoftRawDec(const char* name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl);
- virtual ~C2SoftRawDec();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
-private:
- std::shared_ptr<IntfImpl> mIntf;
- bool mSignalledEos;
-
- C2_DO_NOT_COPY(C2SoftRawDec);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_RAW_DEC_H_
diff --git a/media/codecs/raw/MODULE_LICENSE_APACHE2 b/media/codecs/raw/MODULE_LICENSE_APACHE2
deleted file mode 100644
index e69de29..0000000
--- a/media/codecs/raw/MODULE_LICENSE_APACHE2
+++ /dev/null
diff --git a/media/codecs/raw/NOTICE b/media/codecs/raw/NOTICE
deleted file mode 100644
index c5b1efa..0000000
--- a/media/codecs/raw/NOTICE
+++ /dev/null
@@ -1,190 +0,0 @@
-
- Copyright (c) 2005-2008, The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
diff --git a/media/codecs/vorbis/Android.bp b/media/codecs/vorbis/Android.bp
deleted file mode 100644
index 7477da6..0000000
--- a/media/codecs/vorbis/Android.bp
+++ /dev/null
@@ -1,11 +0,0 @@
-cc_library_shared {
- name: "libstagefright_soft_c2vorbisdec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: ["C2SoftVorbisDec.cpp"],
-
- shared_libs: ["libvorbisidec"],
-}
diff --git a/media/codecs/vorbis/C2SoftVorbisDec.cpp b/media/codecs/vorbis/C2SoftVorbisDec.cpp
deleted file mode 100644
index 280ae36..0000000
--- a/media/codecs/vorbis/C2SoftVorbisDec.cpp
+++ /dev/null
@@ -1,493 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftVorbisDec"
-#include <log/log.h>
-
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <C2PlatformSupport.h>
-#include <SimpleC2Interface.h>
-
-#include "C2SoftVorbisDec.h"
-
-extern "C" {
- #include <Tremolo/codec_internal.h>
-
- int _vorbis_unpack_books(vorbis_info *vi,oggpack_buffer *opb);
- int _vorbis_unpack_info(vorbis_info *vi,oggpack_buffer *opb);
- int _vorbis_unpack_comment(vorbis_comment *vc,oggpack_buffer *opb);
-}
-
-namespace android {
-
-constexpr char COMPONENT_NAME[] = "c2.android.vorbis.decoder";
-
-class C2SoftVorbisDec::IntfImpl : public C2InterfaceHelper {
-public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper> &helper)
- : C2InterfaceHelper(helper) {
-
- setDerivedInstance(this);
-
- addParameter(
- DefineParam(mInputFormat, C2_NAME_INPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::input(0u, C2FormatCompressed))
- .build());
-
- addParameter(
- DefineParam(mOutputFormat, C2_NAME_OUTPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::output(0u, C2FormatAudio))
- .build());
-
- addParameter(
- DefineParam(mInputMediaType, C2_NAME_INPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::input>(
- MEDIA_MIMETYPE_AUDIO_VORBIS))
- .build());
-
- addParameter(
- DefineParam(mOutputMediaType, C2_NAME_OUTPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::output>(
- MEDIA_MIMETYPE_AUDIO_RAW))
- .build());
-
- addParameter(
- DefineParam(mSampleRate, C2_NAME_STREAM_SAMPLE_RATE_SETTING)
- .withDefault(new C2StreamSampleRateInfo::output(0u, 48000))
- .withFields({C2F(mSampleRate, value).inRange(8000, 96000)})
- .withSetter((Setter<decltype(*mSampleRate)>::StrictValueWithNoDeps))
- .build());
-
- addParameter(
- DefineParam(mChannelCount, C2_NAME_STREAM_CHANNEL_COUNT_SETTING)
- .withDefault(new C2StreamChannelCountInfo::output(0u, 1))
- .withFields({C2F(mChannelCount, value).inRange(1, 8)})
- .withSetter(Setter<decltype(*mChannelCount)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mBitrate, C2_NAME_STREAM_BITRATE_SETTING)
- .withDefault(new C2BitrateTuning::input(0u, 64000))
- .withFields({C2F(mBitrate, value).inRange(32000, 500000)})
- .withSetter(Setter<decltype(*mBitrate)>::NonStrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mInputMaxBufSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
- .withConstValue(new C2StreamMaxBufferSizeInfo::input(0u, 8192 * 2 * sizeof(int16_t)))
- .build());
- }
-
-private:
- std::shared_ptr<C2StreamFormatConfig::input> mInputFormat;
- std::shared_ptr<C2StreamFormatConfig::output> mOutputFormat;
- std::shared_ptr<C2PortMimeConfig::input> mInputMediaType;
- std::shared_ptr<C2PortMimeConfig::output> mOutputMediaType;
- std::shared_ptr<C2StreamSampleRateInfo::output> mSampleRate;
- std::shared_ptr<C2StreamChannelCountInfo::output> mChannelCount;
- std::shared_ptr<C2BitrateTuning::input> mBitrate;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mInputMaxBufSize;
-};
-
-C2SoftVorbisDec::C2SoftVorbisDec(
- const char *name,
- c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl)
- : SimpleC2Component(std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mState(nullptr),
- mVi(nullptr) {
-}
-
-C2SoftVorbisDec::~C2SoftVorbisDec() {
- onRelease();
-}
-
-c2_status_t C2SoftVorbisDec::onInit() {
- status_t err = initDecoder();
- return err == OK ? C2_OK : C2_NO_MEMORY;
-}
-
-c2_status_t C2SoftVorbisDec::onStop() {
- if (mState) {
- vorbis_dsp_clear(mState);
- delete mState;
- mState = nullptr;
- }
-
- if (mVi) {
- vorbis_info_clear(mVi);
- delete mVi;
- mVi = nullptr;
- }
- mNumFramesLeftOnPage = -1;
- mSignalledOutputEos = false;
- mSignalledError = false;
-
- return (initDecoder() == OK ? C2_OK : C2_CORRUPTED);
-}
-
-void C2SoftVorbisDec::onReset() {
- (void)onStop();
-}
-
-void C2SoftVorbisDec::onRelease() {
- if (mState) {
- vorbis_dsp_clear(mState);
- delete mState;
- mState = nullptr;
- }
-
- if (mVi) {
- vorbis_info_clear(mVi);
- delete mVi;
- mVi = nullptr;
- }
-}
-
-status_t C2SoftVorbisDec::initDecoder() {
- mVi = new vorbis_info{};
- if (!mVi) return NO_MEMORY;
- vorbis_info_clear(mVi);
-
- mState = new vorbis_dsp_state{};
- if (!mState) return NO_MEMORY;
- vorbis_dsp_clear(mState);
-
- mNumFramesLeftOnPage = -1;
- mSignalledError = false;
- mSignalledOutputEos = false;
- mInfoUnpacked = false;
- mBooksUnpacked = false;
- return OK;
-}
-
-c2_status_t C2SoftVorbisDec::onFlush_sm() {
- mNumFramesLeftOnPage = -1;
- mSignalledOutputEos = false;
- if (mState) vorbis_dsp_restart(mState);
-
- return C2_OK;
-}
-
-c2_status_t C2SoftVorbisDec::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- (void) pool;
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
-
- return C2_OK;
-}
-
-static void fillEmptyWork(const std::unique_ptr<C2Work> &work) {
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
-}
-
-static void makeBitReader(
- const void *data, size_t size,
- ogg_buffer *buf, ogg_reference *ref, oggpack_buffer *bits) {
- buf->data = (uint8_t *)data;
- buf->size = size;
- buf->refcount = 1;
- buf->ptr.owner = nullptr;
-
- ref->buffer = buf;
- ref->begin = 0;
- ref->length = size;
- ref->next = nullptr;
-
- oggpack_readinit(bits, ref);
-}
-
-// (CHECK!) multiframe is tricky. decode call doesnt return the number of bytes
-// consumed by the component. Also it is unclear why numPageFrames is being
-// tagged at the end of input buffers for new pages. Refer lines 297-300 in
-// SimpleDecodingSource.cpp
-void C2SoftVorbisDec::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 1u;
- work->worklets.front()->output.configUpdate.clear();
- work->worklets.front()->output.flags = work->input.flags;
-
- if (mSignalledError || mSignalledOutputEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
-
- bool eos = ((work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0);
- size_t inOffset = 0u;
- size_t inSize = 0u;
- C2ReadView rView = mDummyReadView;
- if (!work->input.buffers.empty()) {
- rView = work->input.buffers[0]->data().linearBlocks().front().map().get();
- inSize = rView.capacity();
- if (inSize && rView.error()) {
- ALOGE("read view map failed %d", rView.error());
- work->result = rView.error();
- return;
- }
- }
-
- if (inSize == 0) {
- fillEmptyWork(work);
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- }
- return;
- }
-
- ALOGV("in buffer attr. size %zu timestamp %d frameindex %d", inSize,
- (int)work->input.ordinal.timestamp.peeku(), (int)work->input.ordinal.frameIndex.peeku());
- const uint8_t *data = rView.data() + inOffset;
- int32_t numChannels = mVi->channels;
- int32_t samplingRate = mVi->rate;
- if (inSize > 7 && !memcmp(&data[1], "vorbis", 6)) {
- if ((data[0] != 1) && (data[0] != 5)) {
- ALOGE("unexpected type received %d", data[0]);
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
-
- ogg_buffer buf;
- ogg_reference ref;
- oggpack_buffer bits;
-
- // skip 7 <type + "vorbis"> bytes
- makeBitReader((const uint8_t *)data + 7, inSize - 7, &buf, &ref, &bits);
- if (data[0] == 1) {
- vorbis_info_init(mVi);
- if (0 != _vorbis_unpack_info(mVi, &bits)) {
- ALOGE("Encountered error while unpacking info");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- if (mVi->rate != samplingRate ||
- mVi->channels != numChannels) {
- ALOGV("vorbis: rate/channels changed: %ld/%d", mVi->rate, mVi->channels);
- samplingRate = mVi->rate;
- numChannels = mVi->channels;
-
- C2StreamSampleRateInfo::output sampleRateInfo(0u, samplingRate);
- C2StreamChannelCountInfo::output channelCountInfo(0u, numChannels);
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- c2_status_t err = mIntf->config(
- { &sampleRateInfo, &channelCountInfo },
- C2_MAY_BLOCK,
- &failures);
- if (err == OK) {
- work->worklets.front()->output.configUpdate.push_back(C2Param::Copy(sampleRateInfo));
- work->worklets.front()->output.configUpdate.push_back(C2Param::Copy(channelCountInfo));
- } else {
- ALOGE("Config Update failed");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- }
- mInfoUnpacked = true;
- } else {
- if (!mInfoUnpacked) {
- ALOGE("Data with type:5 sent before sending type:1");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- if (0 != _vorbis_unpack_books(mVi, &bits)) {
- ALOGE("Encountered error while unpacking books");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- if (0 != vorbis_dsp_init(mState, mVi)) {
- ALOGE("Encountered error while dsp init");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- mBooksUnpacked = true;
- }
- fillEmptyWork(work);
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- }
- return;
- }
-
- if (!mInfoUnpacked || !mBooksUnpacked) {
- ALOGE("Missing CODEC_CONFIG data mInfoUnpacked: %d mBooksUnpack %d", mInfoUnpacked, mBooksUnpacked);
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
-
- int32_t numPageFrames = 0;
- if (inSize < sizeof(numPageFrames)) {
- ALOGE("input header has size %zu, expected %zu", inSize, sizeof(numPageFrames));
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- memcpy(&numPageFrames, data + inSize - sizeof(numPageFrames), sizeof(numPageFrames));
- inSize -= sizeof(numPageFrames);
- if (numPageFrames >= 0) {
- mNumFramesLeftOnPage = numPageFrames;
- }
-
- ogg_buffer buf;
- buf.data = const_cast<unsigned char*>(data);
- buf.size = inSize;
- buf.refcount = 1;
- buf.ptr.owner = nullptr;
-
- ogg_reference ref;
- ref.buffer = &buf;
- ref.begin = 0;
- ref.length = buf.size;
- ref.next = nullptr;
-
- ogg_packet pack;
- pack.packet = &ref;
- pack.bytes = ref.length;
- pack.b_o_s = 0;
- pack.e_o_s = 0;
- pack.granulepos = 0;
- pack.packetno = 0;
-
- size_t maxSamplesInBuffer = kMaxNumSamplesPerChannel * mVi->channels;
- size_t outCapacity = maxSamplesInBuffer * sizeof(int16_t);
- std::shared_ptr<C2LinearBlock> block;
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- c2_status_t err = pool->fetchLinearBlock(outCapacity, usage, &block);
- if (err != C2_OK) {
- ALOGE("fetchLinearBlock for Output failed with status %d", err);
- work->result = C2_NO_MEMORY;
- return;
- }
- C2WriteView wView = block->map().get();
- if (wView.error()) {
- ALOGE("write view map failed %d", wView.error());
- work->result = wView.error();
- return;
- }
-
- int numFrames = 0;
- int ret = vorbis_dsp_synthesis(mState, &pack, 1);
- if (0 != ret) {
- ALOGE("vorbis_dsp_synthesis returned %d", ret);
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- } else {
- numFrames = vorbis_dsp_pcmout(
- mState, reinterpret_cast<int16_t *> (wView.data()),
- kMaxNumSamplesPerChannel);
- if (numFrames < 0) {
- ALOGD("vorbis_dsp_pcmout returned %d", numFrames);
- numFrames = 0;
- }
- }
-
- if (mNumFramesLeftOnPage >= 0) {
- if (numFrames > mNumFramesLeftOnPage) {
- ALOGV("discarding %d frames at end of page", numFrames - mNumFramesLeftOnPage);
- numFrames = mNumFramesLeftOnPage;
- }
- mNumFramesLeftOnPage -= numFrames;
- }
-
- if (numFrames) {
- int outSize = numFrames * sizeof(int16_t) * mVi->channels;
-
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.buffers.push_back(createLinearBuffer(block, 0, outSize));
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
- } else {
- fillEmptyWork(work);
- block.reset();
- }
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- }
-}
-
-class C2SoftVorbisDecFactory : public C2ComponentFactory {
-public:
- C2SoftVorbisDecFactory() : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {
- }
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftVorbisDec(COMPONENT_NAME,
- id,
- std::make_shared<C2SoftVorbisDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftVorbisDec::IntfImpl>(
- COMPONENT_NAME, id, std::make_shared<C2SoftVorbisDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftVorbisDecFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftVorbisDecFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/vorbis/C2SoftVorbisDec.h b/media/codecs/vorbis/C2SoftVorbisDec.h
deleted file mode 100644
index 3bf7326..0000000
--- a/media/codecs/vorbis/C2SoftVorbisDec.h
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_VORBIS_DEC_H_
-#define ANDROID_C2_SOFT_VORBIS_DEC_H_
-
-#include <SimpleC2Component.h>
-
-
-struct vorbis_dsp_state;
-struct vorbis_info;
-
-namespace android {
-
-struct C2SoftVorbisDec : public SimpleC2Component {
- class IntfImpl;
-
- C2SoftVorbisDec(const char *name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl);
- virtual ~C2SoftVorbisDec();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
-
- private:
- enum {
- kMaxNumSamplesPerChannel = 8192,
- };
-
- std::shared_ptr<IntfImpl> mIntf;
- vorbis_dsp_state *mState;
- vorbis_info *mVi;
-
- int32_t mNumFramesLeftOnPage;
- bool mSignalledError;
- bool mSignalledOutputEos;
- bool mInfoUnpacked;
- bool mBooksUnpacked;
- status_t initDecoder();
-
- C2_DO_NOT_COPY(C2SoftVorbisDec);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_VORBIS_DEC_H_
-
diff --git a/media/codecs/vorbis/MODULE_LICENSE_APACHE2 b/media/codecs/vorbis/MODULE_LICENSE_APACHE2
deleted file mode 100644
index e69de29..0000000
--- a/media/codecs/vorbis/MODULE_LICENSE_APACHE2
+++ /dev/null
diff --git a/media/codecs/vorbis/NOTICE b/media/codecs/vorbis/NOTICE
deleted file mode 100644
index c5b1efa..0000000
--- a/media/codecs/vorbis/NOTICE
+++ /dev/null
@@ -1,190 +0,0 @@
-
- Copyright (c) 2005-2008, The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
diff --git a/media/codecs/vpx/Android.bp b/media/codecs/vpx/Android.bp
deleted file mode 100644
index cc83371..0000000
--- a/media/codecs/vpx/Android.bp
+++ /dev/null
@@ -1,60 +0,0 @@
-cc_library_shared {
- name: "libstagefright_soft_c2vp9dec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: ["C2SoftVpxDec.cpp"],
-
- shared_libs: ["libvpx"],
-
- cflags: [
- "-DVP9",
- ],
-}
-
-cc_library_shared {
- name: "libstagefright_soft_c2vp8dec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: ["C2SoftVpxDec.cpp"],
-
- shared_libs: ["libvpx"],
-}
-
-cc_library_shared {
- name: "libstagefright_soft_c2vp9enc",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: [
- "C2SoftVp9Enc.cpp",
- "C2SoftVpxEnc.cpp",
- ],
-
- shared_libs: ["libvpx"],
-
- cflags: ["-DVP9"],
-}
-
-cc_library_shared {
- name: "libstagefright_soft_c2vp8enc",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: [
- "C2SoftVp8Enc.cpp",
- "C2SoftVpxEnc.cpp",
- ],
-
- shared_libs: ["libvpx"],
-}
-
diff --git a/media/codecs/vpx/C2SoftVp8Enc.cpp b/media/codecs/vpx/C2SoftVp8Enc.cpp
deleted file mode 100644
index 0ae717a..0000000
--- a/media/codecs/vpx/C2SoftVp8Enc.cpp
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * Copyright 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftVp8Enc"
-#include <utils/Log.h>
-#include <utils/misc.h>
-
-#include "C2SoftVp8Enc.h"
-
-namespace android {
-
-constexpr char COMPONENT_NAME[] = "c2.android.vp8.encoder";
-
-C2SoftVp8Enc::C2SoftVp8Enc(const char* name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl)
- : C2SoftVpxEnc(name, id, intfImpl), mDCTPartitions(0), mProfile(1) {}
-
-void C2SoftVp8Enc::setCodecSpecificInterface() {
- mCodecInterface = vpx_codec_vp8_cx();
-}
-
-void C2SoftVp8Enc::setCodecSpecificConfiguration() {
- switch (mProfile) {
- case 1:
- mCodecConfiguration->g_profile = 0;
- break;
-
- case 2:
- mCodecConfiguration->g_profile = 1;
- break;
-
- case 4:
- mCodecConfiguration->g_profile = 2;
- break;
-
- case 8:
- mCodecConfiguration->g_profile = 3;
- break;
-
- default:
- mCodecConfiguration->g_profile = 0;
- }
-}
-
-vpx_codec_err_t C2SoftVp8Enc::setCodecSpecificControls() {
- vpx_codec_err_t codec_return = vpx_codec_control(mCodecContext,
- VP8E_SET_TOKEN_PARTITIONS,
- mDCTPartitions);
- if (codec_return != VPX_CODEC_OK) {
- ALOGE("Error setting dct partitions for vpx encoder.");
- }
- return codec_return;
-}
-
-class C2SoftVp8EncFactory : public C2ComponentFactory {
-public:
- C2SoftVp8EncFactory()
- : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {}
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftVp8Enc(COMPONENT_NAME, id,
- std::make_shared<C2SoftVpxEnc::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftVpxEnc::IntfImpl>(
- COMPONENT_NAME, id,
- std::make_shared<C2SoftVpxEnc::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftVp8EncFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftVp8EncFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/vpx/C2SoftVp8Enc.h b/media/codecs/vpx/C2SoftVp8Enc.h
deleted file mode 100644
index ed6f356..0000000
--- a/media/codecs/vpx/C2SoftVp8Enc.h
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_VP8_ENC_H__
-#define ANDROID_C2_SOFT_VP8_ENC_H__
-
-#include "C2SoftVpxEnc.h"
-
-namespace android {
-
-// Exposes vp8 encoder as a c2 Component
-//
-// In addition to the base class settings, Only following encoder settings are
-// available:
-// - token partitioning
-struct C2SoftVp8Enc : public C2SoftVpxEnc {
- C2SoftVp8Enc(const char* name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl);
-
- protected:
- // Populates |mCodecInterface| with codec specific settings.
- virtual void setCodecSpecificInterface();
-
- // Sets codec specific configuration.
- virtual void setCodecSpecificConfiguration();
-
- // Initializes codec specific encoder settings.
- virtual vpx_codec_err_t setCodecSpecificControls();
-
- private:
- // Max value supported for DCT partitions
- static const uint32_t kMaxDCTPartitions = 3;
-
- // vp8 specific configuration parameter
- // that enables token partitioning of
- // the stream into substreams
- int32_t mDCTPartitions;
-
- // C2 Profile parameter
- int32_t mProfile;
-
- C2_DO_NOT_COPY(C2SoftVp8Enc);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_VP8_ENC_H__
diff --git a/media/codecs/vpx/C2SoftVp9Enc.cpp b/media/codecs/vpx/C2SoftVp9Enc.cpp
deleted file mode 100644
index b26170f..0000000
--- a/media/codecs/vpx/C2SoftVp9Enc.cpp
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * Copyright 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftVp9Enc"
-#include <utils/Log.h>
-#include <utils/misc.h>
-
-#include "C2SoftVp9Enc.h"
-
-namespace android {
-
-constexpr char COMPONENT_NAME[] = "c2.android.vp9.encoder";
-
-C2SoftVp9Enc::C2SoftVp9Enc(const char* name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl)
- : C2SoftVpxEnc(name, id, intfImpl),
- mProfile(1),
- mLevel(0),
- mTileColumns(0),
- mFrameParallelDecoding(false) {
-}
-
-void C2SoftVp9Enc::setCodecSpecificInterface() {
- mCodecInterface = vpx_codec_vp9_cx();
-}
-
-void C2SoftVp9Enc::setCodecSpecificConfiguration() {
- switch (mProfile) {
- case 1:
- mCodecConfiguration->g_profile = 0;
- break;
-
- case 2:
- mCodecConfiguration->g_profile = 1;
- break;
-
- case 4:
- mCodecConfiguration->g_profile = 2;
- break;
-
- case 8:
- mCodecConfiguration->g_profile = 3;
- break;
-
- default:
- mCodecConfiguration->g_profile = 0;
- }
-}
-
-vpx_codec_err_t C2SoftVp9Enc::setCodecSpecificControls() {
- vpx_codec_err_t codecReturn = vpx_codec_control(
- mCodecContext, VP9E_SET_TILE_COLUMNS, mTileColumns);
- if (codecReturn != VPX_CODEC_OK) {
- ALOGE("Error setting VP9E_SET_TILE_COLUMNS to %d. vpx_codec_control() "
- "returned %d", mTileColumns, codecReturn);
- return codecReturn;
- }
- codecReturn = vpx_codec_control(
- mCodecContext, VP9E_SET_FRAME_PARALLEL_DECODING,
- mFrameParallelDecoding);
- if (codecReturn != VPX_CODEC_OK) {
- ALOGE("Error setting VP9E_SET_FRAME_PARALLEL_DECODING to %d."
- "vpx_codec_control() returned %d", mFrameParallelDecoding,
- codecReturn);
- return codecReturn;
- }
- codecReturn = vpx_codec_control(mCodecContext, VP9E_SET_ROW_MT, 1);
- if (codecReturn != VPX_CODEC_OK) {
- ALOGE("Error setting VP9E_SET_ROW_MT to 1. vpx_codec_control() "
- "returned %d", codecReturn);
- return codecReturn;
- }
-
- // For VP9, we always set CPU_USED to 8 (because the realtime default is 0
- // which is too slow).
- codecReturn = vpx_codec_control(mCodecContext, VP8E_SET_CPUUSED, 8);
- if (codecReturn != VPX_CODEC_OK) {
- ALOGE("Error setting VP8E_SET_CPUUSED to 8. vpx_codec_control() "
- "returned %d", codecReturn);
- return codecReturn;
- }
- return codecReturn;
-}
-
-class C2SoftVp9EncFactory : public C2ComponentFactory {
-public:
- C2SoftVp9EncFactory()
- : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {}
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftVp9Enc(COMPONENT_NAME, id,
- std::make_shared<C2SoftVpxEnc::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftVpxEnc::IntfImpl>(
- COMPONENT_NAME, id,
- std::make_shared<C2SoftVpxEnc::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftVp9EncFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftVp9EncFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/vpx/C2SoftVp9Enc.h b/media/codecs/vpx/C2SoftVp9Enc.h
deleted file mode 100644
index 77ef8fd..0000000
--- a/media/codecs/vpx/C2SoftVp9Enc.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Copyright 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_VP9_ENC_H__
-#define ANDROID_C2_SOFT_VP9_ENC_H__
-
-#include "C2SoftVpxEnc.h"
-
-namespace android {
-
-// Exposes vp9 encoder as a c2 Component
-//
-// In addition to the base class settings, Only following encoder settings are
-// available:
-// - tile rows
-// - tile columns
-// - frame parallel mode
-struct C2SoftVp9Enc : public C2SoftVpxEnc {
- C2SoftVp9Enc(const char* name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl);
-
- protected:
- // Populates |mCodecInterface| with codec specific settings.
- virtual void setCodecSpecificInterface();
-
- // Sets codec specific configuration.
- virtual void setCodecSpecificConfiguration();
-
- // Initializes codec specific encoder settings.
- virtual vpx_codec_err_t setCodecSpecificControls();
-
- private:
- // C2 Profile & Level parameter
- int32_t mProfile;
- int32_t mLevel __unused;
-
- int32_t mTileColumns;
-
- bool mFrameParallelDecoding;
-
- C2_DO_NOT_COPY(C2SoftVp9Enc);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_VP9_ENC_H__
diff --git a/media/codecs/vpx/C2SoftVpxDec.cpp b/media/codecs/vpx/C2SoftVpxDec.cpp
deleted file mode 100644
index 8ecbf5d..0000000
--- a/media/codecs/vpx/C2SoftVpxDec.cpp
+++ /dev/null
@@ -1,697 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftVpxDec"
-#include <log/log.h>
-
-#include <media/stagefright/foundation/AUtils.h>
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <C2Debug.h>
-#include <C2PlatformSupport.h>
-#include <SimpleC2Interface.h>
-
-#include "C2SoftVpxDec.h"
-
-namespace android {
-
-#ifdef VP9
-constexpr char COMPONENT_NAME[] = "c2.android.vp9.decoder";
-#else
-constexpr char COMPONENT_NAME[] = "c2.android.vp8.decoder";
-#endif
-
-class C2SoftVpxDec::IntfImpl : public SimpleInterface<void>::BaseParams {
-public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper> &helper)
- : SimpleInterface<void>::BaseParams(
- helper,
- COMPONENT_NAME,
- C2Component::KIND_DECODER,
- C2Component::DOMAIN_VIDEO,
-#ifdef VP9
- MEDIA_MIMETYPE_VIDEO_VP9
-#else
- MEDIA_MIMETYPE_VIDEO_VP8
-#endif
- ) {
- noPrivateBuffers(); // TODO: account for our buffers here
- noInputReferences();
- noOutputReferences();
- noInputLatency();
- noTimeStretch();
-
- // TODO: output latency and reordering
-
- addParameter(
- DefineParam(mAttrib, C2_PARAMKEY_COMPONENT_ATTRIBUTES)
- .withConstValue(new C2ComponentAttributesSetting(C2Component::ATTRIB_IS_TEMPORAL))
- .build());
-
- addParameter(
- DefineParam(mSize, C2_PARAMKEY_PICTURE_SIZE)
- .withDefault(new C2StreamPictureSizeInfo::output(0u, 320, 240))
- .withFields({
- C2F(mSize, width).inRange(2, 2048, 2),
- C2F(mSize, height).inRange(2, 2048, 2),
- })
- .withSetter(SizeSetter)
- .build());
-
-#ifdef VP9
- // TODO: Add C2Config::PROFILE_VP9_2HDR ??
- addParameter(
- DefineParam(mProfileLevel, C2_PARAMKEY_PROFILE_LEVEL)
- .withDefault(new C2StreamProfileLevelInfo::input(0u,
- C2Config::PROFILE_VP9_0, C2Config::LEVEL_VP9_5))
- .withFields({
- C2F(mProfileLevel, profile).oneOf({
- C2Config::PROFILE_VP9_0,
- C2Config::PROFILE_VP9_2}),
- C2F(mProfileLevel, level).oneOf({
- C2Config::LEVEL_VP9_1,
- C2Config::LEVEL_VP9_1_1,
- C2Config::LEVEL_VP9_2,
- C2Config::LEVEL_VP9_2_1,
- C2Config::LEVEL_VP9_3,
- C2Config::LEVEL_VP9_3_1,
- C2Config::LEVEL_VP9_4,
- C2Config::LEVEL_VP9_4_1,
- C2Config::LEVEL_VP9_5,
- })
- })
- .withSetter(ProfileLevelSetter, mSize)
- .build());
-
- mHdr10PlusInfoInput = C2StreamHdr10PlusInfo::input::AllocShared(0);
- addParameter(
- DefineParam(mHdr10PlusInfoInput, C2_PARAMKEY_INPUT_HDR10_PLUS_INFO)
- .withDefault(mHdr10PlusInfoInput)
- .withFields({
- C2F(mHdr10PlusInfoInput, m.value).any(),
- })
- .withSetter(Hdr10PlusInfoInputSetter)
- .build());
-
- mHdr10PlusInfoOutput = C2StreamHdr10PlusInfo::output::AllocShared(0);
- addParameter(
- DefineParam(mHdr10PlusInfoOutput, C2_PARAMKEY_OUTPUT_HDR10_PLUS_INFO)
- .withDefault(mHdr10PlusInfoOutput)
- .withFields({
- C2F(mHdr10PlusInfoOutput, m.value).any(),
- })
- .withSetter(Hdr10PlusInfoOutputSetter)
- .build());
-
-#if 0
- // sample BT.2020 static info
- mHdrStaticInfo = std::make_shared<C2StreamHdrStaticInfo::output>();
- mHdrStaticInfo->mastering = {
- .red = { .x = 0.708, .y = 0.292 },
- .green = { .x = 0.170, .y = 0.797 },
- .blue = { .x = 0.131, .y = 0.046 },
- .white = { .x = 0.3127, .y = 0.3290 },
- .maxLuminance = 1000,
- .minLuminance = 0.1,
- };
- mHdrStaticInfo->maxCll = 1000;
- mHdrStaticInfo->maxFall = 120;
-
- mHdrStaticInfo->maxLuminance = 0; // disable static info
-
- helper->addStructDescriptors<C2MasteringDisplayColorVolumeStruct, C2ColorXyStruct>();
- addParameter(
- DefineParam(mHdrStaticInfo, C2_PARAMKEY_HDR_STATIC_INFO)
- .withDefault(mHdrStaticInfo)
- .withFields({
- C2F(mHdrStaticInfo, mastering.red.x).inRange(0, 1),
- // TODO
- })
- .withSetter(HdrStaticInfoSetter)
- .build());
-#endif
-#else
- addParameter(
- DefineParam(mProfileLevel, C2_PARAMKEY_PROFILE_LEVEL)
- .withConstValue(new C2StreamProfileLevelInfo::input(0u,
- C2Config::PROFILE_UNUSED, C2Config::LEVEL_UNUSED))
- .build());
-#endif
-
- addParameter(
- DefineParam(mMaxSize, C2_PARAMKEY_MAX_PICTURE_SIZE)
- .withDefault(new C2StreamMaxPictureSizeTuning::output(0u, 320, 240))
- .withFields({
- C2F(mSize, width).inRange(2, 2048, 2),
- C2F(mSize, height).inRange(2, 2048, 2),
- })
- .withSetter(MaxPictureSizeSetter, mSize)
- .build());
-
- addParameter(
- DefineParam(mMaxInputSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
- .withDefault(new C2StreamMaxBufferSizeInfo::input(0u, 320 * 240 * 3 / 4))
- .withFields({
- C2F(mMaxInputSize, value).any(),
- })
- .calculatedAs(MaxInputSizeSetter, mMaxSize)
- .build());
-
- C2ChromaOffsetStruct locations[1] = { C2ChromaOffsetStruct::ITU_YUV_420_0() };
- std::shared_ptr<C2StreamColorInfo::output> defaultColorInfo =
- C2StreamColorInfo::output::AllocShared(
- 1u, 0u, 8u /* bitDepth */, C2Color::YUV_420);
- memcpy(defaultColorInfo->m.locations, locations, sizeof(locations));
-
- defaultColorInfo =
- C2StreamColorInfo::output::AllocShared(
- { C2ChromaOffsetStruct::ITU_YUV_420_0() },
- 0u, 8u /* bitDepth */, C2Color::YUV_420);
- helper->addStructDescriptors<C2ChromaOffsetStruct>();
-
- addParameter(
- DefineParam(mColorInfo, C2_PARAMKEY_CODED_COLOR_INFO)
- .withConstValue(defaultColorInfo)
- .build());
-
- // TODO: support more formats?
- addParameter(
- DefineParam(mPixelFormat, C2_PARAMKEY_PIXEL_FORMAT)
- .withConstValue(new C2StreamPixelFormatInfo::output(
- 0u, HAL_PIXEL_FORMAT_YCBCR_420_888))
- .build());
- }
-
- static C2R SizeSetter(bool mayBlock, const C2P<C2StreamPictureSizeInfo::output> &oldMe,
- C2P<C2VideoSizeStreamInfo::output> &me) {
- (void)mayBlock;
- C2R res = C2R::Ok();
- if (!me.F(me.v.width).supportsAtAll(me.v.width)) {
- res = res.plus(C2SettingResultBuilder::BadValue(me.F(me.v.width)));
- me.set().width = oldMe.v.width;
- }
- if (!me.F(me.v.height).supportsAtAll(me.v.height)) {
- res = res.plus(C2SettingResultBuilder::BadValue(me.F(me.v.height)));
- me.set().height = oldMe.v.height;
- }
- return res;
- }
-
- static C2R MaxPictureSizeSetter(bool mayBlock, C2P<C2StreamMaxPictureSizeTuning::output> &me,
- const C2P<C2StreamPictureSizeInfo::output> &size) {
- (void)mayBlock;
- // TODO: get max width/height from the size's field helpers vs. hardcoding
- me.set().width = c2_min(c2_max(me.v.width, size.v.width), 2048u);
- me.set().height = c2_min(c2_max(me.v.height, size.v.height), 2048u);
- return C2R::Ok();
- }
-
- static C2R MaxInputSizeSetter(bool mayBlock, C2P<C2StreamMaxBufferSizeInfo::input> &me,
- const C2P<C2StreamMaxPictureSizeTuning::output> &maxSize) {
- (void)mayBlock;
- // assume compression ratio of 2
- me.set().value = (((maxSize.v.width + 63) / 64) * ((maxSize.v.height + 63) / 64) * 3072);
- return C2R::Ok();
- }
-
-
- static C2R ProfileLevelSetter(bool mayBlock, C2P<C2StreamProfileLevelInfo::input> &me,
- const C2P<C2StreamPictureSizeInfo::output> &size) {
- (void)mayBlock;
- (void)size;
- (void)me; // TODO: validate
- return C2R::Ok();
- }
-
- static C2R Hdr10PlusInfoInputSetter(bool mayBlock, C2P<C2StreamHdr10PlusInfo::input> &me) {
- (void)mayBlock;
- (void)me; // TODO: validate
- return C2R::Ok();
- }
-
- static C2R Hdr10PlusInfoOutputSetter(bool mayBlock, C2P<C2StreamHdr10PlusInfo::output> &me) {
- (void)mayBlock;
- (void)me; // TODO: validate
- return C2R::Ok();
- }
-
-private:
- std::shared_ptr<C2StreamProfileLevelInfo::input> mProfileLevel;
- std::shared_ptr<C2StreamPictureSizeInfo::output> mSize;
- std::shared_ptr<C2StreamMaxPictureSizeTuning::output> mMaxSize;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mMaxInputSize;
- std::shared_ptr<C2StreamColorInfo::output> mColorInfo;
- std::shared_ptr<C2StreamPixelFormatInfo::output> mPixelFormat;
-#ifdef VP9
-#if 0
- std::shared_ptr<C2StreamHdrStaticInfo::output> mHdrStaticInfo;
-#endif
- std::shared_ptr<C2StreamHdr10PlusInfo::input> mHdr10PlusInfoInput;
- std::shared_ptr<C2StreamHdr10PlusInfo::output> mHdr10PlusInfoOutput;
-#endif
-};
-
-C2SoftVpxDec::C2SoftVpxDec(
- const char *name,
- c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl)
- : SimpleC2Component(std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mCodecCtx(nullptr) {
-}
-
-C2SoftVpxDec::~C2SoftVpxDec() {
- onRelease();
-}
-
-c2_status_t C2SoftVpxDec::onInit() {
- status_t err = initDecoder();
- return err == OK ? C2_OK : C2_CORRUPTED;
-}
-
-c2_status_t C2SoftVpxDec::onStop() {
- mSignalledError = false;
- mSignalledOutputEos = false;
-
- return C2_OK;
-}
-
-void C2SoftVpxDec::onReset() {
- (void)onStop();
- c2_status_t err = onFlush_sm();
- if (err != C2_OK)
- {
- ALOGW("Failed to flush decoder. Try to hard reset decoder");
- destroyDecoder();
- (void)initDecoder();
- }
-}
-
-void C2SoftVpxDec::onRelease() {
- destroyDecoder();
-}
-
-c2_status_t C2SoftVpxDec::onFlush_sm() {
- if (mFrameParallelMode) {
- // Flush decoder by passing nullptr data ptr and 0 size.
- // Ideally, this should never fail.
- if (vpx_codec_decode(mCodecCtx, nullptr, 0, nullptr, 0)) {
- ALOGE("Failed to flush on2 decoder.");
- return C2_CORRUPTED;
- }
- }
-
- // Drop all the decoded frames in decoder.
- vpx_codec_iter_t iter = nullptr;
- while (vpx_codec_get_frame(mCodecCtx, &iter)) {
- }
-
- mSignalledError = false;
- mSignalledOutputEos = false;
- return C2_OK;
-}
-
-static int GetCPUCoreCount() {
- int cpuCoreCount = 1;
-#if defined(_SC_NPROCESSORS_ONLN)
- cpuCoreCount = sysconf(_SC_NPROCESSORS_ONLN);
-#else
- // _SC_NPROC_ONLN must be defined...
- cpuCoreCount = sysconf(_SC_NPROC_ONLN);
-#endif
- CHECK(cpuCoreCount >= 1);
- ALOGV("Number of CPU cores: %d", cpuCoreCount);
- return cpuCoreCount;
-}
-
-status_t C2SoftVpxDec::initDecoder() {
-#ifdef VP9
- mMode = MODE_VP9;
-#else
- mMode = MODE_VP8;
-#endif
-
- mWidth = 320;
- mHeight = 240;
- mFrameParallelMode = false;
- mSignalledOutputEos = false;
- mSignalledError = false;
-
- if (!mCodecCtx) {
- mCodecCtx = new vpx_codec_ctx_t;
- }
- if (!mCodecCtx) {
- ALOGE("mCodecCtx is null");
- return NO_MEMORY;
- }
-
- vpx_codec_dec_cfg_t cfg;
- memset(&cfg, 0, sizeof(vpx_codec_dec_cfg_t));
- cfg.threads = GetCPUCoreCount();
-
- vpx_codec_flags_t flags;
- memset(&flags, 0, sizeof(vpx_codec_flags_t));
- if (mFrameParallelMode) flags |= VPX_CODEC_USE_FRAME_THREADING;
-
- vpx_codec_err_t vpx_err;
- if ((vpx_err = vpx_codec_dec_init(
- mCodecCtx, mMode == MODE_VP8 ? &vpx_codec_vp8_dx_algo : &vpx_codec_vp9_dx_algo,
- &cfg, flags))) {
- ALOGE("on2 decoder failed to initialize. (%d)", vpx_err);
- return UNKNOWN_ERROR;
- }
-
- return OK;
-}
-
-status_t C2SoftVpxDec::destroyDecoder() {
- if (mCodecCtx) {
- vpx_codec_destroy(mCodecCtx);
- delete mCodecCtx;
- mCodecCtx = nullptr;
- }
-
- return OK;
-}
-
-void fillEmptyWork(const std::unique_ptr<C2Work> &work) {
- uint32_t flags = 0;
- if (work->input.flags & C2FrameData::FLAG_END_OF_STREAM) {
- flags |= C2FrameData::FLAG_END_OF_STREAM;
- ALOGV("signalling eos");
- }
- work->worklets.front()->output.flags = (C2FrameData::flags_t)flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
-}
-
-void C2SoftVpxDec::finishWork(uint64_t index, const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2GraphicBlock> &block) {
- std::shared_ptr<C2Buffer> buffer = createGraphicBuffer(block,
- C2Rect(mWidth, mHeight));
- auto fillWork = [buffer, index, intf = this->mIntf](
- const std::unique_ptr<C2Work> &work) {
- uint32_t flags = 0;
- if ((work->input.flags & C2FrameData::FLAG_END_OF_STREAM) &&
- (c2_cntr64_t(index) == work->input.ordinal.frameIndex)) {
- flags |= C2FrameData::FLAG_END_OF_STREAM;
- ALOGV("signalling eos");
- }
- work->worklets.front()->output.flags = (C2FrameData::flags_t)flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.buffers.push_back(buffer);
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
-
- for (const std::unique_ptr<C2Param> ¶m: work->input.configUpdate) {
- if (param) {
- C2StreamHdr10PlusInfo::input *hdr10PlusInfo =
- C2StreamHdr10PlusInfo::input::From(param.get());
-
- if (hdr10PlusInfo != nullptr) {
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- std::unique_ptr<C2Param> outParam = C2Param::CopyAsStream(
- *param.get(), true /*output*/, param->stream());
- c2_status_t err = intf->config(
- { outParam.get() }, C2_MAY_BLOCK, &failures);
- if (err == C2_OK) {
- work->worklets.front()->output.configUpdate.push_back(
- C2Param::Copy(*outParam.get()));
- } else {
- ALOGE("finishWork: Config update size failed");
- }
- break;
- }
- }
- }
- };
- if (work && c2_cntr64_t(index) == work->input.ordinal.frameIndex) {
- fillWork(work);
- } else {
- finish(index, fillWork);
- }
-}
-
-void C2SoftVpxDec::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 0u;
- work->worklets.front()->output.configUpdate.clear();
- work->worklets.front()->output.flags = work->input.flags;
-
- if (mSignalledError || mSignalledOutputEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
-
- size_t inOffset = 0u;
- size_t inSize = 0u;
- C2ReadView rView = mDummyReadView;
- if (!work->input.buffers.empty()) {
- rView = work->input.buffers[0]->data().linearBlocks().front().map().get();
- inSize = rView.capacity();
- if (inSize && rView.error()) {
- ALOGE("read view map failed %d", rView.error());
- work->result = C2_CORRUPTED;
- return;
- }
- }
-
- bool codecConfig = ((work->input.flags & C2FrameData::FLAG_CODEC_CONFIG) !=0);
- bool eos = ((work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0);
-
- ALOGV("in buffer attr. size %zu timestamp %d frameindex %d, flags %x",
- inSize, (int)work->input.ordinal.timestamp.peeku(),
- (int)work->input.ordinal.frameIndex.peeku(), work->input.flags);
-
- // Software VP9 Decoder does not need the Codec Specific Data (CSD)
- // (specified in http://www.webmproject.org/vp9/profiles/). Ignore it if
- // it was passed.
- if (codecConfig) {
- // Ignore CSD buffer for VP9.
- if (mMode == MODE_VP9) {
- fillEmptyWork(work);
- return;
- } else {
- // Tolerate the CSD buffer for VP8. This is a workaround
- // for b/28689536. continue
- ALOGW("WARNING: Got CSD buffer for VP8. Continue");
- }
- }
-
- int64_t frameIndex = work->input.ordinal.frameIndex.peekll();
-
- if (inSize) {
- uint8_t *bitstream = const_cast<uint8_t *>(rView.data() + inOffset);
- vpx_codec_err_t err = vpx_codec_decode(
- mCodecCtx, bitstream, inSize, &frameIndex, 0);
- if (err != VPX_CODEC_OK) {
- ALOGE("on2 decoder failed to decode frame. err: %d", err);
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return;
- }
- }
-
- (void)outputBuffer(pool, work);
-
- if (eos) {
- drainInternal(DRAIN_COMPONENT_WITH_EOS, pool, work);
- mSignalledOutputEos = true;
- } else if (!inSize) {
- fillEmptyWork(work);
- }
-}
-
-static void copyOutputBufferToYV12Frame(uint8_t *dst,
- const uint8_t *srcY, const uint8_t *srcU, const uint8_t *srcV,
- size_t srcYStride, size_t srcUStride, size_t srcVStride,
- uint32_t width, uint32_t height, int32_t bpp) {
- size_t dstYStride = align(width, 16) * bpp ;
- size_t dstUVStride = align(dstYStride / 2, 16);
- uint8_t *dstStart = dst;
-
- for (size_t i = 0; i < height; ++i) {
- memcpy(dst, srcY, width * bpp);
- srcY += srcYStride;
- dst += dstYStride;
- }
-
- dst = dstStart + dstYStride * height;
- for (size_t i = 0; i < height / 2; ++i) {
- memcpy(dst, srcV, width / 2 * bpp);
- srcV += srcVStride;
- dst += dstUVStride;
- }
-
- dst = dstStart + (dstYStride * height) + (dstUVStride * height / 2);
- for (size_t i = 0; i < height / 2; ++i) {
- memcpy(dst, srcU, width / 2 * bpp);
- srcU += srcUStride;
- dst += dstUVStride;
- }
-}
-
-bool C2SoftVpxDec::outputBuffer(
- const std::shared_ptr<C2BlockPool> &pool,
- const std::unique_ptr<C2Work> &work)
-{
- if (!(work && pool)) return false;
-
- vpx_codec_iter_t iter = nullptr;
- vpx_image_t *img = vpx_codec_get_frame(mCodecCtx, &iter);
-
- if (!img) return false;
-
- if (img->d_w != mWidth || img->d_h != mHeight) {
- mWidth = img->d_w;
- mHeight = img->d_h;
-
- C2VideoSizeStreamInfo::output size(0u, mWidth, mHeight);
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- c2_status_t err = mIntf->config({&size}, C2_MAY_BLOCK, &failures);
- if (err == C2_OK) {
- work->worklets.front()->output.configUpdate.push_back(
- C2Param::Copy(size));
- } else {
- ALOGE("Config update size failed");
- mSignalledError = true;
- work->workletsProcessed = 1u;
- work->result = C2_CORRUPTED;
- return false;
- }
-
- }
- CHECK(img->fmt == VPX_IMG_FMT_I420 || img->fmt == VPX_IMG_FMT_I42016);
- int32_t bpp = 1;
- if (img->fmt == VPX_IMG_FMT_I42016) {
- bpp = 2;
- }
-
- std::shared_ptr<C2GraphicBlock> block;
- uint32_t format = HAL_PIXEL_FORMAT_YV12;
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- c2_status_t err = pool->fetchGraphicBlock(align(mWidth, 16) * bpp, mHeight, format, usage, &block);
- if (err != C2_OK) {
- ALOGE("fetchGraphicBlock for Output failed with status %d", err);
- work->result = err;
- return false;
- }
-
- C2GraphicView wView = block->map().get();
- if (wView.error()) {
- ALOGE("graphic view map failed %d", wView.error());
- work->result = C2_CORRUPTED;
- return false;
- }
-
- ALOGV("provided (%dx%d) required (%dx%d), out frameindex %d",
- block->width(), block->height(), mWidth, mHeight, (int)*(int64_t *)img->user_priv);
-
- uint8_t *dst = const_cast<uint8_t *>(wView.data()[C2PlanarLayout::PLANE_Y]);
- size_t srcYStride = img->stride[VPX_PLANE_Y];
- size_t srcUStride = img->stride[VPX_PLANE_U];
- size_t srcVStride = img->stride[VPX_PLANE_V];
- const uint8_t *srcY = (const uint8_t *)img->planes[VPX_PLANE_Y];
- const uint8_t *srcU = (const uint8_t *)img->planes[VPX_PLANE_U];
- const uint8_t *srcV = (const uint8_t *)img->planes[VPX_PLANE_V];
- copyOutputBufferToYV12Frame(dst, srcY, srcU, srcV,
- srcYStride, srcUStride, srcVStride, mWidth, mHeight, bpp);
-
- finishWork(*(int64_t *)img->user_priv, work, std::move(block));
- return true;
-}
-
-c2_status_t C2SoftVpxDec::drainInternal(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool,
- const std::unique_ptr<C2Work> &work) {
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
-
- while ((outputBuffer(pool, work))) {
- }
-
- if (drainMode == DRAIN_COMPONENT_WITH_EOS &&
- work && work->workletsProcessed == 0u) {
- fillEmptyWork(work);
- }
-
- return C2_OK;
-}
-c2_status_t C2SoftVpxDec::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- return drainInternal(drainMode, pool, nullptr);
-}
-
-class C2SoftVpxFactory : public C2ComponentFactory {
-public:
- C2SoftVpxFactory() : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {
- }
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftVpxDec(COMPONENT_NAME, id,
- std::make_shared<C2SoftVpxDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftVpxDec::IntfImpl>(
- COMPONENT_NAME, id,
- std::make_shared<C2SoftVpxDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftVpxFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftVpxFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/vpx/C2SoftVpxDec.h b/media/codecs/vpx/C2SoftVpxDec.h
deleted file mode 100644
index 60c8484..0000000
--- a/media/codecs/vpx/C2SoftVpxDec.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_VPX_DEC_H_
-#define ANDROID_C2_SOFT_VPX_DEC_H_
-
-#include <SimpleC2Component.h>
-
-
-#include "vpx/vpx_decoder.h"
-#include "vpx/vp8dx.h"
-
-namespace android {
-
-struct C2SoftVpxDec : public SimpleC2Component {
- class IntfImpl;
-
- C2SoftVpxDec(const char* name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl);
- virtual ~C2SoftVpxDec();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
- private:
- enum {
- MODE_VP8,
- MODE_VP9,
- } mMode;
-
- std::shared_ptr<IntfImpl> mIntf;
- vpx_codec_ctx_t *mCodecCtx;
- bool mFrameParallelMode; // Frame parallel is only supported by VP9 decoder.
-
- uint32_t mWidth;
- uint32_t mHeight;
- bool mSignalledOutputEos;
- bool mSignalledError;
-
- status_t initDecoder();
- status_t destroyDecoder();
- void finishWork(uint64_t index, const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2GraphicBlock> &block);
- bool outputBuffer(
- const std::shared_ptr<C2BlockPool> &pool,
- const std::unique_ptr<C2Work> &work);
- c2_status_t drainInternal(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool,
- const std::unique_ptr<C2Work> &work);
-
- C2_DO_NOT_COPY(C2SoftVpxDec);
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_VPX_DEC_H_
diff --git a/media/codecs/vpx/C2SoftVpxEnc.cpp b/media/codecs/vpx/C2SoftVpxEnc.cpp
deleted file mode 100644
index 155a84f..0000000
--- a/media/codecs/vpx/C2SoftVpxEnc.cpp
+++ /dev/null
@@ -1,670 +0,0 @@
-/*
- * Copyright 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftVpxEnc"
-#include <log/log.h>
-#include <utils/misc.h>
-
-#include <media/hardware/VideoAPI.h>
-
-#include <Codec2BufferUtils.h>
-#include <C2Debug.h>
-#include "C2SoftVpxEnc.h"
-
-#ifndef INT32_MAX
-#define INT32_MAX 2147483647
-#endif
-
-namespace android {
-
-#if 0
-static size_t getCpuCoreCount() {
- long cpuCoreCount = 1;
-#if defined(_SC_NPROCESSORS_ONLN)
- cpuCoreCount = sysconf(_SC_NPROCESSORS_ONLN);
-#else
- // _SC_NPROC_ONLN must be defined...
- cpuCoreCount = sysconf(_SC_NPROC_ONLN);
-#endif
- CHECK(cpuCoreCount >= 1);
- ALOGV("Number of CPU cores: %ld", cpuCoreCount);
- return (size_t)cpuCoreCount;
-}
-#endif
-
-C2SoftVpxEnc::C2SoftVpxEnc(const char* name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl)
- : SimpleC2Component(
- std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mCodecContext(nullptr),
- mCodecConfiguration(nullptr),
- mCodecInterface(nullptr),
- mStrideAlign(2),
- mColorFormat(VPX_IMG_FMT_I420),
- mBitrateControlMode(VPX_VBR),
- mErrorResilience(false),
- mMinQuantizer(0),
- mMaxQuantizer(0),
- mTemporalLayers(0),
- mTemporalPatternType(VPXTemporalLayerPatternNone),
- mTemporalPatternLength(0),
- mTemporalPatternIdx(0),
- mLastTimestamp(0x7FFFFFFFFFFFFFFFull),
- mSignalledOutputEos(false),
- mSignalledError(false) {
- memset(mTemporalLayerBitrateRatio, 0, sizeof(mTemporalLayerBitrateRatio));
- mTemporalLayerBitrateRatio[0] = 100;
-}
-
-C2SoftVpxEnc::~C2SoftVpxEnc() {
- onRelease();
-}
-
-c2_status_t C2SoftVpxEnc::onInit() {
- status_t err = initEncoder();
- return err == OK ? C2_OK : C2_CORRUPTED;
-}
-
-void C2SoftVpxEnc::onRelease() {
- if (mCodecContext) {
- vpx_codec_destroy(mCodecContext);
- delete mCodecContext;
- mCodecContext = nullptr;
- }
-
- if (mCodecConfiguration) {
- delete mCodecConfiguration;
- mCodecConfiguration = nullptr;
- }
-
- // this one is not allocated by us
- mCodecInterface = nullptr;
-}
-
-c2_status_t C2SoftVpxEnc::onStop() {
- onRelease();
- mLastTimestamp = 0x7FFFFFFFFFFFFFFFLL;
- mSignalledOutputEos = false;
- mSignalledError = false;
- return C2_OK;
-}
-
-void C2SoftVpxEnc::onReset() {
- (void)onStop();
-}
-
-c2_status_t C2SoftVpxEnc::onFlush_sm() {
- return onStop();
-}
-
-status_t C2SoftVpxEnc::initEncoder() {
- vpx_codec_err_t codec_return;
- status_t result = UNKNOWN_ERROR;
- {
- IntfImpl::Lock lock = mIntf->lock();
- mSize = mIntf->getSize_l();
- mBitrate = mIntf->getBitrate_l();
- mBitrateMode = mIntf->getBitrateMode_l();
- mFrameRate = mIntf->getFrameRate_l();
- mIntraRefresh = mIntf->getIntraRefresh_l();
- mRequestSync = mIntf->getRequestSync_l();
- mTemporalLayers = mIntf->getTemporalLayers_l()->m.layerCount;
- }
-
- switch (mBitrateMode->value) {
- case C2Config::BITRATE_VARIABLE:
- mBitrateControlMode = VPX_VBR;
- break;
- case C2Config::BITRATE_CONST:
- default:
- mBitrateControlMode = VPX_CBR;
- break;
- break;
- }
-
- setCodecSpecificInterface();
- if (!mCodecInterface) goto CleanUp;
-
- ALOGD("VPx: initEncoder. BRMode: %u. TSLayers: %zu. KF: %u. QP: %u - %u",
- (uint32_t)mBitrateControlMode, mTemporalLayers, mIntf->getSyncFramePeriod(),
- mMinQuantizer, mMaxQuantizer);
-
- mCodecConfiguration = new vpx_codec_enc_cfg_t;
- if (!mCodecConfiguration) goto CleanUp;
- codec_return = vpx_codec_enc_config_default(mCodecInterface,
- mCodecConfiguration,
- 0);
- if (codec_return != VPX_CODEC_OK) {
- ALOGE("Error populating default configuration for vpx encoder.");
- goto CleanUp;
- }
-
- mCodecConfiguration->g_w = mSize->width;
- mCodecConfiguration->g_h = mSize->height;
- //mCodecConfiguration->g_threads = getCpuCoreCount();
- mCodecConfiguration->g_threads = 0;
- mCodecConfiguration->g_error_resilient = mErrorResilience;
-
- // timebase unit is microsecond
- // g_timebase is in seconds (i.e. 1/1000000 seconds)
- mCodecConfiguration->g_timebase.num = 1;
- mCodecConfiguration->g_timebase.den = 1000000;
- // rc_target_bitrate is in kbps, mBitrate in bps
- mCodecConfiguration->rc_target_bitrate = (mBitrate->value + 500) / 1000;
- mCodecConfiguration->rc_end_usage = mBitrateControlMode;
- // Disable frame drop - not allowed in MediaCodec now.
- mCodecConfiguration->rc_dropframe_thresh = 0;
- // Disable lagged encoding.
- mCodecConfiguration->g_lag_in_frames = 0;
- if (mBitrateControlMode == VPX_CBR) {
- // Disable spatial resizing.
- mCodecConfiguration->rc_resize_allowed = 0;
- // Single-pass mode.
- mCodecConfiguration->g_pass = VPX_RC_ONE_PASS;
- // Maximum amount of bits that can be subtracted from the target
- // bitrate - expressed as percentage of the target bitrate.
- mCodecConfiguration->rc_undershoot_pct = 100;
- // Maximum amount of bits that can be added to the target
- // bitrate - expressed as percentage of the target bitrate.
- mCodecConfiguration->rc_overshoot_pct = 15;
- // Initial value of the buffer level in ms.
- mCodecConfiguration->rc_buf_initial_sz = 500;
- // Amount of data that the encoder should try to maintain in ms.
- mCodecConfiguration->rc_buf_optimal_sz = 600;
- // The amount of data that may be buffered by the decoding
- // application in ms.
- mCodecConfiguration->rc_buf_sz = 1000;
- // Enable error resilience - needed for packet loss.
- mCodecConfiguration->g_error_resilient = 1;
- // Maximum key frame interval - for CBR boost to 3000
- mCodecConfiguration->kf_max_dist = 3000;
- // Encoder determines optimal key frame placement automatically.
- mCodecConfiguration->kf_mode = VPX_KF_AUTO;
- }
-
- // Frames temporal pattern - for now WebRTC like pattern is only supported.
- switch (mTemporalLayers) {
- case 0:
- mTemporalPatternLength = 0;
- break;
- case 1:
- mCodecConfiguration->ts_number_layers = 1;
- mCodecConfiguration->ts_rate_decimator[0] = 1;
- mCodecConfiguration->ts_periodicity = 1;
- mCodecConfiguration->ts_layer_id[0] = 0;
- mTemporalPattern[0] = kTemporalUpdateLastRefAll;
- mTemporalPatternLength = 1;
- break;
- case 2:
- mCodecConfiguration->ts_number_layers = 2;
- mCodecConfiguration->ts_rate_decimator[0] = 2;
- mCodecConfiguration->ts_rate_decimator[1] = 1;
- mCodecConfiguration->ts_periodicity = 2;
- mCodecConfiguration->ts_layer_id[0] = 0;
- mCodecConfiguration->ts_layer_id[1] = 1;
- mTemporalPattern[0] = kTemporalUpdateLastAndGoldenRefAltRef;
- mTemporalPattern[1] = kTemporalUpdateGoldenWithoutDependencyRefAltRef;
- mTemporalPattern[2] = kTemporalUpdateLastRefAltRef;
- mTemporalPattern[3] = kTemporalUpdateGoldenRefAltRef;
- mTemporalPattern[4] = kTemporalUpdateLastRefAltRef;
- mTemporalPattern[5] = kTemporalUpdateGoldenRefAltRef;
- mTemporalPattern[6] = kTemporalUpdateLastRefAltRef;
- mTemporalPattern[7] = kTemporalUpdateNone;
- mTemporalPatternLength = 8;
- break;
- case 3:
- mCodecConfiguration->ts_number_layers = 3;
- mCodecConfiguration->ts_rate_decimator[0] = 4;
- mCodecConfiguration->ts_rate_decimator[1] = 2;
- mCodecConfiguration->ts_rate_decimator[2] = 1;
- mCodecConfiguration->ts_periodicity = 4;
- mCodecConfiguration->ts_layer_id[0] = 0;
- mCodecConfiguration->ts_layer_id[1] = 2;
- mCodecConfiguration->ts_layer_id[2] = 1;
- mCodecConfiguration->ts_layer_id[3] = 2;
- mTemporalPattern[0] = kTemporalUpdateLastAndGoldenRefAltRef;
- mTemporalPattern[1] = kTemporalUpdateNoneNoRefGoldenRefAltRef;
- mTemporalPattern[2] = kTemporalUpdateGoldenWithoutDependencyRefAltRef;
- mTemporalPattern[3] = kTemporalUpdateNone;
- mTemporalPattern[4] = kTemporalUpdateLastRefAltRef;
- mTemporalPattern[5] = kTemporalUpdateNone;
- mTemporalPattern[6] = kTemporalUpdateGoldenRefAltRef;
- mTemporalPattern[7] = kTemporalUpdateNone;
- mTemporalPatternLength = 8;
- break;
- default:
- ALOGE("Wrong number of temporal layers %zu", mTemporalLayers);
- goto CleanUp;
- }
- // Set bitrate values for each layer
- for (size_t i = 0; i < mCodecConfiguration->ts_number_layers; i++) {
- mCodecConfiguration->ts_target_bitrate[i] =
- mCodecConfiguration->rc_target_bitrate *
- mTemporalLayerBitrateRatio[i] / 100;
- }
- if (mIntf->getSyncFramePeriod() >= 0) {
- mCodecConfiguration->kf_max_dist = mIntf->getSyncFramePeriod();
- mCodecConfiguration->kf_min_dist = mIntf->getSyncFramePeriod();
- mCodecConfiguration->kf_mode = VPX_KF_AUTO;
- }
- if (mMinQuantizer > 0) {
- mCodecConfiguration->rc_min_quantizer = mMinQuantizer;
- }
- if (mMaxQuantizer > 0) {
- mCodecConfiguration->rc_max_quantizer = mMaxQuantizer;
- }
- setCodecSpecificConfiguration();
- mCodecContext = new vpx_codec_ctx_t;
- if (!mCodecContext) goto CleanUp;
- codec_return = vpx_codec_enc_init(mCodecContext,
- mCodecInterface,
- mCodecConfiguration,
- 0); // flags
- if (codec_return != VPX_CODEC_OK) {
- ALOGE("Error initializing vpx encoder");
- goto CleanUp;
- }
-
- // Extra CBR settings
- if (mBitrateControlMode == VPX_CBR) {
- codec_return = vpx_codec_control(mCodecContext,
- VP8E_SET_STATIC_THRESHOLD,
- 1);
- if (codec_return == VPX_CODEC_OK) {
- uint32_t rc_max_intra_target =
- (uint32_t)(mCodecConfiguration->rc_buf_optimal_sz * mFrameRate->value / 20 + 0.5);
- // Don't go below 3 times per frame bandwidth.
- if (rc_max_intra_target < 300) {
- rc_max_intra_target = 300;
- }
- codec_return = vpx_codec_control(mCodecContext,
- VP8E_SET_MAX_INTRA_BITRATE_PCT,
- rc_max_intra_target);
- }
- if (codec_return == VPX_CODEC_OK) {
- codec_return = vpx_codec_control(mCodecContext,
- VP8E_SET_CPUUSED,
- -8);
- }
- if (codec_return != VPX_CODEC_OK) {
- ALOGE("Error setting cbr parameters for vpx encoder.");
- goto CleanUp;
- }
- }
-
- codec_return = setCodecSpecificControls();
- if (codec_return != VPX_CODEC_OK) goto CleanUp;
-
- {
- uint32_t width = mSize->width;
- uint32_t height = mSize->height;
- if (((uint64_t)width * height) >
- ((uint64_t)INT32_MAX / 3)) {
- ALOGE("b/25812794, Buffer size is too big, width=%u, height=%u.", width, height);
- } else {
- uint32_t stride = (width + mStrideAlign - 1) & ~(mStrideAlign - 1);
- uint32_t vstride = (height + mStrideAlign - 1) & ~(mStrideAlign - 1);
- mConversionBuffer = MemoryBlock::Allocate(stride * vstride * 3 / 2);
- if (!mConversionBuffer.size()) {
- ALOGE("Allocating conversion buffer failed.");
- } else {
- mNumInputFrames = -1;
- return OK;
- }
- }
- }
-
-CleanUp:
- onRelease();
- return result;
-}
-
-vpx_enc_frame_flags_t C2SoftVpxEnc::getEncodeFlags() {
- vpx_enc_frame_flags_t flags = 0;
- if (mTemporalPatternLength > 0) {
- int patternIdx = mTemporalPatternIdx % mTemporalPatternLength;
- mTemporalPatternIdx++;
- switch (mTemporalPattern[patternIdx]) {
- case kTemporalUpdateLast:
- flags |= VP8_EFLAG_NO_UPD_GF;
- flags |= VP8_EFLAG_NO_UPD_ARF;
- flags |= VP8_EFLAG_NO_REF_GF;
- flags |= VP8_EFLAG_NO_REF_ARF;
- break;
- case kTemporalUpdateGoldenWithoutDependency:
- flags |= VP8_EFLAG_NO_REF_GF;
- [[fallthrough]];
- case kTemporalUpdateGolden:
- flags |= VP8_EFLAG_NO_REF_ARF;
- flags |= VP8_EFLAG_NO_UPD_ARF;
- flags |= VP8_EFLAG_NO_UPD_LAST;
- break;
- case kTemporalUpdateAltrefWithoutDependency:
- flags |= VP8_EFLAG_NO_REF_ARF;
- flags |= VP8_EFLAG_NO_REF_GF;
- [[fallthrough]];
- case kTemporalUpdateAltref:
- flags |= VP8_EFLAG_NO_UPD_GF;
- flags |= VP8_EFLAG_NO_UPD_LAST;
- break;
- case kTemporalUpdateNoneNoRefAltref:
- flags |= VP8_EFLAG_NO_REF_ARF;
- [[fallthrough]];
- case kTemporalUpdateNone:
- flags |= VP8_EFLAG_NO_UPD_GF;
- flags |= VP8_EFLAG_NO_UPD_ARF;
- flags |= VP8_EFLAG_NO_UPD_LAST;
- flags |= VP8_EFLAG_NO_UPD_ENTROPY;
- break;
- case kTemporalUpdateNoneNoRefGoldenRefAltRef:
- flags |= VP8_EFLAG_NO_REF_GF;
- flags |= VP8_EFLAG_NO_UPD_GF;
- flags |= VP8_EFLAG_NO_UPD_ARF;
- flags |= VP8_EFLAG_NO_UPD_LAST;
- flags |= VP8_EFLAG_NO_UPD_ENTROPY;
- break;
- case kTemporalUpdateGoldenWithoutDependencyRefAltRef:
- flags |= VP8_EFLAG_NO_REF_GF;
- flags |= VP8_EFLAG_NO_UPD_ARF;
- flags |= VP8_EFLAG_NO_UPD_LAST;
- break;
- case kTemporalUpdateLastRefAltRef:
- flags |= VP8_EFLAG_NO_UPD_GF;
- flags |= VP8_EFLAG_NO_UPD_ARF;
- flags |= VP8_EFLAG_NO_REF_GF;
- break;
- case kTemporalUpdateGoldenRefAltRef:
- flags |= VP8_EFLAG_NO_UPD_ARF;
- flags |= VP8_EFLAG_NO_UPD_LAST;
- break;
- case kTemporalUpdateLastAndGoldenRefAltRef:
- flags |= VP8_EFLAG_NO_UPD_ARF;
- flags |= VP8_EFLAG_NO_REF_GF;
- break;
- case kTemporalUpdateLastRefAll:
- flags |= VP8_EFLAG_NO_UPD_ARF;
- flags |= VP8_EFLAG_NO_UPD_GF;
- break;
- }
- }
- return flags;
-}
-
-// TODO: add support for YUV input color formats
-// TODO: add support for SVC, ARF. SVC and ARF returns multiple frames
-// (hierarchical / noshow) in one call. These frames should be combined in to
-// a single buffer and sent back to the client
-void C2SoftVpxEnc::process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 1u;
- work->worklets.front()->output.flags = work->input.flags;
-
- if (mSignalledError || mSignalledOutputEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
- // Initialize encoder if not already
- if (!mCodecContext && OK != initEncoder()) {
- ALOGE("Failed to initialize encoder");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
-
- std::shared_ptr<const C2GraphicView> rView;
- std::shared_ptr<C2Buffer> inputBuffer;
- if (!work->input.buffers.empty()) {
- inputBuffer = work->input.buffers[0];
- rView = std::make_shared<const C2GraphicView>(
- inputBuffer->data().graphicBlocks().front().map().get());
- if (rView->error() != C2_OK) {
- ALOGE("graphic view map err = %d", rView->error());
- work->result = C2_CORRUPTED;
- return;
- }
- } else {
- ALOGV("Empty input Buffer");
- uint32_t flags = 0;
- if (work->input.flags & C2FrameData::FLAG_END_OF_STREAM) {
- flags |= C2FrameData::FLAG_END_OF_STREAM;
- }
- work->worklets.front()->output.flags = (C2FrameData::flags_t)flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
- return;
- }
-
- const C2ConstGraphicBlock inBuffer =
- inputBuffer->data().graphicBlocks().front();
- if (inBuffer.width() != mSize->width ||
- inBuffer.height() != mSize->height) {
- ALOGE("unexpected Input buffer attributes %d(%d) x %d(%d)",
- inBuffer.width(), mSize->width, inBuffer.height(),
- mSize->height);
- mSignalledError = true;
- work->result = C2_BAD_VALUE;
- return;
- }
- bool eos = ((work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0);
- vpx_image_t raw_frame;
- const C2PlanarLayout &layout = rView->layout();
- uint32_t width = rView->width();
- uint32_t height = rView->height();
- if (width > 0x8000 || height > 0x8000) {
- ALOGE("Image too big: %u x %u", width, height);
- work->result = C2_BAD_VALUE;
- return;
- }
- uint32_t stride = (width + mStrideAlign - 1) & ~(mStrideAlign - 1);
- uint32_t vstride = (height + mStrideAlign - 1) & ~(mStrideAlign - 1);
- switch (layout.type) {
- case C2PlanarLayout::TYPE_RGB:
- case C2PlanarLayout::TYPE_RGBA: {
- ConvertRGBToPlanarYUV(mConversionBuffer.data(), stride, vstride,
- mConversionBuffer.size(), *rView.get());
- vpx_img_wrap(&raw_frame, VPX_IMG_FMT_I420, width, height,
- mStrideAlign, mConversionBuffer.data());
- break;
- }
- case C2PlanarLayout::TYPE_YUV: {
- if (!IsYUV420(*rView)) {
- ALOGE("input is not YUV420");
- work->result = C2_BAD_VALUE;
- return;
- }
-
- if (layout.planes[layout.PLANE_Y].colInc == 1
- && layout.planes[layout.PLANE_U].colInc == 1
- && layout.planes[layout.PLANE_V].colInc == 1) {
- // I420 compatible - though with custom offset and stride
- vpx_img_wrap(&raw_frame, VPX_IMG_FMT_I420, width, height,
- mStrideAlign, (uint8_t*)rView->data()[0]);
- raw_frame.planes[1] = (uint8_t*)rView->data()[1];
- raw_frame.planes[2] = (uint8_t*)rView->data()[2];
- raw_frame.stride[0] = layout.planes[layout.PLANE_Y].rowInc;
- raw_frame.stride[1] = layout.planes[layout.PLANE_U].rowInc;
- raw_frame.stride[2] = layout.planes[layout.PLANE_V].rowInc;
- } else {
- // copy to I420
- MediaImage2 img = CreateYUV420PlanarMediaImage2(width, height, stride, vstride);
- if (mConversionBuffer.size() >= stride * vstride * 3 / 2) {
- status_t err = ImageCopy(mConversionBuffer.data(), &img, *rView);
- if (err != OK) {
- ALOGE("Buffer conversion failed: %d", err);
- work->result = C2_BAD_VALUE;
- return;
- }
- vpx_img_wrap(&raw_frame, VPX_IMG_FMT_I420, stride, vstride,
- mStrideAlign, (uint8_t*)rView->data()[0]);
- vpx_img_set_rect(&raw_frame, 0, 0, width, height);
- } else {
- ALOGE("Conversion buffer is too small: %u x %u for %zu",
- stride, vstride, mConversionBuffer.size());
- work->result = C2_BAD_VALUE;
- return;
- }
- }
- break;
- }
- default:
- ALOGE("Unrecognized plane type: %d", layout.type);
- work->result = C2_BAD_VALUE;
- return;
- }
-
- vpx_enc_frame_flags_t flags = getEncodeFlags();
- // handle dynamic config parameters
- {
- IntfImpl::Lock lock = mIntf->lock();
- std::shared_ptr<C2StreamIntraRefreshTuning::output> intraRefresh = mIntf->getIntraRefresh_l();
- std::shared_ptr<C2StreamBitrateInfo::output> bitrate = mIntf->getBitrate_l();
- std::shared_ptr<C2StreamRequestSyncFrameTuning::output> requestSync = mIntf->getRequestSync_l();
- lock.unlock();
-
- if (intraRefresh != mIntraRefresh) {
- mIntraRefresh = intraRefresh;
- ALOGV("Got mIntraRefresh request");
- }
-
- if (requestSync != mRequestSync) {
- // we can handle IDR immediately
- if (requestSync->value) {
- // unset request
- C2StreamRequestSyncFrameTuning::output clearSync(0u, C2_FALSE);
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- mIntf->config({ &clearSync }, C2_MAY_BLOCK, &failures);
- ALOGV("Got sync request");
- flags |= VPX_EFLAG_FORCE_KF;
- }
- mRequestSync = requestSync;
- }
-
- if (bitrate != mBitrate) {
- mBitrate = bitrate;
- mCodecConfiguration->rc_target_bitrate =
- (mBitrate->value + 500) / 1000;
- vpx_codec_err_t res = vpx_codec_enc_config_set(mCodecContext,
- mCodecConfiguration);
- if (res != VPX_CODEC_OK) {
- ALOGE("vpx encoder failed to update bitrate: %s",
- vpx_codec_err_to_string(res));
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- }
- }
-
- uint64_t inputTimeStamp = work->input.ordinal.timestamp.peekull();
- uint32_t frameDuration;
- if (inputTimeStamp > mLastTimestamp) {
- frameDuration = (uint32_t)(inputTimeStamp - mLastTimestamp);
- } else {
- // Use default of 30 fps in case of 0 frame rate.
- float frameRate = mFrameRate->value;
- if (frameRate < 0.001) {
- frameRate = 30;
- }
- frameDuration = (uint32_t)(1000000 / frameRate + 0.5);
- }
- mLastTimestamp = inputTimeStamp;
-
- vpx_codec_err_t codec_return = vpx_codec_encode(mCodecContext, &raw_frame,
- inputTimeStamp,
- frameDuration, flags,
- VPX_DL_REALTIME);
- if (codec_return != VPX_CODEC_OK) {
- ALOGE("vpx encoder failed to encode frame");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
-
- bool populated = false;
- vpx_codec_iter_t encoded_packet_iterator = nullptr;
- const vpx_codec_cx_pkt_t* encoded_packet;
- while ((encoded_packet = vpx_codec_get_cx_data(
- mCodecContext, &encoded_packet_iterator))) {
- if (encoded_packet->kind == VPX_CODEC_CX_FRAME_PKT) {
- std::shared_ptr<C2LinearBlock> block;
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- c2_status_t err = pool->fetchLinearBlock(encoded_packet->data.frame.sz, usage, &block);
- if (err != C2_OK) {
- ALOGE("fetchLinearBlock for Output failed with status %d", err);
- work->result = C2_NO_MEMORY;
- return;
- }
- C2WriteView wView = block->map().get();
- if (wView.error()) {
- ALOGE("write view map failed %d", wView.error());
- work->result = C2_CORRUPTED;
- return;
- }
-
- memcpy(wView.data(), encoded_packet->data.frame.buf, encoded_packet->data.frame.sz);
- ++mNumInputFrames;
-
- ALOGD("bytes generated %zu", encoded_packet->data.frame.sz);
- uint32_t flags = 0;
- if (eos) {
- flags |= C2FrameData::FLAG_END_OF_STREAM;
- }
- work->worklets.front()->output.flags = (C2FrameData::flags_t)flags;
- work->worklets.front()->output.buffers.clear();
- std::shared_ptr<C2Buffer> buffer = createLinearBuffer(block);
- if (encoded_packet->data.frame.flags & VPX_FRAME_IS_KEY) {
- buffer->setInfo(std::make_shared<C2StreamPictureTypeMaskInfo::output>(
- 0u /* stream id */, C2PictureTypeKeyFrame));
- }
- work->worklets.front()->output.buffers.push_back(buffer);
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->worklets.front()->output.ordinal.timestamp = encoded_packet->data.frame.pts;
- work->workletsProcessed = 1u;
- populated = true;
- if (eos) {
- mSignalledOutputEos = true;
- ALOGV("signalled EOS");
- }
- }
- }
- if (!populated) {
- work->workletsProcessed = 0u;
- }
-}
-
-c2_status_t C2SoftVpxEnc::drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) {
- (void)pool;
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
-
- return C2_OK;
-}
-
-} // namespace android
diff --git a/media/codecs/vpx/C2SoftVpxEnc.h b/media/codecs/vpx/C2SoftVpxEnc.h
deleted file mode 100644
index 87ed1a9..0000000
--- a/media/codecs/vpx/C2SoftVpxEnc.h
+++ /dev/null
@@ -1,437 +0,0 @@
-/*
- * Copyright 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_VPX_ENC_H__
-#define ANDROID_C2_SOFT_VPX_ENC_H__
-
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <C2PlatformSupport.h>
-#include <Codec2BufferUtils.h>
-#include <SimpleC2Component.h>
-#include <SimpleC2Interface.h>
-#include <util/C2InterfaceHelper.h>
-
-#include "vpx/vpx_encoder.h"
-#include "vpx/vpx_codec.h"
-#include "vpx/vpx_image.h"
-#include "vpx/vp8cx.h"
-
-namespace android {
-
-// TODO: These defs taken from deprecated OMX_VideoExt.h. Move these definitions
-// to a new header file and include it.
-
-/** Maximum number of temporal layers */
-#define MAXTEMPORALLAYERS 3
-
-/** temporal layer patterns */
-typedef enum TemporalPatternType {
- VPXTemporalLayerPatternNone = 0,
- VPXTemporalLayerPatternWebRTC = 1,
- VPXTemporalLayerPatternMax = 0x7FFFFFFF
-} TemporalPatternType;
-
-// Base class for a VPX Encoder Component
-//
-// Only following encoder settings are available (codec specific settings might
-// be available in the sub-classes):
-// - video resolution
-// - target bitrate
-// - rate control (constant / variable)
-// - frame rate
-// - error resilience
-// - reconstruction & loop filters (g_profile)
-//
-// Only following color formats are recognized
-// - C2PlanarLayout::TYPE_RGB
-// - C2PlanarLayout::TYPE_RGBA
-//
-// Following settings are not configurable by the client
-// - encoding deadline is realtime
-// - multithreaded encoding utilizes a number of threads equal
-// to online cpu's available
-// - the algorithm interface for encoder is decided by the sub-class in use
-// - fractional bits of frame rate is discarded
-// - timestamps are in microseconds, therefore encoder timebase is fixed
-// to 1/1000000
-
-struct C2SoftVpxEnc : public SimpleC2Component {
- class IntfImpl;
-
- C2SoftVpxEnc(const char* name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl);
-
- // From SimpleC2Component
- c2_status_t onInit() override final;
- c2_status_t onStop() override final;
- void onReset() override final;
- void onRelease() override final;
- c2_status_t onFlush_sm() override final;
-
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override final;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override final;
-
- protected:
- std::shared_ptr<IntfImpl> mIntf;
- virtual ~C2SoftVpxEnc();
-
- // Initializes vpx encoder with available settings.
- status_t initEncoder();
-
- // Populates mCodecInterface with codec specific settings.
- virtual void setCodecSpecificInterface() = 0;
-
- // Sets codec specific configuration.
- virtual void setCodecSpecificConfiguration() = 0;
-
- // Sets codec specific encoder controls.
- virtual vpx_codec_err_t setCodecSpecificControls() = 0;
-
- // Get current encode flags.
- virtual vpx_enc_frame_flags_t getEncodeFlags();
-
- enum TemporalReferences {
- // For 1 layer case: reference all (last, golden, and alt ref), but only
- // update last.
- kTemporalUpdateLastRefAll = 12,
- // First base layer frame for 3 temporal layers, which updates last and
- // golden with alt ref dependency.
- kTemporalUpdateLastAndGoldenRefAltRef = 11,
- // First enhancement layer with alt ref dependency.
- kTemporalUpdateGoldenRefAltRef = 10,
- // First enhancement layer with alt ref dependency.
- kTemporalUpdateGoldenWithoutDependencyRefAltRef = 9,
- // Base layer with alt ref dependency.
- kTemporalUpdateLastRefAltRef = 8,
- // Highest enhacement layer without dependency on golden with alt ref
- // dependency.
- kTemporalUpdateNoneNoRefGoldenRefAltRef = 7,
- // Second layer and last frame in cycle, for 2 layers.
- kTemporalUpdateNoneNoRefAltref = 6,
- // Highest enhancement layer.
- kTemporalUpdateNone = 5,
- // Second enhancement layer.
- kTemporalUpdateAltref = 4,
- // Second enhancement layer without dependency on previous frames in
- // the second enhancement layer.
- kTemporalUpdateAltrefWithoutDependency = 3,
- // First enhancement layer.
- kTemporalUpdateGolden = 2,
- // First enhancement layer without dependency on previous frames in
- // the first enhancement layer.
- kTemporalUpdateGoldenWithoutDependency = 1,
- // Base layer.
- kTemporalUpdateLast = 0,
- };
- enum {
- kMaxTemporalPattern = 8
- };
-
- // vpx specific opaque data structure that
- // stores encoder state
- vpx_codec_ctx_t* mCodecContext;
-
- // vpx specific data structure that
- // stores encoder configuration
- vpx_codec_enc_cfg_t* mCodecConfiguration;
-
- // vpx specific read-only data structure
- // that specifies algorithm interface (e.g. vp8)
- vpx_codec_iface_t* mCodecInterface;
-
- // align stride to the power of 2
- int32_t mStrideAlign;
-
- // Color format for the input port
- vpx_img_fmt_t mColorFormat;
-
- // Bitrate control mode, either constant or variable
- vpx_rc_mode mBitrateControlMode;
-
- // Parameter that denotes whether error resilience
- // is enabled in encoder
- bool mErrorResilience;
-
- // Minimum (best quality) quantizer
- uint32_t mMinQuantizer;
-
- // Maximum (worst quality) quantizer
- uint32_t mMaxQuantizer;
-
- // Number of coding temporal layers to be used.
- size_t mTemporalLayers;
-
- // Temporal layer bitrare ratio in percentage
- uint32_t mTemporalLayerBitrateRatio[MAXTEMPORALLAYERS];
-
- // Temporal pattern type
- TemporalPatternType mTemporalPatternType;
-
- // Temporal pattern length
- size_t mTemporalPatternLength;
-
- // Temporal pattern current index
- size_t mTemporalPatternIdx;
-
- // Frame type temporal pattern
- TemporalReferences mTemporalPattern[kMaxTemporalPattern];
-
- // Last input buffer timestamp
- uint64_t mLastTimestamp;
-
- // Number of input frames
- int64_t mNumInputFrames;
-
- // Conversion buffer is needed to input to
- // yuv420 planar format.
- MemoryBlock mConversionBuffer;
-
- // Signalled EOS
- bool mSignalledOutputEos;
-
- // Signalled Error
- bool mSignalledError;
-
- // configurations used by component in process
- // (TODO: keep this in intf but make them internal only)
- std::shared_ptr<C2StreamPictureSizeInfo::input> mSize;
- std::shared_ptr<C2StreamIntraRefreshTuning::output> mIntraRefresh;
- std::shared_ptr<C2StreamFrameRateInfo::output> mFrameRate;
- std::shared_ptr<C2StreamBitrateInfo::output> mBitrate;
- std::shared_ptr<C2StreamBitrateModeTuning::output> mBitrateMode;
- std::shared_ptr<C2StreamRequestSyncFrameTuning::output> mRequestSync;
-
- C2_DO_NOT_COPY(C2SoftVpxEnc);
-};
-
-class C2SoftVpxEnc::IntfImpl : public C2InterfaceHelper {
- public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper>& helper)
- : C2InterfaceHelper(helper) {
- setDerivedInstance(this);
-
- addParameter(
- DefineParam(mInputFormat, C2_NAME_INPUT_STREAM_FORMAT_SETTING)
- .withConstValue(
- new C2StreamFormatConfig::input(0u, C2FormatVideo))
- .build());
-
- addParameter(
- DefineParam(mOutputFormat, C2_NAME_OUTPUT_STREAM_FORMAT_SETTING)
- .withConstValue(
- new C2StreamFormatConfig::output(0u, C2FormatCompressed))
- .build());
-
- addParameter(
- DefineParam(mInputMediaType, C2_NAME_INPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::input>(
- MEDIA_MIMETYPE_VIDEO_RAW))
- .build());
-
- addParameter(
- DefineParam(mOutputMediaType, C2_NAME_OUTPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::output>(
-#ifdef VP9
- MEDIA_MIMETYPE_VIDEO_VP9
-#else
- MEDIA_MIMETYPE_VIDEO_VP8
-#endif
- ))
- .build());
-
- addParameter(DefineParam(mUsage, C2_NAME_INPUT_STREAM_USAGE_SETTING)
- .withConstValue(new C2StreamUsageTuning::input(
- 0u, (uint64_t)C2MemoryUsage::CPU_READ))
- .build());
-
- addParameter(
- DefineParam(mSize, C2_NAME_STREAM_VIDEO_SIZE_SETTING)
- .withDefault(new C2VideoSizeStreamTuning::input(0u, 320, 240))
- .withFields({
- C2F(mSize, width).inRange(2, 2048, 2),
- C2F(mSize, height).inRange(2, 2048, 2),
- })
- .withSetter(SizeSetter)
- .build());
-
- addParameter(
- DefineParam(mBitrateMode, C2_PARAMKEY_BITRATE_MODE)
- .withDefault(new C2StreamBitrateModeTuning::output(
- 0u, C2Config::BITRATE_CONST))
- .withFields({
- C2F(mBitrateMode, value).oneOf({
- C2Config::BITRATE_CONST, C2Config::BITRATE_VARIABLE })
- })
- .withSetter(
- Setter<decltype(*mBitrateMode)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mFrameRate, C2_NAME_STREAM_FRAME_RATE_SETTING)
- .withDefault(new C2StreamFrameRateInfo::output(0u, 30.))
- // TODO: More restriction?
- .withFields({C2F(mFrameRate, value).greaterThan(0.)})
- .withSetter(
- Setter<decltype(*mFrameRate)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mLayering, C2_PARAMKEY_TEMPORAL_LAYERING)
- .withDefault(C2StreamTemporalLayeringTuning::output::AllocShared(0u, 0, 0, 0))
- .withFields({
- C2F(mLayering, m.layerCount).inRange(0, 4),
- C2F(mLayering, m.bLayerCount).inRange(0, 0),
- C2F(mLayering, m.bitrateRatios).inRange(0., 1.)
- })
- .withSetter(LayeringSetter)
- .build());
-
- addParameter(
- DefineParam(mSyncFramePeriod, C2_PARAMKEY_SYNC_FRAME_INTERVAL)
- .withDefault(new C2StreamSyncFrameIntervalTuning::output(0u, 1000000))
- .withFields({C2F(mSyncFramePeriod, value).any()})
- .withSetter(Setter<decltype(*mSyncFramePeriod)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mBitrate, C2_NAME_STREAM_BITRATE_SETTING)
- .withDefault(new C2BitrateTuning::output(0u, 64000))
- .withFields({C2F(mBitrate, value).inRange(4096, 40000000)})
- .withSetter(BitrateSetter)
- .build());
-
- addParameter(
- DefineParam(mIntraRefresh, C2_PARAMKEY_INTRA_REFRESH)
- .withConstValue(new C2StreamIntraRefreshTuning::output(
- 0u, C2Config::INTRA_REFRESH_DISABLED, 0.))
- .build());
-
- addParameter(
- DefineParam(mProfileLevel, C2_PARAMKEY_PROFILE_LEVEL)
- .withDefault(new C2StreamProfileLevelInfo::output(
- 0u, PROFILE_VP9_0, LEVEL_VP9_4_1))
- .withFields({
- C2F(mProfileLevel, profile).equalTo(
- PROFILE_VP9_0
- ),
- C2F(mProfileLevel, level).equalTo(
- LEVEL_VP9_4_1),
- })
- .withSetter(ProfileLevelSetter)
- .build());
-
- addParameter(
- DefineParam(mRequestSync, C2_PARAMKEY_REQUEST_SYNC_FRAME)
- .withDefault(new C2StreamRequestSyncFrameTuning::output(0u, C2_FALSE))
- .withFields({C2F(mRequestSync, value).oneOf({ C2_FALSE, C2_TRUE }) })
- .withSetter(Setter<decltype(*mRequestSync)>::NonStrictValueWithNoDeps)
- .build());
- }
-
- static C2R BitrateSetter(bool mayBlock, C2P<C2StreamBitrateInfo::output> &me) {
- (void)mayBlock;
- C2R res = C2R::Ok();
- if (me.v.value <= 4096) {
- me.set().value = 4096;
- }
- return res;
- }
-
- static C2R SizeSetter(bool mayBlock, const C2P<C2StreamPictureSizeInfo::input> &oldMe,
- C2P<C2StreamPictureSizeInfo::input> &me) {
- (void)mayBlock;
- C2R res = C2R::Ok();
- if (!me.F(me.v.width).supportsAtAll(me.v.width)) {
- res = res.plus(C2SettingResultBuilder::BadValue(me.F(me.v.width)));
- me.set().width = oldMe.v.width;
- }
- if (!me.F(me.v.height).supportsAtAll(me.v.height)) {
- res = res.plus(C2SettingResultBuilder::BadValue(me.F(me.v.height)));
- me.set().height = oldMe.v.height;
- }
- return res;
- }
-
- static C2R ProfileLevelSetter(
- bool mayBlock,
- C2P<C2StreamProfileLevelInfo::output> &me) {
- (void)mayBlock;
- if (!me.F(me.v.profile).supportsAtAll(me.v.profile)) {
- me.set().profile = PROFILE_VP9_0;
- }
- if (!me.F(me.v.level).supportsAtAll(me.v.level)) {
- me.set().level = LEVEL_VP9_4_1;
- }
- return C2R::Ok();
- }
-
- static C2R LayeringSetter(bool mayBlock, C2P<C2StreamTemporalLayeringTuning::output>& me) {
- (void)mayBlock;
- C2R res = C2R::Ok();
- if (me.v.m.layerCount > 4) {
- me.set().m.layerCount = 4;
- }
- me.set().m.bLayerCount = 0;
- // ensure ratios are monotonic and clamped between 0 and 1
- for (size_t ix = 0; ix < me.v.flexCount(); ++ix) {
- me.set().m.bitrateRatios[ix] = c2_clamp(
- ix > 0 ? me.v.m.bitrateRatios[ix - 1] : 0, me.v.m.bitrateRatios[ix], 1.);
- }
- ALOGI("setting temporal layering %u + %u", me.v.m.layerCount, me.v.m.bLayerCount);
- return res;
- }
-
- // unsafe getters
- std::shared_ptr<C2StreamPictureSizeInfo::input> getSize_l() const { return mSize; }
- std::shared_ptr<C2StreamIntraRefreshTuning::output> getIntraRefresh_l() const { return mIntraRefresh; }
- std::shared_ptr<C2StreamFrameRateInfo::output> getFrameRate_l() const { return mFrameRate; }
- std::shared_ptr<C2StreamBitrateInfo::output> getBitrate_l() const { return mBitrate; }
- std::shared_ptr<C2StreamBitrateModeTuning::output> getBitrateMode_l() const { return mBitrateMode; }
- std::shared_ptr<C2StreamRequestSyncFrameTuning::output> getRequestSync_l() const { return mRequestSync; }
- std::shared_ptr<C2StreamTemporalLayeringTuning::output> getTemporalLayers_l() const { return mLayering; }
- uint32_t getSyncFramePeriod() const {
- if (mSyncFramePeriod->value < 0 || mSyncFramePeriod->value == INT64_MAX) {
- return 0;
- }
- double period = mSyncFramePeriod->value / 1e6 * mFrameRate->value;
- return (uint32_t)c2_max(c2_min(period + 0.5, double(UINT32_MAX)), 1.);
- }
-
- private:
- std::shared_ptr<C2StreamFormatConfig::input> mInputFormat;
- std::shared_ptr<C2StreamFormatConfig::output> mOutputFormat;
- std::shared_ptr<C2PortMimeConfig::input> mInputMediaType;
- std::shared_ptr<C2PortMimeConfig::output> mOutputMediaType;
- std::shared_ptr<C2StreamUsageTuning::input> mUsage;
- std::shared_ptr<C2VideoSizeStreamTuning::input> mSize;
- std::shared_ptr<C2StreamFrameRateInfo::output> mFrameRate;
- std::shared_ptr<C2StreamTemporalLayeringTuning::output> mLayering;
- std::shared_ptr<C2StreamIntraRefreshTuning::output> mIntraRefresh;
- std::shared_ptr<C2StreamRequestSyncFrameTuning::output> mRequestSync;
- std::shared_ptr<C2StreamSyncFrameIntervalTuning::output> mSyncFramePeriod;
- std::shared_ptr<C2BitrateTuning::output> mBitrate;
- std::shared_ptr<C2StreamBitrateModeTuning::output> mBitrateMode;
- std::shared_ptr<C2StreamProfileLevelInfo::output> mProfileLevel;
-};
-
-} // namespace android
-
-#endif // ANDROID_C2_SOFT_VPX_ENC_H__
diff --git a/media/codecs/vpx/MODULE_LICENSE_APACHE2 b/media/codecs/vpx/MODULE_LICENSE_APACHE2
deleted file mode 100644
index e69de29..0000000
--- a/media/codecs/vpx/MODULE_LICENSE_APACHE2
+++ /dev/null
diff --git a/media/codecs/vpx/NOTICE b/media/codecs/vpx/NOTICE
deleted file mode 100644
index faed58a..0000000
--- a/media/codecs/vpx/NOTICE
+++ /dev/null
@@ -1,190 +0,0 @@
-
- Copyright (c) 2005-2013, The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
diff --git a/media/codecs/xaac/Android.bp b/media/codecs/xaac/Android.bp
deleted file mode 100644
index 19c12cf..0000000
--- a/media/codecs/xaac/Android.bp
+++ /dev/null
@@ -1,11 +0,0 @@
-cc_library_shared {
- name: "libstagefright_soft_c2xaacdec",
- defaults: [
- "libstagefright_soft_c2-defaults",
- "libstagefright_soft_c2_sanitize_all-defaults",
- ],
-
- srcs: ["C2SoftXaacDec.cpp"],
-
- static_libs: ["libxaacdec"],
-}
diff --git a/media/codecs/xaac/C2SoftXaacDec.cpp b/media/codecs/xaac/C2SoftXaacDec.cpp
deleted file mode 100644
index 1c0e70b..0000000
--- a/media/codecs/xaac/C2SoftXaacDec.cpp
+++ /dev/null
@@ -1,1583 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2SoftXaacDec"
-#include <log/log.h>
-
-#include <inttypes.h>
-
-#include <cutils/properties.h>
-#include <media/stagefright/foundation/ADebug.h>
-#include <media/stagefright/foundation/MediaDefs.h>
-#include <media/stagefright/foundation/hexdump.h>
-
-#include <C2PlatformSupport.h>
-#include <SimpleC2Interface.h>
-
-#include "C2SoftXaacDec.h"
-
-#define DRC_DEFAULT_MOBILE_REF_LEVEL -16.0 /* 64*-0.25dB = -16 dB below full scale for mobile conf */
-#define DRC_DEFAULT_MOBILE_DRC_CUT 1.0 /* maximum compression of dynamic range for mobile conf */
-#define DRC_DEFAULT_MOBILE_DRC_BOOST 1.0 /* maximum compression of dynamic range for mobile conf */
-#define DRC_DEFAULT_MOBILE_DRC_HEAVY C2Config::DRC_COMPRESSION_HEAVY /* switch for heavy compression for mobile conf */
-#define DRC_DEFAULT_MOBILE_DRC_EFFECT 3 /* MPEG-D DRC effect type; 3 => Limited playback range */
-#define DRC_DEFAULT_MOBILE_ENC_LEVEL (0.25) /* encoder target level; -1 => the value is unknown, otherwise dB step value (e.g. 64 for -16 dB) */
-#define MAX_CHANNEL_COUNT 8 /* maximum number of audio channels that can be decoded */
-// names of properties that can be used to override the default DRC settings
-#define PROP_DRC_OVERRIDE_REF_LEVEL "aac_drc_reference_level"
-#define PROP_DRC_OVERRIDE_CUT "aac_drc_cut"
-#define PROP_DRC_OVERRIDE_BOOST "aac_drc_boost"
-#define PROP_DRC_OVERRIDE_HEAVY "aac_drc_heavy"
-#define PROP_DRC_OVERRIDE_ENC_LEVEL "aac_drc_enc_target_level"
-#define PROP_DRC_OVERRIDE_EFFECT_TYPE "ro.aac_drc_effect_type"
-
-#define RETURN_IF_FATAL(retval, str) \
- if (retval & IA_FATAL_ERROR) { \
- ALOGE("Error in %s: Returned: %d", str, retval); \
- return retval; \
- } else if (retval != IA_NO_ERROR) { \
- ALOGW("Warning in %s: Returned: %d", str, retval); \
- }
-
-
-namespace android {
-
-constexpr char COMPONENT_NAME[] = "c2.android.xaac.decoder";
-
-class C2SoftXaacDec::IntfImpl : public C2InterfaceHelper {
-public:
- explicit IntfImpl(const std::shared_ptr<C2ReflectorHelper> &helper)
- : C2InterfaceHelper(helper) {
-
- setDerivedInstance(this);
-
- addParameter(
- DefineParam(mInputFormat, C2_NAME_INPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::input(0u, C2FormatCompressed))
- .build());
-
- addParameter(
- DefineParam(mOutputFormat, C2_NAME_OUTPUT_STREAM_FORMAT_SETTING)
- .withConstValue(new C2StreamFormatConfig::output(0u, C2FormatAudio))
- .build());
-
- addParameter(
- DefineParam(mInputMediaType, C2_NAME_INPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::input>(
- MEDIA_MIMETYPE_AUDIO_AAC))
- .build());
-
- addParameter(
- DefineParam(mOutputMediaType, C2_NAME_OUTPUT_PORT_MIME_SETTING)
- .withConstValue(AllocSharedString<C2PortMimeConfig::output>(
- MEDIA_MIMETYPE_AUDIO_RAW))
- .build());
-
- addParameter(
- DefineParam(mSampleRate, C2_NAME_STREAM_SAMPLE_RATE_SETTING)
- .withDefault(new C2StreamSampleRateInfo::output(0u, 44100))
- .withFields({C2F(mSampleRate, value).oneOf({
- 7350, 8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000
- })})
- .withSetter((Setter<decltype(*mSampleRate)>::StrictValueWithNoDeps))
- .build());
-
- addParameter(
- DefineParam(mChannelCount, C2_NAME_STREAM_CHANNEL_COUNT_SETTING)
- .withDefault(new C2StreamChannelCountInfo::output(0u, 1))
- .withFields({C2F(mChannelCount, value).inRange(1, 8)})
- .withSetter(Setter<decltype(*mChannelCount)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mBitrate, C2_NAME_STREAM_BITRATE_SETTING)
- .withDefault(new C2BitrateTuning::input(0u, 64000))
- .withFields({C2F(mBitrate, value).inRange(8000, 960000)})
- .withSetter(Setter<decltype(*mBitrate)>::NonStrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mInputMaxBufSize, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE)
- .withConstValue(new C2StreamMaxBufferSizeInfo::input(0u, 8192))
- .build());
-
- addParameter(
- DefineParam(mAacFormat, C2_NAME_STREAM_AAC_FORMAT_SETTING)
- .withDefault(new C2StreamAacFormatInfo::input(0u, C2AacStreamFormatRaw))
- .withFields({C2F(mAacFormat, value).oneOf({
- C2AacStreamFormatRaw, C2AacStreamFormatAdts
- })})
- .withSetter(Setter<decltype(*mAacFormat)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mProfileLevel, C2_PARAMKEY_PROFILE_LEVEL)
- .withDefault(new C2StreamProfileLevelInfo::input(0u,
- C2Config::PROFILE_AAC_LC, C2Config::LEVEL_UNUSED))
- .withFields({
- C2F(mProfileLevel, profile).oneOf({
- C2Config::PROFILE_AAC_LC,
- C2Config::PROFILE_AAC_HE,
- C2Config::PROFILE_AAC_HE_PS,
- C2Config::PROFILE_AAC_LD,
- C2Config::PROFILE_AAC_ELD,
- C2Config::PROFILE_AAC_XHE}),
- C2F(mProfileLevel, level).oneOf({
- C2Config::LEVEL_UNUSED
- })
- })
- .withSetter(ProfileLevelSetter)
- .build());
-
- addParameter(
- DefineParam(mDrcCompressMode, C2_PARAMKEY_DRC_COMPRESSION_MODE)
- .withDefault(new C2StreamDrcCompressionModeTuning::input(0u, C2Config::DRC_COMPRESSION_HEAVY))
- .withFields({
- C2F(mDrcCompressMode, value).oneOf({
- C2Config::DRC_COMPRESSION_ODM_DEFAULT,
- C2Config::DRC_COMPRESSION_NONE,
- C2Config::DRC_COMPRESSION_LIGHT,
- C2Config::DRC_COMPRESSION_HEAVY})
- })
- .withSetter(Setter<decltype(*mDrcCompressMode)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mDrcTargetRefLevel, C2_PARAMKEY_DRC_TARGET_REFERENCE_LEVEL)
- .withDefault(new C2StreamDrcTargetReferenceLevelTuning::input(0u, DRC_DEFAULT_MOBILE_REF_LEVEL))
- .withFields({C2F(mDrcTargetRefLevel, value).inRange(-31.75, 0.25)})
- .withSetter(Setter<decltype(*mDrcTargetRefLevel)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mDrcEncTargetLevel, C2_PARAMKEY_DRC_ENCODED_TARGET_LEVEL)
- .withDefault(new C2StreamDrcEncodedTargetLevelTuning::input(0u, DRC_DEFAULT_MOBILE_ENC_LEVEL))
- .withFields({C2F(mDrcEncTargetLevel, value).inRange(-31.75, 0.25)})
- .withSetter(Setter<decltype(*mDrcEncTargetLevel)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mDrcBoostFactor, C2_PARAMKEY_DRC_BOOST_FACTOR)
- .withDefault(new C2StreamDrcBoostFactorTuning::input(0u, DRC_DEFAULT_MOBILE_DRC_BOOST))
- .withFields({C2F(mDrcBoostFactor, value).inRange(0, 1.)})
- .withSetter(Setter<decltype(*mDrcBoostFactor)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mDrcAttenuationFactor, C2_PARAMKEY_DRC_ATTENUATION_FACTOR)
- .withDefault(new C2StreamDrcAttenuationFactorTuning::input(0u, DRC_DEFAULT_MOBILE_DRC_CUT))
- .withFields({C2F(mDrcAttenuationFactor, value).inRange(0, 1.)})
- .withSetter(Setter<decltype(*mDrcAttenuationFactor)>::StrictValueWithNoDeps)
- .build());
-
- addParameter(
- DefineParam(mDrcEffectType, C2_PARAMKEY_DRC_EFFECT_TYPE)
- .withDefault(new C2StreamDrcEffectTypeTuning::input(0u, C2Config::DRC_EFFECT_LIMITED_PLAYBACK_RANGE))
- .withFields({
- C2F(mDrcEffectType, value).oneOf({
- C2Config::DRC_EFFECT_ODM_DEFAULT,
- C2Config::DRC_EFFECT_OFF,
- C2Config::DRC_EFFECT_NONE,
- C2Config::DRC_EFFECT_LATE_NIGHT,
- C2Config::DRC_EFFECT_NOISY_ENVIRONMENT,
- C2Config::DRC_EFFECT_LIMITED_PLAYBACK_RANGE,
- C2Config::DRC_EFFECT_LOW_PLAYBACK_LEVEL,
- C2Config::DRC_EFFECT_DIALOG_ENHANCEMENT,
- C2Config::DRC_EFFECT_GENERAL_COMPRESSION})
- })
- .withSetter(Setter<decltype(*mDrcEffectType)>::StrictValueWithNoDeps)
- .build());
- }
-
- bool isAdts() const { return mAacFormat->value == C2AacStreamFormatAdts; }
- uint32_t getBitrate() const { return mBitrate->value; }
- static C2R ProfileLevelSetter(bool mayBlock, C2P<C2StreamProfileLevelInfo::input> &me) {
- (void)mayBlock;
- (void)me; // TODO: validate
- return C2R::Ok();
- }
- int32_t getDrcCompressMode() const { return mDrcCompressMode->value == C2Config::DRC_COMPRESSION_HEAVY ? 1 : 0; }
- int32_t getDrcTargetRefLevel() const { return (mDrcTargetRefLevel->value <= 0 ? -mDrcTargetRefLevel->value * 4. + 0.5 : -1); }
- int32_t getDrcEncTargetLevel() const { return (mDrcEncTargetLevel->value <= 0 ? -mDrcEncTargetLevel->value * 4. + 0.5 : -1); }
- int32_t getDrcBoostFactor() const { return mDrcBoostFactor->value * 127. + 0.5; }
- int32_t getDrcAttenuationFactor() const { return mDrcAttenuationFactor->value * 127. + 0.5; }
- int32_t getDrcEffectType() const { return mDrcEffectType->value; }
-
-private:
- std::shared_ptr<C2StreamFormatConfig::input> mInputFormat;
- std::shared_ptr<C2StreamFormatConfig::output> mOutputFormat;
- std::shared_ptr<C2PortMimeConfig::input> mInputMediaType;
- std::shared_ptr<C2PortMimeConfig::output> mOutputMediaType;
- std::shared_ptr<C2StreamSampleRateInfo::output> mSampleRate;
- std::shared_ptr<C2StreamChannelCountInfo::output> mChannelCount;
- std::shared_ptr<C2BitrateTuning::input> mBitrate;
- std::shared_ptr<C2StreamMaxBufferSizeInfo::input> mInputMaxBufSize;
- std::shared_ptr<C2StreamAacFormatInfo::input> mAacFormat;
- std::shared_ptr<C2StreamProfileLevelInfo::input> mProfileLevel;
- std::shared_ptr<C2StreamDrcCompressionModeTuning::input> mDrcCompressMode;
- std::shared_ptr<C2StreamDrcTargetReferenceLevelTuning::input> mDrcTargetRefLevel;
- std::shared_ptr<C2StreamDrcEncodedTargetLevelTuning::input> mDrcEncTargetLevel;
- std::shared_ptr<C2StreamDrcBoostFactorTuning::input> mDrcBoostFactor;
- std::shared_ptr<C2StreamDrcAttenuationFactorTuning::input> mDrcAttenuationFactor;
- std::shared_ptr<C2StreamDrcEffectTypeTuning::input> mDrcEffectType;
- // TODO Add : C2StreamAacSbrModeTuning
-};
-
-C2SoftXaacDec::C2SoftXaacDec(
- const char* name,
- c2_node_id_t id,
- const std::shared_ptr<IntfImpl> &intfImpl)
- : SimpleC2Component(std::make_shared<SimpleInterface<IntfImpl>>(name, id, intfImpl)),
- mIntf(intfImpl),
- mXheaacCodecHandle(nullptr),
- mMpegDDrcHandle(nullptr),
- mOutputDrainBuffer(nullptr) {
-}
-
-C2SoftXaacDec::~C2SoftXaacDec() {
- onRelease();
-}
-
-c2_status_t C2SoftXaacDec::onInit() {
- mOutputFrameLength = 1024;
- mInputBuffer = nullptr;
- mOutputBuffer = nullptr;
- mSampFreq = 0;
- mNumChannels = 0;
- mPcmWdSz = 0;
- mChannelMask = 0;
- mNumOutBytes = 0;
- mCurFrameIndex = 0;
- mCurTimestamp = 0;
- mIsCodecInitialized = false;
- mIsCodecConfigFlushRequired = false;
- mSignalledOutputEos = false;
- mSignalledError = false;
- mOutputDrainBufferWritePos = 0;
- mDRCFlag = 0;
- mMpegDDRCPresent = 0;
- mMemoryVec.clear();
- mDrcMemoryVec.clear();
-
- IA_ERRORCODE err = initDecoder();
- return err == IA_NO_ERROR ? C2_OK : C2_CORRUPTED;
-
-}
-
-c2_status_t C2SoftXaacDec::onStop() {
- mOutputFrameLength = 1024;
- drainDecoder();
- // reset the "configured" state
- mSampFreq = 0;
- mNumChannels = 0;
- mPcmWdSz = 0;
- mChannelMask = 0;
- mNumOutBytes = 0;
- mCurFrameIndex = 0;
- mCurTimestamp = 0;
- mSignalledOutputEos = false;
- mSignalledError = false;
- mOutputDrainBufferWritePos = 0;
- mDRCFlag = 0;
- mMpegDDRCPresent = 0;
-
- return C2_OK;
-}
-
-void C2SoftXaacDec::onReset() {
- (void)onStop();
-}
-
-void C2SoftXaacDec::onRelease() {
- IA_ERRORCODE errCode = deInitXAACDecoder();
- if (IA_NO_ERROR != errCode) ALOGE("deInitXAACDecoder() failed %d", errCode);
-
- errCode = deInitMPEGDDDrc();
- if (IA_NO_ERROR != errCode) ALOGE("deInitMPEGDDDrc() failed %d", errCode);
-
- if (mOutputDrainBuffer) {
- delete[] mOutputDrainBuffer;
- mOutputDrainBuffer = nullptr;
- }
-}
-
-IA_ERRORCODE C2SoftXaacDec::initDecoder() {
- ALOGV("initDecoder()");
- IA_ERRORCODE err_code = IA_NO_ERROR;
-
- err_code = initXAACDecoder();
- if (err_code != IA_NO_ERROR) {
- ALOGE("initXAACDecoder Failed");
- /* Call deInit to free any allocated memory */
- deInitXAACDecoder();
- return IA_FATAL_ERROR;
- }
-
- if (!mOutputDrainBuffer) {
- mOutputDrainBuffer = new (std::nothrow) char[kOutputDrainBufferSize];
- if (!mOutputDrainBuffer) return IA_FATAL_ERROR;
- }
-
- err_code = initXAACDrc();
- RETURN_IF_FATAL(err_code, "initXAACDrc");
-
-
- return IA_NO_ERROR;
-}
-
-static void fillEmptyWork(const std::unique_ptr<C2Work>& work) {
- uint32_t flags = 0;
- if (work->input.flags & C2FrameData::FLAG_END_OF_STREAM) {
- flags |= C2FrameData::FLAG_END_OF_STREAM;
- ALOGV("signalling eos");
- }
- work->worklets.front()->output.flags = (C2FrameData::flags_t)flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
-}
-
-void C2SoftXaacDec::finishWork(const std::unique_ptr<C2Work>& work,
- const std::shared_ptr<C2BlockPool>& pool) {
- ALOGV("mCurFrameIndex = %" PRIu64, mCurFrameIndex);
-
- std::shared_ptr<C2LinearBlock> block;
- C2MemoryUsage usage = {C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE};
- // TODO: error handling, proper usage, etc.
- c2_status_t err =
- pool->fetchLinearBlock(mOutputDrainBufferWritePos, usage, &block);
- if (err != C2_OK) {
- ALOGE("fetchLinearBlock failed : err = %d", err);
- work->result = C2_NO_MEMORY;
- return;
- }
- C2WriteView wView = block->map().get();
- int16_t* outBuffer = reinterpret_cast<int16_t*>(wView.data());
- memcpy(outBuffer, mOutputDrainBuffer, mOutputDrainBufferWritePos);
- mOutputDrainBufferWritePos = 0;
-
- auto fillWork = [buffer = createLinearBuffer(block)](
- const std::unique_ptr<C2Work>& work) {
- uint32_t flags = 0;
- if (work->input.flags & C2FrameData::FLAG_END_OF_STREAM) {
- flags |= C2FrameData::FLAG_END_OF_STREAM;
- ALOGV("signalling eos");
- }
- work->worklets.front()->output.flags = (C2FrameData::flags_t)flags;
- work->worklets.front()->output.buffers.clear();
- work->worklets.front()->output.buffers.push_back(buffer);
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->workletsProcessed = 1u;
- };
- if (work && work->input.ordinal.frameIndex == c2_cntr64_t(mCurFrameIndex)) {
- fillWork(work);
- } else {
- finish(mCurFrameIndex, fillWork);
- }
-
- ALOGV("out timestamp %" PRIu64 " / %u", mCurTimestamp, block->capacity());
-}
-
-void C2SoftXaacDec::process(const std::unique_ptr<C2Work>& work,
- const std::shared_ptr<C2BlockPool>& pool) {
- // Initialize output work
- work->result = C2_OK;
- work->workletsProcessed = 1u;
- work->worklets.front()->output.configUpdate.clear();
- work->worklets.front()->output.flags = work->input.flags;
-
- if (mSignalledError || mSignalledOutputEos) {
- work->result = C2_BAD_VALUE;
- return;
- }
- uint8_t* inBuffer = nullptr;
- uint32_t inBufferLength = 0;
- C2ReadView view = mDummyReadView;
- size_t offset = 0u;
- size_t size = 0u;
- if (!work->input.buffers.empty()) {
- view = work->input.buffers[0]->data().linearBlocks().front().map().get();
- size = view.capacity();
- }
- if (size && view.error()) {
- ALOGE("read view map failed %d", view.error());
- work->result = view.error();
- return;
- }
-
- bool eos = (work->input.flags & C2FrameData::FLAG_END_OF_STREAM) != 0;
- bool codecConfig =
- (work->input.flags & C2FrameData::FLAG_CODEC_CONFIG) != 0;
- if (codecConfig) {
- if (size == 0u) {
- ALOGE("empty codec config");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- // const_cast because of libAACdec method signature.
- inBuffer = const_cast<uint8_t*>(view.data() + offset);
- inBufferLength = size;
-
- /* GA header configuration sent to Decoder! */
- IA_ERRORCODE err_code = configXAACDecoder(inBuffer, inBufferLength);
- if (IA_NO_ERROR != err_code) {
- ALOGE("configXAACDecoder err_code = %d", err_code);
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- work->worklets.front()->output.flags = work->input.flags;
- work->worklets.front()->output.ordinal = work->input.ordinal;
- work->worklets.front()->output.buffers.clear();
- return;
- }
-
- mCurFrameIndex = work->input.ordinal.frameIndex.peeku();
- mCurTimestamp = work->input.ordinal.timestamp.peeku();
- mOutputDrainBufferWritePos = 0;
- char* tempOutputDrainBuffer = mOutputDrainBuffer;
- while (size > 0u) {
- if ((kOutputDrainBufferSize * sizeof(int16_t) -
- mOutputDrainBufferWritePos) <
- (mOutputFrameLength * sizeof(int16_t) * mNumChannels)) {
- ALOGV("skipping decode: not enough space left in DrainBuffer");
- break;
- }
-
- ALOGV("inAttribute size = %zu", size);
- if (mIntf->isAdts()) {
- ALOGV("ADTS");
- size_t adtsHeaderSize = 0;
- // skip 30 bits, aac_frame_length follows.
- // ssssssss ssssiiip ppffffPc ccohCCll llllllll lll?????
-
- const uint8_t* adtsHeader = view.data() + offset;
- bool signalError = false;
- if (size < 7) {
- ALOGE("Audio data too short to contain even the ADTS header. "
- "Got %zu bytes.", size);
- hexdump(adtsHeader, size);
- signalError = true;
- } else {
- bool protectionAbsent = (adtsHeader[1] & 1);
- unsigned aac_frame_length = ((adtsHeader[3] & 3) << 11) |
- (adtsHeader[4] << 3) |
- (adtsHeader[5] >> 5);
-
- if (size < aac_frame_length) {
- ALOGE("Not enough audio data for the complete frame. "
- "Got %zu bytes, frame size according to the ADTS "
- "header is %u bytes.", size, aac_frame_length);
- hexdump(adtsHeader, size);
- signalError = true;
- } else {
- adtsHeaderSize = (protectionAbsent ? 7 : 9);
- if (aac_frame_length < adtsHeaderSize) {
- signalError = true;
- } else {
- // const_cast because of libAACdec method signature.
- inBuffer =
- const_cast<uint8_t*>(adtsHeader + adtsHeaderSize);
- inBufferLength = aac_frame_length - adtsHeaderSize;
-
- offset += adtsHeaderSize;
- size -= adtsHeaderSize;
- }
- }
- }
-
- if (signalError) {
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- } else {
- ALOGV("Non ADTS");
- // const_cast because of libAACdec method signature.
- inBuffer = const_cast<uint8_t*>(view.data() + offset);
- inBufferLength = size;
- }
-
- signed int prevSampleRate = mSampFreq;
- signed int prevNumChannels = mNumChannels;
-
- /* XAAC decoder expects first frame to be fed via configXAACDecoder API
- * which should initialize the codec. Once this state is reached, call the
- * decodeXAACStream API with same frame to decode! */
- if (!mIsCodecInitialized) {
- IA_ERRORCODE err_code = configXAACDecoder(inBuffer, inBufferLength);
- if (IA_NO_ERROR != err_code) {
- ALOGE("configXAACDecoder Failed 2 err_code = %d", err_code);
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
-
- if ((mSampFreq != prevSampleRate) ||
- (mNumChannels != prevNumChannels)) {
- ALOGI("Reconfiguring decoder: %d->%d Hz, %d->%d channels",
- prevSampleRate, mSampFreq, prevNumChannels, mNumChannels);
-
- C2StreamSampleRateInfo::output sampleRateInfo(0u, mSampFreq);
- C2StreamChannelCountInfo::output channelCountInfo(0u, mNumChannels);
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- c2_status_t err = mIntf->config(
- { &sampleRateInfo, &channelCountInfo },
- C2_MAY_BLOCK,
- &failures);
- if (err == OK) {
- work->worklets.front()->output.configUpdate.push_back(
- C2Param::Copy(sampleRateInfo));
- work->worklets.front()->output.configUpdate.push_back(
- C2Param::Copy(channelCountInfo));
- } else {
- ALOGE("Config Update failed");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- }
- }
-
- signed int bytesConsumed = 0;
- IA_ERRORCODE errorCode = IA_NO_ERROR;
- if (mIsCodecInitialized) {
- mIsCodecConfigFlushRequired = true;
- errorCode = decodeXAACStream(inBuffer, inBufferLength,
- &bytesConsumed, &mNumOutBytes);
- } else if (!mIsCodecConfigFlushRequired) {
- ALOGW("Assumption that first frame after header initializes decoder Failed!");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
- size -= bytesConsumed;
- offset += bytesConsumed;
-
- if (inBufferLength != (uint32_t)bytesConsumed)
- ALOGW("All data not consumed");
-
- /* In case of error, decoder would have given out empty buffer */
- if ((IA_NO_ERROR != errorCode) && (0 == mNumOutBytes) && mIsCodecInitialized)
- mNumOutBytes = mOutputFrameLength * (mPcmWdSz / 8) * mNumChannels;
-
- if (!bytesConsumed) {
- ALOGW("bytesConsumed = 0 should never happen");
- }
-
- if ((uint32_t)mNumOutBytes >
- mOutputFrameLength * sizeof(int16_t) * mNumChannels) {
- ALOGE("mNumOutBytes > mOutputFrameLength * sizeof(int16_t) * mNumChannels, should never happen");
- mSignalledError = true;
- work->result = C2_CORRUPTED;
- return;
- }
-
- if (IA_NO_ERROR != errorCode) {
- // TODO: check for overflow, ASAN
- memset(mOutputBuffer, 0, mNumOutBytes);
-
- // Discard input buffer.
- size = 0;
-
- // fall through
- }
- memcpy(tempOutputDrainBuffer, mOutputBuffer, mNumOutBytes);
- tempOutputDrainBuffer += mNumOutBytes;
- mOutputDrainBufferWritePos += mNumOutBytes;
- }
-
- if (mOutputDrainBufferWritePos) {
- finishWork(work, pool);
- } else {
- fillEmptyWork(work);
- }
- if (eos) mSignalledOutputEos = true;
-}
-
-c2_status_t C2SoftXaacDec::drain(uint32_t drainMode,
- const std::shared_ptr<C2BlockPool>& pool) {
- (void)pool;
- if (drainMode == NO_DRAIN) {
- ALOGW("drain with NO_DRAIN: no-op");
- return C2_OK;
- }
- if (drainMode == DRAIN_CHAIN) {
- ALOGW("DRAIN_CHAIN not supported");
- return C2_OMITTED;
- }
-
- return C2_OK;
-}
-
-IA_ERRORCODE C2SoftXaacDec::configflushDecode() {
- IA_ERRORCODE err_code;
- uint32_t ui_init_done;
- uint32_t inBufferLength = 8203;
-
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_INIT,
- IA_CMD_TYPE_FLUSH_MEM,
- nullptr);
- RETURN_IF_FATAL(err_code, "IA_CMD_TYPE_FLUSH_MEM");
-
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_SET_INPUT_BYTES,
- 0,
- &inBufferLength);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_SET_INPUT_BYTES");
-
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_INIT,
- IA_CMD_TYPE_FLUSH_MEM,
- nullptr);
- RETURN_IF_FATAL(err_code, "IA_CMD_TYPE_FLUSH_MEM");
-
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_INIT,
- IA_CMD_TYPE_INIT_DONE_QUERY,
- &ui_init_done);
- RETURN_IF_FATAL(err_code, "IA_CMD_TYPE_INIT_DONE_QUERY");
-
- if (ui_init_done) {
- err_code = getXAACStreamInfo();
- RETURN_IF_FATAL(err_code, "getXAACStreamInfo");
- ALOGV("Found Codec with below config---\nsampFreq %d\nnumChannels %d\npcmWdSz %d\nchannelMask %d\noutputFrameLength %d",
- mSampFreq, mNumChannels, mPcmWdSz, mChannelMask, mOutputFrameLength);
- mIsCodecInitialized = true;
- }
- return IA_NO_ERROR;
-}
-
-c2_status_t C2SoftXaacDec::onFlush_sm() {
- if (mIsCodecInitialized) {
- IA_ERRORCODE err_code = configflushDecode();
- if (err_code != IA_NO_ERROR) {
- ALOGE("Error in configflushDecode: Error %d", err_code);
- }
- }
- drainDecoder();
- mSignalledOutputEos = false;
- mSignalledError = false;
-
- return C2_OK;
-}
-
-IA_ERRORCODE C2SoftXaacDec::drainDecoder() {
- /* Output delay compensation logic should sit here. */
- /* Nothing to be done as XAAC decoder does not introduce output buffer delay */
-
- return 0;
-}
-
-IA_ERRORCODE C2SoftXaacDec::initXAACDecoder() {
- /* First part */
- /* Error Handler Init */
- /* Get Library Name, Library Version and API Version */
- /* Initialize API structure + Default config set */
- /* Set config params from user */
- /* Initialize memory tables */
- /* Get memory information and allocate memory */
-
- mInputBufferSize = 0;
- mInputBuffer = nullptr;
- mOutputBuffer = nullptr;
- /* Process struct initing end */
-
- /* ******************************************************************/
- /* Initialize API structure and set config params to default */
- /* ******************************************************************/
- /* API size */
- uint32_t pui_api_size;
- /* Get the API size */
- IA_ERRORCODE err_code = ixheaacd_dec_api(nullptr,
- IA_API_CMD_GET_API_SIZE,
- 0,
- &pui_api_size);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_GET_API_SIZE");
-
- /* Allocate memory for API */
- mXheaacCodecHandle = memalign(4, pui_api_size);
- if (!mXheaacCodecHandle) {
- ALOGE("malloc for pui_api_size + 4 >> %d Failed", pui_api_size + 4);
- return IA_FATAL_ERROR;
- }
- mMemoryVec.push(mXheaacCodecHandle);
-
- /* Set the config params to default values */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_INIT,
- IA_CMD_TYPE_INIT_API_PRE_CONFIG_PARAMS,
- nullptr);
- RETURN_IF_FATAL(err_code, "IA_CMD_TYPE_INIT_API_PRE_CONFIG_PARAMS");
-
- /* Get the API size */
- err_code = ia_drc_dec_api(nullptr, IA_API_CMD_GET_API_SIZE, 0, &pui_api_size);
-
- RETURN_IF_FATAL(err_code, "IA_API_CMD_GET_API_SIZE");
-
- /* Allocate memory for API */
- mMpegDDrcHandle = memalign(4, pui_api_size);
- if (!mMpegDDrcHandle) {
- ALOGE("malloc for pui_api_size + 4 >> %d Failed", pui_api_size + 4);
- return IA_FATAL_ERROR;
- }
- mMemoryVec.push(mMpegDDrcHandle);
-
- /* Set the config params to default values */
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_INIT,
- IA_CMD_TYPE_INIT_API_PRE_CONFIG_PARAMS, nullptr);
-
- RETURN_IF_FATAL(err_code, "IA_CMD_TYPE_INIT_API_PRE_CONFIG_PARAMS");
-
- /* ******************************************************************/
- /* Set config parameters */
- /* ******************************************************************/
- uint32_t ui_mp4_flag = 1;
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_SET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_ISMP4,
- &ui_mp4_flag);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_ISMP4");
-
- /* ******************************************************************/
- /* Initialize Memory info tables */
- /* ******************************************************************/
- uint32_t ui_proc_mem_tabs_size;
- pVOID pv_alloc_ptr;
- /* Get memory info tables size */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_GET_MEMTABS_SIZE,
- 0,
- &ui_proc_mem_tabs_size);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_GET_MEMTABS_SIZE");
-
- pv_alloc_ptr = memalign(4, ui_proc_mem_tabs_size);
- if (!pv_alloc_ptr) {
- ALOGE("Malloc for size (ui_proc_mem_tabs_size + 4) = %d failed!", ui_proc_mem_tabs_size + 4);
- return IA_FATAL_ERROR;
- }
- mMemoryVec.push(pv_alloc_ptr);
-
- /* Set pointer for process memory tables */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_SET_MEMTABS_PTR,
- 0,
- pv_alloc_ptr);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_SET_MEMTABS_PTR");
-
- /* initialize the API, post config, fill memory tables */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_INIT,
- IA_CMD_TYPE_INIT_API_POST_CONFIG_PARAMS,
- nullptr);
- RETURN_IF_FATAL(err_code, "IA_CMD_TYPE_INIT_API_POST_CONFIG_PARAMS");
-
- /* ******************************************************************/
- /* Allocate Memory with info from library */
- /* ******************************************************************/
- /* There are four different types of memories, that needs to be allocated */
- /* persistent,scratch,input and output */
- for (int i = 0; i < 4; i++) {
- int ui_size = 0, ui_alignment = 0, ui_type = 0;
-
- /* Get memory size */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_GET_MEM_INFO_SIZE,
- i,
- &ui_size);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_GET_MEM_INFO_SIZE");
-
- /* Get memory alignment */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_GET_MEM_INFO_ALIGNMENT,
- i,
- &ui_alignment);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_GET_MEM_INFO_ALIGNMENT");
-
- /* Get memory type */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_GET_MEM_INFO_TYPE,
- i,
- &ui_type);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_GET_MEM_INFO_TYPE");
-
- pv_alloc_ptr = memalign(ui_alignment, ui_size);
- if (!pv_alloc_ptr) {
- ALOGE("Malloc for size (ui_size + ui_alignment) = %d failed!",
- ui_size + ui_alignment);
- return IA_FATAL_ERROR;
- }
- mMemoryVec.push(pv_alloc_ptr);
-
- /* Set the buffer pointer */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_SET_MEM_PTR,
- i,
- pv_alloc_ptr);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_SET_MEM_PTR");
- if (ui_type == IA_MEMTYPE_INPUT) {
- mInputBuffer = (pWORD8)pv_alloc_ptr;
- mInputBufferSize = ui_size;
- }
- if (ui_type == IA_MEMTYPE_OUTPUT)
- mOutputBuffer = (pWORD8)pv_alloc_ptr;
- }
- /* End first part */
-
- return IA_NO_ERROR;
-}
-
-status_t C2SoftXaacDec::initXAACDrc() {
- IA_ERRORCODE err_code = IA_NO_ERROR;
- unsigned int ui_drc_val;
- // DRC_PRES_MODE_WRAP_DESIRED_TARGET
- int32_t targetRefLevel = mIntf->getDrcTargetRefLevel();
- ALOGV("AAC decoder using desired DRC target reference level of %d", targetRefLevel);
- ui_drc_val = (unsigned int)targetRefLevel;
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_SET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_TARGET_LEVEL,
- &ui_drc_val);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_TARGET_LEVEL");
-
- /* Use ui_drc_val from PROP_DRC_OVERRIDE_REF_LEVEL or DRC_DEFAULT_MOBILE_REF_LEVEL
- * for IA_ENHAACPLUS_DEC_DRC_TARGET_LOUDNESS too */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_DRC_TARGET_LOUDNESS, &ui_drc_val);
-
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_DRC_TARGET_LOUDNESS");
-
- int32_t attenuationFactor = mIntf->getDrcAttenuationFactor();
- ALOGV("AAC decoder using desired DRC attenuation factor of %d", attenuationFactor);
- ui_drc_val = (unsigned int)attenuationFactor;
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_SET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_CUT,
- &ui_drc_val);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_CUT");
-
- // DRC_PRES_MODE_WRAP_DESIRED_BOOST_FACTOR
- int32_t boostFactor = mIntf->getDrcBoostFactor();
- ALOGV("AAC decoder using desired DRC boost factor of %d", boostFactor);
- ui_drc_val = (unsigned int)boostFactor;
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_SET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_BOOST,
- &ui_drc_val);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_BOOST");
-
- // DRC_PRES_MODE_WRAP_DESIRED_HEAVY
- int32_t compressMode = mIntf->getDrcCompressMode();
- ALOGV("AAC decoder using desried DRC heavy compression switch of %d", compressMode);
- ui_drc_val = (unsigned int)compressMode;
-
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_SET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_HEAVY_COMP,
- &ui_drc_val);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_HEAVY_COMP");
-
- // AAC_UNIDRC_SET_EFFECT
- int32_t effectType = mIntf->getDrcEffectType();
- ALOGV("AAC decoder using MPEG-D DRC effect type %d", effectType);
- ui_drc_val = (unsigned int)effectType;
- err_code = ixheaacd_dec_api(mXheaacCodecHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_DRC_EFFECT_TYPE, &ui_drc_val);
-
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_DRC_EFFECT_TYPE");
-
- return IA_NO_ERROR;
-}
-
-IA_ERRORCODE C2SoftXaacDec::deInitXAACDecoder() {
- ALOGV("deInitXAACDecoder");
-
- /* Error code */
- IA_ERRORCODE err_code = IA_NO_ERROR;
-
- if (mXheaacCodecHandle) {
- /* Tell that the input is over in this buffer */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_INPUT_OVER,
- 0,
- nullptr);
- }
-
- /* Irrespective of error returned in IA_API_CMD_INPUT_OVER, free allocated memory */
- for (void* buf : mMemoryVec) {
- if (buf) free(buf);
- }
- mMemoryVec.clear();
- mXheaacCodecHandle = nullptr;
-
- return err_code;
-}
-
-IA_ERRORCODE C2SoftXaacDec::deInitMPEGDDDrc() {
- ALOGV("deInitMPEGDDDrc");
-
- for (void* buf : mDrcMemoryVec) {
- if (buf) free(buf);
- }
- mDrcMemoryVec.clear();
- return IA_NO_ERROR;
-}
-
-IA_ERRORCODE C2SoftXaacDec::configXAACDecoder(uint8_t* inBuffer, uint32_t inBufferLength) {
- if (mInputBufferSize < inBufferLength) {
- ALOGE("Cannot config AAC, input buffer size %d < inBufferLength %d", mInputBufferSize, inBufferLength);
- return false;
- }
- /* Copy the buffer passed by Android plugin to codec input buffer */
- memcpy(mInputBuffer, inBuffer, inBufferLength);
-
- /* Set number of bytes to be processed */
- IA_ERRORCODE err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_SET_INPUT_BYTES,
- 0,
- &inBufferLength);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_SET_INPUT_BYTES");
-
- if (mIsCodecConfigFlushRequired) {
- /* If codec is already initialized, then GA header is passed again */
- /* Need to call the Flush API instead of INIT_PROCESS */
- mIsCodecInitialized = false; /* Codec needs to be Reinitialized after flush */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_INIT,
- IA_CMD_TYPE_GA_HDR,
- nullptr);
- RETURN_IF_FATAL(err_code, "IA_CMD_TYPE_GA_HDR");
- } else {
- /* Initialize the process */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_INIT,
- IA_CMD_TYPE_INIT_PROCESS,
- nullptr);
- RETURN_IF_FATAL(err_code, "IA_CMD_TYPE_INIT_PROCESS");
- }
-
- uint32_t ui_init_done;
- /* Checking for end of initialization */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_INIT,
- IA_CMD_TYPE_INIT_DONE_QUERY,
- &ui_init_done);
- RETURN_IF_FATAL(err_code, "IA_CMD_TYPE_INIT_DONE_QUERY");
-
- /* How much buffer is used in input buffers */
- int32_t i_bytes_consumed;
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_GET_CURIDX_INPUT_BUF,
- 0,
- &i_bytes_consumed);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_GET_CURIDX_INPUT_BUF");
-
- if (ui_init_done) {
- err_code = getXAACStreamInfo();
- RETURN_IF_FATAL(err_code, "getXAACStreamInfo");
- ALOGI("Found Codec with below config---\nsampFreq %d\nnumChannels %d\npcmWdSz %d\nchannelMask %d\noutputFrameLength %d",
- mSampFreq, mNumChannels, mPcmWdSz, mChannelMask, mOutputFrameLength);
- mIsCodecInitialized = true;
-
- err_code = configMPEGDDrc();
- RETURN_IF_FATAL(err_code, "configMPEGDDrc");
- }
-
- return IA_NO_ERROR;
-}
-IA_ERRORCODE C2SoftXaacDec::initMPEGDDDrc() {
- IA_ERRORCODE err_code = IA_NO_ERROR;
-
- for (int i = 0; i < (WORD32)2; i++) {
- WORD32 ui_size, ui_alignment, ui_type;
- pVOID pv_alloc_ptr;
-
- /* Get memory size */
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_GET_MEM_INFO_SIZE, i, &ui_size);
-
- RETURN_IF_FATAL(err_code, "IA_API_CMD_GET_MEM_INFO_SIZE");
-
- /* Get memory alignment */
- err_code =
- ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_GET_MEM_INFO_ALIGNMENT, i, &ui_alignment);
-
- RETURN_IF_FATAL(err_code, "IA_API_CMD_GET_MEM_INFO_ALIGNMENT");
-
- /* Get memory type */
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_GET_MEM_INFO_TYPE, i, &ui_type);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_GET_MEM_INFO_TYPE");
-
- pv_alloc_ptr = memalign(4, ui_size);
- if (pv_alloc_ptr == nullptr) {
- ALOGE(" Cannot create requested memory %d", ui_size);
- return IA_FATAL_ERROR;
- }
- mDrcMemoryVec.push(pv_alloc_ptr);
-
- /* Set the buffer pointer */
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_MEM_PTR, i, pv_alloc_ptr);
-
- RETURN_IF_FATAL(err_code, "IA_API_CMD_SET_MEM_PTR");
- }
-
- WORD32 ui_size;
- ui_size = 8192 * 2;
-
- mDrcInBuf = (int8_t*)memalign(4, ui_size);
- if (mDrcInBuf == nullptr) {
- ALOGE(" Cannot create requested memory %d", ui_size);
- return IA_FATAL_ERROR;
- }
- mDrcMemoryVec.push(mDrcInBuf);
-
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_MEM_PTR, 2, mDrcInBuf);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_SET_MEM_PTR");
-
- mDrcOutBuf = (int8_t*)memalign(4, ui_size);
- if (mDrcOutBuf == nullptr) {
- ALOGE(" Cannot create requested memory %d", ui_size);
- return IA_FATAL_ERROR;
- }
- mDrcMemoryVec.push(mDrcOutBuf);
-
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_MEM_PTR, 3, mDrcOutBuf);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_SET_MEM_PTR");
-
- return IA_NO_ERROR;
-}
-int C2SoftXaacDec::configMPEGDDrc() {
- IA_ERRORCODE err_code = IA_NO_ERROR;
- int i_effect_type;
- int i_loud_norm;
- int i_target_loudness;
- unsigned int i_sbr_mode;
-
- /* Sampling Frequency */
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_DRC_DEC_CONFIG_PARAM_SAMP_FREQ, &mSampFreq);
- RETURN_IF_FATAL(err_code, "IA_DRC_DEC_CONFIG_PARAM_SAMP_FREQ");
- /* Total Number of Channels */
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_DRC_DEC_CONFIG_PARAM_NUM_CHANNELS, &mNumChannels);
- RETURN_IF_FATAL(err_code, "IA_DRC_DEC_CONFIG_PARAM_NUM_CHANNELS");
-
- /* PCM word size */
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_DRC_DEC_CONFIG_PARAM_PCM_WDSZ, &mPcmWdSz);
- RETURN_IF_FATAL(err_code, "IA_DRC_DEC_CONFIG_PARAM_PCM_WDSZ");
-
- /*Set Effect Type*/
-
- err_code = ixheaacd_dec_api(mXheaacCodecHandle, IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_EFFECT_TYPE, &i_effect_type);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_EFFECT_TYPE");
-
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_DRC_DEC_CONFIG_DRC_EFFECT_TYPE, &i_effect_type);
- RETURN_IF_FATAL(err_code, "IA_DRC_DEC_CONFIG_DRC_EFFECT_TYPE");
-
- /*Set target loudness */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle, IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_TARGET_LOUDNESS,
- &i_target_loudness);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_TARGET_LOUDNESS");
-
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_DRC_DEC_CONFIG_DRC_TARGET_LOUDNESS, &i_target_loudness);
- RETURN_IF_FATAL(err_code, "IA_DRC_DEC_CONFIG_DRC_TARGET_LOUDNESS");
-
- /*Set loud_norm_flag*/
- err_code = ixheaacd_dec_api(mXheaacCodecHandle, IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_LOUD_NORM, &i_loud_norm);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_LOUD_NORM");
-
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_DRC_DEC_CONFIG_DRC_LOUD_NORM, &i_loud_norm);
- RETURN_IF_FATAL(err_code, "IA_DRC_DEC_CONFIG_DRC_LOUD_NORM");
-
- err_code = ixheaacd_dec_api(mXheaacCodecHandle, IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_SBR_MODE, &i_sbr_mode);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_SBR_MODE");
-
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_INIT,
- IA_CMD_TYPE_INIT_API_POST_CONFIG_PARAMS, nullptr);
-
- RETURN_IF_FATAL(err_code, "IA_CMD_TYPE_INIT_API_POST_CONFIG_PARAMS");
-
- /* Free any memory that is allocated for MPEG D Drc so far */
- deInitMPEGDDDrc();
-
- err_code = initMPEGDDDrc();
- if (err_code != IA_NO_ERROR) {
- ALOGE("initMPEGDDDrc failed with error %d", err_code);
- deInitMPEGDDDrc();
- return err_code;
- }
-
- /* DRC buffers
- buf[0] - contains extension element pay load loudness related
- buf[1] - contains extension element pay load*/
- {
- VOID* p_array[2][16];
- WORD32 ii;
- WORD32 buf_sizes[2][16];
- WORD32 num_elements;
- WORD32 num_config_ext;
- WORD32 bit_str_fmt = 1;
-
- WORD32 uo_num_chan;
-
- memset(buf_sizes, 0, 32 * sizeof(WORD32));
-
- err_code =
- ixheaacd_dec_api(mXheaacCodecHandle, IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_EXT_ELE_BUF_SIZES, &buf_sizes[0][0]);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_EXT_ELE_BUF_SIZES");
-
- err_code = ixheaacd_dec_api(mXheaacCodecHandle, IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_EXT_ELE_PTR, &p_array);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_EXT_ELE_PTR");
-
- err_code =
- ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_INIT, IA_CMD_TYPE_INIT_SET_BUFF_PTR, nullptr);
- RETURN_IF_FATAL(err_code, "IA_CMD_TYPE_INIT_SET_BUFF_PTR");
-
- err_code = ixheaacd_dec_api(mXheaacCodecHandle, IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_NUM_ELE, &num_elements);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_NUM_ELE");
-
- err_code = ixheaacd_dec_api(mXheaacCodecHandle, IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_NUM_CONFIG_EXT, &num_config_ext);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_NUM_CONFIG_EXT");
-
- for (ii = 0; ii < num_config_ext; ii++) {
- /*copy loudness bitstream*/
- if (buf_sizes[0][ii] > 0) {
- memcpy(mDrcInBuf, p_array[0][ii], buf_sizes[0][ii]);
-
- /*Set bitstream_split_format */
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_DRC_DEC_CONFIG_PARAM_BITS_FORMAT, &bit_str_fmt);
- RETURN_IF_FATAL(err_code, "IA_DRC_DEC_CONFIG_PARAM_BITS_FORMAT");
-
- /* Set number of bytes to be processed */
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_INPUT_BYTES_IL_BS, 0,
- &buf_sizes[0][ii]);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_SET_INPUT_BYTES_IL_BS");
-
- /* Execute process */
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_INIT,
- IA_CMD_TYPE_INIT_CPY_IL_BSF_BUFF, nullptr);
- RETURN_IF_FATAL(err_code, "IA_CMD_TYPE_INIT_CPY_IL_BSF_BUFF");
-
- mDRCFlag = 1;
- }
- }
-
- for (ii = 0; ii < num_elements; ii++) {
- /*copy config bitstream*/
- if (buf_sizes[1][ii] > 0) {
- memcpy(mDrcInBuf, p_array[1][ii], buf_sizes[1][ii]);
- /* Set number of bytes to be processed */
-
- /*Set bitstream_split_format */
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_DRC_DEC_CONFIG_PARAM_BITS_FORMAT, &bit_str_fmt);
- RETURN_IF_FATAL(err_code, "IA_DRC_DEC_CONFIG_PARAM_BITS_FORMAT");
-
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_INPUT_BYTES_IC_BS, 0,
- &buf_sizes[1][ii]);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_SET_INPUT_BYTES_IC_BS");
-
- /* Execute process */
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_INIT,
- IA_CMD_TYPE_INIT_CPY_IC_BSF_BUFF, nullptr);
-
- RETURN_IF_FATAL(err_code, "IA_CMD_TYPE_INIT_CPY_IC_BSF_BUFF");
-
- mDRCFlag = 1;
- }
- }
-
- if (mDRCFlag == 1) {
- mMpegDDRCPresent = 1;
- } else {
- mMpegDDRCPresent = 0;
- }
-
- /*Read interface buffer config file bitstream*/
- if (mMpegDDRCPresent == 1) {
- WORD32 interface_is_present = 1;
-
- if (i_sbr_mode != 0) {
- if (i_sbr_mode == 1) {
- mOutputFrameLength = 2048;
- } else if (i_sbr_mode == 3) {
- mOutputFrameLength = 4096;
- } else {
- mOutputFrameLength = 1024;
- }
- } else {
- mOutputFrameLength = 4096;
- }
-
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_DRC_DEC_CONFIG_PARAM_FRAME_SIZE, (WORD32 *)&mOutputFrameLength);
- RETURN_IF_FATAL(err_code, "IA_DRC_DEC_CONFIG_PARAM_FRAME_SIZE");
-
- err_code =
- ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_DRC_DEC_CONFIG_PARAM_INT_PRESENT, &interface_is_present);
- RETURN_IF_FATAL(err_code, "IA_DRC_DEC_CONFIG_PARAM_INT_PRESENT");
-
- /* Execute process */
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_INIT,
- IA_CMD_TYPE_INIT_CPY_IN_BSF_BUFF, nullptr);
- RETURN_IF_FATAL(err_code, "IA_CMD_TYPE_INIT_CPY_IN_BSF_BUFF");
-
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_INIT,
- IA_CMD_TYPE_INIT_PROCESS, nullptr);
- RETURN_IF_FATAL(err_code, "IA_CMD_TYPE_INIT_PROCESS");
-
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_GET_CONFIG_PARAM,
- IA_DRC_DEC_CONFIG_PARAM_NUM_CHANNELS, &uo_num_chan);
- RETURN_IF_FATAL(err_code, "IA_DRC_DEC_CONFIG_PARAM_NUM_CHANNELS");
- }
- }
-
- return err_code;
-}
-
-IA_ERRORCODE C2SoftXaacDec::decodeXAACStream(uint8_t* inBuffer,
- uint32_t inBufferLength,
- int32_t* bytesConsumed,
- int32_t* outBytes) {
- if (mInputBufferSize < inBufferLength) {
- ALOGE("Cannot config AAC, input buffer size %d < inBufferLength %d", mInputBufferSize, inBufferLength);
- return -1;
- }
- /* Copy the buffer passed by Android plugin to codec input buffer */
- memcpy(mInputBuffer, inBuffer, inBufferLength);
-
- /* Set number of bytes to be processed */
- IA_ERRORCODE err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_SET_INPUT_BYTES,
- 0,
- &inBufferLength);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_SET_INPUT_BYTES");
-
- /* Execute process */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_EXECUTE,
- IA_CMD_TYPE_DO_EXECUTE,
- nullptr);
- RETURN_IF_FATAL(err_code, "IA_CMD_TYPE_DO_EXECUTE");
-
- /* Checking for end of processing */
- uint32_t ui_exec_done;
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_EXECUTE,
- IA_CMD_TYPE_DONE_QUERY,
- &ui_exec_done);
- RETURN_IF_FATAL(err_code, "IA_CMD_TYPE_DONE_QUERY");
-
- if (ui_exec_done != 1) {
- VOID* p_array; // ITTIAM:buffer to handle gain payload
- WORD32 buf_size = 0; // ITTIAM:gain payload length
- WORD32 bit_str_fmt = 1;
- WORD32 gain_stream_flag = 1;
-
- err_code = ixheaacd_dec_api(mXheaacCodecHandle, IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_GAIN_PAYLOAD_LEN, &buf_size);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_GAIN_PAYLOAD_LEN");
-
- err_code = ixheaacd_dec_api(mXheaacCodecHandle, IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_GAIN_PAYLOAD_BUF, &p_array);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_GAIN_PAYLOAD_BUF");
-
- if (buf_size > 0) {
- /*Set bitstream_split_format */
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_DRC_DEC_CONFIG_PARAM_BITS_FORMAT, &bit_str_fmt);
- RETURN_IF_FATAL(err_code, "IA_DRC_DEC_CONFIG_PARAM_BITS_FORMAT");
-
- memcpy(mDrcInBuf, p_array, buf_size);
- /* Set number of bytes to be processed */
- err_code =
- ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_INPUT_BYTES_BS, 0, &buf_size);
- RETURN_IF_FATAL(err_code, "IA_DRC_DEC_CONFIG_PARAM_BITS_FORMAT");
-
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_DRC_DEC_CONFIG_GAIN_STREAM_FLAG, &gain_stream_flag);
- RETURN_IF_FATAL(err_code, "IA_DRC_DEC_CONFIG_PARAM_BITS_FORMAT");
-
- /* Execute process */
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_INIT,
- IA_CMD_TYPE_INIT_CPY_BSF_BUFF, nullptr);
- RETURN_IF_FATAL(err_code, "IA_DRC_DEC_CONFIG_PARAM_BITS_FORMAT");
-
- mMpegDDRCPresent = 1;
- }
- }
-
- /* How much buffer is used in input buffers */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_GET_CURIDX_INPUT_BUF,
- 0,
- bytesConsumed);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_GET_CURIDX_INPUT_BUF");
-
- /* Get the output bytes */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_GET_OUTPUT_BYTES,
- 0,
- outBytes);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_GET_OUTPUT_BYTES");
-
- if (mMpegDDRCPresent == 1) {
- memcpy(mDrcInBuf, mOutputBuffer, *outBytes);
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_INPUT_BYTES, 0, outBytes);
- RETURN_IF_FATAL(err_code, "IA_API_CMD_SET_INPUT_BYTES");
-
- err_code =
- ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_EXECUTE, IA_CMD_TYPE_DO_EXECUTE, nullptr);
- RETURN_IF_FATAL(err_code, "IA_CMD_TYPE_DO_EXECUTE");
-
- memcpy(mOutputBuffer, mDrcOutBuf, *outBytes);
- }
- return IA_NO_ERROR;
-}
-
-IA_ERRORCODE C2SoftXaacDec::getXAACStreamInfo() {
- IA_ERRORCODE err_code = IA_NO_ERROR;
-
- /* Sampling frequency */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_SAMP_FREQ,
- &mSampFreq);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_SAMP_FREQ");
-
- /* Total Number of Channels */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_NUM_CHANNELS,
- &mNumChannels);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_NUM_CHANNELS");
- if (mNumChannels > MAX_CHANNEL_COUNT) {
- ALOGE(" No of channels are more than max channels\n");
- return IA_FATAL_ERROR;
- }
-
- /* PCM word size */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_PCM_WDSZ,
- &mPcmWdSz);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_PCM_WDSZ");
- if ((mPcmWdSz / 8) != 2) {
- ALOGE(" No of channels are more than max channels\n");
- return IA_FATAL_ERROR;
- }
-
- /* channel mask to tell the arrangement of channels in bit stream */
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_CHANNEL_MASK,
- &mChannelMask);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_CHANNEL_MASK");
-
- /* Channel mode to tell MONO/STEREO/DUAL-MONO/NONE_OF_THESE */
- uint32_t ui_channel_mode;
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_CHANNEL_MODE,
- &ui_channel_mode);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_CHANNEL_MODE");
- if (ui_channel_mode == 0)
- ALOGV("Channel Mode: MONO_OR_PS\n");
- else if (ui_channel_mode == 1)
- ALOGV("Channel Mode: STEREO\n");
- else if (ui_channel_mode == 2)
- ALOGV("Channel Mode: DUAL-MONO\n");
- else
- ALOGV("Channel Mode: NONE_OF_THESE or MULTICHANNEL\n");
-
- /* Channel mode to tell SBR PRESENT/NOT_PRESENT */
- uint32_t ui_sbr_mode;
- err_code = ixheaacd_dec_api(mXheaacCodecHandle,
- IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_SBR_MODE,
- &ui_sbr_mode);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_SBR_MODE");
- if (ui_sbr_mode == 0)
- ALOGV("SBR Mode: NOT_PRESENT\n");
- else if (ui_sbr_mode == 1)
- ALOGV("SBR Mode: PRESENT\n");
- else
- ALOGV("SBR Mode: ILLEGAL\n");
-
- /* mOutputFrameLength = 1024 * (1 + SBR_MODE) for AAC */
- /* For USAC it could be 1024 * 3 , support to query */
- /* not yet added in codec */
- mOutputFrameLength = 1024 * (1 + ui_sbr_mode);
- ALOGI("mOutputFrameLength %d ui_sbr_mode %d", mOutputFrameLength, ui_sbr_mode);
-
- return IA_NO_ERROR;
-}
-
-IA_ERRORCODE C2SoftXaacDec::setXAACDRCInfo(int32_t drcCut, int32_t drcBoost,
- int32_t drcRefLevel,
- int32_t drcHeavyCompression,
- int32_t drEffectType) {
- IA_ERRORCODE err_code = IA_NO_ERROR;
-
- int32_t ui_drc_enable = 1;
- err_code = ixheaacd_dec_api(mXheaacCodecHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_ENABLE,
- &ui_drc_enable);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_ENABLE");
- if (drcCut != -1) {
- err_code =
- ixheaacd_dec_api(mXheaacCodecHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_CUT, &drcCut);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_CUT");
- }
-
- if (drcBoost != -1) {
- err_code = ixheaacd_dec_api(
- mXheaacCodecHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_BOOST, &drcBoost);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_BOOST");
- }
-
- if (drcRefLevel != -1) {
- err_code = ixheaacd_dec_api(
- mXheaacCodecHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_TARGET_LEVEL, &drcRefLevel);
- RETURN_IF_FATAL(err_code,
- "IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_TARGET_LEVEL");
- }
-
- if (drcRefLevel != -1) {
- err_code = ixheaacd_dec_api(
- mXheaacCodecHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_DRC_TARGET_LOUDNESS, &drcRefLevel);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_DRC_TARGET_LOUDNESS");
- }
-
- if (drcHeavyCompression != -1) {
- err_code =
- ixheaacd_dec_api(mXheaacCodecHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_HEAVY_COMP,
- &drcHeavyCompression);
- RETURN_IF_FATAL(err_code,
- "IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_HEAVY_COMP");
- }
-
- err_code =
- ixheaacd_dec_api(mXheaacCodecHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_DRC_EFFECT_TYPE, &drEffectType);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_DRC_EFFECT_TYPE");
-
- int32_t i_effect_type, i_target_loudness, i_loud_norm;
- /*Set Effect Type*/
- err_code = ixheaacd_dec_api(mXheaacCodecHandle, IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_EFFECT_TYPE,
- &i_effect_type);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_EFFECT_TYPE");
-
- err_code =
- ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_DRC_DEC_CONFIG_DRC_EFFECT_TYPE, &i_effect_type);
-
- RETURN_IF_FATAL(err_code, "IA_DRC_DEC_CONFIG_DRC_EFFECT_TYPE");
-
- /*Set target loudness */
- err_code = ixheaacd_dec_api(
- mXheaacCodecHandle, IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_TARGET_LOUDNESS, &i_target_loudness);
- RETURN_IF_FATAL(err_code,
- "IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_TARGET_LOUDNESS");
-
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_DRC_DEC_CONFIG_DRC_TARGET_LOUDNESS,
- &i_target_loudness);
- RETURN_IF_FATAL(err_code, "IA_DRC_DEC_CONFIG_DRC_TARGET_LOUDNESS");
-
- /*Set loud_norm_flag*/
- err_code = ixheaacd_dec_api(mXheaacCodecHandle, IA_API_CMD_GET_CONFIG_PARAM,
- IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_LOUD_NORM,
- &i_loud_norm);
- RETURN_IF_FATAL(err_code, "IA_ENHAACPLUS_DEC_CONFIG_PARAM_DRC_LOUD_NORM");
-
- err_code = ia_drc_dec_api(mMpegDDrcHandle, IA_API_CMD_SET_CONFIG_PARAM,
- IA_DRC_DEC_CONFIG_DRC_LOUD_NORM, &i_loud_norm);
-
- RETURN_IF_FATAL(err_code, "IA_DRC_DEC_CONFIG_DRC_LOUD_NORM");
-
- return IA_NO_ERROR;
-}
-
-class C2SoftXaacDecFactory : public C2ComponentFactory {
-public:
- C2SoftXaacDecFactory() : mHelper(std::static_pointer_cast<C2ReflectorHelper>(
- GetCodec2PlatformComponentStore()->getParamReflector())) {
- }
-
- virtual c2_status_t createComponent(
- c2_node_id_t id,
- std::shared_ptr<C2Component>* const component,
- std::function<void(C2Component*)> deleter) override {
- *component = std::shared_ptr<C2Component>(
- new C2SoftXaacDec(COMPONENT_NAME,
- id,
- std::make_shared<C2SoftXaacDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual c2_status_t createInterface(
- c2_node_id_t id,
- std::shared_ptr<C2ComponentInterface>* const interface,
- std::function<void(C2ComponentInterface*)> deleter) override {
- *interface = std::shared_ptr<C2ComponentInterface>(
- new SimpleInterface<C2SoftXaacDec::IntfImpl>(
- COMPONENT_NAME, id, std::make_shared<C2SoftXaacDec::IntfImpl>(mHelper)),
- deleter);
- return C2_OK;
- }
-
- virtual ~C2SoftXaacDecFactory() override = default;
-
-private:
- std::shared_ptr<C2ReflectorHelper> mHelper;
-};
-
-} // namespace android
-
-extern "C" ::C2ComponentFactory* CreateCodec2Factory() {
- ALOGV("in %s", __func__);
- return new ::android::C2SoftXaacDecFactory();
-}
-
-extern "C" void DestroyCodec2Factory(::C2ComponentFactory* factory) {
- ALOGV("in %s", __func__);
- delete factory;
-}
diff --git a/media/codecs/xaac/C2SoftXaacDec.h b/media/codecs/xaac/C2SoftXaacDec.h
deleted file mode 100644
index 5c8567f..0000000
--- a/media/codecs/xaac/C2SoftXaacDec.h
+++ /dev/null
@@ -1,131 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_C2_SOFT_XAAC_DEC_H_
-#define ANDROID_C2_SOFT_XAAC_DEC_H_
-#include <utils/Vector.h>
-#include <SimpleC2Component.h>
-
-#include "ixheaacd_type_def.h"
-#include "ixheaacd_error_standards.h"
-#include "ixheaacd_error_handler.h"
-#include "ixheaacd_apicmd_standards.h"
-#include "ixheaacd_memory_standards.h"
-#include "ixheaacd_aac_config.h"
-
-#include "impd_apicmd_standards.h"
-#include "impd_drc_config_params.h"
-
-#define MAX_CHANNEL_COUNT 8 /* maximum number of audio channels that can be decoded */
-#define MAX_NUM_BLOCKS 8 /* maximum number of audio blocks that can be decoded */
-
-extern "C" IA_ERRORCODE ixheaacd_dec_api(pVOID p_ia_module_obj,
- WORD32 i_cmd, WORD32 i_idx, pVOID pv_value);
-extern "C" IA_ERRORCODE ia_drc_dec_api(pVOID p_ia_module_obj,
- WORD32 i_cmd, WORD32 i_idx, pVOID pv_value);
-extern "C" IA_ERRORCODE ixheaacd_get_config_param(pVOID p_ia_process_api_obj,
- pWORD32 pi_samp_freq,
- pWORD32 pi_num_chan,
- pWORD32 pi_pcm_wd_sz,
- pWORD32 pi_channel_mask);
-
-namespace android {
-
-struct C2SoftXaacDec : public SimpleC2Component {
- class IntfImpl;
-
- C2SoftXaacDec(const char* name, c2_node_id_t id,
- const std::shared_ptr<IntfImpl>& intfImpl);
- virtual ~C2SoftXaacDec();
-
- // From SimpleC2Component
- c2_status_t onInit() override;
- c2_status_t onStop() override;
- void onReset() override;
- void onRelease() override;
- c2_status_t onFlush_sm() override;
- void process(
- const std::unique_ptr<C2Work> &work,
- const std::shared_ptr<C2BlockPool> &pool) override;
- c2_status_t drain(
- uint32_t drainMode,
- const std::shared_ptr<C2BlockPool> &pool) override;
-
-private:
- enum {
- kOutputDrainBufferSize = 2048 * MAX_CHANNEL_COUNT * MAX_NUM_BLOCKS,
- };
-
- std::shared_ptr<IntfImpl> mIntf;
- void* mXheaacCodecHandle;
- void* mMpegDDrcHandle;
- uint32_t mInputBufferSize;
- uint32_t mOutputFrameLength;
- int8_t* mInputBuffer;
- int8_t* mOutputBuffer;
- int32_t mSampFreq;
- int32_t mNumChannels;
- int32_t mPcmWdSz;
- int32_t mChannelMask;
- int32_t mNumOutBytes;
- uint64_t mCurFrameIndex;
- uint64_t mCurTimestamp;
- bool mIsCodecInitialized;
- bool mIsCodecConfigFlushRequired;
- int8_t* mDrcInBuf;
- int8_t* mDrcOutBuf;
- int32_t mMpegDDRCPresent;
- int32_t mDRCFlag;
-
- Vector<void*> mMemoryVec;
- Vector<void*> mDrcMemoryVec;
-
- size_t mInputBufferCount __unused;
- size_t mOutputBufferCount __unused;
- bool mSignalledOutputEos;
- bool mSignalledError;
- char* mOutputDrainBuffer;
- uint32_t mOutputDrainBufferWritePos;
-
- IA_ERRORCODE initDecoder();
- IA_ERRORCODE setDrcParameter();
- IA_ERRORCODE configflushDecode();
- IA_ERRORCODE drainDecoder();
- void finishWork(const std::unique_ptr<C2Work>& work,
- const std::shared_ptr<C2BlockPool>& pool);
-
- IA_ERRORCODE initXAACDrc();
- IA_ERRORCODE initXAACDecoder();
- IA_ERRORCODE deInitXAACDecoder();
- IA_ERRORCODE initMPEGDDDrc();
- IA_ERRORCODE deInitMPEGDDDrc();
- IA_ERRORCODE configXAACDecoder(uint8_t* inBuffer, uint32_t inBufferLength);
- int configMPEGDDrc();
- IA_ERRORCODE decodeXAACStream(uint8_t* inBuffer,
- uint32_t inBufferLength,
- int32_t* bytesConsumed,
- int32_t* outBytes);
- IA_ERRORCODE getXAACStreamInfo();
- IA_ERRORCODE setXAACDRCInfo(int32_t drcCut, int32_t drcBoost,
- int32_t drcRefLevel, int32_t drcHeavyCompression,
- int32_t drEffectType);
-
- C2_DO_NOT_COPY(C2SoftXaacDec);
-};
-
-} // namespace android
-
-#endif // C2_SOFT_XAAC_H_
diff --git a/media/sfplugin/Android.bp b/media/sfplugin/Android.bp
deleted file mode 100644
index 3565688..0000000
--- a/media/sfplugin/Android.bp
+++ /dev/null
@@ -1,61 +0,0 @@
-cc_library_shared {
- name: "libstagefright_ccodec",
-
- srcs: [
- "C2OMXNode.cpp",
- "CCodec.cpp",
- "CCodecBufferChannel.cpp",
- "CCodecConfig.cpp",
- "Codec2Buffer.cpp",
- "Codec2InfoBuilder.cpp",
- "ReflectedParamUpdater.cpp",
- "SkipCutBuffer.cpp",
- ],
-
- cflags: [
- "-Werror",
- "-Wall",
- ],
-
- header_libs: [
- "libmediadrm_headers",
- "libstagefright_codec2_internal",
- "media_ndk_headers",
- ],
-
- shared_libs: [
- "android.hardware.cas.native@1.0",
- "android.hardware.drm@1.0",
- "android.hardware.graphics.bufferqueue@1.0",
- "android.hardware.media.omx@1.0",
- "hardware.google.media.c2@1.0",
- "libbase",
- "libbinder",
- "libcodec2_hidl_client",
- "libcutils",
- "libgui",
- "libhidlallocatorutils",
- "libhidlbase",
- "liblog",
- "libmedia_codeclist",
- "libmedia_omx",
- "libstagefright_bufferqueue_helper",
- "libstagefright_ccodec_utils",
- "libstagefright_codec2",
- "libstagefright_codec2_vndk",
- "libstagefright_codecbase",
- "libstagefright_foundation",
- "libstagefright_omx_utils",
- "libstagefright_xmlparser",
- "libui",
- "libutils",
- ],
-
- sanitize: {
- cfi: true,
- misc_undefined: [
- "unsigned-integer-overflow",
- "signed-integer-overflow",
- ],
- },
-}
diff --git a/media/sfplugin/C2OMXNode.cpp b/media/sfplugin/C2OMXNode.cpp
deleted file mode 100644
index 03d859a..0000000
--- a/media/sfplugin/C2OMXNode.cpp
+++ /dev/null
@@ -1,329 +0,0 @@
-/*
- * Copyright 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifdef __LP64__
-#define OMX_ANDROID_COMPILE_AS_32BIT_ON_64BIT_PLATFORMS
-#endif
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "C2OMXNode"
-#include <log/log.h>
-
-#include <C2AllocatorGralloc.h>
-#include <C2BlockInternal.h>
-#include <C2Component.h>
-#include <C2PlatformSupport.h>
-
-#include <OMX_Component.h>
-#include <OMX_Index.h>
-#include <OMX_IndexExt.h>
-
-#include <media/stagefright/omx/OMXUtils.h>
-#include <media/stagefright/MediaErrors.h>
-#include <ui/Fence.h>
-#include <ui/GraphicBuffer.h>
-
-#include "C2OMXNode.h"
-
-namespace android {
-
-namespace {
-
-class Buffer2D : public C2Buffer {
-public:
- explicit Buffer2D(C2ConstGraphicBlock block) : C2Buffer({ block }) {}
-};
-
-} // namespace
-
-C2OMXNode::C2OMXNode(const std::shared_ptr<Codec2Client::Component> &comp)
- : mComp(comp), mFrameIndex(0), mWidth(0), mHeight(0),
- mAdjustTimestampGapUs(0), mFirstInputFrame(true) {
- // TODO: read from intf()
- if (!strncmp(comp->getName().c_str(), "c2.android.", 11)) {
- mUsage = GRALLOC_USAGE_SW_READ_OFTEN;
- } else {
- mUsage = GRALLOC_USAGE_HW_VIDEO_ENCODER;
- }
-}
-
-status_t C2OMXNode::freeNode() {
- mComp.reset();
- return OK;
-}
-
-status_t C2OMXNode::sendCommand(OMX_COMMANDTYPE cmd, OMX_S32 param) {
- if (cmd == OMX_CommandStateSet && param == OMX_StateLoaded) {
- // Reset first input frame so if C2OMXNode is recycled, the timestamp does not become
- // negative. This is a workaround for HW codecs that do not handle timestamp rollover.
- mFirstInputFrame = true;
- }
- return ERROR_UNSUPPORTED;
-}
-
-status_t C2OMXNode::getParameter(OMX_INDEXTYPE index, void *params, size_t size) {
- status_t err = ERROR_UNSUPPORTED;
- switch ((uint32_t)index) {
- case OMX_IndexParamConsumerUsageBits: {
- OMX_U32 *usage = (OMX_U32 *)params;
- *usage = mUsage;
- err = OK;
- break;
- }
- case OMX_IndexParamPortDefinition: {
- if (size < sizeof(OMX_PARAM_PORTDEFINITIONTYPE)) {
- return BAD_VALUE;
- }
- OMX_PARAM_PORTDEFINITIONTYPE *pDef = (OMX_PARAM_PORTDEFINITIONTYPE *)params;
- // TODO: read these from intf()
- pDef->nBufferCountActual = 16;
- pDef->eDomain = OMX_PortDomainVideo;
- pDef->format.video.nFrameWidth = mWidth;
- pDef->format.video.nFrameHeight = mHeight;
- err = OK;
- break;
- }
- default:
- break;
- }
- return err;
-}
-
-status_t C2OMXNode::setParameter(OMX_INDEXTYPE index, const void *params, size_t size) {
- // handle max/fixed frame duration control
- if (index == (OMX_INDEXTYPE)OMX_IndexParamMaxFrameDurationForBitrateControl
- && params != NULL
- && size == sizeof(OMX_PARAM_U32TYPE)) {
- // The incoming number is an int32_t contained in OMX_U32.
- mAdjustTimestampGapUs = (int32_t)((OMX_PARAM_U32TYPE*)params)->nU32;
- return OK;
- }
- return ERROR_UNSUPPORTED;
-}
-
-status_t C2OMXNode::getConfig(OMX_INDEXTYPE index, void *config, size_t size) {
- (void)index;
- (void)config;
- (void)size;
- return ERROR_UNSUPPORTED;
-}
-
-status_t C2OMXNode::setConfig(OMX_INDEXTYPE index, const void *config, size_t size) {
- (void)index;
- (void)config;
- (void)size;
- return ERROR_UNSUPPORTED;
-}
-
-status_t C2OMXNode::setPortMode(OMX_U32 portIndex, IOMX::PortMode mode) {
- (void)portIndex;
- (void)mode;
- return ERROR_UNSUPPORTED;
-}
-
-status_t C2OMXNode::prepareForAdaptivePlayback(
- OMX_U32 portIndex, OMX_BOOL enable,
- OMX_U32 maxFrameWidth, OMX_U32 maxFrameHeight) {
- (void)portIndex;
- (void)enable;
- (void)maxFrameWidth;
- (void)maxFrameHeight;
- return ERROR_UNSUPPORTED;
-}
-
-status_t C2OMXNode::configureVideoTunnelMode(
- OMX_U32 portIndex, OMX_BOOL tunneled,
- OMX_U32 audioHwSync, native_handle_t **sidebandHandle) {
- (void)portIndex;
- (void)tunneled;
- (void)audioHwSync;
- *sidebandHandle = nullptr;
- return ERROR_UNSUPPORTED;
-}
-
-status_t C2OMXNode::getGraphicBufferUsage(OMX_U32 portIndex, OMX_U32* usage) {
- (void)portIndex;
- *usage = 0;
- return ERROR_UNSUPPORTED;
-}
-
-status_t C2OMXNode::setInputSurface(const sp<IOMXBufferSource> &bufferSource) {
- c2_status_t err = GetCodec2PlatformAllocatorStore()->fetchAllocator(
- C2PlatformAllocatorStore::GRALLOC,
- &mAllocator);
- if (err != OK) {
- return UNKNOWN_ERROR;
- }
- mBufferSource = bufferSource;
- return OK;
-}
-
-status_t C2OMXNode::allocateSecureBuffer(
- OMX_U32 portIndex, size_t size, buffer_id *buffer,
- void **bufferData, sp<NativeHandle> *nativeHandle) {
- (void)portIndex;
- (void)size;
- (void)nativeHandle;
- *buffer = 0;
- *bufferData = nullptr;
- return ERROR_UNSUPPORTED;
-}
-
-status_t C2OMXNode::useBuffer(
- OMX_U32 portIndex, const OMXBuffer &omxBuf, buffer_id *buffer) {
- (void)portIndex;
- (void)omxBuf;
- *buffer = 0;
- return ERROR_UNSUPPORTED;
-}
-
-status_t C2OMXNode::freeBuffer(OMX_U32 portIndex, buffer_id buffer) {
- (void)portIndex;
- (void)buffer;
- return ERROR_UNSUPPORTED;
-}
-
-status_t C2OMXNode::fillBuffer(
- buffer_id buffer, const OMXBuffer &omxBuf, int fenceFd) {
- (void)buffer;
- (void)omxBuf;
- (void)fenceFd;
- return ERROR_UNSUPPORTED;
-}
-
-status_t C2OMXNode::emptyBuffer(
- buffer_id buffer, const OMXBuffer &omxBuf,
- OMX_U32 flags, OMX_TICKS timestamp, int fenceFd) {
- // TODO: better fence handling
- if (fenceFd >= 0) {
- sp<Fence> fence = new Fence(fenceFd);
- fence->waitForever(LOG_TAG);
- }
- std::shared_ptr<Codec2Client::Component> comp = mComp.lock();
- if (!comp) {
- return NO_INIT;
- }
-
- uint32_t c2Flags = (flags & OMX_BUFFERFLAG_EOS)
- ? C2FrameData::FLAG_END_OF_STREAM : 0;
- std::shared_ptr<C2GraphicBlock> block;
-
- C2Handle *handle = nullptr;
- if (omxBuf.mBufferType == OMXBuffer::kBufferTypeANWBuffer
- && omxBuf.mGraphicBuffer != nullptr) {
- std::shared_ptr<C2GraphicAllocation> alloc;
- handle = WrapNativeCodec2GrallocHandle(
- omxBuf.mGraphicBuffer->handle,
- omxBuf.mGraphicBuffer->width,
- omxBuf.mGraphicBuffer->height,
- omxBuf.mGraphicBuffer->format,
- omxBuf.mGraphicBuffer->usage,
- omxBuf.mGraphicBuffer->stride);
- c2_status_t err = mAllocator->priorGraphicAllocation(handle, &alloc);
- if (err != OK) {
- return UNKNOWN_ERROR;
- }
- block = _C2BlockFactory::CreateGraphicBlock(alloc);
- } else if (!(flags & OMX_BUFFERFLAG_EOS)) {
- return BAD_VALUE;
- }
-
- std::unique_ptr<C2Work> work(new C2Work);
- work->input.flags = (C2FrameData::flags_t)c2Flags;
- work->input.ordinal.timestamp = timestamp;
-
- // WORKAROUND: adjust timestamp based on gapUs
- {
- work->input.ordinal.customOrdinal = timestamp; // save input timestamp
- if (mFirstInputFrame) {
- // grab timestamps on first frame
- mPrevInputTimestamp = timestamp;
- mPrevCodecTimestamp = timestamp;
- mFirstInputFrame = false;
- } else if (mAdjustTimestampGapUs > 0) {
- work->input.ordinal.timestamp =
- mPrevCodecTimestamp
- + c2_min((timestamp - mPrevInputTimestamp).peek(), mAdjustTimestampGapUs);
- } else if (mAdjustTimestampGapUs < 0) {
- work->input.ordinal.timestamp = mPrevCodecTimestamp - mAdjustTimestampGapUs;
- }
- mPrevInputTimestamp = work->input.ordinal.customOrdinal;
- mPrevCodecTimestamp = work->input.ordinal.timestamp;
- ALOGV("adjusting %lld to %lld (gap=%lld)",
- work->input.ordinal.customOrdinal.peekll(),
- work->input.ordinal.timestamp.peekll(),
- (long long)mAdjustTimestampGapUs);
- }
-
- work->input.ordinal.frameIndex = mFrameIndex++;
- work->input.buffers.clear();
- if (block) {
- std::shared_ptr<C2Buffer> c2Buffer(
- // TODO: fence
- new Buffer2D(block->share(
- C2Rect(block->width(), block->height()), ::C2Fence())),
- [buffer, source = getSource()](C2Buffer *ptr) {
- delete ptr;
- // TODO: fence
- (void)source->onInputBufferEmptied(buffer, -1);
- });
- work->input.buffers.push_back(c2Buffer);
- }
- work->worklets.clear();
- work->worklets.emplace_back(new C2Worklet);
- std::list<std::unique_ptr<C2Work>> items;
- items.push_back(std::move(work));
-
- c2_status_t err = comp->queue(&items);
- if (err != C2_OK) {
- return UNKNOWN_ERROR;
- }
-
- return OK;
-}
-
-status_t C2OMXNode::getExtensionIndex(
- const char *parameterName, OMX_INDEXTYPE *index) {
- (void)parameterName;
- *index = OMX_IndexMax;
- return ERROR_UNSUPPORTED;
-}
-
-status_t C2OMXNode::dispatchMessage(const omx_message& msg) {
- if (msg.type != omx_message::EVENT) {
- return ERROR_UNSUPPORTED;
- }
- if (msg.u.event_data.event != OMX_EventDataSpaceChanged) {
- return ERROR_UNSUPPORTED;
- }
- android_dataspace dataSpace = (android_dataspace)msg.u.event_data.data1;
- uint32_t pixelFormat = msg.u.event_data.data3;
-
- // TODO: set dataspace on component to see if it impacts color aspects
- ALOGD("dataspace changed to %#x pixel format: %#x", dataSpace, pixelFormat);
- return OK;
-}
-
-sp<IOMXBufferSource> C2OMXNode::getSource() {
- return mBufferSource;
-}
-
-void C2OMXNode::setFrameSize(uint32_t width, uint32_t height) {
- mWidth = width;
- mHeight = height;
-}
-
-} // namespace android
diff --git a/media/sfplugin/C2OMXNode.h b/media/sfplugin/C2OMXNode.h
deleted file mode 100644
index b5a815e..0000000
--- a/media/sfplugin/C2OMXNode.h
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * Copyright 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C2_OMX_NODE_H_
-#define C2_OMX_NODE_H_
-
-#include <atomic>
-
-#include <android/IOMXBufferSource.h>
-#include <media/IOMX.h>
-#include <media/OMXBuffer.h>
-#include <codec2/hidl/client.h>
-
-namespace android {
-
-/**
- * IOmxNode implementation around codec 2.0 component, only to be used in
- * IGraphicBufferSource::configure. Only subset of IOmxNode API is implemented
- * and others are left as stub. As a result, one cannot expect this IOmxNode
- * to work in any other usage than IGraphicBufferSource.
- */
-struct C2OMXNode : public BnOMXNode {
- explicit C2OMXNode(const std::shared_ptr<Codec2Client::Component> &comp);
- ~C2OMXNode() override = default;
-
- // IOMXNode
- status_t freeNode() override;
- status_t sendCommand(OMX_COMMANDTYPE cmd, OMX_S32 param) override;
- status_t getParameter(
- OMX_INDEXTYPE index, void *params, size_t size) override;
- status_t setParameter(
- OMX_INDEXTYPE index, const void *params, size_t size) override;
- status_t getConfig(
- OMX_INDEXTYPE index, void *params, size_t size) override;
- status_t setConfig(
- OMX_INDEXTYPE index, const void *params, size_t size) override;
- status_t setPortMode(OMX_U32 port_index, IOMX::PortMode mode) override;
- status_t prepareForAdaptivePlayback(
- OMX_U32 portIndex, OMX_BOOL enable,
- OMX_U32 maxFrameWidth, OMX_U32 maxFrameHeight) override;
- status_t configureVideoTunnelMode(
- OMX_U32 portIndex, OMX_BOOL tunneled,
- OMX_U32 audioHwSync, native_handle_t **sidebandHandle) override;
- status_t getGraphicBufferUsage(
- OMX_U32 port_index, OMX_U32* usage) override;
- status_t setInputSurface(
- const sp<IOMXBufferSource> &bufferSource) override;
- status_t allocateSecureBuffer(
- OMX_U32 port_index, size_t size, buffer_id *buffer,
- void **buffer_data, sp<NativeHandle> *native_handle) override;
- status_t useBuffer(
- OMX_U32 port_index, const OMXBuffer &omxBuf, buffer_id *buffer) override;
- status_t freeBuffer(
- OMX_U32 port_index, buffer_id buffer) override;
- status_t fillBuffer(
- buffer_id buffer, const OMXBuffer &omxBuf, int fenceFd) override;
- status_t emptyBuffer(
- buffer_id buffer, const OMXBuffer &omxBuf,
- OMX_U32 flags, OMX_TICKS timestamp, int fenceFd) override;
- status_t getExtensionIndex(
- const char *parameter_name,
- OMX_INDEXTYPE *index) override;
- status_t dispatchMessage(const omx_message &msg) override;
-
- sp<IOMXBufferSource> getSource();
- void setFrameSize(uint32_t width, uint32_t height);
-
-private:
- std::weak_ptr<Codec2Client::Component> mComp;
- sp<IOMXBufferSource> mBufferSource;
- std::shared_ptr<C2Allocator> mAllocator;
- std::atomic_uint64_t mFrameIndex;
- uint32_t mWidth;
- uint32_t mHeight;
- uint64_t mUsage;
-
- // WORKAROUND: timestamp adjustment
-
- // if >0: this is the max timestamp gap, if <0: this is -1 times the fixed timestamp gap
- // if 0: no timestamp adjustment is made
- // note that C2OMXNode can be recycled between encoding sessions.
- int32_t mAdjustTimestampGapUs;
- bool mFirstInputFrame; // true for first input
- c2_cntr64_t mPrevInputTimestamp; // input timestamp for previous frame
- c2_cntr64_t mPrevCodecTimestamp; // adjusted (codec) timestamp for previous frame
-};
-
-} // namespace android
-
-#endif // C2_OMX_NODE_H_
diff --git a/media/sfplugin/CCodec.cpp b/media/sfplugin/CCodec.cpp
deleted file mode 100644
index 32f88e1..0000000
--- a/media/sfplugin/CCodec.cpp
+++ /dev/null
@@ -1,1770 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "CCodec"
-#include <utils/Log.h>
-
-#include <sstream>
-#include <thread>
-
-#include <C2Config.h>
-#include <C2Debug.h>
-#include <C2ParamInternal.h>
-#include <C2PlatformSupport.h>
-
-#include <android/IOMXBufferSource.h>
-#include <android/hardware/media/omx/1.0/IGraphicBufferSource.h>
-#include <android/hardware/media/omx/1.0/IOmx.h>
-#include <android-base/stringprintf.h>
-#include <cutils/properties.h>
-#include <gui/IGraphicBufferProducer.h>
-#include <gui/Surface.h>
-#include <gui/bufferqueue/1.0/H2BGraphicBufferProducer.h>
-#include <media/omx/1.0/WOmxNode.h>
-#include <media/openmax/OMX_Core.h>
-#include <media/openmax/OMX_IndexExt.h>
-#include <media/stagefright/BufferProducerWrapper.h>
-#include <media/stagefright/MediaCodecConstants.h>
-#include <media/stagefright/PersistentSurface.h>
-#include <media/stagefright/codec2/1.0/InputSurface.h>
-
-#include "C2OMXNode.h"
-#include "CCodec.h"
-#include "CCodecBufferChannel.h"
-#include "InputSurfaceWrapper.h"
-
-extern "C" android::PersistentSurface *CreateInputSurface();
-
-namespace android {
-
-using namespace std::chrono_literals;
-using ::android::hardware::graphics::bufferqueue::V1_0::utils::H2BGraphicBufferProducer;
-using android::base::StringPrintf;
-using ::hardware::google::media::c2::V1_0::IInputSurface;
-
-using hardware::media::omx::V1_0::IGraphicBufferSource;
-
-namespace {
-
-class CCodecWatchdog : public AHandler {
-private:
- enum {
- kWhatWatch,
- };
- constexpr static int64_t kWatchIntervalUs = 3300000; // 3.3 secs
-
-public:
- static sp<CCodecWatchdog> getInstance() {
- static sp<CCodecWatchdog> instance(new CCodecWatchdog);
- static std::once_flag flag;
- // Call Init() only once.
- std::call_once(flag, Init, instance);
- return instance;
- }
-
- ~CCodecWatchdog() = default;
-
- void watch(sp<CCodec> codec) {
- bool shouldPost = false;
- {
- Mutexed<std::set<wp<CCodec>>>::Locked codecs(mCodecsToWatch);
- // If a watch message is in flight, piggy-back this instance as well.
- // Otherwise, post a new watch message.
- shouldPost = codecs->empty();
- codecs->emplace(codec);
- }
- if (shouldPost) {
- ALOGV("posting watch message");
- (new AMessage(kWhatWatch, this))->post(kWatchIntervalUs);
- }
- }
-
-protected:
- void onMessageReceived(const sp<AMessage> &msg) {
- switch (msg->what()) {
- case kWhatWatch: {
- Mutexed<std::set<wp<CCodec>>>::Locked codecs(mCodecsToWatch);
- ALOGV("watch for %zu codecs", codecs->size());
- for (auto it = codecs->begin(); it != codecs->end(); ++it) {
- sp<CCodec> codec = it->promote();
- if (codec == nullptr) {
- continue;
- }
- codec->initiateReleaseIfStuck();
- }
- codecs->clear();
- break;
- }
-
- default: {
- TRESPASS("CCodecWatchdog: unrecognized message");
- }
- }
- }
-
-private:
- CCodecWatchdog() : mLooper(new ALooper) {}
-
- static void Init(const sp<CCodecWatchdog> &thiz) {
- ALOGV("Init");
- thiz->mLooper->setName("CCodecWatchdog");
- thiz->mLooper->registerHandler(thiz);
- thiz->mLooper->start();
- }
-
- sp<ALooper> mLooper;
-
- Mutexed<std::set<wp<CCodec>>> mCodecsToWatch;
-};
-
-class C2InputSurfaceWrapper : public InputSurfaceWrapper {
-public:
- explicit C2InputSurfaceWrapper(
- const std::shared_ptr<Codec2Client::InputSurface> &surface) :
- mSurface(surface) {
- }
-
- ~C2InputSurfaceWrapper() override = default;
-
- status_t connect(const std::shared_ptr<Codec2Client::Component> &comp) override {
- if (mConnection != nullptr) {
- return ALREADY_EXISTS;
- }
- return toStatusT(mSurface->connectToComponent(comp, &mConnection),
- C2_OPERATION_InputSurface_connectToComponent);
- }
-
- void disconnect() override {
- if (mConnection != nullptr) {
- mConnection->disconnect();
- mConnection = nullptr;
- }
- }
-
- status_t start() override {
- // InputSurface does not distinguish started state
- return OK;
- }
-
- status_t signalEndOfInputStream() override {
- C2InputSurfaceEosTuning eos(true);
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- c2_status_t err = mSurface->getConfigurable()->config({&eos}, C2_MAY_BLOCK, &failures);
- if (err != C2_OK) {
- return UNKNOWN_ERROR;
- }
- return OK;
- }
-
- status_t configure(Config &config __unused) {
- // TODO
- return OK;
- }
-
-private:
- std::shared_ptr<Codec2Client::InputSurface> mSurface;
- std::shared_ptr<Codec2Client::InputSurfaceConnection> mConnection;
-};
-
-class GraphicBufferSourceWrapper : public InputSurfaceWrapper {
-public:
- typedef hardware::media::omx::V1_0::Status OmxStatus;
-
- GraphicBufferSourceWrapper(
- const sp<IGraphicBufferSource> &source,
- uint32_t width,
- uint32_t height)
- : mSource(source), mWidth(width), mHeight(height) {
- mDataSpace = HAL_DATASPACE_BT709;
- }
- ~GraphicBufferSourceWrapper() override = default;
-
- status_t connect(const std::shared_ptr<Codec2Client::Component> &comp) override {
- mNode = new C2OMXNode(comp);
- mNode->setFrameSize(mWidth, mHeight);
-
- // NOTE: we do not use/pass through color aspects from GraphicBufferSource as we
- // communicate that directly to the component.
- mSource->configure(
- new hardware::media::omx::V1_0::utils::TWOmxNode(mNode),
- static_cast<hardware::graphics::common::V1_0::Dataspace>(mDataSpace));
- return OK;
- }
-
- void disconnect() override {
- if (mNode == nullptr) {
- return;
- }
- sp<IOMXBufferSource> source = mNode->getSource();
- if (source == nullptr) {
- ALOGD("GBSWrapper::disconnect: node is not configured with OMXBufferSource.");
- return;
- }
- source->onOmxIdle();
- source->onOmxLoaded();
- mNode.clear();
- }
-
- status_t GetStatus(hardware::Return<OmxStatus> &&status) {
- status_t err = OK;
- if (!status.isOk()) {
- err = static_cast<status_t>(status.withDefault(OmxStatus::UNKNOWN_ERROR));
- } else if (status.isDeadObject()) {
- err = DEAD_OBJECT;
- } else {
- err = UNKNOWN_ERROR;
- }
- return err;
- }
-
- status_t start() override {
- sp<IOMXBufferSource> source = mNode->getSource();
- if (source == nullptr) {
- return NO_INIT;
- }
- constexpr size_t kNumSlots = 16;
- for (size_t i = 0; i < kNumSlots; ++i) {
- source->onInputBufferAdded(i);
- }
-
- source->onOmxExecuting();
- return OK;
- }
-
- status_t signalEndOfInputStream() override {
- return GetStatus(mSource->signalEndOfInputStream());
- }
-
- status_t configure(Config &config) {
- std::stringstream status;
- status_t err = OK;
-
- // handle each configuration granually, in case we need to handle part of the configuration
- // elsewhere
-
- // TRICKY: we do not unset frame delay repeating
- if (config.mMinFps > 0 && config.mMinFps != mConfig.mMinFps) {
- int64_t us = 1e6 / config.mMinFps + 0.5;
- status_t res = GetStatus(mSource->setRepeatPreviousFrameDelayUs(us));
- status << " minFps=" << config.mMinFps << " => repeatDelayUs=" << us;
- if (res != OK) {
- status << " (=> " << asString(res) << ")";
- err = res;
- }
- mConfig.mMinFps = config.mMinFps;
- }
-
- // pts gap
- if (config.mMinAdjustedFps > 0 || config.mFixedAdjustedFps > 0) {
- if (mNode != nullptr) {
- OMX_PARAM_U32TYPE ptrGapParam = {};
- ptrGapParam.nSize = sizeof(OMX_PARAM_U32TYPE);
- ptrGapParam.nU32 = (config.mMinAdjustedFps > 0)
- ? c2_min(INT32_MAX + 0., 1e6 / config.mMinAdjustedFps + 0.5)
- : c2_max(0. - INT32_MAX, -1e6 / config.mFixedAdjustedFps - 0.5);
- (void)mNode->setParameter(
- (OMX_INDEXTYPE)OMX_IndexParamMaxFrameDurationForBitrateControl,
- &ptrGapParam, sizeof(ptrGapParam));
- }
- }
-
- // max fps
- // TRICKY: we do not unset max fps to 0 unless using fixed fps
- if ((config.mMaxFps > 0 || (config.mFixedAdjustedFps > 0 && config.mMaxFps == 0))
- && config.mMaxFps != mConfig.mMaxFps) {
- status_t res = GetStatus(mSource->setMaxFps(config.mMaxFps));
- status << " maxFps=" << config.mMaxFps;
- if (res != OK) {
- status << " (=> " << asString(res) << ")";
- err = res;
- }
- mConfig.mMaxFps = config.mMaxFps;
- }
-
- if (config.mTimeOffsetUs != mConfig.mTimeOffsetUs) {
- status_t res = GetStatus(mSource->setTimeOffsetUs(config.mTimeOffsetUs));
- status << " timeOffset " << config.mTimeOffsetUs << "us";
- if (res != OK) {
- status << " (=> " << asString(res) << ")";
- err = res;
- }
- mConfig.mTimeOffsetUs = config.mTimeOffsetUs;
- }
-
- if (config.mCaptureFps != mConfig.mCaptureFps || config.mCodedFps != mConfig.mCodedFps) {
- status_t res =
- GetStatus(mSource->setTimeLapseConfig(config.mCodedFps, config.mCaptureFps));
- status << " timeLapse " << config.mCaptureFps << "fps as " << config.mCodedFps << "fps";
- if (res != OK) {
- status << " (=> " << asString(res) << ")";
- err = res;
- }
- mConfig.mCaptureFps = config.mCaptureFps;
- mConfig.mCodedFps = config.mCodedFps;
- }
-
- if (config.mStartAtUs != mConfig.mStartAtUs
- || (config.mStopped != mConfig.mStopped && !config.mStopped)) {
- status_t res = GetStatus(mSource->setStartTimeUs(config.mStartAtUs));
- status << " start at " << config.mStartAtUs << "us";
- if (res != OK) {
- status << " (=> " << asString(res) << ")";
- err = res;
- }
- mConfig.mStartAtUs = config.mStartAtUs;
- mConfig.mStopped = config.mStopped;
- }
-
- // suspend-resume
- if (config.mSuspended != mConfig.mSuspended) {
- status_t res = GetStatus(mSource->setSuspend(config.mSuspended, config.mSuspendAtUs));
- status << " " << (config.mSuspended ? "suspend" : "resume")
- << " at " << config.mSuspendAtUs << "us";
- if (res != OK) {
- status << " (=> " << asString(res) << ")";
- err = res;
- }
- mConfig.mSuspended = config.mSuspended;
- mConfig.mSuspendAtUs = config.mSuspendAtUs;
- }
-
- if (config.mStopped != mConfig.mStopped && config.mStopped) {
- status_t res = GetStatus(mSource->setStopTimeUs(config.mStopAtUs));
- status << " stop at " << config.mStopAtUs << "us";
- if (res != OK) {
- status << " (=> " << asString(res) << ")";
- err = res;
- } else {
- status << " delayUs";
- hardware::Return<void> trans = mSource->getStopTimeOffsetUs(
- [&res, &delayUs = config.mInputDelayUs](auto status, auto stopTimeOffsetUs) {
- res = static_cast<status_t>(status);
- delayUs = stopTimeOffsetUs;
- });
- if (!trans.isOk()) {
- res = trans.isDeadObject() ? DEAD_OBJECT : UNKNOWN_ERROR;
- }
- if (res != OK) {
- status << " (=> " << asString(res) << ")";
- } else {
- status << "=" << config.mInputDelayUs << "us";
- }
- mConfig.mInputDelayUs = config.mInputDelayUs;
- }
- mConfig.mStopAtUs = config.mStopAtUs;
- mConfig.mStopped = config.mStopped;
- }
-
- // color aspects (android._color-aspects)
-
- // consumer usage
- ALOGD("ISConfig%s", status.str().c_str());
- return err;
- }
-
-private:
- sp<IGraphicBufferSource> mSource;
- sp<C2OMXNode> mNode;
- uint32_t mWidth;
- uint32_t mHeight;
- Config mConfig;
-};
-
-class Codec2ClientInterfaceWrapper : public C2ComponentStore {
- std::shared_ptr<Codec2Client> mClient;
-
-public:
- Codec2ClientInterfaceWrapper(std::shared_ptr<Codec2Client> client)
- : mClient(client) { }
-
- virtual ~Codec2ClientInterfaceWrapper() = default;
-
- virtual c2_status_t config_sm(
- const std::vector<C2Param *> ¶ms,
- std::vector<std::unique_ptr<C2SettingResult>> *const failures) {
- return mClient->config(params, C2_MAY_BLOCK, failures);
- };
-
- virtual c2_status_t copyBuffer(
- std::shared_ptr<C2GraphicBuffer>,
- std::shared_ptr<C2GraphicBuffer>) {
- return C2_OMITTED;
- }
-
- virtual c2_status_t createComponent(
- C2String, std::shared_ptr<C2Component> *const component) {
- component->reset();
- return C2_OMITTED;
- }
-
- virtual c2_status_t createInterface(
- C2String, std::shared_ptr<C2ComponentInterface> *const interface) {
- interface->reset();
- return C2_OMITTED;
- }
-
- virtual c2_status_t query_sm(
- const std::vector<C2Param *> &stackParams,
- const std::vector<C2Param::Index> &heapParamIndices,
- std::vector<std::unique_ptr<C2Param>> *const heapParams) const {
- return mClient->query(stackParams, heapParamIndices, C2_MAY_BLOCK, heapParams);
- }
-
- virtual c2_status_t querySupportedParams_nb(
- std::vector<std::shared_ptr<C2ParamDescriptor>> *const params) const {
- return mClient->querySupportedParams(params);
- }
-
- virtual c2_status_t querySupportedValues_sm(
- std::vector<C2FieldSupportedValuesQuery> &fields) const {
- return mClient->querySupportedValues(fields, C2_MAY_BLOCK);
- }
-
- virtual C2String getName() const {
- return mClient->getName();
- }
-
- virtual std::shared_ptr<C2ParamReflector> getParamReflector() const {
- return mClient->getParamReflector();
- }
-
- virtual std::vector<std::shared_ptr<const C2Component::Traits>> listComponents() {
- return std::vector<std::shared_ptr<const C2Component::Traits>>();
- }
-};
-
-} // namespace
-
-// CCodec::ClientListener
-
-struct CCodec::ClientListener : public Codec2Client::Listener {
-
- explicit ClientListener(const wp<CCodec> &codec) : mCodec(codec) {}
-
- virtual void onWorkDone(
- const std::weak_ptr<Codec2Client::Component>& component,
- std::list<std::unique_ptr<C2Work>>& workItems,
- size_t numDiscardedInputBuffers) override {
- (void)component;
- sp<CCodec> codec(mCodec.promote());
- if (!codec) {
- return;
- }
- codec->onWorkDone(workItems, numDiscardedInputBuffers);
- }
-
- virtual void onTripped(
- const std::weak_ptr<Codec2Client::Component>& component,
- const std::vector<std::shared_ptr<C2SettingResult>>& settingResult
- ) override {
- // TODO
- (void)component;
- (void)settingResult;
- }
-
- virtual void onError(
- const std::weak_ptr<Codec2Client::Component>& component,
- uint32_t errorCode) override {
- // TODO
- (void)component;
- (void)errorCode;
- }
-
- virtual void onDeath(
- const std::weak_ptr<Codec2Client::Component>& component) override {
- { // Log the death of the component.
- std::shared_ptr<Codec2Client::Component> comp = component.lock();
- if (!comp) {
- ALOGE("Codec2 component died.");
- } else {
- ALOGE("Codec2 component \"%s\" died.", comp->getName().c_str());
- }
- }
-
- // Report to MediaCodec.
- sp<CCodec> codec(mCodec.promote());
- if (!codec || !codec->mCallback) {
- return;
- }
- codec->mCallback->onError(DEAD_OBJECT, ACTION_CODE_FATAL);
- }
-
- virtual void onFramesRendered(
- const std::vector<RenderedFrame>& renderedFrames) override {
- // TODO
- (void)renderedFrames;
- }
-
- virtual void onInputBufferDone(
- const std::shared_ptr<C2Buffer>& buffer) override {
- sp<CCodec> codec(mCodec.promote());
- if (codec) {
- codec->onInputBufferDone(buffer);
- }
- }
-
-private:
- wp<CCodec> mCodec;
-};
-
-// CCodecCallbackImpl
-
-class CCodecCallbackImpl : public CCodecCallback {
-public:
- explicit CCodecCallbackImpl(CCodec *codec) : mCodec(codec) {}
- ~CCodecCallbackImpl() override = default;
-
- void onError(status_t err, enum ActionCode actionCode) override {
- mCodec->mCallback->onError(err, actionCode);
- }
-
- void onOutputFramesRendered(int64_t mediaTimeUs, nsecs_t renderTimeNs) override {
- mCodec->mCallback->onOutputFramesRendered(
- {RenderedFrameInfo(mediaTimeUs, renderTimeNs)});
- }
-
- void onWorkQueued(bool eos) override {
- mCodec->onWorkQueued(eos);
- }
-
- void onOutputBuffersChanged() override {
- mCodec->mCallback->onOutputBuffersChanged();
- }
-
-private:
- CCodec *mCodec;
-};
-
-// CCodec
-
-CCodec::CCodec()
- : mChannel(new CCodecBufferChannel(std::make_shared<CCodecCallbackImpl>(this))),
- mQueuedWorkCount(0) {
-}
-
-CCodec::~CCodec() {
-}
-
-std::shared_ptr<BufferChannelBase> CCodec::getBufferChannel() {
- return mChannel;
-}
-
-status_t CCodec::tryAndReportOnError(std::function<status_t()> job) {
- status_t err = job();
- if (err != C2_OK) {
- mCallback->onError(err, ACTION_CODE_FATAL);
- }
- return err;
-}
-
-void CCodec::initiateAllocateComponent(const sp<AMessage> &msg) {
- auto setAllocating = [this] {
- Mutexed<State>::Locked state(mState);
- if (state->get() != RELEASED) {
- return INVALID_OPERATION;
- }
- state->set(ALLOCATING);
- return OK;
- };
- if (tryAndReportOnError(setAllocating) != OK) {
- return;
- }
-
- sp<RefBase> codecInfo;
- CHECK(msg->findObject("codecInfo", &codecInfo));
- // For Codec 2.0 components, componentName == codecInfo->getCodecName().
-
- sp<AMessage> allocMsg(new AMessage(kWhatAllocate, this));
- allocMsg->setObject("codecInfo", codecInfo);
- allocMsg->post();
-}
-
-void CCodec::allocate(const sp<MediaCodecInfo> &codecInfo) {
- if (codecInfo == nullptr) {
- mCallback->onError(UNKNOWN_ERROR, ACTION_CODE_FATAL);
- return;
- }
- ALOGD("allocate(%s)", codecInfo->getCodecName());
- mClientListener.reset(new ClientListener(this));
-
- AString componentName = codecInfo->getCodecName();
- std::shared_ptr<Codec2Client> client;
-
- // set up preferred component store to access vendor store parameters
- client = Codec2Client::CreateFromService("default", false);
- if (client) {
- ALOGI("setting up '%s' as default (vendor) store", client->getInstanceName().c_str());
- SetPreferredCodec2ComponentStore(
- std::make_shared<Codec2ClientInterfaceWrapper>(client));
- }
-
- std::shared_ptr<Codec2Client::Component> comp =
- Codec2Client::CreateComponentByName(
- componentName.c_str(),
- mClientListener,
- &client);
- if (!comp) {
- ALOGE("Failed Create component: %s", componentName.c_str());
- Mutexed<State>::Locked state(mState);
- state->set(RELEASED);
- state.unlock();
- mCallback->onError(UNKNOWN_ERROR, ACTION_CODE_FATAL);
- state.lock();
- return;
- }
- ALOGI("Created component [%s]", componentName.c_str());
- mChannel->setComponent(comp);
- auto setAllocated = [this, comp, client] {
- Mutexed<State>::Locked state(mState);
- if (state->get() != ALLOCATING) {
- state->set(RELEASED);
- return UNKNOWN_ERROR;
- }
- state->set(ALLOCATED);
- state->comp = comp;
- mClient = client;
- return OK;
- };
- if (tryAndReportOnError(setAllocated) != OK) {
- return;
- }
-
- // initialize config here in case setParameters is called prior to configure
- Mutexed<Config>::Locked config(mConfig);
- status_t err = config->initialize(mClient, comp);
- if (err != OK) {
- ALOGW("Failed to initialize configuration support");
- // TODO: report error once we complete implementation.
- }
- config->queryConfiguration(comp);
-
- mCallback->onComponentAllocated(componentName.c_str());
-}
-
-void CCodec::initiateConfigureComponent(const sp<AMessage> &format) {
- auto checkAllocated = [this] {
- Mutexed<State>::Locked state(mState);
- return (state->get() != ALLOCATED) ? UNKNOWN_ERROR : OK;
- };
- if (tryAndReportOnError(checkAllocated) != OK) {
- return;
- }
-
- sp<AMessage> msg(new AMessage(kWhatConfigure, this));
- msg->setMessage("format", format);
- msg->post();
-}
-
-void CCodec::configure(const sp<AMessage> &msg) {
- std::shared_ptr<Codec2Client::Component> comp;
- auto checkAllocated = [this, &comp] {
- Mutexed<State>::Locked state(mState);
- if (state->get() != ALLOCATED) {
- state->set(RELEASED);
- return UNKNOWN_ERROR;
- }
- comp = state->comp;
- return OK;
- };
- if (tryAndReportOnError(checkAllocated) != OK) {
- return;
- }
-
- auto doConfig = [msg, comp, this]() -> status_t {
- AString mime;
- if (!msg->findString("mime", &mime)) {
- return BAD_VALUE;
- }
-
- int32_t encoder;
- if (!msg->findInt32("encoder", &encoder)) {
- encoder = false;
- }
-
- // TODO: read from intf()
- if ((!encoder) != (comp->getName().find("encoder") == std::string::npos)) {
- return UNKNOWN_ERROR;
- }
-
- int32_t storeMeta;
- if (encoder
- && msg->findInt32("android._input-metadata-buffer-type", &storeMeta)
- && storeMeta != kMetadataBufferTypeInvalid) {
- if (storeMeta != kMetadataBufferTypeANWBuffer) {
- ALOGD("Only ANW buffers are supported for legacy metadata mode");
- return BAD_VALUE;
- }
- mChannel->setMetaMode(CCodecBufferChannel::MODE_ANW);
- }
-
- sp<RefBase> obj;
- sp<Surface> surface;
- if (msg->findObject("native-window", &obj)) {
- surface = static_cast<Surface *>(obj.get());
- setSurface(surface);
- }
-
- Mutexed<Config>::Locked config(mConfig);
- config->mUsingSurface = surface != nullptr;
-
- /*
- * Handle input surface configuration
- */
- if ((config->mDomain & (Config::IS_VIDEO | Config::IS_IMAGE))
- && (config->mDomain & Config::IS_ENCODER)) {
- config->mISConfig.reset(new InputSurfaceWrapper::Config{});
- {
- config->mISConfig->mMinFps = 0;
- int64_t value;
- if (msg->findInt64("repeat-previous-frame-after", &value) && value > 0) {
- config->mISConfig->mMinFps = 1e6 / value;
- }
- (void)msg->findFloat("max-fps-to-encoder", &config->mISConfig->mMaxFps);
- config->mISConfig->mMinAdjustedFps = 0;
- config->mISConfig->mFixedAdjustedFps = 0;
- if (msg->findInt64("max-pts-gap-to-encoder", &value)) {
- if (value < 0 && value >= INT32_MIN) {
- config->mISConfig->mFixedAdjustedFps = -1e6 / value;
- } else if (value > 0 && value <= INT32_MAX) {
- config->mISConfig->mMinAdjustedFps = 1e6 / value;
- }
- }
- }
-
- {
- double value;
- if (msg->findDouble("time-lapse-fps", &value)) {
- config->mISConfig->mCaptureFps = value;
- (void)msg->findAsFloat(KEY_FRAME_RATE, &config->mISConfig->mCodedFps);
- }
- }
-
- {
- config->mISConfig->mSuspended = false;
- config->mISConfig->mSuspendAtUs = -1;
- int32_t value;
- if (msg->findInt32("create-input-buffers-suspended", &value) && value) {
- config->mISConfig->mSuspended = true;
- }
- }
- }
-
- /*
- * Handle desired color format.
- */
- if ((config->mDomain & (Config::IS_VIDEO | Config::IS_IMAGE))) {
- int32_t format = -1;
- if (!msg->findInt32(KEY_COLOR_FORMAT, &format)) {
- /*
- * Also handle default color format (encoders require color format, so this is only
- * needed for decoders.
- */
- if (!(config->mDomain & Config::IS_ENCODER)) {
- format = (surface == nullptr) ? COLOR_FormatYUV420Planar : COLOR_FormatSurface;
- }
- }
-
- if (format >= 0) {
- msg->setInt32("android._color-format", format);
- }
- }
-
- std::vector<std::unique_ptr<C2Param>> configUpdate;
- status_t err = config->getConfigUpdateFromSdkParams(
- comp, msg, Config::IS_CONFIG, C2_DONT_BLOCK, &configUpdate);
- if (err != OK) {
- ALOGW("failed to convert configuration to c2 params");
- }
- err = config->setParameters(comp, configUpdate, C2_DONT_BLOCK);
- if (err != OK) {
- ALOGW("failed to configure c2 params");
- return err;
- }
-
- std::vector<std::unique_ptr<C2Param>> params;
- C2StreamUsageTuning::input usage(0u, 0u);
- C2StreamMaxBufferSizeInfo::input maxInputSize(0u, 0u);
-
- std::initializer_list<C2Param::Index> indices {
- };
- c2_status_t c2err = comp->query(
- { &usage, &maxInputSize },
- indices,
- C2_DONT_BLOCK,
- ¶ms);
- if (c2err != C2_OK && c2err != C2_BAD_INDEX) {
- ALOGE("Failed to query component interface: %d", c2err);
- return UNKNOWN_ERROR;
- }
- if (params.size() != indices.size()) {
- ALOGE("Component returns wrong number of params: expected %zu actual %zu",
- indices.size(), params.size());
- return UNKNOWN_ERROR;
- }
- if (usage && (usage.value & C2MemoryUsage::CPU_READ)) {
- config->mInputFormat->setInt32("using-sw-read-often", true);
- }
-
- // NOTE: we don't blindly use client specified input size if specified as clients
- // at times specify too small size. Instead, mimic the behavior from OMX, where the
- // client specified size is only used to ask for bigger buffers than component suggested
- // size.
- int32_t clientInputSize = 0;
- bool clientSpecifiedInputSize =
- msg->findInt32(KEY_MAX_INPUT_SIZE, &clientInputSize) && clientInputSize > 0;
- // TEMP: enforce minimum buffer size of 1MB for video decoders
- // and 16K / 4K for audio encoders/decoders
- if (maxInputSize.value == 0) {
- if (config->mDomain & Config::IS_AUDIO) {
- maxInputSize.value = encoder ? 16384 : 4096;
- } else if (!encoder) {
- maxInputSize.value = 1048576u;
- }
- }
-
- // verify that CSD fits into this size (if defined)
- if ((config->mDomain & Config::IS_DECODER) && maxInputSize.value > 0) {
- sp<ABuffer> csd;
- for (size_t ix = 0; msg->findBuffer(StringPrintf("csd-%zu", ix).c_str(), &csd); ++ix) {
- if (csd && csd->size() > maxInputSize.value) {
- maxInputSize.value = csd->size();
- }
- }
- }
-
- // TODO: do this based on component requiring linear allocator for input
- if ((config->mDomain & Config::IS_DECODER) || (config->mDomain & Config::IS_AUDIO)) {
- if (clientSpecifiedInputSize) {
- // Warn that we're overriding client's max input size if necessary.
- if ((uint32_t)clientInputSize < maxInputSize.value) {
- ALOGD("client requested max input size %d, which is smaller than "
- "what component recommended (%u); overriding with component "
- "recommendation.", clientInputSize, maxInputSize.value);
- ALOGW("This behavior is subject to change. It is recommended that "
- "app developers double check whether the requested "
- "max input size is in reasonable range.");
- } else {
- maxInputSize.value = clientInputSize;
- }
- }
- // Pass max input size on input format to the buffer channel (if supplied by the
- // component or by a default)
- if (maxInputSize.value) {
- config->mInputFormat->setInt32(
- KEY_MAX_INPUT_SIZE,
- (int32_t)(c2_min(maxInputSize.value, uint32_t(INT32_MAX))));
- }
- }
-
- if ((config->mDomain & (Config::IS_VIDEO | Config::IS_IMAGE))) {
- // propagate HDR static info to output format for both encoders and decoders
- // if component supports this info, we will update from component, but only the raw port,
- // so don't propagate if component already filled it in.
- sp<ABuffer> hdrInfo;
- if (msg->findBuffer(KEY_HDR_STATIC_INFO, &hdrInfo)
- && !config->mOutputFormat->findBuffer(KEY_HDR_STATIC_INFO, &hdrInfo)) {
- config->mOutputFormat->setBuffer(KEY_HDR_STATIC_INFO, hdrInfo);
- }
-
- // Set desired color format from configuration parameter
- int32_t format;
- if (msg->findInt32("android._color-format", &format)) {
- if (config->mDomain & Config::IS_ENCODER) {
- config->mInputFormat->setInt32(KEY_COLOR_FORMAT, format);
- } else {
- config->mOutputFormat->setInt32(KEY_COLOR_FORMAT, format);
- }
- }
- }
-
- // propagate encoder delay and padding to output format
- if ((config->mDomain & Config::IS_DECODER) && (config->mDomain & Config::IS_AUDIO)) {
- int delay = 0;
- if (msg->findInt32("encoder-delay", &delay)) {
- config->mOutputFormat->setInt32("encoder-delay", delay);
- }
- int padding = 0;
- if (msg->findInt32("encoder-padding", &padding)) {
- config->mOutputFormat->setInt32("encoder-padding", padding);
- }
- }
-
- // set channel-mask
- if (config->mDomain & Config::IS_AUDIO) {
- int32_t mask;
- if (msg->findInt32(KEY_CHANNEL_MASK, &mask)) {
- if (config->mDomain & Config::IS_ENCODER) {
- config->mInputFormat->setInt32(KEY_CHANNEL_MASK, mask);
- } else {
- config->mOutputFormat->setInt32(KEY_CHANNEL_MASK, mask);
- }
- }
- }
-
- ALOGD("setup formats input: %s and output: %s",
- config->mInputFormat->debugString().c_str(),
- config->mOutputFormat->debugString().c_str());
- return OK;
- };
- if (tryAndReportOnError(doConfig) != OK) {
- return;
- }
-
- Mutexed<Config>::Locked config(mConfig);
-
- mCallback->onComponentConfigured(config->mInputFormat, config->mOutputFormat);
-}
-
-void CCodec::initiateCreateInputSurface() {
- status_t err = [this] {
- Mutexed<State>::Locked state(mState);
- if (state->get() != ALLOCATED) {
- return UNKNOWN_ERROR;
- }
- // TODO: read it from intf() properly.
- if (state->comp->getName().find("encoder") == std::string::npos) {
- return INVALID_OPERATION;
- }
- return OK;
- }();
- if (err != OK) {
- mCallback->onInputSurfaceCreationFailed(err);
- return;
- }
-
- (new AMessage(kWhatCreateInputSurface, this))->post();
-}
-
-void CCodec::createInputSurface() {
- status_t err;
- sp<IGraphicBufferProducer> bufferProducer;
-
- sp<AMessage> inputFormat;
- sp<AMessage> outputFormat;
- {
- Mutexed<Config>::Locked config(mConfig);
- inputFormat = config->mInputFormat;
- outputFormat = config->mOutputFormat;
- }
-
- std::shared_ptr<PersistentSurface> persistentSurface(CreateInputSurface());
-
- sp<hidl::base::V1_0::IBase> hidlTarget = persistentSurface->getHidlTarget();
- sp<IInputSurface> inputSurface = IInputSurface::castFrom(hidlTarget);
- sp<IGraphicBufferSource> gbs = IGraphicBufferSource::castFrom(hidlTarget);
-
- if (inputSurface) {
- err = setupInputSurface(std::make_shared<C2InputSurfaceWrapper>(
- std::make_shared<Codec2Client::InputSurface>(inputSurface)));
- bufferProducer = new H2BGraphicBufferProducer(inputSurface);
- } else if (gbs) {
- int32_t width = 0;
- (void)outputFormat->findInt32("width", &width);
- int32_t height = 0;
- (void)outputFormat->findInt32("height", &height);
- err = setupInputSurface(std::make_shared<GraphicBufferSourceWrapper>(gbs, width, height));
- bufferProducer = persistentSurface->getBufferProducer();
- } else {
- ALOGE("Corrupted input surface");
- mCallback->onInputSurfaceCreationFailed(UNKNOWN_ERROR);
- return;
- }
-
- if (err != OK) {
- ALOGE("Failed to set up input surface: %d", err);
- mCallback->onInputSurfaceCreationFailed(err);
- return;
- }
-
- mCallback->onInputSurfaceCreated(
- inputFormat,
- outputFormat,
- new BufferProducerWrapper(bufferProducer));
-}
-
-status_t CCodec::setupInputSurface(const std::shared_ptr<InputSurfaceWrapper> &surface) {
- Mutexed<Config>::Locked config(mConfig);
- config->mUsingSurface = true;
-
- // we are now using surface - apply default color aspects to input format - as well as
- // get dataspace
- bool inputFormatChanged = config->updateFormats(config->IS_INPUT);
- ALOGD("input format %s to %s",
- inputFormatChanged ? "changed" : "unchanged",
- config->mInputFormat->debugString().c_str());
-
- // configure dataspace
- static_assert(sizeof(int32_t) == sizeof(android_dataspace), "dataspace size mismatch");
- android_dataspace dataSpace = HAL_DATASPACE_UNKNOWN;
- (void)config->mInputFormat->findInt32("android._dataspace", (int32_t*)&dataSpace);
- surface->setDataSpace(dataSpace);
-
- status_t err = mChannel->setInputSurface(surface);
- if (err != OK) {
- // undo input format update
- config->mUsingSurface = false;
- (void)config->updateFormats(config->IS_INPUT);
- return err;
- }
- config->mInputSurface = surface;
-
- if (config->mISConfig) {
- surface->configure(*config->mISConfig);
- } else {
- ALOGD("ISConfig: no configuration");
- }
-
- return OK;
-}
-
-void CCodec::initiateSetInputSurface(const sp<PersistentSurface> &surface) {
- sp<AMessage> msg = new AMessage(kWhatSetInputSurface, this);
- msg->setObject("surface", surface);
- msg->post();
-}
-
-void CCodec::setInputSurface(const sp<PersistentSurface> &surface) {
- sp<AMessage> inputFormat;
- sp<AMessage> outputFormat;
- {
- Mutexed<Config>::Locked config(mConfig);
- inputFormat = config->mInputFormat;
- outputFormat = config->mOutputFormat;
- }
- sp<hidl::base::V1_0::IBase> hidlTarget = surface->getHidlTarget();
- sp<IInputSurface> inputSurface = IInputSurface::castFrom(hidlTarget);
- sp<IGraphicBufferSource> gbs = IGraphicBufferSource::castFrom(hidlTarget);
- if (inputSurface) {
- status_t err = setupInputSurface(std::make_shared<C2InputSurfaceWrapper>(
- std::make_shared<Codec2Client::InputSurface>(inputSurface)));
- if (err != OK) {
- ALOGE("Failed to set up input surface: %d", err);
- mCallback->onInputSurfaceDeclined(err);
- return;
- }
- } else if (gbs) {
- int32_t width = 0;
- (void)outputFormat->findInt32("width", &width);
- int32_t height = 0;
- (void)outputFormat->findInt32("height", &height);
- status_t err = setupInputSurface(std::make_shared<GraphicBufferSourceWrapper>(
- gbs, width, height));
- if (err != OK) {
- ALOGE("Failed to set up input surface: %d", err);
- mCallback->onInputSurfaceDeclined(err);
- return;
- }
- } else {
- ALOGE("Failed to set input surface: Corrupted surface.");
- mCallback->onInputSurfaceDeclined(UNKNOWN_ERROR);
- return;
- }
- mCallback->onInputSurfaceAccepted(inputFormat, outputFormat);
-}
-
-void CCodec::initiateStart() {
- auto setStarting = [this] {
- Mutexed<State>::Locked state(mState);
- if (state->get() != ALLOCATED) {
- return UNKNOWN_ERROR;
- }
- state->set(STARTING);
- return OK;
- };
- if (tryAndReportOnError(setStarting) != OK) {
- return;
- }
-
- (new AMessage(kWhatStart, this))->post();
-}
-
-void CCodec::start() {
- std::shared_ptr<Codec2Client::Component> comp;
- auto checkStarting = [this, &comp] {
- Mutexed<State>::Locked state(mState);
- if (state->get() != STARTING) {
- return UNKNOWN_ERROR;
- }
- comp = state->comp;
- return OK;
- };
- if (tryAndReportOnError(checkStarting) != OK) {
- return;
- }
-
- c2_status_t err = comp->start();
- if (err != C2_OK) {
- mCallback->onError(toStatusT(err, C2_OPERATION_Component_start),
- ACTION_CODE_FATAL);
- return;
- }
- sp<AMessage> inputFormat;
- sp<AMessage> outputFormat;
- status_t err2 = OK;
- {
- Mutexed<Config>::Locked config(mConfig);
- inputFormat = config->mInputFormat;
- outputFormat = config->mOutputFormat;
- if (config->mInputSurface) {
- err2 = config->mInputSurface->start();
- }
- }
- if (err2 != OK) {
- mCallback->onError(err2, ACTION_CODE_FATAL);
- return;
- }
- err2 = mChannel->start(inputFormat, outputFormat);
- if (err2 != OK) {
- mCallback->onError(err2, ACTION_CODE_FATAL);
- return;
- }
-
- auto setRunning = [this] {
- Mutexed<State>::Locked state(mState);
- if (state->get() != STARTING) {
- return UNKNOWN_ERROR;
- }
- state->set(RUNNING);
- return OK;
- };
- if (tryAndReportOnError(setRunning) != OK) {
- return;
- }
- mCallback->onStartCompleted();
-
- (void)mChannel->requestInitialInputBuffers();
-}
-
-void CCodec::initiateShutdown(bool keepComponentAllocated) {
- if (keepComponentAllocated) {
- initiateStop();
- } else {
- initiateRelease();
- }
-}
-
-void CCodec::initiateStop() {
- {
- Mutexed<State>::Locked state(mState);
- if (state->get() == ALLOCATED
- || state->get() == RELEASED
- || state->get() == STOPPING
- || state->get() == RELEASING) {
- // We're already stopped, released, or doing it right now.
- state.unlock();
- mCallback->onStopCompleted();
- state.lock();
- return;
- }
- state->set(STOPPING);
- }
-
- mChannel->stop();
- (new AMessage(kWhatStop, this))->post();
-}
-
-void CCodec::stop() {
- std::shared_ptr<Codec2Client::Component> comp;
- {
- Mutexed<State>::Locked state(mState);
- if (state->get() == RELEASING) {
- state.unlock();
- // We're already stopped or release is in progress.
- mCallback->onStopCompleted();
- state.lock();
- return;
- } else if (state->get() != STOPPING) {
- state.unlock();
- mCallback->onError(UNKNOWN_ERROR, ACTION_CODE_FATAL);
- state.lock();
- return;
- }
- comp = state->comp;
- }
- status_t err = comp->stop();
- if (err != C2_OK) {
- // TODO: convert err into status_t
- mCallback->onError(UNKNOWN_ERROR, ACTION_CODE_FATAL);
- }
-
- {
- Mutexed<Config>::Locked config(mConfig);
- if (config->mInputSurface) {
- config->mInputSurface->disconnect();
- config->mInputSurface = nullptr;
- }
- }
- {
- Mutexed<State>::Locked state(mState);
- if (state->get() == STOPPING) {
- state->set(ALLOCATED);
- }
- }
- mCallback->onStopCompleted();
-}
-
-void CCodec::initiateRelease(bool sendCallback /* = true */) {
- bool clearInputSurfaceIfNeeded = false;
- {
- Mutexed<State>::Locked state(mState);
- if (state->get() == RELEASED || state->get() == RELEASING) {
- // We're already released or doing it right now.
- if (sendCallback) {
- state.unlock();
- mCallback->onReleaseCompleted();
- state.lock();
- }
- return;
- }
- if (state->get() == ALLOCATING) {
- state->set(RELEASING);
- // With the altered state allocate() would fail and clean up.
- if (sendCallback) {
- state.unlock();
- mCallback->onReleaseCompleted();
- state.lock();
- }
- return;
- }
- if (state->get() == STARTING
- || state->get() == RUNNING
- || state->get() == STOPPING) {
- // Input surface may have been started, so clean up is needed.
- clearInputSurfaceIfNeeded = true;
- }
- state->set(RELEASING);
- }
-
- if (clearInputSurfaceIfNeeded) {
- Mutexed<Config>::Locked config(mConfig);
- if (config->mInputSurface) {
- config->mInputSurface->disconnect();
- config->mInputSurface = nullptr;
- }
- }
-
- mChannel->stop();
- // thiz holds strong ref to this while the thread is running.
- sp<CCodec> thiz(this);
- std::thread([thiz, sendCallback] { thiz->release(sendCallback); }).detach();
-}
-
-void CCodec::release(bool sendCallback) {
- std::shared_ptr<Codec2Client::Component> comp;
- {
- Mutexed<State>::Locked state(mState);
- if (state->get() == RELEASED) {
- if (sendCallback) {
- state.unlock();
- mCallback->onReleaseCompleted();
- state.lock();
- }
- return;
- }
- comp = state->comp;
- }
- comp->release();
-
- {
- Mutexed<State>::Locked state(mState);
- state->set(RELEASED);
- state->comp.reset();
- }
- if (sendCallback) {
- mCallback->onReleaseCompleted();
- }
-}
-
-status_t CCodec::setSurface(const sp<Surface> &surface) {
- return mChannel->setSurface(surface);
-}
-
-void CCodec::signalFlush() {
- status_t err = [this] {
- Mutexed<State>::Locked state(mState);
- if (state->get() == FLUSHED) {
- return ALREADY_EXISTS;
- }
- if (state->get() != RUNNING) {
- return UNKNOWN_ERROR;
- }
- state->set(FLUSHING);
- return OK;
- }();
- switch (err) {
- case ALREADY_EXISTS:
- mCallback->onFlushCompleted();
- return;
- case OK:
- break;
- default:
- mCallback->onError(err, ACTION_CODE_FATAL);
- return;
- }
-
- mChannel->stop();
- (new AMessage(kWhatFlush, this))->post();
-}
-
-void CCodec::flush() {
- std::shared_ptr<Codec2Client::Component> comp;
- auto checkFlushing = [this, &comp] {
- Mutexed<State>::Locked state(mState);
- if (state->get() != FLUSHING) {
- return UNKNOWN_ERROR;
- }
- comp = state->comp;
- return OK;
- };
- if (tryAndReportOnError(checkFlushing) != OK) {
- return;
- }
-
- std::list<std::unique_ptr<C2Work>> flushedWork;
- c2_status_t err = comp->flush(C2Component::FLUSH_COMPONENT, &flushedWork);
- {
- Mutexed<std::list<std::unique_ptr<C2Work>>>::Locked queue(mWorkDoneQueue);
- flushedWork.splice(flushedWork.end(), *queue);
- }
- if (err != C2_OK) {
- // TODO: convert err into status_t
- mCallback->onError(UNKNOWN_ERROR, ACTION_CODE_FATAL);
- }
-
- mChannel->flush(flushedWork);
- subQueuedWorkCount(flushedWork.size());
-
- {
- Mutexed<State>::Locked state(mState);
- state->set(FLUSHED);
- }
- mCallback->onFlushCompleted();
-}
-
-void CCodec::signalResume() {
- auto setResuming = [this] {
- Mutexed<State>::Locked state(mState);
- if (state->get() != FLUSHED) {
- return UNKNOWN_ERROR;
- }
- state->set(RESUMING);
- return OK;
- };
- if (tryAndReportOnError(setResuming) != OK) {
- return;
- }
-
- (void)mChannel->start(nullptr, nullptr);
-
- {
- Mutexed<State>::Locked state(mState);
- if (state->get() != RESUMING) {
- state.unlock();
- mCallback->onError(UNKNOWN_ERROR, ACTION_CODE_FATAL);
- state.lock();
- return;
- }
- state->set(RUNNING);
- }
-
- (void)mChannel->requestInitialInputBuffers();
-}
-
-void CCodec::signalSetParameters(const sp<AMessage> ¶ms) {
- setParameters(params);
-}
-
-void CCodec::setParameters(const sp<AMessage> ¶ms) {
- std::shared_ptr<Codec2Client::Component> comp;
- auto checkState = [this, &comp] {
- Mutexed<State>::Locked state(mState);
- if (state->get() == RELEASED) {
- return INVALID_OPERATION;
- }
- comp = state->comp;
- return OK;
- };
- if (tryAndReportOnError(checkState) != OK) {
- return;
- }
-
- Mutexed<Config>::Locked config(mConfig);
-
- /**
- * Handle input surface parameters
- */
- if ((config->mDomain & (Config::IS_VIDEO | Config::IS_IMAGE))
- && (config->mDomain & Config::IS_ENCODER) && config->mInputSurface && config->mISConfig) {
- (void)params->findInt64("time-offset-us", &config->mISConfig->mTimeOffsetUs);
-
- if (params->findInt64("skip-frames-before", &config->mISConfig->mStartAtUs)) {
- config->mISConfig->mStopped = false;
- } else if (params->findInt64("stop-time-us", &config->mISConfig->mStopAtUs)) {
- config->mISConfig->mStopped = true;
- }
-
- int32_t value;
- if (params->findInt32("drop-input-frames", &value)) {
- config->mISConfig->mSuspended = value;
- config->mISConfig->mSuspendAtUs = -1;
- (void)params->findInt64("drop-start-time-us", &config->mISConfig->mSuspendAtUs);
- }
-
- (void)config->mInputSurface->configure(*config->mISConfig);
- if (config->mISConfig->mStopped) {
- config->mInputFormat->setInt64(
- "android._stop-time-offset-us", config->mISConfig->mInputDelayUs);
- }
- }
-
- std::vector<std::unique_ptr<C2Param>> configUpdate;
- (void)config->getConfigUpdateFromSdkParams(
- comp, params, Config::IS_PARAM, C2_MAY_BLOCK, &configUpdate);
- // Prefer to pass parameters to the buffer channel, so they can be synchronized with the frames.
- // Parameter synchronization is not defined when using input surface. For now, route
- // these directly to the component.
- if (config->mInputSurface == nullptr
- && (property_get_bool("debug.stagefright.ccodec_delayed_params", false)
- || comp->getName().find("c2.android.") == 0)) {
- mChannel->setParameters(configUpdate);
- } else {
- (void)config->setParameters(comp, configUpdate, C2_MAY_BLOCK);
- }
-}
-
-void CCodec::signalEndOfInputStream() {
- mCallback->onSignaledInputEOS(mChannel->signalEndOfInputStream());
-}
-
-void CCodec::signalRequestIDRFrame() {
- std::shared_ptr<Codec2Client::Component> comp;
- {
- Mutexed<State>::Locked state(mState);
- if (state->get() == RELEASED) {
- ALOGD("no IDR request sent since component is released");
- return;
- }
- comp = state->comp;
- }
- ALOGV("request IDR");
- Mutexed<Config>::Locked config(mConfig);
- std::vector<std::unique_ptr<C2Param>> params;
- params.push_back(
- std::make_unique<C2StreamRequestSyncFrameTuning::output>(0u, true));
- config->setParameters(comp, params, C2_MAY_BLOCK);
-}
-
-void CCodec::onWorkDone(std::list<std::unique_ptr<C2Work>> &workItems,
- size_t numDiscardedInputBuffers) {
- if (!workItems.empty()) {
- {
- Mutexed<std::list<size_t>>::Locked numDiscardedInputBuffersQueue(
- mNumDiscardedInputBuffersQueue);
- numDiscardedInputBuffersQueue->insert(
- numDiscardedInputBuffersQueue->end(),
- workItems.size() - 1, 0);
- numDiscardedInputBuffersQueue->emplace_back(
- numDiscardedInputBuffers);
- }
- {
- Mutexed<std::list<std::unique_ptr<C2Work>>>::Locked queue(mWorkDoneQueue);
- queue->splice(queue->end(), workItems);
- }
- }
- (new AMessage(kWhatWorkDone, this))->post();
-}
-
-void CCodec::onInputBufferDone(const std::shared_ptr<C2Buffer>& buffer) {
- mChannel->onInputBufferDone(buffer);
-}
-
-void CCodec::onMessageReceived(const sp<AMessage> &msg) {
- TimePoint now = std::chrono::steady_clock::now();
- CCodecWatchdog::getInstance()->watch(this);
- switch (msg->what()) {
- case kWhatAllocate: {
- // C2ComponentStore::createComponent() should return within 100ms.
- setDeadline(now, 150ms, "allocate");
- sp<RefBase> obj;
- CHECK(msg->findObject("codecInfo", &obj));
- allocate((MediaCodecInfo *)obj.get());
- break;
- }
- case kWhatConfigure: {
- // C2Component::commit_sm() should return within 5ms.
- setDeadline(now, 250ms, "configure");
- sp<AMessage> format;
- CHECK(msg->findMessage("format", &format));
- configure(format);
- break;
- }
- case kWhatStart: {
- // C2Component::start() should return within 500ms.
- setDeadline(now, 550ms, "start");
- mQueuedWorkCount = 0;
- start();
- break;
- }
- case kWhatStop: {
- // C2Component::stop() should return within 500ms.
- setDeadline(now, 550ms, "stop");
- stop();
-
- mQueuedWorkCount = 0;
- Mutexed<NamedTimePoint>::Locked deadline(mQueueDeadline);
- deadline->set(TimePoint::max(), "none");
- break;
- }
- case kWhatFlush: {
- // C2Component::flush_sm() should return within 5ms.
- setDeadline(now, 50ms, "flush");
- flush();
- break;
- }
- case kWhatCreateInputSurface: {
- // Surface operations may be briefly blocking.
- setDeadline(now, 100ms, "createInputSurface");
- createInputSurface();
- break;
- }
- case kWhatSetInputSurface: {
- // Surface operations may be briefly blocking.
- setDeadline(now, 100ms, "setInputSurface");
- sp<RefBase> obj;
- CHECK(msg->findObject("surface", &obj));
- sp<PersistentSurface> surface(static_cast<PersistentSurface *>(obj.get()));
- setInputSurface(surface);
- break;
- }
- case kWhatWorkDone: {
- std::unique_ptr<C2Work> work;
- size_t numDiscardedInputBuffers;
- bool shouldPost = false;
- {
- Mutexed<std::list<std::unique_ptr<C2Work>>>::Locked queue(mWorkDoneQueue);
- if (queue->empty()) {
- break;
- }
- work.swap(queue->front());
- queue->pop_front();
- shouldPost = !queue->empty();
- }
- {
- Mutexed<std::list<size_t>>::Locked numDiscardedInputBuffersQueue(
- mNumDiscardedInputBuffersQueue);
- if (numDiscardedInputBuffersQueue->empty()) {
- numDiscardedInputBuffers = 0;
- } else {
- numDiscardedInputBuffers = numDiscardedInputBuffersQueue->front();
- numDiscardedInputBuffersQueue->pop_front();
- }
- }
- if (shouldPost) {
- (new AMessage(kWhatWorkDone, this))->post();
- }
-
- if (work->worklets.empty()
- || !(work->worklets.front()->output.flags & C2FrameData::FLAG_INCOMPLETE)) {
- subQueuedWorkCount(1);
- }
- // handle configuration changes in work done
- Mutexed<Config>::Locked config(mConfig);
- bool changed = false;
- Config::Watcher<C2StreamInitDataInfo::output> initData =
- config->watch<C2StreamInitDataInfo::output>();
- if (!work->worklets.empty()
- && (work->worklets.front()->output.flags
- & C2FrameData::FLAG_DISCARD_FRAME) == 0) {
-
- // copy buffer info to config
- std::vector<std::unique_ptr<C2Param>> updates =
- std::move(work->worklets.front()->output.configUpdate);
- unsigned stream = 0;
- for (const std::shared_ptr<C2Buffer> &buf : work->worklets.front()->output.buffers) {
- for (const std::shared_ptr<const C2Info> &info : buf->info()) {
- // move all info into output-stream #0 domain
- updates.emplace_back(C2Param::CopyAsStream(*info, true /* output */, stream));
- }
- for (const C2ConstGraphicBlock &block : buf->data().graphicBlocks()) {
- // ALOGV("got output buffer with crop %u,%u+%u,%u and size %u,%u",
- // block.crop().left, block.crop().top,
- // block.crop().width, block.crop().height,
- // block.width(), block.height());
- updates.emplace_back(new C2StreamCropRectInfo::output(stream, block.crop()));
- updates.emplace_back(new C2StreamPictureSizeInfo::output(
- stream, block.width(), block.height()));
- break; // for now only do the first block
- }
- ++stream;
- }
-
- changed = config->updateConfiguration(updates, config->mOutputDomain);
-
- // copy standard infos to graphic buffers if not already present (otherwise, we
- // may overwrite the actual intermediate value with a final value)
- stream = 0;
- const static std::vector<C2Param::Index> stdGfxInfos = {
- C2StreamRotationInfo::output::PARAM_TYPE,
- C2StreamColorAspectsInfo::output::PARAM_TYPE,
- C2StreamDataSpaceInfo::output::PARAM_TYPE,
- C2StreamHdrStaticInfo::output::PARAM_TYPE,
- C2StreamHdr10PlusInfo::output::PARAM_TYPE,
- C2StreamPixelAspectRatioInfo::output::PARAM_TYPE,
- C2StreamSurfaceScalingInfo::output::PARAM_TYPE
- };
- for (const std::shared_ptr<C2Buffer> &buf : work->worklets.front()->output.buffers) {
- if (buf->data().graphicBlocks().size()) {
- for (C2Param::Index ix : stdGfxInfos) {
- if (!buf->hasInfo(ix)) {
- const C2Param *param =
- config->getConfigParameterValue(ix.withStream(stream));
- if (param) {
- std::shared_ptr<C2Param> info(C2Param::Copy(*param));
- buf->setInfo(std::static_pointer_cast<C2Info>(info));
- }
- }
- }
- }
- ++stream;
- }
- }
- mChannel->onWorkDone(
- std::move(work), changed ? config->mOutputFormat : nullptr,
- initData.hasChanged() ? initData.update().get() : nullptr,
- numDiscardedInputBuffers);
- break;
- }
- case kWhatWatch: {
- // watch message already posted; no-op.
- break;
- }
- default: {
- ALOGE("unrecognized message");
- break;
- }
- }
- setDeadline(TimePoint::max(), 0ms, "none");
-}
-
-void CCodec::setDeadline(
- const TimePoint &now,
- const std::chrono::milliseconds &timeout,
- const char *name) {
- int32_t mult = std::max(1, property_get_int32("debug.stagefright.ccodec_timeout_mult", 1));
- Mutexed<NamedTimePoint>::Locked deadline(mDeadline);
- deadline->set(now + (timeout * mult), name);
-}
-
-void CCodec::initiateReleaseIfStuck() {
- std::string name;
- bool pendingDeadline = false;
- for (Mutexed<NamedTimePoint> *deadlinePtr : { &mDeadline, &mQueueDeadline, &mEosDeadline }) {
- Mutexed<NamedTimePoint>::Locked deadline(*deadlinePtr);
- if (deadline->get() < std::chrono::steady_clock::now()) {
- name = deadline->getName();
- break;
- }
- if (deadline->get() != TimePoint::max()) {
- pendingDeadline = true;
- }
- }
- if (name.empty()) {
- // We're not stuck.
- if (pendingDeadline) {
- // If we are not stuck yet but still has deadline coming up,
- // post watch message to check back later.
- (new AMessage(kWhatWatch, this))->post();
- }
- return;
- }
-
- ALOGW("previous call to %s exceeded timeout", name.c_str());
- initiateRelease(false);
- mCallback->onError(UNKNOWN_ERROR, ACTION_CODE_FATAL);
-}
-
-void CCodec::onWorkQueued(bool eos) {
- ALOGV("queued work count +1 from %d", mQueuedWorkCount.load());
- int32_t count = ++mQueuedWorkCount;
- if (eos) {
- CCodecWatchdog::getInstance()->watch(this);
- Mutexed<NamedTimePoint>::Locked deadline(mEosDeadline);
- deadline->set(std::chrono::steady_clock::now() + 3s, "eos");
- }
- // TODO: query and use input/pipeline/output delay combined
- if (count >= 4) {
- CCodecWatchdog::getInstance()->watch(this);
- Mutexed<NamedTimePoint>::Locked deadline(mQueueDeadline);
- deadline->set(std::chrono::steady_clock::now() + 3s, "queue");
- }
-}
-
-void CCodec::subQueuedWorkCount(uint32_t count) {
- ALOGV("queued work count -%u from %d", count, mQueuedWorkCount.load());
- int32_t currentCount = (mQueuedWorkCount -= count);
- if (currentCount == 0) {
- Mutexed<NamedTimePoint>::Locked deadline(mEosDeadline);
- deadline->set(TimePoint::max(), "none");
- }
- Mutexed<NamedTimePoint>::Locked deadline(mQueueDeadline);
- deadline->set(TimePoint::max(), "none");
-}
-
-} // namespace android
-
-extern "C" android::CodecBase *CreateCodec() {
- return new android::CCodec;
-}
-
-extern "C" android::PersistentSurface *CreateInputSurface() {
- // Attempt to create a Codec2's input surface.
- std::shared_ptr<android::Codec2Client::InputSurface> inputSurface =
- android::Codec2Client::CreateInputSurface();
- if (inputSurface) {
- return new android::PersistentSurface(
- inputSurface->getGraphicBufferProducer(),
- static_cast<android::sp<android::hidl::base::V1_0::IBase>>(
- inputSurface->getHalInterface()));
- }
-
- // Fall back to OMX.
- using namespace android::hardware::media::omx::V1_0;
- using namespace android::hardware::media::omx::V1_0::utils;
- using namespace android::hardware::graphics::bufferqueue::V1_0::utils;
- typedef android::hardware::media::omx::V1_0::Status OmxStatus;
- android::sp<IOmx> omx = IOmx::getService();
- typedef android::hardware::graphics::bufferqueue::V1_0::
- IGraphicBufferProducer HGraphicBufferProducer;
- OmxStatus s;
- android::sp<HGraphicBufferProducer> gbp;
- android::sp<IGraphicBufferSource> gbs;
- android::Return<void> transStatus = omx->createInputSurface(
- [&s, &gbp, &gbs](
- OmxStatus status,
- const android::sp<HGraphicBufferProducer>& producer,
- const android::sp<IGraphicBufferSource>& source) {
- s = status;
- gbp = producer;
- gbs = source;
- });
- if (transStatus.isOk() && s == OmxStatus::OK) {
- return new android::PersistentSurface(new H2BGraphicBufferProducer(gbp), gbs);
- }
-
- return nullptr;
-}
-
diff --git a/media/sfplugin/CCodec.h b/media/sfplugin/CCodec.h
deleted file mode 100644
index 78b009e..0000000
--- a/media/sfplugin/CCodec.h
+++ /dev/null
@@ -1,185 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C_CODEC_H_
-#define C_CODEC_H_
-
-#include <chrono>
-#include <list>
-#include <memory>
-#include <set>
-
-#include <C2Component.h>
-#include <codec2/hidl/client.h>
-
-#include <android/native_window.h>
-#include <media/hardware/MetadataBufferType.h>
-#include <media/stagefright/foundation/Mutexed.h>
-#include <media/stagefright/CodecBase.h>
-#include <media/stagefright/FrameRenderTracker.h>
-#include <media/stagefright/MediaDefs.h>
-#include <media/stagefright/SkipCutBuffer.h>
-#include <utils/NativeHandle.h>
-#include <hardware/gralloc.h>
-#include <nativebase/nativebase.h>
-
-#include "CCodecConfig.h"
-
-namespace android {
-
-class CCodecBufferChannel;
-class InputSurfaceWrapper;
-struct MediaCodecInfo;
-
-class CCodec : public CodecBase {
-public:
- CCodec();
-
- virtual std::shared_ptr<BufferChannelBase> getBufferChannel() override;
- virtual void initiateAllocateComponent(const sp<AMessage> &msg) override;
- virtual void initiateConfigureComponent(const sp<AMessage> &msg) override;
- virtual void initiateCreateInputSurface() override;
- virtual void initiateSetInputSurface(const sp<PersistentSurface> &surface) override;
- virtual void initiateStart() override;
- virtual void initiateShutdown(bool keepComponentAllocated = false) override;
-
- virtual status_t setSurface(const sp<Surface> &surface) override;
-
- virtual void signalFlush() override;
- virtual void signalResume() override;
-
- virtual void signalSetParameters(const sp<AMessage> ¶ms) override;
- virtual void signalEndOfInputStream() override;
- virtual void signalRequestIDRFrame() override;
-
- void initiateReleaseIfStuck();
- void onWorkDone(std::list<std::unique_ptr<C2Work>> &workItems,
- size_t numDiscardedInputBuffers);
- void onInputBufferDone(const std::shared_ptr<C2Buffer>& buffer);
-
-protected:
- virtual ~CCodec();
-
- virtual void onMessageReceived(const sp<AMessage> &msg) override;
-
-private:
- typedef std::chrono::time_point<std::chrono::steady_clock> TimePoint;
-
- status_t tryAndReportOnError(std::function<status_t()> job);
-
- void initiateStop();
- void initiateRelease(bool sendCallback = true);
-
- void allocate(const sp<MediaCodecInfo> &codecInfo);
- void configure(const sp<AMessage> &msg);
- void start();
- void stop();
- void flush();
- void release(bool sendCallback);
-
- void createInputSurface();
- void setInputSurface(const sp<PersistentSurface> &surface);
- status_t setupInputSurface(const std::shared_ptr<InputSurfaceWrapper> &surface);
- void setParameters(const sp<AMessage> ¶ms);
-
- void setDeadline(
- const TimePoint &now,
- const std::chrono::milliseconds &timeout,
- const char *name);
-
- void onWorkQueued(bool eos);
- void subQueuedWorkCount(uint32_t count);
-
- enum {
- kWhatAllocate,
- kWhatConfigure,
- kWhatStart,
- kWhatFlush,
- kWhatStop,
- kWhatRelease,
- kWhatCreateInputSurface,
- kWhatSetInputSurface,
- kWhatSetParameters,
-
- kWhatWorkDone,
- kWhatWatch,
- };
-
- enum {
- RELEASED,
- ALLOCATED,
- FLUSHED,
- RUNNING,
-
- ALLOCATING, // RELEASED -> ALLOCATED
- STARTING, // ALLOCATED -> RUNNING
- STOPPING, // RUNNING -> ALLOCATED
- FLUSHING, // RUNNING -> FLUSHED
- RESUMING, // FLUSHED -> RUNNING
- RELEASING, // {ANY EXCEPT RELEASED} -> RELEASED
- };
-
- struct State {
- inline State() : mState(RELEASED) {}
- inline int get() const { return mState; }
- inline void set(int newState) { mState = newState; }
-
- std::shared_ptr<Codec2Client::Component> comp;
- private:
- int mState;
- };
-
- struct NamedTimePoint {
- NamedTimePoint() : mTimePoint(TimePoint::max()), mName("") {}
-
- inline void set(
- const TimePoint &timePoint,
- const char *name) {
- mTimePoint = timePoint;
- mName = name;
- }
-
- inline TimePoint get() const { return mTimePoint; }
- inline const char *getName() const { return mName; }
- private:
- TimePoint mTimePoint;
- const char *mName;
- };
-
- Mutexed<State> mState;
- std::shared_ptr<CCodecBufferChannel> mChannel;
-
- std::shared_ptr<Codec2Client> mClient;
- std::shared_ptr<Codec2Client::Listener> mClientListener;
- struct ClientListener;
-
- Mutexed<NamedTimePoint> mDeadline;
- std::atomic_int32_t mQueuedWorkCount;
- Mutexed<NamedTimePoint> mQueueDeadline;
- Mutexed<NamedTimePoint> mEosDeadline;
- typedef CCodecConfig Config;
- Mutexed<Config> mConfig;
- Mutexed<std::list<std::unique_ptr<C2Work>>> mWorkDoneQueue;
- Mutexed<std::list<size_t>> mNumDiscardedInputBuffersQueue;
-
- friend class CCodecCallbackImpl;
-
- DISALLOW_EVIL_CONSTRUCTORS(CCodec);
-};
-
-} // namespace android
-
-#endif // C_CODEC_H_
diff --git a/media/sfplugin/CCodecBufferChannel.cpp b/media/sfplugin/CCodecBufferChannel.cpp
deleted file mode 100644
index 8b26485..0000000
--- a/media/sfplugin/CCodecBufferChannel.cpp
+++ /dev/null
@@ -1,2879 +0,0 @@
-/*
- * Copyright 2017, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "CCodecBufferChannel"
-#include <utils/Log.h>
-
-#include <numeric>
-
-#include <C2AllocatorGralloc.h>
-#include <C2PlatformSupport.h>
-#include <C2BlockInternal.h>
-#include <C2Config.h>
-#include <C2Debug.h>
-
-#include <android/hardware/cas/native/1.0/IDescrambler.h>
-#include <android/hardware/drm/1.0/types.h>
-#include <android-base/stringprintf.h>
-#include <binder/MemoryDealer.h>
-#include <cutils/properties.h>
-#include <gui/Surface.h>
-#include <hidlmemory/FrameworkUtils.h>
-#include <media/openmax/OMX_Core.h>
-#include <media/stagefright/foundation/ABuffer.h>
-#include <media/stagefright/foundation/ALookup.h>
-#include <media/stagefright/foundation/AMessage.h>
-#include <media/stagefright/foundation/AUtils.h>
-#include <media/stagefright/foundation/hexdump.h>
-#include <media/stagefright/MediaCodec.h>
-#include <media/stagefright/MediaCodecConstants.h>
-#include <media/MediaCodecBuffer.h>
-#include <system/window.h>
-
-#include "CCodecBufferChannel.h"
-#include "Codec2Buffer.h"
-#include "SkipCutBuffer.h"
-
-namespace android {
-
-using android::base::StringPrintf;
-using hardware::hidl_handle;
-using hardware::hidl_string;
-using hardware::hidl_vec;
-using hardware::fromHeap;
-using hardware::HidlMemory;
-
-using namespace hardware::cas::V1_0;
-using namespace hardware::cas::native::V1_0;
-
-using CasStatus = hardware::cas::V1_0::Status;
-using DrmBufferType = hardware::drm::V1_0::BufferType;
-
-/**
- * Base class for representation of buffers at one port.
- */
-class CCodecBufferChannel::Buffers {
-public:
- Buffers(const char *componentName, const char *name = "Buffers")
- : mComponentName(componentName),
- mChannelName(std::string(componentName) + ":" + name),
- mName(mChannelName.c_str()) {
- }
- virtual ~Buffers() = default;
-
- /**
- * Set format for MediaCodec-facing buffers.
- */
- void setFormat(const sp<AMessage> &format) {
- CHECK(format != nullptr);
- mFormat = format;
- }
-
- /**
- * Return a copy of current format.
- */
- sp<AMessage> dupFormat() {
- return mFormat != nullptr ? mFormat->dup() : nullptr;
- }
-
- /**
- * Returns true if the buffers are operating under array mode.
- */
- virtual bool isArrayMode() const { return false; }
-
- /**
- * Fills the vector with MediaCodecBuffer's if in array mode; otherwise,
- * no-op.
- */
- virtual void getArray(Vector<sp<MediaCodecBuffer>> *) const {}
-
-protected:
- std::string mComponentName; ///< name of component for debugging
- std::string mChannelName; ///< name of channel for debugging
- const char *mName; ///< C-string version of channel name
- // Format to be used for creating MediaCodec-facing buffers.
- sp<AMessage> mFormat;
-
-private:
- DISALLOW_EVIL_CONSTRUCTORS(Buffers);
-};
-
-class CCodecBufferChannel::InputBuffers : public CCodecBufferChannel::Buffers {
-public:
- InputBuffers(const char *componentName, const char *name = "Input[]")
- : Buffers(componentName, name) { }
- virtual ~InputBuffers() = default;
-
- /**
- * Set a block pool to obtain input memory blocks.
- */
- void setPool(const std::shared_ptr<C2BlockPool> &pool) { mPool = pool; }
-
- /**
- * Get a new MediaCodecBuffer for input and its corresponding index.
- * Returns false if no new buffer can be obtained at the moment.
- */
- virtual bool requestNewBuffer(size_t *index, sp<MediaCodecBuffer> *buffer) = 0;
-
- /**
- * Release the buffer obtained from requestNewBuffer() and get the
- * associated C2Buffer object back. Returns true if the buffer was on file
- * and released successfully.
- */
- virtual bool releaseBuffer(
- const sp<MediaCodecBuffer> &buffer,
- std::shared_ptr<C2Buffer> *c2buffer,
- bool release) = 0;
-
- /**
- * Release the buffer that is no longer used by the codec process. Return
- * true if and only if the buffer was on file and released successfully.
- */
- virtual bool expireComponentBuffer(
- const std::shared_ptr<C2Buffer> &c2buffer) = 0;
-
- /**
- * Flush internal state. After this call, no index or buffer previously
- * returned from requestNewBuffer() is valid.
- */
- virtual void flush() = 0;
-
- /**
- * Return array-backed version of input buffers. The returned object
- * shall retain the internal state so that it will honor index and
- * buffer from previous calls of requestNewBuffer().
- */
- virtual std::unique_ptr<InputBuffers> toArrayMode(size_t size) = 0;
-
-protected:
- // Pool to obtain blocks for input buffers.
- std::shared_ptr<C2BlockPool> mPool;
-
-private:
- DISALLOW_EVIL_CONSTRUCTORS(InputBuffers);
-};
-
-class CCodecBufferChannel::OutputBuffers : public CCodecBufferChannel::Buffers {
-public:
- OutputBuffers(const char *componentName, const char *name = "Output")
- : Buffers(componentName, name) { }
- virtual ~OutputBuffers() = default;
-
- /**
- * Register output C2Buffer from the component and obtain corresponding
- * index and MediaCodecBuffer object. Returns false if registration
- * fails.
- */
- virtual status_t registerBuffer(
- const std::shared_ptr<C2Buffer> &buffer,
- size_t *index,
- sp<MediaCodecBuffer> *clientBuffer) = 0;
-
- /**
- * Register codec specific data as a buffer to be consistent with
- * MediaCodec behavior.
- */
- virtual status_t registerCsd(
- const C2StreamCsdInfo::output * /* csd */,
- size_t * /* index */,
- sp<MediaCodecBuffer> * /* clientBuffer */) = 0;
-
- /**
- * Release the buffer obtained from registerBuffer() and get the
- * associated C2Buffer object back. Returns true if the buffer was on file
- * and released successfully.
- */
- virtual bool releaseBuffer(
- const sp<MediaCodecBuffer> &buffer, std::shared_ptr<C2Buffer> *c2buffer) = 0;
-
- /**
- * Flush internal state. After this call, no index or buffer previously
- * returned from registerBuffer() is valid.
- */
- virtual void flush(const std::list<std::unique_ptr<C2Work>> &flushedWork) = 0;
-
- /**
- * Return array-backed version of output buffers. The returned object
- * shall retain the internal state so that it will honor index and
- * buffer from previous calls of registerBuffer().
- */
- virtual std::unique_ptr<OutputBuffers> toArrayMode(size_t size) = 0;
-
- /**
- * Initialize SkipCutBuffer object.
- */
- void initSkipCutBuffer(
- int32_t delay, int32_t padding, int32_t sampleRate, int32_t channelCount) {
- CHECK(mSkipCutBuffer == nullptr);
- mDelay = delay;
- mPadding = padding;
- mSampleRate = sampleRate;
- setSkipCutBuffer(delay, padding, channelCount);
- }
-
- /**
- * Update the SkipCutBuffer object. No-op if it's never initialized.
- */
- void updateSkipCutBuffer(int32_t sampleRate, int32_t channelCount) {
- if (mSkipCutBuffer == nullptr) {
- return;
- }
- int32_t delay = mDelay;
- int32_t padding = mPadding;
- if (sampleRate != mSampleRate) {
- delay = ((int64_t)delay * sampleRate) / mSampleRate;
- padding = ((int64_t)padding * sampleRate) / mSampleRate;
- }
- setSkipCutBuffer(delay, padding, channelCount);
- }
-
- /**
- * Submit buffer to SkipCutBuffer object, if initialized.
- */
- void submit(const sp<MediaCodecBuffer> &buffer) {
- if (mSkipCutBuffer != nullptr) {
- mSkipCutBuffer->submit(buffer);
- }
- }
-
- /**
- * Transfer SkipCutBuffer object to the other Buffers object.
- */
- void transferSkipCutBuffer(const sp<SkipCutBuffer> &scb) {
- mSkipCutBuffer = scb;
- }
-
-protected:
- sp<SkipCutBuffer> mSkipCutBuffer;
-
-private:
- int32_t mDelay;
- int32_t mPadding;
- int32_t mSampleRate;
-
- void setSkipCutBuffer(int32_t skip, int32_t cut, int32_t channelCount) {
- if (mSkipCutBuffer != nullptr) {
- size_t prevSize = mSkipCutBuffer->size();
- if (prevSize != 0u) {
- ALOGD("[%s] Replacing SkipCutBuffer holding %zu bytes", mName, prevSize);
- }
- }
- mSkipCutBuffer = new SkipCutBuffer(skip, cut, channelCount);
- }
-
- DISALLOW_EVIL_CONSTRUCTORS(OutputBuffers);
-};
-
-namespace {
-
-// TODO: get this info from component
-const static size_t kMinInputBufferArraySize = 4;
-const static size_t kMaxPipelineCapacity = 18;
-const static size_t kChannelOutputDelay = 0;
-const static size_t kMinOutputBufferArraySize = kMaxPipelineCapacity +
- kChannelOutputDelay;
-const static size_t kLinearBufferSize = 1048576;
-// This can fit 4K RGBA frame, and most likely client won't need more than this.
-const static size_t kMaxLinearBufferSize = 3840 * 2160 * 4;
-
-/**
- * Simple local buffer pool backed by std::vector.
- */
-class LocalBufferPool : public std::enable_shared_from_this<LocalBufferPool> {
-public:
- /**
- * Create a new LocalBufferPool object.
- *
- * \param poolCapacity max total size of buffers managed by this pool.
- *
- * \return a newly created pool object.
- */
- static std::shared_ptr<LocalBufferPool> Create(size_t poolCapacity) {
- return std::shared_ptr<LocalBufferPool>(new LocalBufferPool(poolCapacity));
- }
-
- /**
- * Return an ABuffer object whose size is at least |capacity|.
- *
- * \param capacity requested capacity
- * \return nullptr if the pool capacity is reached
- * an ABuffer object otherwise.
- */
- sp<ABuffer> newBuffer(size_t capacity) {
- Mutex::Autolock lock(mMutex);
- auto it = std::find_if(
- mPool.begin(), mPool.end(),
- [capacity](const std::vector<uint8_t> &vec) {
- return vec.capacity() >= capacity;
- });
- if (it != mPool.end()) {
- sp<ABuffer> buffer = new VectorBuffer(std::move(*it), shared_from_this());
- mPool.erase(it);
- return buffer;
- }
- if (mUsedSize + capacity > mPoolCapacity) {
- while (!mPool.empty()) {
- mUsedSize -= mPool.back().capacity();
- mPool.pop_back();
- }
- if (mUsedSize + capacity > mPoolCapacity) {
- ALOGD("mUsedSize = %zu, capacity = %zu, mPoolCapacity = %zu",
- mUsedSize, capacity, mPoolCapacity);
- return nullptr;
- }
- }
- std::vector<uint8_t> vec(capacity);
- mUsedSize += vec.capacity();
- return new VectorBuffer(std::move(vec), shared_from_this());
- }
-
-private:
- /**
- * ABuffer backed by std::vector.
- */
- class VectorBuffer : public ::android::ABuffer {
- public:
- /**
- * Construct a VectorBuffer by taking the ownership of supplied vector.
- *
- * \param vec backing vector of the buffer. this object takes
- * ownership at construction.
- * \param pool a LocalBufferPool object to return the vector at
- * destruction.
- */
- VectorBuffer(std::vector<uint8_t> &&vec, const std::shared_ptr<LocalBufferPool> &pool)
- : ABuffer(vec.data(), vec.capacity()),
- mVec(std::move(vec)),
- mPool(pool) {
- }
-
- ~VectorBuffer() override {
- std::shared_ptr<LocalBufferPool> pool = mPool.lock();
- if (pool) {
- // If pool is alive, return the vector back to the pool so that
- // it can be recycled.
- pool->returnVector(std::move(mVec));
- }
- }
-
- private:
- std::vector<uint8_t> mVec;
- std::weak_ptr<LocalBufferPool> mPool;
- };
-
- Mutex mMutex;
- size_t mPoolCapacity;
- size_t mUsedSize;
- std::list<std::vector<uint8_t>> mPool;
-
- /**
- * Private constructor to prevent constructing non-managed LocalBufferPool.
- */
- explicit LocalBufferPool(size_t poolCapacity)
- : mPoolCapacity(poolCapacity), mUsedSize(0) {
- }
-
- /**
- * Take back the ownership of vec from the destructed VectorBuffer and put
- * it in front of the pool.
- */
- void returnVector(std::vector<uint8_t> &&vec) {
- Mutex::Autolock lock(mMutex);
- mPool.push_front(std::move(vec));
- }
-
- DISALLOW_EVIL_CONSTRUCTORS(LocalBufferPool);
-};
-
-sp<GraphicBlockBuffer> AllocateGraphicBuffer(
- const std::shared_ptr<C2BlockPool> &pool,
- const sp<AMessage> &format,
- uint32_t pixelFormat,
- const C2MemoryUsage &usage,
- const std::shared_ptr<LocalBufferPool> &localBufferPool) {
- int32_t width, height;
- if (!format->findInt32("width", &width) || !format->findInt32("height", &height)) {
- ALOGD("format lacks width or height");
- return nullptr;
- }
-
- std::shared_ptr<C2GraphicBlock> block;
- c2_status_t err = pool->fetchGraphicBlock(
- width, height, pixelFormat, usage, &block);
- if (err != C2_OK) {
- ALOGD("fetch graphic block failed: %d", err);
- return nullptr;
- }
-
- return GraphicBlockBuffer::Allocate(
- format,
- block,
- [localBufferPool](size_t capacity) {
- return localBufferPool->newBuffer(capacity);
- });
-}
-
-class BuffersArrayImpl;
-
-/**
- * Flexible buffer slots implementation.
- */
-class FlexBuffersImpl {
-public:
- FlexBuffersImpl(const char *name)
- : mImplName(std::string(name) + ".Impl"),
- mName(mImplName.c_str()) { }
-
- /**
- * Assign an empty slot for a buffer and return the index. If there's no
- * empty slot, just add one at the end and return it.
- *
- * \param buffer[in] a new buffer to assign a slot.
- * \return index of the assigned slot.
- */
- size_t assignSlot(const sp<Codec2Buffer> &buffer) {
- for (size_t i = 0; i < mBuffers.size(); ++i) {
- if (mBuffers[i].clientBuffer == nullptr
- && mBuffers[i].compBuffer.expired()) {
- mBuffers[i].clientBuffer = buffer;
- return i;
- }
- }
- mBuffers.push_back({ buffer, std::weak_ptr<C2Buffer>() });
- return mBuffers.size() - 1;
- }
-
- /**
- * Release the slot from the client, and get the C2Buffer object back from
- * the previously assigned buffer. Note that the slot is not completely free
- * until the returned C2Buffer object is freed.
- *
- * \param buffer[in] the buffer previously assigned a slot.
- * \param c2buffer[in,out] pointer to C2Buffer to be populated. Ignored
- * if null.
- * \return true if the buffer is successfully released from a slot
- * false otherwise
- */
- bool releaseSlot(
- const sp<MediaCodecBuffer> &buffer,
- std::shared_ptr<C2Buffer> *c2buffer,
- bool release) {
- sp<Codec2Buffer> clientBuffer;
- size_t index = mBuffers.size();
- for (size_t i = 0; i < mBuffers.size(); ++i) {
- if (mBuffers[i].clientBuffer == buffer) {
- clientBuffer = mBuffers[i].clientBuffer;
- if (release) {
- mBuffers[i].clientBuffer.clear();
- }
- index = i;
- break;
- }
- }
- if (clientBuffer == nullptr) {
- ALOGV("[%s] %s: No matching buffer found", mName, __func__);
- return false;
- }
- std::shared_ptr<C2Buffer> result = mBuffers[index].compBuffer.lock();
- if (!result) {
- result = clientBuffer->asC2Buffer();
- mBuffers[index].compBuffer = result;
- }
- if (c2buffer) {
- *c2buffer = result;
- }
- return true;
- }
-
- bool expireComponentBuffer(const std::shared_ptr<C2Buffer> &c2buffer) {
- for (size_t i = 0; i < mBuffers.size(); ++i) {
- std::shared_ptr<C2Buffer> compBuffer =
- mBuffers[i].compBuffer.lock();
- if (!compBuffer || compBuffer != c2buffer) {
- continue;
- }
- mBuffers[i].compBuffer.reset();
- ALOGV("[%s] codec released buffer #%zu", mName, i);
- return true;
- }
- ALOGV("[%s] codec released an unknown buffer", mName);
- return false;
- }
-
- void flush() {
- ALOGV("[%s] buffers are flushed %zu", mName, mBuffers.size());
- mBuffers.clear();
- }
-
-private:
- friend class BuffersArrayImpl;
-
- std::string mImplName; ///< name for debugging
- const char *mName; ///< C-string version of name
-
- struct Entry {
- sp<Codec2Buffer> clientBuffer;
- std::weak_ptr<C2Buffer> compBuffer;
- };
- std::vector<Entry> mBuffers;
-};
-
-/**
- * Static buffer slots implementation based on a fixed-size array.
- */
-class BuffersArrayImpl {
-public:
- BuffersArrayImpl()
- : mImplName("BuffersArrayImpl"),
- mName(mImplName.c_str()) { }
-
- /**
- * Initialize buffer array from the original |impl|. The buffers known by
- * the client is preserved, and the empty slots are populated so that the
- * array size is at least |minSize|.
- *
- * \param impl[in] FlexBuffersImpl object used so far.
- * \param minSize[in] minimum size of the buffer array.
- * \param allocate[in] function to allocate a client buffer for an empty slot.
- */
- void initialize(
- const FlexBuffersImpl &impl,
- size_t minSize,
- std::function<sp<Codec2Buffer>()> allocate) {
- mImplName = impl.mImplName + "[N]";
- mName = mImplName.c_str();
- for (size_t i = 0; i < impl.mBuffers.size(); ++i) {
- sp<Codec2Buffer> clientBuffer = impl.mBuffers[i].clientBuffer;
- bool ownedByClient = (clientBuffer != nullptr);
- if (!ownedByClient) {
- clientBuffer = allocate();
- }
- mBuffers.push_back({ clientBuffer, impl.mBuffers[i].compBuffer, ownedByClient });
- }
- ALOGV("[%s] converted %zu buffers to array mode of %zu", mName, mBuffers.size(), minSize);
- for (size_t i = impl.mBuffers.size(); i < minSize; ++i) {
- mBuffers.push_back({ allocate(), std::weak_ptr<C2Buffer>(), false });
- }
- }
-
- /**
- * Grab a buffer from the underlying array which matches the criteria.
- *
- * \param index[out] index of the slot.
- * \param buffer[out] the matching buffer.
- * \param match[in] a function to test whether the buffer matches the
- * criteria or not.
- * \return OK if successful,
- * WOULD_BLOCK if slots are being used,
- * NO_MEMORY if no slot matches the criteria, even though it's
- * available
- */
- status_t grabBuffer(
- size_t *index,
- sp<Codec2Buffer> *buffer,
- std::function<bool(const sp<Codec2Buffer> &)> match =
- [](const sp<Codec2Buffer> &) { return true; }) {
- // allBuffersDontMatch remains true if all buffers are available but
- // match() returns false for every buffer.
- bool allBuffersDontMatch = true;
- for (size_t i = 0; i < mBuffers.size(); ++i) {
- if (!mBuffers[i].ownedByClient && mBuffers[i].compBuffer.expired()) {
- if (match(mBuffers[i].clientBuffer)) {
- mBuffers[i].ownedByClient = true;
- *buffer = mBuffers[i].clientBuffer;
- (*buffer)->meta()->clear();
- (*buffer)->setRange(0, (*buffer)->capacity());
- *index = i;
- return OK;
- }
- } else {
- allBuffersDontMatch = false;
- }
- }
- return allBuffersDontMatch ? NO_MEMORY : WOULD_BLOCK;
- }
-
- /**
- * Return the buffer from the client, and get the C2Buffer object back from
- * the buffer. Note that the slot is not completely free until the returned
- * C2Buffer object is freed.
- *
- * \param buffer[in] the buffer previously grabbed.
- * \param c2buffer[in,out] pointer to C2Buffer to be populated. Ignored
- * if null.
- * \return true if the buffer is successfully returned
- * false otherwise
- */
- bool returnBuffer(
- const sp<MediaCodecBuffer> &buffer,
- std::shared_ptr<C2Buffer> *c2buffer,
- bool release) {
- sp<Codec2Buffer> clientBuffer;
- size_t index = mBuffers.size();
- for (size_t i = 0; i < mBuffers.size(); ++i) {
- if (mBuffers[i].clientBuffer == buffer) {
- if (!mBuffers[i].ownedByClient) {
- ALOGD("[%s] Client returned a buffer it does not own according to our record: %zu", mName, i);
- }
- clientBuffer = mBuffers[i].clientBuffer;
- if (release) {
- mBuffers[i].ownedByClient = false;
- }
- index = i;
- break;
- }
- }
- if (clientBuffer == nullptr) {
- ALOGV("[%s] %s: No matching buffer found", mName, __func__);
- return false;
- }
- ALOGV("[%s] %s: matching buffer found (index=%zu)", mName, __func__, index);
- std::shared_ptr<C2Buffer> result = mBuffers[index].compBuffer.lock();
- if (!result) {
- result = clientBuffer->asC2Buffer();
- mBuffers[index].compBuffer = result;
- }
- if (c2buffer) {
- *c2buffer = result;
- }
- return true;
- }
-
- bool expireComponentBuffer(const std::shared_ptr<C2Buffer> &c2buffer) {
- for (size_t i = 0; i < mBuffers.size(); ++i) {
- std::shared_ptr<C2Buffer> compBuffer =
- mBuffers[i].compBuffer.lock();
- if (!compBuffer) {
- continue;
- }
- if (c2buffer == compBuffer) {
- if (mBuffers[i].ownedByClient) {
- // This should not happen.
- ALOGD("[%s] codec released a buffer owned by client "
- "(index %zu)", mName, i);
- }
- mBuffers[i].compBuffer.reset();
- ALOGV("[%s] codec released buffer #%zu(array mode)", mName, i);
- return true;
- }
- }
- ALOGV("[%s] codec released an unknown buffer (array mode)", mName);
- return false;
- }
-
- /**
- * Populate |array| with the underlying buffer array.
- *
- * \param array[out] an array to be filled with the underlying buffer array.
- */
- void getArray(Vector<sp<MediaCodecBuffer>> *array) const {
- array->clear();
- for (const Entry &entry : mBuffers) {
- array->push(entry.clientBuffer);
- }
- }
-
- /**
- * The client abandoned all known buffers, so reclaim the ownership.
- */
- void flush() {
- for (Entry &entry : mBuffers) {
- entry.ownedByClient = false;
- }
- }
-
- void realloc(std::function<sp<Codec2Buffer>()> alloc) {
- size_t size = mBuffers.size();
- mBuffers.clear();
- for (size_t i = 0; i < size; ++i) {
- mBuffers.push_back({ alloc(), std::weak_ptr<C2Buffer>(), false });
- }
- }
-
-private:
- std::string mImplName; ///< name for debugging
- const char *mName; ///< C-string version of name
-
- struct Entry {
- const sp<Codec2Buffer> clientBuffer;
- std::weak_ptr<C2Buffer> compBuffer;
- bool ownedByClient;
- };
- std::vector<Entry> mBuffers;
-};
-
-class InputBuffersArray : public CCodecBufferChannel::InputBuffers {
-public:
- InputBuffersArray(const char *componentName, const char *name = "Input[N]")
- : InputBuffers(componentName, name) { }
- ~InputBuffersArray() override = default;
-
- void initialize(
- const FlexBuffersImpl &impl,
- size_t minSize,
- std::function<sp<Codec2Buffer>()> allocate) {
- mImpl.initialize(impl, minSize, allocate);
- }
-
- bool isArrayMode() const final { return true; }
-
- std::unique_ptr<CCodecBufferChannel::InputBuffers> toArrayMode(
- size_t) final {
- return nullptr;
- }
-
- void getArray(Vector<sp<MediaCodecBuffer>> *array) const final {
- mImpl.getArray(array);
- }
-
- bool requestNewBuffer(size_t *index, sp<MediaCodecBuffer> *buffer) override {
- sp<Codec2Buffer> c2Buffer;
- status_t err = mImpl.grabBuffer(index, &c2Buffer);
- if (err == OK) {
- c2Buffer->setFormat(mFormat);
- *buffer = c2Buffer;
- return true;
- }
- return false;
- }
-
- bool releaseBuffer(
- const sp<MediaCodecBuffer> &buffer,
- std::shared_ptr<C2Buffer> *c2buffer,
- bool release) override {
- return mImpl.returnBuffer(buffer, c2buffer, release);
- }
-
- bool expireComponentBuffer(
- const std::shared_ptr<C2Buffer> &c2buffer) override {
- return mImpl.expireComponentBuffer(c2buffer);
- }
-
- void flush() override {
- mImpl.flush();
- }
-
-private:
- BuffersArrayImpl mImpl;
-};
-
-class LinearInputBuffers : public CCodecBufferChannel::InputBuffers {
-public:
- LinearInputBuffers(const char *componentName, const char *name = "1D-Input")
- : InputBuffers(componentName, name),
- mImpl(mName) { }
-
- bool requestNewBuffer(size_t *index, sp<MediaCodecBuffer> *buffer) override {
- int32_t capacity = kLinearBufferSize;
- (void)mFormat->findInt32(KEY_MAX_INPUT_SIZE, &capacity);
- if ((size_t)capacity > kMaxLinearBufferSize) {
- ALOGD("client requested %d, capped to %zu", capacity, kMaxLinearBufferSize);
- capacity = kMaxLinearBufferSize;
- }
- // TODO: proper max input size
- // TODO: read usage from intf
- sp<Codec2Buffer> newBuffer = alloc((size_t)capacity);
- if (newBuffer == nullptr) {
- return false;
- }
- *index = mImpl.assignSlot(newBuffer);
- *buffer = newBuffer;
- return true;
- }
-
- bool releaseBuffer(
- const sp<MediaCodecBuffer> &buffer,
- std::shared_ptr<C2Buffer> *c2buffer,
- bool release) override {
- return mImpl.releaseSlot(buffer, c2buffer, release);
- }
-
- bool expireComponentBuffer(
- const std::shared_ptr<C2Buffer> &c2buffer) override {
- return mImpl.expireComponentBuffer(c2buffer);
- }
-
- void flush() override {
- // This is no-op by default unless we're in array mode where we need to keep
- // track of the flushed work.
- mImpl.flush();
- }
-
- std::unique_ptr<CCodecBufferChannel::InputBuffers> toArrayMode(
- size_t size) final {
- int32_t capacity = kLinearBufferSize;
- (void)mFormat->findInt32(KEY_MAX_INPUT_SIZE, &capacity);
- if ((size_t)capacity > kMaxLinearBufferSize) {
- ALOGD("client requested %d, capped to %zu", capacity, kMaxLinearBufferSize);
- capacity = kMaxLinearBufferSize;
- }
- // TODO: proper max input size
- // TODO: read usage from intf
- std::unique_ptr<InputBuffersArray> array(
- new InputBuffersArray(mComponentName.c_str(), "1D-Input[N]"));
- array->setPool(mPool);
- array->setFormat(mFormat);
- array->initialize(
- mImpl,
- size,
- [this, capacity] () -> sp<Codec2Buffer> { return alloc(capacity); });
- return std::move(array);
- }
-
- virtual sp<Codec2Buffer> alloc(size_t size) {
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- std::shared_ptr<C2LinearBlock> block;
-
- c2_status_t err = mPool->fetchLinearBlock(size, usage, &block);
- if (err != C2_OK) {
- return nullptr;
- }
-
- return LinearBlockBuffer::Allocate(mFormat, block);
- }
-
-private:
- FlexBuffersImpl mImpl;
-};
-
-class EncryptedLinearInputBuffers : public LinearInputBuffers {
-public:
- EncryptedLinearInputBuffers(
- bool secure,
- const sp<MemoryDealer> &dealer,
- const sp<ICrypto> &crypto,
- int32_t heapSeqNum,
- size_t capacity,
- const char *componentName, const char *name = "EncryptedInput")
- : LinearInputBuffers(componentName, name),
- mUsage({0, 0}),
- mDealer(dealer),
- mCrypto(crypto),
- mHeapSeqNum(heapSeqNum) {
- if (secure) {
- mUsage = { C2MemoryUsage::READ_PROTECTED, 0 };
- } else {
- mUsage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- }
- for (size_t i = 0; i < kMinInputBufferArraySize; ++i) {
- sp<IMemory> memory = mDealer->allocate(capacity);
- if (memory == nullptr) {
- ALOGD("[%s] Failed to allocate memory from dealer: only %zu slots allocated", mName, i);
- break;
- }
- mMemoryVector.push_back({std::weak_ptr<C2LinearBlock>(), memory});
- }
- }
-
- ~EncryptedLinearInputBuffers() override {
- }
-
- sp<Codec2Buffer> alloc(size_t size) override {
- sp<IMemory> memory;
- size_t slot = 0;
- for (; slot < mMemoryVector.size(); ++slot) {
- if (mMemoryVector[slot].block.expired()) {
- memory = mMemoryVector[slot].memory;
- break;
- }
- }
- if (memory == nullptr) {
- return nullptr;
- }
-
- std::shared_ptr<C2LinearBlock> block;
- c2_status_t err = mPool->fetchLinearBlock(size, mUsage, &block);
- if (err != C2_OK || block == nullptr) {
- return nullptr;
- }
-
- mMemoryVector[slot].block = block;
- return new EncryptedLinearBlockBuffer(mFormat, block, memory, mHeapSeqNum);
- }
-
-private:
- C2MemoryUsage mUsage;
- sp<MemoryDealer> mDealer;
- sp<ICrypto> mCrypto;
- int32_t mHeapSeqNum;
- struct Entry {
- std::weak_ptr<C2LinearBlock> block;
- sp<IMemory> memory;
- };
- std::vector<Entry> mMemoryVector;
-};
-
-class GraphicMetadataInputBuffers : public CCodecBufferChannel::InputBuffers {
-public:
- GraphicMetadataInputBuffers(const char *componentName, const char *name = "2D-MetaInput")
- : InputBuffers(componentName, name),
- mImpl(mName),
- mStore(GetCodec2PlatformAllocatorStore()) { }
- ~GraphicMetadataInputBuffers() override = default;
-
- bool requestNewBuffer(size_t *index, sp<MediaCodecBuffer> *buffer) override {
- std::shared_ptr<C2Allocator> alloc;
- c2_status_t err = mStore->fetchAllocator(mPool->getAllocatorId(), &alloc);
- if (err != C2_OK) {
- return false;
- }
- sp<GraphicMetadataBuffer> newBuffer = new GraphicMetadataBuffer(mFormat, alloc);
- if (newBuffer == nullptr) {
- return false;
- }
- *index = mImpl.assignSlot(newBuffer);
- *buffer = newBuffer;
- return true;
- }
-
- bool releaseBuffer(
- const sp<MediaCodecBuffer> &buffer,
- std::shared_ptr<C2Buffer> *c2buffer,
- bool release) override {
- return mImpl.releaseSlot(buffer, c2buffer, release);
- }
-
- bool expireComponentBuffer(
- const std::shared_ptr<C2Buffer> &c2buffer) override {
- return mImpl.expireComponentBuffer(c2buffer);
- }
-
- void flush() override {
- // This is no-op by default unless we're in array mode where we need to keep
- // track of the flushed work.
- }
-
- std::unique_ptr<CCodecBufferChannel::InputBuffers> toArrayMode(
- size_t size) final {
- std::shared_ptr<C2Allocator> alloc;
- c2_status_t err = mStore->fetchAllocator(mPool->getAllocatorId(), &alloc);
- if (err != C2_OK) {
- return nullptr;
- }
- std::unique_ptr<InputBuffersArray> array(
- new InputBuffersArray(mComponentName.c_str(), "2D-MetaInput[N]"));
- array->setPool(mPool);
- array->setFormat(mFormat);
- array->initialize(
- mImpl,
- size,
- [format = mFormat, alloc]() -> sp<Codec2Buffer> {
- return new GraphicMetadataBuffer(format, alloc);
- });
- return std::move(array);
- }
-
-private:
- FlexBuffersImpl mImpl;
- std::shared_ptr<C2AllocatorStore> mStore;
-};
-
-class GraphicInputBuffers : public CCodecBufferChannel::InputBuffers {
-public:
- GraphicInputBuffers(const char *componentName, const char *name = "2D-BB-Input")
- : InputBuffers(componentName, name),
- mImpl(mName),
- mLocalBufferPool(LocalBufferPool::Create(
- kMaxLinearBufferSize * kMinInputBufferArraySize)) { }
- ~GraphicInputBuffers() override = default;
-
- bool requestNewBuffer(size_t *index, sp<MediaCodecBuffer> *buffer) override {
- // TODO: proper max input size
- // TODO: read usage from intf
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- sp<GraphicBlockBuffer> newBuffer = AllocateGraphicBuffer(
- mPool, mFormat, HAL_PIXEL_FORMAT_YV12, usage, mLocalBufferPool);
- if (newBuffer == nullptr) {
- return false;
- }
- *index = mImpl.assignSlot(newBuffer);
- *buffer = newBuffer;
- return true;
- }
-
- bool releaseBuffer(
- const sp<MediaCodecBuffer> &buffer,
- std::shared_ptr<C2Buffer> *c2buffer,
- bool release) override {
- return mImpl.releaseSlot(buffer, c2buffer, release);
- }
-
- bool expireComponentBuffer(
- const std::shared_ptr<C2Buffer> &c2buffer) override {
- return mImpl.expireComponentBuffer(c2buffer);
- }
- void flush() override {
- // This is no-op by default unless we're in array mode where we need to keep
- // track of the flushed work.
- }
-
- std::unique_ptr<CCodecBufferChannel::InputBuffers> toArrayMode(
- size_t size) final {
- std::unique_ptr<InputBuffersArray> array(
- new InputBuffersArray(mComponentName.c_str(), "2D-BB-Input[N]"));
- array->setPool(mPool);
- array->setFormat(mFormat);
- array->initialize(
- mImpl,
- size,
- [pool = mPool, format = mFormat, lbp = mLocalBufferPool]() -> sp<Codec2Buffer> {
- C2MemoryUsage usage = { C2MemoryUsage::CPU_READ, C2MemoryUsage::CPU_WRITE };
- return AllocateGraphicBuffer(
- pool, format, HAL_PIXEL_FORMAT_YV12, usage, lbp);
- });
- return std::move(array);
- }
-
-private:
- FlexBuffersImpl mImpl;
- std::shared_ptr<LocalBufferPool> mLocalBufferPool;
-};
-
-class DummyInputBuffers : public CCodecBufferChannel::InputBuffers {
-public:
- DummyInputBuffers(const char *componentName, const char *name = "2D-Input")
- : InputBuffers(componentName, name) { }
-
- bool requestNewBuffer(size_t *, sp<MediaCodecBuffer> *) override {
- return false;
- }
-
- bool releaseBuffer(
- const sp<MediaCodecBuffer> &, std::shared_ptr<C2Buffer> *, bool) override {
- return false;
- }
-
- bool expireComponentBuffer(const std::shared_ptr<C2Buffer> &) override {
- return false;
- }
-
- void flush() override {
- }
-
- std::unique_ptr<CCodecBufferChannel::InputBuffers> toArrayMode(
- size_t) final {
- return nullptr;
- }
-
- bool isArrayMode() const final { return true; }
-
- void getArray(Vector<sp<MediaCodecBuffer>> *array) const final {
- array->clear();
- }
-};
-
-class OutputBuffersArray : public CCodecBufferChannel::OutputBuffers {
-public:
- OutputBuffersArray(const char *componentName, const char *name = "Output[N]")
- : OutputBuffers(componentName, name) { }
- ~OutputBuffersArray() override = default;
-
- void initialize(
- const FlexBuffersImpl &impl,
- size_t minSize,
- std::function<sp<Codec2Buffer>()> allocate) {
- mImpl.initialize(impl, minSize, allocate);
- }
-
- bool isArrayMode() const final { return true; }
-
- std::unique_ptr<CCodecBufferChannel::OutputBuffers> toArrayMode(
- size_t) final {
- return nullptr;
- }
-
- status_t registerBuffer(
- const std::shared_ptr<C2Buffer> &buffer,
- size_t *index,
- sp<MediaCodecBuffer> *clientBuffer) final {
- sp<Codec2Buffer> c2Buffer;
- status_t err = mImpl.grabBuffer(
- index,
- &c2Buffer,
- [buffer](const sp<Codec2Buffer> &clientBuffer) {
- return clientBuffer->canCopy(buffer);
- });
- if (err == WOULD_BLOCK) {
- ALOGV("[%s] buffers temporarily not available", mName);
- return err;
- } else if (err != OK) {
- ALOGD("[%s] grabBuffer failed: %d", mName, err);
- return err;
- }
- c2Buffer->setFormat(mFormat);
- if (!c2Buffer->copy(buffer)) {
- ALOGD("[%s] copy buffer failed", mName);
- return WOULD_BLOCK;
- }
- submit(c2Buffer);
- *clientBuffer = c2Buffer;
- ALOGV("[%s] grabbed buffer %zu", mName, *index);
- return OK;
- }
-
- status_t registerCsd(
- const C2StreamCsdInfo::output *csd,
- size_t *index,
- sp<MediaCodecBuffer> *clientBuffer) final {
- sp<Codec2Buffer> c2Buffer;
- status_t err = mImpl.grabBuffer(
- index,
- &c2Buffer,
- [csd](const sp<Codec2Buffer> &clientBuffer) {
- return clientBuffer->base() != nullptr
- && clientBuffer->capacity() >= csd->flexCount();
- });
- if (err != OK) {
- return err;
- }
- memcpy(c2Buffer->base(), csd->m.value, csd->flexCount());
- c2Buffer->setRange(0, csd->flexCount());
- c2Buffer->setFormat(mFormat);
- *clientBuffer = c2Buffer;
- return OK;
- }
-
- bool releaseBuffer(
- const sp<MediaCodecBuffer> &buffer, std::shared_ptr<C2Buffer> *c2buffer) override {
- return mImpl.returnBuffer(buffer, c2buffer, true);
- }
-
- void flush(const std::list<std::unique_ptr<C2Work>> &flushedWork) override {
- (void)flushedWork;
- mImpl.flush();
- if (mSkipCutBuffer != nullptr) {
- mSkipCutBuffer->clear();
- }
- }
-
- void getArray(Vector<sp<MediaCodecBuffer>> *array) const final {
- mImpl.getArray(array);
- }
-
- void realloc(const std::shared_ptr<C2Buffer> &c2buffer) {
- std::function<sp<Codec2Buffer>()> alloc;
- switch (c2buffer->data().type()) {
- case C2BufferData::LINEAR: {
- uint32_t size = kLinearBufferSize;
- const size_t blockSize = c2buffer->data().linearBlocks().front().size();
- if (blockSize < kMaxLinearBufferSize / 2) {
- size = blockSize * 2;
- } else {
- size = kMaxLinearBufferSize;
- }
- alloc = [format = mFormat, size] {
- return new LocalLinearBuffer(format, new ABuffer(size));
- };
- break;
- }
-
- // TODO: add support
- case C2BufferData::GRAPHIC: FALLTHROUGH_INTENDED;
-
- case C2BufferData::INVALID: FALLTHROUGH_INTENDED;
- case C2BufferData::LINEAR_CHUNKS: FALLTHROUGH_INTENDED;
- case C2BufferData::GRAPHIC_CHUNKS: FALLTHROUGH_INTENDED;
- default:
- ALOGD("Unsupported type: %d", (int)c2buffer->data().type());
- return;
- }
- mImpl.realloc(alloc);
- }
-
-private:
- BuffersArrayImpl mImpl;
-};
-
-class FlexOutputBuffers : public CCodecBufferChannel::OutputBuffers {
-public:
- FlexOutputBuffers(const char *componentName, const char *name = "Output[]")
- : OutputBuffers(componentName, name),
- mImpl(mName) { }
-
- status_t registerBuffer(
- const std::shared_ptr<C2Buffer> &buffer,
- size_t *index,
- sp<MediaCodecBuffer> *clientBuffer) override {
- sp<Codec2Buffer> newBuffer = wrap(buffer);
- newBuffer->setFormat(mFormat);
- *index = mImpl.assignSlot(newBuffer);
- *clientBuffer = newBuffer;
- ALOGV("[%s] registered buffer %zu", mName, *index);
- return OK;
- }
-
- status_t registerCsd(
- const C2StreamCsdInfo::output *csd,
- size_t *index,
- sp<MediaCodecBuffer> *clientBuffer) final {
- sp<Codec2Buffer> newBuffer = new LocalLinearBuffer(
- mFormat, ABuffer::CreateAsCopy(csd->m.value, csd->flexCount()));
- *index = mImpl.assignSlot(newBuffer);
- *clientBuffer = newBuffer;
- return OK;
- }
-
- bool releaseBuffer(
- const sp<MediaCodecBuffer> &buffer,
- std::shared_ptr<C2Buffer> *c2buffer) override {
- return mImpl.releaseSlot(buffer, c2buffer, true);
- }
-
- void flush(
- const std::list<std::unique_ptr<C2Work>> &flushedWork) override {
- (void) flushedWork;
- // This is no-op by default unless we're in array mode where we need to keep
- // track of the flushed work.
- }
-
- std::unique_ptr<CCodecBufferChannel::OutputBuffers> toArrayMode(
- size_t size) override {
- std::unique_ptr<OutputBuffersArray> array(new OutputBuffersArray(mComponentName.c_str()));
- array->setFormat(mFormat);
- array->transferSkipCutBuffer(mSkipCutBuffer);
- array->initialize(
- mImpl,
- size,
- [this]() { return allocateArrayBuffer(); });
- return std::move(array);
- }
-
- /**
- * Return an appropriate Codec2Buffer object for the type of buffers.
- *
- * \param buffer C2Buffer object to wrap.
- *
- * \return appropriate Codec2Buffer object to wrap |buffer|.
- */
- virtual sp<Codec2Buffer> wrap(const std::shared_ptr<C2Buffer> &buffer) = 0;
-
- /**
- * Return an appropriate Codec2Buffer object for the type of buffers, to be
- * used as an empty array buffer.
- *
- * \return appropriate Codec2Buffer object which can copy() from C2Buffers.
- */
- virtual sp<Codec2Buffer> allocateArrayBuffer() = 0;
-
-private:
- FlexBuffersImpl mImpl;
-};
-
-class LinearOutputBuffers : public FlexOutputBuffers {
-public:
- LinearOutputBuffers(const char *componentName, const char *name = "1D-Output")
- : FlexOutputBuffers(componentName, name) { }
-
- void flush(
- const std::list<std::unique_ptr<C2Work>> &flushedWork) override {
- if (mSkipCutBuffer != nullptr) {
- mSkipCutBuffer->clear();
- }
- FlexOutputBuffers::flush(flushedWork);
- }
-
- sp<Codec2Buffer> wrap(const std::shared_ptr<C2Buffer> &buffer) override {
- if (buffer == nullptr) {
- ALOGV("[%s] using a dummy buffer", mName);
- return new LocalLinearBuffer(mFormat, new ABuffer(0));
- }
- if (buffer->data().type() != C2BufferData::LINEAR) {
- ALOGV("[%s] non-linear buffer %d", mName, buffer->data().type());
- // We expect linear output buffers from the component.
- return nullptr;
- }
- if (buffer->data().linearBlocks().size() != 1u) {
- ALOGV("[%s] no linear buffers", mName);
- // We expect one and only one linear block from the component.
- return nullptr;
- }
- sp<Codec2Buffer> clientBuffer = ConstLinearBlockBuffer::Allocate(mFormat, buffer);
- submit(clientBuffer);
- return clientBuffer;
- }
-
- sp<Codec2Buffer> allocateArrayBuffer() override {
- // TODO: proper max output size
- return new LocalLinearBuffer(mFormat, new ABuffer(kLinearBufferSize));
- }
-};
-
-class GraphicOutputBuffers : public FlexOutputBuffers {
-public:
- GraphicOutputBuffers(const char *componentName, const char *name = "2D-Output")
- : FlexOutputBuffers(componentName, name) { }
-
- sp<Codec2Buffer> wrap(const std::shared_ptr<C2Buffer> &buffer) override {
- return new DummyContainerBuffer(mFormat, buffer);
- }
-
- sp<Codec2Buffer> allocateArrayBuffer() override {
- return new DummyContainerBuffer(mFormat);
- }
-};
-
-class RawGraphicOutputBuffers : public FlexOutputBuffers {
-public:
- RawGraphicOutputBuffers(const char *componentName, const char *name = "2D-BB-Output")
- : FlexOutputBuffers(componentName, name),
- mLocalBufferPool(LocalBufferPool::Create(
- kMaxLinearBufferSize * kMinOutputBufferArraySize)) { }
- ~RawGraphicOutputBuffers() override = default;
-
- sp<Codec2Buffer> wrap(const std::shared_ptr<C2Buffer> &buffer) override {
- if (buffer == nullptr) {
- sp<Codec2Buffer> c2buffer = ConstGraphicBlockBuffer::AllocateEmpty(
- mFormat,
- [lbp = mLocalBufferPool](size_t capacity) {
- return lbp->newBuffer(capacity);
- });
- c2buffer->setRange(0, 0);
- return c2buffer;
- } else {
- return ConstGraphicBlockBuffer::Allocate(
- mFormat,
- buffer,
- [lbp = mLocalBufferPool](size_t capacity) {
- return lbp->newBuffer(capacity);
- });
- }
- }
-
- sp<Codec2Buffer> allocateArrayBuffer() override {
- return ConstGraphicBlockBuffer::AllocateEmpty(
- mFormat,
- [lbp = mLocalBufferPool](size_t capacity) {
- return lbp->newBuffer(capacity);
- });
- }
-
-private:
- std::shared_ptr<LocalBufferPool> mLocalBufferPool;
-};
-
-} // namespace
-
-CCodecBufferChannel::QueueGuard::QueueGuard(
- CCodecBufferChannel::QueueSync &sync) : mSync(sync) {
- Mutex::Autolock l(mSync.mGuardLock);
- // At this point it's guaranteed that mSync is not under state transition,
- // as we are holding its mutex.
-
- Mutexed<CCodecBufferChannel::QueueSync::Counter>::Locked count(mSync.mCount);
- if (count->value == -1) {
- mRunning = false;
- } else {
- ++count->value;
- mRunning = true;
- }
-}
-
-CCodecBufferChannel::QueueGuard::~QueueGuard() {
- if (mRunning) {
- // We are not holding mGuardLock at this point so that QueueSync::stop() can
- // keep holding the lock until mCount reaches zero.
- Mutexed<CCodecBufferChannel::QueueSync::Counter>::Locked count(mSync.mCount);
- --count->value;
- count->cond.broadcast();
- }
-}
-
-void CCodecBufferChannel::QueueSync::start() {
- Mutex::Autolock l(mGuardLock);
- // If stopped, it goes to running state; otherwise no-op.
- Mutexed<Counter>::Locked count(mCount);
- if (count->value == -1) {
- count->value = 0;
- }
-}
-
-void CCodecBufferChannel::QueueSync::stop() {
- Mutex::Autolock l(mGuardLock);
- Mutexed<Counter>::Locked count(mCount);
- if (count->value == -1) {
- // no-op
- return;
- }
- // Holding mGuardLock here blocks creation of additional QueueGuard objects, so
- // mCount can only decrement. In other words, threads that acquired the lock
- // are allowed to finish execution but additional threads trying to acquire
- // the lock at this point will block, and then get QueueGuard at STOPPED
- // state.
- while (count->value != 0) {
- count.waitForCondition(count->cond);
- }
- count->value = -1;
-}
-
-// CCodecBufferChannel::PipelineCapacity
-
-CCodecBufferChannel::PipelineCapacity::PipelineCapacity()
- : input(0), component(0),
- mName("<UNKNOWN COMPONENT>") {
-}
-
-void CCodecBufferChannel::PipelineCapacity::initialize(
- int newInput,
- int newComponent,
- const char* newName,
- const char* callerTag) {
- input.store(newInput, std::memory_order_relaxed);
- component.store(newComponent, std::memory_order_relaxed);
- mName = newName;
- ALOGV("[%s] %s -- PipelineCapacity::initialize(): "
- "pipeline availability initialized ==> "
- "input = %d, component = %d",
- mName, callerTag ? callerTag : "*",
- newInput, newComponent);
-}
-
-bool CCodecBufferChannel::PipelineCapacity::allocate(const char* callerTag) {
- int prevInput = input.fetch_sub(1, std::memory_order_relaxed);
- int prevComponent = component.fetch_sub(1, std::memory_order_relaxed);
- if (prevInput > 0 && prevComponent > 0) {
- ALOGV("[%s] %s -- PipelineCapacity::allocate() returns true: "
- "pipeline availability -1 all ==> "
- "input = %d, component = %d",
- mName, callerTag ? callerTag : "*",
- prevInput - 1,
- prevComponent - 1);
- return true;
- }
- input.fetch_add(1, std::memory_order_relaxed);
- component.fetch_add(1, std::memory_order_relaxed);
- ALOGV("[%s] %s -- PipelineCapacity::allocate() returns false: "
- "pipeline availability unchanged ==> "
- "input = %d, component = %d",
- mName, callerTag ? callerTag : "*",
- prevInput,
- prevComponent);
- return false;
-}
-
-void CCodecBufferChannel::PipelineCapacity::free(const char* callerTag) {
- int prevInput = input.fetch_add(1, std::memory_order_relaxed);
- int prevComponent = component.fetch_add(1, std::memory_order_relaxed);
- ALOGV("[%s] %s -- PipelineCapacity::free(): "
- "pipeline availability +1 all ==> "
- "input = %d, component = %d",
- mName, callerTag ? callerTag : "*",
- prevInput + 1,
- prevComponent + 1);
-}
-
-int CCodecBufferChannel::PipelineCapacity::freeInputSlots(
- size_t numDiscardedInputBuffers,
- const char* callerTag) {
- int prevInput = input.fetch_add(numDiscardedInputBuffers,
- std::memory_order_relaxed);
- ALOGV("[%s] %s -- PipelineCapacity::freeInputSlots(%zu): "
- "pipeline availability +%zu input ==> "
- "input = %d, component = %d",
- mName, callerTag ? callerTag : "*",
- numDiscardedInputBuffers,
- numDiscardedInputBuffers,
- prevInput + static_cast<int>(numDiscardedInputBuffers),
- component.load(std::memory_order_relaxed));
- return prevInput + static_cast<int>(numDiscardedInputBuffers);
-}
-
-int CCodecBufferChannel::PipelineCapacity::freeComponentSlot(
- const char* callerTag) {
- int prevComponent = component.fetch_add(1, std::memory_order_relaxed);
- ALOGV("[%s] %s -- PipelineCapacity::freeComponentSlot(): "
- "pipeline availability +1 component ==> "
- "input = %d, component = %d",
- mName, callerTag ? callerTag : "*",
- input.load(std::memory_order_relaxed),
- prevComponent + 1);
- return prevComponent + 1;
-}
-
-// CCodecBufferChannel::ReorderStash
-
-CCodecBufferChannel::ReorderStash::ReorderStash() {
- clear();
-}
-
-void CCodecBufferChannel::ReorderStash::clear() {
- mPending.clear();
- mStash.clear();
- mDepth = 0;
- mKey = C2Config::ORDINAL;
-}
-
-void CCodecBufferChannel::ReorderStash::setDepth(uint32_t depth) {
- mPending.splice(mPending.end(), mStash);
- mDepth = depth;
-}
-void CCodecBufferChannel::ReorderStash::setKey(C2Config::ordinal_key_t key) {
- mPending.splice(mPending.end(), mStash);
- mKey = key;
-}
-
-bool CCodecBufferChannel::ReorderStash::pop(Entry *entry) {
- if (mPending.empty()) {
- return false;
- }
- entry->buffer = mPending.front().buffer;
- entry->timestamp = mPending.front().timestamp;
- entry->flags = mPending.front().flags;
- entry->ordinal = mPending.front().ordinal;
- mPending.pop_front();
- return true;
-}
-
-void CCodecBufferChannel::ReorderStash::emplace(
- const std::shared_ptr<C2Buffer> &buffer,
- int64_t timestamp,
- int32_t flags,
- const C2WorkOrdinalStruct &ordinal) {
- for (auto it = mStash.begin(); it != mStash.end(); ++it) {
- if (less(ordinal, it->ordinal)) {
- mStash.emplace(it, buffer, timestamp, flags, ordinal);
- return;
- }
- }
- mStash.emplace_back(buffer, timestamp, flags, ordinal);
- while (!mStash.empty() && mStash.size() > mDepth) {
- mPending.push_back(mStash.front());
- mStash.pop_front();
- }
-}
-
-void CCodecBufferChannel::ReorderStash::defer(
- const CCodecBufferChannel::ReorderStash::Entry &entry) {
- mPending.push_front(entry);
-}
-
-bool CCodecBufferChannel::ReorderStash::hasPending() const {
- return !mPending.empty();
-}
-
-bool CCodecBufferChannel::ReorderStash::less(
- const C2WorkOrdinalStruct &o1, const C2WorkOrdinalStruct &o2) {
- switch (mKey) {
- case C2Config::ORDINAL: return o1.frameIndex < o2.frameIndex;
- case C2Config::TIMESTAMP: return o1.timestamp < o2.timestamp;
- case C2Config::CUSTOM: return o1.customOrdinal < o2.customOrdinal;
- default:
- ALOGD("Unrecognized key; default to timestamp");
- return o1.frameIndex < o2.frameIndex;
- }
-}
-
-// CCodecBufferChannel
-
-CCodecBufferChannel::CCodecBufferChannel(
- const std::shared_ptr<CCodecCallback> &callback)
- : mHeapSeqNum(-1),
- mCCodecCallback(callback),
- mFrameIndex(0u),
- mFirstValidFrameIndex(0u),
- mMetaMode(MODE_NONE),
- mAvailablePipelineCapacity(),
- mInputMetEos(false) {
- Mutexed<std::unique_ptr<InputBuffers>>::Locked buffers(mInputBuffers);
- buffers->reset(new DummyInputBuffers(""));
-}
-
-CCodecBufferChannel::~CCodecBufferChannel() {
- if (mCrypto != nullptr && mDealer != nullptr && mHeapSeqNum >= 0) {
- mCrypto->unsetHeap(mHeapSeqNum);
- }
-}
-
-void CCodecBufferChannel::setComponent(
- const std::shared_ptr<Codec2Client::Component> &component) {
- mComponent = component;
- mComponentName = component->getName() + StringPrintf("#%d", int(uintptr_t(component.get()) % 997));
- mName = mComponentName.c_str();
-}
-
-status_t CCodecBufferChannel::setInputSurface(
- const std::shared_ptr<InputSurfaceWrapper> &surface) {
- ALOGV("[%s] setInputSurface", mName);
- mInputSurface = surface;
- return mInputSurface->connect(mComponent);
-}
-
-status_t CCodecBufferChannel::signalEndOfInputStream() {
- if (mInputSurface == nullptr) {
- return INVALID_OPERATION;
- }
- return mInputSurface->signalEndOfInputStream();
-}
-
-status_t CCodecBufferChannel::queueInputBufferInternal(const sp<MediaCodecBuffer> &buffer) {
- int64_t timeUs;
- CHECK(buffer->meta()->findInt64("timeUs", &timeUs));
-
- if (mInputMetEos) {
- ALOGD("[%s] buffers after EOS ignored (%lld us)", mName, (long long)timeUs);
- return OK;
- }
-
- int32_t flags = 0;
- int32_t tmp = 0;
- bool eos = false;
- if (buffer->meta()->findInt32("eos", &tmp) && tmp) {
- eos = true;
- mInputMetEos = true;
- ALOGV("[%s] input EOS", mName);
- }
- if (buffer->meta()->findInt32("csd", &tmp) && tmp) {
- flags |= C2FrameData::FLAG_CODEC_CONFIG;
- }
- ALOGV("[%s] queueInputBuffer: buffer->size() = %zu", mName, buffer->size());
- std::unique_ptr<C2Work> work(new C2Work);
- work->input.ordinal.timestamp = timeUs;
- work->input.ordinal.frameIndex = mFrameIndex++;
- // WORKAROUND: until codecs support handling work after EOS and max output sizing, use timestamp
- // manipulation to achieve image encoding via video codec, and to constrain encoded output.
- // Keep client timestamp in customOrdinal
- work->input.ordinal.customOrdinal = timeUs;
- work->input.buffers.clear();
-
- if (buffer->size() > 0u) {
- Mutexed<std::unique_ptr<InputBuffers>>::Locked buffers(mInputBuffers);
- std::shared_ptr<C2Buffer> c2buffer;
- if (!(*buffers)->releaseBuffer(buffer, &c2buffer, false)) {
- return -ENOENT;
- }
- work->input.buffers.push_back(c2buffer);
- } else {
- mAvailablePipelineCapacity.freeInputSlots(1, "queueInputBufferInternal");
- if (eos) {
- flags |= C2FrameData::FLAG_END_OF_STREAM;
- }
- }
- work->input.flags = (C2FrameData::flags_t)flags;
- // TODO: fill info's
-
- work->input.configUpdate = std::move(mParamsToBeSet);
- work->worklets.clear();
- work->worklets.emplace_back(new C2Worklet);
-
- std::list<std::unique_ptr<C2Work>> items;
- items.push_back(std::move(work));
- c2_status_t err = mComponent->queue(&items);
-
- if (err == C2_OK && eos && buffer->size() > 0u) {
- mCCodecCallback->onWorkQueued(false);
- work.reset(new C2Work);
- work->input.ordinal.timestamp = timeUs;
- work->input.ordinal.frameIndex = mFrameIndex++;
- // WORKAROUND: keep client timestamp in customOrdinal
- work->input.ordinal.customOrdinal = timeUs;
- work->input.buffers.clear();
- work->input.flags = C2FrameData::FLAG_END_OF_STREAM;
-
- items.clear();
- items.push_back(std::move(work));
- err = mComponent->queue(&items);
- }
- if (err == C2_OK) {
- mCCodecCallback->onWorkQueued(eos);
-
- Mutexed<std::unique_ptr<InputBuffers>>::Locked buffers(mInputBuffers);
- bool released = (*buffers)->releaseBuffer(buffer, nullptr, true);
- ALOGV("[%s] queueInputBuffer: buffer %sreleased", mName, released ? "" : "not ");
- }
-
- feedInputBufferIfAvailableInternal();
- return err;
-}
-
-status_t CCodecBufferChannel::setParameters(std::vector<std::unique_ptr<C2Param>> ¶ms) {
- QueueGuard guard(mSync);
- if (!guard.isRunning()) {
- ALOGD("[%s] setParameters is only supported in the running state.", mName);
- return -ENOSYS;
- }
- mParamsToBeSet.insert(mParamsToBeSet.end(),
- std::make_move_iterator(params.begin()),
- std::make_move_iterator(params.end()));
- params.clear();
- return OK;
-}
-
-status_t CCodecBufferChannel::queueInputBuffer(const sp<MediaCodecBuffer> &buffer) {
- QueueGuard guard(mSync);
- if (!guard.isRunning()) {
- ALOGD("[%s] No more buffers should be queued at current state.", mName);
- return -ENOSYS;
- }
- return queueInputBufferInternal(buffer);
-}
-
-status_t CCodecBufferChannel::queueSecureInputBuffer(
- const sp<MediaCodecBuffer> &buffer, bool secure, const uint8_t *key,
- const uint8_t *iv, CryptoPlugin::Mode mode, CryptoPlugin::Pattern pattern,
- const CryptoPlugin::SubSample *subSamples, size_t numSubSamples,
- AString *errorDetailMsg) {
- QueueGuard guard(mSync);
- if (!guard.isRunning()) {
- ALOGD("[%s] No more buffers should be queued at current state.", mName);
- return -ENOSYS;
- }
-
- if (!hasCryptoOrDescrambler()) {
- return -ENOSYS;
- }
- sp<EncryptedLinearBlockBuffer> encryptedBuffer((EncryptedLinearBlockBuffer *)buffer.get());
-
- ssize_t result = -1;
- ssize_t codecDataOffset = 0;
- if (mCrypto != nullptr) {
- hardware::drm::V1_0::DestinationBuffer destination;
- if (secure) {
- destination.type = DrmBufferType::NATIVE_HANDLE;
- destination.secureMemory = hidl_handle(encryptedBuffer->handle());
- } else {
- destination.type = DrmBufferType::SHARED_MEMORY;
- IMemoryToSharedBuffer(
- mDecryptDestination, mHeapSeqNum, &destination.nonsecureMemory);
- }
- hardware::drm::V1_0::SharedBuffer source;
- encryptedBuffer->fillSourceBuffer(&source);
- result = mCrypto->decrypt(
- key, iv, mode, pattern, source, buffer->offset(),
- subSamples, numSubSamples, destination, errorDetailMsg);
- if (result < 0) {
- return result;
- }
- if (destination.type == DrmBufferType::SHARED_MEMORY) {
- encryptedBuffer->copyDecryptedContent(mDecryptDestination, result);
- }
- } else {
- // Here we cast CryptoPlugin::SubSample to hardware::cas::native::V1_0::SubSample
- // directly, the structure definitions should match as checked in DescramblerImpl.cpp.
- hidl_vec<SubSample> hidlSubSamples;
- hidlSubSamples.setToExternal((SubSample *)subSamples, numSubSamples, false /*own*/);
-
- hardware::cas::native::V1_0::SharedBuffer srcBuffer;
- encryptedBuffer->fillSourceBuffer(&srcBuffer);
-
- DestinationBuffer dstBuffer;
- if (secure) {
- dstBuffer.type = BufferType::NATIVE_HANDLE;
- dstBuffer.secureMemory = hidl_handle(encryptedBuffer->handle());
- } else {
- dstBuffer.type = BufferType::SHARED_MEMORY;
- dstBuffer.nonsecureMemory = srcBuffer;
- }
-
- CasStatus status = CasStatus::OK;
- hidl_string detailedError;
- ScramblingControl sctrl = ScramblingControl::UNSCRAMBLED;
-
- if (key != nullptr) {
- sctrl = (ScramblingControl)key[0];
- // Adjust for the PES offset
- codecDataOffset = key[2] | (key[3] << 8);
- }
-
- auto returnVoid = mDescrambler->descramble(
- sctrl,
- hidlSubSamples,
- srcBuffer,
- 0,
- dstBuffer,
- 0,
- [&status, &result, &detailedError] (
- CasStatus _status, uint32_t _bytesWritten,
- const hidl_string& _detailedError) {
- status = _status;
- result = (ssize_t)_bytesWritten;
- detailedError = _detailedError;
- });
-
- if (!returnVoid.isOk() || status != CasStatus::OK || result < 0) {
- ALOGI("[%s] descramble failed, trans=%s, status=%d, result=%zd",
- mName, returnVoid.description().c_str(), status, result);
- return UNKNOWN_ERROR;
- }
-
- if (result < codecDataOffset) {
- ALOGD("invalid codec data offset: %zd, result %zd", codecDataOffset, result);
- return BAD_VALUE;
- }
-
- ALOGV("[%s] descramble succeeded, %zd bytes", mName, result);
-
- if (dstBuffer.type == BufferType::SHARED_MEMORY) {
- encryptedBuffer->copyDecryptedContentFromMemory(result);
- }
- }
-
- buffer->setRange(codecDataOffset, result - codecDataOffset);
- return queueInputBufferInternal(buffer);
-}
-
-void CCodecBufferChannel::feedInputBufferIfAvailable() {
- QueueGuard guard(mSync);
- if (!guard.isRunning()) {
- ALOGV("[%s] We're not running --- no input buffer reported", mName);
- return;
- }
- feedInputBufferIfAvailableInternal();
-}
-
-void CCodecBufferChannel::feedInputBufferIfAvailableInternal() {
- while (!mInputMetEos &&
- !mReorderStash.lock()->hasPending() &&
- mAvailablePipelineCapacity.allocate("feedInputBufferIfAvailable")) {
- sp<MediaCodecBuffer> inBuffer;
- size_t index;
- {
- Mutexed<std::unique_ptr<InputBuffers>>::Locked buffers(mInputBuffers);
- if (!(*buffers)->requestNewBuffer(&index, &inBuffer)) {
- ALOGV("[%s] no new buffer available", mName);
- mAvailablePipelineCapacity.free("feedInputBufferIfAvailable");
- break;
- }
- }
- ALOGV("[%s] new input index = %zu [%p]", mName, index, inBuffer.get());
- mCallback->onInputBufferAvailable(index, inBuffer);
- }
-}
-
-status_t CCodecBufferChannel::renderOutputBuffer(
- const sp<MediaCodecBuffer> &buffer, int64_t timestampNs) {
- ALOGV("[%s] renderOutputBuffer: %p", mName, buffer.get());
- std::shared_ptr<C2Buffer> c2Buffer;
- bool released = false;
- {
- Mutexed<std::unique_ptr<OutputBuffers>>::Locked buffers(mOutputBuffers);
- if (*buffers) {
- released = (*buffers)->releaseBuffer(buffer, &c2Buffer);
- }
- }
- // NOTE: some apps try to releaseOutputBuffer() with timestamp and/or render
- // set to true.
- sendOutputBuffers();
- // input buffer feeding may have been gated by pending output buffers
- feedInputBufferIfAvailable();
- if (!c2Buffer) {
- if (released) {
- ALOGD("[%s] The app is calling releaseOutputBuffer() with "
- "timestamp or render=true with non-video buffers. Apps should "
- "call releaseOutputBuffer() with render=false for those.",
- mName);
- }
- return INVALID_OPERATION;
- }
-
-#if 0
- const std::vector<std::shared_ptr<const C2Info>> infoParams = c2Buffer->info();
- ALOGV("[%s] queuing gfx buffer with %zu infos", mName, infoParams.size());
- for (const std::shared_ptr<const C2Info> &info : infoParams) {
- AString res;
- for (size_t ix = 0; ix + 3 < info->size(); ix += 4) {
- if (ix) res.append(", ");
- res.append(*((int32_t*)info.get() + (ix / 4)));
- }
- ALOGV(" [%s]", res.c_str());
- }
-#endif
- std::shared_ptr<const C2StreamRotationInfo::output> rotation =
- std::static_pointer_cast<const C2StreamRotationInfo::output>(
- c2Buffer->getInfo(C2StreamRotationInfo::output::PARAM_TYPE));
- bool flip = rotation && (rotation->flip & 1);
- uint32_t quarters = ((rotation ? rotation->value : 0) / 90) & 3;
- uint32_t transform = 0;
- switch (quarters) {
- case 0: // no rotation
- transform = flip ? HAL_TRANSFORM_FLIP_H : 0;
- break;
- case 1: // 90 degrees counter-clockwise
- transform = flip ? (HAL_TRANSFORM_FLIP_V | HAL_TRANSFORM_ROT_90)
- : HAL_TRANSFORM_ROT_270;
- break;
- case 2: // 180 degrees
- transform = flip ? HAL_TRANSFORM_FLIP_V : HAL_TRANSFORM_ROT_180;
- break;
- case 3: // 90 degrees clockwise
- transform = flip ? (HAL_TRANSFORM_FLIP_H | HAL_TRANSFORM_ROT_90)
- : HAL_TRANSFORM_ROT_90;
- break;
- }
-
- std::shared_ptr<const C2StreamSurfaceScalingInfo::output> surfaceScaling =
- std::static_pointer_cast<const C2StreamSurfaceScalingInfo::output>(
- c2Buffer->getInfo(C2StreamSurfaceScalingInfo::output::PARAM_TYPE));
- uint32_t videoScalingMode = NATIVE_WINDOW_SCALING_MODE_SCALE_TO_WINDOW;
- if (surfaceScaling) {
- videoScalingMode = surfaceScaling->value;
- }
-
- // Use dataspace from format as it has the default aspects already applied
- android_dataspace_t dataSpace = HAL_DATASPACE_UNKNOWN; // this is 0
- (void)buffer->format()->findInt32("android._dataspace", (int32_t *)&dataSpace);
-
- // HDR static info
- std::shared_ptr<const C2StreamHdrStaticInfo::output> hdrStaticInfo =
- std::static_pointer_cast<const C2StreamHdrStaticInfo::output>(
- c2Buffer->getInfo(C2StreamHdrStaticInfo::output::PARAM_TYPE));
-
- // HDR10 plus info
- std::shared_ptr<const C2StreamHdr10PlusInfo::output> hdr10PlusInfo =
- std::static_pointer_cast<const C2StreamHdr10PlusInfo::output>(
- c2Buffer->getInfo(C2StreamHdr10PlusInfo::output::PARAM_TYPE));
-
- {
- Mutexed<OutputSurface>::Locked output(mOutputSurface);
- if (output->surface == nullptr) {
- ALOGI("[%s] cannot render buffer without surface", mName);
- return OK;
- }
- }
-
- std::vector<C2ConstGraphicBlock> blocks = c2Buffer->data().graphicBlocks();
- if (blocks.size() != 1u) {
- ALOGD("[%s] expected 1 graphic block, but got %zu", mName, blocks.size());
- return UNKNOWN_ERROR;
- }
- const C2ConstGraphicBlock &block = blocks.front();
-
- // TODO: revisit this after C2Fence implementation.
- android::IGraphicBufferProducer::QueueBufferInput qbi(
- timestampNs,
- false, // droppable
- dataSpace,
- Rect(blocks.front().crop().left,
- blocks.front().crop().top,
- blocks.front().crop().right(),
- blocks.front().crop().bottom()),
- videoScalingMode,
- transform,
- Fence::NO_FENCE, 0);
- if (hdrStaticInfo || hdr10PlusInfo) {
- HdrMetadata hdr;
- if (hdrStaticInfo) {
- struct android_smpte2086_metadata smpte2086_meta = {
- .displayPrimaryRed = {
- hdrStaticInfo->mastering.red.x, hdrStaticInfo->mastering.red.y
- },
- .displayPrimaryGreen = {
- hdrStaticInfo->mastering.green.x, hdrStaticInfo->mastering.green.y
- },
- .displayPrimaryBlue = {
- hdrStaticInfo->mastering.blue.x, hdrStaticInfo->mastering.blue.y
- },
- .whitePoint = {
- hdrStaticInfo->mastering.white.x, hdrStaticInfo->mastering.white.y
- },
- .maxLuminance = hdrStaticInfo->mastering.maxLuminance,
- .minLuminance = hdrStaticInfo->mastering.minLuminance,
- };
-
- struct android_cta861_3_metadata cta861_meta = {
- .maxContentLightLevel = hdrStaticInfo->maxCll,
- .maxFrameAverageLightLevel = hdrStaticInfo->maxFall,
- };
-
- hdr.validTypes = HdrMetadata::SMPTE2086 | HdrMetadata::CTA861_3;
- hdr.smpte2086 = smpte2086_meta;
- hdr.cta8613 = cta861_meta;
- }
- if (hdr10PlusInfo) {
- hdr.validTypes |= HdrMetadata::HDR10PLUS;
- hdr.hdr10plus.assign(
- hdr10PlusInfo->m.value,
- hdr10PlusInfo->m.value + hdr10PlusInfo->flexCount());
- }
- qbi.setHdrMetadata(hdr);
- }
- // we don't have dirty regions
- qbi.setSurfaceDamage(Region::INVALID_REGION);
- android::IGraphicBufferProducer::QueueBufferOutput qbo;
- status_t result = mComponent->queueToOutputSurface(block, qbi, &qbo);
- if (result != OK) {
- ALOGI("[%s] queueBuffer failed: %d", mName, result);
- return result;
- }
- ALOGV("[%s] queue buffer successful", mName);
-
- int64_t mediaTimeUs = 0;
- (void)buffer->meta()->findInt64("timeUs", &mediaTimeUs);
- mCCodecCallback->onOutputFramesRendered(mediaTimeUs, timestampNs);
-
- return OK;
-}
-
-status_t CCodecBufferChannel::discardBuffer(const sp<MediaCodecBuffer> &buffer) {
- ALOGV("[%s] discardBuffer: %p", mName, buffer.get());
- bool released = false;
- {
- Mutexed<std::unique_ptr<InputBuffers>>::Locked buffers(mInputBuffers);
- if (*buffers && (*buffers)->releaseBuffer(buffer, nullptr, true)) {
- buffers.unlock();
- released = true;
- mAvailablePipelineCapacity.freeInputSlots(1, "discardBuffer");
- }
- }
- {
- Mutexed<std::unique_ptr<OutputBuffers>>::Locked buffers(mOutputBuffers);
- if (*buffers && (*buffers)->releaseBuffer(buffer, nullptr)) {
- buffers.unlock();
- released = true;
- }
- }
- if (released) {
- sendOutputBuffers();
- feedInputBufferIfAvailable();
- } else {
- ALOGD("[%s] MediaCodec discarded an unknown buffer", mName);
- }
- return OK;
-}
-
-void CCodecBufferChannel::getInputBufferArray(Vector<sp<MediaCodecBuffer>> *array) {
- array->clear();
- Mutexed<std::unique_ptr<InputBuffers>>::Locked buffers(mInputBuffers);
-
- if (!(*buffers)->isArrayMode()) {
- *buffers = (*buffers)->toArrayMode(kMinInputBufferArraySize);
- }
-
- (*buffers)->getArray(array);
-}
-
-void CCodecBufferChannel::getOutputBufferArray(Vector<sp<MediaCodecBuffer>> *array) {
- array->clear();
- Mutexed<std::unique_ptr<OutputBuffers>>::Locked buffers(mOutputBuffers);
-
- if (!(*buffers)->isArrayMode()) {
- *buffers = (*buffers)->toArrayMode(kMinOutputBufferArraySize);
- }
-
- (*buffers)->getArray(array);
-}
-
-status_t CCodecBufferChannel::start(
- const sp<AMessage> &inputFormat, const sp<AMessage> &outputFormat) {
- C2StreamBufferTypeSetting::input iStreamFormat(0u);
- C2StreamBufferTypeSetting::output oStreamFormat(0u);
- C2PortReorderBufferDepthTuning::output reorderDepth;
- C2PortReorderKeySetting::output reorderKey;
- c2_status_t err = mComponent->query(
- {
- &iStreamFormat,
- &oStreamFormat,
- &reorderDepth,
- &reorderKey,
- },
- {},
- C2_DONT_BLOCK,
- nullptr);
- if (err == C2_BAD_INDEX) {
- if (!iStreamFormat || !oStreamFormat) {
- return UNKNOWN_ERROR;
- }
- } else if (err != C2_OK) {
- return UNKNOWN_ERROR;
- }
-
- {
- Mutexed<ReorderStash>::Locked reorder(mReorderStash);
- reorder->clear();
- if (reorderDepth) {
- reorder->setDepth(reorderDepth.value);
- }
- if (reorderKey) {
- reorder->setKey(reorderKey.value);
- }
- }
- // TODO: get this from input format
- bool secure = mComponent->getName().find(".secure") != std::string::npos;
-
- std::shared_ptr<C2AllocatorStore> allocatorStore = GetCodec2PlatformAllocatorStore();
- int poolMask = property_get_int32(
- "debug.stagefright.c2-poolmask",
- 1 << C2PlatformAllocatorStore::ION |
- 1 << C2PlatformAllocatorStore::BUFFERQUEUE);
-
- if (inputFormat != nullptr) {
- bool graphic = (iStreamFormat.value == C2FormatVideo);
- std::shared_ptr<C2BlockPool> pool;
- {
- Mutexed<BlockPools>::Locked pools(mBlockPools);
-
- // set default allocator ID.
- pools->inputAllocatorId = (graphic) ? C2PlatformAllocatorStore::GRALLOC
- : C2PlatformAllocatorStore::ION;
-
- // query C2PortAllocatorsTuning::input from component. If an allocator ID is obtained
- // from component, create the input block pool with given ID. Otherwise, use default IDs.
- std::vector<std::unique_ptr<C2Param>> params;
- err = mComponent->query({ },
- { C2PortAllocatorsTuning::input::PARAM_TYPE },
- C2_DONT_BLOCK,
- ¶ms);
- if ((err != C2_OK && err != C2_BAD_INDEX) || params.size() != 1) {
- ALOGD("[%s] Query input allocators returned %zu params => %s (%u)",
- mName, params.size(), asString(err), err);
- } else if (err == C2_OK && params.size() == 1) {
- C2PortAllocatorsTuning::input *inputAllocators =
- C2PortAllocatorsTuning::input::From(params[0].get());
- if (inputAllocators && inputAllocators->flexCount() > 0) {
- std::shared_ptr<C2Allocator> allocator;
- // verify allocator IDs and resolve default allocator
- allocatorStore->fetchAllocator(inputAllocators->m.values[0], &allocator);
- if (allocator) {
- pools->inputAllocatorId = allocator->getId();
- } else {
- ALOGD("[%s] component requested invalid input allocator ID %u",
- mName, inputAllocators->m.values[0]);
- }
- }
- }
-
- // TODO: use C2Component wrapper to associate this pool with ourselves
- if ((poolMask >> pools->inputAllocatorId) & 1) {
- err = CreateCodec2BlockPool(pools->inputAllocatorId, nullptr, &pool);
- ALOGD("[%s] Created input block pool with allocatorID %u => poolID %llu - %s (%d)",
- mName, pools->inputAllocatorId,
- (unsigned long long)(pool ? pool->getLocalId() : 111000111),
- asString(err), err);
- } else {
- err = C2_NOT_FOUND;
- }
- if (err != C2_OK) {
- C2BlockPool::local_id_t inputPoolId =
- graphic ? C2BlockPool::BASIC_GRAPHIC : C2BlockPool::BASIC_LINEAR;
- err = GetCodec2BlockPool(inputPoolId, nullptr, &pool);
- ALOGD("[%s] Using basic input block pool with poolID %llu => got %llu - %s (%d)",
- mName, (unsigned long long)inputPoolId,
- (unsigned long long)(pool ? pool->getLocalId() : 111000111),
- asString(err), err);
- if (err != C2_OK) {
- return NO_MEMORY;
- }
- }
- pools->inputPool = pool;
- }
-
- bool forceArrayMode = false;
- Mutexed<std::unique_ptr<InputBuffers>>::Locked buffers(mInputBuffers);
- if (graphic) {
- if (mInputSurface) {
- buffers->reset(new DummyInputBuffers(mName));
- } else if (mMetaMode == MODE_ANW) {
- buffers->reset(new GraphicMetadataInputBuffers(mName));
- } else {
- buffers->reset(new GraphicInputBuffers(mName));
- }
- } else {
- if (hasCryptoOrDescrambler()) {
- int32_t capacity = kLinearBufferSize;
- (void)inputFormat->findInt32(KEY_MAX_INPUT_SIZE, &capacity);
- if ((size_t)capacity > kMaxLinearBufferSize) {
- ALOGD("client requested %d, capped to %zu", capacity, kMaxLinearBufferSize);
- capacity = kMaxLinearBufferSize;
- }
- if (mDealer == nullptr) {
- mDealer = new MemoryDealer(
- align(capacity, MemoryDealer::getAllocationAlignment())
- * (kMinInputBufferArraySize + 1),
- "EncryptedLinearInputBuffers");
- mDecryptDestination = mDealer->allocate((size_t)capacity);
- }
- if (mCrypto != nullptr && mHeapSeqNum < 0) {
- sp<HidlMemory> heap = fromHeap(mDealer->getMemoryHeap());
- mHeapSeqNum = mCrypto->setHeap(heap);
- } else {
- mHeapSeqNum = -1;
- }
- buffers->reset(new EncryptedLinearInputBuffers(
- secure, mDealer, mCrypto, mHeapSeqNum, (size_t)capacity, mName));
- forceArrayMode = true;
- } else {
- buffers->reset(new LinearInputBuffers(mName));
- }
- }
- (*buffers)->setFormat(inputFormat);
-
- if (err == C2_OK) {
- (*buffers)->setPool(pool);
- } else {
- // TODO: error
- }
-
- if (forceArrayMode) {
- *buffers = (*buffers)->toArrayMode(kMinInputBufferArraySize);
- }
- }
-
- if (outputFormat != nullptr) {
- sp<IGraphicBufferProducer> outputSurface;
- uint32_t outputGeneration;
- {
- Mutexed<OutputSurface>::Locked output(mOutputSurface);
- outputSurface = output->surface ?
- output->surface->getIGraphicBufferProducer() : nullptr;
- outputGeneration = output->generation;
- }
-
- bool graphic = (oStreamFormat.value == C2FormatVideo);
- C2BlockPool::local_id_t outputPoolId_;
-
- {
- Mutexed<BlockPools>::Locked pools(mBlockPools);
-
- // set default allocator ID.
- pools->outputAllocatorId = (graphic) ? C2PlatformAllocatorStore::GRALLOC
- : C2PlatformAllocatorStore::ION;
-
- // query C2PortAllocatorsTuning::output from component, or use default allocator if
- // unsuccessful.
- std::vector<std::unique_ptr<C2Param>> params;
- err = mComponent->query({ },
- { C2PortAllocatorsTuning::output::PARAM_TYPE },
- C2_DONT_BLOCK,
- ¶ms);
- if ((err != C2_OK && err != C2_BAD_INDEX) || params.size() != 1) {
- ALOGD("[%s] Query output allocators returned %zu params => %s (%u)",
- mName, params.size(), asString(err), err);
- } else if (err == C2_OK && params.size() == 1) {
- C2PortAllocatorsTuning::output *outputAllocators =
- C2PortAllocatorsTuning::output::From(params[0].get());
- if (outputAllocators && outputAllocators->flexCount() > 0) {
- std::shared_ptr<C2Allocator> allocator;
- // verify allocator IDs and resolve default allocator
- allocatorStore->fetchAllocator(outputAllocators->m.values[0], &allocator);
- if (allocator) {
- pools->outputAllocatorId = allocator->getId();
- } else {
- ALOGD("[%s] component requested invalid output allocator ID %u",
- mName, outputAllocators->m.values[0]);
- }
- }
- }
-
- // use bufferqueue if outputting to a surface.
- // query C2PortSurfaceAllocatorTuning::output from component, or use default allocator
- // if unsuccessful.
- if (outputSurface) {
- params.clear();
- err = mComponent->query({ },
- { C2PortSurfaceAllocatorTuning::output::PARAM_TYPE },
- C2_DONT_BLOCK,
- ¶ms);
- if ((err != C2_OK && err != C2_BAD_INDEX) || params.size() != 1) {
- ALOGD("[%s] Query output surface allocator returned %zu params => %s (%u)",
- mName, params.size(), asString(err), err);
- } else if (err == C2_OK && params.size() == 1) {
- C2PortSurfaceAllocatorTuning::output *surfaceAllocator =
- C2PortSurfaceAllocatorTuning::output::From(params[0].get());
- if (surfaceAllocator) {
- std::shared_ptr<C2Allocator> allocator;
- // verify allocator IDs and resolve default allocator
- allocatorStore->fetchAllocator(surfaceAllocator->value, &allocator);
- if (allocator) {
- pools->outputAllocatorId = allocator->getId();
- } else {
- ALOGD("[%s] component requested invalid surface output allocator ID %u",
- mName, surfaceAllocator->value);
- err = C2_BAD_VALUE;
- }
- }
- }
- if (pools->outputAllocatorId == C2PlatformAllocatorStore::GRALLOC
- && err != C2_OK
- && ((poolMask >> C2PlatformAllocatorStore::BUFFERQUEUE) & 1)) {
- pools->outputAllocatorId = C2PlatformAllocatorStore::BUFFERQUEUE;
- }
- }
-
- if ((poolMask >> pools->outputAllocatorId) & 1) {
- err = mComponent->createBlockPool(
- pools->outputAllocatorId, &pools->outputPoolId, &pools->outputPoolIntf);
- ALOGI("[%s] Created output block pool with allocatorID %u => poolID %llu - %s",
- mName, pools->outputAllocatorId,
- (unsigned long long)pools->outputPoolId,
- asString(err));
- } else {
- err = C2_NOT_FOUND;
- }
- if (err != C2_OK) {
- // use basic pool instead
- pools->outputPoolId =
- graphic ? C2BlockPool::BASIC_GRAPHIC : C2BlockPool::BASIC_LINEAR;
- }
-
- // Configure output block pool ID as parameter C2PortBlockPoolsTuning::output to
- // component.
- std::unique_ptr<C2PortBlockPoolsTuning::output> poolIdsTuning =
- C2PortBlockPoolsTuning::output::AllocUnique({ pools->outputPoolId });
-
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- err = mComponent->config({ poolIdsTuning.get() }, C2_MAY_BLOCK, &failures);
- ALOGD("[%s] Configured output block pool ids %llu => %s",
- mName, (unsigned long long)poolIdsTuning->m.values[0], asString(err));
- outputPoolId_ = pools->outputPoolId;
- }
-
- Mutexed<std::unique_ptr<OutputBuffers>>::Locked buffers(mOutputBuffers);
-
- if (graphic) {
- if (outputSurface) {
- buffers->reset(new GraphicOutputBuffers(mName));
- } else {
- buffers->reset(new RawGraphicOutputBuffers(mName));
- }
- } else {
- buffers->reset(new LinearOutputBuffers(mName));
- }
- (*buffers)->setFormat(outputFormat->dup());
-
-
- // Try to set output surface to created block pool if given.
- if (outputSurface) {
- mComponent->setOutputSurface(
- outputPoolId_,
- outputSurface,
- outputGeneration);
- }
-
- if (oStreamFormat.value == C2BufferData::LINEAR
- && mComponentName.find("c2.qti.") == std::string::npos) {
- // WORKAROUND: if we're using early CSD workaround we convert to
- // array mode, to appease apps assuming the output
- // buffers to be of the same size.
- (*buffers) = (*buffers)->toArrayMode(kMinOutputBufferArraySize);
-
- int32_t channelCount;
- int32_t sampleRate;
- if (outputFormat->findInt32(KEY_CHANNEL_COUNT, &channelCount)
- && outputFormat->findInt32(KEY_SAMPLE_RATE, &sampleRate)) {
- int32_t delay = 0;
- int32_t padding = 0;;
- if (!outputFormat->findInt32("encoder-delay", &delay)) {
- delay = 0;
- }
- if (!outputFormat->findInt32("encoder-padding", &padding)) {
- padding = 0;
- }
- if (delay || padding) {
- // We need write access to the buffers, and we're already in
- // array mode.
- (*buffers)->initSkipCutBuffer(delay, padding, sampleRate, channelCount);
- }
- }
- }
- }
-
- // Set up pipeline control. This has to be done after mInputBuffers and
- // mOutputBuffers are initialized to make sure that lingering callbacks
- // about buffers from the previous generation do not interfere with the
- // newly initialized pipeline capacity.
-
- // Query delays
- C2PortRequestedDelayTuning::input inputDelay;
- C2PortRequestedDelayTuning::output outputDelay;
- C2RequestedPipelineDelayTuning pipelineDelay;
-#if 0
- err = mComponent->query(
- { &inputDelay, &pipelineDelay, &outputDelay },
- {},
- C2_DONT_BLOCK,
- nullptr);
- mAvailablePipelineCapacity.initialize(
- inputDelay,
- inputDelay + pipelineDelay,
- inputDelay + pipelineDelay + outputDelay,
- mName);
-#else
- mAvailablePipelineCapacity.initialize(
- kMinInputBufferArraySize,
- kMaxPipelineCapacity,
- mName);
-#endif
-
- mInputMetEos = false;
- mSync.start();
- return OK;
-}
-
-status_t CCodecBufferChannel::requestInitialInputBuffers() {
- if (mInputSurface) {
- return OK;
- }
-
- C2StreamFormatConfig::output oStreamFormat(0u);
- c2_status_t err = mComponent->query({ &oStreamFormat }, {}, C2_DONT_BLOCK, nullptr);
- if (err != C2_OK) {
- return UNKNOWN_ERROR;
- }
- std::vector<sp<MediaCodecBuffer>> toBeQueued;
- // TODO: use proper buffer depth instead of this random value
- for (size_t i = 0; i < kMinInputBufferArraySize; ++i) {
- size_t index;
- sp<MediaCodecBuffer> buffer;
- {
- Mutexed<std::unique_ptr<InputBuffers>>::Locked buffers(mInputBuffers);
- if (!(*buffers)->requestNewBuffer(&index, &buffer)) {
- if (i == 0) {
- ALOGW("[%s] start: cannot allocate memory at all", mName);
- return NO_MEMORY;
- } else {
- ALOGV("[%s] start: cannot allocate memory, only %zu buffers allocated",
- mName, i);
- }
- break;
- }
- }
- if (buffer) {
- Mutexed<std::list<sp<ABuffer>>>::Locked configs(mFlushedConfigs);
- ALOGV("[%s] input buffer %zu available", mName, index);
- bool post = true;
- if (!configs->empty()) {
- sp<ABuffer> config = configs->front();
- if (buffer->capacity() >= config->size()) {
- memcpy(buffer->base(), config->data(), config->size());
- buffer->setRange(0, config->size());
- buffer->meta()->clear();
- buffer->meta()->setInt64("timeUs", 0);
- buffer->meta()->setInt32("csd", 1);
- post = false;
- } else {
- ALOGD("[%s] buffer capacity too small for the config (%zu < %zu)",
- mName, buffer->capacity(), config->size());
- }
- } else if (oStreamFormat.value == C2BufferData::LINEAR && i == 0
- && mComponentName.find("c2.qti.") == std::string::npos) {
- // WORKAROUND: Some apps expect CSD available without queueing
- // any input. Queue an empty buffer to get the CSD.
- buffer->setRange(0, 0);
- buffer->meta()->clear();
- buffer->meta()->setInt64("timeUs", 0);
- post = false;
- }
- if (mAvailablePipelineCapacity.allocate("requestInitialInputBuffers")) {
- if (post) {
- mCallback->onInputBufferAvailable(index, buffer);
- } else {
- toBeQueued.emplace_back(buffer);
- }
- } else {
- ALOGD("[%s] pipeline is full while requesting %zu-th input buffer",
- mName, i);
- }
- }
- }
- for (const sp<MediaCodecBuffer> &buffer : toBeQueued) {
- if (queueInputBufferInternal(buffer) != OK) {
- mAvailablePipelineCapacity.freeComponentSlot("requestInitialInputBuffers");
- }
- }
- return OK;
-}
-
-void CCodecBufferChannel::stop() {
- mSync.stop();
- mFirstValidFrameIndex = mFrameIndex.load(std::memory_order_relaxed);
- if (mInputSurface != nullptr) {
- mInputSurface.reset();
- }
-}
-
-void CCodecBufferChannel::flush(const std::list<std::unique_ptr<C2Work>> &flushedWork) {
- ALOGV("[%s] flush", mName);
- {
- Mutexed<std::list<sp<ABuffer>>>::Locked configs(mFlushedConfigs);
- for (const std::unique_ptr<C2Work> &work : flushedWork) {
- if (!(work->input.flags & C2FrameData::FLAG_CODEC_CONFIG)) {
- continue;
- }
- if (work->input.buffers.empty()
- || work->input.buffers.front()->data().linearBlocks().empty()) {
- ALOGD("[%s] no linear codec config data found", mName);
- continue;
- }
- C2ReadView view =
- work->input.buffers.front()->data().linearBlocks().front().map().get();
- if (view.error() != C2_OK) {
- ALOGD("[%s] failed to map flushed codec config data: %d", mName, view.error());
- continue;
- }
- configs->push_back(ABuffer::CreateAsCopy(view.data(), view.capacity()));
- ALOGV("[%s] stashed flushed codec config data (size=%u)", mName, view.capacity());
- }
- }
- {
- Mutexed<std::unique_ptr<InputBuffers>>::Locked buffers(mInputBuffers);
- (*buffers)->flush();
- }
- {
- Mutexed<std::unique_ptr<OutputBuffers>>::Locked buffers(mOutputBuffers);
- (*buffers)->flush(flushedWork);
- }
-}
-
-void CCodecBufferChannel::onWorkDone(
- std::unique_ptr<C2Work> work, const sp<AMessage> &outputFormat,
- const C2StreamInitDataInfo::output *initData,
- size_t numDiscardedInputBuffers) {
- if (handleWork(std::move(work), outputFormat, initData)) {
- mAvailablePipelineCapacity.freeInputSlots(numDiscardedInputBuffers,
- "onWorkDone");
- feedInputBufferIfAvailable();
- }
-}
-
-void CCodecBufferChannel::onInputBufferDone(
- const std::shared_ptr<C2Buffer>& buffer) {
- bool newInputSlotAvailable;
- {
- Mutexed<std::unique_ptr<InputBuffers>>::Locked buffers(mInputBuffers);
- newInputSlotAvailable = (*buffers)->expireComponentBuffer(buffer);
- if (newInputSlotAvailable) {
- mAvailablePipelineCapacity.freeInputSlots(1, "onInputBufferDone");
- }
- }
- if (newInputSlotAvailable) {
- feedInputBufferIfAvailable();
- }
-}
-
-bool CCodecBufferChannel::handleWork(
- std::unique_ptr<C2Work> work,
- const sp<AMessage> &outputFormat,
- const C2StreamInitDataInfo::output *initData) {
- if ((work->input.ordinal.frameIndex - mFirstValidFrameIndex.load()).peek() < 0) {
- // Discard frames from previous generation.
- ALOGD("[%s] Discard frames from previous generation.", mName);
- return false;
- }
-
- if (work->worklets.size() != 1u
- || !work->worklets.front()
- || !(work->worklets.front()->output.flags & C2FrameData::FLAG_INCOMPLETE)) {
- mAvailablePipelineCapacity.freeComponentSlot("handleWork");
- }
-
- if (work->result == C2_NOT_FOUND) {
- ALOGD("[%s] flushed work; ignored.", mName);
- return true;
- }
-
- if (work->result != C2_OK) {
- ALOGD("[%s] work failed to complete: %d", mName, work->result);
- mCCodecCallback->onError(work->result, ACTION_CODE_FATAL);
- return false;
- }
-
- // NOTE: MediaCodec usage supposedly have only one worklet
- if (work->worklets.size() != 1u) {
- ALOGI("[%s] onWorkDone: incorrect number of worklets: %zu",
- mName, work->worklets.size());
- mCCodecCallback->onError(UNKNOWN_ERROR, ACTION_CODE_FATAL);
- return false;
- }
-
- const std::unique_ptr<C2Worklet> &worklet = work->worklets.front();
-
- std::shared_ptr<C2Buffer> buffer;
- // NOTE: MediaCodec usage supposedly have only one output stream.
- if (worklet->output.buffers.size() > 1u) {
- ALOGI("[%s] onWorkDone: incorrect number of output buffers: %zu",
- mName, worklet->output.buffers.size());
- mCCodecCallback->onError(UNKNOWN_ERROR, ACTION_CODE_FATAL);
- return false;
- } else if (worklet->output.buffers.size() == 1u) {
- buffer = worklet->output.buffers[0];
- if (!buffer) {
- ALOGD("[%s] onWorkDone: nullptr found in buffers; ignored.", mName);
- }
- }
-
- while (!worklet->output.configUpdate.empty()) {
- std::unique_ptr<C2Param> param;
- worklet->output.configUpdate.back().swap(param);
- worklet->output.configUpdate.pop_back();
- switch (param->coreIndex().coreIndex()) {
- case C2PortReorderBufferDepthTuning::CORE_INDEX: {
- C2PortReorderBufferDepthTuning::output reorderDepth;
- if (reorderDepth.updateFrom(*param)) {
- mReorderStash.lock()->setDepth(reorderDepth.value);
- ALOGV("[%s] onWorkDone: updated reorder depth to %u",
- mName, reorderDepth.value);
- } else {
- ALOGD("[%s] onWorkDone: failed to read reorder depth", mName);
- }
- break;
- }
- case C2PortReorderKeySetting::CORE_INDEX: {
- C2PortReorderKeySetting::output reorderKey;
- if (reorderKey.updateFrom(*param)) {
- mReorderStash.lock()->setKey(reorderKey.value);
- ALOGV("[%s] onWorkDone: updated reorder key to %u",
- mName, reorderKey.value);
- } else {
- ALOGD("[%s] onWorkDone: failed to read reorder key", mName);
- }
- break;
- }
- default:
- ALOGV("[%s] onWorkDone: unrecognized config update (%08X)",
- mName, param->index());
- break;
- }
- }
-
- if (outputFormat != nullptr) {
- Mutexed<std::unique_ptr<OutputBuffers>>::Locked buffers(mOutputBuffers);
- ALOGD("[%s] onWorkDone: output format changed to %s",
- mName, outputFormat->debugString().c_str());
- (*buffers)->setFormat(outputFormat);
-
- AString mediaType;
- if (outputFormat->findString(KEY_MIME, &mediaType)
- && mediaType == MIMETYPE_AUDIO_RAW) {
- int32_t channelCount;
- int32_t sampleRate;
- if (outputFormat->findInt32(KEY_CHANNEL_COUNT, &channelCount)
- && outputFormat->findInt32(KEY_SAMPLE_RATE, &sampleRate)) {
- (*buffers)->updateSkipCutBuffer(sampleRate, channelCount);
- }
- }
- }
-
- int32_t flags = 0;
- if (worklet->output.flags & C2FrameData::FLAG_END_OF_STREAM) {
- flags |= MediaCodec::BUFFER_FLAG_EOS;
- ALOGV("[%s] onWorkDone: output EOS", mName);
- }
-
- sp<MediaCodecBuffer> outBuffer;
- size_t index;
-
- // WORKAROUND: adjust output timestamp based on client input timestamp and codec
- // input timestamp. Codec output timestamp (in the timestamp field) shall correspond to
- // the codec input timestamp, but client output timestamp should (reported in timeUs)
- // shall correspond to the client input timesamp (in customOrdinal). By using the
- // delta between the two, this allows for some timestamp deviation - e.g. if one input
- // produces multiple output.
- c2_cntr64_t timestamp =
- worklet->output.ordinal.timestamp + work->input.ordinal.customOrdinal
- - work->input.ordinal.timestamp;
- ALOGV("[%s] onWorkDone: input %lld, codec %lld => output %lld => %lld",
- mName,
- work->input.ordinal.customOrdinal.peekll(),
- work->input.ordinal.timestamp.peekll(),
- worklet->output.ordinal.timestamp.peekll(),
- timestamp.peekll());
-
- if (initData != nullptr) {
- Mutexed<std::unique_ptr<OutputBuffers>>::Locked buffers(mOutputBuffers);
- if ((*buffers)->registerCsd(initData, &index, &outBuffer) == OK) {
- outBuffer->meta()->setInt64("timeUs", timestamp.peek());
- outBuffer->meta()->setInt32("flags", MediaCodec::BUFFER_FLAG_CODECCONFIG);
- ALOGV("[%s] onWorkDone: csd index = %zu [%p]", mName, index, outBuffer.get());
-
- buffers.unlock();
- mCallback->onOutputBufferAvailable(index, outBuffer);
- buffers.lock();
- } else {
- ALOGD("[%s] onWorkDone: unable to register csd", mName);
- buffers.unlock();
- mCCodecCallback->onError(UNKNOWN_ERROR, ACTION_CODE_FATAL);
- buffers.lock();
- return false;
- }
- }
-
- if (!buffer && !flags) {
- ALOGV("[%s] onWorkDone: Not reporting output buffer (%lld)",
- mName, work->input.ordinal.frameIndex.peekull());
- return true;
- }
-
- if (buffer) {
- for (const std::shared_ptr<const C2Info> &info : buffer->info()) {
- // TODO: properly translate these to metadata
- switch (info->coreIndex().coreIndex()) {
- case C2StreamPictureTypeMaskInfo::CORE_INDEX:
- if (((C2StreamPictureTypeMaskInfo *)info.get())->value & C2PictureTypeKeyFrame) {
- flags |= MediaCodec::BUFFER_FLAG_SYNCFRAME;
- }
- break;
- default:
- break;
- }
- }
- }
-
- {
- Mutexed<ReorderStash>::Locked reorder(mReorderStash);
- reorder->emplace(buffer, timestamp.peek(), flags, worklet->output.ordinal);
- if (flags & MediaCodec::BUFFER_FLAG_EOS) {
- // Flush reorder stash
- reorder->setDepth(0);
- }
- }
- sendOutputBuffers();
- return true;
-}
-
-void CCodecBufferChannel::sendOutputBuffers() {
- ReorderStash::Entry entry;
- sp<MediaCodecBuffer> outBuffer;
- size_t index;
-
- while (true) {
- {
- Mutexed<ReorderStash>::Locked reorder(mReorderStash);
- if (!reorder->hasPending()) {
- break;
- }
- if (!reorder->pop(&entry)) {
- break;
- }
- }
- Mutexed<std::unique_ptr<OutputBuffers>>::Locked buffers(mOutputBuffers);
- status_t err = (*buffers)->registerBuffer(entry.buffer, &index, &outBuffer);
- if (err != OK) {
- if (err != WOULD_BLOCK) {
- OutputBuffersArray *array = (OutputBuffersArray *)buffers->get();
- array->realloc(entry.buffer);
- mCCodecCallback->onOutputBuffersChanged();
- }
- buffers.unlock();
- ALOGV("[%s] sendOutputBuffers: unable to register output buffer", mName);
- mReorderStash.lock()->defer(entry);
- return;
- }
- buffers.unlock();
-
- outBuffer->meta()->setInt64("timeUs", entry.timestamp);
- outBuffer->meta()->setInt32("flags", entry.flags);
- ALOGV("[%s] sendOutputBuffers: out buffer index = %zu [%p] => %p + %zu",
- mName, index, outBuffer.get(), outBuffer->data(), outBuffer->size());
- mCallback->onOutputBufferAvailable(index, outBuffer);
- }
-}
-
-status_t CCodecBufferChannel::setSurface(const sp<Surface> &newSurface) {
- static std::atomic_uint32_t surfaceGeneration{0};
- uint32_t generation = (getpid() << 10) |
- ((surfaceGeneration.fetch_add(1, std::memory_order_relaxed) + 1)
- & ((1 << 10) - 1));
-
- sp<IGraphicBufferProducer> producer;
- if (newSurface) {
- newSurface->setScalingMode(NATIVE_WINDOW_SCALING_MODE_SCALE_TO_WINDOW);
- newSurface->setMaxDequeuedBufferCount(kMinOutputBufferArraySize);
- producer = newSurface->getIGraphicBufferProducer();
- producer->setGenerationNumber(generation);
- } else {
- ALOGE("[%s] setting output surface to null", mName);
- return INVALID_OPERATION;
- }
-
- std::shared_ptr<Codec2Client::Configurable> outputPoolIntf;
- C2BlockPool::local_id_t outputPoolId;
- {
- Mutexed<BlockPools>::Locked pools(mBlockPools);
- outputPoolId = pools->outputPoolId;
- outputPoolIntf = pools->outputPoolIntf;
- }
-
- if (outputPoolIntf) {
- if (mComponent->setOutputSurface(
- outputPoolId,
- producer,
- generation) != C2_OK) {
- ALOGI("[%s] setSurface: component setOutputSurface failed", mName);
- return INVALID_OPERATION;
- }
- }
-
- {
- Mutexed<OutputSurface>::Locked output(mOutputSurface);
- output->surface = newSurface;
- output->generation = generation;
- }
-
- return OK;
-}
-
-void CCodecBufferChannel::setMetaMode(MetaMode mode) {
- mMetaMode = mode;
-}
-
-void CCodecBufferChannel::setCrypto(const sp<ICrypto> &crypto) {
- mCrypto = crypto;
-}
-
-void CCodecBufferChannel::setDescrambler(const sp<IDescrambler> &descrambler) {
- mDescrambler = descrambler;
-}
-
-status_t toStatusT(c2_status_t c2s, c2_operation_t c2op) {
- // C2_OK is always translated to OK.
- if (c2s == C2_OK) {
- return OK;
- }
-
- // Operation-dependent translation
- // TODO: Add as necessary
- switch (c2op) {
- case C2_OPERATION_Component_start:
- switch (c2s) {
- case C2_NO_MEMORY:
- return NO_MEMORY;
- default:
- return UNKNOWN_ERROR;
- }
- default:
- break;
- }
-
- // Backup operation-agnostic translation
- switch (c2s) {
- case C2_BAD_INDEX:
- return BAD_INDEX;
- case C2_BAD_VALUE:
- return BAD_VALUE;
- case C2_BLOCKING:
- return WOULD_BLOCK;
- case C2_DUPLICATE:
- return ALREADY_EXISTS;
- case C2_NO_INIT:
- return NO_INIT;
- case C2_NO_MEMORY:
- return NO_MEMORY;
- case C2_NOT_FOUND:
- return NAME_NOT_FOUND;
- case C2_TIMED_OUT:
- return TIMED_OUT;
- case C2_BAD_STATE:
- case C2_CANCELED:
- case C2_CANNOT_DO:
- case C2_CORRUPTED:
- case C2_OMITTED:
- case C2_REFUSED:
- return UNKNOWN_ERROR;
- default:
- return -static_cast<status_t>(c2s);
- }
-}
-
-} // namespace android
diff --git a/media/sfplugin/CCodecBufferChannel.h b/media/sfplugin/CCodecBufferChannel.h
deleted file mode 100644
index de017cb..0000000
--- a/media/sfplugin/CCodecBufferChannel.h
+++ /dev/null
@@ -1,422 +0,0 @@
-/*
- * Copyright 2017, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef CCODEC_BUFFER_CHANNEL_H_
-
-#define CCODEC_BUFFER_CHANNEL_H_
-
-#include <map>
-#include <memory>
-#include <vector>
-
-#include <C2Buffer.h>
-#include <C2Component.h>
-#include <Codec2Mapper.h>
-
-#include <codec2/hidl/client.h>
-#include <media/stagefright/bqhelper/GraphicBufferSource.h>
-#include <media/stagefright/codec2/1.0/InputSurface.h>
-#include <media/stagefright/foundation/Mutexed.h>
-#include <media/stagefright/CodecBase.h>
-
-#include "InputSurfaceWrapper.h"
-
-namespace android {
-
-class CCodecCallback {
-public:
- virtual ~CCodecCallback() = default;
- virtual void onError(status_t err, enum ActionCode actionCode) = 0;
- virtual void onOutputFramesRendered(int64_t mediaTimeUs, nsecs_t renderTimeNs) = 0;
- virtual void onWorkQueued(bool eos) = 0;
- virtual void onOutputBuffersChanged() = 0;
-};
-
-/**
- * BufferChannelBase implementation for CCodec.
- */
-class CCodecBufferChannel
- : public BufferChannelBase, public std::enable_shared_from_this<CCodecBufferChannel> {
-public:
- explicit CCodecBufferChannel(const std::shared_ptr<CCodecCallback> &callback);
- virtual ~CCodecBufferChannel();
-
- // BufferChannelBase interface
- void setCrypto(const sp<ICrypto> &crypto) override;
- void setDescrambler(const sp<IDescrambler> &descrambler) override;
-
- virtual status_t queueInputBuffer(const sp<MediaCodecBuffer> &buffer) override;
- virtual status_t queueSecureInputBuffer(
- const sp<MediaCodecBuffer> &buffer,
- bool secure,
- const uint8_t *key,
- const uint8_t *iv,
- CryptoPlugin::Mode mode,
- CryptoPlugin::Pattern pattern,
- const CryptoPlugin::SubSample *subSamples,
- size_t numSubSamples,
- AString *errorDetailMsg) override;
- virtual status_t renderOutputBuffer(
- const sp<MediaCodecBuffer> &buffer, int64_t timestampNs) override;
- virtual status_t discardBuffer(const sp<MediaCodecBuffer> &buffer) override;
- virtual void getInputBufferArray(Vector<sp<MediaCodecBuffer>> *array) override;
- virtual void getOutputBufferArray(Vector<sp<MediaCodecBuffer>> *array) override;
-
- // Methods below are interface for CCodec to use.
-
- /**
- * Set the component object for buffer processing.
- */
- void setComponent(const std::shared_ptr<Codec2Client::Component> &component);
-
- /**
- * Set output graphic surface for rendering.
- */
- status_t setSurface(const sp<Surface> &surface);
-
- /**
- * Set GraphicBufferSource object from which the component extracts input
- * buffers.
- */
- status_t setInputSurface(const std::shared_ptr<InputSurfaceWrapper> &surface);
-
- /**
- * Signal EOS to input surface.
- */
- status_t signalEndOfInputStream();
-
- /**
- * Set parameters.
- */
- status_t setParameters(std::vector<std::unique_ptr<C2Param>> ¶ms);
-
- /**
- * Start queueing buffers to the component. This object should never queue
- * buffers before this call has completed.
- */
- status_t start(const sp<AMessage> &inputFormat, const sp<AMessage> &outputFormat);
-
- /**
- * Request initial input buffers to be filled by client.
- */
- status_t requestInitialInputBuffers();
-
- /**
- * Stop queueing buffers to the component. This object should never queue
- * buffers after this call, until start() is called.
- */
- void stop();
-
- void flush(const std::list<std::unique_ptr<C2Work>> &flushedWork);
-
- /**
- * Notify input client about work done.
- *
- * @param workItems finished work item.
- * @param outputFormat new output format if it has changed, otherwise nullptr
- * @param initData new init data (CSD) if it has changed, otherwise nullptr
- * @param numDiscardedInputBuffers the number of input buffers that are
- * returned for the first time (not previously returned by
- * onInputBufferDone()).
- */
- void onWorkDone(
- std::unique_ptr<C2Work> work, const sp<AMessage> &outputFormat,
- const C2StreamInitDataInfo::output *initData,
- size_t numDiscardedInputBuffers);
-
- /**
- * Make an input buffer available for the client as it is no longer needed
- * by the codec.
- *
- * @param buffer The buffer that becomes unused.
- */
- void onInputBufferDone(const std::shared_ptr<C2Buffer>& buffer);
-
- enum MetaMode {
- MODE_NONE,
- MODE_ANW,
- };
-
- void setMetaMode(MetaMode mode);
-
- // Internal classes
- class Buffers;
- class InputBuffers;
- class OutputBuffers;
-
-private:
- class QueueGuard;
-
- /**
- * Special mutex-like object with the following properties:
- *
- * - At STOPPED state (initial, or after stop())
- * - QueueGuard object gets created at STOPPED state, and the client is
- * supposed to return immediately.
- * - At RUNNING state (after start())
- * - Each QueueGuard object
- */
- class QueueSync {
- public:
- /**
- * At construction the sync object is in STOPPED state.
- */
- inline QueueSync() {}
- ~QueueSync() = default;
-
- /**
- * Transition to RUNNING state when stopped. No-op if already in RUNNING
- * state.
- */
- void start();
-
- /**
- * At RUNNING state, wait until all QueueGuard object created during
- * RUNNING state are destroyed, and then transition to STOPPED state.
- * No-op if already in STOPPED state.
- */
- void stop();
-
- private:
- Mutex mGuardLock;
-
- struct Counter {
- inline Counter() : value(-1) {}
- int32_t value;
- Condition cond;
- };
- Mutexed<Counter> mCount;
-
- friend class CCodecBufferChannel::QueueGuard;
- };
-
- class QueueGuard {
- public:
- QueueGuard(QueueSync &sync);
- ~QueueGuard();
- inline bool isRunning() { return mRunning; }
-
- private:
- QueueSync &mSync;
- bool mRunning;
- };
-
- void feedInputBufferIfAvailable();
- void feedInputBufferIfAvailableInternal();
- status_t queueInputBufferInternal(const sp<MediaCodecBuffer> &buffer);
- bool handleWork(
- std::unique_ptr<C2Work> work, const sp<AMessage> &outputFormat,
- const C2StreamInitDataInfo::output *initData);
- void sendOutputBuffers();
-
- QueueSync mSync;
- sp<MemoryDealer> mDealer;
- sp<IMemory> mDecryptDestination;
- int32_t mHeapSeqNum;
-
- std::shared_ptr<Codec2Client::Component> mComponent;
- std::string mComponentName; ///< component name for debugging
- const char *mName; ///< C-string version of component name
- std::shared_ptr<CCodecCallback> mCCodecCallback;
- std::shared_ptr<C2BlockPool> mInputAllocator;
- QueueSync mQueueSync;
- std::vector<std::unique_ptr<C2Param>> mParamsToBeSet;
-
- Mutexed<std::unique_ptr<InputBuffers>> mInputBuffers;
- Mutexed<std::list<sp<ABuffer>>> mFlushedConfigs;
- Mutexed<std::unique_ptr<OutputBuffers>> mOutputBuffers;
-
- std::atomic_uint64_t mFrameIndex;
- std::atomic_uint64_t mFirstValidFrameIndex;
-
- sp<MemoryDealer> makeMemoryDealer(size_t heapSize);
-
- struct OutputSurface {
- sp<Surface> surface;
- uint32_t generation;
- };
- Mutexed<OutputSurface> mOutputSurface;
-
- struct BlockPools {
- C2Allocator::id_t inputAllocatorId;
- std::shared_ptr<C2BlockPool> inputPool;
- C2Allocator::id_t outputAllocatorId;
- C2BlockPool::local_id_t outputPoolId;
- std::shared_ptr<Codec2Client::Configurable> outputPoolIntf;
- };
- Mutexed<BlockPools> mBlockPools;
-
- std::shared_ptr<InputSurfaceWrapper> mInputSurface;
-
- MetaMode mMetaMode;
-
- // PipelineCapacity is used in the input buffer gating logic.
- //
- // There are three criteria that need to be met before
- // onInputBufferAvailable() is called:
- // 1. The number of input buffers that have been received by
- // CCodecBufferChannel but not returned via onWorkDone() or
- // onInputBufferDone() does not exceed a certain limit. (Let us call this
- // number the "input" capacity.)
- // 2. The number of work items that have been received by
- // CCodecBufferChannel whose outputs have not been returned from the
- // component (by calling onWorkDone()) does not exceed a certain limit.
- // (Let us call this the "component" capacity.)
- //
- // These three criteria guarantee that a new input buffer that arrives from
- // the invocation of onInputBufferAvailable() will not
- // 1. overload CCodecBufferChannel's input buffers;
- // 2. overload the component; or
- //
- struct PipelineCapacity {
- // The number of available input capacity.
- std::atomic_int input;
- // The number of available component capacity.
- std::atomic_int component;
-
- PipelineCapacity();
- // Set the values of #input and #component.
- void initialize(int newInput, int newComponent,
- const char* newName = "<UNKNOWN COMPONENT>",
- const char* callerTag = nullptr);
-
- // Return true and decrease #input and #component by one if
- // they are all greater than zero; return false otherwise.
- //
- // callerTag is used for logging only.
- //
- // allocate() is called by CCodecBufferChannel to check whether it can
- // receive another input buffer. If the return value is true,
- // onInputBufferAvailable() and onOutputBufferAvailable() can be called
- // afterwards.
- bool allocate(const char* callerTag = nullptr);
-
- // Increase #input and #component by one.
- //
- // callerTag is used for logging only.
- //
- // free() is called by CCodecBufferChannel after allocate() returns true
- // but onInputBufferAvailable() cannot be called for any reasons. It
- // essentially undoes an allocate() call.
- void free(const char* callerTag = nullptr);
-
- // Increase #input by @p numDiscardedInputBuffers.
- //
- // callerTag is used for logging only.
- //
- // freeInputSlots() is called by CCodecBufferChannel when onWorkDone()
- // or onInputBufferDone() is called. @p numDiscardedInputBuffers is
- // provided in onWorkDone(), and is 1 in onInputBufferDone().
- int freeInputSlots(size_t numDiscardedInputBuffers,
- const char* callerTag = nullptr);
-
- // Increase #component by one and return the updated value.
- //
- // callerTag is used for logging only.
- //
- // freeComponentSlot() is called by CCodecBufferChannel when
- // onWorkDone() is called.
- int freeComponentSlot(const char* callerTag = nullptr);
-
- private:
- // Component name. Used for logging.
- const char* mName;
- };
- PipelineCapacity mAvailablePipelineCapacity;
-
- class ReorderStash {
- public:
- struct Entry {
- inline Entry() : buffer(nullptr), timestamp(0), flags(0), ordinal({0, 0, 0}) {}
- inline Entry(
- const std::shared_ptr<C2Buffer> &b,
- int64_t t,
- int32_t f,
- const C2WorkOrdinalStruct &o)
- : buffer(b), timestamp(t), flags(f), ordinal(o) {}
- std::shared_ptr<C2Buffer> buffer;
- int64_t timestamp;
- int32_t flags;
- C2WorkOrdinalStruct ordinal;
- };
-
- ReorderStash();
-
- void clear();
- void setDepth(uint32_t depth);
- void setKey(C2Config::ordinal_key_t key);
- bool pop(Entry *entry);
- void emplace(
- const std::shared_ptr<C2Buffer> &buffer,
- int64_t timestamp,
- int32_t flags,
- const C2WorkOrdinalStruct &ordinal);
- void defer(const Entry &entry);
- bool hasPending() const;
-
- private:
- std::list<Entry> mPending;
- std::list<Entry> mStash;
- uint32_t mDepth;
- C2Config::ordinal_key_t mKey;
-
- bool less(const C2WorkOrdinalStruct &o1, const C2WorkOrdinalStruct &o2);
- };
- Mutexed<ReorderStash> mReorderStash;
-
- std::atomic_bool mInputMetEos;
-
- sp<ICrypto> mCrypto;
- sp<IDescrambler> mDescrambler;
-
- inline bool hasCryptoOrDescrambler() {
- return mCrypto != nullptr || mDescrambler != nullptr;
- }
-};
-
-// Conversion of a c2_status_t value to a status_t value may depend on the
-// operation that returns the c2_status_t value.
-enum c2_operation_t {
- C2_OPERATION_NONE,
- C2_OPERATION_Component_connectToOmxInputSurface,
- C2_OPERATION_Component_createBlockPool,
- C2_OPERATION_Component_destroyBlockPool,
- C2_OPERATION_Component_disconnectFromInputSurface,
- C2_OPERATION_Component_drain,
- C2_OPERATION_Component_flush,
- C2_OPERATION_Component_queue,
- C2_OPERATION_Component_release,
- C2_OPERATION_Component_reset,
- C2_OPERATION_Component_setOutputSurface,
- C2_OPERATION_Component_start,
- C2_OPERATION_Component_stop,
- C2_OPERATION_ComponentStore_copyBuffer,
- C2_OPERATION_ComponentStore_createComponent,
- C2_OPERATION_ComponentStore_createInputSurface,
- C2_OPERATION_ComponentStore_createInterface,
- C2_OPERATION_Configurable_config,
- C2_OPERATION_Configurable_query,
- C2_OPERATION_Configurable_querySupportedParams,
- C2_OPERATION_Configurable_querySupportedValues,
- C2_OPERATION_InputSurface_connectToComponent,
- C2_OPERATION_InputSurfaceConnection_disconnect,
-};
-
-status_t toStatusT(c2_status_t c2s, c2_operation_t c2op = C2_OPERATION_NONE);
-
-} // namespace android
-
-#endif // CCODEC_BUFFER_CHANNEL_H_
diff --git a/media/sfplugin/CCodecConfig.cpp b/media/sfplugin/CCodecConfig.cpp
deleted file mode 100644
index ef02e74..0000000
--- a/media/sfplugin/CCodecConfig.cpp
+++ /dev/null
@@ -1,1610 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "CCodecConfig"
-#include <cutils/properties.h>
-#include <log/log.h>
-
-#include <C2Component.h>
-#include <C2Debug.h>
-#include <C2Param.h>
-#include <util/C2InterfaceHelper.h>
-
-#include <media/stagefright/MediaCodecConstants.h>
-
-#include "CCodecConfig.h"
-#include "Codec2Mapper.h"
-
-#define DRC_DEFAULT_MOBILE_REF_LEVEL 64 /* 64*-0.25dB = -16 dB below full scale for mobile conf */
-#define DRC_DEFAULT_MOBILE_DRC_CUT 127 /* maximum compression of dynamic range for mobile conf */
-#define DRC_DEFAULT_MOBILE_DRC_BOOST 127 /* maximum compression of dynamic range for mobile conf */
-#define DRC_DEFAULT_MOBILE_DRC_HEAVY 1 /* switch for heavy compression for mobile conf */
-#define DRC_DEFAULT_MOBILE_DRC_EFFECT 3 /* MPEG-D DRC effect type; 3 => Limited playback range */
-#define DRC_DEFAULT_MOBILE_ENC_LEVEL (-1) /* encoder target level; -1 => the value is unknown, otherwise dB step value (e.g. 64 for -16 dB) */
-// names of properties that can be used to override the default DRC settings
-#define PROP_DRC_OVERRIDE_REF_LEVEL "aac_drc_reference_level"
-#define PROP_DRC_OVERRIDE_CUT "aac_drc_cut"
-#define PROP_DRC_OVERRIDE_BOOST "aac_drc_boost"
-#define PROP_DRC_OVERRIDE_HEAVY "aac_drc_heavy"
-#define PROP_DRC_OVERRIDE_ENC_LEVEL "aac_drc_enc_target_level"
-#define PROP_DRC_OVERRIDE_EFFECT "ro.aac_drc_effect_type"
-
-namespace android {
-
-// CCodecConfig
-
-namespace {
-
-/**
- * mapping between SDK and Codec 2.0 configurations.
- */
-struct ConfigMapper {
- /**
- * Value mapper (C2Value => C2Value)
- */
- typedef std::function<C2Value(C2Value)> Mapper;
-
- /// shorthand
- typedef CCodecConfig::Domain Domain;
-
- ConfigMapper(std::string mediaKey, C2String c2struct, C2String c2field)
- : mDomain(Domain::ALL), mMediaKey(mediaKey), mStruct(c2struct), mField(c2field) { }
-
- /// Limits this parameter to the given domain
- ConfigMapper &limitTo(uint32_t domain) {
- C2_CHECK(domain & Domain::GUARD_BIT);
- mDomain = Domain(mDomain & domain);
- return *this;
- }
-
- /// Adds SDK => Codec 2.0 mapper (should not be in the SDK format)
- ConfigMapper &withMapper(Mapper mapper) {
- C2_CHECK(!mMapper);
- C2_CHECK(!mReverse);
- mMapper = mapper;
- return *this;
- }
-
- /// Adds SDK <=> Codec 2.0 value mappers
- ConfigMapper &withMappers(Mapper mapper, Mapper reverse) {
- C2_CHECK(!mMapper);
- C2_CHECK(!mReverse);
- mMapper = mapper;
- mReverse = reverse;
- return *this;
- }
-
- /// Adds SDK <=> Codec 2.0 value mappers based on C2Mapper
- template<typename C2Type, typename SdkType=int32_t>
- ConfigMapper &withC2Mappers() {
- C2_CHECK(!mMapper);
- C2_CHECK(!mReverse);
- mMapper = [](C2Value v) -> C2Value {
- SdkType sdkValue;
- C2Type c2Value;
- if (v.get(&sdkValue) && C2Mapper::map(sdkValue, &c2Value)) {
- return c2Value;
- }
- return C2Value();
- };
- mReverse = [](C2Value v) -> C2Value {
- SdkType sdkValue;
- C2Type c2Value;
- using C2ValueType=typename _c2_reduce_enum_to_underlying_type<C2Type>::type;
- if (v.get((C2ValueType*)&c2Value) && C2Mapper::map(c2Value, &sdkValue)) {
- return sdkValue;
- }
- return C2Value();
- };
- return *this;
- }
-
- /// Maps from SDK values in an AMessage to a suitable C2Value.
- C2Value mapFromMessage(const AMessage::ItemData &item) const {
- C2Value value;
- int32_t int32Value;
- int64_t int64Value;
- float floatValue;
- double doubleValue;
- if (item.find(&int32Value)) {
- value = int32Value;
- } else if (item.find(&int64Value)) {
- value = int64Value;
- } else if (item.find(&floatValue)) {
- value = floatValue;
- } else if (item.find(&doubleValue)) {
- value = (float)doubleValue;
- }
- if (value.type() != C2Value::NO_INIT && mMapper) {
- value = mMapper(value);
- }
- return value;
- }
-
- /// Maps from a C2Value to an SDK value in an AMessage.
- AMessage::ItemData mapToMessage(C2Value value) const {
- AMessage::ItemData item;
- int32_t int32Value;
- uint32_t uint32Value;
- int64_t int64Value;
- uint64_t uint64Value;
- float floatValue;
- if (value.type() != C2Value::NO_INIT && mReverse) {
- value = mReverse(value);
- }
- if (value.get(&int32Value)) {
- item.set(int32Value);
- } else if (value.get(&uint32Value) && uint32Value <= uint32_t(INT32_MAX)) {
- // SDK does not support unsigned values
- item.set((int32_t)uint32Value);
- } else if (value.get(&int64Value)) {
- item.set(int64Value);
- } else if (value.get(&uint64Value) && uint64Value <= uint64_t(INT64_MAX)) {
- // SDK does not support unsigned values
- item.set((int64_t)uint64Value);
- } else if (value.get(&floatValue)) {
- item.set(floatValue);
- }
- return item;
- }
-
- Domain domain() const { return mDomain; }
- std::string mediaKey() const { return mMediaKey; }
- std::string path() const { return mField.size() ? mStruct + '.' + mField : mStruct; }
- Mapper mapper() const { return mMapper; }
- Mapper reverse() const { return mReverse; }
-
-private:
- Domain mDomain; ///< parameter domain (mask) containing port, kind and config domains
- std::string mMediaKey; ///< SDK key
- C2String mStruct; ///< Codec 2.0 struct name
- C2String mField; ///< Codec 2.0 field name
- Mapper mMapper; ///< optional SDK => Codec 2.0 value mapper
- Mapper mReverse; ///< optional Codec 2.0 => SDK value mapper
-};
-
-template <typename PORT, typename STREAM>
-AString QueryMediaTypeImpl(
- const std::shared_ptr<Codec2Client::Component> &component) {
- AString mediaType;
- std::vector<std::unique_ptr<C2Param>> queried;
- c2_status_t c2err = component->query(
- {}, { PORT::PARAM_TYPE, STREAM::PARAM_TYPE }, C2_DONT_BLOCK, &queried);
- if (c2err != C2_OK && queried.size() == 0) {
- ALOGD("Query media type failed => %s", asString(c2err));
- } else {
- PORT *portMediaType =
- PORT::From(queried[0].get());
- if (portMediaType) {
- mediaType = AString(
- portMediaType->m.value,
- strnlen(portMediaType->m.value, portMediaType->flexCount()));
- } else {
- STREAM *streamMediaType = STREAM::From(queried[0].get());
- if (streamMediaType) {
- mediaType = AString(
- streamMediaType->m.value,
- strnlen(streamMediaType->m.value, streamMediaType->flexCount()));
- }
- }
- ALOGD("read media type: %s", mediaType.c_str());
- }
- return mediaType;
-}
-
-AString QueryMediaType(
- bool input, const std::shared_ptr<Codec2Client::Component> &component) {
- typedef C2PortMediaTypeSetting P;
- typedef C2StreamMediaTypeSetting S;
- if (input) {
- return QueryMediaTypeImpl<P::input, S::input>(component);
- } else {
- return QueryMediaTypeImpl<P::output, S::output>(component);
- }
-}
-
-} // namespace
-
-/**
- * Set of standard parameters used by CCodec that are exposed to MediaCodec.
- */
-struct StandardParams {
- typedef CCodecConfig::Domain Domain;
-
- // standard (MediaCodec) params are keyed by media format key
- typedef std::string SdkKey;
-
- /// used to return reference to no config mappers in getConfigMappersForSdkKey
- static const std::vector<ConfigMapper> NO_MAPPERS;
-
- /// Returns Codec 2.0 equivalent parameters for an SDK format key.
- const std::vector<ConfigMapper> &getConfigMappersForSdkKey(std::string key) const {
- auto it = mConfigMappers.find(key);
- if (it == mConfigMappers.end()) {
- ALOGD("no c2 equivalents for %s", key.c_str());
- return NO_MAPPERS;
- }
- ALOGV("found %zu eqs for %s", it->second.size(), key.c_str());
- return it->second;
- }
-
- /**
- * Adds a SDK <=> Codec 2.0 parameter mapping. Multiple Codec 2.0 parameters may map to a
- * single SDK key, in which case they shall be ordered from least authoritative to most
- * authoritative. When constructing SDK formats, the last mapped Codec 2.0 parameter that
- * is supported by the component will determine the exposed value. (TODO: perhaps restrict this
- * by domain.)
- */
- void add(const ConfigMapper &cm) {
- auto it = mConfigMappers.find(cm.mediaKey());
- ALOGV("%c%c%c%c %c%c%c %04x %9s %s => %s",
- ((cm.domain() & Domain::IS_INPUT) ? 'I' : ' '),
- ((cm.domain() & Domain::IS_OUTPUT) ? 'O' : ' '),
- ((cm.domain() & Domain::IS_CODED) ? 'C' : ' '),
- ((cm.domain() & Domain::IS_RAW) ? 'R' : ' '),
- ((cm.domain() & Domain::IS_CONFIG) ? 'c' : ' '),
- ((cm.domain() & Domain::IS_PARAM) ? 'p' : ' '),
- ((cm.domain() & Domain::IS_READ) ? 'r' : ' '),
- cm.domain(),
- it == mConfigMappers.end() ? "adding" : "extending",
- cm.mediaKey().c_str(), cm.path().c_str());
- if (it == mConfigMappers.end()) {
- std::vector<ConfigMapper> eqs = { cm };
- mConfigMappers.emplace(cm.mediaKey(), eqs);
- } else {
- it->second.push_back(cm);
- }
- }
-
- /**
- * Returns all paths for a specific domain.
- *
- * \param any maximum domain mask. Returned parameters must match at least one of the domains
- * in the mask.
- * \param all minimum domain mask. Returned parameters must match all of the domains in the
- * mask. This is restricted to the bits of the maximum mask.
- */
- std::vector<std::string> getPathsForDomain(
- Domain any, Domain all = Domain::ALL) const {
- std::vector<std::string> res;
- for (const std::pair<std::string, std::vector<ConfigMapper>> &el : mConfigMappers) {
- for (const ConfigMapper &cm : el.second) {
- ALOGV("filtering %s %x %x %x %x", cm.path().c_str(), cm.domain(), any,
- (cm.domain() & any), (cm.domain() & any & all));
- if ((cm.domain() & any) && ((cm.domain() & any & all) == (any & all))) {
- res.push_back(cm.path());
- }
- }
- }
- return res;
- }
-
- /**
- * Returns SDK <=> Codec 2.0 mappings.
- *
- * TODO: replace these with better methods as this exposes the inner structure.
- */
- const std::map<SdkKey, std::vector<ConfigMapper>> getKeys() const {
- return mConfigMappers;
- }
-
-private:
- std::map<SdkKey, std::vector<ConfigMapper>> mConfigMappers;
-};
-
-const std::vector<ConfigMapper> StandardParams::NO_MAPPERS;
-
-
-CCodecConfig::CCodecConfig()
- : mInputFormat(new AMessage),
- mOutputFormat(new AMessage),
- mUsingSurface(false) { }
-
-void CCodecConfig::initializeStandardParams() {
- typedef Domain D;
- mStandardParams = std::make_shared<StandardParams>();
- std::function<void(const ConfigMapper &)> add =
- [params = mStandardParams](const ConfigMapper &cm) {
- params->add(cm);
- };
- std::function<void(const ConfigMapper &)> deprecated = add;
-
- // allow int32 or float SDK values and represent them as float
- ConfigMapper::Mapper makeFloat = [](C2Value v) -> C2Value {
- // convert from i32 to float
- int32_t i32Value;
- float fpValue;
- if (v.get(&i32Value)) {
- return (float)i32Value;
- } else if (v.get(&fpValue)) {
- return fpValue;
- }
- return C2Value();
- };
-
- ConfigMapper::Mapper negate = [](C2Value v) -> C2Value {
- int32_t value;
- if (v.get(&value)) {
- return -value;
- }
- return C2Value();
- };
-
- add(ConfigMapper(KEY_MIME, C2_PARAMKEY_INPUT_MEDIA_TYPE, "value")
- .limitTo(D::INPUT & D::READ));
- add(ConfigMapper(KEY_MIME, C2_PARAMKEY_OUTPUT_MEDIA_TYPE, "value")
- .limitTo(D::OUTPUT & D::READ));
-
- add(ConfigMapper(KEY_BIT_RATE, C2_PARAMKEY_BITRATE, "value")
- .limitTo(D::ENCODER & D::OUTPUT));
- // we also need to put the bitrate in the max bitrate field
- add(ConfigMapper(KEY_MAX_BIT_RATE, C2_PARAMKEY_BITRATE, "value")
- .limitTo(D::ENCODER & D::READ & D::OUTPUT));
- add(ConfigMapper(PARAMETER_KEY_VIDEO_BITRATE, C2_PARAMKEY_BITRATE, "value")
- .limitTo(D::ENCODER & D::VIDEO & D::PARAM));
- add(ConfigMapper(KEY_BITRATE_MODE, C2_PARAMKEY_BITRATE_MODE, "value")
- .limitTo(D::ENCODER & D::CODED)
- .withMapper([](C2Value v) -> C2Value {
- int32_t value;
- C2Config::bitrate_mode_t mode;
- if (v.get(&value) && C2Mapper::map(value, &mode)) {
- return mode;
- }
- return C2Value();
- }));
- // remove when codecs switch to PARAMKEY and new modes
- deprecated(ConfigMapper(KEY_BITRATE_MODE, "coded.bitrate-mode", "value")
- .limitTo(D::ENCODER));
- add(ConfigMapper(KEY_FRAME_RATE, C2_PARAMKEY_FRAME_RATE, "value")
- .limitTo(D::VIDEO)
- .withMappers(makeFloat, [](C2Value v) -> C2Value {
- // read back always as int
- float value;
- if (v.get(&value)) {
- return (int32_t)value;
- }
- return C2Value();
- }));
-
- add(ConfigMapper(KEY_MAX_INPUT_SIZE, C2_PARAMKEY_INPUT_MAX_BUFFER_SIZE, "value")
- .limitTo(D::INPUT));
- // remove when codecs switch to PARAMKEY
- deprecated(ConfigMapper(KEY_MAX_INPUT_SIZE, "coded.max-frame-size", "value")
- .limitTo(D::INPUT));
-
- // Rotation
- // Note: SDK rotation is clock-wise, while C2 rotation is counter-clock-wise
- add(ConfigMapper(KEY_ROTATION, C2_PARAMKEY_VUI_ROTATION, "value")
- .limitTo(D::VIDEO & D::CODED)
- .withMappers(negate, negate));
- add(ConfigMapper(KEY_ROTATION, C2_PARAMKEY_ROTATION, "value")
- .limitTo(D::VIDEO & D::RAW)
- .withMappers(negate, negate));
-
- // android 'video-scaling'
- add(ConfigMapper("android._video-scaling", C2_PARAMKEY_SURFACE_SCALING_MODE, "value")
- .limitTo(D::VIDEO & D::DECODER & D::RAW));
-
- // Color Aspects
- //
- // configure default for decoders
- add(ConfigMapper(KEY_COLOR_RANGE, C2_PARAMKEY_DEFAULT_COLOR_ASPECTS, "range")
- .limitTo((D::VIDEO | D::IMAGE) & D::DECODER & D::CODED & (D::CONFIG | D::PARAM))
- .withC2Mappers<C2Color::range_t>());
- add(ConfigMapper(KEY_COLOR_TRANSFER, C2_PARAMKEY_DEFAULT_COLOR_ASPECTS, "transfer")
- .limitTo((D::VIDEO | D::IMAGE) & D::DECODER & D::CODED & (D::CONFIG | D::PARAM))
- .withC2Mappers<C2Color::transfer_t>());
- add(ConfigMapper("color-primaries", C2_PARAMKEY_DEFAULT_COLOR_ASPECTS, "primaries")
- .limitTo((D::VIDEO | D::IMAGE) & D::DECODER & D::CODED & (D::CONFIG | D::PARAM)));
- add(ConfigMapper("color-matrix", C2_PARAMKEY_DEFAULT_COLOR_ASPECTS, "matrix")
- .limitTo((D::VIDEO | D::IMAGE) & D::DECODER & D::CODED & (D::CONFIG | D::PARAM)));
-
- // read back final for decoder output (also, configure final aspects as well. This should be
- // overwritten based on coded/default values if component supports color aspects, but is used
- // as final values if component does not support aspects at all)
- add(ConfigMapper(KEY_COLOR_RANGE, C2_PARAMKEY_COLOR_ASPECTS, "range")
- .limitTo((D::VIDEO | D::IMAGE) & D::DECODER & D::RAW)
- .withC2Mappers<C2Color::range_t>());
- add(ConfigMapper(KEY_COLOR_TRANSFER, C2_PARAMKEY_COLOR_ASPECTS, "transfer")
- .limitTo((D::VIDEO | D::IMAGE) & D::DECODER & D::RAW)
- .withC2Mappers<C2Color::transfer_t>());
- add(ConfigMapper("color-primaries", C2_PARAMKEY_COLOR_ASPECTS, "primaries")
- .limitTo((D::VIDEO | D::IMAGE) & D::DECODER & D::RAW));
- add(ConfigMapper("color-matrix", C2_PARAMKEY_COLOR_ASPECTS, "matrix")
- .limitTo((D::VIDEO | D::IMAGE) & D::DECODER & D::RAW));
-
- // configure source aspects for encoders and read them back on the coded(!) port.
- // This is to ensure muxing the desired aspects into the container.
- add(ConfigMapper(KEY_COLOR_RANGE, C2_PARAMKEY_COLOR_ASPECTS, "range")
- .limitTo((D::VIDEO | D::IMAGE) & D::ENCODER & D::CODED)
- .withC2Mappers<C2Color::range_t>());
- add(ConfigMapper(KEY_COLOR_TRANSFER, C2_PARAMKEY_COLOR_ASPECTS, "transfer")
- .limitTo((D::VIDEO | D::IMAGE) & D::ENCODER & D::CODED)
- .withC2Mappers<C2Color::transfer_t>());
- add(ConfigMapper("color-primaries", C2_PARAMKEY_COLOR_ASPECTS, "primaries")
- .limitTo((D::VIDEO | D::IMAGE) & D::ENCODER & D::CODED));
- add(ConfigMapper("color-matrix", C2_PARAMKEY_COLOR_ASPECTS, "matrix")
- .limitTo((D::VIDEO | D::IMAGE) & D::ENCODER & D::CODED));
-
- // read back coded aspects for encoders (on the raw port), but also configure
- // desired aspects here.
- add(ConfigMapper(KEY_COLOR_RANGE, C2_PARAMKEY_VUI_COLOR_ASPECTS, "range")
- .limitTo((D::VIDEO | D::IMAGE) & D::ENCODER & D::RAW)
- .withC2Mappers<C2Color::range_t>());
- add(ConfigMapper(KEY_COLOR_TRANSFER, C2_PARAMKEY_VUI_COLOR_ASPECTS, "transfer")
- .limitTo((D::VIDEO | D::IMAGE) & D::ENCODER & D::RAW)
- .withC2Mappers<C2Color::transfer_t>());
- add(ConfigMapper("color-primaries", C2_PARAMKEY_VUI_COLOR_ASPECTS, "primaries")
- .limitTo((D::VIDEO | D::IMAGE) & D::ENCODER & D::RAW));
- add(ConfigMapper("color-matrix", C2_PARAMKEY_VUI_COLOR_ASPECTS, "matrix")
- .limitTo((D::VIDEO | D::IMAGE) & D::ENCODER & D::RAW));
-
- // Dataspace
- add(ConfigMapper("android._dataspace", C2_PARAMKEY_DATA_SPACE, "value")
- .limitTo((D::VIDEO | D::IMAGE) & D::RAW));
-
- // HDR
- add(ConfigMapper("smpte2086.red.x", C2_PARAMKEY_HDR_STATIC_INFO, "mastering.red.x")
- .limitTo((D::VIDEO | D::IMAGE) & D::RAW));
- add(ConfigMapper("smpte2086.red.y", C2_PARAMKEY_HDR_STATIC_INFO, "mastering.red.y")
- .limitTo((D::VIDEO | D::IMAGE) & D::RAW));
- add(ConfigMapper("smpte2086.green.x", C2_PARAMKEY_HDR_STATIC_INFO, "mastering.green.x")
- .limitTo((D::VIDEO | D::IMAGE) & D::RAW));
- add(ConfigMapper("smpte2086.green.y", C2_PARAMKEY_HDR_STATIC_INFO, "mastering.green.y")
- .limitTo((D::VIDEO | D::IMAGE) & D::RAW));
- add(ConfigMapper("smpte2086.blue.x", C2_PARAMKEY_HDR_STATIC_INFO, "mastering.blue.x")
- .limitTo((D::VIDEO | D::IMAGE) & D::RAW));
- add(ConfigMapper("smpte2086.blue.y", C2_PARAMKEY_HDR_STATIC_INFO, "mastering.blue.y")
- .limitTo((D::VIDEO | D::IMAGE) & D::RAW));
- add(ConfigMapper("smpte2086.white.x", C2_PARAMKEY_HDR_STATIC_INFO, "mastering.white.x")
- .limitTo((D::VIDEO | D::IMAGE) & D::RAW));
- add(ConfigMapper("smpte2086.white.y", C2_PARAMKEY_HDR_STATIC_INFO, "mastering.white.y")
- .limitTo((D::VIDEO | D::IMAGE) & D::RAW));
- add(ConfigMapper("smpte2086.max-luminance", C2_PARAMKEY_HDR_STATIC_INFO, "mastering.max-luminance")
- .limitTo((D::VIDEO | D::IMAGE) & D::RAW));
- add(ConfigMapper("smpte2086.min-luminance", C2_PARAMKEY_HDR_STATIC_INFO, "mastering.min-luminance")
- .limitTo((D::VIDEO | D::IMAGE) & D::RAW));
- add(ConfigMapper("cta861.max-cll", C2_PARAMKEY_HDR_STATIC_INFO, "max-cll")
- .limitTo((D::VIDEO | D::IMAGE) & D::RAW));
- add(ConfigMapper("cta861.max-fall", C2_PARAMKEY_HDR_STATIC_INFO, "max-fall")
- .limitTo((D::VIDEO | D::IMAGE) & D::RAW));
-
- add(ConfigMapper(std::string(KEY_FEATURE_) + FEATURE_SecurePlayback,
- C2_PARAMKEY_SECURE_MODE, "value"));
-
- add(ConfigMapper("prepend-sps-pps-to-idr-frames",
- C2_PARAMKEY_PREPEND_HEADER_MODE, "value")
- .limitTo(D::ENCODER & D::VIDEO)
- .withMapper([](C2Value v) -> C2Value {
- int32_t value;
- if (v.get(&value) && value) {
- return C2Value(C2Config::PREPEND_HEADER_TO_ALL_SYNC);
- } else {
- return C2Value(C2Config::PREPEND_HEADER_TO_NONE);
- }
- }));
- // remove when codecs switch to PARAMKEY
- deprecated(ConfigMapper("prepend-sps-pps-to-idr-frames",
- "coding.add-csd-to-sync-frames", "value")
- .limitTo(D::ENCODER & D::VIDEO));
- // convert to timestamp base
- add(ConfigMapper(KEY_I_FRAME_INTERVAL, C2_PARAMKEY_SYNC_FRAME_INTERVAL, "value")
- .withMapper([](C2Value v) -> C2Value {
- // convert from i32 to float
- int32_t i32Value;
- float fpValue;
- if (v.get(&i32Value)) {
- return int64_t(1000000) * i32Value;
- } else if (v.get(&fpValue)) {
- return int64_t(c2_min(1000000 * fpValue + 0.5, (double)INT64_MAX));
- }
- return C2Value();
- }));
- // remove when codecs switch to proper coding.gop (add support for calculating gop)
- deprecated(ConfigMapper("i-frame-period", "coding.gop", "intra-period")
- .limitTo(D::ENCODER & D::VIDEO));
- add(ConfigMapper(KEY_INTRA_REFRESH_PERIOD, C2_PARAMKEY_INTRA_REFRESH, "period")
- .limitTo(D::VIDEO & D::ENCODER)
- .withMappers(makeFloat, [](C2Value v) -> C2Value {
- // read back always as int
- float value;
- if (v.get(&value)) {
- return (int32_t)value;
- }
- return C2Value();
- }));
- add(ConfigMapper(KEY_QUALITY, C2_PARAMKEY_QUALITY, "value"));
- deprecated(ConfigMapper(PARAMETER_KEY_REQUEST_SYNC_FRAME,
- "coding.request-sync", "value")
- .limitTo(D::PARAM & D::ENCODER)
- .withMapper([](C2Value) -> C2Value { return uint32_t(1); }));
- add(ConfigMapper(PARAMETER_KEY_REQUEST_SYNC_FRAME,
- C2_PARAMKEY_REQUEST_SYNC_FRAME, "value")
- .limitTo(D::PARAM & D::ENCODER)
- .withMapper([](C2Value) -> C2Value { return uint32_t(1); }));
-
- add(ConfigMapper(KEY_OPERATING_RATE, C2_PARAMKEY_OPERATING_RATE, "value")
- .limitTo(D::PARAM | D::CONFIG) // write-only
- .withMapper(makeFloat));
- // C2 priorities are inverted
- add(ConfigMapper(KEY_PRIORITY, C2_PARAMKEY_PRIORITY, "value")
- .withMappers(negate, negate));
- // remove when codecs switch to PARAMKEY
- deprecated(ConfigMapper(KEY_OPERATING_RATE, "ctrl.operating-rate", "value")
- .withMapper(makeFloat));
- deprecated(ConfigMapper(KEY_PRIORITY, "ctrl.priority", "value"));
-
- add(ConfigMapper(KEY_WIDTH, C2_PARAMKEY_PICTURE_SIZE, "width")
- .limitTo(D::VIDEO | D::IMAGE));
- add(ConfigMapper(KEY_HEIGHT, C2_PARAMKEY_PICTURE_SIZE, "height")
- .limitTo(D::VIDEO | D::IMAGE));
-
- add(ConfigMapper("crop-left", C2_PARAMKEY_CROP_RECT, "left")
- .limitTo(D::VIDEO | D::IMAGE));
- add(ConfigMapper("crop-top", C2_PARAMKEY_CROP_RECT, "top")
- .limitTo(D::VIDEO | D::IMAGE));
- add(ConfigMapper("crop-width", C2_PARAMKEY_CROP_RECT, "width")
- .limitTo(D::VIDEO | D::IMAGE));
- add(ConfigMapper("crop-height", C2_PARAMKEY_CROP_RECT, "height")
- .limitTo(D::VIDEO | D::IMAGE));
-
- add(ConfigMapper(KEY_MAX_WIDTH, C2_PARAMKEY_MAX_PICTURE_SIZE, "width")
- .limitTo((D::VIDEO | D::IMAGE) & D::RAW));
- add(ConfigMapper(KEY_MAX_HEIGHT, C2_PARAMKEY_MAX_PICTURE_SIZE, "height")
- .limitTo((D::VIDEO | D::IMAGE) & D::RAW));
-
- add(ConfigMapper("csd-0", C2_PARAMKEY_INIT_DATA, "value")
- .limitTo(D::OUTPUT & D::READ));
-
- add(ConfigMapper(KEY_HDR10_PLUS_INFO, C2_PARAMKEY_INPUT_HDR10_PLUS_INFO, "value")
- .limitTo(D::VIDEO & D::PARAM & D::INPUT));
-
- add(ConfigMapper(KEY_HDR10_PLUS_INFO, C2_PARAMKEY_OUTPUT_HDR10_PLUS_INFO, "value")
- .limitTo(D::VIDEO & D::OUTPUT));
-
- add(ConfigMapper(C2_PARAMKEY_TEMPORAL_LAYERING, C2_PARAMKEY_TEMPORAL_LAYERING, "")
- .limitTo(D::ENCODER & D::VIDEO & D::OUTPUT));
-
- // Pixel Format (use local key for actual pixel format as we don't distinguish between
- // SDK layouts for flexible format and we need the actual SDK color format in the media format)
- add(ConfigMapper("android._color-format", C2_PARAMKEY_PIXEL_FORMAT, "value")
- .limitTo((D::VIDEO | D::IMAGE) & D::RAW)
- .withMappers([](C2Value v) -> C2Value {
- int32_t value;
- if (v.get(&value)) {
- switch (value) {
- case COLOR_FormatSurface:
- return (uint32_t)HAL_PIXEL_FORMAT_IMPLEMENTATION_DEFINED;
- case COLOR_FormatYUV420Flexible:
- return (uint32_t)HAL_PIXEL_FORMAT_YCBCR_420_888;
- case COLOR_FormatYUV420Planar:
- case COLOR_FormatYUV420SemiPlanar:
- case COLOR_FormatYUV420PackedPlanar:
- case COLOR_FormatYUV420PackedSemiPlanar:
- return (uint32_t)HAL_PIXEL_FORMAT_YV12;
- default:
- // TODO: support some sort of passthrough
- break;
- }
- }
- return C2Value();
- }, [](C2Value v) -> C2Value {
- uint32_t value;
- if (v.get(&value)) {
- switch (value) {
- case HAL_PIXEL_FORMAT_IMPLEMENTATION_DEFINED:
- return COLOR_FormatSurface;
- case HAL_PIXEL_FORMAT_YV12:
- case HAL_PIXEL_FORMAT_YCBCR_420_888:
- return COLOR_FormatYUV420Flexible;
- default:
- // TODO: support some sort of passthrough
- break;
- }
- }
- return C2Value();
- }));
-
- add(ConfigMapper(KEY_CHANNEL_COUNT, C2_PARAMKEY_CHANNEL_COUNT, "value")
- .limitTo(D::AUDIO)); // read back to both formats
- add(ConfigMapper(KEY_CHANNEL_COUNT, C2_PARAMKEY_CODED_CHANNEL_COUNT, "value")
- .limitTo(D::AUDIO & D::CODED));
-
- add(ConfigMapper(KEY_SAMPLE_RATE, C2_PARAMKEY_SAMPLE_RATE, "value")
- .limitTo(D::AUDIO)); // read back to both port formats
- add(ConfigMapper(KEY_SAMPLE_RATE, C2_PARAMKEY_CODED_SAMPLE_RATE, "value")
- .limitTo(D::AUDIO & D::CODED));
-
- add(ConfigMapper(KEY_PCM_ENCODING, C2_PARAMKEY_PCM_ENCODING, "value")
- .limitTo(D::AUDIO)
- .withMappers([](C2Value v) -> C2Value {
- int32_t value;
- C2Config::pcm_encoding_t to;
- if (v.get(&value) && C2Mapper::map(value, &to)) {
- return to;
- }
- return C2Value();
- }, [](C2Value v) -> C2Value {
- C2Config::pcm_encoding_t value;
- int32_t to;
- using C2ValueType=typename _c2_reduce_enum_to_underlying_type<decltype(value)>::type;
- if (v.get((C2ValueType*)&value) && C2Mapper::map(value, &to)) {
- return to;
- }
- return C2Value();
- }));
-
- add(ConfigMapper(KEY_IS_ADTS, C2_PARAMKEY_AAC_PACKAGING, "value")
- .limitTo(D::AUDIO & D::CODED)
- .withMappers([](C2Value v) -> C2Value {
- int32_t value;
- if (v.get(&value) && value) {
- return C2Config::AAC_PACKAGING_ADTS;
- }
- return C2Value();
- }, [](C2Value v) -> C2Value {
- uint32_t value;
- if (v.get(&value) && value == C2Config::AAC_PACKAGING_ADTS) {
- return (int32_t)1;
- }
- return C2Value();
- }));
-
- std::shared_ptr<C2Mapper::ProfileLevelMapper> mapper =
- C2Mapper::GetProfileLevelMapper(mCodingMediaType);
-
- add(ConfigMapper(KEY_PROFILE, C2_PARAMKEY_PROFILE_LEVEL, "profile")
- .limitTo(D::CODED)
- .withMappers([mapper](C2Value v) -> C2Value {
- C2Config::profile_t c2 = PROFILE_UNUSED;
- int32_t sdk;
- if (mapper && v.get(&sdk) && mapper->mapProfile(sdk, &c2)) {
- return c2;
- }
- return PROFILE_UNUSED;
- }, [mapper](C2Value v) -> C2Value {
- C2Config::profile_t c2;
- int32_t sdk;
- using C2ValueType=typename _c2_reduce_enum_to_underlying_type<decltype(c2)>::type;
- if (mapper && v.get((C2ValueType*)&c2) && mapper->mapProfile(c2, &sdk)) {
- return sdk;
- }
- return C2Value();
- }));
-
- add(ConfigMapper(KEY_LEVEL, C2_PARAMKEY_PROFILE_LEVEL, "level")
- .limitTo(D::CODED)
- .withMappers([mapper](C2Value v) -> C2Value {
- C2Config::level_t c2 = LEVEL_UNUSED;
- int32_t sdk;
- if (mapper && v.get(&sdk) && mapper->mapLevel(sdk, &c2)) {
- return c2;
- }
- return LEVEL_UNUSED;
- }, [mapper](C2Value v) -> C2Value {
- C2Config::level_t c2;
- int32_t sdk;
- using C2ValueType=typename _c2_reduce_enum_to_underlying_type<decltype(c2)>::type;
- if (mapper && v.get((C2ValueType*)&c2) && mapper->mapLevel(c2, &sdk)) {
- return sdk;
- }
- return C2Value();
- }));
-
- // convert to dBFS and add default
- add(ConfigMapper(KEY_AAC_DRC_TARGET_REFERENCE_LEVEL, C2_PARAMKEY_DRC_TARGET_REFERENCE_LEVEL, "value")
- .limitTo(D::AUDIO & D::DECODER)
- .withMapper([](C2Value v) -> C2Value {
- int32_t value;
- if (!v.get(&value) || value < 0) {
- value = property_get_int32(PROP_DRC_OVERRIDE_REF_LEVEL, DRC_DEFAULT_MOBILE_REF_LEVEL);
- }
- return float(-0.25 * c2_min(value, 127));
- }));
-
- // convert to 0-1 (%) and add default
- add(ConfigMapper(KEY_AAC_DRC_ATTENUATION_FACTOR, C2_PARAMKEY_DRC_ATTENUATION_FACTOR, "value")
- .limitTo(D::AUDIO & D::DECODER)
- .withMapper([](C2Value v) -> C2Value {
- int32_t value;
- if (!v.get(&value) || value < 0) {
- value = property_get_int32(PROP_DRC_OVERRIDE_CUT, DRC_DEFAULT_MOBILE_DRC_CUT);
- }
- return float(c2_min(value, 127) / 127.);
- }));
-
- // convert to 0-1 (%) and add default
- add(ConfigMapper(KEY_AAC_DRC_BOOST_FACTOR, C2_PARAMKEY_DRC_BOOST_FACTOR, "value")
- .limitTo(D::AUDIO & D::DECODER)
- .withMapper([](C2Value v) -> C2Value {
- int32_t value;
- if (!v.get(&value) || value < 0) {
- value = property_get_int32(PROP_DRC_OVERRIDE_BOOST, DRC_DEFAULT_MOBILE_DRC_BOOST);
- }
- return float(c2_min(value, 127) / 127.);
- }));
-
- // convert to compression type and add default
- add(ConfigMapper(KEY_AAC_DRC_HEAVY_COMPRESSION, C2_PARAMKEY_DRC_COMPRESSION_MODE, "value")
- .limitTo(D::AUDIO & D::DECODER)
- .withMapper([](C2Value v) -> C2Value {
- int32_t value;
- if (!v.get(&value) || value < 0) {
- value = property_get_int32(PROP_DRC_OVERRIDE_HEAVY, DRC_DEFAULT_MOBILE_DRC_HEAVY);
- }
- return value == 1 ? C2Config::DRC_COMPRESSION_HEAVY : C2Config::DRC_COMPRESSION_LIGHT;
- }));
-
- // convert to dBFS and add default
- add(ConfigMapper(KEY_AAC_ENCODED_TARGET_LEVEL, C2_PARAMKEY_DRC_ENCODED_TARGET_LEVEL, "value")
- .limitTo(D::AUDIO & D::DECODER)
- .withMapper([](C2Value v) -> C2Value {
- int32_t value;
- if (!v.get(&value) || value < 0) {
- value = property_get_int32(PROP_DRC_OVERRIDE_ENC_LEVEL, DRC_DEFAULT_MOBILE_ENC_LEVEL);
- }
- return float(-0.25 * c2_min(value, 127));
- }));
-
- // convert to effect type (these map to SDK values) and add default
- add(ConfigMapper(KEY_AAC_DRC_EFFECT_TYPE, C2_PARAMKEY_DRC_EFFECT_TYPE, "value")
- .limitTo(D::AUDIO & D::DECODER)
- .withMapper([](C2Value v) -> C2Value {
- int32_t value;
- if (!v.get(&value) || value < -1 || value > 8) {
- value = property_get_int32(PROP_DRC_OVERRIDE_EFFECT, DRC_DEFAULT_MOBILE_DRC_EFFECT);
- // ensure value is within range
- if (value < -1 || value > 8) {
- value = DRC_DEFAULT_MOBILE_DRC_EFFECT;
- }
- }
- return value;
- }));
-
- add(ConfigMapper(KEY_AAC_MAX_OUTPUT_CHANNEL_COUNT, C2_PARAMKEY_MAX_CHANNEL_COUNT, "value")
- .limitTo(D::AUDIO));
-
- add(ConfigMapper(KEY_AAC_SBR_MODE, C2_PARAMKEY_AAC_SBR_MODE, "value")
- .limitTo(D::AUDIO & D::ENCODER & D::CONFIG)
- .withMapper([](C2Value v) -> C2Value {
- int32_t value;
- if (!v.get(&value) || value < 0) {
- return C2Config::AAC_SBR_AUTO;
- }
- switch (value) {
- case 0: return C2Config::AAC_SBR_OFF;
- case 1: return C2Config::AAC_SBR_SINGLE_RATE;
- case 2: return C2Config::AAC_SBR_DUAL_RATE;
- default: return C2Config::AAC_SBR_AUTO + 1; // invalid value
- }
- }));
-
- add(ConfigMapper(KEY_QUALITY, C2_PARAMKEY_QUALITY, "value"));
- add(ConfigMapper(KEY_FLAC_COMPRESSION_LEVEL, C2_PARAMKEY_COMPLEXITY, "value")
- .limitTo(D::AUDIO & D::ENCODER));
- add(ConfigMapper("complexity", C2_PARAMKEY_COMPLEXITY, "value")
- .limitTo(D::ENCODER));
-
- add(ConfigMapper(KEY_GRID_COLUMNS, C2_PARAMKEY_TILE_LAYOUT, "columns")
- .limitTo(D::IMAGE));
- add(ConfigMapper(KEY_GRID_ROWS, C2_PARAMKEY_TILE_LAYOUT, "rows")
- .limitTo(D::IMAGE));
- add(ConfigMapper(KEY_TILE_WIDTH, C2_PARAMKEY_TILE_LAYOUT, "tile.width")
- .limitTo(D::IMAGE));
- add(ConfigMapper(KEY_TILE_HEIGHT, C2_PARAMKEY_TILE_LAYOUT, "tile.height")
- .limitTo(D::IMAGE));
-
- add(ConfigMapper(KEY_LATENCY, C2_PARAMKEY_PIPELINE_DELAY_REQUEST, "value")
- .limitTo(D::VIDEO & D::ENCODER));
-
- add(ConfigMapper(C2_PARAMKEY_INPUT_TIME_STRETCH, C2_PARAMKEY_INPUT_TIME_STRETCH, "value"));
-
- /* still to do
- constexpr char KEY_PUSH_BLANK_BUFFERS_ON_STOP[] = "push-blank-buffers-on-shutdown";
-
- not yet used by MediaCodec, but defined as MediaFormat
- KEY_AUDIO_SESSION_ID // we use "audio-hw-sync"
- KEY_OUTPUT_REORDER_DEPTH
- */
-}
-
-status_t CCodecConfig::initialize(
- const std::shared_ptr<Codec2Client> &client,
- const std::shared_ptr<Codec2Client::Component> &component) {
- C2ComponentDomainSetting domain(C2Component::DOMAIN_OTHER);
- C2ComponentKindSetting kind(C2Component::KIND_OTHER);
-
- std::vector<std::unique_ptr<C2Param>> queried;
- c2_status_t c2err = component->query({ &domain, &kind }, {}, C2_DONT_BLOCK, &queried);
- if (c2err != C2_OK) {
- ALOGD("Query domain & kind failed => %s", asString(c2err));
- // TEMP: determine kind from component name
- if (kind.value == C2Component::KIND_OTHER) {
- if (component->getName().find("encoder") != std::string::npos) {
- kind.value = C2Component::KIND_ENCODER;
- } else if (component->getName().find("decoder") != std::string::npos) {
- kind.value = C2Component::KIND_DECODER;
- }
- }
-
- // TEMP: determine domain from media type (port (preferred) or stream #0)
- if (domain.value == C2Component::DOMAIN_OTHER) {
- AString mediaType = QueryMediaType(true /* input */, component);
- if (mediaType.startsWith("audio/")) {
- domain.value = C2Component::DOMAIN_AUDIO;
- } else if (mediaType.startsWith("video/")) {
- domain.value = C2Component::DOMAIN_VIDEO;
- } else if (mediaType.startsWith("image/")) {
- domain.value = C2Component::DOMAIN_IMAGE;
- }
- }
- }
-
- mDomain = (domain.value == C2Component::DOMAIN_VIDEO ? Domain::IS_VIDEO :
- domain.value == C2Component::DOMAIN_IMAGE ? Domain::IS_IMAGE :
- domain.value == C2Component::DOMAIN_AUDIO ? Domain::IS_AUDIO : Domain::OTHER_DOMAIN)
- | (kind.value == C2Component::KIND_DECODER ? Domain::IS_DECODER :
- kind.value == C2Component::KIND_ENCODER ? Domain::IS_ENCODER : Domain::OTHER_KIND);
-
- mInputDomain = Domain(((mDomain & IS_DECODER) ? IS_CODED : IS_RAW) | IS_INPUT);
- mOutputDomain = Domain(((mDomain & IS_ENCODER) ? IS_CODED : IS_RAW) | IS_OUTPUT);
-
- ALOGV("domain is %#x (%u %u)", mDomain, domain.value, kind.value);
-
- std::vector<C2Param::Index> paramIndices;
- switch (kind.value) {
- case C2Component::KIND_DECODER:
- mCodingMediaType = QueryMediaType(true /* input */, component).c_str();
- break;
- case C2Component::KIND_ENCODER:
- mCodingMediaType = QueryMediaType(false /* input */, component).c_str();
- break;
- default:
- mCodingMediaType = "";
- }
-
- c2err = component->querySupportedParams(&mParamDescs);
- if (c2err != C2_OK) {
- ALOGD("Query supported params failed after returning %zu values => %s",
- mParamDescs.size(), asString(c2err));
- return UNKNOWN_ERROR;
- }
- for (const std::shared_ptr<C2ParamDescriptor> &desc : mParamDescs) {
- mSupportedIndices.emplace(desc->index());
- }
-
- mReflector = client->getParamReflector();
- if (mReflector == nullptr) {
- ALOGE("Failed to get param reflector");
- return UNKNOWN_ERROR;
- }
-
- // enumerate all fields
- mParamUpdater = std::make_shared<ReflectedParamUpdater>();
- mParamUpdater->clear();
- mParamUpdater->supportWholeParam(
- C2_PARAMKEY_TEMPORAL_LAYERING, C2StreamTemporalLayeringTuning::CORE_INDEX);
- mParamUpdater->addParamDesc(mReflector, mParamDescs);
-
- // TEMP: add some standard fields even if not reflected
- if (kind.value == C2Component::KIND_ENCODER) {
- mParamUpdater->addStandardParam<C2StreamInitDataInfo::output>(C2_PARAMKEY_INIT_DATA);
- }
- if (domain.value == C2Component::DOMAIN_IMAGE || domain.value == C2Component::DOMAIN_VIDEO) {
- if (kind.value != C2Component::KIND_ENCODER) {
- addLocalParam<C2StreamPictureSizeInfo::output>(C2_PARAMKEY_PICTURE_SIZE);
- addLocalParam<C2StreamCropRectInfo::output>(C2_PARAMKEY_CROP_RECT);
- addLocalParam(
- new C2StreamPixelAspectRatioInfo::output(0u, 1u, 1u),
- C2_PARAMKEY_PIXEL_ASPECT_RATIO);
- addLocalParam(new C2StreamRotationInfo::output(0u, 0), C2_PARAMKEY_ROTATION);
- addLocalParam(new C2StreamColorAspectsInfo::output(0u), C2_PARAMKEY_COLOR_ASPECTS);
- addLocalParam<C2StreamDataSpaceInfo::output>(C2_PARAMKEY_DATA_SPACE);
- addLocalParam<C2StreamHdrStaticInfo::output>(C2_PARAMKEY_HDR_STATIC_INFO);
- addLocalParam(new C2StreamSurfaceScalingInfo::output(0u, VIDEO_SCALING_MODE_SCALE_TO_FIT),
- C2_PARAMKEY_SURFACE_SCALING_MODE);
- } else {
- addLocalParam(new C2StreamColorAspectsInfo::input(0u), C2_PARAMKEY_COLOR_ASPECTS);
- }
- }
-
- initializeStandardParams();
-
- // subscribe to all supported standard (exposed) params
- // TODO: limit this to params that are actually in the domain
- std::vector<std::string> formatKeys = mStandardParams->getPathsForDomain(Domain(1 << 30));
- std::vector<C2Param::Index> indices;
- mParamUpdater->getParamIndicesForKeys(formatKeys, &indices);
- mSubscribedIndices.insert(indices.begin(), indices.end());
-
- // also subscribe to some non-SDK standard parameters
- // for number of input/output buffers
- mSubscribedIndices.emplace(C2PortSuggestedBufferCountTuning::input::PARAM_TYPE);
- mSubscribedIndices.emplace(C2PortSuggestedBufferCountTuning::output::PARAM_TYPE);
- mSubscribedIndices.emplace(C2ActualPipelineDelayTuning::PARAM_TYPE);
- mSubscribedIndices.emplace(C2PortActualDelayTuning::input::PARAM_TYPE);
- mSubscribedIndices.emplace(C2PortActualDelayTuning::output::PARAM_TYPE);
- // for output buffer array allocation
- mSubscribedIndices.emplace(C2StreamMaxBufferSizeInfo::output::PARAM_TYPE);
- // init data (CSD)
- mSubscribedIndices.emplace(C2StreamInitDataInfo::output::PARAM_TYPE);
-
- return OK;
-}
-
-status_t CCodecConfig::subscribeToConfigUpdate(
- const std::shared_ptr<Codec2Client::Component> &component,
- const std::vector<C2Param::Index> &indices,
- c2_blocking_t blocking) {
- mSubscribedIndices.insert(indices.begin(), indices.end());
- // TODO: enable this when components no longer crash on this config
- if (mSubscribedIndices.size() != mSubscribedIndicesSize && false) {
- std::vector<uint32_t> indices;
- for (C2Param::Index ix : mSubscribedIndices) {
- indices.push_back(ix);
- }
- std::unique_ptr<C2SubscribedParamIndicesTuning> subscribeTuning =
- C2SubscribedParamIndicesTuning::AllocUnique(indices);
- std::vector<std::unique_ptr<C2SettingResult>> results;
- c2_status_t c2Err = component->config({ subscribeTuning.get() }, blocking, &results);
- if (c2Err != C2_OK && c2Err != C2_BAD_INDEX) {
- ALOGD("Failed to subscribe to parameters => %s", asString(c2Err));
- // TODO: error
- }
- ALOGV("Subscribed to %zu params", mSubscribedIndices.size());
- mSubscribedIndicesSize = mSubscribedIndices.size();
- }
- return OK;
-}
-
-status_t CCodecConfig::queryConfiguration(
- const std::shared_ptr<Codec2Client::Component> &component) {
- // query all subscribed parameters
- std::vector<C2Param::Index> indices(mSubscribedIndices.begin(), mSubscribedIndices.end());
- std::vector<std::unique_ptr<C2Param>> queried;
- c2_status_t c2Err = component->query({}, indices, C2_MAY_BLOCK, &queried);
- if (c2Err != OK) {
- ALOGI("query failed after returning %zu values (%s)", queried.size(), asString(c2Err));
- // TODO: error
- }
-
- updateConfiguration(queried, ALL);
- return OK;
-}
-
-bool CCodecConfig::updateConfiguration(
- std::vector<std::unique_ptr<C2Param>> &configUpdate, Domain domain) {
- ALOGV("updating configuration with %zu params", configUpdate.size());
- bool changed = false;
- for (std::unique_ptr<C2Param> &p : configUpdate) {
- if (p && *p) {
- auto insertion = mCurrentConfig.emplace(p->index(), nullptr);
- if (insertion.second || *insertion.first->second != *p) {
- if (mSupportedIndices.count(p->index()) || mLocalParams.count(p->index())) {
- // only track changes in supported (reflected or local) indices
- changed = true;
- } else {
- ALOGV("an unlisted config was %s: %#x",
- insertion.second ? "added" : "updated", p->index());
- }
- }
- insertion.first->second = std::move(p);
- }
- }
-
- ALOGV("updated configuration has %zu params (%s)", mCurrentConfig.size(),
- changed ? "CHANGED" : "no change");
- if (changed) {
- return updateFormats(domain);
- }
- return false;
-}
-
-bool CCodecConfig::updateFormats(Domain domain) {
- // get addresses of params in the current config
- std::vector<C2Param*> paramPointers;
- for (const auto &it : mCurrentConfig) {
- paramPointers.push_back(it.second.get());
- }
-
- ReflectedParamUpdater::Dict reflected = mParamUpdater->getParams(paramPointers);
- ALOGD("c2 config is %s", reflected.debugString().c_str());
-
- bool changed = false;
- if (domain & mInputDomain) {
- sp<AMessage> oldFormat = mInputFormat;
- mInputFormat = mInputFormat->dup(); // trigger format changed
- mInputFormat->extend(getSdkFormatForDomain(reflected, mInputDomain));
- if (mInputFormat->countEntries() != oldFormat->countEntries()
- || mInputFormat->changesFrom(oldFormat)->countEntries() > 0) {
- changed = true;
- } else {
- mInputFormat = oldFormat; // no change
- }
- }
- if (domain & mOutputDomain) {
- sp<AMessage> oldFormat = mOutputFormat;
- mOutputFormat = mOutputFormat->dup(); // trigger output format changed
- mOutputFormat->extend(getSdkFormatForDomain(reflected, mOutputDomain));
- if (mOutputFormat->countEntries() != oldFormat->countEntries()
- || mOutputFormat->changesFrom(oldFormat)->countEntries() > 0) {
- changed = true;
- } else {
- mOutputFormat = oldFormat; // no change
- }
- }
- ALOGV_IF(changed, "format(s) changed");
- return changed;
-}
-
-sp<AMessage> CCodecConfig::getSdkFormatForDomain(
- const ReflectedParamUpdater::Dict &reflected, Domain portDomain) const {
- sp<AMessage> msg = new AMessage;
- for (const std::pair<std::string, std::vector<ConfigMapper>> &el : mStandardParams->getKeys()) {
- for (const ConfigMapper &cm : el.second) {
- if ((cm.domain() & portDomain) == 0 // input-output-coded-raw
- || (cm.domain() & mDomain) != mDomain // component domain + kind (these must match)
- || (cm.domain() & IS_READ) == 0) {
- continue;
- }
- auto it = reflected.find(cm.path());
- if (it == reflected.end()) {
- continue;
- }
- C2Value c2Value;
- sp<ABuffer> bufValue;
- AString strValue;
- AMessage::ItemData item;
- if (it->second.find(&c2Value)) {
- item = cm.mapToMessage(c2Value);
- } else if (it->second.find(&bufValue)) {
- item.set(bufValue);
- } else if (it->second.find(&strValue)) {
- item.set(strValue);
- } else {
- ALOGD("unexpected untyped query value for key: %s", cm.path().c_str());
- continue;
- }
- msg->setItem(el.first.c_str(), item);
- }
- }
-
- { // convert from Codec 2.0 rect to MediaFormat rect and add crop rect if not present
- int32_t left, top, width, height;
- if (msg->findInt32("crop-left", &left) && msg->findInt32("crop-width", &width)
- && msg->findInt32("crop-top", &top) && msg->findInt32("crop-height", &height)
- && left >= 0 && width >=0 && width <= INT32_MAX - left
- && top >= 0 && height >=0 && height <= INT32_MAX - top) {
- msg->removeEntryAt(msg->findEntryByName("crop-left"));
- msg->removeEntryAt(msg->findEntryByName("crop-top"));
- msg->removeEntryAt(msg->findEntryByName("crop-width"));
- msg->removeEntryAt(msg->findEntryByName("crop-height"));
- msg->setRect("crop", left, top, left + width - 1, top + height - 1);
- } else if (msg->findInt32("width", &width) && msg->findInt32("height", &height)) {
- msg->setRect("crop", 0, 0, width - 1, height - 1);
- }
- }
-
- { // convert temporal layering to schema
- sp<ABuffer> tmp;
- if (msg->findBuffer(C2_PARAMKEY_TEMPORAL_LAYERING, &tmp) && tmp != nullptr) {
- C2StreamTemporalLayeringTuning *layering =
- C2StreamTemporalLayeringTuning::From(C2Param::From(tmp->data(), tmp->size()));
- if (layering && layering->m.layerCount > 0
- && layering->m.bLayerCount < layering->m.layerCount) {
- // check if this is webrtc compatible
- AString mime;
- if (msg->findString(KEY_MIME, &mime) &&
- mime.equalsIgnoreCase(MIMETYPE_VIDEO_VP8) &&
- layering->m.bLayerCount == 0 &&
- (layering->m.layerCount == 1
- || (layering->m.layerCount == 2
- && layering->flexCount() >= 1
- && layering->m.bitrateRatios[0] == .6f)
- || (layering->m.layerCount == 3
- && layering->flexCount() >= 2
- && layering->m.bitrateRatios[0] == .4f
- && layering->m.bitrateRatios[1] == .6f)
- || (layering->m.layerCount == 4
- && layering->flexCount() >= 3
- && layering->m.bitrateRatios[0] == .25f
- && layering->m.bitrateRatios[1] == .4f
- && layering->m.bitrateRatios[2] == .6f))) {
- msg->setString(KEY_TEMPORAL_LAYERING, AStringPrintf(
- "webrtc.vp8.%u-layer", layering->m.layerCount));
- } else if (layering->m.bLayerCount) {
- msg->setString(KEY_TEMPORAL_LAYERING, AStringPrintf(
- "android.generic.%u+%u",
- layering->m.layerCount - layering->m.bLayerCount,
- layering->m.bLayerCount));
- } else if (layering->m.bLayerCount) {
- msg->setString(KEY_TEMPORAL_LAYERING, AStringPrintf(
- "android.generic.%u", layering->m.layerCount));
- }
- }
- msg->removeEntryAt(msg->findEntryByName(C2_PARAMKEY_TEMPORAL_LAYERING));
- }
- }
-
- { // convert color info
- C2Color::primaries_t primaries;
- C2Color::matrix_t matrix;
- if (msg->findInt32("color-primaries", (int32_t*)&primaries)
- && msg->findInt32("color-matrix", (int32_t*)&matrix)) {
- int32_t standard;
-
- if (C2Mapper::map(primaries, matrix, &standard)) {
- msg->setInt32(KEY_COLOR_STANDARD, standard);
- }
-
- msg->removeEntryAt(msg->findEntryByName("color-primaries"));
- msg->removeEntryAt(msg->findEntryByName("color-matrix"));
- }
-
-
- // calculate dataspace for raw graphic buffers if not specified by component, or if
- // using surface with unspecified aspects (as those must be defaulted which may change
- // the dataspace)
- if ((portDomain & IS_RAW) && (mDomain & (IS_IMAGE | IS_VIDEO))) {
- android_dataspace dataspace;
- ColorAspects aspects = {
- ColorAspects::RangeUnspecified, ColorAspects::PrimariesUnspecified,
- ColorAspects::TransferUnspecified, ColorAspects::MatrixUnspecified
- };
- ColorUtils::getColorAspectsFromFormat(msg, aspects);
- ColorAspects origAspects = aspects;
- if (mUsingSurface) {
- // get image size (default to HD)
- int32_t width = 1280;
- int32_t height = 720;
- int32_t left, top, right, bottom;
- if (msg->findRect("crop", &left, &top, &right, &bottom)) {
- width = right - left + 1;
- height = bottom - top + 1;
- } else {
- (void)msg->findInt32(KEY_WIDTH, &width);
- (void)msg->findInt32(KEY_HEIGHT, &height);
- }
- ColorUtils::setDefaultCodecColorAspectsIfNeeded(aspects, width, height);
- ColorUtils::setColorAspectsIntoFormat(aspects, msg);
- }
-
- if (!msg->findInt32("android._dataspace", (int32_t*)&dataspace)
- || aspects.mRange != origAspects.mRange
- || aspects.mPrimaries != origAspects.mPrimaries
- || aspects.mTransfer != origAspects.mTransfer
- || aspects.mMatrixCoeffs != origAspects.mMatrixCoeffs) {
- dataspace = ColorUtils::getDataSpaceForColorAspects(aspects, true /* mayExpand */);
- msg->setInt32("android._dataspace", dataspace);
- }
- }
-
- // HDR static info
-
- C2HdrStaticMetadataStruct hdr;
- if (msg->findFloat("smpte2086.red.x", &hdr.mastering.red.x)
- && msg->findFloat("smpte2086.red.y", &hdr.mastering.red.y)
- && msg->findFloat("smpte2086.green.x", &hdr.mastering.green.x)
- && msg->findFloat("smpte2086.green.y", &hdr.mastering.green.y)
- && msg->findFloat("smpte2086.blue.x", &hdr.mastering.blue.x)
- && msg->findFloat("smpte2086.blue.y", &hdr.mastering.blue.y)
- && msg->findFloat("smpte2086.white.x", &hdr.mastering.white.x)
- && msg->findFloat("smpte2086.white.y", &hdr.mastering.white.y)
- && msg->findFloat("smpte2086.max-luminance", &hdr.mastering.maxLuminance)
- && msg->findFloat("smpte2086.min-luminance", &hdr.mastering.minLuminance)
- && msg->findFloat("cta861.max-cll", &hdr.maxCll)
- && msg->findFloat("cta861.max-fall", &hdr.maxFall)) {
- if (hdr.mastering.red.x >= 0 && hdr.mastering.red.x <= 1
- && hdr.mastering.red.y >= 0 && hdr.mastering.red.y <= 1
- && hdr.mastering.green.x >= 0 && hdr.mastering.green.x <= 1
- && hdr.mastering.green.y >= 0 && hdr.mastering.green.y <= 1
- && hdr.mastering.blue.x >= 0 && hdr.mastering.blue.x <= 1
- && hdr.mastering.blue.y >= 0 && hdr.mastering.blue.y <= 1
- && hdr.mastering.white.x >= 0 && hdr.mastering.white.x <= 1
- && hdr.mastering.white.y >= 0 && hdr.mastering.white.y <= 1
- && hdr.mastering.maxLuminance >= 0 && hdr.mastering.maxLuminance <= 65535
- && hdr.mastering.minLuminance >= 0 && hdr.mastering.minLuminance <= 6.5535
- && hdr.maxCll >= 0 && hdr.maxCll <= 65535
- && hdr.maxFall >= 0 && hdr.maxFall <= 65535) {
- HDRStaticInfo meta;
- meta.mID = meta.kType1;
- meta.sType1.mR.x = hdr.mastering.red.x / 0.00002 + 0.5;
- meta.sType1.mR.y = hdr.mastering.red.y / 0.00002 + 0.5;
- meta.sType1.mG.x = hdr.mastering.green.x / 0.00002 + 0.5;
- meta.sType1.mG.y = hdr.mastering.green.y / 0.00002 + 0.5;
- meta.sType1.mB.x = hdr.mastering.blue.x / 0.00002 + 0.5;
- meta.sType1.mB.y = hdr.mastering.blue.y / 0.00002 + 0.5;
- meta.sType1.mW.x = hdr.mastering.white.x / 0.00002 + 0.5;
- meta.sType1.mW.y = hdr.mastering.white.y / 0.00002 + 0.5;
- meta.sType1.mMaxDisplayLuminance = hdr.mastering.maxLuminance + 0.5;
- meta.sType1.mMinDisplayLuminance = hdr.mastering.minLuminance / 0.0001 + 0.5;
- meta.sType1.mMaxContentLightLevel = hdr.maxCll + 0.5;
- meta.sType1.mMaxFrameAverageLightLevel = hdr.maxFall + 0.5;
- msg->removeEntryAt(msg->findEntryByName("smpte2086.red.x"));
- msg->removeEntryAt(msg->findEntryByName("smpte2086.red.y"));
- msg->removeEntryAt(msg->findEntryByName("smpte2086.green.x"));
- msg->removeEntryAt(msg->findEntryByName("smpte2086.green.y"));
- msg->removeEntryAt(msg->findEntryByName("smpte2086.blue.x"));
- msg->removeEntryAt(msg->findEntryByName("smpte2086.blue.y"));
- msg->removeEntryAt(msg->findEntryByName("smpte2086.white.x"));
- msg->removeEntryAt(msg->findEntryByName("smpte2086.white.y"));
- msg->removeEntryAt(msg->findEntryByName("smpte2086.max-luminance"));
- msg->removeEntryAt(msg->findEntryByName("smpte2086.min-luminance"));
- msg->removeEntryAt(msg->findEntryByName("cta861.max-cll"));
- msg->removeEntryAt(msg->findEntryByName("cta861.max-fall"));
- msg->setBuffer(KEY_HDR_STATIC_INFO, ABuffer::CreateAsCopy(&meta, sizeof(meta)));
- } else {
- ALOGD("found invalid HDR static metadata %s", msg->debugString(8).c_str());
- }
- }
- }
-
- ALOGV("converted to SDK values as %s", msg->debugString().c_str());
- return msg;
-}
-
-/// converts an AMessage value to a ParamUpdater value
-static void convert(const AMessage::ItemData &from, ReflectedParamUpdater::Value *to) {
- int32_t int32Value;
- int64_t int64Value;
- sp<ABuffer> bufValue;
- AString strValue;
- float floatValue;
- double doubleValue;
-
- if (from.find(&int32Value)) {
- to->set(int32Value);
- } else if (from.find(&int64Value)) {
- to->set(int64Value);
- } else if (from.find(&bufValue)) {
- to->set(bufValue);
- } else if (from.find(&strValue)) {
- to->set(strValue);
- } else if (from.find(&floatValue)) {
- to->set(C2Value(floatValue));
- } else if (from.find(&doubleValue)) {
- // convert double to float
- to->set(C2Value((float)doubleValue));
- }
- // ignore all other AMessage types
-}
-
-/// relaxes Codec 2.0 specific value types to SDK types (mainly removes signedness and counterness
-/// from 32/64-bit values.)
-static void relaxValues(ReflectedParamUpdater::Value &item) {
- C2Value c2Value;
- int32_t int32Value;
- int64_t int64Value;
- (void)item.find(&c2Value);
- if (c2Value.get(&int32Value) || c2Value.get((uint32_t*)&int32Value)
- || c2Value.get((c2_cntr32_t*)&int32Value)) {
- item.set(int32Value);
- } else if (c2Value.get(&int64Value)
- || c2Value.get((uint64_t*)&int64Value)
- || c2Value.get((c2_cntr64_t*)&int64Value)) {
- item.set(int64Value);
- }
-}
-
-ReflectedParamUpdater::Dict CCodecConfig::getReflectedFormat(
- const sp<AMessage> ¶ms_, Domain configDomain) const {
- // create a modifiable copy of params
- sp<AMessage> params = params_->dup();
- ALOGV("filtering with config domain %x", configDomain);
-
- // convert some macro parameters to Codec 2.0 specific expressions
-
- { // make i-frame-interval frame based
- float iFrameInterval;
- if (params->findAsFloat(KEY_I_FRAME_INTERVAL, &iFrameInterval)) {
- float frameRate;
- if (params->findAsFloat(KEY_FRAME_RATE, &frameRate)) {
- params->setInt32("i-frame-period",
- (frameRate <= 0 || iFrameInterval < 0)
- ? -1 /* no sync frames */
- : (int32_t)c2_min(iFrameInterval * frameRate + 0.5,
- (float)INT32_MAX));
- }
- }
- }
-
- if (mDomain == (IS_VIDEO | IS_ENCODER)) {
- // convert capture-rate into input-time-stretch
- float frameRate, captureRate;
- if (params->findAsFloat(KEY_FRAME_RATE, &frameRate)) {
- if (!params->findAsFloat("time-lapse-fps", &captureRate)
- && !params->findAsFloat(KEY_CAPTURE_RATE, &captureRate)) {
- captureRate = frameRate;
- }
- if (captureRate > 0 && frameRate > 0) {
- params->setFloat(C2_PARAMKEY_INPUT_TIME_STRETCH, captureRate / frameRate);
- }
- }
- }
-
- { // reflect temporal layering into a binary blob
- AString schema;
- if (params->findString(KEY_TEMPORAL_LAYERING, &schema)) {
- unsigned int numLayers = 0;
- unsigned int numBLayers = 0;
- int tags;
- char dummy;
- std::unique_ptr<C2StreamTemporalLayeringTuning::output> layering;
- if (sscanf(schema.c_str(), "webrtc.vp8.%u-layer%c", &numLayers, &dummy) == 1
- && numLayers > 0) {
- switch (numLayers) {
- case 1:
- layering = C2StreamTemporalLayeringTuning::output::AllocUnique(
- {}, 0u, 1u, 0u);
- break;
- case 2:
- layering = C2StreamTemporalLayeringTuning::output::AllocUnique(
- { .6f }, 0u, 2u, 0u);
- break;
- case 3:
- layering = C2StreamTemporalLayeringTuning::output::AllocUnique(
- { .4f, .6f }, 0u, 3u, 0u);
- break;
- default:
- layering = C2StreamTemporalLayeringTuning::output::AllocUnique(
- { .25f, .4f, .6f }, 0u, 4u, 0u);
- break;
- }
- } else if ((tags = sscanf(schema.c_str(), "android.generic.%u%c%u%c",
- &numLayers, &dummy, &numBLayers, &dummy))
- && (tags == 1 || (tags == 3 && dummy == '+'))
- && numLayers > 0 && numLayers < UINT32_MAX - numBLayers) {
- layering = C2StreamTemporalLayeringTuning::output::AllocUnique(
- {}, 0u, numLayers + numBLayers, numBLayers);
- } else {
- ALOGD("Ignoring unsupported ts-schema [%s]", schema.c_str());
- }
- if (layering) {
- params->setBuffer(C2_PARAMKEY_TEMPORAL_LAYERING,
- ABuffer::CreateAsCopy(layering.get(), layering->size()));
- }
- }
- }
-
- { // convert from MediaFormat rect to Codec 2.0 rect
- int32_t offset;
- int32_t end;
- AMessage::ItemData item;
- if (params->findInt32("crop-left", &offset) && params->findInt32("crop-right", &end)
- && offset >= 0 && end >= offset - 1) {
- size_t ix = params->findEntryByName("crop-right");
- params->setEntryNameAt(ix, "crop-width");
- item.set(end - offset + 1);
- params->setEntryAt(ix, item);
- }
- if (params->findInt32("crop-top", &offset) && params->findInt32("crop-bottom", &end)
- && offset >= 0 && end >= offset - 1) {
- size_t ix = params->findEntryByName("crop-bottom");
- params->setEntryNameAt(ix, "crop-height");
- item.set(end - offset + 1);
- params->setEntryAt(ix, item);
- }
- }
-
- { // convert color info
- int32_t standard;
- if (params->findInt32(KEY_COLOR_STANDARD, &standard)) {
- C2Color::primaries_t primaries;
- C2Color::matrix_t matrix;
-
- if (C2Mapper::map(standard, &primaries, &matrix)) {
- params->setInt32("color-primaries", primaries);
- params->setInt32("color-matrix", matrix);
- }
- }
-
- sp<ABuffer> hdrMeta;
- if (params->findBuffer(KEY_HDR_STATIC_INFO, &hdrMeta)
- && hdrMeta->size() == sizeof(HDRStaticInfo)) {
- HDRStaticInfo *meta = (HDRStaticInfo*)hdrMeta->data();
- if (meta->mID == meta->kType1) {
- params->setFloat("smpte2086.red.x", meta->sType1.mR.x * 0.00002);
- params->setFloat("smpte2086.red.y", meta->sType1.mR.y * 0.00002);
- params->setFloat("smpte2086.green.x", meta->sType1.mG.x * 0.00002);
- params->setFloat("smpte2086.green.y", meta->sType1.mG.y * 0.00002);
- params->setFloat("smpte2086.blue.x", meta->sType1.mB.x * 0.00002);
- params->setFloat("smpte2086.blue.y", meta->sType1.mB.y * 0.00002);
- params->setFloat("smpte2086.white.x", meta->sType1.mW.x * 0.00002);
- params->setFloat("smpte2086.white.y", meta->sType1.mW.y * 0.00002);
- params->setFloat("smpte2086.max-luminance", meta->sType1.mMaxDisplayLuminance);
- params->setFloat("smpte2086.min-luminance", meta->sType1.mMinDisplayLuminance * 0.0001);
- params->setFloat("cta861.max-cll", meta->sType1.mMaxContentLightLevel);
- params->setFloat("cta861.max-fall", meta->sType1.mMaxFrameAverageLightLevel);
- }
- }
- }
-
- // this is to verify that we set proper signedness for standard parameters
- bool beVeryStrict = property_get_bool("debug.stagefright.ccodec_strict_type", false);
- // this is to allow vendors to use the wrong signedness for standard parameters
- bool beVeryLax = property_get_bool("debug.stagefright.ccodec_lax_type", false);
-
- ReflectedParamUpdater::Dict filtered;
- for (size_t ix = 0; ix < params->countEntries(); ++ix) {
- AMessage::Type type;
- AString name = params->getEntryNameAt(ix, &type);
- AMessage::ItemData msgItem = params->getEntryAt(ix);
- ReflectedParamUpdater::Value item;
- convert(msgItem, &item); // convert item to param updater item
-
- if (name.startsWith("vendor.")) {
- // vendor params pass through as is
- filtered.emplace(name.c_str(), item);
- continue;
- }
- // standard parameters may get modified, filtered or duplicated
- for (const ConfigMapper &cm : mStandardParams->getConfigMappersForSdkKey(name.c_str())) {
- // note: we ignore port domain for configuration
- if ((cm.domain() & configDomain)
- // component domain + kind (these must match)
- && (cm.domain() & mDomain) == mDomain) {
- // map arithmetic values, pass through string or buffer
- switch (type) {
- case AMessage::kTypeBuffer:
- case AMessage::kTypeString:
- break;
- case AMessage::kTypeInt32:
- case AMessage::kTypeInt64:
- case AMessage::kTypeFloat:
- case AMessage::kTypeDouble:
- // for now only map settings with mappers as we are not creating
- // signed <=> unsigned mappers
- // TODO: be precise about signed unsigned
- if (beVeryStrict || cm.mapper()) {
- item.set(cm.mapFromMessage(params->getEntryAt(ix)));
- // also allow to relax type strictness
- if (beVeryLax) {
- relaxValues(item);
- }
- }
- break;
- default:
- continue;
- }
- filtered.emplace(cm.path(), item);
- }
- }
- }
- ALOGV("filtered %s to %s", params->debugString(4).c_str(),
- filtered.debugString(4).c_str());
- return filtered;
-}
-
-status_t CCodecConfig::getConfigUpdateFromSdkParams(
- std::shared_ptr<Codec2Client::Component> component,
- const sp<AMessage> &sdkParams, Domain configDomain,
- c2_blocking_t blocking,
- std::vector<std::unique_ptr<C2Param>> *configUpdate) const {
- ReflectedParamUpdater::Dict params = getReflectedFormat(sdkParams, configDomain);
-
- std::vector<C2Param::Index> indices;
- mParamUpdater->getParamIndicesFromMessage(params, &indices);
- if (indices.empty()) {
- ALOGD("no recognized params in: %s", params.debugString().c_str());
- return OK;
- }
-
- configUpdate->clear();
- std::vector<C2Param::Index> supportedIndices;
- for (C2Param::Index ix : indices) {
- if (mSupportedIndices.count(ix)) {
- supportedIndices.push_back(ix);
- } else if (mLocalParams.count(ix)) {
- // query local parameter here
- auto it = mCurrentConfig.find(ix);
- if (it != mCurrentConfig.end()) {
- configUpdate->emplace_back(C2Param::Copy(*it->second));
- }
- }
- }
-
- c2_status_t err = component->query({ }, supportedIndices, blocking, configUpdate);
- if (err != C2_OK) {
- ALOGD("query failed after returning %zu params => %s", configUpdate->size(), asString(err));
- }
-
- if (configUpdate->size()) {
- mParamUpdater->updateParamsFromMessage(params, configUpdate);
- }
- return OK;
-}
-
-status_t CCodecConfig::setParameters(
- std::shared_ptr<Codec2Client::Component> component,
- std::vector<std::unique_ptr<C2Param>> &configUpdate,
- c2_blocking_t blocking) {
- status_t result = OK;
- if (configUpdate.empty()) {
- return OK;
- }
-
- std::vector<C2Param::Index> indices;
- std::vector<C2Param *> paramVector;
- for (const std::unique_ptr<C2Param> ¶m : configUpdate) {
- if (mSupportedIndices.count(param->index())) {
- // component parameter
- paramVector.push_back(param.get());
- indices.push_back(param->index());
- } else if (mLocalParams.count(param->index())) {
- // handle local parameter here
- LocalParamValidator validator = mLocalParams.find(param->index())->second;
- c2_status_t err = C2_OK;
- std::unique_ptr<C2Param> copy = C2Param::Copy(*param);
- if (validator) {
- err = validator(copy);
- }
- if (err == C2_OK) {
- ALOGV("updated local parameter value for %s",
- mParamUpdater->getParamName(param->index()).c_str());
-
- mCurrentConfig[param->index()] = std::move(copy);
- } else {
- ALOGD("failed to set parameter value for %s => %s",
- mParamUpdater->getParamName(param->index()).c_str(), asString(err));
- result = BAD_VALUE;
- }
- }
- }
- // update subscribed param indices
- subscribeToConfigUpdate(component, indices, blocking);
-
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- c2_status_t err = component->config(paramVector, blocking, &failures);
- if (err != C2_OK) {
- ALOGD("config failed => %s", asString(err));
- // This is non-fatal.
- }
- for (const std::unique_ptr<C2SettingResult> &failure : failures) {
- switch (failure->failure) {
- case C2SettingResult::BAD_VALUE:
- ALOGD("Bad parameter value");
- result = BAD_VALUE;
- break;
- default:
- ALOGV("failure = %d", int(failure->failure));
- break;
- }
- }
-
- // Re-query parameter values in case config could not update them and update the current
- // configuration.
- configUpdate.clear();
- err = component->query({}, indices, blocking, &configUpdate);
- if (err != C2_OK) {
- ALOGD("query failed after returning %zu params => %s", configUpdate.size(), asString(err));
- }
- (void)updateConfiguration(configUpdate, ALL);
-
- // TODO: error value
- return result;
-}
-
-const C2Param *CCodecConfig::getConfigParameterValue(C2Param::Index index) const {
- auto it = mCurrentConfig.find(index);
- if (it == mCurrentConfig.end()) {
- return nullptr;
- } else {
- return it->second.get();
- }
-}
-
-} // namespace android
diff --git a/media/sfplugin/CCodecConfig.h b/media/sfplugin/CCodecConfig.h
deleted file mode 100644
index 3bafe3f..0000000
--- a/media/sfplugin/CCodecConfig.h
+++ /dev/null
@@ -1,345 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef C_CODEC_CONFIG_H_
-#define C_CODEC_CONFIG_H_
-
-#include <map>
-#include <memory>
-#include <set>
-#include <vector>
-
-#include <C2Component.h>
-#include <codec2/hidl/client.h>
-
-#include <utils/RefBase.h>
-
-#include "InputSurfaceWrapper.h"
-#include "ReflectedParamUpdater.h"
-
-namespace android {
-
-struct AMessage;
-struct StandardParams;
-
-/**
- * Struct managing the codec configuration for CCodec.
- */
-struct CCodecConfig {
-
- /**
- * Domain consists of a bitmask divided into fields, and specifiers work by excluding other
- * values in those domains.
- *
- * Component domains are composed by or-ing the individual IS_ constants, e.g.
- * IS_DECODER | IS_AUDIO.
- *
- * Config specifiers are composed by or-ing the individual mask constants, and
- * and-ing these groups: e.g. (DECODER | ENCODER) & AUDIO.
- *
- * The naming of these constants was to limit the length of mask names as these are used more
- * commonly as masks.
- */
- enum Domain : uint32_t {
- // component domain (domain & kind)
- GUARD_BIT = (1 << 1), ///< this is to prevent against accidental && or || usage
- IS_AUDIO = (1 << 2), ///< for audio codecs
- IS_VIDEO = (1 << 3), ///< for video codecs
- IS_IMAGE = (1 << 4), ///< for image codecs
- OTHER_DOMAIN = (1 << 5), ///< for other domains
-
- IS_ENCODER = (1 << 6), ///< for encoders
- IS_DECODER = (1 << 7), ///< for decoders
- OTHER_KIND = (1 << 8), ///< for other domains
-
- // config domain
- IS_PARAM = (1 << 9), ///< for setParameter
- IS_CONFIG = (1 << 10), ///< for configure
- IS_READ = (1 << 11), ///< for getFormat
-
- // port domain
- IS_INPUT = (1 << 12), ///< for input port (getFormat)
- IS_OUTPUT = (1 << 13), ///< for output port (getFormat)
- IS_RAW = (1 << 14), ///< for raw port (input-encoder, output-decoder)
- IS_CODED = (1 << 15), ///< for coded port (input-decoder, output-encoder)
-
- ALL = ~0U,
- NONE = 0,
-
- AUDIO = ~(IS_IMAGE | IS_VIDEO | OTHER_DOMAIN),
- VIDEO = ~(IS_AUDIO | IS_IMAGE | OTHER_DOMAIN),
- IMAGE = ~(IS_AUDIO | IS_VIDEO | OTHER_DOMAIN),
-
- DECODER = ~(IS_ENCODER | OTHER_KIND),
- ENCODER = ~(IS_DECODER | OTHER_KIND),
-
- PARAM = ~(IS_CONFIG | IS_READ),
- CONFIG = ~(IS_PARAM | IS_READ),
- READ = ~(IS_CONFIG | IS_PARAM),
-
- INPUT = ~(IS_OUTPUT | IS_RAW | IS_CODED),
- OUTPUT = ~(IS_INPUT | IS_RAW | IS_CODED),
- RAW = ~(IS_INPUT | IS_OUTPUT | IS_CODED),
- CODED = ~(IS_INPUT | IS_RAW | IS_OUTPUT),
- };
-
- // things required to manage formats
- std::vector<std::shared_ptr<C2ParamDescriptor>> mParamDescs;
- std::shared_ptr<C2ParamReflector> mReflector;
-
- std::shared_ptr<ReflectedParamUpdater> mParamUpdater;
-
- Domain mDomain; // component domain
- Domain mInputDomain; // input port domain
- Domain mOutputDomain; // output port domain
- std::string mCodingMediaType; // media type of the coded stream
-
- // standard MediaCodec to Codec 2.0 params mapping
- std::shared_ptr<StandardParams> mStandardParams;
-
- std::set<C2Param::Index> mSupportedIndices; ///< indices supported by the component
- std::set<C2Param::Index> mSubscribedIndices; ///< indices to subscribe to
- size_t mSubscribedIndicesSize; ///< count of currently subscribed indices
-
- sp<AMessage> mInputFormat;
- sp<AMessage> mOutputFormat;
-
- bool mUsingSurface; ///< using input or output surface
-
- std::shared_ptr<InputSurfaceWrapper> mInputSurface;
- std::unique_ptr<InputSurfaceWrapper::Config> mISConfig;
-
- /// the current configuration. Updated after configure() and based on configUpdate in
- /// onWorkDone
- std::map<C2Param::Index, std::unique_ptr<C2Param>> mCurrentConfig;
-
- typedef std::function<c2_status_t(std::unique_ptr<C2Param>&)> LocalParamValidator;
-
- /// Parameter indices tracked in current config that are not supported by the component.
- /// these are provided so that optional parameters can remain in the current configuration.
- /// as such, these parameters have no dependencies. TODO: use C2InterfaceHelper for this.
- /// For now support a validation function.
- std::map<C2Param::Index, LocalParamValidator> mLocalParams;
-
- CCodecConfig();
-
- /// initializes the members required to manage the format: descriptors, reflector,
- /// reflected param helper, domain, standard params, and subscribes to standard
- /// indices.
- status_t initialize(
- const std::shared_ptr<Codec2Client> &client,
- const std::shared_ptr<Codec2Client::Component> &component);
-
-
- /**
- * Adds a locally maintained parameter. This is used for output configuration that can be
- * appended to the output buffers in case it is not supported by the component.
- */
- template<typename T>
- bool addLocalParam(
- const std::string &name,
- C2ParamDescriptor::attrib_t attrib = C2ParamDescriptor::IS_READ_ONLY,
- std::function<c2_status_t(std::unique_ptr<T>&)> validator_ =
- std::function<c2_status_t(std::unique_ptr<T>&)>()) {
- C2Param::Index index = T::PARAM_TYPE;
- if (mSupportedIndices.count(index) || mLocalParams.count(index)) {
- if (mSupportedIndices.count(index)) {
- mSubscribedIndices.emplace(index);
- }
- ALOGD("ignoring local param %s (%#x) as it is already %s",
- name.c_str(), (uint32_t)index, mSupportedIndices.count(index) ? "supported" : "local");
- return false; // already supported by the component or already added
- }
-
- // wrap typed validator into untyped validator
- LocalParamValidator validator;
- if (validator_) {
- validator = [validator_](std::unique_ptr<C2Param>& p){
- c2_status_t res = C2_BAD_VALUE;
- std::unique_ptr<T> typed(static_cast<T*>(p.release()));
- // if parameter is correctly typed
- if (T::From(typed.get())) {
- res = validator_(typed);
- p.reset(typed.release());
- }
- return res;
- };
- }
-
- mLocalParams.emplace(index, validator);
- mParamUpdater->addStandardParam<T>(name, attrib);
- return true;
- }
-
- /**
- * Adds a locally maintained parameter with a default value.
- */
- template<typename T>
- bool addLocalParam(
- std::unique_ptr<T> default_,
- const std::string &name,
- C2ParamDescriptor::attrib_t attrib = C2ParamDescriptor::IS_READ_ONLY,
- std::function<c2_status_t(std::unique_ptr<T>&)> validator_ =
- std::function<c2_status_t(std::unique_ptr<T>&)>()) {
- if (addLocalParam<T>(name, attrib, validator_)) {
- if (validator_) {
- c2_status_t err = validator_(default_);
- if (err != C2_OK) {
- ALOGD("default value for %s is invalid => %s", name.c_str(), asString(err));
- return false;
- }
- }
- mCurrentConfig[T::PARAM_TYPE] = std::move(default_);
- return true;
- }
- return false;
- }
-
- template<typename T>
- bool addLocalParam(
- T *default_, const std::string &name,
- C2ParamDescriptor::attrib_t attrib = C2ParamDescriptor::IS_READ_ONLY,
- std::function<c2_status_t(std::unique_ptr<T>&)> validator_ =
- std::function<c2_status_t(std::unique_ptr<T>&)>()) {
- return addLocalParam(std::unique_ptr<T>(default_), name, attrib, validator_);
- }
-
- /// Applies configuration updates, and updates format in the specific domain.
- /// Returns true if formats were updated
- /// \param domain input/output bitmask
- bool updateConfiguration(
- std::vector<std::unique_ptr<C2Param>> &configUpdate, Domain domain);
-
- /// Updates formats in the specific domain. Returns true if any of the formats have changed.
- /// \param domain input/output bitmask
- bool updateFormats(Domain domain);
-
- /**
- * Applies SDK configurations in a specific configuration domain.
- * Updates relevant input/output formats and subscribes to parameters specified in the
- * configuration.
- * \param domain config/setParam bitmask
- * \param blocking blocking mode to use with the component
- */
- status_t getConfigUpdateFromSdkParams(
- std::shared_ptr<Codec2Client::Component> component,
- const sp<AMessage> &sdkParams, Domain domain,
- c2_blocking_t blocking,
- std::vector<std::unique_ptr<C2Param>> *configUpdate) const;
-
- /**
- * Applies a configuration update to the component.
- * Updates relevant input/output formats and subscribes to parameters specified in the
- * configuration.
- * \param blocking blocking mode to use with the component
- */
- status_t setParameters(
- std::shared_ptr<Codec2Client::Component> component,
- std::vector<std::unique_ptr<C2Param>> &configUpdate,
- c2_blocking_t blocking);
-
- /// Queries subscribed indices (which contains all SDK-exposed values) and updates
- /// input/output formats.
- status_t queryConfiguration(
- const std::shared_ptr<Codec2Client::Component> &component);
-
- /// Queries a configuration parameter value. Returns nullptr if the parameter is not
- /// part of the current configuration
- const C2Param *getConfigParameterValue(C2Param::Index index) const;
-
- /**
- * Object that can be used to access configuration parameters and if they change.
- */
- template<typename T>
- struct Watcher {
- ~Watcher() = default;
-
- /// returns true if the value of this configuration has changed
- bool hasChanged() const {
- const C2Param *value = mParent->getConfigParameterValue(mIndex);
- if (value && mValue) {
- return *value != *mValue;
- } else {
- return value != mValue.get();
- }
- }
-
- /// updates the current value and returns it
- std::shared_ptr<const T> update() {
- const C2Param *value = mParent->getConfigParameterValue(mIndex);
- if (value) {
- mValue = std::shared_ptr<const T>(T::From(C2Param::Copy(*value).release()));
- }
- return mValue;
- }
-
- private:
- Watcher(C2Param::Index index, const CCodecConfig *parent)
- : mParent(parent), mIndex(index) {
- update();
- }
-
- friend struct CCodecConfig;
-
- const CCodecConfig *mParent;
- std::shared_ptr<const T> mValue;
- C2Param::Index mIndex;
- };
-
- /**
- * Returns a watcher object for a parameter.
- */
- template<typename T>
- Watcher<T> watch(C2Param::Index index = T::PARAM_TYPE) const {
- if (index.type() != T::PARAM_TYPE) {
- __builtin_trap();
- }
- return Watcher<T>(index, this);
- }
-
-private:
-
- /// initializes the standard MediaCodec to Codec 2.0 params mapping
- void initializeStandardParams();
-
- /// Adds indices to the subscribed indices, and updated subscription to component
- /// \param blocking blocking mode to use with the component
- status_t subscribeToConfigUpdate(
- const std::shared_ptr<Codec2Client::Component> &component,
- const std::vector<C2Param::Index> &indices,
- c2_blocking_t blocking = C2_DONT_BLOCK);
-
- /// Gets SDK format from codec 2.0 reflected configuration
- /// \param domain input/output bitmask
- sp<AMessage> getSdkFormatForDomain(
- const ReflectedParamUpdater::Dict &reflected, Domain domain) const;
-
- /**
- * Converts a set of configuration parameters in an AMessage to a list of path-based Codec
- * 2.0 configuration parameters.
- *
- * \param domain config/setParam bitmask
- */
- ReflectedParamUpdater::Dict getReflectedFormat(
- const sp<AMessage> &config, Domain domain) const;
-};
-
-DEFINE_ENUM_OPERATORS(CCodecConfig::Domain)
-
-} // namespace android
-
-#endif // C_CODEC_H_
-
diff --git a/media/sfplugin/Codec2Buffer.cpp b/media/sfplugin/Codec2Buffer.cpp
deleted file mode 100644
index 8db9110..0000000
--- a/media/sfplugin/Codec2Buffer.cpp
+++ /dev/null
@@ -1,813 +0,0 @@
-/*
- * Copyright 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "Codec2Buffer"
-#include <utils/Log.h>
-
-#include <hidlmemory/FrameworkUtils.h>
-#include <media/hardware/HardwareAPI.h>
-#include <media/stagefright/CodecBase.h>
-#include <media/stagefright/MediaCodecConstants.h>
-#include <media/stagefright/foundation/ABuffer.h>
-#include <media/stagefright/foundation/AMessage.h>
-#include <media/stagefright/foundation/AUtils.h>
-#include <nativebase/nativebase.h>
-
-#include <C2AllocatorGralloc.h>
-#include <C2BlockInternal.h>
-#include <C2Debug.h>
-
-#include "Codec2Buffer.h"
-
-namespace android {
-
-// Codec2Buffer
-
-bool Codec2Buffer::canCopyLinear(const std::shared_ptr<C2Buffer> &buffer) const {
- if (const_cast<Codec2Buffer *>(this)->base() == nullptr) {
- return false;
- }
- if (!buffer) {
- // Nothing to copy, so we can copy by doing nothing.
- return true;
- }
- if (buffer->data().type() != C2BufferData::LINEAR) {
- return false;
- }
- if (buffer->data().linearBlocks().size() == 0u) {
- // Nothing to copy, so we can copy by doing nothing.
- return true;
- } else if (buffer->data().linearBlocks().size() > 1u) {
- // We don't know how to copy more than one blocks.
- return false;
- }
- if (buffer->data().linearBlocks()[0].size() > capacity()) {
- // It won't fit.
- return false;
- }
- return true;
-}
-
-bool Codec2Buffer::copyLinear(const std::shared_ptr<C2Buffer> &buffer) {
- // We assume that all canCopyLinear() checks passed.
- if (!buffer || buffer->data().linearBlocks().size() == 0u
- || buffer->data().linearBlocks()[0].size() == 0u) {
- setRange(0, 0);
- return true;
- }
- C2ReadView view = buffer->data().linearBlocks()[0].map().get();
- if (view.error() != C2_OK) {
- ALOGD("Error while mapping: %d", view.error());
- return false;
- }
- if (view.capacity() > capacity()) {
- ALOGD("C2ConstLinearBlock lied --- it actually doesn't fit: view(%u) > this(%zu)",
- view.capacity(), capacity());
- return false;
- }
- memcpy(base(), view.data(), view.capacity());
- setRange(0, view.capacity());
- return true;
-}
-
-void Codec2Buffer::setImageData(const sp<ABuffer> &imageData) {
- meta()->setBuffer("image-data", imageData);
- format()->setBuffer("image-data", imageData);
- MediaImage2 *img = (MediaImage2*)imageData->data();
- if (img->mNumPlanes > 0 && img->mType != img->MEDIA_IMAGE_TYPE_UNKNOWN) {
- int32_t stride = img->mPlane[0].mRowInc;
- format()->setInt32(KEY_STRIDE, stride);
- if (img->mNumPlanes > 1 && stride > 0) {
- int32_t vstride = (img->mPlane[1].mOffset - img->mPlane[0].mOffset) / stride;
- format()->setInt32(KEY_SLICE_HEIGHT, vstride);
- }
- }
-}
-
-// LocalLinearBuffer
-
-bool LocalLinearBuffer::canCopy(const std::shared_ptr<C2Buffer> &buffer) const {
- return canCopyLinear(buffer);
-}
-
-bool LocalLinearBuffer::copy(const std::shared_ptr<C2Buffer> &buffer) {
- return copyLinear(buffer);
-}
-
-// DummyContainerBuffer
-
-static uint8_t sDummyByte[1] = { 0 };
-
-DummyContainerBuffer::DummyContainerBuffer(
- const sp<AMessage> &format, const std::shared_ptr<C2Buffer> &buffer)
- : Codec2Buffer(format, new ABuffer(sDummyByte, 1)),
- mBufferRef(buffer) {
- setRange(0, buffer ? 1 : 0);
-}
-
-std::shared_ptr<C2Buffer> DummyContainerBuffer::asC2Buffer() {
- return std::move(mBufferRef);
-}
-
-bool DummyContainerBuffer::canCopy(const std::shared_ptr<C2Buffer> &) const {
- return !mBufferRef;
-}
-
-bool DummyContainerBuffer::copy(const std::shared_ptr<C2Buffer> &buffer) {
- mBufferRef = buffer;
- setRange(0, mBufferRef ? 1 : 0);
- return true;
-}
-
-// LinearBlockBuffer
-
-// static
-sp<LinearBlockBuffer> LinearBlockBuffer::Allocate(
- const sp<AMessage> &format, const std::shared_ptr<C2LinearBlock> &block) {
- C2WriteView writeView(block->map().get());
- if (writeView.error() != C2_OK) {
- return nullptr;
- }
- return new LinearBlockBuffer(format, std::move(writeView), block);
-}
-
-std::shared_ptr<C2Buffer> LinearBlockBuffer::asC2Buffer() {
- return C2Buffer::CreateLinearBuffer(mBlock->share(offset(), size(), C2Fence()));
-}
-
-bool LinearBlockBuffer::canCopy(const std::shared_ptr<C2Buffer> &buffer) const {
- return canCopyLinear(buffer);
-}
-
-bool LinearBlockBuffer::copy(const std::shared_ptr<C2Buffer> &buffer) {
- return copyLinear(buffer);
-}
-
-LinearBlockBuffer::LinearBlockBuffer(
- const sp<AMessage> &format,
- C2WriteView&& writeView,
- const std::shared_ptr<C2LinearBlock> &block)
- : Codec2Buffer(format, new ABuffer(writeView.data(), writeView.size())),
- mWriteView(writeView),
- mBlock(block) {
-}
-
-// ConstLinearBlockBuffer
-
-// static
-sp<ConstLinearBlockBuffer> ConstLinearBlockBuffer::Allocate(
- const sp<AMessage> &format, const std::shared_ptr<C2Buffer> &buffer) {
- if (!buffer
- || buffer->data().type() != C2BufferData::LINEAR
- || buffer->data().linearBlocks().size() != 1u) {
- return nullptr;
- }
- C2ReadView readView(buffer->data().linearBlocks()[0].map().get());
- if (readView.error() != C2_OK) {
- return nullptr;
- }
- return new ConstLinearBlockBuffer(format, std::move(readView), buffer);
-}
-
-ConstLinearBlockBuffer::ConstLinearBlockBuffer(
- const sp<AMessage> &format,
- C2ReadView&& readView,
- const std::shared_ptr<C2Buffer> &buffer)
- : Codec2Buffer(format, new ABuffer(
- // NOTE: ABuffer only takes non-const pointer but this data is
- // supposed to be read-only.
- const_cast<uint8_t *>(readView.data()), readView.capacity())),
- mReadView(readView),
- mBufferRef(buffer) {
-}
-
-std::shared_ptr<C2Buffer> ConstLinearBlockBuffer::asC2Buffer() {
- return std::move(mBufferRef);
-}
-
-// GraphicView2MediaImageConverter
-
-namespace {
-
-class GraphicView2MediaImageConverter {
-public:
- /**
- * Creates a C2GraphicView <=> MediaImage converter
- *
- * \param view C2GraphicView object
- * \param colorFormat desired SDK color format for the MediaImage (if this is a flexible format,
- * an attempt is made to simply represent the graphic view as a flexible SDK format
- * without a memcpy)
- */
- GraphicView2MediaImageConverter(
- const C2GraphicView &view, int32_t colorFormat)
- : mInitCheck(NO_INIT),
- mView(view),
- mWidth(view.width()),
- mHeight(view.height()),
- mColorFormat(colorFormat),
- mAllocatedDepth(0),
- mBackBufferSize(0),
- mMediaImage(new ABuffer(sizeof(MediaImage2))) {
- if (view.error() != C2_OK) {
- ALOGD("Converter: view.error() = %d", view.error());
- mInitCheck = BAD_VALUE;
- return;
- }
- MediaImage2 *mediaImage = (MediaImage2 *)mMediaImage->base();
- const C2PlanarLayout &layout = view.layout();
- if (layout.numPlanes == 0) {
- ALOGD("Converter: 0 planes");
- mInitCheck = BAD_VALUE;
- return;
- }
- mAllocatedDepth = layout.planes[0].allocatedDepth;
- uint32_t bitDepth = layout.planes[0].bitDepth;
-
- // align width and height to support subsampling cleanly
- uint32_t mStride = align(mWidth, 2) * divUp(layout.planes[0].allocatedDepth, 8u);
- uint32_t mVStride = align(mHeight, 2);
-
- switch (layout.type) {
- case C2PlanarLayout::TYPE_YUV:
- mediaImage->mType = MediaImage2::MEDIA_IMAGE_TYPE_YUV;
- if (layout.numPlanes != 3) {
- ALOGD("Converter: %d planes for YUV layout", layout.numPlanes);
- mInitCheck = BAD_VALUE;
- return;
- }
- if (layout.planes[0].channel != C2PlaneInfo::CHANNEL_Y
- || layout.planes[1].channel != C2PlaneInfo::CHANNEL_CB
- || layout.planes[2].channel != C2PlaneInfo::CHANNEL_CR
- || layout.planes[0].colSampling != 1
- || layout.planes[0].rowSampling != 1
- || layout.planes[1].colSampling != 2
- || layout.planes[1].rowSampling != 2
- || layout.planes[2].colSampling != 2
- || layout.planes[2].rowSampling != 2) {
- ALOGD("Converter: not YUV420 for YUV layout");
- mInitCheck = BAD_VALUE;
- return;
- }
- switch (mColorFormat) {
- case COLOR_FormatYUV420Flexible:
- { // try to map directly. check if the planes are near one another
- const uint8_t *minPtr = mView.data()[0];
- const uint8_t *maxPtr = mView.data()[0];
- int32_t planeSize = 0;
- for (uint32_t i = 0; i < layout.numPlanes; ++i) {
- const C2PlaneInfo &plane = layout.planes[i];
- ssize_t minOffset = plane.minOffset(mWidth, mHeight);
- ssize_t maxOffset = plane.maxOffset(mWidth, mHeight);
- if (minPtr > mView.data()[i] + minOffset) {
- minPtr = mView.data()[i] + minOffset;
- }
- if (maxPtr < mView.data()[i] + maxOffset) {
- maxPtr = mView.data()[i] + maxOffset;
- }
- planeSize += std::abs(plane.rowInc) * align(mHeight, 64)
- / plane.rowSampling / plane.colSampling * divUp(mAllocatedDepth, 8u);
- }
-
- if ((maxPtr - minPtr + 1) <= planeSize) {
- // FIXME: this is risky as reading/writing data out of bound results in
- // an undefined behavior, but gralloc does assume a contiguous
- // mapping
- for (uint32_t i = 0; i < layout.numPlanes; ++i) {
- const C2PlaneInfo &plane = layout.planes[i];
- mediaImage->mPlane[i].mOffset = mView.data()[i] - minPtr;
- mediaImage->mPlane[i].mColInc = plane.colInc;
- mediaImage->mPlane[i].mRowInc = plane.rowInc;
- mediaImage->mPlane[i].mHorizSubsampling = plane.colSampling;
- mediaImage->mPlane[i].mVertSubsampling = plane.rowSampling;
- }
- mWrapped = new ABuffer(const_cast<uint8_t *>(minPtr), maxPtr - minPtr + 1);
- break;
- }
- }
- [[fallthrough]];
-
- case COLOR_FormatYUV420Planar:
- case COLOR_FormatYUV420PackedPlanar:
- mediaImage->mPlane[mediaImage->Y].mOffset = 0;
- mediaImage->mPlane[mediaImage->Y].mColInc = 1;
- mediaImage->mPlane[mediaImage->Y].mRowInc = mStride;
- mediaImage->mPlane[mediaImage->Y].mHorizSubsampling = 1;
- mediaImage->mPlane[mediaImage->Y].mVertSubsampling = 1;
-
- mediaImage->mPlane[mediaImage->U].mOffset = mStride * mVStride;
- mediaImage->mPlane[mediaImage->U].mColInc = 1;
- mediaImage->mPlane[mediaImage->U].mRowInc = mStride / 2;
- mediaImage->mPlane[mediaImage->U].mHorizSubsampling = 2;
- mediaImage->mPlane[mediaImage->U].mVertSubsampling = 2;
-
- mediaImage->mPlane[mediaImage->V].mOffset = mStride * mVStride * 5 / 4;
- mediaImage->mPlane[mediaImage->V].mColInc = 1;
- mediaImage->mPlane[mediaImage->V].mRowInc = mStride / 2;
- mediaImage->mPlane[mediaImage->V].mHorizSubsampling = 2;
- mediaImage->mPlane[mediaImage->V].mVertSubsampling = 2;
- break;
-
- case COLOR_FormatYUV420SemiPlanar:
- case COLOR_FormatYUV420PackedSemiPlanar:
- mediaImage->mPlane[mediaImage->Y].mOffset = 0;
- mediaImage->mPlane[mediaImage->Y].mColInc = 1;
- mediaImage->mPlane[mediaImage->Y].mRowInc = mStride;
- mediaImage->mPlane[mediaImage->Y].mHorizSubsampling = 1;
- mediaImage->mPlane[mediaImage->Y].mVertSubsampling = 1;
-
- mediaImage->mPlane[mediaImage->U].mOffset = mStride * mVStride;
- mediaImage->mPlane[mediaImage->U].mColInc = 2;
- mediaImage->mPlane[mediaImage->U].mRowInc = mStride;
- mediaImage->mPlane[mediaImage->U].mHorizSubsampling = 2;
- mediaImage->mPlane[mediaImage->U].mVertSubsampling = 2;
-
- mediaImage->mPlane[mediaImage->V].mOffset = mStride * mVStride + 1;
- mediaImage->mPlane[mediaImage->V].mColInc = 2;
- mediaImage->mPlane[mediaImage->V].mRowInc = mStride;
- mediaImage->mPlane[mediaImage->V].mHorizSubsampling = 2;
- mediaImage->mPlane[mediaImage->V].mVertSubsampling = 2;
- break;
-
- default:
- ALOGD("Converter: incompactible color format (%d) for YUV layout", mColorFormat);
- mInitCheck = BAD_VALUE;
- return;
- }
- break;
- case C2PlanarLayout::TYPE_YUVA:
- mediaImage->mType = MediaImage2::MEDIA_IMAGE_TYPE_YUVA;
- // We don't have an SDK YUVA format
- ALOGD("Converter: incompactible color format (%d) for YUVA layout", mColorFormat);
- mInitCheck = BAD_VALUE;
- return;
- case C2PlanarLayout::TYPE_RGB:
- mediaImage->mType = MediaImage2::MEDIA_IMAGE_TYPE_RGB;
- switch (mColorFormat) {
- // TODO media image
- case COLOR_FormatRGBFlexible:
- case COLOR_Format24bitBGR888:
- case COLOR_Format24bitRGB888:
- break;
- default:
- ALOGD("Converter: incompactible color format (%d) for RGB layout", mColorFormat);
- mInitCheck = BAD_VALUE;
- return;
- }
- if (layout.numPlanes != 3) {
- ALOGD("Converter: %d planes for RGB layout", layout.numPlanes);
- mInitCheck = BAD_VALUE;
- return;
- }
- break;
- case C2PlanarLayout::TYPE_RGBA:
- mediaImage->mType = MediaImage2::MEDIA_IMAGE_TYPE_RGBA;
- switch (mColorFormat) {
- // TODO media image
- case COLOR_FormatRGBAFlexible:
- case COLOR_Format32bitABGR8888:
- case COLOR_Format32bitARGB8888:
- case COLOR_Format32bitBGRA8888:
- break;
- default:
- ALOGD("Incompactible color format (%d) for RGBA layout", mColorFormat);
- mInitCheck = BAD_VALUE;
- return;
- }
- if (layout.numPlanes != 4) {
- ALOGD("Converter: %d planes for RGBA layout", layout.numPlanes);
- mInitCheck = BAD_VALUE;
- return;
- }
- break;
- default:
- mediaImage->mType = MediaImage2::MEDIA_IMAGE_TYPE_UNKNOWN;
- ALOGD("Unknown layout");
- mInitCheck = BAD_VALUE;
- return;
- }
- mediaImage->mNumPlanes = layout.numPlanes;
- mediaImage->mWidth = mWidth;
- mediaImage->mHeight = mHeight;
- mediaImage->mBitDepth = bitDepth;
- mediaImage->mBitDepthAllocated = mAllocatedDepth;
-
- uint32_t bufferSize = 0;
- for (uint32_t i = 0; i < layout.numPlanes; ++i) {
- const C2PlaneInfo &plane = layout.planes[i];
- if (plane.allocatedDepth < plane.bitDepth
- || plane.rightShift != plane.allocatedDepth - plane.bitDepth) {
- ALOGD("rightShift value of %u unsupported", plane.rightShift);
- mInitCheck = BAD_VALUE;
- return;
- }
- if (plane.allocatedDepth > 8 && plane.endianness != C2PlaneInfo::NATIVE) {
- ALOGD("endianness value of %u unsupported", plane.endianness);
- mInitCheck = BAD_VALUE;
- return;
- }
- if (plane.allocatedDepth != mAllocatedDepth || plane.bitDepth != bitDepth) {
- ALOGV("different allocatedDepth/bitDepth per plane unsupported");
- mInitCheck = BAD_VALUE;
- return;
- }
- bufferSize += mStride * mVStride
- / plane.rowSampling / plane.colSampling;
- }
-
- mBackBufferSize = bufferSize;
- mInitCheck = OK;
- }
-
- status_t initCheck() const { return mInitCheck; }
-
- uint32_t backBufferSize() const { return mBackBufferSize; }
-
- /**
- * Wrap C2GraphicView using a MediaImage2. Note that if not wrapped, the content is not mapped
- * in this function --- the caller should use CopyGraphicView2MediaImage() function to copy the
- * data into a backing buffer explicitly.
- *
- * \return media buffer. This is null if wrapping failed.
- */
- sp<ABuffer> wrap() const {
- if (mBackBuffer == nullptr) {
- return mWrapped;
- }
- return nullptr;
- }
-
- bool setBackBuffer(const sp<ABuffer> &backBuffer) {
- if (backBuffer->capacity() < mBackBufferSize) {
- return false;
- }
- backBuffer->setRange(0, mBackBufferSize);
- mBackBuffer = backBuffer;
- return true;
- }
-
- /**
- * Copy C2GraphicView to MediaImage2.
- */
- status_t copyToMediaImage() {
- if (mInitCheck != OK) {
- return mInitCheck;
- }
- return ImageCopy(mBackBuffer->base(), getMediaImage(), mView);
- }
-
- const sp<ABuffer> &imageData() const { return mMediaImage; }
-
-private:
- status_t mInitCheck;
-
- const C2GraphicView mView;
- uint32_t mWidth;
- uint32_t mHeight;
- int32_t mColorFormat; ///< SDK color format for MediaImage
- sp<ABuffer> mWrapped; ///< wrapped buffer (if we can map C2Buffer to an ABuffer)
- uint32_t mAllocatedDepth;
- uint32_t mBackBufferSize;
- sp<ABuffer> mMediaImage;
- std::function<sp<ABuffer>(size_t)> mAlloc;
-
- sp<ABuffer> mBackBuffer; ///< backing buffer if we have to copy C2Buffer <=> ABuffer
-
- MediaImage2 *getMediaImage() {
- return (MediaImage2 *)mMediaImage->base();
- }
-};
-
-} // namespace
-
-// GraphicBlockBuffer
-
-// static
-sp<GraphicBlockBuffer> GraphicBlockBuffer::Allocate(
- const sp<AMessage> &format,
- const std::shared_ptr<C2GraphicBlock> &block,
- std::function<sp<ABuffer>(size_t)> alloc) {
- C2GraphicView view(block->map().get());
- if (view.error() != C2_OK) {
- ALOGD("C2GraphicBlock::map failed: %d", view.error());
- return nullptr;
- }
-
- int32_t colorFormat = COLOR_FormatYUV420Flexible;
- (void)format->findInt32("color-format", &colorFormat);
-
- GraphicView2MediaImageConverter converter(view, colorFormat);
- if (converter.initCheck() != OK) {
- ALOGD("Converter init failed: %d", converter.initCheck());
- return nullptr;
- }
- bool wrapped = true;
- sp<ABuffer> buffer = converter.wrap();
- if (buffer == nullptr) {
- buffer = alloc(converter.backBufferSize());
- if (!converter.setBackBuffer(buffer)) {
- ALOGD("Converter failed to set back buffer");
- return nullptr;
- }
- wrapped = false;
- }
- return new GraphicBlockBuffer(
- format,
- buffer,
- std::move(view),
- block,
- converter.imageData(),
- wrapped);
-}
-
-GraphicBlockBuffer::GraphicBlockBuffer(
- const sp<AMessage> &format,
- const sp<ABuffer> &buffer,
- C2GraphicView &&view,
- const std::shared_ptr<C2GraphicBlock> &block,
- const sp<ABuffer> &imageData,
- bool wrapped)
- : Codec2Buffer(format, buffer),
- mView(view),
- mBlock(block),
- mImageData(imageData),
- mWrapped(wrapped) {
- setImageData(imageData);
-}
-
-std::shared_ptr<C2Buffer> GraphicBlockBuffer::asC2Buffer() {
- uint32_t width = mView.width();
- uint32_t height = mView.height();
- if (!mWrapped) {
- (void)ImageCopy(mView, base(), imageData());
- }
- return C2Buffer::CreateGraphicBuffer(
- mBlock->share(C2Rect(width, height), C2Fence()));
-}
-
-// GraphicMetadataBuffer
-GraphicMetadataBuffer::GraphicMetadataBuffer(
- const sp<AMessage> &format,
- const std::shared_ptr<C2Allocator> &alloc)
- : Codec2Buffer(format, new ABuffer(sizeof(VideoNativeMetadata))),
- mAlloc(alloc) {
- ((VideoNativeMetadata *)base())->pBuffer = nullptr;
-}
-
-std::shared_ptr<C2Buffer> GraphicMetadataBuffer::asC2Buffer() {
-#ifndef __LP64__
- VideoNativeMetadata *meta = (VideoNativeMetadata *)base();
- ANativeWindowBuffer *buffer = (ANativeWindowBuffer *)meta->pBuffer;
- if (buffer == nullptr) {
- ALOGD("VideoNativeMetadata contains null buffer");
- return nullptr;
- }
-
- ALOGV("VideoNativeMetadata: %dx%d", buffer->width, buffer->height);
- C2Handle *handle = WrapNativeCodec2GrallocHandle(
- buffer->handle,
- buffer->width,
- buffer->height,
- buffer->format,
- buffer->usage,
- buffer->stride);
- std::shared_ptr<C2GraphicAllocation> alloc;
- c2_status_t err = mAlloc->priorGraphicAllocation(handle, &alloc);
- if (err != C2_OK) {
- ALOGD("Failed to wrap VideoNativeMetadata into C2GraphicAllocation");
- return nullptr;
- }
- std::shared_ptr<C2GraphicBlock> block = _C2BlockFactory::CreateGraphicBlock(alloc);
-
- meta->pBuffer = 0;
- // TODO: fence
- return C2Buffer::CreateGraphicBuffer(
- block->share(C2Rect(buffer->width, buffer->height), C2Fence()));
-#else
- ALOGE("GraphicMetadataBuffer does not work on 64-bit arch");
- return nullptr;
-#endif
-}
-
-// ConstGraphicBlockBuffer
-
-// static
-sp<ConstGraphicBlockBuffer> ConstGraphicBlockBuffer::Allocate(
- const sp<AMessage> &format,
- const std::shared_ptr<C2Buffer> &buffer,
- std::function<sp<ABuffer>(size_t)> alloc) {
- if (!buffer
- || buffer->data().type() != C2BufferData::GRAPHIC
- || buffer->data().graphicBlocks().size() != 1u) {
- ALOGD("C2Buffer precond fail");
- return nullptr;
- }
- std::unique_ptr<const C2GraphicView> view(std::make_unique<const C2GraphicView>(
- buffer->data().graphicBlocks()[0].map().get()));
- std::unique_ptr<const C2GraphicView> holder;
-
- int32_t colorFormat = COLOR_FormatYUV420Flexible;
- (void)format->findInt32("color-format", &colorFormat);
-
- GraphicView2MediaImageConverter converter(*view, colorFormat);
- if (converter.initCheck() != OK) {
- ALOGD("Converter init failed: %d", converter.initCheck());
- return nullptr;
- }
- bool wrapped = true;
- sp<ABuffer> aBuffer = converter.wrap();
- if (aBuffer == nullptr) {
- aBuffer = alloc(converter.backBufferSize());
- if (!converter.setBackBuffer(aBuffer)) {
- ALOGD("Converter failed to set back buffer");
- return nullptr;
- }
- wrapped = false;
- converter.copyToMediaImage();
- // We don't need the view.
- holder = std::move(view);
- }
- return new ConstGraphicBlockBuffer(
- format,
- aBuffer,
- std::move(view),
- buffer,
- converter.imageData(),
- wrapped);
-}
-
-// static
-sp<ConstGraphicBlockBuffer> ConstGraphicBlockBuffer::AllocateEmpty(
- const sp<AMessage> &format,
- std::function<sp<ABuffer>(size_t)> alloc) {
- int32_t width, height;
- if (!format->findInt32("width", &width)
- || !format->findInt32("height", &height)) {
- ALOGD("format had no width / height");
- return nullptr;
- }
- sp<ABuffer> aBuffer(alloc(width * height * 4));
- return new ConstGraphicBlockBuffer(
- format,
- aBuffer,
- nullptr,
- nullptr,
- nullptr,
- false);
-}
-
-ConstGraphicBlockBuffer::ConstGraphicBlockBuffer(
- const sp<AMessage> &format,
- const sp<ABuffer> &aBuffer,
- std::unique_ptr<const C2GraphicView> &&view,
- const std::shared_ptr<C2Buffer> &buffer,
- const sp<ABuffer> &imageData,
- bool wrapped)
- : Codec2Buffer(format, aBuffer),
- mView(std::move(view)),
- mBufferRef(buffer),
- mWrapped(wrapped) {
- if (imageData != nullptr) {
- setImageData(imageData);
- }
-}
-
-std::shared_ptr<C2Buffer> ConstGraphicBlockBuffer::asC2Buffer() {
- mView.reset();
- return std::move(mBufferRef);
-}
-
-bool ConstGraphicBlockBuffer::canCopy(const std::shared_ptr<C2Buffer> &buffer) const {
- if (mWrapped || mBufferRef) {
- ALOGD("ConstGraphicBlockBuffer::canCopy: %swrapped ; buffer ref %s",
- mWrapped ? "" : "not ", mBufferRef ? "exists" : "doesn't exist");
- return false;
- }
- if (!buffer) {
- // Nothing to copy, so we can copy by doing nothing.
- return true;
- }
- if (buffer->data().type() != C2BufferData::GRAPHIC) {
- ALOGD("ConstGraphicBlockBuffer::canCopy: buffer precondition unsatisfied");
- return false;
- }
- if (buffer->data().graphicBlocks().size() == 0) {
- return true;
- } else if (buffer->data().graphicBlocks().size() != 1u) {
- ALOGD("ConstGraphicBlockBuffer::canCopy: too many blocks");
- return false;
- }
-
- int32_t colorFormat = COLOR_FormatYUV420Flexible;
- // FIXME: format() is not const, but we cannot change it, so do a const cast here
- const_cast<ConstGraphicBlockBuffer *>(this)->format()->findInt32("color-format", &colorFormat);
-
- GraphicView2MediaImageConverter converter(
- buffer->data().graphicBlocks()[0].map().get(), colorFormat);
- if (converter.initCheck() != OK) {
- ALOGD("ConstGraphicBlockBuffer::canCopy: converter init failed: %d", converter.initCheck());
- return false;
- }
- if (converter.backBufferSize() > capacity()) {
- ALOGD("ConstGraphicBlockBuffer::canCopy: insufficient capacity: req %u has %zu",
- converter.backBufferSize(), capacity());
- return false;
- }
- return true;
-}
-
-bool ConstGraphicBlockBuffer::copy(const std::shared_ptr<C2Buffer> &buffer) {
- if (!buffer || buffer->data().graphicBlocks().size() == 0) {
- setRange(0, 0);
- return true;
- }
- int32_t colorFormat = COLOR_FormatYUV420Flexible;
- format()->findInt32("color-format", &colorFormat);
-
- GraphicView2MediaImageConverter converter(
- buffer->data().graphicBlocks()[0].map().get(), colorFormat);
- if (converter.initCheck() != OK) {
- ALOGD("ConstGraphicBlockBuffer::copy: converter init failed: %d", converter.initCheck());
- return false;
- }
- sp<ABuffer> aBuffer = new ABuffer(base(), capacity());
- if (!converter.setBackBuffer(aBuffer)) {
- ALOGD("ConstGraphicBlockBuffer::copy: set back buffer failed");
- return false;
- }
- setRange(0, aBuffer->size()); // align size info
- converter.copyToMediaImage();
- setImageData(converter.imageData());
- mBufferRef = buffer;
- return true;
-}
-
-// EncryptedLinearBlockBuffer
-
-EncryptedLinearBlockBuffer::EncryptedLinearBlockBuffer(
- const sp<AMessage> &format,
- const std::shared_ptr<C2LinearBlock> &block,
- const sp<IMemory> &memory,
- int32_t heapSeqNum)
- : Codec2Buffer(format, new ABuffer(memory->unsecurePointer(), memory->size())),
- mBlock(block),
- mMemory(memory),
- mHeapSeqNum(heapSeqNum) {
-}
-
-std::shared_ptr<C2Buffer> EncryptedLinearBlockBuffer::asC2Buffer() {
- return C2Buffer::CreateLinearBuffer(mBlock->share(offset(), size(), C2Fence()));
-}
-
-void EncryptedLinearBlockBuffer::fillSourceBuffer(
- hardware::drm::V1_0::SharedBuffer *source) {
- BufferChannelBase::IMemoryToSharedBuffer(mMemory, mHeapSeqNum, source);
-}
-
-void EncryptedLinearBlockBuffer::fillSourceBuffer(
- hardware::cas::native::V1_0::SharedBuffer *source) {
- ssize_t offset;
- size_t size;
-
- mHidlMemory = hardware::fromHeap(mMemory->getMemory(&offset, &size));
- source->heapBase = *mHidlMemory;
- source->offset = offset;
- source->size = size;
-}
-
-bool EncryptedLinearBlockBuffer::copyDecryptedContent(
- const sp<IMemory> &decrypted, size_t length) {
- C2WriteView view = mBlock->map().get();
- if (view.error() != C2_OK) {
- return false;
- }
- if (view.size() < length) {
- return false;
- }
- memcpy(view.data(), decrypted->unsecurePointer(), length);
- return true;
-}
-
-bool EncryptedLinearBlockBuffer::copyDecryptedContentFromMemory(size_t length) {
- return copyDecryptedContent(mMemory, length);
-}
-
-native_handle_t *EncryptedLinearBlockBuffer::handle() const {
- return const_cast<native_handle_t *>(mBlock->handle());
-}
-
-} // namespace android
diff --git a/media/sfplugin/Codec2Buffer.h b/media/sfplugin/Codec2Buffer.h
deleted file mode 100644
index 1cf3de1..0000000
--- a/media/sfplugin/Codec2Buffer.h
+++ /dev/null
@@ -1,405 +0,0 @@
-/*
- * Copyright 2017, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef CODEC2_BUFFER_H_
-
-#define CODEC2_BUFFER_H_
-
-#include <C2Buffer.h>
-
-#include <android/hardware/cas/native/1.0/types.h>
-#include <android/hardware/drm/1.0/types.h>
-#include <binder/IMemory.h>
-#include <media/hardware/VideoAPI.h>
-#include <media/MediaCodecBuffer.h>
-#include <mediadrm/ICrypto.h>
-
-namespace android {
-
-/**
- * Copies a graphic view into a media image.
- *
- * \param imgBase base of MediaImage
- * \param img MediaImage data
- * \param view graphic view
- *
- * \return OK on success
- */
-status_t ImageCopy(uint8_t *imgBase, const MediaImage2 *img, const C2GraphicView &view);
-
-/**
- * Copies a media image into a graphic view.
- *
- * \param view graphic view
- * \param imgBase base of MediaImage
- * \param img MediaImage data
- *
- * \return OK on success
- */
-status_t ImageCopy(C2GraphicView &view, const uint8_t *imgBase, const MediaImage2 *img);
-
-class Codec2Buffer : public MediaCodecBuffer {
-public:
- using MediaCodecBuffer::MediaCodecBuffer;
- ~Codec2Buffer() override = default;
-
- /**
- * \return C2Buffer object represents this buffer.
- */
- virtual std::shared_ptr<C2Buffer> asC2Buffer() = 0;
-
- /**
- * Test if we can copy the content of |buffer| into this object.
- *
- * \param buffer C2Buffer object to copy.
- * \return true if the content of buffer can be copied over to this buffer
- * false otherwise.
- */
- virtual bool canCopy(const std::shared_ptr<C2Buffer> &buffer) const {
- (void)buffer;
- return false;
- }
-
- /**
- * Copy the content of |buffer| into this object. This method assumes that
- * canCopy() check already passed.
- *
- * \param buffer C2Buffer object to copy.
- * \return true if successful
- * false otherwise.
- */
- virtual bool copy(const std::shared_ptr<C2Buffer> &buffer) {
- (void)buffer;
- return false;
- }
-
-protected:
- /**
- * canCopy() implementation for linear buffers.
- */
- bool canCopyLinear(const std::shared_ptr<C2Buffer> &buffer) const;
-
- /**
- * copy() implementation for linear buffers.
- */
- bool copyLinear(const std::shared_ptr<C2Buffer> &buffer);
-
- /**
- * sets MediaImage data for flexible graphic buffers
- */
- void setImageData(const sp<ABuffer> &imageData);
-};
-
-/**
- * MediaCodecBuffer implementation on top of local linear buffer. This cannot
- * cross process boundary so asC2Buffer() returns only nullptr.
- */
-class LocalLinearBuffer : public Codec2Buffer {
-public:
- using Codec2Buffer::Codec2Buffer;
-
- std::shared_ptr<C2Buffer> asC2Buffer() override { return nullptr; }
- bool canCopy(const std::shared_ptr<C2Buffer> &buffer) const override;
- bool copy(const std::shared_ptr<C2Buffer> &buffer) override;
-};
-
-/**
- * MediaCodecBuffer implementation to be used only as a dummy wrapper around a
- * C2Buffer object.
- */
-class DummyContainerBuffer : public Codec2Buffer {
-public:
- DummyContainerBuffer(
- const sp<AMessage> &format,
- const std::shared_ptr<C2Buffer> &buffer = nullptr);
-
- std::shared_ptr<C2Buffer> asC2Buffer() override;
- bool canCopy(const std::shared_ptr<C2Buffer> &buffer) const override;
- bool copy(const std::shared_ptr<C2Buffer> &buffer) override;
-
-private:
- std::shared_ptr<C2Buffer> mBufferRef;
-};
-
-/**
- * MediaCodecBuffer implementation wraps around C2LinearBlock.
- */
-class LinearBlockBuffer : public Codec2Buffer {
-public:
- /**
- * Allocate a new LinearBufferBlock wrapping around C2LinearBlock object.
- *
- * \param format mandatory buffer format for MediaCodecBuffer
- * \param block C2LinearBlock object to wrap around.
- * \return LinearBlockBuffer object with writable mapping.
- * nullptr if unsuccessful.
- */
- static sp<LinearBlockBuffer> Allocate(
- const sp<AMessage> &format, const std::shared_ptr<C2LinearBlock> &block);
-
- virtual ~LinearBlockBuffer() = default;
-
- std::shared_ptr<C2Buffer> asC2Buffer() override;
- bool canCopy(const std::shared_ptr<C2Buffer> &buffer) const override;
- bool copy(const std::shared_ptr<C2Buffer> &buffer) override;
-
-private:
- LinearBlockBuffer(
- const sp<AMessage> &format,
- C2WriteView &&writeView,
- const std::shared_ptr<C2LinearBlock> &block);
- LinearBlockBuffer() = delete;
-
- C2WriteView mWriteView;
- std::shared_ptr<C2LinearBlock> mBlock;
-};
-
-/**
- * MediaCodecBuffer implementation wraps around C2ConstLinearBlock.
- */
-class ConstLinearBlockBuffer : public Codec2Buffer {
-public:
- /**
- * Allocate a new ConstLinearBlockBuffer wrapping around C2Buffer object.
- *
- * \param format mandatory buffer format for MediaCodecBuffer
- * \param buffer linear C2Buffer object to wrap around.
- * \return ConstLinearBlockBuffer object with readable mapping.
- * nullptr if unsuccessful.
- */
- static sp<ConstLinearBlockBuffer> Allocate(
- const sp<AMessage> &format, const std::shared_ptr<C2Buffer> &buffer);
-
- virtual ~ConstLinearBlockBuffer() = default;
-
- std::shared_ptr<C2Buffer> asC2Buffer() override;
-
-private:
- ConstLinearBlockBuffer(
- const sp<AMessage> &format,
- C2ReadView &&readView,
- const std::shared_ptr<C2Buffer> &buffer);
- ConstLinearBlockBuffer() = delete;
-
- C2ReadView mReadView;
- std::shared_ptr<C2Buffer> mBufferRef;
-};
-
-/**
- * MediaCodecBuffer implementation wraps around C2GraphicBlock.
- *
- * This object exposes the underlying bits via accessor APIs and "image-data"
- * metadata, created automatically at allocation time.
- */
-class GraphicBlockBuffer : public Codec2Buffer {
-public:
- /**
- * Allocate a new GraphicBlockBuffer wrapping around C2GraphicBlock object.
- * If |block| is not in good color formats, it allocates YV12 local buffer
- * and copies the content over at asC2Buffer().
- *
- * \param format mandatory buffer format for MediaCodecBuffer
- * \param block C2GraphicBlock object to wrap around.
- * \param alloc a function to allocate backing ABuffer if needed.
- * \return GraphicBlockBuffer object with writable mapping.
- * nullptr if unsuccessful.
- */
- static sp<GraphicBlockBuffer> Allocate(
- const sp<AMessage> &format,
- const std::shared_ptr<C2GraphicBlock> &block,
- std::function<sp<ABuffer>(size_t)> alloc);
-
- std::shared_ptr<C2Buffer> asC2Buffer() override;
-
- virtual ~GraphicBlockBuffer() = default;
-
-private:
- GraphicBlockBuffer(
- const sp<AMessage> &format,
- const sp<ABuffer> &buffer,
- C2GraphicView &&view,
- const std::shared_ptr<C2GraphicBlock> &block,
- const sp<ABuffer> &imageData,
- bool wrapped);
- GraphicBlockBuffer() = delete;
-
- inline MediaImage2 *imageData() { return (MediaImage2 *)mImageData->data(); }
-
- C2GraphicView mView;
- std::shared_ptr<C2GraphicBlock> mBlock;
- sp<ABuffer> mImageData;
- const bool mWrapped;
-};
-
-/**
- * MediaCodecBuffer implementation wraps around VideoNativeMetadata.
- */
-class GraphicMetadataBuffer : public Codec2Buffer {
-public:
- /**
- * Construct a new GraphicMetadataBuffer with local linear buffer for
- * VideoNativeMetadata.
- *
- * \param format mandatory buffer format for MediaCodecBuffer
- */
- GraphicMetadataBuffer(
- const sp<AMessage> &format, const std::shared_ptr<C2Allocator> &alloc);
-
- std::shared_ptr<C2Buffer> asC2Buffer() override;
-
- virtual ~GraphicMetadataBuffer() = default;
-
-private:
- GraphicMetadataBuffer() = delete;
-
- std::shared_ptr<C2Allocator> mAlloc;
-};
-
-/**
- * MediaCodecBuffer implementation wraps around graphic C2Buffer object.
- *
- * This object exposes the underlying bits via accessor APIs and "image-data"
- * metadata, created automatically at allocation time.
- */
-class ConstGraphicBlockBuffer : public Codec2Buffer {
-public:
- /**
- * Allocate a new ConstGraphicBlockBuffer wrapping around C2Buffer object.
- * If |buffer| is not in good color formats, it allocates YV12 local buffer
- * and copies the content of |buffer| over to expose.
- *
- * \param format mandatory buffer format for MediaCodecBuffer
- * \param buffer graphic C2Buffer object to wrap around.
- * \param alloc a function to allocate backing ABuffer if needed.
- * \return ConstGraphicBlockBuffer object with readable mapping.
- * nullptr if unsuccessful.
- */
- static sp<ConstGraphicBlockBuffer> Allocate(
- const sp<AMessage> &format,
- const std::shared_ptr<C2Buffer> &buffer,
- std::function<sp<ABuffer>(size_t)> alloc);
-
- /**
- * Allocate a new ConstGraphicBlockBuffer which allocates YV12 local buffer
- * and copies the content of |buffer| over to expose.
- *
- * \param format mandatory buffer format for MediaCodecBuffer
- * \param alloc a function to allocate backing ABuffer if needed.
- * \return ConstGraphicBlockBuffer object with no wrapping buffer.
- */
- static sp<ConstGraphicBlockBuffer> AllocateEmpty(
- const sp<AMessage> &format,
- std::function<sp<ABuffer>(size_t)> alloc);
-
- std::shared_ptr<C2Buffer> asC2Buffer() override;
- bool canCopy(const std::shared_ptr<C2Buffer> &buffer) const override;
- bool copy(const std::shared_ptr<C2Buffer> &buffer) override;
-
- virtual ~ConstGraphicBlockBuffer() = default;
-
-private:
- ConstGraphicBlockBuffer(
- const sp<AMessage> &format,
- const sp<ABuffer> &aBuffer,
- std::unique_ptr<const C2GraphicView> &&view,
- const std::shared_ptr<C2Buffer> &buffer,
- const sp<ABuffer> &imageData,
- bool wrapped);
- ConstGraphicBlockBuffer() = delete;
-
- sp<ABuffer> mImageData;
- std::unique_ptr<const C2GraphicView> mView;
- std::shared_ptr<C2Buffer> mBufferRef;
- const bool mWrapped;
-};
-
-/**
- * MediaCodecBuffer implementation wraps around C2LinearBlock for component
- * and IMemory for client. Underlying C2LinearBlock won't be mapped for secure
- * usecases..
- */
-class EncryptedLinearBlockBuffer : public Codec2Buffer {
-public:
- /**
- * Construct a new EncryptedLinearBufferBlock wrapping around C2LinearBlock
- * object and writable IMemory region.
- *
- * \param format mandatory buffer format for MediaCodecBuffer
- * \param block C2LinearBlock object to wrap around.
- * \param memory IMemory object to store encrypted content.
- * \param heapSeqNum Heap sequence number from ICrypto; -1 if N/A
- */
- EncryptedLinearBlockBuffer(
- const sp<AMessage> &format,
- const std::shared_ptr<C2LinearBlock> &block,
- const sp<IMemory> &memory,
- int32_t heapSeqNum = -1);
- EncryptedLinearBlockBuffer() = delete;
-
- virtual ~EncryptedLinearBlockBuffer() = default;
-
- std::shared_ptr<C2Buffer> asC2Buffer() override;
-
- /**
- * Fill the source buffer structure with appropriate value based on
- * internal IMemory object.
- *
- * \param source source buffer structure to fill.
- */
- void fillSourceBuffer(
- hardware::drm::V1_0::SharedBuffer *source);
- void fillSourceBuffer(
- hardware::cas::native::V1_0::SharedBuffer *source);
-
- /**
- * Copy the content of |decrypted| into C2LinearBlock inside. This shall
- * only be called in non-secure usecases.
- *
- * \param decrypted decrypted content to copy from.
- * \param length length of the content
- * \return true if successful
- * false otherwise.
- */
- bool copyDecryptedContent(const sp<IMemory> &decrypted, size_t length);
-
- /**
- * Copy the content of internal IMemory object into C2LinearBlock inside.
- * This shall only be called in non-secure usecases.
- *
- * \param length length of the content
- * \return true if successful
- * false otherwise.
- */
- bool copyDecryptedContentFromMemory(size_t length);
-
- /**
- * Return native handle of secure buffer understood by ICrypto.
- *
- * \return secure buffer handle
- */
- native_handle_t *handle() const;
-
-private:
-
- std::shared_ptr<C2LinearBlock> mBlock;
- sp<IMemory> mMemory;
- sp<hardware::HidlMemory> mHidlMemory;
- int32_t mHeapSeqNum;
-};
-
-} // namespace android
-
-#endif // CODEC2_BUFFER_H_
diff --git a/media/sfplugin/Codec2InfoBuilder.cpp b/media/sfplugin/Codec2InfoBuilder.cpp
deleted file mode 100644
index 4a6d672..0000000
--- a/media/sfplugin/Codec2InfoBuilder.cpp
+++ /dev/null
@@ -1,653 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "Codec2InfoBuilder"
-#include <log/log.h>
-
-#include <strings.h>
-
-#include <C2Component.h>
-#include <C2Config.h>
-#include <C2Debug.h>
-#include <C2PlatformSupport.h>
-#include <Codec2Mapper.h>
-
-#include <OMX_Audio.h>
-#include <OMX_AudioExt.h>
-#include <OMX_IndexExt.h>
-#include <OMX_Types.h>
-#include <OMX_Video.h>
-#include <OMX_VideoExt.h>
-#include <OMX_AsString.h>
-
-#include <android/hardware/media/omx/1.0/IOmx.h>
-#include <android/hardware/media/omx/1.0/IOmxObserver.h>
-#include <android/hardware/media/omx/1.0/IOmxNode.h>
-#include <android/hardware/media/omx/1.0/types.h>
-
-#include <android-base/properties.h>
-#include <codec2/hidl/client.h>
-#include <cutils/native_handle.h>
-#include <media/omx/1.0/WOmxNode.h>
-#include <media/stagefright/MediaCodecConstants.h>
-#include <media/stagefright/foundation/ALookup.h>
-#include <media/stagefright/foundation/MediaDefs.h>
-#include <media/stagefright/omx/OMXUtils.h>
-#include <media/stagefright/xmlparser/MediaCodecsXmlParser.h>
-
-#include "Codec2InfoBuilder.h"
-
-namespace android {
-
-using Traits = C2Component::Traits;
-
-namespace /* unnamed */ {
-
-bool hasPrefix(const std::string& s, const char* prefix) {
- size_t prefixLen = strlen(prefix);
- return s.compare(0, prefixLen, prefix) == 0;
-}
-
-bool hasSuffix(const std::string& s, const char* suffix) {
- size_t suffixLen = strlen(suffix);
- return suffixLen > s.size() ? false :
- s.compare(s.size() - suffixLen, suffixLen, suffix) == 0;
-}
-
-// Constants from ACodec
-constexpr OMX_U32 kPortIndexInput = 0;
-constexpr OMX_U32 kPortIndexOutput = 1;
-constexpr OMX_U32 kMaxIndicesToCheck = 32;
-
-status_t queryOmxCapabilities(
- const char* name, const char* mediaType, bool isEncoder,
- MediaCodecInfo::CapabilitiesWriter* caps) {
-
- const char *role = GetComponentRole(isEncoder, mediaType);
- if (role == nullptr) {
- return BAD_VALUE;
- }
-
- using namespace ::android::hardware::media::omx::V1_0;
- using ::android::hardware::Return;
- using ::android::hardware::Void;
- using ::android::hardware::hidl_vec;
- using ::android::hardware::media::omx::V1_0::utils::LWOmxNode;
-
- sp<IOmx> omx = IOmx::getService();
- if (!omx) {
- ALOGW("Could not obtain IOmx service.");
- return NO_INIT;
- }
-
- struct Observer : IOmxObserver {
- virtual Return<void> onMessages(const hidl_vec<Message>&) override {
- return Void();
- }
- };
-
- sp<Observer> observer = new Observer();
- Status status;
- sp<IOmxNode> tOmxNode;
- Return<void> transStatus = omx->allocateNode(
- name, observer,
- [&status, &tOmxNode](Status s, const sp<IOmxNode>& n) {
- status = s;
- tOmxNode = n;
- });
- if (!transStatus.isOk()) {
- ALOGW("IOmx::allocateNode -- transaction failed.");
- return NO_INIT;
- }
- if (status != Status::OK) {
- ALOGW("IOmx::allocateNode -- error returned: %d.",
- static_cast<int>(status));
- return NO_INIT;
- }
-
- sp<LWOmxNode> omxNode = new LWOmxNode(tOmxNode);
-
- status_t err = SetComponentRole(omxNode, role);
- if (err != OK) {
- omxNode->freeNode();
- ALOGW("Failed to SetComponentRole: component = %s, role = %s.",
- name, role);
- return err;
- }
-
- bool isVideo = hasPrefix(mediaType, "video/") == 0;
- bool isImage = hasPrefix(mediaType, "image/") == 0;
-
- if (isVideo || isImage) {
- OMX_VIDEO_PARAM_PROFILELEVELTYPE param;
- InitOMXParams(¶m);
- param.nPortIndex = isEncoder ? kPortIndexOutput : kPortIndexInput;
-
- for (OMX_U32 index = 0; index <= kMaxIndicesToCheck; ++index) {
- param.nProfileIndex = index;
- status_t err = omxNode->getParameter(
- OMX_IndexParamVideoProfileLevelQuerySupported,
- ¶m, sizeof(param));
- if (err != OK) {
- break;
- }
- caps->addProfileLevel(param.eProfile, param.eLevel);
-
- // AVC components may not list the constrained profiles explicitly, but
- // decoders that support a profile also support its constrained version.
- // Encoders must explicitly support constrained profiles.
- if (!isEncoder && strcasecmp(mediaType, MEDIA_MIMETYPE_VIDEO_AVC) == 0) {
- if (param.eProfile == OMX_VIDEO_AVCProfileHigh) {
- caps->addProfileLevel(OMX_VIDEO_AVCProfileConstrainedHigh, param.eLevel);
- } else if (param.eProfile == OMX_VIDEO_AVCProfileBaseline) {
- caps->addProfileLevel(OMX_VIDEO_AVCProfileConstrainedBaseline, param.eLevel);
- }
- }
-
- if (index == kMaxIndicesToCheck) {
- ALOGW("[%s] stopping checking profiles after %u: %x/%x",
- name, index,
- param.eProfile, param.eLevel);
- }
- }
-
- // Color format query
- // return colors in the order reported by the OMX component
- // prefix "flexible" standard ones with the flexible equivalent
- OMX_VIDEO_PARAM_PORTFORMATTYPE portFormat;
- InitOMXParams(&portFormat);
- portFormat.nPortIndex = isEncoder ? kPortIndexInput : kPortIndexOutput;
- for (OMX_U32 index = 0; index <= kMaxIndicesToCheck; ++index) {
- portFormat.nIndex = index;
- status_t err = omxNode->getParameter(
- OMX_IndexParamVideoPortFormat,
- &portFormat, sizeof(portFormat));
- if (err != OK) {
- break;
- }
-
- OMX_U32 flexibleEquivalent;
- if (IsFlexibleColorFormat(
- omxNode, portFormat.eColorFormat, false /* usingNativeWindow */,
- &flexibleEquivalent)) {
- caps->addColorFormat(flexibleEquivalent);
- }
- caps->addColorFormat(portFormat.eColorFormat);
-
- if (index == kMaxIndicesToCheck) {
- ALOGW("[%s] stopping checking formats after %u: %s(%x)",
- name, index,
- asString(portFormat.eColorFormat), portFormat.eColorFormat);
- }
- }
- } else if (strcasecmp(mediaType, MEDIA_MIMETYPE_AUDIO_AAC) == 0) {
- // More audio codecs if they have profiles.
- OMX_AUDIO_PARAM_ANDROID_PROFILETYPE param;
- InitOMXParams(¶m);
- param.nPortIndex = isEncoder ? kPortIndexOutput : kPortIndexInput;
- for (OMX_U32 index = 0; index <= kMaxIndicesToCheck; ++index) {
- param.nProfileIndex = index;
- status_t err = omxNode->getParameter(
- (OMX_INDEXTYPE)OMX_IndexParamAudioProfileQuerySupported,
- ¶m, sizeof(param));
- if (err != OK) {
- break;
- }
- // For audio, level is ignored.
- caps->addProfileLevel(param.eProfile, 0 /* level */);
-
- if (index == kMaxIndicesToCheck) {
- ALOGW("[%s] stopping checking profiles after %u: %x",
- name, index,
- param.eProfile);
- }
- }
-
- // NOTE: Without Android extensions, OMX does not provide a way to query
- // AAC profile support
- if (param.nProfileIndex == 0) {
- ALOGW("component %s doesn't support profile query.", name);
- }
- }
-
- if (isVideo && !isEncoder) {
- native_handle_t *sidebandHandle = nullptr;
- if (omxNode->configureVideoTunnelMode(
- kPortIndexOutput, OMX_TRUE, 0, &sidebandHandle) == OK) {
- // tunneled playback includes adaptive playback
- caps->addDetail(MediaCodecInfo::Capabilities::FEATURE_ADAPTIVE_PLAYBACK, 1);
- caps->addDetail(MediaCodecInfo::Capabilities::FEATURE_TUNNELED_PLAYBACK, 1);
- } else if (omxNode->setPortMode(
- kPortIndexOutput, IOMX::kPortModeDynamicANWBuffer) == OK ||
- omxNode->prepareForAdaptivePlayback(
- kPortIndexOutput, OMX_TRUE,
- 1280 /* width */, 720 /* height */) == OK) {
- caps->addDetail(MediaCodecInfo::Capabilities::FEATURE_ADAPTIVE_PLAYBACK, 1);
- }
- }
-
- if (isVideo && isEncoder) {
- OMX_VIDEO_CONFIG_ANDROID_INTRAREFRESHTYPE params;
- InitOMXParams(¶ms);
- params.nPortIndex = kPortIndexOutput;
- // TODO: should we verify if fallback is supported?
- if (omxNode->getConfig(
- (OMX_INDEXTYPE)OMX_IndexConfigAndroidIntraRefresh,
- ¶ms, sizeof(params)) == OK) {
- caps->addDetail(MediaCodecInfo::Capabilities::FEATURE_INTRA_REFRESH, 1);
- }
- }
-
- omxNode->freeNode();
- return OK;
-}
-
-void buildOmxInfo(const MediaCodecsXmlParser& parser,
- MediaCodecListWriter* writer) {
- uint32_t omxRank = ::android::base::GetUintProperty(
- "debug.stagefright.omx_default_rank", uint32_t(0x100));
- for (const MediaCodecsXmlParser::Codec& codec : parser.getCodecMap()) {
- const std::string &name = codec.first;
- if (!hasPrefix(codec.first, "OMX.")) {
- continue;
- }
- const MediaCodecsXmlParser::CodecProperties &properties = codec.second;
- bool encoder = properties.isEncoder;
- std::unique_ptr<MediaCodecInfoWriter> info =
- writer->addMediaCodecInfo();
- info->setName(name.c_str());
- info->setOwner("default");
- typename std::underlying_type<MediaCodecInfo::Attributes>::type attrs = 0;
- if (encoder) {
- attrs |= MediaCodecInfo::kFlagIsEncoder;
- }
- // NOTE: we don't support software-only codecs in OMX
- if (!hasPrefix(name, "OMX.google.")) {
- attrs |= MediaCodecInfo::kFlagIsVendor;
- if (properties.quirkSet.find("attribute::software-codec")
- == properties.quirkSet.end()) {
- attrs |= MediaCodecInfo::kFlagIsHardwareAccelerated;
- }
- }
- info->setAttributes(attrs);
- info->setRank(omxRank);
- // OMX components don't have aliases
- for (const MediaCodecsXmlParser::Type &type : properties.typeMap) {
- const std::string &mediaType = type.first;
- std::unique_ptr<MediaCodecInfo::CapabilitiesWriter> caps =
- info->addMediaType(mediaType.c_str());
- const MediaCodecsXmlParser::AttributeMap &attrMap = type.second;
- for (const MediaCodecsXmlParser::Attribute& attr : attrMap) {
- const std::string &key = attr.first;
- const std::string &value = attr.second;
- if (hasPrefix(key, "feature-") &&
- !hasPrefix(key, "feature-bitrate-modes")) {
- caps->addDetail(key.c_str(), hasPrefix(value, "1") ? 1 : 0);
- } else {
- caps->addDetail(key.c_str(), value.c_str());
- }
- }
- status_t err = queryOmxCapabilities(
- name.c_str(),
- mediaType.c_str(),
- encoder,
- caps.get());
- if (err != OK) {
- ALOGI("Failed to query capabilities for %s (media type: %s). Error: %d",
- name.c_str(),
- mediaType.c_str(),
- static_cast<int>(err));
- }
- }
- }
-}
-
-} // unnamed namespace
-
-status_t Codec2InfoBuilder::buildMediaCodecList(MediaCodecListWriter* writer) {
- // TODO: Remove run-time configurations once all codecs are working
- // properly. (Assume "full" behavior eventually.)
- //
- // debug.stagefright.ccodec supports 5 values.
- // 0 - Only OMX components are available.
- // 1 - Audio decoders and encoders with prefix "c2.android." are available
- // and ranked first.
- // All other components with prefix "c2.android." are available with
- // their normal ranks.
- // Components with prefix "c2.vda." are available with their normal
- // ranks.
- // All other components with suffix ".avc.decoder" or ".avc.encoder"
- // are available but ranked last.
- // 2 - Components with prefix "c2.android." are available and ranked
- // first.
- // Components with prefix "c2.vda." are available with their normal
- // ranks.
- // All other components with suffix ".avc.decoder" or ".avc.encoder"
- // are available but ranked last.
- // 3 - Components with prefix "c2.android." are available and ranked
- // first.
- // All other components are available with their normal ranks.
- // 4 - All components are available with their normal ranks.
- //
- // The default value (boot time) is 1.
- //
- // Note: Currently, OMX components have default rank 0x100, while all
- // Codec2.0 software components have default rank 0x200.
- int option = ::android::base::GetIntProperty("debug.stagefright.ccodec", 1);
-
- // Obtain Codec2Client
- std::vector<Traits> traits = Codec2Client::ListComponents();
-
- MediaCodecsXmlParser parser;
- if (option == 0) {
- parser.parseXmlFilesInSearchDirs();
- } else {
- parser.parseXmlFilesInSearchDirs(
- { "media_codecs_c2.xml", "media_codecs_performance_c2.xml" });
- }
- if (parser.getParsingStatus() != OK) {
- ALOGD("XML parser no good");
- return OK;
- }
-
- bool surfaceTest(Codec2Client::CreateInputSurface());
- if (option == 0 || (option != 4 && !surfaceTest)) {
- buildOmxInfo(parser, writer);
- }
-
- for (const Traits& trait : traits) {
- C2Component::rank_t rank = trait.rank;
-
- std::shared_ptr<Codec2Client::Interface> intf =
- Codec2Client::CreateInterfaceByName(trait.name.c_str());
- if (!intf || parser.getCodecMap().count(intf->getName()) == 0) {
- ALOGD("%s not found in xml", trait.name.c_str());
- continue;
- }
- std::string canonName = intf->getName();
-
- // TODO: Remove this block once all codecs are enabled by default.
- switch (option) {
- case 0:
- continue;
- case 1:
- if (hasPrefix(canonName, "c2.vda.")) {
- break;
- }
- if (hasPrefix(canonName, "c2.android.")) {
- if (trait.domain == C2Component::DOMAIN_AUDIO) {
- rank = 1;
- break;
- }
- break;
- }
- if (hasSuffix(canonName, ".avc.decoder") ||
- hasSuffix(canonName, ".avc.encoder")) {
- rank = std::numeric_limits<decltype(rank)>::max();
- break;
- }
- continue;
- case 2:
- if (hasPrefix(canonName, "c2.vda.")) {
- break;
- }
- if (hasPrefix(canonName, "c2.android.")) {
- rank = 1;
- break;
- }
- if (hasSuffix(canonName, ".avc.decoder") ||
- hasSuffix(canonName, ".avc.encoder")) {
- rank = std::numeric_limits<decltype(rank)>::max();
- break;
- }
- continue;
- case 3:
- if (hasPrefix(canonName, "c2.android.")) {
- rank = 1;
- }
- break;
- }
-
- ALOGV("canonName = %s", canonName.c_str());
- std::unique_ptr<MediaCodecInfoWriter> codecInfo = writer->addMediaCodecInfo();
- codecInfo->setName(trait.name.c_str());
- codecInfo->setOwner(("codec2::" + trait.owner).c_str());
- const MediaCodecsXmlParser::CodecProperties &codec = parser.getCodecMap().at(canonName);
-
- bool encoder = trait.kind == C2Component::KIND_ENCODER;
- typename std::underlying_type<MediaCodecInfo::Attributes>::type attrs = 0;
-
- if (encoder) {
- attrs |= MediaCodecInfo::kFlagIsEncoder;
- }
- if (trait.owner == "software") {
- attrs |= MediaCodecInfo::kFlagIsSoftwareOnly;
- } else {
- attrs |= MediaCodecInfo::kFlagIsVendor;
- if (trait.owner == "vendor-software") {
- attrs |= MediaCodecInfo::kFlagIsSoftwareOnly;
- } else if (codec.quirkSet.find("attribute::software-codec") == codec.quirkSet.end()) {
- attrs |= MediaCodecInfo::kFlagIsHardwareAccelerated;
- }
- }
- codecInfo->setAttributes(attrs);
- codecInfo->setRank(rank);
-
- for (const std::string &alias : codec.aliases) {
- codecInfo->addAlias(alias.c_str());
- }
-
- for (auto typeIt = codec.typeMap.begin(); typeIt != codec.typeMap.end(); ++typeIt) {
- const std::string &mediaType = typeIt->first;
- const MediaCodecsXmlParser::AttributeMap &attrMap = typeIt->second;
- std::unique_ptr<MediaCodecInfo::CapabilitiesWriter> caps =
- codecInfo->addMediaType(mediaType.c_str());
- for (auto attrIt = attrMap.begin(); attrIt != attrMap.end(); ++attrIt) {
- std::string key, value;
- std::tie(key, value) = *attrIt;
- if (key.find("feature-") == 0 && key.find("feature-bitrate-modes") != 0) {
- caps->addDetail(key.c_str(), std::stoi(value));
- } else {
- caps->addDetail(key.c_str(), value.c_str());
- }
- }
-
- bool gotProfileLevels = false;
- if (intf) {
- std::shared_ptr<C2Mapper::ProfileLevelMapper> mapper =
- C2Mapper::GetProfileLevelMapper(trait.mediaType);
- // if we don't know the media type, pass through all values unmapped
-
- // TODO: we cannot find levels that are local 'maxima' without knowing the coding
- // e.g. H.263 level 45 and level 30 could be two values for highest level as
- // they don't include one another. For now we use the last supported value.
- C2StreamProfileLevelInfo pl(encoder /* output */, 0u);
- std::vector<C2FieldSupportedValuesQuery> profileQuery = {
- C2FieldSupportedValuesQuery::Possible(C2ParamField(&pl, &pl.profile))
- };
-
- c2_status_t err = intf->querySupportedValues(profileQuery, C2_DONT_BLOCK);
- ALOGV("query supported profiles -> %s | %s",
- asString(err), asString(profileQuery[0].status));
- if (err == C2_OK && profileQuery[0].status == C2_OK) {
- if (profileQuery[0].values.type == C2FieldSupportedValues::VALUES) {
- std::vector<std::shared_ptr<C2ParamDescriptor>> supportedParams;
- bool hdrSupported = false;
- err = intf->querySupportedParams(&supportedParams);
- if (err == C2_OK) {
- for (const std::shared_ptr<C2ParamDescriptor> &desc : supportedParams) {
- if (desc->index().coreIndex() == C2StreamHdrStaticInfo::CORE_INDEX) {
- hdrSupported = true;
- break;
- }
- }
- }
- ALOGV("HDR %ssupported", hdrSupported ? "" : "not ");
- for (C2Value::Primitive profile : profileQuery[0].values.values) {
- pl.profile = (C2Config::profile_t)profile.ref<uint32_t>();
- std::vector<std::unique_ptr<C2SettingResult>> failures;
- err = intf->config({&pl}, C2_DONT_BLOCK, &failures);
- ALOGV("set profile to %u -> %s", pl.profile, asString(err));
- std::vector<C2FieldSupportedValuesQuery> levelQuery = {
- C2FieldSupportedValuesQuery::Current(C2ParamField(&pl, &pl.level))
- };
- err = intf->querySupportedValues(levelQuery, C2_DONT_BLOCK);
- ALOGV("query supported levels -> %s | %s",
- asString(err), asString(levelQuery[0].status));
- if (err == C2_OK && levelQuery[0].status == C2_OK) {
- if (levelQuery[0].values.type == C2FieldSupportedValues::VALUES
- && levelQuery[0].values.values.size() > 0) {
- C2Value::Primitive level = levelQuery[0].values.values.back();
- pl.level = (C2Config::level_t)level.ref<uint32_t>();
- ALOGV("supporting level: %u", pl.level);
- bool added = false;
- int32_t sdkProfile, sdkLevel;
- if (mapper && mapper->mapProfile(pl.profile, &sdkProfile)
- && mapper->mapLevel(pl.level, &sdkLevel)) {
- caps->addProfileLevel(
- (uint32_t)sdkProfile, (uint32_t)sdkLevel);
- gotProfileLevels = true;
- added = true;
- } else if (!mapper) {
- sdkProfile = pl.profile;
- sdkLevel = pl.level;
- caps->addProfileLevel(pl.profile, pl.level);
- gotProfileLevels = true;
- added = true;
- }
- if (added && hdrSupported) {
- static ALookup<int32_t, int32_t> sHdrProfileMap = {
- { VP9Profile2, VP9Profile2HDR },
- { VP9Profile3, VP9Profile3HDR },
- };
- int32_t sdkHdrProfile;
- if (sHdrProfileMap.lookup(sdkProfile, &sdkHdrProfile)) {
- caps->addProfileLevel(
- (uint32_t)sdkHdrProfile, (uint32_t)sdkLevel);
- }
- }
-
- // for H.263 also advertise the second highest level if the
- // codec supports level 45, as level 45 only covers level 10
- // TODO: move this to some form of a setting so it does not
- // have to be here
- if (mediaType == MIMETYPE_VIDEO_H263) {
- C2Config::level_t nextLevel = C2Config::LEVEL_UNUSED;
- for (C2Value::Primitive v : levelQuery[0].values.values) {
- C2Config::level_t level =
- (C2Config::level_t)v.ref<uint32_t>();
- if (level < C2Config::LEVEL_H263_45
- && level > nextLevel) {
- nextLevel = level;
- }
- }
- if (nextLevel != C2Config::LEVEL_UNUSED
- && nextLevel != pl.level
- && mapper
- && mapper->mapProfile(pl.profile, &sdkProfile)
- && mapper->mapLevel(nextLevel, &sdkLevel)) {
- caps->addProfileLevel(
- (uint32_t)sdkProfile, (uint32_t)sdkLevel);
- }
- }
- }
- }
- }
- }
- }
- }
-
- if (!gotProfileLevels) {
- if (mediaType == MIMETYPE_VIDEO_VP9) {
- if (encoder) {
- caps->addProfileLevel(VP9Profile0, VP9Level41);
- } else {
- caps->addProfileLevel(VP9Profile0, VP9Level5);
- caps->addProfileLevel(VP9Profile2, VP9Level5);
- caps->addProfileLevel(VP9Profile2HDR, VP9Level5);
- }
- } else if (mediaType == MIMETYPE_VIDEO_HEVC && !encoder) {
- caps->addProfileLevel(HEVCProfileMain, HEVCMainTierLevel51);
- caps->addProfileLevel(HEVCProfileMainStill, HEVCMainTierLevel51);
- } else if (mediaType == MIMETYPE_VIDEO_VP8) {
- if (encoder) {
- caps->addProfileLevel(VP8ProfileMain, VP8Level_Version0);
- } else {
- caps->addProfileLevel(VP8ProfileMain, VP8Level_Version0);
- }
- } else if (mediaType == MIMETYPE_VIDEO_AVC) {
- if (encoder) {
- caps->addProfileLevel(AVCProfileBaseline, AVCLevel41);
-// caps->addProfileLevel(AVCProfileConstrainedBaseline, AVCLevel41);
- caps->addProfileLevel(AVCProfileMain, AVCLevel41);
- } else {
- caps->addProfileLevel(AVCProfileBaseline, AVCLevel52);
- caps->addProfileLevel(AVCProfileConstrainedBaseline, AVCLevel52);
- caps->addProfileLevel(AVCProfileMain, AVCLevel52);
- caps->addProfileLevel(AVCProfileConstrainedHigh, AVCLevel52);
- caps->addProfileLevel(AVCProfileHigh, AVCLevel52);
- }
- } else if (mediaType == MIMETYPE_VIDEO_MPEG4) {
- if (encoder) {
- caps->addProfileLevel(MPEG4ProfileSimple, MPEG4Level2);
- } else {
- caps->addProfileLevel(MPEG4ProfileSimple, MPEG4Level3);
- }
- } else if (mediaType == MIMETYPE_VIDEO_H263) {
- if (encoder) {
- caps->addProfileLevel(H263ProfileBaseline, H263Level45);
- } else {
- caps->addProfileLevel(H263ProfileBaseline, H263Level30);
- caps->addProfileLevel(H263ProfileBaseline, H263Level45);
- caps->addProfileLevel(H263ProfileISWV2, H263Level30);
- caps->addProfileLevel(H263ProfileISWV2, H263Level45);
- }
- } else if (mediaType == MIMETYPE_VIDEO_MPEG2 && !encoder) {
- caps->addProfileLevel(MPEG2ProfileSimple, MPEG2LevelHL);
- caps->addProfileLevel(MPEG2ProfileMain, MPEG2LevelHL);
- }
- }
-
- // TODO: get this from intf() as well, but how do we map them to
- // MediaCodec color formats?
- if (mediaType.find("video") != std::string::npos) {
- // vendor video codecs prefer opaque format
- if (trait.name.find("android") == std::string::npos) {
- caps->addColorFormat(COLOR_FormatSurface);
- }
- caps->addColorFormat(COLOR_FormatYUV420Flexible);
- caps->addColorFormat(COLOR_FormatYUV420Planar);
- caps->addColorFormat(COLOR_FormatYUV420SemiPlanar);
- caps->addColorFormat(COLOR_FormatYUV420PackedPlanar);
- caps->addColorFormat(COLOR_FormatYUV420PackedSemiPlanar);
- // framework video encoders must support surface format, though it is unclear
- // that they will be able to map it if it is opaque
- if (encoder && trait.name.find("android") != std::string::npos) {
- caps->addColorFormat(COLOR_FormatSurface);
- }
- }
- }
- }
- return OK;
-}
-
-} // namespace android
-
-extern "C" android::MediaCodecListBuilderBase *CreateBuilder() {
- return new android::Codec2InfoBuilder;
-}
-
diff --git a/media/sfplugin/Codec2InfoBuilder.h b/media/sfplugin/Codec2InfoBuilder.h
deleted file mode 100644
index 30c189e..0000000
--- a/media/sfplugin/Codec2InfoBuilder.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef CODEC2_INFO_BUILDER_H_
-#define CODEC2_INFO_BUILDER_H_
-
-#include <media/stagefright/MediaCodecList.h>
-#include <utils/Errors.h>
-
-namespace android {
-
-class Codec2InfoBuilder : public MediaCodecListBuilderBase {
-public:
- Codec2InfoBuilder() = default;
- ~Codec2InfoBuilder() override = default;
- status_t buildMediaCodecList(MediaCodecListWriter* writer) override;
-};
-
-} // namespace android
-
-#endif // CODEC2_INFO_BUILDER_H_
diff --git a/media/sfplugin/InputSurfaceWrapper.h b/media/sfplugin/InputSurfaceWrapper.h
deleted file mode 100644
index d9c4eec..0000000
--- a/media/sfplugin/InputSurfaceWrapper.h
+++ /dev/null
@@ -1,107 +0,0 @@
-/*
- * Copyright 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef INPUT_SURFACE_WRAPPER_H_
-#define INPUT_SURFACE_WRAPPER_H_
-
-#include <codec2/hidl/client.h>
-#include <system/graphics.h>
-
-namespace android {
-
-/**
- * Wrapper interface around InputSurface.
- */
-class InputSurfaceWrapper {
-public:
- InputSurfaceWrapper()
- : mDataSpace(HAL_DATASPACE_UNKNOWN) {
- }
-
- virtual ~InputSurfaceWrapper() = default;
-
- /**
- * Connect the surface with |comp|. A surface can
- * connect to at most one component at a time.
- *
- * \return OK successfully connected to |comp|
- * \return ALREADY_EXISTS already connected to another component.
- */
- virtual status_t connect(
- const std::shared_ptr<Codec2Client::Component> &comp) = 0;
-
- /**
- * Disconnect the surface from the component if any.
- */
- virtual void disconnect() = 0;
-
- /**
- * Start pushing buffers to the surface.
- */
- virtual status_t start() = 0;
-
- /**
- * Ref: GraphicBufferSource::signalEndOfInputStream.
- */
- virtual status_t signalEndOfInputStream() = 0;
-
- /// Input Surface configuration
- struct Config {
- // IN PARAMS (GBS)
- float mMinFps; // minimum fps (repeat frame to achieve this)
- float mMaxFps; // max fps (via frame drop)
- float mCaptureFps; // capture fps
- float mCodedFps; // coded fps
- bool mSuspended; // suspended
- int64_t mTimeOffsetUs; // time offset (input => codec)
- int64_t mSuspendAtUs; // suspend/resume time
- int64_t mStartAtUs; // start time
- bool mStopped; // stopped
- int64_t mStopAtUs; // stop time
-
- // OUT PARAMS (GBS)
- int64_t mInputDelayUs; // delay between encoder input and surface input
-
- // IN PARAMS (CODEC WRAPPER)
- float mFixedAdjustedFps; // fixed fps via PTS manipulation
- float mMinAdjustedFps; // minimum fps via PTS manipulation
- };
-
- /**
- * Configures input surface.
- *
- * \param config configuration. This can be updated during this call to provide output
- * parameters, but not to provide configured parameters (to avoid continually
- * reconfiguring)
- */
- virtual status_t configure(Config &config) = 0;
-
- /**
- * Configures desired data space.
- *
- * \param dataSpace desired data space
- */
- inline void setDataSpace(android_dataspace dataSpace) {
- mDataSpace = dataSpace;
- }
-
-protected:
- android_dataspace mDataSpace;
-};
-
-} // namespace android
-
-#endif // INPUT_SURFACE_WRAPPER_H_
diff --git a/media/sfplugin/ReflectedParamUpdater.cpp b/media/sfplugin/ReflectedParamUpdater.cpp
deleted file mode 100644
index 880d4a5..0000000
--- a/media/sfplugin/ReflectedParamUpdater.cpp
+++ /dev/null
@@ -1,575 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "ReflectedParamUpdater"
-#include <utils/Log.h>
-
-#include <iostream>
-#include <set>
-#include <sstream>
-
-#include <C2Debug.h>
-#include <C2ParamInternal.h>
-
-#include <media/stagefright/foundation/ABuffer.h>
-#include <media/stagefright/foundation/ADebug.h>
-#include <media/stagefright/foundation/AString.h>
-#include <media/stagefright/foundation/hexdump.h>
-
-#include "ReflectedParamUpdater.h"
-
-namespace android {
-
-std::string ReflectedParamUpdater::Dict::debugString(size_t indent_) const {
- std::string indent(indent_, ' ');
- std::stringstream s;
- s << "Dict {" << std::endl;
-
- for (const auto &it : *this) {
- s << indent << " ";
-
- C2Value c2Value;
- int32_t int32Value;
- uint32_t uint32Value;
- int64_t int64Value;
- uint64_t uint64Value;
- float floatValue;
- sp<ABuffer> bufValue;
- AString strValue;
- if (it.second.find(&c2Value)) {
- switch (c2Value.type()) {
- case C2Value::INT32:
- (void)c2Value.get(&int32Value);
- s << "c2::i32 " << it.first << " = " << int32Value;
- break;
- case C2Value::UINT32:
- (void)c2Value.get(&uint32Value);
- s << "c2::u32 " << it.first << " = " << uint32Value;
- break;
- case C2Value::CNTR32:
- // dump counter value as unsigned
- (void)c2Value.get((c2_cntr32_t*)&uint32Value);
- s << "c2::c32 " << it.first << " = " << uint32Value;
- break;
- case C2Value::INT64:
- (void)c2Value.get(&int64Value);
- s << "c2::i64 " << it.first << " = " << int64Value;
- break;
- case C2Value::UINT64:
- (void)c2Value.get(&uint64Value);
- s << "c2::u64 " << it.first << " = " << uint64Value;
- break;
- case C2Value::CNTR64:
- // dump counter value as unsigned
- (void)c2Value.get((c2_cntr64_t*)&uint64Value);
- s << "c2::c64 " << it.first << " = " << uint64Value;
- break;
- case C2Value::FLOAT:
- (void)c2Value.get(&floatValue);
- s << "c2::float " << it.first << " = " << floatValue;
- break;
- default:
- // dump unsupported values for debugging, these should not be used
- s << "c2::unsupported " << it.first;
- }
- } else if (it.second.find(&int32Value)) {
- s << "int32_t " << it.first << " = " << int32Value;
- } else if (it.second.find(&int64Value)) {
- s << "int64_t " << it.first << " = " << int64Value;
- } else if (it.second.find(&strValue)) {
- s << "string " << it.first << " = \"" << strValue.c_str() << "\"";
- } else if (it.second.find(&bufValue)) {
- s << "Buffer " << it.first << " = ";
- if (bufValue != nullptr && bufValue->data() != nullptr && bufValue->size() <= 64) {
- s << "{" << std::endl;
- AString tmp;
- hexdump(bufValue->data(), bufValue->size(), indent_ + 4, &tmp);
- s << tmp.c_str() << indent << " }";
- } else {
- s << (void*)bufValue.get();
- }
- } else {
- // dump unsupported values for debugging, this should never happen.
- s << "unsupported " << it.first;
- }
- s << std::endl;
- }
- s << indent << "}";
-
- return s.str();
-}
-
-void ReflectedParamUpdater::addParamDesc(
- const std::shared_ptr<C2ParamReflector> &reflector,
- const std::vector<std::shared_ptr<C2ParamDescriptor>> ¶mDescs) {
- for (const std::shared_ptr<C2ParamDescriptor> &desc : paramDescs) {
- std::unique_ptr<C2StructDescriptor> structDesc = reflector->describe(
- desc->index().coreIndex());
- if (structDesc == nullptr) {
- ALOGD("Could not describe %s", desc->name().c_str());
- continue;
- }
- addParamDesc(desc, *structDesc, reflector, true /* markVendor */);
- }
-
- // TEMP: also add vendor parameters as non-vendor
- for (const std::shared_ptr<C2ParamDescriptor> &desc : paramDescs) {
- if (!desc->index().isVendor()) {
- continue;
- }
- std::unique_ptr<C2StructDescriptor> structDesc = reflector->describe(
- desc->index().coreIndex());
- if (structDesc) {
- addParamDesc(desc, *structDesc, reflector, false /* markVendor */);
- }
- }
-}
-
-void ReflectedParamUpdater::addParamStructDesc(
- std::shared_ptr<C2ParamDescriptor> desc,
- C2String path,
- size_t offset,
- const C2StructDescriptor &structDesc,
- const std::shared_ptr<C2ParamReflector> &reflector) {
- for (auto it = structDesc.begin(); it != structDesc.end(); ++it) {
- C2String fieldName = path + "." + it->name();
- if (it->type() & C2FieldDescriptor::STRUCT_FLAG) {
- if (reflector == nullptr || it->extent() != 1) {
- ALOGD("ignored struct field %s", fieldName.c_str());
- continue;
- }
- std::unique_ptr<C2StructDescriptor> structDesc_ = reflector->describe(
- C2Param::CoreIndex(it->type()).coreIndex());
- if (structDesc_ == nullptr) {
- ALOGD("Could not describe structure of %s", fieldName.c_str());
- continue;
- }
- addParamStructDesc(desc, fieldName, offset + _C2ParamInspector::GetOffset(*it),
- *structDesc_, reflector);
- continue;
- }
-
- // verify extent and type
- switch (it->type()) {
- case C2FieldDescriptor::INT32:
- case C2FieldDescriptor::UINT32:
- case C2FieldDescriptor::CNTR32:
- case C2FieldDescriptor::INT64:
- case C2FieldDescriptor::UINT64:
- case C2FieldDescriptor::CNTR64:
- case C2FieldDescriptor::FLOAT:
- if (it->extent() != 1) {
- ALOGD("extent() != 1 for single value type: %s", fieldName.c_str());
- continue;
- }
- break;
- case C2FieldDescriptor::STRING:
- case C2FieldDescriptor::BLOB:
- break;
-
- default:
- ALOGD("Unrecognized type: %s", fieldName.c_str());
- continue;
- }
-
- ALOGV("%s registered", fieldName.c_str());
- // TODO: get the proper size by iterating through the fields.
- // only insert fields the very first time
- mMap.emplace(fieldName, FieldDesc {
- desc,
- std::make_unique<C2FieldDescriptor>(
- it->type(), it->extent(), it->name(),
- _C2ParamInspector::GetOffset(*it),
- _C2ParamInspector::GetSize(*it)),
- offset,
- });
- }
-}
-
-void ReflectedParamUpdater::addParamDesc(
- std::shared_ptr<C2ParamDescriptor> desc, const C2StructDescriptor &structDesc,
- const std::shared_ptr<C2ParamReflector> &reflector, bool markVendor) {
- C2String paramName = desc->name();
-
- // prefix vendor parameters
- if (desc->index().isVendor() && markVendor) {
- paramName = "vendor." + paramName;
- }
- mParamNames.emplace(desc->index(), paramName);
-
- // also allow setting whole parameters in a binary fashion via ByteBuffer
- // this is opt-in for now
- auto it = mWholeParams.find(paramName);
- if (it != mWholeParams.end() && it->second.coreIndex() == desc->index().coreIndex()) {
- mMap.emplace(paramName, FieldDesc{ desc, nullptr, 0 /* offset */ });
- // don't add fields of whole parameters.
- return;
- }
-
- addParamStructDesc(desc, paramName, 0 /* offset */, structDesc, reflector);
-}
-
-void ReflectedParamUpdater::supportWholeParam(std::string name, C2Param::CoreIndex index) {
- mWholeParams.emplace(name, index);
-}
-
-std::string ReflectedParamUpdater::getParamName(C2Param::Index index) const {
- auto it = mParamNames.find(index);
- if (it != mParamNames.end()) {
- return it->second;
- }
-
- std::stringstream ret;
- ret << "<unknown " << index << ">";
- return ret.str();
-}
-
-void ReflectedParamUpdater::getParamIndicesFromMessage(
- const Dict ¶ms,
- std::vector<C2Param::Index> *vec /* nonnull */) const {
- CHECK(vec != nullptr);
- vec->clear();
- std::set<C2Param::Index> indices;
- parseMessageAndDoWork(
- params,
- [&indices](const std::string &, const FieldDesc &desc, const void *, size_t) {
- indices.insert(desc.paramDesc->index());
- });
- for (const C2Param::Index &index : indices) {
- vec->push_back(index);
- }
-}
-
-void ReflectedParamUpdater::getParamIndicesForKeys(
- const std::vector<std::string> &keys,
- std::vector<C2Param::Index> *vec /* nonnull */) const {
- CHECK(vec != nullptr);
- vec->clear();
- std::set<C2Param::Index> indices;
-
- std::set<std::string> keyMap(keys.begin(), keys.end());
-
- ALOGV("in getParamIndicesForKeys with %zu keys and map of %zu entries",
- keyMap.size(), mMap.size());
- for (const std::pair<const std::string, FieldDesc> &kv : mMap) {
- const std::string &name = kv.first;
- const FieldDesc &desc = kv.second;
- ALOGV("count of %s is %zu", name.c_str(), keyMap.count(name));
- if (keyMap.count(name) > 0) {
- indices.insert(desc.paramDesc->index());
- }
- }
-
- for (const C2Param::Index &index : indices) {
- vec->push_back(index);
- }
-}
-
-void ReflectedParamUpdater::updateParamsFromMessage(
- const Dict ¶ms,
- std::vector<std::unique_ptr<C2Param>> *vec /* nonnull */) const {
- CHECK(vec != nullptr);
-
- std::map<C2Param::Index, std::unique_ptr<C2Param>*> paramsMap;
- for (std::unique_ptr<C2Param> ¶m : *vec) {
- if (param && *param) {
- paramsMap[param->index()] = ¶m;
- }
- }
-
- parseMessageAndDoWork(
- params,
- [¶msMap](const std::string &name, const FieldDesc &desc, const void *ptr, size_t size) {
- std::unique_ptr<C2Param> *param = nullptr;
- auto paramIt = paramsMap.find(desc.paramDesc->index());
- if (paramIt == paramsMap.end()) {
- ALOGD("%s found, but param #%d isn't present to update",
- name.c_str(), (int32_t)desc.paramDesc->index());
- return;
- }
- param = paramIt->second;
-
- struct _C2Param : public C2Param {
- using C2Param::C2Param;
- _C2Param(uint32_t size, uint32_t index) : C2Param(size, index) { }
- };
-
- // we will handle whole param updates as part of a flexible param update using
- // a zero offset.
- size_t offset = 0;
- size_t minOffset = 0;
-
- // if this descriptor has a field, use the offset and size and ensure that offset
- // is not part of the header
- if (desc.fieldDesc) {
- minOffset = sizeof(C2Param);
- offset = sizeof(C2Param) + desc.offset
- + _C2ParamInspector::GetOffset(*desc.fieldDesc);
- }
-
- // reallocate or trim flexible param (or whole param) as necessary
- if (!desc.fieldDesc /* whole param */ || desc.fieldDesc->extent() == 0) {
- // reallocate param if more space is needed
- if (param->get()->size() < offset + size) {
- if (size > INT32_MAX - offset || offset < minOffset) {
- // size too long or offset too early - abandon
- return;
- }
- C2Param *newParam = (C2Param *)::operator new(offset + size);
- new (newParam) _C2Param(offset + size, param->get()->index());
- if (offset > sizeof(C2Param)) {
- memcpy(newParam + 1, param->get() + 1, offset - sizeof(C2Param));
- }
- param->reset(newParam);
- } else if (param->get()->size() > offset + size) {
- // trim parameter size
- _C2ParamInspector::TrimParam(param->get(), offset + size);
- }
- } else if (desc.fieldDesc->type() == C2FieldDescriptor::BLOB) {
- // zero fill blobs if updating with smaller blob
- if (desc.fieldDesc->extent() > size) {
- memset((uint8_t *)(param->get()) + offset + size, 0,
- desc.fieldDesc->extent() - size);
- }
- }
-
- memcpy((uint8_t *)(param->get()) + offset, ptr, size);
- });
-}
-
-void ReflectedParamUpdater::parseMessageAndDoWork(
- const Dict ¶ms,
- std::function<void(const std::string &, const FieldDesc &, const void *, size_t)> work) const {
- for (const std::pair<const std::string, FieldDesc> &kv : mMap) {
- const std::string &name = kv.first;
- const FieldDesc &desc = kv.second;
- auto param = params.find(name);
- if (param == params.end()) {
- continue;
- }
-
- // handle whole parameters
- if (!desc.fieldDesc) {
- sp<ABuffer> tmp;
- if (param->second.find(&tmp) && tmp != nullptr) {
- C2Param *tmpAsParam = C2Param::From(tmp->data(), tmp->size());
- if (tmpAsParam && tmpAsParam->type().type() == desc.paramDesc->index().type()) {
- work(name, desc, tmp->data(), tmp->size());
- } else {
- ALOGD("Param blob does not match param for '%s' (%p, %x vs %x)",
- name.c_str(), tmpAsParam, tmpAsParam ? tmpAsParam->type().type() : 0xDEADu,
- desc.paramDesc->index().type());
- }
- }
- continue;
- }
-
- int32_t int32Value;
- int64_t int64Value;
- C2Value c2Value;
-
- C2FieldDescriptor::type_t fieldType = desc.fieldDesc->type();
- size_t fieldExtent = desc.fieldDesc->extent();
- switch (fieldType) {
- case C2FieldDescriptor::INT32:
- if ((param->second.find(&c2Value) && c2Value.get(&int32Value))
- || param->second.find(&int32Value)) {
- work(name, desc, &int32Value, sizeof(int32Value));
- }
- break;
- case C2FieldDescriptor::UINT32:
- if ((param->second.find(&c2Value) && c2Value.get((uint32_t*)&int32Value))
- || param->second.find(&int32Value)) {
- work(name, desc, &int32Value, sizeof(int32Value));
- }
- break;
- case C2FieldDescriptor::CNTR32:
- if ((param->second.find(&c2Value) && c2Value.get((c2_cntr32_t*)&int32Value))
- || param->second.find(&int32Value)) {
- work(name, desc, &int32Value, sizeof(int32Value));
- }
- break;
- case C2FieldDescriptor::INT64:
- if ((param->second.find(&c2Value) && c2Value.get(&int64Value))
- || param->second.find(&int64Value)) {
- work(name, desc, &int64Value, sizeof(int64Value));
- }
- break;
- case C2FieldDescriptor::UINT64:
- if ((param->second.find(&c2Value) && c2Value.get((uint64_t*)&int64Value))
- || param->second.find(&int64Value)) {
- work(name, desc, &int64Value, sizeof(int64Value));
- }
- break;
- case C2FieldDescriptor::CNTR64:
- if ((param->second.find(&c2Value) && c2Value.get((c2_cntr64_t*)&int64Value))
- || param->second.find(&int64Value)) {
- work(name, desc, &int64Value, sizeof(int64Value));
- }
- break;
- case C2FieldDescriptor::FLOAT: {
- float tmp;
- if (param->second.find(&c2Value) && c2Value.get(&tmp)) {
- work(name, desc, &tmp, sizeof(tmp));
- }
- break;
- }
- case C2FieldDescriptor::STRING: {
- AString tmp;
- if (!param->second.find(&tmp)) {
- break;
- }
- if (fieldExtent > 0 && tmp.size() >= fieldExtent) {
- AString truncated(tmp, 0, fieldExtent - 1);
- ALOGD("String value too long to fit: original \"%s\" truncated to \"%s\"",
- tmp.c_str(), truncated.c_str());
- tmp = truncated;
- }
- work(name, desc, tmp.c_str(), tmp.size() + 1);
- break;
- }
-
- case C2FieldDescriptor::BLOB: {
- sp<ABuffer> tmp;
- if (!param->second.find(&tmp) || tmp == nullptr) {
- break;
- }
-
- if (fieldExtent > 0 && tmp->size() > fieldExtent) {
- ALOGD("Blob value too long to fit. Truncating.");
- tmp->setRange(tmp->offset(), fieldExtent);
- }
- work(name, desc, tmp->data(), tmp->size());
- break;
- }
-
- default:
- ALOGD("Unsupported data type for %s", name.c_str());
- break;
- }
- }
-}
-
-ReflectedParamUpdater::Dict
-ReflectedParamUpdater::getParams(const std::vector<std::unique_ptr<C2Param>> ¶ms_) const {
- std::vector<C2Param*> params;
- params.resize(params_.size());
- std::transform(params_.begin(), params_.end(), params.begin(),
- [](const std::unique_ptr<C2Param>& p) -> C2Param* { return p.get(); });
- return getParams(params);
-}
-
-ReflectedParamUpdater::Dict
-ReflectedParamUpdater::getParams(const std::vector<C2Param*> ¶ms) const {
- Dict ret;
-
- // convert vector to map
- std::map<C2Param::Index, C2Param *> paramsMap;
- for (C2Param *param : params) {
- if (param != nullptr && *param) {
- paramsMap[param->index()] = param;
- }
- }
-
- for (const std::pair<const std::string, FieldDesc> &kv : mMap) {
- const std::string &name = kv.first;
- const FieldDesc &desc = kv.second;
- if (paramsMap.count(desc.paramDesc->index()) == 0) {
- continue;
- }
- C2Param *param = paramsMap[desc.paramDesc->index()];
- Value value;
-
- // handle whole params first
- if (!desc.fieldDesc) {
- sp<ABuffer> buf = ABuffer::CreateAsCopy(param, param->size());
- value.set(buf);
- ret.emplace(name, value);
- continue;
- }
-
- size_t offset = sizeof(C2Param) + desc.offset
- + _C2ParamInspector::GetOffset(*desc.fieldDesc);
- uint8_t *data = (uint8_t *)param + offset;
- C2FieldDescriptor::type_t fieldType = desc.fieldDesc->type();
- switch (fieldType) {
- case C2FieldDescriptor::STRING: {
- size_t length = desc.fieldDesc->extent();
- if (length == 0) {
- length = param->size() - offset;
- }
-
- if (param->size() < length || param->size() - length < offset) {
- ALOGD("param too small for string: length %zu size %zu offset %zu",
- length, param->size(), offset);
- break;
- }
- value.set(AString((char *)data, strnlen((char *)data, length)));
- break;
- }
-
- case C2FieldDescriptor::BLOB: {
- size_t length = desc.fieldDesc->extent();
- if (length == 0) {
- length = param->size() - offset;
- }
-
- if (param->size() < length || param->size() - length < offset) {
- ALOGD("param too small for blob: length %zu size %zu offset %zu",
- length, param->size(), offset);
- break;
- }
-
- sp<ABuffer> buf = ABuffer::CreateAsCopy(data, length);
- value.set(buf);
- break;
- }
-
- default: {
- size_t valueSize = C2Value::SizeFor((C2Value::type_t)fieldType);
- if (param->size() < valueSize || param->size() - valueSize < offset) {
- ALOGD("param too small for c2value: size %zu offset %zu",
- param->size(), offset);
- break;
- }
-
- C2Value c2Value;
- switch (fieldType) {
- case C2FieldDescriptor::INT32: c2Value = *((int32_t *)data); break;
- case C2FieldDescriptor::UINT32: c2Value = *((uint32_t *)data); break;
- case C2FieldDescriptor::CNTR32: c2Value = *((c2_cntr32_t *)data); break;
- case C2FieldDescriptor::INT64: c2Value = *((int64_t *)data); break;
- case C2FieldDescriptor::UINT64: c2Value = *((uint64_t *)data); break;
- case C2FieldDescriptor::CNTR64: c2Value = *((c2_cntr64_t *)data); break;
- case C2FieldDescriptor::FLOAT: c2Value = *((float *)data); break;
- default:
- ALOGD("Unsupported data type for %s", name.c_str());
- continue;
- }
- value.set(c2Value);
- }
- }
- ret.emplace(name, value);
- }
- return ret;
-}
-
-void ReflectedParamUpdater::clear() {
- mMap.clear();
-}
-
-} // namespace android
diff --git a/media/sfplugin/ReflectedParamUpdater.h b/media/sfplugin/ReflectedParamUpdater.h
deleted file mode 100644
index 5436ba5..0000000
--- a/media/sfplugin/ReflectedParamUpdater.h
+++ /dev/null
@@ -1,214 +0,0 @@
-/*
- * Copyright (C) 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef REFLECTED_PARAM_BUILDER_H_
-#define REFLECTED_PARAM_BUILDER_H_
-
-#include <map>
-#include <memory>
-
-#include <C2.h>
-#include <C2Param.h>
-
-#include <media/stagefright/foundation/ABuffer.h>
-#include <media/stagefright/foundation/AData.h>
-#include <media/stagefright/foundation/AMessage.h>
-#include <media/stagefright/foundation/AString.h>
-
-namespace android {
-
-/**
- * Utility class to query and update Codec 2.0 configuration values. Use custom dictionary as
- * AMessage cannot represent all types of Codec 2.0 parameters and C2Value cannot represent
- * all types of SDK values. We want to be precise when setting standard parameters (use C2Value
- * for arithmetic values), but also support int32 and int64 for SDK values specifically for
- * vendor parameters (as SDK API does not allow specifying proper type.) When querying fields,
- * we can use C2Values as they are defined.
- *
- * Item => Codec 2.0 value mappings:
- * CValue::type => type
- * int32 => int32, ctr32 or uint32
- * int64 => int64, ctr64 or uint64
- * AString => string
- * ABuffer => blob
- * 'Rect' => C2RectStruct (not exposed in SDK as a rectangle)
- */
-class ReflectedParamUpdater {
-public:
- ReflectedParamUpdater() = default;
- ~ReflectedParamUpdater() = default;
-
- /**
- * Element for values
- */
- struct Value : public AData<C2Value, int32_t, int64_t, AString, sp<ABuffer>>::Basic {
- // allow construction from base types
- Value() = default;
- explicit Value(C2Value i) { set(i); }
- explicit Value(int32_t i) { set(i); }
- explicit Value(int64_t i) { set(i); }
- explicit Value(const AString &i) { set(i); }
- explicit Value(const sp<ABuffer> &i) { set(i); }
- };
-
- struct Dict : public std::map<std::string, Value> {
- Dict() = default;
- std::string debugString(size_t indent = 0) const;
- };
-
- /**
- * Enumerates all fields of the parameter descriptors supplied, so that this opbject can later
- * query and update these.
- *
- * For now only first-level fields are supported. Also, array fields are not supported.
- *
- * \param reflector C2ParamReflector object for C2Param reflection.
- * \param paramDescs vector of C2ParamDescriptor objects that this object
- * would recognize when building params.
- */
- void addParamDesc(
- const std::shared_ptr<C2ParamReflector> &reflector,
- const std::vector<std::shared_ptr<C2ParamDescriptor>> ¶mDescs);
-
- /**
- * Adds fields of a standard parameter (that may not be supported by the parameter reflector
- * or may not be listed as a supported value by the component). If the parameter name is
- * used for another parameter, this operation is a no-op. (Technically, this is by fields).
- *
- * \param T standard parameter type
- * \param name parameter name
- */
- template<typename T>
- void addStandardParam(const std::string &name, C2ParamDescriptor::attrib_t attrib =
- C2ParamDescriptor::IS_READ_ONLY) {
- addParamDesc(std::make_shared<C2ParamDescriptor>(
- C2Param::Index(T::PARAM_TYPE), attrib, name.c_str()),
- C2StructDescriptor((T*)nullptr), nullptr /* descriptor */);
- }
-
- /**
- * Adds fields of a structure (or a parameater) described by the struct descriptor. If
- * reflector is provided, fields of sub-structures are also added. Otherwise, only top-level
- * fundamental typed fields (arithmetic, string and blob) are added.
- *
- * \param paramDesc parameter descriptor
- * \param fieldDesc field descriptor
- * \param path path/name of the structure (field or parent parameter)
- * \param offset offset of the structure in the parameter
- * \param reflector C2ParamReflector object for C2Param reflection (may be null)
- */
- void addParamStructDesc(
- std::shared_ptr<C2ParamDescriptor> paramDesc, C2String path, size_t offset,
- const C2StructDescriptor &structDesc,
- const std::shared_ptr<C2ParamReflector> &reflector);
-
- /**
- * Adds fields of a parameter described by the struct descriptor. If reflector is provided,
- * fields of sub-structures are also added. Otherwise, only top-level fundamental typed fields
- * (arithmetic, string and blob) are added.
- *
- * \param paramDesc parameter descriptor
- * \param fieldDesc field descriptor
- * \param reflector C2ParamReflector object for C2Param reflection (may be null)
- * \param markVendor TEMP if true, prefix vendor parameter names with "vendor."
- */
- void addParamDesc(
- std::shared_ptr<C2ParamDescriptor> paramDesc, const C2StructDescriptor &structDesc,
- const std::shared_ptr<C2ParamReflector> &reflector,
- bool markVendor = true);
-
- /**
- * Add support for setting a parameter as a binary blob.
- *
- * \param name name of the parameter
- * \param coreIndex parameter (core) index
- */
- void supportWholeParam(std::string name, C2Param::CoreIndex coreIndex);
-
- /**
- * Returns the name of the parameter for an index.
- */
- std::string getParamName(C2Param::Index index) const;
-
- /**
- * Get list of param indices from field names and values in AMessage object.
- *
- * TODO: This should be in the order that they are listed by the component.
- *
- * \param params[in] Dict object with field name to value pairs.
- * \param vec[out] vector to store the indices from |params|.
- */
- void getParamIndicesFromMessage(
- const Dict ¶ms,
- std::vector<C2Param::Index> *vec /* nonnull */) const;
-
- /**
- * Get list of param indices from field names (only) in AMessage object.
- *
- * \param params[in] Vector object with field names.
- * \param vec[out] vector to store the indices from |params|.
- */
- void getParamIndicesForKeys(
- const std::vector<std::string> &keys,
- std::vector<C2Param::Index> *vec /* nonnull */) const;
-
- /**
- * Update C2Param objects from field name and value in AMessage object.
- *
- * \param params[in] Dict object with field name to value pairs.
- * \param vec[in,out] vector of the C2Param objects to be updated.
- */
- void updateParamsFromMessage(
- const Dict ¶ms,
- std::vector<std::unique_ptr<C2Param>> *vec /* nonnull */) const;
-
- /**
- * Get fields from C2Param objects in AMessage object.
- *
- * \param params[in] vector of the C2Param objects to be queried
- * \return a Dict object containing the known parameters
- */
- Dict getParams(
- const std::vector<C2Param*> ¶ms /* nonnull */) const;
-
- Dict getParams(
- const std::vector<std::unique_ptr<C2Param>> ¶ms /* nonnull */) const;
-
- /**
- * Clear param descriptors in this object.
- */
- void clear();
-
-private:
- struct FieldDesc {
- std::shared_ptr<C2ParamDescriptor> paramDesc;
- std::unique_ptr<C2FieldDescriptor> fieldDesc;
- size_t offset;
- };
- std::map<std::string, FieldDesc> mMap;
- std::map<C2Param::Index, std::string> mParamNames;
- std::map<std::string, C2Param::CoreIndex> mWholeParams;
-
- void parseMessageAndDoWork(
- const Dict ¶ms,
- std::function<void(const std::string &, const FieldDesc &, const void *, size_t)> work) const;
-
- C2_DO_NOT_COPY(ReflectedParamUpdater);
-};
-
-} // namespace android
-
-#endif // REFLECTED_PARAM_BUILDER_H_
diff --git a/media/sfplugin/SkipCutBuffer.cpp b/media/sfplugin/SkipCutBuffer.cpp
deleted file mode 100644
index 5762440..0000000
--- a/media/sfplugin/SkipCutBuffer.cpp
+++ /dev/null
@@ -1,206 +0,0 @@
-/*
- * Copyright (C) 2012 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "SkipCutBuffer"
-#include <utils/Log.h>
-
-#include <media/stagefright/foundation/ADebug.h>
-#include <media/stagefright/MediaBuffer.h>
-#include <media/stagefright/SkipCutBuffer.h>
-
-namespace android {
-
-SkipCutBuffer::SkipCutBuffer(size_t skip, size_t cut, size_t num16BitChannels) {
-
- mWriteHead = 0;
- mReadHead = 0;
- mCapacity = 0;
- mCutBuffer = nullptr;
-
- if (num16BitChannels == 0 || num16BitChannels > INT32_MAX / 2) {
- ALOGW("# channels out of range: %zu, using passthrough instead", num16BitChannels);
- return;
- }
- size_t frameSize = num16BitChannels * 2;
- if (skip > INT32_MAX / frameSize || cut > INT32_MAX / frameSize
- || cut * frameSize > INT32_MAX - 4096) {
- ALOGW("out of range skip/cut: %zu/%zu, using passthrough instead",
- skip, cut);
- return;
- }
- skip *= frameSize;
- cut *= frameSize;
-
- mFrontPadding = mSkip = skip;
- mBackPadding = cut;
- mCapacity = cut + 4096;
- mCutBuffer = new (std::nothrow) char[mCapacity];
- ALOGV("skipcutbuffer %zu %zu %d", skip, cut, mCapacity);
-}
-
-SkipCutBuffer::~SkipCutBuffer() {
- delete[] mCutBuffer;
-}
-
-void SkipCutBuffer::submit(MediaBuffer *buffer) {
- if (mCutBuffer == nullptr) {
- // passthrough mode
- return;
- }
-
- int32_t offset = buffer->range_offset();
- int32_t buflen = buffer->range_length();
-
- // drop the initial data from the buffer if needed
- if (mFrontPadding > 0) {
- // still data left to drop
- int32_t to_drop = (buflen < mFrontPadding) ? buflen : mFrontPadding;
- offset += to_drop;
- buflen -= to_drop;
- buffer->set_range(offset, buflen);
- mFrontPadding -= to_drop;
- }
-
-
- // append data to cutbuffer
- char *src = ((char*) buffer->data()) + offset;
- write(src, buflen);
-
-
- // the mediabuffer is now empty. Fill it from cutbuffer, always leaving
- // at least mBackPadding bytes in the cutbuffer
- char *dst = (char*) buffer->data();
- size_t copied = read(dst, buffer->size());
- buffer->set_range(0, copied);
-}
-
-template <typename T>
-void SkipCutBuffer::submitInternal(const sp<T>& buffer) {
- if (mCutBuffer == nullptr) {
- // passthrough mode
- return;
- }
-
- int32_t offset = buffer->offset();
- int32_t buflen = buffer->size();
-
- // drop the initial data from the buffer if needed
- if (mFrontPadding > 0) {
- // still data left to drop
- int32_t to_drop = (buflen < mFrontPadding) ? buflen : mFrontPadding;
- offset += to_drop;
- buflen -= to_drop;
- buffer->setRange(offset, buflen);
- mFrontPadding -= to_drop;
- }
-
-
- // append data to cutbuffer
- char *src = (char*) buffer->data();
- write(src, buflen);
-
-
- // the mediabuffer is now empty. Fill it from cutbuffer, always leaving
- // at least mBackPadding bytes in the cutbuffer
- char *dst = (char*) buffer->base();
- size_t copied = read(dst, buffer->capacity());
- buffer->setRange(0, copied);
-}
-
-void SkipCutBuffer::submit(const sp<ABuffer>& buffer) {
- submitInternal(buffer);
-}
-
-void SkipCutBuffer::submit(const sp<MediaCodecBuffer>& buffer) {
- submitInternal(buffer);
-}
-
-void SkipCutBuffer::clear() {
- mWriteHead = mReadHead = 0;
- mFrontPadding = mSkip;
-}
-
-void SkipCutBuffer::write(const char *src, size_t num) {
- int32_t sizeused = (mWriteHead - mReadHead);
- if (sizeused < 0) sizeused += mCapacity;
-
- // Everything must fit. Make sure the buffer is a little larger than needed,
- // so there is no ambiguity as to whether mWriteHead == mReadHead means buffer
- // full or empty
- size_t available = mCapacity - sizeused - 32;
- if (available < num) {
- int32_t newcapacity = mCapacity + (num - available);
- char * newbuffer = new char[newcapacity];
- memcpy(newbuffer, mCutBuffer, mCapacity);
- delete [] mCutBuffer;
- mCapacity = newcapacity;
- mCutBuffer = newbuffer;
- ALOGV("reallocated buffer at size %d", newcapacity);
- }
-
- size_t copyfirst = (mCapacity - mWriteHead);
- if (copyfirst > num) copyfirst = num;
- if (copyfirst) {
- memcpy(mCutBuffer + mWriteHead, src, copyfirst);
- num -= copyfirst;
- src += copyfirst;
- mWriteHead += copyfirst;
- CHECK_LE(mWriteHead, mCapacity);
- if (mWriteHead == mCapacity) mWriteHead = 0;
- if (num) {
- memcpy(mCutBuffer, src, num);
- mWriteHead += num;
- }
- }
-}
-
-size_t SkipCutBuffer::read(char *dst, size_t num) {
- int32_t available = (mWriteHead - mReadHead);
- if (available < 0) available += mCapacity;
-
- available -= mBackPadding;
- if (available <=0) {
- return 0;
- }
- if (available < int32_t(num)) {
- num = available;
- }
-
- size_t copyfirst = (mCapacity - mReadHead);
- if (copyfirst > num) copyfirst = num;
- if (copyfirst) {
- memcpy(dst, mCutBuffer + mReadHead, copyfirst);
- num -= copyfirst;
- dst += copyfirst;
- mReadHead += copyfirst;
- CHECK_LE(mReadHead, mCapacity);
- if (mReadHead == mCapacity) mReadHead = 0;
- if (num) {
- memcpy(dst, mCutBuffer, num);
- mReadHead += num;
- }
- }
- return available;
-}
-
-size_t SkipCutBuffer::size() {
- int32_t available = (mWriteHead - mReadHead);
- if (available < 0) available += mCapacity;
- return available;
-}
-
-} // namespace android
diff --git a/media/sfplugin/SkipCutBuffer.h b/media/sfplugin/SkipCutBuffer.h
deleted file mode 100644
index 0fb5690..0000000
--- a/media/sfplugin/SkipCutBuffer.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Copyright (C) 2012 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef SKIP_CUT_BUFFER_H_
-
-#define SKIP_CUT_BUFFER_H_
-
-#include <media/MediaCodecBuffer.h>
-#include <media/stagefright/MediaBuffer.h>
-#include <media/stagefright/foundation/ABuffer.h>
-
-namespace android {
-
-/**
- * utility class to cut the start and end off a stream of data in MediaBuffers
- *
- */
-class SkipCutBuffer: public RefBase {
- public:
- // 'skip' is the number of frames to skip from the beginning
- // 'cut' is the number of frames to cut from the end
- // 'num16BitChannels' is the number of channels, which are assumed to be 16 bit wide each
- SkipCutBuffer(size_t skip, size_t cut, size_t num16Channels);
-
- // Submit one MediaBuffer for skipping and cutting. This may consume all or
- // some of the data in the buffer, or it may add data to it.
- // After this, the caller should continue processing the buffer as usual.
- void submit(MediaBuffer *buffer);
- void submit(const sp<ABuffer>& buffer); // same as above, but with an ABuffer
- void submit(const sp<MediaCodecBuffer>& buffer); // same as above, but with an ABuffer
- void clear();
- size_t size(); // how many bytes are currently stored in the buffer
-
- protected:
- virtual ~SkipCutBuffer();
-
- private:
- void write(const char *src, size_t num);
- size_t read(char *dst, size_t num);
- template <typename T>
- void submitInternal(const sp<T>& buffer);
- int32_t mSkip;
- int32_t mFrontPadding;
- int32_t mBackPadding;
- int32_t mWriteHead;
- int32_t mReadHead;
- int32_t mCapacity;
- char* mCutBuffer;
- DISALLOW_EVIL_CONSTRUCTORS(SkipCutBuffer);
-};
-
-} // namespace android
-
-#endif // OMX_CODEC_H_
diff --git a/media/sfplugin/tests/Android.bp b/media/sfplugin/tests/Android.bp
deleted file mode 100644
index 8a6992f..0000000
--- a/media/sfplugin/tests/Android.bp
+++ /dev/null
@@ -1,56 +0,0 @@
-cc_test {
- name: "ccodec_test",
-
- srcs: [
- "ReflectedParamUpdater_test.cpp",
- ],
-
- include_dirs: [
- "hardware/google/av/media/sfplugin",
- ],
-
- shared_libs: [
- "libstagefright_ccodec",
- "libstagefright_codec2",
- "libstagefright_foundation",
- "libutils",
- ],
-
- cflags: [
- "-Werror",
- "-Wall",
- ],
-}
-
-cc_test {
- name: "mc_sanity",
-
- srcs: [
- "MediaCodec_sanity_test.cpp",
- ],
-
- include_dirs: [
- "hardware/google/av/media/sfplugin",
- ],
-
- header_libs: [
- "libmediadrm_headers",
- ],
-
- shared_libs: [
- "libbinder",
- "libgui",
- "libmedia",
- "libmedia_omx",
- "libstagefright",
- "libstagefright_ccodec",
- "libstagefright_codec2",
- "libstagefright_foundation",
- "libutils",
- ],
-
- cflags: [
- "-Werror",
- "-Wall",
- ],
-}
diff --git a/media/sfplugin/tests/MediaCodec_sanity_test.cpp b/media/sfplugin/tests/MediaCodec_sanity_test.cpp
deleted file mode 100644
index 3c43f1f..0000000
--- a/media/sfplugin/tests/MediaCodec_sanity_test.cpp
+++ /dev/null
@@ -1,453 +0,0 @@
-/*
- * Copyright 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <stdlib.h>
-
-#include <algorithm>
-
-#include <binder/ProcessState.h>
-#include <gtest/gtest.h>
-#include <gui/Surface.h>
-#include <media/MediaCodecBuffer.h>
-#include <media/hardware/VideoAPI.h>
-#include <media/stagefright/MediaCodec.h>
-#include <media/stagefright/MediaCodecConstants.h>
-#include <media/stagefright/foundation/ABuffer.h>
-#include <media/stagefright/foundation/ALooper.h>
-#include <media/stagefright/foundation/AMessage.h>
-#include <mediadrm/ICrypto.h>
-
-namespace android {
-
-class MediaCodecSanityTest : public ::testing::Test {
-public:
- MediaCodecSanityTest()
- : looper(new ALooper),
- cfg(new AMessage),
- ifmt(new AMessage),
- ofmt(new AMessage) {
- ProcessState::self()->startThreadPool();
- looper->start();
- }
-
- ~MediaCodecSanityTest() {
- if (codec != nullptr) {
- codec->release();
- }
- looper->stop();
- }
-
- sp<ALooper> looper;
- sp<MediaCodec> codec;
- sp<AMessage> cfg;
- sp<AMessage> ifmt;
- sp<AMessage> ofmt;
-};
-
-const static size_t kLinearBufferSize = 1048576;
-
-// data for a codec input frame
-struct FrameData {
- const uint8_t *data;
- size_t size;
- template<size_t N>
- constexpr FrameData(const uint8_t(&data_)[N]) : data(data_), size(N) { }
-};
-
-// one yellow frame of 240x180 (albeit 4:4:4)
-const uint8_t avcStream_A1[] = { // IDR frame
- 0x00, 0x00, 0x00, 0x01, 0x67, 0x64, 0x00, 0x0d, 0xac, 0xd9, 0x41, 0x41, 0xfa, 0x10, 0x00, 0x00,
- 0x03, 0x00, 0x10, 0x00, 0x00, 0x03, 0x03, 0x20, 0xf1, 0x42, 0x99, 0x60,
-
- 0x00, 0x00, 0x00, 0x01, 0x68, 0xeb, 0xe3, 0xcb, 0x22, 0xc0,
-
- 0x00, 0x00, 0x01, 0x65, 0x88, 0x84, 0x00, 0x2b, 0xff, 0xfe, 0xd8, 0xe7, 0xf3, 0x2c, 0xa5, 0x60,
- 0xca, 0xbb, 0xf1, 0x5c, 0x44, 0x7c, 0x9a, 0xa5, 0xc3, 0xab, 0x2f, 0x77, 0x0a, 0x94, 0x0d, 0x19,
- 0x43, 0x3b, 0x4f, 0x25, 0xea, 0x66, 0x00, 0x01, 0x24, 0xcd, 0x35, 0x5f, 0xc2, 0x34, 0x89, 0xd1,
- 0xa5, 0x60, 0x09, 0x98, 0x00, 0x01, 0x1b, 0x0e, 0xcb, 0x0d, 0x04, 0x86, 0x94, 0xe2, 0x32, 0x3c,
- 0xdd, 0x0f,
-};
-
-FrameData avcStream_A[] __unused = { avcStream_A1 };
-
-// AVC stream of 2 yellow frames (240x180)
-const uint8_t avcStream_B1[] = { // IDR frame
- 0x00, 0x00, 0x00, 0x01, 0x67, 0x64, 0x00, 0x0c, 0xac, 0xd9, 0x41, 0x41, 0xfa, 0x10, 0x00, 0x00,
- 0x03, 0x00, 0x10, 0x00, 0x00, 0x03, 0x02, 0x80, 0xf1, 0x42, 0x99, 0x60,
-
- 0x00, 0x00, 0x00, 0x01, 0x68, 0xeb, 0xe3, 0xcb, 0x22, 0xc0,
-
- 0x00, 0x00, 0x01, 0x65, 0x88, 0x84, 0x00, 0x33, 0xff, 0xfe, 0xdf, 0x32, 0xf8, 0x14, 0xd6, 0x25,
- 0xd0, 0x74, 0x42, 0x50, 0x84, 0x6f, 0xf4, 0xc2, 0x5c, 0x76, 0x37, 0x17, 0x72, 0xac, 0x52, 0xfc,
- 0xd6, 0x1f, 0xd2, 0xd0, 0x60, 0xb2, 0x20, 0x00, 0x10, 0x3d, 0x2a, 0xc0, 0xe4, 0x27, 0xcb, 0xce,
- 0xea, 0x25, 0x00, 0x81, 0x00, 0x00, 0x0f, 0x40, 0xbc, 0x81, 0x15, 0xc1, 0x65, 0x20, 0x80, 0x81,
- 0x7a, 0x57, 0x51,
-};
-
-const uint8_t avcStream_B2[] = { // P frame
- 0x00, 0x00, 0x00, 0x01, 0x41, 0x9a, 0x21, 0x6c, 0x42, 0xbf, 0xfe, 0x38, 0x40, 0x00, 0x0d, 0x48,
-};
-
-FrameData avcStream_B[] = { avcStream_B1, avcStream_B2 };
-
-class MediaCodecInputBufferSizeTest : public MediaCodecSanityTest,
- public ::testing::WithParamInterface<int32_t> {
-};
-
-TEST_P(MediaCodecInputBufferSizeTest, TestAvcDecoder) {
- codec = MediaCodec::CreateByComponentName(looper, "c2.android.avc.decoder");
- cfg->setInt32("width", 320);
- cfg->setInt32("height", 240);
- cfg->setString("mime", MIMETYPE_VIDEO_AVC);
-
- const int32_t InputSize = GetParam();
- if (InputSize >= 0) {
- cfg->setInt32("max-input-size", InputSize);
- }
-
- EXPECT_EQ(codec->configure(cfg, nullptr, nullptr, 0), OK);
- EXPECT_EQ(codec->getInputFormat(&ifmt), OK);
- int32_t maxInputSize;
- ASSERT_TRUE(ifmt->findInt32("max-input-size", &maxInputSize));
- if (InputSize > 0) {
- EXPECT_EQ(maxInputSize, InputSize);
- } else {
- EXPECT_GE(maxInputSize, 1 << 20); // 1 MB
- }
- EXPECT_EQ(codec->start(), OK);
- size_t ix;
- EXPECT_EQ(codec->dequeueInputBuffer(&ix, 1000000), OK);
- sp<MediaCodecBuffer> buf;
- EXPECT_EQ(codec->getInputBuffer(ix, &buf), OK);
- EXPECT_GE(buf->size(), (size_t)maxInputSize);
- EXPECT_LE(buf->size(), (size_t)maxInputSize + 4096u);
-}
-
-TEST_P(MediaCodecInputBufferSizeTest, TestVideoDecoder) {
- codec = MediaCodec::CreateByComponentName(looper, "c2.android.vp8.decoder");
- cfg->setInt32("width", 320);
- cfg->setInt32("height", 240);
- cfg->setString("mime", MIMETYPE_VIDEO_VP8);
-
- const int32_t InputSize = GetParam();
- if (InputSize >= 0) {
- cfg->setInt32("max-input-size", InputSize);
- }
-
- EXPECT_EQ(codec->configure(cfg, nullptr, nullptr, 0), OK);
- EXPECT_EQ(codec->getInputFormat(&ifmt), OK);
- int32_t maxInputSize;
- ASSERT_TRUE(ifmt->findInt32("max-input-size", &maxInputSize));
- if (InputSize > 0) {
- EXPECT_EQ(maxInputSize, InputSize);
- } else {
- EXPECT_GE(maxInputSize, 1 << 20); // 1 MB
- }
- EXPECT_EQ(codec->start(), OK);
- size_t ix;
- EXPECT_EQ(codec->dequeueInputBuffer(&ix, 1000000), OK);
- sp<MediaCodecBuffer> buf;
- EXPECT_EQ(codec->getInputBuffer(ix, &buf), OK);
- EXPECT_GE(buf->size(), (size_t)maxInputSize);
- EXPECT_LE(buf->size(), (size_t)maxInputSize + 4096u);
-}
-
-TEST_P(MediaCodecInputBufferSizeTest, TestAudioDecoder) {
- codec = MediaCodec::CreateByComponentName(looper, "c2.android.aac.decoder");
- cfg->setInt32("sample-rate", 44100);
- cfg->setInt32("channel-count", 2);
- cfg->setString("mime", MIMETYPE_AUDIO_AAC);
-
- const int32_t InputSize = GetParam();
- if (InputSize >= 0) {
- cfg->setInt32("max-input-size", InputSize);
- }
-
- EXPECT_EQ(codec->configure(cfg, nullptr, nullptr, 0), OK);
- EXPECT_EQ(codec->getInputFormat(&ifmt), OK);
- int32_t maxInputSize;
- if (InputSize > 0) {
- ASSERT_TRUE(ifmt->findInt32("max-input-size", &maxInputSize));
- EXPECT_EQ(maxInputSize, InputSize);
- } else {
- if (ifmt->findInt32("max-input-size", &maxInputSize)) {
- EXPECT_EQ(maxInputSize, 1 << 19); // 512 KB
- }
- maxInputSize = kLinearBufferSize; // input size is set by channel
- }
-
- EXPECT_EQ(codec->start(), OK);
- size_t ix;
- EXPECT_EQ(codec->dequeueInputBuffer(&ix, 1000000), OK);
- sp<MediaCodecBuffer> buf;
- EXPECT_EQ(codec->getInputBuffer(ix, &buf), OK);
- EXPECT_GE(buf->size(), (size_t)maxInputSize);
- EXPECT_LE(buf->size(), (size_t)maxInputSize + 4096u);
-}
-
-INSTANTIATE_TEST_CASE_P(InputSizes, MediaCodecInputBufferSizeTest, ::testing::Values(-1, 1234, 12345678));
-
-TEST_F(MediaCodecSanityTest, TestAvcDecoderHdrStaticInfo) {
- codec = MediaCodec::CreateByComponentName(looper, "c2.android.avc.decoder");
- cfg->setInt32("width", 320);
- cfg->setInt32("height", 240);
- cfg->setString("mime", MIMETYPE_VIDEO_AVC);
- HDRStaticInfo info = { .mID = HDRStaticInfo::kType1, .sType1 = {
- .mR = { .x = 35400, .y = 14600 }, .mG = { .x = 8500, .y = 39850 },
- .mB = { .x = 6550, .y = 2300 }, .mW = { .x = 15635, .y = 16450 },
- .mMaxDisplayLuminance = 1000, .mMinDisplayLuminance = 1000,
- .mMaxContentLightLevel = 1000, .mMaxFrameAverageLightLevel = 120 }
- };
- cfg->setBuffer("hdr-static-info", ABuffer::CreateAsCopy(&info, sizeof(info)));
-
- EXPECT_EQ(codec->configure(cfg, nullptr, nullptr, 0), OK);
- EXPECT_EQ(codec->getOutputFormat(&ofmt), OK);
- sp<ABuffer> oinfo;
- ASSERT_TRUE(ofmt->findBuffer("hdr-static-info", &oinfo));
- ASSERT_EQ(oinfo->size(), sizeof(info));
- EXPECT_EQ(memcmp(oinfo->data(), &info, sizeof(info)), 0);
-
- EXPECT_EQ(codec->start(), OK);
- // assume we can submit all input before dequeuing output
- size_t frameIx = 0;
- size_t ix;
- sp<MediaCodecBuffer> buf;
- for (const FrameData &frame : avcStream_B) {
- EXPECT_EQ(codec->dequeueInputBuffer(&ix, 1000000), OK);
- EXPECT_EQ(codec->getInputBuffer(ix, &buf), OK);
- ASSERT_GE(buf->capacity(), frame.size);
- memcpy(buf->base(), frame.data, frame.size);
- EXPECT_EQ(buf->setRange(0, frame.size), OK);
- bool eos = ++frameIx == NELEM(avcStream_B);
- EXPECT_EQ(codec->queueInputBuffer(ix, 0, frame.size, frameIx * 33333,
- eos ? BUFFER_FLAG_END_OF_STREAM : 0), OK);
- }
-
- size_t offset, size;
- int64_t ts;
- uint32_t flags;
- bool mInfoFormatChangedOk = true;
- bool mInfoBuffersChangedOk = true;
- while (true) {
- status_t err = codec->dequeueOutputBuffer(&ix, &offset, &size, &ts, &flags, 1000000);
- if (err == INFO_FORMAT_CHANGED && mInfoFormatChangedOk) {
- mInfoFormatChangedOk = false;
- } else if (err == INFO_OUTPUT_BUFFERS_CHANGED && mInfoBuffersChangedOk) {
- mInfoBuffersChangedOk = false;
- } else {
- ASSERT_EQ(err, OK);
- break;
- }
- }
- EXPECT_EQ(codec->getOutputBuffer(ix, &buf), OK);
- EXPECT_EQ(codec->getOutputFormat(ix, &ofmt), OK);
- ASSERT_TRUE(ofmt->findBuffer("hdr-static-info", &oinfo));
- ASSERT_EQ(oinfo->size(), sizeof(info));
- EXPECT_EQ(memcmp(oinfo->data(), &info, sizeof(info)), 0);
-}
-
-TEST_F(MediaCodecSanityTest, TestVideoDecoderHdrStaticInfo) {
- codec = MediaCodec::CreateByComponentName(looper, "c2.android.mpeg4.decoder");
- cfg->setInt32("width", 320);
- cfg->setInt32("height", 240);
- cfg->setString("mime", MIMETYPE_VIDEO_MPEG4);
- HDRStaticInfo info = { .mID = HDRStaticInfo::kType1, .sType1 = {
- .mR = { .x = 35400, .y = 14600 }, .mG = { .x = 8500, .y = 39850 },
- .mB = { .x = 6550, .y = 2300 }, .mW = { .x = 15635, .y = 16450 },
- .mMaxDisplayLuminance = 1000, .mMinDisplayLuminance = 1000,
- .mMaxContentLightLevel = 1000, .mMaxFrameAverageLightLevel = 120 }
- };
- cfg->setBuffer("hdr-static-info", ABuffer::CreateAsCopy(&info, sizeof(info)));
-
- EXPECT_EQ(codec->configure(cfg, nullptr, nullptr, 0), OK);
- EXPECT_EQ(codec->getOutputFormat(&ofmt), OK);
- sp<ABuffer> oinfo;
- ASSERT_TRUE(ofmt->findBuffer("hdr-static-info", &oinfo));
- ASSERT_EQ(oinfo->size(), sizeof(info));
- EXPECT_EQ(memcmp(oinfo->data(), &info, sizeof(info)), 0);
-}
-
-class MediaCodecByteBufferTest : public MediaCodecSanityTest,
- public ::testing::WithParamInterface<int32_t> {
-};
-
-TEST_P(MediaCodecByteBufferTest, TestVideoDecoder420Planar) {
- codec = MediaCodec::CreateByComponentName(looper, "c2.android.avc.decoder");
-// codec = MediaCodec::CreateByComponentName(looper, "OMX.google.h264.decoder");
- cfg->setInt32("width", 320);
- cfg->setInt32("height", 240);
- cfg->setString("mime", MIMETYPE_VIDEO_AVC);
- const int32_t Color = GetParam();
- if (Color >= 0) {
- cfg->setInt32("color-format", Color);
- }
- int32_t xcolor = Color == -1 ? COLOR_FormatYUV420Planar : Color;
-
- EXPECT_EQ(codec->configure(cfg, nullptr, nullptr, 0), OK);
- EXPECT_EQ(codec->getOutputFormat(&ofmt), OK);
- int32_t ocolor = -1;
- EXPECT_TRUE(ofmt->findInt32("color-format", &ocolor));
- EXPECT_EQ(ocolor, xcolor);
-
- EXPECT_EQ(codec->start(), OK);
- // assume we can submit all input before dequeuing output
- size_t frameIx = 0;
- size_t ix;
- sp<MediaCodecBuffer> buf;
- for (const FrameData &frame : avcStream_A) {
- EXPECT_EQ(codec->dequeueInputBuffer(&ix, 1000000), OK);
- EXPECT_EQ(codec->getInputBuffer(ix, &buf), OK);
- ASSERT_GE(buf->capacity(), frame.size);
- memcpy(buf->base(), frame.data, frame.size);
- EXPECT_EQ(buf->setRange(0, frame.size), OK);
- bool eos = ++frameIx == NELEM(avcStream_A);
- EXPECT_EQ(codec->queueInputBuffer(ix, 0, frame.size, frameIx * 33333,
- eos ? BUFFER_FLAG_END_OF_STREAM : 0), OK);
- }
-
- size_t offset, size;
- int64_t ts;
- uint32_t flags;
- bool mInfoFormatChangedOk = true;
- bool mInfoBuffersChangedOk = true;
- while (true) {
- status_t err = codec->dequeueOutputBuffer(&ix, &offset, &size, &ts, &flags, 1000000);
- if (err == INFO_FORMAT_CHANGED && mInfoFormatChangedOk) {
- mInfoFormatChangedOk = false;
- } else if (err == INFO_OUTPUT_BUFFERS_CHANGED && mInfoBuffersChangedOk) {
- mInfoBuffersChangedOk = false;
- } else {
- ASSERT_EQ(err, OK);
- break;
- }
- }
- EXPECT_EQ(codec->getOutputBuffer(ix, &buf), OK);
- EXPECT_EQ(codec->getOutputFormat(ix, &ofmt), OK);
- ASSERT_TRUE(ofmt->findInt32("color-format", &ocolor));
- EXPECT_EQ(ocolor, xcolor) << ofmt->debugString(8).c_str() << buf->meta()->debugString(8).c_str();
- // expect an image-data in both format and meta
- sp<ABuffer> imgBuf, imgBuf2;
- ASSERT_TRUE(ofmt->findBuffer("image-data", &imgBuf));
- ASSERT_TRUE(buf->meta()->findBuffer("image-data", &imgBuf2));
- EXPECT_EQ(imgBuf->size(), sizeof(MediaImage2));
- ASSERT_EQ(imgBuf->size(), imgBuf2->size());
- EXPECT_EQ(0, memcmp(imgBuf->data(), imgBuf2->data(), imgBuf->size()));
- MediaImage2 *img = (MediaImage2*)imgBuf->data();
- EXPECT_EQ(img->mType, img->MEDIA_IMAGE_TYPE_YUV);
- EXPECT_EQ(img->mNumPlanes, 3u);
- EXPECT_EQ(img->mWidth, 320u);
- EXPECT_EQ(img->mHeight, 240u);
- EXPECT_EQ(img->mBitDepth, 8u);
- EXPECT_EQ(img->mBitDepthAllocated, 8u);
-
- // read strides from format
- int32_t stride, vstride;
- ofmt->findInt32("stride", &stride) || ofmt->findInt32("width", &stride);
- ofmt->findInt32("slice-height", &vstride) || ofmt->findInt32("height", &vstride);
-
- EXPECT_EQ(img->mPlane[img->Y].mHorizSubsampling, 1u);
- EXPECT_EQ(img->mPlane[img->Y].mVertSubsampling, 1u);
- EXPECT_EQ(img->mPlane[img->U].mHorizSubsampling, 2u);
- EXPECT_EQ(img->mPlane[img->U].mVertSubsampling, 2u);
- EXPECT_EQ(img->mPlane[img->V].mHorizSubsampling, 2u);
- EXPECT_EQ(img->mPlane[img->V].mVertSubsampling, 2u);
-
- switch (xcolor) {
- // defined formats
- case COLOR_FormatYUV420Planar:
- case COLOR_FormatYUV420PackedPlanar:
- EXPECT_EQ(img->mPlane[img->Y].mOffset, 0u);
- EXPECT_EQ(img->mPlane[img->Y].mColInc, 1);
- EXPECT_EQ(img->mPlane[img->Y].mRowInc, stride);
-
- EXPECT_EQ(img->mPlane[img->U].mOffset, (uint32_t)(stride * vstride));
- EXPECT_EQ(img->mPlane[img->U].mColInc, 1);
- EXPECT_EQ(img->mPlane[img->U].mRowInc, stride / 2);
-
- EXPECT_EQ(img->mPlane[img->V].mOffset, (uint32_t)(stride * vstride * 5 / 4));
- EXPECT_EQ(img->mPlane[img->V].mColInc, 1);
- EXPECT_EQ(img->mPlane[img->V].mRowInc, stride / 2);
-
- EXPECT_GE(size, (size_t)(stride * vstride * 5 / 4 + stride / 2 * 119 + 160));
- EXPECT_LE(size, (size_t)(stride * vstride * 3 / 2));
- break;
-
- case COLOR_FormatYUV420SemiPlanar:
- case COLOR_FormatYUV420PackedSemiPlanar:
- EXPECT_EQ(img->mPlane[img->Y].mOffset, 0u);
- EXPECT_EQ(img->mPlane[img->Y].mColInc, 1);
- EXPECT_EQ(img->mPlane[img->Y].mRowInc, stride);
-
- EXPECT_EQ(img->mPlane[img->U].mOffset, (uint32_t)(stride * vstride));
- EXPECT_EQ(img->mPlane[img->U].mColInc, 2);
- EXPECT_EQ(img->mPlane[img->U].mRowInc, stride);
-
- EXPECT_EQ(img->mPlane[img->V].mOffset, (uint32_t)(stride * vstride + 1));
- EXPECT_EQ(img->mPlane[img->V].mColInc, 2);
- EXPECT_EQ(img->mPlane[img->V].mRowInc, stride);
-
- EXPECT_GE(size, (size_t)(stride * vstride + stride * 119 + 320));
- EXPECT_LE(size, (size_t)(stride * vstride * 3 / 2));
- break;
-
- case COLOR_FormatYUV420Flexible:
- // anything goes, but stride should match Y plane
- EXPECT_EQ(img->mPlane[img->Y].mRowInc, stride);
-
- EXPECT_GE(size,
- std::max({
- img->mPlane[img->Y].mOffset + 239 * img->mPlane[img->Y].mRowInc
- + 319 * img->mPlane[img->Y].mColInc + 1,
- img->mPlane[img->U].mOffset + 119 * img->mPlane[img->U].mRowInc
- + 159 * img->mPlane[img->U].mColInc + 1,
- img->mPlane[img->V].mOffset + 119 * img->mPlane[img->V].mRowInc
- + 159 * img->mPlane[img->V].mColInc + 1 }));
- break;
-
- default:
- break;
- }
-
- // validate all pixels
-#if 0
- fprintf(stderr, "MediaImage { F(%ux%u) @%u+%d+%d @%u+%d+%d @%u+%d+%d }\n",
- img->mWidth, img->mHeight,
- img->mPlane[0].mOffset, img->mPlane[0].mColInc, img->mPlane[0].mRowInc,
- img->mPlane[1].mOffset, img->mPlane[1].mColInc, img->mPlane[1].mRowInc,
- img->mPlane[2].mOffset, img->mPlane[2].mColInc, img->mPlane[2].mRowInc);
-#endif
- for (ix = 0; ix < 3; ++ix) {
- const static uint8_t expected[] = { 210, 16, 146 };
- for (uint32_t y = 0; y < img->mHeight / img->mPlane[ix].mVertSubsampling ; ++y) {
- for (uint32_t x = 0; x < img->mWidth / img->mPlane[ix].mHorizSubsampling; ++x) {
- uint8_t val = buf->data()[img->mPlane[ix].mOffset + img->mPlane[ix].mColInc * x
- + img->mPlane[ix].mRowInc * y];
- ASSERT_EQ(val, expected[ix]) << "incorrect value for plane "
- << ix << " at x=" << x << ", y=" << y;
- }
- }
- }
-}
-
-INSTANTIATE_TEST_CASE_P(InputSizes, MediaCodecByteBufferTest, ::testing::Values(
- -1,
- COLOR_FormatYUV420Planar,
- COLOR_FormatYUV420SemiPlanar,
- COLOR_FormatYUV420PackedPlanar,
- COLOR_FormatYUV420PackedSemiPlanar,
- COLOR_FormatYUV420Flexible));
-
-} // namespace android
diff --git a/media/sfplugin/tests/ReflectedParamUpdater_test.cpp b/media/sfplugin/tests/ReflectedParamUpdater_test.cpp
deleted file mode 100644
index c7db0e3..0000000
--- a/media/sfplugin/tests/ReflectedParamUpdater_test.cpp
+++ /dev/null
@@ -1,352 +0,0 @@
-/*
- * Copyright 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#define __C2_GENERATE_GLOBAL_VARS__
-
-#include <set>
-
-#include <gtest/gtest.h>
-
-#include <C2ParamDef.h>
-
-#include <media/stagefright/foundation/ABuffer.h>
-#include <media/stagefright/foundation/hexdump.h>
-#include <ReflectedParamUpdater.h>
-
-namespace android {
-
-namespace {
-
-enum {
- kParamIndexTestStart = 0x1000,
- kParamIndexInt,
- kParamIndexString,
- kParamIndexComposite,
- kParamIndexFlexString,
-
- kParamIndexLong = C2Param::TYPE_INDEX_VENDOR_START,
-};
-
-typedef C2GlobalParam<C2Info, C2Int32Value, kParamIndexInt> C2IntInfo;
-typedef C2GlobalParam<C2Info, C2Int64Value, kParamIndexLong> C2LongInfo;
-
-struct C2FixedSizeStringStruct {
- char value[12];
-
- DEFINE_AND_DESCRIBE_BASE_C2STRUCT(FixedSizeString)
- C2FIELD(value, "value")
-};
-typedef C2GlobalParam<C2Info, C2FixedSizeStringStruct, kParamIndexString> C2StringInfo;
-
-struct C2CompositeStruct {
- int32_t i32;
- uint64_t u64;
- char str[12];
- uint8_t blob[8];
- uint8_t flexBlob[];
-
- C2CompositeStruct() = default;
-
- DEFINE_AND_DESCRIBE_BASE_FLEX_C2STRUCT(Composite, flexBlob)
- C2FIELD(i32, "i32")
- C2FIELD(u64, "u64")
- C2FIELD(str, "str")
- C2FIELD(blob, "blob")
- C2FIELD(flexBlob, "flex-blob")
-};
-static_assert(C2CompositeStruct::FLEX_SIZE == 1, "");
-static_assert(_C2FlexHelper<C2CompositeStruct>::FLEX_SIZE == 1, "");
-typedef C2GlobalParam<C2Info, C2CompositeStruct, kParamIndexComposite> C2CompositeInfo;
-
-typedef C2GlobalParam<C2Info, C2StringValue, kParamIndexFlexString> C2FlexStringInfo;
-
-#define SUPPORTED_TYPES \
- C2IntInfo, \
- C2LongInfo, \
- C2StringInfo, \
- C2CompositeInfo, \
- C2FlexStringInfo
-
-template<typename... TYPES> struct describe_impl;
-template<typename T, typename... TYPES> struct describe_impl<T, TYPES...> {
- static std::unique_ptr<C2StructDescriptor> describe(C2Param::CoreIndex index) {
- if (index == T::CORE_INDEX) {
- return std::make_unique<C2StructDescriptor>(T::CORE_INDEX, T::FieldList());
- } else {
- return describe_impl<TYPES...>::describe(index);
- }
- }
-};
-
-template<> struct describe_impl<> {
- static std::unique_ptr<C2StructDescriptor> describe(C2Param::CoreIndex) {
- return nullptr;
- }
-};
-
-template<typename T> const char *GetName() { return nullptr; }
-template<> const char *GetName<C2IntInfo>() { return "int"; }
-template<> const char *GetName<C2LongInfo>() { return "long"; }
-template<> const char *GetName<C2StringInfo>() { return "string"; }
-template<> const char *GetName<C2CompositeInfo>() { return "composite"; }
-template<> const char *GetName<C2FlexStringInfo>() { return "flex-string"; }
-
-template<typename... TYPES> struct fill_descriptors_impl;
-template<typename T, typename... TYPES> struct fill_descriptors_impl<T, TYPES...> {
- static void fill(std::vector<std::shared_ptr<C2ParamDescriptor>> *vec) {
- fill_descriptors_impl<TYPES...>::fill(vec);
- vec->push_back(std::make_shared<C2ParamDescriptor>(
- T::PARAM_TYPE, C2ParamDescriptor::IS_PERSISTENT, GetName<T>()));
- }
-};
-
-template<> struct fill_descriptors_impl<> {
- static void fill(std::vector<std::shared_ptr<C2ParamDescriptor>> *) {}
-};
-
-template<typename T> T *CastParam(const std::unique_ptr<C2Param> ¶m) {
- return (T *)param.get();
-}
-
-class ParamReflector : public C2ParamReflector {
-public:
- ParamReflector() = default;
- ~ParamReflector() override = default;
-
- std::unique_ptr<C2StructDescriptor> describe(C2Param::CoreIndex paramIndex) const override {
- return describe_impl<SUPPORTED_TYPES>::describe(paramIndex);
- }
-};
-
-} // namespace
-
-class ReflectedParamUpdaterTest : public ::testing::Test {
-public:
- ReflectedParamUpdaterTest() : mReflector(new ParamReflector) {
- fill_descriptors_impl<SUPPORTED_TYPES>::fill(&mDescriptors);
- }
-
- std::shared_ptr<C2ParamReflector> mReflector;
- std::vector<std::shared_ptr<C2ParamDescriptor>> mDescriptors;
-};
-
-TEST_F(ReflectedParamUpdaterTest, SingleValueTest) {
- ReflectedParamUpdater updater;
-
- ReflectedParamUpdater::Dict msg;
- msg.emplace("int.value", int32_t(12));
- msg.emplace("vendor.long.value", int64_t(34));
-
- updater.addParamDesc(mReflector, mDescriptors);
-
- std::vector<C2Param::Index> indices;
- updater.getParamIndicesFromMessage(msg, &indices);
- EXPECT_EQ(1, std::count_if(indices.begin(), indices.end(),
- [](const auto &value) { return (uint32_t)value == C2IntInfo::PARAM_TYPE; }));
- EXPECT_EQ(1, std::count_if(indices.begin(), indices.end(),
- [](const auto &value) { return (uint32_t)value == C2LongInfo::PARAM_TYPE; }));
- EXPECT_EQ(0, std::count_if(indices.begin(), indices.end(),
- [](const auto &value) { return (uint32_t)value == C2StringInfo::PARAM_TYPE; }));
- EXPECT_EQ(0, std::count_if(indices.begin(), indices.end(),
- [](const auto &value) { return (uint32_t)value == C2CompositeInfo::PARAM_TYPE; }));
- EXPECT_EQ(0, std::count_if(indices.begin(), indices.end(),
- [](const auto &value) { return (uint32_t)value == C2FlexStringInfo::PARAM_TYPE; }));
-
- std::vector<std::unique_ptr<C2Param>> params;
- params.emplace_back(new C2IntInfo);
- params.emplace_back(new C2LongInfo);
- EXPECT_EQ(0, CastParam<C2IntInfo>(params[0])->value);
- EXPECT_EQ(0, CastParam<C2LongInfo>(params[1])->value);
-
- updater.updateParamsFromMessage(msg, ¶ms);
- EXPECT_EQ(12, CastParam<C2IntInfo>(params[0])->value);
- EXPECT_EQ(34, CastParam<C2LongInfo>(params[1])->value);
-
- C2Value c2Value;
- int32_t int32Value = 0;
- int64_t int64Value = 0;
- msg = updater.getParams(params);
- ASSERT_EQ(1u, msg.count("int.value"));
- EXPECT_EQ(true, msg["int.value"].find(&c2Value));
- EXPECT_EQ(true, c2Value.get(&int32Value));
- EXPECT_EQ(12, int32Value);
-
- ASSERT_EQ(1u, msg.count("vendor.long.value"));
- EXPECT_EQ(true, msg["vendor.long.value"].find(&c2Value));
- EXPECT_EQ(true, c2Value.get(&int64Value));
- EXPECT_EQ(34, int64Value);
-}
-
-TEST_F(ReflectedParamUpdaterTest, StringTest) {
- ReflectedParamUpdater updater;
-
- ReflectedParamUpdater::Dict msg;
- msg.emplace("string.value", AString("56"));
- msg.emplace("flex-string.value", AString("Some string"));
- updater.addParamDesc(mReflector, mDescriptors);
-
- std::vector<C2Param::Index> indices;
- updater.getParamIndicesFromMessage(msg, &indices);
- EXPECT_EQ(0, std::count_if(indices.begin(), indices.end(),
- [](const auto &value) { return (uint32_t)value == C2IntInfo::PARAM_TYPE; }));
- EXPECT_EQ(0, std::count_if(indices.begin(), indices.end(),
- [](const auto &value) { return (uint32_t)value == C2LongInfo::PARAM_TYPE; }));
- EXPECT_EQ(1, std::count_if(indices.begin(), indices.end(),
- [](const auto &value) { return (uint32_t)value == C2StringInfo::PARAM_TYPE; }));
- EXPECT_EQ(0, std::count_if(indices.begin(), indices.end(),
- [](const auto &value) { return (uint32_t)value == C2CompositeInfo::PARAM_TYPE; }));
- EXPECT_EQ(1, std::count_if(indices.begin(), indices.end(),
- [](const auto &value) { return (uint32_t)value == C2FlexStringInfo::PARAM_TYPE; }));
-
- std::vector<std::unique_ptr<C2Param>> params;
- params.emplace_back(new C2StringInfo);
- EXPECT_EQ(0, CastParam<C2StringInfo>(params[0])->value[0]);
- params.emplace_back(C2FlexStringInfo::AllocUnique(0));
- EXPECT_EQ(0u, CastParam<C2FlexStringInfo>(params[1])->flexCount());
- char *flexStringData = &CastParam<C2FlexStringInfo>(params[1])->m.value[0];
-
- updater.updateParamsFromMessage(msg, ¶ms);
- EXPECT_STREQ("56", CastParam<C2StringInfo>(params[0])->value);
- EXPECT_EQ(12u, CastParam<C2FlexStringInfo>(params[0])->flexCount());
- EXPECT_STREQ("Some string", CastParam<C2FlexStringInfo>(params[1])->m.value);
- EXPECT_NE(flexStringData, &CastParam<C2FlexStringInfo>(params[1])->m.value[0]);
- flexStringData = &CastParam<C2FlexStringInfo>(params[1])->m.value[0];
-
- // verify truncation and in-place update
- msg["string.value"] = ReflectedParamUpdater::Value(AString("1234567890ABCDE"));
- msg["flex-string.value"] = ReflectedParamUpdater::Value(AString("abc"));
- updater.updateParamsFromMessage(msg, ¶ms);
- EXPECT_STREQ("1234567890A", CastParam<C2StringInfo>(params[0])->value);
- EXPECT_EQ(4u, CastParam<C2FlexStringInfo>(params[1])->flexCount());
- EXPECT_STREQ("abc", CastParam<C2FlexStringInfo>(params[1])->m.value);
- EXPECT_EQ(flexStringData, &CastParam<C2FlexStringInfo>(params[1])->m.value[0]);
-
- AString strValue;
- msg = updater.getParams(params);
- ASSERT_EQ(1u, msg.count("string.value"));
- EXPECT_EQ(true, msg["string.value"].find(&strValue));
- EXPECT_STREQ("1234567890A", strValue.c_str());
-
- ASSERT_EQ(1u, msg.count("flex-string.value"));
- EXPECT_EQ(true, msg["flex-string.value"].find(&strValue));
- EXPECT_STREQ("abc", strValue.c_str());
-}
-
-TEST_F(ReflectedParamUpdaterTest, CompositeTest) {
- ReflectedParamUpdater updater;
-
- ReflectedParamUpdater::Dict msg;
- msg.emplace("composite.i32", int32_t(78));
- msg.emplace("composite.u64", int64_t(910));
- msg.emplace("composite.str", AString("1112"));
- msg.emplace("composite.blob", ABuffer::CreateAsCopy("buffer08", 8));
- msg.emplace("composite.flex-blob", ABuffer::CreateAsCopy("flex-buffer-14", 14));
-
- updater.addParamDesc(mReflector, mDescriptors);
-
- std::vector<C2Param::Index> indices;
- updater.getParamIndicesFromMessage(msg, &indices);
- EXPECT_EQ(0, std::count_if(indices.begin(), indices.end(),
- [](const auto &value) { return (uint32_t)value == C2IntInfo::PARAM_TYPE; }));
- EXPECT_EQ(0, std::count_if(indices.begin(), indices.end(),
- [](const auto &value) { return (uint32_t)value == C2LongInfo::PARAM_TYPE; }));
- EXPECT_EQ(0, std::count_if(indices.begin(), indices.end(),
- [](const auto &value) { return (uint32_t)value == C2StringInfo::PARAM_TYPE; }));
- EXPECT_EQ(1, std::count_if(indices.begin(), indices.end(),
- [](const auto &value) { return (uint32_t)value == C2CompositeInfo::PARAM_TYPE; }));
-
- std::vector<std::unique_ptr<C2Param>> params;
- params.emplace_back(C2CompositeInfo::AllocUnique(0));
- EXPECT_EQ(0, CastParam<C2CompositeInfo>(params[0])->m.i32);
- EXPECT_EQ(0u, CastParam<C2CompositeInfo>(params[0])->m.u64);
- EXPECT_EQ(0, CastParam<C2CompositeInfo>(params[0])->m.str[0]);
- EXPECT_EQ(0, memcmp("\0\0\0\0\0\0\0\0", CastParam<C2CompositeInfo>(params[0])->m.blob, 8));
- EXPECT_EQ(0u, CastParam<C2CompositeInfo>(params[0])->flexCount());
- uint8_t *flexBlobData = &CastParam<C2CompositeInfo>(params[0])->m.flexBlob[0];
-
- updater.updateParamsFromMessage(msg, ¶ms);
- EXPECT_EQ(78, CastParam<C2CompositeInfo>(params[0])->m.i32);
- EXPECT_EQ(910u, CastParam<C2CompositeInfo>(params[0])->m.u64);
- EXPECT_STREQ("1112", CastParam<C2CompositeInfo>(params[0])->m.str);
- EXPECT_EQ(0, memcmp("buffer08", CastParam<C2CompositeInfo>(params[0])->m.blob, 8));
- AString hex;
- hexdump(CastParam<C2CompositeInfo>(params[0])->m.blob, 8, 0, &hex);
- printf("%s\n", hex.c_str());
- ASSERT_EQ(14u, CastParam<C2CompositeInfo>(params[0])->flexCount());
- EXPECT_EQ(0, memcmp("flex-buffer-14", CastParam<C2CompositeInfo>(params[0])->m.flexBlob, 14));
- EXPECT_NE(flexBlobData, &CastParam<C2CompositeInfo>(params[0])->m.flexBlob[0]);
- flexBlobData = &CastParam<C2CompositeInfo>(params[0])->m.flexBlob[0];
-
- // test setting and zero extending shorter blob than allowed
- msg.clear();
- msg.emplace("composite.blob", ABuffer::CreateAsCopy("buf05", 5));
- updater.updateParamsFromMessage(msg, ¶ms);
- EXPECT_EQ(0, memcmp("buf05\0\0\0", CastParam<C2CompositeInfo>(params[0])->m.blob, 8));
- ASSERT_EQ(14u, CastParam<C2CompositeInfo>(params[0])->flexCount());
- EXPECT_EQ(0, memcmp("flex-buffer-14", CastParam<C2CompositeInfo>(params[0])->m.flexBlob, 14));
- EXPECT_EQ(flexBlobData, &CastParam<C2CompositeInfo>(params[0])->m.flexBlob[0]);
-
- // test setting and trimming larger blob than allowed
- msg.clear();
- msg.emplace("composite.blob", ABuffer::CreateAsCopy("ReallyLongBuffer", 16));
- updater.updateParamsFromMessage(msg, ¶ms);
- EXPECT_EQ(0, memcmp("ReallyLo", CastParam<C2CompositeInfo>(params[0])->m.blob, 8));
- ASSERT_EQ(14u, CastParam<C2CompositeInfo>(params[0])->flexCount());
- EXPECT_EQ(0, memcmp("flex-buffer-14", CastParam<C2CompositeInfo>(params[0])->m.flexBlob, 14));
- EXPECT_EQ(flexBlobData, &CastParam<C2CompositeInfo>(params[0])->m.flexBlob[0]);
-
- // test trimming flex blob in-place
- msg.clear();
- msg.emplace("composite.flex-blob", ABuffer::CreateAsCopy("buf05", 5));
- updater.updateParamsFromMessage(msg, ¶ms);
- ASSERT_EQ(5u, CastParam<C2CompositeInfo>(params[0])->flexCount());
- EXPECT_EQ(0, memcmp("buf05", CastParam<C2CompositeInfo>(params[0])->m.flexBlob, 5));
- EXPECT_EQ(flexBlobData, &CastParam<C2CompositeInfo>(params[0])->m.flexBlob[0]);
-}
-
-TEST_F(ReflectedParamUpdaterTest, CompositePartialTest) {
- ReflectedParamUpdater updater;
-
- ReflectedParamUpdater::Dict msg;
- msg.emplace("composite.i32", C2Value(1314));
- msg.emplace("composite.str", AString("1516"));
-
- updater.addParamDesc(mReflector, mDescriptors);
-
- std::vector<C2Param::Index> indices;
- updater.getParamIndicesFromMessage(msg, &indices);
- EXPECT_EQ(0, std::count_if(indices.begin(), indices.end(),
- [](const auto &value) { return (uint32_t)value == C2IntInfo::PARAM_TYPE; }));
- EXPECT_EQ(0, std::count_if(indices.begin(), indices.end(),
- [](const auto &value) { return (uint32_t)value == C2LongInfo::PARAM_TYPE; }));
- EXPECT_EQ(0, std::count_if(indices.begin(), indices.end(),
- [](const auto &value) { return (uint32_t)value == C2StringInfo::PARAM_TYPE; }));
- EXPECT_EQ(1, std::count_if(indices.begin(), indices.end(),
- [](const auto &value) { return (uint32_t)value == C2CompositeInfo::PARAM_TYPE; }));
-
- std::vector<std::unique_ptr<C2Param>> params;
- params.emplace_back(C2CompositeInfo::AllocUnique(12u));
- EXPECT_EQ(0, CastParam<C2CompositeInfo>(params[0])->m.i32);
- EXPECT_EQ(0u, CastParam<C2CompositeInfo>(params[0])->m.u64);
- EXPECT_EQ(0, CastParam<C2CompositeInfo>(params[0])->m.str[0]);
-
- updater.updateParamsFromMessage(msg, ¶ms);
- EXPECT_EQ(1314, CastParam<C2CompositeInfo>(params[0])->m.i32);
- EXPECT_EQ(0u, CastParam<C2CompositeInfo>(params[0])->m.u64);
- EXPECT_STREQ("1516", CastParam<C2CompositeInfo>(params[0])->m.str);
-}
-
-} // namespace android
diff --git a/media/sfplugin/utils/Android.bp b/media/sfplugin/utils/Android.bp
deleted file mode 100644
index fb5d9e4..0000000
--- a/media/sfplugin/utils/Android.bp
+++ /dev/null
@@ -1,40 +0,0 @@
-cc_library_shared {
- name: "libstagefright_ccodec_utils",
- vendor_available: true,
-
- srcs: [
- "Codec2BufferUtils.cpp",
- "Codec2Mapper.cpp",
- ],
-
- cflags: [
- "-Werror",
- "-Wall",
- ],
-
- export_include_dirs: [
- ".",
- ],
-
- shared_libs: [
- "libbase",
- "libcutils",
- "liblog",
- "libstagefright_codec2",
- "libstagefright_codec2_vndk",
- "libstagefright_foundation",
- "libutils",
- ],
-
- static_libs: [
- "libyuv_static",
- ],
-
- sanitize: {
- cfi: true,
- misc_undefined: [
- "unsigned-integer-overflow",
- "signed-integer-overflow",
- ],
- },
-}
diff --git a/media/sfplugin/utils/Codec2BufferUtils.cpp b/media/sfplugin/utils/Codec2BufferUtils.cpp
deleted file mode 100644
index 6b8663f..0000000
--- a/media/sfplugin/utils/Codec2BufferUtils.cpp
+++ /dev/null
@@ -1,533 +0,0 @@
-/*
- * Copyright 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "Codec2BufferUtils"
-#include <utils/Log.h>
-
-#include <libyuv.h>
-
-#include <list>
-#include <mutex>
-
-#include <media/hardware/HardwareAPI.h>
-#include <media/stagefright/foundation/AUtils.h>
-
-#include <C2Debug.h>
-
-#include "Codec2BufferUtils.h"
-
-namespace android {
-
-namespace {
-
-/**
- * A flippable, optimizable memcpy. Constructs such as (from ? src : dst) do not work as the results are
- * always const.
- */
-template<bool ToA, size_t S>
-struct MemCopier {
- template<typename A, typename B>
- inline static void copy(A *a, const B *b, size_t size) {
- __builtin_memcpy(a, b, size);
- }
-};
-
-template<size_t S>
-struct MemCopier<false, S> {
- template<typename A, typename B>
- inline static void copy(const A *a, B *b, size_t size) {
- MemCopier<true, S>::copy(b, a, size);
- }
-};
-
-/**
- * Copies between a MediaImage and a graphic view.
- *
- * \param ToMediaImage whether to copy to (or from) the MediaImage
- * \param view graphic view (could be ConstGraphicView or GraphicView depending on direction)
- * \param img MediaImage data
- * \param imgBase base of MediaImage (could be const uint8_t* or uint8_t* depending on direction)
- */
-template<bool ToMediaImage, typename View, typename ImagePixel>
-static status_t _ImageCopy(View &view, const MediaImage2 *img, ImagePixel *imgBase) {
- // TODO: more efficient copying --- e.g. copy interleaved planes together, etc.
- const C2PlanarLayout &layout = view.layout();
- const size_t bpp = divUp(img->mBitDepthAllocated, 8u);
-
- for (uint32_t i = 0; i < layout.numPlanes; ++i) {
- typename std::conditional<ToMediaImage, uint8_t, const uint8_t>::type *imgRow =
- imgBase + img->mPlane[i].mOffset;
- typename std::conditional<ToMediaImage, const uint8_t, uint8_t>::type *viewRow =
- viewRow = view.data()[i];
- const C2PlaneInfo &plane = layout.planes[i];
- if (plane.colSampling != img->mPlane[i].mHorizSubsampling
- || plane.rowSampling != img->mPlane[i].mVertSubsampling
- || plane.allocatedDepth != img->mBitDepthAllocated
- || plane.allocatedDepth < plane.bitDepth
- // MediaImage only supports MSB values
- || plane.rightShift != plane.allocatedDepth - plane.bitDepth
- || (bpp > 1 && plane.endianness != plane.NATIVE)) {
- return BAD_VALUE;
- }
-
- uint32_t planeW = img->mWidth / plane.colSampling;
- uint32_t planeH = img->mHeight / plane.rowSampling;
-
- bool canCopyByRow = (plane.colInc == 1) && (img->mPlane[i].mColInc == 1);
- bool canCopyByPlane = canCopyByRow && (plane.rowInc == img->mPlane[i].mRowInc);
- if (canCopyByPlane) {
- MemCopier<ToMediaImage, 0>::copy(imgRow, viewRow, plane.rowInc * planeH);
- } else if (canCopyByRow) {
- for (uint32_t row = 0; row < planeH; ++row) {
- MemCopier<ToMediaImage, 0>::copy(
- imgRow, viewRow, std::min(plane.rowInc, img->mPlane[i].mRowInc));
- imgRow += img->mPlane[i].mRowInc;
- viewRow += plane.rowInc;
- }
- } else {
- for (uint32_t row = 0; row < planeH; ++row) {
- decltype(imgRow) imgPtr = imgRow;
- decltype(viewRow) viewPtr = viewRow;
- for (uint32_t col = 0; col < planeW; ++col) {
- MemCopier<ToMediaImage, 0>::copy(imgPtr, viewPtr, bpp);
- imgPtr += img->mPlane[i].mColInc;
- viewPtr += plane.colInc;
- }
- imgRow += img->mPlane[i].mRowInc;
- viewRow += plane.rowInc;
- }
- }
- }
- return OK;
-}
-
-} // namespace
-
-status_t ImageCopy(uint8_t *imgBase, const MediaImage2 *img, const C2GraphicView &view) {
- if (view.width() != img->mWidth || view.height() != img->mHeight) {
- return BAD_VALUE;
- }
- if ((IsNV12(view) && IsI420(img)) || (IsI420(view) && IsNV12(img))) {
- // Take shortcuts to use libyuv functions between NV12 and I420 conversion.
- const uint8_t* src_y = view.data()[0];
- const uint8_t* src_u = view.data()[1];
- const uint8_t* src_v = view.data()[2];
- int32_t src_stride_y = view.layout().planes[0].rowInc;
- int32_t src_stride_u = view.layout().planes[1].rowInc;
- int32_t src_stride_v = view.layout().planes[2].rowInc;
- uint8_t* dst_y = imgBase + img->mPlane[0].mOffset;
- uint8_t* dst_u = imgBase + img->mPlane[1].mOffset;
- uint8_t* dst_v = imgBase + img->mPlane[2].mOffset;
- int32_t dst_stride_y = img->mPlane[0].mRowInc;
- int32_t dst_stride_u = img->mPlane[1].mRowInc;
- int32_t dst_stride_v = img->mPlane[2].mRowInc;
- if (IsNV12(view) && IsI420(img)) {
- if (!libyuv::NV12ToI420(src_y, src_stride_y, src_u, src_stride_u, dst_y, dst_stride_y,
- dst_u, dst_stride_u, dst_v, dst_stride_v, view.width(),
- view.height())) {
- return OK;
- }
- } else {
- if (!libyuv::I420ToNV12(src_y, src_stride_y, src_u, src_stride_u, src_v, src_stride_v,
- dst_y, dst_stride_y, dst_u, dst_stride_u, view.width(),
- view.height())) {
- return OK;
- }
- }
- }
- return _ImageCopy<true>(view, img, imgBase);
-}
-
-status_t ImageCopy(C2GraphicView &view, const uint8_t *imgBase, const MediaImage2 *img) {
- if (view.width() != img->mWidth || view.height() != img->mHeight) {
- return BAD_VALUE;
- }
- if ((IsNV12(img) && IsI420(view)) || (IsI420(img) && IsNV12(view))) {
- // Take shortcuts to use libyuv functions between NV12 and I420 conversion.
- const uint8_t* src_y = imgBase + img->mPlane[0].mOffset;
- const uint8_t* src_u = imgBase + img->mPlane[1].mOffset;
- const uint8_t* src_v = imgBase + img->mPlane[2].mOffset;
- int32_t src_stride_y = img->mPlane[0].mRowInc;
- int32_t src_stride_u = img->mPlane[1].mRowInc;
- int32_t src_stride_v = img->mPlane[2].mRowInc;
- uint8_t* dst_y = view.data()[0];
- uint8_t* dst_u = view.data()[1];
- uint8_t* dst_v = view.data()[2];
- int32_t dst_stride_y = view.layout().planes[0].rowInc;
- int32_t dst_stride_u = view.layout().planes[1].rowInc;
- int32_t dst_stride_v = view.layout().planes[2].rowInc;
- if (IsNV12(img) && IsI420(view)) {
- if (!libyuv::NV12ToI420(src_y, src_stride_y, src_u, src_stride_u, dst_y, dst_stride_y,
- dst_u, dst_stride_u, dst_v, dst_stride_v, view.width(),
- view.height())) {
- return OK;
- }
- } else {
- if (!libyuv::I420ToNV12(src_y, src_stride_y, src_u, src_stride_u, src_v, src_stride_v,
- dst_y, dst_stride_y, dst_u, dst_stride_u, view.width(),
- view.height())) {
- return OK;
- }
- }
- }
- return _ImageCopy<false>(view, img, imgBase);
-}
-
-bool IsYUV420(const C2GraphicView &view) {
- const C2PlanarLayout &layout = view.layout();
- return (layout.numPlanes == 3
- && layout.type == C2PlanarLayout::TYPE_YUV
- && layout.planes[layout.PLANE_Y].channel == C2PlaneInfo::CHANNEL_Y
- && layout.planes[layout.PLANE_Y].allocatedDepth == 8
- && layout.planes[layout.PLANE_Y].bitDepth == 8
- && layout.planes[layout.PLANE_Y].rightShift == 0
- && layout.planes[layout.PLANE_Y].colSampling == 1
- && layout.planes[layout.PLANE_Y].rowSampling == 1
- && layout.planes[layout.PLANE_U].channel == C2PlaneInfo::CHANNEL_CB
- && layout.planes[layout.PLANE_U].allocatedDepth == 8
- && layout.planes[layout.PLANE_U].bitDepth == 8
- && layout.planes[layout.PLANE_U].rightShift == 0
- && layout.planes[layout.PLANE_U].colSampling == 2
- && layout.planes[layout.PLANE_U].rowSampling == 2
- && layout.planes[layout.PLANE_V].channel == C2PlaneInfo::CHANNEL_CR
- && layout.planes[layout.PLANE_V].allocatedDepth == 8
- && layout.planes[layout.PLANE_V].bitDepth == 8
- && layout.planes[layout.PLANE_V].rightShift == 0
- && layout.planes[layout.PLANE_V].colSampling == 2
- && layout.planes[layout.PLANE_V].rowSampling == 2);
-}
-
-bool IsNV12(const C2GraphicView &view) {
- if (!IsYUV420(view)) {
- return false;
- }
- const C2PlanarLayout &layout = view.layout();
- return (layout.rootPlanes == 2
- && layout.planes[layout.PLANE_U].colInc == 2
- && layout.planes[layout.PLANE_U].rootIx == layout.PLANE_U
- && layout.planes[layout.PLANE_U].offset == 0
- && layout.planes[layout.PLANE_V].colInc == 2
- && layout.planes[layout.PLANE_V].rootIx == layout.PLANE_U
- && layout.planes[layout.PLANE_V].offset == 1);
-}
-
-bool IsI420(const C2GraphicView &view) {
- if (!IsYUV420(view)) {
- return false;
- }
- const C2PlanarLayout &layout = view.layout();
- return (layout.rootPlanes == 3
- && layout.planes[layout.PLANE_U].colInc == 1
- && layout.planes[layout.PLANE_U].rootIx == layout.PLANE_U
- && layout.planes[layout.PLANE_U].offset == 0
- && layout.planes[layout.PLANE_V].colInc == 1
- && layout.planes[layout.PLANE_V].rootIx == layout.PLANE_V
- && layout.planes[layout.PLANE_V].offset == 0);
-}
-
-bool IsYUV420(const MediaImage2 *img) {
- return (img->mType == MediaImage2::MEDIA_IMAGE_TYPE_YUV
- && img->mNumPlanes == 3
- && img->mBitDepth == 8
- && img->mBitDepthAllocated == 8
- && img->mPlane[0].mHorizSubsampling == 1
- && img->mPlane[0].mVertSubsampling == 1
- && img->mPlane[1].mHorizSubsampling == 2
- && img->mPlane[1].mVertSubsampling == 2
- && img->mPlane[2].mHorizSubsampling == 2
- && img->mPlane[2].mVertSubsampling == 2);
-}
-
-bool IsNV12(const MediaImage2 *img) {
- if (!IsYUV420(img)) {
- return false;
- }
- return (img->mPlane[1].mColInc == 2
- && img->mPlane[2].mColInc == 2
- && (img->mPlane[2].mOffset - img->mPlane[1].mOffset == 1));
-}
-
-bool IsI420(const MediaImage2 *img) {
- if (!IsYUV420(img)) {
- return false;
- }
- return (img->mPlane[1].mColInc == 1
- && img->mPlane[2].mColInc == 1
- && img->mPlane[2].mOffset > img->mPlane[1].mOffset);
-}
-
-MediaImage2 CreateYUV420PlanarMediaImage2(
- uint32_t width, uint32_t height, uint32_t stride, uint32_t vstride) {
- return MediaImage2 {
- .mType = MediaImage2::MEDIA_IMAGE_TYPE_YUV,
- .mNumPlanes = 3,
- .mWidth = width,
- .mHeight = height,
- .mBitDepth = 8,
- .mBitDepthAllocated = 8,
- .mPlane = {
- {
- .mOffset = 0,
- .mColInc = 1,
- .mRowInc = (int32_t)stride,
- .mHorizSubsampling = 1,
- .mVertSubsampling = 1,
- },
- {
- .mOffset = stride * vstride,
- .mColInc = 1,
- .mRowInc = (int32_t)stride / 2,
- .mHorizSubsampling = 2,
- .mVertSubsampling = 2,
- },
- {
- .mOffset = stride * vstride * 5 / 4,
- .mColInc = 1,
- .mRowInc = (int32_t)stride / 2,
- .mHorizSubsampling = 2,
- .mVertSubsampling = 2,
- }
- },
- };
-}
-
-MediaImage2 CreateYUV420SemiPlanarMediaImage2(
- uint32_t width, uint32_t height, uint32_t stride, uint32_t vstride) {
- return MediaImage2 {
- .mType = MediaImage2::MEDIA_IMAGE_TYPE_YUV,
- .mNumPlanes = 3,
- .mWidth = width,
- .mHeight = height,
- .mBitDepth = 8,
- .mBitDepthAllocated = 8,
- .mPlane = {
- {
- .mOffset = 0,
- .mColInc = 1,
- .mRowInc = (int32_t)stride,
- .mHorizSubsampling = 1,
- .mVertSubsampling = 1,
- },
- {
- .mOffset = stride * vstride,
- .mColInc = 2,
- .mRowInc = (int32_t)stride,
- .mHorizSubsampling = 2,
- .mVertSubsampling = 2,
- },
- {
- .mOffset = stride * vstride + 1,
- .mColInc = 2,
- .mRowInc = (int32_t)stride,
- .mHorizSubsampling = 2,
- .mVertSubsampling = 2,
- }
- },
- };
-}
-
-status_t ConvertRGBToPlanarYUV(
- uint8_t *dstY, size_t dstStride, size_t dstVStride, size_t bufferSize,
- const C2GraphicView &src) {
- CHECK(dstY != nullptr);
- CHECK((src.width() & 1) == 0);
- CHECK((src.height() & 1) == 0);
-
- if (dstStride * dstVStride * 3 / 2 > bufferSize) {
- ALOGD("conversion buffer is too small for converting from RGB to YUV");
- return NO_MEMORY;
- }
-
- uint8_t *dstU = dstY + dstStride * dstVStride;
- uint8_t *dstV = dstU + (dstStride >> 1) * (dstVStride >> 1);
-
- const C2PlanarLayout &layout = src.layout();
- const uint8_t *pRed = src.data()[C2PlanarLayout::PLANE_R];
- const uint8_t *pGreen = src.data()[C2PlanarLayout::PLANE_G];
- const uint8_t *pBlue = src.data()[C2PlanarLayout::PLANE_B];
-
-#define CLIP3(x,y,z) (((z) < (x)) ? (x) : (((z) > (y)) ? (y) : (z)))
- for (size_t y = 0; y < src.height(); ++y) {
- for (size_t x = 0; x < src.width(); ++x) {
- uint8_t red = *pRed;
- uint8_t green = *pGreen;
- uint8_t blue = *pBlue;
-
- // using ITU-R BT.601 conversion matrix
- unsigned luma =
- CLIP3(0, (((red * 66 + green * 129 + blue * 25) >> 8) + 16), 255);
-
- dstY[x] = luma;
-
- if ((x & 1) == 0 && (y & 1) == 0) {
- unsigned U =
- CLIP3(0, (((-red * 38 - green * 74 + blue * 112) >> 8) + 128), 255);
-
- unsigned V =
- CLIP3(0, (((red * 112 - green * 94 - blue * 18) >> 8) + 128), 255);
-
- dstU[x >> 1] = U;
- dstV[x >> 1] = V;
- }
- pRed += layout.planes[C2PlanarLayout::PLANE_R].colInc;
- pGreen += layout.planes[C2PlanarLayout::PLANE_G].colInc;
- pBlue += layout.planes[C2PlanarLayout::PLANE_B].colInc;
- }
-
- if ((y & 1) == 0) {
- dstU += dstStride >> 1;
- dstV += dstStride >> 1;
- }
-
- pRed -= layout.planes[C2PlanarLayout::PLANE_R].colInc * src.width();
- pGreen -= layout.planes[C2PlanarLayout::PLANE_G].colInc * src.width();
- pBlue -= layout.planes[C2PlanarLayout::PLANE_B].colInc * src.width();
- pRed += layout.planes[C2PlanarLayout::PLANE_R].rowInc;
- pGreen += layout.planes[C2PlanarLayout::PLANE_G].rowInc;
- pBlue += layout.planes[C2PlanarLayout::PLANE_B].rowInc;
-
- dstY += dstStride;
- }
- return OK;
-}
-
-namespace {
-
-/**
- * A block of raw allocated memory.
- */
-struct MemoryBlockPoolBlock {
- MemoryBlockPoolBlock(size_t size)
- : mData(new uint8_t[size]), mSize(mData ? size : 0) { }
-
- ~MemoryBlockPoolBlock() {
- delete[] mData;
- }
-
- const uint8_t *data() const {
- return mData;
- }
-
- size_t size() const {
- return mSize;
- }
-
- C2_DO_NOT_COPY(MemoryBlockPoolBlock);
-
-private:
- uint8_t *mData;
- size_t mSize;
-};
-
-/**
- * A simple raw memory block pool implementation.
- */
-struct MemoryBlockPoolImpl {
- void release(std::list<MemoryBlockPoolBlock>::const_iterator block) {
- std::lock_guard<std::mutex> lock(mMutex);
- // return block to free blocks if it is the current size; otherwise, discard
- if (block->size() == mCurrentSize) {
- mFreeBlocks.splice(mFreeBlocks.begin(), mBlocksInUse, block);
- } else {
- mBlocksInUse.erase(block);
- }
- }
-
- std::list<MemoryBlockPoolBlock>::const_iterator fetch(size_t size) {
- std::lock_guard<std::mutex> lock(mMutex);
- mFreeBlocks.remove_if([size](const MemoryBlockPoolBlock &block) -> bool {
- return block.size() != size;
- });
- mCurrentSize = size;
- if (mFreeBlocks.empty()) {
- mBlocksInUse.emplace_front(size);
- } else {
- mBlocksInUse.splice(mBlocksInUse.begin(), mFreeBlocks, mFreeBlocks.begin());
- }
- return mBlocksInUse.begin();
- }
-
- MemoryBlockPoolImpl() = default;
-
- C2_DO_NOT_COPY(MemoryBlockPoolImpl);
-
-private:
- std::mutex mMutex;
- std::list<MemoryBlockPoolBlock> mFreeBlocks;
- std::list<MemoryBlockPoolBlock> mBlocksInUse;
- size_t mCurrentSize;
-};
-
-} // namespace
-
-struct MemoryBlockPool::Impl : MemoryBlockPoolImpl {
-};
-
-struct MemoryBlock::Impl {
- Impl(std::list<MemoryBlockPoolBlock>::const_iterator block,
- std::shared_ptr<MemoryBlockPoolImpl> pool)
- : mBlock(block), mPool(pool) {
- }
-
- ~Impl() {
- mPool->release(mBlock);
- }
-
- const uint8_t *data() const {
- return mBlock->data();
- }
-
- size_t size() const {
- return mBlock->size();
- }
-
-private:
- std::list<MemoryBlockPoolBlock>::const_iterator mBlock;
- std::shared_ptr<MemoryBlockPoolImpl> mPool;
-};
-
-MemoryBlock MemoryBlockPool::fetch(size_t size) {
- std::list<MemoryBlockPoolBlock>::const_iterator poolBlock = mImpl->fetch(size);
- return MemoryBlock(std::make_shared<MemoryBlock::Impl>(
- poolBlock, std::static_pointer_cast<MemoryBlockPoolImpl>(mImpl)));
-}
-
-MemoryBlockPool::MemoryBlockPool()
- : mImpl(std::make_shared<MemoryBlockPool::Impl>()) {
-}
-
-MemoryBlock::MemoryBlock(std::shared_ptr<MemoryBlock::Impl> impl)
- : mImpl(impl) {
-}
-
-MemoryBlock::MemoryBlock() = default;
-
-MemoryBlock::~MemoryBlock() = default;
-
-const uint8_t* MemoryBlock::data() const {
- return mImpl ? mImpl->data() : nullptr;
-}
-
-size_t MemoryBlock::size() const {
- return mImpl ? mImpl->size() : 0;
-}
-
-MemoryBlock MemoryBlock::Allocate(size_t size) {
- return MemoryBlockPool().fetch(size);
-}
-
-} // namespace android
diff --git a/media/sfplugin/utils/Codec2BufferUtils.h b/media/sfplugin/utils/Codec2BufferUtils.h
deleted file mode 100644
index afadf00..0000000
--- a/media/sfplugin/utils/Codec2BufferUtils.h
+++ /dev/null
@@ -1,166 +0,0 @@
-/*
- * Copyright 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef CODEC2_BUFFER_UTILS_H_
-#define CODEC2_BUFFER_UTILS_H_
-
-#include <C2Buffer.h>
-#include <C2ParamDef.h>
-
-#include <media/hardware/VideoAPI.h>
-#include <utils/Errors.h>
-
-namespace android {
-
-/**
- * Converts an RGB view to planar YUV 420 media image.
- *
- * \param dstY pointer to media image buffer
- * \param dstStride stride in bytes
- * \param dstVStride vertical stride in pixels
- * \param bufferSize media image buffer size
- * \param src source image
- *
- * \retval NO_MEMORY media image is too small
- * \retval OK on success
- */
-status_t ConvertRGBToPlanarYUV(
- uint8_t *dstY, size_t dstStride, size_t dstVStride, size_t bufferSize,
- const C2GraphicView &src);
-
-/**
- * Returns a planar YUV 420 8-bit media image descriptor.
- *
- * \param width width of image in pixels
- * \param height height of image in pixels
- * \param stride stride of image in pixels
- * \param vstride vertical stride of image in pixels
- */
-MediaImage2 CreateYUV420PlanarMediaImage2(
- uint32_t width, uint32_t height, uint32_t stride, uint32_t vstride);
-
-/**
- * Returns a semiplanar YUV 420 8-bit media image descriptor.
- *
- * \param width width of image in pixels
- * \param height height of image in pixels
- * \param stride stride of image in pixels
- * \param vstride vertical stride of image in pixels
- */
-MediaImage2 CreateYUV420SemiPlanarMediaImage2(
- uint32_t width, uint32_t height, uint32_t stride, uint32_t vstride);
-
-/**
- * Copies a graphic view into a media image.
- *
- * \param imgBase base of MediaImage
- * \param img MediaImage data
- * \param view graphic view
- *
- * \return OK on success
- */
-status_t ImageCopy(uint8_t *imgBase, const MediaImage2 *img, const C2GraphicView &view);
-
-/**
- * Copies a media image into a graphic view.
- *
- * \param view graphic view
- * \param imgBase base of MediaImage
- * \param img MediaImage data
- *
- * \return OK on success
- */
-status_t ImageCopy(C2GraphicView &view, const uint8_t *imgBase, const MediaImage2 *img);
-
-/**
- * Returns true iff a view has a YUV 420 888 layout.
- */
-bool IsYUV420(const C2GraphicView &view);
-
-/**
- * Returns true iff a view has a NV12 layout.
- */
-bool IsNV12(const C2GraphicView &view);
-
-/**
- * Returns true iff a view has a I420 layout.
- */
-bool IsI420(const C2GraphicView &view);
-
-/**
- * Returns true iff a MediaImage2 has a YUV 420 888 layout.
- */
-bool IsYUV420(const MediaImage2 *img);
-
-/**
- * Returns true iff a MediaImage2 has a NV12 layout.
- */
-bool IsNV12(const MediaImage2 *img);
-
-/**
- * Returns true iff a MediaImage2 has a I420 layout.
- */
-bool IsI420(const MediaImage2 *img);
-
-/**
- * A raw memory block to use for internal buffers.
- *
- * TODO: replace this with C2LinearBlocks from a private C2BlockPool
- */
-struct MemoryBlock : public C2MemoryBlock<uint8_t> {
- virtual const uint8_t* data() const override;
- virtual size_t size() const override;
-
- inline uint8_t *data() {
- return const_cast<uint8_t*>(const_cast<const MemoryBlock*>(this)->data());
- }
-
- // allocates an unmanaged block (not in a pool)
- static MemoryBlock Allocate(size_t);
-
- // memory block with no actual memory (size is 0, data is null)
- MemoryBlock();
-
- struct Impl;
- MemoryBlock(std::shared_ptr<Impl> impl);
- virtual ~MemoryBlock();
-
-private:
- std::shared_ptr<Impl> mImpl;
-};
-
-/**
- * A raw memory mini-pool.
- */
-struct MemoryBlockPool {
- /**
- * Fetches a block with a given size.
- *
- * \param size size in bytes
- */
- MemoryBlock fetch(size_t size);
-
- MemoryBlockPool();
- ~MemoryBlockPool() = default;
-
-private:
- struct Impl;
- std::shared_ptr<Impl> mImpl;
-};
-
-} // namespace android
-
-#endif // CODEC2_BUFFER_UTILS_H_
diff --git a/media/sfplugin/utils/Codec2Mapper.cpp b/media/sfplugin/utils/Codec2Mapper.cpp
deleted file mode 100644
index 97e17e8..0000000
--- a/media/sfplugin/utils/Codec2Mapper.cpp
+++ /dev/null
@@ -1,815 +0,0 @@
-/*
- * Copyright 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//#define LOG_NDEBUG 0
-#define LOG_TAG "Codec2Mapper"
-#include <utils/Log.h>
-
-#include <media/stagefright/MediaCodecConstants.h>
-#include <media/stagefright/SurfaceUtils.h>
-#include <media/stagefright/foundation/ALookup.h>
-#include <media/stagefright/foundation/ColorUtils.h>
-#include <media/stagefright/foundation/MediaDefs.h>
-
-#include <stdint.h> // for INT32_MAX
-
-#include "Codec2Mapper.h"
-
-using namespace android;
-
-namespace {
-
-ALookup<C2Config::profile_t, int32_t> sAacProfiles = {
- { C2Config::PROFILE_AAC_LC, AACObjectLC },
- { C2Config::PROFILE_AAC_MAIN, AACObjectMain },
- { C2Config::PROFILE_AAC_SSR, AACObjectSSR },
- { C2Config::PROFILE_AAC_LTP, AACObjectLTP },
- { C2Config::PROFILE_AAC_HE, AACObjectHE },
- { C2Config::PROFILE_AAC_SCALABLE, AACObjectScalable },
- { C2Config::PROFILE_AAC_ER_LC, AACObjectERLC },
- { C2Config::PROFILE_AAC_ER_SCALABLE, AACObjectERScalable },
- { C2Config::PROFILE_AAC_LD, AACObjectLD },
- { C2Config::PROFILE_AAC_HE_PS, AACObjectHE_PS },
- { C2Config::PROFILE_AAC_ELD, AACObjectELD },
- { C2Config::PROFILE_AAC_XHE, AACObjectXHE },
-};
-
-ALookup<C2Config::level_t, int32_t> sAvcLevels = {
- { C2Config::LEVEL_AVC_1, AVCLevel1 },
- { C2Config::LEVEL_AVC_1B, AVCLevel1b },
- { C2Config::LEVEL_AVC_1_1, AVCLevel11 },
- { C2Config::LEVEL_AVC_1_2, AVCLevel12 },
- { C2Config::LEVEL_AVC_1_3, AVCLevel13 },
- { C2Config::LEVEL_AVC_2, AVCLevel2 },
- { C2Config::LEVEL_AVC_2_1, AVCLevel21 },
- { C2Config::LEVEL_AVC_2_2, AVCLevel22 },
- { C2Config::LEVEL_AVC_3, AVCLevel3 },
- { C2Config::LEVEL_AVC_3_1, AVCLevel31 },
- { C2Config::LEVEL_AVC_3_2, AVCLevel32 },
- { C2Config::LEVEL_AVC_4, AVCLevel4 },
- { C2Config::LEVEL_AVC_4_1, AVCLevel41 },
- { C2Config::LEVEL_AVC_4_2, AVCLevel42 },
- { C2Config::LEVEL_AVC_5, AVCLevel5 },
- { C2Config::LEVEL_AVC_5_1, AVCLevel51 },
- { C2Config::LEVEL_AVC_5_2, AVCLevel52 },
-
-};
-
-ALookup<C2Config::profile_t, int32_t> sAvcProfiles = {
- // treat restricted profiles as full profile if there is no equivalent - which works for
- // decoders, but not for encoders
- { C2Config::PROFILE_AVC_BASELINE, AVCProfileBaseline },
- { C2Config::PROFILE_AVC_CONSTRAINED_BASELINE, AVCProfileConstrainedBaseline },
- { C2Config::PROFILE_AVC_MAIN, AVCProfileMain },
- { C2Config::PROFILE_AVC_EXTENDED, AVCProfileExtended },
- { C2Config::PROFILE_AVC_HIGH, AVCProfileHigh },
- { C2Config::PROFILE_AVC_PROGRESSIVE_HIGH, AVCProfileHigh },
- { C2Config::PROFILE_AVC_CONSTRAINED_HIGH, AVCProfileConstrainedHigh },
- { C2Config::PROFILE_AVC_HIGH_10, AVCProfileHigh10 },
- { C2Config::PROFILE_AVC_PROGRESSIVE_HIGH_10, AVCProfileHigh10 },
- { C2Config::PROFILE_AVC_HIGH_422, AVCProfileHigh422 },
- { C2Config::PROFILE_AVC_HIGH_444_PREDICTIVE, AVCProfileHigh444 },
- { C2Config::PROFILE_AVC_HIGH_10_INTRA, AVCProfileHigh10 },
- { C2Config::PROFILE_AVC_HIGH_422_INTRA, AVCProfileHigh422 },
- { C2Config::PROFILE_AVC_HIGH_444_INTRA, AVCProfileHigh444 },
- { C2Config::PROFILE_AVC_CAVLC_444_INTRA, AVCProfileHigh444 },
-};
-
-ALookup<C2Config::bitrate_mode_t, int32_t> sBitrateModes = {
- { C2Config::BITRATE_CONST, BITRATE_MODE_CBR },
- { C2Config::BITRATE_VARIABLE, BITRATE_MODE_VBR },
- { C2Config::BITRATE_IGNORE, BITRATE_MODE_CQ },
-};
-
-ALookup<C2Color::matrix_t, ColorAspects::MatrixCoeffs> sColorMatricesSf = {
- { C2Color::MATRIX_UNSPECIFIED, ColorAspects::MatrixUnspecified },
- { C2Color::MATRIX_BT709, ColorAspects::MatrixBT709_5 },
- { C2Color::MATRIX_FCC47_73_682, ColorAspects::MatrixBT470_6M },
- { C2Color::MATRIX_BT601, ColorAspects::MatrixBT601_6 },
- { C2Color::MATRIX_SMPTE240M, ColorAspects::MatrixSMPTE240M },
- { C2Color::MATRIX_BT2020, ColorAspects::MatrixBT2020 },
- { C2Color::MATRIX_BT2020_CONSTANT, ColorAspects::MatrixBT2020Constant },
- { C2Color::MATRIX_OTHER, ColorAspects::MatrixOther },
-};
-
-ALookup<C2Color::primaries_t, ColorAspects::Primaries> sColorPrimariesSf = {
- { C2Color::PRIMARIES_UNSPECIFIED, ColorAspects::PrimariesUnspecified },
- { C2Color::PRIMARIES_BT709, ColorAspects::PrimariesBT709_5 },
- { C2Color::PRIMARIES_BT470_M, ColorAspects::PrimariesBT470_6M },
- { C2Color::PRIMARIES_BT601_625, ColorAspects::PrimariesBT601_6_625 },
- { C2Color::PRIMARIES_BT601_525, ColorAspects::PrimariesBT601_6_525 },
- { C2Color::PRIMARIES_GENERIC_FILM, ColorAspects::PrimariesGenericFilm },
- { C2Color::PRIMARIES_BT2020, ColorAspects::PrimariesBT2020 },
-// { C2Color::PRIMARIES_RP431, ColorAspects::Primaries... },
-// { C2Color::PRIMARIES_EG432, ColorAspects::Primaries... },
-// { C2Color::PRIMARIES_EBU3213, ColorAspects::Primaries... },
- { C2Color::PRIMARIES_OTHER, ColorAspects::PrimariesOther },
-};
-
-ALookup<C2Color::range_t, int32_t> sColorRanges = {
- { C2Color::RANGE_FULL, COLOR_RANGE_FULL },
- { C2Color::RANGE_LIMITED, COLOR_RANGE_LIMITED },
-};
-
-ALookup<C2Color::range_t, ColorAspects::Range> sColorRangesSf = {
- { C2Color::RANGE_UNSPECIFIED, ColorAspects::RangeUnspecified },
- { C2Color::RANGE_FULL, ColorAspects::RangeFull },
- { C2Color::RANGE_LIMITED, ColorAspects::RangeLimited },
- { C2Color::RANGE_OTHER, ColorAspects::RangeOther },
-};
-
-ALookup<C2Color::transfer_t, int32_t> sColorTransfers = {
- { C2Color::TRANSFER_LINEAR, COLOR_TRANSFER_LINEAR },
- { C2Color::TRANSFER_170M, COLOR_TRANSFER_SDR_VIDEO },
- { C2Color::TRANSFER_ST2084, COLOR_TRANSFER_ST2084 },
- { C2Color::TRANSFER_HLG, COLOR_TRANSFER_HLG },
-};
-
-ALookup<C2Color::transfer_t, ColorAspects::Transfer> sColorTransfersSf = {
- { C2Color::TRANSFER_UNSPECIFIED, ColorAspects::TransferUnspecified },
- { C2Color::TRANSFER_LINEAR, ColorAspects::TransferLinear },
- { C2Color::TRANSFER_SRGB, ColorAspects::TransferSRGB },
- { C2Color::TRANSFER_170M, ColorAspects::TransferSMPTE170M },
- { C2Color::TRANSFER_GAMMA22, ColorAspects::TransferGamma22 },
- { C2Color::TRANSFER_GAMMA28, ColorAspects::TransferGamma28 },
- { C2Color::TRANSFER_ST2084, ColorAspects::TransferST2084 },
- { C2Color::TRANSFER_HLG, ColorAspects::TransferHLG },
- { C2Color::TRANSFER_240M, ColorAspects::TransferSMPTE240M },
- { C2Color::TRANSFER_XVYCC, ColorAspects::TransferXvYCC },
- { C2Color::TRANSFER_BT1361, ColorAspects::TransferBT1361 },
- { C2Color::TRANSFER_ST428, ColorAspects::TransferST428 },
- { C2Color::TRANSFER_OTHER, ColorAspects::TransferOther },
-};
-
-ALookup<C2Config::level_t, int32_t> sDolbyVisionLevels = {
- { C2Config::LEVEL_DV_MAIN_HD_24, DolbyVisionLevelHd24 },
- { C2Config::LEVEL_DV_MAIN_HD_30, DolbyVisionLevelHd30 },
- { C2Config::LEVEL_DV_MAIN_FHD_24, DolbyVisionLevelFhd24 },
- { C2Config::LEVEL_DV_MAIN_FHD_30, DolbyVisionLevelFhd30 },
- { C2Config::LEVEL_DV_MAIN_FHD_60, DolbyVisionLevelFhd60 },
- { C2Config::LEVEL_DV_MAIN_UHD_24, DolbyVisionLevelUhd24 },
- { C2Config::LEVEL_DV_MAIN_UHD_30, DolbyVisionLevelUhd30 },
- { C2Config::LEVEL_DV_MAIN_UHD_48, DolbyVisionLevelUhd48 },
- { C2Config::LEVEL_DV_MAIN_UHD_60, DolbyVisionLevelUhd60 },
-
- // high tiers are not yet supported on android, for now map them to main tier
- { C2Config::LEVEL_DV_HIGH_HD_24, DolbyVisionLevelHd24 },
- { C2Config::LEVEL_DV_HIGH_HD_30, DolbyVisionLevelHd30 },
- { C2Config::LEVEL_DV_HIGH_FHD_24, DolbyVisionLevelFhd24 },
- { C2Config::LEVEL_DV_HIGH_FHD_30, DolbyVisionLevelFhd30 },
- { C2Config::LEVEL_DV_HIGH_FHD_60, DolbyVisionLevelFhd60 },
- { C2Config::LEVEL_DV_HIGH_UHD_24, DolbyVisionLevelUhd24 },
- { C2Config::LEVEL_DV_HIGH_UHD_30, DolbyVisionLevelUhd30 },
- { C2Config::LEVEL_DV_HIGH_UHD_48, DolbyVisionLevelUhd48 },
- { C2Config::LEVEL_DV_HIGH_UHD_60, DolbyVisionLevelUhd60 },
-};
-
-ALookup<C2Config::profile_t, int32_t> sDolbyVisionProfiles = {
- { C2Config::PROFILE_DV_AV_PER, DolbyVisionProfileDvavPer },
- { C2Config::PROFILE_DV_AV_PEN, DolbyVisionProfileDvavPen },
- { C2Config::PROFILE_DV_HE_DER, DolbyVisionProfileDvheDer },
- { C2Config::PROFILE_DV_HE_DEN, DolbyVisionProfileDvheDen },
- { C2Config::PROFILE_DV_HE_04, DolbyVisionProfileDvheDtr },
- { C2Config::PROFILE_DV_HE_05, DolbyVisionProfileDvheStn },
- { C2Config::PROFILE_DV_HE_DTH, DolbyVisionProfileDvheDth },
- { C2Config::PROFILE_DV_HE_07, DolbyVisionProfileDvheDtb },
- { C2Config::PROFILE_DV_HE_08, DolbyVisionProfileDvheSt },
- { C2Config::PROFILE_DV_AV_09, DolbyVisionProfileDvavSe },
-};
-
-ALookup<C2Config::level_t, int32_t> sH263Levels = {
- { C2Config::LEVEL_H263_10, H263Level10 },
- { C2Config::LEVEL_H263_20, H263Level20 },
- { C2Config::LEVEL_H263_30, H263Level30 },
- { C2Config::LEVEL_H263_40, H263Level40 },
- { C2Config::LEVEL_H263_45, H263Level45 },
- { C2Config::LEVEL_H263_50, H263Level50 },
- { C2Config::LEVEL_H263_60, H263Level60 },
- { C2Config::LEVEL_H263_70, H263Level70 },
-};
-
-ALookup<C2Config::profile_t, int32_t> sH263Profiles = {
- { C2Config::PROFILE_H263_BASELINE, H263ProfileBaseline },
- { C2Config::PROFILE_H263_H320, H263ProfileH320Coding },
- { C2Config::PROFILE_H263_V1BC, H263ProfileBackwardCompatible },
- { C2Config::PROFILE_H263_ISWV2, H263ProfileISWV2 },
- { C2Config::PROFILE_H263_ISWV3, H263ProfileISWV3 },
- { C2Config::PROFILE_H263_HIGH_COMPRESSION, H263ProfileHighCompression },
- { C2Config::PROFILE_H263_INTERNET, H263ProfileInternet },
- { C2Config::PROFILE_H263_INTERLACE, H263ProfileInterlace },
- { C2Config::PROFILE_H263_HIGH_LATENCY, H263ProfileHighLatency },
-};
-
-ALookup<C2Config::level_t, int32_t> sHevcLevels = {
- { C2Config::LEVEL_HEVC_MAIN_1, HEVCMainTierLevel1 },
- { C2Config::LEVEL_HEVC_MAIN_2, HEVCMainTierLevel2 },
- { C2Config::LEVEL_HEVC_MAIN_2_1, HEVCMainTierLevel21 },
- { C2Config::LEVEL_HEVC_MAIN_3, HEVCMainTierLevel3 },
- { C2Config::LEVEL_HEVC_MAIN_3_1, HEVCMainTierLevel31 },
- { C2Config::LEVEL_HEVC_MAIN_4, HEVCMainTierLevel4 },
- { C2Config::LEVEL_HEVC_MAIN_4_1, HEVCMainTierLevel41 },
- { C2Config::LEVEL_HEVC_MAIN_5, HEVCMainTierLevel5 },
- { C2Config::LEVEL_HEVC_MAIN_5_1, HEVCMainTierLevel51 },
- { C2Config::LEVEL_HEVC_MAIN_5_2, HEVCMainTierLevel52 },
- { C2Config::LEVEL_HEVC_MAIN_6, HEVCMainTierLevel6 },
- { C2Config::LEVEL_HEVC_MAIN_6_1, HEVCMainTierLevel61 },
- { C2Config::LEVEL_HEVC_MAIN_6_2, HEVCMainTierLevel62 },
-
- { C2Config::LEVEL_HEVC_HIGH_4, HEVCHighTierLevel4 },
- { C2Config::LEVEL_HEVC_HIGH_4_1, HEVCHighTierLevel41 },
- { C2Config::LEVEL_HEVC_HIGH_5, HEVCHighTierLevel5 },
- { C2Config::LEVEL_HEVC_HIGH_5_1, HEVCHighTierLevel51 },
- { C2Config::LEVEL_HEVC_HIGH_5_2, HEVCHighTierLevel52 },
- { C2Config::LEVEL_HEVC_HIGH_6, HEVCHighTierLevel6 },
- { C2Config::LEVEL_HEVC_HIGH_6_1, HEVCHighTierLevel61 },
- { C2Config::LEVEL_HEVC_HIGH_6_2, HEVCHighTierLevel62 },
-
- // map high tier levels below 4 to main tier
- { C2Config::LEVEL_HEVC_MAIN_1, HEVCHighTierLevel1 },
- { C2Config::LEVEL_HEVC_MAIN_2, HEVCHighTierLevel2 },
- { C2Config::LEVEL_HEVC_MAIN_2_1, HEVCHighTierLevel21 },
- { C2Config::LEVEL_HEVC_MAIN_3, HEVCHighTierLevel3 },
- { C2Config::LEVEL_HEVC_MAIN_3_1, HEVCHighTierLevel31 },
-};
-
-ALookup<C2Config::profile_t, int32_t> sHevcProfiles = {
- { C2Config::PROFILE_HEVC_MAIN, HEVCProfileMain },
- { C2Config::PROFILE_HEVC_MAIN_10, HEVCProfileMain10 },
- { C2Config::PROFILE_HEVC_MAIN_STILL, HEVCProfileMainStill },
- { C2Config::PROFILE_HEVC_MAIN_INTRA, HEVCProfileMain },
- { C2Config::PROFILE_HEVC_MAIN_10_INTRA, HEVCProfileMain10 },
-};
-
-ALookup<C2Config::level_t, int32_t> sMpeg2Levels = {
- { C2Config::LEVEL_MP2V_LOW, MPEG2LevelLL },
- { C2Config::LEVEL_MP2V_MAIN, MPEG2LevelML },
- { C2Config::LEVEL_MP2V_HIGH_1440, MPEG2LevelH14 },
- { C2Config::LEVEL_MP2V_HIGH, MPEG2LevelHL },
- { C2Config::LEVEL_MP2V_HIGHP, MPEG2LevelHP },
-};
-
-ALookup<C2Config::profile_t, int32_t> sMpeg2Profiles = {
- { C2Config::PROFILE_MP2V_SIMPLE, MPEG2ProfileSimple },
- { C2Config::PROFILE_MP2V_MAIN, MPEG2ProfileMain },
- { C2Config::PROFILE_MP2V_SNR_SCALABLE, MPEG2ProfileSNR },
- { C2Config::PROFILE_MP2V_SPATIALLY_SCALABLE, MPEG2ProfileSpatial },
- { C2Config::PROFILE_MP2V_HIGH, MPEG2ProfileHigh },
- { C2Config::PROFILE_MP2V_422, MPEG2Profile422 },
-};
-
-ALookup<C2Config::level_t, int32_t> sMpeg4Levels = {
- { C2Config::LEVEL_MP4V_0, MPEG4Level0 },
- { C2Config::LEVEL_MP4V_0B, MPEG4Level0b },
- { C2Config::LEVEL_MP4V_1, MPEG4Level1 },
- { C2Config::LEVEL_MP4V_2, MPEG4Level2 },
- { C2Config::LEVEL_MP4V_3, MPEG4Level3 },
- { C2Config::LEVEL_MP4V_3B, MPEG4Level3b },
- { C2Config::LEVEL_MP4V_4, MPEG4Level4 },
- { C2Config::LEVEL_MP4V_4A, MPEG4Level4a },
- { C2Config::LEVEL_MP4V_5, MPEG4Level5 },
- { C2Config::LEVEL_MP4V_6, MPEG4Level6 },
-};
-
-ALookup<C2Config::profile_t, int32_t> sMpeg4Profiles = {
- { C2Config::PROFILE_MP4V_SIMPLE, MPEG4ProfileSimple },
- { C2Config::PROFILE_MP4V_SIMPLE_SCALABLE, MPEG4ProfileSimpleScalable },
- { C2Config::PROFILE_MP4V_CORE, MPEG4ProfileCore },
- { C2Config::PROFILE_MP4V_MAIN, MPEG4ProfileMain },
- { C2Config::PROFILE_MP4V_NBIT, MPEG4ProfileNbit },
- { C2Config::PROFILE_MP4V_ARTS, MPEG4ProfileAdvancedRealTime },
- { C2Config::PROFILE_MP4V_CORE_SCALABLE, MPEG4ProfileCoreScalable },
- { C2Config::PROFILE_MP4V_ACE, MPEG4ProfileAdvancedCoding },
- { C2Config::PROFILE_MP4V_ADVANCED_CORE, MPEG4ProfileAdvancedCore },
- { C2Config::PROFILE_MP4V_ADVANCED_SIMPLE, MPEG4ProfileAdvancedSimple },
-};
-
-ALookup<C2Config::pcm_encoding_t, int32_t> sPcmEncodings = {
- { C2Config::PCM_8, kAudioEncodingPcm8bit },
- { C2Config::PCM_16, kAudioEncodingPcm16bit },
- { C2Config::PCM_FLOAT, kAudioEncodingPcmFloat },
-};
-
-ALookup<C2Config::level_t, int32_t> sVp9Levels = {
- { C2Config::LEVEL_VP9_1, VP9Level1 },
- { C2Config::LEVEL_VP9_1_1, VP9Level11 },
- { C2Config::LEVEL_VP9_2, VP9Level2 },
- { C2Config::LEVEL_VP9_2_1, VP9Level21 },
- { C2Config::LEVEL_VP9_3, VP9Level3 },
- { C2Config::LEVEL_VP9_3_1, VP9Level31 },
- { C2Config::LEVEL_VP9_4, VP9Level4 },
- { C2Config::LEVEL_VP9_4_1, VP9Level41 },
- { C2Config::LEVEL_VP9_5, VP9Level5 },
- { C2Config::LEVEL_VP9_5_1, VP9Level51 },
- { C2Config::LEVEL_VP9_5_2, VP9Level52 },
- { C2Config::LEVEL_VP9_6, VP9Level6 },
- { C2Config::LEVEL_VP9_6_1, VP9Level61 },
- { C2Config::LEVEL_VP9_6_2, VP9Level62 },
-};
-
-ALookup<C2Config::profile_t, int32_t> sVp9Profiles = {
- { C2Config::PROFILE_VP9_0, VP9Profile0 },
- { C2Config::PROFILE_VP9_1, VP9Profile1 },
- { C2Config::PROFILE_VP9_2, VP9Profile2 },
- { C2Config::PROFILE_VP9_3, VP9Profile3 },
-};
-
-/**
- * A helper that passes through vendor extension profile and level values.
- */
-struct ProfileLevelMapperHelper : C2Mapper::ProfileLevelMapper {
- virtual bool simpleMap(C2Config::level_t from, int32_t *to) = 0;
- virtual bool simpleMap(int32_t from, C2Config::level_t *to) = 0;
- virtual bool simpleMap(C2Config::profile_t from, int32_t *to) = 0;
- virtual bool simpleMap(int32_t from, C2Config::profile_t *to) = 0;
-
- template<typename T, typename U>
- bool passThroughMap(T from, U *to) {
- // allow (and pass through) vendor extensions
- if (from >= (T)C2_PROFILE_LEVEL_VENDOR_START && from < (T)INT32_MAX) {
- *to = (U)from;
- return true;
- }
- return simpleMap(from, to);
- }
-
- virtual bool mapLevel(C2Config::level_t from, int32_t *to) {
- return passThroughMap(from, to);
- }
-
- virtual bool mapLevel(int32_t from, C2Config::level_t *to) {
- return passThroughMap(from, to);
- }
-
- virtual bool mapProfile(C2Config::profile_t from, int32_t *to) {
- return passThroughMap(from, to);
- }
-
- virtual bool mapProfile(int32_t from, C2Config::profile_t *to) {
- return passThroughMap(from, to);
- }
-};
-
-// AAC only uses profiles, map all levels to unused or 0
-struct AacProfileLevelMapper : ProfileLevelMapperHelper {
- virtual bool simpleMap(C2Config::level_t, int32_t *to) {
- *to = 0;
- return true;
- }
- virtual bool simpleMap(int32_t, C2Config::level_t *to) {
- *to = C2Config::LEVEL_UNUSED;
- return true;
- }
- virtual bool simpleMap(C2Config::profile_t from, int32_t *to) {
- return sAacProfiles.map(from, to);
- }
- virtual bool simpleMap(int32_t from, C2Config::profile_t *to) {
- return sAacProfiles.map(from, to);
- }
-};
-
-struct AvcProfileLevelMapper : ProfileLevelMapperHelper {
- virtual bool simpleMap(C2Config::level_t from, int32_t *to) {
- return sAvcLevels.map(from, to);
- }
- virtual bool simpleMap(int32_t from, C2Config::level_t *to) {
- return sAvcLevels.map(from, to);
- }
- virtual bool simpleMap(C2Config::profile_t from, int32_t *to) {
- return sAvcProfiles.map(from, to);
- }
- virtual bool simpleMap(int32_t from, C2Config::profile_t *to) {
- return sAvcProfiles.map(from, to);
- }
-};
-
-struct DolbyVisionProfileLevelMapper : ProfileLevelMapperHelper {
- virtual bool simpleMap(C2Config::level_t from, int32_t *to) {
- return sDolbyVisionLevels.map(from, to);
- }
- virtual bool simpleMap(int32_t from, C2Config::level_t *to) {
- return sDolbyVisionLevels.map(from, to);
- }
- virtual bool simpleMap(C2Config::profile_t from, int32_t *to) {
- return sDolbyVisionProfiles.map(from, to);
- }
- virtual bool simpleMap(int32_t from, C2Config::profile_t *to) {
- return sDolbyVisionProfiles.map(from, to);
- }
-};
-
-struct H263ProfileLevelMapper : ProfileLevelMapperHelper {
- virtual bool simpleMap(C2Config::level_t from, int32_t *to) {
- return sH263Levels.map(from, to);
- }
- virtual bool simpleMap(int32_t from, C2Config::level_t *to) {
- return sH263Levels.map(from, to);
- }
- virtual bool simpleMap(C2Config::profile_t from, int32_t *to) {
- return sH263Profiles.map(from, to);
- }
- virtual bool simpleMap(int32_t from, C2Config::profile_t *to) {
- return sH263Profiles.map(from, to);
- }
-};
-
-struct HevcProfileLevelMapper : ProfileLevelMapperHelper {
- virtual bool simpleMap(C2Config::level_t from, int32_t *to) {
- return sHevcLevels.map(from, to);
- }
- virtual bool simpleMap(int32_t from, C2Config::level_t *to) {
- return sHevcLevels.map(from, to);
- }
- virtual bool simpleMap(C2Config::profile_t from, int32_t *to) {
- return sHevcProfiles.map(from, to);
- }
- virtual bool simpleMap(int32_t from, C2Config::profile_t *to) {
- return sHevcProfiles.map(from, to);
- }
-};
-
-struct Mpeg2ProfileLevelMapper : ProfileLevelMapperHelper {
- virtual bool simpleMap(C2Config::level_t from, int32_t *to) {
- return sMpeg2Levels.map(from, to);
- }
- virtual bool simpleMap(int32_t from, C2Config::level_t *to) {
- return sMpeg2Levels.map(from, to);
- }
- virtual bool simpleMap(C2Config::profile_t from, int32_t *to) {
- return sMpeg2Profiles.map(from, to);
- }
- virtual bool simpleMap(int32_t from, C2Config::profile_t *to) {
- return sMpeg2Profiles.map(from, to);
- }
-};
-
-struct Mpeg4ProfileLevelMapper : ProfileLevelMapperHelper {
- virtual bool simpleMap(C2Config::level_t from, int32_t *to) {
- return sMpeg4Levels.map(from, to);
- }
- virtual bool simpleMap(int32_t from, C2Config::level_t *to) {
- return sMpeg4Levels.map(from, to);
- }
- virtual bool simpleMap(C2Config::profile_t from, int32_t *to) {
- return sMpeg4Profiles.map(from, to);
- }
- virtual bool simpleMap(int32_t from, C2Config::profile_t *to) {
- return sMpeg4Profiles.map(from, to);
- }
-};
-
-// VP8 has no profiles and levels in Codec 2.0, but we use main profile and level 0 in MediaCodec
-// map all profiles and levels to that.
-struct Vp8ProfileLevelMapper : ProfileLevelMapperHelper {
- virtual bool simpleMap(C2Config::level_t, int32_t *to) {
- *to = VP8Level_Version0;
- return true;
- }
- virtual bool simpleMap(int32_t, C2Config::level_t *to) {
- *to = C2Config::LEVEL_UNUSED;
- return true;
- }
- virtual bool simpleMap(C2Config::profile_t, int32_t *to) {
- *to = VP8ProfileMain;
- return true;
- }
- virtual bool simpleMap(int32_t, C2Config::profile_t *to) {
- *to = C2Config::PROFILE_UNUSED;
- return true;
- }
-};
-
-struct Vp9ProfileLevelMapper : ProfileLevelMapperHelper {
- virtual bool simpleMap(C2Config::level_t from, int32_t *to) {
- return sVp9Levels.map(from, to);
- }
- virtual bool simpleMap(int32_t from, C2Config::level_t *to) {
- return sVp9Levels.map(from, to);
- }
- virtual bool simpleMap(C2Config::profile_t from, int32_t *to) {
- return sVp9Profiles.map(from, to);
- }
- virtual bool simpleMap(int32_t from, C2Config::profile_t *to) {
- return sVp9Profiles.map(from, to);
- }
-};
-
-} // namespace
-
-// static
-std::shared_ptr<C2Mapper::ProfileLevelMapper>
-C2Mapper::GetProfileLevelMapper(std::string mediaType) {
- std::transform(mediaType.begin(), mediaType.begin(), mediaType.end(), ::tolower);
- if (mediaType == MIMETYPE_AUDIO_AAC) {
- return std::make_shared<AacProfileLevelMapper>();
- } else if (mediaType == MIMETYPE_VIDEO_AVC) {
- return std::make_shared<AvcProfileLevelMapper>();
- } else if (mediaType == MIMETYPE_VIDEO_DOLBY_VISION) {
- return std::make_shared<DolbyVisionProfileLevelMapper>();
- } else if (mediaType == MIMETYPE_VIDEO_H263) {
- return std::make_shared<H263ProfileLevelMapper>();
- } else if (mediaType == MIMETYPE_VIDEO_HEVC) {
- return std::make_shared<HevcProfileLevelMapper>();
- } else if (mediaType == MIMETYPE_VIDEO_MPEG2) {
- return std::make_shared<Mpeg2ProfileLevelMapper>();
- } else if (mediaType == MIMETYPE_VIDEO_MPEG4) {
- return std::make_shared<Mpeg4ProfileLevelMapper>();
- } else if (mediaType == MIMETYPE_VIDEO_VP8) {
- return std::make_shared<Vp8ProfileLevelMapper>();
- } else if (mediaType == MIMETYPE_VIDEO_VP9) {
- return std::make_shared<Vp9ProfileLevelMapper>();
- }
- return nullptr;
-}
-
-// static
-bool C2Mapper::map(C2Config::bitrate_mode_t from, int32_t *to) {
- return sBitrateModes.map(from, to);
-}
-
-// static
-bool C2Mapper::map(int32_t from, C2Config::bitrate_mode_t *to) {
- return sBitrateModes.map(from, to);
-}
-
-// static
-bool C2Mapper::map(C2Config::pcm_encoding_t from, int32_t *to) {
- return sPcmEncodings.map(from, to);
-}
-
-// static
-bool C2Mapper::map(int32_t from, C2Config::pcm_encoding_t *to) {
- return sPcmEncodings.map(from, to);
-}
-
-// static
-bool C2Mapper::map(C2Color::range_t from, int32_t *to) {
- bool res = true;
- // map SDK defined values directly. For other values, use wrapping from ColorUtils.
- if (!sColorRanges.map(from, to)) {
- ColorAspects::Range sfRange;
-
- // map known constants and keep vendor extensions. all other values are mapped to 'Other'
- if (!sColorRangesSf.map(from, &sfRange)) {
- // use static cast and ensure it is in the extension range
- if (from < C2Color::RANGE_VENDOR_START || from > C2Color::RANGE_OTHER) {
- sfRange = ColorAspects::RangeOther;
- res = false;
- }
- }
-
- *to = ColorUtils::wrapColorAspectsIntoColorRange(sfRange);
- }
- return res;
-}
-
-// static
-bool C2Mapper::map(int32_t from, C2Color::range_t *to) {
- // map SDK defined values directly. For other values, use wrapping from ColorUtils.
- if (!sColorRanges.map(from, to)) {
- ColorAspects::Range sfRange;
- (void)ColorUtils::unwrapColorAspectsFromColorRange(from, &sfRange);
-
- // map known constants and keep vendor extensions. all other values are mapped to 'Other'
- if (!sColorRangesSf.map(sfRange, to)) {
- // use static cast and ensure it is in the extension range
- *to = (C2Color::range_t)sfRange;
- if (*to < C2Color::RANGE_VENDOR_START || *to > C2Color::RANGE_OTHER) {
- *to = C2Color::RANGE_OTHER;
- return false;
- }
- }
- }
-
- return true;
-}
-
-// static
-bool C2Mapper::map(C2Color::range_t from, ColorAspects::Range *to) {
- return sColorRangesSf.map(from, to);
-}
-
-// static
-bool C2Mapper::map(ColorAspects::Range from, C2Color::range_t *to) {
- return sColorRangesSf.map(from, to);
-}
-
-// static
-bool C2Mapper::map(C2Color::primaries_t primaries, C2Color::matrix_t matrix, int32_t *standard) {
- ColorAspects::Primaries sfPrimaries;
- ColorAspects::MatrixCoeffs sfMatrix;
- bool res = true;
-
- // map known constants and keep vendor extensions. all other values are mapped to 'Other'
- if (!sColorPrimariesSf.map(primaries, &sfPrimaries)) {
- // ensure it is in the extension range and use static cast
- if (primaries < C2Color::PRIMARIES_VENDOR_START || primaries > C2Color::PRIMARIES_OTHER) {
- // undefined non-extension values map to 'Other'
- sfPrimaries = ColorAspects::PrimariesOther;
- res = false;
- } else {
- sfPrimaries = (ColorAspects::Primaries)primaries;
- }
- }
-
- if (!sColorMatricesSf.map(matrix, &sfMatrix)) {
- // use static cast and ensure it is in the extension range
- if (matrix < C2Color::MATRIX_VENDOR_START || matrix > C2Color::MATRIX_OTHER) {
- // undefined non-extension values map to 'Other'
- sfMatrix = ColorAspects::MatrixOther;
- res = false;
- } else {
- sfMatrix = (ColorAspects::MatrixCoeffs)matrix;
- }
- }
-
- *standard = ColorUtils::wrapColorAspectsIntoColorStandard(sfPrimaries, sfMatrix);
-
- return res;
-}
-
-// static
-bool C2Mapper::map(int32_t standard, C2Color::primaries_t *primaries, C2Color::matrix_t *matrix) {
- // first map to stagefright foundation aspects => these actually map nearly 1:1 to
- // Codec 2.0 aspects
- ColorAspects::Primaries sfPrimaries;
- ColorAspects::MatrixCoeffs sfMatrix;
- bool res = true;
- (void)ColorUtils::unwrapColorAspectsFromColorStandard(standard, &sfPrimaries, &sfMatrix);
-
- // map known constants and keep vendor extensions. all other values are mapped to 'Other'
- if (!sColorPrimariesSf.map(sfPrimaries, primaries)) {
- // use static cast and ensure it is in the extension range
- *primaries = (C2Color::primaries_t)sfPrimaries;
- if (*primaries < C2Color::PRIMARIES_VENDOR_START || *primaries > C2Color::PRIMARIES_OTHER) {
- *primaries = C2Color::PRIMARIES_OTHER;
- res = false;
- }
- }
-
- if (!sColorMatricesSf.map(sfMatrix, matrix)) {
- // use static cast and ensure it is in the extension range
- *matrix = (C2Color::matrix_t)sfMatrix;
- if (*matrix < C2Color::MATRIX_VENDOR_START || *matrix > C2Color::MATRIX_OTHER) {
- *matrix = C2Color::MATRIX_OTHER;
- res = false;
- }
- }
-
- return res;
-}
-
-// static
-bool C2Mapper::map(C2Color::primaries_t from, ColorAspects::Primaries *to) {
- return sColorPrimariesSf.map(from, to);
-}
-
-// static
-bool C2Mapper::map(ColorAspects::Primaries from, C2Color::primaries_t *to) {
- return sColorPrimariesSf.map(from, to);
-}
-
-// static
-bool C2Mapper::map(C2Color::matrix_t from, ColorAspects::MatrixCoeffs *to) {
- return sColorMatricesSf.map(from, to);
-}
-
-// static
-bool C2Mapper::map(ColorAspects::MatrixCoeffs from, C2Color::matrix_t *to) {
- return sColorMatricesSf.map(from, to);
-}
-
-// static
-bool C2Mapper::map(C2Color::transfer_t from, int32_t *to) {
- bool res = true;
- // map SDK defined values directly. For other values, use wrapping from ColorUtils.
- if (!sColorTransfers.map(from, to)) {
- ColorAspects::Transfer sfTransfer;
-
- // map known constants and keep vendor extensions. all other values are mapped to 'Other'
- if (!sColorTransfersSf.map(from, &sfTransfer)) {
- // use static cast and ensure it is in the extension range
- if (from < C2Color::TRANSFER_VENDOR_START || from > C2Color::TRANSFER_OTHER) {
- sfTransfer = ColorAspects::TransferOther;
- res = false;
- }
- }
-
- *to = ColorUtils::wrapColorAspectsIntoColorTransfer(sfTransfer);
- }
- return res;
-}
-
-// static
-bool C2Mapper::map(int32_t from, C2Color::transfer_t *to) {
- // map SDK defined values directly. For other values, use wrapping from ColorUtils.
- if (!sColorTransfers.map(from, to)) {
- ColorAspects::Transfer sfTransfer;
- (void)ColorUtils::unwrapColorAspectsFromColorTransfer(from, &sfTransfer);
-
- // map known constants and keep vendor extensions. all other values are mapped to 'Other'
- if (!sColorTransfersSf.map(sfTransfer, to)) {
- // use static cast and ensure it is in the extension range
- *to = (C2Color::transfer_t)sfTransfer;
- if (*to < C2Color::TRANSFER_VENDOR_START || *to > C2Color::TRANSFER_OTHER) {
- *to = C2Color::TRANSFER_OTHER;
- return false;
- }
- }
- }
-
- return true;
-}
-
-// static
-bool C2Mapper::map(
- C2Color::range_t range, C2Color::primaries_t primaries,
- C2Color::matrix_t matrix, C2Color::transfer_t transfer, uint32_t *dataSpace) {
-#if 0
- // pure reimplementation
- *dataSpace = HAL_DATASPACE_UNKNOWN; // this is 0
-
- switch (range) {
- case C2Color::RANGE_FULL: *dataSpace |= HAL_DATASPACE_RANGE_FULL; break;
- case C2Color::RANGE_LIMITED: *dataSpace |= HAL_DATASPACE_RANGE_LIMITED; break;
- default: break;
- }
-
- switch (transfer) {
- case C2Color::TRANSFER_LINEAR: *dataSpace |= HAL_DATASPACE_TRANSFER_LINEAR; break;
- case C2Color::TRANSFER_SRGB: *dataSpace |= HAL_DATASPACE_TRANSFER_SRGB; break;
- case C2Color::TRANSFER_170M: *dataSpace |= HAL_DATASPACE_TRANSFER_SMPTE_170M; break;
- case C2Color::TRANSFER_GAMMA22: *dataSpace |= HAL_DATASPACE_TRANSFER_GAMMA2_2; break;
- case C2Color::TRANSFER_GAMMA28: *dataSpace |= HAL_DATASPACE_TRANSFER_GAMMA2_8; break;
- case C2Color::TRANSFER_ST2084: *dataSpace |= HAL_DATASPACE_TRANSFER_ST2084; break;
- case C2Color::TRANSFER_HLG: *dataSpace |= HAL_DATASPACE_TRANSFER_HLG; break;
- default: break;
- }
-
- switch (primaries) {
- case C2Color::PRIMARIES_BT601_525:
- *dataSpace |= (matrix == C2Color::MATRIX_SMPTE240M
- || matrix == C2Color::MATRIX_BT709)
- ? HAL_DATASPACE_STANDARD_BT601_525_UNADJUSTED
- : HAL_DATASPACE_STANDARD_BT601_525;
- break;
- case C2Color::PRIMARIES_BT601_625:
- *dataSpace |= (matrix == C2Color::MATRIX_SMPTE240M
- || matrix == C2Color::MATRIX_BT709)
- ? HAL_DATASPACE_STANDARD_BT601_625_UNADJUSTED
- : HAL_DATASPACE_STANDARD_BT601_625;
- break;
- case C2Color::PRIMARIES_BT2020:
- *dataSpace |= (matrix == C2Color::MATRIX_BT2020CONSTANT
- ? HAL_DATASPACE_STANDARD_BT2020_CONSTANT_LUMINANCE
- : HAL_DATASPACE_STANDARD_BT2020);
- break;
- case C2Color::PRIMARIES_BT470_M:
- *dataSpace |= HAL_DATASPACE_STANDARD_BT470M;
- break;
- case C2Color::PRIMARIES_BT709:
- *dataSpace |= HAL_DATASPACE_STANDARD_BT709;
- break;
- default: break;
- }
-#else
- // for now use legacy implementation
- ColorAspects aspects;
- if (!sColorRangesSf.map(range, &aspects.mRange)) {
- aspects.mRange = ColorAspects::RangeUnspecified;
- }
- if (!sColorPrimariesSf.map(primaries, &aspects.mPrimaries)) {
- aspects.mPrimaries = ColorAspects::PrimariesUnspecified;
- }
- if (!sColorMatricesSf.map(matrix, &aspects.mMatrixCoeffs)) {
- aspects.mMatrixCoeffs = ColorAspects::MatrixUnspecified;
- }
- if (!sColorTransfersSf.map(transfer, &aspects.mTransfer)) {
- aspects.mTransfer = ColorAspects::TransferUnspecified;
- }
- *dataSpace = ColorUtils::getDataSpaceForColorAspects(aspects, true /* mayExpand */);
-#endif
- return true;
-}
-
-// static
-bool C2Mapper::map(C2Color::transfer_t from, ColorAspects::Transfer *to) {
- return sColorTransfersSf.map(from, to);
-}
-
-// static
-bool C2Mapper::map(ColorAspects::Transfer from, C2Color::transfer_t *to) {
- return sColorTransfersSf.map(from, to);
-}
diff --git a/media/sfplugin/utils/Codec2Mapper.h b/media/sfplugin/utils/Codec2Mapper.h
deleted file mode 100644
index 1eeb92e..0000000
--- a/media/sfplugin/utils/Codec2Mapper.h
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * Copyright 2018 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ANDROID_CODEC2_MAPPER_H_
-#define ANDROID_CODEC2_MAPPER_H_
-
-#include <C2Config.h>
-
-#include <media/stagefright/foundation/ColorUtils.h>
-
-#include <memory>
-
-namespace android {
-
- /**
- * Utility class to map Codec 2.0 values to android values.
- */
- struct C2Mapper {
- struct ProfileLevelMapper {
- virtual bool mapProfile(C2Config::profile_t, int32_t*) = 0;
- virtual bool mapProfile(int32_t, C2Config::profile_t*) = 0;
- virtual bool mapLevel(C2Config::level_t, int32_t*) = 0;
- virtual bool mapLevel(int32_t, C2Config::level_t*) = 0;
- virtual ~ProfileLevelMapper() = default;
- };
-
- static std::shared_ptr<ProfileLevelMapper>
- GetProfileLevelMapper(std::string mediaType);
-
- // convert between bitrates
- static bool map(C2Config::bitrate_mode_t, int32_t*);
- static bool map(int32_t, C2Config::bitrate_mode_t*);
-
- // convert between pcm encodings
- static bool map(C2Config::pcm_encoding_t, int32_t*);
- static bool map(int32_t, C2Config::pcm_encoding_t*);
-
- // convert between picture types
- static bool map(C2Config::picture_type_t, int32_t*);
- static bool map(int32_t, C2Config::picture_type_t*);
-
- // convert between color aspects
- static bool map(C2Color::range_t, int32_t*);
- static bool map(int32_t, C2Color::range_t*);
- static bool map(C2Color::primaries_t, C2Color::matrix_t, int32_t*);
- static bool map(int32_t, C2Color::primaries_t*, C2Color::matrix_t*);
- static bool map(C2Color::transfer_t, int32_t*);
- static bool map(int32_t, C2Color::transfer_t*);
-
- static bool map(
- C2Color::range_t, C2Color::primaries_t, C2Color::matrix_t, C2Color::transfer_t,
- uint32_t *dataSpace);
-
- static bool map(C2Color::range_t, ColorAspects::Range*);
- static bool map(ColorAspects::Range, C2Color::range_t*);
- static bool map(C2Color::primaries_t, ColorAspects::Primaries*);
- static bool map(ColorAspects::Primaries, C2Color::primaries_t*);
- static bool map(C2Color::matrix_t, ColorAspects::MatrixCoeffs*);
- static bool map(ColorAspects::MatrixCoeffs, C2Color::matrix_t*);
- static bool map(C2Color::transfer_t, ColorAspects::Transfer*);
- static bool map(ColorAspects::Transfer, C2Color::transfer_t*);
- };
-}
-
-#endif // ANDROID_CODEC2_MAPPER_H_