From 428f2a114026e5fc6317cd8edea17f327681eb55 Mon Sep 17 00:00:00 2001 From: dsutanto Date: Wed, 29 Jul 2026 16:12:16 +0700 Subject: [PATCH] Reset Mechanism --- .oc/session.json | 3236 ++++++++++++++++++++++++++++++++++++++- build/bytetrack-counter | Bin 3590168 -> 3591376 bytes config.env.example | 7 +- src/config.cpp | 5 +- src/config.hpp | 3 +- src/main.cpp | 50 +- src/video_writer.cpp | 66 +- src/video_writer.hpp | 5 +- 8 files changed, 3330 insertions(+), 42 deletions(-) diff --git a/.oc/session.json b/.oc/session.json index bdbe5f7..e049c63 100644 --- a/.oc/session.json +++ b/.oc/session.json @@ -17,19 +17,19 @@ "deletions": 0, "files": 0 }, - "cost": 0.19156660500000003, + "cost": 0.21404607100000003, "tokens": { - "input": 224907, - "output": 29859, - "reasoning": 28239, + "input": 229295, + "output": 36279, + "reasoning": 29904, "cache": { - "read": 11913600, + "read": 15647872, "write": 0 } }, "time": { "created": 1783419130384, - "updated": 1785286620360 + "updated": 1785316263302 } }, "messages": [ @@ -18498,6 +18498,3230 @@ "messageID": "msg_fab5fdf60001j4F7i0qQGNP8R3" } ] + }, + { + "info": { + "role": "user", + "time": { + "created": 1785296489437 + }, + "agent": "build", + "model": { + "providerID": "deepseek", + "modelID": "deepseek-v4-pro" + }, + "summary": { + "diffs": [ + { + "file": "config.env.example", + "patch": "Index: config.env.example\n===================================================================\n--- config.env.example\t\n+++ config.env.example\t\n@@ -1,166 +1,168 @@\n # =============================================================================\n # Edge RK3588 production counter + dashboard\n # Shared config for: counter_live_rknn_bytetrack.py + counter_dashboard.py\n # Copy to .env on device: cp config.env.example .env && nano .env\n # =============================================================================\n \n # --- Core paths ---\n # Root output directory (logs, DB, video, CSV)\n OUTPUT_DIR=/opt/bytetrack-counter\n # SQLite database path for batch entries & crossing logs\n DB_PATH=/opt/bytetrack-counter/bytetrack_counter.db\n # JSON file persisting the current active batch state\n STATE_FILE=/tmp/bytetrack_current_batch.json\n \n # --- Input source ---\n # RTSP / HTTP live stream, or a local video file path\n SOURCE=rtsp://user:pass@192.168.0.100:554/stream1\n # FFmpeg capture options passed to cv2.VideoCapture (RTSP low-latency flags)\n OPENCV_FFMPEG_CAPTURE_OPTIONS=rtsp_transport;tcp|fflags;nobuffer|flags;low_delay\n \n # --- RKNN model ---\n # Path to exported .rknn model (YOLO format, e.g. yolo11n.rknn)\n MODEL_PATH=/opt/models/yolo9t.rknn\n # Input image size for the model (square, e.g. 320 → 320×320)\n IMGSZ=320\n # Use FP16 inference on NPU (true/false); currently unused in ByteTrack variant\n HALF=false\n # NPU core mask: 1=core0, 2=core1, 3=core0+core1, 7=all three\n CORE_MASK=7\n # Compute device index (reserved; not used at runtime)\n DEVICE=0\n \n # --- YOLO decoder ---\n # Number of object classes the model outputs (e.g. 2 = ayam + talenan)\n NUM_CLASSES=2\n # Apply sigmoid to raw class scores (true/false); set true if model head uses BCE logits\n SCORE_SIGMOID=false\n \n # --- Detection ---\n # Confidence threshold – detections below this are discarded before NMS\n CONF=0.3\n \n # --- ByteTrack tracking ---\n # General for ayam, index 0\n # Detections with score ≥ this get priority matching in the first association stage\n TRACK_HIGH_THRESH_0=0.5\n # Detections with score between this and TRACK_HIGH_THRESH are matched in the second stage\n TRACK_LOW_THRESH_0=0.1\n # IoU threshold for the first-stage association (0–1). Higher = stricter overlap required\n TRACK_MATCH_THRESH_0=0.8\n # Frames a track survives without a match before being permanently removed\n TRACK_BUFFER_0=30\n # Minimum consecutive (or total) hits needed before a track is considered confirmed\n TRACK_MIN_HITS_0=3\n \n # For talenan, index 1\n # Detections with score ≥ this get priority matching in the first association stage\n TRACK_HIGH_THRESH_1=0.5\n # Detections with score between this and TRACK_HIGH_THRESH are matched in the second stage\n TRACK_LOW_THRESH_1=0.1\n # IoU threshold for the first-stage association (0–1). Higher = stricter overlap required\n TRACK_MATCH_THRESH_1=0.6\n # Frames a track survives without a match before being permanently removed\n TRACK_BUFFER_1=30\n # Minimum consecutive (or total) hits needed before a track is considered confirmed\n TRACK_MIN_HITS_1=3\n \n # --- Display ---\n # Site name shown on the dashboard header (top-right)\n SITE_NAME=ZenAi\n \n # --- Object class names ---\n # Camera / location identifier shown in HUD and stored in DB\n CAMERA_NAME=ZenAi\n # Label used for batch grouping in the database\n OBJECT_LABEL=ayam-potong\n # Class name for the counted object (must match NUM_CLASSES order, index 0)\n CLASS_AYAM=ayam\n # Class name for the batch-closing trigger object (must match NUM_CLASSES order, index 1)\n CLASS_TALENAN=talenan\n \n # --- Line crossing ---\n # Direction for counting: rtl (right-to-left, default) | ltr (left-to-right) | both\n CROSS_DIRECTION=rtl\n # Fixed x-coordinate for the counting line (overrides LINE_X_FRAC if set)\n LINE_X=\n # Fraction of frame width where the counting line is drawn (default 0.5 = centre)\n LINE_X_FRAC=0.5\n \n # --- Batch management ---\n # Daily cutoff time (HH:MM) – a new day's batch numbering starts after this time.\n # CUTOFF_TIME is an alias used by the dashboard; DAILY_CUTOFF_TIME takes priority in counter_live_rknn_bytetrack.py.\n DAILY_CUTOFF_TIME=20:00\n CUTOFF_TIME=20:00\n # Reset frame counter and ByteTrack track-ID counter back to 0 when the daily cutoff is reached (true/false, default: true)\n RESET_COUNTERS_AT_CUTOFF=true\n # Seconds of inactivity after which the current batch is auto-closed\n BATCH_TIMEOUT_SECONDS=300\n # Seconds a newly-opened batch ignores the talenan label before accepting a close trigger\n IGNORE_BATCH_LABEL_TIMEOUT_SECONDS=30\n # Minimum number of objects required for a batch to be saved as valid\n MIN_OBJECT_PER_BATCH=60\n # Minimum duration in seconds a batch must be open to be saved as valid\n MIN_DURATION_PER_BATCH=60\n \n # --- CSV export ---\n # Write per-crossing events to a CSV file (true/false)\n EXPORT_CSV=true\n # Path where the crossing CSV is written\n CROSS_CSV=/opt/batch-counter/batch_crossings.csv\n \n # --- Rate / performance ---\n # Enable motion detection pre-filter: skip inference on frames with no movement\n # (true/false, default: false). When enabled, frames below MOTION_THRESHOLD are\n # skipped, saving NPU/CPU load.\n MOTION_DETECTION_ENABLED=false\n # Mean absolute pixel difference threshold (0–255) to consider a frame as having\n # motion. Lower = more sensitive. Default 5.0.\n MOTION_THRESHOLD=5.0\n # Sliding window in seconds for computing the crossing rate (objects/minute)\n RATE_WINDOW_SEC=60\n # Number of frames to discard at startup to let the stream buffer stabilise\n WARMUP_FRAMES=30\n # Delay in seconds between stream reconnection attempts\n RECONNECT_DELAY_SEC=3\n # Maximum reconnection attempts (0 = infinite)\n MAX_RECONNECT_ATTEMPTS=0\n # Print status log every N processed frames\n FLUSH_EVERY_N_FRAMES=100\n # Seconds after which a tracked but unseen object is pruned from the active set\n TRACKED_PRUNE_SEC=300\n \n # --- Video recording ---\n # Per-batch video recording — raw frames (no overlay) to shared memory, moved to\n # OUTPUT_DIR on batch close via non-blocking background process (true/false)\n RECORD_VIDEO=false\n # Output video FPS (fallback if source FPS is unknown or ≤ 1)\n OUTPUT_FPS=15\n # Delay in seconds after batch starts before recording begins (every batch)\n RECORD_DELAY_SECONDS=10\n # Extra seconds to keep recording after batch end signal before stopping\n RECORD_END_DELAY=1\n+# Days to keep recorded video folders (folders older than this deleted on startup)\n+RECORD_RETENTION_DAYS=3\n # Shared memory directory for recording (fast write, moved to OUTPUT_DIR on close)\n RECORD_SHM_DIR=/dev/shm/bytetrack-counter\n \n # --- Live stream snapshot ---\n # Periodically write the latest annotated frame as JPEG for an external web server\n LIVE_STREAM_ENABLED=false\n # Path to the shared-memory snapshot file (served by nginx / lighttpd)\n LIVE_STREAM_FRAME_PATH=/dev/shm/byetrack-counter/live_frame.jpg\n # JPEG quality (1–100)\n LIVE_STREAM_QUALITY=75\n # Write the snapshot every N frames (lower = more frequent updates)\n LIVE_STREAM_EVERY_N=2\n \n # --- Dashboard (counter_dashboard.py) ---\n # Flask secret key for session/cookie signing — change in production!\n SECRET_KEY=change-me-in-production\n # Bind address for the Flask web server\n DASHBOARD_HOST=0.0.0.0\n # Listen port for the dashboard web UI\n DASHBOARD_PORT=5000\n # Enable Flask debug mode (true/false) — auto-reloads on code changes; disable in production\n FLASK_DEBUG=false\n # Fallback name for the active-batch JSON state file used by the dashboard\n CURRENT_BATCH_PATH=/tmp/bytetrack_current_batch.json\n", + "additions": 2, + "deletions": 0, + "status": "modified" + }, + { + "file": "src/config.cpp", + "patch": "Index: src/config.cpp\n===================================================================\n--- src/config.cpp\t\n+++ src/config.cpp\t\n@@ -1,158 +1,160 @@\n #include \"config.hpp\"\n #include \n #include \n #include \n #include \n \n AppConfig g_config;\n \n static std::string trim(const std::string& s) {\n auto start = s.find_first_not_of(\" \\t\\r\\n\");\n if (start == std::string::npos) return {};\n auto end = s.find_last_not_of(\" \\t\\r\\n\");\n return s.substr(start, end - start + 1);\n }\n \n static std::string get_env(const std::string& key, const std::string& def = \"\") {\n const char* val = std::getenv(key.c_str());\n return val ? std::string(val) : def;\n }\n \n void AppConfig::load_from_env(const char* env_path) {\n std::string path = \".env\";\n if (env_path) path = env_path;\n \n // also check env path\n const char* env_file = std::getenv(\"ENV_FILE\");\n if (env_file) path = env_file;\n \n std::ifstream file(path);\n if (file.is_open()) {\n std::string line;\n while (std::getline(file, line)) {\n line = trim(line);\n if (line.empty() || line[0] == '#') continue;\n auto eq = line.find('=');\n if (eq == std::string::npos) continue;\n std::string key = trim(line.substr(0, eq));\n std::string val = trim(line.substr(eq + 1));\n // strip quotes\n if (val.size() >= 2 && val.front() == '\"' && val.back() == '\"')\n val = val.substr(1, val.size() - 2);\n setenv(key.c_str(), val.c_str(), 1);\n }\n }\n \n output_dir = get_env(\"OUTPUT_DIR\", output_dir);\n db_path = get_env(\"DB_PATH\", output_dir + \"/bytetrack_counter.db\");\n state_file = get_env(\"STATE_FILE\", output_dir + \"/current_batch.json\");\n source = get_env(\"SOURCE\", source);\n model_path = get_env(\"MODEL_PATH\", model_path);\n camera_name = get_env(\"CAMERA_NAME\", camera_name);\n object_label = get_env(\"OBJECT_LABEL\", object_label);\n class_ayam = get_env(\"CLASS_AYAM\", class_ayam);\n class_talenan = get_env(\"CLASS_TALENAN\", class_talenan);\n \n auto lx = get_env(\"LINE_X\");\n if (!lx.empty()) line_x = std::stoi(lx);\n auto lxf = get_env(\"LINE_X_FRAC\");\n if (!lxf.empty()) line_x_frac = std::stof(lxf);\n cross_direction = get_env(\"CROSS_DIRECTION\", cross_direction);\n \n auto imgsz_s = get_env(\"IMGSZ\");\n if (!imgsz_s.empty()) imgsz = std::stoi(imgsz_s);\n auto half_s = get_env(\"HALF\");\n half = (half_s == \"true\");\n auto conf_s = get_env(\"CONF\");\n if (!conf_s.empty()) conf = std::stof(conf_s);\n auto dev_s = get_env(\"DEVICE\");\n if (!dev_s.empty()) device = std::stoi(dev_s);\n auto cm_s = get_env(\"CORE_MASK\");\n if (!cm_s.empty()) core_mask = std::stoi(cm_s);\n auto nc_s = get_env(\"NUM_CLASSES\");\n if (!nc_s.empty()) num_classes = std::stoi(nc_s);\n auto ss_s = get_env(\"SCORE_SIGMOID\");\n score_sigmoid = (ss_s == \"true\");\n auto ac_s = get_env(\"AYAM_CLASS_ID\");\n if (!ac_s.empty()) ayam_class_id = std::stoi(ac_s);\n auto tc_s = get_env(\"TALENAN_CLASS_ID\");\n if (!tc_s.empty()) talenan_class_id = std::stoi(tc_s);\n \n auto th0_s = get_env(\"TRACK_HIGH_THRESH_0\");\n if (!th0_s.empty()) track_high_thresh_0 = std::stof(th0_s);\n auto tl0_s = get_env(\"TRACK_LOW_THRESH_0\");\n if (!tl0_s.empty()) track_low_thresh_0 = std::stof(tl0_s);\n auto tm0_s = get_env(\"TRACK_MATCH_THRESH_0\");\n if (!tm0_s.empty()) track_match_thresh_0 = std::stof(tm0_s);\n auto tb0_s = get_env(\"TRACK_BUFFER_0\");\n if (!tb0_s.empty()) track_buffer_0 = std::stoi(tb0_s);\n auto tmh0_s = get_env(\"TRACK_MIN_HITS_0\");\n if (!tmh0_s.empty()) track_min_hits_0 = std::stoi(tmh0_s);\n \n auto th1_s = get_env(\"TRACK_HIGH_THRESH_1\");\n if (!th1_s.empty()) track_high_thresh_1 = std::stof(th1_s);\n auto tl1_s = get_env(\"TRACK_LOW_THRESH_1\");\n if (!tl1_s.empty()) track_low_thresh_1 = std::stof(tl1_s);\n auto tm1_s = get_env(\"TRACK_MATCH_THRESH_1\");\n if (!tm1_s.empty()) track_match_thresh_1 = std::stof(tm1_s);\n auto tb1_s = get_env(\"TRACK_BUFFER_1\");\n if (!tb1_s.empty()) track_buffer_1 = std::stoi(tb1_s);\n auto tmh1_s = get_env(\"TRACK_MIN_HITS_1\");\n if (!tmh1_s.empty()) track_min_hits_1 = std::stoi(tmh1_s);\n \n auto rw_s = get_env(\"RATE_WINDOW_SEC\");\n if (!rw_s.empty()) rate_window_sec = std::stoi(rw_s);\n \n daily_cutoff_time = get_env(\"DAILY_CUTOFF_TIME\", daily_cutoff_time);\n auto rcc_s = get_env(\"RESET_COUNTERS_AT_CUTOFF\");\n if (!rcc_s.empty()) reset_counters_at_cutoff = (rcc_s == \"true\");\n auto bto_s = get_env(\"BATCH_TIMEOUT_SECONDS\");\n if (!bto_s.empty()) batch_timeout_seconds = std::stof(bto_s);\n auto ibl_s = get_env(\"IGNORE_BATCH_LABEL_TIMEOUT_SECONDS\");\n if (!ibl_s.empty()) ignore_batch_label_timeout = std::stof(ibl_s);\n auto mob_s = get_env(\"MIN_OBJECT_PER_BATCH\");\n if (!mob_s.empty()) min_object_per_batch = std::stoi(mob_s);\n auto mdb_s = get_env(\"MIN_DURATION_PER_BATCH\");\n if (!mdb_s.empty()) min_duration_per_batch = std::stoi(mdb_s);\n \n auto ecsv = get_env(\"EXPORT_CSV\");\n if (!ecsv.empty()) export_csv = (ecsv == \"true\");\n cross_csv = get_env(\"CROSS_CSV\", output_dir + \"/batch_crossings.csv\");\n \n auto mde_s = get_env(\"MOTION_DETECTION_ENABLED\");\n motion_detection_enabled = (mde_s == \"true\");\n auto mt_s = get_env(\"MOTION_THRESHOLD\");\n if (!mt_s.empty()) motion_threshold = std::stof(mt_s);\n \n auto wf_s = get_env(\"WARMUP_FRAMES\");\n if (!wf_s.empty()) warmup_frames = std::stoi(wf_s);\n auto rd_s = get_env(\"RECONNECT_DELAY_SEC\");\n if (!rd_s.empty()) reconnect_delay_sec = std::stoi(rd_s);\n auto mra_s = get_env(\"MAX_RECONNECT_ATTEMPTS\");\n if (!mra_s.empty()) max_reconnect_attempts = std::stoi(mra_s);\n auto fl_s = get_env(\"FLUSH_EVERY_N_FRAMES\");\n if (!fl_s.empty()) flush_every_n_frames = std::stoi(fl_s);\n auto tp_s = get_env(\"TRACKED_PRUNE_SEC\");\n if (!tp_s.empty()) tracked_prune_sec = std::stoi(tp_s);\n auto rv_s = get_env(\"RECORD_VIDEO\");\n record_video = (rv_s == \"true\");\n auto vs_s = get_env(\"VIDEO_SEGMENT_SEC\");\n if (!vs_s.empty()) video_segment_sec = std::stoi(vs_s);\n auto ofps_s = get_env(\"OUTPUT_FPS\");\n if (!ofps_s.empty()) output_fps = std::stoi(ofps_s);\n auto rds_s = get_env(\"RECORD_DELAY_SECONDS\");\n if (!rds_s.empty()) record_delay_seconds = std::stof(rds_s);\n auto reds_s = get_env(\"RECORD_END_DELAY\");\n if (!reds_s.empty()) record_end_delay_seconds = std::stof(reds_s);\n+ auto rret_s = get_env(\"RECORD_RETENTION_DAYS\");\n+ if (!rret_s.empty()) record_retention_days = std::stoi(rret_s);\n record_shm_dir = get_env(\"RECORD_SHM_DIR\", record_shm_dir);\n \n auto lse_s = get_env(\"LIVE_STREAM_ENABLED\");\n live_stream_enabled = (lse_s == \"true\");\n live_stream_frame_path = get_env(\"LIVE_STREAM_FRAME_PATH\", live_stream_frame_path);\n auto lsq_s = get_env(\"LIVE_STREAM_QUALITY\");\n if (!lsq_s.empty()) live_stream_quality = std::stoi(lsq_s);\n auto lsn_s = get_env(\"LIVE_STREAM_EVERY_N\");\n if (!lsn_s.empty()) live_stream_every_n = std::stoi(lsn_s);\n \n rtsp_ffmpeg_options = get_env(\"OPENCV_FFMPEG_CAPTURE_OPTIONS\", rtsp_ffmpeg_options);\n }\n", + "additions": 2, + "deletions": 0, + "status": "modified" + }, + { + "file": "src/config.hpp", + "patch": "Index: src/config.hpp\n===================================================================\n--- src/config.hpp\t\n+++ src/config.hpp\t\n@@ -1,84 +1,85 @@\n #pragma once\n #include \n #include \n \n struct AppConfig {\n std::string output_dir = \"/opt/bytetrack-counter-cpp\";\n std::string db_path;\n std::string state_file;\n std::string source = \"rtsp://user:pass@192.168.0.100:554/stream1\";\n std::string model_path = \"/opt/models/yolo.rknn\";\n std::string camera_name = \"CC1\";\n std::string object_label = \"ayam-potong\";\n std::string class_ayam = \"ayam\";\n std::string class_talenan = \"talenan\";\n \n int line_x = -1;\n float line_x_frac = 0.5f;\n std::string cross_direction = \"rtl\";\n \n int imgsz = 320;\n bool half = false;\n float conf = 0.3f;\n int device = 0;\n int core_mask = 1;\n int num_classes = 2;\n bool score_sigmoid = false;\n int ayam_class_id = 0;\n int talenan_class_id = 1;\n \n float track_high_thresh_0 = 0.5f;\n float track_low_thresh_0 = 0.1f;\n float track_match_thresh_0 = 0.8f;\n int track_buffer_0 = 30;\n int track_min_hits_0 = 3;\n \n float track_high_thresh_1 = 0.5f;\n float track_low_thresh_1 = 0.1f;\n float track_match_thresh_1 = 0.6f;\n int track_buffer_1 = 30;\n int track_min_hits_1 = 3;\n \n int rate_window_sec = 60;\n \n std::string daily_cutoff_time = \"20:00\";\n bool reset_counters_at_cutoff = true;\n float batch_timeout_seconds = 300.0f;\n float ignore_batch_label_timeout = 30.0f;\n int min_object_per_batch = 60;\n int min_duration_per_batch = 60;\n \n bool export_csv = true;\n std::string cross_csv;\n \n bool motion_detection_enabled = false;\n float motion_threshold = 5.0f;\n int warmup_frames = 30;\n int reconnect_delay_sec = 3;\n int max_reconnect_attempts = 0;\n int flush_every_n_frames = 100;\n int tracked_prune_sec = 300;\n bool record_video = false;\n int video_segment_sec = 3600;\n int output_fps = 15;\n float record_delay_seconds = 10.0f;\n float record_end_delay_seconds = 1.0f;\n+ int record_retention_days = 3;\n std::string record_shm_dir = \"/dev/shm/bytetrack-counter\";\n \n bool live_stream_enabled = false;\n std::string live_stream_frame_path = \"/dev/shm/bytetrack-counter/live_frame.jpg\";\n int live_stream_quality = 75;\n int live_stream_every_n = 2;\n \n std::string rtsp_ffmpeg_options = \"rtsp_transport;tcp|fflags;nobuffer|flags;low_delay\";\n \n int cross_flash_frames = 12;\n int popup_lifetime = 20;\n int line_pulse_frames = 12;\n int count_pulse_frames = 15;\n int batch_pulse_frames = 20;\n \n void load_from_env(const char* env_path = nullptr);\n };\n \n extern AppConfig g_config;\n", + "additions": 1, + "deletions": 0, + "status": "modified" + }, + { + "file": "src/main.cpp", + "patch": "Index: src/main.cpp\n===================================================================\n--- src/main.cpp\t\n+++ src/main.cpp\t\n@@ -1,568 +1,569 @@\n #include \"config.hpp\"\n #include \"bytetrack.hpp\"\n #include \"batch_store.hpp\"\n #include \"csv_logger.hpp\"\n #include \"rknn_yolo.hpp\"\n #include \"drawing.hpp\"\n #include \"nms.hpp\"\n #include \"version.hpp\"\n #include \"video_writer.hpp\"\n \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n \n static std::atomic shutdown_requested{false};\n \n static void signal_handler(int) {\n shutdown_requested = true;\n std::cout << \"\\nShutdown requested — finishing current frame...\" << std::endl;\n }\n \n static std::string now_str() {\n auto now = std::chrono::system_clock::now();\n auto t = std::chrono::system_clock::to_time_t(now);\n std::ostringstream ss;\n ss << std::put_time(std::localtime(&t), \"%Y-%m-%d %H:%M:%S\");\n return ss.str();\n }\n \n static cv::VideoCapture open_capture(const std::string& source) {\n bool is_live = source.substr(0, 7) == \"rtsp://\" || source.substr(0, 7) == \"http://\";\n if (is_live) {\n setenv(\"OPENCV_FFMPEG_CAPTURE_OPTIONS\", g_config.rtsp_ffmpeg_options.c_str(), 1);\n }\n cv::VideoCapture cap(source, cv::CAP_FFMPEG);\n cap.set(cv::CAP_PROP_BUFFERSIZE, 1);\n return cap;\n }\n \n static void warmup_stream(cv::VideoCapture& cap, int n) {\n std::cout << \"Warming up stream...\" << std::endl;\n cv::Mat frame;\n for (int i = 0; i < n; ++i) cap.read(frame);\n std::cout << \"Stream ready!\" << std::endl;\n }\n \n static bool connect_stream(cv::VideoCapture& cap, int& w, int& h, double& fps) {\n bool is_live = g_config.source.substr(0, 7) == \"rtsp://\" ||\n g_config.source.substr(0, 7) == \"http://\";\n int attempts = 0;\n while (!shutdown_requested) {\n cap = open_capture(g_config.source);\n if (cap.isOpened()) break;\n attempts++;\n if (g_config.max_reconnect_attempts > 0 && attempts >= g_config.max_reconnect_attempts) {\n std::cerr << \"Cannot open source after \" << attempts\n << \" attempts: \" << g_config.source << std::endl;\n return false;\n }\n std::cout << \"Cannot open source, retry in \" << g_config.reconnect_delay_sec\n << \"s...\" << std::endl;\n std::this_thread::sleep_for(std::chrono::seconds(g_config.reconnect_delay_sec));\n }\n if (shutdown_requested) return false;\n \n if (is_live && g_config.warmup_frames > 0)\n warmup_stream(cap, g_config.warmup_frames);\n \n w = static_cast(cap.get(cv::CAP_PROP_FRAME_WIDTH));\n h = static_cast(cap.get(cv::CAP_PROP_FRAME_HEIGHT));\n fps = cap.get(cv::CAP_PROP_FPS);\n if (fps <= 1) fps = g_config.output_fps;\n return true;\n }\n \n struct TrackedInfo {\n float cx;\n std::chrono::steady_clock::time_point ts;\n };\n \n static void prune_stale_tracks(std::unordered_map& tracked, double prune_sec) {\n auto now = std::chrono::steady_clock::now();\n std::vector stale;\n for (auto& [tid, info] : tracked) {\n auto age = std::chrono::duration_cast(now - info.ts).count();\n if (age > prune_sec) stale.push_back(tid);\n }\n for (int tid : stale) tracked.erase(tid);\n }\n \n int main(int argc, char* argv[]) {\n signal(SIGINT, signal_handler);\n signal(SIGTERM, signal_handler);\n \n if (argc < 2) {\n std::cout << \"ByteTrack Counter (C++)\" << std::endl;\n std::cout << \"Version: \" << version::GIT_COMMIT\n << \" | branch: \" << version::GIT_BRANCH\n << \" | built: \" << version::BUILD_DATE << \" \" << version::BUILD_TIME\n << \" | rknn: \" << (version::BUILD_RKNN ? \"ON\" : \"OFF\");\n if (!version::GIT_TAG.empty())\n std::cout << \" | tag: \" << version::GIT_TAG;\n std::cout << std::endl;\n std::cout << \"Usage: bytetrack-counter \" << std::endl;\n std::cout << \" config.env path to environment configuration file (required)\" << std::endl;\n return 1;\n }\n \n g_config.load_from_env(argv[1]);\n \n std::cout << \"Starting ByteTrack Counter (C++)\" << std::endl;\n std::cout << \"Version: \" << version::GIT_COMMIT\n << \" | branch: \" << version::GIT_BRANCH\n << \" | built: \" << version::BUILD_DATE << \" \" << version::BUILD_TIME\n << \" | rknn: \" << (version::BUILD_RKNN ? \"ON\" : \"OFF\");\n if (!version::GIT_TAG.empty())\n std::cout << \" | tag: \" << version::GIT_TAG;\n std::cout << std::endl;\n std::cout << \"Camera: \" << g_config.camera_name << std::endl;\n std::cout << \"Source: \" << g_config.source << std::endl;\n std::cout << \"Model: \" << g_config.model_path << \" | imgsz=\" << g_config.imgsz\n << \" | core_mask=\" << g_config.core_mask << std::endl;\n std::cout << \"DB: \" << g_config.db_path << std::endl;\n std::cout << \"State: \" << g_config.state_file << std::endl;\n std::cout << \"ByteTrack Index 0: high_thresh=\" << g_config.track_high_thresh_0\n << \" low_thresh=\" << g_config.track_low_thresh_0\n << \" match_thresh=\" << g_config.track_match_thresh_0\n << \" buffer=\" << g_config.track_buffer_0\n << \" min_hits=\" << g_config.track_min_hits_0 << std::endl;\n std::cout << \"ByteTrack Index 1: high_thresh=\" << g_config.track_high_thresh_1\n << \" low_thresh=\" << g_config.track_low_thresh_1\n << \" match_thresh=\" << g_config.track_match_thresh_1\n << \" buffer=\" << g_config.track_buffer_1\n << \" min_hits=\" << g_config.track_min_hits_1 << std::endl;\n \n if (g_config.live_stream_enabled) {\n std::filesystem::path live_p(g_config.live_stream_frame_path);\n if (live_p.has_parent_path())\n std::filesystem::create_directories(live_p.parent_path());\n }\n \n int class_ayam = g_config.ayam_class_id;\n int class_talenan = g_config.talenan_class_id;\n \n auto logger = [](const std::string& msg) {\n std::cout << \"[\" << now_str() << \"] \" << msg << std::endl;\n };\n \n BatchStore store(g_config.db_path, g_config.state_file,\n g_config.camera_name, g_config.object_label,\n g_config.daily_cutoff_time,\n g_config.batch_timeout_seconds,\n g_config.ignore_batch_label_timeout,\n g_config.min_object_per_batch,\n g_config.min_duration_per_batch,\n logger);\n store.start_cutoff_watcher();\n \n std::unique_ptr cross_logger;\n if (g_config.export_csv) {\n cross_logger = std::make_unique(g_config.cross_csv,\n std::vector{\"batch\", \"frame\", \"timestamp\", \"chicken_id\"});\n }\n \n RKNNYOLO model(g_config.model_path, g_config.core_mask,\n g_config.imgsz, g_config.conf, 0.45f,\n g_config.num_classes, 0, g_config.score_sigmoid);\n if (!model.is_loaded()) {\n std::cerr << \"ERROR: Failed to load model: \" << g_config.model_path\n << std::endl;\n return 1;\n }\n \n ByteTracker ayam_tracker(g_config.track_high_thresh_0, g_config.track_low_thresh_0,\n g_config.track_match_thresh_0, g_config.track_buffer_0,\n g_config.track_min_hits_0);\n ByteTracker talenan_tracker(g_config.track_high_thresh_1, g_config.track_low_thresh_1,\n g_config.track_match_thresh_1, g_config.track_buffer_1,\n g_config.track_min_hits_1);\n \n std::unordered_set ayam_line_crossed;\n std::unordered_set talenan_line_crossed;\n \n std::unordered_map ayam_cross_flash;\n std::unordered_map talenan_cross_flash;\n int line_pulse = 0, count_pulse = 0, batch_pulse = 0;\n std::vector popups;\n std::deque crossing_times;\n \n auto session_start = std::chrono::steady_clock::now();\n int frame_idx = 0;\n float inf_ema = 0.0f;\n \n std::string model_name = g_config.model_path;\n auto slash = model_name.find_last_of(\"/\\\\\");\n if (slash != std::string::npos) model_name = model_name.substr(slash + 1);\n \n cv::VideoCapture cap;\n int w, h;\n double fps_prop;\n \n if (!connect_stream(cap, w, h, fps_prop)) {\n store.shutdown();\n return shutdown_requested ? 0 : 1;\n }\n bool is_live = g_config.source.substr(0, 7) == \"rtsp://\" ||\n g_config.source.substr(0, 7) == \"http://\";\n \n int line_x = resolve_line_x(w, g_config.line_x, g_config.line_x_frac);\n \n std::cout << \"RKNN+ByteTrack counter | \" << w << \"x\" << h << \" @ \"\n << fps_prop << \"fps | line x=\" << line_x\n << \" | cross=\" << g_config.cross_direction << std::endl;\n \n std::unique_ptr video_writer;\n if (g_config.record_video) {\n video_writer = std::make_unique(\n g_config.record_shm_dir, g_config.output_dir,\n w, h, static_cast(fps_prop),\n g_config.record_delay_seconds,\n- g_config.record_end_delay_seconds);\n+ g_config.record_end_delay_seconds,\n+ g_config.record_retention_days);\n auto* vw = video_writer.get();\n store.set_batch_closed_callback([vw](int bn) { vw->on_batch_closed(bn); });\n }\n \n int reconnect_count = 0;\n \n std::unordered_map ayam_tracked;\n std::unordered_map talenan_tracked;\n cv::Mat prev_gray;\n \n while (!shutdown_requested) {\n cv::Mat frame;\n cap >> frame;\n if (frame.empty()) {\n if (!is_live) break;\n reconnect_count++;\n std::cout << \"Stream dropped (attempt \" << reconnect_count\n << \"), reconnecting...\" << std::endl;\n cap.release();\n std::this_thread::sleep_for(std::chrono::seconds(g_config.reconnect_delay_sec));\n if (!connect_stream(cap, w, h, fps_prop)) break;\n line_x = resolve_line_x(w, g_config.line_x, g_config.line_x_frac);\n continue;\n }\n \n auto elapsed_sec = std::chrono::duration(\n std::chrono::steady_clock::now() - session_start).count();\n auto mono = std::chrono::steady_clock::now();\n \n if (g_config.reset_counters_at_cutoff && store.check_cutoff_reset()) {\n std::cout << \"[\" << now_str() << \"] Cutoff reset — resetting frame + tracker counters\" << std::endl;\n frame_idx = 0;\n KalmanBoxTracker::count = 0;\n ayam_tracker.reset();\n talenan_tracker.reset();\n ayam_tracked.clear();\n talenan_tracked.clear();\n ayam_line_crossed.clear();\n talenan_line_crossed.clear();\n ayam_cross_flash.clear();\n talenan_cross_flash.clear();\n crossing_times.clear();\n line_pulse = 0;\n count_pulse = 0;\n batch_pulse = 0;\n }\n \n bool ayam_crossed_frame = false, batch_closed_frame = false, batch_started_frame = false;\n \n bool skip_inference = false;\n if (g_config.motion_detection_enabled) {\n cv::Mat gray;\n cv::cvtColor(frame, gray, cv::COLOR_BGR2GRAY);\n if (!prev_gray.empty()) {\n cv::Mat diff;\n cv::absdiff(gray, prev_gray, diff);\n double mean_diff = cv::mean(diff)[0];\n skip_inference = (mean_diff < g_config.motion_threshold);\n }\n prev_gray = gray;\n if (!skip_inference && video_writer) video_writer->note_motion();\n } else {\n if (video_writer) video_writer->note_motion();\n }\n \n std::vector detections;\n float inf_ms = 0.0f;\n if (!skip_inference) {\n auto inf_start = std::chrono::steady_clock::now();\n detections = model(frame);\n inf_ms = std::chrono::duration(\n std::chrono::steady_clock::now() - inf_start).count();\n }\n inf_ema = inf_ema * 0.9f + inf_ms * 0.1f;\n \n if (!detections.empty()) {\n std::vector ayam_boxes, talenan_boxes;\n std::vector ayam_scores, talenan_scores;\n std::vector ayam_cx_list, talenan_cx_list;\n std::vector>> ayam_kpts_list;\n \n for (const auto& det : detections) {\n const auto& bbox = det.bbox;\n float cx = (bbox(0) + bbox(2)) / 2.0f;\n \n if (det.cls == class_talenan) {\n talenan_boxes.push_back(bbox);\n talenan_scores.push_back(det.score);\n talenan_cx_list.push_back(cx);\n } else if (det.cls == class_ayam) {\n ayam_boxes.push_back(bbox);\n ayam_scores.push_back(det.score);\n ayam_cx_list.push_back(cx);\n ayam_kpts_list.push_back(det.keypoints);\n }\n }\n \n int na = static_cast(ayam_boxes.size());\n int nt = static_cast(talenan_boxes.size());\n \n if (na > 0) store.ping_activity();\n \n Eigen::MatrixXf ayam_mat(na, 4), talenan_mat(nt, 4);\n Eigen::VectorXf ayam_scores_vec(na), talenan_scores_vec(nt);\n \n for (int i = 0; i < na; ++i) {\n ayam_mat.row(i) = ayam_boxes[i];\n ayam_scores_vec(i) = ayam_scores[i];\n }\n for (int i = 0; i < nt; ++i) {\n talenan_mat.row(i) = talenan_boxes[i];\n talenan_scores_vec(i) = talenan_scores[i];\n }\n \n // Apply NMS per-class to suppress duplicate boxes\n if (na > 0) {\n if (video_writer) video_writer->note_ayam_detection();\n auto keep = nms(ayam_mat, ayam_scores_vec);\n int nk = static_cast(keep.size());\n Eigen::MatrixXf fm(nk, 4);\n Eigen::VectorXf fs(nk);\n std::vector fb;\n std::vector fcx;\n std::vector>> fkpts;\n for (int ki = 0; ki < nk; ++ki) {\n int idx = keep[ki];\n fm.row(ki) = ayam_mat.row(idx);\n fs(ki) = ayam_scores_vec(idx);\n fb.push_back(ayam_boxes[idx]);\n fcx.push_back(ayam_cx_list[idx]);\n if (idx < (int)ayam_kpts_list.size())\n fkpts.push_back(ayam_kpts_list[idx]);\n }\n na = nk;\n ayam_mat = std::move(fm);\n ayam_scores_vec = std::move(fs);\n ayam_boxes = std::move(fb);\n ayam_cx_list = std::move(fcx);\n ayam_kpts_list = std::move(fkpts);\n }\n if (nt > 0) {\n auto keep = nms(talenan_mat, talenan_scores_vec);\n int nk = static_cast(keep.size());\n Eigen::MatrixXf fm(nk, 4);\n Eigen::VectorXf fs(nk);\n std::vector fb;\n std::vector fcx;\n for (int ki = 0; ki < nk; ++ki) {\n int idx = keep[ki];\n fm.row(ki) = talenan_mat.row(idx);\n fs(ki) = talenan_scores_vec(idx);\n fb.push_back(talenan_boxes[idx]);\n fcx.push_back(talenan_cx_list[idx]);\n }\n nt = nk;\n talenan_mat = std::move(fm);\n talenan_scores_vec = std::move(fs);\n talenan_boxes = std::move(fb);\n talenan_cx_list = std::move(fcx);\n }\n \n TrackResult ayam_tr = ayam_tracker.update(ayam_mat, ayam_scores_vec);\n TrackResult talenan_tr = talenan_tracker.update(talenan_mat, talenan_scores_vec);\n \n // Process talenan crossings\n for (int di = 0; di < nt; ++di) {\n auto it = talenan_tr.det_to_track.find(di);\n if (it == talenan_tr.det_to_track.end()) continue;\n int tid = it->second;\n float cx = talenan_cx_list[di];\n \n auto tit = talenan_tracked.find(tid);\n if (tit != talenan_tracked.end()) {\n float prev_cx = tit->second.cx;\n if (crossed_line(prev_cx, cx, line_x, g_config.cross_direction) &&\n talenan_line_crossed.find(tid) == talenan_line_crossed.end()) {\n talenan_line_crossed.insert(tid);\n if (store.record_talenan_crossing(tid, talenan_scores_vec(di))) {\n batch_closed_frame = true;\n talenan_cross_flash[tid] = g_config.cross_flash_frames;\n popups.push_back({\n static_cast(cx) - 20,\n static_cast((talenan_boxes[di](1) + talenan_boxes[di](3)) / 2),\n frame_idx, \"BATCH CLOSED\"\n });\n }\n }\n }\n talenan_tracked[tid] = {cx, mono};\n }\n \n // Process ayam crossings\n for (int di = 0; di < na; ++di) {\n auto it = ayam_tr.det_to_track.find(di);\n if (it == ayam_tr.det_to_track.end()) continue;\n int tid = it->second;\n float cx = ayam_cx_list[di];\n \n auto tit = ayam_tracked.find(tid);\n if (tit != ayam_tracked.end()) {\n float prev_cx = tit->second.cx;\n if (crossed_line(prev_cx, cx, line_x, g_config.cross_direction) &&\n ayam_line_crossed.find(tid) == ayam_line_crossed.end()) {\n ayam_line_crossed.insert(tid);\n auto [count, started_new] = store.record_ayam_crossing(tid);\n std::cout << \"[\" << now_str() << \"] Batch #\" << store.current_batch_number() << \" | count: \" << count << \" | conf: \" << ayam_scores_vec(di) << std::endl;\n if (cross_logger) {\n std::ostringstream frame_str, tid_str;\n frame_str << frame_idx;\n tid_str << tid;\n cross_logger->write_row({\n std::to_string(store.current_batch_number()),\n frame_str.str(),\n now_str(),\n tid_str.str()\n });\n }\n ayam_crossed_frame = true;\n if (started_new) batch_started_frame = true;\n crossing_times.push_back(mono);\n ayam_cross_flash[tid] = g_config.cross_flash_frames;\n popups.push_back({\n static_cast(cx) - 12,\n static_cast((ayam_boxes[di](1) + ayam_boxes[di](3)) / 2),\n frame_idx, \"+1\"\n });\n }\n }\n ayam_tracked[tid] = {cx, mono};\n }\n \n // Track lost tracks for continuity\n for (auto& [tid, cx] : ayam_tr.lost_map) {\n if (ayam_tracked.find(tid) == ayam_tracked.end())\n ayam_tracked[tid] = {cx, mono};\n }\n \n if (video_writer) video_writer->feed_frame(frame);\n \n // Draw talenan\n for (int di = 0; di < nt; ++di) {\n auto it = talenan_tr.det_to_track.find(di);\n if (it == talenan_tr.det_to_track.end()) continue;\n int tid = it->second;\n const auto& bbox = talenan_boxes[di];\n int x1 = static_cast(bbox(0)), y1 = static_cast(bbox(1));\n int x2 = static_cast(bbox(2)), y2 = static_cast(bbox(3));\n int flash = talenan_cross_flash.count(tid) ? talenan_cross_flash[tid] : 0;\n cv::Scalar color = flash > 0 ? C_GREEN : C_TALENAN_BOX;\n cv::rectangle(frame, cv::Point(x1, y1), cv::Point(x2, y2), color, flash > 0 ? 3 : 2);\n draw_pill(frame, \"TALENAN \" + std::to_string(tid), x1, y1 - 4, color);\n }\n \n // Draw ayam\n for (int di = 0; di < na; ++di) {\n auto it = ayam_tr.det_to_track.find(di);\n if (it == ayam_tr.det_to_track.end()) continue;\n int tid = it->second;\n const auto& bbox = ayam_boxes[di];\n int x1 = static_cast(bbox(0)), y1 = static_cast(bbox(1));\n int x2 = static_cast(bbox(2)), y2 = static_cast(bbox(3));\n int flash = ayam_cross_flash.count(tid) ? ayam_cross_flash[tid] : 0;\n cv::Scalar color = flash > 0 ? C_GREEN : C_AYAM_BOX;\n cv::rectangle(frame, cv::Point(x1, y1), cv::Point(x2, y2), color, flash > 0 ? 3 : 2);\n draw_pill(frame, \"ID \" + std::to_string(tid), x1, y1 - 4, color);\n if (di < (int)ayam_kpts_list.size() && !ayam_kpts_list[di].empty())\n draw_skeleton_bold(frame, ayam_kpts_list[di]);\n }\n }\n \n if (ayam_crossed_frame) {\n line_pulse = g_config.line_pulse_frames;\n count_pulse = g_config.count_pulse_frames;\n }\n if (batch_closed_frame) {\n line_pulse = g_config.line_pulse_frames;\n }\n if (batch_started_frame) {\n batch_pulse = g_config.batch_pulse_frames;\n }\n \n int batch_num = store.current_batch_number();\n int batch_count = store.current_batch_count();\n int display_total = store.display_total();\n \n while (!crossing_times.empty() &&\n std::chrono::duration(mono - crossing_times.front()).count() > g_config.rate_window_sec)\n crossing_times.pop_front();\n double rate = crossing_times.empty() ? 0.0 :\n (crossing_times.size() / static_cast(g_config.rate_window_sec) * 60.0);\n \n draw_elegant_counting_line(frame, line_x, h, line_pulse);\n draw_hero_count(frame, line_x, h, batch_count, count_pulse);\n draw_hud(frame, w, batch_num, batch_count, display_total,\n elapsed_sec, rate);\n draw_batch_banner(frame, w, batch_num, batch_pulse);\n draw_footer(frame, w, h, frame_idx, is_live ? \"LIVE\" : \"FILE\", inf_ema, model_name);\n popups = draw_popups(frame, popups, frame_idx);\n \n // Flash decay\n for (auto& flash_map : {&ayam_cross_flash, &talenan_cross_flash}) {\n for (auto it = flash_map->begin(); it != flash_map->end(); ) {\n it->second--;\n if (it->second <= 0) it = flash_map->erase(it);\n else ++it;\n }\n }\n line_pulse = std::max(0, line_pulse - 1);\n count_pulse = std::max(0, count_pulse - 1);\n batch_pulse = std::max(0, batch_pulse - 1);\n \n if (g_config.live_stream_enabled && frame_idx % g_config.live_stream_every_n == 0) {\n try {\n std::filesystem::path p(g_config.live_stream_frame_path);\n if (p.has_parent_path())\n std::filesystem::create_directories(p.parent_path());\n std::vector jpeg;\n cv::imencode(\".jpg\", frame, jpeg,\n {cv::IMWRITE_JPEG_QUALITY, g_config.live_stream_quality});\n std::ofstream f(g_config.live_stream_frame_path, std::ios::binary);\n f.write(reinterpret_cast(jpeg.data()), jpeg.size());\n } catch (...) {}\n }\n \n frame_idx++;\n \n prune_stale_tracks(ayam_tracked, g_config.tracked_prune_sec);\n prune_stale_tracks(talenan_tracked, g_config.tracked_prune_sec);\n }\n \n cap.release();\n if (video_writer) video_writer->shutdown();\n store.shutdown();\n \n std::cout << \"\\n=== Batch Summary (SQLite) ===\" << std::endl;\n std::cout << \"Database: \" << g_config.db_path << std::endl;\n \n return 0;\n }\n", + "additions": 2, + "deletions": 1, + "status": "modified" + }, + { + "file": "src/video_writer.cpp", + "patch": "Index: src/video_writer.cpp\n===================================================================\n--- src/video_writer.cpp\t\n+++ src/video_writer.cpp\t\n@@ -1,178 +1,214 @@\n #include \"video_writer.hpp\"\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n \n+namespace fs = std::filesystem;\n+\n VideoBatchWriter::VideoBatchWriter(const std::string& shm_dir,\n const std::string& output_dir,\n int w, int h, int fps,\n float delay_sec,\n- float end_delay_sec)\n+ float end_delay_sec,\n+ int retention_days)\n : shm_dir_(shm_dir), output_dir_(output_dir),\n w_(w), h_(h), fps_(fps),\n- delay_sec_(delay_sec), end_delay_sec_(end_delay_sec)\n+ delay_sec_(delay_sec), end_delay_sec_(end_delay_sec),\n+ retention_days_(retention_days)\n {\n ensure_dir(shm_dir_);\n ensure_dir(output_dir_);\n \n- for (const auto& entry : std::filesystem::directory_iterator(shm_dir_)) {\n+ for (const auto& entry : fs::directory_iterator(shm_dir_)) {\n if (entry.path().extension() == \".mp4\") {\n- std::filesystem::remove(entry.path());\n+ fs::remove(entry.path());\n }\n }\n+\n+ auto cutoff = std::chrono::system_clock::now() - std::chrono::hours(retention_days_ * 24);\n+ auto cutoff_t = std::chrono::system_clock::to_time_t(cutoff);\n+ std::ostringstream cutoff_ss;\n+ cutoff_ss << std::put_time(std::gmtime(&cutoff_t), \"%Y-%m-%d\");\n+ std::string cutoff_str = cutoff_ss.str();\n+\n+ for (const auto& entry : fs::directory_iterator(output_dir_)) {\n+ if (!entry.is_directory()) continue;\n+ std::string dirname = entry.path().filename().string();\n+ if (dirname < cutoff_str) {\n+ std::error_code ec;\n+ fs::remove_all(entry.path(), ec);\n+ }\n+ }\n }\n \n VideoBatchWriter::~VideoBatchWriter() {\n shutdown();\n }\n \n void VideoBatchWriter::ensure_dir(const std::string& dir) {\n- std::filesystem::create_directories(dir);\n+ fs::create_directories(dir);\n }\n \n+static std::string today_str() {\n+ auto t = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now());\n+ std::ostringstream ss;\n+ ss << std::put_time(std::localtime(&t), \"%Y-%m-%d\");\n+ return ss.str();\n+}\n+\n+static std::string timestamp_str() {\n+ auto t = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now());\n+ std::ostringstream ss;\n+ ss << std::put_time(std::localtime(&t), \"%H%M%S\");\n+ return ss.str();\n+}\n+\n void VideoBatchWriter::note_motion() {\n if (state_ == IDLE) {\n start_recording();\n state_ = SPECULATING;\n state_start_ = std::chrono::steady_clock::now();\n }\n }\n \n void VideoBatchWriter::note_ayam_detection() {\n if (state_ == SPECULATING) {\n state_ = CONFIRMED;\n }\n }\n \n void VideoBatchWriter::on_batch_closed(int batch_number) {\n current_batch_ = batch_number;\n if (state_ == CONFIRMED) {\n state_ = STOPPING;\n state_start_ = std::chrono::steady_clock::now();\n }\n }\n \n void VideoBatchWriter::feed_frame(const cv::Mat& raw) {\n auto now = std::chrono::steady_clock::now();\n \n if (state_ == SPECULATING) {\n float elapsed = std::chrono::duration(now - state_start_).count();\n if (elapsed >= delay_sec_) {\n stop_and_delete();\n state_ = IDLE;\n return;\n }\n }\n \n if (state_ == STOPPING) {\n float elapsed = std::chrono::duration(now - state_start_).count();\n if (elapsed >= end_delay_sec_) {\n stop_and_move(current_batch_);\n state_ = IDLE;\n return;\n }\n }\n \n if (state_ != IDLE && writer_.isOpened()) {\n writer_.write(raw);\n }\n }\n \n void VideoBatchWriter::start_recording() {\n if (writer_.isOpened()) writer_.release();\n \n auto t = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now());\n std::ostringstream name;\n name << \"batch_pending_\"\n << std::put_time(std::localtime(&t), \"%Y%m%d_%H%M%S\") << \".mp4\";\n current_path_ = shm_dir_ + \"/\" + name.str();\n \n writer_.open(current_path_,\n cv::VideoWriter::fourcc('a','v','c','1'),\n fps_, cv::Size(w_, h_));\n \n if (writer_.isOpened()) {\n std::cout << \"[RECORD] Speculating: \" << current_path_ << std::endl;\n } else {\n std::cerr << \"[RECORD] Failed to open: \" << current_path_ << std::endl;\n }\n }\n \n static void copy_and_clean(const std::string& src, const std::string& dst) {\n if (src.empty() || dst.empty()) return;\n {\n std::ifstream ifs(src, std::ios::binary);\n if (ifs) {\n std::ofstream ofs(dst, std::ios::binary);\n ofs << ifs.rdbuf();\n ofs.flush();\n }\n }\n std::error_code ec;\n- std::filesystem::remove(src, ec);\n+ fs::remove(src, ec);\n }\n \n void VideoBatchWriter::stop_and_delete() {\n if (writer_.isOpened()) {\n writer_.release();\n }\n if (!current_path_.empty()) {\n std::cout << \"[RECORD] Discarding: \" << current_path_ << std::endl;\n std::error_code ec;\n- std::filesystem::remove(current_path_, ec);\n+ fs::remove(current_path_, ec);\n current_path_.clear();\n }\n }\n \n void VideoBatchWriter::stop_and_move(int batch_number) {\n if (writer_.isOpened()) {\n writer_.release();\n std::cout << \"[RECORD] Stopped: \" << current_path_ << std::endl;\n }\n \n std::string src = current_path_;\n current_path_.clear();\n \n- auto t = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now());\n+ std::string day_dir = output_dir_ + \"/\" + today_str();\n+ ensure_dir(day_dir);\n+\n std::ostringstream name;\n- name << \"batch_\" << batch_number << \"_\"\n- << std::put_time(std::localtime(&t), \"%Y%m%d_%H%M%S\") << \".mp4\";\n- std::string dst = output_dir_ + \"/\" + name.str();\n+ name << \"batch_\" << batch_number << \"_\" << timestamp_str() << \".mp4\";\n+ std::string dst = day_dir + \"/\" + name.str();\n \n pid_t pid = fork();\n if (pid == 0) {\n close(STDIN_FILENO);\n close(STDOUT_FILENO);\n close(STDERR_FILENO);\n copy_and_clean(src, dst);\n _exit(0);\n }\n }\n \n void VideoBatchWriter::shutdown() {\n if (writer_.isOpened()) {\n writer_.release();\n }\n state_ = IDLE;\n \n if (!current_path_.empty()) {\n std::string src = current_path_;\n- std::string dst = output_dir_ + \"/\" +\n- std::filesystem::path(current_path_).filename().string();\n+ std::string day_dir = output_dir_ + \"/\" + today_str();\n+ ensure_dir(day_dir);\n+ std::string dst = day_dir + \"/\" +\n+ fs::path(current_path_).filename().string();\n current_path_.clear();\n \n pid_t pid = fork();\n if (pid == 0) {\n close(STDIN_FILENO);\n close(STDOUT_FILENO);\n close(STDERR_FILENO);\n copy_and_clean(src, dst);\n _exit(0);\n }\n }\n }\n", + "additions": 49, + "deletions": 13, + "status": "modified" + }, + { + "file": "src/video_writer.hpp", + "patch": "Index: src/video_writer.hpp\n===================================================================\n--- src/video_writer.hpp\t\n+++ src/video_writer.hpp\t\n@@ -1,41 +1,43 @@\n #pragma once\n #include \n #include \n #include \n \n class VideoBatchWriter {\n public:\n VideoBatchWriter(const std::string& shm_dir,\n const std::string& output_dir,\n int w, int h, int fps,\n float delay_sec,\n- float end_delay_sec);\n+ float end_delay_sec,\n+ int retention_days);\n \n ~VideoBatchWriter();\n \n void note_motion();\n void note_ayam_detection();\n void on_batch_closed(int batch_number);\n void feed_frame(const cv::Mat& raw);\n void shutdown();\n \n private:\n void start_recording();\n void stop_and_delete();\n void stop_and_move(int batch_number);\n void ensure_dir(const std::string& dir);\n \n enum State { IDLE, SPECULATING, CONFIRMED, STOPPING };\n \n std::string shm_dir_;\n std::string output_dir_;\n int w_, h_, fps_;\n float delay_sec_;\n float end_delay_sec_;\n+ int retention_days_;\n \n State state_ = IDLE;\n std::chrono::steady_clock::time_point state_start_;\n cv::VideoWriter writer_;\n std::string current_path_;\n int current_batch_ = 0;\n };\n", + "additions": 3, + "deletions": 1, + "status": "modified" + } + ] + }, + "id": "msg_fabf68bdc001aHXM74wL7UGJzP", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "type": "text", + "text": "when you copy to disk, organize video per day, And provide retention. Default 3 days. Delete all folder and videos files more than retention days", + "id": "prt_fabf68be100188z1eH0J7XxMjQ", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf68bdc001aHXM74wL7UGJzP" + } + ] + }, + { + "info": { + "parentID": "msg_fabf68bdc001aHXM74wL7UGJzP", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000812696, + "tokens": { + "total": 123884, + "input": 144, + "output": 164, + "reasoning": 184, + "cache": { + "write": 0, + "read": 123392 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296489522, + "completed": 1785296499277 + }, + "finish": "tool-calls", + "id": "msg_fabf68c32001e5z7a1Ro70kV3E", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "d0cdc18dc77e4d3e927f4df3846684d7584c664e", + "type": "step-start", + "id": "prt_fabf69c00001WeKbde3UlpDhlr", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf68c32001e5z7a1Ro70kV3E" + }, + { + "type": "reasoning", + "text": "The user wants:\n1. Organize videos per day: `output_dir/YYYY-MM-DD/batch_N_HHMMSS.mp4`\n2. Retention: delete folders/videos older than N days (default 3)\n3. Config: `RECORD_RETENTION_DAYS` (default 3)\n\nI need to:\n1. Add `record_retention_days` to config\n2. Update `video_writer.cpp` to:\n - Create day subdirectory in `stop_and_move()` and `shutdown()`\n - When constructing, clean up old directories/files based on retention\n - In `stop_and_move()`, generate path like `output_dir/YYYY-MM-DD/batch_N_HHMMSS.mp4`\n - In `shutdown()`, same pattern\n\nLet me also add cleanup logic to remove old day folders and their contents.", + "time": { + "start": 1785296494481, + "end": 1785296497759 + }, + "id": "prt_fabf69f91001jyQd7ZGnjG6vYj", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf68c32001e5z7a1Ro70kV3E" + }, + { + "type": "tool", + "tool": "edit", + "callID": "call_00_aVGZjLLq0I8hqiGwcG6M9844", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/config.hpp", + "newString": " float record_end_delay_seconds = 1.0f;\n int record_retention_days = 3;\n std::string record_shm_dir = \"/dev/shm/bytetrack-counter\";", + "oldString": " float record_end_delay_seconds = 1.0f;\n std::string record_shm_dir = \"/dev/shm/bytetrack-counter\";" + }, + "output": "Edit applied successfully.", + "metadata": { + "diagnostics": {}, + "diff": "Index: /opt/bytetrack-counter-cpp/src/config.hpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/config.hpp\n+++ /opt/bytetrack-counter-cpp/src/config.hpp\n@@ -62,8 +62,9 @@\n int video_segment_sec = 3600;\n int output_fps = 15;\n float record_delay_seconds = 10.0f;\n float record_end_delay_seconds = 1.0f;\n+int record_retention_days = 3;\n std::string record_shm_dir = \"/dev/shm/bytetrack-counter\";\n \n bool live_stream_enabled = false;\n std::string live_stream_frame_path = \"/dev/shm/bytetrack-counter/live_frame.jpg\";\n", + "filediff": { + "file": "/opt/bytetrack-counter-cpp/src/config.hpp", + "patch": "Index: /opt/bytetrack-counter-cpp/src/config.hpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/config.hpp\n+++ /opt/bytetrack-counter-cpp/src/config.hpp\n@@ -62,8 +62,9 @@\n int video_segment_sec = 3600;\n int output_fps = 15;\n float record_delay_seconds = 10.0f;\n float record_end_delay_seconds = 1.0f;\n+int record_retention_days = 3;\n std::string record_shm_dir = \"/dev/shm/bytetrack-counter\";\n \n bool live_stream_enabled = false;\n std::string live_stream_frame_path = \"/dev/shm/bytetrack-counter/live_frame.jpg\";\n", + "additions": 1, + "deletions": 0 + }, + "truncated": false + }, + "title": "src/config.hpp", + "time": { + "start": 1785296498969, + "end": 1785296498981 + } + }, + "id": "prt_fabf6ac67001hdQOLsJ627m9t1", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf68c32001e5z7a1Ro70kV3E" + }, + { + "reason": "tool-calls", + "snapshot": "443f8e9502fd55879cb97bdc1a0e87ef5a6d5f35", + "type": "step-finish", + "tokens": { + "total": 123884, + "input": 144, + "output": 164, + "reasoning": 184, + "cache": { + "write": 0, + "read": 123392 + } + }, + "cost": 0.000812696, + "id": "prt_fabf6b18e001KudBYeLp5aAbIn", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf68c32001e5z7a1Ro70kV3E" + }, + { + "type": "patch", + "hash": "d0cdc18dc77e4d3e927f4df3846684d7584c664e", + "files": [ + "/opt/bytetrack-counter-cpp/src/config.hpp" + ], + "id": "prt_fabf6b245001P3PymZ5AmSZ3gd", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf68c32001e5z7a1Ro70kV3E" + } + ] + }, + { + "info": { + "parentID": "msg_fabf68bdc001aHXM74wL7UGJzP", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000724043, + "tokens": { + "total": 124154, + "input": 123, + "output": 248, + "reasoning": 7, + "cache": { + "write": 0, + "read": 123776 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296499310, + "completed": 1785296504174 + }, + "finish": "tool-calls", + "id": "msg_fabf6b26e001LrL4JU7YHfeQoH", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "443f8e9502fd55879cb97bdc1a0e87ef5a6d5f35", + "type": "step-start", + "id": "prt_fabf6b776001lIxob02KIDGEke", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6b26e001LrL4JU7YHfeQoH" + }, + { + "type": "reasoning", + "text": "Now add loading in config.cpp.", + "time": { + "start": 1785296501359, + "end": 1785296501813 + }, + "id": "prt_fabf6ba6f001q463fISmMDhYdE", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6b26e001LrL4JU7YHfeQoH" + }, + { + "type": "tool", + "tool": "edit", + "callID": "call_00_K1lkbEwAyQqAG8ObCHXN4687", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/config.cpp", + "newString": " auto reds_s = get_env(\"RECORD_END_DELAY\");\n if (!reds_s.empty()) record_end_delay_seconds = std::stof(reds_s);\n auto rret_s = get_env(\"RECORD_RETENTION_DAYS\");\n if (!rret_s.empty()) record_retention_days = std::stoi(rret_s);\n record_shm_dir = get_env(\"RECORD_SHM_DIR\", record_shm_dir);", + "oldString": " auto reds_s = get_env(\"RECORD_END_DELAY\");\n if (!reds_s.empty()) record_end_delay_seconds = std::stof(reds_s);\n record_shm_dir = get_env(\"RECORD_SHM_DIR\", record_shm_dir);" + }, + "output": "Edit applied successfully.", + "metadata": { + "diagnostics": {}, + "diff": "Index: /opt/bytetrack-counter-cpp/src/config.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/config.cpp\n+++ /opt/bytetrack-counter-cpp/src/config.cpp\n@@ -143,8 +143,10 @@\n auto rds_s = get_env(\"RECORD_DELAY_SECONDS\");\n if (!rds_s.empty()) record_delay_seconds = std::stof(rds_s);\n auto reds_s = get_env(\"RECORD_END_DELAY\");\n if (!reds_s.empty()) record_end_delay_seconds = std::stof(reds_s);\n+auto rret_s = get_env(\"RECORD_RETENTION_DAYS\");\n+if (!rret_s.empty()) record_retention_days = std::stoi(rret_s);\n record_shm_dir = get_env(\"RECORD_SHM_DIR\", record_shm_dir);\n \n auto lse_s = get_env(\"LIVE_STREAM_ENABLED\");\n live_stream_enabled = (lse_s == \"true\");\n", + "filediff": { + "file": "/opt/bytetrack-counter-cpp/src/config.cpp", + "patch": "Index: /opt/bytetrack-counter-cpp/src/config.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/config.cpp\n+++ /opt/bytetrack-counter-cpp/src/config.cpp\n@@ -143,8 +143,10 @@\n auto rds_s = get_env(\"RECORD_DELAY_SECONDS\");\n if (!rds_s.empty()) record_delay_seconds = std::stof(rds_s);\n auto reds_s = get_env(\"RECORD_END_DELAY\");\n if (!reds_s.empty()) record_end_delay_seconds = std::stof(reds_s);\n+auto rret_s = get_env(\"RECORD_RETENTION_DAYS\");\n+if (!rret_s.empty()) record_retention_days = std::stoi(rret_s);\n record_shm_dir = get_env(\"RECORD_SHM_DIR\", record_shm_dir);\n \n auto lse_s = get_env(\"LIVE_STREAM_ENABLED\");\n live_stream_enabled = (lse_s == \"true\");\n", + "additions": 2, + "deletions": 0 + }, + "truncated": false + }, + "title": "src/config.cpp", + "time": { + "start": 1785296503735, + "end": 1785296503741 + } + }, + "id": "prt_fabf6bc39001WlyUsPHVYSr8tc", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6b26e001LrL4JU7YHfeQoH" + }, + { + "reason": "tool-calls", + "snapshot": "a2065986a3ccc04cf1770a76e7bc138cf8c6ed74", + "type": "step-finish", + "tokens": { + "total": 124154, + "input": 123, + "output": 248, + "reasoning": 7, + "cache": { + "write": 0, + "read": 123776 + } + }, + "cost": 0.000724043, + "id": "prt_fabf6c4df0014YgfczONbyDZVc", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6b26e001LrL4JU7YHfeQoH" + }, + { + "type": "patch", + "hash": "443f8e9502fd55879cb97bdc1a0e87ef5a6d5f35", + "files": [ + "/opt/bytetrack-counter-cpp/src/config.cpp" + ], + "id": "prt_fabf6c5680015wt8yeJycPi2Bz", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6b26e001LrL4JU7YHfeQoH" + } + ] + }, + { + "info": { + "parentID": "msg_fabf68bdc001aHXM74wL7UGJzP", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000683211, + "tokens": { + "total": 124369, + "input": 137, + "output": 187, + "reasoning": 13, + "cache": { + "write": 0, + "read": 124032 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296504229, + "completed": 1785296508437 + }, + "finish": "tool-calls", + "id": "msg_fabf6c5a5001bdsxEgRFHvET22", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "a2065986a3ccc04cf1770a76e7bc138cf8c6ed74", + "type": "step-start", + "id": "prt_fabf6cb4d001J3yfr3j2e6BjIP", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6c5a5001bdsxEgRFHvET22" + }, + { + "type": "reasoning", + "text": "Now update video_writer.hpp to accept retention_days parameter.", + "time": { + "start": 1785296506168, + "end": 1785296506642 + }, + "id": "prt_fabf6cd38001hSup33MS4pZgeA", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6c5a5001bdsxEgRFHvET22" + }, + { + "type": "tool", + "tool": "edit", + "callID": "call_00_ifOIeBTtiWKKfMi7RIzv9339", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/video_writer.hpp", + "newString": " VideoBatchWriter(const std::string& shm_dir,\n const std::string& output_dir,\n int w, int h, int fps,\n float delay_sec,\n float end_delay_sec,\n int retention_days);", + "oldString": " VideoBatchWriter(const std::string& shm_dir,\n const std::string& output_dir,\n int w, int h, int fps,\n float delay_sec,\n float end_delay_sec);" + }, + "output": "Edit applied successfully.", + "metadata": { + "diagnostics": {}, + "diff": "Index: /opt/bytetrack-counter-cpp/src/video_writer.hpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/video_writer.hpp\n+++ /opt/bytetrack-counter-cpp/src/video_writer.hpp\n@@ -8,9 +8,10 @@\n VideoBatchWriter(const std::string& shm_dir,\n const std::string& output_dir,\n int w, int h, int fps,\n float delay_sec,\n- float end_delay_sec);\n+ float end_delay_sec,\n+ int retention_days);\n \n ~VideoBatchWriter();\n \n void note_motion();\n", + "filediff": { + "file": "/opt/bytetrack-counter-cpp/src/video_writer.hpp", + "patch": "Index: /opt/bytetrack-counter-cpp/src/video_writer.hpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/video_writer.hpp\n+++ /opt/bytetrack-counter-cpp/src/video_writer.hpp\n@@ -8,9 +8,10 @@\n VideoBatchWriter(const std::string& shm_dir,\n const std::string& output_dir,\n int w, int h, int fps,\n float delay_sec,\n- float end_delay_sec);\n+ float end_delay_sec,\n+ int retention_days);\n \n ~VideoBatchWriter();\n \n void note_motion();\n", + "additions": 2, + "deletions": 1 + }, + "truncated": false + }, + "title": "src/video_writer.hpp", + "time": { + "start": 1785296508030, + "end": 1785296508036 + } + }, + "id": "prt_fabf6cf160018CqbyyySkPhPq7", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6c5a5001bdsxEgRFHvET22" + }, + { + "reason": "tool-calls", + "snapshot": "c98357fc783ad794b0f982e3512732cf2620e68c", + "type": "step-finish", + "tokens": { + "total": 124369, + "input": 137, + "output": 187, + "reasoning": 13, + "cache": { + "write": 0, + "read": 124032 + } + }, + "cost": 0.000683211, + "id": "prt_fabf6d52b001bfyP1RbQ7P2UAf", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6c5a5001bdsxEgRFHvET22" + }, + { + "type": "patch", + "hash": "a2065986a3ccc04cf1770a76e7bc138cf8c6ed74", + "files": [ + "/opt/bytetrack-counter-cpp/src/video_writer.hpp" + ], + "id": "prt_fabf6d60e001uwIluOX7M4k6av", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6c5a5001bdsxEgRFHvET22" + } + ] + }, + { + "info": { + "parentID": "msg_fabf68bdc001aHXM74wL7UGJzP", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000595834, + "tokens": { + "total": 124503, + "input": 96, + "output": 111, + "reasoning": 8, + "cache": { + "write": 0, + "read": 124288 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296508474, + "completed": 1785296512711 + }, + "finish": "tool-calls", + "id": "msg_fabf6d63a0018hcRv5ykAF4Asz", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "c98357fc783ad794b0f982e3512732cf2620e68c", + "type": "step-start", + "id": "prt_fabf6db9e001N7qkZytgYL1nE0", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6d63a0018hcRv5ykAF4Asz" + }, + { + "type": "reasoning", + "text": "Now add retention_days_ member.", + "time": { + "start": 1785296510972, + "end": 1785296511591 + }, + "id": "prt_fabf6dffc001ORQSq0RhoJXMPR", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6d63a0018hcRv5ykAF4Asz" + }, + { + "type": "tool", + "tool": "edit", + "callID": "call_00_Hq0t6al1gioQBkq1eDJu2641", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/video_writer.hpp", + "newString": " float end_delay_sec_;\n int retention_days_;", + "oldString": " float end_delay_sec_;" + }, + "output": "Edit applied successfully.", + "metadata": { + "diagnostics": {}, + "diff": "Index: /opt/bytetrack-counter-cpp/src/video_writer.hpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/video_writer.hpp\n+++ /opt/bytetrack-counter-cpp/src/video_writer.hpp\n@@ -32,8 +32,9 @@\n std::string output_dir_;\n int w_, h_, fps_;\n float delay_sec_;\n float end_delay_sec_;\n+int retention_days_;\n \n State state_ = IDLE;\n std::chrono::steady_clock::time_point state_start_;\n cv::VideoWriter writer_;\n", + "filediff": { + "file": "/opt/bytetrack-counter-cpp/src/video_writer.hpp", + "patch": "Index: /opt/bytetrack-counter-cpp/src/video_writer.hpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/video_writer.hpp\n+++ /opt/bytetrack-counter-cpp/src/video_writer.hpp\n@@ -32,8 +32,9 @@\n std::string output_dir_;\n int w_, h_, fps_;\n float delay_sec_;\n float end_delay_sec_;\n+int retention_days_;\n \n State state_ = IDLE;\n std::chrono::steady_clock::time_point state_start_;\n cv::VideoWriter writer_;\n", + "additions": 1, + "deletions": 0 + }, + "truncated": false + }, + "title": "src/video_writer.hpp", + "time": { + "start": 1785296512393, + "end": 1785296512400 + } + }, + "id": "prt_fabf6e26c00144oOUm4InzedTg", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6d63a0018hcRv5ykAF4Asz" + }, + { + "reason": "tool-calls", + "snapshot": "038006e0c11fae3aa0bdaaa0b554f5efc9678a37", + "type": "step-finish", + "tokens": { + "total": 124503, + "input": 96, + "output": 111, + "reasoning": 8, + "cache": { + "write": 0, + "read": 124288 + } + }, + "cost": 0.000595834, + "id": "prt_fabf6e63100186vgRi4C4oLCjn", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6d63a0018hcRv5ykAF4Asz" + }, + { + "type": "patch", + "hash": "c98357fc783ad794b0f982e3512732cf2620e68c", + "files": [ + "/opt/bytetrack-counter-cpp/src/video_writer.hpp" + ], + "id": "prt_fabf6e6c2001zNfEI28MK5Elfr", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6d63a0018hcRv5ykAF4Asz" + } + ] + }, + { + "info": { + "parentID": "msg_fabf68bdc001aHXM74wL7UGJzP", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.002050938, + "tokens": { + "total": 126306, + "input": 102, + "output": 1757, + "reasoning": 31, + "cache": { + "write": 0, + "read": 124416 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296512746, + "completed": 1785296531349 + }, + "finish": "tool-calls", + "id": "msg_fabf6e6ea001CPxEcTN35ITEfC", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "038006e0c11fae3aa0bdaaa0b554f5efc9678a37", + "type": "step-start", + "id": "prt_fabf6ec3b001KJ2GWN5zjBqy1k", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6e6ea001CPxEcTN35ITEfC" + }, + { + "type": "reasoning", + "text": "Now rewrite video_writer.cpp to:\n1. Accept retention_days\n2. Generate day-based paths \n3. Cleanup old day folders on construction", + "time": { + "start": 1785296514576, + "end": 1785296515353 + }, + "id": "prt_fabf6ee10001ZspCSo9FfzMiOT", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6e6ea001CPxEcTN35ITEfC" + }, + { + "type": "tool", + "tool": "write", + "callID": "call_00_AMYXdESiOwPpRmmakbUT0446", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/video_writer.cpp", + "content": "#include \"video_writer.hpp\"\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n\nnamespace fs = std::filesystem;\n\nVideoBatchWriter::VideoBatchWriter(const std::string& shm_dir,\n const std::string& output_dir,\n int w, int h, int fps,\n float delay_sec,\n float end_delay_sec,\n int retention_days)\n : shm_dir_(shm_dir), output_dir_(output_dir),\n w_(w), h_(h), fps_(fps),\n delay_sec_(delay_sec), end_delay_sec_(end_delay_sec),\n retention_days_(retention_days)\n{\n ensure_dir(shm_dir_);\n ensure_dir(output_dir_);\n\n for (const auto& entry : fs::directory_iterator(shm_dir_)) {\n if (entry.path().extension() == \".mp4\") {\n fs::remove(entry.path());\n }\n }\n\n auto now = std::chrono::system_clock::now();\n for (const auto& entry : fs::directory_iterator(output_dir_)) {\n if (!entry.is_directory()) continue;\n auto ftime = fs::last_write_time(entry.path());\n auto ftime_tp = decltype(now)::clock::now() +\n (ftime.time_since_epoch() - fs::file_time_type::clock::now().time_since_epoch());\n auto age_hours = std::chrono::duration_cast(now - ftime_tp).count();\n if (age_hours >= retention_days_ * 24) {\n std::error_code ec;\n fs::remove_all(entry.path(), ec);\n }\n }\n}\n\nVideoBatchWriter::~VideoBatchWriter() {\n shutdown();\n}\n\nvoid VideoBatchWriter::ensure_dir(const std::string& dir) {\n fs::create_directories(dir);\n}\n\nstatic std::string today_str() {\n auto t = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now());\n std::ostringstream ss;\n ss << std::put_time(std::localtime(&t), \"%Y-%m-%d\");\n return ss.str();\n}\n\nstatic std::string timestamp_str() {\n auto t = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now());\n std::ostringstream ss;\n ss << std::put_time(std::localtime(&t), \"%H%M%S\");\n return ss.str();\n}\n\nvoid VideoBatchWriter::note_motion() {\n if (state_ == IDLE) {\n start_recording();\n state_ = SPECULATING;\n state_start_ = std::chrono::steady_clock::now();\n }\n}\n\nvoid VideoBatchWriter::note_ayam_detection() {\n if (state_ == SPECULATING) {\n state_ = CONFIRMED;\n }\n}\n\nvoid VideoBatchWriter::on_batch_closed(int batch_number) {\n current_batch_ = batch_number;\n if (state_ == CONFIRMED) {\n state_ = STOPPING;\n state_start_ = std::chrono::steady_clock::now();\n }\n}\n\nvoid VideoBatchWriter::feed_frame(const cv::Mat& raw) {\n auto now = std::chrono::steady_clock::now();\n\n if (state_ == SPECULATING) {\n float elapsed = std::chrono::duration(now - state_start_).count();\n if (elapsed >= delay_sec_) {\n stop_and_delete();\n state_ = IDLE;\n return;\n }\n }\n\n if (state_ == STOPPING) {\n float elapsed = std::chrono::duration(now - state_start_).count();\n if (elapsed >= end_delay_sec_) {\n stop_and_move(current_batch_);\n state_ = IDLE;\n return;\n }\n }\n\n if (state_ != IDLE && writer_.isOpened()) {\n writer_.write(raw);\n }\n}\n\nvoid VideoBatchWriter::start_recording() {\n if (writer_.isOpened()) writer_.release();\n\n auto t = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now());\n std::ostringstream name;\n name << \"batch_pending_\"\n << std::put_time(std::localtime(&t), \"%Y%m%d_%H%M%S\") << \".mp4\";\n current_path_ = shm_dir_ + \"/\" + name.str();\n\n writer_.open(current_path_,\n cv::VideoWriter::fourcc('a','v','c','1'),\n fps_, cv::Size(w_, h_));\n\n if (writer_.isOpened()) {\n std::cout << \"[RECORD] Speculating: \" << current_path_ << std::endl;\n } else {\n std::cerr << \"[RECORD] Failed to open: \" << current_path_ << std::endl;\n }\n}\n\nstatic void copy_and_clean(const std::string& src, const std::string& dst) {\n if (src.empty() || dst.empty()) return;\n {\n std::ifstream ifs(src, std::ios::binary);\n if (ifs) {\n std::ofstream ofs(dst, std::ios::binary);\n ofs << ifs.rdbuf();\n ofs.flush();\n }\n }\n std::error_code ec;\n fs::remove(src, ec);\n}\n\nvoid VideoBatchWriter::stop_and_delete() {\n if (writer_.isOpened()) {\n writer_.release();\n }\n if (!current_path_.empty()) {\n std::cout << \"[RECORD] Discarding: \" << current_path_ << std::endl;\n std::error_code ec;\n fs::remove(current_path_, ec);\n current_path_.clear();\n }\n}\n\nvoid VideoBatchWriter::stop_and_move(int batch_number) {\n if (writer_.isOpened()) {\n writer_.release();\n std::cout << \"[RECORD] Stopped: \" << current_path_ << std::endl;\n }\n\n std::string src = current_path_;\n current_path_.clear();\n\n std::string day_dir = output_dir_ + \"/\" + today_str();\n ensure_dir(day_dir);\n\n std::ostringstream name;\n name << \"batch_\" << batch_number << \"_\" << timestamp_str() << \".mp4\";\n std::string dst = day_dir + \"/\" + name.str();\n\n pid_t pid = fork();\n if (pid == 0) {\n close(STDIN_FILENO);\n close(STDOUT_FILENO);\n close(STDERR_FILENO);\n copy_and_clean(src, dst);\n _exit(0);\n }\n}\n\nvoid VideoBatchWriter::shutdown() {\n if (writer_.isOpened()) {\n writer_.release();\n }\n state_ = IDLE;\n\n if (!current_path_.empty()) {\n std::string src = current_path_;\n std::string day_dir = output_dir_ + \"/\" + today_str();\n ensure_dir(day_dir);\n std::string dst = day_dir + \"/\" +\n fs::path(current_path_).filename().string();\n current_path_.clear();\n\n pid_t pid = fork();\n if (pid == 0) {\n close(STDIN_FILENO);\n close(STDOUT_FILENO);\n close(STDERR_FILENO);\n copy_and_clean(src, dst);\n _exit(0);\n }\n }\n}\n" + }, + "output": "Wrote file successfully.", + "metadata": { + "diagnostics": {}, + "filepath": "/opt/bytetrack-counter-cpp/src/video_writer.cpp", + "exists": true, + "truncated": false + }, + "title": "src/video_writer.cpp", + "time": { + "start": 1785296530912, + "end": 1785296530944 + } + }, + "id": "prt_fabf6f11d001hlaT6t6X5pDClH", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6e6ea001CPxEcTN35ITEfC" + }, + { + "reason": "tool-calls", + "snapshot": "2fd4296fbf0d540e4983b21371aeedc67ce13009", + "type": "step-finish", + "tokens": { + "total": 126306, + "input": 102, + "output": 1757, + "reasoning": 31, + "cache": { + "write": 0, + "read": 124416 + } + }, + "cost": 0.002050938, + "id": "prt_fabf72eaa001rwQmq3UZXFi1aL", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6e6ea001CPxEcTN35ITEfC" + }, + { + "type": "patch", + "hash": "038006e0c11fae3aa0bdaaa0b554f5efc9678a37", + "files": [ + "/opt/bytetrack-counter-cpp/src/video_writer.cpp" + ], + "id": "prt_fabf72f8e001m7TiawmHnmisqk", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf6e6ea001CPxEcTN35ITEfC" + } + ] + }, + { + "info": { + "parentID": "msg_fabf68bdc001aHXM74wL7UGJzP", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000709804, + "tokens": { + "total": 126555, + "input": 114, + "output": 223, + "reasoning": 10, + "cache": { + "write": 0, + "read": 126208 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296531394, + "completed": 1785296536563 + }, + "finish": "tool-calls", + "id": "msg_fabf72fc1001lVaoV165ME4rr9", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "2fd4296fbf0d540e4983b21371aeedc67ce13009", + "type": "step-start", + "id": "prt_fabf73726001Hs6EFS4BpdgXqR", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf72fc1001lVaoV165ME4rr9" + }, + { + "type": "reasoning", + "text": "Now update main.cpp to pass retention_days.", + "time": { + "start": 1785296534055, + "end": 1785296534576 + }, + "id": "prt_fabf73a270019gZKbx3Uhs31hc", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf72fc1001lVaoV165ME4rr9" + }, + { + "type": "tool", + "tool": "edit", + "callID": "call_00_KLVgwK3dSwm8ep8zHQ2n9421", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/main.cpp", + "newString": " video_writer = std::make_unique(\n g_config.record_shm_dir, g_config.output_dir,\n w, h, static_cast(fps_prop),\n g_config.record_delay_seconds,\n g_config.record_end_delay_seconds,\n g_config.record_retention_days);", + "oldString": " video_writer = std::make_unique(\n g_config.record_shm_dir, g_config.output_dir,\n w, h, static_cast(fps_prop),\n g_config.record_delay_seconds,\n g_config.record_end_delay_seconds);" + }, + "output": "Edit applied successfully.", + "metadata": { + "diagnostics": {}, + "diff": "Index: /opt/bytetrack-counter-cpp/src/main.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/main.cpp\n+++ /opt/bytetrack-counter-cpp/src/main.cpp\n@@ -225,9 +225,10 @@\n video_writer = std::make_unique(\n g_config.record_shm_dir, g_config.output_dir,\n w, h, static_cast(fps_prop),\n g_config.record_delay_seconds,\n- g_config.record_end_delay_seconds);\n+ g_config.record_end_delay_seconds,\n+ g_config.record_retention_days);\n auto* vw = video_writer.get();\n store.set_batch_closed_callback([vw](int bn) { vw->on_batch_closed(bn); });\n }\n \n", + "filediff": { + "file": "/opt/bytetrack-counter-cpp/src/main.cpp", + "patch": "Index: /opt/bytetrack-counter-cpp/src/main.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/main.cpp\n+++ /opt/bytetrack-counter-cpp/src/main.cpp\n@@ -225,9 +225,10 @@\n video_writer = std::make_unique(\n g_config.record_shm_dir, g_config.output_dir,\n w, h, static_cast(fps_prop),\n g_config.record_delay_seconds,\n- g_config.record_end_delay_seconds);\n+ g_config.record_end_delay_seconds,\n+ g_config.record_retention_days);\n auto* vw = video_writer.get();\n store.set_batch_closed_callback([vw](int bn) { vw->on_batch_closed(bn); });\n }\n \n", + "additions": 2, + "deletions": 1 + }, + "truncated": false + }, + "title": "src/main.cpp", + "time": { + "start": 1785296536211, + "end": 1785296536217 + } + }, + "id": "prt_fabf73c34001g7PfgLAjYRXBsm", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf72fc1001lVaoV165ME4rr9" + }, + { + "reason": "tool-calls", + "snapshot": "90af0e33aea820dde536835d5f4e6a36836dc832", + "type": "step-finish", + "tokens": { + "total": 126555, + "input": 114, + "output": 223, + "reasoning": 10, + "cache": { + "write": 0, + "read": 126208 + } + }, + "cost": 0.000709804, + "id": "prt_fabf74388001iLDDzUc1opZNpB", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf72fc1001lVaoV165ME4rr9" + }, + { + "type": "patch", + "hash": "2fd4296fbf0d540e4983b21371aeedc67ce13009", + "files": [ + "/opt/bytetrack-counter-cpp/src/main.cpp" + ], + "id": "prt_fabf743dd001VswEjYxRCJeV4k", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf72fc1001lVaoV165ME4rr9" + } + ] + }, + { + "info": { + "parentID": "msg_fabf68bdc001aHXM74wL7UGJzP", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000919532, + "tokens": { + "total": 127047, + "input": 106, + "output": 425, + "reasoning": 52, + "cache": { + "write": 0, + "read": 126464 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296536600, + "completed": 1785296544267 + }, + "finish": "tool-calls", + "id": "msg_fabf74417001y87WilZbjTgLGQ", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "90af0e33aea820dde536835d5f4e6a36836dc832", + "type": "step-start", + "id": "prt_fabf7493d001FgjtkkBhRkVrJd", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf74417001y87WilZbjTgLGQ" + }, + { + "type": "reasoning", + "text": "Now I need to fix the retention cleanup logic in the constructor. The `fs::last_write_time` to `chrono::system_clock` conversion is tricky. Let me use a simpler approach: compute the cutoff date string and compare folder names instead.", + "time": { + "start": 1785296538877, + "end": 1785296540330 + }, + "id": "prt_fabf74cfd001FFKQuVU7ImgfEb", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf74417001y87WilZbjTgLGQ" + }, + { + "type": "tool", + "tool": "edit", + "callID": "call_00_BVQbkM5CVQYpOmxUKV3I9236", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/video_writer.cpp", + "newString": " auto cutoff = std::chrono::system_clock::now() - std::chrono::hours(retention_days_ * 24);\n auto cutoff_t = std::chrono::system_clock::to_time_t(cutoff);\n std::ostringstream cutoff_ss;\n cutoff_ss << std::put_time(std::gmtime(&cutoff_t), \"%Y-%m-%d\");\n std::string cutoff_str = cutoff_ss.str();\n\n for (const auto& entry : fs::directory_iterator(output_dir_)) {\n if (!entry.is_directory()) continue;\n std::string dirname = entry.path().filename().string();\n if (dirname < cutoff_str) {\n std::error_code ec;\n fs::remove_all(entry.path(), ec);\n }\n }", + "oldString": " auto now = std::chrono::system_clock::now();\n for (const auto& entry : fs::directory_iterator(output_dir_)) {\n if (!entry.is_directory()) continue;\n auto ftime = fs::last_write_time(entry.path());\n auto ftime_tp = decltype(now)::clock::now() +\n (ftime.time_since_epoch() - fs::file_time_type::clock::now().time_since_epoch());\n auto age_hours = std::chrono::duration_cast(now - ftime_tp).count();\n if (age_hours >= retention_days_ * 24) {\n std::error_code ec;\n fs::remove_all(entry.path(), ec);\n }\n }" + }, + "output": "Edit applied successfully.", + "metadata": { + "diagnostics": {}, + "diff": "Index: /opt/bytetrack-counter-cpp/src/video_writer.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/video_writer.cpp\n+++ /opt/bytetrack-counter-cpp/src/video_writer.cpp\n@@ -29,16 +29,18 @@\n fs::remove(entry.path());\n }\n }\n \n-auto now = std::chrono::system_clock::now();\n+auto cutoff = std::chrono::system_clock::now() - std::chrono::hours(retention_days_ * 24);\n+auto cutoff_t = std::chrono::system_clock::to_time_t(cutoff);\n+std::ostringstream cutoff_ss;\n+cutoff_ss << std::put_time(std::gmtime(&cutoff_t), \"%Y-%m-%d\");\n+std::string cutoff_str = cutoff_ss.str();\n+\n for (const auto& entry : fs::directory_iterator(output_dir_)) {\n if (!entry.is_directory()) continue;\n- auto ftime = fs::last_write_time(entry.path());\n- auto ftime_tp = decltype(now)::clock::now() +\n- (ftime.time_since_epoch() - fs::file_time_type::clock::now().time_since_epoch());\n- auto age_hours = std::chrono::duration_cast(now - ftime_tp).count();\n- if (age_hours >= retention_days_ * 24) {\n+ std::string dirname = entry.path().filename().string();\n+ if (dirname < cutoff_str) {\n std::error_code ec;\n fs::remove_all(entry.path(), ec);\n }\n }\n", + "filediff": { + "file": "/opt/bytetrack-counter-cpp/src/video_writer.cpp", + "patch": "Index: /opt/bytetrack-counter-cpp/src/video_writer.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/video_writer.cpp\n+++ /opt/bytetrack-counter-cpp/src/video_writer.cpp\n@@ -29,16 +29,18 @@\n fs::remove(entry.path());\n }\n }\n \n-auto now = std::chrono::system_clock::now();\n+auto cutoff = std::chrono::system_clock::now() - std::chrono::hours(retention_days_ * 24);\n+auto cutoff_t = std::chrono::system_clock::to_time_t(cutoff);\n+std::ostringstream cutoff_ss;\n+cutoff_ss << std::put_time(std::gmtime(&cutoff_t), \"%Y-%m-%d\");\n+std::string cutoff_str = cutoff_ss.str();\n+\n for (const auto& entry : fs::directory_iterator(output_dir_)) {\n if (!entry.is_directory()) continue;\n- auto ftime = fs::last_write_time(entry.path());\n- auto ftime_tp = decltype(now)::clock::now() +\n- (ftime.time_since_epoch() - fs::file_time_type::clock::now().time_since_epoch());\n- auto age_hours = std::chrono::duration_cast(now - ftime_tp).count();\n- if (age_hours >= retention_days_ * 24) {\n+ std::string dirname = entry.path().filename().string();\n+ if (dirname < cutoff_str) {\n std::error_code ec;\n fs::remove_all(entry.path(), ec);\n }\n }\n", + "additions": 8, + "deletions": 6 + }, + "truncated": false + }, + "title": "src/video_writer.cpp", + "time": { + "start": 1785296543864, + "end": 1785296543871 + } + }, + "id": "prt_fabf752ae001zGCis7TyIw8HRD", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf74417001y87WilZbjTgLGQ" + }, + { + "reason": "tool-calls", + "snapshot": "a0b89bccac493ee952a7bd265ba8b17741756f2a", + "type": "step-finish", + "tokens": { + "total": 127047, + "input": 106, + "output": 425, + "reasoning": 52, + "cache": { + "write": 0, + "read": 126464 + } + }, + "cost": 0.000919532, + "id": "prt_fabf7611e001YXIln74ej0umqC", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf74417001y87WilZbjTgLGQ" + }, + { + "type": "patch", + "hash": "90af0e33aea820dde536835d5f4e6a36836dc832", + "files": [ + "/opt/bytetrack-counter-cpp/src/video_writer.cpp" + ], + "id": "prt_fabf76206001WzPBdRbBMdkGUf", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf74417001y87WilZbjTgLGQ" + } + ] + }, + { + "info": { + "parentID": "msg_fabf68bdc001aHXM74wL7UGJzP", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000612538, + "tokens": { + "total": 127194, + "input": 86, + "output": 68, + "reasoning": 64, + "cache": { + "write": 0, + "read": 126976 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296544301, + "completed": 1785296557842 + }, + "finish": "tool-calls", + "id": "msg_fabf7622d0012dFuGzsDbxkLf3", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "a0b89bccac493ee952a7bd265ba8b17741756f2a", + "type": "step-start", + "id": "prt_fabf768c40013vzQ46M5K2pmGD", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf7622d0012dFuGzsDbxkLf3" + }, + { + "type": "reasoning", + "text": "I need to add `#include `... no wait, I removed the date comparison using time. Let me check: I'm now using string comparison on the directory names (YYYY-MM-DD format). That should work correctly since the ISO date format sorts lexicographically as chronological order.\n\nLet me build.", + "time": { + "start": 1785296546263, + "end": 1785296548093 + }, + "id": "prt_fabf769d7001pq66tpJMyXWVdB", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf7622d0012dFuGzsDbxkLf3" + }, + { + "type": "tool", + "tool": "bash", + "callID": "call_00_0CjYBTSsjOv4ivsv1zyp0696", + "state": { + "status": "completed", + "input": { + "command": "cd /opt/bytetrack-counter-cpp/build && make -j$(nproc) 2>&1 | tail -10" + }, + "output": "[ 20%] Building CXX object CMakeFiles/bytetrack-counter.dir/src/video_writer.cpp.o\n[ 20%] Building CXX object CMakeFiles/bytetrack-counter.dir/src/config.cpp.o\n[ 30%] Building CXX object CMakeFiles/bytetrack-counter.dir/src/main.cpp.o\n[ 40%] Building CXX object CMakeFiles/bytetrack-counter.dir/src/drawing.cpp.o\n[ 50%] Linking CXX executable bytetrack-counter\n[100%] Built target bytetrack-counter\n", + "metadata": { + "output": "[ 20%] Building CXX object CMakeFiles/bytetrack-counter.dir/src/video_writer.cpp.o\n[ 20%] Building CXX object CMakeFiles/bytetrack-counter.dir/src/config.cpp.o\n[ 30%] Building CXX object CMakeFiles/bytetrack-counter.dir/src/main.cpp.o\n[ 40%] Building CXX object CMakeFiles/bytetrack-counter.dir/src/drawing.cpp.o\n[ 50%] Linking CXX executable bytetrack-counter\n[100%] Built target bytetrack-counter\n", + "exit": 0, + "truncated": false + }, + "title": "cd /opt/bytetrack-counter-cpp/build && make -j$(nproc) 2>&1 | tail -10", + "time": { + "start": 1785296556996, + "end": 1785296557010 + } + }, + "id": "prt_fabf77101001wcxJSRGT4z0dvH", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf7622d0012dFuGzsDbxkLf3" + }, + { + "reason": "tool-calls", + "snapshot": "a0b89bccac493ee952a7bd265ba8b17741756f2a", + "type": "step-finish", + "tokens": { + "total": 127194, + "input": 86, + "output": 68, + "reasoning": 64, + "cache": { + "write": 0, + "read": 126976 + } + }, + "cost": 0.000612538, + "id": "prt_fabf794e9001zD08pZBlSgUk17", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf7622d0012dFuGzsDbxkLf3" + } + ] + }, + { + "info": { + "parentID": "msg_fabf68bdc001aHXM74wL7UGJzP", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000699132, + "tokens": { + "total": 127487, + "input": 218, + "output": 159, + "reasoning": 6, + "cache": { + "write": 0, + "read": 127104 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296557904, + "completed": 1785296562094 + }, + "finish": "tool-calls", + "id": "msg_fabf79750001CIj3GmWcos2m9b", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "a0b89bccac493ee952a7bd265ba8b17741756f2a", + "type": "step-start", + "id": "prt_fabf79d1e001EejfDNtkP04AkK", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf79750001CIj3GmWcos2m9b" + }, + { + "type": "reasoning", + "text": "Now update config.env.example.", + "time": { + "start": 1785296559947, + "end": 1785296560416 + }, + "id": "prt_fabf79f4b001Dy4I3sF2BUiXXQ", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf79750001CIj3GmWcos2m9b" + }, + { + "type": "tool", + "tool": "edit", + "callID": "call_00_G0kLi21SAzqho22IxNYy5432", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/config.env.example", + "newString": "# Extra seconds to keep recording after batch end signal before stopping\nRECORD_END_DELAY=1\n# Days to keep recorded video folders (folders older than this deleted on startup)\nRECORD_RETENTION_DAYS=3", + "oldString": "# Extra seconds to keep recording after batch end signal before stopping\nRECORD_END_DELAY=1" + }, + "output": "Edit applied successfully.", + "metadata": { + "diagnostics": {}, + "diff": "Index: /opt/bytetrack-counter-cpp/config.env.example\n===================================================================\n--- /opt/bytetrack-counter-cpp/config.env.example\n+++ /opt/bytetrack-counter-cpp/config.env.example\n@@ -139,8 +139,10 @@\n # Delay in seconds after batch starts before recording begins (every batch)\n RECORD_DELAY_SECONDS=10\n # Extra seconds to keep recording after batch end signal before stopping\n RECORD_END_DELAY=1\n+# Days to keep recorded video folders (folders older than this deleted on startup)\n+RECORD_RETENTION_DAYS=3\n # Shared memory directory for recording (fast write, moved to OUTPUT_DIR on close)\n RECORD_SHM_DIR=/dev/shm/bytetrack-counter\n \n # --- Live stream snapshot ---\n", + "filediff": { + "file": "/opt/bytetrack-counter-cpp/config.env.example", + "patch": "Index: /opt/bytetrack-counter-cpp/config.env.example\n===================================================================\n--- /opt/bytetrack-counter-cpp/config.env.example\n+++ /opt/bytetrack-counter-cpp/config.env.example\n@@ -139,8 +139,10 @@\n # Delay in seconds after batch starts before recording begins (every batch)\n RECORD_DELAY_SECONDS=10\n # Extra seconds to keep recording after batch end signal before stopping\n RECORD_END_DELAY=1\n+# Days to keep recorded video folders (folders older than this deleted on startup)\n+RECORD_RETENTION_DAYS=3\n # Shared memory directory for recording (fast write, moved to OUTPUT_DIR on close)\n RECORD_SHM_DIR=/dev/shm/bytetrack-counter\n \n # --- Live stream snapshot ---\n", + "additions": 2, + "deletions": 0 + }, + "truncated": false + }, + "title": "config.env.example", + "time": { + "start": 1785296561828, + "end": 1785296561835 + } + }, + "id": "prt_fabf7a12d001l8L3QqAREEe092", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf79750001CIj3GmWcos2m9b" + }, + { + "reason": "tool-calls", + "snapshot": "9131e58ecaf312abe46da6b0ce3cd5d536ead7b4", + "type": "step-finish", + "tokens": { + "total": 127487, + "input": 218, + "output": 159, + "reasoning": 6, + "cache": { + "write": 0, + "read": 127104 + } + }, + "cost": 0.000699132, + "id": "prt_fabf7a73e001CggZXdAJ4qlKDr", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf79750001CIj3GmWcos2m9b" + }, + { + "type": "patch", + "hash": "a0b89bccac493ee952a7bd265ba8b17741756f2a", + "files": [ + "/opt/bytetrack-counter-cpp/config.env.example" + ], + "id": "prt_fabf7a7a9001a2b5VftqePIrFe", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf79750001CIj3GmWcos2m9b" + } + ] + }, + { + "info": { + "parentID": "msg_fabf68bdc001aHXM74wL7UGJzP", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.00057391, + "tokens": { + "total": 127560, + "input": 142, + "output": 58, + "reasoning": 0, + "cache": { + "write": 0, + "read": 127360 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296562130, + "completed": 1785296565998 + }, + "finish": "stop", + "id": "msg_fabf7a7d20011ZSU68RTQHOYPF", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "9131e58ecaf312abe46da6b0ce3cd5d536ead7b4", + "type": "step-start", + "id": "prt_fabf7ae07001VrsZO9cAI2uGsl", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf7a7d20011ZSU68RTQHOYPF" + }, + { + "type": "text", + "text": "Done. Videos now organized as `OUTPUT_DIR/YYYY-MM-DD/batch_N_HHMMSS.mp4`. On startup, day folders older than `RECORD_RETENTION_DAYS` (default 3) are removed with `fs::remove_all`.", + "time": { + "start": 1785296564908, + "end": 1785296565766 + }, + "id": "prt_fabf7b2ac0015MHOMYrAt3Ia3N", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf7a7d20011ZSU68RTQHOYPF" + }, + { + "reason": "stop", + "snapshot": "9131e58ecaf312abe46da6b0ce3cd5d536ead7b4", + "type": "step-finish", + "tokens": { + "total": 127560, + "input": 142, + "output": 58, + "reasoning": 0, + "cache": { + "write": 0, + "read": 127360 + } + }, + "cost": 0.00057391, + "id": "prt_fabf7b646001pFf634REXrD3xA", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf7a7d20011ZSU68RTQHOYPF" + } + ] + }, + { + "info": { + "role": "user", + "time": { + "created": 1785296694969 + }, + "agent": "build", + "model": { + "providerID": "deepseek", + "modelID": "deepseek-v4-pro" + }, + "summary": { + "diffs": [ + { + "file": "src/main.cpp", + "patch": "Index: src/main.cpp\n===================================================================\n--- src/main.cpp\t\n+++ src/main.cpp\t\n@@ -1,569 +1,572 @@\n #include \"config.hpp\"\n #include \"bytetrack.hpp\"\n #include \"batch_store.hpp\"\n #include \"csv_logger.hpp\"\n #include \"rknn_yolo.hpp\"\n #include \"drawing.hpp\"\n #include \"nms.hpp\"\n #include \"version.hpp\"\n #include \"video_writer.hpp\"\n \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n \n static std::atomic shutdown_requested{false};\n \n static void signal_handler(int) {\n shutdown_requested = true;\n std::cout << \"\\nShutdown requested — finishing current frame...\" << std::endl;\n }\n \n static std::string now_str() {\n auto now = std::chrono::system_clock::now();\n auto t = std::chrono::system_clock::to_time_t(now);\n std::ostringstream ss;\n ss << std::put_time(std::localtime(&t), \"%Y-%m-%d %H:%M:%S\");\n return ss.str();\n }\n \n static cv::VideoCapture open_capture(const std::string& source) {\n bool is_live = source.substr(0, 7) == \"rtsp://\" || source.substr(0, 7) == \"http://\";\n if (is_live) {\n setenv(\"OPENCV_FFMPEG_CAPTURE_OPTIONS\", g_config.rtsp_ffmpeg_options.c_str(), 1);\n }\n cv::VideoCapture cap(source, cv::CAP_FFMPEG);\n cap.set(cv::CAP_PROP_BUFFERSIZE, 1);\n return cap;\n }\n \n static void warmup_stream(cv::VideoCapture& cap, int n) {\n std::cout << \"Warming up stream...\" << std::endl;\n cv::Mat frame;\n for (int i = 0; i < n; ++i) cap.read(frame);\n std::cout << \"Stream ready!\" << std::endl;\n }\n \n static bool connect_stream(cv::VideoCapture& cap, int& w, int& h, double& fps) {\n bool is_live = g_config.source.substr(0, 7) == \"rtsp://\" ||\n g_config.source.substr(0, 7) == \"http://\";\n int attempts = 0;\n while (!shutdown_requested) {\n cap = open_capture(g_config.source);\n if (cap.isOpened()) break;\n attempts++;\n if (g_config.max_reconnect_attempts > 0 && attempts >= g_config.max_reconnect_attempts) {\n std::cerr << \"Cannot open source after \" << attempts\n << \" attempts: \" << g_config.source << std::endl;\n return false;\n }\n std::cout << \"Cannot open source, retry in \" << g_config.reconnect_delay_sec\n << \"s...\" << std::endl;\n std::this_thread::sleep_for(std::chrono::seconds(g_config.reconnect_delay_sec));\n }\n if (shutdown_requested) return false;\n \n if (is_live && g_config.warmup_frames > 0)\n warmup_stream(cap, g_config.warmup_frames);\n \n w = static_cast(cap.get(cv::CAP_PROP_FRAME_WIDTH));\n h = static_cast(cap.get(cv::CAP_PROP_FRAME_HEIGHT));\n fps = cap.get(cv::CAP_PROP_FPS);\n if (fps <= 1) fps = g_config.output_fps;\n return true;\n }\n \n struct TrackedInfo {\n float cx;\n std::chrono::steady_clock::time_point ts;\n };\n \n static void prune_stale_tracks(std::unordered_map& tracked, double prune_sec) {\n auto now = std::chrono::steady_clock::now();\n std::vector stale;\n for (auto& [tid, info] : tracked) {\n auto age = std::chrono::duration_cast(now - info.ts).count();\n if (age > prune_sec) stale.push_back(tid);\n }\n for (int tid : stale) tracked.erase(tid);\n }\n \n int main(int argc, char* argv[]) {\n signal(SIGINT, signal_handler);\n signal(SIGTERM, signal_handler);\n \n if (argc < 2) {\n std::cout << \"ByteTrack Counter (C++)\" << std::endl;\n std::cout << \"Version: \" << version::GIT_COMMIT\n << \" | branch: \" << version::GIT_BRANCH\n << \" | built: \" << version::BUILD_DATE << \" \" << version::BUILD_TIME\n << \" | rknn: \" << (version::BUILD_RKNN ? \"ON\" : \"OFF\");\n if (!version::GIT_TAG.empty())\n std::cout << \" | tag: \" << version::GIT_TAG;\n std::cout << std::endl;\n std::cout << \"Usage: bytetrack-counter \" << std::endl;\n std::cout << \" config.env path to environment configuration file (required)\" << std::endl;\n return 1;\n }\n \n g_config.load_from_env(argv[1]);\n \n std::cout << \"Starting ByteTrack Counter (C++)\" << std::endl;\n std::cout << \"Version: \" << version::GIT_COMMIT\n << \" | branch: \" << version::GIT_BRANCH\n << \" | built: \" << version::BUILD_DATE << \" \" << version::BUILD_TIME\n << \" | rknn: \" << (version::BUILD_RKNN ? \"ON\" : \"OFF\");\n if (!version::GIT_TAG.empty())\n std::cout << \" | tag: \" << version::GIT_TAG;\n std::cout << std::endl;\n std::cout << \"Camera: \" << g_config.camera_name << std::endl;\n std::cout << \"Source: \" << g_config.source << std::endl;\n std::cout << \"Model: \" << g_config.model_path << \" | imgsz=\" << g_config.imgsz\n << \" | core_mask=\" << g_config.core_mask << std::endl;\n std::cout << \"DB: \" << g_config.db_path << std::endl;\n std::cout << \"State: \" << g_config.state_file << std::endl;\n std::cout << \"ByteTrack Index 0: high_thresh=\" << g_config.track_high_thresh_0\n << \" low_thresh=\" << g_config.track_low_thresh_0\n << \" match_thresh=\" << g_config.track_match_thresh_0\n << \" buffer=\" << g_config.track_buffer_0\n << \" min_hits=\" << g_config.track_min_hits_0 << std::endl;\n std::cout << \"ByteTrack Index 1: high_thresh=\" << g_config.track_high_thresh_1\n << \" low_thresh=\" << g_config.track_low_thresh_1\n << \" match_thresh=\" << g_config.track_match_thresh_1\n << \" buffer=\" << g_config.track_buffer_1\n << \" min_hits=\" << g_config.track_min_hits_1 << std::endl;\n \n if (g_config.live_stream_enabled) {\n std::filesystem::path live_p(g_config.live_stream_frame_path);\n if (live_p.has_parent_path())\n std::filesystem::create_directories(live_p.parent_path());\n }\n \n int class_ayam = g_config.ayam_class_id;\n int class_talenan = g_config.talenan_class_id;\n \n auto logger = [](const std::string& msg) {\n std::cout << \"[\" << now_str() << \"] \" << msg << std::endl;\n };\n \n BatchStore store(g_config.db_path, g_config.state_file,\n g_config.camera_name, g_config.object_label,\n g_config.daily_cutoff_time,\n g_config.batch_timeout_seconds,\n g_config.ignore_batch_label_timeout,\n g_config.min_object_per_batch,\n g_config.min_duration_per_batch,\n logger);\n store.start_cutoff_watcher();\n \n std::unique_ptr cross_logger;\n if (g_config.export_csv) {\n cross_logger = std::make_unique(g_config.cross_csv,\n std::vector{\"batch\", \"frame\", \"timestamp\", \"chicken_id\"});\n }\n \n RKNNYOLO model(g_config.model_path, g_config.core_mask,\n g_config.imgsz, g_config.conf, 0.45f,\n g_config.num_classes, 0, g_config.score_sigmoid);\n if (!model.is_loaded()) {\n std::cerr << \"ERROR: Failed to load model: \" << g_config.model_path\n << std::endl;\n return 1;\n }\n \n ByteTracker ayam_tracker(g_config.track_high_thresh_0, g_config.track_low_thresh_0,\n g_config.track_match_thresh_0, g_config.track_buffer_0,\n g_config.track_min_hits_0);\n ByteTracker talenan_tracker(g_config.track_high_thresh_1, g_config.track_low_thresh_1,\n g_config.track_match_thresh_1, g_config.track_buffer_1,\n g_config.track_min_hits_1);\n \n std::unordered_set ayam_line_crossed;\n std::unordered_set talenan_line_crossed;\n \n std::unordered_map ayam_cross_flash;\n std::unordered_map talenan_cross_flash;\n int line_pulse = 0, count_pulse = 0, batch_pulse = 0;\n std::vector popups;\n std::deque crossing_times;\n \n auto session_start = std::chrono::steady_clock::now();\n int frame_idx = 0;\n float inf_ema = 0.0f;\n \n std::string model_name = g_config.model_path;\n auto slash = model_name.find_last_of(\"/\\\\\");\n if (slash != std::string::npos) model_name = model_name.substr(slash + 1);\n \n cv::VideoCapture cap;\n int w, h;\n double fps_prop;\n \n if (!connect_stream(cap, w, h, fps_prop)) {\n store.shutdown();\n return shutdown_requested ? 0 : 1;\n }\n bool is_live = g_config.source.substr(0, 7) == \"rtsp://\" ||\n g_config.source.substr(0, 7) == \"http://\";\n \n int line_x = resolve_line_x(w, g_config.line_x, g_config.line_x_frac);\n \n std::cout << \"RKNN+ByteTrack counter | \" << w << \"x\" << h << \" @ \"\n << fps_prop << \"fps | line x=\" << line_x\n << \" | cross=\" << g_config.cross_direction << std::endl;\n \n std::unique_ptr video_writer;\n if (g_config.record_video) {\n video_writer = std::make_unique(\n g_config.record_shm_dir, g_config.output_dir,\n w, h, static_cast(fps_prop),\n g_config.record_delay_seconds,\n g_config.record_end_delay_seconds,\n g_config.record_retention_days);\n auto* vw = video_writer.get();\n store.set_batch_closed_callback([vw](int bn) { vw->on_batch_closed(bn); });\n }\n \n int reconnect_count = 0;\n \n std::unordered_map ayam_tracked;\n std::unordered_map talenan_tracked;\n cv::Mat prev_gray;\n \n while (!shutdown_requested) {\n cv::Mat frame;\n cap >> frame;\n if (frame.empty()) {\n if (!is_live) break;\n reconnect_count++;\n std::cout << \"Stream dropped (attempt \" << reconnect_count\n << \"), reconnecting...\" << std::endl;\n cap.release();\n std::this_thread::sleep_for(std::chrono::seconds(g_config.reconnect_delay_sec));\n if (!connect_stream(cap, w, h, fps_prop)) break;\n line_x = resolve_line_x(w, g_config.line_x, g_config.line_x_frac);\n continue;\n }\n \n auto elapsed_sec = std::chrono::duration(\n std::chrono::steady_clock::now() - session_start).count();\n auto mono = std::chrono::steady_clock::now();\n \n- if (g_config.reset_counters_at_cutoff && store.check_cutoff_reset()) {\n- std::cout << \"[\" << now_str() << \"] Cutoff reset — resetting frame + tracker counters\" << std::endl;\n- frame_idx = 0;\n- KalmanBoxTracker::count = 0;\n- ayam_tracker.reset();\n- talenan_tracker.reset();\n- ayam_tracked.clear();\n- talenan_tracked.clear();\n- ayam_line_crossed.clear();\n- talenan_line_crossed.clear();\n- ayam_cross_flash.clear();\n- talenan_cross_flash.clear();\n- crossing_times.clear();\n- line_pulse = 0;\n- count_pulse = 0;\n- batch_pulse = 0;\n+ if (store.check_cutoff_reset()) {\n+ if (g_config.reset_counters_at_cutoff) {\n+ std::cout << \"[\" << now_str() << \"] Cutoff reset — resetting frame + tracker counters\" << std::endl;\n+ frame_idx = 0;\n+ KalmanBoxTracker::count = 0;\n+ ayam_tracker.reset();\n+ talenan_tracker.reset();\n+ ayam_tracked.clear();\n+ talenan_tracked.clear();\n+ ayam_line_crossed.clear();\n+ talenan_line_crossed.clear();\n+ ayam_cross_flash.clear();\n+ talenan_cross_flash.clear();\n+ crossing_times.clear();\n+ line_pulse = 0;\n+ count_pulse = 0;\n+ batch_pulse = 0;\n+ }\n+ if (video_writer) video_writer->cleanup_retention();\n }\n \n bool ayam_crossed_frame = false, batch_closed_frame = false, batch_started_frame = false;\n \n bool skip_inference = false;\n if (g_config.motion_detection_enabled) {\n cv::Mat gray;\n cv::cvtColor(frame, gray, cv::COLOR_BGR2GRAY);\n if (!prev_gray.empty()) {\n cv::Mat diff;\n cv::absdiff(gray, prev_gray, diff);\n double mean_diff = cv::mean(diff)[0];\n skip_inference = (mean_diff < g_config.motion_threshold);\n }\n prev_gray = gray;\n if (!skip_inference && video_writer) video_writer->note_motion();\n } else {\n if (video_writer) video_writer->note_motion();\n }\n \n std::vector detections;\n float inf_ms = 0.0f;\n if (!skip_inference) {\n auto inf_start = std::chrono::steady_clock::now();\n detections = model(frame);\n inf_ms = std::chrono::duration(\n std::chrono::steady_clock::now() - inf_start).count();\n }\n inf_ema = inf_ema * 0.9f + inf_ms * 0.1f;\n \n if (!detections.empty()) {\n std::vector ayam_boxes, talenan_boxes;\n std::vector ayam_scores, talenan_scores;\n std::vector ayam_cx_list, talenan_cx_list;\n std::vector>> ayam_kpts_list;\n \n for (const auto& det : detections) {\n const auto& bbox = det.bbox;\n float cx = (bbox(0) + bbox(2)) / 2.0f;\n \n if (det.cls == class_talenan) {\n talenan_boxes.push_back(bbox);\n talenan_scores.push_back(det.score);\n talenan_cx_list.push_back(cx);\n } else if (det.cls == class_ayam) {\n ayam_boxes.push_back(bbox);\n ayam_scores.push_back(det.score);\n ayam_cx_list.push_back(cx);\n ayam_kpts_list.push_back(det.keypoints);\n }\n }\n \n int na = static_cast(ayam_boxes.size());\n int nt = static_cast(talenan_boxes.size());\n \n if (na > 0) store.ping_activity();\n \n Eigen::MatrixXf ayam_mat(na, 4), talenan_mat(nt, 4);\n Eigen::VectorXf ayam_scores_vec(na), talenan_scores_vec(nt);\n \n for (int i = 0; i < na; ++i) {\n ayam_mat.row(i) = ayam_boxes[i];\n ayam_scores_vec(i) = ayam_scores[i];\n }\n for (int i = 0; i < nt; ++i) {\n talenan_mat.row(i) = talenan_boxes[i];\n talenan_scores_vec(i) = talenan_scores[i];\n }\n \n // Apply NMS per-class to suppress duplicate boxes\n if (na > 0) {\n if (video_writer) video_writer->note_ayam_detection();\n auto keep = nms(ayam_mat, ayam_scores_vec);\n int nk = static_cast(keep.size());\n Eigen::MatrixXf fm(nk, 4);\n Eigen::VectorXf fs(nk);\n std::vector fb;\n std::vector fcx;\n std::vector>> fkpts;\n for (int ki = 0; ki < nk; ++ki) {\n int idx = keep[ki];\n fm.row(ki) = ayam_mat.row(idx);\n fs(ki) = ayam_scores_vec(idx);\n fb.push_back(ayam_boxes[idx]);\n fcx.push_back(ayam_cx_list[idx]);\n if (idx < (int)ayam_kpts_list.size())\n fkpts.push_back(ayam_kpts_list[idx]);\n }\n na = nk;\n ayam_mat = std::move(fm);\n ayam_scores_vec = std::move(fs);\n ayam_boxes = std::move(fb);\n ayam_cx_list = std::move(fcx);\n ayam_kpts_list = std::move(fkpts);\n }\n if (nt > 0) {\n auto keep = nms(talenan_mat, talenan_scores_vec);\n int nk = static_cast(keep.size());\n Eigen::MatrixXf fm(nk, 4);\n Eigen::VectorXf fs(nk);\n std::vector fb;\n std::vector fcx;\n for (int ki = 0; ki < nk; ++ki) {\n int idx = keep[ki];\n fm.row(ki) = talenan_mat.row(idx);\n fs(ki) = talenan_scores_vec(idx);\n fb.push_back(talenan_boxes[idx]);\n fcx.push_back(talenan_cx_list[idx]);\n }\n nt = nk;\n talenan_mat = std::move(fm);\n talenan_scores_vec = std::move(fs);\n talenan_boxes = std::move(fb);\n talenan_cx_list = std::move(fcx);\n }\n \n TrackResult ayam_tr = ayam_tracker.update(ayam_mat, ayam_scores_vec);\n TrackResult talenan_tr = talenan_tracker.update(talenan_mat, talenan_scores_vec);\n \n // Process talenan crossings\n for (int di = 0; di < nt; ++di) {\n auto it = talenan_tr.det_to_track.find(di);\n if (it == talenan_tr.det_to_track.end()) continue;\n int tid = it->second;\n float cx = talenan_cx_list[di];\n \n auto tit = talenan_tracked.find(tid);\n if (tit != talenan_tracked.end()) {\n float prev_cx = tit->second.cx;\n if (crossed_line(prev_cx, cx, line_x, g_config.cross_direction) &&\n talenan_line_crossed.find(tid) == talenan_line_crossed.end()) {\n talenan_line_crossed.insert(tid);\n if (store.record_talenan_crossing(tid, talenan_scores_vec(di))) {\n batch_closed_frame = true;\n talenan_cross_flash[tid] = g_config.cross_flash_frames;\n popups.push_back({\n static_cast(cx) - 20,\n static_cast((talenan_boxes[di](1) + talenan_boxes[di](3)) / 2),\n frame_idx, \"BATCH CLOSED\"\n });\n }\n }\n }\n talenan_tracked[tid] = {cx, mono};\n }\n \n // Process ayam crossings\n for (int di = 0; di < na; ++di) {\n auto it = ayam_tr.det_to_track.find(di);\n if (it == ayam_tr.det_to_track.end()) continue;\n int tid = it->second;\n float cx = ayam_cx_list[di];\n \n auto tit = ayam_tracked.find(tid);\n if (tit != ayam_tracked.end()) {\n float prev_cx = tit->second.cx;\n if (crossed_line(prev_cx, cx, line_x, g_config.cross_direction) &&\n ayam_line_crossed.find(tid) == ayam_line_crossed.end()) {\n ayam_line_crossed.insert(tid);\n auto [count, started_new] = store.record_ayam_crossing(tid);\n std::cout << \"[\" << now_str() << \"] Batch #\" << store.current_batch_number() << \" | count: \" << count << \" | conf: \" << ayam_scores_vec(di) << std::endl;\n if (cross_logger) {\n std::ostringstream frame_str, tid_str;\n frame_str << frame_idx;\n tid_str << tid;\n cross_logger->write_row({\n std::to_string(store.current_batch_number()),\n frame_str.str(),\n now_str(),\n tid_str.str()\n });\n }\n ayam_crossed_frame = true;\n if (started_new) batch_started_frame = true;\n crossing_times.push_back(mono);\n ayam_cross_flash[tid] = g_config.cross_flash_frames;\n popups.push_back({\n static_cast(cx) - 12,\n static_cast((ayam_boxes[di](1) + ayam_boxes[di](3)) / 2),\n frame_idx, \"+1\"\n });\n }\n }\n ayam_tracked[tid] = {cx, mono};\n }\n \n // Track lost tracks for continuity\n for (auto& [tid, cx] : ayam_tr.lost_map) {\n if (ayam_tracked.find(tid) == ayam_tracked.end())\n ayam_tracked[tid] = {cx, mono};\n }\n \n if (video_writer) video_writer->feed_frame(frame);\n \n // Draw talenan\n for (int di = 0; di < nt; ++di) {\n auto it = talenan_tr.det_to_track.find(di);\n if (it == talenan_tr.det_to_track.end()) continue;\n int tid = it->second;\n const auto& bbox = talenan_boxes[di];\n int x1 = static_cast(bbox(0)), y1 = static_cast(bbox(1));\n int x2 = static_cast(bbox(2)), y2 = static_cast(bbox(3));\n int flash = talenan_cross_flash.count(tid) ? talenan_cross_flash[tid] : 0;\n cv::Scalar color = flash > 0 ? C_GREEN : C_TALENAN_BOX;\n cv::rectangle(frame, cv::Point(x1, y1), cv::Point(x2, y2), color, flash > 0 ? 3 : 2);\n draw_pill(frame, \"TALENAN \" + std::to_string(tid), x1, y1 - 4, color);\n }\n \n // Draw ayam\n for (int di = 0; di < na; ++di) {\n auto it = ayam_tr.det_to_track.find(di);\n if (it == ayam_tr.det_to_track.end()) continue;\n int tid = it->second;\n const auto& bbox = ayam_boxes[di];\n int x1 = static_cast(bbox(0)), y1 = static_cast(bbox(1));\n int x2 = static_cast(bbox(2)), y2 = static_cast(bbox(3));\n int flash = ayam_cross_flash.count(tid) ? ayam_cross_flash[tid] : 0;\n cv::Scalar color = flash > 0 ? C_GREEN : C_AYAM_BOX;\n cv::rectangle(frame, cv::Point(x1, y1), cv::Point(x2, y2), color, flash > 0 ? 3 : 2);\n draw_pill(frame, \"ID \" + std::to_string(tid), x1, y1 - 4, color);\n if (di < (int)ayam_kpts_list.size() && !ayam_kpts_list[di].empty())\n draw_skeleton_bold(frame, ayam_kpts_list[di]);\n }\n }\n \n if (ayam_crossed_frame) {\n line_pulse = g_config.line_pulse_frames;\n count_pulse = g_config.count_pulse_frames;\n }\n if (batch_closed_frame) {\n line_pulse = g_config.line_pulse_frames;\n }\n if (batch_started_frame) {\n batch_pulse = g_config.batch_pulse_frames;\n }\n \n int batch_num = store.current_batch_number();\n int batch_count = store.current_batch_count();\n int display_total = store.display_total();\n \n while (!crossing_times.empty() &&\n std::chrono::duration(mono - crossing_times.front()).count() > g_config.rate_window_sec)\n crossing_times.pop_front();\n double rate = crossing_times.empty() ? 0.0 :\n (crossing_times.size() / static_cast(g_config.rate_window_sec) * 60.0);\n \n draw_elegant_counting_line(frame, line_x, h, line_pulse);\n draw_hero_count(frame, line_x, h, batch_count, count_pulse);\n draw_hud(frame, w, batch_num, batch_count, display_total,\n elapsed_sec, rate);\n draw_batch_banner(frame, w, batch_num, batch_pulse);\n draw_footer(frame, w, h, frame_idx, is_live ? \"LIVE\" : \"FILE\", inf_ema, model_name);\n popups = draw_popups(frame, popups, frame_idx);\n \n // Flash decay\n for (auto& flash_map : {&ayam_cross_flash, &talenan_cross_flash}) {\n for (auto it = flash_map->begin(); it != flash_map->end(); ) {\n it->second--;\n if (it->second <= 0) it = flash_map->erase(it);\n else ++it;\n }\n }\n line_pulse = std::max(0, line_pulse - 1);\n count_pulse = std::max(0, count_pulse - 1);\n batch_pulse = std::max(0, batch_pulse - 1);\n \n if (g_config.live_stream_enabled && frame_idx % g_config.live_stream_every_n == 0) {\n try {\n std::filesystem::path p(g_config.live_stream_frame_path);\n if (p.has_parent_path())\n std::filesystem::create_directories(p.parent_path());\n std::vector jpeg;\n cv::imencode(\".jpg\", frame, jpeg,\n {cv::IMWRITE_JPEG_QUALITY, g_config.live_stream_quality});\n std::ofstream f(g_config.live_stream_frame_path, std::ios::binary);\n f.write(reinterpret_cast(jpeg.data()), jpeg.size());\n } catch (...) {}\n }\n \n frame_idx++;\n \n prune_stale_tracks(ayam_tracked, g_config.tracked_prune_sec);\n prune_stale_tracks(talenan_tracked, g_config.tracked_prune_sec);\n }\n \n cap.release();\n if (video_writer) video_writer->shutdown();\n store.shutdown();\n \n std::cout << \"\\n=== Batch Summary (SQLite) ===\" << std::endl;\n std::cout << \"Database: \" << g_config.db_path << std::endl;\n \n return 0;\n }\n", + "additions": 19, + "deletions": 16, + "status": "modified" + }, + { + "file": "src/video_writer.cpp", + "patch": "Index: src/video_writer.cpp\n===================================================================\n--- src/video_writer.cpp\t\n+++ src/video_writer.cpp\t\n@@ -1,214 +1,218 @@\n #include \"video_writer.hpp\"\n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n \n namespace fs = std::filesystem;\n \n VideoBatchWriter::VideoBatchWriter(const std::string& shm_dir,\n const std::string& output_dir,\n int w, int h, int fps,\n float delay_sec,\n float end_delay_sec,\n int retention_days)\n : shm_dir_(shm_dir), output_dir_(output_dir),\n w_(w), h_(h), fps_(fps),\n delay_sec_(delay_sec), end_delay_sec_(end_delay_sec),\n retention_days_(retention_days)\n {\n ensure_dir(shm_dir_);\n ensure_dir(output_dir_);\n \n for (const auto& entry : fs::directory_iterator(shm_dir_)) {\n if (entry.path().extension() == \".mp4\") {\n fs::remove(entry.path());\n }\n }\n \n+ cleanup_retention();\n+}\n+\n+VideoBatchWriter::~VideoBatchWriter() {\n+ shutdown();\n+}\n+\n+void VideoBatchWriter::cleanup_retention() {\n auto cutoff = std::chrono::system_clock::now() - std::chrono::hours(retention_days_ * 24);\n auto cutoff_t = std::chrono::system_clock::to_time_t(cutoff);\n std::ostringstream cutoff_ss;\n cutoff_ss << std::put_time(std::gmtime(&cutoff_t), \"%Y-%m-%d\");\n std::string cutoff_str = cutoff_ss.str();\n \n for (const auto& entry : fs::directory_iterator(output_dir_)) {\n if (!entry.is_directory()) continue;\n std::string dirname = entry.path().filename().string();\n if (dirname < cutoff_str) {\n std::error_code ec;\n fs::remove_all(entry.path(), ec);\n }\n }\n }\n \n-VideoBatchWriter::~VideoBatchWriter() {\n- shutdown();\n-}\n-\n void VideoBatchWriter::ensure_dir(const std::string& dir) {\n fs::create_directories(dir);\n }\n \n static std::string today_str() {\n auto t = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now());\n std::ostringstream ss;\n ss << std::put_time(std::localtime(&t), \"%Y-%m-%d\");\n return ss.str();\n }\n \n static std::string timestamp_str() {\n auto t = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now());\n std::ostringstream ss;\n ss << std::put_time(std::localtime(&t), \"%H%M%S\");\n return ss.str();\n }\n \n void VideoBatchWriter::note_motion() {\n if (state_ == IDLE) {\n start_recording();\n state_ = SPECULATING;\n state_start_ = std::chrono::steady_clock::now();\n }\n }\n \n void VideoBatchWriter::note_ayam_detection() {\n if (state_ == SPECULATING) {\n state_ = CONFIRMED;\n }\n }\n \n void VideoBatchWriter::on_batch_closed(int batch_number) {\n current_batch_ = batch_number;\n if (state_ == CONFIRMED) {\n state_ = STOPPING;\n state_start_ = std::chrono::steady_clock::now();\n }\n }\n \n void VideoBatchWriter::feed_frame(const cv::Mat& raw) {\n auto now = std::chrono::steady_clock::now();\n \n if (state_ == SPECULATING) {\n float elapsed = std::chrono::duration(now - state_start_).count();\n if (elapsed >= delay_sec_) {\n stop_and_delete();\n state_ = IDLE;\n return;\n }\n }\n \n if (state_ == STOPPING) {\n float elapsed = std::chrono::duration(now - state_start_).count();\n if (elapsed >= end_delay_sec_) {\n stop_and_move(current_batch_);\n state_ = IDLE;\n return;\n }\n }\n \n if (state_ != IDLE && writer_.isOpened()) {\n writer_.write(raw);\n }\n }\n \n void VideoBatchWriter::start_recording() {\n if (writer_.isOpened()) writer_.release();\n \n auto t = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now());\n std::ostringstream name;\n name << \"batch_pending_\"\n << std::put_time(std::localtime(&t), \"%Y%m%d_%H%M%S\") << \".mp4\";\n current_path_ = shm_dir_ + \"/\" + name.str();\n \n writer_.open(current_path_,\n cv::VideoWriter::fourcc('a','v','c','1'),\n fps_, cv::Size(w_, h_));\n \n if (writer_.isOpened()) {\n std::cout << \"[RECORD] Speculating: \" << current_path_ << std::endl;\n } else {\n std::cerr << \"[RECORD] Failed to open: \" << current_path_ << std::endl;\n }\n }\n \n static void copy_and_clean(const std::string& src, const std::string& dst) {\n if (src.empty() || dst.empty()) return;\n {\n std::ifstream ifs(src, std::ios::binary);\n if (ifs) {\n std::ofstream ofs(dst, std::ios::binary);\n ofs << ifs.rdbuf();\n ofs.flush();\n }\n }\n std::error_code ec;\n fs::remove(src, ec);\n }\n \n void VideoBatchWriter::stop_and_delete() {\n if (writer_.isOpened()) {\n writer_.release();\n }\n if (!current_path_.empty()) {\n std::cout << \"[RECORD] Discarding: \" << current_path_ << std::endl;\n std::error_code ec;\n fs::remove(current_path_, ec);\n current_path_.clear();\n }\n }\n \n void VideoBatchWriter::stop_and_move(int batch_number) {\n if (writer_.isOpened()) {\n writer_.release();\n std::cout << \"[RECORD] Stopped: \" << current_path_ << std::endl;\n }\n \n std::string src = current_path_;\n current_path_.clear();\n \n std::string day_dir = output_dir_ + \"/\" + today_str();\n ensure_dir(day_dir);\n \n std::ostringstream name;\n name << \"batch_\" << batch_number << \"_\" << timestamp_str() << \".mp4\";\n std::string dst = day_dir + \"/\" + name.str();\n \n pid_t pid = fork();\n if (pid == 0) {\n close(STDIN_FILENO);\n close(STDOUT_FILENO);\n close(STDERR_FILENO);\n copy_and_clean(src, dst);\n _exit(0);\n }\n }\n \n void VideoBatchWriter::shutdown() {\n if (writer_.isOpened()) {\n writer_.release();\n }\n state_ = IDLE;\n \n if (!current_path_.empty()) {\n std::string src = current_path_;\n std::string day_dir = output_dir_ + \"/\" + today_str();\n ensure_dir(day_dir);\n std::string dst = day_dir + \"/\" +\n fs::path(current_path_).filename().string();\n current_path_.clear();\n \n pid_t pid = fork();\n if (pid == 0) {\n close(STDIN_FILENO);\n close(STDOUT_FILENO);\n close(STDERR_FILENO);\n copy_and_clean(src, dst);\n _exit(0);\n }\n }\n }\n", + "additions": 8, + "deletions": 4, + "status": "modified" + }, + { + "file": "src/video_writer.hpp", + "patch": "Index: src/video_writer.hpp\n===================================================================\n--- src/video_writer.hpp\t\n+++ src/video_writer.hpp\t\n@@ -1,43 +1,44 @@\n #pragma once\n #include \n #include \n #include \n \n class VideoBatchWriter {\n public:\n VideoBatchWriter(const std::string& shm_dir,\n const std::string& output_dir,\n int w, int h, int fps,\n float delay_sec,\n float end_delay_sec,\n int retention_days);\n \n ~VideoBatchWriter();\n \n void note_motion();\n void note_ayam_detection();\n void on_batch_closed(int batch_number);\n void feed_frame(const cv::Mat& raw);\n+ void cleanup_retention();\n void shutdown();\n \n private:\n void start_recording();\n void stop_and_delete();\n void stop_and_move(int batch_number);\n void ensure_dir(const std::string& dir);\n \n enum State { IDLE, SPECULATING, CONFIRMED, STOPPING };\n \n std::string shm_dir_;\n std::string output_dir_;\n int w_, h_, fps_;\n float delay_sec_;\n float end_delay_sec_;\n int retention_days_;\n \n State state_ = IDLE;\n std::chrono::steady_clock::time_point state_start_;\n cv::VideoWriter writer_;\n std::string current_path_;\n int current_batch_ = 0;\n };\n", + "additions": 1, + "deletions": 0, + "status": "modified" + } + ] + }, + "id": "msg_fabf9aeb9001dypk6qUWHzxrAT", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "type": "text", + "text": "evaluate retention every startup and every CUTOFF_TIME", + "id": "prt_fabf9aebc001FC2RJlEI1WA8Qx", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9aeb9001dypk6qUWHzxrAT" + } + ] + }, + { + "info": { + "parentID": "msg_fabf9aeb9001dypk6qUWHzxrAT", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000722709, + "tokens": { + "total": 127831, + "input": 87, + "output": 126, + "reasoning": 130, + "cache": { + "write": 0, + "read": 127488 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296695033, + "completed": 1785296701621 + }, + "finish": "tool-calls", + "id": "msg_fabf9aef90019J4h8bNF8rSno3", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "9131e58ecaf312abe46da6b0ce3cd5d536ead7b4", + "type": "step-start", + "id": "prt_fabf9b501001f8WsXM5en2LJPc", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9aef90019J4h8bNF8rSno3" + }, + { + "type": "reasoning", + "text": "The user wants retention cleanup to run not just on startup (constructor), but also every time the daily cutoff is reached. The cutoff is managed by `BatchStore` which calls `end_batch_locked(\"cutoff\")` and sets `cutoff_triggered_`. \n\nIn main.cpp, there's `store.check_cutoff_reset()` which returns true when cutoff was triggered. I can hook retention cleanup there.\n\nLet me add a public method `cleanup_retention()` to VideoBatchWriter, and call it from main.cpp when cutoff is detected.\n\nI also need to move the retention cleanup logic into a reusable method.", + "time": { + "start": 1785296697190, + "end": 1785296700253 + }, + "id": "prt_fabf9b766001yEbaYdYzg2acQw", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9aef90019J4h8bNF8rSno3" + }, + { + "type": "tool", + "tool": "edit", + "callID": "call_00_HWjz0oYRSQXslNcjkBAS1103", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/video_writer.hpp", + "newString": " void feed_frame(const cv::Mat& raw);\n void cleanup_retention();\n void shutdown();", + "oldString": " void feed_frame(const cv::Mat& raw);\n void shutdown();" + }, + "output": "Edit applied successfully.", + "metadata": { + "diagnostics": {}, + "diff": "Index: /opt/bytetrack-counter-cpp/src/video_writer.hpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/video_writer.hpp\n+++ /opt/bytetrack-counter-cpp/src/video_writer.hpp\n@@ -17,8 +17,9 @@\n void note_motion();\n void note_ayam_detection();\n void on_batch_closed(int batch_number);\n void feed_frame(const cv::Mat& raw);\n+ void cleanup_retention();\n void shutdown();\n \n private:\n void start_recording();\n", + "filediff": { + "file": "/opt/bytetrack-counter-cpp/src/video_writer.hpp", + "patch": "Index: /opt/bytetrack-counter-cpp/src/video_writer.hpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/video_writer.hpp\n+++ /opt/bytetrack-counter-cpp/src/video_writer.hpp\n@@ -17,8 +17,9 @@\n void note_motion();\n void note_ayam_detection();\n void on_batch_closed(int batch_number);\n void feed_frame(const cv::Mat& raw);\n+ void cleanup_retention();\n void shutdown();\n \n private:\n void start_recording();\n", + "additions": 1, + "deletions": 0 + }, + "truncated": false + }, + "title": "src/video_writer.hpp", + "time": { + "start": 1785296701292, + "end": 1785296701299 + } + }, + "id": "prt_fabf9c362001d7mxyeWmGIRfKM", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9aef90019J4h8bNF8rSno3" + }, + { + "reason": "tool-calls", + "snapshot": "e6a8da335f843eea57993e5d73587134685c8779", + "type": "step-finish", + "tokens": { + "total": 127831, + "input": 87, + "output": 126, + "reasoning": 130, + "cache": { + "write": 0, + "read": 127488 + } + }, + "cost": 0.000722709, + "id": "prt_fabf9c829001wvv3mIMdWOgrua", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9aef90019J4h8bNF8rSno3" + }, + { + "type": "patch", + "hash": "9131e58ecaf312abe46da6b0ce3cd5d536ead7b4", + "files": [ + "/opt/bytetrack-counter-cpp/src/video_writer.hpp" + ], + "id": "prt_fabf9c8af001yV4JrvZjMU5SEM", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9aef90019J4h8bNF8rSno3" + } + ] + }, + { + "info": { + "parentID": "msg_fabf9aeb9001dypk6qUWHzxrAT", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000795412, + "tokens": { + "total": 128177, + "input": 102, + "output": 301, + "reasoning": 30, + "cache": { + "write": 0, + "read": 127744 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296701658, + "completed": 1785296707738 + }, + "finish": "tool-calls", + "id": "msg_fabf9c8da001Ps9GPJ5wCwWj5G", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "e6a8da335f843eea57993e5d73587134685c8779", + "type": "step-start", + "id": "prt_fabf9cea5001CVwx6IPcBtz43S", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9c8da001Ps9GPJ5wCwWj5G" + }, + { + "type": "reasoning", + "text": "Now in video_writer.cpp, extract the retention cleanup into the public `cleanup_retention()` method and call it from the constructor too.", + "time": { + "start": 1785296703920, + "end": 1785296704832 + }, + "id": "prt_fabf9d1b0001BxglBFZxLrJUnD", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9c8da001Ps9GPJ5wCwWj5G" + }, + { + "type": "tool", + "tool": "edit", + "callID": "call_00_4YfVQdGeuF454LRLboRy5566", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/video_writer.cpp", + "newString": " ensure_dir(shm_dir_);\n ensure_dir(output_dir_);\n\n for (const auto& entry : fs::directory_iterator(shm_dir_)) {\n if (entry.path().extension() == \".mp4\") {\n fs::remove(entry.path());\n }\n }\n\n cleanup_retention();\n}\n\nVideoBatchWriter::~VideoBatchWriter() {\n shutdown();\n}\n\nvoid VideoBatchWriter::cleanup_retention() {\n auto cutoff = std::chrono::system_clock::now() - std::chrono::hours(retention_days_ * 24);", + "oldString": " ensure_dir(shm_dir_);\n ensure_dir(output_dir_);\n\n for (const auto& entry : fs::directory_iterator(shm_dir_)) {\n if (entry.path().extension() == \".mp4\") {\n fs::remove(entry.path());\n }\n }\n\n auto cutoff = std::chrono::system_clock::now() - std::chrono::hours(retention_days_ * 24);" + }, + "output": "Edit applied successfully.", + "metadata": { + "diagnostics": {}, + "diff": "Index: /opt/bytetrack-counter-cpp/src/video_writer.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/video_writer.cpp\n+++ /opt/bytetrack-counter-cpp/src/video_writer.cpp\n@@ -29,8 +29,16 @@\n fs::remove(entry.path());\n }\n }\n \n+ cleanup_retention();\n+}\n+\n+VideoBatchWriter::~VideoBatchWriter() {\n+ shutdown();\n+}\n+\n+void VideoBatchWriter::cleanup_retention() {\n auto cutoff = std::chrono::system_clock::now() - std::chrono::hours(retention_days_ * 24);\n auto cutoff_t = std::chrono::system_clock::to_time_t(cutoff);\n std::ostringstream cutoff_ss;\n cutoff_ss << std::put_time(std::gmtime(&cutoff_t), \"%Y-%m-%d\");\n", + "filediff": { + "file": "/opt/bytetrack-counter-cpp/src/video_writer.cpp", + "patch": "Index: /opt/bytetrack-counter-cpp/src/video_writer.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/video_writer.cpp\n+++ /opt/bytetrack-counter-cpp/src/video_writer.cpp\n@@ -29,8 +29,16 @@\n fs::remove(entry.path());\n }\n }\n \n+ cleanup_retention();\n+}\n+\n+VideoBatchWriter::~VideoBatchWriter() {\n+ shutdown();\n+}\n+\n+void VideoBatchWriter::cleanup_retention() {\n auto cutoff = std::chrono::system_clock::now() - std::chrono::hours(retention_days_ * 24);\n auto cutoff_t = std::chrono::system_clock::to_time_t(cutoff);\n std::ostringstream cutoff_ss;\n cutoff_ss << std::put_time(std::gmtime(&cutoff_t), \"%Y-%m-%d\");\n", + "additions": 8, + "deletions": 0 + }, + "truncated": false + }, + "title": "src/video_writer.cpp", + "time": { + "start": 1785296707484, + "end": 1785296707492 + } + }, + "id": "prt_fabf9d544001Xn6ije2dKBf1KX", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9c8da001Ps9GPJ5wCwWj5G" + }, + { + "reason": "tool-calls", + "snapshot": "1c39783bc5c35db8c86dcbafe18c24cbabd7c5c6", + "type": "step-finish", + "tokens": { + "total": 128177, + "input": 102, + "output": 301, + "reasoning": 30, + "cache": { + "write": 0, + "read": 127744 + } + }, + "cost": 0.000795412, + "id": "prt_fabf9e03c0017gp5upGmTiBXDP", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9c8da001Ps9GPJ5wCwWj5G" + }, + { + "type": "patch", + "hash": "e6a8da335f843eea57993e5d73587134685c8779", + "files": [ + "/opt/bytetrack-counter-cpp/src/video_writer.cpp" + ], + "id": "prt_fabf9e0960015ipwxSMtCrVc81", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9c8da001Ps9GPJ5wCwWj5G" + } + ] + }, + { + "info": { + "parentID": "msg_fabf9aeb9001dypk6qUWHzxrAT", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000591484, + "tokens": { + "total": 128306, + "input": 64, + "output": 89, + "reasoning": 25, + "cache": { + "write": 0, + "read": 128128 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296707796, + "completed": 1785296712024 + }, + "finish": "tool-calls", + "id": "msg_fabf9e0d4001ejVP1nSDP8EqP4", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "1c39783bc5c35db8c86dcbafe18c24cbabd7c5c6", + "type": "step-start", + "id": "prt_fabf9e6c7001029Eejhjjhhzor", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9e0d4001ejVP1nSDP8EqP4" + }, + { + "type": "reasoning", + "text": "Now I need to close the cleanup_retention function properly. Let me read the current state and add the closing brace.", + "time": { + "start": 1785296710140, + "end": 1785296710986 + }, + "id": "prt_fabf9e9fc001GyWWewl64wF78Z", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9e0d4001ejVP1nSDP8EqP4" + }, + { + "type": "tool", + "tool": "read", + "callID": "call_00_122jAYt8vbFy9JDzuf9z5311", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/video_writer.cpp", + "limit": 30, + "offset": 34 + }, + "output": "/opt/bytetrack-counter-cpp/src/video_writer.cpp\nfile\n\n34: }\n35: \n36: VideoBatchWriter::~VideoBatchWriter() {\n37: shutdown();\n38: }\n39: \n40: void VideoBatchWriter::cleanup_retention() {\n41: auto cutoff = std::chrono::system_clock::now() - std::chrono::hours(retention_days_ * 24);\n42: auto cutoff_t = std::chrono::system_clock::to_time_t(cutoff);\n43: std::ostringstream cutoff_ss;\n44: cutoff_ss << std::put_time(std::gmtime(&cutoff_t), \"%Y-%m-%d\");\n45: std::string cutoff_str = cutoff_ss.str();\n46: \n47: for (const auto& entry : fs::directory_iterator(output_dir_)) {\n48: if (!entry.is_directory()) continue;\n49: std::string dirname = entry.path().filename().string();\n50: if (dirname < cutoff_str) {\n51: std::error_code ec;\n52: fs::remove_all(entry.path(), ec);\n53: }\n54: }\n55: }\n56: \n57: VideoBatchWriter::~VideoBatchWriter() {\n58: shutdown();\n59: }\n60: \n61: void VideoBatchWriter::ensure_dir(const std::string& dir) {\n62: fs::create_directories(dir);\n63: }\n\n(Showing lines 34-63 of 222. Use offset=64 to continue.)\n", + "metadata": { + "preview": "}\n\nVideoBatchWriter::~VideoBatchWriter() {\n shutdown();\n}\n\nvoid VideoBatchWriter::cleanup_retention() {\n auto cutoff = std::chrono::system_clock::now() - std::chrono::hours(retention_days_ * 24);\n auto cutoff_t = std::chrono::system_clock::to_time_t(cutoff);\n std::ostringstream cutoff_ss;\n cutoff_ss << std::put_time(std::gmtime(&cutoff_t), \"%Y-%m-%d\");\n std::string cutoff_str = cutoff_ss.str();\n\n for (const auto& entry : fs::directory_iterator(output_dir_)) {\n if (!entry.is_directory()) continue;\n std::string dirname = entry.path().filename().string();\n if (dirname < cutoff_str) {\n std::error_code ec;\n fs::remove_all(entry.path(), ec);\n }", + "truncated": true, + "loaded": [], + "display": { + "type": "file", + "path": "/opt/bytetrack-counter-cpp/src/video_writer.cpp", + "text": "}\n\nVideoBatchWriter::~VideoBatchWriter() {\n shutdown();\n}\n\nvoid VideoBatchWriter::cleanup_retention() {\n auto cutoff = std::chrono::system_clock::now() - std::chrono::hours(retention_days_ * 24);\n auto cutoff_t = std::chrono::system_clock::to_time_t(cutoff);\n std::ostringstream cutoff_ss;\n cutoff_ss << std::put_time(std::gmtime(&cutoff_t), \"%Y-%m-%d\");\n std::string cutoff_str = cutoff_ss.str();\n\n for (const auto& entry : fs::directory_iterator(output_dir_)) {\n if (!entry.is_directory()) continue;\n std::string dirname = entry.path().filename().string();\n if (dirname < cutoff_str) {\n std::error_code ec;\n fs::remove_all(entry.path(), ec);\n }\n }\n}\n\nVideoBatchWriter::~VideoBatchWriter() {\n shutdown();\n}\n\nvoid VideoBatchWriter::ensure_dir(const std::string& dir) {\n fs::create_directories(dir);\n}", + "lineStart": 34, + "lineEnd": 63, + "totalLines": 222, + "truncated": true + } + }, + "title": "src/video_writer.cpp", + "time": { + "start": 1785296711633, + "end": 1785296711661 + } + }, + "id": "prt_fabf9ed510016EC11GfZTrYjX0", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9e0d4001ejVP1nSDP8EqP4" + }, + { + "reason": "tool-calls", + "snapshot": "1c39783bc5c35db8c86dcbafe18c24cbabd7c5c6", + "type": "step-finish", + "tokens": { + "total": 128306, + "input": 64, + "output": 89, + "reasoning": 25, + "cache": { + "write": 0, + "read": 128128 + } + }, + "cost": 0.000591484, + "id": "prt_fabf9f0f6001t2b33e3JsQxvCN", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9e0d4001ejVP1nSDP8EqP4" + } + ] + }, + { + "info": { + "parentID": "msg_fabf9aeb9001dypk6qUWHzxrAT", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000814668, + "tokens": { + "total": 128863, + "input": 410, + "output": 156, + "reasoning": 41, + "cache": { + "write": 0, + "read": 128256 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296712061, + "completed": 1785296718727 + }, + "finish": "tool-calls", + "id": "msg_fabf9f17d001Dvq7JGfOegbrU4", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "1c39783bc5c35db8c86dcbafe18c24cbabd7c5c6", + "type": "step-start", + "id": "prt_fabf9fc8a001RBy40uFXrltFHn", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9f17d001Dvq7JGfOegbrU4" + }, + { + "type": "reasoning", + "text": "There's a duplicate `VideoBatchWriter::~VideoBatchWriter()` on line 57! The edit replaced the constructor end with cleanup_retention but left the old destructor. Let me fix this.", + "time": { + "start": 1785296715430, + "end": 1785296716637 + }, + "id": "prt_fabf9fea6001HDizaoiKkmFcQ5", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9f17d001Dvq7JGfOegbrU4" + }, + { + "type": "tool", + "tool": "edit", + "callID": "call_00_G8PJmun1HetGEpHfiQHU0109", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/video_writer.cpp", + "newString": " }\n}\n\nvoid VideoBatchWriter::ensure_dir(const std::string& dir) {\n fs::create_directories(dir);\n}", + "oldString": " }\n}\n\nVideoBatchWriter::~VideoBatchWriter() {\n shutdown();\n}\n\nvoid VideoBatchWriter::ensure_dir(const std::string& dir) {\n fs::create_directories(dir);\n}" + }, + "output": "Edit applied successfully.", + "metadata": { + "diagnostics": {}, + "diff": "Index: /opt/bytetrack-counter-cpp/src/video_writer.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/video_writer.cpp\n+++ /opt/bytetrack-counter-cpp/src/video_writer.cpp\n@@ -53,12 +53,8 @@\n }\n }\n }\n \n-VideoBatchWriter::~VideoBatchWriter() {\n- shutdown();\n-}\n-\n void VideoBatchWriter::ensure_dir(const std::string& dir) {\n fs::create_directories(dir);\n }\n \n", + "filediff": { + "file": "/opt/bytetrack-counter-cpp/src/video_writer.cpp", + "patch": "Index: /opt/bytetrack-counter-cpp/src/video_writer.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/video_writer.cpp\n+++ /opt/bytetrack-counter-cpp/src/video_writer.cpp\n@@ -53,12 +53,8 @@\n }\n }\n }\n \n-VideoBatchWriter::~VideoBatchWriter() {\n- shutdown();\n-}\n-\n void VideoBatchWriter::ensure_dir(const std::string& dir) {\n fs::create_directories(dir);\n }\n \n", + "additions": 0, + "deletions": 4 + }, + "truncated": false + }, + "title": "src/video_writer.cpp", + "time": { + "start": 1785296718047, + "end": 1785296718074 + } + }, + "id": "prt_fabfa036b001rl1oUKkpyj8egu", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9f17d001Dvq7JGfOegbrU4" + }, + { + "reason": "tool-calls", + "snapshot": "104d592914ba683b51145143d84bc42e51fb0135", + "type": "step-finish", + "tokens": { + "total": 128863, + "input": 410, + "output": 156, + "reasoning": 41, + "cache": { + "write": 0, + "read": 128256 + } + }, + "cost": 0.000814668, + "id": "prt_fabfa0ab3001HkRBvkK8C6tMN9", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9f17d001Dvq7JGfOegbrU4" + }, + { + "type": "patch", + "hash": "1c39783bc5c35db8c86dcbafe18c24cbabd7c5c6", + "files": [ + "/opt/bytetrack-counter-cpp/src/video_writer.cpp" + ], + "id": "prt_fabfa0b82001Pbs5WSC0Aceclq", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabf9f17d001Dvq7JGfOegbrU4" + } + ] + }, + { + "info": { + "parentID": "msg_fabf9aeb9001dypk6qUWHzxrAT", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000604244, + "tokens": { + "total": 128981, + "input": 110, + "output": 86, + "reasoning": 17, + "cache": { + "write": 0, + "read": 128768 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296718762, + "completed": 1785296723788 + }, + "finish": "tool-calls", + "id": "msg_fabfa0baa001jusalXFa4Md9s8", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "104d592914ba683b51145143d84bc42e51fb0135", + "type": "step-start", + "id": "prt_fabfa16dd001R0CY3eOSBWciFG", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfa0baa001jusalXFa4Md9s8" + }, + { + "type": "reasoning", + "text": "Now hook `cleanup_retention()` in main.cpp where cutoff is detected.", + "time": { + "start": 1785296722112, + "end": 1785296722779 + }, + "id": "prt_fabfa18c0001hHsVnaIF6Cyou5", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfa0baa001jusalXFa4Md9s8" + }, + { + "type": "tool", + "tool": "read", + "callID": "call_00_4mv9WWCNnMDiQXFozs2u4081", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/main.cpp", + "limit": 15, + "offset": 255 + }, + "output": "/opt/bytetrack-counter-cpp/src/main.cpp\nfile\n\n255: \n256: auto elapsed_sec = std::chrono::duration(\n257: std::chrono::steady_clock::now() - session_start).count();\n258: auto mono = std::chrono::steady_clock::now();\n259: \n260: if (g_config.reset_counters_at_cutoff && store.check_cutoff_reset()) {\n261: std::cout << \"[\" << now_str() << \"] Cutoff reset — resetting frame + tracker counters\" << std::endl;\n262: frame_idx = 0;\n263: KalmanBoxTracker::count = 0;\n264: ayam_tracker.reset();\n265: talenan_tracker.reset();\n266: ayam_tracked.clear();\n267: talenan_tracked.clear();\n268: ayam_line_crossed.clear();\n269: talenan_line_crossed.clear();\n\n(Showing lines 255-269 of 569. Use offset=270 to continue.)\n", + "metadata": { + "preview": "\n auto elapsed_sec = std::chrono::duration(\n std::chrono::steady_clock::now() - session_start).count();\n auto mono = std::chrono::steady_clock::now();\n\n if (g_config.reset_counters_at_cutoff && store.check_cutoff_reset()) {\n std::cout << \"[\" << now_str() << \"] Cutoff reset — resetting frame + tracker counters\" << std::endl;\n frame_idx = 0;\n KalmanBoxTracker::count = 0;\n ayam_tracker.reset();\n talenan_tracker.reset();\n ayam_tracked.clear();\n talenan_tracked.clear();\n ayam_line_crossed.clear();\n talenan_line_crossed.clear();", + "truncated": true, + "loaded": [], + "display": { + "type": "file", + "path": "/opt/bytetrack-counter-cpp/src/main.cpp", + "text": "\n auto elapsed_sec = std::chrono::duration(\n std::chrono::steady_clock::now() - session_start).count();\n auto mono = std::chrono::steady_clock::now();\n\n if (g_config.reset_counters_at_cutoff && store.check_cutoff_reset()) {\n std::cout << \"[\" << now_str() << \"] Cutoff reset — resetting frame + tracker counters\" << std::endl;\n frame_idx = 0;\n KalmanBoxTracker::count = 0;\n ayam_tracker.reset();\n talenan_tracker.reset();\n ayam_tracked.clear();\n talenan_tracked.clear();\n ayam_line_crossed.clear();\n talenan_line_crossed.clear();", + "lineStart": 255, + "lineEnd": 269, + "totalLines": 569, + "truncated": true + } + }, + "title": "src/main.cpp", + "time": { + "start": 1785296723369, + "end": 1785296723407 + } + }, + "id": "prt_fabfa1b5f0019UOa96A31gUFXY", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfa0baa001jusalXFa4Md9s8" + }, + { + "reason": "tool-calls", + "snapshot": "104d592914ba683b51145143d84bc42e51fb0135", + "type": "step-finish", + "tokens": { + "total": 128981, + "input": 110, + "output": 86, + "reasoning": 17, + "cache": { + "write": 0, + "read": 128768 + } + }, + "cost": 0.000604244, + "id": "prt_fabfa1e9a001Q3tG6dDZm2C7uC", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfa0baa001jusalXFa4Md9s8" + } + ] + }, + { + "info": { + "parentID": "msg_fabf9aeb9001dypk6qUWHzxrAT", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000816118, + "tokens": { + "total": 129466, + "input": 338, + "output": 217, + "reasoning": 15, + "cache": { + "write": 0, + "read": 128896 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296723823, + "completed": 1785296730651 + }, + "finish": "tool-calls", + "id": "msg_fabfa1f6f001yy7YG8uyI51iU6", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "104d592914ba683b51145143d84bc42e51fb0135", + "type": "step-start", + "id": "prt_fabfa293d001iD58b5LfiKKhod", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfa1f6f001yy7YG8uyI51iU6" + }, + { + "type": "reasoning", + "text": "I'll add `cleanup_retention()` inside the cutoff block.", + "time": { + "start": 1785296727978, + "end": 1785296728643 + }, + "id": "prt_fabfa2faa001ije9H2uJ9ybrne", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfa1f6f001yy7YG8uyI51iU6" + }, + { + "type": "tool", + "tool": "edit", + "callID": "call_00_RGj1sxXDGQ6mN5ED1Tmr9424", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/main.cpp", + "newString": " if (g_config.reset_counters_at_cutoff && store.check_cutoff_reset()) {\n std::cout << \"[\" << now_str() << \"] Cutoff reset — resetting frame + tracker counters\" << std::endl;\n if (video_writer) video_writer->cleanup_retention();\n frame_idx = 0;", + "oldString": " if (g_config.reset_counters_at_cutoff && store.check_cutoff_reset()) {\n std::cout << \"[\" << now_str() << \"] Cutoff reset — resetting frame + tracker counters\" << std::endl;\n frame_idx = 0;" + }, + "output": "Edit applied successfully.", + "metadata": { + "diagnostics": {}, + "diff": "Index: /opt/bytetrack-counter-cpp/src/main.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/main.cpp\n+++ /opt/bytetrack-counter-cpp/src/main.cpp\n@@ -258,8 +258,9 @@\n auto mono = std::chrono::steady_clock::now();\n \n if (g_config.reset_counters_at_cutoff && store.check_cutoff_reset()) {\n std::cout << \"[\" << now_str() << \"] Cutoff reset — resetting frame + tracker counters\" << std::endl;\n+ if (video_writer) video_writer->cleanup_retention();\n frame_idx = 0;\n KalmanBoxTracker::count = 0;\n ayam_tracker.reset();\n talenan_tracker.reset();\n", + "filediff": { + "file": "/opt/bytetrack-counter-cpp/src/main.cpp", + "patch": "Index: /opt/bytetrack-counter-cpp/src/main.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/main.cpp\n+++ /opt/bytetrack-counter-cpp/src/main.cpp\n@@ -258,8 +258,9 @@\n auto mono = std::chrono::steady_clock::now();\n \n if (g_config.reset_counters_at_cutoff && store.check_cutoff_reset()) {\n std::cout << \"[\" << now_str() << \"] Cutoff reset — resetting frame + tracker counters\" << std::endl;\n+ if (video_writer) video_writer->cleanup_retention();\n frame_idx = 0;\n KalmanBoxTracker::count = 0;\n ayam_tracker.reset();\n talenan_tracker.reset();\n", + "additions": 1, + "deletions": 0 + }, + "truncated": false + }, + "title": "src/main.cpp", + "time": { + "start": 1785296730324, + "end": 1785296730330 + } + }, + "id": "prt_fabfa3247001473en4eFIvcENI", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfa1f6f001yy7YG8uyI51iU6" + }, + { + "reason": "tool-calls", + "snapshot": "928444c93c46188baa550edfbaa7f714252b7d13", + "type": "step-finish", + "tokens": { + "total": 129466, + "input": 338, + "output": 217, + "reasoning": 15, + "cache": { + "write": 0, + "read": 128896 + } + }, + "cost": 0.000816118, + "id": "prt_fabfa39ab001wjc2NAiQ7GPegs", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfa1f6f001yy7YG8uyI51iU6" + }, + { + "type": "patch", + "hash": "104d592914ba683b51145143d84bc42e51fb0135", + "files": [ + "/opt/bytetrack-counter-cpp/src/main.cpp" + ], + "id": "prt_fabfa3a16001CtEfDT4vs8MX3A", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfa1f6f001yy7YG8uyI51iU6" + } + ] + }, + { + "info": { + "parentID": "msg_fabf9aeb9001dypk6qUWHzxrAT", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.001142919, + "tokens": { + "total": 130219, + "input": 73, + "output": 460, + "reasoning": 278, + "cache": { + "write": 0, + "read": 129408 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296730699, + "completed": 1785296744609 + }, + "finish": "tool-calls", + "id": "msg_fabfa3a4b001X59un6qYhjC3fC", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "928444c93c46188baa550edfbaa7f714252b7d13", + "type": "step-start", + "id": "prt_fabfa47ff001130dNDtgJoB7sj", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfa3a4b001X59un6qYhjC3fC" + }, + { + "type": "reasoning", + "text": "I should also handle the case where `reset_counters_at_cutoff` is false but cutoff still triggers. The `cutoff_watcher_loop` in `batch_store.cpp` calls `end_batch_locked(\"cutoff\")` regardless, which triggers the `batch_closed_cb_`. But `check_cutoff_reset()` only returns true if `cutoff_triggered_` is true AND `reset_counters_at_cutoff` causes a reset.\n\nWait, looking at the code:\n```cpp\nbool BatchStore::check_cutoff_reset() {\n return cutoff_triggered_.exchange(false);\n}\n```\n\nThis returns true whenever the cutoff was triggered, regardless of `reset_counters_at_cutoff`. So `cleanup_retention()` will be called even when `reset_counters_at_cutoff` is false, as long as the cutoff watcher set the flag.\n\nBut actually, looking at the main.cpp code, the cleanup is inside `if (g_config.reset_counters_at_cutoff && store.check_cutoff_reset())`. So if `reset_counters_at_cutoff=false`, cleanup won't be called on cutoff. Let me fix this.\n\nI should move cleanup_retention outside the `reset_counters_at_cutoff` condition, or have a separate check.", + "time": { + "start": 1785296734934, + "end": 1785296740110 + }, + "id": "prt_fabfa4ad6001mRGlelAkkDyR9j", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfa3a4b001X59un6qYhjC3fC" + }, + { + "type": "tool", + "tool": "edit", + "callID": "call_00_SpQjzK24YuGXPn3xU4TZ7815", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/main.cpp", + "newString": " if (store.check_cutoff_reset()) {\n if (g_config.reset_counters_at_cutoff) {\n std::cout << \"[\" << now_str() << \"] Cutoff reset — resetting frame + tracker counters\" << std::endl;\n frame_idx = 0;\n KalmanBoxTracker::count = 0;\n ayam_tracker.reset();\n talenan_tracker.reset();\n ayam_tracked.clear();\n talenan_tracked.clear();\n ayam_line_crossed.clear();\n talenan_line_crossed.clear();\n ayam_cross_flash.clear();\n talenan_cross_flash.clear();\n crossing_times.clear();\n line_pulse = 0;\n count_pulse = 0;\n batch_pulse = 0;\n }\n if (video_writer) video_writer->cleanup_retention();\n }", + "oldString": " if (g_config.reset_counters_at_cutoff && store.check_cutoff_reset()) {\n std::cout << \"[\" << now_str() << \"] Cutoff reset — resetting frame + tracker counters\" << std::endl;\n if (video_writer) video_writer->cleanup_retention();\n frame_idx = 0;\n KalmanBoxTracker::count = 0;\n ayam_tracker.reset();\n talenan_tracker.reset();\n ayam_tracked.clear();\n talenan_tracked.clear();\n ayam_line_crossed.clear();\n talenan_line_crossed.clear();\n ayam_cross_flash.clear();\n talenan_cross_flash.clear();\n crossing_times.clear();\n line_pulse = 0;\n count_pulse = 0;\n batch_pulse = 0;\n }" + }, + "output": "Edit applied successfully.", + "metadata": { + "diagnostics": {}, + "diff": "Index: /opt/bytetrack-counter-cpp/src/main.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/main.cpp\n+++ /opt/bytetrack-counter-cpp/src/main.cpp\n@@ -256,25 +256,27 @@\n auto elapsed_sec = std::chrono::duration(\n std::chrono::steady_clock::now() - session_start).count();\n auto mono = std::chrono::steady_clock::now();\n \n-if (g_config.reset_counters_at_cutoff && store.check_cutoff_reset()) {\n- std::cout << \"[\" << now_str() << \"] Cutoff reset — resetting frame + tracker counters\" << std::endl;\n+if (store.check_cutoff_reset()) {\n+ if (g_config.reset_counters_at_cutoff) {\n+ std::cout << \"[\" << now_str() << \"] Cutoff reset — resetting frame + tracker counters\" << std::endl;\n+ frame_idx = 0;\n+ KalmanBoxTracker::count = 0;\n+ ayam_tracker.reset();\n+ talenan_tracker.reset();\n+ ayam_tracked.clear();\n+ talenan_tracked.clear();\n+ ayam_line_crossed.clear();\n+ talenan_line_crossed.clear();\n+ ayam_cross_flash.clear();\n+ talenan_cross_flash.clear();\n+ crossing_times.clear();\n+ line_pulse = 0;\n+ count_pulse = 0;\n+ batch_pulse = 0;\n+ }\n if (video_writer) video_writer->cleanup_retention();\n- frame_idx = 0;\n- KalmanBoxTracker::count = 0;\n- ayam_tracker.reset();\n- talenan_tracker.reset();\n- ayam_tracked.clear();\n- talenan_tracked.clear();\n- ayam_line_crossed.clear();\n- talenan_line_crossed.clear();\n- ayam_cross_flash.clear();\n- talenan_cross_flash.clear();\n- crossing_times.clear();\n- line_pulse = 0;\n- count_pulse = 0;\n- batch_pulse = 0;\n }\n \n bool ayam_crossed_frame = false, batch_closed_frame = false, batch_started_frame = false;\n \n", + "filediff": { + "file": "/opt/bytetrack-counter-cpp/src/main.cpp", + "patch": "Index: /opt/bytetrack-counter-cpp/src/main.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/main.cpp\n+++ /opt/bytetrack-counter-cpp/src/main.cpp\n@@ -256,25 +256,27 @@\n auto elapsed_sec = std::chrono::duration(\n std::chrono::steady_clock::now() - session_start).count();\n auto mono = std::chrono::steady_clock::now();\n \n-if (g_config.reset_counters_at_cutoff && store.check_cutoff_reset()) {\n- std::cout << \"[\" << now_str() << \"] Cutoff reset — resetting frame + tracker counters\" << std::endl;\n+if (store.check_cutoff_reset()) {\n+ if (g_config.reset_counters_at_cutoff) {\n+ std::cout << \"[\" << now_str() << \"] Cutoff reset — resetting frame + tracker counters\" << std::endl;\n+ frame_idx = 0;\n+ KalmanBoxTracker::count = 0;\n+ ayam_tracker.reset();\n+ talenan_tracker.reset();\n+ ayam_tracked.clear();\n+ talenan_tracked.clear();\n+ ayam_line_crossed.clear();\n+ talenan_line_crossed.clear();\n+ ayam_cross_flash.clear();\n+ talenan_cross_flash.clear();\n+ crossing_times.clear();\n+ line_pulse = 0;\n+ count_pulse = 0;\n+ batch_pulse = 0;\n+ }\n if (video_writer) video_writer->cleanup_retention();\n- frame_idx = 0;\n- KalmanBoxTracker::count = 0;\n- ayam_tracker.reset();\n- talenan_tracker.reset();\n- ayam_tracked.clear();\n- talenan_tracked.clear();\n- ayam_line_crossed.clear();\n- talenan_line_crossed.clear();\n- ayam_cross_flash.clear();\n- talenan_cross_flash.clear();\n- crossing_times.clear();\n- line_pulse = 0;\n- count_pulse = 0;\n- batch_pulse = 0;\n }\n \n bool ayam_crossed_frame = false, batch_closed_frame = false, batch_started_frame = false;\n \n", + "additions": 18, + "deletions": 16 + }, + "truncated": false + }, + "title": "src/main.cpp", + "time": { + "start": 1785296744141, + "end": 1785296744149 + } + }, + "id": "prt_fabfa5f14001bFdwCRCJygKXE2", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfa3a4b001X59un6qYhjC3fC" + }, + { + "reason": "tool-calls", + "snapshot": "de4ebd1d78f794a948f9a27b7f07e225427d4727", + "type": "step-finish", + "tokens": { + "total": 130219, + "input": 73, + "output": 460, + "reasoning": 278, + "cache": { + "write": 0, + "read": 129408 + } + }, + "cost": 0.001142919, + "id": "prt_fabfa6fc700120XaDDByrpGjeT", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfa3a4b001X59un6qYhjC3fC" + }, + { + "type": "patch", + "hash": "928444c93c46188baa550edfbaa7f714252b7d13", + "files": [ + "/opt/bytetrack-counter-cpp/src/main.cpp" + ], + "id": "prt_fabfa709c001QSJ3OKU2S21W3O", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfa3a4b001X59un6qYhjC3fC" + } + ] + }, + { + "info": { + "parentID": "msg_fabf9aeb9001dypk6qUWHzxrAT", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000825108, + "tokens": { + "total": 130611, + "input": 58, + "output": 68, + "reasoning": 309, + "cache": { + "write": 0, + "read": 130176 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296744645, + "completed": 1785296765327 + }, + "finish": "tool-calls", + "id": "msg_fabfa70c5001jQ86tgFDby5QdX", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "de4ebd1d78f794a948f9a27b7f07e225427d4727", + "type": "step-start", + "id": "prt_fabfa7f250017Ytlv3Xdqfagya", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfa70c5001jQ86tgFDby5QdX" + }, + { + "type": "reasoning", + "text": "Wait, `check_cutoff_reset()` returns the `cutoff_triggered_` flag AND atomically exchanges it to false. So it can only be checked once. If I call it outside the `reset_counters_at_cutoff` condition, it consumes the flag. Let me save it first.\n\nActually, looking at the original code: `store.check_cutoff_reset()` is called once in the condition. Now I'm calling it in the outer if. The `reset_counters_at_cutoff` check now uses the result. This should work.\n\nBut wait, I need to also keep the original code structure where the reset happens. Let me re-check: the original code had `if (g_config.reset_counters_at_cutoff && store.check_cutoff_reset())`. This consumed the flag only if `reset_counters_at_cutoff` was true.\n\nNow I changed it to `if (store.check_cutoff_reset())` which ALWAYS consumes the flag. That's fine - we want to know if cutoff happened regardless.\n\nThen inside, I check `reset_counters_at_cutoff` for the counter resets. And always call cleanup_retention.\n\nThis is correct. But `check_cutoff_reset()` uses `exchange(false)` which atomically reads AND sets to false. So it returns the old value and sets to false. This is fine as long as we only call it once.\n\nBuild should be fine. Let me verify.", + "time": { + "start": 1785296749172, + "end": 1785296756435 + }, + "id": "prt_fabfa8274001zZ91rkhDzxsLFT", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfa70c5001jQ86tgFDby5QdX" + }, + { + "type": "tool", + "tool": "bash", + "callID": "call_00_xIfd8PSJPLyRrJrBgAjn8593", + "state": { + "status": "completed", + "input": { + "command": "cd /opt/bytetrack-counter-cpp/build && make -j$(nproc) 2>&1 | tail -10" + }, + "output": "[ 10%] Building CXX object CMakeFiles/bytetrack-counter.dir/src/main.cpp.o\n[ 20%] Building CXX object CMakeFiles/bytetrack-counter.dir/src/video_writer.cpp.o\n[ 30%] Linking CXX executable bytetrack-counter\n[100%] Built target bytetrack-counter\n", + "metadata": { + "output": "[ 10%] Building CXX object CMakeFiles/bytetrack-counter.dir/src/main.cpp.o\n[ 20%] Building CXX object CMakeFiles/bytetrack-counter.dir/src/video_writer.cpp.o\n[ 30%] Linking CXX executable bytetrack-counter\n[100%] Built target bytetrack-counter\n", + "exit": 0, + "truncated": false + }, + "title": "cd /opt/bytetrack-counter-cpp/build && make -j$(nproc) 2>&1 | tail -10", + "time": { + "start": 1785296765143, + "end": 1785296765152 + } + }, + "id": "prt_fabfa9edd001gc02Famz7VkkrB", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfa70c5001jQ86tgFDby5QdX" + }, + { + "reason": "tool-calls", + "snapshot": "de4ebd1d78f794a948f9a27b7f07e225427d4727", + "type": "step-finish", + "tokens": { + "total": 130611, + "input": 58, + "output": 68, + "reasoning": 309, + "cache": { + "write": 0, + "read": 130176 + } + }, + "cost": 0.000825108, + "id": "prt_fabfac142001T93WdgTn2XgZEP", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfa70c5001jQ86tgFDby5QdX" + } + ] + }, + { + "info": { + "parentID": "msg_fabf9aeb9001dypk6qUWHzxrAT", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.00059943, + "tokens": { + "total": 130772, + "input": 134, + "output": 78, + "reasoning": 0, + "cache": { + "write": 0, + "read": 130560 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785296765376, + "completed": 1785296771099 + }, + "finish": "stop", + "id": "msg_fabfac1c0001PG7MZmbdNejToV", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "de4ebd1d78f794a948f9a27b7f07e225427d4727", + "type": "step-start", + "id": "prt_fabface9a001zGaN7n6F7AlVFw", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfac1c0001PG7MZmbdNejToV" + }, + { + "type": "text", + "text": "Done. Retention cleanup now runs at two points:\n\n1. **Startup** — constructor iterates `OUTPUT_DIR`, removes day folders older than `RECORD_RETENTION_DAYS`\n2. **Every cutoff** — `store.check_cutoff_reset()` triggers `cleanup_retention()`, regardless of `reset_counters_at_cutoff`", + "time": { + "start": 1785296769394, + "end": 1785296770899 + }, + "id": "prt_fabfad1720013QaUHybS096GWZ", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfac1c0001PG7MZmbdNejToV" + }, + { + "reason": "stop", + "snapshot": "de4ebd1d78f794a948f9a27b7f07e225427d4727", + "type": "step-finish", + "tokens": { + "total": 130772, + "input": 134, + "output": 78, + "reasoning": 0, + "cache": { + "write": 0, + "read": 130560 + } + }, + "cost": 0.00059943, + "id": "prt_fabfad781001JyWVeBBrHDqX96", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fabfac1c0001PG7MZmbdNejToV" + } + ] + }, + { + "info": { + "role": "user", + "time": { + "created": 1785316196324 + }, + "agent": "build", + "model": { + "providerID": "deepseek", + "modelID": "deepseek-v4-pro" + }, + "summary": { + "diffs": [ + { + "file": "config.env.example", + "patch": "Index: config.env.example\n===================================================================\n--- config.env.example\t\n+++ config.env.example\t\n@@ -1,168 +1,169 @@\n # =============================================================================\n # Edge RK3588 production counter + dashboard\n # Shared config for: counter_live_rknn_bytetrack.py + counter_dashboard.py\n # Copy to .env on device: cp config.env.example .env && nano .env\n # =============================================================================\n \n # --- Core paths ---\n # Root output directory (logs, DB, video, CSV)\n OUTPUT_DIR=/opt/bytetrack-counter\n # SQLite database path for batch entries & crossing logs\n DB_PATH=/opt/bytetrack-counter/bytetrack_counter.db\n # JSON file persisting the current active batch state\n STATE_FILE=/tmp/bytetrack_current_batch.json\n \n # --- Input source ---\n # RTSP / HTTP live stream, or a local video file path\n SOURCE=rtsp://user:pass@192.168.0.100:554/stream1\n # FFmpeg capture options passed to cv2.VideoCapture (RTSP low-latency flags)\n OPENCV_FFMPEG_CAPTURE_OPTIONS=rtsp_transport;tcp|fflags;nobuffer|flags;low_delay\n \n # --- RKNN model ---\n # Path to exported .rknn model (YOLO format, e.g. yolo11n.rknn)\n MODEL_PATH=/opt/models/yolo9t.rknn\n # Input image size for the model (square, e.g. 320 → 320×320)\n IMGSZ=320\n # Use FP16 inference on NPU (true/false); currently unused in ByteTrack variant\n HALF=false\n # NPU core mask: 1=core0, 2=core1, 3=core0+core1, 7=all three\n CORE_MASK=7\n # Compute device index (reserved; not used at runtime)\n DEVICE=0\n \n # --- YOLO decoder ---\n # Number of object classes the model outputs (e.g. 2 = ayam + talenan)\n NUM_CLASSES=2\n # Apply sigmoid to raw class scores (true/false); set true if model head uses BCE logits\n SCORE_SIGMOID=false\n \n # --- Detection ---\n # Confidence threshold – detections below this are discarded before NMS\n CONF=0.3\n \n # --- ByteTrack tracking ---\n # General for ayam, index 0\n # Detections with score ≥ this get priority matching in the first association stage\n TRACK_HIGH_THRESH_0=0.5\n # Detections with score between this and TRACK_HIGH_THRESH are matched in the second stage\n TRACK_LOW_THRESH_0=0.1\n # IoU threshold for the first-stage association (0–1). Higher = stricter overlap required\n TRACK_MATCH_THRESH_0=0.8\n # Frames a track survives without a match before being permanently removed\n TRACK_BUFFER_0=30\n # Minimum consecutive (or total) hits needed before a track is considered confirmed\n TRACK_MIN_HITS_0=3\n \n # For talenan, index 1\n # Detections with score ≥ this get priority matching in the first association stage\n TRACK_HIGH_THRESH_1=0.5\n # Detections with score between this and TRACK_HIGH_THRESH are matched in the second stage\n TRACK_LOW_THRESH_1=0.1\n # IoU threshold for the first-stage association (0–1). Higher = stricter overlap required\n TRACK_MATCH_THRESH_1=0.6\n # Frames a track survives without a match before being permanently removed\n TRACK_BUFFER_1=30\n # Minimum consecutive (or total) hits needed before a track is considered confirmed\n TRACK_MIN_HITS_1=3\n \n # --- Display ---\n # Site name shown on the dashboard header (top-right)\n SITE_NAME=ZenAi\n \n # --- Object class names ---\n # Camera / location identifier shown in HUD and stored in DB\n CAMERA_NAME=ZenAi\n # Label used for batch grouping in the database\n OBJECT_LABEL=ayam-potong\n # Class name for the counted object (must match NUM_CLASSES order, index 0)\n CLASS_AYAM=ayam\n # Class name for the batch-closing trigger object (must match NUM_CLASSES order, index 1)\n CLASS_TALENAN=talenan\n \n # --- Line crossing ---\n # Direction for counting: rtl (right-to-left, default) | ltr (left-to-right) | both\n CROSS_DIRECTION=rtl\n # Fixed x-coordinate for the counting line (overrides LINE_X_FRAC if set)\n LINE_X=\n # Fraction of frame width where the counting line is drawn (default 0.5 = centre)\n LINE_X_FRAC=0.5\n \n # --- Batch management ---\n # Daily cutoff time (HH:MM) – a new day's batch numbering starts after this time.\n # CUTOFF_TIME is an alias used by the dashboard; DAILY_CUTOFF_TIME takes priority in counter_live_rknn_bytetrack.py.\n DAILY_CUTOFF_TIME=20:00\n CUTOFF_TIME=20:00\n # Reset frame counter and ByteTrack track-ID counter back to 0 when the daily cutoff is reached (true/false, default: true)\n RESET_COUNTERS_AT_CUTOFF=true\n # Seconds of inactivity after which the current batch is auto-closed\n BATCH_TIMEOUT_SECONDS=300\n # Seconds a newly-opened batch ignores the talenan label before accepting a close trigger\n IGNORE_BATCH_LABEL_TIMEOUT_SECONDS=30\n # Minimum number of objects required for a batch to be saved as valid\n MIN_OBJECT_PER_BATCH=60\n # Minimum duration in seconds a batch must be open to be saved as valid\n MIN_DURATION_PER_BATCH=60\n \n # --- CSV export ---\n # Write per-crossing events to a CSV file (true/false)\n EXPORT_CSV=true\n # Path where the crossing CSV is written\n CROSS_CSV=/opt/batch-counter/batch_crossings.csv\n \n # --- Rate / performance ---\n # Enable motion detection pre-filter: skip inference on frames with no movement\n # (true/false, default: false). When enabled, frames below MOTION_THRESHOLD are\n # skipped, saving NPU/CPU load.\n MOTION_DETECTION_ENABLED=false\n # Mean absolute pixel difference threshold (0–255) to consider a frame as having\n # motion. Lower = more sensitive. Default 5.0.\n MOTION_THRESHOLD=5.0\n # Sliding window in seconds for computing the crossing rate (objects/minute)\n RATE_WINDOW_SEC=60\n # Number of frames to discard at startup to let the stream buffer stabilise\n WARMUP_FRAMES=30\n # Delay in seconds between stream reconnection attempts\n RECONNECT_DELAY_SEC=3\n # Maximum reconnection attempts (0 = infinite)\n MAX_RECONNECT_ATTEMPTS=0\n # Print status log every N processed frames\n FLUSH_EVERY_N_FRAMES=100\n # Seconds after which a tracked but unseen object is pruned from the active set\n TRACKED_PRUNE_SEC=300\n \n # --- Video recording ---\n # Per-batch video recording — raw frames (no overlay) to shared memory, moved to\n # OUTPUT_DIR on batch close via non-blocking background process (true/false)\n RECORD_VIDEO=false\n # Output video FPS (fallback if source FPS is unknown or ≤ 1)\n OUTPUT_FPS=15\n # Delay in seconds after batch starts before recording begins (every batch)\n RECORD_DELAY_SECONDS=10\n # Extra seconds to keep recording after batch end signal before stopping\n RECORD_END_DELAY=1\n # Days to keep recorded video folders (folders older than this deleted on startup)\n RECORD_RETENTION_DAYS=3\n-# Shared memory directory for recording (fast write, moved to OUTPUT_DIR on close)\n-RECORD_SHM_DIR=/dev/shm/bytetrack-counter\n+# Shared memory directory — used for video recording, live snapshots, and .reset trigger\n+# RECORD_SHM_DIR is an alias; SHM_DIR takes priority if both set\n+SHM_DIR=/dev/shm/bytetrack-counter\n \n # --- Live stream snapshot ---\n # Periodically write the latest annotated frame as JPEG for an external web server\n LIVE_STREAM_ENABLED=false\n # Path to the shared-memory snapshot file (served by nginx / lighttpd)\n LIVE_STREAM_FRAME_PATH=/dev/shm/byetrack-counter/live_frame.jpg\n # JPEG quality (1–100)\n LIVE_STREAM_QUALITY=75\n # Write the snapshot every N frames (lower = more frequent updates)\n LIVE_STREAM_EVERY_N=2\n \n # --- Dashboard (counter_dashboard.py) ---\n # Flask secret key for session/cookie signing — change in production!\n SECRET_KEY=change-me-in-production\n # Bind address for the Flask web server\n DASHBOARD_HOST=0.0.0.0\n # Listen port for the dashboard web UI\n DASHBOARD_PORT=5000\n # Enable Flask debug mode (true/false) — auto-reloads on code changes; disable in production\n FLASK_DEBUG=false\n # Fallback name for the active-batch JSON state file used by the dashboard\n CURRENT_BATCH_PATH=/tmp/bytetrack_current_batch.json\n", + "additions": 3, + "deletions": 2, + "status": "modified" + }, + { + "file": "src/config.cpp", + "patch": "Index: src/config.cpp\n===================================================================\n--- src/config.cpp\t\n+++ src/config.cpp\t\n@@ -1,160 +1,161 @@\n #include \"config.hpp\"\n #include \n #include \n #include \n #include \n \n AppConfig g_config;\n \n static std::string trim(const std::string& s) {\n auto start = s.find_first_not_of(\" \\t\\r\\n\");\n if (start == std::string::npos) return {};\n auto end = s.find_last_not_of(\" \\t\\r\\n\");\n return s.substr(start, end - start + 1);\n }\n \n static std::string get_env(const std::string& key, const std::string& def = \"\") {\n const char* val = std::getenv(key.c_str());\n return val ? std::string(val) : def;\n }\n \n void AppConfig::load_from_env(const char* env_path) {\n std::string path = \".env\";\n if (env_path) path = env_path;\n \n // also check env path\n const char* env_file = std::getenv(\"ENV_FILE\");\n if (env_file) path = env_file;\n \n std::ifstream file(path);\n if (file.is_open()) {\n std::string line;\n while (std::getline(file, line)) {\n line = trim(line);\n if (line.empty() || line[0] == '#') continue;\n auto eq = line.find('=');\n if (eq == std::string::npos) continue;\n std::string key = trim(line.substr(0, eq));\n std::string val = trim(line.substr(eq + 1));\n // strip quotes\n if (val.size() >= 2 && val.front() == '\"' && val.back() == '\"')\n val = val.substr(1, val.size() - 2);\n setenv(key.c_str(), val.c_str(), 1);\n }\n }\n \n output_dir = get_env(\"OUTPUT_DIR\", output_dir);\n db_path = get_env(\"DB_PATH\", output_dir + \"/bytetrack_counter.db\");\n state_file = get_env(\"STATE_FILE\", output_dir + \"/current_batch.json\");\n source = get_env(\"SOURCE\", source);\n model_path = get_env(\"MODEL_PATH\", model_path);\n camera_name = get_env(\"CAMERA_NAME\", camera_name);\n object_label = get_env(\"OBJECT_LABEL\", object_label);\n class_ayam = get_env(\"CLASS_AYAM\", class_ayam);\n class_talenan = get_env(\"CLASS_TALENAN\", class_talenan);\n \n auto lx = get_env(\"LINE_X\");\n if (!lx.empty()) line_x = std::stoi(lx);\n auto lxf = get_env(\"LINE_X_FRAC\");\n if (!lxf.empty()) line_x_frac = std::stof(lxf);\n cross_direction = get_env(\"CROSS_DIRECTION\", cross_direction);\n \n auto imgsz_s = get_env(\"IMGSZ\");\n if (!imgsz_s.empty()) imgsz = std::stoi(imgsz_s);\n auto half_s = get_env(\"HALF\");\n half = (half_s == \"true\");\n auto conf_s = get_env(\"CONF\");\n if (!conf_s.empty()) conf = std::stof(conf_s);\n auto dev_s = get_env(\"DEVICE\");\n if (!dev_s.empty()) device = std::stoi(dev_s);\n auto cm_s = get_env(\"CORE_MASK\");\n if (!cm_s.empty()) core_mask = std::stoi(cm_s);\n auto nc_s = get_env(\"NUM_CLASSES\");\n if (!nc_s.empty()) num_classes = std::stoi(nc_s);\n auto ss_s = get_env(\"SCORE_SIGMOID\");\n score_sigmoid = (ss_s == \"true\");\n auto ac_s = get_env(\"AYAM_CLASS_ID\");\n if (!ac_s.empty()) ayam_class_id = std::stoi(ac_s);\n auto tc_s = get_env(\"TALENAN_CLASS_ID\");\n if (!tc_s.empty()) talenan_class_id = std::stoi(tc_s);\n \n auto th0_s = get_env(\"TRACK_HIGH_THRESH_0\");\n if (!th0_s.empty()) track_high_thresh_0 = std::stof(th0_s);\n auto tl0_s = get_env(\"TRACK_LOW_THRESH_0\");\n if (!tl0_s.empty()) track_low_thresh_0 = std::stof(tl0_s);\n auto tm0_s = get_env(\"TRACK_MATCH_THRESH_0\");\n if (!tm0_s.empty()) track_match_thresh_0 = std::stof(tm0_s);\n auto tb0_s = get_env(\"TRACK_BUFFER_0\");\n if (!tb0_s.empty()) track_buffer_0 = std::stoi(tb0_s);\n auto tmh0_s = get_env(\"TRACK_MIN_HITS_0\");\n if (!tmh0_s.empty()) track_min_hits_0 = std::stoi(tmh0_s);\n \n auto th1_s = get_env(\"TRACK_HIGH_THRESH_1\");\n if (!th1_s.empty()) track_high_thresh_1 = std::stof(th1_s);\n auto tl1_s = get_env(\"TRACK_LOW_THRESH_1\");\n if (!tl1_s.empty()) track_low_thresh_1 = std::stof(tl1_s);\n auto tm1_s = get_env(\"TRACK_MATCH_THRESH_1\");\n if (!tm1_s.empty()) track_match_thresh_1 = std::stof(tm1_s);\n auto tb1_s = get_env(\"TRACK_BUFFER_1\");\n if (!tb1_s.empty()) track_buffer_1 = std::stoi(tb1_s);\n auto tmh1_s = get_env(\"TRACK_MIN_HITS_1\");\n if (!tmh1_s.empty()) track_min_hits_1 = std::stoi(tmh1_s);\n \n auto rw_s = get_env(\"RATE_WINDOW_SEC\");\n if (!rw_s.empty()) rate_window_sec = std::stoi(rw_s);\n \n daily_cutoff_time = get_env(\"DAILY_CUTOFF_TIME\", daily_cutoff_time);\n auto rcc_s = get_env(\"RESET_COUNTERS_AT_CUTOFF\");\n if (!rcc_s.empty()) reset_counters_at_cutoff = (rcc_s == \"true\");\n auto bto_s = get_env(\"BATCH_TIMEOUT_SECONDS\");\n if (!bto_s.empty()) batch_timeout_seconds = std::stof(bto_s);\n auto ibl_s = get_env(\"IGNORE_BATCH_LABEL_TIMEOUT_SECONDS\");\n if (!ibl_s.empty()) ignore_batch_label_timeout = std::stof(ibl_s);\n auto mob_s = get_env(\"MIN_OBJECT_PER_BATCH\");\n if (!mob_s.empty()) min_object_per_batch = std::stoi(mob_s);\n auto mdb_s = get_env(\"MIN_DURATION_PER_BATCH\");\n if (!mdb_s.empty()) min_duration_per_batch = std::stoi(mdb_s);\n \n auto ecsv = get_env(\"EXPORT_CSV\");\n if (!ecsv.empty()) export_csv = (ecsv == \"true\");\n cross_csv = get_env(\"CROSS_CSV\", output_dir + \"/batch_crossings.csv\");\n \n auto mde_s = get_env(\"MOTION_DETECTION_ENABLED\");\n motion_detection_enabled = (mde_s == \"true\");\n auto mt_s = get_env(\"MOTION_THRESHOLD\");\n if (!mt_s.empty()) motion_threshold = std::stof(mt_s);\n \n auto wf_s = get_env(\"WARMUP_FRAMES\");\n if (!wf_s.empty()) warmup_frames = std::stoi(wf_s);\n auto rd_s = get_env(\"RECONNECT_DELAY_SEC\");\n if (!rd_s.empty()) reconnect_delay_sec = std::stoi(rd_s);\n auto mra_s = get_env(\"MAX_RECONNECT_ATTEMPTS\");\n if (!mra_s.empty()) max_reconnect_attempts = std::stoi(mra_s);\n auto fl_s = get_env(\"FLUSH_EVERY_N_FRAMES\");\n if (!fl_s.empty()) flush_every_n_frames = std::stoi(fl_s);\n auto tp_s = get_env(\"TRACKED_PRUNE_SEC\");\n if (!tp_s.empty()) tracked_prune_sec = std::stoi(tp_s);\n auto rv_s = get_env(\"RECORD_VIDEO\");\n record_video = (rv_s == \"true\");\n auto vs_s = get_env(\"VIDEO_SEGMENT_SEC\");\n if (!vs_s.empty()) video_segment_sec = std::stoi(vs_s);\n auto ofps_s = get_env(\"OUTPUT_FPS\");\n if (!ofps_s.empty()) output_fps = std::stoi(ofps_s);\n auto rds_s = get_env(\"RECORD_DELAY_SECONDS\");\n if (!rds_s.empty()) record_delay_seconds = std::stof(rds_s);\n auto reds_s = get_env(\"RECORD_END_DELAY\");\n if (!reds_s.empty()) record_end_delay_seconds = std::stof(reds_s);\n auto rret_s = get_env(\"RECORD_RETENTION_DAYS\");\n if (!rret_s.empty()) record_retention_days = std::stoi(rret_s);\n- record_shm_dir = get_env(\"RECORD_SHM_DIR\", record_shm_dir);\n+ shm_dir = get_env(\"RECORD_SHM_DIR\", shm_dir);\n+ shm_dir = get_env(\"SHM_DIR\", shm_dir);\n \n auto lse_s = get_env(\"LIVE_STREAM_ENABLED\");\n live_stream_enabled = (lse_s == \"true\");\n live_stream_frame_path = get_env(\"LIVE_STREAM_FRAME_PATH\", live_stream_frame_path);\n auto lsq_s = get_env(\"LIVE_STREAM_QUALITY\");\n if (!lsq_s.empty()) live_stream_quality = std::stoi(lsq_s);\n auto lsn_s = get_env(\"LIVE_STREAM_EVERY_N\");\n if (!lsn_s.empty()) live_stream_every_n = std::stoi(lsn_s);\n \n rtsp_ffmpeg_options = get_env(\"OPENCV_FFMPEG_CAPTURE_OPTIONS\", rtsp_ffmpeg_options);\n }\n", + "additions": 2, + "deletions": 1, + "status": "modified" + }, + { + "file": "src/config.hpp", + "patch": "Index: src/config.hpp\n===================================================================\n--- src/config.hpp\t\n+++ src/config.hpp\t\n@@ -1,85 +1,85 @@\n #pragma once\n #include \n #include \n \n struct AppConfig {\n std::string output_dir = \"/opt/bytetrack-counter-cpp\";\n std::string db_path;\n std::string state_file;\n std::string source = \"rtsp://user:pass@192.168.0.100:554/stream1\";\n std::string model_path = \"/opt/models/yolo.rknn\";\n std::string camera_name = \"CC1\";\n std::string object_label = \"ayam-potong\";\n std::string class_ayam = \"ayam\";\n std::string class_talenan = \"talenan\";\n \n int line_x = -1;\n float line_x_frac = 0.5f;\n std::string cross_direction = \"rtl\";\n \n int imgsz = 320;\n bool half = false;\n float conf = 0.3f;\n int device = 0;\n int core_mask = 1;\n int num_classes = 2;\n bool score_sigmoid = false;\n int ayam_class_id = 0;\n int talenan_class_id = 1;\n \n float track_high_thresh_0 = 0.5f;\n float track_low_thresh_0 = 0.1f;\n float track_match_thresh_0 = 0.8f;\n int track_buffer_0 = 30;\n int track_min_hits_0 = 3;\n \n float track_high_thresh_1 = 0.5f;\n float track_low_thresh_1 = 0.1f;\n float track_match_thresh_1 = 0.6f;\n int track_buffer_1 = 30;\n int track_min_hits_1 = 3;\n \n int rate_window_sec = 60;\n \n std::string daily_cutoff_time = \"20:00\";\n bool reset_counters_at_cutoff = true;\n float batch_timeout_seconds = 300.0f;\n float ignore_batch_label_timeout = 30.0f;\n int min_object_per_batch = 60;\n int min_duration_per_batch = 60;\n \n bool export_csv = true;\n std::string cross_csv;\n \n bool motion_detection_enabled = false;\n float motion_threshold = 5.0f;\n int warmup_frames = 30;\n int reconnect_delay_sec = 3;\n int max_reconnect_attempts = 0;\n int flush_every_n_frames = 100;\n int tracked_prune_sec = 300;\n bool record_video = false;\n int video_segment_sec = 3600;\n int output_fps = 15;\n float record_delay_seconds = 10.0f;\n float record_end_delay_seconds = 1.0f;\n int record_retention_days = 3;\n- std::string record_shm_dir = \"/dev/shm/bytetrack-counter\";\n+ std::string shm_dir = \"/dev/shm/bytetrack-counter\";\n \n bool live_stream_enabled = false;\n std::string live_stream_frame_path = \"/dev/shm/bytetrack-counter/live_frame.jpg\";\n int live_stream_quality = 75;\n int live_stream_every_n = 2;\n \n std::string rtsp_ffmpeg_options = \"rtsp_transport;tcp|fflags;nobuffer|flags;low_delay\";\n \n int cross_flash_frames = 12;\n int popup_lifetime = 20;\n int line_pulse_frames = 12;\n int count_pulse_frames = 15;\n int batch_pulse_frames = 20;\n \n void load_from_env(const char* env_path = nullptr);\n };\n \n extern AppConfig g_config;\n", + "additions": 1, + "deletions": 1, + "status": "modified" + }, + { + "file": "src/main.cpp", + "patch": "Index: src/main.cpp\n===================================================================\n--- src/main.cpp\t\n+++ src/main.cpp\t\n@@ -1,572 +1,582 @@\n #include \"config.hpp\"\n #include \"bytetrack.hpp\"\n #include \"batch_store.hpp\"\n #include \"csv_logger.hpp\"\n #include \"rknn_yolo.hpp\"\n #include \"drawing.hpp\"\n #include \"nms.hpp\"\n #include \"version.hpp\"\n #include \"video_writer.hpp\"\n \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n #include \n \n static std::atomic shutdown_requested{false};\n \n static void signal_handler(int) {\n shutdown_requested = true;\n std::cout << \"\\nShutdown requested — finishing current frame...\" << std::endl;\n }\n \n static std::string now_str() {\n auto now = std::chrono::system_clock::now();\n auto t = std::chrono::system_clock::to_time_t(now);\n std::ostringstream ss;\n ss << std::put_time(std::localtime(&t), \"%Y-%m-%d %H:%M:%S\");\n return ss.str();\n }\n \n static cv::VideoCapture open_capture(const std::string& source) {\n bool is_live = source.substr(0, 7) == \"rtsp://\" || source.substr(0, 7) == \"http://\";\n if (is_live) {\n setenv(\"OPENCV_FFMPEG_CAPTURE_OPTIONS\", g_config.rtsp_ffmpeg_options.c_str(), 1);\n }\n cv::VideoCapture cap(source, cv::CAP_FFMPEG);\n cap.set(cv::CAP_PROP_BUFFERSIZE, 1);\n return cap;\n }\n \n static void warmup_stream(cv::VideoCapture& cap, int n) {\n std::cout << \"Warming up stream...\" << std::endl;\n cv::Mat frame;\n for (int i = 0; i < n; ++i) cap.read(frame);\n std::cout << \"Stream ready!\" << std::endl;\n }\n \n static bool connect_stream(cv::VideoCapture& cap, int& w, int& h, double& fps) {\n bool is_live = g_config.source.substr(0, 7) == \"rtsp://\" ||\n g_config.source.substr(0, 7) == \"http://\";\n int attempts = 0;\n while (!shutdown_requested) {\n cap = open_capture(g_config.source);\n if (cap.isOpened()) break;\n attempts++;\n if (g_config.max_reconnect_attempts > 0 && attempts >= g_config.max_reconnect_attempts) {\n std::cerr << \"Cannot open source after \" << attempts\n << \" attempts: \" << g_config.source << std::endl;\n return false;\n }\n std::cout << \"Cannot open source, retry in \" << g_config.reconnect_delay_sec\n << \"s...\" << std::endl;\n std::this_thread::sleep_for(std::chrono::seconds(g_config.reconnect_delay_sec));\n }\n if (shutdown_requested) return false;\n \n if (is_live && g_config.warmup_frames > 0)\n warmup_stream(cap, g_config.warmup_frames);\n \n w = static_cast(cap.get(cv::CAP_PROP_FRAME_WIDTH));\n h = static_cast(cap.get(cv::CAP_PROP_FRAME_HEIGHT));\n fps = cap.get(cv::CAP_PROP_FPS);\n if (fps <= 1) fps = g_config.output_fps;\n return true;\n }\n \n struct TrackedInfo {\n float cx;\n std::chrono::steady_clock::time_point ts;\n };\n \n static void prune_stale_tracks(std::unordered_map& tracked, double prune_sec) {\n auto now = std::chrono::steady_clock::now();\n std::vector stale;\n for (auto& [tid, info] : tracked) {\n auto age = std::chrono::duration_cast(now - info.ts).count();\n if (age > prune_sec) stale.push_back(tid);\n }\n for (int tid : stale) tracked.erase(tid);\n }\n \n int main(int argc, char* argv[]) {\n signal(SIGINT, signal_handler);\n signal(SIGTERM, signal_handler);\n \n if (argc < 2) {\n std::cout << \"ByteTrack Counter (C++)\" << std::endl;\n std::cout << \"Version: \" << version::GIT_COMMIT\n << \" | branch: \" << version::GIT_BRANCH\n << \" | built: \" << version::BUILD_DATE << \" \" << version::BUILD_TIME\n << \" | rknn: \" << (version::BUILD_RKNN ? \"ON\" : \"OFF\");\n if (!version::GIT_TAG.empty())\n std::cout << \" | tag: \" << version::GIT_TAG;\n std::cout << std::endl;\n std::cout << \"Usage: bytetrack-counter \" << std::endl;\n std::cout << \" config.env path to environment configuration file (required)\" << std::endl;\n return 1;\n }\n \n g_config.load_from_env(argv[1]);\n \n std::cout << \"Starting ByteTrack Counter (C++)\" << std::endl;\n std::cout << \"Version: \" << version::GIT_COMMIT\n << \" | branch: \" << version::GIT_BRANCH\n << \" | built: \" << version::BUILD_DATE << \" \" << version::BUILD_TIME\n << \" | rknn: \" << (version::BUILD_RKNN ? \"ON\" : \"OFF\");\n if (!version::GIT_TAG.empty())\n std::cout << \" | tag: \" << version::GIT_TAG;\n std::cout << std::endl;\n std::cout << \"Camera: \" << g_config.camera_name << std::endl;\n std::cout << \"Source: \" << g_config.source << std::endl;\n std::cout << \"Model: \" << g_config.model_path << \" | imgsz=\" << g_config.imgsz\n << \" | core_mask=\" << g_config.core_mask << std::endl;\n std::cout << \"DB: \" << g_config.db_path << std::endl;\n std::cout << \"State: \" << g_config.state_file << std::endl;\n std::cout << \"ByteTrack Index 0: high_thresh=\" << g_config.track_high_thresh_0\n << \" low_thresh=\" << g_config.track_low_thresh_0\n << \" match_thresh=\" << g_config.track_match_thresh_0\n << \" buffer=\" << g_config.track_buffer_0\n << \" min_hits=\" << g_config.track_min_hits_0 << std::endl;\n std::cout << \"ByteTrack Index 1: high_thresh=\" << g_config.track_high_thresh_1\n << \" low_thresh=\" << g_config.track_low_thresh_1\n << \" match_thresh=\" << g_config.track_match_thresh_1\n << \" buffer=\" << g_config.track_buffer_1\n << \" min_hits=\" << g_config.track_min_hits_1 << std::endl;\n \n+ {\n+ std::string reset_file = g_config.shm_dir + \"/.reset\";\n+ if (std::filesystem::exists(reset_file)) {\n+ std::cout << \"[RESET] .reset detected — clearing state\" << std::endl;\n+ std::error_code ec;\n+ std::filesystem::remove(g_config.state_file, ec);\n+ std::filesystem::remove(reset_file, ec);\n+ }\n+ }\n+\n if (g_config.live_stream_enabled) {\n std::filesystem::path live_p(g_config.live_stream_frame_path);\n if (live_p.has_parent_path())\n std::filesystem::create_directories(live_p.parent_path());\n }\n \n int class_ayam = g_config.ayam_class_id;\n int class_talenan = g_config.talenan_class_id;\n \n auto logger = [](const std::string& msg) {\n std::cout << \"[\" << now_str() << \"] \" << msg << std::endl;\n };\n \n BatchStore store(g_config.db_path, g_config.state_file,\n g_config.camera_name, g_config.object_label,\n g_config.daily_cutoff_time,\n g_config.batch_timeout_seconds,\n g_config.ignore_batch_label_timeout,\n g_config.min_object_per_batch,\n g_config.min_duration_per_batch,\n logger);\n store.start_cutoff_watcher();\n \n std::unique_ptr cross_logger;\n if (g_config.export_csv) {\n cross_logger = std::make_unique(g_config.cross_csv,\n std::vector{\"batch\", \"frame\", \"timestamp\", \"chicken_id\"});\n }\n \n RKNNYOLO model(g_config.model_path, g_config.core_mask,\n g_config.imgsz, g_config.conf, 0.45f,\n g_config.num_classes, 0, g_config.score_sigmoid);\n if (!model.is_loaded()) {\n std::cerr << \"ERROR: Failed to load model: \" << g_config.model_path\n << std::endl;\n return 1;\n }\n \n ByteTracker ayam_tracker(g_config.track_high_thresh_0, g_config.track_low_thresh_0,\n g_config.track_match_thresh_0, g_config.track_buffer_0,\n g_config.track_min_hits_0);\n ByteTracker talenan_tracker(g_config.track_high_thresh_1, g_config.track_low_thresh_1,\n g_config.track_match_thresh_1, g_config.track_buffer_1,\n g_config.track_min_hits_1);\n \n std::unordered_set ayam_line_crossed;\n std::unordered_set talenan_line_crossed;\n \n std::unordered_map ayam_cross_flash;\n std::unordered_map talenan_cross_flash;\n int line_pulse = 0, count_pulse = 0, batch_pulse = 0;\n std::vector popups;\n std::deque crossing_times;\n \n auto session_start = std::chrono::steady_clock::now();\n int frame_idx = 0;\n float inf_ema = 0.0f;\n \n std::string model_name = g_config.model_path;\n auto slash = model_name.find_last_of(\"/\\\\\");\n if (slash != std::string::npos) model_name = model_name.substr(slash + 1);\n \n cv::VideoCapture cap;\n int w, h;\n double fps_prop;\n \n if (!connect_stream(cap, w, h, fps_prop)) {\n store.shutdown();\n return shutdown_requested ? 0 : 1;\n }\n bool is_live = g_config.source.substr(0, 7) == \"rtsp://\" ||\n g_config.source.substr(0, 7) == \"http://\";\n \n int line_x = resolve_line_x(w, g_config.line_x, g_config.line_x_frac);\n \n std::cout << \"RKNN+ByteTrack counter | \" << w << \"x\" << h << \" @ \"\n << fps_prop << \"fps | line x=\" << line_x\n << \" | cross=\" << g_config.cross_direction << std::endl;\n \n std::unique_ptr video_writer;\n if (g_config.record_video) {\n video_writer = std::make_unique(\n- g_config.record_shm_dir, g_config.output_dir,\n+ g_config.shm_dir, g_config.output_dir,\n w, h, static_cast(fps_prop),\n g_config.record_delay_seconds,\n g_config.record_end_delay_seconds,\n g_config.record_retention_days);\n auto* vw = video_writer.get();\n store.set_batch_closed_callback([vw](int bn) { vw->on_batch_closed(bn); });\n }\n \n int reconnect_count = 0;\n \n std::unordered_map ayam_tracked;\n std::unordered_map talenan_tracked;\n cv::Mat prev_gray;\n \n while (!shutdown_requested) {\n cv::Mat frame;\n cap >> frame;\n if (frame.empty()) {\n if (!is_live) break;\n reconnect_count++;\n std::cout << \"Stream dropped (attempt \" << reconnect_count\n << \"), reconnecting...\" << std::endl;\n cap.release();\n std::this_thread::sleep_for(std::chrono::seconds(g_config.reconnect_delay_sec));\n if (!connect_stream(cap, w, h, fps_prop)) break;\n line_x = resolve_line_x(w, g_config.line_x, g_config.line_x_frac);\n continue;\n }\n \n auto elapsed_sec = std::chrono::duration(\n std::chrono::steady_clock::now() - session_start).count();\n auto mono = std::chrono::steady_clock::now();\n \n if (store.check_cutoff_reset()) {\n if (g_config.reset_counters_at_cutoff) {\n std::cout << \"[\" << now_str() << \"] Cutoff reset — resetting frame + tracker counters\" << std::endl;\n frame_idx = 0;\n KalmanBoxTracker::count = 0;\n ayam_tracker.reset();\n talenan_tracker.reset();\n ayam_tracked.clear();\n talenan_tracked.clear();\n ayam_line_crossed.clear();\n talenan_line_crossed.clear();\n ayam_cross_flash.clear();\n talenan_cross_flash.clear();\n crossing_times.clear();\n line_pulse = 0;\n count_pulse = 0;\n batch_pulse = 0;\n }\n if (video_writer) video_writer->cleanup_retention();\n }\n \n bool ayam_crossed_frame = false, batch_closed_frame = false, batch_started_frame = false;\n \n bool skip_inference = false;\n if (g_config.motion_detection_enabled) {\n cv::Mat gray;\n cv::cvtColor(frame, gray, cv::COLOR_BGR2GRAY);\n if (!prev_gray.empty()) {\n cv::Mat diff;\n cv::absdiff(gray, prev_gray, diff);\n double mean_diff = cv::mean(diff)[0];\n skip_inference = (mean_diff < g_config.motion_threshold);\n }\n prev_gray = gray;\n if (!skip_inference && video_writer) video_writer->note_motion();\n } else {\n if (video_writer) video_writer->note_motion();\n }\n \n std::vector detections;\n float inf_ms = 0.0f;\n if (!skip_inference) {\n auto inf_start = std::chrono::steady_clock::now();\n detections = model(frame);\n inf_ms = std::chrono::duration(\n std::chrono::steady_clock::now() - inf_start).count();\n }\n inf_ema = inf_ema * 0.9f + inf_ms * 0.1f;\n \n if (!detections.empty()) {\n std::vector ayam_boxes, talenan_boxes;\n std::vector ayam_scores, talenan_scores;\n std::vector ayam_cx_list, talenan_cx_list;\n std::vector>> ayam_kpts_list;\n \n for (const auto& det : detections) {\n const auto& bbox = det.bbox;\n float cx = (bbox(0) + bbox(2)) / 2.0f;\n \n if (det.cls == class_talenan) {\n talenan_boxes.push_back(bbox);\n talenan_scores.push_back(det.score);\n talenan_cx_list.push_back(cx);\n } else if (det.cls == class_ayam) {\n ayam_boxes.push_back(bbox);\n ayam_scores.push_back(det.score);\n ayam_cx_list.push_back(cx);\n ayam_kpts_list.push_back(det.keypoints);\n }\n }\n \n int na = static_cast(ayam_boxes.size());\n int nt = static_cast(talenan_boxes.size());\n \n if (na > 0) store.ping_activity();\n \n Eigen::MatrixXf ayam_mat(na, 4), talenan_mat(nt, 4);\n Eigen::VectorXf ayam_scores_vec(na), talenan_scores_vec(nt);\n \n for (int i = 0; i < na; ++i) {\n ayam_mat.row(i) = ayam_boxes[i];\n ayam_scores_vec(i) = ayam_scores[i];\n }\n for (int i = 0; i < nt; ++i) {\n talenan_mat.row(i) = talenan_boxes[i];\n talenan_scores_vec(i) = talenan_scores[i];\n }\n \n // Apply NMS per-class to suppress duplicate boxes\n if (na > 0) {\n if (video_writer) video_writer->note_ayam_detection();\n auto keep = nms(ayam_mat, ayam_scores_vec);\n int nk = static_cast(keep.size());\n Eigen::MatrixXf fm(nk, 4);\n Eigen::VectorXf fs(nk);\n std::vector fb;\n std::vector fcx;\n std::vector>> fkpts;\n for (int ki = 0; ki < nk; ++ki) {\n int idx = keep[ki];\n fm.row(ki) = ayam_mat.row(idx);\n fs(ki) = ayam_scores_vec(idx);\n fb.push_back(ayam_boxes[idx]);\n fcx.push_back(ayam_cx_list[idx]);\n if (idx < (int)ayam_kpts_list.size())\n fkpts.push_back(ayam_kpts_list[idx]);\n }\n na = nk;\n ayam_mat = std::move(fm);\n ayam_scores_vec = std::move(fs);\n ayam_boxes = std::move(fb);\n ayam_cx_list = std::move(fcx);\n ayam_kpts_list = std::move(fkpts);\n }\n if (nt > 0) {\n auto keep = nms(talenan_mat, talenan_scores_vec);\n int nk = static_cast(keep.size());\n Eigen::MatrixXf fm(nk, 4);\n Eigen::VectorXf fs(nk);\n std::vector fb;\n std::vector fcx;\n for (int ki = 0; ki < nk; ++ki) {\n int idx = keep[ki];\n fm.row(ki) = talenan_mat.row(idx);\n fs(ki) = talenan_scores_vec(idx);\n fb.push_back(talenan_boxes[idx]);\n fcx.push_back(talenan_cx_list[idx]);\n }\n nt = nk;\n talenan_mat = std::move(fm);\n talenan_scores_vec = std::move(fs);\n talenan_boxes = std::move(fb);\n talenan_cx_list = std::move(fcx);\n }\n \n TrackResult ayam_tr = ayam_tracker.update(ayam_mat, ayam_scores_vec);\n TrackResult talenan_tr = talenan_tracker.update(talenan_mat, talenan_scores_vec);\n \n // Process talenan crossings\n for (int di = 0; di < nt; ++di) {\n auto it = talenan_tr.det_to_track.find(di);\n if (it == talenan_tr.det_to_track.end()) continue;\n int tid = it->second;\n float cx = talenan_cx_list[di];\n \n auto tit = talenan_tracked.find(tid);\n if (tit != talenan_tracked.end()) {\n float prev_cx = tit->second.cx;\n if (crossed_line(prev_cx, cx, line_x, g_config.cross_direction) &&\n talenan_line_crossed.find(tid) == talenan_line_crossed.end()) {\n talenan_line_crossed.insert(tid);\n if (store.record_talenan_crossing(tid, talenan_scores_vec(di))) {\n batch_closed_frame = true;\n talenan_cross_flash[tid] = g_config.cross_flash_frames;\n popups.push_back({\n static_cast(cx) - 20,\n static_cast((talenan_boxes[di](1) + talenan_boxes[di](3)) / 2),\n frame_idx, \"BATCH CLOSED\"\n });\n }\n }\n }\n talenan_tracked[tid] = {cx, mono};\n }\n \n // Process ayam crossings\n for (int di = 0; di < na; ++di) {\n auto it = ayam_tr.det_to_track.find(di);\n if (it == ayam_tr.det_to_track.end()) continue;\n int tid = it->second;\n float cx = ayam_cx_list[di];\n \n auto tit = ayam_tracked.find(tid);\n if (tit != ayam_tracked.end()) {\n float prev_cx = tit->second.cx;\n if (crossed_line(prev_cx, cx, line_x, g_config.cross_direction) &&\n ayam_line_crossed.find(tid) == ayam_line_crossed.end()) {\n ayam_line_crossed.insert(tid);\n auto [count, started_new] = store.record_ayam_crossing(tid);\n std::cout << \"[\" << now_str() << \"] Batch #\" << store.current_batch_number() << \" | count: \" << count << \" | conf: \" << ayam_scores_vec(di) << std::endl;\n if (cross_logger) {\n std::ostringstream frame_str, tid_str;\n frame_str << frame_idx;\n tid_str << tid;\n cross_logger->write_row({\n std::to_string(store.current_batch_number()),\n frame_str.str(),\n now_str(),\n tid_str.str()\n });\n }\n ayam_crossed_frame = true;\n if (started_new) batch_started_frame = true;\n crossing_times.push_back(mono);\n ayam_cross_flash[tid] = g_config.cross_flash_frames;\n popups.push_back({\n static_cast(cx) - 12,\n static_cast((ayam_boxes[di](1) + ayam_boxes[di](3)) / 2),\n frame_idx, \"+1\"\n });\n }\n }\n ayam_tracked[tid] = {cx, mono};\n }\n \n // Track lost tracks for continuity\n for (auto& [tid, cx] : ayam_tr.lost_map) {\n if (ayam_tracked.find(tid) == ayam_tracked.end())\n ayam_tracked[tid] = {cx, mono};\n }\n \n if (video_writer) video_writer->feed_frame(frame);\n \n // Draw talenan\n for (int di = 0; di < nt; ++di) {\n auto it = talenan_tr.det_to_track.find(di);\n if (it == talenan_tr.det_to_track.end()) continue;\n int tid = it->second;\n const auto& bbox = talenan_boxes[di];\n int x1 = static_cast(bbox(0)), y1 = static_cast(bbox(1));\n int x2 = static_cast(bbox(2)), y2 = static_cast(bbox(3));\n int flash = talenan_cross_flash.count(tid) ? talenan_cross_flash[tid] : 0;\n cv::Scalar color = flash > 0 ? C_GREEN : C_TALENAN_BOX;\n cv::rectangle(frame, cv::Point(x1, y1), cv::Point(x2, y2), color, flash > 0 ? 3 : 2);\n draw_pill(frame, \"TALENAN \" + std::to_string(tid), x1, y1 - 4, color);\n }\n \n // Draw ayam\n for (int di = 0; di < na; ++di) {\n auto it = ayam_tr.det_to_track.find(di);\n if (it == ayam_tr.det_to_track.end()) continue;\n int tid = it->second;\n const auto& bbox = ayam_boxes[di];\n int x1 = static_cast(bbox(0)), y1 = static_cast(bbox(1));\n int x2 = static_cast(bbox(2)), y2 = static_cast(bbox(3));\n int flash = ayam_cross_flash.count(tid) ? ayam_cross_flash[tid] : 0;\n cv::Scalar color = flash > 0 ? C_GREEN : C_AYAM_BOX;\n cv::rectangle(frame, cv::Point(x1, y1), cv::Point(x2, y2), color, flash > 0 ? 3 : 2);\n draw_pill(frame, \"ID \" + std::to_string(tid), x1, y1 - 4, color);\n if (di < (int)ayam_kpts_list.size() && !ayam_kpts_list[di].empty())\n draw_skeleton_bold(frame, ayam_kpts_list[di]);\n }\n }\n \n if (ayam_crossed_frame) {\n line_pulse = g_config.line_pulse_frames;\n count_pulse = g_config.count_pulse_frames;\n }\n if (batch_closed_frame) {\n line_pulse = g_config.line_pulse_frames;\n }\n if (batch_started_frame) {\n batch_pulse = g_config.batch_pulse_frames;\n }\n \n int batch_num = store.current_batch_number();\n int batch_count = store.current_batch_count();\n int display_total = store.display_total();\n \n while (!crossing_times.empty() &&\n std::chrono::duration(mono - crossing_times.front()).count() > g_config.rate_window_sec)\n crossing_times.pop_front();\n double rate = crossing_times.empty() ? 0.0 :\n (crossing_times.size() / static_cast(g_config.rate_window_sec) * 60.0);\n \n draw_elegant_counting_line(frame, line_x, h, line_pulse);\n draw_hero_count(frame, line_x, h, batch_count, count_pulse);\n draw_hud(frame, w, batch_num, batch_count, display_total,\n elapsed_sec, rate);\n draw_batch_banner(frame, w, batch_num, batch_pulse);\n draw_footer(frame, w, h, frame_idx, is_live ? \"LIVE\" : \"FILE\", inf_ema, model_name);\n popups = draw_popups(frame, popups, frame_idx);\n \n // Flash decay\n for (auto& flash_map : {&ayam_cross_flash, &talenan_cross_flash}) {\n for (auto it = flash_map->begin(); it != flash_map->end(); ) {\n it->second--;\n if (it->second <= 0) it = flash_map->erase(it);\n else ++it;\n }\n }\n line_pulse = std::max(0, line_pulse - 1);\n count_pulse = std::max(0, count_pulse - 1);\n batch_pulse = std::max(0, batch_pulse - 1);\n \n if (g_config.live_stream_enabled && frame_idx % g_config.live_stream_every_n == 0) {\n try {\n std::filesystem::path p(g_config.live_stream_frame_path);\n if (p.has_parent_path())\n std::filesystem::create_directories(p.parent_path());\n std::vector jpeg;\n cv::imencode(\".jpg\", frame, jpeg,\n {cv::IMWRITE_JPEG_QUALITY, g_config.live_stream_quality});\n std::ofstream f(g_config.live_stream_frame_path, std::ios::binary);\n f.write(reinterpret_cast(jpeg.data()), jpeg.size());\n } catch (...) {}\n }\n \n frame_idx++;\n \n prune_stale_tracks(ayam_tracked, g_config.tracked_prune_sec);\n prune_stale_tracks(talenan_tracked, g_config.tracked_prune_sec);\n }\n \n cap.release();\n if (video_writer) video_writer->shutdown();\n store.shutdown();\n \n std::cout << \"\\n=== Batch Summary (SQLite) ===\" << std::endl;\n std::cout << \"Database: \" << g_config.db_path << std::endl;\n \n return 0;\n }\n", + "additions": 11, + "deletions": 1, + "status": "modified" + } + ] + }, + "id": "msg_fad233fe3001WQwNAEestOTMy6", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "type": "text", + "text": "make alias of RECORD_SHM_DIR as SHM_DIR. And detect file .reset in this folder. If you detect this reset the counter and STATE_FILE, and right away delete the .reset file", + "id": "prt_fad233feb0012KgnAxxoFxgng4", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad233fe3001WQwNAEestOTMy6" + } + ] + }, + { + "info": { + "parentID": "msg_fad233fe3001WQwNAEestOTMy6", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000789119, + "tokens": { + "total": 131115, + "input": 129, + "output": 86, + "reasoning": 212, + "cache": { + "write": 0, + "read": 130688 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785316196418, + "completed": 1785316205588 + }, + "finish": "tool-calls", + "id": "msg_fad234041001FOozIKS9WN242z", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "de4ebd1d78f794a948f9a27b7f07e225427d4727", + "type": "step-start", + "id": "prt_fad234d6b001Kj03IC6EXRl48O", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad234041001FOozIKS9WN242z" + }, + { + "type": "reasoning", + "text": "The user wants:\n1. Add `SHM_DIR` as an alias for `RECORD_SHM_DIR` (same config key, two names)\n2. Detect a `.reset` file in `SHM_DIR` at startup — if present, reset counter and state file, then delete `.reset`\n\nSince `RECORD_SHM_DIR` is currently only loaded when `RECORD_VIDEO` is true, I need to make `SHM_DIR` available even without recording enabled. Or I could load `SHM_DIR` separately in config.\n\nLet me think about where to add this:\n1. Config: add `SHM_DIR` as alias, default `/dev/shm/bytetrack-counter`\n2. Where to check for `.reset`: at startup in `main()`, before `BatchStore` is created (since we need to reset state file before it's loaded)\n3. The reset should: delete the state file, then delete `.reset`\n\nLet me read the startup sequence in main.cpp to find the right place.", + "time": { + "start": 1785316200735, + "end": 1785316204570 + }, + "id": "prt_fad23511f001Zf8s0BseTqmdhA", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad234041001FOozIKS9WN242z" + }, + { + "type": "tool", + "tool": "read", + "callID": "call_00_XppRBjYXQo3l7KNDR1ZF0433", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/config.hpp", + "limit": 10, + "offset": 64 + }, + "output": "/opt/bytetrack-counter-cpp/src/config.hpp\nfile\n\n64: float record_delay_seconds = 10.0f;\n65: float record_end_delay_seconds = 1.0f;\n66: int record_retention_days = 3;\n67: std::string record_shm_dir = \"/dev/shm/bytetrack-counter\";\n68: \n69: bool live_stream_enabled = false;\n70: std::string live_stream_frame_path = \"/dev/shm/bytetrack-counter/live_frame.jpg\";\n71: int live_stream_quality = 75;\n72: int live_stream_every_n = 2;\n73: \n\n(Showing lines 64-73 of 85. Use offset=74 to continue.)\n", + "metadata": { + "preview": " float record_delay_seconds = 10.0f;\n float record_end_delay_seconds = 1.0f;\n int record_retention_days = 3;\n std::string record_shm_dir = \"/dev/shm/bytetrack-counter\";\n\n bool live_stream_enabled = false;\n std::string live_stream_frame_path = \"/dev/shm/bytetrack-counter/live_frame.jpg\";\n int live_stream_quality = 75;\n int live_stream_every_n = 2;\n", + "truncated": true, + "loaded": [], + "display": { + "type": "file", + "path": "/opt/bytetrack-counter-cpp/src/config.hpp", + "text": " float record_delay_seconds = 10.0f;\n float record_end_delay_seconds = 1.0f;\n int record_retention_days = 3;\n std::string record_shm_dir = \"/dev/shm/bytetrack-counter\";\n\n bool live_stream_enabled = false;\n std::string live_stream_frame_path = \"/dev/shm/bytetrack-counter/live_frame.jpg\";\n int live_stream_quality = 75;\n int live_stream_every_n = 2;\n", + "lineStart": 64, + "lineEnd": 73, + "totalLines": 85, + "truncated": true + } + }, + "title": "src/config.hpp", + "time": { + "start": 1785316205113, + "end": 1785316205329 + } + }, + "id": "prt_fad236022001aqkCpIm7XKfemC", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad234041001FOozIKS9WN242z" + }, + { + "reason": "tool-calls", + "snapshot": "de4ebd1d78f794a948f9a27b7f07e225427d4727", + "type": "step-finish", + "tokens": { + "total": 131115, + "input": 129, + "output": 86, + "reasoning": 212, + "cache": { + "write": 0, + "read": 130688 + } + }, + "cost": 0.000789119, + "id": "prt_fad236375001f433Yf7EJ9ZkSC", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad234041001FOozIKS9WN242z" + } + ] + }, + { + "info": { + "parentID": "msg_fad233fe3001WQwNAEestOTMy6", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000747881, + "tokens": { + "total": 131502, + "input": 233, + "output": 145, + "reasoning": 52, + "cache": { + "write": 0, + "read": 131072 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785316205634, + "completed": 1785316211394 + }, + "finish": "tool-calls", + "id": "msg_fad236442001qHzJOMbptLTmwH", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "de4ebd1d78f794a948f9a27b7f07e225427d4727", + "type": "step-start", + "id": "prt_fad236c47001hXFfT1FzzzvPaJ", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad236442001qHzJOMbptLTmwH" + }, + { + "type": "reasoning", + "text": "I need to add `shm_dir` as a separate config field (with alias from both `SHM_DIR` and `RECORD_SHM_DIR`), then use it for the reset check. Let me add it to config.hpp and config.cpp.", + "time": { + "start": 1785316208466, + "end": 1785316209790 + }, + "id": "prt_fad236f52001wh6ktVInIrIfZz", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad236442001qHzJOMbptLTmwH" + }, + { + "type": "tool", + "tool": "edit", + "callID": "call_00_oaL4U3zkaztekUsp77R95083", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/config.hpp", + "newString": " int record_retention_days = 3;\n std::string shm_dir = \"/dev/shm/bytetrack-counter\";", + "oldString": " int record_retention_days = 3;\n std::string record_shm_dir = \"/dev/shm/bytetrack-counter\";" + }, + "output": "Edit applied successfully.", + "metadata": { + "diagnostics": {}, + "diff": "Index: /opt/bytetrack-counter-cpp/src/config.hpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/config.hpp\n+++ /opt/bytetrack-counter-cpp/src/config.hpp\n@@ -63,9 +63,9 @@\n int output_fps = 15;\n float record_delay_seconds = 10.0f;\n float record_end_delay_seconds = 1.0f;\n int record_retention_days = 3;\n-std::string record_shm_dir = \"/dev/shm/bytetrack-counter\";\n+std::string shm_dir = \"/dev/shm/bytetrack-counter\";\n \n bool live_stream_enabled = false;\n std::string live_stream_frame_path = \"/dev/shm/bytetrack-counter/live_frame.jpg\";\n int live_stream_quality = 75;\n", + "filediff": { + "file": "/opt/bytetrack-counter-cpp/src/config.hpp", + "patch": "Index: /opt/bytetrack-counter-cpp/src/config.hpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/config.hpp\n+++ /opt/bytetrack-counter-cpp/src/config.hpp\n@@ -63,9 +63,9 @@\n int output_fps = 15;\n float record_delay_seconds = 10.0f;\n float record_end_delay_seconds = 1.0f;\n int record_retention_days = 3;\n-std::string record_shm_dir = \"/dev/shm/bytetrack-counter\";\n+std::string shm_dir = \"/dev/shm/bytetrack-counter\";\n \n bool live_stream_enabled = false;\n std::string live_stream_frame_path = \"/dev/shm/bytetrack-counter/live_frame.jpg\";\n int live_stream_quality = 75;\n", + "additions": 1, + "deletions": 1 + }, + "truncated": false + }, + "title": "src/config.hpp", + "time": { + "start": 1785316210890, + "end": 1785316210900 + } + }, + "id": "prt_fad2374840015zf67Y00Zelv4E", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad236442001qHzJOMbptLTmwH" + }, + { + "reason": "tool-calls", + "snapshot": "dd2c51a55e895ca4bad6141b535c2696a9ce18cc", + "type": "step-finish", + "tokens": { + "total": 131502, + "input": 233, + "output": 145, + "reasoning": 52, + "cache": { + "write": 0, + "read": 131072 + } + }, + "cost": 0.000747881, + "id": "prt_fad23796a00142hcCg6LLV2vy6", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad236442001qHzJOMbptLTmwH" + }, + { + "type": "patch", + "hash": "de4ebd1d78f794a948f9a27b7f07e225427d4727", + "files": [ + "/opt/bytetrack-counter-cpp/src/config.hpp" + ], + "id": "prt_fad237abc001J4k7QyxB2L6B2U", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad236442001qHzJOMbptLTmwH" + } + ] + }, + { + "info": { + "parentID": "msg_fad233fe3001WQwNAEestOTMy6", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000718823, + "tokens": { + "total": 131765, + "input": 61, + "output": 224, + "reasoning": 24, + "cache": { + "write": 0, + "read": 131456 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785316211437, + "completed": 1785316217780 + }, + "finish": "tool-calls", + "id": "msg_fad237aed001EudF2aCuIrHpt0", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "dd2c51a55e895ca4bad6141b535c2696a9ce18cc", + "type": "step-start", + "id": "prt_fad2382b5001jJlabni1sEfq2Y", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad237aed001EudF2aCuIrHpt0" + }, + { + "type": "reasoning", + "text": "Now update config.cpp to load `SHM_DIR` with `RECORD_SHM_DIR` as fallback alias.", + "time": { + "start": 1785316214737, + "end": 1785316215401 + }, + "id": "prt_fad2387d1001l774w39SG9cN4i", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad237aed001EudF2aCuIrHpt0" + }, + { + "type": "tool", + "tool": "edit", + "callID": "call_00_PlkYiLsxxtHckM2XtxYC8826", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/config.cpp", + "newString": " auto rret_s = get_env(\"RECORD_RETENTION_DAYS\");\n if (!rret_s.empty()) record_retention_days = std::stoi(rret_s);\n shm_dir = get_env(\"RECORD_SHM_DIR\", shm_dir);\n shm_dir = get_env(\"SHM_DIR\", shm_dir);", + "oldString": " auto rret_s = get_env(\"RECORD_RETENTION_DAYS\");\n if (!rret_s.empty()) record_retention_days = std::stoi(rret_s);\n record_shm_dir = get_env(\"RECORD_SHM_DIR\", record_shm_dir);" + }, + "output": "Edit applied successfully.", + "metadata": { + "diagnostics": {}, + "diff": "Index: /opt/bytetrack-counter-cpp/src/config.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/config.cpp\n+++ /opt/bytetrack-counter-cpp/src/config.cpp\n@@ -145,9 +145,10 @@\n auto reds_s = get_env(\"RECORD_END_DELAY\");\n if (!reds_s.empty()) record_end_delay_seconds = std::stof(reds_s);\n auto rret_s = get_env(\"RECORD_RETENTION_DAYS\");\n if (!rret_s.empty()) record_retention_days = std::stoi(rret_s);\n-record_shm_dir = get_env(\"RECORD_SHM_DIR\", record_shm_dir);\n+shm_dir = get_env(\"RECORD_SHM_DIR\", shm_dir);\n+shm_dir = get_env(\"SHM_DIR\", shm_dir);\n \n auto lse_s = get_env(\"LIVE_STREAM_ENABLED\");\n live_stream_enabled = (lse_s == \"true\");\n live_stream_frame_path = get_env(\"LIVE_STREAM_FRAME_PATH\", live_stream_frame_path);\n", + "filediff": { + "file": "/opt/bytetrack-counter-cpp/src/config.cpp", + "patch": "Index: /opt/bytetrack-counter-cpp/src/config.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/config.cpp\n+++ /opt/bytetrack-counter-cpp/src/config.cpp\n@@ -145,9 +145,10 @@\n auto reds_s = get_env(\"RECORD_END_DELAY\");\n if (!reds_s.empty()) record_end_delay_seconds = std::stof(reds_s);\n auto rret_s = get_env(\"RECORD_RETENTION_DAYS\");\n if (!rret_s.empty()) record_retention_days = std::stoi(rret_s);\n-record_shm_dir = get_env(\"RECORD_SHM_DIR\", record_shm_dir);\n+shm_dir = get_env(\"RECORD_SHM_DIR\", shm_dir);\n+shm_dir = get_env(\"SHM_DIR\", shm_dir);\n \n auto lse_s = get_env(\"LIVE_STREAM_ENABLED\");\n live_stream_enabled = (lse_s == \"true\");\n live_stream_frame_path = get_env(\"LIVE_STREAM_FRAME_PATH\", live_stream_frame_path);\n", + "additions": 2, + "deletions": 1 + }, + "truncated": false + }, + "title": "src/config.cpp", + "time": { + "start": 1785316217257, + "end": 1785316217273 + } + }, + "id": "prt_fad238a6e001XUea5q1DQCcdYa", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad237aed001EudF2aCuIrHpt0" + }, + { + "reason": "tool-calls", + "snapshot": "9661ff5b422c4c19617df3c67313ccc7ee5f7b6f", + "type": "step-finish", + "tokens": { + "total": 131765, + "input": 61, + "output": 224, + "reasoning": 24, + "cache": { + "write": 0, + "read": 131456 + } + }, + "cost": 0.000718823, + "id": "prt_fad2392e2001ASxMRQUNei1KKM", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad237aed001EudF2aCuIrHpt0" + }, + { + "type": "patch", + "hash": "dd2c51a55e895ca4bad6141b535c2696a9ce18cc", + "files": [ + "/opt/bytetrack-counter-cpp/src/config.cpp" + ], + "id": "prt_fad2393ae001sViookGv3MEL0v", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad237aed001EudF2aCuIrHpt0" + } + ] + }, + { + "info": { + "parentID": "msg_fad233fe3001WQwNAEestOTMy6", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000580986, + "tokens": { + "total": 131865, + "input": 68, + "output": 64, + "reasoning": 21, + "cache": { + "write": 0, + "read": 131712 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785316217818, + "completed": 1785316222920 + }, + "finish": "tool-calls", + "id": "msg_fad2393da001Sbms08vvdFxF5m", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "9661ff5b422c4c19617df3c67313ccc7ee5f7b6f", + "type": "step-start", + "id": "prt_fad239bac0013Uf0lfcV6ExSQW", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad2393da001Sbms08vvdFxF5m" + }, + { + "type": "reasoning", + "text": "Now update references to `record_shm_dir` throughout the codebase to use `shm_dir`.", + "time": { + "start": 1785316221565, + "end": 1785316222167 + }, + "id": "prt_fad23a27c001WqQYbbzfqoH9SV", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad2393da001Sbms08vvdFxF5m" + }, + { + "type": "tool", + "tool": "grep", + "callID": "call_00_ZM7FIzXBYu46rSTvWGMy8345", + "state": { + "status": "completed", + "input": { + "include": "*.cpp", + "pattern": "record_shm_dir" + }, + "output": "Found 1 matches\n/opt/bytetrack-counter-cpp/src/main.cpp:\n Line 226: g_config.record_shm_dir, g_config.output_dir,\n", + "metadata": { + "matches": 1, + "truncated": false + }, + "title": "record_shm_dir", + "time": { + "start": 1785316222526, + "end": 1785316222634 + } + }, + "id": "prt_fad23a4dc001ezqSiYGepMPnot", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad2393da001Sbms08vvdFxF5m" + }, + { + "reason": "tool-calls", + "snapshot": "9661ff5b422c4c19617df3c67313ccc7ee5f7b6f", + "type": "step-finish", + "tokens": { + "total": 131865, + "input": 68, + "output": 64, + "reasoning": 21, + "cache": { + "write": 0, + "read": 131712 + } + }, + "cost": 0.000580986, + "id": "prt_fad23a767001GBVX9fjbRAf5p2", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad2393da001Sbms08vvdFxF5m" + } + ] + }, + { + "info": { + "parentID": "msg_fad233fe3001WQwNAEestOTMy6", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000607115, + "tokens": { + "total": 132025, + "input": 73, + "output": 112, + "reasoning": 0, + "cache": { + "write": 0, + "read": 131840 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785316222970, + "completed": 1785316226984 + }, + "finish": "tool-calls", + "id": "msg_fad23a7fa00165d8Pz7GIFHzyK", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "9661ff5b422c4c19617df3c67313ccc7ee5f7b6f", + "type": "step-start", + "id": "prt_fad23af69001F1x4vS0oaKMHma", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad23a7fa00165d8Pz7GIFHzyK" + }, + { + "type": "tool", + "tool": "edit", + "callID": "call_00_ET_8WiNmZdnXmL9vBYaHRt12520", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/main.cpp", + "newString": " g_config.shm_dir, g_config.output_dir,", + "oldString": " g_config.record_shm_dir, g_config.output_dir," + }, + "output": "Edit applied successfully.", + "metadata": { + "diagnostics": {}, + "diff": "Index: /opt/bytetrack-counter-cpp/src/main.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/main.cpp\n+++ /opt/bytetrack-counter-cpp/src/main.cpp\n@@ -222,9 +222,9 @@\n \n std::unique_ptr video_writer;\n if (g_config.record_video) {\n video_writer = std::make_unique(\n- g_config.record_shm_dir, g_config.output_dir,\n+ g_config.shm_dir, g_config.output_dir,\n w, h, static_cast(fps_prop),\n g_config.record_delay_seconds,\n g_config.record_end_delay_seconds,\n g_config.record_retention_days);\n", + "filediff": { + "file": "/opt/bytetrack-counter-cpp/src/main.cpp", + "patch": "Index: /opt/bytetrack-counter-cpp/src/main.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/main.cpp\n+++ /opt/bytetrack-counter-cpp/src/main.cpp\n@@ -222,9 +222,9 @@\n \n std::unique_ptr video_writer;\n if (g_config.record_video) {\n video_writer = std::make_unique(\n- g_config.record_shm_dir, g_config.output_dir,\n+ g_config.shm_dir, g_config.output_dir,\n w, h, static_cast(fps_prop),\n g_config.record_delay_seconds,\n g_config.record_end_delay_seconds,\n g_config.record_retention_days);\n", + "additions": 1, + "deletions": 1 + }, + "truncated": false + }, + "title": "src/main.cpp", + "time": { + "start": 1785316226567, + "end": 1785316226575 + } + }, + "id": "prt_fad23b360001Z32ZyfH3VNqeo1", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad23a7fa00165d8Pz7GIFHzyK" + }, + { + "reason": "tool-calls", + "snapshot": "e4a490fb0abe26a7864bf754363fb4bd2c89b06c", + "type": "step-finish", + "tokens": { + "total": 132025, + "input": 73, + "output": 112, + "reasoning": 0, + "cache": { + "write": 0, + "read": 131840 + } + }, + "cost": 0.000607115, + "id": "prt_fad23b6ef0016fQq93q5hUcE5C", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad23a7fa00165d8Pz7GIFHzyK" + }, + { + "type": "patch", + "hash": "9661ff5b422c4c19617df3c67313ccc7ee5f7b6f", + "files": [ + "/opt/bytetrack-counter-cpp/src/main.cpp" + ], + "id": "prt_fad23b7a2001cEM8CP2F6BfXjj", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad23a7fa00165d8Pz7GIFHzyK" + } + ] + }, + { + "info": { + "parentID": "msg_fad233fe3001WQwNAEestOTMy6", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000624544, + "tokens": { + "total": 132172, + "input": 72, + "output": 86, + "reasoning": 46, + "cache": { + "write": 0, + "read": 131968 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785316227042, + "completed": 1785316232241 + }, + "finish": "tool-calls", + "id": "msg_fad23b7e2001nJy4oGHap023Vg", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "e4a490fb0abe26a7864bf754363fb4bd2c89b06c", + "type": "step-start", + "id": "prt_fad23c05b001H5qjuwhoaJ64mh", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad23b7e2001nJy4oGHap023Vg" + }, + { + "type": "reasoning", + "text": "Now add the `.reset` file check at startup. I need to find the right place in main.cpp — before `BatchStore` is created (so state file can be reset before loading). Let me read the startup area.", + "time": { + "start": 1785316230118, + "end": 1785316231121 + }, + "id": "prt_fad23c3e6001NgLU0wRbgUn2xj", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad23b7e2001nJy4oGHap023Vg" + }, + { + "type": "tool", + "tool": "read", + "callID": "call_00_gqlxqOOshUarhzKxp5Kz1076", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/main.cpp", + "limit": 30, + "offset": 115 + }, + "output": "/opt/bytetrack-counter-cpp/src/main.cpp\nfile\n\n115: }\n116: \n117: g_config.load_from_env(argv[1]);\n118: \n119: std::cout << \"Starting ByteTrack Counter (C++)\" << std::endl;\n120: std::cout << \"Version: \" << version::GIT_COMMIT\n121: << \" | branch: \" << version::GIT_BRANCH\n122: << \" | built: \" << version::BUILD_DATE << \" \" << version::BUILD_TIME\n123: << \" | rknn: \" << (version::BUILD_RKNN ? \"ON\" : \"OFF\");\n124: if (!version::GIT_TAG.empty())\n125: std::cout << \" | tag: \" << version::GIT_TAG;\n126: std::cout << std::endl;\n127: std::cout << \"Camera: \" << g_config.camera_name << std::endl;\n128: std::cout << \"Source: \" << g_config.source << std::endl;\n129: std::cout << \"Model: \" << g_config.model_path << \" | imgsz=\" << g_config.imgsz\n130: << \" | core_mask=\" << g_config.core_mask << std::endl;\n131: std::cout << \"DB: \" << g_config.db_path << std::endl;\n132: std::cout << \"State: \" << g_config.state_file << std::endl;\n133: std::cout << \"ByteTrack Index 0: high_thresh=\" << g_config.track_high_thresh_0\n134: << \" low_thresh=\" << g_config.track_low_thresh_0\n135: << \" match_thresh=\" << g_config.track_match_thresh_0\n136: << \" buffer=\" << g_config.track_buffer_0\n137: << \" min_hits=\" << g_config.track_min_hits_0 << std::endl;\n138: std::cout << \"ByteTrack Index 1: high_thresh=\" << g_config.track_high_thresh_1\n139: << \" low_thresh=\" << g_config.track_low_thresh_1\n140: << \" match_thresh=\" << g_config.track_match_thresh_1\n141: << \" buffer=\" << g_config.track_buffer_1\n142: << \" min_hits=\" << g_config.track_min_hits_1 << std::endl;\n143: \n144: if (g_config.live_stream_enabled) {\n\n(Showing lines 115-144 of 572. Use offset=145 to continue.)\n", + "metadata": { + "preview": " }\n\n g_config.load_from_env(argv[1]);\n\n std::cout << \"Starting ByteTrack Counter (C++)\" << std::endl;\n std::cout << \"Version: \" << version::GIT_COMMIT\n << \" | branch: \" << version::GIT_BRANCH\n << \" | built: \" << version::BUILD_DATE << \" \" << version::BUILD_TIME\n << \" | rknn: \" << (version::BUILD_RKNN ? \"ON\" : \"OFF\");\n if (!version::GIT_TAG.empty())\n std::cout << \" | tag: \" << version::GIT_TAG;\n std::cout << std::endl;\n std::cout << \"Camera: \" << g_config.camera_name << std::endl;\n std::cout << \"Source: \" << g_config.source << std::endl;\n std::cout << \"Model: \" << g_config.model_path << \" | imgsz=\" << g_config.imgsz\n << \" | core_mask=\" << g_config.core_mask << std::endl;\n std::cout << \"DB: \" << g_config.db_path << std::endl;\n std::cout << \"State: \" << g_config.state_file << std::endl;\n std::cout << \"ByteTrack Index 0: high_thresh=\" << g_config.track_high_thresh_0\n << \" low_thresh=\" << g_config.track_low_thresh_0", + "truncated": true, + "loaded": [], + "display": { + "type": "file", + "path": "/opt/bytetrack-counter-cpp/src/main.cpp", + "text": " }\n\n g_config.load_from_env(argv[1]);\n\n std::cout << \"Starting ByteTrack Counter (C++)\" << std::endl;\n std::cout << \"Version: \" << version::GIT_COMMIT\n << \" | branch: \" << version::GIT_BRANCH\n << \" | built: \" << version::BUILD_DATE << \" \" << version::BUILD_TIME\n << \" | rknn: \" << (version::BUILD_RKNN ? \"ON\" : \"OFF\");\n if (!version::GIT_TAG.empty())\n std::cout << \" | tag: \" << version::GIT_TAG;\n std::cout << std::endl;\n std::cout << \"Camera: \" << g_config.camera_name << std::endl;\n std::cout << \"Source: \" << g_config.source << std::endl;\n std::cout << \"Model: \" << g_config.model_path << \" | imgsz=\" << g_config.imgsz\n << \" | core_mask=\" << g_config.core_mask << std::endl;\n std::cout << \"DB: \" << g_config.db_path << std::endl;\n std::cout << \"State: \" << g_config.state_file << std::endl;\n std::cout << \"ByteTrack Index 0: high_thresh=\" << g_config.track_high_thresh_0\n << \" low_thresh=\" << g_config.track_low_thresh_0\n << \" match_thresh=\" << g_config.track_match_thresh_0\n << \" buffer=\" << g_config.track_buffer_0\n << \" min_hits=\" << g_config.track_min_hits_0 << std::endl;\n std::cout << \"ByteTrack Index 1: high_thresh=\" << g_config.track_high_thresh_1\n << \" low_thresh=\" << g_config.track_low_thresh_1\n << \" match_thresh=\" << g_config.track_match_thresh_1\n << \" buffer=\" << g_config.track_buffer_1\n << \" min_hits=\" << g_config.track_min_hits_1 << std::endl;\n\n if (g_config.live_stream_enabled) {", + "lineStart": 115, + "lineEnd": 144, + "totalLines": 572, + "truncated": true + } + }, + "title": "src/main.cpp", + "time": { + "start": 1785316231677, + "end": 1785316232005 + } + }, + "id": "prt_fad23c7d7001Hfh4ewwwbjdVXc", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad23b7e2001nJy4oGHap023Vg" + }, + { + "reason": "tool-calls", + "snapshot": "e4a490fb0abe26a7864bf754363fb4bd2c89b06c", + "type": "step-finish", + "tokens": { + "total": 132172, + "input": 72, + "output": 86, + "reasoning": 46, + "cache": { + "write": 0, + "read": 131968 + } + }, + "cost": 0.000624544, + "id": "prt_fad23cbda001vmGrQMXnFA7gCc", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad23b7e2001nJy4oGHap023Vg" + } + ] + }, + { + "info": { + "parentID": "msg_fad233fe3001WQwNAEestOTMy6", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.001174413, + "tokens": { + "total": 133237, + "input": 683, + "output": 379, + "reasoning": 79, + "cache": { + "write": 0, + "read": 132096 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785316232307, + "completed": 1785316240357 + }, + "finish": "tool-calls", + "id": "msg_fad23cc730012ZJvg7FzROP7Zh", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "e4a490fb0abe26a7864bf754363fb4bd2c89b06c", + "type": "step-start", + "id": "prt_fad23d3c8001Az9eW19oFoBWQu", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad23cc730012ZJvg7FzROP7Zh" + }, + { + "type": "reasoning", + "text": "I'll add the `.reset` check right after config is loaded and the version banner is printed, but before `BatchStore` is created. This way we can delete the state file before `BatchStore::load_state()` reads it.\n\nThe check should be: if `shm_dir/.reset` exists, delete `g_config.state_file` and then delete the `.reset` file.", + "time": { + "start": 1785316234924, + "end": 1785316236485 + }, + "id": "prt_fad23d6ac001JrDPl02M0dGRf9", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad23cc730012ZJvg7FzROP7Zh" + }, + { + "type": "tool", + "tool": "edit", + "callID": "call_00_oWR4a4ODGDVkEZvVuIfo4043", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/src/main.cpp", + "newString": " std::cout << \"ByteTrack Index 1: high_thresh=\" << g_config.track_high_thresh_1\n << \" low_thresh=\" << g_config.track_low_thresh_1\n << \" match_thresh=\" << g_config.track_match_thresh_1\n << \" buffer=\" << g_config.track_buffer_1\n << \" min_hits=\" << g_config.track_min_hits_1 << std::endl;\n\n {\n std::string reset_file = g_config.shm_dir + \"/.reset\";\n if (std::filesystem::exists(reset_file)) {\n std::cout << \"[RESET] .reset detected — clearing state\" << std::endl;\n std::error_code ec;\n std::filesystem::remove(g_config.state_file, ec);\n std::filesystem::remove(reset_file, ec);\n }\n }", + "oldString": " std::cout << \"ByteTrack Index 1: high_thresh=\" << g_config.track_high_thresh_1\n << \" low_thresh=\" << g_config.track_low_thresh_1\n << \" match_thresh=\" << g_config.track_match_thresh_1\n << \" buffer=\" << g_config.track_buffer_1\n << \" min_hits=\" << g_config.track_min_hits_1 << std::endl;" + }, + "output": "Edit applied successfully.", + "metadata": { + "diagnostics": {}, + "diff": "Index: /opt/bytetrack-counter-cpp/src/main.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/main.cpp\n+++ /opt/bytetrack-counter-cpp/src/main.cpp\n@@ -140,8 +140,18 @@\n << \" match_thresh=\" << g_config.track_match_thresh_1\n << \" buffer=\" << g_config.track_buffer_1\n << \" min_hits=\" << g_config.track_min_hits_1 << std::endl;\n \n+{\n+ std::string reset_file = g_config.shm_dir + \"/.reset\";\n+ if (std::filesystem::exists(reset_file)) {\n+ std::cout << \"[RESET] .reset detected — clearing state\" << std::endl;\n+ std::error_code ec;\n+ std::filesystem::remove(g_config.state_file, ec);\n+ std::filesystem::remove(reset_file, ec);\n+ }\n+}\n+\n if (g_config.live_stream_enabled) {\n std::filesystem::path live_p(g_config.live_stream_frame_path);\n if (live_p.has_parent_path())\n std::filesystem::create_directories(live_p.parent_path());\n", + "filediff": { + "file": "/opt/bytetrack-counter-cpp/src/main.cpp", + "patch": "Index: /opt/bytetrack-counter-cpp/src/main.cpp\n===================================================================\n--- /opt/bytetrack-counter-cpp/src/main.cpp\n+++ /opt/bytetrack-counter-cpp/src/main.cpp\n@@ -140,8 +140,18 @@\n << \" match_thresh=\" << g_config.track_match_thresh_1\n << \" buffer=\" << g_config.track_buffer_1\n << \" min_hits=\" << g_config.track_min_hits_1 << std::endl;\n \n+{\n+ std::string reset_file = g_config.shm_dir + \"/.reset\";\n+ if (std::filesystem::exists(reset_file)) {\n+ std::cout << \"[RESET] .reset detected — clearing state\" << std::endl;\n+ std::error_code ec;\n+ std::filesystem::remove(g_config.state_file, ec);\n+ std::filesystem::remove(reset_file, ec);\n+ }\n+}\n+\n if (g_config.live_stream_enabled) {\n std::filesystem::path live_p(g_config.live_stream_frame_path);\n if (live_p.has_parent_path())\n std::filesystem::create_directories(live_p.parent_path());\n", + "additions": 10, + "deletions": 0 + }, + "truncated": false + }, + "title": "src/main.cpp", + "time": { + "start": 1785316239604, + "end": 1785316239613 + } + }, + "id": "prt_fad23dccd001aGvgBpful52nlN", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad23cc730012ZJvg7FzROP7Zh" + }, + { + "reason": "tool-calls", + "snapshot": "1b26dcb5792a26fddd70a889d6e79749024d1584", + "type": "step-finish", + "tokens": { + "total": 133237, + "input": 683, + "output": 379, + "reasoning": 79, + "cache": { + "write": 0, + "read": 132096 + } + }, + "cost": 0.001174413, + "id": "prt_fad23eb3000116Ue3gXOaYztUZ", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad23cc730012ZJvg7FzROP7Zh" + }, + { + "type": "patch", + "hash": "e4a490fb0abe26a7864bf754363fb4bd2c89b06c", + "files": [ + "/opt/bytetrack-counter-cpp/src/main.cpp" + ], + "id": "prt_fad23ebdf001LB82cf2tYKlBHL", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad23cc730012ZJvg7FzROP7Zh" + } + ] + }, + { + "info": { + "parentID": "msg_fad233fe3001WQwNAEestOTMy6", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.00074356, + "tokens": { + "total": 133486, + "input": 132, + "output": 223, + "reasoning": 11, + "cache": { + "write": 0, + "read": 133120 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785316240400, + "completed": 1785316246431 + }, + "finish": "tool-calls", + "id": "msg_fad23ec10001jwupfi1I8Rk8kp", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "1b26dcb5792a26fddd70a889d6e79749024d1584", + "type": "step-start", + "id": "prt_fad23f4d0001Y3DgPmms5e2vXF", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad23ec10001jwupfi1I8Rk8kp" + }, + { + "type": "reasoning", + "text": "Now update config.env.example to document SHM_DIR.", + "time": { + "start": 1785316243217, + "end": 1785316243797 + }, + "id": "prt_fad23f7100014WYWLdydw8MtWB", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad23ec10001jwupfi1I8Rk8kp" + }, + { + "type": "tool", + "tool": "edit", + "callID": "call_00_EUi4lm6nJOTJdbCzMyR24311", + "state": { + "status": "completed", + "input": { + "filePath": "/opt/bytetrack-counter-cpp/config.env.example", + "newString": "# Days to keep recorded video folders (folders older than this deleted on startup)\nRECORD_RETENTION_DAYS=3\n# Shared memory directory — used for video recording, live snapshots, and .reset trigger\n# RECORD_SHM_DIR is an alias; SHM_DIR takes priority if both set\nSHM_DIR=/dev/shm/bytetrack-counter", + "oldString": "# Days to keep recorded video folders (folders older than this deleted on startup)\nRECORD_RETENTION_DAYS=3\n# Shared memory directory for recording (fast write, moved to OUTPUT_DIR on close)\nRECORD_SHM_DIR=/dev/shm/bytetrack-counter" + }, + "output": "Edit applied successfully.", + "metadata": { + "diagnostics": {}, + "diff": "Index: /opt/bytetrack-counter-cpp/config.env.example\n===================================================================\n--- /opt/bytetrack-counter-cpp/config.env.example\n+++ /opt/bytetrack-counter-cpp/config.env.example\n@@ -141,10 +141,11 @@\n # Extra seconds to keep recording after batch end signal before stopping\n RECORD_END_DELAY=1\n # Days to keep recorded video folders (folders older than this deleted on startup)\n RECORD_RETENTION_DAYS=3\n-# Shared memory directory for recording (fast write, moved to OUTPUT_DIR on close)\n-RECORD_SHM_DIR=/dev/shm/bytetrack-counter\n+# Shared memory directory — used for video recording, live snapshots, and .reset trigger\n+# RECORD_SHM_DIR is an alias; SHM_DIR takes priority if both set\n+SHM_DIR=/dev/shm/bytetrack-counter\n \n # --- Live stream snapshot ---\n # Periodically write the latest annotated frame as JPEG for an external web server\n LIVE_STREAM_ENABLED=false\n", + "filediff": { + "file": "/opt/bytetrack-counter-cpp/config.env.example", + "patch": "Index: /opt/bytetrack-counter-cpp/config.env.example\n===================================================================\n--- /opt/bytetrack-counter-cpp/config.env.example\n+++ /opt/bytetrack-counter-cpp/config.env.example\n@@ -141,10 +141,11 @@\n # Extra seconds to keep recording after batch end signal before stopping\n RECORD_END_DELAY=1\n # Days to keep recorded video folders (folders older than this deleted on startup)\n RECORD_RETENTION_DAYS=3\n-# Shared memory directory for recording (fast write, moved to OUTPUT_DIR on close)\n-RECORD_SHM_DIR=/dev/shm/bytetrack-counter\n+# Shared memory directory — used for video recording, live snapshots, and .reset trigger\n+# RECORD_SHM_DIR is an alias; SHM_DIR takes priority if both set\n+SHM_DIR=/dev/shm/bytetrack-counter\n \n # --- Live stream snapshot ---\n # Periodically write the latest annotated frame as JPEG for an external web server\n LIVE_STREAM_ENABLED=false\n", + "additions": 3, + "deletions": 2 + }, + "truncated": false + }, + "title": "config.env.example", + "time": { + "start": 1785316245747, + "end": 1785316245753 + } + }, + "id": "prt_fad23f95c001OmRadTyVblzeAP", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad23ec10001jwupfi1I8Rk8kp" + }, + { + "reason": "tool-calls", + "snapshot": "7d8c874f4eb5f8450e2426137b047db819ee00fd", + "type": "step-finish", + "tokens": { + "total": 133486, + "input": 132, + "output": 223, + "reasoning": 11, + "cache": { + "write": 0, + "read": 133120 + } + }, + "cost": 0.00074356, + "id": "prt_fad2402d8001qTE0mrP3l2OMwD", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad23ec10001jwupfi1I8Rk8kp" + }, + { + "type": "patch", + "hash": "1b26dcb5792a26fddd70a889d6e79749024d1584", + "files": [ + "/opt/bytetrack-counter-cpp/config.env.example" + ], + "id": "prt_fad24039a001jYqM3ICH669Vcm", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad23ec10001jwupfi1I8Rk8kp" + } + ] + }, + { + "info": { + "parentID": "msg_fad233fe3001WQwNAEestOTMy6", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000597023, + "tokens": { + "total": 133569, + "input": 125, + "output": 68, + "reasoning": 0, + "cache": { + "write": 0, + "read": 133376 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785316246463, + "completed": 1785316259120 + }, + "finish": "tool-calls", + "id": "msg_fad2403bf001PUrN1sX31ToBwU", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "7d8c874f4eb5f8450e2426137b047db819ee00fd", + "type": "step-start", + "id": "prt_fad240c4a001W3Md9kc25CBR4j", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad2403bf001PUrN1sX31ToBwU" + }, + { + "type": "tool", + "tool": "bash", + "callID": "call_00_ET_D0XDe58bNQzy9gY8czVX8496", + "state": { + "status": "completed", + "input": { + "command": "cd /opt/bytetrack-counter-cpp/build && make -j$(nproc) 2>&1 | tail -10" + }, + "output": "[ 10%] Building CXX object CMakeFiles/bytetrack-counter.dir/src/config.cpp.o\n[ 30%] Building CXX object CMakeFiles/bytetrack-counter.dir/src/drawing.cpp.o\n[ 30%] Building CXX object CMakeFiles/bytetrack-counter.dir/src/main.cpp.o\n[ 40%] Linking CXX executable bytetrack-counter\n[100%] Built target bytetrack-counter\n", + "metadata": { + "output": "[ 10%] Building CXX object CMakeFiles/bytetrack-counter.dir/src/config.cpp.o\n[ 30%] Building CXX object CMakeFiles/bytetrack-counter.dir/src/drawing.cpp.o\n[ 30%] Building CXX object CMakeFiles/bytetrack-counter.dir/src/main.cpp.o\n[ 40%] Linking CXX executable bytetrack-counter\n[100%] Built target bytetrack-counter\n", + "exit": 0, + "truncated": false + }, + "title": "cd /opt/bytetrack-counter-cpp/build && make -j$(nproc) 2>&1 | tail -10", + "time": { + "start": 1785316258944, + "end": 1785316258954 + } + }, + "id": "prt_fad2412fa0013MHYy7YdjrsTdz", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad2403bf001PUrN1sX31ToBwU" + }, + { + "reason": "tool-calls", + "snapshot": "7d8c874f4eb5f8450e2426137b047db819ee00fd", + "type": "step-finish", + "tokens": { + "total": 133569, + "input": 125, + "output": 68, + "reasoning": 0, + "cache": { + "write": 0, + "read": 133376 + } + }, + "cost": 0.000597023, + "id": "prt_fad2434b7001Y4i9eYwqKfA3zM", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad2403bf001PUrN1sX31ToBwU" + } + ] + }, + { + "info": { + "parentID": "msg_fad233fe3001WQwNAEestOTMy6", + "role": "assistant", + "mode": "build", + "agent": "build", + "path": { + "cwd": "/opt/bytetrack-counter-cpp", + "root": "/opt/bytetrack-counter-cpp" + }, + "cost": 0.000602272, + "tokens": { + "total": 133724, + "input": 168, + "output": 52, + "reasoning": 0, + "cache": { + "write": 0, + "read": 133504 + } + }, + "modelID": "deepseek-v4-pro", + "providerID": "deepseek", + "time": { + "created": 1785316259157, + "completed": 1785316263254 + }, + "finish": "stop", + "id": "msg_fad2435550018wohdUwDYyc0GF", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3" + }, + "parts": [ + { + "snapshot": "7d8c874f4eb5f8450e2426137b047db819ee00fd", + "type": "step-start", + "id": "prt_fad243d06001Jqv4IEX2ajcxIG", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad2435550018wohdUwDYyc0GF" + }, + { + "type": "text", + "text": "Done. `SHM_DIR` replaces `RECORD_SHM_DIR` (latter still works as alias). On startup, if `SHM_DIR/.reset` exists:\n- `STATE_FILE` is deleted\n- `.reset` is deleted immediately", + "time": { + "start": 1785316262273, + "end": 1785316262993 + }, + "id": "prt_fad244181001JdmqaLUn2VDq8L", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad2435550018wohdUwDYyc0GF" + }, + { + "reason": "stop", + "snapshot": "7d8c874f4eb5f8450e2426137b047db819ee00fd", + "type": "step-finish", + "tokens": { + "total": 133724, + "input": 168, + "output": 52, + "reasoning": 0, + "cache": { + "write": 0, + "read": 133504 + } + }, + "cost": 0.000602272, + "id": "prt_fad2444b0001gj64Qf1mAsqJzA", + "sessionID": "ses_0c3efadf0ffeP4HreoRuvKX5h3", + "messageID": "msg_fad2435550018wohdUwDYyc0GF" + } + ] } ] } diff --git a/build/bytetrack-counter b/build/bytetrack-counter index 0da94d25560ecd0e3cf1248e22187ca1bd5a87c3..c33779f7e0d187daf66f86442f3beca627cf0c5b 100755 GIT binary patch delta 818947 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­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 ^XbPCbZ{ zZ_AL1d2&X9PeeRacrQ9S*IFZTm;!9p%zxS6ct1x(M=2zDI!~{y5Mt|D3^J) z8i*BQo4|_a!*IiX0zk4JMvY-pfl64ZRLl}p<>LjAXG_gi(6ZlFWe9H1;Xqxp>^|%|#MVZX2 zg}zeJB3qB+;u@rdv4M)%V4_$f(B{<|m(nKyJiAa}*9;(2Pays}Ir9YKz-tZaGEMYJ zZ;u}Nc7++ffPN1 zK}3Ulj0tbYGiaQ6TSUu-4LgbrVu!%;vWnFNI()TI@roWILW~nL1jZTa1x-$Y%S3@E zef_{9fr0U}u=^IB^|C==gs&Dx z_=*Oii@?S`6|s#`ksyq8ynyxavL6PY{ThqjXwkbZx{)m;gTa~$3^>%nfCG?{7jX%7 z;Xh=})f0q~Q!m07#!!lN0*_h3uquc~qMH~crim2-cPI^jdD9_w>{QdS4)%y%k(@6&AhSqW4?$s6~%c-#>4fwggzU z=$jVZycS%ryfl5!ys0A1VRzxY!J@ZW^d5^|@sofI>Aa~v$N_qrMW3+f3l@FVqL*x2 z)@B;vu=nRLk;E)|*-wN0Pg(TEU7hFOPav`D;HK~E+ZMgXsm|!u+eSmWg!&qiYo_h(@BD7$v3&471heHjyVM)T$;h=}~K#z~EM`C1R7v zk)dIT4Fq;DsMSM^5L3iDks|Ok?4$6Bk?TiMz6M%t(yLabggyqhc4ELqY0d@SUwZY< z*z2$0_P50wsYm7Ej}>02D|Q;TUYb7+3=&InMlEc6i2$fY1%|Yrz=-m+9ybwKlK%v( zN}_>C5!te(Zunf6Vw1quw@<<pz-r#7V2uz9#F`7K`xF{Omh`FzoM}ZX zF-(jRST;~MEE_1WeNKUo+$yjj286Q<)2qjC=ZOW!vJypW!ueARa|#7^ z@hPyDqUa(9h!Gc(jN+^$DV0mf@7Vh{00yuYNbQ1J|aTIi8&(Si}UJpSzN3W zDFO?oBXFxEnus1EMobcO1ZK1vV1vk!X0^(Q8lsWFs*bv0eyhOzRJ#Nuc79HKIr-dPsL5&>Q!q+Two1Rt!W8; z2Eb-P1=f5NMouV72(03(l_SRl-QLhkIIbaD2=v-2qSscS*H)|&*oCGRnxFuAL^;t! zLFE|r-gkN>b68|6P2>1Vm;AG;M!Gj zlt2UhEm(^#r0KVC0%OwrTZKof{QHD=`!Jo}{iE+8p3%CDkpNz({B6Y4Pizv6a!f^R zEL2oT=@^QN1mRo|G)PO~=lz9z} zwJ!zMz7!(_7QNKMaO87^N5j?i!7*=G^t#)E{ZCo++IIx|@1nl{Gx-CS05cXHtD`TY zIBPQWGU^%Mu2HL=XeD}xC^11`EeJltZO4Q27qjRy7Jb#Cr!0E)9d5evFE8Vs*dS*# z*Vq}P7$DHit2IYp02qhWNemO?E~=&*gUhgJ(ed({#)V%0Brr{^5g6X6i2LG6^Z;9W z+(h6$sMatMCl-koY5qLidWa~2(X5JioB&AT^Mwsqr|$g%q*DQck?QK0)!B#9#FP^*r>qOn>d1o{oNaGL|dSsx0nyb_CEZPD8- z`j|zZqP{!n^haZ>mH>Ho24}Rvq7Pg2^1JrNBcB_`8%=mfp;dx+FBKRKDRN{>QAX4f ztwbL&=0Zxoh&~jnoL_|ZVPc%XI;V=*!wkrv`m1n{(dJb`C>Piwryf%3p;FGM3s$Os z2f!#sfl;nvScWEmX%~{1fOkAdRw++%e;2@09R;3*C@_Xr%*x5%Mdwf~r`75srimQ_ zv!E}*t-*z~f60y5l`yDR7nEOt@+(k&#RjqC;=0O5_SWp~L~_oeCmxZTzFc^%-W9%# z$ciO*62Kf!Q7yfS9ReF{=;i{;?{ss~DWR{x=d5&m#q9x4sMRV8nfnR~vg{t~X;l|o z)ruMd7q?otQ7Zb0sEcsr)4}Cwv*^nfechrv&jiO`Mt%RKv26*E)gK&DxkYcV=v`?# z()X{)NSed0K4Z}n7Tr7>oY9gX-O=@EY5qN&7Yu_H7=$U}E{<0W1V=Vw(U&cHLQZL{ zS(5wv09v7<5Y2+z}$NZ)-16?;E{)lSR7Dn6UDNn76xUCdLl;55E%BKf*YRV z0vE3g2bT%C`UChHC3Xl5DpkbLU4fyyB1II*Nwqcz>}r7(F8)Mt?6nrX&7u!j^ht}p zLVf?njcrSSJPG|Fa$h4I3cOLT$dP%)7_mX1BT^CL%V_|6JrtD$hMBO!HNO#D>UN9X zXVD`Tea)ipP~ZPpw^)WWm$gJ2ksylYl)7O6r@+Wf5hLaZY-m;yJBJi_LsBtD%o1xv zksSLf+@eIBz`$HZY-dz#6AN-utyLmL6iLg#YGka-2B^@^m6(&2b|6ZwfZ@tOX6>KLN^5f;w6<;));5XO(+08n)b z>?Tv-QK6@rk?ATFdlE97~wbqCo0t;&@VhKcn#;?HYuws;$B(S2U;y5uw zps!bPnZP7%4%Pbyv_%drJmF#?TStwrfopm8f&h!FzagNnGY{|A6e zSY=-F;3uasBTNdHjyQz--3u$Vg)vbD9|q`vSmn7 zO<**w)(Wvhl*t(t8;L#wvr83+iAe$r8Q+FDMqu!))*4YO$JFX0MqPx*|1$X6Nm%sk zzY6x>Y0>8_df&1e&;Fs|6dnAPo3kUgghk)B=w+vaGg_0T?-?4lq&e&k4ZAIR#G?Oy zbe(@dWkvbM4~mAyDyyg$rM#=8WaxroVv@2+$rcuCWTcc(SY&9dQjt-YElMgXR%)ImS%$YN1&bhrF zJ{rYktHNBA2YA|Vqf3zO;rSk3>fu%3>-CQccjIQOCqlP}H~%g=qn#e!x6YZqOE`Zz z+R%uHmpvFAe%ixp9!d^x)5jl0Je=$y{clUq<>5mfo<0+8r`W@@6Tgp+(CFcv9^U8S z`Hw`~A5p&6{;mni{tz8u+QVyRqrn*rUYW^z6cgOM7k)Lh>2^Ovg}+bzXDt^Rxs%mR|%y? zWIN8hwE|};IID>(PQe|`2?W7(d;&0!Qc9_#;AA6ycmzXao|0;I{2DGi>j+7tJ{48Z zTY{K}7kPMu|;s zVbQ}=%^@jMHl>`>Nx?B9e)VSCZy;@yUJ7pI2*mP;NCO2+h2rX=;8vBm#wkmbnAtC| zgi=rGqzqHAI3hvP%s~;XicDfz-2NW6lE{B9y3)%$eAvV1J$%)}GgfW7Ya{X6X*ic2 zZXjFZ6&~K~;k_O{9^xBb7Pu7hSf3Z*Dtyw`vXy$ea1kRAvuzQqFNri$@F0Y^^39Y; zwG}goibrEwgaZjaJ4=EWtd&xJxG}rl!&^MO+N4Zj1RD{tD_A0>X0J$IXIQy@OQlod*bIV7-}(nx8e3{Y~+t{DWu61PYNrG+v_S*D#q$ zDWjkS;=%%@$clq|{s33Iv9dzRF$V<}Qz|I+luio92MIDqNi#cU;mW5}QCcZDjf>wT zWrc!s#;j~T5+A(4Nd)gH5b39kQ*cl0QNSijJEh+21vI0N+R26dM#WeuG~50NR~@C5 z(qqNM|A^oF5}t$LC=jWj)Kg-nRv@~T2yQHjU>l7HZnukIHBST!Z6ZAsJcA{!8489I zaiRB#%u%q0d(c8FsB5^)+(EPndYkwZQ7S2o6!bRn8>Gxo7Oj|)KO=Ic+3{xtz-7Eh zHKm!-MH#28ip0!r35R3G9}II6_`gUr(o4`92j z2h&#(Ou$95%>j`{Nb*E8`Ku;ofc*sWt zcTz;Kiu@F0(2D7N3iX6r?t)Uy0g*gPC1r?$1zYjMIYDHCvPj7>+m--}C^ZxeOad{# z6B(l5G$^ioN*Se^(njf{V4K7tgzTc=&1>SCp>&%a;zFMn!P!s*3)LcdCgo{JB?X;d zT>TVWABk&~Qfvyuh3XK&<^vJbgb2n65zHW-#^GdtH&ePP*wrHerYU$(Od6aSrZi)+xn|&gMlo`qjC1z5dfnON~gPpkA zDI*jdMFKl1xFi%8jwulwQz9s`2u?pDSP>Q(qhKZ_t}Y6WH*t+pX3e&L;iMclyZ(iv zuk~N(RipMd8ck3NcK(T^n*Abi3YOEwRcFPN{2Q@S&F+80LY4f+9d!K0<$x93yA+>Z z`s@>*GGnEh(qvLr&|DT}nt~Msz-&hZ5|KIzPCVkmiAQ9_ zxwfssg~!iCCe5x@)HkNAaGAkX)K-oCEz=wc&`%ksAVdGfd^>nw^oSGp@DdNlA_mN% zeXLYcnkYCUiQfeh=6x>D? zh^iC8Q76()8Kk6{Lkwc2oUUdHX8Yn-Xm&jh!QGzcQIWVmFRnDRUjze`2u3E6c1kY= zmz99GXT)N+m&EYq{@ZuQwx{&mz9WV*+wXb%y<)#JZr=x}^nhABveE1yzfYExq|b3o7lWtM{bnF2G+ z{v&K~EAw=%Qm{}ZeuWfFro`1t8KO*6mYr+skqEM2tY9K9u3SnPrJmAB!MR?7Oj58P zmJzI!(N#~ueO2+p*+*oEf<7!R^x+pk(1%5E=S>8CSOnK!BH8A^3sA)wW?LFu*nbV# z8NV&M4>WlAiifwE{bF^Jf_dXna4k@B%sz3IQZP*uR~u!3GC@f*1xLd#mx3vpxT-0* zW)W9A1%s`)#wj?JiYsRJij+`rUJ+L(1>>=}uxD8W_sU)f$)@B}a4TKlBxQlJO35|5 z#1ESlMTRL8lsO8HXYp&L;DTFRqgJwVdZMej)$C43s6`6SC*s1Ypa@PlA~@xWWSA+D z97-_-s~rMc98B2)SA((AO6jGHQWhwy6r7_aLJ_5$(m?5;3{l1@IDaF8S=xdl9W$|G z(4DZ>bqs7^HYJqp@!LhIvE?kC)1ZF?PbZlyP3`f3 zjg%hBpvZRg74b7m$0L``=75CjqokQVnQ+yagCdg@)U&uU&5jcwd6ZcSF5v`@n0+FX zlqCxKo4_JUIi-oxMX59eCn5+AOpz|ikb`>#Vp0b&ODEb>gGCD#;bgGwBm_V&5-FuL zm|Z8Kh`5CfXj)Igusw(`OqDh8K?#gbCf;-6(_w$hh%7!sls2;?2G=4b+f2b_a2kx& zX8t((IL!0#5)Ys7aE!lMNO_*pX!eQ=`*uVyl@P&9O9TVT$q;ON7AY}%L@+xSnWwCn z{c*T30on#Bq~IJPE{w1uO%x2K;=*7mGDE?@A+DGyI1Q3V!FfVl7*j|h zxaKH<*>wh7nG~!rimQ&&Nx^JIAf~$_^ORLerr9qr*NPcD139T98l%iomMNL$AnjY} zv@X+oCSnzteP_Z@1*L(~P8p;Wn}S>$#7aF~Eff@3{Lo?|7%oJXDOeyp8?G+O1f|vN z6WC2b3gT)tQ-oFq=|W`-oTV&NvQ6zdfTbdGU|QFR71MbR%9CymNPt2Lt}Vocd9nzG zCx}^+aN|Una)}R`Xgj2YQcvlm3{&PPxU!RwSRxWBv|?Jf!y=9nL8yO`m^mndRWA{o zfJCr(ln*JRVDU&?xV{ycr(~EN;+mo0bR@1pO0k&|S34!sq!hq~GmpqD1tYb%u!&Ek zjWR&N*^+(-L{J$bxRiyMv~y7cEPe~Znvn=rki{o1KDZ`?m_6r$k5MYjesT3sa?L?; zVZakvqTr(OJh-YTxn_sBDk&|LeoC6zEq>XQdYLHd8Bs6!l`R#eJbFxNW80}wX3JTGwYD{e*jN!Z{f@%`!pkNW_e7O23 zI4NHY*9ZlzdI?-LlvWBFS0Eeh_IUopUT#*KINTij5wap!HbyIT89&rs)Fh3Gk1!a~}Z??V)aG8R`S6u04w+MQo z2$o+&DkbQUs{7zmai4=z!K| zur!vB4sFpgCDUwuH3FbVi4;?C6JA`|lza+KNPwo~)v%7$G6^tBS)gDh0r>gXz`w@+ zlmkkFVcZeHxFdpbM+D=J2&(=y5R5w_4HOJN;==GFGEYf2d&N~qsixqp1!zVk(FU{a zGW?EThTr}6H!KLk8F`mTKBa=vD6$he zK(2>ZdU%(I4_umvP9Uc=n%8-Fn}_##_@v{m{asbhI}fRUd>kKmb##WNJv?|#boksP zzV>Itl}R2h;V}=dxGXw>77rhY=80e|+9R0t@V>I>geN_G#lv%UiXB(~8>+g(dPwE- z<7y)Q+USJKJbb{zM>ldw-zBiP(PIN2dR=tF8RgM@%){fCZw`<2w*=D>9>SMBJoELN z4N3Ss4=?fX%GalDsQ(QmuJ=Spe?xS_MIJur;msA!j;8OLAa9rR2)BKkhZkKD9e&os z)83dAp6TOlX2~8l{Vl-zCr)@>u769^OzDop7s%cSZ4X95($?9^jK6KJVcf zX75f+EHNJzsiDkJuzVvBSJ1NMs<&sl;iYXP8dP*w=m!lG7iGn*+;+mtB znuFqMr{LmLT+Hc&eE@;>5JW8((&u zdB@J!*(tMT&z0zPSRE3-2T9f!TC=t|;uDeq3=zfsdz~JLH-9+F#wyQ@PJ=VDE*aJy@@_IeGnm| z!YYgS;4X*=R#`+=tklLoxzX;1@iA%GxgNnJfAgBZdd=T{El>H)w3D3gT(jdUq*g}3 zLd;ciOF|G<4@D*^C1$s{YACp4D=uuXVMr^JbS+VG%|7@gDzqLoJ3*D!<3cm@mDePoemlqdy+{4rM zMu#u<@Fou*Bj5Z~KW_0}jcTm2V)Cy>m%!a%rF|10z6-F}64v`{Cqm@MG zm%_GQeWteehsk@A+BNmd;qa~vi#@#F!~4iLZ;YPvM9BC`bixC7M00EkmeS%#5y8C_ z5!|8_!TwN@RFm>H2zF44lv*ihzcXy_R;`eH^nc9Qc0<&;J$$POe>)KFR} zxN9vCcg`R?8-5sF^aT%J_3#EWC05f+O06|+Ws$CSQ!8-BNNGW%zlC0lySA`?b_H$Sta*JXA0X7u8qaYCZc_tJ-o-q%|Rq4w{%46Ov<|;t&~0| zwE|a-$j*j`q7!cS@O}^PGP~+w6?eWx+9=xIo6*G)*S#^&_=PNKN*CA**WtNg>Y5`5zbx5Gv{>DKs2nW5DF$#L6z;ttnHmqQH z5Z5H7%4~ZNT(}!2(nG;seQ`}wI?Wz&<(sVyR`!WtQ;P^DGLS^mE?jQ0A-$ngIHia zWywlb;ZxB$#>C|Y1n#8tS;<;>Iy!Kj*)M@H3_{G{4QOs`BNNm@!4?*Am71;ZgULX1$%SEwL-x`EUpF$YC&9h>I{-dKPo!wB_3Ym;o}}Y>*1M4+jPyDO|h3^ z2hO%8WU1He7r_o&kwTO5ehaOP(1i_Q0_)6Pkwr?}91zzSWsy>74hh6oc1Ez$X10Am zmP9`QpCJmKaS#_06~P9MX6xG59NTUdnq#q@Ia$#)RO8`I9$su}KM2#9TtZC$2a%5% ze921I&EPYXY;#atI95fPDcB4tE^M?F!A6n~L9)$0k#fp71^Y1sHc^%+sV1cb5RdbS z^jk6cEl9h=6bQl$S!9B;N+~i21Y)ETL01yNbVHSa9R)!08Q^6m|C^JaaBAe;c_WBortTR z(oVrX8iA9PIg|2HxNxZ=Qcl67N?h0{ErLNn1f!k^=JX6g&|mF5Dy#=`>s0ApI0{L2(sXF;#6S9X6Q>TBV?n;;N%8P%t0-IAAtq zm4d7b%%#*(x+tjUPrwiL4B6RM65U<;Jbco_an`y8R&nhvQcl6ez%6n<6Es6vq2S_I zUAH>R8}5c zqG}KC@bF#_PkVi|{e1GxH+zOX5#~L7#lvH7h)y^!#5dgRDG7P3FJ`uSc$bHddH6~c zmzzBm7123u@$f+p&)yYnr`*Gvz}M>^Qyn+U>F`9D@$k$mq7$z0@Q!uP^j*S(>mH#M zm}w7R@$mFFMrWvM6SwJa37R%}NcwnNQDwBDMh_qM@C6SqO}r^Ofe8<Z@;to6!{1z_v5f(iWQfs2a=XrRghu1sq z+TT@mxAQ>0<>UCYhp&2gZ*6o&hm!c(w!)Pp50`Mx+oKItd3cA1k4AIc_I^in0(l-@ z?cr@6KIq|Nmb?1jP}QrR2!(ag87=ehIuGyN$R&MO)w3HtHt^zWqZ2NFXEY!1@R4_I z4v+M)tuVqv_)z`k2*T6e9nEt+yu`!f*B!N?{x_7k>AL6yx;%W$!7&hc|h6 zpNCI-cs|I-u)g| z`dd{by8DT2!omb4_>MU(~#o@!%RtYG^t zgIK|rO&JC65z_$vA4d;YjV^#$Y-cR?X0 z_X}8R#FCw$21+Mom@-GnG`l58hS?|5Z>Au%83)5^Y#Xkkh2E2F@ zcV!OB!gb-wmTgkLh|~&AEhKCBv2bcG6xL(mU9k9%Xz!{gqB$1-zl1}4;pu4aw0}nP zTn{hx@Ny4tCEt7k9`i(4^zi!S=!|xH_;`q)zCK1Sggn+cmY#c1zxB_A)0x(>s?Uv) z*uE+s*DRej8g61pY`MQDvTP+0|5w-+UB?A)os8ZB)Sndopr$?lS;j2Vw2yx&Pmzt^ zCC^rVmGYijEk7$*WnP0$_2?K3M{tE0H+#Q~Y~!YvNRHX{6?B=^XBk*+td+RvKhZq% zxoAG=;VT~AylU;3TfTyAivwm4@*=lcMet@FkwVG@1zS=CVptLxq2NJyxDq+fN9U>2 z!-qUPcG%Ib8mzjCYxeN?;WqrGYmr=pGJ0&{tsXvbxcSr_*t3*trtU!LDy-~me?fG1 zhCO^FEjoOzN$G{vQc69gozhR4reIT>ge)?LL~tJuVp{iMR82Sg_W|L-50P@S^-c_8 zm0P0|Y&LtpicljI+%OXtjEb~SMy(`LPl&cq=HVS4KI!3^Cq~<^BHui>>hVO#JSo~x zliAjX9@u|!*!vGJjXriyJBz%3KYOg3_I^b9i1G&QI!`E1KBS9YMmxFRvv$r3oS|;@ zD5gi?47r|JVfG-uvadm;Uu1itB0HRW7r4X2M?8G+MbUQVJUs2iHoW;^Uu%|685nR`Zbv_=nK@bGjq1#^kvmqweL^YD_hqQh5u_^gKy zAht9`lA)fD9c z-tOVSxee8fxO7W$348}f@nKU36Dp+hYx%Bf``Y7q7yDw zzSjP0Rqct;=HdMwKI7pP7ltxqj{SP>kK4hs0GyX{BHT z5MWkcxhH9J@H>dpNNJ<=Q^qOSjc^x&U>BB12L*dh#D%p45nKq0AisAZA4_JRxH8R@ z$QWgjg6(qO1;ngGWQ4Lv$u!#r0kJbe1XCXo%sfT%DFaqa$^KZz+HH@X_e2+M(8F^Z zqQkd&cy}~U1R2*y8_MzU9uFV%@Z1}s?e|)~b~LPyg+rbQ6CR%V-slAKJ-lWkPsixu z4#a7*dp{a!g;Hdu#D%TS--Fapx+r*>L?9-fg zLB%1aj|(~bc~rxv{eZK)V&yKEC8kzV!viId+RmiZE- zsjb*#3d%niE|kkmlZW@3y~tgn=|j=c@>-&K{YRpCyN54(cu~UIS?^pfzZLY*DqU~- z*q-QwJ3M^S!!tj+(GJpg373XE)_J>!_jvf6hsQp)F=4eYQ=PIX5AaD3&u@z`gz&Q- z-v06E@IBz`^^Xd7H8JRkkpGEjLoFV@?BRvCtl44uF5&KV58M8Zk9zpDhgY|+B@nXH zzKPrPaZ7EJhs491Iy^k{lhFwjdU&OWHzhnCT^>I1spy1rKON1hJiJx;TKl`I?*B}* zp=l2<`fPOgRu5kd^YuMF@y|sYYV+`*Gdg^phnGik?CEJp@@T}eo;;A-ub0?0`Y5-n zp@rL{6OMmAniqO_neesxM|X1xba^7QcSk2M?cw8Jj1HgqrFCx8cL}F`dEG<$zvGo2 zUUo-x_&N`7-pt==53`KkupypSj}4Z}qu1Jd?+%A|8J+g3!+L-P4KvZn z40||UfbnD4YNm8kaDzl3HZY6KSgEagG}>~PhtGQWl85J+eUcg;QV^-9;K^Ze4Nf_D{*E6;4Z7t&3Mn_c3nqjXp?gZE-3GshehpAO0j1^>7)3OH)z z+=ZvY<#rvQ-qQhsC3DyTEZ-KJ+5_l6mH&*6p8xvj{?qOWzv2mB_OGyg*WXf~wS0ZZ za2_r6kVDpf9AEYDqW?rEFy!I!=Qf6a&rG$dVSpgH( z|J#`OdK&W{zT)8}&qv#-^za_?%}-!2cp{`9_CnVHp;oB!a6I!Ph3+*w{!g|djA0qG z_^4=%75N+Gt)A<>PFlsSeo14&N+LBQY~1BAmc&op9(^&HP(I>Gv?9rlv)@I&`6wCm zM40gK1rM(<+kTE>c3DZpkBcs5xraA+c$bIwd-x*x=FW?|tUt#}RH@l7xx^EDa1|7v z5S_~j569Epzd-C(N*`sJ5;wcW4-Z(0j8f9fl(_OmwqtR_y2dF>lw4DAAA;aT*dl{g zOne+CNE}mw^33jEV!bXNkIw6;DYze@%FF?gezX5q5bV8}fMlAKUt5or6lB@T&c>qXz`Y(m;o-$* zzgVrObW-rV9Fwwwoio2h-?9CZ zzBwdPPN|{bE%yR@DU%eOz^9Q~n}}Gkf(OvVHABJkh2p~Vg(AI_5y~6|uR#z$ys|>1 znleVgooRu~l$bdvu0jfS3y7=7Y<&TPaw*G+gtp!BZ=u8ytUm@DOY@TgmFX zEF9Z4GNvdGBNR#~f)a|9Qg91aTniLrSX^b4LCORLyBx$1Z;GG6L}14ZewR>cC{2`c z$}A_bS?i#WLHF2ChjSCK_4Z!fz%I@1jv-k!u=6*cdQuA=43&EID*D=soAzsKBV zxF$NerrK!U?%{ZGSR^za!EU-a8IJiQ^>POgU+lW%U$ zYEOhV4^XVj*@C8*xy zA?a@kx;%W`!&f~#|EA=GX}`|rG2@AlYj()NiTRglc#F4&BcrfI#&S#SN@AR@S`C9Yzd|oE5crFLi zZ;mK{9Ljl79^hq3{6C$Tn&#!xgczR28hA{n;9$ieSqcl^n6+`@btt7G&(H6Qre8I!xtTCd}=kjFaD{%CZ4VNZJ&ycip?(Y#(n~kL|#X9s6h{J{%myk6%Q}}Ty*#z^3D5Nt8a~tFyP_1oO%?+ z!TU=72f&*b(#> zBsxi%r(h9ZAeKqyAy^*~iJN^Qco&NZu7E_Qt?X7$6&SC9Q-Q; zZw*?2^q5*m!Nf14ZLR()nqyT$Vq<+%1d9_Q6O>eQNL(=r_AH63$%={p4HtO*MDxyP z*WVCe)L5CN-~}%Narq>I%O{aa3SPM+u0aYev*Aj_CZjW2=;4(f-s0hd9==Mxc^HXJ zc{1eTWgcGd;hiDA;cPh;@>m~6Dt{ZDpESINKIq}& z;Oq6j;iQ#69i4Emho?Rm9X|D;XkPsA8t2*4Ei$CNF?x}q_%CY_LTAxBQ~M8$N|k?) z_OAEvUJqaJ@IrF{$zTtr6&$qU>Yxl$W+*EZto%!mN=iKi|Ae_H4_Yk7@)IpjM(4QK z!xub!)x(>finiZQzWK~C>4~uD;dl!g3WK?b73{ry0y%F+GQMOj&PoeqoHB3au;5v9 z#Z&Tl^s~_gYVq(s51;VxWe?B(k4@Ly@|4{wut)OSV65PkY~t#p#LRwi;k8~Oxs(!0 zj@h~d*l%`=q?(jN5UkdT^if8vn3_X4$6z@aKBifIH=08d3TwS0nDmG&QSiT*PviWT zdxUJvT>oSh@RFfXXYQED+mD+h;!mFu4d=LB61(uoaO`($>|Tvsm=qgt5|r3jF%_A! zQZRm0*oaH2;pk|dVRrlzu}7>V;_04HTcUYzOf;|d@GcJ@CEt86smAP+>~)zb5v6^Pou7Zhg$Kw*dMGOt zycJI%?qd8KDa_CnH``VK@!C(3X-d7>Bd&I{U!;f9X0|>HSEJb{Qf;P0%1yz4a6wR% z6J3Lq<^a5ro&C>2Dk)7ASQj`%!4r<+$~Ol^@N!QP+$t0qr(mKB*Ulg}I<0IE@AdE@ z^XzlBrnjyl4gB4!NEKz->=qYpAre|?q6_!51P)L}DR^h*e*yC-Wt2KfU<%-uRk1xf z-?)n+Q8DWN4}!iQS%(g@o;Qi~a7l-$V9$(tc;& zUYm8&?KN4k#K?uwnV9zQ%vVH*Z}#vG4<8}ld}bZIC^~`F;%J_E`(9gI`7X7;JLEf& zeQ|X7LJu$Z@D>m6^zcRU^@*YzU(+s$&QOkrmw0%$hi8^-w7+4$QEA9yeWG6F;jD)TX<+?tAE=r^odS z1*Op$t@H4456^q`Mmx9vFYD-(irWvNwp#6XxBVWp-{bO~$au}h2@1r6Y^NEiC|}RiLs+m#tFh3JluGufrLg}ZBQdX=Kl)N>%^ur!LX||?iowRe}?a|RD>OB0N(R|YEgE_3o zO^M(->Zq)fvgY3#9XP}6IU1pID7aJ+R}W>FGEEsY`^9gZGDoR4TVDt`Oqr%ESurIq zMBm1S2no=9SF*?kO- z-`-3;#watCG;>J&W+*EZEK_Cx zHc~Lkh^wEHYPN2LD^9^&R$Q3Niu6&&P3>`TWtwfrLyFASObF)mBK@Y|gskmy*?A&d zbrkHTI|(j4O(=rvrx*m+5F&+?N-L&0hI+sTTJf2sjF|)C!W)+$iL_fiozKIIJiOV% zhdq3SeDmqA=(gw#HGBA&hqv4wZD%aRH=O<|KOY^T$HTGBD+~3AZC)bX6zqRG8Lmo7 zJ*9;*OTjDIB?$fmN2J=MoC0Z~%up67rRIS6b(lk^pbOw~FdME)N(W_(vP#J?`y~hl zUJ>-Q7eVmQfXEC5$EvtmD5<9Q#c<&wU8I`QLg}UqQzj|Ply-ASA`DU{DT`*;smLeR zc}|62FJ+vvLW!BJarj|Bi%2D1&2mt(R7Gi`V7NOS<-;xF)2*MC z7IAGy?OGR}j26EdGbMsvD$+|CpLusdAawC42+=xt2mMLlGAfTCh8IFY_`x~c5 zL8x^rvlQIl6xd{T=Rt6C5*emUQnJlHf%%jH$|z-tQfyMrMi3myB3Pgi!78FiKV_1F z;ZY#w4QFS4K>kOEu3hH{J!3lP|4QZv3F8oD^z+uXw6*IXVC9gF5 z#HW$cNx?rr3B*VwQe+D9A(a$7tS>HHors`sh%8c&XNI(bcP28Vm0`M29)V@%kVrKJ z1FpExt|Dkxk#w`C0KEgVj{>;RpduY+-?@NTCqECaQd4^&nlN6Nm0=n$%u2(YUI1$O zfCwf5A{gjIMy+HmPel(P*e(1D8`uh_U2vI=RX6r@p88Z7W$~x1;FG4zVM8&4I z7(Nx0RV#^%2cr|n@$d!@Z}spw4^Mr_rn`C0kxP$Fm)sQ|-s$0!9zGx9NZ+kQt%N+* zdHTcAHB{~4%^uzr#bpQTV3Y^=n1|y&*~MtbdM10Fu<;dy^bkG`v40*{R!cl5M)_=<;D z&qdp5T<2_mm%!w@hfUw{yo1q($~?Tz!&^6Tn?7EJvB^Wy$Lq5_JoC@d8OrzY4iE27 zcs#~De9ps*{}P>{Di3c`zIOb%s_yheSoH9;`RIgmJiH{#*Wc&R6ZTjevWGo<+QXMT zyy3B^jN*L`LBIP9#|Kf0T1f>QC=@NvA=!($84;qyGa zWCOS9y99bRcu4w=&wBW(hiCjPIzz>qxulN`{hK{3Z}IRR4mmuH6%RRio!&^Ok!E#ss8>%|v2~UPRyxhYZJbZj3m!w=(PncaLn3%0l;$}xF z=KCe3nD5uw-}1mO5H8NFj8PUTShx{CT=0pMQ<^Bah7yQtD3NK(l9fc$q3F`Kdw7qB z4|@2RhtH62enx)L6Cp5DlKX55=D^~@8Z#to^yzRRxJ&SaAm0?oMOi(i*VKw@hH=vV z865`;ZwOV8pXBWtsV0fLqylpY(RQ{cdAn%CN!&$qFK?4$T|W0(M^x!g3B`a>FUZI|oul$WDNbiX;;8`nqT9jl7=E;6+*&x-kcu~dS{wUbGa51_2}9{}{<4eGQq zU6$&#k`)KJFK7664PTQKzS|~qRQxTPNAuDPvd+w^ch02HqbyOc#~W9BQs5bn_mU|< zffH9nS4Y}1yNAm;OLS~d<_RD7gm3kPFVgU9qp(Y0Fe!rjo0$czGJW-Z;QnUjZ%N$! z&CK7E_(xvEs{corCxW}wV=?RzJgEGMB>rh_!zYtC>uXCemvp>4p0OMrb;vObEsFHO zGmRde^GuYXEkUn`PkQ)@@J!dhP?ytEQ}AjWe)E(XQ!B0x$|z;g%FdjXa8`csavu8= zIwr)``q3AVFD7x9Vwu@1X<+#na$#$d)vGmj`Y=05o?3lGd6DC0&#SY}#M+oOHg6@7 z`D{3gZz^I|>NJw8fP0lUD|cBhxRBwym1ESipF5OKB-uIQ6%0Q|epcWN-J~ADk5~$4 z$khRMz)2l6QM#-ohLUpss2V9$BiWjpow&Ouqj!aJcXs%W^5&%QC*Wy03E!0z-eqQ$ z>6-gqjXMmuBl;Sg;0pf}uF3bQjgchV_bZ=C;?6dfh{fDYlDSh}$t*2vG}kb@m8a<+ zJ2~#mEn9Qvr9BtU9V;1cWc3V83s+^B<1fxS`>^0@bK}KX=N#5QXzsi?>x^w~Aj-cw zJTkiUvdtc3-;`X2!L$B<;Y8hF^$LxfJXl?n#NA+3oW$K=^~xmf#;S|SUxAYkKW?zP zBq;(5vo#p~Liis@erxt$oONoV|F|t`fa1zH=HV+z+|^ZyChLsV>ObQ+o~9nn%F7r& z5jc;h5kO9)6>7-+#mwK#4l1_oy04Y*MvAuKG&*8UC1K{KBBxniT5gR zNaAD48Rd2AC8@RlTgf%4WQUa7n-i8m;3PvW0Y-U0p^X%<)2 zcd18bQiR_q?@HqTP~LsDx%E|9pH1|uKMHI=pE{fc8BF5eR6eX6X6)xab#814x(pNS{NtnheualOdU%hAPkMMxrcHNk;X>_n!XgIaBc1c5u}o>|B9wHtrj1ww8Tcjw%fCUJMpJu8X3bMDK?^DyY} zzu?) zQdM1s2PI`v=lFys^af_-ox9HxSLT8YKpEd-Hgg{cNTOrs$qs-KMT5qQ+vZ1VggwK z9zT5@&VuPTg}q(0{G@1(*L(P|hiC4Kwm(n)Dp$U>zA|)Ybc7iX56u3nvraf1ujz0< zuvLo$FABhq1pbDmFWP25jdlAr zeb;Ff{WpHx zueL zZuRgk4`220yzhk*R{Q4$rO_TivxjGx9dE=+NU0T5@}Sr=*)H zabe@41jw(%Rr%@L{+9c5UXSh>@D?~1H567H<9q!C<)c4r00lg|n(8s2f&0osXO!dYYfJ<4^Sd}hLV{50%w zk@Ar-@{Xj5^^7OsWe-pLTR20mz==|iN0*0BczE&OqZ4TVM>HQI*ZM~-xwGf&lhJ3- z;>Bn~gC0Ka;e$_Xw1f0rRZNCF)_K{J8zZdqB@fShDmr|A6qmJ%jwlcC%q5Q@53lm@ zrX=o8PCvdrgHuR%+3Bupe*zErIPT6)BT3wyo$g8E?&S2-B;JlrE$eFcuJhO1gxpzc zblt;pcSGzz5@%o88mtV2`^wMEfh)33eQ9S>fnD&DyTifp;wuS0>Iq(z6dW(vLGY88 zJi#09Hg~=y>ztDZlA_JqQg00g?lyma3(mMt!!1{k&Q889Y7o4zL~7^I^JUMoM=B1s zDQ`@=-EbDT*m2o+b}j`Ef{b8HD@|PTxw6EDe?{P`C(q*b4n6aP0+s6-A(&I1W}ZFr z#8Y>*D_(F|gS+F%amB$`HT;q%{F2#wTif=Mqki$&;>!av|8H{&EQR z>UTl#SQFm*oS2;45)m~$sQGvZ2ltc&!D*Y5<&24thY-}b53PnU(o~}P+oL+nk5~|)5;h=|1evEpilYr%A4Lm?n>ON zylN|Xy@nqYE@Rm8JWCc=k4twlf!=3WGH2*U<)i!3Y)BN;ex{VSoENU@KfacBsvn|# zx2NR#*9F0G8rKZGH7h-F4~SGj>$k&}Ur8=sP#uxOZc0lMHpd7`GYlDYV}~@bfp2PaMMxH7nm*LGCusW1-1@ zPTWP_ue)>|Kluvss&9yWbOKk$?^ln)Y?drX4gFGiMmuXLPx%Y*a*J))x6}SKk2zPe za&Rd?X(tQj624t|+XraBL7Eup2YV_RVLq2tWIe!J-bCJh8hIQ{J~PV8K1V~Y03}y4 zeC8*au&beeC@<|zwejQjI|v?nGt!rwHfR&LoL>B5=_Ol&;;%B~{L86BRZJjvSGol) zYG_J%s`d$2bAM4@{2VjnGWw3U&`!-Sj*#-NAJ|js(Nq(T5XXO%NJdLuL>{-Xg5aIX z-Q2+y;2+AXio-Qjcs1>e{+xDl-CEEM)mpOcjNlB7Dj)tKkH;QO_}I5rCe))PJ3OMi;2n(MHn+Qy9a%@7`#IXl)db$4JnbV) zIIg^3dGYzS<`Qdzdg-+^G;|T$rc5KuDes#mFI0ZayBI$0XujsHRQWT?JHN*8apk+} z89w!HHW@hvl}p}DkIetk!&T`u*O7O&vQOlxp?j6P|B-YFy#GBoYHpiKIsWo){F3hK zZbZ5)e@A)yJ~pIU-ChmN+SSb2r= z%06}n*L}XLeDMVK=eUMnRUX#^!-aq1z1DsraPNP2-Q+)wOxXRws*A9FH+kQq>^>Px zCwNS``;#8mT2nVNeCw`oMqhsud0o30z$oEz`YrY78Dy&rY6*^MVuZ?jnXv0VHz*%} zCA$fFf&DbRkKt>!Gl#A%KA}AGXUq_ybCmvzdX(cfgM8xl8>965X{h}0a5wpb<1K7# zjD_~|iw`h-MHNT&BIW7LeaOQf<(W`CGKEe!@D8F6# zbQZf`p7IBjXXdb%xth506SOna$_&|pA^qTK^%%a9-Opv{b+<6Wn9l250-sXe@w#wE zzt+z1g?Y5&5`Ic~)yL9o7ArNQM}HF2XDM-g(uv|@@DN^eh;8qhU`l!HaF)184LxUe z)#J8T*{2w-rI-0~>DPaneEH=}KUbsOue|Ditf;v1po8IKXR#b*%3rU1{2X?@LggKw zvEfe)M!(DaIzylQtn1}p!!Ie(+%t?ir%^xrIr5b+Gs~sQ$CVH6XGvX?oYcwijeD78 zSCmgFUw$y$guf5 zD%)URdij6VWB&7!qxHe}sn0V)e3>Q4v%W#_`fl>VPF87!@=q$Sd{wv!o>$&}Kbx{# z!$0-~9ehjQ$`ZIXzW$3$Am;`q;A-es%G+;ZUx}-so-Z-{$ob(mKBTP^E}-%~v$M4!QYir{oUu<>Od@ zayLc(KlPZqf*unZp}Ln5CYs5cm7lbaeC9VSnX9?iDbIL2!?$YqqB|LWF6k)vP(nQ> zZr(8TAyUOx8KLY!4y|mUAb78G_g6^`n!u-&4?e??*~;(jqaF8dk9y_iYZw4<*e8~b z-eOS>GaP&m9x@&bJ;6>F*9diAS3|qmiDJrkeuF%Fk~QHv<5!fY9mRsVqad@N;q&Tk zlO+O|(-!q`k6Swa;cqfR;cem0bwK&(_nGjbX6Tr2G5pLHCY-B0{oCYiPq43)TaNzs zLG_p{OS8yD2nHBoX(n6~-O9U9X996eU|D(gN5h@*lJC$?Wjzbv3ieUqvQ9FulX+J~ zKi3HTdKu(+&s{WB_7%3(pe9`ZUGn9NSO6FPMF=2GIevf{YSQrUR31D2NcMkM;@_*s z$hAED@-;%nej3V*vnHIODsbsUtb zLr*pfn(!0KM~`E|#mf7?&+s`%gqz^VA@aH-SVJ=$E`r}G4_?a*RjQr2AE5oEirODy z)y380^>>q(JRWZQN0cxBj+Qeu{DnVc_~FZ0)eCIuU`%=Gdzhgr4S(%0!*?h0nXvOX z;zw%eS|;o|%k|1j9t$5%3(8}kCoj?j9{DltRMnBklyCb9dC4hkf<(1?+@~IGcQav( z8}@VN2qW|wmcX^;7nR43q#>8l!|!4ECf(WIqIS+#-nqmAYt1Eso7Ka;R3Jwq809%P z^Z0gEJ*_;*)wc1XXj7KS9a1)u}wY*hJJzcI&7+t?H5cHdbAq@~4%T z-p=rG`WiDjt#mWI7LHo zf#@@b%VFf)VnC8yl>vVP%l#P6AK_fxF1IgRkV z@(#U%aT%R^gyG#I`Ed>Z%Ri8}{*wtWE1#bw?>jb){l7y!QvXPg&S%+{u4#7siM(7( z=J=bGw`z9Qkjv?H3-p-ybGWxpfpcAKSwmEx#!6gLlRx+y zV-7vdI&s}E$p4ZmPMbmt97$1efDbUsbR+At*jXUaA*$wgA#&zpNeuC$n4TX#&qG z&-r6GLzh2ILrY1=L)JgZTmH(7y5r<7;Axux&rL@7sIrsiB!w8d^RneBfU8U-H=3 zX{biSANfD>-c!Se>noHO>UlY?;cr%+D0wh^IL)g^?pv85H^lttc_uLX8PP+)3Y@LO!z;wm+bJg+-XDgm^s~xKZVe~!fb#CohwXg! zDB5xVdtIs-dd<<~8DobBFA>(L9-meZed%*hqWpYQo4~sF$6v^J?hoiy1i^4QhCxW4qS>sG52&(B3%FD-z3fW;>eqx1|34_Nd@@{h z*J8Qc8q(G4dd<*-i9`YU!U@f8g}zM4L_fF5hKKY!USB&-u+_oybKzu)Cey> zRl`5!NZ{@uz4 zcZCbM^E8IfzLVu}UFpNhm#$*?T($F*@;RLhyX2csw{~!6^?%H8p+?wCk6=kxjjvwLgTWcfdkJ~(8MNbS{D;c>?cu+EYw6c#F#N#TGJfE&?9&9w&ZLL_eQq$y z0tTzfE3RMy?(lzEF2fi8gaeUl(IMrzcdUpO6Q1Gt&NfL3L0wK!N#sr{wn2TXL96obvUU!p!b#J^Z#TGxnA?Q@}~a_Cs1=S!#C_nvla%_&dth~`%*2j z8Il9KS3Tm3;jugI5*n&Hk(Y9%YUqCDLBr*Cv&OPD+{-RydSgjbyJqF?)dQ0nen|QJ^~|4Z@*_%Vr|4`}fU|!S zIrjP{%@ZEg2(y^j$R|$|IPTRnG_!{lGogIH^2u&CZCrWgYZyKaDxW6h*D2?nTJ(Xq zdSqY52-!(nF+QlgLFb6Y8h%pw%Ck(smF%K2+NrAxpM-v_ysUXcSCc;Y(w&UZ^lo~% zoPI)i&u&(o%V_0m89sSi+mQ0UTiBGY=AKku^dI)+7A?SYuXA(FmoTS=>haogt%)x% zVb_+^%FB2YdhH%`@#PFZlOOKOJ72E_`!x>=XXpFM^Lo>z{K49#sd)nVkL7sOpxhp`6^74O%3-%f1Wx5%r&CNBJ)MM^2wxvtp$Tu>9R^1@#O7J=5 zV~>YN?yD*pe)$UWA+6D2<;@>sMqOX|Z$dprw717K!mHjyL(_j{hTOn+v*SzQ!~L7e z7k|$1xoRilO4?cMOSi=FW8X}EcCX%4b{mpw zg-3=}NxB<@k#kp+pV!y`6>{_&3yR z6NewXgM93h?3Qs2pIb*>_+}o^uJ=6yZqHiDGy9vbWrU7@vzxiLJmQ^d=qZ*AvsL>! z>RseBx`EsEiMJ~s$>vbCtQk6?p5aGdd^kr87okr*7Qe-Wb2LKxyBQ%T=`M1{b>vl# zv1B;>>?h+rDj}9GrSneRWK>5U<7~UOk zXWYQ>dAhT}^`WbkyT9Ua;rAufqe}0GxvKu)dub^7e%pVQ58ucdav4qA&G17%Vih=k zf#XLo>#nnB-^lQZ@~^S8xE$T49(np4gDb&*l~3rt+h%Q=D{i8p?vumgL1zF&`tZTP1Me ztCja(%^GS|J2xvIdkYKZYVL<^YUfFwb!?}R!K~op^cdEq!?+siQ{Gg~61b}S?k5<& zRmUzDepPwN{b|<1q}qAYEes#iPUDWx2f^)NUb4!;){Ou^ZfArx&5(<5-zUin-_PFU z5`OKc$lE{1j8u1QzuVIxgDZlQs zR-RuNPT+#Q4BvV+tGZOf z->ZC59}9F%_N4Os4>Ln~8vgFYtu)mCbtVv3kC)s=KCa8mYa@*E_M_NjE_~3%@Hubi zn3}J4-lcpjX>-Pw+ZjHw@OO?RF2X0&W8wk!_Cht(^?639zd1a0d0KhRO*{&mou>`M zr|A^PHO}a=ZR&B4MyS4#hKiJbV4#CT4I;*9_3Xx zGCVks|J&|lgks&5m7@v2;;ZCyr!m5)@*g?=KzPi*rH|n!{+?z-R%rM?DtE7?a!qr_ z*Ak4-wue>i+H&b@%5P$cT?t;v$Ww@@>aHM^fY*6|L+KJw;2P%(*>ogYF^7H7qqrDh{nAi=}=Tlgd7d2{SF z_=r5HBRnJp`bBZBccDZ$pY@5ajugXEK?O9rSry+(@<{;}5slBT0ynqW!}u6^%5uny z3+q=~^6JJ?A$%J}1HDV2sFimwB#e{En|bXb{cRI@j^kz0kJdm>Xg~Y?9q(H3=C5>t zRAk4}@J;IcQJ;mGE z8u&324q=d&MtzOE{wG9}^pgtmoHtP*;h~>EPx*7;;<-xlI6vr-3U4dpnMJ`9_K~6c z1{UZKxXyq+!$Y2N8~TqFw1m8cFRTf#BQJ}Fhs1MleG2`x1NgMUq>FxHLcq81L>l?9 za%4#6G$ldw9eHFJf=+7u^=FW8twF`a@QBaBqY5A&VGM?a51CNuc#-nmFQlKWP=D#@ zDCg;!^pmSp|Ij>}&$47tyo=nk%-$dRZG?Q=Q}!ZnCJ*=n&K4iGf%}YX)gkqfX#J|& zk!rBghMV}_ulQu{CUCc7ZQTO$)}v@t3D+ue=ca(mrJ}*=G*QP& zG`HfW+R=v zmb~n1yZk3RAfK}ZTs-uuuNDbajvGHm$z%GV+lb*AKR~{K`&XDWe2_f(0OTcx`t5{# z%Ls6hUr6pVxe1DgiiXu8L&nQ+Q7m~fc^J>wE6DedCv8IvNwkmN1wHO~)Ho2KVf5Gy zUjK*{)T2*#zjh{M4YZ$=T(Sol^0~Y~+IZ9AL4|5nLic(#lBp0dm!SJ|U5Rm*;#O!} zXAh-s$P;29U(9-(zZdc~@1Y(Nk~7I=pJVAfE5Ut+D+d{JspvQ}#9a@Mi(^mx1Ow@r z@PyQ3($6gD6ci|$dY&NT98u0-31OS zjr_JWO6W4nYyZ63sgd`4-33;ydISb=1RNc!E6T70gjGT+BLR>G2uf zDEPXH273Mh1Fd|$s)W3a+OMaLjt)rbnjkM9|xE=wMUQ>(A)WO9QMz4QhAios`Br2aFFW_zn5?edT)86t!a7)4! zZ4#FEtG{&X#jHYWSF;F1j)T{niw@u=uOtuV3U+b&Xa7PzN`c-G zi%tPZhq;Wr@;OwXf$~9WGZ?L>>P_87D#Bx#u$u`reh6r3_5??{23Aa9&(??21P z+o#({<74Ex>G0_3$B38pfPpsdev@VuOD&8d4{+=!5FZHn#A{$Ul=5rILoPsXa+8Ou zT?TcH4Q_EF70CB7A&+~jn9Q)E7c%&-M$;tFLovO<&3*8Y@L$ODE1z=gKps_GyVM+n8ha?8L+;_sEw27181e;t z(b;XutN1&?gtQinol??k`XNKnG1S1Mfy3l!d@3*UiTxq(_apQ~vI%An0Iy^dh@Q7K z*LR*Et=Fh<2CgQL&)qJ<9?tB6>Ps z2;Qz1BwPJY#_BOlsNrsh;<{(an;iQI3^So9n(q%w6I`g8L>qQKby!Ybf97^8`hP7G zDk9)BDbUc1pr~>-JS1)JBhR@OHA`TP=M9E@*}L{&{Diz(U0dlxJh6N5NMtD43j?N= ztR5wYg4Y=Kxu8ICoSFVfi6Xv5BPy>Sf}F{v$SHjKCE)q$E{ZLf=Wsgz$%?%c8DvIxi*RbXg~ru?1c?dp0=AJ&PZ zj+?)j5S4?HnmSb-vqwNtN>BT=RwMivT>^w9ULoBsdpw z?k5jUf#Gl#sPEN~4@g5ntH`$sza0gV3M?88`QT^e!Vdk`*rF2jId^jo#>f)bF%B_9 zK`Z)|M7vj=HEIueezo_v_sP>8LtzKCOQ@C)yB|#%#)97FV?tyfSd^0Hk$cs(xIU!K zYRF4@QYHoJFa`$d=Ay>Jx08o#w+{fWTu3S3u8e*6Ext9XecZCpG;J)FIq28wP#hUQ;T<81N) zH-e|BxlkX?^XW0B%;)fXni243}Xp-_+t1QpAushjLOy*4DqM}TZq)>mz*Tt? zTy?i0Lu4{s9fEvDWFmO*8)%wJ8hDO8;a2+vehYc{wHOd3hPM0WKvB5kA^-WegQq-Y zZ{w%Q11|NqOvIShs#6b5X@RE3N(@Hgr>&boDyu&O(^cEAmAt*G; z5EIgyKD`(6rel?DxQZ$3sn4bxg?k37#;a-x%}&GPEBC7gr~eH%Hi;tWyf)Ioxny&3~loMDW%l73=BUKnbe%?!a0L6LJ3id7ub*S(a8+>fvZ1Gy55rR8o$!T8ewaMyMO2ZuJdN*DEqR|2!`7AzWsg8n+4JZ>;;XM71&=&# zKUcZ*G4SL-7?uJ}BX52WJcb1-C(pDt9#PGwoM;`_ra_VO@#&A`DSyFmIpv?72YKha zmKQw^p7*?c!ahRY%%#)eT8|E&9_h%?J|3;A1`zA0CvTbvE}l474QV>O17p$Hr4U!j zz$^KpKp1&n@^oIC$_q0d6_pqIc+ z*7#NOz)7f?6!elskZ*0V8=gy^$ZfaeboSa@)s*_;&;1pi@&&8!E=snm^JH#VqyEwb zsXmTwCpArZ1H3H+1$5J3|2M&#O?W^w&L($0{aH`$|AyW3qu#Rg_zb_@Xmgo(FUg02 z^gZAv4KE?jHQ_=zSNfGaTa9%32%^0CHuQw^v{y#fMDnPQbaz*=5zY(+?;u0vPINn& zGhSQ*-ntwHDk#63JT4doGRglY&pC=3i$`5cp{JI+VdZLhJvV&IgxtNDOvKgx?;=Bv zI#Jh$jG$x5Yp+8=W#k*W4DyX!%O{?AioAG&zokbC)T+2OH==8PkYRmM>C8RYNacDRq<(k8 zrP93y7J)m1@mBJ@3Gk3~2loe%k86ZSO_>{xGr{>5_w)~up^8u7BuMA101q00IYVmv zJ9*46Fd$92zZgS$>qZO%RY*1hd@G?S@J^5htAz}slDusaxQqPuRgg~&0Z$>ndNp{# zNA_S$A+MT*-jqZ6;1bCDY6{SnVxUkZ=yO8(cz7-|Y+#0pzw9pUw+4!e@38mp`^Yob zKtG0J!`Mn5gsaQxMkoyoUJFId`(Z%Z_@a-%^LT5sf%0FG#}0%iB&shcm7&e8{?bvC zv&A0wxr#4UTmQCPA86@f@EMJicR5z4=dXjFvOe~(@9;5r#!Ea2L_v&2;65WW8iTdT zA|GRhM8_KoZ+`+s%}Y^rkzZH_o>v1dRjeV;xCK7Uwan5~AEASMjofCSf_ z2)}IPGsch?aK%*=U2%{+b2L0BdX{_&Jw<#uMEcdFa`2Y3_pR1L+sx09P1+Mx6JpE7jxQKk2aJ6DZAEJL?1&6lQA@ zphqRR@gdquTzxlr(_F|)H(5%axLsmS`(GWOG9jWFHSho%?{9{I;9$F=JH7%p>k;iz zpta-~T&!+V&vRQKpYk@ESor-uHOT3j1@WzsRA%^uJdZ1`(#W@wm+!GFy5t+^iRHPN z6zEy<_?h=_b zW3X!f^-QQ5hqe^M?c|AvVW5x(ZmEHy_~r0vVroaggdsuyk)zR*J}mp z_n>CdX4N`D@tARNoy?~lc7TTsh5?E8`^Y_SV~A}fFHp1wwYG^ zi{bf92p9oRc$gvOM`Wlyj)IEecgRB>4;>clgnWx1Ja<}u9eAT!HmHwOoZ1;iJrnqq zy3>yi(sm(3O)q3Ht!#$zmGGtL1yZ1(-H^}nVm!#E{D0&b+@wKbs8hWU8B+O%VjMGE zQxBfB#U2xn>;(^S3`9SZ$4)~*rN-``AfJ92nugc^#uMaqKF2eNnLi^#HE)4P&8}X9_S3Tz?|xep_q=(%kl^t7cw-WSab3F>4_2VKD;yGy?%cYc;{_bQ}7;$S-Ju0k3)= zNgvYo{=b9Q@}07J8t!-yyj<^Fsr#P{IR7yr!G$&!MYkS8h9aJM$jZ8}$(>t@4Q+;e zF7Hs7G@L^ochK3KU(K4`(E@oF7qg4!9#UsQIwq3U_@WOn zyoNlZlMmfMX1VmgkRijdpxOI3cr8yfq{$v@1<&POD-R3Q<0!a$5^flH$^DOkdoN%U zTmDyxGnkOcs1{f6C$Ck@^7SDnpC#(1j;>kJT<~}+)i8c0Z{#oqUlj*^OpR{aa!)YacoElqIKf8Y&#@Gj>Qr^p*sjOoL)e$^)i+Vv%r zv3SPLem#8~)&FQ?ZR0UoN&ES$VOI0nJT#NcY*pmNYR$Gj#Mp82Y{yhP<0SO>arK>e z_kvRvSC5YQ{Xa4MJ`#-hZuU}tM;?4NcnoVZOs(CvD!>&Uq2zCn=ko@U=-*0SGEnPL zLEvVF^E*IM_<452Zu0WgsId$G7!Q(%@r`yD^(3mxGhLu4zDyw#+r&=b!5(zYd$}`s(H>;*(7^ZPiF~FdHQv<)^5$RYx>DnqbHE!M9~Y1F?}Ym+nX529 z$I`$nD#5A&_mE8^AF4jzrFj##*)+*7=muWEC7-EqpfQ^~eztv#IYJ(?yW=cNMHLk- zQY)S<1CBjp_X=0%fBML!{BU*KP|LU0z(eR4>cObuc(hbZiJBLYQ-+~%wWo~E>E#P= z5|%5-8`yZ_!%w?IK7Sx)EU|QiJf1HXg|TFl)S^EtuAPw+E`s5?fA!dmfSnk?%Q4DDb{yFRCq-)!}q zhH+qT7^vrGC&d#x$m{w;(4?M0>RT_mK(6b+Wpw(GJc#op(t=Yn#RKdeXd@Xv}mGPmp9eQE1e-t6+j;@%3q^`P4jy0xtK_vyLixEwW4YrlbxS&_gCMOx77U$he)}e zAa|#t<)k6Dkf%P2`iWyVsE+|?JyF~bM*MeyX>p$s-P>M|TqGDCZeAdUN2n!jT9NZc z*OTNy=VOjZMD>lE)yFa|!|Gf?AExzd81u=?rs>E~u_ZO=rM|wWGbB4M=aR`?teGf^ zQ*U=^`GQ*zk}`sBCeO%3No0myb}{6GzCnR3Pw3d*#)Q~|_RzRT-PX|tD(}Hbh`287 z67Z^Ocux32^3<>GHLfAAbWGtS$&{M7zCaEteyMb5rZI2=Ipe_5vLx&zk{HNNn9X0`iULqt{4K zzu{v-!7DKALV1h^;a9?dhrF-)?1`>H^eIHUcp{Fx_&ewkSAS3L++}-)3wnIv8&FbF zG(~+;LK}#2Jnn2H_m4&m5?G)>RX{Bt$d#osl1HoiQkrM-8bb!)1LVyGR>jV&nZ5FA zDjI_}^U^?<(co2u@I)s0-Q=k^+iU#YHIUEU>2FCEQ2wzf@RZNM;ZfE8tCzPo~07X)> z;_*;an##wgaEQ?q1MYP^tG{ppc%0)MvuWhDLogmFyXb$Ln9!tNWYmXBu#QIZM81V5 z{NexU^PE0L%b$4vD2(!}6t`Ucf<1=n$%D>;r=@p9U++VPYEIu`An|(ez%2WSHrWlH z$fgm)8_0`SqG@C%lZ6QdRd1_;BCHlU_eUr4-@i!!L%F2n%zAa8JfB0v=p?0 zJYfk87gK&jEabBi!K2BeZUE1{8J_k@P&~tg`a94z4a^XGBQm7&sfX0yB)RhxG$0Q0 zW$FY>ALwlAY?{2{KAcCFFr7S_tNTZ}ybmmfORWU;aBw4{Jp!?0WZeu!#rz0RBn!Ha+{1l@rPuVD z4*A3$D5zZWT|*u;RO#38FNz*xLeZ;e`wAM^PTm}AA8=x4z(7GO;(*uH)v|<)AL|Cid&x{A(3a^EHHWdv@fPC`BD3FJI4|$ckQ?8F(@_TN9 zd}FN-8Kf8d%LL~elGopg4CRg`sjJAF4x(wq6YJG>jJjgcAEIeuXt=LBJJme#D+GHP z#y@qv!h|yq?UCcrIml4M1z^(sJ|}neK?TzAk8#KCkPlOLW%VKQzmezhg$JpyuXQdm zG;`-@Y2z=G!2Ji?+bsDG@N9LyuMd~?tL{JC37-E8Y9`%p4|y2xpm-=Bc$X#bGr}FO z@s=RL$n1q+EyS!-ym=eROl?0y8ic@sh@mNlz<6g-o!Ux=QrkAWAsA#Y7N zy63vmnBi0V_%(hWc2B*GC3BI=kv+G#Qdyu$UC>*p7HjHd=yA(Hi0Kz>C@0;In=X@+{GsZ;-TJ8L%(+ohL?1nIU3nai2Mm{BN<|! zL59lzAwxC|RFYSO*w0T+kw-c98;f`rdffZaG$!?Q^{LBy9lc4dFd#MlnLMDoeMrhyki~K zm#=_VJH8oJvjDuUlf5wxla~+B1ArP5#JLGM$dJe7i%~SZn!L_!pJe_fZ*RijSV8&N zSD`13TeV1I4_F8uA9~i{tcRpTCe$~fKbTasmOODjY7k0(^CBp!`PhC+wJ;YvC=gsK zu#3EuJM@U2p|5dBN{_U+@dqkF_mkG)_Kvv!b?}xhXVpLzYTRNPz8fQkblkW+@ZdJc zi>IF@uUh5!Vv6?-WN30c2VO;A0A?_FeFld+q&dIeFm4TEB{GxxN1JGGy>LZpOY@2%f4Q=Ig_>e$|#t?}0lv zj7uj^QR^)9A@k1(@^-%Pn5GkTzgqA<6xIE1Z@dSVgQx#u_e69Nc>9m`Fi!jcyxQ?5 z_HOcu;m{wa4Xfj~581DxdBrZ_YOa8yhJ*G3sU3W*SP2;e!=|N1?PEorwHIwH{bx0K zh8q=-SHO0xgr4aB+z2zAio#YQp-P=~=|dDPBR6B-&DzL|)!?mY} z-#!LMkw>^-$xHbU$-Vqch(u-n=g`wO3$79#^o7OM=G>IX5H9;wXQdyzB{_dPsl%=u5~~?9pwZ#yTm{Q6`i(qLE})NZo`C zW&gskHAbqe|B{!i#KMi-3S_cCN62I6pEZ!^vG&!?$Y3}=4cbZ`vIEg42BN-# zeEDT(DN=f#CJ+1EJ_die1@igNL63MMq>5v0+9gP+Wl6`X1ntr+6P`#V&m&L$4f2WP zuYC>qOl~U|Oa8$(H0;<6f5^As4W0Nv%w&dP)kyF@V;|Zw$TQcX38ZNPw$i|S1gUr^ zR(LcjAbcBnTZwS(e|6mW9TX)jvEM|v@_X>GVdznyDjP4iD48`PuK6|wH`T>f}i%>K1&;)YlS0G;}&%<=;J3XKF{1J-6_yAkl z><03jFYWz4W+&vGAO60mj+~!NmHB$$F7TKgr~qO}wf|Nogz?f@x<}b=WN@xayl@YA zu3C0)6(^Bl$I@$G*FW|ibso1BQ>jl+$15lzuy1H~PGSqM_f|q>TPvEr|pp7f= zk8x7*rD}uMjE>mg6%D7(T7QOoTrvd36Zev*sf#Hq{!JQK!-R0Ry_gl=jtT-Mr5#TOeHf7v!C{@_$m? zx=k7C*topU-^dWi@88J?b7d=d%y%fL@MGkSy)iHpqdbQ9C=05V`|Cqu<&^Lpymk?n z?mC7H+5GZKHWgjo2Hw6H{U?!p19|>D^b=|O>5BMK?fpo;n|ATzsKL}Ej1!TAo?8uB`> zdX%=`MIOi%cv8^IPC`$x<7zGV6nKhbpPT)P>y?7Ou=NO{SeEDnGo(4Tc%EYTS4eyAAbiN)RPDM9#0VQ8`vOJ4QAjZE;Hh#I6)QUA`!(CXL@=67=E-t;kD zAfMWbV3a1i_8jm=ew@mr{!^Ok`LuvfTqGgU9~q3js6hlXyg^>X)eSNv-_RBEF<)b3 z6g^*&#|?oV>3)5>LB35bY_aAuanUtQ2y`s78h{%LFS^SBCUS>m!8jtn_ z&*G(wmmdAG=VT-_@5IO@1}63bFaFKn5|!TZ3VB3}-4m6HV?OQK8##+^v!4k6NFGsi z_UW8qEDwTwHsvL1?(G9!Wuo!&SmY(-k&gA;zkvIUngXk1oqmz8rY{slF7UHdm{c_W zeDG4f5+PCcDR~{=Jc^=x4SB{7(4R>DQZV#jX|B4*YBJ$dCL}rDm2mY#hGKOyQXi)E zt6oB@pM*Kf;pxo=M2!W!U95_T`Bx@jebTOh&_y+Pe?xiY|-jx?XK9=8c z5yRasR58Uu7{;RA9lH6hR7jUSm)k=~u#7Ru15uPVW?Mks;`ji{ph1w2iNa9jru=}5 zz!P{AQU-?m!EZGR9Gi64F++3`+EVIt;b16gX~*C!{VE|;*Gat&Q;z;qPQ&XI@40AO zhu*$D>MvbIS0my+6HYV+UkvW&hvtzYzf4}hAwr7$3wcdBN{~%U7hVEAK|xS#lD`Jt z%V=<1BDXBw*G+}rrD4dIvJm|j(}!U+kk`HhSH@G{vqK>t-xr>7kynyu^O>47)y2ag zpSb~HDfM^(+-F2N2H7@d$lH!Km(hLja42#!zNO-8$(^6}K1d$JM`03E0hdCLaj9+y zHBN`KC9;{2n~s`E+xlOI45eIRVzS0w@~Zx5^E~n#@@78FlfioZ<=l3 z5j4QZAXb9nS&CahRfLccS8t|#(>(h?6FdTX%u)6Vw2`O9+0QhtyuuIX$#K2V_Tj8S zrApAT8u>ojOomXuk>K8`Fd)6+LGp@8_LyAdf_!orYAhZN7zLig;$J* zd|4jGPASmePX=m`O2hk@5c~=}AvFsd3q|<@5baWfG30ez7bzZ! zh=zRne2gEm9BA-3@UU%G#m?+s^%@g$_|dvh7HB1T-e>j`hOfxuA3;V2`#N!9aW2eGV($v9|An*Lv zY9e{6b>m-kL}}`F$R6U4Cwo5}rxQBdJSZ-Tt>Bs!He!HeW|DfWTzYx3gut{4a<=m$=Nq9iUA z6GbP;Q~01tYL@MRe2^DSmcoMWBaaL9w}|K&e>3DWUqS`4dBI}5F&zoDV=%1&miwU8$67Y zW-9r7^0YfqAQ!or0Qn%t`P5hBz6L%>lYZa#7G%iHhhaArttAiIXYYPT$(_+2a4Yl} zLs1|v^;~xwxU1OG<1^Bju$l?gJJ3DEb?X!Lor)gng^oZ=Qo7#{it8XXn=#T#jd#rf zFG_&nSn4mh9XxRtf)x5y{OxB#E|;E*;o)Lcn^?Q{&H6T zR(TF2K~E-M*Y;4));ko}Hw@hWp!?M`p;ad+?wt-r61`vD37)#y-ko~f1s+!n`3UM6 z=mjsH0Qqq8XUS{Sd)`+6D`3LQcOyf+%O2I8?*VrwK#|n=G4cdHo)XV}OCIn&n#QF5 z+Iyj=`k22(Tyn$UqGTk5aoa1Y!7TD79~4DWQ5|_rnDk>L{CFSqj4+#x#qeNoZ#|*hWVK|$L9(Vxq&M#YyNCB_?!Cs)}9|ZU7f>@Dr+~*zwFAh@s z@90BZSE>?l=V2E`{J6ohHC-sl3m!(+d~Wk7IeVmn*Q?KM>O<=2A+LA_jcQt{hEYcD z|D=6Ly8IDKkI%?@A9axo?;yb_RCitVAyIIQyj^WIq7T#hHH_OHMS*hoTv_;^%RU(RjsmKWRB11(N8PFb~{cZ9$@savJFTICv#b zbz~$7dIH=t9tDcl^15TZ#e^uwDE}vUVy2%KJ?)9r=}?p#Yer^F=#a|W^(rfJl%O#7D zA-)fS&ZMG5@}?f((ggF!^Y29kq+%bDCoF(|7xe_@D*bw5ZsNXllHq_(&@Q^cKH&WL z8hA8!6%dzx{W`ewxz)hM;7RY}T1jGJ4tYyUfH71TCX*#9V?xCqb~F5Al;?4_xM7d_ zOBbz;Z>36+zk35bBNlP*rbhRh;APVht}`M=0b?$K32KKUI>-e+VSK#?Wh9!7$Z&DU1N%T?r|F)$oW zMN^l+aJ+iRt`CW~gaYu^ryW%%Pq8YX;!kSuv+9Z3x8@BnAfBjw7d-kN7!aRlE&~tn z2luc*W#r|3?Qwg8Je%Kl_Gc84TC^BA0Nll%gj`8n-NAT{31p4#jO+3w!8ZT9R z@woUNLB202(J}}{$c940^FB11`S7`m{MzN<;rqZt$j20c=ke_aX^SP~;VaRlqA4Hn zfhF%VS~|mrkxa-!f)RKHd}WeQ4>c#|3es#P#pIb;p<`~G|z{kWbzjBD#xSaV=Ez_n2ga&3N&sNcu5>i;zdsuc?&mGwJNM9 z)y1ok!TJ0!z63n$Wq2rz1?sj2Jc(C!5@ki?L0#av0?Kb)3;7ha=tLh99MPpbsmSDB zKf%nfL?!6(uF`MFszciTv2`p^6AI*}{3>z}H$@PB)yFiQ`)AxJF|(MKVX7Fr2{(&b{{GIa^5~^Q>VQHJybb;^dy%iqaqjc>PvqPuG=z34e+CckgCI4@{TgVW51OT=?<6mp zWS1YX&yrWqC61z8(n9l*U?f+=QHeD0$}cbw;P}Qv+J5k~-WX_NC_knV+>h^POXpca zo^P#PIjfW0{3|l#o{v}+MI%*j(oI^<*O*Njc$(awtJNiBE;s=B{EKm>A{C1x&pUHh z4!1u(V?x;$7?zS2G(k}?zn_&%!{3v~suOR0nAWdhO#2=3K`z9wG(iKoKR;9?y>`w) zo~h*U_MQZH#UUv2UxGH1$>E}A@X*)nhJEB2YBJDADhsrayxDEFUgV|Z&i%OOwLm^^7pg8{ z|2epNp18u^jo$bZ8B$NdqBP!0@(6zvNV;A3zaZb#8wMg-P`|&ylldv5T=HV_;8J}J zJNC?3-A*P{zHYDCm#t9b$4ds8Wd2p$^5L8wM&;_9oWg}CgGVZu8|FuV)lG4aev^0GnpHjnua2I9i(hR3#p7d{R@ zl~Dg*WkZ(6S zTMZFWiy<>bb7kLH)&U8rC+)puTu1QqHe`sUB6lb7NUo`pCJ6QePv&k$(gf?s<2#~2 zsnpX;y_{^_Sgl`!1d|C~m7qf=?=Nssw4J<)cYK6j-UaeOWvGBO*;ew#+w8G&h`i*m zS|YCx)A}`x$>%_k^Damsd1h}I5W`L6wE<`X2`+y%o9GJEthHC{7+oT&?s41j#%Fz_PkX(P`$h1o`8E7MoqTh(6I2XAvw z-pD%-iu_l@FrPIUBh-^lU9+lvc2A7$0bb^~bSWTr%|~wvlLC?Z3c902GK8)OgrZ`{ zqnKTa>(@^594ihFQ9glZzp-d)V^dG)ajE_M^ki81|6g9t8Q|r=cI7Q1Q2d31z?8yWa(UkRk46 zC=w4%Brk}C=e(@(cJeaE`oeB~p{MX^=$BY|TyuS6)um=ReMmx*dc3Y{mco16rj@F; zF;fpxG%rkrd@}h95ioSvYX@Ugu zI_^OuLDY8uZcQ~wOGh_Z|R|1T2?*Vz@N4n&49K8zMc z3(4C%p)I8XQ!apfDBp{daU$SC@bU}{;lig~sGc`iE}9G%6|$sHs%5&GH}ct))cB!6 z;C1}|ycph2p4!idwP8` z1l)YV-;(o3WEe-meMYvL-}RAd{i>HYFF}TaFuQ@tVcm9(hV6nns4|8zUeez-Jrr5I1&{JI^$CjevaSM1D9s zn;BxSKtj}3bhAkEedJYLQ6Q=D?2#&rRU4N*1D?u}be`f?Q2zrUO`N7yVrbr+jF^b$ z@L^m!3JK|I9MOkq{TfCRxr^U)5yMsFQCC1wEag8`Bc(P_F$ac4kN;KRX$uhSnUufR z$Amh*2cOS`;7BTZ2d@j%mc;N?8G6pw8m4_i9-|FHGwx$U%W5 zrbepC)Z+h~Rbf3+{=RNxEsKOE<`ilsV)zmEaP+E6HPiLoX0l=Ow^EEAM)_XkhRy;Mph9WQF9NZUyg? zem!a|y&zpBU}RWG5$D(7_LB!6NBEgk*)b6+(>(StzMedWPX?qa3&}&&JyU&1G@SzX z8F`K`$OPOD17*iiWKnePT<`)u%#_Bvk-UUUI?`Cs6Xed9wJuMBo^b1ykm{KxGd#(J zmH@Q27+6XkHvn-jPOl^{dD-qE_Z=|c|G52>Xc2kz!LvN4M~3-#B17iseV0(8edJZK z$k4)qX50n&rYGT2ll(98(rJhq*>>qeFXSuvq+dK*qqsFPRB^15xc~WXWGMN-9TB#4=8y!6x#0$8EjoPe9&(C<-b~kW3!Q zFR4i<{*JtA1_~6b4XdLhoqZt8@kC~Pv`am`nJ^nQ010C0jFR1eg zJ&m``M$k!9>aVF-)4O_5s*gyS9mi%eVYhvpdxJc01Y9jOTT5R55e%4?I>UHmKJ>UQ zvh3DVi=aD>GwS3i8nYtuKK4;(kInYrl4;-OTs;onAWdhys#LG zLY_vHi6?fDr-q}TiIgwPgM9831c5bD>A~!(H;|A$6N)mJA%)yC9T~)>Z<5#X%_o!c zH@wN31)_g?$oszqUKeSvz3qY4*aZlpIA(ZQ%^q5jA3xL*ME(hRg5yJyy_P{frUwjrDL?Wcsk8TK)Uc2jG6MqWj7CahyD(#qz|N zXF3mlhzwq?I7+b88OC!fsOTzt+xIR8kGjJ?5KSg88HjmV3iLd=hc9AeS^8D~TgHU4 z|IlUKUEJ|gYL-jhu2!AsL&k&e)=^%4wN@Xh!g~BuyPAHCgyM_+t^cpKe${F2 zC*V=D;E6=?Kgo0Z*_$S&4Dzk_BB-SoG?0h5;W_cNYdudZW3EI7Y5T|5Ls8JBc31yR z9<@h|)6G%=xZH0mSC zlgIIVG{drE7$1HOdFSh=zmj`T+V!};fqe6~h$iVikAwRR{U(w=8mwQ#NK}HlKy8jw z{6g}8Kj14-)TbKqt&?Fue7l4^^90&Rf~JnV;z4}^p;}d1d&^cRYT@_j#lU&rf#>j> zbSW%o40&V#8Yz_gH*(iZ7?$uJQUg5!Cc-;P%WLB!wjm+t6lx$*Fnc?A#0h)NZeKiZ znp)%K-GSt)ov>d>`}@e_TsT9jCNHdod|F?$kefXG2XNzYn+~i|)amepGA@3T5ppB=2ggS8l3h0-Hn7a$S;toB>sLDx`c3(Wl zqZ~4IH`1LS8;scl-n;^SY@nSc^3qNAsbg|I??^~_qkkgjVn0zd^Jnk|el<-Vp{43C-RgSvZ}^MeE6H5`JaDpQ)kgASp{(wX}I zPW>)4UN-f34qDu21gkgH^dX9hkYG699l!7p6xD6EN5|vj@vqs3;Ev6ZugJ1T%`EaD zHPBj(XKL%}_>u{!D-r%ugPOxo6!9V&wG`sUq$A+@qcFLolV^}8PKM{CV(ZA``Pkdk z@_Kf=;14K@=F9I^g5tN4`*DkY834;6}A zSGOS>(Ge3Zan-;7graOUi|Iqc_@=+W%N&>0i^&7j>9Rgd>(?+I{TuS_s-x;dJn=1g z`BZL_o?#^$#>=h9;EhH}xv&?rjZI9Ca*tz*JF;%duGD^;D&k|(`xH$18v^n{n%Jv5&@ayCjLL*_}vt&yer7et3i19zMYMb5p4 zrv!lKbb?_i=mzqLB769aQ%ebS#d7&UMG4CX$Rq0b2`LGp>FU9q&QPx23(U*wrQ2pN*NP~W7Y zQ5S({s7BX^L`|{q<%s@N%6AejtBoG{Uz;hPcQMjC3? zMgv>ah7DT2h)eTL@_>;lyfx=`vQn`t6xZ^x){-DyP}nz~WP*1nY9KD^=|TqQzHdq7 zuBQ(rl$N5xLt2lO9?tB#_ zvOd5}kw%G^$WtG%pDX-A?#GJ+sbYe9;Y$~-$?-n+`{d?p3|Hzu0`4<1`EiUyCiEE% zMTJulW^VEko<_6aiO$?{qSp`-;<|v+gAqgY)R9NcL~vASJvwkkUW*Lje6y@XC#WNMEV!F< ztQfeTJWM^t&_}WLYZyP1C#^(uNX4#?hMu^3``Op0iucoPR=~+x3>;Po7}kfVDM(9% z&O;qDX=*)r0pB^7LF<+4Am4BgieOUyPx7Xt2=ovs@_5KQ*ZpjXvAA04#PF+NhKnX3 zgUP3A(qo<=4}RZ1c5ER}JBb2G6?^>;dh!?A3;H;@cd@^+s9MLQ;YCa+akT0V@>Y*M zYR*gk^9VdjkwO zAF{6@kML<%pXrBN$-`deux?t(>gPr%O6Mm(L&<+4kKB#|$sjj$3gn%S6J8=O3b7Au zt>hU|&~tjzm#ftYmu>>vE=$UI;8gISqynR-f#;8h z9%-7vJ`WOV9l>=MdC_x-cIkcx$fN#64P-E1dNcF{o(luTEKv4z@Qe}AlS_Wx3~*nm z7tt$0w3`X#+a3Kl9vRI4p%+NozdRG%s6~*9haQ;)-ZTwuFN1TR+2F3@mb~xu;QTrh z!uXh?nkDU(fDGO+7=}8-xR=~mgL7*M-sR*`eNbaD+)=Hi)lHnvy_j5);4!1$xh_Sc!A#yLjM<J^dSX}z8&&yHTDXuA&;1?eS6kec=udni0OTZ*??#6D-!Mi> zOl%`}uH-vPZhVgp8c993sreF7_LllfTPnN@bx)(jmG^>|wjpXHI?BnN%TGQ{hJ5pS z^t@Q=x#&Ldtbr(j1i=m9KBKY7ZeaHP$k5gc+)YJ64}b^qd0Z&@Qu3HN@U2NcSWP3k zV#z)fNUEMs?zNW1t5%j0MLviO;aqkmVf+DkJXejR(?ExZAfMp4R~k#+x)p|{pihz) z+v{2ubSC^T6jd4=L=)UA}L;|Im1@t#hF z#-zRQmCRh{J_25=c5~E+oGv{_?g>VbO)FLHLrtFkgUnn=Sn{Z)$7fWu*c0|3!SM2J zjZ!N5;xQObKMy@peExhIc;cs+55(uI$;&rFe-!oj=0V=msQbm(Gw@a8omSuN~ow?I(;}WME#}XCsgggq7NzBlOo|;Pl>vFPPz?BH(0uJ6cUVre-T+RG_ac7^AdP0c}Nxvx9mY5izDy& z0=N+ld6WD;a#ytu^|NNfl}u={UXD03e&xLgMfqH+ECb$pa_0(-B`-m~Ol`BHj|l5m zo#OKwB;4ZXU;>7rKMLb0I&EC zo!exAGIDrj;CyOy&a24KcF10!jtjw^OROi7S3LxI3BAZgkS`i-Z-Q6J-4}M6WtBz7 z#jlyr#>He(vjgM-7oY~>(u27$(C{6CF`PA<__~bPUiFvmEzP4b;Y(LMPM-1}a*D?L z@*p3u&)?D&O^tQrA*GO)wpjKC02S=PmvsB4z|BorkxVV_FSyeb0RpS*V=c#DB1NF{$zacdMF z)kuk)2tMt!3KEmD=5|)EEK8nIiPe?BUZ+#AfMKmp) zBzJz8HRS`yXYoo>O11~wXH?aovXWqahzzBi1f{FBlLy4x<8#^y$j9*OXEJHNLtaN` zN(Fu;_p`R9J8PJ|u^5W#ro$5ztl0+ga&<1H4>550O2`L4gLV?%y2+iNd{0;f`AnWZ zHfUu!4)0ivgam$9TnrSF7pkq_^dbB>d29}vz_d~gqo4$OavWRvuU-QlJ`h6z-zzaP z)^eCN{zVO3RP>!n&@oZ+Ju<|SSAGQU|1g@Yn0%}nd$fG8W4+WO@@BrCltKB7b&wBO z#~r6~nXrKgiH=vtzWx{)3VDl4+OqN!aPLeEGFI1Cx_Xv@$J`1oFYV7G&l!s*4m0qt zk+}HJC)7Dd|Mke1#Y+^E<+^YK?SEb;YZ>@1n%&QSxSM#oL*4mv!ZkPuq%{ z2I16S2d=(raX*HT5+-#092wjT!DYx9MP4unEhn=_?=K)V3ZQAWsLLH+eiayv7|ms>sP&uK%Uke1(H~O@k_|3j7G@hP=3fJ z@Pff;A+P4TGsG|u4pqYX~TG(Jf#yV zCLSHJnVq4SOX{Tt7kvdq5!a$Kh)V}=0r%X48i;&6c`PUDI2v9+-aZtb5Iv3LnX~!c zWg;^?Pz3`mT-_lx^L`Cp#&OD|d<}UUHv9E&nTJ_f;do zaNH2Sc`JDEdelH%H(Z_M=w493@6AcgdVLQbxi!ElVgMXvq>;z-iK;a5b{`X3UV&sB zn$(D|fucNaCM2#Nu?;+BFltauPaGjn55fQ$L%wP|^+Z5Ep8Uog;J%oyNDu>~YLO72 zzNfAa;a>8DNXSdmY$cEHj#!bJb@&l_Vs6I8XBG{|kOya49zFA_&KFF`ckI(>)IpK+ zE97g*T^=+|7!8cs1$pmq6f~RsvEATB)()9!&ku{M{#VQdFTcO+W(L1K%rFfG#1r?C z*N;S#S=TNq&&TA(58&d7yn5&f$bT2Yg?XnyGmOP)Qr7p_< z?qS39QJUjR9`BK-=b$@@d}#yZbEhCyqzO)tJFniF z_Cemi4+bJ7ug5>bc;FW#B#uIj6Iin~t3|zBt0#3i$_&wt!FG5P6vd=KkrZemdHYICQxY97kca5+Z0v>bR67z7zyoM zHGF!AAur-RLaA{JdHP&#1ChKib}8 zh7HUR`LKN~Y$Q+RauF%eElZb}*)wW*P`-1+Pl62jfBV+%$Mdnjl>DCp~?g+2|eijpa-Ty1_p5>?f~Pd)Dhi zmizyG42q&1E7E8D1D?UBbrLHZ$s5<&Jv83eh76&-F^x#{UVa?BLM>U>hiUz)*PH(Z z_a6>L61;=|1CMI}7x^{hA!dtYpL3%Y>qf;L=j^F(;70G*Qq3 zc-H8865RO_vMq{Zgb6+c3FoU`ZgLlwZcA7$Coi4sZ`qbX(WTDdb>qeHE}_YieM%lY z$vzWr>|n{OjgGlvxrF5%YCB%7sA3chgi+CawW3sWa~^zU4G=2r|HwKYxGIXSkFSb` zN=1rEO1c#(*43zPhDC{nb~RE;EHX?itZR~CQlSrau}CqoFfq|E$uOy~&?qUf(6GqJ zu&5|0(a0z1{lRnJ$8Q?Z{~@_; z$7vnmS9V1PV<;>ZD5kGDagwb5VR8 z6Yf198IlL0?L|?HTIR0{WW0u-Yi`QVCvUAlKa>J(BzJC{e#HgQ6Zs>C&Tzd5N?(gr z0{X+J6iMP_3)4zBj7!yWc3p%Pegvx`-%Rd2iOsJkdEBz zW}@OTju~EMLRu6um5z9GU&wo2#_d6d`&Y;tqoBvlf}W#hiCFz1 zHP8N_)=_P9Z8ZVs)`_CNdcpuznrfiXo~@+*0( zI<-Y#A|E{fda63fj-h73dTW9%jwN zHVg^62=Z2SAJUg;aLvX{N%#wGECxOxujChI)5@kktgcv^quxF~tzNr%O`cBf{Mr9O z;6XRpd*@;DgynYm@F>W~{fbx-{cn+*lX={|B>c&Qc)r?}nAkM}ikgQ(Q2}cZbPIUa zGM5YY&pQ?!wTR0z1YJqoBv* zIE~`?XmI}&`z@#5cPkQ%o`_QM#0MVm2EGibU=1S1fCs2|6Z#SlZ6|jg0s9|$k>i8c z-D9E0=i-x16%8~q!TIjt@!OCgiCd>gw@iuwFK{e?%pq@j6P}Y^FzI&4n^9I%`iuq| zKFNdze>8!M{HbxsP|MvRP4aqj|4R72ko?o}kS{tPhV#f@jRg-}2o61}5a+LWb-5Y{ zL+(I&(mDjOc=j8`^>T@@c_>#7vKwubcW%FZ`<>8JFc-JNTH5!Y03Ny-`XyEufcuQJ zCD1H}w=+ZgLuhKr5F7_Ze$x<3(h_%*XFC=jZ6+`70zIg>VSF?ZdICD@aZL?G(nJT< z&02T=HhL<9HP~}Ec+qfsclN}CCm+H9DYvSz_kfoPJ^0y^GKA^MR6NeSIo+1L9VL&o`KN%US zdZEVtRMhi6@LFz_EKPQdJaHtN(yE!t6Eg+!$@hXwL7z(mcfZDOlG2u?Oo($F99T=< z!jGXM-+d|+Rr9VahQAZeo2gW+)BTVS;Smj)mj6{re`P|Ey1D5~de!I$kRf6qT$gR7 z8pb|yFQ)^!$&Zr;}zP{Nl&(#8*yr|-4PUoo8(;9FrA z4NN9C2f=U%dF;cGPoHV&@tyt(I%@_JGWiulYWxX#(qy}bMkPbubu|VY4-M=fcOH25 z19|aR@LYo>ulnEiN1!M%0nv^GwS+;HP>%xe+w{J9)-y_9jbs6ng47 zk;N8GZ7=#CAkKB;-p5+j)mHz9)#} zBcCYxEKPo82hBm&=o>JoCRhbFj4kBl6Hx>Y`P#XV_c-2d2LBH{gyAPc)dKRgBhZsY zJs*SnjCRL-y0_DzsQ6xcT`r#o-mEqR(U(-^f8@pc;ak&6HH?$w9>+G*iBFwlO%V&X z&gDY;SXq))f)2C7AJM9Eo4QN+PV?Ns@Q}3ji{t^0y;b}&AYa5NkODnV?&4ffD~z@M zO-!hLA5q|D4HnIZqOg7Tnmzb5c-o67XcXlGp8ygusj7(nxm1%N9dX zt=hXtU#9ifFg_q}E=JQtkq^j*e7IxV+t4N8?T)dt)W?K`{uuqG+su6)8OjI3u(r|*U*%E`x(C#mkNFVU0!BIFa)#$W1E8x!dNsB79XBp5eBQ4Fy05xMg* zv?7;^j@Wxgg!;9rJyHA++E5H9lV`nwfvCpXmS4r+zf8cqr8Co(;$DKHEXPJah2+u4 zVOR_tBTso39!h5gTq~d_^d!cQOxQQZ<|(f4k5S51`Vvp{ScwefTmY9uMgNgE@~des z`LR`yulN|bI{p(t6oR$t;FzasF&f8ZgPm8w2Nk^6syfvXuFHzvIS`P!4Vk+h3ZuM+Ux zYPk9>pq*Pi6Za_zr+~M>jk^)wQ8cxX+_eWbgnvaI{3jZtg!2By(BpP2QBMLNX+$L= zE?bzP-v(qTC`BDJ$nPOf?+2emk-Ju0^16EEF!F6=YwL?_;<6{nGaYl`?t2IFIjRZt zC9eOMJmziGqmgF5D1m&g+P+#}Zt@xGuBrUzGg=;mL&BJ_PbKJ^M&SDxnSwb24ci1o zp=#vPmudY~&wj!k>rO9x7xIC8FDDK3DS48bH)3^ZQ8c_18A^x1vEqqB@^ZfXksAL% zp8Y2xAejaFo80ez7(!)W+Wa2$r>g(z%i{WxBK&>GD7!MQd00rI#cw58On0ox&;y42rN6l?ueUzf@C`FHw~pj$&8 z8;mB)qx@r^K#wnzW3d?C#Du7x$RIUNs6>YFW_!(U-2tBYErw#L@r+NwJy#v7bBn3+P4d`8gliIcGkLH&BVAw87$bK= zPx$P!MgWyQ^b7E!nc&hv=Yso;`Y1F;jHS*nZmLEG!w=z9Lq7aV@Pa#0AW@V`-prF` z;4yXP4tePl_5u~|f=hCDYL}=!!bcrrhf2^xOxi{04-qunN*>}kru~|)Am7#-2GS^B zMjoGl3P|H^s)6Cc$Iu92+Tps7_S+3b8Jww-O-12fgIBFVYfBhEL|(fDgR?Zv8uA4G zs1o@j+#lSV+f)~Gmrj#0=`yF^z zJz`73ej<756#ncKMY&8!{2sxT!ID1mJrrfO!axCecpZ2kx5|wtzn8q7^NUULjz2)Y z{86a@$H?26;5=4!KY86`yC;kvp(xQ0E|m(n$&0t6pu+w3K)z%+Vxo!#+TvqESUeQP zFriC5GUPpt3{rzGKY@p(*?B5?+87j6ddFMj5sq2&DL+HcJ@wp$B#ef~tLIeR_W7LC zDsA~Rc@Q^0h@`n zQA#nBy#6yplvH!@FOc_B6Jzxyr3h)XxX(yF`zSCa@Ej715H|`GrI@}h_!Wv0pN9d{ zqH1O!c`DyYoi5M;$mj4goHY0+ZP7verE;v+~cpgj`GMqkP!3;hBsMxd6c}78;F=XgSv_jLcZd4^c6AO zu^BvkE;~B{*O*LR(i;(IT3QTat>V^`SV1h>Mm%wn8SSHmytX4O z%6R+KpO7z0uk;T_~0mb3g<<+E&nTb{L6$0$8i^Zjv+&hwYk`t=$%LI?SwY=(4~jSjpyMx z=>_h;p(l)QtKF1;)yIS?&e}|1!nfo_BiNSYTmFF}=LtlfHt_0eP@rteKYbj$@D>y( ziu@G0ul`wdvj`@{|BDRuzruAU`4{B*Jg~QzF0K3z@+C)cV`!&*O*^>XbtsT{V!;XU zAho@=y3Ra_wK5@ogxmq3>5G%dP{AX`B-*>50&jc@!6gPfcG!8>aQ_`GWeFzSl&rMRZg$>tE#lQTAV%->S7`deT|d5uD^HMee3ncxgTLocWVY zJsIR}5%wr+0#_@unh;JU%y6(96h%C4Z`IiDG{D19Ov+c0SMZEfDbQ7FdWtTP`w3J` z7ePg4AhLY@YA-B{XO||5O zciBCZa1rD~gYaX`OT%-?E28W#V}koYK9TRmtpe#=eF76qE=re@M)pO9Jo7C1Pn-xv&mBv z5WLmYfBB`5_hRQc^^~Xmuder)U^~}A@qU*fLzMcjzN8myArIu@cDI$Pj-v^Me06Vl zG@gU#Qu6pD6eyDNBYo;DFg*gaOhQ{mGhvWg5UhF1YPeKtu#Y^xFEpE!AE17WYWe(4 zXflbREb??03Y0+kE#$tC2$U#}36F+BQBjcHz((@+XCPln`T9YSZ+HWSGstVyX6(8^ zjZ@$`7kQuyyzYSGR-eg)h6W5Q;-c;3VdufH3@lp)Ls39Cw7on6w2;?~!9e7t;n*R# z8zr{lZWL&7CG*UR-R0`1PpOx(Yn@ z2K08$$TsrS`erR3$I~K0DE~KkVJB2aBI=H-EqR|&_A6SdjG?mv2}Y1QenMZNRCItm zN&RHhmpIr|Uq-ayQuPW}Up3ZW^{SS&YsS%`(t0VqFXB}h(ise zSNq5_)v{xKnbu#mMG|>C&x(j3_YQ*|gUiN5{;C_mi@E9c>As@)ipG!n1o^g5BI-A^ zzLelFd8A|VQpZSW%pAiYU4kD82{ND00nuY4bEkx2RNH(7doMgzC86T^o3fUjNB z?zoG_kcW3caEO7mCaLYr9%5srE z2TkC|?lW~1^mzDE%cS8l@}dMZffTe}aqFg-+!HR91lMRNGVVkTgug`Y;->gw!2edr zS6pq6*89j^SK?_og9S<_Pl)TN>whM^|71dj`dzCpG3@ccfO8e{4D!PF;DQ7zmtka) zJ69B~A`klr@=yOjF;Bvb_T)9DvQ&ZV>bGYV0kMxwS z;&Ao6PXMaL2X~es@DY+_8b{X!2-I3zX(qL|$_T zJYA#pC#nB6F(GpdYM`0EX2rvRcRvawF72omXj+4k_!ik@(xsIc4;274kLl^SIDazA4&ZZSS-h)scdkyJHClA zsF~%ueKIoS^Fz2a#8Gn3SkznUal?I-cYLAyo7{W>AtwGSQ_p0&0&z9kuWGb8U4uj< zq^ZYMeWh7{)z8kU;H{(JK#A3j^tCx}R29 z+clo?`Q9hN{pO*uMdSE1@Q7(BaVAS#MIK_J1mfDG*UGQbl!5h8?oo*<9sZi#O4&Ey_F{9F2UBnHlhqOeqinui(M$s=>@eRA5< zG|VMYG74Vz40vk>`icw&Ysn+$2Uwb=pcR=M9c!L|0co?r&q7i99w>@tfzDk3p7Rs> zm>7s7Z@&pKB%|pL^1_ASqW}Gc)c;R+U4ON5fCkoNA))ze1dG({0C^i%GMbdXd=cb> zzOvW&Ir6GesIhpoO61-CmWIG$( zhW?Pf=pE8UU-K~`>;&3gYP=vD87kB5qsn&j_?ysVUKaG1C6M=Qw%;Hgdmg-GFA6G6 zu$tUgtsWNiC5CT$0U45ihv9M>_?x`_U3)NokOTSfm1twBarjd3tiFg9DQF3K=1bP_ z>N~w##g-S5A^0z}rNRGfS_U4%PukKnlXJmK55T1+3tB@Sz!@kJG2#~TI@i6`{%tB3h){s5|>{(Q~#x1fl3?FN?Q zAwxPBUrK=vkvH+TuC%3RB@J`lg&0mCPr3{GrCXLOu73yVYlW+(Pk^tMl6CdCvt(Fl z>VwECXs%Z88}ua>?|2!!a1eq-MwHFu@mpXqn|j*vAz!))dZdKGt1Ye`M?OIKCo#io zNH7xrut!_|D^R4jNYR%>ZI?CRWrI)wF>ncaaGISDBgZ!I1JBefj|l}y2wUl>y$h7j ztj}bL>R-A!t0v?5Adf{pNS+yH@3A+$3V9N(VN?OMp^{{~;V$=8GX zjQEbIdnyzBUPFcot__qTFD4H-&ptSABX@4XJGc;fs$YQqH0p06PrZ+iZYC4vuS14_ zfp9JteHc5*+n<49sqqo=w!IjYrLix19eTWu-6#slbC#e$mR)_r7`Pr8vbcsxT6;Np z^lvaAo|soed4B9lVFkV?cOF)E{~M4mj>BMT8CH2-Q{4JFQOap}L1=2@@i&nnBoUs7 zp@ETaf!8m9C*sLhk!NS1pwfR<6+^y~ryq#t;x~Y&yzDqmDW3@eIZz~?D0mwgk~rDZ zMZ=Bc&0JR_2713k12-V(glCiI+$|h8Y@>w<$9P&8sA^faW}J>>PNAw+k-0=2W7zNE&kcflk0{3-mwQt+^IU_dwU=kV$MaQbM=UE*=8g}ZG$JIEng&e{xqv1kK-%MQmYz<@iTeekBA|Y z{O&U7_h6H4-|2^?TqgK&>u1T(;R9qyoMP{OlgX1VK-0h&z@)>0ZYk)UPjGYQ7*%~74n6SEiH$B1n!=MF*uu^xZq>O z^$pV)jv>>_gkw5E@iJ~q;U-^J0p4;g+F08DdwyxMS3iTiKc}@zfqt$6&pKkSSmozFB$Quh?|$Js!Aso; zA~Em-dE0+z%M3QnhA;3^uC@rgko-HvbyGU$iq5O%Gt07XJDl%Zt^S{u3gS;Sspg0; z!Q1@p_u7}pW5%L7Qo7H{D;=+gZrlYuaj!vM+V7^XEUvaTRDDBVE*AS4Bp69;XpboJ z)EX-K%x?JZ-QeL-kVoHA>-ovK4Dj^Vy=h-V-fKPjsTeS6U^^4SzJns+*L{Nw3HzOEJ17dX z_TNzBEcwds!Belad+4b;@E|q$O<$(<*D#*=f%o7Hbr027G!rURf{ux-$>7p7#vbs> z|Lk4GOJ2$iM?BQyR}cBH+aWI%8%Lh~GAA%fo4qax+|k6OqHoF5SD|L&iB&(rK+DzW zDk9(WXYjZIkQe?pdG#@jo536djLY^SgL4&Z5f2Yln06r**qDAB-`F@rLDNyG>An$byRde|DEun;Jcm&;p<4WJ(NJzL988Vn~h`dCtE6`Uq z`M@^FH+>D4y2*51yZz9bD z9KXO?$fL&CV`5Qf$d_8bzSYw@^>^>0c!E+C$oV@`vp;o$;{J}Er%TTPFZvKolR`yp zq{(7o5DAVea|3NlsiTlYDBk)i!=DVsL5w(2Tcko9D)qP3c@H6ye zl81MLe1bJ!^UNEa!{F)=Ek5G9nBmFp$Pn%L*;7Mq@>hct^tk}Y=ksfFBK7n-7rb39 z8`hU}wgcpGt8@gY7Uq%;W7m1e5VIWPml(L<{I2SA%K1jr5j?zOkWrgID{i&4Kjh;q zGlnsRJkxQOM^YfinOA**JdkVcL_YLF$T#+fha`q4 zlE*nGW|Jqi@li{HC|b?C)GiJF61~%;;V!}8tZD$dJuhcT%&5)!S{YsO<%~R60*Hc{sONlL9q`K)#mCCQTZ? z-6B0#W1} z$bB_jQ7tv@bO|yf{c0blx~qNbwI}LtfZ=E=nn<2~0cuu2o4+1x4pk@*iGs#Q2ot6~nJ@Q8Nn_ge0_17>S zyh7>GuRHR%usMMVKAoU=1|J=z?f)ci;}e_|=;)P@Pg!SgvN3AXu+|gv8+;G*hB1%4 zc)1_qUrN->gj9Y@7f;+W7>b-bqPLTWe{DDX)DXz~UyY^|{pI8(H^QT8!+*GN)rx&h z>R$ARI(A7H*x%cR)m#xUZKpy4z+%bPB@ZUVR`N$d&m?jZoPUB z`3A8eZM>fu;#CajE7|(14qv$migN#lHjW?e39@qkav>@4TpT=RouN- z45u<7jVrTanISU@8A5opwRqx3^0?1&w~nOzkP(pga8aIkXfb*CxhPPP+>2_NP_Q0N zAO*U3Bosv!qGo9{FrB=DTh&N`M%@DW8V}^NDgSgdxUm?$Qwp?Co!w=%P0l4~8>zvV zQQ$824#}{RykswWhXmJ?qah#t7Ys`U_K_!C1jBhO(6n12?+cy^MbhuTWkOUn3MAa^ zL58dX7F@#^=Ny40sP{U3F8AB%)m?t_#IYz$C` zFzM(GQ^BV%@lXu8$J%AUFcPg)!+4WCZ7bwW@=wSM_$U}>an=8h$G|||Qj}EM^4{CQ zqrwm@!e1dz%(H4>q|?A=a<}@uW?gWUQ8x~HlK+55rD7T571#G7&qVuk$Uizk@$f8g zlLmf|1+VLd0?~{SqISX6@=cAn`&LnY40*Wv7@@Cn@@0za)d&=2)Pc=puu$A z_=(66%BU8@W#sMru`j`O>s^pfUy1QR_zdzg9&qPn1*YHaLxyU8zYzo9-wp2K4v=nU z=pPRr%$tg;fpuMV4|r4yJS2u6C2zS4JcjZ&PJ(=l?wAb1VG z?@NuV9s&;zu@7?FynF`m>uj$<|LMq3J_`mKXy71uG?z+9V9k6O^5I<(L&C3~0iMFi zvC@=2^5j!IKh&gw1o9H}$8_gna2T z=r@hakaE+bNC@B-MqXx^ouayoHBDu``j>XP(T?{sQpZKJz^lKv-=emXr*k@01U26I z803?`#?yv0-g5GovA9!+uZ}3LI=}D#?W#6rHWamQgwrKlA19CGi)|@rY%1hi)d7e4 z5+8m6NhIW51;g={I(0`OZ!bsGNDXGEK|Y!LEz44) zm^t807a{tpsplQ?s^8!VQ*+%nqv%tKPbj zdmI~FR*+{n#?*LfBQy;rb*Mwgo`HPhb7*^s_NC+vj?Ed5kvGMo z#@W>0mI*z+GS0b`?$Kod5<)hhW+pRSPhRv%fJMT{uUiQD%oIGRNr8&Ua|7)+>*-mL zkF2t~>zO@1T#Klv2ijgd@e_IRDb!dBI_x>fJGVivAP-xN0ZruF$m`VOi@rS8U)BF6 zErz0KF8G&VG_%1g|3&ncS{V#u9eEX>C{6MiOCTQ>g$ksS|3n_X5M1OZJ+I{TvvSRK z7;vPd2XunsO%-S}Hx+e$0lel4)F6u7Oc`9#B*ZVBvTLeWj|gcvSe zMg#Yt?S=Qw1#g{iFK7yRG`ecLb;VH{!ER|CLH;3b?9 z;wFEAJb=spBr2DzfPD2Fw2_Qdwd7_kY9dvikY~yJjQs8PMy)`Ckva!HaiK=W6Dwh$ zhOdlF7U&dtTb8|w16M)5?k`kKf@ux8pS8YFHMi94_Lq^txxMiR=UOwd0 zxXX&PMVHm!DI4r}qoJ>WM;<Ra1&* zBi}%VL_Rr5XLx};`#O7Qtauah1zb@nh9|uR9>?x3`Wwho_+8tQ*GAS9BSQ_BQN${y zufi1_PW9SW)pZz076telLGEDO1ofKkt+Vk z4B3a!wo=8SccI8N9I=qcDn^%r7iGb440*tN;7xJh5`<;sA%5CbDi%_i;V2U#xyGl0 ze9HS!l*iApapbc$gQwTQfHdKxGVn}pTqQMri@bayJZ)7#4=Y1IK!$i95~K#BKLn4e zMXwi66p*{_M>kDof#z?4yx$xY$Rxj{9Nc*p`~!+l)x$?CCzMGO>|ur=o((37;tHXt<6Esyb!&4J2K=hLX<^_;ZMNJIE7cD?0MmQ zBj93zTFJwXvI6A(mCzIOj&8e0&&;AacLx$YjyXjI?9Jl~2>z9A1EZ@-HLR3u-2(f6 zZt3wEmFrMs39HRWFg)iW2r_73%T5?htU&xnkYE1=c)_(Os8oFldDXT4mZa$ak38FY z0jhddJQY1#4MhR_>_g30*@!F6dY(D<*Ap<3+#sjpJ<@5%EXgC``sQ)?ifz(*&O@~g?68%A&2&ELnZLr`Ps zk#~L#MU7lB6G}xs@^&>vUtcNY+sM-*P@q)uuIm1yW2>37eq+dwk|*u$sOx{Gzg<_0 z3_&O1q9SHkNS-$q2ExeaC|7C&ZhpB9CV!i}o;&H8)@U*f%nm;GE{Tg1m{p zBE@jQ_fV8|6=Fg>R7xJR#?LY-h9l}AU&LoW(et*C34!&9UdeFV56Dn_`pimHVLf^F zWOzt|G4MyoyP7dlB}3fULhjtRdg~s@`@&RP=qu6st9Arf-OYLxQP%;lB23}T5Vsbw zA~l#?4@K>qfFbhVlgCw|drNG6_!Hyst&v5$?*0TXT zwZ(3rjoi7VSjj%fhun!KLj_d(pI|~2&(4sV{j(n#ibGK#Dd?(Sz)O4C3wmxNxHH=S zA+MS0Z&lUB3SWOf$?M<8bv#{92BLjBLGgUY)UkEHfv3lz3B=XYo4^Z>!4onN{YmcP zDdWOReusSYhz`aeU6=@#=vOAh-U|crL*e&75j25n;D7@K~X@oy)nA|3Epx7;Vm6>06A9? zonA!r0J)($yuMngzlJ>TKi#iXw0N2D&S4nv_n-y|mSjA?&TF)T7lue<6dxO-Dr0BK2&cqb8WG=4OH3ByV{f&w)~b*IOaq zYQS&-%(<>PH1OiT$WZ+r`hzsV`2WCzdAN-fXv>QE0eyS> zy0s&@86(r_fvL9&A??_Z>-{YQR!gXVU9WCZnkROHKcwY0k+)rlP!)N9qnjlke>;jL zA$Dm8i>u!_e6KBcv86~b;`swv3_Pk{FKNRi$LulxD|vAqT2wmQkWP>fJpzYIUsyt( zXl+xYVoO4)lOHnV6+n^japXCfP*g*QuOTn6wvsrb$LtI}aac$JsKfdNyA;bfoG3GFV7&qRB6p_J3wCOL9Do_=U@QzRP!5f8u`w1!Mz#W0pfJ0 zIu8j&>TaelFEeD3mv9FmX__0)hrIL1>Tk$h+35Y5)N@-PVsTsYp88pcaZ2=qe} zn9R^ho_ZKOgM8lwP~`s0&mvNw(LKNm?}jI;D1U-Hl2cK`$Wwehks*CKx`&4ee~>%( zx*n)@ztU}7yvW`QI`;xE^zI zXd0Q~{yI?5FxEMEI3DSUz zz^l1T+f4&g$t$u@v1Ibs$n6h2s{gI-14Rid&;*gpP(_{*gnLmT`5^ToPB%gFL+F+f z19*{jCfVjC;vl$taMty?X%UooD-0k=G2s zK$l@@Q;+=ve8|x3Sm|1&HZ{;q;E6?sBxYzQkNFwTIdXG)CJgdH9ndYMKpWML6k1P8 zXY>Mzq25=3*Xg66^(8gSU_$FjdmDGU5*h0M2l;pwXg7K5FBqWG$m3m*kEufiO!5Wf zt&F+TN8KG|LS-&8NSlot3`J2-qX}fp_mUU!9cTp&d_wL#BcpH#Ydq4{ls;qdRY*vE z3pEqNk>TJCBM{Z%p^wNLze9HwzD*qotzGRGWWOukcnx?3m(&Hbpa(7PQ%^Eyf4NtQ zY1blyo&c>c)B0-|zmYdTWcQH28}bInb}7&d@-oMXw7sr_e9J-AWcvOu24*v%>;!61 zK*OEXM;=`>=hV*ecgFuZ#fS!Btg2Lysicn)3KuM8$;A89-Sen5H*v5 zVkWt{3j>jRspsOGARl}j6_B8wwBkr__0XMsGm=Aj zq@S1B7L!ME>S`$Y^5KwAeiiD})OhQ9NbN#zHJsz?-FEWGA@=IsrhXGEd7sfx14R<6 z8QUMdCjAUFsouZ=&!yNikt`8 z&L^*2iVQN|Z6?oly!X%YKu=GpTB3 zX-0n+!!IMjDCcios8g>C$XkDehAbKwJr0KR_)1oKOAdJvzXV26zV~>@`$uU#s&%BK zw=kiZi|D0hF|o){&y6o7EHlYl`2bTx1HF5}FCo+Wdd?UGU zuP0A;Ojmn$0^~j123?xQhy!nFMbk*Qj+hAEd_6oTe3s(YPcr98PoFVE2qyw0vSyFp z1x1-$xF923)7{|l)9fSP&GF#Ld@d-Zo*wsr2M^^!2Nx6OG9l?~7pb&EA41cd{z-OK0x~3W(~=fuxMec9AMgJ%MlK?+|H1CkUBU;0 zOE6w^AM^yT1NTz@ojxYG)Z?+fq%A)rulxpWnP{b|cgRzqsA3YjtF+~3{b1KpCL$n_U| zA^~~_c`)NmPhJFbkG%6cMs_`%}j6~XN{@oku+o|xd#y?{=In)xO2PejpRj~ z93eFhoD2EFbW|)s>(_U${Y(h@&>ouO|A!2*L-3QTLT6A{HF*SQ(2Ie{bjY_k7BS45 z2VU=(({TS&ynE$m!$mRBZ!G4|?943GSeoEVa_=7~ka%uv1`LF#k5T%PRW@tM^SFtw zG}&?Tpf|W=T!Q82`B22O=M2+Qr?#AZ8oa2xzeS|Rmpubs{EPjzxs1G&Uv8uVzmV&N zP5L^0_v)j58tGo(oTWLOJl65VzKT4Nr!q-!jd&J%(w{3@5?WiR&JF ze0!cl2It9#>EyK|(Q)Hxc-vyg7ha7<3MG%p1`kmaUi2l6{RnxuHGM>N1Q{8Fmmot+ zXDE^|%OwwU9Fti}?za`rmB#qsdFaW12n8) zU2*(8J4}htW@Bxz=B`*D`t3WXPwHHS>^A8YwvWqOYZW!7)@GlOv2 z1}Mto??Q={)o+6rJdA=`W2DlP`c60F619Jhac`hil&e^v^@{6W5PbI5gDP#RuLKDx zqfw#;W{B7b9_`qTVaO)%oI@}yy=Kt6;Drkjq%P`tfZWY7wUGQ1a-ZufD3Y2jDutrf zI4F{+4t5Sh1q^pobe9Jy?#gm6~$uVL=^}kh2$l`ov@kHhpD60O(es?J$ z5BvfilGm46<&gKk&K`_eTfrli+k3%pn(HrS&bNg(e}oJr)|oeFP81mMF}NR3Vo#;# zeB{OPC}!3~lt$@h>~I(Axa{}g&6 z9MeKNR{4;SW!((U%p;vz1@7Eg<3sY$d(rkX;7s})@`-A1T78wVKwWo&myX3y-NN3{ z`3vwoA7{dv%rJ!snQL&@${?Rj?u|xpMUeNdhN5O35GXvEyh_aw(wAxdHH`V>W!$vM zCpVj&OmJ>qJ^V`;sOgRxc&X?o@~VY?7HK2@b{FJ>i|8T5r192Q;7y!EPrE*2X$=y* z|Dx?pDmqSH>DWr>?cI=XtcGE!zztu6Cv(JA>nLa(`M_VgVL_MaMFuw$LK=}F;ah~U)NC$!;x&jBiHVUbHeRc~ zwN3sN*+SOY?My!aUeMj%-&c_r^Hrpn`GGwBE)+|8(Z#<(k6%~&FA^WP(l4wQ1m zH6cSQXB3*O-!Ae1Zv7z+U-vuYy?3FYVt5yMavLfp5fJeQ~{?Eft)NP zMb0OW7y;i3uK`zYH@U>sL&IbLhN8x+kwFaqN8ZdA}*>O?N=3g)S_O8gUZxA^b`gMFaE5 zQzxM6h2(2bK|ZL9j_0!m@j#=y^K5|0erOCSP;v+8DLaH3 zOJfJCIT1R}qj)l+TkF?7Zw?b;588XoyiUjvz~e(rok3kY$ZH-(cn870vB?ke-VF3G z>8aZ~gXcPC3GeHo&PuR)-b?l_|G+uO;NpxA(=w}mS(B%zGf?#9B5x(H%Y+``<^Isq z%vnPcLwBf05N$X2cQwmFUovRzU_vyXq=hf+h75IYpb5mKZ;@B8f?+W*raR7dXfJfO%O);g)3gYLEX-3&V{;)?MRkE zyja~ebj6#wuWT%{y>vc!T2FMUX!3j2PaG}pe5+eR9;v3<=t~AH{gX(^`;4YR_QCo* z^$Jic3VsfqM>@ky@>ZT_Dh}UC9>#-3q~85{QqOCsm>3RLCnRb8IjOpVRHGJIJmjd;@kcRo4*5W#-!g?biuGSs`kC0cV zqDA9b(01~uLVK^hQoZH1JQt48i=q5&6jTz9C$^_@Z-(QfYmZL2tCWc=EMG<`7m!>HoFW^fUk$>#c z?!1X@SO3zDl=LPvx>%JXc9BLjs(MSY|A`mfD}1b{Yw|Qn3GrC%(+AOHgs*NY{)>!hYmuKLn$9i z?woJ@33&uhbCM!o9%kw3VN`K*CX{L|ih zR+5)FdevX#nGfht8F=O8VpPNEOD1%^p*SAJwooGbAS5J;H(rgLIqI&WFKNnU z*MK*vWmoz#t-pq`fxO{n_$rwExoaWc$b*5T>TTdY!?{3uoEsTJA3@uuQPBzVRxWOj zA7<2@?_?K;ubcL`5J&kXjz7FOlyt z3_O9G&xnD;gK} z<6|hO@W073`RyZC8&Fplbu5;aPv@63G?01#Qrx<0xM$(UT?KjLFf&wz;5L>?erFUE z`SH!1jBFL;`F^OGhw`1&1Z{2DdE&>%lNzlk2*UhI~k8c+Rx^uZ+ht!KF&3FKOc`w<1HmY9f6}(+u^1d)n+B zy_h_?3{K9sav8>dgF`P+&fA#+!qH$uJLFZ;p@r0r@v%FQ^G{ZJNF4&OddT0dL*dh?}EHOtL+i3LR?zO zgzQ(*?}ZoKjSQuQ;Nt4r;=!FuW1k`~r5>rk#1%_#Rk!EI?m@PaZ_ueER^K3RY(~qO zsGboriRQhiM;v)6xpNxjn0q1LFc5mYl-~^QGxXUa`buHKZ3)Pb@tA#tUq$W;gM1|A zvnE46jK74We&ytqJeDL);g9>g`A5C3+{uWOf}%@OB5wc0S|o_1royx$?IN0 zUx>1D8AiuM$mepBu^662?$0yREj@b3eVz#oW6{|}(JNC~Ajg!(Ch}OGB`Zz#(EX5a z9RXL1;l<>E_uKoz7Z3236B~*I39-RRP~<#Rc^P^2$EdN$zogDM*SD6eK?unTdg3s7 zQ?0$T-S!~lGdih-CHj&kxbPt)RE6NyVp^%{Lm_$Y!}iW|k(Y{+P-D?ElRVw=BBzSH znES)H#LDH#;Lg|gHRR@vh#~P@H{T=3 zko*s7oXQ$MLLSSNu43TonUK$Z87>tMtt1cULuv)}_&*ByQpe(gtI2)Nl^az|2$8m`9M7OpV@+P;A|u`J7%!IOCHYP z62teVLcaQZbk`6Xc%3}%P6T5jdF$spl7PePX5kc6-GfWH8!c zSPVQ!Ub`QLr9hj=n_hzfk)JphdJ_1kb-Gc>t8UeHRbP}=I>dxZZYvbal1}&^6gBq4 zgM=8kH61*_F|&Ocxe*ReNWbbn5AwFTwR$Y5XF?Ag zrK(9X7CyEB8E};NnIDzi7lIeQXE$()JcoPWNN`Qef_(1x@K7czu$sIr0V9To{1V?H zWbpF+zI2;(@;vpSOJ7;cF!njf=TAbk%iuhBF?g%vJj%bwOZZY-f_GH58UU2eWwjjw zeP62oqx-tsF|F_FCE%&+5XqAHP4eg{)JFKE=OG`>yS>E04)VNkR3?{|ne>7s?=w<& z*l!W9A;Bo-3s;jFHsruS2$uykkWX9+o_`e0R7D=}B6#+B{uaq5_ge;@ZY{l2F(@?{ z#)LezftJ1^m?4fl@fi$0(oAD>p{TYKCAy zN%;$222XK(d!J2S@D74hDt1Rcl2T`(Xu+fN>G3lt^MaP?{^%I5Dv zlf3j5@IuGg%~z}eul^f1Zx`hc`k2uEpM8+|q5v5JX2WnCGc0%&yj^{))R%bThPB`g zL!igBQVru>@|I9^W8p8n2Kjrk_*PC_{UsBUxLik~_uN8cNW2)aBJ%0vfe*ugjE0^S z7fe(?x0bC#Hg}W#wsDF)a=yP+Qpwimb;w8G0r_~=;}P;I$JV1CkXLe}k{rt4wBFLA z9x)uJ@2x_Dk;av}Qor6sFx>bAdacy2%NyX8^Ux6Dz)EuG36;mlBb#+3sqpf$MEAT2 zMfHvv>?5z@xrI`oE8l{Ax?_*3cgdr!IBOVDHja@8ss~YhSuwA}`%p0y1$Re6w3Tca zKWzYSnQ>MImGgkAx8%qH-_x6m}w%ddDBJa+-#@JSQ+l_DW;8+y59m`xt- z_$vGrd2TEWr_gZFd(h+D^Ob9{@uWe?gimWq~cg?#x0)L0CM ze+1sZ6L(yc&mi|;I@Fny8q1i_mTMm%dwmQ=Eq~f$;zjZ#Ew*aH$x+YCH6}AH@3|ZVzpYAa|aHlBv0V z!&kzEAEIa*Gqg`Yjm7YlpTIy%2BJ5NE?rOVb}XoRyb|&uj^9RpJHUgF^Q1-zq8KLl zJJvPLCJ*w#a54?QM_zCzTrCBv_!I`*!3a{5@>hHYUOfq1$)o=TR3V|Bi@7Dk-Q-@* zxs9fx`Q+vGP$ZuFioAkfz@?j=|2g!B&9c9)`RQ{X5;D%-mR=dzx)Z$oIeXh1Ux2sm z!jLRYbBH{gZ%riVMpr{V@I}N{A}g?)-0M4Lznk??iuIFS1W%%u8q|}QY(n>wk@4NH zARp?riO?G-#a@=lYh&^a;v;W8oxHW>**!wl)!%ZmiL#!H2 zH@NXdB!etZWJ|l?<*`1+5GGvk$%(UM|Z?A=-)NN=Q4-NGA7CerIrJ!TU zvu}duawxyc;(8w+$JyDFzoViYyQ}AY51wS87l@)q>nOh-o{$RsMjoDR_h{@7kZ;nH z2zC5RTP|io=mRiN%93{2gADbYD=hMz>%sjwYdL}P{m9*2>=jr--dqVDqvWmr_vBAd zl=ccr8b?L*e+G{WM$JmdFWn1njP|#P^!rTmrsW96NXk!dfPByrR4ffGXAJA>w_@3p zzP)^&eGrJqLC{ElUPm6qjr65AWbKE1^inAF($LCZz_a?Gz!l`djo@{cLEa?)0^Dar zai<~~VE$o-TF%xIj~xCLifTCTBb176H~?P6DX;QcY4C60wT<=|_=G$yOLNr-qNq<3 zGURhUn?&(w^6>p=J8A2P-yt92I34e8@~Ua@gy@O*1M-!ZoON%}L2w@vY75b((gf?t zQ`iL3*3TYe*IbQqcd%8y>bh{J!JR6Pk~LCh!*XGkFRJR;wX&3{U$P8R|Uf zBw>~r!|4AXcq4xzN)sfLw_b<>2|qv{))}`R(G$`RJxNpjEzMGaT*VQ?=_sPK*~KT2 zA$UGqCyE{=|093pS#J<=pU+!gY^9G+q!ZMLCXfc5RBgx_wgC{>w$Rb1Dg zXe0`hOhr?>gXi#Ic+qoX0C@ETG^H3`NnVU+W8dlT^nWqIkKda_(e!hnsN@IKOk6tm zJaE5@P#`hz4S7uie$Qkg**Hn=-w&Rvv|?NJzfI>uk#l$Ppg{1#FQF)%H9o1v-3!!j zP_qj*&zE3)lJfqJ-z~?;L%2Rw3hKE)>DND`5*#DoGM%7!Enj?yfd=xD%?P3t7UFuH>me_CE)4b|gWp?lk@Vw+VDRiaQJ_j1?sE|hypO0BPjv4CUg_8#eGGXl3mQv3 z8_0`&JkClCH!`96Clp8wjOz;nQQT!)_-gW`2T`DG8u&Q`@&;#fh=&GV44$wKLGANr z_n5$hV8{MW-TNU!`E1 zf(G8X1Q`sjaTG;mmx6owuxwKP+RMNb_`ykfO$&JqR}6{g#)fKn^+PIjxBXeO>*Y}7 z{7G3tp1cPIjicd4^1P>TxAc&Q41k{OSOlE}bqaaxL={^){-c;7aUe2;bH%Keyn;Nb z6oxa%KM#Yv;piQ$9j>mNZ*Z;mNUaQm+o+pOJPJB?_cu#IVf^9H7>i7MQ|+JnCAj-SqyoT@~6mMGZC&)E}`-;L;yj{ZOL%!7WG1~EMA8pua+Em8*cS6mAodn@!<(Wj%Q(v5@$J}Jmg zvY&-VVJsBGA6^IfU_Q=D$Ni2xbTFDyehZckg?x)+2F;t-2jJXP!4mUIc86u~n zq?xS2aq_AKaJ4i|I+pgP+yMEYb$og>nPH9!Qyq-O@1hB$K);gv z^FRP8&&mDmb@qB<6-fJXy zG^gfE6U-t{G;M>kv6I~7uV^Xg4YxqgsHlx-`!JU1IVKc2Hklq6jSS`~7)YZ0HpMY# z=od;jXT*Lo3OP&8K1M?2eq}Ux0+&6xsBzb=;OXj(p}ySYTRq^Vsqne9Q9HO==%sG? z`jV>LIYt#twRX^SRIyfV+M=(`it8wd;7BQLmA!Vi{b#XvsKv3_DFd1Vm{OMz-oPy1h8HFq%s*LO&P zdi@_;XB^m5_5c5i`FO`LH4IZ%hN-t2Rz{P_;vMf;Sv4A#7Vk6~R;`Tp)Y8;qSS+R% zQ=_R>OH)g$R!xSLm0_5y8m$^FR;Iq^-skg0_x^tO53R>}o!9G}*Lj_D&->nU&$*9= zBVky0GI^S9T|nm;%G+K5rjcijgolEmPV4NQf(!wE2s)|3X!4}F=(t5Fr#5*iJT}`yub5MXA8uiW_T&)-@;f^7B4PslX=?vLdxXJ!CWd7*&Y&5WlyZ z23|cCrO;VAH+e)O`l6KXaq>F0hm`JXaJ6XY6*QD&m^vK>{A}+jO3BlT;T8`KhtGg~ zrR{*^m&hY`qXJUUPH~XWxyGol3W9nn`i2R~n!_X^-4CTk5D4PvfMqc&ijI;2{8w#UH=Bci`xFf8Oc?2bq6)r|6-8^vb6TT7p_K3RFywV##84yo zwR6Bdd{P`q{uFs&PrlU`1IL+A&h_UmW?1}LmfmsqW00@lhN;q&ACl+rP(2ylu2JKRF|MSYG4*&a%@(F5 zBO#EBXQalnp9GKGis16Fprf7wPa2PLHH&=qBJhMt>p=7-d8oN{g8Yh5{jX;VGBk26 zrqnotyka)S=KvarT?~28NO18)<`VFX7vZ5O$~Tcm^Xxs*Q{+|h#=|JT7Bqp*3?->h zlsN)Cg8Z$e;Ei0ZDnZokY4EVG;3477bRR1@0OAXdD!G4zBiZo=X z?gIYP#lxz zS1FNSX&pN+kk{schtt%M3~0>cgL$#EmfZOc8c+C-Ng z9N&(M(|uOJaFA`EwE}XVfiNsl^YKc^x4eS^pp+HpmWgQt{&(H2i+iJnFh`zD}$B;xw1o|aHUIJI|%)-za#lR2D;CK-kq{uOAp{RK-hMyQ3*hSvN z6)mD?!#c`yt-SCLv%%|pj5xaQ@^6(!CX_u0!&x-&!OO_tQQL4Cm$avMJ$U*$)Hssz zM-+!|FNg#`)72?4Zv%4r--%F`qHQDhvweggk^}krOzSNro!rfbSqaqt7Wh~#b`wTS z>8@QiLQ&LqD2io@oGE{D}XPw2*nLOrCgLMA>L@nn}@92{u(4IAH`r)%hHZf!>*CDCEYrw zI7n`vSqE;0e0+b%hf~i5@^s$vBgn7IGv&QnK?V$am~hJ$C@SGbZ;~OMyq4?Tq@BmU z4te_n?Um$Z?^=hZKgkn^7(P-XyC}N(4Jb-lj?mOuph@KR_euHW;XFG@+W8grv)b@n znc7awxTIne)YQP>!CXrjVI&%NmSQI4bhD28o3|lD6<38xLH{Ig*^E{WG8CyR@=eGG z9tJN5)=rTJ@DPf8@*xGj*cPn(6Sydw33)2PC~5s&Xc~!{PTRo?r#nnZ8N4UHCDHVn z`pd}K_%({4Q{zSQvkX?)%*zDl z0P6t#6Jjgg|QC$_}G5aC!&nb)qX$!f1&G~{#$a@29U-$TYgM^kj zXo5@{$R>|dy}`J|z!Tp>-oq0TU6kKXp3QlWPCo1aNMY=wUsBpGcLc)HpV|q+s}kLuAM41siyh$DQmCUauV__e5R96JzeU+!#5&UWQ1K^*BuE-9Wa}bez|U4s|>YrvfxJ~`|_QZ z5N!=d<(w*F_xM;wG>r8lpv2QTVsjn&qtOs@7uJ%C`< zsi+qcw2(hw7(uLQGst6XQS!+pY|){^GmFqHYO=Gw+90DB)=YpRm#Ie6`YP8OJZk~C zWazSP^a>R+qneQ1FvMYIa59_sPw<${;1X#g&QaY=I3$Vkhsaa@0vCr*J`ed?bA7fv zR@AgN!M$3FYI5V!&41OW+Rez|=AKfb=!w6;^M}KMDU{z$9>VW1#DRzZhP=*`tAi;Y zbpbr!F~hEEGBJ?GgqD@o5NIUN_!l)Z=RqoKa0?U_@z5ll1}0ntPdN?G$+)_lJSY_7 zvpF0ZA#?vf$WZ&2wO3{T3!b$MO)UkDSFLHZXyx??4T<@Kt-!NhMkkT+_5yi%I>uGe zb5HAzm`}xxgn?+*pnn@Es^(!w;<}H>6L(vi>=hr#7teX>{^r^7#GWapc>{6RX9eu&)I> zI+_Dv_8J6N12f#ExM9G_wXiyQyDPvO2B8Vc$#;=wPltgb^26;RUp*W0(whc*J0PKj zkAlV3pOUBA#;HEOkoUJeDySxRe2W;8Hh!fe&0**CI+| znPGirWT;n9Rg6nF|JAfDe&8+FVR(_YU(^LWH4UDqp!^iIXVc~1blST8t9xDHU8kVo z<{I0Ao>o_Z7coG^=-1?#YLGN8@!A{ykZC~J=*dVzp`~FO+SO;Qe4{xd9M~zWOd**flw4|I}z(e za=jQ0kxoq~$s0AK|pOT(MM^40lwBhRbQX|4Do;Mm=^?Hfx6HF)`h6s?5 z$-age+Mz|ov9omWsxlZ3rQu5Q8lGENL_W0-Wb#mYS;DuLGKY1B>>4L3ZR^P07Z=XjZrwAXqEKdiX%EqSu-K)RnOAO8|Yah)~0eGm+|ZMUZe za>p8L1%})Jd2e2KM6c8!p9${H_{CI91Fjp9p=vl3iQyN?a~O=GrqxaHg9=9VfUkinN@k9&+ z(68FRjtTKxL@ox>ZeoUet-pR7$Yb~tKnfaoGvv$pc}*Y-`U80pUpJ|5%gif(n39iF zK~d|A8YD2oNh3k=@UN^v)O$F1;FFLKrThcyx~x|t`8+14^AVBG={2IfX zIAkh$ta<@!Tw&TXLt#y;|NvWQaAhY1*R`k)e4ILPHdNMjp@^v6n&l zA0|QGH5CS=KtrOygZLZ=xzy*97F97Jy=pHLBKf7e7*4zkii)_bDUXJu?glU8 z^Bs{7nhYLr7!{CP34c>wsu>gN)>`kKUr(h02YP2T4g9OPu}8k6347#A zQ{HqxsVH#7VeF3N(W}k>5dyftRO2K2{x`V_s-d?XKzI zRooXwN2+$1-2TM+Ht!5%h&gWUPOHdERwJrK(K+%Uu0|=Of!E_`nBRj)8@GP|+{x*Y z^s;DjZwvQ1mxL2cC|8dsjVq7_YGy)_zxp8CxDv?Udl0;tAFk-+iSgh?GjU5uB0ox= z+TE;}_tGPs=!cM@Y5;;OiWy!d5BUfqu=I`+@;rXVEb{GUK~H@&%X~v{1ff5}LA%d{hGTWIoNEaKv>_ zFrk8*%N8-izvNkY=pAX~hvu?CBf&l7SIz_XZ$Y=v$!{YM=2rHqpy+@79z_NRr=n;Z z^_xEtJkbM1()L@)bGRF*xVr6p$fu>FKw@}2dBIR?6Z|>fiwv&baCIq5I&lGb9G@3P zlRvo-+`ix27v#}gz$u2mOoDuVKAJ#c<@jUZ*?WW0G`RLRiV{j*LSAHkOnCWyO5rn*Pxu7#(Uk9-2A)<8ZZv_} z|6-UB=*3Mam>CMmV}_zT#gXqO58yj9DbQ*1%EM?H@#qiF!f@q#FdR!gotAZ6H}nm) z6He?h2!yFK>WoXGc>Z(X`QhldqVOnrRv|nkvEfdKe91ZR0vg&y9${D2SVdT_@XcvSe$bfp;+BkS2SHyyzG3 zbQ+kD3;8gvb=AoqCiiBnflEcvAtqEOS_hKg*Py73_i>S5MecJJdgPvPiaf@)eaWm% z(BpT)>}6h!&v&$Um{5}g!{XAi&8#thyGae4dEkM%b#i(ydHmCGwe*5N$Rm8g(Zs6% zJ-LM?+KPl^x=4E+JnI+=B%6q>Cy#ys@@~qvdjs;doFj^d=8|ilAckC&?~t$LjY()# zs&y#6+elEn#)}{lMJLD;b1@`~Cp=prAGyt8s*b0DR@=ZsA~CdAlW$R6-Yu<5|FUC8 z@0$>e^@U(E>}sXt>c^s)6)w}X{soZF<;rd0L$-ql+L|!&E$~z>VHSDk+u+_PFARjU zgyl>~<2P~Qfx(5ykiwad#K`mH3D+YQ;;5&G>LrFJv$!{y#6mWCZlu|?UagiH+P{ko zCBrdC69fCm>r_-5S0&}Uz6be?C6JebP9@LDM^n{O{vUFUPXhx?u7Yq@5fp`Rn=}_Q z6bWxcjEL*X-iN&XS97-=;Jz%7)c7EIia(k-lKR(upyd6PiwgKQTxUYdy3uc|XH>Dp z&=;`N+CoEif`@%*9q7`@v-v_TlCyePqDHFo@(m`Tu_-9a* zS%;>Pg8oKc`ipg#IQKc^;}-iEsxQrZ63W19#v#O{6ZZas(}QGwn;{ zZhl1-9knjz*BjrczYJf6@(2hiLeO6DD7BE&xbn<@HLdeLaQia(N62&UfiIFNf0W#B z6}a^G?)yzW>Vu={XjLg%mr59D*=CJ<{Tp!mLCYR;`*DLKzJI;Jld>EolC}vy zL`A*8rN#pfgEwt=m<0(n|JAfPW;ubWjAZv zk2nfm^E^h349XXhSM#8i3i3(EAYa98iZaQ^9S4u)R^Gblf0fw27758iarcR4hHuDA z|3Z*R&7L{|`3gSA52pM^@?y0^q;ZM->>nUs#}^KTlppFniG-Y9=w`7@I7A+@3v;V{s?YA-REU;PaY~DW9NQyZ@F3kX|rJptIrsWOERn_Pq!Tp{2jT*MZ;1v z=PA{{&7p0v`pX#F(!WI1NYT!aySX$f&a|g#7f(Yzq1x*6x?jL^ZJ)J7H-Kj>x9Wcj zTpersGNK@!28R8L48Gj>REpgGH}Jw6p(vN~)5(+gpiW$}le}&#RRczpJ}sIg5inc)c`sT>?aRC3`N4r8X<507Cq+-c(Cn;c#gdMzn_*HUHi?mRKyy{ z2-E8i@aS=HbpxZRn7pwqfE_Rc@4NG*al zu0Zo&O&fd;Jn9R0NaVB0OL?NR$e$&T?*=_0?>rAZiT!zQUNQ|FVnU>vU>lc{d|)#& zINM?D6uyHziQh%%QNG(>kk>*GTWRDg$(zzqpdh|J({BG88PZN-Fqa_8CC}n+96A-< zZ~^l1LFl+;4_!rr}Bd zLf*-(t|TV9YMsoW_Eq0e7*`bK|0VZka_p7SWPgwU6?tj` z3`+%WQ?Kuh0wr1wvsL|X@c)qDaHHEu%{G#I_^83j0_|!C`Pdt*HS6X8k5ZF1H8IIbt;gE%ruQ*I+q(a6$n!e+<_>FDxV_{R-e%rmlWZd-jGi_ zkGc!L`D*Y2+tCw~z||Xh?w+4P1D`X4AMY;G*d4BcqMR`p%*9v7$s4$tbRqSu)*&C7 zf~ren_v!l2ZpLp8mJ=A<62OWzjh$xedl5TkS1G6 zp52|l*5asW$#uw3#vNCrq?y-)J7`#^{8T5nGaRm#SlLA0%-uM}bGHtHe8VU3XsrBN z+slN^JCKk{1Lw%I$6I=|R(}H&#qnznarL$v!F~5bK8AX34gpW@3jI3yPA?O3`yzw5 z?zX|m5LJr|>CBKj1l(t__5SNOl!p7DjU^bJgjYdcx@Y0Oeeo`7LKCp+*LEZM>g~N?=&# zqitfr8@M@P5Gt-Yr-8?Cx+VqMqPRKfNvVPX-Bho3Dw>WA`8*3i_;PapG(;sIVrZjg zs42AiA}7ptvc?^X8>4rOZE;SAIPlW0{K!cLxrdlg`#NeS!BQ?6_}g6Mn;+<;J_YKm zdG7Qxi(bwOd^-~c99uA!NsXHo=fNwKTyw0||GZrvgt*4vmlATF;=%oAp?g-sO_Mc$x{Gv2dMaI7aS1h8koV8PwHbE))gu`xD)yYNr75 zaNF(k<#~`#wA~yU6*v1p@LN{HeIG@JaPDU(9-5X2UcyDiQqXtFbNL%Cm<1X!AM%;s zVR({JWj?ujuWQu*@+9vx6EZlgh=JP|KvA^q2k%mH_jq4ZkBp;5RH)IeeN28(hpE4e{$Iphyrc*V9tW@F zt6daCy#^J26x|_;8n-?H`Eoa^C_ykN8N5zyt6*Fyl-~>P)%4q}L-Wulks zP&khe3nBMD1^JSHtiSTI$%`B)dNSoh7OC4R|5lqc9B$R#>s82nd}v!!{$vVxmF)!G zYZik$c(k9y(F*dqk8t13pqc$kAm4BSK9g`s!*ou)0_GDN7c+dod0yeWhzrSZfIRzV zG_y|m`%+;bhGR%P`5E#Mj!1E`E+Y>N%@{h0j91PRHOSQS#j~ z@JucRm(eujIq-VhM73Qy$Cf(VBGhv#!H9`i9{=DrN~*36%fVCBHYLU-ZGVOd$8zJw<4}nEK=oRqFLNvRRC7Avyc)E^$hwvs%i4ZQxhk@)_Ff9D|R`7zWP?Z)o#=dRfF}!mnLyZ>pCU`0LUY97#BX`FdK2(jD z%M1sY5ZnVjPrB;!1yEG91&vxo`Oxj)&0Ek&I{7o?E&gaE@%dNektP2L4rO2Sc^iuI zcx#NNq8^3hwvV9QDS+xKSk-9lF^M z9Z_m9`aN*_TH$Tvj)l-8@>7c-pM0xz8ujq|xUmFY;NetGcuM<9B^ZV?&Lcw%Yj)QT zaL=CzZwaD@$aN>=ODSJP9#IVsiG0!r(BpJ~Uph_VI1}7_jP0VLf5^-DKt)_Ss~C#h zd|DvEb%s3U2GmGK@5gpRKIvzNsaXoN+slO5(Fi&Z4S)V2GDN+D?j!~}eFU!CJ}}uu zo-qPV5Jx>BC6M<&XAQ;;T>h zPs7>d(cG_7DzJ~-HP$TXdL={d7s#NWL$s$e!@XaEmvcy#A$BKu%Stq5IOWs6f_&AT4wLBQ zKa=~bA6jN~Oi9YMmgj3wGim?4#iuS$l1y--xp z*Lq)kklcP4^C|Mix#)J{%8~n^CwPugBNa3<#4Th(cn^fX7~V~uuo*Q@QrV0vbUzdY za#sWK?LFkF2mc$L>OpNKrd2JDYmmXb$#(KO|3%BXL7)9??6fk+zIqY{jm2zvpZkT7pL0G`E>%tQIMRp5c# z5lB3AH+c#_D3jpaMV|K-*Mr4TQ5_S?ZG-(w-@!o2E)>0v^7{ASk?$hfg2>(Efj1$j z!^ndVLO$=J+)N%p%3dZ^KZ735%zF-bqolL`59G3nz zMg3*?Hts(7R-*6PBjDj-sG^L4G2~5L)SFI?+iDj7U{h0auqo%x9i@U{P zipDd;;A2o!yAXyw1jkA= zo=!#X6Ug9a+c;|_c`Oe#68XtLKtAOMR6uwoc`kn(o88Jt+;kEdYGbXQ7*!{YG)ets zG?M>WnOvxB>dGOHRaB{v&p?$ z8DH**fr&`af-9g%h6w+9DDvaR^b+X)r@(!y5oIEuK^~96Y}n7P*Axq<&oE9awc6*!w;N8hUgj? zNFzT?ZXauwpND)(w$YZF7H9seX+`8gST=F#zSpH0@}>O3DcF4Yr!ploAuATWK-&I> zzmTCR9aYVyft}<@J7HLQ!NR{G@0o!L$SD2L1@P=rYYctjWkT9AD3bSONiE0_eh>xH zX?Vs(@B)6jB?ayD59K#nE3l5db}wQ}b3-^DWSt?^<>ChWSG(%(mWb zK6xEC5s^_Qt}Ep0x?wbtcG^c?(;uT%0IfaS4f1YI#6*5#_s;5zyRK@X{8{YLB?i(| zf)RmXoDfA)QM&-}N-n0(AaC0P+>gf%#gHE)kGH-1?a~YK4s-3Y>Vs0El}spdqc4ho z%gLh`p~h|+s1AgprlHn5%m=-}Yi*ynesnc>D$hnW?Hc#s?$;o}(-rsH81!N73G#qg z0O{;I$;%G;m_?Bagy_&y*MNW$kDek=83QhR1sv(qnfG9Rf}^u$gRX_5ShX|1afu?| zzThFYd+n>_4z3)QCTJZ5c{iUw>!vnM>qVZufiHl>KnfGeK6aR*9%k51o_IZ)ri}dK zelVc%!*L1m=lX+(aiNBI?kn>2@d#2~?!n6jAVWE$R0>oO4DQLay1L&$@D}b`bSc`& z^Z6h`XF-Qu2l?oMFf0$`Pk5P7$G0icmi?|rhGOo(DFw_X7g@@e9K@2uN3G*@?zT>wDTd5 zFM8Olz`RSrb?aax=xfl%qG%<#3Kp}7;)zD`NbYPW1v)kadhE{;?ii|uJ@ebZH1(G; z!c;7PB^h8V$%E99B*x{>emFi9^4afMhrBCp0=@r1>D&YKGezYB9G)gsxpY~C9hqN4&b5u9pR=Pua^Cm zwT}0Vgn_sz4pTIl8P1Z&^6^nA`Gi{`U#pJFFfQ?x&nV+=r}k0JzN*XllBc{6UrB3!MegEuy%M+&yI9b1Xl&_8 zf0C!UjEbp7lE&yc9vO-|qNL*VkO|;9d2p`OEP=dYgO6FnA{O)~a(`~8nM8i08+u}S zBQo_E_v*))5O*J1M+#I(9<^2OEYQ^BPAH1xjs{Y*J>)fPGSTz(M92r9MnOwipy88v zulC_85uFL=RDu!5e#=oHE?w6aM}grNW}n>^7QCVWu8}5qLvf5GyC@N}7C95B@f3MnAM4$G;529qv3(+Et$>Hbho6!s#-owM@OuwJKDiU*%@ITCdOjXJzA61cm#?9zd=Wg zq9;7$4%>MmEyBxC&~nPZmjFFwZg?)1+&R}6F#dZP%c^f0qp(rm@&Ry=wD7!n;K^+; zfCV#WrsC*5Cn=HLj5dv<#PCOvv&eR+#SZfDSqN6qSda+$0DiwAC3tQ=xH|(kfn4gp zV}Z%l8{pPZBp%E~f|hMN*!l26C`#LfrW3=SBpT+PDtRSkEk#TqMCnNm8>V zPl6{`ILx91u|T!tnY+-aiBiy~ARo!2Wo67=Nglx6Wilx5yNJCf=^@NK;+RmO5{zhS z2(k8(M^nHH`N}$m@&gxx=l_BNm6G>b0-ib=u~kdn!wVk$sO&q%go{k@EJJV5$vvsa z5XUF-;?noXOMgdjiRZR1g?#orR7?t*_%!))6f{ci!?{ezP`khwmjvSx@{pg<1Su@g z)z3gtaxQA7lg}p)HYa(P--$e*2KjuR$|3T1d!I!@F+cy6nr$VIvYpxPTn72F2XRxA zA$t>fSTBq_VxW?|+_ph)mvrdy*4U1O{gVj}{`L@;&RvcSVO&5V9{Py9c_lm)PEU+{ z9`eS+QR7M`UrwGMW6FCk{bv4`34yDvL)e`!KvAh}L%l8;;F$-|_Tsr{^6WDhR|07G zE%FF1>W94Qf2WyHHVUqbWQOZsgn{w^1d(`R40+~#sIeG+gWUet@eAS2Br00+5;9~* zS??!9*Mc`qwcf$~)`7cD!TX``k>)0ExYyb$?~=D%Y3NbSEu&?-Y$%H0?kd47P!f5? zlNckMP5IvI!ArQWvsqzdxPP7r_9KYj=(P$a86T3e#vu~(4Q;YA;;WD&w&1+V1e zWKp@2ygCDQ*C{_N7xFd3(5S*wz}0~$wgU~mVuspmYZQF{8WcsSqj-(Wyl1Na9^7P1 zgF0$1b%v#JMVS9;+9}12JC}XO=G4vLndYlu)e6$81xzUBR#xJP7V&iq9B6_4sJyw;kT2#v=918Iy|er@CFRTCRj(KgnaP8 zOf;p=f*vO?Hn-Qjd`G)_D{uP#wqJNtRD$8Untd=JuAaFK+&vm$DQ*8Ec``Rr3#H*f zZ+6!F)E9~&T6Yrs=N82c{k4_0AKz=45HK566$70LkfCq^I-E4k2E~m7QIgMCU$%Th z`7|CqC>8i_JM{Qo+GoY^zq($33kj)xFl6W^)wE7;gE!hfMcPJQ9fpBCneuH4A)mnS zcclW0$b$#LqjF>U(#wRBPf_D=Dq8yv6eZtp?KT771?Q^COEcC(_HZuGZ$k%WuInlF}JS!9fkq;`a1(rfSldEr3459y(Fu~IeZ6i0E6`vwQWf|H& zo388h8F)~mk4eOH3&_)lLyz!%X zkkoiDd0+|(B)sDn&=X+WX!RxXLT@#Ea(U15uEy}wluHEuOT1)Ipn3F zKaiJi0uO<>R~xkl8Jx$h8M;+~=kjX{QM8J@@d4|4pwPXLkFK{i%^Tzq9&7NnDBed? z?O#2`&n(Melt>%A4~iQ23|S{1M;`wI3M%W0E|S-Mf~J(0phxyYPdXnwiRb23f+wwV zApT`cUeAQkPhh}F!+GBzL*f>zhi?5Ayx9kypi8wR@}yX_u^9Fqfc$?q5j6W>DHF;^ zquWS^HdV+_ln&RodS6Be&AKLFnkRgnV*4!-VjvDZmJ*cr5 z_8tWfYQ|KonnP>>c|uPBoqGNtk5*gm7*`m%cik~4isD;iF;GFC^&VT9;=C3!YLB~2M3i<{v6$2IIj=}Jp zjEq4)LcWMg!OW4@X#anh;Cjj$)f0b0hUUI-oz8+DCvW1<%oK9x&#W1rI7xxJ)q^*+ zvg%1v++3_$VS8>8a0(gHo`okoG%%Vx=PE>dDEYnQNgW}NKBB&qCU3k8o{$3horZo- zAMU~+iWV~=h69B(P3SMkVBgMW6?qdEX-m^ollxs`9Y1iVXT%w6V?_clr%Has+BDchS4ZL%0J+F6ASChkWv2G;sjzYn{A}NQmI4JYsk* zxy#%n@ba(Sp=ThU{Rj$LKm#e{DWg%KSn|!}u6#6s^s@A`(Bm!RNorDqf0*EW+uFYu z{ecWVo6x$_{k|p-sbj0NW|NvA@A%t#6Uz7#+>I&P<%fP(oI^q)H|mjr$W2}nh5}`> zX77_1*~a!;&O=XlItrvy{t@yltdiBhRsY+?gh-ySCQWcfGZgv#VvUJ~Y$`*=V@{W1*MJ4$Rl`a zx-?C<7U(Iy75b%@%_C1!zZcB=k7QVL5gDAEtx8Oc`3F2~g0ES2DbVfzl5^cz2y0fX ze)Su_??ZSOl^Ss1$nSIz%A zAw%+5xLVc+9U}L=2_uTQTJH?`44&2-XR6b*Yy7}t`SdG|{AqISC_E<>{?X)WM~epT zc`a==uL~6Ew$H-WlNWTc*35Aw*gYcekN8IG~ zSA!SLMiWTW^t}c={1&u*D&^0S*KuP?vjRp8B@<4O1o_^6ou8pfb^y)@)o`* z)@iteJo~KNYs`C~rVSVfMS)!FCP6fVyy|l_f%J|YE4{aNx7a*dw_N)vqJ zWkS^VaCHPr+WmSc3jM;`mIIyO0sI6&g7M}-;DrkibW-EJhL*!X_issdFXdrkn6jj<@ z!6cAJwZId#l%F>Q@)@?pMj=DN19)1A#85tY!2{5P;8pD(8Hx-=Z=m~C(!eV6NUq0_ zHv8XAkZ(wWtA#HiZ@B`ol21LS$*XM7lE1xK=`rVkw&O}lhrvKPznqlb(L0QM2x<^W z0~g2(7}e6vb_|Dn_}voi$Z+Eb@WwSf6kDgF?zbSJa0A*tkvuw_8D2-tLdf4FFY|{1 zDQLz>$d_|&m`VB2TfsBAeprow=zotf!9Nu@8wt9P$cx{%x_ZkfD9Yz67%5Ov1bD?u zKBh^XhU>`F`SaUJ{`F|i0sUUV03sV*{5=|q%9>#~ni>AR4P5^n9+D=g8v~y7BPxL4 z(zHF1;BkC&5==cmlE->GK~WeJ9=;tJ>TD~x9v=&yZaXxyh1_=`^hiNJ7zg=!{z8hN zet#Eu+5M=nS6mT&2NDwb>6VnV$9V9t$Iv?@+V3N;SZ{5bKgo42lhkSW^9j(CbsSCO zhB~iyz>S2Kffy*HEpzV#Pv%P`;h&K^*1@nCh@1#{`-1Lo$+NgxQ9S+bBtu@!0pqx* zh}8J)C@8AB0yiP~1atCT;6XF-*e#SbyZ&zQ_%u{N42&hO@jMPVT%1Ji~VCftx&d4BFmkdb9ui#sr^HaA^h= zT~tTM8NcP~xM7V1*Q57=*X+YUB!(LlH{OCJslzAD3l-P8$3Q-1IP}Xnu^`3|&wyjk zL6NxV05eoAL=#B2+^rth8}EF>{=hq5QRF)n20XzqP{<1Ox*xnYRJmGR(qw1ID^Gag zigace5sM57?U5mmy#F-tB-_ff$H$44FS>!&Z3Yrj zH=_m;jLXT3;}BdWG|(ZAin!&m8cNOUMe?R{>zKd(0mwHjvyQOd6HJJ%f?=JC`p-m$ zitoT>q&rQXH5{IkCX0Cx^2uCzCcR)Td0;R+nnwMT;!XLnS{i>I7cpV_Lr_#>JCv*I zEO5_67?!4~`=dSAu=>x2MDQRuHG&$)l1FiyN}YU&2lA1BSbe_mVes1PtuCn{&%7T4 zz@-w*F@IaFInb($_ni9M=rSpN(FLS$Pkscv{3rNd%FrVLJjr%!)jQ;Vd#v*3$WvcJ z`-+~2=9+rETJ5XW(WdV_7|3Q{mG;_9UTE8CsgXQwt<@=yKMFnh+(A>~;h^G|S0bAm zu+~#Fss&|~Se}{)73F-kmB@DJJs&)Q8#LpoMKfKanaPBQKm{ zt>SFO2am|Lkvl7!vMps1KN76bjB1NZR$7r=rZ zB)4y0voRg=!RmY|SOxjI<%nll4sn6Jgg=jT>Yu%u1$xHNqrxPH2{)}lLR1Y5h~ce@8xz2&CQJbR zDE|fJqrZhG+~nV6K~E(2E6*j5dkNeT@t+Q3j3r~%BEgpr1Ej;0lUM6-ofN3+I>^^^ zk+$^68^~RJxgZ7VnGN~c-e^kc7xyY|zK_j3iD6hK4tKna48^u%;CieFFY5{qNr&mS z0X&1lwiGm%yqKqsh$ljFARjlRjZy#0J++w$4L_i3mzt@X_TWZjXucjnDhB$!0`4~$ z-9&om({v-Y^^1w;fCb&qRz{LSlphdaRlXJph7Cn>| zC?*f(Q4fXW9`9?&kh;SfbZ5xpZD%n}*#vp#aTt&(Q7U;YxBZje@jH3=D`?_08V=YD zJ>H7`7%`+olbPVd8{wSwVDD%wR}&+lMF{_QQ0ujO8j(ljmPW%y`X?Wjma zx4w=HH51W~qsbSN7uhD6UEhFwga*$^R4*jAzeYVuUe)2h!K>o$a6S}inJ}D0!+p1c zhuGdI$87^o`xl;&ZuTR2Se=ilL2CT&n~<*_^`CyPBz6@jZaj;tdIZ5GH8^P`C|C}JYJJ3`47H*&cd={X^GQky(U=#zdlegG5qdh@h-yViN zG%)&I7^t3#qKM(o$@BJDfAbH2PtBSPSNrlrvV1Cf`aSRfZa$+*YF^hBf!F+lAd;cC zh`drAPi*M&J;?+=PKKlxbl-stVO$>NPeqOoz{_~k zl7i-uhw>f~O8L*oV?V}t;1xyr#ZXkh2Q^ZI8+L*h-(j7&K2M%A5H-uDfrmbXd_*{! zK=gO`2;6gN&lods}g=JL59%3ts~d#e_g3g1L~nAx56TSorc3dhJ5LC z^rjf{LA$_%d6c5W)@YNfXK}%Ap`kgx65*?ksFy+!cSFAH5sV~Kfkwsg0aB~4 zAz^>d?;^MFs=iJ*S2Rfv%iRM#L5ENk2@^*Jcs0K^i(-jy+-q|6yNDkk1u;S2M@20d z3Npwe_Jh0lP)g)~A}_L?3;Ss$eJU0^_`xXgRyU<7yH46`b zXHBry>}zuS#`ZT?LEbYE70{_agFJpZh7Pl17!$sA-yuWr85rKu_L{ z@K8Q0Hm(M|I9j>`>}xxjP{nWNJSD+I8W}x?m_)8?PPkxkI0Z# zjbM=iJ*YT_s!fzg=LWvganpZ7&irX8viNGm&*1il(Fx?K-=U+&v5EugA+P;~DvF)~ zr%bLk6?_)H%43G-kf7yqm8djEF?msYRK-d8L#JV&tPnhfyzMXG=_3%95@i#}1D6>i zh6+{j$vP$k+=dLnRP+zI-$o2E;-LY*(g3%u<(oh4IC&fw?uedUzd^nw2OcsjW|X;6 zC7?0Fe}_nJ6ii9ov&nO=vkp!#H9|fF>Z^ZJ1!za>_2#85e5 z!J}_OjYa-@a@QinP$>0(>~4b$IiDbd3^B)iz!P6Vn@NVN+k!WI0YzfqS;f(z*HI#f zuPw#tZT^RxwWA%TahXT$A@_R&zwt!l1(E0ASI#15wu7GLo(P&;^5G7Xdo}xRPjyJp zO4!lGz@#gn$T1dGl!Eqd51zmce?)!+xzF1O0tw?N#jUT+ZkkEaG%jk9o7@#0sQP<{ zS!$WcJfXPhy|ydmFYh+WR#zetDEfoE;$0Y)&^gc@ zhHJXONjmj3kSB8QGZ~tm3xIsJIb^9}P85C51Q%C+ilR|Hkiq8@)WAan^T}iR>P_y4 z-;-za;4nAkTlIvV93K8|a#L9^B!ou8m%+^N0(lH?xN+o(fvkaTVYjC@cz#!SD4p^* zUoDNjO#NjvQXVI_Iwi`<3;D!es^W7Ea9I0KHF=nAF~qQ7$VWbDog!=`58nX~C2{CDskr%DRO7E>F+6M_6!{N@ zq70*?>Kc0;xRcv2Nlfe^_nivOp%B+@zaH{MwlgozlgBl1|F|M%nD0b}%9~->Nxpgz zcogq@5_G%B>-$^Z5Z05s#vq2IVz=J_Jx%Y*VB8lL3Ym~&d&zP}aono=-H5EkN6{F; zEZRflDf|H=yk7|9GrHi8>7aZJd5!I9X%l(CQdA|0@}CSg^{7FyJHk)GY}^nS2sv!M zhix1Ro;?!s(n$HC;IRiW6iC=_zX@Fb9E}%6!#|O`%>{}oP9^RS-i!>5D-lis%+O{S zxP!}OBgmVC^HGaV9u!7-9!?>R^dWg_0t#euqn}(c92ugEksyYDC-(#*YQ(_(BPh>R zYGU96@)XKtYGk;t!X3O zNNBtfjVmslNgg~8Q7xX>PF`g@$gba=&{N4DCE}q)6IE|Aw{_pB{xYH_rV+jhWRZO) zfxB$qy+27Fa2DM`Tyl&&bSE0MmU^C!f}Y}EP(__Q?kgpA32T4c6dTLf%jSE>+(_UTJ>7tHwG>_>l>De9IV01HVVZK-dKgRl>vW z0goSvf(n11yy*+bi$_P_OZnZ9FE#WVW9`RGDCf3RF-C&AO7263`uT9RZcEY&+IwfMrV+NvVvI@J+G|0QVTZ3R3c@ejPFQuL{82j97Bde;mJTy#1`H%|NRdW*kGzt{kBXuxagcB7f#{3Cf3#ZiQrrA6=>f=N ze__?iQsWsjkr2BYVIRdBbbAoI{){zh=8?O0z(Z1?YvLhqKjZ9O@+fW_mt^QSqRjUp zWJuykTA^Zi7PynYx1}G(lUI*M|B0o18oArt=J4`XAE#zRPo`}iIK{&|dT;`6e4^-I zm0(0!$Y9hggf9L5VepI?G?|NrzncSYU;cfXJi493l$2$1G&5lz6GDHp z_O6kMP*nXOJny0WM)KTaFrbtB&4;`n_kR>m+(VwuFY?TS8Zo$r3CXPy3i(vjeE}4e za&5GDXe)Ubw;2}$&o6|0Wnb%Wj;oWv?Qay56gOv;j;_ccuDietRjm<&E*7Z%F(?X2 zg?t8izbC+R7r}FG@*&CKp@ZN#xhwX65@Z6qt@zt>ro2~+-i^vihHuiLsM=iFetAdmo0fy8FR{ws{5*Kgt7!HHR(3vlv28*b z`~u`-%-fOba#Er~CZurcEBC=V^2|mU7Wq#zpeXep)J%HhFXW9Lj@BGR>t2L>;eS^( z7+v0HB@&8mg(5NhBYALJ@C?@MnpKcbn2#nC!>7n|_CY>|@}I3{L8qVsB0p>myL|X{ z)*1w7A%mk18Kh|jy~Ki+q37u|Fo(Q(F!ThGpC`}v$Ank(Y+FnH{TxR9FSqfkbx6qH z21V6WR7YNIdrS0kHsp2g6rMo&D)K1XXCG}|#{J5fhWnMP73^yds08E2m+6Cqa4K3# zp0XL9kU{G_xrZwlrDn(0Lr>8TGzVs4Ge@aq3Bg4_!J;|rN%Af)$8F2DNtiB zQ6O>k z-+7St(b(_!AO9`jF3ZRNs{K7oXsCgt)NC7hR!8t;7PQ;zP*lfRoEY9n9`ZWm#S_=Q z0eSl|e?#&WH&(mmaK9xnJl#l8Jp5`jK`af=*eVdMKkk6x@Q{<)b7`P%a z?N(oe7C@2xEQ8<3b2nMrxMDlxT?isg3cBkp7HBLyCmw43Hn?Vcl$P-}Z_$whFrrBl z>|lnFo$y2nYoHZEQKIb&wJYDDVZLmVZW%*vKin?lUC8HoIja(vUiTgnDkh;VgK2m! zdEgefS_-;`yetthA^Zz+mu&~z&?4wh>H`mXYiOX=`$&klZTfeDJna@3knR_<1M==_ zD3T^vL~h>{VEhM=FZvTBEako0R3_vefue90=za3w-UuQw(4iQL3V869c&O)2@Sw+_ zN22{X@?!4aB6^ORT&;G^`Wr44!?%A3MUhSzj$wg{$y*w%-LH;3g(rQ8fk!@qo+cjZ zAO$Tb0k6(d`i=XKWVrET8n!LeT0>sKyPPO0ClBFNOxphaUCSS%+0d++D- zrF;L+>-FXP|J?EZ#@44s5Kos*m_Pyzo-30k7Ku z{fRo)+kXfX(*H3JrD^0&%Sor7{|rUJlg&-gqYB*4hb2;hM)D@hII(oE-177L9O(tE z_p_v{QJ`?vU?_PgH*ymLGs&&TR+W=GuEn?_@&l@&KWTI85r%3>Sj2>KZrI?V;bRAo z!FoJM^g+3eU9SD5&zT~5=a9gh0}p`*aTk9(c}xv>26t|d608xv7mXz0`ZswIH&Bo$ zJNb*DM_V`Wsm)L=QPBP{45TlD52I-K0dfyl)QREkpZ$ zqJ@z((j&FVP`?L?R2shj2o=Se2l?lZf){dgd?)2El1CoI2;(51cntCZ@4-VkI@iOv zM;#JUHX%V=eLs0UKPr|QpCM1}XTCce`y2E`A4h)^`66cic7lQt;F=4rY{#8rSuwZQvmq(q@T& zAR&S~ElSh8Pi}pbKkg*tlPp)AVLle9H#{ny$RMviE={caU;8yNq5Mg6hns&2imcb! z$)~{!c*I|=p+(z_>re1}9!w;LTQ-1)1;7Pz{oU+lf_2qg++WBLosJqvhV|rWpZFUl zLumMoGmwwE5iy~XpC(Vg)jX!oISctmZ8Oc?!^Z@dWnaT7jjX|VOhYqi;C=FR)>zv9 zvA<=6S*-n~x3=?I(*#!ehP=VD=bPgkwkGKEMMHd33Hv_@RH1ka!*m5>1OQ zgEt&9j~F}21Ngb8sw>idq1sCey(zP~tBy25J$X3y7m^_8-=ZU)jfY)E7{@`6GDSlwt$+P}J+pFZZmXLRDgdPX^5b`3+g!=kc9Zm0NhHC$<+Y8`21u6Ie;g-c{ z|M)?^vI;TllybBN4|ZduOCt|#172!5*Lfkhc3{{TG`Y$QzcND+H_nl(U;H&tl)(k= zF_a%=15f)EjuFF`$-R3KV{&=*T?=`|*vEL-)hC7H+9JVb`E2fOa_>PHkQmHtr+LzN z&-$+Rm*K;Uh{kdjt)D-*AHRkUCO<+R`Vcfa$+uqzd4IkE7E8|S!6P3uxA6jSw^CG( z=vAp`c6(%KY(n(PSlC3K#2JJb2nm3EGYtrTi9CkyIV5@??Ev|PhxBfy^`j^n?%R=y zCfW>=N?u4FJ`4R)3>+kHYJmy}AJhqY3V6`6RA3=_=oYz5!M<{RAToq}4wp(v%gHO# z5ta!oPy=~brunLHv@`US@s)rSXlWPl@J8sD3Qz3He(b*yC6XG~XbE~uL|Yaf%?Sec za^B#ng^Kp{hP;cL(uN@C|Af#f0HEAwwfS1d$qFA`i6e0Y57Q^6}lF$3;CCHExVB{oCCP zi6-v!D~)l0JfBOYROTG@&eU1j_C)X8f^5DApg5Pw`^Y1?0hhS4T_4DY4~8ej%vAE^ z6Yyj>^(+sCeDMN|Gb;IcaP6xBZTAEHC$8+@SH{eDw7>NJ;pvXJRt-7rq~n|j^_UiLC#B9;|C z9?S$AcL-OR5E3CBbg=f9uCnNBs1%>9Cr`KAj65FZJaRYd*dN1l8F|lpIw~EM_Dc9) zxYb4PQk2^@uIrDnY>>DG+^xjXCn^=yGK16N+|PzVQPc})JaKxa6FfQ^1rpzG7!IEK zHRNTGdtd~3VznN9S_cusHB6{%h9U{G_4gt}bG_N{x8yY(NkmV#NXSQYhn{3sESfx{ z6Z%z@&h-xZ850Wl=0?>Mv|l56NMB?K0aijs!a)86aPhEE1QXuT67)9nD={06a)JBGp~$F#mS^x7a1ZyLmVz!O550gPOr`#wV<8{z zm05 zlwWVSXyEyYkWZO|g4$6o<+g{w^Phxa3C5NWg9m?YaJLdqMUODSpC1VcUqxPgBV3(H z`Ge#kIhfkV(eNX&Fc8Qu&Q!{mkVo%Dw?xIX{@2I^>q_AGNl=tC7#RwvsFJ*zYpuk< zoJSyEdJ&g3=}pRH@Ca_%EuKiwx&9VE_Z(a#iVB&bGyq)M^7}X{`Uq7O-r-U3Jg(pn z16#-gEPIaM^BClvOL>Nm7@o(36fRd6MSI8#d3h23$`mMy9gDV?0v#dOH>lTtqJKv` zvZd6sXI?tB6~qS@?;r^t(6GCwamO760}P8gNo zhN4Kz=TaLJ!0S%gjDpC;CLu%C z{pO(S^elM5M)TZg6S?a{M7xKE4?G9?w3#T7#7f|F@SKMrPwrMeWkR`Sp8H%fGFUgF zkC*{o&-+7Zf)sM=hP`XZ6E~p(;<Epdr^k72KQ|`kkURfH z&14M!dKTn!xsRFj`*kVW982%s>oI;*QU7+0>-sD8M{#=m%fg6PpGSh%@+HnL@+7|H z6PMmI8}fCQg}RY1fYo11Xj# zb6Mn>ub@DQly4+YxEnDMhVf5PZg?4r!Y3euxabw~q9AkAxaUJY`?9%a{T6`7wXhi` z#dE)t`^CesaCc$`GB~--lFE{1kw^PMksd7iZ}lsXPg#f{l3sIxyq0GW6hU0M`8CK_ z97RD@@|ED)gW)I5H8{@<<)_g!679EUqC181Z~`e%q{j8`)Hn|pA!$l=A-Fo*+>OtZ z*BDDpH2>$ZM6s_UL-9BiNSa{y8{pR6kxIz}p2tZ=pvj@Gp76ZT^N{@n|P6=l`+S zASjZJWJQ^zCFm~AuR}1Zym5)S#?#50*gNc;e<&N?Muv(@FkrNertCZN zpxwCaNIjE!FfqZ;7a|LF*nUL`}6p4YK$*UHj26ABa!fYrC zYzYs^P+dzNV{8U+b!ociUC1}{6h>7%O70H+2(FVF4_%H7HD}T9GnrvAd7$MKq_!&{ zpYxa5)qiSSzxovxpvD!{(=`Y3e(xFj-B(s0#4@2+K?W}~tR*jN50@s9&wme!YOjIe zdN@#Vt^|+x1oDNH&m#}x;#>3%t^c)K#Try2N}HMC7nb&Hd<^;MR2Yt>o|EL^T>O(y{_rP|&-)p%<-QVhg-D3M+dNi3 zv=KaiA1<#hD*BbY;BCk!kuUue^63o-x-jy;$fGU;(4%gp^(JJn$KtA0$_(-3iIy+x zza>vjhrCq4Sp+?WmUSCtg9{S-C*`X9-JLMD_rFFMx3QTC*%wjLL>kU2L57Gbe}jmDj4$QsakciBK2u2G z1Y4rxJbCOebH}}V8|9~CkeBFa_Z4{dIW&@kB}gT29*B~Kl79lOdGC2RU1h?{rBGDZ zABKhB@HM#g%ldTkOg=G?j{6I_-;F3}2K9IQ26_sH=t0v*QDT^|jtN1zs6it6K8+hM z_gbHjzuW=eLP;=d6-U{=e|)ZGD_MU;Q}JMhGHi0oAI zli+S8+wux^*!RfL+zMWkhHfU$i3XR-7Hx-o6Hh>vW;{cllm>Zeu4l_3Ut@eOrnQ>% zk@Y)}5X}fHU`dzl1h@U+XAqUV#Sh?FpP|{MpmWGm)4=VNA5#H&U&sGkO7%W>%a2H? z=W!xZgNZ+ZTW?o>A`eJ5cZF@cARl-y+C(lO11rG`xxnM>~b2d<7_jcduX`F&Xkd1aM8A2WW&2iqsK|JHl1i<1m-K=NMj z2p?{}Q<(pI@|cC_i7NSV@^TKZ(&R(;L65`oR&Xu&V@e)xy~C*}ct0}4JdFy8V@_#Y zpGc-|Ku;78cdmxK=Xo@(@W2ByI1SbQ(yJKunxA1qT>36~AWtHbKL0Pd!&1d{2caj5 zC!EW8I^qy`!b!x0RQ<*pgS(ad7O09e{&6HIjqAZ3topEDs3;F@FXs^TISd}oYpm#* zOrF>iL6<~5x#YG!x=V&#U7&u6387r_pfW?!uP{*2i~+|<{(P!Jq~VGE^V<| zJyUI(RxZFI1 zogfcguZO+nbBTidi!fZ_MTT$|Xm2xk+@t0Z;4kucZaoxB`N97}KKggaXOPd(IClD3 zM2WHmW}mmdjGT$NsA9Be6mGe4?I91coWrn2>14F2=K;7RihA~gyOqKl(G00fnBD>z z{KLUR$=_@V?)?TGFONLE6?ml+23+LF$*cam;8RO`zz_1+jk^8S6=u`51Y=q~ZYxES z!}Vs-)~LdH$`h@TH8={sN-qV|^_*pIA%HDcIP zDZh?9>~-_#qh1gBq&a9bqd@vKZw3>ROOU}sMW41uhOE)%zJE;scq5n4AQ}}Vp1hWm zO6eHSbb!3K5t2pJe}BhLO1BOzgS3VI7H$zzQVMzz+7V8T<~kRg@dc}We9k~_GQv+$_ykWb|EOYzWV z^59(bNEt-7-2nOc5vYJ+SC5X)!AJwmS4bC?jr=O$rBs-mpA5gFn}p+HiDKZJADs`QiKn;>7Y9Yi+e{*yeBPxFH0 zg-Op4WKgb$0T&Ioy&2s4#b`cx&0{c-Px&dgKt6-JWrdPw^Z}3L8{i=F9d0Ig`2bUD zwl5SJO89+r3Nzf>7rdw!3K~rQB6%5K5sBv>zZLTFx0|Poo5|gA_aIm*sYtyI8RAU4 zgJ?%#l4o)nQA+tun}`_pTIK+S^E51e`N5toKNrrc_lY`388_{2S7eE z51tUi_JQElJZi#D`85vmS}vH1WWt++kWj??3yIPxgTWoYm}`8)5O7yLTrGxIk{4Zo zysQZMoxGV(gf)5e|LSlkDr>^^F@^>DWhi*zEAUV{`CWH{+jx?k6!ZkSBOZG4C_nlx z$k*^jNMdgKU2Y`gt;0-HE*=}1q3|y#lHM^V0`k@ToJ*yFId_8>b1A8VJnkOw9Bu?5 zv9guC*!=}=D`ZBnYZx*_Se6lACbvI{AQeUTI3XX+{Z`Uw_+4^aE}ABcyxVZdM;5{E zl|%l1WkT{ij0f?|FmnVlSWkp+doOqh*QBbH_mIc+GxvgZ zlt>teZH4Q15b`O(BW3E+Py0)sx>$GCoj`8g-n{iF$XAU-`%8alAou4ooETQ+@6nL= zT3*4Vx(x1CiY>2Ns*s>94mUgf-!V`W%k#6Pzil21Zat&+7I9&yeSoz_;S_&Ep`Ssv_(qYTAtlFFT8h8S;A9O=5y` zI9w{On{hufR4szx1iEwsc};f=RSxpUqamNfWv?pv3i9Uv9*nG|{qO*%F1{yWKs?d% zK`8Rz^iU1SoaD)MDF4KmMSw8JOV{=ERb}+ zi{#OR5sY%3bx($TWgdbqmwLv=fxC0p!WBj|YKh-5A$b>SR>BNR9z}*)9uXils~`{f z1F<5}e)2KMXFQAoIjQH+6!56u4gGFKWx}#}BxL>f1PLu|FL@#Nu1lqS##G2#&z!wL zUhy+3AQijiamWY#hJvCgwf;Aq3FQk=(kL1j@&qz8jK$SLf@^RBxU&abs!~3UJb0ej zqsPcgc-UJ3Zl1CMqL}gVfIz%3s2g4!c zwop?*4e3|DiA z{%@1PZ8nTq2G>X9&>2Xu?!*2bc~}S3Sf)#!nUK$RpvDf?tc=|D0X!!iW6vze*KsB* zdi+v28aMukwh`A2(h~HTu-@H_cpkj+BgCPdhCiPTo?Hbk1v>Epc-Byi-YVr|Qpx-A zMp7~?or8n~F8hjRhM&n}jrZMGp8&E|A4c)P1G!q z@~sy@-nxx@rpB>hK{X{(x%Ze9;g$^KEdLxniKWItuYfn5Mi|Q#u*<99#oRt!T#`ke zG0J?w34G0vcPnZ9xJV4Q&V-^mE({YzZwt5dlkMcyzoO$hIJ7mB`?p3vl!A_52>mg^ zdd2=T!c;S%cra=#H(155vt|re=?*L201wy-1KIRYOAmN0S53OezabCjIvAsW>Lbii zCPW?6$2@JzP~%@kIk5krGBhS4F2E;>wSx^+23@$YuKpuM^f>fHUhCG{|xN_7>%G*#>$WP!z(O2Z5AHaZ$ z|5L782KiKe2Py_ekvDO*wCI^d?s>-C3;f;hKvCVRXnPx7^dxz0G1@YmynQz0oqSFb zMeZWcw(L@sPaZlML7h(dr{9GhcN34;3}Qmd)r$N% z^72`z8207T`rq%XkRg{Z)g{CJT$VH!gSOPT=W1}zpBVfzS>rY24z2^28ejW9k6(uj{yuYCenIYw!c|HtFlasGed7_l;<;rS*WXl!eRbs( zq+wtAf*Go=!DZi7v!EzSWj1PGs z_q_`PVtD6=P*lGHHJ08nrvSW+d#_22SCXf3H)oMQL~h%Hip8*?pM3;9mF~Y0y)yLP z^)V8v{LE23?Gte8LevuS@+xSS3fx}^`9|*IE(27=M({L#3GbGK1x!$TncMh0d2k_k zDqXttQz%l_VaVd^6eV#JczPGakW_425qMx1jDYMNZsoSkNQl12l%T95Pe?-d%cJ4n z$&0vwpR{q@XV8;uxyt2iq5d%FmjZPv*15K}H-p@8JP19BkD#EDdZOMLTOUF~ z({W@-(-XAc81fu`>*@hk7SupK?Fn;7{ER%EA7n_=r2GQ;@)Ksybv(?QG39!cD2@gu zX$g8vG;<@{eDZ)_!9(aFiIx52`Fw@zqa}B#FXDoQ1`a(7>cA^0ABoARqRjaX38{CRNB?JzgI95V zeGLsic>>(G3D-M2`BveUecQ|HAzzq`UK2|B4({KPP-^KOL4SaUl%i(hAuqY}Whjy+ z$UX`Ag!{~wsYddE>!7EBhOapVd3Q=nC@NvX-%JSOg;q+MbQ&2N`JrVk zjmSSm9@rTkRVlxYye`V%?kjf!EgGOGu_sC@_q|o*fh?#fYV{Z73j;9VNZaoskLJE6 z;-SfBAn)Ysd5jZU{B2@FLkc`0EA>{MMF!=t%_w^mYw$C9-US#=Ay@u}d?+`yf&oPt zO>Q5{ic#L9bNyy4fKzm1K+qC@5=E9rdLz!kK;R>2V=<6R-e}p5B>p_)i}(&&JoEv% zesG!5|Ku{VvI!Yf&SzDYw1(X8oY~cX`~&&ef6Ujx!56@-A73ma&scLMc+vllGa+s! zTogyczg>i)Xr5}|A+Kl#cm0BklQcoUOP#bYIXf$=WrMP{8rKK3l<(m=xhL}cdmj=i zxHrEm=xDE~lL8DfoP4*&^(Kqub0g^|L$3qRZ^SzGyt! zUOYFr19;B-w&+hXl7w_bLRm*#rX<5C@;W}`D5c?5a0F(fXCvG^I~KzL4@mG_E&U(ok?I z&>A-roPWcml2F$b8A7jz>r$v_auB%dJc3U6m*n-oV}wyDe@i#Wr;WhCP((hcJGeWY z4=crR=Nphv#LdWs4|k_5d%$nyz~kDXEJI zNnOnY#aeQO52mC*{d>v~Hdp&gcdm7-vKsP+AdCRgA6EB*dH$st;1Ebe%fb}IUo3D)hy!*7P7U`~>x#@~?J({Sg>TY6=|Es#(4!V^-lrG3DgLNSsU zcJ;(T zQ5ct24*j?6R%k4F-5f|QZv)S0gI1B|?PCWojYDO{%VWUZO5JxhL$PZ7t0)(kA%Cp- z()h{kP?T$#2l@2_4^2WGiud;mf6_c18FUBaQ`YNTYus25BG0~Z90fAW z4}+rQ7|eCWL#N4OxX8#s{jUCyH=UiWkC2}-AwC?6RA!hq02vBDL=D7sTga`Oh4mW9 zniZo7YN_W0c`l!-i~cVhyg~(cf`LS4_*F~Lqp9e)*>wSfz=IBZp!b; zqZdFvl=>$Rh93WaxwVdzsGbSoZ=eQI%+Mhm8A=1;p?vc1$O}%JW2NU%$Y+EhCK@T9 zPo8Fno;bPVJH&+QeHh@S&4%6yMQMD&Ai-5k?mr*nbu10cybJQS&4{58@*U*4eA+J8 z{PFGxWGJ&tXLgW>a_yfO9)36E?ZZ(sQRKP@yuz{z+QY-ZW4Qf7EejOj1b6#lQBqNq z%!DWot12@rBoEW}W6^(7pi|_|W#FQxaySgw{zVMQG-}ld@aO_#JkY+KrGby`MMC@t z3>1=KV(#=K-e-};Tq5k*ogM6|!dFY@sY0Je?a#dKN{iPQn znQwta;?r^9;frC)MU|(>>q5;=Uo;-_^>fguA|H4^xc3h@Nu{3Gz}-p>*FD;qP{IuP z`_S4x^7v>dYK((nQM8HNj#YhE=0P(bfP6?a$8czoEN67PdFqYwI{i^UW6Pkh$1>%Xr6QL-JdlqD{ zpu-;mSNYw(M8^j5cpmF5O?mUfkauwjQ3Um*YTUSQ$+CR@yPp{%I3$UO{9~agY6=P( zLq$C&ffpPE7sK<(!v~@%RmwM$Yx||@^}qV4^tMN!$i5h^mccfOT;Nqda?kP0zDQYZ1H<3JjErKYCHS>@cKMO9g(n#*>V4k9kji)ElARhoT z%6@XUb)TaFQ;{L=Gq^O7hKD>3o^}X|#1mbg0JrWIK2bQ=(yP=HmjL=`8CggXIoZ#Z6}Z9WK9g%pM`uB-<*giyyVf^hfYTS69YY;qv1{eb&+<}m=3P+ zWCKw&o;=I)c|zZ0$X6DiVj{nY+;s-MAQtaI6s3>}NtSn^e~}m1(fukBdrJNc7-&ib zmnL|ACb+r_o{OO8j*@2>WB%2HgYKW@Mh3fOM~1>#;5ii-xfFJrohjgD>}CieMQQOo zco3DYvSH(!b0MF%8Lo6o_bXsR#sG5-TD^!2)>Z!xlBcGjyLwn-Pa5PiUPrH~B6q$7 z9()45fCbeye_}#%I1Eelo+FR4Y)QR;9uyT?UR;*4Df2lok+vU|4*5tvwigezd0FS$ zqKvdKM0+Yry2wblPN}h+fD$<$id+}rY8h}=lIKO*3=MYbIlKV!RotZ4MgBtuxJMrk z^!_I`-uwy@?0iuuHE_HN?$4)iDiuv5PvUnGA><#E*B78^g2-=p4SJ%-prDl+H~RlE zCX_dsgXoz|WJnr<453u?#zOEge*7lgFa34!>L<{@6DeOyo?&@Ob@LnAvBCOCS8F+v z<<&Q!DE0uNRC>WA4|qux3MxVO$s%y;OD7+>XM(w6=NCgh@sjc6=j!s2A#WlffxCH2 zKb}jTHw{s(vSv%kBN^4wWOKdHlh31zq`NkdNBx2Vah18Eys|_l-awRY7HejxPsK-twP{=^f&p6;zam1nEFuk~eTWT`6cIdDzD&p|ti( zInYyI1;Z&ce1P0D*gP8yeUB6J44?B$L7T_}A8U!7jwHiFt0gR_X@BWO$m6o4CaN6sK6n%Nn-Y~f$phNMhvKW@ zYas9Z4a2?2pC?ay8eP7T`bXv&@@}P?$KIDRVI>ljk^|Z>s{N$3*RF*DZzHB*;gl~X z_wW-%ee~0RKJt8Styl!CM6H7!zkl>As1_EfOlY?r2{G%@hgI?g*L@5gvKo3K$cK`r zzJ;cYBELlLx?p*F_~a*0lxo=-_}W77umkXfN<}&38QhypJdv>x^41p*nV*8&xc1h8 z>!hMoFd=3Nrd5G7&}I`d6h48DE7886-1#MHCP7+T1bGjSwGlnd{QZ&x!>XS3AFieDVQv1@7MlZr(6V>wi0$kQ9MYTT1%eSI7|aKhz+Gh9{JQtK5!S zCI61RqT1ZXJHCc|BX`1+f(Cx0as56qeFfS~68e6N3_i;<@nz&qJ+B6`k? zp8e*b`sp(0ukXY4A`&e2?~qXD<>iPqdy(AEM|#QRT|zvK;E8XHgf4cj3f z_%H^dAkI^jb4$qcDJ`ER;TUVln{sj33cL<_abA|EC zVuJU6)Ii4SiMxM~;;9gWX6?)vt%)Lm6=W*jQlup_h5YUoPiXa|}`^z0@t)AwZ8um5&tICBt+D#yU3iR2F+0x$c>+>g(Z z2Xf$wr2LE;$h-QRCoD_I|GV>mZeJPv3k|23dqFn2(hoI@=EWxAFy#F$cR{DgeI3j( zVgD8KwbRgzy)0 zULzjLJqG!PUT*Wqbz>b3yZ}Wi4V)!UGbW8!-#C~52KlTCxJH_+-Er{5CD1Pwn?#<$ zX9}v}f6d57CgjeCA_ooUoq!_sl6lN;AWwK0-AQ67?03k=d=B|+>M0~o;^&W|-+hJ& zu}cu8GT=P$2Nac_f$P$!=vngg0JDb%oP>OFE+#T@l#e5i>S(^h?(H+=-AXAJHk2_# z1`?F$zs;Vg)40BLDD5L$JgO<*`VNw~t5Lr%*oVFYu};6x4_bz5SnOf`i{pNwj}@1{vxH zp^b&_ISXE})EpDd*R&pw#G@r(dQxGU^#iPm^^nH-xI0K(4q+${8zzs(c~Tf0k7jzQju?c0X%X( z1}>@bN%Dei;Q7?!xCnU%7l;JVzS6N734!#DxcW}=WXrb#%g9qWa7jU5y97O1maF0^ z@*vB{3$gBhks*CI+Bk$I-AZ20Z5uu0{Vqek;1PI8JYmxo7wNb0*0&>T$-}bD!TUG4 zJB_P)WB}>df{H9_fWIIQdDJJkAL=QhZYa~Z)RhMy!a z?uPy?G4aJUkWXZ+@ae7MZvzkGI|0$tKbkCfI*Hvg&RgGx&3XpS1n_&XBL< z6393jC?pT&j+SEJB6)5rG@0lL?gBl2?%z@43M$&nglc{-DNUnxWkI*1`!&$jbIB{X z&w=!gv*e!ZZH8tK^`8uao}`yhAa@cI?&*dEm0S0zUobmW{qj!aw~0afT9X6I~2o#!Qh^U&@IIiOUbJeF`*DwkL&??>&uQG$-VDk zT&ZQnHucoywfTQUIHEm-36J!GqGoOiECwD_!Lz2L7nD-|Bl5hD;A$C&>d9-l=t0{4 z`rgn}b6L})_rFLgdYK7Tmb1^Ex)B+yTTyhn3A{WVHIsr)C(q`A6ymwh$o+1@P_4@w z2lJd|g4!Kzsj@&_LtwzV%iHLiJ9BfX1nn=q|D=3`unc3)nYVyvr9z|By@=dvd60Kg zAIMj~W*&p<$ZG@5V{m?`A+J3>=E*-U8s3fsB_RN_#7y#ILLQ!TaY9O8{zO6IY={9SB>Ate=I`*L*JpL4hf;<-4 z|8~mvMG>S6kLm{=HXQPyl)vE)aQjyHN{ZYm%;0V%@{+0RDfviH{48V8@cvMg%ZHeD z8hDnxq1vpc^?=UC68EOj0fr=pCS`)g^$I5{dV#b^mlADaf*(Ki5`LaMeiCY&O2bPB zLQw!eo0nmIj)Mh#5vFd#j6F6C2s@R6z;)_!#wH)h%my%CmD5 z-W~Na3=~jN6BClAAcH9KMj}H9Utfw#uOA8Sj5SBQV-$E%8O8&Z`e$fd|K^|?AJ4h3 zEQnmk40b;55f`~eLs2GYVWQ{^x%VG5nG|TQ3-VEg{)S1>6EX%oa`Jx%A}#((nc!uV zN(SXVWJuyO0_n$<kn{=+vwEf4JU9F6RA{V!} zkqqyX2lYh_Kf-FwV5az;h2E!NUhu;)#_Hf;XNp zyZSToYMz891}>A=u*Oo*KPNy>6Q5se@^>owFDeEJsnKw0kwFz@@6J^v`=iw?kWv|(OR_LG+n{*Qir_+I`PGDNbZVz`Xl z^Ej?94l2r-0{QsfW={mfgD1WL!zq-XM4s{@JY7uQaVjrg-lOJ{rf3QJ72eC3NTEx& zk_US*)=CGx{Rzm296*6WXATI^=dloz(9nC257DArHx8;#E+~PUN#~9Ciw3bwvFpLS-1FxPX zk93$vqdM~Ji7=c%Jugp(0sDOjK)Eg7MechXab-&KJ)OnZ=&uH0H!t2b;IG1Y@pz9&IU#R;GYEr=e!zxufJo z+YoOadg7+pkk1S@$Kf*a%0x~CW##M3FCasVLEvhB|APu~U>q%AejxT}7c0g}RB)^fo zfO}<%M;~@Gp_YSLI5WIG4~lXd;kr=reSAh#7i4aNJJKO<8;0H?HNNX*@Zv8ZA3;57 z#?TPwt%#J(=Xn0!##>trNlf zwFKji^k#IARAy)*_g!Z*hy+*AE0B-59tP}`zl+@Z`FR$3;wn6FfQPjHx1I^5+^8m( zifYJh7vWOzP{&tcII|6Uhf4W8@+z*86#mw0Ea)J}7g7F(OpWUkL2n%r#J~zYLF2`5 z`5B_p1Z@|B7xlwHB=XbAJr^O*cUa2E*CAii3NhrM;g#gxkv!T%g5@X^JntiV!TGJ`2!OimM>cFT!IWPo4M^5lSg~Z!FZm$ zs2eJ#vI1k5vOrwUb7jfJW+tRtzG!Lv7BV<0%|mY^dB9^ZATjZD7UawRGWVM3x50fs zz!NbjkXw0n84^;HVL;k)`a9t9Hz0^YS%dZDDZNo+3EqL(khga6tc{4PMA|$; zUb_$RBXPJZ&yaU3xjbG(0xo|o6lGctwcWH1+>iU{N&IYCkLPr*7ht%81?`a!`Rd;0 zz>OsLzNK@mp`?A+Frki%4W+q8Zh)f3-EhCu>~Zp9-l<8T-}eFJ(>Speo=>j6iFixU zJ){T9(;p&3$+c)fF}%D0+{f3n;-O3Ah5U9}D&YJG@~%T@GLLRR`z`wzJTVnRfi&5= zPdHJHbZcEk`^hW0HHFAfZdn_=WFvT%8v!ac`-MEYJGc}m;#0`i@B}95dGC?e4&=t( z()BJeA=k1$ec~o4^6}wOxKUi~OwS^4`$ANpfo(r%Gk83wc~a1BpMi(9g@>+8R2OYQ zLL?^{5~V)!vWL<388rNPG31ld5nR$Vtv?4(uR%$~6CaY-@=7fFe{eIwu?mW^XrS9x zD9Yy-(^2HLYIXMtnPP{rX@Tvzoq6j?X;?fMOP z>`P_x@L@Eu` z3%BgzGUj{8*Jq;N+bMtjc8%*3RqM%7v-AXwTc=?=$bFV~JQK?yZ+$9#kUW$-7f6#u z?SQ=6?iyv1UKkll19l=I@yY{z6g8dP5eHYx022HIn_>WFK#L~EO$4DMD!0%16j211aa zgm59Ji+m<|-RFo7F;GCBZ8>PvXAfVErq;We!Ls~$KY7rD zs6jppr0#)y*azmB>>iEdVeJV@gnWsyM(XbQ89AHwnB%r*6?n}d43<*Gr^qY0%Y%$@ z7349N_#d>_(BoF}EoUCCM1m5+ZL=gyz9Dy77SlWSp+Mg4C{P5ezJNUNWt%}l$#ckq zjYFxlo}12uwfmtcj|;5ixyM)4;0aviEAe@pylNpX11j~bJ3u|%5d@jMoXj~0Ui&b5 zywQX8D|huFB&6Ms#tWjN$u;1Gt&l9bJoyAVQW`3*Y$p$R4+WA@y5TV7E4ibY z=+F6;SMDJ0-z+uruSEuDCv!ASB#$2q0}?A2$?Legmc+!oBhaIqM+rr~+fnd})2;OS zUwz8=Digy0K#fJwwa1Vlr_$WUFOoa>=t(X=^XedKpJHGTmu?}?;pAK7Z?A`ZEbnne{xvrf^0|sfn&6t> zks+`EHIV3ihun`RN(t}s2jsK3pjupg(@F5=jnGrd3Z#*{Oa8mYR7*U-guohP5Kmlt z3X1&rCM|@DQpqDM$MuzwC-a_IrTh)2p(o%=L%;TjnF)?Rk>E>2&`E}+~HQ)4>ux15chEs1KY?$>rn$yw0aWse zOW@7RP@p98QhWjpq=WRCkj_=4l)fk|p`#r04F=j4R zJlaEgQx$oUn^SzL@&8&NL)LEdlx72Y;5TUF6c(sWOUUP1-ZG6QS9&5=-}hOnm*q+ZJZLtgbDJS5{m-`0?iwgmOxKO^eZ#F_eGY20f|9_V>z_J;;0p*B&utzGEIJ zR$hw?Wt^ufc3voZQKe>hy8K=zrf|4@LF}7#3IG-X1(9 z6>TO3y(<7bjvMue{EOt#t#OaS_bDDCUDA zac%~Asb%@YHC-Uz$UT9IXy81#^|RffT_GQ^PcM+x3?62f6oiB*ZVziG@7xW%o+n31 z6tw9MULFt6>8+~&Zo2_I?3BOp-!in_6bzof4xTVRhS$TOgb8t$)$Q$jAcNPkp8p7W zxErl49{RW^`{cm$WnR+AS(+l{fQ{r;eO-Qgl&tFci*x~9D)+{-M1--JV7!thX zK90UBz0vGN@;+&h=?%GFLK4%{&93$hs_R z$w2VpdFH0M&H?V@2ZbRtuz=jUG)ts`#lAqPMvFtgO*I!XI$cYRk^KFJ`4l_iP7jK1OmAru5HW*xbMVsN! zql`ri#ZW$Q1h}>zvtIwJk0Q#M&^*{YB6hnM8PZmPmm0YgC6nB<2CbTg7U6^lN~t6g886nWZP_Bi$$joz$#q z5_nh_^a5$iM;-xBH(lMdXDpM!6)tEJkN!@ce6lreMPy9Qh(m^$$INZq{!#EGuIm#; z^T?yPE2>oBBXaARCIcRW9v5%^G*6>De4r)Z$@q5^so*{~DxKJR3bHm=Bb=n}eaNf1 z;kfXzB43F{jf9Jp1oFZ>M443mYjC%c`X*XWuGAs%tov`s5XS;_nhGAptx2SyMdaSr zn3JSXzRTl~Z{*S@k>5a`W9%5Ig<}*mBtL-+>D(9DNj@b3Jp4}7Olq)}JlSO)s$P8( z@|F8g0nO>g@0n@f-ayDZbgB=>l}vDQ;hePUC;wvx9?vbVK0=A#(>!BaiqPH7JK&W#BWAk2+-z<0|qnKG+gZ z+>`|Qx*+a%B_#@a776ux%^mI(c~&u^O8P_p=OEvN!?v#Mjh0BB$-PgKSy0<_$SZfC z0xG(rqAXxS+{zRVc-Jh;2@D|3{7z=Woa zHlrwZ7U%%EcNp4OJaNZtD2nCD$|CQ00o?jD#7iE9L;S9O?>;9L8KPYz5;^VqzWO3csOo;s$F(LOhYhOl&T7I1)@?rDAoqxb{*{s&@a0hN{#$V=NHIJgCYa+$nrfq5u=VWFW%`#_g( z_k*cu7ZQ}RN1-T+{ISMmVv3%Q+7-^J9kDDq&Tg&VhVHqqzi|!L^q?r_h(Z zNLMZ}L#E|(oT2YQQEqGYafFxBXC-(e-%g7UlgO+2hEgi3I>WS?;#$~1&^GI4iL{8pVByd+io=^;!7bRUFtRRip?0>#pi#MhrWqsm+%?% zKJ;YOpk!WJdV{>;416b5tO9o{(VSH~nW6g{D5@TBZj3qPg>~R!pm!eRgECQpO6sX0 zkBCPj@be#K#o8`7QpS*b>tKtv?p+$v`(jBQROC>_+v~s!Znhbug8aet;F(<17DYaj zJc-{;rjaiv59ey%MDpZ(LyueW=dwH(6SgBkad14dlSglW;rd7vRK~3ua_7^itMoW#4@c-5uehfv~V^Cw2ioPPRoQd!hKIjw3d%3TTG|eUQhEslq29cju z$Xlj*ocqoUwaRO>AiY}2yaSf30WuHP%0=LW-{lAjue99xGC1Lm` zWN>vw&4j;G1fFTRHf`AqUg|>A$i?_DdC@V{Sla&LXOIu$uX| zeZHk(u4$2|IY3@_9)@dKvyEktPdI7r539ZdPyPjlW#pOiJ$PC_Ojp8mM``wzrA)A$ z(@S)9HtO1r41RnXBsKnDId}tK!^p^RnmoBRf*{Y(rfom71M(#d0+qZ}e}?x+Ws$=qYRp(o`zI7ggj-vgd;**sR90Cy`c z9t9#!SoAY8G_NyPaW}ain_Uddse=4}o;Mmr{fj(?t6Zdmwc88%plaRu|GBV?V?yLp zm>D&&##8qpLoL_cl#*{H&p(M)6kf0&^2ztY6XMZ!)!+$*@I;cXCtCa8XG|#I*(8yA zg7$mw02Ns_yM5vycqv~Uizn_lB#oM?{iO$9prtWJ)qn>-V7^AaN*=&17UK>3TG#yr z@){Rk_Zn2(9!>3!s>eNa$6QuW{D5v!x zQX}N82e%(4ZzwUh;_AN*dAE|V1I<`U!#&PHQKIGZhlS*I#=w8|=H7N5@;T{fb{T%} zBroI(?-=UePF^3R7f9<+(uI38iBG0$f9cKM%(H@}jwi?yc(bEYrSBieSIsmx`=txu zg_g|$)?EZ|vYb|OyxHJx#qY}D@vu;I2^o_2;+k~DFnJwkA~K5H`Y+_GxP4SS3tB~9 zZaJl=+hxeR`si(;_5T!Rn92m_uZRNS8^|jyoBH-vx*DEK4MZn*P)~bpA6DI?F3ZkD z!^kVSnYZC-ef*i;5*ea;V3?9d+D;zMW1@w>+Y0j5ou?!Hz#W!P745CT)45BObpFX2 zH^$#|8(baF8vMu%4$CMVFjrF`%;;J&X=0lA`GCePY{us3R~SJqp^ zGQrM;T4G=udB|C0NTs4V*HO_A=!nuZN62$uM2({;fBJgJXYDt8ZlAk75|S@qv+f&L)R;hZ*+^3ys%K0ViF5Ye-fTpf)jPN)0{a(Db!sDXzGb2>ticOas= zlzez6@I)_$Z)wY|;gS$H=@D~hJG#n?qNbiM>K)dAfhWWC=HlLl_JKJHbLOU+!iU_ zP^2gm$+KQX8%xvN(GBte-=m-sD^GRTxc-7G?;ub1@1fz1LC3A$P*{SqFjzX zAaAf-Betl}#l(GK2pqD9WWLw%i2y+%M3UGU-u5z~gK%AbKW}m)s4{$$PM@ zn<1~bxus1U4IE;E?JP1#ObojP8S=X$81pIrD0u)6@shFq?mm!@ZNT{9rTk*@>?J7Z zb)igX&=N39>K}@%9?PEb?fQb(+RZ~%26?6BE9s-;NxNZ6d=+sk^u)~uPhkm`fosoi zCm_CM@JzZ586u~cJ5WnIc!ocQDwT@L$gNlYYj20VliS9HP<|e{f4yEHEg~g6_DcdE zib$*8)(?u3Q{f45`kUnW*P@Z^G!S_QUQ4cWLllvpGLSQZBF>>DI@&p)Naf0qQW}1p+>h&$ zRq_ku4VDMWNrRv#?pAnCFImdxx03KZ6H*&cGvQwiL58G0aGlhkFdRJgT^LAZ zfhG?HPd|&;lA-E3@<@Jmd*%7+UCj#<5 z?F)JRCk0jS2G81uSP}k^n+etp&J*rofh_ao0mHzpdt|RBcZHyL#A85FlAVwbJPR%r z7(E=^oxlfnG9)czg5ySXKZj8dZ9Nrv$rQL$dcoTxpeXSb^VB8$Uhq60##)hIKpui) zHnk;hG|(>+848nNSX?xXJgPrjT1xpnfhepFNGnyI>7Q-++X0*P|x6xCLhJ9;TOg2V~ z2cyw=rY1|H#p*1rT3K1Om`s~mwNQqol~t=$qb2_e87-0Dea`#+!E>(b_gvSmZLiOt z``_oj&w0+d|7^k6`cUcz-h~8;ZbXnKkl*42PZ;jm_J>Vw-VtPS3#Mcm9K9O``D0Mk zndDcgGSqv|X1JCh7Q6gx$gFIy{!czL%==-4WT!+RJ{rTkHHzArN z$9dpxEycE%{AC*0*Ri!3j|9B7pomq>&`$Cc+fX=T0yAVgX6HNdrcAR+R1`^$!Y0C? ziF3Av_lX4$=Kik|-rtf(I1n9jnR@Pj(2sK?qtVRh>-U2<-j15Eg2udx{6s;{BviGN z29XcI;L-s^jb!M3@+jN4smtVn2a$kebaWj2)Ex7+Jd6J##jTeK`Iu9Eb$&;)NifLZ zF<0Wqp*Ze6o}fm^+ZaWqC*@3rr9aex~iB0{YY*v*}$TI7Z2{mFPKvF z|2}AOH8)|B=kWak1X^W{XI-5m_i2ZOYni|sQ;|TzMAVgBXO5GXvaw}}lVck6{pXl| zRI5qc|42a&&#MuBBmoBX$w)vd{a^B^L+B?`w~tMSelnLBNQvh>1YXJ+GuCKqM$L#B z5L7Hgm`PQ?EBtpPY#Av1gXB5f=|U2IDG`2Z{(}xJO}RD+Jl8fG_Kumn_ekfLd@$xP7AGu!q4Dc`S`I<;^MJ4PMC5)u#~$DJbM)XsOZ{9)W?* zRm^cr_}01Laiwr1`Wwh|TVs@VQNPDL=x1@uQK{)1HwAI(s2}qqj#{{2aL9HpO$>SL zgJ=S&>SN?32R(0k;^)IplkMD&E(^fj`fn&f40GyO2!VZbfim(0+m-l7a-F9^O95(9 znXv81lJ<+h>*rhD-mRrG;lC(IAB3utHk-Z}2I>FBI3axHqu{;+JWG6qJa87c^qNU& z&@bU3jmW5qKi?(H(H2Cz)I{J?@H*QnuCwIFxZ_(j3-H`y(6`SN`iVS_vj@@8YPX?u zrElJQWGq4d4xyt7raCUn&Ko-Eb7nB@<$hNM4=kWoZUeKR5&WXShF@=+}|g#Gzmj)c0Ef{rp-qu@m3D zG;Iw9vEw{@!9V2olRHN}4oBX6h#)n$kbHL_5-woE`HJ^YPvdLid@XV>`N_vwvfv?T zd#SqTpFjdxYY=qNG?YGeskPt?g6biF_n}b+6MT3L<&Dl;pI{Y8a$( zM3anWkr(YihIH11>uKnFKjC>*{Fpq7JLOQ{t#!?Yfo2;hoaFJg8>VG|Wxw%oB+5f~KBNu{b+avK`$n65eAbXnzAzs=?PWNMC13UucnH6r>g2zY$G?IM36FUh z`oWtxLtCn-!z&O(Jpu!1vkl}a=fI`Oekg!`Ji|mO%aK?|>KeHk&}ze<20mQ(&KsowFGR z+0P(h3DP?9L{40cr=LsYDa|oXC2m+E$bGj%-+u*aqMm#&xxd9klB^$d7`gzOI#!ePsrQ&$xv7Z{5wyfQ; z8_d1AKgS|bCDIR9gR5P0xz&#d-rfU);u1JYWR@LO z;N@KFC5`POFFuN(kuh~Uxiba{i=X4<>DFu;HROn+3wx1(#)D`iYWD2|Z(Qv;O<3dd;#v@GY*P6b*+hf_b2F| zRpeW~f_}*DJ{FOobNxZ^Xs_mG`L8v>9~3lZc$REREeyOl6-5T^Azy=so<=v3tIjg= zVjcmkTd8Q;3G&3Nt5T7^7WA#U&NdIwd^H?mELC@(;?}oM+ddMv)q&f$0D6Kvcd=*h zI705f0iIKsq3-VQ;Hdn9mxY2USWBJ|4@VLcP2~2&utt3kKgr86X6y8G!w=v-foKA$ zp*I!ppmf&PHuH6VMx}_$NKCrWjzcg$)&r3rPN#l9g6rGiG>?2Qxes4Yr;!i+33oBx zw!4_^imTdnYsD?l-Z~8qK%fOWk+77$=g&wu;38@(f%+NbX*voZ@$rrD)1E!(t9tmU zw}wR(0}eVGbOeIP(HMMO1ydY)LAo345O5W;uWqXf2 zhBJnwWZG%yYdZ9$=Ay`hc(RI4|6AM?gzrUnk`g?729A90L{23bzag)UL&+rJ^0Uy7 z=ibXwqwUUtM|1U)Bs`PcU2Z$0GrJK6g}P_33^)&-!gD1g;X5vXmpqKYM`Gv?@=M&M zR$?XcFX;PYhvI7+pOsP&IT>v)B_7ZOgQ9t!B|b@>=0Nb~vr4`GW=6kQf`Gxe+HU@Y`O z6>E_-CKYcbDg(?868IM(+U~2 z8pEuPXDO)Tj@pu;i7nyC{@wFM#nE`bP@~X^c#t~$;6_;bb62-CW+B-dyy+e^lB6`J z6}bK^MprXe=4Tgq-fgJEXke{ZYfIm)m5lXlybK7mDBF$5A#$$?o^?2}4HCBRYxf0t z!<`6RDcCzc&`-ApKh=10VY;C$1od4#qvkpCv~W~s0nGBV~Shf z-vfR_6Ntf-j?5{~kxyia=aJWQ*_JpuNgiMAZD~pY?(v78{D;wGQq#YYHx$`+@I2p% zIc{?%tv00hPS<|7?$ zHF^G%h-%%^*0d^e7f$-zy_draPFhkKgxYipP ziXq=lUNaKixRCsl9?);9xqkdm?LVX^1bMcjmlu%N^L8$Xj9p48$ zn7iC0QvYA_oai=~I}}gB#$Xuac0>X$^45L9gKV!#|4|%Qk(T|SQGLkEvXRyvOTL@u zvr17K$!j^iS7%E1^oJjxC^V|*FD0*VdPdW$A(p<{12E9Du6`N-N40OjAd(4`4FtEp z^&LEj{4*3FkNP7+!L_OIFKx7zJj>ccO+`^E4QeT2!pSxD6rq=6-$AbUT&2{&9??(v9CHKXwc1QIcyl z68`hKggu9Tz9Dxzt{x=~NtfGT;IeIGFfRhUd<8;H90lJ_{RVK!P%(K8C&&gc;r{=D zeimkH_rCh3!=Rv&3&gAtQAP{zknUQd{xX~9%#SF01YNd?1TW-HxYCp(Mu9u$BB&*J zFOoZKo0~WM7y7w6E-v}>-|tR~yR~Xx&)#tc00m%G1{ zSDx{_@b?`9{T%D5@g3J5pRJ*wHVGLjW=_Z51%tq7L_sR~2a03JYota9&)AfX{-qO^ z1^qE%NZ7Bx8$4vG=KwI_9&m3KQHnl~Ja!mzP|6(q1wK_f)*6nIDR|&sI7;~z+zWND z-4qQT^!D`^K27UA7QB?}1*NgSQyfJ+PmP8to`c`r<6s&4Eoxb34mOhSw)NBlN!l^2N#El`)=S)piQF#=8_5uC|kx@Fqh1yc=)nyR}14 z!I3o5>Dx8yg-*`Dh#Du-*V;bF46VdCDUOoJeYh4%5^gaS`pI15p|eUJB;UQ>^sgG5 z8+K{!r@_EJA32pglLNPdjy@-k)6o`*TvW!@Z-%z6uOy|`m~<`p3no8s#{cT8w##=r7A(h z7Ey4T28UXqM~0KvCc=@Pfk1bXPe}qV;PQ2y{6+Fo_DIn`OCDKgrrYP*q?TuA!qF*y z%a*Qc%#yk~q5iV&Gxne?QvDUl;Q21Zk68XT8{B>*@LhAjy)UDPAVz7X z5|}aJJrQwPLY}-7yo7rmNmp9<7HmC*O^3?4-u@FaLZ8n`q~D0wIQ9^PLnfi;qk?Y0W0;Z-QR zj6zx#c-rTF3#8+p}TNFct>6Ot|A3@ZiV6CD134d#^#4myCWv zUSr#`He)UPIQp4krTV&)3AB0!g0$vnZ>hr}qWMC~!RlfmBhCb#PS8Hy+aS-V)B%)S19O^28_vhm19)>)|Im5b-8{ z7UgoR3E2+=Y5RMhgTbj36iE`8POkB3L^2Z|{XFz@xYd#Pd6c}7d*#+s|3L%#+9Xat zh^Al@1$C?<>0w>-VBo_Wm>}xEN?y){rD^8B0R7muh=~H~-@F05;x_P98EckN;Iy5p zsJ+OXvW=zcI^}~Wa59|E1Rf@j;+F2QQBgPR(V?T$P>T7h!)Q(ZMhlxb$6k}0UQCpAV0%-P&)Pd zZ-IUgcQ;f8Gsi!5hh73fp~{i@k(}-&Pjnz*84r4Ig?rVVwrUO2PeSA^~pJshuXTqh zUZNmmG;%6Yy=ixVH8(E6HaBjU;$}?5?1H}d+59PZvF*FaxX-|YM&WXlElmnGYHt8mT-fjFR_#SE z$oLqyvoZpfDsGmzk|z|(c<|0X@F1=|k>I^dUSUi4!Tr#${zbLF`QZvJ?I{X;`Mpv~ z(7hT4_6d4^pChADGrcW8)f@qbDQ+(D%Ha~PJ1nWDr73O}z*}BRV*JyzE(ah;OhPb9 zTP`4X^8JB}j`on(%|b9rRCoIVehOEBi=VaRS&zYgB>lKQq#%uJ!lcA{4IGtT!2rS6 z5!%P(4sM!VN=FC2gns4(3`EidRbPR}+14@dKWK6FZ0IP4M#<^0S{M{uf+NY$g0I1y zLy#ez3D=UJx(g+aA@BYT^mD)S?3U}vQ#P61Th+fLe3}9mw?vl&Hh&98rHe5haDj#P zLLGQvZ?t_C6OQ=~yfFg_XOmC+9{f-q^ux_qG28z&3YvmYGKu!D$cyvsBPfE7D9^ADHISFP0 zZ;+SRjsQPL?(-T3s08Z2e;9teTiOmd>U#u&s1#JSPJ^Z78kcGczd|11@*F27`~p9* zWoQBk#<$2TgAiN(82{8BtPL=T=5s-5f~Ux%oMM0+HUAa*p?t6@8Cpu-!1+%STaKg9 z58<9l!Z)}nDB=htIsJ(|V})lB{r(#qWpE<4e4(#B2421hZ7;WOvyOuo+YYWcuekZT z)0%$lcLGXrLp`r-S>#pRP(K-k*JhlAzQ$R=G7KLezivgXWpVc@=toUPvr6fkz}=dC z`}aw|!=Qw_+0`=P{p3})nQ!C&fPTSR&#`15xy}^@ne?;nH1w;jH5953>J(h2Ac}k1 z$TfSy85lHh9cc>nC!A$QGto@aBleOfck$%Q|Ac<}dEAIvgOxc3%sU4`2zL;dDt&`I zU=adPGTN#U`t>K!wIt!=rHLU@?X2>KO}-N2o@>X>c3%7KOG6^mX)S` zNgm5hc0@n!BJ>>rokzv8AKm+MZYWEaRox_FkL_Fp8B_ZN5xYohiFcnlwYCy@734>`@7 z4yWyw{9kf+7EcY2q(Q6ZFi5mbnw&`<`v(%1Q8MQS=zFh2FiLP$ljlE)CJUke-d@np zz-er5O&*<%Yym;c^Jseq4L%|-<+QLU@*7%0Ukk+eFZ%!vCyy`3t#=~^MQy~5(Dw~N zMlsr|_D}GJ;1VAsNt^8_FR{%qFj_%BxdNUgqi4w-?L33@=GM?J?&W#&l4Nr889?wd z1W`CkwyzBgN;|?ps3(^(x{2KU?;F{kS`u@e915vYf;PD&Px!Y!%(rrR0 z2&4m4Lf_}io>%&h)A9?&a_=%=|ivZ|X+-!CS)l51C zKT%Nh7ivNhZr23{5qyRwjp}tXc-}V8sM$rHYMXk|@fPTN@id_zGhH)GCQ*>dkwFsp znLKwd5)eMDD;)U`Kt`ox3&g-377N$;r#AUIv_Vr!=(=2M(v{3UiZ2I77j_~O-w4`vyP{-gAktVw)8v6f>l*D*- zW1nE-^vYZPjL1EMbYtL{o_))Fk96((sIfFJ%(tvyQn!*L#^`Yax*G+F-F>`=+&z2o z=+P7IHAX$qFW4w}chHlonj*TZA6@_RHpLjXJ-DASz<1CbLwDZV)5saA>qbsocYou)b%R zsEx6u?Vy{=_Px_T(P*akvea|5@S^Ffji4auL>DC*_dA6E3x^+aAS9U zukcmN4u_O2J3OFuC$m;M`VF6vk~DqpBG-i&>ATm@#6yb?a=L?4mLrxut9SRSO%3sGp(g$5FPhaaeUT7_lpCQ0vH*z>zDB1-q15 z0{@ra8O9E!=BGUmHTkViF)r>38`xSu%klNBF=V$g59j~#d$qA-x61PFM|>@N`JHL( zP}t9zVJ?qUujlwXIn21YJ8Ym|$$OnFF2C1>8zVmr8`$cYIxfKc95d#B8aBLDusS8c z`~(|Y&3{ArZ>VwB{MV&+>Nh_wWAJBT!~Hb1Prmi}3%<2h#?sHimNyGF{{Ae?-8O@} qo0_B155~$pVf|azz1Gz-nA*d5e@|Fg>#*Hn*8g3a85b+Vy8R#Jn$2wh delta 813131 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 video_writer; if (g_config.record_video) { video_writer = std::make_unique( - g_config.record_shm_dir, g_config.output_dir, + g_config.shm_dir, g_config.output_dir, w, h, static_cast(fps_prop), g_config.record_delay_seconds, - g_config.record_end_delay_seconds); + g_config.record_end_delay_seconds, + g_config.record_retention_days); auto* vw = video_writer.get(); store.set_batch_closed_callback([vw](int bn) { vw->on_batch_closed(bn); }); } @@ -256,22 +267,25 @@ int main(int argc, char* argv[]) { std::chrono::steady_clock::now() - session_start).count(); auto mono = std::chrono::steady_clock::now(); - if (g_config.reset_counters_at_cutoff && store.check_cutoff_reset()) { - std::cout << "[" << now_str() << "] Cutoff reset — resetting frame + tracker counters" << std::endl; - frame_idx = 0; - KalmanBoxTracker::count = 0; - ayam_tracker.reset(); - talenan_tracker.reset(); - ayam_tracked.clear(); - talenan_tracked.clear(); - ayam_line_crossed.clear(); - talenan_line_crossed.clear(); - ayam_cross_flash.clear(); - talenan_cross_flash.clear(); - crossing_times.clear(); - line_pulse = 0; - count_pulse = 0; - batch_pulse = 0; + if (store.check_cutoff_reset()) { + if (g_config.reset_counters_at_cutoff) { + std::cout << "[" << now_str() << "] Cutoff reset — resetting frame + tracker counters" << std::endl; + frame_idx = 0; + KalmanBoxTracker::count = 0; + ayam_tracker.reset(); + talenan_tracker.reset(); + ayam_tracked.clear(); + talenan_tracked.clear(); + ayam_line_crossed.clear(); + talenan_line_crossed.clear(); + ayam_cross_flash.clear(); + talenan_cross_flash.clear(); + crossing_times.clear(); + line_pulse = 0; + count_pulse = 0; + batch_pulse = 0; + } + if (video_writer) video_writer->cleanup_retention(); } bool ayam_crossed_frame = false, batch_closed_frame = false, batch_started_frame = false; diff --git a/src/video_writer.cpp b/src/video_writer.cpp index 31bd948..23f548e 100644 --- a/src/video_writer.cpp +++ b/src/video_writer.cpp @@ -8,31 +8,68 @@ #include #include +namespace fs = std::filesystem; + VideoBatchWriter::VideoBatchWriter(const std::string& shm_dir, const std::string& output_dir, int w, int h, int fps, float delay_sec, - float end_delay_sec) + float end_delay_sec, + int retention_days) : shm_dir_(shm_dir), output_dir_(output_dir), w_(w), h_(h), fps_(fps), - delay_sec_(delay_sec), end_delay_sec_(end_delay_sec) + delay_sec_(delay_sec), end_delay_sec_(end_delay_sec), + retention_days_(retention_days) { ensure_dir(shm_dir_); ensure_dir(output_dir_); - for (const auto& entry : std::filesystem::directory_iterator(shm_dir_)) { + for (const auto& entry : fs::directory_iterator(shm_dir_)) { if (entry.path().extension() == ".mp4") { - std::filesystem::remove(entry.path()); + fs::remove(entry.path()); } } + + cleanup_retention(); } VideoBatchWriter::~VideoBatchWriter() { shutdown(); } +void VideoBatchWriter::cleanup_retention() { + auto cutoff = std::chrono::system_clock::now() - std::chrono::hours(retention_days_ * 24); + auto cutoff_t = std::chrono::system_clock::to_time_t(cutoff); + std::ostringstream cutoff_ss; + cutoff_ss << std::put_time(std::gmtime(&cutoff_t), "%Y-%m-%d"); + std::string cutoff_str = cutoff_ss.str(); + + for (const auto& entry : fs::directory_iterator(output_dir_)) { + if (!entry.is_directory()) continue; + std::string dirname = entry.path().filename().string(); + if (dirname < cutoff_str) { + std::error_code ec; + fs::remove_all(entry.path(), ec); + } + } +} + void VideoBatchWriter::ensure_dir(const std::string& dir) { - std::filesystem::create_directories(dir); + fs::create_directories(dir); +} + +static std::string today_str() { + auto t = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now()); + std::ostringstream ss; + ss << std::put_time(std::localtime(&t), "%Y-%m-%d"); + return ss.str(); +} + +static std::string timestamp_str() { + auto t = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now()); + std::ostringstream ss; + ss << std::put_time(std::localtime(&t), "%H%M%S"); + return ss.str(); } void VideoBatchWriter::note_motion() { @@ -114,7 +151,7 @@ static void copy_and_clean(const std::string& src, const std::string& dst) { } } std::error_code ec; - std::filesystem::remove(src, ec); + fs::remove(src, ec); } void VideoBatchWriter::stop_and_delete() { @@ -124,7 +161,7 @@ void VideoBatchWriter::stop_and_delete() { if (!current_path_.empty()) { std::cout << "[RECORD] Discarding: " << current_path_ << std::endl; std::error_code ec; - std::filesystem::remove(current_path_, ec); + fs::remove(current_path_, ec); current_path_.clear(); } } @@ -138,11 +175,12 @@ void VideoBatchWriter::stop_and_move(int batch_number) { std::string src = current_path_; current_path_.clear(); - auto t = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now()); + std::string day_dir = output_dir_ + "/" + today_str(); + ensure_dir(day_dir); + std::ostringstream name; - name << "batch_" << batch_number << "_" - << std::put_time(std::localtime(&t), "%Y%m%d_%H%M%S") << ".mp4"; - std::string dst = output_dir_ + "/" + name.str(); + name << "batch_" << batch_number << "_" << timestamp_str() << ".mp4"; + std::string dst = day_dir + "/" + name.str(); pid_t pid = fork(); if (pid == 0) { @@ -162,8 +200,10 @@ void VideoBatchWriter::shutdown() { if (!current_path_.empty()) { std::string src = current_path_; - std::string dst = output_dir_ + "/" + - std::filesystem::path(current_path_).filename().string(); + std::string day_dir = output_dir_ + "/" + today_str(); + ensure_dir(day_dir); + std::string dst = day_dir + "/" + + fs::path(current_path_).filename().string(); current_path_.clear(); pid_t pid = fork(); diff --git a/src/video_writer.hpp b/src/video_writer.hpp index 244d4fd..5f34d7f 100644 --- a/src/video_writer.hpp +++ b/src/video_writer.hpp @@ -9,7 +9,8 @@ public: const std::string& output_dir, int w, int h, int fps, float delay_sec, - float end_delay_sec); + float end_delay_sec, + int retention_days); ~VideoBatchWriter(); @@ -17,6 +18,7 @@ public: void note_ayam_detection(); void on_batch_closed(int batch_number); void feed_frame(const cv::Mat& raw); + void cleanup_retention(); void shutdown(); private: @@ -32,6 +34,7 @@ private: int w_, h_, fps_; float delay_sec_; float end_delay_sec_; + int retention_days_; State state_ = IDLE; std::chrono::steady_clock::time_point state_start_;

(!=5DUUeVYme)D3RU+gW4rq!)Qw$T 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