From a51d495b41c4e52ac3c4b12c2817ccfe61b452bd Mon Sep 17 00:00:00 2001 From: Layton Miller Date: Fri, 6 Sep 2024 23:15:10 -0700 Subject: [PATCH 01/10] Progress for Chris --- Cargo.lock | 135 +++++++++-- Cargo.toml | 2 + README.md | 12 +- pyproject.toml | 2 +- src/bin/airy_renderer.rs | 441 +++++++++++++++++++++++++++++++++++ src/bin/gaussian_renderer.rs | 229 ++++++++++++++++++ 6 files changed, 800 insertions(+), 21 deletions(-) create mode 100644 src/bin/airy_renderer.rs create mode 100644 src/bin/gaussian_renderer.rs diff --git a/Cargo.lock b/Cargo.lock index 1fb22ea..e80c67a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -75,6 +75,15 @@ version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da" +[[package]] +name = "approx" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6" +dependencies = [ + "num-traits", +] + [[package]] name = "arbitrary" version = "1.3.2" @@ -159,9 +168,9 @@ checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" [[package]] name = "bytemuck" -version = "1.17.0" +version = "1.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fd4c6dcc3b0aea2f5c0b4b82c2b15fe39ddbc76041a310848f4706edf76bb31" +checksum = "773d90827bc3feecfb67fab12e24de0749aad83c74b9504ecde46237b5cd24e2" [[package]] name = "byteorder" @@ -177,9 +186,9 @@ checksum = "8f1fe948ff07f4bd06c30984e69f5b4899c516a3ef74f34df92a2df2ab535495" [[package]] name = "cc" -version = "1.1.15" +version = "1.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57b6a275aa2903740dc87da01c62040406b8812552e97129a63ea8850a17c6e6" +checksum = "e9d013ecb737093c0e86b151a7b837993cf9ec6c502946cfb44bedc392421e0b" dependencies = [ "jobserver", "libc", @@ -204,9 +213,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "clap" -version = "4.5.16" +version = "4.5.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed6719fffa43d0d87e5fd8caeab59be1554fb028cd30edc88fc4369b17971019" +checksum = "3e5a21b8495e732f1b3c364c9949b201ca7bae518c502c80256c96ad79eaf6ac" dependencies = [ "clap_builder", "clap_derive", @@ -214,9 +223,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.15" +version = "4.5.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "216aec2b177652e3846684cbfe25c9964d18ec45234f0f5da5157b207ed1aab6" +checksum = "8cf2dd12af7a047ad9d6da2b6b249759a22a7abc0f474c1dae1777afa4b21a73" dependencies = [ "anstream", "anstyle", @@ -455,9 +464,9 @@ checksum = "44feda355f4159a7c757171a77de25daf6411e217b4cabd03bd6650690468126" [[package]] name = "indexmap" -version = "2.4.0" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93ead53efc7ea8ed3cfb0c79fc8023fbb782a5432b52830b6518941cebe6505c" +checksum = "68b900aa2f7301e21c36462b170ee99994de34dff39a4a6a528e80e7376d07e5" dependencies = [ "equivalent", "hashbrown", @@ -558,6 +567,16 @@ dependencies = [ "imgref", ] +[[package]] +name = "matrixmultiply" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9380b911e3e96d10c1f415da0876389aaf1b56759054eeb0de7df940c456ba1a" +dependencies = [ + "autocfg", + "rawpointer", +] + [[package]] name = "maybe-rayon" version = "0.1.1" @@ -598,6 +617,33 @@ dependencies = [ "adler2", ] +[[package]] +name = "nalgebra" +version = "0.33.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c4b5f057b303842cf3262c27e465f4c303572e7f6b0648f60e16248ac3397f4" +dependencies = [ + "approx", + "matrixmultiply", + "nalgebra-macros", + "num-complex", + "num-rational", + "num-traits", + "simba", + "typenum", +] + +[[package]] +name = "nalgebra-macros" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "254a5372af8fc138e36684761d3c0cdb758a4410e938babcff1c860ce14ddbfc" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "new_debug_unreachable" version = "1.0.6" @@ -630,6 +676,15 @@ dependencies = [ "num-traits", ] +[[package]] +name = "num-complex" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" +dependencies = [ + "num-traits", +] + [[package]] name = "num-derive" version = "0.4.2" @@ -841,6 +896,12 @@ dependencies = [ "rgb", ] +[[package]] +name = "rawpointer" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" + [[package]] name = "rayon" version = "1.10.0" @@ -863,9 +924,9 @@ dependencies = [ [[package]] name = "rgb" -version = "0.8.48" +version = "0.8.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f86ae463694029097b846d8f99fd5536740602ae00022c0c50c5600720b2f71" +checksum = "57397d16646700483b67d2dd6511d79318f9d057fdbd21a4066aeac8b41d310a" dependencies = [ "bytemuck", ] @@ -876,6 +937,15 @@ version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" +[[package]] +name = "safe_arch" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3460605018fdc9612bce72735cba0d27efbcd9904780d44c7e3a9948f96148a" +dependencies = [ + "bytemuck", +] + [[package]] name = "scopeguard" version = "1.2.0" @@ -917,6 +987,19 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" +[[package]] +name = "simba" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3a386a501cd104797982c15ae17aafe8b9261315b5d07e3ec803f2ea26be0fa" +dependencies = [ + "approx", + "num-complex", + "num-traits", + "paste", + "wide", +] + [[package]] name = "simd-adler32" version = "0.3.7" @@ -938,6 +1021,12 @@ version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +[[package]] +name = "spec_math" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1b214a4d084b0d4995f4237f681d6018f76c0aaeee52627d521667a29c15cab" + [[package]] name = "spin" version = "0.9.8" @@ -955,9 +1044,9 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "syn" -version = "2.0.76" +version = "2.0.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "578e081a14e0cefc3279b0472138c513f37b41a08d5a3cca9b6e4e8ceb6cd525" +checksum = "9f35bcdf61fd8e7be6caf75f429fdca8beb3ed76584befb503b1569faee373ed" dependencies = [ "proc-macro2", "quote", @@ -1055,10 +1144,18 @@ dependencies = [ "clap", "csv", "image", + "nalgebra", "serde", + "spec_math", "thiserror", ] +[[package]] +name = "typenum" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" + [[package]] name = "unicode-ident" version = "1.0.12" @@ -1155,6 +1252,16 @@ version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082" +[[package]] +name = "wide" +version = "0.7.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b828f995bf1e9622031f8009f8481a85406ce1f4d4588ff746d872043e855690" +dependencies = [ + "bytemuck", + "safe_arch", +] + [[package]] name = "windows-sys" version = "0.52.0" diff --git a/Cargo.toml b/Cargo.toml index 54627e5..36cfa2a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -7,5 +7,7 @@ edition = "2021" clap = { version = "4.5.16", features = ["derive"] } csv = "1.3.0" image = "0.25.2" +nalgebra = "0.33.0" serde = { version = "1.0.209", features = ["derive"] } +spec_math = "0.1.5" thiserror = "1.0.63" diff --git a/README.md b/README.md index 6ebd2fd..47568e6 100644 --- a/README.md +++ b/README.md @@ -7,15 +7,15 @@ Download catalog.dat from there, put it in data/tycho2/ ├── Cargo.toml ├── README.md ├── data -│   └── tycho2 -│   ├── catalog.dat -│   ├── index.dat -│   ├── suppl_1.dat -│   └── suppl_2.dat +│ └── tycho2 +│ ├── catalog.dat +│ ├── index.dat +│ ├── suppl_1.dat +│ └── suppl_2.dat ├── poetry.lock ├── pyproject.toml ├── src -│   └── main.rs +│ └── main.rs ``` ``` diff --git a/pyproject.toml b/pyproject.toml index 35ea28b..c7766e2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -2,7 +2,7 @@ name = "starfinder" version = "0.1.0" description = "" -authors = ["Sulaiman Ghori "] +authors = ["Sulaiman Ghori ", "Layton Miller "] readme = "README.md" [tool.poetry.dependencies] diff --git a/src/bin/airy_renderer.rs b/src/bin/airy_renderer.rs new file mode 100644 index 0000000..6a0a69f --- /dev/null +++ b/src/bin/airy_renderer.rs @@ -0,0 +1,441 @@ +use std::f64::consts::PI; +use clap::Parser; +use csv::ReaderBuilder; +use image::{ImageBuffer, Rgb}; +use nalgebra::SMatrix; +use serde::{Deserialize, Serialize}; +use spec_math::cephes64::j1; +use std::fs::File; +use std::io; +use std::path::PathBuf; +use std::time::Instant; +use thiserror::Error; + +/// Represents a star with its right ascension, declination, and magnitude. +#[derive(Debug, Deserialize, Serialize, Clone)] +pub struct Star { + coords: EquatorialCoords, + mag: f64, +} + +#[derive(Debug, Deserialize, Serialize, Clone)] +pub struct EquatorialCoords { + ra_deg: f64, + dec_deg: f64, +} + +pub struct CartesianCoords { + x: f64, + y: f64, + z: f64, +} + +pub struct BoundsEquatorial { + max_ra: f64, + min_ra: f64, + max_dec: f64, + min_dec: f64, +} + +/// Errors that can occur during star catalog reading. +#[derive(Error, Debug)] +pub enum CatalogError { + #[error("IO error: {0}")] + Io(#[from] io::Error), + #[error("CSV parsing error: {0}")] + Csv(#[from] csv::Error), + #[error("Missing field: {0}")] + MissingField(String), + #[error("Parse error: {0}")] + Parse(String), + #[error("Missing magnitude")] + MissingMagnitude, +} + +/// CLI Arguments +#[derive(Parser, Debug)] +#[command(author, version, about, long_about = None)] +struct Args { + /// Path to the Tycho-2 catalog file + #[arg( + short, + long, + value_name = "FILE", + default_value = "data/tycho2/catalog.dat" + )] + file: PathBuf, + + /// Number of stars to display (0 for all) + #[arg(short, long, default_value_t = 10)] + display_count: usize, + + /// Right Ascension of camera view center point (degrees) + #[arg(long, default_value_t = 0.0)] + center_ra: f64, + + /// Declination of camera view center point (degrees) + #[arg(long, default_value_t = 360.0)] + center_dec: f64, + + /// Width of field of view. With 0 roll, corresponds to right ascension (degrees) + #[arg(long, default_value_t = 0.0)] + fov_w_deg: f64, + + /// Height of field of view. With 0 roll, corresponds to declination (degrees) + #[arg(long, default_value_t = 0.0)] + fov_h_deg: f64, + + /// Roll of the camera view (degrees) + #[arg(long, default_value_t = 0.0)] + roll_deg: f64, + + /// Maximum visual magnitude (lower is brighter) + #[arg(long, default_value_t = 1.0)] + max_magnitude: f64, + + /// B magnitude wavelength - only used if using airy disc rendering (nanometers) + #[arg(long, default_value_t = 442)] + lambda_b_nm: f64, + + /// V magnitude wavelength - only used if using airy disc rendering (nanometers) + #[arg(long, default_value_t = 540)] + lambda_v_nm: f64, + + /// Camera pixel size in meters (should be tiny, like e-6). Default is 3e-6, assuming higher + /// precision optics + #[arg(long, default_value_t = 3e-6)] + pixel_size_m: f64, + + /// Output image width in pixels + #[arg(long, default_value_t = 800)] + width: u32, + + /// Output image height in pixels + #[arg(long, default_value_t = 600)] + height: u32, + + /// Output image file name + #[arg(short, long, default_value = "star_map.png")] + output: String, +} + +pub fn to_cartesian(src: EquatorialCoords) -> CartesianCoords { + CartesianCoords { + x: src.dec_deg.cos() * src.ra_deg.cos(), + y: src.dec_deg.cos() * src.ra_deg.sin(), + z: src.dec_deg.sin(), + } +} + +pub fn to_equatorial(src: CartesianCoords) -> EquatorialCoords { + EquatorialCoords { + ra_deg: src.y.atan2(src.x), + dec_deg: src.z.asin(), + } +} + +pub fn fov_outer_bounds( + center_ra_deg: f64, + center_dec_deg: f64, + fov_w_deg: f64, + fov_h_deg: f64, + roll_deg: f64, +) -> BoundsEquatorial { + // Calculate FOV bounds in cartesian coords + let fov_w_half = fov_w_deg / 2.0; + let fov_h_half = fov_h_deg / 2.0; + + let fov: [CartesianCoords; 4] = [ + to_cartesian(EquatorialCoords { + ra_deg: center_ra_deg - fov_w_half, + dec_deg: center_dec_deg + fov_h_half, + }), + to_cartesian(EquatorialCoords { + ra_deg: center_ra_deg + fov_w_half, + dec_deg: center_dec_deg + fov_h_half, + }), + to_cartesian(EquatorialCoords { + ra_deg: center_ra_deg - fov_w_half, + dec_deg: center_dec_deg - fov_h_half, + }), + to_cartesian(EquatorialCoords { + ra_deg: center_ra_deg + fov_w_half, + dec_deg: center_dec_deg - fov_h_half, + }) + ]; + + // Generate roll matrix and apply roll to coordinates, resulting in rolled FOV corner points + let roll_matrix: SMatrix = SMatrix::new( + roll_deg.cos(), -roll_deg.sin(), 0.0, + roll_deg.sin(), roll_deg.cos(), 0.0, + 0.0, 0.0, 1.0, + ); + + let fov_rolled: [EquatorialCoords; 4] = fov + // Apply the roll matrix, giving new cartesian coords of rolled FOV (use unit sphere z of 1 + .map(|pt| -> SMatrix { roll_matrix * SMatrix::new(pt.x, pt.y, 1) }) + // Convert rolled coords back into equatorial + .map(|rolled| to_equatorial( + CartesianCoords { x: rolled[(0,0)], y: rolled[(1,0)], z: rolled[(2,0)]} + )); + + // Extract ra and dec values as sets to find min/max and return as Bounds + let rolled_ra_vals = fov_rolled.iter().map(|c| c.ra_deg); + let rolled_dec_vals = fov_rolled.iter().map(|c| c.dec_deg); + + BoundsEquatorial { + max_ra: rolled_ra_vals.iter().fold(f64::NEG_INFINITY, f64::max), + min_ra: rolled_ra_vals.iter().fold(f64::INFINITY, f64::min), + max_dec: rolled_dec_vals.iter().fold(f64::NEG_INFINITY, f64::max), + min_dec: rolled_dec_vals.iter().fold(f64::INFINITY, f64::min), + } +} + +/// Reads and filters stars from the Tycho-2 catalog file. +/// https://heasarc.gsfc.nasa.gov/w3browse/all/tycho2.html +/// http://tdc-www.harvard.edu/catalogs/tycho2.format.html +pub fn read_stars>( + path: P, + center_ra_deg: f64, + center_dec_deg: f64, + fov_w_deg: f64, + fov_h_deg: f64, + roll_deg: f64, + max_magnitude: f64, +) -> Result, CatalogError> { + let file = File::open(path)?; + let reader = io::BufReader::new(file); + let mut csv_reader = ReaderBuilder::new() + .delimiter(b'|') + .has_headers(false) + .from_reader(reader); + + let mut stars = Vec::new(); + let mut skipped_rows = 0; + // Define bounding box of FOV in case of roll. + let bound_min_ra: f64 = center_ra_deg - (fov_w_deg / 2.0); + let bound_max_ra: f64 = center_ra_deg + (fov_w_deg / 2.0); + let bound_min_dec: f64 = center_dec_deg - (fov_h_deg / 2.0); + let bound_max_dec: f64 = center_dec_deg + (fov_h_deg / 2.0); + + println!("bound_min_ra {}", bound_min_ra); + println!("bound_max_ra {}", bound_max_ra); + println!("bound_min_dec {}", bound_min_dec); + println!("bound_max_dec {}", bound_max_dec); + // Build bounding box based on camera roll - outer box containing rolled FOV + // Filter stars out of the outer bounding box before doing testing whether they fit inside the + // actual FOV + let bounds = fov_outer_bounds(center_ra_deg, center_dec_deg, fov_w_deg, fov_h_deg, roll_deg); + /* + for (i, result) in csv_reader.records().enumerate() { + let record = result?; + match parse_star_record(&record) { + Ok(star) => { + if star.ra_deg >= min_ra + && star.ra_deg <= max_ra + && star.de_deg >= min_dec + && star.de_deg <= max_dec + && star.mag <= max_magnitude + { + if i % 10000 == 0 { + println!( + "Star {}: RA={}, Dec={}, Mag={}", + i, star.ra_deg, star.de_deg, star.mag + ); + } + stars.push(star); + } + } + Err(e) => { + skipped_rows += 1; + if skipped_rows <= 10 { + println!("Skipping row {} due to error: {:?}", i, e); + println!("Problematic row: {:?}", record); + } else if skipped_rows == 11 { + println!("Further skipped rows will not be printed..."); + } + } + } + } + */ + println!("Total stars read and filtered: {}", stars.len()); + println!("Total rows skipped: {}", skipped_rows); + + Ok(stars) +} + +/// Parses a single record from the catalog into a Star struct. +fn parse_star_record(record: &csv::StringRecord) -> Result { + let ra = parse_field(record, 24, "RA")?; + let dec = parse_field(record, 25, "Dec")?; + let mag = parse_magnitude(record)?; + + Ok(Star { + coords: EquatorialCoords { + ra_deg: ra, + dec_deg: dec, + }, + mag, + }) +} + +/// Parses a field from the record, returning a helpful error if parsing fails. +fn parse_field( + record: &csv::StringRecord, + index: usize, + field_name: &str, +) -> Result { + record + .get(index) + .ok_or_else(|| CatalogError::MissingField(field_name.to_string()))? + .trim() + .parse() + .map_err(|_| CatalogError::Parse(format!("Failed to parse {}", field_name))) +} + +/// Airy disc radius - calculate physical radius, then convert to pixel scale +fn calc_airy_disc_radius(lambda: f64, aperture_diameter: f64, focal_length: f64, pixel_size_m: f64) -> f64 { + // Physical radius on the sensor in meters + let size = 1.22 * lambda * focal_length / aperture_diameter; + // Return radius in pixels + size / pixel_size_m +} + +/// Spatial frequency scaled as related to the diffraction pattern. Ooh! Ahh! +fn calc_spatial_frequency(lambda: f64, aperture_diameter: f64, focal_length: f64) -> f64 { + 2.0 * PI / lambda * aperture_diameter / focal_length +} + +/// Calculate the airy disc intensity at a given radius. Spatial frequency should be pre-calcualted +/// to avoid extra operations per loop. It is given by: +/// 2.0 * PI / lambda * aperture_diameter / focal_length +/// where lambda is wavelength of light. All arguments are in meters. +/// +/// Airy Disc formula: +/// I(r) = I_0 * (2 * J1(kr) / kr)^2 +/// Where: +/// I(r) = Intensity at distance r from the center of the airy disc +/// I_0 = Max intensity at the center of the disc (the star itself/point light source, i.e. r = 0) +/// J1(x) = First order Bessel function of the first kind (the magic sauce) +/// k = 2 * pi / wavelength * (aperture_diameter / focal_length) -- incorporates camera params +/// r = Radial distance from the center of the disc + +fn calc_airy_intensity_at_radius(r: f64, spatial_frequency: f64) -> f64 { + // Bessel argument, which will give us our intensity at radius r + let kr = spatial_frequency * r; + + // At the center, we're at full intensity + if (kr == 0.0) { + return 1.0; + } + + let bessel = j1(kr); + let intensity = (2.0 * bessel / kr).powi(2); + intensity +} + +fn parse_magnitude(record: &csv::StringRecord) -> Result { + let bt_mag = parse_field(record, 17, "BT magnitude").ok(); + let vt_mag = parse_field(record, 19, "VT magnitude").ok(); + + // println!("Debug: BT_Mag = {:?}, VT_Mag = {:?}", bt_mag, vt_mag); + + match (bt_mag, vt_mag) { + (Some(bt), Some(vt)) => { + let v_mag = vt - 0.090 * (bt - vt); + // println!("Debug: Calculated V_Mag = {:.3}", v_mag); + Ok(v_mag) + } + (None, Some(vt)) => { + // println!("Debug: Using VT_Mag as V_Mag = {:.3}", vt); + Ok(vt) + } + (Some(bt), None) => { + // println!("Debug: Using BT_Mag as V_Mag = {:.3}", bt); + Ok(bt) + } + (None, None) => Err(CatalogError::MissingMagnitude), + } +} + +fn apply_psf(image: &mut [Vec], star_x: usize, star_y: usize, intensity: f64, radius: f64, wavelength: f64, aperture_diameter: f64, focal_length: f64) { + let size = (2.0 * radius).ceil() as usize; + let half_size = size / 2; + + for dx in 0..size { + for dy in 0..size { + let x = star_x as isize + dx as isize - half_size as isize; + let y = star_y as isize + dy as isize - half_size as isize; + + // Ensure the coordinates are within image bounds + if x >= 0 && x < image.len() as isize && y >= 0 && y < image[0].len() as isize { + let r = (((dx as f64 - half_size as f64).powi(2) + (dy as f64 - half_size as f64).powi(2)).sqrt()); + let airy_value = airy_disc_intensity(r, wavelength, aperture_diameter, focal_length); + + // Accumulate intensity at the pixel + image[x as usize][y as usize] += intensity * airy_value; + } + } + } +} + + +fn render_stars( + stars: &[Star], + output_width: u32, + output_height: u32, + center_ra_deg: f64, + center_dec_deg: f64, + fov_w_deg: f64, + fov_h_deg: f64, +) -> ImageBuffer, Vec> { + let mut img = ImageBuffer::new(output_width, output_height); + +} + +fn main() -> Result<(), Box> { + let args = Args::parse(); + + println!("Reading stars from: {:?}", args.file); + println!("Center - RA (deg): {}", args.center_ra); + println!("Center - Dec (deg): {}", args.center_dec); + println!("FOV width (deg): {}", args.fov_w_deg); + println!("FOV height (deg): {}", args.fov_h_deg); + println!("Roll (deg): {}", args.roll_deg); + println!("Max magnitude: {}", args.max_magnitude); + + let start = Instant::now(); + let stars = read_stars( + args.file, + args.center_ra, + args.center_dec, + args.fov_w_deg, + args.fov_h_deg, + args.roll_deg, + args.max_magnitude, + )?; + let read_duration = start.elapsed(); + + + + +/* + let render_start = Instant::now(); + let img = render_stars( + &stars, + args.width, + args.height, + args.min_ra, + args.max_ra, + args.min_dec, + args.max_dec, + ); + img.save(&args.output)?; + let render_duration = render_start.elapsed(); +*/ + println!("Time taken to render and save image: {:?}", render_duration); + println!("Image saved as: {}", args.output); + println!("Total time elapsed: {:?}", start.elapsed()); + + Ok(()) +} \ No newline at end of file diff --git a/src/bin/gaussian_renderer.rs b/src/bin/gaussian_renderer.rs new file mode 100644 index 0000000..a27f5e2 --- /dev/null +++ b/src/bin/gaussian_renderer.rs @@ -0,0 +1,229 @@ +use std::fs::File; +use std::io; +use std::path::PathBuf; + +/// Represents a star with its right ascension, declination, and magnitude. +#[derive(Debug, Deserialize, Serialize, Clone)] +pub struct Star { + ra_deg: f64, + de_deg: f64, + mag: f64, +} + +/// Errors that can occur during star catalog reading. +#[derive(Error, Debug)] +pub enum CatalogError { + #[error("IO error: {0}")] + Io(#[from] io::Error), + #[error("CSV parsing error: {0}")] + Csv(#[from] csv::Error), + #[error("Missing field: {0}")] + MissingField(String), + #[error("Parse error: {0}")] + Parse(String), + #[error("Missing magnitude")] + MissingMagnitude, +} + +/// CLI Arguments +#[derive(Parser, Debug)] +#[command(author, version, about, long_about = None)] +struct Args { + /// Path to the Tycho-2 catalog file + #[arg( + short, + long, + value_name = "FILE", + default_value = "data/tycho2/catalog.dat" + )] + file: PathBuf, + + /// Number of stars to display (0 for all) + #[arg(short, long, default_value_t = 10)] + display_count: usize, + + /// Minimum Right Ascension (degrees) + #[arg(long, default_value_t = 0.0)] + min_ra: f64, + + /// Maximum Right Ascension (degrees) + #[arg(long, default_value_t = 360.0)] + max_ra: f64, + + /// Minimum Declination (degrees) + #[arg(long, default_value_t = -90.0)] + min_dec: f64, + + /// Maximum Declination (degrees) + #[arg(long, default_value_t = 90.0)] + max_dec: f64, + + /// Maximum visual magnitude (lower is brighter) + #[arg(short, long, default_value_t = 6.0)] + max_magnitude: f64, + + /// Output image width in pixels + #[arg(long, default_value_t = 800)] + width: u32, + + /// Output image height in pixels + #[arg(long, default_value_t = 600)] + height: u32, + + /// Output image file name + #[arg(short, long, default_value = "star_map.png")] + output: String, +} + +/// Reads and filters stars from the Tycho-2 catalog file. +/// https://heasarc.gsfc.nasa.gov/w3browse/all/tycho2.html +/// http://tdc-www.harvard.edu/catalogs/tycho2.format.html +pub fn read_stars>( + path: P, + min_ra: f64, + max_ra: f64, + min_dec: f64, + max_dec: f64, + max_magnitude: f64, +) -> Result, CatalogError> { + let file = File::open(path)?; + let reader = io::BufReader::new(file); + let mut csv_reader = ReaderBuilder::new() + .delimiter(b'|') + .has_headers(false) + .from_reader(reader); + + let mut stars = Vec::new(); + let mut skipped_rows = 0; + + for (i, result) in csv_reader.records().enumerate() { + let record = result?; + match parse_star_record(&record) { + Ok(star) => { + if star.ra_deg >= min_ra + && star.ra_deg <= max_ra + && star.de_deg >= min_dec + && star.de_deg <= max_dec + && star.mag <= max_magnitude + { + if i % 10000 == 0 { + println!( + "Star {}: RA={}, Dec={}, Mag={}", + i, star.ra_deg, star.de_deg, star.mag + ); + } + stars.push(star); + } + } + Err(e) => { + skipped_rows += 1; + if skipped_rows <= 10 { + println!("Skipping row {} due to error: {:?}", i, e); + println!("Problematic row: {:?}", record); + } else if skipped_rows == 11 { + println!("Further skipped rows will not be printed..."); + } + } + } + } + + println!("Total stars read and filtered: {}", stars.len()); + println!("Total rows skipped: {}", skipped_rows); + + Ok(stars) +} + +/// Parses a single record from the catalog into a Star struct. +fn parse_star_record(record: &csv::StringRecord) -> Result { + let ra = parse_field(record, 24, "RA")?; + let dec = parse_field(record, 25, "Dec")?; + let mag = parse_magnitude(record)?; + + Ok(Star { + ra_deg: ra, + de_deg: dec, + mag, + }) +} + +/// Parses a field from the record, returning a helpful error if parsing fails. +fn parse_field( + record: &csv::StringRecord, + index: usize, + field_name: &str, +) -> Result { + record + .get(index) + .ok_or_else(|| CatalogError::MissingField(field_name.to_string()))? + .trim() + .parse() + .map_err(|_| CatalogError::Parse(format!("Failed to parse {}", field_name))) +} + +fn parse_magnitude(record: &csv::StringRecord) -> Result { + let bt_mag = parse_field(record, 17, "BT magnitude").ok(); + let vt_mag = parse_field(record, 19, "VT magnitude").ok(); + + // println!("Debug: BT_Mag = {:?}, VT_Mag = {:?}", bt_mag, vt_mag); + + match (bt_mag, vt_mag) { + (Some(bt), Some(vt)) => { + let v_mag = vt - 0.090 * (bt - vt); + // println!("Debug: Calculated V_Mag = {:.3}", v_mag); + Ok(v_mag) + } + (None, Some(vt)) => { + // println!("Debug: Using VT_Mag as V_Mag = {:.3}", vt); + Ok(vt) + } + (Some(bt), None) => { + // println!("Debug: Using BT_Mag as V_Mag = {:.3}", bt); + Ok(bt) + } + (None, None) => Err(CatalogError::MissingMagnitude), + } +} + +/// Gaussian blurring function +fn gaussian(x: f64, y: f64, sigma: f64) -> f64 { + let exponent = -(x * x + y * y) / (2.0 * sigma * sigma); + (1.0 / (2.0 * PI * sigma * sigma)) * (-exponent).exp() +} + + + +fn apply_psf(image: &mut [Vec], star_x: usize, star_y: usize, intensity: f64, radius: f64, wavelength: f64, aperture_diameter: f64, focal_length: f64) { + let size = (2.0 * radius).ceil() as usize; + let half_size = size / 2; + + for dx in 0..size { + for dy in 0..size { + let x = star_x as isize + dx as isize - half_size as isize; + let y = star_y as isize + dy as isize - half_size as isize; + + // Ensure the coordinates are within image bounds + if x >= 0 && x < image.len() as isize && y >= 0 && y < image[0].len() as isize { + let r = (((dx as f64 - half_size as f64).powi(2) + (dy as f64 - half_size as f64).powi(2)).sqrt()); + let airy_value = airy_intensity(r, wavelength, aperture_diameter, focal_length); + + // Accumulate intensity at the pixel + image[x as usize][y as usize] += intensity * airy_value; + } + } + } +} + + +fn render_stars( + stars: &[Star], + width: u32, + height: u32, + min_ra: f64, + max_ra: f64, + min_dec: f64, + max_dec: f64, +) { + let mut img = ImageBuffer::new(width, height); + + +} \ No newline at end of file From 6454764726968dbca77f7b7d064faf23391b46f7 Mon Sep 17 00:00:00 2001 From: Layton Miller Date: Mon, 9 Sep 2024 23:17:59 -0700 Subject: [PATCH 02/10] Major updates -- will squash this later --- Cargo.lock | 26 +-- Cargo.toml | 2 +- README.md | 6 + src/bin/airy_renderer.rs | 441 --------------------------------------- src/bin/psf_renderer.rs | 136 ++++++++++++ src/coords.rs | 116 ++++++++++ src/fov.rs | 122 +++++++++++ src/lib.rs | 7 + src/parsing_utils.rs | 126 +++++++++++ src/rendering.rs | 132 ++++++++++++ src/star.rs | 9 + 11 files changed, 668 insertions(+), 455 deletions(-) delete mode 100644 src/bin/airy_renderer.rs create mode 100644 src/bin/psf_renderer.rs create mode 100644 src/coords.rs create mode 100644 src/fov.rs create mode 100644 src/lib.rs create mode 100644 src/parsing_utils.rs create mode 100644 src/rendering.rs create mode 100644 src/star.rs diff --git a/Cargo.lock b/Cargo.lock index e80c67a..f00b928 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1036,6 +1036,19 @@ dependencies = [ "lock_api", ] +[[package]] +name = "starfield_renderer" +version = "0.1.0" +dependencies = [ + "clap", + "csv", + "image", + "nalgebra", + "serde", + "spec_math", + "thiserror", +] + [[package]] name = "strsim" version = "0.11.1" @@ -1137,19 +1150,6 @@ dependencies = [ "winnow", ] -[[package]] -name = "tycho2_renderer" -version = "0.1.0" -dependencies = [ - "clap", - "csv", - "image", - "nalgebra", - "serde", - "spec_math", - "thiserror", -] - [[package]] name = "typenum" version = "1.17.0" diff --git a/Cargo.toml b/Cargo.toml index 36cfa2a..8ea2182 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "tycho2_renderer" +name = "starfield_renderer" version = "0.1.0" edition = "2021" diff --git a/README.md b/README.md index 47568e6..f5881ba 100644 --- a/README.md +++ b/README.md @@ -18,6 +18,12 @@ Download catalog.dat from there, put it in data/tycho2/ │ └── main.rs ``` +To run the airy disc renderer +``` +cargo run --bin airy_renderer +``` + +To run the original proof of concept generator: ``` cargo run -- -- --min-ra 0 --max-ra 60 --min-dec -30 --max-dec 30 --max-magnitude 5 --width 1000 --height 800 --output star_map.png ``` diff --git a/src/bin/airy_renderer.rs b/src/bin/airy_renderer.rs deleted file mode 100644 index 6a0a69f..0000000 --- a/src/bin/airy_renderer.rs +++ /dev/null @@ -1,441 +0,0 @@ -use std::f64::consts::PI; -use clap::Parser; -use csv::ReaderBuilder; -use image::{ImageBuffer, Rgb}; -use nalgebra::SMatrix; -use serde::{Deserialize, Serialize}; -use spec_math::cephes64::j1; -use std::fs::File; -use std::io; -use std::path::PathBuf; -use std::time::Instant; -use thiserror::Error; - -/// Represents a star with its right ascension, declination, and magnitude. -#[derive(Debug, Deserialize, Serialize, Clone)] -pub struct Star { - coords: EquatorialCoords, - mag: f64, -} - -#[derive(Debug, Deserialize, Serialize, Clone)] -pub struct EquatorialCoords { - ra_deg: f64, - dec_deg: f64, -} - -pub struct CartesianCoords { - x: f64, - y: f64, - z: f64, -} - -pub struct BoundsEquatorial { - max_ra: f64, - min_ra: f64, - max_dec: f64, - min_dec: f64, -} - -/// Errors that can occur during star catalog reading. -#[derive(Error, Debug)] -pub enum CatalogError { - #[error("IO error: {0}")] - Io(#[from] io::Error), - #[error("CSV parsing error: {0}")] - Csv(#[from] csv::Error), - #[error("Missing field: {0}")] - MissingField(String), - #[error("Parse error: {0}")] - Parse(String), - #[error("Missing magnitude")] - MissingMagnitude, -} - -/// CLI Arguments -#[derive(Parser, Debug)] -#[command(author, version, about, long_about = None)] -struct Args { - /// Path to the Tycho-2 catalog file - #[arg( - short, - long, - value_name = "FILE", - default_value = "data/tycho2/catalog.dat" - )] - file: PathBuf, - - /// Number of stars to display (0 for all) - #[arg(short, long, default_value_t = 10)] - display_count: usize, - - /// Right Ascension of camera view center point (degrees) - #[arg(long, default_value_t = 0.0)] - center_ra: f64, - - /// Declination of camera view center point (degrees) - #[arg(long, default_value_t = 360.0)] - center_dec: f64, - - /// Width of field of view. With 0 roll, corresponds to right ascension (degrees) - #[arg(long, default_value_t = 0.0)] - fov_w_deg: f64, - - /// Height of field of view. With 0 roll, corresponds to declination (degrees) - #[arg(long, default_value_t = 0.0)] - fov_h_deg: f64, - - /// Roll of the camera view (degrees) - #[arg(long, default_value_t = 0.0)] - roll_deg: f64, - - /// Maximum visual magnitude (lower is brighter) - #[arg(long, default_value_t = 1.0)] - max_magnitude: f64, - - /// B magnitude wavelength - only used if using airy disc rendering (nanometers) - #[arg(long, default_value_t = 442)] - lambda_b_nm: f64, - - /// V magnitude wavelength - only used if using airy disc rendering (nanometers) - #[arg(long, default_value_t = 540)] - lambda_v_nm: f64, - - /// Camera pixel size in meters (should be tiny, like e-6). Default is 3e-6, assuming higher - /// precision optics - #[arg(long, default_value_t = 3e-6)] - pixel_size_m: f64, - - /// Output image width in pixels - #[arg(long, default_value_t = 800)] - width: u32, - - /// Output image height in pixels - #[arg(long, default_value_t = 600)] - height: u32, - - /// Output image file name - #[arg(short, long, default_value = "star_map.png")] - output: String, -} - -pub fn to_cartesian(src: EquatorialCoords) -> CartesianCoords { - CartesianCoords { - x: src.dec_deg.cos() * src.ra_deg.cos(), - y: src.dec_deg.cos() * src.ra_deg.sin(), - z: src.dec_deg.sin(), - } -} - -pub fn to_equatorial(src: CartesianCoords) -> EquatorialCoords { - EquatorialCoords { - ra_deg: src.y.atan2(src.x), - dec_deg: src.z.asin(), - } -} - -pub fn fov_outer_bounds( - center_ra_deg: f64, - center_dec_deg: f64, - fov_w_deg: f64, - fov_h_deg: f64, - roll_deg: f64, -) -> BoundsEquatorial { - // Calculate FOV bounds in cartesian coords - let fov_w_half = fov_w_deg / 2.0; - let fov_h_half = fov_h_deg / 2.0; - - let fov: [CartesianCoords; 4] = [ - to_cartesian(EquatorialCoords { - ra_deg: center_ra_deg - fov_w_half, - dec_deg: center_dec_deg + fov_h_half, - }), - to_cartesian(EquatorialCoords { - ra_deg: center_ra_deg + fov_w_half, - dec_deg: center_dec_deg + fov_h_half, - }), - to_cartesian(EquatorialCoords { - ra_deg: center_ra_deg - fov_w_half, - dec_deg: center_dec_deg - fov_h_half, - }), - to_cartesian(EquatorialCoords { - ra_deg: center_ra_deg + fov_w_half, - dec_deg: center_dec_deg - fov_h_half, - }) - ]; - - // Generate roll matrix and apply roll to coordinates, resulting in rolled FOV corner points - let roll_matrix: SMatrix = SMatrix::new( - roll_deg.cos(), -roll_deg.sin(), 0.0, - roll_deg.sin(), roll_deg.cos(), 0.0, - 0.0, 0.0, 1.0, - ); - - let fov_rolled: [EquatorialCoords; 4] = fov - // Apply the roll matrix, giving new cartesian coords of rolled FOV (use unit sphere z of 1 - .map(|pt| -> SMatrix { roll_matrix * SMatrix::new(pt.x, pt.y, 1) }) - // Convert rolled coords back into equatorial - .map(|rolled| to_equatorial( - CartesianCoords { x: rolled[(0,0)], y: rolled[(1,0)], z: rolled[(2,0)]} - )); - - // Extract ra and dec values as sets to find min/max and return as Bounds - let rolled_ra_vals = fov_rolled.iter().map(|c| c.ra_deg); - let rolled_dec_vals = fov_rolled.iter().map(|c| c.dec_deg); - - BoundsEquatorial { - max_ra: rolled_ra_vals.iter().fold(f64::NEG_INFINITY, f64::max), - min_ra: rolled_ra_vals.iter().fold(f64::INFINITY, f64::min), - max_dec: rolled_dec_vals.iter().fold(f64::NEG_INFINITY, f64::max), - min_dec: rolled_dec_vals.iter().fold(f64::INFINITY, f64::min), - } -} - -/// Reads and filters stars from the Tycho-2 catalog file. -/// https://heasarc.gsfc.nasa.gov/w3browse/all/tycho2.html -/// http://tdc-www.harvard.edu/catalogs/tycho2.format.html -pub fn read_stars>( - path: P, - center_ra_deg: f64, - center_dec_deg: f64, - fov_w_deg: f64, - fov_h_deg: f64, - roll_deg: f64, - max_magnitude: f64, -) -> Result, CatalogError> { - let file = File::open(path)?; - let reader = io::BufReader::new(file); - let mut csv_reader = ReaderBuilder::new() - .delimiter(b'|') - .has_headers(false) - .from_reader(reader); - - let mut stars = Vec::new(); - let mut skipped_rows = 0; - // Define bounding box of FOV in case of roll. - let bound_min_ra: f64 = center_ra_deg - (fov_w_deg / 2.0); - let bound_max_ra: f64 = center_ra_deg + (fov_w_deg / 2.0); - let bound_min_dec: f64 = center_dec_deg - (fov_h_deg / 2.0); - let bound_max_dec: f64 = center_dec_deg + (fov_h_deg / 2.0); - - println!("bound_min_ra {}", bound_min_ra); - println!("bound_max_ra {}", bound_max_ra); - println!("bound_min_dec {}", bound_min_dec); - println!("bound_max_dec {}", bound_max_dec); - // Build bounding box based on camera roll - outer box containing rolled FOV - // Filter stars out of the outer bounding box before doing testing whether they fit inside the - // actual FOV - let bounds = fov_outer_bounds(center_ra_deg, center_dec_deg, fov_w_deg, fov_h_deg, roll_deg); - /* - for (i, result) in csv_reader.records().enumerate() { - let record = result?; - match parse_star_record(&record) { - Ok(star) => { - if star.ra_deg >= min_ra - && star.ra_deg <= max_ra - && star.de_deg >= min_dec - && star.de_deg <= max_dec - && star.mag <= max_magnitude - { - if i % 10000 == 0 { - println!( - "Star {}: RA={}, Dec={}, Mag={}", - i, star.ra_deg, star.de_deg, star.mag - ); - } - stars.push(star); - } - } - Err(e) => { - skipped_rows += 1; - if skipped_rows <= 10 { - println!("Skipping row {} due to error: {:?}", i, e); - println!("Problematic row: {:?}", record); - } else if skipped_rows == 11 { - println!("Further skipped rows will not be printed..."); - } - } - } - } - */ - println!("Total stars read and filtered: {}", stars.len()); - println!("Total rows skipped: {}", skipped_rows); - - Ok(stars) -} - -/// Parses a single record from the catalog into a Star struct. -fn parse_star_record(record: &csv::StringRecord) -> Result { - let ra = parse_field(record, 24, "RA")?; - let dec = parse_field(record, 25, "Dec")?; - let mag = parse_magnitude(record)?; - - Ok(Star { - coords: EquatorialCoords { - ra_deg: ra, - dec_deg: dec, - }, - mag, - }) -} - -/// Parses a field from the record, returning a helpful error if parsing fails. -fn parse_field( - record: &csv::StringRecord, - index: usize, - field_name: &str, -) -> Result { - record - .get(index) - .ok_or_else(|| CatalogError::MissingField(field_name.to_string()))? - .trim() - .parse() - .map_err(|_| CatalogError::Parse(format!("Failed to parse {}", field_name))) -} - -/// Airy disc radius - calculate physical radius, then convert to pixel scale -fn calc_airy_disc_radius(lambda: f64, aperture_diameter: f64, focal_length: f64, pixel_size_m: f64) -> f64 { - // Physical radius on the sensor in meters - let size = 1.22 * lambda * focal_length / aperture_diameter; - // Return radius in pixels - size / pixel_size_m -} - -/// Spatial frequency scaled as related to the diffraction pattern. Ooh! Ahh! -fn calc_spatial_frequency(lambda: f64, aperture_diameter: f64, focal_length: f64) -> f64 { - 2.0 * PI / lambda * aperture_diameter / focal_length -} - -/// Calculate the airy disc intensity at a given radius. Spatial frequency should be pre-calcualted -/// to avoid extra operations per loop. It is given by: -/// 2.0 * PI / lambda * aperture_diameter / focal_length -/// where lambda is wavelength of light. All arguments are in meters. -/// -/// Airy Disc formula: -/// I(r) = I_0 * (2 * J1(kr) / kr)^2 -/// Where: -/// I(r) = Intensity at distance r from the center of the airy disc -/// I_0 = Max intensity at the center of the disc (the star itself/point light source, i.e. r = 0) -/// J1(x) = First order Bessel function of the first kind (the magic sauce) -/// k = 2 * pi / wavelength * (aperture_diameter / focal_length) -- incorporates camera params -/// r = Radial distance from the center of the disc - -fn calc_airy_intensity_at_radius(r: f64, spatial_frequency: f64) -> f64 { - // Bessel argument, which will give us our intensity at radius r - let kr = spatial_frequency * r; - - // At the center, we're at full intensity - if (kr == 0.0) { - return 1.0; - } - - let bessel = j1(kr); - let intensity = (2.0 * bessel / kr).powi(2); - intensity -} - -fn parse_magnitude(record: &csv::StringRecord) -> Result { - let bt_mag = parse_field(record, 17, "BT magnitude").ok(); - let vt_mag = parse_field(record, 19, "VT magnitude").ok(); - - // println!("Debug: BT_Mag = {:?}, VT_Mag = {:?}", bt_mag, vt_mag); - - match (bt_mag, vt_mag) { - (Some(bt), Some(vt)) => { - let v_mag = vt - 0.090 * (bt - vt); - // println!("Debug: Calculated V_Mag = {:.3}", v_mag); - Ok(v_mag) - } - (None, Some(vt)) => { - // println!("Debug: Using VT_Mag as V_Mag = {:.3}", vt); - Ok(vt) - } - (Some(bt), None) => { - // println!("Debug: Using BT_Mag as V_Mag = {:.3}", bt); - Ok(bt) - } - (None, None) => Err(CatalogError::MissingMagnitude), - } -} - -fn apply_psf(image: &mut [Vec], star_x: usize, star_y: usize, intensity: f64, radius: f64, wavelength: f64, aperture_diameter: f64, focal_length: f64) { - let size = (2.0 * radius).ceil() as usize; - let half_size = size / 2; - - for dx in 0..size { - for dy in 0..size { - let x = star_x as isize + dx as isize - half_size as isize; - let y = star_y as isize + dy as isize - half_size as isize; - - // Ensure the coordinates are within image bounds - if x >= 0 && x < image.len() as isize && y >= 0 && y < image[0].len() as isize { - let r = (((dx as f64 - half_size as f64).powi(2) + (dy as f64 - half_size as f64).powi(2)).sqrt()); - let airy_value = airy_disc_intensity(r, wavelength, aperture_diameter, focal_length); - - // Accumulate intensity at the pixel - image[x as usize][y as usize] += intensity * airy_value; - } - } - } -} - - -fn render_stars( - stars: &[Star], - output_width: u32, - output_height: u32, - center_ra_deg: f64, - center_dec_deg: f64, - fov_w_deg: f64, - fov_h_deg: f64, -) -> ImageBuffer, Vec> { - let mut img = ImageBuffer::new(output_width, output_height); - -} - -fn main() -> Result<(), Box> { - let args = Args::parse(); - - println!("Reading stars from: {:?}", args.file); - println!("Center - RA (deg): {}", args.center_ra); - println!("Center - Dec (deg): {}", args.center_dec); - println!("FOV width (deg): {}", args.fov_w_deg); - println!("FOV height (deg): {}", args.fov_h_deg); - println!("Roll (deg): {}", args.roll_deg); - println!("Max magnitude: {}", args.max_magnitude); - - let start = Instant::now(); - let stars = read_stars( - args.file, - args.center_ra, - args.center_dec, - args.fov_w_deg, - args.fov_h_deg, - args.roll_deg, - args.max_magnitude, - )?; - let read_duration = start.elapsed(); - - - - -/* - let render_start = Instant::now(); - let img = render_stars( - &stars, - args.width, - args.height, - args.min_ra, - args.max_ra, - args.min_dec, - args.max_dec, - ); - img.save(&args.output)?; - let render_duration = render_start.elapsed(); -*/ - println!("Time taken to render and save image: {:?}", render_duration); - println!("Image saved as: {}", args.output); - println!("Total time elapsed: {:?}", start.elapsed()); - - Ok(()) -} \ No newline at end of file diff --git a/src/bin/psf_renderer.rs b/src/bin/psf_renderer.rs new file mode 100644 index 0000000..537a9b8 --- /dev/null +++ b/src/bin/psf_renderer.rs @@ -0,0 +1,136 @@ +#![allow(warnings)] + +use std::path::PathBuf; +use clap::Parser; +use starfield_renderer::fov::{get_fov}; +use starfield_renderer::parsing_utils::{read_stars}; +use starfield_renderer::rendering::{render_stars}; +use std::time::Instant; +use starfield_renderer::coords::{EquatorialCoords}; + + +/// CLI Arguments +#[derive(Parser, Debug)] +#[command(author, version, about, long_about = None)] +pub struct Args { + /// Path to the Tycho-2 catalog file + #[arg( + short, + long, + value_name = "FILE", + default_value = "data/tycho2/catalog.dat" + )] + source: PathBuf, + + /// Right Ascension of camera view center point (degrees) + #[arg(long, default_value_t = 180.0)] + center_ra: f64, + + /// Declination of camera view center point (degrees) + #[arg(long, default_value_t = 0.0)] + center_dec: f64, + + /// Width of field of view. With 0 roll, corresponds to right ascension (degrees) + #[arg(long, default_value_t = 90.0)] + fov_w_deg: f64, + + /// Height of field of view. With 0 roll, corresponds to declination (degrees) + #[arg(long, default_value_t = 60.0)] + fov_h_deg: f64, + + /// Roll of the camera view (degrees) + #[arg(long, default_value_t = 0.0)] + roll_deg: f64, + + /// Maximum visual magnitude (lower is brighter) + #[arg(long, default_value_t = 5.0)] + max_magnitude: f64, + + /// Targeted wavelength - critical for airy disc rendering (nanometers). Default to visible + #[arg(long, default_value_t = 540.0)] + lambda_nm: f64, + + /// Camera pixel size in meters (should be tiny, like e-6). Default is 3e-6, assuming higher + /// precision optics + #[arg(long, default_value_t = 3e-6)] + pixel_size_m: f64, + + /// Output image width in pixels + #[arg(long, default_value_t = 800)] + width: u32, + + /// Output image height in pixels + #[arg(long, default_value_t = 600)] + height: u32, + + /// Output image file name + #[arg(short, long, default_value = "star_map.png")] + output: String, +} + +fn main() -> Result<(), Box> { + let start = Instant::now(); + let args = Args::parse(); + let center_ra = args.center_ra.to_radians(); + let center_dec = args.center_dec.to_radians(); + let roll = args.roll_deg.to_radians(); + let fov_w = args.fov_w_deg.to_radians(); + let fov_h = args.fov_h_deg.to_radians(); + + /*println!("================ Cmd args list ==============="); + println!("Reading stars from: {:?}", args.source); + println!("Center - RA (deg): {}", args.center_ra); + println!("Center - RA (rad): {}", center_ra); + println!("Center - Dec (deg): {}", args.center_dec); + println!("Center - Dec (rad): {}", center_dec); + println!("FOV width (deg): {}", args.fov_w_deg); + println!("FOV width (rad): {}", fov_w); + println!("FOV height (deg): {}", args.fov_h_deg); + println!("FOV height (rad): {}", fov_h); + println!("Roll (deg): {}", args.roll_deg); + println!("Roll (rad): {}", roll); + println!("Max magnitude: {}", args.max_magnitude); + println!("Lambda (wavelength) nm: {}", args.lambda_nm); + println!("Pixel size (meters): {}", args.pixel_size_m); + println!("Output image width: {}", args.width); + println!("Output image height: {}", args.height); + println!("Output image height: {}", args.height); + println!("Output filename: {}", args.output); + println!("============ End of cmd args list ============");*/ + + // 1) Rotate FOV by specified roll + let center = &EquatorialCoords { + ra: center_ra, + dec: center_dec, + }; + let rolled_fov = get_fov(center, fov_w, fov_h, roll); + + // 2) Read stars and filter against rolled_fov to create subset of stars in view of the image + let stars = read_stars(args.source, center, &rolled_fov, args.max_magnitude)?; + /*let star = &stars[0]; + println!("Star: {:?}", star.coords);*/ + + // 4) Render stars in FOV w/ airy disc + let img = render_stars(&stars, args.width, args.height, center, fov_w, fov_h, roll); + img.save(&args.output)?; + +/* + let render_start = Instant::now(); + let img = render_stars( + &stars, + args.width, + args.height, + args.min_ra, + args.max_ra, + args.min_dec, + args.max_dec, + ); + img.save(&args.output)?; + let render_duration = render_start.elapsed(); +*/ + // println!("Time taken to render and save image: {:?}", render_duration); + // println!("Image saved as: {}", args.output); + println!("Total time elapsed: {:?}", start.elapsed()); + + Ok(()) +} \ No newline at end of file diff --git a/src/coords.rs b/src/coords.rs new file mode 100644 index 0000000..062c704 --- /dev/null +++ b/src/coords.rs @@ -0,0 +1,116 @@ +use crate::fov::APPROX_GRID_RESOLUTION; +use serde::{Deserialize, Serialize}; +use std::f64::consts::PI; +use std::hash::{Hash, Hasher}; + +#[derive(Debug, Deserialize, Serialize, Clone, Copy)] +pub struct CartesianCoords { + pub x: f64, + pub y: f64, + pub z: f64, +} + +impl CartesianCoords { + pub fn to_equatorial(&self) -> EquatorialCoords { + let mut ra: f64; + + if (self.y < 0.0) { + ra = (2.0 * PI) - self.x.acos(); + } else { + ra = self.x.acos(); + } + + EquatorialCoords { + ra, + dec: self.z.asin(), + } + } +} + + +#[derive(Debug, Deserialize, Serialize, Clone, Copy)] +pub struct EquatorialCoords { + pub ra: f64, + pub dec: f64, +} + +impl EquatorialCoords { + /// Calculate a point's standard coordinates on the plane tangent to the celestial sphere, whose + /// center point sits tangent to the sphere where the camera's central (z) axis meets it + pub fn to_standard(&self, center: &EquatorialCoords) -> StandardCoords { + // Right ascension and declination of current object, in radians + let ra = self.ra; + let dec = self.dec; + // Right ascension and declination of center point of tangent plane, in radians + let cra = center.ra; + let cdec = center.dec; + + StandardCoords { + x: (dec.cos() * (ra - cra).sin()) + / ((cdec.cos() * dec.cos() * (ra - cra).cos()) + (dec.sin() * cdec.sin())), + y: ((cdec.sin() * dec.cos() * (ra - cra).cos()) - (cdec.cos() * dec.sin())) + / ((cdec.cos() * dec.cos() * (ra - cra).cos()) + (dec.sin() * cdec.sin())), + } + } + + pub fn to_cartesian(&self) -> CartesianCoords { + CartesianCoords { + x: self.ra.cos(), + y: self.ra.sin(), + z: self.dec.sin(), + } + } + + pub fn to_grid(&self) -> EquatorialCoords { + EquatorialCoords { + ra: ((self.ra / 2.0 * PI) * (1.0 - (2.0 * self.dec / PI).abs()) * APPROX_GRID_RESOLUTION).round(), + dec: ((2.0 * self.dec / PI) * APPROX_GRID_RESOLUTION).round(), + } + } +} + +impl PartialEq for EquatorialCoords { + fn eq(&self, other: &Self) -> bool { + self.ra == other.ra && self.dec == other.dec + } +} + +impl Eq for EquatorialCoords { +} + +impl Hash for EquatorialCoords { + fn hash(&self, state: &mut H) { + (self.ra as i32).hash(state); + (self.dec as i32).hash(state); + } +} + +#[derive(Debug, Deserialize, Serialize, Clone, Copy)] +pub struct StandardCoords { + pub x: f64, + pub y: f64, +} + +impl StandardCoords { + pub fn to_equatorial(&self, center: &EquatorialCoords) -> EquatorialCoords { + // Right ascension and declination of center point of tangent plane, in radians + let cra = center.ra; + let cdec = center.dec; + + EquatorialCoords { + ra: (cra + (self.x / (cdec.cos() - (self.y * cdec.sin()))).atan()), + dec: ( + ((cdec.sin() + (self.y * cdec.cos())) + / ((1.0 + self.x.powi(2) + self.y.powi(2)).sqrt()) + ).asin()), + } + } +} + +#[derive(Debug, Deserialize, Serialize, Clone)] +pub struct BoundsEquatorial { + pub max_ra: f64, + pub min_ra: f64, + pub max_dec: f64, + pub min_dec: f64, +} \ No newline at end of file diff --git a/src/fov.rs b/src/fov.rs new file mode 100644 index 0000000..7eb1ce3 --- /dev/null +++ b/src/fov.rs @@ -0,0 +1,122 @@ +use nalgebra::{SMatrix, SVector, Vector3}; +use serde::{Deserialize, Serialize}; +use crate::coords::{BoundsEquatorial, CartesianCoords, EquatorialCoords, StandardCoords}; +use std::collections::HashSet; +use std::f64::consts::PI; + +pub const APPROX_GRID_RESOLUTION: f64 = 360.0; + +pub fn get_fov( + center: &EquatorialCoords, + fov_w: f64, + fov_h: f64, + roll: f64, + // Approximation resolution for dividing FOV into smaller regions (NOT image size) + // approx_res: i32, +) -> HashSet { + // Config params for function + let view_init_center = EquatorialCoords { + ra: 180.0_f64.to_radians(), + dec: 0.0_f64.to_radians(), + }; + let ra_dif = center.ra - view_init_center.ra; + let dec_dif = center.dec - view_init_center.dec; + // Calculate FOV bounds in cartesian coords + let fov_w_half = fov_w / 2.0; + let fov_h_half = fov_h / 2.0; + + let step_size = 2.0 * PI / APPROX_GRID_RESOLUTION; + let bottom_left = EquatorialCoords { + ra: view_init_center.ra - fov_w_half, + dec: view_init_center.dec - fov_h_half, + }; + let fov_steps_w = ((fov_w / step_size).ceil() + 1.0) as i32; + let fov_steps_h = ((fov_h / step_size).ceil() + 1.0) as i32; + let mut scatter_shot : Vec = Vec::new(); + + for y in 0..fov_steps_h { + for x in 0..fov_steps_w { + scatter_shot.push(EquatorialCoords { + ra: bottom_left.ra + (x as f64 * step_size), + dec: bottom_left.dec + (y as f64 * step_size), + }.to_cartesian()); + } + } + /*let debug_index = (scatter_shot.len() / 2) as usize; + let debug_middle_coord = scatter_shot[debug_index]; + println!("Approx center grid coord: {:?}", debug_middle_coord);*/ + + let c_cartesian = center.to_cartesian(); + let y_roll_axis = CartesianCoords { + x: -c_cartesian.y, + y: c_cartesian.x, + z: 0.0, + }; + + let x_roll = SMatrix::::new( + // Row 1 + roll.cos(), + ra_dif.sin(), + 0.0, + // Row 2 + ra_dif.sin(), + ra_dif.cos(), + 0.0, + // Row 3 + 0.0, + 0.0, + (1.0 - ra_dif.cos()) + ra_dif.cos(), + ); + let y_roll = SMatrix::::new( + // Row 1 + y_roll_axis.x.powi(2) * (1.0 - dec_dif.cos()) + dec_dif.cos(), + y_roll_axis.x * y_roll_axis.y * (1.0 - dec_dif.cos()) - (y_roll_axis.z * dec_dif.sin()), + y_roll_axis.x * y_roll_axis.z * (1.0 - dec_dif.cos()) + (y_roll_axis.y * dec_dif.sin()), + // Row 2 + y_roll_axis.x * y_roll_axis.y * (1.0 - dec_dif.cos()) + (y_roll_axis.z * dec_dif.sin()), + y_roll_axis.y.powi(2) * (1.0 - dec_dif.cos()) + dec_dif.cos(), + y_roll_axis.y * y_roll_axis.z * (1.0 - dec_dif.cos()) - (y_roll_axis.x * dec_dif.sin()), + // Row 3 + y_roll_axis.x * y_roll_axis.z * (1.0 - dec_dif.cos()) - (y_roll_axis.y * dec_dif.sin()), + y_roll_axis.y * y_roll_axis.z * (1.0 - dec_dif.cos()) + (y_roll_axis.x * dec_dif.sin()), + y_roll_axis.z.powi(2) * (1.0 - dec_dif.cos()) + dec_dif.cos(),); + let z_roll = SMatrix::::new( + // Row 1 + c_cartesian.x.powi(2) * (1.0 - roll.cos()) + roll.cos(), + c_cartesian.x * c_cartesian.y * (1.0 - roll.cos()) - (c_cartesian.z * roll.sin()), + c_cartesian.x * c_cartesian.z * (1.0 - roll.cos()) + (c_cartesian.y * roll.sin()), + // Row 2 + c_cartesian.x * c_cartesian.y * (1.0 - roll.cos()) + (c_cartesian.z * roll.sin()), + c_cartesian.y.powi(2) * (1.0 - roll.cos()) + roll.cos(), + c_cartesian.y * c_cartesian.z * (1.0 - roll.cos()) - (c_cartesian.x * roll.sin()), + // Row 3 + c_cartesian.x * c_cartesian.z * (1.0 - roll.cos()) - (c_cartesian.y * roll.sin()), + c_cartesian.y * c_cartesian.z * (1.0 - roll.cos()) + (c_cartesian.x * roll.sin()), + c_cartesian.z.powi(2) * (1.0 - roll.cos()) + roll.cos(), + ); + + let transform = z_roll * y_roll * x_roll; + let mut final_grid: HashSet = HashSet::new(); + for p in scatter_shot { + let vec: Vector3 = Vector3::new(p.x, p.y, p.z); + let transformed = transform * vec; + let grid_coord = CartesianCoords { + x: transformed[(0,0)], + y: transformed[(1,0)], + z: transformed[(2,0)], + }.to_equatorial().to_grid(); + final_grid.insert(grid_coord); + /*if (index == debug_index) { + println!("approx center grid coord (after transform) {:?}", grid_coord); + }*/ + }; + + final_grid +} +/* +pub fn equatorial_to_grid(p: &EquatorialCoords) -> EquatorialCoords { + EquatorialCoords { + ra: ((p.ra / 2.0 * PI) * (1.0 - (2.0 * p.dec / PI).abs()) * APPROX_RES).round(), + dec: ((2.0 * p.dec / PI) * APPROX_RES).round(), + } +}*/ diff --git a/src/lib.rs b/src/lib.rs new file mode 100644 index 0000000..90148e3 --- /dev/null +++ b/src/lib.rs @@ -0,0 +1,7 @@ +#![allow(warnings)] + +pub mod rendering; +pub mod coords; +pub mod fov; +pub mod parsing_utils; +pub mod star; \ No newline at end of file diff --git a/src/parsing_utils.rs b/src/parsing_utils.rs new file mode 100644 index 0000000..f2304e0 --- /dev/null +++ b/src/parsing_utils.rs @@ -0,0 +1,126 @@ +use csv::ReaderBuilder; +use std::fs::File; +use std::io; +use std::collections::HashSet; +use thiserror::Error; + +use crate::coords::EquatorialCoords; +use crate::star::Star; + +/// Errors that can occur during star catalog reading. +#[derive(Error, Debug)] +pub enum CatalogError { + #[error("IO error: {0}")] + Io(#[from] io::Error), + #[error("CSV parsing error: {0}")] + Csv(#[from] csv::Error), + #[error("Missing field: {0}")] + MissingField(String), + #[error("Parse error: {0}")] + Parse(String), + #[error("Missing magnitude")] + MissingMagnitude, +} + + +/// Reads and filters stars from the Tycho-2 catalog file. +/// https://heasarc.gsfc.nasa.gov/w3browse/all/tycho2.html +/// http://tdc-www.harvard.edu/catalogs/tycho2.format.html +/// All values should be in radians. While star coords in the catalog are in degrees, the coordinate +/// calculations make use of trig functions which deal in radians - this will be our default mode +pub fn read_stars>( + path: P, + center: &EquatorialCoords, + filter_grid: &HashSet, + max_magnitude: f64, +) -> Result, CatalogError> { + let file = File::open(path)?; + let reader = io::BufReader::new(file); + let mut csv_reader = ReaderBuilder::new() + .delimiter(b'|') + .has_headers(false) + .from_reader(reader); + + let mut stars = Vec::new(); + let mut skipped_rows = 0; + + for (i, result) in csv_reader.records().enumerate() { + let record = result?; + match parse_star_record(&record) { + Ok(star) => { + let grid_coords = &star.coords.to_grid(); + if star.mag < max_magnitude && filter_grid.contains(&grid_coords) { + stars.push(star); + } + } + Err(e) => { + skipped_rows += 1; + if skipped_rows <= 10 { + println!("Skipping row {} due to error: {:?}", i, e); + println!("Problematic row: {:?}", record); + } else if skipped_rows == 11 { + println!("Further skipped rows will not be printed..."); + } + } + } + } + + println!("Total stars read and filtered: {}", stars.len()); + println!("Total rows skipped: {}", skipped_rows); + + Ok(stars) +} + +/// Parses a single record from the catalog into a Star struct. +pub fn parse_star_record(record: &csv::StringRecord) -> Result { + let ra = parse_field(record, 24, "RA")?; + let dec = parse_field(record, 25, "Dec")?; + let mag = parse_magnitude(record)?; + + Ok(Star { + coords: EquatorialCoords { + ra: ra.to_radians(), + dec: dec.to_radians(), + }, + mag, + }) +} + +/// Get magnitude off a star record +pub fn parse_magnitude(record: &csv::StringRecord) -> Result { + let bt_mag = parse_field(record, 17, "BT magnitude").ok(); + let vt_mag = parse_field(record, 19, "VT magnitude").ok(); + + // println!("Debug: BT_Mag = {:?}, VT_Mag = {:?}", bt_mag, vt_mag); + + match (bt_mag, vt_mag) { + (Some(bt), Some(vt)) => { + let v_mag = vt - 0.090 * (bt - vt); + // println!("Debug: Calculated V_Mag = {:.3}", v_mag); + Ok(v_mag) + } + (None, Some(vt)) => { + // println!("Debug: Using VT_Mag as V_Mag = {:.3}", vt); + Ok(vt) + } + (Some(bt), None) => { + // println!("Debug: Using BT_Mag as V_Mag = {:.3}", bt); + Ok(bt) + } + (None, None) => Err(CatalogError::MissingMagnitude), + } +} + +/// Parses a field from the record, returning a helpful error if parsing fails. +pub fn parse_field( + record: &csv::StringRecord, + index: usize, + field_name: &str, +) -> Result { + record + .get(index) + .ok_or_else(|| CatalogError::MissingField(field_name.to_string()))? + .trim() + .parse() + .map_err(|_| CatalogError::Parse(format!("Failed to parse {}", field_name))) +} \ No newline at end of file diff --git a/src/rendering.rs b/src/rendering.rs new file mode 100644 index 0000000..e1d8724 --- /dev/null +++ b/src/rendering.rs @@ -0,0 +1,132 @@ +use std::f64::consts::PI; +use image::{ImageBuffer, Rgb}; +use nalgebra::SMatrix; +use spec_math::cephes64::j1; +use crate::coords::EquatorialCoords; +use crate::star::Star; + +/// Airy disc radius - calculate physical radius, then convert to pixel scale +pub fn calc_airy_disc_radius(lambda: f64, aperture_diameter: f64, focal_length: f64, pixel_size_m: f64) -> f64 { + // Physical radius on the sensor in meters + let size = 1.22 * lambda * focal_length / aperture_diameter; + // Return radius in pixels + size / pixel_size_m +} + +/// Spatial frequency scaled as related to the diffraction pattern. Ooh! Ahh! +pub fn calc_spatial_frequency(lambda: f64, aperture_diameter: f64, focal_length: f64) -> f64 { + 2.0 * PI / lambda * aperture_diameter / focal_length +} + +/// Calculate the airy disc intensity at a given radius. Spatial frequency should be pre-calcualted +/// to avoid extra operations per loop. It is given by: +/// 2.0 * PI / lambda * aperture_diameter / focal_length +/// where lambda is wavelength of light. All arguments are in meters. There is a helper method +/// defined to do this for you (see calc_spatial_frequency) +/// +/// Airy Disc formula: +/// I(r) = I_0 * (2 * J1(kr) / kr)^2 +/// Where: +/// I(r) = Intensity at distance r from the center of the airy disc +/// I_0 = Max intensity at the center of the disc (the star itself/point light source, i.e. r = 0) +/// J1(x) = First order Bessel function of the first kind (the magic sauce) +/// k = 2 * pi / wavelength * (aperture_diameter / focal_length) -- incorporates camera params +/// r = Radial distance from the center of the disc + +pub fn calc_airy_intensity_at_radius(r: f64, spatial_frequency: f64) -> f64 { + // Bessel argument, which will give us our intensity at radius r + let kr = spatial_frequency * r; + + // At the center, we're at full intensity + if (kr == 0.0) { + return 1.0; + } + + let bessel = j1(kr); + let intensity = (2.0 * bessel / kr).powi(2); + intensity +} + +/// Appy PSF to an image at a given location +fn apply_psf(image: &mut [Vec], star_x: usize, star_y: usize, intensity: f64, radius: f64, wavelength: f64, aperture_diameter: f64, focal_length: f64) { + let size = (2.0 * radius).ceil() as usize; + let half_size = size / 2; + + for dx in 0..size { + for dy in 0..size { + let x = star_x as isize + dx as isize - half_size as isize; + let y = star_y as isize + dy as isize - half_size as isize; + + // Ensure the coordinates are within image bounds + if x >= 0 && x < image.len() as isize && y >= 0 && y < image[0].len() as isize { + let r = ((dx as f64 - half_size as f64).powi(2) + (dy as f64 - half_size as f64).powi(2)).sqrt(); + // let airy_value = airy_disc_intensity(r, wavelength, aperture_diameter, focal_length); + + // Accumulate intensity at the pixel + // image[x as usize][y as usize] += intensity * airy_value; + } + } + } +} + +pub fn render_stars( + stars: &Vec, + width: u32, + height: u32, + center: &EquatorialCoords, + fov_w: f64, + fov_h: f64, + roll: f64, +) -> ImageBuffer, Vec> { + let mut img = ImageBuffer::new(width, height); + + // Find the minimum and maximum magnitudes in the dataset + let min_mag = stars.iter().map(|s| s.mag).fold(f64::INFINITY, f64::min); + let max_mag = stars + .iter() + .map(|s| s.mag) + .fold(f64::NEG_INFINITY, f64::max); + let z_roll_mat = SMatrix::::new( + roll.cos(), -roll.sin(), + roll.sin(), roll.cos(), + ); + let pixel_ratio_w = width as f64 / fov_w; + let pixel_ratio_h = height as f64 / fov_h; + + for star in stars { + let std_star_coords = star.coords.to_standard(center); + let std_star_mat = SMatrix::::new(std_star_coords.x, std_star_coords.y); + let final_star_pos = z_roll_mat * std_star_mat; + + let x = final_star_pos.x * pixel_ratio_w; + let y = final_star_pos.y * pixel_ratio_h; + if (x < 0.0 || x > width as f64 || y < 0.0 || y > height as f64) { + break; + } + + // Inverse the magnitude scale (brighter stars have lower magnitudes) + let normalized_mag = (max_mag - star.mag) / (max_mag - min_mag); + // Apply a non-linear scaling to emphasize brighter stars + let brightness = (normalized_mag.powf(2.5) * 255.0) as u8; + let color = Rgb([brightness, brightness, brightness]); + + //img.put_pixel((x + ((width as f64) / 2.0)) as u32, (y + (height as f64) / 2.0) as u32, color); + img.put_pixel(x as u32, y as u32, color); + } + /*let std_star_coords = stars[0].coords.to_standard(center); + let std_star_mat = SMatrix::::new(std_star_coords.x, std_star_coords.y); + let final_star_pos = z_roll_mat * std_star_mat; + + let x = final_star_pos.x * pixel_ratio_w; + let y = final_star_pos.y * pixel_ratio_h; + + // Inverse the magnitude scale (brighter stars have lower magnitudes) + let normalized_mag = (max_mag - stars[0].mag) / (max_mag - min_mag); + // Apply a non-linear scaling to emphasize brighter stars + let brightness = 255; + let color = Rgb([brightness, brightness, brightness]); +println!("x, y: {}, {}", x, y); + img.put_pixel((x + ((width as f64) / 2.0)) as u32, (y + (height as f64) / 2.0) as u32, color);*/ + + img +} \ No newline at end of file diff --git a/src/star.rs b/src/star.rs new file mode 100644 index 0000000..827c9e5 --- /dev/null +++ b/src/star.rs @@ -0,0 +1,9 @@ +use serde::{Deserialize, Serialize}; +use crate::coords::{EquatorialCoords}; + +/// Represents a star with its right ascension, declination, and magnitude. +#[derive(Debug, Deserialize, Serialize, Clone)] +pub struct Star { + pub coords: EquatorialCoords, + pub mag: f64, +} From 08324501a540a672f6b15c5d01a1afe8c771df25 Mon Sep 17 00:00:00 2001 From: Layton Miller Date: Mon, 9 Sep 2024 23:40:16 -0700 Subject: [PATCH 03/10] Working psf renderer (without PSF currently, but starfield renders, with distortion --- .gitignore | 1 + README.md | 2 +- src/rendering.rs | 25 +++++++------------------ star_map.png | Bin 553983 -> 27418 bytes 4 files changed, 9 insertions(+), 19 deletions(-) diff --git a/.gitignore b/.gitignore index d3d35c4..88272ad 100644 --- a/.gitignore +++ b/.gitignore @@ -176,3 +176,4 @@ data/ #/target .idea/ +debug.txt \ No newline at end of file diff --git a/README.md b/README.md index f5881ba..0e8ee78 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ Download catalog.dat from there, put it in data/tycho2/ To run the airy disc renderer ``` -cargo run --bin airy_renderer +cargo run --bin psf_renderer -- --roll-deg 0.0 ``` To run the original proof of concept generator: diff --git a/src/rendering.rs b/src/rendering.rs index e1d8724..6f0ff4f 100644 --- a/src/rendering.rs +++ b/src/rendering.rs @@ -92,16 +92,20 @@ pub fn render_stars( ); let pixel_ratio_w = width as f64 / fov_w; let pixel_ratio_h = height as f64 / fov_h; + let x_offset = width as f64 / 2.0; + let y_offset = width as f64 / 2.0; for star in stars { let std_star_coords = star.coords.to_standard(center); let std_star_mat = SMatrix::::new(std_star_coords.x, std_star_coords.y); let final_star_pos = z_roll_mat * std_star_mat; - let x = final_star_pos.x * pixel_ratio_w; - let y = final_star_pos.y * pixel_ratio_h; + let x = final_star_pos.x * pixel_ratio_w + x_offset; + let y = final_star_pos.y * pixel_ratio_h + y_offset; + println!("(x, y) | ({},{})", x, y); if (x < 0.0 || x > width as f64 || y < 0.0 || y > height as f64) { - break; + println!("Discarding star at ({}, {})", x, y); + continue; } // Inverse the magnitude scale (brighter stars have lower magnitudes) @@ -110,23 +114,8 @@ pub fn render_stars( let brightness = (normalized_mag.powf(2.5) * 255.0) as u8; let color = Rgb([brightness, brightness, brightness]); - //img.put_pixel((x + ((width as f64) / 2.0)) as u32, (y + (height as f64) / 2.0) as u32, color); img.put_pixel(x as u32, y as u32, color); } - /*let std_star_coords = stars[0].coords.to_standard(center); - let std_star_mat = SMatrix::::new(std_star_coords.x, std_star_coords.y); - let final_star_pos = z_roll_mat * std_star_mat; - - let x = final_star_pos.x * pixel_ratio_w; - let y = final_star_pos.y * pixel_ratio_h; - - // Inverse the magnitude scale (brighter stars have lower magnitudes) - let normalized_mag = (max_mag - stars[0].mag) / (max_mag - min_mag); - // Apply a non-linear scaling to emphasize brighter stars - let brightness = 255; - let color = Rgb([brightness, brightness, brightness]); -println!("x, y: {}, {}", x, y); - img.put_pixel((x + ((width as f64) / 2.0)) as u32, (y + (height as f64) / 2.0) as u32, color);*/ img } \ No newline at end of file diff --git a/star_map.png b/star_map.png index c924b33e071cd49a147592261f7e38857490cc70..687236cc8fb089ec3ecfe85daab65f1e6d4f67f7 100644 GIT binary patch literal 27418 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
J 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 z zloGmS$G5M(OSwjOG=ax{>@V!y!S8Gtml)^+G{!;+6GY)-7cqZNc&zvRkMR$BEoa(} z{LEO5w)$X_`z_~@A;+a7>7h|iOHY2*ytZLucz1HJC~2w%fFA060`Ayazre6DlyuDo z&ucV^O+5TKUayVFKap>_H~y!zRHspXJ$A*Lby6@V4O#ZX6J#`BLtBZ!hUb9+7QOEM zB$rQDQY)ZkG#(Wp^+VJ>t7i>*a^%CUwYVW4^qsb0Lwa&C?aKGIN2lDZtOSM;aBynL zbJ|wtH=HIbx~FfSMWVTNqK;dk$2wcyI_szhQ68b*TC;EWp3lB>6dXo24b~aXBKRD# z>#V3c{Z#sQG=6p7`y3VE{%z-;`0Ji&-vTvt|utR|ll& z(_E2E)HK@Wfi!X&MuV?tJBFa(L-55$?6Zq(xCnZZ{U;DUxdDMM0J8R@o0xSDA-d{Z z&UO&wC4H=U&pVt_kMAvocZ||)Gb@F{TSh2hS@Q?{yc%DmMN($$mqWW9lqNt{s-*2A5@TC_&Ogf`629gBoFPcZ2EB%bG!s^=voJ5avb@0F{VfDp% zYSZM~^(N!O$j--p*qqBRXe|fd-I( z20W5Rfep`Du+s_f{qIZ-4zIB6rL|zBs9y$Rgml{5DyRCf&OxdOV02K<3KoVv>NlcnH~w*ktT}r(xSm z{eS!!x**k-@_L7#OT;O_#9E!SIza27b z5ST@w8NeN75GbsP|WvQ ztNhyx9}7d${H)Rldim|DKQJ#B~D^?FI5O2A{!ukh$0!ZyCl!#L_zvp`Rn15gv6 z!~nVae`TbJC!5K|j&pf&Itv`8k0h_bL2_J6T6@y6Jpva)?^Y)4;__7^r3+ z&@4Xe-{0(w=fV{TemC^0);mr7AP?E6)?znCzhL<+dEg3Ar}q}pHcYuozi{ea_8X8Q zudkJ=DyHr}_gCPWh!g=rGq`3h{PvFDv_T7Th`!Ya&MKG~h9zKcj8vGK(-pVeGx?1n zXTv$z>I{+HMeK^>9n2@+u%)7sJO=m~YOi?=eHhkbmrWS@amR_8qH(t2(Xbuj#^smq z#ncDP_$PezHMIZ4jfK2=;5FPC?d-)$v?Q-O^`+KjluLAg9k@Aox4&P_B&wxs1A}$%yjQ%;`>-CRqUib4P9DIieYnf-u()c^H*Mp;;zc*MzRD9Xuf9pgiZCX$8bq(kf-uL z2!S{y_{UKHK9#KP?rHg}s|i+JuVtmYXkGqy`!LOH9w|lOxIm`kD$O)7_J>7;PA3n8 zHKns&pq@=L6fkevRDk6!jVqG6lxRI+9u^Ac~ zAb`{~o-)`YBbr}M5~{Nz;!AVBs5!DN==@A-Se({F zl4D^~{@O<*oXTv2FIURF`O^a$OaHZ&``;l0<}aiNDe$d!<6+*h$HWa}xajA2D?m*r2|Y8{~ZYhaZb+Z}OF6wo{9V z&FunM&z>$m5lMZlY(ChI+kru*a4m)fQn-6+Vy)+W$Zul+<{;_e2OlJ16@2z+2z}FN z)ES*oPUw~U?zUEDjvf&WKr3c>4A2qw-(#9qLo?oofxq`C^g`zj2cY=EZAVLJ3ThE{ zQ&KQo8t-wAF#v0Q_;NfWX^mR$ z?*SU)1gLhJTLwcTVr)b*eiYbQx#*qZ;EQQYoH(~?a6^UgWZ9!_JALXd!1~DZ~Y~;R; zTc-6b+4@I@nT)0xwjGLQV;dK*dfN~UZyw&p&d+{o3aybmE~J<{%=|JG)gLb3 zAqQ*Qc65qKP`(CEcJmDRTWXAg)6Oaj5*TV?&-Y8lS&YD~88JxoU zOVJi?ZgO;b6)U}QM#lyh#g}#H!ZJ+PDGqs2oO`H*xsUN5{<5iR<0p7IaT)xOBOG)S zJHf7F(nZ%yK>npnot6=Th2WoV{~cfF+N5sSpTF*2=;x(OBRY%XRJU_d{#KoS#1vwg z#E06L7#==Qi`U8F?T;0pCG&Wsjges9dDs~*e6k)mcH&p=KGSKiadD(N?roUR_S@5K zZ1xKREufB-8+Zz5ahA#Nbwam?oV#&Gt|KDam$E17rsk6m9SQ#f7Q2A0A)|GR?*k}Q z8W9M(oFrwS5RZxcquzjQxBv37mLu_QyZ5yu(rp(k+JA>d_!Ivts+~Gdz%Nbd`Z@!s z=fEa$0K{+FIlIN%db<}%>b49#1HdGk@C^$T#XEx4p#2GWMmqh!tLr~~5?>|_+AL!@ zQ@8e)goB~TL5!Cp;YqJWxH7CDamX`YAOa~a*l&&c$D5b+y?KTw6nn=pq2!%!Jxo)f zc_cLr{R9_-aPEhEA+qIvwB`>wjv(Ia0KbJp?Uo_-RFMe>n2!~`B6J4CCr8}wd>sG_ zsQJE)uF1t} zg`h3xgfZgVzE)vnW>q}n0m>_kyRzJ#90uT5f!83{r#R{ELlwz8ny+Zkvw-c8_tTO- z3Dh|}k>!}$fxN{t!h`4i-1q0*)_qZR#2sxr5do5WiknII{)njAJ&88M_bCcGxl{Z* zT0_3*FGEn#G9rP4EU13zKnowT7)Zx22+)zz>;Y7h*!oe7dPP>_!z+lan9wQ4tz-B6 zw(Wnph+}pb_>4|Fw2j{!^TN@DJq4X*-H3vG#cf^{s3q?-V%nWAd9_>^NZN}rqxHeV zsZvo zO-*Fx&iFeK7ar7tqgaAt-f8Z))MVcp!2;R7+$&+yKoYTLotJ#~yXy-dUP4Rh0KPi( z#sCHANOZ=q;f3T*7a_3Bu7ij&W{(x8-!Xj}9ktAAI4N7OFglHHs{Qqg+rX4_QTas^ z($K^G-3eTcAQf~>%GRhMP6{(}vl6tDhk`<%$+$zSdTQ`r^YdX6(nP!0h79yx%AVHK zm`nkIcNId6c6v)Br^ANnV)UdPtr*yphDKAy?&lz~mbV|l)e?vYZZb!&b{5W&Iye61 z&wuu>a{USLM^+{<{88h0Ehml|b%>a=Bv5mAw%<;X28_=olSyry$WI>WD2S9QhhL3< z3d3DH6E1(Png0CeKP$daRi)3Z!4O>oWQ(Gj+UD4iR&D|1{cQx6N$2G5)cE-Xr0Dk& zL&5KR(Rhiohte(rCioCi5z%rF^-jBUVkwv8x;)c<&fv`|7@Qv=5@6m4)O(9$QAtGL zFWjx1H>?MG&7g^UJ#(9rB_YW7RNvs-asklh;g@>X=x0`)L!xO@GbkZ1h^Ww(BVVP- zVlk=SuPox!^3E{%u=5l))mzA7u7Ec56lkAq-4!$Mf`Y^=vNMGq<>*VgVFam4EFJMK zuXhjwju5PQFiL5HH;XmtCm9VIXy?(#L-yTq(R*`^@A_Eao4pD=ny1b7sR4@o1DC4m zs}}@CBLN87(dtzWZ9;ylD=e()_38Rts1)fU^`pwYYyJSe4TLLsbQjvABuJT^2!{P= zgp%Rcp2tH9YC}m{hzEt3fwn|$*3xZ^#?Ko{`Lg8Od47SIv5Ik6l*b^`Pr_ov8nW^6 zt`Z}N&-kl2(YlA`@!3C)W@~i-lgqbVe$*KZ935o_rrG&-1Bo|>5I&>e@|^uywqr@#&u3WT#NpQcLviFrNxit?J>55H?Z&1U!4!Op75)vnrSv6;NGVKJ7+&a3p~qdDe2FkIR}q~GxebgOiiO;qpvx$gpjL^d zt#Ycrwr`o+xF;0n?zns!$G`KYr|cW`Z-Aj;C>Bjr^}}`F(x>Jg#Ab?1fcu=HNk^!X zgoTqpY+&kK(azd-YB!Q|D1Zp$8pj=KB7wB&uM8#M!DJxjF4HXG*WEc?*%AlU77(4S zP9{(C&gYadtq~0LNHs^hnA2_v%3%IJps51~-f#i4O0EE8vpY$B+U)c=W^&N+fQd8~ zw{qebr~%Y~9H90#3Q+zRWfkPNaSkv|;gBP=gBsE?B(JuHFIK~HL4tN9_uCmTE2E;m zZNo#VgRCMsFbL2jSBVo`E3D}YfI}(|0XeSK4~fHj7wc)8^cpG?hEZcRNN~7`Szsx7q*`wuXmal;F4h|u3l-uc2h*I1z zfivcx^d+#|lX(@Q+92xzBA@9f{uKCPbNpGjH-cX^Tntny6?zatK%Gl6M3IV~7LUuA z^9)O~_V#A}X(LWKEBQzcW7VoPSfF_^ojvA@oX6aydC30sWjHXk}Ky=?2j=|& zF0C0hs?H{zUbOK%O8XV3M-S~l`Py|I8^!^u@vIgwMnGrE&l*1FQbk78qV&<2QM2?u z&N*Gzzm64j;;4`cnY8l=XTByZOW|qY!wsCrsb51$W%%ZmK*PkW|Eytelh-(HYOq(C zI~@UVOu~Alk>~n#m!=&@&g<9`j$977u*_q1rdae1vPd;yO~h$iUHWSDh)kQ2GX@y| zw=yYKe+%lH9C=;+)QLR{SpU$0+}8tK%oO z!*XjQJ;yD`fe}=xG7C$C5A!FodYTn3Q#G^nWmbZ#+&l~!uohS5%G{MxV1m{iixAo3~G)XVGmHoEurU3i!AAE1| zo@@$>q~E79CA5AK4c~H)fm)wHpF`5YRp+yL!|r`0CmZ}UeHy5~h9LRW zlKTo$KCjhaU7IIZY{+NMnsdT))IYTx7H>^pMLWE)w3hNBlevbgXV^vukoeDAHuknQ zm87ruM~8GcDGYlNI(QfI(4P9v^Tfs*gHG)&WC48~wsKE?zf>k>AddhM#*_4ZV8Dct zO}`K}*;TwHEXH7qe9E6yFn{oPgv}6Ca!vHq*fYDtNP>z0V&zN*ulz&OvT>{;Fjn%) zE0=tVt?kLAhv0Q_hA}dAJTuFGfmI?jC~PhK;sA~{W{2+h;R)2Z!LTO{cIX(4Vm*bw zp{oFYL5-$s2992UeE75XaF{S(T>6Q_3h_H;1ec-03%Wvd?Mc=7M#hdD*Q`c8D5V!N46ugU?=y+LxW@vsP zYP?dq?g-gmoUjFPnB!<42G&={JclVmn~5`20+f&Rd*_U~bid_xA;Dyqcz!V8LG?$i zq};XSeS^A11i!A(1pX<8&TOx&(S(hN(?tph$Dq=x*ERVB^|QKbgQ zc1n_xr!$jAko}ZxwjBCs>FE;JoLXE;jpmeY|dNrAy^+gi&I`@ z@n{>J#$&qSiTN~Ub1=y}pvjgtNbY{r6t=Q6+5Fqra(evF&X#i^#_=G^(LRk|ONqQ@ zUzv*O5cE_*JVF{^qV@fHtA8}6P^!pdx%boQ-&mpoLNQjpna)5g6I8Z4)eEa`wY=DK z#p$o|zYp;BCN(~8xTI8d9pfL#fF^U%A6`Sjm}@=)YQng^^Xp4IM6K?OF{`3u*P zX@Qz&pf@#o6vJ~dwT$=J6133W@k;lp^MJ2Q2F`q_Z2)|0t|FW5)H zAtw%nN7oD4hNTujte!0v1+pc5EY64)fLP2RE-EAD0a`8>^}y)(F@ol@h#oEdQnq2) z|0U?gFcw?>-Qqv^(N7tyJh$;^UqF^RH^=MSqgXsG2&8BtVD<=!T6?t0OlMarP%Wfl z3I7Nr$f@wm4WFCSf##p2i~YZ_%V6Xy@*$5t!~ep#2I5rMKN|FDz!{4*Modh1h_38i zQ;(gC1{l-_EK$DUQ=mck9U8w{kSa}p^i~0L4y_5? zqI?dxCAK19*1_iC+yl;~_*_OOybSp!u{{7n^VcFrQ*$H^m0TNKb}o|C|ogZ`kG4_w~aL?W%n;CGxpHeqTo>kC)! z2^K`Z7ajr(#7q%_knpSNbt6WBo#B_sMGAhyRSF;lGP;o%qn*%yjeCsFm^3Dv;NaYl z8;Etx^2i;hnm}vIG;{o!bEk`_T!aB>jGy=ZbNUnJ3lzy8TR6;107Au2;q)|K^>z$#&>YZ``2la06j&r z?ps)HhDuSZV0BpxP&D3<2xVg%y0Ew`@bsg58p8FWkoaF1iM0L(p3IqPoTrJ~OE9e%yl9*M;{G2yTlUJPKtB&27P-dgMlpfXL z55L;uLJ26nA)5WQ&XyNP`;y8{)}@IexsOe&P(i4~#Td3??N{_a#j;@g{Iu={?^u96 z{Q1@+8KlM>An&AHNQ>6Rm!MRF#NzSFWQC=Ua8ethI2bE8crkqBAo!W&?HMqXAKI&R zw#k7`^Pr_wgppNo2F2fce<-;bzcEnjz#(JO24N zvD4|PWV@TdGdbr|8M;sv$aM|07D|_696?M*{A_j zCyx5PtKa-xFK5)jud@u5z!(gqg$wUi)Zye%X*_JKSf#_}*$zM|BPsNY-TNx1k@v-m z$kJP2r{QA$0<=9HQ&0^!wxe~VJ#azdw9FYz?h=HAXHN%39$Bx-1Wvud(wqHjH+?sw zyU_WaqFkD80EZieGeH}7gh*S{2P~cyvF~2EyU7;1LRSWWdOI^97haMI-6m2_o*OA= z(0)K7W^&5yh!ZAkoN zrm!KT=Cc@hY-_h5r_+uU8RhMZXD$~ohD1(mArkWGv{jn{YeWWrZ~100MLWlEa&K*X z;C${@!79K*h>_b8y2BERJZupuz6oqPtbA~^6E3x_(F*xPw)<(JyT##wbM@6oqH``Y z(ZLHl0%ktX2vbr9xMxR60DPKM83SO2ro=L-7t}5|z=j#dH4w&d>4pP;SMDGhQAQz+ z0|kwi!O4?lp&CX`C(N)t@m=CauyH)8bwV<>TFYiD4j?3p1g=hn75bBk!@j|s>MiJK zZBILg2tsa$+G}HyW&1JbR`IqEC!>m=IpFuAU#v%6j%)asds4+f%X>Rn@Cyu)E8}p7CxCnoM5F{2}^zi8=%yv)-)T2?d0;$}a-?)Gbj;HBNx=j%bQcqKvcWhCqm3R8SbGRtAR- zOw`?r@0&8&E>%UkOa%ItH_+>B`6V+MO}Q<+kq1h#P3 z0UcpxZ~8Jo1M~7Nor9M}SNB%3A^>XOO`XK!un|E9#b}W4JoBz|b_*vcluC10JYf}c z+;L#uArTD7j&Ng1IxvIW0zsxk;b5gC=tV%v1FPPqrjP)$Su%o_=`3G(MEJq$2`;K0 z17E5ZJ^*e_>j7<6_SIL6Z}2Mvw{D)nMdp>66Y6lmgUL)$$6MzDc-OH8oC^U&9hj1P zw9k)gftbTm;Qw7aXNF}maEgXc#xm*ww}8{rI&R!Euo(!*o4{9M3tG$*J+X+f9k!Q* z=rxBi1w~2Y%iI?XE62XV&;)(>YVL6flOIUwz-2-BiR&2XaLL z>CQPgjPLy@u$QJOG>n;&#A!gKq|TvX{n6z|Y7tMy+Nlbl^Zn`8@kU+`$%K zc8agPcK+w$_2;bJQE=sjdK*$8a=ZJ6QMZyL>Ec3bw9=>!M4*+;_?gV0XB=Y3`?Z_p#Dl zB=Rfpuv>BZ6UTB1dDQCEA&s6smcy3S@u|Kwi~|VCt$E_9DGi3n$2Q{^2m(GgiqfO= zG;S$L1wr|QTD7H-a;7s&9^X;Jb8Hi4-T13u8`%m?MA~Zqw``^1WJxz{y|&gGR=HaFG~bQs>PQNXE-$^&n!%;lmGbaVxbciuBMdgaTU@U*uktO1VaT z5G5Kvod#Y;VaS&I>PjrAFY?YnMAHHv1+r%-kNZ2whqfXAjps2qQj+!e<4ksI)WWO; z%lH z#>$+@sEUKX`S_-ZHr+60Hry?U%LUAt$~EUXBLVl4V>utF?D>Z^daA+aPnpevVH=S) zEGFx4G?Qgnj{j~ywN>@z2aKS(moP~Ob*p(8NE+f1)ebK&k0ruDV7!Hg77zBzJT8PeF6o2^EybaB^YHJ4&?~HOi)ykZ z12eLXv;+ceK`j_jM|&2y<1yNoby4OMHh#A5bXOF74%3{k@Rb-xwP9nMfrPyGFPj0b(^ zf%B3Vla_~_I}2^(>1h0@7@^YzA26hy9Wtb%GKt0)IvG@s)$OnTUCW(v+aX5swZBe4 zrXkmK#S4RLGkXp!tl7tpWg{Jb)5Bze0N0^PsJ5SK+%&%bQ+DKfDuD)gH;G+$@0uWR zfRKIVg)kjNE49y$IeVp`ghX@uS+Ls~%h5yOpHKC`lIMV+6LfGAbe+E1Yi*9~h<9Xc zDprj~xn$kO>yq^8j#otyqleDZ0tNo1^KEvm*?N4wk?(qCa*V-!d0y+{_(76+6K074 z#d(S8rv|x3NVz)vY+kW+>BL_LH&!~0BCS9%^TGB_U&N={pO(EM(}^!u)6?g3v$QQd znon2qrx@LobejNZX6~wXC;}AJf*y<3*=1#M6Jh9}o_1%$=e2FRMqDwHPQW}x26q%% zwOj(6uo&Qdb!gyk9H4X^lSUrWJrrw9r}$J6u2A$tzM*;^yPjD=APf4ePQhQLZWTS` zFnoIK^kr6JHN50-=Vo4d$u=e%av4xA1_e#uNZLl!S2EpTD~i(ME>9kT?NjfOAa^G)f+u5NsJ_3G8!o9j3kw=i)y45UK)_h?4#%w4`TYfsW}QMgFP z@bh6^Ytwxa7a`^wj8WjY;yOnbv1~bL*Hlk8VsT(8CyfOhmLC*}WK*PQaA9&HZ|HUW z*tZDf<@eJpE2y$BdF5T1@zz$dUTSBwa_RfQWFa!XlS(N|SlD4{xJ~f(`F2Y=?b)K5 z)^GD3)H7Iy`?-g4c~7qS>*MRFhAfbn#G0VSm#08w|G^gQSdXI^6WjfMTq{(GizUY- z_)XK)RXzEbjN`Z1rQe6qDv~KWfuPw?UT{&I!Hco#wN$2KS52GSy|s2L~?X zM78C-a9XncY9^t-TY2kec6`8i$UMgF!$-CaJC*A{6~9S^o0U#PNnPH)*HIpV)zR9h z5cVvMqX;Jl#w)xUuEB=JmL}dkj2~tk|Az?NQ8gC)UYac$GU*g3(=#%(Vp`&T!}-fF z)c-Wtqu`Zh7vJ&o|E`}L^pxTz51mie%Yg2gk2Yt%$~j*erl;F&=TQ43 zdKfRDCQtmv7pd#cnsxkA=0BW*_6O=YGNPuiXu=-&9cUa_q~t8E1X-hjG8{d#GGiPL zNHqFU@U>&YbSf>EX3t4^T$0f{PvHWJ8>PKwOFqsW@tm!`_=@gxTSOzi=_S&LAlayt zd@=$6vdcnpi4}2M&hk~hGECimT#ldLzPA4e_s%7FJBewV7jJF}`^3{QZ`9)&sUou5I+`JxMB zEBNwV^E?!8j}?^eB6Th}P_O?$&Bes%m6pRl)p<&&@RA)TMJXrbT)_~tc2s!|8U=(c zL<%7|dNEMT`9{e123V3bySgg3#waI?wCj`nS{DnWMEI@SQ)hAu%jOl;Efzn?(OZ46 z8clUc3x?sD>?0U}aQvN*TuyVm4EIF=p{WGnB^D-iDNxPHM)T@89%jXo3Z_|vFKtU| zLDo+5bJ=9pPS?FL!|0U zpCIEOcxZ%6OGcjLIH;VOsC-9XLpy3i<|(HYa@hKT5?;G5b1|}FZGYW$&{B?)>NF`* zk~FGL_TZ8gxeZHz*JbhhUMzDj|Dk*3urX8}kW1G`taeU+I=@+1kj7mBcxYIpJd!wT z7(gJ3Oc0rBmB=K%X))}pnxwV2c!IXCjIAoHNwpj75i|?tPWPLECm-E(I)<=v!-Bme zSEoN*kOV*UE5=_Gz170BUyxmD4jkW)a}%Nm$QUBh7%WX=i#cT<~z z5DAFt%65Ta4J=#cTl$Oj?3@4{iaJS_nZ;FLzhS?%{FVyv-Rf~l=u0Pl zT&JNru7&`4pFKTh#b9IV;5H!70^S35(U^YN7@PW?a6AC<~vo6*PRzp@W*H()G?231PAhM&2=+fWS?P^)OcoXMdgCJi0o2bMJs@ z{XxzO)faHd9nPlksJNk?uQIQ6;1c-#>Uz^d>R`DC)!4?hHIf4mt>MO^?0% zk(}jp#Ge4PcN&H81rI|9B;izOi?=eJ+3&vkY4G#y85m=P#)ZnZ4`=W;xgU>>!3Q(u z5pFs3oAA;3<;bNqD8pXqSRlb>-y?g;sUCmN#3fEln&e6AwrsfyI*I<;y2Vg+wt}&l zY|;+JAh|O=!}nP8+e0)^Z{`vf=hK2j1G5ataM8AQXdn${WY~-@h4eZCvX@wUsdu=@ zxrP3XA~g_Dd9{3;&@hZz!-fn;xVC3R%7sHYPNWj^v98G*tO<;1~P6^6LHAExdMmI0!&cz&K3e^MH2WZDxrJXI-{&2E94#kZ}|~8=B4QWU17%uK2Q)bo7@X zuduHpmX-ADP502dFJxRd)iXSL+2+CN##=1AvwLZ(i^{9tSOzK_H_552UdU3kmj~N@ zcbK`Zzc{Y3ThUA)g4-s}22#CjW(#f(4C}boI@VN<<1bmS6`S~Ka+LWA5hG@F6&o4g z_}wu~JwTd@0k~zbo^zEyWUXClDD%63Lo}cObKIdb*;$#FEK6F`@-ZRO z%zQuq6?F!MQ!$2iY(?JF;r6x6dZg5zaImSpTYeP9+xiqjbbW168VFk+p45YSymj4NwR?7S?#ePmw&WGPn2jFAD6QyA~aOaqlzSxxr=9_uft{Ycl94Np(h!3amtV7cKYI0X5H8=H$=e;moS;}0AmYlM9-PC{QJ zx&?pm*oJA0QB6$f<&X6Ka~6b6(e=z{!F55_-g-;fF6@5_3h$F89d9IKY}e<7XnaHr zvpHsUYtYvG7#qnihk!$W0nc^bz~(Q&G*|($ZWfrgbxy1skKyQrL~*PGK-wd#!(D6X zf@H0Lzra^J3>rQsreiF}-VT1iv1XCJ4kJPLi^gL#m;&~qxdBidS6A!c6A}m@%<_vO zC5PgHk@Q6#>O#$or1y=%&Wu2~rWn0vgcp}KtjK;!s{*ewL>|ZsnQIdDy3yQ8e0oVM zPKN&7cy}=)5eQS9_vBV4@`O3lz2wr286t>UG6*PFzYgd>c>5qbwyH&sy4(xbQew5- zlH9ea*?E+9`NY_W0jyRAvl~#r$VBK>*X-HMA0V5Xn=Lgj!U+ewit={t4t zhikKU{D&WYc~liODn2gT82V~UJ43^Iim_Pwn385^MXfk)?G)A-&$RRLJVg|4{6z(u zOutMlO#nW6l1b4L_6~;b(F%wzw4Ip2Sc{rOlo=g`RNLSeCOVTI2^iwu zf@@?v366sQMAehgk<@Z^E0%sb@kT{bVqhmUln~Z|Ibn$#V0(NmnkK_nLR4!^DR279 zGTEuh$MRh^_K3gbbbxa|osg7PakmcKfLE?L=J$xh@vd?tD(`?-J8VB!WgkYAO7RXFi*^Y!@X|0gry zVsn4H&nVOrZ8-T7Q=Kr>@{4lWlHSAUGOWpmJ?(KCfZB84g19|g=hIw_%JZ@y&_mEc zZVYcq%w%S)>$?JlcK2F7ow=C>)`-~O(6kKoIH#s8k3U@Vms=VwnlpL=U^04FLmc}~ zNi?$M_8@8ILuflE_C#4Zu}%(7YCC21J(p>z7XNY(kAay#GLWqpB&|35NfV^_d+HQ)?v2HO^c3p4vS%ItAC1_R(m;n{Kr+g5ffC(Hta35{0-| z=pDaD!@`c+;1q&Vl)DI$1>bh((K++?HgrvKhx9GO3a#)Ex^QzcGUeuxyWh8!SQi=q z`2aMry~YlPp1D_aFAjHhvNLy3Kb}Pm+l!%0$ zELqE0W07+YDn}<>lsIxZcsveQc>25~`;rD`ay5r-A4+Ey)Q;e3t$#mw2&WI=PyN@F zx0!4~&>wT?(Yx0MUj}C-zjbipgi7R{y8KsZ|AE81t79}?$C#K1lTC;F612Z5X0`af z(GO$!AY211)0mJ8VE#vJsdUHUOWhPMtL=RkPy4G;FZb*#E zRF=T2@n^gmw3UQa3OE^CxEn`J6^jJs@OOl%fEEX(iMg?ODnG$p%B8AT%s(&UIXVL% zWH6D?(hRlS{M*Y9XU32a>XlX(RA|)pR+n42(DLk*7lh zHh7+0y#7OLQ$9$+xJMuch_C-%K!`czZb>5s$~icII!Hv;N6Ql)aCh8{F5DTP}Y zw?I$0o)n=RzT70bJ@lf;>E^;qK(cYHi3$N0Zgg56i*pL2=C|9aq znFSS;{!$*`R(!TTRDuDo9@E;v=@TO=&wQFC&z-n+(PE>u;b7ate$wA!Nk;fNx^-Tz zbK%q86oghDbkOai#H-2}DW(`HB%4`MDp0;B8a_M=7zkRLRTLI{g*w^(B2>|O;&A?m zmbKh$gID=PUS7*-KU5^Ds;k+~B?coaD#7^tAzon~OoI`3LFT(ts+Kv$lQDL6!{$b_Ch!>b77paIu2WZYpj;ITY%;z06B!^(h6{UoJ4;9JcC^#AZ%sz76y7 z>f`SC?dS~oiireTR4qEd1MxiF?6p_vk;rvkubp>9d!4+5;$LX);c~cNag&)-V7at0 zJ^rf7B@6j$<+ zFiFZKb+ESVzt6GX_KD$fu;dsgFI2X*9MN1V{HIoZa;1EaENGCrw%BASMra!4GGz6{Pw!zZRGL6=_x zMJ;@I_dIzpAC7b>Xwd+p+(oWkOcr28E6q|dK?KG%6fmgB?~)hE87jw(FO8(NmrTIu zt&IHZX1aSPy&KmGq&1xUYQ*Kd2sBzF(4F&|KF*`R4=o})Pl`#6bU6JJmnd46;R>Un zVH!ZJcd~R!x>A8CQhUin{199do}$c204n;@pU!#Ep}-Z#rCC^b^78SPuM$%nID6N* zxB$Vuj{~3CKF4IRFo~+~h6x2FGf!jNG-!gMQd0K?Q9HoXj0g~z5z zQov(KG(ZWpDuz)2tF0$(i1#Kx1PE&{v{^*TMHurrHsC=#kW0(l-04&ecNq_w+p&*4 z?!l17RN2!~A0MZ513IK0{L~m#v@!VM?M`mP*^dksB;z-7lhV-ldj=EsD|Vtw!~)b7vG>uy~glKTfotzl(JyR{<*ef8UPo<=txpvI0)klni|Jc|7>HvmLp zTUD}X z-SB|^~dv%!~?E0&Ohcc+9txrswUF^ZC6V>NpHD0N#VWrO;x+ zl?+a~h7KN^2Z3iD0EicKrU~B~cp1rkNSC?HM*jD*E!kB?MUiT+jd}k1QLHlA50tt> z@!ne8%pC*?nxq+YfocnvFlYR}{D7;g!MPDcoMaCZjYJKzZE0Jb=MzA(1g>&POr^Z$ zn)&P1RjQC;I9Ec!x?%t=er3i%h_E+@W-N;<3ieonaYd{zVG4O<8Ack!l)hm(0zZgz zEG=1*&{ydfcX-n63TLo7EbT_J9*to?m5e>G1@&P5*r8aj68dR&8$Yr*UDYO1kj-F5 zuwiV&uuNl5eP^6uBP2B*FCGi8@$vfrkn-;()LS2e?kdv|*9TP;UK{Of80ec{PKYP( z*P%I0XDHjZ zHga2GlJQJ;o$D-B&YIiY13`I{kynlPYPj)xCJlV<9;QpO-53PH_dc8{6(=Gc(6_&B z8Be|JfK~vO#ogrl2Hul9%ibQNERK$W4vIKKHY(Pc$DA%;{BIL395R>RD&zO~nfidA zxbWKe9lBe66T;TYThURN5I@jq8CVtSU&z&K_^vT>VYLT(ItNwV%5mZj^zELQ9$SlB zu|Ty=bjIbP&VVeNQ+(dq&-CZlDN1AfhZK-+SPQKr^h(Rawv=oDz5%TRM|poEa)KK7 zkkr2CXsCuCy-)W_zc97h!NIyRtVx;dVz|7o##V%_?F-vhyCQZ)&Ze61{1-P_-iK!& zg8M`@bQnhdIqAR;|L1>1xpiu}F=kF2jHcS~#~%fIRk6Uxtd`@~Ru(TY&4NyA94maf z7i|D-nLw%2S&uC3{$<%!N5lgl>vtTLwewapEAV^2n$8L_%wGNz zz@O8Y;idtiuI%{2>95jK&7!s&g948%9lZ`T_wPE^dl<@mQ1l#+ffcxv7R}+wcYSdA zVuFMI(33~~9_|{{fa9mlV) zk7hVR=V^ozIGbe}d(;39Vf;@`Q_}69{eryqN(G@S0hb}pJe7w3`tveydMCG1O`=h~ z9BkeCKJ|M_eDxZz*ub~da=18!=-&#Zx12E>lRBgonaFS2q(`f!_dkX!+5g1}2>duNN@8~}5nU39P=R8WU`6Vuzg479!FirClRv;5LL*HV@oryI#k4C+=FXEJ{W-=f0mt=C9836zeZ{oN_yI~%J*Uo#uEgwLuIpB z;Z{D0;<1$<#Cf$ODWpD!k&ynE!s)A)Rf!aA4z<|xMkn;MY!lmx!R?{Zjb+&fpY0QmSRTCfHZYl*rJ zf{x=HTEQVD@(E;(cNW;m8@$S>6||j~R@yhl04={}IrJ>w9x}TPb7C7LDNdqu-<6lD%rC*x>Q-Yc}Rh; z9-3d|_vJ)uhFUL6R+|MyAM@|#YLz664g4v-?UpAK&i*{?l#adgac@6Zd`6yf!4L#C zJu^@Mj~mZy38f!hI{KZD>?3kowev^e=vJEXgqX(VpW=oS)iw1Lu{fK;*m#oUrP75s zq{_L}^_|mh?FEzft<*(#-10=S+qw>?g76Z%$FxnhPzFC}e8Pvz*|Sd6IsVFBhHR8d ztFqfeJ{=FznWxN~ssvsxEGt9BV-Iz3p|`i^ey#M20lJ%ZHM4tx@#v`;3% zf`vsq!>xJY+8{62aIOC5D4F5kj$%HhKw$BC)K<>Pu}Yy?D>9%;qNM?5C|FM*LQ!iv zNAz3AHvts(+Vps@CWz%<`{?4x51t3{OIZiE+~N^c_!4Q2Bw#ldYqRxlzx}1DoySvz z=Da`6F?1U6kz9s&V@x?V9VrEcYWZB6B?p=i54U~rk0!I zN5=`bsk%t>pYp6gu;ZcnH%MNdxJ>Ei{{pz00_m{f&mMC+52dpmxeqZwG0l1?EKYWI z`*hd!e(rc@#qA^3V9TAh8v2Mzg1;z`o7WQfi??hr=i*lG|6J^AO(Qs-NzWtFhMV&g ziF4E;WSs6LQ1G&ZqN;q?o^gT92i;-{1yw213;EQ8G7zk^grCpQb)EXWhlT~vTt=xrZ zj+wdffp4$WI3R4i6EjSo#Y(|eGb=dWVb|dWpL1ivptR(va#G41vFnR*`(Nad9c>Ow z2C9MVXmS=DyBfB3!mJq=({f9kL*Y^hNA&hza8AJy;5d7!OosFL4|cE}{)7peb8%Vl zLRBpWV}tVOeIuj!C<=sE303mMiH~EMQ{-b<`@^af&f{)Ox^CC`v3-;G8fqP75E}t{ zdpf|8rC_EeCOub+g)|%uf<}cc>jy9huII_DnV5rM;tIdxE!dvQp~8F#sSV^nt-IS} z@^Q%n=OIBc6GSzR)fT5l1T2vYbQGRL7hQYpwUA;={|R{%?2S*=T>#n@3UB%hSg;NA zZG7(Kcc{XIUGBR)@P`*acEK61_FyR0h}*n|*$zDBV7BHp49XlFzDsyEOqR}`@Gr&H z!ctu|jApK&_20y9!gzx5OT(zpB6rAU{6ap%&Zd5b&bjFlKA#CJlbr9#<3JdOkQ!bH zG(hTkHAKK`F#;r()Z92L_dmb$+zfrWZ*d?80A+ne7b1N2ko{zOA!z%xgYVFFEc;eQ zjbpzC>_oWK?3C1%(vdp+(y3VIa74a#v6@v~BjL62e#!!Aso@UQspD;qP(dVH5F$45 zS|H$eRn?PmwZrHZcxzAfW!A|eS^46->lwU*x{CA}bu6sHQYZ3i<(b6~64zft^Df=82LhP+znS<_=F&sve0*FU@-Q#x3wk&>RL^_W0k z{-0PW>!%QNHszI6+y;Akq~U=VB$^V%6cKB7L(Nm8=I%|qqr$nkR&{QQTVUr>uw>-E zWbH~Vh%>Hvh1XL#W3#}(6XwW8*$63x=Yef`|9y&ZX_nb5jft?Vo(=Q!X11PdsvC=g zqqw9Fx-vBBQ>$9dRF`hc;YW}@UE~K7DMrEE^+Ej5;%=V$iMhdjG1OO8YPO~H-)K_K zl;x5Io~ZMEo7uwxbd;8VW=KF2I4p%4OMtGegtM1xJjPqKfBwaCyf@3JN{oa5{MfW4 zsQ-N18v9BiKuoxlUojh*vT-pph z{lcz*D8x6br4KNT;8>?Ey&=diKTC=N z*XGqGTr)|!T7c~$99cX}Kt$(yh;z=Zf+AAs!FLu}|IblUS7s>a)fk=!-wfpe7`F3A zsv`WTx`R6{;<#>jjb+3A-yIz=u`KDHa>2vc)^N{u9qNJ2r=cy!Uhuz0a}Jug#9T`_ z)Q7>3e&I!04pUAeKj4T?Umza zE}AoaLlx)9G@Z&ho+>q#&1xh}ft%(R1Gl^DeNJkjR9tL7jK2E79G28yE+$``#SsO& z2EIBT>b97ty~5=1)WiJH!?rXU{+0Ise)`6~*RP+*FIoR?KDU-rMe7QFRc&v}ygKLT zyJuxNpO7A_2e-bscqRfoU{sB{M7)X0m*Wk_ec!qF9Mu!Fjw|MkOFrSABmzTLf?G9p zUUOGxv-`+Z0Z-w(Nj?HGUc*T5$3nC4kJfyR$?Om!8!q5x2SFO_2|9EZ#~_Xg7sviv z;W5p|(+o+vRUD}Jt7&%4$f;>y>p26hRI%*AW&u#)`N?292aa%ZwC&DNh42%a5kqf4 zQC>TD$c66=XM`!U%Xpm~R-9ICdc!zcpkB0K8gk*XXQ6-^zlZng-Wf&^crtrCLc)aO zbn>?B!yd__@+4D28T!%>b3}z8P0_!2LpSbxSlYPU@$inH=^tMFNs1@dNVBBqrh(?# z;OW5=Y#?Zl{YW7f*6X17i{?iX>10i=U`t84qwi5-4kV z3-B=Mz?D{UUpn_l=ax11m3=QiE@VQ_JTD0a^^jbvYEb?C1Zz@gYMsO&tlgQZ< zdh*+OCY9L~8%UmZ&y6Oe?sI$|7F?6DgO2#u<3>R#zF;LHb_jMgK|I5kNsf5sD!w{h zY9_~_HA2hQWHH2xbEIMaQ3K%t$|5H&2nyh^S|U)bJ5=3Zp8hAeVtq0DdvfFkiVacsoIdmC)9Ad`mR@QuoQiuWO>lD zID2@=LB_Ptp-$u6Xy(ieA_cET4eO={al>E?ID;rYqzq~;+uNhqtlFW46cavx^SDig z8!05XW8y1Xb70Wu5gOerN+C>`536Mvb>qv|xSu$mb|{NwdOI3`7pAr9`(26{65A}^Mw>&e9zJqDsyfH|Uv1sv$)E=p#zZfM#)O1#563CK((^THjK_5xzkBmQB>Tx zM%VWRz_$slj)|_OZB2%v^vRh@I1}$lC|VDo4VfRZNjvtQtY#iV{kr@cXHomH5kg*G zR9bmUXVaP2dDo%Y8pYgTiYW2!N3>$TE}N(s<0Ch*t4twV?k(RZMf&g18SoTaZi=tZ zKj7OLFwJke=d5c<%n{2>;9}m)8nALsOS7#!@;i)qj*v!{b#+OWyoy%{Fh&{AI?Dr% z>1bk~R%ygp#1{?=PNU#DPopE*!+{Pui4fJCQSK#q?}x%8dy1JAC+A;S`;yXo)7jZ! z-N{uB$YZlaGi==bH$U?!_0c<*%8BR096HThS+!Qn&+=n&opZ|3+nQm+=nEnC8|clX zu)Y(>%I;ZT$0?AY54}O9mh-<%*%?Hk3ZpkKku`*@B4ayhr*p}@x!6p6@;X8aeP}n3 z!Is-l6GLEug=?r}%j(bW(|H;vB}=RiM|~H94PK6g-x3Px+X1aAgS{uXsJ{4}D+DGf z^H2-)dkANt!`07W_=3rC{g*RHnC^e=6eJ&*!QD%lf;t;?s=V^^7;^tb99LvcqTSa<+vW?n6WNxWH@^R)8tNvr2H19{TVt_=)ZXNHF7W>m)AYll451 z%EE|0JodxGW60@8qy7fJO*bm8jb z<~m5URvC_=m-#&WRX%iFHZ`O`-Vad)oWluGB)&zVD7ZBU0*T@UJhYlAz0Vpc4B9jh zP+tRsbu8t|Y(f^eunxUto+?D17#rZ|+g=z%QbO15`c_d&PnH@yl|j0`yHI(%(>~|| zr}Zvot5_(+w}-Ie(`MPQW|iZw_{(8DkYFw0DEg9!2@cem#V~YM7+p6jo?vnMzw#yb z@1<<;Q4GIW-@xrC30r%yOF|T{t00YptSpL!Jy;pfJd`CESWGj^VKV0kG&cgc5U+6T z+=yp^Wh~N`T1y>LzgM@Ndc+?XFUuQem)XLxZ+-(P-6+8*R4MYAUWi{khu$S5-=W)y zFz?(~lf8(N>&u;l*muxHf0BJ(8MJM&{K)a`BwxE&-y;aGXdH=et#rs;X#B;02m97uJZv zLg4_4A$8Ufap4!5fRUKuCNYEN`TBry%!Xx|)do&8S}z7kwn2wfoU}r5!RcU#tADSs zKhJsfm~~s&2ZcZ4U^cQ7d<4ZcF#wS2I8~wpxJ2cUoLa&SV7ie?MA>8^z|YtSMuQ(* z_k`QKyn&Wr^59u~>0)c>AEQg=F-H|yc(oZPHTkCk;A4!KrHYA9!!j^f_gC)C=B$g0 z%60v}KrIQfaK6w`tpHjmDa(?v@Pr!n3GL5;)E2M~(LDdn<1JsSrLZ#6_UT(JfC=Dj z)wdaT1b?x3OYUz}bE!??vXN9)coWUzTKu>auS8ZBlpwcB*_i8MDoIQ2=rrP)sI?L^5*_Z}C!&C&p<8Y^Eau z-77bC%c58~sh#?{K^ILc@@EOxIw!|V-tkb*O*otRxH|&qgQyf=r3Ig(UQzSqm&{km z2XO$Q;|jf3!wJbVOZGx=2XYSaiNDsog^iaLz^VMDL4nrx%>mX&ln)Ja|Gei(iiCpz zoYXNIGsj{pOD;)7a7sB){zfZXM%cxYRiw!k`k?Q`HL~o2A(t%0@20c5Lxt1i#w*-D$R>$p;&Vn{6F=6{?_?DX8mW9zs4MSPPO;g$-rxaAO<%mH? zz}KR)_qI^u9h}V+E)6MI@b1TQ^qHFYuEmMlCq<}oa)8dcTL+~2DbGNG1Yvl5PLbv&+mQ!0}zP zMgTJz2u#umoahKr53^Ifw1GH#-tw#*Al4qk9fh=Ncq%7Sr4$6_GW>7qU!tF+Ld!U- zqi&;f)QNO204|0SVMMQ3F_Luk&hWMXUO9JUtpVjT>=V9!WqOQ^=dj}MTm!}lQ|Dqj ztUDccaeVZM{7A4k&Gc2=sPSF!s`lZ|sAzCH?_kQ6Cfexa8t=E;wAsDlxcKWbqN!Me zt1qI&JW^AHr^eN-m;t{N)QTaWnVm7R9x%A+&OSL=Z z=a5mU##-)_uI~G*IW?l0d3(H2n;N*`c%SoO#Jtb2yO?O3L&JvQ;A+HPDyQ)?+DJ%9 zU#79l&p%niN?7e>bjk$X`TuLyIO;>hQG>)Uk0T+ei2VX+U03sA9vX$SXrT;(|$!pKX+qLCDgWA`uhEYkkS*2 zyEoy**AD8Y!eP|jxSv7kvrxacm4&cl5JN&ID74J;@5a>y_bpIAI+F&o8#JQRU8eop zw#KYWx)dkk_D56g9vnBeK;TDkelN&79haj4e)~z|K}M07;mjg~35#`N=l=M|KLR4M z*tua5UTj|04>G)dAlpKE&g5@DAByfOI<3T$z{~fE#%pQ({1`t+VTYywQ%yb7Q3#`e zSk}+k2Z}u2UyN^fs3){vHetfATaP21(MhpWc$MyGQ;>@)1z~60G#wlSG=yIIE*gzy z7Opij>=NfpCE)?)3l;(Tt;xUAjq2aud3LWVF;^2_=PHOYx`7G{aC_RWdJ*5VQF~wX zU5%?8WiRA6)ri#L9?{G0C~Pchga;6CJHFMs$K+bYhb>94O_ z_j`&!dy?}fEWe1`?yZS{<49zv(A=md@uXjr*E2hGYXO=v$d| z*_#qj1p=|tIg#mEk3Dt*a!a;m<527t?G*v!JbqNq;P!bu&7~F9C5~wvt_U!D+tzrrEtG2 zluB@0<-{1SS4+`i>bfVpg>L?L#Z$kkjUS%!!I%0*Ww-pSP3;SZedo{r`+f098)q?I z9!N4T9q%Co2@375xqOci1{)Rm-g(^fX~`doE7sL8Qc5ph%;5JLQ7U;LF*djSck?EK zjU!ttfvqP50W_g^tE^H-b^RJ@pdqUP5>)@?gnT~X>QK23u##ov=qx`;(LwAH0*Ckc zIyOj2u;=H_9>l04%FiWLE2{1gp$^0{4L>JxxbEM)3_L7FL6^Wz&T4ebucJ9l)xmc|*5RWLnQ8apF0neF zdv>AB3kIxC# z5xoBs1Vvluyd0~llwvH(;WSQ43tI$G$omhdOpYt#-)^Z^DUB(vQ=BnC2p8{v_hkYX z#UVztTolK~vI@^vo6vZRIYTanemX|*P`a)c9mr0*48JM$xmRk+I5+M$eDq4O;8ob3 z>9R76pvT3GaSg4_sM0QHfu$J#Nbr_OM00Go%x$w>m6@+SLU6)V@ZAuD#`sdEQQtm z3_naWqA=n3h>;!bq_;Arj;$YnxaHtI!E9j9EOO=sGewJLPu2%H}Cs4#p>D%uO+}I zkMsPJ=gV^}sC~w*clHjFK!BF-2lF5`J08M9Mv2?rw&^t=Opwk^CXex$*G@vvi4f|( zQ$<+fT1ebS`$=xXJOOu=9TvF@`&9A1BzCv_NBqhh+=tm}c?gshF+S+f@`WBczY!3_ zvilqu#MxD9v+ZdfQ@;&%)ToCiAbUv`o1!3&IXg zE*MuZ|9Sq3<8*LiX<4AJ0D7T;2|5nIH4Q}D@2-0SwWUF8i*SaN#{*d5fLQ)-oBUwC zL$;Zo{d z%C`@*L!T|66E~ZaQu*SMv;kC% z)r;CT4|-G%dMI zFw{1%sAri$(fW!giamn>*jx1{I<(Fpp5M6n- zpRnmUtcRe7&RJa_@JE0L6pn4h<6N%LwxJ`B5GEYPjUrnqBoUo(oSyp@EL^ZYQy-|p z1d=#vJwf@G{R7Ql;jNNPv|z;IDJ?Ar%T-JgWf{OCBB*Ir$MP+am?vY-8A4I zo2K$X3McXlwlrwLy6LMDLIyqGhOUhS;|EZHy1IV(ew*m74SPRl1+QiiO&}mF_s)TsA4S#5VmTjKCN2lNxeJtDT-l*c^jy0 zBBByYn3djRH}Fx_ErKp|GYf(S11}f96s=5H!tf#q1ZW#Il5Us#9bkO&E#MAj5eV?YETNpZ^_L$w;?z1F!K>n#^Qn(7-k+yey29rxrCeLS zDlr@8b)O+`E)Ly<<2ug`%q+&NH3`kY$SJ3C^kfpgJ~n!fBCQ&A<=Dc!phPT)C;aoW zEjg{+bV*P_OFLGbsl{Q}P+$z5OP2SEE~~{uTuz+Ev9SD8cVE9Ez<|z}+d(K|GFaTr znpY&{0b5>LjvS^x-?s?XH2}20T)$W(DQovt+3QtbVFo7D6w8Z^xkVE>g+egLSWx`;v00O>)K}boG{GIX+;~t3H>Lq`k5xVI9F4b*gNioNcurRN^ zch)l&P&8Sz@3I~E?8#dW>OwUwGrYszjt*&YE3g4QjoaEAz2#^&XAvt_m>@K+NhcV??70^w9VpmiA%dnPkIHoG!|Y0QN>iE zY7!CYPcwolQ#ql!V|+>h2$U4NKq6ucZcaJ#?qclSt058q6SwX>QnV}Jym*P(x0c0| zKPX5^A8q#n2ZgT;tlT3P1wG{I9555lLMxR81#HhBPam~+z%-R>q8!Nlw*0(NkL_yz zyk|jar2}Q06HONV5dD)g1R8bflR2+&a$gqsTu>gGW4}bd*L;_ULDz&}Bqa*UBq*To z_)%H;$i!K?4&8eRN~}6Lq&ddSs#R>Erke%By8b~ner>P#Pi6O3ZEO|%Ba4psB zsF7k~RInd|ACrl54R|Y4Q|`Q$g^9RUF``hTU&||ECmB*<;W6h6*LN& zmXL8RKuFfh47p%g2ULU|epI?u7>9;2;EyDJ^eNPZI`>TH`C)L;Ctg^UYPQ6*F{)cLpV!Ou_nHRyOi9+}%U%YlE zW}xsVEGsa~d!lLkJ0ND>A{3$+f?>~h0M8f)Pq-8(n5qONh=_E@wMN!2hf%7@a>xhx zC4*>`3B5`yI{w;rwxb!hE4ph|`?H(+Xgr~whB)bB7&G)9mmHkeM%W@fksg2@Poc4~aCu`-swqR*lt%D?&f@Y2rNn1Xf0Y)W*FFp(F8V%* z)w254R6|tXGgS<&d~bD^wj5++F)+TqO>kD@OKC-{|g7M!2^ z+M}>4{&~^1gYRNYADU0z7AN&P<~Ci!pq3BeL{HGaNoXLN|K}%NvDk!kkkTi&!nM#9 zp4mIFhXZU-0mc8j*MgZjI{IJAfVxrh>u(h2CQn_BQp;`0oGMJG!xP3Um)lomP{vL6 zahrGv%_6|JKnaV>x}75x$X?VSNmlcVEjk2EQ_?+fpEkk|c>7Aw*}nWcsqp<#O{vJt$p3n z&j2%kQxx%a!}$Z8D&1rsak`s?>9MKo1~~6$>p1Bj1UOj1!{t4;Ul!hOz^`Lm;5^A>`0OwV%lojHwHpQLGN&oce9LO$!D;XjaR$5Qp$={U=sh=! z8PE$41NQTUH48c;L^ee-a2#G7I9Oc`xB@ke#Q9ra;7J|&tq0C~sAE?}-Kj;Xf*J72xm#GmvpvLZyKLrkY;^ z){FONyK{e86`e`(cNUTjNH%(H0|CHXds{LG?Lf2sBTDryIkc%(t|WNBA@7PoVIAEE zELK1byowy(Y&`yr_s9g54j*ZO6mq!GVuR1xiGuAOrIda^Z4 ze3Xm>U_E`q@UKtk=||~0mNkd)(21GmQa7Wx;P#RuKFOmRhLHgB)7?{U5I;pF9VgHv(!KLt1Hjy2)V<-`Lx=T&`;O{!*;8VILQ5ZkQ= zBGy55e0gySq|-@v^h$Ji((sy6M`1xjJ<&cnh5!Dhe?-{BP(e0Kcw0rL9$Uok*A0+Y zK<^*l)X=7dx4Y^^wlIT_1(X3_4c~yl-s-ij9XufX|BCt?mv_!-vfi*c3U`o(@MW z(nzzrThNkJpW&DtQB-2#1JD_!&H>7y$7XU#59!O1>h`HRiUhRy?iHzG-A|%&hUCBO zK0^kiJ05bh)*W)0M(yo4A(}Q+PB)BN!^u31Ufwf)pYA31n_p_h$wJo3n8K<3Kbi(+ zc|k?|%6AsGI<>L`sgBMKjlf#MilcBEqNlkr(^WPGGE*uU2yd7-Mm<3lyfQ$?F&I0a z3cAG41Vv@%TmFIcDPZ_Q*y+Y6tKkj4J{s8n?^nM39VK9NSVbY#Jv+-DSqU&c&K~TQ zz~(xNxpGz0JR{4Lt^o?Ii`(zitdtUBh`uJHT)2BZA&T2#v#>OGQ{p(;?-kWibMaYC z6IW!sgMP-0Ol)Q;O_o%t+T@p9L)CE@3dOeHc@xJJ<;ZdG@j+nx!);f45Y znO7bec$B-9rbKGk<&q$6qfe(%--Vg@3)5+hs{Ys!A>XX~Dn~k-DL=O`6N)WxRc`lSa<1;ms%&@2^9ws_ zMtt zsz^1sEw@E3VtQ)Ijx?`J6Q;=Z%Lv0#m%?hT%OrR{SehshaQ4}KC?ksr=)srIAN*!O zF3)|7>n^?xZ?mbqH}@;zfV$fF7?s%|KFnPLBn(MiZoxo51B5ILk@hIV%ku+O!UaJs zZNZ$T1rpLbcS%iAjhzw0ue1$)iX;Av1w&UC_weMoPG;c2U0FGxN^i)H!grf!WTDU{ zR_OXM+i$}#*)Q$+fr9Mt$)ugO{Mt{ECb+VlBSen)VIEuk2O`|%g9K<0cmyYHEu#9Dqv(llT?~yB~X!fd3PlvW)C~Zib^l|*VUFNO(@JmIV`f#x zWwk|*$*9^kaK^_0wYdR_lZyjjlvwvgIZ23NN7rNlq8e%rD)S1lieLyWH}P~*OX`1a zJf6nVp%Aq^e2~`y7D&Bo*hiPo`tqN*Y#BIg>YepfB4xt%xq{`bp|pVK(<|VxOca~J zETj!S&mWf!vFIztkCBN$T8^{S%^!T>=tEJ{PcK7LQ_wh%gK_rJ6exS+T&gbNbW zQEdj)&h1HTilIs|qAXEXNihtbZZ`Lcx(|CJIyFXgxLIpp8dKlAcEcW6qt7=9n(N#w zN`H`+U&RVLanALd%77-^c0;I_60bEcauMwQ-tS=a7Gigp<JHie@YyewJE ziJLpKDtK#oBKF+5A>PG1_8NNxE0)-jUuBDks?$lvr9e0yZcx}1?OK~7vU+B`t>-X@ zihmmk&CCCFzd$Dn=vc&8*|HZ;wH?!-H3i#Xy|k_)b7!hrj(<7qUo*|lY-`G+Ji_B) z0V9n*qTH0}-=e6WOTFRscxRn=SOz3_cX&0oEkWxoS?Bu~g3>PR)O8b`BHt9vAV z>w3Li3=rhxn-_<79I@jfWE=yXqyrQ{q1?b_5yT{<`j!_sBvWC6e5cCIDDQu4GAx#_ z%3o|)9s?rIr`rp-TPuOD($D`iL7vG-zT>J`x|%m*4+5o~kH#!uacWj+j?*Tz>)8Ak z$#H+Q1oMW;a?B5*^XLe(*4Laew<0&({<9NuB$q)yW&G&JD{~-yE2uu%!Zf5Y5v-K> z2(=WS9fTuQ{DBa!>SDibNgA>zJvJ(Y#j!9#-C8Z>PWM%PbdO)edd-MMZ^T@o+qQD^ zluIc`S!GL=AxVxPYoh?v_2s}3hd{LH1{JC43@9xY@8(sRtvmpX@CCy&70S_Nv8=h4 zl*j{ELWmoW-A%0+3LPkoQnr=nPoTXCgF#wFxEI4PT&*vJN4YQnZ7NQ-EdQ z1_f>dsV(U02Dkr`VpNAZdhVfvB0u_3mBI{(8} z9!NitpKzeT7ZvFc^Z_Ya*AqM$Kw&qBpAI$$P*GKP&qrq2a9&BW;Zx8}2we~)w_3H_ zV~j5$#7HV@L%F`M@!T~MKSGOR17<882o>0YOMCaVynz}KTw84JD*m!gA@`0xk|uF@ zWDSKkHkbpL@zrhL-TFj*&`+X#dzZsE(qku&{>-ONA`u7=m0zJ?103Med1p5?u;mv; zs>USxQdtZ^{L|Oec@tm%vB$WW8{pURV&aWMQb$Mm$vQDJ?QD<6iQKp;t0SXeDgBRyJ^#j zYxs}Dg0OJK1Lw`b!fC^UMCn1L*fS11;j27k#5?nKL(;K?|AWWqX+FtE!p60J1>8wE zb(fRcAQ<;K9JkT<-2z5#K)M+y;%f$G(I=1t!?WrcpqL~Rcc^OxmI!bMyd_`Sb|id{ zfxrJ8_a97GjYVSGxT71`l13m+D~=k#04b=~SSwy}98g>je(G+jnckQS86q_+tjRun z^X<3)fZGk4RINf&euV*KV%dLhfZh~y)B1?1bb`#S*FXYO2EAt<>d?ybSU`#ZIv3v?vn0^SrR{0&(tm!yG)NMF_qo;^Ig3f?qJuCyuS&nV zTERT{2y!O(T=?DhTVX_Ffdkryz7_h_HS0K6ombWWDwpNeZI19{l}($@&>);HVN1aj z!^nkbU>KSW500L2N)5|^UY!2{zBxeJ;PVvt$F{d~CVhyKwU=+1sk6%38~+!D1+K@7@1sg&8d6Gmif?kvYKjnA_}C(vbji| z&+co3{ShSgl`0Wqu#{?pCR>EBHn4=2B8m3c#XhZL-Racys>lIU@_e z5Q7#S6k)Wf8v19ry}`&2GC=>VL$_}YcA+Nn9~rtPt0IULaiROLz7@})SRYi~Wm!D9 z!Z|gLsBwgqJm6|LU-b`#v!DnreKv zbL54Cn|t?zRbq8btzTo);D+Vk=7_9tXoU ztsNW=!Nw1Y#^{l(gAF%czL+m(IPONwijFvXcNiBSJsPqIs}rB0bViP^GZ%TWhrSYW32`~HOZy??=`2x?`_!VAXnfqWxY0X7n0!ewvrZZlVx-a3+G z1JL#$#_n8m0pBSC3FcI~zqTx7oTJ~uNfTK4*Mwm_WcpR3C+IQu!;2+SuoZ-zgZhy7 zJ70{8idL3Oe?fnv1rT=cLmgxDiXwkiU*ggMf$i%6CmUYlYV$5)jXtWmD7BSf;2z9X zKab0Mq$_%|)m3I|_%LsE_ft;6Uv7FIZu&DRR4i7&tgR_wDscPGI(XQVt*t$&)2P~R zuAC(#PHe3O@HFE7E`t-#4L`Bfp^PGlvGB>XGmy*smd#NbzRE0R1@TmtpXGBg!jg*! zKG~5QfZrGzEk6sC4B?L$&Bo*Zb5zsIi1o3+qUa_!a#C<4nl5eHnM8^(|`qZf$xbjv?5UINU6ZB;mQO`QUL{#gF!VjCxbOQ&ll{ghZ z=V=55L)V6la0YM|7rA^gKq|*xdKv7|n4ConYx7-4oDIRn-E3KGM6oJ(UpBQ&!%2%< z{o4!)P?lgqAZvnNgXaW9-*qTL95P+bi$NPZEKKVl%fV`4Oy@gyG9x(6PNLly2y?qe zCdNHZ2=R-kT&JPPi#@2u`?NCW8{fe(YTjIAeJ4;T)~;hyd|iiExPZvkF6!CcY&c87G)LGOHS=L5O;IGBs3M zVTHJ))$WI>CAGe+aU1|@l;S9P-#Lh4Cn?ti5pZ^tc{FV!+xQ8RBdvel+u1zfUyg3p zo};rK^G=6ilX2y!96;%(83oGZ6V7#7{P48d_rvz-&e=ywH>0bkCa=M!TA%V2=zAe^ac%R7 z$++-rfu9(0z84IcRs2L*xVj;F@WmOyO6o^W>mf%M_iK*04Sst)R47Lri|c>l8u1E` zb6Vs4QEM=>P@Ql;x-op7ha8PkYrv|n+55nq-}@ALZPQ36Lm8Lt%vZMW)vo00a74%f z<}Bd|r8HpSGVQw>IFqafr~om(NP*ed@mNvY9=>`ESI{AYC{lf*{2^CAi)h85ZYWfv zL?Vu;pO%F@qn!gdY1lm8cP&qJj9&j?%^^A12%+D$D*3L!NI#2^>E^Wu*TVq+1ALjep-L~kV<73N0fPg;8pn7gkx9zihwFVN{5TD z-PY(ZLcqQLrO)nz8{@{J98Pi5Z`w}f3}MCxY(;MDzsRfV7)`dQf|L!Eos);XDXX82 zZaqYr0SC50o>;?e8&1B^J*Y5ubIm*Yc9?Q(jlCUhA&^gB%z&GMgz$4J zlhItp%llZ5DbbornII`+7F3gt1GozD$m9HPm}U@;fQq-I{L48e5`uj{s~=?TsZQW0 zwE-VdK~g_Wlgp^i+|&l0u3*zPvTlK^G8yG0-U;0S5hU2?V-$s91+{Wt7+PFDoL}7U z82xLt&X`3fL+VwJb?&iE5Ac=H&D7NpkMgxHzC&;CA9hbS%Tq`a!(re)Yi1RWxrtz@E@ zfBfJ7`xE55{Xwy7Cnp-K+uUOe!9VGr0WUf-{wjC0DK|dxmYF%qW!KMGybA?vNx-j;Eq9*dSS+eY?NXF|D@MObEad`1DbZ$gexIga&B`m1fz;& zW8)L$GyA3Ui!42s%`Vtyx7Pp3WbI*gKEQG3{`zc{rZ?9U@Ie489=AvxIgGoG1v_RS z$l|oIp^DvpvZN*kOTjQl**d4&1&+%u`bXlWvD8Wz(jag)AfAvmJ}9)nE|eZ znxk7C7qD03mPe>)=@$B~#tY`=>2?z?2T&Q-7H-}H#6OWvxh znAIBsUp7~mU~}vFqG7MyfPvQ#5UHLlk@W-$^9qN|=+ih>KoFiZ_D&qx0kX2A$VBm- z2^5*|utRA6UG1ynzJ}E_7>P}s(3O7HyU(={X1~gHd@KyhU_IHkS`7umD`-AvnU}u& zB5KW{vv7>!5gl=K^IdkXD_HAI=v{{jIs#RNF*XO&R4^xKumr50b_AmfdeM;RQjn|| z^esq+*pMgf*g^s{a_B4$EPaWaR+`YVIIMtXba z5}{TM9lSk<(KF6?ZqT5}AOIXovjP4kpCULj-Wlm_*>w;f-(`?=(jhUS3&BzhRDvWT zwv|(4M?Dj+JaOUr>oza$KXuy=s{S@h9!Lku8F#D0iaBDpoKqQM#m5T}tcErU39xe# zUo6`vR30CjR1Li+r(9jPvyNO(c*of&#Z~*Wd3QsBiB3Hq)x=a513>&k*b^4@QK=6S z7pn4x$&xW%3OTE{l~eAR=NFz4#~SZF{zlga#hqeb^ny3zujVuUVlZG&;l`%#9i>{JSCL_ONZxE-f zc;+Q5Bg(2Oi2_`jxp?4RlTS)*Oy?K(c?Kp1TTV+yyVCkUB{N9#GUjw=a$O;$%}gU5%6n_F5@aGUKV36!*Fm(3qEC`!wzIiJM=SQ`@1bcOf+kzHpdBHA#G zOZ8OtoGV-fNbt7C9C0*c2;bE&*(@ccBWN5E)n1H^iziFTOAMIy_rr~0+&1RYSf?KE zbdrTRUU6XD)jPbJXS`R~_l(Iq-q3$61#;o{8lfLC$6c^6w!}RiDhF5j{)C+W=wgbs zx?-;!@;}A+Srp&IPPEd-6$W}z&=h+53|Hj(Ry!kEF3esS^RV%kfZfy^GE}_JYeUth z6H0`XKlTLPibcwa>m>vezpI>kqbwHFe+Jp{g{W* zblXRC-V;_QKd$GV2Pakf9JY2N1HTR5v{3o!Y^u}JFx*qEyc?#aiH)sPc|(;*sqP(g zpECZ>f51)G79ozL?&Z+ScA??*JSmu)@Z*I!V@d$q^=z{tx(=r^pDi?+)(FdizZ6&5 z2w-X93q4d?MG2k*guC?@z(p;0^WQX%_1pa@(B@+Jtzi?~yoA}w0zZ*;93em@r^&E77)_d31Bcy8_%;C@lev> zI^A77nLqQ~@iQL=_p#nYpmfp^A!b5>OfKZg)n!&Hwri#H#_}j$nBhq&x*)Q0cxUmhMhsN`emYeKvS&AEZFX(st>nFs zl|EDZ7@%3^5R9?!ykhPsVWhr%6Nd0NJ5Z!rV$8X53~(AfH$yQf#)52&o?iHx_J*If zH^6Hq2GQD85|l(!7uGDGcBJ$k0aJVQ1l}Y`5*FO2`-x3q;A!(_RXIEehWXR2dz?*w z^@wryZy=_?%DA>c0tem+zXHn7`j@PhVo{>eZJJ7nW=Ex`trmE%_DdL4nx0#ra)4~X-E*a+{6x2q8G&HXfnc$k4&XfqZg~c1CR57Odd}mj%GqqWH+yVf zWoVIu!?GlJIr&SN)H`g5ag@8WkO*V5cO8`DxjeYqq5{rsb zyvkztqk$lCF@Jl3K2rXfCt7hWJw%XMA+7w-!N>WuL*N}QVCeAn6}Wmd#p z((c`WAw|yRKrTNceObb~mUF1E9^V~vSr&qa$Ivm}$%*^?;Qe)1=m=vs1QK21KFzSC zWg^sK%J^QYNLm)rtpaS&eUsWHJt)!K6ZC9m$j&e!j#o`SxFus~mo_EuiqNAlm+o|^ zG!j`f5w%SM&nEaIG5@ASJK3_HTkYaZSJt)Qr|gF!J_0+@T#flq}7_5H)d z^Z_5lL)G%vNYdu)Tx^V*d4h~ehSLN{O`!iy_hwtr6AZsaVZxbX5f&-#ju80dN;1gE zv4Peoo0EYFkXHQB53ulPy=b(Z`ltrs*9rFPWlYc{o%)6i5IIJzQLex!YRTCnF$dZ> zb;ffHp*7U3t&F5tI?^2<=@9v zID8=Ec$^04POk*m@k<JU-oG#SFU+XKWQt1|p_)sd`&Jzn#6(ThIptt^a(Q{M)5-Sa zQ>s;!cf{@3@+0=}IBn3x{TU`VJNHvBrW#i4gXC2Kc|I4qIL)H9<084RJDAh753aj# zlW`u0Y399##lpW?e;RwRW;m|>TBDTiTm%OQo#mtF1 zs$;({l)7jvJTcV4j*RA&AQi1(=c znL2oL&A+?+?m^x*v;l6YJMBF0I%)u2A#byW0^R{^z*L_1t4JnO&&7l=a0lJRZ;q)P zlETnSvj;7x@zUq_;#l)zK2Z9C|FD+lBs^>I7wem)EN2Xo*6}m1U%%v>BQ@Je@t4#l zN+KxJ69%6234Mw!p&#aCpvy*)DcsY~4jpLew z>UI_!g9c}!EPtz?pf!c*6-Xl=%~K<6*iAIw;|&JWem2mE$~s}&V;qL6BBED4a*%u5 z_0D8RgW2hTC%|)dKsRq}f^ubeZ~dC%K%GJqq@A|M1m%G9Gfu+x+UByAOb;|UbrZ=5BtayejXemDzDg&qmBbh1;WhajO$KC3)OeHEgv&%)U}ryA_{uj2kQJ2RW-dJB zT~${6!l3UYTRpz)u5)vs@j@aSH%1LpwIXTxkNmQYJ+M9g!gv0>e`U7i!NF=?x{i$* zR_3n+!sWhrEyG_+;(9NH8zEVV z28@V9r^VMihK{b|3o@AN$t5tJrSk8W+D`6Fpd=hC6cp0PR%T~WRbVFH=+)m8sXH+$ z%xeMGnTS9s(>sQ?@FP=VX2-4p5-A% zEtJqx6@#es^EU@e+y)UW=<~EJj(nT|ixfe|$EGFpS38qxt;~)@@zk>@Pj5k}=NyUO zTo9jlZ8@8i_3_N8H5SLk_~Y=8K&7fZ>IoT;QwD6EvjWfK$VIW>j1~O=8R%h(q-xvs zcxmp!0<4uzl)5nr*ph8kBE}LZnhbA{g=g*w&QyVZEe$X-d)*wn70C&Z!LGTb*e>Tq z2o_>XRF(BrATX`?wsQ-H@lz2E6d%KM(>?8n7f1YM+bHYuD*n>)qo{4EyWZGBWf&=^ zW(07%>{^>Tu5V0FS4Rg^=pRcE(}ppSUnAN+xb~2+SOX^)5kbK?f|Qm|ZVBPHd6&g` zE%p(7Lc5=^2%wwtNUWOC!nAk;@=^dXMa;&eO~&Fed8%+1k*FAOSvmaLp3TjWN8c=R z4k9ky{HeD{WELMy;q{<#<7CK~Q0KL4 zbI}23-vCh8e>P24C_1=|XTv&4o1DPM3dyfLftE1b$>SBiOdQ_MiXLQeIHNE{qlqJm zMI^~dY-xrt3Q=mj{!g)*=f$VLu&Ogo)s3_u$yEzM%?x*VIvP6+P1~HP< zG&-uVl;m#F20{3NzG>`x)`fSCCN%x@0sVt0L?TJ&j{>9$f?zmDT6Zxh3Wy+TKjJ!> zfl_ZW<%SbB_C2ZS*u;OIDc{o+Dx%-g{XeoE)cn;^JT+26PM z^2L#^q$vXj1w8K=YB}a=hGejqWz_C7CAT}4f-C7MRr6-l1ULNTCqJ=IH%Fd;-R7y( zSj1O6r5xR-!TlM@#3&&^%~?jhqaaTcc*unTK(oB=lcDl8>0pd1`HV^+_lBpr$F8t} zD@lJyjVr)Nw|Ckv$$taqqJe}3_b!jU5#c-E1gNcNJT@$vt<7;Bjc_H7IPGzsc02ES zBy6NiI{~nO9zw6}HJ`N%2Swl=I*Ak}HGpL3YU9KngYCEXymdNu*&ZqCOY-s!umg(1JJDLLS?h-;4+&#VcGJ@F%1K(;&)f4NN0 zl8_zo5H&`(O!?E_zp>Sfe;YpKJY%_Fy*C#>rtzj+$RijEWMA%PEUzN z)4&7x&=H?Sw<_6==eWod_&?Gi;Y92xa}Pt*|hHfS@_xE%PJ`&C`s_<_;F7 zK*?&Y0r~@I%+ex6CQ+TWJfG!BuETmKL9ok3p6zzjZFr6Bx;C);t>2Y$(9Clgj&mh9SdC0DPI~ZfD({Llsc#fmUdlYW5m!nIU-F;Cm|b z4g@!7%NKkdvB=l&IfKQD4G|PDz6acqOCkhqr&=KjiP;>V-D$?Y5)Mi0VO{^UV{ecV zR)B>)?L06)X^D97jNZ&w5zvtC^7T{nUx3_s;C|7T#uk>3R?K_w=yDf_H-+naEJYy4bgfib}j< zl3f^k8VqaiR~^V@jhRa9942S9rE@$k-&O(>t-sOUH447IIa$um*3MG1pU5%^Z~?XX=n0&x)$h~x zX54rID(pH_-2Q4BT0PvZdF&zcgmczV^_;7^!9J4Xgc7w|BthE%k3fs^vZ_x?iY)le zYI$hq&pu+&<}X;~NetEa^pklvah%OT>g!F?cyD$j<`3(C;1|f7x7d$%%Q5BoOtdz}MEJo6pl#*m((aFPGGAdkM-xwkm8v z20qS;KQb7F3QM6=m;`0ap>}{D>s}}nG&NLANA)P_7>gdz;^W4_% zV%;N4JyiL`;$!s}+Bn>aRdJII+$YT>Dt&USeX!f48djIQl;)RlwrRk^I3)sN%Pdi zG9pMW_eZqE)d1XBS(SrgZbCGbV@mayxQcCqs_CRAG~OG(C)g<^)0&%`cU3B$ z49&|l1r1J5kZNsENSM%vbAawrw^#bOFh3tv@*s>n@~lr{Nns!Swbe$KL|yA)eH#FpK94vq z5zrYJov${+m2cG1W<`mO?#uNSzpi9zq37a=K0*8~bd%wS^LK~fD*3$9XqChco&m}~ zJaQ3wF7OQIH;7x_U4Jp<3j*G5I38~K{K9q;PQY2h5|Z9nRxwjcN(ji+6bw3#9nZ)w zQi&c#vit)!M=u)c|4Y@mz-L{acRvXrSUjcHrgI7ol)g^aI8iHYD%MJ!sOWU96*XW5 zJm3kaHPK3x%@)fl9!Eh3(@t$`5vxW8QzI1x6q;ETJVQa@?P%qY*8(FZ@ArFM_d~mV z_UTrI_!qp}x+7U`yd^w?g!}fc zV(FM&5HmZjyRHttUg0sS&nkO&(_-O&F#e<4!r+0Ki+&78G=*jBsvWBp7~l$mk{r*> z!+9MhL53CUp4kmEL0%>qO4sKJ0_&c5g3rIqh=tbCEQT#=7OL((n}rs`Wo4&e;-=L> z>thAHb2hFGmfFtmouKyON$eE-O?q%3rDt%v&FmQm1{I#bo{^MD-WgCb5su5^MLl7x%NoQ;7B=#3w7ZtQd;)u_*aQbrz5-_W)!WMQfIQSD%K-DUH~D^7)` z=*L*aTVEkLcF{f-oBTy%4Wa!8NYjdJsQh&%*ftgcLlMw(B0`Q9UzPN5_)MY&*B`H; zjw(7*FsP6blT}?l9|g>P6reLzky1Mkq8vPB!nS!65RM@#ZRPiHVv~DGV;{30Wst+s z7n3Eb#>Mf74cf&35s*)z{kdGl>eKjA+8SONp|kaDdgR|JKR0673&Q zpdvm1pdefF7DU-X1(e#*sZ~N4SgvcT*7YgZQFc;kl?|SW0h!oX2coyjkq$? zmx{fjgjQ{SDuJ(-+d>|)G|p89iz>6s8_^7@#eR}PQt%?(*q3EBD3b;2^IigRV=jw| zB+)*KFqV z%x^^*m^ggnPcz20J5x$RPzaD=kR6?Is5dK$t;)~vO^NrGJayIMZ~sX^J&Rp2d|o4k zIzs@Sg$fy3n%a!9=>ha&pY$%;vkovMyy0c^Lexr${5OX#cUvNdEpy_l7T#i3z~ijb z#C`%FjK>$ZW#v(hC;??fm6B9PRBUaR<}UIdd00Nwo>`1!67cV^+LJ zeijJ_aMeZEyyrPpRQU`a@(l6 z@8q~r9A3n$#D8)UsbKNSpi%PPW1aaH3RlIzwtqYsrL@FG&!usvAyN*(StZ&r>rwR} zp@Gb8IifVrEeoSb2@zTo(|A9nS2I-Ty^^*qlOZ0l_%_{__2n5iBdFa_3eSsHx*?{n zjLGVl?CU=Z;b0_qB3zB-H2OgftLSb2U+C4ATcfs)fT+MskfC{k#Y+s;Oq|bcm+tOb zcAgob6Z~LGf}CjBo>lWui#cc1-L*$F!MCG+{bCUBk1KgWVyO;o32E^>lBa0doa7*I-P?nHkxPi zGHfhPkB?N@w-~c=I?+eB)!{4R_$1MIAzv|qfp>my?rd%h@N}gjASqS*DyY z5u_65N~fYcG?#1*15_yH5KM*ODdsL6GPHRBF$e5@j;4Tyt0-fi(KsZ-XMn7cM=Agt z9yX4QqCF#Ok4UkoMSAlE}E#J$8hUTl+|uj(jTeDstI zwpiFJ&iR*$(PorQ3{b+!$L|U^8rwh)3-W2lxio43 zdv%_Qu5jKZq8{MAJ~R3Sf&U9;Bs%XAs^(xyYi}yfEyQlzSG;4iK-3N28u>c}iJl3- zIL~)J@vS3seuG!%0QTMw{^(VR8i{s5SD!0Jg^eerdS?B!tdmOrmsnv=L>KA! zI7*@Yt62N|Z?v~Pe_OU*jx`P}GS3p^WCljo#z_%%UUvk+m3&3qlTmg}FtVsj1!&5R zPY`+>t?|P;&g66Td?VU>@oy22@K&9cAC-oCw^gf*F-RU9A(mKIGR}V~SB^&#qO+9~@<0zQ=8AXUemnS= zG+EKAW_A6T$yIitL4`Y{w!1Tt$p{;dX;)ce`mfH&Q=1vBz;0vhEB1}YmIdm9lo!On zgqp<9wk~)&-^$T7=;Ir{^rgRj5FsSZGwgw4e7cZE>L4zWHEzVRxD+|XN(-ERl`xv~!e_hX#LD?g6Y-J1_&q69o)_Ipp}v#YCb1C!5J!bOWD|uYgrxZ$io2^oCrWz z#E9NKlXy^>!5C%uoQL=`444gg!sC!@k_&Trf2UVs;UOafziaAwr%`+-2yuJof`P(&)C>pkKaBxIs zBH^)NgwnoapCyJ4&}}l&DKEvKQyX&@{ahlyzso%xAk^zDCtsP%5g6}>8z0`h3j*u} z^$Ih2;wZeQEW)O5U=>kSykd(bp9Ja^43MW7o7KJ?c>fj#5h+S`4+((>bY~>zMhM)# zgd0dOYpo_UkqQUz71-^v8BX0~I22uu1LO_s#6R#h_70|{!z+(ju-Ylei(}RVTJPl+ zHfN7?`cd`teyTlYuJ6Y-`qq(jKdxrzkON_QE#K%+;IN>Ys4YCRhVEa5vr1PN#f}1) zDmzs_=RQ?b9{tj*t(>X`)JEQuB#4j%9~l3|=g7w8@5F!vpqpdE{w0eJjD?nsFTil- z?7jzK%X#o_eLaAzbB1&ewx9dLg^QMe-&)-0qK8Kl(hDE5>X6l%j|D$L@RVAzAD~ zN~Yve72Y=3F}fs8@QvY9j}T(iu6$phh9oi)Ns1`D1|VFo6o;M3k4b3rE1UT=oU>Gg zA`RV#QAQD^s85W+zdsbYbs3meFDgoLN^vl_7y!T%#5vJ<8!ffyD)3xhd7FtuF?cmF zz=?Zvk@e<9Rl$2ZCd&gAtU0rVUe3&(D())Yh@d##{oL1}QNa}_M3xzvJeNJe5A|=_ zs3D}7Ubk2z7zBWZPd~^_Ex&SvIWZO+IRKV=`LIrQ5_D@@?2{Pf*YIi>zrhnVTMk1^ zjf16CFmVH2`d9q%{Wt;iBeXN?qhY2=5XYPWl%W9zBt<%tYYWNHh~A2l^iar3wNXpk z2q9uw=fqbc(*$2wwatq;Ly7pgXXDc2_!Th-#}`_da^5|uwp>b-#c_5T>&4q9V*v;c zn?xkHQop`+Mb0JfxLCY`v&MlVk3!1hFuFrJZ7E}^gR0$zih<8&zz+j| zbQC8kTJ$s7b!WfYeNXhop`Y~3v5YGDi=>!+_rkvU&uZfTw=ZqGG>ubhF3F(*VM72| ztZ0^8YjkTVzD#hjgPCSZjdH@*(kL-mb5JepX5F+b1gcR&E|B7t3DhaVZtE8X^Jeba z%jdHr4&KcH2lv{2m_2`JA9$cW2WAbg%!Jw@?Cb6CBqKCDF+s6n?#pg{SI6BuA|$7s zNh}qDYq60V++x~?yU(yTf7CABnMU@J{J#|m@{p`(rzMS9(FW73fHmxxnLNAW+LeT+ zRt&rdWnWhM@uP;N`YWe&bf%z^>p>rXNhF`VJ3#vT7ybAl=SfwDu_x@({$JT*#N&35 zy6sxgQggehdd`v?=M>sF!yI9oB5ku{#)K%Wi^RETwTA6i#bvX&oiRWWu+ek9_lYMS z?I{O>V*wZZBlHG0uPCLeKht@L6B~wSbWg5QgJ4ELW`h$oQ^Q6uTlcX%iRJC=^WuA+RtlriIHBtIxce`0Y8$0I|Q^r+RR!w26l7IgZBD{Uvereb)%zYPnfqF zV+kj7<1rA-Tm~o1o5?Rj@A)qL%1i|_7W*+$Nu5*7eH!fmYEbH-=ub^^BJRV>lf#vk z*;19*ab{QZW@`A7`_fe~q*#rs919$isTv`;f?hL~5|6A?T_)Re&>7hE$3+dqfiHy% zKsloZDwA-$Eb-JCqYKvT8;Ik?HU>hGq9vIpbtXqt8NADJ-te%S4|G6zSZJt}R${3- z#|i2RnyC&AP+;~YCt~X3aa0@CKb@esVLf+J>hlq|MJd89&b1i7N6T%qkxd~~#e+rc zjzg0N2Q`GtWdmkB^0`Ti+C$GEKKKJX?m7oqovoR_X%Wo;v2Lok2X7b0=bs?}k^SP_ zW$5-~e(1(ds6GRD&B?B_*NC!E?QA`D$i{`_V6nE)z&?c16ag_Gh#wKatF^d=kuWPO zj6Q@c!<%h{1iLx`FTqrRMp_=>@A))Y@~Suv6x)#x7-J41jw}{V`#02jQsbhfVj#gO zh7m>-r?hXi*HNAQLTkWi{5Nz{>*Hol2{J#dn&$HK0 z+{i~?_=h)td9mP@IWUD;%COwvqEkUl}Sx@IsynDNbKwm`Mz$ zXKk{(DSGCfg9eEAHHQ|{JkRqYbSN#n0ei_4WH)x*SPBFatl2VLzRKsN88%V!ka zv(LWLA3EQkLfh9jW2#!-$&ebCUrJz}t`OW$ikRB0FQMxf8i}4;e}VEm)1m*$a{mkQg>ujszv~p?ke8 zBJ?NPg%?4^)HIqC&JBF^l~;yZT}Npz4~QDUuVaD*mev*S3aFj-!6prG^EAUa#U?Cj zM%8`cg0*m*=7>5YfCa`+`eaZI-4wf<9;k{-I?fTc1;2NjLD_=)Mt8nqpBj0uaY`95 zI{crAsg0=`C>W5KL=a!&xC>W9(DP)G6nyK*P@KGQ)IneV?iC!;Ez1i{D6aQaT!aGo z=CZ9_bETXst5;A5P!qpOTU9N#V$DOqe`<|E2)&b8GzW$IHUuE_xyaUO#YrqVZ-Q40 zlAk3wo~!7WY5S=a9Q96xL9fnxTZH*EL_0*^*3({n9S681%6PV;k>N2+X9?_)X~50u z7-;S}=D9a}F-Ac?Cms#WeER!=eWn@@; zL5s7~DM3?B1K0#y+z<}f8Dx8nsZAKYNPj^HnT_z==85x3017vl%`IKoD=RLW!wPMA zO3pO?QE4m=EfGt!Cf+$Yz-{Nb!9}L;u?Tg0Dvg3Nuai8{0q0U=~7>Y3R(X`@g%U#{Y|DNO58%)~lRH^NPb{qsq3A zjZA+EoU-Ky(Fv{$*~`68ri?B$ZAF0`U$HT%+NQ;{TNAHjfz_=HRm_Is@*{d#JLp_y zW~mme+%^8UWIkK&wDVMECr+PjQwq5;YsGC<=;G9Q+!0SD_1W%H6tjXXR|cF%2QoM)8pNR5CMu_ZMOf|%n*@Z`1eK{v=9WKl}HQvFU`G#-k4R`V*1 z6z9v6sAQkmW_bmV#i)2D7Q*8pws62ItvRluy5EWbm~EtsiLxuGtou8qre=#Ig_;151*4 z|8s6eV^jHKdVwQAkOVkoc(k@+^vxA??DXl ztRl>z9^w!y;fV&<3L|ZE=|eACx%M1L)gwc2nb^Ur*Iq~n`KdW!fY$hk2f1^5;rf8Z zzkPOFKg)l5EfhznZg8!tuezfzQ|vzs3Jsji-V}Ssq;{)@S+h;w*;>QJ< zSQ9j5@pcsO^k;jJ(85HW1f=QA{_ENcbrVGQaS1{&r!B)4E-dVtQUHbu(2JrrWxJ?| zl(1KhB#3Xo2v5hS@c|rP#B@gHj7?z-m4@(Z{OMm`_00WuPyWN3e;-(D12^XXJa;u% zxkf@lE<4>74fJ{JH0lS3pv~*cjAk2%85JG%$M~FXQGl>1t*(# zQFr{|kAIYR!(T)9=Ku^%rydS;RMHJOt4*MU^Ew>N1Re3F77)P|9Q4K~xgexCfhw+f z3o68ES)4LE=iLv+ar^A9BgA}&)_I%nJYxUa(9q!@3Ulkl*wh{a@L(VJl8jh-9M+;; zs}5xKJnp+>Me|yyP1RZWL(hHr^tjGH;fRfK?Yc2duUW~mQ9lfFjGWkNA3bkqBS;~} zGQKzHf)_in@7pbL9$!Ia<6xy`fP!!>?I|1r^cCM!f%X}Be;6=Au0|;3I45a*YH4g2 zx0KjDt(V_x9evN)EWr{j8O8eKV*9U+wjv`EG^$CwS;&ZQq*8vzYSC|us9>)dZ#O(O zN@c2HFV0RW^_=0io7YBa)$*(4_KVn^;!@~tP$qKBr>EF4GnJ9e#hUQaTTfilao@18 zd$u#w+=H+(*|>rRPb{TC4#JBnLDnwlvs7vA*5yV_0z!S`y3$clBxA+?)O^47#tCQ$ zqU0zeig#=;hSE&IL~*y8WzO=YSq)hHW#kfQ*{OfFC0jcATAQ1TO0(M4BhgPYEu&Ir2bIwd|r{+`NT?N4I_ zq!CK|%vqB?XE#T>Sj8<6axTRYxTDK!p8KP<5iM9A8w0g&<}2PxZyN-kRPGO$O9oB^ z==GyjZ(}#+hO2**Q=N1zlelCYAKM#!9cMP`IHr+FwW59)uonb(7$y-Ba72DUJ8mtoA3ufp0_&$blukuYsPibQ*oBljmKn0%8nEP;rK(MC z>f)14c?*YSNDjtu#4w42DP?tn+@^PXhmPGPg~m*{Ee(fGvWGRw$FOxKklpg%9^#xU zcr|Vgs@Xx>%YbSzjmT1=@>Udj3D9mNI@-9|(*e8n$so4i^Eg~!m*$$Ail2I0167xZ zwb*AoNM9W)e6?5O74_pAHYT8f>s&2>$=H+8(u)9+FF6RQKo#W~?{o|z{jk(RPQTpg z$Rh&JfpZ4|{~##aQ=y)-96D35*~}IKUx2nYNVqWBIBT?@xU;P8#JPh@QKT<%V(puptbXh?MtiueoNr&KLWW@%4r`1g4RxmH?pw6*RwFFgN$( zw+o8!sUZeM$iE6)LT@Ae{NUY@nyxU~>&kpQo(miIe7(*S7`k392y9(pV#6_<6c>Eg zg5X$J5jO<}SyJ}K^6QM^>&3rM^MzUM%y{vRcQT&T2nCyMNNQhrj7Fn}8@O35Tr6Xn zwOue$y&{qC(M^P41`5ZpiY1%$r(KM61fEE>Jb{(O3JVvW% zBPQN+t$+um509bBGei+|^Hg3s)3b59-W0n_8tTN8`PbJ#gdvsWXrFs=5g--VE<~r~F!ZjOK{8e_YV~lHI zd;M(HoY|xW9s%;qkdv3_9(toqr+H4q!t) zE(ooV1y)qRnNyjO%YOsjkszYI6^%q({ynGDQ`4>0Qut*(Qm#(|fPg3-0GFl^ihG{k z5s0FHl9}fxxy)#iw>j6S0Y&0%gj5dsEK)=MT=e(pW|0QuDfe7|Nypr;a6R;li~%po z@;Ml_-ZEYwlBI&lwU2ww_%_#MggK;yFto{DBsy5&0OTYtN!L$xLKVVktT?2WF>R&i z46B_9Im~$_RfDdP9fmz{@8d=Hl_n4?{LO0Z`axMFYsSUv3wJSTTwAuBW$dl86ApIA zOcUutZ~EieLa1XRd#!6%sU9+iyolQCL;RV^9RWypq2pHa9*?JLde8R)qL{hIwx6-Ffu-I=gV_y;Q?9H5J=ZR*{~%HXnphbPjNmC=@% zy1HI zFQbDUU8AQcPS3m#4vXN_L!v9=;|DvHJLOfkUCLT$LXzzwh?stWcK=HEYhm6r zQPV4{c&TLyVta*;xM$BOqsN5PIW~9C==?>hTr;(4L|8>rh0uL)unu32pPU}DTuTT2 z_@PtJmamI-%O!)mtYnnmQMOa)hD!=TzP^h-H+mu$I+~Nm-@Ep`1mn^?2Iuwm9?FH- z+SQ>3V_ZUq%^dSEBx2x)g+{r+P_OmkNyHWGUZxt{4=~cPT9mSsIszxKdRJUBr2ci+ zK23<|Dj4=rd%eJeahF0%0*84QaQkr;gWkVK1ra3dqDMEADM4ugwrfh$Gixm2u(#}o z3eDPwW3TyD#oheH=&;eZo5vB zDgT3$xVe^xf>P>f+KHYalst3?{At9M_fgX61LR;iiF&Y;QD}miN5#pfpBi;?75JF;)LNNrf7)l*2v0xlV`eTT z?krF(pd36tcWwL(AbNSn3x9Fj|PPE+%F27Q@qBXu6?HK|sD zaM#Efb~Ai{6arsB9&8IlA4SoR?!Af zu?27vKqZ++h*>fI$?>4RNJkRh5P7R_P5gIFQ{f;E9vkG+TVtl)wi1ikBi~@IYUn6@UVC}?VZ+DmGnYlJSWa~^W+rbh$Lj1#587N8)pUO?rwq=H~dyU^17EM#_ee9xbk?n z4x*cNK3{nuC1Gb9S9tVbg%T{1OA}-n!GTiL_y#%veyw=qt03DU1qz;VeqkH2{(|Mk z3{Q4`7S*vZp>+ULTJGU}c{Our+8J_xp?-VtGqT2Ymj`QH>b&|gyU+>OpaoH|dAZZ; zrfjv$@ZQ%^CNbWt1wKf0R)9;lJj~)aIqw&G&epptS%03jVc7W&U#h78_Una)xu=joP z_ZQOA*^bc}m~rh?ST-7o(~ygv{WAX@wK-5E$!>d|yo3r>x|mBpHC=Fo|hnObri3*AWyOofi{yW4hIY>5VON(2bS?a8=8oTyQU1Q^U*%2)WUaOb21 zFvmqyNPwrBL*sUphaoaim2J6x3;t6wHV+gfZ2xT>jMIQIts6j%BSMyIML3ZUPjcrI z!d{q*Xr4}-0C4RT1(vo~Ja>l>bCt-qgRnz8r&D;#0~%UKd^QJK_#o*iFTzR-uqTO1 z?O@_RjCGB`VKawL{46}HM$E^zu|^lgZpfP$5VPSEd=atlukUVK9D7>yC}cTid*#0YvU&YkZ0AGLM)oN zo?}(Hsl%cFN#X^YEEWb{na5~mei$)iNP9$QS0wS_iG?AHtn6aUO|T<}tq?&A7VBA> z)emK#CwF2?2#q4U9|vH>p+waXjl6l3tbNlKqN&O+S0Bf?Q^7qQJ3)|M-~I_Z4ET!- z#aF+(W_$j5<6WM7k3|t2Rs61-3$*od+$*GrT(KGmRCQ*U3CbLwK*K|ozomjjof~nX zEhX+PKb8Q<<{M&U*W7uXf+F^vn>8Selnxp3LelBG*bmTQQ83*San34{Iam?005!QwWs8ru}T5TGW{J zF_2mxk`nY=DTEHQvF03`fsl z3`}g1gyA?)MHh=~Qkl<}w{!lRS40v!a&}z~Nit=XY^QjR;gIQ9;Y#Pg2MB-OUy5<- zP?URUg?&Tc%%@m`;PWpt>R>bv#bKBDRCy0m0(TtfY|*;Qxm=KMw>uG!t@3`u;9>42SjiK2&qtA;nSjoV=1{ZuVN)*lHwg>IMjpC{j8nGtj z!;XjI8)wj9Hc1b33Dudk9i++dhb9~Tz z;7s1H=$&_AB*pJNJsLtgu$a?@U>Q?1b90R`jog7Z2#-TobH@Hb8Pw1pt4Sb(0ThGK z(dT6+9S=egh}|O`e{EyA^1TLO2DHjb;q{sr%=o2s3SmMLYr)0;F*j7Jyl^xlHy@CG!(@ zFFgIb3yj{*3^pFb@q6`Ru(&NX_6llch%Zz$i1xX2QIUv}-ZA@vf1AzjG`k#S1hvW~ z$K5*~T@%a+>O2%6Ug8?zoO ji#S=PJ)pNgn8UE$Xr7PYBVlf+L-W@al2!D;KDN= z0s#wgtnA!t&YO58BApuC@+bEWIilc%KI$e8WHG$kP335OjM_-Uh77oag-ywy=uox; zwI{+Ovq2x-#2xF2Zmx>k9`vN1*pLwUUpB{TPIq0zw71#O=74f413*P2)9qH;OJDNiHxNwTK3CcJmChGYHr54UeZEm#X7^G&~IM z#Oh-M-CE}~H-^Q*4g@>Vb9^}=`O3W2iVoH7B0dzLKuoRd(@`!WdS=vD`c6qM8Dpeq zITHdOE^{o##YM|Hrcdc_D_h)QzTS8(u|W+3f+49}3%IxRwu6xuMiW-er$78br<}yU zE4YeLx}HW}O&K2d^7W;kimNII z|9vjRkU#eQ#04gPfW)IXErsFve zrBbS4CX6IyGa~CMOz51w`dPI~3(O|Xi%oc52WPgn8tZm}H6T{8`)bghV;g$|uf1^8 z>!Z(~*mjnUs#L3I70rvPq9)SrGRq7&B9IY!q&l@L(>}(VC7WF((mc#A{XExLL_woQ zspTJ=K#qH;j}yBHXi`NE_{B_0cAAqrcbP^rk059oIt%&#d2T^#_;lk!LO+Cm?rqkvb`cGeSb{Q`86-C!+$zYcJF#s%N`=-puk z7xGjMC-TFptMc@>b_&*o7N;uE+d&T?YddEG0J@uj@~mECpskXB9^PhK13wruf5&CU zk=v@(att}*{l)foxI8%Qbc&0LGR_x79K|(5+rhnE0lp4|ojr%}k9*fH?r9=Q>!G_D z5?VivL;F>v_anXZxISr!%iy1LW+WhOw z)YL-eqg&le)3$E<#=y=$Tg!FFELLvsE)_3)bmh{HRfdmgXgG*4hSpWmMFRX6!dVTV4@jV9o@H;E59mAvGVJ<*||(d>!l2Ac+2iO_vGr{5io9 zQjwUW&W5(#j{>2Ae`?Oe0^Stm5P@!(ji4yoPlY%u;~Ljoa?ny}C#vcXNeaDL>!A~4 z2C=0TFsmk_Y$481RqHQM&fmPEcO=6wmGJ1hklj})^Fs3MwJ%1m`dGOUJKw6a9~F*D zm?{*#{FOzI?%#7uc2{E(!_EKFC$g>aG+lckzdUSKIefI`zPMM`TplfI_mmK7B-`sz z3Hn!Y<=@2>6);v#cB)X?m2!NI!VF73P6($*+C_I5V6KKK{ zv;T9&F97Cj5z;mIUUpAAuKSA{xch74H*f&6eeHm*@(#5$Y3v=Uk)M!b>?4Wg zWYAT8Cm6dCx@R!kHkZxH^s*&V_YZB2m7SJ?p~jS z{8e!~*A_ZIW^fG3WakzD*Q2MLFmJ&(AE6FqWqjUKjfusL3q)Uy7P8-$BmWLOD1!Om|?A^Uw4+rv|>>pf|Z;tL|+ze%*ksLu<`U*T+4SyVgT_&7& zC>P$nTHPZ8H^h1%gI%X2fgpH?lT8T~hlwFHd?Z~?ODGDMz5RjV$PDHq-p)gUVL?D_Ia?ZzeuDPvhzHS$L0t!jUj^51TjUubxf&xdIqN;s z)lg5N5%5ssZowlK_WddCyrn~EXM$k1SJ8?LfH#Pk0FH7ccMtPN#_FVJ<~s+(nBV3N zI>S~F)zlD%3;7^c9LKrLtvup2O$X})a>IUNP!W1i55As#T31otkO*f~x&idc#tHt>FM815&$oPlpD$6}}xvf|TD{B(fP3trv+3H0!xdlnd?q9~r1 z@cYyJWhI#8ejV{(fGk-mg4!ztkLi4|t4g3njN;0HK$Xb~nN~p-V{{DB&o|Pmo3)T` zxUOAEyR`gENe_;pm2Juv_$oQ}x#zOj!5W1tlj2m`j0~~1&eX2lo|W8P9Y96JdI#p7s;xYL7wrRcIM|$W_lWaEHx|Ds)M%2yO7_ipfs_Ebj&vuS+blcX>p~@lQ!&6M{S+J46TQTf)~= zx?ZdSgLh%nL~{CU(r|l5`~Q<7V~t~?1YG7nYX5B<06Ax~xZqP?7P#}O1o6TEx+xR~ z^_kO+Bu-X#Y5>6IgCFRaHMqRX=g&s9s;4MFJ+p*}?8}2GAz<-}2MXHFwLJC)TEmKD zks5*>&c$U&EI3n{6sacIYbjX7nD5E{sjN_Uz|M2aB$Y~{WzN3cab}DFc|RH53Z5$b z!8i?e>D>u|3@CBti`&Vg=75gR*_?z(SpEYLjZL0L?HX90`@zxfcF%;S1<=Dx3#qJw%+^~JF;DG!H8=PkT{O=^8Dk*=@In+!vX zmKZ`ua_i+liqsW5RwSO=Z6v+7oh8_^Z+wvQ>Dzys>cvn2lySp#3FdbidU!Mucu~dX zV-1GnWjta42K70dBp*^`G}0|Gk*>{ivIrSsvQpFiSu5v~eW``WG6%f_g_P*gwzHB* zY8al6WMB%-OE7DCsC&kGLIhKhS^e+jiRpwLzhfCTlFM3R8gYM+AO+s>Pt`oL`MF(> zF5GaSah04?O;d$qfHkltlA~k+#)Hf$aKm5!=%bIeu3u^<4%F0?msec$ISwwZ@$9t^ zM#Rp`!^trR|P?ii=FaTArzt}Y5#4+cckJX^yGAYtRXel_m(0(oovh7e_KMWr8SD{s%K{| zfuf4xm`kIx; zLV%+V8D&C+g%d! z5&xxZyVS2wYF}}|7iLM;5PD>?%LBptEI#@Ph9XcP@DMhq3a)3iD>juY@i3{SEf}&? z$S{Il))4qA7RMQQO@PrtDy~yy3?z9|Tb(^jfzRlHu67`qKyTlxiK0V*? zJV`Kk;LrUq<#Yms8hLotezq__!fkvp{gLg+EoKe@t1uFC86db*mz6=1nttj0N$n&! z1`^9;0|p3SQG$q5c)V?pdH+V)1uoHx(-;(HQADJm+Xx$(LK$#^2rf0|NC^pl4he{{ zt`0^Ny4Bi3+(`5s_Z`iVf6c`gC(iX8So%AFr7$N=%vXSF!C~mkSo}6W6d6?7P=yMY zL}BF-Yc3ZJcxe)$AbqDB=1ZnnFais)SN-FkewPy3J;; zXWWB#gV$o~L4{%-6*H3VXM2lFSN+GTPbn+METvq8$Lp5@MxmhFgD0luL>nTxVcQ11 za=Mx0?H_;v+IT54p=azq7%=up)IWC!xr#P1qQO@g?KKk?#%}s}5iGHs5n!%<{o((B z(3-Y5LRbjgT#qtd;n_k5;*cLO<%iSxz>%hj6S48J=_pG<;B|v4(iHSGB!yqn@`!dO zfH9s{{hJ0711~zIh#<1(%{4v2+lI+ZmX`Lp+ujVuUoj9gDk$?lOFUa_)3m7`D=6*o?$~ z`}Xa?;q{;^=zJp@mt%vOL3~J-GgW8Tv+BF(3>$7b6cm^})ikO?KahTpV7RI39R)8d z8I6T1*^H<$faCZQR=us=kXvCeqAjI4^91v5T)fosu|u6hQJ)$rUAryeJ~7?goIFL zJK3siKu<|bGs4^YH-WJ1K3S$_G4o2y6^q~;{T`jz1u@nyf(y9c5^oy2to=WcH~Zd( zama3oDWNlQ!I7x-#1k*5#U!dkR=Z~i2ZNZjR)zMjoxDZLwC7GP+&{o9va1P~t2+aR zmT%l2&w;K_IqbHvH?FDY1FVD7N4)1ucCRNeW#0kvJ9kMVk=vUnQ!u!nmNUMdEr)u9NXOr!>RJ#O;Q`bO=g zDuL@F^(aZds_}m?rjAJ|QGrC&Iq>_7|HM0Lxzh^St4D*ZRcBm}n!T+(DOjDBG3lVe z50IVB;FdChx#gZL*G2&mbe&c(*y6gcTkLg~&ORxyn1IR1K~i7~gv!NJi)b$jf{vfW zO-hOk4z`N2bNH|G$$=88-zXB(XBA?Vv5etadM^t#6`)`t6aTntZqGrviG_sn0++G4 zlRAZDh6oYJvj5MDtOF>;kx|O;p11{Xev??Ma^xl2V>m2w%FosX=0H-llb=r;pq8V9 z>-Z7)pa0%9l>!7{OT?Blx>`}8p_K#C^Rha&gNU5S{y>7qC*TMQ;+wObeEY`ULK&p{ z!keiw(D2$xe~Z!l9UebVZ%M=mi&N=HKkm3I&g36GbeXA{$~O!OrYD#9`CYRaJ~W2= z!8nLwdJ8z>j3d(>%NK*&7ixx8IdUit=lX9kl8s$rl!>;U`Z)$+I2{-Z2gj4*!2b$p zljC(f%St7fr!UtDU?~>{3lEz0m+W31!vIJtoHg>Vt*drCO`p8+mbc$|ht5zcX7YLS z4=}((`2(8`TMSh65<@!-$>4Hoe9RGa%qTg`5%5=#^|$4L7>2@jr>c2o4Lh-1KC|Rz z&zbmlbafngx6eM&WW^flR|}V(tGJKr&M?Vk&2}S@Im1UDZf-Sa2uVVMGDIMD0)ANy zJRGbf)rZinxzfaTF>@HWj2iI;AE6aekc!QVy=kzKAfIS6J*dlRwB&035nLF*bp7iB z_goQtfR;x_Zz4^FivpCyu_1($@p*K-b1yj<&*GUwi@0*L)Fa(~Cuag_Fj(MYf}cq^ zi~E0r3z?0{?dJSs$E!@@&M<=Kiq6egZr}$T$h;q;CJDf#9427|SAW|wwk2BCmw6;a zsiEnWwPwa88Ytd(-)G2R@40i;fi_|iv4%QAc)ff&P4M279yLg14e6f?y7`r{VhjXM zkqz;~mPc6Bt9dBrAyZqp#wu$2jl7F^i@MG|QMe@Wn@e_a%f`5xi*fn!w_ky~Sj?fg zpUI%cp!(h9C_10u$P5DZ#Q6uXv^4%9RK{_S;lTj*zTdydDUFbNM(g$m%jk#{UD_1` zW_r=CD7K}@gro|~kC_9bNVf1&fo%9ToFqms2^_fE-UI z>Qe5I&5<92*=>6#q&O5x1qIz^bA4aWr_0{B2_~6n`dC}*Vlrf~T+wBC!b9k2? ztdjC#BnfX0%^Ejw@C~R->3@xRTQECrJh80m-`hmsW$oZsF7%fAZ_2 zPa|P8JI663#=n8w#HWcovu`oKs|p0}m!$_ZM&xA;7I4HZT)c7NcYis7gAf%}q(o`o z#s#3FYPUc%aX!#L>P&(HUS1*cUfN(;0-cKNs`}k%ncb$XaJ4rXP{q$%A5BLx7cR9d ze^~v^fTfd|0;*bP$INJGD_^QIHtmIkAPUl#38WPxc;F)a1Gao4uiKvGe?bOti&2UG zYhCz9p2#kL-(!XMX3w6@jhY}|M=+sB^t}4gBs2_ES!p(FO0>=wuTvxN@_iCJ{$Pyd z5OY(aa*1(oEO{*x;?u^bP)0`gB9Mu(c_{<1PG@{!ut=UEWLmEgJIcy>k8t(_#+F~ z&;awNJuD}^#fhrIj@?As_lx=h6!TFs@d(0yPZlCvU-x0Eby#{exS=AVSQVm)cJ`M% zE2n5tfa2@oe@wW6gI$DVlRF(@o0lyv1c$TI5wGJ4?)0Wth-jL0FaD0hOExs9wyqlyvL=*OJ`XDc-ukY&XfWYAYv|?r zu?2R{vO}`(h2~kykp|^ig%pesrfNhxY(})+eFuFT{U)MLqe7qZ_>L^XZj|N5?@8S@ z#`GT0g`IS2-;BmNMY3WLt)s_JIQ&EIPBS$Sj{4W=hG=uWnAr=qyWFpdA z{39ONT(XAtunmxTp30AI8%tNiwbAuulAy_0li}qXs?6wf`w}CfTmD74=%bq`qBMnl zFyb6$9Dhu?PVA2VjGr0ZXuUoQ=vzctdXlj?Hw?E*6H)Oe@bcQ7hXN3`N8?S78$Xb1 z^$teL{<{4gM7iAEk+{RdC6@Na5PO+{BHP$hO|K&O(+q>sq-9j2Iju$9*ofRP?p$*o zs!{{ud)Jt{EJ)*C1dO=As7#Y{DRW-pH$^ZJE!n0;XnJE_TdZNKD~dQSh=!T+*djgr z|BgvS?1K=AVq}WDQgX;46#T%bOo&S5yUCM-9N(OSw7^HLRhn*Mk2X47a_XQObt+VG zLEF=ti9zr`z4c=SXBT_Ja6zi)gPhMKIN=#*P- zJNr|VIb@x5-AgTt#8Ty(pwHu(b2uQ{!#74lDrN{!>mJ0S1Do+G971zkcw#m>2Vg4? zb<2Hd^?b;ZwUjt)tm(V{9fyMJ4JLvu7&;3SJp(v*!b3wsCReROJqmUw-ccmiP!}-M0Jrv;0trB}`0IxT%ZQn{gz*;Ll zKKAG-p%2NLA%0Dz>E@R4B2|e?P)MOkGn3_Mua;8^YjsJ{IGz5=hrj((v=Da0oPLD444i) zzT@Kj{VkDB*Rs6O&A|_>32?WPgi{d>uw`vOCPrCOpA5(Q@u3iG{ROXIcZOgy);kf6 zFJ~=OCUEXbuV#Bk{I+6PU77sAn^`t=04T{|^o-2k_rg&ppN#K5s-QIww@zRl6o=;# z4;G+*K@?c?a;l0~Y$bNL3>;)Uz~^e!VR15YO?RD^1yI_i^(U-)8>eJ`i;VU;MINF3 zji?mzFNLn5GkJk^Yocl@lIR5*f!g0luA#ybg#Lgfg?U0yB{_BBi3MRO8TvQfAD0hN zR2eXzpQ&|EUh>3w+@mu0g{mDm&P8V;J`dqqWp!B;S;sy2M-EzJ$(07?vdp9&6+E$e zxzt!V5;^cN&uyms9GlNHYuC1A#flTedfTN*+B7Q(so2?KDB!O*f!Zh6{=A9f#9H$e!t{3zc?{IFE$1RH|m z343~I8FtQ;?K~h~a7{doOn~l`w2PXrWMH=Z3m+HY@$0=4LW+r(FSoyuJWZ_8V5=*y zAn>wuo40>G-s`y7bztO1_~TFEGcPZ=Q}TpqJ_1JNs5mVc+hj_IXH`3VWtOm__uk*Iz20?+<=0d&-t#~`q6x_SuE(+0cKC)viFv;KNd+~GT6kEsZ|Gs)p`~o zMKON6513-hecrul(D!)(g5{yh?j+^`y(>351c!ZgK=3DFBKs3sH=RSTQ6m!BQBCP1 zpT>C+u3vIv|B5LZ;QPd_o1m+Hcu$u9ZzeoJO>zenFsSghLE=yL#_S%l){TL2oS%G7 zz!rk46sYfR{$TlCsxg|JO4kHEVWpsElgTy6j`$zseCZD`M28<7+1}Y zdnIDU9Hh~qeGbJ#&w)`iQneE^!@L|aGwje~a+ia~jZE}!Dn&G67UQ#Zou$eQiYR+c zgLZ}^SfnUJFW)>hHGckr@pKrf`1#SuNB{W85!jSI+&P=x)H~d6eyHEf5l5tD9cZ!< z5D8%cdr)2ym$#6*%n&)$3a79$%o66kp;T{}Nm<6@9c6lnQJ4T{k+T@V!01+w)v9y* zMnQ5QI^sxF;s>laeDeY(i<+f!~ zGq=wU#iCI4x<3Es!KknJhfGf*gqfF;w&r-tP%4Mbc=048qa2eozO>BFGIBeV1X>CN z%rd*&4hd(M3rwUn2t*ZiPKf7&U2APlBege8qwBCb+-%I2vseU6tG zCW_cD%55!$fr17{q~+c}ZRV?I7Ud~!0~D!#h@${cQhh-?KYjY7gC>&h{^%z6&aHO5$7|6z;~Y5V`3Fp& zF3Mx42?V&`bdcE6gaw}_J+9544G&HGdYPC>XAry#4!SAdzx(gX37M^E}a+Y(dK-HuUYb&u~fr9;MO#YtmRaY%lPV8 zTOtP2{iK(R0e?)I!bwElpg-U)E2MvBqy{k(U=uc+qQ7t;&du@~Z1d!%N!iSCg|VyY33f^>LKgpHRptwa5M1Ve{X$2`q&D(tRu+uIEmBF}9Me zC(`slf)D{5iIv3}|VUVP5|(pcuTsR-DN&OK%IwN)?zk-<+~L_hRME-G{CdEDO3@LOEMNxhvg zFJfk$JL;Gq>lsX@)bWLH~b({DE>r z>CBvmJXR?6Nz^0L;|L5%S5mU%9F27J=nC%NIF7X(?1It&wR!IWpz(YomqsILGa1)X zWjRz)T2Vnz40!c-(!pVVnmrpZhgk!lbQ`WX&cOz{P#*k@@MIX8_Uc8o242HRCu*g7 zn#O+&h}9B@JrHI~wja8~nAO7FMXnT!#lNY$o=~Z(>1gTW~I75M@oo(cav$Ts)T3nv;4KbO#qdaMPkk#pHf*_v6AV zP+kD4gP^@6?oE3p&6+*ua0itdl%v1$&#?fU+P4oy5B2VepO%zkx>JBt9)lal-K!sV zlpynoRGy$|Tp^q&AM@Rj+i;h*T{`k`O6}lYIWIM{h<1>EfnD4~kAV~{J-+J?X(kRp z3C_%eO(X#}fy-gzV|5tC!1`Y0>V#|Myz(*hXMCjy27l~4ssj#nWBnjuEP5ZnOT8W) z=-$X~pIqfGfvV(ue&vcOY&11JsLcm^M(Cu2%3xwJr3gBtDB>a6rt({z$+FG2!eu&{ zNekbdc;!J$wbZLF;mwDgQQPkbxjN;BfO^fZeuwdFF_WB;7H@Lyf_V)c>a;;QWnFtD z9S-28>UvgT$3XlubC+^7$AZ85YJ8^}7Ifp-rf3{S9X)v=8B^+N_%y*h)3O^LIlq;E zX32on9GDrH&imGB#8AXLt|J6#0RlM?eZI2r=r(mE7m(MqoI+6?56rWM12Ee0%qaEs z@NPN$14h#9(A5{>Svg}ScI4jTZn6;rygm1kH^dq*3(dmn6wS{s?e?f=pM7@e%z+yN zbZ9(A90}|X9BcbK1Y^AUCJi`-FIWlTicbWD9L|8&0v4PSMmxw0M^WH%6Hq`#I9`3R zade*%7*tUtmZa#gU-LFfSXo7jvb2CfXIh#&QB_xh86m~`(tQ~C{c!RWMZ2$>ue~Zf z1QQi#3RoIOQV zeE$ek+U+>_-(fywE^wdx=mSD5{@9A%j0Iu?zx_T^1lMF^Z}t*-3qQwT+Z@jix{4j+ z1X!+hL*cnolGH^WjBe<$SP>N&^0X3if%6*`b3JJEMf0yc?%n{3BAH^Uk1@1bNA%no zlA{<$mhF}K{}I2y{{DqHmv{z@+=6b%Sk}N z)CCOH=zm56MYCBsZqWgl%?G)2MXHz4S!kal&=jqbCe${WLC7=IE8Tw3^^6CRznL}aO$%WHCZu8 zfHFpazKKY;T4&oEpNmG*dRqmb>W3)$ZBEk=&A=$?eJ@`sc3J0VuDIcbXOX+Gw4f=t z!Dx&}a0RPv+)nKz_cQ2Luf@pfBnc5sp-QN&evx`z_$`AW7BZ?LS zb#e@*o=j8#PPUtOp}|$;u=Cvi-t}DQ*7$T(7&IM}bTRX^KX>F(+?RSu$DJ_ml-@nH zWdG5_VWK6nxAmJ$eY}+iPke{$8&3wCY3+2TxM+U{kwRCsb}HM(InYM(HIAcZ;o^_z z0wa#8R()=WiW(n7*Unwm|A5-3nki3L;;V(u5lmwq1+~xjPFTQw%UlJt>-g)<*$cv8 z643_KWAbW}G+;+m;PS1Gq2xaQkJdfRj7G2HMa2kd>KiAHIM2*yiVKX!guYtg2zH2n zwC3K{Afd@Q8n7cu5efn;cgp2PKU^qant=!Ja0W?)?6IKFVMd^CME@=~s+DubaChTIaZxn8a(GHY4f>eLH5hPL0{GiUt}UhK2^1K>GOo zYItBh_U0{gAFNa%Bss=Mu-NB7*-~^;S)4^iB_Hr+Dh;D$O(^(j>s16x*oi`3Ja3tZ zB>u&3%S97H$P3`ZAd3QrU`|vFQvTMFB59&t?_SN^U3kEah}q_zqV8SP!7?@WZjCkJ zFk;R-;nb>Va>txaS>`(C6myyv&(!KRR)WKv!5Stqs*>AuHh!Uh`v&G!I^stqUF z`16TgK?V$8>P&c*x-@sjFms;4CXjIt344W-PErDWuo|^ILgdFrNIAMxzpu z!uHWiU=~yNJ*j%L;x?$k0h~-NghQQE=SU3xuU+*6zuz?=xo;H%=5s_^bN!o?ybyy( z$X3#TKF+q9`x-4(q$@^4xlJV8jxPf#gu%~=;Qw`|?u3}1Q^OZ$qBA9`!opv)ayD_J zG>@YEjReNftc*MyEw(%`HZ(vyYi0AlV`XoFCt5PYSSLo;i3CNj#*~%7J%x=74ms)_ zRn81;{_=MToCJ;0#l-1&)1h;h+6i*rF(8qc!5Y}l$ESl@1p-;+c8q68d&E6q&7`OO z8Uk&cYT3(k*P1?bRXZ7cV+OnOrc-#&XRr-Ze zjT}uAeeRwOYQne6n=V6ePvA1o8zR6y?XAmoyU&VSv{(i!fp(!+j{L_D!zj*xuux|) zI-cz0o%O$b`ss5=z6GBEyA5!-YR-QW*prOXZ|Rgz}$$}H1(yv-$*5H8!h-$Ew}3qw|<4`(FqTVeQFrEj$1iTVO|1Fj;5u_iM8-f-lRbPHT|f^xMWLpPM_|LT z>EpNm#Ln_>Fq>pc4tUU>Ocx&-@=nU3o!@KZ$eP^Uwey^ZM{SMSZ66N*C(8*G0DlIJ z6NvvfU)C-Dn&xhUEXUo8zvDBsgT8s+Xk5_s zs4z{^7ICn3WrfvNNfY%;F9u@z(fZ@(byQn6mrXMK?Wk?lf2#JpI?_ZMg3Lu5MOU(! z15Bi{ytA@S9M>43nNj{Lqm?Mw9Cp%D59YV9zd!!om2gi5u%8h%`z^)koS!23+A{Y% z9Eq8~+H-&I*C38)dbXC# zo*)o2wr%#Mj6cr*rhYRtuUw*Dv+}hR`74Q?bR{Q%YaLqeyTPLk@yaIW2|B9;A0Zl4G)!j9(mF)=m88C!Gt6qo-F1m*W& zLjrqP4MgJw?63rPUrE00x{gg6JC#i0P;XQ+4SG&MHhK5i6F*!tt%|16v*_sk6*htP z_o40)Amz}75g}!pnPtXfm=#5x#MeW{F4lEi{WNB6K%eTj2)Px9-`u4LtT?2sR?N5S z`n;r-!D(x@%W-N?>iT~-uDSNTk3RYWdbq0)X3xN|LUqqIos98)=*>)mNqY^YNxg$< zobpkX#a+xTCE<{0J&jHQA2vKZi6kIeVC|n#Yy%@=7BiKSD>%sg^-hyfEQFK*FQg4e z=r==6V0nqWAu3W{vI1bE#L*tF6JNxV__DE_6ygXFEpe`xzcrCLWghfE*j}`o8sHUU z{-y>bBkjd~gr%(p^gduva2ugyeqr;;^o+*%IB~;-(xdjGTHc5RAcjX8&Ze3806xo- zDTIc^RJ1d1pRL1)Mi zm@3A^zzmAGJAz2SmWi6uH?ec(?%(II4-5|CGdpGpn;O&_$*b@*C6$)()D_2%+fuUgG~H zEuO>|cmV#%fVIS(wT%tf(L&JYOqndAtFyK4t2jbA9FBg+=T;Sf-_{z(5)*sc zaO;uFtiCqhC6i0-+-W75BS#?I22@r20IYm;)y)nj3RyrrSe!_hRyBx3>n)O4|1)fj zJf+4M)6qbi4=^5q@l+GQw6l13#I&L(XzRzdWk96XMa%d|vr!k_8yJHQ+1bqYTuz7{ zY(im7Y?%UE3bj9RzQP?y8;Q)vpW6(s1E^g8rY!-qCN2?6XU?x6$5{VWkSgXZZ{zZm zmm|JXTdrAT$d$)T(D56t!WUT4Fk)8g7TW1HrJLv;%zv1>HGT*r7R$w~BU&|5RaPC? zGo*M;`b?a^^`wtUa?qv4xyiM%=aa^MLa3M6>ogu zU&o8Sf@zHw&BKlmBd{e7a3YP^L%moobFuL`h!BwyEqu)Dgn)6yNxIOtMJVGmQ1eMR zWQaJz8V8>p!x{-=gxfx9DE?7i+Lo@9mq-99C2&}nEpF>7SYo8y1X?yhobVHcz4*Sk z6z%TZ@^dLmmiO{(!hY0`^}p(E4&%q3eYQV`2<@42A~aLIH*_|`3_<%S3o<)Rb5PHn z{BV#G51lUl;~G5#&RQ4%#u8!u#vlX>b@O!ndYaSy0iO)Qc-bGl39TwYoof(&$60Ng zirJa}Gz1cWW*#50YI;8i$D55=?88+bSW_w%e)8PrFG@iR`+(Thow52_*UC@I(yZ4eAi&Gw5GdPIO zilFD$^YY!V%AV+Exh30 z&IUaV;pI{VfRuwSP_wMI#V^U!oyDba49d+*PF9TLv2+BLCYi9orCe~Kjg4};Al5z0 zv)ekx{+U~d|4dyL9ZK}vB||I{-PgAVsNDX36u&B*cxav?9OtEIPZd+<`|TAC`hC&0 zf1H6}w#)cn$es)|epu?J+t0MNCrTIS+&h(M`V3Y4^H7?kQIauXhUZ_^W?Edw#Ri1V znk^p?FEY53uG6w(3RVa0J-A@z^7l#xVN&7)ku_Z=QX20d#+x0^@MT%3^A@8{4*iwl zunIfVwk+~T4hFp@jVW|+-T$2AAE%9>mOB=-#ydMCj7$bAGo4Aa7l0WI zGprA&f?2e4DO7vT;-^S5J++G4gU)^Q#HfN&0mgvQ&jA)(FJ4{|mET)l@x0)&N)}Uq z1~lK23uOn?Mw#G1ysF^^}A$|tFXR&EoPFtMCnzz3r@sXB3GYW3yV z>pCr-pUX$JpqD+N4Cu5*x?1~YyId11xBcrZrk?Bb?-gQYe}IKww1SW;d>AxnP}AaE z^|@6#aLq?f`I^fklOI2Xt~qB;%Qu&rPImFRbQbX{LoYS)M6Ff)L5>|4GQ&Muno zNywZoT&*TC=fnHsJi;QGEnqC#CpzbWNn8G87Wl_E4mT`L zscNR1DOMoQL{|#+V$VLgGJo&`Qc0ZFj0bnJCop=E=2!{^J4;0d} zr?j>&=AQ-L*0r%{^b@=)pA-q4qej2bJ_aci z>FV70=!34HYo>Dg0HZzWHk6{ug0naT$1O#a~9CeU13|gU&0NgOAto=kZIA# z^rEg78kDxmP-xM^Dhtk&Xb1WAQ|z33m>aZC?q>>9sy|)-_ZI$XbCpZ^7Seu z)un~A@59N>d9-Leac~=*j0zWbBKNO> zYl)ImPW?#8l~t6_(1<7)Pc+A1-XEu<41v>Ofg)F@r*Lco<$Cu$w(M5TD8PdrbNZ$f zQ6Nq zs>1oKDdmoa!_!2(G^v5PXgdEEABunuzR>|2Qdf3^6rJeNM>BCl_p9G!?8{qMVt1yUAOa&C7TR;e)3)E|@q!l7%9a zmldn207*_B&QTmqN*fo2teQwuB>&b3B zItH^ixkjRh(xr+HG`yNf!~Q+j z3tjP$DFA?T^bK&AlAYQM02)Y10*+GBsq3q+72>&x6(Uyl%Wu)SSjr;-5HOk7G1M#c z4@A|!`!1{G1B8IO9+B+UC@)5XicA$Gg+TyLxVTS9u7BMZ9OwX=^zPNtXVi&X?KL2# zW44-n7g0z^k_XWCxBP%VUsc$9)>17M9)CE(=TR|`6OAM_v~~s%#ADZj!0zJIxfLwp=ky z*{riCZ}UDg`Y}ysEwMCDk_%yokv?e_7Ye_*^vltA|LpF`J~JM>3ck+YF=I;D6iBn(^WTUfxUGJkM;H zGf|b~XQAk;S*7qPqTR--Jg-)O%M`o}_xZnpFPdrvPD`}r=}3dO5nH|Ei(ph#=wig; zl6J-l(9Obg&Tg+a-zUC?@9QBG!rlX-QtQX(k*qd>3sF9Jvr(~};2H<6J=v8kkgqOs z6cf*VixfxZe7k-&yBZAip7rky&7WqU)%Z^v0Ie|@(d7@e06{SZTf%)B_YIP6>1CLDGthTk*w$3*>36ww8d36*j9zy+FFAxPT*jZ<0|^GF zt=H;CZ)x;#91rHRPkr!ij|5=p7$FgnErXFD8~qenBz%>InLy-QO~;S%D=fF4Z{Ef7 z4LAAY;30d!Xug zMsaBv8`uU7qC5r$YK0~=>4{@Y>S*At&M?*8h{{oRES+9UoY4 zFd$5vX#vdx;D)Pk`i!MF?23z2oD%3~=kHm;Ky(0~VE1AXs}3}lrhOdGPu6Rp;qTzW z<}@H=XGF|?91{(k$=m|Wyzb9j)ZRBaFEOwy?h+>z;4?6)Psjvx@s}4bHScT$Q;qhZ zS-D4tpYw3!PFyE+F&EwIB&(RS$*r(+Im&)?5gf}REWN#cfsCV*|?4`5KwiKYHc1gTKt7F1t300g^$|!fYL;SzZASy=~Qgh)uU}?mh#`KACXp z6ObO@dGGiM&=n;kN*S$ZY%jGVGx_l;e=vXNn4T@qa5tQPsEs<}h~|{!Q<%@VIPM=pkqB~T<^kJ9gYQ~X2q~QS3(lL|ljr4} ztcZPJ1;e@C?)!rKsD^k&=PrjJ1b^e2f&5YD(KpqqQ(L_Wd6woMNeR<`01kJthG*e= zal?}_z>Ux;y&D3N7_-j)4wcetoS%{!fr?V*wvA=5j(!AXXdTEb~#}l-_FA~X#WD*JGT(h2vo1@P~TZR^W`r0-3 zLyM5Y^9(~iHNUuH0=)1THRvK-IUK@z=aPH*$0P?6I#frg_sHf{0p@PDp=Xj4cGCvs9 zj%1zl?tGFt;KQKP;sH|#vsl02_8fCH#|J$pMl|^m^8XIu6YWTmMo`44ckf7gz1!wE13CyKZoae?)$#(>$>iO-UZCly)e764{yxMlVdOAw2Wp;7F*%0o6C;BMWY8x z<)BGSra0R5U|2eLzm?tIK0!_CWnZ)uoo%lSo8u&YE`Ep+8)~MQx zYv8WrS2Sk_+kY1zt-^hv;bZ3@U+nJhgf~^rt$EaCm7MrkPK8o^u|FSB7HmI1PwI!| z7;XC9U&1hO`2vUmuey+WSDt+WtAS6)Z+@^XWT^k^{g@N<4q3DAqMJFDhd-a|D<)8j z$i~ye+zw3#wG>HYU_c*njaF*=!`J7Oc`88JKhn+qE$FH!T8D=zcQx9lJ$>dCS4ynw9&?$ErVXB4G` zB_-wL6=PS=p6Ff+X7b7l$+$LLUR#~mM({FX*iSeGx|xL3yW(G*6p@A$X@N}bSXUm< zI^z%GSe0{-gq>pcd{-d&iA{!;K(I)Jz!n7Fgf&OUn62mlAq2H@NRkli^e%NfsV_|B zgx(h<63)?7tk{$e)a*y+-|J7ugouOdXMT9q&*a-CM=4oxRfnam5-jR#x#!X?a*z}) zgTaAZ&`@+17+GJ-jdW$n+o!XWr>R*OIv?!HNZ@In&W&UPKV7V_6~q(lK}i=$4#$J? zBFKo;1#_M=0s$_lJc1s0{rLx6um3Y8PfSQBj;5B=Ncd0?M<5^PP(|Q@(B`*c#PDe==a>|@ ziuZ3<2kGttmTucG!Udo=5uW?xVv*WUN12|Pwk}?fY%kC`!w?A-c~(DZa(stKVvIqf zH~C*JkbH&TP`LN75GYKjCP_84$xImPaHecpq+`lN_xo{j*;-3$Zi*C2 zrCP|+matU0BHPih^GNS!PMEl2;d2*v*6UVGmg;c(9l94%;>K(r9*yNeFiDNRjpJLt zO{+==*(dZNtJSZ`k{IBCdXbX8{V$Xp{;sOuH?Q1yjb$|c0!}>}Lcy&meEK0=hN0}? zOP3MgxiKvtpR;qccrPpX1Nv5B5~`y%xp054`PXEm+6&V8vu?6AfF$e7BoVv?t$FF} z!jd+v`03)6YmT75K7RACIaN$!Wn>_$U&Mu8-paE%vdDBuL#zZm=Je`5AA=@@3%eIV zI-!Jw3(J;N?MppZ!<~7@E;(q>wEv|1G|WwStYQCt5DR{^Z-Ypi%Rpl===t<+_JVj}r+YyctDy8XGOmP|m zo6aY$x#*nLKcnkA#^<)ZzagepL-&}GC;jdMR_4YY|p%Pza2}OloZowxr7}npzYR2_{bQCP~+_k zjGr%5IujUcPK;QiDcv$Zlu_yWqsFr3uAp%jGUUoNv4wJgU)e*EYeZ48J`$bJi=442 z$I%ISC-a(?qG_fTM-rrSsQK3xV-iCotlE*y!^-@TNOU8|4h(=QIGmKk zD=s|#me=lvixu}&@erek1~sTHDbbLI$U?0ypAl zEqWCFbT_cpx0NX#%8OGES!S$L_{D;au9Y!|kBDMtc&toEGK~A&CoMPg(~CkcMg<)^ z$`R4SPo4Mx@^}iza`KFf;f;k@oZlQ{&$8o-lq+}areR+l5w5e5(`EgkL>dZibt0L; zpoqDXeR9cX0W^(atNQX7Bc`O?dTG?o~ zw|frrW%c{(%oaWnCuYlo5dxRT30TPB#r-8IBeQ?qdi<#Qzfc-ibQT-Wk9U->(Ruf$ zCl7!2<{U_aEhynIt!8wTj#P}Jb7!7}c>K}-3wnLaV@d6IvGvXqBnzLa{-WOm6#T8I zt2R$33lE_S0Dm3L~>bfJoPyzY{axi=^K4@rNhYE71z)Nxqs3mxK zF6KONPQ4Qo-}QvjZWZva7YP%zADkYl?X;LQu%vTHhDjhmII^eLHk)ZkE+LF>`*u?w zJ_#4~PI4yuXmBaPP3(+N1k?c4@{ib-lW?R{(IR>qauM;tDUMZG4DhyaE+u=SC<$=l4lQ5?mj64hVy(~yZ_V7qz( z$tI4PRndA{boAI>Gdf-eonfrTYJ31~xZ%<|&N%5wCtQk!;e1gyO8y_6Z>s{e2oGGS ztADHvKrp64S${~c2GkGxb;uQfkuk9|?0-06on9gq9Hh?%3?OwKIUU2ShT*LpvPNLZ z(isaclDB~3r>{892Btlir~bk+kjlxbz?1eNfRs-Y5*`XU7UXD~5p^;>Nj_-<(3wuI zvP=u7kmmpj5#l)h)A_yoNW^_c(qnE}&(#1tf-d8*;oxopeU*)~!Pz0{rL^=)6mp!1 z2JLWqNk1G@-N@Dhq4nkqikK_X^nKH!P(ln5xAHeusX9n4|FoPCV65L7N0O@ zlbBqhG4J9y9TUNNPL3+_xN=ftN|^qWc8giV?V)(e^1OLQhP3YEA`n&G^~&il@}c97 zi6fpjgfOAVR5A^m83=&`W7QnBJ!!f;HHQwSEkGRPkuw!x0UMy=R+XHcheYmDd0b7@ z9%K++TgGX%8!jS)p#8`>^~XZ~ii8)>=9~XiVR(U+YfTs_g;pRu|GcG``c>vDS=a?{ z2JY?S+nk)s{pU!!nK-21K5G{9ZNxB&NqFJe^p+>jg5L$Bz-fW|N$YPi%Eg$*RLoZg zR`zHy@jlJ`s^zCy-LJ|NG6_*vhIXR+xCjOJI|`t= z$Y%B;$X3M@?U|ClAL&aVNjY+hmLLl*O&fbuzbhCf+r0=0%!bPm?i-BL;WQ$CG)LHq zU1fe^D&l9Blsefk;QyRGRVS@HFJdt9fD{``cT%a9tdM8_%pzrTuQukst<(A2PQSLu z0hxP|{zVEkY&D`GlT{&XnZ<$}&(oGK$n>zp+0+Bx^Ed8_Jy(_FIa6wBj(a#l2>@^o zK9Yx|PO0botnGG3s=7}Au$4U9-apS1_Ari-pbU#&1I%T^tJ%wBm}Anzglvtz+63yI z$|I36*S83|g!Hd~E%?&0r{Pc3@}R*JJ6gg!CRbl{jC?8PI2~F$cK#)oWh7BAWK`B) zLjqq+k7me$zG|4AN-sLcwG+H7czRLW;F#L9;zKMmfND8FvNGv@tf3WR0r)56L0qy-}Co8r5J8XCbL;S;D z9!yN#KxWGsL)^3d)&l|(kBO;kt$H46tJYzpF)mWMLINqyYI90k)!z-K2cLY9*mrkW{5O5YLUbs#cN@uji|9Bt@A_kt$A`e zmFH-_&hg|aJ`0i$$md%$;j8ByI{f)ifQ_WfNF}RD|I!~_(tR+}9Ek!n#W57#c}*Mb z!T~16z;k31pglJ;UAehdZ}7NUG1U9)bjn$v2y|`{hhoDWKl|Ci*nl$+LDsAseidWb z?mcll=UQ*}xDY3{SRklxPHt&A)JC9)FkbSoNtV`~tRKYzeMSC!69dk>WemC8S?`Vsz+Yar2hk`#)E&g_r=XvZL%?WUS=pSaWquEn7LW2COQ z3q2#HdP$JO2RMesBrsFb^5obw(+!6EP#+RvgyrRv~)W z06BYy^CVPtHbdL2|Kw~^zN<2oNU8c?1BAr@Dw750iZFVQRR}#I*(S!Zn{Z^#)sfcGPYh-CxhVMa6xkqD@O|2pq?jBlX zvjJcS{-9Ms(9Uzx@3o=_J^k|%wlo)*@t(w4?kKQdW*<_j0g@wO%k(OrUf+@#Koekg zbeV(Ko|Q!Aiak@Z^k|-*{~5`CVM$vL16;Cj%75b-&qKGjYci9|bZttza`;Lin~>Fg zXl++h!DiSG^s}R_S=$gId#xQYlxVk}Dl6htsG9uHw=m+C`L``-mW+01lOR8S=5B=h(q{avu>u0!W7$hT3KG&Xo z9`+JDZ1)d;zw;~nmb_D2WDGG9)xq(EWu!xCFf{or=)TOyTRY%e2_8HwCtOK1Ji}>+ znAoe$ogH&B_yA_6F(|XMi#NApkTXGa@r9_TA6tLoSIdn&5t=Dr3H&*m#iI-usX844 z5eSm3z^!6qI;g_Cm12JDlE)A$4Q%)}@;*t(M_9dli zS25x9dbrZ0Nvz_RjwKs64nY+Y>mVMPbULk;#Yos_v;k;VJh-?8%MiA9U(@ z>=%v7hVEa*tTwIkx6r?)j$=-=VHR^uma3i-cs>Bjgstp$dt@;MiNtTcQ+>Jt_o1!M z=H+3)JAfT80qx_p+y{dRvDRVb5q1YL@kO&SlIWFi`FZ#;tVO1nlwLlJjxEs|Rv|ZJ zx)3664ght3Z0q`$5jIc=g0k&v%22%P!PCJVc?Dyd`Z#}^tn4!x^1*X@4NA>Ec0||=oGydSK z)_+W^U}Bn{UYAE639o|apjTVaOzvUR8x4#r;lMt!29sl131OB|@%LK7Wd?eF0`Mp( z>=aF0^_1Q?zNx8+olG0kLhaBuEX?b_iR(b;?m5v@$JY(JvZLsiv>0Dm*SR-RrX_UJ;GzWJ^H3zf}HXg-p#Li(=C`Z6PM0jpVR(Y*%$07XzowTQ^b97)b3nDsES_IA`K*GIHo3L&9$;2W zp~Us5rNmPtG-`w_KJsk_nJpY$d8CPVhXFmEabI-k3zO)0YQZWi<~k~=$0k|94qi5W zqmJ29M7PoN1xO7@vlLDrwG0JhFOMly zh$5t4UKiwqeJC^un4(ts&i8qe&teNic~Gp%5>o9OOCZ^JmDXyr4}4I*kg~esfBcnU zTXgto{}HKf%^D%!D|N92LwbTW-WkqLOX?8{Xu3mgSgJcfLhbhAFnpnFgts<*TpqRdKr=5s+ih7-p9my`B-~Z0jvp@5-CFFm< zYNekV9LxB)9i=Vho9@WvRCtd=E2>qF5&D2d^qD=JSTngu$A!CgDY;V`U#ZWJvlj09 z4hO>n+>!K?bXW`j-6+HXlkL2QeL=+uY+F(r@*aHbS_4EIx^s8KASIJn+h@?t{hls7R;m|O*ERvi9m8g7$?j;su ztF7hMSPKMjJUE+L$1EHTgfX)GWinN${z9r<`e%3Mfzo|VS;a5Jl8t+y8w};BVrdps ziQsoZ_gpx->ZCZOk_wi2#+W9+OiByJQH2>qV-1&0$RUKEG;z)*GYrsLfnAY*rzH_6 zwad!m>Ym_eF@nj}P$&bzhwr&6nqGOfosj3iIGhF0n|ITa`ql_%$=Ng8G)%_(J?Syt zbCtW7H6n&g3Ko)NvZf`suXQkA+(hY%5W#esD40MYLtVyI#^B!K4UkCDzJcsmTalc_ z6;(#tDc6WkVIm0B_K(KI2Lurfno|-rNoI`g=dc=psQ$|ZXm6ipN<1C376i8Nq(5Jj z^x?_8dmt&2uebPg#OB)Lo32}*ETVQ>q8&5|V@;*Ye8q*rw}mq)pRHz=)N#viIX#%R zX>0Ot#pBWS2~~s6L8NCr2a+9--NYc=a>m?~w($U*p>rnMcHL6JO(IA!pep{*&v&5L zq!pwj#K5%P2(1g*eY}8as<2u+L=&^yQ~{If+(5rM2O4s1*%aA*)J=3@KXPbJ5nySE z5}I6Bm2FlRt_Z0>HKtmp%0Xm*<;vq!i)X8dEpKaTDUqv75w#?`rb#^on)zOhm&OXP0qd}1N8 z{xY9{E&Qs&9$>M2ADSWoK1rnd$ng_eEE~+joau0kC`$}1d(>b0d(Q)B9J#(rXwOjs zB%5R^nG@B^eK7Z^FiKmZ?d=&Ba*^c=p8o#-Qh}6e@%Vzxh1NqFXDp&}M9ZGEk4I-R zA=v0rg0304$}q`nyRH_~;e9yQos%ILgxw1(2;uD)-ABn+j+&7V6l!WR_rshO?`!(2 ze(RX6;boH1shRU|!D7Jd@>;)F_Hb?w2l@b1bBOiS=J^RfG8)D`pN-q~!l^KVR^TQ7 zwHg0_?g_IDEa;K;kVO9J?Y9pbM8ccFOxj>CvK#^Kjhuq|)@~|pg?~wG99c1uAzx+1 z=EE-D;u9!SZcQ>^b3D496XTJ>#PMqK@zmt;oy;^bOzGQ3F4ZQ---5}7%eAN)av8VG zp^ytn+3@F0yOKi-_7LszQvp*>vmlS$0F3AjtD*}_SScFO zzMgOM?`MNGmw8Q^nFMv9uu(&E;nk&2e#Ge>=JNjEYg)EFwzKi-KecA8^8DXDH(mOB z4*cJ6g`s@}tg=;!q`z*xVr(kG>J^{TZOTP-*w7!H@9Zo<$n3aBr+G9 zwrx+QHPBIcXH!#Nbuh~}&)#tXt55iFU}-qKt5^ssUazUOnNl7^6~8-vH9ohm{8E zF$Y1*f-FXyhnZLBto|YUXA`0YYeqt&_W7Z44n8mm*Rh-~C@M)ZfbJvd06OXs;1FC% zPeFk*ZwtB-l^k#a&se>oh_wk3EM{8TG0HVEHO$mH+CbX zbOS3K(oq~n6tul(tkXCECCxMJk0XVM_2U7;cseu?1K{KxGju2*O0#N`UoZInr|hln z-tgQyN;GL6Bu2Q_;`fho*~*w82KS%XUtYzVCIA6-n3`JW(arqZ(_lZ zW4|cH@Wl_G^SNDfzc6Q$=>^y6B;58+(Z}XjH`5{v7&abWN=F?LnhxZ+AS;$7oa1(WO)bt*voy6O%jf_EV%x&szQ%+&Q6y znEIylB(%oP)pP!{TI($|SUA4)gJnQ~vPqXlO#OD4+d->mRdJ_bRsx#P^!cH%RKj19 z7lvFIoW$AdKas$Jmq8!ig(xFDL4c3Aqv2#PjH3efg_A(d!+-!XRepuTy06@Um^BIN zfb?t{)Wm^Go%CW?7|)83RrwBBGOrpTksQeB&M*|m94E;ttO!*B^?9o8_mQ(<o)uv-+M2Q;u0S{QzEUajMn*eitKv!%e&teV|Wa_#- z)-as&q5*cq?hPI-$L~YDp@Y(kx_X)&p7;Lmf4{`xs;1B8+H~^ma|wOyFyG_pHvUPk zEVdcBR&B3`)&UF@LCOKV9{tBykwEEPXAHUxrHOL~ZBpIYI&rX2ko==-8f$3OINOkR z?FTdIWQM~GeV@9|4Q+mb=3q=Gc&2SU3GqFSxG zcZ4%`BCZ%4o%;nQKVfkF&EyV;1Vb062T;m-slnbF*2e?IWHH!%Qp(25{3?jieUrkt{c)IpEo+Gn&kbJH}{1#JWNQ6=HcQ)`m zZTJ{=+F5*b8_~(q8`#KnI(izy#F8HnN;(^aXEk%n-;vi!6sP+l4_S9vm@?6c0+i*b zikC|mzp?IDoUWmWvkHdf zJ+u}&_O4oG!36NH1wwCPEs30VcrjU0CrZdntjWIhVCS1bzHQHe6Zdtg;2*L4@7`eV zaR%zqph8nqBy_Luj)XV_oNB+ZLq<8fT~M0>=*Q1t(1IM&<^%FooZ=Y5!GPS?HWQ_) zC;%_zhSt0Hd~E0#ogZlUZNs-L#v(qxjgfd%r>#W|!__^_7?^9=LSuC;oOHVMFlJ6hH!BLapN*w zY%RiiaTUC3AgLN|tq;Cc4!P7?B?jH)fYPgR#9ws&Ti8cVlI_$LPKyL81U*c_JqDYta9mt-C z?}XFVb%t|vnIFjlryhfl$~xpyFeauQX+p_yXZPx!V@EmSnyz2tosVyO@PP+x8F!Dm zIJ{nJdDBqd+#dHBzuAiP0QAgV{Bh@7nQ!p6j~!(dy)|^t78~8yLoTQ+Ou@K$6mF`uB{} ziKo!ViCI@@0giFIV{Y;~VqTe~)h@E=Z!0 z!Qr$ZASIblkcrZH&nFeLEnyJZ!RN3XspmCb7Zk=qIjdjix?v|2x!4^Nl@wAOiozV|v17`hDa68yDCxC}-o&gf`3~oWjux z#6`olrDd7a7w6iszuVh>LGxR?LN>P(#;7QN+aaA$)5AfxiACNw%cO>^2g#ZWC}aRX z=BOM(dCD^|;fTuj#(uMAnGZ<2q2z!TB(bySMA+6VT77bu?JFQ#$vquph-WSa(`#s# z*1ybY4@@)dR$f}qxAo_t2U}O)_%1L?QxfUqLA0#p=S(B&JR~WI7$g>~h)o#+>G(+T zyw5RaF`t0+>hnmTVSOoGdK*S*utbH4YxpXS`iKX(@ssdOh1%gbDl0vw2x_}h{SW5I zRz^>L!P>F`mI)X^%r7?|n8~&YhbeNGeWZn)ht^7x3wAN@@}^0w;Ak3toq{H*g$-(r z%DST`ynmR!a~wme-ElFt$5erEs(yflGJdXGrUr#XOVMU>fpEf_?&^i>`wgDKq^72= z%pBhO2m#OB4K34l2Ft}_G(TQ4==-#%(1>Bt4$f{=qjG}Og`*KF{{yiwAg}x;9^)3A zL!}bRM?~m2)l$5^TMVF_$J)G#PM{lzd-#hK9@KISA6sChe&?*WRmY7W zsZ!1KI@^~Dl2>T9pgCc)8Dl?OC4PVv-*Kb%7t#nrC-oEeDa zc8AvC+Vqx$z~nbF;jZfp{+8nZ1QvuYg7aaD%l4gl(apQQbVL6tecRYB?lJ^9Bo~*q zjehoq{XavAY!Wm89Jr5Hy27Lx-Sfw}f4#mR-pCImYo5$MA}a(GRU=eJSa z>@lPB5xK=3bPmAaojc16#t7%dKoN#b!}et!9wQkjK?D{}tF}a|gYqnoOq$ZHeHO@M z4gM%9beW9NR_rQi%rXAE@m^}8AcH841~cLf_(L2Q1`&wErkQd_KNZsr90m@il^Lj> zrcA!ML=!Rg5fu(O)=4n7shQ+=V3_@`Oj&3x4?q0f({GBxr2d<<1Cem8=?r@hY1|4m zDL%~Naa%N3n>US1bO4M)>E#q5PK14lCWBenRpigB27K#u@vLfI01q2>=NYkq9P6Tg ztbB<~$2Y^Osn?+2@z5srAkZou%;&9q;f0X*o4}bT$1ec`k7H7$xiew%etk9QYz>{i z=e5m@x+f?Q-oC`BjcrsS^{5qz7l3j2A0nqbov2YqIPXmsD^HMmkSN9rz10xM0bKX1 zj;lbt;PF%m-U`MzWxf7YLSLAN@Mze}dtnWE!1XK-(K*lbmIpkyi{U5y$yhrAOd)t)0qC+^chsLW19~dRix6S{+2X ztFQjl8u(h~_kCGbL5)G}xS5#ob$l)NuL5R`6keZ;D$i*L0KR|ad$0b6#G~<8;so}7 zo`J{gZ?{=Pw}{?re|X~D{$&LHdRFRhegiAbY6AW9QLMb`!={nsGtfo#VMtok%woW3 zWF&M%(~YR+Lw}g|h?-&CnrO!MS4u$$k_RsnAesV-kpQzCe0goyMMj*8DstEyNJ!)$ zzr*3yQ`v#@KJ8UdG=okwX$7~%KV4hR6y>6ZD~~&rx|+U>25wbs2li!5rCGiJmMuh~ zz~vYOYqkQ6v>91~l?+#V!C>HPvI^1WaM*O9_w0#G!c>?ti-Gcm3dbVSozyIN+A3ba zbe_nT=YO_IDL4EtC`%Jbk=NA_pdr>i|NOo^Cj*{7a<}+%Om|m^ELTm9$xIHEqbU&f zlcqA&Z5W@+8cVB3HwPk;8Al++c^u@3N~fqB{OrAn~t?{VV&l1h$|k#(buGsWR2Qoqn8Gr z!@Ku1)D2cGRlR=V)4n!OF)_Cpr97WbLeTq}DOf>qb3)dkDqr^=*vBZ`YY+466*Q*X z9rI~8llG~axrbc-UA2CiHQ)@`JoR%+YrHW|ke=PpMzoy{QK+i8MrzCEy+swB*@8?)Iu_5@O&N`qk=4M2QIkTd*Bv2Fdtv|r8 zxY;I<^lRC}GW46d1e~nZHiu~G_PEisGyH6aQ zVuG(s`a~_)=*CB<2vLE6Xs?Wpe(>g>ci;-2T*XH{olt+y!&qX%9b>z-2ICCAl#pVd zKHZ%{I4nX(A)SSI^m^@>-ya41xWrFp7mi*w4r53~(jH3#BM4KI1HSM2UZ83{x28EH zkZ9EI2t%bq1c&K^ZS%3d<^@sh%iAdM!*m=XzKnAT&pb#=|E|^4vW_tm;W>u6$ydSx z9tJ_QVP_}nOPe}mQnfMkfM=xT(_asT2+D{`lbgUhpctRsbR(ad5~rZkjSJQQ=oJ!C zXlwXNc~Js=lU4)@(K}X0>CKk8mW778Yf)+QhPbLQ7}*R!C5IOKfMlioq^E!2DlLVs zP$W>g+Onz~ma7aYpry&jjGF%^CochX@K!lLZ4Du8;eA&IX_VHz4mTSSp{8+SzToZg zh#!!|bDn6>?U50+T@N3Eog!#UtearF%K^i!3)3Dd?ZvE<0FT8LQDHR0ZNv;2b5@YC8GcSJv zlo^;^AS$RP6o@?aaC@;G=gbF~7lkRq8hYUhINHCfD90g_j2aD=D?X)ArL}|X=X-!} zLSsvA$3TAjp_e2TtS%w0w>M70zMpFO&RFcbHgIl{$HovHdVQQBIj@7LOZ*JiFIoZ; z-9B=|h_&8xY|>`xOB-oqEc)ck)V~Y`GbpnjCyj+e=L9|3uEnG)+GEQ&4T6ml-<&q9 zGh3GDmP;x|u_EJSyL=))8eR<9aAP(g zw63-`oKx8$$O>?dES(eD0T$8fqt_Qa2@R8+X_j+1nfMh=+n_!; zgb)qlVY#|#-UYNQKER8kG7wse4qyXd;|xw9vR@8{lY<6S8j;I>DO3fgKu2w!P#m}t z14$#@E_q;dCmz~!Av-MD%!mHU-%E4lxT0Wp7p3SWjpO5lApFr2?im&|mG5AX5%l)L zG=cu_(1glmx6DC`!I|$zsZ#iSe({prK z#?=n4r??^H#u_!k(0rpzOx|a>Bo4|0Fwf<5K@P)Xye$*+_-xx6l`T(gb?>0^@^X zt(V6@fB~@y=xuKeghI>i9FYJ^sR~7Gw*VYb*wE8%?NDB)N(kVyZW33yFtI%m%TCa! z$ibzv9r%Db-ym7InkJ!*v)l;HY>6-4h3Llj#od^p8{Y30^b{GV(-w#kQP~4 zqDW&%hGnM)Q!(fJFRpDVOAkDJ@dX$3tD3Ze8juBuAcU?B#ThV0`!8GjYM;MxC*K5I z%vy>yX?2M_pNqyc6j2P&4OWsqy1GdeN?IS_Gq=5}mKly=LeE=YLsj#WJ%BLw>`6C3 z#Ad5-n`meIhW>?5M5cQ)ZFEGv6iljbR$fR8?US{&)nwqWOj7vN_9AH_JzA1AeC0uT zmFAx?fjROrBM*d@^CrW02f9`$G|3!A8RqnFJQe@}J<_$5#BHOs+))<^dS(xnahvw~ zHVr!+psk?=yMo0|A5sqJJc{@COcxW7M0)krk1oIrW({0me^bw*kn~uF38Ye+alsQm zQ)73z%&TfDeH49qEN}iLctutXa4SS#i zO`@O`djw73F{56>z*p_DUH;{Nhc5Myw;7k_L(^^kT#On*^o0fx<1S5ATIRoYu{y@y zj%x~O*o47UY1PCfi;83RhkvdYjC+MW=(77RDaE|S%NGb(u(-H%y(QM_z5P9Q1&<9Z z0?zpiYQgwsgjJuW8QEmh-cIv0ZXVlLy$Pp1o5h$PaOdG9 zdb)fmoa80M09zt1*TbZ@Xmsf3Rrg)GGDy>;E5xX44iwRDtt%wq9vAvVD^8t@s{xtz zIH-XC9&?RFG(dzX3dE%~+6B+jYqvq6TMS0vd}9T1PS%a$*^2AX-U_+p%VR_<0l5Ix zxB;Aa#57^^E!^YMe(6~LougUh?1Asn!l32z+YW$gZfqyjX+H`#09jUvm2vlRERz^d z0<1^L&dyi_41`M|ebe2l`Pcokn`(lp)0D6WVkTwIk=(bmdL_dO7O{OEnn+sP6f8U$& zg?Z6REAt2#%E@g`l0j-n(Egl2F}#(T``**T?`EZS0V1MX$VJZc&WI1Z8(M=}$~w zi!{&uMNZWo8X04c%cZz5WyzwGOA8QkFs{>ItS-B)72k=pbOa^W+%~dRx^fC@ZV9ee zCA;>aFbN~6%oR`h{7W*gURIBfn6gD#CQdJTD_h!OIMMMsNF)n@PYxoPN$7gzcVPVB zi&5eYe?IxeJ!|uUR~phuzOUpxbN!lx7;ka!do5xoAx0BPsM>MFSLL z8k1?yVPRJr?4sX@7_9$-(VW&Fvw28poWx-#tOVZLU%-~8Y`yx@kRkIJ zXk!xHIFH*PRY;SVVWmt!3bPFQ(_nB$0TM6CnvXo%i2=znWIiD5f{D|4fCTPW7rXsj?aU zG9%09gc-S!w2ceUi)x0zqv$#5k%!Po%U6}qDRD)Ez zij-v}4jNGM=09g@0C@?uwpbXG5;Cy2hR-mzjd?_7$vk-7Em_ZuSk($&ss#scv$M2p$FQFa zH!*c@&0lx~;N{cgmJ#@PuELK{>9sxLdfFNZW133QZNg$hA)I&=A0P-L#i@SgE0Y#3 zR{9iA`QF_>TnZ7+rXV5ln5i5FoIwa7V_uCGBLv-RSp(6?=Nlo%Vy(3dwv&cl5WWHF zP#PJF78&{I~Bn5!0&?F$EaqqD-7q5-RPvzT0odqmSRDd`6Mw*%v?!!KFZ?}X?`xuh{pu$ij2)C-&DalET`L3f zC^H7KZryh^c!uE=)0L9%?y{UQ`dKcDWxR;T#xtDq8V`s;PD@RHYz$)O1Wm%BQML`} z2~cSLM5i!4-FOe;t1%0OUK`!Z)(%0I?`ZK#k@pJS2Fj~V*v;C=22#Rr^%cIMIY^s` zD|liLo7&LDgA8QZ34W|Ab$G6({nxAf5y=8oyNErNot;AF5$fK>3UqusB^=Dfz4ZbH zYzZqLKhd5heFE9^teX8}!kf7>)48C|FzZ5&Imzqt1#jDzLRjCiH$5cVNGp!3id=O& z6@#WyrXg-3+C`7tP0?J#lXETcgu|UgQg28S%EX97nESCz?Iq(^_c1e007v1of+rDSQ@*E z$7YVU^EoKQOxo^6%^R&jlK(iDBwg?cAFo~6-@XkaUpOWeE-;0Csd5ibvXy5eG&*sa z^VsOp1ZRYsDG~_?ldMmhplzo$-PqHg8{^8^$s8A4Vsvt-l?iujzX`QpN7_zHr zNfV*Dup7eOELwaH1-Nh99{9M{fy38RCep8{qMEFkv2NYEySHkye7E|N72l@SROk9) z@p+y4Aoy4~cGeG|YuRiyk<&dnsYxNL-iXRLcum-x?y zw;VEya!o`IVSg0l5NDbdL|LX0pyo`DsDZ~-nrcUbMTs1;gdq8Ge=SwgVK7_ymM~WxP3fANzM;DSY zaM2zPP(5TcahO3|W!<0ok`)!oG~wc9qn~Bpx1Y7)avQ<{UC{qg=Hmr&*z!WiKmax| z6(VJo$3THhyji-M=jZkYhH)dBNAQq8#T2~>CLfNK#!2))Mh}|Va+=l^i5qH60`6AQ zzcSByK&HU~*-j=E1jMu_r#+jtrfcLfSvSXju8w^{f8O zNA*FFfRRFtBL>kHorZNP+ur=mpov|@BUGek-V~3QH=u-pt4luiCaC}Te5c)qUk`Jsq9S83g~ZV zrdSJi(k9SjAxWeu5^XF~BN&rQ(L!gTj3JBqCyeT|oY~$GNqj*absA(Hbm|-%NQ|KC z)B+<$tA9ZW%W?I^s3C{S z&(&w*6H!I&Bb1%@2-jOxa~iGqEzqdx59CF+jSy{zg-ZLS^lN4?`S0L=yaGj6RM^ST zuFg_96wGj@{TuRWD{xM(@1D-UP4HAc!}4;>QE3XZ3O;~+hS!05w@*fVjW_JWDT&Tc zi<{av?y~XDEYH&MfL3HUh@Y5?qu45D*Qm@Ftjm`^xv->@eod?8fFrs`<$7vn0Ua|Hl(Ls1(Mky~cI@5_bvhLY zlL(;6H@@6NVU{i28{a;`U;z6PARUk9D9}dKfbtHcVg+ym zW^_ioj!Hx&HJZIBQgH549%*==2g&;q@P^hg9Po`b^vHz)zpxJ~Te*i%e?Lt7kLi5s zhW(9QQSdx7<#Wp|g_j7$!TeHpxMPqk&FjfL!cI|I>ufp}Z=Zl6ThKram&A2vvK}6@ zuBuqL@teW+13^8R2E|1;^E*1!iO?H8VU;+z=G&x2m=ro%!-(qC;8Zz^2M|y74@0e_ z$)VH>vKjJ61u+KZ7~>!g?SL$(R51m+WK{&64<^3?$IH}-G8aR{C@5cZ-mBG+)nNO- z@T4eZV)DAF*}5~SxAX?p{mM*;_T3$b?1jA96hKR7?-$b%Xeq4hc*GHx4RfU{U;>C| zachU5F+pB`Vg|-TZ{_pYN@fPK>Bz86-b9S=Trj$+56WBlS@nya;{lrt$AdG`@E#*B z1I%l!Mi>v@t(za;MlFKv$xU^WD8>en8AY=sniu%d=^DqbA=%Y3YS!E1!c#6Bl|$`& zrDJ`Co*B#f!Q|so|3!=8ad6-9Dshi_gCot zcJ)d75zWAe1)O0fU@cBhH6~(&>A6$adgJe=F(A1QxN30Y7a)Vt@RL(|lcW<$E{3G& zjcqT1SpbxNca)k*Q!j^`0;ghoLV_+0xx7?*IS^E;kJzyU)PeQYykNADcv4xNs;qR# znGuIMO6T?WNh00OX+9Bt2yj=eLxKJ%mWQY@Dfp@Zqh-g#u5r7O}Q~BOaZfAN|%!mr@&`BV~C#|{tb))mw{I6 zS7VHqjub#N!M+~50anj{j0PL1g#Q=#6dX$B98G#{Dm^fg6S}_ zs0&wyEvA2y(LYnt&N9=os(4CJA)DH)&##Y5cI*gI{(gxfXTQirWe5zyhXW$cd@0@u z@T9M;GM*_6Z-(dW)C_8~(|w`)uJV)7aZVLb_d>t+2jRIaVj?=+>`Tt9DO%#UMy5xb zhGy8Yk?`u+AF7o6K)N7!LR=YH`VZsnd3=eBM9(?V=ulu)>w^L89qVot$1$5#w@0!J z{LpQz$6Dgh;~BH{iBo`WywjL3m*zZ^{N>$O=32>g#pJ#q&C#Ea>|{{6o#CgL4uL2z z3_YP#t_;}1U3Oh&Ov6`|WbTh8J%sDMaCEREIW?YL=O)QSIN@s(q9#AJ?Ztd0GR>nI z|M!`6nvE=KO3#d$QNs`y($SO{$Z07n`%bVp7V!ZH*R$ker)pI*1=jadUK(M%y z+dvGAJ>ybq7@jFcanY;TamApE&TXK>{WT&d!#n5n8)o^GC_a%mzm9u?=jKQ0c1(GW z`FAlGYqd+U<*vx5!c0h#Rk5al=2uu9EjRj1oO@h#5*e9e9}5MHshAv5g@`s)8X zQ6vt@?DOnumx!~yI0F?EnHG#*P2#T1zCq#5_3TwP2~Zk&bJi0Jm{OY?WVW4zQhHuT zw0#886}43_j8X zv@Dk~#;qI$7*NVBxnL0iVu@viJuc_$_0DQ71|x^*$?6I0V>DD*vwTpM|0~P!96$8X zUmc~L7@`UvPOtnx6tdh9G_xNtGQ(2B-qvqBuD9pVbw)h9Z8=UZf&_zHSJB)Q6K_Ot zLkWMrkn-2b25F&_wIURa6b<;G9-23ru8M^U)ce)75Zf`Y4G|hzD$z%>-Wu?kTg?hd z%2YgwN=>EV+0`Uh#I}IFQE~B`z+B73rH=(V9j_KJ9=@d4 zl}@2Tg*cpqg}kmxQ8d{pP3!@!Wbo@I-aqCj(99E{JZ|97bi&1Yr&&y|t)>Y1G2JlX zSHhq3Tb=VNg}UFp>wCX?B8-abP)pGAc}Jnpy?Pfud`!*E;xyqSMj_`1}Jb z4I+6THmBQgT#cO9XsusiA?JDs2MXunimufPz>rDiaa*Zv?@BpLXWY2%T{|8<=8YI(f5Lu_moU;Os41x$1mx3F{@LGQCe`o8QXp=yR>1Wr1y!-tJfj80K zZUUvYMCRPS3E(a|8KYpMpMQWSp0?&Nv!DEeZI;uAtT^sy<_`X0{Ab>@|Dxjv@v!ns)pV|eZ&H2YqWPy<>Iv5(%e_xw> zT+QH_AvBZN&%sR>z3U7l`EWbw4}W&h41&syFxsgL4}@0pjQVjLUSSzwg5ENp!8s&m z3kj;=_g6jEc+Uo&ck8$5&FQFAMLulb0*)J~GzUFNQsl&XG}sc<0|^}gZ%6G=%Y3ph zxgfG*SR9Qt>`bda8XVtiQuw9;*au!_2pepns2)6pB(eI5_uoHS2vY(_no83uh=D%9 zoSN87m=`;eg4NMB^c{stWwqPPvE6Yif%bb%oG?;NSPsyRNFNv=4X_duY?K%9NSnWA zDNFim|G?tP`eEE?8VcmY(Ubws8=1~-4}Web(mP>QXFhZL7u`%0a$ednCi+p+P$xs2 z>pqU%L?Ljt!mR+`y-!9`*5Gdtsy2F_`Rlebgh;v0uqsk^2mUKL!ESP_r+(dn7CFs*n?LPSy+Xs#-6>sGPQ|a`DeNLi$ zMOTi*#^dQJEbFN}F)yYM#!GvSo2D$|u*mD+yr3dg=I7D$x#in$y9m%a25Q}a7P^zF z&*MbqK4-wvQ-MG!NHi%C&-O{%jFa^5Bn6KPATfDHG;bx$@l-GYcT$SYkP&o+?ORLI z4=J;PqJvh`kR)t`4XzDu)lSR;lxELlRt5X-P~^jm5ydD{&wV-K-O3kO`BNv}zSpc- zz~3ybkQ002Iaila4fA~G*H*lYx8vR`1e`!!#-~U=y$+&w0l*~KuUwN^LQJnSKef}& zjS_OOOt$zq`1)I0X~pM{h2bbY5Fw^0SWxWAqW>FaYa+LhkO-U=)_no6WQ+`7AGJ@1 ziSp8AX*e0sS@KN^fHpO)?DiyXo`E9$gf#%^Yv(=kZTQ>ao=&p_N~pKzpdl)wQa)fy zuB$`a5kn6T={K8`7&1`ffvSY!4*kqfivHoRM=eos;hb_B`A2X~m+mPk=Mq|Vmeag1 zia9-u;wWf_TtzWZ@~8H^!Sa~=!bC)0$nr8E?PP#grW6v&%<;(8!fv(9TJ@r5<}lP? zkb~~QfgUn}Ix9Sarqxz>#c7yya$Hnq&`8cm$qLe(#b9$FdeWS4qDfEs)LVcMABUq( zizt(1ant$h=>Oh+(Pw%88Wzk2X`&}lAY2n-ywc&Y+?X6A7?Z7k0*Q~5c=v|DLSwl) zVZ;}*>nxzg|M&RZ{w1MZRNHk10cIKuD$g$0yd9NO13r>wKy8Q%5eeFkE{#SG!;S%+ zj&x6vf%%JB(Mq3IDUU$lyL>?}7>$o_;~Il){%LZNkmItB^)Vs057%(oT|-0CWEcLV zrc2-M8L5zA#P;k+bUd&!oLz4NakZWWh`wQB2u_8;3k-rr4OEuCM9z)wl6XZ(V#-K% z3z=uZ^_8rUxfTe*0t#$nTN6Z4c7A~CJYR!D*_lug%+(ya<^g9;+KiEd3E_C6DoQT6 z!UPA*=+~^H%|m9wCx6Xs4BPshzl=7D1XKB)^0|F&oD3fXEmtcd-yVxYiVW|CRK*6E z^F2z3)j3>tmmO=USD-WzvATt$S=Z2?mxxP8jeBK=kZ2MdY_X0!7- zM7mUL+?Qmrrq356{ew>JK9YzEk2eTaZWB@$T>7;5pgn41Sklx^`Y&W44XNhlGVOG$ z>JF$d=2BBTtwRxE+&+MLCPg8`4P-)=(XCu<*Ig2&lSeSpshUO>@I_z3=12vPBz?oHw$ z|8eTnp~O>G9sS+K$F??AB@gH<@aXh)7VSEz5=K=wDp6Fp-`&7ozciz?p;57qFt?Dbv!~yjFA^KwKqu& zSrXdnmK#-y^28+2vHZG^TKx=D?Vf|u%}mE$R8_#$9g0E4SLZk zfm=3+cZ0gJ3NHw@9mu}0Bn^w$N-NJ6yBUf91|;T=F}>L`><7fIky*0%A8KvIUZVXh zv$T6Q$RhbnG$JItbna%F<@N^FuC5c1g@!>Yxcn{2IslFJCxLltrhZ}&nP-u4g^OOO zaY@MS)kot!un;mUPQU4TDd(`nhM^qP55poykg2mtGxbdHl29Vr+lfJOysYFlQg7nX zT7B9R5N#KkVV*1bS+8qI5IrYevvJYrnV6<{(rJYeMxGGA!xw?7y4GC_8^U+(07*$# zC|xne;kXM0Jc(GNL_gayS{ zM|uYo4d#jDV$cqvEakXR6B-w2qyV*XMicVyil44WI=Q>#4cp`&UehA;<8-ZdEQVmP z*u)`jxN6}5G73nHn`_i*Z{#&ablNPYi7-zh1Va-2xaWl4g4a-w7NeFOV{-MZ1I z({`f*=Bb}%@o23;@*D>#hbO7{_n?sR;qo;kaFOWVe7jdbe<4y)7C1>QhB!5aqz=`x=M^sVmSRyLWfY#G9kA&SMn!9_Kd_T@joO$)!bii`B znxfGPxNOmA;~<3j zUvB+!)lX|UUpQ2@&$Py{D{3;qq1v+6)kD%+ttkLh=MTtcOjfE#JcVNlZ-+WGLnOrv z%o|$mg342%M5&+72Ba z@<$$o_67KAaP=y;U8g)gmd%(Zq7Oq*2J@%VUx+{9ZnETL83%C4h&g82&P$yh`hRqbxQEMOO zuJnC_Q!t&h(9u~(XqpJK0xTZE2eSca)lV98TbZ#SE51PSz7obi_lSb7y1$LQGZ`?oKLyj?1}N< z3fo5K?I1BhY#f-ikp~+b;y}d*Sxcp1^YarJF1&i~q5ZP8Z#nLet0-SumY0H#9XWOb zh-@6GdM!f?MD>G%lV1}LaAg#USsR>;Js;YlH&pT=c|mtmydjS)xou7 zPF<@58*cl3v?Bf-4amYApgWe7MLL#+@ML40#joqbYZq%uGqY4T9t2 z|DV)NDuraca5>@N7vsV-ulehrjz-NLR)GbYx1t-v(N*bdWi1;2#w^Js01$+V#qu%V zO&QRk$ZPq6@|uF*5b%FRxw!E&Jf5DzsMSEZct(Lv<4MDPWm_g|>q>JZ7Ds7`MOjIz zOKbfvr8Q7S*;EDsM9s%Z%Id9{c*mY-JeF|aY=nIa)*Z8nl+sb!Brv`7HTPcqzQB`E>=%uSkW}FZ*+(C$^7vZzyZOs5N^|$zRWZcWrUCMB8oU z*?v(TFj0BSV(u3<}cu{B&M8+)N+>(uVsGp{>Bw6 z089XDtD|pDKZNFSs&$+lZQs7P{AgBw_(e*ZrM&VtQY5cK2R>3Bd;0z5`wnm>Chqhp zRI&H)KJbP`z>@J}x!bauv3Q7A{>Tgc>P3kv#vIXtPSDt%7 z=R2T`nW^)yAZF3m&VZQBq1d1bafv9b=+oWbWt2qYoxX~$GjflQOlYaZfu7SvZqkCf z1j?4Rl{1DDshq;n;|U(Q4D3vxl|utZ6MAPQ5?9PgrR3-!zaiSoVam+_I9r1|%7?AI z&^HiMs%R{DtWCSMoIhcUS~TvOck5By_F`NQiu@yfNmy{Znydx3NKfPlBnmn1C`io& zUrJhbo8M6;EH%?hdiCT5V5a;8N8SpxqZL` zh=>51X`WP(1>qarE!&z@>T3kI2K|`q1cxT_j3Gb}Z%)4Q%0+^Pmw_`=r&&IN!u9#r zu~@3z<4EBrrhYaEG@EfaT7k$Kz=JPJ;Ul0Ct#JiN0g0?5$yLE49a-H!d@SfCWceEB z0ye;N@`#z;9~DgK1uh>;lKZTh->x&XX(PFoG{6I?S06%C@Y*^gj~Y(Ot*QetqWn5l zr6Z)Wjs6H(B_8FQY()A^9XqeVb6bKPAP1}x#4oJ@uaPCvn&J=1I=_r%&E7KX@qn`C zA}0(p?wM+W>}m0PQoWp}!nG(R;=*~P6alxPTNbhK{cXHe^j+aA4IW;BUI9%jh&^vk z#{W^7>>5j1BGIBS?oYX}J}N)9>l2^jpj#LxPMRfmUN~C7k-Vr{ax3Tv2eXw9FY&xv zY#Bi$r}Y?bGeLs-|8s;b3Ta$1Fr6d1K?^WC#A}boI_zUw@ciqJcb<+DjV@>d=!b{K zVzWn3hl3Bk+^liIVg&};VqUx`Ox>$Vj|a!3LTetRkJ9bIZ<5AFh5?_v%G@$hI6yPZ zq^(Auhp;=Z?&J-ZpCq6O=Z31KIvS%MHgCcZpSt)6T{)R<%Ed{QrNkj`WAgA?r(U|Y zE~fFpDLsMS9_T`J(0IVyoE?rJ`2j#c9P1yJlDO}ybN~hP1YMA69!OmpUQ=0&O; zaDB8D$2t&o(;Ps-693||7bm}*Qbnuh3Z^p68k&&OFgO%SCvTC)H zl$s?||xw0!PbffC36PYb~(m zASM2E@k_@7x$IyPiG`sQ&XqniMa-SzN3c5{+DJbS3wOj}DG`8z4Cz!?D@RjW@STL` zA5WZ`xv_?uKbLc!x3+5$nCx#m#J365tb8gyb;|sYusmb0(IWo5Mb@+&a}@^tv`Z# zJ$O`M@{f~d`0}xmXtp3X=e(fztj%t7?aO?11KAX+AuOMjHN9}d{-3GhpK1Ikre|}cLC(&gMF1uohgtDl zg$H!ZUJOZ#`}^tdGpCXank$p0U3JpLiJQS7dJeSs#Rrb=xY_ql_s~FL{r3v23V?#6 zwVi~i9XJD(EcTPy8^{`f@L&fMT>ZAix9 z`|rO`Ae?whzmUTG?|Vnm^X~4~Tsfd55FX!|4)jSQ{|bO>u0_o!9dm#ez8{l;aAiJu z#V0V;Vxo=D5s|J=fl1e$=Hei(Is9rrhRlJlo)qE%-YHEjPN)go)WRUZc+lLI@Vl+=SZ*qdWzQ?#0!euI!dW-&Sh#zp4 zFE3_et{9jhjae%d@0xd9o5rUNW5Y_%m$AZXZmRt&yC^k+YU=Uj_O{)fo z7>CcK8zyJ1u^4_WA(MhKn#@An$@$bo9Co+!#NaweWo>&VNT!5#UtUzg9NzG;z_OU1 zu6``-{4JM`zr~qFDJ!C;4_N-Mz=Ltyl04lH#)u1hc-kxEd>SdvLF*vM`(7%}UqpJvB$%b#@_Pf5YQl0&NGh zPVgGqw5&c($89lfE}42|{R~W5&XiPEr9h>fXnuXi>ri3?I0~DsFzES8&tf5#cwTCq z*g5mK7>f;&YQKTJpc6;|$5?K0^fSO`t#UibI^k9P4@weDoMVVXRl}lr;tyBUx zVybU=3)s*BMa~VbeV-tvwmq49YK_-djQlFjYe5N)RVODk#HYDq2#>e=^O(H+-+J_g4+BjIePLiz3MR%TyE+^6E6G(Icu1;mnv->oS1q-GUk2yw0=hUO_kGm*&x1AI`p?c;iazXwI<*cMd)JS{2doV_Ih#1%bjpe0gm5u7y#dO z6j`2?4>^Qb59<1MhT?37`}nk4jVPXO0&4@xui$va!T!{f{W{L#%wC1lLS{?HcMvlOofes6UopcwPaf$8Q7!j}ieYEGSJi&DQ z-CbWIQg=1cSY?0orb@YyCdX1-z3Izftp}fJ`x16N3)Z+6HV^ddoFIS!00d1q5>U7p z3So)}coPgfRPbiCWJ{Djil8L_@dn`6ap~Z=m&&BugU_E?bw^X;^r97{6P>z#J~@IdHO6}q zT-Xn+Tf$FYyK?*p*)=JK`xSDi%m<|x|F#1Ai>u3t@z@I=)NzcI2azbbvu?bkk$wRS<52Bn`!*RVu3%| z^=M`lQejwD#z4;V>4m748rCW4O?g|IAcoN)41Sw}Z851W zoy`=jfx(jQlOF2ACB%}+Y35NGf-+L;Y)pe~V3H6itcs?XUXV{~_uNVoFOtm)y$4!z($Kxf?|!*=oyOL{)ZkkP@@CK);*YzycbSn-d%nU1n3VTCnOqlfmmzHw+ni z#t=tl{VH({&2Orpe}!}o_T)E4D7f+`~~ZVC!~^Yw9H_DpJNdX~7WO6VzWAM;+;4=MNePv2t-ZZ)}rV6~U`uV$B~3MjRLN zXkL^30EDLDwg&^zgYzTFAbp9l}98{EaG#bQQ9L!~-DN z?Mo7r26GfjR+T~jCmq@Ivtd(a)=ff0ty~RmHa{miMF>>#;T(&GJKlP0tg-?U@f{6% zzl0y%J-ATFI_Ug{?)p4v;Olhqru=*2c&r zhL;!~8p{_Daqz&rhIJtXhXRC{D9Oq`;s068yN^K?0%RgB&5mSh6HF3#jT8R`o_Gd# zFp&^ivl^dj8;_@!gKUW+miayxx$vDsc_LgEQrQN^O-|7X>lU#OT2s--7oH$#qPw^W z2-4i+A+T?53{L0k&R7#W>ppxR$uWmw80FFb9L3$zm~ z9z`*{RH&OV3CSm3!!u5U^q3E?&yEwCer|W}y9~Kt|46e1AIE&?pw;9pJV8k+beEvA zeuE*0R2!!c0kUfSc9pSJEp~5G6VP%;jZmyJj8tg(!)w|!SX!}=eIu08R5c8Da?uH( zkRav=Nd1&C;1^6BVi)S2W)M!Q-P#Ma$EF)RMUYLtJMjF}A4B>LyU42^YYf~%=t9f( zb3VroL?%IQYQu6?ygexBfIniMTc&_f!mS1Iz$o9)j%5#j{PolS{`yY?`m#KPEH_eI zabWCbeh_d>xQmJ#nT8xD?8qCW{H!O?18nlzG?KtKuFw7JNq1@@32`sN9PwZgAmCN1 zbXeuqa6pBlI>L3{&oylkF*Ab3H8cxrDrj$KKqjB|v<$niX{}2|1 zf_Q?|pZ_eA7d>qC@&z!?^%-Uqf(dsRUuowGD|p`#Pl5a;Kc?frdh*3ln4fTQ1-xIYYMtxpDdI3OJ{nmQn4X%mu8`F<{0zsGHf@acW=RMnNLJ@$IhNoz5_& ziE{{t=DAnA|KL|BcO-DIHV&({MpZ?e;v{k)1JEfMprJ6ow z?ZR#VHr~PT7viRBKIj>r1z&sZ@`EY2poIQF@)y7D#GYz?edXC^|Ez3QAUTCQQgfhw zBGYn20cIw6;GZ<{KLG04kJmZi%Mc3-3vM*!vd$IAuRn+yE`;XGy-FWzp6&mr}pm14=$;)!GOgm%pY-4zw(xIoILj{?Tk3LjnC@8*2>5oOyhvYc|SB zj13|G1y@{=ke-NDv2)o7&dRbHT7gm`S|t(8SdhZ?b_HJLU!WFUTcITC*2m)`eez^B ztYFv33Cc!>LQD!U@Vu*4z^Fh+uprBt%bq!6? z@u?_=k-xV0Q2q7CWYrsW8^=P*Nq)vGC|sLzB*K={J=~zP&9IWLad~Pjhs+(IYb#j zjbBRxM<{|;AM;2ef3m+F#+%T_0d6JZHq5ob9HJ#pR|!nzS*{u<=+nHf-!E2V8Ge zZXV?JHq4zpc7udEGv({gr|-6e=KfSP2HCAeOA zMWt9}{ZmtXy{QkUt+2JFehYx~8ABNO1OQuoFpr}w>baH zV>W?lv1W`Fbnh8hEq}oSvM)U$xxhSS)SMx(l;m*p?LaUeUiGuZJT7xhm`Im&HrNWA z0W3^(%C0eI>H3Mxa)CtwoX%vaqZd&yR2{Y#ry=>b13GoC{B_48^f5bCBi{$!Oy0y0 zL(_XO6}4g-n2pdAnOLBS47!CHA$3q6SX@z2M`>Omd1dS2Z;b>BjjC>afRox&k~!5) zY8}(s!6}$?xOQ(SU_c+v0fF|?EJ#Hjr!Lb+7esMt6Z5ReA$UWCj^tF_WXD@823t0 z3c#gje138H{zExD(kvzb>DwOOvh?b^AASGJjfu_#NZcnUBR8wQ)xYCbKidS01>N#k zyd)Sbys&VIhuEShnCoE`vCE3hb^E`hZ^4!e2nPl2oOXz9foSejTx3p3DPCuNdAf!9 zm?nM}ti+`<6s4GNCjwNcaI+IAs&_SwdI<(b&oR9Wj)I=BXdJ8RH-V2)+IBXOFtH+$ zzQg?0;{RqmYSmj^xMIR!;KQgyuzF>)$pTtbqbXd2*p_CVapW2=gbqpSJdcI4-xtvC?=k$xJ$IC?$kC z5;59n)sl45()}4(?c9#njr$T8I0+Q9S=@JOm`8a=8m@L=cjp%OJ=wnQ%>2`=;?~Rv zr-Z{5P0e`hv9E9xd=b$Lcki4i8>@i#(xaM3JVowmuh`4k@>^0Q0-QsBm$>@_lJ?s> z71wETI;EwhjkJOj&@)tpGFUE<3Z9@%e?lo?1FLf)xfa6)rZU< zlRl!?#|UeV#Dv-J*4 z2$mgTjyBOD$4nw6?ggM-e>123t!{J`ai?e);X3xZIQh94I4qxmxJKHziXGypPKqaC zTY9mrf8wA)*`+#+2r=$H9#Tw)B}-o-8Nv5={Y37NUr)$`Ti2yj z@fKW$M?ftyK{9Kn@Ficjm44Ylt9fHAG}X#l#9CFJh-e17&Ewk^sj;#tpu(J-i6wIQ z_r)bhUqseS#+NT3aW(bF$HhR#{Eg>$;wHt7$Fg#Wf-ynR3MLFLqGISo z9smVr6$Ou>Lb651>1}}+XWsAkzMnt!_UWSt!~gL7p67n<`?{|CxDyn2G)KM^oZaEH^qJUBq-ha|2kbyp zj@{S?rG>lCwp4KY!zrbd8<~+bFsZ^l#2U6@{CVWr_i!oyhL(R4fP*S37HrqD$&##J zRTQJj>%1ww=wq0TniS zd7RNO)ZNbJ(o{ce&!bTiK}geVE>$wWC{pN>c+D_9D*S{hF z1`>_GAIL6>ONg(nCjDMpTuq)ZfhSMfxvB6CK?jrsDbtyf{VWUd3sP*)Mpzf5Rz7UT z@>_PI3YjsB#G`8-{3mgua1{{^$k&pZ=c@j%g|*ac)RNKXG`z@N;-w>*3lFVopFz5r zqPs##y!~_PFH+m_eH|pt2x6$?W_n3U7-1|?M&QMAp0lT=yn4U>&O4u*+%+h(L{G@+ zgrBa@5*{>5?71YLFMeg09J~~h!&nXt3P=LF?*hgJ45GYtY){u2B@Iijy3AG?ul}zX zlk7{oxn;OZ z_pSo(v5}K`%TpVcZ~*z~WgkVVN{F|Fa$q!PDg27;BIgK>V^%g2ceBAk)A$(*EY*u* zwFe2#Zk;2UZILGML6P2opNZmeZk|Pmh1LxM;h}!tYz|0bmiO9VJG(URphJp!W#++o+70u38ToFMIe*9K9V6xI#a$dN!%mkhcJRUKThCfjOU_-4~1iL|f&!{gLc5woZVL>QueK z$Y#>U-%@{)kbHmLf%O^?Wkx}tx=opkkf&W)88at?o9%jHr$9A`T+mInUWSYsDLR)e z<>vd3=r?yNxTJQF7moX-JME33)|!Fk2*s zJSfJU^fG5Q;0Nvq-PO6>sLJh3WuYx6cCOj@H+J((>hf=^#)kEpC6Z5xYmF z{7p(uND_C^214F5^5~u$csbUzmIK~`mX!+!sCFBI%E8Jg`9ta^F!os@B2hPJ{=g4Y z-#+mRlAec{?ZRp=VWXZzW30?r4Cpo*M9X_*n=FAMA6DIA-dhoHV*>@t3bKf)?BA2( z@&uW2OTF;2Cjtl)dPm`YBkz^+o4m%H2jiv;w5eERGHm z(K?t=GGnaS(NEtgGz#6X)I`Apk}m*rMb`G*a4&>fpQ1^8HT*DoBFY{oP zQ#2sso*??q0q?IxWI?aCt)gZprYT|7L4;h*nrQCFIfAf$pKeS|0=gT1RE7JHffy(2$uHEUhT7>HjNaqIuFh`J+~C5; zXr&q1KK!VveZ7_n<`$#V$$HfBq4=Vu3RN`0YM z>K_#GWhWB{iUGSZ5k@|Kxo`*9+UcLd-Y4b|7XYDn>c_j*2Cic(0uRhf z%hX`zg-=}j-umTt6`5sXBKhX&4*J8?xfM+*N}e_%bAn7o(y}(CASz)^0&m6IPh_Pa ze3Q2zbkUmXF?ZhVqzk!}}BRShr zomD&fk&X^}Y1sQYg?Pxa5I7K1INO9eQnGlN&TxL+cFBR{UXVs1X~n<#YUdo>yW`m- zPx<|qZg-r*IDmWGU9`Q~uHmTd>oipXPsQA>le@oK%$Xk4DYJ~8P8snu}e-R z7ArCmA;7MZuYrB=lJ$|tBvy^W$v#Kodh~SJ#(IkH*t4$*UTJ>aR)DXN!jL9iZL*&p zNYB{=N0Jxno!*(q;d+ALBSh8TI^}kh)QOGR=9o%RLOk2Kt2U<=z;`Wh9fxF?3(eZSZo6c2kmL2b;YqJme6cq{f=_=YGhH zvGuM*niLVAG6y%9dY@hIB;z7$zMECzB5PTqYU$)gzjBJCc81iaDbmr}BEk$UH}G_H z4&DhS<#pmf3aD@qZ7I0yKkuIpEY?N%d*`=CLCC$4L#U(uw?M3|Pvv&W5+Ic|#dZKu zNa{Wi-Gq5SKd0!LwoWX{?F1dkioV~L-?QZXp|MrTXC|HYz}1|X5RcnA_fCM3Vf}lp z)^y)Gr3nT%5@|VR*1?(*tn}c}9Hkks1UD^C%uwMBMlDdh4I+!@esrIm>X+VmPVqpa zW*tsLFyADfCeTv2=g%1zi)hSb&~=F5*6JS?qV3dF<&iuT?2!eC;ldj(TR8HKm(FDB zCBY@m5!n};Q{FH=n8Ofzx#!K5Ohvh)x%Vb&h zx0kKL_0CIYiPo7t1a(M@ss^nKSDU}*wre_{3nBds|0+npG4aEF@}pL#@P&dp29f`X zlVzciW1k~3R(*MC(c}`b5`J%3xVuI?%W8T_na90$Ol*TCc`2m0JH2EjFts*`z4%vJ zvk;t-o4gl3H(5!|3&CEzMzseZoWVz5V@=m{OB`i8IDvnP&vMkcwv_P9x}2zT`bfPX zLyUMNLcDU~P4CTs;;Vp@8MMp1l|1&?7V#zTWvBr;QVduu8^85CaR)9Ex|wm@4_9Wb zo)=@b1s`Hg1~`Nfo73Q#?HE;iwY%V+U@Qu5KF_1o`ZzV}6|`9sao@gX_JFt4qTZfc z01N`L1C%J7Rr?8VO&@+#$Wlmc?aBp_v;(y1XY|`CCne#~cI7P)mQW>ou|W9APCzz? zT~gERkhtARW4#%6&vafUdX;V(x$*e391BFTrbvb891XQ7Ysk_V5V9V$;>vbX@EE8i zF9np~5ZDTOH5e_jU7EZ$KS-NL%aX=g8fTl{0EJc-5Yuxg%N%gV;p>GbUQl2T!HY4l z;-@wie@;u={{1OBVS>~s)DZMZzf}p^W4ui}8D;9ck&*x!tPY@7ki&#@gr>guhZ?Ej z_2%S0NZLaVQKUPkvxeCQEX#UP8{M^Vh_XV2V;Ch~PS+r5Hvo45@yt=5ITmPutcUux zLXnj7rbg@~hGnO4&q1X0Q9WHOw5|Y2?8%lsJ}+aj|IgAbB*vj!M8p(DOk}fkwDHXD zVf#r8<1K1?bO6HuKF=I0yk^@Djn=XKk6Xa_PXt1EB{_$Z23jQoR>P)W%3s{>_93@8 zBL>Qz9}7(sJBVyNgobdK!ebjAMwBPqD1_~JOF8wZ!X5a9Za;jl)LYQN5tC;v3;8
*NAV<&cfTk~}-_?HCZh3!L5II1@YM0O-P#EeX=0GkMk2c1MC;rg;G{pK2FO>gSsU7@w;D0nthO}CFBE^1_K28+9f7sQn*n|E6OJq9%7!y^)_W*o*5_wc< z1YlX=O7P-=-B>fR5>G1OVkGo3p^GmL-;klt;(p5xpu!->SLi?ur0c2`_ZuHPGGci9 z!Wp%_NaGv~Y4RJ3_&kbwS}3;qQL?Q?TUOaN*rAQPPGS7_RdqNaG2w7PBMbc1<_baM zS&0xu9_s2*E%#LtGKOI<1oz6TOgoqwgAlE4_|W!DP@q2|@=jhJw$VP!!|ld;)*+xa z0&bA0t)Q`>Brwdw2w@cRofYfjxUiw-FGTBS9Tgyv#cPyKkziejVZbxaPPPKa-IsjC z0JHd9EJRRy))JqSM}!08@f|?j?bK$@lmZpp@O6CxxDccv?&6Hy8MfMJ$VdYr!Xf*u zs%_%Hug>BfKf(vs+_-i>FazF#DGEaAL{9w(*U^6o^b>PU=`Q|?r+)2~Xyt-aIBpxO zZP{)i&W`n~AU7O914|#Ur%?|v8;y#80>kQvS9h*f6TsH34u$|XiS)}U z-YIjXw-A#m=i{RVE5-LkT*rH9HK{M*`?{*~r*0BXs$wMd9PE5&zmkDWLVyh<$B@;l zuhtJkM2EIwe*lXA04=R{uHh<~!@|0wsn$al8ZKKpsQN8r{9B+7a8`q>%1V%5HAB`A`^ukPJ2Zpa1!v2&6IARAD>p za{a^dV|v3T`=KTAnPsZRP>SFkxWE{n#m2Wq&?%>Qkc@3%=(y0~NSTYsx zmWCyKzlue^2H;aJ@;xgoTn3xy{&u9uMjfA=9uDy7+M>12x#4OL$P z^oHDw->E(4Asp*(EK$@{`&;uMVp0w{gkJAoTN#7BGJ^!;)9O7fVbHiKmXH$*wo)2HG-wwYJR5iz8s_kB-Y!|P=cpH4G790+E(!N~uQ6IqiX|D2v7w3LBve_ml zvpU;4H3Ji{X0rgO*zg=mqA2R)2ID^|4fx}p8>wENSo`7QYbSs7r!{LvG67A1sDzErToZTSGA({b=M2@ ztQ}*Hp9PM#ns@$`9a2|-Cx=-n#l=sElVpk=`=6Aqh z!ZJ%@$tX%mzFVJ4*CIV0I>#;WlUHZFNb}II`H88~>l1$`i`zq@XzrDS-kfz&=JkuQ zgy1(1U4#~T^Qnc|Y{YGF_WgYR=wd6BW%^|y7QJJZqLc9nSs=kzhWk+PCaOHl}Rz!8!b*qLZ(k#B z(3l{M16m2-VJ;R=JPc$xb#ZV(y@7>_8)J0MlK@dR?3TslLo9v%!!SSw-sw5Wonwcj z6(ceasLhyJldra9>TXpZueA2Rtm27v_MZVaan;5C+_8pI`SNxU5bjw=Oz4nQFbQJ3 z@gfJVxtZ>TD4KCy9GKqmd}faQ;P|t=?sG%t-|K!Se^xWLf8yG|YKKyb^|cYi!F@Ri?ezq|G4365E$^Z6di1rM;QHErj5$1y1;e1*B~ zcqNkH#i_Zg%OymWE>+w)_l%kJuQA&C(4phD)^c%#%IZ~Vh*=j5_evmwlPOG#{xu>k zeMe1Xq4R?_YUxkQ%IX(lstiaKu?sQ>3CgP)Q~_Z-LweGE-@Qa8LiWd^{0%hglrrJ& z`{lrZ3y)!XVhar3-6S?LJZXp1SNcI2I{fs_l&=-9_!SXkoR~>it9P0NH)r@Y6A@@} zW~hdN2Re6}7csdm!<8XV2wZw`uHShSZ4y)-UT@g)B0O>n@soOTAs2J12h|-u+~${@ zzC~-1LDQM9X48>xAbf9c848@f@ZhV`?mQ((%RC$;cOww1(Y{U<^sbO7zRGCJItSM zcnUaHDVB|f<3iQ!+qq{{lGvAlhl%(J_FZ89Cy13vsgWhYVvt=Tl<^a4eX<%&8%ws6 zQ@AJO+~CF^FQm6b%V1E_nAuSSl0nkRdC>AqLETt@e%co=fE-!Yfw2Iz0N?E3rK=Az zX;2Pun&baEo*}1)YkGl;>e&hW5VVOEq-nKG`=7|}TgD8Cag%&S5~WcOQISa4wW4F* zhqa8$I%beimE1drjWiZL1=346Eh<#y-mq!%4vNxi%v|Trz&6LG8LoM^@sRRw5z5th zBNf}h(zDt$J5Q=tKZ|5jp)=ABy(G*yQqB=J8e~~!X2mZNE(e`6X(<2H_)d*(73~X) z)@djyjJgxT>M*hN@R=^@Pmm82gIKE1_#8I2IvBWpBUG1LyZBIW)xN63Kvh!R`g1>V zC;7;bWq!N-9-sk0+Nk&m?a+w)Gfi@bC+zWF1IH?Kr*lbfGBiDLAedVS*y@OO|Rx- zB9p#o4Z71UOrl+^pGnt|BAAodj`}MK_ZOR;*1P-~&Ys(`A6)<>Q2E$`Nu8*1O6c$E6C?g| z#^$i_d%kME_uyz6QQjgNnK~f8H*QMBIYh7=)#mQfx1?4B*qY-e z(54Do)FfA7^LKGT4K$fEZ=zQ{FI^2FIcpLBubs!c7malpr9A;WQC5QmEP8%Z$n9xM zZAgW#NtC84eNPrI^rT>RI5Y4?r22xpgDkv#Z zH36aKIi2Xybs0GMAD%pW1lU)3#Cf8q@klUx{x*rf_`URR-EmI(p%$@M@g(hT4>rJN z3}pW;j6;CjcDK(VS#jV2bcyptQOrfc^6QR&Wo!MqGuwYxw-^Zf z^2w^(AQ`IoXVz6~iXE8Ibku7({zFT*c! zVS4kJxtkklmq1H}0GPP+RaP@yaRo#yk$Qe!y?bMp?vCnv4>^lHIDOV*XE-%>!8=}o zvAzf76P=UMyZi90-xP$g6LbF*#Y)knY|Bvdt|L0H?%XheD64HGs6|H2Z}(j8Q%5C5 zInESf9

sn`{3LM3#AH5rYaj7e}i$txG;g!N%G$0yr)%RPK(>7(6e5h0G&t%%G^N zT>IXyZ@KHpb7~V32s$euj(BLT?fHc?m1>LAP;wHU8Q1BSvIFv^a&IU9kDMU2lu$nD zTY|EOo!^yvj6+OfU_+^wKx28Zr7Njtde&Am0So=(t|}wU32c};Y-nB@L(U%eg=eFn zi8EfDi1U-Yy(w8)#YiEJiKy7qD?YTObyYeMaV|>#b!#tkClvXzy|59~A>Yq{lybh? zP3fT38sR^g%lBm*LOoG7t*T<*FwSn*Y4q=)B07RSuk{2BAn%-R7+G=Jd_MzCdvEXz$;ga|!17;i7m^SbE=v$Sa1u{~?iG5iq?HQt|d%ijC8FTHqK z-hE}V_4f@@MO70aJZ`ddDj8htPSPW1Uk!IHlb~LxDVwI`t9mm|cZAN%?CdrGKk}FQ zdW#;~HaKWpW?0xS3wMOKxT@6vHqE;KcY>(ktE~rqm&$7OL5}n?E|vj6cJl4gtpYCx zb)(Aj8K{S1N^O{glYPT-Hk4`T_O-$~Exd+nK%;eYSO@a0(5L0>`kMcH&Tv48@9TnUGspp1y3-=(8|Idw2Dsu+yBTq+?XgdIonJA8*(c+W2N+c)+fK2%% z7q^|Z!Dv!g>Bz#ym5Ku>ZB(VtQ?DTCI+Tphi76Z_ty3;&-bd?V8&TE8(0Khggc2jx zEU0XmwaaQA*E=KIA(&0)qWgqlKaQlN2tyH90}4lb4bTFfU<^=LDK)lC;t(D0Z6e$z z#*^+`Ic|Xjn@YKr+iYit%N`<~1GxgFP#05`oG7m~6E3_jhBu!kInRFd(vLp7wBNbS zSGQy7)ZI=&jCV%}rRNcjM$IQ3B{-EqQ4-AE?|_njatnJHn-&Rd*8(>v-WEvSs%NEb zP!b>#j}FXYr_AZx0Fi@a2RMB8fM7#5IGXM=w=#AZu*++?t>G{X;bI=@HAoOCsveBm z`)q1nHJL+ZokYVDEgB6=xLO^ME2zOFffKBI`^p;8$d1p$P4>IkJ4|&q>LIdo=jo!o z1|GI6o3+KQAvn|=5;v6!iHSD?)G?$AIVpaaO;bj0)MtUTgw1koch^qZTKTBbl9f9+ z&lc>5VLb7?Of}P==3cFz&`R`Z3s;}_^M5saiH>Jt#8+%pM!G-H5Cf<{VoY~hn1K21 zL#7J_rLS;{E-hTKgNN`u_8;0y9zZ7&O_*Y&tIW&yr&2?o-kH(1sV#hO%UG5POd7;5Xl5|RQ9MRv$kO-41r5N(cUJV;0HMbv~J?E5_ z{WQsEuWgp0%<}MvxX)88S-e=b+eCp8ATI*6Y_5VIpc3) z_?Ko5Qq;D(jSr5G^PNLvbF6B^N;WMDS@9Y2x#!)F4}#dWP<9`=H7l5 z6c3^(aLZi(Mjv&qj}lIT3u3Gg5_)X;mZ@}pG4yTt)diQ$9y%sX5OflbJ_rXq)8((p z+~SLc$CuN@HE5dF>p)tcgp(9P!>Xb#2su9_I(WBg_Yv@5$XW(X{Qbu}FTLiP+vzQ? zhw0|q+U780L@%}@6QC_=7FXC8C*y;IarF1ww9oQF(bW{#h$z+Znzwh>7?I$)RsSBN zoB&nd9k$98A>^Q&OYzV;H?)HLWezb_Q6q4YO?(`n)PUai7X-h6D6E{~w@4`_IaIw; zE`J0*Fb{ko2^q@mn4!~@<-MiFa1&8>KGQIE(j!L-*ElPX5J#+y*6D;leegL z;HOeh$+|t&)|DqK%VSVo%wdl7@NaRV5}cV@6oCa;CWWm;T3<46&@;tX;DJo*Iy>8mTW6BDO$qzps%`>n_uXgs~ZM}M+wm^ zn~n1TTy823pM}#^Vu#xCS++E-bmzf|((~e7u4K&Xi9)0Pe;ioTZ=qw$E;*1U5E5YA zf%GiXa3uN!7$t3{fFgi%@A>=VLLf5A1n0HAZ3g2Ln-uM6TiK!%n{kf|e{%PpuQ%MM%yB>YVYA{Y+h$;OBy}7i>rlYv$ z>p<2zaS(F1s9|MOLtEG%<@@8Rb5RIrxCFzPLvcW~anV=h^LE*JprgiEsLCkdK)Pei z9nT6K1EWU|d-z+O!NrIggAg7LMe-K$a7qUgcERR1XnELDO!`zl;s9548(tTSFQ-c^ zVquKH09MyBhSpSv1S&^C&JlMlMQyEW8ZdIFaF9j}T)?Gp)i#hPhcW9&O9DiCXC>;? z*k{NLR8MkE82Yq*QDkuZS@fS}-KpE{85J|#2R1&NR?YH#2b6jg0jC`z8udW;j_Q?1 zmQ2o?Cdu1GhW=A%u_bFh4_+mZZo~6_N%F#&*p`TkZrH$C880T+u?}UBnwSr>*h=9y zviZf|KCPV|BSLiRck)dW z%*o=nMDK!}6(K>sVw81re507F+)_AI>-Y)@EnS=e`xV#)uVW&2dUHmNM$Y$14ZMgb zI-*s_ZiVRj$mn=jV)U8@9sEzbQNd_W;MDb;6*X@_J!y-9?Lk%9(D6)SQ!{<7WaSwR z9hDxY(j0*RCSRC(l{a=mna>sbrHJCmAOvk4&xaFwIyqNkc|r+6b?wwlx?Qz+DaK4i$pgc~l~vQRrn#Jn*REWc9-*Y=u3%ct8tW+!3pP|NQv)t4 z*+H4z74647N#O)6G&p?8Z6E@?j%y^&Tn{!prboq0mNCceGmi6cb8*<#Uu{E5K}nId zs6o&^OTR4cR0ccG~-*QG1Q>wQpq#<0A%h{wbjcCBCva^=nAvbfVA>T?XO$izo~!bp*(s zxa!~jZ5J{=N=rNxxT@$g#lAh84nvXYaCCZe&89%Iox$MJX&k3Q7E!{(72QYC0 zRR}OiyJG&b^UY<$@9{uc3542_5?37`VGdispnE%y-Mjq+nw(E$ID!RYBVq&ZKdvh) zHzrty%m3nw>#3-F&ZE2snrY?2M6%Cf*lyQpGw`w%Qr4m87=N(->2<(MJVSkCxI^@U z^kFK>waO=L?3HT8HlY+uzbDaS?H@gfW)K}N9l{EI0Jc~?8cLAG|5$~Y4QA_U!|Z@M zAaBxitSMx#FP_P3V@pw^hhnHMV~DR}gL;PR%8|w7;LEvmAEa1x)CmOnN{Yqi_AU4D z?5Hg}zM!YXS^H}#OLec~y#6d>DTyf|MmGV^uyl^H7EOk*cfJ=ng7mvUsV%HUX32+Q zHX%EkFdXAl9$Hz)7#8QI(>8j5P0wJ6o+ljM-^VRyJ|0<}C;|6%hwA{gel*Qe1Ml*4 zP0;9wf1}NgW(r3uv}v2MxiWVK>?G~T${!g2b!)U`->!I;acDei29;56lJo8R&^|t3 zP;Q4;tU4Yi8L;AyQ9;np4oLbw+vVC07KP_z?r&27_x=%)ka_%cTHg7_JMVmm+4$?P zgW-gaj2Iie_8?aj!SAA}J^{DJ1!N&gmWjHyHZ;A?>g~Kh?^j*vbY(YPqZG=SL<8?) zyN1CMe~-s#@t}rTd~kBAHMKA0gMqV7U@Y}N*lErNB7F{@5l$4RWDy61Bo8}U#B@L)duP9dm9Bsl?U;Tuw6xV46 zdW5Xly zgaN(QqTshOz~{n~N#tt1-))I5maIGC1}+NZ`)s_)073IGWjy4+N2($rwPQ(GeU{n* zn7lXjkosHvaP}M;-3_XEoc~~388f|rb2QULbWD>rLLlpg2#{&B)u`I z^qFSb#U~qyK5?59O6bxrf(VG;C@_NK#c(UTb$5ORPY3G2*6&H4&3D!XTY`dY+>Aq67~Mrag8cn%>p*Xiz%G2fLcwL` zi6sF^>Ms_K`y~#&SArb#D1a6ZsV9`5D(82N$&-AHrVs0eymai|pk%|zKWzFOHkA9( z1b93?P|vi1YjzzSCBhk*m1I`2TYg|--7_6+)9DI`u3L0fJE-cGkm&R;J%78&&Yg%e z{=YmaFt#1gO~OAR4oQX26arg>(Ojj-bVvzbw=Fpa2joAs&zOBbUoIAASPs!fga>jE z>3Qe?tl2H|2vuZrn9P%GRXYQ*{u=cl$aQwRUzdnmu5D?6KlBnopdzt3cJJwu2`MIu zLM8e$vl(-7N$!&Y4nMy>nB3_S>VJGa_PY}SYcu&|z9*ljq=m)sziSPe3_4oY0~r7m zR_7(GSmD+vGlb90H3_k4Jf|&kp!E5l!lBVJ!rAh{?8};mXBun)@C^XhA{;hZLtbIQ z8!Ns^a+%Kp z;sh;5LblsnV<4tlyJzJ%e=g4{koK%aA+n_-F^Zf*u9i9@tGixNVlaD+GnFc3-Pw4( z;w}UqD6QJCGBhDwg=2q^Y6vw3HqrpsyWsC2?*Hdlm(gOhgqxz9>Xjq>s z()yGeAt217w+pCFj!&AF1_7tUK@@QWg<7yc;GzV@YmgLUteE<2!jNujj7=WVKGEuO_53wW`g-T`=)NV^k3(0ODSLiMx`_R+uFMRMSqmzn>1nx)p`mX zV|#RT<{K9P-FUZ~9!JF#jo<;7N3U{e26yoHYrtlGLWyu{pxu9T!FnM^G3xPXCIOw^7`X!4-@G z)Y@As)cQSpCT^kVFL!T*`s`sSAWL?H6r}RB!nA8hQL00FXwGp$BYwH@9ph%GlPP#L;{l4Ln@!d=A zpnWl)($24hbT$O+JHOSRSdpH&Dy_Anr0A><0bnLZA)`x z$q~9X7DZ~2Ld7%edD(mb!K2ZwDZryL%P6fDo=;q^xMVc^WvX0;khr)4?I`7Y3r;M)L&pR(j-C+(rycVK8 z=7I~0g!Ov#L>*KGUz4Mw?PzvV5&~JCv`~=%5)`4AsbJ|fU<({B+N=YB;`#{F z8bOr(wr$Y$e|-CQtLBvQwICAE$Aj+;33f8OS=XTsR$_z@)Pa7n=BR zaejfZ?j{QE; zptZuOiASuXFtfsNw+Y{~bB0XTfDo(#+BJy?Otw_`B27sczgQ$gOG<0!;oH{nU}KvK~Tt>F3_v6oE> zF;z!pilv~#7GkCkIcc)`sTfavKC%_D0j}n0L)rJTbOcXY{o#}rb?B|9} z+wXK1P$V3)Mb3mR&@Tc=1tt{65MDRKkMd@sBT%CpRvnTMV6JkydXn4aL+EWmsKu%u z-smTB6NwoKTWEXCck&}x-o8aD(L&!U;~)Sgpw>@dXw)s?V|-=%_*qwvn$OOm@+G0U z6J)Oz8O1xe-Qzeifa?P3&hu08xDA(U-D`#F0bQqFCAu7Eo}uPi`6Ex+Nnul?#)e*T z#@9lpG8W#4i&}&Vb~5$PCxL;94V2zxD7(vCn9dlh&OBjW+N`L;H?U9L@zzjX^kM6v z`&@BiPC+^!n#v;c8mMN4dI>&b_`!iJ$S^fG{8D!9>4J#GT%4E<|^SGdiHMXPvN~&v|6oZj5G8r@r7C7?stlk zJ*!RsNtsB;+Tvxw?}9@_>UH)nfBDNO?odkz-#xM7tdF*AP1o1 z8DF#ei2QVY49VaoHh+3sNU7`S+OPXYBva$QUL}c{R%r8!gN=hk;YSmCA2lX&zzCex z=8rV33O;LbX}8HTILVicubDb#W;Y;HM`v%QLs}FOgqAn^$CT1y!1}nN`(004f~N4| zgt$<8&ZG_q+Z;LV=-<=A!i#+>GwKQ5LWhB6RHr{waeJ;xopbBnyQk(Os=`*k33fuj8kUz}F|Jx4qxC+@wu4Ml z(&lMNbn71C_8)b;_np^J5~5Wm2$LPK>Wg+&2QPET#_M%Ty zc}eO%;>UHyp+BiOwsnl+H51k-6$q2|yp7}DZ?PPUtVBnPAbtHHGgF{3q2wB6=c2oU zjM-=b_VvGQs&P)IRh(P$NzX=eXa3SnWe# z?Y=S7<^Z>zpvB%S!xyjob@|f^+f|RyB%k7v(ArLN zh)#%OD>f@K@~K9m!y6Xk66V(;e(bcnOeLTm8$55DLN!L;JouZ}U#~L(f2LBV^2PUc zEY_fgu%snoJxNym66f$~G4b{_a9o9}AUuHBQKoPMVeZWmF+x&a5J|4+MI_x z8@hvUOq!>Fkbj=0HfO|M=h_mFZfAkYBjN!_chi?+Vy{e_@_|~)3upex{wRdv)A$!V z&sn=2?V(~Gu6nLXQUb@TL5rEg$XlAXf?n$)PgrOMC?R{tmPRl_0Z{95(iZN3WgMqT zj!jj`i5aPMBX7XiUnmu1hac$8wqB7*=zjPt8k`xLdP(nfJb&!oF>84;yaC4-0&MGG z;BPj7x-4=MlN$SsCBB0=L0gKCRugAvPc%%j3yAOK<}|W~dsBjqyqsrrE$pTuNnmwo zO;ZY72!ZgSXVmNCbIhns$qJT5%VSMtaD4g|z1EYo0U0%h+#9~20e2y-l5D$mJP@;1^VK|Gda1=xqy#XGn!q3|>XuHu zJH)8qG-I}i=*QM6STm^zmTqAhrYioJ7R0- z{@~LpZGB|~b-?Wf{X?jQ<-G|xA9_&y~j>J6Ck+Zi* z&OS*=aEpA_mi}<_A!8%zqxu8bWjs~zlr&*?A0Yz#F!Z2KW8#BR0e<8UA>%nY32=kqJYzHl^s17-ci!W!HV(zB9KuDZgZx3|R z`0a72Mc;uIAKVkQ7J{RP!oNxQ#Ans4i84qUuF5-cXHoyxmn>YVPR_cjqDv)@OTwv$ zZ0mSpe!&BmZrQwfGnrAfgKlwOZ|*AZQWSWbGXqElZd*a>@qyd^xlA&9zMhC+BJ(hA zTGwP^I_mgL*|QT{LRF)ftck{k8fV`?I3^rqo>lrovkwtY*GAt26RYEu5~VpLGY(gm z0EY`E`MAd?VWTv*fw_uwv4Dp%KQKU??T62gd}i&{vj^a+p5>k!O;fp&*;l`RNwq50 zJmQf%sxuhU1GD>2@i`*h`c{+#_h#8+Hwwj0O{DKTubKFbZ+yA=LkQjD1KHVLW-1H| zmlrLg%!T`Mi>Mi?b{BFL=tB{yY`|c*@ykTQ(v2h)Ymq2-e;Z(t8*pG_E=NA40`s> z=UdgxN%-thdEar;?p>DsG5CR=8{%^&oct;}FufDEWDjn`e--L$FA*+&`^U+H{U&PA zKjn%CT}BCgP<@)*}&3-)`{>wZAZtG?bI)m{~-{0r_~s#&}_d8%D& zFeiA0`FIsBlP|u4+(Rzq=}m_trbiVua$}SRoEMx3Z}l~bL%|S6&%LmM_)v+{v8^oY z=R&yV^m<{_RK~rPHU~cVqfa4}ZoMxk zk(<-kX4IH+axad*jWZaF8K<)K+wq-JbJ~xCV;P+`xizU(R8arr=FcV98X$kpUXQAV zQ6VwH#+H*}V;-#erUgQ<#Vo-gSJA&1743i9RGr&$0yc7sMm@+6COgn`LzLfeq_*6S zPStXRTYa65pSF(YiNuGqrup8g<3SR=_T4$L#)05YdC~oI4Ec||r~MAJ)SoivjQ4YV z7GcT3L!?vSl#x!dO64mBvY zGbdE7Cl9ER8o-EflE>Vu?gJP~O->f~^=<>UyOfWwzbrqL3AH>44FF$gpSb8k+q@|~ z848NC$N-awo7w4Jj~Xn5qDvP@Y)QjhmY{dbTi84JQS%C}v4H6Vx6d4F1r%OMcQv@e{4HTXav=EQk9l`m@Mfi3{X! z&PHK$l~_)%nC84=CO|3h*0x5pX_5?+m>{Yo>!>3DACb<5(V)hQn&-Bh?IRQwrU%Or zDtIx*40mFJSRdrdEKCw z?D@W#@m4%+m;V-}i_W60BPV1nX=@C3(IJc*>RQUwi`H9_cT!PyUIC75lT-*_nT8E+ zyP}s%N`i9OKs(t9a$hFZjVb~t<&pzwX`~$vnN!pGf_=;^CAb2_9_-{zG=qY^I6#8$ z+eb%hEcQNEZF9OF65*>CT{vz48v&0&C)qGk=A$Go1S)vU9FtEhb;34SWG193!CBIoAg zoqd1c>$_#{4n7EdM%7j>+ph4(1aIpZo|#J`G==$VD$@eS8W4@0d6ie3WU7RAju%_& zT#$kvu56sr8vhwM3{zJ^uRu)-iLg8Bm-xyD9ocM?ZXl%r_B4bfn~kbw(95>FJ+G@t z#g(UDguSk#gQR@PA{%#s0AI=__f>_#EZhSdNgGn+ z!w@Mu!D9V--pJ(&CjCYcbli~h{)#)arF5l%5z!lv!XM@#njsxjO*;gn2}EyItDi$yY|#1%RF33*pJIyEXR0`usRE$wmUs*l&( z#0>U|3wP?mU)%l>0UK|b+mI;6r39O0*Zl2IZ*oxeUKJ>ruweyu!B+EToOd-R6+N`? z-PrRRsv<-HV;`d+X_?I4WP|grQsnHbm{Jvpq{TAf$m{MIXNEm+-qDzWzmUD(c36!a z@G%DX;zmi1X>;Ekl*kmM7);*U`g3}d*RYZ{n%UG(sG{MAQE9 zsh6Ev=HeLeoN>quz))3rBGZ_0LRJttbYfj8Mt__EIFRO1Oq=mmNqs@Gbq*1--PE{D zwM&gz?e6Uvn1odJ;?VS9rU{_Lm}l}h6AnRfnv>gXZYdI|&;{()Ae9_F1e_a#Gb)2B z$foRZx1x&HnIdVzpdum=;}fa&`KY}QjJ8$__#K}qW>#rQxii9IIIzTBwlpq|{O&+% zBp{FBN#M%wAw}w0~y7J50u|F7~Uw zBYjMt4(&paXiQY{6dK7ubrhx%T&E1*K)D#xQ-hLmbF9p2++*)-ztvKa;Y>%sfNcjcS0G`*_c1n-iC2@ovc7HVB7v++{~FJUUS>j9CP6lzY01bn4RSl&@!4Q-+)yNe=jZ` z;q`EFd6KaCqaXbU++4;chLA8bW@qiZAA3bfrpo#&8D58eFZE82OwV;Rp% zeK2-hEk9z>yG;}As}z_=uO$E4UlIY|6w^z^qmA$Bm1Fk7aOsgF9I5`}@31K>g&dHa1w5^V`+ zl$s!}2}q&ATA7ETjmW;n8MxCv z=#c(U=p;zXgN`%IAK7@#yQ1IRej{TxaJu4f;7~)|c_x}bQyNB+&K{6WDA>VK9MIR( z=OzVbe08LIE%#m7?j%1FspA&F=(x>!*D^}FCL~pCFrHYr%S-%R6Lb5V-C?`i#wUqr z{`+>FF>uZ7y4KrGsVCrIA zF^@yb_)0>nr4r9fs4*wMAAfTh3{QO%GCKY*c*@2? z{*Qv#Y}|*>wjxv9a?e$DD3KmM|BJPJ#2srk?s}T8aP}8d1MsdV(kbNNa|&epF9cUe zk(-s@-yyu9Aj{Yuvx|oHf--kL3Ny2fzoUtX9yxT_&rcmkvfqm9huk>m&NXOgy6mHr zEg^Duj6u%sr1*3ShGuaV0C$k%7n^>zkQja~q?Ppu&&}31Q`prKfD}y^t>L+1^s7hA z0~-YqsADL|A?;YQFA?fEN;gyTqmX+VBV^6i2|VBz4x;&d3S&4!Tt(VFF`q{;g%OsO zp+k|DnTO8$sZa?}f^$taaGu~-K@(JOkEi3~Dd%-k{`3MV=k6HH{HHoC4vGbZ=>Yv* zFH5BzL?RDj$3qu=+lJEvydapU{G_NB_Xlc9{z>^^btBCjoodi_lGx-+8cZ?rh5kT} z5~~e+*013hqSxqgQdR~5Tf!iW92~-qi9JF*a=88Ci}@CS$Q5unjC_83(jh}8!x^j| z=|vRvgNGn;Z*ZEA+3!PJF9Lq*C+!QV@M3T;-b#z9)oiE(%htyb{q6zWLwwD3HCzXd zKnNR&W+MT9Jz8(@1gXBCF@8Mwaj4PgRTm+gyCPze#O$x%cHXW?FsvtTv_-0 zdn?E0Cop=Ntb87<`~^$5#fncosVp;3Kc={ABHa`dBKY!D#W0%sV);3IZo#U76jfX; z;j%iEp#(C{4p+tJhq5;nvg;{B$L3yXNhW^j0b>+2)W*iw12LQ8 ze8=@{x#^So!(aHUw^GS&Wh<@|f`#yj-T=emA9qcr@ls&%W-DRX?>|1iXwgY>x}kpY z(m*A6bc}l9O;{qb_dT-5_gdAJJh|v@s3n6Sc$!;8`)$qVLqs0xpY&VGiI?HTur0H5 zIY_vgL{;*~lW$UyI%lb@ty<1r1P=D1bgWVGX$ zga^~($b6b>=Zp~aZ5RSP4NA^Rbd|=tbk*%-mONb^yJrl(n#?+Txi#pR8W3S&KcB46~B^Jns9Oeaqo`Kew!${P?wjU ziot2!Fgl!1ZHa%a%qpRi_<(wDi3SL@TfK#czE7&>km!@Ip=f{x39AvsW?7zG2>lN~+1DP<8g_LR2Hb%ks+ z`}5PA3Ya$`(SqRq(t9P!)#q+_YF~vhGe&T%db3pbP^x9&;!Sfo2Ze}i{!M=HYqT>O zWsO$sg}#cw9h67WS)Bjr=g0G%2>fq%{x1PUbvVq!Q{*O&&~otB&fi6cxsk+(7lqOp z&Sus_iQ<#O;^fn5!zWlfkKEji;u@tsQOm%1Zu22a$73uM)0UMxGXMaV9MB!USy4Ta zMwVDN9`n_kR-i&9o{)>N2b~y?GK^V3HAA0edoT;fTs-WM;LrQhwxRz$ugHv|3Mzn$ z><=RVZJ1|vLPm7OYy~i|PqgeetYB}GMxQq7Aqb^V?T}iflVngz=&2-3iN4>hiEKXj zroHgXXPxm(qT0K6mZN59R}C@$Seu;z2(qw(7W}~oQ*Y%(976sVQ~iujq>NkX#CihE z2_LiP)p0AIUWNv<9`zK63TyTLAOmF4Yxb{bl zA!JdT6cUUh%u7kXX$buOFd<&@y08Z0g3z$QrevB@PHhku zt0g6E3=obGS8AyCMb^lR+-m0#DN`6UAo8=xLHT*9U1JZF~7u5jA&;zLouvPixtG5%VJI6%$0TiNzxY#YGpj9y77(Q(9%VjqZPYm8I0@0Lr` z+C~hgc&@4$c!?xkl5MY!Z>Wu%s5C&vA4%%@rmhDX5;|Qq6N_ ztvX)ZJ4};d-Gx?rhR1i*bks;@l}#h^!EvqXBd1DYfU&(MWgOjym+LQu+`u24-JE8w z8zm8lVwUFf^NJ1zKZkhTsv$pW{n9s>KOT>5H1oTsG%UGt;UiB$+yz_23%|HRBrGx5 z?2ueiNT~eCT@kx?OPKsFi*y3md+&%s(Fu`_`S1279S~r>ZqYsWQ)q@n zkzsWq$$N;poX!}T+Al}dTCd%nW7Ke@rR%AHMF;VlPtY9WgiV+$9@c#covqls9)JoLj+$c9<(NSe>7lGyF5BfT$zL zVPEAWht%N_*S){)Jkkpq6vuQ20wh8sYutuU4P;K=&ac2~_rg`!UTA3o#BoazGBRuk zJ+x-W=Z_mVPVODqBdP3%{7w3Z_p}d9$BxcUgmQ#K<-=?W=m-4!IJ0Sup-=73pTP_e z$|%WfOuDJ{DUP-~JNX`RvV)o&DNDZ{H7)~owxS~+OvUry!s~{dUa_fcbS|_bXkO$! zMQRi=C^(PaGr}_Zn=MVZ_RVjG+sYa5<5H{P04y24#z3T0cYt6ms*d9_3c)O|CW<7K zFN9896OZ&>GysPYO>ZuKi=vS>k^k}m1*2>_cpS}+z0e$eX~4%{nEXNqUoIs_^r7Oc zoX(|$2CP?OZQSEgXL$6X^g&^!U8*6lPL*4U_*=M_`&JNafr>mS{K0c@X^)C-+b7n# zFSK=GWD_@E*xRE1<#NYj>EAbex%nN^B;=i8;7ergnGT=EyHLw*Q)tnC0D1y0=9tU} z-!r8E?-v3Ay}^T?!gDcG`fu9p9ByRqrXLlaO;tUmzXBd&ycHn02CCcI`WkL1A8Q4m zh$I-$)S|HSoc4(apQdgdzaWJd{X8RNLC<~dOF*8yQC6i#d5$=W4k%W|(Q|{_8-+T; zY(YzlRO~G|2u4^kR2}^geqg^t_QCuhue>c?Ab%K6b^L~lny)|nsF2Lxfpbf3`$9P; zyUh{yV)NukW?0_Yvpi&v@Htd$83E^AQJWQ>-#Uv<%0Vq4m8N1GXjA;(d5$qRpDkI? za~}{KK4Kum$7|HO#g)#Eu7k7XZ>2!VNfUx$}_pN9JgWw@t=CLfdpg z>T!3qp3aP?X0jb5FE55K)Z7`q6!iw~j&Hun;v=2iUp$;bSsA5(AMyjZQTi1;nuE0e zoy~D0rx^==+qF@MMNAPC?{pM`7Xa@i1b#NP!4%QQd)Q6%Cdxy9+pILSz2GA2LAyK0 z!Y-1i_G&*tA$u?OBSSA}AH=UqU65)aeq=GTXMXcT5v($ z#R!tjlQw0iI{{?if=#NzM<0n26n&neT>+ZJn3CD;uTdET(RWRb3f z7z0@O;DZH>Hrby2@Wb_3!l#qwZhuKdznsvLP9?M0bw<441_a{lgm7SF%j!$<=xXNc zX-5|JM|QuSkBQ z4G$Hm59u7cs#?lCi*%rfc`lYN;(7m{EXUMuKiS@t_*l?hbz&XGumL3UtKDuCSW+s8 z%CDY8rzST0hD#_R0v&91;mDJ15#BQAXW$NeezqH6q}6u%gY4Mu*G?ye(v=oza`2l= z9POS+P%i=q>VD$_kR)22-ULTQ3w{N}j5ZN* zzfbGSL4b#1VYcvFe>@VkgDDL4X=OU;HwWI18Wt#;(lp;%&}JixW1OkqyN*U*Oga{j zGJYOfvfW{YNQg!Nb%Kq9w3EufiK>lkKW;%-EwKjxMZxJ<1ZcZU%{avDp(`tYFV1E+ zOsLNkAbWk2l+Y!j8X~ax@VQ$>aVD1w>{o0P9bAoO)T@?_M0qY8;FNJ@aq;&OBA~r1 zxJ>H#09L)crlM-`q(CFA-fQU4H4|mq9Q0>(-&ot$w)#zSQ1H(OS3gN`C)8|Pg&7zb zNZ`GuEZDn5TaM7i5|-K7x?ENlUv?QD_=bDM57eCfCW=d-kzI5ZU)lbkce%m1%+^sU zOF@!7!ZOlNAE+jAjOD-VlsTK|+Oc;IdhF+~y>KGTD430c&^?Hw0?v??j`1sW5PT-d ziTCc^Biw9vn=%Qk#t>jNed~IogJMfi)KXM3Y~eGXLFPc{3|YLElD38@DP0ff>}`GT z98wAB+CFAxl&;Qc@AxS@XwC?1d4zq@&^wX@MC-X&AX7E_YE0Gnxuu*VPLo*ufBY1t zgsgqViS&t7ROyItBYwJoG5}XR9$fT`&RwzoBsLkDOKdVUHTRwdP4L_6NEnTj-zL7lKn!9;LH!aV<)}tw%`vrbwM}sF zeiU+%(1u@f;FayTvra1|_GzTp?RWPneYCv`>_>Wm<;l)9<+mgLY`rFWn8U|b!QzZ+ zksg}F-3D8w*V{YI$oQA|#02*!5YsCtCE?6xqJR9KcWII5rI!INFKpd zc36}t(~uCzzho@FdkJu(LcZ|T&j#kwlMLQX6s^u}v%}?@GLx#{FXaD#yB)8*_uhR! z<+O$A)5p7Sj7(<3_|#CESd17>0(%TGN5k;>3%!gO51$}=ilXXr)3jtCQUU}y4~-w= zG%-5&wsnKxT~(s=iX^0ENv<^!L@^!MA)m!ElRG{C*|p2Zt??{_&*DS%jEuD|`%Qtv zmF;D%Qyp59uL(ZT7Qf-VukN2{eG{;HdH$YGHW~%7Kq%n@sTO>I>{w||FTYQ)7hMa# z7%m0!&Xo3~E%lC>k+=a$Vj>d~Gg2UAe@n`@NLi^4qOXnQg9IVcCvWvKE&``jG(OiY znt@;BPA3fi$NkH3e`Bf`O)Y<5x2l9c4)($lL^V7HYt+a_q`&Mls+)I$^|CzJ)_j(55u%gpB>ne_qIw1vF zMMdNm8h1HaiOSvai6*{SFgBeJ$Btud+-S>b{-xIrUHzm;eo3YLw@RWK_RVR% z7*DOivn>d0my@VrDhtnx)MwDN3aVU&AV_DBJ9_<}!W;@WfFvdc(a5iYXQf7^2qvHK zTTW1V&WLvY(?-Gzk9nLaL~}l=7hzu_3FqfD(t`eg74Eg;5i#wJNEYT6f8fxFfQk;F zd++9km3$lOZfcs_Ui3ID19KFV2PM4KB$28OrW9Xa3O%|v=u_!BI*4|@5fgDLyah*J zYuqOsO+ma-K*S{)Wq@-XA0ab0zcwz!b`FiAVF%J=5uC zCRG|Wrv6K?8ziy;O4%)}5@>wknu~F3EW~qcnSMOLuG6#ajMZ&2C4{DA!WIAz< z8VkX+VcUxJ8QCi8vfB?}EtD-llkXX)U^1B%=mWKN;C?yJD}V{J&pn(*1;}6*ygG0W zTQry7G~xwv98_c$+UCuk5dV;ux0UHSEQP;>QjTZj z{NsoB(Jz291rc2hyLa#q0xkdZmvkL-D}SOMKFiajUQY4O;ZrVaM0d_^P}rf&I}k{} z1H&H2zafI_0Bn#Uo5~&kdC?j-Ke~MziT{h!hzp4@p4;-@@8bSAnlO@eV!B% z)`|~om@lE>xniQ|cM-1QrRlGaTj#*rXU>ANc!fq$NT=xmbZ6kH?^Yf9n1Kqvf zf|iWC51~rKRcteeDe+I>EGXfS?0Iswqi(TeIA$g)8WLr)-XZ*ow@q-9qzb%-uP&rJ zZUMqC7Wngj0|+>czMI*zI7_X!3ETklsoI&u-aYKr7r7HvAq4nyqds9g8M!VqY{c=@ z4+Ax`iiG^;ws#qWwb>h1hVJ9g#O^_HAB3e6?9bA$cLqT6oelb^%iHC$D%V21DL;+SQv1~;^`OD0;)JtUE8)8)%7B!3lUJoiZA9-w4>jS^hS0R3I2M* zn|creT4*T1H^see9K=l=YiATz{rH|Eo81c)5GV#Boe|~?vp3WezQo;ZH}jBb)fJ+x zp7SnRGnO)l%nuYW6mEbP`@5~|p2zZe-?E{3uF$0~3*zql*3*h+RvjO$=E&z}(X{Q|H@%E52i2zfO-W<4+vO_n*&?EnCDt+y2LiMYQ(iU?WJp}4G zOF92_54NZ-C#b$U#-KK(dT3+;-J_1^j9E(YrA10%v8ImWdr0b|k@J3F9eRV2M9+&Y zUy8wtD6r#szo&hGp+GWI39W;&0pJCE*eDp+MRAEw!?;>NIjIaz+xQNg%LvhE0uS0w zb89fsG@2aMTY#h&TJ}d$Kdb7CDG(DrMFr&U+rM73yvstut5v>ey~DD=@ISM6U1ld5 z|9M`CIN^`!NCTOi;1j%E|NJzx3#SATk6?EVH`D!BIFI$`raa-&NxHIhd@ue=W1VTiJz|Y7~4)4ofM9i_Pe}yDTHK7T??E3>V zb;+PmTIW9ZHL4!a@t{8VtQ6qynC^`oU=yi6OSQZtXBR`OnxVbU<(4yrT#4P~{?1TH z?>{~w=?()U8f(Ma%@=x{%79rM5P(=7vYa7;B;E|PIA>5BaJU5T@n=D)XgbMrx}z6c z3vmIh9Kl*JH7XWo=(;Hk`(ENLGlDSsoH0+EqO{=AQoMxNVC(r4m z9`Ifse$=cy2GD;9_@J?Th%i5Q#}J0N5<=H-;)z5jzvGn$eiyQTBz-jjXQ|q}9c3l4 zw}s9+5>VhP`XrRR(RjuO5KJPC({>Tl9L{J6#~waEb*A12`*IIoH{`9@fR|mSofvYp zsLoC{WJlLrPjUL%PF%n0$A@~V$U3~?%PeUD;BfzLVz&Hc?js^ zwrZ%p#Tf~9)hW3qzo8odxRY*`=5}dFaTI|&zLC36qKJ%^RAKSONvU3|xPIi(_>~yW zT&)-x!E$>&i7R*bN02W&*O)CqdfeJT6hExdt`#OBq71yPL0+%I3RGSffu!@AZWn7M zLJT5IJ5Ru;1|reo)0msmrH5jc5FL!YBE&EBipxY*z#IKhF5}$P))y9&F=N|OU%~Fm zn?`&7#;-9xBO8LcmKN7n+pbO)f=eX8IKp~0vkyl$t6&Q>V`l(W>;@32O#`C?7wrxq zTL}d`&V@PWzLHgFX=&qZbN|O!IR4%B)dW~7+355u3}@`Hzq=2P->-b|!8rT>Jj5~8 z9-S|xP>SqEMc-4gni!UVRpuCA(s%uI#9mZmH|Lb_1lwdA%M8WMMZz<=YGTVXg`GB{ zBt}*SaW%aTSM{}rH3t*iXi4IsRMP^SOQg}at}T?NrphU$>XTIgbh^b;_LeqwCBqG*tVv=Xu%2($=^#;;*8GWO88!Bgp5AJ z)Ih$38|E{|5@ox87~oMr7P)@Rw!o~rfKN7d#TY(r_{3og#5Upcm1r&}Y^jz@)Rc=& zh&|BUCW$ZxsNVmf4aH>^MTlcTnlLsPw;;bO$B~A|Vz(I1+kXn-*QH4yB@heU)z;Pq zR!Qw$j74|*>`X2q+tcDYx)*V-bVCr4HOJ6k_=ng3u|Gyyt@boWiz8>Bbe*v-Hlo|W znI8l@m#eTIrk;o{&j1qpF(;T(uJb4i0qK&Cs*-fnKMMj)-C6*5GjmsMZH$v2qhXUa zEWaNcT(`$Ccp36insuiUDucM~+=YG(i_)B=n!^=--8w&^r83ZLRLrgq0k7R3KZzuG z?R}n$@Lp^s2-)7A-!0d!%$qG}XIFE0s6a9vMrQy98)R_Dm1GcKjnw zN3`x2({#LK7%aK8^*iw=Wp?b;+}&k!u;Y0@d_GVOH&nbrLXrj9 z-*J7Qa#)81^{POEor20A@I;MW$8X$eb*_85Kr#-Rm_^2h2kKg^?_kuQ*X_SPP_m!8 zGO>9AM2xX1{?6)+6W2^6Ni60u3`GW<4HbLGm_--vaR(EjFB@R;VF`sk^0h1f6@5In zsm+mQwU|PjNrUrPW-W?ekvWaZA!+=oLaZ=bq)$fi0QYriMp7n878foX=VIx`wL*1$ zA5}GA8OT%{xB9jPwm^{4KhIUUAM(zX$@*b0hI9HOlq8CRVIzOf*lVtGuELWJ`Rq5p zzu{4S)I$qN%7K6sh4ndiIKBFdsa=X}L&5JPh?fu=oB8dcEI`G6a~}m(w*#-+ml!Q< zT$|jBA``W=Zt}P+aHIMiiJXbjuyG0#)Sfw(#+()Z3rKd;C;y1e8D1`twm6phG^TSa zJhfA8Dfd+rmWbP8Hfq<4z)1MWTa-n+v{| zTX`sf8RTG^DZB+#v_F~-(-nsrM=i>=?m2OeeOT+TdDHlctc(X}g*w5RVu4Up7zn!U zK`I9Zz%u^|aDjceX5$GIC^jD>ey>h5CEu{Y3ERSso8*+O-XCp`W~jIY|G@v z#(_e+m{^cXyBPr=_(NQXY*=~Y4YqMiVW;=8b-6iYygZ3!CqXR0f@s0&{pv_+35TEC z9lG3|twA9$!%ZWbeM&67Ei^)-Y!jCjd`Y;kMm=6ojeCd}i;|KAQ#1J(B*e+17wL6Q z+Yfb~1JwYo8f(Frj)~p@I+}Qvd)GBh8S#SREcS~i1jqDVZ~R|v6JupbD$&DAHVNX{ zeT17*z~62!*cA2a^wsPEJZEz;{ibRy)$2To<)=|4w1wHrvkLxdOj zj?UP&p|g$%)$1mDo8{V(01yyuxl$>k-#<;k#3Ewi*W;SA4N^xa;|JFpLT#2qkG_2r zL-_oYL+R1`hK`^F#Q72; zE;ilcTzaSpm6|*RBuR(Yaa{3a@D5!KMP$@ia^~y|@T-`GhjZ2%U9tH3G4YN&>8qfB zAR9y?cG0h>PkaH#6D&KE$ZOMPh-Cq?Z5wd-dFXeLDy*5v6L1`*qeBfcEJx?1fHGhv zfVErIfsY-~^axg!=YP8K#~>L)X(IJFp~>&th*j%&z-&h`;u63@HRIXtjk7SMinA^l z?f^s(i)+!qvGCEquUgT%CA6R97<}xTRvf&v9<(ibP_1ykV@!3Z#p4pmRg3sAd4E&V zi}i2SlAYaW@5XAW%my^5r4^N^C!BHaB#FAi>K_2$lKdv{n2 zzlaesi!UZ?`K!Sxy?egSHe~ga*3HZpKmSpC>C{4zN-yq~ zxJOTYuG_E^tp&42tLD#9u0(g6%n-+l0(P~QSe#*AF|}V+I&#^WZ^2TL5U3Iu7GtWB zK=Rb(33$WsXHpt)c9wWi3jHKH2-x6^K#PZYJnM=?b6_LJs@PK$$Er~eg>%)1_Ev>a zRWJ9E{HS#IRMG&vnc&)J4v*-WZ|f2mO)chjKH{a$<}eS zmGjcIoOthD{u68Lm7qH?&>CIg*#f)ic_4VRQ^JbE_H93Y3lGF;G^EqG660aFQ5^wT zjKGm;!Khvo3g(;SxLTQHI|JN_hi4wGe}0LdzxFBmN}bMh;~ZG!9&<8t54>~XEWhM)YNP76Bq+H_Dhrt z&}4t_#X?dr{8#ZOJ?Pb`Hb@y|v&bs5)8^y#N|rgyPQ-n5H3&6*dXB5d?eo@#D}l*L z%Whn2x4uNs_Nmc-$P>4-;M9p1^|AL#TKJ0DT>1WlY0a>qAvHs)?0O?84t>1)PnN}# z$YVvm4-6=oUdJOLG7Y5*W<0w6Ywjldg)zbQW&o5S2F_ymtKZ!IxjVF~Ab+S|GVt#z zB1%t&WaJSl$V4EjX0J;^omO3oboAc2|*mX!bxVSZsyTB4Z5Nhx+<@^#cK1&}BsQ&6#yN0a~DD zz1#72fOmF?hRB9~Ibr;WtXOMMzJJg7-nu+OSt2VsYzTc2i$I!~8J)9E7=(zJ)c(@7 zWllv%WTrKo#n&m`M&ZeN%ACg;c(8$lF{Y6|l>aUt)!`Xc$1H<%w3m4$QUp85rCgPH zkw`&EZYQj`nM)=Fz6rZz`;?uXpm`-FAdT|&Z;8boRj`)o7&VC9xQ%16dM?jfoGxp0 zahvBb2X0D2k{$nj{8_93@O3NQU3`%o$!Vg&eZ7 zMh$MqY63KBOrSW4i6wU0FXw8CR*gJ5(v29WmEXVR?8KSOSIL*SLpUMR)&YPA_H`-? z(p&5tr&k6LKoDo2f7InnY28wpK50p`1!UKB9l;5RSnL@7v8}J&#vaUH6ccz zdDf#20-*;{TVG=`K^yb^=BqV{MJB@))TCw=XY4y0KGhg9AGQt=k4BgZ2xtFxUf{CRZOjkEnw-V#ZouK@&z5JwutRC zqF`JQjVKBVG~*VR)`Ea$X3(-^6f;Ele!p}6uXV2L^Xf2On7r?Qd7kr}bD#UZ&spca zN{R`dKVC~uEB=-B6!v;)0BBr0i!vpDf|g?i4}%J55>tHW;o*`(Cyi?!atK9S2YTOC zpnmSwNaKN%2L z|Hq4iKtiCJg9XRM0Ye-J*^VMz)-YKu0Y3~5YY*N9FImahbX#$%&;#e%btCw}-a{cOz)?0U7r8sfRe-Gx=jE49)iS4O2HbDAFi`SK1p9Qat-MubiZ zpZC$sAo_axOYp-6ARLN9pU0tNq{<3Xakvd_>uincTE!tsB|H9JsQQos95Z1RO{1Bq zZglW;6KeY{nf@(Jxa6FTOol^-G?qwQ!EWI0=t#p;XU1SHnixsgQW6+lPdxRz>Ag5W zPV$)fTX`zcM$-1CUnnI(O?kIuHgX21V?b--!#D)M4Q-|a${^u7@a5WHp#5=Sur)X> zUAuH?VYGk$xFO4sS2hFMsS86^-W$moftb%m7w617iuuUu)EhBxYWtm5qkOnBeaab_ z-slSoG){3oRU(#8UxAu{^n8DIarCvh^P0uaT!_Ms1FA2kjvy0RIa69KpIgD{61KU_ zdg;>torN0w44diz1~k%cmDWcynX2!K?hmKhwQ4)l(|JcINhb`Rgmoj71)d-P;P*zW zYJ?iY)tWZbq2oIFq(GObN#Lp};=g!4al|}}k2S8ttYn|zkXefuZN>S1JTbdI(8a0Ac=J7?liM>%Aik2dVGu9I8<|r&W{3D zXSkPQ^ZEC1W#nUjUP!I$pPW4rNjQ%mjI|g zoJSb2)BkU~rt$q40*HTV~#oM6cU1EpLN;>s+=RzuPV;;Azf>`opjP8PS{h+CXa11qjg3PQ4Qii_@sTe_TL%?okY0L-|iq zQxfm?llnRLDI$OijG3b4TA+@v!%A$E8oG-PyIxT%4&3vas7Ju1h^Iv+uo&|sNtu!8 z8;BQzh|p@dWi1B+(cqG1f~B+W$!EW_VVCC+g6!t^{RwhjO|V3dbuC1G3)S?9;nVxa zj^)JX?GQR~`q1G*KkSdVK}J3HLj^=D@^JU9fVM}I#@JMD->?_*#b zGk(F@LLD{Ua|m2|`%FqEhDuef343E)jyyNH;Vs)C8W3_}9@J5ymbVLjgWk_KnAu)kA@DX>> z6i30k83!wTBR7|c2C~;y`~Z5~%V5ZaNa`CDH}zW6L!Huk4J_nPUD~+{5uazzVASh;#)bQkOWKhx()H!tc{HvZaL(V6CAXVuH->qDZY9G)qa=Cwsgu3kN=VlQ^0Z;tz4YUQBF`;|9i{ zD2F%kc)agW8HFRJ;`x8`#NHyi=a!duF*mTBtHQ`TH~Eewq_D6@LZg>SK>bDjdaKq1`YK`WrXl!ee42FClp`;Ms1=q1F=fLQeqS* zZp1{{MZ6mhH2DdX9SBgjFmmeYAQN;nvUP(qtbUJ>{s?r@&;S!b*h~$os3@>8;#<}N z0P!gH{)gdV1IJ9YwcW599z(ebdy=Heau?$T(#q{W5?GTKu{aM2j^O*}^Y*}g^56yjIFSgc&Y0cUkg zyh9>XjEnNnCiyW>2=3Rd9Ylk(M*m0lxv-3*m809+`pNucFt1EYCmwT4lTZq&BZJMm zAA|nk_IQ}U4Ek`XTuctVlO~C`opfZ*LP`Ak@52=HG~vL8G-GYr_2o2GDFk8WN5h7F zI4^-)9t~fcrT&g&F<|R}s%XY70_dUf;g};!VoBtL`v4#d_u`VYq`9TG4!SN4;>)K@ z`NfReqOwn~su))prnJ1EBMJpej+E>^$2>z|$$EcDk`dCHtUNC%N>w_<)a;)A)h`DD zqo4w{X&-&^!g-iE2X7-W>+dOw`|!&_$Z+BWDN|^JipTU?0u9)Ote*@3PFuK7V)PM` zBv?y`P|?%$DE~71-PE%YWe}?}JcK{DP)!XUcx#h{&7*0J+WRoxo7hm`~6=RX9OxDD0!tHu>49bLsgP%!6Xa0nd$^nBebtk?%y>&obIw;H6v!+$aEG%@%v; zi@OrMk~qldzKu)CD#FZov!udeNu7Jr?0? zEhdZ{+OANO9aEs^&;=GZR5c90VsS(cb;P`eRE1;9Y3Yq=!JDy!17v+YqM8 zCd(k)??jdt6VW1yvE6 z>z7ncHJ#1ayze@7Ec7jshiPQK6-){0b@&9fW3ASmJIEqRl64F{(cqrGxz7%V#At(^Y@=y#N^O^%4yomC;jo=_u!&%3`V+E>WqC9x4iWv;)1;G4zB|`f*Ia(0iYZ0W<)QI+Jz5BDWEd7T~Bi zQC4nL6q!oboz|vP(?}l`-aR`>qsr|TQWb^|AwSOcWg1YB^rE0)r7PM%+-S|w@lRan zeOqJeTg>pz&wu($ukk#x_Xn&Rb4;NiBha7?M>&18V_#>-l+RE?IQxW~-`kfw%L0>~ z0U%i>Y#7sBd4j~1vz!G9vh9A?2OfCMG-K+V^S9mlvEK&Mi z1k{)|MGmGzRL$@Jppa$QK7$Ox4kC)Mg4ioRb0FlFu*AZWi=P3yic4VRonR#2SGT_u z7M4R9%gykvtFad`iM|Kn6p1JG8iJg)rvrUcJdjvASCjw?0fiV#4dLq~kpHIr4NR>_ z&~bZUbAk=#s84owSx<6BpySo`=DKaes-I-cGV57)1O*BU780f`*?j+GE3AB~vVAcJ zmRQfCtF*iqKVVh0%tfiL<|gX*a9iTpSfoics#z>P2u>*q&O7H(bS&nXQqJ;GAqJ3T zYY{r+&vG$hoC>EHXNIi@Lk!%n4h`H#jG#=WnjP<|1$B44n%z6P-Z2mB3cG{>x^m|H z<#HhDs+FukloB*CYqy?w6Mqe$L8wFKg&yXWEFQ!{X;S~Puj0bsMUjlt5r*-iVcU+G z996e8dA``%c4KQ-HHm6Q(qVXw>*}%*=H|s#dgY8Pd#oC(&HeG*D*TqM%Sb~e?AGF4wmGKcDPo2GXF6oMy`MrKcGqQ z19L-VJ-U+`lL&dhgdRpcUKA48!{aZOt+5~a}Xf8;=;ikgcjG5ACfy1(2S0*~2T{G^b5j3t&-1SkME zEQTiIwz{(4p>zbn7p;&8psqBh>?jIm8Cz~up8^+wlboBk$idA5lw1cNqN8RaYHmIB z+OhDaKmzim8H5vB>{V96bP4Wdqsk7VjP1?cpi{bwa}z6C;Jclt5(5NRv|)G>A1ztB zIGa(J@z`m1@^mg5Jc)9Umq-$(HJre;zd{qK517)G82AMYDT^B#6f7kQ1lS1PyT&R% ztKG_C5#kb-L^1&f%Tb^^x+$k+{CizH0&{p@m|U z)N0F8{qU6DIC4u0m!XF*0f>dMf!_cR$hw;|sPPP*Fj*!!hkBa@tIe6fhs<$&SC+By z@O8T)frV!1zTtfF+_vco1A$;F19$W4o1uwa!|O$CGDrv5iO1}9;;MK0V+OLbCoC~; zyR1xFuWLODbPHq}2r>p$H@5Vic#HyPN%2T;NEb9J2}~g;TX^griF!z>IM0D$Tp_#x z8ImeUKa6BVrj7Hvm7ohA(y?ij@8{q%m?P6*l#pQYt;`VIGW<`1884ey3fF+nOviVG zc7o0T94gu&bRUc9eSaQPNcRC;fTt968EkG@CHC)YaVi%55U9-lSRp|(^oiogK(m3z zX+ctf!havo2;}dT^iVk`C>%0ua)6jE+9%aSgnu~PE@@T*3X@f?E2sOU$)tcRts`;% z#EAb$t)k94m^cL!k~DUyFcBxaeKT}dBgp|{8X{v8i1FqOCrU!JDO5r+on zZMZpxJv6V#CMO*q`&m?gwn$Vrz)6U?l&ZQo#5tmjMw|rVTQ+Vs_Igb=Hf0L80f0?^ z1CWKD18&Qo1V>&&F5{vY=O2+zH_c2Q_x#)*Srzc`7A;;+=4t#TMvd5i) z$@EOaFj^ZJbVR5RZ;s8#F^7vQcf%19?G~A$ykSrt)pLk2X$G=>T$LWtr$I4Ct8L?U z!zK2UBlvSU9hjCy;Zi-H@4*0YP*h5st<1wldx%?0fQm-3x@HlyD<7@Fr$_=3;Qw)1Omv{#{_7?>Dh%X0@s9PR%*c;OY6)=-ciC-q zzMU<El< zTmyAVR5U!aOxA4m*|~_q+qklji$=7H8wq3)NX&`@3{pN)JrhtRxjJVA zqa$#X1!6^^+(9FcI+#9;1>vTVKpiku{Uk^8PgYk1g51mq{%JNb$UP!gDY2 zUpar8=MG6{q(Ils;MjhegK7iwn3%k-cPJij)M-GnbbbV8(=f_omsPm^?&sEpLmG!% zF^S!IrrPLjA%|#bzoZ#v8pz&T8KgjJ3(vk)`Vi1#BN>y ziuxcbpRnK4*F27B>z(UJlLDQh@qnS#338PDxg`(he7nOjbr``6T;+V^FOd`rAkGR1 zBk9rpdG3#s`dkj}gHxJhm8uYX#D81_ZKkZe?A7r<`2t&Bg1PJq__0wVKpdP#228?R zQAwj4?%56a{MmvGpg=vllKHS52xY5oJ0v1vM!ec{>gaC~C8>gJ!XAJd$@jU3MvHfr z7g2+K8n_9^CFBMWDp+jzcYycfTV5z9O$-Pgd*0-9km4$hkduUrR&X#oe-<+U048wbBgk3@_504~XkHyPkf?5ZH}v@I zB~?Sb_<(WjTheHv!Z|sHkp?A%hO$Np@^Y@7#YKan^%!!SkdL!KooiCw(oTkmj_fOU ztk-IUabwC=-x&!TreP((20eR6`+4+Fz@FSZLva1xD5L!yisQCXR5< zIk;s!fFS3Rt$~T%kxd+KIShNqcXX9T5rU}!`8)SnZ7w6~V02VMzT-}<1yO-Gy&yu^ z#v!8~V%8dB3mqm0w6t@aXu$P6s4Mg(m)59-~Z+;W=Cu(~yyw2L%C>g+@Ssss^{^FPROSFb#n@8>!gQ+V|QRDregeyB7@iM5VU;*r` z`R^x?uva7r4W|jV8;T;}0R#gQCqFtG-oLfw)E?_PReGQu zh=Y+kso>8h7-560%gcg=5O7$X-X5MNmPuAx>h#KV_z29`YpjR{vp5>jh9Hh8sDFRH z(-zCl3ikL;S~sg?QtZRDOvxcs#mqR4EL|q|M%1#07z}o@boe?)ON%XC>yUOGSJ7au zGLi>#M7r6yd5&f$k1?3 zMtCS!vTe4xvwer@O^*`o;Z{idqOLm?mN&(;r7dq;RtNFt2#9?%O_|}+SUGs3A(HEO zKz*-6TP7VtgA!gTtDRUrfHD;`B7ih~we%H$A6? zC3ZR2Qx*j=BVkoZufmU&FF;^p_}Dt7T>FMQm$gA?V!}+To;*oNyB9|~YYnEg*uD^$ zGgaY@B$sC4(WoDL3D0q!>0Ju9b;ywXPX6Tc{ zs$b*%Lh5zGF`YuagR}+_2!^7e=e5M2TBIgq(Qv0j@asB+@?la!na|4)Mw4YQ*Uxm> z>H44h>AOij>$)l;bjWKz;p=1cxu zIF1(rG824_zSVMKnX!|x;?kIT@~Wd#ozcm9rVANaatt_IQMjX~xv9|}w)pXEZ{BX< zCLy?b^?6nFsDc!syK1uckuK`+fF74EdaG$Qi-wh8g*B2pF^-4i1F9Ei`IKewY}`m0YL**wM}Q7$isl?;%k!jbbidp{F3G@WhF!KuWReLa@-w`+?!~ z6>S2mUn?v;qS8s?hf=hb@9r5xrZ#dF3!J2{BrJ(5>X@QJ0evj41vKV=_B%fNH!YJN z%jN|sUet{#U1{WmG3Ik1VARolPS6X${5YPPpo&lSM?OsM=f`A3$;zw8k1^dKx#sl#^rm#XU|K%;xf^|lU z`2k@)F=J71FH#U$(hDi1iV-|LsNt=t3Y!X&E?^Sc*3&i|C|`mz<>jmRK}B^m9~H(c zEGaI>r{0I5n_xik%(}-Ek1^Jah~Av{c!Y(84MW?!Du+lkOZNpqjnvN-8Y1FoqG-+> z3`l<7&I6LuV*ZtG6vSoO<%p)94Y7=wqzF-Qo4HwYxD*6r-V*TGvh!pJ+s#Za4hSUg z89bJt0O^+%jqMl?;l)+82C4uLXM_?K7}X|ydk<&XF+iM@w0lYnrjG*LxM+gYd}suk z*!erb>tNsHhJ|ZKc7Tx|Yq@Keyr~bbCK+6}&f!Pg40IVz%ODYzu$z*vF9V<4W@Fq~ zdrlxjA$K5aiVpwmmqS8TxupAGS?(+dG!#BTk3j6mdB zzVcjaV+y@ogt@0mA)zpo2}%dkvbi`${jkNmzZ$Qo(47SfmlzzE&^Dtv-cN+JLGj>b zlk&PsPVh+;Yuv1nV6r*>beId9-2WWoBDJEh6~StC&JHN_0UAm|-y;Rwx&gC)PG-ldXf$`Uzs#Ud!+ zO!6^=k(0l(;HK!cP`# zTEbxkn@H^HWS6EfT0H3w=VgHCJrS`bs{uSRL3>hA+o`*l;+@iYhVpYIM|{5k(uVBi9_&zOy=k+Jy4cVI0`m_zyRwMFm~jj z8MpF)f2O zpz=9&57kkn%#K8?A!OZJOMERJ_obzLS9>u}Te+b{6C;Jr`ihQ*SX4^|SyK7(%2`>o z;Uo5_gn^0+k&^t0^e#BaIbdO;vpmCtz#}bA^4r5X?)G97=l*7jzy$O#BaTN$=g`uK z%G3dG>;)W5$c#QuDEh1nb2&nxhYMV+Q^BI!kUR-c@dUCZQKU1l>T=hHB}vWAMCLus zncOtkQ}#V3V;sx`fqN{qh@>A+eJ*I@jdvBl22w1N^oi&^0TKRwPg63-9Es;!pUYND z_56%DK)&A|F#?TlTwbAa-q?$~1PS2m46g8unGu8=2juo&5iKc<9N+VZIThS3TsT2d zELU>R^uNCR^NZwkV4r-)`hgJFI4%d|xj5d%9#7Q<2)%U_{}JvU$!xznlBR~3@JYSP zKn0G(mUeO>xGfRgirTO1%*cj(kM?cYB}GD2H8%DWZfqtApJ4@J9KBi&vl}m;RXil7 zZdiA*B#*kAxAs=AIM&ZFj9&TZue4Mn9*r7Dz+?)oHDRWc`Bs9aM-H6zN)b|@1jepa?ENvAEcOF+x&!DV6c>|HiYesFybKC|5{RgXvjng+CJ?I&43sL* zm(q^i@VTKwm$mQP6Py#Gi85@P z7Fw&CZsl=|B~thmLIw2gx?UVq2~P9$mu!9!23P1|zT$kYJse69zHr$90D*WSJCszr zfv`CNgeSmIjhVUe?RSbv>X_TGW1zNgqWh;bpMcRL<$yde)kX~vl<`I*sI0<%n(M^e zLKpMyI?xrn<@kU1fo>`o7^w{mFY{}=?9l42H7gaKApD6 zP8s~Rf*N=yjjz1}Df(w?qqQ~};-M@rE(BBZliEn0XA#pjHwuA%dF)FzSV;6jEG_O9 zzA12EYEV5tH5-Il@sXquq6wGAx1v9b#vBVVXc!otXp{!I5J)!biyJ!rc{CCl(Y^Ac zq2XRgDS`@#xxDyQu9yA6*KbXd4mZq+1|$mjUepF<;cG}$21oM*yj37;#CTVm2B3@V zM)D9>Eis$^`@M-C5#vJ zZEiYA>lJY>YP7zPMH#0JV~Aobgz+OsFj;g}F{QqZOsM$H7|xifR5Z z><-p7EDK?evQmlJ>K&906V1}^z<|F!KbW?j%f7ea4xZd z4Gn>*R8gx|+CXInE^$mN;--u502dLqC-}=Rl|=B%zR>uz7j)vC4C0eUrD76+k-n=z zap#D?08$ut%iW7i_9Aj{{&k^b8rXiWe|4YQFFhv2Sb$tl_JbrrVL?`oQ?v-Pc~`r|h=x z;Of-qN|HA^c%8gBl_ujL3yVrCrx;8)><-82aGG7fAYFxqGU3l27LQqqPp9-$siD zt|-hFrepNs%=;qqS^)PpvjJ{=VjFZ{H_$=U2<9`Lk~M7!!8_B#%{pH5GJ8*`%AND$ z8l_i-p~xX+p~i7~lAdldKxD<1`HN6g4v%zgDt%kkyebX;B=i!@+I?MgN{V}Vwy^EY zLg=u39uUL6Q0kOisaB& zHN$>72&1tWxyo|o*Ld7L&DUfR!pw_<)1EKzmyIX@hbmGHU_UvSq3hTrR!?$Ar&2}_ zgg8h^3JS2s@x^H=(fTYNXm&a(rGaCxCO6zX?*{|#hD&_jt2|&Wq;Emav)m>+IyAl$ zArTy~hnFpL^h(U#;{LfhfZ)B~_1B?NkH_*OOeMEmM?xW!r`Nx>FjV2%S?+osp2Qv@ zJQy)F;k*M4EFdHybJ;tG2T8`_o&f(mN^P>+gT~Y|G=W)hTGpU10iAWGI5ZeWFc8MF z!N&`aY%L{W&>T$cp;M5B)5eFd`vj%;X~N9q5VvlZm`oRhTDXiEB?mF$>ZWcl$lf53=jh!gar= z)08%pY-~{&0kivZ?A{7*W5~ibs6?kN_%=}sPL!#xDtI1n^9iHED`|z_2HI#k-`2{+ zL*6FQfM^!9et?%PB)pU=gm*kM6|qJSekCb3EG~$y(kb`=xIb9UkQR5_c)n3W5s0aS za*-3^0Snu0*GELhuFei^3M#E3pbFh~G}7`NrxG@Pvu!tD%-ZbtZ?$l zZaKC&`UX#6!>fB#4MkV`etwJTci}2sPDJ>09DYK0 z0_HjIic|NQet5UzB_uZ*KEDkcUB>mVW!Fz?qTMF6NJI+BptlaUOm+bE4b{t1rLl{HN&UnSf^EVBd48a-MGPPIpc(oTi1$>F|m(J zOjDHh`5%5cAj3^r2T?Md_v$OP-_r#+Mj5E0GdGIrgt|;#>uNlJ=-E8<*keDzy{g~< zKN~PzAjMbU@c(#obF;wep)gzU-2R375J&Fls%0UQ>}hPZ0H8RMopTCzl=7@Gv*H|} zTg-nb+CKc8X2V5|AYI5lX!c?Ys{^M3YG51<)40l(=z4@XZkAX@Ta)A5Zwn-RgA+-j z2V5EX-GQ9%wvK1~pY}JXvOM!~iz`gw?VIA}vLi%j)^r20a2={Y>Q!)LAihK9Rt5sVr=WF^))fH1S+xpyHL-8R);7 z)qqP=JmmPVcNOK6kmRDdgmW?6Lt>(js0eLn$=D+S%}0z_m6c!Gl`EQv6ov&xNzXjs zF^J(Ga$Psl;m8%BQ`BSk6?X{N!e*(Q&tQf-{*A==h3J8N!XP>EKF|&u#`++mVZChL zIN@&{?!IHboG#TE=B}b&1iZYnf@+A!(4&lOxcREXu7`^Aa&0+$9o1JZnga-pgi+gX)QG?GJIFrw~5z!u(ww8gk;Cj%BoOZGQtrp0FK;veyzO zvPU#VEr%+<+nmub35P?p&amamr0lXaIgIp67JPFo8XzPnC-5w^!Ru7c%AyogQAxA2 zhGO+o*q-hfC>;>vo9B?F&ZcQ4goT;yJCw*`{CcsYO#GE{P*nouf0ii#My&f*!jMEx z%?6uZXZpTB+^y%rxrm>+AXpjdQwQ7q!|yZnH%kk+j@pAxi*ft_l4 zS^QVJtSL!Y^D$&Su2tuME&U1ICa-2>P#ZKi(^scF(kUX~^%q$D;k2eMhTd>*Co9ZU z9|YY*lVr4B1WxSB$WXW?W)INt0V^Cp01C!S>qMl+Ii9n^Vv@7of=a+c1r91rU*TO| zoa}cC3h=P7*WjGkQH{nIy3-s?-nU51VS7S%e%prpj&93ln0{4bo3E1gX4%4VHrnqA z-Hw=>%+ixoB0-k}NeCCWE#(XZaL=zetEGKb8R?+zXY)H4Sr2}w2yWN1NRX}M_^)Gp zuRxb(uk1Qy-ZZ$^GiOcdtuH6Ee6aQoBq{Ub91$!dk;1j|1$wAZ#<^h*y7$ST0A9#- z8(yHChC``m#saN`kVg!{nv@Y=VCl};mIP;FK-(!?k07SfrR60zHJZ9o_lk059aKlKq5M6yEyHP|=5f-)#3d)l-o zMdQRrf%#w47B;cRKvNM*#27w-ZF!}O=JFF^RRyh&wigbSN~~uF@@+~+nNnHlOk1Qm zFou^c8+yljmJ(9=V1WXd*YHHTcN3k$kI;4kOLhFcTH8u|W&cGavh-laOWVZ?aCz~< z5P`v;l{$@F5h+s%dTrT55bucA+GSUAs`p?7_Kt2dGKk7=U)cz(-tU!KvTLg^NY38` z)2J9d*jNI&r*`v%gDE+An<`Vt%~(gkz=zHP($T?>mmH!yrJ(E1(U*m&3_?8(sm=iRh)MmGeY!y$iLUnIegF z+!H_$8>%$el_3f%9fMS4(l77FZSpQ0CL+{sF@}&6l2k8X=FVk7^$c-X zu#T2K&hb&0EzP*G;Fu)hUKVtaJHx}DN+&Iw9!bXLAq6!wXGs<8L#u8)`{oWYo8&1F zlnOp#IUelqz5DL=BQ6m}$7JZ~+O1aNIk$q+8B012B-)9;Z;#0tM_eHO9?)Kh^a=oY z#=|o8L7hs?*M0?Hous1K_*%Q8!x@CB;Bl`d;zCI7P|oF~0;qLCc-VQWw6~eXIi~L2wi{lk`Rj~3xqg-)-cjc^D-KUX?@l}@skZVahV)obcqMy%tfb(4tp{P*U7=CH}^T7QoviL>W<*g;4n zceG;Vo03GEJifc}z}otieCMnQ;N+YzvcKdA5iN7{fLLG)=1 zb*Wgtgn=)#!GTim+p4J#;01xNYCY}1r-r$Kf%Puvzq(*k36A`BZiPcX_2yEN3x?oS zdczw$BIe_$f+t5NX9qt6RAgp5)zomdnt_c2%A=3GLe*~n)$A*?w1*n)m0FLBF3`a; zgMfYcq(bR2gV`(~jYclBlZ)p&O$cyg?+;_j4eXpZnB_n`{oC>{;vYG9l6c#<>Usqq zqx&)B5gg@!e6L&rb#INvlQmCLn_3Bll>d7i@4p_$!J%A)lon7fG(c&^EW1I|KJ|1A z2L=dG7YY$|?df&`cC$mk15o*!x%fyx=+WkZ?1$`t@YTjpo6n+HQw&I1DXPGijr>%l zM`9OwcgVZegO>=m2eEJ+5*4{;%*7bL&?3^FDu9Eo zzGM^i$XPdmzADLR7+^jOguji}3m_4yy1D9_*7al+rI;UQn1>&>wwqd5U<%A4f>cJz zK;i5H@>j;hoddPv^q_QhZyhKB6!vnVcQ&U zk#2AwQHaxuA^shkvWV#GGUgHOc|r_htbhyrWq9(ryFcazV|XDQCH@pXiHWRBLMTvh zd1lySUYf1lPm-=Qu_Sh>ln2J5&3wXsKYtHkHX7Qg4T($Es0;u;Cmy96&`zIVle{Fv z>i+zSvm#DUEvSKidpKkaU$X$yGTFXy$qzI}OG(^vK?|tFWXjMWqzPvj0}`3IycK=p ztAWIf=C1`ZK%|hmKtfO6C(&qMH$AVDT+SL*w^y3E*U>Eo4`ZoS^Kkf2MAv=5CyLYU z2s(RYpL_ZRF<^}o8Du(5<6lOYRL7wj+^GU|!NamNEh|%>c+-S$X<1$iy&{%LP#Yzh zKg_GoLmv&B-R15v=<(_sEr9pa5#a8QYleokl!s^=%6K8QGm zi34rl-=dTSg zrK9rjWG}Lw(sPn`i+k-!+7I@)mXaU`c1D_Hpezm8?LIAcN6E6GI;>B_UH~QLq{(DT zrzN6A%X$u*&R8Rbu_NgTGXnG4EIXd8mOPg=oC|nBQdK9!GOc3Ex#y~p%4%%tnuCMt zLW+O+m~Ub_7traX;j>2jV zWNGg)ZkWAa=Ro|}rF92$yohKx>9NW7UL%eY^Qh4wlgky^QXKsr7Qr|r?ml)OH2O0C zYo_V>=rc+sB+Q&a^=g?zTbM_#Pc|21l?@@Hf&(C#J%P!H20LdmG#I|nzv{43*l+Bi zuP1Ujp^zppv5LFK zw+K}GzKO{fq{Lk03yCFmO2wi;`jX|F+LIYiWK4Hgb1winFf&=s4up}wQw&^|e)W(q*w&blkX9KH zz$^J#)F{VWz4^FtTit$nF{SypB=z|U|9-yK)~Q@Cpk@pPxRthWHz_jna7<=h7Nf}u z)O=&m&p&>h-wPRGYi!sExOvATgIZM-R(B_ZnssdD#9RDfhe{QFi)}~ATk@n^26h(yCXzy6*SyXF+GL_Z|>ZeO~ z(CvfCoH~WvUEN}y`1s3N zF-7%TsCS@9zykaKGR|=;G$8MJld#l~nnl37+0Wb!%(->aUz*6nxx`VwoW<+XCi|_C^1QY$!D#67p!E9f(cN{K zF5)eA{d7RE>ZKbk{n|~NamXa$E3JL-cKOg&xN-ep4PT%09vdlEf8)wL#KO#yO3q2~Acns5W4acaJjE*ICecCUIRw~}JWSn*o@y-& zl=fB@*#TF*wMfxVjvSmCY{*cfenEkc6lPmIg^z`pn@=3giirS5r>+c|jk1)+JHPgm z57speU2#@C<6Q5Nj^e|tI4Pp8pCoS;pmtk*@-gGo*%{~V&(_gBJnVXC0orFn2BdBR z%z<_hTxgs=91tfT7eo`ebfgR=JF6g~=3!J(ob0!LGS?-Dtjc?xSDZosy&cwr$F*9{=j*(>R*@;Ek3B&XE`X0_DLm8}yq@4h`2 zO4Z6@vRr-o^lMoWg9r>YOg%;bYHRkURD=X0n_XB%K72oJX@4ZT1oNpQL9ecSRPd;b zMT4kF`mYAY$1iUmT|?tsF3r=UL&#T{635y6eCw7?&&>YZ8FyxkFKN;+79dX7+{~_D z_ZMDcF~P5tSr!|oZ;`%~5{^_(et2N?u%lJp+Lk$A@dk<>_`GnrFQgC?;chVzsg%ys zru^orR9<07S97Ve(>kZTf5%5qr@_{KnyLUhXk$Dl5RK3zVa-H z3V^u^z?et0pfvIJ8*wbdG>q2tirl(W7z4NRrzdaQJ-t|3-vQ}zOq3Wrr{?Q_B_1dx z`(z8f>%iNa9Jb+Hbk-7;rmghTpuI@JJzhc&1fX%F-|8Anp;RV8#SKmoC0&*JkH!jK zBFvOOW*!V#i+D69vr)xhur14Ozo&r>oM0clk%5HOcbESSBn@-;aC78M^l=b-BMxMT z(k=uQk?9z;P4tzUMbLmi7(-9{>+18a{@~r$?FG`9uA+8kDQJgCA?z zi40BTJmGu}M@+yuDoyT6j>vc5N5!ykjZLng+a1Kh@RkC_;M2pY)-i%ay{?}w5COK$ zL!ac^VNwdNNp%yI$L&Bcw)F7iqWDHM7Cjsq5{*c1m$&pLA3JfFOpeHR}K?3AMaYNLl)fjJFy>n>TOa)881iw?DsS$DP3!5f=qFs89xTV z8=kxOi+(r|^Uz4h2nji`hEfr#)%FVVauS<&dG1wYNYaoAGPDEF8$1cV;s-vl!gZ+0Iw;fPA*VoSKa$Vg0eHUrTFin>JWm#2D$+{x68fXOF(Pd57cMjvNT44WG~ZbWqvbklCV3 znd)Jv!SSl-NMdaMP54su6{2U0E1lExn1;y8czW281B%qP7+!LJ@}A0yvaUGhG9pek z?YHrviG|7o*F^gptmD7?Mh=h4c@F7AB0rH)0WJy~-JZ}BO_&@F!`v0Jo8TXW@*;Cc z_CG{@^&Fi=9+CX4?%kOK6)B!vB72TJfFhL!Zjh+kFG*1{kKWz=1OzO2xwMKj$DlG; znN?OEY;pp~Lel?bLB!~k`s0!WV0D*y`T)wG%_pAmQnYmQ{Ov$1QW0gl#OmnLYrf#& zqwGCiHdTBcCO(g9R`DgxaXdhd@hbdeJT9CNW3@UnL7;yw64XN7e1K3xBrvGqFoIB2 z7zu&;Fv3=f5rdEP8Pn-_;(JFow>WndH2&L@4|p1en$|UT5(HuL=!qiA(FRO}wuqyU z9I}i&xw!y5{;n(qT94|LgzBKm{OK%S3qz0)_Y_GMqhYWgVXF_}uI09EDv{xtkKOFo{N-P6B#VjHzGpxX0=drFk;(JyM=4e3vwAbX|QQi5%7cpkbLL#MOr4%OUDOlht^4!?VKS*pgCKHX2 zYCne*OTAm;8Bjd#ZBagb9{nfo*jXpf>a0W@fBH+ueQGu;XVr>gM37LRJ;f~66>E6C zgfx3devktR`3e4Uc>DxNDI}+QvhN)o4DHXuLuqbV=QxwD8`$A4c^HIzp>x)_=*AJN zX#Cj!ff3z8l0ainBeE51Qu-M4-%JLqEXa=uzj4gj=aI!t_kr_@k-PM?^m1g)!~2$P z7n_WVoPJyM5|b=NybGBcv~kJ247Qj^62KY9imU4(yo1kw9KU>(EHJu2gIWgrk~gy*-AYV?{4M0OoISDuq?8Y&3nV`HcpDE$Ebg``qv6 zF8%&-fPUmaWW7h}bBFD~AqAU-T%39!n!pS~g~Y?QwBd=);{9vhBrTyK#D<?P0JFF%-BW6nHgxwYC(5+2o*5q&$>-h7xwQ*l%9z(G4+@zly zrTZ&-k$%5!!q-tR#NS?U7!$;pC(Qb@Xy1hUTr=B8zM9-}4ndMIs8-h=?UrRKkrTDU zF;G4l%F!N1u-4~bGjMq~uj?7CB!{j3jAujBndM-%AZ4CgTa91gA#5H2GkMvhF3L$b ziR2G#`^k|5LkK~B4yTKzQ{DLci=6bjufQ#2tHgNLONSvhpVjv_I4EG0N>*PVE~gqxiuY!%YM_oZ&@Y$Q$kOSRwctQMI&qd(tgel<9ezpSx8#s zu)1yGlW0Gw%{tDj6j#(#9uXG(yx}wyg>a~@!F-wG!kQJ5Gp7s^MLZZW*5pND-EWw$ zSxlcuOU}~jOc=(WcG!DOjP#gOc2Xn|d zAQE86Ti5K{m4wh|7RL2GBmF5HIg%?5Q~ICl)~}-&$=z)eXhz|UQ~t&AD;hSf+NVJA z_KYnOnY0RuhN9}H#N|Sdo6u2rf@9gvC;**ce31X8ZATT%LI>pm*&?8A2$-uw_ELAs zj#sw6k}e}!kfaq;|DfC_T$TPOsBcJN3v5M z3DQV}B{JXaX04C^zCQZ6%>_h%KbwpY8FT(-+(NRu=l$%0Mqb(nxvbU^XhQ)5Bj4Sj zVXSsIuLrWQq-E!}!n|+xCphhS>l*?)@0yp7tPp3+ekXczoljlY?{jA^xRe|_pqK33 zBvGvTppAl^n{ZER7(h-Q1c1(gMZ1ewIFK1Ioka@-5FjwX zQtvpaUg@4rl1gm*)`neJ#hgaMS`vDvvmyuj`%FlS0goL_l(;UMaKqoo6f@wh_Qa<5 z-W5P%+PYWd`%9OQLLpH&{HO0_LPwO?`prKa*?)C1yu>g6A=T`APT)T5KK`+Vfn5e9 zi;rY2JVP?l@;mal7ZNp|A8Uvs?#)`gF4Vv$rc;2vy?m9gy><)Lnbx)w-?`@T@gz6g zFklI_26YUEEIiT#d6z`5tGkZS$MIIOLMqyh*-I$E^(qhqm|6Xz0Z>|dsDEU(?f3Ng zKS9LQ`sSN&sy7%|6rsuTaEsaZ$z@fY#I|h96t!!5X_dfynxS<$pR(K-aKcSV4Rz~zY8L^jK!5m9&v6%Wwv zuQb-z*}l1L@q6yyU+Q%Boi^Ld2e;-g3ZQt#QylcgtR5=K#6_#l&q8^|<34VUf{h+6=wtzBx6kY?KG&`BZm~T+>MCIi>+R{20nY zEU(|{QNtX?H(*@_Zvx^P+;ExbtOk03mt9s4_z9o5(hZ?)0hG>Tsm9yiP!;P?Qc8;r zyTE??oH)Jv!{f&?hvXRc(GCDbv?fuRHI87O5|f4{LYu?8lo(InCq|SV$dFS77FTgz zBbD7*Js73hmuY3;kq7~W6omAP139Ka{ZSy#7K^r1;Yu#Sa^)mAQJNq$G#plmdo=g~ z>xUmx!q<2PXFR2;jX>Z#0KFjGFf4Pf*{aG`;05y4R)@9spzsmT?ZsK$bKp$e2}leP z%>15WgS25J%xKC{@)hW8>|OM)`j6Xcm~R%ilalfbB>wZhc-|&ww66`pca63)79doV zmh`0)QOtU@_%uW&lbMPjc1T6al>8) zA~LYW0RzS_|It27Jq421f`KY5_RETmY}wh;ya}byMbLT#8tk<@Xt8uopfs%K^UZCW<1$v$YCdk2El; zpUo=RiV7VH@3ojoFFS7Yi4Wm!z`F*KwOOVYf?`kWVFnhWiQ319SG;}YE^vD(BjhlP zpI&s)QJ66>)*CIqGRXrSj{xLJp(8+96%N)0GB13YYw1G z%#+uRL4Jv?(Bs8c0Hr}iz?@?9@{W6x^+S)Rs^ak>dquF1*#sE8K4&cMeh1+>FQ^Pj zf~BZbdcjKq&9iVnGN;795`wBELlWxPwF;bHVL0FI%9Vk*t9dYkf~~Dtz~yASOx?P# z{Tf0J1ATwxE@i?Wz=}-~6eDk62?-Kj7&l=J8;0az;~EzFu1{(;nY37(46#_CQO%aZ zVV!;hYXNtJr|TVjO(C*f5tvHkb=2Kl4yb-xn|GOo$ei7rzmNgR?KRm@pGbbQHJfc# z3+wQVWxxCd-DM;3G2}dgWJldX!RP@ap&Fjv&O3p}?KnV_s$=m|`Q=DAR++Xw|?>2?0^{Oum~n zMtA6xgW*bWFi1NG`}h?FQEi>b^ zp$_#;_OOQCL66F|iktVZ8#Z(}ZTm=#EMl~S7AQA@@NkUDKNDv@+g0<C=QARFf%tUQ7 zuYR8FL~I=}{$~I;=pU~c3DTO6F0Ci1zi`!?gbEQOuLd0iImsISy#n*gLBLiR*fMs7 zP|URfvkBjTxE+K zb%O>y%Cj|YT!*et*NXt-vP0@|$Md$Qf+oy_mkR_Zre7PC=z*0&-cHVh7U$Pp7QlO1x&Z@$g{_AzOMa z>`0b6WNfR3)bcwmRQNIK&!RSyuSY^~nHqe$QqHR`NdCpV38bu)5UZnjDy;rXp0LSd zw(?AiZh(NR&Kt4)h|A&`l_>R4qGzUQc9`T{7t*<~N4YGAh(TcpDhN60drpBW};)DZ0; zT>67{&eYG8kzPefA7#udjHIQJ&H-b`g@}7f*uK=%Q96Zx^z|UElU(d3W1z=Y?vt4CA{>PqJ%u@e8TD?r z4rBy@6qM=SL3^N(XJPUV#QjL!8NOA{d7-jJ_Z-B(q{V;wz#`rb4F?T<6OT7_j>2Y4 zCv#tIL2}ke`cOSEVQVn9C;QQ&eT2NDj^g3llPhR?X*&h7UKPgz3?1&*2xFB%YAfBa|yYJw= zIcxz|m|hHJd|$7aMJ=-7ciI?rm@V9*H^1=kU!DR8#{BgjLTnl@ps<;Ysa-!+_-m;S zZ41+hv(;_u$@Ei`*?B5>G2lSQNp;C*QYP8~WMO&ugN*Qy2iPBX)(BCy2lZPS1Ie4_K*Df^1n5|T{!>Ugnw zflirEY^j}QXKR(ETg4p-M5uJXR=E(S;e8G?xxqnyMSXuN?pSMQb2;D zdmZP?Ia0S^hV6dBy#QE$XVLUmBJkD#F62Kn;hLVqd4+6YFRUFq zY}6pmpN?h(Wn)oMy22SJr}$HQV;M@BW#1lr|1YUF=-gh7WV@dGd3 zu&a`G7lVfSB9f>-yZL=mYqd3En=&=?!)<~KU8=znxi|8~j4oPf6`=eME(pLv7Xu;& zag^oxt69{=d@@Fs1h|X!i=MTy>7ex2V)?OE)i&qIhTx88HzI|ZWH1zdUP@{dRtg7y zkrX84H$Rj^-9V_vJ(*Oi@Wdj~HK>JH>ZC$~kxGfw^>i$ynGm=Tk21=u;9E1H5YZ)v zdW_5H*|s@(&7=T)S_&-ntm5p8VLmyaAi7>fTdFhq7k}3;1S6VC9p-S-MpA*&d3oVY zoc3O!YRU|Rd3fX@Y}2T_vj31zXm3}7)FoZwO8SY>eCX8m%_l-A)RHD@~pya zEsB7`sab)egikWijjug$Q97w%&lF_!+j)mULRrhd*s#lX%=S~yThXv%)eVQZ^Zn2u z^27_07-U^W$?>8+N%C_37fJN?|B*|dnq42Dvusf;Nn0fLFQk^>`nCQwSY8}_E?<@8 zh1jd{WBwuWYZ}KyknGa(Oiz}xMxTA$r!q5*;R_}I?VL!EGFdrl-x>k06YjH4**QX} zG{h+1L9E1q!6COEapIFjFRO?d6}fZba_{W8o*K};C+)rhcMpT~hG$}CX<)rFfPT-v2uP~V{+I(rkUOnF$vNSy=2by8mz^0#Zn^atZ zMDoVHeSN5kK2QOKx*(<7p@)h&^GZuxL&aL^ER4rN1WnyCHZaR9_UzbrFhxHSJwCa- zMcH0c%3*h?s3}^D4g-m2WvmK?UnojgDuob<27skvTCKSIuxX%{?2$n?K5j?62Hl?7 z6|q!ih%o|n6YKeY9!Vb zlB<$yHa8W)^le`DAE3{@o$}1^eY7cpxey>)@NG*9-9q5h^(u>3#G~~0IXW>*bSO^* zkXWpAX5=zd&-7(g{bxM&Ix>c>?#vxW{NZElCG7fl6zlNA9CI=~Pl!bq941LRkFP{0 zJ{}WL1l5R^Po)pgjHT;(;-D12+wr4Mis$k1^C*g=`>PVD%1&N#YUuWGwB*As zt(uXc&J!y^WP*3vVBGkvW#g}72;Wn!%%)Pr>C>Is-@bcnr26GQ`i~a@?}O>xeHuiF z$O87`F6k$H^~dl78SEKS$HER_e9zd<)xuK_Di`LMFez@UFy73prWl&(8OW>(>*651 zf8u!PJ~s8pB_pJSrSeFSEyb2*vN_c6=w}bem0rXh=L^kkiWrt73NxIHkAb08>)jx6 zh5y6=9o-m#N2G5g7F8H>etIQy%Uas;11BS2Hl^(Y#*h+#dE*pzy-fQg69&yga6oJ! z>Tn7i3AjH!c}YtJQ@S?8e1kZ2BS-1D2wx8hV3K7jBRO)^walvk1EvU)TuCQ9IM3o6Y$hT-<=^Y?IK!NmMi0U%(%Wk! zyUWI<8RXCrSnDdD_Ris#c_1zAY;iH+n@OPulMMNgzz*nQcaMn>NVHgYI$)*_1gfSE zv^iAjdX7h`f)g+rbhyvytgT}OXn5AAJ0WW`5$JH+IwDne1}Lp*)PR;yc~%Q#&l^Wk zW!2RA(p7J2Jk5+9f--Mu{QaDh*+*DQTQ%1uWA8S5>D0=)KC)zEa`vX_4?&xx4gnrw zgTXU^XzfrKhN;ICvd=o8M~n6DG1Npy4lb-n*q6`}wTr~|trhQGP_r_T?RCd3vWZP& zuOq#lXqV*U*|3Y{W-o&?>{e$jOn~u+)mzniP7F@PH8y#}!8@RyOF6u(vYk#$#XtSh z&I;9Dr)ZJ5ZkRP-`YaN0#p*$+_`wCM|MaIn(ULpzVlWY>PrQIC`Df57yfaXa_cq(Q*St~mWU54Oyb4JW z)Q>)MIt@^Z7Pbi|X#T^ZPXAR}2ov9tmTuW+_pAp^Ip>>wr|t^_MRqiKqIC%Bq|XQ& zsDFR%69zqr^%On0Qd(6I<*_7R|M9zIh%gOxRFy3?EWPj=X0O+`HS3hKf)0g0&Lb zCMtO9zhi-U{a&+4kw&d;q1teZjBnzxvwtK}6fY{+x3a0}D^qg_FL5iy>JdCt zKzerh8R*F1<&w|%g`3J~0-uFX^yBUYPI3M)&gvxJAZo1%g>O1(B;$1$!t>N)I0+ zTFjqn0Bf2til-6q$++hcOn}wMDwk@&VFF2klbV6#Pja@~7Hup7x@A6L1pT=ISwFFr zjLg#Dy_3mnY#tFf4reaO(}CiGpvivJTwh~GviBMVb8wkYx9vtYM#zwY93VZ$P=d9alfGXm0!An3aDI zmKKk~j#)@c(V2q#u?dC-l}7JBWFBH&p+`81Q%Fk#6@0eP0c7}D4hEt9Muu0#tTXK& z34)$0JbSK-$Bt{2Otc0BH25>grb%2FBK61y9*v_{ zjvS~aG6aI2za&}Gvc`|58FC4FlG?4XtjmYggD8nyO#byaN14FIfbwp2l62j`BQ`KY%eJ%z2_3&WncwQAJ%V&sl^x*THWn>oKLE3z* zqS>r=oS+#^_itk;>MQ0TmYL^dkco_6bix{h0a+N>R9999&W0Zy$o1r7BdE#kNQVWKkk_&#w}=y32rhswCG_qNeQEW4h9q&K&q8dr~Wsi<*iOu)@| z$*XLNZh%R81XrLxB_jdA$BvLOmG7c5!e!!gR`TDtEO!74ZHak+CE zV*`nf2LlnGz{4dwg>1tH=Bkk$1-}9RSJ8<|)y92+hs$W0_D& zGu);Wl7uU;WZMkV7)}I>Ga)XS!iep&rUUZBI|0+K0_W3MWBcVp(88JJxF1S?T04?_ zhu@HcucVoP7*LvPOGa|p*3n(}F|bj%))nwm0UQ+Y!P5GUKmE(e)3mAvVvw?<(3zz- z$~ym&s2avkOn9h!3@es?a{)vY=9}2%#+cY7SO3+a zt~q72r_H6@4>Qw=ry${O!@YXZMXPU0&@_&j?c3rRsaI=%!xmbYW%=vxPurm83gXyN z6$vs0dL=zdp7GY=8zlB}lhH0Ga8oXGw7+!x`_l?rA{|+up9BI|bY2s&Js_`WYMS(o zWGTVbS4D#WGPS$ca4vZ+vf$_mvrw~863#dmw36g8tMGjN+1!m9tv+YgS@>jcJ&4mv zu)`fxu+c`qtiKzh?s4ue19U~Fqv(S?!ihxK+FM*jX>#$v0&Sa;4Q*nE7?S=0bb6RF z1<0X~uc=755_P>AIAYSTw(4 za=ma&WtGZLj!BzllbLO?U2Q2*JUH3pyT{s{38B(vH7ZKO`;6!*`*!yvCf3PG1j{v$ zhNN(}OcxFnz(yPR_*+n4RsPe$w#LZhZ)Ug4-=cpqfJf23oJP7SQZzJC@b%I`;?Z*# zoILFs6Yd~fu{nG2e|$b`gk5EHk*^AVPm0UpN)fB^kyJ=W-e-E)^)i}~R8ix6h7y&? zXT|%M%VFHEy>!at!He4WC5hl3sX2sNnTTY-)ebfZYDW-#zVNBpvY$=5Y#T=+BZVA7 zUKtv8oUi5LRnc{^CvAHdkAzm*i{?Wrn|N_>%b!;cy@l4C02&#E=WAc>Shyn#LLAf2 z9TxgWe*T;~6B+(b)6lM0sYmr|yQJk3tO0l*dj@SjkwRVpp9IeDQPomLUOS6^EOAc- zauuVv7Odu6CQ(4y^Np}@Z`y|c@G_y2*bl$us2jpnM${T^e zPKsuw)Hh1I0zUX5;ff@E=iN7eU`oH`MM8fCYUZpSH#$az_1-hcUaskCXMID%|81h| zt^&v<*K%4wgO2`EYvp0crj9e`*-4#UHA6AYd8T#Ti0w-(pg6*;DCn>Ai7nq1ZQP<5 zisl?8vF&;mZ|jSUJ0rQi9gj*&Lb`FKKqvgq;ZqtTM(WJM;}O_H2D$;BPzuXHonGGi zDNfnpz~FzgaOLlH;8`H~bo2OjlaU`ZQ~SA$Fa_oV)Dy1s^n;1d<7Y9F!H3(VLeXWF zyi5vEb7)JcP#CLr=ktcnt<1*1el z>r*SpA^WA2$Q9@7Knig<+)6y;H^Kd!6OfIppYWe2frY3I(-t(I{TyNqh@@}{%y{gY zg{FFwHY(?Tx{PF5_uX=Wk^UQ&IzWS-qyRGZBiJlN3%8ejN2Xbf|I(j@Um9eT)a~z5 zl>Hrz;ut7PdZ{6^v+H3W5PYwG_qBgI|MBrLKVnEd44ev*-07lh2<-t*U_j2lhuuh5 zmh>P7Ax;PJgClqxtBRC1wj5%xxgsBsbT5`Pr#8 zC!R>Fq{@LA5w&@~b4bG5D4rz1F!$sJ&hL!^VMMNOB5|U@3fVb2LG4YZ*0ofZf;@ZE0RD_d4uwwrm zOH5<4ndy{te$R$IJ1*MhH*rmNcot?3ajO!#m{P4PQDtUXf9lLs2Fb0_EmDK%p1km2 z7=t*4k>jzk$S+Gym6de6*pKweqOV;<#Uu@H{u z0&PPnNcIf!UL4rW=!CdL!Eh=GJnU}!+?hKIAKz@c7a705A*6?GjqDei1)}&IdEH~; z=b{y)w$?4c?S@V-{9uzj0N0b!VhOWyG_s*rHx~sWNE}O8nT>}(nk{)4(58wz5fPV+ zxw-W((eMNSrq8q19CdnL-0-pHvELWPk4}1A1<)+?TjsvgkyGMZ`B_~C>;eqp`Vygy zVemHQ=F+rbr_ShVgU#^N}`3o zcTOym;ZH^T%{JcNIVnS4K&Oa~TtIT{!qnugz)#wS-pKkLo1VemYI~}Avq6!p*A;8n z>UA`MFz)JsUhFGBepkE0rO^ONbMXTUlBf)=MJiaFZI=Fig?pvhr@;s8EgsxMnB1Ru z6MxFfj9tOo`0po<2n(Ia;g5k2+*hbUy#d>qbBSYW#rdQ-5{5FjHo@h9a_g*M7occ^ z%{RWMMLf}RI;X0~6@|BIeTnCUiGO|NABQr>k~9A;O7W)Wpg%D6?`+Frfvljv@A{ha z=xdx@2qqcyB--kj2*Z9kL#q>@{8({?c~95tYVJ9(88k|caAWOOpeGMzf8O92gh#lA zz2d0dE_+7^R;w9C=#`r9UZ3Rr9H(w=NW90mwk-V*bEH-SoRCe|E&Un?_?h5Twp-{N z?E+*bu@-u!y;@)2x#hXrh$7EI>7Oaej-SkYrU$*%^}zZ`Gzs}z&s(0W&#g53hz|zC zB3l3fkoXByVvE8P85ZYao;!#g#Gq$L^Hp>96u6UL86uPOK<;6YUee6!!d)sdiUp9T zfi0XN6`o z;pP9YtFw>Ox-RqmJp(9eN~6`7t6-y0ylkD5iYx8}Y7h(fz|v+q*q!Y9t3%6~VC z;!l1app$1^;jR9VpBc=P6qqc95Tr?N8|OinVknF}`@iInbAy2|_UP@$1?M0*0D)(&2;_ANeeYGWB5=V?P}BF=It)}pw?_+5D^&9 zTsm{&lLmkzIfmRdmig+h`fCELTZvg)qFQ1(0jJygzMmJF*QV>X;`2&e{ri`P1K3l3 zdTw;3apa>atZeF71#Gru%1h1gQZ3aTgZ~5O`-FHlxIIhJiRR@zfR^_+B4>kOxn6wM zB`h3U+dGB|(++2%H;CaTe~kOYGa1Wtl^asv^^S1T&hcryhk#7{b60HFw&^YX=@?ij zZb{0JvmaHYjz5i#)A?_bF9D)RG12e2cN^U+0ywFiz3zTH4+>;t_SPlb0sCctt_7M~4hEtFmf1p* zeU2LcpqcdY^j-wDU!UMgt%U!bzVjT~8~6DyI}HBB6Xs?|Mi0cX#(SW2shJ8(p_h06)kcPVfQ{y;g)X0P zuMf{lMKeo#-2Tetj%C8$pHE%m-?FiOUqrr?aoy5nY0O4~P`<2VxAOAeTAYMc z5B@n;;i8e;E))r26bNW$+Hn9s3;Z2&zFt^T%09($~xI!q1P79JhU04zYRl=6>w z1j5MKd_t>3mLdH}pH>{( zFfto5FA$73NjH2Fu_Ua_*I{bR;0o)-=GL&z{2})jgoYV^{i)>3=3|Jl(OSil(uqhv z;GjTZ#y~FmW&x2;fe}d1M+Jjf0j#A%Tt{gRa!@RbW+nA`j5<_)@;<15WxJ1~o`kN% z%|vPvX0p4%58jqAe^n=6fVWS}B@VuIHj{z148egA^3%ttnfi3=qGc6_(w} zo9r9Lk>v70v(>P)5NQ9d^GlX-caRTv&B)~hYu8Z^Sh3x`cF}#jVDjOjue1-T;`Q;G z17e3kI-_$gWI5MySEkZUo9zuKmUT>S& zcXnE3R~vsD!mZIV$FTSKG&&8yY?dD@FGa26hm$KgAM03T7Y#F+iNUJ4JNgdTQWJnM zu1ap{d$$GIJZ5CoRe*5~Kx&>}M?(@cwrDKdF`&U=K5t(msAcSKW>p!d8CLD8S?r0@ z4uZo{f0=ZD${1W`c}RixXJJJu1a^Q zh^e#76!sS>pmDu?)WU}`CO{_5uQlB)QEgj6nSinC7T6&1A39MU4UsV{FL-F%xg3mZ zYau8gW1}{=hyot5rtgY+o@7A;Xkfnt!JGmH_cr9I+Q!*>C`fHPlO~pm-eE9xE#xjJ zCg3eDla;@~KLIfE2m$Pz%Hb>e$A1a*v+*3_%K!Ml^;2clv|PyJld(!6>*Eq&9GTF& zD+o4iEj!!l$1nzE4~j-i+eGxw7-RiSMp%aMO8rMLtFB^HdkW60^j6*u^CAsBs|@4dR=@y#IRKA=fQ!KEZ{g z;5I+(fj%!CsP&c(wv*pV2f~4ku^Knc_Kyj@Ntwe}U_a={I)Q9wHaNa%v0@!;l9S5A zQtemK&FH_kX_F=$Bsi4ou)1IvwXKK%O%HTGB5_-S6F^dYBIFA>NJ3@LY+VfAHH+RR zk`f$-ng*QDVK47vS7;{m=Uu`<@;5xu$3iv_Ud8hZkFnpTk>{Zc4fmzZ}&N&ME=!S&!}! zt_cIc>4$yi)Z$*>ox*e|Glq^d*K6q?bXkcTj;a(_;Nq$F2ekU3?HD_x5-0+~=Hyf# zKphAjTZ93kh14RnE=|uQ^*?qUlr=Mn8#(4ymSxzszxBVYrlm6^ZJ1g`hzXZ;9CzLa zCUylwOErm8u1c_KRt}C4u1}(Er}f~$h-=n2D&G5*oe5p$v^&73uCrVaz=@&a2@E-N zu>AseMG}9K)ib4VBDS7z21ldkpD(s}_1$G>)(Jw@%isxK+ zVjju7Hzm~r2f1yj_(->}$o$&AA`6-K1_k9Ikn<}-&d_pUyi~`%Bp&l*hl72`1e}SW zLuljqbHF-|YdRHYrW{?R!&k`{7BsPrH7|b|?FU|cP%*kI)Q3Cfh2c0`(CHM05_JP7 zEjxeW%uNZMTK#%cS=LCOrJIvL@i@7HMK`;ec&M&}u|w}SZ@(bvFmE3X+Qb$E&4O3M zYXfQHb3BM5F=-UoH(gZAk&6zdWvT58wd4pYO1njKU~sG`kA)V4(a5X@v>ABy%ZCzS zty@0uOW9rV^h@)Wn$lkggs{eXZh|nsey6(C#U=CCi)0{KDL@|TaPqfjO~z#_;vJL&(hng6e*$^fVbw~@M+-t~7gwO$bj}Z~L4XU( zH+idmH*pfL5vJ&OV;scr9);+FdSq(xIs(*2)M!qSX?t{LcsbJ z5eM5AA2N3%#K_bjDNxD_(xC$z)N{=Tf;ECI`R2c} zI~%H#D42Jr4SVr7*s99f(KDBA;9diRsRseBIRj~sy`;RUd~Ijh;IBW9c^Dqc?o;id zBiEIR8Nh`XX&raM86b0Ck%AJ;yZ2dlQ_-!bi6kASL^lmoG+#LmKdp?!4%#;NFx#?+N$l-AwYimI0H%L` z5Ln9uvX`z~0z-DDz@i7x4r3CfBVOanH2n~mFOSbqnaLtFE?L_T)Y7`wfFMe9OYxGo zl;TNrlt+P?`#_2bI(YXxeX#Daji(>XcZl3F7UrW$>SHFv<*m?To6Z~Hpwho>yWaX+ zhjnRqH-`Kx%hMtMXlsOk)8E`$V`f<_Ork@Z%VX%W^4d&lZc}1_QD#At@+FaCGVPDx(r>#suGX}}zZ)xu2f&xK4Y1OZJoMj|yQTK`Q}P9mhzXn^|068-)utqH zIg2`SYpRjLRg$o|d`;n*iPfFzBMO@3x1>;rJEC+w&+Yo>nZ|A9}kOXfi~ zY)lPtQ^!3yUF-dGxrB&pylD4wnmK}$Yz(y{N7tt-=t4$e^4@ag5q6w$t#djXM)-7^ zxo!#mzI|Sc$^p@_a-ztuWLe!NEeIh%fVAwr!Zv?*Pd*w8js?FC;rNEggj5jbNo*qX z-R4j{ukWhr-pjRHAANVv^v#<>|u^ua?m zAv~WkCXG}d47+|o!8<6gaT#s*os=WpnD5Cn3-~fS&?JWLJr{>yZpMYnk*k@CtMcvm z*;T)xEhoJOjpXogdZq5 zuJXV#f)eGlg9d)MVOda;A(C9tckd2@RH8c=L8h7Ud^I+?xu zE@)?7l*O{6Va@5AAmdVOEm>CjeH-H^t;f0;P7lB!s#+gMLDAe{#vM;F{9sUgAZE3p zYrPOEsZY99d^Rx*?mbmlM2a2nmiL7lv!m}={_^l0oEUjd)cxG{FCWUtFrJ@}bbTc^ z9cM8gO5V1-CSS{EB5}9KT!7dsyCam;=C!snc<-9n@+RHjzkZP$^xgvHm4q9&Qv{p` zDR{?jKaHhLGB{VydYe!&YT<9#Rb$YOG(sqovVfz`jiK!=1dAm$CWZXbc4jh}<9Uef z)yE&-P+fwy+V%j_1YlsT?@lp8wFXtTAAMQu*^QlunHg%#0TEr3GNOf& za+C7vB~+!yaU2R>BIN8Ka8SPAtZq%U$VRF}(k<=I!$sFx_RY03G$*KENii+JR4kpJ z)9=sJ8J^&=9!(PNu7b}wdg3NW{4KW{Z1w1|{RY$Z%@2X& zf}vBr7&&5XxFa$?OM4Q)cb2xf%a5>gNJ`;LKg32c_>?4*U_`H@=ZUi9%FHK)Ig<^L z^0Eh){ri`G9uHSSV_D`cpOiI7QiU>2&kBWm+l%ohY`2JM$NV?2*0;}Sb?;W+I0@QK zF>!8uHG3@j1s3q;c`i+7q)#8^=2lUeSi2tEHIr77;`eT7caj3a;`|ef?0{j-d2#Xz zmh_OI;w;)2K*@eo?Q7NnGI9Mq^kW+#Q;+;q=FEZg1M)AhwYS&|T7L9qyRb zF|vgP)AR8N7FA#sCCmDY%4cmSL{UB@3kUGEcSLC}V-;0FFbAK1%{9AODpWw}Y(<+E zN1}0NYRF6oK79C#XnIvKE{Xc-)_Q|Cm1ZT`>g5s14jNdLVNEpCiQ0z#VYJXm*{j-j zDW4N?=d&vdQOUP@RNR`Pl#3h#J&#kipWUD6`EBu%G&y15(y!vRDw){DDj-C0TJsKG z7>$3X{H#l5NZUIGhI9**fPjWglL`2sJZ1M*|15z5iU%TbE7I~wf*6$Z3NPaNmb?;= z9vTu>qQ}K6*SB|spRS7f5VJN!fV*wOJ@?IoX#IJY-?c1_g5bSDBfKoj*JP~~<#gFU z-#c{P6U|E|3^!Tyot-C2hx^K(gxX}cl^l>)dh_oik>9EM?OUUU1g3Q8>Q5cdF)Ewl z)9x;@qO@jNC;=^VLuS2P78!4;=i{v?RM{c9w;Ju)9u?*wjNh>1O$YiKkA9OS;$Yfg zqvYn_<@-S1F-_iRE(~Mo?Mp_7Tee*C)Vq74j))c4>B5ml1;u&2R3e~D8=Kh%Qf}Im zSQ*{-TmX1*J!gh+IM*zMnMTk2-0tT6)W3pW9~T4qu4hbOG<605Lf}0WAOU*`H<+( z#mUQVDM^(bPv>FI>M&J3-LX%4EY+5D!I!hRXpHr|Ikif!jcqS#16kctkcySugg0j% zq%?bI#ouxTuim_yh)e+tZzzLKHOrBdXEV%PELC-J^tteGYY=;Y{Mzz54ZG)Ad6 z&-5LCjhEtdXWtj|xcBE8`4U`P?$mcS@T%)%udteRwFV(8f@`-#!}NOCe4kXytYJpt z_4*E0Jg{Oz8m8#VFsW8X>pje6nr-`HQ*V~{`o1M%8LVpzII)iDm~jBQMjdS zGyyiHV+8*QX9#!@)<`_HKl?j5R(4OhxuW38I>d#!s3Upcf|4o%@gnBM1Ia{L6h1CH zA>_>|NnZ?x=+^>nRB(mId}5FF>w|Lr(b7mqUb!RZRmJ_XyZ}5ho5k0hYJfF(pvhL(p`%*-+82*c!Y5DQR&Jz&wlbD2xW0%r@xlXd<6Pjo1$@6-(i{N z<7-m*CMgoNS%k(k>9SVsy(^cdAUh6|9h!muI)6^AR|)I=BR!}6!&@I3jv(wdNw0ia94u8=2pLWH$-`q8umVo zKKWT!$8*o^Vm8dbtXg!eDlm`PU1x?S$ICz`FZX{-sZl8%H7)*@60K! z0;B9WvLr6nPoXCmB_>;K59e@Z@};_R63BK47iYz7Ol%^%2bLR9++~N7bxKcSYwjMP z6?H*JB==H_nvnBEKaAX6xS|jsZYY9YF>s7T#QuX4Xu#UHvLg5e;L9fW-PaD9qlkpj z6AV}q9+PsHV)M@}OL_D+92U$>O3KxBFdLgVvoWz?9s+yhSV(M={m96Q2kh>yeqDC# z_9w4^+9@IKcWTCAyRt-SB@5u(BBDagT@>;D8APaA)V~h)5DOdoA$?@hLpjDJ_g1Jo z+6C2?L0ApJpAXMJ$MQRcrZoBCOZm|X!<&|+&D)V#Ksv|k2}Go3(VTS*?a_st(z^ac z6*SJ52Z+w2L4q6r3k=V7jR#mE#bt<53X^(hmG94$Uo8h192eAnIwvJ|E<(i6@PB8| zpOm2R)C>}2V{BTPFx;UQ&#Df=dbTP^!usSEMgZJU39*`GG0B0Kh0TiF@EHFDb^A4n zXYx$Y{4of{l*bjT&`6qY!$ahsZkovmfbXb5_9`Ae-AyW{^;-lavdHJG^_2}>0|q5zXB<2E7SUL=1h~OQ*ei6zy-9) zV+3LydfYR9ec^mSsd491+%lLV{0LD>Eu*9l(s!uQq@0WBFxUsqLn6v7Y%qk1A9B0k z70SKFD#H#2%18`HLI4hhUGJ9%moey@tx1#8JbWYBZ^U2_18SKLZxbc%PzqQ03sla)M)_cSnE0+8hZIT(#{_DrI70 zywwk*8iwsJvo-xjq_!llS_ZWg)hqikn!knMgL+aS2bsd!?%vTIgPm0}fJF8n>!WuB zV1Jt|RkvUB|2Sl$1&jfp@Vxs|N04gy#9GPNs)iyY-`sYaAAL<6!pV_=GEM@kps$&J zuJWG$WQMto_0n2Z@S4h0qtn68LoFO=Q^mcX7DBZ%2Ud8uA!ucO2w1a|ryTyjM3YtU za19D|G>6YHh32lH9e%c(Ge@1~dJsGpAe2g80%h2VT(wIbU_H{$+gEBh^T&(-ffyp6 zds-)>h!|y>>6~k7`uy3}sl5MfAG>KSQIx$BjBObj-Q!_XIQ~386b%=9#0Jk(*?e$x zoP+C-Wbx}6-mOs&1}K1K@%(`4=~fNJliwDw#!cpi z+G77fl7JO<@~vA!Xodk*1r5*_esb4Tr@&ClIaF75u0!J@u*Fz?rBEbHQ|vqF79IRw z0|AmaW*pbx<2re0uIp@?pndf6NgVCZ4IjW1ijm(+l{?(q$Mp}_+Z!Ar#GyG8H2`9?epbMw51g^}Hu53kZEQ z3+hs#d0IVagT=S(L4VyV&gqq8G~| z&V5YidAc7CD5zRnmAC!HXv#3{p?X1_fr1z`?2_orlbs?$ZQ;kN6z3g@vTix)?#T@^ z>Q_YdmISQ&6=fLHm7|YArG^XSgyj#*Ht;ZZy;J6w7Sc*7wp9C<+-z8Oa3*ty3bjRViU1Oqb&=SZabdSmL zm`fv_q_>6OGD_hz3YKXNf-x>V$TV0YlC3tP6 zOU}Fe@FSg_oz}zIt}$zQ?>4%9|EhCS6svi4i@Nj1Dun7A&hEGLbXc7`InH519vbB6 zfl2_K?FC4qWi8CQoKg47J~XM(9Y@si>>=*PQk+k!E`y3@!9ppl>@YeE@&&r85VC2& zp$Fm@TQw*D#?vpHPN0e(KgcMquLcYo_=Q?XN9cy2;;m{e^e{ZzO15K~^HaRU}s}jGa3!f5%Pz_WH~CNqpYs)&t@EP*n!! zb&5N5rYlIJ{7Qv}T3Ac`V%6O-s=)9pVfIcj+#Y3&miNb6k_Pc+V+-|>Gn-nXj^&VY zsE~amE`Ofu64Lb`t|>MpC;OTRM<|ru|BV?E3rLH*b}zy>3UL@i>BK{{-j^iq+K^&U zL6y(K9T{mm??n~D{J9o7nwzGE52%1xkSD|GMZGal+6M%ZeQE6V^{}U%tUp6;4pYhQ z#&_5P@Fce=Y@)C?G5f)nQsIcpAD1xKspJjdLP=SH_l0XNExmb^OCs(x?ELwZVH8YU zWHM`P!vYQElt}~uhBp&FFOjq7yHv|>sd@^JvRQD9Dd4Y20@B=1|KZZJw%~Dc)3%@D zJ%NC3+PtYp>U#pQ^``n2d^{*ex6kA1_H0K~%n1&weKL8+b23EP@rMEBqIH1QD4fEz)%X)NRJjfoOVM1qgAwsbi*S{^6@R zdMy_Q^cBl(N57UCPWdPVK&*4ey!uC$87-=&sv71CF{pJ{pVeq~vmvhw&P2y85fm+A zc=wsR3X(i9FoDb<+sF(If<~gKL`Sq^$d@Cod?Bf_Vi2jkCB5*X`b%;#%KIorySs+4wxq)i3+$aL-Kn{}>}oDPSsr`A$n-nN zyy*DBO(N1@>3GQjk2>2rg8KWiC1s9Pl5{ojC2Hx2DdZuE<>qL6P|!Dm6p$nMLS;yy zJCOuHGlt#}32(TM^mIodi^lkhHtHoK&Y%RDy!Z1i{iZ^!gds*}4#0PU6nNQ3CZ++CUFjTd6B238^q!w1)tE-gXEi^CO=`%w!Z;GjH81<;Vmn3-f~TGDFRX+ z@apTYfBL$flPac^1ah4*WCH9xKucgOe5z>ZbCL05FM+jt!itR=8p!Lk(yyYGF=5cY zCQM1d|HP-m0INuj)V5pb47u>{Xu2_^%$)%>D`+cq&!JN1LmU=9gglVc-``UyfEg*_ zp6fjgF%Wc|{-6}}^RZ5b3(h`|0R*@QY-SI}vtz?yb=te_f{->5`Q&-W;-+~WN^<}T zMkSd#IW$Bym<(vtXaX0EgNA$DbojWP>wfw=>za|XN5fz+<|nQMDAoir>PTeUG_>dp zB|6!1rkEoZ@~D|4XhY65b~d+$-6ssk(0Bw-h&tr`ZyiK$^yhEDUtGrLpngwSpUs|D z;i%G?NbZN;%Y_}LRcZwG=pvzm48$`6y2n)f7w<}TqQi2)x&8pSzXA}^9Y!wXJ#bQp z65+FJrKs<4xVYGDy5h`~@Wvbaq?>8?o$~;1zyRy(Dwg^O$T!7;F?<5j1C?AB=6whj z=4$^z88mk-AC6Ch_v?a%R&6}tzrdbf5}XuEa#s9KEMN%FjjNRz!r!j)o@4~u%j@(VQuVy3c$zh z>;%Jb;OUmzRNv2)==QnR124gXlh>z4;D-j)!A6*)g7*Vm27nkzmx2yU0N+xAWC04e zZH&UzZH1#yq$-C`L2bX==Pe(oyETqRhmYgo`2-0LVG3foldk#W;reOoD2gM5hGuGa zp>v1xwuBW5z>c2xrg6znx#%y~GWk)CjN;k$oA4k-`?zy8j_jWcNf9>nJA_2A(u z$7$^yN+Cqw9feZo_%S=0sFkf@A^*(g=pA$5FENeaYL0W_MY~^DR|h;;k)_K(DK`4v zzl@P?@llAh!3~NhLRu|7Fuyn5#vUjoy}S;W`{MZ^AC9Ap`7p)H?$`~OHU@Nc#i7`Q zF=BZ9oKGTJQQo!ja)7|pYUM~$#f3h0S4LM9)4arubGG&c1SXJ2DFb3XQjCv^cB~r6 z%QPzL;+Wy&XoB1#S1m_PPWz)&){_b#$>ROJWYnbsB1f^w)Gf#W zj@I8ymlowga+Vz;xm;UIG$_utVN-ApP`{U9IffTsh`B;x_Ub%)$9)tS)u~i2UZ?Ay zw-LlFi9%nStqFn?Hy-@V`aQ=ea;OdRM_*lxDoh3-Hsa-?Zpmv>e3XNXn9M<-JN~f^ z&nIou%)jHb9Bs}Th7}bMQ_}Aa$W=P8c#|>C5?|q>Z1+A0nwsZh@R2++SK5D3LqLlv zHz($Va7v7|`?kg)sfa-Gvq!EuqVb-Xf#thn2AX4ZcbC&2ffzkGXL9RS0cc9Ej+8dS z@_|$KRnm`zbCTXO6j0is zY5vwElEahCgmgAWUL4(l;7bm1M6&dD;gJV;-w=F$_T$o9JVC3%LRvY$F_3)bjW-4h zt7>s08Wy(TN7aJZP|ia3=ZPp9%*JT z+z2-v?!q@uD`%G=2AoDJ^>#$dK!*O_ROy!Y9Kv{yuJ(Du4iT)+0am{ zp=~5YhJ4u8yC<)OOfQlao4uXsSL~!92Zs)wpF&49ZKFd$0+`?-TSh3{rOG=1h_CIN zO&nH{1xAm5i1h`nf-7uh8-iSju0E0da!`((DX5Uge_{Mv?f+7H+##%^=fnd}?oYzR z+~qdj{ziLYwIp;}bgKl`Ht96xO1-Lq{Z`7K;J9g~Kw)wq5Q)3)U62a{nl#@|uL9TF ze$tT=>7ZpPrH6ROTWpYDurN&|v#|^i|5boc66U$~5vErMgy7a+P5RIBNy|2@>(7-n z$8xI4r#%zZ*xC~F)ik0#6M5%2_l#XCYC_K0d^7+tc0u}lh20Q$bS?(NJJ~Mx;YI@7 zy?_NYkOPi!)wF{E3^75xo3X@lYAkJkAZB)u(VHZpwR0IP2WoZQanld|4tIL*1{1{Ity52&pAAHe z6mN@aJa^+nH@19W1dVvb2*@eg3*@k0*7;R3#q0pZiXN~K2*(C}v>>7JWSbY~%1|oC z$EBHC5hRS)W6&G4+vv*f3hj8y3Blqkl{$xWv*W{HNc`_-8W2sVG?nX(DW44>mX~r(9W6xN~mitu7TDAu63Ds2j zHzA*BiNj4fEYnK-Z83N0BN?<;Am;J#$CtZCOlFabI*68CUx|h`%Yeq0gJ=lwv}n%E zBq4MxD(z`TNH101`odu5QRG}viJd(`>gDM5aWTWopeSboHVqSD*D?_bLjU61D7;UR z9?CPOOC=%WoK|EtvLXS+)E$(KZkb%^Fkm6GmB`M2^X}}X{?|P7&8#p#c<-7>K7|h- zVj2vkT&S`#Rl?h^ls;x_x zYNU|+pnuP_h zdXHQ2MuB5XzPXpf;gSGdxR?UMbGaRkfz(uHTrEpyRvIo~NJ#&SLo81j0sd{q9nMu< zujW#ED&L(9GV!97HFhn4(->9@oqVRE6Pfpit<4Q66bR$6dK?eKL=_vOJ`a7!ay2!5UVPuJA$X2xBBozd9T>- zfqem0wu=Px%*9E$q3uPP3=LEbID_s&ZYa9RF|2S2k7BeR+;E`h>qBii;a?1FT9NT&G<}r(;613-Ln#JnaXG3Ee>wBpv z$5i;CIFTF@mSlmjaKr_JLq)Vd*AF6Q>k_KNN)9CYgJJ$?`0;GYD6K;5%O&*Nfw4hD zTU{>D68n84hZ6b_x zA4_N}+oD1!){(-JIzm?8g#5vc8x!?voRKN2_a_$mIRolW+;Aih+yuW7R2WIuPd5~X z7AMvD?aR%DRJ>{$AvjyVVr9=`^tmx(U>}eslARh&!?s7Bdg`0>^$Z(mA@;?KFLa6_ z8A;w=8RhZMi{u4Ay5Szi&{QSz6ieyQuY8(np+I<%jdfLKUF3|DU!sx>ekYBR-#s#$ zj7FB3{p;|ro;aV6mEwljLdP6s(Ns4XR4-E~n$m&CJSZm`r3(W*xhnZKWx^JzsU~}t za(PwhC|M8coL(wFa8*$ba?>^}bDJ0r2lWUGS zcLgPNYfS+%r=*Uux;7z~ye?Rn-D>X^lWr-I@LK?)RPq(g){b1rSzQR=K!80a6NV?( zxCsw?c&*K?+*SF`V*?o&*#&#-|As?Z_L7l2J0YK3hAlcG=Ehg^_+AzQINg`nzms|U zp#L};o>5%(xjbdN6nOFs*93us2Mo>yQfF<^?Ij#_%^Ml!*iwY0W>}5VXBV@PY!`0CCrtHTl7Xidp$Jxrd}5Mn2?Z|%%U zM7km-%R-*I{_kP)d<)=Y_nOnk8a|Ni&!CjTl8A7~1M|2kSACGHx` znIqV_MIbbP>HJ5%piw4YHi(wsTDq3$-sf~6 zxEUwhLtKzoqf@^V0PaDILMqIm$lyr&+0zy44NT>TL1bc~0ocNY`Y2-ek(n4Z{l{!g z1Gz`e8MD%BTovkHcR73fXeddA#KV1Dc0${11;n$sYsT0y7TAhOg}0DHO$i6flmx%KzE=GQs@w`sxv*}xyyu0x?~!o}Vc3kgq|Ca7SUtn9q1 zlZx#uSJX0toU`FIujDzHQ0n9e(&R-(lz?hmV)N7pgE)9FCKecQ(yc;-k>@yjWE zTOIJLtJm@VYnP>WE(Su(&ep>$;)$>0( zFcAKdH5gPm3<0}9keB&{YaYM@u&|4KL}7I!Oyr(0;}p8UKO8`$Y2V(u{de8-p&LH< T-G?gt8b9{TF%O+~{*3 Date: Tue, 10 Sep 2024 10:54:36 -0700 Subject: [PATCH 04/10] Replace main.rs with bin/main.rs. Update readme. Major file cleanup. Update readme. Fix all warnings and turn back on error messaging in the build. --- .gitignore | 3 +- 11367213.png | Bin 77486 -> 0 bytes Cargo.toml | 1 + README.md | 96 ++++++++- src/bin/data-transformer.rs | 13 ++ src/bin/gaussian_renderer.rs | 229 ---------------------- src/bin/{psf_renderer.rs => main.rs} | 61 +++--- src/coords.rs | 47 ++--- src/fov.rs | 19 +- src/lib.rs | 5 +- src/main.rs | 283 --------------------------- src/parsing_utils.rs | 3 +- src/rendering.rs | 118 +++++------ star_map.png | Bin 27418 -> 0 bytes star_map2.png | Bin 76129 -> 0 bytes star_map5.png | Bin 20145 -> 0 bytes star_map6.png | Bin 126655 -> 0 bytes 17 files changed, 213 insertions(+), 665 deletions(-) delete mode 100644 11367213.png create mode 100644 src/bin/data-transformer.rs delete mode 100644 src/bin/gaussian_renderer.rs rename src/bin/{psf_renderer.rs => main.rs} (74%) delete mode 100644 src/main.rs delete mode 100644 star_map.png delete mode 100644 star_map2.png delete mode 100644 star_map5.png delete mode 100644 star_map6.png diff --git a/.gitignore b/.gitignore index 88272ad..af59788 100644 --- a/.gitignore +++ b/.gitignore @@ -176,4 +176,5 @@ data/ #/target .idea/ -debug.txt \ No newline at end of file +debug.txt +star_map.png \ No newline at end of file diff --git a/11367213.png b/11367213.png deleted file mode 100644 index 584173081895cf5eb94890d1fb2396f96a2bbfff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 77486 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≥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 + + ██ Flag ██ + ██ Description ██ + ██ Default value ██ + ██ Notes ██ + + + --source, -s + The source file to run + `data/tycho2/catalog.dat` + + + + --center-ra + FOV center point right ascension + `180.0` + In degrees + + + --center-dec + FOV center point declination + `0.0` + In degrees + + + --fov-w + Width of FOV + `60.0` + In degrees + + + --fov-h + Height of FOV + `45.0` + In degrees + + + --roll + Critical for determining FOV and should always be specified. Camera sensor roll with respect to the celestial sphere. + `0.0` + In degrees + + + --max-magnitude + Maximum visual magnitude (lower is brighter). + `12.0` + This is essentially a filter, and dimmer stars will be ignored. A higher value can have an effect on performance at the cost of realism. Defaults to a maximum dimmer than Tycho2 dataset - i.e. shows all stars. + + + --lambda-nm + Targeted wavelength - critical for airy disc rendering (nanometers). Default to visible spectrum + `540.0` + In nanometers. Currently unused - for future revision with PSF rendering + + + --pixel-size-m + Simulated sensor physical pixel size + `3e-6` + In meters. Currently unused - for future revision with PSF rendering + + + --width + Output image width. Should match sensor pixel count. + `800` + In pixels. Larger values will impact performance. + + + --height + Output image height. Should match sensor pixel count. + `600` + In pixels. Larger values will impact performance. + + + --output, -o + Output filename + `star_map.png` + + + + \ No newline at end of file diff --git a/src/bin/data-transformer.rs b/src/bin/data-transformer.rs new file mode 100644 index 0000000..4613d48 --- /dev/null +++ b/src/bin/data-transformer.rs @@ -0,0 +1,13 @@ +use clap::Parser; +use starfield_renderer::parsing_utils::{parse_field, parse_star_record, parse_magnitude}; + +/// CLI Arguments +#[derive(Parser, Debug)] +#[command(author, version, about, long_about = None)] +pub struct Args { + +} + +fn main() -> Result<(), Box> { + Ok(()) +} diff --git a/src/bin/gaussian_renderer.rs b/src/bin/gaussian_renderer.rs deleted file mode 100644 index a27f5e2..0000000 --- a/src/bin/gaussian_renderer.rs +++ /dev/null @@ -1,229 +0,0 @@ -use std::fs::File; -use std::io; -use std::path::PathBuf; - -/// Represents a star with its right ascension, declination, and magnitude. -#[derive(Debug, Deserialize, Serialize, Clone)] -pub struct Star { - ra_deg: f64, - de_deg: f64, - mag: f64, -} - -/// Errors that can occur during star catalog reading. -#[derive(Error, Debug)] -pub enum CatalogError { - #[error("IO error: {0}")] - Io(#[from] io::Error), - #[error("CSV parsing error: {0}")] - Csv(#[from] csv::Error), - #[error("Missing field: {0}")] - MissingField(String), - #[error("Parse error: {0}")] - Parse(String), - #[error("Missing magnitude")] - MissingMagnitude, -} - -/// CLI Arguments -#[derive(Parser, Debug)] -#[command(author, version, about, long_about = None)] -struct Args { - /// Path to the Tycho-2 catalog file - #[arg( - short, - long, - value_name = "FILE", - default_value = "data/tycho2/catalog.dat" - )] - file: PathBuf, - - /// Number of stars to display (0 for all) - #[arg(short, long, default_value_t = 10)] - display_count: usize, - - /// Minimum Right Ascension (degrees) - #[arg(long, default_value_t = 0.0)] - min_ra: f64, - - /// Maximum Right Ascension (degrees) - #[arg(long, default_value_t = 360.0)] - max_ra: f64, - - /// Minimum Declination (degrees) - #[arg(long, default_value_t = -90.0)] - min_dec: f64, - - /// Maximum Declination (degrees) - #[arg(long, default_value_t = 90.0)] - max_dec: f64, - - /// Maximum visual magnitude (lower is brighter) - #[arg(short, long, default_value_t = 6.0)] - max_magnitude: f64, - - /// Output image width in pixels - #[arg(long, default_value_t = 800)] - width: u32, - - /// Output image height in pixels - #[arg(long, default_value_t = 600)] - height: u32, - - /// Output image file name - #[arg(short, long, default_value = "star_map.png")] - output: String, -} - -/// Reads and filters stars from the Tycho-2 catalog file. -/// https://heasarc.gsfc.nasa.gov/w3browse/all/tycho2.html -/// http://tdc-www.harvard.edu/catalogs/tycho2.format.html -pub fn read_stars>( - path: P, - min_ra: f64, - max_ra: f64, - min_dec: f64, - max_dec: f64, - max_magnitude: f64, -) -> Result, CatalogError> { - let file = File::open(path)?; - let reader = io::BufReader::new(file); - let mut csv_reader = ReaderBuilder::new() - .delimiter(b'|') - .has_headers(false) - .from_reader(reader); - - let mut stars = Vec::new(); - let mut skipped_rows = 0; - - for (i, result) in csv_reader.records().enumerate() { - let record = result?; - match parse_star_record(&record) { - Ok(star) => { - if star.ra_deg >= min_ra - && star.ra_deg <= max_ra - && star.de_deg >= min_dec - && star.de_deg <= max_dec - && star.mag <= max_magnitude - { - if i % 10000 == 0 { - println!( - "Star {}: RA={}, Dec={}, Mag={}", - i, star.ra_deg, star.de_deg, star.mag - ); - } - stars.push(star); - } - } - Err(e) => { - skipped_rows += 1; - if skipped_rows <= 10 { - println!("Skipping row {} due to error: {:?}", i, e); - println!("Problematic row: {:?}", record); - } else if skipped_rows == 11 { - println!("Further skipped rows will not be printed..."); - } - } - } - } - - println!("Total stars read and filtered: {}", stars.len()); - println!("Total rows skipped: {}", skipped_rows); - - Ok(stars) -} - -/// Parses a single record from the catalog into a Star struct. -fn parse_star_record(record: &csv::StringRecord) -> Result { - let ra = parse_field(record, 24, "RA")?; - let dec = parse_field(record, 25, "Dec")?; - let mag = parse_magnitude(record)?; - - Ok(Star { - ra_deg: ra, - de_deg: dec, - mag, - }) -} - -/// Parses a field from the record, returning a helpful error if parsing fails. -fn parse_field( - record: &csv::StringRecord, - index: usize, - field_name: &str, -) -> Result { - record - .get(index) - .ok_or_else(|| CatalogError::MissingField(field_name.to_string()))? - .trim() - .parse() - .map_err(|_| CatalogError::Parse(format!("Failed to parse {}", field_name))) -} - -fn parse_magnitude(record: &csv::StringRecord) -> Result { - let bt_mag = parse_field(record, 17, "BT magnitude").ok(); - let vt_mag = parse_field(record, 19, "VT magnitude").ok(); - - // println!("Debug: BT_Mag = {:?}, VT_Mag = {:?}", bt_mag, vt_mag); - - match (bt_mag, vt_mag) { - (Some(bt), Some(vt)) => { - let v_mag = vt - 0.090 * (bt - vt); - // println!("Debug: Calculated V_Mag = {:.3}", v_mag); - Ok(v_mag) - } - (None, Some(vt)) => { - // println!("Debug: Using VT_Mag as V_Mag = {:.3}", vt); - Ok(vt) - } - (Some(bt), None) => { - // println!("Debug: Using BT_Mag as V_Mag = {:.3}", bt); - Ok(bt) - } - (None, None) => Err(CatalogError::MissingMagnitude), - } -} - -/// Gaussian blurring function -fn gaussian(x: f64, y: f64, sigma: f64) -> f64 { - let exponent = -(x * x + y * y) / (2.0 * sigma * sigma); - (1.0 / (2.0 * PI * sigma * sigma)) * (-exponent).exp() -} - - - -fn apply_psf(image: &mut [Vec], star_x: usize, star_y: usize, intensity: f64, radius: f64, wavelength: f64, aperture_diameter: f64, focal_length: f64) { - let size = (2.0 * radius).ceil() as usize; - let half_size = size / 2; - - for dx in 0..size { - for dy in 0..size { - let x = star_x as isize + dx as isize - half_size as isize; - let y = star_y as isize + dy as isize - half_size as isize; - - // Ensure the coordinates are within image bounds - if x >= 0 && x < image.len() as isize && y >= 0 && y < image[0].len() as isize { - let r = (((dx as f64 - half_size as f64).powi(2) + (dy as f64 - half_size as f64).powi(2)).sqrt()); - let airy_value = airy_intensity(r, wavelength, aperture_diameter, focal_length); - - // Accumulate intensity at the pixel - image[x as usize][y as usize] += intensity * airy_value; - } - } - } -} - - -fn render_stars( - stars: &[Star], - width: u32, - height: u32, - min_ra: f64, - max_ra: f64, - min_dec: f64, - max_dec: f64, -) { - let mut img = ImageBuffer::new(width, height); - - -} \ No newline at end of file diff --git a/src/bin/psf_renderer.rs b/src/bin/main.rs similarity index 74% rename from src/bin/psf_renderer.rs rename to src/bin/main.rs index 537a9b8..9f320c9 100644 --- a/src/bin/psf_renderer.rs +++ b/src/bin/main.rs @@ -1,12 +1,11 @@ -#![allow(warnings)] - -use std::path::PathBuf; +// #![allow(warnings)] use clap::Parser; +use starfield_renderer::coords::{EquatorialCoords}; use starfield_renderer::fov::{get_fov}; use starfield_renderer::parsing_utils::{read_stars}; use starfield_renderer::rendering::{render_stars}; +use std::path::PathBuf; use std::time::Instant; -use starfield_renderer::coords::{EquatorialCoords}; /// CLI Arguments @@ -31,19 +30,19 @@ pub struct Args { center_dec: f64, /// Width of field of view. With 0 roll, corresponds to right ascension (degrees) - #[arg(long, default_value_t = 90.0)] - fov_w_deg: f64, + #[arg(long, default_value_t = 60.0)] + fov_w: f64, /// Height of field of view. With 0 roll, corresponds to declination (degrees) - #[arg(long, default_value_t = 60.0)] - fov_h_deg: f64, + #[arg(long, default_value_t = 45.0)] + fov_h: f64, /// Roll of the camera view (degrees) #[arg(long, default_value_t = 0.0)] - roll_deg: f64, + roll: f64, /// Maximum visual magnitude (lower is brighter) - #[arg(long, default_value_t = 5.0)] + #[arg(long, default_value_t = 12.0)] max_magnitude: f64, /// Targeted wavelength - critical for airy disc rendering (nanometers). Default to visible @@ -69,13 +68,13 @@ pub struct Args { } fn main() -> Result<(), Box> { - let start = Instant::now(); + let run_start = Instant::now(); let args = Args::parse(); let center_ra = args.center_ra.to_radians(); let center_dec = args.center_dec.to_radians(); - let roll = args.roll_deg.to_radians(); - let fov_w = args.fov_w_deg.to_radians(); - let fov_h = args.fov_h_deg.to_radians(); + let roll = args.roll.to_radians(); + let fov_w = args.fov_w.to_radians(); + let fov_h = args.fov_h.to_radians(); /*println!("================ Cmd args list ==============="); println!("Reading stars from: {:?}", args.source); @@ -99,38 +98,26 @@ fn main() -> Result<(), Box> { println!("============ End of cmd args list ============");*/ // 1) Rotate FOV by specified roll - let center = &EquatorialCoords { + let get_fov_start = Instant::now(); + let center = EquatorialCoords { ra: center_ra, dec: center_dec, }; let rolled_fov = get_fov(center, fov_w, fov_h, roll); + println!("Total FOV retrieval time: {:?}", get_fov_start.elapsed()); // 2) Read stars and filter against rolled_fov to create subset of stars in view of the image - let stars = read_stars(args.source, center, &rolled_fov, args.max_magnitude)?; - /*let star = &stars[0]; - println!("Star: {:?}", star.coords);*/ + let read_stars_start = Instant::now(); + let stars_in_fov = read_stars(args.source, rolled_fov, args.max_magnitude)?; + println!("Total time to read and parse stars: {:?}", read_stars_start.elapsed()); - // 4) Render stars in FOV w/ airy disc - let img = render_stars(&stars, args.width, args.height, center, fov_w, fov_h, roll); + // 4) Render stars in FOV + let render_stars_start = Instant::now(); + let img = render_stars(stars_in_fov, args.width, args.height, center, fov_w, fov_h, roll); img.save(&args.output)?; + println!("Total parse and write stars: {:?}", render_stars_start.elapsed()); -/* - let render_start = Instant::now(); - let img = render_stars( - &stars, - args.width, - args.height, - args.min_ra, - args.max_ra, - args.min_dec, - args.max_dec, - ); - img.save(&args.output)?; - let render_duration = render_start.elapsed(); -*/ - // println!("Time taken to render and save image: {:?}", render_duration); - // println!("Image saved as: {}", args.output); - println!("Total time elapsed: {:?}", start.elapsed()); + println!("Total run time elapsed: {:?}", run_start.elapsed()); Ok(()) } \ No newline at end of file diff --git a/src/coords.rs b/src/coords.rs index 062c704..ec13572 100644 --- a/src/coords.rs +++ b/src/coords.rs @@ -1,8 +1,14 @@ -use crate::fov::APPROX_GRID_RESOLUTION; +use crate::fov::GRID_RESOLUTION; use serde::{Deserialize, Serialize}; use std::f64::consts::PI; use std::hash::{Hash, Hasher}; +#[derive(Debug, Deserialize, Serialize, Clone, Copy)] +pub struct StandardCoords { + pub x: f64, + pub y: f64, +} + #[derive(Debug, Deserialize, Serialize, Clone, Copy)] pub struct CartesianCoords { pub x: f64, @@ -12,9 +18,9 @@ pub struct CartesianCoords { impl CartesianCoords { pub fn to_equatorial(&self) -> EquatorialCoords { - let mut ra: f64; + let ra: f64; - if (self.y < 0.0) { + if self.y < 0.0 { ra = (2.0 * PI) - self.x.acos(); } else { ra = self.x.acos(); @@ -37,7 +43,7 @@ pub struct EquatorialCoords { impl EquatorialCoords { /// Calculate a point's standard coordinates on the plane tangent to the celestial sphere, whose /// center point sits tangent to the sphere where the camera's central (z) axis meets it - pub fn to_standard(&self, center: &EquatorialCoords) -> StandardCoords { + pub fn to_standard(&self, center: EquatorialCoords) -> StandardCoords { // Right ascension and declination of current object, in radians let ra = self.ra; let dec = self.dec; @@ -63,8 +69,8 @@ impl EquatorialCoords { pub fn to_grid(&self) -> EquatorialCoords { EquatorialCoords { - ra: ((self.ra / 2.0 * PI) * (1.0 - (2.0 * self.dec / PI).abs()) * APPROX_GRID_RESOLUTION).round(), - dec: ((2.0 * self.dec / PI) * APPROX_GRID_RESOLUTION).round(), + ra: ((self.ra / 2.0 * PI) * (1.0 - (2.0 * self.dec / PI).abs()) * GRID_RESOLUTION).round(), + dec: ((2.0 * self.dec / PI) * GRID_RESOLUTION).round(), } } } @@ -85,32 +91,3 @@ impl Hash for EquatorialCoords { } } -#[derive(Debug, Deserialize, Serialize, Clone, Copy)] -pub struct StandardCoords { - pub x: f64, - pub y: f64, -} - -impl StandardCoords { - pub fn to_equatorial(&self, center: &EquatorialCoords) -> EquatorialCoords { - // Right ascension and declination of center point of tangent plane, in radians - let cra = center.ra; - let cdec = center.dec; - - EquatorialCoords { - ra: (cra + (self.x / (cdec.cos() - (self.y * cdec.sin()))).atan()), - dec: ( - ((cdec.sin() + (self.y * cdec.cos())) - / ((1.0 + self.x.powi(2) + self.y.powi(2)).sqrt()) - ).asin()), - } - } -} - -#[derive(Debug, Deserialize, Serialize, Clone)] -pub struct BoundsEquatorial { - pub max_ra: f64, - pub min_ra: f64, - pub max_dec: f64, - pub min_dec: f64, -} \ No newline at end of file diff --git a/src/fov.rs b/src/fov.rs index 7eb1ce3..f378a23 100644 --- a/src/fov.rs +++ b/src/fov.rs @@ -1,18 +1,15 @@ -use nalgebra::{SMatrix, SVector, Vector3}; -use serde::{Deserialize, Serialize}; -use crate::coords::{BoundsEquatorial, CartesianCoords, EquatorialCoords, StandardCoords}; +use crate::coords::{CartesianCoords, EquatorialCoords}; +use nalgebra::{SMatrix, Vector3}; use std::collections::HashSet; use std::f64::consts::PI; -pub const APPROX_GRID_RESOLUTION: f64 = 360.0; +pub const GRID_RESOLUTION: f64 = 360.0; pub fn get_fov( - center: &EquatorialCoords, + center: EquatorialCoords, fov_w: f64, fov_h: f64, roll: f64, - // Approximation resolution for dividing FOV into smaller regions (NOT image size) - // approx_res: i32, ) -> HashSet { // Config params for function let view_init_center = EquatorialCoords { @@ -25,7 +22,7 @@ pub fn get_fov( let fov_w_half = fov_w / 2.0; let fov_h_half = fov_h / 2.0; - let step_size = 2.0 * PI / APPROX_GRID_RESOLUTION; + let step_size = 2.0 * PI / GRID_RESOLUTION; let bottom_left = EquatorialCoords { ra: view_init_center.ra - fov_w_half, dec: view_init_center.dec - fov_h_half, @@ -42,9 +39,6 @@ pub fn get_fov( }.to_cartesian()); } } - /*let debug_index = (scatter_shot.len() / 2) as usize; - let debug_middle_coord = scatter_shot[debug_index]; - println!("Approx center grid coord: {:?}", debug_middle_coord);*/ let c_cartesian = center.to_cartesian(); let y_roll_axis = CartesianCoords { @@ -106,9 +100,6 @@ pub fn get_fov( z: transformed[(2,0)], }.to_equatorial().to_grid(); final_grid.insert(grid_coord); - /*if (index == debug_index) { - println!("approx center grid coord (after transform) {:?}", grid_coord); - }*/ }; final_grid diff --git a/src/lib.rs b/src/lib.rs index 90148e3..7722b17 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,7 +1,6 @@ -#![allow(warnings)] - -pub mod rendering; +// #![allow(warnings)] pub mod coords; pub mod fov; pub mod parsing_utils; +pub mod rendering; pub mod star; \ No newline at end of file diff --git a/src/main.rs b/src/main.rs deleted file mode 100644 index 03aa005..0000000 --- a/src/main.rs +++ /dev/null @@ -1,283 +0,0 @@ -use clap::Parser; -use csv::ReaderBuilder; -use image::{ImageBuffer, Rgb}; -use serde::{Deserialize, Serialize}; -use std::fs::File; -use std::io::{self}; -use std::path::PathBuf; -use std::time::Instant; -use thiserror::Error; - -/// Represents a star with its right ascension, declination, and magnitude. -#[derive(Debug, Deserialize, Serialize, Clone)] -pub struct Star { - ra_deg: f64, - de_deg: f64, - mag: f64, -} - -/// Errors that can occur during star catalog reading. -#[derive(Error, Debug)] -pub enum CatalogError { - #[error("IO error: {0}")] - Io(#[from] io::Error), - #[error("CSV parsing error: {0}")] - Csv(#[from] csv::Error), - #[error("Missing field: {0}")] - MissingField(String), - #[error("Parse error: {0}")] - Parse(String), - #[error("Missing magnitude")] - MissingMagnitude, -} - -/// CLI Arguments -#[derive(Parser, Debug)] -#[command(author, version, about, long_about = None)] -struct Args { - /// Path to the Tycho-2 catalog file - #[arg( - short, - long, - value_name = "FILE", - default_value = "data/tycho2/catalog.dat" - )] - file: PathBuf, - - /// Number of stars to display (0 for all) - #[arg(short, long, default_value_t = 10)] - display_count: usize, - - /// Minimum Right Ascension (degrees) - #[arg(long, default_value_t = 0.0)] - min_ra: f64, - - /// Maximum Right Ascension (degrees) - #[arg(long, default_value_t = 360.0)] - max_ra: f64, - - /// Minimum Declination (degrees) - #[arg(long, default_value_t = -90.0)] - min_dec: f64, - - /// Maximum Declination (degrees) - #[arg(long, default_value_t = 90.0)] - max_dec: f64, - - /// Maximum visual magnitude (lower is brighter) - #[arg(short, long, default_value_t = 6.0)] - max_magnitude: f64, - - /// Output image width in pixels - #[arg(long, default_value_t = 800)] - width: u32, - - /// Output image height in pixels - #[arg(long, default_value_t = 600)] - height: u32, - - /// Output image file name - #[arg(short, long, default_value = "star_map.png")] - output: String, -} - -/// Reads and filters stars from the Tycho-2 catalog file. -/// https://heasarc.gsfc.nasa.gov/w3browse/all/tycho2.html -/// http://tdc-www.harvard.edu/catalogs/tycho2.format.html -pub fn read_stars>( - path: P, - min_ra: f64, - max_ra: f64, - min_dec: f64, - max_dec: f64, - max_magnitude: f64, -) -> Result, CatalogError> { - let file = File::open(path)?; - let reader = io::BufReader::new(file); - let mut csv_reader = ReaderBuilder::new() - .delimiter(b'|') - .has_headers(false) - .from_reader(reader); - - let mut stars = Vec::new(); - let mut skipped_rows = 0; - - for (i, result) in csv_reader.records().enumerate() { - let record = result?; - match parse_star_record(&record) { - Ok(star) => { - if star.ra_deg >= min_ra - && star.ra_deg <= max_ra - && star.de_deg >= min_dec - && star.de_deg <= max_dec - && star.mag <= max_magnitude - { - if i % 10000 == 0 { - println!( - "Star {}: RA={}, Dec={}, Mag={}", - i, star.ra_deg, star.de_deg, star.mag - ); - } - stars.push(star); - } - } - Err(e) => { - skipped_rows += 1; - if skipped_rows <= 10 { - println!("Skipping row {} due to error: {:?}", i, e); - println!("Problematic row: {:?}", record); - } else if skipped_rows == 11 { - println!("Further skipped rows will not be printed..."); - } - } - } - } - - println!("Total stars read and filtered: {}", stars.len()); - println!("Total rows skipped: {}", skipped_rows); - - Ok(stars) -} - -/// Parses a single record from the catalog into a Star struct. -fn parse_star_record(record: &csv::StringRecord) -> Result { - let ra = parse_field(record, 24, "RA")?; - let dec = parse_field(record, 25, "Dec")?; - let mag = parse_magnitude(record)?; - - Ok(Star { - ra_deg: ra, - de_deg: dec, - mag, - }) -} - -/// Parses a field from the record, returning a helpful error if parsing fails. -fn parse_field( - record: &csv::StringRecord, - index: usize, - field_name: &str, -) -> Result { - record - .get(index) - .ok_or_else(|| CatalogError::MissingField(field_name.to_string()))? - .trim() - .parse() - .map_err(|_| CatalogError::Parse(format!("Failed to parse {}", field_name))) -} - -fn parse_magnitude(record: &csv::StringRecord) -> Result { - let bt_mag = parse_field(record, 17, "BT magnitude").ok(); - let vt_mag = parse_field(record, 19, "VT magnitude").ok(); - - // println!("Debug: BT_Mag = {:?}, VT_Mag = {:?}", bt_mag, vt_mag); - - match (bt_mag, vt_mag) { - (Some(bt), Some(vt)) => { - let v_mag = vt - 0.090 * (bt - vt); - // println!("Debug: Calculated V_Mag = {:.3}", v_mag); - Ok(v_mag) - } - (None, Some(vt)) => { - // println!("Debug: Using VT_Mag as V_Mag = {:.3}", vt); - Ok(vt) - } - (Some(bt), None) => { - // println!("Debug: Using BT_Mag as V_Mag = {:.3}", bt); - Ok(bt) - } - (None, None) => Err(CatalogError::MissingMagnitude), - } -} - -fn render_stars( - stars: &[Star], - width: u32, - height: u32, - min_ra: f64, - max_ra: f64, - min_dec: f64, - max_dec: f64, -) -> ImageBuffer, Vec> { - let mut img = ImageBuffer::new(width, height); - - // Find the minimum and maximum magnitudes in the dataset - let min_mag = stars.iter().map(|s| s.mag).fold(f64::INFINITY, f64::min); - let max_mag = stars - .iter() - .map(|s| s.mag) - .fold(f64::NEG_INFINITY, f64::max); - - println!("Magnitude range: {:.3} to {:.3}", min_mag, max_mag); - - for star in stars { - let x = ((star.ra_deg - min_ra) / (max_ra - min_ra) * width as f64) as u32; - let y = ((star.de_deg - min_dec) / (max_dec - min_dec) * height as f64) as u32; - - if x < width && y < height { - // Inverse the magnitude scale (brighter stars have lower magnitudes) - let normalized_mag = (max_mag - star.mag) / (max_mag - min_mag); - - // Apply a non-linear scaling to emphasize brighter stars - let brightness = (normalized_mag.powf(2.5) * 255.0) as u8; - - let color = Rgb([brightness, brightness, brightness]); - img.put_pixel(x, y, color); - } - } - - img -} - -fn main() -> Result<(), Box> { - let args = Args::parse(); - - println!("Reading stars from: {:?}", args.file); - println!("RA range: {} to {}", args.min_ra, args.max_ra); - println!("Dec range: {} to {}", args.min_dec, args.max_dec); - println!("Max magnitude: {}", args.max_magnitude); - - let start = Instant::now(); - let stars = read_stars( - args.file, - args.min_ra, - args.max_ra, - args.min_dec, - args.max_dec, - args.max_magnitude, - )?; - let read_duration = start.elapsed(); - - println!("Time taken to read and filter stars: {:?}", read_duration); - println!("Total stars after filtering: {}", stars.len()); - - println!("\nFirst {} stars:", args.display_count); - for (i, star) in stars.iter().enumerate() { - if i >= args.display_count && args.display_count != 0 { - break; - } - println!( - "Star {}: RA={:.2}, Dec={:.2}, Mag={:.2}", - i, star.ra_deg, star.de_deg, star.mag - ); - } - - let render_start = Instant::now(); - let img = render_stars( - &stars, - args.width, - args.height, - args.min_ra, - args.max_ra, - args.min_dec, - args.max_dec, - ); - img.save(&args.output)?; - let render_duration = render_start.elapsed(); - - println!("Time taken to render and save image: {:?}", render_duration); - println!("Image saved as: {}", args.output); - println!("Total time elapsed: {:?}", start.elapsed()); - - Ok(()) -} diff --git a/src/parsing_utils.rs b/src/parsing_utils.rs index f2304e0..2f9bdea 100644 --- a/src/parsing_utils.rs +++ b/src/parsing_utils.rs @@ -30,8 +30,7 @@ pub enum CatalogError { /// calculations make use of trig functions which deal in radians - this will be our default mode pub fn read_stars>( path: P, - center: &EquatorialCoords, - filter_grid: &HashSet, + filter_grid: HashSet, max_magnitude: f64, ) -> Result, CatalogError> { let file = File::open(path)?; diff --git a/src/rendering.rs b/src/rendering.rs index 6f0ff4f..3d1e334 100644 --- a/src/rendering.rs +++ b/src/rendering.rs @@ -1,10 +1,67 @@ -use std::f64::consts::PI; -use image::{ImageBuffer, Rgb}; -use nalgebra::SMatrix; -use spec_math::cephes64::j1; use crate::coords::EquatorialCoords; use crate::star::Star; +use image::{ImageBuffer, Rgb}; +use nalgebra::SMatrix; +// use spec_math::cephes64::j1; +// use std::f64::consts::PI; + +pub fn render_stars( + stars: Vec, + width: u32, + height: u32, + fov_center: EquatorialCoords, + fov_w: f64, + fov_h: f64, + fov_roll: f64, +) -> ImageBuffer, Vec> { + let mut img = ImageBuffer::new(width, height); + + // Find the minimum and maximum magnitudes in the dataset + let min_mag = stars.iter().map(|s| s.mag).fold(f64::INFINITY, f64::min); + let max_mag = stars + .iter() + .map(|s| s.mag) + .fold(f64::NEG_INFINITY, f64::max); + let z_roll_mat = SMatrix::::new( + fov_roll.cos(), -fov_roll.sin(), + fov_roll.sin(), fov_roll.cos(), + ); + let pixel_ratio_w = width as f64 / fov_w; + let pixel_ratio_h = height as f64 / fov_h; + let x_offset = width as f64 / 2.0; + let y_offset = width as f64 / 2.0; + + println!("Attempting to render {} stars", stars.len()); + let mut stars_rendered = 0; + + for star in stars { + let std_star_coords = star.coords.to_standard(fov_center); + let std_star_mat = SMatrix::::new(std_star_coords.x, std_star_coords.y); + let final_star_pos = z_roll_mat * std_star_mat; + + let x = final_star_pos.x * pixel_ratio_w + x_offset; + let y = final_star_pos.y * pixel_ratio_h + y_offset; + + if x < 0.0 || x > width as f64 || y < 0.0 || y > height as f64 { + continue; + } + + // Inverse the magnitude scale (brighter stars have lower magnitudes) + let normalized_mag = (max_mag - star.mag) / (max_mag - min_mag); + // Apply a non-linear scaling to emphasize brighter stars + let brightness = (normalized_mag.powf(2.5) * 255.0) as u8; + let color = Rgb([brightness, brightness, brightness]); + + img.put_pixel(x as u32, y as u32, color); + stars_rendered = stars_rendered + 1; + } + + println!("Actually rendered {} stars", stars_rendered); + img +} + +/* /// Airy disc radius - calculate physical radius, then convert to pixel scale pub fn calc_airy_disc_radius(lambda: f64, aperture_diameter: f64, focal_length: f64, pixel_size_m: f64) -> f64 { // Physical radius on the sensor in meters @@ -67,55 +124,4 @@ fn apply_psf(image: &mut [Vec], star_x: usize, star_y: usize, intensity: f6 } } } -} - -pub fn render_stars( - stars: &Vec, - width: u32, - height: u32, - center: &EquatorialCoords, - fov_w: f64, - fov_h: f64, - roll: f64, -) -> ImageBuffer, Vec> { - let mut img = ImageBuffer::new(width, height); - - // Find the minimum and maximum magnitudes in the dataset - let min_mag = stars.iter().map(|s| s.mag).fold(f64::INFINITY, f64::min); - let max_mag = stars - .iter() - .map(|s| s.mag) - .fold(f64::NEG_INFINITY, f64::max); - let z_roll_mat = SMatrix::::new( - roll.cos(), -roll.sin(), - roll.sin(), roll.cos(), - ); - let pixel_ratio_w = width as f64 / fov_w; - let pixel_ratio_h = height as f64 / fov_h; - let x_offset = width as f64 / 2.0; - let y_offset = width as f64 / 2.0; - - for star in stars { - let std_star_coords = star.coords.to_standard(center); - let std_star_mat = SMatrix::::new(std_star_coords.x, std_star_coords.y); - let final_star_pos = z_roll_mat * std_star_mat; - - let x = final_star_pos.x * pixel_ratio_w + x_offset; - let y = final_star_pos.y * pixel_ratio_h + y_offset; - println!("(x, y) | ({},{})", x, y); - if (x < 0.0 || x > width as f64 || y < 0.0 || y > height as f64) { - println!("Discarding star at ({}, {})", x, y); - continue; - } - - // Inverse the magnitude scale (brighter stars have lower magnitudes) - let normalized_mag = (max_mag - star.mag) / (max_mag - min_mag); - // Apply a non-linear scaling to emphasize brighter stars - let brightness = (normalized_mag.powf(2.5) * 255.0) as u8; - let color = Rgb([brightness, brightness, brightness]); - - img.put_pixel(x as u32, y as u32, color); - } - - img -} \ No newline at end of file +}*/ diff --git a/star_map.png b/star_map.png deleted file mode 100644 index 687236cc8fb089ec3ecfe85daab65f1e6d4f67f7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27418 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 Z&-1@4yZxnZ{C`)Dz2@>4M&C03{{yjPS2+Lx diff --git a/star_map5.png b/star_map5.png deleted file mode 100644 index 496cc4b4923f5440e012cb63f6ecadd6a7367be3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20145 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

YVDV}m%V~J5 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 Date: Fri, 6 Sep 2024 23:15:10 -0700 Subject: [PATCH 05/10] Progress for Chris --- Cargo.lock | 146 ++++++++++-- Cargo.toml | 2 + README.md | 12 +- pyproject.toml | 1 + src/bin/airy_renderer.rs | 441 +++++++++++++++++++++++++++++++++++ src/bin/gaussian_renderer.rs | 229 ++++++++++++++++++ 6 files changed, 811 insertions(+), 20 deletions(-) create mode 100644 src/bin/airy_renderer.rs create mode 100644 src/bin/gaussian_renderer.rs diff --git a/Cargo.lock b/Cargo.lock index 7b9b022..82e2d09 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -75,6 +75,15 @@ version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da" +[[package]] +name = "approx" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6" +dependencies = [ + "num-traits", +] + [[package]] name = "arbitrary" version = "1.3.2" @@ -159,9 +168,9 @@ checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" [[package]] name = "bytemuck" -version = "1.17.0" +version = "1.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fd4c6dcc3b0aea2f5c0b4b82c2b15fe39ddbc76041a310848f4706edf76bb31" +checksum = "773d90827bc3feecfb67fab12e24de0749aad83c74b9504ecde46237b5cd24e2" [[package]] name = "byteorder" @@ -177,9 +186,9 @@ checksum = "8f1fe948ff07f4bd06c30984e69f5b4899c516a3ef74f34df92a2df2ab535495" [[package]] name = "cc" -version = "1.1.15" +version = "1.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57b6a275aa2903740dc87da01c62040406b8812552e97129a63ea8850a17c6e6" +checksum = "e9d013ecb737093c0e86b151a7b837993cf9ec6c502946cfb44bedc392421e0b" dependencies = [ "jobserver", "libc", @@ -204,9 +213,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "clap" -version = "4.5.16" +version = "4.5.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed6719fffa43d0d87e5fd8caeab59be1554fb028cd30edc88fc4369b17971019" +checksum = "3e5a21b8495e732f1b3c364c9949b201ca7bae518c502c80256c96ad79eaf6ac" dependencies = [ "clap_builder", "clap_derive", @@ -214,9 +223,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.15" +version = "4.5.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "216aec2b177652e3846684cbfe25c9964d18ec45234f0f5da5157b207ed1aab6" +checksum = "8cf2dd12af7a047ad9d6da2b6b249759a22a7abc0f474c1dae1777afa4b21a73" dependencies = [ "anstream", "anstyle", @@ -455,9 +464,9 @@ checksum = "44feda355f4159a7c757171a77de25daf6411e217b4cabd03bd6650690468126" [[package]] name = "indexmap" -version = "2.4.0" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93ead53efc7ea8ed3cfb0c79fc8023fbb782a5432b52830b6518941cebe6505c" +checksum = "68b900aa2f7301e21c36462b170ee99994de34dff39a4a6a528e80e7376d07e5" dependencies = [ "equivalent", "hashbrown", @@ -564,6 +573,16 @@ dependencies = [ "imgref", ] +[[package]] +name = "matrixmultiply" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9380b911e3e96d10c1f415da0876389aaf1b56759054eeb0de7df940c456ba1a" +dependencies = [ + "autocfg", + "rawpointer", +] + [[package]] name = "maybe-rayon" version = "0.1.1" @@ -613,6 +632,33 @@ dependencies = [ "adler2", ] +[[package]] +name = "nalgebra" +version = "0.33.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c4b5f057b303842cf3262c27e465f4c303572e7f6b0648f60e16248ac3397f4" +dependencies = [ + "approx", + "matrixmultiply", + "nalgebra-macros", + "num-complex", + "num-rational", + "num-traits", + "simba", + "typenum", +] + +[[package]] +name = "nalgebra-macros" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "254a5372af8fc138e36684761d3c0cdb758a4410e938babcff1c860ce14ddbfc" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "new_debug_unreachable" version = "1.0.6" @@ -645,6 +691,15 @@ dependencies = [ "num-traits", ] +[[package]] +name = "num-complex" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" +dependencies = [ + "num-traits", +] + [[package]] name = "num-derive" version = "0.4.2" @@ -925,6 +980,12 @@ dependencies = [ "rgb", ] +[[package]] +name = "rawpointer" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" + [[package]] name = "rayon" version = "1.10.0" @@ -947,9 +1008,9 @@ dependencies = [ [[package]] name = "rgb" -version = "0.8.48" +version = "0.8.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f86ae463694029097b846d8f99fd5536740602ae00022c0c50c5600720b2f71" +checksum = "57397d16646700483b67d2dd6511d79318f9d057fdbd21a4066aeac8b41d310a" dependencies = [ "bytemuck", ] @@ -960,6 +1021,15 @@ version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" +[[package]] +name = "safe_arch" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3460605018fdc9612bce72735cba0d27efbcd9904780d44c7e3a9948f96148a" +dependencies = [ + "bytemuck", +] + [[package]] name = "scopeguard" version = "1.2.0" @@ -1001,6 +1071,19 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" +[[package]] +name = "simba" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3a386a501cd104797982c15ae17aafe8b9261315b5d07e3ec803f2ea26be0fa" +dependencies = [ + "approx", + "num-complex", + "num-traits", + "paste", + "wide", +] + [[package]] name = "simd-adler32" version = "0.3.7" @@ -1022,6 +1105,12 @@ version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +[[package]] +name = "spec_math" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1b214a4d084b0d4995f4237f681d6018f76c0aaeee52627d521667a29c15cab" + [[package]] name = "spin" version = "0.9.8" @@ -1051,9 +1140,9 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "syn" -version = "2.0.76" +version = "2.0.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "578e081a14e0cefc3279b0472138c513f37b41a08d5a3cca9b6e4e8ceb6cd525" +checksum = "9f35bcdf61fd8e7be6caf75f429fdca8beb3ed76584befb503b1569faee373ed" dependencies = [ "proc-macro2", "quote", @@ -1144,6 +1233,25 @@ dependencies = [ "winnow", ] +[[package]] +name = "tycho2_renderer" +version = "0.1.0" +dependencies = [ + "clap", + "csv", + "image", + "nalgebra", + "serde", + "spec_math", + "thiserror", +] + +[[package]] +name = "typenum" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" + [[package]] name = "unicode-ident" version = "1.0.12" @@ -1246,6 +1354,16 @@ version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082" +[[package]] +name = "wide" +version = "0.7.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b828f995bf1e9622031f8009f8481a85406ce1f4d4588ff746d872043e855690" +dependencies = [ + "bytemuck", + "safe_arch", +] + [[package]] name = "windows-sys" version = "0.52.0" diff --git a/Cargo.toml b/Cargo.toml index 11803f2..3683a67 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -16,8 +16,10 @@ exclude = [ clap = { version = "4.5.16", features = ["derive"] } csv = "1.3.0" image = "0.25.2" +nalgebra = "0.33.0" pyo3 = "0.22.2" serde = { version = "1.0.209", features = ["derive"] } +spec_math = "0.1.5" thiserror = "1.0.63" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/README.md b/README.md index 3194848..6e771bf 100644 --- a/README.md +++ b/README.md @@ -12,15 +12,15 @@ Download catalog.dat from there, put it in data/tycho2/ ├── Cargo.toml ├── README.md ├── data -│   └── tycho2 -│   ├── catalog.dat -│   ├── index.dat -│   ├── suppl_1.dat -│   └── suppl_2.dat +│ └── tycho2 +│ ├── catalog.dat +│ ├── index.dat +│ ├── suppl_1.dat +│ └── suppl_2.dat ├── poetry.lock ├── pyproject.toml ├── src -│   └── main.rs +│ └── main.rs ``` # Rust diff --git a/pyproject.toml b/pyproject.toml index c8beae6..4437fbd 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -15,6 +15,7 @@ classifiers = [ dynamic = ["version"] authors = [ { name="Sulaiman Khan Ghori", email="sulaiman.ghori@outlook.com" }, + { name="Layton Miller", email="layton.r.miller@gmail.com" }, ] description = "Generate images of the sky w/ accurate stars for star sensor simulation" readme = "README.md" diff --git a/src/bin/airy_renderer.rs b/src/bin/airy_renderer.rs new file mode 100644 index 0000000..6a0a69f --- /dev/null +++ b/src/bin/airy_renderer.rs @@ -0,0 +1,441 @@ +use std::f64::consts::PI; +use clap::Parser; +use csv::ReaderBuilder; +use image::{ImageBuffer, Rgb}; +use nalgebra::SMatrix; +use serde::{Deserialize, Serialize}; +use spec_math::cephes64::j1; +use std::fs::File; +use std::io; +use std::path::PathBuf; +use std::time::Instant; +use thiserror::Error; + +/// Represents a star with its right ascension, declination, and magnitude. +#[derive(Debug, Deserialize, Serialize, Clone)] +pub struct Star { + coords: EquatorialCoords, + mag: f64, +} + +#[derive(Debug, Deserialize, Serialize, Clone)] +pub struct EquatorialCoords { + ra_deg: f64, + dec_deg: f64, +} + +pub struct CartesianCoords { + x: f64, + y: f64, + z: f64, +} + +pub struct BoundsEquatorial { + max_ra: f64, + min_ra: f64, + max_dec: f64, + min_dec: f64, +} + +/// Errors that can occur during star catalog reading. +#[derive(Error, Debug)] +pub enum CatalogError { + #[error("IO error: {0}")] + Io(#[from] io::Error), + #[error("CSV parsing error: {0}")] + Csv(#[from] csv::Error), + #[error("Missing field: {0}")] + MissingField(String), + #[error("Parse error: {0}")] + Parse(String), + #[error("Missing magnitude")] + MissingMagnitude, +} + +/// CLI Arguments +#[derive(Parser, Debug)] +#[command(author, version, about, long_about = None)] +struct Args { + /// Path to the Tycho-2 catalog file + #[arg( + short, + long, + value_name = "FILE", + default_value = "data/tycho2/catalog.dat" + )] + file: PathBuf, + + /// Number of stars to display (0 for all) + #[arg(short, long, default_value_t = 10)] + display_count: usize, + + /// Right Ascension of camera view center point (degrees) + #[arg(long, default_value_t = 0.0)] + center_ra: f64, + + /// Declination of camera view center point (degrees) + #[arg(long, default_value_t = 360.0)] + center_dec: f64, + + /// Width of field of view. With 0 roll, corresponds to right ascension (degrees) + #[arg(long, default_value_t = 0.0)] + fov_w_deg: f64, + + /// Height of field of view. With 0 roll, corresponds to declination (degrees) + #[arg(long, default_value_t = 0.0)] + fov_h_deg: f64, + + /// Roll of the camera view (degrees) + #[arg(long, default_value_t = 0.0)] + roll_deg: f64, + + /// Maximum visual magnitude (lower is brighter) + #[arg(long, default_value_t = 1.0)] + max_magnitude: f64, + + /// B magnitude wavelength - only used if using airy disc rendering (nanometers) + #[arg(long, default_value_t = 442)] + lambda_b_nm: f64, + + /// V magnitude wavelength - only used if using airy disc rendering (nanometers) + #[arg(long, default_value_t = 540)] + lambda_v_nm: f64, + + /// Camera pixel size in meters (should be tiny, like e-6). Default is 3e-6, assuming higher + /// precision optics + #[arg(long, default_value_t = 3e-6)] + pixel_size_m: f64, + + /// Output image width in pixels + #[arg(long, default_value_t = 800)] + width: u32, + + /// Output image height in pixels + #[arg(long, default_value_t = 600)] + height: u32, + + /// Output image file name + #[arg(short, long, default_value = "star_map.png")] + output: String, +} + +pub fn to_cartesian(src: EquatorialCoords) -> CartesianCoords { + CartesianCoords { + x: src.dec_deg.cos() * src.ra_deg.cos(), + y: src.dec_deg.cos() * src.ra_deg.sin(), + z: src.dec_deg.sin(), + } +} + +pub fn to_equatorial(src: CartesianCoords) -> EquatorialCoords { + EquatorialCoords { + ra_deg: src.y.atan2(src.x), + dec_deg: src.z.asin(), + } +} + +pub fn fov_outer_bounds( + center_ra_deg: f64, + center_dec_deg: f64, + fov_w_deg: f64, + fov_h_deg: f64, + roll_deg: f64, +) -> BoundsEquatorial { + // Calculate FOV bounds in cartesian coords + let fov_w_half = fov_w_deg / 2.0; + let fov_h_half = fov_h_deg / 2.0; + + let fov: [CartesianCoords; 4] = [ + to_cartesian(EquatorialCoords { + ra_deg: center_ra_deg - fov_w_half, + dec_deg: center_dec_deg + fov_h_half, + }), + to_cartesian(EquatorialCoords { + ra_deg: center_ra_deg + fov_w_half, + dec_deg: center_dec_deg + fov_h_half, + }), + to_cartesian(EquatorialCoords { + ra_deg: center_ra_deg - fov_w_half, + dec_deg: center_dec_deg - fov_h_half, + }), + to_cartesian(EquatorialCoords { + ra_deg: center_ra_deg + fov_w_half, + dec_deg: center_dec_deg - fov_h_half, + }) + ]; + + // Generate roll matrix and apply roll to coordinates, resulting in rolled FOV corner points + let roll_matrix: SMatrix = SMatrix::new( + roll_deg.cos(), -roll_deg.sin(), 0.0, + roll_deg.sin(), roll_deg.cos(), 0.0, + 0.0, 0.0, 1.0, + ); + + let fov_rolled: [EquatorialCoords; 4] = fov + // Apply the roll matrix, giving new cartesian coords of rolled FOV (use unit sphere z of 1 + .map(|pt| -> SMatrix { roll_matrix * SMatrix::new(pt.x, pt.y, 1) }) + // Convert rolled coords back into equatorial + .map(|rolled| to_equatorial( + CartesianCoords { x: rolled[(0,0)], y: rolled[(1,0)], z: rolled[(2,0)]} + )); + + // Extract ra and dec values as sets to find min/max and return as Bounds + let rolled_ra_vals = fov_rolled.iter().map(|c| c.ra_deg); + let rolled_dec_vals = fov_rolled.iter().map(|c| c.dec_deg); + + BoundsEquatorial { + max_ra: rolled_ra_vals.iter().fold(f64::NEG_INFINITY, f64::max), + min_ra: rolled_ra_vals.iter().fold(f64::INFINITY, f64::min), + max_dec: rolled_dec_vals.iter().fold(f64::NEG_INFINITY, f64::max), + min_dec: rolled_dec_vals.iter().fold(f64::INFINITY, f64::min), + } +} + +/// Reads and filters stars from the Tycho-2 catalog file. +/// https://heasarc.gsfc.nasa.gov/w3browse/all/tycho2.html +/// http://tdc-www.harvard.edu/catalogs/tycho2.format.html +pub fn read_stars>( + path: P, + center_ra_deg: f64, + center_dec_deg: f64, + fov_w_deg: f64, + fov_h_deg: f64, + roll_deg: f64, + max_magnitude: f64, +) -> Result, CatalogError> { + let file = File::open(path)?; + let reader = io::BufReader::new(file); + let mut csv_reader = ReaderBuilder::new() + .delimiter(b'|') + .has_headers(false) + .from_reader(reader); + + let mut stars = Vec::new(); + let mut skipped_rows = 0; + // Define bounding box of FOV in case of roll. + let bound_min_ra: f64 = center_ra_deg - (fov_w_deg / 2.0); + let bound_max_ra: f64 = center_ra_deg + (fov_w_deg / 2.0); + let bound_min_dec: f64 = center_dec_deg - (fov_h_deg / 2.0); + let bound_max_dec: f64 = center_dec_deg + (fov_h_deg / 2.0); + + println!("bound_min_ra {}", bound_min_ra); + println!("bound_max_ra {}", bound_max_ra); + println!("bound_min_dec {}", bound_min_dec); + println!("bound_max_dec {}", bound_max_dec); + // Build bounding box based on camera roll - outer box containing rolled FOV + // Filter stars out of the outer bounding box before doing testing whether they fit inside the + // actual FOV + let bounds = fov_outer_bounds(center_ra_deg, center_dec_deg, fov_w_deg, fov_h_deg, roll_deg); + /* + for (i, result) in csv_reader.records().enumerate() { + let record = result?; + match parse_star_record(&record) { + Ok(star) => { + if star.ra_deg >= min_ra + && star.ra_deg <= max_ra + && star.de_deg >= min_dec + && star.de_deg <= max_dec + && star.mag <= max_magnitude + { + if i % 10000 == 0 { + println!( + "Star {}: RA={}, Dec={}, Mag={}", + i, star.ra_deg, star.de_deg, star.mag + ); + } + stars.push(star); + } + } + Err(e) => { + skipped_rows += 1; + if skipped_rows <= 10 { + println!("Skipping row {} due to error: {:?}", i, e); + println!("Problematic row: {:?}", record); + } else if skipped_rows == 11 { + println!("Further skipped rows will not be printed..."); + } + } + } + } + */ + println!("Total stars read and filtered: {}", stars.len()); + println!("Total rows skipped: {}", skipped_rows); + + Ok(stars) +} + +/// Parses a single record from the catalog into a Star struct. +fn parse_star_record(record: &csv::StringRecord) -> Result { + let ra = parse_field(record, 24, "RA")?; + let dec = parse_field(record, 25, "Dec")?; + let mag = parse_magnitude(record)?; + + Ok(Star { + coords: EquatorialCoords { + ra_deg: ra, + dec_deg: dec, + }, + mag, + }) +} + +/// Parses a field from the record, returning a helpful error if parsing fails. +fn parse_field( + record: &csv::StringRecord, + index: usize, + field_name: &str, +) -> Result { + record + .get(index) + .ok_or_else(|| CatalogError::MissingField(field_name.to_string()))? + .trim() + .parse() + .map_err(|_| CatalogError::Parse(format!("Failed to parse {}", field_name))) +} + +/// Airy disc radius - calculate physical radius, then convert to pixel scale +fn calc_airy_disc_radius(lambda: f64, aperture_diameter: f64, focal_length: f64, pixel_size_m: f64) -> f64 { + // Physical radius on the sensor in meters + let size = 1.22 * lambda * focal_length / aperture_diameter; + // Return radius in pixels + size / pixel_size_m +} + +/// Spatial frequency scaled as related to the diffraction pattern. Ooh! Ahh! +fn calc_spatial_frequency(lambda: f64, aperture_diameter: f64, focal_length: f64) -> f64 { + 2.0 * PI / lambda * aperture_diameter / focal_length +} + +/// Calculate the airy disc intensity at a given radius. Spatial frequency should be pre-calcualted +/// to avoid extra operations per loop. It is given by: +/// 2.0 * PI / lambda * aperture_diameter / focal_length +/// where lambda is wavelength of light. All arguments are in meters. +/// +/// Airy Disc formula: +/// I(r) = I_0 * (2 * J1(kr) / kr)^2 +/// Where: +/// I(r) = Intensity at distance r from the center of the airy disc +/// I_0 = Max intensity at the center of the disc (the star itself/point light source, i.e. r = 0) +/// J1(x) = First order Bessel function of the first kind (the magic sauce) +/// k = 2 * pi / wavelength * (aperture_diameter / focal_length) -- incorporates camera params +/// r = Radial distance from the center of the disc + +fn calc_airy_intensity_at_radius(r: f64, spatial_frequency: f64) -> f64 { + // Bessel argument, which will give us our intensity at radius r + let kr = spatial_frequency * r; + + // At the center, we're at full intensity + if (kr == 0.0) { + return 1.0; + } + + let bessel = j1(kr); + let intensity = (2.0 * bessel / kr).powi(2); + intensity +} + +fn parse_magnitude(record: &csv::StringRecord) -> Result { + let bt_mag = parse_field(record, 17, "BT magnitude").ok(); + let vt_mag = parse_field(record, 19, "VT magnitude").ok(); + + // println!("Debug: BT_Mag = {:?}, VT_Mag = {:?}", bt_mag, vt_mag); + + match (bt_mag, vt_mag) { + (Some(bt), Some(vt)) => { + let v_mag = vt - 0.090 * (bt - vt); + // println!("Debug: Calculated V_Mag = {:.3}", v_mag); + Ok(v_mag) + } + (None, Some(vt)) => { + // println!("Debug: Using VT_Mag as V_Mag = {:.3}", vt); + Ok(vt) + } + (Some(bt), None) => { + // println!("Debug: Using BT_Mag as V_Mag = {:.3}", bt); + Ok(bt) + } + (None, None) => Err(CatalogError::MissingMagnitude), + } +} + +fn apply_psf(image: &mut [Vec], star_x: usize, star_y: usize, intensity: f64, radius: f64, wavelength: f64, aperture_diameter: f64, focal_length: f64) { + let size = (2.0 * radius).ceil() as usize; + let half_size = size / 2; + + for dx in 0..size { + for dy in 0..size { + let x = star_x as isize + dx as isize - half_size as isize; + let y = star_y as isize + dy as isize - half_size as isize; + + // Ensure the coordinates are within image bounds + if x >= 0 && x < image.len() as isize && y >= 0 && y < image[0].len() as isize { + let r = (((dx as f64 - half_size as f64).powi(2) + (dy as f64 - half_size as f64).powi(2)).sqrt()); + let airy_value = airy_disc_intensity(r, wavelength, aperture_diameter, focal_length); + + // Accumulate intensity at the pixel + image[x as usize][y as usize] += intensity * airy_value; + } + } + } +} + + +fn render_stars( + stars: &[Star], + output_width: u32, + output_height: u32, + center_ra_deg: f64, + center_dec_deg: f64, + fov_w_deg: f64, + fov_h_deg: f64, +) -> ImageBuffer, Vec> { + let mut img = ImageBuffer::new(output_width, output_height); + +} + +fn main() -> Result<(), Box> { + let args = Args::parse(); + + println!("Reading stars from: {:?}", args.file); + println!("Center - RA (deg): {}", args.center_ra); + println!("Center - Dec (deg): {}", args.center_dec); + println!("FOV width (deg): {}", args.fov_w_deg); + println!("FOV height (deg): {}", args.fov_h_deg); + println!("Roll (deg): {}", args.roll_deg); + println!("Max magnitude: {}", args.max_magnitude); + + let start = Instant::now(); + let stars = read_stars( + args.file, + args.center_ra, + args.center_dec, + args.fov_w_deg, + args.fov_h_deg, + args.roll_deg, + args.max_magnitude, + )?; + let read_duration = start.elapsed(); + + + + +/* + let render_start = Instant::now(); + let img = render_stars( + &stars, + args.width, + args.height, + args.min_ra, + args.max_ra, + args.min_dec, + args.max_dec, + ); + img.save(&args.output)?; + let render_duration = render_start.elapsed(); +*/ + println!("Time taken to render and save image: {:?}", render_duration); + println!("Image saved as: {}", args.output); + println!("Total time elapsed: {:?}", start.elapsed()); + + Ok(()) +} \ No newline at end of file diff --git a/src/bin/gaussian_renderer.rs b/src/bin/gaussian_renderer.rs new file mode 100644 index 0000000..a27f5e2 --- /dev/null +++ b/src/bin/gaussian_renderer.rs @@ -0,0 +1,229 @@ +use std::fs::File; +use std::io; +use std::path::PathBuf; + +/// Represents a star with its right ascension, declination, and magnitude. +#[derive(Debug, Deserialize, Serialize, Clone)] +pub struct Star { + ra_deg: f64, + de_deg: f64, + mag: f64, +} + +/// Errors that can occur during star catalog reading. +#[derive(Error, Debug)] +pub enum CatalogError { + #[error("IO error: {0}")] + Io(#[from] io::Error), + #[error("CSV parsing error: {0}")] + Csv(#[from] csv::Error), + #[error("Missing field: {0}")] + MissingField(String), + #[error("Parse error: {0}")] + Parse(String), + #[error("Missing magnitude")] + MissingMagnitude, +} + +/// CLI Arguments +#[derive(Parser, Debug)] +#[command(author, version, about, long_about = None)] +struct Args { + /// Path to the Tycho-2 catalog file + #[arg( + short, + long, + value_name = "FILE", + default_value = "data/tycho2/catalog.dat" + )] + file: PathBuf, + + /// Number of stars to display (0 for all) + #[arg(short, long, default_value_t = 10)] + display_count: usize, + + /// Minimum Right Ascension (degrees) + #[arg(long, default_value_t = 0.0)] + min_ra: f64, + + /// Maximum Right Ascension (degrees) + #[arg(long, default_value_t = 360.0)] + max_ra: f64, + + /// Minimum Declination (degrees) + #[arg(long, default_value_t = -90.0)] + min_dec: f64, + + /// Maximum Declination (degrees) + #[arg(long, default_value_t = 90.0)] + max_dec: f64, + + /// Maximum visual magnitude (lower is brighter) + #[arg(short, long, default_value_t = 6.0)] + max_magnitude: f64, + + /// Output image width in pixels + #[arg(long, default_value_t = 800)] + width: u32, + + /// Output image height in pixels + #[arg(long, default_value_t = 600)] + height: u32, + + /// Output image file name + #[arg(short, long, default_value = "star_map.png")] + output: String, +} + +/// Reads and filters stars from the Tycho-2 catalog file. +/// https://heasarc.gsfc.nasa.gov/w3browse/all/tycho2.html +/// http://tdc-www.harvard.edu/catalogs/tycho2.format.html +pub fn read_stars>( + path: P, + min_ra: f64, + max_ra: f64, + min_dec: f64, + max_dec: f64, + max_magnitude: f64, +) -> Result, CatalogError> { + let file = File::open(path)?; + let reader = io::BufReader::new(file); + let mut csv_reader = ReaderBuilder::new() + .delimiter(b'|') + .has_headers(false) + .from_reader(reader); + + let mut stars = Vec::new(); + let mut skipped_rows = 0; + + for (i, result) in csv_reader.records().enumerate() { + let record = result?; + match parse_star_record(&record) { + Ok(star) => { + if star.ra_deg >= min_ra + && star.ra_deg <= max_ra + && star.de_deg >= min_dec + && star.de_deg <= max_dec + && star.mag <= max_magnitude + { + if i % 10000 == 0 { + println!( + "Star {}: RA={}, Dec={}, Mag={}", + i, star.ra_deg, star.de_deg, star.mag + ); + } + stars.push(star); + } + } + Err(e) => { + skipped_rows += 1; + if skipped_rows <= 10 { + println!("Skipping row {} due to error: {:?}", i, e); + println!("Problematic row: {:?}", record); + } else if skipped_rows == 11 { + println!("Further skipped rows will not be printed..."); + } + } + } + } + + println!("Total stars read and filtered: {}", stars.len()); + println!("Total rows skipped: {}", skipped_rows); + + Ok(stars) +} + +/// Parses a single record from the catalog into a Star struct. +fn parse_star_record(record: &csv::StringRecord) -> Result { + let ra = parse_field(record, 24, "RA")?; + let dec = parse_field(record, 25, "Dec")?; + let mag = parse_magnitude(record)?; + + Ok(Star { + ra_deg: ra, + de_deg: dec, + mag, + }) +} + +/// Parses a field from the record, returning a helpful error if parsing fails. +fn parse_field( + record: &csv::StringRecord, + index: usize, + field_name: &str, +) -> Result { + record + .get(index) + .ok_or_else(|| CatalogError::MissingField(field_name.to_string()))? + .trim() + .parse() + .map_err(|_| CatalogError::Parse(format!("Failed to parse {}", field_name))) +} + +fn parse_magnitude(record: &csv::StringRecord) -> Result { + let bt_mag = parse_field(record, 17, "BT magnitude").ok(); + let vt_mag = parse_field(record, 19, "VT magnitude").ok(); + + // println!("Debug: BT_Mag = {:?}, VT_Mag = {:?}", bt_mag, vt_mag); + + match (bt_mag, vt_mag) { + (Some(bt), Some(vt)) => { + let v_mag = vt - 0.090 * (bt - vt); + // println!("Debug: Calculated V_Mag = {:.3}", v_mag); + Ok(v_mag) + } + (None, Some(vt)) => { + // println!("Debug: Using VT_Mag as V_Mag = {:.3}", vt); + Ok(vt) + } + (Some(bt), None) => { + // println!("Debug: Using BT_Mag as V_Mag = {:.3}", bt); + Ok(bt) + } + (None, None) => Err(CatalogError::MissingMagnitude), + } +} + +/// Gaussian blurring function +fn gaussian(x: f64, y: f64, sigma: f64) -> f64 { + let exponent = -(x * x + y * y) / (2.0 * sigma * sigma); + (1.0 / (2.0 * PI * sigma * sigma)) * (-exponent).exp() +} + + + +fn apply_psf(image: &mut [Vec], star_x: usize, star_y: usize, intensity: f64, radius: f64, wavelength: f64, aperture_diameter: f64, focal_length: f64) { + let size = (2.0 * radius).ceil() as usize; + let half_size = size / 2; + + for dx in 0..size { + for dy in 0..size { + let x = star_x as isize + dx as isize - half_size as isize; + let y = star_y as isize + dy as isize - half_size as isize; + + // Ensure the coordinates are within image bounds + if x >= 0 && x < image.len() as isize && y >= 0 && y < image[0].len() as isize { + let r = (((dx as f64 - half_size as f64).powi(2) + (dy as f64 - half_size as f64).powi(2)).sqrt()); + let airy_value = airy_intensity(r, wavelength, aperture_diameter, focal_length); + + // Accumulate intensity at the pixel + image[x as usize][y as usize] += intensity * airy_value; + } + } + } +} + + +fn render_stars( + stars: &[Star], + width: u32, + height: u32, + min_ra: f64, + max_ra: f64, + min_dec: f64, + max_dec: f64, +) { + let mut img = ImageBuffer::new(width, height); + + +} \ No newline at end of file From 2a2f3eb682fee4e0a9834acf95f76f12134f319b Mon Sep 17 00:00:00 2001 From: Layton Miller Date: Mon, 9 Sep 2024 23:17:59 -0700 Subject: [PATCH 06/10] Major updates -- will squash this later --- Cargo.lock | 15 +- src/bin/airy_renderer.rs | 441 --------------------------------------- src/bin/psf_renderer.rs | 136 ++++++++++++ src/coords.rs | 116 ++++++++++ src/fov.rs | 122 +++++++++++ src/lib.rs | 6 + src/parsing_utils.rs | 126 +++++++++++ src/rendering.rs | 132 ++++++++++++ src/star.rs | 9 + 9 files changed, 649 insertions(+), 454 deletions(-) delete mode 100644 src/bin/airy_renderer.rs create mode 100644 src/bin/psf_renderer.rs create mode 100644 src/coords.rs create mode 100644 src/fov.rs create mode 100644 src/parsing_utils.rs create mode 100644 src/rendering.rs create mode 100644 src/star.rs diff --git a/Cargo.lock b/Cargo.lock index 82e2d09..ddeaea2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1127,8 +1127,10 @@ dependencies = [ "clap", "csv", "image", + "nalgebra", "pyo3", "serde", + "spec_math", "thiserror", ] @@ -1233,19 +1235,6 @@ dependencies = [ "winnow", ] -[[package]] -name = "tycho2_renderer" -version = "0.1.0" -dependencies = [ - "clap", - "csv", - "image", - "nalgebra", - "serde", - "spec_math", - "thiserror", -] - [[package]] name = "typenum" version = "1.17.0" diff --git a/src/bin/airy_renderer.rs b/src/bin/airy_renderer.rs deleted file mode 100644 index 6a0a69f..0000000 --- a/src/bin/airy_renderer.rs +++ /dev/null @@ -1,441 +0,0 @@ -use std::f64::consts::PI; -use clap::Parser; -use csv::ReaderBuilder; -use image::{ImageBuffer, Rgb}; -use nalgebra::SMatrix; -use serde::{Deserialize, Serialize}; -use spec_math::cephes64::j1; -use std::fs::File; -use std::io; -use std::path::PathBuf; -use std::time::Instant; -use thiserror::Error; - -/// Represents a star with its right ascension, declination, and magnitude. -#[derive(Debug, Deserialize, Serialize, Clone)] -pub struct Star { - coords: EquatorialCoords, - mag: f64, -} - -#[derive(Debug, Deserialize, Serialize, Clone)] -pub struct EquatorialCoords { - ra_deg: f64, - dec_deg: f64, -} - -pub struct CartesianCoords { - x: f64, - y: f64, - z: f64, -} - -pub struct BoundsEquatorial { - max_ra: f64, - min_ra: f64, - max_dec: f64, - min_dec: f64, -} - -/// Errors that can occur during star catalog reading. -#[derive(Error, Debug)] -pub enum CatalogError { - #[error("IO error: {0}")] - Io(#[from] io::Error), - #[error("CSV parsing error: {0}")] - Csv(#[from] csv::Error), - #[error("Missing field: {0}")] - MissingField(String), - #[error("Parse error: {0}")] - Parse(String), - #[error("Missing magnitude")] - MissingMagnitude, -} - -/// CLI Arguments -#[derive(Parser, Debug)] -#[command(author, version, about, long_about = None)] -struct Args { - /// Path to the Tycho-2 catalog file - #[arg( - short, - long, - value_name = "FILE", - default_value = "data/tycho2/catalog.dat" - )] - file: PathBuf, - - /// Number of stars to display (0 for all) - #[arg(short, long, default_value_t = 10)] - display_count: usize, - - /// Right Ascension of camera view center point (degrees) - #[arg(long, default_value_t = 0.0)] - center_ra: f64, - - /// Declination of camera view center point (degrees) - #[arg(long, default_value_t = 360.0)] - center_dec: f64, - - /// Width of field of view. With 0 roll, corresponds to right ascension (degrees) - #[arg(long, default_value_t = 0.0)] - fov_w_deg: f64, - - /// Height of field of view. With 0 roll, corresponds to declination (degrees) - #[arg(long, default_value_t = 0.0)] - fov_h_deg: f64, - - /// Roll of the camera view (degrees) - #[arg(long, default_value_t = 0.0)] - roll_deg: f64, - - /// Maximum visual magnitude (lower is brighter) - #[arg(long, default_value_t = 1.0)] - max_magnitude: f64, - - /// B magnitude wavelength - only used if using airy disc rendering (nanometers) - #[arg(long, default_value_t = 442)] - lambda_b_nm: f64, - - /// V magnitude wavelength - only used if using airy disc rendering (nanometers) - #[arg(long, default_value_t = 540)] - lambda_v_nm: f64, - - /// Camera pixel size in meters (should be tiny, like e-6). Default is 3e-6, assuming higher - /// precision optics - #[arg(long, default_value_t = 3e-6)] - pixel_size_m: f64, - - /// Output image width in pixels - #[arg(long, default_value_t = 800)] - width: u32, - - /// Output image height in pixels - #[arg(long, default_value_t = 600)] - height: u32, - - /// Output image file name - #[arg(short, long, default_value = "star_map.png")] - output: String, -} - -pub fn to_cartesian(src: EquatorialCoords) -> CartesianCoords { - CartesianCoords { - x: src.dec_deg.cos() * src.ra_deg.cos(), - y: src.dec_deg.cos() * src.ra_deg.sin(), - z: src.dec_deg.sin(), - } -} - -pub fn to_equatorial(src: CartesianCoords) -> EquatorialCoords { - EquatorialCoords { - ra_deg: src.y.atan2(src.x), - dec_deg: src.z.asin(), - } -} - -pub fn fov_outer_bounds( - center_ra_deg: f64, - center_dec_deg: f64, - fov_w_deg: f64, - fov_h_deg: f64, - roll_deg: f64, -) -> BoundsEquatorial { - // Calculate FOV bounds in cartesian coords - let fov_w_half = fov_w_deg / 2.0; - let fov_h_half = fov_h_deg / 2.0; - - let fov: [CartesianCoords; 4] = [ - to_cartesian(EquatorialCoords { - ra_deg: center_ra_deg - fov_w_half, - dec_deg: center_dec_deg + fov_h_half, - }), - to_cartesian(EquatorialCoords { - ra_deg: center_ra_deg + fov_w_half, - dec_deg: center_dec_deg + fov_h_half, - }), - to_cartesian(EquatorialCoords { - ra_deg: center_ra_deg - fov_w_half, - dec_deg: center_dec_deg - fov_h_half, - }), - to_cartesian(EquatorialCoords { - ra_deg: center_ra_deg + fov_w_half, - dec_deg: center_dec_deg - fov_h_half, - }) - ]; - - // Generate roll matrix and apply roll to coordinates, resulting in rolled FOV corner points - let roll_matrix: SMatrix = SMatrix::new( - roll_deg.cos(), -roll_deg.sin(), 0.0, - roll_deg.sin(), roll_deg.cos(), 0.0, - 0.0, 0.0, 1.0, - ); - - let fov_rolled: [EquatorialCoords; 4] = fov - // Apply the roll matrix, giving new cartesian coords of rolled FOV (use unit sphere z of 1 - .map(|pt| -> SMatrix { roll_matrix * SMatrix::new(pt.x, pt.y, 1) }) - // Convert rolled coords back into equatorial - .map(|rolled| to_equatorial( - CartesianCoords { x: rolled[(0,0)], y: rolled[(1,0)], z: rolled[(2,0)]} - )); - - // Extract ra and dec values as sets to find min/max and return as Bounds - let rolled_ra_vals = fov_rolled.iter().map(|c| c.ra_deg); - let rolled_dec_vals = fov_rolled.iter().map(|c| c.dec_deg); - - BoundsEquatorial { - max_ra: rolled_ra_vals.iter().fold(f64::NEG_INFINITY, f64::max), - min_ra: rolled_ra_vals.iter().fold(f64::INFINITY, f64::min), - max_dec: rolled_dec_vals.iter().fold(f64::NEG_INFINITY, f64::max), - min_dec: rolled_dec_vals.iter().fold(f64::INFINITY, f64::min), - } -} - -/// Reads and filters stars from the Tycho-2 catalog file. -/// https://heasarc.gsfc.nasa.gov/w3browse/all/tycho2.html -/// http://tdc-www.harvard.edu/catalogs/tycho2.format.html -pub fn read_stars>( - path: P, - center_ra_deg: f64, - center_dec_deg: f64, - fov_w_deg: f64, - fov_h_deg: f64, - roll_deg: f64, - max_magnitude: f64, -) -> Result, CatalogError> { - let file = File::open(path)?; - let reader = io::BufReader::new(file); - let mut csv_reader = ReaderBuilder::new() - .delimiter(b'|') - .has_headers(false) - .from_reader(reader); - - let mut stars = Vec::new(); - let mut skipped_rows = 0; - // Define bounding box of FOV in case of roll. - let bound_min_ra: f64 = center_ra_deg - (fov_w_deg / 2.0); - let bound_max_ra: f64 = center_ra_deg + (fov_w_deg / 2.0); - let bound_min_dec: f64 = center_dec_deg - (fov_h_deg / 2.0); - let bound_max_dec: f64 = center_dec_deg + (fov_h_deg / 2.0); - - println!("bound_min_ra {}", bound_min_ra); - println!("bound_max_ra {}", bound_max_ra); - println!("bound_min_dec {}", bound_min_dec); - println!("bound_max_dec {}", bound_max_dec); - // Build bounding box based on camera roll - outer box containing rolled FOV - // Filter stars out of the outer bounding box before doing testing whether they fit inside the - // actual FOV - let bounds = fov_outer_bounds(center_ra_deg, center_dec_deg, fov_w_deg, fov_h_deg, roll_deg); - /* - for (i, result) in csv_reader.records().enumerate() { - let record = result?; - match parse_star_record(&record) { - Ok(star) => { - if star.ra_deg >= min_ra - && star.ra_deg <= max_ra - && star.de_deg >= min_dec - && star.de_deg <= max_dec - && star.mag <= max_magnitude - { - if i % 10000 == 0 { - println!( - "Star {}: RA={}, Dec={}, Mag={}", - i, star.ra_deg, star.de_deg, star.mag - ); - } - stars.push(star); - } - } - Err(e) => { - skipped_rows += 1; - if skipped_rows <= 10 { - println!("Skipping row {} due to error: {:?}", i, e); - println!("Problematic row: {:?}", record); - } else if skipped_rows == 11 { - println!("Further skipped rows will not be printed..."); - } - } - } - } - */ - println!("Total stars read and filtered: {}", stars.len()); - println!("Total rows skipped: {}", skipped_rows); - - Ok(stars) -} - -/// Parses a single record from the catalog into a Star struct. -fn parse_star_record(record: &csv::StringRecord) -> Result { - let ra = parse_field(record, 24, "RA")?; - let dec = parse_field(record, 25, "Dec")?; - let mag = parse_magnitude(record)?; - - Ok(Star { - coords: EquatorialCoords { - ra_deg: ra, - dec_deg: dec, - }, - mag, - }) -} - -/// Parses a field from the record, returning a helpful error if parsing fails. -fn parse_field( - record: &csv::StringRecord, - index: usize, - field_name: &str, -) -> Result { - record - .get(index) - .ok_or_else(|| CatalogError::MissingField(field_name.to_string()))? - .trim() - .parse() - .map_err(|_| CatalogError::Parse(format!("Failed to parse {}", field_name))) -} - -/// Airy disc radius - calculate physical radius, then convert to pixel scale -fn calc_airy_disc_radius(lambda: f64, aperture_diameter: f64, focal_length: f64, pixel_size_m: f64) -> f64 { - // Physical radius on the sensor in meters - let size = 1.22 * lambda * focal_length / aperture_diameter; - // Return radius in pixels - size / pixel_size_m -} - -/// Spatial frequency scaled as related to the diffraction pattern. Ooh! Ahh! -fn calc_spatial_frequency(lambda: f64, aperture_diameter: f64, focal_length: f64) -> f64 { - 2.0 * PI / lambda * aperture_diameter / focal_length -} - -/// Calculate the airy disc intensity at a given radius. Spatial frequency should be pre-calcualted -/// to avoid extra operations per loop. It is given by: -/// 2.0 * PI / lambda * aperture_diameter / focal_length -/// where lambda is wavelength of light. All arguments are in meters. -/// -/// Airy Disc formula: -/// I(r) = I_0 * (2 * J1(kr) / kr)^2 -/// Where: -/// I(r) = Intensity at distance r from the center of the airy disc -/// I_0 = Max intensity at the center of the disc (the star itself/point light source, i.e. r = 0) -/// J1(x) = First order Bessel function of the first kind (the magic sauce) -/// k = 2 * pi / wavelength * (aperture_diameter / focal_length) -- incorporates camera params -/// r = Radial distance from the center of the disc - -fn calc_airy_intensity_at_radius(r: f64, spatial_frequency: f64) -> f64 { - // Bessel argument, which will give us our intensity at radius r - let kr = spatial_frequency * r; - - // At the center, we're at full intensity - if (kr == 0.0) { - return 1.0; - } - - let bessel = j1(kr); - let intensity = (2.0 * bessel / kr).powi(2); - intensity -} - -fn parse_magnitude(record: &csv::StringRecord) -> Result { - let bt_mag = parse_field(record, 17, "BT magnitude").ok(); - let vt_mag = parse_field(record, 19, "VT magnitude").ok(); - - // println!("Debug: BT_Mag = {:?}, VT_Mag = {:?}", bt_mag, vt_mag); - - match (bt_mag, vt_mag) { - (Some(bt), Some(vt)) => { - let v_mag = vt - 0.090 * (bt - vt); - // println!("Debug: Calculated V_Mag = {:.3}", v_mag); - Ok(v_mag) - } - (None, Some(vt)) => { - // println!("Debug: Using VT_Mag as V_Mag = {:.3}", vt); - Ok(vt) - } - (Some(bt), None) => { - // println!("Debug: Using BT_Mag as V_Mag = {:.3}", bt); - Ok(bt) - } - (None, None) => Err(CatalogError::MissingMagnitude), - } -} - -fn apply_psf(image: &mut [Vec], star_x: usize, star_y: usize, intensity: f64, radius: f64, wavelength: f64, aperture_diameter: f64, focal_length: f64) { - let size = (2.0 * radius).ceil() as usize; - let half_size = size / 2; - - for dx in 0..size { - for dy in 0..size { - let x = star_x as isize + dx as isize - half_size as isize; - let y = star_y as isize + dy as isize - half_size as isize; - - // Ensure the coordinates are within image bounds - if x >= 0 && x < image.len() as isize && y >= 0 && y < image[0].len() as isize { - let r = (((dx as f64 - half_size as f64).powi(2) + (dy as f64 - half_size as f64).powi(2)).sqrt()); - let airy_value = airy_disc_intensity(r, wavelength, aperture_diameter, focal_length); - - // Accumulate intensity at the pixel - image[x as usize][y as usize] += intensity * airy_value; - } - } - } -} - - -fn render_stars( - stars: &[Star], - output_width: u32, - output_height: u32, - center_ra_deg: f64, - center_dec_deg: f64, - fov_w_deg: f64, - fov_h_deg: f64, -) -> ImageBuffer, Vec> { - let mut img = ImageBuffer::new(output_width, output_height); - -} - -fn main() -> Result<(), Box> { - let args = Args::parse(); - - println!("Reading stars from: {:?}", args.file); - println!("Center - RA (deg): {}", args.center_ra); - println!("Center - Dec (deg): {}", args.center_dec); - println!("FOV width (deg): {}", args.fov_w_deg); - println!("FOV height (deg): {}", args.fov_h_deg); - println!("Roll (deg): {}", args.roll_deg); - println!("Max magnitude: {}", args.max_magnitude); - - let start = Instant::now(); - let stars = read_stars( - args.file, - args.center_ra, - args.center_dec, - args.fov_w_deg, - args.fov_h_deg, - args.roll_deg, - args.max_magnitude, - )?; - let read_duration = start.elapsed(); - - - - -/* - let render_start = Instant::now(); - let img = render_stars( - &stars, - args.width, - args.height, - args.min_ra, - args.max_ra, - args.min_dec, - args.max_dec, - ); - img.save(&args.output)?; - let render_duration = render_start.elapsed(); -*/ - println!("Time taken to render and save image: {:?}", render_duration); - println!("Image saved as: {}", args.output); - println!("Total time elapsed: {:?}", start.elapsed()); - - Ok(()) -} \ No newline at end of file diff --git a/src/bin/psf_renderer.rs b/src/bin/psf_renderer.rs new file mode 100644 index 0000000..537a9b8 --- /dev/null +++ b/src/bin/psf_renderer.rs @@ -0,0 +1,136 @@ +#![allow(warnings)] + +use std::path::PathBuf; +use clap::Parser; +use starfield_renderer::fov::{get_fov}; +use starfield_renderer::parsing_utils::{read_stars}; +use starfield_renderer::rendering::{render_stars}; +use std::time::Instant; +use starfield_renderer::coords::{EquatorialCoords}; + + +/// CLI Arguments +#[derive(Parser, Debug)] +#[command(author, version, about, long_about = None)] +pub struct Args { + /// Path to the Tycho-2 catalog file + #[arg( + short, + long, + value_name = "FILE", + default_value = "data/tycho2/catalog.dat" + )] + source: PathBuf, + + /// Right Ascension of camera view center point (degrees) + #[arg(long, default_value_t = 180.0)] + center_ra: f64, + + /// Declination of camera view center point (degrees) + #[arg(long, default_value_t = 0.0)] + center_dec: f64, + + /// Width of field of view. With 0 roll, corresponds to right ascension (degrees) + #[arg(long, default_value_t = 90.0)] + fov_w_deg: f64, + + /// Height of field of view. With 0 roll, corresponds to declination (degrees) + #[arg(long, default_value_t = 60.0)] + fov_h_deg: f64, + + /// Roll of the camera view (degrees) + #[arg(long, default_value_t = 0.0)] + roll_deg: f64, + + /// Maximum visual magnitude (lower is brighter) + #[arg(long, default_value_t = 5.0)] + max_magnitude: f64, + + /// Targeted wavelength - critical for airy disc rendering (nanometers). Default to visible + #[arg(long, default_value_t = 540.0)] + lambda_nm: f64, + + /// Camera pixel size in meters (should be tiny, like e-6). Default is 3e-6, assuming higher + /// precision optics + #[arg(long, default_value_t = 3e-6)] + pixel_size_m: f64, + + /// Output image width in pixels + #[arg(long, default_value_t = 800)] + width: u32, + + /// Output image height in pixels + #[arg(long, default_value_t = 600)] + height: u32, + + /// Output image file name + #[arg(short, long, default_value = "star_map.png")] + output: String, +} + +fn main() -> Result<(), Box> { + let start = Instant::now(); + let args = Args::parse(); + let center_ra = args.center_ra.to_radians(); + let center_dec = args.center_dec.to_radians(); + let roll = args.roll_deg.to_radians(); + let fov_w = args.fov_w_deg.to_radians(); + let fov_h = args.fov_h_deg.to_radians(); + + /*println!("================ Cmd args list ==============="); + println!("Reading stars from: {:?}", args.source); + println!("Center - RA (deg): {}", args.center_ra); + println!("Center - RA (rad): {}", center_ra); + println!("Center - Dec (deg): {}", args.center_dec); + println!("Center - Dec (rad): {}", center_dec); + println!("FOV width (deg): {}", args.fov_w_deg); + println!("FOV width (rad): {}", fov_w); + println!("FOV height (deg): {}", args.fov_h_deg); + println!("FOV height (rad): {}", fov_h); + println!("Roll (deg): {}", args.roll_deg); + println!("Roll (rad): {}", roll); + println!("Max magnitude: {}", args.max_magnitude); + println!("Lambda (wavelength) nm: {}", args.lambda_nm); + println!("Pixel size (meters): {}", args.pixel_size_m); + println!("Output image width: {}", args.width); + println!("Output image height: {}", args.height); + println!("Output image height: {}", args.height); + println!("Output filename: {}", args.output); + println!("============ End of cmd args list ============");*/ + + // 1) Rotate FOV by specified roll + let center = &EquatorialCoords { + ra: center_ra, + dec: center_dec, + }; + let rolled_fov = get_fov(center, fov_w, fov_h, roll); + + // 2) Read stars and filter against rolled_fov to create subset of stars in view of the image + let stars = read_stars(args.source, center, &rolled_fov, args.max_magnitude)?; + /*let star = &stars[0]; + println!("Star: {:?}", star.coords);*/ + + // 4) Render stars in FOV w/ airy disc + let img = render_stars(&stars, args.width, args.height, center, fov_w, fov_h, roll); + img.save(&args.output)?; + +/* + let render_start = Instant::now(); + let img = render_stars( + &stars, + args.width, + args.height, + args.min_ra, + args.max_ra, + args.min_dec, + args.max_dec, + ); + img.save(&args.output)?; + let render_duration = render_start.elapsed(); +*/ + // println!("Time taken to render and save image: {:?}", render_duration); + // println!("Image saved as: {}", args.output); + println!("Total time elapsed: {:?}", start.elapsed()); + + Ok(()) +} \ No newline at end of file diff --git a/src/coords.rs b/src/coords.rs new file mode 100644 index 0000000..062c704 --- /dev/null +++ b/src/coords.rs @@ -0,0 +1,116 @@ +use crate::fov::APPROX_GRID_RESOLUTION; +use serde::{Deserialize, Serialize}; +use std::f64::consts::PI; +use std::hash::{Hash, Hasher}; + +#[derive(Debug, Deserialize, Serialize, Clone, Copy)] +pub struct CartesianCoords { + pub x: f64, + pub y: f64, + pub z: f64, +} + +impl CartesianCoords { + pub fn to_equatorial(&self) -> EquatorialCoords { + let mut ra: f64; + + if (self.y < 0.0) { + ra = (2.0 * PI) - self.x.acos(); + } else { + ra = self.x.acos(); + } + + EquatorialCoords { + ra, + dec: self.z.asin(), + } + } +} + + +#[derive(Debug, Deserialize, Serialize, Clone, Copy)] +pub struct EquatorialCoords { + pub ra: f64, + pub dec: f64, +} + +impl EquatorialCoords { + /// Calculate a point's standard coordinates on the plane tangent to the celestial sphere, whose + /// center point sits tangent to the sphere where the camera's central (z) axis meets it + pub fn to_standard(&self, center: &EquatorialCoords) -> StandardCoords { + // Right ascension and declination of current object, in radians + let ra = self.ra; + let dec = self.dec; + // Right ascension and declination of center point of tangent plane, in radians + let cra = center.ra; + let cdec = center.dec; + + StandardCoords { + x: (dec.cos() * (ra - cra).sin()) + / ((cdec.cos() * dec.cos() * (ra - cra).cos()) + (dec.sin() * cdec.sin())), + y: ((cdec.sin() * dec.cos() * (ra - cra).cos()) - (cdec.cos() * dec.sin())) + / ((cdec.cos() * dec.cos() * (ra - cra).cos()) + (dec.sin() * cdec.sin())), + } + } + + pub fn to_cartesian(&self) -> CartesianCoords { + CartesianCoords { + x: self.ra.cos(), + y: self.ra.sin(), + z: self.dec.sin(), + } + } + + pub fn to_grid(&self) -> EquatorialCoords { + EquatorialCoords { + ra: ((self.ra / 2.0 * PI) * (1.0 - (2.0 * self.dec / PI).abs()) * APPROX_GRID_RESOLUTION).round(), + dec: ((2.0 * self.dec / PI) * APPROX_GRID_RESOLUTION).round(), + } + } +} + +impl PartialEq for EquatorialCoords { + fn eq(&self, other: &Self) -> bool { + self.ra == other.ra && self.dec == other.dec + } +} + +impl Eq for EquatorialCoords { +} + +impl Hash for EquatorialCoords { + fn hash(&self, state: &mut H) { + (self.ra as i32).hash(state); + (self.dec as i32).hash(state); + } +} + +#[derive(Debug, Deserialize, Serialize, Clone, Copy)] +pub struct StandardCoords { + pub x: f64, + pub y: f64, +} + +impl StandardCoords { + pub fn to_equatorial(&self, center: &EquatorialCoords) -> EquatorialCoords { + // Right ascension and declination of center point of tangent plane, in radians + let cra = center.ra; + let cdec = center.dec; + + EquatorialCoords { + ra: (cra + (self.x / (cdec.cos() - (self.y * cdec.sin()))).atan()), + dec: ( + ((cdec.sin() + (self.y * cdec.cos())) + / ((1.0 + self.x.powi(2) + self.y.powi(2)).sqrt()) + ).asin()), + } + } +} + +#[derive(Debug, Deserialize, Serialize, Clone)] +pub struct BoundsEquatorial { + pub max_ra: f64, + pub min_ra: f64, + pub max_dec: f64, + pub min_dec: f64, +} \ No newline at end of file diff --git a/src/fov.rs b/src/fov.rs new file mode 100644 index 0000000..7eb1ce3 --- /dev/null +++ b/src/fov.rs @@ -0,0 +1,122 @@ +use nalgebra::{SMatrix, SVector, Vector3}; +use serde::{Deserialize, Serialize}; +use crate::coords::{BoundsEquatorial, CartesianCoords, EquatorialCoords, StandardCoords}; +use std::collections::HashSet; +use std::f64::consts::PI; + +pub const APPROX_GRID_RESOLUTION: f64 = 360.0; + +pub fn get_fov( + center: &EquatorialCoords, + fov_w: f64, + fov_h: f64, + roll: f64, + // Approximation resolution for dividing FOV into smaller regions (NOT image size) + // approx_res: i32, +) -> HashSet { + // Config params for function + let view_init_center = EquatorialCoords { + ra: 180.0_f64.to_radians(), + dec: 0.0_f64.to_radians(), + }; + let ra_dif = center.ra - view_init_center.ra; + let dec_dif = center.dec - view_init_center.dec; + // Calculate FOV bounds in cartesian coords + let fov_w_half = fov_w / 2.0; + let fov_h_half = fov_h / 2.0; + + let step_size = 2.0 * PI / APPROX_GRID_RESOLUTION; + let bottom_left = EquatorialCoords { + ra: view_init_center.ra - fov_w_half, + dec: view_init_center.dec - fov_h_half, + }; + let fov_steps_w = ((fov_w / step_size).ceil() + 1.0) as i32; + let fov_steps_h = ((fov_h / step_size).ceil() + 1.0) as i32; + let mut scatter_shot : Vec = Vec::new(); + + for y in 0..fov_steps_h { + for x in 0..fov_steps_w { + scatter_shot.push(EquatorialCoords { + ra: bottom_left.ra + (x as f64 * step_size), + dec: bottom_left.dec + (y as f64 * step_size), + }.to_cartesian()); + } + } + /*let debug_index = (scatter_shot.len() / 2) as usize; + let debug_middle_coord = scatter_shot[debug_index]; + println!("Approx center grid coord: {:?}", debug_middle_coord);*/ + + let c_cartesian = center.to_cartesian(); + let y_roll_axis = CartesianCoords { + x: -c_cartesian.y, + y: c_cartesian.x, + z: 0.0, + }; + + let x_roll = SMatrix::::new( + // Row 1 + roll.cos(), + ra_dif.sin(), + 0.0, + // Row 2 + ra_dif.sin(), + ra_dif.cos(), + 0.0, + // Row 3 + 0.0, + 0.0, + (1.0 - ra_dif.cos()) + ra_dif.cos(), + ); + let y_roll = SMatrix::::new( + // Row 1 + y_roll_axis.x.powi(2) * (1.0 - dec_dif.cos()) + dec_dif.cos(), + y_roll_axis.x * y_roll_axis.y * (1.0 - dec_dif.cos()) - (y_roll_axis.z * dec_dif.sin()), + y_roll_axis.x * y_roll_axis.z * (1.0 - dec_dif.cos()) + (y_roll_axis.y * dec_dif.sin()), + // Row 2 + y_roll_axis.x * y_roll_axis.y * (1.0 - dec_dif.cos()) + (y_roll_axis.z * dec_dif.sin()), + y_roll_axis.y.powi(2) * (1.0 - dec_dif.cos()) + dec_dif.cos(), + y_roll_axis.y * y_roll_axis.z * (1.0 - dec_dif.cos()) - (y_roll_axis.x * dec_dif.sin()), + // Row 3 + y_roll_axis.x * y_roll_axis.z * (1.0 - dec_dif.cos()) - (y_roll_axis.y * dec_dif.sin()), + y_roll_axis.y * y_roll_axis.z * (1.0 - dec_dif.cos()) + (y_roll_axis.x * dec_dif.sin()), + y_roll_axis.z.powi(2) * (1.0 - dec_dif.cos()) + dec_dif.cos(),); + let z_roll = SMatrix::::new( + // Row 1 + c_cartesian.x.powi(2) * (1.0 - roll.cos()) + roll.cos(), + c_cartesian.x * c_cartesian.y * (1.0 - roll.cos()) - (c_cartesian.z * roll.sin()), + c_cartesian.x * c_cartesian.z * (1.0 - roll.cos()) + (c_cartesian.y * roll.sin()), + // Row 2 + c_cartesian.x * c_cartesian.y * (1.0 - roll.cos()) + (c_cartesian.z * roll.sin()), + c_cartesian.y.powi(2) * (1.0 - roll.cos()) + roll.cos(), + c_cartesian.y * c_cartesian.z * (1.0 - roll.cos()) - (c_cartesian.x * roll.sin()), + // Row 3 + c_cartesian.x * c_cartesian.z * (1.0 - roll.cos()) - (c_cartesian.y * roll.sin()), + c_cartesian.y * c_cartesian.z * (1.0 - roll.cos()) + (c_cartesian.x * roll.sin()), + c_cartesian.z.powi(2) * (1.0 - roll.cos()) + roll.cos(), + ); + + let transform = z_roll * y_roll * x_roll; + let mut final_grid: HashSet = HashSet::new(); + for p in scatter_shot { + let vec: Vector3 = Vector3::new(p.x, p.y, p.z); + let transformed = transform * vec; + let grid_coord = CartesianCoords { + x: transformed[(0,0)], + y: transformed[(1,0)], + z: transformed[(2,0)], + }.to_equatorial().to_grid(); + final_grid.insert(grid_coord); + /*if (index == debug_index) { + println!("approx center grid coord (after transform) {:?}", grid_coord); + }*/ + }; + + final_grid +} +/* +pub fn equatorial_to_grid(p: &EquatorialCoords) -> EquatorialCoords { + EquatorialCoords { + ra: ((p.ra / 2.0 * PI) * (1.0 - (2.0 * p.dec / PI).abs()) * APPROX_RES).round(), + dec: ((2.0 * p.dec / PI) * APPROX_RES).round(), + } +}*/ diff --git a/src/lib.rs b/src/lib.rs index 25ede67..445fc8d 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,3 +1,9 @@ +pub mod rendering; +pub mod coords; +pub mod fov; +pub mod parsing_utils; +pub mod star; + pub mod render; pub mod star_catalog; pub mod types; diff --git a/src/parsing_utils.rs b/src/parsing_utils.rs new file mode 100644 index 0000000..f2304e0 --- /dev/null +++ b/src/parsing_utils.rs @@ -0,0 +1,126 @@ +use csv::ReaderBuilder; +use std::fs::File; +use std::io; +use std::collections::HashSet; +use thiserror::Error; + +use crate::coords::EquatorialCoords; +use crate::star::Star; + +/// Errors that can occur during star catalog reading. +#[derive(Error, Debug)] +pub enum CatalogError { + #[error("IO error: {0}")] + Io(#[from] io::Error), + #[error("CSV parsing error: {0}")] + Csv(#[from] csv::Error), + #[error("Missing field: {0}")] + MissingField(String), + #[error("Parse error: {0}")] + Parse(String), + #[error("Missing magnitude")] + MissingMagnitude, +} + + +/// Reads and filters stars from the Tycho-2 catalog file. +/// https://heasarc.gsfc.nasa.gov/w3browse/all/tycho2.html +/// http://tdc-www.harvard.edu/catalogs/tycho2.format.html +/// All values should be in radians. While star coords in the catalog are in degrees, the coordinate +/// calculations make use of trig functions which deal in radians - this will be our default mode +pub fn read_stars>( + path: P, + center: &EquatorialCoords, + filter_grid: &HashSet, + max_magnitude: f64, +) -> Result, CatalogError> { + let file = File::open(path)?; + let reader = io::BufReader::new(file); + let mut csv_reader = ReaderBuilder::new() + .delimiter(b'|') + .has_headers(false) + .from_reader(reader); + + let mut stars = Vec::new(); + let mut skipped_rows = 0; + + for (i, result) in csv_reader.records().enumerate() { + let record = result?; + match parse_star_record(&record) { + Ok(star) => { + let grid_coords = &star.coords.to_grid(); + if star.mag < max_magnitude && filter_grid.contains(&grid_coords) { + stars.push(star); + } + } + Err(e) => { + skipped_rows += 1; + if skipped_rows <= 10 { + println!("Skipping row {} due to error: {:?}", i, e); + println!("Problematic row: {:?}", record); + } else if skipped_rows == 11 { + println!("Further skipped rows will not be printed..."); + } + } + } + } + + println!("Total stars read and filtered: {}", stars.len()); + println!("Total rows skipped: {}", skipped_rows); + + Ok(stars) +} + +/// Parses a single record from the catalog into a Star struct. +pub fn parse_star_record(record: &csv::StringRecord) -> Result { + let ra = parse_field(record, 24, "RA")?; + let dec = parse_field(record, 25, "Dec")?; + let mag = parse_magnitude(record)?; + + Ok(Star { + coords: EquatorialCoords { + ra: ra.to_radians(), + dec: dec.to_radians(), + }, + mag, + }) +} + +/// Get magnitude off a star record +pub fn parse_magnitude(record: &csv::StringRecord) -> Result { + let bt_mag = parse_field(record, 17, "BT magnitude").ok(); + let vt_mag = parse_field(record, 19, "VT magnitude").ok(); + + // println!("Debug: BT_Mag = {:?}, VT_Mag = {:?}", bt_mag, vt_mag); + + match (bt_mag, vt_mag) { + (Some(bt), Some(vt)) => { + let v_mag = vt - 0.090 * (bt - vt); + // println!("Debug: Calculated V_Mag = {:.3}", v_mag); + Ok(v_mag) + } + (None, Some(vt)) => { + // println!("Debug: Using VT_Mag as V_Mag = {:.3}", vt); + Ok(vt) + } + (Some(bt), None) => { + // println!("Debug: Using BT_Mag as V_Mag = {:.3}", bt); + Ok(bt) + } + (None, None) => Err(CatalogError::MissingMagnitude), + } +} + +/// Parses a field from the record, returning a helpful error if parsing fails. +pub fn parse_field( + record: &csv::StringRecord, + index: usize, + field_name: &str, +) -> Result { + record + .get(index) + .ok_or_else(|| CatalogError::MissingField(field_name.to_string()))? + .trim() + .parse() + .map_err(|_| CatalogError::Parse(format!("Failed to parse {}", field_name))) +} \ No newline at end of file diff --git a/src/rendering.rs b/src/rendering.rs new file mode 100644 index 0000000..e1d8724 --- /dev/null +++ b/src/rendering.rs @@ -0,0 +1,132 @@ +use std::f64::consts::PI; +use image::{ImageBuffer, Rgb}; +use nalgebra::SMatrix; +use spec_math::cephes64::j1; +use crate::coords::EquatorialCoords; +use crate::star::Star; + +/// Airy disc radius - calculate physical radius, then convert to pixel scale +pub fn calc_airy_disc_radius(lambda: f64, aperture_diameter: f64, focal_length: f64, pixel_size_m: f64) -> f64 { + // Physical radius on the sensor in meters + let size = 1.22 * lambda * focal_length / aperture_diameter; + // Return radius in pixels + size / pixel_size_m +} + +/// Spatial frequency scaled as related to the diffraction pattern. Ooh! Ahh! +pub fn calc_spatial_frequency(lambda: f64, aperture_diameter: f64, focal_length: f64) -> f64 { + 2.0 * PI / lambda * aperture_diameter / focal_length +} + +/// Calculate the airy disc intensity at a given radius. Spatial frequency should be pre-calcualted +/// to avoid extra operations per loop. It is given by: +/// 2.0 * PI / lambda * aperture_diameter / focal_length +/// where lambda is wavelength of light. All arguments are in meters. There is a helper method +/// defined to do this for you (see calc_spatial_frequency) +/// +/// Airy Disc formula: +/// I(r) = I_0 * (2 * J1(kr) / kr)^2 +/// Where: +/// I(r) = Intensity at distance r from the center of the airy disc +/// I_0 = Max intensity at the center of the disc (the star itself/point light source, i.e. r = 0) +/// J1(x) = First order Bessel function of the first kind (the magic sauce) +/// k = 2 * pi / wavelength * (aperture_diameter / focal_length) -- incorporates camera params +/// r = Radial distance from the center of the disc + +pub fn calc_airy_intensity_at_radius(r: f64, spatial_frequency: f64) -> f64 { + // Bessel argument, which will give us our intensity at radius r + let kr = spatial_frequency * r; + + // At the center, we're at full intensity + if (kr == 0.0) { + return 1.0; + } + + let bessel = j1(kr); + let intensity = (2.0 * bessel / kr).powi(2); + intensity +} + +/// Appy PSF to an image at a given location +fn apply_psf(image: &mut [Vec], star_x: usize, star_y: usize, intensity: f64, radius: f64, wavelength: f64, aperture_diameter: f64, focal_length: f64) { + let size = (2.0 * radius).ceil() as usize; + let half_size = size / 2; + + for dx in 0..size { + for dy in 0..size { + let x = star_x as isize + dx as isize - half_size as isize; + let y = star_y as isize + dy as isize - half_size as isize; + + // Ensure the coordinates are within image bounds + if x >= 0 && x < image.len() as isize && y >= 0 && y < image[0].len() as isize { + let r = ((dx as f64 - half_size as f64).powi(2) + (dy as f64 - half_size as f64).powi(2)).sqrt(); + // let airy_value = airy_disc_intensity(r, wavelength, aperture_diameter, focal_length); + + // Accumulate intensity at the pixel + // image[x as usize][y as usize] += intensity * airy_value; + } + } + } +} + +pub fn render_stars( + stars: &Vec, + width: u32, + height: u32, + center: &EquatorialCoords, + fov_w: f64, + fov_h: f64, + roll: f64, +) -> ImageBuffer, Vec> { + let mut img = ImageBuffer::new(width, height); + + // Find the minimum and maximum magnitudes in the dataset + let min_mag = stars.iter().map(|s| s.mag).fold(f64::INFINITY, f64::min); + let max_mag = stars + .iter() + .map(|s| s.mag) + .fold(f64::NEG_INFINITY, f64::max); + let z_roll_mat = SMatrix::::new( + roll.cos(), -roll.sin(), + roll.sin(), roll.cos(), + ); + let pixel_ratio_w = width as f64 / fov_w; + let pixel_ratio_h = height as f64 / fov_h; + + for star in stars { + let std_star_coords = star.coords.to_standard(center); + let std_star_mat = SMatrix::::new(std_star_coords.x, std_star_coords.y); + let final_star_pos = z_roll_mat * std_star_mat; + + let x = final_star_pos.x * pixel_ratio_w; + let y = final_star_pos.y * pixel_ratio_h; + if (x < 0.0 || x > width as f64 || y < 0.0 || y > height as f64) { + break; + } + + // Inverse the magnitude scale (brighter stars have lower magnitudes) + let normalized_mag = (max_mag - star.mag) / (max_mag - min_mag); + // Apply a non-linear scaling to emphasize brighter stars + let brightness = (normalized_mag.powf(2.5) * 255.0) as u8; + let color = Rgb([brightness, brightness, brightness]); + + //img.put_pixel((x + ((width as f64) / 2.0)) as u32, (y + (height as f64) / 2.0) as u32, color); + img.put_pixel(x as u32, y as u32, color); + } + /*let std_star_coords = stars[0].coords.to_standard(center); + let std_star_mat = SMatrix::::new(std_star_coords.x, std_star_coords.y); + let final_star_pos = z_roll_mat * std_star_mat; + + let x = final_star_pos.x * pixel_ratio_w; + let y = final_star_pos.y * pixel_ratio_h; + + // Inverse the magnitude scale (brighter stars have lower magnitudes) + let normalized_mag = (max_mag - stars[0].mag) / (max_mag - min_mag); + // Apply a non-linear scaling to emphasize brighter stars + let brightness = 255; + let color = Rgb([brightness, brightness, brightness]); +println!("x, y: {}, {}", x, y); + img.put_pixel((x + ((width as f64) / 2.0)) as u32, (y + (height as f64) / 2.0) as u32, color);*/ + + img +} \ No newline at end of file diff --git a/src/star.rs b/src/star.rs new file mode 100644 index 0000000..827c9e5 --- /dev/null +++ b/src/star.rs @@ -0,0 +1,9 @@ +use serde::{Deserialize, Serialize}; +use crate::coords::{EquatorialCoords}; + +/// Represents a star with its right ascension, declination, and magnitude. +#[derive(Debug, Deserialize, Serialize, Clone)] +pub struct Star { + pub coords: EquatorialCoords, + pub mag: f64, +} From 9fd14e52597443295c9e39e52d1edc0871b4440a Mon Sep 17 00:00:00 2001 From: Layton Miller Date: Mon, 9 Sep 2024 23:40:16 -0700 Subject: [PATCH 07/10] Working psf renderer (without PSF currently, but starfield renders, with distortion --- .gitignore | 2 ++ images/star_map.png | Bin 553983 -> 27418 bytes src/rendering.rs | 25 +++++++------------------ 3 files changed, 9 insertions(+), 18 deletions(-) diff --git a/.gitignore b/.gitignore index 4aefdee..6774efc 100644 --- a/.gitignore +++ b/.gitignore @@ -248,3 +248,5 @@ docs/_build/ # Pyenv .python-version + +debug.txt \ No newline at end of file diff --git a/images/star_map.png b/images/star_map.png index c924b33e071cd49a147592261f7e38857490cc70..687236cc8fb089ec3ecfe85daab65f1e6d4f67f7 100644 GIT binary patch literal 27418 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
J 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 z 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 T-G?gt8b9{TF%O+~{*3::new(std_star_coords.x, std_star_coords.y); let final_star_pos = z_roll_mat * std_star_mat; - let x = final_star_pos.x * pixel_ratio_w; - let y = final_star_pos.y * pixel_ratio_h; + let x = final_star_pos.x * pixel_ratio_w + x_offset; + let y = final_star_pos.y * pixel_ratio_h + y_offset; + println!("(x, y) | ({},{})", x, y); if (x < 0.0 || x > width as f64 || y < 0.0 || y > height as f64) { - break; + println!("Discarding star at ({}, {})", x, y); + continue; } // Inverse the magnitude scale (brighter stars have lower magnitudes) @@ -110,23 +114,8 @@ pub fn render_stars( let brightness = (normalized_mag.powf(2.5) * 255.0) as u8; let color = Rgb([brightness, brightness, brightness]); - //img.put_pixel((x + ((width as f64) / 2.0)) as u32, (y + (height as f64) / 2.0) as u32, color); img.put_pixel(x as u32, y as u32, color); } - /*let std_star_coords = stars[0].coords.to_standard(center); - let std_star_mat = SMatrix::::new(std_star_coords.x, std_star_coords.y); - let final_star_pos = z_roll_mat * std_star_mat; - - let x = final_star_pos.x * pixel_ratio_w; - let y = final_star_pos.y * pixel_ratio_h; - - // Inverse the magnitude scale (brighter stars have lower magnitudes) - let normalized_mag = (max_mag - stars[0].mag) / (max_mag - min_mag); - // Apply a non-linear scaling to emphasize brighter stars - let brightness = 255; - let color = Rgb([brightness, brightness, brightness]); -println!("x, y: {}, {}", x, y); - img.put_pixel((x + ((width as f64) / 2.0)) as u32, (y + (height as f64) / 2.0) as u32, color);*/ img } \ No newline at end of file From ce6b0969ddc661102f61e1dd5260b15c10afe892 Mon Sep 17 00:00:00 2001 From: Layton Miller Date: Tue, 10 Sep 2024 10:54:36 -0700 Subject: [PATCH 08/10] Replace main.rs with bin/main.rs. Update readme. Major file cleanup. Update readme. Fix all warnings and turn back on error messaging in the build. --- .gitignore | 3 +- Cargo.toml | 1 + README.md | 96 ++++++++++- images/11367213.png | Bin 77486 -> 0 bytes images/star_map.png | Bin 27418 -> 0 bytes images/star_map2.png | Bin 76129 -> 0 bytes images/star_map5.png | Bin 20145 -> 0 bytes images/star_map6.png | Bin 126655 -> 0 bytes src/bin/data-transformer.rs | 13 ++ src/bin/gaussian_renderer.rs | 229 --------------------------- src/bin/{psf_renderer.rs => main.rs} | 61 +++---- src/coords.rs | 47 ++---- src/fov.rs | 19 +-- src/lib.rs | 2 +- src/main.rs | 71 --------- src/parsing_utils.rs | 3 +- src/rendering.rs | 118 +++++++------- 17 files changed, 214 insertions(+), 449 deletions(-) delete mode 100644 images/11367213.png delete mode 100644 images/star_map.png delete mode 100644 images/star_map2.png delete mode 100644 images/star_map5.png delete mode 100644 images/star_map6.png create mode 100644 src/bin/data-transformer.rs delete mode 100644 src/bin/gaussian_renderer.rs rename src/bin/{psf_renderer.rs => main.rs} (74%) delete mode 100644 src/main.rs diff --git a/.gitignore b/.gitignore index 6774efc..c14aad7 100644 --- a/.gitignore +++ b/.gitignore @@ -249,4 +249,5 @@ docs/_build/ # Pyenv .python-version -debug.txt \ No newline at end of file +debug.txt +star_map.png \ No newline at end of file diff --git a/Cargo.toml b/Cargo.toml index 3683a67..dc5b1a6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,6 +2,7 @@ name = "starfinder" version = "1.0.0" edition = "2021" +default-run = "main" license-file = "LICENSE" description = "starfinder is a Rust & Python package that provides functionality to read, process, and render star data from the Tycho-2 catalog. It's built with Rust for performance and exposes a Python API for ease of use." homepage = "https://github.com/djmango/starfinder" diff --git a/README.md b/README.md index 6e771bf..8e338e3 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,7 @@ `starfinder` is a Rust & Python package that provides functionality to read, process, and render star data from the Tycho-2 catalog. It's built with Rust for performance and exposes a Python API for ease of use. +## Setup https://archive.eso.org/ASTROM/TYC-2/data/ Download catalog.dat from there, put it in data/tycho2/ @@ -20,14 +21,103 @@ Download catalog.dat from there, put it in data/tycho2/ ├── poetry.lock ├── pyproject.toml ├── src -│ └── main.rs +│ └── bin +│ └── main.rs +│ └── data-transformer.rs ``` -# Rust +# Run +To run the renderer with defaults +``` +cargo run +``` +To run the renderer with cmd arg overrides: ``` -cargo run --release -- --min-ra=0 --max-ra=60 --min-dec=-30 --max-dec=30 --max-magnitude=11 --width=1000 --height=800 --output=example.png +cargo run -- --roll-deg 0.0 --fov-w-deg 75.0 --fov-h-deg 50.0 ``` +### Cmd args + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
██ Flag ████ Description ████ Default value ████ Notes ██
--source, -sThe source file to run`data/tycho2/catalog.dat`
--center-raFOV center point right ascension`180.0`In degrees
--center-decFOV center point declination`0.0`In degrees
--fov-wWidth of FOV`60.0`In degrees
--fov-hHeight of FOV`45.0`In degrees
--rollCritical for determining FOV and should always be specified. Camera sensor roll with respect to the celestial sphere.`0.0`In degrees
--max-magnitudeMaximum visual magnitude (lower is brighter).`12.0`This is essentially a filter, and dimmer stars will be ignored. A higher value can have an effect on performance at the cost of realism. Defaults to a maximum dimmer than Tycho2 dataset - i.e. shows all stars.
--lambda-nmTargeted wavelength - critical for airy disc rendering (nanometers). Default to visible spectrum`540.0`In nanometers. Currently unused - for future revision with PSF rendering
--pixel-size-mSimulated sensor physical pixel size`3e-6`In meters. Currently unused - for future revision with PSF rendering
--widthOutput image width. Should match sensor pixel count.`800`In pixels. Larger values will impact performance.
--heightOutput image height. Should match sensor pixel count.`600`In pixels. Larger values will impact performance.
--output, -oOutput filename`star_map.png`
+ # C++ diff --git a/images/11367213.png b/images/11367213.png deleted file mode 100644 index 584173081895cf5eb94890d1fb2396f96a2bbfff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 77486 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
_R8C%pa`g1*Z&1>k& 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≥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 Z&-1@4yZxnZ{C`)Dz2@>4M&C03{{yjPS2+Lx diff --git a/images/star_map5.png b/images/star_map5.png deleted file mode 100644 index 496cc4b4923f5440e012cb63f6ecadd6a7367be3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20145 zcmcJ13wTWD)_)M?P$E?0J{mz$M(Ywq3?)rbqS}}qBBNDQUE&rY5!DefQooF>y|x=l}fsJSQhIGw*)i zb^Wd1TJI!}8X3``UW^=gv2ljtJfO%$`|rV))z{fd zLfA6?!N`ZXl`}JCp+k@T^bFZq+EOfO>8dj@n(dK(xUKIFo4RXueiX!y(jJcQH0AY% z)S)-UaYHWNNr&#My>>~b>8n1V@!m1|j)Zp0grW8_wzT`;i1SCGYg(lBj&`<`My}y2 zKe!GDHZR<=`3C!|U#V&*}C=@7{9@@ag-(0ud6sU8KWZLNWa{|esl1In_u#*NWVdi;NTt$6)s5q zrOKRJ!*fGm#A_Ra>Y`j!eKJ`^Mlc0S%W~Y8#W4Pg+gALc@yUnLlB-p}`G14TMrLIz zKfo?I*TDrmP&Y_-c8iruGh%vL%Hk|}sCLr|U1;4B_kDrN4Ph3to63 zQ#NE39l+I~Wb8EkL}qtd+kN+58|sSewYHr(XM(X}gYje()E}x_L&7^RDRVy`?fDEe zO|l0Z`I)It2v`QKcJ<%+L3B%c3p zH>#my8EVsk_5e4}~U-w3l%OIM#3BYL!g? zn6blzaYQyvsp9G*e#*|Su&%x?+D_%(KZSnldA!Xwy?3E_L{SDn6Xwe>v`xwCi2fBP zBegh#JAS>9t7GEM(1dn$$e>Fbt*(!>y6LsXJ(OZ%QBoeh!HVC&W zZVMq*XuFWCEAYL_)#-E5>5iP9+(Tcwp^qe0dvPRPbLdv$7M7CZDOp`Gpp~aK3EYB) zJbZiKxO=XOQdKfyOEQVPbsuf>QpJvzhhex;8f`ol1*I62GnB%&ZbILo>@)7POP4O) zNQX{prm#JE@&u)%neH2#$TKAEm=%}ob_x)3R(@HSIp@TH2j>T@!Jzvw<^iEL9>Z;& zU$`dp+Cs+{+Q}gn146VUHajdNXD40GMk81HUGaWHA|2$QcZ8J#_U_(2d)_=+Fyaku zB`(M+@v7wzf7+?AYh%aAN2c0bIYNk+!TYJk8==Q_cWOagYiLS;haX9)=}_lDW+C@I zXjs_ik!9)ibZ9?$Pjj=oXieb>ih14Fwu8h)SMritLC}oY*wWy2TxVj7XBh+tF?S}# ztmJx7LdhUBOJGr#W$>7nxfWRFcZcrOgD#8ABSL29r+oSgK0jW4Tokkq{-rk^8D{$1 zItA0_7m;_vj60>TQ;Zokne5)36;ZtXwTiScK8 z6%-36b{gCtqaZA6$c$yNTX4ChsJU&yb7psJ@jvqVugp;9lCJRm_N1~B;Y5=i#s12; zO{2^0&i0l^?JJCr(TSD?4eGQ4Ucq1}2S^l8k|P%ddwj2o4q;FDkjamPcRGE&_c+Q! zG7hdH7$KQbhMfJ+s*-3wz0~x6r(?Zgu(z2|2=?SXuE3x{LyGMy*=a0AaR`O>-FrQM ztQP;E)s~Y&OWoZhC(Bb@Ohdebd8TZ8fjL+=ZeSbBlI&%-g&w-PQraRivezg0)7Z=0 zG85X2FCd$NyDw`8tKVze88y9xnaI|e?Xm5y7@Jk#%3FBxNE;Fc*~KURup;LEu^2VE zDMI4Ccdfq)YsYrsuTKed1<9*~@;XXcVnKY8nFkTsI%R7I_N!v^_zScSxx}Me_#4II z|F$z!yhZPUhM`wx)uQEuMm#{}eCv~TU*N07Z_tG076y?{+>v;iefMhb;ZPLju)Gnz zOveQLb1EK{tsm`vznJGuI-P~`uCjTMD{p<35S5wWM?$o(Kw~E{s6W)qsr>=OaDUuD z1jm5sutN2PCagRJ}Dqz-7F{pR0q z22R|YaPs(ZwEYOx-5{E5+Az=yJ!fPlFxV&fU3NL>ZEi!#K`m_gaFPCDwbrl=_n%EnG} zIcGoETfkDQ1Pv)oVV=93B9^C=8Xo+8+)T_Q9qcv*cm$49iVk$^QL%Z* zr!y49+Uy}hKc@(3XqhDJ;MUrebDC2V8D{;@?pN4O0C zE^~K(Uh~-~_^XdgsOF{FXUf3F7=gGKx)iZXy zJNc2}qpclcnrWVdVt-!?f2P)|$k{2-*tATGdrb(OHy!~u`Kc#lF< z?N!mvTtvI*;NuG@Fb$tRW5(>J2o|zl8_~q<-Zp*aOne)peewF-m5`>LPqGf)Fhj{p zS*;>*p(o-l{utQC%0^g7juzI0946pACVuvEPFClA^*x*nuTNj6oz z=Kg;S3P8K>zFM$WEi@>|RSoBaMtS9_3K|2zNK9G_JW7QSwWJXCTxbC$L% zv$&2`*h)qtFmnmP=*1C(T?fDDzwps7E9yr}&QdB3p*R3|A)?A7%)pZrt3UN<#*i{T z9cmG}qkY2+gbqUBvJAzt^~_|=s9^$~P|3sC4dGY?2vc)nN`-Spht3wMYJ>aH&MX2V?>o5#hF=~Yj*9IHpQMj0hkq>(Aximc|M%xA7N=y|{ zP}Pb|XTN(ljohs)7zMqYc|iD-v)ga*8W)#Ext-r`5_X`e3r5U7re-(ct79MTj_#)G zj@||Byw92A#}S0tU8a*dxIoq%GDGp#K5OZ)b)VXo{ex-KimqQ@0@0MXO_qW<1R5CN zO>b)D6E2b3{rOsO*ZWy+8(FAZd{a%S%y{sfED9+*F(W$8#kEFd{Bd9{dreqFQdjaY z;HAUIDCvcNBe2t2b8Snz9u)@X)@hkHz`89qcMFK#k3&7MEG@xkt^xda=dWqUV5E9Z z=%l4+q5IJOX%||U-In);-KdSGkVQG#*w{y-{|_~1e35#n3?<-hr z--whctexFT)src2aGOVslv53k{9Ia^kX4r8DjSGSaCy-H%dRo_)+iX^$(RVIkv)Of zjQr0i*U+nDcJ)%0e?FRo*7)*eW~Lp-7nEdmOoq1zVpt~i-nOe?8Z#O8LlIcPVB2}2 zFNSVzzqHW1l+vPX6B*hQBUL*#e0ky5D2VVX+?8pZER?ba`l!~2Rp4oyIiIkJRYXWD zJf*k#Xee+-$F!=ao`0u`A!k$y zg!k?YOnCSqx9u5tlw6X_cLbJq5dPF5t0O3sjR-o~F5JV1bt380zv_SbbRhH1To_X! z;FTBa;{%0%)d~AUF9F5peNKk<(wiskF#$<`4A!N}n1rT}lT6PeV8`lC#SOFzw_#P4 zJ;2AT&^A2hvv{>)la1NCcYA4GtjR*Rc%{!;*TFN6QVQpqur|N^^~F1OFHTdk8iP6V zvahE4G=koszB|T`6%{bwAHMwQr=QAAGj_i}E5G#oSgpiJ)vK#lON*(;fQi42tq@+Js+hD~!NaFa#WT$QX6jAYefk!BH7zUW?-`0H zpLM!M;=357qZs~B(;Ei2w9hmsRQoH^VFyesE~CmmxdSF|<5`sfWQ&Gipp{+)LPHg4 zC^kab?y@asCcCn?vdA)5K9E(}SBa;pS6D~DQ?n?nq*w|~hq3+o^-D}lJTwsPP9o?? z!l45R;?%9>!aqO%1&3!DfI%zGoQkm){ z(rP_P*f23~Z3+C`HT#Np5e5m)$0MCb;oYYaPBrA72TE}lX%y&6^~v{0alptbv^&(- z@TRJBOc4;IIUP3yNvN{|+2rrfz*|~&=k@^o>MFa`8o=?MR*0cIQmZ-#YPDUtW!eBM zOYc%FD`MFaKTyC!a0q+HWHe<$f-wvP$;J}GXs92UUf5?2W-f}`U2w4=ojcO1_X;A2e!%?=ujiDp+W7&q4no=K&V+=Y+@7$sP zH~fW#)_%WnM5r01DTusJa(37Alw`eo>*U7hxTe^S87%S8<#A`pkc{lwD7{iZ2g&~Z z+BKpjvwU{zlU~{_2)uv)KHAV*r4`$uXB9&d{GUPxb|fFLR8}Tw0UTjbYj7f|n$(7C zx)fiI30aNER3%EdRb?oS;Bvv%8_YEWE2sPz4BA`mo*kPa`EqpVY`JS+m`Mz(9jOSOizgBt1F_$l%T9vfJ z9+I!3^z0GipPF=kB1I-8G^MT*M4yGO8>W|9V>xE!8JSjwdW?1wHh$0yeX>7cCwP8* z0hwW3)6^T)HMw&T!qETVwm-UIP;TH3 zqM*R*k;-69a85CT9RuQC6dBYXUnjH8kaXW9NfbA{D<4aju-qjqo z8s=bDe#$?ciOgcLRTRQtfwK7@SPv7VP%5$c@69%dOQ^D`{D@**mKmKysKdc~_G6?R zAn(60&q6x!KQ-Hymn}@mUQi!x&wO9vd9kfq$qIvZs^JUr*O;j{DIBfsd2eVA0N z^f!>u3sZ{8=#UHS@yIullS~}+8PiTRh{xF z38Rd&yiIw?9jS5yD}2Hn3RAk7Jin^Zem_2J2=WU<|BbDU%iqfL>577$U&hIlmiM1wuAbm#6 zx0j~>6q8lq#4HU9Fy)bq7WRL#I~9>YjDP6Wc}*aL%o8PGI-QVnM{IsL3JQ0P>7vv> z!#a$@^1QHzv!f-$4N80ErUz^LJ-jY#`k-04jU@u)p#M~z1#@@?YmVSuvg#NcjU>kt zrGy_CqLr-eSal$q)?OFV9z0+qBJEsArmDg;g8UB30$t7@MNwt*RO_9#=w905&M;23 z0Xg!5hn1CTlJgs%*B}&wxZ=_2y{FL>3Q9m|q}npKB#lg!L$SJNe}Y#TWr;CnlBRH3 z(Aa$?ThlgthTWDNKaMnI%iqWqnw)0IPgt@l?EVKX`@iE_8!vM34z;4=uf~x(cGoRW z%KCBd-Z;$&gw{u)zh|gGwZ8Gv+y1slwAwP7Cs2$DYYG-LKy_qcEw4%=bvDibDHfkd z{vWcfGG*gYXqjXuoEv8FLLk!-Vg8tta|W7m=%rDKs;r3G>dYU@d;@>z4VA0fmY_3{ z7m{TrHFa3a5R-N#4(vq1p7Dtf_EOrbg$5sVh8pcoq-up-x96M`dZ}UPWO9>^-C_=D z{x@EtPAm2=h=@_1Qj-;CtpCIXyj}HA+Ktf>UIm3@P)|&)zX$^X<8GaMEXQXpI!Q5dyF0HvJ($x z>ubpc3$7Lgl(k`8@BKQHg_AZ<)h9>fE$lT!Caj>7jJdFcC#xx zVOAyeK+(hNmk8lQKI#C=Ric`t#n)HzJ%Nci6xEeu)UB7PfgsBG1IBCc-?nWV7Dlaf zk%ZEa1;cC<#Ka?-iiK?$8r(LG%zyztMx}BQl#<>YQfzf1{v(Z6XF+^@`#?nKl8Gcs zL5xj_pt`ySmzxe_Hw#~(aJf0>=Jo zlb$VpjAaI0dTGNo`wpuibe5CjG z!|Legmc%P}&!^eG=tr$8NodZZGt##R3G%n}n6h^5T0ADy;QybY_?8a3dZS?DZ@g2V zFw-ArwE{I!x(l{`gAEduoE4u{rlbe`m8^3t>5^RB9qXA?V`hQuq+gYa5naU*jC7S0 zOfZ^Rtvj{@KB}<){SN|AZOZvTzwa?zr+8(?N%CP4k99pxcfnsOc zlk5?VsjWqFF3J*jKxg!I^dm%C!g4NBROmR2d|I1Z(^55qcADvpm+Wb3J{AcF;OeF` zXU{gIGu7|KDGvzQP>!e%ex%T_`TbX3?4L@QM+O`eN~KSbH=se(AY2b)=|$zTUUR@2t%u5|*Hm?oQ!v)Z`P2KaXo|^D zcEz}kS+?V_4cVN4_}}@HS5r&br6^9=;c)bdDeSdi2?6DpkH}-*#TnP(a;|{@Pn~hE zym;z17D00C99MbC)vGMiF$o9qI4nG;a;mcM9q)rkHGKeqTENP}1eM%F4Dz9d?$l)9 z>HXql+5Y`1zYK?|ogwT$_Tj6lBHtmNj~!g-j)@R~4yR|}V~i>KYcRrVd1%h#FGE{k z+pd;%%uE;*K;3 zy%JY29@|eppFMl_+O;;&{y=6+EI^bDAK~~^PU_tF+Zri^!Wu;pB{uGAT*2&opkWEV zxeR3$W}tK;n@>L6?`VT|ti90gki9a;V9xO!?)IRE`YK@sfm}g~Z9h^WlnUyqxZ1E3 zN4g_S@;Ow3nE&Jn_92b)Y++?A4WiWTb!u(vetd2UM)^q62h6_b zIRX9VHK2u4I-^)#P_|Kkfm$3sqv?yA_yELY)}vgi;U|1W$j)_+!^y~4Jz8;JCZ5^& zc-^Z0pQ^sCip|nMLuqQBc~&>89*eJeUv zwdAz)Lm=#{^g|L8BsEgR&Kn98yypOS-1@a6f{C}nY;-qM5OE?dJh3m_SYGo*7V z?Qmy8OBS3la<8td<#>B4V!|0Ts7rzh?or|FZMAX7P$?I-D7~u96tF*lnG+t+(Ayki zmW&=YZ4HXZ8F52s%AdwGMHEp*^f+vm!`U0-L`eU%?azXb9Fj>Gb_ua*Z; zkDT0|j;YMJ)x2<%8RxX#4(b-oGn)7-F$cdEiAoV-@PySFZM2%0)(tw`1?foFC9AtR zu3`As=l{k|o+CgrXK08uVP$0{mo!%vkyu|2BGSK$2y+)?%2UbTi|$KQ>>0XfdbNZnY`=Mb4D-FpT%7TRyuiT2!d5&RG zhMG@tZD2d%MrU;rmF*jkX$zm#RPVIo=Y(W#-N34Ox!`3jKB8Cs9p^orY-|!3rz(!2 zU8w+vEhtu<;(BIpT{6WK5W~fH0a<~r_yy%h3@CTxAP9P}6Fe-S$`i*zwJI7T9-8tN z)|H^QYT!+Fc2`MguIXT62xtxQ2nHgqMW{1!d!NHquF}9nY#JE`vEXg0jn0zB2D_n& zmNCisp)J7+HjJ*iAzP11jTJFB+s9y}>7kDhn%$K=It48EwjQ+7YT5}tz1RPEe@ytY zj;Z{xCNqtx=K@4gVA>EmsHs3Q{fs>TzRg4ECrSj)?72c&j}2ye@rE#_v|RSG{; zEXpMd7upj{6@IyM=MLt=P|COUqlRHtfsOOVZ>A||c%GFLxfDf&E@-&2=|*w!IvC}Y zGo3gzG@Gt>m`+ofCE5{$!3Zp^!ZP>YX+hTIb;n24hZWqZgNwzyF1a_mXtsnmxoAj` zJ`t=H(kx=Q9XQR?w@;tzu!a-azJm6ial@ETR<2*<0>;}9P`b!E$$`<8NSrFac>$-ALm_OQU zydzGIedkP6B+`j+g8Dv!)x7w&`3`(bQwkN{$HRkS+m*~#Nz;e)u}$jdd5UKF8A?Ze zK)7@dP5r>RkP@V)sCY~96b;~yLX3!rU_x}~`8+MqH4aPKDg%;cw;2cFzWQ$ONCa!P z$SVD8l!Na~1FG9n=mpFmoT~J!rh)xU1<`XGplGk)WNJa5#3!$4IY~H&M7w0^(qrLb zOyL7CNg=>OLsg&z*^>f z7TXMUdiU*|6riX@s7<6VCO&_f9GUZn3Z7+1!x?v*EUSheApF zox3%&u-Y4OSOlk#;QTe^fqe%;xl`=cCme3rupxddh}vkKaoz=LVsHpc%XO||%p;4> zvdygCBBrdGF!D(EV!F3VukCo3=)7>c3LHNF=Fz`oCakBSCNDBv>EXE&%`fVZZ(6mX zYX>!ET$?!@v?pH9P8!Gj(V%ip*c985`0$4Kf}XJWma6B24)bYWp6hTOyW{t1S-06W zlEW3H4i3fag&POl-N@7_TOHRDo%jZ?)nOga`Ou^8+H5F?DL9WUn<-69qRBt6$Y(lz#Gn+X^}pT8>)EI)@7o1q(eAcs0FjD049C8jJbZ&RE6kP4PTl zpgbXb%BIYMPBSMxesW{S3Yr@cJtN0zv_lBYE*wZ%9aX#M8)i&sx)8={S}^83EXwW1 zUui&Glyi(HzC^(W$}&o!NtvikKPny7dt}mfjo?BF{-$1d&<@RHPe0TzAW#Yq9d3E3 zhQ75Z^^T1enn?`R^Dy9GNQ^7fL^ov-spPR783h@KE=B=}9@kSK~U>5)*>A+&s&m%&w z9)<9qD(uta=^40@An@C$HQE8t`Q{vv}32 zRW5tnqgz9jLTWyRm)6TFuIEam1P$wSFs}+%5*qk8x7Il3+hN=UbntXMcD#!-8dDCG z9B)Ywxk1eBsF)QnVYQH~I$>CiIm#4`vFTN4xK6`SRR)bcYMZDTZDdx^hGm!do z=(lPlgv^W@x}g>}@X(~hBlJZ9Fw!47s3RY2qqU0;Jj}?wmr-sg#1QXIm*NVmLUJv%Lg)07ECj28(h z(IqUpFoMw0_&(x=>+4e&gVn^>~=8BMoN2wAFA>4vEDEN6vddM6YJVY{W*H^JAWm(=2%JO0e_JPP?cmFB;-tBe z4`h?aiW}9T$$<4ot5lraoz-3tw4XnJz82nbR#U{;4PH*W3-pO`3R~Xa>>wFN@Jax> zS0PT(SiBAEaGQz~5mZgN<1b#ha!Y9B0}q}#tAOehtnB+w&;fXH6m_jK$BvN9pAXVO zl-B9ReyH#_-N)s~?pB*QqbX#}8(%OMF&hoZF)o*Z3fv5+^LL~*cNV|@8&KRgtF$lT z@t64slWf{Wmrv5#DyeGc3CCa6>&}=lK4-B7`uIZxH7Td0?|o$YH)S*1Z(|FEFZpc~ z)O0xYr(~;s#{i-bf14ugW$K`?WSGIKxfp-+YZrZ~2lI)Fg>+v)_-5P81IZxZOzC9x z8zGb?|1+jbOi#S-tzXCEE+U!U#(4poe&dOx#BwAWg5{UqHa3xBKX_whOA2`(Zzvb} z6a~rvX87b5QmSbwHy_n>0|xutxMA5W>xcJWDUY0w?HjH3#Cb1PbSMs1KfyaXSSJG) zYqCnyWW&p;_WZGhwTU3*iPScA;>6|Pf~jR!<_5qy?b}|22AaL8cXVap8%FaY1ob&GG09(f$XVJdeoYEu_j7Dw z0_td^75F}rdPO)Y;CrGgn9AT=vmluri<9i7)u1>Om14(%z?OKimIjr%P>~u^Sta3+ zZodbtXj?d@%KZ}-psumYfN6&{gK)FeT@F`SDa`(`y@HIqQ8c!=wuz z;b9ADU@KOGU?9-AMm=QMgAVs9h(3aR0mI*N{61_wSHMvMrQ#@+6LeGj4WETy5P@>~ z@t`x8b(&#IL1IopA#BlZO9U)Y4S*?C9HqK8^u;W1;O$2e=Jwp%<8oJ2KA0KsLKU zgo+fJliSef4h;<>IF-J~>A>$IllaOo#Y3&|1$_02Q_uO)v>9Z0C{ z4IY$(tk%sL_^do4!w32(7>vP>%C;&Mf!W=XcYkGLh^I=jtnnG0SMwciNI0fly>5f; zJ133Pz{l$CRK8~nQ^e&Br<;TBU3W(o%nW-mkAlHaRpuV z(I0wB7389bn77$H4Nm=E7Y^wO1mi|O_7!Ic>1z{Q{0nn5kJF13`UB)~x-T7S z^C%kQ&%PQ;9NY={GeoFra*K@`c0<48rADLb$YHcq_>#sAnWq_X?v3~WWsIcM*^*0Y}HS!Ptw zDY=;^XU&`$5)!f~0Dr~MU+tIvfBf|&y>wt8y-P^Qd+*Ks=44i8Z|&TWz?kTm7=JCj z<=ju371NxQ1AHwpH*ej#mzx*7aba&Z_=|kYq?vXL!tTfYu+XGPV`a&z zDVnJ3ENFwys7iK|a!$0IANcj2J%go5vm3_vS{(X0TC{5}zFpj`nB&CECk{0VU41P{ zk4|i3YaPpl?OV6L6#U`KlJHvPjy#uTQ#AfpD*`fVo5UF*t%hX-FU-wO3YW50tzNyY z@q&Hy^Cur?Yp#EB?z5}oB5U6+zI8OXAZKO6(SZ@Ak%FMuUJ;2^!_{JyBuzOSTwvCEBn!SZ(V103|2pr~j19FJ zWgX8>njKt|oy+(8WyJ1i+n@_-RJ$g#367s+>3_(y_%EDuq*^$2>7MFxifBsF#ppIz z{8kwiD+bMS`T6mQOZUwC)~I|f3Ma=Rb82&QlFD*svwf*eTI`kC4dV5xbdQXS?iurN zkIG%Ot8N4}3Sv-LNULVmpjlGmk`rI9+%^1Ju_$VV1BV`uNoR3xEd}G|rMqP->Zaz8 zA8S_U(Oc+#Ei4Mkk9El(FSV^Q3O@M#mHfeV-TiL#7bQzt6K`*5zirXt<$a933z~b! z+>Xw0lWwmv8os(Z&+F;ar!9sLa2v+uSwflo>@;jj`|TJ7%O8{O+_NRItmCBE(Jrud zqhe-SxRmZQGo)3O>Q-m*$f^!`+_sAiN?R3mJ-}hXoR#@4hS3^rVBRZiQgz6&wsqC) z&9qfUQG*}$bE|DqU0db3xS+;cwf~130|Gm}ek+`hn-A>N_}uN*Q73jT4nBzM`Q$ZI z>ecoQSe_nrmdD|IwOIo0FEF_$zOZv4Zgc*KbDk{zW|J;-*Kn!ki~JVxs$bbPzuWPK zGE3^qc-)HL3%g$n8k??Pk(DRyoHGIousze_Ff2Jwnw3`3>1LZ|T~FQ9f5HkTdwbvW z@o6?3rl)=Ilh+N%4B4M{U;+{T){aI32KMr_s} zDJ!cMgTuBu4{8R9lpSI?7f2ZdS0z_9zeH(iha zUU**2a+79#*HiM?!S{GVk!@Y+g>OHpPe?NrpJ=}mZ_fB(VeD}1jl`hGT~s>QBmpoBS((luw$JKh#)>gl7)0! z%GPjcr^}1Kl3HCSMK$$d`+G|B=4+-@r@V!iOzt^ktl99YqvbI!kbUUCzM;Q4by#wb z<4wE5OiE`*?;QWmYyRQbe#4U4>cT~mej-*>^})<$?~r4!x7XqAnS0&FaH-9$MX~qB zpCb10cpRw(9`kqCn_vI-Yv-@SrT$NF7R0ULht?(Zb#RDtnKf&cCFb#oZ9>w@U9m2X zZ-reNbochFU+iZu3fQi^>{%oB7oP9x z{a~8Iy7ObR%L7==&V^Y0nDiA{>=RnS;Bj;==FyL_wTjlEiq?6$f9EY}`-N6T{A>Lb zb^f9y(bt&@KNjIy<;k3fNLg6)05&}3+@~c=)?Q~r5zO$&U1^28J*G81bmEaN|HixX z`m<>`Y~4og|KoMR+DtA)KQcbVFE zRIoSmu79V`!3*#1p)!?Q9FEZz*?VJv7C}(DT~t(L((cGCwZYzR{JkbjdisW?^5gtP z7S-}BXYA5-*UUz}9}aoooBMAzspeC7^iR)R(iTAxnhiv}?(v}G6dv~5Ub^+hJ9k{P zscyk<)ZK~@1dUKeQCBq;|7dUAxIu?3C~WG?n@zcTM?@0!FF$;m<$T(ctxJnd_$nr5 z*cnf@{QJfW!Zu1Cf6Koy@};wQpzQ4va z^Jg4-gbKC*&sdlL!@4o?q<7{vPw26%^*~BYAb~TzGu06B~Z4_Iv$~Oz+cJiiy{Q;#_+4=wa!BXVrcG z%TifCR`&yK*n*=+jzoU>WkmoxOMhO{X2Bjz35kj_HaBl)0(Ke8yqe>$nG~}PSr!Ls zZCzbmM@NU{Bu^4E@}qYRKeWy^xaAdfi$D9keJ-xilhQE;Tvi9v8mYw7# z?ZgVl+R~Sm9?5J)%DF@~4r`r?Pz{iv)_N+Bo;^Dw_;6!osxiVnnU$|H7Put~d5Ejo zS8v>SmEFI*XHum-o=410olcKCGS?tR+56ZjZz6bx{(}f0E*`O2$WwJ*Roz#WSfXZyg)9r`05y%p;?)2_YlpMM&3D`H|Yg#EOkmxN>q zz(Y~q|L%3TkCWM45Sk_A;g+(mmY3VIe9AC`-CCw2ynU8tLI|}#TvAe%0tjTB{@HN0 z$gy11V%IXtAs*=!;(44o)jtof=9s;z=8lSQ3lyTWHMegsbwQj|yN>-|!ogxj0ik6K za&c+Z9C-Y$O+W2J1f{>mX1DY?v~E6b3sG)Kn`U`@d_0ZTIx;L_;p0c@J9>sYhH(Za&$HET`_yZ8%>b7tCPRJcEAZ2r(VGmzR*}y!uYb{Prk(O9H!0t(#Wk<63tiR( zJm#@G7n;O_h3D2{M-=46|;=rFc zJI^zPC3WguHI}gB=8@%;wF*AV5;PRlym71$l~o@StYxdxVr?&LRN4R*_I8G!WCXsM zM_~@QZ}ss{fSKPw@DzUH5bXFPVRW6P^2kdBqB?vVx_vY%!xFknt4Hk83>#bWNH@)i z?LDxvLFio}9OX-wAfvi4lrBh5Hb||@5{(n2a8{`>H%{_>tiVIUGyd!`IBuky5MgRcY*iA_NL(c|^X9X&n= z4Exqi8usr7Z4?iLVyfG-jLgzyX~!QWprSZHyHoe;53b2V8AV3FnRd)^Rab}jn`cd_ z>6w;U+be`#b(Wlo@4nlh9_DJQd3@qoxkJL}z_JAfbGD(%cwz1`AQtCx!hsjDA|E45 zTrY{z$L{cL5W3e{PUa&UHO_7jvauh33YVh$1$HtS0|$000%)OibFk@OD1N2{tJ>yP zx1>$wOSx4%KTKi1;4%3jqKS;8k#91q0$3)NKKCL|#lMW8bEer=&vp}fdIz~(buGxO znBm0SgTlO3X{Lg;kFJdfw!=wY5{+8J15ZSm+*5K#AYKwO5LFOc{>P2jji{_7cmH*N zr<=6z&$*ib*sk{&Yt|mYmXBIjU9*0kqz1ZZ&pMFoOofq`uSGxIk^vAZm{rWE(&sw= zPMAUKZv~kJbT{HRfR8x{3s3k7-}L2DuWiGIRCy|KmJh5Xv{K`H6gl$KBiKE3c}0M7 zTQ1q*{)F6xbHcXf1s}}M&qp?sl-MNBy~;bc4W4vfNak-TF4DE*wk#P4m(#2DQP~>c zFk2*<6^`Wr0O#xoAjMwSM9R&XV~*W;ciXVP+9xx|^O1HofYRq9|ELyr<>$XG#k@;^ zviN3`Is)~O;tK>-&6Brvt#8Neb+Od$nFzT{B?66lneXM+$_P*eTHw|mF+Ak?xx{jnc}{J_}F zfu>`sjgr#fV8 zFp7o}wXWTgkzQfHrsHX`QTOOl=2*+D_`f!}REYc>>;*zu4jgKOz~G9Md$F@t)A>5n z&$L?xu$fsUqFO3&azvKwG4R{3^$q}x**F8wsTv;PAJ>~r!WJ=ZL26M0=LRnQ%3^9k zB0IG1%B|SOtuc4vJlIN#3c3gxb?9HFGot*6_F<=DVc4DnDCzRvdNqZTu^WXT28a_B zR@xK0to99y=$6ceIFDLVFZ>Fmq5uqz_!Qv?D0?=|hjA)FbZDsyZof||)|#QvMzU4ak{ z$mCsTH>j!f_g|jH3SC;aCp~%gY;9(^wDk?|9AHPbtVS(#BK-$;`r&tDQAf3B;{3gd zo1Nhl*r`IvE}lh-L%659M@YnuiHnFx#r>fK4hm^y*>1shxXw+pQ2}?E-H<@Re{pRS zuyxk#23u6UCAv)tOFf>aL`xWw#ZJ1l7!IF2c~P*b;JDv^0e^yrUc?-vVw}BA`>Krv z=-N*M2y21)d4gwjgO{@>UlhNkTK>f;1!^W7q=H2wC5>EAdJ!Zz{-_((BLa?kT)7Mz z)Kl-Os^z=LshTTA&HN@j`vWT9`xf3n*;kp|-(wL7g8|3`jT2hcqg?U$lpEcoJRB=M zvJ;!Iv<46;{*N2LJ~f2z)mSWmtZ%}l9$R|Wl`c3|i*nlja8N$258~CneL5@anrDx8@IV*$jsUH%m?VDK})Y$DT*3{G`=eI%YTI64KL8#354d3KZG` z^%JRR9lf-sg=xpl^X}gO0$|Ls$0s5OnIqhh^x}~)5tU>F=3L7u5)PDJ2>&7N#k}hG zl4AoKQg~zKuH(It+xzzIYbvk;s1#nop};qWM?@G524ffO(6)6OI@@Y=V1NMfW}xal zJ4AARM8#q@VT-`YIYchVu>^lsCL$$EI;s=HWvC@?qJ-6D6|W#8uN#LUx=*F-6#%M1 zeTd(MW(&t#YzGy9&b8y_p_H-#i}B|EW>sBN({Sa7A+3pR8?>E>-GdyEf<--P3+pXH>SS`%&2z2fLi1tOaS)~8i-$&(&+Ua(!7N%aY`Fk8>-O|Wa(8X{D( z-na4fR$>2#MK8_Bq>Zn-z{@f3RIJ+X*qZZ@PKXB4X+7K1E0{Mn7?m9=O}Nzf0}hdn z@E_~MnJD_`tph8+>sjZmLd4y^@VjtSB`#B)*hIIM-8gJ#a0X|c#5Ftg?R)$YXbb>a zBbMFZgFV&;KrAl8me#&^SDXPvh49P9_CZBR_g5TLP-9Uo2&fea_6PMu4 zgyd6(#bFk8Xclu{)io`4_=j|&*(ZeLTTCsDCr_Tlt^{AS+nQ>7eDv0<7w@M5nA1^J zsi{bl#>hkl5wj8q2Wk^c}b zMS<#V6&HYJLl9qt1S2BhSr+@)vEev+b-#U(bNsEbaaZuP#jTAOQcxO;RVeJRXC)(` zKkI|CsSbhb_@m8f6)7P|{;uGIoxwB>qXK}{Kn() z>?~F|jaY6V+Fa*yVmVthzde2zDAzmn>CtNWi;##1%c)WD;$3mR$S#NF0ia8B{Vbs zb(n8f^}{>yhWn}yvG)=(tL(>vvH&txp9Mow^!2$<38TJhr``9%8ROWjYLmhjsmu>2 zEDDv46m=72WKU@W$geq|8GB+)75M-n{SoM$!4?H?ymT)Ckv4VxyT+zK5JU<`AY6s zl`glqnBnsLa8ip6QdfZ^NLKUu%Uvm~eFWxBf2>;E6fVune*Q;J%Wl+Tp+Ne5IL!$@ zlz4qD<(nRqOC}KKI30i5uuY*lMd;%ol!lhelMMHSO`P3MS_cZFO~*QQdew(?7MY*X zydFZ05=iXqXo3NpH296^Iu zEMB~r__B!SYnAP5g%)R_T=-_|)~!TlX+TjKo;_=|;nyE|ovm70gWwc3)uN>8jxEKr zu>23&MuPHkaBu)GmM85)(sKb%BLvn&H%>qa?SMEeTIn@sxqLixWO?PNr6(%bQ2wf@ zvi-A5X&(;9%N8IQ%d{! zI@@_JYEH09!d6~&OO@MK#LM7)d{J?6dwV<1(QCFgM7u5k>Sc4V9NRv~nct!WVh6Bq zj&SX@y+TZbVikn54~IVt-muk0U%rCiah3zgT6Hfq!(PC{fo!C$CvRRQuT zGV&Vw8?Jt_Oj*qk4{?4nb*!va7B7ja9uLKnWJ(3_73r5U5h`ru%oaOBL8^2a&+Av( zJ11;I&5XMsl&$OD5)r@=SLc6cS@i*rV6X6aQiA}PC(YvkzL*$PRU+PI77t_phhFDW zOgG>iiU8{QSi!6OOXIVu2?bQWnsRP!$vv?`rc&Be!NfYW^bEEuT$EjjYg^!u(7eg4 ztEUPk&ZX_(tQKYMojXn9b(!DqIHjjr$3Mzg?PXMl0r2fyWdsb-xVb_if+m@ZkUJfq zN_+l%cPQ?v*{E@*b8gu6=FOY+>XpFXLLT7|Fv6uh=Zvr<0a6|S8%lD_c(5>UxyB~^ zc+s5&(7)Uvu$nYEIJgUEHY-c+|G1dbZ8=j>hJc90Swmb#emHajco&ke#ZNwIoL44# z4=G49f-q#Kyg|)@xx7AIR(Rvau5jr#uRtNR5dmUj4bOyIMNpY{51oA0u=zWB)|XSt zZl-jeRav?+M})PKM@(K(!3ihY;T6XQAFEy+VSV)c!DfKiLHrHjbrFba535kNjjAJH zCjfAvXv>95H9}_%Yg4mmuob-60^^n9SlW{gxrQir#a<{{2LNgCWY5y2wCJF5vH3`- z3eayT^R>QCHZW4mxtq&gcWX%m%_Rvpp&h7d$x#p`;)x5pa3j@FF;X)!PZvO8GZZ#USQ1haSfgYaTeDatA_AZ#IqgaE@<-8Fq=isCxsC zh6BR+$Nl+1?E6EZw;~s@@9=O(Sre{%$gxcL0I1UXqpYk9tW4CpfA=Xmzwz+?n!O~S z1@;TAh9HXzJMjuWQ7`^|7^T15B7Q)Jqi+uAbV2fl&j2VrPs;fjjKQH3YSd}UUFP*u z=Jh9<5<9FfSQ4BdoQ4eCCVl^}pfE_uykrXnL7ZP*U5$$dgA1fI0fd`3iA~H2dsID= zyd_#s7J+xHA_ho((UVPCT0_;rZCof`_;cJxEscki^cnauRe#6Q1z>_LG2l=W$?Ku`gsLFym{J?BJF&x*HxXl%H>pTZ zymW6Oc-f7Vg%4Vho}dBi)0_yTFb0q78t6s3CKPwEQ{E`O@I^jEN8HiCBD3a`!XR5b znca8lU%FGzVaFWMp}-7X=7PD(caA^eJPEm$`EjaoXL$BiD=`J;=_F(VW|p7Q6o3N2 zOK%k*7G6)aSl5mMKj&yQ)fvj809Qmg?L&n6+6{_50&pT8b?{-VPtEoUBO*Eur+5pe zC21E*y|=JD>iZ8K^aOQ+*NN(L)&>AJ<+P`^N0*JXe>AePB6eVEe9Mf zpy)hF2iYDWT;^MjKZ^Tzg9@g}A3$*2;9*Fe!BY{p%oOpCYC{EQU5V*ks**k)SPY0GbR zce4c}I~F^tmcRZyc#A%qbNA@1DXlwfmSw>hRo^WvKT-tazGH(aNtmEK3UMu2ux;>( zvJ$i>9;qYbD)^+;>$4IVG?55@aDFJFd6YOUo1 zJ5Tar#94*~I$2@)zw69X2(zPKol97ui|nir&FfDQ8O#pS3JS$^t&90}vpI52lE}$< zHlR1#3%1~M)V7|ec?S@kDU^WNHGYKS1@J2TP9)7yqIy>$8~*9Z3K4FAEI^ZQKm`)! zZ7O%TbNhB-wdl*Y`9k^2`x|Lsi=TGtM=su;N!v)oxrZlIOE(2))Z}8?(9a;?i znzS!nIF+K{`ai=FLnSZ#+GFyAX_n&L!Y*LAC$q6c#ccxo&~7$qrs0^R^WC6KghU?Kf`CF+0VyGi&0(*>5$2@ zE3y3@0BFpL^KcCLHmD5*!-b7u1!X@v)8&w-qV0?PTmINTkPmaHV1-Gl3!dip9iTJK zSa65t?h(!1Zy7l2ky{96`nB%Cc7PV-j(L^shj`zns>&*>&FVa(v~;nNv5`HP?7+?> z2*i}aKIY}3?pLCRZLzHWUp={b#4lr1i&zWSqjJe{Nc(*8RXVFSc->wG(Q^qj$GUKa zn~Ihf?ZC`GU>yN&aG&D31*;e5!l6A$OU%t$-1D7f(*7aK zcqnX1aGHeB&i|LGtGRh9Kr5HVw;;LV$c?PC7*=F;fT5g&I;tH($C82a$pX5utA$_L z$o&=|#_@2fgu-EBxBBE$Pv0eN2Gn?nk(FW{aYI58B@}Z!)6Qk9_s?kf`q!JmirkHt>RDuJqtBX0*M7Udb|M05K3sS>vRTy#mHutNdQ48{au4Ed z!4G~PNRaw1|PokLxq5cNc?~HOD$r#%-e$X!P0@ucol0Lz}C@v zPa+$1n#Hn+DjK8u;>t_`V+RE=XJY6 zyvKpL5?9s%$=-#;yjd6L25%&x2>6R_J|9{7@IY3q3#sCYLeR9DN>5Urrt{da2sl=a za>S@QoptJAR;#+B>~6XIK5X_c>*mJY&4}pd8wKfA;)_& z8^Z0CQLo@_>^E&B8o-X%@EeF7Q&4FtzFhpz&6^Y8B+0#qH!x$n zIFnewhR|lCQjK%6R+oTS{Lx!fDW_R2PBRFt;F`r5T+_GV5%3WgS^P;Qbf!z~Vy#kt z`2`&JXR!Z5ru?wTobfL?)6E}a1(P6j@Hz$fBL+5lVJnK4jP+F+rQ~JT!2M1fv<~}* zOuadU-M=L1jJz~?%fJe_I}-a3?;u-SnW}&Z)uJ22AvN0%=s03*i3av_-_ivDLNKR8 z7X1yfKwufFax7FWQfPc^>;+*coD_im(|sFi`zeni70cvhCN0rbZeJ=OXAA=IGHW1a zUAb$BvIw&WgcOnxqL-fdG8t4GXc;Jwa+-l@43Aa--SBb9S{PN>`l7h`4ua{ddyA?L zbyEaNSyd$h{Tb$jP$z8NQZN1m^S((lbZp#?@bK^!8yq_U##7X&reeHNI!{ZLq$NEv zQ#t(@@~P1qc*7pPdQ-$Jj+QX8_h?PuYwO3hE+7qMGQI5zrD!B9l>&4#)>+zIe1hN!? z>Xi4=!h=`fw}kiUj{>?5NF9aI93eIdEUwTkF)#b-_?jhWyRH~MB$)+(X2nK=+a0B4 z0I1zB8@GCa83_a&(A|UIt|9Jb6Z;0$qNqKW;*2H-nAy^tQJP(aCUukEI%O64r&bX{ z>~u}+AQl4NEYnmn^k8~6%qR+96-B33gmlxFn&O;kB3N={G?~Y(n==4VDi0K z{5Xpv&g6&08^M^)ouH&+7Rt|O{_4_}^OFpv=`v%^zC%WQPJ$Ktk>I2LL$YMSoKEsP zfzd9?m&yA+Ztrm5i)ih*#o7pvq-4i<2d?<3P||IQNBR#D3asElsbM z{+U<$=ir!IFi!4qx$imsw}8%064AkIF0F2W@~Hd` z4fx>f%1ti+{v7Jv_a?!UA&(r{SAN|NQzVAkT>X~KBjkI+Z zc!Nj>(1nx0-|iMk3U46nQVpszpdwiwq5E9qAf`n1I|?+0H;z)=UNX!UX8-%E2fzl7 zq!#qEP=x@Hg}jzXT(^)6&2<0--~mT?A4JdKjogeO&I}1Ijol#^FGc{hO|?x&Q4;LE z^Y1*}4{QkOI#=rX86_LMi|)y0o2fW#{h#lBKt*P ziBvKvA0*B$olINx!uMEfDT82O2QWWdYcNhRoMmn#Z<-A^;8w#GGB>b;0~&=P{WDm-x!JQD6s71(Jz$2JN(~rX}cU-D2R2I~z)nsHpiv~ahg%CS| z_$!1U)Ow32B#lB!~t)Oo_F3<;o zlZD}F*waN*vlU)S#hK+bAb*efR3IJ@ii1mA7W$cy;=7900GuIy5#%R{1}X}qOQM0s zDRav0O)0z`N99}&rcBticy-BU{gvp!N^WzRQxu0_D0upoE`wbPA#4S*rX~c^GyI3F zY)d^mLZKBdufvya-M)R_hXi%)JKOd_nxm&iyoDtKMd}cg=bC!5ChCT|+Q7n>vISL? zyi z;M|fQGrd(j-AiiN1T3j&-gyTQd36m`6S!gnJKNDUupDriNAbRBox`(@9293uKCWwM z07`|MM#@4GOp}|t6hlDD8HV?=LDKOceH#pHoD2R23R|v)oGzRKWs-89v`pBfd@&(-F$|!h#x8h$bfRQn2;7Z=<8yk zqgc4r=u#=3B~PygL3ko?aqyFK!MvGA{YOd3MBE<~n<8^D2yEv|@D5$0f&)!L)T_`& zc8Dva#?Ns=PZXNa$~^-opRPR?YF2&%l#R2)`^`qx5@0-B)6_q?e;Z4vVdU^m`of?0u(PSt>5sD}#y5h-syS1QQ z3nDTHeLi2I4N^+Qb&`?O*6MfiihD3av96`z9Hj6j1Z$*SlM)>VAdsqszUaJ(MbpSp z65`QviNz{;gxVzdAT889x-7O9>WF)?p0J|L23>07g|0W7XhCt7CJ+s(%!C1t~C2 zACnL&?L+Q^dz$S*SfHBMfoe{i!Ze%Hw4JNHbQUM*uy8}!lB7-~A;6vwI(VJYwTSLH z{U5-`UgVsonuVH^r2gw)N%Ll6B73$Mx&DOR#^)vKN(t^{jq0U(HhrU@U1D8x+4IS zuk+;)J>X4%y8yJVDV5p`t|02G=J6fK4fa47)YnYcxq>^0=UMT1!7DtCZI(T7*cq#g z>-)jHTaU`=JaKbXonU8JF|;m+zoQ4k9p4Ox@VnGzXt~)m#&^kAa9^8N%NPX^wHUN}VGj;^^KrJW2`zfjiWgnX=#)JSlX_bdu_i87?x zM5jxbJ+s+$0<~byn@I&%6mA}6d}FTjRyRo(zt3yku;9bk_Nn1g7=$g@-waV`n-T9& zn$4sFM$pLcO@RJ48N{e=WoT$p2by5ggmh9O*n;+3Q4S#FNCKLU7fAgP1UUGK*u8T` zObz*QVJvKc%4^FN9Unoha-7|u>)WD!Z1vouZT2Q~vTHe0cB1(QjE!7wO(ZbTOum^L zizDuf3#i6ebDh1yH=-XhKCM3s*0ncI_@_xI;mC;mn3VdDQP@)5kxi1(*M+`#S?7Kh z4=`ZdIBziWciT?_i$xrVg@b7YVE>nrwi}CWVJB=!+(R*F2)(6v2W4FBd<2;p-~^4Z zb(Ai6+%^C@LIOzaNYr4hHfqZ`^(A2^82mZpkMiLMeHgX3xJAN(YjL2iaBy+-Y_urx zYrgB5eHApJ8g26C0(Z1|KyF0iCcq!#8eAX{My%6m`>LnS|KlmIrE%OpY` zKOOx!FD7h8Y|=zoDP1CCBY2~WVqRJ}+MbDkcLqTT$>wK6M_|JJKHZ`UCE2jV?n7xfKkys)8J#&5e-LU3)l%%t3o1R&K2x;_<4lA z=RPeL{(v)&H{>isH|~o9Vw+nEK7j~7O99R6tnp zqN|rfeTPw94Y0DDf(3wX4P?{!ccgSQXgZ=Be503O^wLixzJE6semIzFiwEh2VpVy0 zIaCX0BJrTWQ%kc@g%I8c8()t+W|>43|Hb*)-c_HWCW75~7=3~BBdF^Ya2-)gdl&4V zD~Lfhpku}A&*0-d07!`9tM`^3vbhN7Wg~KO#M=KF15kZ&i6#K1ixctBN|M+~StvE} zf^-%=Y!A465dW97DPZHK;t|FTup*cSfyzf_R}Z~VyQ2EYvw4FQuO)3jIj)FfgMe$M z6M+33Lld}T`x98#HLxa82iv~E=v#4x0zDtePn<<&=t4?Uv4& zZrp6C{0&VCTI~$JY37rWYzg+=K|2pX%f`nuA^oP!-Lf{je4 zMnKD~2XKvj4la~j773^ZHlF|y%1_gL=;cD5%#p-QgL3!ee+EA`87Me26PkQxFW_Gw zSukkC<1z0ipE$%n`att1+P{$ihjBAdE@9km)Wei3Bylo@m_%ZG$H^dXI-w!GU>o7qmi%YMv=P0l!OIMqRBm~QBqctx+(=+$eHox4&)91egt z^~MVh=!!YRJ1GdOUh?O z-6$keVx>zJ_M)8-o^>j9((A&}4%?9@F0jr5JVRd*Qx4__u-&qRg-%6~qCY z0IVqdRx;t!gHc#n$zDO7AKV_T&R|1$Gp1$*>TV6Z^6X6vCK$^c;ewId9p0qvvzW@) zS@?p!sBU#*x7WV?n)NJPgpK?~KKTw@7sL6U1!Bo)+*M%SMg9BYopg<5MeyMi>dGFH zjK&G>+7nUk+(Jx@ncTV~6$2)K#e|=NMk+}M^!X7}1itG@ycJrT*|ag~p))YGqsYuz zJd|c@iRjoUbH&iOsXUa`iCm@wWU{rIx|y4d*dtnL%#6?;BNPLIkPBP$g=`cFrA@Hj zs;_n+G&#h*xT?9#mUGapl6^H_ZDDp)EGVrFl;U}w&`;xhXkoj80zhRA3YkMMw2|2B z+^EiOa9JVnA!$R0UKorGN~wX2&RXWlGY^J`;JQ6I^Uk{jl{EFj;oIYn)I=T&8p1ai z;(~oJfo?9AJZS>REwl0+8R2!c+J5A63|tgcC;8tX-%~lQteP>x-4!95r4wcPLSxN# z>~p#wEy0$(RwH&_Jl2&mteHY(pFn0Ll)4zO1KbcTCs*ijyWzju4P&w3PCuoZB@a~C z$f2j#R7($TD4mYT6xf-?S$uyQ7P1LK2c<^!Ap&DQTr)?%1r1|>3E0|YoJZJQLG0ot zuDuB3Xr(sSt7hZNXxc<3WcxtTbYM@Q$y0Zi=p~;hwCamwXYQb$LwL?GRRkkrYNF9U zawa7tEG&iEIBaNER5#dx!Bm(Oa2t4FlL|+Hj?|;ZqDQ1$K)*`hZTN?5iI~DeAA$ir z=*LEvqL7y~<=?&Dr@38H0o~dR>qIwLodc+9tCit~wK=JUwjciSDJm(6gYv{=&#j^f z;x)vFc(dv*y1AQ4XtW0iK&H|9bAcwG8XG3J{pOFRfI}~o1gY=D>G$xhqTafYnzi7Q zpa`4EO?;Lx*v5ns!U2S&Fn9%i6u>{T3QtO-C)e#r%m#@o4+^8%P+0CsOAxB_0D4XS zuL4)Fd)I#Z0PQF&^m%)`ZQYWuP*Kqm>Fzlq-fXsaHmTomJyiDmABtWYyic|RNb(j) zXrQ*hWYXdK9(Fd9j@p>SX`s6`XmJs%NZhKK0JoraB|JHxjJbg?A0?fUorSrNO@YML zm;j5ch2bex88PN(6YUq+P;Bs;LK3WA$Yh#{$U-a_^pJUJ(p{+Dv0bMsnxXM4t-Cb<}tx za3@)Rs%Ur04AY@RUZ^bF!kqZ=;_VB}fs-ugnZt@HhS4D}=OAUV$-AQOUiAfZEVvMWRuA3yvy*t|z98_&a>PB!248UUqi^ZHTAdf2Bi z3`Dc#48yM(KcG$N4l|ZAj#PKm-xIcBu8!mZ10!$HdoN@y?0Tjc^eg)lA}|trBhT@| zmNOSb(;OG&Mx-tb$;x0spwV`_wR8cuW6RZB%DLoFV4&hBEwN%u?fin5938^JK(#HR)ffhxY0*G`SFqoveGpi{!Eb#$~$!gJG*^Fx7#26x`|B`PfB{uB$7V~t8W9Ed9+OwxrR6SX1v_;5;+hp`k4ByN zr~UBc4l>N7x-CNr70%I)6j6USihrW|%_7Q5GsB6dt8ui6*=XMI1D^vWG+EpDx;C~u zn>9p=d2u|o<2YKb3hER1+1KUJ9zi_bN!#cmDT<&!j)-o$A=?J;@eNq}}`SlDBlK$0i( zUf=S)JAr4z&9cimSI?z11@&||aL43~w|TF-u$S;>8_tg$*(G=SHOgvnJ0`VIei^c@XRAjHgBh3&Jt!&eZLug=m6uOGpBl1+*;X|A&-N0jBNz8yJu{-BV{xUrMn|>zsw1m3OcGSIp`V@%Fsy2=R`mb66>hJ_zI4$azLG> zIOwfcA^Mt>FFRUB=GQzX`xG0;OA6em>og2jK%RK=oBxJ4nTiIwAgL(XSqeB-S(Fbc z(V$`?$9ELR2!WlCfl#m@^AnE&9wT;PrSw?lq==@ZbRm{`-a#k4H(H zh7!IKVCDrMK`JWB&l9V64Tpb)E#xZgbR}z5GQA+_Eig7N{1YMsAG~0PtpKHvO0yc7 zXkiMOcuSXi4iCLZrH(vv(-9=E%8NLCP*E z_GmJ}S0`dEi~o^XV%|F@C=-RGLyv7}W+Ba3%ZP8@q_~ta9N>+zWu9~uO;yd_Aih+f z4XNLOPMXpenm8Ky$jP?p61?fyZSekB3f4X?tXV6fUSc0oX55~M7-6Y_dfSD{*gB9= z=#2sM-n<*JXX~#)Bee=NmB-1rem`Bmo$SewHvMPjY7^(tCYdIiwiR3p$YqNui<1Hy zK!SHK`FZ%ydh1ntsgZgtVXUM|VcDR{EjA=9q}Ifj)ikQ+kJyinJ?NpR?W1a8TmiH$ zCkrLIfPuJtJP{@BY5vJ!oHb*5CdBYWR*kzC-UKqjFe$?aVdyRd3ig0dVOLc0`wv7E zHKV4~GIZ6ZT*8nBwY$MzgL!!W3v5Whf8c-@rK2R&~YIK0LbmvVYFnu zYJONa!Z64m8|)quqHIxKKEbrEer!?R_1-ov#-A#ip*1QKNy_0;@E^eiaplx)1TsL# z$HfY}fpBU-Fv70@uDF2s$|;mJSKy^-T2cYp##MNI40Xk%3*g&1B&Ypxb;u5Nl2|fmVw##J$rx~aSK!=6ga57s13{zhqM9zf z9&887KNYNKO#FSY%6JGcv9zi$@X-!$lO5XwK_9=Q!+^Af`8$RE#LuDagNC9x6rzbp zTnM)xxEJ#?pxZNqVeGGiyF#}Eyaec(oBRk=Y3T(pPq8~d*4-zKmxjk0kZIg~Eh69< zLru-aU}i@mtrzCKG>J2*iC*Mt^%O8Xv#^WGOz7Xj*o_!e7RYYKE(E!IP!oC>wlQ^^ zVTP^n4H%<5X&C0jyw_ZS(>a|M14DS8AiSTZk%3YuxpU!AAAw*5@zuS~`!uz{D`q$$ z)ngtX$Vv11zO-Y=7tYp0m4Au&$<;W;7<+1Y+=)Ki$!qj`V&*i6Rbi)^!dk@&8b=0Z zJc`n3K1B1D2#8m#3Q`tra9#9^e^(;alQI6K7WMs|!4G#z_xz=AoTqWg3{7pQDpg$F zlTONminyyburts)-O1V_Lj&Fr#9y2=oXUdogA715@G#mKa&}6oiZ<~!-y6{&&JJqq8=33Sq$HX_XosczB^N_}XDL=~J z>C8v|sNr*F@ib2$9ZX~|oH^x3A!}8bKZ2oZAmPx_R7udK7dhz$RPMOQ3#lo-7S)<3 zH{X%?fWIk)i-K+HHqwwW8i=Q(AiMr?elhBN4(7NY8L5KiKyi^*_LH;;mt{kV+*dDH zN4wU<{;wmh{LZtdcb<79Gh}j07`~;;W<_X(o^{ zhr1FrPw93{u0F6U~tDP1%;+JL>ltM&5?~P9pUIN(tRYs({Jnm%zQ=La0 znb@3ARrh6k1pxnHo)^Nww2Zr{%JqGN|b>A^OoZ zAQI&++%yudSO=OcFmES>X5TIqa@~tDS+C%kryStrufM0YqgYmHV)x4OIZB?cKm`Su zfk^%hn(o6XGyA_}`OMq;Ab5pBlnbnom_TeXkmJR-^nzRDb>R=I>z)i-$VaE3SC|n( z)ztW&D$jAoNGyoUP`K9dnzNEBhM7*T8Es_ z91$lJ_o~HoMVt7vmZFurfJr{a7Xr({jp{a^A>U>23UbmCaO}nDc=U00;!*=UBZegB zLF7P-I{2$aG;4OYJlp5g;)t@HtnkID2+ZRHExQ5*Fa##LYvC0PQ^$ydI#5}o`%ERA zsX{j1@ZVLzce@&7AMXSsO=?pQq|WhF31ojjS#4o&Eu_L=I}%S+nc<|d45E$z8d^pM z(>#oEquD}9FdDrEjs{cYEHyNQ2uz+9n*SyuHTGa(MBflfLdghd)1W&ZG{n=yqiJ9Z zN{H3ofb=nmtOW`TOTm4kHv@xMNXr*1kb`391NK!SJrxwwgj+IT?!R>F=FNUyj3B}wz_BrfP4b)LVW31863G@m}wic(|y+uLnis3K#PqavF zl_f3b2bwi*@VjGB%`q-0;_98i=s44WjCCN=P#QT;1AHavV|tMpv-NGL*~aiSX5f8* zVFtZ;#Fd{b8_0>}7?QVicdabmM7bd{6$?T$7WoLr8tS;`&Jy@D5yiQ4mD(lZc5ovw z^^Ng4OI?u+WQ@oO7U_CV?stT3?>I(&(UiMPHW{v@e~HBB{gps8bm^p?Mx>!VhPYMz zJ3#5A#S3rNp_huJ#|U^t*f?r&LW3TT4oq963&=&`W2Xi1AV>~XR9uX2LKP0|#PYCs z;y|~;i-MU-5|Z6*bUfn{W88Zx7Px67xp^I8M zXGG>o;Eb`>#y)IUj5PwZ6!|oF;lIH?_~;0lhAb}NV0gN37ch%f$3r0IyVcT^;B4#F z04$QJY#*;?8Sia0srM6n-aOQ#4ns`_jP9+%L!}A%v@tcX0%SqQ-^mtHJNIS)&A?7< zzo=(1AY!sL)Jq!k2%7dD0+_tGoCviCunPkcW3S)`(G?Gh%^LtMgLaiAgSvo{!%;Y( z)8Z)2T5Us=GAZ4D!&E9wMtn&|qb(d)6VNtFXiz;LEG=qf*!_bs35!|`@mUJz#f|kW z9SMC75ztk97P2lJ$4w}vL0f(Bm~=F54D;vzWDz)W>G_LBJ}ZX9)X0rp*W1@?+nY6T zlkh(NF8C-A?nN9-lFZ7O7%z;hrlAql80%NO!w!bI;KSI^<($>UFiMNZVmPV|pMZ$T z)?hG(SU(YOAhknyUB)N#N4-n)7BPSqqYqT}4V$?|V~0ZDEPk3juQ z81@6qNu#RIB2fE84s9{@GwX0E6pjClKOZbFI!*ncUI<3~9iQQ^T1XcmzJ6@pU!9avts zGwQ;8Otd8a8#pog(aTyb^$D^0#IoW88l)V87+Ul+P_3%q9(0Tx14S?75u*&AF%`qN zKO63_hWJoGM?ca_gjW%Q>5Q7Jt=}M#aBMSZse;G-kJ5H5Ju|ZOj0Ur1k@YZMpwxy& z1hsJO0JAN4lSrP#N}m4{25}@996{ZkJ9m(h#g`i}bq~HCK66`vv39t5606|&x?LwsO%!UJ=kk@YU!g%ry`U_ITIML97wQ!v&f+ zvJ0#36<3Yn)4}8Dz46IHG;xj3VF4{^GCb$5hLdeDIKY|o32oSH4RzGOeM~M8T|J!A zOjeD&KyDen0!@@%N#=%e5R8?a5bb1SSqNb6^k{&RFwT)T6HwdBCRx)@Gq0DjG4EUV zB439N2#U|b#{WvbYLp|yoNIFE>%7KOwEm4@RT%ywz?CKU{gPZvG(-=yLEz`QBLCzv zfBrQ^KK&xu4dh{xmLxf`vB`8r_%scCmxhCY67!zQMfw*i{$A?k+(emu)oPdC%wIHx zCllvsT*p?(Q+xZ`;nOKhd`ro^cPKm=mstd^NHLR!jYNWVrFKyEIcd-VC~>gg)DW;J zVss(7CEboDI4ka*9~gm8b$N#avbtn>3$pLjT&*hyiJo1_NA;Y=fmD&vSK zChsyzhczS>fDkItVRdb`P^SRk0Zjx6U};t(1JrixXyEE3o{-V;K$RK!P_s=H9_SI~ zHme9L?OVEx*V{rDJUn(+&iwH4$@88p4nECFG_E@TS>z_ALnp!qG-;VPP5M)n(_jT^ zRKzIFXJCPjsv;&0(~LI@&WWriq70B3vBx&>)51!tp*Hz@o8hflL0u;o zF;U8PcEd!HE&s+Qg`T<-ACP2n;2#lEhmSBJFOu^#gmON093wu+O{iTCcrT`hKZ`*) z4qicJpEyU?ZnFlP9nvE8OQ)b-gN?xrpHxM!qPd3|hq)^ zalU(I_9EgQldF9QUfL6W#1IRbOv0y!I1nX{W=lj@^<&zm^a&2Gi1STCDJ?NoK&+Sw zR$+R`4cOy9%VK+ApqjY!_?oZTJGhcYR4)Lg=pNI30nyk(!uxe}4-Ua|Bl2#4KURhN ziQ^xG15dF$>DXTG?ov+W(3Qjnw*0?oU)=T$lMBTohYb&AXfO>E8H#$#=>xCW*H!{^ zLr*FFGt6WsMW44M%>-*c5h;$E1?@q^QR2jdh=UuO20wsS@-X#;hPd583&G3+c2t#ySk7&;9jUa^PO2Wc6o z1`D9b0gnlgDY$3rxIEoc>xV87P~g)iW&Z^8EO`D!!SfzMa}NtKVwf6CCN5f76_>Q4 zP5?B3Pj``K4Wmf~F~>0_88E{Ka~;~@;H6Q89o*5AO5iRBHguFJ7#y6;`r}D-L)ea3 zOB87oj^-o;(-tL!AkREpG@3Vm}fUh5CCV3JITA2AI74OU9$CpaFrfPRGUA%So^2u;o^zJYD} z60sNou4ldic)+HD`svo9(*p)lVwesvSNb{3UQh7?rTBCLvufKJ-i}9INaQYoH_{~% z=bL5>IAgv@0U$E911=}8CujvBof`^Je+zp+o1qj#!43cnigO4g8ZtFj(ztEVFDT!y z;9?wrbm-&8_$W1WL`u+B4*Se%6-qNM)grX z;287SS9Jx1p^LigNhAIjL#@go54UPGuG$eh0gJEoB)(P&1q1t7=u>ygfQ|*a9E>H- zB5%bvGEaoSj1%L8(qlZ;`!sC16eD#%!^kzPj?p?TgSzW5#Wgko>^Z%zKO&+XRr~Ov zqnWCJn!b!O-?fs%is`aI$DFubB%k82Kj+qEdn4D>WvX2J8y|ORApDmuzr-*Ojh42_ zg8hhJp7rNwE;T?1XPLN9^--``um%g?0`K0&exh<@H15qk z^JDbd!ZX;DYLf+2gA>J=91fL59#Mo3;_(AtE>=Nq5K5@p!-sR=6HEAqNx_aQr|SvZZ=K^jh{$TADX_uYxS zdz&xG(2K8EjlP^0c?m4Ct* zB{BM(X*^8F9Gpe0ZFciF9?hDSB&FuzlQZsunO(iQwF|r&omdri0)Ydw69lyUmwyH@ zZolDt=>KEtec)`Y)Bpd$SgdNAY&&hm6obmvX;VptQ%aJUc8mFZr8)f*g(hrkM!3a_ zcD6=jCx4pxsx2~KO(`Lxlh}r&lT-*D60^~o8Izrv9OwQ$U)TGdKEKD~^Z0CO%sJ;i z??2b|x?X>#{>r}@Oc{MSnQaH<1f_d*7|u~xoP8D*K*+|r84eh;V!p4LvWKQdKxDZ| z{543IuJHONymG$f!GYlJUh`Ee)?`zh$wY~3r{GChfXAtj#HT;2;PBVjO6|;zQJ!q? zOuw#}DFjb zjGWafCPN@-0mlSQ7Td@{V*^+>hW6LUbR+j0IF1yF`c)IvWkPWGarPG2tfOEv=agW; zGrYM0#vp`xRFRb&mFfdwK!E?%fy6OS_#4m8}m=zmjBaji3&*d4~tfg zp{sPIv+N_^e8=U=YHWoj18) z+rQ&sw_Mt9+Tx6Zias2RP-%#&Sk_Nx+Sh6rN*O~yP!~j-mPA|Nn-Nd`Cw{c>*3?Uq zIZt7fT^E&GXoQGTIr`n}=cgtJlmkE9mCVs{PY}{K6Z6tFW0HBGo0(&rDF0Ziq-t7Mh=n!jaQbJmIa-^D*~ZL`A2v< zu~(1Zn3t+m+9b<0^yj3#)a>N&dWc5y&6fE3VeG%noVP;YsAV+RX=_GaRK)`UemyA=@FzGM6CR8BSTxSd0U7_C~N(f<93svq!1 zH)?CXylU#JWAz3O-D|&XrPr6n@cNeWTvz-SC|0CLPdt2g$kFDsbcEFt$Ob*pi*RCS zpE6+8fN+K$x_^i2N_NUMxDh{qXH-VIH1(lBOBfCP%Cx&_97HASSYk|bA{Ek4gJQfl z@+xcz=4F8bQsUP)C4|!UfO3Xw5arVZf|NS4mlz-W6Xdce434f~*7(v^ty9J|$PsHL zqqSkN80Mlq?4~-+sa{$|5%0YvNaJub%h@-UGXl-%*T{lRI}=}7bD9dLBPIMgOk~%7 zU9fE2B;VTveaxw9RXUP?tTA_jKUv71QM+A_Hc`W!(jR;&;QU#LI}H zEy-&m0=A-mo!CfRGyWU=c51rTK@Lu%4vGVhtzxyZo#f4z=)p6Yd|*OVM;yf%u2}sV z9zqMF>D^)J9YiYG!Z#3Mj8{f@>p@y_$Ze|4TLWYNoj0hLf_@U^8bQv`sECXVkx*2I z5G0!l+g-NUlN1G|iblr3H}M+QMfBH;gnm%gtCu<`Q8sUp{iklKq($x~^GWoHKe+tw zK|B-A^zz$VLVc~=dC|t5cbENqk1Y{miTxV_j}w0u7YLWDc`$Hjb(l>|nm;V>_?o=q zMkVit`5nZaZ7$N=e}}*vu>G~D7D)-^(-rxRr8w`il!OL1l;5M!RFua>;DG; zqbzW!pG!FdE*8!?N~3iCW}(VZNpQz8u9Dipe?)9h9SZ&?@I&Mx3h%K%@z81uJCvP) znNeoTGLRe*kfXy4lwt6A=%aYie1HJhd{pZe~WI^X5! zc>~{eoZCibXfdlp(V%;qq2Y`1qTmD81-*1T9ZxcA{XSkDDEGrVxCLzLe4m4HjTxTE z5ZkIzxd=Ynl0h?^1MvkSj|aKJBUqc}#MW$g=znVHxM?b7w$Rf+xbbb1ctC+})RrC0 zPae&0RK3gTP**|FY^ZZVCsR}^DT=vj&0jzPI#JlAJxQgK0+;9}%GOk9Jy-hJd+f&m zHMxt&)k+W~ce2(2PoU_g^V~NJbhdFTV9sQ@T5wW%&wnaqc6)2&!n))38Yl49TJdO- zu_lBiHzdbyJXZd}75;6%A%oU*I?CpRBlb2-L}P$Pw^0MiiRN~w2-DwtI(OPvxf_)V zDgK9l5nv|EPl$o~*y@*FZznfw+D68pcY|a^4oi7PZiAKmyQw|-_?du%Q&>0$I8_XW z(rUnKna<+4;>yaG-e}QKVabHZ!r^=p=WI45XD1!n^9z>gJnGU+VXgA!IC7bS+X!{z zWg$aq^vohBO&!s34@S^X4krElYWU|acIjz;Sh62oOyZ(TOYxnch#mR0QOV?Gq+CpA zk7&$Cmj#h*;9KEIT7F3zlN!W~Ji*L>77!PQ?B$MXV(tMr?2=zCg(k=mWl1kiqsR|| z$pe9L&fLV`5QOS>QU|>5_?sIVV*_fJ@?AARt2r&aG5i%Ih~1x%B_L$^wXZ+nc_+IF zO3Ia^Ca0k6oc&9%+fCO@tDJdkFEtGD2PAiVI;*tGY@935*ZfQJ6j{ARZy|d|q2M<_ zOlg8)aSAcm1KfA`#hpPE>zr6;^S)80pk{B%o&RUKMP$>%Vv}>Ix4ISY8_@ixNAzge zp!Z#@9H(=?Q%W|GK|vr!^eacEvP&Q)ga_RbySUkk5A9Fj+BQe@9N!TVrcy7yVku4D z`k>mS?sc?n+j%jHv+_5x-X`-l!-=h0Vg* z2i!>PZew}GXB_m-gV-RMV;8j)8Jk23_LkAv-^~V&KO#xwB^tDcZsIE(q@6&K2&ubZ zD5FY>=38Ke0itJ;K)9GEA;Be{tEE-4`RvL!^M*WHhg{QPZrc>48I$6$NsO);Sh9Uh z0JSKA3t%f?d-9Q#l^ZA&IAnH%cx3#@U7ICz^NREq3azB+Zy>WiyBO1|p#=BNXv}FA z#9ZK*aPjJ3jbcdT+Yq9zv*{$=sQP$7$@lMurf>%ZpmX3F0?4C?v}F5$x#DU8JUTH7 zA-qJ75XDDfw_iJ1kRWBh8{gHvAf?Dyos!FHkL82Dn|(|ma|r>m#n9OJjEiNUSzG%# ze@7SpV0hLnInJzJ1kC8bDCA;>Zg5&IM`I-olLvkjODLT|N9)&*-lh0p8?A0coL zI4$nfz%>RyMkWUaL}fBhBgSFUS7$i-3XkNF z|5x#F7n<&OmRveE^p%XjdyfSydteNaJ92_z$(JM0lnL1L{uqWxUWY-IDRPGjY{f3= zOk-sV_9OV*wwVysK11^>Y6Es1$yK~PZecOn8Y83N-BoiX%PniuW!cssu7Qnd80}?P z;QzJnE8HP-5N|2f!~<+MH|jw1yAWe%<9=i9#vGT+M2gTH z_+m2w66o%t3mJ&bUssm(<`m9$h@Zs3D1@NlqN+bY6peJ{|IJi^HW@BkBg++`j&lSO zEgR-Mt0nWSy09TW#g2e0hv>j_8YUqJ?kq>vHF<+)@qT7`7kkLz24h`MC>f5+!-9+; z^S?Qc2=k~DaQSZ9y>T|3K{KtWXyzQLk z@oQ+P7U>4I_!3S~AJNAI1=Me&j%XC!B62u0c__2sj|3e7@83X?je!7@xJq%~7Ueaz42tSQ4ItfMr#A`Hy-yK&^sr1bMvpd=rs0rWO`W7phG zRVUZh3IegY%^F}PdV{$Aykf?H-e1!iXQVZ5k0u6FKvo_mae;V?a4n%LXnfJ&AJ*;& zap~h2!{c^#0Mk^cccqBDGtei5zNBLGe~cyn?q9)bP;Qsd_&IR5n9Ua}y9el`o_x_Y zA3HM}SRV@ZBo0f!l(!S({*^SNevB5^AIG?r4@jxft1t$IQ*Osc!q3wRmH{2)o(X9x zsVoJ`zvg=Iedjg2-LONM4Jz+Fk>jiwYlw+-PHjPE&^S(#sEZ2;Z$`dxlOl!q?Z9((Jk+P;)5PWg%OPU9Sc@^5W|S zNmgndAdnV1h0LlX(Vc{krNGAw4o5@ypC{8T)Ie`g^x4_Qc$g9S?nVr=FS&uz^GxaGOs8Ag$H$Wywob)nhVoQ)b%+A9HP)T!e ze25mJ3d0siS-mnjGA%4`2e#7x{JtPvdSE`Y4D3JTO*G~}Q#`IP$m|aeUG%}z88S~5 zbwB?>ZU=;we?(TPIFCz#{W<%4s7}0cALv#u#$^oECjNohkoT1< z*7+-y_>ThwD|&UtI>*zr)faIG*jQU`-ZC1c6Qxg`I20aXtQYTq0+Y`WEpfI#%<(vS zI4bW-vP$@5`A%u(r)m&frXlN6j@0S=r+hi-%(lN%E}E>FOUaqEG`vMi8XGL-E(c6+ zderbSxlyZQdf7kE3i?*24|@pl7BvD*hs}O5-aH&|ZLY8;H!_&|WrfYQ)*l-Xj5NG= z?Mn4cH~ZYVOrV%ewE4xhvfTMBdVjaC+AdyA*^bWC0vg8Z#a z(kHP-$Owo7DJ--^&26{hF6ZU$0bdFG^f;9jfi^Jpn04${Bp=q2~4=Bg< zj>}W-QVJ7G1a<9TQ&x@EsR;hOO8-_`^$?%$5Qm<_uDvH&p6n6rMD5Yy6L#|VB=yC3JO8mz7Kh)E&dnE z?Frz**PATa2Y<#iSpMI$C?T+JZgENDWTe%DZ%tKv8)PeUobMx{ITsERmDphtXtdk0 z`isScHDaoi=yBz5+vla`CqB*}cM&ZjKtRS`PH7Wv%b%ou?MqeJ&-mTY;TTor`1|Jw zH1HNOkgX5zfhgEpxs91b;pVRfF;pHQ#f{0qGu6q`Eqx4n7;kzxeu!j+WEJNI_-3br zifD!TJoZTBheK)J4N_*x{1}D%fLh_tB@}1N=WiJ``P;(o{#bKi)$v>L8!l523465j z*Tp3qjgV1w6Am-Y0{Yq2LOY`0>Jujy$_R(>vgtbYW@Y6)EP=)xsT6MDl&tfK~M`Iy`HwOvs-nbxuH1fFn z2a@cRb|vEIfWNS2+Gku<8;%hKQ@cF-$mNDahQD80?1PE^Fw+ID^~0FnO;3 zI1}gX%JyEGuxZjoQutfFR03!>03v?^DhSZphP7bzIC|gX#&Qo*z@& zE|0-x3sbsGDs2Nrti%p)Wn4Y=^ncdYhlfclUG&$3acof@KOEhB{DTw6<;ziEp?MksWgVsFNeo>Ng?E6a%bQn>GbP5X z;*Ls#5fIY;m-c=syYi7G89QhsBar^hqqmLXVzDzb4bmCVESb{HVgl9~)Jxu;2-HL@ zlc=QVZ`kh8zKScb&D@k`(Z`J4``&>OhsEfdE?o6@61s6BbTEOj+(}x!_@{M|TWh0R zFcG8;r+WiQL2x`&d`ft0FZhMBbN{E1N3d37PHinjoy&6y$!c^rPpYlPVOj-2W=HhIk-QT}lIYxKDp~5Nh1U9O-L%$t z(#{_y*}=;CP{TE$`fEHI_f`GZ^7HrYl;NrWTgL3lXqpb1Pg5k@PfuQFkV#a^Lses(8Na+UU_d<$tTcH* zxQeyHDV2L?7>LunEV*N7l8rAYAQ0=njBAM;E$hXP?>)Nyj|H2!veeS@I496kdnssF zzj{oD+r9aV!!=GU6hy4>JqbLz2cUZNb9uRCf{)advBK$;(KPy;cS4S_0VW^r(nlA+ z&b35FI|b$fBOXSVW~s;Pr~e+Q`x}N-b|ljX@o_@kU5;rcW(idO{_UWlS#_`UcYR

a%2KoTo(K?jUg-QL$|HU3$)9?dl+InAAs_B)60x4d30 z`Rb_3L^a>9Ohegs$;Y^(L@RKy)dvaK9<3f$qs_)ld|`$w#6iKOiL#!2;%@Je7$xJ; zfd$)2rVc7q>QV(uw=q+1WBJz?rpcvW_#8%`XZW8DT!{WzIDX&=kvJ|?=x~H%w#REv z?4{$A)j|z~soUo&Z@z@1)LX1*k66LSJsDq)6eHqHnav6k#rAmz25vfcso0Sl4`@iH zZI#c|TrUrw`5{rg&&l@UoX8#AkIXS}yuFc-Xv`_xFko!jEe)(iuQZx7yvz1bkK>=G zNmfBRJ5Sfc#fmr5g1l4j%)H_KDRi~byO0W?4PNO_#1by_FK-zgahz_87#QMJG#6)3 z4zpXcaLt8|55UlhLv#rPxim(ybEe2J(~inVrQ*Y=>ni9w89SsjsEv%GPG2G95uV(9 z_>1?zuVYsYx%CMpR=jO&5hJy9I6aqlNJDVn*W~i9zkZ6xh zF!vahMfY({pnXktVX5>Yy+L5sZf(zj{I;GVA7*T-nzp~Hu8d$#8(Wru%XO;plQl7O z^p#wKSy#Ol7R?FcIY1F};(xl)Ww2K-H>PXFpO_~aNEkC#R4#s`6}6+i|BjY<4Rr0? zGuYXj4))4)+XhEi^g$*-MKi(74K@G-ST%}g$UMELs-IE{ebzBg#Q%rRx2{@R<(DR% zzmhuEycJ@HSIRw>p}~W;Dr+pufw{PR!Q4m&$B3_+7vX-i%Vvk(P47lFZe&3yQn+jq#cva=aVU-del14JcSgD&}JFXa>G`pccFU+wIk_KdHxXh{E*9xK{HE zW=MF7MYM@m?gc5Cq}e)T^?^2%N22sAe>hi0VmIIPw@}j>Gv!Cg(yPVvX}X+Gn1OaN zMlZ_d8#Qm&=(a}n#D#!)V8`<~9H>W_x%#u^C$W~zhGeI5PtnE;8g%@7FR5-^Hhs54<0wpoB{f^4 zP5er_P*g~NwC_|3BVQ5Z9 zi}i;v0qpi{28}xz7l_0XEUIlB0ZaCS*T80^CIpZ8#CshSDh&(923s|sK~jpfN5=5D zI6Zv(kum&6cvx`@w7y}!;M#mhbl9h=si%(Aq580f#4xJTWg`X^46a?z7K4;n@+tOX z$f>)`tgarFcXSlFz@>}=*SHJ3@+K*GO1hedC|HzDe<0Z?$i77 zqc6);y1Kd|d90$*msDDwbP35#oAR+8Ug^DNs?0e7(^Jx_^~aoUIgp?9w_V>)AcFh@ z*B@(52jFiCfHq^8dh>!>QPr8102NZBq;oWw&}5Q^zTwEK>l*z-ayM@(6JPZLIAGNS z>=*@$m!dN7VeMT3S(!UT)&fEu%SW2ReP0D-+Qx<0LA2rM#=2yfNKKiSc5al6rdn!O zIN9sV#wV+}#I>c!@Y}AQzk%BSHj;Bd;z(!Kx&#kWNG#b0{s>5+lro)L!V!X~$84&8 z5BwgfPU}S)J#W{wt^IJ~Kk?+1e!URpC3KcjznKL+Ms#{J{Ek)_15J^e4!i}a@Sa8( z)rHQ6Mudo|>@cX&iW0A>q`a>0coE4f{X9l}ai@$tL1kU{O>YdXN3hn7b>B^R=q^g)m9Sj#tgqf(AWKENqsvfotBzD3r zc0(R}`P&~}<|sWbegK^Ff@MjfQiRV|(m5NTmJ{+2$w>Br%fV^X~Ch&j?OW6#01Un^jtxd|e_Q89t z8Muos1X>f>NWa3gQjB?3ebl~Rar%ANDP{>m-KoBRpw3q{#UN*sa2@;>{5Ub#P~%fv zb6~8E-mmMTpId37c(V$KY&CD2b`Rt5?%hIM@=I^BRF`a+xhk@Qt12+IO zFZrNG+8)vZ0eKai&M3=Hon6^dskG4LETSxI7>2v7vWf+O{dXLSP!#!(ENTZ&QbVx5 zlD+7Zk;*o)r1He^53ag@Nt=T5wNrY)!EFLf$y>o!?Hh7}4R0|=2R;OHGi=M|O2rTD zyLjt5-^IAB}5W0T^J_$IWwE3&gG9S3ktv8I5eh z`{1BFjvD00y8cI_}C_UN+jFt+Qsk^bRY}gZc`57kG4dFH0 zyhJaqT(%Sh7abX{{qfdXZzo-lw+hQsjg(%+4nucP=BG5X_>NK=XiPYLzM=3uYPs}! z&ng&HaUHRuakQ`G%!@YoEBSX~F;t);DRYpFyNHn8$vp8TI<{7edLtVHmF(h3LG_~g z##~+Ly~_{OoH)VBN%%lhu~=jMv{UsDVY=CRC>Y{k5ZKMButujsC#T{r(^ie+tC#dt zi&Qw&zz&c3Drd5t`z$1WS*?o(Ri1YViZ7P%i?FI_a0vk@gnNaGrMEv&6LPbw@m|bI zc7NLvJ~c6dd4XnW_WMYQ3!#?*UapICBNi@m*%?rKTd4ajMr^V{aAgHKe7%9$W$w}# zV#FseG-24$G1o7dpp+eYBpy){J5#peVze*`tZd7_7xFE&M>-zb!x=$*EOPzi;ETi4 zm!38)N`_q2pxw0=XwU@LH`@rHeE7BwA%pzl?0x#%;4T_5{z>NoP`Xob{|qABvmjpu z3!0J0f@XK_^~bEsqma=7_?+*iaFeWnS3^ckH$w& znlwo(LbBRk<~4^13wAWX(sSa4z#3Ic4maHr1GZ^If8a0s#wYG&5KXF$w~VzDKd8u6 zbDBP&1OmbGw}^*8;}JJNjvEI~Sn*rf`QQmmi9lsQgcR8Z6%dt1NXx2fpRLa%Z#(}Y zVdyPJr?^%FfLRBlpD-jWn4w?Y<@WFVzX5yfrXrfj&k|oo!T_4)8^$fIG*RX3({{2gD0Sn#vH1dg0FI?4YR);`|0yJ z{a*C@t6&cIzg0_x{aWzCC71xkM>9M8_rEWL*%JuRyuaEMuP~iGq^#|v9co5Tt*(Bb z3P+g=nW}xR)1H#`m14D^h#ycyg||Yq3vaE1bdv}2hgR%!amlKv`v2GWhzBB^6SnPWEC((tjRX=-#jk3db$d!Vl0z{6OiB2GDzeZ09)y8T5&YG8RHheu5mOoqu}mEFcO2`&|>c8=q+O4MQ@{HT@R`{UkpEgOkl0n z{RRpX%F7b7;+(kZx)V@WFvab#PbGOdf{UvltHDhPlX9?2`5`Y8o#K-Pu}een%*%Nw zrb4&&-uhyJ0^8JUe1N-uD|aY zOn9MYh^0~7+|re~=Bzo8(Wc5b9}+`2$l_1n(*HiT$OFp}w{4cp*BD2f4C#!6?}t$Ei6{!UC5R zqX$Eg@JE4CMZ%Q?QF+uVEx7OoO4WP;5FXUnOl~|pcR#wmVFN70h6P(Bf4HUtj$0RS zzM$u2@4AGiUgBkXmG)g-!3Z$&-H`ZCL&_50cQ+4N$$i4N>wEPfZ?=N0D#{$yGQ{c+ zS^EFNN40=dYOdf@K=C-qtv)ibot7e&$TCxBWnRZ}#(-A*bxie?#!hct%u3#4R6RDR zx$mLL_ovAxR_1o7QoMzXYH+#es4DAmdoWP0#dhHA!UN0y71t{Q6RiuY&q}hJw&ffh za0!ZeomFrmLiV4%=j?|j-nScKk2!)~Ej4@nD+ZQmD>d*>m1JG+OLVu>k^(%L2E+7u z#xNIZTrk@u7ngl_Jy#pkhm5v$Av4r?)jANTfhcpii4fw=7D%IBOYm%CgsvFF#%GH% zLR{PqAPm%C3mloIy+D9Pj^04ekIM&qGZ34##{7QHFv+`g&->4|#gHG1=iD>hSrr*D zEGD63DZ^@^PGMAM=%bIz0mv(-0^S3c{PyJNKHPiZZ^Vn9z)G>q?QZGn3kjx!P4%@8(%p^6{)-DIVmT&jL)G7K65TGX#HeJPkOzK@?`0b4n5 z85hm0j9ETu5Z4{pnP}>qWPHfq{`(+!G@)My<1dHP&0K zoV9DG?OS`qyTGgrz|?0_oWO0w?>aU~w~l&lay|8dJJO*6^+%rjsC{j_vf6fD;~Z~~ zydnKNopqzs@nctWX^$p`{S!)c}RQ+4wmXpOQyO<5D)M@`8 z9C$J?vMV_gt*UUcu5znY z4`EH`n3E#IFW3ZUmbsglua$Qhu@OT92&|b^80fIDI}%w-uA^G@Hfptwg9gYas|LgC zx3&MAPq^QK5;OCbFEmc?9&Xx}=x)%bx7hj5T&DvSiUPg3+@6Us*!{nR(zyD#dj8n^ zz%Ew4IaWB?oJzoa*Eos=scGheRK*;dGpp))7@9!Xjm4A1@#=}DPVWgmwfCI8r+=bc z`AVs<=rdFOMVv9+?Nq!ZXZpznO*vfTty2tkj8T$+(Se@rqO2uoM>$v%9$N)nbha{+ zUqQN0OUOZq+-o-9JuTRW8c|KBAqdYMpA_LxNBkt1BQ^t3q3OW|Rq9K7khYqc1v8+Q zz8v;Sk;-vx5*WdJLhh)fo$z7)6OaNIN3O{iZGvRI6%DX+4q5ULTMQz*96N3R+%cqhr@2q&YX)-hNa@+ z8>M_~-n0%fl)nJn?w&0iYU;;gPQl!bW12+~nd(6}Ojty~L`|99R2h|F7?X!9RGWXF zo=zKfO23(K^`O?Ufu=DsWavFm6@gGM3v?MhWlio=Yr>7Q!Ww?BkGrth=#0kjp+IE` z(dm!)nVEZkFa2F$J~Iq;_UHfoH!el(atd1J-Um@j^Y+Mtf$q)t0l8-eTT^8~NU+GU zzdtIljin5MgTlWx@-!j&S|txSX0InM8EJMJeK9*h@X=J$EHAmo>Jx?JhO{jFVaAPn z#bs0idsN&8ybAs*jXAgGBy)09z(fu#UjMQ|l#4dBgBc6QfmDelJHYm9fZ~S>^z0=t zGqM`idkji9GlN>iz6l!^U8<{)WhQcmG%U{4uu@MW{1N1m@CX3;VIlSD(+7Y*_Fy}#DxBom;qvM|25hLiokp#qy@B z<#$h5DUJ^^dxjYj`f|y}y*O?Vqh39^;Cg0k4{3RcgIPlibDhfI4YnaeGeM8aP>Ez< zGymq#Q3=&FNmf(KCF(sHu#KdY^0QpfDDKn3veNjYB1fei-!@OTAuZJEnvgdA(o%{9zbcA;|T@hy4Fv z`y(4K?(S!yL zZRH&V=Nc*%Ln=Pqpz}Z#8+XsOLSq%e{_!dNXn#xKmX~^ETdq!UajB{_n&AKV@5V`~ zejBC{;|mXm=a(1h(UExTtxfy+|E7I6VE7$}3KI(4fXchcE0=3ZOC`L17dfm^Tk9=B za%M!w_%xA=;!}>VN|ZT=IVdRLX@7O?AM;zz`+Z-3{k6=1+Bbs+PaEMgj{7;jO31$L z=A<-+vinaNNy^CztZV%-u@Z`YuSfe@bG+V4e>5*(m#Ts~zK?uiW|+;%n$h&{nqfD& zG9sS`sJF1Zes-`%hjJV55~jDm##u2Yir;lksgxj`oqhG&A9e_y0`i>ST$%Z4`p>x= zJVw-v1!7&Owc$+HoXy1g^lVWv2h1aG2R^nIWUDp9Qy8${D^3W0HEX97tu1Ju>X=Z`WA|w!&V$B~0iFXaSpI#FeBo%sTzlGYUnU^S(^@B(q z8m%jxqKujgFypiksjf1-GMCzmE!}K51jJO(*oq9=fgR50)uw?wfD6x3b z;)2UV^%iQ@gf_sR6d1OI%anWJ1HQ-~JWimNoe&L{0+RP|psO5BdjK$8p6ve06CBj5 zVBRR}^6Ilv^iG<)CMuK2AsGGe)<_aUzU+)(4Pk>`{8YCAYUU*t+Qw973rE&N9bI%zN7upvM}ZssV?q zARAI;kYw!bEgJwS&Kn%M=<;WYBB)lV zNCSKjK{m+<1bP(fGmMzieZdxNV5B6GJ7EGnj#Uq})YOv9!ohj3s}n%s9RO^Jz&}98Da^^{^&j#2UE$z;1wYg)*%7~lA0MW?58D1m|-VfoZM>2TU zMo;!rjbNPY;6?)XNVKtv>N|OztC|Np2sq~fXuIZ?N{?#HuIXwz8}!BZk?QYT zOrIhMPI0Yevjmlax7Ai5f??5L_(b58nZVH}Bkmjw1kaN?R&no;*# zRvN5yv0&r_P*Hx_Oc4!fX@X|h$Qc?&Ja&ETQ9%s=?seJ1V*3gIsr-0s<*!15XgA4h zH#v!8DxJQmu+wWVY7~#HPzgPVKaqEoPwVzD$8LG)-6ZEe#(=wx)rZ(I*Jl0`K4}Ga zy|-ZQ!Il0C+;#T~enUNDLo1J+_?kcF8;>lL)ibpEw#D~#PmfL3woyM>I zeXLo`H#yUwC#Epn4qXe3H(fn$(NUSD77AHSQAUDAC(Sx*a|%Ujr-P<}gaL-6cT0Oo zynyltirG9ukRZIhWLLX|b1!^`n{%>cqg8w3amn44fs-;wJdO68ATZZZ$%^6Z4;Rxo zQp2qBNE3qK#D+`oq;{D=qb+4Yy53zuNJehJ1rZdF(KHylON^uHSj3!$=hxV}%`6I3 z`1pUa5OInBzb5P?L)R3~&u3Eo!ZyWj@eaBk%o zJ%cb2({-I`<8eXvuU0kirQ<4^qJ9*`3}1Czs2Kk`V+&~Y600=uD%WQ zcbbVhn$1bc254B56|!}Xcv5VAj2vrtXfZt~b3pz@?C!3|!WSHp6HM8>f4Muu#8z?$ zvK#&xkclWtp3LqmW72#2b{Cam@lE-(dLmHKn@TS1a#2 ze(J)41G}f)$5`i+_R1hC#@I4+51*#yZT?Mz0LCba)uaMqabTWAy2#rO_J731^JPnHncb_K-zgom%wz*lN({z6PQlS|^V63ctTnyOBQwRN+~s=Y z{y*Pdf-%t3FfYa+Wfp|KP4e;fR;%>D?ZtnU-Y>js?>nO< z(DySop574cgNbU(xos^Fbh$jqBn6(L^?eV1oTLF^(^I#UZBsa%zsyY7`v9k`nUkkh zP5xdN9-?h!;)cE~OKdBv6=phQ-n4mP2MrJA6T?iy>#AP7Vmv^3_ zJN{K>jTMSWki%)m(z?HouD$qNkcS|r>>?9)_4>sOv)mX7<;gjPFrl|a&+LmHnJuWR zOlLa7dxkf>Wu28mBN~hxlWESN?91) z5QfzMXKnm5|9;b<)koD}*IU{E%fjmsDDuOgDsh;;o1&r%b3YXee_*o6uj5C<#FRu$oCN)N|yrIYzT1 z@i%9RZ#JV>!K_{f<5xgT?A#7t0PVkS>|wtO;0Fiv{3lVifH_6KS1d;Sm@-zI)(V&y z&00$=fBWpVDa{biy~qoTr+n9;Y^(L7U}uw}94Ck90fTg16Gu?~Xds3_x%{h7{$dbF z^#7QPzEYIqx^s5fMF-VJmi&9=1-HE4sWCf9J_jt4vz)Sih>T733jaB%|3wG& zR_I_p98kdXB_A|0uRr=y*sc=t;B%+Y-T$%I)(f5xp1FPFe*Q1Qu&-7}Phi)ww%GyF zx`!GTMl9xT1BVa!IdMGhGB3XPiLY7(WBuo?jC8Nr+uZ{Nk{fvo1Cn51#IgxIfoiaN zIZk`{dO<+4q*8LiWKh+V`Js6-pD|gAEWNy$81+h@K(z8+S_c8jWjc~F#2`~8p2^g4 zmSTt)zZSLt{Z13?E~0iwjM(K)Idn-QErf3@^pI6J_d*^4_A7FxLYZ{V}Lq^^>YPPOkNe zh(uxS;Q?0k|M)h>j_P*T9Wn&ELLxvTpL;qK^uj)^PF$<;e0im5B0i z7$od*9t&P}+;kE~h3|yC&-N6FUwG~)J)Q8ElBtO+633(@6ZT0bxfHhk4RFX0He}AM zk(nxTt@av{cw|PZ)$2{0!YylVFmvC!k`xl)Y-o}kC66%mXRrz=2XU02ybq0_EJBL8 zHJCMvI{XhPo807B^~#HiNYtXTu=nltu^f#9#rz$_SSb8F`d^Uv2|O=m!1%8)#|!k5`CVwbPUhZ#p_nkq>u`lJL zfnG;~Z?Wn9j>g=mEPu7^iCH#eRnRUX+#Jx^ZJ&aQ^ zyyKTvA+0%>`y7xPcL~kW4#Ys76$-9=o4AJ#(*t&v!bu zpnrwkYKQ54(sWebA&hC=G3R=OaFU8`wVkKnSi{nu*bdDB;tIutwX(k3g3xK4DK4gf z_(8kvN!Unpg3VrZI9bVZ7fs4_okQn`g{bNtE0GYWoK3-itV@*k3&o#ZV*`sN+*(X8 z!<+GdxGXt(9m2{KUO)o^O)DRVj|34IRt=VjRGFXC5mbxxE1mp^9=QkPw(Oq+@~sMj zdg+`L3$JOl36odqs?uGOrGpI~xjcss^@C4e+=5SlBpZD+W#WZ%aH^m<*vO_&*PO5) zNXmjfC)Ul%*s%l>Z2c=3Ez1l;vgpKU`1LE+Ox$ZThZ1RXD9Hz_xjmyve zx5LsW4?Y%liJ-JS38I8usuA#WSs3S|>8}w#9n{>Cb>!`nowhHr99lQUW7De`1=6*) z&P#F~bGv>A^eKzZwfa!wlg0B>(V`S9?i&vaMXl;I;QaC`W&EfLAaR@*LBc7oUkEwS z-8n=UaPt4vqIc=pf~+o#|Lfn8`ztULSp*N5>hHIa1|(p`WREmky@HD1fc`XxbgICjg(RQ`Dn;P0B?&pviaG zUKZ!=|A7RmqaqBK=cP)Mkd#?LqEDrAszp<)=MoZr{E|BeUFEsMI59a`HR3`{rQk5k zk>VLFb1bzYXOMtqLVf)*kz`!viMP_u830E~?sl<@VNOQ=tyE<{-O{jNP>h~JlJ}@& zcP2y1Xau1t`tiT}@~b)V5+#iQ>C=qF-2Rl=c<+86sAe7cjOZ_imnu7!Fpk+!nJvR- znb_z8eug|=S$CTf*1)l(?`#jE+?IWyT4TOkf~j%Bk5RQkcT$jcgXTxvS(W#b94Sfv zNQE8T+!^dsmTs$f)|&77cfMEn^tr~y+iGnN0&B?)15sf|J*qdS{1O}GIi!MUc-4|s z!Kvu2RgIQGB`L2l>|D8~)hU}g%(Vih1)BJk(;miGT8Ft)zdW#ffM=sF(8X`Rs`Bpn zW|GLIvh!ACkUw0S16fU>iL4D129r3g0t;Ob^wQ{lu{a(#ooK5;A1Xa8IYbu9P+n5j z0bj6B2Nnf}cTLDmKE{HkHOi*Dn8V+3b-zTIFQyP5f}U_i241GUPOX0!+g3(o30UH7A~AMvtgxnf|L zpUY~DT8fbVm^pcuZ1I*_dq!`YvB}-CVZ*!h#hKA!jt10uD}op?Tp08@xaS<7uW`4v zk-J%=fLi_)_A1eb-J4s;&C40d#$4e3I%bUg-eI^DQu8ji=}PG?I5e=SJ5Jue$?ucu z_q%U5nwANw#3*E69n7fzX#=Y7P*`5|liw&<;5Ybe4)P zI+8VvKf82$@Te@T>JIpfPr-S8GIXk4&rkX z8H4z{CE2R!MkW2+5$;Ie16NeHfX4$sesNYOcXRuf@^5$^5nO zfI;y}I4(9R{(ti5zGj~WBqf%#QP4sZEo|Yi$8ENLEF9O0;(lfzRy<8D@eE6yHcz3K zGY}Orpc-crTX?;^#FZj!(2{8gjO!h6eX006%cU2+_wv>>|0-{*RL(@dX32+N9G{Hw z=<%^=!|HdoHcOy$dGnZpydceN`K_s-I{bRlHHbPGC>C$QPG(WE#)>d(5;)wLsblT^ zCl2-JM(V&d4cGV_%|q7xXv)P;p#4whemQMnypordRYR5-09on}D9BoF;oV{40skoz zb_F{~7tMYn0j~5Vq;^gc<=<-0Il#C!BmVUskBP;?`@hw2^4_4DdO-Q=Ya%|p>u-z zBTuI&UMHX%@neiczNO=*szOitu%pWEf^Dae*2ZGOC}ghgR$;Uhni;3JpT%{|ms<0V zW8U2%5IU}^=pCSllrgJX*n>e9!2ocHSafZm!wwMj7O3YpaP5smip8Ca!SV;GjltG? zW%ZY0{-K86bCjM$0Z~FU(Go=ttKJD4;-yK!>(qf5oKw>jVY?2vreq9f4tFs84TrEd zU#Q3d9dem~_ee2$Vq(Ypvsu&rD-cfVmqN=Muku!WD@vj~oahP-U6Dz2Rl`>me%~c?8|;Txl%+1f0&)YJJ*CQBExds{wAP4ISQY$avr}U40 zTb}KLzGr^Osg4}RSwYoGTlzn(sN+nvq`BqsWd?|iw#3~#_m6!ATbX8@}` zY)LvFjLts%I{+@Y@La@Akne8& zN|wldd&ekBBazrG$o*S!c4dY|=&kGNq*kemk^v2)*Xr!kzXHFPn<+-J}A_qhwLA4Mz0iyTDd`}Bs! zAdwX&B#Q|r@9hRkFX+!RZSrQ+u?$pw)C0wVah`vXk(GQaau7_6G#>o5wk)DLr;bzS znejq2sK?Forh5Ps-eZ+>mjc*--nQ)@{J8yOWGwyb0fY}%VlU1o^hyzS<+kCDDMXf6 zd?@-AjDtqBercb3x=?}fWZ9aTPT@__1T$m<+UO(mS9rtV&^<6T{pA{@HU z+v3Zf#WR$A56$AbxB@)m2!X|JC65hwk1`s48aWsK9mYA3!W}6GRgC^@5q5g!Bv<`5 zbSG~fR{0XT-cR||8ssO?0UEV#h>8MedrfdPXbXp0Q{kS;{-CM(U-n($3md=3-(ERh zCp+)?=9?QC;70GV5r$6>h0`8I!;kQD(kBR;@#GFVmVen(VrBjg^8{)CECQ~l7F556r-m-2D6*dIzN^0Efe+^CB4mWYv} z4r)M`cHltIvmV!KOog(lMamXGJ775QxOiBA{@}HIcbeb(?*?N~Dp?AR=;v_S3gj6b z$L&d_a~Jo-BsHF?I8y!8 zVcgA_q(zQ;U4I>mS&0sPi0g3+M`M(vy7hz|N#Ex!q-5w+T=?ljpS|3tin*Fyma=av zVXbDV4*FG~>8>RW#Y8pBPEX-zi{!EAa6BoXr(|oN`Mp{Bj&9*7hKFgBiee zR3kEu;l7|+q3s>zT&^TC@?O(z*D=famdJBdoO)n}T->}RwEj%4RhnCg2}NOYEpSG`eka1eLy43_ho8Q;Z!bd2h9yFQ%F zTFRzY;tO?##UDrX1uV*qhYDXFul^E-rn80FcD2j3nj1co5*YUF$W#5f^GoqD^2%5- zMIv92eN)K&wtJmsIu-JFRNDrNMj%;~f$?+nd%=FWXU4K!i%>Y#*WBMnX^rBcEUs4grs%axubHGy zlQ(q7YrkRol(#}2YkYL2RmON7Y%TnDpzT$%SgXJdD+lK7Yt;WSbC}#G6OZXqxKI$_ z{4TQPNz|c7E5{^HhJ0=mE;@|lg*n;qf2YyEUT5xBFXk`DGnO}SM-?2^fR|~fj|9s$ ziLt_3tqT=?+_Q9(_pZK`Z_R9G87_yU3Vp-IkGF2|+Kb?DvNL~G1+B|bCZ&O8H`%4M zOVr`z>g1f*Y}`96G&2BxHU!R+nj1GyT8KS=I-t$EAe7`R4FKg07upjLx}scX=rx-S z{4PxWd;~SeVRaNy(B&E61T$nvEE^&8EDR_SIwrbP3s-KXEX59|a41F$SSrmuxEjOi zxXDTfyrUCEsiz|Dt=2Z|TJiJBice^juF{k3&VA6{7-_*52ruA z!6Jjv5>|!)b_2XO=AvHjE(i0+X>M_hDEr~=@Tt37@Wbh9`Q*D+U3GozA@B>P0gRkg{XbAM`N73} zD&Rs2l{PMv5gi{_{aAeirL|aEqHQoN?EDJLcrd#^aw71Yb7M|F&!X5xoqR!DM{K?-Xfq3k^4;DdTd)%CxHjCVbMyunA7t~fRA@8_JcBVF9;!ZU zijyq1QG&;C-OR0jjojp;>)+y-05(vPox_kKx11+=D|eH(GO##Vh#b>89Dc4so@4-w z(SPvFoO`o{Ul?CoL&z$#rjN!rg_?HLyTk46n(ts)hzUvfH!bZ)l=G z>~7j9Fc(^kAOp)QBL75hf6=+V%y+*QOe=w1BIHg|!%2}T!R6zDikuU9&039o0?mc- zN+gf@yVVF}dBRFU!jt!w3!suW09Q64=C_BD zFGN3v)8f4)EayT9k}UB0zK~k3dabsI=+BzbaiqFm29L&)07yGl<6dxSB9t< zCZigCqga>K8u9U<{inFBMM66{cVPC+?NYtg!+=HiltUPSy!?(yG{dNik9bgpN(ute z%vv8J7#_(5$|ooz8@uPF$!QKqRQeL%geyinx<6|j*bg+N zNvKmUPmsu1hm}W7Yy1y;JS)p_I5^FlegE+DePE=*>*4CqaHCZ)cX2{AD~RI~uGMuG z#vD$;a$mlnTG<)nWa0k?OJ)ZZORp|ln-@?UWkNr zIgwSp7R46TaEqbYDe?mPC3(Rlv#VJ> z4_qLn`-!!>z;I3YJvMfdx(f#d6m%7CCR}q`9c+nx3U4FVh$EB#!j?%lau6DQRz!l^ zgob>{Y3&s^(`PRsu|ay_59z7i#oY1smWKUiyW>Ibe7jVqhZmYF>*!^*k;@3X4=fm% zkSaDXb38e%xSK!AD29e9jUoTk%~#8zalMn0JW9uhLY@jyDK;V?5+4!T!$Il`#{n=@ zjI?~^xjo@uV#vtv7{Pwm+XsI3(`dITMWzezm*37&YB#IY-j*oUwWystCTf&j}HvMN)H~ z#32Cs^!f^FaVY4WG# z^`fmqDz*G_fW$ln=SIKP*SZAaongU87m`}Ep3!&4WBtmIMd6UdL7~XY#h<2{KtsVY zLh2yrRZqZCgjhSkoftve)SU7?q&29JQccm4km^``@TK2`*iFcMK?^_{&Ci!1dQ=W6 z;D-!b;CYqMH>VLwg_e@jmTlB>AJ7>li%9$_+%0lyJ9hB<1&=Qh8fX&LkJ5jaw0tv4AuGdQkE) zmDTm}|D2z9==_2frWYT?0E}`PXJVim1G)23X}Ln%?o|9{4#l&bG58h86CP+B{J?KR zPhv%$7k%IYImNzxw&LU%byb-u{y&=O*B$cw2&xgZskoo7byNmu!s{$DK$ zuiYR-awa;Aj4@)=C>eU>tDLG2+;IGzFxFn@WnflV1yfTCDXx|VhP6QI{O;G3v$BnWB*SlyZfOn&>Te8*y8=+h@1%k|*Zc{c{qC4wWOT}k zQ3oqig!1HR;3`u%nMcC?K;moPwz$B1%CbT_SdC?653TNyNxYw#Rse z^eDD`A368jLP&3FG;Acq>vLnJ$g8I^MAIGNh30~zeT8vi1lu(;d;@?YU9u*?Sn+iBdxG8LV8 zI-svRgJSN$pnEW`kE@WTK zFc{CQy(U@=;Wf-DkwsEl4fBV&5n=8zvBc=q80ba-KyuH_35Yb_Gfh*cGjhPEJ*PTc z^~)jv^^nv?SBR|O{S5vvoN+LKm*aw}hAw;ffU9;Ks7F!FE39k#n!*7cK-s=PN z1u`z;4{Inh=TE;DIJw!INf$s}v@+w)^J1^!*$6}R6ysYM6)}$QFxritzVds!+?twl zYbw5g(439sCQP;~{@(1{M9ps?>r>PNiS6Vsw>5rDM@uhb99UYmciey9!=+e`M9GCT zFVFpxt9K~(9kk0|ak+>ahJA+&ue~yLhm{NpBs)u#tdr}WLRp(?&P`Xl{o8bK6-vH` z1kb5@te64K92;o4k;sH!-Kffymz;FndMimzY&Jl)h~_i+04(wUV6z(+aN^liD>+@r1&i5DHjQ;K34#&{Yd!p5>{kfV&} z#?weT?2~zIicsyw7<7`#%Z2|iI(@Z^1y?JnZ$VhlPK>o@_r{&?HJ$U8$S$ipA0-;2&Y*m@pL6^aYW zpU-#8fs`0X@0w_H6A%>#vH2w8;CC>L#u zQzkTlHxpOR^1V72bq+V5>t1pgWuVhfJVTYD;%$WX(8Kgvk6YNe>7qi^rzqYmw3?MC z6GvsA=E>~ITL3@%nd;FPZ2*ml`X7SLoG}h44M*d3c&Z$pE)R8h@JzBst&LCbqbMqF z(GQJ@%O*RmFjE=eHL;hgQxlk zmVHX7s8Vt}#^#Y9{!m67~D?pu;DE`Brbk~PS&mONlBn1KlRRd7H*$Jf{Am#=9Ft%l5O!unSe!g3xlQ3}k5<#mj~b@3MXSYj`Ogg$&!#G-NMF#EtQj=nRF#AV4nM znAhq%S!*`MYnrW^BP(>xc-mP}8yqwLm4y$1+F%R$L9(oWWpiEQt0tkd57v5{T_$JH=B$zQVvXJs1%ypwDUwe?9R4`N1vZyHlzzMY0AUf882U3udAh2KV3U zil%$*eB+@Yn>>ZU@!vA6)h%W!{>E7MH;%v0e$jBYSS9^-V|K;N2;10>#vLvT4$YYd zCZMODCGE4LZDEy zP2j6)uD!o=vEDy$aWvn}bqSP&)P;7c8b_=^iNw*k(3$sxAsoo$0;Fw`7p0>n7(Y<`^AdcTyJ6ZmQtEr%kqt{;_f3{4S{u(ReL|^_W||0b&`5X zBwgQFo8~_OWL?+)%!!)hRRZ}-@4mHGG6l=-4pEP;)*%eo-c&}+^kjX%Q^6RaXHps* z_SVzb)$9U!>nCHI0Wwk&@izi}9FDX||z{;fqPK_e_l| zc8lmK#(DUE7=82|G!n*L=pO2e!KIB`x}UVsQWZqcTW`Jm$nj|MxRS^e?XfaLU2f=0 zDZR3iI%{$sX(<(T7W@^^s2F)RoFGkX&_V?Hoem1Q-~Bi4X`FsRT*Y$|2wbVJF&kss zyubN{tZwb?Rty!e?oW)Sc)Yd63^{l-(Esvn^`Y#Qx!zwn^>>cM2746#{;XF?Lg)aBDI&svz!ZpimUS;E|-K{isC4h{0*0nL@WK$53ieBYQ7#5Oi9!t(At}WA`4NUUT|`n$y)@vYKKC z(1{p}*Pm^(f|qp)74NUiA01xjZ4~_9aA^v_WP2%E8hYc8<75-6PPUpCxJD(>{e2tu zZ?2c`=fym*GKIEm&-?kc2-A4FkTuvI%%ENcZSq;o@{)4{0 zYS`khG<{Z+7@C|UW2x8C<^MLt3aSZ&B9sn{H>BJ(_K0`opc#z;BPeP|y#-=i%<<|Z z=Za8M%#ga%$h(dRfS_J_{hor`r+?I;^h4MGvb~Yc6n26^m7Jz#n5=9u>jD>9RJi)7XebJ&hSY8YGo8? z%WK4Q+`ofz77|v*kVhu&l^M=vj_U9sS;7ezshNc8vknhvF;{C-G@6a?_%Fs-h3O1a zuN=f?&knz{SLE<3((b=VA9XObSHt!@MZm7_4^Y)KZZO%=oV1Fox{6m^(~Jo4rgXomv5$KGG5R=)|vI(|%3Oa@zkTy_RD1D9aVfmjx|$;7xrHD8bKHb{SGKH87^Y84W{XL zW#}bq(}|+t<*=SxE0#K3MG%NCq3E{@N`C^Hg!X_zXB)m6PzDj1Hmc?5K&LQt_mkkQ zl`GEm)hg3Rt&0=yLf`s5a07W~72>Q6iuwLFGfd0Hu%u zVv3EY;*GdLCc2t*W^rxkj}4sC>3dR5(1oIYA=bCr>*w@f6E zrjyv%;tEb(a-t1Yx(mORBsbV~$bMv%S>tOR1DNBjSKHB@#oYq@NElB`e+wyA^xD>j zKsNFNqfvza3gwAB^&O-x3P@+*2%Aeeh#T$2FT6R4dS<)9TCo4{?H{PyeDueY!y|yV z-z&HG5#{~hK`y~|Ek2*xyh%pJUS%0YLQS$StF~b2cQ1h%fs_aJ zRs_=t4VLftS?8b1xSB=cz7GTjh1XtGV_k z+|PLEcf{G?wa4l@@S9FLexCU9zl*VTP3cZ4M%^_CptnY7Oke8 zX)xob{o^I7pYs&h z3)fqWue0(aavgl!5crEq{f^4c#B;%&ehFv_i}V5)xwa29XBUQ=ABT`@Azox?q^a_y z9{;12XMqZK`};P`uxz%x1uO^HE@(-=ipPBrXB=}2n>p<&F(XX>hnA`t^DHei4S~z} z{ryOiW|rRh?U^%Yu||(Zso)nrYsI=HNB$;YgWN-R8AFfx4R2oB;wOpye>riV1iRdy zjoKnac5#hR;5$SD-gq0#Tz8_QL;@+~VwBRq1^1hMo)=CovItVdsra9?kDEZ}E^e-e z@E*7#tM`BW@y8s->s?owrNQp$rViAN^toD{c=%9KmV5L0vB*wMgxvQ#K0IGG6JJ9E zj0ULNaFdt~M2ny#`~7KD0AtmodhWBSME&STOUYnMW59Dg$bI}wBg(pWszN8TbDn`# zLx`b<-xw}aqu5(=yfcxd=#$QdI3PxQB`f;Ld3ovf$RvZ6#|r1l@6vJ7ksBmCqmS_x zCKrirw+@3YLZKrcH03|XrCMNcaL-ubM?Ot07C&IIdh8@=6q^VqR&_&A(2Ojr#rJ7` zb2VHAkzuILw#okH(|_K1^Sz&cJxAa08hqeZAbl`uXMrXtH(o0OIf@HY)6TyyweAI^ zt~H_4ew45}x`EOvVTFQm0M5ifN4|p}4$biHD;?1v3O53nhYSiGOfXk)*uBr+Q6D5O zs3#A>D5k=Hebo22^-+Q}-hdC(W$(%BcwS2Psn=kRXZGUU-e<*67*Q?SxXhp_K+Xn# ze=DzIJ847`_Nz8}en)xGr~+NUKNp#=0iW37v7MsSZk!e7J8hkq1a z!&Hk-2Thl^Of8e_#@m3ORW|KjqzYTwgLE9DP^|Kkbocd`aoB$lfjhb^%b#?0ywbQO zmW{hg9j}TmzUT4QG;GQ}7(rL8_|ZDv!ih2wwOrt_8t&AEGusN?5c@ho{Ja{j7pMME_zr9J%6IiIl5Yq^sqZ3ZF3p``+u2|< z8f85=Mzkdi7_sny*|_B0+W)@&F}p>-D~{4S_Io4P^1xdG=|3mueFxU+BCw)ynI;YVC9U zsa(eJptLipl8bCV9SE3?Vef6?+y#!I6=3))8zZm@7*D}!tgI>R+vHy=q9vUEjptP^ zGYf%nGtoVWqAb3L1SeBKKwsw9W5YY~9FAq~VrfXDFX{5nY@)0$dhdohsbkwi3$@^f zWyuIlF9S-Q#_NSTh{4x*BtPTYf@O$F-JWMBMJ7+Soww55T3&a4N<^o(@MZZoVPU4- zS!)mDxJIM|sJkH{=qxdU+66y9{GWWo@gg|L!x!GI^i>)2|RjMN40)A(5+@!0jvsf25XRH5?g^`=tXQO_A6aq|AqbiSUI<+BQ26jJITc6H{_HyV(h7*NhY?t7yctJPtZ7la%OI) zUO#)>UBYM&`8x8Q`X=T97PDsb5Ced-F+qZ{hK!-rVF(jP;@%(8OW^)zdI=CuFdA6F z2H4;;&AnonFse?t@WPhD6G2ig_^sp|iVPWCfOoJu$N?!BESrPjzg(-Mxll1)6CGWA z;>r9*49yUgGj%dEk4H%jBE&p$6s&QbFbk}>g73>J6uo-*8(9ul$|I)q zozvUiS;SS{Dwz`}wE1a)tTub|AcZ7E+cHz$=L1x}ytO0-VG&cy!q5Eg>rlr1M9^De z82so33pAEOep#Ki%iV1=kiu)j15eO5(phjdTjzg-j2p;x6Y2!TRq0tP_$k%knBC>E(Xbwp_;lbi5fnw>_pH>^^5p3A;!F z&PwGb-cDBcjO^eCPBsOT^{We!GP0u2-$Eezj}+k&5OpCt!vuFXTIt@z`RCTqBv(mk zKh6)*DaFB;KPu8GfhcSsGmxnU`q1{isJ3?wRrV+gR<;ozC(Q_!tJ-snSy(}6cqi)8 zyNcrpy*}|;B&_|GZK1{fIgLY8m`Oj9`vXI{J*z$Md%O=G%*&ZU*hm zt>@giKs`JuAYzy6E81~LM%w52cxWoUH?2|R(Z*n?i5V6~XEqW*>@!6H`RZ`5go_h7 z-ekr7O;gMv`%%VYx;CW4Wbm?d?gQ$e{TGkMI?h2zt`Ffu$WK|VAgwysA`|Z&NN-h6 zx2H=tK!DFRaQYb2m`5WR^`%34as|+2xpc^L`z8+IzTzfmAlR$dJs2VY4U~D0OaqW&h-AxYLCR>hCBp|(oLw6;LHVaGf>H69naea$sw&n z2QeItv%4G8SEiy}^XQ72@4!i^!4Q3SNT~wb*=a{r5CmE~Z0oXCS3ljmdX<8obZ&hv zy2vc_zqgbbXJkUs#y3l=AR8wp8g<4SYP+HE0DmTL2>VtX0iO{O5#Ssb|E{@n946Tq zB|+_y>zA9!iys-yMDI4_G$L7)Arezcv+{OGxdv)Oz|u_D_`8mU`RwJF)kmho>mz~6 z1@$Jzrpl3QGH=_9s6t{>c|0MDdZe%;JY0sawZMPYJevgn%{(kARrv$8xVwy#j&T~t z$GBy?AXp(jJNUsAW1HN>DnGpf=gpsFU>YO;`E8A8zix8rV8nseP@`xzA60anD%dFkJ)k(>dU@;|5E37Vu85=53#N zE0<&ioSs@N{hoG1sIS5wcskcm=fP^Q5v-44IRf9O!h;)KaC=5gr;OC$$Jx6UaB;Hk zDR!f;CS7s*^o`sS|7{I-RYh@o)B|qFslm-a8=v)+Q)wttY+5+u)4mBdNLU{1N(x7= zTB^uU;)3XHhh=uc(`dS=WV_0HyUUD0?GXY~e z_RfVfCx#-Pv57saV|+qq;$*}8K0+j@G5Kp~3HluV__oAufY*57tT_#)0d$owB9;yN zmOlKAX7Z+Fg(k0~uQYEED$UC~+n60v?8?Ob!A;}g$a$|UQ16Kn>g+uJRnJcr^4s+n z6x!MCGyZ-{dB4t(L*`^4P4&3}`O*im;flBZ`P%AI92ASBN(k;bjTXL|C$ex@br>wF zb_;G``M{g`U1$aI__CSmpOm3u_ARn2ZJ_`3R-hjAp5`e*;*fEj4uoGPzK~8}EU2(p zLtVcC!fw6g;ct-BbKMaLO-qax4FuE^CVS+7s18ad%7X7OkS-bG-|+#)iXH&uFoljo z{MK%#*<@?>xuA>MO+d1UrRn9eTj;>)zg(f!z*w+mWQaB4JBU=duR{on?EGf`x`H`# zPH&#Gh#h-7n)Y_WmTEJ#0SiC~UoJXRm;IXXtQzN{F}aCqlE;duB3H(@coj=`4Zwa-A!81 z$LpXs8P}+zc9xR7YTZqZ2RQmbVabs%wLTef+^y1Sq9r=!T-B?v(kPF7DU!h=zZzmN zS1@P#w(oAx5-d}j;vLj5EFqhVlcto5sy~s?0sc^gRJa#!eGK=$JLo6*z%zJ;=8%F^ z`ft5*7?V{7hu>Q5jba(L+m^V4SO4(lx|+~XnitqM2rtC!aYl<2*t2 zo5^!3rHjme@)Ea3#3S>Z^QV}~{6>~iA$KlR>AmbjoUyNxfn%`^#?<%8Um2e!E!JeV zA#$dh!9NW3ExkK{Q-7fivYX=*O1<}eJhni*+_LwRT=SszFeQl$IU?GHF`ARS7D$aR zS-roh|Fd0y65aG-HtKoyFiV7aY?T*hIuzoIdD zx%VJ!8ST6cTYSwn{pvqXb@kCh_Q;GAe~!Q`)7`Ik6Bm#LpWNnT`X0;^&xu;Wf^%X^ zPT#PfX{;aV?$o3-- z`+&!1E;_j{P)!QZ?I4|b0XlU zmSV5kb<@Fjs^Clr#F@VgT@V-t)==}Bz?k_QRvXV}Z2tZKedT^w8E~dMcYKRhe3K$* zFpa=N3_*%}({Mz=3YeJFDO z3qoF>;7DN$p7DE*IG9OnyVFm}W3Jw-!r+zQA%@MCuswqxve}QaEzvLSh54+D{;{c* zUT<3NLN?PI5Z-Wy#97TxA%_0e>aYpXrM7fhFN zQ@}7(hcigot8^GMtZ#EI^g1w@tPan(3c-GGI9L}1pT#Uf!2;a9Jb9th%5>TKTQ~?H z-c(_?(;g*nIm5YZ9iIZhCKZ|39s@=bUnEBigj;e`XEepYk!CNW-;$SlBrfHkH3AT; zZ}GJI@3}2!u7-)=ZIT4+5roS5{4#IcXUZyRXYwJ&qS%{YIS^l}4p?yg);H$iq)&3VoJH3FZOsAR%q*0J+2dW2 zTWDSWbdrlPWlhA`e>OACkHQYev>pTDIa?(={qyP%5FOiTHaF1 zZ512%G_CpC*{*N7i4z()XY0?Lxt2DYGGET=5jpT96;SC&ig|igc+7>nyvB2g$@*t} z=5GhRM|QUF|38OLleNi8DEf4Lq{K8il6PbDv$8EOr=JY+2Bs#I1-V1`6HPmv1p}br z=^6wx8kS`=DBdC-9y4+)!)n!*6CI#j^TEjg3|-j7|K!Pc1)8oA=e@uAe!BycpWQru zI{N=pp_(@}|DMEQ;bTouPujEfVc$KeZfg=pqGd^H^c}vE#=;d9(D_%!*Grg(P!%7y zdD)N7K*7(FUBVSQD!&2StyZLYy90LCmclDm-la!PP@XZK6b5Hq*23KbZu6{9UVf)4 zwE}zTlbBG}u_Xn)tWzQ*xdc%73+Bp+%KNv-$&ELCxBsTal~Zph)&aPR7rzq$y38)2 zsl}Dw+f_4jwc5^XoH6lXLmi)XR7rcIcrRd8zw0jJI#7ezttg6Yyq=vXAjf%vc4ctllDmW(R!!2uk z6XpqATw*AE_HLrM$va`HhS@egzuVW?jo|M#L@Ywj?L7K;?MK#_`p^ufx zsa}UJ?!w%0v)7Kp=unxl4I)=`)nfOz(|)n`XhG%QEsc^?N6DNYIuMC+ZZc>}my&); zsjyo@kWAW-IGUj~mlA5ZpKcS!a0t}mZr>k2yzz8?xu}Rp=-wdQ&ArJO+J%_Or&#(Ef5%ehaBWnVBIhz zh+D5Sbs{W@EJe%EsiaE%|CF}8A#5brJ7~p}3ORE#WNa}~4y!qvE6Z{7)A1If@kZ-5 z&)vjCeNI)?pL?{2j^Hcrt(63r(8UH43<&w%3L%|dD` zC-^2v#B5y&pGZtYvS~hBE0nC!Jkz9+Z%OqMDmnN;qb6~^+}wrsl1J_3jsriBKcNu0 z%Bk=tl^Q>XUny9=?upOW%{UBAU*_vFXaUiU0YKDvdjs+EKy~0xvJmK+apCohz1Th{ zmJe+qAyx$IcI)(98dW!Qhd8m4ibEiXwoj#uNgc35HjIt$<;GjNO8*S;Hk+*2bj)yg zv`bdvuJKHrAJsG4PMNX(9Y5f`6V;~-^QmfQKO`&d@mu(`yzKe>2|fmxV+B7HDC$E)JXhLQ4Me8% zsS3EepCTc_*-j{8&?=c=sR=I*5$3Cl>0glF*^3yVb(1-F=}bR3lMt}~A3p5q&z-C= zkHim=DRBo|$@Q+tpTov#_sTl6J=IdC&ECs)NZLzUU-*M`vIi&Ro*W9oWuc_=bSjzA z2R6#hpK+Jda%BnezZm{6D*y}El5s$|6x`j2;fnl|-O#Y*yQcUyX0C-#f{BY8KIW~^ zdEESI(G`We3yjze05QV*-VZm+wOE58ho^5a_SpOGF0gI$iB+5p<+>f4ZER539P->g z{h&Dp(zLjasGOD4a>zDlIj=EGfKT=QOtK+;u_Bo|l}C=4)jKe*Tv_Y00E>H@UH2O- zEGl7cAbEq!db{-YTUBZMXiS@2yqB#i`)35CSZ-Daj|eB&d{99T@}0;z^vFbv!83N; z)1~$@v5td(dGJi0?8MH!Hv^LDMCs-Iy33!mp73SPKbLXoJ(BlTTo8SWa-9nL7N8kIj03{ z32p2nD|*Pj{4Mi?fdF(t-Wr(FRlT7Blcn#yGbvu_6(rrr%MNjPWEV?>*RRYin;}lI zNK+{te>?K>-5paB6={jN^U26x4zKP|*7i>4= z+nGlm+*||mf>XWayz~!$zy&c>6WpN>qRb1Dn)b@wE0v2`ptqbu#}A&xWU5f<$)TR; z1A5X+(a%=1pk8gZY|boac-L>D&FGF{hZd+1k-}fCNqgdIaJJRq$Ifh>pMIFDUx%tC z&K!y;Q;y3Fk2J)QTR*|x4eo+aXQ0+*2sp>Yet0nUp4d*oPbprEjv{+4sxbC450c1} z${-)mHK&D7-Q)cvVNxv0=%Bi4D-P?-$=`BOuc4Y&R2_60Xa#wK1O(-{Mx&7RRXxCzHk=y%Bl;)AZp+}+010rZX;OY8jVXE zXLkwzaDVtcZ!4(GV5Z4}E*d;wy}avnI1&#~x+5RV-rkCVJPWJWL5NGpP-#f()RDD& zEk@cp7~L1D&TNZv<|>;ycP7Al0+!CAZ<&XPoO{K|GmD7dv$Ch_n@Vh)@6K;(d3L$n;=ydKIT)%Dh0 z>+9rae3}y;Kb{mEUT$==Eps@kz^K~TWaJ{RahA=~1b||cOz4fXJE9C?_}oY9J3$60 zJ{6zmhAP-c%u=IO;Qh5u4X!VFd{s^w6l+-cu9j6#rz5y!=p**0p)NB*Os_C>H;QdUYLT~A^oA1}B;rK_k^R8AWYz7O!-=kbkrOv^@Cs9q z{OkARbat^`6EJ4CKr9aD&I}K~fSobC8MU3SQ}Y(w-)H+LeIT*X93uVP_%?Rk+d)@q zHF;dLpi=G4EPwngwnNtshiQl!t6sAeS9-TN-QH7bXeu=!|CR>>#~S8(+?})$Y`W&X zVXzAd?QboRdl3fO$(i?qIq}@J=WTACG!6cHGWj<7PAB&MDElF>S?uShDj-}%zLdF5 zM=&4-&6t)LGWf(tb%OOpa?zYFd>Lo&8Xm5m@)e0dn(L{8hVNgh2z{BH9%`*1J>&hO z?p-_5f~7J&nN-aacZ2naZbM?;fPVhH6PKOV_+kB@cJ{<=USd z^PYtXHsi2r9JK8GIq%e58CmMaKr)VBKt|IXJCw*BeE03WGmo{67tylCe|E;it&!0N z&fR65XRfbQ&Cb{Xec^F}6l?J-SAkHn=>)~JG1FtC=q3pP#O`{+&!^l_+_`gS{&9t# zS}``r8p096`Nk0J{gXAWGi_9ZUrMVeh2CP{zjAfknt&pL(vw*$kw3QqUQ5(=4$gTT zj<}ny4~7?o-`~lJ!m_7z@OzeU;*rfNJjbvZUrEuMFAAFG-}TU6=NW&1bSxfcnVWjc zpohVf#hM65IMyT)Nz9Kndzs=H=BF2NaVHg3CfcZerTEKin-|B5u{o~0ek9VPy zn$KVn&52}d7G(r|TEGOKYei|9DHkbZC@rz6J`W;PL9IFKQ z_n|h)qM@F8FC@_d`RsYEDTy&+nG=Pxe) zx$`J!;)PM5jB%M8dh zg%Yl@=O4>O%wR88ANbZ3t8|9)=&B|q4XJ{V%xu?F`Li`IHXMmGPLP@rsP~z4Nz&3m zO~elY6=hXYHxLbS^czK%hjhTsmwrx*{8}VXiS%1Ih5b)G5WLJ=BBzb4*`F-ucrsit z(nr|MWU&Zp^1Qk{38Ll4q+BOU8v^{I9TfW`=!b8`Gu})JI8Y905Rh+6vfZx5L?hW=j4dJg4 z`YEe7@}3Z=W&WBOK1SrAG!_xjmon!0>?+-~RrUo9X?I8>^QzzeQS?%DW&?BVg&cog z+vHxPxcSy}S1dE%JqOt1F5~B9u>qS&?HVt?Y+s|0BF{PkV&E{NyKG`vRkHua-D0!& z=PAqbyD;P-x0(i8@pIa0c1HVo)0GgHX2gtL7;EyXJjQB3s{k|^Fn*k1-WBQ>EtU@ARV_c6u$1i!-6lknUEUBhp6M1q)cM!fO_@jZ)|HN>t=A5ftRqdL8a7n$vVEd>=fw8#4^ zXH7di2T}Id(PZvr1SB}rTgXX=y+#f$v=|`+95Do9uDKTgt3L1zJ1C#iG*DB4_KET? zY9M}Rmg3kTUr3k=IsX`*Q9Gn(y(0IAdvo7wRN!F+uU88LFzhN+>z7L}k11|WHk7Q- z*zHJE1Z*Vd;Oru%V8*&H1%qHVkP5lqTqOQ}i98*3RuOw|a{0GU4e&`;Xkvwex^mlQ z*_+^6G_9o<$*wIoS8++_QM~i6*%~3^mg;%zP-NJ@L8w@94}d^*(rLE8v^B=wZ{wUYko#RV=DO^iIR zzN7bx^)M@!1^9j70wZwpDe@@I*j*3i1~rkt5`{+&q8 zdsl{WF2vs-)4p1GQ@kd(aGVt_pZu7yRuPghbclQs19s0Wq%nkr(o7I{ih61I#cv+e zebi7oIytX$msqtTTGOULj(SSEQLN08?wqg6=W2J$G074y+x@G)4KZ4()bZ0mqjnhc zJ{}oohFd1upTz)WRLM~S1M*-q@jjzHV~xOF%M(gc@bF!EJaX`N$SQ(nNN5k*U6}&p zpm;wx9u}oo&4F+J9g6?EiibJTS>MaM*UTKV-4!D7W04Y@Y>t4Wj(97?{RgRT2utC3 z6fMqr*Ph}x#`bZ_ES)e-C~x#2+S!?G7{DKt$ld{3DD|o@p+8K{9bdVB*)C~fq@-iP z3D6y{6w5WKzrg~96>}=g!?N?-OPN%=Ow)4Q^j3p|*_ZR0=@O#%$T3a;xJeRn@fx7z zU&$WOA^M<;kaus`Ux;p;y+#KDF2g%+NP&|={lRgua=`XI#bs@sA`n9u=A`{{Nq3R4 zAf6t2z=W6ul00&fjd;A7G zN>0;iyZd3r;}2aQ#a6`L8wOn=jIEdMT68baQfbY#RcEiwGJpc3jQhIB zR*WlH5j_7=@c4R2B0gozX>xYR!v9rN65W4hKQAjZD0l zQSq$XDKq}i8PPzaP}TBgugg1*LG7^tHVP^5Cf24VHZ^G>nYd+8eRwtBN_G}sF#HO>Sl!)0)S42pS5%btr)E{pn=7Yl87E}Jpg^U>&%-SxrJ7? zhyzD_?WHJlZsV2jxeP7}KS#h6XUJhW?MRuN@h>#a0o*(5w&GLJP>6@8)QlOQ!u5iL zEQX}(3zNM^&27vC>-@&?0%pdx2SBpz2iZl&h;`BySW$*4VPpVskZC6`OWs>=o`3+I z9D$ep?s%X&5%EK(q>+&m4h*oLK;#i2gs6|Vo~&5U^0D$^blKq6EY4<1qe5oJL(HXqK5KB^ zg97|2ai~!9BUu~%u@#yndN1FV9es&=x?({E5G>Wfa#Y$$;|fGCXD->yK^b`l*MbUH zB5LRfuk6DX0DQaYRzVO&)4UdEm8xECB{0a)#x9*6^WB>O0VUc&^%I73ib&ll3BIvN|c1dK2@$`YJBk&s%0ZbqRK_%wu3aazHfv0 zuK}fg9FQCiW9n4d42@v*$0B8}v=E5y>I*fzew7BuULX1+E^e?vUGdX{|Ax#_%o-@eNdV$UV#b63C8QlD&l|TfxlGsL1R)lzu zr}HSclHVvqJdBX*6)Wzppzl}(=|CATg|BVe^lz94Tfe2+XlsgrRuD;*OtVs@w5w9Y zULs@m^8N*vrdZWxOwLzmE_TyH+4LcMkeEvGEea5-aL*$kG$&e^os9jaDdRFTbmuP> z_nX><2qc?(&w5@{i1#d{HX6@eBDA_5eEKjcG_!8;RXP}T+KU%nXS>RfnUAH(LX_O0 zSqCs2=VdtJqk2$D$gq;NW9Yw4gp!cFDyDILy{9#0f_u1TEgn+eisiim2}>;fi>$;% zPsDn5g~ZuvyWx7OOHt;xlhRJa){%;XGV4-we#mL&kl=YIvJLWhoAVm*4rT^R;~$iM z7?DO~^XFfF*-F7RN(Ug4JwA%s7DOwk%$(0eOpUyE{h^6Fy$x6jJ#RB3*PK`)?D}`P zdzaPcVrKF?%v&ykVbCqV!-Dj~Y$VOJA~Zc&Vy;TYzM=Ev!IJAJ+YvG0f<9y86;-WL zdpg3>a1G-#$%Zr;ecfM=Z$PJkLFF7nwEBU{CPT46lgnkfzp|WyZd<@U$V+Mp#{8C- z+fUvUZu5c)02m^`IL+jj7kt+zOT_c8q@aOXXfYR8kPMFNPzAa!6n_iskEAh%5-{PR zk207f`igok?kL+xC0y@42dP~!r;Kv;e_7G~%em4sX_x;)hpOrh8l3;aYOEe@C#D?v z`xK}pLf&*)002Nhn54LYnr6&f09S9Jl&FY%Zk6|UOc@KV6SvOfy7T;@&CN7;*BvlO zJ+shXsqfQ!=(Bu5$hMwpFx)3M8E_RjlDsv|)$nTq-e3@=_O*#x21k(VvtgxYEWSjR zDCTFoS#aBSof{YYpPcO~eNW5L$%>K%Sx?Q}V4EKUU%?#IB3nHop!PM`vBRs5yvJ7L zT$qIeHXvG)i%vIgyG$;FQJv7BOr#E3z*yBR91Oe{?zpH(=;jGA4R7s)zeau+HR((; zL0igBlj;f$j+!NI>uG!v6QhwRVr|fMS$*IhEEQcRzJF}tyY0XugNOZ7tth$gHQsFO z6<-`+*au&PbB=u3w{07UyE=TFE|SkdR%K$KO;>DbtWwmhGiNrUCCiK-ON+48*B<2y zDM~7-Yx2Gfi`y8!8ypIKzpVTecXMcYi(5q_E>u|V_rdmc*o)PnY3#0VC~m(qg>O8?+%j+jt7oyph~HY81EEfGfIenzizdBAj)a_((9bP-JKe-y7HAt1X99rhl9Dw^u+yB!LF4S8IzEyax*f&V0Kb zWI{9K%W7SzCL-B)$85tK?ioiQiv$l#@{ATQR(^xrHfC!FZy)D$oXbP;;XF0(wqu2&v2#LYgDRzdpR7~cvy z6!ZaerJ_xm6tBnonF1t(TdN3aPuAE@>~NdJa-Jg2e@R}ec;;Ukx=TEy{#xXZC zEYpJuZw(Fkeh#=IB?o9lx{~gM378ealXidtU(p`Y`8t|D@qjl_%P#2{k6zkQ)O7D}(3r*TAsQRU|BEuvx*_CFa4JpxuJI7_1_9-ijH(wRFoeh+-m%j3NR@9!GsZ zE&m9T>PD#hKJ=Y0r=zxpuu5RKl`OB#GC?~V&qskm2Q2AMIxFrY5h6;OHQOTI(mvAv zYU5>wcZ@bk#FwBN-iD&t|13HlIV$nqH0G+`DRQLjZjGFwjvX`8SQfEBI!VW8UVa^< zwRFpcAD!^7L@&p7tR?^lU5+%a{R1E;;jhe|i;>ZF;7BYJXVQDFM^2BQ_yOvRsJpAf z>oQN0i0}tkil-6IA((vY$)d-$7Hz|Rq@hsoQ8S^~3xN}MHJ(BLy*i9B1`Z6AVDGXK zahzKb2Fi1om1a!j$I4UTyzja5t_1hF$oeMRe8wE z>VprO3w?_3G}jA;3|%pGcQHQ^HjqABLq?wdKEoH&DNWT=IA!}dpj^<1$fN@LR`A|J zbxS3_$h8A+3L)Rg1%$1PPx#JgnG{!NQ6P0c@^3f$tC8a2uebN3er;^5otGq1n@qTX zNVb1iH5sXOMK#ur=9I|Pxp^~oT+*$u1?}P+Em0o90-4)spE`hJ^Rj0HTbj5|whZmW z=9WzZEvXmkn14zG4?+sWhSP^z%@sv5d=F=H z_utlMFkwR7jr>Q20S*C=(h!bHmWKC8vS4YFz@&42Jgg&xH}`I9`cFj~$RL5Ti3&(| z{EkonGT6NNf>6E1{JIprIK- zTqR!U`aG-}!UwM~m35?hJp|zN{{coxlULTL>n_D7GctyEp}@~*?DZCr8}(ZC)k|+V zjt3`zmi7G$CLWm_G-eRm#mtyXb(4W-K#os!|HUxwa(9ytX~k zAX}%de@n=wK=5XTl1L@zy=MJvy{!9Sm?v$21L{*d8#>uUIBfo-3HUu63bj(R83wXn zM+Cxg49&!!$3|*IGaldqW&~s3rXQBP*=B$RxNb}RB5q7Knt5KJEexODE6=^#oc%`5 ztHrtRtQ2uJbdNTi+H_x`cAj~vwizpq$jc~^Sp9T?W^8d!(HTZW!m#fxmJ{BN9}G*A zX$lOeilD(<$jkf7Rf-mC9?tH!`!iZ879}oEe&4TgaaQk_S-a~2eGHs|{l~d3jsG1c z#KF6c6&syx;K8egrCj2WH^~f9;y5-REx{_1uXN-S|Md39E$`K${DnpJ+aebRLP$CM zbxYr(MQ-3GSn{`)mF5z-D>)!wYN*AQ&1pnANhrwQT<>nw5v|k_i}If1PhQt(u@(OQ z<=&~sL!~BwEH`99<|9frlrfmW|KPX&o?=kYPXBCI+q9%0YKbD!i*Ii^JbtDD>}o0C z)*F+oA@D#la-)bxp@40QSQZPfj-O^;=ah>hRfpSnwj08=_z2@%AsnMcwN4{iYq5!Pb2bd0CJ&9vaIc&ngXRz9qxVY;xJ&gU~I zi%N$yL_qn_ye>)IaL6ZpF%Naca9FXY{0tI4)?T6M_!rseFB-qpaseV0tLc-Ei8SX9 z1BGa_gQbU-k;`d80D8)#KxoR8|fq z{JZb!nu`-@{40nt2i*(86oTe9k+>fC&Z02a{Tet)dBHI_S|?bO+Z&Sen%`m1j93S1 z4v*rZZ#-XRR0DIj-zErWi9N5XIrwOqnx!FYtW7aD(rb4swzdCWp32ZSKFSu~eM>yg z`a^jrmHF;ASNiYgS@#=5zpbdw(be?N)59n6{czwg@iz&8(l;}P_^f3t)_1uFK(2oJ<6rRZ(hJ%yX-y$h z9K7+V*nhJIKFhoqb$Sifm)(;r>6!?Fnk~`{kSGKYGsXA>%YRT^k-JlnNZw~5!hLI> zEcXD#kSs`dKh5|$9d>U2Bc0`x@e*)LWQ8*BDzNC;68qtYM@8vk8KeA+G&)gmD(2g*K6Y}(gR_zmFz7dV>(o>OdoHd5nhKMM=Xc)2D8pJZY3Mg!`u;gmJJy2v~cadAWVCQ?;9VR+6G5-(h zfM*=2#oJ`>15wF|T|@?!(^l{>Z&un@=#Mn;ekmt~bqBjs)*r6q^Z4fA9; zp;M-)et)p>&ebdi&6cB-Q|v3B+*2+#);m2`@0Plswqp&~S}*BTiR5xG=_vm^lun83 z1(ODOP_>ZmdyqT{y0hr3R+~WEfm`{Y3^^wggP7=Uo~A<}aYs;c@oBJVZ_X?9 z4q~L5*fo7qD?~dduZ20es%ln*K}y*I%D~2c9`j>S3J&m=MxU$znsd{^)FvwOHUHn^ z9v_;Bi3$eq#oRL5tyr09HpG8K7SD3KoXU6K_8hT5T?<}2Ov>vsidG6pSCO1W>s!nI zs+)FG(`kc3*R(Et(n!LZc-RqcgdZe-2 zt&{mrkOeOi7Hpe`A16fF#H_~LG+Sv?zuZM&fQ@NC{Cw)uvxjcl^iEptSB%}9i2!1qRsj3 z5-Y^3itV}KA@Q3P=;-e6k;<#fFc9xxdaDrL*4RFtJ+U=2Avdf0+&){L# zmd$M0`?QZe7D}BIJn~YY@jeORswACI9V+axdj8A2RPSn#e1gk2J^9ICd;{e)tBE&l zxq0^Vx@0wl3?U(*?qXrie`94o>kn!u#_|iTqTTS_u%c0elqa665-Yk!I!oHLHvY2P z^(1us`6JV}VQ#>&V8i1}Kpiu#(k$_YZ&8ou|Ltb0B-2tK4$1gObzD>NRA4kuppdtO zYC=1)>EP$%PptQr`#i}}WoP?D&axn5pIs@lN6oCH_!dzDE&L>Ck|zRN*sY=vaXmUt zx{^mdoy09dS^Y_$^Aa^Yi6wVajk$nua$T;(!qnLTBT&cC3G?o$;3IuH`O5tt+@^F? z+3IMOGMh$==ax76quY2`As1foBM)kyWYYedPb_B#6D%jp_~G51^Qx0A?ru8*H=d8Y zYM^WkYaQ!v`_PE>_fN?nH5iWtcFJ5J8lH7s#iUz8vYDCtgayAW7ZaYX&izau!B3=C zY<`sEkU;VlZU7qtHXB;dwA=>Iv3}eYyO)-nsY5dOH*8o53X|{E3QB%Zenv7Ho&cQ* z!zk~kumVIkRVx&})k2p7%7-8nyPy|7bv853N)D9+=wV=j(X_00_a&vF>s=kshzZBP zTT6mX0t?k=-R`6#PR^^=sz$M-lBc)#GcZj9*t{h)fqh22-kEob-)$0YsuCby28^t|*cCe(+2!k7Ct5W!aEBvd&Nr!BZKC;BgFgBTnowz7-R z$Px+dMlK_d=%agCUCC8u5x8h|aA(Q(&r53J3Ve`*x#-1xwGQM(gZ@uz)slhzMmIy& zQr=%_A9{;3#)4(97FmeH$rqA`>RJw=4k>`o_{r|&$HAOhL_hDRmn&MO^ty|iixzVL z2lST_Io2rn+D3{U3qPjYQ~)FDTDcGH9!l!U zVlo5$-GZd3x;_AlG-V4Uqg-0bGq?hY@Slt?wJ6iE#zKc>uXv9}aC#xWM5R1n5qjQ` zTPJ^=G@@wW9b%-Rum+DGO&G0$P4XpmK+cm*>1`OJr}t&&uu!EXFE7aIsoemPTd*) zKyAxBsSApfBsuW8J9s8q@`S}R#))=^v)+rMd1cH~m&IfVwWjjsV;FcwUf%TH6rWk> z3u6P+>lrk4peUkLJgyS!2il@Tg^5Eyy$E7iWCR%aRr8{5gQtVMXe;0Q?X%4 z4YeZAlfa=uxkix>eADpF8f?^-^A=-6i>4apGXKY}Qo_s&sGTX3`1(~}R9bzJF(!I( z@a1aaAQ31t;A`cs*W08-y6tRfYpKUf)m*78KAK6>mnU^rMv&f)yFK5do8XJ~`ip6L zJtZhok!zlL9Bu2_<>3!C>2FI?3=_+f6bTboWxEqTcp+=**w;;dE!oxN_a5JqHRn2) zql7IpvM$s(StzXqvT3+y%^n!0jcAp80TRaoi6<}EhV&Z}8|4*a%&Yj+Qzm4&AWBD= zx7y~;$A!CI;3FoJe-i_f?b8q)g9j{7PZH*m#O9<)-%v0tJGPQkN?u>S2g8y@%+w2t zag#3LX-o2Y-IyeMOQAU2#&EMiA9>#PYgo*|K1ZhkrB$Xql80 zcBR~l|K*wa2LiN?YCJ_B`W?5xfs{;;*%b}N>fLM!GhUE=Q9v|{U%C!Fu_cL8CF!`Q zrTsaYE3W=qsUzZ9xUr3anx>$r?xg<$At8Rxn1SgBWF5B|@0r^-e>odah>?IK2$`Es z#b~NEVZUPO0~)qeAi)d>ll5sc35u-_UEK{`(ZP#=c+0ny?cJt~hjx#M@pHXcfg}eN z_sC&p8#?RE(E+GIWr)+7rl@kAw4So`WnFumBiLO<^+M8uZlJEth8nqS!-ik1#<0D)+&yRy%e_}QsFvftvYbZehFy)mLkiQ3wfFltujTaNE~W|t zjU59dkFa5EmIDnJ6!xia0gbk?H(^Qd0mg@!!ZUcl&f@Z$5L_-xZv7n`zKz@X&|=_lQm`_!uiS z_XkXaA}fmZ?qTwjlGFYgU5Eq@77=(B`|xrC04u011k% zp|$u}Eh9l|9}Z<{0tRtFphsU#OV>~+A|j;1YBrGaDujFG{74jDpHeLcV@0w7}@p?!#z*jFS^*D<0jHm1w4L8C75+iA;%r?ZEW3h@6M7Z`BLA9<6*id zg;LxE7SW_D@=2?{c{Fd@UA!ql|CKKG$wG}yE}}w9S;Vt&xYnZBc>JM!s|fk=ztOxC zi~D~mJE~%zngHL`&mQw$u|3I9*?x9T&Qgi%!RqEu63E$xuX7gHC7*}b+;Q1}}5DV{l3QfS}+9HNcj^(MEI`{kxgt=){tZIt-tVe>w3tzyMz><$Wr~3p$`9%ChV4W6mYR|Ga<~ zPAlpZOAlXfqbOVmzO!w1La+PcR8fzIZ*&NY=g8UWkkOj1p)oRJ(WatBvO z4s*iDH{fXWQP48dHY1!~1n2@?)H!29q)vsK#R5d_@n0q_~<&( z?iUGu=Py@bT<^w$2yBK_!}jJiAqZqQYVsFFN3PH@p}(DF0@p>T;B+>YQf2xfw9_?9 z!HxhVG8fPH*|p5kNe)W~>LD(w2!{o5gS``4>Ak?HJ$9KIjYjPbA`4%x2)?UN%|IEG zZZv%Fv}x@$e%EI)C(NQ)KCC%Qn7HeJ&Vb)P^JYnPKn18D%Z1^8&UyCxL{AR59{ef_ z?}9zYkU<&kF}1PWMmAt@t{r(A{iLxf#8BQBWl%*n?S6d72caU)pp0ZwhdFQ6}^&yd-Jq|D7 zEM4z<`IB5|6b*&^e*s56T4eN~I-fj{>a*AyL>lk|H540$E-WS0p1r7fD|onk+1Tk* z4Vx!>*4TH+hS&371Ct<8SWL(%CY#N+lQoc-z|yv!uE9F@(2F7|CG#(A%QMv$r->Ez zYtB+X8vW)+qmT)Fa5treKu*$J<#SaX-g5&(Cn84H7SdU8!iiwd)i9&PT;zI{fFKh4 zvJhMfo$6P>>{RY3&jI=XL8tBtwN-A0V1To6cIHxw<}sB9F!=}fHOIIQaJt};ipo^# z1e7|MUzp46E_kW`?CvRSIMP4r-le9^nL{ie*$}Zcga|vx&CmR1L>9u@2NP2{RRBs2 zMompaH9z^g&G%EWvXl;=C zwTl|v?f4Hzax2Yvl1>=!#`?m(43jUgwI)#;LNh$ZIG9Bt}!sF1duVMJO4m zum!2KDq@77hc_#H#XaVCJPLitjB(1wNU#FRkK)3$p(S>y&+lC;R$=7jgBO8=K4H&B zDI1mgA~yLmBao&dU+#rCTkFvG#EV$-uoMg3ZqbCciLoEw_W8Y2_+0B?dQJF( zZB#%&Am$BnW0sRXj8ymF)u__MuKC#ru_@C{PsQdVo;C{;2;5V=RU$FN5K?DJ%34X) zWBm3FV#=S?^zU=tm#$>94yB%5TaoUAyAN@fP)Ta1uJuTI(rEsBee1KJYt|)OI40k3 zFOTN8aszTM;HfGrxMxmDZjG%-a0p4k*z-yD2%!{`9w=#x6p03j(8}81BFUAX&$YhC zNP1g;mgwx)6N}z-u%|@`Yb$oErN)W;4WR1h`dBG*K@G&QP5z;YB!}^bU;I*HQrj>x3 z`p7gU(7+^lW9kJ_t6oXns5I+q@$7;te~t$~JNx?nx-TJK3P|IHVh*$5FS{Fg%pli+ zK>=3tMc^x$w0ImdC`RP&H6NEY=#O&6a0BS}q)Ys%^Z_{P@aQN^Dl&yia@Qr}8b@(G zwuxMlt`K)&!RuYmBu~?HR(q2Dmgt)5QT;B2^ak0RN#!NRoNe~aj;YXcgV9V#i!EFu zENM1YktGR@&XDlzfyNNjPn+5K19R_kX6y}nQ z0bgG!^Nme>-vXZlE@6;4!!{I}mv9H&uE?G}%X?>Vd}mX1{KiLtn!w$pS>2kk&%?%?=|G|r-;5;f?t%Ee z(>DyJ4J;RLFVcgYoqMhXtVpqg8z+sE@@i08Z@dq+>Pc@iHr)w2N|d!o%EfjS1h$mE zMdSG!FHLyv3B^3!DtZTf$~ zpQsOF*qw3L+l;AoO+J2kM|}MkjQ0~lzr5jgpQ|h}L3}CiZ(wX4v*w&#-Vo;SkO1AW zE>z&PdHebci>B?2Gia+ms?<4o>xgD#>ZfKGWqhhBkm8Lsgc84n^RR-~J}qbRvMsFU z+hL1jxYZCPUxn~tS^jYHYfsQRon%}@vw0)ViAfuSSrJ~e;4s_^>mX_(aGffkR2Bpp z*p`_M{{yh!FKY$cL+2mMJ?l^1-N@Y?+vgL$hP^T8c+Z^U!ViKk*f5*IC%c|{h-2H{ zCc^)I=DZ$EKA~xpgeh%OxHv8KUN-7=wRs?0y@Is*h+agr)^BMX@whLH0c3)Ofi9eE zJpH9Y8|vbR}gj+b;#RiM@lc>?>O zll76WIh%%Odtg_WxCMH(>>;)yn^7!wG?ERak=%v@?*F!MohAM}^x8+YuMJXD2sS}1 zUFaUzCDJsT5HGmj{EQazpv7GlXn@qH3`5)fXWha@W zOB8o4N|UGvXhY=bo>?fG!(L3=`S=k^5B4wX-5B~LI>`K`T@$0Ny%X`@#keJ@AaHZ^ z)SGXu&1$zuX#Bm*o4Bj}?cP2~E5{dFFgm~n%sn4IH2(EAjfVoZSW6%)(EB<)x$PEP zDuvyy);u(uG1M{KapoZ%cbD=zzY5&&Iu0Ho{5ualk{M*8LKDqXm%sFh?}vHc14}8l zaw00g`ZOr0v0eO>QJSh^SWcToR`c=GlFCz4)M9>(anini*MUDPyGf zw*?g~IlRRlnGTWYu&-ccL^<{Lk_%4|Z*~qkLdK_9*1e@C&ZNX*-fP6e*{?oE%zH;Y zv5})6f7~Gh9nIEnDU}@fI`d^GhuBq=dY&={_J6ng0X3B*T@54~Bx<#ZED>=+mXSW5 zty2$nZjwtwx64uet0ue53kSq+_IGX4Um8^r<{!K=bCbKy4%p-zCw~0vRy&6#H`vqZ zfp}4bg}Rf;<6rzYMKEa8FXBn6L|FxWgTuB7%r)~vcRAn9GU3yPR>zJh^dW=_p=KWK zM(y`cI8jM(e&?)_$W01;NfB5qlkdsaX{o3<2So4LL|y&xPn(*})vbk8*@nB!qrFe* zqus%1o57Lfw)HO9e(145iM(HHJ3AYHY^VUV34*YrGVF#c$xyJMfW7gQM58x z+S63~Vncqa1PUa>5yF#Q&aEjcSFV(c`7}V+c0W9~F4I(hU3kt@)Rp@WpLo|w5m|$* zf#U2&aT;$D=I9=j(-r84I?nfVFdq)LrdXHO|GD&i1>Vj7wSI?o#|I?$zQJ2Gjy zdn=9yE=YoHa;s4WA!C~I6_n*Cj_IuD0eGy5Kz{# zCB@E3QWSAGieeHHg*e0Qb-$w*YsSRnlZ8rn33B@JM}eQ=OY#q`T|4o?yl{Wf((LJE zAi#NW?`;(d!qfalS`^SZu)?stA9Bbk)Q(3>-V-KwDy@;)6XR1>`1Pf7x1~S)%ZWC_ zk7F2%P-TdeFOnS$eUt_=l~z$GbM1{!obTrbL)k~kn0Sfv^}dc|(L6|MIeTRRYc=$gNR)~{ z9seW?uepbw_~Ot>p5lxh0_kwN&y?;cfup~1s^lfbmiA<<(p0MiR*a*;x|A&pVBC$* zX+ey`1{rlQM~KdCiE3)MNM~30dxlkhKn>~e^+@Y=0Zxx-#zIhE+nS&HBa^3@#Wi4;_AuS0?cPn3Y*a3%WfDJUPOD|t`3cxXqocbKeN=pk#mcK^!sz9xjgy6tiu9~G0}7{B{AtlKq9z;+pR~8 zT+CAD2!7#z+Z{~QkZ$P1IS(C(?D^5)#@IC-k}p*M0(y|z`rX0RHl;;`9HC_Aj8JG6 zHa)h!c6)gEpCJ%dkA8rE4laI~7gT$x`N>k}tv2y3+qldt*{~MAxqbUbQ^0L1zn@c8 zH>d1AWtGZ{YxmFBJ`}MJmyt(%#n^&@|Elx~5ivq__AB>W#$eLllw~W~q}msA7u`%+ zTf`cHDa9q%0yvl5ZSKW8wbyy0JqTSpZF{0W>Btt#rLxW2^8?o^8s$03_?e?l=V?mUAZcJN|}(E!0P>ZkMGW_ezD;5{j1+=WMP2pWfnbw>zdo} zd@fQRum~6=e@?GJf)Jk%0WU5Wp6bv>$iB;Z?05?+Hz7_tCoy_3Oa~v=19Q zzQ+g*MvdVy3X}p^$vlZfyi0Gz{l^I?o?(G~EJm%zFG>nClB?i^WBKp4se#-$d#Nwd zu(X+BgTBJ3@%;Yq$KE?l3UNzE!AuMwmB42Dfd3>Nz)bo%Zg4duRe9WmzXhk2caMaE zQ2)DSF$CHx>G$OlfcACB}4G0*}lfMldb*{{US=eC5o3uif7PKu{`%CMZm>x;;M15>A>OPJ&&q!P=F_mLXrvSf*g_Xvgm1p%7r|ggrMVv-+x}(_<5x9 zNCaPJU*Q?TH(5O@YZIZ*2Jsu2_wh^0-j_vxg5!Z5N^ryVFpaw@z=aV(#M1fSyp2)z zvIP~?r;D5dN9!|c$QgMro-yf4N#H-?Ih)EhhAp_Vu4-|RIElpA%|?U>|F&ioju+rM ztkH|qW1*PM=Zfbujm0bxF6$iDwJ4N%XX#>dUNs?mNR9y+10MbMGQhf=*XVX@^NaEd z(*1tliI_AG=%d0ozj;@z5{mHK&H}J{bhu{p0;I*itDWlUT zq~d4!=E1qXGXm&^vagc*tYq$Sn$je@Yq)beVi*KUC~#x4M|0EI!^5ExaOOrPr+jZA zhJWK4UJ9P?4qc;djkk#VQ^jmRXgBU@8_)MQI^q>3%RS|urcK886TG&RKK=<`YS}fZ z2HgR26NS3c++P((zVvArg=!%$Y~MAiY*(!Di&za0K4)4dTL<+g&IaD@ajm!`s~$|S zvL>ZU{FU~J$^s+fWbqPY23c#Cz0cFG`_zngL7ei)ShkGkKtUk-0anmg{fQ;s5CNk= zE`@#Rrxd1uk;dkQP$w_~uUVx@x0g5>BOYkZVdO0*5#nrcr+u)hA3lJzCkZFfp{AhG z269P-;!P`3(Yh%7O7ItyxewegxJjMuF=OHXi^OQH&}+jLg1n{q*{SYb7RYXa_9pqQ6} z_=PT-alq4^OmtRbq4WsXMl*yJ0dJq*Mf`+2-5P*tLFds1Ql z0pe6Wbn4T8iig}x-SH^RN5x64RqU%IA`Jj!4iknz3`Nj@D_jh-*E7e0?^}4pOWeR2 zq)hIF3z7C3xGvhJhN$wi?!2|yWh3bX9RiP-)MLhB?DB+gY(c@1C<1B& z>*F`5N!VpVWzIX-OCtgPI^Qs*4`6(YP35Lr+K?x1m|}82#idh^{7Aku{57XG3#s&H zE3ip(C6g{wU_l3M35F_c5{=R<1yEz1G-^&=o>xQ+T7A;}FjgrBqtq`|%ubB^xrAPe zMj_uG7;C9^8E~atoPO?SevB(5`>?i}Ta~kvNhy=7sW*;I|<<68X)f!0PM&S+oiQwqn zz*NGmfVLM$`X zTx!MVT--UDg(t8IdO@PKvN1$H;y1u~8hN^h;!i|$Tc>S%Y?43l8Xn$5Bt43cp2WPz znjG<&2k{Q@VZb@L5<%1kU9E3Mz0HniXECSt4O{rdU1I1foPov(I$oSH!x$Y<{WqS^ zGcIf1UmwQP!-D5}iwQK8txd-3zA_(=4zUu=x~H>xudJu*^8{ngL~;GpYP~Q4l+xGg zk6?w?mU8f9%<~(8@Slhi%z3jbbL+{^^ z@dA5AcdzfC9ac7I?OLJru)}LGLfqnlKJa z_BxucFzh(##Wk?qCbyiBqO=q!78!%K&dfL!Y!MjTsm^lkn=3>?q|_v#oMeZ?fBYBk zsA);6@H-mU7`Wa(cF5%0@zdIMNWw+b0JABhcSfNBoY8o-UuU;4B}Nv69h*q5Y$1U8u5+%wfVvpK?$Y+@Jv zErzk8;bHLCm+1KF=|k4MJxWV)8~p_mxn*-nB~v!+SnEvOFYOs_+eBS^q>Ts?OSHrq zg$g7`;X7q_L!!K#tz1uC=BtKTQ4n_saZycf&xJDUi{0Fbr)We%pxO)wdOcF-KG+2% zZAU|PIqTq<<+RWqcP-0`WfBo~V+)9ZkNN==R~Y%R;Qfqel|E<6TZEoc!nj<|V6#$O zA00RCq%;YYTjY80rxq#v7@XO0dVLr6Xbfu)EEyX@FIGJUAkV9q7|op3Tks24hr#eF zKvs+0;FO4c0L_6%^T`J*m~W0&QTdGlhc_1RW4F_9pGgW;ooxAOd{<$LpT^y+cG2SP zhl^Fi5gB2N&hNWRrOE`+cL(JDW$7(S-qw^t@f|C7m0LRW)G~pey zeKYg!*bp-k&VJc;*!)hKrPkPJeTyEaOzS~n4GLLP)&QPjJXx_#9R-<|<1=+E{CAQt z0gOhfoJdb=Ohyc4UZ^=p%%=0rK>cq!ihxz;PU!=k8M)}}_rb$teAa-q7K>Ar%xuEX zmhwtOAcy4vz2<>yma0tx8QF`F>XpZ=YEdLRdjT4q3Jhf94OAFb$;CsL@S(5wEQFoc2!>m)eYMwJRlpC z1%kln5GVY2`tn$$ z{CU(C{-u1cOviIrYYLiJcY6ZiDRQgjO(dN(zlb zl>uPW%}Zf_CZ{cErfP&J`D0#)J`3qRb4(`1KnnZ1VWw0}Gkc?URFvS^*HzNRl#QeG zsP56H$yE4@q;o2Z13}<*JH>;!Le4T+fzq9b5jGlj^bheaX$*f2SN@mDw33a*+HXL( z3UNmQQSSq)b!6JUYolXS!a_bU;~O^TeY9(Zg4e4ifF!1V2?;PO|2Z0t!(imeOh(KN z0rXCj4Q-eM)sbY*Y0Od5QpyfGO-9Ul@0__Iwx%_ktP2NRMzO6TPc5#FOSlYZ>i2Nz zjQOAS!)B+6v!vOhXzUuPzM0)&(n8zZO-{SEPS-l=Te6eJ;@+hLbOt@3O%CV*%G@(r zoecdWPPYzP3CGcJeh!e7*Z1~f_AAvyvrRc7fq|31#?Easlywe8n}u9l7PL;qkID!J z5d(O_V7;g14z`n#c+)?7+`Pb2E-bXM#PYdDafWasS1;4Uabetr{yreL4_;>~g%cQz z@lE?7{zWL}$0M!g2YX?M3+U4OA+J>We~uk*#`O-Sy3{0lfmc^ ziGE=Wz{&hBiqEE<4U|d9?P?L!=L3=N>qa{9w}BuOaLl}Yid55}cu~$NGpV^BB!F;o zp&phlX2xPn?FNG)M{ciG&~#+;*xne%XfQ)PJM+!%b*ZpV$#(HxVq;4eKEiU1=C(RQ zwAISQ^~ZmL8$Av(z|c0F;k_)8B|L%6E%gh*JXJ90A```+n~WVF1H9|y6#iD#ux(!s z`!2i#t$B{p&=N($XoAY|YfVwM5O9GHPS;~_%&65#RVW+B)r-)1ZeJ*&IQdJ8^&T^{ zjob+1>zlez8H;&T`tLX1Xh)LZU2n#V8kd{Pq(H`fM}8h%%X2~a6ZfQM@v`l^Qe(B^ zLzmFw^3Ym7cj!al2^3fo37wOjy?ju(UW2f>AoOj2a7^X#}Pyw>8GAFokv zmA8$`4)$sCKVIta+O-RsHG8Dwz*n^EuIu7Jgxhe=!!5>Er44^j`d!abtJLFE=KpcS z@v1K7sw?T6;eq`4_z$$rEbYoOgXbzFX6IZApm3HIu%-XTLiR_ycoZ52 zjcwyHs;v zm4Me#*m==MAwEJWyg@ZA5#at0***KdzG~@u6X~Uh-4^w7gDzRGuYoN2nt}B zIsa{fx3se4$Iw^s%ZDv#f9O)qV+-uNGyJ)>r#sq{LI8U(@W;#tOcR}#X)(#J1ak!D z0FQHB$k7&%dYVNCFb$~=!(`A%ObcqH9f^G#iTx!}=eh=^qH0X#@4N-pB%3=y?24dZ zO8$vj>X)qYDbcMtVPH_8aSQ+>7kP|0(ToC&C;V`G>?PXE9b8SVYUuqiemGCU@`OQC z!!y4ck?dS0rOF2+aW9q#m_wehjyE6rUH$=0S0a2^nSMgN_wVk1

YVDV}m%V~J5 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 Result<(), Box> { + Ok(()) +} diff --git a/src/bin/gaussian_renderer.rs b/src/bin/gaussian_renderer.rs deleted file mode 100644 index a27f5e2..0000000 --- a/src/bin/gaussian_renderer.rs +++ /dev/null @@ -1,229 +0,0 @@ -use std::fs::File; -use std::io; -use std::path::PathBuf; - -/// Represents a star with its right ascension, declination, and magnitude. -#[derive(Debug, Deserialize, Serialize, Clone)] -pub struct Star { - ra_deg: f64, - de_deg: f64, - mag: f64, -} - -/// Errors that can occur during star catalog reading. -#[derive(Error, Debug)] -pub enum CatalogError { - #[error("IO error: {0}")] - Io(#[from] io::Error), - #[error("CSV parsing error: {0}")] - Csv(#[from] csv::Error), - #[error("Missing field: {0}")] - MissingField(String), - #[error("Parse error: {0}")] - Parse(String), - #[error("Missing magnitude")] - MissingMagnitude, -} - -/// CLI Arguments -#[derive(Parser, Debug)] -#[command(author, version, about, long_about = None)] -struct Args { - /// Path to the Tycho-2 catalog file - #[arg( - short, - long, - value_name = "FILE", - default_value = "data/tycho2/catalog.dat" - )] - file: PathBuf, - - /// Number of stars to display (0 for all) - #[arg(short, long, default_value_t = 10)] - display_count: usize, - - /// Minimum Right Ascension (degrees) - #[arg(long, default_value_t = 0.0)] - min_ra: f64, - - /// Maximum Right Ascension (degrees) - #[arg(long, default_value_t = 360.0)] - max_ra: f64, - - /// Minimum Declination (degrees) - #[arg(long, default_value_t = -90.0)] - min_dec: f64, - - /// Maximum Declination (degrees) - #[arg(long, default_value_t = 90.0)] - max_dec: f64, - - /// Maximum visual magnitude (lower is brighter) - #[arg(short, long, default_value_t = 6.0)] - max_magnitude: f64, - - /// Output image width in pixels - #[arg(long, default_value_t = 800)] - width: u32, - - /// Output image height in pixels - #[arg(long, default_value_t = 600)] - height: u32, - - /// Output image file name - #[arg(short, long, default_value = "star_map.png")] - output: String, -} - -/// Reads and filters stars from the Tycho-2 catalog file. -/// https://heasarc.gsfc.nasa.gov/w3browse/all/tycho2.html -/// http://tdc-www.harvard.edu/catalogs/tycho2.format.html -pub fn read_stars>( - path: P, - min_ra: f64, - max_ra: f64, - min_dec: f64, - max_dec: f64, - max_magnitude: f64, -) -> Result, CatalogError> { - let file = File::open(path)?; - let reader = io::BufReader::new(file); - let mut csv_reader = ReaderBuilder::new() - .delimiter(b'|') - .has_headers(false) - .from_reader(reader); - - let mut stars = Vec::new(); - let mut skipped_rows = 0; - - for (i, result) in csv_reader.records().enumerate() { - let record = result?; - match parse_star_record(&record) { - Ok(star) => { - if star.ra_deg >= min_ra - && star.ra_deg <= max_ra - && star.de_deg >= min_dec - && star.de_deg <= max_dec - && star.mag <= max_magnitude - { - if i % 10000 == 0 { - println!( - "Star {}: RA={}, Dec={}, Mag={}", - i, star.ra_deg, star.de_deg, star.mag - ); - } - stars.push(star); - } - } - Err(e) => { - skipped_rows += 1; - if skipped_rows <= 10 { - println!("Skipping row {} due to error: {:?}", i, e); - println!("Problematic row: {:?}", record); - } else if skipped_rows == 11 { - println!("Further skipped rows will not be printed..."); - } - } - } - } - - println!("Total stars read and filtered: {}", stars.len()); - println!("Total rows skipped: {}", skipped_rows); - - Ok(stars) -} - -/// Parses a single record from the catalog into a Star struct. -fn parse_star_record(record: &csv::StringRecord) -> Result { - let ra = parse_field(record, 24, "RA")?; - let dec = parse_field(record, 25, "Dec")?; - let mag = parse_magnitude(record)?; - - Ok(Star { - ra_deg: ra, - de_deg: dec, - mag, - }) -} - -/// Parses a field from the record, returning a helpful error if parsing fails. -fn parse_field( - record: &csv::StringRecord, - index: usize, - field_name: &str, -) -> Result { - record - .get(index) - .ok_or_else(|| CatalogError::MissingField(field_name.to_string()))? - .trim() - .parse() - .map_err(|_| CatalogError::Parse(format!("Failed to parse {}", field_name))) -} - -fn parse_magnitude(record: &csv::StringRecord) -> Result { - let bt_mag = parse_field(record, 17, "BT magnitude").ok(); - let vt_mag = parse_field(record, 19, "VT magnitude").ok(); - - // println!("Debug: BT_Mag = {:?}, VT_Mag = {:?}", bt_mag, vt_mag); - - match (bt_mag, vt_mag) { - (Some(bt), Some(vt)) => { - let v_mag = vt - 0.090 * (bt - vt); - // println!("Debug: Calculated V_Mag = {:.3}", v_mag); - Ok(v_mag) - } - (None, Some(vt)) => { - // println!("Debug: Using VT_Mag as V_Mag = {:.3}", vt); - Ok(vt) - } - (Some(bt), None) => { - // println!("Debug: Using BT_Mag as V_Mag = {:.3}", bt); - Ok(bt) - } - (None, None) => Err(CatalogError::MissingMagnitude), - } -} - -/// Gaussian blurring function -fn gaussian(x: f64, y: f64, sigma: f64) -> f64 { - let exponent = -(x * x + y * y) / (2.0 * sigma * sigma); - (1.0 / (2.0 * PI * sigma * sigma)) * (-exponent).exp() -} - - - -fn apply_psf(image: &mut [Vec], star_x: usize, star_y: usize, intensity: f64, radius: f64, wavelength: f64, aperture_diameter: f64, focal_length: f64) { - let size = (2.0 * radius).ceil() as usize; - let half_size = size / 2; - - for dx in 0..size { - for dy in 0..size { - let x = star_x as isize + dx as isize - half_size as isize; - let y = star_y as isize + dy as isize - half_size as isize; - - // Ensure the coordinates are within image bounds - if x >= 0 && x < image.len() as isize && y >= 0 && y < image[0].len() as isize { - let r = (((dx as f64 - half_size as f64).powi(2) + (dy as f64 - half_size as f64).powi(2)).sqrt()); - let airy_value = airy_intensity(r, wavelength, aperture_diameter, focal_length); - - // Accumulate intensity at the pixel - image[x as usize][y as usize] += intensity * airy_value; - } - } - } -} - - -fn render_stars( - stars: &[Star], - width: u32, - height: u32, - min_ra: f64, - max_ra: f64, - min_dec: f64, - max_dec: f64, -) { - let mut img = ImageBuffer::new(width, height); - - -} \ No newline at end of file diff --git a/src/bin/psf_renderer.rs b/src/bin/main.rs similarity index 74% rename from src/bin/psf_renderer.rs rename to src/bin/main.rs index 537a9b8..9f320c9 100644 --- a/src/bin/psf_renderer.rs +++ b/src/bin/main.rs @@ -1,12 +1,11 @@ -#![allow(warnings)] - -use std::path::PathBuf; +// #![allow(warnings)] use clap::Parser; +use starfield_renderer::coords::{EquatorialCoords}; use starfield_renderer::fov::{get_fov}; use starfield_renderer::parsing_utils::{read_stars}; use starfield_renderer::rendering::{render_stars}; +use std::path::PathBuf; use std::time::Instant; -use starfield_renderer::coords::{EquatorialCoords}; /// CLI Arguments @@ -31,19 +30,19 @@ pub struct Args { center_dec: f64, /// Width of field of view. With 0 roll, corresponds to right ascension (degrees) - #[arg(long, default_value_t = 90.0)] - fov_w_deg: f64, + #[arg(long, default_value_t = 60.0)] + fov_w: f64, /// Height of field of view. With 0 roll, corresponds to declination (degrees) - #[arg(long, default_value_t = 60.0)] - fov_h_deg: f64, + #[arg(long, default_value_t = 45.0)] + fov_h: f64, /// Roll of the camera view (degrees) #[arg(long, default_value_t = 0.0)] - roll_deg: f64, + roll: f64, /// Maximum visual magnitude (lower is brighter) - #[arg(long, default_value_t = 5.0)] + #[arg(long, default_value_t = 12.0)] max_magnitude: f64, /// Targeted wavelength - critical for airy disc rendering (nanometers). Default to visible @@ -69,13 +68,13 @@ pub struct Args { } fn main() -> Result<(), Box> { - let start = Instant::now(); + let run_start = Instant::now(); let args = Args::parse(); let center_ra = args.center_ra.to_radians(); let center_dec = args.center_dec.to_radians(); - let roll = args.roll_deg.to_radians(); - let fov_w = args.fov_w_deg.to_radians(); - let fov_h = args.fov_h_deg.to_radians(); + let roll = args.roll.to_radians(); + let fov_w = args.fov_w.to_radians(); + let fov_h = args.fov_h.to_radians(); /*println!("================ Cmd args list ==============="); println!("Reading stars from: {:?}", args.source); @@ -99,38 +98,26 @@ fn main() -> Result<(), Box> { println!("============ End of cmd args list ============");*/ // 1) Rotate FOV by specified roll - let center = &EquatorialCoords { + let get_fov_start = Instant::now(); + let center = EquatorialCoords { ra: center_ra, dec: center_dec, }; let rolled_fov = get_fov(center, fov_w, fov_h, roll); + println!("Total FOV retrieval time: {:?}", get_fov_start.elapsed()); // 2) Read stars and filter against rolled_fov to create subset of stars in view of the image - let stars = read_stars(args.source, center, &rolled_fov, args.max_magnitude)?; - /*let star = &stars[0]; - println!("Star: {:?}", star.coords);*/ + let read_stars_start = Instant::now(); + let stars_in_fov = read_stars(args.source, rolled_fov, args.max_magnitude)?; + println!("Total time to read and parse stars: {:?}", read_stars_start.elapsed()); - // 4) Render stars in FOV w/ airy disc - let img = render_stars(&stars, args.width, args.height, center, fov_w, fov_h, roll); + // 4) Render stars in FOV + let render_stars_start = Instant::now(); + let img = render_stars(stars_in_fov, args.width, args.height, center, fov_w, fov_h, roll); img.save(&args.output)?; + println!("Total parse and write stars: {:?}", render_stars_start.elapsed()); -/* - let render_start = Instant::now(); - let img = render_stars( - &stars, - args.width, - args.height, - args.min_ra, - args.max_ra, - args.min_dec, - args.max_dec, - ); - img.save(&args.output)?; - let render_duration = render_start.elapsed(); -*/ - // println!("Time taken to render and save image: {:?}", render_duration); - // println!("Image saved as: {}", args.output); - println!("Total time elapsed: {:?}", start.elapsed()); + println!("Total run time elapsed: {:?}", run_start.elapsed()); Ok(()) } \ No newline at end of file diff --git a/src/coords.rs b/src/coords.rs index 062c704..ec13572 100644 --- a/src/coords.rs +++ b/src/coords.rs @@ -1,8 +1,14 @@ -use crate::fov::APPROX_GRID_RESOLUTION; +use crate::fov::GRID_RESOLUTION; use serde::{Deserialize, Serialize}; use std::f64::consts::PI; use std::hash::{Hash, Hasher}; +#[derive(Debug, Deserialize, Serialize, Clone, Copy)] +pub struct StandardCoords { + pub x: f64, + pub y: f64, +} + #[derive(Debug, Deserialize, Serialize, Clone, Copy)] pub struct CartesianCoords { pub x: f64, @@ -12,9 +18,9 @@ pub struct CartesianCoords { impl CartesianCoords { pub fn to_equatorial(&self) -> EquatorialCoords { - let mut ra: f64; + let ra: f64; - if (self.y < 0.0) { + if self.y < 0.0 { ra = (2.0 * PI) - self.x.acos(); } else { ra = self.x.acos(); @@ -37,7 +43,7 @@ pub struct EquatorialCoords { impl EquatorialCoords { /// Calculate a point's standard coordinates on the plane tangent to the celestial sphere, whose /// center point sits tangent to the sphere where the camera's central (z) axis meets it - pub fn to_standard(&self, center: &EquatorialCoords) -> StandardCoords { + pub fn to_standard(&self, center: EquatorialCoords) -> StandardCoords { // Right ascension and declination of current object, in radians let ra = self.ra; let dec = self.dec; @@ -63,8 +69,8 @@ impl EquatorialCoords { pub fn to_grid(&self) -> EquatorialCoords { EquatorialCoords { - ra: ((self.ra / 2.0 * PI) * (1.0 - (2.0 * self.dec / PI).abs()) * APPROX_GRID_RESOLUTION).round(), - dec: ((2.0 * self.dec / PI) * APPROX_GRID_RESOLUTION).round(), + ra: ((self.ra / 2.0 * PI) * (1.0 - (2.0 * self.dec / PI).abs()) * GRID_RESOLUTION).round(), + dec: ((2.0 * self.dec / PI) * GRID_RESOLUTION).round(), } } } @@ -85,32 +91,3 @@ impl Hash for EquatorialCoords { } } -#[derive(Debug, Deserialize, Serialize, Clone, Copy)] -pub struct StandardCoords { - pub x: f64, - pub y: f64, -} - -impl StandardCoords { - pub fn to_equatorial(&self, center: &EquatorialCoords) -> EquatorialCoords { - // Right ascension and declination of center point of tangent plane, in radians - let cra = center.ra; - let cdec = center.dec; - - EquatorialCoords { - ra: (cra + (self.x / (cdec.cos() - (self.y * cdec.sin()))).atan()), - dec: ( - ((cdec.sin() + (self.y * cdec.cos())) - / ((1.0 + self.x.powi(2) + self.y.powi(2)).sqrt()) - ).asin()), - } - } -} - -#[derive(Debug, Deserialize, Serialize, Clone)] -pub struct BoundsEquatorial { - pub max_ra: f64, - pub min_ra: f64, - pub max_dec: f64, - pub min_dec: f64, -} \ No newline at end of file diff --git a/src/fov.rs b/src/fov.rs index 7eb1ce3..f378a23 100644 --- a/src/fov.rs +++ b/src/fov.rs @@ -1,18 +1,15 @@ -use nalgebra::{SMatrix, SVector, Vector3}; -use serde::{Deserialize, Serialize}; -use crate::coords::{BoundsEquatorial, CartesianCoords, EquatorialCoords, StandardCoords}; +use crate::coords::{CartesianCoords, EquatorialCoords}; +use nalgebra::{SMatrix, Vector3}; use std::collections::HashSet; use std::f64::consts::PI; -pub const APPROX_GRID_RESOLUTION: f64 = 360.0; +pub const GRID_RESOLUTION: f64 = 360.0; pub fn get_fov( - center: &EquatorialCoords, + center: EquatorialCoords, fov_w: f64, fov_h: f64, roll: f64, - // Approximation resolution for dividing FOV into smaller regions (NOT image size) - // approx_res: i32, ) -> HashSet { // Config params for function let view_init_center = EquatorialCoords { @@ -25,7 +22,7 @@ pub fn get_fov( let fov_w_half = fov_w / 2.0; let fov_h_half = fov_h / 2.0; - let step_size = 2.0 * PI / APPROX_GRID_RESOLUTION; + let step_size = 2.0 * PI / GRID_RESOLUTION; let bottom_left = EquatorialCoords { ra: view_init_center.ra - fov_w_half, dec: view_init_center.dec - fov_h_half, @@ -42,9 +39,6 @@ pub fn get_fov( }.to_cartesian()); } } - /*let debug_index = (scatter_shot.len() / 2) as usize; - let debug_middle_coord = scatter_shot[debug_index]; - println!("Approx center grid coord: {:?}", debug_middle_coord);*/ let c_cartesian = center.to_cartesian(); let y_roll_axis = CartesianCoords { @@ -106,9 +100,6 @@ pub fn get_fov( z: transformed[(2,0)], }.to_equatorial().to_grid(); final_grid.insert(grid_coord); - /*if (index == debug_index) { - println!("approx center grid coord (after transform) {:?}", grid_coord); - }*/ }; final_grid diff --git a/src/lib.rs b/src/lib.rs index 445fc8d..2cddd12 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,7 +1,7 @@ -pub mod rendering; pub mod coords; pub mod fov; pub mod parsing_utils; +pub mod rendering; pub mod star; pub mod render; diff --git a/src/main.rs b/src/main.rs deleted file mode 100644 index df235ff..0000000 --- a/src/main.rs +++ /dev/null @@ -1,71 +0,0 @@ -use clap::Parser; - -use starfinder::{process_star_catalog, StarCatalogArgs}; - -#[derive(Parser, Debug)] -#[command(author, version, about, long_about = None)] -struct CliArgs { - /// Path to the Tycho-2 catalog file - #[arg( - short, - long, - value_name = "FILE", - default_value = "data/tycho2/catalog.dat" - )] - file: String, - - /// Number of stars to display (0 for all) - #[arg(short, long, default_value_t = 10)] - display_count: usize, - - /// Minimum Right Ascension (degrees) - #[arg(long, default_value_t = 0.0)] - min_ra: f64, - - /// Maximum Right Ascension (degrees) - #[arg(long, default_value_t = 360.0)] - max_ra: f64, - - /// Minimum Declination (degrees) - #[arg(long, default_value_t = -90.0)] - min_dec: f64, - - /// Maximum Declination (degrees) - #[arg(long, default_value_t = 90.0)] - max_dec: f64, - - /// Maximum visual magnitude (lower is brighter) - #[arg(short, long, default_value_t = 6.0)] - max_magnitude: f64, - - /// Output image width in pixels - #[arg(long, default_value_t = 800)] - width: u32, - - /// Output image height in pixels - #[arg(long, default_value_t = 600)] - height: u32, - - /// Output image file name - #[arg(short, long, default_value = "star_map.png")] - output: String, -} - -fn main() -> Result<(), Box> { - let cli_args = CliArgs::parse(); - - let args = StarCatalogArgs { - file: cli_args.file, - display_count: cli_args.display_count, - min_ra: cli_args.min_ra, - max_ra: cli_args.max_ra, - min_dec: cli_args.min_dec, - max_dec: cli_args.max_dec, - max_magnitude: cli_args.max_magnitude, - width: cli_args.width, - height: cli_args.height, - output: cli_args.output, - }; - - process_star_catalog(args) -} diff --git a/src/parsing_utils.rs b/src/parsing_utils.rs index f2304e0..2f9bdea 100644 --- a/src/parsing_utils.rs +++ b/src/parsing_utils.rs @@ -30,8 +30,7 @@ pub enum CatalogError { /// calculations make use of trig functions which deal in radians - this will be our default mode pub fn read_stars>( path: P, - center: &EquatorialCoords, - filter_grid: &HashSet, + filter_grid: HashSet, max_magnitude: f64, ) -> Result, CatalogError> { let file = File::open(path)?; diff --git a/src/rendering.rs b/src/rendering.rs index 6f0ff4f..3d1e334 100644 --- a/src/rendering.rs +++ b/src/rendering.rs @@ -1,10 +1,67 @@ -use std::f64::consts::PI; -use image::{ImageBuffer, Rgb}; -use nalgebra::SMatrix; -use spec_math::cephes64::j1; use crate::coords::EquatorialCoords; use crate::star::Star; +use image::{ImageBuffer, Rgb}; +use nalgebra::SMatrix; +// use spec_math::cephes64::j1; +// use std::f64::consts::PI; + +pub fn render_stars( + stars: Vec, + width: u32, + height: u32, + fov_center: EquatorialCoords, + fov_w: f64, + fov_h: f64, + fov_roll: f64, +) -> ImageBuffer, Vec> { + let mut img = ImageBuffer::new(width, height); + + // Find the minimum and maximum magnitudes in the dataset + let min_mag = stars.iter().map(|s| s.mag).fold(f64::INFINITY, f64::min); + let max_mag = stars + .iter() + .map(|s| s.mag) + .fold(f64::NEG_INFINITY, f64::max); + let z_roll_mat = SMatrix::::new( + fov_roll.cos(), -fov_roll.sin(), + fov_roll.sin(), fov_roll.cos(), + ); + let pixel_ratio_w = width as f64 / fov_w; + let pixel_ratio_h = height as f64 / fov_h; + let x_offset = width as f64 / 2.0; + let y_offset = width as f64 / 2.0; + + println!("Attempting to render {} stars", stars.len()); + let mut stars_rendered = 0; + + for star in stars { + let std_star_coords = star.coords.to_standard(fov_center); + let std_star_mat = SMatrix::::new(std_star_coords.x, std_star_coords.y); + let final_star_pos = z_roll_mat * std_star_mat; + + let x = final_star_pos.x * pixel_ratio_w + x_offset; + let y = final_star_pos.y * pixel_ratio_h + y_offset; + + if x < 0.0 || x > width as f64 || y < 0.0 || y > height as f64 { + continue; + } + + // Inverse the magnitude scale (brighter stars have lower magnitudes) + let normalized_mag = (max_mag - star.mag) / (max_mag - min_mag); + // Apply a non-linear scaling to emphasize brighter stars + let brightness = (normalized_mag.powf(2.5) * 255.0) as u8; + let color = Rgb([brightness, brightness, brightness]); + + img.put_pixel(x as u32, y as u32, color); + stars_rendered = stars_rendered + 1; + } + + println!("Actually rendered {} stars", stars_rendered); + img +} + +/* /// Airy disc radius - calculate physical radius, then convert to pixel scale pub fn calc_airy_disc_radius(lambda: f64, aperture_diameter: f64, focal_length: f64, pixel_size_m: f64) -> f64 { // Physical radius on the sensor in meters @@ -67,55 +124,4 @@ fn apply_psf(image: &mut [Vec], star_x: usize, star_y: usize, intensity: f6 } } } -} - -pub fn render_stars( - stars: &Vec, - width: u32, - height: u32, - center: &EquatorialCoords, - fov_w: f64, - fov_h: f64, - roll: f64, -) -> ImageBuffer, Vec> { - let mut img = ImageBuffer::new(width, height); - - // Find the minimum and maximum magnitudes in the dataset - let min_mag = stars.iter().map(|s| s.mag).fold(f64::INFINITY, f64::min); - let max_mag = stars - .iter() - .map(|s| s.mag) - .fold(f64::NEG_INFINITY, f64::max); - let z_roll_mat = SMatrix::::new( - roll.cos(), -roll.sin(), - roll.sin(), roll.cos(), - ); - let pixel_ratio_w = width as f64 / fov_w; - let pixel_ratio_h = height as f64 / fov_h; - let x_offset = width as f64 / 2.0; - let y_offset = width as f64 / 2.0; - - for star in stars { - let std_star_coords = star.coords.to_standard(center); - let std_star_mat = SMatrix::::new(std_star_coords.x, std_star_coords.y); - let final_star_pos = z_roll_mat * std_star_mat; - - let x = final_star_pos.x * pixel_ratio_w + x_offset; - let y = final_star_pos.y * pixel_ratio_h + y_offset; - println!("(x, y) | ({},{})", x, y); - if (x < 0.0 || x > width as f64 || y < 0.0 || y > height as f64) { - println!("Discarding star at ({}, {})", x, y); - continue; - } - - // Inverse the magnitude scale (brighter stars have lower magnitudes) - let normalized_mag = (max_mag - star.mag) / (max_mag - min_mag); - // Apply a non-linear scaling to emphasize brighter stars - let brightness = (normalized_mag.powf(2.5) * 255.0) as u8; - let color = Rgb([brightness, brightness, brightness]); - - img.put_pixel(x as u32, y as u32, color); - } - - img -} \ No newline at end of file +}*/ From 98de368b162303b0671b4bf40f8fd1ee1cb0de16 Mon Sep 17 00:00:00 2001 From: Layton Miller Date: Tue, 10 Sep 2024 15:37:22 -0700 Subject: [PATCH 09/10] Rebase master --- src/bin/main.rs | 9 ++-- src/fov.rs | 2 +- src/lib.rs | 65 ++---------------------- src/parsing_utils.rs | 1 - src/render.rs | 41 ---------------- src/rendering.rs | 2 +- src/star_catalog.rs | 114 ------------------------------------------- src/types.rs | 26 ---------- 8 files changed, 9 insertions(+), 251 deletions(-) delete mode 100644 src/render.rs delete mode 100644 src/star_catalog.rs delete mode 100644 src/types.rs diff --git a/src/bin/main.rs b/src/bin/main.rs index 9f320c9..85082b5 100644 --- a/src/bin/main.rs +++ b/src/bin/main.rs @@ -1,9 +1,8 @@ -// #![allow(warnings)] use clap::Parser; -use starfield_renderer::coords::{EquatorialCoords}; -use starfield_renderer::fov::{get_fov}; -use starfield_renderer::parsing_utils::{read_stars}; -use starfield_renderer::rendering::{render_stars}; +use starfinder::coords::{EquatorialCoords}; +use starfinder::fov::{get_fov}; +use starfinder::parsing_utils::{read_stars}; +use starfinder::rendering::{render_stars}; use std::path::PathBuf; use std::time::Instant; diff --git a/src/fov.rs b/src/fov.rs index f378a23..f05337e 100644 --- a/src/fov.rs +++ b/src/fov.rs @@ -89,7 +89,7 @@ pub fn get_fov( c_cartesian.z.powi(2) * (1.0 - roll.cos()) + roll.cos(), ); - let transform = z_roll * y_roll * x_roll; + let transform = x_roll * y_roll * z_roll; let mut final_grid: HashSet = HashSet::new(); for p in scatter_shot { let vec: Vector3 = Vector3::new(p.x, p.y, p.z); diff --git a/src/lib.rs b/src/lib.rs index 2cddd12..def4ab3 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,20 +1,12 @@ +use clap::Parser; +use pyo3::prelude::*; + pub mod coords; pub mod fov; pub mod parsing_utils; pub mod rendering; pub mod star; -pub mod render; -pub mod star_catalog; -pub mod types; - -use clap::Parser; -use pyo3::prelude::*; -use std::time::Instant; - -use crate::render::render_stars; -use crate::star_catalog::read_stars; - #[pyclass] #[derive(Parser, Debug, Clone)] pub struct StarCatalogArgs { @@ -70,57 +62,6 @@ impl StarCatalogArgs { } } -pub fn process_star_catalog(args: StarCatalogArgs) -> Result<(), Box> { - println!("Reading stars from: {}", args.file); - println!("RA range: {} to {}", args.min_ra, args.max_ra); - println!("Dec range: {} to {}", args.min_dec, args.max_dec); - println!("Max magnitude: {}", args.max_magnitude); - - let start = Instant::now(); - let stars = read_stars( - &args.file, - args.min_ra, - args.max_ra, - args.min_dec, - args.max_dec, - args.max_magnitude, - )?; - let read_duration = start.elapsed(); - - println!("Time taken to read and filter stars: {:?}", read_duration); - println!("Total stars after filtering: {}", stars.len()); - - println!("\nFirst {} stars:", args.display_count); - for (i, star) in stars.iter().enumerate() { - if i >= args.display_count && args.display_count != 0 { - break; - } - println!( - "Star {}: RA={:.2}, Dec={:.2}, Mag={:.2}", - i, star.ra_deg, star.de_deg, star.mag - ); - } - - let render_start = Instant::now(); - let img = render_stars( - &stars, - args.width, - args.height, - args.min_ra, - args.max_ra, - args.min_dec, - args.max_dec, - ); - img.save(&args.output)?; - let render_duration = render_start.elapsed(); - - println!("Time taken to render and save image: {:?}", render_duration); - println!("Image saved as: {}", args.output); - println!("Total time elapsed: {:?}", start.elapsed()); - - Ok(()) -} - #[pyfunction] fn process_star_catalog_py(args: StarCatalogArgs) -> PyResult<()> { process_star_catalog(args) diff --git a/src/parsing_utils.rs b/src/parsing_utils.rs index 2f9bdea..d136841 100644 --- a/src/parsing_utils.rs +++ b/src/parsing_utils.rs @@ -22,7 +22,6 @@ pub enum CatalogError { MissingMagnitude, } - /// Reads and filters stars from the Tycho-2 catalog file. /// https://heasarc.gsfc.nasa.gov/w3browse/all/tycho2.html /// http://tdc-www.harvard.edu/catalogs/tycho2.format.html diff --git a/src/render.rs b/src/render.rs deleted file mode 100644 index 5f8707b..0000000 --- a/src/render.rs +++ /dev/null @@ -1,41 +0,0 @@ -use crate::types::Star; -use image::{ImageBuffer, Rgb}; - -pub fn render_stars( - stars: &[Star], - width: u32, - height: u32, - min_ra: f64, - max_ra: f64, - min_dec: f64, - max_dec: f64, -) -> ImageBuffer, Vec> { - let mut img = ImageBuffer::new(width, height); - - // Find the minimum and maximum magnitudes in the dataset - let min_mag = stars.iter().map(|s| s.mag).fold(f64::INFINITY, f64::min); - let max_mag = stars - .iter() - .map(|s| s.mag) - .fold(f64::NEG_INFINITY, f64::max); - - println!("Magnitude range: {:.3} to {:.3}", min_mag, max_mag); - - for star in stars { - let x = ((star.ra_deg - min_ra) / (max_ra - min_ra) * width as f64) as u32; - let y = ((star.de_deg - min_dec) / (max_dec - min_dec) * height as f64) as u32; - - if x < width && y < height { - // Inverse the magnitude scale (brighter stars have lower magnitudes) - let normalized_mag = (max_mag - star.mag) / (max_mag - min_mag); - - // Apply a non-linear scaling to emphasize brighter stars - let brightness = (normalized_mag.powf(2.5) * 255.0) as u8; - - let color = Rgb([brightness, brightness, brightness]); - img.put_pixel(x, y, color); - } - } - - img -} diff --git a/src/rendering.rs b/src/rendering.rs index 3d1e334..60b9c70 100644 --- a/src/rendering.rs +++ b/src/rendering.rs @@ -49,7 +49,7 @@ pub fn render_stars( // Inverse the magnitude scale (brighter stars have lower magnitudes) let normalized_mag = (max_mag - star.mag) / (max_mag - min_mag); // Apply a non-linear scaling to emphasize brighter stars - let brightness = (normalized_mag.powf(2.5) * 255.0) as u8; + let brightness = (normalized_mag.powf(2.0) * 255.0) as u8; let color = Rgb([brightness, brightness, brightness]); img.put_pixel(x as u32, y as u32, color); diff --git a/src/star_catalog.rs b/src/star_catalog.rs deleted file mode 100644 index 3d2638b..0000000 --- a/src/star_catalog.rs +++ /dev/null @@ -1,114 +0,0 @@ -use csv::ReaderBuilder; -use std::fs::File; -use std::io::{self}; - -use crate::types::{CatalogError, Star}; - -/// Reads and filters stars from the Tycho-2 catalog file. -/// https://heasarc.gsfc.nasa.gov/w3browse/all/tycho2.html -/// http://tdc-www.harvard.edu/catalogs/tycho2.format.html -pub fn read_stars>( - path: P, - min_ra: f64, - max_ra: f64, - min_dec: f64, - max_dec: f64, - max_magnitude: f64, -) -> Result, CatalogError> { - let file = File::open(path)?; - let reader = io::BufReader::new(file); - let mut csv_reader = ReaderBuilder::new() - .delimiter(b'|') - .has_headers(false) - .from_reader(reader); - - let mut stars = Vec::new(); - let mut skipped_rows = 0; - - for (i, result) in csv_reader.records().enumerate() { - let record = result?; - match parse_star_record(&record) { - Ok(star) => { - if star.ra_deg >= min_ra - && star.ra_deg <= max_ra - && star.de_deg >= min_dec - && star.de_deg <= max_dec - && star.mag <= max_magnitude - { - if i % 10000 == 0 { - println!( - "Star {}: RA={}, Dec={}, Mag={}", - i, star.ra_deg, star.de_deg, star.mag - ); - } - stars.push(star); - } - } - Err(e) => { - skipped_rows += 1; - if skipped_rows <= 10 { - println!("Skipping row {} due to error: {:?}", i, e); - println!("Problematic row: {:?}", record); - } else if skipped_rows == 11 { - println!("Further skipped rows will not be printed..."); - } - } - } - } - - println!("Total stars read and filtered: {}", stars.len()); - println!("Total rows skipped: {}", skipped_rows); - - Ok(stars) -} - -/// Parses a single record from the catalog into a Star struct. -fn parse_star_record(record: &csv::StringRecord) -> Result { - let ra = parse_field(record, 24, "RA")?; - let dec = parse_field(record, 25, "Dec")?; - let mag = parse_magnitude(record)?; - - Ok(Star { - ra_deg: ra, - de_deg: dec, - mag, - }) -} - -/// Parses a field from the record, returning a helpful error if parsing fails. -fn parse_field( - record: &csv::StringRecord, - index: usize, - field_name: &str, -) -> Result { - record - .get(index) - .ok_or_else(|| CatalogError::MissingField(field_name.to_string()))? - .trim() - .parse() - .map_err(|_| CatalogError::Parse(format!("Failed to parse {}", field_name))) -} - -fn parse_magnitude(record: &csv::StringRecord) -> Result { - let bt_mag = parse_field(record, 17, "BT magnitude").ok(); - let vt_mag = parse_field(record, 19, "VT magnitude").ok(); - - // println!("Debug: BT_Mag = {:?}, VT_Mag = {:?}", bt_mag, vt_mag); - - match (bt_mag, vt_mag) { - (Some(bt), Some(vt)) => { - let v_mag = vt - 0.090 * (bt - vt); - // println!("Debug: Calculated V_Mag = {:.3}", v_mag); - Ok(v_mag) - } - (None, Some(vt)) => { - // println!("Debug: Using VT_Mag as V_Mag = {:.3}", vt); - Ok(vt) - } - (Some(bt), None) => { - // println!("Debug: Using BT_Mag as V_Mag = {:.3}", bt); - Ok(bt) - } - (None, None) => Err(CatalogError::MissingMagnitude), - } -} diff --git a/src/types.rs b/src/types.rs deleted file mode 100644 index edbabc0..0000000 --- a/src/types.rs +++ /dev/null @@ -1,26 +0,0 @@ -use serde::{Deserialize, Serialize}; -use std::io; -use thiserror::Error; - -/// Represents a star with its right ascension, declination, and magnitude. -#[derive(Debug, Deserialize, Serialize, Clone)] -pub struct Star { - pub ra_deg: f64, - pub de_deg: f64, - pub mag: f64, -} - -/// Errors that can occur during star catalog reading. -#[derive(Error, Debug)] -pub enum CatalogError { - #[error("IO error: {0}")] - Io(#[from] io::Error), - #[error("CSV parsing error: {0}")] - Csv(#[from] csv::Error), - #[error("Missing field: {0}")] - MissingField(String), - #[error("Parse error: {0}")] - Parse(String), - #[error("Missing magnitude")] - MissingMagnitude, -} From 8cc798b87aa297398f1149a299c1b9d497b73e1e Mon Sep 17 00:00:00 2001 From: Sulaiman Ghori Date: Tue, 10 Sep 2024 16:13:01 -0700 Subject: [PATCH 10/10] :twisted_rightwards_arrows: (Merge) Finished merge, updated README, interface, etc --- Cargo.lock | 22 ++-- Cargo.toml | 3 +- README.md | 239 +++++++++++------------------------- pyproject.toml | 2 +- src/bin/data-transformer.rs | 13 -- src/coords.rs | 93 -------------- src/fov.rs | 31 +++-- src/lib.rs | 108 ++++++++++++---- src/{bin => }/main.rs | 28 +++-- src/parsing_utils.rs | 5 +- src/rendering.rs | 12 +- src/star.rs | 9 -- src/types/star.rs | 2 +- 13 files changed, 220 insertions(+), 347 deletions(-) delete mode 100644 src/bin/data-transformer.rs delete mode 100644 src/coords.rs rename src/{bin => }/main.rs (88%) delete mode 100644 src/star.rs diff --git a/Cargo.lock b/Cargo.lock index ddeaea2..c746d13 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -71,9 +71,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.86" +version = "1.0.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da" +checksum = "10f00e1f6e58a40e807377c75c6a7f97bf9044fab57816f2414e6f5f4499d7b8" [[package]] name = "approx" @@ -168,9 +168,9 @@ checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" [[package]] name = "bytemuck" -version = "1.17.1" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773d90827bc3feecfb67fab12e24de0749aad83c74b9504ecde46237b5cd24e2" +checksum = "94bbb0ad554ad961ddc5da507a12a29b14e4ae5bda06b19f575a3e6079d2e2ae" [[package]] name = "byteorder" @@ -186,9 +186,9 @@ checksum = "8f1fe948ff07f4bd06c30984e69f5b4899c516a3ef74f34df92a2df2ab535495" [[package]] name = "cc" -version = "1.1.16" +version = "1.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9d013ecb737093c0e86b151a7b837993cf9ec6c502946cfb44bedc392421e0b" +checksum = "b62ac837cdb5cb22e10a256099b4fc502b1dfe560cb282963a974d7abd80e476" dependencies = [ "jobserver", "libc", @@ -1038,18 +1038,18 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "serde" -version = "1.0.209" +version = "1.0.210" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99fce0ffe7310761ca6bf9faf5115afbc19688edd00171d81b1bb1b116c63e09" +checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.209" +version = "1.0.210" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5831b979fd7b5439637af1752d535ff49f4860c0f341d1baeb6faf0f4242170" +checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" dependencies = [ "proc-macro2", "quote", @@ -1122,7 +1122,7 @@ dependencies = [ [[package]] name = "starfinder" -version = "1.0.0" +version = "1.1.0" dependencies = [ "clap", "csv", diff --git a/Cargo.toml b/Cargo.toml index dc5b1a6..a6b3dad 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,8 +1,7 @@ [package] name = "starfinder" -version = "1.0.0" +version = "1.1.0" edition = "2021" -default-run = "main" license-file = "LICENSE" description = "starfinder is a Rust & Python package that provides functionality to read, process, and render star data from the Tycho-2 catalog. It's built with Rust for performance and exposes a Python API for ease of use." homepage = "https://github.com/djmango/starfinder" diff --git a/README.md b/README.md index 8e338e3..6a3197b 100644 --- a/README.md +++ b/README.md @@ -3,9 +3,13 @@ `starfinder` is a Rust & Python package that provides functionality to read, process, and render star data from the Tycho-2 catalog. It's built with Rust for performance and exposes a Python API for ease of use. ## Setup -https://archive.eso.org/ASTROM/TYC-2/data/ -Download catalog.dat from there, put it in data/tycho2/ +1. Download the Tycho-2 catalog: + + - Visit https://archive.eso.org/ASTROM/TYC-2/data/ + - Download `catalog.dat` and place it in `data/tycho2/` + +2. Ensure your project structure looks like this: ``` . @@ -14,208 +18,115 @@ Download catalog.dat from there, put it in data/tycho2/ ├── README.md ├── data │ └── tycho2 -│ ├── catalog.dat -│ ├── index.dat -│ ├── suppl_1.dat -│ └── suppl_2.dat +│ ├── catalog.dat +│ ├── index.dat +│ ├── suppl_1.dat +│ └── suppl_2.dat ├── poetry.lock ├── pyproject.toml -├── src -│ └── bin -│ └── main.rs -│ └── data-transformer.rs +└── src ``` -# Run -To run the renderer with defaults -``` +## Running the Renderer + +### Using Cargo (Rust) + +To run the renderer with default settings: + +```bash cargo run ``` -To run the renderer with cmd arg overrides: -``` -cargo run -- --roll-deg 0.0 --fov-w-deg 75.0 --fov-h-deg 50.0 -``` -### Cmd args - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
██ Flag ████ Description ████ Default value ████ Notes ██
--source, -sThe source file to run`data/tycho2/catalog.dat`
--center-raFOV center point right ascension`180.0`In degrees
--center-decFOV center point declination`0.0`In degrees
--fov-wWidth of FOV`60.0`In degrees
--fov-hHeight of FOV`45.0`In degrees
--rollCritical for determining FOV and should always be specified. Camera sensor roll with respect to the celestial sphere.`0.0`In degrees
--max-magnitudeMaximum visual magnitude (lower is brighter).`12.0`This is essentially a filter, and dimmer stars will be ignored. A higher value can have an effect on performance at the cost of realism. Defaults to a maximum dimmer than Tycho2 dataset - i.e. shows all stars.
--lambda-nmTargeted wavelength - critical for airy disc rendering (nanometers). Default to visible spectrum`540.0`In nanometers. Currently unused - for future revision with PSF rendering
--pixel-size-mSimulated sensor physical pixel size`3e-6`In meters. Currently unused - for future revision with PSF rendering
--widthOutput image width. Should match sensor pixel count.`800`In pixels. Larger values will impact performance.
--heightOutput image height. Should match sensor pixel count.`600`In pixels. Larger values will impact performance.
--output, -oOutput filename`star_map.png`
- - -# C++ +To run with custom arguments: +```bash +cargo run -- --roll 0.0 --fov-w 75.0 --fov-h 50.0 ``` -mkdir build -cd build -cmake .. -make -render --max-ra=60 --min-dec=-30 --max-dec=30 --max-magnitude=11 --width=1000 --height=800 --output=example.png ../data/tycho2/catalog.dat -``` -## Installation +### Command-line Arguments + +| Flag | Description | Default | Notes | +| --------------- | -------------------------------- | ------------------------- | ----------------- | +| --source, -s | Source file path | `data/tycho2/catalog.dat` | | +| --center-ra | FOV center point right ascension | 180.0 | In degrees | +| --center-dec | FOV center point declination | 0.0 | In degrees | +| --fov-w | Width of FOV | 60.0 | In degrees | +| --fov-h | Height of FOV | 45.0 | In degrees | +| --roll | Camera sensor roll | 0.0 | In degrees | +| --max-magnitude | Maximum visual magnitude | 12.0 | Lower is brighter | +| --lambda-nm | Targeted wavelength | 540.0 | In nanometers | +| --pixel-size-m | Simulated sensor pixel size | 3e-6 | In meters | +| --width | Output image width | 800 | In pixels | +| --height | Output image height | 600 | In pixels | +| --output, -o | Output filename | `star_map.png` | | + +## Python Installation and Usage + +### Installation + +Ensure you have Python 3.8 or later, then: -To install `starfinder`, you can use pip: -https://pyo3.rs/v0.22.2/getting-started +`bash` +pip install starfinder + +```` +Or if you want to install the package in development mode: ```bash pipx install maturin maturin develop -``` - -Note: This package requires Python 3.8 or later. - -## Usage +```` -Here's a basic example of how to use `starfinder`: +### Basic Usage ```python from starfinder import StarCatalogArgs, process_star_catalog_py -# Create arguments for star catalog processing args = StarCatalogArgs( - file="path/to/your/tycho2_catalog.dat", - display_count=10, - min_ra=0.0, - max_ra=360.0, - min_dec=-90.0, - max_dec=90.0, + source="data/tycho2/catalog.dat", + center_ra=180.0, + center_dec=0.0, + fov_w=60.0, + fov_h=45.0, + roll=0.0, max_magnitude=6.0, + lambda_nm=540.0, + pixel_size_m=3e-6, width=800, height=600, output="star_map.png" ) -# Process the star catalog process_star_catalog_py(args) ``` -This will read the Tycho-2 catalog, filter the stars based on the given parameters, and generate a star map image. - ## API Reference ### `StarCatalogArgs` -This class represents the arguments for star catalog processing. - Parameters: -- `file` (str): Path to the Tycho-2 catalog file -- `display_count` (int): Number of stars to display in the console output (0 for all) -- `min_ra` (float): Minimum Right Ascension in degrees -- `max_ra` (float): Maximum Right Ascension in degrees -- `min_dec` (float): Minimum Declination in degrees -- `max_dec` (float): Maximum Declination in degrees -- `max_magnitude` (float): Maximum visual magnitude (lower is brighter) -- `width` (int): Output image width in pixels -- `height` (int): Output image height in pixels -- `output` (str): Output image file name +- `source` (str): Path to the Tycho-2 catalog file +- `center_ra` (float): Right Ascension of FOV center (degrees) +- `center_dec` (float): Declination of FOV center (degrees) +- `fov_w` (float): FOV width (degrees) +- `fov_h` (float): FOV height (degrees) +- `roll` (float): Camera roll (degrees) +- `max_magnitude` (float): Maximum visual magnitude +- `lambda_nm` (float): Targeted wavelength (nanometers) +- `pixel_size_m` (float): Sensor pixel size (meters) +- `width` (int): Output image width (pixels) +- `height` (int): Output image height (pixels) +- `output` (str): Output image filename ### `process_star_catalog_py(args: StarCatalogArgs) -> None` -This function processes the star catalog based on the provided arguments. +Processes the star catalog based on the provided arguments. -## Example +## Contributing -Here's a more detailed example that demonstrates how to use `starfinder` to create a star map of the brightest stars: +Contributions to `starfinder` are welcome! Please feel free to submit a Pull Request. -```python -from starfinder import StarCatalogArgs, process_star_catalog_py - -# Create arguments for star catalog processing -args = StarCatalogArgs( - file="tycho2_catalog.dat", - display_count=20, # Display info for the 20 brightest stars - min_ra=0.0, - max_ra=360.0, - min_dec=-90.0, - max_dec=90.0, - max_magnitude=3.0, # Only include stars brighter than magnitude 3 - width=1200, - height=800, - output="bright_stars_map.png" -) - -# Process the star catalog -process_star_catalog_py(args) - -print(f"Star map has been generated: {args.output}") -``` +## License -This script will create a star map of the brightest stars (magnitude 3.0 or brighter) across the entire sky, output information about the 20 brightest stars to the console, and save the star map as "bright_stars_map.png". +This project is licensed under the GPLv3 License - see the LICENSE file for details. diff --git a/pyproject.toml b/pyproject.toml index f9f57af..60d3aa3 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "maturin" [project] name = "starfinder" -version = "1.0.0" +version = "1.1.0" description = "Generate images of the sky w/ accurate stars for star sensor simulation" requires-python = ">=3.8" classifiers = [ diff --git a/src/bin/data-transformer.rs b/src/bin/data-transformer.rs deleted file mode 100644 index 4613d48..0000000 --- a/src/bin/data-transformer.rs +++ /dev/null @@ -1,13 +0,0 @@ -use clap::Parser; -use starfield_renderer::parsing_utils::{parse_field, parse_star_record, parse_magnitude}; - -/// CLI Arguments -#[derive(Parser, Debug)] -#[command(author, version, about, long_about = None)] -pub struct Args { - -} - -fn main() -> Result<(), Box> { - Ok(()) -} diff --git a/src/coords.rs b/src/coords.rs deleted file mode 100644 index ec13572..0000000 --- a/src/coords.rs +++ /dev/null @@ -1,93 +0,0 @@ -use crate::fov::GRID_RESOLUTION; -use serde::{Deserialize, Serialize}; -use std::f64::consts::PI; -use std::hash::{Hash, Hasher}; - -#[derive(Debug, Deserialize, Serialize, Clone, Copy)] -pub struct StandardCoords { - pub x: f64, - pub y: f64, -} - -#[derive(Debug, Deserialize, Serialize, Clone, Copy)] -pub struct CartesianCoords { - pub x: f64, - pub y: f64, - pub z: f64, -} - -impl CartesianCoords { - pub fn to_equatorial(&self) -> EquatorialCoords { - let ra: f64; - - if self.y < 0.0 { - ra = (2.0 * PI) - self.x.acos(); - } else { - ra = self.x.acos(); - } - - EquatorialCoords { - ra, - dec: self.z.asin(), - } - } -} - - -#[derive(Debug, Deserialize, Serialize, Clone, Copy)] -pub struct EquatorialCoords { - pub ra: f64, - pub dec: f64, -} - -impl EquatorialCoords { - /// Calculate a point's standard coordinates on the plane tangent to the celestial sphere, whose - /// center point sits tangent to the sphere where the camera's central (z) axis meets it - pub fn to_standard(&self, center: EquatorialCoords) -> StandardCoords { - // Right ascension and declination of current object, in radians - let ra = self.ra; - let dec = self.dec; - // Right ascension and declination of center point of tangent plane, in radians - let cra = center.ra; - let cdec = center.dec; - - StandardCoords { - x: (dec.cos() * (ra - cra).sin()) - / ((cdec.cos() * dec.cos() * (ra - cra).cos()) + (dec.sin() * cdec.sin())), - y: ((cdec.sin() * dec.cos() * (ra - cra).cos()) - (cdec.cos() * dec.sin())) - / ((cdec.cos() * dec.cos() * (ra - cra).cos()) + (dec.sin() * cdec.sin())), - } - } - - pub fn to_cartesian(&self) -> CartesianCoords { - CartesianCoords { - x: self.ra.cos(), - y: self.ra.sin(), - z: self.dec.sin(), - } - } - - pub fn to_grid(&self) -> EquatorialCoords { - EquatorialCoords { - ra: ((self.ra / 2.0 * PI) * (1.0 - (2.0 * self.dec / PI).abs()) * GRID_RESOLUTION).round(), - dec: ((2.0 * self.dec / PI) * GRID_RESOLUTION).round(), - } - } -} - -impl PartialEq for EquatorialCoords { - fn eq(&self, other: &Self) -> bool { - self.ra == other.ra && self.dec == other.dec - } -} - -impl Eq for EquatorialCoords { -} - -impl Hash for EquatorialCoords { - fn hash(&self, state: &mut H) { - (self.ra as i32).hash(state); - (self.dec as i32).hash(state); - } -} - diff --git a/src/fov.rs b/src/fov.rs index f05337e..57cdd1c 100644 --- a/src/fov.rs +++ b/src/fov.rs @@ -1,8 +1,9 @@ -use crate::coords::{CartesianCoords, EquatorialCoords}; use nalgebra::{SMatrix, Vector3}; use std::collections::HashSet; use std::f64::consts::PI; +use crate::types::{CartesianCoords, EquatorialCoords}; + pub const GRID_RESOLUTION: f64 = 360.0; pub fn get_fov( @@ -29,14 +30,17 @@ pub fn get_fov( }; let fov_steps_w = ((fov_w / step_size).ceil() + 1.0) as i32; let fov_steps_h = ((fov_h / step_size).ceil() + 1.0) as i32; - let mut scatter_shot : Vec = Vec::new(); + let mut scatter_shot: Vec = Vec::new(); for y in 0..fov_steps_h { for x in 0..fov_steps_w { - scatter_shot.push(EquatorialCoords { - ra: bottom_left.ra + (x as f64 * step_size), - dec: bottom_left.dec + (y as f64 * step_size), - }.to_cartesian()); + scatter_shot.push( + EquatorialCoords { + ra: bottom_left.ra + (x as f64 * step_size), + dec: bottom_left.dec + (y as f64 * step_size), + } + .to_cartesian(), + ); } } @@ -73,7 +77,8 @@ pub fn get_fov( // Row 3 y_roll_axis.x * y_roll_axis.z * (1.0 - dec_dif.cos()) - (y_roll_axis.y * dec_dif.sin()), y_roll_axis.y * y_roll_axis.z * (1.0 - dec_dif.cos()) + (y_roll_axis.x * dec_dif.sin()), - y_roll_axis.z.powi(2) * (1.0 - dec_dif.cos()) + dec_dif.cos(),); + y_roll_axis.z.powi(2) * (1.0 - dec_dif.cos()) + dec_dif.cos(), + ); let z_roll = SMatrix::::new( // Row 1 c_cartesian.x.powi(2) * (1.0 - roll.cos()) + roll.cos(), @@ -95,12 +100,14 @@ pub fn get_fov( let vec: Vector3 = Vector3::new(p.x, p.y, p.z); let transformed = transform * vec; let grid_coord = CartesianCoords { - x: transformed[(0,0)], - y: transformed[(1,0)], - z: transformed[(2,0)], - }.to_equatorial().to_grid(); + x: transformed[(0, 0)], + y: transformed[(1, 0)], + z: transformed[(2, 0)], + } + .to_equatorial() + .to_grid(); final_grid.insert(grid_coord); - }; + } final_grid } diff --git a/src/lib.rs b/src/lib.rs index d2b9b23..2fa614e 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,31 +1,38 @@ -use clap::Parser; -use pyo3::prelude::*; - -pub mod coords; pub mod fov; pub mod parsing_utils; pub mod rendering; -pub mod star; -pub mod star; +pub mod types; + +use crate::parsing_utils::read_stars; +use crate::rendering::render_stars; +use crate::types::EquatorialCoords; + +use clap::Parser; +use pyo3::prelude::*; +use std::time::Instant; #[pyclass] #[derive(Parser, Debug, Clone)] pub struct StarCatalogArgs { #[pyo3(get, set)] - pub file: String, + pub source: String, #[pyo3(get, set)] - pub display_count: usize, + pub center_ra: f64, #[pyo3(get, set)] - pub min_ra: f64, + pub center_dec: f64, #[pyo3(get, set)] - pub max_ra: f64, + pub fov_w: f64, #[pyo3(get, set)] - pub min_dec: f64, + pub fov_h: f64, #[pyo3(get, set)] - pub max_dec: f64, + pub roll: f64, #[pyo3(get, set)] pub max_magnitude: f64, #[pyo3(get, set)] + pub lambda_nm: f64, + #[pyo3(get, set)] + pub pixel_size_m: f64, + #[pyo3(get, set)] pub width: u32, #[pyo3(get, set)] pub height: u32, @@ -37,25 +44,29 @@ pub struct StarCatalogArgs { impl StarCatalogArgs { #[new] fn new( - file: String, - display_count: usize, - min_ra: f64, - max_ra: f64, - min_dec: f64, - max_dec: f64, + source: String, + center_ra: f64, + center_dec: f64, + fov_w: f64, + fov_h: f64, + roll: f64, max_magnitude: f64, + lambda_nm: f64, + pixel_size_m: f64, width: u32, height: u32, output: String, ) -> Self { Self { - file, - display_count, - min_ra, - max_ra, - min_dec, - max_dec, + source, + center_ra, + center_dec, + fov_w, + fov_h, + roll, max_magnitude, + lambda_nm, + pixel_size_m, width, height, output, @@ -63,9 +74,56 @@ impl StarCatalogArgs { } } +pub fn process_star_catalog(args: &StarCatalogArgs) -> Result<(), Box> { + let run_start = Instant::now(); + let center_ra = args.center_ra.to_radians(); + let center_dec = args.center_dec.to_radians(); + let roll = args.roll.to_radians(); + let fov_w = args.fov_w.to_radians(); + let fov_h = args.fov_h.to_radians(); + + // 1) Rotate FOV by specified roll + let get_fov_start = Instant::now(); + let center = EquatorialCoords { + ra: center_ra, + dec: center_dec, + }; + let rolled_fov = fov::get_fov(center, fov_w, fov_h, roll); + println!("Total FOV retrieval time: {:?}", get_fov_start.elapsed()); + + // 2) Read stars and filter against rolled_fov to create subset of stars in view of the image + let read_stars_start = Instant::now(); + let stars_in_fov = read_stars(&args.source, rolled_fov, args.max_magnitude)?; + println!( + "Total time to read and parse stars: {:?}", + read_stars_start.elapsed() + ); + + // 3) Render stars in FOV + let render_stars_start = Instant::now(); + let img = render_stars( + stars_in_fov, + args.width, + args.height, + center, + fov_w, + fov_h, + roll, + ); + img.save(&args.output)?; + println!( + "Total parse and write stars: {:?}", + render_stars_start.elapsed() + ); + + println!("Total run time elapsed: {:?}", run_start.elapsed()); + + Ok(()) +} + #[pyfunction] fn process_star_catalog_py(args: StarCatalogArgs) -> PyResult<()> { - process_star_catalog(args) + process_star_catalog(&args) .map_err(|e| PyErr::new::(e.to_string())) } diff --git a/src/bin/main.rs b/src/main.rs similarity index 88% rename from src/bin/main.rs rename to src/main.rs index dc90d00..41a548e 100644 --- a/src/bin/main.rs +++ b/src/main.rs @@ -1,11 +1,11 @@ use clap::Parser; -use starfinder::coords::{EquatorialCoords}; -use starfinder::fov::{get_fov}; -use starfinder::parsing_utils::{read_stars}; -use starfinder::rendering::{render_stars}; use std::path::PathBuf; use std::time::Instant; +use starfinder::fov::get_fov; +use starfinder::parsing_utils::read_stars; +use starfinder::rendering::render_stars; +use starfinder::types::EquatorialCoords; /// CLI Arguments #[derive(Parser, Debug)] @@ -108,13 +108,27 @@ fn main() -> Result<(), Box> { // 2) Read stars and filter against rolled_fov to create subset of stars in view of the image let read_stars_start = Instant::now(); let stars_in_fov = read_stars(args.source, rolled_fov, args.max_magnitude)?; - println!("Total time to read and parse stars: {:?}", read_stars_start.elapsed()); + println!( + "Total time to read and parse stars: {:?}", + read_stars_start.elapsed() + ); // 4) Render stars in FOV let render_stars_start = Instant::now(); - let img = render_stars(stars_in_fov, args.width, args.height, center, fov_w, fov_h, roll); + let img = render_stars( + stars_in_fov, + args.width, + args.height, + center, + fov_w, + fov_h, + roll, + ); img.save(&args.output)?; - println!("Total parse and write stars: {:?}", render_stars_start.elapsed()); + println!( + "Total parse and write stars: {:?}", + render_stars_start.elapsed() + ); println!("Total run time elapsed: {:?}", run_start.elapsed()); diff --git a/src/parsing_utils.rs b/src/parsing_utils.rs index fd926db..c41231b 100644 --- a/src/parsing_utils.rs +++ b/src/parsing_utils.rs @@ -1,11 +1,10 @@ use csv::ReaderBuilder; +use std::collections::HashSet; use std::fs::File; use std::io; -use std::collections::HashSet; use thiserror::Error; -use crate::coords::EquatorialCoords; -use crate::star::Star; +use crate::types::{EquatorialCoords, Star}; /// Errors that can occur during star catalog reading. #[derive(Error, Debug)] diff --git a/src/rendering.rs b/src/rendering.rs index 60b9c70..048909b 100644 --- a/src/rendering.rs +++ b/src/rendering.rs @@ -1,9 +1,7 @@ -use crate::coords::EquatorialCoords; -use crate::star::Star; use image::{ImageBuffer, Rgb}; use nalgebra::SMatrix; -// use spec_math::cephes64::j1; -// use std::f64::consts::PI; + +use crate::types::{EquatorialCoords, Star}; pub fn render_stars( stars: Vec, @@ -23,8 +21,10 @@ pub fn render_stars( .map(|s| s.mag) .fold(f64::NEG_INFINITY, f64::max); let z_roll_mat = SMatrix::::new( - fov_roll.cos(), -fov_roll.sin(), - fov_roll.sin(), fov_roll.cos(), + fov_roll.cos(), + -fov_roll.sin(), + fov_roll.sin(), + fov_roll.cos(), ); let pixel_ratio_w = width as f64 / fov_w; let pixel_ratio_h = height as f64 / fov_h; diff --git a/src/star.rs b/src/star.rs deleted file mode 100644 index 827c9e5..0000000 --- a/src/star.rs +++ /dev/null @@ -1,9 +0,0 @@ -use serde::{Deserialize, Serialize}; -use crate::coords::{EquatorialCoords}; - -/// Represents a star with its right ascension, declination, and magnitude. -#[derive(Debug, Deserialize, Serialize, Clone)] -pub struct Star { - pub coords: EquatorialCoords, - pub mag: f64, -} diff --git a/src/types/star.rs b/src/types/star.rs index d831de9..f99c3b6 100644 --- a/src/types/star.rs +++ b/src/types/star.rs @@ -1,6 +1,6 @@ use serde::{Deserialize, Serialize}; -use crate::coords::EquatorialCoords; +use crate::types::EquatorialCoords; /// Represents a star with its right ascension, declination, and magnitude. #[derive(Debug, Deserialize, Serialize, Clone)]