From a191f80f6c8da76c437e270e302500e6c247d23e Mon Sep 17 00:00:00 2001 From: asalexan <80473081+asalexan@users.noreply.github.com> Date: Thu, 16 Sep 2021 14:44:03 -0400 Subject: [PATCH 01/25] Draft cpu functions --- stream_compaction/cpu.cu | 42 +++++++++++++++++++++++++++++++++++----- 1 file changed, 37 insertions(+), 5 deletions(-) diff --git a/stream_compaction/cpu.cu b/stream_compaction/cpu.cu index 719fa11..36461d7 100644 --- a/stream_compaction/cpu.cu +++ b/stream_compaction/cpu.cu @@ -19,7 +19,10 @@ namespace StreamCompaction { */ void scan(int n, int *odata, const int *idata) { timer().startCpuTimer(); - // TODO + odata[0] = 0; // explicit starts with 0 + for (int i = 0; i < n - 1; i++){ + odata[i+1] = odata[i] + idata[i]; + } timer().endCpuTimer(); } @@ -30,9 +33,18 @@ namespace StreamCompaction { */ int compactWithoutScan(int n, int *odata, const int *idata) { timer().startCpuTimer(); - // TODO + + int compactSize = 0; + for (int i = 0; i < n; i++){ + bool elem = idata[i]; + if (elem){ + odata[compactSize] = elem; + compactSize++; + } + } + timer().endCpuTimer(); - return -1; + return compactSize; } /** @@ -42,9 +54,29 @@ namespace StreamCompaction { */ int compactWithScan(int n, int *odata, const int *idata) { timer().startCpuTimer(); - // TODO + + // map bools to 0s and 1s + int intData[n]; + for (int i = 0; i < n; i++){ + intData[i] = idata[i] ? 1 : 0; + } + + // scan resulting array + int scannedData[n]; + scan(n, &scannedData[0], &intData[0]); + + // use scatter to produce output + int size = scannedData[n-1] - 1; + int scatter_i = 0; + for (int i = 0; i < n; i++){ + if (idata[i]){ + odata[scatter_i] = idata[i]; + scatter_i++; + } + } + timer().endCpuTimer(); - return -1; + return size; } } } From 3757d5d06f6803480914b90da61a16882f4acb01 Mon Sep 17 00:00:00 2001 From: asalexan <80473081+asalexan@users.noreply.github.com> Date: Thu, 16 Sep 2021 15:15:16 -0400 Subject: [PATCH 02/25] Draft naive scan implementation --- stream_compaction/naive.cu | 41 ++++++++++++++++++++++++++++++++++++-- 1 file changed, 39 insertions(+), 2 deletions(-) diff --git a/stream_compaction/naive.cu b/stream_compaction/naive.cu index 4308876..349bfd3 100644 --- a/stream_compaction/naive.cu +++ b/stream_compaction/naive.cu @@ -3,6 +3,12 @@ #include "common.h" #include "naive.h" +#define blockSize 128; +dim3 threadsPerBlock(blockSize); + +int *dev_data1; +int *dev_data2; + namespace StreamCompaction { namespace Naive { using StreamCompaction::Common::PerformanceTimer; @@ -11,15 +17,46 @@ namespace StreamCompaction { static PerformanceTimer timer; return timer; } - // TODO: __global__ + __global__ void kernScan(int n, int *odata, int *idata, int d){ + int index = (blockDim.x * blockIdx.x) + threadIdx.x; + + int offset = pow(2, d-1); + if (index >= offset){ + odata[index] = odata[index - offset] + idata[index]; + } + else{ + odata[index] = idata[index]; + } + } /** * Performs prefix-sum (aka scan) on idata, storing the result into odata. */ void scan(int n, int *odata, const int *idata) { + + // allocate memory + dim3 fullBlocksPerGrid((n + blockSize - 1) / blockSize); + cudaMalloc((void**)&dev_data1, n * sizeof(int)); + checkCUDAErrorWithLine("cudaMalloc dev_data1 failed!"); + cudaMalloc((void**)&dev_data2, n * sizeof(int)); + timer().startGpuTimer(); - // TODO + + // map bools to ints + kernMapToBoolean<<>>(n, idata, dev_data1); + + // for log iterations, perform scan + for (int d = 1; d < ilog2ceil(n); d++){ + kernScan<<>>(n, dev_data2, dev_data1, d); + + // ping-pong + int *tmp = dev_data1; + dev_data1 = dev_data2; + dev_data2 = tmp; + } timer().endGpuTimer(); + + // cudaMemcpy dev_data2 to odata (device -> host) } } } From 81ed8b78bf7cd1976263d67a6b55f87b1f98a793 Mon Sep 17 00:00:00 2001 From: asalexan Date: Thu, 16 Sep 2021 17:36:04 -0400 Subject: [PATCH 03/25] Draft all of project2 without build (without lab computer) --- stream_compaction/common.cu | 3 +- stream_compaction/efficient.cu | 61 +++++++++++++++++++++++++++++++--- stream_compaction/naive.cu | 9 +++-- 3 files changed, 63 insertions(+), 10 deletions(-) diff --git a/stream_compaction/common.cu b/stream_compaction/common.cu index 2ed6d63..0d7fc90 100644 --- a/stream_compaction/common.cu +++ b/stream_compaction/common.cu @@ -23,7 +23,8 @@ namespace StreamCompaction { * which map to 0 will be removed, and elements which map to 1 will be kept. */ __global__ void kernMapToBoolean(int n, int *bools, const int *idata) { - // TODO + int index = (blockDim.x * blockIdx.x) + threadIdx.x; + idata[index] = bools[index] ? 1 : 0; } /** diff --git a/stream_compaction/efficient.cu b/stream_compaction/efficient.cu index 2db346e..c924cce 100644 --- a/stream_compaction/efficient.cu +++ b/stream_compaction/efficient.cu @@ -3,6 +3,12 @@ #include "common.h" #include "efficient.h" +#define blockSize 128 +dim3 threadsPerBlock(blockSize); + +int *dev_data_scan; +int *dev_data_compact; + namespace StreamCompaction { namespace Efficient { using StreamCompaction::Common::PerformanceTimer; @@ -12,13 +18,44 @@ namespace StreamCompaction { return timer; } + __global__ void kernParallelReduction(int n, int *data, int d){ + int index = (blockDim.x * blockIdx.x) + threadIdx.x; + data[index + pow(2, d+1) - 1] += data[index + pow(2, d) - 1]; + } + + __global__ void kernDownSweep(int n, int *data, int d){ + int index = (blockDim.x + blockIdx.x) + threadIdx.x; + int leftChild = data[index + pow(2, d) - 1]; + data[index + pow(2, d) - 1] = data[index + pow(2, d+1) - 1]; + data[index + pow(2, d+1) - 1] += leftChild; + } + /** * Performs prefix-sum (aka scan) on idata, storing the result into odata. */ - void scan(int n, int *odata, const int *idata) { + void scan(int n, int *odata, const int *idata) + { + // allocate memory + dim3 fullBlocksPerGrid((n + blockSize - 1) / blockSize); + cudaMalloc((void **)&dev_data_scan, n * sizeof(int)); + checkCUDAErrorWithLine("cudaMalloc dev_data failed!"); + timer().startGpuTimer(); - // TODO + + // perform up-sweep (parallel reduction) + for (int d = 0; d < ilog2ceil(n) - 1; d++){ + kernParallelReduction<<>>(n, dev_data_scan, d); + } + + // perform down-sweep + dev_data_scan[n - 1] = 0; + for (int d = ilog2ceil(n) - 1; d >= 0; d--){ + kernDownSweep<<>>(n, dev_data_scan, d); + } timer().endGpuTimer(); + + cudaMemcpy(odata, dev_data_scan, n * sizeof(int), cudaMemcpyDeviceToHost); + cudaFree(dev_data_scan); } /** @@ -31,10 +68,26 @@ namespace StreamCompaction { * @returns The number of elements remaining after compaction. */ int compact(int n, int *odata, const int *idata) { + // allocate memory + dim3 fullBlocksPerGrid((n + blockSize - 1) / blockSize); + cudaMalloc((void **)&dev_data_compact, n * sizeof(int)); + checkCUDAErrorWithLine("cudaMalloc dev_data failed!"); + timer().startGpuTimer(); - // TODO + // map bools to ints + kernMapToBoolean<<>>(n, idata, dev_data_compact); + + scan(n, dev_data_compact, dev_data_compact); + + // TODO: revisit once have access to lab computer + // change way you handle dev_data + kernScatter<<>>(n, odata, idata, dev_data_compact, dev_data_compact); + timer().endGpuTimer(); - return -1; + + cudaFree(dev_data_compact); + + return dev_data_compact[n-1]; } } } diff --git a/stream_compaction/naive.cu b/stream_compaction/naive.cu index 349bfd3..7f4af8f 100644 --- a/stream_compaction/naive.cu +++ b/stream_compaction/naive.cu @@ -41,9 +41,6 @@ namespace StreamCompaction { cudaMalloc((void**)&dev_data2, n * sizeof(int)); timer().startGpuTimer(); - - // map bools to ints - kernMapToBoolean<<>>(n, idata, dev_data1); // for log iterations, perform scan for (int d = 1; d < ilog2ceil(n); d++){ @@ -55,8 +52,10 @@ namespace StreamCompaction { dev_data2 = tmp; } timer().endGpuTimer(); - - // cudaMemcpy dev_data2 to odata (device -> host) + // copy to odata to return + cudaMemcpy(odata, dev_data2, n * sizeof(int), cudaMemcpyDeviceToHost); + cudaFree(dev_data1); + cudaFree(dev_data2); } } } From d18a3f2140df3403dcca362c99f43a4f2c7497ff Mon Sep 17 00:00:00 2001 From: ASHLEY LEE Date: Fri, 17 Sep 2021 15:07:45 -0400 Subject: [PATCH 04/25] Finish CPU scan and compaction --- src/main.cpp | 17 +++++++++-------- stream_compaction/common.cu | 4 ++-- stream_compaction/cpu.cu | 22 +++++++++------------- stream_compaction/efficient.cu | 21 +++++++++++---------- stream_compaction/naive.cu | 10 +++++----- 5 files changed, 36 insertions(+), 38 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 896ac2b..82b4973 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -13,7 +13,8 @@ #include #include "testing_helpers.hpp" -const int SIZE = 1 << 8; // feel free to change the size of array +//const int SIZE = 1 << 8; // feel free to change the size of array +const int SIZE = 10; const int NPOT = SIZE - 3; // Non-Power-Of-Two int *a = new int[SIZE]; int *b = new int[SIZE]; @@ -47,20 +48,20 @@ int main(int argc, char* argv[]) { printArray(NPOT, b, true); printCmpResult(NPOT, b, c); - zeroArray(SIZE, c); + /*zeroArray(SIZE, c); printDesc("naive scan, power-of-two"); StreamCompaction::Naive::scan(SIZE, c, a); printElapsedTime(StreamCompaction::Naive::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); //printArray(SIZE, c, true); printCmpResult(SIZE, b, c); - + */ /* For bug-finding only: Array of 1s to help find bugs in stream compaction or scan onesArray(SIZE, c); printDesc("1s array for finding bugs"); StreamCompaction::Naive::scan(SIZE, c, a); printArray(SIZE, c, true); */ - zeroArray(SIZE, c); + /* zeroArray(SIZE, c); printDesc("naive scan, non-power-of-two"); StreamCompaction::Naive::scan(NPOT, c, a); printElapsedTime(StreamCompaction::Naive::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); @@ -94,7 +95,7 @@ int main(int argc, char* argv[]) { printElapsedTime(StreamCompaction::Thrust::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); //printArray(NPOT, c, true); printCmpResult(NPOT, b, c); - + */ printf("\n"); printf("*****************************\n"); printf("** STREAM COMPACTION TESTS **\n"); @@ -125,14 +126,14 @@ int main(int argc, char* argv[]) { expectedNPOT = count; printArray(count, c, true); printCmpLenResult(count, expectedNPOT, b, c); - + zeroArray(SIZE, c); printDesc("cpu compact with scan"); count = StreamCompaction::CPU::compactWithScan(SIZE, c, a); printElapsedTime(StreamCompaction::CPU::timer().getCpuElapsedTimeForPreviousOperation(), "(std::chrono Measured)"); printArray(count, c, true); printCmpLenResult(count, expectedCount, b, c); - + /* zeroArray(SIZE, c); printDesc("work-efficient compact, power-of-two"); count = StreamCompaction::Efficient::compact(SIZE, c, a); @@ -146,7 +147,7 @@ int main(int argc, char* argv[]) { printElapsedTime(StreamCompaction::Efficient::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); //printArray(count, c, true); printCmpLenResult(count, expectedNPOT, b, c); - + */ system("pause"); // stop Win32 console from closing on exit delete[] a; delete[] b; diff --git a/stream_compaction/common.cu b/stream_compaction/common.cu index 0d7fc90..9074185 100644 --- a/stream_compaction/common.cu +++ b/stream_compaction/common.cu @@ -23,8 +23,8 @@ namespace StreamCompaction { * which map to 0 will be removed, and elements which map to 1 will be kept. */ __global__ void kernMapToBoolean(int n, int *bools, const int *idata) { - int index = (blockDim.x * blockIdx.x) + threadIdx.x; - idata[index] = bools[index] ? 1 : 0; + /* int index = (blockDim.x * blockIdx.x) + threadIdx.x; + idata[index] = bools[index] ? 1 : 0;*/ } /** diff --git a/stream_compaction/cpu.cu b/stream_compaction/cpu.cu index 36461d7..c0ad9ab 100644 --- a/stream_compaction/cpu.cu +++ b/stream_compaction/cpu.cu @@ -1,6 +1,6 @@ #include #include "cpu.h" - +#include #include "common.h" namespace StreamCompaction { @@ -55,23 +55,19 @@ namespace StreamCompaction { int compactWithScan(int n, int *odata, const int *idata) { timer().startCpuTimer(); - // map bools to 0s and 1s - int intData[n]; - for (int i = 0; i < n; i++){ - intData[i] = idata[i] ? 1 : 0; + // scan array, replacing true vals with 1s + odata[0] = 0; + for (int i = 0; i < n; i++) { + int elem = idata[i] ? 1 : 0; + odata[i + 1] = odata[i] + elem; } - // scan resulting array - int scannedData[n]; - scan(n, &scannedData[0], &intData[0]); - // use scatter to produce output - int size = scannedData[n-1] - 1; - int scatter_i = 0; + int size = odata[n-1]; for (int i = 0; i < n; i++){ if (idata[i]){ - odata[scatter_i] = idata[i]; - scatter_i++; + int outIndex = odata[i]; + odata[outIndex] = 1; } } diff --git a/stream_compaction/efficient.cu b/stream_compaction/efficient.cu index c924cce..808d731 100644 --- a/stream_compaction/efficient.cu +++ b/stream_compaction/efficient.cu @@ -19,15 +19,15 @@ namespace StreamCompaction { } __global__ void kernParallelReduction(int n, int *data, int d){ - int index = (blockDim.x * blockIdx.x) + threadIdx.x; - data[index + pow(2, d+1) - 1] += data[index + pow(2, d) - 1]; + //int index = (blockDim.x * blockIdx.x) + threadIdx.x; + //data[index + pow(2, d+1) - 1] += data[index + pow(2, d) - 1]; } __global__ void kernDownSweep(int n, int *data, int d){ - int index = (blockDim.x + blockIdx.x) + threadIdx.x; - int leftChild = data[index + pow(2, d) - 1]; - data[index + pow(2, d) - 1] = data[index + pow(2, d+1) - 1]; - data[index + pow(2, d+1) - 1] += leftChild; + //int index = (blockDim.x + blockIdx.x) + threadIdx.x; + //int leftChild = data[index + pow(2, d) - 1]; + // data[index + pow(2, d) - 1] = data[index + pow(2, d+1) - 1]; + // data[index + pow(2, d+1) - 1] += leftChild; } /** @@ -36,7 +36,7 @@ namespace StreamCompaction { void scan(int n, int *odata, const int *idata) { // allocate memory - dim3 fullBlocksPerGrid((n + blockSize - 1) / blockSize); + /*dim3 fullBlocksPerGrid((n + blockSize - 1) / blockSize); cudaMalloc((void **)&dev_data_scan, n * sizeof(int)); checkCUDAErrorWithLine("cudaMalloc dev_data failed!"); @@ -55,7 +55,7 @@ namespace StreamCompaction { timer().endGpuTimer(); cudaMemcpy(odata, dev_data_scan, n * sizeof(int), cudaMemcpyDeviceToHost); - cudaFree(dev_data_scan); + cudaFree(dev_data_scan);*/ } /** @@ -69,7 +69,7 @@ namespace StreamCompaction { */ int compact(int n, int *odata, const int *idata) { // allocate memory - dim3 fullBlocksPerGrid((n + blockSize - 1) / blockSize); + /*dim3 fullBlocksPerGrid((n + blockSize - 1) / blockSize); cudaMalloc((void **)&dev_data_compact, n * sizeof(int)); checkCUDAErrorWithLine("cudaMalloc dev_data failed!"); @@ -87,7 +87,8 @@ namespace StreamCompaction { cudaFree(dev_data_compact); - return dev_data_compact[n-1]; + return dev_data_compact[n-1];*/ + return 0; } } } diff --git a/stream_compaction/naive.cu b/stream_compaction/naive.cu index 7f4af8f..4161798 100644 --- a/stream_compaction/naive.cu +++ b/stream_compaction/naive.cu @@ -3,7 +3,7 @@ #include "common.h" #include "naive.h" -#define blockSize 128; +#define blockSize 128 dim3 threadsPerBlock(blockSize); int *dev_data1; @@ -18,7 +18,7 @@ namespace StreamCompaction { return timer; } __global__ void kernScan(int n, int *odata, int *idata, int d){ - int index = (blockDim.x * blockIdx.x) + threadIdx.x; + /*int index = (blockDim.x * blockIdx.x) + threadIdx.x; int offset = pow(2, d-1); if (index >= offset){ @@ -26,7 +26,7 @@ namespace StreamCompaction { } else{ odata[index] = idata[index]; - } + }*/ } /** @@ -35,7 +35,7 @@ namespace StreamCompaction { void scan(int n, int *odata, const int *idata) { // allocate memory - dim3 fullBlocksPerGrid((n + blockSize - 1) / blockSize); + /* dim3 fullBlocksPerGrid((n + blockSize - 1) / blockSize); cudaMalloc((void**)&dev_data1, n * sizeof(int)); checkCUDAErrorWithLine("cudaMalloc dev_data1 failed!"); cudaMalloc((void**)&dev_data2, n * sizeof(int)); @@ -55,7 +55,7 @@ namespace StreamCompaction { // copy to odata to return cudaMemcpy(odata, dev_data2, n * sizeof(int), cudaMemcpyDeviceToHost); cudaFree(dev_data1); - cudaFree(dev_data2); + cudaFree(dev_data2);*/ } } } From 5c7b597d740442776d1c07b58bd754ad1bc74a67 Mon Sep 17 00:00:00 2001 From: ASHLEY LEE Date: Fri, 17 Sep 2021 17:21:02 -0400 Subject: [PATCH 05/25] Naive scan done with bugs --- src/main.cpp | 12 ++++++------ stream_compaction/naive.cu | 26 ++++++++++++++++++-------- 2 files changed, 24 insertions(+), 14 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 82b4973..f55015f 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -48,26 +48,26 @@ int main(int argc, char* argv[]) { printArray(NPOT, b, true); printCmpResult(NPOT, b, c); - /*zeroArray(SIZE, c); + zeroArray(SIZE, c); printDesc("naive scan, power-of-two"); StreamCompaction::Naive::scan(SIZE, c, a); printElapsedTime(StreamCompaction::Naive::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); - //printArray(SIZE, c, true); + printArray(SIZE, c, true); printCmpResult(SIZE, b, c); - */ + /* For bug-finding only: Array of 1s to help find bugs in stream compaction or scan onesArray(SIZE, c); printDesc("1s array for finding bugs"); StreamCompaction::Naive::scan(SIZE, c, a); printArray(SIZE, c, true); */ - /* zeroArray(SIZE, c); + zeroArray(SIZE, c); printDesc("naive scan, non-power-of-two"); StreamCompaction::Naive::scan(NPOT, c, a); printElapsedTime(StreamCompaction::Naive::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); - //printArray(SIZE, c, true); + printArray(SIZE, c, true); printCmpResult(NPOT, b, c); - + /* zeroArray(SIZE, c); printDesc("work-efficient scan, power-of-two"); StreamCompaction::Efficient::scan(SIZE, c, a); diff --git a/stream_compaction/naive.cu b/stream_compaction/naive.cu index 4161798..ba4fa27 100644 --- a/stream_compaction/naive.cu +++ b/stream_compaction/naive.cu @@ -18,15 +18,25 @@ namespace StreamCompaction { return timer; } __global__ void kernScan(int n, int *odata, int *idata, int d){ - /*int index = (blockDim.x * blockIdx.x) + threadIdx.x; + int index = (blockDim.x * blockIdx.x) + threadIdx.x; + // shift array for exclusive scan + if (index + 1 >= n) { + return; + } + // if first elem, should be 0 + if (index == 0) { + odata[index] = 0; + } + int offset = pow(2, d-1); + int nextIndex = index + 1; if (index >= offset){ - odata[index] = odata[index - offset] + idata[index]; + odata[nextIndex] = odata[nextIndex - offset] + idata[index]; } else{ - odata[index] = idata[index]; - }*/ + odata[nextIndex] = idata[index]; + } } /** @@ -35,16 +45,16 @@ namespace StreamCompaction { void scan(int n, int *odata, const int *idata) { // allocate memory - /* dim3 fullBlocksPerGrid((n + blockSize - 1) / blockSize); + dim3 fullBlocksPerGrid((n + blockSize - 1) / blockSize); cudaMalloc((void**)&dev_data1, n * sizeof(int)); - checkCUDAErrorWithLine("cudaMalloc dev_data1 failed!"); cudaMalloc((void**)&dev_data2, n * sizeof(int)); + cudaMemcpy(dev_data1, idata, n * sizeof(int), cudaMemcpyHostToDevice); timer().startGpuTimer(); // for log iterations, perform scan for (int d = 1; d < ilog2ceil(n); d++){ - kernScan<<>>(n, dev_data2, dev_data1, d); + kernScan << > > (n, dev_data2, dev_data1, d); // ping-pong int *tmp = dev_data1; @@ -55,7 +65,7 @@ namespace StreamCompaction { // copy to odata to return cudaMemcpy(odata, dev_data2, n * sizeof(int), cudaMemcpyDeviceToHost); cudaFree(dev_data1); - cudaFree(dev_data2);*/ + cudaFree(dev_data2); } } } From f0a985e9b56ed3efed4988e6d7dfd88c93f978b9 Mon Sep 17 00:00:00 2001 From: ASHLEY LEE Date: Sat, 18 Sep 2021 15:43:47 -0400 Subject: [PATCH 06/25] Fix naive scan --- src/main.cpp | 2 +- stream_compaction/naive.cu | 21 +++++++++++++-------- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index f55015f..575e0ec 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -14,7 +14,7 @@ #include "testing_helpers.hpp" //const int SIZE = 1 << 8; // feel free to change the size of array -const int SIZE = 10; +const int SIZE = 8; const int NPOT = SIZE - 3; // Non-Power-Of-Two int *a = new int[SIZE]; int *b = new int[SIZE]; diff --git a/stream_compaction/naive.cu b/stream_compaction/naive.cu index ba4fa27..2826a62 100644 --- a/stream_compaction/naive.cu +++ b/stream_compaction/naive.cu @@ -2,6 +2,7 @@ #include #include "common.h" #include "naive.h" +#include #define blockSize 128 dim3 threadsPerBlock(blockSize); @@ -20,22 +21,24 @@ namespace StreamCompaction { __global__ void kernScan(int n, int *odata, int *idata, int d){ int index = (blockDim.x * blockIdx.x) + threadIdx.x; - // shift array for exclusive scan - if (index + 1 >= n) { + // if d == 1, shift array over to accomodate first 0 + int outIndex = d == 1 ? index + 1 : index; + + // if outIndex >= n, return (skips last elem on first run) + if (outIndex >= n) { return; } // if first elem, should be 0 - if (index == 0) { + if (index == 0 && d == 1) { odata[index] = 0; } int offset = pow(2, d-1); - int nextIndex = index + 1; if (index >= offset){ - odata[nextIndex] = odata[nextIndex - offset] + idata[index]; + odata[outIndex] = idata[index - offset] + idata[index]; } else{ - odata[nextIndex] = idata[index]; + odata[outIndex] = idata[index]; } } @@ -52,8 +55,10 @@ namespace StreamCompaction { timer().startGpuTimer(); + // if non-power of 2, round n up + // for log iterations, perform scan - for (int d = 1; d < ilog2ceil(n); d++){ + for (int d = 1; d < ilog2ceil(n) + 1; d++){ kernScan << > > (n, dev_data2, dev_data1, d); // ping-pong @@ -63,7 +68,7 @@ namespace StreamCompaction { } timer().endGpuTimer(); // copy to odata to return - cudaMemcpy(odata, dev_data2, n * sizeof(int), cudaMemcpyDeviceToHost); + cudaMemcpy(odata, dev_data1, n * sizeof(int), cudaMemcpyDeviceToHost); cudaFree(dev_data1); cudaFree(dev_data2); } From ae1806e604a95e7cdb60ddef637ea9cdec18d11a Mon Sep 17 00:00:00 2001 From: ASHLEY LEE Date: Sat, 18 Sep 2021 18:11:35 -0400 Subject: [PATCH 07/25] Finish efficient upsweep --- src/main.cpp | 12 +++--- stream_compaction/efficient.cu | 74 +++++++++++++++++++++++++--------- stream_compaction/naive.cu | 14 ++++--- 3 files changed, 71 insertions(+), 29 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 575e0ec..382406f 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -67,21 +67,21 @@ int main(int argc, char* argv[]) { printElapsedTime(StreamCompaction::Naive::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); printArray(SIZE, c, true); printCmpResult(NPOT, b, c); - /* + zeroArray(SIZE, c); printDesc("work-efficient scan, power-of-two"); StreamCompaction::Efficient::scan(SIZE, c, a); printElapsedTime(StreamCompaction::Efficient::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); - //printArray(SIZE, c, true); + printArray(SIZE, c, true); printCmpResult(SIZE, b, c); - zeroArray(SIZE, c); + /*zeroArray(SIZE, c); printDesc("work-efficient scan, non-power-of-two"); StreamCompaction::Efficient::scan(NPOT, c, a); printElapsedTime(StreamCompaction::Efficient::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); - //printArray(NPOT, c, true); - printCmpResult(NPOT, b, c); - + printArray(NPOT, c, true); + printCmpResult(NPOT, b, c);*/ + /* zeroArray(SIZE, c); printDesc("thrust scan, power-of-two"); StreamCompaction::Thrust::scan(SIZE, c, a); diff --git a/stream_compaction/efficient.cu b/stream_compaction/efficient.cu index 808d731..ef482c1 100644 --- a/stream_compaction/efficient.cu +++ b/stream_compaction/efficient.cu @@ -2,11 +2,11 @@ #include #include "common.h" #include "efficient.h" +#include #define blockSize 128 -dim3 threadsPerBlock(blockSize); - int *dev_data_scan; +int* dev_data_scan2; int *dev_data_compact; namespace StreamCompaction { @@ -18,16 +18,41 @@ namespace StreamCompaction { return timer; } - __global__ void kernParallelReduction(int n, int *data, int d){ - //int index = (blockDim.x * blockIdx.x) + threadIdx.x; - //data[index + pow(2, d+1) - 1] += data[index + pow(2, d) - 1]; + __global__ void kernParallelReduction(int n, int *data, int d, bool lastLoop){ + int k = (blockDim.x * blockIdx.x) + threadIdx.x; + + // start index for each thread + int startIndex = pow(2, d) - 1; + // offset the index + int index = startIndex + pow(2, d+1) * k; + + int i1 = index; + int i2 = index + pow(2, d); + + data[i2] += data[i1]; } __global__ void kernDownSweep(int n, int *data, int d){ - //int index = (blockDim.x + blockIdx.x) + threadIdx.x; - //int leftChild = data[index + pow(2, d) - 1]; - // data[index + pow(2, d) - 1] = data[index + pow(2, d+1) - 1]; - // data[index + pow(2, d+1) - 1] += leftChild; + int index = (blockDim.x * blockIdx.x) + threadIdx.x; + int i1 = index + pow(2, d) - 1; + int i2 = index + pow(2, d + 1) - 1; + + int leftChild = data[i1]; + data[i1] = data[i2]; + data[i2] += leftChild; + } + + __global__ void kernMakeExclusiveArray(int n, int* inData, int* outData) { + int index = (blockDim.x * blockIdx.x) + threadIdx.x; + // if last index, will be removed + if (index == n - 1) { + outData[index] = 0; + return; + } + if (index == 0) { + outData[0] = 0; + } + outData[index+1] = inData[index]; } /** @@ -36,26 +61,39 @@ namespace StreamCompaction { void scan(int n, int *odata, const int *idata) { // allocate memory - /*dim3 fullBlocksPerGrid((n + blockSize - 1) / blockSize); cudaMalloc((void **)&dev_data_scan, n * sizeof(int)); - checkCUDAErrorWithLine("cudaMalloc dev_data failed!"); + cudaMalloc((void **)&dev_data_scan2, n * sizeof(int)); + cudaMemcpy(dev_data_scan, idata, n * sizeof(int), cudaMemcpyHostToDevice); timer().startGpuTimer(); // perform up-sweep (parallel reduction) - for (int d = 0; d < ilog2ceil(n) - 1; d++){ - kernParallelReduction<<>>(n, dev_data_scan, d); + bool lastLoop = false; + int numThreads = n; + dim3 fullBlocksPerGrid; + for (int d = 0; d < ilog2ceil(n); d++){ + if (d == ilog2ceil(n) - 1) { lastLoop = true; } + + // calc threads and blocks + numThreads = numThreads / 2.f; + fullBlocksPerGrid = dim3((numThreads + blockSize - 1) / blockSize); + + kernParallelReduction<<>>(numThreads, dev_data_scan, d, lastLoop); } + // shift array so it's exclusive + fullBlocksPerGrid = dim3((n + blockSize - 1) / blockSize); + kernMakeExclusiveArray << > > (n, dev_data_scan, dev_data_scan2); + // perform down-sweep - dev_data_scan[n - 1] = 0; - for (int d = ilog2ceil(n) - 1; d >= 0; d--){ + /*for (int d = ilog2ceil(n) - 1; d >= 0; d--) { kernDownSweep<<>>(n, dev_data_scan, d); - } + }*/ timer().endGpuTimer(); - cudaMemcpy(odata, dev_data_scan, n * sizeof(int), cudaMemcpyDeviceToHost); - cudaFree(dev_data_scan);*/ + cudaMemcpy(odata, dev_data_scan2, n * sizeof(int), cudaMemcpyDeviceToHost); + cudaFree(dev_data_scan); + cudaFree(dev_data_scan2); } /** diff --git a/stream_compaction/naive.cu b/stream_compaction/naive.cu index 2826a62..d44770b 100644 --- a/stream_compaction/naive.cu +++ b/stream_compaction/naive.cu @@ -20,7 +20,8 @@ namespace StreamCompaction { } __global__ void kernScan(int n, int *odata, int *idata, int d){ int index = (blockDim.x * blockIdx.x) + threadIdx.x; - + int offset = pow(2, d - 1); + // if d == 1, shift array over to accomodate first 0 int outIndex = d == 1 ? index + 1 : index; @@ -32,8 +33,7 @@ namespace StreamCompaction { if (index == 0 && d == 1) { odata[index] = 0; } - - int offset = pow(2, d-1); + if (index >= offset){ odata[outIndex] = idata[index - offset] + idata[index]; } @@ -55,11 +55,15 @@ namespace StreamCompaction { timer().startGpuTimer(); - // if non-power of 2, round n up - // for log iterations, perform scan for (int d = 1; d < ilog2ceil(n) + 1; d++){ kernScan << > > (n, dev_data2, dev_data1, d); + + // FOR TESTING ONLY + /*cudaMemcpy(odata, dev_data2, n * sizeof(int), cudaMemcpyDeviceToHost); + std::cout << "Round: " << d << ", [" << odata[0] << ", " << odata[1] << ", " << odata[2] << ", " << odata[3] << ", " + << odata[4] << ", " << odata[5] << ", " << odata[6] << ", " << odata[7] << ", " + << odata[8] << ", " << odata[9] << "]" << std::endl;*/ // ping-pong int *tmp = dev_data1; From 612a3f13143f6a3485611cd43c16d5489e02c37a Mon Sep 17 00:00:00 2001 From: ASHLEY LEE Date: Sun, 19 Sep 2021 16:19:49 -0400 Subject: [PATCH 08/25] Finish efficient scan, power of two --- src/main.cpp | 8 +++++++ stream_compaction/efficient.cu | 41 +++++++++++++++++----------------- 2 files changed, 29 insertions(+), 20 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 382406f..055fd36 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -30,6 +30,14 @@ int main(int argc, char* argv[]) { genArray(SIZE - 1, a, 50); // Leave a 0 at the end to test that edge case a[SIZE - 1] = 0; + /*a[0] = 0; + a[1] = 1; + a[2] = 2; + a[3] = 3; + a[4] = 4; + a[5] = 5; + a[6] = 6; + a[7] = 7;*/ printArray(SIZE, a, true); // initialize b using StreamCompaction::CPU::scan you implement diff --git a/stream_compaction/efficient.cu b/stream_compaction/efficient.cu index ef482c1..4643746 100644 --- a/stream_compaction/efficient.cu +++ b/stream_compaction/efficient.cu @@ -6,7 +6,6 @@ #define blockSize 128 int *dev_data_scan; -int* dev_data_scan2; int *dev_data_compact; namespace StreamCompaction { @@ -18,7 +17,7 @@ namespace StreamCompaction { return timer; } - __global__ void kernParallelReduction(int n, int *data, int d, bool lastLoop){ + __global__ void kernParallelReduction(int *data, int d){ int k = (blockDim.x * blockIdx.x) + threadIdx.x; // start index for each thread @@ -32,11 +31,16 @@ namespace StreamCompaction { data[i2] += data[i1]; } - __global__ void kernDownSweep(int n, int *data, int d){ + __global__ void kernDownSweep(int *data, int d, bool firstLoop){ int index = (blockDim.x * blockIdx.x) + threadIdx.x; - int i1 = index + pow(2, d) - 1; - int i2 = index + pow(2, d + 1) - 1; + int offset = index * (pow(2, d + 1) - 1); + int i1 = index + pow(2, d) - 1 + offset; + int i2 = index + pow(2, d + 1) - 1 + offset; + // set last item to 0 on first loop + if (firstLoop) { + data[i2] = 0; + } int leftChild = data[i1]; data[i1] = data[i2]; data[i2] += leftChild; @@ -62,38 +66,35 @@ namespace StreamCompaction { { // allocate memory cudaMalloc((void **)&dev_data_scan, n * sizeof(int)); - cudaMalloc((void **)&dev_data_scan2, n * sizeof(int)); cudaMemcpy(dev_data_scan, idata, n * sizeof(int), cudaMemcpyHostToDevice); timer().startGpuTimer(); // perform up-sweep (parallel reduction) - bool lastLoop = false; int numThreads = n; dim3 fullBlocksPerGrid; for (int d = 0; d < ilog2ceil(n); d++){ - if (d == ilog2ceil(n) - 1) { lastLoop = true; } - // calc threads and blocks - numThreads = numThreads / 2.f; + numThreads = numThreads / 2; fullBlocksPerGrid = dim3((numThreads + blockSize - 1) / blockSize); - kernParallelReduction<<>>(numThreads, dev_data_scan, d, lastLoop); + kernParallelReduction<<>>(dev_data_scan, d); } - // shift array so it's exclusive - fullBlocksPerGrid = dim3((n + blockSize - 1) / blockSize); - kernMakeExclusiveArray << > > (n, dev_data_scan, dev_data_scan2); - // perform down-sweep - /*for (int d = ilog2ceil(n) - 1; d >= 0; d--) { - kernDownSweep<<>>(n, dev_data_scan, d); - }*/ + bool firstLoop = false; + for (int d = ilog2ceil(n) - 1; d >= 0; d--) { + fullBlocksPerGrid = dim3((numThreads + blockSize - 1) / blockSize); + firstLoop = d == ilog2ceil(n) - 1; + + kernDownSweep<<>>(dev_data_scan, d, firstLoop); + + numThreads = numThreads * 2; + } timer().endGpuTimer(); - cudaMemcpy(odata, dev_data_scan2, n * sizeof(int), cudaMemcpyDeviceToHost); + cudaMemcpy(odata, dev_data_scan, n * sizeof(int), cudaMemcpyDeviceToHost); cudaFree(dev_data_scan); - cudaFree(dev_data_scan2); } /** From 0d1c620d6976b2e9c348051b214e455604b8e91c Mon Sep 17 00:00:00 2001 From: ASHLEY LEE Date: Sun, 19 Sep 2021 16:29:51 -0400 Subject: [PATCH 09/25] Finish efficient scan non-power of two --- src/main.cpp | 4 ++-- stream_compaction/efficient.cu | 18 +++--------------- stream_compaction/naive.cu | 2 +- 3 files changed, 6 insertions(+), 18 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 055fd36..39ac6c8 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -83,12 +83,12 @@ int main(int argc, char* argv[]) { printArray(SIZE, c, true); printCmpResult(SIZE, b, c); - /*zeroArray(SIZE, c); + zeroArray(SIZE, c); printDesc("work-efficient scan, non-power-of-two"); StreamCompaction::Efficient::scan(NPOT, c, a); printElapsedTime(StreamCompaction::Efficient::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); printArray(NPOT, c, true); - printCmpResult(NPOT, b, c);*/ + printCmpResult(NPOT, b, c); /* zeroArray(SIZE, c); printDesc("thrust scan, power-of-two"); diff --git a/stream_compaction/efficient.cu b/stream_compaction/efficient.cu index 4643746..383c4b0 100644 --- a/stream_compaction/efficient.cu +++ b/stream_compaction/efficient.cu @@ -45,33 +45,21 @@ namespace StreamCompaction { data[i1] = data[i2]; data[i2] += leftChild; } - - __global__ void kernMakeExclusiveArray(int n, int* inData, int* outData) { - int index = (blockDim.x * blockIdx.x) + threadIdx.x; - // if last index, will be removed - if (index == n - 1) { - outData[index] = 0; - return; - } - if (index == 0) { - outData[0] = 0; - } - outData[index+1] = inData[index]; - } /** * Performs prefix-sum (aka scan) on idata, storing the result into odata. */ void scan(int n, int *odata, const int *idata) { + int roundedN = pow(2, ilog2ceil(n)); // allocate memory - cudaMalloc((void **)&dev_data_scan, n * sizeof(int)); + cudaMalloc((void **)&dev_data_scan, roundedN * sizeof(int)); cudaMemcpy(dev_data_scan, idata, n * sizeof(int), cudaMemcpyHostToDevice); timer().startGpuTimer(); // perform up-sweep (parallel reduction) - int numThreads = n; + int numThreads = roundedN; dim3 fullBlocksPerGrid; for (int d = 0; d < ilog2ceil(n); d++){ // calc threads and blocks diff --git a/stream_compaction/naive.cu b/stream_compaction/naive.cu index d44770b..473e871 100644 --- a/stream_compaction/naive.cu +++ b/stream_compaction/naive.cu @@ -57,7 +57,7 @@ namespace StreamCompaction { // for log iterations, perform scan for (int d = 1; d < ilog2ceil(n) + 1; d++){ - kernScan << > > (n, dev_data2, dev_data1, d); + kernScan << > > (n, dev_data2, dev_data1, d); // FOR TESTING ONLY /*cudaMemcpy(odata, dev_data2, n * sizeof(int), cudaMemcpyDeviceToHost); From c8c1593a28bd3a271429dc9a0556c0d22e92b147 Mon Sep 17 00:00:00 2001 From: ASHLEY LEE Date: Sun, 19 Sep 2021 17:45:44 -0400 Subject: [PATCH 10/25] Finish work-efficient compaction, power of two, fix other compact returns --- src/main.cpp | 14 +++---- stream_compaction/common.cu | 10 +++-- stream_compaction/cpu.cu | 4 +- stream_compaction/efficient.cu | 74 ++++++++++++++++++++++++++++------ 4 files changed, 78 insertions(+), 24 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 39ac6c8..abdb33e 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -75,7 +75,7 @@ int main(int argc, char* argv[]) { printElapsedTime(StreamCompaction::Naive::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); printArray(SIZE, c, true); printCmpResult(NPOT, b, c); - + /* zeroArray(SIZE, c); printDesc("work-efficient scan, power-of-two"); StreamCompaction::Efficient::scan(SIZE, c, a); @@ -88,7 +88,7 @@ int main(int argc, char* argv[]) { StreamCompaction::Efficient::scan(NPOT, c, a); printElapsedTime(StreamCompaction::Efficient::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); printArray(NPOT, c, true); - printCmpResult(NPOT, b, c); + printCmpResult(NPOT, b, c);*/ /* zeroArray(SIZE, c); printDesc("thrust scan, power-of-two"); @@ -141,21 +141,21 @@ int main(int argc, char* argv[]) { printElapsedTime(StreamCompaction::CPU::timer().getCpuElapsedTimeForPreviousOperation(), "(std::chrono Measured)"); printArray(count, c, true); printCmpLenResult(count, expectedCount, b, c); - /* + zeroArray(SIZE, c); printDesc("work-efficient compact, power-of-two"); count = StreamCompaction::Efficient::compact(SIZE, c, a); printElapsedTime(StreamCompaction::Efficient::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); - //printArray(count, c, true); + printArray(count, c, true); printCmpLenResult(count, expectedCount, b, c); - + zeroArray(SIZE, c); printDesc("work-efficient compact, non-power-of-two"); count = StreamCompaction::Efficient::compact(NPOT, c, a); printElapsedTime(StreamCompaction::Efficient::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); - //printArray(count, c, true); + printArray(count, c, true); printCmpLenResult(count, expectedNPOT, b, c); - */ + system("pause"); // stop Win32 console from closing on exit delete[] a; delete[] b; diff --git a/stream_compaction/common.cu b/stream_compaction/common.cu index 9074185..133de1e 100644 --- a/stream_compaction/common.cu +++ b/stream_compaction/common.cu @@ -23,8 +23,8 @@ namespace StreamCompaction { * which map to 0 will be removed, and elements which map to 1 will be kept. */ __global__ void kernMapToBoolean(int n, int *bools, const int *idata) { - /* int index = (blockDim.x * blockIdx.x) + threadIdx.x; - idata[index] = bools[index] ? 1 : 0;*/ + int index = (blockDim.x * blockIdx.x) + threadIdx.x; + bools[index] = idata[index] ? 1 : 0; } /** @@ -33,7 +33,11 @@ namespace StreamCompaction { */ __global__ void kernScatter(int n, int *odata, const int *idata, const int *bools, const int *indices) { - // TODO + int index = (blockDim.x * blockIdx.x) + threadIdx.x; + if (bools[index] == 1) { + int test = indices[index]; + odata[indices[index]] = idata[index]; + } } } diff --git a/stream_compaction/cpu.cu b/stream_compaction/cpu.cu index c0ad9ab..f897f0f 100644 --- a/stream_compaction/cpu.cu +++ b/stream_compaction/cpu.cu @@ -38,7 +38,7 @@ namespace StreamCompaction { for (int i = 0; i < n; i++){ bool elem = idata[i]; if (elem){ - odata[compactSize] = elem; + odata[compactSize] = idata[i]; compactSize++; } } @@ -67,7 +67,7 @@ namespace StreamCompaction { for (int i = 0; i < n; i++){ if (idata[i]){ int outIndex = odata[i]; - odata[outIndex] = 1; + odata[outIndex] = idata[i]; } } diff --git a/stream_compaction/efficient.cu b/stream_compaction/efficient.cu index 383c4b0..8cb03dc 100644 --- a/stream_compaction/efficient.cu +++ b/stream_compaction/efficient.cu @@ -6,7 +6,10 @@ #define blockSize 128 int *dev_data_scan; -int *dev_data_compact; +int *dev_compact_in; +int* dev_compact_out; +int* dev_bools; +int* dev_indices; namespace StreamCompaction { namespace Efficient { @@ -85,6 +88,43 @@ namespace StreamCompaction { cudaFree(dev_data_scan); } + /** + * Performs prefix-sum (aka scan) on odata, storing the result into odata. + * Both ptrs are device ptrs. This is a helper for compact() + */ + void scanHelper(int n, int* odata) + { + int roundedN = pow(2, ilog2ceil(n)); + // allocate memory + cudaMalloc((void**)&dev_data_scan, roundedN * sizeof(int)); + cudaMemcpy(dev_data_scan, odata, n * sizeof(int), cudaMemcpyHostToDevice); + + // perform up-sweep (parallel reduction) + int numThreads = roundedN; + dim3 fullBlocksPerGrid; + for (int d = 0; d < ilog2ceil(n); d++) { + // calc threads and blocks + numThreads = numThreads / 2; + fullBlocksPerGrid = dim3((numThreads + blockSize - 1) / blockSize); + + kernParallelReduction << > > (dev_data_scan, d); + } + + // perform down-sweep + bool firstLoop = false; + for (int d = ilog2ceil(n) - 1; d >= 0; d--) { + fullBlocksPerGrid = dim3((numThreads + blockSize - 1) / blockSize); + firstLoop = d == ilog2ceil(n) - 1; + + kernDownSweep << > > (dev_data_scan, d, firstLoop); + + numThreads = numThreads * 2; + } + + cudaMemcpy(odata, dev_data_scan, n * sizeof(int), cudaMemcpyDeviceToHost); + cudaFree(dev_data_scan); + } + /** * Performs stream compaction on idata, storing the result into odata. * All zeroes are discarded. @@ -96,26 +136,36 @@ namespace StreamCompaction { */ int compact(int n, int *odata, const int *idata) { // allocate memory - /*dim3 fullBlocksPerGrid((n + blockSize - 1) / blockSize); - cudaMalloc((void **)&dev_data_compact, n * sizeof(int)); - checkCUDAErrorWithLine("cudaMalloc dev_data failed!"); + dim3 fullBlocksPerGrid((n + blockSize - 1) / blockSize); + cudaMalloc((void **)&dev_compact_in, n * sizeof(int)); + cudaMalloc((void**)&dev_bools, n * sizeof(int)); + cudaMemcpy(dev_compact_in, idata, n * sizeof(int), cudaMemcpyHostToDevice); timer().startGpuTimer(); // map bools to ints - kernMapToBoolean<<>>(n, idata, dev_data_compact); + Common::kernMapToBoolean<<>>(n, dev_bools, dev_compact_in); - scan(n, dev_data_compact, dev_data_compact); + cudaMemcpy(odata, dev_bools, n * sizeof(int), cudaMemcpyDeviceToHost); - // TODO: revisit once have access to lab computer - // change way you handle dev_data - kernScatter<<>>(n, odata, idata, dev_data_compact, dev_data_compact); + scanHelper(n, odata); + + int outSize = odata[n - 1]; + cudaMalloc((void**)&dev_compact_out, outSize * sizeof(int)); + + // perform scatter to fill final array + Common::kernScatter<<>>(n, dev_compact_out, dev_compact_in, + dev_bools, dev_data_scan); timer().endGpuTimer(); - cudaFree(dev_data_compact); + cudaMemcpy(odata, dev_compact_out, outSize * sizeof(int), cudaMemcpyDeviceToHost); + + cudaFree(dev_compact_in); + cudaFree(dev_bools); + cudaFree(dev_compact_out); + cudaFree(dev_indices); - return dev_data_compact[n-1];*/ - return 0; + return outSize; } } } From e59eb574292f9a40dacee20e367bb4b7bdeb90bb Mon Sep 17 00:00:00 2001 From: ASHLEY LEE Date: Mon, 20 Sep 2021 17:05:14 -0400 Subject: [PATCH 11/25] Finish thrust --- src/main.cpp | 30 +++++++++++++++--------------- stream_compaction/efficient.cu | 7 ++++++- stream_compaction/naive.cu | 2 +- stream_compaction/thrust.cu | 13 ++++++++++--- 4 files changed, 32 insertions(+), 20 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index abdb33e..6a11ff0 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -14,7 +14,7 @@ #include "testing_helpers.hpp" //const int SIZE = 1 << 8; // feel free to change the size of array -const int SIZE = 8; +const int SIZE = 1 << 3; const int NPOT = SIZE - 3; // Non-Power-Of-Two int *a = new int[SIZE]; int *b = new int[SIZE]; @@ -47,20 +47,20 @@ int main(int argc, char* argv[]) { printDesc("cpu scan, power-of-two"); StreamCompaction::CPU::scan(SIZE, b, a); printElapsedTime(StreamCompaction::CPU::timer().getCpuElapsedTimeForPreviousOperation(), "(std::chrono Measured)"); - printArray(SIZE, b, true); + //printArray(SIZE, b, true); zeroArray(SIZE, c); printDesc("cpu scan, non-power-of-two"); StreamCompaction::CPU::scan(NPOT, c, a); printElapsedTime(StreamCompaction::CPU::timer().getCpuElapsedTimeForPreviousOperation(), "(std::chrono Measured)"); - printArray(NPOT, b, true); + //printArray(NPOT, b, true); printCmpResult(NPOT, b, c); zeroArray(SIZE, c); printDesc("naive scan, power-of-two"); StreamCompaction::Naive::scan(SIZE, c, a); printElapsedTime(StreamCompaction::Naive::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); - printArray(SIZE, c, true); + //printArray(SIZE, c, true); printCmpResult(SIZE, b, c); /* For bug-finding only: Array of 1s to help find bugs in stream compaction or scan @@ -69,41 +69,41 @@ int main(int argc, char* argv[]) { StreamCompaction::Naive::scan(SIZE, c, a); printArray(SIZE, c, true); */ - zeroArray(SIZE, c); + /*zeroArray(SIZE, c); printDesc("naive scan, non-power-of-two"); StreamCompaction::Naive::scan(NPOT, c, a); printElapsedTime(StreamCompaction::Naive::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); printArray(SIZE, c, true); printCmpResult(NPOT, b, c); - /* + */ zeroArray(SIZE, c); printDesc("work-efficient scan, power-of-two"); StreamCompaction::Efficient::scan(SIZE, c, a); printElapsedTime(StreamCompaction::Efficient::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); printArray(SIZE, c, true); printCmpResult(SIZE, b, c); - + /* zeroArray(SIZE, c); printDesc("work-efficient scan, non-power-of-two"); StreamCompaction::Efficient::scan(NPOT, c, a); printElapsedTime(StreamCompaction::Efficient::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); printArray(NPOT, c, true); - printCmpResult(NPOT, b, c);*/ - /* - zeroArray(SIZE, c); + printCmpResult(NPOT, b, c); + + */zeroArray(SIZE, c); printDesc("thrust scan, power-of-two"); StreamCompaction::Thrust::scan(SIZE, c, a); printElapsedTime(StreamCompaction::Thrust::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); - //printArray(SIZE, c, true); + printArray(SIZE, c, true); printCmpResult(SIZE, b, c); - + /* zeroArray(SIZE, c); printDesc("thrust scan, non-power-of-two"); StreamCompaction::Thrust::scan(NPOT, c, a); printElapsedTime(StreamCompaction::Thrust::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); - //printArray(NPOT, c, true); + printArray(NPOT, c, true); printCmpResult(NPOT, b, c); - */ + printf("\n"); printf("*****************************\n"); printf("** STREAM COMPACTION TESTS **\n"); @@ -154,7 +154,7 @@ int main(int argc, char* argv[]) { count = StreamCompaction::Efficient::compact(NPOT, c, a); printElapsedTime(StreamCompaction::Efficient::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); printArray(count, c, true); - printCmpLenResult(count, expectedNPOT, b, c); + printCmpLenResult(count, expectedNPOT, b, c);*/ system("pause"); // stop Win32 console from closing on exit delete[] a; diff --git a/stream_compaction/efficient.cu b/stream_compaction/efficient.cu index 8cb03dc..385dc31 100644 --- a/stream_compaction/efficient.cu +++ b/stream_compaction/efficient.cu @@ -4,7 +4,7 @@ #include "efficient.h" #include -#define blockSize 128 +#define blockSize 256 int *dev_data_scan; int *dev_compact_in; int* dev_compact_out; @@ -149,6 +149,11 @@ namespace StreamCompaction { scanHelper(n, odata); + + std::cout << "Scan res: [" << odata[0] << ", " << odata[1] << ", " << odata[2] << ", " << odata[3] << ", " + << odata[4] << ", " << odata[5] << ", " << odata[6] << ", " << odata[7] << ", " + << odata[8] << ", " << odata[9] << ", " << odata[10] << ", " << odata[11] << ", " << odata[12] << ", " << odata[13] << "]" << std::endl; + int outSize = odata[n - 1]; cudaMalloc((void**)&dev_compact_out, outSize * sizeof(int)); diff --git a/stream_compaction/naive.cu b/stream_compaction/naive.cu index 473e871..f3da09d 100644 --- a/stream_compaction/naive.cu +++ b/stream_compaction/naive.cu @@ -4,7 +4,7 @@ #include "naive.h" #include -#define blockSize 128 +#define blockSize 256 dim3 threadsPerBlock(blockSize); int *dev_data1; diff --git a/stream_compaction/thrust.cu b/stream_compaction/thrust.cu index 1def45e..13a9e70 100644 --- a/stream_compaction/thrust.cu +++ b/stream_compaction/thrust.cu @@ -6,6 +6,8 @@ #include "common.h" #include "thrust.h" +//int* dev_in; +//int* dev_out; namespace StreamCompaction { namespace Thrust { using StreamCompaction::Common::PerformanceTimer; @@ -18,11 +20,16 @@ namespace StreamCompaction { * Performs prefix-sum (aka scan) on idata, storing the result into odata. */ void scan(int n, int *odata, const int *idata) { + thrust::host_vector host_in(idata, idata + n); + thrust::device_vector dev_in = host_in; + thrust::device_vector dev_out(n); + timer().startGpuTimer(); - // TODO use `thrust::exclusive_scan` - // example: for device_vectors dv_in and dv_out: - // thrust::exclusive_scan(dv_in.begin(), dv_in.end(), dv_out.begin()); + thrust::exclusive_scan(dev_in.begin(), dev_in.end(), dev_out.begin()); timer().endGpuTimer(); + + thrust::copy(dev_out.begin(), dev_out.end(), odata); + } } } From 51239f7e838b1d6f64c9302b59128f7a17a9f244 Mon Sep 17 00:00:00 2001 From: asalexan <80473081+asalexan@users.noreply.github.com> Date: Mon, 20 Sep 2021 21:43:44 -0400 Subject: [PATCH 12/25] Add files via upload --- img/How Array Size Affects Performance.png | Bin 0 -> 23754 bytes img/How Block Size Impacts Performance.png | Bin 0 -> 15809 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 img/How Array Size Affects Performance.png create mode 100644 img/How Block Size Impacts Performance.png diff --git a/img/How Array Size Affects Performance.png b/img/How Array Size Affects Performance.png new file mode 100644 index 0000000000000000000000000000000000000000..a5166ba67a449e22e76733c55a8d376f0929d741 GIT binary patch literal 23754 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 RO^o=(&5SLL%1*f6_!nbWvIhVF literal 0 HcmV?d00001 diff --git a/img/How Block Size Impacts Performance.png b/img/How Block Size Impacts Performance.png new file mode 100644 index 0000000000000000000000000000000000000000..6f04819b82522921451442dc04b8f131dae6f959 GIT binary patch literal 15809 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 JqMMI`{}(%4&>jE) literal 0 HcmV?d00001 From 567ee5565170e3965da9a869fcae96d519ecd927 Mon Sep 17 00:00:00 2001 From: asalexan <80473081+asalexan@users.noreply.github.com> Date: Mon, 20 Sep 2021 21:48:10 -0400 Subject: [PATCH 13/25] Update README.md --- README.md | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 0e38ddb..68be4f6 100644 --- a/README.md +++ b/README.md @@ -3,12 +3,16 @@ CUDA Stream Compaction **University of Pennsylvania, CIS 565: GPU Programming and Architecture, Project 2** -* (TODO) YOUR NAME HERE - * (TODO) [LinkedIn](), [personal website](), [twitter](), etc. -* Tested on: (TODO) Windows 22, i7-2222 @ 2.22GHz 22GB, GTX 222 222MB (Moore 2222 Lab) +* Ashley Alexander-Lee + * [LinkedIn](linkedin.com/in/asalexanderlee), [Personal Website](https://asalexanderlee.myportfolio.com/) +* Tested on: Windows 10, i7-6700 @ 3.40GHz 16GB, Quadro P1000 (Moore 100A Lab) -### (TODO: Your README) +### Project Description -Include analysis, etc. (Remember, this is public, so don't put -anything here that you don't want to share with the world.) +### Performance Analysis + +![How Array Size Affects Performance](img/How Array Size Affects Performance.png) +![How Block Size Impacts Performance](img/How Block Size Impacts Performance.png) + +### Future Work From 4c5aadbf13e921676b5c0220467684055ec2b614 Mon Sep 17 00:00:00 2001 From: asalexan <80473081+asalexan@users.noreply.github.com> Date: Mon, 20 Sep 2021 21:49:24 -0400 Subject: [PATCH 14/25] Add files via upload --- img/arraySizeVPerformance.png | Bin 0 -> 23754 bytes img/blockSizeVPerformance.png | Bin 0 -> 15809 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 img/arraySizeVPerformance.png create mode 100644 img/blockSizeVPerformance.png diff --git a/img/arraySizeVPerformance.png b/img/arraySizeVPerformance.png new file mode 100644 index 0000000000000000000000000000000000000000..a5166ba67a449e22e76733c55a8d376f0929d741 GIT binary patch literal 23754 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 RO^o=(&5SLL%1*f6_!nbWvIhVF literal 0 HcmV?d00001 diff --git a/img/blockSizeVPerformance.png b/img/blockSizeVPerformance.png new file mode 100644 index 0000000000000000000000000000000000000000..6f04819b82522921451442dc04b8f131dae6f959 GIT binary patch literal 15809 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 JqMMI`{}(%4&>jE) literal 0 HcmV?d00001 From b820dce46bab5665669257ff725bef7180916665 Mon Sep 17 00:00:00 2001 From: asalexan <80473081+asalexan@users.noreply.github.com> Date: Mon, 20 Sep 2021 21:49:42 -0400 Subject: [PATCH 15/25] Delete How Array Size Affects Performance.png --- img/How Array Size Affects Performance.png | Bin 23754 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 img/How Array Size Affects Performance.png diff --git a/img/How Array Size Affects Performance.png b/img/How Array Size Affects Performance.png deleted file mode 100644 index a5166ba67a449e22e76733c55a8d376f0929d741..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23754 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 RO^o=(&5SLL%1*f6_!nbWvIhVF From 5b045d53b28c6c075877ddc014173b6720c4f952 Mon Sep 17 00:00:00 2001 From: asalexan <80473081+asalexan@users.noreply.github.com> Date: Mon, 20 Sep 2021 21:49:50 -0400 Subject: [PATCH 16/25] Delete How Block Size Impacts Performance.png --- img/How Block Size Impacts Performance.png | Bin 15809 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 img/How Block Size Impacts Performance.png diff --git a/img/How Block Size Impacts Performance.png b/img/How Block Size Impacts Performance.png deleted file mode 100644 index 6f04819b82522921451442dc04b8f131dae6f959..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15809 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 JqMMI`{}(%4&>jE) From fff43344b91b2052f139c502911ec36970034f4d Mon Sep 17 00:00:00 2001 From: asalexan <80473081+asalexan@users.noreply.github.com> Date: Mon, 20 Sep 2021 22:54:33 -0400 Subject: [PATCH 17/25] Add files via upload --- img/naive_scan_ex.JPG | Bin 0 -> 75421 bytes img/partial_sums_ex.JPG | Bin 0 -> 82169 bytes img/reduction_ex.JPG | Bin 0 -> 45421 bytes 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 img/naive_scan_ex.JPG create mode 100644 img/partial_sums_ex.JPG create mode 100644 img/reduction_ex.JPG diff --git a/img/naive_scan_ex.JPG b/img/naive_scan_ex.JPG new file mode 100644 index 0000000000000000000000000000000000000000..20497add424ed65cc55ac55500eab7bf9d90c29b GIT binary patch literal 75421 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 NVFYszGR^$|CIDtdhROf{ literal 0 HcmV?d00001 diff --git a/img/partial_sums_ex.JPG b/img/partial_sums_ex.JPG new file mode 100644 index 0000000000000000000000000000000000000000..460e9ae3558c6b7333034c24b7af67d225def524 GIT binary patch literal 82169 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

g7L7G@APF=;brlNCoiO#0>vr&D2HQ@|mz?CG`vw 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 Date: Tue, 21 Sep 2021 00:48:59 -0400 Subject: [PATCH 20/25] Add files via upload --- img/partials_ex2.png | Bin 0 -> 188197 bytes img/scan_ex2.png | Bin 0 -> 208337 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 img/partials_ex2.png create mode 100644 img/scan_ex2.png diff --git a/img/partials_ex2.png b/img/partials_ex2.png new file mode 100644 index 0000000000000000000000000000000000000000..90c07d296514628e97eaf5538359e83a7e9af2f0 GIT binary patch literal 188197 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

V-P66 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�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·%`yD;;4JJ-9AULJ>^dpFle6WeLA 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 z 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 literal 0 HcmV?d00001 diff --git a/img/scan_ex2.png b/img/scan_ex2.png new file mode 100644 index 0000000000000000000000000000000000000000..399f0ea153368c2d812eb738af2f8eaa830e8aab GIT binary patch literal 208337 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

Qape66AJ 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⪙M! zQxr&adtzd279uEe?>prCFtN&D=GTw3$t}p>1<9pJk(gm*A;QF*Q(BG#{IsqSv}v z*8cm*tvGJVkIflp#IVerJXf%vd%OQtQ|!TSYBuvGZO|;Ovu0S@k6E?<9{WjEq4{Yo z>;1ED^4!T57}tFozf-X%((IhsYdZ6R*CRANX>I<1c|SbbC0qtsMP-eTFjVeivoCM; z*o$PkC%NhOu`l&Sz3l(P6FPf;tQoZCR$q^w&X&UHhm>kjo4VNbOaD)dJ{!NaTvel) zkV)LoH@G(*`uF3mkOx^N<2w0T!eHBnT~IYYG=jKxVe4l4MQ9$~!a0IJ3(H^vf-lGl znE#QV(_jORItBS}V$U26?+a`fRvzS`HhS@TUXI+C;<5FM}iAS)*B*lC751&sU z8||na4Mb4g6V}X~Ebju9vaf`WvVqXbxS@K zUdvlu?yF2IGkR5clFiiLg8jQ2%dQQvEx!d1F$+A>xp?Nd@aLM6AHFK@?61Sq_v@N8 zOQ6c?0Ajs3+}W<_e3R98y1>36${ z#PSQT$L*@xQkzuUx&KCMe+caQ7UftU_xdZ+y;{|v?|V=|D|2TrZ`U8+ z1R_mZX>fnio1UKzd4dbS&hTfXRd;1BUso_YP#BsSjQbm+8iJ_p&NQn@CaI}La-Y6V zuj=}ltWMjNT#;5GemJ1qto2x+Xf?|U61hb5cJli@{i~}pI{PZSy1lijAZA_A4&e1_ z*e{aUB8wZ`B>}u|n>(p|OLAIunFfx>GIc8F2GL8zunZ8jP$dXWgU6)cL;@qffjE{L zhXg_#TvO5Q$e%WzoKaCRO1G?rz$Wm$@$c-^dFh9J2Yk3gPx1mwY&;xzK7NT72N6y6 z(J$IfM7TuT7(D5L18vxXa;OD#J3c5Rf|L)w4!Tc61`+1;e$ZBnXnXVyL^`G60wWiB z*fN^V5n>W&nw9KxTS-1Q)6rKQEPybH`llSsNvMNx^1Gy{PBxjJz_N%};N(3;TZv*U zqb-5S3vHpNQCo4pCFz<<;`soE(vXdNsqGs67c!-W15ClIlaNQ5XkwCANDbgtLUt9H zYN(by2lu)d_qL%-UALH(0VQQ>4LBr$cBNE^D)+xkOM7_XQ`{~D|DFarXK{l7ePqtz zAP`pwH&R7rVGUsh41(K)7Dst=WKeAf|>eA;xCdQKxn` zWes+J=a*rLi_mUiaRz_L@5^5{{;p=@xDN&EiOt%znMr9$ostY$?J|TZrOV^<=|;^D z#S46QvAc*4*}t(P3&fZuLp+t${+_xfx?n}uC3i>6rCj=mMlpn&?_!?R&1FUzG&$mQ zjM+O;xWB4PXwW+3kzdHsk@<4Uirgu$ho!f65*O{)Otp3`T6iZ+qYfq zGK@p$!N3+p1H>XEzuGUGyJh|TodXBa-a-eO=F&oLzru0?*?L6 z_;lvNOU*D0mPRi*&{=8|8X9pBEJUVrR;B4|x9$#H6IY|vm50KB8OS#S5JptckU#*X zfxpk$v6&sb(1dR6-c9BC^my5yzZQ?!GvIZ_PJ5G0gMgzCDAa(Si+FT zUw|J%7AJnICY1>v_O$lmuQrK^YLu;tRNfN-$%V?V0x#Kg}Q7Q`k9+cLdsW!ismWoc6ab0%HmbldH3g9FPmWNn(iUaW^F2 zo3MDGqba^i@k7TiHlg03laiJkpM+fAPIt|Ns6RpTk^AM*-!6@ z|Hx0a-t&|7tY=6jY!f2I10+CDq(l$25 z%*yJnuF5*PJ7c$}@`#M%i-<42J2or+u}}WS@t|&R5*T{3uRFghuN^MiH%}dQmu6N< zFP_Yf4%PYdp5Bz98eY3{W8bSTTzK!q#`@1eW*klzv^F{Yzx>*(9{XVWd9U}8X~QwA zS~{`1vhTp^(oxs5DmJ?!mJC9e+G6D$lpTnj^7@78*}FHVCTdj#nOUX{P_8zFtPqHH z{qU{*)|5X1%_wsY6N!z9U~c_D05c$zBs3-2Wj^v&1hXRjHTP`D8>O1%m+Q`Yxu$OK zUqp|iHXeH6wbhd^z0-25nRAFucSGBLTU5Q$%~M~Tc=oZU?d3A3a0=Bdqz83zL)DG@ z07)-xFcRNDq_4adNwK*QA{P@5-wkHgr!R^rF4CzgE6-X0?3&^qN|ng3_jalr8y9JEdGh zWE;9v>J8g3@1=bLGm4jMfn~o*2-%~x4eRK}sx|3B3?ufZe9IHUbYjZ7Ffn6Qx!!IP zKuuECKCfn#`3;F|A*ItvKnW*R39Quzu30xvUA5LAKrMI}XK5ayk+%?^L3slrvGTx!-h50f&jD8SBuChpm|vnY`V@gyn0kx+QFyQ2Fp( z1Wx88s6bgYTX2D6)tLIi1Z9;>R>RnwT3@l|m`fhtT%Vk_u9YXPx~zmzCsvk!XbBC( znx!jjZy>$xF*M9Gm>FSkD2X{I*Dy44Evt5j3GE;XKp33rB)>2+f;={+xP~E0CBqDf z5^RF^$#?K?hg`LnmpIupg1vp#2)uAR0jUpxCNPyQbh|8=VP z;&ul^U<_8}4u;+?XnMb<4Z{S%>i2x=t@XK^KZykC5hiY#ed#8M%VWD*LF{%HVh&8) zAwgGg3e7SE#ckzPZn*0+3u<*@(e_GyAT|TK1bO2dLe?`xs_b;oU7BYQeBgYAl>=rN zO9#E<=ilW|th|klpm~5KwDS_`_O@UFsyh9A`Q=A{&%Lwnu9y;tr33Xrcm|HQf8mIp zSv?p`tsc>KZHBD`u@*g}LP_%5=ndD69W*35%{yJL&Sb6bL8FPZxb+=Z+_@|J zZMjAJaqS~v-33yk-nHR z1<+Ejl)*DY>zx*2XAei_Lv_aPLsa;Kg( z03AwP!(j|&maY2HmnjRFLzcN85;h+!HtA?S;o@2?r z`43#N>Zi|JtFtTC^%)OF3ea!NTFx?zjY!hrdqajsB2}BiftnoLyHp^o+U$o;tJ`GBs#w%=(5= zHX0gP>&&m{S{N3DCCo1v7nygWkr8G_?j?%#2pO8(00+Z@@W-0?@~bU-A>0~+eQVar zcYoZhv1UDue3M^$^w&P|&-eXo^LcTx;~~%_Gz zlM0ca80yVPU=86XWR=*;MnqsJg%vG3gd)%7y_hhFyhWs?@*ctzNiH;}oi||H9 z5fY1v9LtX_lhiFVJ{>Yp22hwA&zU1_06;uJ^gUcV^VMIj-5Yx$n~NckWiuI0s-d!B zq#vF@#qV4>*nkzFl`b@zU^p8X16NcOjc06`!eKRl8$vLA)wpgxO5IcNn(bQ895{+Z z)V3bJa?zM?tWQ*|uibO6^YYZpp^8YkX^EK_$ z7OG~2{KTBA*fNl%%6Y+D#DXf`Z#k-5t-qeE&bzmDPIv zQP(X!0Ale#PX7$PfE5X~MuN_4B|$`T*LW7cj-JVH<8|`aJZvECMh0WW)haGTcF}#j zoG8E4O={f6@(bFG+Sb}i!hGB(zE8c63X|_+*Rr`qx1vH0rk0UNErg7OsV&EUB1XfC zNuIkcUZ^zemNSzO#3Lq#O}l7=H-FWtotm*G7G|+&7Hy62w!%GHW>cR6zn2<}Mnrhx z-U`7lJ6`YUrMUwTax;c$*?`dzlb>1a<830Q8qT*d=-~{Cn5<~zx2TsbDP(RO2$ZcD znq*m`&6$Nj6+%WNwT7{wS*98HQ##{6Lx#H7;31ahHOCm<}o2MGVIh1Dh}d zWe6r=m_l7p6Ty<;I(ojPK1YTY3t=nhFe{ z%s0X9;)y(Q}!X2zXeG%+qi#n#@9a1Y*m@d--rDCE4o^T)!F| zUiuUJ`u@AY)W$r`{|8xJ03C%u&U#rq+mR3`n3^#dwl&{+r|p*hcbJ!lK_JMc%m!~5 znlWhJcr-yA1~K7@h=cKH)DCL}(y7|17c6UH-J1H+tE`DTQ@D!w))etG#qM0Tv~c^2 z^~<3A{)Jhd=n9$F$P-SjpU92#L*kW8HJe6oRrXU(c9or7dP}{bQ@56@CxQPbNeBOH_w)tg) z-)MdnwNctH449z-c`MIn=!-Doy(S0Zakge#i)EM^F-_z@k+7S@ub4Js=St12x#)SX zmG$wR@+T1J(_=B2#Py2N)c83BmQMsNQIpq7kb?ppk@X`UsZJnu5|OxwO2m*=WDPRn zh6ES6oLrh8)?C1+IJ$T?=DZVna=paCvV`9ic;n+%UY${ux++tDMRr305C4>u_q^+S zcWD(qWyt!3U&LunU`6|g1VXi1sshS{AZ&DBz)LtnT1LarI@3lOK(W0N#!~(tf#VML+=rLzH`3>QRn_ z3JbsUF>9tRVs(r4GhDCDFU5k3EqliE%9CEzHML43d^%;@bd|#1k)o1f!s2D%@o}W%w^IxI4R-9>|mO%i#au1m7e66C@PdQ zyyW|n3(qe-{_%hD#karrJR!#k6r!@38VL$rq+JDpf~gttaK7`O=;`{p^)ErQCPEK* zLj+SrNQR z4Gqohgy>!uqFQ`uCPEX%9t+&lpE=931QaMOmjYd%4t%}OtJW)!kBd~PNfd3h}T zp-^d>^hfeTP*b;Q3;mRLCM*Sqcg)ouAv(wRNv(l)%8p2Y4W^Fbkf$*&yGx9iRg=?9%KKk^Tau)Ojz6mqs4 zPTu?c7rmD+oA)+^ueK)YL zQO?%y=^HmLwC*;)0w|ViIcpv~fQ>t)r#)59T{Elxbx6czdAGJO};8{ z?1PHvD8xsQ32W-$$NZXmpXn>?n7o%+BSR{`!pX~Tl$a{f6f#2;-A6g1dl`J0kkLIl zHx8JQbB(5$xJQ`lhnPU3NqLw`4pM8+q06Nv66;)FrOuZ&nb&WQfc5DzhpuRr0 zc9`Zo-VPHX$j#Q={;GJ=gn%x2FI9Z+zj^G|o$A5b?ZYt5gfR*eK`9trrb35%28yw9 zI2l8v=t4_Dqr+H4`SZLNqH+J);+?t0)m2y?MFGfHwxpFeu|2jWbP6fEno z1Q<4sp8LSxyzhrU^Td8LDy^TAxWNF!!rtMu`wAhc@z=d*>Bt5$MU}z z1ob(HT34;ko+Yy06Ef(;Nf$K0RX7DE?DZQbZZE!Esbjl3fD}UBpK^te2PGKp(r|eL zsH{VgCNR9P-5DvG8J;<2GMJ``mE-=(eH#aFTGjmoG@0fcQ1KNJo>g1ZSh6qq>o*i< zOsTS-aPiJ1CUtOI4zO$>(y$f*u_Oa(Ody5hAsO9D1pesPyy2fd?!me*nI7_w*4_-= zg{cv2EQP|CITDLQi>B&;<*I#}g&EBOc~83zvV1D+DFl1nq?OQ$BiLzhEsjS>8Y z5OMFET&kSE|CS(hLR%u`tV5qrK9Wn(j^h+aSd^M0zu0HH{FTh!A-g6>k*Gu1S%_%T zJT*8rY+hKtX=&m?YxbODs@uYb?-9f?ETd$4%VId_dUY`YJdM`!$a+Lmj^6WJ0$fR%<~@kPNVZYHho%lv zk38eOSTe{p*0T*sDrGgkm%7Zg`4yr!l=hhCCc7ARLAo9|*#FHg4y8dDJ>Nieba%G;>xt7>*}68iQQj`k3Mt@D z1CRsNz`BXtLY$4vo@mz&aeC?{+1YDP{q_tJyVU zc9EzX%pL0zh@4}0t-nB8b-DStf!Leefw>QfR3utR+CgVR&hosCoM?QT`8@v6utKm9 z@{Dgx>E;>Njb~BehTf5KF`>=Cqr<9{RsHzkRhSBlH&)<3MN%w@MYYH%=H_fu^Em?4 z;T#2BJ0xZ|VJ)qHkxKs=qa*>DeuzIzEA$l_@qRRDEqu_*-ncY23*TKmPLLCEw5{*E^v`M=1D(+oj8OY0hRg$|{4zuT^`4iWnr&d&_l6N0y( zpPEM1E{qN43c~3)_EaE&T(*&LoCVb*8t)d+oysO+kpYz>tP_&_h5=p&xKuVTSvJ!bIN>IEQR%5WBOB}B$io3m? zGW#!jIVT{{QAE5YOP0FqU%}Mx z!w@Jl2sdtO$61%iSX(FNnIddd4qCsh>k4zo%#wc0!KPyaU+gPg0M0GLLfiH%W82N3 zc2VN)$|AgsqzE~QwLpQZLYOrFZEPD3q{2Z=ivz?7%V?Rw8SF#0T3^3Bg)(QK#*Cr) z&2GHFG64h9)h5GBEbEf4oZ>{N$Fn-_E)kO;Ok#skq+JAod?~421el?A1&_XTeJsRc zql*DWB$>g?>SV;!$SVo)to+bM7^YwYJFhJK6)R<&F0l#9M2)pQm{`# zqfTN{6%h#r3WV%LKTsg_#*{!`hXtW>2x(x}oxp29zDG@l!<-~91QzKwstAvHc!6o%fp zg!yX%j=Q95J$EBoWb!M1HSt7%jpT#)%i`MLsVRgpa}p;LS`#krEJ4 zi}MGtshW)w2T=yY1h(l1qqlqSmw?L90}|mO)YJ$BgqfK@K_l?P?I;V3Jpl@W%^?UM zyXwwk!sXaQ$Ey>qSxv<|FR+sH7_n$Hp?Tx)itB6$=#pO+{xJLP-hC=sQj?fd{4deA zjgJWSx{VjbPZI*E*&|3wgfY`-O}!falw#t%R}*0+!AlZsC6Vk6TumDZcomZ>0>&=+ zO)ZIC(yJZR4F~}-s>)bcZ6U;VP_OcDs`%7MsX-%9K)eQ`oe;XJ-GncmXD?n8!46tH zNJ!KpI3Q6+vsG|45j=uA-bVyaU@j#%4Oa;DyscianB2;jCTiEX{bJ9ks{xVE2wI+O zTPU4zILSQuytwNG0U{zY*AmmMQ`SB6JlY6_NsgolB2FN9Brqt*m9~ix0W9`HU{^sH zQ&H}u_A}M=vD|y_(yq3)M5b0cnCadF$S&(~fhERaKr;#QTo1M$hhFyG2Ew1sSZ*2z z30Ak)`YwEz7GMa1h&qV(u?Tn;hXzytx40k?MlV5SO2oKO)R~|8Sy*wRnq*tX{LU_$ z!&eitN^XqFkkaV|I_A9@Z1aRs?o$}U1dyIW4_F%nj5ZgsEP$7?v$r zPX)y83sM6M;oVoOdjD9c%;--f4851M`@Yn+)3S9*cTeq3<~H5UT<)1*^-6U@&XdZe zyj@a=Yt?S2yApc;pv}RmVLD%NFN$Rdh$8JO2oy}sSPZ9XL*i_D#n{Bgh6p&Ao+TwO+NtBOT*VvSE+U`B zU=_ai{AnQy+fdIsY%1m zt(I5h1g-RQx%cI?q%Iz_&R>IU#*%L8hQq zTCiwb*|tOQX5AEu3btzEcw%3+eXy4vbm3EjXX)OC(Jq`11)3P~po&k8t=cs;(yYR# zrZqV5E=M@m!8|Yw&BPj78kihof>ytwT=#k_cX1^U5T6<`Zj|H!r#lmYRfV~c!~u{6 zGB=P2|G{_P=2U|U6hT5$69EZ8MwhX#_Tps%JnaA|d}>lKfvc%!D;R=|Gc-~k7q@W; z6k?b-G|aUeu7!N6CG7*?Quf9(!o-=)jen9% zO{4pTPfaurT;dGY_cXB-L87Z)cx9`W&D0RJe_vN+?4e9XyWF9_97nB+vr3b|A!Z{C zjcS^&i#c|*H)^jmo6Nnp?jR8|kLj_ivBx$+FN?IRAP^&Yc2&Q2OlQRW3`CTvWk5Ar zj1MCz7#jq2LZhk4OuF!?$%c!WTXFW!WD|Zy73OCNkR4sPeVb6rLLd}^gal;TZ+yFa zzjou4K`f7-t#yv&*mIXSzGwE?w}J_+JE?IpKiSqpg^lU9J{Y6SkqK3zNi5LBeQ{$= z+RL|NwpE|dmfh8v96{huD%;(MX?T-)<>D^4H!#;($AmTaakgC- zLaG+C;b?R`KmxipjUZ+*CrIr4VmNlCsy4Ev!VvG18fWG`N_%Dwu67h|H36i$5a=>> zo736~0(aWi8>k-&vLy~Yjx=b}53R*67y*^U9!vy1!|SiUQP-*#1zXf&}hoS5sEdZzQNu-n>5-@fsJ$IY9JCQ~EdOf!HCEo4j8-Z3fg}#@evPs{e z1Mu5w?Rc@QDhTdccIK;Ct{yLyE@3Wl5X-G;VmX}k9s4XS=W)onhbi&&W~C}yP=v${ zZV`VFHrLT^{*4pp-+(yGKPsR^6;h3`da=f-+Js1oCt{EG{G}Td2i$IF64Vb~x>j1A z-w=DMIJOsJU0bC|O9I3cDFFe@8#95T%eArfsezYp{UDgK9lH_)dd{|0MOlGESbZ^# zhSxy*)v3(=7g`xZa@kwOABbB^CN*m^+Oo@D!l_2L)caOKyFVnn33c_ADB>vPJkU~1o+ue(%6ZO^8tB~W2fQ#~uB+{`uRMmF=*`E>1X!D3rZ}zOk5t%56+MC&hb~p^$vwV@3V7n;c*@Ax>g6IMEl~tPeBFxoq^6pvonC_8Eo`5z|7fwpfFh7HM zBStaYP6xUn&t~k*va(6!B2Ym4Xd)?O7Im0N?6&P+^!|iR8f!Q81|nkH`k*n;eZLG{14a+$e&SYyMHSr)B4+L|l90ufyTDi84cI!1#?bo#av*q`(5 z;4%WCuIG%DV=H|S?C}V!_Hl=szzVLRYkC^kuJs0k?!G$xiPDv?ohor)X-2Xk>~l|j z3;`Nx?W;53yH^K6aFB7GWtrnuY?d<&jRa}o6l8!1{UJ84G6T-ig*p6V(B$}^Mb6vR zxY#abc%t^%901TZg>Y|k5be0Peaz4u*VnOZuuw8=(wPg3_1N5q2Hkk%`DI%17B-Wg z1IgSc^>IDTKM$Y^{x8^Fu4vb~Lh$J~^|lU>gsEH!!qen(GZ z@I8gjdqq2L_69Rh2yIq)lK5=q4C#jEZE+zG$X;$T)iM`ok3f@%SAp-o9)A2EW5#vH z%;g@-+T^o!&LXO^XQOyEI=fA>Zu6C#)SW?EbeL(|EZpEj*H`+O?Wz0d!yyDd2y*=; zx^W7kNO03J9!=tCKf~A@#SqS5g0_mZzT;ZzS+qMJBre9b2-UW-dVTJ>&{7PA%<<$)M1lAZ^*e}#ZFU*Yb#s7T)53{?Kwy{P=H zer3+enyU%eOiRPzg)akM`H(CeM(j8?W}d$FW7P5nz;hVpq>i7{=aG_q0BZP!t=bvA zNAoZZ)BOnFou<7fkVF!r#XiJ&z7!vPYC8;4ROWVmfmJ4YVvKWTYT(ZuY)7UY_Bt^? z#d2%I3DiU^!Wz5=SRW9EhB8EGE2HchZ4C$*%tDc>L>^&ia4NP+jLQ)i z#_zNO|1##b=emK7&v{w|vW(68?5|v6VrRc8p6*l#FC?&dhLdJ~uI!QrkZ=hPU6 zM!*vCRkG&Hc)4ciWWPkX@^h+Z%>_;hNe9Aw9) zkW3*YEr>;-8wQ$uWgh_^%q=zV2Uhk$Xt5T!w(`8dzlF)hP4cgl_&D}@2$${Endv4l zYXf9&%@OkpXblLU;2$w(&h%EwmS4eG2hXuqzNDir;(t_Y&Ga{77@qHyuq z);QQClRloj@BdEu-elm~Z^UHhA3!udutkXvGiDEy=RLIS4)D1KTweyL=Pd0%OUqyK z)iz9iwy3P@*N%^aHyB?2Xhfw!cG9+7Vg!g5kpGeX2UsQ8hM|$RK>)qOOvm=K+v%5P-L-v_ z{>+kCT=bn#md+_Zcr`fj3HrAW*e$Rl{}nU)8CGegUr$si)?_nU1*h@zn==Abi}3k6 z02dm*19w7JD3_GYapYE6%+bIw5mSaSi**#1=k2_{*p0RZ;fJtHo1zD4TcN3mMril^ z7EH}pjHR3i+)gC0D4lE>Oumf{e1Fb%ocDr+@5?AzsNZ8SJHpt!jb^?XWb_|AZT~HL z;!P1*Mp=D53VmwW+K93g@;S83(#x1ufM46;*H>j-d<@a`TE^!`L7xJ*IdJkJ?OQ*E zo%|v#d%lYz2AU;2$WBbETFF3+C$v*8b5CLgO+=>y>?n`3@jcGw@=7Y%M_aZ`vavZ# zdRq5&97lhbMe!*NtB0uhYM(<9yv#amf4ya&(iz}0Px9>NnZ@^}-*vbb^ObKV-^r2` zcB`3$XlZFIwOU0E{Sw-VzsNq;xA|Re7Xl}lX+kgdQ>f?Jj{@d*QPgXpa*mm@;yvAF z;jB#|jNZsxe1~W254!j{Y_o`bvJ*rh9len`Fl`CxmQxZTi)X8EN80@h;Of)cDHagJ zKpIoUM-6UOdch0S=almQ7{|`-`7>;%;*7lD0ccH`PdIbJ2v!>Y-aN;e&nF5toDRsL z*HpE21qY6^XatTyMkhmRLr_!gDI$jOJh;479Tg;M@c4pFg?l{-Lvs(m2l%bR$0<*s zUD0#5jA5^spKXy06SYO2;`PpgK*7|Ec)Wxwz_2$HMPo;bdG25vh}Na#c+Pi$Pu@aJ zo6iTr&#;KR;;H}uKmbWZK~&kik`R)=pzHvB!sCtAU|9QT3(Kh{AeX8n4$?zWZ9 z*a#hWf$BcXF8@vT{PO`CE7KsMeVdJ73={Xfi{0ZJRJFX|rn0+_7-Z_`;~$7P!_@Rq zgoTgMEF{dg0hrg(!=wF_mHHO*7VGU;wEQtZ#Fu3FNmYpqH`RWe76jZu2)Zqaw5?h! zgd-yE#}FR;BCrGh^qbUv^!HDIK#m5!{w+#-s^1c~`@LYQ4M=HOgG?_&_{t9D!`NU4 zB~N-vj^$2L3YrEj8V*@i3F4RfPC#t8txdvE7X8$-@EQ9UoHBBPhw$z1 z$kZrTxdfdqGtYs62&sf|0s1gD{DXO{XbG)bFfgJ6785l7*MA2TImgB>+8ktCz*JeY zcrU#UK4{DJ!kiU_+?M1MHgrADqfG%;yc`(>KoLb6B?O4bDvK&pZq8yCQe~jYuUij+ zEU+uKrn;?&2IFU=einO*YY?61!Qcaxeu@A`ms_qpFje42T5Gl)yT`58Plm?S z1im^6+a+4VAu~0w8e-mGg^tcj_;O@D-tIHzft2$@z%B=dCafKp2_gC@f{`cSw!chF zuchs_tGE0z*-6Y{@vD)50ToDJc}nOAp74K<$@tPJ2`4OmFV+He2yQu(C{6;?@UojE z(aoTqH<()-+^gnkB!eA(&8uma`lFcC9)>b+YJCs@@P9iF=%&7`JhsAIFC!_hgtjU3 zRYva4k6>Des_f!6ilMcmPJ(6#6-{6hgq&cbBOu6EKmy?B=3L7v1>r380pDu1%+LwS zVj$6@1lCpC(a+@I(Qxpdrb6{bd1*CuIe1xZjQ{Q9f0o395tJl!;4(>!bz4eB7wChU!2 zYWO7pqd;80CEkTO`u~?53)2g0o{cN4rPm@u!r%e6G$BNXlFWXZstLP#6Q!cxkycif zSsJ{Z; znN-3C_Li^|BYeDl6S8Luf`#&_irHPKvddh3qwO!%1oBCk*f;u^9;IFl_!cF=2GM0} z+0lq$7P=NDb!w=X1|dZF9)R-ZtUUDnItcSu;p_>1V%wjT`f z%##*^64hm`;fsW1pExn#l~RAQSdVygD6p59szQXfSxHa>CTMoo^Mp2{JWv;aDWRzO zFG}D*V1G}jrjy6T z?AYYV_y=SKjO_)?vSD5@7Z3Dp7#!e*z$(Cp%Om<8NUZs(XuT9`nglpug9v?&Bcfq! zl)6vs{hE0&qg;Exc_v6>km-Kv`1W2Z z;JY%IMK;lQBO?AS7%5$nAsEqi2zPOC876f5Gb)37|Ye& zC1+fVM6=Uc`z-bR9%F?GOLt42eBrnv>NG6~|Lv|Z1IQ)Si>5{hw_b}!vWmpp{xrnv zF$lrO8IVwm0aXobZZNl=LGt<{M9~WnIk%{e&jOm{cYd(9S(QzNC|GELbT;4h`#kMK51KT490b)?r$O-_&6HvRm%ngc)>l&b%-7p zycxps@A2J0c4bSq?M!pE0!G9WG7XdB2;ys zNdzcRC;`5r04&Yy37#+OI$kqQ+w^NzOthF~&n95DuOxs13a((IRI(R6LZ}%bO*5z9 zTr3QN`UO! z8t%E27N~_yVYii&-jVc-;v{oX5G6nogU%RS`hu@zD+rTZ$e$Q+fb0jN-C~bAXIt)H zQO$SrClSva2+}KTyhz@3%bA@Q?a2^WsmJOb5A6?P_RFakL%EgFEkOseANMuT5HzP) zSNEhF&3K@v)gQCV)=i=d?u?WX(plz}5TAfbE_+TeG%w>w_?w(I{xm)?Cn*RbP+x|a zy6nL$bJpP9aLI+$U}O@jOHS;g0e0|d{M~*ECMH2(lJT?-d`yet-^4y2!6iHyahm$A zSiccyoTR_)1!?_pc9D<4aT;fGLoh1;3Yv-|oM9x|_AG`*%*>F;qj}KQb=L1okfHVd zMz+0aou71=LNt~DA{m|RTvFB>W!HeZv%m?N7ZCeo;=%21ye>|rVB2#v?rgeF#%0#` z?DI3nR+d&4CQr#BEV-tX;3{6W6FB{AY6LI2B0TAx{+F=NcyTVFc0mgx##aB%zN1%N71gPV;`#VNpkQjoV@xu!h2Zc( zH4ozBH08e~Yoh{tJxjeW^Zxs}7RE+IL9)|`7&hIeL%jKEA}n8oSbh=WV<1RE$C(;w zNh3il-?8gxx{8?`fu#8xsFGMlFm$m5k3$rw*n@m8iEVL1fj=|mtq==X$bTGav(4S)Z)k{+9G@rGp zVc6uq$Oiw-z}rC*Lu3AtL<0g8(bNE;zSchg!q#42Mf`g;LAo$+C9Z2X3E!f1LhF7V z8vl*y{DkWzqMCjw{d{ounW(*49d1#=IP{!QyBxxU`t=l%9FVZYmte;~jufLA9ZUQp z(9X=jK>s+5&386bAj$fb`V4ChVHW^b)(z(VWi;h=%NsqCMbSc|+LlqW{hQnw8z&*J zr5pqIEU<+$FZ)f0!kM#Z%dVkGXv;ulb?bp^cP@VGtUX^ACAMfZ@{?dFcVo4!(i|TM z&I9=|ZTc@XI@5;pW;z!Z`1qs-uV?b1(ZWa7Ff^=M84x44=#H^9SUY1p;uVA1H(#Lf z%*FMNfWYXn)Q$ktU>gapFd;0{wSabeC85$qCGJ5_5=rFEa41I;FSz0PDiV@E0)spc zGP%hg8=rMAuU5fqsDl;ACYeCv50LLY_S`D7E~jcS-$8;*ls%I__UadxZL48W58C?@))e)m_j<*# zpI`yvok}jW1cCZwaH6PE>H}58v?V2bhpAr{CpsFLibn80Arigoj6D z(Xl8Uu<|+3XuC-mZQyeVY3e=r%Do9}`yI^L`y1s*rzFCLVQggnF(;p6_gd*{(7@Tu z-A$Y1Rt95PvT3Eo%Yj0mU}^>m-YyI8fGt?K?HIDlA~(&Ztk*z&|BD?w_o}@0df}_O05dh)B zJ&PDA{&+~&Lceu|UWe44WHrzvE+$=x2Fg&@86Xc*J&VXrmN1+o_L4EBMnzCNxw2K#A-NBVnVSQs;e~Qpt2!kI@w+tk58cARUseAfW|Mzk8vly(1 zeT1-QYvk2`19n~s0jH`G&p$C3!s3YeS=|Mlj|o2ageeW|AIkCp#`J~Jjt%%ghatsQ z0V{!*1Q5po-JbA0wQBc>GG%*B6)#=EYJ&sle2H9@OyWnR>}d{`<&<*ken4;*zuBfB zL5`J+LxpCNFlJMn!{XQ<1#JHbd$7US+GqIGnA&LsCTO%={s$Y3Fj4urIDA@7(W!H# zT5kq&l~{eP8ltuZ66o72Ejy};=A_5D)hf3As*{OXd(QZiX|x&FIOy;W9^EyJSli54 zXsC7R2aX^b_OpX5K6|h*VYkyl1^6w*D*L?I|aw; z=zN)hSUP9!?~T^C>1;|fC}*{8f6SEfegbXcyG(hVKaWx({M$f8g`_Ht5x{p$9-=G~xq(?Q4Wq7hiE^6p#fAO7yrIA=? ztt74GF(zmZa2w)g*lI%J%D0^gvg)_veDmFj7mXW8_lpql)$A3L^+i9=5}-;H1W)bs zbv{NXP;2WSB`S(;nAkE>a5meVV(J8^m;WT6uE5~@N#vLt6+7r(#uHbn(K9tz(|gD} zM4lTFMW*YtY~BQi9fCQdsW3yLEQ~TRGOulXwJdvM($eiRCX=DNe=d{lf$p+yor^U$ zBiuG8s;rAwr$n3Djfo|hVJsH*v@<5?3<)ulg+*o2n#J49$VjtK!Xg^RhsQf6%we+& z;RPC6`nMMLC-H91E~(0PmJ}hIk1)r?=PgY`BnnR7Q1>a;&yU-VQ-N&yD9ih9I!|%G zw;|BW+TGg_8%*zG6nm=zkZ$hOIwY>d-#^@{CA)8*~0{3iOY zDqeuBNCYN2;Oy}D^HE$2!Ac{g zN8*D4-3VhN2`bSE0vP)q6MWlMiux;-bX#A0EK)=r5U9pSVnpNE08XzR$l*IUlO8mB zVsN2urK_hm$J5X9y>Cs~fkF-qEs+{u&T2b{*lf!L4ZmFpX4uobXJLzJ<&O{t;72(@ zr>8Qc570aTiuV!C@hm77&+>pk?nHAQjoNc%5SKG^X^9%;@m<^)A0=qWU~fWY4!I=*?BrmIHX%@3MGK`The>imKx-##y&l??(a?C_ zTM2mf3lIXQI#m3Zi2a{7r>=F#Fv!R8-OldQ#L=<+7cjNBNSU4bnrl~3mOKhayUKjr@33UkLnr|RwL zcig9a8#1yC@=<){4X_^Ht6`aN*K8%JYVcV*n$)+XGGyFJuoLFe1zshEh6tA+z;T8T zE@ga{+auGD2I!17Ft?J!f)FfTRe?(%GRG%=rrnk`o3ga~635k?20RiBV4KN=dj3A# zzMiGuasVW(#FL%NKqPBw(s$TOj+IRD>vb|$H zJkfE#XEB8)DbKBI;cG^ggfGZM@FQzcykcQIVF=o0mJ2!80AW1)P_Ai{OOuXc(f)4c z{5xQ1GDGabWMAM+kw2=aV4+8PuZRA0u8FM=I10M#ZM^C43xqrVRYaXX4~cWKhsJIH z6KxUdcK}RHC!ZQBGn@eDhBLwXvZvZkXCWA;YWOC>$RV{2Bwz_Y`ZNUlM0)ZwuQ+^D z0;T9WL%I)3A;LNZRT!K#@=ju~Rwdy5XZZf=cG|F=yfT9#qLcPG5YVDL?Kwe6FCvxt zRaW&UAk!XXex2q1eu{)?Yb#jL!bRx0XIOimr6qD6NJ^up?&)=&_uPpQd`P5?n?z~2 zkpUw>qVEw+veI5N(85+t1bc|39%t3GC+63-%&gi==={X<%CnL2gp784#90$r&FNg& zCT~oV=XUbVS@I51N&)A2i{DX+s7B$I>GdQn{Cy<7FeaO$En$R zA`CUJi;GD8#s@A;Jsg8ukhiFs+mJL(9UPJ{!r!R#5m4-UF7ffB zVt3oGIM1Z~U1h@)hQ>ixGsxk}0wpF`gqO8{2_ozf_Sz#5l=1zy`3di?!;Sq1gz2~H zb!(>VSj)|q1HITpdDWTU>8eG(s#KNlKZRKshf45}Ze{e-2~Jm-%)H zg21#2Ac~aq=h6+~`E0aO((eX!PfV$Xre=VsAdHp=GhoeN@N+*?`4xD6+y{|(a! zT~^(2mX?T>U&O5EixO1|t-yYB>{C>clqJ)fdn|6M9Po7=+ueKU{SD?xf~n!Yg1>{{ zcck*8NVH&BNvSJYRk3c)1Xgem0_k$r`>bb}`(9-_UC(+4Dn=tQ_+(^Q4L-&&&W@LF zun;i?&OqDDql4P>jw+XV)n!6QDQ6-5&qyavz%986E0M-rm7<7#c|ZHX`yhv!>o%%_ zak>|oz(Lk~*W=Xu7TeAKR$f$6@jFfsD43ct7!8nJr$7O1oARKV%i``zq$5Ip+R%nv z8tu9^nD!CHOYEi^DWugwcE01u3DdpA$B)YD?^h^>VQf{swNiX)@EOQd?Q2df9d_HH zMgJ*W`kR0l!NfYljk$OfqWzcIaq z0nz-uzM~JrmK;EA9|9w`kxOe?kpzXa?lSdnu<1i!+Qd|l^T_?{!X!mKB0%>OBL5h9 zq6tt5fsL2QCg-g7)yz5&0R>HADs~b8y^^`|2=nBA80FKzQJ5Kl;`UO==PPuw8}~rbb>-8{XFjY8g3udt}=R2F+PAB8~X85ERONY5|?+sc7`l z=?o9Plzupz`xdSrbbSE-yo^UW0j5(hwsGjCv$WmgM32jfLi5x1iU;a6JJktW2boM% z))(DAi?4mDTK*cEK+l_6YxD8xw%n|IKyZm*iWX=boNLCD6jCTNkeq!-xo~H7>psC45kp7DR-s@A_)OhMqOIJ28rM4 zz_D(CJ~~P$G0!;6HvB{jTdL!PdG!)-{= zAx8Lr6YeOgyvtv|;%Bx^rWSd zw|ZoI<;?Zm%8~z72cH^gz61*JJW)Oj#wCSt4Hd@!B%$Z`!x*0s?F{(fUVv3*Cd9$C z-F}N-jo@Llg7!KLO_OQdZb4h+7gAYZW&Y>@fw8vwWH9fQa~Uc4xd@*oDpBfQ9ry=; z_npM^U3TN!{t8}T3yeZSTLor0&9ndBxBL%)V!q|d!2w+)*wu@1CZqL-Gp?SDwR4RMxF);4WqcVC3X>eP;NEAUT*l63qcOe~pAo?!; zi#f0((#@UmsmabLbB?Ia1DRVMQWr=| z*9-g!P!vY_qJ`8Yv|etX42@8M3k>X4u*(-Y4gJU(wHgEkXA{_U_TsL1v9|V(!voP^GCb2b-+V6&%|Fa;lj_F=J(KRr zuBUjqQy`EjncOLj-!<)&1Ku+dcqw-R3KX}3fZ_$n+c%`Egamq+3V#N9=fB}Pp#|Z7 z7KZ1CAz2>hx@}|OyO;0}z99A#c_-!6TlEPYq;Qh+t8Tg07O>@m)WAe#N2s9j|335}W>NUSgAQVtMy?DNbKna>Ht%{qH9 zYGDqw21$hp7Gq}t3UtzQe?Itg&P(t5C!FJ~zXnO8>!1yA31 zry~Fho;R8rsm#{verd3CIjUEFx8vW6VeJu)Lb6%NYqnhyf3`#l{9qO{N=$S8cjHg< z4(4bwqFf_4%;Gu1NiW%n*_$Y;;|(Ahoiw3itBM!>LZG)zpx;`H?-LLpoM$%sBAS|< zF(Cxg688BYh6p$bfteLs{;kw`jB1-32a-i_vh^TLO%r)0I=~Hio`T7MI7q+g|6Z5; zq^2e+QkO&(z82jM|5pUk1L$y$9l#yess!fX`P)<p9cYXVs?C3E5fdOd8Wc9x zU7PYftNsEmDJGgDxJ;~5_QxuQ-{E0uym-IDy!i-oC?rzx)53M>CELW0LXgj&2&yhWLZ#v&x8xbN7j4wQ4^HGYLE|C7%!B&OvaHk#ykfPqJPa znYQ^zge?p>M0NHU$oyf5PzK7#b)AGrPn>fj=4^~QVV(1bCoOMlyv#4cCNI|yUK*&@ zF%FT&*+%h4ZP&;==D=S+!SCyUs6*hBZ?NP(;V6AsGUJpq$3lLDxd)S}AERr>J5WcG z{VEITlUS!=GTK8DX1)z_J(N>?GFA}Cf9Dyi?(K}mfPgY325hewedXH+Av)On{}vOo z-=XODQF@kn%Y7i6`*$|Z3I zk^OkeQ`Q`TYolXpAb5Ei0dhFaFInn3^X`|Z^(2m6NJw#fH&qK)&kpCFfB*B-r7x@1yzOkJH18sPG0VRX5F(e{e=C8D|zjnVYYM<~O}uD0LX0*zaU)VvM{x z39HRt*U2#`1HDfT0;!~5gpR&9g z3q0ROvW>3u_c5qlLZGU@3;O88c3PhYUH=MYoEwzv9|3KXz>DKMJLq65lrOllOH=+~ z*u$e+A>Ztehx1geO&_slmMkRP*1oC;8wHEwjUe_fL-whOddwyyLwJ$a@S_{@e7PpE z2#DDB4J7INhzooI)z051+nadP#&|Pt--OnLC~1L_@R{%X{wLa6GYWzb<*b=TLo?pz z^ax&nP{MJBrcrQsw#~^ds<{o!{?KyW-^bBg*7?wq)HUm2@S?m)qj(!Y%@X|%#(0DI zbDikTC5aD*77f8~P-k>ta0y?A)P|+n_vMC zr$3;aHpVfXXS?@HXM-t%k0zZF5me%cr{lMAu9-BuEF z(cdKC%9DYwwtqfNqbgP*R;&zHk#-dXwmX@2Rp-a0Gl(2BH(xfsfsGGnWSO%aeis-# z$*S%JF@T$_=Rx-GC-}hU*oQJr2Kt3@ea0(6h2sz$OA#9K2E|6j>gsf9h|eG)jf=8k z&eCQh9K9RnuNzd1lzN7kPGz64cfgIGaDN^jx~d%{N-YxY<{J?B|0jFj2VsM#@w+!0LCP^FJKaYs-!EOL{D7d!NaY6zI*?IaLpi zbbDWKFSjtp5UztUC%<3#ID~hS?Oxp^6C&O}qvZvm*XrfY)HC1pgw-PSo3Qn zFf<4}tTF{;ma+NQ=B-SGuhW8mN1&TO)wQ5M({nwb5RF}Qq{uQj2n=-d8CSIOe# zkl7=`nq)rD;UU68Xb)^s9qZRYf1iOt>6$4a?;?_tr@=7)1{34&?$2T*<6f~JYXwX_P1JZUyt{ zP#7xItH>jSf$qhIu+Ap-9OLwFRp32^E8QBJn)Y^ds5|R1P-`;JS?`NyI}-xqu>b5# z$mQ5-R%Z6%8bC`pV%1$gT<-Q6}akexq`jV0$w;UqX&997@X|M0K@d*U=9Wd)Y4! z(HqXe3H|_q!{@W`Snl1SKry2ji1it!>%Hn(%rOE={a>KaDPZ(%G_xCAfi^~eiM{Nz zwikSg;D@&ezM9X9L1~Kas5#dLF%CtU!-qh@)C?cy?KO4?>5Krz7>Boiklzz5zGc_F z%uewkHr!9J!m;RRM_V9yUXfKh3y{H~d6n!jgHBk><2cQ^6!9b#i|3_(E&g<<*C;y} zoupY@)BxFblMRmE4D}Z%DHpL}dYGhX9u7&t1P3v%4yL7Y@;hch2dGLmuj35X8U*@z z75LBNDz*fx+BJlPj{w#gNywed7a4iGc|>{GQl=Ag-|{M|zFw(UHyi*u;3OeVwf6qR zbWK}7LUpG*RCyJryFbE$>CgDR7C3Hu<2!tq_hT6a2^pU6c=X;%cwLW~4RI>-zd1*k zO4?&Q^C615YF?6V6S;akDh%=50_8HniF`1!gwz{TzAu9R+n5?4_aI!wPX&(tEI~#> zyg%fI3KJ;IU{l?kbNzyk>Vf}3+jf7S!!{2w5!0r($JttG|gS^CiyEh&>+7rJh{fCmd>43d(HZ#!$#mqFGt` zddB`XiL~(VQOFPRcTk$aX0;B7`YCGsZ78{yTuvR_tPOkuz!R!275U^j}#ebuc_=vXv37Obtd6=Fq<` zei4Hi#a4aYT#3?5`1x^25=ekE$e(7`y@U2lGxtPBv`YKLoN;8r5JRBTplCW1$lS-= zD!LsR=$Jp}AyhHJ()-&Qp{xfm`N4m%{XCJjyg59O_0Fze^Zk zLNNa;Lb?4<6m*(DF>d}MkqG}vxRI@NFUHT$=YVeI{0S=fCj(t)Z-@zRWqbjYqunc5 zXc!v<38V-k)L*+}Uk6j1Nh-(+!YlT;xZEWWD43ct7)S>rpiKEMxDhi7^zHdA=rQQ- z_M2dPDRVf`DCcpqX{6Bk_KWWM3mwRrJnsiF{&)P|Lphvxpv`i;#wCmeY_@qD2yw@>{MyXK<5zn^K(&+UXN5!e|Sd`3f^L_~9 zCqbldAt}F=?!B4$?8{1LD+}{(OQJmSsTrcKBT@G@ZeU~nU*?ApE{}pSpt$sN=q~@g z(xYp9lUQ%|!>QYX{)O8aeR`25bTFwM%^oE1675z^_&$(Fkx~%IFpe`g3z!+Zy;SyG zZne)mvHvBU+dKqH38B+EJ}wdjVS9lPIAf0Urq&W$kPI=%PWYpK6Ox|mn8&xJU~1V4 z=GH7{VcJX7-IlX>uoEFrFg4>aYMn@g&~{=RS~$8kV1B0URP-}iqv{jQGgn5^INPm( zc0Yy0>Tf*>?~I-tQV+GcgUQ19q|B{>he-N^Fj`aw*3Y5&Y)W%T%i|1kPWU27{We4tB2+7n`+k%V!myAV`< zX?=ZiWt}4>c{v*5E^5K<1bpnW@uv5 zMIa+6JwC?>THqj$&Ya@IgcdqV4*|n9Bt@CkB3?s=G#tjOwF1MY2tKXC)X;*#5$c(} z-kA?2WWW3&ff>kFq+AyPo_9g{SW1A;QMA-JN9zVP5-n~xbEKP*VLz7ODQzj3z)gpB z$UMVhHwW&it%l;kC?QZVHKT-nRCfoa1{}_RVDmJVkG|Urzj9in6O`Jz>O-<*iSOGo z4)y^@TW;9ey=ahU1_B*y?VFd*W&^#HJ$X2iz7{|!NOZJ8B+9?*TlyAr_)u2)$j#Bd zsaNv*%B=VD%vhggzr-dD8-LrrlIMYm)tPF-^hOA&I&{H?cB*S-?RhpFPLVc+084TV zVdP)RlGtwAk-T1}IQAM$PMp#NSVV>(26m3-HN7+)t>ASl@X%yg-^KUwQ1$FT`el~F z(y-W7L8FOD#Dl89P3YzEp_zLDbMD`$5(qv4tdM6epPUmzaGkH>5ljw6T$-zGMT)YjLi6T^C} zC&r9a9y~naHQ?#acGkX~+AuXq@*w_IaV-$=AfM_2z0|HJ6UyCCHLE^2GaO%eHz9EU z7!x2undX{2_V6!K?(fN2CApSd3KBvdIjD3Mc6!4ruc9mL>~EH9BX(|KV)jy`Bm{h0 zHT?kvJ{v?+h|{1DR*uy!vPl*)tUINirEwDFtQimhi?187Tp!iST^v?3vg(nA?n`*R zA|)Uo8nm=FLYCpAxbEXPqH)(ve30V}4m6&GR_4UydXB~BSCnX!HRijiq-~muWiMLO zVnU^0vm0&`oA_?%&`#`wI3j0Z9yUMM-Q$`XU0RPz4O_ztQ!~P&H(Tu(^Q#(Siy8`s zO5>~=k==<=g5zm#kl~y;F?F2?XupfSwQyDMWQRT8H>gmYAPoE*YvqHC{rU7}-f#J} z>Ggx@GByxV%MKWLql+w-Zqvx`Gkj`fUR9u<@F~keWg~C$s2Z?VF5la#Tbr|dgwl!< z;u=w>LVre2M)#|f$Jt2kZ{x@L1t`7;8A}?bzp0e_H$(Mj(M~cfIp7iWrj^plOJAPI6rsE?d@+U(Q7+Zw+o8meP0>UjXmILb$1gFI95^FU1#qca! zJD62S56>h55aGfXeB1vuoS;8VGv3X>y}6S)S{GILH2n+0(BQZ6BGlFZ)J*M@N+|T8 zR_X8L>MlCBqq3xYY6M18fNrMB)tGp^j|)6&%88j@3I~&J+4wMljq^XQfgSLzvHrR# zG{}r%lkP`;_u6+7+FhAnpfG~3RjvBm#!P-S?cS1H5dXd!(ir$sn3}d(w|jfObAAzlU3+8ZdV+7B1Y;*ht+8J6b zhuJ-i*5@xdS>T3@d^}5T*D3lkGJ3QJ%mC)r{vj5mv`gHCnu$s%^GVEIoHD$hJtS}P zA@;SOsYPbN)GBwj6q?P(z}i;A-g%Ja zQzN|>;nj3iOm<$Ljm?KczwL_d!(`4QE&ZODpJuR4; zF&JRTOKej!8lv@}BJO5XHlB}^6Qm?_vc>U-`-APJ4iy>CE{wEQ;!h(7v8}Vx=MdS+ zW@pk6i7CqW|hfG{*N zrxMf5gryfK7Ab-NK0KO`{TsSeZHDp}yrqz^S7)mSIRYU8!sxrb_-mrl;X0Gm_w`qN z^(|`Be+(1kzd^D6uQB{+^DoKzZr40Rqs*H7Cade=bf5hBJC?Rjg5W!BKj{yO`yB&; zf~gsUp~7+_(-cUyI)lJ7QPvnVd!eH~O4GLK{m$#0Y# zPBM?KhxyCN)B4MaMkN{&wK{C~up2AWOroEerB`?BP6;ax--^kP6OG+l zH`xDynL=xRuEc*^%v~husruyJ0!H_}6=g#MOs$W`GFn`#d84>ewbEV3KXBKZzuNS} zli4LqvsbR~=isPOG;2KTWEFDE9j8gQCw56$o27MEe>;IyHVAn6FXW)!_ME%(2|D8| z#8J51Fil8wGMHJk^em#jy9HB|0L(79DX_yB3?j|~9S{vc6UU%^qijN;g7!cGMkEYB z-T`W(Y;PWQ6O=_`w9>%^belB*D)-IJ8MeSZRU2v>>cGu}cQ(5m z(!CBQ3q4h_3qHE}Q0=fT*Jq_G!pN+afmg#+$f-`Q=?m^%yX4$}&DpEVF*(Y9*)TQX z!^WiI2KS>v^x1&a?b-Q5bp;_gRkL)ZnuK5D4mYm7F1Kof3js!yyE@a*pk`a5l`7X>ud^^-p4(0*4Z7fVo>${Wd_pB{WTsxxb!2uIhwfn+4<`hDG z1@@y#XUHU5?#h`44ZyEt3lv;D#ioG za%oRj6{nGLwt4L7cwQ?QnvRqKr+UjfW!+(4{JeI`*LF#_yYB|U0#sdbFlc7VLSdO1i-$W0 z0();q9>cNWlxgUM_J;9DVTN>zEe|?;_)N`2V7Vu%OEc58+J2Wv%6H3?3zsXEmAV?z znH}tsY-I-`$Ov%|5MfDUl;_PG{Cpqp?lYhRNMZ0Q(KwS7*t`i-o|ym58y+JHB(u?B zz%I&Du|JmV{9)t(^JAG1{~}&Rq$A9b@~EQ9u`4xP3Is{Q8b}^ZNFGJLpb8P=Q?7hd zHH;O<1lYE!1~6NQ8EaHopVjKzAtHlMDT3?ii50`lti#lJz|VH9nbrN4%)Lv! z^>~+kB}U2}FnJ&wj;$6Mu>Y)m{bAV>_gpgJ=QGw7ILn`2FS)mka(>T&WjA*?W3+d3 zcgM4DWgqG|1K~hNIbi-(HpO||x)1R?wDEE|Ea23}%HcDMci-rG9)}WY`>?aPa=bEi z?#k4@mo80I7Ck%^1)>o6B1FsRL3i-xj2<>ci-X@%iPB+YjHX5y8C_X5re|4>f2l8f zzNH`Xe0zyW~(l9n?n7C)-s!{=eXsmoy z^JW&YJ#V#C=GYxL)e@AIr(IKX)Qi3RD?nazCXUof8}1_TS%AJ1;xkIR?mYa~4}SgI zKl5{seEOMR{6)!r_koXnY~?`t=1k3X&MK=sv~`JeV}gi)(36fZ&m&1e-9Du!7ax_% zWtz*p3jMX1SC#7FCF{ULmUa1=kugULVKB z4?V-;JyXN;UEm~URPh9M;OI@YsvPA8e(yLmUS|ASOmm}qL_*9{b=V3tQR_JV%ywKW zun&S}%V@Sm+g)X9t)Rr^kXsN{EWv~X{J%tq_B+~kDtP3Tv;)=_1Sdis->!NRYuONy z%5{h!4|bbW>?73K=rv$PN(F0zT8H|@*8@ZqtHxXgQ>$-*1AN3Lu5$oWBS{*wfUx1< zs$(tA*UwV)SImn&{!htRC*XsWO0q83OT?M1mp`uU_1_}WB%5a{(;m4c{QNbR@#%DT zgCp1HtqaIsinOaBFtp8hS3zw^oq>3rRlfE6g7rcDE?Waae!)zQ4M(VA*-}C!1DIbf zA&aB-@t$wYwi7-w-wFfLpsWSWnF8d6`HcMXJ$5zPo~>>iL6%XrT>|Qwon5O+z4pZE zl{>Y4-sIw?$(f})Zn?@?42E`>n%Ef4wgoNCWf;qsvW+Z>Hzwp3vOCiz_IPtogiiCz z1~2(c+oav4rP(RpE1w7^*4W&Hp@ELurT*=Vn`q;v*#D=@E^qz`M=cx~x#pq#pOt|@ zYYIhWg!$h)a-mT`_#*=>zBRWY4ldd!UtyoDFa#lAMRplI*$d6Dj1hs1sY?cj=Y&fW zD;gxP2w1}wnPCs)Oiaq)t&e*^_?@&78zspv|Bp$Mw!se2#fYB^tqK zxHg=;%q{6aXcmwz(o6_NsR>wCR#ZwN#a`C3`+Q}0-+#;7U3TC0 zecPMpDi#QkP*e~bkc1u}GzF!IC`uElA*h`AuyN`Uevmpnk@QiBvH{QcO8ApjE=G$0wSR5DA=*?O&m#|j@2lDobq9cOVV zi{+rxCztQ*l9ue?Y!+0gz{2a(TSKv6wvN{eVN*PoE^vbB-%M$E-uMMT0T*3St;pWy zgh<3dPRBs(jlS6vT{<1e>>52k3O3-kTXsB))7BPw!Ho_vx2tfVhhZD6%2AyM4yo=;=JbJd56|f}L9eWaOY>BX2fj zan)R0yUl*))4u8_4q46?2^Uoy-B?cQYSYWPWLcqEj#b6HJ9=3p0fOlp2Vfjh;4G&* zR+g?3mwe7Ph_%pp8`|o$5O-nZBV+M`a;F;ZYzQx__SytjuQS0myGAlK)5J6dE@hsM z=?2AXrW5OFKinUYNCHh_f5mWjrarnkUehLW;k)~Nj)o1NMt8$$*cmvhY*xr z0pEP%&&yvWDvnC?$NQH-ot5?{^8Hd8ej$lTH7U%Kegc4o1QHE34@qs_8l?a+Eu_kE zSiSCh=Q~?j65LRb&w!AgV>G)KNk@GGb%2jCFj)Y?1Uozgo^%9@Z%!N#RnX5-QH+k4 ziMv7Nbq)#t(*I;FM78oVVLCuZUYZ-a)%6f@V1>hqh@OgHoVHDdSDHgswEEg|YhA6A zi-a%nvYrFw;&2ck3n@zV}uBd!$sreED~vGI5nLs=iDzDzall3kkB z-O1H&zp7d5baY5BRO$9w60<-vsZLECxaGz{PkX-%J;isT@}Y7>=7IV(0I&WL^zZ7e zn+})(JAKrpnxj2HO!SUVCgAU=RCD@YZ-HI{-C!pM-;>_Q*VV77QMgdCm5pwNEh0%G zPY>v8IJe2=NKLDAbhW8!3P6jiGAZ$kBPm@zE4SMmI9b#~_0*tUIH10=Q@W$NBQ=)d za1c3usb0uPZwKm603O6|s1H<%b?}ciB=M?GPD-kPYu!+G92Rc!FRc>$C32$dnh|{I z8+{F}MP(^?|7}LrF_Kis7fl?gndG>m0vj^bR=fSH^se1N>v(NilN9deID1+K(rq$P zz{Bplx@@l)V0&8ac@%P7Yyb+G)zo%l+KE12@M}+2N}WY2BzCRGyu-Z>#xA~&W+UK% zxdb+*!5b|a0w$TDeFSvR1bo43@oq-|n!cD224O(mfT7TtKCKsfUnGM*wKcT+VthkX zgbP#)lfuP*6qrO!JKtHaJu6enYL{}%EUuN9VU9mLoH zU=#u~G$)~g#4-{StYOAUaJ$%b9vAEEr~$Z1Vqe(_+*rUpwA@-_J=7Zx0UXTT^|(GK zk{TNHL#{Y|;<*9@Y-s1XLb0-XD5)nxBBOvi^Mad;Eu(Y|K-CvbUzS8lU?`A-m#fh6 zMZoimIYhsrcazYEI@LM2ML@+6te6v8F_ktuRKhGW4(n{-%7`oX-(Vp`TI!L+$?9yc z_a1$Z>P+pUe(1*g#GTSTz3;8}#d=X2DG#^R!#oLaxI`K{0nF6Jlvn-=b{7h>c_0(H z7}PXecLf9Mwlk?N*|)o`6Y653=3WI9pb<@g1&Hp#0^CFzk-_|mo;w(J9Qh!zZpW`- zuG*w5mxX0Dx7f=|??qqq?dhA7CYKv?6acN>4`@E~e`{)9I_54bJaqT2u3|}!I=$#L zMc@_r)-eWAupPdk0m6t8kn|OFh-gWKJZ3WCsyY^3p*`1VhV1gZx=c^(!7gI z0is8sHaDd@|K5gLZy>L8?WlcgFn|-Ny?u_4xZCJl|k9i zdr0rSrQ)dD0ze}czlT{DsvGG5ia>S0MtI*xLMqp*5~x>`sz7<_^@3Vsnp9KAM0r={ zNp!GU8;1%l=D$8i2MSx=-<6s!7{DG2^<~P6YDneNzuv0&uf0#G!ro^g|N1MeKPJ%Z zO-I}S7y~P+i|sP1E5xWnWY zADRznZ-!<+EH3Oi_XQo?oCml$0Vd!)80MA$H{4-m30pInEoC4Wi~thRJWNw4nf2h$ z`-?fA*06?qJfnG^HgCym8a*T19AeBUjRI|ViYF$G?g=c>Ginv3qxa~Sm^w<+hVyO1 zhiHWh?tuzD?2_plR|7!Q;*UTLIbrfQ5fng&^a6vxD$qKnlTrUA77!%Ddjv5kUgr@4 zUufc*%1VHwCUi3rbc|C9iM+lx<+{^~oh3m7F9n-!1U7yAe0uYTv-LZE>xSyS6Ck za>{_WLD`X7ZreHdi_6Kzd^h$eV1k+$_$F)r$&coIOKitvFagz}Rr87m0wkY-p@jP` zc5Q7HgMAI{%wR3X9w;%f`X2xTRhMQl{1CY5;jUm^9o6g{fDM70a~4|zlW{qXlBy%C zj$cZiS}GVB9U%D_3w;5=wGLwNOAH6aQNsei1~HGxHO$@Rj87%bn5{N<+pvqCg0pp! zfQ`u29RVcJ4nWEao&tXTAj=QFBJ7G^N}K)f5TLP~?8Btmi|YHte$qk~==N4L%RF(urveKTwzDi7Gr}f=) z+DZ54>)R^y-CjZ!{24LsfTW`~O$Rk}hJhKHM*-SO=2hve(gWje3xFz^O;}_3hR@}E z8Gk)4f>;-%i@F;^z0Z0jF*@&y()=a)fBkQV{#vm?69{MmpC{MWvca_gH_2z%7wKKu zVSt;n7CW;5*d$WB0uwiJO|2)XQ5D|vR3)&4wUe0A_eG3Ip$!?5G~2Ky+3-Cr_@h2Y8zj0+CWL+s(}pkJKYxWJ zyX;%~?$rPE4HvzSLSl%1Kyxes?o{+4O4AbM>wT$qx1M>H>{mx zzyXex^Vc)`-XS~8!#CT>M-6C(32Fj}aV0MyM}Nqpiq|mJWfCudxsPT>-LQZpx;|!- z=0TdT>6SL9^j{zE5ISdHc5`5Fz>Wf#oVME8HBJY>O|`y*P6f%(E4N{Cc41-BkdD;S z{452jrS))?v+gz3>}(R$(!h|OwOI8@{jw|70vSkPFv5aPJuF4hs0h^*1u8b~>$|~# z{0LK1!p`*y%bFwrDoFwGr<}W%S@Q z^*4RUwB!mM++0#dSL;i3&I+{Sh;gfgsus;1DUib1$!6=4XmXJ;Bu0>!S10}`U)pe? zZ%?zL{(A}e*J0jr+N{jxY#hL*)BxPne8zetpJm6>yRf6F>99w$=)3Gq0XFK-)VE!j z)T?AGs{=zz_2fAHRz43yESN?KYd!O%ooQ2GBh{rc$&m_0XQ&9Lo`+g*RT$+0&xQ$m z7!X05BNBWo%eBbQ4J|roAhk%q+@;y-F$TS!>Iu})oJF>kQe_I0&vrn0kl3Iw>Id`( zxWj6&35D$<9n{dbp=(6>01nlRzDjt|)9MRoVpPWic`}k;bhcD}}VMV^Qu-4b2 zunKrc& z&-A>|G9h2Qr}pBRUY>qH9+e3bH$ab1ip#l1@ zz8*st&|5deAs~%6J=~#b33VN{M0ZytNr3vDORh*dMc%t~t_wNn@1tDG-*=7dsj>ch z`Vx2!4pP6O??LP&g12mXMky}VS8s<-cf^toH|0njg=qwZ9! zw+&QgLmbf;>GZbh@91@-2)&MwHgGM;DT}lk_^G02dOL}rlA7d@gsmPu9?k>+DmB>a z1ElJ8r84w(>e*0j2$=asfcGIKz~9B>;rDt%-#>xrC<^&Owao9{HZWyOTw{1B71uEP z$Ag)C(rb519|YQ=x@wRe8z3YZA;3y43vHdh4MZXOBj(W07?Nrk0VM(n`WMkZq5qA@ zzr?6gAcnWGK!7W={4^VI@=F~|HhP{WFEmsg-`=+=5n2xIICCc?uHJ4O`WVc=O@A&| z0DRCUiZ7j(SkGL2KV|OjN5kHcYtnVwDGl!PjRcZFTTb7=ET8wliCK_D(-Ah88)*F4 zAk9bs;Do^lO~1SzQ!DwzZX)d>d71$hE4?#--S|6C+NhRPPLaY64@jsGJH8XoN zc??saIb%46n_*V1ttc>$&6E0%o1A8Kx`%^5o#0WFk#z}n02^xxOdUz5$>QT*0dmL; zPv>6A9W@-P@$!1Bvbi=Pspzw`Zd;R+ZO8wZ2E;ZmerMv`f&%&DPM*#dh2Md;KZ)fy z11&asro|B~P;l8Ty^$trcNgb8N)v7KRye$n{cqxW@Jfle1TmWjfTN`k1;{OZZ_%9m zwv(UVbi>Kh{{S!mN2R+iCw_#$O1&n_djKr}dVxx5HP=Bi@F-_ar$yOQotCoYqYl>` zJeJhK0T_-WWr6{HYutFAo$P@D0O7a!?)>T&c8 z_J5jut+OuGrqQ0Y#_MF8`;^t@Ak`loPaz+@49sZp1+alZ@t_!a zj3c5+b?8quKnAowMQ6nN=&dEK!Kn;eYFO=7g(DN{aP`~ph9r)HRD^)vwq8gRg3C_GbFnra+{z9NRTEYZns~@PiwRTOFZE%I!{@-f;b`%J1P2D`-0F6nwRqIkI0t1VtJSvW?$3tA25-c30Q;G>abY){ z8*&>~-$${!j>O=?_Gt8gh9AXhy%KBt$`0I7cB$YddP%XFqF_`>Z*-3LL9-h`GwL@! z76u!UOl(EhaT68*e-HcskIZ@k2mu(kpw~FTC=~+&ePFd&%I?`bwkAgU67_e+e)?0+ zeu4@Y4&u2~@g_oHZmvLj#(we>?^qyKP^ZPkd~RNU`M&RNq^A%jpQo^{9f}0@?OOr_N4Iz6-M2 zCqagrfxh$ue;a#;;!#mDLHigUuNJvvzVg}x?f4&tjOpbhrx&tSxFwt3mS~#>hM%Xp z6t&Cw#QOA8T_A=}#PLzUWhz{lsF+-RjGrV64_xO0|J2FVDHr6E-71|<;YqAdY1qE^ zmv`Zw)!)%iT!js;(e_Wg?y0gmOoha0(Vfn8QKp8ydACmw8v~o8&d$2AkQDV zse>g=9t~BIscu;rjj0CPEm9&T8#tE)lS(ra4#9$JXvyM+GKs2TmdE7D1Wx*8?_zdZ zs#q)`U@Lt1-!q5T9eBUjcq)1sr~rZM`)Q-Wf2( zxAQ=t2A$zOw3JjDeRC3e79=%TvettmqZ`^a20$iW0^9v`8aV|nz*g(mb?9d6v1GoT zAX&EGRXVyFS+zUbWfbM#2VP*M-uA$Mgm@1NK4`)rDP+b@(BX_2i8TO(ODvkZc>AW$ zD%iYv4GeH#_OX6FKWnEYU8(H_r&8GdB?BLH7O1rftF`)^({|#ivJsIFtME09z>RvO zLpQ6%J_XXWN6`x*iPrmE(@h7c2Fvvc-dOWoc>$bNa=Tp~XF>w2@+h@+eU5h20FsHFjW`A}iu1pZ@$t*BT5$25 z-4o~hp5n8M<|*Z@Uw4eDuc6O9gL(XB;oWN#75$3X&Ts59OAAWt#g~sX< z`eH2H7u>ofK~_B&3ZjjWBiqpDTmQ|*FVRLrW)Vl7l zWwJr$20^ZOXaJ2`9KTfEDMhU)DK2r%V^@Bx4&At@kD^L{LyhkWt~IE} z+1Nc3XKx9OZ_WFxZ|t-r*|U0)`h8BXbhb(JM+281-zu%O+7MJyHZNzjY1L(g5&jdMtXqi?0?%qwY6(#813r$`oMBSF$ zvfHXa$B2wwNLg`lJG^Akbg($f!z#)MUEhb{~a2_ zs>`*0-yKKKF@EJ4rpQ%|99uBBz{--l_k;ApicNNl&LDyj#I9_eR^Rn#-u}V*PHp73 zFUAtMk-zA9jnL|+qHoQ`xW%RfKy;LVJ_y4-_7TSVd`N5G?vmm@(MsTk0eDKeg9h=V zeJZ5-gpT?eZm+8lDb*)MaS7A#oceo{eLi#j;^(mE{pZkTVGPaNlQa9Lf$^kbd$hZ= zE6m^Sz^wf&3d{s;qSC~d$0^M1o1vQbf~T%#=l(k%uZRb5qi?hb_IIpfcVPZ#0CM!5 zWr+`+zHQ>ifi$|*>w;V%*B^Y}j?fiCw`2n3)OY>)d9VX$m1Gx;RO{>2r1A<@=6I^? zsU`us|J}Cu9l92vMwWhze(`WD?6X0Kn)v;g@plP5D-aU=`5>03eEN-^#zCGCx z6URA23I-(eHj>=1@i=$+akOVN8caKX(F12+AkkYO!7{0`dPmva->8cRh9G*wf>RKv z!2#5(&=Up)J;5$G)GI~;4WlbbccZ^#Aq^OH4*MYi)jnN9LmkKmXh`}89~)kvQw0g& zT8+z#;DKw~)UxdJh;Ne73o1KCZ!*{C&w!50ve4>5Pvg(Ka_0O8F}#_R2Biy+Itu0} zPod4XB5mi;^o`tOPnf;OC9Oc!#QJ^Nb5EeZ#f9XiVDNsclz6&77^y@^itXeq1Bxh4 zSS!_iSziCib4RB573LagdT_K3ZoW#t9!6UCLiHvWl9(}=tkA!V1hE&0`yZ;u_3nWb z<;1+!k=z)mNTX>oO7b7Z^!rL!0?vOgCH4D$*@$q-7J-|C*D2}TReuNcm!3wS%R>J$ zYIg%yZ)_WEq~=@Q^`)^c6TGTprJTDYIztO!S+=AUaWd zA<^2CJ^Q~J;-UALxv{Xb&^#Gv|5NBM6Ywld@4X>?@CEGzLvqTNVW0TD8_%jI3-j_w zwLfOVntp3+HEBr$6h%%0ph**Oa0|7mDtvcGLZ|C@PkE<*vp|i%p+(t6N_nl)6I(F% zz<%Z-(1hkQV?nT8ko3F&NP&jI(~4!7SzpBz@PeE7yQr!?1AD%YVQwCWDVmrocuB*5O@}j>EK9L7 z{k$aHrSZ;?>P-c>898xKSC8ta&%X=thM!lQcn5vcLU>&$DqeF$7lVF#U01no$2Lz1tK_|;X>z^s8^B9KGD z+r_{c0L+LD*lhn7+(K{7-Fj<9EHet;x`+RpQM@P@Z72wTBL1*Dd(OAR;(_Y2iu2Pw zTpkK9T~DI_Oh&uIyk3R9=Z$b9{U%6Smtj}_?SAJiU&bo90r;?=tz`pcE?)JMfp!b z=i>QLI$-Mg-Ja}O{~a1{-kTI?O$tO~DqFK`Gw-X20t9XfGdFg|ffWEZ{An=eW3hk| za}~7@BEdNrY;J=N(u*+F+?u<4{JD5!NP|8%cG5={7j}dHqFdpL^>HxhW19hPPJo{8 zfhov$G0V1i2RB|-56f%l37|o62n99%rwhQurqsi5S(WcY+?{xrRIEBeYLgfWX#DTc zuilr0*aG#L`A&h4} zRs)1T}t2=)W1oOR&)*!Z%t3dkNmefBMnH*~f!kFmFr>v?2wfGL)@Y zwwd)+NC5&jtFwyJah?M_>1a=b1mgiv3^7+&{3?)s3l_|mWs9Wn` zQrS($y*F%cQl-6O7{qhE&>kz=1?Ok*g@#iqT->vMPU&r@o6Mk@5B=WOFrD2EX9V9s zzZ+;Q3;3^sIwaCA7K-|Q?wylP@_B8~#AlQ&>JMS&q3}A3tvD_D!DfLPe}+1V>874+Kqsjr|;<3sBWuW0?I z1xSxWpI>eFnH%yaLRGvtwB49rj7$AOUpDVe3S1%uOi*))gfm~eJPHuFSvhK5C&86r zP|~a0Ors*4!Y##6-aJuBQ?RnB(X6VoZjQv zqc%&B5$?NOlJje&nk@&%K2`%JD{knagBou6C)#jFXj3Ik89IIE*pEWvL+@#)zD{zC zgo@AoAmzPy-W`m-PX#SB^~HNInDF$)N+I=v*DCjh17(}5V;S6JtY16_M@B5V*aGhr z#uHRM<}^#yqu-jp*pd@F4a4bk*o7q z!ET8!feq062XFs0yX}OFaSrFE=qCNN+UFx z&%!+RH9RuZw~($De;;DxzN)I~>Kn7IC$EH5&P@BLI3|Y6ht0M6cU|zq0_CY1fsB2zv9(v60 zfU(NA+C7^~N6)Q}2XI6B>rTf0ipl8fVKma%@R>U&LOsP$;9zbOTuRMoP2)4ckW54S zjR9rBaE=Ds2sN0ONnI&cB{vx*OXdPlEDWQDV84N7cx2fr-NnFq;R+XMnN z0I9Fj=2B>hCa4Lfh_5e^)Gr7iqc0sqU;28B^rhe;%{!9<9Q7Fm{U-k9A|&ZMjvk3~qe->wkn~g_xe800w^4j2+oKf+C~b zP+wY|wK}1mCy&D6+PUzwhkT9oC2;9AD6Xz5P=-Y#?Jkci?)f{nqY$HeF^r7Sc8M?sL-b? z0BT0Ia9;{8+`Ka>5JCaWEoLw&5IYnghIG;BcT#L3@n$UQd0U2>@=$H7`zT$&>|q2J|6g`k>v_#o@Ev`MfGN-KXliqQ3MCvY}1U=9Fj`3 zSHd)_gkgk4J#?=Eep>IloR%C71`Q% z$M_jXTZ33xJ69!Y)ir}KHt)kX!k9EH6@-*VKpMc8;Js!1lgcAyPqm&@(5n(_%}1G| zL+N0GnqZ1hUy_9SE;{#sz$f^|nnkwtZ>_!*SeAKhQov7vsFSQeq4{f4plvAteU`z+ zNjS0-=WOul04MjMd}0iu2k5JVeJDcbE>u<52dq!USFzwmHG0LHNC9wzvmw%PY?zqBQ{cucsZoCcW@T0=1#q54PVUZ};?Vf!+!MHY zf7rgn8ry{|0N=UT0G|Tp$e0umHW`rgtdf|VugbM0R~p=86yeZB&R+>_Kic(6oKy3| z(D=)_&ze8q;_jc=N0MY3f76lIh-T#X71F-Nh5A}mU8mhgrZn&H%Vw0*kaWd}q9H2h zQ=ztL!EljaR))O*=7xXo(&^hLu5U=#h8G2c3#?jF=bIF!%!R~t2Ii$cMvBMxgv(=A z3eSkoTRhr^mR5%xx)CSAt9${*!GzHIXqp(Zcha2wq46zwf9sZlggU4DMkY!3V$)>~ z=BFTrxUsT`QAVAQK=NFOGpm-eq>4{kL*>y6YLulYE3D6(peFe1kfcVIc|PW)FaQX( z)S>%wW_=X=hIwaFp!Fz#xx@@61!9^493HOh+~dx~q&WkO!F@&<1GI{Cu-Ah@z|OJf zUG=*2U$z%;17`y89><=>A2B6CV*kd!rl^JF;{!Z@RaHdEhwBbk#)9O=tLmZs81;HM zwC*rUzcaUV;`^cTmvT?w=H;<(C8xU6Xm|P{FzRH$YzW+-57l9^T!qs-mwK>+ex=U2 z$tYU<2zLF!j0Okn@c&{@&Yb@Vj%}H{?4ly&f^?!c911{cDsqu4F)zl}4$e+s%)X0* z8edkcJO@6!du~O`)G9oe6{9u|(6~Aa9<+dCBnAAhiqncbxZmxx$(!bG8sBPVhu0=J zreN@XtDJIv2tYc(4V*FYmY7i0UxwrcJ!%dLxyfij7?Ve_;k8oISbqI^>7$lZc_dJyF=ZLn zoXn8=2!NXYfoErhJiqF0eE|7Sm=Z8Qgaocl+&ytF>|V`aQlM=pAhk^~W+^5GE|~%% zZ|j&kQbDRtRDZ}NGG-Q7jQOVqa#WD!4(xdTQ*$e?@?%|}D#+T@vmh5|Sj20<_H$Xz zoO3V=Uk}ey&){}8n01^HpnE`z(kh;WMViz;^07<%>hPR__YHpcU!4GKuJ}BFHn<~I zUI^6^DgIL80Aj@BoA0g8-JZS4$?f0f8W><4um{HRM6~?C!6zUM4rdXsNgnqL%SLXP zwqneCT?r^fd$%Q@LuwSUJbY8^V7E>n&t`ij&OMwaKKTpOyB4@#PoE8ARz%x2i2+)AxwQF3mfhr0BUsBrTWZVMp=ItNs znz3!duEcW34`fNEvxa^Tuora>1Ay&}Z+jP{Pp>$H^R>aFCQd2H`XCL!=Ca2u`h7%@ zC#j-i3pCkK79_!=oqQ>!|8Jl#I32y>d-z_4q(taIeK4fIjq`R^TDz*hyLrQ+QRLCj zP{GC$Me3u``@FHd+fOQZdBGSz8>vCi4lwA!Gt%2;oJoP^Q{b{E#^x7kzF|_}(kSpK zP6a33cw!9TRdzNO{NIClITAHDaI;7|5&!&MlGOtKdC9YjZz<|Ur-Vm+H&zqCa+bi& zu8DKj!`9}TIGmIi^u@-&4Ke6^Dwv0bR(sOI%t-^L4c=1FiQ$CsE79DlB+m%|&xoJ~ zo~&97)C9CmJWzT|)r_5!Hfw6qw`DG7f))$FXrBy76Y&y#C<%-gsSz#EJhu5OMwQ&R zDyyh-TY($sR7GO6BG$E~Bgy*|ft$W(rGIkac?<_h!p4ggqwPi*z3!;^143m>abo@R znZ=7Hd%;a)kakIRmn|;5rvn;{102Aq*)j61kUS(gRQZb0EwC+9j!bb*D;-~!)alwE zYC@WWKKFk{HfT_J0vb@&;tM6&`ohprlkQqGdRywH_B*bsr_qyY0_*0#25?RBU$@n7 z*@zKt%x9lSNmYMf5_v5Y-$B{?43^&$>7J7`{zh_Q=RahuUph7$XE7OkH)1jix4<6< zj))Eq!XjDG?akn)K)QVR3-sfNpa$d5kczZFFZ0)=z~xdP(xAQEJk9q_3bY9Y{?c!a ztw(yw5LMG=fyulVh4wdEFjl29Fg~x^7+;-|s2$HKj*UYEjn+R>Iyy04li6VGj(r2q zCu4ATiAl@BaCWTR+k#Fd}PTV!QTEy==)&W@*r6$ z42^H;`$gk6cCg*ht>eG+Eiu+G=UAsd)mp=Ed;3iJ$Gx zp7WFN_|}WbEhvzWbWpnq3#6d{EEt2?D9xZ0RGh&vLR&BnU+~E4whzb6flKYn^Y%sH z(kaXE07rm^f%61k%D4mfM>_(=9m^1!1fVQtVzZ%_k(@xc z3V7*z8`741r|j4~xAZPLyb{sI1DsC$5~;&H=0Qd7sXdeCzF<73mQU$ddBllGUq^o@ z=NQAAQOa2mVkKNf1085+;G4+Tt*D-x%)>VWslpi4V!s1g z{Vq5by_t*u!N%J!LgUSQlLDUR_>`_ zpkIbJ3^dCP*izg=7uFxb!p*cs6x8sM0_>@vnOT&z_MYd-Htkuv?irKMkF<% zMDaA2x5fWaLl+R?8`#`gq1DvU2P(T6^k8Sc!76?EM-g83H$0<}&flpJiEDalTgiX2I~He)F^Dw}#47>oh(>u3N|C z)$Pijy)oge@(oRhTyO!eAX!w^D$p$vKraUj@+(-mmt__&&1*AoBe)u&Da1jvsfr*m znbS+hZK_EU&uUzo0VbKGB2mE&xFymZpCU=(Wt&S|JZMz*y(=?{If$2`)c~7 z0P1?x0Un>z*))W15|BrtBzPL?(?P+}_95lQ(yf4`xPJQf>}_@R&hLX3vr*aksNk1T zD@mZ5vBz;hWr5_7{Ut!F z79ZffsKD7bCLd!SZ5htU`FqCtMR#R=P=Nkm6!>9Og$9f>XK0*x4<~j~c_U=#II?7M zk4B!E(Iy32oB}4OX>pR88D1$0 z`I98`mFd#JXP1pG=|4YfXMBU3yu7--Ide935cSVMD~RksUcz5gqj=CQ0YGmev{_!p z`7X=b0^I0csv>qA%^ESfl_Lq<YOB=!!GemFq-r68(r$f^qt8&!C1edTBW5! zMogLp?|q%-frD(3Dr@*65dxU`sC_)bYb_fEmBsC&r=QXvCOfL8181NOe+ZoS zQqAJ|XGZbjdkxuh2^KbH@jb5mIBUAKSLUe@XCoDi!PrUj@GCNhN2-q**ZwIGae-|A z%{E(jHBf*+Nf%3PKP*FeSd3tI!~3D#hIan3U><;>@dA~rZ&j)tK6|QcL`3zdc%ma2 z&sGcj&8oy6!@&PK>VBQU`a3|oouJ3_Oj6eNJH^V0$uRh?p=5<4i+=>h>}O$#g?M)6 zj_iMi#kX+;F^F7sjezH``@u-vi{h_0SOt<+Y(U%o#f7VA-}cEB^Dg5+*vt)!p9Vw^ zqX+u;|G=d)Kzs}Z0F2S^EJ|@DDq{gI=AdS`qu+HiSi^eIc^BS$fjjvJ{VvF-qxHG` z(QCU|gz{g=zdv^L0fqz}!s!Ay0KT+6dvED2rwx`JE6F&deQ6#mABy%o1$x|OlzwRQ zS;!gQQU!a>k)&-WkRIBoj17yw4k)}jG#+$&O_6Osjp;)Z;nZZ<`+YjgR_i3FuI7O* zWCzzIh-+vkYzP6O-_{t;x)EAYS;?XDP}lZ8H}mh{odFH+c`vHr(mB&~=^RXzVe4PN zQI?cXf@A4UY?V~$!LrG-J`I0n#+Vdnc?yK>M6`SnW{xHWt_%eTh)mx$@#Ax9(l22r zL5%1;{C$j_&qt1E`{Xg-{BNs8l(yT z05cq2#f8DxfSmZhf#S)`+C)5D*Rc3j0@Tig*D@K*3&$~pIyf{uW@|=B{M)pB9ZmAp8 zsdUN%Rl6tN|E|rUeiI&`A3)YGW5d8mpRiGLF)G>u?v(qol@?T{N%JO$j=w z7arL>en5l%YD53Fg1MKS9*?c1n$?E+h-rIrF2GU7Mxj`qli(%%b5mW+9G?51F^W*#Y`9R%L%pt+#M7s~-s!F_i=bY^$SCk0lI>q)5J zJ&1l)2qwBVYPF$ei?q2&`#KJ5eIX-f;B1l#277;Wg3RG#4gJZK)I=aKq_Wubi(nTi zxWO~jB4lbtnH0DL3dHurbqNhJUok1r7zM~yrYjrLQpGHOFhp?b6 z#F|#nN2DGd(GDaxSvw2Tv}(0Kn7@axAl(PL8P$DuK*?t})3kqTR`r7$zp|f?wu|1_ zH}S_W8@1s-QHMYH@BP2nasDpUasJPLA0xjw5VpY1v@Tg-qI1FK;OrmP(@@<2s6o58 z(bmOoRTLd6D=7!SG0Z3pFIx01!KJ^3l_kXYcjwF@Te8>!!T8^baSaedfLOQy$er*L@a{AIBL zyX%j|)$Tg_Rz~p~X%ep+4+#w1+l#5_3&9{RyrKRWH^$`qkbo}ZZuUM&1!w)P(+z?t z?_+N4>rX_#=zkTe>KSQDY67Xkn0}b6B5gwKHNj6O+=W%#5dfUQO zw}bcB;5rrRI@8buV+=ZDRRA3yVyS;ovwGgS9B>0r^DX2P#;l`0KbTQE;a4$AR=z50 zXF|PHn}I$t2aNPRsHagTy&fDAzzr+Vn6}}-j*>G*z)fax{=b1)|4SG>aA@J~iL-wb z79X1teC(z-lWU!hp>V8_2gl0}+E5@e5(!9;7`v<&{ zv=FrE6-*y--lM9cO;8g|m0=|Xy=9@&e0EdN6P%u`D7FDHt;!fwVe=;5DG*teA>LbM z*59N+6BK}_A4;sgG078 z&$!!P1n3zV9Foy@>;^HlY=nbcL04KYe4leU4|Mw{{%BV`T7auz?;)O0b9{c-sL3

+ +

#### Scan (Prefix Sums) A scan of an array produces an array where each element represents a sum of the elements that came before it. This algorithm involves adding numbers based on a logarithmic offset, as illustrated below. The last element in the array will represent the reduction. Below is an illustration of a naive parallel scan algorithm, which runs in O(log(n)) time. + + We can improve upon this algorithm by doing scan in two steps: 1) parallel reduction, and 2) calculation of partial sums to finish the scan. The parallel reduction occurs as described above. The calculation of partial sums works as illustrated below: + + #### Compaction Compaction involves taking an array of values and returning an array filled with only the values that are "truthy". You can do this by performing the following steps: From aac19a4e6df2389e8fe30f9a21a2474ac8e46e4e Mon Sep 17 00:00:00 2001 From: ASHLEY LEE Date: Tue, 21 Sep 2021 19:51:38 -0400 Subject: [PATCH 22/25] Fix bugs, clean up code --- src/main.cpp | 19 +++++-------------- stream_compaction/efficient.cu | 15 ++++++--------- 2 files changed, 11 insertions(+), 23 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 6a11ff0..ff52316 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -13,8 +13,7 @@ #include #include "testing_helpers.hpp" -//const int SIZE = 1 << 8; // feel free to change the size of array -const int SIZE = 1 << 3; +const int SIZE = 1 << 8; const int NPOT = SIZE - 3; // Non-Power-Of-Two int *a = new int[SIZE]; int *b = new int[SIZE]; @@ -30,14 +29,6 @@ int main(int argc, char* argv[]) { genArray(SIZE - 1, a, 50); // Leave a 0 at the end to test that edge case a[SIZE - 1] = 0; - /*a[0] = 0; - a[1] = 1; - a[2] = 2; - a[3] = 3; - a[4] = 4; - a[5] = 5; - a[6] = 6; - a[7] = 7;*/ printArray(SIZE, a, true); // initialize b using StreamCompaction::CPU::scan you implement @@ -82,7 +73,7 @@ int main(int argc, char* argv[]) { printElapsedTime(StreamCompaction::Efficient::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); printArray(SIZE, c, true); printCmpResult(SIZE, b, c); - /* + zeroArray(SIZE, c); printDesc("work-efficient scan, non-power-of-two"); StreamCompaction::Efficient::scan(NPOT, c, a); @@ -90,13 +81,13 @@ int main(int argc, char* argv[]) { printArray(NPOT, c, true); printCmpResult(NPOT, b, c); - */zeroArray(SIZE, c); + zeroArray(SIZE, c); printDesc("thrust scan, power-of-two"); StreamCompaction::Thrust::scan(SIZE, c, a); printElapsedTime(StreamCompaction::Thrust::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); printArray(SIZE, c, true); printCmpResult(SIZE, b, c); - /* + zeroArray(SIZE, c); printDesc("thrust scan, non-power-of-two"); StreamCompaction::Thrust::scan(NPOT, c, a); @@ -154,7 +145,7 @@ int main(int argc, char* argv[]) { count = StreamCompaction::Efficient::compact(NPOT, c, a); printElapsedTime(StreamCompaction::Efficient::timer().getGpuElapsedTimeForPreviousOperation(), "(CUDA Measured)"); printArray(count, c, true); - printCmpLenResult(count, expectedNPOT, b, c);*/ + printCmpLenResult(count, expectedNPOT, b, c); system("pause"); // stop Win32 console from closing on exit delete[] a; diff --git a/stream_compaction/efficient.cu b/stream_compaction/efficient.cu index 385dc31..3b1c495 100644 --- a/stream_compaction/efficient.cu +++ b/stream_compaction/efficient.cu @@ -92,7 +92,7 @@ namespace StreamCompaction { * Performs prefix-sum (aka scan) on odata, storing the result into odata. * Both ptrs are device ptrs. This is a helper for compact() */ - void scanHelper(int n, int* odata) + int scanHelper(int n, int* odata) { int roundedN = pow(2, ilog2ceil(n)); // allocate memory @@ -109,6 +109,9 @@ namespace StreamCompaction { kernParallelReduction << > > (dev_data_scan, d); } + // save size of compact array from last elem of reduction + int compactSize; + cudaMemcpy(&compactSize, dev_data_scan + roundedN - 1, sizeof(int), cudaMemcpyDeviceToHost); // perform down-sweep bool firstLoop = false; @@ -123,6 +126,7 @@ namespace StreamCompaction { cudaMemcpy(odata, dev_data_scan, n * sizeof(int), cudaMemcpyDeviceToHost); cudaFree(dev_data_scan); + return compactSize; } /** @@ -147,14 +151,7 @@ namespace StreamCompaction { cudaMemcpy(odata, dev_bools, n * sizeof(int), cudaMemcpyDeviceToHost); - scanHelper(n, odata); - - - std::cout << "Scan res: [" << odata[0] << ", " << odata[1] << ", " << odata[2] << ", " << odata[3] << ", " - << odata[4] << ", " << odata[5] << ", " << odata[6] << ", " << odata[7] << ", " - << odata[8] << ", " << odata[9] << ", " << odata[10] << ", " << odata[11] << ", " << odata[12] << ", " << odata[13] << "]" << std::endl; - - int outSize = odata[n - 1]; + int outSize = scanHelper(n, odata); cudaMalloc((void**)&dev_compact_out, outSize * sizeof(int)); // perform scatter to fill final array From 398c81710a34904dfa9a2afe3d47a389d2245327 Mon Sep 17 00:00:00 2001 From: ASHLEY LEE Date: Tue, 21 Sep 2021 20:31:56 -0400 Subject: [PATCH 23/25] Speed up scans, finish project --- stream_compaction/efficient.cu | 33 ++++++++++++++++++++------------- stream_compaction/naive.cu | 13 ++++--------- 2 files changed, 24 insertions(+), 22 deletions(-) diff --git a/stream_compaction/efficient.cu b/stream_compaction/efficient.cu index 3b1c495..59fe197 100644 --- a/stream_compaction/efficient.cu +++ b/stream_compaction/efficient.cu @@ -20,25 +20,23 @@ namespace StreamCompaction { return timer; } - __global__ void kernParallelReduction(int *data, int d){ + __global__ void kernParallelReduction(int *data, int d, int powd, int powd1){ int k = (blockDim.x * blockIdx.x) + threadIdx.x; - // start index for each thread - int startIndex = pow(2, d) - 1; // offset the index - int index = startIndex + pow(2, d+1) * k; + int index = (powd - 1) + powd1 * k; int i1 = index; - int i2 = index + pow(2, d); + int i2 = index + powd; data[i2] += data[i1]; } - __global__ void kernDownSweep(int *data, int d, bool firstLoop){ + __global__ void kernDownSweep(int *data, int d, bool firstLoop, int powd, int powd1){ int index = (blockDim.x * blockIdx.x) + threadIdx.x; - int offset = index * (pow(2, d + 1) - 1); - int i1 = index + pow(2, d) - 1 + offset; - int i2 = index + pow(2, d + 1) - 1 + offset; + int offset = index * (powd1 - 1); + int i1 = index + powd - 1 + offset; + int i2 = index + powd1 - 1 + offset; // set last item to 0 on first loop if (firstLoop) { @@ -69,7 +67,9 @@ namespace StreamCompaction { numThreads = numThreads / 2; fullBlocksPerGrid = dim3((numThreads + blockSize - 1) / blockSize); - kernParallelReduction<<>>(dev_data_scan, d); + int powd = pow(2, d); + int powd1 = pow(2, d + 1); + kernParallelReduction<<>>(dev_data_scan, d, powd, powd1); } // perform down-sweep @@ -78,10 +78,13 @@ namespace StreamCompaction { fullBlocksPerGrid = dim3((numThreads + blockSize - 1) / blockSize); firstLoop = d == ilog2ceil(n) - 1; - kernDownSweep<<>>(dev_data_scan, d, firstLoop); + int powd = pow(2, d); + int powd1 = pow(2, d + 1); + kernDownSweep<<>>(dev_data_scan, d, firstLoop, powd, powd1); numThreads = numThreads * 2; } + timer().endGpuTimer(); cudaMemcpy(odata, dev_data_scan, n * sizeof(int), cudaMemcpyDeviceToHost); @@ -107,7 +110,9 @@ namespace StreamCompaction { numThreads = numThreads / 2; fullBlocksPerGrid = dim3((numThreads + blockSize - 1) / blockSize); - kernParallelReduction << > > (dev_data_scan, d); + int powd = pow(2, d); + int powd1 = pow(2, d + 1); + kernParallelReduction << > > (dev_data_scan, d, powd, powd1); } // save size of compact array from last elem of reduction int compactSize; @@ -119,7 +124,9 @@ namespace StreamCompaction { fullBlocksPerGrid = dim3((numThreads + blockSize - 1) / blockSize); firstLoop = d == ilog2ceil(n) - 1; - kernDownSweep << > > (dev_data_scan, d, firstLoop); + int powd = pow(2, d); + int powd1 = pow(2, d + 1); + kernDownSweep << > > (dev_data_scan, d, firstLoop, powd, powd1); numThreads = numThreads * 2; } diff --git a/stream_compaction/naive.cu b/stream_compaction/naive.cu index f3da09d..a1c0df1 100644 --- a/stream_compaction/naive.cu +++ b/stream_compaction/naive.cu @@ -18,9 +18,9 @@ namespace StreamCompaction { static PerformanceTimer timer; return timer; } - __global__ void kernScan(int n, int *odata, int *idata, int d){ + __global__ void kernScan(int n, int *odata, int *idata, int d, int powd_min1){ int index = (blockDim.x * blockIdx.x) + threadIdx.x; - int offset = pow(2, d - 1); + int offset = powd_min1; // if d == 1, shift array over to accomodate first 0 int outIndex = d == 1 ? index + 1 : index; @@ -57,13 +57,8 @@ namespace StreamCompaction { // for log iterations, perform scan for (int d = 1; d < ilog2ceil(n) + 1; d++){ - kernScan << > > (n, dev_data2, dev_data1, d); - - // FOR TESTING ONLY - /*cudaMemcpy(odata, dev_data2, n * sizeof(int), cudaMemcpyDeviceToHost); - std::cout << "Round: " << d << ", [" << odata[0] << ", " << odata[1] << ", " << odata[2] << ", " << odata[3] << ", " - << odata[4] << ", " << odata[5] << ", " << odata[6] << ", " << odata[7] << ", " - << odata[8] << ", " << odata[9] << "]" << std::endl;*/ + int powd_min1 = pow(2, d - 1); + kernScan << > > (n, dev_data2, dev_data1, d, powd_min1); // ping-pong int *tmp = dev_data1; From 447730a58b68dd274c0693bec376ef8405c1cef8 Mon Sep 17 00:00:00 2001 From: asalexan <80473081+asalexan@users.noreply.github.com> Date: Tue, 21 Sep 2021 21:19:56 -0400 Subject: [PATCH 24/25] Add files via upload --- img/arraySizeVPerformance2.png | Bin 0 -> 24565 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 img/arraySizeVPerformance2.png diff --git a/img/arraySizeVPerformance2.png b/img/arraySizeVPerformance2.png new file mode 100644 index 0000000000000000000000000000000000000000..0769dd85c7e67e2ca475afe582313de2df2e1127 GIT binary patch literal 24565 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 z

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 Date: Tue, 21 Sep 2021 22:36:28 -0400 Subject: [PATCH 25/25] Update README.md --- README.md | 119 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 117 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index b0a51b2..697aa04 100644 --- a/README.md +++ b/README.md @@ -35,8 +35,123 @@ Compaction involves taking an array of values and returning an array filled with ### Performance Analysis -![How Array Size Affects Performance](img/arraySizeVPerformance.png) +**Array Size vs. Scan Performance** + +Below I've charted how each of the scan algorithms perform side-by-side. The CPU algorithm should run in O(n) time, since it must read every element. The naive and work-efficient algorithms should both run in logarithmic time -- the graph mirrors that below. Note that, since the x-axis uses logarithmic scale, a logarithmic function will appear linear. + +![How Array Size Affects Performance](img/arraySizeVPerformance2.png) + +The work-efficient and naive algorithms perform better than the thrust implementation. I imagine this is due to two optimizations: + +1. For each loop iteration, I halve the number of threads used to call the kernel -- that way, only threads that will do meaningful work are spawned. For example, if there are 8 elements in an array, I spawn 4 threads during the first loop, 2 during the second, and 1 during the last. If we do the math, we see that much fewer threads are spawned: + + | Iteration | Threads (unoptimized) | Threads (optimized) | + | --------- | --------------------- | ------------------- | + | 1 | 8 | 4 | + | 2 | 8 | 2 | + | 3 | 8 | 1 | + | total | 24 | 7 | + +2. I pre-computed the `pow()` operations before calling the kernels, which more than halved the runtime. I show the major results in a later section. + +I'll also note that the work-efficient method is more predictable than the thrust method. As you can see from the chart, thrust runtimes are often unpredictable, and can, for example, run in 0.035ms OR 0.115ms given the same number of elements. I imagine the thrust method involves some sort of sort to move the "truthy" values to the front, which could explain the vastly different runtimes, since sort algorithms can have vastly different best and worst-case runtimes based on whether the array is already sorted. + +**Block Size vs. Scan Performance** + ![How Block Size Impacts Performance](img/blockSizeVPerformance.png) -### Future Work +I did not notice a significant change in runtime given different block sizes. I imagine this is due to the fact I am using global memory, instead of shared memory. If I was using shared memory, only one block could be used to run a kernel at a time, since all threads access the same shared memory. Therefore, the block size would change how elements it could process in parallel at once. However, since I utilize global memory, the threads don't depend on each other, so block size doesn't impact the performance. + +The block size 256 seems to optimize performance best. + +### Bottlenecks +There are a few bottlenecks I noticed, especially in the compaction algorithm. + +1. The major roadblock is memory I/O. I am using global memory, which is very slow, and I have to copy data from device to host and allocate a device array in the compaction algorithm. If I reworked the code so that it used shared memory and cut out the device pointer as a middleman, it would be much faster. +2. The threads are regularly accessing memory non-contiguously, leading to a lot of overhead time fetching data. +3. On the naive algorithm, there is a lot of branching in the kernel, meaning a number of threads are waiting for other threads to finish their execution. + +### Improving Scan Performance +I wanted to understand why my GPU scan implementations were running so horribly, so I decided to time the reduction and partial sum kernels in the work-efficient algorithm. On an input of 1^8, each kernel was taking about 0.05ms to run. In the interest of improving those times, I performed the `pow()` calculations outside of the kernel and passed them in as parameters, since I realized it was likely a costly operation that I only needed to perform once per kernel call. After removing the `pow()` operations, I more than halved the runtime for both kernels, improving the overall runtime so much that it now regularly outperforms the thrust implementation. I also made this change to my naive implementation, and saw similar gains. You can see some side-by-side comparisons below (tested on array size 1^8). + +| Function | Previous Runtime | Improved Runtime| +| -------- | ---------------- | ---------------- | +| Reduction (Up-Sweep) | 0.06 | 0.016| +| Partial Sums (Down-Sweep) | 0.058 | 0.017 | +| Work-Efficient Scan | 0.1157 | 0.035 | +| Naive Scan | 0.0563 | 0.0245 | + +You can see the huge change in made in performance by comparing the charted performance before the `pow()` removals and after. + +**Previous Scan Performance** + +![Previous Scan Performance](img/arraySizeVPerformance.png) + +**Scan Performance After Improvements** + +![Scan Performance After Improvements](img/arraySizeVPerformance2.png) + +### Sample Output + +```**************** +** SCAN TESTS ** +**************** + [ 31 2 26 37 46 20 20 8 38 37 28 41 20 ... 5 0 ] +==== cpu scan, power-of-two ==== + elapsed time: 0.0005ms (std::chrono Measured) + [ 0 31 33 59 96 142 162 182 190 228 265 293 334 ... 6434 6439 ] +==== cpu scan, non-power-of-two ==== + elapsed time: 0.0004ms (std::chrono Measured) + [ 0 31 33 59 96 142 162 182 190 228 265 293 334 ... 6357 6369 ] + passed +==== naive scan, power-of-two ==== + elapsed time: 0.018432ms (CUDA Measured) + [ 0 31 33 59 96 142 162 182 190 228 265 293 334 ... 6434 6439 ] + passed +==== naive scan, non-power-of-two ==== + elapsed time: 0.018432ms (CUDA Measured) + [ 0 31 33 59 96 142 162 182 190 228 265 293 334 ... 0 0 ] + passed +==== work-efficient scan, power-of-two ==== + elapsed time: 0.039936ms (CUDA Measured) + [ 0 31 33 59 96 142 162 182 190 228 265 293 334 ... 6434 6439 ] + passed +==== work-efficient scan, non-power-of-two ==== + elapsed time: 0.032768ms (CUDA Measured) + [ 0 31 33 59 96 142 162 182 190 228 265 293 334 ... 6357 6369 ] + passed +==== thrust scan, power-of-two ==== + elapsed time: 0.044224ms (CUDA Measured) + [ 0 31 33 59 96 142 162 182 190 228 265 293 334 ... 6434 6439 ] + passed +==== thrust scan, non-power-of-two ==== + elapsed time: 0.032032ms (CUDA Measured) + [ 0 31 33 59 96 142 162 182 190 228 265 293 334 ... 6357 6369 ] + passed + +***************************** +** STREAM COMPACTION TESTS ** +***************************** + [ 1 2 0 1 2 0 2 0 0 1 0 1 0 ... 3 0 ] +==== cpu compact without scan, power-of-two ==== + elapsed time: 0.0008ms (std::chrono Measured) + [ 1 2 1 2 2 1 1 1 2 3 2 1 2 ... 2 3 ] + passed +==== cpu compact without scan, non-power-of-two ==== + elapsed time: 0.0009ms (std::chrono Measured) + [ 1 2 1 2 2 1 1 1 2 3 2 1 2 ... 3 1 ] + passed +==== cpu compact with scan ==== + elapsed time: 0.0012ms (std::chrono Measured) + [ 1 2 1 2 2 1 1 1 2 3 2 1 2 ... 2 3 ] + passed +==== work-efficient compact, power-of-two ==== + elapsed time: 0.22016ms (CUDA Measured) + [ 1 2 1 2 2 1 1 1 2 3 2 1 2 ... 2 3 ] + passed +==== work-efficient compact, non-power-of-two ==== + elapsed time: 0.257024ms (CUDA Measured) + [ 1 2 1 2 2 1 1 1 2 3 2 1 2 ... 3 1 ] + passed +```

&5?+KnLSuGGs#9{EMJnqVw^RC*# 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 Date: Tue, 21 Sep 2021 00:53:11 -0400 Subject: [PATCH 21/25] Update README.md --- README.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index cfeb682..b0a51b2 100644 --- a/README.md +++ b/README.md @@ -13,13 +13,19 @@ This project involved practice writing parallel algorithms in Cuda, chiefly scan #### Parallel Reduction Parallel reduction is an algorithm by which you can add all of the numbers in an array, in parallel. You can achieve this by adding pairs of numbers, looping through the algorithm log(n) times, where n is the size of the array. -![Reduction Example](img/reduction_ex.JPG) +

TffN|{6*wW-NQ0XW18?2EgCuKVkAr7cQhxm zEv*O#Tj25>r@SvW=U(PqQ&Wf;mfz*2ZhI1vFF%_&U}mnLMIDNdTFJAjcK zW-l#M&SF`B9V!B|5Zw!|InVNgDU)oZR8cz1fy3;+`tbG4Q&c}>xiG+)oEzn9m`pj@ zJ(LcARZ(VjAn*%2tK%o2?8i0>94)pnfc~msv-e1U4ihne?TKO)e~-bpOjpcWCf?5h zs^6`Fm6NK?px!4)9lu+`;=Tr)1E4eU?*Yb<_-fKTv3z!tMva{PxTnlfVW?3TW`!sj zyYu$W$#2X=&4$1lVZk$Qh=RdGYkVn1w_|!8Y=)IUgj*ePLd|5}NZCRBwa;X;9Qd{XYCHo-N3yWe}7&h6?#dWj)q#vRl%P&poG{;QR8u@ z)DI(%MDl0QBdQc-5(o;KZ@~6A*7u93n+kX}-p}XuN9AdZW-hXcSs41<==z zzgdD7whwAg0l;{P#Tfu|VH6&+y#chKi8mQT}a zeDpr$IF0|qd8PYkkG#}==UmV^R>h(c=K+rv_C6>=)&y4t~)K(8A zE&Os6ue_kBi&u}=49x1HjA0#!ns zbO4wy1=#F+3fS8{65w#65&pBdS6CYNGH_%Oq=O}3@h@NqLiHx6I#0tvxJ(1wJ?Uj{)wu^X%RcKqI6!(k=x`xj5FoRGC zPCtX+R4!tOh5eO9lNeF2ju)xpMq7TZoVc$#VQs|*IkQhV)USR0QuN~n^fgf(HaA36 z`b{-Jrvttmul3&iF3LIZZ8M?NDG@&F>u-sHU};K*V>j5q8T`efrlk9z12Gr7 z6eHeA?n4u;4`pU!N6aW%0l?fnImGUzjA4e*k;o^`heAighU-=_kNg6q=&0x7F$5%ww{ZjU1VeRrF$2EdiSGBdxGKM`1dK&RdSw0IqV$p zb!qXz_u$Oyahd`_k7Jo@YIfdL-~HK}bn>}lGejU!zIzO!`WDGcL?KG%+2LJRP52lPJ!KAiMu;7-BIp*1Y{{9vfTL+iMz+$+*Lh&M<}KDt6Nf{ zqqWz&k<_?mHqZ0k&r??Cn6Q$~)(N{4C8*Lz6Y(Ki3574`rYan=)m@*;Z+LJ)#FMY* zd_DC3tY}hRs;^Nqyd1Wf1)~1ljnfBU;r0^tkN6R3AQX~JiiNQtr@?m881J2}B*pSm zI8jG`#l$EA_uht#WdR}s8S6dB^ntQBe;&&ZuOXsQg^kuLPl(Bnf2aV?gib7 zq?y(#emBlIR;ihbd?&VCEEs37V>S%|eBUox2v#bb>~i6b(_S`%9AwgGvD93BbmmJ= zz`#-SBsO#p$zmo&^RUKB;*4Bj)gzIkntXpX&tb5KYES2QLHir^M_S@d%)Iq1nr=Q4 zuj;(@7VacCP0l8oWJU28OaxZ?S7WhGN;2an}f*n18J;_zj z@8k6XU80BE_QV`ye$_hTgJ-dgA9D))Y>HH}A9bbM-`3Z%7KxL)G-qV3uR@i6hUIf1 zsJFU}b8h0I8>r>USIJYk@ceCaqSwgYnHaW#)brA(H15q+!7ovOC1Fl};#YDfGOj$fFNImTzy5v*&RRaxc%GEP=z4-YCGxUS>$p zYWx>u98S4=5Q^MjW1%GKAhM>||Ex7&YtW3&bSClYzgh zQDZe)2q&9ZjB#gDz!*)_1p~_*J9G(vr1W8pQ|x2 z!9LeU-#E2XSbuM~ELvH?#~qgDpKCs{A!zIBx*uut^Tm{>k$CA$v0$SQU{P05g^zo@lV5yUep2P4~Yq1E~-&C%J6pnycv+ zcvJsG+dK7)Bv|J|Hr))((nixY}cRNU@# zJj@TsC6?aM(-tL)w2_qdX&w&0Um2bi#t`)L;TSJaL=#BTIu?7(_&hASz8tP?}PuD4keAKwyK?OF%@VNbiJ1K|ra}l@^sIH6l%F z=v|QBOG57nH9&~}<+Go2o_&7jT<^#CgA#I)+-s048M{9ofUxtHa+mkwP@N- zCgn8c>O+?NS!d86Vu#g&HUrN8xpVHiG|l0z>zm zdj9jDPWdPc>wM0Qm#|U|X0J3zUUdGx9R2i5O&b=~qI?neGWcg}3PX9)tw-UmFD0py zx@jEFa7m?d@i5+LU)IU_%SSHt<|Ab_)zX&&Rr0;;AP>s`Kwwm13n09kaF*k<$TmzQ za;-L$9HbnuHU~Mp<8&?nyC079`v5B|_0tHXPTlgRPW-9Ip7 zHF@s>fXm}{x%Mu((DX;)DxuuOSO|@ev?<{UaUyH9*W(hZhVWUq4kc~LR0uDlyI5!- zW49$3yXVJKBv|vJKf$j0+SEy__Zx(ek4T$BdGQw?>%Z8%lNrblb`fUpiVqavSws4* z^HvF>Qp#t017PP7%?OV4iH7m5D2dk&h5mnSzlkKdngs3GLRv&)PtkayEACxC&XHe< za+t&wpqUaE%Usy)bq_}^=)9%ihV;c#A+KyUAGO`kkEC!4q!kXL(a#KCH2uSJJ zphtoxC$G?Le?TT#Lnj!yh6ADVei!T;%ii=231Wu`B!(ykR*Us}0Glog`m7xx)8p%c zK;S~dxX2@yBf(~DZ@v`&NIW%C(y3G-veV3Wc9JLm$J{_!K!9i=bwS*Q)TM~>q16dh z7v&CgkFezeoy@8b0g_=QO*Cl3xoC?C-+DRYpTE)HA_g<>lc7hJIaCD~rO_(hPm<=p zrt`^`7r`M|vb%NJ2Wt3{x4-P?t!;G`+#T;r1v9q`<6s}XEClft%{na8KGAb3CCE!Q z!SJ2}Q``<>9wA_D;;Rk8|T%$Y?o+sj@U)8y_l6CbaqrEw;f@vT%5*`NzlTY{Qscrj?_7zJj^LRD71QzlwCthvsVYB+J)TJg zvvde-iOOtAvFPJ>Cci0!&{=KV3P{+h|H%J*TT$>gML>2J{W5*6 zozzQUil`Gs3?~iOG2(|KB|_n%vHZzzwo5dbZRDp!tNEBp0^fh?aQ;|z3iDZo4xbLH zEA)1C7k&*Erl*{0{K#7pt8T~1PMzsyTui#ZUxcFY$^v9Y>M-d}b3Q~hou2lAZd2pN zom+eUoqB#9yVYYH&)^DpecOl@eNTs8HNn_E4|T^t41kI+B@THIAZ%lxK7O(6Xm@&C#tD@u4SI`o%ftQ^c;yozR=;AKnJfY zDT+rc1$9-{ZVOb*eQu7k;ydjJZzF02pvXuCs7Ch@1CQ_ei`Mv+T(_CT6LDWyqfSUM zTn0a9*Xts_RkX0Pxu}1I-ctCBZCW19;|~5*hF8jZVb_!*3=r52FbDv-Md(RB?0fY8^==OFNq@I1bPtCn$HEQY_L3zlz=8r8jFm?xAq5*x{i|OJ zZZ9?{O?)U^@cAoZGv-NxnSUx>U*>+R!-AE#@%5Yj9)bnFvvX{=&MT;B6;8rdOEkCI z*EKc_D=&Uys34f!_7$dOy=W_{lo=+?!O^*)`(ACTfdz%1z)iZ7?E4T`NTx&2Qte!n zG2?SVzAuZ_xl9uU7;cNJU(viEPs2a5j0#5rUMOf}L&khQPS-O)= z^jnhbp6`H>F=AV(P*rAjCA(1EILjCI6Y{R9Y5im*QvK=0zmlXD-D2akSJ!gdx8Slk zt&1(=0^o!4UP)D+t89TD?S^zMrXiHC8R!!DcmtV~43^i7(s}UYaI87cL=&02G^$Of zX`Z-P#8WoT=5PD{Ht*vc#@41Abu7iUi`nX6*#;71GZx3S}{W;6zKvO z!XFO}>5v`9$?(Y4YZ-g!4&9^getfuPwYcM_+HxlwnC$@&H7>$ljBo>aG+QtdD+$OC zU}C^`?A(3~9j~b5l&nyceK~2k&@+jvzP#0j`)nGQ^yT4U6i0`HP1pIn(!-_eB3?+| zB8OJgwvYp6{~SQ1ePZTf?iN5`5u*rV`nQ)e^!w!UJuu1d19jO0B zPQHhfU`VN`P~>C{ICt8$z2mDGa{~0_fEFOAD~Ii*t_I}cg`VFOJ>5DNe4OtSyu!V) zGt4Gg`)TkLp}HxwrE0gtydP8itF>q-(71v#|>PRULtVKflr7CS@q!s_F`pY=Ub> zbrzrBXUVz@@8}Thx4Y?&zPI%wC=~xOktZWxRVuf$|E0)Ac3lqWa}RBB4jr#}BLfLz z8~*+iJux|1CHb-WI={4nYU7Q&v3ZnBe09<=zmZ51J<-M&A6M_{qj7X{lcR3vW|#Vf zOOfzNcpj|~1w*Who1bCvyuqYhnx^#6H5`kf9#?Nn^$O>5!oI56mH0M^&J|scK_Q#& zgo>SV956&}ojFt#K^B1|`3o!Nv6RSm@0>F!EdetOZvK5SKR7k%k@Ja9E=Z?C&pW)U zM~*Bba#olA1wyr(@Z=|DL{bIRAf=|%wsq!WGSG)1Tm7M77fh9h6LN*sQ{1Wh4L+G7sYFAv)sw|aNwBUJ{ICvTA1tr&b9wkJ4O9G(5bpwImCB-p&mOEyoWL^x*j z)!AJ8r7=snaC*91%>z#MN)j{|UJ6zxmHC*#B>oipXk2Zfh&hp`>X#0AO8*9qbZ*raA zxH)N>Yt%pW;{EU8Q4u7{xvol2XXb`;qXV;%Ut)9z+!b-EjCHn~jUABQ-oMxl`&EQb z!pi7@{|wO8bBX!;GDzx^_n1xipPp_G?P@A(PJ{&vThH&vQ?EGrE zKXtqYci~325p%Jfiml|U)0TO8*4ZwG2L(`8{5}-S9kDAy{QV0^ zJLTwR2bWgwh?cvNCX8Ig5l;qZM13v38#s9O753(nZi?r-W2eLed|8#XH5I*UBUMjL z%2;<(xWD4$D|82rWMBpS=u<(i_lqXSb(l{}wmEBHRsJV_#!z)F^+xB&6#5n_I(&yZ zwKX(J}#!`d;_(Vgn)W%_9N5o37Xi1H%(`Y-a zk}Q#gm|@%bX+TrAS2L5Lzlat4)l@xr3qQ`38nV~kepo=?F0e4>uDiGfy|}R}`Ne#~ zq$}H8@u8C@<$UKw(ds7)NtX5Xr+FTt;eVZ)`%1-eWLW<+|E`b5Upo5k8*XOR7d4gI zo(kWaM2VsNL3iD|1LP?ZGx8ber=MU&8T*=UFxwTkcb+dg6tJPJ`f*&H!cTzR8imj> zjWacA;k9gTsT$Rd^IbT5EA~Oh9ii^?x3%53L$D58&S2BCCd7?z3byY`i8txt3kEh_ zSCnkHtlrO6y>}34gfhaJXK%*)=%@!aae)Bc!0Vyl$LHPtqGwQ(^%_b+?1 z9)mLUX1cg%gHN}U745*2xd$3jRgrlj9##Flxf6^T6It+qV*_M|FmU=zKyUjUnR%j< zq4vFp0+*kFv)b&?o+rNaUV38*<+E7l z{sWa+{{xk!oDbQ+XHFw`;{l&*=?AFY|JLo&{QieC*#8F0X#|5b_W~bV!~R0aC5zEX z)3zU2@6L$)xRp5bkMKDLeff^D>k{4bZ7p5&dXiHuWVHt5w+d41i37Q52f1>yET9nf z5qYlW%CRL$px>!R5vy~yRV=64KUZnL{KH2Lep?6nSGRCC+v*&^8DjZQsxZsCrJyfb z409-q@xb-4N7XAk?e#hr+xno*?9#%+y8C7^~61XibypdIqN|R0u!^1ww7y z{wk;hsSc2dpc*!xcMk`f$ULR1@GOJ$+8NS4*x=wZ7?7ifB z>4=Cu7DG@|V8*;a^T1YOUkQjswQmZJt9N-N%xF*bR)0mu)u6_=$nXtdvRw#RpD5jV@(6Ng$r&V!f3Cu< zL;--H&!DFK1cQeXX@)iqboxR6=O6O0#Rn?iHg3HS)Cma(*Ms(}`Ofq(BF6y)Brfoj z-y$mlwTjvXCBT;^Ye371#t=9B@XAVgaP`Ia}4^eKL7PRv7 zmcJ>)b^K(nZIKZ*hK;hQ@3w91FEgua34J5;WhWtc2YdbVR`&V&TQ_0*M*kz8|^ee1_g+ESX&_jhM@Jag~vC7tPmm4Y6i4 z%HMJ8obf~xd3dCwC5cLAH$K$V>3YfpFL1-r-w}pTg9C{|4(>bX5DYdJ0ga0$nj9dB zECE0fat)Nv9-e%HF6U1nXY~(&p?ltM3d8?g*S1i_Np0%ZNeYxi2VL})-N*_e_&1&A zie3kdaJIAki5R|u6n`iabe5%B=(h&*C2K^UM&Pb(qp zGl&85seYhLA?e^8M2w8fRWsHj`OznXcbqGKEXmb#KioJR+1FRDtx*9VrWx16k!;kj zJ?@e`2a0&eZMCUEWcuFW3jUyFrnCZ(i5193A+(yrzUy0^r3ZG9quFDxMMebnryq=T z6;%#BIU|M?(IHD3Dka~5mlU2pLC$jhK&T{M7U)cXJiOj46Y=(naQ3*MKJ;@tMr#(TJ(aW!k?>VURRz_kIr0r$-0t=+BoPNfW zk?gVEshb>!J_kV(Ph0y`vzRjJ#Y>GJ#5&BH>sOdma1|A8@B7yKe)--NW$EGSULqLPl!sISU<-ampgCC<>GpClmK6OPaZ9@%>zQ4k$UwKewcb4E=LrG-UPI)i4%{r|qG zhFcJNFqozcdbriJ2-7Ltj`H;Q@A}`GgE7VUVwWLvkG9#M>Ow}dQ~FBlGow{OoQ=1t%6EDm@^KwN3tf1)pKdF)QPRaks{7xH z&&=@G*c^F50s>_nv2Hh#UQ%hGdv%~&d75MNP~4#2@kl)ij{(XI>E9GGc}u@3sFQ;s zf4?z+)$b+K-((_Wkv}a$ceazr=fH(`@UR{2y2RFCm{y^Ry?*unLsl9;&xiG#eJ zh&M%UQdG~L85&T%E*>PvtZEmE2&SBDD5J?&tbdG98=likwR=(>u6f|LvFvlO4%Srx zp~jiL9d{yP5!QpTMD}WsnuyS2X_8$4T~qUsYjl&zo5wl}EniEAD_$tj&=o(t?eeq9 za@M2aOzjf+($dD`=tJ&8B>omyoMZB#7xFC$hbMlelFZ+|Hc>x;12L08>a$Vd_vxoH zD;K(xHJwu)9bZhx^hfXX*C~SfjNdBz=(xJVVgqTEbOZa({uJ?}TkV8#jq;o&O=r-wE zy#!sp3XMMG6c_GJuId7Ca~`u8@Q&>FhZ%P!#b#{enm$7?nI-+dpKKk0+M>s$TUeoE z=~oEaD5PEOv+bPfA2ySf4Q*r9&#S)4!EZ9$chIOYM}Y=7p$pF|%WV=3>j%2*bG2`2 zZBOi|bP>U$<}YdZkGR8R0nYik0~<~IBK>lruJnpYKw;d&GgK))!&3EL9UMh@bueZD z;qS3y<%q6?{sd8$%kBpDk~%~DAX9ki{XhHLhyLRsd=pZfd;P{W${J7Z6(3LwNect7 zkui^Wxq=2*#004?Pvh*QXE9-5`okaKqnp*{Xc{S=R=g=qPE5JHC^u)FboGYnnipAy z3wW6DGPLc^G&+Z?K!}Cdy}{k`^A?RP5(VZZVl|lv&X}tF*C9L+9BTPWFP8N~?r;Uc zXy69K$2f^M7FVI{Dol%(LUngu_WXvWinzlLsv#r4%Wo&VIWwoP)h*|^(K<=>As3fO+sN$;3N6fsf7vd@LDpj?5Wk?8oM&U9 z!RcqjT+#LuSAN`pq_Z!su=8cKGYJtdrc0gOg9M@I3sl&BtVHY7JvD2;ud?yl!e68O}6vJEbLqiwOy7(I@lmRtB>^TE(CSK>8tqjy&kN$&%Dh_?+DgDZY+yjofsZhv6w zjPv5lmz+nz><{VpwIKvEI2bSJcI2+-R6vW+r1b`jk=%jVR{GD|{*}n%L;+ukZjw&; zs&)?Z0veE00Jq9YKp@yKazgL3h;JF+6&zV@QW4g5?PD!6AnxJU1kF!%h*p=HA}3 z{YcQ^O(GKqXUoaTuHCM~=WXwL=je+*v5)ZwIJy+brP0JUGF=M+1uaddayV_xxVu`{ zS*gB4jBGLXhjDY5dLIPuT_r=Tl&F&7Qx;s}t?jy@1-Gx=lI0KDHs@y}EJ;5^67ZaJ z&C~oJNXo>(bJ1arns+bTfOC6_jn8cz8=-L{q=IkcDH5UAxu}K1hm&+S7HguzI;6WT zbi$(^q-z}XCm5EFY$99#_LA+=`bbg)nX0bo+B$=xp-d29dpbYj4zv*0Y=>n{VuxHoxch@6hwx)@0B z0i{==S)Jw`LSk*;mJkQV3JXGLZ83*5BsRUyY!sp>x4V z*;Yoj{OSUGwOb}97$nCZ`>O5PHvXn4{$AkM8?`Y=P3!&wc;B8IF`_`Q93c8&w1{>p z=P;EkLRmv!NtxB?Y8R0akjKo}EMxc)ve?wr@0VZJ`hozMb)!C$E6UF0T8mH4%(*r{ z*v@d$sR%ktAsxUIx~41Og+l7CywF?b5iB#FjT4mR(q#C6dpN;i0Eq!RXz#F z=PI~84k}T*B|)pkqWVOVSuY|X*)JR6X>1Q=hT1@w#Z&U$dG=DlwC}rJI}ZM?{s=Xt zEiWkL^^k^Z9z8Y9LU0P2(_)>0;TLcg#%9-qm;HEFJADnf2WP`DMa!3=?>zF;*vv|! z_B%Hi+?uX+e*aBzCq~JB z`TAKBx|QnqAnRkkMqeROlT3RUo)d|sOC3ZTQXDx8TclwZs-XAep}|}TmL(*kiXdPI z5g}E*p*daRtc$~UPw#I-u%5jm3{r(rwCH<1G=)C;Uwh)G6vBQ&vMpUl;V;kPT>ACi zlxaD(tf5S{F=0?vC1rfm!()RljZ1%}>5Pf$hJKW0Tq+uEIPOv7{_eu0NC=&Cioy4{ zuk8Cv)ZB5w{3xZlDmKNR!WFy=t66$I87)CH$LkmqREkstNKb8RFqKxybtpNk+7r9D zFTrH?SL2vw>4bvE>j6%%gvY@GQQaOneV$1mQNT6P^zoA#ol zsB!13%5E2T@@|@X1NB!pbs#r%KZf`^$5i!wGxhPGO&M6I$Ir8X&H_TR2n*VV4i`m%18U;HuG zPQj_zO66moshX#QTO?QC!_P5&Re?;WFB3Uic_;|z^%&VAGkOi#di!* z4hs=*B>#LcErIc@+>~4V{3Dsu$HI5YI_ie;R1eD&hFJAkN_|f;ji!g+P>%;U`N~Vn z@BQ%>)MfFD1u1qYNoP)i1JS2)C9eKA1yiCXgyDAmw8amb3)u)#?O8pwO&mm;$CPWG z;8A>3XBgkhJ~{u#Juq$znX)ZIz5+KOfU1UT9S7-(p@W@UQdR7QaDLw=tD`oG-tMMF z_r?g9X)C}W&n`ydG1!XG#et3=gAm>AEoYt1{&su`^RK)eP8@g|h`N*Kipyn8> zytE(MBtd6!u`;W#KohcG6F+q{^4T!$ZK#;BT8XW;zTx=n*TF4zOv5?3wo`Fb-10g7 zmIk-hy(1_*a<5BCvqm)B}7ow zml?LZeW(aZbfgLxHL(XPPFC=7zFQuyUNUrUeDw6r)w5CN`^~p!oH;0Ar>#>NL>!MU z>wk{U{%Yv;wT{Dk+qMB|h4V3}`4LX7-b?AZVOJD=_!)2^YQ_7`>nHfUEe&-QexE@w zB!*=*&!awy&7~wh?^U0v~mgg{iey+bB)R5kj?GbkUEJ<)$3$V+0DaL^OPz26iWMQbBnzbPh*dBS&~3OEq8=noBv z;72CPT|&d;!HT8@$KU>Ie+3=?2@HP&LdghlbS%g)^~?Qu|~@ z)}YJI;&qKfZngh7nf!R#`VYRb`yd?K#=hw=*ZU5%k$9pm+5`AhsKS^(4V$`nuJyC? zDDwPk@-juhircB^D&$)aD@jk6Ar=$up9mFIxgzF_<|hKLo7E<#x}0EJunco1nE|Lh z6F0IEh!M|TN;X5!y-8ic&9>6=bAP-sCpa(LRlzAG>v1SDNoFL`z!=Sg>kFc+4HhX>?CJ~E&cvB6wSlKMpxxykz;DKASryu3^p-Zhh>hy=3pL%#h@%(2Yqk|p~U(F zN}e6P1u%$)6;O+YAwvG1aq73}{PZqr#cc+d0r^F~-V)k5eQPUHt&)U-3Rp+6T zziLkkkri+u2OI3UTQH)gbM)9WurTGWPNg73m9PoTo4MSX`gLYiMHKEji1ySW0+ktU z0=g_e>4uiC^UhiA8y&POH4I7b(~4jD_Glc2Oi;f_1=eLt@6nj;rpEVM` zpz2jWf6B~_6WMi*pUXq#MATf=Q8`L-JV59Ox}ySRY5XwF^tEKNJURES_D<8S%@O0K z3Zh?n2i|-3NtN;zNeIb2xr*SgL@HZnW{bksw2rutu#Lnb1C;D9?KdvUi;6gTQPDx%FiPW3h z=;|qcHM`{U#VS8jC)nmhRyETc3qB{1X$6^ZlIdC#5&_ zm1qlJ0h)gKM#b*UmHDknG-OkH_Q#$nbK>BJ2{g=hnlIVJS;N!EcDdodDpXoBIaybr zViYo89fJn?>#h=y@m@^y9YU=Vp-C&B>=Q5e9-I$7pSdmBy6oPTJa#3c!T1gzhY)fo zU6wEsT0{9ovxpcrt9Aii+*;G6^Z_R~0+oieGpYlX29Mokrbvt(ido`q&7)`iaBkb{ ztaw%Au;qILaTRZ69=#j#bPBJ>0^9T(2bVHW3{`8|+gt=Msx)*OCsk@+&OONzPfbUL zy7%s)xQI>rNd(4^vytA9%lZm7a2I+n-ES4Qkf>XJ6UU$FmYaGta4HIUPw5Kq!)>@M zs=yQ~HatBnu6@QrjW5ZIEabGbe1_swod>b(Smwp}Fv__Ae(Rl#vcE>8(rYUA*!g=0 z_rA#+zveJ@k3}3RvE<-Q_XDeH29a1((vyglI{tEGNt@E_eeq}Pl>9W5g3egJg*c+i z!*k2H8#2W=d}=Q2MeDE3!wr}s-MOl=RCsz9UWi>EEX#OY0e$dz1Q9yQ4l1yv8y{+@VL&*f|#U2aVW`B4ntziuxQ3S9L7QTCw|1}o=@ss9%dhI>> zb*fLRSLyLr5JheIe^K>nTcfEh(91_d@}i*+(bM9j)GHj$@lN2X<>!&IvY7%ZZ77F?#y$ z3^U)IR~gG9ABeuQ=6u+tke6`z%ugzR%_uFn>~zl{R1cIXIvQVPWO?(uC##qK+^K0~ z5BWC8^0nz<(aFS)Z3Bj-?h-K?%l5Xn1*~(NUn<^|teQAle(0C-mOm?5HC3E+r~41t z5r5>2m2E*Wkqq%itA3_uB`n7)hQ-HXr}d!c+GiSPEu&Q#GKM(xhX96Uzgl;mScuPQ zMxKS=M@W!(yKmtW12nZFE?!pEUb;dFI27V9caFm(3LBM>V0+&;EDZPlrcj{g0X1q! zkIPE7iE(S}n9jPnkHjzyLA*Q2g>@lyJSTBTp#O^oy0`aWrms~UiC_)?KB=Ys^u$K` z(I)~MfKr+GJDi&_+}O43RPi{8!_4~-qmV1xkP~iiRW>FCIY)hv0|^`^q%Qivn`Ao( zKI-mw^-{EuZ;sRa^adzf6ba~b=wsF}CoK*cy1B2}JBR(xUq>qoCk!nV1{YK$4e+18 z8?mj$Qp) zKD9RJ#TtDA+6);Ap<|xw{}5j{$Y_0`EmiV)t92+Eg3$iZFph{J!tfbQDEeL0ce~vE z$h)2pM@)>XXt#X*TKNr~&QB-m@;7T|VU#}J*v)sWq1e&WFK!HI%*d2rykove=~&(X z`?%w(^(f|Y{0xQ{52KuE^^Ov0-TGi~lrJ*r&JBuL!)^?Z3RMf?)D;|tj@b%VeI9+O zxFTsEEs~&W75QBp>Mf)j0ZF1pr1sXz0^-Nq=aK%Sn-2`)$}stmi)r&e9*xk73QEa_ z9}g@KERU$d)9{eF?&+(4g8u)>k{mQxO1@Vq;*S?9g#RSW&E8jmzVRt(d}id6*DTT^ z`f}kUzjHzV!{2Prpf$}xgBj{IghyOS{R+{aK*9OnRL<8nK;-}&p_mjoI;r@2^{Go~ zvCOpeSxgJhv_m^FB1N%ffjuF{Hnz%7FK<72h4nW@8bXNUSd4_aSjXSC;!i4adJr%G zqepcA&f(uGjQmKqO#MU!uPx z)5@&>qSR7$UD42CNz1iQR8Wo|kIGT<8ZK{tmTYHq^=g#*Q=e0T8Eir?HjR^gHgI-1 zo>4N?X&{VKCsafrU%<|*&pL;y3nYbLEhU^&rF_3KO~>Q!a&gB5EUk`mjO`gVMTboD5FIkk ziQEsDsvGe1n)MxF%-E7#r%`<3QaM*C^m$L_+pg4G;nA|6#w1BHOdj#JfvAP|zfCmH zrgUQ6GN{zu&tEi?_P)-(^vrU9)iqHlY@dt4vVU(yLje~Vo!as=4`*LBls4b{vF;Y4 z_sF~XHe4N>Z7$KmTCe0y`=Ng!ZnGfEm+=SZGsulut_bT8;=SYB_6inxD(s}^Y6G6t zhOGD*GkD%VSEL&uz1qyR zPRcKLPmVWrq~cB6KrVG~D~TIo1nNTDP^lgw>|$_p%~I%iq;mxg{)vS{X0`MfOB02f zJUVC-+J}634Z5<(w2)H)vf97kD#YqJra+T*B!h}n8=qaDmFP`qvW~cT*u6QahBg|` zx#I%4#;$@%Q>|l5A7{Oi7{Q9#V&kU?>{1WE8~5Zr2?Tk(^4S%0qG+9u@1TxR=YI2{$EcEV|(*vaM>Am_m48+Z-1oQ1nr*URWM>OXc0= zJ)`O+u}LYFAo0$XJeYagisqL!p)usg=vhoCLY%mTRwJr9jE$-dvWWBTUdu6!TsC&hR9HM_3k*q86e#GE*U18yX) z3BuxWFUOv6DC-h(%e(K|PT?eoFb|RMXdCu06%1fFdEXaPB-Odin;p`A!`YDYVMlyU!n|tV~u4@z= z^YXojm1k+FsNeok84k&`s#9N6}UCa?2DqA$KWdflhq=E>< zH!9;5WU4lx1IcCDaK;Zn2y6MsStTUNuU3eBUV;i}nrcC@Y?cd3dH}({_JNRtH$;Gw z3Kq0PU!R<-19`U!$gE!ja~1?K=-6QSV4D5M0EzzGxQk3qG11^3<4}z=A(x+3n8aU>oUTRw9O}Fs@%3YSlvICEg`BACj_fz~BTw>qxO^N8 z#(XQ((TNo*daoGqbLB_Ff$YYd+`%ff$3IU7&=I)no`bu?*716cH3GtV3yI%{1W9Py zFG>^S%OhA6>1Y*0WC8*)o@~hY64t{q>84oOqAX)=$9#EYZwIDdF}RAFdIEX=n%^3!U^>2~MsJ z^16PWy&G{VMc?kRn_185>O{Uo_t9JO2*?w+q4RvbCkh~6Z(AumhQS3a?}>kT5_P8x zJS5vf%o&n2(bFBvePMN}@kpseD|=j>KiY~)vE+VcqJWgTN?AX$vGC8Mx|UUs|X5`J-(u8!@tF(E$jkLvZ#xpPoT!#FKFf8 z%0Se5s!4*@*Vp(IrARPrDMNo#0NaOKOpQn_wSWI=zC{w=3PJ5&Uq%rnK*X5yKsFZr zKlerXJ7zv<8qA#35%XlNlZ{x4o6U9fELbWB|ELm7Txfn z8;3a$Iue)kKX&{eUorNlJXA4EGq(P1ThCJ4iuYacDZXoqmJuH@6_Z;w!G?JS-wwEWC}0< z>dS*#VWn+v6M+>{S}F9*Xy+qc8alJ6vyW!guXCKa3oM5zQ-k&^LOsw7L>={@d%yIi z`+LT`zVI3a)3A#_k%ZZ@#*oM?@qfBuw-rq|BruxovN@LY3B>dGZ2 zhp~E_()_=C!iMDayvCOn;Qr}Px6Q^w3={r3YRc6btWFY0*cehoWy74l^8&W;0gxv$ z5zrr1l;ErbaO7En?VF{rrWP+si|bF{tNlUX29~O0mq5`oHSmV^Bnyz{5UtTbJNByy z37(PlCvuwwr!xE=9JvwUxs1JLi67E8F-m~~4!;2k?UiOYxYejh6W)o#9Ubd?9La2C zn0KSbSeNvoaWoN}%{)(GN*V_*rPi;`^*G;9abXF+*m}mrwI6dwWya<=g)*Se>RRAe z!2R^ZqL0{}FZ5`O((Ukbcooq=Mr+mm`^{WZ4B-_DkYw@y&T zwjtz(if;1GuyIny*MfWC$?0U}wsL7{i@SBPBw|{CFop_;8dt=QyxE&TGtDT^AFw{U zU{LW!$^Y%?S1n2Wwlq|QmdGY!IGFM2CMYtM#2+IokXzbBa;lFgxdzx4j+xHXCp-3^ zEqZGFUM}%GyGWoc1=uYQU5CV)6RF6-g?wOUTY_a@q^tV|O21hna?2@aol7Kn!8ltd zq}xF^-bPQ>PF+#ifK;{aBD7yZw2t2Ub0`q2xY3CSe)#hg9Omtnfj!0WNJ!)Rt{CT2 zz7-dQ0h#-iSLTg}o|jOr66yz#FPr;NfE#pnI0gjY8%V;XaQqT>JG%j!#(QlJViok8 z;%$*o?%tS}b-d-OKiEoRp|3oxW;iAN<}4uYsb-^J?>_W^Fd5t5+V69FSblfAU9EeQ zY}>t5c|`e&q9}uWxd|KMW<3b#V-6&7!FvW@M4|*s{eK@1*;tLIIiWXEBU3c|rfAkh zv~inMK2Wdhx%hHxOJZ9NN(62c-0(sjuu3KYX{~-ObU&L2Ln5i;YB#>7KZx%65v<34 zka}vJYeP3RE|6l)Jc%TNp4gIAucUheFJ%Zah9P$xPTi}? z4dpDS?vZj$o;asDJ`{Ot!`nKVTPZu8vCRHS*3YvV8rv`%Sn>W0Nt`Lzw}IdVqEiq( zk_^1F%pi2dD57Sm4v8JiY(gh-V0NY+Lg6!qole4;yI62`l~-P1w;g?RPbnsljfU$Q z`Y*7$JR$0z`~>6a6!Q4;!J5tC%j;Ecxgux*vh6Gf@)F^>^f?A|E-~Pmo!?`QPzxZ? zm=b9SB6kBWHrEOMnt#L=h`mYgnLMrCuX;>W$@si{hYM_z#ZdeWq@`_59kOpre;Pjg zmR6IdDzc2|Neq5Q<15ATE@b=Bv+cHpo;%Pd(PNLX50{feA-g-EW3>;=fn0p1_57e5 zNIX&G)>u6!XXSQwOO@NH>P?ko=di4(bk=zLfmnE_j;Z3fi7~qU07Enb zyP*@S?}Mox3OvTY(wcGPFxf!mmCs<|C*? zEjI;L;F%A%&{1^)h#nLpTx3?up;U z7cC=cn_?kvNSBk7NTRT?^lSZP=lm9RR7C8yW?h{~R`ZAWXBJ@@3lY{_bI!vMd@-4a z@-@z!FZu`phIlyOm9R;Oe;)ErII|$S{^yWyJf7=y6@%sm$NM!&!r#pkbAC19)S5QQ z0{u|D0uxz0iOj0gH2vSd)&aQqKffW4%;Ar1v-|fY1oe`8J0(bV$XO9muYVm8jqlY8 z-C#pp>(`eqeOVLSq0(8Pvtl%ZudM^9;MY(#>ex|aCvN`@o-q`^)|`xp{#3JddSAq? z728ztp}#YfTK~2g@5bQBsKc=o{ECf%f*I-cZwiUHZ9l@!$SX5nN^aT+rV5Wqn`G=PhutusokNhQ!{M)*z(C%^96%`+C zJM_Kw7MvW0Mb!wd%Jb&4*kvaJhfSrVS#~_=&}DU~s6s`_C>9E@UU7Dq?>!#7r84h( zDMD3Wo%)_E|IRCsH7243SZFcJ4g;92?U8tZ*(BirvVVF4!YT*!UwBZOt&!=7dJ;MN z?9T*x8JP|X%iqZBG~887d2dNX3pEt5(gm}eo>1>}8bQXaf_qD5M*bSf1_)vy6Utq8 zexG2Ff;w6k>BRhf5&yAw>Lkm6W<%H6-jMN%cQW*}R&`~!>YhZpi@u_Dx*Az$@RX^u z*-i0i$5^-CrtEoct6ueh4cXSoy4lP+ut|r-B$CHSq*{Ku{dhoYu%OKU+D&CCoMOIa zg7MX4A;zc(IbpTa5c_^K^GOTu8bgne&gXor}m(pj3DQ}W_O@mgya$Loyn z*pk%86?tIyC6?FA!61?Ruf!7a5BE=sf8~(S<4988)RVg36wx4LPdYDXIoYYrMduP^ z*HeB|@N)Z;F;_tg!}GdQbSyxgGlvvwGkb?@WOB-cl7J ze&4f=NkCTWf>j&If5|l+n(ZKMJhU#uEx2VmByb+o19rNXh`MKV=0+Ja@nBJen1gNE zK)|>6S!=qSIb1&e?A0AxdUmT15tUKb-uf)qn6d6KDZW~gE9yRDDtb5mFkY{Js}k!9 zVb$xjZw$;5PT)^j2&-0iI)L88^!|`B3?(rTi$ID|qbxVXXLPgndZNhuZGE#FiURsd zkrPHY);s;5);3m3vitt}y7FX-XIl3oc85V!@`J5U2mIvna^E6`0}498GRO@{kfU?( z;$t4y0tcThTXt~Y68502I)?%Xpk4oF(?$-0i6YuC+ib&_wSMRchdBsXF;6hf7`_w% z(6HC#d>D!XW+1gL*XqB79fInGgk^oksT$}Ux;elWI~`=@{)u08dw;8IN`Xy3@=}SF z8>3FAa)|#(iBX4Axxw}nwQ)MX-6`7_Zf9nhKFO1=RSrF-misH@s;0Wd%++BqAn$bL zje_l5Gm-PzKT$`N(3Nv70kp@`$PVtlwv(Fx+xNc{S;CB~ku@A=_D{tDF~+3fFI0&v zDP{vgu9^n@^Y;^W*_{trdP&I7csN*x1wyFE4dAT(r>WU58KQg+aLAxKu6w8JgsNX; zRx`ZZz(!^z-cEZ+_3DgkqOkO@AiN{_O;j9y~OZNW0{r&b=*Gp|H$<6!GsWib&7jk3{ z_qry^|B?waHeT%AhZS2ES=sVr{B4TM)|AVNt)4!Dru+}q&P#5!LY?tp_83WTaSS!f zwJVz#*Tp1Ec$n98S$Gd9f6^Agp4l|F7roMm3Sd z2?(kA+VFMtT*+zn@+r1vltDaUDba41X5tQJ#A+R9P;xD5ja7^DwEloD-aAO2Nmc~+LB2bj1m@RaJ4Y(hc=t0&D<#VadCm8@nLZz6*Ho^zk*Qnp3ljLzk`P#y8X=3XKzugT7E9xd6 z?lbt9ylVr3Xtq+v#V|9do?+~pTGdjnmlCF<`upt_D?6??j%caMTQ;}I_>O9X>1eoU zm~CIuk03qxOfPjq3OTwOc+gU&QIXs!E_TxKB%L_B9BaJ09Cj~nMH1R@duSUBbgapXbhCVEw<3^qPL4}5L_YY~ttph4SC z_$8Sq&vuMbYSWhqG--#$ZES~Tx|hB`_y&p&h8!72eE;kxf|9SP(T&raofPA2-G6Vk z^=!ICvA>?k^Pt>mf5&HiZ5clM(jR+A?st85Fgy9VT*?$;Ha_~svEh=TLLl~D*wfzk zH)ReQR(SRuyt5hKwtb`V?q<{i!EINrzHKDQ@AL~-&#@p0Lk%09aK~u1=2{+*~n!k_}*3EvCtA^rDc`mqR_zqkTJqJM+$T+-hXx zyJ+kQczz&6FVcKLDK=aXWV1O_Rk1(zau%SgK~O0xfaFB=PbqI48pS99p3cBu!H zdMe9_#o{H6C6E`(rtqK~GQNt?X!}-QV<1q0Xu5r~_alLhd{_P)M5%0#=r(J`6O;QZ z74dfQ6XUoY6??Q!)LyXMYvtBu7j4(2Nx_d)s;$P24!4nGCq4lhrILI|{5$|9$D(J4 z>{WP&LyJEN;@yhxjcT!4;6WkH{bnr6&iPY9d{K zE7`=G$;jbS(x{#w*)UX#0@Bgk0aN*RkFS5EP5gfqF7iAEsBj?cCRr5=15^H6fnW|vtU0@zRP2GI{*cdieX z`|?&MIUvldzw%w+D{E*}NoDUa<}>dXT@EX`btf z7OdQAZPxH5)cu?cWvx2(xNrh&BTfx)vnmf+8VJtSgV+cV zVYC+ZPR^9>n6Iz;5l@!M?@+6mVaI%6EK%G;TJFPsh&|TK2NKHtq%?oJj!p@`iQ9Iyo6Q$7pV0mB zo7a6+6QMZU$gu)JlVfAu^WGEMMUii3Fz&Yg(o=X7nPkhS7=g3a@g8T3d*UlfKu+O* zV-Ns7aCTs!Pk~71%RyL1JZy}MLeGf-k^QRY6Dps^4O=0xmkB=*M%KTQ$1GJCD$R2( z=rQ1QUFHhp{3%X1DD(ExW!lt@^5_S`T`fkaezbcg7(KkPx*#NY;uzeF0=l0a3!;Vyzy!3 z?1PFJ+R{ElVGCW0rKMFcLfi{2UI;h_+On~sdA>0}5N~_PY;)PbH4gY4Ev7Hv znzPWgahI-3CsGxabPUJ2I>W5)9W%#812O~~yAKip�~Z@XT^R~<`ci#h=KZu)dCb_w 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 literal 0 HcmV?d00001 diff --git a/img/reduction_ex.JPG b/img/reduction_ex.JPG new file mode 100644 index 0000000000000000000000000000000000000000..5d6e9b4025f63346840989ea7ac137cd7518a172 GIT binary patch literal 45421 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 p@1y==V(Q=V=YH=REdK$R_ Date: Mon, 20 Sep 2021 22:57:04 -0400 Subject: [PATCH 18/25] Update README.md --- README.md | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 68be4f6..cfeb682 100644 --- a/README.md +++ b/README.md @@ -8,11 +8,29 @@ CUDA Stream Compaction * Tested on: Windows 10, i7-6700 @ 3.40GHz 16GB, Quadro P1000 (Moore 100A Lab) ### Project Description +This project involved practice writing parallel algorithms in Cuda, chiefly scan, reduction, and compaction. For comparison, I wrote algorithms on the CPU, as well as naive and work-efficient methods that leverage the GPU. + +#### Parallel Reduction +Parallel reduction is an algorithm by which you can add all of the numbers in an array, in parallel. You can achieve this by adding pairs of numbers, looping through the algorithm log(n) times, where n is the size of the array. + +![Reduction Example](img/reduction_ex.JPG) + +#### Scan (Prefix Sums) +A scan of an array produces an array where each element represents a sum of the elements that came before it. This algorithm involves adding numbers based on a logarithmic offset, as illustrated below. The last element in the array will represent the reduction. Below is an illustration of a naive parallel scan algorithm, which runs in O(log(n)) time. + +We can improve upon this algorithm by doing scan in two steps: 1) parallel reduction, and 2) calculation of partial sums to finish the scan. The parallel reduction occurs as described above. The calculation of partial sums works as illustrated below: + +#### Compaction +Compaction involves taking an array of values and returning an array filled with only the values that are "truthy". You can do this by performing the following steps: + +1. Convert all "truthy" values to 1s and all others to 0s +2. Perform scan on the resulting array. The result of scan should give you the desired indices in the output compact array for all true values +3. Use the indices to write the true values to a compact array ### Performance Analysis -![How Array Size Affects Performance](img/How Array Size Affects Performance.png) -![How Block Size Impacts Performance](img/How Block Size Impacts Performance.png) +![How Array Size Affects Performance](img/arraySizeVPerformance.png) +![How Block Size Impacts Performance](img/blockSizeVPerformance.png) ### Future Work From e9dec569b26e1fd189ed6b49b9c8e05a9cee439e Mon Sep 17 00:00:00 2001 From: asalexan <80473081+asalexan@users.noreply.github.com> Date: Tue, 21 Sep 2021 00:14:24 -0400 Subject: [PATCH 19/25] Add files via upload --- img/reduction_ex2.png | Bin 0 -> 116823 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 img/reduction_ex2.png diff --git a/img/reduction_ex2.png b/img/reduction_ex2.png new file mode 100644 index 0000000000000000000000000000000000000000..af173bce886b6d04dfcccf6e28f3cefaaa7ca034 GIT binary patch literal 116823 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