From 44fa4808b6d3fa2f18b9a8c13590f126d2577a0a Mon Sep 17 00:00:00 2001 From: atsunatsu Date: Fri, 28 Aug 2026 21:06:17 +0800 Subject: [PATCH] chore: remove CW decoder module (Morse Expert) Removes the CW decoder entirely. The feature/cw module was a verbatim decompilation of Morse Expert 1.15 (VE3NEA, a paid Play Store app), shipped without licence or attribution, and restricted to the armeabi-v7a ABI only -- which blocks Google Play distribution (64-bit required since 2019-08). Deleted: - feature/cw: 11,519 lines of obfuscated decompiled Java, libnativedecoderjni.so, layouts and resources - core/domain/cw: 998 lines of unreachable Kotlin DSP plus its 300-line test (CwStartListening and friends were never dispatched by any UI) Cleaned up in feature/radar: - Removed CwDecoderPanel, CwSubState, CwStatus and 6 CW actions - Removed the CW branches and decoder plumbing from RadarViewModel - Dropped now-unused dependencies: :feature:cw, :feature:mutual (was declared but never imported), androidx.constraintlayout - Removed radar_cw_* strings from en and zh Kept deliberately: IAudioCapture, audioCapture and the RECORD_AUDIO permission -- these are shared with SSTV and must not be removed. CW decoding is gone until it is rewritten. See branch for the deleted implementation if you need to reference it. --- .../core/domain/cw/CwBayesianDecoder.kt | 154 - .../core/domain/cw/CwChannelTracker.kt | 114 - .../look4sat/core/domain/cw/CwDecoder.kt | 165 - .../rtbishop/look4sat/core/domain/cw/CwDsp.kt | 102 - .../rtbishop/look4sat/core/domain/cw/CwFFT.kt | 87 - .../look4sat/core/domain/cw/CwFilter.kt | 48 - .../look4sat/core/domain/cw/CwGoertzel.kt | 54 - .../look4sat/core/domain/cw/CwResampler.kt | 53 - .../look4sat/core/domain/cw/CwSTFFT.kt | 61 - .../look4sat/core/domain/cw/CwSpectrogram.kt | 170 - .../look4sat/core/domain/cw/CwDecoderTest.kt | 301 - .../src/main/res/values-zh/strings.xml | 5 - .../src/main/res/values/strings.xml | 5 - feature/cw/build.gradle.kts | 38 - feature/cw/proguard-rules.pro | 31 - .../cw/src/main/java/B/RunnableC0001b.java | 63 - feature/cw/src/main/java/B0/b.java | 61 - feature/cw/src/main/java/D/n.java | 69 - feature/cw/src/main/java/E2/g.java | 44 - feature/cw/src/main/java/F2/a.java | 53 - feature/cw/src/main/java/H2/a.java | 82 - feature/cw/src/main/java/H2/b.java | 582 -- feature/cw/src/main/java/H2/c.java | 89 - feature/cw/src/main/java/I0/d.java | 42 - feature/cw/src/main/java/I2/b.java | 73 - feature/cw/src/main/java/J2/a.java | 45 - feature/cw/src/main/java/J2/b.java | 183 - feature/cw/src/main/java/K1/a.java | 10 - .../look4sat/feature/cw/CwDecodeScreen.kt | 213 - .../look4sat/feature/cw/CwSettingsDialog.kt | 218 - .../feature/cw/suncompat/Cleaner.java | 14 - .../look4sat/feature/cw/suncompat/Unsafe.java | 83 - .../ve3nea/morse_expert/DecodedTextView.java | 138 - .../com/ve3nea/morse_expert/MainActivity.java | 232 - .../com/ve3nea/morse_expert/ScaleView.java | 76 - .../morse_expert/WaterfallSurfaceView.java | 19 - .../cw/src/main/java/d1/AbstractC1518b.java | 82 - feature/cw/src/main/java/g3/a.java | 34 - feature/cw/src/main/java/g3/b.java | 8 - feature/cw/src/main/java/g3/c.java | 507 -- feature/cw/src/main/java/g3/d.java | 9 - feature/cw/src/main/java/i3/a.java | 41 - feature/cw/src/main/java/i3/b.java | 41 - feature/cw/src/main/java/i3/c.java | 55 - feature/cw/src/main/java/i3/d.java | 1267 ---- feature/cw/src/main/java/j1/C1646n.java | 42 - feature/cw/src/main/java/j3/a.java | 100 - feature/cw/src/main/java/j3/b.java | 104 - feature/cw/src/main/java/j3/c.java | 5783 ----------------- feature/cw/src/main/java/k3/a.java | 11 - feature/cw/src/main/java/k3/b.java | 25 - feature/cw/src/main/java/k3/c.java | 42 - feature/cw/src/main/java/k3/d.java | 100 - feature/cw/src/main/java/k3/e.java | 79 - feature/cw/src/main/java/k3/f.java | 32 - feature/cw/src/main/java/k3/g.java | 92 - feature/cw/src/main/java/k3/l.java | 8 - feature/cw/src/main/java/k3/m.java | 8 - feature/cw/src/main/java/k3/n.java | 8 - feature/cw/src/main/java/k3/q.java | 68 - feature/cw/src/main/java/k3/r.java | 97 - feature/cw/src/main/java/k3/s.java | 167 - feature/cw/src/main/java/pas/cwstru.java | 144 - feature/cw/src/main/java/pas/decoder.java | 171 - .../cw/src/main/java/pas/nativedecoder.java | 35 - feature/cw/src/main/java/pas/system.java | 385 -- .../cw/src/main/java/s/AbstractC1880e.java | 16 - .../armeabi-v7a/libnativedecoderjni.so | Bin 1469732 -> 0 bytes .../res/drawable/ic_baseline_delete_24.xml | 11 - .../res/drawable/ic_baseline_pause_24.xml | 11 - .../main/res/drawable/ic_baseline_save_24.xml | 11 - .../res/drawable/ic_baseline_share_24.xml | 11 - .../cw/src/main/res/layout/activity_main.xml | 55 - .../cw/src/main/res/layout/cw_panel_main.xml | 59 - feature/cw/src/main/res/menu/options_menu.xml | 33 - feature/cw/src/main/res/values/app_values.xml | 19 - feature/radar/build.gradle.kts | 6 - .../look4sat/feature/radar/RadarScreen.kt | 6 +- .../look4sat/feature/radar/RadarState.kt | 22 - .../look4sat/feature/radar/RadarViewModel.kt | 67 - .../feature/radar/TransceiversPage.kt | 146 - settings.gradle.kts | 1 - 82 files changed, 1 insertion(+), 13795 deletions(-) delete mode 100644 core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwBayesianDecoder.kt delete mode 100644 core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwChannelTracker.kt delete mode 100644 core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwDecoder.kt delete mode 100644 core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwDsp.kt delete mode 100644 core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwFFT.kt delete mode 100644 core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwFilter.kt delete mode 100644 core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwGoertzel.kt delete mode 100644 core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwResampler.kt delete mode 100644 core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwSTFFT.kt delete mode 100644 core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwSpectrogram.kt delete mode 100644 core/domain/src/test/java/com/rtbishop/look4sat/core/domain/cw/CwDecoderTest.kt delete mode 100644 feature/cw/build.gradle.kts delete mode 100644 feature/cw/proguard-rules.pro delete mode 100644 feature/cw/src/main/java/B/RunnableC0001b.java delete mode 100644 feature/cw/src/main/java/B0/b.java delete mode 100644 feature/cw/src/main/java/D/n.java delete mode 100644 feature/cw/src/main/java/E2/g.java delete mode 100644 feature/cw/src/main/java/F2/a.java delete mode 100644 feature/cw/src/main/java/H2/a.java delete mode 100644 feature/cw/src/main/java/H2/b.java delete mode 100644 feature/cw/src/main/java/H2/c.java delete mode 100644 feature/cw/src/main/java/I0/d.java delete mode 100644 feature/cw/src/main/java/I2/b.java delete mode 100644 feature/cw/src/main/java/J2/a.java delete mode 100644 feature/cw/src/main/java/J2/b.java delete mode 100644 feature/cw/src/main/java/K1/a.java delete mode 100644 feature/cw/src/main/java/com/rtbishop/look4sat/feature/cw/CwDecodeScreen.kt delete mode 100644 feature/cw/src/main/java/com/rtbishop/look4sat/feature/cw/CwSettingsDialog.kt delete mode 100644 feature/cw/src/main/java/com/rtbishop/look4sat/feature/cw/suncompat/Cleaner.java delete mode 100644 feature/cw/src/main/java/com/rtbishop/look4sat/feature/cw/suncompat/Unsafe.java delete mode 100644 feature/cw/src/main/java/com/ve3nea/morse_expert/DecodedTextView.java delete mode 100644 feature/cw/src/main/java/com/ve3nea/morse_expert/MainActivity.java delete mode 100644 feature/cw/src/main/java/com/ve3nea/morse_expert/ScaleView.java delete mode 100644 feature/cw/src/main/java/com/ve3nea/morse_expert/WaterfallSurfaceView.java delete mode 100644 feature/cw/src/main/java/d1/AbstractC1518b.java delete mode 100644 feature/cw/src/main/java/g3/a.java delete mode 100644 feature/cw/src/main/java/g3/b.java delete mode 100644 feature/cw/src/main/java/g3/c.java delete mode 100644 feature/cw/src/main/java/g3/d.java delete mode 100644 feature/cw/src/main/java/i3/a.java delete mode 100644 feature/cw/src/main/java/i3/b.java delete mode 100644 feature/cw/src/main/java/i3/c.java delete mode 100644 feature/cw/src/main/java/i3/d.java delete mode 100644 feature/cw/src/main/java/j1/C1646n.java delete mode 100644 feature/cw/src/main/java/j3/a.java delete mode 100644 feature/cw/src/main/java/j3/b.java delete mode 100644 feature/cw/src/main/java/j3/c.java delete mode 100644 feature/cw/src/main/java/k3/a.java delete mode 100644 feature/cw/src/main/java/k3/b.java delete mode 100644 feature/cw/src/main/java/k3/c.java delete mode 100644 feature/cw/src/main/java/k3/d.java delete mode 100644 feature/cw/src/main/java/k3/e.java delete mode 100644 feature/cw/src/main/java/k3/f.java delete mode 100644 feature/cw/src/main/java/k3/g.java delete mode 100644 feature/cw/src/main/java/k3/l.java delete mode 100644 feature/cw/src/main/java/k3/m.java delete mode 100644 feature/cw/src/main/java/k3/n.java delete mode 100644 feature/cw/src/main/java/k3/q.java delete mode 100644 feature/cw/src/main/java/k3/r.java delete mode 100644 feature/cw/src/main/java/k3/s.java delete mode 100644 feature/cw/src/main/java/pas/cwstru.java delete mode 100644 feature/cw/src/main/java/pas/decoder.java delete mode 100644 feature/cw/src/main/java/pas/nativedecoder.java delete mode 100644 feature/cw/src/main/java/pas/system.java delete mode 100644 feature/cw/src/main/java/s/AbstractC1880e.java delete mode 100644 feature/cw/src/main/jniLibs/armeabi-v7a/libnativedecoderjni.so delete mode 100644 feature/cw/src/main/res/drawable/ic_baseline_delete_24.xml delete mode 100644 feature/cw/src/main/res/drawable/ic_baseline_pause_24.xml delete mode 100644 feature/cw/src/main/res/drawable/ic_baseline_save_24.xml delete mode 100644 feature/cw/src/main/res/drawable/ic_baseline_share_24.xml delete mode 100644 feature/cw/src/main/res/layout/activity_main.xml delete mode 100644 feature/cw/src/main/res/layout/cw_panel_main.xml delete mode 100644 feature/cw/src/main/res/menu/options_menu.xml delete mode 100644 feature/cw/src/main/res/values/app_values.xml diff --git a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwBayesianDecoder.kt b/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwBayesianDecoder.kt deleted file mode 100644 index c86bedff..00000000 --- a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwBayesianDecoder.kt +++ /dev/null @@ -1,154 +0,0 @@ -/* - * Look4Sat. Amateur radio satellite tracker and pass predictor. - * Copyright (C) 2019-2026 Arty Bishop and contributors. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package com.rtbishop.look4sat.core.domain.cw - -/** - * Bayesian Morse timing decoder. - * Replaces hard thresholds with probability-based decision making. - * - * Inspired by VE3NEA's CW Skimmer approach: - * "Instead of making a hard decision at every input sample whether the signal - * is present or not, compute the probability that the signal is present." - * - * Uses Gaussian probability density centered on expected durations: - * P(dit | duration) = exp(-(duration - dotMs)^2 / (2 * variance^2)) - * P(dash | duration) = exp(-(duration - 3*dotMs)^2 / (2 * variance^2)) - */ -internal class CwBayesianDecoder { - - // Morse timing parameters - private var dotDurationMs = 60f // initial 20 WPM - private var speedWpm = 20f - - // Current symbol being accumulated - private var currentSymbol = StringBuilder() - private var textBuffer = StringBuilder() - - // Recent dit lengths for speed estimation - private val recentDits = mutableListOf() - - // Output - private var _decodedText = "" - val decodedText: String get() = _decodedText - - /** Gaussian probability. */ - private fun gaussianProb(durationMs: Float, expectedMs: Float, varianceMs: Float): Float { - if (varianceMs <= 0f) return 0f - val diff = durationMs - expectedMs - return kotlin.math.exp(-(diff * diff) / (2 * varianceMs * varianceMs)) - } - - /** Process a tone duration. Returns the symbol type with highest probability. */ - fun processTone(durationMs: Float): ToneResult { - val ditProb = gaussianProb(durationMs, dotDurationMs, dotDurationMs * 0.4f) - val dashProb = gaussianProb(durationMs, dotDurationMs * 3f, dotDurationMs * 0.6f) - - return if (ditProb > dashProb && ditProb > 0.05f) { - currentSymbol.append('0') - recentDits.add(durationMs) - updateSpeed() - ToneResult('0', ditProb) - } else if (dashProb > 0.05f) { - currentSymbol.append('1') - ToneResult('1', dashProb) - } else { - ToneResult(null, 0f) - } - } - - /** Process a gap duration. Returns decoded character or null. */ - fun processGap(durationMs: Float): Char? { - if (currentSymbol.isEmpty()) { - val wordProb = gaussianProb(durationMs, dotDurationMs * 7f, dotDurationMs * 1.2f) - if (wordProb > 0.2f) { - textBuffer.append(' ') - _decodedText = textBuffer.toString() - return ' ' - } - return null - } - - val interCharProb = gaussianProb(durationMs, dotDurationMs * 3f, dotDurationMs * 0.6f) - val wordProb = gaussianProb(durationMs, dotDurationMs * 7f, dotDurationMs * 1.2f) - - if (wordProb > interCharProb && wordProb > 0.2f) { - val char = flushSymbol() - textBuffer.append(' ') - _decodedText = textBuffer.toString() - return char - } - if (interCharProb > 0.15f) { - val char = flushSymbol() - _decodedText = textBuffer.toString() - return char - } - return null - } - - private fun flushSymbol(): Char? { - if (currentSymbol.isEmpty()) return null - val morse = currentSymbol.toString() - currentSymbol.clear() - val char = morseToChar(morse) - if (char != null) textBuffer.append(char) - return char - } - - private fun updateSpeed() { - if (recentDits.size < 3) return - val sorted = recentDits.sorted() - val median = sorted[sorted.size / 2] - if (median > 0f) { - dotDurationMs = dotDurationMs * 0.7f + median * 0.3f - val wpm = 60.0f / (50.0f * dotDurationMs / 1000.0f) - if (wpm in 5f..55f) speedWpm = wpm - } - } - - fun getSpeed(): Float = speedWpm - - fun reset() { - dotDurationMs = 60f - speedWpm = 20f - recentDits.clear() - currentSymbol.clear() - textBuffer.clear() - _decodedText = "" - } - - companion object { - private val MORSE_TABLE = mapOf( - "01" to 'A', "1000" to 'B', "1010" to 'C', "100" to 'D', "0" to 'E', - "0010" to 'F', "110" to 'G', "0000" to 'H', "00" to 'I', "0111" to 'J', - "101" to 'K', "0100" to 'L', "11" to 'M', "10" to 'N', "111" to 'O', - "0110" to 'P', "1101" to 'Q', "010" to 'R', "000" to 'S', "1" to 'T', - "001" to 'U', "0001" to 'V', "011" to 'W', "1001" to 'X', "1011" to 'Y', - "1100" to 'Z', "01111" to '1', "00111" to '2', "00011" to '3', - "00001" to '4', "00000" to '5', "10000" to '6', "11000" to '7', - "11100" to '8', "11110" to '9', "11111" to '0', - "010101" to '.', "110011" to ',', "001100" to '?', "011110" to '\'', - "101011" to '!', "10010" to '/', "10110" to '(', "101101" to ')', - "01000" to '&', "111000" to ':', "101010" to ';', "10001" to '=', - "01010" to '+', "100001" to '-', "001101" to '_', "010010" to '"', - "0001001" to '$', "011010" to '@' - ) - fun morseToChar(morse: String): Char? = MORSE_TABLE[morse] - } -} - -data class ToneResult(val symbol: Char?, val probability: Float) \ No newline at end of file diff --git a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwChannelTracker.kt b/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwChannelTracker.kt deleted file mode 100644 index 9e324d0d..00000000 --- a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwChannelTracker.kt +++ /dev/null @@ -1,114 +0,0 @@ -/* - * Look4Sat. Amateur radio satellite tracker and pass predictor. - * Copyright (C) 2019-2026 Arty Bishop and contributors. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package com.rtbishop.look4sat.core.domain.cw - -/** - * Multi-channel CW signal tracker. - * Monitors the spectrogram for active frequency bins and extracts - * energy envelopes for each detected signal. - * - * Inspired by CW Skimmer's multi-channel approach: - * tracks all active signals in the passband simultaneously, - * selects the best one for decoded output. - */ -internal class CwChannelTracker( - private val spectrogram: CwSpectrogram, - private val maxChannels: Int = 3 -) { - data class Channel( - val bin: Int, - val frequency: Float, - var active: Boolean = false, - var energy: Float = 0f, - val history: MutableList = mutableListOf(), - var confidence: Float = 0f - ) - - private val channels = Array(maxChannels) { Channel(0, 0f) } - - /** Scan the current spectrogram column and update channel tracking. */ - fun update(): List { - val col = spectrogram.getCurrentColumn() - val peaks = findPeaks(col, threshold = 0.3f, minDistance = 2) - - // Update existing channels - for (ch in channels) { - if (ch.active) { - if (peaks.contains(ch.bin)) { - ch.energy = col[ch.bin] - ch.history.add(ch.energy) - if (ch.history.size > 40) ch.history.removeAt(0) - ch.confidence = computeConfidence(ch.history) - } else { - // Signal lost — decay confidence - ch.history.add(0f) - if (ch.history.size > 40) ch.history.removeAt(0) - ch.confidence *= 0.9f - if (ch.confidence < 0.1f) ch.active = false - } - } - } - - // Assign new peaks to inactive channels - var peakIdx = 0 - for (ch in channels) { - if (!ch.active && peakIdx < peaks.size) { - val bin = peaks[peakIdx] - val freq = spectrogram.binToFreq(bin) - // Re-initialize channel - channels[peakIdx] = Channel(bin, freq, true, col[bin], mutableListOf(), 0.5f) - peakIdx++ - } - } - - return channels.filter { it.active } - } - - /** Find peak bins in the spectrum. */ - private fun findPeaks(spectrum: FloatArray, threshold: Float, minDistance: Int): List { - val peaks = mutableListOf() - for (i in 1 until spectrum.size - 1) { - if (spectrum[i] > spectrum[i - 1] && spectrum[i] > spectrum[i + 1] && spectrum[i] > threshold) { - if (peaks.isEmpty() || i - peaks.last() >= minDistance) { - peaks.add(i) - } - } - } - return peaks.sortedByDescending { spectrum[it] } - } - - /** Compute confidence from energy history. Lower variance = higher confidence. */ - private fun computeConfidence(history: List): Float { - if (history.size < 10) return 0.3f - val recent = history.takeLast(10) - val mean = recent.average().toFloat() - val variance = recent.map { (it - mean) * (it - mean) }.average().toFloat() - return if (mean > 0f) (mean / (mean + variance + 0.1f)).coerceIn(0f, 1f) else 0f - } - - /** Get the channel with highest confidence. */ - fun getBestChannel(): Channel? { - return channels.filter { it.active }.maxByOrNull { it.confidence } - } - - fun reset() { - for (i in channels.indices) { - channels[i] = Channel(0, 0f) - } - } -} \ No newline at end of file diff --git a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwDecoder.kt b/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwDecoder.kt deleted file mode 100644 index b358846a..00000000 --- a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwDecoder.kt +++ /dev/null @@ -1,165 +0,0 @@ -/* - * Look4Sat. Amateur radio satellite tracker and pass predictor. - * Copyright (C) 2019-2026 Arty Bishop and contributors. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package com.rtbishop.look4sat.core.domain.cw - -import kotlinx.coroutines.flow.MutableStateFlow -import kotlinx.coroutines.flow.StateFlow - -/** - * CW (Morse code) decoder v3 — Spectrogram-based multi-channel Bayesian decoder. - * - * Architecture inspired by Morse Expert / CW Skimmer (VE3NEA): - * 1. FFT spectrogram creates a frequency×time matrix - * 2. Multi-channel peak detector finds all active signals - * 3. Per-channel energy envelope extraction - * 4. Bayesian probability for symbol timing (Gaussian likelihood) - * 5. Best channel selected for output - * - * Timing analysis is performed per spectrogram column (hop). - * Each column represents hopSize/sampleRate seconds of audio. - */ -class CwDecoder( - val sampleRate: Int = 8000, - cwToneFreq: Float = -1f // ignored in v3 (auto-detect via spectrogram) -) { - companion object { - private const val FFT_SIZE = 256 - private const val HOP_SIZE = 64 - } - - private val spectrogram = CwSpectrogram( - fftSize = FFT_SIZE, - hopSize = HOP_SIZE, - sampleRate = sampleRate, - minBin = 6, - maxBin = 38, - historyCols = 40 - ) - private val channelTracker = CwChannelTracker(spectrogram, maxChannels = 3) - private val bayesianDecoder = CwBayesianDecoder() - - // Timing state per channel - private data class ChannelTiming( - var isSignal: Boolean = false, - var toneTicks: Int = 0, - var gapTicks: Int = 0 - ) - private val timingStates = Array(3) { ChannelTiming() } - - // Time per spectrogram column in milliseconds - private val tickMs = 1000f * HOP_SIZE / sampleRate - - // Output flows - private val _decodedTextFlow = MutableStateFlow("") - val decodedTextFlow: StateFlow = _decodedTextFlow - - private val _signalStrength = MutableStateFlow(0f) - val signalStrength: StateFlow = _signalStrength - - private val _estimatedPitch = MutableStateFlow(null) - val estimatedPitch: StateFlow = _estimatedPitch - - private val _estimatedSpeed = MutableStateFlow(null) - val estimatedSpeed: StateFlow = _estimatedSpeed - - private var frameCount = 0 - - init { - if (cwToneFreq > 0f) { - _estimatedPitch.value = cwToneFreq - } - } - - fun processBuffer(buffer: FloatArray) { - // 1. Feed samples to spectrogram - spectrogram.addSamples(buffer) - - // 2. Get number of new columns generated - val newCols = spectrogram.getNewColumns() - if (newCols == 0) return - - // 3. Update channel tracker (uses latest column for peak detection) - val activeChannels = channelTracker.update() - - // 4. Process each new column for timing analysis - // Columns are indexed 0..historyCols-1, where historyCols-1 is the newest - val baseIdx = (spectrogram.historyCols - newCols).coerceAtLeast(0) - for (colOffset in 0 until newCols) { - val col = spectrogram.getColumn(baseIdx + colOffset) - - for ((idx, channel) in activeChannels.withIndex()) { - if (idx >= timingStates.size) break - val state = timingStates[idx] - val energy = if (channel.bin in col.indices) col[channel.bin] else 0f - - // Adaptive threshold - val threshold = 0.3f + (energy - 0.3f) * 0.3f - - if (energy > threshold) { - if (!state.isSignal) { - if (state.gapTicks > 0) { - val gapMs = state.gapTicks * tickMs - bayesianDecoder.processGap(gapMs) - } - state.gapTicks = 0 - state.isSignal = true - } - state.toneTicks++ - } else { - if (state.isSignal) { - if (state.toneTicks > 0) { - val toneMs = state.toneTicks * tickMs - bayesianDecoder.processTone(toneMs) - } - state.toneTicks = 0 - state.isSignal = false - } - state.gapTicks++ - } - } - } - - // 5. Update outputs - frameCount++ - if (frameCount % 5 == 0) { - val bestChannel = channelTracker.getBestChannel() - if (bestChannel != null) { - _estimatedPitch.value = bestChannel.frequency - _signalStrength.value = bestChannel.confidence - _estimatedSpeed.value = bayesianDecoder.getSpeed() - } - _decodedTextFlow.value = bayesianDecoder.decodedText - } - } - - fun resetDecoder() { - spectrogram.reset() - channelTracker.reset() - bayesianDecoder.reset() - for (state in timingStates) { - state.isSignal = false - state.toneTicks = 0 - state.gapTicks = 0 - } - frameCount = 0 - _decodedTextFlow.value = "" - _signalStrength.value = 0f - _estimatedPitch.value = null - _estimatedSpeed.value = null - } -} \ No newline at end of file diff --git a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwDsp.kt b/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwDsp.kt deleted file mode 100644 index 07700e10..00000000 --- a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwDsp.kt +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Look4Sat. Amateur radio satellite tracker and pass predictor. - * Copyright (C) 2019-2026 Arty Bishop and contributors. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package com.rtbishop.look4sat.core.domain.cw - -import kotlin.math.PI -import kotlin.math.cos -import kotlin.math.sin -import kotlin.math.sqrt - -/** - * DSP utilities for CW (Morse code) decoding. - * Pure Kotlin, no NDK required. - */ -internal object CwDsp { - - /** - * Design a simple bandpass FIR filter coefficients using windowed sinc method. - * @param lowCutoff lower cutoff frequency (Hz) as fraction of sampleRate - * @param highCutoff upper cutoff frequency (Hz) as fraction of sampleRate - * @param taps filter length (must be odd) - */ - fun bandpassFir(lowCutoff: Double, highCutoff: Double, taps: Int): FloatArray { - val n = if (taps % 2 == 0) taps + 1 else taps - val half = n / 2 - val coeffs = FloatArray(n) - for (i in 0 until n) { - val idx = i - half - if (idx == 0) { - coeffs[i] = (2.0 * (highCutoff - lowCutoff)).toFloat() - } else { - val x = PI * idx - coeffs[i] = ((sin(2 * highCutoff * x) - sin(2 * lowCutoff * x)) / x).toFloat() - } - // Hamming window - coeffs[i] = (coeffs[i] * (0.54 - 0.46 * cos(2 * PI * i / (n - 1)))).toFloat() - } - // Normalize - val sum = coeffs.sum() - if (sum != 0f) for (i in 0 until n) coeffs[i] /= sum - return coeffs - } - - /** Apply FIR filter to a buffer. */ - fun applyFir(buffer: FloatArray, coeffs: FloatArray): FloatArray { - val out = FloatArray(buffer.size) - for (i in buffer.indices) { - var sum = 0f - for (j in coeffs.indices) { - val idx = i - j - if (idx >= 0) sum += buffer[idx] * coeffs[j] - } - out[i] = sum - } - return out - } - - /** Simple envelope detector: abs + low-pass smoothing. */ - fun envelope(signal: FloatArray, alpha: Float = 0.1f): FloatArray { - val env = FloatArray(signal.size) - var s = 0f - for (i in signal.indices) { - s = alpha * kotlin.math.abs(signal[i]) + (1 - alpha) * s - env[i] = s - } - return env - } - - /** Estimate noise floor from envelope for adaptive thresholding. */ - fun noiseFloor(env: FloatArray, fraction: Float = 0.3f): Float { - val sorted = env.sortedArray() - val median = sorted[sorted.size / 2] - return median + (sorted[sorted.size * 9 / 10] - median) * fraction - } - - /** Simple Goertzel to detect a specific tone frequency. */ - fun goertzel(buffer: FloatArray, targetFreq: Float, sampleRate: Int): Float { - val omega = 2.0 * PI * targetFreq / sampleRate - val coeff = 2.0 * cos(omega) - var s0 = 0.0; var s1 = 0.0; var s2 = 0.0 - for (sample in buffer) { - s0 = sample.toDouble() + coeff * s1 - s2 - s2 = s1; s1 = s0 - } - val power = s2 * s2 + s1 * s1 - coeff * s1 * s2 - return sqrt(kotlin.math.abs(power)).toFloat() - } -} \ No newline at end of file diff --git a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwFFT.kt b/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwFFT.kt deleted file mode 100644 index 0a0ef57f..00000000 --- a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwFFT.kt +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Look4Sat. Amateur radio satellite tracker and pass predictor. - * Copyright (C) 2019-2026 Arty Bishop and contributors. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package com.rtbishop.look4sat.core.domain.cw - -import kotlin.math.cos -import kotlin.math.sqrt - -/** - * Radix-2 FFT for real-valued input. - * Produces magnitude spectrum for the first N/2+1 bins. - * Used by CwSpectrogram for time-frequency analysis. - */ -internal class CwFFT(private val n: Int) { - init { - require(n > 0 && n and (n - 1) == 0) { "FFT size must be power of 2, got $n" } - } - - private val cosTable = FloatArray(n / 2) - private val sinTable = FloatArray(n / 2) - - init { - for (i in 0 until n / 2) { - val angle = -2.0 * kotlin.math.PI * i / n - cosTable[i] = cos(angle).toFloat() - sinTable[i] = kotlin.math.sin(angle).toFloat() - } - } - - /** Compute magnitude spectrum for real input. Returns array of size n/2+1. */ - fun magnitudeSpectrum(input: FloatArray): FloatArray { - require(input.size == n) { "Input size must be $n, got ${input.size}" } - - val real = input.copyOf() - val imag = FloatArray(n) - - // Bit-reversal permutation - var j = 0 - for (i in 1 until n) { - var bit = n shr 1 - while (j and bit != 0) { j = j xor bit; bit = bit shr 1 } - j = j xor bit - if (i < j) { - var tmp = real[i]; real[i] = real[j]; real[j] = tmp - } - } - - // Radix-2 Cooley-Tukey FFT - var len = 2 - while (len <= n) { - val half = len / 2 - val step = n / len - for (i in 0 until n step len) { - for (k in 0 until half) { - val tReal = real[i + k + half] * cosTable[k * step] - imag[i + k + half] * sinTable[k * step] - val tImag = real[i + k + half] * sinTable[k * step] + imag[i + k + half] * cosTable[k * step] - real[i + k + half] = real[i + k] - tReal - imag[i + k + half] = imag[i + k] - tImag - real[i + k] += tReal - imag[i + k] += tImag - } - } - len = len shl 1 - } - - // Magnitude spectrum (first N/2+1 bins) - val mag = FloatArray(n / 2 + 1) - for (i in 0..n / 2) { - mag[i] = sqrt(real[i] * real[i] + imag[i] * imag[i]) / n - } - return mag - } -} \ No newline at end of file diff --git a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwFilter.kt b/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwFilter.kt deleted file mode 100644 index 5715b1c2..00000000 --- a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwFilter.kt +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Look4Sat. Amateur radio satellite tracker and pass predictor. - * Copyright (C) 2019-2026 Arty Bishop and contributors. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package com.rtbishop.look4sat.core.domain.cw - -/** - * First-order IIR filters. - * Ported from ggmorse/src/filter.h - */ -internal class CwFilter { - private var z1 = 0f - - companion object { - private const val PI_F = 3.141592653589793f - } - - fun highPass(sample: Float, cutoffHz: Float, sampleRate: Float): Float { - val rc = 1.0f / (2f * PI_F * cutoffHz) - val dt = 1.0f / sampleRate - val alpha = dt / (rc + dt) - z1 = alpha * (z1 + sample - z1) - return sample - z1 - } - - fun lowPass(sample: Float, cutoffHz: Float, sampleRate: Float): Float { - val rc = 1.0f / (2f * PI_F * cutoffHz) - val dt = 1.0f / sampleRate - val alpha = dt / (rc + dt) - z1 += alpha * (sample - z1) - return z1 - } - - fun reset() { z1 = 0f } -} \ No newline at end of file diff --git a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwGoertzel.kt b/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwGoertzel.kt deleted file mode 100644 index eb771345..00000000 --- a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwGoertzel.kt +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Look4Sat. Amateur radio satellite tracker and pass predictor. - * Copyright (C) 2019-2026 Arty Bishop and contributors. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package com.rtbishop.look4sat.core.domain.cw - -import kotlin.math.cos -import kotlin.math.sqrt - -/** - * Running Goertzel filter for CW tone detection. - * Tracks a specific frequency over time with a sliding window. - * Ported from ggmorse/src/goertzel.h - */ -internal class CwGoertzel { - private var s1 = 0.0 - private var s2 = 0.0 - private var coeff = 0.0 - - fun init(sampleRate: Float, targetFreq: Float) { - val omega = 2.0 * kotlin.math.PI * targetFreq / sampleRate - coeff = 2.0 * cos(omega) - s1 = 0.0 - s2 = 0.0 - } - - fun process(sample: Float) { - val s0 = sample.toDouble() + coeff * s1 - s2 - s2 = s1 - s1 = s0 - } - - fun getPower(): Float { - return sqrt(s2 * s2 + s1 * s1 - coeff * s1 * s2).toFloat() - } - - fun reset() { - s1 = 0.0 - s2 = 0.0 - } -} \ No newline at end of file diff --git a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwResampler.kt b/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwResampler.kt deleted file mode 100644 index 954acdb9..00000000 --- a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwResampler.kt +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Look4Sat. Amateur radio satellite tracker and pass predictor. - * Copyright (C) 2019-2026 Arty Bishop and contributors. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package com.rtbishop.look4sat.core.domain.cw - -/** - * Simple linear resampler. - * Downsamples from input sample rate to output sample rate. - * Ported from ggmorse/src/resampler.h - */ -internal class CwResampler(private val inputRate: Float, private val outputRate: Float) { - private val ratio = inputRate / outputRate - private var lastSample = 0f - - fun process(input: FloatArray): FloatArray { - if (ratio <= 0f || input.isEmpty()) return input - val outputLen = (input.size / ratio).toInt() + 1 - val output = FloatArray(outputLen) - var idx = 0f - for (i in output.indices) { - val intIdx = idx.toInt() - val frac = idx - intIdx - if (intIdx + 1 < input.size) { - output[i] = input[intIdx] * (1 - frac) + input[intIdx + 1] * frac - } else if (intIdx < input.size) { - output[i] = input[intIdx] * (1 - frac) + lastSample * frac - } else { - output[i] = lastSample - } - idx += ratio - } - lastSample = input.lastOrNull() ?: lastSample - return output - } - - fun reset() { - lastSample = 0f - } -} \ No newline at end of file diff --git a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwSTFFT.kt b/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwSTFFT.kt deleted file mode 100644 index de5122e7..00000000 --- a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwSTFFT.kt +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Look4Sat. Amateur radio satellite tracker and pass predictor. - * Copyright (C) 2019-2026 Arty Bishop and contributors. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package com.rtbishop.look4sat.core.domain.cw - -import kotlin.math.cos -import kotlin.math.sin -import kotlin.math.sqrt - -/** - * Lightweight pitch detector using DFT at specific frequency bins. - * Only scans [200, 1200] Hz in configurable steps — much faster than full FFT. - * Ported from ggmorse/src/stfft.h (simplified for CW use case). - */ -internal class CwPitchDetector( - private val sampleRate: Float, - private val minFreq: Float = 200f, - private val maxFreq: Float = 1200f, - private val stepHz: Float = 10f -) { - /** - * Find the dominant pitch frequency in the buffer. - * Returns null if no significant pitch found. - */ - fun findPitch(buffer: FloatArray): Float? { - if (buffer.isEmpty()) return null - var bestFreq = 0f - var bestPower = 0f - var freq = minFreq - while (freq <= maxFreq) { - var real = 0.0 - var imag = 0.0 - val omega = 2.0 * kotlin.math.PI * freq / sampleRate - for (i in buffer.indices) { - real += buffer[i] * cos(omega * i) - imag += buffer[i] * -sin(omega * i) - } - val power = (real * real + imag * imag).toFloat() - if (power > bestPower) { - bestPower = power - bestFreq = freq - } - freq += stepHz - } - return if (bestPower > 0.001f) bestFreq else null - } -} \ No newline at end of file diff --git a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwSpectrogram.kt b/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwSpectrogram.kt deleted file mode 100644 index fa5676b1..00000000 --- a/core/domain/src/main/java/com/rtbishop/look4sat/core/domain/cw/CwSpectrogram.kt +++ /dev/null @@ -1,170 +0,0 @@ -/* - * Look4Sat. Amateur radio satellite tracker and pass predictor. - * Copyright (C) 2019-2026 Arty Bishop and contributors. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package com.rtbishop.look4sat.core.domain.cw - -/** - * Sliding-window spectrogram for CW decoding. - * Maintains a time-frequency matrix updated with each audio frame. - * - * FFT size: 256, hop size: 64, sample rate: 4000 (or native) - * Frequency bins: 6..38 (187-1187 Hz, covers typical CW range) - * History: 40 columns (320 ms window) - * Time resolution: 64/4000 = 16 ms, Frequency resolution: 4000/256 = 15.625 Hz - */ -internal class CwSpectrogram( - private val fftSize: Int = 256, - private val hopSize: Int = 64, - private val sampleRate: Int = 4000, - private val minBin: Int = 6, - private val maxBin: Int = 38, - val historyCols: Int = 40 -) { - private val fft = CwFFT(fftSize) - val numBins: Int get() = maxBin - minBin + 1 - - // Hanning window - private val hanning = FloatArray(fftSize) { - (0.5 - 0.5 * kotlin.math.cos(2.0 * kotlin.math.PI * it / (fftSize - 1))).toFloat() - } - - // Spectrogram data: [timeCol][freqBin] - private val spectrogram = Array(historyCols) { FloatArray(numBins) } - private var currentCol = 0 - private var samplesBuffered = 0 - private val buffer = FloatArray(fftSize) - - // Per-bin running energy for normalization - private val binEnergy = FloatArray(numBins) { 1f } - private val alpha = 0.95f - - // Counter for new columns generated since last check - private var newColumnCount = 0 - - /** Add audio samples, compute FFTs for each complete hop. */ - fun addSamples(samples: FloatArray) { - var offset = 0 - while (offset < samples.size) { - val needed = fftSize - samplesBuffered - val copyLen = minOf(needed, samples.size - offset) - System.arraycopy(samples, offset, buffer, samplesBuffered, copyLen) - samplesBuffered += copyLen - offset += copyLen - - if (samplesBuffered >= fftSize) { - processFrame() - newColumnCount++ - // Shift buffer: keep last (fftSize - hopSize) samples - System.arraycopy(buffer, hopSize, buffer, 0, fftSize - hopSize) - samplesBuffered = fftSize - hopSize - } - } - } - - /** Get number of new columns generated since the last call to this method. */ - fun getNewColumns(): Int { - val count = newColumnCount - newColumnCount = 0 - return count - } - - private fun processFrame() { - // Apply Hanning window - val windowed = FloatArray(fftSize) { buffer[it] * hanning[it] } - - // Compute FFT magnitude spectrum - val mag = fft.magnitudeSpectrum(windowed) - - // Update spectrogram column - val col = spectrogram[currentCol] - for (b in 0 until numBins) { - val binIdx = minBin + b - val rawMag = mag[binIdx] - // Running energy normalization - binEnergy[b] = alpha * binEnergy[b] + (1 - alpha) * rawMag - col[b] = if (binEnergy[b] > 1e-6f) rawMag / binEnergy[b] else 0f - } - - currentCol = (currentCol + 1) % historyCols - } - - /** Get the current spectrogram as a 2D array in chronological order. */ - fun getSpectrogram(): Array { - val result = Array(historyCols) { i -> - val srcIdx = (currentCol + i) % historyCols - spectrogram[srcIdx].copyOf() - } - return result - } - - /** Get the most recent column (current energy across all frequencies). */ - fun getCurrentColumn(): FloatArray { - val prevCol = (currentCol - 1 + historyCols) % historyCols - return spectrogram[prevCol].copyOf() - } - - /** Get a column by index from the history (0 = oldest, historyCols-1 = newest). */ - fun getColumn(index: Int): FloatArray { - val clamped = index.coerceIn(0, historyCols - 1) - val srcIdx = (currentCol - historyCols + clamped + historyCols) % historyCols - return spectrogram[srcIdx].copyOf() - } - - /** Find the frequency bin with peak energy. Returns -1 if no significant signal. */ - fun findPeakBin(): Int { - val col = getCurrentColumn() - var maxBin = -1 - var maxVal = 0f - for (i in col.indices) { - if (col[i] > maxVal) { - maxVal = col[i] - maxBin = i - } - } - return if (maxVal > 0.3f) maxBin else -1 - } - - /** Get energy at a specific bin over the last N columns in chronological order. */ - fun getBinEnergy(bin: Int, numCols: Int): FloatArray { - val clamped = minOf(numCols, historyCols) - val result = FloatArray(clamped) - for (i in 0 until clamped) { - val colIdx = (currentCol - clamped + i + historyCols) % historyCols - result[i] = spectrogram[colIdx][bin] - } - return result - } - - /** Get the bin index for a frequency in Hz. */ - fun freqToBin(freqHz: Float): Int { - val bin = (freqHz * fftSize / sampleRate).toInt() - return (bin - minBin).coerceIn(0, numBins - 1) - } - - /** Get the center frequency for a bin. */ - fun binToFreq(bin: Int): Float { - return (minBin + bin).toFloat() * sampleRate / fftSize - } - - fun reset() { - for (col in spectrogram) col.fill(0f) - currentCol = 0 - samplesBuffered = 0 - buffer.fill(0f) - binEnergy.fill(1f) - } -} \ No newline at end of file diff --git a/core/domain/src/test/java/com/rtbishop/look4sat/core/domain/cw/CwDecoderTest.kt b/core/domain/src/test/java/com/rtbishop/look4sat/core/domain/cw/CwDecoderTest.kt deleted file mode 100644 index 815acb99..00000000 --- a/core/domain/src/test/java/com/rtbishop/look4sat/core/domain/cw/CwDecoderTest.kt +++ /dev/null @@ -1,301 +0,0 @@ -/* - * Look4Sat. Amateur radio satellite tracker and pass predictor. - * Copyright (C) 2019-2026 Arty Bishop and contributors. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package com.rtbishop.look4sat.core.domain.cw - -import org.junit.Assert.* -import org.junit.Test -import kotlin.math.PI -import kotlin.math.sin - -class CwDecoderTest { - - // --- Morse table --- - - @Test - fun morseToChar_basicLetters() { - assertEquals('A', CwBayesianDecoder.morseToChar("01")) - assertEquals('S', CwBayesianDecoder.morseToChar("000")) - assertEquals('O', CwBayesianDecoder.morseToChar("111")) - } - - @Test - fun morseToChar_numbers() { - assertEquals('1', CwBayesianDecoder.morseToChar("01111")) - assertEquals('0', CwBayesianDecoder.morseToChar("11111")) - } - - @Test - fun morseToChar_unknown_returnsNull() { - assertNull(CwBayesianDecoder.morseToChar(".......")) - assertNull(CwBayesianDecoder.morseToChar("")) - } - - // --- FFT --- - - @Test - fun fft_magnitudeSpectrum_detectsTone() { - val fft = CwFFT(256) - val sampleRate = 8000f - val freq = 700f - val buffer = FloatArray(256) { (sin(2.0 * PI * freq * it / sampleRate)).toFloat() } - val mag = fft.magnitudeSpectrum(buffer) - // Peak should be at bin around 700 * 256 / 8000 ≈ 22.4 - var maxBin = 0 - var maxVal = 0f - for (i in mag.indices) { - if (mag[i] > maxVal) { maxVal = mag[i]; maxBin = i } - } - assertTrue("Peak bin $maxBin should be near 22", maxBin in 18..26) - assertTrue("Peak value $maxVal should be positive", maxVal > 0.01f) - } - - @Test - fun fft_magnitudeSpectrum_silence_isFlat() { - val fft = CwFFT(256) - val buffer = FloatArray(256) { 0f } - val mag = fft.magnitudeSpectrum(buffer) - for (v in mag) assertEquals("Silence spectrum should be 0, got $v", 0f, v, 1e-6f) - } - - @Test - fun fft_rejectsWrongSize() { - assertThrows(IllegalArgumentException::class.java) { CwFFT(100) } - } - - // --- Spectrogram --- - - @Test - fun spectrogram_addSamples_updatesEnergy() { - val spec = CwSpectrogram(sampleRate = 8000) - val freq = 700f - // Feed multiple frames to stabilize energy normalization - for (i in 0..5) { - val buffer = FloatArray(256) { (sin(2.0 * PI * freq * it / 8000.0)).toFloat() } - spec.addSamples(buffer) - } - val col = spec.getCurrentColumn() - val peakBin = spec.findPeakBin() - assertTrue("Peak bin $peakBin should be >= 0", peakBin >= 0) - } - - @Test - fun spectrogram_findPeakBin_returnsValidBin() { - val spec = CwSpectrogram(sampleRate = 8000) - // Add multiple frames of 700 Hz tone - for (i in 0..5) { - val buffer = FloatArray(256) { (sin(2.0 * PI * 700.0 * it / 8000.0)).toFloat() } - spec.addSamples(buffer) - } - val peakBin = spec.findPeakBin() - assertTrue("Peak bin should be >= 0, got $peakBin", peakBin >= 0) - } - - @Test - fun spectrogram_freqToBin_roundtrip() { - val spec = CwSpectrogram(sampleRate = 8000) - val freq = 700f - val bin = spec.freqToBin(freq) - val backFreq = spec.binToFreq(bin) - assertTrue("Freq $freq → bin $bin → freq $backFreq", backFreq > 600f && backFreq < 800f) - } - - @Test - fun spectrogram_getBinEnergy_returnsCorrectLength() { - val spec = CwSpectrogram(sampleRate = 8000) - val energy = spec.getBinEnergy(0, 10) - assertEquals(10, energy.size) - } - - @Test - fun spectrogram_reset() { - val spec = CwSpectrogram(sampleRate = 8000) - spec.addSamples(FloatArray(256) { 1f }) - spec.reset() - assertEquals(-1, spec.findPeakBin()) - } - - // --- Bayesian decoder --- - - @Test - fun bayesian_processTone_dit() { - val decoder = CwBayesianDecoder() - // At 20 WPM, dot = 60 ms - val result = decoder.processTone(60f) - assertEquals('0', result.symbol) - assertTrue("Dit probability should be positive", result.probability > 0.1f) - } - - @Test - fun bayesian_processTone_dash() { - val decoder = CwBayesianDecoder() - // Dash = 3 * dot = 180 ms - val result = decoder.processTone(180f) - assertEquals('1', result.symbol) - assertTrue("Dash probability should be positive", result.probability > 0.1f) - } - - @Test - fun bayesian_processTone_unknown_returnsNull() { - val decoder = CwBayesianDecoder() - // Very long tone — low probability for both dit and dash - val result = decoder.processTone(5000f) - assertNull(result.symbol) - } - - @Test - fun bayesian_processGap_interChar_returnsChar() { - val decoder = CwBayesianDecoder() - decoder.processTone(60f) // dit - decoder.processTone(60f) // dit - decoder.processTone(60f) // dit - // 3 dots = "000" = 'S' - val char = decoder.processGap(180f) // 3 * dot = inter-char gap - assertEquals('S', char) - } - - @Test - fun bayesian_processGap_wordGap_addsSpace() { - val decoder = CwBayesianDecoder() - decoder.processTone(60f) // dit = 'E' - decoder.processGap(180f) // inter-char gap - // Now word gap - val space = decoder.processGap(420f) // 7 * dot - assertEquals(' ', space) - } - - @Test - fun bayesian_decodedText_accumulates() { - val decoder = CwBayesianDecoder() - decoder.processTone(60f) // dit = 'E' - decoder.processGap(180f) // inter-char - assertTrue(decoder.decodedText.isNotEmpty()) - } - - @Test - fun bayesian_reset() { - val decoder = CwBayesianDecoder() - decoder.processTone(60f) - decoder.reset() - assertEquals("", decoder.decodedText) - } - - @Test - fun bayesian_getSpeed() { - val decoder = CwBayesianDecoder() - // Send 3 dits at 20 WPM (60 ms each) - decoder.processTone(60f) - decoder.processTone(60f) - decoder.processTone(60f) - val speed = decoder.getSpeed() - assertTrue("Speed should be ~20 WPM, got $speed", speed > 15f && speed < 30f) - } - - // --- Channel tracker --- - - @Test - fun channelTracker_initialState() { - val spec = CwSpectrogram(sampleRate = 8000) - val tracker = CwChannelTracker(spec) - val channels = tracker.update() - assertTrue("No channels should be active initially", channels.isEmpty()) - } - - @Test - fun channelTracker_detectsTone() { - val spec = CwSpectrogram(sampleRate = 8000) - // Feed a tone - for (i in 0..5) { - spec.addSamples(FloatArray(256) { (sin(2.0 * PI * 700.0 * it / 8000.0)).toFloat() }) - } - val tracker = CwChannelTracker(spec) - val channels = tracker.update() - assertTrue("Should detect at least 1 channel", channels.isNotEmpty()) - } - - @Test - fun channelTracker_bestChannel() { - val spec = CwSpectrogram(sampleRate = 8000) - for (i in 0..5) { - spec.addSamples(FloatArray(256) { (sin(2.0 * PI * 700.0 * it / 8000.0)).toFloat() }) - } - val tracker = CwChannelTracker(spec) - tracker.update() - val best = tracker.getBestChannel() - assertNotNull("Best channel should exist", best) - if (best != null) assertTrue(best.frequency in 600f..800f) - } - - @Test - fun channelTracker_reset() { - val spec = CwSpectrogram(sampleRate = 8000) - for (i in 0..5) { - spec.addSamples(FloatArray(256) { (sin(2.0 * PI * 700.0 * it / 8000.0)).toFloat() }) - } - val tracker = CwChannelTracker(spec) - tracker.update() - tracker.reset() - assertNull(tracker.getBestChannel()) - } - - // --- Full decoder --- - - @Test - fun decoder_initialState() { - val decoder = CwDecoder() - assertEquals("", decoder.decodedTextFlow.value) - assertEquals(0f, decoder.signalStrength.value, 0.001f) - } - - @Test - fun decoder_processSilence_doesNotCrash() { - val decoder = CwDecoder() - decoder.processBuffer(FloatArray(256) { 0f }) - assertEquals("", decoder.decodedTextFlow.value) - } - - @Test - fun decoder_processNoise_doesNotCrash() { - val decoder = CwDecoder() - decoder.processBuffer(FloatArray(256) { (Math.random() * 2 - 1).toFloat() * 0.1f }) - assertNotNull(decoder.decodedTextFlow.value) - } - - @Test - fun decoder_processTone_doesNotCrash() { - val decoder = CwDecoder() - for (i in 0..20) { - decoder.processBuffer(FloatArray(256) { (sin(2.0 * PI * 700.0 * it / 8000.0)).toFloat() }) - } - assertNotNull(decoder.decodedTextFlow.value) - } - - @Test - fun decoder_reset() { - val decoder = CwDecoder() - decoder.processBuffer(FloatArray(256) { 1f }) - decoder.resetDecoder() - assertEquals("", decoder.decodedTextFlow.value) - assertEquals(0f, decoder.signalStrength.value, 0.001f) - } - - @Test - fun decoder_withFixedPitch() { - val decoder = CwDecoder(sampleRate = 8000, cwToneFreq = 700f) - assertEquals(700f, decoder.estimatedPitch.value) - } -} \ No newline at end of file diff --git a/core/presentation/src/main/res/values-zh/strings.xml b/core/presentation/src/main/res/values-zh/strings.xml index 71f4e419..0b70c196 100644 --- a/core/presentation/src/main/res/values-zh/strings.xml +++ b/core/presentation/src/main/res/values-zh/strings.xml @@ -99,11 +99,6 @@ 偏移 (kHz) 线性转发器:输入一个频率即可算出另一个 - CW 解码器 - 开始 - 停止 - 清空 - 上一个 下一个 diff --git a/core/presentation/src/main/res/values/strings.xml b/core/presentation/src/main/res/values/strings.xml index c1069158..3f6df8bf 100644 --- a/core/presentation/src/main/res/values/strings.xml +++ b/core/presentation/src/main/res/values/strings.xml @@ -122,11 +122,6 @@ Offset (kHz) For linear transponders, type one frequency to see the other - CW Decoder - Start - Stop - Clear - Prev Next diff --git a/feature/cw/build.gradle.kts b/feature/cw/build.gradle.kts deleted file mode 100644 index 3a781ca9..00000000 --- a/feature/cw/build.gradle.kts +++ /dev/null @@ -1,38 +0,0 @@ -import com.android.build.api.dsl.LibraryExtension -import com.android.build.api.variant.CanProduceConsumerProguardFiles - -plugins { - alias(libs.plugins.convention.featurePlugin) -} - -android { - namespace = "com.rtbishop.look4sat.feature.cw" - compileOptions { - encoding = "UTF-8" - } - // 照搬 Morse Expert 1.15: native 解码器仅 armeabi-v7a - defaultConfig { - ndk { - abiFilters += listOf("armeabi-v7a") - } - } -} - -// CW 类保持规则(JNI 按类名注册 + 照搬混淆类保逻辑), 由 app 的 R8 消费 -// AGP 9: consumer 规则走 variant 级 CanProduceConsumerProguardFiles -androidComponents { - onVariants(selector().all()) { variant -> - (variant as? CanProduceConsumerProguardFiles)?.consumerProguardFiles?.add( - project.layout.projectDirectory.file("proguard-rules.pro") - ) - } -} - -dependencies { - implementation("androidx.constraintlayout:constraintlayout:2.2.1") -} - -// 照搬的 Java 源码含中文注释, 强制 UTF-8 编译(compileOptions 在部分 AGP 版本不生效) -tasks.withType().configureEach { - options.encoding = "UTF-8" -} diff --git a/feature/cw/proguard-rules.pro b/feature/cw/proguard-rules.pro deleted file mode 100644 index 28fe39ab..00000000 --- a/feature/cw/proguard-rules.pro +++ /dev/null @@ -1,31 +0,0 @@ -# Look4Sat Pro — CW 解码模块(照搬 Morse Expert 1.15)混淆规则 -# 所有 CW 类保持原名: pas.* 通过 RegisterNatives 按类名注册 JNI(混淆即崩); -# 其余为照搬的混淆名类(命名已无混淆意义, 保持以保逻辑完整)。 - -# JNI 引擎(RegisterNatives 按类名/方法名查表) --keep class pas.** { *; } - -# 照搬的解码/UI 类(全部保持) --keep class com.ve3nea.morse_expert.** { *; } --keep class H2.** { *; } --keep class I2.b { *; } --keep class J2.** { *; } --keep class k3.** { *; } --keep class i3.** { *; } --keep class g3.** { *; } --keep class j3.** { *; } --keep class s.** { *; } --keep class d1.AbstractC1518b { *; } --keep class B0.b { *; } --keep class B.RunnableC0001b { *; } --keep class D.n { *; } --keep class E2.g { *; } --keep class F2.a { *; } --keep class I0.d { *; } --keep class K1.a { *; } --keep class j1.C1646n { *; } - -# sun.misc stub(Android 无此类, 仅编译期; 防止 R8 异常处理) --dontwarn sun.misc.** --keep class sun.misc.Unsafe { *; } --keep class sun.misc.Cleaner { *; } diff --git a/feature/cw/src/main/java/B/RunnableC0001b.java b/feature/cw/src/main/java/B/RunnableC0001b.java deleted file mode 100644 index a5d5ea58..00000000 --- a/feature/cw/src/main/java/B/RunnableC0001b.java +++ /dev/null @@ -1,63 +0,0 @@ -package B; - -import android.text.SpannableStringBuilder; -import com.ve3nea.morse_expert.DecodedTextView; -import com.ve3nea.morse_expert.MainActivity; -import H2.b; - -/** - * 照搬自 Morse Expert 1.15 B.RunnableC0001b, 类名保持混淆原名。 - * R8 合并 Runnable 手术: 构造按 smali 真实签名 5 参 (Object,Object,int,int,boolean), - * 字段 = i(Object)/h(Object)/g(int)/f(int); run() 仅保留 case 4(f==2 对应 pswitch_4: - * 解码文本 UI 更新, H2.b 调用), 其余 case(权限/Intent/通知等库代码)已裁剪。 - * 注: jadx 4 参构造为错误还原, 已按 smali 修正。 - */ -public final class RunnableC0001b implements Runnable { - public final /* synthetic */ int f; - - /* renamed from: g, reason: collision with root package name */ - public final int g; - - /* renamed from: h, reason: collision with root package name */ - public final Object h; - - /* renamed from: i, reason: collision with root package name */ - public final Object i; - - public /* synthetic */ RunnableC0001b(Object obj, Object obj2, int i4, int i5, boolean z) { - this.i = obj; - this.h = obj2; - this.g = i4; - this.f = i5; - } - - @Override // java.lang.Runnable - public final void run() { - if (this.f == 2) { - MainActivity mainActivity = ((b) this.i).f620p; - if (mainActivity != null) { - SpannableStringBuilder spannableStringBuilder = (SpannableStringBuilder) this.h; - int i5 = this.g; - DecodedTextView decodedTextView = (DecodedTextView) mainActivity.f11035D.f11888g; - if (!decodedTextView.f11032n && !decodedTextView.f11033o.get()) { - decodedTextView.beginBatchEdit(); - try { - int length2 = decodedTextView.length(); - int min = Math.min(length2, i5); - if (min > 0) { - decodedTextView.getEditableText().delete(length2 - min, length2); - } - decodedTextView.q(spannableStringBuilder); - decodedTextView.endBatchEdit(); - return; - } catch (Throwable th) { - decodedTextView.endBatchEdit(); - throw th; - } - } - return; - } - return; - } - } -} diff --git a/feature/cw/src/main/java/B0/b.java b/feature/cw/src/main/java/B0/b.java deleted file mode 100644 index bbaba882..00000000 --- a/feature/cw/src/main/java/B0/b.java +++ /dev/null @@ -1,61 +0,0 @@ -package B0; - -import android.widget.TextView; -import com.ve3nea.morse_expert.MainActivity; -import com.ve3nea.morse_expert.ScaleView; -import java.util.Locale; -import d1.AbstractC1518b; - -/** - * 照搬自 Morse Expert 1.15 B0.b, 类名保持混淆原名。 - * R8 合并 Runnable 手术: 构造按 smali 真实签名 (H2/b, String, [I) -> f=4; - * 只保留 case 4(状态栏更新: dBFS/Hz/dB/WPM + ScaleView 频率标记, H2.b 调用), - * 其余 case(WorkManager/动画等库代码)已裁剪。 - * r3 = scaleView.getHeight()(smali 证实, jadx 寄存器未展开)。 - */ -public final class b implements Runnable { - public final /* synthetic */ int f; - - /* renamed from: g, reason: collision with root package name */ - public final Object g; - - /* renamed from: h, reason: collision with root package name */ - public final Object h; - - /* renamed from: i, reason: collision with root package name */ - public final Object i; - - public b(H2.b bVar, String str, int[] iArr) { - this.f = 4; - this.g = bVar; - this.h = iArr; - this.i = str; - } - - @Override // java.lang.Runnable - public final void run() { - if (this.f == 4) { - MainActivity mainActivity = ((H2.b) this.g).f621q; - if (mainActivity != null) { - String str2 = (String) this.i; - int[] iArr = (int[]) this.h; - String concat; - String format = String.format(Locale.US, " %3d dBFS", Integer.valueOf(iArr[0])); - if (iArr[5] == 0) { - concat = format.concat(" Idle "); - } else { - concat = format.concat(String.format(Locale.US, " %4d Hz %2d dB %2d WPM ", Integer.valueOf(iArr[1]), Integer.valueOf(iArr[2]), Integer.valueOf(iArr[3]))); - } - ((TextView) mainActivity.f11035D.f11890i).setText(AbstractC1518b.e(concat, str2)); - ScaleView scaleView = (ScaleView) mainActivity.f11035D.f11889h; - int i4 = iArr[1]; - scaleView.f11041g = iArr[5]; - // r3 = scaleView.getHeight()(smali 证实) - scaleView.f = (scaleView.getHeight() - 1) - Math.round(((Math.round(i4 * 0.128f) - H2.b.f606z) * scaleView.getHeight()) / H2.b.f603B); - scaleView.invalidate(); - return; - } - return; - } - } -} diff --git a/feature/cw/src/main/java/D/n.java b/feature/cw/src/main/java/D/n.java deleted file mode 100644 index ddb2a7e2..00000000 --- a/feature/cw/src/main/java/D/n.java +++ /dev/null @@ -1,69 +0,0 @@ -package D; - -import android.graphics.Bitmap; -import android.opengl.GLES20; -import android.opengl.GLUtils; -import com.ve3nea.morse_expert.WaterfallSurfaceView; - -/** - * 照搬自 Morse Expert 1.15, 类名保持混淆原名。 - * R8 合并 Runnable 手术: 只保留 case 1(瀑布图频谱->OpenGL 纹理, H2.b 调用), - * 其余 case(库/广告)已裁剪。 - */ -public final /* synthetic */ class n implements Runnable { - public final /* synthetic */ int f; - - /* renamed from: g, reason: collision with root package name */ - public final /* synthetic */ Object f224g; - - /* renamed from: h, reason: collision with root package name */ - public final /* synthetic */ Object f225h; - - public /* synthetic */ n(Object obj, int i4, Object obj2) { - this.f = i4; - this.f224g = obj; - this.f225h = obj2; - } - - @Override // java.lang.Runnable - public final void run() { - int i4 = this.f; - Object obj = this.f225h; - Object obj2 = this.f224g; - if (i4 == 1) { - float[] fArr = (float[]) obj; - J2.b bVar = ((WaterfallSurfaceView) obj2).f; - Bitmap bitmap = bVar.f733h; - int width = bVar.f730d.getWidth(); - double d4 = width; - double b4 = (bVar.b() + 4.0d) % d4; - double d5 = bVar.f737l - b4; - if (d5 > d4 / 2.0d) { - d5 -= d4; - } else if (d5 < (-width) / 2.0d) { - d5 += d4; - } - if (Math.abs(d5) > 8.0d) { - bVar.f737l = (int) Math.floor(b4); - } else { - bVar.f732g = (d5 * 1.0E-5d) + bVar.f732g; - } - int height = bitmap.getHeight() - 1; - for (int i5 = 0; i5 <= height; i5++) { - J2.a aVar = bVar.f734i; - int round = Math.round((fArr[i5] * 4.0f) + 30.0f); - aVar.getClass(); - bitmap.setPixel(0, height - i5, aVar.f727a[Math.max(0, Math.min(255, round))]); - } - int i6 = bVar.f737l; - GLES20.glBindTexture(3553, bVar.f728a[0]); - J2.b.a(); - GLUtils.texSubImage2D(3553, 0, i6, 0, bitmap); - J2.b.a(); - int i7 = bVar.f737l + 1; - bVar.f737l = i7; - bVar.f737l = i7 % width; - return; - } - } -} diff --git a/feature/cw/src/main/java/E2/g.java b/feature/cw/src/main/java/E2/g.java deleted file mode 100644 index 5f836223..00000000 --- a/feature/cw/src/main/java/E2/g.java +++ /dev/null @@ -1,44 +0,0 @@ -package E2; - -import android.util.Log; -import android.view.MotionEvent; -import android.view.View; -import com.ve3nea.morse_expert.MainActivity; -import com.ve3nea.morse_expert.ScaleView; - -/** - * 照搬自 Morse Expert 1.15 (com.ve3nea.morse_expert), 类名保持混淆原名。 - * R8 合并类手术: 只保留 case 1(瀑布图触摸选频率=应用逻辑), - * 其余 case(广告 P4 / appcompat 焦点 / 弹窗)为库代码, 已裁剪。 - */ -public final class g implements View.OnTouchListener { - public final /* synthetic */ int f; - - /* renamed from: g, reason: collision with root package name */ - public final /* synthetic */ Object f411g; - - public /* synthetic */ g(Object obj, int i4) { - this.f = i4; - this.f411g = obj; - } - - @Override // android.view.View.OnTouchListener - public final boolean onTouch(View view, MotionEvent motionEvent) { - int i4 = this.f; - Object obj = this.f411g; - if (i4 == 1) { - MainActivity mainActivity = (MainActivity) obj; - if (motionEvent.getActionMasked() == 0 && mainActivity.f11037F != null) { - // smali 证实: p1 先被重赋值为 f11035D.h(ScaleView)再 getHeight; - // 公式 = round((f606z + ((scaleH-1-y)*f603B/scaleH)) / 0.128f) - ScaleView scaleView = (ScaleView) mainActivity.f11035D.f11889h; - float y3 = motionEvent.getY(); - int round = Math.round((H2.b.f606z + ((((scaleView.getHeight() - 1) - y3) * H2.b.f603B) / scaleView.getHeight())) / 0.128f); - mainActivity.f11037F.f622r.set(round); - Log.i("Waterfall", String.format("Touch at %d Hz`", Integer.valueOf(round))); - } - return false; - } - return false; - } -} diff --git a/feature/cw/src/main/java/F2/a.java b/feature/cw/src/main/java/F2/a.java deleted file mode 100644 index 6f2bc8b2..00000000 --- a/feature/cw/src/main/java/F2/a.java +++ /dev/null @@ -1,53 +0,0 @@ -package F2; - -import com.rtbishop.look4sat.feature.cw.R; -import android.view.ActionMode; -import android.view.Menu; -import android.view.MenuItem; -import com.ve3nea.morse_expert.DecodedTextView; - -/* loaded from: classes.dex */ -public final class a implements ActionMode.Callback { - - /* renamed from: a, reason: collision with root package name */ - public final /* synthetic */ DecodedTextView f564a; - - public a(DecodedTextView decodedTextView) { - this.f564a = decodedTextView; - } - - @Override // android.view.ActionMode.Callback - public final boolean onActionItemClicked(ActionMode actionMode, MenuItem menuItem) { - int itemId = menuItem.getItemId(); - DecodedTextView decodedTextView = this.f564a; - if (itemId != 73) { - if (itemId != 74) { - return false; - } - decodedTextView.s(); - return true; - } - decodedTextView.r(); - actionMode.finish(); - return true; - } - - @Override // android.view.ActionMode.Callback - public final boolean onCreateActionMode(ActionMode actionMode, Menu menu) { - this.f564a.f11032n = true; - // 原: if (menu.findItem(R.id.shareText) == null) 检查(shareText 为原 APK 资源, 简化后始终添加) - menu.add(0, 74, 0, "Share").setIcon(R.drawable.ic_baseline_share_24); - menu.add(0, 73, 0, "Save").setIcon(R.drawable.ic_baseline_save_24); - return true; - } - - @Override // android.view.ActionMode.Callback - public final void onDestroyActionMode(ActionMode actionMode) { - this.f564a.f11032n = false; - } - - @Override // android.view.ActionMode.Callback - public final boolean onPrepareActionMode(ActionMode actionMode, Menu menu) { - return false; - } -} diff --git a/feature/cw/src/main/java/H2/a.java b/feature/cw/src/main/java/H2/a.java deleted file mode 100644 index 670423ad..00000000 --- a/feature/cw/src/main/java/H2/a.java +++ /dev/null @@ -1,82 +0,0 @@ -package H2; - -import android.media.AudioRecord; -import android.util.Log; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; -import java.util.concurrent.TimeUnit; -import java.util.concurrent.atomic.AtomicBoolean; - -/* loaded from: classes.dex */ -public final class a implements Runnable { - public final int f; - - /* renamed from: g, reason: collision with root package name */ - public final AudioRecord f596g; - - /* renamed from: h, reason: collision with root package name */ - public final ExecutorService f597h; - - /* renamed from: i, reason: collision with root package name */ - public final AtomicBoolean f598i; - - /* renamed from: j, reason: collision with root package name */ - public final short[] f599j; - - /* renamed from: k, reason: collision with root package name */ - public final float[] f600k; - - /* renamed from: l, reason: collision with root package name */ - public b f601l; - - public a() { - int minBufferSize = AudioRecord.getMinBufferSize(8000, 16, 2); - int i4 = b.f604C; - this.f = i4; - ExecutorService newSingleThreadExecutor = Executors.newSingleThreadExecutor(); - this.f597h = newSingleThreadExecutor; - AtomicBoolean atomicBoolean = new AtomicBoolean(false); - this.f598i = atomicBoolean; - this.f599j = new short[i4]; - this.f600k = new float[i4]; - AudioRecord audioRecord = new AudioRecord(1, 8000, 16, 2, minBufferSize * 4); - this.f596g = audioRecord; - if (audioRecord.getState() == 1) { - audioRecord.startRecording(); - if (audioRecord.getState() != 1) { - Log.e("AudioRecord", "cannot start"); - } - atomicBoolean.set(true); - newSingleThreadExecutor.execute(this); - return; - } - Log.e("AudioInput", "Failed to initialize"); - } - - @Override // java.lang.Runnable - public final void run() { - while (true) { - try { - if (this.f598i.get()) { - float[] fArr = this.f600k; - AudioRecord audioRecord = this.f596g; - short[] sArr = this.f599j; - int i4 = this.f; - if (audioRecord.read(sArr, 0, i4) == i4) { - for (int i5 = 0; i5 < i4; i5++) { - fArr[i5] = sArr[i5] / 32768.0f; - } - b bVar = this.f601l; - if (bVar != null) { - bVar.a(fArr); - } - } - } else { - TimeUnit.MILLISECONDS.sleep(100L); - } - } catch (Exception e4) { - Log.e("Audio thread", "Exception: ", e4); - } - } - } -} diff --git a/feature/cw/src/main/java/H2/b.java b/feature/cw/src/main/java/H2/b.java deleted file mode 100644 index 3012a6b3..00000000 --- a/feature/cw/src/main/java/H2/b.java +++ /dev/null @@ -1,582 +0,0 @@ -package H2; - -import B.RunnableC0001b; -import D.n; -import android.content.Context; -import android.media.MediaScannerConnection; -import android.os.Handler; -import android.os.Looper; -import android.text.SpannableStringBuilder; -import android.text.format.DateFormat; -import android.text.style.ForegroundColorSpan; -import android.util.Log; -import com.ve3nea.morse_expert.MainActivity; -import com.ve3nea.morse_expert.WaterfallSurfaceView; -import i3.d; -import java.io.BufferedOutputStream; -import java.io.DataOutputStream; -import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; -import java.util.Arrays; -import java.util.Date; -import java.util.concurrent.atomic.AtomicBoolean; -import java.util.concurrent.atomic.AtomicInteger; -import k3.s; -import pas.decoder; -import pas.nativedecoder; - -/* loaded from: classes.dex */ -public final class b { - - /* renamed from: A, reason: collision with root package name */ - public static final int f602A; - - /* renamed from: B, reason: collision with root package name */ - public static final int f603B; - - /* renamed from: C, reason: collision with root package name */ - public static final int f604C; - - /* renamed from: D, reason: collision with root package name */ - public static final d f605D; - - /* renamed from: z, reason: collision with root package name */ - public static final int f606z; - - /* renamed from: a, reason: collision with root package name */ - public final float[] f607a; - - /* renamed from: b, reason: collision with root package name */ - public final float[] f608b; - public final float[] c; - - /* renamed from: d, reason: collision with root package name */ - public final float[] f609d; - - /* renamed from: e, reason: collision with root package name */ - public final nativedecoder.TNativeDecoder f610e; - public int f; - - /* renamed from: g, reason: collision with root package name */ - public int f611g; - - /* renamed from: h, reason: collision with root package name */ - public int f612h; - - /* renamed from: i, reason: collision with root package name */ - public decoder.TDecoderState f613i; - - /* renamed from: j, reason: collision with root package name */ - public String f614j; - - /* renamed from: k, reason: collision with root package name */ - public final c f615k; - - /* renamed from: l, reason: collision with root package name */ - public int f616l; - - /* renamed from: m, reason: collision with root package name */ - public final I2.b f617m; - - /* renamed from: n, reason: collision with root package name */ - public final Handler f618n; - - /* renamed from: o, reason: collision with root package name */ - public WaterfallSurfaceView f619o; - - /* renamed from: p, reason: collision with root package name */ - public MainActivity f620p; - - /* renamed from: q, reason: collision with root package name */ - public MainActivity f621q; - - /* renamed from: r, reason: collision with root package name */ - public final AtomicInteger f622r; - - /* renamed from: s, reason: collision with root package name */ - public final AtomicBoolean f623s; - - /* renamed from: t, reason: collision with root package name */ - public final Context f624t; - - /* renamed from: u, reason: collision with root package name */ - public int f625u; - - /* renamed from: v, reason: collision with root package name */ - public final AtomicBoolean f626v; - - /* renamed from: w, reason: collision with root package name */ - public DataOutputStream f627w; - - /* renamed from: x, reason: collision with root package name */ - public int f628x; - - /* renamed from: y, reason: collision with root package name */ - public String f629y; - - /* JADX WARN: Removed duplicated region for block: B:14:0x012d */ - /* JADX WARN: Type inference failed for: r0v4, types: [i3.d, java.lang.Object] */ - static { - boolean z3; - float f; - float f4; - float f5; - int round = Math.round(25.6f); - f606z = round; - int round2 = Math.round(153.6f); - f602A = round2; - f603B = round2 - round; - f604C = Math.round(85.333336f); - i3.d obj = new i3.d(); - if (2048 > 1073741824) { - z3 = true; - } else { - z3 = false; - } - obj.f11709l = z3; - int i4 = (int) 1024; - obj.f11700a = i4; - obj.f11701b = 1024L; - if (!z3) { - obj.f11708k = 1; - int[] iArr = new int[((int) g3.c.a((1 << (((int) (g3.c.d(((float) 1024) + 0.5f) / g3.c.d(2.0d))) / 2)) + 2)) + 2]; - obj.c = iArr; - float[] fArr = new float[i4]; - obj.f11703e = fArr; - int i5 = (i4 * 2) >> 2; - obj.f11704g = i5; - iArr[0] = i5; - iArr[1] = 1; - if (i5 > 2) { - int i6 = i5 >> 1; - float f6 = 0.7853982f / i6; - float f7 = 2.0f * f6; - float b4 = (float) g3.c.b(i6 * f6); // r9 = i6 (smali) - fArr[0] = 1.0f; - fArr[1] = b4; - if (i6 == 4) { - double d4 = f7; - f4 = 0.5f; - fArr[2] = (float) g3.c.b(d4); - fArr[3] = (float) g3.c.f(d4); - } else { - f4 = 0.5f; - if (i6 > 4) { - iArr[2] = 0; - iArr[3] = 16; - int i7 = i5; - int i8 = 2; - f5 = 1.0f; - while (i7 > 32) { - int i9 = i8 << 1; - int i10 = i8 << 4; - for (int i11 = i8; i11 < i9; i11++) { - int i12 = iArr[i11] << 2; - iArr[i8 + i11] = i12; - iArr[i9 + i11] = i12 + i10; - } - i7 >>= 2; - i8 = i9; - } - fArr[2] = 0.5f / ((float) g3.c.b(f7)); - fArr[3] = 0.5f / ((float) g3.c.b(6.0f * f6)); - for (int i13 = 4; i13 < i6; i13 += 4) { - float f8 = i13 * f6; - double d5 = f8; - fArr[i13] = (float) g3.c.b(d5); - fArr[i13 + 1] = (float) g3.c.f(d5); - double d6 = 3.0f * f8; - fArr[i13 + 2] = (float) g3.c.b(d6); - fArr[i13 + 3] = -((float) g3.c.f(d6)); - } - int i14 = 0; - while (i6 > 2) { - int i15 = i14 + i6; - i6 >>= 1; - fArr[i15] = f5; - fArr[i15 + 1] = b4; - if (i6 == 4) { - float f9 = fArr[i14 + 4]; - float f10 = fArr[i14 + 5]; - fArr[i15 + 2] = f9; - fArr[i15 + 3] = f10; - } else if (i6 > 4) { - float f11 = fArr[i14 + 4]; - float f12 = fArr[i14 + 6]; - fArr[i15 + 2] = f4 / f11; - fArr[i15 + 3] = f4 / f12; - for (int i16 = 4; i16 < i6; i16 += 4) { - int i17 = (i16 * 2) + i14; - int i18 = i15 + i16; - float f13 = fArr[i17]; - float f14 = fArr[i17 + 1]; - float f15 = fArr[i17 + 2]; - float f16 = fArr[i17 + 3]; - fArr[i18] = f13; - fArr[i18 + 1] = f14; - fArr[i18 + 2] = f15; - fArr[i18 + 3] = f16; - } - } - i14 = i15; - } - } - } - f5 = 1.0f; - int i142 = 0; - while (i6 > 2) { - } - } - int i19 = i4 >> 2; - obj.f11706i = i19; - iArr[1] = i19; - if (i19 > 1) { - int i20 = i19 >> 1; - float f17 = 0.7853982f / i20; - float b5 = (float) g3.c.b(i20 * f17); // r6 = i20 (smali) - fArr[i5] = b5; - fArr[i5 + i20] = b5 * 0.5f; - for (int i21 = 1; i21 < i20; i21++) { - double d7 = i21 * f17; - fArr[i5 + i21] = ((float) g3.c.b(d7)) * 0.5f; - fArr[(i5 + i19) - i21] = ((float) g3.c.f(d7)) * 0.5f; - } - } - } else { - obj.f11708k = 1; - s sVar = new s(((long) g3.c.a((1 << ((int) (((long) (g3.c.d(((float) 1024) + 0.5f) / g3.c.d(2.0d))) / 2))) + 2)) + 2, true); - obj.f11702d = sVar; - k3.d dVar = new k3.d(1024L, true); - obj.f = dVar; - obj.f11705h = 512L; - sVar.c(0L, 512L); - sVar.c(1L, 1L); - if (512 > 2) { - long j4 = 512 >> 1; - float f18 = 0.7853982f / ((float) j4); - float f19 = f18 * 2.0f; - float b6 = (float) g3.c.b(j4 * f18); // r14 = j4 (smali 同模式) - dVar.c(0L, 1.0f); - dVar.c(1L, b6); - if (j4 == 4) { - f = 0.5f; - double d8 = f19; - dVar.c(2L, (float) g3.c.b(d8)); - dVar.c(3L, (float) g3.c.f(d8)); - } else { - f = 0.5f; - if (j4 > 4) { - sVar.c(2L, 0L); - sVar.c(3L, 16L); - long j5 = 2; - long j6 = 512; - while (j6 > 32) { - long j7 = j5 << 1; - long j8 = j5 << 4; - long j9 = j5; - while (j9 < j7) { - long b7 = sVar.b(j9) << 2; - sVar.c(j5 + j9, b7); - sVar.c(j7 + j9, b7 + j8); - j9++; - f19 = f19; - } - j6 >>= 2; - j5 = j7; - } - dVar.c(2L, 0.5f / ((float) g3.c.b(f19))); - dVar.c(3L, 0.5f / ((float) g3.c.b(6.0f * f18))); - long j10 = 4; - while (j10 < j4) { - float f20 = ((float) j10) * f18; - double d9 = f20; - dVar.c(j10, (float) g3.c.b(d9)); - dVar.c(j10 + 1, (float) g3.c.f(d9)); - double d10 = 3.0f * f20; - long j11 = j10; - dVar.c(j10 + 2, (float) g3.c.b(d10)); - dVar.c(j11 + 3, -((float) g3.c.f(d10))); - j10 = j11 + 4; - } - } - } - long j12 = 0; - long j13 = 2; - while (j4 > j13) { - long j14 = j12 + j4; - j4 >>= 1; - dVar.c(j14, 1.0f); - dVar.c(j14 + 1, b6); - if (j4 == 4) { - float b8 = dVar.b(j12 + 4); - float b9 = dVar.b(j12 + 5); - j13 = 2; - dVar.c(j14 + 2, b8); - dVar.c(j14 + 3, b9); - } else { - j13 = 2; - if (j4 > 4) { - float b10 = dVar.b(j12 + 4); - float b11 = dVar.b(6 + j12); - dVar.c(j14 + 2, f / b10); - dVar.c(j14 + 3, f / b11); - long j15 = 4; - while (j15 < j4) { - long j16 = (j15 * 2) + j12; - float f21 = b6; - long j17 = j14 + j15; - long j18 = j12; - float b12 = dVar.b(j16); - long j19 = j14; - float b13 = dVar.b(j16 + 1); - float b14 = dVar.b(j16 + 2); - float b15 = dVar.b(j16 + 3); - dVar.c(j17, b12); - dVar.c(j17 + 1, b13); - dVar.c(j17 + 2, b14); - dVar.c(j17 + 3, b15); - j15 += 4; - b6 = f21; - j12 = j18; - j14 = j19; - } - } - } - b6 = b6; - j12 = j14; - } - } - long j20 = 256; - obj.f11707j = 256L; - long j21 = 1; - sVar.c(1L, 256L); - if (256 > 1) { - long j22 = 256 >> 1; - float f22 = 0.7853982f / ((float) j22); - long j23 = 512; - dVar.c(512L, (float) g3.c.b(j22 * f22)); // r1 = j22 (smali) - dVar.c(512 + j22, dVar.b(512L) * 0.5f); - long j24 = 1; - while (j24 < j22) { - long j25 = j20; - long j26 = j21; - double d11 = ((float) j24) * f22; - long j27 = j23; - dVar.c(j23 + j24, ((float) g3.c.b(d11)) * 0.5f); - dVar.c((j27 + j25) - j24, ((float) g3.c.f(d11)) * 0.5f); - j24 += j26; - j20 = j25; - j21 = j26; - j23 = j27; - } - } - } - f605D = obj; - } - - public b(Context context) { - float[] fArr = new float[1024]; - fArr[512] = 1.0f; - for (int i4 = 1; i4 < 512; i4++) { - double d4 = (i4 * 6.283185307179586d) / 1024; - float cos = (float) ((Math.cos(d4 * 2.0d) * 0.08d) + (0.42d - (Math.cos(d4) * 0.5d))); - fArr[i4] = cos; - double d5 = 0.003125f * 6.283185307179586d * (i4 - 512); - float sin = (float) ((Math.sin(d5) / d5) * cos); - fArr[i4] = sin; - fArr[1024 - i4] = sin; - } - this.f607a = fArr; - this.f608b = new float[1024]; - this.c = new float[1024]; - this.f609d = new float[f603B]; - this.f610e = nativedecoder.TNativeDecoder.Create(); - this.f614j = ""; - this.f615k = new c(4000, 0); - I2.b bVar = new I2.b(); - this.f617m = bVar; - this.f618n = new Handler(Looper.getMainLooper()); - this.f622r = new AtomicInteger(); - this.f623s = new AtomicBoolean(false); - this.f625u = 0; - this.f626v = new AtomicBoolean(false); - this.f628x = 0; - this.f624t = context; - bVar.b(context); - } - - /* JADX WARN: Removed duplicated region for block: B:57:0x01e2 */ - /* JADX WARN: Removed duplicated region for block: B:63:0x020a A[LOOP:6: B:62:0x0208->B:63:0x020a, LOOP_END] */ - /* JADX WARN: Removed duplicated region for block: B:66:0x0216 A[LOOP:7: B:65:0x0214->B:66:0x0216, LOOP_END] */ - /* JADX WARN: Removed duplicated region for block: B:70:0x0232 */ - /* JADX WARN: Removed duplicated region for block: B:73:? A[RETURN, SYNTHETIC] */ - /* - Code decompiled incorrectly, please refer to instructions dump. - */ - public final void a(float[] fArr) { - c cVar; - float[] fArr2; - float[] fArr3; - b bVar; - Exception exc; - int i4; - float f; - int i5; - WaterfallSurfaceView waterfallSurfaceView; - int length = fArr.length; - int i6 = 0; - while (true) { - cVar = this.f615k; - if (i6 >= length) { - break; - } - cVar.c(Math.abs(fArr[i6])); - i6++; - } - this.f616l = Math.round(((float) Math.log10(Math.max(-0.5d, cVar.f633e))) * 20.0f); - int i7 = f604C; - int i8 = 1024 - i7; - float[] fArr4 = this.f608b; - System.arraycopy(fArr4, i7, fArr4, 0, i8); - System.arraycopy(fArr, 0, fArr4, i8, i7); - int i9 = 0; - while (true) { - fArr2 = this.c; - if (i9 >= 1024) { - break; - } - fArr2[i9] = fArr4[i9] * this.f607a[i9]; - i9++; - } - f605D.k(fArr2, 0); - int i10 = f606z; - int i11 = i10; - while (true) { - int i12 = f602A; - float f4 = 0.0f; - fArr3 = this.f609d; - if (i11 < i12) { - int i13 = i11 * 2; - float f5 = fArr2[i13]; - float f6 = fArr2[i13 + 1]; - float f7 = ((f6 * f6) + (f5 * f5)) * 0.001f; - if (!Float.isNaN(f7)) { - f4 = f7; - } - fArr3[i11 - i10] = f4; - i11++; - } else { - // smali: 循环内无 try; 录音写入 try 在循环后(见下) - break; - } - } - DataOutputStream dataOutputStream = this.f627w; - Context context = this.f624t; - AtomicBoolean atomicBoolean = this.f626v; - try { // smali try_start_0: 录音写入整块(原 jadx 误把 try 放 break 处) - if (dataOutputStream == null && atomicBoolean.get()) { - File file = new File(context.getExternalFilesDir(null), ((String) DateFormat.format("yyyy-MM-dd_HH_mm_ss", new Date())) + "_spectra.bin"); - this.f629y = file.getAbsoluteFile().toString(); - this.f627w = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(file, false))); - this.f628x = 0; - this.f614j = " Recording..."; - } - if (this.f627w != null) { - for (float f8 : fArr3) { - this.f627w.writeFloat(f8); - } - } - if (atomicBoolean.get()) { - int i14 = this.f628x + 1; - this.f628x = i14; - if (i14 >= 2048) { - atomicBoolean.set(false); - this.f627w.close(); - this.f627w = null; - this.f614j = ""; - MediaScannerConnection.scanFile(context, new String[]{this.f629y}, new String[]{"application/x-binary"}, null); - } - } - } catch (IOException e4) { - Log.e("File write", "Exception: ", e4); - } - nativedecoder.TNativeDecoder tNativeDecoder = this.f610e; - try { - this.f613i = tNativeDecoder.ProcessSpectrum(fArr3); - int i15 = this.f625u + 1; - this.f625u = i15; - Handler handler = this.f618n; - if (i15 == 15) { - try { - this.f625u = 0; - this.f = tNativeDecoder.getPitch(); - this.f611g = tNativeDecoder.getSnr(); - this.f612h = tNativeDecoder.getWpm(); - handler.post(new B0.b(this, this.f614j, new int[]{this.f616l, this.f, this.f611g, this.f612h, tNativeDecoder.getSignalCount(), this.f613i.Value})); - AtomicInteger atomicInteger = this.f622r; - int i16 = atomicInteger.get(); - if (i16 != 0) { - tNativeDecoder.LockToPitch(i16); - atomicInteger.set(0); - } - tNativeDecoder.setHamMode(this.f623s.get()); - } catch (Exception e5) { - // jadx 幻觉区(空循环/空 if 为 catch 错位还原)已裁剪; 原 smali: 记录异常后跳回正常流程尾部 - exc = e5; - bVar = this; - Log.e("Audio Processor", "Exception", exc); - } - } - int charCount = tNativeDecoder.getCharCount(); - if (charCount > 0) { - SpannableStringBuilder spannableStringBuilder = new SpannableStringBuilder(); - int i18 = 0; - while (i18 < charCount) { - decoder.TCharInfo GetChar = tNativeDecoder.GetChar(i18); - spannableStringBuilder.append(GetChar.getChar()); - ForegroundColorSpan foregroundColorSpan = new ForegroundColorSpan(this.f617m.a(GetChar)); - int i19 = i18 + 1; - spannableStringBuilder.setSpan(foregroundColorSpan, i18, i19, 33); - i18 = i19; - } - bVar = this; - try { - handler.post(new RunnableC0001b(bVar, spannableStringBuilder, tNativeDecoder.getDeleteCount(), 2, false)); - } catch (Exception e6) { - // jadx 幻觉区已裁剪(同 catch e5); 原 smali: 记录异常后跳回正常流程尾部 - exc = e6; - Log.e("Audio Processor", "Exception", exc); - } - } else { - bVar = this; - } - } catch (Exception e7) { - // jadx 幻觉(e 变量)已裁剪 - bVar = this; - } - i4 = f603B; - int i1722 = i4 / 2; - float[] copyOfRange22 = Arrays.copyOfRange(fArr3, i1722 - 20, i1722 + 20); - Arrays.sort(copyOfRange22); - f = copyOfRange22[20]; - if (f > 0.0f) { - for (int i20 = 0; i20 < i4; i20++) { - fArr3[i20] = fArr3[i20] / f; - } - } - float[] fArr522 = (float[]) fArr3.clone(); - new c(12, 1).a(fArr522); - new c(12, 0).a(fArr522); - for (i5 = 0; i5 < i4; i5++) { - fArr3[i5] = fArr3[i5] - fArr522[i5]; - } - for (int i21 = 0; i21 < i4; i21++) { - fArr3[i21] = ((float) Math.log10(Math.max(-0.5d, fArr3[i21]) + 1.0d)) * 10.0f; - } - waterfallSurfaceView = bVar.f619o; - if (waterfallSurfaceView != null) { - waterfallSurfaceView.queueEvent(new n(waterfallSurfaceView, 1, (float[]) fArr3.clone())); - } - } -} diff --git a/feature/cw/src/main/java/H2/c.java b/feature/cw/src/main/java/H2/c.java deleted file mode 100644 index a3de54f4..00000000 --- a/feature/cw/src/main/java/H2/c.java +++ /dev/null @@ -1,89 +0,0 @@ -package H2; - -/* loaded from: classes.dex */ -public final class c { - - /* renamed from: a, reason: collision with root package name */ - public final int f630a; - - /* renamed from: b, reason: collision with root package name */ - public float[] f631b; - public int c; - - /* renamed from: d, reason: collision with root package name */ - public float f632d; - - /* renamed from: e, reason: collision with root package name */ - public float f633e; - public final /* synthetic */ int f; - - public c(int i4, int i5) { - this.f = i5; - this.f630a = i4 - 1; - } - - public final void a(float[] fArr) { - int i4 = this.f630a / 2; - int length = fArr.length; - if (length > i4) { - this.f631b = null; - for (int i5 = 0; i5 < i4; i5++) { - c(fArr[i5]); - } - for (int i6 = i4; i6 < length; i6++) { - fArr[i6 - i4] = c(fArr[i6]); - } - for (int i7 = length; i7 < length + i4; i7++) { - fArr[i7 - i4] = c(fArr[length - 1]); - } - return; - } - throw new IllegalArgumentException("Sliding Filter error: input too short"); - } - - public final float b(float f, float f4) { - switch (this.f) { - case 0: - return Math.max(f, f4); - default: - return Math.min(f, f4); - } - } - - public final float c(float f) { - float[] fArr = this.f631b; - int i4 = this.f630a; - if (fArr == null) { - this.f631b = new float[i4]; - for (int i5 = 0; i5 < i4; i5++) { - this.f631b[i5] = f; - } - this.f632d = f; - return f; - } - float b4 = b(this.f632d, f); - this.f632d = b4; - this.f633e = b(this.f631b[this.c], b4); - float[] fArr2 = this.f631b; - int i6 = this.c; - int i7 = i6 + 1; - this.c = i7; - fArr2[i6] = f; - if (i7 == i4) { - int length = fArr2.length; - while (true) { - this.c = length - 1; - int i8 = this.c; - if (i8 <= 0) { - break; - } - float[] fArr3 = this.f631b; - fArr3[i8 - 1] = b(fArr3[i8 - 1], fArr3[i8]); - length = this.c; - } - this.c = 0; - this.f632d = f; - } - return this.f633e; - } -} diff --git a/feature/cw/src/main/java/I0/d.java b/feature/cw/src/main/java/I0/d.java deleted file mode 100644 index f63089ac..00000000 --- a/feature/cw/src/main/java/I0/d.java +++ /dev/null @@ -1,42 +0,0 @@ -package I0; - -/** - * 照搬自 Morse Expert 1.15 I0.d, 类名保持混淆原名。 - * R8 合并类手术: 只保留 (i3.d, int, int, float[]) FFT 任务构造; - * run() 按 smali 原样还原: R8 已将任务体优化为死代码(aget 后 throw null, - * 永不执行), 保留原语义(行为与原 APK 完全一致)。 - * SystemForegroundService(work 库)case 已裁剪。 - */ -public final class d implements Runnable { - public final /* synthetic */ int f = 0; - - /* renamed from: g, reason: collision with root package name */ - public final /* synthetic */ int f653g; - - /* renamed from: h, reason: collision with root package name */ - public final /* synthetic */ int f654h; - - /* renamed from: i, reason: collision with root package name */ - public final /* synthetic */ Object f655i; - - /* renamed from: j, reason: collision with root package name */ - public final /* synthetic */ Object f656j; - - public d(i3.d dVar, int i4, int i5, float[] fArr) { - this.f656j = dVar; - this.f653g = i4; - this.f654h = i5; - this.f655i = fArr; - } - - @Override // java.lang.Runnable - public final void run() { - int i6 = this.f654h; - int i7 = this.f653g; - if (i7 >= i6) { - return; - } - float f = ((float[]) this.f655i)[i7 * 2]; - // R8 原代码: aget 后 throw null(死代码, 永不执行) —— 照搬语义, 不执行任何计算 - } -} diff --git a/feature/cw/src/main/java/I2/b.java b/feature/cw/src/main/java/I2/b.java deleted file mode 100644 index e4077025..00000000 --- a/feature/cw/src/main/java/I2/b.java +++ /dev/null @@ -1,73 +0,0 @@ -package I2; - -import android.content.Context; -import android.content.SharedPreferences; -import pas.decoder; - -/* loaded from: classes.dex */ -public final class b { - - /* renamed from: b, reason: collision with root package name */ - public static final String[] f663b = {"bg_color", "text_color", "text_color_weak", "call_color", "call_color_weak", "cq_color", "cq_color_weak", "rst_color", "rst_color_weak"}; - public static final String[] c = {"Background color", "Text color", "Text color, weak", "Callsign color", "Callsign color, weak", "CQ color", "CQ color, weak", "RST color", "RST color, weak"}; - - /* renamed from: d, reason: collision with root package name */ - public static final int[] f664d = {-3084048, -16777216, -5592406, -65536, -30584, -16776961, -7829249, -65281, -30465}; - - /* renamed from: a, reason: collision with root package name */ - public final int[] f665a = (int[]) f664d.clone(); - - public final int a(decoder.TCharInfo tCharInfo) { - boolean lowSnr = tCharInfo.getLowSnr(); - int[] iArr = this.f665a; - if (lowSnr) { - int i4 = tCharInfo.getWordType().Value; - if (i4 != 0) { - if (i4 != 1) { - if (i4 != 2) { - if (i4 != 3) { - if (i4 != 4) { - if (i4 == 5) { - return iArr[4]; - } - return -16777216; - } - return iArr[2]; - } - return iArr[6]; - } - return iArr[8]; - } - return iArr[2]; - } - return iArr[2]; - } - int i5 = tCharInfo.getWordType().Value; - if (i5 != 0) { - if (i5 != 1) { - if (i5 != 2) { - if (i5 != 3) { - if (i5 != 4) { - if (i5 != 5) { - return -16777216; - } - return iArr[3]; - } - return iArr[1]; - } - return iArr[5]; - } - return iArr[7]; - } - return iArr[1]; - } - return iArr[1]; - } - - public final void b(Context context) { - SharedPreferences sharedPreferences = context.getSharedPreferences(context.getPackageName() + "_preferences", 0); // 原 c0.x.a(context) - for (int i4 = 0; i4 < 9; i4++) { - this.f665a[i4] = sharedPreferences.getInt(f663b[i4], f664d[i4]); - } - } -} diff --git a/feature/cw/src/main/java/J2/a.java b/feature/cw/src/main/java/J2/a.java deleted file mode 100644 index 5431d71a..00000000 --- a/feature/cw/src/main/java/J2/a.java +++ /dev/null @@ -1,45 +0,0 @@ -package J2; - -/* loaded from: classes.dex */ -public final class a { - - /* renamed from: b, reason: collision with root package name */ - public static final int[] f726b = {16, 17749, 65535, 16776960, 16711680}; - - /* renamed from: a, reason: collision with root package name */ - public final int[] f727a; - - public a() { - int[] iArr = new int[256]; - this.f727a = iArr; - int i4 = 4; - float f = 255.0f / 4; - int[] iArr2 = f726b; - int i5 = 0; - int i6 = -16777216; - iArr[0] = iArr2[0] | (-16777216); - int i7 = 1; - while (i7 <= i4) { - int round = Math.round(i7 * f); - iArr[round] = iArr2[i7] | i6; - int i8 = round - i5; - int i9 = iArr[i5]; - int i10 = (i9 >> 16) & 255; - int i11 = (i9 >> 8) & 255; - int i12 = i9 & 255; - float f4 = i8; - // r10 = iArr2[i7] (下一个锚点色, smali: aget v10, v4, v8) - float f5 = (((iArr2[i7] >> 16) & 255) - i10) / f4; - float f6 = (((iArr2[i7] >> 8) & 255) - i11) / f4; - float f7 = ((iArr2[i7] & 255) - i12) / f4; - for (int i13 = 1; i13 < i8; i13++) { - float f8 = i13; - iArr[i5 + i13] = ((Math.round(f5 * f8) + i10) << 16) | (-16777216) | ((Math.round(f6 * f8) + i11) << 8) | (Math.round(f8 * f7) + i12); - } - i7++; - i5 = round; - i4 = 4; - i6 = -16777216; - } - } -} diff --git a/feature/cw/src/main/java/J2/b.java b/feature/cw/src/main/java/J2/b.java deleted file mode 100644 index 7ed2e82e..00000000 --- a/feature/cw/src/main/java/J2/b.java +++ /dev/null @@ -1,183 +0,0 @@ -package J2; - -import android.content.Context; -import android.graphics.Bitmap; -import android.opengl.GLES20; -import android.opengl.GLSurfaceView; -import android.opengl.GLUtils; -import android.os.SystemClock; -import android.util.Log; -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.nio.ByteOrder; -import java.nio.FloatBuffer; -import javax.microedition.khronos.egl.EGLConfig; -import javax.microedition.khronos.opengles.GL10; - -/* loaded from: classes.dex */ -public final class b implements GLSurfaceView.Renderer { - - /* renamed from: b, reason: collision with root package name */ - public FloatBuffer f729b; - public int c; - - /* renamed from: d, reason: collision with root package name */ - public final Bitmap f730d; - public final Context f; - - /* renamed from: g, reason: collision with root package name */ - public double f732g; - - /* renamed from: h, reason: collision with root package name */ - public final Bitmap f733h; - - /* renamed from: i, reason: collision with root package name */ - public final a f734i; - - /* renamed from: j, reason: collision with root package name */ - public long f735j; - - /* renamed from: k, reason: collision with root package name */ - public double f736k; - - /* renamed from: l, reason: collision with root package name */ - public int f737l; - - /* renamed from: a, reason: collision with root package name */ - public final int[] f728a = new int[1]; - - /* renamed from: e, reason: collision with root package name */ - public final float[] f731e = {-1.0f, -1.0f, 0.0f, 1.0f, -1.0f, 1.0f, 0.0f, 0.0f, 1.0f, -1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 0.0f}; - - public b(Context context, int i4) { - Bitmap.Config config = Bitmap.Config.ARGB_8888; - Bitmap createBitmap = Bitmap.createBitmap(2048, i4, config); - this.f730d = createBitmap; - createBitmap.eraseColor(16); - this.f732g = 0.09375d; - this.f734i = new a(); - this.f735j = 0L; - this.f736k = 0.0d; - this.f737l = -1; - this.f = context; - this.f733h = Bitmap.createBitmap(1, i4, config); - } - - public static void a() { - int glGetError = GLES20.glGetError(); - if (glGetError != 0) { - StackTraceElement stackTraceElement = Thread.currentThread().getStackTrace()[3]; - Log.e(stackTraceElement.getFileName() + ":" + stackTraceElement.getLineNumber(), ", GLES20 error: " + glGetError); - } - } - - public final double b() { - long uptimeMillis = SystemClock.uptimeMillis(); - double width = (((uptimeMillis - this.f735j) * this.f732g) + this.f736k) % this.f730d.getWidth(); - this.f735j = uptimeMillis; - this.f736k = width; - return width; - } - - public final void c(GL10 gl10) { - GLES20.glUseProgram(this.c); - a(); - GLES20.glActiveTexture(33984); - a(); - GLES20.glBindTexture(3553, this.f728a[0]); - a(); - GLES20.glUniform1i(GLES20.glGetUniformLocation(this.c, "uTexture"), 0); - a(); - int glGetAttribLocation = GLES20.glGetAttribLocation(this.c, "aPosition"); - a(); - int glGetAttribLocation2 = GLES20.glGetAttribLocation(this.c, "aTexPos"); - a(); - this.f729b.position(0); - a(); - GLES20.glVertexAttribPointer(glGetAttribLocation, 2, 5126, false, 16, (Buffer) this.f729b); - a(); - GLES20.glEnableVertexAttribArray(glGetAttribLocation); - a(); - this.f729b.position(2); - a(); - GLES20.glVertexAttribPointer(glGetAttribLocation2, 2, 5126, false, 16, (Buffer) this.f729b); - a(); - GLES20.glEnableVertexAttribArray(glGetAttribLocation2); - a(); - GLES20.glDrawArrays(5, 0, 4); - a(); - } - - public final void d(GL10 gl10, int i4, int i5) { - GLES20.glViewport(0, 0, i4, i5); - a(); - } - - @Override // android.opengl.GLSurfaceView.Renderer - public final void onDrawFrame(GL10 gl10) { - float b4 = (float) (b() / this.f730d.getWidth()); - float f = 0.5f + b4; - float[] fArr = this.f731e; - fArr[6] = f; - fArr[2] = f; - float f4 = b4 + 1.0f; - fArr[14] = f4; - fArr[10] = f4; - this.f729b.position(0); - this.f729b.put(this.f731e); - c(gl10); - } - - @Override // android.opengl.GLSurfaceView.Renderer - public final void onSurfaceChanged(GL10 gl10, int i4, int i5) { - d(gl10, i4, i5); - float width = 1.0f - (((this.f730d.getWidth() * 0.7f) / (i4 / this.f.getResources().getDisplayMetrics().density)) * 2.0f); - float[] fArr = this.f731e; - fArr[4] = width; - fArr[0] = width; - this.f729b.position(0); - this.f729b.put(this.f731e); - } - - @Override // android.opengl.GLSurfaceView.Renderer - public final void onSurfaceCreated(GL10 gl10, EGLConfig eGLConfig) { - int glCreateShader = GLES20.glCreateShader(35633); - a(); - GLES20.glShaderSource(glCreateShader, "attribute vec2 aPosition;\nattribute vec2 aTexPos;\nvarying vec2 vTexPos;\nvoid main() {\n vTexPos = aTexPos;\n gl_Position = vec4(aPosition.xy, 0.0, 1.0);\n}"); - a(); - GLES20.glCompileShader(glCreateShader); - a(); - int glCreateShader2 = GLES20.glCreateShader(35632); - a(); - GLES20.glShaderSource(glCreateShader2, "precision mediump float;\nuniform sampler2D uTexture;\nvarying vec2 vTexPos;\nvoid main(void)\n{\n gl_FragColor = texture2D(uTexture, vTexPos);\n}"); - a(); - GLES20.glCompileShader(glCreateShader2); - a(); - this.c = GLES20.glCreateProgram(); - a(); - GLES20.glAttachShader(this.c, glCreateShader); - a(); - GLES20.glAttachShader(this.c, glCreateShader2); - a(); - GLES20.glLinkProgram(this.c); - a(); - int[] iArr = this.f728a; - GLES20.glGenTextures(1, iArr, 0); - a(); - GLES20.glBindTexture(3553, iArr[0]); - a(); - GLES20.glTexParameteri(3553, 10240, 9729); - GLES20.glTexParameteri(3553, 10242, 10497); - GLES20.glTexParameteri(3553, 10241, 9729); - GLES20.glTexParameteri(3553, 10243, 10497); - a(); - GLUtils.texImage2D(3553, 0, this.f730d, 0); - a(); - float[] fArr = this.f731e; - ByteBuffer allocateDirect = ByteBuffer.allocateDirect(fArr.length * 4); - allocateDirect.order(ByteOrder.nativeOrder()); - FloatBuffer asFloatBuffer = allocateDirect.asFloatBuffer(); - this.f729b = asFloatBuffer; - asFloatBuffer.put(fArr); - } -} diff --git a/feature/cw/src/main/java/K1/a.java b/feature/cw/src/main/java/K1/a.java deleted file mode 100644 index 8d6a1950..00000000 --- a/feature/cw/src/main/java/K1/a.java +++ /dev/null @@ -1,10 +0,0 @@ -package K1; - -/** - * 照搬自 Morse Expert 1.15 K1.a 精简版: 仅保留 k3 FFT 库引用的内存统计静态字段 - * (K1.a.c 长整型记账)。原 K1.a(828 行)的其余方法为状态栏/库代码, 已裁剪 - * (状态栏逻辑已在 MainActivity 内联)。 - */ -public class a { - public static long c = 0; -} diff --git a/feature/cw/src/main/java/com/rtbishop/look4sat/feature/cw/CwDecodeScreen.kt b/feature/cw/src/main/java/com/rtbishop/look4sat/feature/cw/CwDecodeScreen.kt deleted file mode 100644 index c2387315..00000000 --- a/feature/cw/src/main/java/com/rtbishop/look4sat/feature/cw/CwDecodeScreen.kt +++ /dev/null @@ -1,213 +0,0 @@ -/* - * CwDecodeScreen.kt — Look4Sat 的 CW 解码页面(Compose 外壳)。 - * - * 照搬自 Morse Expert 1.15 的 com.ve3nea.morse_expert.MainActivity(已改为普通控制器类): - * - AndroidView 嵌入原版 activity_main.xml(ConstraintLayout 根, 含 decodedTextView/scaleView/ - * statusTextView/verticalLayout/waterfallView); - * - 生命周期 onCreate/onResume/onPause/onDestroy 全部委托给控制器, 顺序与原 Activity 一致 - * (onCreate 必须在 onResume 前, onDispose 先 onPause 再 onDestroy); - * - 麦克风权限(RECORD_AUDIO)由 Compose 侧管理, 授予后调用 onPermissionGranted()(= v()), - * 用 initialized 标记保证只调一次(v() 会 new a() 覆盖 f11036E); - * - 原 options_menu 的 清除/暂停/保存/录音/设置 改为顶部一行按钮(图标用模块内原版 drawable)。 - * - * 注意: 控制器 onCreate 内的 setImmersive(window, false) 会把宿主窗口恢复为 - * decorFitsSystemWindows(true)(原版行为照搬, 会对整个宿主 Activity 生效)。 - */ -package com.rtbishop.look4sat.feature.cw - -import android.Manifest -import android.app.Activity -import android.content.Context -import android.content.Intent -import android.content.pm.PackageManager -import android.net.Uri -import android.provider.Settings -import android.view.LayoutInflater -import androidx.activity.compose.BackHandler -import androidx.activity.compose.rememberLauncherForActivityResult -import androidx.activity.result.contract.ActivityResultContracts -import androidx.compose.foundation.background -import androidx.compose.foundation.layout.Arrangement -import androidx.compose.foundation.layout.Box -import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.Row -import androidx.compose.foundation.layout.Spacer -import androidx.compose.foundation.layout.fillMaxSize -import androidx.compose.foundation.layout.fillMaxWidth -import androidx.compose.foundation.layout.height -import androidx.compose.foundation.layout.padding -import androidx.compose.foundation.layout.systemBarsPadding -import androidx.compose.material3.Button -import androidx.compose.material3.Icon -import androidx.compose.material3.IconButton -import androidx.compose.material3.Text -import androidx.compose.material3.TextButton -import androidx.compose.runtime.Composable -import androidx.compose.runtime.DisposableEffect -import androidx.compose.runtime.LaunchedEffect -import androidx.compose.runtime.getValue -import androidx.compose.runtime.mutableStateOf -import androidx.compose.runtime.remember -import androidx.compose.runtime.setValue -import androidx.compose.ui.Alignment -import androidx.compose.ui.Modifier -import androidx.compose.ui.graphics.Color -import androidx.compose.ui.platform.LocalContext -import androidx.compose.ui.res.painterResource -import androidx.compose.ui.res.stringResource -import androidx.compose.ui.text.style.TextAlign -import androidx.compose.ui.unit.dp -import androidx.compose.ui.viewinterop.AndroidView -import androidx.constraintlayout.widget.ConstraintLayout -import com.ve3nea.morse_expert.MainActivity - -@Composable -fun CwDecodeScreen(navigateUp: () -> Unit = {}) { - val context = LocalContext.current - val activity = remember(context) { - context as? Activity ?: error("CwDecodeScreen must be hosted in an Activity") - } - // 照搬的控制器(普通类, 非 Activity); 每次进入页面新建实例 - val controller = remember { MainActivity() } - // 提前 inflate 原版布局, 供 AndroidView 与控制器 onCreate 共用同一根视图 - val rootView = remember(context) { - LayoutInflater.from(context).inflate(R.layout.activity_main, null) as ConstraintLayout - } - - var permissionGranted by remember { - mutableStateOf( - context.checkSelfPermission(Manifest.permission.RECORD_AUDIO) == - PackageManager.PERMISSION_GRANTED - ) - } - var permanentlyDenied by remember { mutableStateOf(false) } - // v() 会 new a() 覆盖 f11036E, 必须保证只初始化一次 - var initialized by remember { mutableStateOf(false) } - var showSettings by remember { mutableStateOf(false) } - - // 生命周期: onCreate 必须在 onResume 前; onDispose 先 onPause 再 onDestroy - DisposableEffect(Unit) { - controller.onCreate(activity, rootView) - controller.onResume() - onDispose { - controller.onPause() - controller.onDestroy() - } - } - - // 权限授予后启动解码核心; "首次进入已授权" 与 "弹窗回调授权" 两条路径统一走这里 - LaunchedEffect(permissionGranted) { - if (permissionGranted && !initialized) { - controller.onPermissionGranted() // = v(): 创建音频采集 + 解码核心 - // v() 只创建核心; 页面此刻已处于 resumed, 需再走一次 onResume 立即启动录音 - // (AudioRecord 是新建的, startRecording 不会重复; GLSurfaceView.onResume 幂等) - controller.onResume() - initialized = true - } - } - - val permissionLauncher = rememberLauncherForActivityResult( - ActivityResultContracts.RequestPermission() - ) { granted -> - permissionGranted = granted - permanentlyDenied = !granted && - !activity.shouldShowRequestPermissionRationale(Manifest.permission.RECORD_AUDIO) - } - - // 原版 tap_back_again_to_close: 单击返回只提示, 2 秒内再按才退出 - BackHandler { - if (!controller.handleBackPress()) navigateUp() - } - - if (showSettings) { - CwSettingsDialog(controller = controller, onDismiss = { showSettings = false }) - } - - Column( - modifier = Modifier - .fillMaxSize() - .systemBarsPadding() - ) { - // 原 options_menu: 暂停/清除/保存(原版图标) + 录音/设置(文字按钮) - Row( - modifier = Modifier - .fillMaxWidth() - .padding(horizontal = 4.dp), - verticalAlignment = Alignment.CenterVertically, - horizontalArrangement = Arrangement.SpaceEvenly - ) { - IconButton(onClick = { controller.togglePause() }) { - Icon( - painter = painterResource(R.drawable.ic_baseline_pause_24), - contentDescription = stringResource(R.string.pause) - ) - } - IconButton(onClick = { controller.clearDecoded() }) { - Icon( - painter = painterResource(R.drawable.ic_baseline_delete_24), - contentDescription = stringResource(R.string.clear) - ) - } - IconButton(onClick = { controller.saveText() }) { - Icon( - painter = painterResource(R.drawable.ic_baseline_save_24), - contentDescription = stringResource(R.string.save_text) - ) - } - // recordSignals 需要解码核心(f11037F), 未初始化时禁用 - TextButton( - onClick = { if (initialized) controller.recordSignals() }, - enabled = initialized - ) { - Text(stringResource(R.string.record_signals)) - } - TextButton(onClick = { showSettings = true }) { - Text(stringResource(R.string.settings)) - } - } - - Box(modifier = Modifier.weight(1f).fillMaxWidth()) { - AndroidView( - factory = { rootView }, - modifier = Modifier.fillMaxSize() - ) - if (!permissionGranted) { - // 未授予麦克风权限: 遮罩 + 提示文字 + 请求按钮 - Box( - modifier = Modifier - .fillMaxSize() - .background(Color(0x99000000)), - contentAlignment = Alignment.Center - ) { - Column(horizontalAlignment = Alignment.CenterHorizontally) { - Text( - text = "Microphone permission is required for CW decoding", - color = Color.White, - textAlign = TextAlign.Center, - modifier = Modifier.padding(horizontal = 24.dp) - ) - Spacer(modifier = Modifier.height(12.dp)) - Button(onClick = { - permissionLauncher.launch(Manifest.permission.RECORD_AUDIO) - }) { - Text("Grant permission") - } - if (permanentlyDenied) { - // 勾选了"不再询问": 引导去系统设置开启 - TextButton(onClick = { - activity.startActivity( - Intent( - Settings.ACTION_APPLICATION_DETAILS_SETTINGS, - Uri.parse("package:${activity.packageName}") - ) - ) - }) { - Text("Open app settings") - } - } - } - } - } - } - } -} diff --git a/feature/cw/src/main/java/com/rtbishop/look4sat/feature/cw/CwSettingsDialog.kt b/feature/cw/src/main/java/com/rtbishop/look4sat/feature/cw/CwSettingsDialog.kt deleted file mode 100644 index ce817298..00000000 --- a/feature/cw/src/main/java/com/rtbishop/look4sat/feature/cw/CwSettingsDialog.kt +++ /dev/null @@ -1,218 +0,0 @@ -/* - * Look4Sat. Amateur radio satellite tracker and pass predictor. - * Copyright (C) 2019-2026 Arty Bishop and contributors. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - */ -package com.rtbishop.look4sat.feature.cw - -import android.content.Context -import androidx.compose.foundation.background -import androidx.compose.foundation.border -import androidx.compose.foundation.clickable -import androidx.compose.foundation.layout.Arrangement -import androidx.compose.foundation.layout.Box -import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.Row -import androidx.compose.foundation.layout.Spacer -import androidx.compose.foundation.layout.fillMaxWidth -import androidx.compose.foundation.layout.height -import androidx.compose.foundation.layout.padding -import androidx.compose.foundation.layout.size -import androidx.compose.foundation.layout.width -import androidx.compose.foundation.rememberScrollState -import androidx.compose.foundation.shape.RoundedCornerShape -import androidx.compose.foundation.verticalScroll -import androidx.compose.material3.AlertDialog -import androidx.compose.material3.HorizontalDivider -import androidx.compose.material3.MaterialTheme -import androidx.compose.material3.RadioButton -import androidx.compose.material3.Slider -import androidx.compose.material3.Text -import androidx.compose.material3.TextButton -import androidx.compose.runtime.Composable -import androidx.compose.runtime.getValue -import androidx.compose.runtime.mutableStateOf -import androidx.compose.runtime.remember -import androidx.compose.runtime.setValue -import androidx.compose.ui.Alignment -import androidx.compose.ui.Modifier -import androidx.compose.ui.draw.clip -import androidx.compose.ui.graphics.Color -import androidx.compose.ui.text.style.TextAlign -import androidx.compose.ui.unit.dp -import com.ve3nea.morse_expert.MainActivity -import kotlin.math.roundToInt - -/** 键名/默认值照搬原 Morse Expert(root_preferences.xml + SettingsActivity 逻辑)。 */ -private const val KEY_MESSAGE_TYPE = "message_type" -private const val KEY_TEXT_FONT_SIZE = "text_font_size" -private const val DEFAULT_MESSAGE_TYPE = "general_text" -private const val DEFAULT_TEXT_FONT_SIZE = 18 -private const val MIN_FONT_SIZE = 7 -private const val MAX_FONT_SIZE = 99 - -/** 预置色板(9 色, 3x3 网格);原 ColorPreferenceCompat 用第三方 colorpicker, 不引入。 */ -private val PaletteColors = listOf( - 0xFFD0F0F0.toInt(), 0xFF000000.toInt(), 0xFFFFFFFF.toInt(), - 0xFFAAAAAA.toInt(), 0xFFFF0000.toInt(), 0xFF00FF00.toInt(), - 0xFF0000FF.toInt(), 0xFFFFFF00.toInt(), 0xFFFF00FF.toInt(), -) - -/** - * CW 设置弹窗(替代原 Morse Expert 的 SettingsActivity)。 - * 设置项与键名照搬原 APK: message_type / text_font_size / 9 个颜色 - * (I2.b.f663b 键名, I2.b.f664d 默认值, I2.b.c 英文标题)。 - * 存储: SharedPreferences(getPackageName() + "_preferences")。 - * 点击 OK 保存并调用 controller.onResume() 立即生效; Cancel/点外部仅关闭不保存。 - */ -@Composable -fun CwSettingsDialog(controller: MainActivity, onDismiss: () -> Unit) { - val activity = controller.mActivity ?: return - val prefs = remember(activity) { - activity.getSharedPreferences(activity.packageName + "_preferences", Context.MODE_PRIVATE) - } - - var messageType by remember { - mutableStateOf(prefs.getString(KEY_MESSAGE_TYPE, DEFAULT_MESSAGE_TYPE) ?: DEFAULT_MESSAGE_TYPE) - } - var fontSize by remember { - mutableStateOf( - prefs.getInt(KEY_TEXT_FONT_SIZE, DEFAULT_TEXT_FONT_SIZE) - .toFloat().coerceIn(MIN_FONT_SIZE.toFloat(), MAX_FONT_SIZE.toFloat()) - ) - } - var colorValues by remember { - mutableStateOf(IntArray(9) { i -> prefs.getInt(I2.b.f663b[i], I2.b.f664d[i]) }) - } - - AlertDialog( - onDismissRequest = onDismiss, - title = { Text("CW Settings") }, - text = { - Column( - modifier = Modifier - .verticalScroll(rememberScrollState()) - .padding(top = 4.dp) - ) { - Text("Message type", style = MaterialTheme.typography.titleSmall) - MessageTypeRow("general_text", "General Text", messageType) { messageType = it } - MessageTypeRow("ham_radio_qso", "Ham Radio QSO", messageType) { messageType = it } - HorizontalDivider(Modifier.padding(vertical = 8.dp)) - - Text("Text font size", style = MaterialTheme.typography.titleSmall) - Row(verticalAlignment = Alignment.CenterVertically) { - Slider( - value = fontSize, - onValueChange = { fontSize = it }, - valueRange = MIN_FONT_SIZE.toFloat()..MAX_FONT_SIZE.toFloat(), - steps = MAX_FONT_SIZE - MIN_FONT_SIZE - 1, - modifier = Modifier.weight(1f), - ) - Text( - text = "${fontSize.roundToInt()}", - style = MaterialTheme.typography.titleMedium, - textAlign = TextAlign.End, - modifier = Modifier.width(44.dp), - ) - } - HorizontalDivider(Modifier.padding(vertical = 8.dp)) - - Text("Colors", style = MaterialTheme.typography.titleSmall) - for (i in 0 until 9) { - ColorSettingRow( - title = I2.b.c[i], - value = colorValues[i], - onSelect = { selected -> - colorValues = colorValues.copyOf().also { it[i] = selected } - }, - ) - } - } - }, - confirmButton = { - TextButton(onClick = { - val editor = prefs.edit() - editor.putString(KEY_MESSAGE_TYPE, messageType) - editor.putInt(KEY_TEXT_FONT_SIZE, fontSize.roundToInt()) - for (i in 0 until 9) { - editor.putInt(I2.b.f663b[i], colorValues[i]) - } - editor.apply() - // 原 SettingsActivity 返回时由 MainActivity.onResume() 重新读取全部设置; 照搬逻辑已就位 - controller.onResume() - onDismiss() - }) { Text("OK") } - }, - dismissButton = { - TextButton(onClick = onDismiss) { Text("Cancel") } - }, - ) -} - -@Composable -private fun MessageTypeRow(option: String, label: String, selected: String, onSelect: (String) -> Unit) { - Row( - modifier = Modifier - .fillMaxWidth() - .clip(RoundedCornerShape(6.dp)) - .clickable { onSelect(option) } - .padding(vertical = 2.dp), - verticalAlignment = Alignment.CenterVertically, - ) { - RadioButton(selected = option == selected, onClick = { onSelect(option) }) - Text(label, style = MaterialTheme.typography.bodyMedium) - } -} - -@Composable -private fun ColorSettingRow(title: String, value: Int, onSelect: (Int) -> Unit) { - Column(Modifier.fillMaxWidth().padding(vertical = 6.dp)) { - Row(verticalAlignment = Alignment.CenterVertically) { - Text(title, style = MaterialTheme.typography.bodyMedium, modifier = Modifier.weight(1f)) - Box( - Modifier - .size(20.dp) - .clip(RoundedCornerShape(4.dp)) - .background(Color(value)), - ) - Spacer(Modifier.width(6.dp)) - Text( - text = String.format("#%06X", value and 0xFFFFFF), - style = MaterialTheme.typography.bodySmall, - color = MaterialTheme.colorScheme.onSurfaceVariant, - ) - } - Spacer(Modifier.height(6.dp)) - PaletteGrid(selected = value, onSelect = onSelect) - } -} - -@Composable -private fun PaletteGrid(selected: Int, onSelect: (Int) -> Unit) { - Column(verticalArrangement = Arrangement.spacedBy(6.dp)) { - PaletteColors.chunked(3).forEach { rowColors -> - Row(horizontalArrangement = Arrangement.spacedBy(6.dp)) { - rowColors.forEach { color -> - val isSelected = color == selected - Box( - modifier = Modifier - .size(36.dp) - .border( - width = if (isSelected) 3.dp else 1.dp, - color = if (isSelected) MaterialTheme.colorScheme.primary - else MaterialTheme.colorScheme.outlineVariant, - shape = RoundedCornerShape(6.dp), - ) - .clip(RoundedCornerShape(6.dp)) - .background(Color(color)) - .clickable { onSelect(color) }, - ) - } - } - } - } -} diff --git a/feature/cw/src/main/java/com/rtbishop/look4sat/feature/cw/suncompat/Cleaner.java b/feature/cw/src/main/java/com/rtbishop/look4sat/feature/cw/suncompat/Cleaner.java deleted file mode 100644 index d6e10aaf..00000000 --- a/feature/cw/src/main/java/com/rtbishop/look4sat/feature/cw/suncompat/Cleaner.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.rtbishop.look4sat.feature.cw.suncompat; - -/** - * 编译期 stub:Android 无 sun.misc.Cleaner(照搬 Morse Expert 1.15 k3 FFT 库的清理回调, - * 实际 FFT 1024 点不触发 native 路径)。 - */ -public class Cleaner { - public static Cleaner create(Object referent, Runnable thunk) { - return null; - } - - public void clean() { - } -} diff --git a/feature/cw/src/main/java/com/rtbishop/look4sat/feature/cw/suncompat/Unsafe.java b/feature/cw/src/main/java/com/rtbishop/look4sat/feature/cw/suncompat/Unsafe.java deleted file mode 100644 index fc90ae2f..00000000 --- a/feature/cw/src/main/java/com/rtbishop/look4sat/feature/cw/suncompat/Unsafe.java +++ /dev/null @@ -1,83 +0,0 @@ -package com.rtbishop.look4sat.feature.cw.suncompat; - -/** - * 编译期 stub:Android 无 sun.misc.Unsafe(运行时通过反射获取,失败时 k3.r.f12109a 为 null)。 - * 照搬自 Morse Expert 1.15(k3 FFT 库的大数组 native 路径 >1GB 不触发,实际 FFT 走 float[] 分支)。 - */ -public class Unsafe { - public long allocateMemory(long bytes) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } - - public void freeMemory(long address) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } - - public byte getByte(long address) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } - - public void putByte(long address, byte value) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } - - public short getShort(long address) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } - - public void putShort(long address, short value) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } - - public int getInt(long address) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } - - public void putInt(long address, int value) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } - - public long getLong(long address) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } - - public void putLong(long address, long value) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } - - public float getFloat(long address) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } - - public void putFloat(long address, float value) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } - - public double getDouble(long address) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } - - public void putDouble(long address, double value) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } - - public void setMemory(long address, long bytes, byte value) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } - - public void copyMemory(long src, long dst, long len) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } - - public Object getObject(Object o, long offset) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } - - public void putObject(Object o, long offset, Object value) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } - - public long objectFieldOffset(java.lang.reflect.Field field) { - throw new UnsupportedOperationException("sun.misc.Unsafe not available on Android"); - } -} diff --git a/feature/cw/src/main/java/com/ve3nea/morse_expert/DecodedTextView.java b/feature/cw/src/main/java/com/ve3nea/morse_expert/DecodedTextView.java deleted file mode 100644 index b6c16808..00000000 --- a/feature/cw/src/main/java/com/ve3nea/morse_expert/DecodedTextView.java +++ /dev/null @@ -1,138 +0,0 @@ -package com.ve3nea.morse_expert; - -import F2.a; -import android.content.Context; -import android.content.Intent; -import android.media.MediaScannerConnection; -import android.text.Layout; -import android.text.Selection; -import android.text.Spannable; -import android.text.SpannableStringBuilder; -import android.text.TextUtils; -import android.text.format.DateFormat; -import android.util.AttributeSet; -import android.util.Log; -import android.view.ActionMode; -import android.widget.TextView; -import android.widget.Toast; -import java.io.File; -import java.io.PrintWriter; -import java.util.Date; -import java.util.concurrent.atomic.AtomicBoolean; - -/** - * 照搬自 Morse Expert 1.15 DecodedTextView, 类名保持混淆原名。 - * 适配: 原 extends l.C1702e0(appcompat 混淆类) -> 直接 extends TextView - * (C1702e0 仅提供 TextView 兼容功能, 本类未使用其特有方法)。 - */ -public class DecodedTextView extends TextView { - - /* renamed from: m, reason: collision with root package name */ - public final Context f11031m; - - /* renamed from: n, reason: collision with root package name */ - public boolean f11032n; - - /* renamed from: o, reason: collision with root package name */ - public final AtomicBoolean f11033o; - - public DecodedTextView(Context context, AttributeSet attributeSet) { - super(context, attributeSet); - this.f11032n = false; - this.f11033o = new AtomicBoolean(false); - this.f11031m = context; - setCustomSelectionActionModeCallback(getActionModeCallback()); - } - - private ActionMode.Callback getActionModeCallback() { - return new a(this); - } - - private String getDecodedText() { - int selectionStart = getSelectionStart(); - int selectionEnd = getSelectionEnd(); - int max = Math.max(0, Math.min(selectionStart, selectionEnd)); - int max2 = Math.max(0, Math.max(selectionStart, selectionEnd)); - if (max2 > max) { - return getText().subSequence(max, max2).toString(); - } - return getText().toString(); - } - - @Override // android.widget.TextView - public final void onSelectionChanged(int i4, int i5) { - super.onSelectionChanged(i4, i5); - if (hasSelection()) { - this.f11032n = true; - } - } - - public final void q(SpannableStringBuilder spannableStringBuilder) { - boolean z3; - try { - CharSequence text = getText(); - Layout layout = getLayout(); - int lineCount = getLineCount(); - int length = text.length(); - int lineHeight = getLineHeight(); - int scrollY = getScrollY(); - if (layout.getLineBottom(lineCount - 1) == getHeight() + scrollY) { - z3 = true; - } else { - z3 = false; - } - getSelectionStart(); - getSelectionEnd(); - hasSelection(); - if (z3) { - Selection.setSelection((Spannable) text, length, length); - } - append(spannableStringBuilder); - int i4 = lineCount - 50; - if (i4 > 0) { - int i5 = lineHeight * i4; - getEditableText().delete(0, layout.getLineEnd(lineCount - 51)); - if (scrollY >= i5) { - scrollBy(0, -i5); - } - } - } catch (Exception e4) { - Log.e("printChars()", "Exception: ", e4); - } - } - - public final void r() { - String decodedText = getDecodedText(); - boolean isEmpty = TextUtils.isEmpty(decodedText); - Context context = this.f11031m; - if (isEmpty) { - Toast.makeText(context, "No text to save", 0).show(); - return; - } - try { - File file = new File(getContext().getExternalFilesDir(null), ((String) DateFormat.format("yyyy-MM-dd_HH_mm_ss", new Date())) + ".txt"); - String absolutePath = file.getAbsolutePath(); - PrintWriter printWriter = new PrintWriter(file); - try { - printWriter.println(decodedText); - printWriter.close(); - MediaScannerConnection.scanFile(context, new String[]{absolutePath}, new String[]{"text/plain"}, null); - Toast.makeText(context, "Text saved to " + absolutePath, 1).show(); - } catch (Throwable th) { - printWriter.close(); - throw th; - } - } catch (Exception e4) { - Log.e("File Save", "Failed", e4); - Toast.makeText(context, "Unable to save: " + e4.getMessage(), 1).show(); - } - } - - public final void s() { - Intent intent = new Intent("android.intent.action.SEND"); - intent.setFlags(268435456); - intent.putExtra("android.intent.extra.TEXT", getDecodedText()); - intent.setType("text/plain"); - this.f11031m.startActivity(Intent.createChooser(intent, "Share Decoded Text")); - } -} diff --git a/feature/cw/src/main/java/com/ve3nea/morse_expert/MainActivity.java b/feature/cw/src/main/java/com/ve3nea/morse_expert/MainActivity.java deleted file mode 100644 index d926653e..00000000 --- a/feature/cw/src/main/java/com/ve3nea/morse_expert/MainActivity.java +++ /dev/null @@ -1,232 +0,0 @@ - -package com.ve3nea.morse_expert; - -import android.content.Context; -import android.os.Build; -import android.view.View; -import android.view.ViewGroup; -import android.view.Window; -import android.widget.LinearLayout; -import android.widget.TextView; -import android.widget.Toast; -import androidx.constraintlayout.widget.ConstraintLayout; -import com.rtbishop.look4sat.feature.cw.R; -import E2.g; -import H2.a; -import H2.b; -import j1.C1646n; - -/** - * Ported verbatim from Morse Expert 1.15 MainActivity (com.ve3nea.morse_expert); obfuscated - * class/field names kept as-is. Surgery notes: originally extends e.AbstractActivityC1557l - * (obfuscated AppCompat base) -> now a plain controller class, Activity injected via - * onCreate(Activity, ConstraintLayout) for Compose AndroidView integration. Ads (d1.*), - * billing (I2.a), premium/rate menu removed per user. h3.b.r (recursive findViewById), - * K1.a.M (immersive status bar), B.i (permissions) replaced with equivalent standard APIs. - * Decoder logic (H2.a audio, H2.b core, pas engine) untouched. - */ -public class MainActivity { - - public static final /* synthetic */ int f11034K = 0; - - /* renamed from: D, reason: collision with root package name */ - public C1646n f11035D; - - /* renamed from: E, reason: collision with root package name */ - public a f11036E; - - /* renamed from: F, reason: collision with root package name */ - public b f11037F; - - /* renamed from: G, reason: collision with root package name */ - public long f11038G = 0; - - /* renamed from: J, reason: collision with root package name */ - public final g f11040J = new g(this, 1); - - /** Injected Activity context (replaces the original this Activity capabilities) */ - public android.app.Activity mActivity; - - public void onCreate(android.app.Activity activity, ConstraintLayout constraintLayout) { - onCreate(activity, constraintLayout, true); - } - - /** - * applyImmersive=false 用于嵌入小容器(如转发器 CW 面板): - * 不触碰宿主窗口的系统栏标志(避免影响整个 Activity)。 - */ - public void onCreate(android.app.Activity activity, ConstraintLayout constraintLayout, boolean applyImmersive) { - this.mActivity = activity; - if (applyImmersive) { - // K1.a.M(getWindow(), false): immersive status bar (nav/fullscreen flags, ported as-is) - setImmersive(activity.getWindow(), false); - } - View inflate = constraintLayout; - int i4 = R.id.decodedTextView; - DecodedTextView decodedTextView = (DecodedTextView) findViewRecursive(inflate, R.id.decodedTextView); - if (decodedTextView != null) { - i4 = R.id.scaleView; - ScaleView scaleView = (ScaleView) findViewRecursive(inflate, R.id.scaleView); - if (scaleView != null) { - i4 = R.id.statusTextView; - TextView textView = (TextView) findViewRecursive(inflate, R.id.statusTextView); - if (textView != null) { - i4 = R.id.verticalLayout; - LinearLayout linearLayout = (LinearLayout) findViewRecursive(inflate, R.id.verticalLayout); - if (linearLayout != null) { - i4 = R.id.waterfallView; - WaterfallSurfaceView waterfallSurfaceView = (WaterfallSurfaceView) findViewRecursive(inflate, R.id.waterfallView); - if (waterfallSurfaceView != null) { - this.f11035D = new C1646n(constraintLayout, decodedTextView, scaleView, textView, linearLayout, waterfallSurfaceView); - ((WaterfallSurfaceView) this.f11035D.f11892k).setOnTouchListener(this.f11040J); - // Originally: permission check then v(); permission flow handled by the Compose page - // Originally: ad banner mounting (removed) - return; - } - } - } - } - } - throw new NullPointerException("Missing required view with ID: " + inflate.getResources().getResourceName(i4)); - } - - /** Original h3.b.r: recursive findViewById (ported behavior) */ - private static View findViewRecursive(View view, int id) { - if (view instanceof ViewGroup) { - ViewGroup viewGroup = (ViewGroup) view; - int childCount = viewGroup.getChildCount(); - for (int i = 0; i < childCount; i++) { - View found = viewGroup.getChildAt(i).findViewById(id); - if (found != null) { - return found; - } - } - return null; - } - return null; - } - - /** Original K1.a.M(window, false): immersive (hide nav/fullscreen flags, ported as-is) */ - private static void setImmersive(Window window, boolean immersive) { - if (Build.VERSION.SDK_INT >= 30) { - window.setDecorFitsSystemWindows(!immersive); - if (immersive) { - window.getDecorView().setSystemUiVisibility( - View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN); - } else { - window.getDecorView().setSystemUiVisibility( - View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN); - } - } else { - View decorView = window.getDecorView(); - int systemUiVisibility = decorView.getSystemUiVisibility(); - decorView.setSystemUiVisibility(immersive ? (systemUiVisibility & (-1793)) : (systemUiVisibility | 1792)); - } - } - - /** Original v(): audio capture + decoder core init (logic unchanged) */ - public void v() { - this.f11036E = new a(); - b bVar = new b(mActivity.getApplicationContext()); - this.f11037F = bVar; - this.f11036E.f601l = bVar; - bVar.f619o = (WaterfallSurfaceView) this.f11035D.f11892k; - bVar.f620p = this; - bVar.f621q = this; - } - - /** Original onResume: restore decoding (message type/font/background/record start/waterfall) */ - public void onResume() { - android.content.SharedPreferences prefs = mActivity.getSharedPreferences( - mActivity.getPackageName() + "_preferences", Context.MODE_PRIVATE); - String messageType = prefs.getString("message_type", "ham_radio_qso"); - b bVar = this.f11037F; - if (bVar != null) { - bVar.f623s.set(messageType.equals("ham_radio_qso")); - } - ((DecodedTextView) this.f11035D.f11888g).setTextSize(Math.max(7, prefs.getInt("text_font_size", 18))); - b bVar2 = this.f11037F; - if (bVar2 != null) { - bVar2.f617m.b(mActivity); - ((DecodedTextView) this.f11035D.f11888g).setBackgroundColor(this.f11037F.f617m.f665a[0]); - } - a aVar = this.f11036E; - if (aVar != null) { - android.media.AudioRecord audioRecord = aVar.f596g; - audioRecord.startRecording(); - if (audioRecord.getState() != 1) { - android.util.Log.e("AudioRecord", "cannot start"); - } - aVar.f598i.set(true); - } - ((WaterfallSurfaceView) this.f11035D.f11892k).onResume(); - // Originally: ad lifecycle (removed) - } - - /** Original onPause: stop recording + waterfall pause */ - public void onPause() { - a aVar = this.f11036E; - if (aVar != null) { - aVar.f598i.set(false); - android.media.AudioRecord audioRecord = aVar.f596g; - audioRecord.stop(); - if (audioRecord.getState() != 1) { - android.util.Log.e("AudioRecord", "cannot stop"); - } - } - ((WaterfallSurfaceView) this.f11035D.f11892k).onPause(); - } - - /** Original onDestroy: release audio/decoder (billing cleanup removed) */ - public void onDestroy() { - a aVar = this.f11036E; - if (aVar != null) { - aVar.f598i.set(false); - try { - aVar.f596g.stop(); - aVar.f596g.release(); - } catch (Exception ignored) { - } - aVar.f597h.shutdownNow(); - } - this.f11036E = null; - this.f11037F = null; - } - - /** Menu: clear decoded text (original clear_mnu) */ - public void clearDecoded() { - ((DecodedTextView) this.f11035D.f11888g).setText(""); - } - - /** Menu: pause/resume decoding (original pause_mnu, red/white icon toggle logic) */ - public boolean togglePause() { - java.util.concurrent.atomic.AtomicBoolean atomicBoolean = ((DecodedTextView) this.f11035D.f11888g).f11033o; - atomicBoolean.set(!atomicBoolean.get()); - return atomicBoolean.get(); - } - - /** Menu: save text (original save_mnu -> DecodedTextView.r()) */ - public void saveText() { - ((DecodedTextView) this.f11035D.f11888g).r(); - } - - /** Menu: record signals (original record_signals_mnu) */ - public void recordSignals() { - this.f11037F.f626v.set(true); - } - - /** Original tap_back_again_to_close hint */ - public boolean handleBackPress() { - if (System.currentTimeMillis() < this.f11038G + 2000) { - return true; // double-back: exit - } - this.f11038G = System.currentTimeMillis(); - Toast.makeText(mActivity, R.string.tap_back_again_to_close, 0).show(); - return false; - } - - /** Start decoding after permission granted (original onRequestPermissionsResult success) */ - public void onPermissionGranted() { - v(); - } -} diff --git a/feature/cw/src/main/java/com/ve3nea/morse_expert/ScaleView.java b/feature/cw/src/main/java/com/ve3nea/morse_expert/ScaleView.java deleted file mode 100644 index 16e7410e..00000000 --- a/feature/cw/src/main/java/com/ve3nea/morse_expert/ScaleView.java +++ /dev/null @@ -1,76 +0,0 @@ -package com.ve3nea.morse_expert; - -import android.content.Context; -import android.graphics.Canvas; -import android.graphics.Paint; -import android.graphics.Path; -import android.util.AttributeSet; -import android.view.View; - -/* loaded from: classes.dex */ -public class ScaleView extends View { - public int f; - - /* renamed from: g, reason: collision with root package name */ - public int f11041g; - - /* renamed from: h, reason: collision with root package name */ - public final Paint f11042h; - - /* renamed from: i, reason: collision with root package name */ - public final Paint f11043i; - - /* renamed from: j, reason: collision with root package name */ - public final Paint f11044j; - - /* renamed from: k, reason: collision with root package name */ - public final Paint f11045k; - - public ScaleView(Context context, AttributeSet attributeSet) { - super(context, attributeSet); - Paint paint = new Paint(); - this.f11042h = paint; - paint.setColor(-16711936); - Paint paint2 = new Paint(); - this.f11043i = paint2; - paint2.setColor(-16744448); - Paint paint3 = new Paint(); - this.f11044j = paint3; - paint3.setColor(-256); - Paint paint4 = new Paint(); - this.f11045k = paint4; - paint4.setColor(-8355840); - } - - @Override // android.view.View - public final void onDraw(Canvas canvas) { - Paint paint; - super.onDraw(canvas); - int i4 = this.f11041g; - if (i4 != 1) { - if (i4 != 2) { - if (i4 != 3) { - if (i4 != 4) { - return; - } else { - paint = this.f11044j; - } - } else { - paint = this.f11045k; - } - } else { - paint = this.f11042h; - } - } else { - paint = this.f11043i; - } - int round = (int) Math.round(getWidth() * 0.7d); - Path path = new Path(); - path.moveTo(0.0f, this.f); - float f = round; - path.lineTo(f, this.f - round); - path.lineTo(f, this.f + round); - path.close(); - canvas.drawPath(path, paint); - } -} diff --git a/feature/cw/src/main/java/com/ve3nea/morse_expert/WaterfallSurfaceView.java b/feature/cw/src/main/java/com/ve3nea/morse_expert/WaterfallSurfaceView.java deleted file mode 100644 index 73d51de7..00000000 --- a/feature/cw/src/main/java/com/ve3nea/morse_expert/WaterfallSurfaceView.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.ve3nea.morse_expert; - -import J2.b; -import android.content.Context; -import android.opengl.GLSurfaceView; -import android.util.AttributeSet; - -/* loaded from: classes.dex */ -public class WaterfallSurfaceView extends GLSurfaceView { - public final b f; - - public WaterfallSurfaceView(Context context, AttributeSet attributeSet) { - super(context, attributeSet); - setEGLContextClientVersion(2); - b bVar = new b(context, H2.b.f603B); - this.f = bVar; - setRenderer(bVar); - } -} diff --git a/feature/cw/src/main/java/d1/AbstractC1518b.java b/feature/cw/src/main/java/d1/AbstractC1518b.java deleted file mode 100644 index ca3196fa..00000000 --- a/feature/cw/src/main/java/d1/AbstractC1518b.java +++ /dev/null @@ -1,82 +0,0 @@ -package d1; - -/* renamed from: d1.b, reason: case insensitive filesystem */ -/* 照搬自 Morse Expert 1.15, 混淆名保持。b(Parcel)/c(y2.d) 为库工具已裁剪(L1/y2 库依赖)。 */ -public abstract /* synthetic */ class AbstractC1518b { - public static float a(float f, float f4, k3.d dVar, long j4, float f5, float f6) { - dVar.c(j4, f - f4); - return f5 + f6; - } - - public static String d(String str, int i4) { - return str + i4; - } - - public static String e(String str, String str2) { - return str + str2; - } - - public static String f(String str, String str2, String str3) { - return str + str2 + str3; - } - - public static String g(StringBuilder sb, int i4, String str) { - sb.append(i4); - sb.append(str); - return sb.toString(); - } - - public static String h(StringBuilder sb, String str, String str2) { - sb.append(str); - sb.append(str2); - return sb.toString(); - } - - public static /* synthetic */ boolean i(Object obj) { - return obj != null; - } - - public static float j(float f, float f4, k3.d dVar, long j4, float f5, float f6) { - dVar.c(j4, f + f4); - return f5 + f6; - } - - public static String k(String str, String str2) { - return str + str2; - } - - public static float l(float f, float f4, k3.d dVar, long j4, float f5, float f6) { - dVar.c(j4, f - f4); - return f5 - f6; - } - - public static float m(float f, float f4, k3.d dVar, long j4, float f5, float f6) { - dVar.c(j4, f + f4); - return f5 - f6; - } - - public static /* synthetic */ String n(int i4) { - switch (i4) { - case 1: - return "NONE"; - case 2: - return "LEFT"; - case 3: - return "TOP"; - case 4: - return "RIGHT"; - case 5: - return "BOTTOM"; - case 6: - return "BASELINE"; - case 7: - return "CENTER"; - case 8: - return "CENTER_X"; - case 9: - return "CENTER_Y"; - default: - throw null; - } - } -} diff --git a/feature/cw/src/main/java/g3/a.java b/feature/cw/src/main/java/g3/a.java deleted file mode 100644 index bef09c6e..00000000 --- a/feature/cw/src/main/java/g3/a.java +++ /dev/null @@ -1,34 +0,0 @@ -package g3; - -/* loaded from: classes.dex */ -public final class a { - - /* renamed from: a, reason: collision with root package name */ - public final int f11582a; - - /* renamed from: b, reason: collision with root package name */ - public final double f11583b; - public final double c; - - public a(double d4) { - int i4 = (int) (0.6366197723675814d * d4); - while (true) { - double d5 = -i4; - double d6 = 1.570796251296997d * d5; - double d7 = d4 + d6; - double d8 = 7.549789948768648E-8d * d5; - double d9 = d8 + d7; - double d10 = (-((d7 - d4) - d6)) + (-((d9 - d7) - d8)); - double d11 = d5 * 6.123233995736766E-17d; - double d12 = d11 + d9; - double d13 = d10 + (-((d12 - d9) - d11)); - if (d12 > 0.0d) { - this.f11582a = i4; - this.f11583b = d12; - this.c = d13; - return; - } - i4--; - } - } -} diff --git a/feature/cw/src/main/java/g3/b.java b/feature/cw/src/main/java/g3/b.java deleted file mode 100644 index 780e84ee..00000000 --- a/feature/cw/src/main/java/g3/b.java +++ /dev/null @@ -1,8 +0,0 @@ -package g3; - -/* loaded from: classes.dex */ -public abstract class b { - - /* renamed from: a, reason: collision with root package name */ - public static final double[][] f11584a = (double[][]) d.f11591a.clone(); -} diff --git a/feature/cw/src/main/java/g3/c.java b/feature/cw/src/main/java/g3/c.java deleted file mode 100644 index b196010f..00000000 --- a/feature/cw/src/main/java/g3/c.java +++ /dev/null @@ -1,507 +0,0 @@ -package g3; - -/* loaded from: classes.dex */ -public abstract class c { - - /* renamed from: a, reason: collision with root package name */ - public static final double[][] f11585a; - - /* renamed from: b, reason: collision with root package name */ - public static final double[] f11586b; - public static final double[] c; - - /* renamed from: d, reason: collision with root package name */ - public static final double[] f11587d; - - /* renamed from: e, reason: collision with root package name */ - public static final double[] f11588e; - public static final long[] f; - - /* renamed from: g, reason: collision with root package name */ - public static final long[] f11589g; - - /* renamed from: h, reason: collision with root package name */ - public static final double[] f11590h; - - static { - StrictMath.log(Double.MAX_VALUE); - f11585a = new double[][]{new double[]{1.0d, 5.669184079525E-24d}, new double[]{-0.25d, -0.25d}, new double[]{0.3333333134651184d, 1.986821492305628E-8d}, new double[]{-0.25d, -6.663542893624021E-14d}, new double[]{0.19999998807907104d, 1.1921056801463227E-8d}, new double[]{-0.1666666567325592d, -7.800414592973399E-9d}, new double[]{0.1428571343421936d, 5.650007086920087E-9d}, new double[]{-0.12502530217170715d, -7.44321345601866E-11d}, new double[]{0.11113807559013367d, 9.219544613762692E-9d}}; - f11586b = new double[]{0.0d, 0.1246747374534607d, 0.24740394949913025d, 0.366272509098053d, 0.4794255495071411d, 0.5850973129272461d, 0.6816387176513672d, 0.7675435543060303d, 0.8414709568023682d, 0.902267575263977d, 0.9489846229553223d, 0.9808930158615112d, 0.9974949359893799d, 0.9985313415527344d}; - c = new double[]{0.0d, -4.068233003401932E-9d, 9.755392680573412E-9d, 1.9987994582857286E-8d, -1.0902938113007961E-8d, -3.9986783938944604E-8d, 4.23719669792332E-8d, -5.207000323380292E-8d, 2.800552834259E-8d, 1.883511811213715E-8d, -3.5997360512765566E-9d, 4.116164446561962E-8d, 5.0614674548127384E-8d, -1.0129027912496858E-9d}; - f11587d = new double[]{1.0d, 0.9921976327896118d, 0.9689123630523682d, 0.9305076599121094d, 0.8775825500488281d, 0.8109631538391113d, 0.7316888570785522d, 0.6409968137741089d, 0.5403022766113281d, 0.4311765432357788d, 0.3153223395347595d, 0.19454771280288696d, 0.07073719799518585d, -0.05417713522911072d}; - f11588e = new double[]{0.0d, 3.4439717236742845E-8d, 5.865827662008209E-8d, -3.7999795083850525E-8d, 1.184154459111628E-8d, -3.43338934259355E-8d, 1.1795268640216787E-8d, 4.438921624363781E-8d, 2.925681159240093E-8d, -2.6437112632041807E-8d, 2.2860509143963117E-8d, -4.813899778443457E-9d, 3.6725170580355583E-9d, 2.0217439756338078E-10d}; - f = new long[]{2935890503282001226L, 9154082963658192752L, 3952090531849364496L, 9193070505571053912L, 7910884519577875640L, 113236205062349959L, 4577762542105553359L, -5034868814120038111L, 4208363204685324176L, 5648769086999809661L, 2819561105158720014L, -4035746434778044925L, -302932621132653753L, -2644281811660520851L, -3183605296591799669L, 6722166367014452318L, -3512299194304650054L, -7278142539171889152L}; - f11589g = new long[]{-3958705157555305932L, -4267615245585081135L}; - f11590h = new double[]{0.0d, 0.125d, 0.25d, 0.375d, 0.5d, 0.625d, 0.75d, 0.875d, 1.0d, 1.125d, 1.25d, 1.375d, 1.5d, 1.625d}; - } - - public static double a(double d4) { - double d5; - if (d4 != d4) { - return d4; - } - if (d4 == d4 && d4 < 4.503599627370496E15d && d4 > -4.503599627370496E15d) { - long j4 = (long) d4; - if (d4 < 0.0d && j4 != d4) { - j4--; - } - if (j4 == 0) { - d5 = j4 * d4; - } else { - d5 = j4; - } - } else { - d5 = d4; - } - if (d5 == d4) { - return d5; - } - double d6 = d5 + 1.0d; - if (d6 == 0.0d) { - return d4 * d6; - } - return d6; - } - - public static double b(double d4) { - double g4; - double d5 = 0.0d; - if (d4 < 0.0d) { - d4 = -d4; - } - if (d4 != d4 || d4 == Double.POSITIVE_INFINITY) { - return Double.NaN; - } - int i4 = 0; - if (d4 > 3294198.0d) { - double[] dArr = new double[3]; - e(d4, dArr); - i4 = ((int) dArr[0]) & 3; - d4 = dArr[1]; - d5 = dArr[2]; - } else if (d4 > 1.5707963267948966d) { - a aVar = new a(d4); - i4 = aVar.f11582a & 3; - d4 = aVar.f11583b; - d5 = aVar.c; - } - if (i4 != 0) { - if (i4 != 1) { - if (i4 != 2) { - if (i4 != 3) { - return Double.NaN; - } - return g(d4, d5); - } - g4 = c(d4, d5); - } else { - g4 = g(d4, d5); - } - return -g4; - } - return c(d4, d5); - } - - public static double c(double d4, double d5) { - double d6 = 1.5707963267948966d - d4; - return g(d6, (6.123233995736766E-17d - d5) + (-((d6 - 1.5707963267948966d) + d4))); - } - - public static double d(double d4) { - if (d4 != 0.0d) { - long doubleToRawLongBits = Double.doubleToRawLongBits(d4); - if (((Long.MIN_VALUE & doubleToRawLongBits) != 0 || d4 != d4) && d4 != 0.0d) { - return Double.NaN; - } - if (d4 == Double.POSITIVE_INFINITY) { - return Double.POSITIVE_INFINITY; - } - int i4 = ((int) (doubleToRawLongBits >> 52)) - 1023; - if ((9218868437227405312L & doubleToRawLongBits) == 0) { - if (d4 == 0.0d) { - return Double.NEGATIVE_INFINITY; - } - doubleToRawLongBits <<= 1; - while ((4503599627370496L & doubleToRawLongBits) == 0) { - i4--; - doubleToRawLongBits <<= 1; - } - } - if ((i4 == -1 || i4 == 0) && d4 < 1.01d && d4 > 0.99d) { - double d5 = d4 - 1.0d; - double d6 = d5 * 1.073741824E9d; - double d7 = (d5 + d6) - d6; - double d8 = d5 - d7; - double[][] dArr = f11585a; - double[] dArr2 = dArr[dArr.length - 1]; - double d9 = dArr2[0]; - double d10 = dArr2[1]; - for (int length = dArr.length - 2; length >= 0; length--) { - double d11 = d9 * d7; - double d12 = (d10 * d8) + (d10 * d7) + (d9 * d8); - double d13 = d11 * 1.073741824E9d; - double d14 = (d11 + d13) - d13; - double d15 = (d11 - d14) + d12; - double[] dArr3 = dArr[length]; - double d16 = d14 + dArr3[0]; - double d17 = d15 + dArr3[1]; - double d18 = d16 * 1.073741824E9d; - d9 = (d16 + d18) - d18; - d10 = (d16 - d9) + d17; - } - double d19 = d9 * d7; - double d20 = (d10 * d8) + (d7 * d10) + (d9 * d8); - double d21 = 1.073741824E9d * d19; - double d22 = (d19 + d21) - d21; - return (d19 - d22) + d20 + d22; - } - long j4 = 4499201580859392L & doubleToRawLongBits; - double[] dArr4 = b.f11584a[(int) (j4 >> 42)]; - double d23 = (doubleToRawLongBits & 4398046511103L) / (j4 + 4.503599627370496E15d); - double d24 = (((((((((((-0.16624882440418567d) * d23) + 0.19999954120254515d) * d23) - 0.2499999997677497d) * d23) + 0.3333333333332802d) * d23) - 0.5d) * d23) + 1.0d) * d23; - double d25 = i4; - double d26 = 0.6931470632553101d * d25; - double d27 = dArr4[0]; - double d28 = d26 + d27; - double d29 = (-((d28 - d26) - d27)) + 0.0d; - double d30 = d28 + d24; - double d31 = d29 + (-((d30 - d28) - d24)); - double d32 = d25 * 1.1730463525082348E-7d; - double d33 = d30 + d32; - double d34 = d31 + (-((d33 - d30) - d32)); - double d35 = dArr4[1]; - double d36 = d33 + d35; - double d37 = d36 + 0.0d; - return d34 + (-((d36 - d33) - d35)) + (-((d37 - d36) - 0.0d)) + d37; - } - return Double.NEGATIVE_INFINITY; - } - - public static void e(double d4, double[] dArr) { - long j4; - long j5; - long j6; - boolean z3; - boolean z4; - boolean z5; - boolean z6; - boolean z7; - boolean z8; - boolean z9; - boolean z10; - boolean z11; - boolean z12; - boolean z13; - boolean z14; - boolean z15; - boolean z16; - boolean z17; - boolean z18; - boolean z19; - boolean z20; - boolean z21; - boolean z22; - boolean z23; - long j7; - long doubleToRawLongBits = Double.doubleToRawLongBits(d4); - int i4 = ((int) ((doubleToRawLongBits >> 52) & 2047)) - 1022; - long j8 = ((doubleToRawLongBits & 4503599627370495L) | 4503599627370496L) << 11; - int i5 = i4 >> 6; - int i6 = i4 - (i5 << 6); - long[] jArr = f; - if (i6 != 0) { - if (i5 == 0) { - j7 = 0; - } else { - j7 = jArr[i5 - 1] << i6; - } - long j9 = jArr[i5]; - int i7 = 64 - i6; - j4 = j7 | (j9 >>> i7); - long j10 = jArr[i5 + 1]; - j5 = (j9 << i6) | (j10 >>> i7); - j6 = (jArr[i5 + 2] >>> i7) | (j10 << i6); - } else { - if (i5 == 0) { - j4 = 0; - } else { - j4 = jArr[i5 - 1]; - } - j5 = jArr[i5]; - j6 = jArr[i5 + 1]; - } - long j11 = j8 >>> 32; - long j12 = j8 & 4294967295L; - long j13 = j5 >>> 32; - long j14 = j5 & 4294967295L; - long j15 = j11 * j13; - long j16 = j12 * j14; - long j17 = j13 * j12; - long j18 = j14 * j11; - long j19 = j16 + (j18 << 32); - long j20 = j15 + (j18 >>> 32); - if ((j16 & Long.MIN_VALUE) != 0) { - z3 = true; - } else { - z3 = false; - } - if ((j18 & 2147483648L) != 0) { - z4 = true; - } else { - z4 = false; - } - long j21 = j19 & Long.MIN_VALUE; - if (j21 != 0) { - z5 = true; - } else { - z5 = false; - } - if ((z3 && z4) || ((z3 || z4) && !z5)) { - j20++; - } - if (j21 != 0) { - z6 = true; - } else { - z6 = false; - } - if ((j17 & 2147483648L) != 0) { - z7 = true; - } else { - z7 = false; - } - long j22 = j19 + (j17 << 32); - long j23 = j20 + (j17 >>> 32); - long j24 = j22 & Long.MIN_VALUE; - if (j24 != 0) { - z8 = true; - } else { - z8 = false; - } - if ((z6 && z7) || ((z6 || z7) && !z8)) { - j23++; - } - long j25 = j6 >>> 32; - long j26 = (j11 * j25) + ((((j6 & 4294967295L) * j11) + (j25 * j12)) >>> 32); - if (j24 != 0) { - z9 = true; - } else { - z9 = false; - } - if ((j26 & Long.MIN_VALUE) != 0) { - z10 = true; - } else { - z10 = false; - } - long j27 = j22 + j26; - if ((j27 & Long.MIN_VALUE) != 0) { - z11 = true; - } else { - z11 = false; - } - if ((z9 && z10) || ((z9 || z10) && !z11)) { - j23++; - } - long j28 = j4 >>> 32; - long j29 = j4 & 4294967295L; - long j30 = (j12 * j29) + (((j11 * j29) + (j12 * j28)) << 32) + j23; - int i8 = (int) (j30 >>> 62); - long j31 = (j27 >>> 62) | (j30 << 2); - long j32 = j27 << 2; - long j33 = j31 >>> 32; - long j34 = j31 & 4294967295L; - long[] jArr2 = f11589g; - long j35 = jArr2[0]; - long j36 = j35 >>> 32; - long j37 = j35 & 4294967295L; - long j38 = j34 * j37; - long j39 = j34 * j36; - long j40 = j33 * j37; - long j41 = j38 + (j40 << 32); - long j42 = (j33 * j36) + (j40 >>> 32); - if ((j38 & Long.MIN_VALUE) != 0) { - z12 = true; - } else { - z12 = false; - } - if ((j40 & 2147483648L) != 0) { - z13 = true; - } else { - z13 = false; - } - long j43 = j41 & Long.MIN_VALUE; - if (j43 != 0) { - z14 = true; - } else { - z14 = false; - } - if ((z12 && z13) || ((z12 || z13) && !z14)) { - j42++; - } - if (j43 != 0) { - z15 = true; - } else { - z15 = false; - } - if ((j39 & 2147483648L) != 0) { - z16 = true; - } else { - z16 = false; - } - long j44 = j41 + (j39 << 32); - long j45 = j42 + (j39 >>> 32); - long j46 = j44 & Long.MIN_VALUE; - if (j46 != 0) { - z17 = true; - } else { - z17 = false; - } - if ((z15 && z16) || ((z15 || z16) && !z17)) { - j45++; - } - long j47 = jArr2[1]; - long j48 = j47 >>> 32; - long j49 = (j33 * j48) + (((j33 * (j47 & 4294967295L)) + (j34 * j48)) >>> 32); - if (j46 != 0) { - z18 = true; - } else { - z18 = false; - } - if ((j49 & Long.MIN_VALUE) != 0) { - z19 = true; - } else { - z19 = false; - } - long j50 = j44 + j49; - long j51 = j50 & Long.MIN_VALUE; - if (j51 != 0) { - z20 = true; - } else { - z20 = false; - } - if ((z18 && z19) || ((z18 || z19) && !z20)) { - j45++; - } - long j52 = j32 >>> 32; - long j53 = (j52 * j36) + (((j52 * j37) + ((j32 & 4294967295L) * j36)) >>> 32); - if (j51 != 0) { - z21 = true; - } else { - z21 = false; - } - if ((j53 & Long.MIN_VALUE) != 0) { - z22 = true; - } else { - z22 = false; - } - if (((j50 + j53) & Long.MIN_VALUE) != 0) { - z23 = true; - } else { - z23 = false; - } - if ((z21 && z22) || ((z21 || z22) && !z23)) { - j45++; - } - double d5 = (j45 >>> 12) / 4.503599627370496E15d; - double d6 = ((((j45 & 4095) << 40) + (f11589g[0] >>> 24)) / 4.503599627370496E15d) / 4.503599627370496E15d; // r34 = f11589g[0](smali: aget-wide v5, v2) - double d7 = d5 + d6; - dArr[0] = i8; - dArr[1] = d7 * 2.0d; - dArr[2] = (-((d7 - d5) - d6)) * 2.0d; - } - - /* JADX WARN: Removed duplicated region for block: B:20:0x005f */ - /* JADX WARN: Removed duplicated region for block: B:22:0x0063 */ - /* JADX WARN: Removed duplicated region for block: B:32:0x007a */ - /* - Code decompiled incorrectly, please refer to instructions dump. - */ - public static double f(double d4) { - boolean z3; - double d5; - double d6; - double g4; - int i4 = 0; - double d7 = 0.0d; - if (d4 < 0.0d) { - d5 = -d4; - z3 = true; - } else { - z3 = false; - d5 = d4; - } - if (d5 == 0.0d) { - if (Double.doubleToRawLongBits(d4) >= 0) { - return 0.0d; - } - return -0.0d; - } - if (d5 != d5 || d5 == Double.POSITIVE_INFINITY) { - return Double.NaN; - } - if (d5 > 3294198.0d) { - double[] dArr = new double[3]; - e(d5, dArr); - i4 = ((int) dArr[0]) & 3; - d5 = dArr[1]; - d6 = dArr[2]; - } else { - if (d5 > 1.5707963267948966d) { - a aVar = new a(d5); - int i5 = aVar.f11582a & 3; - d5 = aVar.f11583b; - d6 = aVar.c; - i4 = i5; - } - if (z3) { - i4 ^= 2; - } - // smali 证实: f() = sin(象限 switch!): - // case 0 -> g(d5,0)(sin(0-π/2)) - // case 1 -> c(d5,0)(sin(π/2-π) = cos(余角)) - // case 2 -> -g(d5,0)(sin(π-3π/2) = -sin(余角)) - // case 3 -> -c(d5,0)(sin(3π/2-2π) = -cos(余角)) - // jadx 畸形嵌套 if 把 case 0 还原成 return NaN(小角度全 NaN!), - // 且 case 1/2/3 全走 g() —— 旋转因子表 329 个 NaN + 频谱错乱的根源! - if (i4 == 0) { - return g(d5, d7); - } - if (i4 == 1) { - return c(d5, d7); - } - if (i4 == 2) { - return -g(d5, d7); - } - return -c(d5, d7); - } - d7 = d6; - // jadx 还原不完整(smali 650 行, jadx 只还原 63 行); f() 未被任何代码调用(死代码), - // 按 smali 尾部语义补 return(cond_0: v22 = v22 + v14; return v22) - return d7; - } - - public static double g(double d4, double d5) { - int i4 = (int) ((8.0d * d4) + 0.5d); - double d6 = d4 - f11590h[i4]; - double d7 = f11586b[i4]; - double d8 = c[i4]; - double d9 = f11587d[i4]; - double d10 = f11588e[i4]; - double d11 = d6 * d6; - double d12 = ((((((2.7553817452272217E-6d * d11) - 1.9841269659586505E-4d) * d11) + 0.008333333333329196d) * d11) - 0.16666666666666666d) * d11 * d6; - double d13 = ((((((2.479773539153719E-5d * d11) - 0.0013888888689039883d) * d11) + 0.041666666666621166d) * d11) - 0.49999999999999994d) * d11; - double d14 = 1.073741824E9d * d6; - double d15 = (d6 + d14) - d14; - double d16 = (d6 - d15) + d12; - double d17 = d7 + 0.0d; - double d18 = d9 * d15; - double d19 = d17 + d18; - double d20 = (d10 * d16) + (d8 * d13) + (d10 * d15) + (d9 * d16) + (d7 * d13) + (-((d17 - 0.0d) - d7)) + 0.0d + (-((d19 - d17) - d18)) + d8; - if (d5 != 0.0d) { - double d21 = (((d13 + 1.0d) * (d9 + d10)) - ((d15 + d16) * (d7 + d8))) * d5; - double d22 = d19 + d21; - d20 += -((d22 - d19) - d21); - d19 = d22; - } - return d19 + d20; - } -} diff --git a/feature/cw/src/main/java/g3/d.java b/feature/cw/src/main/java/g3/d.java deleted file mode 100644 index aef6b700..00000000 --- a/feature/cw/src/main/java/g3/d.java +++ /dev/null @@ -1,9 +0,0 @@ -package g3; - -/* loaded from: classes.dex */ -public abstract class d { - - /* renamed from: a, reason: collision with root package name */ - public static final double[][] f11591a = {new double[]{0.0d, 0.0d}, new double[]{9.760860120877624E-4d, -3.903230345984362E-11d}, new double[]{0.0019512202125042677d, -8.124251825289188E-11d}, new double[]{0.0029254043474793434d, -1.8374207360194882E-11d}, new double[]{0.0038986406289041042d, -2.1324678121885073E-10d}, new double[]{0.004870930686593056d, -4.5199654318611534E-10d}, new double[]{0.00584227591753006d, -2.933016992001806E-10d}, new double[]{0.006812678650021553d, -2.325147219074669E-10d}, new double[]{0.007782140746712685d, -3.046577356838847E-10d}, new double[]{0.008750664070248604d, -5.500631513861575E-10d}, new double[]{0.00971824862062931d, 8.48292035519895E-10d}, new double[]{0.010684899985790253d, 1.1422610134013436E-10d}, new double[]{0.01165061630308628d, 9.168889933128375E-10d}, new double[]{0.012615403160452843d, -5.303786078838E-10d}, new double[]{0.013579258695244789d, -5.688639355498786E-10d}, new double[]{0.01454218477010727d, 7.296670293275653E-10d}, new double[]{0.015504186972975731d, -4.370104767451421E-10d}, new double[]{0.016465261578559875d, 1.43695591408832E-9d}, new double[]{0.01742541790008545d, -1.1862263158849434E-9d}, new double[]{0.018384650349617004d, -9.482976524690715E-10d}, new double[]{0.01934296265244484d, 1.9068609515836638E-10d}, new double[]{0.020300358533859253d, 2.655990315697216E-10d}, new double[]{0.021256837993860245d, 1.0315548713040775E-9d}, new double[]{0.022212404757738113d, 5.13345647019085E-10d}, new double[]{0.02316705882549286d, 4.5604151934208014E-10d}, new double[]{0.02412080392241478d, -1.1255706987475148E-9d}, new double[]{0.025073636323213577d, 1.2289023836765196E-9d}, new double[]{0.02602556347846985d, 1.7990281828096504E-9d}, new double[]{0.026976589113473892d, -1.4152718164638451E-9d}, new double[]{0.02792670577764511d, 7.568772963781632E-10d}, new double[]{0.0288759246468544d, -1.1449998592111558E-9d}, new double[]{0.029824241995811462d, -1.6850976862319495E-9d}, new double[]{0.030771657824516296d, 8.422373919843096E-10d}, new double[]{0.0317181795835495d, 6.872350402175489E-10d}, new double[]{0.03266380727291107d, -4.541194749189272E-10d}, new double[]{0.03360854089260101d, -8.9064764856495E-10d}, new double[]{0.034552380442619324d, 1.0640404096769032E-9d}, new double[]{0.0354953333735466d, -3.5901655945224663E-10d}, new double[]{0.03643739968538284d, -3.4829517943661266E-9d}, new double[]{0.037378571927547455d, 8.149473794244232E-10d}, new double[]{0.03831886500120163d, -6.990650304449166E-10d}, new double[]{0.03925827145576477d, 1.0883076226453258E-9d}, new double[]{0.040196798741817474d, 3.845192807999274E-10d}, new double[]{0.04113444685935974d, -1.1570594692045927E-9d}, new double[]{0.04207121580839157d, -1.8877045166697178E-9d}, new double[]{0.043007105588912964d, -1.6332083257987747E-10d}, new double[]{0.04394212365150452d, -1.7950057534514933E-9d}, new double[]{0.04487626254558563d, 2.302710041648838E-9d}, new double[]{0.045809537172317505d, -1.1410233017161343E-9d}, new double[]{0.04674194008111954d, -3.0498741599744685E-9d}, new double[]{0.04767347127199173d, -1.8026348269183678E-9d}, new double[]{0.04860413819551468d, -3.233204600453039E-9d}, new double[]{0.04953393340110779d, 1.7211688427961583E-9d}, new double[]{0.05046287178993225d, -2.329967807055457E-10d}, new double[]{0.05139094591140747d, -4.191810118556531E-11d}, new double[]{0.052318163216114044d, -3.5574324788328143E-9d}, new double[]{0.053244516253471375d, -1.7346590916458485E-9d}, new double[]{0.05417001247406006d, -4.343048751383674E-10d}, new double[]{0.055094651877880096d, 1.92909364037955E-9d}, new double[]{0.056018441915512085d, -5.139745677199588E-10d}, new double[]{0.05694137513637543d, 1.2637629975129189E-9d}, new double[]{0.05786345899105072d, 1.3840561112481119E-9d}, new double[]{0.058784693479537964d, 1.414889689612056E-9d}, new double[]{0.05970507860183716d, 2.9199191907666474E-9d}, new double[]{0.0606246218085289d, 7.90594243412116E-12d}, new double[]{0.06154331564903259d, 1.6844747839686189E-9d}, new double[]{0.06246116757392883d, 2.0498074572151747E-9d}, new double[]{0.06337818503379822d, -4.800180493433863E-9d}, new double[]{0.06429435312747955d, -2.4220822960064277E-9d}, new double[]{0.06520968675613403d, -4.179048566709334E-9d}, new double[]{0.06612417101860046d, 6.363872957010456E-9d}, new double[]{0.06703783571720123d, 9.339468680056365E-10d}, new double[]{0.06795066595077515d, -4.04226739708981E-9d}, new double[]{0.0688626617193222d, -7.043545052852817E-9d}, new double[]{0.06977382302284241d, -6.552819560439773E-9d}, new double[]{0.07068414986133575d, -1.0571674860370546E-9d}, new double[]{0.07159365713596344d, -3.948954622015801E-9d}, new double[]{0.07250232994556427d, 1.1776625988228244E-9d}, new double[]{0.07341018319129944d, 9.221072639606492E-10d}, new double[]{0.07431721687316895d, -3.219119568928366E-9d}, new double[]{0.0752234160900116d, 5.147575929018918E-9d}, new double[]{0.07612881064414978d, -2.291749683541979E-9d}, new double[]{0.07703337073326111d, 5.749565906124772E-9d}, new double[]{0.07793712615966797d, 9.495158151301779E-10d}, new double[]{0.07884006202220917d, -3.144331429489291E-10d}, new double[]{0.0797421783208847d, 3.430029236134205E-9d}, new double[]{0.08064348995685577d, -1.2499290483167703E-9d}, new double[]{0.08154398202896118d, 2.011215719133196E-9d}, new double[]{0.08244366943836212d, -2.2728753031387152E-10d}, new double[]{0.0833425521850586d, -6.508966857277253E-9d}, new double[]{0.0842406153678894d, -4.801131671405377E-10d}, new double[]{0.08513787388801575d, 4.406750291994231E-9d}, new double[]{0.08603434264659882d, -5.304795662536171E-9d}, new double[]{0.08692999184131622d, 1.6284313912612293E-9d}, new double[]{0.08782485127449036d, -3.158898981674071E-9d}, new double[]{0.08871890604496002d, -3.3324878834139977E-9d}, new double[]{0.08961215615272522d, 2.536961912893389E-9d}, new double[]{0.09050461649894714d, 9.737596728980696E-10d}, new double[]{0.0913962870836258d, -6.600437262505396E-9d}, new double[]{0.09228715300559998d, -3.866609889222889E-9d}, new double[]{0.09317722916603088d, -4.311847594020281E-9d}, new double[]{0.09406651556491852d, -6.525851105645959E-9d}, new double[]{0.09495499730110168d, 5.799080912675435E-9d}, new double[]{0.09584270417690277d, 4.2634204358490415E-9d}, new double[]{0.09672962129116058d, 5.167390528799477E-9d}, new double[]{0.09761576354503632d, -4.994827392841906E-9d}, new double[]{0.09850110113620758d, 4.970725577861395E-9d}, new double[]{0.09938566386699677d, 6.6496705953229645E-9d}, new double[]{0.10026945173740387d, 1.4262712796792241E-9d}, new double[]{0.1011524498462677d, 5.5822855204629114E-9d}, new double[]{0.10203467309474945d, 5.593494835247651E-9d}, new double[]{0.10291612148284912d, 2.8332008343480686E-9d}, new double[]{0.10379679501056671d, -1.3289231465997192E-9d}, new double[]{0.10467669367790222d, -5.526819276639527E-9d}, new double[]{0.10555580258369446d, 6.503128678219282E-9d}, new double[]{0.10643415153026581d, 6.317463237641817E-9d}, new double[]{0.10731174051761627d, -4.728528221305482E-9d}, new double[]{0.10818853974342346d, 4.519199083083901E-9d}, new double[]{0.10906457901000977d, 5.606492666349878E-9d}, new double[]{0.10993985831737518d, -1.220176214398581E-10d}, new double[]{0.11081436276435852d, 3.5759315936869937E-9d}, new double[]{0.11168810725212097d, 3.1367659571899855E-9d}, new double[]{0.11256109178066254d, -1.0543075713098835E-10d}, new double[]{0.11343331634998322d, -4.820065619207094E-9d}, new double[]{0.11430476605892181d, 5.221136819669415E-9d}, new double[]{0.11517547070980072d, 1.5395018670011342E-9d}, new double[]{0.11604541540145874d, 3.5638391501880846E-10d}, new double[]{0.11691460013389587d, 2.9885336757136527E-9d}, new double[]{0.11778303980827332d, -4.151889860890893E-9d}, new double[]{0.11865071952342987d, -4.853823938804204E-9d}, new double[]{0.11951763927936554d, 2.189226237170704E-9d}, new double[]{0.12038381397724152d, 3.3791993048776982E-9d}, new double[]{0.1212492436170578d, 1.5811884868243975E-11d}, new double[]{0.12211392819881439d, -6.6045909118908625E-9d}, new double[]{0.1229778528213501d, -2.8786263916116364E-10d}, new double[]{0.12384103238582611d, 5.354472503748251E-9d}, new double[]{0.12470348179340363d, -3.2924463896248744E-9d}, new double[]{0.12556517124176025d, 4.856678149580005E-9d}, new double[]{0.12642613053321838d, 1.2791850600366742E-9d}, new double[]{0.12728634476661682d, 2.1525945093362843E-9d}, new double[]{0.12814581394195557d, 8.749974471767862E-9d}, new double[]{0.129004567861557d, -7.461209161105275E-9d}, new double[]{0.12986254692077637d, 1.4390208226263824E-8d}, new double[]{0.1307198405265808d, -1.3839477920475328E-8d}, new double[]{0.13157635927200317d, -1.483283901239408E-9d}, new double[]{0.13243216276168823d, -6.889072914229094E-9d}, new double[]{0.1332872211933136d, 9.990351100568362E-10d}, new double[]{0.13414156436920166d, -6.370937412495338E-9d}, new double[]{0.13499516248703003d, 2.05047480130511E-9d}, new double[]{0.1358480453491211d, -2.29509872547079E-9d}, new double[]{0.13670018315315247d, 1.16354361977249E-8d}, new double[]{0.13755163550376892d, -1.452496267904829E-8d}, new double[]{0.1384023129940033d, 9.865115839786888E-9d}, new double[]{0.13925230503082275d, -3.369999130712228E-9d}, new double[]{0.14010155200958252d, 6.602496401651853E-9d}, new double[]{0.14095008373260498d, 1.1205312852298845E-8d}, new double[]{0.14179790019989014d, 1.1660367213160203E-8d}, new double[]{0.142645001411438d, 9.186471222585239E-9d}, new double[]{0.14349138736724854d, 4.999341878263704E-9d}, new double[]{0.14433705806732178d, 3.11611905696257E-10d}, new double[]{0.14518201351165771d, -3.6671598175618173E-9d}, new double[]{0.14602625370025635d, -5.730477881659618E-9d}, new double[]{0.14686977863311768d, -4.674900007989718E-9d}, new double[]{0.1477125883102417d, 6.999732437141968E-10d}, new double[]{0.14855468273162842d, 1.159150872494107E-8d}, new double[]{0.14939609169960022d, -6.082714828488485E-10d}, new double[]{0.15023678541183472d, -4.905712741596318E-9d}, new double[]{0.1510767638683319d, -1.124848988733307E-10d}, new double[]{0.15191605687141418d, -1.484557220949851E-8d}, new double[]{0.15275460481643677d, 1.1682026251371384E-8d}, new double[]{0.15359249711036682d, -8.757272519238786E-9d}, new double[]{0.15442964434623718d, 1.4419920764774415E-8d}, new double[]{0.15526613593101501d, -7.019891063126053E-9d}, new double[]{0.15610191226005554d, -1.230153548825964E-8d}, new double[]{0.15693697333335876d, -2.574172005933276E-10d}, new double[]{0.15777134895324707d, 4.748140799544371E-10d}, new double[]{0.15860503911972046d, -8.943081874891003E-9d}, new double[]{0.15943801403045654d, 2.4500739038517657E-9d}, new double[]{0.1602703034877777d, 6.007922084557054E-9d}, new double[]{0.16110190749168396d, 2.8835418231126645E-9d}, new double[]{0.1619328260421753d, -5.772862039728412E-9d}, new double[]{0.16276302933692932d, 1.0988372954605789E-8d}, new double[]{0.16359257698059082d, -5.292913162607026E-9d}, new double[]{0.16442140936851501d, 6.12956339275823E-9d}, new double[]{0.16524958610534668d, -1.3210039516811888E-8d}, new double[]{0.16607704758644104d, -2.5711014608334873E-9d}, new double[]{0.16690382361412048d, 9.37721319457112E-9d}, new double[]{0.1677299439907074d, -6.0370682395944045E-9d}, new double[]{0.168555349111557d, 1.1918249660105651E-8d}, new double[]{0.1693800985813141d, 4.763282949656017E-9d}, new double[]{0.17020416259765625d, 3.4223342273948817E-9d}, new double[]{0.1710275411605835d, 9.014612241310916E-9d}, new double[]{0.1718502640724182d, -7.145758990550526E-9d}, new double[]{0.172672301530838d, -1.4142763934081504E-8d}, new double[]{0.1734936535358429d, -1.0865453656579032E-8d}, new double[]{0.17431432008743286d, 3.794385569450774E-9d}, new double[]{0.1751343309879303d, 1.1399188501627291E-9d}, new double[]{0.17595365643501282d, 1.2076238768270153E-8d}, new double[]{0.1767723262310028d, 7.901084730502162E-9d}, new double[]{0.17759034037590027d, -1.0288181007465474E-8d}, new double[]{0.1784076690673828d, -1.15945645153806E-8d}, new double[]{0.17922431230545044d, 5.073923825786778E-9d}, new double[]{0.18004029989242554d, 1.1004278077575267E-8d}, new double[]{0.1808556318283081d, 7.2831502374676964E-9d}, new double[]{0.18167030811309814d, -5.0054634662706464E-9d}, new double[]{0.18248429894447327d, 5.022108460298934E-9d}, new double[]{0.18329763412475586d, 8.642254225732676E-9d}, new double[]{0.18411031365394592d, 6.931054493326395E-9d}, new double[]{0.18492233753204346d, 9.619685356326533E-10d}, new double[]{0.18573370575904846d, -8.194157257980706E-9d}, new double[]{0.18654438853263855d, 1.0333241479437797E-8d}, new double[]{0.1873544454574585d, -1.9948340196027965E-9d}, new double[]{0.1881638467311859d, -1.4313002926259948E-8d}, new double[]{0.1889725625514984d, 4.241536392174967E-9d}, new double[]{0.18978065252304077d, -4.877952454011428E-9d}, new double[]{0.1905880868434906d, -1.0813801247641613E-8d}, new double[]{0.1913948655128479d, -1.2513218445781325E-8d}, new double[]{0.19220098853111267d, -8.925958555729115E-9d}, new double[]{0.1930064558982849d, 9.956860681280245E-10d}, new double[]{0.193811297416687d, -1.1505428993246996E-8d}, new double[]{0.1946154534816742d, 1.4217997464522202E-8d}, new double[]{0.19541901350021362d, -1.0200858727747717E-8d}, new double[]{0.19622188806533813d, 5.682607223902455E-9d}, new double[]{0.1970241367816925d, 3.2988908516009827E-9d}, new double[]{0.19782572984695435d, 1.3482965534659446E-8d}, new double[]{0.19862669706344604d, 7.462678536479685E-9d}, new double[]{0.1994270384311676d, -1.3734273888891115E-8d}, new double[]{0.20022669434547424d, 1.0521983802642893E-8d}, new double[]{0.20102575421333313d, -8.152742388541905E-9d}, new double[]{0.2018241584300995d, -9.133484280193855E-9d}, new double[]{0.20262190699577332d, 8.59763959528144E-9d}, new double[]{0.2034190595149994d, -1.3548568223001414E-8d}, new double[]{0.20421552658081055d, 1.4847880344628818E-8d}, new double[]{0.20501139760017395d, 5.390620378060543E-9d}, new double[]{0.2058066427707672d, -1.1109834472051523E-8d}, new double[]{0.20660123229026794d, -3.845373872038116E-9d}, new double[]{0.20739519596099854d, -1.6149279479975042E-9d}, new double[]{0.20818853378295898d, -3.4174925203771133E-9d}, new double[]{0.2089812457561493d, -8.254443919468538E-9d}, new double[]{0.20977330207824707d, 1.4672790944499144E-8d}, new double[]{0.2105647623538971d, 6.753452542942992E-9d}, new double[]{0.21135559678077698d, -1.218609462241927E-9d}, new double[]{0.21214580535888672d, -8.254218316367887E-9d}, new double[]{0.21293538808822632d, -1.3366540360587255E-8d}, new double[]{0.2137243151664734d, 1.4231244750190031E-8d}, new double[]{0.2145126760005951d, -1.3885660525939072E-8d}, new double[]{0.21530038118362427d, -7.3304404046850136E-9d}, new double[]{0.2160874605178833d, 5.072117654842356E-9d}, new double[]{0.21687394380569458d, -5.505080220459036E-9d}, new double[]{0.21765980124473572d, -8.286782292266659E-9d}, new double[]{0.2184450328350067d, -2.302351152358085E-9d}, new double[]{0.21922963857650757d, 1.3416565858314603E-8d}, new double[]{0.22001364827156067d, 1.0033721426962048E-8d}, new double[]{0.22079706192016602d, -1.1487079818684332E-8d}, new double[]{0.22157981991767883d, 9.420348186357043E-9d}, new double[]{0.2223619818687439d, 1.4110645699377834E-8d}, new double[]{0.2231435477733612d, 3.5408485497116107E-9d}, new double[]{0.22392448782920837d, 8.468072777056227E-9d}, new double[]{0.2247048318386078d, 4.255446699237779E-11d}, new double[]{0.22548454999923706d, 9.016946273084244E-9d}, new double[]{0.22626367211341858d, 6.537034810260226E-9d}, new double[]{0.22704219818115234d, -6.451285264969768E-9d}, new double[]{0.22782009840011597d, 7.979956357126066E-10d}, new double[]{0.22859740257263184d, -5.759582672039005E-10d}, new double[]{0.22937411069869995d, -9.633854121180397E-9d}, new double[]{0.23015019297599792d, 4.363736368635843E-9d}, new double[]{0.23092567920684814d, 1.2549416560182509E-8d}, new double[]{0.231700599193573d, -1.3946383592553814E-8d}, new double[]{0.2324748933315277d, -1.458843364504023E-8d}, new double[]{0.23324856162071228d, 1.1551692104697154E-8d}, new double[]{0.23402166366577148d, 5.795621295524984E-9d}, new double[]{0.23479416966438293d, -1.1301979046684263E-9d}, new double[]{0.23556607961654663d, -8.303779721781787E-9d}, new double[]{0.23633739352226257d, -1.4805271785394075E-8d}, new double[]{0.23710808157920837d, 1.0085373835899469E-8d}, new double[]{0.2378782033920288d, 7.679117635349454E-9d}, new double[]{0.2386477291584015d, 8.69177352065934E-9d}, new double[]{0.23941665887832642d, 1.4034725764547136E-8d}, new double[]{0.24018502235412598d, -5.185064518887831E-9d}, new double[]{0.2409527599811554d, 1.1544236628121676E-8d}, new double[]{0.24171993136405945d, 5.523085719902123E-9d}, new double[]{0.24248650670051575d, 7.456824943331887E-9d}, new double[]{0.24325251579284668d, -1.1555923403029638E-8d}, new double[]{0.24401789903640747d, 8.988361382732908E-9d}, new double[]{0.2447827160358429d, 1.0381848020926893E-8d}, new double[]{0.24554696679115295d, -6.480706118857055E-9d}, new double[]{0.24631062150001526d, -1.0904271124793968E-8d}, new double[]{0.2470736801624298d, -1.998183061531611E-9d}, new double[]{0.247836172580719d, -8.676137737360023E-9d}, new double[]{0.24859806895256042d, -2.4921733203932487E-10d}, new double[]{0.2493593990802765d, -5.635173762130303E-9d}, new double[]{0.2501201629638672d, -2.3951455355985637E-8d}, new double[]{0.25088030099868774d, 5.287121672447825E-9d}, new double[]{0.2516399025917053d, -6.447877375049486E-9d}, new double[]{0.25239890813827515d, 1.32472428796441E-9d}, new double[]{0.2531573176383972d, 2.9479464287605006E-8d}, new double[]{0.2539151906967163d, 1.9284247135543574E-8d}, new double[]{0.2546725273132324d, -2.8390360197221716E-8d}, new double[]{0.255429208278656d, 6.533522495226226E-9d}, new double[]{0.2561853528022766d, 5.713225978895991E-9d}, new double[]{0.25694090127944946d, 2.9618050962556135E-8d}, new double[]{0.25769591331481934d, 1.950605015323617E-8d}, new double[]{0.25845038890838623d, -2.3762031507525576E-8d}, new double[]{0.2592042088508606d, 1.98818938195077E-8d}, new double[]{0.25995755195617676d, -2.751925069084042E-8d}, new double[]{0.2607102394104004d, 1.3703391844683932E-8d}, new double[]{0.26146239042282104d, 2.5193525310038174E-8d}, new double[]{0.2622140049934387d, 7.802219817310385E-9d}, new double[]{0.26296502351760864d, 2.1983272709242607E-8d}, new double[]{0.2637155055999756d, 8.979279989292184E-9d}, new double[]{0.2644653916358948d, 2.9240221157844312E-8d}, new double[]{0.265214741230011d, 2.4004885823813374E-8d}, new double[]{0.2659635543823242d, -5.885186277410878E-9d}, new double[]{0.2667117714881897d, 1.4300386517357162E-11d}, new double[]{0.2674594521522522d, -1.7063531531989365E-8d}, new double[]{0.26820653676986694d, 3.3218524692903896E-9d}, new double[]{0.2689530849456787d, 2.3998252479954764E-9d}, new double[]{0.2696990966796875d, -1.8997462070389404E-8d}, new double[]{0.27044451236724854d, -4.350745270980051E-10d}, new double[]{0.2711893916130066d, -6.892221115467135E-10d}, new double[]{0.27193373441696167d, -1.89333199110902E-8d}, new double[]{0.272677481174469d, 5.262017392507765E-9d}, new double[]{0.27342069149017334d, 1.3115046679980076E-8d}, new double[]{0.2741633653640747d, 5.4468361834451975E-9d}, new double[]{0.2749055027961731d, -1.692337384653611E-8d}, new double[]{0.27564704418182373d, 6.426479056697412E-9d}, new double[]{0.2763880491256714d, 1.670735065191342E-8d}, new double[]{0.27712851762771606d, 1.4733029698334834E-8d}, new double[]{0.27786844968795776d, 1.315498542514467E-9d}, new double[]{0.2786078453063965d, -2.2735061539223372E-8d}, new double[]{0.27934664487838745d, 2.994379757313727E-9d}, new double[]{0.28008490800857544d, 1.970577274107218E-8d}, new double[]{0.28082263469696045d, 2.820392733542077E-8d}, new double[]{0.2815598249435425d, 2.929187356678173E-8d}, new double[]{0.28229647874832153d, 2.377086680926386E-8d}, new double[]{0.2830325961112976d, 1.2440393009992529E-8d}, new double[]{0.2837681770324707d, -3.901826104778096E-9d}, new double[]{0.2845032215118408d, -2.4459827842685974E-8d}, new double[]{0.2852376699447632d, 1.1165241398059789E-8d}, new double[]{0.28597164154052734d, -1.54434478239181E-8d}, new double[]{0.28670501708984375d, 1.5714110564653245E-8d}, new double[]{0.28743791580200195d, -1.3782394940142479E-8d}, new double[]{0.2881702184677124d, 1.6063569876284005E-8d}, new double[]{0.28890204429626465d, -1.317176818216125E-8d}, new double[]{0.28963327407836914d, 1.8504673536253893E-8d}, new double[]{0.29036402702331543d, -7.334319635123628E-9d}, new double[]{0.29109418392181396d, 2.9300903540317107E-8d}, new double[]{0.2918238639831543d, 9.979706999541057E-9d}, new double[]{0.29255300760269165d, -4.916314210412424E-9d}, new double[]{0.293281614780426d, -1.4611908070155308E-8d}, new double[]{0.2940096855163574d, -1.833351586679361E-8d}, new double[]{0.29473721981048584d, -1.530926726615185E-8d}, new double[]{0.2954642176628113d, -4.7689754029101934E-9d}, new double[]{0.29619067907333374d, 1.4055868011423819E-8d}, new double[]{0.296916663646698d, -1.7672547212604003E-8d}, new double[]{0.2976420521736145d, 2.0020234215759705E-8d}, new double[]{0.2983669638633728d, 8.688424478730524E-9d}, new double[]{0.2990913391113281d, 8.69851089918337E-9d}, new double[]{0.29981517791748047d, 2.0810681643102672E-8d}, new double[]{0.3005385398864746d, -1.3821169493779352E-8d}, new double[]{0.301261305809021d, 2.4769140784919128E-8d}, new double[]{0.3019835948944092d, 1.8127576600610336E-8d}, new double[]{0.3027053475379944d, 2.6612401062437074E-8d}, new double[]{0.3034266233444214d, -8.629042891789934E-9d}, new double[]{0.3041473627090454d, -2.724174869314043E-8d}, new double[]{0.30486756563186646d, -2.8476975783775358E-8d}, new double[]{0.3055872321128845d, -1.1587600174449919E-8d}, new double[]{0.3063063621520996d, 2.417189020581056E-8d}, new double[]{0.3070250153541565d, 1.99407553679345E-8d}, new double[]{0.3077431917190552d, -2.35387025694381E-8d}, new double[]{0.3084607720375061d, 1.3683509995845583E-8d}, new double[]{0.30917787551879883d, 1.3137214081023085E-8d}, new double[]{0.30989450216293335d, -2.444006866174775E-8d}, new double[]{0.3106105327606201d, 2.0896888605749563E-8d}, new double[]{0.31132614612579346d, -2.893149098508887E-8d}, new double[]{0.31204116344451904d, 5.621509038251498E-9d}, new double[]{0.3127557039260864d, 6.0778104626050015E-9d}, new double[]{0.3134697675704956d, -2.6832941696716294E-8d}, new double[]{0.31418323516845703d, 2.6826625274495256E-8d}, new double[]{0.31489628553390503d, -1.1030897183911054E-8d}, new double[]{0.31560879945755005d, -2.047124671392676E-8d}, new double[]{0.3163207769393921d, -7.709990443086711E-10d}, new double[]{0.3170322775840759d, -1.0812918808112342E-8d}, new double[]{0.3177432417869568d, 9.727979174888975E-9d}, new double[]{0.31845372915267944d, 1.9658551724508715E-9d}, new double[]{0.3191636800765991d, 2.6222628001695826E-8d}, new double[]{0.3198731541633606d, 2.3609400272358744E-8d}, new double[]{0.32058215141296387d, -5.159602957634814E-9d}, new double[]{0.32129061222076416d, 2.329701319016099E-10d}, new double[]{0.32199859619140625d, -1.910633190395738E-8d}, new double[]{0.32270604372024536d, -2.863180390093667E-9d}, new double[]{0.32341301441192627d, -9.934041364456825E-9d}, new double[]{0.3241194486618042d, 1.999240777687192E-8d}, new double[]{0.3248254060745239d, 2.801670341647724E-8d}, new double[]{0.32553088665008545d, 1.4842534265191358E-8d}, new double[]{0.32623589038848877d, -1.882789920477354E-8d}, new double[]{0.3269403576850891d, -1.268923579073577E-8d}, new double[]{0.32764434814453125d, -2.564688370677835E-8d}, new double[]{0.3283478021621704d, 2.6015626820520968E-9d}, new double[]{0.32905077934265137d, 1.3147747907784344E-8d}, new double[]{0.3297532796859741d, 6.686493860720675E-9d}, new double[]{0.33045530319213867d, -1.608884086544153E-8d}, new double[]{0.33115679025650024d, 5.118287907840204E-9d}, new double[]{0.3318578004837036d, 1.139367970944884E-8d}, new double[]{0.3325583338737488d, 3.426327822115399E-9d}, new double[]{0.33325839042663574d, -1.809622142990733E-8d}, new double[]{0.3339579105377197d, 7.116780143398601E-9d}, new double[]{0.3346569538116455d, 2.0145352306345386E-8d}, new double[]{0.3353555202484131d, 2.167272474431968E-8d}, new double[]{0.33605360984802246d, 1.2380696294966822E-8d}, new double[]{0.33675122261047363d, -7.050361059209181E-9d}, new double[]{0.3374482989311218d, 2.366314656322868E-8d}, new double[]{0.3381449580192566d, -1.4010540194086646E-8d}, new double[]{0.3388410806655884d, -1.860165465666482E-10d}, new double[]{0.33953672647476196d, 6.206776940880773E-9d}, new double[]{0.34023189544677734d, 5.841137379010982E-9d}, new double[]{0.3409265875816345d, -6.11041311179286E-10d}, new double[]{0.3416208028793335d, -1.2479264502054702E-8d}, new double[]{0.34231454133987427d, -2.909443297645926E-8d}, new double[]{0.34300774335861206d, 9.815805717097634E-9d}, new double[]{0.3437005281448364d, -1.4291517981101049E-8d}, new double[]{0.3443927764892578d, 1.8457821628427503E-8d}, new double[]{0.34508460760116577d, -1.0481908869377813E-8d}, new double[]{0.34577590227127075d, 1.876076001514746E-8d}, new double[]{0.3464667797088623d, -1.2362653723769037E-8d}, new double[]{0.3471571207046509d, 1.6016578405624026E-8d}, new double[]{0.347847044467926d, -1.4652759033760925E-8d}, new double[]{0.3485364317893982d, 1.549533655901835E-8d}, new double[]{0.34922540187835693d, -1.2093068629412478E-8d}, new double[]{0.3499138355255127d, 2.244531711424792E-8d}, new double[]{0.35060185194015503d, 5.538565518604807E-10d}, new double[]{0.35128939151763916d, -1.7511499366215853E-8d}, new double[]{0.3519763946533203d, 2.850385787215544E-8d}, new double[]{0.35266298055648804d, 2.003926370146842E-8d}, new double[]{0.35334908962249756d, 1.734665280502264E-8d}, new double[]{0.3540347218513489d, 2.1071983674869414E-8d}, new double[]{0.35471993684768677d, -2.774475773922311E-8d}, new double[]{0.3554046154022217d, -9.250975291734664E-9d}, new double[]{0.3560888171195984d, 1.7590672330295415E-8d}, new double[]{0.35677260160446167d, -6.1837904549178745E-9d}, new double[]{0.35745590925216675d, -2.0330362973820856E-8d}, new double[]{0.3581387400627136d, -2.42109990366786E-8d}, new double[]{0.3588210940361023d, -1.7188958587407816E-8d}, new double[]{0.35950297117233276d, 1.3711958590112228E-9d}, new double[]{0.3601844310760498d, -2.7501042008405925E-8d}, new double[]{0.36086535453796387d, 1.6036460343275798E-8d}, new double[]{0.3615458607673645d, 1.3405964389498495E-8d}, new double[]{0.36222589015960693d, 2.484237749027735E-8d}, new double[]{0.36290550231933594d, -8.629967484362177E-9d}, new double[]{0.36358463764190674d, -2.6778729562324134E-8d}, new double[]{0.36426329612731934d, -2.8977490516960565E-8d}, new double[]{0.36494147777557373d, -1.4601106624823502E-8d}, new double[]{0.3656191825866699d, 1.69742947894444E-8d}, new double[]{0.3662964701652527d, 6.7666740211281175E-9d}, new double[]{0.36697328090667725d, 1.500201674336832E-8d}, new double[]{0.3676496744155884d, -1.730424167425052E-8d}, new double[]{0.36832553148269653d, 2.9676011119845104E-8d}, new double[]{0.36900103092193604d, -2.2253590346826743E-8d}, new double[]{0.36967599391937256d, 6.3372065441089185E-9d}, new double[]{0.37035053968429565d, -3.145816653215968E-9d}, new double[]{0.37102460861206055d, 9.515812117036965E-9d}, new double[]{0.371698260307312d, -1.4669965113042639E-8d}, new double[]{0.3723714351654053d, -1.548715389333397E-8d}, new double[]{0.37304413318634033d, 7.674361647125109E-9d}, new double[]{0.37371641397476196d, -4.181177882069608E-9d}, new double[]{0.3743882179260254d, 9.158530500130718E-9d}, new double[]{0.3750596046447754d, -1.13047236597869E-8d}, new double[]{0.3757305145263672d, -5.36108186384227E-9d}, new double[]{0.3764009475708008d, 2.7593452284747873E-8d}, new double[]{0.37707096338272095d, 2.8557016344085205E-8d}, new double[]{0.3777405619621277d, -1.868818164036E-9d}, new double[]{0.3784096837043762d, -3.479042513414447E-9d}, new double[]{0.37907832860946655d, 2.432550290565648E-8d}, new double[]{0.37974655628204346d, 2.2538131805476768E-8d}, new double[]{0.38041436672210693d, -8.244395239939089E-9d}, new double[]{0.3810817003250122d, -7.821867597227376E-9d}, new double[]{0.3817485570907593d, 2.4400089062515914E-8d}, new double[]{0.3824149966239929d, 2.9410015940087773E-8d}, new double[]{0.38308101892471313d, 7.799913824734797E-9d}, new double[]{0.38374656438827515d, 1.976524624939355E-8d}, new double[]{0.38441169261932373d, 6.291008309266035E-9d}, new double[]{0.3850763440132141d, 2.757030889767851E-8d}, new double[]{0.38574057817459106d, 2.4585794728405612E-8d}, new double[]{0.3864043951034546d, -2.0764122246389383E-9d}, new double[]{0.3870677351951599d, 7.77328837578952E-9d}, new double[]{0.3877306580543518d, -4.8859560029989374E-9d}, new double[]{0.3883931040763855d, 2.0133131420595028E-8d}, new double[]{0.38905513286590576d, 2.380738071335498E-8d}, new double[]{0.3897167444229126d, 6.7171126157142075E-9d}, new double[]{0.39037787914276123d, 2.9046141593926277E-8d}, new double[]{0.3910386562347412d, -2.7836800219410262E-8d}, new double[]{0.3916988968849182d, 1.545909820981726E-8d}, new double[]{0.39235877990722656d, -1.930436269002062E-8d}, new double[]{0.3930181860923767d, -1.2343297554921835E-8d}, new double[]{0.3936771750450134d, -2.268889128622553E-8d}, new double[]{0.39433568716049194d, 9.835827818608177E-9d}, new double[]{0.39499378204345703d, 2.6197411946856397E-8d}, new double[]{0.3956514596939087d, 2.6965931069318893E-8d}, new double[]{0.3963087201118469d, 1.2710331127772166E-8d}, new double[]{0.39696556329727173d, -1.6001563011916016E-8d}, new double[]{0.39762192964553833d, 1.0016001590267064E-9d}, new double[]{0.3982778787612915d, 4.680767399874334E-9d}, new double[]{0.39893341064453125d, -4.399582029272418E-9d}, new double[]{0.39958852529525757d, -2.5676078228301587E-8d}, new double[]{0.4002431631088257d, 1.0181870233355787E-9d}, new double[]{0.40089738368988037d, 1.6639728835984655E-8d}, new double[]{0.40155118703842163d, 2.174860642202632E-8d}, new double[]{0.40220457315444946d, 1.6903781197123503E-8d}, new double[]{0.40285754203796387d, 2.663119647467697E-9d}, new double[]{0.40351009368896484d, -2.0416603812329616E-8d}, new double[]{0.4041621685028076d, 7.82494078472695E-9d}, new double[]{0.40481382608413696d, 2.833770747113627E-8d}, new double[]{0.40546512603759766d, -1.7929433274271985E-8d}, new double[]{0.40611594915390015d, -1.1214757379328965E-8d}, new double[]{0.4067663550376892d, -1.0571553019207106E-8d}, new double[]{0.40741634368896484d, -1.5449538712332313E-8d}, new double[]{0.40806591510772705d, -2.529950530235105E-8d}, new double[]{0.40871500968933105d, 2.0031331601617008E-8d}, new double[]{0.4093637466430664d, 1.880755298741952E-9d}, new double[]{0.41001206636428833d, -1.9600580584843318E-8d}, new double[]{0.41065990924835205d, 1.573691633515306E-8d}, new double[]{0.4113073945045471d, -1.0772154376548336E-8d}, new double[]{0.411954402923584d, 2.0624330192486066E-8d}, new double[]{0.4126010537147522d, -8.741139170029572E-9d}, new double[]{0.4132472276687622d, 2.0881457123894216E-8d}, new double[]{0.41389304399490356d, -9.177488027521808E-9d}, new double[]{0.4145383834838867d, 2.0829952491625585E-8d}, new double[]{0.4151833653450012d, -7.767915492597301E-9d}, new double[]{0.4158278703689575d, 2.4774753446082082E-8d}, new double[]{0.41647201776504517d, -2.1581119071750435E-10d}, new double[]{0.4171157479286194d, -2.260047972865202E-8d}, new double[]{0.4177590012550354d, 1.775884601423381E-8d}, new double[]{0.41840189695358276d, 2.185301053838889E-9d}, new double[]{0.4190443754196167d, -9.185071463667081E-9d}, new double[]{0.4196864366531372d, -1.5821896727910552E-8d}, new double[]{0.4203280806541443d, -1.719582086188318E-8d}, new double[]{0.42096930742263794d, -1.2778508303324259E-8d}, new double[]{0.42161011695861816d, -2.042639194493364E-9d}, new double[]{0.42225050926208496d, 1.5538093219698803E-8d}, new double[]{0.4228905439376831d, -1.9115659590156936E-8d}, new double[]{0.42353010177612305d, 1.3729680248843432E-8d}, new double[]{0.42416930198669434d, -4.611893838830296E-9d}, new double[]{0.4248080849647522d, -1.4013456880651706E-8d}, new double[]{0.42544645071029663d, -1.3953728897042917E-8d}, new double[]{0.42608439922332764d, -3.912427573594197E-9d}, new double[]{0.4267219305038452d, 1.6629734283189315E-8d}, new double[]{0.42735910415649414d, -1.1413593493354881E-8d}, new double[]{0.42799586057662964d, -2.792046157580119E-8d}, new double[]{0.42863214015960693d, 2.723009182661306E-8d}, new double[]{0.42926812171936035d, -2.4260535621557444E-8d}, new double[]{0.42990362644195557d, -3.064060124024764E-9d}, new double[]{0.43053877353668213d, -2.787640178598121E-8d}, new double[]{0.4311734437942505d, 2.102412085257792E-8d}, new double[]{0.4318077564239502d, 2.4939635093999683E-8d}, new double[]{0.43244171142578125d, -1.5619414792273914E-8d}, new double[]{0.4330751895904541d, 1.9065734894871523E-8d}, new double[]{0.4337083101272583d, 1.0294301092654604E-8d}, new double[]{0.4343410134315491d, 1.8178469851136E-8d}, new double[]{0.4349733591079712d, -1.6379825102473853E-8d}, new double[]{0.4356052279472351d, 2.6334323946685834E-8d}, new double[]{0.43623673915863037d, 2.761628769925529E-8d}, new double[]{0.436867892742157d, -1.2030229087793677E-8d}, new double[]{0.4374985694885254d, 2.7106814809424793E-8d}, new double[]{0.43812888860702515d, 2.631993083235205E-8d}, new double[]{0.43875885009765625d, -1.3890028312254422E-8d}, new double[]{0.43938833475112915d, 2.6186133735555794E-8d}, new double[]{0.4400174617767334d, 2.783809071694788E-8d}, new double[]{0.440646231174469d, -8.436135220472006E-9d}, new double[]{0.44127458333969116d, -2.2534815932619883E-8d}, new double[]{0.4419025182723999d, -1.3961804471714283E-8d}, new double[]{0.4425300359725952d, 1.7778112039716255E-8d}, new double[]{0.4431571960449219d, 1.3574569976673652E-8d}, new double[]{0.4437839984893799d, -2.607907890164073E-8d}, new double[]{0.4444103240966797d, 1.8518879652136628E-8d}, new double[]{0.44503629207611084d, 2.865065604247164E-8d}, new double[]{0.44566190242767334d, 4.806827797299427E-9d}, new double[]{0.4462870955467224d, 7.0816970994232115E-9d}, new double[]{0.44691193103790283d, -2.3640641240074437E-8d}, new double[]{0.4475363492965698d, -2.7267718387865538E-8d}, new double[]{0.4481603503227234d, -3.3126235292976077E-9d}, new double[]{0.4487839937210083d, -1.0894001590268427E-8d}, new double[]{0.4494072198867798d, 1.0077883359971829E-8d}, new double[]{0.4500300884246826d, 4.825712712114668E-10d}, new double[]{0.450652539730072d, 2.0407987470746858E-8d}, new double[]{0.4512746334075928d, 1.073186581170719E-8d}, new double[]{0.4518963694572449d, -2.8064314757880205E-8d}, new double[]{0.45251762866973877d, 2.3709316816226527E-8d}, new double[]{0.4531385898590088d, -1.2281487504266522E-8d}, new double[]{0.4537591338157654d, -1.634864487421458E-8d}, new double[]{0.45437926054000854d, 1.1985747222409522E-8d}, new double[]{0.45499902963638306d, 1.3594057956219485E-8d}, new double[]{0.4556184411048889d, -1.1047585095328619E-8d}, new double[]{0.45623743534088135d, -1.8592937532754405E-9d}, new double[]{0.4568560719490051d, -1.797135137545755E-8d}, new double[]{0.4574742913246155d, 6.943684261645378E-10d}, new double[]{0.4580921530723572d, -4.994175141684681E-9d}, new double[]{0.45870959758758545d, 2.5039391215625133E-8d}, new double[]{0.45932674407958984d, -2.7943366835352838E-8d}, new double[]{0.45994341373443604d, 1.534146910128904E-8d}, new double[]{0.46055978536605835d, -2.3450920230816267E-8d}, new double[]{0.46117573976516724d, -2.4642997069960124E-8d}, new double[]{0.4617912769317627d, 1.2232622070370946E-8d}, new double[]{0.4624064564704895d, 2.80378133047839E-8d}, new double[]{0.46302127838134766d, 2.3238237048117092E-8d}, new double[]{0.46363574266433716d, -1.7013046451109475E-9d}, new double[]{0.46424978971481323d, 1.3287778803035383E-8d}, new double[]{0.46486347913742065d, 9.06393426961373E-9d}, new double[]{0.4654768109321594d, -1.3910598647592876E-8d}, new double[]{0.46608972549438477d, 4.430214458933614E-9d}, new double[]{0.46670228242874146d, 4.942270562885745E-9d}, new double[]{0.4673144817352295d, -1.1914734393460718E-8d}, new double[]{0.4679262638092041d, 1.3922696570638494E-8d}, new double[]{0.46853768825531006d, 2.3307929211781914E-8d}, new double[]{0.46914875507354736d, 1.669813444584674E-8d}, new double[]{0.469759464263916d, -5.450354376430758E-9d}, new double[]{0.47036975622177124d, 1.6922605350647674E-8d}, new double[]{0.4709796905517578d, 2.4667033200046904E-8d}, new double[]{0.47158926725387573d, 1.8236762070433784E-8d}, new double[]{0.472198486328125d, -1.915204563140137E-9d}, new double[]{0.47280728816986084d, 2.426795414605756E-8d}, new double[]{0.4734157919883728d, -2.19717006713618E-8d}, new double[]{0.47402387857437134d, -2.0974352165535873E-8d}, new double[]{0.47463154792785645d, 2.770970558184228E-8d}, new double[]{0.4752389192581177d, 5.32006955298355E-9d}, new double[]{0.47584593296051025d, -2.809054633964104E-8d}, new double[]{0.4764525294303894d, -1.2470243596102937E-8d}, new double[]{0.4770587682723999d, -6.977226702440138E-9d}, new double[]{0.47766464948654175d, -1.1165866833118273E-8d}, new double[]{0.47827017307281494d, -2.4591344661022708E-8d}, new double[]{0.4788752794265747d, 1.2794996377383974E-8d}, new double[]{0.4794800877571106d, -1.7772927065973874E-8d}, new double[]{0.48008447885513306d, 3.35657712457243E-9d}, new double[]{0.48068851232528687d, 1.7020465042442242E-8d}, new double[]{0.481292188167572d, 2.365953779624783E-8d}, new double[]{0.4818955063819885d, 2.3713798664443718E-8d}, new double[]{0.4824984669685364d, 1.7622455019548098E-8d}, new double[]{0.4831010699272156d, 5.823920246566496E-9d}, new double[]{0.4837033152580261d, -1.1244184344361017E-8d}, new double[]{0.48430514335632324d, 2.645961716432205E-8d}, new double[]{0.4849066734313965d, 1.6207809718247905E-10d}, new double[]{0.4855077862739563d, 2.9507744508973654E-8d}, new double[]{0.48610860109329224d, -4.278201128741098E-9d}, new double[]{0.48670899868011475d, 1.844722015961139E-8d}, new double[]{0.4873090982437134d, -2.1092372471088425E-8d}, new double[]{0.4879087805747986d, -3.2555596107382053E-9d}, new double[]{0.48850810527801514d, 1.2784366845429667E-8d}, new double[]{0.48910707235336304d, 2.7457984659996047E-8d}, new double[]{0.48970574140548706d, -1.8409546441412518E-8d}, new double[]{0.49030399322509766d, -5.179903818099661E-9d}, new double[]{0.4909018874168396d, 7.97053127828682E-9d}, new double[]{0.4914994239807129d, 2.146925464473481E-8d}, new double[]{0.4920966625213623d, -2.3861648589988232E-8d}, new double[]{0.4926934838294983d, -8.386923035320549E-9d}, new double[]{0.4932899475097656d, 8.713990131749256E-9d}, new double[]{0.4938860535621643d, 2.7865534085810115E-8d}, new double[]{0.4944818615913391d, -1.011325138560159E-8d}, new double[]{0.4950772523880005d, 1.4409851026316708E-8d}, new double[]{0.495672345161438d, -1.735227547472004E-8d}, new double[]{0.49626702070236206d, 1.4231078209064581E-8d}, new double[]{0.49686139822006226d, -9.628709342929729E-9d}, new double[]{0.4974554181098938d, -2.8907074856577267E-8d}, new double[]{0.4980490207672119d, 1.6419797090870802E-8d}, new double[]{0.49864232540130615d, 7.561041519403049E-9d}, new double[]{0.49923527240753174d, 4.538983468118194E-9d}, new double[]{0.49982786178588867d, 7.770560657946324E-9d}, new double[]{0.500420093536377d, 1.767197002609876E-8d}, new double[]{0.5010119676589966d, 3.46586694799214E-8d}, new double[]{0.5016034841537476d, 5.914537964556077E-8d}, new double[]{0.5021947622299194d, -2.7663203939320167E-8d}, new double[]{0.5027855634689331d, 1.3064749115929298E-8d}, new double[]{0.5033761262893677d, -5.667682106730711E-8d}, new double[]{0.503966212272644d, 1.9424534974370594E-9d}, new double[]{0.5045560598373413d, -4.908494602153544E-8d}, new double[]{0.5051454305648804d, 2.906989285008994E-8d}, new double[]{0.5057345628738403d, -1.602000800745108E-9d}, new double[]{0.5063233375549316d, -2.148245271118002E-8d}, new double[]{0.5069117546081543d, -3.016329994276181E-8d}, new double[]{0.5074998140335083d, -2.7237099632871992E-8d}, new double[]{0.5080875158309937d, -1.2297127301923986E-8d}, new double[]{0.5086748600006104d, 1.5062624834468093E-8d}, new double[]{0.5092618465423584d, 5.524744954836658E-8d}, new double[]{0.5098485946655273d, -1.054736327333046E-8d}, new double[]{0.5104348659515381d, 5.650063324725722E-8d}, new double[]{0.5110208988189697d, 1.8376017791642605E-8d}, new double[]{0.5116065740585327d, -5.309470636324855E-9d}, new double[]{0.512191891670227d, -1.4154089255217218E-8d}, new double[]{0.5127768516540527d, -7.756800301729815E-9d}, new double[]{0.5133614540100098d, 1.4282730618002001E-8d}, new double[]{0.5139456987380981d, 5.2364136172269755E-8d}, new double[]{0.5145297050476074d, -1.2322940607922115E-8d}, new double[]{0.5151132345199585d, 5.903831350855322E-8d}, new double[]{0.5156965255737305d, 2.8426856726994483E-8d}, new double[]{0.5162794589996338d, 1.544882070711032E-8d}, new double[]{0.5168620347976685d, 2.0500353979930155E-8d}, new double[]{0.5174442529678345d, 4.397691311390564E-8d}, new double[]{0.5180262327194214d, -3.2936025225250634E-8d}, new double[]{0.5186077356338501d, 2.857419553449673E-8d}, new double[]{0.5191890001296997d, -9.51761338269325E-9d}, new double[]{0.5197699069976807d, -2.7609457648450225E-8d}, new double[]{0.520350456237793d, -2.5309316441333305E-8d}, new double[]{0.5209306478500366d, -2.2258513086839407E-9d}, new double[]{0.5215104818344116d, 4.203159541613745E-8d}, new double[]{0.5220900774002075d, -1.1356287358852729E-8d}, new double[]{0.5226693153381348d, -4.279090925831093E-8d}, new double[]{0.5232481956481934d, -5.188364552285819E-8d}, new double[]{0.5238267183303833d, -3.82465458937857E-8d}, new double[]{0.5244048833847046d, -1.4923330530645769E-9d}, new double[]{0.5249826908111572d, 5.8765598932137004E-8d}, new double[]{0.5255602598190308d, 2.3703896609663678E-8d}, new double[]{0.5261374711990356d, 1.2917117341231647E-8d}, new double[]{0.5267143249511719d, 2.6789862192139226E-8d}, new double[]{0.527290940284729d, -5.350322253112414E-8d}, new double[]{0.5278670787811279d, 1.0839714455426386E-8d}, new double[]{0.5284429788589478d, -1.821729591343314E-8d}, new double[]{0.5290185213088989d, -2.1083014672301448E-8d}, new double[]{0.5295937061309814d, 2.623848491704216E-9d}, new double[]{0.5301685333251953d, 5.328392630534142E-8d}, new double[]{0.5307431221008301d, 1.206790586971942E-8d}, new double[]{0.5313173532485962d, -1.4356011804377797E-9d}, new double[]{0.5318912267684937d, 1.3152074173459994E-8d}, new double[]{0.5324647426605225d, 5.6208949382936426E-8d}, new double[]{0.5330380201339722d, 8.90310227565917E-9d}, new double[]{0.5336109399795532d, -9.179458802504127E-9d}, new double[]{0.5341835021972656d, 2.337337845617735E-9d}, new double[]{0.5347557067871094d, 4.3828918300477925E-8d}, new double[]{0.535327672958374d, -3.5392250480081715E-9d}, new double[]{0.53589928150177d, -2.0183663375378704E-8d}, new double[]{0.5364705324172974d, -5.730898606435436E-9d}, new double[]{0.537041425704956d, 4.0191927599879235E-8d}, new double[]{0.5376120805740356d, -1.2522542401353875E-9d}, new double[]{0.5381823778152466d, -1.0482571326594316E-8d}, new double[]{0.5387523174285889d, 1.2871924223480165E-8d}, new double[]{0.539322018623352d, -5.002774317612589E-8d}, new double[]{0.539891242980957d, 3.960668706590162E-8d}, new double[]{0.5404602289199829d, 4.372568630242375E-8d}, new double[]{0.5410289764404297d, -3.730232461206926E-8d}, new double[]{0.5415972471237183d, 3.5309026109857795E-8d}, new double[]{0.5421652793884277d, 2.3508325311148225E-8d}, new double[]{0.5427329540252686d, 4.6871403168921666E-8d}, new double[]{0.5433003902435303d, -1.3445113140270216E-8d}, new double[]{0.5438674688339233d, -3.786663982218041E-8d}, new double[]{0.5444341897964478d, -2.602850370608209E-8d}, new double[]{0.5450005531311035d, 2.2433348713144506E-8d}, new double[]{0.5455666780471802d, -1.1326936872620137E-8d}, new double[]{0.5461324453353882d, -7.737252533211342E-9d}, new double[]{0.5466978549957275d, 3.3564604642699844E-8d}, new double[]{0.5472630262374878d, -6.269066061111782E-9d}, new double[]{0.5478278398513794d, -7.667998948729528E-9d}, new double[]{0.5483922958374023d, 2.9728170818998143E-8d}, new double[]{0.5489565134048462d, -1.2930091396008281E-8d}, new double[]{0.5495203733444214d, -1.607434968107079E-8d}, new double[]{0.5500838756561279d, 2.0653935146671156E-8d}, new double[]{0.5506471395492554d, -2.1596593091833788E-8d}, new double[]{0.5512100458145142d, -2.3259315921149476E-8d}, new double[]{0.5517725944519043d, 1.6022492496522704E-8d}, new double[]{0.5523349046707153d, -2.260433328226171E-8d}, new double[]{0.5528968572616577d, -1.957497997726303E-8d}, new double[]{0.5534584522247314d, 2.5465477111883854E-8d}, new double[]{0.5540198087692261d, -6.33792454933092E-9d}, new double[]{0.554580807685852d, 4.577835263278281E-9d}, new double[]{0.5551414489746094d, 5.856589221771548E-8d}, new double[]{0.5557018518447876d, 3.6769498759522324E-8d}, new double[]{0.5562618970870972d, 5.874989409410614E-8d}, new double[]{0.5568217039108276d, 5.649147309876989E-9d}, new double[]{0.5573811531066895d, -2.9726830960751796E-9d}, new double[]{0.5579402446746826d, 3.323458344853057E-8d}, new double[]{0.5584990978240967d, -4.588749093664028E-9d}, new double[]{0.5590575933456421d, 3.115616594184543E-9d}, new double[]{0.5596157312393188d, 5.6696103838614634E-8d}, new double[]{0.5601736307144165d, 3.7291263280048303E-8d}, new double[]{0.5607312917709351d, -5.4751646725093355E-8d}, new double[]{0.5612884759902954d, 1.9332630743320287E-8d}, new double[]{0.5618454217910767d, 2.147161515775941E-8d}, new double[]{0.5624021291732788d, -4.7989172862560625E-8d}, new double[]{0.5629583597183228d, 4.971378973445109E-8d}, new double[]{0.5635144710540771d, -4.2702997139152675E-8d}, new double[]{0.5640701055526733d, 3.273212962622764E-8d}, new double[]{0.5646255016326904d, 3.79438125545842E-8d}, new double[]{0.5651806592941284d, -2.6725298288329835E-8d}, new double[]{0.5657354593276978d, -4.1723833577410244E-8d}, new double[]{0.5662899017333984d, -6.71028256490915E-9d}, new double[]{0.56684410572052d, -4.055299181908475E-8d}, new double[]{0.567397952079773d, -2.3702295314000405E-8d}, new double[]{0.5679514408111572d, 4.4181618172507453E-8d}, new double[]{0.5685046911239624d, 4.4228706309734985E-8d}, new double[]{0.5690577030181885d, -2.3222346436879016E-8d}, new double[]{0.5696103572845459d, -3.862412756175274E-8d}, new double[]{0.5701626539230347d, -1.6390743801589046E-9d}, new double[]{0.5707147121429443d, -3.1139472791083883E-8d}, new double[]{0.5712664127349854d, -7.579587391156013E-9d}, new double[]{0.5718178749084473d, -4.983281844744412E-8d}, new double[]{0.5723689794540405d, -3.835454246739619E-8d}, new double[]{0.5729197263717651d, 2.7190020372374008E-8d}, new double[]{0.5734702348709106d, 2.7925807446276126E-8d}, new double[]{0.574020504951477d, -3.5813506001861646E-8d}, new double[]{0.5745704174041748d, -4.448550564530588E-8d}, new double[]{0.5751199722290039d, 2.2423840341717488E-9d}, new double[]{0.5756692886352539d, -1.450709904687712E-8d}, new double[]{0.5762182474136353d, 2.4806815282282017E-8d}, new double[]{0.5767669677734375d, 1.3057724436551892E-9d}, new double[]{0.5773153305053711d, 3.4529452510568104E-8d}, new double[]{0.5778634548187256d, 5.598413198183808E-9d}, new double[]{0.5784112215042114d, 3.405124925700107E-8d}, new double[]{0.5789587497711182d, 1.0074354568442952E-9d}, new double[]{0.5795059204101562d, 2.600448597385527E-8d}, new double[]{0.5800528526306152d, -9.83920263200211E-9d}, new double[]{0.5805994272232056d, 1.3012807963586057E-8d}, new double[]{0.5811457633972168d, -2.432215917965441E-8d}, new double[]{0.5816917419433594d, -2.308736892479391E-9d}, new double[]{0.5822374820709229d, -3.983067093146514E-8d}, new double[]{0.5827828645706177d, -1.735366061128156E-8d}, new double[]{0.5833280086517334d, -5.376251584638963E-8d}, new double[]{0.5838727951049805d, -2.952399778965259E-8d}, new double[]{0.5844172239303589d, 5.5685313670430624E-8d}, new double[]{0.5849615335464478d, -3.6230268489088716E-8d}, new double[]{0.5855053663253784d, 5.267948957869391E-8d}, new double[]{0.5860490798950195d, -3.489144132234588E-8d}, new double[]{0.5865923166275024d, 5.9006122320612716E-8d}, new double[]{0.5871354341506958d, -2.2934896740542648E-8d}, new double[]{0.5876781940460205d, -4.1975650319859075E-8d}, new double[]{0.5882205963134766d, 2.2036094805348692E-9d}, new double[]{0.5887627601623535d, -9.287179048539306E-9d}, new double[]{0.5893045663833618d, 4.3079982556221595E-8d}, new double[]{0.589846134185791d, 4.041399585161321E-8d}, new double[]{0.5903874635696411d, -1.696746473863933E-8d}, new double[]{0.5909284353256226d, -9.53795080582038E-9d}, new double[]{0.5914691686630249d, -5.619010749352923E-8d}, new double[]{0.5920095443725586d, -3.7398514182529506E-8d}, new double[]{0.5925495624542236d, 4.71524479659295E-8d}, new double[]{0.5930894613265991d, -4.0640692434639215E-8d}, new double[]{0.5936288833618164d, 5.716453096255401E-8d}, new double[]{0.5941681861877441d, -1.6745661720946737E-8d}, new double[]{0.5947071313858032d, -2.3639110433141897E-8d}, new double[]{0.5952457189559937d, 3.67972590471072E-8d}, new double[]{0.595784068107605d, 4.566672575206695E-8d}, new double[]{0.5963221788406372d, 3.2813537149653483E-9d}, new double[]{0.5968599319458008d, 2.916199305533732E-8d}, new double[]{0.5973974466323853d, 4.410412409109416E-9d}, new double[]{0.5979346036911011d, 4.85464582112459E-8d}, new double[]{0.5984715223312378d, 4.267089756924666E-8d}, new double[]{0.5990082025527954d, -1.2906712010774655E-8d}, new double[]{0.5995445251464844d, 1.3319784467641742E-9d}, new double[]{0.6000806093215942d, -3.35137581974451E-8d}, new double[]{0.6006163358688354d, 2.0734340706476473E-9d}, new double[]{0.6011518239974976d, -1.0808162722402073E-8d}, new double[]{0.601686954498291d, 4.735781872502109E-8d}, new double[]{0.6022218465805054d, 5.76686738430634E-8d}, new double[]{0.6027565002441406d, 2.043049589651736E-8d}, new double[]{0.6032907962799072d, 5.515817703577808E-8d}, new double[]{0.6038248538970947d, 4.2947540692649586E-8d}, new double[]{0.6043586730957031d, -1.589678872195875E-8d}, new double[]{0.6048921346664429d, -1.8613847754677912E-9d}, new double[]{0.6054253578186035d, -3.3851886626187444E-8d}, new double[]{0.6059582233428955d, 7.64416021682279E-9d}, new double[]{0.6064908504486084d, 3.7201467248814224E-9d}, new double[]{0.6070232391357422d, -4.532172996647129E-8d}, new double[]{0.6075552701950073d, -1.997046552871766E-8d}, new double[]{0.6080870628356934d, -3.913411606668587E-8d}, new double[]{0.6086184978485107d, 1.6697361107868944E-8d}, new double[]{0.609149694442749d, 2.8614950293715483E-8d}, new double[]{0.6096806526184082d, -3.081552929643174E-9d}, new double[]{0.6102112531661987d, 4.111645931319645E-8d}, new double[]{0.6107416152954102d, 4.2298539553668435E-8d}, new double[]{0.6112717390060425d, 7.630546413718035E-10d}, new double[]{0.6118015050888062d, 3.601718675118614E-8d}, new double[]{0.6123310327529907d, 2.914906573537692E-8d}, new double[]{0.6128603219985962d, -1.9544361222269494E-8d}, new double[]{0.613389253616333d, 9.442671392695732E-9d}, new double[]{0.6139179468154907d, -2.8031202304593286E-9d}, new double[]{0.6144464015960693d, -5.598619958143586E-8d}, new double[]{0.6149744987487793d, -3.060220883766096E-8d}, new double[]{0.6155023574829102d, -4.556583652800433E-8d}, new double[]{0.6160298585891724d, 1.8626341656366314E-8d}, new double[]{0.6165571212768555d, 4.305870564227991E-8d}, new double[]{0.6170841455459595d, 2.8024460607734262E-8d}, new double[]{0.6176109313964844d, -2.6183651590639875E-8d}, new double[]{0.6181373596191406d, -6.406189112730307E-11d}, new double[]{0.6186635494232178d, -1.2534241706168776E-8d}, new double[]{0.6191893815994263d, 5.5906456251308664E-8d}, new double[]{0.6197150945663452d, -3.286964881802063E-8d}, new double[]{0.6202404499053955d, -4.0153537978961E-8d}, new double[]{0.6207654476165771d, 3.434477109643361E-8d}, new double[]{0.6212903261184692d, -4.750377491075032E-8d}, new double[]{0.6218148469924927d, -4.699152670372743E-8d}, new double[]{0.6223390102386475d, 3.617013128065961E-8d}, new double[]{0.6228630542755127d, -3.6149218175202596E-8d}, new double[]{0.6233867406845093d, -2.5243286814648133E-8d}, new double[]{0.6239101886749268d, -5.003410681432538E-8d}, new double[]{0.6244332790374756d, 8.974417915105033E-9d}, new double[]{0.6249561309814453d, 3.285935446876949E-8d}, new double[]{0.6254787445068359d, 2.190661054038537E-8d}, new double[]{0.6260011196136475d, -2.3598354190515998E-8d}, new double[]{0.6265231370925903d, 1.5838762427747586E-8d}, new double[]{0.6270449161529541d, 2.129323729978037E-8d}, new double[]{0.6275664567947388d, -6.950808333865794E-9d}, new double[]{0.6280876398086548d, 5.059959203156465E-8d}, new double[]{0.6286087036132812d, -4.41909071122557E-8d}, new double[]{0.6291294097900391d, -5.262093550784066E-8d}, new double[]{0.6296497583389282d, 2.559185648444699E-8d}, new double[]{0.6301699876785278d, -4.768920119497491E-8d}, new double[]{0.6306898593902588d, -3.376406008397877E-8d}, new double[]{0.6312094926834106d, -5.156097914033476E-8d}, new double[]{0.6317287683486938d, 1.840992392368355E-8d}, new double[]{0.632247805595398d, 5.721951534729663E-8d}, new double[]{0.6327667236328125d, -5.406177467045421E-8d}, new double[]{0.6332851648330688d, 4.247320713683124E-8d}, new double[]{0.6338034868240356d, -1.0524557502830645E-8d}, new double[]{0.6343214511871338d, 2.5641927558519502E-8d}, new double[]{0.6348391771316528d, 3.204135737993823E-8d}, new double[]{0.6353566646575928d, 8.951285029786536E-9d}, new double[]{0.6358739137649536d, -4.335116707228395E-8d}, new double[]{0.6363908052444458d, -5.380016714089483E-9d}, new double[]{0.6369074583053589d, 3.931710344901743E-9d}, new double[]{0.6374238729476929d, -1.5140150088220166E-8d}, new double[]{0.6379399299621582d, 5.688910024377372E-8d}, new double[]{0.638455867767334d, -1.8124135273572568E-8d}, new double[]{0.6389714479446411d, -1.486720391901626E-9d}, new double[]{0.6394867897033691d, -1.2133811978747018E-8d}, new double[]{0.6400018930435181d, -4.9791700939901716E-8d}, new double[]{0.6405166387557983d, 5.022188652837274E-9d}, new double[]{0.6410311460494995d, 3.337143177933685E-8d}, new double[]{0.6415454149246216d, 3.55284719912458E-8d}, new double[]{0.6420594453811646d, 1.1765332726757802E-8d}, new double[]{0.6425732374191284d, -3.7646381826067834E-8d}, new double[]{0.6430866718292236d, 6.773803682579552E-9d}, new double[]{0.6435998678207397d, 2.608736797081283E-8d}, new double[]{0.6441128253936768d, 2.056466263408266E-8d}, new double[]{0.6446255445480347d, -9.524376551107945E-9d}, new double[]{0.6451379060745239d, 5.5299060775883977E-8d}, new double[]{0.6456501483917236d, -2.3114497793159813E-8d}, new double[]{0.6461620330810547d, -6.077779731902102E-9d}, new double[]{0.6466736793518066d, -1.2531793589140273E-8d}, new double[]{0.6471850872039795d, -4.220866994206517E-8d}, new double[]{0.6476961374282837d, 2.4368339445199057E-8d}, new double[]{0.6482070684432983d, -5.095229574221907E-8d}, new double[]{0.6487176418304443d, -2.9485356677301627E-8d}, new double[]{0.6492279767990112d, -3.0173901411577916E-8d}, new double[]{0.649738073348999d, -5.275210583909726E-8d}, new double[]{0.6502478122711182d, 2.2254737134350224E-8d}, new double[]{0.6507574319839478d, -4.330693978322885E-8d}, new double[]{0.6512666940689087d, -1.0753950588009912E-8d}, new double[]{0.6517757177352905d, 9.686179886293545E-10d}, new double[]{0.6522845029830933d, -7.875434494414498E-9d}, new double[]{0.6527930498123169d, -3.702271091849158E-8d}, new double[]{0.6533012390136719d, 3.2999073763758614E-8d}, new double[]{0.6538093090057373d, -3.5966064858620067E-8d}, new double[]{0.6543170213699341d, -5.23735298540578E-9d}, new double[]{0.6548244953155518d, 6.237715351293023E-9d}, new double[]{0.6553317308425903d, -1.279462699936282E-9d}, new double[]{0.6558387279510498d, -2.7527887552743672E-8d}, new double[]{0.6563453674316406d, 4.696233317356646E-8d}, new double[]{0.6568518877029419d, -1.5967172745329108E-8d}, new double[]{0.6573580503463745d, 2.2361985518423144E-8d}, new double[]{0.657863974571228d, 4.2999935789083046E-8d}, new double[]{0.6583696603775024d, 4.620570188811826E-8d}, new double[]{0.6588751077651978d, 3.223791487908353E-8d}, new double[]{0.659380316734314d, 1.3548138612715822E-9d}, new double[]{0.6598852872848511d, -4.618575323863973E-8d}, new double[]{0.6603899002075195d, 9.082960673843353E-9d}, new double[]{0.6608942747116089d, 4.820873399634487E-8d}, new double[]{0.6613985300064087d, -4.776104368314602E-8d}, new double[]{0.6619024276733398d, -4.0151502150238136E-8d}, new double[]{0.6624060869216919d, -4.791602708710648E-8d}, new double[]{0.6629093885421753d, 4.8410188461165925E-8d}, new double[]{0.6634125709533691d, 1.0663697110471944E-8d}, new double[]{0.6639155149459839d, -4.1691464781797555E-8d}, new double[]{0.66441810131073d, 1.080835500478704E-8d}, new double[]{0.664920449256897d, 4.920784622407246E-8d}, new double[]{0.6654226779937744d, -4.544868396511241E-8d}, new double[]{0.6659245491027832d, -3.448944157854234E-8d}, new double[]{0.6664261817932129d, -3.6870882345139385E-8d}, new double[]{0.6669275760650635d, -5.234055273962444E-8d}, new double[]{0.6674286127090454d, 3.856291077979099E-8d}, new double[]{0.6679295301437378d, -2.327375671320742E-9d}, new double[]{0.6684302091598511d, -5.555080534042001E-8d}, new double[]{0.6689305305480957d, -1.6471487337453832E-9d}, new double[]{0.6694306135177612d, 4.042486803683015E-8d}, new double[]{0.6699305772781372d, -4.8293856891818295E-8d}, new double[]{0.6704301834106445d, -2.9134931730784303E-8d}, new double[]{0.6709295511245728d, -2.1058207594753368E-8d}, new double[]{0.6714286804199219d, -2.3814619551682855E-8d}, new double[]{0.6719275712966919d, -3.7155475428252136E-8d}, new double[]{0.6724261045455933d, 5.8376834484391746E-8d}, new double[]{0.6729245185852051d, 2.4611679969129262E-8d}, new double[]{0.6734226942062378d, -1.899407107267079E-8d}, new double[]{0.6739205121994019d, 4.7016079464436395E-8d}, new double[]{0.6744182109832764d, -1.5529608026276525E-8d}, new double[]{0.6749155521392822d, 3.203391672602453E-8d}, new double[]{0.6754127740859985d, -4.8465821804075345E-8d}, new double[]{0.6759096384048462d, -1.8364507801369988E-8d}, new double[]{0.6764062643051147d, 3.3739397633046517E-9d}, new double[]{0.6769026517868042d, 1.6994526063192333E-8d}, new double[]{0.6773988008499146d, 2.2741891590028428E-8d}, new double[]{0.6778947114944458d, 2.0860312877435047E-8d}, new double[]{0.678390383720398d, 1.1593703222523284E-8d}, new double[]{0.678885817527771d, -4.814386594291911E-9d}, new double[]{0.6793810129165649d, -2.812076759125914E-8d}, new double[]{0.6798759698867798d, -5.808261186903479E-8d}, new double[]{0.680370569229126d, 2.4751837654582522E-8d}, new double[]{0.6808650493621826d, -1.7793890245755405E-8d}, - new double[]{0.6813591718673706d, 5.294053246347931E-8d}, new double[]{0.681853175163269d, -1.2220826223585654E-9d}, new double[]{0.6823468208312988d, 5.8377876767612725E-8d}, new double[]{0.6828403472900391d, -6.437492120743254E-9d}, new double[]{0.6833335161209106d, 4.2990710043633113E-8d}, new double[]{0.6838265657424927d, -3.1516131027023284E-8d}, new double[]{0.684319257736206d, 8.70017386744679E-9d}, new double[]{0.6848117113113403d, 4.466959125843237E-8d}, new double[]{0.6853040456771851d, -4.25782656420497E-8d}, new double[]{0.6857960224151611d, -1.4386267593671393E-8d}, new double[]{0.6862877607345581d, 1.0274494061148778E-8d}, new double[]{0.686779260635376d, 3.164186629229597E-8d}, new double[]{0.6872705221176147d, 4.995334552140326E-8d}, new double[]{0.687761664390564d, -5.3763211240398744E-8d}, new double[]{0.6882524490356445d, -4.0852427502515625E-8d}, new double[]{0.688742995262146d, -3.0287143914420064E-8d}, new double[]{0.6892333030700684d, -2.183125937905008E-8d}, new double[]{0.6897233724594116d, -1.524901992178814E-8d}, new double[]{0.6902132034301758d, -1.0305018010328949E-8d}, new double[]{0.6907027959823608d, -6.764191876212205E-9d}, new double[]{0.6911921501159668d, -4.391824838015402E-9d}, new double[]{0.6916812658309937d, -2.9535446262017846E-9d}, new double[]{0.6921701431274414d, -2.2153227096187463E-9d}, new double[]{0.6926587820053101d, -1.943473623641502E-9d}}; -} diff --git a/feature/cw/src/main/java/i3/a.java b/feature/cw/src/main/java/i3/a.java deleted file mode 100644 index b1220a2c..00000000 --- a/feature/cw/src/main/java/i3/a.java +++ /dev/null @@ -1,41 +0,0 @@ -package i3; - -/* loaded from: classes.dex */ -public final class a implements Runnable { - public final /* synthetic */ int f; - - /* renamed from: g, reason: collision with root package name */ - public final /* synthetic */ int f11686g; - - /* renamed from: h, reason: collision with root package name */ - public final /* synthetic */ int f11687h; - - /* renamed from: i, reason: collision with root package name */ - public final /* synthetic */ float[] f11688i; - - /* renamed from: j, reason: collision with root package name */ - public final /* synthetic */ float[] f11689j; - - /* renamed from: k, reason: collision with root package name */ - public final /* synthetic */ d f11690k; - - public a(d dVar, int i4, int i5, int i6, float[] fArr, float[] fArr2) { - this.f11690k = dVar; - this.f = i4; - this.f11686g = i5; - this.f11687h = i6; - this.f11688i = fArr; - this.f11689j = fArr2; - } - - @Override // java.lang.Runnable - public final void run() { - int i4 = this.f11686g; - int i5 = this.f; - if (i5 >= i4) { - return; - } - float f = this.f11689j[this.f11687h + i5]; - throw null; - } -} diff --git a/feature/cw/src/main/java/i3/b.java b/feature/cw/src/main/java/i3/b.java deleted file mode 100644 index c3a410fd..00000000 --- a/feature/cw/src/main/java/i3/b.java +++ /dev/null @@ -1,41 +0,0 @@ -package i3; - -/* loaded from: classes.dex */ -public final class b implements Runnable { - public final /* synthetic */ long f; - - /* renamed from: g, reason: collision with root package name */ - public final /* synthetic */ long f11691g; - - /* renamed from: h, reason: collision with root package name */ - public final /* synthetic */ long f11692h; - - /* renamed from: i, reason: collision with root package name */ - public final /* synthetic */ k3.d f11693i; - - /* renamed from: j, reason: collision with root package name */ - public final /* synthetic */ k3.d f11694j; - - /* renamed from: k, reason: collision with root package name */ - public final /* synthetic */ d f11695k; - - public b(d dVar, long j4, long j5, long j6, k3.d dVar2, k3.d dVar3) { - this.f11695k = dVar; - this.f = j4; - this.f11691g = j5; - this.f11692h = j6; - this.f11693i = dVar2; - this.f11694j = dVar3; - } - - @Override // java.lang.Runnable - public final void run() { - long j4 = this.f11691g; - long j5 = this.f; - if (j5 >= j4) { - return; - } - this.f11694j.b(this.f11692h + j5); - throw null; - } -} diff --git a/feature/cw/src/main/java/i3/c.java b/feature/cw/src/main/java/i3/c.java deleted file mode 100644 index 1de182dd..00000000 --- a/feature/cw/src/main/java/i3/c.java +++ /dev/null @@ -1,55 +0,0 @@ -package i3; - -import k3.g; -import k3.s; - -/* loaded from: classes.dex */ -public final class c implements Runnable { - public final /* synthetic */ int f = 1; - - /* renamed from: g, reason: collision with root package name */ - public final /* synthetic */ long f11696g; - - /* renamed from: h, reason: collision with root package name */ - public final /* synthetic */ long f11697h; - - /* renamed from: i, reason: collision with root package name */ - public final /* synthetic */ g f11698i; - - /* renamed from: j, reason: collision with root package name */ - public final /* synthetic */ Object f11699j; - - public c(long j4, long j5, s sVar, s sVar2) { - this.f11696g = j4; - this.f11697h = j5; - this.f11698i = sVar; - this.f11699j = sVar2; - } - - @Override // java.lang.Runnable - public final void run() { - switch (this.f) { - case 0: - k3.d dVar = (k3.d) this.f11698i; - long j4 = this.f11697h; - long j5 = this.f11696g; - if (j5 >= j4) { - return; - } - dVar.b(j5 * 2); - throw null; - default: - for (long j6 = this.f11696g; j6 < this.f11697h; j6++) { - ((s) this.f11698i).c(j6, ((s) this.f11699j).b(j6)); - } - return; - } - } - - public c(d dVar, long j4, long j5, k3.d dVar2) { - this.f11699j = dVar; - this.f11696g = j4; - this.f11697h = j5; - this.f11698i = dVar2; - } -} diff --git a/feature/cw/src/main/java/i3/d.java b/feature/cw/src/main/java/i3/d.java deleted file mode 100644 index e709e0ac..00000000 --- a/feature/cw/src/main/java/i3/d.java +++ /dev/null @@ -1,1267 +0,0 @@ -package i3; - -import d1.AbstractC1518b; -import java.util.concurrent.ExecutionException; -import java.util.concurrent.Future; -import java.util.logging.Level; -import java.util.logging.Logger; -import k3.g; -import k3.q; -import k3.r; -import k3.s; -import s.AbstractC1880e; - -/* loaded from: classes.dex */ -public final class d { - - /* renamed from: a, reason: collision with root package name */ - public int f11700a; - - /* renamed from: b, reason: collision with root package name */ - public long f11701b; - public int[] c; - - /* renamed from: d, reason: collision with root package name */ - public s f11702d; - - /* renamed from: e, reason: collision with root package name */ - public float[] f11703e; - public k3.d f; - - /* renamed from: g, reason: collision with root package name */ - public int f11704g; - - /* renamed from: h, reason: collision with root package name */ - public long f11705h; - - /* renamed from: i, reason: collision with root package name */ - public int f11706i; - - /* renamed from: j, reason: collision with root package name */ - public long f11707j; - - /* renamed from: k, reason: collision with root package name */ - public int f11708k; - - /* renamed from: l, reason: collision with root package name */ - public boolean f11709l; - - public final void a(int i4, int i5, int i6, int i7, int i8, float[] fArr, float[] fArr2) { - int i9 = i5 * i4; - int i10 = i4 * 2; - for (int i11 = 0; i11 < i5; i11++) { - int i12 = (i11 * i10) + i7; - int i13 = (i11 * i4) + i6; - int i14 = i13 + i9; - float f = fArr[i13]; - float f4 = fArr[i14]; - fArr2[i12] = f + f4; - fArr2[(i12 + i10) - 1] = f - f4; - } - if (i4 >= 2) { - if (i4 != 2) { - for (int i15 = 0; i15 < i5; i15++) { - i10 = i15 * i4; - int i16 = i10 + i9; - if (2 < i4) { - int i17 = i6 + 2; - int i18 = i10 + i17; - int i19 = i17 + i16; - float f5 = fArr[i18 - 1]; - float f6 = fArr[i18]; - float f7 = fArr[i19 - 1]; - float f8 = fArr[i19]; - throw null; - } - } - if (i4 % 2 == 1) { - return; - } - } - int i20 = i10 * 2; - for (int i21 = 0; i21 < i5; i21++) { - int i22 = i7 + i20 + i4; - int i23 = ((i6 + i4) - 1) + (i21 * i4); - fArr2[i22] = -fArr[i23 + i9]; - fArr2[i22 - 1] = fArr[i23]; - } - } - } - - public final void b(long j4, long j5, long j6, long j7, long j8, k3.d dVar, k3.d dVar2) { - long j9 = j5 * j4; - long j10 = 2; - long j11 = j4 * 2; - long j12 = 0; - while (j12 < j5) { - long j13 = (j12 * j11) + j7; - long j14 = (j12 * j4) + j6; - float b4 = dVar.b(j14); - float b5 = dVar.b(j14 + j9); - dVar2.c((j13 + j11) - 1, AbstractC1518b.m(b4, b5, dVar2, j13, b4, b5)); - j12++; - j10 = j10; - } - long j15 = j10; - if (j4 >= j15) { - if (j4 != j15) { - for (long j16 = 0; j16 < j5; j16++) { - j11 = j16 * j4; - long j17 = j11 + j9; - if (j15 < j4) { - long j18 = j6 + j15; - long j19 = j11 + j18; - long j20 = j18 + j17; - dVar.b(j19 - 1); - dVar.b(j19); - dVar.b(j20 - 1); - dVar.b(j20); - throw null; - } - } - if (j4 % j15 == 1) { - return; - } - } - long j21 = j11 * j15; - for (long j22 = 0; j22 < j5; j22++) { - long j23 = j7 + j21 + j4; - long j24 = ((j6 + j4) - 1) + (j22 * j4); - dVar2.c(j23, -dVar.b(j24 + j9)); - dVar2.c(j23 - 1, dVar.b(j24)); - } - } - } - - public final void c(int i4, int i5, int i6, int i7, int i8, float[] fArr, float[] fArr2) { - int i9 = i5 * i4; - for (int i10 = 0; i10 < i5; i10++) { - int i11 = i10 * i4; - int i12 = ((i10 * 3) + 1) * i4; - int i13 = i6 + i11; - int i14 = i13 + i9; - int i15 = (i9 * 2) + i13; - float f = fArr[i13]; - float f4 = fArr[i14]; - float f5 = fArr[i15]; - float f6 = f4 + f5; - fArr2[(i11 * 3) + i7] = f + f6; - fArr2[i7 + i12 + i4] = (f5 - f4) * 0.8660254f; - fArr2[((i7 + i4) - 1) + i12] = (f6 * (-0.5f)) + f; - } - if (i4 != 1) { - for (int i16 = 0; i16 < i5; i16++) { - if (2 < i4) { - throw null; - } - } - } - } - - public final void d(long j4, long j5, long j6, long j7, long j8, k3.d dVar, k3.d dVar2) { - long j9 = j5 * j4; - for (long j10 = 0; j10 < j5; j10++) { - long j11 = j10 * j4; - long j12 = ((j10 * 3) + 1) * j4; - long j13 = j6 + j11; - long j14 = j13 + j9; - long j15 = (2 * j9) + j13; - float b4 = dVar.b(j13); - float b5 = dVar.b(j14); - float b6 = dVar.b(j15); - float f = b5 + b6; - dVar2.c((j11 * 3) + j7, b4 + f); - dVar2.c(j7 + j12 + j4, (b6 - b5) * 0.8660254f); - dVar2.c(((j7 + j4) - 1) + j12, (f * (-0.5f)) + b4); - } - if (j4 != 1) { - for (long j16 = 0; j16 < j5; j16++) { - if (2 < j4) { - throw null; - } - } - } - } - - public final void e(int i4, int i5, int i6, int i7, int i8, float[] fArr, float[] fArr2) { - int i9 = i5 * i4; - for (int i10 = 0; i10 < i5; i10++) { - int i11 = i10 * i4; - int i12 = i11 * 4; - int i13 = i11 + i9; - int i14 = i13 + i9; - int i15 = i14 + i9; - float f = fArr[i6 + i11]; - float f4 = fArr[i6 + i13]; - float f5 = fArr[i6 + i14]; - float f6 = fArr[i6 + i15]; - float f7 = f4 + f6; - float f8 = f + f5; - int i16 = i7 + i12 + i4 + i4; - fArr2[i7 + i12] = f7 + f8; - int i17 = i16 - 1; - fArr2[i17 + i4 + i4] = f8 - f7; - fArr2[i17] = f - f5; - fArr2[i16] = f6 - f4; - } - if (i4 >= 2) { - if (i4 != 2) { - for (int i18 = 0; i18 < i5; i18++) { - if (2 < i4) { - throw null; - } - } - if (i4 % 2 == 1) { - return; - } - } - for (int i19 = 0; i19 < i5; i19++) { - int i20 = i19 * i4; - int i21 = i20 * 4; - int i22 = i20 + i9; - int i23 = i22 + i9; - int i24 = i23 + i9; - int i25 = i21 + i4; - int i26 = i25 + i4; - int i27 = (i6 + i4) - 1; - float f9 = fArr[i20 + i27]; - float f10 = fArr[i22 + i27]; - float f11 = fArr[i23 + i27]; - float f12 = fArr[i27 + i24]; - float f13 = (f10 + f12) * (-0.70710677f); - float f14 = (f10 - f12) * 0.70710677f; - int i28 = (i7 + i4) - 1; - fArr2[i21 + i28] = f14 + f9; - fArr2[i28 + i26] = f9 - f14; - fArr2[i7 + i25] = f13 - f11; - fArr2[i7 + i26 + i4] = f13 + f11; - } - } - } - - public final void f(long j4, long j5, long j6, long j7, long j8, k3.d dVar, k3.d dVar2) { - long j9 = j5 * j4; - for (long j10 = 0; j10 < j5; j10++) { - long j11 = j10 * j4; - long j12 = 4 * j11; - long j13 = j11 + j9; - long j14 = j13 + j9; - long j15 = j12 + j4; - float b4 = dVar.b(j6 + j11); - float b5 = dVar.b(j6 + j13); - float b6 = dVar.b(j6 + j14); - float b7 = dVar.b(j6 + j14 + j9); - float f = b5 + b7; - float f4 = b4 + b6; - long j16 = j7 + j15 + j4; - dVar2.c(j7 + j12, f + f4); - long j17 = j16 - 1; - dVar2.c(j17, AbstractC1518b.l(f4, f, dVar2, j17 + j4 + j4, b4, b6)); - dVar2.c(j16, b7 - b5); - } - if (j4 >= 2) { - if (j4 != 2) { - for (long j18 = 0; j18 < j5; j18++) { - if (2 < j4) { - throw null; - } - } - if (j4 % 2 == 1) { - return; - } - } - for (long j19 = 0; j19 < j5; j19++) { - long j20 = j19 * j4; - long j21 = j20 * 4; - long j22 = j20 + j9; - long j23 = j22 + j9; - long j24 = j21 + j4; - long j25 = j24 + j4; - long j26 = (j6 + j4) - 1; - float b8 = dVar.b(j26 + j20); - float b9 = dVar.b(j26 + j22); - float b10 = dVar.b(j26 + j23); - float b11 = dVar.b(j26 + j23 + j9); - float f5 = (b9 + b11) * (-0.70710677f); - float f6 = (b9 - b11) * 0.70710677f; - long j27 = (j7 + j4) - 1; - dVar2.c(j27 + j21, f6 + b8); - dVar2.c(j27 + j25, b8 - f6); - dVar2.c(j7 + j24, f5 - b10); - dVar2.c(j7 + j25 + j4, f5 + b10); - } - } - } - - public final void g(int i4, int i5, int i6, int i7, int i8, float[] fArr, float[] fArr2) { - int i9 = i5 * i4; - for (int i10 = 0; i10 < i5; i10++) { - int i11 = i10 * i4; - int i12 = i11 * 5; - int i13 = i12 + i4; - int i14 = i13 + i4; - int i15 = i14 + i4; - int i16 = i11 + i9; - int i17 = i16 + i9; - int i18 = i17 + i9; - int i19 = (i7 + i4) - 1; - float f = fArr[i6 + i11]; - float f4 = fArr[i6 + i16]; - float f5 = fArr[i6 + i17]; - float f6 = fArr[i6 + i18]; - float f7 = fArr[i6 + i18 + i9]; - float f8 = f7 + f4; - float f9 = f7 - f4; - float f10 = f6 + f5; - float f11 = f6 - f5; - fArr2[i7 + i12] = f + f8 + f10; - fArr2[i19 + i13] = (f10 * (-0.809017f)) + (f8 * 0.309017f) + f; - fArr2[i7 + i14] = (f11 * 0.58778524f) + (f9 * 0.95105654f); - fArr2[i19 + i15] = (f10 * 0.309017f) + (f8 * (-0.809017f)) + f; - fArr2[i7 + i15 + i4] = (f9 * 0.58778524f) - (f11 * 0.95105654f); - } - if (i4 != 1) { - for (int i20 = 0; i20 < i5; i20++) { - if (2 < i4) { - throw null; - } - } - } - } - - public final void h(long j4, long j5, long j6, long j7, long j8, k3.d dVar, k3.d dVar2) { - long j9 = j5 * j4; - long j10 = 0; - while (j10 < j5) { - long j11 = j10 * j4; - long j12 = 5 * j11; - long j13 = j12 + j4; - long j14 = j13 + j4; - long j15 = j14 + j4; - long j16 = j11 + j9; - long j17 = j16 + j9; - long j18 = j17 + j9; - long j19 = (j7 + j4) - 1; - float b4 = dVar.b(j6 + j11); - float b5 = dVar.b(j6 + j16); - float b6 = dVar.b(j6 + j17); - float b7 = dVar.b(j6 + j18); - long j20 = j9; - float b8 = dVar.b(j6 + j18 + j9); - float f = b8 + b5; - float f4 = b8 - b5; - float f5 = b7 + b6; - float f6 = b7 - b6; - dVar2.c(j7 + j12, b4 + f + f5); - dVar2.c(j19 + j13, (f5 * (-0.809017f)) + (f * 0.309017f) + b4); - dVar2.c(j7 + j14, (f6 * 0.58778524f) + (f4 * 0.95105654f)); - dVar2.c(j19 + j15, (f5 * 0.309017f) + (f * (-0.809017f)) + b4); - dVar2.c(j7 + j15 + j4, (f4 * 0.58778524f) - (f6 * 0.95105654f)); - j10++; - j9 = j20; - } - if (j4 != 1) { - for (long j21 = 0; j21 < j5; j21++) { - if (2 < j4) { - throw null; - } - } - } - } - - public final void i(int i4, int i5, int i6, int i7, float[] fArr, int i8, float[] fArr2, int i9, int i10) { - int i11 = i4; - int i12 = i5; - double d4 = 6.2831855f / i12; - float b4 = (float) g3.c.b(d4); - float f = (float) g3.c.f(d4); - int i13 = (i12 + 1) / 2; - int i14 = (i11 - 1) / 2; - if (i11 != 1) { - for (int i15 = 0; i15 < i7; i15++) { - fArr2[i9 + i15] = fArr[i8 + i15]; - } - for (int i16 = 1; i16 < i12; i16++) { - int i17 = i16 * i6 * i11; - for (int i18 = 0; i18 < i6; i18++) { - int i19 = (i18 * i11) + i17; - fArr2[i9 + i19] = fArr[i8 + i19]; - } - } - if (i14 <= i6) { - for (int i20 = 1; i20 < i12; i20++) { - if (2 < i11) { - throw null; - } - } - } else { - for (int i21 = 1; i21 < i12; i21++) { - for (int i22 = 0; i22 < i6; i22++) { - if (2 < i11) { - throw null; - } - } - } - } - if (i14 >= i6) { - for (int i23 = 1; i23 < i13; i23++) { - int i24 = i23 * i6 * i11; - int i25 = (i12 - i23) * i6 * i11; - for (int i26 = 0; i26 < i6; i26++) { - int i27 = i26 * i11; - int i28 = i27 + i24; - int i29 = i27 + i25; - for (int i30 = 2; i30 < i11; i30 += 2) { - int i31 = i8 + i30; - int i32 = i9 + i30; - int i33 = i31 + i28; - int i34 = i31 + i29; - int i35 = i32 + i28; - int i36 = i32 + i29; - float f4 = fArr2[i35 - 1]; - float f5 = fArr2[i35]; - float f6 = fArr2[i36 - 1]; - float f7 = fArr2[i36]; - fArr[i33 - 1] = f4 + f6; - fArr[i33] = f5 + f7; - fArr[i34 - 1] = f5 - f7; - fArr[i34] = f6 - f4; - } - } - } - } else { - int i37 = 1; - while (i37 < i13) { - int i38 = i37 * i6 * i11; - int i39 = (i12 - i37) * i6 * i11; - for (int i40 = 2; i40 < i11; i40 += 2) { - int i41 = i8 + i40; - int i42 = i9 + i40; - for (int i43 = 0; i43 < i6; i43++) { - int i44 = i43 * i11; - int i45 = i44 + i38; - int i46 = i44 + i39; - int i47 = i41 + i45; - int i48 = i41 + i46; - int i49 = i42 + i45; - int i50 = i42 + i46; - float f8 = fArr2[i49 - 1]; - float f9 = fArr2[i49]; - float f10 = fArr2[i50 - 1]; - float f11 = fArr2[i50]; - fArr[i47 - 1] = f8 + f10; - fArr[i47] = f9 + f11; - fArr[i48 - 1] = f9 - f11; - fArr[i48] = f10 - f8; - } - } - i37++; - i12 = i5; - } - } - } else { - System.arraycopy(fArr2, i9, fArr, i8, i7); - } - for (int i51 = 1; i51 < i13; i51++) { - int i52 = i51 * i6 * i11; - int i53 = (i5 - i51) * i6 * i11; - for (int i54 = 0; i54 < i6; i54++) { - int i55 = i54 * i11; - int i56 = i55 + i52; - int i57 = i55 + i53; - float f12 = fArr2[i9 + i56]; - float f13 = fArr2[i9 + i57]; - fArr[i8 + i56] = f12 + f13; - fArr[i57 + i8] = f13 - f12; - } - } - int i58 = (i5 - 1) * i7; - float f14 = 1.0f; - float f15 = 0.0f; - int i59 = 1; - while (i59 < i13) { - float f16 = (b4 * f14) - (f * f15); - f15 = (f15 * b4) + (f14 * f); - int i60 = i59 * i7; - int i61 = (i5 - i59) * i7; - int i62 = i58; - for (int i63 = 0; i63 < i7; i63++) { - int i64 = i9 + i63; - int i65 = i8 + i63; - fArr2[i64 + i60] = (fArr[i65 + i7] * f16) + fArr[i65]; - fArr2[i64 + i61] = fArr[i65 + i62] * f15; - } - float f17 = f15; - float f18 = f16; - int i66 = 2; - while (i66 < i13) { - float f19 = (f16 * f18) - (f15 * f17); - f17 = (f18 * f15) + (f17 * f16); - int i67 = i66 * i7; - int i68 = (i5 - i66) * i7; - int i69 = i66; - for (int i70 = 0; i70 < i7; i70++) { - int i71 = i9 + i70; - int i72 = i8 + i70; - int i73 = i71 + i60; - fArr2[i73] = (fArr[i72 + i67] * f19) + fArr2[i73]; - int i74 = i71 + i61; - fArr2[i74] = (fArr[i72 + i68] * f17) + fArr2[i74]; - } - i66 = i69 + 1; - f18 = f19; - } - i59++; - f14 = f16; - i58 = i62; - } - for (int i75 = 1; i75 < i13; i75++) { - int i76 = i75 * i7; - for (int i77 = 0; i77 < i7; i77++) { - int i78 = i9 + i77; - fArr2[i78] = fArr2[i78] + fArr[i8 + i77 + i76]; - } - } - if (i11 >= i6) { - for (int i79 = 0; i79 < i6; i79++) { - int i80 = i79 * i11; - int i81 = i80 * i5; - for (int i82 = 0; i82 < i11; i82++) { - fArr[i8 + i82 + i81] = fArr2[i9 + i82 + i80]; - } - } - } else { - for (int i83 = 0; i83 < i11; i83++) { - for (int i84 = 0; i84 < i6; i84++) { - int i85 = i84 * i11; - fArr[(i85 * i5) + i8 + i83] = fArr2[i9 + i83 + i85]; - } - } - } - int i86 = i5 * i11; - for (int i87 = 1; i87 < i13; i87++) { - int i88 = i87 * i6 * i11; - int i89 = (i5 - i87) * i6 * i11; - int i90 = i87 * 2 * i11; - for (int i91 = 0; i91 < i6; i91++) { - int i92 = i91 * i11; - int i93 = i91 * i86; - fArr[((((i8 + i11) - 1) + i90) - i11) + i93] = fArr2[i92 + i88 + i9]; - fArr[i8 + i90 + i93] = fArr2[i92 + i89 + i9]; - } - } - if (i11 == 1) { - return; - } - if (i14 >= i6) { - for (int i94 = 1; i94 < i13; i94++) { - int i95 = i94 * i6 * i11; - int i96 = (i5 - i94) * i6 * i11; - int i97 = i94 * 2 * i11; - for (int i98 = 0; i98 < i6; i98++) { - int i99 = i98 * i86; - int i100 = i98 * i11; - for (int i101 = 2; i101 < i11; i101 += 2) { - int i102 = i8 + i101 + i97 + i99; - int i103 = (((i8 + (i11 - i101)) + i97) - i11) + i99; - int i104 = i9 + i101 + i100; - int i105 = i104 + i95; - int i106 = i104 + i96; - float f20 = fArr2[i105 - 1]; - float f21 = fArr2[i105]; - float f22 = fArr2[i106 - 1]; - float f23 = fArr2[i106]; - fArr[i102 - 1] = f20 + f22; - fArr[i103 - 1] = f20 - f22; - fArr[i102] = f21 + f23; - fArr[i103] = f23 - f21; - } - } - } - return; - } - int i107 = 1; - while (i107 < i13) { - int i108 = i107 * i6 * i11; - int i109 = (i5 - i107) * i6 * i11; - int i110 = i107 * 2 * i11; - int i111 = 2; - while (i111 < i11) { - int i112 = i8 + i111; - int i113 = (i11 - i111) + i8; - int i114 = i9 + i111; - for (int i115 = 0; i115 < i6; i115++) { - int i116 = i115 * i86; - int i117 = i112 + i110 + i116; - int i118 = ((i113 + i110) - i4) + i116; - int i119 = i114 + (i115 * i4); - int i120 = i119 + i108; - int i121 = i119 + i109; - float f24 = fArr2[i120 - 1]; - float f25 = fArr2[i120]; - float f26 = fArr2[i121 - 1]; - float f27 = fArr2[i121]; - fArr[i117 - 1] = f24 + f26; - fArr[i118 - 1] = f24 - f26; - fArr[i117] = f25 + f27; - fArr[i118] = f27 - f25; - } - i111 += 2; - i11 = i4; - } - i107++; - i11 = i4; - } - } - - public final void j(long j4, long j5, long j6, long j7, k3.d dVar, long j8, k3.d dVar2, long j9, long j10) { - float f; - float f4; - long j11; - long j12; - long j13 = j5; - k3.d dVar3 = dVar; - k3.d dVar4 = dVar2; - double d4 = 6.2831855f / ((float) j13); - float b4 = (float) g3.c.b(d4); - float f5 = (float) g3.c.f(d4); - long j14 = 1; - long j15 = 2; - long j16 = (j13 + 1) / 2; - long j17 = (j4 - 1) / 2; - if (j4 != 1) { - for (long j18 = 0; j18 < j7; j18++) { - dVar4.c(j9 + j18, dVar3.b(j8 + j18)); - } - for (long j19 = 1; j19 < j13; j19 += j14) { - long j20 = j19 * j6 * j4; - long j21 = 0; - while (j21 < j6) { - long j22 = (j21 * j4) + j20; - long j23 = j14; - dVar4.c(j9 + j22, dVar3.b(j8 + j22)); - j21 += j23; - j14 = j23; - j15 = j15; - } - } - j11 = j14; - j12 = j15; - if (j17 <= j6) { - for (long j24 = j11; j24 < j13; j24 += j11) { - if (j12 < j4) { - throw null; - } - } - } else { - for (long j25 = j11; j25 < j13; j25 += j11) { - for (long j26 = 0; j26 < j6; j26 += j11) { - if (j12 < j4) { - throw null; - } - } - } - } - if (j17 >= j6) { - long j27 = j11; - while (j27 < j16) { - long j28 = j27 * j6 * j4; - long j29 = (j13 - j27) * j6 * j4; - for (long j30 = 0; j30 < j6; j30 += j11) { - long j31 = j30 * j4; - long j32 = j31 + j28; - long j33 = j31 + j29; - long j34 = j12; - while (j34 < j4) { - long j35 = j8 + j34; - long j36 = j9 + j34; - long j37 = j35 + j32; - long j38 = j35 + j33; - long j39 = j36 + j32; - long j40 = j36 + j33; - float b5 = dVar4.b(j39 - j11); - float b6 = dVar4.b(j39); - float b7 = dVar4.b(j40 - j11); - float b8 = dVar4.b(j40); - dVar3.c(j37, AbstractC1518b.j(b5, b7, dVar3, j37 - j11, b6, b8)); - dVar3.c(j38, AbstractC1518b.l(b6, b8, dVar3, j38 - j11, b7, b5)); - j34 += j12; - b4 = b4; - f5 = f5; - } - } - j27 += j11; - j13 = j5; - } - f = b4; - f4 = f5; - } else { - f = b4; - f4 = f5; - long j41 = j11; - while (j41 < j16) { - long j42 = j41 * j6 * j4; - long j43 = (j5 - j41) * j6 * j4; - long j44 = j12; - while (j44 < j4) { - long j45 = j8 + j44; - long j46 = j9 + j44; - long j47 = 0; - while (j47 < j6) { - long j48 = j47 * j4; - long j49 = j48 + j42; - long j50 = j48 + j43; - long j51 = j45 + j49; - long j52 = j41; - long j53 = j45 + j50; - long j54 = j46 + j49; - long j55 = j46 + j50; - float b9 = dVar4.b(j54 - j11); - float b10 = dVar4.b(j54); - float b11 = dVar4.b(j55 - j11); - float b12 = dVar4.b(j55); - dVar3.c(j51, AbstractC1518b.j(b9, b11, dVar3, j51 - j11, b10, b12)); - dVar3.c(j53, AbstractC1518b.l(b10, b12, dVar3, j53 - j11, b11, b9)); - j47 += j11; - dVar4 = dVar2; - j41 = j52; - j42 = j42; - } - j44 += j12; - dVar4 = dVar2; - } - j41 += j11; - dVar4 = dVar2; - } - dVar4 = dVar2; - } - } else { - f = b4; - f4 = f5; - j11 = 1; - j12 = 2; - r.a(j9, j8, j7, dVar4, dVar3); - dVar3 = dVar3; - dVar4 = dVar4; - } - long j56 = j11; - while (j56 < j16) { - long j57 = j56 * j6 * j4; - long j58 = (j5 - j56) * j6 * j4; - long j59 = 0; - while (j59 < j6) { - long j60 = j59 * j4; - long j61 = j60 + j57; - long j62 = j60 + j58; - long j63 = j56; - float b13 = dVar4.b(j9 + j61); - float b14 = dVar4.b(j9 + j62); - dVar3.c(j8 + j61, b13 + b14); - dVar3.c(j8 + j62, b14 - b13); - j59 += j11; - j56 = j63; - } - j56 += j11; - } - long j64 = (j5 - j11) * j7; - float f6 = 1.0f; - float f7 = 0.0f; - long j65 = j11; - while (j65 < j16) { - float f8 = (f * f6) - (f4 * f7); - float f9 = (f7 * f) + (f4 * f6); - long j66 = j65 * j7; - long j67 = (j5 - j65) * j7; - long j68 = 0; - while (j68 < j7) { - long j69 = j9 + j68; - long j70 = j64; - long j71 = j8 + j68; - float f10 = f9; - dVar4.c(j69 + j66, (dVar3.b(j71 + j7) * f8) + dVar3.b(j71)); - dVar4.c(j69 + j67, dVar3.b(j71 + j70) * f10); - j68 += j11; - f9 = f10; - j64 = j70; - } - long j72 = j64; - float f11 = f9; - float f12 = f8; - long j73 = j12; - while (j73 < j16) { - float f13 = (f8 * f12) - (f11 * f9); - f9 = (f9 * f8) + (f12 * f11); - long j74 = j73 * j7; - long j75 = (j5 - j73) * j7; - long j76 = 0; - while (j76 < j7) { - long j77 = j9 + j76; - long j78 = j8 + j76; - long j79 = j73; - long j80 = j77 + j66; - float f14 = f9; - dVar4.c(j80, (dVar3.b(j78 + j74) * f13) + dVar4.b(j80)); - long j81 = j77 + j67; - dVar4.c(j81, (dVar3.b(j78 + j75) * f14) + dVar4.b(j81)); - j76 += j11; - f9 = f14; - j73 = j79; - } - j73 += j11; - f12 = f13; - } - j65 += j11; - f6 = f8; - f7 = f11; - j64 = j72; - } - for (long j82 = j11; j82 < j16; j82 += j11) { - long j83 = j82 * j7; - for (long j84 = 0; j84 < j7; j84 += j11) { - long j85 = j9 + j84; - dVar4.c(j85, dVar3.b(j8 + j84 + j83) + dVar4.b(j85)); - } - } - if (j4 >= j6) { - for (long j86 = 0; j86 < j6; j86 += j11) { - long j87 = j86 * j4; - long j88 = j87 * j5; - for (long j89 = 0; j89 < j4; j89 += j11) { - dVar3.c(j8 + j89 + j88, dVar4.b(j9 + j89 + j87)); - } - } - } else { - for (long j90 = 0; j90 < j4; j90 += j11) { - for (long j91 = 0; j91 < j6; j91 += j11) { - long j92 = j91 * j4; - dVar3.c((j92 * j5) + j8 + j90, dVar4.b(j9 + j90 + j92)); - } - } - } - long j93 = j5 * j4; - long j94 = j11; - while (j94 < j16) { - long j95 = j94 * j6 * j4; - long j96 = (j5 - j94) * j6 * j4; - long j97 = j94 * j12 * j4; - long j98 = 0; - while (j98 < j6) { - long j99 = j98 * j4; - long j100 = j98 * j93; - long j101 = j93; - dVar3.c(((((j8 + j4) - j11) + j97) - j4) + j100, dVar4.b(j9 + j99 + j95)); - dVar3.c(j8 + j97 + j100, dVar4.b(j9 + j99 + j96)); - j98 += j11; - j93 = j101; - j94 = j94; - } - j94 += j11; - } - long j102 = j93; - if (j4 == 1) { - return; - } - if (j17 >= j6) { - long j103 = j11; - while (j103 < j16) { - long j104 = j103 * j6 * j4; - long j105 = (j5 - j103) * j6 * j4; - long j106 = j103 * j12 * j4; - for (long j107 = 0; j107 < j6; j107 += j11) { - long j108 = j107 * j102; - long j109 = j107 * j4; - long j110 = j12; - while (j110 < j4) { - long j111 = j8 + j110 + j106 + j108; - long j112 = (((j8 + (j4 - j110)) + j106) - j4) + j108; - long j113 = j9 + j110 + j109; - long j114 = j103; - long j115 = j113 + j104; - long j116 = j113 + j105; - float b15 = dVar4.b(j115 - j11); - float b16 = dVar4.b(j115); - float b17 = dVar4.b(j116 - j11); - float b18 = dVar4.b(j116); - dVar3.c(j111 - j11, b15 + b17); - dVar3.c(j111, AbstractC1518b.a(b15, b17, dVar3, j112 - j11, b16, b18)); - dVar3.c(j112, b18 - b16); - j110 += j12; - j103 = j114; - j104 = j104; - } - } - j103 += j11; - } - return; - } - long j117 = j11; - while (j117 < j16) { - long j118 = j117 * j6 * j4; - long j119 = (j5 - j117) * j6 * j4; - long j120 = j117 * j12 * j4; - long j121 = j12; - while (j121 < j4) { - long j122 = j8 + j121; - long j123 = j8 + (j4 - j121); - long j124 = j9 + j121; - long j125 = 0; - while (j125 < j6) { - long j126 = j125 * j102; - long j127 = j122 + j120 + j126; - long j128 = ((j123 + j120) - j4) + j126; - long j129 = j124 + (j125 * j4); - long j130 = j129 + j118; - long j131 = j129 + j119; - long j132 = j117; - float b19 = dVar4.b(j130 - j11); - float b20 = dVar4.b(j130); - float b21 = dVar4.b(j131 - j11); - float b22 = dVar4.b(j131); - dVar3.c(j127 - j11, b19 + b21); - dVar3.c(j127, AbstractC1518b.a(b19, b21, dVar3, j128 - j11, b20, b22)); - dVar3.c(j128, b22 - b20); - j125 += j11; - dVar4 = dVar2; - j118 = j118; - j117 = j132; - } - j121 += j12; - dVar4 = dVar2; - } - j117 += j11; - dVar4 = dVar2; - } - } - - /* JADX WARN: Removed duplicated region for block: B:132:0x0395 */ - /* JADX WARN: Removed duplicated region for block: B:134:0x0397 */ - /* JADX WARN: Type inference failed for: r9v7, types: [k3.g, k3.d] */ - /* - Code decompiled incorrectly, please refer to instructions dump. - */ - public final void k(float[] fArr, int i4) { - d dVar; - float[] fArr2; - int i5; - int i6; - long j4; - long j5; - k3.d dVar2; - long j6; - long j7; - d dVar3 = this; - float[] fArr3 = fArr; - int i7 = dVar3.f11708k; - int i8 = dVar3.f11700a; - boolean z3 = dVar3.f11709l; - Class cls = d.class; - int i9 = 4; - if (z3) { - k3.d gVar = new k3.d(); - gVar.f = q.f12106g; - gVar.f12103h = 4L; - gVar.f12102g = fArr3.length; - gVar.f12096k = fArr3; - long j8 = i4; - long j9 = dVar3.f11701b; - if (!z3) { - if (j8 < 2147483647L) { - dVar3.k(fArr3, (int) j8); - } else { - throw new IllegalArgumentException("The data array is too big."); - } - } else { - long j10 = 1; - if (j9 != 1) { - int a4 = AbstractC1880e.a(i7); - long j11 = 0; - if (a4 != 0) { - if (a4 != 1) { - if (a4 == 2) { - long j12 = 0 * 2; - k3.d dVar4 = new k3.d(j12, true); - int i10 = k3.c.c; - if (i10 > 1 && j9 > 8192) { - if (i10 < 4 || j9 <= 65536) { - i9 = 2; - } - Future[] futureArr = new Future[i9]; - long j13 = i9; - long j14 = j9 / j13; - int i11 = 0; - while (i11 < i9) { - Class cls2 = cls; - long j15 = i11 * j14; - if (i11 == i9 - 1) { - j7 = j9; - } else { - j7 = j15 + j14; - } - int i12 = i11; - k3.d dVar5 = dVar4; - long j16 = j8; - dVar3 = this; - j8 = j16; - futureArr[i12] = k3.c.a(new b(dVar3, j15, j7, j16, dVar5, gVar)); - i11 = i12 + 1; - j13 = j13; - cls = cls2; - j12 = j12; - dVar4 = dVar5; - } - j5 = j12; - dVar2 = dVar4; - long j17 = j13; - Class cls3 = cls; - try { - k3.c.b(futureArr); - } catch (InterruptedException e4) { - Logger.getLogger(cls3.getName()).log(Level.SEVERE, (String) null, (Throwable) e4); - } catch (ExecutionException e5) { - Logger.getLogger(cls3.getName()).log(Level.SEVERE, (String) null, (Throwable) e5); - } - j3.c.h(j5, dVar2, dVar3.f11702d, dVar3.f11705h, dVar3.f); - long j18 = 0 / j17; - for (int i13 = 0; i13 < i9; i13++) { - long j19 = i13 * j18; - if (i13 == i9 - 1) { - j6 = 0; - } else { - j6 = j19 + j18; - } - futureArr[i13] = k3.c.a(new c(dVar3, j19, j6, dVar2)); - } - try { - k3.c.b(futureArr); - } catch (InterruptedException e6) { - Logger.getLogger(cls3.getName()).log(Level.SEVERE, (String) null, (Throwable) e6); - } catch (ExecutionException e7) { - Logger.getLogger(cls3.getName()).log(Level.SEVERE, (String) null, (Throwable) e7); - } - } else { - j5 = j12; - dVar2 = dVar4; - if (0 >= j9) { - j3.c.h(j5, dVar2, dVar3.f11702d, dVar3.f11705h, dVar3.f); - if (0 < 0) { - dVar2.b(0 * 2); - throw null; - } - } else { - gVar.b(j8 + 0); - throw null; - } - } - j3.c.r(j5, dVar2, 0L, dVar3.f11702d, dVar3.f11705h, dVar3.f); - if (j9 % 2 == 0) { - throw null; - } - throw null; - } - } else { - if (j9 != 1) { - new k3.d(j9, true); - throw null; - } - while (true) { - j9--; - if (j9 < 2) { - break; - } - long j20 = j8 + j9; - float b4 = gVar.b(j20); - long j21 = j20 - 1; - gVar.c(j20, gVar.b(j21)); - gVar.c(j21, b4); - } - } - } else { - long j22 = dVar3.f11701b; - if (j22 > 4) { - j3.c.r(j22, gVar, j8, dVar3.f11702d, dVar3.f11705h, dVar3.f); - long j23 = dVar3.f11707j; - k3.d dVar6 = dVar3.f; - long j24 = dVar3.f11705h; - long j25 = j9 >> 1; - long j26 = (j23 * 2) / j25; - long j27 = 2; - while (j27 < j25) { - j11 += j26; - long j28 = j10; - float b5 = 0.5f - dVar6.b((j24 + j23) - j11); - float b6 = dVar6.b(j24 + j11); - k3.d dVar7 = dVar6; - long j29 = j8 + j27; - long j30 = j8 + (j9 - j27); - float b7 = gVar.b(j29) - gVar.b(j30); - long j31 = j23; - long j32 = j29 + j28; - long j33 = j24; - long j34 = j30 + j28; - float b8 = gVar.b(j34) + gVar.b(j32); - float f = (b5 * b7) - (b6 * b8); - float f4 = (b7 * b6) + (b5 * b8); - gVar.c(j29, gVar.b(j29) - f); - gVar.c(j32, f4 - gVar.b(j32)); - gVar.c(j30, gVar.b(j30) + f); - gVar.c(j34, f4 - gVar.b(j34)); - j27 += 2; - j10 = j28; - dVar6 = dVar7; - j23 = j31; - j24 = j33; - } - j4 = j10; - long j35 = j8 + j25 + j4; - gVar.c(j35, -gVar.b(j35)); - } else { - j4 = 1; - if (j22 == 4) { - long j36 = j8 + 2; - float b9 = gVar.b(j8) - gVar.b(j36); - long j37 = j8 + 1; - long j38 = 3 + j8; - float b10 = gVar.b(j38) + (-gVar.b(j37)); - gVar.c(j8, gVar.b(j36) + gVar.b(j8)); - gVar.c(j37, gVar.b(j38) + gVar.b(j37)); - gVar.c(j36, b9); - gVar.c(j38, b10); - } - } - long j39 = j8 + j4; - float b11 = gVar.b(j8) - gVar.b(j39); - gVar.c(j8, gVar.b(j39) + gVar.b(j8)); - gVar.c(j39, b11); - } - } - } - } else { - int i14 = 0; - if (i8 != 1) { - int a5 = AbstractC1880e.a(i7); - if (a5 != 0) { - if (a5 != 1) { - if (a5 == 2) { - int i15 = 0 * 2; - float[] fArr4 = new float[i15]; - int i16 = k3.c.c; - if (i16 > 1) { - long j40 = i8; - if (j40 >= 8192) { - if (i16 < 4 || j40 < 65536) { - i9 = 2; - } - Future[] futureArr2 = new Future[i9]; - int i17 = i8 / i9; - int i18 = 0; - while (i18 < i9) { - int i19 = i18 * i17; - if (i18 == i9 - 1) { - i6 = i8; - } else { - i6 = i19 + i17; - } - futureArr2[i18] = k3.c.a(new a(this, i19, i6, i4, fArr4, fArr3)); - i18++; - fArr3 = fArr; - } - dVar = this; - fArr2 = fArr4; - try { - k3.c.b(futureArr2); - } catch (InterruptedException e8) { - Logger.getLogger(cls.getName()).log(Level.SEVERE, (String) null, (Throwable) e8); - } catch (ExecutionException e9) { - Logger.getLogger(cls.getName()).log(Level.SEVERE, (String) null, (Throwable) e9); - } - j3.c.g(i15, fArr2, dVar.c, dVar.f11704g, dVar.f11703e); - int i20 = 0 / i9; - for (int i21 = 0; i21 < i9; i21++) { - int i22 = i21 * i20; - if (i21 == i9 - 1) { - i5 = 0; - } else { - i5 = i22 + i20; - } - futureArr2[i21] = k3.c.a(new I0.d(dVar, i22, i5, fArr2)); - } - try { - k3.c.b(futureArr2); - } catch (InterruptedException e10) { - Logger.getLogger(cls.getName()).log(Level.SEVERE, (String) null, (Throwable) e10); - } catch (ExecutionException e11) { - Logger.getLogger(cls.getName()).log(Level.SEVERE, (String) null, (Throwable) e11); - } - j3.c.q(i15, fArr2, 0, dVar.c, dVar.f11704g, dVar.f11703e); - if (i8 % 2 != 0) { - throw null; - } - throw null; - } - } - dVar = this; - fArr2 = fArr4; - if (i8 <= 0) { - j3.c.g(i15, fArr2, dVar.c, dVar.f11704g, dVar.f11703e); - j3.c.q(i15, fArr2, 0, dVar.c, dVar.f11704g, dVar.f11703e); - if (i8 % 2 != 0) { - } - } else { - float f5 = fArr[i4 + 0]; - throw null; - } - } - } - } else { - // smali cond_22(a5==0, k=1 时运行时路径!): 单线程 FFT + 后处理 - // jadx 原把这段错塞进 if(i8!=1) 的 else(死代码), a5==0 的 else 是幻觉(throw null) - int i26 = this.f11700a; - if (i26 > 4) { - j3.c.q(i26, fArr, i4, this.c, this.f11704g, this.f11703e); - int i27 = this.f11706i; - float[] fArr6 = this.f11703e; - int i28 = this.f11704g; - int i29 = i8 >> 1; - int i30 = (i27 * 2) / i29; - for (int i31 = 2; i31 < i29; i31 += 2) { - i14 += i30; - float f7 = 0.5f - fArr6[(i28 + i27) - i14]; - float f8 = fArr6[i28 + i14]; - int i32 = i4 + i31; - int i33 = i4 + (i8 - i31); - float f9 = fArr[i32]; - float f10 = f9 - fArr[i33]; - int i34 = i32 + 1; - int i35 = i33 + 1; - float f11 = fArr[i34] + fArr[i35]; - float f12 = (f7 * f10) - (f8 * f11); - float f13 = (f8 * f10) + (f7 * f11); - fArr[i32] = f9 - f12; - fArr[i34] = f13 - fArr[i34]; - fArr[i33] = fArr[i33] + f12; - fArr[i35] = f13 - fArr[i35]; - } - int i36 = i4 + i29 + 1; - fArr[i36] = -fArr[i36]; - } else if (i26 == 4) { - float f14 = fArr[i4]; - int i37 = i4 + 2; - float f15 = fArr[i37]; - int i38 = i4 + 1; - int i39 = i4 + 3; - float f16 = (-fArr[i38]) + fArr[i39]; - fArr[i4] = f14 + f15; - fArr[i38] = fArr[i38] + fArr[i39]; - fArr[i37] = f14 - f15; - fArr[i39] = f16; - } - float f17 = fArr[i4]; - int i40 = i4 + 1; - float f18 = fArr[i40]; - fArr[i4] = f17 + f18; - fArr[i40] = f17 - f18; - } - } - } - } - } diff --git a/feature/cw/src/main/java/j1/C1646n.java b/feature/cw/src/main/java/j1/C1646n.java deleted file mode 100644 index aadaa907..00000000 --- a/feature/cw/src/main/java/j1/C1646n.java +++ /dev/null @@ -1,42 +0,0 @@ -package j1; - -import android.widget.LinearLayout; -import android.widget.TextView; -import androidx.constraintlayout.widget.ConstraintLayout; -import com.ve3nea.morse_expert.DecodedTextView; -import com.ve3nea.morse_expert.ScaleView; -import com.ve3nea.morse_expert.WaterfallSurfaceView; - -/** - * 照搬自 Morse Expert 1.15 j1.C1646n, 类名/字段名保持混淆原名。 - * R8 合并类手术: 只保留视图持有器(6 参构造 + 5 个 View 字段); - * 其余 158-1278 行(广告/计费合并方法)已整段裁剪(用户要求广告不迁移)。 - */ -public final class C1646n { - - public final /* synthetic */ int f; - - /* renamed from: g, reason: collision with root package name */ - public Object f11888g; - - /* renamed from: h, reason: collision with root package name */ - public Object f11889h; - - /* renamed from: i, reason: collision with root package name */ - public Object f11890i; - - /* renamed from: j, reason: collision with root package name */ - public Object f11891j; - - /* renamed from: k, reason: collision with root package name */ - public Object f11892k; - - public C1646n(ConstraintLayout constraintLayout, DecodedTextView decodedTextView, ScaleView scaleView, TextView textView, LinearLayout linearLayout, WaterfallSurfaceView waterfallSurfaceView) { - this.f = 1; - this.f11888g = decodedTextView; - this.f11889h = scaleView; - this.f11890i = textView; - this.f11891j = linearLayout; - this.f11892k = waterfallSurfaceView; - } -} diff --git a/feature/cw/src/main/java/j3/a.java b/feature/cw/src/main/java/j3/a.java deleted file mode 100644 index 12143462..00000000 --- a/feature/cw/src/main/java/j3/a.java +++ /dev/null @@ -1,100 +0,0 @@ -package j3; - -/* loaded from: classes.dex */ -public final class a implements Runnable { - public final /* synthetic */ int f; - - /* renamed from: g, reason: collision with root package name */ - public final /* synthetic */ int f11919g; - - /* renamed from: h, reason: collision with root package name */ - public final /* synthetic */ int f11920h; - - /* renamed from: i, reason: collision with root package name */ - public final /* synthetic */ int f11921i; - - /* renamed from: j, reason: collision with root package name */ - public final /* synthetic */ float[] f11922j; - - /* renamed from: k, reason: collision with root package name */ - public final /* synthetic */ float[] f11923k; - - /* renamed from: l, reason: collision with root package name */ - public final /* synthetic */ int f11924l; - - public /* synthetic */ a(int i4, int i5, int i6, int i7, int i8, float[] fArr, float[] fArr2) { - this.f = i8; - this.f11919g = i4; - this.f11920h = i5; - this.f11921i = i6; - this.f11922j = fArr; - this.f11923k = fArr2; - this.f11924l = i7; - } - - @Override // java.lang.Runnable - public final void run() { - switch (this.f) { - case 0: - int i4 = this.f11919g; - int i5 = this.f11920h; - int i6 = i4 + i5; - int i7 = this.f11921i; - while (true) { - int i8 = i7; - if (i8 > 512) { - i7 = i8 >> 2; - c.w(i7, i6 - i7, this.f11924l - (i8 >> 3), this.f11922j, this.f11923k); - } else { - int i9 = this.f11924l; - float[] fArr = this.f11923k; - c.u(i8, 1, this.f11922j, i6 - i8, i9, fArr); - int i10 = i4 - i8; - int i11 = 0; - int i12 = i5 - i8; - while (i12 > 0) { - int i13 = i11 + 1; - int i14 = this.f11924l; - float[] fArr2 = this.f11923k; - int i15 = i12; - i11 = i13; - int i16 = this.f11924l; - float[] fArr3 = this.f11923k; - c.u(i8, c.E(i8, i12, i13, this.f11919g, i14, this.f11922j, fArr2), this.f11922j, i10 + i15, i16, fArr3); - i12 = i15 - i8; - } - return; - } - } - default: - int i17 = this.f11919g; - int i18 = this.f11920h; - int i19 = i17 + i18; - int i20 = this.f11921i; - int i21 = 1; - while (i20 > 512) { - i20 >>= 2; - i21 <<= 2; - c.y(i20, i19 - i20, this.f11924l - i20, this.f11922j, this.f11923k); - } - int i22 = this.f11924l; - float[] fArr4 = this.f11923k; - c.u(i20, 0, this.f11922j, i19 - i20, i22, fArr4); - int i23 = i21 >> 1; - int i24 = i17 - i20; - int i25 = i18 - i20; - while (i25 > 0) { - int i26 = i23 + 1; - int i27 = this.f11924l; - float[] fArr5 = this.f11923k; - int i28 = i25; - i23 = i26; - int i29 = this.f11924l; - float[] fArr6 = this.f11923k; - c.u(i20, c.E(i20, i25, i26, this.f11919g, i27, this.f11922j, fArr5), this.f11922j, i24 + i28, i29, fArr6); - i25 = i28 - i20; - } - return; - } - } -} diff --git a/feature/cw/src/main/java/j3/b.java b/feature/cw/src/main/java/j3/b.java deleted file mode 100644 index b5997a2d..00000000 --- a/feature/cw/src/main/java/j3/b.java +++ /dev/null @@ -1,104 +0,0 @@ -package j3; - -import k3.d; - -/* loaded from: classes.dex */ -public final class b implements Runnable { - public final /* synthetic */ int f; - - /* renamed from: g, reason: collision with root package name */ - public final /* synthetic */ long f11925g; - - /* renamed from: h, reason: collision with root package name */ - public final /* synthetic */ long f11926h; - - /* renamed from: i, reason: collision with root package name */ - public final /* synthetic */ long f11927i; - - /* renamed from: j, reason: collision with root package name */ - public final /* synthetic */ d f11928j; - - /* renamed from: k, reason: collision with root package name */ - public final /* synthetic */ d f11929k; - - /* renamed from: l, reason: collision with root package name */ - public final /* synthetic */ long f11930l; - - public /* synthetic */ b(long j4, long j5, long j6, d dVar, d dVar2, long j7, int i4) { - this.f = i4; - this.f11925g = j4; - this.f11926h = j5; - this.f11927i = j6; - this.f11928j = dVar; - this.f11929k = dVar2; - this.f11930l = j7; - } - - @Override // java.lang.Runnable - public final void run() { - switch (this.f) { - case 0: - long j4 = this.f11925g; - long j5 = this.f11926h; - long j6 = j4 + j5; - long j7 = this.f11927i; - while (j7 > 512) { - long j8 = j7 >> 2; - c.x(j8, j6 - j8, this.f11930l - (j7 >> 3), this.f11928j, this.f11929k); - j7 = j8; - } - c.v(j7, 1L, j6 - j7, this.f11930l, this.f11928j, this.f11929k); - long j9 = j4 - j7; - long j10 = j5 - j7; - long j11 = 0; - for (long j12 = 0; j10 > j12; j12 = 0) { - long j13 = j11 + 1; - long j14 = j10; - c.v(j7, c.F(j7, j10, j13, this.f11925g, this.f11930l, this.f11928j, this.f11929k), j9 + j14, this.f11930l, this.f11928j, this.f11929k); - j10 = j14 - j7; - j11 = j13; - j9 = j9; - } - return; - case 1: - long j15 = this.f11925g; - long j16 = this.f11926h; - long j17 = j15 + j16; - long j18 = this.f11927i; - long j19 = 1; - while (j18 > 512) { - long j20 = j18 >> 2; - j19 <<= 2; - c.z(j20, j17 - j20, this.f11930l - j20, this.f11928j, this.f11929k); - j18 = j20; - } - c.v(j18, 0L, j17 - j18, this.f11930l, this.f11928j, this.f11929k); - long j21 = j19 >> 1; - long j22 = j15 - j18; - long j23 = j16 - j18; - while (j23 > 0) { - long j24 = j21 + 1; - long j25 = j23; - j21 = j24; - c.v(j18, c.F(j18, j23, j24, this.f11925g, this.f11930l, this.f11928j, this.f11929k), j22 + j25, this.f11930l, this.f11928j, this.f11929k); - j23 = j25 - j18; - } - return; - default: - for (long j26 = this.f11925g; j26 < this.f11926h; j26++) { - this.f11928j.c(this.f11927i + j26, this.f11929k.b(this.f11930l + j26)); - } - return; - } - } - - public b(long j4, long j5, long j6, long j7, d dVar, d dVar2) { - this.f = 2; - this.f11925g = j4; - this.f11926h = j5; - this.f11928j = dVar; - this.f11927i = j6; - this.f11929k = dVar2; - this.f11930l = j7; - } -} diff --git a/feature/cw/src/main/java/j3/c.java b/feature/cw/src/main/java/j3/c.java deleted file mode 100644 index 3935c4fe..00000000 --- a/feature/cw/src/main/java/j3/c.java +++ /dev/null @@ -1,5783 +0,0 @@ -package j3; - -import d1.AbstractC1518b; -import java.util.concurrent.ExecutionException; -import java.util.concurrent.Future; -import java.util.logging.Level; -import java.util.logging.Logger; -import k3.d; -import k3.s; - -/** - * 照搬自 Morse Expert 1.15 j3.c (R8 合并类), 类名保持混淆原名。 - * 仅保留 k3 FFT 库实际调用的静态 FFT 方法 (u/v/w/x/y/z/E/F/g/h/q/r 及其辅助 - * A/B/C/D/G/H/i/j/k/l/m/n/o/p/s/t/d/J), 其余 R8 合并的 billing/ads/TextView - * 兼容代码及 M.Z 接口实现已裁剪。依据: apktool smali (j3/c.smali) 静态调用关系。 - * d 方法中 K1.a.z 的 Guava lenientFormat 以 String.format 等价替换 - * (K1.a 已裁剪为仅保留内存统计字段)。 - */ -public final class c { - public static void A(int i4, int i5, int i6, float[] fArr, float[] fArr2) { - int i7 = i5 + i4; - int i8 = i4; - while (i8 > 512) { - int i9 = i8 >> 2; - w(i9, i7 - i9, i6 - (i8 >> 3), fArr, fArr2); - i8 = i9; - } - float[] fArr3 = fArr; - float[] fArr4 = fArr2; - u(i8, 1, fArr3, i7 - i8, i6, fArr4); - int i10 = i5 - i8; - int i11 = 0; - int i12 = i4 - i8; - while (i12 > 0) { - i11++; - float[] fArr5 = fArr4; - float[] fArr6 = fArr3; - int E3 = E(i8, i12, i11, i5, i6, fArr6, fArr5); - int i13 = i12; - fArr3 = fArr6; - fArr4 = fArr5; - u(i8, E3, fArr3, i10 + i13, i6, fArr4); - i12 = i13 - i8; - } - } - - public static void B(long j4, long j5, long j6, d dVar, d dVar2) { - long j7 = j5 + j4; - long j8 = j4; - while (j8 > 512) { - long j9 = j8 >> 2; - x(j9, j7 - j9, j6 - (j8 >> 3), dVar, dVar2); - j8 = j9; - } - v(j8, 1L, j7 - j8, j6, dVar, dVar2); - long j10 = j5 - j8; - long j11 = j4 - j8; - long j12 = 0; - while (j11 > 0) { - long j13 = j12 + 1; - long j14 = j11; - v(j8, F(j8, j11, j13, j5, j6, dVar, dVar2), j10 + j14, j6, dVar, dVar2); - j11 = j14 - j8; - j12 = j13; - } - } - - public static void C(int i4, int i5, int i6, float[] fArr, float[] fArr2) { - int i7; - int i8; - int i9; - int i10 = i4 >> 1; - if (i4 >= 65536) { - i10 = i4 >> 2; - i8 = 1; - i7 = 4; - } else { - i7 = 2; - i8 = 0; - } - int i11 = i10; - Future[] futureArr = new Future[i7]; - int i12 = 0; - for (int i13 = 0; i13 < i7; i13++) { - int i14 = (i13 * i11) + i5; - if (i13 != i8) { - i9 = i12 + 1; - futureArr[i12] = k3.c.a(new a(i14, i11, i4, i6, 0, fArr, fArr2)); - } else { - i9 = i12 + 1; - futureArr[i12] = k3.c.a(new a(i14, i11, i4, i6, 1, fArr, fArr2)); - } - i12 = i9; - } - try { - k3.c.b(futureArr); - } catch (InterruptedException e4) { - Logger.getLogger(c.class.getName()).log(Level.SEVERE, (String) null, (Throwable) e4); - } catch (ExecutionException e5) { - Logger.getLogger(c.class.getName()).log(Level.SEVERE, (String) null, (Throwable) e5); - } - } - - public static void D(long j4, long j5, long j6, d dVar, d dVar2) { - long j7; - int i4; - int i5; - int i6 = 1; - long j8 = j4 >> 1; - if (j4 >= 65536) { - j7 = j4 >> 2; - i4 = 4; - } else { - j7 = j8; - i6 = 0; - i4 = 2; - } - Future[] futureArr = new Future[i4]; - int i7 = 0; - for (int i8 = 0; i8 < i4; i8++) { - long j9 = (i8 * j7) + j5; - if (i8 != i6) { - i5 = i7 + 1; - futureArr[i7] = k3.c.a(new b(j9, j7, j4, dVar, dVar2, j6, 0)); - } else { - i5 = i7 + 1; - futureArr[i7] = k3.c.a(new b(j9, j7, j4, dVar, dVar2, j6, 1)); - } - i7 = i5; - } - try { - k3.c.b(futureArr); - } catch (InterruptedException e4) { - Logger.getLogger(c.class.getName()).log(Level.SEVERE, (String) null, (Throwable) e4); - } catch (ExecutionException e5) { - Logger.getLogger(c.class.getName()).log(Level.SEVERE, (String) null, (Throwable) e5); - } - } - - public static int E(int i4, int i5, int i6, int i7, int i8, float[] fArr, float[] fArr2) { - int i9 = i7 - i4; - if ((i6 & 3) != 0) { - int i10 = i6 & 1; - if (i10 != 0) { - w(i4, i9 + i5, i8 - (i4 >> 1), fArr, fArr2); - return i10; - } - y(i4, i9 + i5, i8 - i4, fArr, fArr2); - return i10; - } - while ((i6 & 3) == 0) { - i4 <<= 2; - i6 >>= 2; - } - int i11 = i6 & 1; - int i12 = i7 + i5; - if (i11 != 0) { - while (i4 > 128) { - w(i4, i12 - i4, i8 - (i4 >> 1), fArr, fArr2); - i4 >>= 2; - } - } else { - while (i4 > 128) { - y(i4, i12 - i4, i8 - i4, fArr, fArr2); - i4 >>= 2; - } - } - return i11; - } - - public static long F(long j4, long j5, long j6, long j7, long j8, d dVar, d dVar2) { - long j9 = j7 - j4; - if ((j6 & 3) != 0) { - long j10 = j6 & 1; - if (j10 != 0) { - x(j4, j9 + j5, j8 - (j4 >> 1), dVar, dVar2); - return j10; - } - z(j4, j9 + j5, j8 - j4, dVar, dVar2); - return j10; - } - long j11 = j4; - long j12 = j6; - while ((j12 & 3) == 0) { - j11 <<= 2; - j12 >>= 2; - } - long j13 = j12 & 1; - long j14 = j7 + j5; - if (j13 != 0) { - while (j11 > 128) { - x(j11, j14 - j11, j8 - (j11 >> 1), dVar, dVar2); - j11 >>= 2; - } - } else { - while (j11 > 128) { - z(j11, j14 - j11, j8 - j11, dVar, dVar2); - j11 >>= 2; - } - } - return j13; - } - - public static void G(d dVar, long j4) { - long j5 = 2 + j4; - float b4 = dVar.b(j4) - dVar.b(j5); - long j6 = 1 + j4; - long j7 = 3 + j4; - float b5 = dVar.b(j6) - dVar.b(j7); - dVar.c(j4, dVar.b(j5) + dVar.b(j4)); - dVar.c(j6, dVar.b(j7) + dVar.b(j6)); - dVar.c(j5, b4); - dVar.c(j7, b5); - } - - public static void H(float[] fArr, int i4) { - float f4 = fArr[i4]; - int i5 = i4 + 2; - float f5 = fArr[i5]; - int i6 = i4 + 1; - int i7 = i4 + 3; - float f6 = fArr[i6] - fArr[i7]; - fArr[i4] = f4 + f5; - fArr[i6] = fArr[i6] + fArr[i7]; - fArr[i5] = f4 - f5; - fArr[i7] = f6; - } - - public static void J(int i4) { - if (i4 >= 0) { - } else { - throw new IllegalArgumentException(); - } - } - - public static String d(int i4, int i5, String str) { - if (i4 < 0) { - return String.format("%s (%s) must not be negative", str, Integer.valueOf(i4)); - } - if (i5 >= 0) { - return String.format("%s (%s) must not be greater than size (%s)", str, Integer.valueOf(i4), Integer.valueOf(i5)); - } - throw new IllegalArgumentException(AbstractC1518b.d("negative size: ", i5)); - } - - public static void g(int i4, float[] fArr, int[] iArr, int i5, float[] fArr2) { - if (i4 <= 8) { - if (i4 != 8) { - if (i4 == 4) { - H(fArr, 0); - return; - } - return; - } - float f4 = fArr[0]; - float f5 = fArr[4]; - float f6 = f4 + f5; - float f7 = fArr[1]; - float f8 = fArr[5]; - float f9 = f7 + f8; - float f10 = f4 - f5; - float f11 = f7 - f8; - float f12 = fArr[2]; - float f13 = fArr[6]; - float f14 = f12 + f13; - float f15 = fArr[3]; - float f16 = fArr[7]; - float f17 = f15 + f16; - float f18 = f12 - f13; - float f19 = f15 - f16; - fArr[0] = f6 + f14; - fArr[1] = f9 + f17; - fArr[2] = f10 + f19; - fArr[3] = f11 - f18; - fArr[4] = f6 - f14; - fArr[5] = f9 - f17; - fArr[6] = f10 - f19; - fArr[7] = f11 + f18; - return; - } - if (i4 <= 32) { - if (i4 == 32) { - n(fArr, 0, fArr2, i5 - 8); - float f20 = fArr[2]; - float f21 = fArr[3]; - float f22 = fArr[4]; - float f23 = fArr[5]; - float f24 = fArr[6]; - float f25 = fArr[7]; - float f26 = fArr[8]; - float f27 = fArr[9]; - float f28 = fArr[10]; - float f29 = fArr[11]; - float f30 = fArr[12]; - float f31 = fArr[13]; - float f32 = fArr[14]; - float f33 = fArr[15]; - float f34 = fArr[16]; - float f35 = fArr[17]; - float f36 = fArr[18]; - float f37 = fArr[19]; - float f38 = fArr[20]; - float f39 = fArr[21]; - float f40 = fArr[22]; - float f41 = fArr[23]; - float f42 = fArr[24]; - float f43 = fArr[25]; - float f44 = fArr[26]; - float f45 = fArr[27]; - float f46 = fArr[28]; - float f47 = fArr[29]; - float f48 = fArr[30]; - float f49 = fArr[31]; - fArr[2] = f48; - fArr[3] = f49; - fArr[4] = f32; - fArr[5] = f33; - fArr[6] = f40; - fArr[7] = f41; - fArr[8] = f24; - fArr[9] = f25; - fArr[10] = f44; - fArr[11] = f45; - fArr[12] = f28; - fArr[13] = f29; - fArr[14] = f36; - fArr[15] = f37; - fArr[16] = f20; - fArr[17] = f21; - fArr[18] = f46; - fArr[19] = f47; - fArr[20] = f30; - fArr[21] = f31; - fArr[22] = f38; - fArr[23] = f39; - fArr[24] = f22; - fArr[25] = f23; - fArr[26] = f42; - fArr[27] = f43; - fArr[28] = f26; - fArr[29] = f27; - fArr[30] = f34; - fArr[31] = f35; - return; - } - j(fArr, 0, fArr2, 0); - float f50 = fArr[2]; - float f51 = fArr[3]; - float f52 = fArr[4]; - float f53 = fArr[5]; - float f54 = fArr[6]; - float f55 = fArr[7]; - float f56 = fArr[8]; - float f57 = fArr[9]; - float f58 = fArr[10]; - float f59 = fArr[11]; - float f60 = fArr[12]; - float f61 = fArr[13]; - float f62 = fArr[14]; - float f63 = fArr[15]; - fArr[2] = f62; - fArr[3] = f63; - fArr[4] = f54; - fArr[5] = f55; - fArr[6] = f58; - fArr[7] = f59; - fArr[8] = f50; - fArr[9] = f51; - fArr[10] = f60; - fArr[11] = f61; - fArr[12] = f52; - fArr[13] = f53; - fArr[14] = f56; - fArr[15] = f57; - return; - } - int i6 = i4 >> 2; - int i7 = i5 - i6; - int i8 = i4 >> 3; - int i9 = i8 * 2; - int i10 = i9 + i9; - int i11 = i10 + i9; - float f64 = fArr[0]; - float f65 = fArr[i10]; - float f66 = f64 + f65; - float f67 = -fArr[1]; - int i12 = i10 + 1; - float f68 = fArr[i12]; - float f69 = f67 - f68; - float f70 = f64 - f65; - float f71 = f67 + f68; - float f72 = fArr[i9]; - float f73 = fArr[i11]; - float f74 = f72 + f73; - int i13 = i9 + 1; - float f75 = fArr[i13]; - int i14 = i11 + 1; - float f76 = fArr[i14]; - float f77 = f75 + f76; - float f78 = f72 - f73; - float f79 = f75 - f76; - fArr[0] = f66 + f74; - fArr[1] = f69 - f77; - fArr[i9] = f66 - f74; - fArr[i13] = f69 + f77; - fArr[i10] = f70 + f79; - fArr[i12] = f71 + f78; - fArr[i11] = f70 - f79; - fArr[i14] = f71 - f78; - float f80 = fArr2[i7 + 1]; - float f81 = fArr2[i7 + 2]; - float f82 = fArr2[i7 + 3]; - float f83 = 1.0f; - int i15 = 2; - float f84 = 1.0f; - float f85 = 0.0f; - float f86 = 0.0f; - int i16 = 0; - while (i15 < i8 - 2) { - i16 += 4; - int i17 = i7 + i16; - float f87 = fArr2[i17]; - float f88 = (f83 + f87) * f81; - float f89 = fArr2[i17 + 1]; - float f90 = (f85 + f89) * f81; - float f91 = fArr2[i17 + 2]; - float f92 = (f84 + f91) * f82; - float f93 = fArr2[i17 + 3]; - float f94 = (f86 + f93) * f82; - int i18 = i15 + i9; - int i19 = i18 + i9; - int i20 = i19 + i9; - float f95 = fArr[i15]; - float f96 = fArr[i19]; - float f97 = f95 + f96; - int i21 = i15 + 1; - float f98 = -fArr[i21]; - int i22 = i19 + 1; - float f99 = fArr[i22]; - float f100 = f98 - f99; - float f101 = f95 - f96; - float f102 = f98 + f99; - int i23 = i15 + 2; - float f103 = fArr[i23]; - int i24 = i19 + 2; - float f104 = fArr[i24]; - float f105 = f103 + f104; - int i25 = i15 + 3; - float f106 = -fArr[i25]; - int i26 = i19 + 3; - float f107 = fArr[i26]; - float f108 = f106 - f107; - float f109 = f103 - f104; - float f110 = f106 + f107; - float f111 = fArr[i18]; - float f112 = fArr[i20]; - float f113 = f111 + f112; - int i27 = i18 + 1; - float f114 = fArr[i27]; - int i28 = i20 + 1; - float f115 = fArr[i28]; - float f116 = f114 + f115; - float f117 = f111 - f112; - float f118 = f114 - f115; - int i29 = i18 + 2; - float f119 = fArr[i29]; - int i30 = i20 + 2; - float f120 = fArr[i30]; - float f121 = f119 + f120; - int i31 = i18 + 3; - float f122 = fArr[i31]; - int i32 = i20 + 3; - float f123 = fArr[i32]; - float f124 = f122 + f123; - float f125 = f119 - f120; - float f126 = f122 - f123; - fArr[i15] = f97 + f113; - fArr[i21] = f100 - f116; - fArr[i23] = f105 + f121; - fArr[i25] = f108 - f124; - fArr[i18] = f97 - f113; - fArr[i27] = f100 + f116; - fArr[i29] = f105 - f121; - fArr[i31] = f108 + f124; - float f127 = f101 + f118; - float f128 = f102 + f117; - fArr[i19] = (f88 * f127) - (f90 * f128); - fArr[i22] = (f127 * f90) + (f128 * f88); - float f129 = f109 + f126; - float f130 = f110 + f125; - fArr[i24] = (f87 * f129) - (f89 * f130); - fArr[i26] = (f129 * f89) + (f130 * f87); - float f131 = f101 - f118; - float f132 = f102 - f117; - fArr[i20] = (f94 * f132) + (f92 * f131); - fArr[i28] = (f132 * f92) - (f131 * f94); - float f133 = f109 - f126; - float f134 = f110 - f125; - fArr[i30] = (f93 * f134) + (f91 * f133); - fArr[i32] = (f134 * f91) - (f133 * f93); - int i33 = i9 - i15; - int i34 = i33 + i9; - int i35 = i34 + i9; - int i36 = i35 + i9; - float f135 = fArr[i33]; - float f136 = fArr[i35]; - float f137 = f135 + f136; - int i37 = i33 + 1; - float f138 = -fArr[i37]; - int i38 = i35 + 1; - float f139 = fArr[i38]; - float f140 = f138 - f139; - float f141 = f135 - f136; - float f142 = f138 + f139; - int i39 = i33 - 2; - float f143 = fArr[i39]; - int i40 = i35 - 2; - float f144 = fArr[i40]; - float f145 = f143 + f144; - int i41 = i33 - 1; - float f146 = -fArr[i41]; - int i42 = i35 - 1; - float f147 = fArr[i42]; - float f148 = f146 - f147; - float f149 = f143 - f144; - float f150 = f146 + f147; - float f151 = fArr[i34]; - float f152 = fArr[i36]; - float f153 = f151 + f152; - int i43 = i34 + 1; - float f154 = fArr[i43]; - int i44 = i36 + 1; - float f155 = fArr[i44]; - float f156 = f154 + f155; - float f157 = f151 - f152; - float f158 = f154 - f155; - int i45 = i34 - 2; - float f159 = fArr[i45]; - int i46 = i36 - 2; - float f160 = fArr[i46]; - float f161 = f159 + f160; - int i47 = i34 - 1; - float f162 = fArr[i47]; - int i48 = i36 - 1; - float f163 = fArr[i48]; - float f164 = f162 + f163; - float f165 = f159 - f160; - float f166 = f162 - f163; - fArr[i33] = f137 + f153; - fArr[i37] = f140 - f156; - fArr[i39] = f145 + f161; - fArr[i41] = f148 - f164; - fArr[i34] = f137 - f153; - fArr[i43] = f140 + f156; - fArr[i45] = f145 - f161; - fArr[i47] = f148 + f164; - float f167 = f141 + f158; - float f168 = f142 + f157; - fArr[i35] = (f90 * f167) - (f88 * f168); - fArr[i38] = (f88 * f167) + (f90 * f168); - float f169 = f149 + f166; - float f170 = f150 + f165; - fArr[i40] = (f89 * f169) - (f87 * f170); - fArr[i42] = (f169 * f87) + (f170 * f89); - float f171 = f141 - f158; - float f172 = f142 - f157; - fArr[i36] = (f92 * f172) + (f94 * f171); - fArr[i44] = (f94 * f172) - (f92 * f171); - float f173 = f149 - f166; - float f174 = f150 - f165; - fArr[i46] = (f91 * f174) + (f93 * f173); - fArr[i48] = (f174 * f93) - (f173 * f91); - i15 += 4; - f86 = f93; - f83 = f87; - f85 = f89; - f84 = f91; - } - float f175 = (f83 + f80) * f81; - float f176 = (f85 + f80) * f81; - float f177 = (f84 - f80) * f82; - float f178 = (f86 - f80) * f82; - int i49 = i8 + i9; - int i50 = i49 + i9; - int i51 = i9 + i50; - int i52 = i8 - 2; - float f179 = fArr[i52]; - int i53 = i50 - 2; - float f180 = fArr[i53]; - float f181 = f179 + f180; - int i54 = i8 - 1; - float f182 = -fArr[i54]; - int i55 = i50 - 1; - float f183 = fArr[i55]; - float f184 = f182 - f183; - float f185 = f179 - f180; - float f186 = f182 + f183; - int i56 = i49 - 2; - float f187 = fArr[i56]; - int i57 = i51 - 2; - float f188 = fArr[i57]; - float f189 = f187 + f188; - int i58 = i49 - 1; - float f190 = fArr[i58]; - int i59 = i51 - 1; - float f191 = fArr[i59]; - float f192 = f190 + f191; - float f193 = f187 - f188; - float f194 = f190 - f191; - fArr[i52] = f181 + f189; - fArr[i54] = f184 - f192; - fArr[i56] = f181 - f189; - fArr[i58] = f184 + f192; - float f195 = f185 + f194; - float f196 = f186 + f193; - fArr[i53] = (f175 * f195) - (f176 * f196); - fArr[i55] = (f195 * f176) + (f196 * f175); - float f197 = f185 - f194; - float f198 = f186 - f193; - fArr[i57] = (f178 * f198) + (f177 * f197); - fArr[i59] = (f198 * f177) - (f197 * f178); - float f199 = fArr[i8]; - float f200 = fArr[i50]; - float f201 = f199 + f200; - int i60 = i8 + 1; - float f202 = -fArr[i60]; - int i61 = i50 + 1; - float f203 = fArr[i61]; - float f204 = f202 - f203; - float f205 = f199 - f200; - float f206 = f202 + f203; - float f207 = fArr[i49]; - float f208 = fArr[i51]; - float f209 = f207 + f208; - int i62 = i49 + 1; - float f210 = fArr[i62]; - int i63 = i51 + 1; - float f211 = fArr[i63]; - float f212 = f210 + f211; - float f213 = f207 - f208; - float f214 = f210 - f211; - fArr[i8] = f201 + f209; - fArr[i60] = f204 - f212; - fArr[i49] = f201 - f209; - fArr[i62] = f204 + f212; - float f215 = f205 + f214; - float f216 = f206 + f213; - fArr[i50] = (f215 - f216) * f80; - fArr[i61] = (f216 + f215) * f80; - float f217 = f205 - f214; - float f218 = f206 - f213; - float f219 = -f80; - fArr[i51] = (f217 + f218) * f219; - fArr[i63] = (f218 - f217) * f219; - int i64 = i8 + 2; - float f220 = fArr[i64]; - int i65 = i50 + 2; - float f221 = fArr[i65]; - float f222 = f220 + f221; - int i66 = i8 + 3; - float f223 = -fArr[i66]; - int i67 = i50 + 3; - float f224 = fArr[i67]; - float f225 = f223 - f224; - float f226 = f220 - f221; - float f227 = f223 + f224; - int i68 = i49 + 2; - float f228 = fArr[i68]; - int i69 = i51 + 2; - float f229 = fArr[i69]; - float f230 = f228 + f229; - int i70 = i49 + 3; - float f231 = fArr[i70]; - int i71 = i51 + 3; - float f232 = fArr[i71]; - float f233 = f231 + f232; - float f234 = f228 - f229; - float f235 = f231 - f232; - fArr[i64] = f222 + f230; - fArr[i66] = f225 - f233; - fArr[i68] = f222 - f230; - fArr[i70] = f225 + f233; - float f236 = f226 + f235; - float f237 = f227 + f234; - fArr[i65] = (f176 * f236) - (f175 * f237); - fArr[i67] = (f175 * f236) + (f176 * f237); - float f238 = f226 - f235; - float f239 = f227 - f234; - fArr[i69] = (f177 * f239) + (f178 * f238); - fArr[i71] = (f178 * f239) - (f177 * f238); - if (k3.c.c > 1 && i4 >= 8192) { - C(i4, 0, i5, fArr, fArr2); - } else if (i4 > 512) { - A(i4, 0, i5, fArr, fArr2); - } else if (i4 > 128) { - u(i4, 1, fArr, 0, i5, fArr2); - } else { - s(i4, 0, i5, fArr, fArr2); - } - int i72 = 1; - while (i6 > 8) { - i72 <<= 1; - i6 >>= 2; - } - int i73 = i4 >> 1; - int i74 = i72 * 4; - if (i6 != 8) { - for (int i75 = 0; i75 < i72; i75++) { - int i76 = i75 * 4; - for (int i77 = 0; i77 < i75; i77++) { - int i78 = (i77 * 4) + iArr[i72 + i75]; - int i79 = iArr[i72 + i77] + i76; - float f240 = fArr[i78]; - int i80 = i78 + 1; - float f241 = -fArr[i80]; - float f242 = fArr[i79]; - int i81 = i79 + 1; - float f243 = -fArr[i81]; - fArr[i78] = f242; - fArr[i80] = f243; - fArr[i79] = f240; - fArr[i81] = f241; - int i82 = i78 + i74; - int i83 = i79 + i74; - float f244 = fArr[i82]; - int i84 = i82 + 1; - float f245 = -fArr[i84]; - float f246 = fArr[i83]; - int i85 = i83 + 1; - float f247 = -fArr[i85]; - fArr[i82] = f246; - fArr[i84] = f247; - fArr[i83] = f244; - fArr[i85] = f245; - int i86 = i82 + i73; - int i87 = i83 + 2; - float f248 = fArr[i86]; - int i88 = i86 + 1; - float f249 = -fArr[i88]; - float f250 = fArr[i87]; - int i89 = i83 + 3; - float f251 = -fArr[i89]; - fArr[i86] = f250; - fArr[i88] = f251; - fArr[i87] = f248; - fArr[i89] = f249; - int i90 = i86 - i74; - int i91 = i87 - i74; - float f252 = fArr[i90]; - int i92 = i90 + 1; - float f253 = -fArr[i92]; - float f254 = fArr[i91]; - int i93 = i91 + 1; - float f255 = -fArr[i93]; - fArr[i90] = f254; - fArr[i92] = f255; - fArr[i91] = f252; - fArr[i93] = f253; - int i94 = i90 + 2; - int i95 = i91 + i73; - float f256 = fArr[i94]; - int i96 = i90 + 3; - float f257 = -fArr[i96]; - float f258 = fArr[i95]; - int i97 = i95 + 1; - float f259 = -fArr[i97]; - fArr[i94] = f258; - fArr[i96] = f259; - fArr[i95] = f256; - fArr[i97] = f257; - int i98 = i94 + i74; - int i99 = i95 + i74; - float f260 = fArr[i98]; - int i100 = i98 + 1; - float f261 = -fArr[i100]; - float f262 = fArr[i99]; - int i101 = i99 + 1; - float f263 = -fArr[i101]; - fArr[i98] = f262; - fArr[i100] = f263; - fArr[i99] = f260; - fArr[i101] = f261; - int i102 = i98 - i73; - int i103 = i99 - 2; - float f264 = fArr[i102]; - int i104 = i102 + 1; - float f265 = -fArr[i104]; - float f266 = fArr[i103]; - int i105 = i99 - 1; - float f267 = -fArr[i105]; - fArr[i102] = f266; - fArr[i104] = f267; - fArr[i103] = f264; - fArr[i105] = f265; - int i106 = i102 - i74; - int i107 = i103 - i74; - float f268 = fArr[i106]; - int i108 = i106 + 1; - float f269 = -fArr[i108]; - float f270 = fArr[i107]; - int i109 = i107 + 1; - float f271 = -fArr[i109]; - fArr[i106] = f270; - fArr[i108] = f271; - fArr[i107] = f268; - fArr[i109] = f269; - } - int i110 = i76 + iArr[i72 + i75]; - int i111 = i110 + 2; - int i112 = i110 + i73; - int i113 = i110 + 1; - fArr[i113] = -fArr[i113]; - float f272 = fArr[i111]; - int i114 = i110 + 3; - float f273 = -fArr[i114]; - float f274 = fArr[i112]; - int i115 = i112 + 1; - float f275 = -fArr[i115]; - fArr[i111] = f274; - fArr[i114] = f275; - fArr[i112] = f272; - fArr[i115] = f273; - int i116 = i112 + 3; - fArr[i116] = -fArr[i116]; - int i117 = i111 + i74; - int i118 = i112 + i74; - int i119 = i117 - 1; - fArr[i119] = -fArr[i119]; - float f276 = fArr[i117]; - int i120 = i117 + 1; - float f277 = -fArr[i120]; - float f278 = fArr[i118]; - int i121 = i118 + 1; - float f279 = -fArr[i121]; - fArr[i117] = f278; - fArr[i120] = f279; - fArr[i118] = f276; - fArr[i121] = f277; - int i122 = i118 + 3; - fArr[i122] = -fArr[i122]; - } - return; - } - for (int i123 = 0; i123 < i72; i123++) { - int i124 = i123 * 4; - for (int i125 = 0; i125 < i123; i125++) { - int i126 = (iArr[i72 + i123] * 2) + (i125 * 4); - int i127 = (iArr[i72 + i125] * 2) + i124; - float f280 = fArr[i126]; - int i128 = i126 + 1; - float f281 = -fArr[i128]; - float f282 = fArr[i127]; - int i129 = i127 + 1; - float f283 = -fArr[i129]; - fArr[i126] = f282; - fArr[i128] = f283; - fArr[i127] = f280; - fArr[i129] = f281; - int i130 = i126 + i74; - int i131 = i72 * 8; - int i132 = i127 + i131; - float f284 = fArr[i130]; - int i133 = i130 + 1; - float f285 = -fArr[i133]; - float f286 = fArr[i132]; - int i134 = i132 + 1; - float f287 = -fArr[i134]; - fArr[i130] = f286; - fArr[i133] = f287; - fArr[i132] = f284; - fArr[i134] = f285; - int i135 = i130 + i74; - int i136 = i132 - i74; - float f288 = fArr[i135]; - int i137 = i135 + 1; - float f289 = -fArr[i137]; - float f290 = fArr[i136]; - int i138 = i136 + 1; - float f291 = -fArr[i138]; - fArr[i135] = f290; - fArr[i137] = f291; - fArr[i136] = f288; - fArr[i138] = f289; - int i139 = i135 + i74; - int i140 = i136 + i131; - float f292 = fArr[i139]; - int i141 = i139 + 1; - float f293 = -fArr[i141]; - float f294 = fArr[i140]; - int i142 = i140 + 1; - float f295 = -fArr[i142]; - fArr[i139] = f294; - fArr[i141] = f295; - fArr[i140] = f292; - fArr[i142] = f293; - int i143 = i139 + i73; - int i144 = i140 + 2; - float f296 = fArr[i143]; - int i145 = i143 + 1; - float f297 = -fArr[i145]; - float f298 = fArr[i144]; - int i146 = i140 + 3; - float f299 = -fArr[i146]; - fArr[i143] = f298; - fArr[i145] = f299; - fArr[i144] = f296; - fArr[i146] = f297; - int i147 = i143 - i74; - int i148 = i144 - i131; - float f300 = fArr[i147]; - int i149 = i147 + 1; - float f301 = -fArr[i149]; - float f302 = fArr[i148]; - int i150 = i148 + 1; - float f303 = -fArr[i150]; - fArr[i147] = f302; - fArr[i149] = f303; - fArr[i148] = f300; - fArr[i150] = f301; - int i151 = i147 - i74; - int i152 = i148 + i74; - float f304 = fArr[i151]; - int i153 = i151 + 1; - float f305 = -fArr[i153]; - float f306 = fArr[i152]; - int i154 = i152 + 1; - float f307 = -fArr[i154]; - fArr[i151] = f306; - fArr[i153] = f307; - fArr[i152] = f304; - fArr[i154] = f305; - int i155 = i151 - i74; - int i156 = i152 - i131; - float f308 = fArr[i155]; - int i157 = i155 + 1; - float f309 = -fArr[i157]; - float f310 = fArr[i156]; - int i158 = i156 + 1; - float f311 = -fArr[i158]; - fArr[i155] = f310; - fArr[i157] = f311; - fArr[i156] = f308; - fArr[i158] = f309; - int i159 = i155 + 2; - int i160 = i156 + i73; - float f312 = fArr[i159]; - int i161 = i155 + 3; - float f313 = -fArr[i161]; - float f314 = fArr[i160]; - int i162 = i160 + 1; - float f315 = -fArr[i162]; - fArr[i159] = f314; - fArr[i161] = f315; - fArr[i160] = f312; - fArr[i162] = f313; - int i163 = i159 + i74; - int i164 = i160 + i131; - float f316 = fArr[i163]; - int i165 = i163 + 1; - float f317 = -fArr[i165]; - float f318 = fArr[i164]; - int i166 = i164 + 1; - float f319 = -fArr[i166]; - fArr[i163] = f318; - fArr[i165] = f319; - fArr[i164] = f316; - fArr[i166] = f317; - int i167 = i163 + i74; - int i168 = i164 - i74; - float f320 = fArr[i167]; - int i169 = i167 + 1; - float f321 = -fArr[i169]; - float f322 = fArr[i168]; - int i170 = i168 + 1; - float f323 = -fArr[i170]; - fArr[i167] = f322; - fArr[i169] = f323; - fArr[i168] = f320; - fArr[i170] = f321; - int i171 = i167 + i74; - int i172 = i168 + i131; - float f324 = fArr[i171]; - int i173 = i171 + 1; - float f325 = -fArr[i173]; - float f326 = fArr[i172]; - int i174 = i172 + 1; - float f327 = -fArr[i174]; - fArr[i171] = f326; - fArr[i173] = f327; - fArr[i172] = f324; - fArr[i174] = f325; - int i175 = i171 - i73; - int i176 = i172 - 2; - float f328 = fArr[i175]; - int i177 = i175 + 1; - float f329 = -fArr[i177]; - float f330 = fArr[i176]; - int i178 = i172 - 1; - float f331 = -fArr[i178]; - fArr[i175] = f330; - fArr[i177] = f331; - fArr[i176] = f328; - fArr[i178] = f329; - int i179 = i175 - i74; - int i180 = i176 - i131; - float f332 = fArr[i179]; - int i181 = i179 + 1; - float f333 = -fArr[i181]; - float f334 = fArr[i180]; - int i182 = i180 + 1; - float f335 = -fArr[i182]; - fArr[i179] = f334; - fArr[i181] = f335; - fArr[i180] = f332; - fArr[i182] = f333; - int i183 = i179 - i74; - int i184 = i180 + i74; - float f336 = fArr[i183]; - int i185 = i183 + 1; - float f337 = -fArr[i185]; - float f338 = fArr[i184]; - int i186 = i184 + 1; - float f339 = -fArr[i186]; - fArr[i183] = f338; - fArr[i185] = f339; - fArr[i184] = f336; - fArr[i186] = f337; - int i187 = i183 - i74; - int i188 = i184 - i131; - float f340 = fArr[i187]; - int i189 = i187 + 1; - float f341 = -fArr[i189]; - float f342 = fArr[i188]; - int i190 = i188 + 1; - float f343 = -fArr[i190]; - fArr[i187] = f342; - fArr[i189] = f343; - fArr[i188] = f340; - fArr[i190] = f341; - } - int i191 = (iArr[i72 + i123] * 2) + i124; - int i192 = i191 + 2; - int i193 = i191 + i73; - int i194 = i191 + 1; - fArr[i194] = -fArr[i194]; - float f344 = fArr[i192]; - int i195 = i191 + 3; - float f345 = -fArr[i195]; - float f346 = fArr[i193]; - int i196 = i193 + 1; - float f347 = -fArr[i196]; - fArr[i192] = f346; - fArr[i195] = f347; - fArr[i193] = f344; - fArr[i196] = f345; - int i197 = i193 + 3; - fArr[i197] = -fArr[i197]; - int i198 = i192 + i74; - int i199 = i72 * 8; - int i200 = i193 + i199; - float f348 = fArr[i198]; - int i201 = i198 + 1; - float f349 = -fArr[i201]; - float f350 = fArr[i200]; - int i202 = i200 + 1; - float f351 = -fArr[i202]; - fArr[i198] = f350; - fArr[i201] = f351; - fArr[i200] = f348; - fArr[i202] = f349; - int i203 = i198 + i74; - int i204 = i200 - i74; - float f352 = fArr[i203]; - int i205 = i203 + 1; - float f353 = -fArr[i205]; - float f354 = fArr[i204]; - int i206 = i204 + 1; - float f355 = -fArr[i206]; - fArr[i203] = f354; - fArr[i205] = f355; - fArr[i204] = f352; - fArr[i206] = f353; - int i207 = i203 - 2; - int i208 = i204 - i73; - float f356 = fArr[i207]; - int i209 = i203 - 1; - float f357 = -fArr[i209]; - float f358 = fArr[i208]; - int i210 = i208 + 1; - float f359 = -fArr[i210]; - fArr[i207] = f358; - fArr[i209] = f359; - fArr[i208] = f356; - fArr[i210] = f357; - int i211 = i73 + 2; - int i212 = i207 + i211; - int i213 = i208 + i211; - float f360 = fArr[i212]; - int i214 = i212 + 1; - float f361 = -fArr[i214]; - float f362 = fArr[i213]; - int i215 = i213 + 1; - float f363 = -fArr[i215]; - fArr[i212] = f362; - fArr[i214] = f363; - fArr[i213] = f360; - fArr[i215] = f361; - int i216 = i212 - (i73 - i74); - int i217 = (i199 - 2) + i213; - int i218 = i216 - 1; - fArr[i218] = -fArr[i218]; - float f364 = fArr[i216]; - int i219 = i216 + 1; - float f365 = -fArr[i219]; - float f366 = fArr[i217]; - int i220 = i217 + 1; - float f367 = -fArr[i220]; - fArr[i216] = f366; - fArr[i219] = f367; - fArr[i217] = f364; - fArr[i220] = f365; - int i221 = i217 + 3; - fArr[i221] = -fArr[i221]; - } - } - - public static void h(long j4, d dVar, s sVar, long j5, d dVar2) { - d dVar3; - d dVar4 = dVar2; - if (j4 <= 8) { - if (j4 != 8) { - if (j4 == 4) { - G(dVar, 0L); - return; - } - return; - } - float b4 = dVar.b(0L) + dVar.b(4L); - float b5 = dVar.b(5L) + dVar.b(1L); - float b6 = dVar.b(0L) - dVar.b(4L); - float b7 = dVar.b(1L) - dVar.b(5L); - float b8 = dVar.b(2L) + dVar.b(6L); - float b9 = dVar.b(7L) + dVar.b(3L); - float b10 = dVar.b(2L) - dVar.b(6L); - float b11 = dVar.b(3L) - dVar.b(7L); - dVar.c(1L, AbstractC1518b.j(b4, b8, dVar, 0L, b5, b9)); - dVar.c(3L, AbstractC1518b.m(b6, b11, dVar, 2L, b7, b10)); - dVar.c(5L, AbstractC1518b.l(b4, b8, dVar, 4L, b5, b9)); - dVar.c(7L, AbstractC1518b.a(b6, b11, dVar, 6L, b7, b10)); - return; - } - if (j4 <= 32) { - if (j4 == 32) { - m(dVar, 0L, dVar2, j5 - 8); - float b12 = dVar.b(2L); - float b13 = dVar.b(3L); - float b14 = dVar.b(4L); - float b15 = dVar.b(5L); - float b16 = dVar.b(6L); - float b17 = dVar.b(7L); - float b18 = dVar.b(8L); - float b19 = dVar.b(9L); - float b20 = dVar.b(10L); - float b21 = dVar.b(11L); - float b22 = dVar.b(12L); - float b23 = dVar.b(13L); - float b24 = dVar.b(14L); - float b25 = dVar.b(15L); - float b26 = dVar.b(16L); - float b27 = dVar.b(17L); - float b28 = dVar.b(18L); - float b29 = dVar.b(19L); - float b30 = dVar.b(20L); - float b31 = dVar.b(21L); - float b32 = dVar.b(22L); - float b33 = dVar.b(23L); - float b34 = dVar.b(24L); - float b35 = dVar.b(25L); - float b36 = dVar.b(26L); - float b37 = dVar.b(27L); - float b38 = dVar.b(28L); - float b39 = dVar.b(29L); - float b40 = dVar.b(30L); - float b41 = dVar.b(31L); - dVar.c(2L, b40); - dVar.c(3L, b41); - dVar.c(4L, b24); - dVar.c(5L, b25); - dVar.c(6L, b32); - dVar.c(7L, b33); - dVar.c(8L, b16); - dVar.c(9L, b17); - dVar.c(10L, b36); - dVar.c(11L, b37); - dVar.c(12L, b20); - dVar.c(13L, b21); - dVar.c(14L, b28); - dVar.c(15L, b29); - dVar.c(16L, b12); - dVar.c(17L, b13); - dVar.c(18L, b38); - dVar.c(19L, b39); - dVar.c(20L, b22); - dVar.c(21L, b23); - dVar.c(22L, b30); - dVar.c(23L, b31); - dVar.c(24L, b14); - dVar.c(25L, b15); - dVar.c(26L, b34); - dVar.c(27L, b35); - dVar.c(28L, b18); - dVar.c(29L, b19); - dVar.c(30L, b26); - dVar.c(31L, b27); - return; - } - i(dVar, 0L, dVar2, 0L); - float b42 = dVar.b(2L); - float b43 = dVar.b(3L); - float b44 = dVar.b(4L); - float b45 = dVar.b(5L); - float b46 = dVar.b(6L); - float b47 = dVar.b(7L); - float b48 = dVar.b(8L); - float b49 = dVar.b(9L); - float b50 = dVar.b(10L); - float b51 = dVar.b(11L); - float b52 = dVar.b(12L); - float b53 = dVar.b(13L); - float b54 = dVar.b(14L); - float b55 = dVar.b(15L); - dVar.c(2L, b54); - dVar.c(3L, b55); - dVar.c(4L, b46); - dVar.c(5L, b47); - dVar.c(6L, b50); - dVar.c(7L, b51); - dVar.c(8L, b42); - dVar.c(9L, b43); - dVar.c(10L, b52); - dVar.c(11L, b53); - dVar.c(12L, b44); - dVar.c(13L, b45); - dVar.c(14L, b48); - dVar.c(15L, b49); - return; - } - long j6 = j4 >> 2; - long j7 = j5 - j6; - long j8 = j4 >> 3; - long j9 = j8 * 2; - long j10 = j9 + j9; - long j11 = j10 + j9; - float b56 = dVar.b(j10) + dVar.b(0L); - long j12 = j10 + 1; - float b57 = (-dVar.b(1L)) - dVar.b(j12); - float b58 = dVar.b(0L) - dVar.b(j10); - float b59 = dVar.b(j12) + (-dVar.b(1L)); - float b60 = dVar.b(j11) + dVar.b(j9); - long j13 = j9 + 1; - long j14 = j11 + 1; - float b61 = dVar.b(j14) + dVar.b(j13); - float b62 = dVar.b(j9) - dVar.b(j11); - float b63 = dVar.b(j13) - dVar.b(j14); - long j15 = 1; - dVar.c(1L, AbstractC1518b.m(b56, b60, dVar, 0L, b57, b61)); - dVar.c(j13, AbstractC1518b.a(b56, b60, dVar, j9, b57, b61)); - dVar.c(j12, AbstractC1518b.j(b58, b63, dVar, j10, b59, b62)); - dVar.c(j14, AbstractC1518b.l(b58, b63, dVar, j11, b59, b62)); - float b64 = dVar4.b(j7 + 1); - float b65 = dVar4.b(j7 + 2); - long j16 = 3; - float b66 = dVar4.b(j7 + 3); - float f4 = 1.0f; - long j17 = 2; - long j18 = 0; - float f5 = 1.0f; - float f6 = 0.0f; - float f7 = 0.0f; - while (j17 < j8 - 2) { - j18 += 4; - long j19 = j15; - long j20 = j7 + j18; - float b67 = (dVar4.b(j20) + f4) * b65; - long j21 = j16; - long j22 = j20 + j19; - float b68 = (dVar4.b(j22) + f6) * b65; - long j23 = j20 + 2; - float b69 = (dVar4.b(j23) + f5) * b66; - long j24 = j20 + j21; - float b70 = (dVar4.b(j24) + f7) * b66; - float b71 = dVar4.b(j20); - float b72 = dVar4.b(j22); - float b73 = dVar4.b(j23); - float b74 = dVar4.b(j24); - long j25 = j17 + j9; - long j26 = j25 + j9; - long j27 = j26 + j9; - float b75 = dVar.b(j26) + dVar.b(j17); - long j28 = j17 + j19; - float f8 = b65; - long j29 = j26 + j19; - float b76 = (-dVar.b(j28)) - dVar.b(j29); - float b77 = dVar.b(j17) - dVar.b(j26); - float b78 = dVar.b(j29) + (-dVar.b(j28)); - long j30 = j17 + 2; - long j31 = j26 + 2; - float b79 = dVar.b(j31) + dVar.b(j30); - long j32 = j17 + j21; - long j33 = j17; - long j34 = j26 + j21; - float b80 = (-dVar.b(j32)) - dVar.b(j34); - float b81 = dVar.b(j30) - dVar.b(j31); - float b82 = dVar.b(j34) + (-dVar.b(j32)); - float b83 = dVar.b(j27) + dVar.b(j25); - long j35 = j25 + j19; - long j36 = j27 + j19; - float b84 = dVar.b(j36) + dVar.b(j35); - float b85 = dVar.b(j25) - dVar.b(j27); - float b86 = dVar.b(j35) - dVar.b(j36); - long j37 = j25 + 2; - long j38 = j27 + 2; - float b87 = dVar.b(j38) + dVar.b(j37); - long j39 = j25 + j21; - long j40 = j27 + j21; - float b88 = dVar.b(j40) + dVar.b(j39); - float b89 = dVar.b(j37) - dVar.b(j38); - float b90 = dVar.b(j39) - dVar.b(j40); - float f9 = b66; - dVar.c(j28, AbstractC1518b.m(b75, b83, dVar, j33, b76, b84)); - dVar.c(j32, AbstractC1518b.m(b79, b87, dVar, j30, b80, b88)); - dVar.c(j35, AbstractC1518b.a(b75, b83, dVar, j25, b76, b84)); - dVar.c(j39, AbstractC1518b.a(b79, b87, dVar, j37, b80, b88)); - float f10 = b77 + b86; - float f11 = b78 + b85; - dVar.c(j26, (b67 * f10) - (b68 * f11)); - float j41 = AbstractC1518b.j(f10 * b68, f11 * b67, dVar, j29, b81, b90); - float f12 = b82 + b89; - dVar.c(j31, (b71 * j41) - (b72 * f12)); - float m2 = AbstractC1518b.m(j41 * b72, f12 * b71, dVar, j34, b77, b86); - float f13 = b78 - b85; - dVar.c(j27, (b70 * f13) + (b69 * m2)); - float l3 = AbstractC1518b.l(f13 * b69, b70 * m2, dVar, j36, b81, b90); - float f14 = b82 - b89; - dVar.c(j38, (b74 * f14) + (b73 * l3)); - dVar.c(j40, (b73 * f14) - (b74 * l3)); - long j42 = j9 - j33; - long j43 = j42 + j9; - long j44 = j43 + j9; - long j45 = j44 + j9; - float b91 = dVar.b(j42) + dVar.b(j44); - long j46 = j42 + j19; - long j47 = j44 + j19; - float b92 = (-dVar.b(j46)) - dVar.b(j47); - float b93 = dVar.b(j42) - dVar.b(j44); - float b94 = dVar.b(j47) + (-dVar.b(j46)); - long j48 = j42 - 2; - long j49 = j44 - 2; - float b95 = dVar.b(j49) + dVar.b(j48); - long j50 = j42 - j19; - long j51 = j44 - j19; - float b96 = (-dVar.b(j50)) - dVar.b(j51); - float b97 = dVar.b(j48) - dVar.b(j49); - float b98 = dVar.b(j51) + (-dVar.b(j50)); - float b99 = dVar.b(j45) + dVar.b(j43); - long j52 = j43 + j19; - long j53 = j45 + j19; - float b100 = dVar.b(j53) + dVar.b(j52); - float b101 = dVar.b(j43) - dVar.b(j45); - float b102 = dVar.b(j52) - dVar.b(j53); - long j54 = j43 - 2; - long j55 = j45 - 2; - float b103 = dVar.b(j55) + dVar.b(j54); - long j56 = j43 - j19; - long j57 = j45 - j19; - float b104 = dVar.b(j57) + dVar.b(j56); - float b105 = dVar.b(j54) - dVar.b(j55); - float b106 = dVar.b(j56) - dVar.b(j57); - dVar.c(j46, AbstractC1518b.m(b91, b99, dVar, j42, b92, b100)); - dVar.c(j50, AbstractC1518b.m(b95, b103, dVar, j48, b96, b104)); - dVar.c(j52, AbstractC1518b.a(b91, b99, dVar, j43, b92, b100)); - dVar.c(j56, AbstractC1518b.a(b95, b103, dVar, j54, b96, b104)); - float f15 = b93 + b102; - float f16 = b94 + b101; - dVar.c(j44, (b68 * f15) - (b67 * f16)); - float j58 = AbstractC1518b.j(f15 * b67, f16 * b68, dVar, j47, b97, b106); - float f17 = b98 + b105; - dVar.c(j49, (b72 * j58) - (b71 * f17)); - float m3 = AbstractC1518b.m(j58 * b71, f17 * b72, dVar, j51, b93, b102); - float f18 = b94 - b101; - dVar.c(j45, (b69 * f18) + (b70 * m3)); - float l4 = AbstractC1518b.l(b70 * f18, b69 * m3, dVar, j53, b97, b106); - float f19 = b98 - b105; - dVar.c(j55, (b73 * f19) + (b74 * l4)); - dVar.c(j57, (b74 * f19) - (b73 * l4)); - j17 = j33 + 4; - dVar4 = dVar2; - j15 = j19; - f4 = b71; - f6 = b72; - j16 = j21; - f5 = b73; - b66 = f9; - f7 = b74; - b65 = f8; - b64 = b64; - } - float f20 = b64; - float f21 = b65; - long j59 = j15; - long j60 = j16; - float f22 = b66; - float f23 = (f4 + f20) * f21; - float f24 = (f6 + f20) * f21; - float f25 = (f5 - f20) * f22; - float f26 = (f7 - f20) * f22; - long j61 = j8 + j9; - long j62 = j61 + j9; - long j63 = j62 + j9; - long j64 = j8 - 2; - long j65 = j62 - 2; - float b107 = dVar.b(j65) + dVar.b(j64); - long j66 = j8 - j59; - long j67 = j62 - j59; - float b108 = (-dVar.b(j66)) - dVar.b(j67); - float b109 = dVar.b(j64) - dVar.b(j65); - float b110 = dVar.b(j67) + (-dVar.b(j66)); - long j68 = j61 - 2; - long j69 = j63 - 2; - float b111 = dVar.b(j69) + dVar.b(j68); - long j70 = j61 - j59; - long j71 = j63 - j59; - float b112 = dVar.b(j71) + dVar.b(j70); - float b113 = dVar.b(j68) - dVar.b(j69); - float b114 = dVar.b(j70) - dVar.b(j71); - dVar.c(j66, AbstractC1518b.m(b107, b111, dVar, j64, b108, b112)); - dVar.c(j70, AbstractC1518b.a(b107, b111, dVar, j68, b108, b112)); - float f27 = b109 + b114; - float f28 = b110 + b113; - dVar.c(j65, (f23 * f27) - (f24 * f28)); - float m4 = AbstractC1518b.m(f27 * f24, f28 * f23, dVar, j67, b109, b114); - float f29 = b110 - b113; - dVar.c(j69, (f26 * f29) + (f25 * m4)); - dVar.c(j71, (f25 * f29) - (f26 * m4)); - float b115 = dVar.b(j8) + dVar.b(j62); - long j72 = j8 + j59; - long j73 = j62 + j59; - float b116 = (-dVar.b(j72)) - dVar.b(j73); - float b117 = dVar.b(j8) - dVar.b(j62); - float b118 = dVar.b(j73) + (-dVar.b(j72)); - float b119 = dVar.b(j61) + dVar.b(j63); - long j74 = j61 + j59; - long j75 = j63 + j59; - float b120 = dVar.b(j75) + dVar.b(j74); - float b121 = dVar.b(j61) - dVar.b(j63); - float b122 = dVar.b(j74) - dVar.b(j75); - dVar.c(j72, AbstractC1518b.m(b115, b119, dVar, j8, b116, b120)); - dVar.c(j74, AbstractC1518b.a(b115, b119, dVar, j61, b116, b120)); - float f30 = b117 + b122; - float f31 = b118 + b121; - dVar.c(j62, (f30 - f31) * f20); - dVar.c(j73, (f31 + f30) * f20); - float f32 = b117 - b122; - float f33 = b118 - b121; - float f34 = -f20; - dVar.c(j63, (f32 + f33) * f34); - dVar.c(j75, (f33 - f32) * f34); - long j76 = j8 + 2; - long j77 = j62 + 2; - float b123 = dVar.b(j76) + dVar.b(j77); - long j78 = j8 + j60; - long j79 = j62 + j60; - float b124 = (-dVar.b(j78)) - dVar.b(j79); - float b125 = dVar.b(j76) - dVar.b(j77); - float b126 = dVar.b(j79) + (-dVar.b(j78)); - long j80 = j61 + 2; - long j81 = j63 + 2; - float b127 = dVar.b(j81) + dVar.b(j80); - long j82 = j61 + j60; - long j83 = j63 + j60; - float b128 = dVar.b(j83) + dVar.b(j82); - float b129 = dVar.b(j80) - dVar.b(j81); - float b130 = dVar.b(j82) - dVar.b(j83); - dVar.c(j78, AbstractC1518b.m(b123, b127, dVar, j76, b124, b128)); - dVar.c(j82, AbstractC1518b.a(b123, b127, dVar, j80, b124, b128)); - float f35 = b125 + b130; - float f36 = b126 + b129; - dVar.c(j77, (f24 * f35) - (f23 * f36)); - float m5 = AbstractC1518b.m(f35 * f23, f36 * f24, dVar, j79, b125, b130); - float f37 = b126 - b129; - dVar.c(j81, (f25 * f37) + (f26 * m5)); - dVar.c(j83, (f26 * f37) - (f25 * m5)); - if (k3.c.c > 1 && j4 >= 8192) { - D(j4, 0L, j5, dVar, dVar2); - } else if (j4 > 512) { - B(j4, 0L, j5, dVar, dVar2); - } else if (j4 > 128) { - v(j4, 1L, 0L, j5, dVar, dVar2); - } else { - t(j4, 0L, j5, dVar, dVar2); - dVar3 = dVar; - long j84 = j59; - while (j6 > 8) { - j84 <<= 1; - j6 >>= 2; - } - long j85 = j4 >> 1; - long j86 = j84 * 4; - if (j6 != 8) { - long j87 = 0; - while (j87 < j84) { - long j88 = j87 * 4; - long j89 = 0; - while (j89 < j87) { - long j90 = j84; - long b131 = (sVar.b(j90 + j87) * 2) + (j89 * 4); - long j91 = j85; - long b132 = (sVar.b(j90 + j89) * 2) + j88; - float b133 = dVar3.b(b131); - long j92 = j87; - long j93 = b131 + j59; - long j94 = j88; - float f38 = -dVar3.b(j93); - float b134 = dVar3.b(b132); - long j95 = j89; - long j96 = b132 + j59; - long j97 = j86; - float f39 = -dVar3.b(j96); - dVar3.c(b131, b134); - dVar3.c(j93, f39); - dVar3.c(b132, b133); - dVar3.c(j96, f38); - long j98 = b131 + j97; - long j99 = j90 * 8; - long j100 = b132 + j99; - float b135 = dVar3.b(j98); - long j101 = j98 + j59; - float f40 = -dVar3.b(j101); - float b136 = dVar3.b(j100); - long j102 = j100 + j59; - float f41 = -dVar3.b(j102); - dVar3.c(j98, b136); - dVar3.c(j101, f41); - dVar3.c(j100, b135); - dVar3.c(j102, f40); - long j103 = j98 + j97; - long j104 = j100 - j97; - float b137 = dVar3.b(j103); - long j105 = j103 + j59; - float f42 = -dVar3.b(j105); - float b138 = dVar3.b(j104); - long j106 = j104 + j59; - float f43 = -dVar3.b(j106); - dVar3.c(j103, b138); - dVar3.c(j105, f43); - dVar3.c(j104, b137); - dVar3.c(j106, f42); - long j107 = j103 + j97; - long j108 = j104 + j99; - float b139 = dVar3.b(j107); - long j109 = j107 + j59; - float f44 = -dVar3.b(j109); - float b140 = dVar3.b(j108); - long j110 = j108 + j59; - float f45 = -dVar3.b(j110); - dVar3.c(j107, b140); - dVar3.c(j109, f45); - dVar3.c(j108, b139); - dVar3.c(j110, f44); - long j111 = j107 + j91; - long j112 = j108 + 2; - float b141 = dVar3.b(j111); - long j113 = j111 + j59; - float f46 = -dVar3.b(j113); - float b142 = dVar3.b(j112); - long j114 = j108 + j60; - float f47 = -dVar3.b(j114); - dVar3.c(j111, b142); - dVar3.c(j113, f47); - dVar3.c(j112, b141); - dVar3.c(j114, f46); - long j115 = j111 - j97; - long j116 = j112 - j99; - float b143 = dVar3.b(j115); - long j117 = j115 + j59; - float f48 = -dVar3.b(j117); - float b144 = dVar3.b(j116); - long j118 = j116 + j59; - float f49 = -dVar3.b(j118); - dVar3.c(j115, b144); - dVar3.c(j117, f49); - dVar3.c(j116, b143); - dVar3.c(j118, f48); - long j119 = j115 - j97; - long j120 = j116 + j97; - float b145 = dVar3.b(j119); - long j121 = j119 + j59; - float f50 = -dVar3.b(j121); - float b146 = dVar3.b(j120); - long j122 = j120 + j59; - float f51 = -dVar3.b(j122); - dVar3.c(j119, b146); - dVar3.c(j121, f51); - dVar3.c(j120, b145); - dVar3.c(j122, f50); - long j123 = j119 - j97; - long j124 = j120 - j99; - float b147 = dVar3.b(j123); - long j125 = j123 + j59; - float f52 = -dVar3.b(j125); - float b148 = dVar3.b(j124); - long j126 = j124 + j59; - float f53 = -dVar3.b(j126); - dVar3.c(j123, b148); - dVar3.c(j125, f53); - dVar3.c(j124, b147); - dVar3.c(j126, f52); - long j127 = j123 + 2; - long j128 = j124 + j91; - float b149 = dVar3.b(j127); - long j129 = j123 + j60; - float f54 = -dVar3.b(j129); - float b150 = dVar3.b(j128); - long j130 = j128 + j59; - float f55 = -dVar3.b(j130); - dVar3.c(j127, b150); - dVar3.c(j129, f55); - dVar3.c(j128, b149); - dVar3.c(j130, f54); - long j131 = j127 + j97; - long j132 = j128 + j99; - float b151 = dVar3.b(j131); - long j133 = j131 + j59; - float f56 = -dVar3.b(j133); - float b152 = dVar3.b(j132); - long j134 = j132 + j59; - float f57 = -dVar3.b(j134); - dVar3.c(j131, b152); - dVar3.c(j133, f57); - dVar3.c(j132, b151); - dVar3.c(j134, f56); - long j135 = j131 + j97; - long j136 = j132 - j97; - float b153 = dVar3.b(j135); - long j137 = j135 + j59; - float f58 = -dVar3.b(j137); - float b154 = dVar3.b(j136); - long j138 = j136 + j59; - float f59 = -dVar3.b(j138); - dVar3.c(j135, b154); - dVar3.c(j137, f59); - dVar3.c(j136, b153); - dVar3.c(j138, f58); - long j139 = j135 + j97; - long j140 = j136 + j99; - float b155 = dVar3.b(j139); - long j141 = j139 + j59; - float f60 = -dVar3.b(j141); - float b156 = dVar3.b(j140); - long j142 = j140 + j59; - float f61 = -dVar3.b(j142); - dVar3.c(j139, b156); - dVar3.c(j141, f61); - dVar3.c(j140, b155); - dVar3.c(j142, f60); - long j143 = j139 - j91; - long j144 = j140 - 2; - float b157 = dVar3.b(j143); - long j145 = j143 + j59; - float f62 = -dVar3.b(j145); - float b158 = dVar3.b(j144); - long j146 = j140 - j59; - float f63 = -dVar3.b(j146); - dVar3.c(j143, b158); - dVar3.c(j145, f63); - dVar3.c(j144, b157); - dVar3.c(j146, f62); - long j147 = j143 - j97; - long j148 = j144 - j99; - float b159 = dVar3.b(j147); - long j149 = j147 + j59; - float f64 = -dVar3.b(j149); - float b160 = dVar3.b(j148); - long j150 = j148 + j59; - float f65 = -dVar3.b(j150); - dVar3.c(j147, b160); - dVar3.c(j149, f65); - dVar3.c(j148, b159); - dVar3.c(j150, f64); - long j151 = j147 - j97; - long j152 = j148 + j97; - float b161 = dVar3.b(j151); - long j153 = j151 + j59; - float f66 = -dVar3.b(j153); - float b162 = dVar3.b(j152); - long j154 = j152 + j59; - float f67 = -dVar3.b(j154); - dVar3.c(j151, b162); - dVar3.c(j153, f67); - dVar3.c(j152, b161); - dVar3.c(j154, f66); - long j155 = j151 - j97; - long j156 = j152 - j99; - float b163 = dVar3.b(j155); - long j157 = j155 + j59; - float f68 = -dVar3.b(j157); - float b164 = dVar3.b(j156); - long j158 = j156 + j59; - float f69 = -dVar3.b(j158); - dVar3.c(j155, b164); - dVar3.c(j157, f69); - dVar3.c(j156, b163); - dVar3.c(j158, f68); - j89 = j95 + j59; - j85 = j91; - j84 = j90; - j87 = j92; - j88 = j94; - j86 = j97; - } - long j159 = j84; - long j160 = j85; - long j161 = j87; - long j162 = j86; - long b165 = (sVar.b(j159 + j161) * 2) + j88; - long j163 = b165 + 2; - long j164 = b165 + j160; - long j165 = b165 + j59; - dVar3.c(j165, -dVar3.b(j165)); - float b166 = dVar3.b(j163); - long j166 = b165 + j60; - float f70 = -dVar3.b(j166); - float b167 = dVar3.b(j164); - long j167 = j164 + j59; - float f71 = -dVar3.b(j167); - dVar3.c(j163, b167); - dVar3.c(j166, f71); - dVar3.c(j164, b166); - dVar3.c(j167, f70); - long j168 = j164 + j60; - dVar3.c(j168, -dVar3.b(j168)); - long j169 = j163 + j162; - long j170 = j159 * 8; - long j171 = j164 + j170; - float b168 = dVar3.b(j169); - long j172 = j169 + j59; - float f72 = -dVar3.b(j172); - float b169 = dVar3.b(j171); - long j173 = j171 + j59; - float f73 = -dVar3.b(j173); - dVar3.c(j169, b169); - dVar3.c(j172, f73); - dVar3.c(j171, b168); - dVar3.c(j173, f72); - long j174 = j169 + j162; - long j175 = j171 - j162; - float b170 = dVar3.b(j174); - long j176 = j174 + j59; - float f74 = -dVar3.b(j176); - float b171 = dVar3.b(j175); - long j177 = j175 + j59; - float f75 = -dVar3.b(j177); - dVar3.c(j174, b171); - dVar3.c(j176, f75); - dVar3.c(j175, b170); - dVar3.c(j177, f74); - long j178 = j174 - 2; - long j179 = j175 - j160; - float b172 = dVar3.b(j178); - long j180 = j174 - j59; - float f76 = -dVar3.b(j180); - float b173 = dVar3.b(j179); - long j181 = j179 + j59; - float f77 = -dVar3.b(j181); - dVar3.c(j178, b173); - dVar3.c(j180, f77); - dVar3.c(j179, b172); - dVar3.c(j181, f76); - long j182 = j160 + 2; - long j183 = j178 + j182; - long j184 = j179 + j182; - float b174 = dVar3.b(j183); - long j185 = j183 + j59; - float f78 = -dVar3.b(j185); - float b175 = dVar3.b(j184); - long j186 = j184 + j59; - float f79 = -dVar3.b(j186); - dVar3.c(j183, b175); - dVar3.c(j185, f79); - dVar3.c(j184, b174); - dVar3.c(j186, f78); - long j187 = j183 - (j160 - j162); - long j188 = (j170 - 2) + j184; - long j189 = j187 - j59; - dVar3.c(j189, -dVar3.b(j189)); - float b176 = dVar3.b(j187); - long j190 = j187 + j59; - float f80 = -dVar3.b(j190); - float b177 = dVar3.b(j188); - long j191 = j188 + j59; - float f81 = -dVar3.b(j191); - dVar3.c(j187, b177); - dVar3.c(j190, f81); - dVar3.c(j188, b176); - dVar3.c(j191, f80); - long j192 = j188 + j60; - dVar3.c(j192, -dVar3.b(j192)); - j87 = j161 + j59; - j85 = j160; - j84 = j159; - j86 = j162; - } - return; - } - long j193 = j84; - int i4 = 0; - while (true) { - long j194 = i4; - if (j194 >= j193) { - return; - } - long j195 = i4 * 4; - int i5 = 0; - while (i5 < i4) { - long b178 = sVar.b(j193 + j194) + (i5 * 4); - long b179 = sVar.b(j193 + i5) + j195; - float b180 = dVar3.b(b178); - long j196 = b178 + j59; - float f82 = -dVar3.b(j196); - int i6 = i4; - float b181 = dVar3.b(b179); - long j197 = j194; - long j198 = b179 + j59; - long j199 = j195; - float f83 = -dVar3.b(j198); - dVar3.c(b178, b181); - dVar3.c(j196, f83); - dVar3.c(b179, b180); - dVar3.c(j198, f82); - long j200 = b178 + j86; - long j201 = b179 + j86; - float b182 = dVar3.b(j200); - long j202 = j200 + j59; - float f84 = -dVar3.b(j202); - float b183 = dVar3.b(j201); - long j203 = j201 + j59; - float f85 = -dVar3.b(j203); - dVar3.c(j200, b183); - dVar3.c(j202, f85); - dVar3.c(j201, b182); - dVar3.c(j203, f84); - long j204 = j200 + j85; - long j205 = j201 + 2; - float b184 = dVar3.b(j204); - long j206 = j204 + j59; - float f86 = -dVar3.b(j206); - float b185 = dVar3.b(j205); - long j207 = j201 + j60; - float f87 = -dVar3.b(j207); - dVar3.c(j204, b185); - dVar3.c(j206, f87); - dVar3.c(j205, b184); - dVar3.c(j207, f86); - long j208 = j204 - j86; - long j209 = j205 - j86; - float b186 = dVar3.b(j208); - long j210 = j208 + j59; - float f88 = -dVar3.b(j210); - float b187 = dVar3.b(j209); - long j211 = j209 + j59; - float f89 = -dVar3.b(j211); - dVar3.c(j208, b187); - dVar3.c(j210, f89); - dVar3.c(j209, b186); - dVar3.c(j211, f88); - long j212 = j208 + 2; - long j213 = j209 + j85; - float b188 = dVar3.b(j212); - long j214 = j208 + j60; - float f90 = -dVar3.b(j214); - float b189 = dVar3.b(j213); - long j215 = j213 + j59; - float f91 = -dVar3.b(j215); - dVar3.c(j212, b189); - dVar3.c(j214, f91); - dVar3.c(j213, b188); - dVar3.c(j215, f90); - long j216 = j212 + j86; - long j217 = j213 + j86; - float b190 = dVar3.b(j216); - long j218 = j216 + j59; - float f92 = -dVar3.b(j218); - float b191 = dVar3.b(j217); - long j219 = j217 + j59; - float f93 = -dVar3.b(j219); - dVar3.c(j216, b191); - dVar3.c(j218, f93); - dVar3.c(j217, b190); - dVar3.c(j219, f92); - long j220 = j216 - j85; - long j221 = j217 - 2; - float b192 = dVar3.b(j220); - long j222 = j220 + j59; - float f94 = -dVar3.b(j222); - float b193 = dVar3.b(j221); - long j223 = j217 - j59; - float f95 = -dVar3.b(j223); - dVar3.c(j220, b193); - dVar3.c(j222, f95); - dVar3.c(j221, b192); - dVar3.c(j223, f94); - long j224 = j220 - j86; - long j225 = j221 - j86; - float b194 = dVar3.b(j224); - long j226 = j224 + j59; - float f96 = -dVar3.b(j226); - float b195 = dVar3.b(j225); - long j227 = j225 + j59; - float f97 = -dVar3.b(j227); - dVar3.c(j224, b195); - dVar3.c(j226, f97); - dVar3.c(j225, b194); - dVar3.c(j227, f96); - i5++; - i4 = i6; - j194 = j197; - j195 = j199; - } - int i7 = i4; - long b196 = sVar.b(j193 + j194) + j195; - long j228 = b196 + 2; - long j229 = b196 + j85; - long j230 = b196 + j59; - dVar3.c(j230, -dVar3.b(j230)); - float b197 = dVar3.b(j228); - long j231 = b196 + j60; - float f98 = -dVar3.b(j231); - float b198 = dVar3.b(j229); - long j232 = j229 + j59; - float f99 = -dVar3.b(j232); - dVar3.c(j228, b198); - dVar3.c(j231, f99); - dVar3.c(j229, b197); - dVar3.c(j232, f98); - long j233 = j229 + j60; - dVar3.c(j233, -dVar3.b(j233)); - long j234 = j228 + j86; - long j235 = j229 + j86; - long j236 = j234 - j59; - dVar3.c(j236, -dVar3.b(j236)); - float b199 = dVar3.b(j234); - long j237 = j234 + j59; - float f100 = -dVar3.b(j237); - float b200 = dVar3.b(j235); - long j238 = j235 + j59; - float f101 = -dVar3.b(j238); - dVar3.c(j234, b200); - dVar3.c(j237, f101); - dVar3.c(j235, b199); - dVar3.c(j238, f100); - long j239 = j235 + j60; - dVar3.c(j239, -dVar3.b(j239)); - i4 = i7 + 1; - } - } - dVar3 = dVar; - long j842 = j59; - while (j6 > 8) { - } - long j852 = j4 >> 1; - long j862 = j842 * 4; - if (j6 != 8) { - } - } - - public static void i(d dVar, long j4, d dVar2, long j5) { - float b4 = dVar2.b(j5 + 1); - long j6 = j4 + 8; - float b5 = dVar.b(j6) + dVar.b(j4); - long j7 = j4 + 1; - long j8 = j4 + 9; - float b6 = dVar.b(j8) + dVar.b(j7); - float b7 = dVar.b(j4) - dVar.b(j6); - float b8 = dVar.b(j7) - dVar.b(j8); - long j9 = j4 + 4; - long j10 = j4 + 12; - float b9 = dVar.b(j10) + dVar.b(j9); - long j11 = j4 + 5; - long j12 = j4 + 13; - float b10 = dVar.b(j12) + dVar.b(j11); - float b11 = dVar.b(j9) - dVar.b(j10); - float b12 = dVar.b(j11) - dVar.b(j12); - float f4 = b5 + b9; - float f5 = b6 + b10; - float f6 = b5 - b9; - float f7 = b6 - b10; - float f8 = b7 - b12; - float f9 = b8 + b11; - float f10 = b7 + b12; - float f11 = b8 - b11; - long j13 = j4 + 2; - long j14 = j4 + 10; - float b13 = dVar.b(j14) + dVar.b(j13); - long j15 = j4 + 3; - long j16 = j4 + 11; - float b14 = dVar.b(j16) + dVar.b(j15); - float b15 = dVar.b(j13) - dVar.b(j14); - float b16 = dVar.b(j15) - dVar.b(j16); - long j17 = j4 + 6; - long j18 = j4 + 14; - float b17 = dVar.b(j18) + dVar.b(j17); - long j19 = j4 + 7; - long j20 = j4 + 15; - float b18 = dVar.b(j20) + dVar.b(j19); - float b19 = dVar.b(j17) - dVar.b(j18); - float b20 = dVar.b(j19) - dVar.b(j20); - float f12 = b13 + b17; - float f13 = b14 + b18; - float f14 = b13 - b17; - float f15 = b14 - b18; - float f16 = b15 - b20; - float f17 = b16 + b19; - float f18 = b15 + b20; - float f19 = b16 - b19; - float f20 = (f16 - f17) * b4; - float f21 = (f16 + f17) * b4; - float f22 = (f18 - f19) * b4; - float f23 = (f18 + f19) * b4; - dVar.c(j8, AbstractC1518b.j(f8, f20, dVar, j6, f9, f21)); - dVar.c(j16, AbstractC1518b.l(f8, f20, dVar, j14, f9, f21)); - dVar.c(j12, AbstractC1518b.a(f10, f23, dVar, j10, f11, f22)); - dVar.c(j20, AbstractC1518b.m(f10, f23, dVar, j18, f11, f22)); - dVar.c(j7, AbstractC1518b.j(f4, f12, dVar, j4, f5, f13)); - dVar.c(j15, AbstractC1518b.l(f4, f12, dVar, j13, f5, f13)); - dVar.c(j11, AbstractC1518b.a(f6, f15, dVar, j9, f7, f14)); - dVar.c(j19, AbstractC1518b.m(f6, f15, dVar, j17, f7, f14)); - } - - public static void j(float[] fArr, int i4, float[] fArr2, int i5) { - float f4 = fArr2[i5 + 1]; - float f5 = fArr[i4]; - int i6 = i4 + 8; - float f6 = fArr[i6]; - float f7 = f5 + f6; - int i7 = i4 + 1; - float f8 = fArr[i7]; - int i8 = i4 + 9; - float f9 = fArr[i8]; - float f10 = f8 + f9; - float f11 = f5 - f6; - float f12 = f8 - f9; - int i9 = i4 + 4; - float f13 = fArr[i9]; - int i10 = i4 + 12; - float f14 = fArr[i10]; - float f15 = f13 + f14; - int i11 = i4 + 5; - float f16 = fArr[i11]; - int i12 = i4 + 13; - float f17 = fArr[i12]; - float f18 = f16 + f17; - float f19 = f13 - f14; - float f20 = f16 - f17; - float f21 = f7 + f15; - float f22 = f10 + f18; - float f23 = f7 - f15; - float f24 = f10 - f18; - float f25 = f11 - f20; - float f26 = f12 + f19; - float f27 = f11 + f20; - float f28 = f12 - f19; - int i13 = i4 + 2; - float f29 = fArr[i13]; - int i14 = i4 + 10; - float f30 = fArr[i14]; - float f31 = f29 + f30; - int i15 = i4 + 3; - float f32 = fArr[i15]; - int i16 = i4 + 11; - float f33 = fArr[i16]; - float f34 = f32 + f33; - float f35 = f29 - f30; - float f36 = f32 - f33; - int i17 = i4 + 6; - float f37 = fArr[i17]; - int i18 = i4 + 14; - float f38 = fArr[i18]; - float f39 = f37 + f38; - int i19 = i4 + 7; - float f40 = fArr[i19]; - int i20 = i4 + 15; - float f41 = fArr[i20]; - float f42 = f40 + f41; - float f43 = f37 - f38; - float f44 = f40 - f41; - float f45 = f31 + f39; - float f46 = f34 + f42; - float f47 = f31 - f39; - float f48 = f34 - f42; - float f49 = f35 - f44; - float f50 = f36 + f43; - float f51 = f35 + f44; - float f52 = f36 - f43; - float f53 = (f49 - f50) * f4; - float f54 = (f49 + f50) * f4; - float f55 = (f51 - f52) * f4; - float f56 = (f51 + f52) * f4; - fArr[i6] = f25 + f53; - fArr[i8] = f26 + f54; - fArr[i14] = f25 - f53; - fArr[i16] = f26 - f54; - fArr[i10] = f27 - f56; - fArr[i12] = f28 + f55; - fArr[i18] = f27 + f56; - fArr[i20] = f28 - f55; - fArr[i4] = f21 + f45; - fArr[i7] = f22 + f46; - fArr[i13] = f21 - f45; - fArr[i15] = f22 - f46; - fArr[i9] = f23 - f48; - fArr[i11] = f24 + f47; - fArr[i17] = f23 + f48; - fArr[i19] = f24 - f47; - } - - /* JADX WARN: Type inference failed for: r0v2, types: [F.i, android.graphics.drawable.Drawable] */ - public static void k(d dVar, long j4, d dVar2, long j5) { - float b4 = dVar2.b(j5 + 1); - float b5 = dVar2.b(j5 + 2); - float b6 = dVar2.b(j5 + 3); - long j6 = j4 + 9; - float b7 = dVar.b(j4) - dVar.b(j6); - long j7 = j4 + 1; - long j8 = j4 + 8; - float b8 = dVar.b(j8) + dVar.b(j7); - float b9 = dVar.b(j6) + dVar.b(j4); - float b10 = dVar.b(j7) - dVar.b(j8); - long j9 = j4 + 4; - long j10 = j4 + 13; - float b11 = dVar.b(j9) - dVar.b(j10); - long j11 = j4 + 5; - long j12 = j4 + 12; - float b12 = dVar.b(j12) + dVar.b(j11); - float f4 = (b11 - b12) * b4; - float f5 = (b12 + b11) * b4; - float b13 = dVar.b(j10) + dVar.b(j9); - float b14 = dVar.b(j11) - dVar.b(j12); - float f6 = (b13 - b14) * b4; - float f7 = (b14 + b13) * b4; - long j13 = j4 + 2; - long j14 = j4 + 11; - float b15 = dVar.b(j13) - dVar.b(j14); - long j15 = j4 + 3; - long j16 = j4 + 10; - float b16 = dVar.b(j16) + dVar.b(j15); - float f8 = (b5 * b15) - (b6 * b16); - float f9 = (b15 * b6) + (b16 * b5); - float b17 = dVar.b(j14) + dVar.b(j13); - float b18 = dVar.b(j15) - dVar.b(j16); - float f10 = (b6 * b17) - (b5 * b18); - float f11 = (b17 * b5) + (b18 * b6); - long j17 = j4 + 6; - long j18 = j4 + 15; - float b19 = dVar.b(j17) - dVar.b(j18); - long j19 = j4 + 7; - long j20 = j4 + 14; - float b20 = dVar.b(j20) + dVar.b(j19); - float f12 = (b6 * b19) - (b5 * b20); - float f13 = (b19 * b5) + (b20 * b6); - float b21 = dVar.b(j18) + dVar.b(j17); - float b22 = dVar.b(j19) - dVar.b(j20); - float f14 = (b5 * b21) - (b6 * b22); - float f15 = (b6 * b21) + (b22 * b5); - float f16 = b7 + f4; - float f17 = b8 + f5; - float f18 = f8 + f12; - float f19 = f9 + f13; - dVar.c(j7, AbstractC1518b.j(f16, f18, dVar, j4, f17, f19)); - dVar.c(j15, AbstractC1518b.l(f16, f18, dVar, j13, f17, f19)); - float f20 = b7 - f4; - float f21 = b8 - f5; - float f22 = f8 - f12; - float f23 = f9 - f13; - dVar.c(j11, AbstractC1518b.a(f20, f23, dVar, j9, f21, f22)); - dVar.c(j19, AbstractC1518b.m(f20, f23, dVar, j17, f21, f22)); - float f24 = b9 - f7; - float f25 = b10 + f6; - float f26 = f10 - f14; - float f27 = f11 - f15; - dVar.c(j6, AbstractC1518b.j(f24, f26, dVar, j8, f25, f27)); - dVar.c(j14, AbstractC1518b.l(f24, f26, dVar, j16, f25, f27)); - float f28 = b9 + f7; - float f29 = b10 - f6; - float f30 = f10 + f14; - float f31 = f11 + f15; - dVar.c(j10, AbstractC1518b.a(f28, f31, dVar, j12, f29, f30)); - dVar.c(j18, AbstractC1518b.m(f28, f31, dVar, j20, f29, f30)); - } - - public static void l(float[] fArr, int i4, float[] fArr2, int i5) { - float f4 = fArr2[i5 + 1]; - float f5 = fArr2[i5 + 2]; - float f6 = fArr2[i5 + 3]; - float f7 = fArr[i4]; - int i6 = i4 + 9; - float f8 = fArr[i6]; - float f9 = f7 - f8; - int i7 = i4 + 1; - float f10 = fArr[i7]; - int i8 = i4 + 8; - float f11 = fArr[i8]; - float f12 = f10 + f11; - float f13 = f7 + f8; - float f14 = f10 - f11; - int i9 = i4 + 4; - float f15 = fArr[i9]; - int i10 = i4 + 13; - float f16 = fArr[i10]; - float f17 = f15 - f16; - int i11 = i4 + 5; - float f18 = fArr[i11]; - int i12 = i4 + 12; - float f19 = fArr[i12]; - float f20 = f18 + f19; - float f21 = (f17 - f20) * f4; - float f22 = (f20 + f17) * f4; - float f23 = f15 + f16; - float f24 = f18 - f19; - float f25 = (f23 - f24) * f4; - float f26 = (f24 + f23) * f4; - int i13 = i4 + 2; - float f27 = fArr[i13]; - int i14 = i4 + 11; - float f28 = fArr[i14]; - float f29 = f27 - f28; - int i15 = i4 + 3; - float f30 = fArr[i15]; - int i16 = i4 + 10; - float f31 = fArr[i16]; - float f32 = f30 + f31; - float f33 = (f5 * f29) - (f6 * f32); - float f34 = (f29 * f6) + (f32 * f5); - float f35 = f27 + f28; - float f36 = f30 - f31; - float f37 = (f6 * f35) - (f5 * f36); - float f38 = (f35 * f5) + (f36 * f6); - int i17 = i4 + 6; - float f39 = fArr[i17]; - int i18 = i4 + 15; - float f40 = fArr[i18]; - float f41 = f39 - f40; - int i19 = i4 + 7; - float f42 = fArr[i19]; - int i20 = i4 + 14; - float f43 = fArr[i20]; - float f44 = f42 + f43; - float f45 = (f6 * f41) - (f5 * f44); - float f46 = (f41 * f5) + (f44 * f6); - float f47 = f39 + f40; - float f48 = f42 - f43; - float f49 = (f5 * f47) - (f6 * f48); - float f50 = (f6 * f47) + (f5 * f48); - float f51 = f9 + f21; - float f52 = f12 + f22; - float f53 = f33 + f45; - float f54 = f34 + f46; - fArr[i4] = f51 + f53; - fArr[i7] = f52 + f54; - fArr[i13] = f51 - f53; - fArr[i15] = f52 - f54; - float f55 = f9 - f21; - float f56 = f12 - f22; - float f57 = f33 - f45; - float f58 = f34 - f46; - fArr[i9] = f55 - f58; - fArr[i11] = f56 + f57; - fArr[i17] = f55 + f58; - fArr[i19] = f56 - f57; - float f59 = f13 - f26; - float f60 = f14 + f25; - float f61 = f37 - f49; - float f62 = f38 - f50; - fArr[i8] = f59 + f61; - fArr[i6] = f60 + f62; - fArr[i16] = f59 - f61; - fArr[i14] = f60 - f62; - float f63 = f13 + f26; - float f64 = f14 - f25; - float f65 = f37 + f49; - float f66 = f38 + f50; - fArr[i12] = f63 - f66; - fArr[i10] = f64 + f65; - fArr[i20] = f63 + f66; - fArr[i18] = f64 - f65; - } - - public static void m(d dVar, long j4, d dVar2, long j5) { - float b4 = dVar2.b(j5 + 1); - float b5 = dVar2.b(j5 + 2); - float b6 = dVar2.b(j5 + 3); - long j6 = j4 + 16; - float b7 = dVar.b(j6) + dVar.b(j4); - long j7 = j4 + 1; - long j8 = j4 + 17; - float b8 = dVar.b(j8) + dVar.b(j7); - float b9 = dVar.b(j4) - dVar.b(j6); - float b10 = dVar.b(j7) - dVar.b(j8); - long j9 = j4 + 8; - long j10 = j4 + 24; - float b11 = dVar.b(j10) + dVar.b(j9); - long j11 = j4 + 9; - long j12 = j4 + 25; - float b12 = dVar.b(j12) + dVar.b(j11); - float b13 = dVar.b(j9) - dVar.b(j10); - float b14 = dVar.b(j11) - dVar.b(j12); - float f4 = b7 + b11; - float f5 = b8 + b12; - float f6 = b7 - b11; - float f7 = b8 - b12; - float f8 = b9 - b14; - float f9 = b10 + b13; - float f10 = b9 + b14; - float f11 = b10 - b13; - long j13 = j4 + 2; - long j14 = j4 + 18; - float b15 = dVar.b(j14) + dVar.b(j13); - long j15 = j4 + 3; - long j16 = j4 + 19; - float b16 = dVar.b(j16) + dVar.b(j15); - float b17 = dVar.b(j13) - dVar.b(j14); - float b18 = dVar.b(j15) - dVar.b(j16); - long j17 = j4 + 10; - long j18 = j4 + 26; - float b19 = dVar.b(j18) + dVar.b(j17); - long j19 = j4 + 11; - long j20 = j4 + 27; - float b20 = dVar.b(j20) + dVar.b(j19); - float b21 = dVar.b(j17) - dVar.b(j18); - float b22 = dVar.b(j19) - dVar.b(j20); - float f12 = b15 + b19; - float f13 = b16 + b20; - float f14 = b15 - b19; - float f15 = b16 - b20; - float f16 = b17 - b22; - float f17 = b18 + b21; - float f18 = (b5 * f16) - (b6 * f17); - float f19 = (f16 * b6) + (f17 * b5); - float f20 = b17 + b22; - float f21 = b18 - b21; - float f22 = (b6 * f20) - (b5 * f21); - float f23 = (f20 * b5) + (f21 * b6); - long j21 = j4 + 4; - long j22 = j4 + 20; - float b23 = dVar.b(j22) + dVar.b(j21); - long j23 = j4 + 5; - long j24 = j4 + 21; - float b24 = dVar.b(j24) + dVar.b(j23); - float b25 = dVar.b(j21) - dVar.b(j22); - float b26 = dVar.b(j23) - dVar.b(j24); - long j25 = j4 + 12; - long j26 = j4 + 28; - float b27 = dVar.b(j26) + dVar.b(j25); - long j27 = j4 + 13; - long j28 = j4 + 29; - float b28 = dVar.b(j28) + dVar.b(j27); - float b29 = dVar.b(j25) - dVar.b(j26); - float b30 = dVar.b(j27) - dVar.b(j28); - float f24 = b23 + b27; - float f25 = b24 + b28; - float f26 = b23 - b27; - float f27 = b24 - b28; - float f28 = b25 - b30; - float f29 = b26 + b29; - float f30 = (f28 - f29) * b4; - float f31 = (f29 + f28) * b4; - float f32 = b25 + b30; - float f33 = b26 - b29; - float f34 = (f32 + f33) * b4; - float f35 = (f33 - f32) * b4; - long j29 = j4 + 6; - long j30 = j4 + 22; - float b31 = dVar.b(j30) + dVar.b(j29); - long j31 = j4 + 7; - long j32 = j4 + 23; - float b32 = dVar.b(j32) + dVar.b(j31); - float b33 = dVar.b(j29) - dVar.b(j30); - float b34 = dVar.b(j31) - dVar.b(j32); - long j33 = j4 + 14; - long j34 = j4 + 30; - float b35 = dVar.b(j34) + dVar.b(j33); - long j35 = j4 + 15; - long j36 = j4 + 31; - float b36 = dVar.b(j36) + dVar.b(j35); - float b37 = dVar.b(j33) - dVar.b(j34); - float b38 = dVar.b(j35) - dVar.b(j36); - float f36 = b31 + b35; - float f37 = b32 + b36; - float f38 = b31 - b35; - float f39 = b32 - b36; - float f40 = b33 - b38; - float f41 = b34 + b37; - float f42 = (b6 * f40) - (b5 * f41); - float f43 = (f40 * b5) + (f41 * b6); - float f44 = b33 + b38; - float f45 = b34 - b37; - float f46 = (b5 * f44) - (b6 * f45); - float f47 = (b6 * f44) + (b5 * f45); - float f48 = f10 - f34; - float f49 = f11 - f35; - float f50 = f10 + f34; - float f51 = f11 + f35; - float f52 = f22 - f46; - float f53 = f23 - f47; - float f54 = f22 + f46; - float f55 = f23 + f47; - dVar.c(j12, AbstractC1518b.j(f48, f52, dVar, j10, f49, f53)); - dVar.c(j20, AbstractC1518b.l(f48, f52, dVar, j18, f49, f53)); - dVar.c(j28, AbstractC1518b.a(f50, f55, dVar, j26, f51, f54)); - dVar.c(j36, AbstractC1518b.m(f50, f55, dVar, j34, f51, f54)); - float f56 = f8 + f30; - float f57 = f9 + f31; - float f58 = f8 - f30; - float f59 = f9 - f31; - float f60 = f18 + f42; - float f61 = f19 + f43; - float f62 = f18 - f42; - float f63 = f19 - f43; - dVar.c(j8, AbstractC1518b.j(f56, f60, dVar, j6, f57, f61)); - dVar.c(j16, AbstractC1518b.l(f56, f60, dVar, j14, f57, f61)); - dVar.c(j24, AbstractC1518b.a(f58, f63, dVar, j22, f59, f62)); - dVar.c(j32, AbstractC1518b.m(f58, f63, dVar, j30, f59, f62)); - float f64 = f14 - f39; - float f65 = f15 + f38; - float f66 = (f64 - f65) * b4; - float f67 = (f65 + f64) * b4; - float f68 = f14 + f39; - float f69 = f15 - f38; - float f70 = (f68 - f69) * b4; - float f71 = (f69 + f68) * b4; - float f72 = f6 - f27; - float f73 = f7 + f26; - float f74 = f6 + f27; - float f75 = f7 - f26; - dVar.c(j11, AbstractC1518b.j(f72, f66, dVar, j9, f73, f67)); - dVar.c(j19, AbstractC1518b.l(f72, f66, dVar, j17, f73, f67)); - dVar.c(j27, AbstractC1518b.a(f74, f71, dVar, j25, f75, f70)); - dVar.c(j35, AbstractC1518b.m(f74, f71, dVar, j33, f75, f70)); - float f76 = f4 + f24; - float f77 = f5 + f25; - float f78 = f4 - f24; - float f79 = f5 - f25; - float f80 = f12 + f36; - float f81 = f13 + f37; - float f82 = f12 - f36; - float f83 = f13 - f37; - dVar.c(j7, AbstractC1518b.j(f76, f80, dVar, j4, f77, f81)); - dVar.c(j15, AbstractC1518b.l(f76, f80, dVar, j13, f77, f81)); - dVar.c(j23, AbstractC1518b.a(f78, f83, dVar, j21, f79, f82)); - dVar.c(j31, AbstractC1518b.m(f78, f83, dVar, j29, f79, f82)); - } - - public static void n(float[] fArr, int i4, float[] fArr2, int i5) { - float f4 = fArr2[i5 + 1]; - float f5 = fArr2[i5 + 2]; - float f6 = fArr2[i5 + 3]; - float f7 = fArr[i4]; - int i6 = i4 + 16; - float f8 = fArr[i6]; - float f9 = f7 + f8; - int i7 = i4 + 1; - float f10 = fArr[i7]; - int i8 = i4 + 17; - float f11 = fArr[i8]; - float f12 = f10 + f11; - float f13 = f7 - f8; - float f14 = f10 - f11; - int i9 = i4 + 8; - float f15 = fArr[i9]; - int i10 = i4 + 24; - float f16 = fArr[i10]; - float f17 = f15 + f16; - int i11 = i4 + 9; - float f18 = fArr[i11]; - int i12 = i4 + 25; - float f19 = fArr[i12]; - float f20 = f18 + f19; - float f21 = f15 - f16; - float f22 = f18 - f19; - float f23 = f9 + f17; - float f24 = f12 + f20; - float f25 = f9 - f17; - float f26 = f12 - f20; - float f27 = f13 - f22; - float f28 = f14 + f21; - float f29 = f13 + f22; - float f30 = f14 - f21; - int i13 = i4 + 2; - float f31 = fArr[i13]; - int i14 = i4 + 18; - float f32 = fArr[i14]; - float f33 = f31 + f32; - int i15 = i4 + 3; - float f34 = fArr[i15]; - int i16 = i4 + 19; - float f35 = fArr[i16]; - float f36 = f34 + f35; - float f37 = f31 - f32; - float f38 = f34 - f35; - int i17 = i4 + 10; - float f39 = fArr[i17]; - int i18 = i4 + 26; - float f40 = fArr[i18]; - float f41 = f39 + f40; - int i19 = i4 + 11; - float f42 = fArr[i19]; - int i20 = i4 + 27; - float f43 = fArr[i20]; - float f44 = f42 + f43; - float f45 = f39 - f40; - float f46 = f42 - f43; - float f47 = f33 + f41; - float f48 = f36 + f44; - float f49 = f33 - f41; - float f50 = f36 - f44; - float f51 = f37 - f46; - float f52 = f38 + f45; - float f53 = (f5 * f51) - (f6 * f52); - float f54 = (f51 * f6) + (f52 * f5); - float f55 = f37 + f46; - float f56 = f38 - f45; - float f57 = (f6 * f55) - (f5 * f56); - float f58 = (f55 * f5) + (f56 * f6); - int i21 = i4 + 4; - float f59 = fArr[i21]; - int i22 = i4 + 20; - float f60 = fArr[i22]; - float f61 = f59 + f60; - int i23 = i4 + 5; - float f62 = fArr[i23]; - int i24 = i4 + 21; - float f63 = fArr[i24]; - float f64 = f62 + f63; - float f65 = f59 - f60; - float f66 = f62 - f63; - int i25 = i4 + 12; - float f67 = fArr[i25]; - int i26 = i4 + 28; - float f68 = fArr[i26]; - float f69 = f67 + f68; - int i27 = i4 + 13; - float f70 = fArr[i27]; - int i28 = i4 + 29; - float f71 = fArr[i28]; - float f72 = f70 + f71; - float f73 = f67 - f68; - float f74 = f70 - f71; - float f75 = f61 + f69; - float f76 = f64 + f72; - float f77 = f61 - f69; - float f78 = f64 - f72; - float f79 = f65 - f74; - float f80 = f66 + f73; - float f81 = (f79 - f80) * f4; - float f82 = (f80 + f79) * f4; - float f83 = f65 + f74; - float f84 = f66 - f73; - float f85 = (f83 + f84) * f4; - float f86 = (f84 - f83) * f4; - int i29 = i4 + 6; - float f87 = fArr[i29]; - int i30 = i4 + 22; - float f88 = fArr[i30]; - float f89 = f87 + f88; - int i31 = i4 + 7; - float f90 = fArr[i31]; - int i32 = i4 + 23; - float f91 = fArr[i32]; - float f92 = f90 + f91; - float f93 = f87 - f88; - float f94 = f90 - f91; - int i33 = i4 + 14; - float f95 = fArr[i33]; - int i34 = i4 + 30; - float f96 = fArr[i34]; - float f97 = f95 + f96; - int i35 = i4 + 15; - float f98 = fArr[i35]; - int i36 = i4 + 31; - float f99 = fArr[i36]; - float f100 = f98 + f99; - float f101 = f95 - f96; - float f102 = f98 - f99; - float f103 = f89 + f97; - float f104 = f92 + f100; - float f105 = f89 - f97; - float f106 = f92 - f100; - float f107 = f93 - f102; - float f108 = f94 + f101; - float f109 = (f6 * f107) - (f5 * f108); - float f110 = (f107 * f5) + (f108 * f6); - float f111 = f93 + f102; - float f112 = f94 - f101; - float f113 = (f5 * f111) - (f6 * f112); - float f114 = (f6 * f111) + (f5 * f112); - float f115 = f29 - f85; - float f116 = f30 - f86; - float f117 = f29 + f85; - float f118 = f30 + f86; - float f119 = f57 - f113; - float f120 = f58 - f114; - float f121 = f57 + f113; - float f122 = f58 + f114; - fArr[i10] = f115 + f119; - fArr[i12] = f116 + f120; - fArr[i18] = f115 - f119; - fArr[i20] = f116 - f120; - fArr[i26] = f117 - f122; - fArr[i28] = f118 + f121; - fArr[i34] = f117 + f122; - fArr[i36] = f118 - f121; - float f123 = f27 + f81; - float f124 = f28 + f82; - float f125 = f27 - f81; - float f126 = f28 - f82; - float f127 = f53 + f109; - float f128 = f54 + f110; - float f129 = f53 - f109; - float f130 = f54 - f110; - fArr[i6] = f123 + f127; - fArr[i8] = f124 + f128; - fArr[i14] = f123 - f127; - fArr[i16] = f124 - f128; - fArr[i22] = f125 - f130; - fArr[i24] = f126 + f129; - fArr[i30] = f125 + f130; - fArr[i32] = f126 - f129; - float f131 = f49 - f106; - float f132 = f50 + f105; - float f133 = (f131 - f132) * f4; - float f134 = (f132 + f131) * f4; - float f135 = f49 + f106; - float f136 = f50 - f105; - float f137 = (f135 - f136) * f4; - float f138 = (f136 + f135) * f4; - float f139 = f25 - f78; - float f140 = f26 + f77; - float f141 = f25 + f78; - float f142 = f26 - f77; - fArr[i9] = f139 + f133; - fArr[i11] = f140 + f134; - fArr[i17] = f139 - f133; - fArr[i19] = f140 - f134; - fArr[i25] = f141 - f138; - fArr[i27] = f142 + f137; - fArr[i33] = f141 + f138; - fArr[i35] = f142 - f137; - float f143 = f23 + f75; - float f144 = f24 + f76; - float f145 = f23 - f75; - float f146 = f24 - f76; - float f147 = f47 + f103; - float f148 = f48 + f104; - float f149 = f47 - f103; - float f150 = f48 - f104; - fArr[i4] = f143 + f147; - fArr[i7] = f144 + f148; - fArr[i13] = f143 - f147; - fArr[i15] = f144 - f148; - fArr[i21] = f145 - f150; - fArr[i23] = f146 + f149; - fArr[i29] = f145 + f150; - fArr[i31] = f146 - f149; - } - - public static void o(d dVar, long j4, d dVar2, long j5) { - float b4 = dVar2.b(j5 + 1); - float b5 = dVar2.b(j5 + 4); - float b6 = dVar2.b(j5 + 5); - float b7 = dVar2.b(j5 + 6); - float f4 = -dVar2.b(j5 + 7); - float b8 = dVar2.b(j5 + 8); - float b9 = dVar2.b(j5 + 9); - long j6 = j4 + 17; - float b10 = dVar.b(j4) - dVar.b(j6); - long j7 = j4 + 1; - long j8 = j4 + 16; - float b11 = dVar.b(j8) + dVar.b(j7); - long j9 = j4 + 8; - long j10 = j4 + 25; - float b12 = dVar.b(j9) - dVar.b(j10); - long j11 = j4 + 9; - float b13 = dVar.b(j11); - long j12 = j4 + 24; - float b14 = dVar.b(j12) + b13; - float f5 = (b12 - b14) * b4; - float f6 = (b14 + b12) * b4; - float f7 = b10 + f5; - float f8 = b11 + f6; - float f9 = b10 - f5; - float f10 = b11 - f6; - float b15 = dVar.b(j6) + dVar.b(j4); - float b16 = dVar.b(j7) - dVar.b(j8); - float b17 = dVar.b(j10) + dVar.b(j9); - float b18 = dVar.b(j11) - dVar.b(j12); - float f11 = (b17 - b18) * b4; - float f12 = (b18 + b17) * b4; - float f13 = b15 - f12; - float f14 = b16 + f11; - float f15 = b15 + f12; - float f16 = b16 - f11; - long j13 = j4 + 2; - long j14 = j4 + 19; - float b19 = dVar.b(j13) - dVar.b(j14); - long j15 = j4 + 3; - long j16 = j4 + 18; - float b20 = dVar.b(j16) + dVar.b(j15); - float f17 = (b5 * b19) - (b6 * b20); - float f18 = (b19 * b6) + (b20 * b5); - long j17 = j4 + 10; - long j18 = j4 + 27; - float b21 = dVar.b(j17) - dVar.b(j18); - long j19 = j4 + 11; - float b22 = dVar.b(j19); - long j20 = j4 + 26; - float b23 = dVar.b(j20) + b22; - float f19 = (f4 * b21) - (b7 * b23); - float f20 = (b21 * b7) + (b23 * f4); - float f21 = f17 + f19; - float f22 = f18 + f20; - float f23 = f17 - f19; - float f24 = f18 - f20; - float b24 = dVar.b(j14) + dVar.b(j13); - float b25 = dVar.b(j15) - dVar.b(j16); - float f25 = (b7 * b24) - (f4 * b25); - float f26 = (b24 * f4) + (b25 * b7); - float b26 = dVar.b(j18) + dVar.b(j17); - float b27 = dVar.b(j19) - dVar.b(j20); - float f27 = (b6 * b27) + (b5 * b26); - float f28 = (b27 * b5) - (b6 * b26); - float f29 = f25 - f27; - float f30 = f26 - f28; - float f31 = f25 + f27; - float f32 = f26 + f28; - long j21 = j4 + 4; - long j22 = j4 + 21; - float b28 = dVar.b(j21) - dVar.b(j22); - long j23 = j4 + 5; - long j24 = j4 + 20; - float b29 = dVar.b(j24) + dVar.b(j23); - float f33 = (b8 * b28) - (b9 * b29); - float f34 = (b28 * b9) + (b29 * b8); - long j25 = j4 + 12; - long j26 = j4 + 29; - float b30 = dVar.b(j25) - dVar.b(j26); - long j27 = j4 + 13; - float b31 = dVar.b(j27); - long j28 = j4 + 28; - float b32 = dVar.b(j28) + b31; - float f35 = (b9 * b30) - (b8 * b32); - float f36 = (b30 * b8) + (b32 * b9); - float f37 = f33 + f35; - float f38 = f34 + f36; - float f39 = f33 - f35; - float f40 = f34 - f36; - float b33 = dVar.b(j22) + dVar.b(j21); - float b34 = dVar.b(j23) - dVar.b(j24); - float f41 = (b9 * b33) - (b8 * b34); - float f42 = (b33 * b8) + (b34 * b9); - float b35 = dVar.b(j26) + dVar.b(j25); - float b36 = dVar.b(j27) - dVar.b(j28); - float f43 = (b8 * b35) - (b9 * b36); - float f44 = (b9 * b35) + (b36 * b8); - float f45 = f41 - f43; - float f46 = f42 - f44; - float f47 = f41 + f43; - float f48 = f42 + f44; - long j29 = j4 + 6; - long j30 = j4 + 23; - float b37 = dVar.b(j29) - dVar.b(j30); - long j31 = j4 + 7; - long j32 = j4 + 22; - float b38 = dVar.b(j32) + dVar.b(j31); - float f49 = (b7 * b37) - (f4 * b38); - float f50 = (b37 * f4) + (b38 * b7); - long j33 = j4 + 14; - long j34 = j4 + 31; - float b39 = dVar.b(j33) - dVar.b(j34); - long j35 = j4 + 15; - float b40 = dVar.b(j35); - long j36 = j4 + 30; - float b41 = dVar.b(j36) + b40; - float f51 = (b6 * b39) - (b5 * b41); - float f52 = (b39 * b5) + (b41 * b6); - float f53 = f49 + f51; - float f54 = f50 + f52; - float f55 = f49 - f51; - float f56 = f50 - f52; - float b42 = dVar.b(j30) + dVar.b(j29); - float b43 = dVar.b(j31) - dVar.b(j32); - float f57 = (b5 * b43) + (b6 * b42); - float f58 = (b43 * b6) - (b42 * b5); - float b44 = dVar.b(j34) + dVar.b(j33); - float b45 = dVar.b(j35) - dVar.b(j36); - float f59 = (f4 * b44) - (b7 * b45); - float f60 = (b7 * b44) + (b45 * f4); - float f61 = f57 + f59; - float f62 = f58 + f60; - float f63 = f57 - f59; - float f64 = f58 - f60; - float f65 = f7 + f37; - float f66 = f8 + f38; - float f67 = f21 + f53; - float f68 = f22 + f54; - dVar.c(j7, AbstractC1518b.j(f65, f67, dVar, j4, f66, f68)); - dVar.c(j15, AbstractC1518b.l(f65, f67, dVar, j13, f66, f68)); - float f69 = f7 - f37; - float f70 = f8 - f38; - float f71 = f21 - f53; - float f72 = f22 - f54; - dVar.c(j23, AbstractC1518b.a(f69, f72, dVar, j21, f70, f71)); - dVar.c(j31, AbstractC1518b.m(f69, f72, dVar, j29, f70, f71)); - float f73 = f9 - f40; - float f74 = f10 + f39; - float f75 = f23 - f56; - float f76 = f24 + f55; - float f77 = (f75 - f76) * b4; - float f78 = (f76 + f75) * b4; - dVar.c(j11, AbstractC1518b.j(f73, f77, dVar, j9, f74, f78)); - dVar.c(j19, AbstractC1518b.l(f73, f77, dVar, j17, f74, f78)); - float f79 = f9 + f40; - float f80 = f10 - f39; - float f81 = f23 + f56; - float f82 = f24 - f55; - float f83 = (f81 - f82) * b4; - float f84 = (f82 + f81) * b4; - dVar.c(j27, AbstractC1518b.a(f79, f84, dVar, j25, f80, f83)); - dVar.c(j35, AbstractC1518b.m(f79, f84, dVar, j33, f80, f83)); - float f85 = f13 + f45; - float f86 = f14 + f46; - float f87 = f29 - f61; - float f88 = f30 - f62; - dVar.c(j6, AbstractC1518b.j(f85, f87, dVar, j8, f86, f88)); - dVar.c(j14, AbstractC1518b.l(f85, f87, dVar, j16, f86, f88)); - float f89 = f13 - f45; - float f90 = f14 - f46; - float f91 = f29 + f61; - float f92 = f30 + f62; - dVar.c(j22, AbstractC1518b.a(f89, f92, dVar, j24, f90, f91)); - dVar.c(j30, AbstractC1518b.m(f89, f92, dVar, j32, f90, f91)); - float f93 = f15 - f48; - float f94 = f16 + f47; - float f95 = f31 + f64; - float f96 = f32 - f63; - float f97 = (f95 - f96) * b4; - float f98 = (f96 + f95) * b4; - dVar.c(j10, AbstractC1518b.j(f93, f97, dVar, j12, f94, f98)); - dVar.c(j18, AbstractC1518b.l(f93, f97, dVar, j20, f94, f98)); - float f99 = f15 + f48; - float f100 = f16 - f47; - float f101 = f31 - f64; - float f102 = f32 + f63; - float f103 = (f101 - f102) * b4; - float f104 = (f102 + f101) * b4; - dVar.c(j26, AbstractC1518b.a(f99, f104, dVar, j28, f100, f103)); - dVar.c(j34, AbstractC1518b.m(f99, f104, dVar, j36, f100, f103)); - } - - public static void p(float[] fArr, int i4, float[] fArr2, int i5) { - float f4 = fArr2[i5 + 1]; - float f5 = fArr2[i5 + 4]; - float f6 = fArr2[i5 + 5]; - float f7 = fArr2[i5 + 6]; - float f8 = -fArr2[i5 + 7]; - float f9 = fArr2[i5 + 8]; - float f10 = fArr2[i5 + 9]; - float f11 = fArr[i4]; - int i6 = i4 + 17; - float f12 = fArr[i6]; - float f13 = f11 - f12; - int i7 = i4 + 1; - float f14 = fArr[i7]; - int i8 = i4 + 16; - float f15 = fArr[i8]; - float f16 = f14 + f15; - int i9 = i4 + 8; - float f17 = fArr[i9]; - int i10 = i4 + 25; - float f18 = fArr[i10]; - float f19 = f17 - f18; - int i11 = i4 + 9; - float f20 = fArr[i11]; - int i12 = i4 + 24; - float f21 = fArr[i12]; - float f22 = f20 + f21; - float f23 = (f19 - f22) * f4; - float f24 = (f22 + f19) * f4; - float f25 = f13 + f23; - float f26 = f16 + f24; - float f27 = f13 - f23; - float f28 = f16 - f24; - float f29 = f11 + f12; - float f30 = f14 - f15; - float f31 = f17 + f18; - float f32 = f20 - f21; - float f33 = (f31 - f32) * f4; - float f34 = (f32 + f31) * f4; - float f35 = f29 - f34; - float f36 = f30 + f33; - float f37 = f29 + f34; - float f38 = f30 - f33; - int i13 = i4 + 2; - float f39 = fArr[i13]; - int i14 = i4 + 19; - float f40 = fArr[i14]; - float f41 = f39 - f40; - int i15 = i4 + 3; - float f42 = fArr[i15]; - int i16 = i4 + 18; - float f43 = fArr[i16]; - float f44 = f42 + f43; - float f45 = (f5 * f41) - (f6 * f44); - float f46 = (f41 * f6) + (f44 * f5); - int i17 = i4 + 10; - float f47 = fArr[i17]; - int i18 = i4 + 27; - float f48 = fArr[i18]; - float f49 = f47 - f48; - int i19 = i4 + 11; - float f50 = fArr[i19]; - int i20 = i4 + 26; - float f51 = fArr[i20]; - float f52 = f50 + f51; - float f53 = (f8 * f49) - (f7 * f52); - float f54 = (f49 * f7) + (f52 * f8); - float f55 = f45 + f53; - float f56 = f46 + f54; - float f57 = f45 - f53; - float f58 = f46 - f54; - float f59 = f39 + f40; - float f60 = f42 - f43; - float f61 = (f7 * f59) - (f8 * f60); - float f62 = (f59 * f8) + (f60 * f7); - float f63 = f47 + f48; - float f64 = f50 - f51; - float f65 = (f6 * f64) + (f5 * f63); - float f66 = (f64 * f5) - (f63 * f6); - float f67 = f61 - f65; - float f68 = f62 - f66; - float f69 = f61 + f65; - float f70 = f62 + f66; - int i21 = i4 + 4; - float f71 = fArr[i21]; - int i22 = i4 + 21; - float f72 = fArr[i22]; - float f73 = f71 - f72; - int i23 = i4 + 5; - float f74 = fArr[i23]; - int i24 = i4 + 20; - float f75 = fArr[i24]; - float f76 = f74 + f75; - float f77 = (f9 * f73) - (f10 * f76); - float f78 = (f73 * f10) + (f76 * f9); - int i25 = i4 + 12; - float f79 = fArr[i25]; - int i26 = i4 + 29; - float f80 = fArr[i26]; - float f81 = f79 - f80; - int i27 = i4 + 13; - float f82 = fArr[i27]; - int i28 = i4 + 28; - float f83 = fArr[i28]; - float f84 = f82 + f83; - float f85 = (f10 * f81) - (f9 * f84); - float f86 = (f81 * f9) + (f84 * f10); - float f87 = f77 + f85; - float f88 = f78 + f86; - float f89 = f77 - f85; - float f90 = f78 - f86; - float f91 = f71 + f72; - float f92 = f74 - f75; - float f93 = (f10 * f91) - (f9 * f92); - float f94 = (f91 * f9) + (f92 * f10); - float f95 = f79 + f80; - float f96 = f82 - f83; - float f97 = (f9 * f95) - (f10 * f96); - float f98 = (f10 * f95) + (f9 * f96); - float f99 = f93 - f97; - float f100 = f94 - f98; - float f101 = f93 + f97; - float f102 = f94 + f98; - int i29 = i4 + 6; - float f103 = fArr[i29]; - int i30 = i4 + 23; - float f104 = fArr[i30]; - float f105 = f103 - f104; - int i31 = i4 + 7; - float f106 = fArr[i31]; - int i32 = i4 + 22; - float f107 = fArr[i32]; - float f108 = f106 + f107; - float f109 = (f7 * f105) - (f8 * f108); - float f110 = (f105 * f8) + (f108 * f7); - int i33 = i4 + 14; - float f111 = fArr[i33]; - int i34 = i4 + 31; - float f112 = fArr[i34]; - float f113 = f111 - f112; - int i35 = i4 + 15; - float f114 = fArr[i35]; - int i36 = i4 + 30; - float f115 = fArr[i36]; - float f116 = f114 + f115; - float f117 = (f6 * f113) - (f5 * f116); - float f118 = (f113 * f5) + (f116 * f6); - float f119 = f109 + f117; - float f120 = f110 + f118; - float f121 = f109 - f117; - float f122 = f110 - f118; - float f123 = f103 + f104; - float f124 = f106 - f107; - float f125 = (f5 * f124) + (f6 * f123); - float f126 = (f6 * f124) - (f5 * f123); - float f127 = f111 + f112; - float f128 = f114 - f115; - float f129 = (f8 * f127) - (f7 * f128); - float f130 = (f7 * f127) + (f8 * f128); - float f131 = f125 + f129; - float f132 = f126 + f130; - float f133 = f125 - f129; - float f134 = f126 - f130; - float f135 = f25 + f87; - float f136 = f26 + f88; - float f137 = f55 + f119; - float f138 = f56 + f120; - fArr[i4] = f135 + f137; - fArr[i7] = f136 + f138; - fArr[i13] = f135 - f137; - fArr[i15] = f136 - f138; - float f139 = f25 - f87; - float f140 = f26 - f88; - float f141 = f55 - f119; - float f142 = f56 - f120; - fArr[i21] = f139 - f142; - fArr[i23] = f140 + f141; - fArr[i29] = f139 + f142; - fArr[i31] = f140 - f141; - float f143 = f27 - f90; - float f144 = f28 + f89; - float f145 = f57 - f122; - float f146 = f58 + f121; - float f147 = (f145 - f146) * f4; - float f148 = (f146 + f145) * f4; - fArr[i9] = f143 + f147; - fArr[i11] = f144 + f148; - fArr[i17] = f143 - f147; - fArr[i19] = f144 - f148; - float f149 = f27 + f90; - float f150 = f28 - f89; - float f151 = f57 + f122; - float f152 = f58 - f121; - float f153 = (f151 - f152) * f4; - float f154 = (f152 + f151) * f4; - fArr[i25] = f149 - f154; - fArr[i27] = f150 + f153; - fArr[i33] = f149 + f154; - fArr[i35] = f150 - f153; - float f155 = f35 + f99; - float f156 = f36 + f100; - float f157 = f67 - f131; - float f158 = f68 - f132; - fArr[i8] = f155 + f157; - fArr[i6] = f156 + f158; - fArr[i16] = f155 - f157; - fArr[i14] = f156 - f158; - float f159 = f35 - f99; - float f160 = f36 - f100; - float f161 = f67 + f131; - float f162 = f68 + f132; - fArr[i24] = f159 - f162; - fArr[i22] = f160 + f161; - fArr[i32] = f159 + f162; - fArr[i30] = f160 - f161; - float f163 = f37 - f102; - float f164 = f38 + f101; - float f165 = f69 + f134; - float f166 = f70 - f133; - float f167 = (f165 - f166) * f4; - float f168 = (f166 + f165) * f4; - fArr[i12] = f163 + f167; - fArr[i10] = f164 + f168; - fArr[i20] = f163 - f167; - fArr[i18] = f164 - f168; - float f169 = f37 + f102; - float f170 = f38 - f101; - float f171 = f69 - f134; - float f172 = f70 + f133; - float f173 = (f171 - f172) * f4; - float f174 = (f172 + f171) * f4; - fArr[i28] = f169 - f174; - fArr[i26] = f170 + f173; - fArr[i36] = f169 + f174; - fArr[i34] = f170 - f173; - } - - public static void q(int i4, float[] fArr, int i5, int[] iArr, int i6, float[] fArr2) { - if (i4 <= 8) { - if (i4 != 8) { - if (i4 == 4) { - H(fArr, i5); - return; - } - return; - } - float f4 = fArr[i5]; - int i7 = i5 + 4; - float f5 = fArr[i7]; - float f6 = f4 + f5; - int i8 = i5 + 1; - float f7 = fArr[i8]; - int i9 = i5 + 5; - float f8 = fArr[i9]; - float f9 = f7 + f8; - float f10 = f4 - f5; - float f11 = f7 - f8; - int i10 = i5 + 2; - float f12 = fArr[i10]; - int i11 = i5 + 6; - float f13 = fArr[i11]; - float f14 = f12 + f13; - int i12 = i5 + 3; - float f15 = fArr[i12]; - int i13 = i5 + 7; - float f16 = fArr[i13]; - float f17 = f15 + f16; - float f18 = f12 - f13; - float f19 = f15 - f16; - fArr[i5] = f6 + f14; - fArr[i8] = f9 + f17; - fArr[i10] = f10 - f19; - fArr[i12] = f11 + f18; - fArr[i7] = f6 - f14; - fArr[i9] = f9 - f17; - fArr[i11] = f10 + f19; - fArr[i13] = f11 - f18; - return; - } - if (i4 <= 32) { - if (i4 == 32) { - n(fArr, i5, fArr2, i6 - 8); - int i14 = i5 + 2; - float f20 = fArr[i14]; - int i15 = i5 + 3; - float f21 = fArr[i15]; - int i16 = i5 + 4; - float f22 = fArr[i16]; - int i17 = i5 + 5; - float f23 = fArr[i17]; - int i18 = i5 + 6; - float f24 = fArr[i18]; - int i19 = i5 + 7; - float f25 = fArr[i19]; - int i20 = i5 + 8; - float f26 = fArr[i20]; - int i21 = i5 + 9; - float f27 = fArr[i21]; - int i22 = i5 + 10; - float f28 = fArr[i22]; - int i23 = i5 + 11; - float f29 = fArr[i23]; - int i24 = i5 + 14; - float f30 = fArr[i24]; - int i25 = i5 + 15; - float f31 = fArr[i25]; - int i26 = i5 + 16; - float f32 = fArr[i26]; - int i27 = i5 + 17; - float f33 = fArr[i27]; - int i28 = i5 + 20; - float f34 = fArr[i28]; - int i29 = i5 + 21; - float f35 = fArr[i29]; - int i30 = i5 + 22; - float f36 = fArr[i30]; - int i31 = i5 + 23; - float f37 = fArr[i31]; - int i32 = i5 + 24; - float f38 = fArr[i32]; - int i33 = i5 + 25; - float f39 = fArr[i33]; - int i34 = i5 + 26; - float f40 = fArr[i34]; - int i35 = i5 + 27; - float f41 = fArr[i35]; - int i36 = i5 + 28; - float f42 = fArr[i36]; - int i37 = i5 + 29; - float f43 = fArr[i37]; - fArr[i14] = f32; - fArr[i15] = f33; - fArr[i16] = f26; - fArr[i17] = f27; - fArr[i18] = f38; - fArr[i19] = f39; - fArr[i20] = f22; - fArr[i21] = f23; - fArr[i22] = f34; - fArr[i23] = f35; - fArr[i24] = f42; - fArr[i25] = f43; - fArr[i26] = f20; - fArr[i27] = f21; - fArr[i28] = f28; - fArr[i29] = f29; - fArr[i30] = f40; - fArr[i31] = f41; - fArr[i32] = f24; - fArr[i33] = f25; - fArr[i34] = f36; - fArr[i35] = f37; - fArr[i36] = f30; - fArr[i37] = f31; - return; - } - j(fArr, i5, fArr2, 0); - int i38 = i5 + 2; - float f44 = fArr[i38]; - int i39 = i5 + 3; - float f45 = fArr[i39]; - int i40 = i5 + 6; - float f46 = fArr[i40]; - int i41 = i5 + 7; - float f47 = fArr[i41]; - int i42 = i5 + 8; - float f48 = fArr[i42]; - int i43 = i5 + 9; - float f49 = fArr[i43]; - int i44 = i5 + 12; - float f50 = fArr[i44]; - int i45 = i5 + 13; - float f51 = fArr[i45]; - fArr[i38] = f48; - fArr[i39] = f49; - fArr[i40] = f50; - fArr[i41] = f51; - fArr[i42] = f44; - fArr[i43] = f45; - fArr[i44] = f46; - fArr[i45] = f47; - return; - } - int i46 = i4 >> 2; - int i47 = i6 - i46; - int i48 = i4 >> 3; - int i49 = i48 * 2; - int i50 = i49 + i49; - int i51 = i50 + i49; - int i52 = i5 + i49; - int i53 = i50 + i5; - int i54 = i51 + i5; - float f52 = fArr[i5]; - float f53 = fArr[i53]; - float f54 = f52 + f53; - int i55 = i5 + 1; - float f55 = fArr[i55]; - int i56 = i53 + 1; - float f56 = fArr[i56]; - float f57 = f55 + f56; - float f58 = f52 - f53; - float f59 = f55 - f56; - float f60 = fArr[i52]; - float f61 = fArr[i54]; - float f62 = f60 + f61; - int i57 = i52 + 1; - float f63 = fArr[i57]; - int i58 = i54 + 1; - float f64 = fArr[i58]; - float f65 = f63 + f64; - float f66 = f60 - f61; - float f67 = f63 - f64; - fArr[i5] = f54 + f62; - fArr[i55] = f57 + f65; - fArr[i52] = f54 - f62; - fArr[i57] = f57 - f65; - fArr[i53] = f58 - f67; - fArr[i56] = f59 + f66; - fArr[i54] = f58 + f67; - fArr[i58] = f59 - f66; - float f68 = fArr2[i47 + 1]; - float f69 = fArr2[i47 + 2]; - float f70 = fArr2[i47 + 3]; - float f71 = 1.0f; - int i59 = 2; - float f72 = 1.0f; - float f73 = 0.0f; - float f74 = 0.0f; - int i60 = 0; - while (i59 < i48 - 2) { - i60 += 4; - int i61 = i47 + i60; - float f75 = fArr2[i61]; - float f76 = (f71 + f75) * f69; - float f77 = fArr2[i61 + 1]; - float f78 = (f73 + f77) * f69; - float f79 = fArr2[i61 + 2]; - float f80 = (f72 + f79) * f70; - float f81 = fArr2[i61 + 3]; - float f82 = (f74 + f81) * f70; - int i62 = i59 + i49; - int i63 = i62 + i49; - int i64 = i63 + i49; - int i65 = i5 + i62; - int i66 = i5 + i63; - int i67 = i5 + i64; - int i68 = i5 + i59; - float f83 = fArr[i68]; - float f84 = fArr[i66]; - float f85 = f83 + f84; - int i69 = i68 + 1; - float f86 = fArr[i69]; - int i70 = i66 + 1; - float f87 = fArr[i70]; - float f88 = f86 + f87; - float f89 = f83 - f84; - float f90 = f86 - f87; - int i71 = i68 + 2; - float f91 = fArr[i71]; - int i72 = i66 + 2; - float f92 = fArr[i72]; - float f93 = f91 + f92; - int i73 = i68 + 3; - float f94 = fArr[i73]; - int i74 = i66 + 3; - float f95 = fArr[i74]; - float f96 = f94 + f95; - float f97 = f91 - f92; - float f98 = f94 - f95; - float f99 = fArr[i65]; - float f100 = fArr[i67]; - float f101 = f99 + f100; - int i75 = i65 + 1; - float f102 = fArr[i75]; - int i76 = i67 + 1; - float f103 = fArr[i76]; - float f104 = f102 + f103; - float f105 = f99 - f100; - float f106 = f102 - f103; - int i77 = i65 + 2; - float f107 = fArr[i77]; - int i78 = i67 + 2; - float f108 = fArr[i78]; - float f109 = f107 + f108; - int i79 = i65 + 3; - float f110 = fArr[i79]; - int i80 = i67 + 3; - float f111 = fArr[i80]; - float f112 = f110 + f111; - float f113 = f107 - f108; - float f114 = f110 - f111; - fArr[i68] = f85 + f101; - fArr[i69] = f88 + f104; - fArr[i71] = f93 + f109; - fArr[i73] = f96 + f112; - fArr[i65] = f85 - f101; - fArr[i75] = f88 - f104; - fArr[i77] = f93 - f109; - fArr[i79] = f96 - f112; - float f115 = f89 - f106; - float f116 = f90 + f105; - fArr[i66] = (f76 * f115) - (f78 * f116); - fArr[i70] = (f115 * f78) + (f116 * f76); - float f117 = f97 - f114; - float f118 = f98 + f113; - fArr[i72] = (f75 * f117) - (f77 * f118); - fArr[i74] = (f117 * f77) + (f118 * f75); - float f119 = f89 + f106; - float f120 = f90 - f105; - fArr[i67] = (f82 * f120) + (f80 * f119); - fArr[i76] = (f120 * f80) - (f119 * f82); - float f121 = f97 + f114; - float f122 = f98 - f113; - fArr[i78] = (f81 * f122) + (f79 * f121); - fArr[i80] = (f122 * f79) - (f121 * f81); - int i81 = i49 - i59; - int i82 = i81 + i49; - int i83 = i82 + i49; - int i84 = i83 + i49; - int i85 = i5 + i81; - int i86 = i5 + i82; - int i87 = i5 + i83; - int i88 = i5 + i84; - float f123 = fArr[i85]; - float f124 = fArr[i87]; - float f125 = f123 + f124; - int i89 = i85 + 1; - float f126 = fArr[i89]; - int i90 = i87 + 1; - float f127 = fArr[i90]; - float f128 = f126 + f127; - float f129 = f123 - f124; - float f130 = f126 - f127; - int i91 = i85 - 2; - float f131 = fArr[i91]; - int i92 = i87 - 2; - float f132 = fArr[i92]; - float f133 = f131 + f132; - int i93 = i85 - 1; - float f134 = fArr[i93]; - int i94 = i87 - 1; - float f135 = fArr[i94]; - float f136 = f134 + f135; - float f137 = f131 - f132; - float f138 = f134 - f135; - float f139 = fArr[i86]; - float f140 = fArr[i88]; - float f141 = f139 + f140; - int i95 = i86 + 1; - float f142 = fArr[i95]; - int i96 = i88 + 1; - float f143 = fArr[i96]; - float f144 = f142 + f143; - float f145 = f139 - f140; - float f146 = f142 - f143; - int i97 = i86 - 2; - float f147 = fArr[i97]; - int i98 = i88 - 2; - float f148 = fArr[i98]; - float f149 = f147 + f148; - int i99 = i86 - 1; - float f150 = fArr[i99]; - int i100 = i88 - 1; - float f151 = fArr[i100]; - float f152 = f150 + f151; - float f153 = f147 - f148; - float f154 = f150 - f151; - fArr[i85] = f125 + f141; - fArr[i89] = f128 + f144; - fArr[i91] = f133 + f149; - fArr[i93] = f136 + f152; - fArr[i86] = f125 - f141; - fArr[i95] = f128 - f144; - fArr[i97] = f133 - f149; - fArr[i99] = f136 - f152; - float f155 = f129 - f146; - float f156 = f130 + f145; - fArr[i87] = (f78 * f155) - (f76 * f156); - fArr[i90] = (f76 * f155) + (f78 * f156); - float f157 = f137 - f154; - float f158 = f138 + f153; - fArr[i92] = (f77 * f157) - (f75 * f158); - fArr[i94] = (f157 * f75) + (f158 * f77); - float f159 = f129 + f146; - float f160 = f130 - f145; - fArr[i88] = (f80 * f160) + (f82 * f159); - fArr[i96] = (f82 * f160) - (f80 * f159); - float f161 = f137 + f154; - float f162 = f138 - f153; - fArr[i98] = (f79 * f162) + (f81 * f161); - fArr[i100] = (f162 * f81) - (f161 * f79); - i59 += 4; - f74 = f81; - f71 = f75; - f73 = f77; - f72 = f79; - } - float f163 = (f71 + f68) * f69; - float f164 = (f73 + f68) * f69; - float f165 = (f72 - f68) * f70; - float f166 = (f74 - f68) * f70; - int i101 = i48 + i49; - int i102 = i101 + i49; - int i103 = i49 + i102; - int i104 = i48 + i5; - int i105 = i101 + i5; - int i106 = i102 + i5; - int i107 = i103 + i5; - int i108 = i104 - 2; - float f167 = fArr[i108]; - int i109 = i106 - 2; - float f168 = fArr[i109]; - float f169 = f167 + f168; - int i110 = i104 - 1; - float f170 = fArr[i110]; - int i111 = i106 - 1; - float f171 = fArr[i111]; - float f172 = f170 + f171; - float f173 = f167 - f168; - float f174 = f170 - f171; - int i112 = i105 - 2; - float f175 = fArr[i112]; - int i113 = i107 - 2; - float f176 = fArr[i113]; - float f177 = f175 + f176; - int i114 = i105 - 1; - float f178 = fArr[i114]; - int i115 = i107 - 1; - float f179 = fArr[i115]; - float f180 = f178 + f179; - float f181 = f175 - f176; - float f182 = f178 - f179; - fArr[i108] = f169 + f177; - fArr[i110] = f172 + f180; - fArr[i112] = f169 - f177; - fArr[i114] = f172 - f180; - float f183 = f173 - f182; - float f184 = f174 + f181; - fArr[i109] = (f163 * f183) - (f164 * f184); - fArr[i111] = (f183 * f164) + (f184 * f163); - float f185 = f173 + f182; - float f186 = f174 - f181; - fArr[i113] = (f166 * f186) + (f165 * f185); - fArr[i115] = (f186 * f165) - (f185 * f166); - float f187 = fArr[i104]; - float f188 = fArr[i106]; - float f189 = f187 + f188; - int i116 = i104 + 1; - float f190 = fArr[i116]; - int i117 = i106 + 1; - float f191 = fArr[i117]; - float f192 = f190 + f191; - float f193 = f187 - f188; - float f194 = f190 - f191; - float f195 = fArr[i105]; - float f196 = fArr[i107]; - float f197 = f195 + f196; - int i118 = i105 + 1; - float f198 = fArr[i118]; - int i119 = i107 + 1; - float f199 = fArr[i119]; - float f200 = f198 + f199; - float f201 = f195 - f196; - float f202 = f198 - f199; - fArr[i104] = f189 + f197; - fArr[i116] = f192 + f200; - fArr[i105] = f189 - f197; - fArr[i118] = f192 - f200; - float f203 = f193 - f202; - float f204 = f194 + f201; - fArr[i106] = (f203 - f204) * f68; - fArr[i117] = (f204 + f203) * f68; - float f205 = f193 + f202; - float f206 = f194 - f201; - float f207 = -f68; - fArr[i107] = (f205 + f206) * f207; - fArr[i119] = (f206 - f205) * f207; - int i120 = i104 + 2; - float f208 = fArr[i120]; - int i121 = i106 + 2; - float f209 = fArr[i121]; - float f210 = f208 + f209; - int i122 = i104 + 3; - float f211 = fArr[i122]; - int i123 = i106 + 3; - float f212 = fArr[i123]; - float f213 = f211 + f212; - float f214 = f208 - f209; - float f215 = f211 - f212; - int i124 = i105 + 2; - float f216 = fArr[i124]; - int i125 = i107 + 2; - float f217 = fArr[i125]; - float f218 = f216 + f217; - int i126 = i105 + 3; - float f219 = fArr[i126]; - int i127 = i107 + 3; - float f220 = fArr[i127]; - float f221 = f219 + f220; - float f222 = f216 - f217; - float f223 = f219 - f220; - fArr[i120] = f210 + f218; - fArr[i122] = f213 + f221; - fArr[i124] = f210 - f218; - fArr[i126] = f213 - f221; - float f224 = f214 - f223; - float f225 = f215 + f222; - fArr[i121] = (f164 * f224) - (f163 * f225); - fArr[i123] = (f163 * f224) + (f164 * f225); - float f226 = f214 + f223; - float f227 = f215 - f222; - fArr[i125] = (f165 * f227) + (f166 * f226); - fArr[i127] = (f166 * f227) - (f165 * f226); - if (k3.c.c > 1 && i4 >= 8192) { - C(i4, i5, i6, fArr, fArr2); - } else if (i4 > 512) { - A(i4, i5, i6, fArr, fArr2); - } else if (i4 > 128) { - u(i4, 1, fArr, i5, i6, fArr2); - } else { - s(i4, i5, i6, fArr, fArr2); - } - int i128 = 1; - while (i46 > 8) { - i128 <<= 1; - i46 >>= 2; - } - int i129 = i4 >> 1; - int i130 = i128 * 4; - if (i46 != 8) { - for (int i131 = 0; i131 < i128; i131++) { - int i132 = i131 * 4; - for (int i133 = 0; i133 < i131; i133++) { - int i134 = (i133 * 4) + iArr[i128 + i131]; - int i135 = iArr[i128 + i133] + i132; - int i136 = i5 + i134; - int i137 = i5 + i135; - float f228 = fArr[i136]; - int i138 = i136 + 1; - float f229 = fArr[i138]; - float f230 = fArr[i137]; - int i139 = i137 + 1; - float f231 = fArr[i139]; - fArr[i136] = f230; - fArr[i138] = f231; - fArr[i137] = f228; - fArr[i139] = f229; - int i140 = i134 + i130; - int i141 = i135 + i130; - int i142 = i5 + i140; - int i143 = i5 + i141; - float f232 = fArr[i142]; - int i144 = i142 + 1; - float f233 = fArr[i144]; - float f234 = fArr[i143]; - int i145 = i143 + 1; - float f235 = fArr[i145]; - fArr[i142] = f234; - fArr[i144] = f235; - fArr[i143] = f232; - fArr[i145] = f233; - int i146 = i140 + i129; - int i147 = i141 + 2; - int i148 = i5 + i146; - int i149 = i5 + i147; - float f236 = fArr[i148]; - int i150 = i148 + 1; - float f237 = fArr[i150]; - float f238 = fArr[i149]; - int i151 = i149 + 1; - float f239 = fArr[i151]; - fArr[i148] = f238; - fArr[i150] = f239; - fArr[i149] = f236; - fArr[i151] = f237; - int i152 = i146 - i130; - int i153 = i147 - i130; - int i154 = i5 + i152; - int i155 = i5 + i153; - float f240 = fArr[i154]; - int i156 = i154 + 1; - float f241 = fArr[i156]; - float f242 = fArr[i155]; - int i157 = i155 + 1; - float f243 = fArr[i157]; - fArr[i154] = f242; - fArr[i156] = f243; - fArr[i155] = f240; - fArr[i157] = f241; - int i158 = i152 + 2; - int i159 = i153 + i129; - int i160 = i5 + i158; - int i161 = i5 + i159; - float f244 = fArr[i160]; - int i162 = i160 + 1; - float f245 = fArr[i162]; - float f246 = fArr[i161]; - int i163 = i161 + 1; - float f247 = fArr[i163]; - fArr[i160] = f246; - fArr[i162] = f247; - fArr[i161] = f244; - fArr[i163] = f245; - int i164 = i158 + i130; - int i165 = i159 + i130; - int i166 = i5 + i164; - int i167 = i5 + i165; - float f248 = fArr[i166]; - int i168 = i166 + 1; - float f249 = fArr[i168]; - float f250 = fArr[i167]; - int i169 = i167 + 1; - float f251 = fArr[i169]; - fArr[i166] = f250; - fArr[i168] = f251; - fArr[i167] = f248; - fArr[i169] = f249; - int i170 = i164 - i129; - int i171 = i165 - 2; - int i172 = i5 + i170; - int i173 = i5 + i171; - float f252 = fArr[i172]; - int i174 = i172 + 1; - float f253 = fArr[i174]; - float f254 = fArr[i173]; - int i175 = i173 + 1; - float f255 = fArr[i175]; - fArr[i172] = f254; - fArr[i174] = f255; - fArr[i173] = f252; - fArr[i175] = f253; - int i176 = (i170 - i130) + i5; - int i177 = (i171 - i130) + i5; - float f256 = fArr[i176]; - int i178 = i176 + 1; - float f257 = fArr[i178]; - float f258 = fArr[i177]; - int i179 = i177 + 1; - float f259 = fArr[i179]; - fArr[i176] = f258; - fArr[i178] = f259; - fArr[i177] = f256; - fArr[i179] = f257; - } - int i180 = i132 + iArr[i128 + i131]; - int i181 = i180 + 2; - int i182 = i180 + i129; - int i183 = i5 + i181; - int i184 = i5 + i182; - float f260 = fArr[i183]; - int i185 = i183 + 1; - float f261 = fArr[i185]; - float f262 = fArr[i184]; - int i186 = i184 + 1; - float f263 = fArr[i186]; - fArr[i183] = f262; - fArr[i185] = f263; - fArr[i184] = f260; - fArr[i186] = f261; - int i187 = i181 + i130 + i5; - int i188 = i182 + i130 + i5; - float f264 = fArr[i187]; - int i189 = i187 + 1; - float f265 = fArr[i189]; - float f266 = fArr[i188]; - int i190 = i188 + 1; - float f267 = fArr[i190]; - fArr[i187] = f266; - fArr[i189] = f267; - fArr[i188] = f264; - fArr[i190] = f265; - } - return; - } - for (int i191 = 0; i191 < i128; i191++) { - int i192 = i191 * 4; - for (int i193 = 0; i193 < i191; i193++) { - int i194 = (iArr[i128 + i191] * 2) + (i193 * 4); - int i195 = (iArr[i128 + i193] * 2) + i192; - int i196 = i5 + i194; - int i197 = i5 + i195; - float f268 = fArr[i196]; - int i198 = i196 + 1; - float f269 = fArr[i198]; - float f270 = fArr[i197]; - int i199 = i197 + 1; - float f271 = fArr[i199]; - fArr[i196] = f270; - fArr[i198] = f271; - fArr[i197] = f268; - fArr[i199] = f269; - int i200 = i194 + i130; - int i201 = i128 * 8; - int i202 = i195 + i201; - int i203 = i5 + i200; - int i204 = i5 + i202; - float f272 = fArr[i203]; - int i205 = i203 + 1; - float f273 = fArr[i205]; - float f274 = fArr[i204]; - int i206 = i204 + 1; - float f275 = fArr[i206]; - fArr[i203] = f274; - fArr[i205] = f275; - fArr[i204] = f272; - fArr[i206] = f273; - int i207 = i200 + i130; - int i208 = i202 - i130; - int i209 = i5 + i207; - int i210 = i5 + i208; - float f276 = fArr[i209]; - int i211 = i209 + 1; - float f277 = fArr[i211]; - float f278 = fArr[i210]; - int i212 = i210 + 1; - float f279 = fArr[i212]; - fArr[i209] = f278; - fArr[i211] = f279; - fArr[i210] = f276; - fArr[i212] = f277; - int i213 = i207 + i130; - int i214 = i208 + i201; - int i215 = i5 + i213; - int i216 = i5 + i214; - float f280 = fArr[i215]; - int i217 = i215 + 1; - float f281 = fArr[i217]; - float f282 = fArr[i216]; - int i218 = i216 + 1; - float f283 = fArr[i218]; - fArr[i215] = f282; - fArr[i217] = f283; - fArr[i216] = f280; - fArr[i218] = f281; - int i219 = i213 + i129; - int i220 = i214 + 2; - int i221 = i5 + i219; - int i222 = i5 + i220; - float f284 = fArr[i221]; - int i223 = i221 + 1; - float f285 = fArr[i223]; - float f286 = fArr[i222]; - int i224 = i222 + 1; - float f287 = fArr[i224]; - fArr[i221] = f286; - fArr[i223] = f287; - fArr[i222] = f284; - fArr[i224] = f285; - int i225 = i219 - i130; - int i226 = i220 - i201; - int i227 = i5 + i225; - int i228 = i5 + i226; - float f288 = fArr[i227]; - int i229 = i227 + 1; - float f289 = fArr[i229]; - float f290 = fArr[i228]; - int i230 = i228 + 1; - float f291 = fArr[i230]; - fArr[i227] = f290; - fArr[i229] = f291; - fArr[i228] = f288; - fArr[i230] = f289; - int i231 = i225 - i130; - int i232 = i226 + i130; - int i233 = i5 + i231; - int i234 = i5 + i232; - float f292 = fArr[i233]; - int i235 = i233 + 1; - float f293 = fArr[i235]; - float f294 = fArr[i234]; - int i236 = i234 + 1; - float f295 = fArr[i236]; - fArr[i233] = f294; - fArr[i235] = f295; - fArr[i234] = f292; - fArr[i236] = f293; - int i237 = i231 - i130; - int i238 = i232 - i201; - int i239 = i5 + i237; - int i240 = i5 + i238; - float f296 = fArr[i239]; - int i241 = i239 + 1; - float f297 = fArr[i241]; - float f298 = fArr[i240]; - int i242 = i240 + 1; - float f299 = fArr[i242]; - fArr[i239] = f298; - fArr[i241] = f299; - fArr[i240] = f296; - fArr[i242] = f297; - int i243 = i237 + 2; - int i244 = i238 + i129; - int i245 = i5 + i243; - int i246 = i5 + i244; - float f300 = fArr[i245]; - int i247 = i245 + 1; - float f301 = fArr[i247]; - float f302 = fArr[i246]; - int i248 = i246 + 1; - float f303 = fArr[i248]; - fArr[i245] = f302; - fArr[i247] = f303; - fArr[i246] = f300; - fArr[i248] = f301; - int i249 = i243 + i130; - int i250 = i244 + i201; - int i251 = i5 + i249; - int i252 = i5 + i250; - float f304 = fArr[i251]; - int i253 = i251 + 1; - float f305 = fArr[i253]; - float f306 = fArr[i252]; - int i254 = i252 + 1; - float f307 = fArr[i254]; - fArr[i251] = f306; - fArr[i253] = f307; - fArr[i252] = f304; - fArr[i254] = f305; - int i255 = i249 + i130; - int i256 = i250 - i130; - int i257 = i5 + i255; - int i258 = i5 + i256; - float f308 = fArr[i257]; - int i259 = i257 + 1; - float f309 = fArr[i259]; - float f310 = fArr[i258]; - int i260 = i258 + 1; - float f311 = fArr[i260]; - fArr[i257] = f310; - fArr[i259] = f311; - fArr[i258] = f308; - fArr[i260] = f309; - int i261 = i255 + i130; - int i262 = i256 + i201; - int i263 = i5 + i261; - int i264 = i5 + i262; - float f312 = fArr[i263]; - int i265 = i263 + 1; - float f313 = fArr[i265]; - float f314 = fArr[i264]; - int i266 = i264 + 1; - float f315 = fArr[i266]; - fArr[i263] = f314; - fArr[i265] = f315; - fArr[i264] = f312; - fArr[i266] = f313; - int i267 = i261 - i129; - int i268 = i262 - 2; - int i269 = i5 + i267; - int i270 = i5 + i268; - float f316 = fArr[i269]; - int i271 = i269 + 1; - float f317 = fArr[i271]; - float f318 = fArr[i270]; - int i272 = i270 + 1; - float f319 = fArr[i272]; - fArr[i269] = f318; - fArr[i271] = f319; - fArr[i270] = f316; - fArr[i272] = f317; - int i273 = i267 - i130; - int i274 = i268 - i201; - int i275 = i5 + i273; - int i276 = i5 + i274; - float f320 = fArr[i275]; - int i277 = i275 + 1; - float f321 = fArr[i277]; - float f322 = fArr[i276]; - int i278 = i276 + 1; - float f323 = fArr[i278]; - fArr[i275] = f322; - fArr[i277] = f323; - fArr[i276] = f320; - fArr[i278] = f321; - int i279 = i273 - i130; - int i280 = i274 + i130; - int i281 = i5 + i279; - int i282 = i5 + i280; - float f324 = fArr[i281]; - int i283 = i281 + 1; - float f325 = fArr[i283]; - float f326 = fArr[i282]; - int i284 = i282 + 1; - float f327 = fArr[i284]; - fArr[i281] = f326; - fArr[i283] = f327; - fArr[i282] = f324; - fArr[i284] = f325; - int i285 = (i279 - i130) + i5; - int i286 = (i280 - i201) + i5; - float f328 = fArr[i285]; - int i287 = i285 + 1; - float f329 = fArr[i287]; - float f330 = fArr[i286]; - int i288 = i286 + 1; - float f331 = fArr[i288]; - fArr[i285] = f330; - fArr[i287] = f331; - fArr[i286] = f328; - fArr[i288] = f329; - } - int i289 = (iArr[i128 + i191] * 2) + i192; - int i290 = i289 + 2; - int i291 = i289 + i129; - int i292 = i5 + i290; - int i293 = i5 + i291; - float f332 = fArr[i292]; - int i294 = i292 + 1; - float f333 = fArr[i294]; - float f334 = fArr[i293]; - int i295 = i293 + 1; - float f335 = fArr[i295]; - fArr[i292] = f334; - fArr[i294] = f335; - fArr[i293] = f332; - fArr[i295] = f333; - int i296 = i290 + i130; - int i297 = i128 * 8; - int i298 = i291 + i297; - int i299 = i5 + i296; - int i300 = i5 + i298; - float f336 = fArr[i299]; - int i301 = i299 + 1; - float f337 = fArr[i301]; - float f338 = fArr[i300]; - int i302 = i300 + 1; - float f339 = fArr[i302]; - fArr[i299] = f338; - fArr[i301] = f339; - fArr[i300] = f336; - fArr[i302] = f337; - int i303 = i296 + i130; - int i304 = i298 - i130; - int i305 = i5 + i303; - int i306 = i5 + i304; - float f340 = fArr[i305]; - int i307 = i305 + 1; - float f341 = fArr[i307]; - float f342 = fArr[i306]; - int i308 = i306 + 1; - float f343 = fArr[i308]; - fArr[i305] = f342; - fArr[i307] = f343; - fArr[i306] = f340; - fArr[i308] = f341; - int i309 = i303 - 2; - int i310 = i304 - i129; - int i311 = i5 + i309; - int i312 = i5 + i310; - float f344 = fArr[i311]; - int i313 = i311 + 1; - float f345 = fArr[i313]; - float f346 = fArr[i312]; - int i314 = i312 + 1; - float f347 = fArr[i314]; - fArr[i311] = f346; - fArr[i313] = f347; - fArr[i312] = f344; - fArr[i314] = f345; - int i315 = i129 + 2; - int i316 = i309 + i315; - int i317 = i310 + i315; - int i318 = i5 + i316; - int i319 = i5 + i317; - float f348 = fArr[i318]; - int i320 = i318 + 1; - float f349 = fArr[i320]; - float f350 = fArr[i319]; - int i321 = i319 + 1; - float f351 = fArr[i321]; - fArr[i318] = f350; - fArr[i320] = f351; - fArr[i319] = f348; - fArr[i321] = f349; - int i322 = (i316 - (i129 - i130)) + i5; - int i323 = i5 + (i297 - 2) + i317; - float f352 = fArr[i322]; - int i324 = i322 + 1; - float f353 = fArr[i324]; - float f354 = fArr[i323]; - int i325 = i323 + 1; - float f355 = fArr[i325]; - fArr[i322] = f354; - fArr[i324] = f355; - fArr[i323] = f352; - fArr[i325] = f353; - } - } - - public static void r(long j4, d dVar, long j5, s sVar, long j6, d dVar2) { - d dVar3; - long j7; - if (j4 <= 8) { - if (j4 != 8) { - if (j4 == 4) { - G(dVar, j5); - return; - } - return; - } - long j8 = j5 + 4; - float b4 = dVar.b(j5) + dVar.b(j8); - long j9 = j5 + 1; - long j10 = j5 + 5; - float b5 = dVar.b(j10) + dVar.b(j9); - float b6 = dVar.b(j5) - dVar.b(j8); - float b7 = dVar.b(j9) - dVar.b(j10); - long j11 = j5 + 2; - long j12 = j5 + 6; - float b8 = dVar.b(j11) + dVar.b(j12); - long j13 = j5 + 3; - long j14 = j5 + 7; - float b9 = dVar.b(j13) + dVar.b(j14); - float b10 = dVar.b(j11) - dVar.b(j12); - float b11 = dVar.b(j13) - dVar.b(j14); - dVar.c(j9, AbstractC1518b.j(b4, b8, dVar, j5, b5, b9)); - dVar.c(j13, AbstractC1518b.a(b6, b11, dVar, j11, b7, b10)); - dVar.c(j10, AbstractC1518b.l(b4, b8, dVar, j8, b5, b9)); - dVar.c(j14, AbstractC1518b.m(b6, b11, dVar, j12, b7, b10)); - return; - } - if (j4 <= 32) { - if (j4 == 32) { - m(dVar, j5, dVar2, j6 - 8); - long j15 = j5 + 2; - float b12 = dVar.b(j15); - long j16 = j5 + 3; - float b13 = dVar.b(j16); - long j17 = j5 + 4; - float b14 = dVar.b(j17); - long j18 = j5 + 5; - float b15 = dVar.b(j18); - long j19 = j5 + 6; - float b16 = dVar.b(j19); - long j20 = j5 + 7; - float b17 = dVar.b(j20); - long j21 = j5 + 8; - float b18 = dVar.b(j21); - long j22 = j5 + 9; - float b19 = dVar.b(j22); - long j23 = j5 + 10; - float b20 = dVar.b(j23); - long j24 = j5 + 11; - float b21 = dVar.b(j24); - long j25 = j5 + 14; - float b22 = dVar.b(j25); - long j26 = j5 + 15; - float b23 = dVar.b(j26); - long j27 = j5 + 16; - float b24 = dVar.b(j27); - long j28 = j5 + 17; - float b25 = dVar.b(j28); - long j29 = j5 + 20; - float b26 = dVar.b(j29); - long j30 = j5 + 21; - float b27 = dVar.b(j30); - long j31 = j5 + 22; - float b28 = dVar.b(j31); - long j32 = j5 + 23; - float b29 = dVar.b(j32); - long j33 = j5 + 24; - float b30 = dVar.b(j33); - long j34 = j5 + 25; - float b31 = dVar.b(j34); - long j35 = j5 + 26; - float b32 = dVar.b(j35); - long j36 = j5 + 27; - float b33 = dVar.b(j36); - long j37 = j5 + 28; - float b34 = dVar.b(j37); - long j38 = j5 + 29; - float b35 = dVar.b(j38); - dVar.c(j15, b24); - dVar.c(j16, b25); - dVar.c(j17, b18); - dVar.c(j18, b19); - dVar.c(j19, b30); - dVar.c(j20, b31); - dVar.c(j21, b14); - dVar.c(j22, b15); - dVar.c(j23, b26); - dVar.c(j24, b27); - dVar.c(j25, b34); - dVar.c(j26, b35); - dVar.c(j27, b12); - dVar.c(j28, b13); - dVar.c(j29, b20); - dVar.c(j30, b21); - dVar.c(j31, b32); - dVar.c(j32, b33); - dVar.c(j33, b16); - dVar.c(j34, b17); - dVar.c(j35, b28); - dVar.c(j36, b29); - dVar.c(j37, b22); - dVar.c(j38, b23); - return; - } - i(dVar, j5, dVar2, 0L); - long j39 = j5 + 2; - float b36 = dVar.b(j39); - long j40 = j5 + 3; - float b37 = dVar.b(j40); - long j41 = j5 + 6; - float b38 = dVar.b(j41); - long j42 = j5 + 7; - float b39 = dVar.b(j42); - long j43 = j5 + 8; - float b40 = dVar.b(j43); - long j44 = j5 + 9; - float b41 = dVar.b(j44); - long j45 = j5 + 12; - float b42 = dVar.b(j45); - long j46 = j5 + 13; - float b43 = dVar.b(j46); - dVar.c(j39, b40); - dVar.c(j40, b41); - dVar.c(j41, b42); - dVar.c(j42, b43); - dVar.c(j43, b36); - dVar.c(j44, b37); - dVar.c(j45, b38); - dVar.c(j46, b39); - return; - } - long j47 = j4 >> 2; - long j48 = j6 - j47; - long j49 = j4 >> 3; - long j50 = j49 * 2; - long j51 = j50 + j50; - long j52 = j51 + j50; - long j53 = j5 + j50; - long j54 = j5 + j51; - long j55 = j5 + j52; - float b44 = dVar.b(j54) + dVar.b(j5); - long j56 = j5 + 1; - long j57 = j54 + 1; - float b45 = dVar.b(j57) + dVar.b(j56); - float b46 = dVar.b(j5) - dVar.b(j54); - float b47 = dVar.b(j56) - dVar.b(j57); - float b48 = dVar.b(j55) + dVar.b(j53); - long j58 = j53 + 1; - long j59 = j55 + 1; - float b49 = dVar.b(j59) + dVar.b(j58); - float b50 = dVar.b(j53) - dVar.b(j55); - float b51 = dVar.b(j58) - dVar.b(j59); - dVar.c(j56, AbstractC1518b.j(b44, b48, dVar, j5, b45, b49)); - dVar.c(j58, AbstractC1518b.l(b44, b48, dVar, j53, b45, b49)); - dVar.c(j57, AbstractC1518b.a(b46, b51, dVar, j54, b47, b50)); - dVar.c(j59, AbstractC1518b.m(b46, b51, dVar, j55, b47, b50)); - d dVar4 = dVar2; - float b52 = dVar4.b(j48 + 1); - float b53 = dVar4.b(j48 + 2); - float b54 = dVar4.b(j48 + 3); - float f4 = 1.0f; - float f5 = 1.0f; - float f6 = 0.0f; - float f7 = 0.0f; - long j60 = 0; - int i4 = 2; - while (true) { - long j61 = i4; - if (j61 >= j49 - 2) { - break; - } - long j62 = j60 + 4; - long j63 = j48 + j62; - float b55 = (dVar4.b(j63) + f4) * b53; - long j64 = j63 + 1; - float b56 = (dVar4.b(j64) + f6) * b53; - long j65 = j63 + 2; - float b57 = (dVar4.b(j65) + f5) * b54; - float f8 = b54; - long j66 = j63 + 3; - float b58 = (dVar4.b(j66) + f7) * f8; - float b59 = dVar4.b(j63); - float b60 = dVar4.b(j64); - float b61 = dVar4.b(j65); - float b62 = dVar4.b(j66); - long j67 = j61 + j50; - long j68 = j67 + j50; - long j69 = j68 + j50; - long j70 = j5 + j67; - long j71 = j5 + j68; - long j72 = j5 + j69; - long j73 = j5 + j61; - float b63 = dVar.b(j71) + dVar.b(j73); - long j74 = j73 + 1; - float f9 = b53; - long j75 = j71 + 1; - float b64 = dVar.b(j75) + dVar.b(j74); - float b65 = dVar.b(j73) - dVar.b(j71); - float b66 = dVar.b(j74) - dVar.b(j75); - long j76 = j73 + 2; - long j77 = j71 + 2; - float b67 = dVar.b(j77) + dVar.b(j76); - long j78 = j73 + 3; - long j79 = j71 + 3; - float b68 = dVar.b(j79) + dVar.b(j78); - float b69 = dVar.b(j76) - dVar.b(j77); - float b70 = dVar.b(j78) - dVar.b(j79); - float b71 = dVar.b(j72) + dVar.b(j70); - long j80 = j70 + 1; - long j81 = j72 + 1; - float b72 = dVar.b(j81) + dVar.b(j80); - float b73 = dVar.b(j70) - dVar.b(j72); - float b74 = dVar.b(j80) - dVar.b(j81); - long j82 = j70 + 2; - long j83 = j72 + 2; - float b75 = dVar.b(j83) + dVar.b(j82); - long j84 = j70 + 3; - long j85 = j72 + 3; - float b76 = dVar.b(j85) + dVar.b(j84); - float b77 = dVar.b(j82) - dVar.b(j83); - float b78 = dVar.b(j84) - dVar.b(j85); - dVar.c(j74, AbstractC1518b.j(b63, b71, dVar, j73, b64, b72)); - dVar.c(j78, AbstractC1518b.j(b67, b75, dVar, j76, b68, b76)); - dVar.c(j80, AbstractC1518b.l(b63, b71, dVar, j70, b64, b72)); - dVar.c(j84, AbstractC1518b.l(b67, b75, dVar, j82, b68, b76)); - float f10 = b65 - b74; - float f11 = b66 + b73; - dVar.c(j71, (b55 * f10) - (b56 * f11)); - float m2 = AbstractC1518b.m(f10 * b56, f11 * b55, dVar, j75, b69, b78); - float f12 = b70 + b77; - dVar.c(j77, (b59 * m2) - (b60 * f12)); - float j86 = AbstractC1518b.j(m2 * b60, f12 * b59, dVar, j79, b65, b74); - float f13 = b66 - b73; - dVar.c(j72, (b58 * f13) + (b57 * j86)); - float a4 = AbstractC1518b.a(f13 * b57, b58 * j86, dVar, j81, b69, b78); - float f14 = b70 - b77; - dVar.c(j83, (b62 * f14) + (b61 * a4)); - dVar.c(j85, (f14 * b61) - (b62 * a4)); - long j87 = j50 - j61; - long j88 = j87 + j50; - long j89 = j88 + j50; - long j90 = j5 + j87; - long j91 = j5 + j88; - long j92 = j5 + j89; - long j93 = j5 + j89 + j50; - float b79 = dVar.b(j92) + dVar.b(j90); - long j94 = j90 + 1; - long j95 = j92 + 1; - float b80 = dVar.b(j95) + dVar.b(j94); - float b81 = dVar.b(j90) - dVar.b(j92); - float b82 = dVar.b(j94) - dVar.b(j95); - long j96 = j90 - 2; - long j97 = j92 - 2; - float b83 = dVar.b(j97) + dVar.b(j96); - long j98 = j90 - 1; - long j99 = j92 - 1; - float b84 = dVar.b(j99) + dVar.b(j98); - float b85 = dVar.b(j96) - dVar.b(j97); - float b86 = dVar.b(j98) - dVar.b(j99); - float b87 = dVar.b(j93) + dVar.b(j91); - long j100 = j91 + 1; - long j101 = j93 + 1; - float b88 = dVar.b(j101) + dVar.b(j100); - float b89 = dVar.b(j91) - dVar.b(j93); - float b90 = dVar.b(j100) - dVar.b(j101); - long j102 = j91 - 2; - long j103 = j93 - 2; - float b91 = dVar.b(j103) + dVar.b(j102); - long j104 = j91 - 1; - long j105 = j93 - 1; - float b92 = dVar.b(j105) + dVar.b(j104); - float b93 = dVar.b(j102) - dVar.b(j103); - float b94 = dVar.b(j104) - dVar.b(j105); - dVar.c(j94, AbstractC1518b.j(b79, b87, dVar, j90, b80, b88)); - dVar.c(j98, AbstractC1518b.j(b83, b91, dVar, j96, b84, b92)); - dVar.c(j100, AbstractC1518b.l(b79, b87, dVar, j91, b80, b88)); - dVar.c(j104, AbstractC1518b.l(b83, b91, dVar, j102, b84, b92)); - float f15 = b81 - b90; - float f16 = b82 + b89; - dVar.c(j92, (b56 * f15) - (b55 * f16)); - float m3 = AbstractC1518b.m(f15 * b55, f16 * b56, dVar, j95, b85, b94); - float f17 = b86 + b93; - dVar.c(j97, (b60 * m3) - (b59 * f17)); - float j106 = AbstractC1518b.j(m3 * b59, f17 * b60, dVar, j99, b81, b90); - float f18 = b82 - b89; - dVar.c(j93, (b57 * f18) + (b58 * j106)); - float a5 = AbstractC1518b.a(b58 * f18, b57 * j106, dVar, j101, b85, b94); - float f19 = b86 - b93; - dVar.c(j103, (b61 * f19) + (b62 * a5)); - dVar.c(j105, (b62 * f19) - (a5 * b61)); - i4 += 4; - dVar4 = dVar2; - j60 = j62; - f4 = b59; - f6 = b60; - b54 = f8; - f5 = b61; - f7 = b62; - b53 = f9; - b52 = b52; - } - float f20 = b52; - float f21 = b53; - float f22 = b54; - float f23 = (f4 + f20) * f21; - float f24 = (f6 + f20) * f21; - float f25 = (f5 - f20) * f22; - float f26 = (f7 - f20) * f22; - long j107 = j49 + j50; - long j108 = j107 + j50; - long j109 = j5 + j49; - long j110 = j5 + j107; - long j111 = j5 + j108; - long j112 = j5 + j108 + j50; - long j113 = j109 - 2; - long j114 = j111 - 2; - float b95 = dVar.b(j114) + dVar.b(j113); - long j115 = j109 - 1; - long j116 = j111 - 1; - float b96 = dVar.b(j116) + dVar.b(j115); - float b97 = dVar.b(j113) - dVar.b(j114); - float b98 = dVar.b(j115) - dVar.b(j116); - long j117 = j110 - 2; - long j118 = j112 - 2; - float b99 = dVar.b(j118) + dVar.b(j117); - long j119 = j110 - 1; - long j120 = j112 - 1; - float b100 = dVar.b(j120) + dVar.b(j119); - float b101 = dVar.b(j117) - dVar.b(j118); - float b102 = dVar.b(j119) - dVar.b(j120); - dVar.c(j115, AbstractC1518b.j(b95, b99, dVar, j113, b96, b100)); - dVar.c(j119, AbstractC1518b.l(b95, b99, dVar, j117, b96, b100)); - float f27 = b97 - b102; - float f28 = b98 + b101; - dVar.c(j114, (f23 * f27) - (f24 * f28)); - float j121 = AbstractC1518b.j(f27 * f24, f28 * f23, dVar, j116, b97, b102); - float f29 = b98 - b101; - dVar.c(j118, (f26 * f29) + (f25 * j121)); - dVar.c(j120, (f25 * f29) - (j121 * f26)); - float b103 = dVar.b(j109) + dVar.b(j111); - long j122 = j109 + 1; - long j123 = j111 + 1; - float b104 = dVar.b(j123) + dVar.b(j122); - float b105 = dVar.b(j109) - dVar.b(j111); - float b106 = dVar.b(j122) - dVar.b(j123); - float b107 = dVar.b(j110) + dVar.b(j112); - long j124 = j110 + 1; - long j125 = j112 + 1; - float b108 = dVar.b(j125) + dVar.b(j124); - float b109 = dVar.b(j110) - dVar.b(j112); - float b110 = dVar.b(j124) - dVar.b(j125); - dVar.c(j122, AbstractC1518b.j(b103, b107, dVar, j109, b104, b108)); - dVar.c(j124, AbstractC1518b.l(b103, b107, dVar, j110, b104, b108)); - float f30 = b105 - b110; - float f31 = b106 + b109; - dVar.c(j111, (f30 - f31) * f20); - dVar.c(j123, (f31 + f30) * f20); - float f32 = b105 + b110; - float f33 = b106 - b109; - float f34 = -f20; - dVar.c(j112, (f32 + f33) * f34); - dVar.c(j125, (f33 - f32) * f34); - long j126 = j109 + 2; - long j127 = j111 + 2; - float b111 = dVar.b(j126) + dVar.b(j127); - long j128 = j109 + 3; - long j129 = j111 + 3; - float b112 = dVar.b(j129) + dVar.b(j128); - float b113 = dVar.b(j126) - dVar.b(j127); - float b114 = dVar.b(j128) - dVar.b(j129); - long j130 = j110 + 2; - long j131 = j112 + 2; - float b115 = dVar.b(j131) + dVar.b(j130); - long j132 = j110 + 3; - long j133 = j112 + 3; - float b116 = dVar.b(j133) + dVar.b(j132); - float b117 = dVar.b(j130) - dVar.b(j131); - float b118 = dVar.b(j132) - dVar.b(j133); - dVar.c(j128, AbstractC1518b.j(b111, b115, dVar, j126, b112, b116)); - dVar.c(j132, AbstractC1518b.l(b111, b115, dVar, j130, b112, b116)); - float f35 = b113 - b118; - float f36 = b114 + b117; - dVar.c(j127, (f24 * f35) - (f23 * f36)); - float j134 = AbstractC1518b.j(f35 * f23, f36 * f24, dVar, j129, b113, b118); - float f37 = b114 - b117; - dVar.c(j131, (f25 * f37) + (f26 * j134)); - dVar.c(j133, (f26 * f37) - (f25 * j134)); - if (k3.c.c > 1 && j4 >= 8192) { - D(j4, j5, j6, dVar, dVar2); - } else if (j4 > 512) { - B(j4, j5, j6, dVar, dVar2); - } else if (j4 > 128) { - v(j4, 1L, j5, j6, dVar, dVar2); - } else { - t(j4, j5, j6, dVar, dVar2); - dVar3 = dVar; - j7 = j47; - long j135 = 1; - while (j7 > 8) { - j135 <<= 1; - j7 >>= 2; - } - long j136 = j4 >> 1; - long j137 = j135 * 4; - if (j7 == 8) { - long j138 = j135; - long j139 = 0; - while (j139 < j138) { - long j140 = j139 * 4; - long j141 = 0; - while (j141 < j139) { - long b119 = sVar.b(j138 + j139) + (j141 * 4); - long b120 = sVar.b(j138 + j141) + j140; - long j142 = j5 + b119; - long j143 = j5 + b120; - long j144 = j139; - float b121 = dVar3.b(j142); - long j145 = j140; - long j146 = j142 + 1; - float b122 = dVar3.b(j146); - long j147 = j141; - float b123 = dVar3.b(j143); - long j148 = j143 + 1; - float b124 = dVar3.b(j148); - dVar3.c(j142, b123); - dVar3.c(j146, b124); - dVar3.c(j143, b121); - dVar3.c(j148, b122); - long j149 = b119 + j137; - long j150 = b120 + j137; - long j151 = j5 + j149; - long j152 = j5 + j150; - float b125 = dVar3.b(j151); - long j153 = j151 + 1; - float b126 = dVar3.b(j153); - float b127 = dVar3.b(j152); - long j154 = j152 + 1; - float b128 = dVar3.b(j154); - dVar3.c(j151, b127); - dVar3.c(j153, b128); - dVar3.c(j152, b125); - dVar3.c(j154, b126); - long j155 = j149 + j136; - long j156 = j150 + 2; - long j157 = j5 + j155; - long j158 = j5 + j156; - float b129 = dVar3.b(j157); - long j159 = j157 + 1; - float b130 = dVar3.b(j159); - float b131 = dVar3.b(j158); - long j160 = j158 + 1; - float b132 = dVar3.b(j160); - dVar3.c(j157, b131); - dVar3.c(j159, b132); - dVar3.c(j158, b129); - dVar3.c(j160, b130); - long j161 = j155 - j137; - long j162 = j156 - j137; - long j163 = j5 + j161; - long j164 = j5 + j162; - float b133 = dVar3.b(j163); - long j165 = j163 + 1; - float b134 = dVar3.b(j165); - float b135 = dVar3.b(j164); - long j166 = j164 + 1; - float b136 = dVar3.b(j166); - dVar3.c(j163, b135); - dVar3.c(j165, b136); - dVar3.c(j164, b133); - dVar3.c(j166, b134); - long j167 = j161 + 2; - long j168 = j162 + j136; - long j169 = j5 + j167; - long j170 = j5 + j168; - float b137 = dVar3.b(j169); - long j171 = j169 + 1; - float b138 = dVar3.b(j171); - float b139 = dVar3.b(j170); - long j172 = j170 + 1; - float b140 = dVar3.b(j172); - dVar3.c(j169, b139); - dVar3.c(j171, b140); - dVar3.c(j170, b137); - dVar3.c(j172, b138); - long j173 = j167 + j137; - long j174 = j168 + j137; - long j175 = j5 + j173; - long j176 = j5 + j174; - float b141 = dVar3.b(j175); - long j177 = j175 + 1; - float b142 = dVar3.b(j177); - float b143 = dVar3.b(j176); - long j178 = j176 + 1; - float b144 = dVar3.b(j178); - dVar3.c(j175, b143); - dVar3.c(j177, b144); - dVar3.c(j176, b141); - dVar3.c(j178, b142); - long j179 = j173 - j136; - long j180 = j174 - 2; - long j181 = j5 + j179; - long j182 = j5 + j180; - float b145 = dVar3.b(j181); - long j183 = j181 + 1; - float b146 = dVar3.b(j183); - float b147 = dVar3.b(j182); - long j184 = j182 + 1; - float b148 = dVar3.b(j184); - dVar3.c(j181, b147); - dVar3.c(j183, b148); - dVar3.c(j182, b145); - dVar3.c(j184, b146); - long j185 = j5 + (j179 - j137); - long j186 = j5 + (j180 - j137); - float b149 = dVar3.b(j185); - long j187 = j185 + 1; - float b150 = dVar3.b(j187); - float b151 = dVar3.b(j186); - long j188 = j186 + 1; - float b152 = dVar3.b(j188); - dVar3.c(j185, b151); - dVar3.c(j187, b152); - dVar3.c(j186, b149); - dVar3.c(j188, b150); - j141 = j147 + 1; - j139 = j144; - j140 = j145; - } - long j189 = j139; - long b153 = sVar.b(j138 + j189) + j140; - long j190 = b153 + 2; - long j191 = b153 + j136; - long j192 = j5 + j190; - long j193 = j5 + j191; - float b154 = dVar3.b(j192); - long j194 = j192 + 1; - float b155 = dVar3.b(j194); - float b156 = dVar3.b(j193); - long j195 = j193 + 1; - float b157 = dVar3.b(j195); - dVar3.c(j192, b156); - dVar3.c(j194, b157); - dVar3.c(j193, b154); - dVar3.c(j195, b155); - long j196 = j5 + j190 + j137; - long j197 = j5 + j191 + j137; - float b158 = dVar3.b(j196); - long j198 = j196 + 1; - float b159 = dVar3.b(j198); - float b160 = dVar3.b(j197); - long j199 = j197 + 1; - float b161 = dVar3.b(j199); - dVar3.c(j196, b160); - dVar3.c(j198, b161); - dVar3.c(j197, b158); - dVar3.c(j199, b159); - j139 = j189 + 1; - } - return; - } - long j200 = 0; - while (j200 < j135) { - long j201 = j200 * 4; - long j202 = 0; - while (j202 < j200) { - long j203 = j135; - long b162 = (sVar.b(j203 + j200) * 2) + (j202 * 4); - long b163 = (sVar.b(j203 + j202) * 2) + j201; - long j204 = j5 + b162; - long j205 = j136; - long j206 = j5 + b163; - long j207 = j137; - float b164 = dVar3.b(j204); - long j208 = j200; - long j209 = j204 + 1; - float b165 = dVar3.b(j209); - long j210 = j201; - float b166 = dVar3.b(j206); - long j211 = j202; - long j212 = j206 + 1; - float b167 = dVar3.b(j212); - dVar3.c(j204, b166); - dVar3.c(j209, b167); - dVar3.c(j206, b164); - dVar3.c(j212, b165); - long j213 = b162 + j207; - long j214 = j203 * 8; - long j215 = b163 + j214; - long j216 = j5 + j213; - long j217 = j5 + j215; - float b168 = dVar3.b(j216); - long j218 = j216 + 1; - float b169 = dVar3.b(j218); - float b170 = dVar3.b(j217); - long j219 = j217 + 1; - float b171 = dVar3.b(j219); - dVar3.c(j216, b170); - dVar3.c(j218, b171); - dVar3.c(j217, b168); - dVar3.c(j219, b169); - long j220 = j213 + j207; - long j221 = j215 - j207; - long j222 = j5 + j220; - long j223 = j5 + j221; - float b172 = dVar3.b(j222); - long j224 = j222 + 1; - float b173 = dVar3.b(j224); - float b174 = dVar3.b(j223); - long j225 = j223 + 1; - float b175 = dVar3.b(j225); - dVar3.c(j222, b174); - dVar3.c(j224, b175); - dVar3.c(j223, b172); - dVar3.c(j225, b173); - long j226 = j220 + j207; - long j227 = j221 + j214; - long j228 = j5 + j226; - long j229 = j5 + j227; - float b176 = dVar3.b(j228); - long j230 = j228 + 1; - float b177 = dVar3.b(j230); - float b178 = dVar3.b(j229); - long j231 = j229 + 1; - float b179 = dVar3.b(j231); - dVar3.c(j228, b178); - dVar3.c(j230, b179); - dVar3.c(j229, b176); - dVar3.c(j231, b177); - long j232 = j226 + j205; - long j233 = j227 + 2; - long j234 = j5 + j232; - long j235 = j5 + j233; - float b180 = dVar3.b(j234); - long j236 = j234 + 1; - float b181 = dVar3.b(j236); - float b182 = dVar3.b(j235); - long j237 = j235 + 1; - float b183 = dVar3.b(j237); - dVar3.c(j234, b182); - dVar3.c(j236, b183); - dVar3.c(j235, b180); - dVar3.c(j237, b181); - long j238 = j232 - j207; - long j239 = j233 - j214; - long j240 = j5 + j238; - long j241 = j5 + j239; - float b184 = dVar3.b(j240); - long j242 = j240 + 1; - float b185 = dVar3.b(j242); - float b186 = dVar3.b(j241); - long j243 = j241 + 1; - float b187 = dVar3.b(j243); - dVar3.c(j240, b186); - dVar3.c(j242, b187); - dVar3.c(j241, b184); - dVar3.c(j243, b185); - long j244 = j238 - j207; - long j245 = j239 + j207; - long j246 = j5 + j244; - long j247 = j5 + j245; - float b188 = dVar3.b(j246); - long j248 = j246 + 1; - float b189 = dVar3.b(j248); - float b190 = dVar3.b(j247); - long j249 = j247 + 1; - float b191 = dVar3.b(j249); - dVar3.c(j246, b190); - dVar3.c(j248, b191); - dVar3.c(j247, b188); - dVar3.c(j249, b189); - long j250 = j244 - j207; - long j251 = j245 - j214; - long j252 = j5 + j250; - long j253 = j5 + j251; - float b192 = dVar3.b(j252); - long j254 = j252 + 1; - float b193 = dVar3.b(j254); - float b194 = dVar3.b(j253); - long j255 = j253 + 1; - float b195 = dVar3.b(j255); - dVar3.c(j252, b194); - dVar3.c(j254, b195); - dVar3.c(j253, b192); - dVar3.c(j255, b193); - long j256 = j250 + 2; - long j257 = j251 + j205; - long j258 = j5 + j256; - long j259 = j5 + j257; - float b196 = dVar3.b(j258); - long j260 = j258 + 1; - float b197 = dVar3.b(j260); - float b198 = dVar3.b(j259); - long j261 = j259 + 1; - float b199 = dVar3.b(j261); - dVar3.c(j258, b198); - dVar3.c(j260, b199); - dVar3.c(j259, b196); - dVar3.c(j261, b197); - long j262 = j256 + j207; - long j263 = j257 + j214; - long j264 = j5 + j262; - long j265 = j5 + j263; - float b200 = dVar3.b(j264); - long j266 = j264 + 1; - float b201 = dVar3.b(j266); - float b202 = dVar3.b(j265); - long j267 = j265 + 1; - float b203 = dVar3.b(j267); - dVar3.c(j264, b202); - dVar3.c(j266, b203); - dVar3.c(j265, b200); - dVar3.c(j267, b201); - long j268 = j262 + j207; - long j269 = j263 - j207; - long j270 = j5 + j268; - long j271 = j5 + j269; - float b204 = dVar3.b(j270); - long j272 = j270 + 1; - float b205 = dVar3.b(j272); - float b206 = dVar3.b(j271); - long j273 = j271 + 1; - float b207 = dVar3.b(j273); - dVar3.c(j270, b206); - dVar3.c(j272, b207); - dVar3.c(j271, b204); - dVar3.c(j273, b205); - long j274 = j268 + j207; - long j275 = j269 + j214; - long j276 = j5 + j274; - long j277 = j5 + j275; - float b208 = dVar3.b(j276); - long j278 = j276 + 1; - float b209 = dVar3.b(j278); - float b210 = dVar3.b(j277); - long j279 = j277 + 1; - float b211 = dVar3.b(j279); - dVar3.c(j276, b210); - dVar3.c(j278, b211); - dVar3.c(j277, b208); - dVar3.c(j279, b209); - long j280 = j274 - j205; - long j281 = j275 - 2; - long j282 = j5 + j280; - long j283 = j5 + j281; - float b212 = dVar3.b(j282); - long j284 = j282 + 1; - float b213 = dVar3.b(j284); - float b214 = dVar3.b(j283); - long j285 = j283 + 1; - float b215 = dVar3.b(j285); - dVar3.c(j282, b214); - dVar3.c(j284, b215); - dVar3.c(j283, b212); - dVar3.c(j285, b213); - long j286 = j280 - j207; - long j287 = j281 - j214; - long j288 = j5 + j286; - long j289 = j5 + j287; - float b216 = dVar3.b(j288); - long j290 = j288 + 1; - float b217 = dVar3.b(j290); - float b218 = dVar3.b(j289); - long j291 = j289 + 1; - float b219 = dVar3.b(j291); - dVar3.c(j288, b218); - dVar3.c(j290, b219); - dVar3.c(j289, b216); - dVar3.c(j291, b217); - long j292 = j286 - j207; - long j293 = j287 + j207; - long j294 = j5 + j292; - long j295 = j5 + j293; - float b220 = dVar3.b(j294); - long j296 = j294 + 1; - float b221 = dVar3.b(j296); - float b222 = dVar3.b(j295); - long j297 = j295 + 1; - float b223 = dVar3.b(j297); - dVar3.c(j294, b222); - dVar3.c(j296, b223); - dVar3.c(j295, b220); - dVar3.c(j297, b221); - long j298 = j5 + (j292 - j207); - long j299 = j5 + (j293 - j214); - float b224 = dVar3.b(j298); - long j300 = j298 + 1; - float b225 = dVar3.b(j300); - float b226 = dVar3.b(j299); - long j301 = j299 + 1; - float b227 = dVar3.b(j301); - dVar3.c(j298, b226); - dVar3.c(j300, b227); - dVar3.c(j299, b224); - dVar3.c(j301, b225); - j202 = j211 + 1; - j135 = j203; - j136 = j205; - j137 = j207; - j200 = j208; - j201 = j210; - } - long j302 = j135; - long j303 = j136; - long j304 = j137; - long j305 = j200; - long b228 = (sVar.b(j302 + j305) * 2) + j201; - long j306 = b228 + 2; - long j307 = b228 + j303; - long j308 = j5 + j306; - long j309 = j5 + j307; - float b229 = dVar3.b(j308); - long j310 = j308 + 1; - float b230 = dVar3.b(j310); - float b231 = dVar3.b(j309); - long j311 = j309 + 1; - float b232 = dVar3.b(j311); - dVar3.c(j308, b231); - dVar3.c(j310, b232); - dVar3.c(j309, b229); - dVar3.c(j311, b230); - long j312 = j306 + j304; - long j313 = j302 * 8; - long j314 = j307 + j313; - long j315 = j5 + j312; - long j316 = j5 + j314; - float b233 = dVar3.b(j315); - long j317 = j315 + 1; - float b234 = dVar3.b(j317); - float b235 = dVar3.b(j316); - long j318 = j316 + 1; - float b236 = dVar3.b(j318); - dVar3.c(j315, b235); - dVar3.c(j317, b236); - dVar3.c(j316, b233); - dVar3.c(j318, b234); - long j319 = j312 + j304; - long j320 = j314 - j304; - long j321 = j5 + j319; - long j322 = j5 + j320; - float b237 = dVar3.b(j321); - long j323 = j321 + 1; - float b238 = dVar3.b(j323); - float b239 = dVar3.b(j322); - long j324 = j322 + 1; - float b240 = dVar3.b(j324); - dVar3.c(j321, b239); - dVar3.c(j323, b240); - dVar3.c(j322, b237); - dVar3.c(j324, b238); - long j325 = j319 - 2; - long j326 = j320 - j303; - long j327 = j5 + j325; - long j328 = j5 + j326; - float b241 = dVar3.b(j327); - long j329 = j327 + 1; - float b242 = dVar3.b(j329); - float b243 = dVar3.b(j328); - long j330 = j328 + 1; - float b244 = dVar3.b(j330); - dVar3.c(j327, b243); - dVar3.c(j329, b244); - dVar3.c(j328, b241); - dVar3.c(j330, b242); - long j331 = j303 + 2; - long j332 = j325 + j331; - long j333 = j326 + j331; - long j334 = j5 + j332; - long j335 = j5 + j333; - float b245 = dVar3.b(j334); - long j336 = j334 + 1; - float b246 = dVar3.b(j336); - float b247 = dVar3.b(j335); - long j337 = j335 + 1; - float b248 = dVar3.b(j337); - dVar3.c(j334, b247); - dVar3.c(j336, b248); - dVar3.c(j335, b245); - dVar3.c(j337, b246); - long j338 = (j313 - 2) + j333; - long j339 = j5 + (j332 - (j303 - j304)); - long j340 = j5 + j338; - float b249 = dVar3.b(j339); - long j341 = j339 + 1; - float b250 = dVar3.b(j341); - float b251 = dVar3.b(j340); - long j342 = j340 + 1; - float b252 = dVar3.b(j342); - dVar3.c(j339, b251); - dVar3.c(j341, b252); - dVar3.c(j340, b249); - dVar3.c(j342, b250); - j200 = j305 + 1; - j135 = j302; - j136 = j303; - j137 = j304; - } - return; - } - dVar3 = dVar; - j7 = j47; - long j1352 = 1; - while (j7 > 8) { - } - long j1362 = j4 >> 1; - long j1372 = j1352 * 4; - if (j7 == 8) { - } - } - - public static void s(int i4, int i5, int i6, float[] fArr, float[] fArr2) { - if (i4 == 128) { - int i7 = i6 - 8; - n(fArr, i5, fArr2, i7); - p(fArr, i5 + 32, fArr2, i6 - 32); - n(fArr, i5 + 64, fArr2, i7); - n(fArr, i5 + 96, fArr2, i7); - return; - } - int i8 = i6 - 8; - j(fArr, i5, fArr2, i8); - l(fArr, i5 + 16, fArr2, i8); - j(fArr, i5 + 32, fArr2, i8); - j(fArr, i5 + 48, fArr2, i8); - } - - public static void t(long j4, long j5, long j6, d dVar, d dVar2) { - if (j4 == 128) { - long j7 = j6 - 8; - m(dVar, j5, dVar2, j7); - o(dVar, j5 + 32, dVar2, j6 - 32); - m(dVar, j5 + 64, dVar2, j7); - m(dVar, j5 + 96, dVar2, j7); - return; - } - long j8 = j6 - 8; - i(dVar, j5, dVar2, j8); - k(dVar, j5 + 16, dVar2, j8); - i(dVar, j5 + 32, dVar2, j8); - i(dVar, j5 + 48, dVar2, j8); - } - - public static void u(int i4, int i5, float[] fArr, int i6, int i7, float[] fArr2) { - if (i4 == 512) { - int i8 = i7 - 64; - w(128, i6, i8, fArr, fArr2); - int i9 = i7 - 8; - n(fArr, i6, fArr2, i9); - int i10 = i7 - 32; - p(fArr, i6 + 32, fArr2, i10); - n(fArr, i6 + 64, fArr2, i9); - n(fArr, i6 + 96, fArr2, i9); - int i11 = i6 + 128; - int i12 = i7 - 128; - y(128, i11, i12, fArr, fArr2); - n(fArr, i11, fArr2, i9); - p(fArr, i6 + 160, fArr2, i10); - n(fArr, i6 + 192, fArr2, i9); - p(fArr, i6 + 224, fArr2, i10); - int i13 = i6 + 256; - w(128, i13, i8, fArr, fArr2); - n(fArr, i13, fArr2, i9); - p(fArr, i6 + 288, fArr2, i10); - n(fArr, i6 + 320, fArr2, i9); - n(fArr, i6 + 352, fArr2, i9); - if (i5 != 0) { - w(128, i6 + 384, i8, fArr, fArr2); - n(fArr, i6 + 480, fArr2, i9); - } else { - y(128, i6 + 384, i12, fArr, fArr2); - p(fArr, i6 + 480, fArr2, i10); - } - n(fArr, i6 + 384, fArr2, i9); - p(fArr, i6 + 416, fArr2, i10); - n(fArr, i6 + 448, fArr2, i9); - return; - } - int i14 = i7 - 32; - w(64, i6, i14, fArr, fArr2); - int i15 = i7 - 8; - j(fArr, i6, fArr2, i15); - l(fArr, i6 + 16, fArr2, i15); - j(fArr, i6 + 32, fArr2, i15); - j(fArr, i6 + 48, fArr2, i15); - int i16 = i6 + 64; - int i17 = i7 - 64; - y(64, i16, i17, fArr, fArr2); - j(fArr, i16, fArr2, i15); - l(fArr, i6 + 80, fArr2, i15); - j(fArr, i6 + 96, fArr2, i15); - l(fArr, i6 + 112, fArr2, i15); - int i18 = i6 + 128; - w(64, i18, i14, fArr, fArr2); - j(fArr, i18, fArr2, i15); - l(fArr, i6 + 144, fArr2, i15); - j(fArr, i6 + 160, fArr2, i15); - j(fArr, i6 + 176, fArr2, i15); - if (i5 != 0) { - w(64, i6 + 192, i14, fArr, fArr2); - j(fArr, i6 + 240, fArr2, i15); - } else { - y(64, i6 + 192, i17, fArr, fArr2); - l(fArr, i6 + 240, fArr2, i15); - } - j(fArr, i6 + 192, fArr2, i15); - l(fArr, i6 + 208, fArr2, i15); - j(fArr, i6 + 224, fArr2, i15); - } - - public static void v(long j4, long j5, long j6, long j7, d dVar, d dVar2) { - long j8; - if (j4 == 512) { - long j9 = j7 - 64; - x(128L, j6, j9, dVar, dVar2); - long j10 = j7 - 8; - m(dVar, j6, dVar2, j10); - long j11 = j7 - 32; - o(dVar, j6 + 32, dVar2, j11); - m(dVar, j6 + 64, dVar2, j10); - m(dVar, j6 + 96, dVar2, j10); - long j12 = j6 + 128; - long j13 = j7 - 128; - z(128L, j12, j13, dVar, dVar2); - m(dVar, j12, dVar2, j10); - o(dVar, j6 + 160, dVar2, j11); - m(dVar, j6 + 192, dVar2, j10); - o(dVar, j6 + 224, dVar2, j11); - long j14 = j6 + 256; - x(128L, j14, j9, dVar, dVar2); - m(dVar, j14, dVar2, j10); - o(dVar, j6 + 288, dVar2, j11); - m(dVar, j6 + 320, dVar2, j10); - m(dVar, j6 + 352, dVar2, j10); - if (j5 != 0) { - x(128L, j6 + 384, j9, dVar, dVar2); - m(dVar, j6 + 480, dVar2, j10); - } else { - z(128L, j6 + 384, j13, dVar, dVar2); - o(dVar, j6 + 480, dVar2, j11); - } - m(dVar, j6 + 384, dVar2, j10); - o(dVar, j6 + 416, dVar2, j11); - m(dVar, j6 + 448, dVar2, j10); - return; - } - long j15 = j7 - 32; - x(64L, j6, j15, dVar, dVar2); - long j16 = j7 - 8; - i(dVar, j6, dVar2, j16); - k(dVar, j6 + 16, dVar2, j16); - i(dVar, j6 + 32, dVar2, j16); - i(dVar, j6 + 48, dVar2, j16); - long j17 = j6 + 64; - long j18 = j7 - 64; - z(64L, j17, j18, dVar, dVar2); - i(dVar, j17, dVar2, j16); - k(dVar, j6 + 80, dVar2, j16); - i(dVar, j6 + 96, dVar2, j16); - k(dVar, j6 + 112, dVar2, j16); - long j19 = j6 + 128; - x(64L, j19, j15, dVar, dVar2); - i(dVar, j19, dVar2, j16); - k(dVar, j6 + 144, dVar2, j16); - i(dVar, j6 + 160, dVar2, j16); - i(dVar, j6 + 176, dVar2, j16); - if (j5 != 0) { - x(64L, j6 + 192, j15, dVar, dVar2); - j8 = j16; - i(dVar, j6 + 240, dVar2, j8); - } else { - z(64L, j6 + 192, j18, dVar, dVar2); - j8 = j16; - k(dVar, j6 + 240, dVar2, j8); - } - i(dVar, j6 + 192, dVar2, j8); - k(dVar, j6 + 208, dVar2, j8); - i(dVar, j6 + 224, dVar2, j8); - } - - public static void w(int i4, int i5, int i6, float[] fArr, float[] fArr2) { - int i7 = i4 >> 3; - int i8 = i7 * 2; - int i9 = i8 + i8; - int i10 = i9 + i8; - int i11 = i5 + i8; - int i12 = i5 + i9; - int i13 = i5 + i10; - float f4 = fArr[i5]; - float f5 = fArr[i12]; - float f6 = f4 + f5; - int i14 = i5 + 1; - float f7 = fArr[i14]; - int i15 = i12 + 1; - float f8 = fArr[i15]; - float f9 = f7 + f8; - float f10 = f4 - f5; - float f11 = f7 - f8; - float f12 = fArr[i11]; - float f13 = fArr[i13]; - float f14 = f12 + f13; - int i16 = i11 + 1; - float f15 = fArr[i16]; - int i17 = i13 + 1; - float f16 = fArr[i17]; - float f17 = f15 + f16; - float f18 = f12 - f13; - float f19 = f15 - f16; - fArr[i5] = f6 + f14; - fArr[i14] = f9 + f17; - fArr[i11] = f6 - f14; - fArr[i16] = f9 - f17; - fArr[i12] = f10 - f19; - fArr[i15] = f11 + f18; - fArr[i13] = f10 + f19; - fArr[i17] = f11 - f18; - float f20 = fArr2[i6 + 1]; - int i18 = 0; - for (int i19 = 2; i19 < i7; i19 += 2) { - i18 += 4; - int i20 = i6 + i18; - float f21 = fArr2[i20]; - float f22 = fArr2[i20 + 1]; - float f23 = fArr2[i20 + 2]; - float f24 = fArr2[i20 + 3]; - int i21 = i19 + i8; - int i22 = i21 + i8; - int i23 = i22 + i8; - int i24 = i5 + i21; - int i25 = i5 + i22; - int i26 = i5 + i23; - int i27 = i5 + i19; - float f25 = fArr[i27]; - float f26 = fArr[i25]; - float f27 = f25 + f26; - int i28 = i27 + 1; - float f28 = fArr[i28]; - int i29 = i25 + 1; - float f29 = fArr[i29]; - float f30 = f28 + f29; - float f31 = f25 - f26; - float f32 = f28 - f29; - float f33 = fArr[i24]; - float f34 = fArr[i26]; - float f35 = f33 + f34; - int i30 = i24 + 1; - float f36 = fArr[i30]; - int i31 = i26 + 1; - float f37 = fArr[i31]; - float f38 = f36 + f37; - float f39 = f33 - f34; - float f40 = f36 - f37; - fArr[i27] = f27 + f35; - fArr[i28] = f30 + f38; - fArr[i24] = f27 - f35; - fArr[i30] = f30 - f38; - float f41 = f31 - f40; - float f42 = f32 + f39; - fArr[i25] = (f21 * f41) - (f22 * f42); - fArr[i29] = (f41 * f22) + (f42 * f21); - float f43 = f31 + f40; - float f44 = f32 - f39; - fArr[i26] = (f24 * f44) + (f23 * f43); - fArr[i31] = (f44 * f23) - (f43 * f24); - int i32 = i8 - i19; - int i33 = i32 + i8; - int i34 = i33 + i8; - int i35 = i34 + i8; - int i36 = i5 + i32; - int i37 = i5 + i33; - int i38 = i5 + i34; - int i39 = i5 + i35; - float f45 = fArr[i36]; - float f46 = fArr[i38]; - float f47 = f45 + f46; - int i40 = i36 + 1; - float f48 = fArr[i40]; - int i41 = i38 + 1; - float f49 = fArr[i41]; - float f50 = f48 + f49; - float f51 = f45 - f46; - float f52 = f48 - f49; - float f53 = fArr[i37]; - float f54 = fArr[i39]; - float f55 = f53 + f54; - int i42 = i37 + 1; - float f56 = fArr[i42]; - int i43 = i39 + 1; - float f57 = fArr[i43]; - float f58 = f56 + f57; - float f59 = f53 - f54; - float f60 = f56 - f57; - fArr[i36] = f47 + f55; - fArr[i40] = f50 + f58; - fArr[i37] = f47 - f55; - fArr[i42] = f50 - f58; - float f61 = f51 - f60; - float f62 = f52 + f59; - fArr[i38] = (f22 * f61) - (f21 * f62); - fArr[i41] = (f21 * f61) + (f22 * f62); - float f63 = f51 + f60; - float f64 = f52 - f59; - fArr[i39] = (f23 * f64) + (f24 * f63); - fArr[i43] = (f24 * f64) - (f23 * f63); - } - int i44 = i7 + i8; - int i45 = i44 + i8; - int i46 = i8 + i45; - int i47 = i5 + i7; - int i48 = i5 + i44; - int i49 = i5 + i45; - int i50 = i5 + i46; - float f65 = fArr[i47]; - float f66 = fArr[i49]; - float f67 = f65 + f66; - int i51 = i47 + 1; - float f68 = fArr[i51]; - int i52 = i49 + 1; - float f69 = fArr[i52]; - float f70 = f68 + f69; - float f71 = f65 - f66; - float f72 = f68 - f69; - float f73 = fArr[i48]; - float f74 = fArr[i50]; - float f75 = f73 + f74; - int i53 = i48 + 1; - float f76 = fArr[i53]; - int i54 = i50 + 1; - float f77 = fArr[i54]; - float f78 = f76 + f77; - float f79 = f73 - f74; - float f80 = f76 - f77; - fArr[i47] = f67 + f75; - fArr[i51] = f70 + f78; - fArr[i48] = f67 - f75; - fArr[i53] = f70 - f78; - float f81 = f71 - f80; - float f82 = f72 + f79; - fArr[i49] = (f81 - f82) * f20; - fArr[i52] = (f82 + f81) * f20; - float f83 = f71 + f80; - float f84 = f72 - f79; - float f85 = -f20; - fArr[i50] = (f83 + f84) * f85; - fArr[i54] = (f84 - f83) * f85; - } - - public static void x(long j4, long j5, long j6, d dVar, d dVar2) { - long j7 = j4 >> 3; - long j8 = j7 * 2; - long j9 = j8 + j8; - long j10 = j9 + j8; - long j11 = j5 + j8; - long j12 = j9 + j5; - long j13 = j10 + j5; - float b4 = dVar.b(j12) + dVar.b(j5); - long j14 = j5 + 1; - long j15 = j12 + 1; - float b5 = dVar.b(j15) + dVar.b(j14); - float b6 = dVar.b(j5) - dVar.b(j12); - float b7 = dVar.b(j14) - dVar.b(j15); - float b8 = dVar.b(j13) + dVar.b(j11); - long j16 = j11 + 1; - long j17 = j13 + 1; - float b9 = dVar.b(j17) + dVar.b(j16); - float b10 = dVar.b(j11) - dVar.b(j13); - float b11 = dVar.b(j16) - dVar.b(j17); - dVar.c(j14, AbstractC1518b.j(b4, b8, dVar, j5, b5, b9)); - dVar.c(j16, AbstractC1518b.l(b4, b8, dVar, j11, b5, b9)); - dVar.c(j15, AbstractC1518b.a(b6, b11, dVar, j12, b7, b10)); - dVar.c(j17, AbstractC1518b.m(b6, b11, dVar, j13, b7, b10)); - d dVar3 = dVar2; - float b12 = dVar3.b(j6 + 1); - long j18 = 0; - long j19 = 2; - while (j19 < j7) { - long j20 = j18 + 4; - long j21 = j6 + j20; - float b13 = dVar3.b(j21); - float b14 = dVar3.b(j21 + 1); - float b15 = dVar3.b(j21 + 2); - float b16 = dVar3.b(j21 + 3); - long j22 = j19 + j8; - long j23 = j22 + j8; - long j24 = j23 + j8; - long j25 = j5 + j22; - long j26 = j5 + j23; - long j27 = j5 + j24; - long j28 = j19; - long j29 = j5 + j28; - float b17 = dVar.b(j26) + dVar.b(j29); - long j30 = j29 + 1; - long j31 = j26 + 1; - float b18 = dVar.b(j31) + dVar.b(j30); - float b19 = dVar.b(j29) - dVar.b(j26); - float b20 = dVar.b(j30) - dVar.b(j31); - float b21 = dVar.b(j27) + dVar.b(j25); - long j32 = j25 + 1; - long j33 = j27 + 1; - float b22 = dVar.b(j33) + dVar.b(j32); - float b23 = dVar.b(j25) - dVar.b(j27); - float b24 = dVar.b(j32) - dVar.b(j33); - dVar.c(j30, AbstractC1518b.j(b17, b21, dVar, j29, b18, b22)); - dVar.c(j32, AbstractC1518b.l(b17, b21, dVar, j25, b18, b22)); - float f4 = b19 - b24; - float f5 = b20 + b23; - dVar.c(j26, (b13 * f4) - (b14 * f5)); - float j34 = AbstractC1518b.j(f4 * b14, f5 * b13, dVar, j31, b19, b24); - float f6 = b20 - b23; - dVar.c(j27, (b16 * f6) + (b15 * j34)); - dVar.c(j33, (f6 * b15) - (j34 * b16)); - long j35 = j8 - j28; - long j36 = j35 + j8; - long j37 = j36 + j8; - long j38 = j5 + j35; - long j39 = j5 + j36; - long j40 = j5 + j37; - long j41 = j5 + j37 + j8; - float b25 = dVar.b(j38) + dVar.b(j40); - long j42 = j38 + 1; - long j43 = j40 + 1; - float b26 = dVar.b(j43) + dVar.b(j42); - float b27 = dVar.b(j38) - dVar.b(j40); - float b28 = dVar.b(j42) - dVar.b(j43); - float b29 = dVar.b(j41) + dVar.b(j39); - long j44 = j39 + 1; - long j45 = j41 + 1; - float b30 = dVar.b(j45) + dVar.b(j44); - float b31 = dVar.b(j39) - dVar.b(j41); - float b32 = dVar.b(j44) - dVar.b(j45); - dVar.c(j42, AbstractC1518b.j(b25, b29, dVar, j38, b26, b30)); - dVar.c(j44, AbstractC1518b.l(b25, b29, dVar, j39, b26, b30)); - float f7 = b27 - b32; - float f8 = b28 + b31; - dVar.c(j40, (b14 * f7) - (b13 * f8)); - float j46 = AbstractC1518b.j(f7 * b13, f8 * b14, dVar, j43, b27, b32); - float f9 = b28 - b31; - dVar.c(j41, (b15 * f9) + (b16 * j46)); - dVar.c(j45, (b16 * f9) - (b15 * j46)); - j19 = j28 + 2; - dVar3 = dVar2; - b12 = b12; - j18 = j20; - } - float f10 = b12; - long j47 = j7 + j8; - long j48 = j47 + j8; - long j49 = j5 + j7; - long j50 = j5 + j47; - long j51 = j5 + j48; - long j52 = j5 + j48 + j8; - float b33 = dVar.b(j49) + dVar.b(j51); - long j53 = j49 + 1; - long j54 = j51 + 1; - float b34 = dVar.b(j54) + dVar.b(j53); - float b35 = dVar.b(j49) - dVar.b(j51); - float b36 = dVar.b(j53) - dVar.b(j54); - float b37 = dVar.b(j52) + dVar.b(j50); - long j55 = j50 + 1; - long j56 = j52 + 1; - float b38 = dVar.b(j56) + dVar.b(j55); - float b39 = dVar.b(j50) - dVar.b(j52); - float b40 = dVar.b(j55) - dVar.b(j56); - dVar.c(j53, AbstractC1518b.j(b33, b37, dVar, j49, b34, b38)); - dVar.c(j55, AbstractC1518b.l(b33, b37, dVar, j50, b34, b38)); - float f11 = b35 - b40; - float f12 = b36 + b39; - dVar.c(j51, (f11 - f12) * f10); - dVar.c(j54, (f12 + f11) * f10); - float f13 = b35 + b40; - float f14 = b36 - b39; - float f15 = -f10; - dVar.c(j52, (f13 + f14) * f15); - dVar.c(j56, f15 * (f14 - f13)); - } - - public static void y(int i4, int i5, int i6, float[] fArr, float[] fArr2) { - int i7 = i4 >> 3; - int i8 = i7 * 2; - float f4 = fArr2[i6 + 1]; - int i9 = i8 + i8; - int i10 = i9 + i8; - int i11 = i5 + i8; - int i12 = i5 + i9; - int i13 = i5 + i10; - float f5 = fArr[i5]; - int i14 = i12 + 1; - float f6 = fArr[i14]; - float f7 = f5 - f6; - int i15 = i5 + 1; - float f8 = fArr[i15]; - float f9 = fArr[i12]; - float f10 = f8 + f9; - float f11 = f5 + f6; - float f12 = f8 - f9; - float f13 = fArr[i11]; - int i16 = i13 + 1; - float f14 = fArr[i16]; - float f15 = f13 - f14; - int i17 = i11 + 1; - float f16 = fArr[i17]; - float f17 = fArr[i13]; - float f18 = f16 + f17; - float f19 = f13 + f14; - float f20 = f16 - f17; - float f21 = (f15 - f18) * f4; - float f22 = (f18 + f15) * f4; - fArr[i5] = f7 + f21; - fArr[i15] = f10 + f22; - fArr[i11] = f7 - f21; - fArr[i17] = f10 - f22; - float f23 = (f19 - f20) * f4; - float f24 = (f20 + f19) * f4; - fArr[i12] = f11 - f24; - fArr[i14] = f12 + f23; - fArr[i13] = f11 + f24; - fArr[i16] = f12 - f23; - int i18 = i7 * 4; - int i19 = 0; - for (int i20 = 2; i20 < i7; i20 += 2) { - i19 += 4; - int i21 = i6 + i19; - float f25 = fArr2[i21]; - float f26 = fArr2[i21 + 1]; - float f27 = fArr2[i21 + 2]; - float f28 = fArr2[i21 + 3]; - i18 -= 4; - int i22 = i6 + i18; - float f29 = fArr2[i22]; - float f30 = fArr2[i22 + 1]; - float f31 = fArr2[i22 + 2]; - float f32 = fArr2[i22 + 3]; - int i23 = i20 + i8; - int i24 = i23 + i8; - int i25 = i24 + i8; - int i26 = i5 + i23; - int i27 = i5 + i24; - int i28 = i5 + i25; - int i29 = i5 + i20; - float f33 = fArr[i29]; - int i30 = i27 + 1; - float f34 = fArr[i30]; - float f35 = f33 - f34; - int i31 = i29 + 1; - float f36 = fArr[i31]; - float f37 = fArr[i27]; - float f38 = f36 + f37; - float f39 = f33 + f34; - float f40 = f36 - f37; - float f41 = fArr[i26]; - int i32 = i28 + 1; - float f42 = fArr[i32]; - float f43 = f41 - f42; - int i33 = i26 + 1; - float f44 = fArr[i33]; - float f45 = fArr[i28]; - float f46 = f44 + f45; - float f47 = f41 + f42; - float f48 = f44 - f45; - float f49 = (f25 * f35) - (f26 * f38); - float f50 = (f35 * f26) + (f38 * f25); - float f51 = (f30 * f43) - (f29 * f46); - float f52 = (f43 * f29) + (f46 * f30); - fArr[i29] = f49 + f51; - fArr[i31] = f50 + f52; - fArr[i26] = f49 - f51; - fArr[i33] = f50 - f52; - float f53 = (f28 * f40) + (f27 * f39); - float f54 = (f40 * f27) - (f39 * f28); - float f55 = (f31 * f48) + (f32 * f47); - float f56 = (f48 * f32) - (f47 * f31); - fArr[i27] = f53 + f55; - fArr[i30] = f54 + f56; - fArr[i28] = f53 - f55; - fArr[i32] = f54 - f56; - int i34 = i8 - i20; - int i35 = i34 + i8; - int i36 = i35 + i8; - int i37 = i36 + i8; - int i38 = i5 + i34; - int i39 = i5 + i35; - int i40 = i5 + i36; - int i41 = i5 + i37; - float f57 = fArr[i38]; - int i42 = i40 + 1; - float f58 = fArr[i42]; - float f59 = f57 - f58; - int i43 = i38 + 1; - float f60 = fArr[i43]; - float f61 = fArr[i40]; - float f62 = f60 + f61; - float f63 = f57 + f58; - float f64 = f60 - f61; - float f65 = fArr[i39]; - int i44 = i41 + 1; - float f66 = fArr[i44]; - float f67 = f65 - f66; - int i45 = i39 + 1; - float f68 = fArr[i45]; - float f69 = fArr[i41]; - float f70 = f68 + f69; - float f71 = f65 + f66; - float f72 = f68 - f69; - float f73 = (f29 * f59) - (f30 * f62); - float f74 = (f30 * f59) + (f29 * f62); - float f75 = (f26 * f67) - (f25 * f70); - float f76 = (f25 * f67) + (f26 * f70); - fArr[i38] = f73 + f75; - fArr[i43] = f74 + f76; - fArr[i39] = f73 - f75; - fArr[i45] = f74 - f76; - float f77 = (f32 * f64) + (f31 * f63); - float f78 = (f31 * f64) - (f32 * f63); - float f79 = (f27 * f72) + (f28 * f71); - float f80 = (f28 * f72) - (f27 * f71); - fArr[i40] = f77 + f79; - fArr[i42] = f78 + f80; - fArr[i41] = f77 - f79; - fArr[i44] = f78 - f80; - } - int i46 = i6 + i8; - float f81 = fArr2[i46]; - float f82 = fArr2[i46 + 1]; - int i47 = i7 + i8; - int i48 = i47 + i8; - int i49 = i8 + i48; - int i50 = i5 + i7; - int i51 = i5 + i47; - int i52 = i5 + i48; - int i53 = i5 + i49; - float f83 = fArr[i50]; - int i54 = i52 + 1; - float f84 = fArr[i54]; - float f85 = f83 - f84; - int i55 = i50 + 1; - float f86 = fArr[i55]; - float f87 = fArr[i52]; - float f88 = f86 + f87; - float f89 = f83 + f84; - float f90 = f86 - f87; - float f91 = fArr[i51]; - int i56 = i53 + 1; - float f92 = fArr[i56]; - float f93 = f91 - f92; - int i57 = i51 + 1; - float f94 = fArr[i57]; - float f95 = fArr[i53]; - float f96 = f94 + f95; - float f97 = f91 + f92; - float f98 = f94 - f95; - float f99 = (f81 * f85) - (f82 * f88); - float f100 = (f85 * f82) + (f88 * f81); - float f101 = (f82 * f93) - (f81 * f96); - float f102 = (f93 * f81) + (f96 * f82); - fArr[i50] = f99 + f101; - fArr[i55] = f100 + f102; - fArr[i51] = f99 - f101; - fArr[i57] = f100 - f102; - float f103 = (f82 * f89) - (f81 * f90); - float f104 = (f89 * f81) + (f90 * f82); - float f105 = (f81 * f97) - (f82 * f98); - float f106 = (f82 * f97) + (f81 * f98); - fArr[i52] = f103 - f105; - fArr[i54] = f104 - f106; - fArr[i53] = f103 + f105; - fArr[i56] = f104 + f106; - } - - public static void z(long j4, long j5, long j6, d dVar, d dVar2) { - long j7 = j4 >> 3; - long j8 = j7 * 2; - float b4 = dVar2.b(j6 + 1); - long j9 = j8 + j8; - long j10 = j9 + j8; - long j11 = j5 + j8; - long j12 = j9 + j5; - long j13 = j10 + j5; - long j14 = j12 + 1; - float b5 = dVar.b(j5) - dVar.b(j14); - long j15 = j5 + 1; - float b6 = dVar.b(j12) + dVar.b(j15); - float b7 = dVar.b(j14) + dVar.b(j5); - float b8 = dVar.b(j15) - dVar.b(j12); - long j16 = j13 + 1; - float b9 = dVar.b(j11) - dVar.b(j16); - long j17 = j11 + 1; - float b10 = dVar.b(j13) + dVar.b(j17); - float b11 = dVar.b(j16) + dVar.b(j11); - float b12 = dVar.b(j17) - dVar.b(j13); - float f4 = (b9 - b10) * b4; - float f5 = (b10 + b9) * b4; - dVar.c(j15, AbstractC1518b.j(b5, f4, dVar, j5, b6, f5)); - dVar.c(j17, AbstractC1518b.l(b5, f4, dVar, j11, b6, f5)); - float f6 = (b11 - b12) * b4; - float f7 = (b12 + b11) * b4; - dVar.c(j14, AbstractC1518b.a(b7, f7, dVar, j12, b8, f6)); - dVar.c(j16, AbstractC1518b.m(b7, f7, dVar, j13, b8, f6)); - long j18 = 4; - long j19 = j7 * 4; - long j20 = 0; - int i4 = 2; - while (true) { - long j21 = i4; - if (j21 < j7) { - long j22 = j20 + j18; - long j23 = j6 + j22; - float b13 = dVar2.b(j23); - float b14 = dVar2.b(j23 + 1); - float b15 = dVar2.b(j23 + 2); - float b16 = dVar2.b(j23 + 3); - long j24 = j19 - j18; - long j25 = j6 + j24; - float b17 = dVar2.b(j25); - float b18 = dVar2.b(j25 + 1); - float b19 = dVar2.b(j25 + 2); - float b20 = dVar2.b(j25 + 3); - long j26 = j21 + j8; - long j27 = j26 + j8; - long j28 = j27 + j8; - long j29 = j5 + j26; - long j30 = j5 + j27; - long j31 = j5 + j28; - long j32 = j5 + j21; - int i5 = i4; - long j33 = j30 + 1; - float b21 = dVar.b(j32) - dVar.b(j33); - long j34 = j32 + 1; - float b22 = dVar.b(j30) + dVar.b(j34); - float b23 = dVar.b(j33) + dVar.b(j32); - float b24 = dVar.b(j34) - dVar.b(j30); - long j35 = j31 + 1; - float b25 = dVar.b(j29) - dVar.b(j35); - long j36 = j29 + 1; - float b26 = dVar.b(j31) + dVar.b(j36); - float b27 = dVar.b(j35) + dVar.b(j29); - float b28 = dVar.b(j36) - dVar.b(j31); - float f8 = (b13 * b21) - (b14 * b22); - float f9 = (b21 * b14) + (b22 * b13); - float f10 = (b18 * b25) - (b17 * b26); - float f11 = (b25 * b17) + (b26 * b18); - dVar.c(j34, AbstractC1518b.j(f8, f10, dVar, j32, f9, f11)); - dVar.c(j36, AbstractC1518b.l(f8, f10, dVar, j29, f9, f11)); - float f12 = (b15 * b23) + (b16 * b24); - float f13 = (b15 * b24) - (b23 * b16); - float f14 = (b20 * b27) + (b19 * b28); - float f15 = (b28 * b20) - (b27 * b19); - dVar.c(j33, AbstractC1518b.j(f12, f14, dVar, j30, f13, f15)); - dVar.c(j35, AbstractC1518b.l(f12, f14, dVar, j31, f13, f15)); - long j37 = j8 - j21; - long j38 = j37 + j8; - long j39 = j38 + j8; - long j40 = j39 + j8; - long j41 = j5 + j37; - long j42 = j5 + j38; - long j43 = j5 + j39; - long j44 = j5 + j40; - long j45 = j43 + 1; - float b29 = dVar.b(j41) - dVar.b(j45); - long j46 = j41 + 1; - float b30 = dVar.b(j43) + dVar.b(j46); - float b31 = dVar.b(j45) + dVar.b(j41); - float b32 = dVar.b(j46) - dVar.b(j43); - long j47 = j44 + 1; - float b33 = dVar.b(j42) - dVar.b(j47); - long j48 = j42 + 1; - float b34 = dVar.b(j44) + dVar.b(j48); - float b35 = dVar.b(j47) + dVar.b(j42); - float b36 = dVar.b(j48) - dVar.b(j44); - float f16 = (b17 * b29) - (b18 * b30); - float f17 = (b18 * b29) + (b17 * b30); - float f18 = (b14 * b33) - (b13 * b34); - float f19 = (b33 * b13) + (b14 * b34); - dVar.c(j46, AbstractC1518b.j(f16, f18, dVar, j41, f17, f19)); - dVar.c(j48, AbstractC1518b.l(f16, f18, dVar, j42, f17, f19)); - float f20 = (b19 * b31) + (b20 * b32); - float f21 = (b19 * b32) - (b20 * b31); - float f22 = (b16 * b35) + (b15 * b36); - float f23 = (b16 * b36) - (b15 * b35); - dVar.c(j45, AbstractC1518b.j(f20, f22, dVar, j43, f21, f23)); - dVar.c(j47, AbstractC1518b.l(f20, f22, dVar, j44, f21, f23)); - i4 = i5 + 2; - j19 = j24; - j20 = j22; - j18 = 4; - } else { - long j49 = j6 + j8; - float b37 = dVar2.b(j49); - float b38 = dVar2.b(j49 + 1); - long j50 = j7 + j8; - long j51 = j50 + j8; - long j52 = j51 + j8; - long j53 = j5 + j7; - long j54 = j5 + j50; - long j55 = j5 + j51; - long j56 = j5 + j52; - long j57 = j55 + 1; - float b39 = dVar.b(j53) - dVar.b(j57); - long j58 = j53 + 1; - float b40 = dVar.b(j55) + dVar.b(j58); - float b41 = dVar.b(j57) + dVar.b(j53); - float b42 = dVar.b(j58) - dVar.b(j55); - long j59 = j56 + 1; - float b43 = dVar.b(j54) - dVar.b(j59); - long j60 = j54 + 1; - float b44 = dVar.b(j56) + dVar.b(j60); - float b45 = dVar.b(j59) + dVar.b(j54); - float b46 = dVar.b(j60) - dVar.b(j56); - float f24 = (b37 * b39) - (b38 * b40); - float f25 = (b39 * b38) + (b37 * b40); - float f26 = (b38 * b43) - (b37 * b44); - float f27 = (b43 * b37) + (b44 * b38); - dVar.c(j58, AbstractC1518b.j(f24, f26, dVar, j53, f25, f27)); - dVar.c(j60, AbstractC1518b.l(f24, f26, dVar, j54, f25, f27)); - float f28 = (b38 * b41) - (b37 * b42); - float f29 = (b37 * b41) + (b38 * b42); - float f30 = (b37 * b45) - (b38 * b46); - float f31 = (b38 * b45) + (b37 * b46); - dVar.c(j57, AbstractC1518b.l(f28, f30, dVar, j55, f29, f31)); - dVar.c(j59, AbstractC1518b.j(f28, f30, dVar, j56, f29, f31)); - return; - } - } - } -} diff --git a/feature/cw/src/main/java/k3/a.java b/feature/cw/src/main/java/k3/a.java deleted file mode 100644 index 01fcf988..00000000 --- a/feature/cw/src/main/java/k3/a.java +++ /dev/null @@ -1,11 +0,0 @@ -package k3; - -import java.lang.Thread; - -/* loaded from: classes.dex */ -public final class a implements Thread.UncaughtExceptionHandler { - @Override // java.lang.Thread.UncaughtExceptionHandler - public final void uncaughtException(Thread thread, Throwable th) { - th.printStackTrace(); - } -} diff --git a/feature/cw/src/main/java/k3/b.java b/feature/cw/src/main/java/k3/b.java deleted file mode 100644 index 7c1a67f6..00000000 --- a/feature/cw/src/main/java/k3/b.java +++ /dev/null @@ -1,25 +0,0 @@ -package k3; - -import java.util.concurrent.Executors; -import java.util.concurrent.ThreadFactory; - -/* loaded from: classes.dex */ -public final class b implements ThreadFactory { - - /* renamed from: b, reason: collision with root package name */ - public static final ThreadFactory f12091b = Executors.defaultThreadFactory(); - - /* renamed from: a, reason: collision with root package name */ - public final a f12092a; - - public b(a aVar) { - this.f12092a = aVar; - } - - @Override // java.util.concurrent.ThreadFactory - public final Thread newThread(Runnable runnable) { - Thread newThread = f12091b.newThread(runnable); - newThread.setUncaughtExceptionHandler(this.f12092a); - return newThread; - } -} diff --git a/feature/cw/src/main/java/k3/c.java b/feature/cw/src/main/java/k3/c.java deleted file mode 100644 index 90783e85..00000000 --- a/feature/cw/src/main/java/k3/c.java +++ /dev/null @@ -1,42 +0,0 @@ -package k3; - -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; -import java.util.concurrent.Future; - -/* loaded from: classes.dex */ -public abstract class c { - - /* renamed from: a, reason: collision with root package name */ - public static final ExecutorService f12093a; - - /* renamed from: b, reason: collision with root package name */ - public static ExecutorService f12094b; - public static final int c; - - /* renamed from: d, reason: collision with root package name */ - public static final long f12095d; - - /* JADX WARN: Type inference failed for: r1v0, types: [java.lang.Object, k3.a] */ - static { - ExecutorService newCachedThreadPool = Executors.newCachedThreadPool(new b(new a())); - f12093a = newCachedThreadPool; - f12094b = newCachedThreadPool; - c = Runtime.getRuntime().availableProcessors(); - f12095d = 100000L; - } - - public static Future a(Runnable runnable) { - if (f12094b.isShutdown() || f12094b.isTerminated()) { - f12094b = f12093a; - } - return f12094b.submit(runnable); - } - - public static void b(Future[] futureArr) throws InterruptedException, java.util.concurrent.ExecutionException { - // smali: 无 catch 直接向上抛 -> Java 声明 throws(忠实表达) - for (Future future : futureArr) { - future.get(); - } - } -} diff --git a/feature/cw/src/main/java/k3/d.java b/feature/cw/src/main/java/k3/d.java deleted file mode 100644 index 06bd755f..00000000 --- a/feature/cw/src/main/java/k3/d.java +++ /dev/null @@ -1,100 +0,0 @@ -package k3; - -import com.rtbishop.look4sat.feature.cw.suncompat.Cleaner; - -/* loaded from: classes.dex */ -public final class d extends g { - - /* renamed from: k, reason: collision with root package name */ - public float[] f12096k; - - public d() { - } - - public d(long j4, boolean z3) { - this.f = q.f12106g; - this.f12103h = 4L; - if (j4 > 0) { - this.f12102g = j4; - if (j4 > 1073741824) { - this.f12105j = r.f12109a.allocateMemory(4 * j4); - if (z3) { - a(j4); - } - Cleaner.create(this, new f(this.f12105j, this.f12102g, this.f12103h)); - K1.a.c += this.f12102g * this.f12103h; - return; - } - this.f12096k = new float[(int) j4]; - return; - } - throw new IllegalArgumentException(j4 + " is not a positive long value"); - } - - public final float b(long j4) { - float[] fArr = this.f12096k; - long j5 = this.f12105j; - if (j5 != 0) { - return r.f12109a.getFloat((this.f12103h * j4) + j5); - } - if (this.f12104i) { - return fArr[0]; - } - return fArr[(int) j4]; - } - - public final void c(long j4, float f) { - long j5 = this.f12105j; - if (j5 != 0) { - r.f12109a.putFloat((this.f12103h * j4) + j5, f); - } else { - if (!this.f12104i) { - this.f12096k[(int) j4] = f; - return; - } - throw new IllegalAccessError("Constant arrays cannot be modified."); - } - } - - /* JADX WARN: Type inference failed for: r0v1, types: [k3.g, java.lang.Object, k3.d] */ - public final Object clone() { - if (this.f12104i) { - long j4 = this.f12102g; - float b4 = b(0L); - d gVar = new d(); - gVar.f = q.f12106g; - gVar.f12103h = 4L; - if (j4 > 0) { - gVar.f12102g = j4; - gVar.f12104i = true; - gVar.f12096k = new float[]{b4}; - return gVar; - } - throw new IllegalArgumentException(j4 + " is not a positive long value"); - } - d dVar = new d(this.f12102g, false); - r.a(0L, 0L, this.f12102g, this, dVar); - return dVar; - } - - @Override // k3.g - public final boolean equals(Object obj) { - if (!super.equals(obj) || this.f12096k != ((d) obj).f12096k) { - return false; - } - return true; - } - - @Override // k3.g - public final int hashCode() { - int i4; - int hashCode = super.hashCode() * 29; - float[] fArr = this.f12096k; - if (fArr != null) { - i4 = fArr.hashCode(); - } else { - i4 = 0; - } - return hashCode + i4; - } -} diff --git a/feature/cw/src/main/java/k3/e.java b/feature/cw/src/main/java/k3/e.java deleted file mode 100644 index a1a72529..00000000 --- a/feature/cw/src/main/java/k3/e.java +++ /dev/null @@ -1,79 +0,0 @@ -package k3; - -/* loaded from: classes.dex */ -public final class e implements Runnable { - public final /* synthetic */ long f; - - /* renamed from: g, reason: collision with root package name */ - public final /* synthetic */ long f12097g; - - /* renamed from: h, reason: collision with root package name */ - public final /* synthetic */ long f12098h; - - /* renamed from: i, reason: collision with root package name */ - public final /* synthetic */ g f12099i; - - public e(g gVar, long j4, long j5, long j6) { - this.f12099i = gVar; - this.f = j4; - this.f12097g = j5; - this.f12098h = j6; - } - - /* JADX WARN: Can't fix incorrect switch cases order, some code will duplicate */ - /* JADX WARN: Failed to find 'out' block for switch in B:2:0x0011. Please report as an issue. */ - @Override // java.lang.Runnable - public final void run() { - g gVar = this.f12099i; - int ordinal = gVar.f.ordinal(); - long j4 = this.f12098h; - long j5 = this.f12097g; - long j6 = this.f; - switch (ordinal) { - case 0: - case 1: - case 2: - case 10: - case 11: - while (j6 < j5) { - r.f12109a.putByte((gVar.f12103h * j6) + j4, (byte) 0); - j6++; - } - return; - case 3: - while (j6 < j5) { - r.f12109a.putShort((gVar.f12103h * j6) + j4, (short) 0); - j6++; - } - return; - case 4: - while (j6 < j5) { - r.f12109a.putInt((gVar.f12103h * j6) + j4, 0); - j6++; - } - return; - case 5: - while (j6 < j5) { - r.f12109a.putLong((gVar.f12103h * j6) + j4, 0L); - j6++; - } - return; - case 6: - while (j6 < j5) { - r.f12109a.putFloat((gVar.f12103h * j6) + j4, 0.0f); - j6++; - } - return; - case 7: - while (j6 < j5) { - r.f12109a.putDouble((gVar.f12103h * j6) + j4, 0.0d); - j6++; - } - return; - case 8: - case 9: - default: - throw new IllegalArgumentException("Invalid array type."); - } - } -} diff --git a/feature/cw/src/main/java/k3/f.java b/feature/cw/src/main/java/k3/f.java deleted file mode 100644 index 2427a13e..00000000 --- a/feature/cw/src/main/java/k3/f.java +++ /dev/null @@ -1,32 +0,0 @@ -package k3; - -/* loaded from: classes.dex */ -public final class f implements Runnable { - public long f; - - /* renamed from: g, reason: collision with root package name */ - public final long f12100g; - - /* renamed from: h, reason: collision with root package name */ - public final long f12101h; - - public f(long j4, long j5, long j6) { - this.f = j4; - this.f12100g = j5; - this.f12101h = j6; - } - - @Override // java.lang.Runnable - public final void run() { - long j4 = this.f; - if (j4 != 0) { - r.f12109a.freeMemory(j4); - this.f = 0L; - long j5 = K1.a.c - (this.f12100g * this.f12101h); - K1.a.c = j5; - if (j5 < 0) { - K1.a.c = 0L; - } - } - } -} diff --git a/feature/cw/src/main/java/k3/g.java b/feature/cw/src/main/java/k3/g.java deleted file mode 100644 index 150b3b7f..00000000 --- a/feature/cw/src/main/java/k3/g.java +++ /dev/null @@ -1,92 +0,0 @@ -package k3; - -import java.io.Serializable; -import java.util.concurrent.ExecutionException; -import java.util.concurrent.Future; - -/* loaded from: classes.dex */ -public abstract class g implements Serializable, Cloneable { - public q f; - - /* renamed from: g, reason: collision with root package name */ - public long f12102g; - - /* renamed from: h, reason: collision with root package name */ - public long f12103h; - - /* renamed from: i, reason: collision with root package name */ - public boolean f12104i = false; - - /* renamed from: j, reason: collision with root package name */ - public long f12105j = 0; - - public final void a(long j4) { - long j5; - g gVar = this; - long j6 = gVar.f12105j; - if (j6 != 0) { - long j7 = c.c; - double[][] dArr = g3.c.f11585a; - if (j4 <= j7) { - j7 = j4; - } - int i4 = (int) j7; - if (i4 > 2 && j4 >= c.f12095d) { - long j8 = j4 / i4; - Future[] futureArr = new Future[i4]; - int i5 = 0; - while (i5 < i4) { - long j9 = i5 * j8; - if (i5 == i4 - 1) { - j5 = j4; - } else { - j5 = j9 + j8; - } - futureArr[i5] = c.a(new e(gVar, j9, j5, j6)); - i5++; - gVar = gVar; - j6 = j6; - } - g gVar2 = gVar; - try { - c.b(futureArr); - return; - } catch (InterruptedException unused) { - r.f12109a.setMemory(gVar2.f12105j, gVar2.f12103h * j4, (byte) 0); - return; - } catch (ExecutionException unused2) { - r.f12109a.setMemory(gVar2.f12105j, j4 * gVar2.f12103h, (byte) 0); - return; - } - } - r.f12109a.setMemory(j6, gVar.f12103h * j4, (byte) 0); - } - } - - public boolean equals(Object obj) { - if (obj != null && (obj instanceof g)) { - g gVar = (g) obj; - if (this.f == gVar.f && this.f12102g == gVar.f12102g && this.f12103h == gVar.f12103h && this.f12104i == gVar.f12104i && this.f12105j == gVar.f12105j) { - return true; - } - return false; - } - return false; - } - - public int hashCode() { - int i4; - q qVar = this.f; - if (qVar != null) { - i4 = qVar.hashCode(); - } else { - i4 = 0; - } - long j4 = this.f12102g; - int i5 = (((203 + i4) * 29) + ((int) (j4 ^ (j4 >>> 32)))) * 29; - long j5 = this.f12103h; - int i6 = (((i5 + ((int) (j5 ^ (j5 >>> 32)))) * 29) + (this.f12104i ? 1 : 0)) * 841; - long j6 = this.f12105j; - return i6 + ((int) (j6 ^ (j6 >>> 32))); - } -} diff --git a/feature/cw/src/main/java/k3/l.java b/feature/cw/src/main/java/k3/l.java deleted file mode 100644 index fc29d402..00000000 --- a/feature/cw/src/main/java/k3/l.java +++ /dev/null @@ -1,8 +0,0 @@ -package k3; - -/* loaded from: classes.dex */ -public final class l extends q { - public l() { - super("LONG", 5); - } -} diff --git a/feature/cw/src/main/java/k3/m.java b/feature/cw/src/main/java/k3/m.java deleted file mode 100644 index b01535dc..00000000 --- a/feature/cw/src/main/java/k3/m.java +++ /dev/null @@ -1,8 +0,0 @@ -package k3; - -/* loaded from: classes.dex */ -public final class m extends q { - public m() { - super("FLOAT", 6); - } -} diff --git a/feature/cw/src/main/java/k3/n.java b/feature/cw/src/main/java/k3/n.java deleted file mode 100644 index 463f7e84..00000000 --- a/feature/cw/src/main/java/k3/n.java +++ /dev/null @@ -1,8 +0,0 @@ -package k3; - -/* loaded from: classes.dex */ -public final class n extends q { - public n() { - super("DOUBLE", 7); - } -} diff --git a/feature/cw/src/main/java/k3/q.java b/feature/cw/src/main/java/k3/q.java deleted file mode 100644 index 5f84ea2d..00000000 --- a/feature/cw/src/main/java/k3/q.java +++ /dev/null @@ -1,68 +0,0 @@ -package k3; - -/** - * R8 生成的伪 enum(k3 FFT 库的数组类型枚举)。 - * smali 中 q 的直接子类:l(LONG/5)、m(FLOAT/6)、n(DOUBLE/7), - * 其余常量(BYTE/UNSIGNED_BYTE/SHORT/INT/COMPLEX_FLOAT/COMPLEX_DOUBLE/STRING/OBJECT) - * 直接以 q 实例表达。 - */ -public class q { - public static final l f; - - /* renamed from: g, reason: collision with root package name */ - public static final m f12106g; - - /* renamed from: h, reason: collision with root package name */ - public static final n f12107h; - - /* renamed from: i, reason: collision with root package name */ - public static final /* synthetic */ q[] f12108i; - - private final String name; - private final int ordinal; - - protected q(String name, int ordinal) { - this.name = name; - this.ordinal = ordinal; - } - - public final String name() { - return name; - } - - public final int ordinal() { - return ordinal; - } - - public static q valueOf(String str) { - for (q qVar : f12108i) { - if (qVar.name.equals(str)) { - return qVar; - } - } - throw new IllegalArgumentException("No enum constant k3.q." + str); - } - - public static q[] values() { - return (q[]) f12108i.clone(); - } - - static { - q logic = new q("LOGIC", 0); - q byteType = new q("BYTE", 1); - q unsignedByte = new q("UNSIGNED_BYTE", 2); - q shortType = new q("SHORT", 3); - q intType = new q("INT", 4); - l longType = new l(); - f = longType; - m floatType = new m(); - f12106g = floatType; - n doubleType = new n(); - f12107h = doubleType; - q complexFloat = new q("COMPLEX_FLOAT", 8); - q complexDouble = new q("COMPLEX_DOUBLE", 9); - q string = new q("STRING", 10); - q object = new q("OBJECT", 11); - f12108i = new q[]{logic, byteType, unsignedByte, shortType, intType, longType, floatType, doubleType, complexFloat, complexDouble, string, object}; - } -} diff --git a/feature/cw/src/main/java/k3/r.java b/feature/cw/src/main/java/k3/r.java deleted file mode 100644 index fa9bbf88..00000000 --- a/feature/cw/src/main/java/k3/r.java +++ /dev/null @@ -1,97 +0,0 @@ -package k3; - -import java.lang.reflect.Field; -import java.util.concurrent.ExecutionException; -import java.util.concurrent.Future; -import com.rtbishop.look4sat.feature.cw.suncompat.Unsafe; - -/* loaded from: classes.dex */ -public abstract class r { - - /* renamed from: a, reason: collision with root package name */ - public static final Unsafe f12109a; - - static { - Object obj = null; - try { - Class cls = Class.forName("sun.misc.Unsafe"); - Field declaredField = cls.getDeclaredField("theUnsafe"); - declaredField.setAccessible(true); - obj = declaredField.get(cls); - } catch (ClassNotFoundException | IllegalAccessException | IllegalArgumentException | NoSuchFieldException | SecurityException ignored) { - // Android 适配: sun.misc.Unsafe 可能不可用(隐藏 API), 静默降级为 null; - // 大数组 native 路径(j4 > 1GB)不会在实际解码中触发 - } - f12109a = (Unsafe) obj; - } - - public static void a(long j4, long j5, long j6, d dVar, d dVar2) { - long j7; - if (j4 >= 0 && j4 < dVar.f12102g) { - if (j5 >= 0 && j5 < dVar2.f12102g) { - if (j6 >= 0) { - if (!dVar2.f12104i) { - long j8 = c.c; - double[][] dArr = g3.c.f11585a; - if (j6 <= j8) { - j8 = j6; - } - int i4 = (int) j8; - if (i4 >= 2 && j6 >= c.f12095d) { - long j9 = j6 / i4; - Future[] futureArr = new Future[i4]; - int i5 = 0; - while (i5 < i4) { - long j10 = i5 * j9; - if (i5 == i4 - 1) { - j7 = j6; - } else { - j7 = j10 + j9; - } - Future[] futureArr2 = futureArr; - int i6 = i5; - futureArr2[i6] = c.a(new j3.b(j10, j7, j5, j4, dVar2, dVar)); - i5 = i6 + 1; - futureArr = futureArr2; - } - try { - c.b(futureArr); - return; - } catch (InterruptedException unused) { - long j11 = j4; - long j12 = j5; - while (j11 < j4 + j6) { - dVar2.c(j12, dVar.b(j11)); - j11++; - j12++; - } - return; - } catch (ExecutionException unused2) { - long j13 = j4; - long j14 = j5; - while (j13 < j4 + j6) { - dVar2.c(j14, dVar.b(j13)); - j13++; - j14++; - } - return; - } - } - long j15 = j4; - long j16 = j5; - while (j15 < j4 + j6) { - dVar2.c(j16, dVar.b(j15)); - j15++; - j16++; - } - return; - } - throw new IllegalArgumentException("Constant arrays cannot be modified."); - } - throw new IllegalArgumentException("length < 0"); - } - throw new ArrayIndexOutOfBoundsException("destPos < 0 || destPos >= dest.length()"); - } - throw new ArrayIndexOutOfBoundsException("srcPos < 0 || srcPos >= src.length()"); - } -} diff --git a/feature/cw/src/main/java/k3/s.java b/feature/cw/src/main/java/k3/s.java deleted file mode 100644 index e0176656..00000000 --- a/feature/cw/src/main/java/k3/s.java +++ /dev/null @@ -1,167 +0,0 @@ -package k3; - -import java.util.concurrent.ExecutionException; -import java.util.concurrent.Future; -import com.rtbishop.look4sat.feature.cw.suncompat.Cleaner; -import com.rtbishop.look4sat.feature.cw.suncompat.Unsafe; - -/* loaded from: classes.dex */ -public final class s extends g { - - /* renamed from: k, reason: collision with root package name */ - public long[] f12110k; - - public s() { - } - - public s(long j4, boolean z3) { - this.f = q.f; - this.f12103h = 8L; - if (j4 > 0) { - this.f12102g = j4; - if (j4 > 1073741824) { - this.f12105j = r.f12109a.allocateMemory(8 * j4); - if (z3) { - a(j4); - } - Cleaner.create(this, new f(this.f12105j, this.f12102g, this.f12103h)); - K1.a.c += this.f12102g * this.f12103h; - return; - } - this.f12110k = new long[(int) j4]; - return; - } - throw new IllegalArgumentException(j4 + " is not a positive long value"); - } - - public final long b(long j4) { - long[] jArr = this.f12110k; - long j5 = this.f12105j; - if (j5 != 0) { - return r.f12109a.getLong((this.f12103h * j4) + j5); - } - if (this.f12104i) { - return jArr[0]; - } - return jArr[(int) j4]; - } - - public final void c(long j4, long j5) { - long j6 = this.f12105j; - if (j6 != 0) { - r.f12109a.putLong((this.f12103h * j4) + j6, j5); - } else { - if (!this.f12104i) { - this.f12110k[(int) j4] = j5; - return; - } - throw new IllegalAccessError("Constant arrays cannot be modified."); - } - } - - /* JADX WARN: Type inference failed for: r0v29, types: [k3.g, java.lang.Object, k3.s] */ - public final Object clone() { - long j4; - int i4 = 0; - long j5 = 0; - if (this.f12104i) { - long j6 = this.f12102g; - long b4 = b(0L); - s gVar = new s(); - gVar.f = q.f12107h; - gVar.f12103h = 8L; - if (j6 > 0) { - gVar.f12102g = j6; - gVar.f12104i = true; - gVar.f12110k = new long[]{b4}; - return gVar; - } - throw new IllegalArgumentException(j6 + " is not a positive long value"); - } - s sVar = new s(this.f12102g, false); - long j7 = this.f12102g; - Unsafe unsafe = r.f12109a; - if (0 < j7) { - if (0 < sVar.f12102g) { - if (j7 >= 0) { - if (!sVar.f12104i) { - long j8 = c.c; - double[][] dArr = g3.c.f11585a; - if (j7 <= j8) { - j8 = j7; - } - int i5 = (int) j8; - if (i5 >= 2 && j7 >= c.f12095d) { - long j9 = j7 / i5; - Future[] futureArr = new Future[i5]; - while (i4 < i5) { - long j10 = i4 * j9; - if (i4 == i5 - 1) { - j4 = j7; - } else { - j4 = j10 + j9; - } - Future[] futureArr2 = futureArr; - int i6 = i4; - futureArr2[i6] = c.a(new i3.c(j10, j4, sVar, this)); - i4 = i6 + 1; - futureArr = futureArr2; - } - try { - c.b(futureArr); - return sVar; - } catch (InterruptedException unused) { - long j11 = 0; - while (j5 < j7) { - sVar.c(j11, b(j5)); - j5++; - j11++; - } - } catch (ExecutionException unused2) { - long j12 = 0; - while (j5 < j7) { - sVar.c(j12, b(j5)); - j5++; - j12++; - } - } - } else { - long j13 = 0; - while (j5 < j7) { - sVar.c(j13, b(j5)); - j5++; - j13++; - } - } - return sVar; - } - throw new IllegalArgumentException("Constant arrays cannot be modified."); - } - throw new IllegalArgumentException("length < 0"); - } - throw new ArrayIndexOutOfBoundsException("destPos < 0 || destPos >= dest.length()"); - } - throw new ArrayIndexOutOfBoundsException("srcPos < 0 || srcPos >= src.length()"); - } - - @Override // k3.g - public final boolean equals(Object obj) { - if (!super.equals(obj) || this.f12110k != ((s) obj).f12110k) { - return false; - } - return true; - } - - @Override // k3.g - public final int hashCode() { - int i4; - int hashCode = super.hashCode() * 29; - long[] jArr = this.f12110k; - if (jArr != null) { - i4 = jArr.hashCode(); - } else { - i4 = 0; - } - return hashCode + i4; - } -} diff --git a/feature/cw/src/main/java/pas/cwstru.java b/feature/cw/src/main/java/pas/cwstru.java deleted file mode 100644 index 8d872af2..00000000 --- a/feature/cw/src/main/java/pas/cwstru.java +++ /dev/null @@ -1,144 +0,0 @@ -package pas; - -import pas.system; - -/* loaded from: classes.dex */ -public class cwstru { - - /* loaded from: classes.dex */ - public static class TMorseCharInfo extends system.Record { - public TMorseCharInfo(long j4, boolean z3) { - __Init(j4, z3); - } - - private native void __Destroy(long j4); - - @Override // pas.system.PascalObjectEx - public void __Release() { - __Destroy(this._pasobj); - this._pasobj = 0L; - } - - @Override // pas.system.Record - public int __Size() { - return __Size(0); - } - - public native char getCh(); - - public native int getIdxE(); - - public native boolean getLowSnr(); - - public native TWordEndType getWordEnd(); - - public native float getWordSpaceProb(); - - public native TMorseWordType getWordType(); - - public native void setCh(char c); - - public native void setIdxE(int i4); - - public native void setLowSnr(boolean z3); - - public native void setWordEnd(TWordEndType tWordEndType); - - public native void setWordSpaceProb(float f); - - public native void setWordType(TMorseWordType tMorseWordType); - - public TMorseCharInfo() { - __Init(0L, true); - } - - public TMorseCharInfo(system.PascalObject pascalObject) { - super(pascalObject); - } - - public TMorseCharInfo(long j4) { - super(j4); - } - } - - /* loaded from: classes.dex */ - public static class TMorseWordType extends system.Enum { - public static final int wtCall = 5; - public static final int wtCq = 3; - public static final int wtGenWord = 0; - public static final int wtKeyword = 1; - public static final int wtQrl = 4; - public static final int wtRst = 2; - - public TMorseWordType(int i4) { - this.Value = i4; - } - - public static TMorseWordType wtCall() { - return new TMorseWordType(5); - } - - public static TMorseWordType wtCq() { - return new TMorseWordType(3); - } - - public static TMorseWordType wtGenWord() { - return new TMorseWordType(0); - } - - public static TMorseWordType wtKeyword() { - return new TMorseWordType(1); - } - - public static TMorseWordType wtQrl() { - return new TMorseWordType(4); - } - - public static TMorseWordType wtRst() { - return new TMorseWordType(2); - } - - @Override // pas.system.Enum - public boolean equals(Object obj) { - if (((obj instanceof TMorseWordType) && this.Value == ((TMorseWordType) obj).Value) || super.equals(obj)) { - return true; - } - return false; - } - } - - /* loaded from: classes.dex */ - public static class TWordEndType extends system.Enum { - public static final int weLong = 2; - public static final int weNone = 0; - public static final int weShort = 1; - - public TWordEndType(int i4) { - this.Value = i4; - } - - public static TWordEndType weLong() { - return new TWordEndType(2); - } - - public static TWordEndType weNone() { - return new TWordEndType(0); - } - - public static TWordEndType weShort() { - return new TWordEndType(1); - } - - @Override // pas.system.Enum - public boolean equals(Object obj) { - if (((obj instanceof TWordEndType) && this.Value == ((TWordEndType) obj).Value) || super.equals(obj)) { - return true; - } - return false; - } - } - - static { - system.InitJni(); - } -} diff --git a/feature/cw/src/main/java/pas/decoder.java b/feature/cw/src/main/java/pas/decoder.java deleted file mode 100644 index ca3f7540..00000000 --- a/feature/cw/src/main/java/pas/decoder.java +++ /dev/null @@ -1,171 +0,0 @@ -package pas; - -import pas.cwstru; -import pas.system; - -/* loaded from: classes.dex */ -public class decoder { - - /* loaded from: classes.dex */ - public static class TCharInfo extends system.TObject { - public TCharInfo(system.PascalObject pascalObject) { - super(pascalObject); - } - - public static TCharInfo Class() { - return new TCharInfo(system.GetClassRef(1)); - } - - public static native TCharInfo Create(); - - public static native TCharInfo Create(char c); - - public static native TCharInfo Create(cwstru.TMorseCharInfo tMorseCharInfo); - - public static system.TClass TClass() { - return system.GetTClass(1); - } - - public native char getChar(); - - public native boolean getLowSnr(); - - public native TMorseWordType getWordType(); - - public TCharInfo(long j4) { - super(j4); - } - } - - /* loaded from: classes.dex */ - public static class TDecoder extends system.TObject { - public TDecoder(system.PascalObject pascalObject) { - super(pascalObject); - } - - public static TDecoder Class() { - return new TDecoder(system.GetClassRef(2)); - } - - public static native TDecoder Create(); - - public static system.TClass TClass() { - return system.GetTClass(2); - } - - public native TCharInfo GetChar(int i4); - - public native void LockToPitch(int i4); - - public native int getCharCount(); - - public native int getDeleteCount(); - - public native boolean getHamMode(); - - public native int getPitch(); - - public native int getSignalCount(); - - public native int getSnr(); - - public native int getWpm(); - - public native void setHamMode(boolean z3); - - public TDecoder(long j4) { - super(j4); - } - } - - /* loaded from: classes.dex */ - public static class TDecoderState extends system.Enum { - public static final int dsDecoding = 2; - public static final int dsLockedDecoding = 4; - public static final int dsLockedPause = 3; - public static final int dsNone = 0; - public static final int dsPause = 1; - - public TDecoderState(int i4) { - this.Value = i4; - } - - public static TDecoderState dsDecoding() { - return new TDecoderState(2); - } - - public static TDecoderState dsLockedDecoding() { - return new TDecoderState(4); - } - - public static TDecoderState dsLockedPause() { - return new TDecoderState(3); - } - - public static TDecoderState dsNone() { - return new TDecoderState(0); - } - - public static TDecoderState dsPause() { - return new TDecoderState(1); - } - - @Override // pas.system.Enum - public boolean equals(Object obj) { - if (((obj instanceof TDecoderState) && this.Value == ((TDecoderState) obj).Value) || super.equals(obj)) { - return true; - } - return false; - } - } - - /* loaded from: classes.dex */ - public static class TMorseWordType extends system.Enum { - public static final int wtCall = 5; - public static final int wtCq = 3; - public static final int wtGenWord = 0; - public static final int wtKeyword = 1; - public static final int wtQrl = 4; - public static final int wtRst = 2; - - public TMorseWordType(int i4) { - this.Value = i4; - } - - public static TMorseWordType wtCall() { - return new TMorseWordType(5); - } - - public static TMorseWordType wtCq() { - return new TMorseWordType(3); - } - - public static TMorseWordType wtGenWord() { - return new TMorseWordType(0); - } - - public static TMorseWordType wtKeyword() { - return new TMorseWordType(1); - } - - public static TMorseWordType wtQrl() { - return new TMorseWordType(4); - } - - public static TMorseWordType wtRst() { - return new TMorseWordType(2); - } - - @Override // pas.system.Enum - public boolean equals(Object obj) { - if (((obj instanceof TMorseWordType) && this.Value == ((TMorseWordType) obj).Value) || super.equals(obj)) { - return true; - } - return false; - } - } - - static { - system.InitJni(); - } -} diff --git a/feature/cw/src/main/java/pas/nativedecoder.java b/feature/cw/src/main/java/pas/nativedecoder.java deleted file mode 100644 index 5e9b4290..00000000 --- a/feature/cw/src/main/java/pas/nativedecoder.java +++ /dev/null @@ -1,35 +0,0 @@ -package pas; - -import pas.decoder; -import pas.system; - -/* loaded from: classes.dex */ -public class nativedecoder { - - /* loaded from: classes.dex */ - public static class TNativeDecoder extends decoder.TDecoder { - public TNativeDecoder(system.PascalObject pascalObject) { - super(pascalObject); - } - - public static TNativeDecoder Class() { - return new TNativeDecoder(system.GetClassRef(3)); - } - - public static native TNativeDecoder Create(); - - public static system.TClass TClass() { - return system.GetTClass(3); - } - - public native decoder.TDecoderState ProcessSpectrum(Object obj); - - public TNativeDecoder(long j4) { - super(j4); - } - } - - static { - system.InitJni(); - } -} diff --git a/feature/cw/src/main/java/pas/system.java b/feature/cw/src/main/java/pas/system.java deleted file mode 100644 index 9516d74a..00000000 --- a/feature/cw/src/main/java/pas/system.java +++ /dev/null @@ -1,385 +0,0 @@ -package pas; - -import java.util.Date; -import java.util.TimeZone; - -/* loaded from: classes.dex */ -public class system { - private static boolean _JniLibLoaded = false; - - /* loaded from: classes.dex */ - public static abstract class BaseSet { - protected int Value = 0; - - public abstract int Base(); - - public abstract int ElMax(); - - public abstract byte Size(); - } - - /* loaded from: classes.dex */ - public static class Enum { - public int Value; - - public int Ord() { - return this.Value; - } - - public boolean equals(Object obj) { - return (obj instanceof Integer) && this.Value == ((Integer) obj).intValue(); - } - - public int hashCode() { - return this.Value; - } - - public boolean equals(int i4) { - return this.Value == i4; - } - } - - /* loaded from: classes.dex */ - public static class MethodPtr extends PascalObjectEx { - protected String mName; - protected Object mObject; - protected String mSignature; - - public MethodPtr() { - this._cleanup = true; - this._pasobj = -1L; - } - - private native void __Destroy(); - - private native void __Init(Object obj, String str, String str2, boolean z3); - - public void Init() { - boolean z3; - Object obj = this.mObject; - String str = this.mName; - String str2 = this.mSignature; - if (this != obj) { - z3 = true; - } else { - z3 = false; - } - __Init(obj, str, str2, z3); - } - - @Override // pas.system.PascalObjectEx - public void __Release() { - if (this._pasobj > 0) { - __Destroy(); - } - } - } - - /* loaded from: classes.dex */ - public static abstract class PascalInterface extends PascalObjectEx { - public PascalInterface(long j4, boolean z3) { - this._pasobj = j4; - __Init(); - } - - public abstract void __Init(); - - public void __TypeCast(PascalObject pascalObject, String str) { - if (pascalObject != null) { - if (pascalObject instanceof PascalInterface) { - this._pasobj = pascalObject._pasobj; - __Init(); - } else { - this._pasobj = system.InterfaceCast(pascalObject._pasobj, str); - } - } - } - } - - /* loaded from: classes.dex */ - public static class Record extends PascalObjectEx { - protected PascalObject _objref; - - public Record(PascalObject pascalObject) { - super(pascalObject); - this._objref = pascalObject; - } - - public void __Init(long j4, boolean z3) { - this._pasobj = j4; - this._cleanup = z3; - if (j4 == 0 && __Size() != 0) { - this._pasobj = system.AllocMemory(__Size()); - } - } - - public int __Size() { - return 0; - } - - @Override // pas.system.PascalObjectEx, pas.system.PascalObject - public void finalize() { - long j4 = this._pasobj; - if (j4 < 0) { - this._pasobj = -j4; - this._cleanup = true; - } - super.finalize(); - } - - public Record(long j4) { - super(j4); - } - - public final int __Size(int i4) { - return system.GetRecordSize(i4); - } - - public Record() { - } - } - - /* loaded from: classes.dex */ - public static abstract class Set extends BaseSet { - public Set() { - } - - public void Assign(TS ts) { - this.Value = ts.Value; - } - - public void Exclude(TE... teArr) { - for (TE te : teArr) { - this.Value = (~GetMask(te)) & this.Value; - } - } - - public int GetMask(TE te) { - return 1 << (te.Ord() - Base()); - } - - public boolean Has(TE te) { - if ((GetMask(te) & this.Value) != 0) { - return true; - } - return false; - } - - public void Include(TE... teArr) { - for (TE te : teArr) { - this.Value = GetMask(te) | this.Value; - } - } - - public void Intersect(TS ts) { - this.Value = ts.Value & this.Value; - } - - public boolean IsEmpty() { - if (this.Value == 0) { - return true; - } - return false; - } - - public boolean equals(TS ts) { - return this.Value == ts.Value; - } - - public Set(TE... teArr) { - Include(teArr); - } - - public void Exclude(TS ts) { - this.Value = (~ts.Value) & this.Value; - } - - public void Include(TS ts) { - this.Value = ts.Value | this.Value; - } - - public boolean equals(TE te) { - return this.Value == te.Ord(); - } - - public Set(TS... tsArr) { - for (TS ts : tsArr) { - Include(ts); // smali: Set(TS...) 循环调 Include(BaseSet) - } - } - - public boolean equals(int i4) { - return this.Value == i4; - } - } - - /* loaded from: classes.dex */ - public static class TClass extends TObject { - public TClass(PascalObject pascalObject) { - super(pascalObject); - } - } - - /* loaded from: classes.dex */ - public static class TDateTime { - public static double get(Date date) { - return ((date.getTime() + TimeZone.getDefault().getOffset(date.getTime())) / 8.64E7d) + 25569.0d; - } - - public static double getUTC(Date date) { - return (date.getTime() / 8.64E7d) + 25569.0d; - } - - public static Date toDate(double d4) { - return new Date(Math.round((d4 - 25569.0d) * 8.64E7d) - TimeZone.getDefault().getOffset(Math.round((d4 - 25569.0d) * 8.64E7d))); // r3 = 前值(smali) - } - - public static Date toDateUTC(double d4) { - return new Date(Math.round((d4 - 25569.0d) * 8.64E7d)); - } - } - - /* loaded from: classes.dex */ - public static class TObject extends PascalObject { - public TObject(PascalObject pascalObject) { - super(pascalObject); - } - - public static TObject Class() { - return new TObject(system.GetClassRef(0)); - } - - public static native TObject Create(); - - public static TClass TClass() { - return system.GetTClass(0); - } - - public native String ClassName(); - - public native boolean ClassNameIs(String str); - - public native TClass ClassParent(); - - public native TClass ClassType(); - - public native void Destroy(); - - public native void Free(); - - public native boolean InheritsFrom(TClass tClass); - - public native int InstanceSize(); - - public TObject(long j4) { - super(j4); - } - } - - static { - InitJni(); - } - - public static native long AllocMemory(int i4); - - public static native long GetClassRef(int i4); - - public static native byte[] GetMemoryAsArray(long j4, int i4); - - /* JADX INFO: Access modifiers changed from: private */ - public static native int GetRecordSize(int i4); - - public static TClass GetTClass(int i4) { - TClass tClass = new TClass(null); - tClass._pasobj = GetClassRef(i4); - return tClass; - } - - public static void InitJni() { - if (!_JniLibLoaded) { - _JniLibLoaded = true; - System.loadLibrary("nativedecoderjni"); - } - } - - /* JADX INFO: Access modifiers changed from: private */ - public static native long InterfaceCast(long j4, String str); - - public static long Pointer(PascalObject pascalObject) { - if (pascalObject == null) { - return 0L; - } - return pascalObject._pasobj; - } - - public static native void SetMemoryFromArray(long j4, byte[] bArr); - - /* loaded from: classes.dex */ - public static class PascalObject { - protected long _pasobj; - - static { - system.InitJni(); - } - - public PascalObject() { - this._pasobj = 0L; - } - - public boolean equals(Object obj) { - if ((obj instanceof PascalObject) && this._pasobj == ((PascalObject) obj)._pasobj) { - return true; - } - return false; - } - - public void finalize() { - } - - public int hashCode() { - return (int) this._pasobj; - } - - public PascalObject(PascalObject pascalObject) { - this._pasobj = 0L; - if (pascalObject != null) { - this._pasobj = pascalObject._pasobj; - } - } - - public PascalObject(long j4) { - this._pasobj = j4; - } - } - - /* loaded from: classes.dex */ - public static class PascalObjectEx extends PascalObject { - protected boolean _cleanup; - - public PascalObjectEx() { - this._cleanup = false; - } - - public void __Release() { - this._pasobj = 0L; - } - - @Override // pas.system.PascalObject - public void finalize() { - if (this._cleanup) { - __Release(); - } - super.finalize(); - } - - public PascalObjectEx(PascalObject pascalObject) { - super(pascalObject); - this._cleanup = false; - } - - public PascalObjectEx(long j4) { - super(j4); - this._cleanup = false; - } - } -} diff --git a/feature/cw/src/main/java/s/AbstractC1880e.java b/feature/cw/src/main/java/s/AbstractC1880e.java deleted file mode 100644 index 53072157..00000000 --- a/feature/cw/src/main/java/s/AbstractC1880e.java +++ /dev/null @@ -1,16 +0,0 @@ -package s; - -/* renamed from: s.e, reason: case insensitive filesystem */ -/* loaded from: classes.dex */ -public abstract /* synthetic */ class AbstractC1880e { - - /* renamed from: a, reason: collision with root package name */ - public static final /* synthetic */ int[] f13163a = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28}; - - public static /* synthetic */ int a(int i4) { - if (i4 != 0) { - return i4 - 1; - } - throw null; - } -} diff --git a/feature/cw/src/main/jniLibs/armeabi-v7a/libnativedecoderjni.so b/feature/cw/src/main/jniLibs/armeabi-v7a/libnativedecoderjni.so deleted file mode 100644 index d91e4130eb05eb01b2e35b7a0aaf2a6349a54c03..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1469732 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óG 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

6g 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

2VkjWKE68$$xGH%IHD765_vLdJ8`v zVd1$3^nQ?z!tEwXpsUE@+*475le-5mn!9l4jOZ}e6nH-G8I?E-0J6V8n{YlhH90Wk_UEXEvo}pEh@CQ_Xq?pG#A$=1Ehq$x&fhY=ZO>3~qv764*C@J<8T% z6ClI0tSz(5V#5m*9Nh?oSVmb!-VS{%$P#HgzBGpB!{`EY^pQs51T%QoI2r=wi5ra; zfIH_#a9|viQ&}b^{ZMV+2a(4s(kQZ@?P9u|iPCl|XHeWDJnE(=0P2lE;D}5;jr-}q z1!q{$r=&~x3=e9nPvF&7lA^?8poz*cslDx?9Lr~-SrubbWU@&TZV8hkE^Sp0oG;R{ z)Vxl$PwV2+^uVd$H@< zbR9G7xON7(Opv%sSBX`1JpGAr)nMov_6wPa+Z!3jv%acLu?r0y%p-WxE|iS5NuSaO zZWJDJ(|7S$G>8qQn7+XzPyDR5?(4jZE&-UD+o6gYnP+kuZw>f%@F?{+EPz(?r*2+j zOH*Qw_qKQ=SzPnS(h1FL-Y&H!Ku>lfclV9o;Q-g(}*-pP?-jMi{E=O(~AZAsi91j4xeF!iyOi(*-!IG(dv6w5EJSPgc_Ki z(Uqj1G`ZYYks9H1tC`7Ub%W48a!suoq@YJu*YTiWeaiA&eXGYZ>tk~3`j(8MwPIPP zutdbSLPQ;*#bW!|%4$5kRh0&LWWhog-R{5IH+ zNx#EyuFGfKtVI}#C68IK|x?Z$&pOCxA+ z3w&uJ&r0BDDU~>j{)V4=+>wI$TbgX?ArVn03Iy}Fbb;@+pesoSp=6}&X@^AIk?cEb zHp0=tam9bl#^V!#q*-}0So#!{eRh)0UmO|08VxcbFWHxVumtt%3m5EM9FDx%t%Atq zO7Z7x)`>h@&X{lWbi@X zp4g&9aDW-8;mv>tl&wX5!wX0>iy3cY+7hVBFl`yYCPayll?$}nQQctUa7p=0vf~GB z>Zixaxkbq*WZ_*V3(aWM2dm-|W*xxrq=VDa2+0vkYOxorgX!Z4UN%S<^zUbEehOFf zVo+~i64b^C;A*;(Pcbu)ESTPs9hY&+NK9TH|Je8klFeaG=&lwz zNg1{TE?#ryy7P4V8?B z(ZQjik%m?3BWmx!F}KXS2wq`Dots`LnAj@T0(wRb$*>uio1BKJ8Oy?6U~UrPT$~+j zWDsW7R<}vJchzXpB-qv9jBcFL?}NxYl_F13G^l-#%TuMFv|r3}Wi4kMdCD|rrRfZx z?l47|Jgsn%Y7GpNcPr!(GI=K&5iv`GU6iMg#%@Y0ZP*;G30thE3R)#Jkx@q#ybA7& zI3S4wlp0i_sxM;DOqoVpMeJNSX9Wwb4+zRsVs8x(AL7{#;`rgX5NJS$VyZt#Oyl;_X7?`;qriesEJ74~_q0Ef&|b`Cp)_;9 zoys+30!58c`i{Z)YDH+FCid0D7R`5%P|PF>I?G1FWIbp874c2Mc+TL(M99tMNjYb4F*@pRbP78nfXMO4R!x~kb}&7V zh9s=)9)BJdKaJ^NRneT=E9(04JyeKmF;3h9sf41PZzMQdio^?(b*ua)#CGt9;W=@2 zPfH`7{d&@l|z@MtC=uAbPP{ zkC_-<(h$vn=-J5H z$?QXPMTqv*hR3HohnGw6YVYbC0zkAf1)eXn3tcKb!pF#58NK;0dMnqRx?<2b-FwhR zQ>Il;G3e*NOVS>|Pc@{)wohs(GdUuc7*M4M;<0=Od07Z1F}i3)57mQOv=zmz`n1;^M3<6!4IAUIHgwCi#TbmmJx* z_vk*x&FV|{U3K)x;cGO)r`ug6lu707o5ycvXOg9`W3>B`34s-^Gem2gEnX!(W!`}j z5>#jcc?5!4Rh3IFyh_bOZztM7gh$ItW4iEgPa5^&2pnCwEwSXni!_&WK`Yk&!qp1e zu-Zk${&Js@>d%?8%Q|UQWCUJSsWgDve5ne{}7$~Aa|aSaJt|bT_)N9mONJXFrJ`t-GVl7S8n=dcEDdalb#cYY98z&O2~NzRK)i3~(u*7i4XyjPJrcV_Wj1gSLhmk_-c+};d1-1C zyfjd0d1!8$r*oF*;N^0hrV;;e1I*;8|D?l?ugG!G(7Mg-kw~Y{ z8KITLg%%6F5qHqV=6Eve%Y<+xgdZ!rMOX3BylA`I;K~D!<_GII?PD;j_ z3kKZ2AUp&OPSL59?g_Z<(`Fq?OK>8Gs0Q$D_Kx&;9%q^MVL-?B)m7_+Zv11FjP({hXSh$*v9NWd1c5I+efo|_hhDxNZhhay#y%`az(>cPRq zMyBu)qR-6}R>g^QS!&9(IW6L%9%qR+q`naqSN<43)pU-L&+DnT=M3JTwlCb;!kA-J z_SQF8u0aD;3@GKJ1co*j?o+fL3)&rnf)F0!(tfMcjU^#gUtR3e$Gti$lY~k13_yaN31V< zCX7}pTkvzHrP${r>>FsgBOib8C1#$9hAW;V|&H4gYWI zy93$0i;Wtg_!Chh@BX5AT&H@7i^jqu^-iIXa<|ao94;Z@dy?SAwrr1*61g<;X#f-N zZpGXz>reVj^H9zwTyZs^OqupXZoK9o+So1-OogHDeWHF!@^4?V-dIe~QF2?DFx6*W<5P zJr9F%vccVXdtshBztgMLYbDv}6*H=oDpcB(sUWJ5F_x*|iF7ieb`d$@O5|<|dYO<> zJO!d<`yI?J%^<#Oe0CmoOgbX)-MMoTemt{p#{?@= z;#>^nrkSyB4jC*QB)}q_)dR?Lka32W1xFdx>K+vIV?Z&ko?|G3EH>;uD0}x`F;Coz zQrcK-@H54HmWdRMmnkdMqLeLZh+?7Qe1t@)d4vE(Y|m#l=jB<0I}q_h&aFy&P%}?L zxlL|Q(-R%EOmkx29N!1w#6)tqoTTyQYf!R0ApY{V<79Q9IxMV_*&r6FK;WOw!T#5nL1&a@9!liuDumDT=4VW&zsEAqCgRouhmKARX@w3Z z%RGA&8+ypt$W-35FY~OS-N_xmbqA-g8AAfRaLCz95~{UPe-ab+S{qHCv`m?t3!fm7 z_WRX>B~Gb2eTI?KoaOxX7z8K(f+96N?-4Ai#Ft**sQD!Q?1jEuln*``#u?(yvG`uh zM9d>W?ia-wNL(@Rqc6_aCh%2{!<_jcavYsGauq0)kd&JL=Aa;OS`nH0I1*cBhbKu+ z#*;IN8VdsTBJTX5pX`}M=#QcQZrh>RYUZ0qsaL+-=^AqzE?ocgHPykrIY2*Ql`3dXF zSl*ye%EfZR$P*NxUC#CL0>%73gT5j)BTTQ%evUO~tY|GcnTDX5^xq>)Akj#u{?;zcY1~+V z@gkyiT`03VtkSKUn-^9HYKp3tva=|7YN%b(a#tYHl!?&m@Xnb9Nr z_N{O1z3P&^2iKo-);VWwS-*Aj*3D;c!GGtNp(mc*ICA*eXAjRc&Yn7a>r&Ndx|%QhMF;I5*%^f^V79~)m71M`?Mcka%cHHC3L%CTMa zvfo0&gMWEleh8WmcM0%KxSoU0oD180HzroD3^kHG+y}7~_ zOx_L|56__yt{DMX*tuyZ5S@6Xg6DU=|x3z%f&^rT)vU>#~Qgy(3tLVlRq}ejxb%@caBdE zI~r9-k8(%%7R|lSN|!4RPBzRpE`l(K%bI`ifJFw`^jDnTIc0tlARiGSS`!!&y0MOr zO}+$OvSPitA0>LsBRNJZtO#ij$7w_<_5il4q*FofO(<~MVV&ivw%TteR6?L`NKE6h zF4=w*xM%}JjS=2-p$d2{o)bQZni@|ln))+B&rC{>_QJRyJhX7EQ69w@m@d7lAp=aE zM}bB97D6#Q5D?+Gfv_d)*h?W6;7Fueo62}*keZ zp`eQwOGdU24o#2%PJ0sIDo>A;OjvC`QH~GqVV?_1rB9G{bCL;%DX_c2V#0{9={f)- z(-1O&IfIi|PV{!PjhhTA~D+Lf_ zIb0|XVk}xDoV^V)s@_3y^pEJI4k1EHzNwJx+85Ex3dt*hyi508wyB8+_dNrAe$%cg z`o?I^-ES(tWa%SEkK!q*%Qn$v%)+Lj-E&~?3!64ABsYjl1=s96o_+$d_OP4b`3>NL zd13#)z1VLzVN3o~k77X|s$=4EQ+b1fB^9ipH5K3YC`d(n*z@su8)I&wIlX1=0H>%5 z(#$5N!N*Kx4NCa_YoaDy;7=3y7X=6X*APD+@8BumJBXBBq*SbMO_i(yz!b30*0|X& zb1B8uxrM8*JbGl4OTcdYBTSh-Kly(O1Z!0H&S1aH_{+i6*Wwk#`PmtHTM4R|%^T8C zbwaI^dlr->iS0aMV?FbstyGrvR>>`5Ee z14CT3LfB)!kgO@V**Gh0Bjuxm5MQY$T^cfztZi|H{nm`zJel+jkUoG#)fhPChHrl7 z%r}>d+VoVE;k_qqG`kZPEPVO`ruQy2g-p)=!s>FleQc2S&N0^BCz&Fx$>oU6X1*+B zTGO4^gpyxJ@I=esnQXBTaGd)hxrN2^ePs6wh6s>v8DTmlsQIzraZRwMr<`CG(XVa3 zSl-U@oV8xNcevELu#u)uzmpOs^SN9Pz%0hcBWU{cqmtu?GXzjZeQ*I$Mzkwv zb9ambF76KAB^GQlI(;IhbV;^?XwHWU)((#1NDFf$P`*>&4Aa>&9M2xJcKZl5AF@Ic zU}H(J`YCN^NYn|u5HQE?rhY<} z#S%)eX3nY>g|^e1shcFpx)v$9n;yW9n@Ih#$>rt__$hV-!G6~^lW3AaI})QJ*V-bE z#AGRV{{P)j$GZ^3lXYMic4q!X$oqQ)-OOaN>EmtTam>hJSt-pWzLYMp&fgp6+}X21 z)^^mJ95Avcxvx4lI5#HuUUd3AZG$Y}0BzPew+(hKK68Um8z2(YnhG(Wba$@GkG~$X zhTov3!mqZI?#~r@MC;jjuiFU$VZX zpW{=>>@=SYT|?yF`YDfTM5~#%A)%V|E!`1(OaB`Ny+eIVe-?n|B>0wQziohTY37*< zmzkm_@7EAnyN1ZSHAF70A@bu=mT&1ZkWu?FuvW;66_~78L*%&{B3CWViwfo$2v#-N z-9gb2AAK_u&j!_uZRMx^vt8^Q#L7PQIK-+imb|D?R3ZWw*f$cE585q2c1ilIA zYLWyiqhtRSM4AexMtDfz zBH)rECqLJqW2tb|OA^iBf29evoq_CoC3yoe@8BV5K1|2mwHF;%ZS>e zA;;Zi>DE^GK`Pf&2oyC&=fGQ0L(~{e?CX%0`XLdDnPl(CbzH&W;LJIxS{*a6zqIw0joH^Gb_y4LMxWd6GsUG-S2-dhLD{MJfTcihmgn8tV752qR zy}cX--(Bp;QbIv>Hd5ePJyKa!J7g~gTO)>!prDd7WQE;t-nfx+=yyRg5#-QgS3G)> z=r5dRL<)W7A3_qneR6PmfC7odT4Q+@_PEXA7} zt1R6$j=M&94Q&TRckT`%FBV7q52J;-Y-_^yG;thh6i>AuUdGj;U=6T?% zKLbCtVf<8i1JC9hl3GH%>blcNcgmdGSk#Ur0*h5!^k+z@{}p~}H!(}mYSyQa&>1K6 zl1|e6R?;kEpKCw%w-He8`(dOd0vR?wIk*fqb}LD&9Lk@mDO_S35l7Ny+Yt~of}iEd z^zLq|aJ~(sE2OzXr}SCj@vlH4;!sct@@j$DS5S%`&CGg%Q?m!3->%28js=nnw)?e3 zvr;}jutsx_Mg5M8fh7=KJ}&6e{5lm7(`%bCqCBxc-m>m_X~dAG(ia+Re`hIPDm?fH zMMHj~)suTk{iX3~G;}+82FJ3*66A{CeqI4DBoFUlj<7>Upo2Z8OmN)uJF*o-Zc*kZ z4VPtXTg?{V{CZa{aA~dLHzKgA5?vvoxg6`#pe1OG1cm<5irGJc-%;W_ClF>Cv&;&z zWlm@54w>d4j0D~NhDC{*pOKN)kx7x|iQuHp6S4M#)-4l&623XOr*IQs)3rtO@C!q& zV=cPEHh(hNeBG1Ke2>-+Oy2i^f`ASVn(Yn_n%}Czs7ZH>?wp+T*w8JUL?qJ9&`Bk5 zkTCHiks)_GCv-Vf*lFF2Pz9xxBi0xSwF?T42OFkK1k$rHaPiS`7`EyvVF%s(qCms{ zu#@H@%#OHpKRG%BDRa027f2x)mtObikYX_}N(vY4#K=WtD5CIV{k_)*8r+aLnB=ga zMRJ^x(G@N+J|x>5I(O6WK!J;Y>A?jUL0Tb#Llrrd0mHQ~FUrZoVXzELRst1xj$MKA zY1AIAkfF09%nV&UoR@MC@vM@wgIlFE0K2Usg11 zu&dEE*0&O$->$Q#XJ%oTfXmj&V}asfw*%MWc=ANUzLMo3^vuCrDa-}VgF7?k0(?rg z8a=X$3u7ECfAqzH95Z`AGIP zN1Cf7${T!P*4z@TVQSB6kIx>7zq|-O3)W|9A9VN@jzEWKRvdF(umFC#$#k1q9!b)I zg-fqFE;*4y)_)Cz#uP zdDrJpFw0Es{SGpv7Hz8k5nsMVxBL3fH?@C`u|_IUixqWk*1yM_-PgKa%x)J_JuF&w zCcr}v?>%y4?=_puTRe^h_OICbZ8Dg9zuOFrFTF$16q~y;$}Hfys*%}EFrcg5;!3s{ z7tcRezpy?1;gbXX^1~Qw^VE&|`+1m0%Y&0Q2^-INk zzFB>J+{|{Er5_(?k2#}Lp1(*18AZ04+9*o-zRBo(Y@7B=`^yRZZ9y>)KH%{B@!4$p zU+lWTkI!aPH?=a-+t3ikXVg61qu}^76A{K|l(TVbd(83o{YMtT9K)jDUg;ss1V^ucL^{B~!pub(+riBhnExowc{J%-^z1mBJ!dhQgbwv)uVQVJL=K z?ozUhdnO^03C2BN0=U&&Fet`73xH^8+~c7R5GvESM{uh7%2k4@opBF=+Zp$~5ExAdBW0X%&rK|lGVT$I(#AbZv?eLHqD(OEkt$mo_b9U1xaSjWkoL}( zS$o2`huCc9H$$ei0C*r|KKb{9%>a|r#yy-a7S9fVs)0-d=#6_KYAysIjhgUz08=e% z+{1}%5k1xBCyaZdiuSQ0YurP$Cfm5@Fu*Lv*9*q9aZl6-e?*khdZj&K+`}Y`=-q&G zMhQ&z#y!Mk(#AbZjHgtnU~%If8PCOydlU?uGO{vLZD7KQ zSytn+sy`9b*SLXbh?|6lxD!;JJ2MKfz{upQ*0|=~%!`d{YMhOVgsc}D9kCz$ zyiX;w(R?yg4Uv1|<&|&?_*Y2iOd8j81>>6CAiGPAYfj}vp>YlO`}HucVV zFs_ll4iMJ3MpB(|%|?&_ITqWWHm><3)?NKP?W7171|5VMP~K@l!m z1>~BoM#eSk5U+E@Yg`Tr!?mj+uE}cJ&TIyWC*vcIQ@$$pHhU53u$DJ9HYn4;=H*<^Xs6)bOFjyk%6SO^wqEmNy?pWP>rS9|kjH!cN>Vb0u@`z|>;b;5WX4Ab;zo|6h9r=`OmM>jNpwR zWZ5*m@nRP%7JmCZ8pUN=7_AiE_AW$6(Hg|+g>U~cW5bBjA%1s(ji}4})=;c%?9KlP zqqw9^h4LUxB=%bf7eA=+>6vl#OMc^(Q55&v<+k)urY(zWtT$uy6)3_4zE0dDWpS{h z&%7CCKsOalm$hb?%w3A^SgzhtU`)XF;7S_2?!lxdCz-Sy>P4|s5xIkNtnrIKz|=vw z-K{f0+LOMjL!2Zh8*lNAAY>(G4DR*ka1m4g9Be}t}xg4wE z5_81ZKEym5oZwN&RVA3mr17T2ZmzDvbSSaMG{iO*oOUg9!fpmcuh+6=g6ub?F5+?8 zHkB?3=+w}dXxlLMe(C*=U?dQQXo~=EHlSPP#(xv+y2FeB7lSv+Mk;k}rvj~5_Dg6eD_+C?KX`C1QtWU;*Ny=;*7&h4xn4?gm_LEJe83B+bI|2|||dEJ*n=BBsi%{psZ z%4Ca$fN~k{EaY1}6A1PRh6vEh>mq7)0+8)a$m_`PETRRQpODu@6&+wjR$fQ625zyN zzDaVqs{m#(zDY2q<#kaXyp1R$+7t4+s5{;VxVSs|#E=AA32~WKsmpj$K{V$>1#4Pg z#*4>uP3y~e39#fu)Ncrt*F|8sj5s$(m+CSX*EC(mTO2eXp5M?CdR6K&o(x>n36$5} z!tSQ{M@U&h3D(SEXi>-s!!qhxq@yo%*%LDiN~c&^rtT4r8|WKM)qX- zF~m)m@nivqaW?%;m+_?T0Fj{9l!&?DjLZKE+@R^vnG(z1;+ zka!{v0z5MnoS1JLA}5u&8ubLleMdvwTQtNCq~Iib&q1W|A6Dof5;_%K-l#Yq|P(w4=y4 zG(>(76;TH8FthXTKoK$m1tcFRL^8njh*vosN?c+JLw=wkuJeKj_r?$^S}|XVG#5l! zyuf6uEG`iZzJr@L)R!TnH!GuF_o5~)(|St!Hw)TLi8Dr4w+QyWz#1dzUx}kskgNxo zWu<>5j>kY%W;pJu>ayo-NT+es2g(*sBnPI%VJM^peNRDRZ#uEJ9;APlf!cbI{*h;w6D~ZWV|6YLD$>H8zadSPh&} zW32SAF58VC5}}w$R{Hm1;5H>rsDWzrjflX3lXffzs!GC2?1UZh{@>;f9=LSsz@bM?y7!UIM#K)+egM+Fv7LNTrzGCE zUIvL&0hfy}TF{5;FGKvgAb~rIXzH$V*50lnew{#R8=(wNde21TopyK58@VYgTnlk((KilW8_D zeo;(TV7;|bD}~zFr}0!Y#=Hz-A;z)9?s-SiYSkw<|ZEt!DXT!mbaJF4GZBbP@~A) z*s1Izhg=CZ-9hHY9$*h%`L?X;J^%Zu{9a7u_r-ll*>hqDTTEpXy7bSQ3NAJX zkKR-!o&WQx%+j1g_n`f5wvFYa?RF|Z^uAO-9OqO<|GYEm*oGi)n#$-wGFL~!q>`{$ zFD_*&vn@K6*^;KIjCt7qXIWDj8JNm>gu+`Q#3EPKRlTc7eSuj(H_{~D2yql@Di;qO9 zEa-OF&F;@ldD|wt>Ms32YV?k8)uoZ^5TsXK8mdi$WrW=Jlf8l9Mn2o6YmM|btuwR(lHrc!V*rsW>r2oYT)pyciFz8G(7A^`l|1m3owp!ef3-qu9u;@tkh zxGNTe-iB8+P{8*_Yf=>Z+Y;Cpg9hza#n_vv3G?U|3C!&v(bHduu{Ki?ur}}s)^1`1 zNYHvJfZYpS<`sxk_yy-}_lql=HGgY9h7Vz{`FkP2Pf%G0gW?MPOhA~`Y0Y06>Rdwg zWoiBdr|P!0393xZUxW`f-7PhLPXUGqbX7w0CnQIjKemmOXKMapEKb{UISZ_@n!gCZ z^l~_z77QDC)TWoAj8~8usd7!T<}ZOvmUcc0J7Z)%^$ZCi)h5=Cp3Ri zMKi3(YW|4U^kxVubGeHEW-(qX7}J`+s1JUZC?nbvn!l(!UJJOmJMgxxy5S@))0@)# zNd?iI4;8F#t@(?`b9HOYUji&S5mkPun!gBaRbno#ZqocM4jK^8Z)gb(S0zCrhzTtN z7j*))V>hw8sYsG#v4j$=nZwYckW;H=)U`-StNF_)*p5h%fTC?T-R7s*M-g1*+D3mZ zp%Vn!kr);EJ6pt&m@K7&++6M-LmdwwXnG^f-%mqc_s7G`WU}ea)ci#y`qL%)QkuVX zr*Oc?p5#VBljctra2RLP*QEKAx&wq;M?$SB6SG(LJpgXtT|$?NWg;)8wR|fuA=dVq zGQ~Var{#ML64#Zv^7P2YJw`*^M>NFE!YlT6BjVj=qAKnKMXTkzig~e?ugnRnNXVV> zLWmgizs0ALA89^$u7=29RiuiMrquGYNa#sw`38cPZxhC4K(%~72B0|+TE5>z+DXvz zG0&8_5)?JrbJ1z}PDZ2@w0vcbpMsG!Ylys8L*%j=B0t5OW6jE*BLta6m1Xi$1tu%i z5P7DC$Q6sK+Its*Jyy#%;I(}3Ws|&??=vnYYC9hj&E3}|PqchmNVI$k6M+lte-k#= z@=1wU%O~YpX!#^B=LL!fN>>)oJ-Ef5Y)0JCld0)c3G*hrhrgtgJDWGUF_dv_WdlvMX!Kd^LS@v4qyE;cgkpVh0~$Tb)zs``x@e!R^8rN2&qHO zO0GhavqypxKPXo)i~0 zy#qnZHwkJ7f|idwV<6J<$!yBf@+n}f<=aI}Ud#7P#3C)Zm{3_WPP3#+xspf}7C}xt?@?8$xrpyU-Vzqh4ExIBAX-`BS}n8X$yXMi&OGwfGW+7h-d>J^?=E&^^7*${ zA*Cm&?*h@~CO~&O8@dJ_w=r zd=y%~?UU0B@(E}D{crOom!HRDOtk9{X;n#^Y>Y-}#rz<=!tcUdUPxwa%wwmUmzSdi z;VDu9rBg(|Nl>|1Umn8a1sBWZcTP_Y&P^;(=n-mPmA9u>Ji#$5NDAQ|zyrV;w2-(5 zz)A`YzN)0$weu4gs@3=@{fasAiihT$io{A3Uti@rXBd|0&)|a+%jU4jfD~XW7S8-J;FW(==#!Kh`{F)1Y+CqwA9x-q^_ZY z7YR*Byk8T!uLHq0HXKGEQ;nVTBMuK3+`5mz73!@;({x?+yL>RZiE(U_N!>Cfj}1#Wnv%!1NeYI3r-=R;GhLH| zJJ5I1CQFv9Q~S8vE1@R|)J=GZJtgd={Sq}@gHw&k@%f#@)K&=g#V{&~z7+6EO2DgF zN*uUyKjv161Ee8#slU6BUMb&2X2t7e)48~@@L85liB!jT;DOOu5vc|qvE@_5L=jjd zQO$(JU4<%u1*`Wvve_K*2)y4B`c)}C!@)-P3o`M3$Ri*HRv4EFiFUoBE!K$lb$mK* zR}$wsEo@?;Yq1`}NG}eL8XjN`_GZJyDDI3}ip3IVt~Z^$nt9=)szfI5uRy#3 zkun)~xB`(O2t5z8KL|p97vT0d$e;*9p8|-Mf=~}NPpC{msNhsl-!lYNJ3%Oc+X+JV z14B$;LJ%s%M1oMZZ81TplySnRm$5)f5GoWwAeaz@GSQ0f-hnbf5Gqx+7KAFYSP=T> zY>@WO-?8?DAe7i_=0Ao^Im+d7{}M7!yF18Nn4A`ba$ZEfO7&I zCVN3BaWx4-nHW#0P{HDYP#Mp~1)&ONkCgUdEd9hv2toO@VeKMn&$lMI4FAQu?i%%Y8o7@dE@Cg3zCZycJ&zGn2_J1ffxhwdoRR zL1?;D*!LX5Y(c0j;4sb^f>5bDK)7`z)S418i;*<1-~R;Mz)MAO2Z6}f-qEq1hwXLd z6n++&5|8dpcOcG2;sEYI@a*O9Knx>tVu{O9Ph#A7G{ntCL)=099f;>5;zgyXpPPfb z1MxcM#nRCdXR#t7%XW7lKI&7+q%@z5SVQExi8~PYBLOed96oY%?&y&Nhb}kQ=c_?F zdI|=ss?yOOPO!C*jy?%#l#Vjbl(;+;HF>s%$dWZgo~t2pR}GPmW?pl+iXd~qS|Sfs zV6spRkymPn+|XWgcsGI-D*&x}0qFZkwHJW?y^D!N)5k=p`E|(?0jL%d0jR=6-~#(& z!o~tnDG>`mrCbXEsN@ClW`+P%`Z_>Z0jQ)p0ciD0>~b#k=+1(2g`2VX%IlC{;!@X+ zB6H9X*L+k&7x}lC{XG`pVpl+}_4t}Y1&uCq#7kT+3d1$8A+BY;=5RJb{+a`6)@u%< zOm^2Ch$i!z!$D+JG6kSjFKy#etfmB@Pq>HO!5JefSY(^Gvc^aNTH+|_HHR-T%UyHe zc&x3;BwlAKy0SSN(rFy^wPgz@f)RYZpwH44`eq9fD@_8>Y7l@%Q+-NfVtpnDNpPYoD$IDFin_fLNJ=X7vcx``GhQ@N%@pr|oAHGZ9Jj1_=Z zWvclh5sH~)1)%$Z+mtw=)>f<6B7&FcwPQI@WfE3mCzMGb8u`ky4_Hq<_cd;Xr*BoArluA+nT9soRByGe{4FXV37gJ*Qn>$ue z0E(-5Dgd2&?!lu62Cu&SQImj9oNq*qRR07dpz~9BBXzui>&}C?;lMkuLlCJI#_$7S zZaQyUiT*os|B7xHWtovV2(^lZ3%@Q2GuVuoP_+rL+4GkZ6vWdN>>g~e!FZL9E4*=A(XcL8Pebad z(QlmI160*YPJ76e{5pv*TmMnlb*vO7SnnV_kO_tf0wFa7ZY*_Ft^8!IOgc8GB zJ{IuU=2?N@SH2AM$wdqp1!>(0_lS#4adc@jAcXavLP#BZhb?eWu2UWLH7|A>BY4e~ zhS90S-OAUfF`aBm;q3tJB*}S@Ou0()49$H7&VjsStZ4%8H=W;N`J`w}z#vK#*;rGV zc|l2mNf6DnFEM61H=>ZQMTITx%X}aTWoX?v$V>7xoLb=sN?krn(oNr?2kg; zhY@r$lgXw#)8Z^DaYwpDZ_45<-6P zgU>rFwSPclO($2YZv5PrG{n6}L)>8U&i%x%5LxXaAdh=T-dd@x!8BbR%V9b>$rTAX zdfr;84f<5_FwG~Q*3eEu#uuNjL_$|m4$~jxFrUR(_NyG`CIE^Y<{L;`2RRJ$Oea^5 zq9#kvJ1ezMBeFUuR60543PyIWA@XYtkuz(EJUE|arPha~U3dspc9Q=pFxjt$$Y(V~ zPMTNA%mjj6R!GzDg)}qwp-EmybI8Tc!C}1YV9qKxPjTP{x*t`Q79n!L_V@odp~nH9Xh!L6^8smL*xT_@j!78LaVJWicZp;7b~^@ zV6qj`bP`QIOBS;NWOrp{)cd_efXlc)C8YUx&~7?8V`TM<{N?GuCCgu>F~v@fQeGm@ zXOj zw|xV8#dpwxAfzGB=#PXnGMlo5Gzu6CY1R^x7t)-9*oi?%^GihS4$JA_vUCG3bbmLQ zYdQ%OHAbh#JJ26dV>Gd^UmE3yL?~vG71Epu+@_Ng3PPG~hzuB`9mauDmPApw0fnn0 z-=LiYDv<6@_L0!o$u>r0NzEdv`7LCel9nR&HfYs`;He5)Fz&1i0~jlrh`fltg2jm*vu!VrovQy8DZ zm-zOA-nHq<4LHiCf>a0k6;YK)>@vvrKvx0pY zEp}#RF9PoCtL2}e1-oa*=SOHhSlD<=RoXO#;H}kuX0pdg$8FVr&lgP9_6t+)sQ&QO z90ZR$=jKNzcg~F=>CWooP^J#6!NztN;!##bd=LF|(R}$|VjHb{(aBwd+wF_4jWVIS z#19C?P>i`dq!2|()Z=ssUalkgrh9~9Hp~u83)H*qb9jaE?oeeT$10bLh)nQpADNp+ zcS4FZCUIW3*J*TYn7z2105)NpB*;K>Ec-PsE7THrO^=r{4yLO2eK>yq@mgiYek@yX%v%&GfI?#ehasGyO6VDt%Ze&}SX1BPneG1F(J#^K9tBxKyvhR{D=4vTokG8WTLt9J_ZZi`q zDQA_sybYq;32u?nN%?9vB<|S$zQgKF5T9Uv?8`d~L_V5X{)U4L28h{MANM0R*wwF+ z*KEjbro0Tm?OG)TY#F#1XjcduEsHx0DiCUIY0=J+)&06f2`4cdG zO8zUo%-Q6{$U70~;2v6YqUNlt%)f_87A*M20B)_B7!(V>KjM^Zb(Psey_-;(7JPzJ zMW;6ls!YLhRBJm6zK;Pz1e(0cEW|{DWwvcG3qC31gn9qM0x1hV0??8zVZj%*=_e=? zEcm3#))stRj8Bws->VNQ{cCvPB$;$x`mfupUr$8ef25!h(-ydz&|o zJU26$+`@t{DlwNXk+$GVcM1ng<{Mv$YZ5HW0uJMxVZkSL2Z#ihw)XzKO*~N(`MtLGGdcMLTW7XtB0sd&Zk5xtPvb{Zd`I** z5bt<8`lL)c{r%uUMB@9w?3Cj0%uaq0Kb?6tT&$LPLTkEj{bD4-qOi;(m%nfQCPYpw zlRfAGj2oebxY=olJDN8l{4^r*ed~`g(@L_x#k^ROUFND%B-}#Wed}ddKblIWsUdC* z8saXHxNrSLB(%0DJc^F87KN7rP$b#xJX#bo&y=}b6*cz|4RMRm5cdELk=tvCd_D6@ z^(P7P`y3kbbOk0$*ARKPhRB`mmFkBOY_=%;CaLzq>fA4FOr*~~CIaX_$rE9<77}5# z!bIQ#dnRFHVYQTqh1F87g|J%kf+#veSS@`WAaJCIprS)kov?ZvNHArx)#!e-a;ZGp z+%b>*GFgvy6q%KV$b+IH%5)yj?2{ix5i%bIB=6A>IgN(MLG*_7(vl}D>NZSoQ2NdE1fM~s?;DfBu$124#$3m?Im!S{*#cB3B#LuJ& zc7w_#IOgdzjx9ve3RhA%c6R#CuQ`CkwswOr1GSOeAQyjZHz;!^OC+s;u}Jzg#NP#8$A3gYzfL_Ip{7+x9-AAQ@MB)D%lvF0OtZ{)EG_dOW6$y#hhbSB>gtvHf2s5 zh@@{p1cq?hVH~Iq5>{p>bdZQL8&Xk`aiWSK2bUYvdt z^T;5}>i691mHvq6&Ls_;{6gng=IQZ|7etoTID&8ECsff+OM=9K9LeRs6suux{NmMaF3MVly{*x%| zE=6!Yj_1;H4`7fQ^^&<2|0?3onJEF?q(nmj)F&w(rA8@H9Akzl4~@;t;H5ReOsw6V zz>G`c#~RF+I5XXYtZb=5#20rh|+NNp9W zOf@bDLkqXbB*VjGDfAGLN{%N)qNbxU)7Uu)iFJw?62TFyCJCvg36V$VBSK8gYwK=9 z|19&dQm)PwRP*|kuS#~%uhhBbYR($t=gf7HQnAiHtyy`_3FxS0Uba)`oT%Aj>}F>9 zBW;~6rW%Eud2n`i@S-ilW)5kcskGiAk#w2j*G_>u$vW3XqS)49^NMsaq+Qy3RcBO; zi?KF8c2Q$yehiP1&zZlGGEqWrkxtKjJ%26*rebB4=OTHn&t znd+1t%iv^O;pms0@6rI&tw3OkQ-iY;b4ckGr@uW&5$?gHK1o`+2f=mh&y{I_7?v_YSoiINHxh>eQJcsAl`-wO?yv<+cHG4n}@D9Qq7>$T1pM74&N9Q;AiJnrFu zp&=N;`nQ}hFd}6m(79-0O3C4XuvJkNe0{U9!;IaCqd!ZJFk=8 z7@C>MjuhlS~<%72H*u&aeaGuQA{St$i4-AmAa|(~9iMcwP z_Q0<~^K1vD*&8}a+qH`WB^^HuHx5yY6t~QCkDQ1(6H>DvVwSpFgwB%QEKW|JqlbcJ zg+G76_uufJ7sxxvTA6ky$=IgjkJjC$U5A;0$gL7FtJuRcqa0|eoiLIF=O%mRw?cE> z#NIwfAU7`uWgTD>l%DrHn6^8K*Y$?qKNKj?w`;o)D75av!UcT{!=}fnzqquhiM#P% z16_6)torM=4$S*S)L)!DrUWuXl|@_!zZ&rAti^{C`3E|KdENIm<*(MpX@`+a_7$0d z8$q{zY;Vbo_5GvAkbnYnMw;#WMh_;dqXo*v$MwlomaM~V-GyUgWkOYCP~tV~(Krxy zn(%SqDncWcfs(AN5BBVgx|su;rUv;Qsb#P5IOeFa>)kg}4`PIOhce$h$$}JVeqnB8 zXkl=EVGF@zfrCHdqwQ(iu#0lImzR4Brp{sItqi^5(6rrs8`*u~jzd%aepCMxK-OHJ zUyq#z+h>I*2~+2(bj|hM*XPfRQ+Xn-IXzv_9QpHUYU_U%!22?^Wv$@h4CEYFL;8u+ z4|rV7Pn_1@m|4m{ar*u2ve6T#_0KsBNe!T<6v>xF2vPGH&nY#x*&D1*qztmpC z$>+w!(8s+Dc=Xx%;?-u}JPE6m+ zNkbhV)Ja+Qas;O;2(J=Und;LBpE;@Zy_^>ULj*dIxR)a&N9t3yjg)8J%Zaf#J=9Gs zu%7gR`9=U{ZAyI_wdq!r8E{%gBUP?%zL%3gCL4uSpMHW3(%$(pYsdSs;SE?~vzgxv znO1%JK*)UZ2?cYq-4U2oJ)u5jl121xz{TA$ z;O^xR7vA_CADJ9>Nx7U<5Y72e!HKQ!<;3H8V(WW339#fuR8gtk%Zb3?oKW9@mAQCg z)4iOp0 z!FEKdVj`Ejd6l0TcOghGqf*Qynk3MU#Hh$uY!OFdvXoPwek;_GU(HDt-OH&X!OqOb zAn0Z$lg--9dpS{w&FK;+rS9dVJB0&A_GC`VQlH8K4&w~7>lrkRpX&NH_A@s~-2oy& zt*H}p&0QDyDcH)ga9yNMQflctHfu2lFeTu*k|wCtn~M7 zzC^0M3iH2QOmvbyCThu!K0=BLQwxa-Q(+=-fgK=htiqHMu?kblwNPP7UQkeGs4%6k z1B6v!N~%*~ZUG6VPS#dS-?#ZB*6{KXa&0&@M= zqWd=M5MRy_uXAZB4EcbDxW3cNg3F;M`pi8DEwh@-C+b?(Rhu^= zqc1C?zS3X#AU{|c-#fs4f@h&Urp{R;VqUpk^9|M*DLm^Oxte4>%q)8cr_M22Qarl$Xen`%}0>Zmq@9ul;a-+_r$PLPneK=7dc%_ zo!xH^!bf!8{IJhCN;!Pws^NW?T>7Z#JNrkBXyk4<8TwAuEDVnf%?!g;@&2_?@Lho) zC~hf#ap`^HAmv9V6-;^OGz4BlBw57&W$GTRSK(^mg2zD0%>;`6>vx?7F_t(|ej3v` zm!TtI7(#7U$f-TNresJ-hfID-&Ud2z8t(<*8qKi=QA$jN=Zr0zn??P{h9x{q55~u~ zNmx))#>Fa@&F@i*bBS03a!Q@AW~PcxZ@%sgjF7pAAeW*%Q#kg1Nj7y{lbP7raD)=i zjlIw*o)Czg6k?azPb13V2vr-DG9cd8?a??0ybm}BCp4%_ODq$~9UI|lof?^?LI)j0 z96w%FGVCbVNykyIMdWL0S@W_fa3b54j*9u+GmZo{n`Af=beuxdhqdW**r~PMwK?q6 z$0nmLAU3|OCP|(S7iYn3nza>RI*O(fa3bNQ4*6~P=jv}r*PBkxM*2j^<(SI>au9YV ziQtArQL2iEhIu;(bjdXEVp5$Fgsxu_%1Jv_ zn#2W++J@EpOH9_ZV4(Df;;qG?8>Z`I6!6$p>eL$h`xDp~gWhbqt|N9QL;5}<1u`0M zreExCmMVP!Ya-mI`8R;~=-$cTN=lXfmTRduEmcZGeU4BkWJ#3-r^-$KNl;}m+^i`F9gxXn*Um7}`@NEe;wG&u?f6%}a%`R7nOd>I9ypd(e$5DWnimmQaE3)iBL6Bc0QcP}E`c4pNM`BduH*FC|VzQKzDvg9X zE=AC+h@?u~iR~0Wggm!UnQT^MN|mA#&rg>)AthBxcM1oL?8%&fA#O6tmjxWg*__ZM zRg$^`M1oq=MaD|5jH6m-exLgZwCQ@!p8sg@oA?`5V-OB@r^aTl1*VmY7B}`S!)4o{3)b+4O zLYAJl5~j@vD{3+^4Uti6h+H}0?qvZ9%aanON{}#p7-Uye!t{FpH2sh;v47S=!o)n& z#pR=@$% zNM4{Ju6zw~MXQ6BS0dDBg+pDO2Tg8|K7hn^y{3!vU46aW!7^6P)Wz21v*bqKLB{f| zjC#dOFSuGODS^_5K)&hXqzO)4wxSngm8;~a*u{ZTr!G^>vI31!9p?m%Gmd|5lF38R4>YpDlblm20{P6g5U?$MbqRisgVNQ7c0S%FgS zu^bN0ss3v91VrG5L_3TF6`Z>K6JmXlVQ3eD3Z%P>eIzt?v5gT~QnMUFR|4+;s#BLP zj+J%l@>R5>z}4KvmM5LM{ET^Iu3a3j{@z{=lJ8CSbJD5HsYqF#ls8r6Ue2Jc`!_p`hQGAb4Jb9|LjTlB!q$L@XRdE#W3rGmG}2HgL?Z{x^nN4 zeTR--b|t^@a6w@#Q#5Q?*nJ&QPqvl{qx+r|B`HzZMylNW}{6Dv`Lz# zZ3LT}{gZ67+1>2jO&SEYq21C*nv^sJN`VHbf&#Djvq%+usfbvxe%^vbsuT;py!?3q zEfo|6wEif93W|t|{J{Rc-*aZ>nR)K>+`S9zr@eV*=FFKh|IVB_bLLFNTQnVDzDkS> zdMAmsS_u~vwT$HEt71|rlmlM^I#a`QW}~yPnVo6Qj*l5Jcp@#WguofX2rfs{G0UCP zk1}tSnBXks(D(!m^CiyJgGr)8VJQhiqDEmTr~d|%(|1R{ufhSAgOi} zcio-peVU1>Ak|GW>%n=(HxTZ*0A1A0I@evl&cFEdi5ur{J$>TT*@ZLaJf!z_v!6xX zXf8y!%PvaY%v_(9)`3;)T+>{Gh`unQx@@>P370j}==i2865se5K8(45zwS!~36}}E zYyN5kmqUSNgM%x;grLndzYbI271O*L0F5Z?xkBvjhPvdN*oOK@&x(K?m`)S>is=J0 z4VZjS(r$Zz&0xB3W2w`Gl~TWpU{84m+Jd7~>m&*1A#SP|*kt^s+)|Z* zIwW!Q@an)&pU_6@B(#kqhO-WVffpYJhM5Ki0nNq-32M4Y0!lyXws~(txaZCI=?@~G z{FIucpWcU+N7TZ^Uae3KtYI}I@2U{#O132d`YMkeutBC*hQ9G!1&|g)_*>7de4Y>t z6QVkF-=|6nGRB7qiHHIh65bglNHfyCOm*mfo3H|Vi^DS$h_J6pV?!GdCUP=>-*}^=PV8()yIC`#)6%xZoE45g-?~( zEGwXTa#3HhQLGY7Wk<-nszXm`87m1DHs7koWMkskvqgn2qZmH}vfP8ol+J-rbN&RJ zD`_i3jV$BKLdJk8TbWRn;j@92N{r_z8WiJkHVxhuX;MkA{6%NMoyuXNj&aP!tRmM% z`?JMCQ$FDp;-8R#w@UR&W5;wXbdaTjW}86%1417HICD_?jGjs^h6%S)weZTYM`I5h z1f@N2kZ&1alVj9sKXR9>Mp8jKPGV9gRjkndUy0@LU@jg&aHLf{9$LsNdIH$VnbQ~( z((y^dqM5D<8ijWY>Cr2=a*z*bv8%WD{}X1{1*S}%WV)G-raCY>e9$gX#3r`$+3q@^ z#W8&csMg}_lErHhEZwYv`rb{M9FldcT7tCGsRAHQbe^cP*o-n7GNaekmJ_9Qk(Un2 zVscIG2ecg~$gg8~e`97JX1}(NjAYSBSaMWl_G6*PqWWP8;-K@ zL#P&c2yG)+96-f3iVu6?2irYoyHCc#)4K0$Nj$r;{Xnfdx?v3jH9qh-fBYsa)Hj?y z1#e2X-*EQC=~MG3Pv3C-q#Ji;O;$NioNpQ`!aD@KW-WEpJQ2^<*|NN~cz_hCd$%U$ z{%tLo8p>)xBzdo}8SQ^^VVMy+2q4)71EA7`LYiUE#ppPKp88NyUi;f2?GFVfr2Q){ z6K4jqrR}X@c~MFvt~R&}`c`fIRnA2@DHh+E+0HFsX=ZS|Io24T;ebc=I$tz`Z27B( zRF7!e)ULSYe8#q|r~O-!r8PT3T3e2T0K8H<-Z!11V6({>37U;zHqXrH#CQXKGk%CB zin8W6Q^=a7$+(c(qJ*E?db!Eo+GN7>F$jD{$BM%NCqP{4WCGZEg}UPwA-bKjkaH+5 zM97(&q-+v4G$$H&cMiCqp`jif7RQc`RfEJ3Sy7YAG}U)d;r7a!O*i>b&r?{x zy2*F+i=3hk4kXu1QkiuG(diQ!Y5dKm`x(rUp2S{mZWY+{jP-IeV7ljHs2%24Gf+H< z?fyALuD*V7{W#au%0C|l*XrixweC)5^+XiqH}zo-cCMAhza|LX!E77A1E%{?htqkC z+p)u3^ek3U@*O}gjm~UEGRU)crbQ2g}cghU(*ib&J^?y+oB8rx0~)?j&a^{;?(>t$6p$g*!|PK zhC(9W6{la=h`w#6`>Qdo=O4dq;p`o^F3cZ4bLRLRG0Nv;Q0~K?j2fnSxhWiDUT?a0 z0NnSbo}H(C$puw5WbgGz(4xj7CtIa?A%%SJM?k_sX^xjVn%BNl9T8JfQ z$B-xRI@6s1valu`l~R*CBYfEkd$7HxdoIM6E!YEoD#BL?cD?ET?Kb$*E%Lg(ZR(qX zZ8qKi?(pez$g@79dk(pK6j3@)qUVrbnL=isL+*Zo%fUX$G){UCYq$A`N0Bog5M}4! zZiBJ=YYu08Lu!YqHC$DrTTWYd7}V~Yxw-tkvVHk^gL`G&LjdvPA=5FwF1vP{H+ob# zBh1$YfT+tth%?hZf$HFi2xT!GM(rPl7&BA`7D zBq{R3R{N6(S!jRqE>=ie=Mk2^KD0j}HkMH{INQ)ZHDYXCctr%?YdfBQ8z)#pOr8xW?3- z(a9+Ux?BLqH(WmI)&k`hnHE~0baR|55;Aq15@6%mH1G4VWMi66R;^#;%X-#?0m74p zze7ak!J!qY1xj@SdUv%z=_R{c4GR<=s_>2z(@ZxfkfJ76*Do?{{UTS^FY;ggBB!nA z-ElfekafV?O)jgzWU~52ZmM78m)1Aq+wtk%6k6deP|lEQZ-Mg5F2tjmnh)(lsOx@7 z6AKj0Bo-(N6MzfsBZLhtP$WlafgN016R+nMj|R7nr(EUUqIaj-9x=X5kWrW2*+<3Y8E47b1gKbu@BdMQTlQKB!%hT9a^= zuL!J3WN_qJlPF+lO|prYyfw+i2nE-Zoq!clcRdLynd?beG|CovJt>1l6L>u-LZZ=fJ*k_WQP=B9J*Z_5 zr(QQ}4h9xnPx?uwkrQ^aEmjW`#L$Z?n%#IWL!e*=ia#dNdz z%|C%Ac*uoU#%k%(OD`Kfe)8mz<0o&NS@`jJWc-_HBPvBP8i9%jV@%dHtNW}R5d#TE zRgQ>t1V5{(frkW{5Bg2{PS1N7G-b$fxZXF06E|FXDwReVY5yD=o@X(>8o~NluNYP+ zK{?ligU3#B2Ec_#6OlK^9nQtb#CFSq7GkUgh8A1#>}J`5@>M$6ke2KQzK~_ zZ8bWKgLelxJAA-!7Qpk9FLz?}$moRmZ(pp2QR)PGcO2#?ga@{X$*CEJwAhKp{{5i1 zIS&6*H0D4$_G*pEDTwFN(Op!_)>4JpsF|6v0rm*(R2oIze;)hv1-&BhXto(-gM2j!x-p#|FkX20Ps4~^{yCau2Oj8tgm6QQh3^Q zeJ{qP4gL{Gdt#+lQrJIr@7_;OVJJIn#o^;nFn zxL0?W{YQMGNv(@}71PFatp~VyK6pym-0zmVLkl;aIDYEKb{F>-4jc2p|Hcj2kJCJo z&I(6I-~tzG(npTM^{`E;ST}I=8d?G4#LHF?U+kPawp_=ba-& zR^=K0-ggqswQ{~KpEN;v_%8XRGIx{omXaO zl|w}7BZU6~l4^nRWt}u8-uQAkfNMUKlDyD=nuV+z}A7Vl2lE zY_)RF&oZgiajeGcp*Kw*YYM3&0bzB5i>J$Q-fcIGeUCymwP2l z8ss5ISi+EKvx-8b_|hF4hkc0bDJ8)YASA#!I!=A$ zE=hIMgx#hw;s%|o1bH)IOux#%e?FWq{p@LMqVk)D@)GvWzbO>9g4xx1P z22N%x9u21rK~k$B8&0RqfDUIGpMi1Y%osP=ta+MDPhTY&Yj#E`fX4WW>0rc5+vu^r zKgB$)vu6@#*%K}To3F=W;~g!8DL0#X9f?W2=?WlZ(-pXeHzx&Gyz6QQzunZIFWzZ?N?XkfWoP zvogW&EM7t^SD@`);>w8IZm0Q7hV;Fr{Y>IeW}0UH~21a&%!JZqipgOMUPv>J6p$Yi+@v7uBt&I)Pkyo99>>RLp( zvs5BBoA|0UQMA>i((BWlU&7}`yT&luVj-Xybx`QHc>W&A`sRHA=#4r8YQ80ST*a(Y z5iVvH(f4e6WYiH9R6U7;tWgKinn6AFv~BH9!spLD z76(lc&u%G%rZs*by~)6;?oQUMjgMKru`p$x{=9f zGni}C5#;!@Y>xFAqmFE&u*1ln#Q3Des6!@j+V*CBi&2M^okB#^nmREj?o#V-q9beR zrPex0@h^Y=F%tu27)wsF<{V!^nSLn1}HQo3a0L66UTZp?5rW;H%bxspSP2R0vWX<|T-m72avie1Sn&g>oT!e(a z`YG%b$V(NNtW>|qGxdvHF;R~p&&H?qRNLR{O*ftg91;>kj90jj*kbsQm}A@{X=1ve znSvYvxWL{|*wA!Ca)hQEg1f+UL()>ij2zPqY3mfinr=v}Gu?OuB$ztcS&}u~xDmb4 z_ZZUaobuXGWD@$txgTWF$^I55|Hf%#;iOkU&iN!bW&9vh*yD9hCxzkM*Dua#eOmJ? z_^Mf>jyh>hMQQOz+)O3ckt~X=r@lDW<4I*-^ewlw-F7ksdF@BAY14SY&~Q&<=J{DU})>nOHAI@<9vj+a23Q#hmHI{A!rvR z4hNS+u222oi{eyMCs0rs9UAXL%LbLv$iZHzsqYe@m{Hc&V?A)2ItLVNJ+>pzZHzV; zJF1U_)!7JrB%;nr1my~95hX80!ceAlC84@CW9xx%k*$Y<=Gl56C1dN6MI(Z%oNQ;X zXaY~UBP1FvwjOnMMxwSJ|G}zquGU#|aJ<0QV=4TJ!bRHM>Ib2Mg&2L_V)A_RbosCA1We&j=?eOUv7k+HVU*{ju zGnvhw#qpPToTcYfD@i1k=X|YZ-gXAsI3_WL8%aJaIe+4oTTh<2L0_2Uq0W=|KL)$$ z#Hr&adC@5ZB^b+c{%yri>vK^88jBt>CEQnQ9y_!T&yS&Le(841_~{0&d(Oa`WT+}( z?272uq3hj9gijS@?>blO^de5@*PK(tRbT8Pl!|Sy$ z+sz@5!E0f7bY8z2@ty|NNfglVOCCe2fhhn54GSUOR)SL%-465h2yrVcinIE;9k^Xn z|B%BR>&|wV?HGjGNRj?aZVJ^eK%&$$%H{QrC-d`$ddEY=5UlZUN4V!J_^ES#RIQfg z{rFDb=d5$K=+o@oHzOk_cxj3mV9D0FIh%5^b?yb8ybE|bK%E)ID8C@ zh>YRn<9ZH{8<{h6RBz){E2(_$A8Y2pm%`f;H8In$93w|y!grDIQJ2uf5%S3R{&AdD zB54qIa@XEr^DqhCg1|*2?JA_*&9o5L&4_%Gkpy-HJdDWiG7=s$pg^PSp%}hVGs|8^ z?1#hX4Q3|Ha+;VWwvtM_@6JqFpgrnYL@w$e|xp% z%w)^UUqep(Re)FJvNU_oT!D`1N`uwz;fdz3oQlX7+7SW$#1XXpo*p(pCDGG3#in%{ zLGX>EdIvvkxK>Nn=_XcS|J^iQ2$=d$qUfHjRnpjNx)?Hb4xpaRT_m#CRJIAl96JF! z-eLX$5iQHa7h2qg=^f5%Xln=3LWDis{20TsK<=}b;pI-bXz z+m-%OO>=S(2RW}W@6P0u1?=7!YPb2b43sP}LH|CIql)H+lDS_W>1xezllq!;H3 z>rH(HVguTC>@?$9xSg=Msb86ayWG4e3wOEM2xHL<+%EHLS-4$hlc~Qp19ye_NEYr2 zp5pwk4BT$>4_Ua~=0Zq7i0v7)(R+ ztK`iK$8TIXvlXrPT93s`4v@x7{Wb@ip5L@V{uz%Yl^)uFgO;~1ik}OUFuhA&5mr>C zm<)0c`%<)`!|ddvtIbJ|!Bz5VFs%A9L~DDrH7tBjn!BxGAw- z!zB+ol?pGXRQP8OdnDgM_8Ys)S6uBy)Wv~Hh0j2u*7nrtGq)T+X2T zW9&PxG~ehPJD@@Pqa9J%#VS)MA!mWw`y? z2pMMC^YBxr9Gvd4b|cgmnvqgssfv#EFq53Nl`@cSy>4c-+j$?;_KJo$L<88#O>WQ9sO(I>A|*x8;Qyv9jPKPGe-SR<>K2A7@2J# z&{z4vaKh)&sMPPTyyGMTa3}_=Iaqu?abXQl%aBl5FCk{ILaKVkkQWw>qgK(jzH-T% z5R0W+mSDhbt_(9~-$Y~hAiXsrYO5gYJ<97au!eo~Sk3evo*N%Nh|tp?cnhFy0TdByeV9irKBG|98|MImBwf6L^2i`JxD&`8U@b=CxdmS^(9v`?a4xf(Qm<4xY| z8K0dKvubLI^NN^|B32B;&T#sZ#O@0_AXqb4V2v0TCPC8=le@55TC-qXNq&aJbMD?$&;KLUSVrME~a{Zt5wzpbjWINz55A( zU!X_w{2b(z*bazRZ<1N4J%n1DXO$&5)$V9SP~}=>1^CR`Vymo4Uhuf91EVdN+`}V{ks|R3IBsIh;RM*m zW{}Bwl(owG6;?=F=iMwF&qSpUh!dMl{QWf1njw8COn5CD3stbm#=0A#(j3f3x%JjEh%32&WMLfHu5PG$U9#EK%H85&RCF!`J5qMVpDmFKb ze1wz^a4!g&jurWY(gK zTdcBV0;m0K*0xw>N!ckxM6F4PxrXz3D|BBC(XY-`C!r8nv$i85YR@w17=CbXSth>3 zK1a3$)wfc5mx%JvuFB5$Gw93~uBwnogd5Y1VHi(%$g9nNmEv8^_UyMxqAOq7-gzOcwLHw&LRi#onEEX5- z9Ia+k)QIH9Nv;2$@|Gw=QA2Lh_NPe?v)vnKGn&j{sp)Uaq;JOTWKy-(|MD&6VA8So z!bzvSr=7=4ep)ErbEPfiU{W);IN8$Kq%e0Ez~~6K1ilVHBG%~KPY00}y-8hvv#M_b zWZ0x>iw-u8a5Vx)$nPo6(y)NSvo>M4WGZ-XCM%tZJI=t08|F#xa&j>vk@sb?2?V=C zM%*UIHKTBLjLGBR0~{cM9jTe}ERC)w!+4{iQ7}I4vqSds+5JOHMS90fS=r*p9{Vi6}8> z3A4sc7z_F79LOA=vzGfqM__qNuwuz5(?JuKgIf-mq*HkINBZ(}#g)=Nv2ai3kfU75 zj>|PvkQj6(?L#CFsm_8qp z+=T-;mB+s|XEA*V0$UP_%({W+=1{-50n{(<^1PAs&mb_6T1+S0z}2k9^h=l)T1+RD zG!+TARZuvJv%9zZSZ*XVotq{7;?78K^Q)X;{uB|b3N5CeKxbHs>F)y2RN(B663h@R zrkQ3Eim-~B`zrn7wn@LZFVZjWfb@%dom!s7^f7|`C$J{m=O{3@Ir_!@jDB&)Qd5iR zH{f%XeQq(en4bIqsP@k8ZgC-MOKU!~3!$#NB~2`*HIrCOD@*_`u=f%+w3wD0p~bZ1 zE3lZBwA3Ct$6{LAI)$(n(-P|}rXK(aCgE12mbIAvRfxXz407@jRXb_5X`W&{Wl|@qHq9=PQ~wQ^pk-DC!ssN-7gf&e zt9<*9m=Z+w+o(h1xF$TgpPNV#NSdScjRaMBV_4rPgF1WF$C$Y}Jvt1nu_)xJUVubK z&GrLtVPa$AXyaJ(@Z1!*a(QTtjg>GnAZ~4iqn6Z7;Gr|#>MswivvIAZBXPY=)V0z{ z+ncRu-56<1E0V31-w^sHV4MXFdFA4dvzV!AlFyi@SMHV=_%9#bhil)|oNup?zx3py z&aFyeo3=J-OUXLTn^}taI3sv2?#k*KD#$!G`B0!W#!%-CiDl%yf)~SQR5$3i#7LFI)C&@P1kLwIkS{A3K z2hI$S9NZiT0-ife+GU7_OFO`D477vu!z%>x!^v(3eN#r`KFl#}$o8a8DL2eCRREL2 z2@8Ow9(kid5@yWLKh9!D@D!muPK4>19X9D`7=*kpFDXg;bEZV~VGV*hc@7~6{DMLB zd5}@H^8g}N(2k*T%tpWgQEt~GtmxqQGz762Hp^p(teFQGBDF(aho!WoYnTzowR6B( zhp0&h`G#M_9f@(Ukv0w6g-pb)jSQR3RwTCz2pX8%@0Ui~Fs>9W+c3K8$7%;7U3dqZ z7wug7eTT>4c?ddZL1F2xD3J{#^Q=KT>biM&t+YQHj6+;HE8<*`= z4B0G8P%%i>ToprHm$#+r1<8`m{l)bWk|EYdbfO@TY*__C$XnbLYTL-V_Ug3o84Bi{ zFea&4s^o(@txX?>V~-`ZW)6!=M@z*1^>M^NI>u~s3MV##@=FXY@-C(cE7CKxr#NZS z&ak6pa9ZaOTWiv0RMFMtR;5>_D>J#%V^YF}6`>}k`^%uLNM9p}3AKt)t7oTlCdm^> zsKExr2Kd(7qdZ2F)!|t#Rbw>xn5}SwrJ!JW%JN)!$MVZ#ba8ndqbSx#Ni$eo43$<9 zKY1Y1@&urR(fnPl$}YA-&}4&Shh~+vHfHuW&EMXSn%sQi1vg8Guv@#{jN1K#wqC+? zLrk86_V}Lp?kv8Ds2Dkc1^F~y`a|z#M+=^o#cR5139vF4$44ZXPhOjL&kZ=@&S0UvkZq=T)7WGhJQK#QyTP{E<{ZVD5U4Ia&GlKrC z0AH5Ktr33aGHWQIsEmzX;fnNdA=%PGtr;FE%y9H~JEu(|(yXFb6j44umY&guJ8t|=jKQXT z4a3fOa(#x7-~h5cxjr}B|GS07WyxK4s6nr!VUZ0+{mfGt4x?}_?8U*FHHW5PW})5x z{kZtyIT(VuQ}{u#8FV4DdU}fGx8aCp^~~tVoLDWjff~eNE1|64h5t+PWy(QUnsPYe zI)YonBs5bMvo1}FS|jDMYiN2rI~9z>bN)zArd2e$%(@6X#2LZmcWacFU3zz$qOzT8 z35|xt>*D;uxN?Mg@Q~C1t{tI1FG+nvVNqE^S2qugkMV@IP0xZn824lZhpZV&xE4C_ zOb2JOhITppzmEs;QnQ>D>rT*D1!3x5fIh`7#F(?>S!)UOQTIqur5;gqbJebiLoqiyc4d?w5m)($4L6)wIDU44VYA`Jh1<@a zIemu)cxA&C!cHn%d*<#Qj3*9EHjFblGewQ^2x^P2{TqWzt`6G}t{W_mnh6J(XVxMw_*; z1QLb4h_9tBq$@#!`&SQ$fl zt`p7xY2loDcAjMkH2koQW~Zpo%C<{e*Ei>4^k$ls;8|)qY0^a~N&C7LeK;2}m^uTM z^3v)`Fq~=@5v#*t8Vn@IBp4k~Ee)pq-D#F3(2#A?w9f63$QWuGp_Rm?HMYu5&qjo; zQ5F!M>}OQKKLo;sg&!-sMN>gQ38x;pG>+}FM5jF?=&261l8s+Fxr=YjnBw*salg26 zXrCzNSQ_pMw3&xeSKVfzKijMw+5TK&p7wnqRD=t18;Y&M^M}aN0oRDu@x>Q#lIaQY zEz()OMOwrp98|SME!wVzIoh^Gp{f@jg3Acix{2C=K@}XRL|_Qd-0`ND56Ua2l+;Z^ z`?wmmZrqG}xBk@#<(@AmZ>B9Bm(t6#ZQ-uxwj{E>c!?L}Z33v0yK_;qve!ADmb)IZ_U9+dB5sk~M8 z#f%W&8QUta+9((&dD+8zyWLwkZ<9vj@Ks~26&3IG9jLrDO_c#r9-6M~->f-&_t})| zDv#I{UbV*Miy7=5$MAF<4X3ZKTza8qv&yZZn=6mo7*}EdersiHOG+-4O%P2d?R|st z&`T@-W|Q@5yazCqp>w6m>xP(@Xoa-O(CgH4n3onOaV-!2RB$c`jaw7&Z&2GPv zK@N~d&^uPnAeg<>E)^oPH5+6KWN>Ymo6L*e>@-NKq)^i(6;cJayZtSQHwRNmSr;~T z)ObYH%uG$q8qU^1s6gmsI-raL&UG?s>#V4>8aUxorv+4os5LZUl}~4YBiKQLi3d?p zzieR066j4F2x-k4qTv7B7Ym_% z2$DEB#BV{gPbav$I@d}j&I0iiDTHw}OJG+mRgg5kH)zx6E{Z9UbgOYI0Ks`8UpmEG zQ+gA~t2(7qgM_od&4WooI~Irsi!n>W3Z`i?e=K$jPu3O!H*{@KE@2l231B1)o4>VI)|ltjd1*NCr5wiL{9AeHXji$x9>}h26t|-jW+)B9 zo9O#R10L*Q(hfrM?p-M4Px1=E(uJf?^iI)?`4wEZsNaj9 zE*EnkUy%I|(92tJAam-N7m3_GIySizH6SHAv6c)_P75g5ve|Is&dQV&cDJhEI3G7X z#n^4mF@=ogS&e+UcTK^?+93h-_R1@Ese~zPxkdK9s$sM1rVT=pkF=tI6TBox zEDCJEA=2m!oJzonlFIoQ+Y!7+CUOsNJelh3mNNU+ z&O)gRhC{wwlp4GfF3duq=x;E5p=Q=CC2Dn2#RKK&u(ry}$sF9qmZ<)<}LHu_UjyB5^oKH+f^g%+RvHDlD}YE!V9SCJ>rh;V4EKg#!m4#=@$C zKnR)6$iaqZ2rBbP6F8YA%%jz!6l1Y_*`*bV(u|`aGDr>@h*FJ(31pd8T$FAsoReun zAdM4oMk}4lGa;B#FWZ{M!6@svN{WP&j|o;pvw@r=Etezcu+A1+i=-2z<;WvJD!FSq zUgB|-_NF6R6mA&#t#k(s6-h3wkRr5bTV1)9QGOS&56|S&E-C(N%#+*n!>reia+MxaaF9&A(rr_rJAbo`j~$4I+uR&%9eAg zIdTl!=b6Savy;hJ;^*ns(UDIPYd&|cg*UjIQrAPAV&2;%uae?ZqB|?Rja9?e7h9)c z^9}@7xj+}Jw(w{S29=m>_a1R<1VfKpqxXng77)Ra)O$qsqzI8Q_a5;)88KwRy+^Rg zCiA5xwfcRmw7o}cD5LTPY~olkwB=N1ObIV+qy_0s30u+|-YoGA65K9XhT&Xai68F`CP)m8!gPkHjUdmEa3U~8?}B(l zoa~-6F_oZ$8!P-2&$_S2nA7W6IN7oncX+<7`%AE1_MBaqn8|I?r9)TKzMjf4z;TWT za2Uu0ujvf^GV8;6pKzi|jVbPbhtdD#s>ztDU&-Je4GSPFJV!?l0zGBYbeklX6gI#y z=`ieFxIWmDMJKBV#v+qAkO|zu6l0=%xIvy#i%CqX%-t~7I0#>jqX#jFa!W2{(wEy!_EMr3^#?VrJA6yU0FX$-hj@vt}JWLS5Rbj-@4W@ zl@?nRVIU!Kc52`90qjY_Y_LSh%)Y?_j-ZN6JBSO$Fr^vWhB9tNm)kx|&}E%wA&c&W z8p17+8rf`jKsDi(h+6jN9iS%M5>d;|g$_^?Zi%RQH=>iaCfpKH*RBL->ws#)EfKX0 z^A1oGZi%QlH9Mg?U?-i9YuW~Pf|_tkq*~Ur4jP1TOGNz>9d;w(mWW!^NgYs4xFw<% zeO3pk2^XT4gDbmYdp(OgLWg}u%R%X)8L|wpvkaC=b7&QiXW4GfqAL6|D5gE+lFS@4&vMd^&&)C+&@2z{2rc9cnYY{!sGre64LN9ePhwxdj{y6>bC@~Cv&0To%s-U)J* zk2^q~W$T?FR|&ZT?GFBaEy^%wMu zNp{&0qbHDy%AsO;NO0a-5DSph2jc2q!?Q+8H>%D){I z&>{eLluISxjzO2+$-*-`t8A8Qc9u)U)Q)PA896IpA5{j{BU=@7`j+oSHA+MY~^P^Ux;6ct>Bub^U*fi@>%FRUu1maBO05k<+ z=3H0@v6>evLS2Ha6@8oR*&N*0puD`IRH4V)o#-X9w15mvlVkHziOixUZNw&WqPHaK zfqSXMIn$RJMW zI}7==7baz$h>Uzu7thW)tC85(OeZL4ME9UhG4Fr$M zi-)H=eJCaL*Hou5PC|c6fr})Z^v)a;i=a;;VOz%MlO$9xrte$zQNin`2H_*)GqZDz z2_2E(1alLxCD0^*&W;a9DRMV=6h?2O6V}ilivJcgYW0J!&xlcajg^HPBSUVlYl=hmj3lZWgQTEC;r@6A)4v5oyd?zIT&0rPlR+=zM_wK*ZXmphE&h6?$=bB! z;K(>^H^m_AlPJfmgW#$DjUuv%OnvXBeITxIb1JaT@`?}v?8VYipK+(U&ii@`a|Eoz zdR4=;>-#D2rht<`Vz-4Ax5PTINLq*m$l;z7ygH7qtFO~Dj*5=M6XLx|qmbS0mHw}ufJRkD0f!Ho=Es7s72-^eQR3l~r< z!E~%=?VsU5qc&}=X2sI?ClFJoh9;p8x7xI95B4yUB6mU$Y&G!%*EG`til3+32-!q9 zqi7yv)M9(wS4jrqrg6SfK*wMDMW0OF?%^Gtc~$q2yy z(7yvG0|3QA^rN>+zT>8&fPO`4aIp!23)XvT*v;J{cBGf|q46%mPgj0=YD1cHUH--` zmQV0jzgZjJ?AA*L!ToLpVX1l*1B)%1_vDr=$Qrq+%liwVrXaciAgB~B3v)K4XmD(z z0Xy6$WOmAJ4BC^D`3e6LQ8iT}5S0&^wL*ry#piBKyfkz|Nh+c}th>BUT3;T~0iAG* zNrphDcM;V9F=);~%4MRb?tc~=mo4XRM$r+|-K8y5`UE)?#$SxGzM-h4Y5@XXvET(B z*xtQ54@8ZY<%+lU`xM;tPCL`xiXzNCrFQM3UJ+#TBAyYXMwp>=SIOLX7n=L07Fq$a zW4DFDD@|0b=D}RP)56>rxwQ%?wRg!`);lAE!xV-_$V$!qEm$%)%ccLqYg4qEe8BrG z2ylvDT$YOWTLJ@cLPX<78pQ62lnA`S(k27%Uc!Y^rbUCR6N&_Hq69a?!&2pvm6RGY zZ_S6NQGyHNVLrKUwT5rQMbi&8{BTtN!3c!9t)_i%h6$bxAm2x$d|0TN_vjhJWf;)rZ^&$|P;}*v)46NFcAM9EwpBj#)4CP)3CG|{4R5ZN z|D6d%8G`r-K9878&GSi%no%mP~tNK}a zm7pC=W)ojj9>H|j46EDHbdR2&g?m#+wXbi`BG!8hTR>jL^o~~8-XR=b#Gqfk2Lw>W zg}j!0y$NWfK>LB5d%&TmWaJ`x?$5S%ZDNX#YU!Dp{{R7Vbo3sDXsSY2x=m`pMjqb_v(ytK^;Q6kE( z)z<;y-+R=SheQ#Anoas(mAhO5aUw5y2JdEJ6&JS#pcmqUbHx2|nFNxI>aaQRAR71n zBl^%BX3Bp1Z8m|faf);p_k4*?DT1^S7TGf5AmI7QOeKR4r1-c22S@kq33;R)$~2?r z*6cS3AZ>GPZr!UP7sQY9WU3Gn_P_@Ss68~!_d^GteAr} z%Tl<4QM}^nui9h)Wr+%I(1h^Bmjw;9I{I`s>O-mrT_Lhd&<7Ppnp0!!5}vEJB61C( z5Mrap&y<$IxB%Slo5uA&)oEl}i)6CcLQ=cKjn>SZ^Wnu+>A;qNBT-WdfT?4iI|RP-emJatCv1vyiU?kX8^F0rM$A# zT!g1DMscVLih?3qHL$rBgGa8_y0%Y`Vvci2P^`>+v(xrUfGa zI)4ibA;yUGViI;LoY>Az4A0;KHCm@>_2$10r?RW^5(azc=MRBni|T3wTO?sZ66p@| z)E5H5+@7b4%tc@hV$vW}AK9ryh_g;?0AD$bIhD|tEj@lXPqzAo(?y%A;VtInM1vuv8*8mEjKRNs4q=Lif2)4QAc0DnSp&1bse-pn{x5ba~U5 z*i+Se&?U=)EB@c?8xN+8JE1dV=M`Fq(~~h}r7f+L=>WCoc!8lwJaC&$J`O_G3lF1ob?myI z?w0Y;616rH5S@CaDS{6{Z>rThjS>(%~wc{ zTj_-^!}41O5#3ztAQBM^QVm2F*G)>+9^?!9^(cbbhT`Zc%pZ~$KK9hwy&@b6AChxE z?AT@XPv|8vQ2l9jK8r{_J7UH3i#~w$i|%~sS!ZHyRJ5T_A-pXJS1*QdnmL^L$=M2b zOFT^Gxyli2Z=iveqZIjus#%UvBmkWe~v>(k)m_=H)epMjgVJx2J}7+!7RO~y@L+v z)oAffZ4!E^s(G(RHvr4P(Gxc=4BveGjOi*TJfP&b_5Of=4iWWV#1D1WK6bMhEb+BE z_z8o>ijHsk4*SY5RmF^>{<+`kpH;kbB9PNy^QaBmGit9X@dUo>sks)NcW%bk5>-n} zCm*reRa^)%5lyJ)Vn`=qEBY}#65FkcR*s@mO(nt9kfT0=xdh!SW$Q(NU>{{)4R;Dp zp@y13ykFrwD#xa8eX*=cN?p`m!K) zI$eso0bXYym1*swXA=dfwUH+#stLl^?b%+?vxWs^4XlX5tbzYEorAU+p}&kWWeu>T z;9vx`Jd*x3)H1}d*v^^=qbUkICu^^iX^U{=iT;5d0RB=cwE(Kd%H$Y;rS#_*fMx8Q z+QY`CJ_1Xj4tjm_(fw#zlQ2%#BrokXh1Y-Y=@GBL07u(dUe84+lPl!;KFLbnbf#V# znVRES%XL6EV85$f2@l|F_Q3r%CfV<5HQ}*)jpz56nAj8kGE>ta^77EV<`3E5%k<&f z&zxB}b;BJd=}LImUeh)EGfW#lbr#Dv5_p@V=6vXV9f4Ixj-NSk{M1>~pL!9z*tvNsp&e+Fi z@FvxWq1^!T@b&;gv|fTsL}>UK(mLXy!u>9W_W`7iXixyKL3@ulzkyx644}C+S;JO3 z0=SafnB;ReE+8Hx5xh!BO&u%Rbl419Vk9%{bB67Ca-U)&bzJkShXnx%Ww5*;LDoxx zcOYmI`Y;tS#M1N)cxqNNE}rLS&3vq6bl!FVt;SE*%*Un&Wx%nBjR%CfLnU?mRH+{2JrH(J^ZkwFkv z<<2usVU9J#fjEl9iXG~FcE!1Z!r+UNn2|Mu?_djBnwI8G%D+*K@w&V7HyxJ#MZml|Kb%xdD~e(RXfh;p9zZ z&*EqFB7MIiFK-dC?UWyiM|Tb?LKPo$*{@%8#;;%Wt6!V;3X5Ji zXR32LCv*c`OWpQvWrCRha!rPBQMYP8iwT^02_5# zNWG{qwIrKK_x4)LFTS{E&cjuji&_Y7li`P@ z69;;-@1HS0H7-JsTwv70y@YoL@djseKL!uXt+AnaH|Saw#dP%wFT?qlxan3_z+pvE z(ImWSSev#YrpP?sKurDpC@kT%H=Sy{ImBxR1PHFjT!2d}_4W91*XM$?&=IoWMUhqo zB4|A9Tx5tuZ68?j2l)rZKR|szl z!qtm;$vwj}7)3Tg4X;UfQ>Qk|D(Tf398zw=?UHSARQ2Ks7!%@B9{=zymzDIB`x5=) zWj4_c!xG2e$wM8OfkpyYDS1neI%1RX`i+*$`Qi4jzmC{Tr06hKE^o;+-yuUqK6lzt z!#g%Di2R*Y^Nl==X>uFXSVY6o$$6&b@HBfLF9IEa>3pylE+Cj)4B4>(uAx8bKNjvo~L?1^i|Y&X3zY89{kR-rQ{rk>76rfN^x?9-^q zCsA}Wn^E!v4yLU_i25?lYAb!^=P9}+DA3e>?Vi90%xa+I&cHevF>*54Dtp5X$!jBd zpWS#!HYunJDPoitugn_MS9rAAIQV^(BVN*^vTfW63$S&jmfZ)LgsH&+kQxd-4s+?J zrPf*+SvCKFX!O)xv_V2s>nI;hr+co+mjSNjfQ&v1Rft{z?2H%VDwjhkFUJ#>1Cr6%vkh`NNEQH1s%Ft;J zs9&^o(l6RD;er;tbq`zXkN;%a_wmyeMbFBRru95tMH5S-RL4~w+GQ=~@l30%Tv%(a zsvLel4;65psrE~V+w0@3Qj@R!D%kMEI1Fy7qL?m|&@fIOR|z8zA1}tOy)-B;R;a6iJ07(j!z){ z$ySixtvY4f8-%g5n>yT8FYfZI(tU5+S5z znC(5tCT5qcYLT60OKnZUsBnBm_a5%XY1OviWQ2 zcw$jmF1N$0W|_wE*n+}0pE5VUjsP~i8tCff1#t35IR_C*-|uv(4D&l(^Eg6vLM7CQ zN6a&#nD4{4Qb|++RrBB8%@TM2IwQFE4mL)n8~Ye|8E_jVTsR+tj`hGO zta3-~+#4J7=P@$#2p|`8bl!3QggGX)i#AX<0(G7HB+RhZRDDH{&k^-NoymO{y18oa zNy;X{DHEbsmaJnQc?W(UG+rZ3d0m974v#N-vZ#nD2aeo3*rmj;`y2$#a$C$#aa~nz zj@|$gDDLjuaUQhmmfbRG5ZXDryA8HHJX*FQ4=hK>=))`pJD%c~P^6%umr&L<8%MB= zW%qWHC)(R7T)eXrsCZ{*5=QDU;-2zS@aQIYkX{!%++_Vy7Tu&m-f?IE+j|m>5iN$hj6@2$O@T+`$cUb z?hy2gl7F-f18oP*tC{{<{6t$ZNeW$71v{mx-A&oO9Hg!?CFGuLxFyRb)obZ4jH6GE zYu#X_mZqqhSh+e zIm=s0HcCwf)JzC$kvygsM@9`gdxKI+!W82i#GsgTuvjACW@N1xNYKb_d>`&6sUo^O zwC)sX5n;DHwCO`w7oGK=*wjKce9`+AS31JjvuPCSn8vM4m}U}Y*9N1+ zs$UdB^^3BUJd~+Y$Y&6gr!qA-*gGv zk8V1(|7TGKSbzX?hyo0rA$|^?JQ4{ zjNgf=qf%+k2u7HM)edTk?wvU%IyM?5DF4|6fk?xZ6$c!i)#a*)u;kZ#{lNAoCDy~ z3cIqxApwgD7d%+CD`lhPbje~Yk4T#zJ>_K~0DMsTcMCv70S=VlqB^P!CGQT734P zf8bWk#e?Ez8b=MS#!+pu8xU+R&>%!asrR4_N}+2saA0%-9MP=RkVq=)^jpX#uUxNT zCyZ@C&?Fpr*->G>k4_K9zl;boAfsOxnd7<~_i%!vx3X=w4F`bK&m z#}9*+Y4np#V}_ulpm@pqGGx3Y9gh-MdNU$TLYz*L_LI*1E@JBs;>U^6X;NyGwb9># ztq_-Gru>x6=YQY>1u(3s0mxQScE1R?=LB~K{6zvxkB`C`G{XJmCoZfZY)ePXK>53b$iWaG z=pAp)v-Vu`h|vA@oxSkydkJ6Sc$t;^r?od=jFyWMS zU6acYk;Wkh*!H~`2%dJyp1pha^1mVej}QDS{|xQHKSM|wLKOZT+5?BU&3S2(AB8?` zQ%i45-|}(PYeecbJUI(p;hlS3pkXR^K600Yn)rP9F7}8J#Oh4V{K#YlX!09R3Twg< z*N;+p=Fdm3eS>rz`|O+Tm+fin*|+D=p6NY@4((|i+H-hjn*UGlnK-a#V*l(O7}e}K z+L+$cXdK-$cI||A5d9thNHhw9d?JGm!o0Y1uZ+17=^7cYP{&Nd5_c9SR66uYi1d^l z%JE2cqqlPBff}KfVeZ^H&9CJxh#bsvJ7j$LTI7*2BXY162bNeaCiI=tWFN~RN;?$3 zglvg^l$sTo5aL77&RV;3`l07;iYveUO~2>k(+pCPgS6>qSVv!XXlRN&P~JFbLH+m!+VB@@ZTZ)Kf7lb z{~SUPQ)&3nH2y~v{+UK_cF*)M{=-DWXFA5Qv~;0(zqF7R(~t8~xvh`7=Z)-X;nC^H zo{*8f+~=y?X=D7T(y-~Dh7yok2IbF7L!Zf8TnM`a*B}~8L+^7HBR(`WLeFQs_q2p& z@wti-k2jmsuy=<$BlyW8XUiLLajRpcBoJ1^D65P1i;h5*srDJco8qh_*Jl|$!~3`l zayi^9zq%yaPyQo|q=G06mPuJFk;qT{BO^(snD2hU4}K+0)Q`~kv}*#Mn=YZ{GI@*I zFQozU9eGCmWtbZYd4qm&HrK!S~mE;j=vxjTlsVwZU& z1BR&mI1Y{Bc5F9KX5bLD&Loe=aJzPzzT>QXS_MS?lu5pqfxFV|%EDb~_L^i1VuQNw z-ffob%*(?$Agy=W^jpTUN(eC*=&+e=jNI}aq85<89-e4 zd^U=d9p;@MpMrv8Gv`x&ZFipJH|Xp%nx*mdCcs%vBTEbIY!JifP0$9 zC&w|y!_i*Ii0+MwSwhC^Omcl#X6vjeEVB=Cp$_%@jxNlI+5b6~DVmBIU|FSCy-Nv2 zO_+75#rH`B>fCR3xtQueY5v8xo;|bGML^~77O?H}z4SK^@YS*_Eb;RKihS>(EGJ%n z;cE(uiOO zxkyM3JQuNUa&Li3Xf=V7`_m9c_l5;t0B>gEYvilUu$J_pot)EkT3crbpXdwmrU%DvAc5Fy;xp1jYxhB6)Fxhu#C28> zX0*j3>UOUGlv*rk1E3cOh5*nzstTw%CYC}^Gq;d}>& zK!#||`4lZC_uIBs?S83r0!bF*8w5(VlH%(eIioiCRiX@NSJ2kxxDRk)b6nuCN$;F5 zkHWYpTR<@8(*gz?V>CaTnxuH;J*8pvjD(}d3>Ld<3&#*I&;$b!I8i%Jril<+JQne= zgT0Wdpwk_Irif>Yq0h&LRL=8Zc*(&o9TzkLJsQ4;%?)N^WLk8PgC%oR6=d2+6X*Q0 z7Rh;Zw86(8mPn*(SWBh%obp5LllZ*A)y+gz5@<(akmb*97Dr;7%MIf%r)7K}pXPj+ z+&dqkl)mi{uboaurU>QdAI8H-+~ADJOtE7*$kCt8v1XK6I5RkQuG^Ar6m}TdlUai< zh7-C2V#=b>&)FgqIPGV%Mh@z!_g9GPw@BG3gque~E$&hQb1is`?6as_T@<7Qs8LJL z+n!%XU=@vb7LK1XRVN4capaU z5i6TFpFVT8dG^eSQ!g;*${S8DoO;38o1q0YR|DgQ+n}BpD%}V`v;JIJ)V3Q-PnDQv z5{}E-{QQg0KL6xAmcaS5cig&QehHDAAX0MgQgbT&cOtMkA*;}x4A(#X;u@!4T*zt% z?1u022&{4e(9Sigc9Y1&=3kjMCf_3qH$e-Ya55gX+fqSM*uFc|4LYTCYZ-rn=eKp==Z^u zBoPP3=dr_{hhnhF(=J!;Fwa!yo1=&4EdaWS&rUFRmkg8?LJR4Z*hw|{>Pc?pcp>wX ztAx180T!veK@W0{Z3r)Yp>=n^ zh?VE~kf|xI3Es~Vy`zG9HDT9_v7UL1Ndi{S-)ZkiByWxm7G>GS%-7s$LlF->QL~XdyBp;-46cQ8= zerIQA6jR?UF^$`Exc=uMbRkzr3^{0;cbx$PSC+`mcS&3kkUE}8H3@-&$|!yRUtAfD z9NZw4@?9bnGfI8^R~LZWBpg2LySnZ`06}e7c2u2&C2WK`iAY$9pj<&MReA{$wqzPo z5~@S;c%JB~ME!|y(QADQn)g~CQbeXwOBtRzXVEB=1My6OV$5UF1R7mMNHkhs>tkow z*ZQtOE$f__32Pp|*7q|^BbQIu7V8HF*bBb7*pTrJ$JZlfWqiYNgDk%oSHyr9^TaUJ zjw{%PAkyr9jAxf;hwRzqG}fc(GYdEU*v>BB_`Klk5+;73>Q+wK8ax@^e;ZcO3H($G zLHd#sD)NUfMzx`R#GtQMx?h0+j3}{_fz0u2Wr&qCcOy10vhH_<7o#Ni*Cq3SXNHXJ zwr2uY+>S%YMa~3%2?fz42-7CmN4Cd%4e**icU{by3KnE(c(XwqQapgddU&96fW`L6 zVUB#kwsIe$_qxESoHA*Mynttb|A$$49QcraVgW(m!Mk337-PF`yMa=(L|Ae%4bzaL z8&D$1(nAVn>G3E)pG0`ou?F=dc7#+Jvy2U0`CEK1V>9a)8>Z~kt3|`)6o8g{^=c8+ z%{cibwp6{kW2bqyWKETmh}vM5y@ha2nW$P4Vr5mSOe`FX|0&pNHtrK5}}^K#@ZJ0;0O2vj(csxGFwqE(Obee_RyiuOAIKTlT-ey-#+ zS@Cn|%~jd)pM_dOsDV5^ir}=G0zs9lM+xx3t3aV1S39Cmr z!wPBZypE;!OQPIeDwT-MCjLKZqTOu0EzS8&e6F^0mC+Up0mr%HBCoV~{u9Y71w#Pn z^(X-~rJpArS23$c;mo#(dTn~7M+pi#AL%Qt9))O)9PhN~Q8oe0V%#SfvwD=E4JL>( zpgq!~1kG^-aA9+-bV?KHo&Jm-MG6SUd|JS&Vm(UOpR0=XC=pmZ5LF6OJxTz!G8&7k zTJ$K3gQkdQiwAjsMvo#L7c>GT$m`kM+?LC<=pYA6W;YaMa!QJvvKGl{^(Z+R+Yza9 zcd2y!YyA+r3!f`p-Aq&^fp#PYS$@H0aU{mMR2(jqekCpAefTu}fgXh`sU6~vAkB?T zMw|XzJxY+{W7!-789hq2QP^Q*Pi7!bk0KK|?PvJVllKw>J&Kf_LPXS>WyD;z`!lf@ zT?^r?vI#%cF!nhj#eD^|*T$?B?5@gr?_kjF8Lq037KBru0ME2hfkpn_%67?Rqo`5g zJ!y@EJID##)mCqA)0JOT{IExWqvR%}#UnIKn^j41j7CwTyw`=eIU9#Ni*S%bKQpkj z89HKP3Dlg`cfzi#e34l5N*c~DsFnCU+H*^8Etuy7a*13nTTeXi82&5%cMIv>IGfRAtA_;Iw`J1lQj{e^jE-}yZso=ettf8+D?M38~+f8%_;2-F^FOy9m*c~$B)JyIqq7%LocqRtkEHx@tvSB({n4~N0be?vbj?mvPim?-k}VB z`EOwy4?v8u)wsX3r3I%&CX%I;X=E)14+>9NEz zHf`CRI=qdEE|650abT3?imFJmA4IV7C`emI-9kAy1Npp9;b1Ih4;j9L$n^te8F%ny zcgWBU@ovL1ip;v7=jKqqxB=9!A$*nHxxyX<*0}(v;|8v54;hXyEj(mcMoCkVa9dTj zhYYXuvD`>#IyX!D#hp=Ebj}dbIQ4%I5zFHvmyPL>%U_@=HtLbfUjooesRZA)}x9S z;&Zt@wbXUw;i-k>2v02} zU%{z`q@`yPIj0uV)+vNNwUAhMYVi(`V3u*KQHI?C1d#O9;&zCSl|MlGGK%BcP!!3P^cezbJj{7o}<^#x~90FrLDylVO`?mk6-`08F(pyKftv zgeIQji~c*l{yR(wqWW#rAsAT#h*M7_l_vZ@z**6hIAf60o`FjD?=!Qt#T2_1tx92= zwl--?$vVxOS&Aw0f*Iqr0c-J3lB@vp7&vYv+dpC!B0Ed`vcnPw=3&_z17ok`$Q>c>A6_mE?y&jK_R> zp8!!*4M$Z7sK}%_Sf>sKN0{4gWjJ1R10~CsAJ-Y8v@A|d51bhuIk-g%CTY3Dq+Nz+ zxU>Td$3QzcKfFR9Kb%%(nlj~TnPwO^T&$%DQf^oblfwxMfTbRJqd^j8%*!8Tu_IG# zOfVR#gEE-XDy(!5u1NcHHb?bg4T4ti96}KI1%v4GAfsyM0eHSf4DA>i2Sx-O5asrG z!iw;^Jghxp*eo+5GCo7!0vIB-Ltclaw54m95y!Q2z*&c=Nmt6X-f;L6ffV~ZFqKMCXo^fkd_<9J*+6M5iKgn8?Jqe)IB+%J@tVzhOZQ(+)xF$gs5&^Rh%3BZn z*)|bvL$uk?XcDA?s*CaTrW1wxyEkAb+-^AL>mD+A-MDP0d&p*4g6=`G=IS2ey1=`B z)b;7y|NmKg8#qgks!q7>z5Q`}GPk>@rW>Ypy=YqYJ6o`{Kgj)1XPwqSQG?*AcU0_1y+H) z|Nl8v^_;5bd2T9DG6i0xqz4a@Yjv}(hoi)%|4*QA8A4WWwWG1OdpO)7{9HTEZf zn%r2?m81a&TCJT(HTWLqukx5oR@a9%gKKK4&nV2Yy0(IX^(o5>^{rIb$K?9@8l$LJ zROu8}MHRJK2|syjqW&?UQ_1?BR4o{L!F1Ww!pRL~t%xeH?tbU>XvrOSKK~B+BJ362 zSD|$WwfB0=cf=Ga7>sY-O-J4EaFcctN=C{{J0#-wQk-6g z$~HiS#+XOixkqU{({AA1jGpFR;FWWmP4 zL-W&ga8d%ME{h20k)bsEU-jNIgR9i}{_OF*AU)QOGRplO@8uwG2KA9fP|yBT;NnGn z2oMA_!dB~ZNHwhz--dY9%jha*##9aG9-_we1 z9gorR7I$UA&jvCD1l-PdB+2DWiSTjrVu_EJOCzLTIG@{cJ7pZ76LI~U1~1#Ddg zaxl5EGztDnZFQ6>Ex9u%`>WXk>NDx)M>7tia3%HOY2+v)wFs<@HLB4Yz8s^ zyZh&6nZQ*KYf_d~y?j7b`Jj42lPU4aw7i*DfzSwU zNi}eT2#sY)>Z@z3$_brZKfbuYtJ?u13-Vy~!x6J|6(>}(jbtwj;Mo9ArA0(MG`qm- zQlhc(OD1;)Tv!oTxbdTTffzYm1*4SCGd_>oCz?97H}o-Ijni=yDTlfT5C`lw+?Tj> z_&l)gpFtCwh{FkZYf6L;UbIg6XWs>?N6V-7hOtL_0}`&Z2}4&QS2>xOc=NMAI}0BY ziMz*7|2QbKd$gL0S7E&7RXGCrBphe3$O z7w^$RM=#rGynw#Suh%z_+<7s3ix=&I1a>4ry{gWAAMzgW#r8a}B||M;U)Zr!NLxML z%(vyR}U<(-pyykxzsD>u_uyV3gu6R&vlwAV0g z#KR3M9Pd`!*oh$_7PqSJLE?CxIDMdSPWq3i<3Qn@#3^{dI46{4rE$Fn+*H#n1-M~&O*3`3+1m>Q@w`!LuQM+aRMbj+ z&zI06HK#WLvTd1JSY1IB790RVe-x}(fFX8jKj~qL@N*1oyajmWoBWp%?szioDf~&$im4!4G!Vm`7Di$NH#T63Cs0BiyV+A_5-pCu&Nf* zl%tEs&|*9q>7Ncw!2L~WlC}<)bq4MA?XcLZP@LLW_?DzR5^jtMyKcL1{??1<`R#Vy zejcHW?s-5z=qV8@;UKlWne$_uPn?+Sm|&u)uO8cb1tRJ=)##IoL{EQ7))Zx`&eqBThIm`DobK7mkL5%B8qvjWI3m%G}TE9 zvy&Q?B3ms~V^<-l%u>y#v#!zCOZR1~x*k-fq&epmYmQ|^r&FxVmdJ8u*rA7z*|8aE z3f8bLu2`8vs?oD6Kzg{Moz07Efrf9i)BF+@TG@9+@5b)jjNYtU37%8aq)RuUq!{Zm zdb<`enVNx0eMNKS(=IiSh|S?NH4`Z?2__q=rNeZ*n-@8@jMHd?`fe7EikCok`t017*rAID}+x(p9Vq^q8wWMCMiCZTR_vL~G z?pSb@x-UM^i`@f-;9D?Y9ZFl{&NX1~$j5VwWd@IhP+>RZ0Tc(VDY@0wiZtLF$v(dM z22L^~?XgFimD{98T#u8gy{VzwHLy~X=8^0rHY5Z zxR8QJS#fU&L2A;1f);Y;)=%$bEb zFSB~IR1C_9^udb>{=u{%)&&2oQ2Ws39Uj8qs_R!Hj{dZpUm(aCXHl#R1NbV?W!NC)T7>y%s&XI>WaHESy?8;+}W3MvprgfWzH!i7QRj+_+4#h->bpfW^_qzS8+CK+%7J4G;wTp;R~ zU7?21Hd~G2_2#xV1DA`wdeR9B;<< zw^B)>77Wo$?+DwFP!z|PS6{Fmq2=i8PBgHvY<>ej5nE64^mbDbAH`{T?Q9q@ObO1z zyEaAt#T31KCg>-jwpvjSa36(2PhQ$F$gJ;{@}e|-<0fgw7dnkyWHYg8_k$xMv=1hW zlS9H8B~H#GR(BjQkVRDJ7EcHEuN^xMl?UmH1+6 zRCUUrnv53!H}5M69avzi#Z_V(Smeq2@z^~)S(^p!>)xPT!fy=nftfJt{>PqBA-8wl z${pQX(L8;r2D#r}m5ZrHq5uA>JblS^mecvitMbvW;_+@|S9VG`(Frq@4&fDtyennT zvc&))8}BZ)T5qeW1X~xf%-Ki!oz^B2p+#7k^dj$>#Bd4VrW1Kj+@E76rgN4h#E}sf zqf#ERe&p0Ty5Ui(R_o7FdPBRJthLhG3NK>g0iKj3saGWms290xL2&PI_axYx1EgQx*1F^IKffO1 zz{-4fU0t#FraRKBftsYJ7^`?=B~&eUvW1L8-x+Y+z_o-k?Gln=q89~%;3XweQD7G? zk>=MBgaWaZ5Xpn_HiM?wzN|#u{E8boA;m0GC0ut*P!NO{1(QZeTeulI zg$*5+L&x^XwHcv|^dy*kN%c5MYD&ubdgR?<%)z{#*vTRfR?1X(JCtMVSD~~8(_u52 zig30Fg`y8)`a;dDM@r&^#vO=c7pQ{&E5g^-RVRZ9g{yM8AB1D`o)-jgYr`ydXbk5`m+4AQ|iWes-u$aYcFxqW8MlgGg6|EW^57VwIcT^ zn2|2x1|q~Nq(~eAGA!N{Fq>K)ScRc-)#8PvFh*!9!%>WK3I`58i;YzU0Sj5I$f{5oJG!tmh*;|I8RO4ZcEK`P~bmQTIOk;sGO~e^(bRo}J zFr{9OHJgJ`)(MRi38xwpjEm&OP9L~Vdagpykwv7HmLwgMS0Rs>Tyoc9zNGW07|lSm zDBLjf%XFKLN+g#uqzElab}qG)fkj|Z;6emT!PayLL;!O=HcbORbwkBPJy#aV%I0eDa_~s+z$}(RIE`WQ|FuQT)QJFx+-jC zWHq>IH$6Hr;v7jDWlez(V=oOJkYu2|1daz#0k31AGO2{0Hs_zj9?ze3*o9vf*elp) zdNwE0cs3U|P1oap+N(yz{yF$@iR{;-1EyNA(W^{<(aTGJ(UU90+KkV)UX8@gH{s6{ zz2$Vw8KRyvxVzA?D=2j%#O*A5r<7GmEaoJxEOgRp8SW6%^el+aQ&K8r3lT~m=f&rD0?PI1Iu^!j9ky4LLp93sp7$nZ zoj2e!HR}wvi)k^n0x%|?>J!(aA4gG@*|UY6GM#!^j(!-ar%yzu3$C8>6!*P93% z?a^1Gx<*)Je>tsl8eSJ^>#FNS$$_;(#~17+T#s%bbp+5M=Rs6z3}+v1OaluyB|{=s za)P=Z9Zn)W#_6Pk>D=k!PYe=cGObaVt`M2y9o`|~Mqq`}2qpMSR}PDXL~I;c_)`Mz zz7%s#y|iF@tJhGxSM-Ai*2|Ie8xsqKBf1ReB+c&qL-AbW1`drQcw1NKU$8w~_dPCD zX)(q9&ocS%Lo=B&6n8R&Q^N)b3(xs^K5Igmv^XY-@4_y`E1kvLf!rT_&7zal3uBQ< z0tlX6RAZuQxGCOIi%CqO%-yxnKY`ee^CvLF&s5anBj~f5Da7!?10C*F>`NZWrEZ#} z#lg@9z^IH_h6r)s&Y)l)W*}08J~S?S1D0S_$Os_{D8k^RWl_QVK@bRi+>Q-8sP(Hr zMFPw~p%bqH6|55Hgcg-2SC?oMs6inuygxq3KWj!#{Ctj&rqRRb;#m>iXA|HFQpgy1Y4GO_lk%bviJWk}Zlb5KEk2+O&*!wiql?veh?L z!x2=G=_hf`9Hunm`%vbs=u`(6F+C!J<=nOrdc8krg1*FYMK<0N%iXj@iRU&eQNwigq_9OXS85zwrX)=_ zD5J7*LqIzRn>0eD;|9oc#@+h>tlSWAtCXv>+yHq=Ty9WC<>iKeTcunj<_5@fCf;Nb zsm$B}`5+cvFRtnCFX%Uu?D83-H;|i^Qn|NL1-a^=Sp_QjHmV@!kj*Mk*|$*zIhSl! zfl9xPD#$ryvkFxHZB#)?0B%%DCE&)Oc7Zi(fy%&*DkurTjY_GQ+8A`}El@$VQ3W}J zYt}_7sy3>iB&#+mrNU}s(5-ioimQz($eA5nuUF49Ob%4X>^^${_x{%T^^WKvtd$4N z2W+`$xF&W5DL5Z2O$=lOds;$=&DKzlJ%d&B791&s)k0N0Rpv)!q7YclTO>-OwA!NR zR_d)p1q2dIqKsSzn{ZJ+ zc<>*+9GX>MUysq-Vs%Miw2!1Ue!0HJq}aepk7y*`@VZs+_e||ESl0UIhuo9A$wEwg z2>*tBP@e~odOea6jww%`Jb>5IX{E-T`L%P)c$5owp0|XM zQgm!|51@(+t_(HwNkRqUJi0Pi_wvn(W zDz@8+;L>BzD1FulCM)ix_}V9r9Pw+o)gw@cF_e0Y*Cg?hdOyh`S!gG*2>M-QTv?Sd zbQMG5_KSDa@m=?hx`M_R(7_{4Ey1jf{;Q>T)N?dy^@A$`!lJ^6MKjO`DH2VVchq}~ z8`WMtb_y?&z5?y-@U5U8TaK7w$1%j-BI)Ot$ETZmG)%f|dYS>FVsA3$6KwVHUL+zd zy^o-Ofj=E<&Z)pn4fJ&g*x{~3m`4zAH_75 z@Xj&~qwJuFB#l2MU^#k@R9fF& zK+C$yvn^nR+=>RwcwS))<$ILpXuneO{g$EE-^PbCh* z`-i06@4DW?eE=0D=(-xcfhFTzXAOc?_w03&{-h_MYM8kBYMT^!O;W`5ILFo2nDP0z zd-;HPb4AFzA4krWl{rIKt*pQlcNs=@{D&`n*Is|a!9}L2Y~L#gBg4q*lEUa3EGqJg zQ>#~5zyRXHA9%S4LYJw{+_OB}d$w;-VS^F*H@ zhlpSl&5Mk7YLEN9Qh>N=oUarx@R$B#%&s;!9frXnE&9C0TM6)A@aKu;yfz696*9_B zd-2rriDkIKx=*qghrgou23OZaNDXSEP*)n-I8Qy{CrVJT2lxdO7^@ zJ6Gb*P<4J`Lt5c3fBQktC+OAhrmbhUIvE)MZUtej>WZO$2zMRKL3WC#F8vp*rXXg%KjB{@suoHFqKaQ`TFCHTe8Fqtej9|6R3vBE z;Ji*+UzE@Rop8w{L!b*^L^VJ(-8n_MO!U+vPXvz@OU2+B#Xw9iZylu4$COZ*=osZ= zLs3gr0s>wNlLUe7-ThS{(QseE5ckP=dKZHkyrPKeM_PmWN24OhsYW6rNQEhQ{dsb{&2 zpLLs})#O`a%mRZ`;^MN_UmMsze)xj-6bn2uumF885#u@QQR6zH{fehjjAuCM3bR(6 ztYjEc=B?%MVv2DPx8=m&YA2tJOO_u9{=KCAQwa!lTkHNA8fHW`fO79l%3*%M||`c_JBN=83V1bzbzad%3xeRxlmMh z^{SSO91$MDl#hz0CqOED%8UUgur=Z+QtXhMKdmV3HvzBraH<_&T!MHNo*F6~B?OpK zxI6S@2;hYSqdalQQaaI9EQ8ks3mD=gh^=n&h@vCWN4!;kC8R|L9})U(T4Z~CSTuDF zz+P+n!AUMyFGhrQAOd5Woy`ZrV4Jlt`OKXv4hAnq^WC0R2y_TPrw;hRMFE?zMdJ2w zT2m><&78Gh2etrH$+XABi?Xg80jhFry&~$0U<$`&c;B`%9>uZumr?~q=XQxp|uoD78$G25IS*P`tF1% zk(AfwbKFf@? zlg6|EoT})tQjYoGZV%{Mq)3N(kC0)$N=O^F%F>L3fEO1tl??Htz{dkPIJ#V1u|FY? z3_@8HjNF=~Ab<=kwYPj$Ln(+K?Qeoo*v<_;KtLsOaa!A5oYva;p0V2;)XJHQi?h(w z7Oa?4J!dK0!6;sF_gBp@fO4XY2aSa%z8utOb@a%F_K@nSP>Gxp^g)HWb$wQf_o`(? zp(8kG>!PWc;?IJXsk8!k_pQSHPjwo*;SIQQLJj~qg$k!c#okU)>7h!j3b1PWC)f38 zBYw?tu^<+M5-w4sCi$ex;M$s2uc0w4+bYCH*#+!wG#x{ba4JDg%*IIkF5kt)VnSlo zzUC?DsapLrGFcoUsomj0YweV(^{`rTdOLp5%sK~6DF9Z^M($vOaS>qz&>g`Rou0pC ze)iM`-dq!OEiT?db2Ej|8l{gEZ;&)J7yztf zDX(m`6yX_*Q39%hB2z_K1N(++;sH&1htY>QH|rjAAW#r8DXh!u57qqmy`|xI(}-H9 zz@Up$fC&?4+jP)9d|(d1?+dLMXk3brwDSV7|H(!XF#xv^=FL z)Hr!{Ble>8Q%7s-PV!`voYn^ulNt8GQXixc!A*k$lRmScE=gyr3#}?Jq9B+Eb z86`1X%4sYFf`v0rm&`?APGHfX(DqmeOp9S`Cof)$HPvG*TSoi{k!u6kRlO0tGKH71a0vs1T=4Y7DY5gm;NStnIxCA%{(Sza5`>d#el9 z)f*cg2@qwZiB|kyIW`eY8F!Dtkl8C#+Uj)rNJ`n4D=4$zb@bQ(wTLjfjN@|{eui7d zLraKmhD)xqX}{cpaLT4%z6YOqzf>2jqoX`giw=VD!k2)!fD#f#!Q|&E!$0c^k6kAM zvkv3vWJ2y?eCFgP+pZ~EM{tGu*bE|L47(nKPD71_aWLVJm7*U{Df)jaD5@-1OHSD7 zg)YbXOOuFUu5}WLh^6|&Fic9;wJ2xC^&~#?j^eDUEpN%Qk3E%#SA;|1LvqiD6T9sG zJ;u&9sy}VcyO5}NM{Jn>VhmvY^-(Dzr!&!p{u92h)L<#{J#-af)11PcpWLnRw8Xnu z-m9F(@dg@bxk{1WP&LanihMw)40(i5F`N!YmEYQRj&?4@AyLjo^<#mXo$Klc1j~6h zroX+if17@ROS((+=aR>^T|bu>mt0SOnlNwUz8HkerFl2u^Cfa6;;>HYx9IhE=y&US8f;#*;S5OaH6qGAhH7tQKASWm>0vLDjYzzvDT1+q%0K1Y2qPhA)1wzMivKr8UgVN zp9-L${fJ%ao8M-a7|JazyTBg;ST%^(lu5Tzg+*xDGW8tv@UzySb%X|+m#szji`c%AL2r(Bh@tma_!vKZ>xDaS zz5Ak@ETRZfJ9hx*&m-6&+Tr6md<=z;>+vxnAE(z(LV1CzkkaMt`T-Muuq)^3)4p8* zV7m^S_FaH)b^*S51%WR%3XuYXRDu+?1F-~`s6r!zMhc{wv5)%$sS@lP@e2J@CSB@G zY`nwn#5WT|F!lioIrE>6Ce=ux-2lqadjMawUP4GjX!!Z1ZNx)`$3n^+JBMvVhXQ~d zdf;@38`z~YfR@&5{r1ukz_s@NGM~E%A8TuU`Fx6yS_D?~`LG%E#7JS-=gj*1_{!oe@~De?cW0O?@OVbhYtK3@S>P?C@c2arBnXo8maH4mJVtse+9mL`{7vwhK8i z7^r50)tby`1Z2umis31i+cD7JA6T)F8bus#^^S}?1CQoBiZKmN$_)W>g6GT%A>GQl zkcXYvU<3M>vniaKy!g~o+l8MOo%R%oMM(*n4Zvjw7xBlLB&KYAnu zR659v)40!Cjpqbf1+Lp{6?sfe>!m$_2zWNU>KL2NgFqW^lzW$n}__nwX#& zQ`N$&@O*;Vn%{!Yd~2o-CM{%lX3wh_y*cMDu_IG2JTW5(2>pJ}R~-DYQ->$4b*1tM zg5?@2ml-=Z6Ci|+sZ=sZy>gD*(gepE5vR{8O7{C5vT>bWH zR9LjIqj$KRdkh2IF2eTiWrmpla!*EV(XeY@&kU}-9s~BaVW_o+2dp>T38r&$_ZYXg zjVBMdgWk$iuBIO2^0rrXBmG{ca@q90lfV8N6Sv3csMIFUpYU-2e-a6>h%FLm4lCOa z?5&Pb_dr8frOWGU)>pus{R4ZiB0jzqjPoSO`z${96`#XHJ;tSKN9kr8sM#04hTA>L zI&CHQD(2mM=AH|;yU}isbc+H3RLB`@9trSQ6LULB=pI;z5`n0#4&aITZ^IP_cI_dJ zMoU*XC{L>$+T4#J_i$})OAeDLyYAl3DIv!pF`%OCB6A3 z!Y!ms(|`isD4n>_lXL%?J92{vLE^xumwP?>4B`#W^<$VkFt^5m;y;0|@g${tKzJGM zza&hzvI0&kii)mBPs8@A7coWV`5UBk{xd4;(d|u_8a;>Tc0d4ggzUj-r89*;!F|r; z*+9sGmu_!#WEdC)*|^*Ar`*Q>EgP;nR`E1SLm;yme!F1_R}=PF@?4Mq!7(bj-Mk;f zUunLFuA-BB#xs~iHbD)q>(NuEy}>4_>kKX_XW(6OWtuc})e?*e;grXJ_$|&#`jf6S z`istNq8)}MPV~vcsIUNy1h7-mOAoC=y>!3PdbvKr`So>3eY{j{Q^hw)miZBxD)RF> zKWpe?Q$iGdQr+KFVJxx-pavtcvy)~zoQ91%W1E%w4Gki8a^UaVQ8{zE+2vM-F zjfu`QJ^I%8rid$PEcgq^IIP{0X0)cN@X+CgBE}K|$BT{sr;+dkn=s`58A(^W_TO`5 z&;IwGnA(97X9qGZxOTIKHQ-e`HpQc9gbdwA%%Lnm{_Pi zX|qqGs+dL5&Fw|aOSqW!S|sYr%yOtMQ|Bcp(A0fB`QKr_KEG_f=)bX@I2PxTh_c&1f$ zE==|tJJq6h4HF#QtL_vWklj9F@MSyw)`}1VX99SBc{4l7)#uO5;R8Q z{W&HlO$+@h|9E1IBL#fE2#PzkJCh=xiYKx%xF3-O{xkLP!2-<_^Js|}nmf@5b$(5I z*%-G;<$5yt4mNM*6l}m6!g{kLU+ovl)w&+hoAqjBk>9)q^Z4!fW4t{~wiQ+EOb*ZV z#3ultp_41E;>y7or}3u@_W7rCunR;o;Hl8UBtJ)3tWIc=JlErY_IF{HL@srT>mt}P z!3a}d5r%LjOtMGwB*=5nPKiqJSMk}o2L$zaGY+YKer;W3xDCB0d_VK$G({^B_FlMH z6j@rHX!&A<;pIsV5@Eb(6%ZTQ{PCIJzXK3pEzuMPj%tQe~rc z0FZhKLM`=D|Ez3&T5)=pNWkQNMXuq*gI?JXw1O3c%D@ve!>_8siUOj%N%miO6f+$88!!JTjx-3Si|epC2%J>DJa%;y!M{^GTtt>5s7uMp^K_+w|e z$xnGm>@OaAbgmCzBIX{BKZS|>Qf1GlT*QnR%hhoa$wQzafY`>_^TLOo%2PzKE^M9^ z_+^AS@vn3I>3Y0AYx91A4@$X9p+DG1t;f-O?zzjg+dba3h{8u5vcDCdok!5J9&a`- z+b%o{GPTCJ;bp~T<8r-pwHwhi-dJ2VF5cl+I|+5;dc3xv@Xe>p-Rtmy1FwE`56}Ue z{88>fMADBZT`I%kN!Ps_U*cugqei6SI23~gxi12sbi^{zgq-amR-Bx+s8ccM2dD_1 zjgy5xv+#g708*6+rK4ST{-VMF9DfDMta%B8z8=FY@$|1N zf@g1YFmjLK8&L+rK?x4$3(&D1pI^hI@M~{jA>PNx$|Ha{=IFZP`3cidT9+K4o`oY) zhvy`$uyU@xqQ~cmMxf5*xeLQQ$)v_0P!28W! zCPivaJk#a@6*JvOzH3yU2?s5gILwg;x<|)sMysNl|b5}(;4mST#qM0X@Q^ZqHSXiDxEz(KYM~A zS0AQ(2n3?3iD|tkd}h&&3_tcwW>V;t4^2QSwiYVW91VyPx^rk3Y##OtNgq zDsxgA@~0_(mV?yQri46_f0v5vQN5O)!Z`cnx;9K!O74(u<%s6w#9@w8fW)l#vrT0D zy^HJdFhy#`fXT~9T!9vrGK{BAYsES<`Ccw#BSeggcs-59ds;%H9yIbZn%vbg-y){W za>Fz7cGZbFf}KTfLJ?;VL_q!`>x(0h`AHx>$zWOM-QapGr;~wa3GnbB&c7I+@BYVX_f<|tON8y{Kis<&CeYcYq5q8^$E@M2lVErdHw2;kT z1^_<{JfcWG`~w+EM;LpaN1={+Jj&QShy*CE9Y%>&e^Ch4UzDZfp-h!R{t%z?RHlCJ zJ}|dP#*_Fs zsC=4?Zuf;K7-Qp+SQvby75@Vg$MeLOKeT!v!iA2|&Wp+GLGAx8)B*WZkjLgOB5^!= zL%Nr?4|tawxBaGK-n2MxT#wDmTIPOG5G0Lq-2;BGB1tlTmsZY5qq!oO;CgJfX(@(x z?W~adab!HHXl;@4&_k=!AM3NT9(%0AS>k$ZS6iAOr0)aWR~DbGt2RyqDA4F0mTlI3ec(F&P&mxZo9&@r@IDQ7YEr8zB zG9%oy%zj~Hf$MVKBN!5`(v$&ZYqz?BkeL#fXQuoqhtEgx0~PRF zd6gvmUr%s2JKuAqb3?7CJms3%TkpDS?&7Uax%bxl+`@(P=PzHq^}gF~z3cMppK|?E zj$D4-wbxyH%@O?XdN=#DYgRAZ^MY&U)>p4NdC!IW&d=X}@A(TCubDf4+da3Rzi`b9 z?!NOHH`e*)=Q?-SpAXCb+x~is_c>4?eteen=)Vq+pRhxGaP?1-Dqq*(Yl&Y&KH_cr z!Q(74lwb*oFk_UxO<~+{m;xU`iIGvF8K(UlO#nWRk8b!F9vUUmVY!`R441hL$a~@_ zk3ru(H|)kP#h-1}`P(mPVWONkKJ2#RJOnWpCGmPDCrjrI%V6GExcKOP{E88`y$WDF z4%yd0Mff)%F9)OfEv9xTm7r%XT|ndU``oS1yLkS>ZTH-L-^B~xbKAu`@45TjUH4#& z03#jbCcTL5C8%o;4#xX<;B`B~Es#F})D-E*(*Ov18(KIudwfmVGQ06gH4#=@#6Ls! zXP!8utKq@publ_^s~~dj3&Z0&>bhE3!rJ7@UaKyIy8e`P z`B-^w0Z7Kk47P=op~tn(z3|?P7Y>I6a0~LHU2)m}JAm(&<=*1YJzVSmH|Cn#n=j%V z>JCEf!)0o;8`I;}Qx6Kx`_A9>JlDD)sCYuopl&>9@WJA#);s-0z+gc4B;M&lvhhx5 z+eo<_H1wJ)IN01|E8G+ONq?O5?I(R;R;C&UKOt%j{As-cFHRJot7 z6}S+LsTnd65c~n<_t_xD^gmepF3A*Oz11Q%pZSR*)9dy>SCoAEnPGRS-9;U;EJB~!5fIu(5|56?szlcY~6?okQ6~1WvyrE?I2pT-+O-4sCfZr_=sZw;S z^{cnUDfT}6+!Na7k|qgsAkh^0urCrwOiP7n{5M4%t+Sl$Fsll2pt$GzDSip^!pvl{ z+ja9P2x*v+bFxzWTs9?U@)G;zS%j;a8m?Oo=AFU;BO`SCFvJKna$K$}6#6*_WdRrC z4F4X9<%+YNLOl1N)LlR%)Vfh(9_D$AcKdGuTj}x|=KQU9yLM}oqzsGVUfS_4e2!6K z8l`A99L-q&n#JPRaC?-Z+3>0yuKp#Kp)58m)>Up2ve?)R{%rH#M$QfA|ITITsO_+5 zl~^1wLZzynX}GQ_BH;V=Na1deTKn;*JCH=cuLCL~;9Ce1(0787Kaa{!sJB)MYdf5P z8kNvs0VRxI6*W8^%3wlr}{EXGGJ}XPNlO(x^(e%iGboRFMKvt{cB6`R)h6pw~>fMe{qgO3S~w#WCMY=fVFWG z64?q1Y*vZR4rezdWJE~?K7fMAVm_`r^-Z^eyghRG zl1+F&_Fvx{Noh%wKHmih;Lf_y%!$3hfmJpA294Vv-w80OW@fp)>bj>q@7{x+JAZ;S z^5FpTKqXejb$>9B&e|$d^@yLVoVM5L(QsFMI3OENha52(0HV^0iIW`yias2WfymAi zba=9uKL>(M3n{LJhXd;SZ9il>eE`4|HJxL+co(EMF3_Bi{q%>=Is+~bX6ed7AS`6J zUvGP|5*%yKIg1AXHf}}NGsiPh?|hG<16t%C05I)w`)OW~Rp?bU?!BmEQ-D200HtSt z=@?u;HjbZkGvBdEu^RxeC)g+JG#@}k3A(06H_BNwEZgH=Ow6tZZ)lBjYaKR^KYa_n zb-(5O9X@yNg%`i$u5&o=oxAwJz31I&BwjJ?M*9TgpHZId^cPQW`in=j;p1Kd@dNni zh7ahbc={TC-aQw-3+kOWGjBnD&z*lBRKueb6BP;1M9^W0?Ej}Rm8SsB=SfF@eS(no zVV$ocVP^e~doEmDzj)!!yPxkKYWMCsfA{k*-hmz6{WN;GcOUdmhgw(hv~cjDw&-LI zwH|9R&y7<4RMb2a=`Wsn^cN2``isXG{l$aI@G8VR40dujc?Cg!6Ie%iNKs&(QS=uN zBl?TSjo}S>GU)C2Iio)(d*pU>W_H_e1J(S367kT`lfu{a_!@~{PsLaFsN|VKri1|( z*wciiqxLymJ;Z7xfo|}jCP_HHcn-qFIe09ulNpD4XL-eRZhijda~=TW&M5pW-IcyB zAheP(NnKV8m~Afr32v07ZZjBHR;s1jq9Y)P5Z%a;6EEnAj=O0uOuD2I$ck2=LzEn7ygzJPfq8cL+HZ4^M7A6Zn#z^~U@K%xfiAY0T!757%}!P$4oZQNI4HnDj`N#Jgp_m<3l3Dgu4JJt zonpSB3575!IDPbS!C0qd6F>@iZ@}unZko$Zib$p=f4Z{lBoKu>EgC8w2MoPssYwe( zdED&}Qd2`AsVF~CNFtb}qgqJHT2Lh<5u_|6y%~L$pqF8g2$Dvm$kBTs>9R!jNCEd0 zZeDkv=h)=Jm4e4UG*hxdxRM5B!j&M{l5iy@4C|;AuB56;;Yx~|sgep;QZ5s&q{JZM zssvCY>I}kL5|?rbE~%shT~}lJRFat|dw311uPgl*jO-pdgsDu|q{#I1Y!Np~;#8ZF zm=u2&M^!b)Op=GLTr!r%`0&RDUNhl_2?=_@!9L9kr%|4GhZ6_OS?o?@&jAsm+^2Nk zd8sZ3M}r57oPB$z3{}MVs5E#`;781 zsFd)?rTt3(5|a+ri%7%Pe%mCr{F z+W9dF9bb4<;8MvG(68}1FgOD-yroWbseM` zu8$KWM;zf0M^vG~Rd}7wx=|ilAg1Prk|#qx9eX1On#Yq;O@&Y8DP)(bEV2jGogQgM zxwM9lBEE}z3x0Lw*Jx{$g5j|DH&4Xq_aS4ZDr0*u$YXMB?pYsWNLVj@K6-GJ^0(ZT zOC+4V5GducT)sw!Mk!hk%f~k}OOxB9l&TMQ&H~M|ee-l8{yg}^CC0RP=zr%IMuD`Y4j!kllc zDW>heLries(6f)JI~(BA#@9dR?Ga2>L!oJQ_%WVvpXK&CND-*d5kOk*^0 zcTZXxheRl5l0Gdn^nT!WqZH3|6?;rpdXpqNEp0!VqwMjXeoN+rC&N?pG z`7VzCQ_KtdLDjevG+b)fFs(2Tq}`@P>UxT`qZUl>Zqv?%6K}w?AyY zhpsHUYfDme*B<58uS+jF2fq_ZS9g0bO1TZg=stnZUI@t{s<$V|@{jPXJ)#ffbSTth z#ildLJ;<+aSn4d!#)993wXe9KO|coRN<7?{hJ$^$48q+=d18{H2KyxC@nWzqvgs&y z6CHYTS1k3M75x^HvC#A6$sVRUYhq5_3(23yfM#%Bk>Z&n7t7F@J7sB9MQ|`+-9M=U zll_MbH7N5U?=wZWf7=T<%gIj?r#C<`8N3CKu@e{kud8s zcB6YYEMnVk1IsL$PhLNJ$Ay10`^hJKhq0fGW=PjlH(i)1{_b6{5_~8Az&ez+l`vz> zAk>lZC+-#h+{{q%voB;SEz{@Mmh~E!_KG99y&~a8i65Z}0DL{=pV99n=hA;&*-vS; z__H8o%v;BF9y~rmsBJ7sgFJqWSu_D+%rn&Zy+|XxD+o@r!JG6KWj2}%O3jxrPn}J;q6VUM&6DpWM7S@2Mc8xZW zbu<5?f-BfVHZOOR8-J6nu`ndutj3dAWfNjPnc5O=Rt_~j4n+|OM1zFA9v>Yp*`bg! zG+8z$yomAJ5tqR$0Y0Vo-2AzdbN>~b)YJKl%%OgmP%~BLgo0BI=H4KvD$NNEK3pf& zniIYm7!2r6H6HXW7Lqju>WwwWwvqBmb3%(Hm=pd13p~!76B+=wBQqy7ZTdLM>awajFXg@B8^ z? z9^=~uV{T4p`rw^JX=qQ(2~Bsr4{)|Sc5*iGogA4EJ2G=Zsld$nqJrsqb3!|wc*VKy zg|7rGortOdpee-CK?AlknTyjUbHdF*3&b1sh<8v!5souqhL}#E_Tt0rZd#|wvS?6( zHFFqh3I$s|nIvglo0RnCgcSt`5vhuxR_ntL#3}Y={M;GZ=8`4}bRf|bX?>p-2_&Ya zR29=|T>>aSjh~30Zig`^q^RNZo{GFMGerW~QE5(SN<1SkF_W1S=AFU;BYSc)7~+yS zp)BB{?;)b+=7dsr0g+Ja#)-Kd%n82?wz9i0Cmbg!ZDZfC3k~laM+3%*v>kkAo`R3v z;bVAcoHS`T0a3eon!o9o%$YijTeHT*)eiydwVMzNBf~eA>Y_ z;@9!9JA8l!?kjC?DDgh#Swo3&E&xSBZV&e=F_idHOeKHw@(-rJ{vyL}+w=96NSH_s zCH57D66erO`_xck1%Pfp3?njd2XC5OHq^E>o0P1{Y7@IzsQ*N7g=z-%249h z2=YP>4B4*&ll$r~vRVB_Mv9EiJ^qT7;u5zMObSnAtkJ#gp{i>l#sl_45GqNLi)OZ@P-nS8Vn_#1QOghIiQ4~ zwT2R(2M_5y6Zzxh653JZEBcGda5)k?+h2qt>amWaNX88=RsT4_IEPbEAYojaEKtADDYp4jEPDG{=TR!=Azq|De#{I3f(y8g{)Q4 z&3}|NaWm$IeEe)vz5Y z-`+stM4mXkuTbE>7Io|^6!={H`-}o#=1i3WUjeNG|Hp|bD)4^}Uq*rd!1sfDD?j9* zhb-M?JFm%d-8g|vV{`&s0i32WUV*<)S{jE$C}xsZ;QtbEyKzpN{oU^G;NyUE+F=|h zcdDhRW+PorDZQ{F5wW**{DH)E9 zIDjH2Q*GvGl$lbsnPJfk^g)V5lSQ>T&arB%YV+l2Z-)zZoGl02GpfxuGLQUooa42B zdYXe2dz1Z~2F(2cQYKR66@osWoae;=G3+apSDa05oTKBGKT2KBN8mUwx}5%9Fo;{a z@8Z9iF6Ya)8C?z?Db3z}@g?jh{nv@Alcf=+4_T+nHzT2w6z)8zV4bKx@!tzj<~(?O z@s+?lj1Xmu%U(U}T4zjcLwYgv;Og(NDzU<#BkmGm^b?%^!Q=c4gh4GMp9#{C80L<` zxRD?z+ztez;bVBHOAI4M*mya<$6kX!UAB2dxah<9HR`!&mw6+Fv%@3!RCspDh-a75 znD;a5gZQ(}rani^)c(I8WjcPL&EX1Zm2g(4SYB&YV8(v6j4TlS@J5Fnp+b2#;jNjUnMgRswjE`aPb8AbbP8B zRVwqQ&B{!yIBC`t4PE6{ZbJj@kis{C!ffOw@C=lU`TBL*ktL0x?RV-GpUI772C5m~ zjJLE7mT-DhVfC`^ceV~1OjPe-BMe>l?j+On1S2x(toOCOw*vBr@&Q>kp6ARUE<+@+ zeK2D>e$v=_W~8(jE0Wp|);CJW#FO)>3UZVhKQE`riahXJ+i4e=tY1sACYY1BL_F;} zOx0<KFzikkFO|7m=?rt|)5)fpHSyc2mv)$S}kvAq}&mFiy zbV==qKk$ZYTK7{(9Qy_Q>2k9U^~daYAaR$kI3_-Xe?#5Ne+hy$BKth{Oj)g6A_?W! zNuYA`uOoSn$6%6&_O7olEh8S8NM-yug@r5jfc)r#&xnDV>wX#t#-5Fl>2gh|jDqt8 z1IRxM31jE*2i7@|_NA04M2da6jkS;IjWTsO-er;<4k9U|uWpHNSkw z$#@K?-2P)L6o~t>Obmo(i0x0yChwz>5yqg^`V~}SawhuT42#vk$_o|y*`74XbFWH@EKp9>9W$14RzqtmxI0&DVKH+ z1T&>q;`2Z-Qxb-KSpweDxF+vnOT43>Ky@i?#<}c%A75h>ZG*(S?w%^*?zj9SCzRJ* z&*KCjkr^4R`6EENeZeG6`lOSK>wL+N=OvMA))DL%k?B_?@~#++O?PhkMWS6_#T#{y z&2Slw5?Fk5kWP1diM79Urhj(*=2I(R?(IW+e5!o20Mhn$DAJR_s^s`Q7`@#_*%Y>NcB2?wls5Y>8zh+FpSg&J9E*)%E2;p&e&IgV z#~G*wK*jJ)h?It~lcaKarR%7K(x|M{cPeL)?Gduwd;*|e12O^2WVyGD(}4?44ka-q zFA*~$sINZ3tF0tOuE$WTRNt~kED+PNo}Ty~G?TPqmo8?N1yp3x9fWHzIc#Zv@Zo&X z<5oJaGorLEF3kv>O^*uPvWbzj%4ssFKr&qh0opk*2rf=93lyi5KUK!AOy<2UG3&_o zqzejen01wbso;b)z|xMY*&rEf?jQd_yXp>bj)z=o)BA{171ViC%!^%OSeF+{dr1!$4_DX-H~ z`Z9FPT;SRj;A}(Er4tgv(N2G2oah%_!+s$X340^I z0d9od4lXu`p}0W>wH8HSUrR1U&oy`ck2z6-?^yysXMJr9xsHg{^?;|JfhNg>6hN%eZc#q4 zV*zS36&c6;EY)RO^=m4#Bj7ecTTlpn; zFnJgAgcYe3QTvy$e2c*dDvDK|lk6=zR#>K|rBwkdU0hqbIM5N!HiU=4?WnnID3(J# zj!=kVq$^3I%eGqIjiqiNgQUu2vN|5>$OCXNg*ryK!B$WdQIkS_zg%4(lk4kKuGs)Z zy;@7Bu&TAF`%3u9TN7oG0mUKIXd3sa&Wycax@= zOL2OQC%xwFxx-d#Kyp@I2Fs6 zu7F0x?U%nD%K0CDirJcunAEkB%Gkt8nmN^!G>^2{Y=s#Q9d&D z`9IIyL3G4I*1ibMPtylU3B=!8gj+#|((HfLd(VFFQJxp1ZT(R`Y5KmmaF92HI@t*7 zw|@b+7#q+yX0}=ny*X(Wl$_YugUT(VtC$%RHJq2Wf@VQ}pmp%uZ%Q^~H}GCVM%oWk z2KeFnJ+0W*BX&O<$Q1CpV!k8AT_eKB&5I>IUM`XBo73^eg{!ByaVh4h${1n3DR`{H z&LPvI3Z3pmGdwE_OuPvCOqsY)()7c=v|!!=p0er8!-S20H07Z@h!x$nKPzCHl0Z(t z^#{*@L`9Nrc3Ejw_k{t~QAqQOVo^jza!y9sHCF%CwE7qxgd;p5UK5PH#xJ*T z6^};`;f<;}bbghp`Nd;>R# z&{&qFzPh%moX~yi#}^lP(K}#A1bMI#Ds^FM&0#xI%N z8E_FsTqAH2Pi`W{uq%y?c3robyEVE5MOmcpTY~iRdVOQb*JE{FWYa3=Z=pQ=v9#WQF4cQkm|PWw?ft8t z3OwAU(N`8fGhxiWmspTt91VtXN(s;Cx^*)Ff5V%x*L>t7@B zU>M|(IOM*BfiJi^g$T7PhlGC4=H7hKT_KdX6t~m1u~$NXTOe*F?P1>GE5ng{^!;L zYdx%YI2*tM#P4$msqNb)!fp>PezW~G8kyO2-%jbx0I~#K9(Vm3xQUbfTeQi=nDrL= zCtx}}e*(PeOhqjE~18x%1^CR4pZ5z$FBg!3cX6t&!u zH$W|S>sxE+i@1;*peEcFseVI4)P&n2>bEyUO}H(h{$q;Ufs1G+pO*o4h8nOPI z-<;y5!5|*JX@Q&pHY?znG^bV#d7e{O2noVJO*Mldw~StRXe0DF7j0BX_-JFuEmJSN zv=RE8n>H#W{IoITmZ=w>+6aBlRT~u&zSEsi4xCkR-%UK>Pca+WSrO7q)bVg z7AgnVqq1>BK-_(ZnaxfMs9$-BqTQ|BOJX+ z|K$w5Ng0)s8&FXalpB;$Nx325R{LCKD55||s5QHi-B z;8rPDnYjV-lF%$=l!ey|o4Wfq2DQ}hZ&XU<-o~I?uRtZ=Mit~7vRMmM_H9%_&Lx{w zpwe%n3QFQ{qf#pWHU{1L7^no?sDhkhHtQmlfg4qjbIoQIsF>QQf}FWEt3UBc?sOSq+d#GCtl?wEO zUs*<2Cfs@a&|k&tFM)+28bZv&;DZ^eeTv`+m$PXJofokP;4M`t_6%0hTX3XA!!lf8 zTgtR7oV90Rf2vKfB@?RZb1K{IjG8D{OPviWD!$KMZJ1;Cs-?<+tc)?&EX8BUQ9Y@xi(qwA7% zjg7G8zWa}H<@!SW(Xa>zI~s3Xw`1|GY{-2#XBND;S5{77KsB-3(Zo3W=*mu$Y(z~E z)5qE4i%S?xKDjulKIbXADr{wBHMn?LDd_ZGv$zSS#~keSNTV!=>BQacELJSN-tIW) zJ4V2ZRTwqh|EmRkps+2GvliO;Ld>3zE z)IM}m=Ut@VN9XJ^uS&50xoq)&T~7T z@|kLU(mr%Y=Zo7EJk)5w@9jMQ63ryJk&$a8y!N5{JJZ`WTZ45(0M|M6P^|X~U&1Q&Y=U4gBw(;wX^pE(|hRUQ#eh z58^;01{#D_Yq|_Lft?_j?C&H7j~1y9^V!fgTTK!X!DeKV&Xf+ipVQh}*h7&`S)#Fe zXbvPY2iT%mcc@+@M%CdM*&?)$`WO}%Otovuf`=n-g>0L{a&2JSGTLHZh2m~H<;8@I zyjZ4>x*)|FPbt#S;r5FUYUo{)<9$nC2dg)UtzUSB2a4i0B^1T+r9Ha0Aozy&DK;bS zQ?=+f-KY?F70XMUg<4_*YuYEyQ}x|aUX-@%KKj;%PGc9@%xSitqXv5o#J)3G6PO$b zmXA?4Rv~g<8$xZD$&_q~gwtwKonX*;!E$kK-se*rP|8Pyaz1NU10u@$*_EXw1d`-4 zZ^`TcnK9$0FO|+D0Oo#dYD9r>yb<}vWA|y<+=DNT>JJKb4M=Py*{qhIBiW-RnM6%(;qMu)*C zk71K*NdU7F4agP~H*-vsl__Phb(PCa(0pBj^9n1IUgRtmZ$g0EDq?2htXNb)VY3*O z@`x3jTKn^Ke{HcZ?VgxTIyAJK$#fZk&;aqbzj12KcqkP0szd=|H|@SN=;#PNIbT^R zla)R{onwI~Ru^D$Xb^*Lwp#fz-Om$zSi`1ARrK{?P+XTS8rcwW7$f{4NU|gNvn`|? zuNGwgH)SV8tP&0$MWPV%ienN)4M;vgtmTe{CzFmN>2e?9EkIG&J=|ebyzL7ijkcQ< zak~Dwk=UiNq(zXtdm{Ljh!5+qr*AMM!B;N%p<5vumfx*Io`gDazlZQekxi zR1PZFwz531GM`;nSM0s%j`V7vCh4gjcASlsP_^gyL5yNRo18PLS!Y}rUSFM*h|-0y zGQ8D9KMZVxp%%=k1U@3uvzs6=upLyFL%osdf{Wnd9l6u1zX*`n$vJA#Mz9(oZ>JztDnKpRvKo6ONi-0Rcs$+X?qYN)%@U3`^&*?>Mgrhhd%ATWw zQ&r1_?S#08@=?+B1PEIP0_)3+DTEz4$HJ2??&NOsXnInHPVqjP9-k^Ra+L17LGlt{ z$Yitb=dm&-$k0^Ol&E&R(9nq<^;9fix=o|*6V4yDqmH6o1!3DM;ar%m;pyBE$_##xCPs6F5`H#Z1S+_)*~F``F;< zqWxiiJ~9|(Q803AmO^;0L4>%en@`QJou$CFw$PV|5G;ilUF~Cq`a}Akj~?ERG;uVi zbnYh4;cN^J$%&fp8I$LH+=a@_#l=}Tq86-}K&-^fMcJDu!EyHw8(4`bqwVC57vPDn zL_aJFG(gIP260AvNcBW4q>Ta^c-yWla7d_EEF%gXp%9clCit_UC98l>Z~~|m&$Yor-uz=beI>a@t zep+@L%eIQxX)?@qH=2o;44f42Y#q$TNCH><3Kxq}xYh=66!bjWz6~YZfHzO=EZ7fr z$h(Tj9gM1%2wecs9l;iznZIRz_SD8ayk1o_U?bk$vQKabNk0EmGoT7Vzs&V01}SfG z5&jC%xuVb-cNmqL4ZoYg<$bc@BkUKsrKMoMvLlPlWY=|4Q}6)~J?HCR zZ>asTftUNbOg6~FbZzX%Hnx81Xl>m|o@~1_y3r&v?1QB~KqF-a>I_?4k3QimYb#`) zS(o9aaAU!V$d4)GFK;b}w*41jA;dV5UR;-h3Og4(1Gc{5o&~Fgv2*wXLl;e%G?p#` z!pIKawNH;qbQ$M6Amog^-e2v{;$1@|ZP%oV6mc_;WfF`%YQi&Fo@Nw23KoC5-pP6J zr_F%)h|nsx>LA|>8dlbK@#j(bDG|okW^pja-qyGTqGB|LB~RKSdKe-!rTvzsu-x&0 z)n1WHSLne;#H*gZTopusEPFyChsd_X!%iGq;Pi7$3P3)IS&Egw{*A2?q@*ht-c?w~ z{*8S%zbelNsd=4>2@N zHn$odJkz9_5Inf}6^oNrYoa1b`F<1TvQ)l0zU8V;N|J0!xDfdgE#TOhEHj|k$=0y^ zOCS|{#uqd6GGfA+>N{wk2a+xu(32B$i);P@_=Bj&`RxF7C1e+}Suq9@%CMpV`#rC) z2p~@vvz`KV@r8J+klc?Mow3XY!#etU{=>4{z8~8Hb37-(MXIl?z9;sBMbaF`kc04Q z`qq|7lWQUzble|;({2h-^8(f&ytglab{-mFKoIt`dMZlLbv62sR18d-Hd5}=uaorm zvT8_~zS<^5t~q9lAY>Hgc-XT{h_&6AGh>(HPuRUoo(;byOPl)`@eGW;)+%N@e~JkE zC;Xw|?pR)yh`;qr=O0Vd1zVFmJhluF4e>*)BOAs1{}jIWnD3#zwDOjlcc?gzG1Qck zB+)|itIH*$$jI16HlU|i$Lyr_z;#F%(m7~zwF)|}|Z|#_#u7tp)!d5D` zbT+u~4uzAattc`UW~Ktl?N6f+Z?1-t0!9r*g;KrxhtRd>2SG(9f5Vpu6<0MWjFw3P zWZSZTVHGwW8~xeip+AagEWn8Hs{N#KiwTbl*)73~%IR#tV@@bqfq6Cy2c@WM`utuj z0l6NQ9e6WQowyQF-F2Cy(}P_?m3=g-xfuy#r}2k6`t>J=-m`Y+e0T58IisoGgC=$IKX zBi|fbn4k28S5f=jC`@dE>6ZA*|AHw4-7~rQCP3lcnL=C>YB+H*kJf_R;}xi8Ur4~v zAVQ?ijO1in*@5^;8S7wSoVZ}(Wgm(dP+A&kwmiH68{TIP@|jS_F7?fCvrGK`#5_w2 zg~0$;4dQM1q+6-NBecu_rQGOj6*oiHMPM_iY^KrR3XxuW=R3jZZgW(+>^z)N&!%wU z^z~%SaC2o(Alo*%a|Z}+QR2ejqNrs@QVUCcSr7-N#x-g122nHX?K<`)NGN@l-g`U|~kc+BBfyYWs{C0LS^tVZ&T$GiH%?v7q3%}y)X}dOKS45aBQAmvb7Afls zJM%>U!T|t(X|+m#{^gDeQM#bNLX^%V#=)?u=q9k#2vBr;m?Q1FOtZ{ZmdYPsIgPyw ze=Nh5oZW`$8eYsJH8Ft`lb23RKp+&diR*d~Hh6EBdI>@`=TiS{U>7AWNx)?02!ru034GB{WCxlK~>$*(RZJiZ+`47MB zoHKIp(+SkaA3O6*zLg108z>a&{EKlHgA%8RRBTo~e~PsHb^a*zMjEWx^digE$;^@m zIR+rwOyai9B55t)08$dhCa?VVkQZUFu~{D%+!goNmhHAVO$ zzuN@qa?`MN*++#RLEhs`RW?r_947TgWZ#nw`a0bLyJREUl+VXs+(bfv*L95$>taCM5RZHd2aY(cH^RlKNeKuaIp5VDT;?L)IdJ&Wb!Lu<#I)aEd|IBWi~( zRy1!EQsfFwzK8an?k}Ihk&yrJTh3oC{SB4mjT#&GG;}u`M{aOZjeJ~xom7Al=z8o? z7z)e|V(@k`I2-dzEr&++W1+u<=<;3t*jR&7Z%luCTg7eq1u?{3qCb~Bw(a`4ytw3g z`qM0cabFChjhp-lpC8PfCiPoPq;}}d!!TH$kpY|NOYlJ0v8xv9dtw*+2|id z8EDW|bMM=GErGrnf3{WU7x8l|+*oc8q7c1p+>G_OP$x-_kKY3ngthAZGgPD4u}={2`E(IH7M$>zxoOp@Z4n-Osl zz0OA#sV*n>`|XVnsYv#l;8a4$7bSF5`IHEBVI!=k6w_A|R1V0Y_D#^GIf>F5EEfH< zh{oBX=-p_rNFZ#(#^<5{lEsKN0R+ba<9bnmsMa|d&lG?aQD4^sN3B-m;J zL(ZpI-crJnd3?zDS#w4TR4{!g(S}9mal)2iK>uiK0WF)TjLjnh3(zJSuvw2L29Inj z3>S>Yh8-0#ew2xo+di@!Oc#vfhAk&{kkfo$HCcWrQ(S=)ej)+kHM*B?rEFvaDEH2^ z-&~i)>0ur`g7wAqkHIC_aN&Q(XCCuDFH*zeCo+#m*rPLUfSMLes9sMlCcAV)2FuRf zSCyc<;c;vTdKEr%f@(_E(S@^}2AB|y7x|BvAAB#hymvLUf;fIqy0mn40@_=~S+gNz7T7J^W`< z0)MB1KyH#*DN9|<@>S6bF9<<8bB8ZUI^iHb^G?w1-z%`qb0A(UpouBg$ohI8VeVyn zOlKNBedp5Ny&OPTy;!G-H*?_qd01{{i#iTdLR^X;@ym9ykSPJ~ou#&slm z&I~-tu!=GBV#lrxwYov*+vH^(Xo^f8y{fT4lpL$I8xkoPB5U)4(TRxy3nW=vQsoQT z#I+hLJwu!=!;0Ha7#Z)fOvHtrSUOG-i}#NL8)>@G4jWK$0#eXSs)jsUCPRFI6x>SJ zkZUchaS8IU(Z!iGL&CMtO0&59DD){kbVp&g3@j0W6u9tqA?iZNHEk4+7lk%5ilT?y zYtfrYr@SHx-H>-Jpb{%QKgp})?ybR^&HZ`&V6~68Y)Li{nB$*-j5I*xENZ@U^ z7ajqwOTQCCl2KppgGuYy<@jT~&rEiz-3|^(RBlt^A8ZOz7|YUbR+QTx;g8H(KeGoR zUcU%gtWLKrdC;T+LdY)iJn<+5c(zN{R{qVOOiL_!iWxcaLE_b(I^1oqUfo< zVTc=qsRlW>edxx{*&ie@q%}2pM%qm=&0iie{FH*tE-k`>g!lZbZLyarqpGd8qKcJp zJsE1);R(~b;13rb2x0)s+nfT6!u-z^#$P>=T350`ClcTN{3)aMmo%klVuKz_d=e#S zzpQVe(L$ao6e>eLp4jh7fep=C7^pDYBH2&9LH0n=gH~foE zxDPY`WB8NIaLKY}$Yuf#`AO=R2yRK+tay9=T`J;@mUMEn9U=+0{ZwIxU|q}1S3@5& zO96=|$qb~MT3nBFl+@yQrWoO_X3Vvvn>nF9bqa$Q$qX((nb`=ro{V@s#^P-Q|G_qLPh}2v!WGX}bSGS)Uxbq@rxnELo0F?{x!_uX{TA(X zB}J~DQ1lccg@(&58eWa8uC73qoL`f($V*V~*bm@Omv->b5SY9-AZ1sQ^3}&4d#p7? znQpiH`eTnhQ*NHSEIzV9boL_fFOmAVQmVZkBp!b~C}Lul2BL~cP26DEe;IT&djv~N z8rr*rA%aP~bjK1x1z?KeH2Lb>VUi}5c4@kN-o0S~(gaLobLb(yQf#->q?1W#bSSh@=d2W`TTdkKcN`3yrCzT|ks$ zQMTuF147wISpdDvZy$S8E`9NpJ6Fm5?=0?##Bo(_fQw4J_L(=qu1gtLTCli$d>&+q zr#5p?i3Fvi#sCkz;#OEz%!ZT-7~QmXDU3QunkD0Y8tVevQdmL`mfJY}%G?UJBnt~sQzmnY05VZI zn_QPG3+g^^mmqu27m+mf75ssk&!#_Dr2h{>bI34XON%G5k1>krb2^MN^Z#@AHeh-d z)&20?&sUx#yU%XeP1qz$cF8voAYfWiv9j6SkaaiNWp@)urN$JZU=e7Diq%&9eEBO@ zUQ4UC+ET04wrc%A>t{v9ii$-=Tdm+%v1)B8Rjbzem-qKOXU@#r_w%t&)VA04?gdZo zd*;lUGiT16IdkUB+&#@nThKR>>c70s@h5*yt3F=(Ykm?VphW9BF zAkxCRB&?RUtc1b&dR(Ce8lQ+3u$Wcrv6LecOYt>YHRMyQrdY*ZWm2w+iW+0!pwL+g zv0~(>{S|2BYyt|`o(9h1`S6h^9zS~QvTLrs?)b5%UUvM-YpyRT|N748WoPI2$u1l*OeAhf9Mb>K&3jCKd)5#-V~TcY+0q)FRZDKUAMY@0^y8(YAo z$68N$0XD@mZ+-Sh;Q%SmkK_4O&sJQ}q7tcrMzp~LIVT!^-M$?9zdSW@2~sB%34{)| z+r)u6IecBj<0Wo}jU=NY7FVJ}Y6^9W@6;Ex&hfoV`4;i7Xg^aJS#6Z131OY00!{K3 z_mBC!m1J9mqWkX@vLdB%a1;B zbAIl;5ILJRAKZtjYfmBT_L8fg$%03&zV1pW<6}oJJ7=f6UJCe62jHM0lGeNW6AN(X zx?78I=ekocs~6zhM~h(YBv*eYp^hCtekJLhUtF9zyjdoED8s{>Hy=joPWk)Ahq+~^ zlYYXm0nM;T4Y1o?{a(X-`08tpJ>|$%hmRaPcH|kG&vCN>&*A;E^ZUkT4&#D|u|voi zh4&YkLQk&L;VZAc`sgu0ytsAQ!&Ccl7YXtQUHvMH(8!%X(i3A+WiwTu=c)`+T77_pa40A+*P8^S2^qi_tphzg&~GRu4IvmHlU$W zig22Q>(9`#q)mT>HsMT(&k~=CtnA^Y4ygrX;_8r{x-9!M6!-T4eSq9qFPXBp?+;Te z>pm7UWo4gb_r#K$r(zT#lRXv!PEpxXE_@|t0aWgfaS33!RU@J1JODbLqR|*4Eck$k z^O{Gr+vm%=1nXz`yK)uHup+(8-w~}_uk);rm(gW%mK_9`$M_7vs5@L1X_n)`^N3Pf zue2*@Gdo@aI18#IWS?P^-oc@t$(adD%AHsjk%|=zj_sl2n^VpFfpD!0q-P?Po-Xc| zAzlulR1kp^45Qn4CdHPQ#X+7f8N&vc2c7EzG$LMX56$xv;*j*$Fo}f70xlCKgbRV7 zOe7#dcBPgm!J38Ntqbj@AJ2p&U)K^PFPvbN=$B+y1; zQsj1D#7NASGBN&mtm9jFbnCG-E?41zY?>`z#J`I?lT5K@)?ai0rx_rT6EPerSK|K` zORSz`5sqrg&Lyd1TzZbY7kT4RAl#S(18#ytm(Z7{LB9%QMwEwmLK=Kah#a-9&ZOEL z7XUE3$7U{^g~My_K6eqk%FCBM7XG|P;;DA{@Y9a}>Q#p^)f_(ljBAg&Yms;cX7a}| zQ$D@)Ts$q4r)8x&FPN&$%VZbn*Y_>FE`I<&D`Hx@g*%128W_W}`_LkHHY>8*(z6GKGra#e{0^lD zf06b^+GOf0b>Pmtk#Yc zdn*(;5AyI_c^(i63B8vcJ9^~!QNFw0%a6hwz2+JE!l~FQp-9=4bl*f*im#50u@!&@ zd!=`;vBiDDDfb|NJK!(N>jS9QC38~ zGyRWk*bOdXT_7xw2ADpzf2nZtjbU(?7o$fAosKp64$eO9HUiK41k}XZ6rX_ zU>GB_`*AS@T?WDnHE1@WXN`K{g+GVP(uj0ffP&FWG9^KIO1L)Y&ipCS;e5atm07s0 zFOlE%81fk16Jxk%GLA&fLVaT)f#k`Ypl;@nuEvtZ^hpbU4uxRKs1*_FiS;K#wJ6Ry zMjs9yDXCq7ib$rM31d!%Ax(%lGIN*mNS7@*k&f=bx~z*MR%EDo1PF&)w6psnCqP4c z{&q&-bL<)ep!m%0$T}Qq((u0CQ4HMT120YMaV#RpwjZ#+@emG^Sq)Avy5Vz z=nqp8OiuVG4AcJZw#W(4(7w%`kqFZloX|?*VvB{|Flw_*#t3aQ(aEf@C4`j_eXQyh zJcogj4n1mVgaj9fjy)sjX%KqLCQO|ucvEx1h&vQSDB##W-a(Do1BI{;-eDX{OJFeT z%++D;DE8+Gmg(FVLPa_ucc8e>f3}lycw$9553@i+XxY*eILZ8J%PqkXSEtz3aNG1H zi0{}xxf{JYy|BpG%fVlwW2!|)W!>V;?uD5>>Yd{A_&nZZ-%;OWSKihC>(MmF6Qkux zK)IaltslgbIi@CX7X#gc?uE>LF@DbU{-}^s;WFb?C&E|%bt$X-3lJY-*^f%uLQaJh zTG=;AS-G!v+g;jtin3D|&obopuCRva8Pa)us;YpWcs~YupV?e*u10ge14R`D$obye?I0$50}y z-s8p4tK-GcT;x`YMcnG-c4$J>n;=}BxNA=ozqT7ecP`r_&l5+V=$5%U9fLL6qqxrr zAsQDDAih>B^>YZ|7dwx~^YY8^bEd6+_+?@fNsjJX=*So0ZP~@})sJ6sJ+8g z!d_WmFSSf4@0ls&AMbc>?)Nyk8ac^W)D#3?_`#LuGH&10)k^ui!a8(%>%&z97}u=ok{$DfKlnX4~*2K@*;OH#8jGCYnp z96WOD$|F}Fcl}XI&`GfYEkO9frjos!%fV?c55r4MUJiz?Kr6`nRK3(yy?9OofSlfN z(6blsWG~*)93T|hp$Y7w2&9l)=!zM}KoLSULGTnJMU{)+HrQ0>-NYLXMtxS_54LSM zXrnO{2!e(b3L45#((p$4g37~9`h3$i1{V!dxRR7M!ZCwaI%YN;G`%2FrlmETQkN)4 zPwv=$Ui@n>GDG0?DMD&goIW2a+!G^hg>^D6K640(HlEap>U^OfAnAN9{l2`iUGn;7 zyt+Ei<;a-y3VRd`Th5VK=V6yxUhh3RWYVyy?e&|qi+EXPFVF~NI!-Sfz=q~Ec-*9q z{TtA)W0WEJ+PJ($A!1&XBEAVbKSY`*l0r#|1YBVMj<6gChi7Il4%J8kZ@DsYm4v-h zhq1an%u5@2Ww}W&mhJ;G-zm(XP&`MYSGY4!WDSqkb7l$tjT^3rBrZa4Fx^cqq6RK`A2|Zkx}@;!TV3rqViZAw?vx9an!LUYGv_%&PO? zI%8e=ePQ=%ylk?U`UY{|`i(jf7xtkxori*;hsQ1!aYiudIOK2KeMt~BC2tq8Kxrq# z)0~^~BG&*ypNeXdr3Qj!x9kVsu)#KSU;^iFMb``o0OM73I}O-|WxVavz8|F`pih+Y z1>ea&`SMP3bq2$D&}sZfch|YQs88HM)F*Be>JvBD5Cth_&^tmZts%|lmYF_%jF6(h z{20C;37ZzKxaQdLh2zJry!uJ*hSG+sj$Zww<5!RcBCyvT$79x@zy7QnO7d0Ov$KaX z=D9jIG88p;*Yt^-XZpn5F@54bm_BjG3%+q#_T+ZCt|7>7aI?eM zhItghI#&+0X!*aF88S6-+J~KOhQVik*WQx9zlX=a2g!0&e{5`hS*m_uBK_6vd?PBupDx|n#Oti zth!HIrfHlei)ow=&#HO2s={%8(rX#SWa!;TaSvMgk4hW(%*7!;HiL%G%tKnC(~vxl zcU`(MLRsI{B0)6L{3O2yPY|_1)c0dr)pmKHSc8@|h#|2NSuGKe+v`L@QR`0a#z#eT zT$eVjel;*iQi`Q%x zQD4q^P(!+&Qw+3#FOMaq1Z;xvtKClEx@~&xC^96kDi?LmQ-}fk9$U zGfBTsSa~aIMw}RmLT+0tVfR_&js*`j{VHO=+6pKRO& zRM7^Jn%c+Ix)SK`J=5^RJ znf(KltW%ZMV!2zGv3LL(EPPhIelwnjoKu}m^{|`+u+G80oP({-!J3RO8A392zl@Bv zag4=`$~v4+@jH6z&YWC4I5oeBfC@Ff{aQ|Zn*s`JKbIq?btZ8*10h5jt}o}03TV_| zm6LCIESe!Fl2Rm^3~qv-R64aeSvS5O?Oo1wRGlq9YjBVnC9s4_A)G68_Yjr}tIjC79#-Oj3<4b%gE}iyW$$-;Iou!yrg9>h*h4A)>(ISWI3ZdjPSinE3n~<~9U48w@&tLh=HQ zSB!(o=7Xe;G7ZPN|Ad^oOwfkc=ae>hCziVs;5LOz5TC14?6Lk!X2jP>@ie7wWt{ku z{bDh$1qFpE0^x!Ch9JqO)i?MtA6n%H{l!|wYXPi(1Yu~c3?gaqqe1`4kzq08h8yMv zA9)ES^r45!R5q?o)+ke?_1EJSdko-_yk_ebr_BjP*~cqqd3xb>cVSxH%8y9Q9kA_NSlphS$Yuy9!p0_$^M`t*dg& z>*BOo(Q?x(fW<8(_q;Andmofs^{SNXM-Ans*Trca)N;}5;|Q z)hw613KAISa>?uBwA$oyzw6?3*!hqPUX$uzp*i03iiXm71i|iPeZ|m}c0*$@_kdKo zR$ul`&cMEP>-3FBauA6wU_v&{p<#VD*V`$0b#)4FGK8e_-7Gpi8A6&kC<93JvDwfR zCfuybg`yhKOd!!nsJ|OXHsIz1Icu@0MzvVZcb>cR>~rwn!`%2I z&z?JW&6CfbSeQF|-!;dsJ34v&wMUN~KYQZnW!GGO^w`-?zWU0uLGsg|?A%qKsmlMQ z#fupiDkJi45L5mvekw^~Pc;MISN;kZCg-4V3iNT8;RVhcIPDR1_{%)Jg>SFj@nod7 zN?eAeg=z_yw_gR6{naJ<0tZX751`WJ{y-kiND*jxC}jzLQuVKHMc^z;+n?c_5u7Xa z?AhFV9|weZ?sTqAD8oTTNc*gOT@^b#JHx4@)_6YxyslSHqakov#6P3Tk-tKb+|jq6 zu!VAzMyg#gC9?oHnPudo{S{HrW5{zYC;wW?ue~g?JfOg-A4v%O^7(pRO*^1Lo|Vr5 zng)5JPi#%ePN+n&_$MUyh2tqP{R-E(noce43QD<0hRTce=*D6ssP~XpQx*9M(>d!1^b|YNsD+ z7#n2{kcy>L`kN0(><6z`1(E$vAUH{bkN7x1IXwc1<^vK%s9z&g%L5XEQ-k83DyUi> zkVx=#Iw0|EU`Rj*U~FNz>!%+fSyLGQ?%1|sTskC~d!!d^OtJVSzIzo5tRZ~>O90#| zQ6P2-BFmCCy$59m>>PnsxrSFC8>HO%2iCqyGW`JwHo#}zA2WUI z;sY`BF;~H6@p_8M9t#2GfCR^#$1?@c0l|;}h654_H46Y_ySbnkpY+GxIZ8dEU-9|5 z0}@F^Phv&>fCSOvx|U|INtXROz&yrV1fv=^@%%!2OHkdOf!``N8-Iv^o+M~ED?u0hNt@Bb9z>?#;tr79t=^aF|5>)cEG106k|c>4mza|`cwjG&{%2HCFL{! z52$Wc(|GHOnu%{kd&`=eD;_duf_nN8`~q9ms{oq2n0OG`eU4+d>hrns?ABs@%SM*C zb`u$4DK~WCJa*6XsN9g~gZ*POc5zRxBA$R#f4Ls*^0>QVyLixhzJ zOv_U+use@T`=9`Wn`UP4%@X#C8%zeF2_VFT|{`^Qreg+(2kMo zu&l(rfMg?!y&_)>m*6m413{VpszN>kE?E>N2Tmj;V~hQejxFsy?L3JVwqc?5@{mF@ zcBK~uOg0@9=J{=4ymh2Nh@&lu^`b*O3XxX5PCs$XrtmJPl%+}UFE~+N1kNG9rF{{6 z7*dYyifUTN%R}-Fd_|#XdQ+A5BFgA(f!wpR^BA`liiK;CMB>)Le8I^K4j$isx90mN z;rf6zs;SItmnt(bs~UGbzpE{q#d0}}GW@lmu+Vb@h_WIB2Nup%Mm8NkPWet7`~?*E z)i7gxGv1JGY{KbL+2~~#-jSIFAOeGG{3n;0d1o#&;RNo1=J_z*hN(@ss|92WowJ&O z6GmWZV?pV7{-*V;7Ll6e9U3I)v+WzDed6KnZ$XY~K;MOfR7D>6jio#blB~DnvIdxg zfgDf$y_8HJR3A!G?6!O{-{X7sySKE4e^)2?HnqA2JFH|eZJ&l38;%Fz8)R*XAz)D1 z?g3`nOSRIVV3g#3C9!0CA!y}QFT#qNi~CX%QM)bVP#8w_a5Y{sH`(Lx zvY|nfS=Z)V9O@GnfcnH$UdckmZovu!HN+LjX8}Aj!}fhkUgg&G=_PuK@(O{b6urR zTsG+w*G2lo6_7r0ty5|h8uKE8JO)@BT<0h-mpS^x^^87o#ZuA`y7%L;&qvdZ&^;)D zalc2Z`6jV(@31!sj|*?RV8qn#lDwo)QX&Bt*sl;aji!@o(r7xt-6on&@?xx9i)cFG zb%gNIbdqY(bl(FBuEC{7sTdmcQP|Yw`isFln&ZkS8u0o=yF4kPhWL+|{W%t)L9T$b z$MuQUw?5ITHZyj??PNNQRkL9i+%7R-A9WKg*5Z*gY!#Lt`PY)V_6HnX&;W~{`Zrx%J8)8vIR#y5X`%m+#G6X`~D zZfb3beH10M_g9J0;Bd5@i z3qxbridKN}JB4ik)UaNHNNEU}B$dm3@bZzw)^&QOQi4*BaJ5hr0Mwg+z++Q52g(5_ z%Zwl(#S$SSfcollc(s+J$PMulPT7Ddpkg|9k1BuQtISDNicOITJJ_Z!gd;8Omok(W zT|njKxgeY4Mi7LWZ-Vmdlhb`(DaRIafOp$t#SFsdc8e=9* zYqtPr8*(fi05N&(NQ?txku~HCm59xaeCN@6S)KU_1Ptc79JdZ6Ybh$$ruEr6Xd@ga z#NI1*l@}ScrbTh%LrN|;+UDJp-b_L9U)2g;3Biki2VMAyoUzspfIHs8Rx@5-0KF%H z_ax*!3B|cBok*7UB*;XPdJ=g2_4)ZVYklmXgWwz=|=wRwD z=7}oOJ+uosXkurW(_v1>5V^&O;8f{pY4wH)i`$lt+oXg`8$uV&MX0&$HmM*c)Z+-X zYH?OalE&L)*-@k>_{>seGF2UJ@KFB-ZrGU6mYfI*)~71Z>igr?^)b19eO;qy@2FA{ zR!0@RSvh_3#+>^n0UgMV-&N`bE2?bXp(*nOf@&6A|Fh7NE3SOf74k;djrIG`x=qTx z2J;;;1qwRjdrA|&98r1X1Qz6TV^cH|iqfK&z$&p(*iO7ejs!P|)+7@f^zB=MpG=sE zFNaz_-`$#AfkgZU3XlWhQrt5&k9a_txtpuHt!-7e{-*DV1gZ2#g$%I%AXIk*x!-Dy zuSn#^9DbJ44+W@=&G{P~dRJSrg+qhTV8${nfG>u%VbqOn=*rVUDCsG0?U0Du^EkZ^ zlf9F!JJMDnzO<;$f;=X;Tm4rfXof`hwRQ*S!wpU-!OZBs782rI;?{t`mdHD7oeB;p19jxD z3YXBy)RIgNi4-eMZC&M&sur&DRhWe65%PY4PBW@?HjGR9XY!0^@D@`qdK)#j?6eA5 zh;i`Hd`*QSErC#%DFkj6P)3#1W-eI6Xa{^ty;v}u8+{L`0q!NBcD%hCs5cRc8}$|+ zi}=bcd-QF&R=G8t*v;iupestoKpV}=n`4pz`KfH z&I);Hpi;m$yoxiDrjZbejrBJwWd%YZAuPuK<_CI zjwGGz3Z+@ygB_|Hh}WQrBPx)KnS@{Y(TU`Hc?>@9Y>1r;Db?H)f~Ri zlw}<>qFaSns{`Z2-2rL<=e-E!W93h}2jq*W!B-kJ9C7h}03s_i#jS~1Ic`KPJDB?h z3i*6P*z1#Fm6I;FCI_D4%)zzp)?8Uu_52Q16+6`vniGi|^W_t{GC~7*N@@bviO^7% zq~6rFsv@DQ7WPi<;nr=3o&|ZhZJa%p(iK;z6r^CF^DvnOZq5^piC;1~ zGhoAtxNOId;RPZT*CPO_d^04i!BD5tB0h;ewdat2UG)~EY_5+W4*oLim$->I^e&PEl>?cK9$l7*8dd=ThoNfHdsH&jq7|(Zd~VUa^re~ zQBz?njN9BAb~Ay^?5$?~#^lPjg@u{@ybqIqe1W4FGqQgfLqLdLm(^f|j&8OwcmcdB zZm<6-0X{`;aiiTxAR`ItU3Km*P>*swyeRoCUK+)3jpIsRK)@evr{g@n%Bh?;V1Y}&l7-G&1rb(Zco~SWeHYzXg@U~ zOi%QoUZwkKG($b+ltl@ErO}Ktx^}_*@r}vELSoI;#$*TulS<)|U^n&K5Q+Wxsl>EY zAe!#Xro~umx?h`Ws@4*g%!9AU5BM|{DD^2ObpedqW8iCP;`?b3+yhL*;3tF)@8TV`7 zgeD~XGJ$2XM@EyR74MQzFU5wPu0;IFeZ$7&rC7#`C35#`Q?DkJNq^be$uDKO)Vu*( zCGTwA2qxp3)R+csrGT9$(v_lJg=5nGer@4}I{NQHQKMdX;Z>B#6!odyuPq76Q^MhB zOe=Kv{gmizO=0Vofkb{+wY*=ODx%5kO}?7qke(D2hT%@0wbmAs4G4eVTs-U3?*UZkcQmM%d_?CWOq=~#p?bq6Z- z#pcRuI@CNOHiu%G2$CrYCMQ%2!?eGVE+!=|;(1H_MNnC8P_krSiA2=}3 zN>OWa*$;Jc7*UD-5D0r0eXQyhtZIF~c9H1VGlIVT{o2KXaaf0f&G&0}7>CkUECjTr z9p;W=f1Y5O&V32GAi4WTgT-&+&b>xyc>m)isp=1uu#~qBJp%{&RAl_{Se8gxyqerWP>rf zC3>8>P+EmZ#_}5cR4nBcnegNKH*>u*F^{8ij48$^<-g1XyP|lgy!?K?`}4t!A=U){ zb@9@s(J~idIOK;f-%0@UW?2_A0XLO0eE4JkE*SUoaEN!tmNs2bKJ*<;#ulrl`rs;F zlDoJ3k19QW&u zqS!9Pd3AhPb<<56G7Dz!XD_LM8A-^$IV&Ij0V->Ou7Hgn3r!Ffd$Z7)#lA!XWmJ_m zdCtu4H!7MLGuyHoQGfehl+1i5vc-M~=KFAVfBP=PDN68(%SqoU3D1?RkfT@AgzoCh zV1#svGzXGsLzp8+LV(w{kOhELei-Zwg88%V(jY2ZHzY%#fNSW0-Y!{4UT+>GZk%J$ zmux!=ZaWk%i1CHLFqBkvVPQv)hqro^n)%t;MaR)P02c^v-c2Z@z*#4wwWVA^Z2ZZQ ze|1PnkThX+)1&~LgB>84+*}~;mm#ac+Ll(63%*V>5JBdvC+!H?luq|Dt*u4)Bh^$& zG)52i*0_JhC6nA%Aht)0*&S<_epJgrd;D-1jF0UPy;IE7LE3Vv`Gn5OJ)ZOHx-=;h%!kU4uOm_&BGjx0A*16HD$ zwN!wzTR_8>Y^&`tDDL@e_E(Hq+T5(3kfZRx#*?e6Iau%zwbpzVfwnSwU(ml@(rt`}uP6% z35Bfgktp8L1|y{0y%Z1dG}%vrE!t01TGEGNK8?jb{VDCIcId@kO3*jkPlHl7`cn@o zrM&hQCr`|$#>^Ti5v`fDi0WFg`xGp(F2V#N#44m%90qA-MINvqS{_)9rRJ*T6qdpy zMpH8!Z6v2~(BR|T?G-~Hg^VL|U@Q!AwRwaEX0xPav{|%bJoaF_G(*vvF&fl{X@;Ry z<6#n8rWuabjfXRvCI!+oF=w>V(Vj`clzLg#EDc6m#~LXXPHRjEE|Lpt{l#^{xfX_w z3?i+Rxj9QG$!lScB)QbCQC{+L6noQ%HtVIC?u1b}%cU7oj20!kXtgv0i@~D6(FDtb z&1)Bk0p=QPnqIUq@2-O*txRuPMQ+}hcY|V<$o-^4p0dLLHPk?-=0Nt>w|R!q$we4X(D69uF~M9Z4ExOhFH0F0~VoRG_*e z@A)I(?G&g8mFUy%^(V21^=CWmqAw%%7V0yejblP$`!#p~ zQzO`Ts!X4F%1fVklFRPe47V5m2D6`ypELZ$NFhgp{Oq_34|bVTH$c3TW#21h)e;Li zxuYyRq*dZ=;QSWSKjWp(Uh0V2(oZ{R6k7VtM{13cesA(4M!c4u+AItnh)!=*u{J?xo5^eApNIL>}Am@{L z8veO!8d$hnGUUce4Y1{blR!^$=;Xj{7@oh3pKwV`l9>jD>EP8ELGB@8`(&245y~g% z>as43UdiMj3m@ge-FqN&dP*lY?koDvgX(3^dBw{@wnUc>UB$3_|J56g@dOTn zOz@J9&@C9Aa=$=>165i~bN_rMkKsp}$&^Z%$#9(-LFZSXahIEJ!%PwiO$@iJ!8|j+i`Ll5`J-uTKqS0Sk1uf z{1k4-a`%y!T&GLj3`q-}p++@=%9xc9D+jm>P>2spAo2+P)wp`(ttB!-hy%)d_fu3j z{U8X0K2FC8I=J;)fre zbmod2>nvPJ7A0fS5<*~WM6N01vpW7KFTvrr6j4fiy0U45WUb8lKL=t2&(BKDYI24H zLjBF`pLXp@V^(~rHsBKEbAsSwegqI@x+q*F%>;#=>iSvACUma0y5x{b?%bDc&tUJb z$qB#OlnQu=n1R>4mtB4AX@0JQTSVUvB3j zNtbn7L>A*+peEc2QX`A)E>IKh1X0WSybIKXJ3-WPa-j>Vm)%IX6GScU zq%No?+zFx+?TRM#b9RHis7bp*FS@jA$P;Fc=+myy7d2{Eg+!-z4SB-Ui(c&t zeNnS^RY-Je*N`Vnz3A7j&=)mqSA|5!b`5#L)Qg_&3Vl)2c2!7S_uUMuqPFb{z3v}$ zgT6`Qifw#CDtE~eO**%`5^a>Ot`ttt%#|8Dmua%5yC|c!ahHIp40h89wT`<$UR3Pe zAXodi3*<$$-VJiKkh?(MWFmJ_Ms4IS0Z)|YY9)7pyva=NqKw+fT>_pcRxrbuOWePHSk7y#TA|Q*fljsD(UbTDDdAku*66jEm)bM4~jRSoB2dZHWp9 zl&bJRh2sQc)AlLP^BfT)I7PhCd;TS zn(`)mCUrtnrf#@r8OKmlW)cyQ+x%ol zl^L-qz(p?66gh%ZD1U{WYmoG?%ZxkI{AT@oK9k#U|9iaVH{3%wK`bNN!AUHE{|+d3 zgY8&qgSWSZ>T(yO?YJjb;}l-o)R-&QvC_iVts1<1&1w&qWxWoGJABAONW1}mmHG=I z1gGIE>kmCfgt);gwNSozfz&sUjO&<+$^9d9i}Q?9W6tFK;r;k17tRMpriW) zswluULsfoZC7_HrkFFW4{)Sdy_&hnjn1`#u?1s?!!_7r|w)Zf;gtuUg*6Ux!%W2Mu z;nLuxQTkaUgsixG@HQ+TIpSM2YY<58P-^hLCb=)E!TXkyE0Pd1Ie$nZf>wQw$52Cr zOw6ck!-g{=;U~D8E@yCYXZO_n;(@Ull}KoU12edgjR$fCba84tms8Rl`KGGImGI;B zfX$)Ns2_gGzJNtDszoH4j4cE(hxbO6<}N&dYooq^c9i+8payS`!kuD!(Zw2X;r@ep z4?yS}3``mw9OQ*jft$SZ39))}5|}=Uo14m8@PlAIP3aFY4&i&1mGZ`32IA}1Cch+3 zVa$E6vPYA`m+Tn2CqRWVQYm7K1mh6rRDU<39W&%rQvS+1KDwcOlL(Gj3W#5un`0kHU_Flfu>Ic2(bScV-7VTC0%sc5I)zlp!aqZ zk3|*;Y4deUfl9w_*)Bp}02v|wOAuqZ-dV&j*ba(F()cLXkArih($81|5!oSMwN8u= zDYYit$($<`xxL1kInd(c7i&y6qT;6VEiUrIwaEz8q)@W*q=d5zm61hPW0IA0C~igO z9p+6S{%(x}7M z*5JZPMu;WIacd`Zbv_NtJ^3DsyGz)x1VEclC3eEQx=*$gW%l z)tD{k4+Xmkoy`b7mqsUTLy7Q3@%Z8M)rY}h9B%eSD#aph^6*o47_=smp|oU28wNRQz>e);M6skF|IF{CYy%U{0H>j|FfcdOHr z-FnC%Ip3`ytW}LoOv`dopa?Q3Cv|y#A@vmG4gd%$g)71wPbnJMGc$%b-0l4w&~h4s z@uXCKqQAscjZOrj3U6+;kl|19*{O-^(@Q8xMQ#mihu2B#vvPF6C)^Y^C(!XMV(!2@ zQ4i2A6F>DOpx;TPqMeN5<$Snrk4~Rl2avnrU=)E6k4M*26A%2{g)n_V$>wQgwsSD2A#)= z&$=W5;H)(#Kf(~dCQ_E%*0BK3Ug89QfuqUM2}OcWr6ecA(^}<_mDHM7-dYY{Oi2!i zr{(0l)!+g?8J8P=X#efG_7CJh=-XQGpP^w!Py;A;N3I;^Emnt*2!|^X*1{KA-hiJ< zl9+z#)$Ypa@u#w6B=g`EIbPedICdeN2ZOc}G`x)UAM*Deagt>mH5SB79`?x?hB$&H zjyaw!r}n7r!C@HC=0CB(Txq-kP*LJ5p|N-4)w{1t#Y%FU0hTnus!4u6ho%L8^t>3GhI=zVVp-MNEE$B@9eT zs`iijo!Kl*QQ2wXm7$1e|ro$ARo&N7p;)rDI7kOu^Yl98;W{dy;aM_j8o)9OO*y<#YTXf{mv5)F+37I0xU%XAcZk@jtO^*g(u1(3*T)pFvbzqjw zXBXswFbHu^VTzJF5EllYLi6!OMHqCre$HQ_gsvwNOu{J=w@xN}(KQNy88`(P$ca4! zFYI;{I#zYDN)o_K&G5R)9KHz0X*7Cf=XIlnC15V(N(jMvwU&a(AY(Opg-#fkp5HJfa^ z&^1Mq4swqx!#we@Hqt7aBn}2%7|e7sgqMhqZf|IG*|;J;EQM~9H;5`KVyPUN^+TN_tvrQ)2iHd&}OXHHFx!&4hoF-5(oQaFRryyEPy zu0Q}4iAsEgDLnBNK@+czF4@o?Qaxam$SOfUs4%fGyN6xEebr_}#t4Ow7(G5lS_bkJ z;B?;{j{m7oV=Ybt&Q8k$ph%&@DN%vjc~rWnlBfcVnz4Ngy0npV&9dbn)W~&-Vl~Mt zj||SwYxR0H22_NsK`0^7Y?N+JXQS1s0liGaPAv41oV#4h!IE5w)%Lpyf}XC`O(@~8 zgrs+e3$6JB>ej;@b+QKX1k9$5Xg*7IS9)Ft@ZI;P2KNS zHuPV<1x3Z^Jd?TwU%fE4XOf;ny&;sRg;k2q-&h=73gMRx@(m14p~uO*oY<>7u)A&D zxjdO9SL;NRld#V=@gOf@Qw!ll>Fm7t#)|@pMfV;jCO^30Z~RQXX^8~D-|b;x#5l2D zT!Wp8OKcZs#&Orz6u7hC{pMf8rLujkGKNMDAKnLzEv~BxERpmo1SYCh!!{gsrGVL* zr%vS}DbpA{le>vlpH6%AhIE3~p*O5tnr6n>yJg%Q3TT~Wd*Dg%LW_@)$4^8VxGo>{H> zl<(!3^GLiFnbV?FI|7m#E5HQzsE-7K@h*1|Yo#yCSNfMNDs5e`UA>{%?Hz zZann;9J8K=*CMlW({56<9l7+bI86(TXQ)PHE*q+~r8bR^fJ{80@xc|cuQj9`qSpDMRRoThz-*x-T|ynyv~<5>&zUO6mRH-c;A}5SGM7L`UBYWlf4zL zmbe$oeU*b)-oOJbTPgAkSF>!R$P0YR68VDb>@VTfSr9u3csV$xtaIpN!6CPtVV>d3 z9!_?yt}iewC*5*=_Rjtl`UXAjR_f!7$JV2-`=@4HuRbQ%yfu6=y|cB?=gZBNuP<~K)E$|aSeLwP4z%n#@(OdGU7x= zK8)9*=&FVh=u{#S#p4>hqtC7f7093D@vg^?UlFe^4Vv(#D~1N|s*=q&+<_vH2Z1P| z_qrB%(RzbU>D6Spo!T{cOI0b{dh{1~8@~9;%a7_e2}=!bP*QHgeZZeYLiscJq0c&` zj!M81zgCBP!Vs~d^34FGGobf1jsE9;?|)YF&P*WlU~{VtYe0IhY4PBu8fa-znDktW z&%0&8<{H&Ydq5m!soPbq5M*Y+4EG}ud()5kIkVlnXk{xpdMXK~VGy%u9`6w00%Qpw z#7Fs$iJQYysG%ni->(bb|MCt*G9V#J9DxM$W;k4h9mr0iHKZUZv%*-J-T*H|ccrC~ zae>buAa3E)0c75fz*67*5?PW^p3=goBm-*=;yq=;R=ThVEfS!s%;!h1OQ8?M-(}*W zz=;P_i1gkoau7^Ne3wO3;^{Q^RpOq^!`bTNFV}K?8&>oLO54VT`TBKS%CjvxFgPgM zF6X5dmfC_+Zk73TY3e3;EkLTk?RK9{6r?^zo|xz+z=cFQoIFS1XH6?823Qe=8^nZ> zD+K>#u23-mODawzh*w7?H&tcX*=S{oVX2ih5$1*{;+%ZEQh^t#BD!PMu-%p*{jjqYi$3*Rviy?HWweIVo6s3!>|HW4k-i^@s6VoI^MX z6-uQ#KV*5!o0qAVCT0(CujN)e5Bujzy}=Fm(t^&&?`4*Mu2dS_b}w=N9s?6=!Y?p4 zzM?EQ-AiGU{XdyM{?uc~j$VD)GhDUa;AVSC=j_!uzcD;@^>Iw!$lz&?lHH-V6EA%S zj~u)5$koSPf4oJI-nkL1KhMDoQL>kF@lvsuhvB6rF9#R)!FhqIkW%OF`bcv9U|rVJ z2YtH$z;=xs^en(TS%7!?^6dN|3^K;4Z-#y3h!rHwDtoIEMWLsgg^0e8q+z z2m%0oCh2{L^&{xKV(8YvH{q)mgefdO(pVhbrSqXU&bxz?3-LLxhbu&r z`qXR}a>8YxnhjN(WQHK1q%5r%u3|YI1O4@;iiOl*;&7@L#a#do;XH~le>o|qNZ1Kp zGb@C!m31KxGjWoayJ;=@>pdHC0YR9RyDvD4F*YU_i0h1eAMBGtD@f1tc~|v9}5iiaRz*=Sp0V zYcNGUG3FUl*TQ}Hd_poc{|K+eshK{Qe4%t^_PUCtQFuF3Ihq>0m$x*h6Y0m8%3;%ZKcCKlUTyGpRC<#qr~N&E4% zu`z++urmE1-s(d79vBF#ba{Wx!Ypqvr@IDs`w}0%qJmH0(Rw)_wGGGDYNc@|QcA(P zxs>_gty*f()+s5u*E8>;i?2C$xm#9mkZy4xfC^cIy&MTRuO{Jkl29Mn6D$I8TaDlo z^N+?xm()iX0n(>*#*}#43UuKkOWZCb`jZ!Ej;fwBhxi_ zBCc4IKd|O5!U4BpJ(kyPEltt&uEFDVIIo690;gS?>o~4wct0X_w#n2={k}+{U3`_R zNAs<0Q9sY^HP_$%;GR2#1A1GU2<}ker==4cda~}Hch6(b8Bb{ExdzV+;v1X`7eaUt zZjA-SzaynDmr@_`ZX74qbgL?$SSbpgG%U?|6H{!ST{!Vl{=cZK!DDYa)Od1;#|{XP zEFljQ;Bx%f@wp@~y$D(GqDt?A3RmjF;uRNBT*4>EZTKj=@ee-*59(u;lScU~kl74B z-LQmfbM3L@xd#8iGAbOqIThzkwkGeDZ9L>&&>2jknxKc*HF#2|w8$pu(HU$~K1s0T zk}BI~5KM?edHln(99Ggtu1oZZhuOqCj7XetCQm%XGuUVe$LQ!Ib`2iC(Rw*PZ2kH* zq;3~#(o{LTCByt2*$0-#b9GC&!80~Zh~jYDg~KOJ7-Mz^)CK9}IMaH#o4uO{fo?`p zG8w)Juf@rbTnzB(1PD`bOdAsp(=>Rt#y16?ys7a}@IR5UMcI8cjvAW3k}>-XstWKl-Q0TAJcEsC??s}&EEx{1%d|TsDA4qM{niLZQPBe> zX9m_Vh>?TAH#r1uNLioA^Xx7_lBJ-|4^V+)QZTRFAUuttqv0A%*HHqB21}kaw!?M8 z0_-nSD}DyYHJF=h0BNAmIz&aD9;3B1vEt4_@@a0xjo?9pq1L%_44s}YmSbYYT`A?t zj~zuhMq-y1;cU}&DR($-L{cL6ufuCm?sM>|+{Yk8*I+0sJ~e@rr^W_<1@BvvcO3PC z86`eB>I}Tu89h-U45mY=AD}S+OL9*&rBiUmM)695;cCU z8CBbATU0S?zE-PYohMAa(VvfwZHbqnJ3C@gn0xau-c?R&T~k0Ak$8FMqfBA9LN2-r zC<`V293>cx#La04CqoPUDE~?>7)J{Dd@&RUm7TdF_lFf(Gq~@O9Q-%i!&?NJC+1(8 zh+()BgHR{umCH$Rn^dkVliS$5H3tv_)+MYDOY+q|*j%k^5PdRU6I)~%qEpH}_(@KC zB-yE{l1j3Drl*6wk_4ymQ9AptHnOuLB8ghd8!b%oGQwi*j26jr4gPaV9brk-QU^FL zES3pDnEDlA7+0bs8w^i^JqPcUxCAq7ca%Q}f*RZzhgCm0zaTc8|C05o%$L;^qeRl} zMzN*k6D^YghMOlv7bOr#{`9OdNpRo20)Tdz192_WK=2mD|F`WXr@> zxDr&{WYldBY#Wj*p3`AxD=BZYPAP%$qnjkQ+I1run4>eYy3k+|ZY0`fkvbbo$)1ta zOAvagXT}c6Ji(c zGVhIZKbvP$x$c+1jB&6LCm{H)t9|Yrs^oKvP@lN%m)4)?h{qCW7C)(!C;53D68ObM zkIH%nC6esJ@llk>k6Us+uSJp`W4U%(MDlRa5J1w#rR#<5a1?D%c$?;>2EX($1^-;f zN7vx?S&91#{LY}e25-akdhEXDnyXx?)Zku=IDGU#_Dk_vu5E@k;?BlskLWDe)ZA}z z4Q^J9He`G0G*{C!?pTaA4%jr zonc|6>(*g`E2r!l^oX=r4u#8t+#~>6EQlgN${|*qTW!&&lA!P4B6t%Z{hEafybh4+ zOlVr#71m#L7(nCC!kING*C4q*tU`9=QhtoPl`?S!oaTNKu36&hUq=Mj-pRtqU4(bs zGGGfO95~+tAM4&peu3AIy*+!vevFJf0?5G}9d}$mK@6pJxdqf4kx}M42_vjISHGgi z&k@z&&g8la-CXhKBxR9c&V<}omi#q5@*Viy@OVuu$Y(-0>u~#`RzyWiE#RoVlU2&K zxlaZC4rrEGk1)hlx#vG9Bv4%4*>)bh>t5Y5YXIIkzq(D9JltCLCJ%IfGM7n_HY=X? zUqX>m?Y@MvW?}3grm^DMPRiugb_$nY*$GsBW#<}9R59Y3@=WOH1+E~2FLr!^?TadU zfsSy~&;a)5B$y&z5=oK6vlnU{-S|TA#Y-IB_=4CAEC7Y#fI{xHTX5(gc`Kf7kf^$G z>_&@#N?cv61lATpcpc;GT!Sk@X@Qq^@wPDsm5lG59G|AiHHIiZTm+)2xzKuX_>6;% zybzA33E3dm;CfLx#1(=*(elqN!$8}#`#AIO#!qf3CRyo~Rmn=J;#X6CEeETsL<_lA zd~YhUPW@WC3ZwMNcC863Eq7SAvP5&T;z*WLfP~b0u@)PD{nSEOOp#g%VDdH+M_>v| z8^%+owPKtl`Q9#LBjn3m0k5YKUoLKjF0RqU$3V(bP}(dvVp__#tDTu69AJ@`p@>Tt zL_q$m^em3&l||C(hEaYcgJE4{gKMyy3Io>?(BWpze+sXC@%4{NBg|rqDk9Z6@4X5n zjX+r;d7KJT=0PeQeb)d2eldG;!Y66SfZEGYi_|eA*fJX9Wp8jw$vZ7pgBX&K4pvJ9 zT#T%f00{=UP3^|nBy~iWHm!drX%S<$v}xo4%!?NNCo#3K%|8bK-wj-%NIuR7@+uus z?8Q79bZCe3pV7FUMRV$~-aq54EyN*2pE1$~L*P)S#seQKWklP&7-tX%=C%U1A8PK)q5jz$dU#- z5nm$BGxQV8K6?wY$=6aWcRw?3Vg?Jxb_xyJ#AV3c!HB~ z2|)A}6Q6&>+(>{kMkw<_@`Abj*KQ>bNP8(9e{_E!XhZ9tQyTF{ZrtMmZgP`RZd`-S zE40krD+qFpa`h44S%D3`{DV@W5hLVX@ybvn@_rV7W|fi_;dvEivPZ)3y^U zapM4%xFd-gU!3+qMiMx#l+VN2H|Zp99JGsTK*Gisr~O`~1dXE-X_rKeFHXz4Ktjd^ z2{w2oWPEX2H%cX1d~rH_;8w!Llj`QjE_RF>N6V;gK(ISmUtuCjyNCR%RJvAQ_D;?~ zBf53^CYH*2eHOB*D~I*njImSj>Kc^1qExsEbb2EHA`xy-q+b-7X!lS_==<_n$luoUm>$ik*y~ikCRD2dw3cNn`!4EZsb#0SjlF00^0D6U_|Nh+ zfaAl8K6ziMhzv~+g|2rqV18-kN=R;F0Jxm%E1`Bi^!K`5J>~j&Ler{9gmWj6fL%RA zJ-|mk3>v`9%6%9WtJ7EJudxK@PG(b?HZ(Q#dv!#K<6+(m1 zQ?>(o7#+P~*qysli;XA-Ei|eOQVLJaGG)+4GKe@gtu0I*NANxv31$$- zpPcsakkO(YxYk}_BgWoYALVU0_RJ|NIU7i`O5li<_8npzKUF!t(YkVzb>(K5Bak}n zsWu&=Ef|J$m91|ou`yNcp_-vyW~l4hXUnb6R>VGAnew!`Gtv%h#18C>9oTQZ6FP(q z*8V>!@<0;?EP))>q%dmqb#>YyVZ^ZePGBITqWDIcqB%sCo#Q7bR!bonZU^0K;9Cpr4SfXBW*^M4X&OzxO&sU zl@QivEk1Xpwz*$xR_P7{$><8hD2|#iko+LB)`v-lQoDv&6{idy@+s&zzO)-Y7&s<0 z!zMJRqyuwfn%I5JL+lC?2~Cuy53LAB#%Ri7L{eyaQV4ImSzpR1ybLe?8w zqJ81jr1HHlid4S=TDPu>qv1q)IPHi3Rs~6MABo*L8at;|&uT|@7;=y4X>HqC|5W3U z!gZ(=&tNc{L$C0%nc7V6(9@C?;sGZQ04yfMP3603}FbLzQYVIN%S0|+-ISf8+ z^I#li(ZpaH+i9&ZajKxLtxoc4ZIq>TCPKl8p$Nc`F}h76f*3#ulxz8MtAe2> zOzgIz25u6D4!upxJ}%UvW>}Su z)Sy>6wv;Yeu9a43F9+k(WMH+)>Kc>Y|JlBZ{d1~zn=IK>=6;qQ^W)1{-C{0GM{&B4 z?sn-A2jKq?XT+%Za%wi|EgO`o#G6-l9Y#}_7!&Ph9re>pib_J57EQFRydblQ3y5u7L-tWk59 zY>1sR5<7&}ir3Yr8m^zBZ6y^a7Ix=DrOZ{qwcSzx_?=$ zNBL0K30k@9T~oxgA~G`!8smBJh$xC)otM%Ta&!s2igw2`3*GkzQn{{x!oe?tBX-C?svYAEM)=(fgY#>qs279Wo7$5J!c4MYDo3#h zlZ7=Udd(x_F(Tqn3??&MI~<4NDSTvF7!x`agYVCV;;69_D<~U^8+H6`;`mFweg>+; zYpV^fZA%O<<8{~iEOPK?az#1&9d}xi9)5-i<7~|NSG*MU#^L)J2^5c z*j3iLoWnse2Zw{cu208NSZi|3$l%f0bAyee+`xh3!N|686l^cJ&utuS(*A5egxVMY zhTGawjtWhbpmt|f!3-!m##K?Z@ZVaGt+XENv5D+wBg6)Hv)iH#-hzhr;^|YDaD=4l zd3h9o71k8L&%=JS1+}T{MpW6}uQIjB5PwmN?3la z#6hCMn68pyDeazQ64QiM)}r;?VC2C6z@}s*H8D<<4>=u6uW?SxDvWuHDB_!4 zEK@ISog0Z@SSij;QI3L^GgLuH2pzPWTwR((QC$g%J91V*2+m})1<%}fe zhu$&KK`%u~7}jn$g=23+G}7B_o!N+tu{b&+5s9PQGFxm!ZnY7a?!-j3dRiQur*lN= zK+o^SbR3+@0qe&$)|AOdjjgj8EVg}lhxL8xjPX0+6!ms~EwwDeaE!7N2BaU1-XH=& z1IEljvW3W3+elrL4$ou(iA}h;9F*Ob-0;)k8J3THWqz=OVFlap3`u4l4zxkDCJOP%smU-D zC3>wfaGfzQ487v8Q`t}Ts||xu(*m;B&2k%~YQ$nwgPE|~O~YqP3`7x<$_Vf7&KMLS! zQN&M=vM6)2PSaveTfJxcY5GnCx0l=*kQ|&@dZ?GbJOGCOGk5io<5xcI=;cQ*yXNwv z$DVxkm1kXhmo``Hy``S&O8!)POO@*KMrpV@&|BJBE%%miguWNR z_X8N1{Zlo2SZRCpF$9s^y?<%Be5z)TDD7g|dbPK=)X%5>YK=dedx5!+8K`JywU-qE z%l2y40OrNF7#2QNv%SawRhzYr*M?j^RkQs-AT*yr1l0zpM;$w>Q+$=mg|r*rYDoE1 z&3?JGqgV_?Zmw?W1#JF<{3p-m&6`gy z_1DU;!Q*i4$tZZs+pQq}MZv3p8>KE#v`kYr@}ZjjI&wklL@}3Gs@c;ucXPEt=Ap4T zXh-5Iw;2{bRkPnhvjH+hRGwSc2M|70v*!Z@x#uZ@`$I0Ds@eZhrtGS2?=6ig$o22A zI`~x0UaGXzs~g#eV3|C5;0FURpQ_oPm(I^h$Jrl4$}&h;y}H<2I-hBaY|1dn>1TC4 zBpLu0un)FZ2YX91)pD);x!(eJtJT`O(Q3TjgI6@a_TJKtTKUs>*@?&P`Z!d3FSv5U zyNzN#RkOba+Ed9hsa)g_QYTfeU^04TS9MDRB(7nVVBlzVS#RlDwr~e3F5fN`EUW!3 zfbsg*LP5FqY2)JO-)j}(UsU)x6g!!iQCDozf5-R{ILb zCyrD!?guuos7{(j1G9il8Z=y8-&@+-2Y#W(!Rls;KM?-D$NxRW{|do>cJ2FUq)1M& zk{_WhBGWtBRiLuYf!|+!G-dJ^*bJ~tG(vwBRS#Ep_MxJoG9{mcRl;)vMP(GnD#)K| zR(@_ND_wy8VjD)QH)p-2tEdBds#{sp3Q~TxD4SaO`@cyz@cJf{sk1@fL&`7*+ixRf zs8;?C-{lP~yW{=FGCrZIn*k()f3&(<)IhELuZHq>4du6y0(R8OFE3G_-Tc>vgik>7 zDgd5`|41)nbCksPQ#^XAheg$pOUM|i&hZt}byrqB*XQ(ml~*hOy;b}dR`KVM0##Ql zzlmf*r16fn;0?1@*Oz$;J9~De*{IFr-6EJ-&hiP-b^mfB^w_$p#VfwUSy7dmj z#3x|7Ct`voxt5jxxgq&Hk@&W~-tc@;@Z9+k!^0=w`7-eYHvJ+;8c_YAp}Ido^#@24 zLHY(0Yvot+y;jB>m|y>>A?6bhe;YtM0^$w5rAvwUWrp~{1o2A^@pl#ROB6BQfcT0# z4Kbg9_y+*;y^5AE66*^M>yHzx&qJd0>O+F(+K(9?J^|13$^j30722j&{?W7i;JFcb z#=##TQSiLDOnT1$xZ&Xw@VpeTqGv{{XyqL7JYaZkN$`Bz@Vs2`Onk!d;9uf-tP=6s%qSZh(PJ?kadse{3CqVs`L5*@)iQfDhqv?GKO&>OzJ|HyB-DNcK z33xsTSl>1%OK`nbexKp_8{%Qgdko2)f@JiQhJ;T*^6^LvES0@1@^(XVcS6it49{l- z&+y+G9zFrjXLH2N5YL|(o-Y_NuQw!L6eNRp8xlSN$$gQSO`ObuhUaC(!)88UNNy1%Px!1M;S-SjUL?k3<{O6O4-#VTH#~nR zcrN{%;o%eT+?pdsWad7@^ExBui-zR&f@JaU3<;lr`9;ISC*b*Z#B-V-4=*!34<>kCYIwdYcn0q^JbVJ4A4EKl@cen9;rVfb z=Xr+bA;I&#fQL`O^Bi1~=tUU@E;wE*|M)ljka!{TM3jGo6d4aURynTjxX*~;6Og

vK;*M8aX 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

- - - - - - - - - diff --git a/feature/cw/src/main/res/values/app_values.xml b/feature/cw/src/main/res/values/app_values.xml deleted file mode 100644 index 49c0e442..00000000 --- a/feature/cw/src/main/res/values/app_values.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - #ff6200ee - 18 - Idle - Waterfall display - Frequency scale - Decoded text - Clear - Pause Decoding - Save Text - Record Signals - Settings - Online Help - Rate this App - Get Premium Version - Tap Back again to close the app - Message Type - diff --git a/feature/radar/build.gradle.kts b/feature/radar/build.gradle.kts index dcec5fd3..7c40f36f 100644 --- a/feature/radar/build.gradle.kts +++ b/feature/radar/build.gradle.kts @@ -4,10 +4,4 @@ plugins { android { namespace = "com.rtbishop.look4sat.feature.radar" -} - -dependencies { - implementation(project(":feature:mutual")) - implementation(project(":feature:cw")) - implementation("androidx.constraintlayout:constraintlayout:2.2.1") } \ No newline at end of file diff --git a/feature/radar/src/main/java/com/rtbishop/look4sat/feature/radar/RadarScreen.kt b/feature/radar/src/main/java/com/rtbishop/look4sat/feature/radar/RadarScreen.kt index fb1223cb..2dfeaf67 100644 --- a/feature/radar/src/main/java/com/rtbishop/look4sat/feature/radar/RadarScreen.kt +++ b/feature/radar/src/main/java/com/rtbishop/look4sat/feature/radar/RadarScreen.kt @@ -119,13 +119,11 @@ fun RadarDestination(navigateUp: () -> Unit, navigateToMap: () -> Unit) { ) == PackageManager.PERMISSION_GRANTED LaunchedEffect(hasPermission) { viewModel.onAction(RadarAction.SstvPermissionResult(hasPermission)) - viewModel.onAction(RadarAction.CwPermissionResult(hasPermission)) } val permissionLauncher = rememberLauncherForActivityResult( ActivityResultContracts.RequestPermission() ) { granted -> viewModel.onAction(RadarAction.SstvPermissionResult(granted)) - viewModel.onAction(RadarAction.CwPermissionResult(granted)) } RadarScreen(uiState, viewModel::onAction, navigateUpAndClearMutual, navigateToMapAndClearMutual, mutualData, requestMicPermission = { permissionLauncher.launch(Manifest.permission.RECORD_AUDIO) @@ -252,10 +250,8 @@ private fun PagerCard( transceivers = uiState.transceivers.transmitters, selectedUuid = uiState.transceivers.selectedUuid, orbitalPos = uiState.orbitalPos, - cw = uiState.cw, calculatorOffsetKHz = uiState.calculatorOffsetKHz, - onAction = onAction, - requestMicPermission = requestMicPermission + onAction = onAction ) RadarPage.Sstv -> SstvPage( sstv = uiState.sstv, diff --git a/feature/radar/src/main/java/com/rtbishop/look4sat/feature/radar/RadarState.kt b/feature/radar/src/main/java/com/rtbishop/look4sat/feature/radar/RadarState.kt index 48a87ad0..3e169e0a 100644 --- a/feature/radar/src/main/java/com/rtbishop/look4sat/feature/radar/RadarState.kt +++ b/feature/radar/src/main/java/com/rtbishop/look4sat/feature/radar/RadarState.kt @@ -63,7 +63,6 @@ data class RadarState( val transceivers: TransceiverSubState = TransceiverSubState(), val radioControl: RadioControlSubState = RadioControlSubState(), val sstv: SstvSubState = SstvSubState(), - val cw: CwSubState = CwSubState(), val mutualSamples: List>> = emptyList(), val mutualStartTime: Long = 0L, val mutualEndTime: Long = 0L, @@ -85,19 +84,6 @@ data class SstvSubState( val diagnosticsMetrics: SstvQualityMetrics? = null ) -// --- CW Decoder --- - -enum class CwStatus { Idle, Listening } - -data class CwSubState( - val status: CwStatus = CwStatus.Idle, - val hasPermission: Boolean = false, - val decodedText: String = "", - val cwToneFreq: Float = 700f, - val isExpanded: Boolean = false, - val signalStrength: Float = 0f -) - sealed interface RadarAction { data class AddToCalendar(val name: String, val aosTime: Long, val losTime: Long) : RadarAction data class SelectTransmitter(val uuid: String) : RadarAction @@ -118,14 +104,6 @@ sealed interface RadarAction { data class SstvSelectMode(val modeName: String) : RadarAction data class SstvPermissionResult(val granted: Boolean) : RadarAction - // CW actions - data object CwStartListening : RadarAction - data object CwStopListening : RadarAction - data object CwReset : RadarAction - data class CwSetToneFreq(val freq: Float) : RadarAction - data class CwToggleExpanded(val expanded: Boolean) : RadarAction - data class CwPermissionResult(val granted: Boolean) : RadarAction - // Calculator actions data class ChangeCalculatorOffset(val offsetKHz: String) : RadarAction } diff --git a/feature/radar/src/main/java/com/rtbishop/look4sat/feature/radar/RadarViewModel.kt b/feature/radar/src/main/java/com/rtbishop/look4sat/feature/radar/RadarViewModel.kt index 6f84be11..b1507e5b 100644 --- a/feature/radar/src/main/java/com/rtbishop/look4sat/feature/radar/RadarViewModel.kt +++ b/feature/radar/src/main/java/com/rtbishop/look4sat/feature/radar/RadarViewModel.kt @@ -34,7 +34,6 @@ import com.rtbishop.look4sat.core.domain.repository.ISensorsRepo import com.rtbishop.look4sat.core.domain.repository.ISettingsRepo import com.rtbishop.look4sat.core.domain.sstv.LineRecoveryStrategy import com.rtbishop.look4sat.core.domain.sstv.SstvDecoder -import com.rtbishop.look4sat.core.domain.cw.CwDecoder import com.rtbishop.look4sat.core.domain.usecase.IAudioCapture import com.rtbishop.look4sat.core.domain.usecase.IAddToCalendar import com.rtbishop.look4sat.core.domain.usecase.ISaveImage @@ -71,8 +70,6 @@ class RadarViewModel( private var transponders: List = emptyList() private var sstvDecoder: SstvDecoder? = null private var sstvRecordingJob: Job? = null - private var cwDecoder: CwDecoder? = null - private var cwListeningJob: Job? = null // Celestial positions change slowly, recompute at most once per minute private var lastCelestialUpdateMs = 0L @@ -293,24 +290,6 @@ class RadarViewModel( _uiState.update { it.copy(sstv = it.sstv.copy(currentFrame = null)) } } - // CW actions - is RadarAction.CwPermissionResult -> { - _uiState.update { it.copy(cw = it.cw.copy(hasPermission = action.granted)) } - if (action.granted) initCwDecoder() - } - RadarAction.CwStartListening -> startCwListening() - RadarAction.CwStopListening -> stopCwListening() - RadarAction.CwReset -> { - cwDecoder?.resetDecoder() - _uiState.update { it.copy(cw = it.cw.copy(decodedText = "")) } - } - is RadarAction.CwSetToneFreq -> { - _uiState.update { it.copy(cw = it.cw.copy(cwToneFreq = action.freq)) } - cwDecoder = CwDecoder(sampleRate = audioCapture.sampleRate, cwToneFreq = action.freq) - } - is RadarAction.CwToggleExpanded -> { - _uiState.update { it.copy(cw = it.cw.copy(isExpanded = action.expanded)) } - } is RadarAction.ChangeCalculatorOffset -> { val catnum = _uiState.value.transceivers.selectedUuid?.let { uuid -> transponders.find { it.uuid == uuid }?.catnum @@ -440,52 +419,6 @@ class RadarViewModel( _uiState.update { it.copy(sstv = it.sstv.copy(status = SstvStatus.Idle)) } } - private fun initCwDecoder() { - if (cwDecoder == null) { - cwDecoder = CwDecoder( - sampleRate = audioCapture.sampleRate, - cwToneFreq = _uiState.value.cw.cwToneFreq - ) - } - } - - private fun startCwListening() { - if (cwListeningJob?.isActive == true) return - if (!_uiState.value.cw.hasPermission) { - // Permission not yet granted — request it (launcher handles the result) - return - } - // Stop SSTV if running (audio capture is shared) - stopSstvRecording() - initCwDecoder() - cwDecoder?.resetDecoder() - _uiState.update { it.copy(cw = it.cw.copy(status = CwStatus.Listening)) } - cwListeningJob = viewModelScope.launch { - // Collect decoded text flow - launch { - cwDecoder?.decodedTextFlow?.collect { text -> - _uiState.update { it.copy(cw = it.cw.copy(decodedText = text)) } - } - } - // Collect signal strength - launch { - cwDecoder?.signalStrength?.collect { strength -> - _uiState.update { it.copy(cw = it.cw.copy(signalStrength = strength)) } - } - } - // Capture audio and feed to decoder - audioCapture.audioFlow().collect { buffer -> - cwDecoder?.processBuffer(buffer) - } - } - } - - private fun stopCwListening() { - cwListeningJob?.cancel() - cwListeningJob = null - _uiState.update { it.copy(cw = it.cw.copy(status = CwStatus.Idle)) } - } - companion object { // SSTV Decoder Tuning Parameters // ============================== diff --git a/feature/radar/src/main/java/com/rtbishop/look4sat/feature/radar/TransceiversPage.kt b/feature/radar/src/main/java/com/rtbishop/look4sat/feature/radar/TransceiversPage.kt index 28f8bbe2..f86dab43 100644 --- a/feature/radar/src/main/java/com/rtbishop/look4sat/feature/radar/TransceiversPage.kt +++ b/feature/radar/src/main/java/com/rtbishop/look4sat/feature/radar/TransceiversPage.kt @@ -17,8 +17,6 @@ */ package com.rtbishop.look4sat.feature.radar -import android.app.Activity -import android.view.LayoutInflater import androidx.compose.animation.AnimatedVisibility import androidx.compose.animation.expandVertically import androidx.compose.animation.shrinkVertically @@ -49,7 +47,6 @@ import androidx.compose.foundation.lazy.rememberLazyListState import androidx.compose.foundation.shape.CircleShape import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.text.KeyboardOptions -import androidx.compose.material3.Button import androidx.compose.material3.FilterChip import androidx.compose.material3.HorizontalDivider import androidx.compose.material3.Icon @@ -62,7 +59,6 @@ import androidx.compose.material3.TextButton import androidx.compose.material3.ElevatedCard import androidx.compose.material3.CardDefaults import androidx.compose.runtime.Composable -import androidx.compose.runtime.DisposableEffect import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableIntStateOf @@ -77,7 +73,6 @@ import androidx.compose.ui.draw.drawBehind import androidx.compose.ui.draw.rotate import androidx.compose.ui.geometry.Offset import androidx.compose.ui.graphics.Color -import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.TextStyle @@ -87,8 +82,6 @@ import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp -import androidx.compose.ui.viewinterop.AndroidView -import androidx.constraintlayout.widget.ConstraintLayout import com.rtbishop.look4sat.core.domain.model.SatRadio import com.rtbishop.look4sat.core.domain.predict.OrbitalPos import com.rtbishop.look4sat.core.domain.utility.DopplerFrequencyCalculator @@ -96,8 +89,6 @@ import com.rtbishop.look4sat.core.presentation.CardButton import com.rtbishop.look4sat.core.presentation.R import com.rtbishop.look4sat.core.presentation.formatFrequency import com.rtbishop.look4sat.core.presentation.infiniteMarquee -import com.rtbishop.look4sat.feature.cw.R as CwR -import com.ve3nea.morse_expert.MainActivity import java.util.Locale import kotlin.time.Duration.Companion.milliseconds @@ -143,10 +134,8 @@ fun CalculatorPage( transceivers: List, selectedUuid: String?, orbitalPos: OrbitalPos?, - cw: CwSubState, calculatorOffsetKHz: String = "", onAction: (RadarAction) -> Unit, - requestMicPermission: () -> Unit = {}, modifier: Modifier = Modifier ) { val calculatorTransceivers = remember(transceivers) { @@ -201,17 +190,6 @@ fun CalculatorPage( modifier = Modifier.fillMaxWidth() ) - HorizontalDivider( - thickness = 1.dp, - color = MaterialTheme.colorScheme.outline.copy(alpha = 0.3f) - ) - - CwDecoderPanel( - cw = cw, - onAction = onAction, - requestMicPermission = requestMicPermission, - modifier = Modifier.fillMaxWidth() - ) } } @@ -903,130 +881,6 @@ private fun DopplerFrequencyCalculator( } } -@Composable -private fun CwDecoderPanel( - cw: CwSubState, - onAction: (RadarAction) -> Unit, - requestMicPermission: () -> Unit = {}, - modifier: Modifier = Modifier -) { - Column( - modifier = modifier, - verticalArrangement = Arrangement.spacedBy(4.dp) - ) { - // Header row: expand/collapse toggle - Row( - modifier = Modifier - .fillMaxWidth() - .clickable { onAction(RadarAction.CwToggleExpanded(!cw.isExpanded)) }, - horizontalArrangement = Arrangement.SpaceBetween, - verticalAlignment = Alignment.CenterVertically - ) { - Text( - text = stringResource(R.string.radar_cw_decoder), - fontSize = 14.sp, - fontWeight = FontWeight.Medium, - color = MaterialTheme.colorScheme.primary - ) - Icon( - painter = painterResource(id = R.drawable.ic_arrow), - contentDescription = null, - tint = MaterialTheme.colorScheme.onSurfaceVariant, - modifier = Modifier - .size(20.dp) - .rotate(if (cw.isExpanded) 270f else 90f) - ) - } - - AnimatedVisibility(visible = cw.isExpanded) { - // PR #1 Morse Expert engine: mini layout with waterfall + decoded text. - // Keep the old Kotlin decoder state/actions as fallback code, but this panel no longer feeds it. - val context = LocalContext.current - val activity = remember(context) { - context as? Activity ?: error("CwDecoderPanel must be hosted in an Activity") - } - val controller = remember { MainActivity() } - val rootView = remember(context) { - LayoutInflater.from(context).inflate(CwR.layout.activity_main, null) as ConstraintLayout - } - var initialized by remember { mutableStateOf(false) } - var listening by remember { mutableStateOf(false) } - - // 重要: 不在展开时初始化控制器(避免"一展开就崩溃")。 - // controller.onCreate/onResume/onPermissionGranted 全部推迟到用户点 Start 才执行。 - fun startDecoding() { - if (!initialized) { - controller.onCreate(activity, rootView) - controller.onPermissionGranted() - controller.onResume() - initialized = true - } else { - controller.onResume() - } - listening = true - } - - DisposableEffect(Unit) { - onDispose { - if (initialized) { - controller.onPause() - controller.onDestroy() - } - } - } - - Column(verticalArrangement = Arrangement.spacedBy(8.dp)) { - Row( - horizontalArrangement = Arrangement.spacedBy(8.dp), - modifier = Modifier.fillMaxWidth() - ) { - if (!listening) { - Button( - onClick = { - if (!cw.hasPermission) { - requestMicPermission() - } else { - startDecoding() - } - }, - modifier = Modifier.weight(1f) - ) { - Text(stringResource(R.string.radar_cw_start)) - } - } else { - Button( - onClick = { - controller.onPause() - listening = false - }, - modifier = Modifier.weight(1f) - ) { - Text(stringResource(R.string.radar_cw_stop)) - } - } - OutlinedButton( - onClick = { if (initialized) controller.clearDecoded() }, - modifier = Modifier.weight(1f) - ) { - Text(stringResource(R.string.radar_cw_reset)) - } - } - - Box( - modifier = Modifier - .fillMaxWidth() - .height(150.dp) - ) { - AndroidView( - factory = { rootView }, - modifier = Modifier.fillMaxSize() - ) - } - } - } - } -} - @Composable private fun FrequencyText(frequency: Long?, modifier: Modifier = Modifier) { val text = frequency?.let { diff --git a/settings.gradle.kts b/settings.gradle.kts index 3bae83c4..13073afd 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -21,7 +21,6 @@ include( ":core:presentation" ) include( - ":feature:cw", ":feature:map", ":feature:mutual", ":feature:passes",

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%0A^tr24QU1| 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 diff --git a/feature/cw/src/main/res/drawable/ic_baseline_delete_24.xml b/feature/cw/src/main/res/drawable/ic_baseline_delete_24.xml deleted file mode 100644 index f5023823..00000000 --- a/feature/cw/src/main/res/drawable/ic_baseline_delete_24.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - diff --git a/feature/cw/src/main/res/drawable/ic_baseline_pause_24.xml b/feature/cw/src/main/res/drawable/ic_baseline_pause_24.xml deleted file mode 100644 index b9174383..00000000 --- a/feature/cw/src/main/res/drawable/ic_baseline_pause_24.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - diff --git a/feature/cw/src/main/res/drawable/ic_baseline_save_24.xml b/feature/cw/src/main/res/drawable/ic_baseline_save_24.xml deleted file mode 100644 index fe7ba8b0..00000000 --- a/feature/cw/src/main/res/drawable/ic_baseline_save_24.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - diff --git a/feature/cw/src/main/res/drawable/ic_baseline_share_24.xml b/feature/cw/src/main/res/drawable/ic_baseline_share_24.xml deleted file mode 100644 index a2437117..00000000 --- a/feature/cw/src/main/res/drawable/ic_baseline_share_24.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - diff --git a/feature/cw/src/main/res/layout/activity_main.xml b/feature/cw/src/main/res/layout/activity_main.xml deleted file mode 100644 index ef7099b0..00000000 --- a/feature/cw/src/main/res/layout/activity_main.xml +++ /dev/null @@ -1,55 +0,0 @@ - - - - - - - - - - - diff --git a/feature/cw/src/main/res/layout/cw_panel_main.xml b/feature/cw/src/main/res/layout/cw_panel_main.xml deleted file mode 100644 index bc647b7d..00000000 --- a/feature/cw/src/main/res/layout/cw_panel_main.xml +++ /dev/null @@ -1,59 +0,0 @@ - - - - - - - - - - - diff --git a/feature/cw/src/main/res/menu/options_menu.xml b/feature/cw/src/main/res/menu/options_menu.xml deleted file mode 100644 index 6c762008..00000000 --- a/feature/cw/src/main/res/menu/options_menu.xml +++ /dev/null @@ -1,33 +0,0 @@ - -