diff --git a/.vscode/launch.json b/.vscode/launch.json index cca9a15b..4bf8ef85 100755 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -8,7 +8,7 @@ "name": "Flutter debug", "type": "dart", "request": "launch", - "program": "lib/main.dart", + "program": "lib/wave_data/wave_data.dart", "flutterMode": "debug", "cwd": "${workspaceFolder}/example" }, diff --git a/.vscode/tasks.json b/.vscode/tasks.json index aab96a56..f3bc2397 100755 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -3,13 +3,13 @@ "tasks": [ { "label": "compile linux debug verbose", - "command": "cd ${workspaceFolder}/example; flutter build linux -t lib/filters/pitchshift.dart --debug --verbose", + "command": "cd ${workspaceFolder}/example; flutter build linux -t lib/main.dart --debug --verbose", // "args": ["build", "linux", "--verbose"], "type": "shell" }, { "label": "compile linux debug", - "command": "cd ${workspaceFolder}/example; flutter build linux -t lib/main.dart --debug", + "command": "cd ${workspaceFolder}/example; flutter build linux -t lib/wave_data/wave_data.dart --debug", "type": "shell" }, { @@ -29,7 +29,7 @@ }, { "label": "compile web debug", - "command": "cd ${workspaceFolder}/example; flutter run -d chrome --web-renderer canvaskit --web-browser-flag '--disable-web-security' -t lib/main.dart --release", + "command": "cd ${workspaceFolder}/example; flutter run -d chrome --web-renderer canvaskit --web-browser-flag '--disable-web-security' -t lib/wave_data/wave_data.dart --release", "type": "shell" } ] diff --git a/CHANGELOG.md b/CHANGELOG.md index 189cbd3d..86eb30b4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ +### 2.1.5 (11 Oct 2024) +- added `readSamplesFrom*()` methods to read N audio data within a time range from a file or memory #75. Example in `example/lib/wave_data/wave_data.dart`. + ### 2.1.4 (18 Sep 2024) - fixed waveform generation which somehow oscillate frequencies after some time #129. - fixed iOS compilation by rising minimum iOS version to 13 #128. @@ -13,7 +16,7 @@ - bug fix when loading multiple audio files asynchronously. ### 2.1.1 (28 Aug 2024) -- added `bool isActive` and `int iindex` getters to filters. +- added `bool isActive` and `int index` getters to filters. - added a `timeStretch()` method to single pitchshift filter. - fixed building error on Windows. - updated examples. diff --git a/android/CMakeLists.txt b/android/CMakeLists.txt index 8490c2bd..61842f27 100644 --- a/android/CMakeLists.txt +++ b/android/CMakeLists.txt @@ -39,6 +39,7 @@ list(APPEND PLUGIN_SOURCES "${SRC_DIR}/player.cpp" "${SRC_DIR}/analyzer.cpp" "${SRC_DIR}/synth/basic_wave.cpp" + "${SRC_DIR}/waveform/waveform.cpp" "${SRC_DIR}/filters/filters.cpp" "${SRC_DIR}/filters/pitch_shift_filter.cpp" "${SRC_DIR}/filters/smbPitchShift.cpp" diff --git a/example/lib/wave_data/wave_data.dart b/example/lib/wave_data/wave_data.dart new file mode 100644 index 00000000..0c12cdfb --- /dev/null +++ b/example/lib/wave_data/wave_data.dart @@ -0,0 +1,176 @@ +import 'dart:developer' as dev; +import 'dart:io'; + +import 'package:file_picker/file_picker.dart'; +import 'package:flutter/foundation.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_soloud/flutter_soloud.dart'; +import 'package:logging/logging.dart'; + +void main() async { + // The `flutter_soloud` package logs everything + // (from severe warnings to fine debug messages) + // using the standard `package:logging`. + // You can listen to the logs as shown below. + Logger.root.level = kDebugMode ? Level.FINE : Level.INFO; + Logger.root.onRecord.listen((record) { + dev.log( + record.message, + time: record.time, + level: record.level.value, + name: record.loggerName, + zone: record.zone, + error: record.error, + stackTrace: record.stackTrace, + ); + }); + + WidgetsFlutterBinding.ensureInitialized(); + + /// Initialize the player. + await SoLoud.instance.init(); + + runApp( + const MaterialApp( + home: HelloFlutterSoLoud(), + ), + ); +} + +/// Simple usecase of flutter_soloud plugin +class HelloFlutterSoLoud extends StatefulWidget { + const HelloFlutterSoLoud({super.key}); + + @override + State createState() => _HelloFlutterSoLoudState(); +} + +class _HelloFlutterSoLoudState extends State { + List? paths; + AudioSource? currentSound; + Float32List? data; + bool average = false; + + @override + void dispose() { + SoLoud.instance.deinit(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + if (!SoLoud.instance.isInitialized) return const SizedBox.shrink(); + + final width = MediaQuery.sizeOf(context).width.toInt(); + return Scaffold( + body: Center( + child: Column( + children: [ + const SizedBox(height: 16), + const Text( + 'Read N audio samples (here N = width) from audio file.', + ), + OutlinedButton( + onPressed: () async { + paths = (await FilePicker.platform.pickFiles( + type: FileType.custom, + allowedExtensions: ['mp3', 'wav', 'flac'], + onFileLoading: print, + dialogTitle: 'Pick audio file', + )) + ?.files; + + await _loadPath(width); + if (context.mounted) setState(() {}); + }, + child: const Text('pickFile'), + ), + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const Text('Average samples '), + Switch( + value: average, + onChanged: (value) async { + average = value; + await _loadPath(width); + if (context.mounted) setState(() {}); + }, + ), + ], + ), + if (data != null) + Expanded( + child: Container( + color: Colors.black, + width: width.toDouble(), + child: RepaintBoundary( + child: ClipRRect( + child: CustomPaint( + key: UniqueKey(), + painter: WavePainter( + data: data!, + ), + ), + ), + ), + ), + ), + ], + ), + ), + ); + } + + Future _loadPath(int width) async { + if (paths != null) { + if (kIsWeb) { + // on web we can't read the bytes from the file. + data = await SoLoud.instance.readSamplesFromMem( + paths!.first.bytes!, + width * 4, + average: average, + ); + } else { + final f = File(paths!.first.path!); + final bytes = f.readAsBytesSync(); + data = await SoLoud.instance.readSamplesFromMem( + bytes, + width * 4, + average: average, + ); + } + } + } +} + +/// Custom painter to draw the wave data. +class WavePainter extends CustomPainter { + const WavePainter({ + required this.data, + }); + + final Float32List data; + + @override + void paint(Canvas canvas, Size size) { + final barWidth = size.width / data.length; + final paint = Paint() + ..color = Colors.yellowAccent + ..strokeWidth = barWidth; + + for (var i = 0; i < data.length; i++) { + final barHeight = size.height * data[i] * 2; + canvas.drawLine( + Offset(barWidth * i, (size.height - barHeight) / 2), + Offset(barWidth * i, (size.height + barHeight) / 2), + paint, + ); + } + } + + @override + bool shouldRepaint(WavePainter oldDelegate) { + return true; + } +} diff --git a/example/pubspec.lock b/example/pubspec.lock index c6e64a02..e9163cf1 100644 --- a/example/pubspec.lock +++ b/example/pubspec.lock @@ -100,7 +100,7 @@ packages: path: ".." relative: true source: path - version: "2.1.3" + version: "2.1.5" flutter_test: dependency: "direct dev" description: flutter diff --git a/lib/src/bindings/audio_data.dart b/lib/src/bindings/audio_data.dart index e56510ed..ac730749 100644 --- a/lib/src/bindings/audio_data.dart +++ b/lib/src/bindings/audio_data.dart @@ -3,6 +3,7 @@ import 'package:flutter_soloud/src/bindings/audio_data_ffi.dart' if (dart.library.js_interop) 'audio_data_web.dart'; import 'package:flutter_soloud/src/bindings/soloud_controller.dart'; import 'package:flutter_soloud/src/exceptions/exceptions.dart'; +import 'package:flutter_soloud/src/soloud.dart'; import 'package:meta/meta.dart'; /// The way the audio data should be acquired. @@ -89,9 +90,7 @@ enum GetSamplesKind { /// } /// ``` /// -/// To smooth FFT values use [SoLoud.instance.setFftSmoothing]. -/// -// TODO(all): make AudioData singleton? +/// To smooth FFT values use [SoLoud.setFftSmoothing]. @experimental class AudioData { /// Initialize the way the audio data should be acquired. diff --git a/lib/src/bindings/bindings_player.dart b/lib/src/bindings/bindings_player.dart index 4c1fe69f..44b54255 100644 --- a/lib/src/bindings/bindings_player.dart +++ b/lib/src/bindings/bindings_player.dart @@ -847,6 +847,30 @@ abstract class FlutterSoLoud { /// You can change the doppler factor of a live 3d audio source. @mustBeOverridden void set3dSourceDopplerFactor(SoundHandle handle, double dopplerFactor); + + // /////////////////////////////////////// + // waveform audio data + // /////////////////////////////////////// + + /// See SoLoud.readSamplesFromFile for details. + @mustBeOverridden + Float32List readSamplesFromFile( + String completeFileName, + int numSamplesNeeded, { + double startTime = 0, + double endTime = -1, + bool average = false, + }); + + /// See SoLoud.readSamplesFromMem for details. + @mustBeOverridden + Float32List readSamplesFromMem( + Uint8List buffer, + int numSamplesNeeded, { + double startTime = 0, + double endTime = -1, + bool average = false, + }); } /// Used for easier conversion from [double] to [Duration]. diff --git a/lib/src/bindings/bindings_player_ffi.dart b/lib/src/bindings/bindings_player_ffi.dart index aa9ba084..5a6e79c4 100644 --- a/lib/src/bindings/bindings_player_ffi.dart +++ b/lib/src/bindings/bindings_player_ffi.dart @@ -11,6 +11,7 @@ import 'package:ffi/ffi.dart'; import 'package:flutter_soloud/src/bindings/audio_data.dart'; import 'package:flutter_soloud/src/bindings/bindings_player.dart'; import 'package:flutter_soloud/src/enums.dart'; +import 'package:flutter_soloud/src/exceptions/exceptions.dart'; import 'package:flutter_soloud/src/filters/filters.dart'; import 'package:flutter_soloud/src/sound_handle.dart'; import 'package:flutter_soloud/src/sound_hash.dart'; @@ -1591,4 +1592,102 @@ class FlutterSoLoudFfi extends FlutterSoLoud { ); late final _set3dSourceDopplerFactor = _set3dSourceDopplerFactorPtr.asFunction(); + + // /////////////////////////////////////// + // waveform audio data + // /////////////////////////////////////// + @override + Float32List readSamplesFromFile( + String completeFileName, + int numSamplesNeeded, { + double startTime = 0, + double endTime = -1, + bool average = false, + }) { + final pSamples = + calloc(numSamplesNeeded * ffi.sizeOf()); + final error = _readSamplesFromFile( + completeFileName.toNativeUtf8(), + startTime, + endTime, + numSamplesNeeded, + average, + pSamples, + ); + final samples = pSamples.asTypedList(numSamplesNeeded).asUnmodifiableView(); + + /// Seems freeing this pointer is not needed because "samples" gets + /// undefined after using "free"!? It will be GC-ed. + // calloc.free(pSamples); + if (ReadSamplesErrors.fromValue(error) != + ReadSamplesErrors.readSamplesNoError) { + throw SoLoudCppException.fromReadSampleError( + ReadSamplesErrors.fromValue(error)); + } + return samples; + } + + late final _readSamplesFromFilePtr = _lookup< + ffi.NativeFunction< + ffi.UnsignedInt Function( + ffi.Pointer, + ffi.Float, + ffi.Float, + ffi.UnsignedLong, + ffi.Bool, + ffi.Pointer)>>('readSamplesFromFile'); + late final _readSamplesFromFile = _readSamplesFromFilePtr.asFunction< + int Function(ffi.Pointer, double, double, int, bool, + ffi.Pointer)>(); + + @override + Float32List readSamplesFromMem( + Uint8List buffer, + int numSamplesNeeded, { + double startTime = 0, + double endTime = -1, + bool average = false, + }) { + final pSamples = + calloc(numSamplesNeeded * ffi.sizeOf()); + // ignore: omit_local_variable_types + final ffi.Pointer bufferPtr = calloc(buffer.length); + for (var i = 0; i < buffer.length; i++) { + bufferPtr[i] = buffer[i]; + } + final error = _readSamplesFromMem( + bufferPtr, + buffer.length, + startTime, + endTime, + numSamplesNeeded, + average, + pSamples, + ); + final samples = pSamples.asTypedList(numSamplesNeeded).asUnmodifiableView(); + + /// Seems freeing this pointer is not needed because "samples" gets + /// undefined after using "free"!? It will be GC-ed. + // calloc.free(pSamples); + if (ReadSamplesErrors.fromValue(error) != + ReadSamplesErrors.readSamplesNoError) { + throw SoLoudCppException.fromReadSampleError( + ReadSamplesErrors.fromValue(error)); + } + return samples; + } + + late final _readSamplesFromMemPtr = _lookup< + ffi.NativeFunction< + ffi.UnsignedInt Function( + ffi.Pointer, + ffi.UnsignedLong, + ffi.Float, + ffi.Float, + ffi.UnsignedLong, + ffi.Bool, + ffi.Pointer)>>('readSamplesFromMem'); + late final _readSamplesFromMem = _readSamplesFromMemPtr.asFunction< + int Function(ffi.Pointer, int, double, double, int, bool, + ffi.Pointer)>(); } diff --git a/lib/src/bindings/bindings_player_web.dart b/lib/src/bindings/bindings_player_web.dart index 2efabb71..bbae45b0 100644 --- a/lib/src/bindings/bindings_player_web.dart +++ b/lib/src/bindings/bindings_player_web.dart @@ -5,6 +5,7 @@ import 'package:flutter_soloud/src/bindings/audio_data.dart'; import 'package:flutter_soloud/src/bindings/bindings_player.dart'; import 'package:flutter_soloud/src/bindings/js_extension.dart'; import 'package:flutter_soloud/src/enums.dart'; +import 'package:flutter_soloud/src/exceptions/exceptions.dart'; import 'package:flutter_soloud/src/filters/filters.dart'; import 'package:flutter_soloud/src/sound_handle.dart'; import 'package:flutter_soloud/src/sound_hash.dart'; @@ -856,4 +857,57 @@ class FlutterSoLoudWeb extends FlutterSoLoud { void set3dSourceDopplerFactor(SoundHandle handle, double dopplerFactor) { return wasmSet3dSourceDopplerFactor(handle.id, dopplerFactor); } + + // /////////////////////////////////////// + // waveform audio data + // /////////////////////////////////////// + @override + Float32List readSamplesFromFile( + String completeFileName, + int numSamplesNeeded, { + double startTime = 0, + double endTime = -1, + bool average = false, + }) { + throw UnimplementedError('[readSamplesFromFile] in not supported on the ' + 'web platfom! Please use [readSamplesFromMem].'); + } + + @override + Float32List readSamplesFromMem( + Uint8List buffer, + int numSamplesNeeded, { + double startTime = 0, + double endTime = -1, + bool average = false, + }) { + final bufferPtr = wasmMalloc(buffer.length); + // Is there a way to speed up this array copy? + for (var i = 0; i < buffer.length; i++) { + wasmSetValue(bufferPtr + i, buffer[i], 'i8'); + } + final samplesPtr = wasmMalloc(numSamplesNeeded * 4); + final error = wasmReadSamplesFromMem( + bufferPtr, + buffer.length, + startTime, + endTime, + numSamplesNeeded, + average, + samplesPtr, + ); + final samples = Float32List(numSamplesNeeded); + for (var i = 0; i < numSamplesNeeded; i++) { + samples[i] = wasmGetF32Value(samplesPtr + i * 4, 'float'); + } + wasmFree(samplesPtr); + wasmFree(bufferPtr); + if (ReadSamplesErrors.fromValue(error) != + ReadSamplesErrors.readSamplesNoError) { + throw SoLoudCppException.fromReadSampleError( + ReadSamplesErrors.fromValue(error), + ); + } + return samples; + } } diff --git a/lib/src/bindings/js_extension.dart b/lib/src/bindings/js_extension.dart index 82515c2a..6c47d5db 100644 --- a/lib/src/bindings/js_extension.dart +++ b/lib/src/bindings/js_extension.dart @@ -439,3 +439,15 @@ external void wasmSet3dSourceAttenuation( @JS('Module._set3dSourceDopplerFactor') external void wasmSet3dSourceDopplerFactor(int handle, double dopplerFactor); + +@JS('Module._readSamplesFromMem') +external int wasmReadSamplesFromMem( + int bufferPtr, + int bufferLength, + double startTime, + double endTime, + int numSamplesNeeded, + // ignore: avoid_positional_boolean_parameters + bool average, + int pSamplesPtr, +); diff --git a/lib/src/enums.dart b/lib/src/enums.dart index 92a1b22b..85525c39 100644 --- a/lib/src/enums.dart +++ b/lib/src/enums.dart @@ -124,6 +124,61 @@ enum PlayerErrors { String toString() => 'PlayerErrors.$name ($_asSentence)'; } +/// Possible read samples errors. +enum ReadSamplesErrors { + /// No error + readSamplesNoError(0), + + /// Initialization failed. Probably an unsupported format. + noBackend(1), + + /// Failed to retrieve decoder data format. + failedToGetDataFormat(2), + + /// Failed to seek audio data. + failedToSeekPcm(3), + + /// Failed to read PCM frames. + failedToReadPcmFrames(4); + + /// The integer value of the error. This is the same number that is returned + /// from the C++ API. + final int value; + + /// Constructs a valid error with [value]. + // ignore: sort_constructors_first + const ReadSamplesErrors(this.value); + + /// Returns a [ReadSamplesErrors] from a [value]. + static ReadSamplesErrors fromValue(int value) => switch (value) { + 0 => readSamplesNoError, + 1 => noBackend, + 2 => failedToGetDataFormat, + 3 => failedToSeekPcm, + 4 => failedToReadPcmFrames, + _ => throw ArgumentError('Unknown value for ReadSamplesErrors: $value'), + }; + + /// Returns a human-friendly sentence describing the error. + String get _asSentence { + switch (this) { + case ReadSamplesErrors.readSamplesNoError: + return 'No error'; + case ReadSamplesErrors.noBackend: + return 'Initialization failed. Probably an unsupported format.'; + case ReadSamplesErrors.failedToGetDataFormat: + return 'Failed to retrieve decoder data format.'; + case ReadSamplesErrors.failedToSeekPcm: + return 'Failed to seek audio data.'; + case ReadSamplesErrors.failedToReadPcmFrames: + return 'Failed to read PCM frames.'; + } + } + + @override + String toString() => 'PlayerErrors.$name ($_asSentence)'; +} + /// The types of waveforms. enum WaveForm { /// Raw, harsh square wave. diff --git a/lib/src/exceptions/exceptions.dart b/lib/src/exceptions/exceptions.dart index 295704df..c25db5c3 100644 --- a/lib/src/exceptions/exceptions.dart +++ b/lib/src/exceptions/exceptions.dart @@ -106,4 +106,29 @@ abstract class SoLoudCppException extends SoLoudException { return const SoLoudFilterParameterGetErrorCppException(); } } + + /// Takes a [ReadSamplesErrors] enum value and returns a corresponding + /// exception. + /// This is useful when we need to convert a C++ error to a Dart exception. + /// + /// If [error] is [ReadSamplesErrors.readSamplesNoError], this constructor + /// throws an [ArgumentError]. + factory SoLoudCppException.fromReadSampleError(ReadSamplesErrors error) { + switch (error) { + case ReadSamplesErrors.readSamplesNoError: + throw ArgumentError( + 'Trying to create an exception from ReadSamplesErrors.noError. ' + 'This is a bug in the library. Please report it.', + 'error', + ); + case ReadSamplesErrors.noBackend: + return const SoLoudReadSamplesNoBackendCppException(); + case ReadSamplesErrors.failedToGetDataFormat: + return const SoLoudReadSamplesFailedToGetDataFormatCppException(); + case ReadSamplesErrors.failedToSeekPcm: + return const SoLoudReadSamplesFailedToSeekPcmCppException(); + case ReadSamplesErrors.failedToReadPcmFrames: + return const SoLoudReadSamplesFailedToReadPcmFramesCppException(); + } + } } diff --git a/lib/src/exceptions/exceptions_from_cpp.dart b/lib/src/exceptions/exceptions_from_cpp.dart index e821b14f..1581a9e0 100644 --- a/lib/src/exceptions/exceptions_from_cpp.dart +++ b/lib/src/exceptions/exceptions_from_cpp.dart @@ -176,7 +176,7 @@ class SoLoudSoundHandleNotFoundCppException extends SoLoudCppException { '(on the C++ side).'; } -/// An error occurred while getting a filter parameter +/// An error occurred while getting a filter parameter. class SoLoudFilterParameterGetErrorCppException extends SoLoudCppException { /// Creates a new [SoLoudFilterParameterGetErrorCppException]. const SoLoudFilterParameterGetErrorCppException([super.message]); @@ -187,3 +187,47 @@ class SoLoudFilterParameterGetErrorCppException extends SoLoudCppException { 'range and then trying to get it ' '(on the C++ side).'; } + +/// An error occurred while initializing the backend to read samples. +class SoLoudReadSamplesNoBackendCppException extends SoLoudCppException { + /// Creates a new [SoLoudReadSamplesNoBackendCppException]. + const SoLoudReadSamplesNoBackendCppException([super.message]); + + @override + String get description => 'An error occurred while initializing the ' + 'backend to read samples. Probably for an unsupported or broken format. ' + '(on the C++ side).'; +} + +/// An error occurred while reading the decoder data format. +class SoLoudReadSamplesFailedToGetDataFormatCppException + extends SoLoudCppException { + /// Creates a new [SoLoudReadSamplesFailedToGetDataFormatCppException]. + const SoLoudReadSamplesFailedToGetDataFormatCppException([super.message]); + + @override + String get description => 'An error occurred while reading the decoder ' + 'data format. Probably for an unsupported or broken format.' + ' (on the C++ side).'; +} + +/// An error occurred when seeking audio data. +class SoLoudReadSamplesFailedToSeekPcmCppException extends SoLoudCppException { + /// Creates a new [SoLoudReadSamplesFailedToSeekPcmCppException]. + const SoLoudReadSamplesFailedToSeekPcmCppException([super.message]); + + @override + String get description => 'An error occurred while seeking audio data. ' + '(on the C++ side).'; +} + +/// An error occurred when reading PCM frames. +class SoLoudReadSamplesFailedToReadPcmFramesCppException + extends SoLoudCppException { + /// Creates a new [SoLoudReadSamplesFailedToReadPcmFramesCppException]. + const SoLoudReadSamplesFailedToReadPcmFramesCppException([super.message]); + + @override + String get description => 'An error occurred while reading PCM frames. ' + '(on the C++ side).'; +} diff --git a/lib/src/soloud.dart b/lib/src/soloud.dart index 5cd197fa..ba8e0a8f 100644 --- a/lib/src/soloud.dart +++ b/lib/src/soloud.dart @@ -36,6 +36,28 @@ void _loadFile(Map args) { ); } +@pragma('vm:entry-point') +Float32List _readSamplesFromFile(Map args) { + return SoLoudController().soLoudFFI.readSamplesFromFile( + args['completeFileName'] as String, + args['numSamplesNeeded'] as int, + startTime: args['startTime'] as double, + endTime: args['endTime'] as double, + average: args['average'] as bool, + ); +} + +@pragma('vm:entry-point') +Float32List _readSamplesFromMem(Map args) { + return SoLoudController().soLoudFFI.readSamplesFromMem( + args['buffer'] as Uint8List, + args['numSamplesNeeded'] as int, + startTime: args['startTime'] as double, + endTime: args['endTime'] as double, + average: args['average'] as bool, + ); +} + /// The main class to call all the audio methods that play sounds. /// /// This class has a singleton [instance] which represents the (also singleton) @@ -465,6 +487,7 @@ interface class SoLoud { /// Load a new sound to be played once or multiple times later, from /// the file system. + /// NOTE: this is not available on Web. Use [loadMem] instead. /// /// Provide the complete [path] of the file to be played. /// @@ -1407,7 +1430,7 @@ interface class SoLoud { /// will be decreased with an amplitude between the old and the new value. /// This will resul on a less shaky visualization. /// - /// [smooth] must be in the [0.0 ~ 1.0] range. + /// [smooth] must be in the 0.0 ~ 1.0 range. /// 0 = no smooth /// 1 = full smooth /// the new value is calculated with: @@ -2049,6 +2072,137 @@ interface class SoLoud { _controller.soLoudFFI.set3dSourceDopplerFactor(handle, dopplerFactor); } + // /////////////////////////////////////// + // waveform audio data + // /////////////////////////////////////// + + /// Read [numSamplesNeeded] audio data from a file equally spaced in time. + /// The returned Float32List is not guaranteed to be [numSamplesNeeded] long. + /// Each value in the returned Float32List is in the range -1.0 to 1.0 (but + /// not guaranteed). Their values are the average of audio data from the + /// previous index sample if [average] is true. + /// NOTE: this is not available on Web. Use [readSamplesFromMem] instead. + /// + /// [completeFileName] the complete path to the audio file. + /// [numSamplesNeeded] is not guaranteed to be the same length as the returned + /// Float32List. This could happen if the [endTime] is greater than the audio + /// lenght. + /// [startTime] in seconds. Defaults to 0. + /// [endTime] in seconds. Defaults to -1. If -1, the audio will be read until + /// the end of the file. + /// [average] if true, the returned Float32List will be filled with the + /// average of the samples from the previous index sample. Defaults to false. + /// When true it does not affect performance much. + /// + /// Here a representation of the range [startTime] to [endTime] in the audio + /// with [numSamplesNeeded]=10: + /// + /// 0 1 2 3 4 5 6 7 8 9 + /// |------|------|------|------|------|------|------|------|------| + /// ------- with [average]=true all the samples are the + /// average of the samples from 2 to 3 and it is + /// stored in the returned Float32List at index 3. + /// - with [average]=false the value returned at index + /// 3 is the value got at 3. + /// + /// Throws [SoLoudReadSamplesNoBackendCppException] if an error occurred + /// while initializing the backend to read samples. + /// Throws [SoLoudReadSamplesFailedToGetDataFormatCppException] if an error + /// occurred while reading the decoder data format. + /// Throws [SoLoudReadSamplesFailedToSeekPcmCppException] if an error + /// occurred when seeking audio data. + /// Throws [SoLoudReadSamplesFailedToReadPcmFramesCppException] if an error + /// occurred when reading PCM frames. + /// + /// See also [readSamplesFromMem]. + @experimental + Future readSamplesFromFile( + String completeFileName, + int numSamplesNeeded, { + double startTime = 0, + double endTime = -1, + bool average = false, + }) async { + assert( + endTime == -1 || endTime > startTime, + '[endTime] must be greater than [startTime].', + ); + assert(startTime >= 0, '[startTime] must be greater than or equal to 0.'); + final samples = await compute(_readSamplesFromFile, { + 'completeFileName': completeFileName, + 'numSamplesNeeded': numSamplesNeeded, + 'startTime': startTime, + 'endTime': endTime, + 'average': average, + }); + + return samples; + } + + /// Read [numSamplesNeeded] audio data from a audio buffer equally spaced + /// in time. + /// The returned Float32List is not guaranteed to be [numSamplesNeeded] long. + /// Each value in the returned Float32List is in the range -1.0 to 1.0 (but + /// not guaranteed). Their values are the average of audio data from the + /// previous index sample if [average] is true. + /// NOTE: on Web this is synchronous and could freeze the UI. + /// + /// [buffer] the audio file buffer. + /// [numSamplesNeeded] is not guaranteed to be the same length as the returned + /// Float32List. This could happen if the [endTime] is greater than the audio + /// lenght. + /// [startTime] in seconds. Defaults to 0. + /// [endTime] in seconds. Defaults to -1. If -1, the audio will be read until + /// the end of the file. + /// [average] if true, the returned Float32List will be filled with the + /// average of the samples from the previous index sample. Defaults to false. + /// When true it does not affect performance much. + /// + /// Here a representation of the range [startTime] to [endTime] in the audio + /// with [numSamplesNeeded]=10: + /// + /// 0 1 2 3 4 5 6 7 8 9 + /// |------|------|------|------|------|------|------|------|------| + /// ------- with [average]=true all the samples are the + /// average of the samples from 2 to 3 and it is + /// stored in the returned Float32List at index 3. + /// - with [average]=false the value returned at index + /// 3 is the value got at 3. + /// + /// Throws [SoLoudReadSamplesNoBackendCppException] if an error occurred + /// while initializing the backend to read samples. + /// Throws [SoLoudReadSamplesFailedToGetDataFormatCppException] if an error + /// occurred while reading the decoder data format. + /// Throws [SoLoudReadSamplesFailedToSeekPcmCppException] if an error + /// occurred when seeking audio data. + /// Throws [SoLoudReadSamplesFailedToReadPcmFramesCppException] if an error + /// occurred when reading PCM frames. + /// + /// See also [readSamplesFromFile]. + @experimental + Future readSamplesFromMem( + Uint8List buffer, + int numSamplesNeeded, { + double startTime = 0, + double endTime = -1, + bool average = false, + }) async { + assert( + endTime == -1 || endTime > startTime, + '[endTime] must be greater than [startTime].', + ); + assert(startTime >= 0, '[startTime] must be greater than or equal to 0.'); + final samples = await compute(_readSamplesFromMem, { + 'buffer': buffer, + 'numSamplesNeeded': numSamplesNeeded, + 'startTime': startTime, + 'endTime': endTime, + 'average': average, + }); + + return samples; + } + /// Utility method that logs a [Level.SEVERE] message if [playerError] /// is anything other than [PlayerErrors.noError]. /// diff --git a/linux/CMakeLists.txt b/linux/CMakeLists.txt index a4e9581d..7ba9b4d5 100644 --- a/linux/CMakeLists.txt +++ b/linux/CMakeLists.txt @@ -39,6 +39,7 @@ list(APPEND PLUGIN_SOURCES "${SRC_DIR}/player.cpp" "${SRC_DIR}/analyzer.cpp" "${SRC_DIR}/synth/basic_wave.cpp" + "${SRC_DIR}/waveform/waveform.cpp" "${SRC_DIR}/filters/filters.cpp" "${SRC_DIR}/filters/pitch_shift_filter.cpp" "${SRC_DIR}/filters/smbPitchShift.cpp" diff --git a/pubspec.yaml b/pubspec.yaml index d7bd9003..aff1a9e7 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -3,7 +3,7 @@ description: >- A low-level audio plugin for Flutter, mainly meant for games and immersive apps. Based on the SoLoud (C++) audio engine. -version: 2.1.4 +version: 2.1.5 issue_tracker: https://github.com/alnitak/flutter_soloud/issues homepage: https://github.com/alnitak/flutter_soloud maintainer: Marco Bavagnoli (@lildeimos) @@ -40,7 +40,7 @@ dependencies: web: ^1.0.0 dev_dependencies: - ffigen: ^12.0.0 + ffigen: ^13.0.0 flutter_test: sdk: flutter test: ^1.24.9 diff --git a/src/bindings.cpp b/src/bindings.cpp index fcfdc6a7..a7997406 100644 --- a/src/bindings.cpp +++ b/src/bindings.cpp @@ -1,7 +1,7 @@ - #include "player.h" #include "analyzer.h" #include "synth/basic_wave.h" +#include "waveform/waveform.h" #ifndef COMMON_H #include "common.h" #endif @@ -1524,6 +1524,33 @@ extern "C" player.get()->update3dAudio(); } + ///////////////////////////////////////// + /// waveform audio data + ///////////////////////////////////////// + + FFI_PLUGIN_EXPORT enum ReadSamplesErrors readSamplesFromFile( + const char *filePath, + float startTime, + float endTime, + unsigned long numSamplesNeeded, + bool average, + float* pSamples) + { + return Waveform::readSamples(filePath, nullptr, 0, startTime, endTime, numSamplesNeeded, average, pSamples); + } + + FFI_PLUGIN_EXPORT enum ReadSamplesErrors readSamplesFromMem( + const unsigned char *buffer, + unsigned long dataSize, + float startTime, + float endTime, + unsigned long numSamplesNeeded, + bool average, + float* pSamples) + { + return Waveform::readSamples(nullptr, buffer, dataSize, startTime, endTime, numSamplesNeeded, average, pSamples); + } + #ifdef __cplusplus } #endif diff --git a/src/enums.h b/src/enums.h index 27458158..5f0ed88a 100644 --- a/src/enums.h +++ b/src/enums.h @@ -48,18 +48,20 @@ typedef enum PlayerErrors filterParameterGetError = 18 } PlayerErrors_t; -/// Possible capture errors -typedef enum CaptureErrors +/// Possible read sample errors +typedef enum ReadSamplesErrors { /// No error - capture_noError, - /// The capture device has failed to initialize. - capture_init_failed, - /// The capture device has not yet been initialized. - capture_not_inited, - /// Failed to start the device. - failed_to_start_device, -} CaptureErrors_t; + readSamplesNoError = 0, + /// Initialization failed. Probably an unsupported format. + noBackend, + /// Failed to retrieve decoder data format. + failedToGetDataFormat, + /// Failed to seek audio data. + failedToSeekPcm, + /// Failed to read PCM frames. + failedToReadPcmFrames +} ReadSamplesErrors_t; typedef enum PlayerStateEvents { diff --git a/src/ffi_gen_tmp.h b/src/ffi_gen_tmp.h index ef846776..13b7f733 100644 --- a/src/ffi_gen_tmp.h +++ b/src/ffi_gen_tmp.h @@ -6,19 +6,32 @@ // and run: // // flutter pub run ffigen --config ffigen.yaml -// to generate [flutter_soloud_FFIGEN.dart] +// to generate [flutter_soloud_FFIGEN.dart], or if it complains for some reason: +// export CPATH="$(clang -v 2>&1 | grep "Selected GCC installation" | rev | cut -d' ' -f1 | rev)/include"; dart run ffigen --config ffigen.yaml // // the generated code will be placed into flutter_soloud_FFIGEN.dart // copy the generated definition into flutter_soloud_bindings_ffi.dart #include "enums.h" +#include #define FFI_PLUGIN_EXPORT //--------------------- copy here the new functions to generate -FFI_PLUGIN_EXPORT enum PlayerErrors getFilterParams( - unsigned int handle, - enum FilterType filterType, - int attributeId, - float *filterValue); +FFI_PLUGIN_EXPORT enum ReadSamplesErrors readSamplesFromFile( + const char *filePath, + float startTime, + float endTime, + unsigned long numSamplesNeeded, + bool average, + float *pSamples); + +FFI_PLUGIN_EXPORT enum ReadSamplesErrors readSamplesFromMem( + const unsigned char *buffer, + unsigned long dataSize, + float startTime, + float endTime, + unsigned long numSamplesNeeded, + bool average, + float *pSamples); diff --git a/src/flutter_soloud.cpp b/src/flutter_soloud.cpp index a68fae61..1f72e8cc 100755 --- a/src/flutter_soloud.cpp +++ b/src/flutter_soloud.cpp @@ -104,6 +104,7 @@ #include "player.cpp" #include "analyzer.cpp" #include "synth/basic_wave.cpp" +#include "waveform/waveform.cpp" #include "filters/filters.cpp" #include "filters/pitch_shift_filter.cpp" #include "filters/smbPitchShift.cpp" diff --git a/src/soloud/src/backend/miniaudio/soloud_miniaudio.cpp b/src/soloud/src/backend/miniaudio/soloud_miniaudio.cpp index 4a113648..38e3bfd4 100644 --- a/src/soloud/src/backend/miniaudio/soloud_miniaudio.cpp +++ b/src/soloud/src/backend/miniaudio/soloud_miniaudio.cpp @@ -38,15 +38,15 @@ namespace SoLoud #else #define MINIAUDIO_IMPLEMENTATION -// #define MA_NO_NULL -#define MA_NO_DECODING -#define MA_NO_WAV -#define MA_NO_FLAC -#define MA_NO_MP3 -#define MA_NO_AUTOINITIALIZATION -#define MA_NO_VORBIS -#define MA_NO_OPUS -#define MA_NO_MIDI +// // #define MA_NO_NULL +// #define MA_NO_DECODING +// #define MA_NO_WAV +// #define MA_NO_FLAC +// #define MA_NO_MP3 +// #define MA_NO_AUTOINITIALIZATION +// #define MA_NO_VORBIS +// #define MA_NO_OPUS +// #define MA_NO_MIDI // Seems that on miniaudio there is still an issue when uninitializing the device // addressed by this issue: https://github.com/mackron/miniaudio/issues/466 @@ -56,7 +56,6 @@ namespace SoLoud #define MA_NO_AAUDIO #endif // #define MA_DEBUG_OUTPUT -// #define MINIAUDIO_IMPLEMENTATION #include "miniaudio.h" #include diff --git a/src/waveform/waveform.cpp b/src/waveform/waveform.cpp new file mode 100644 index 00000000..a78cc16f --- /dev/null +++ b/src/waveform/waveform.cpp @@ -0,0 +1,131 @@ +#include "../soloud/src/backend/miniaudio/miniaudio.h" +#include "waveform.h" + +#include +#include +#include + +namespace Waveform +{ + ReadSamplesErrors readSamplesFromDecoder( + ma_decoder *decoder, + float startTime, + float endTime, + unsigned long numSamplesNeeded, + bool average, + float *pSamples) + { + ma_uint32 sampleRate = decoder->outputSampleRate; + ma_uint32 channels = decoder->outputChannels; + + // Calculate start and end frames based on startTime and endTime + ma_uint64 startFrame = (ma_uint64)(startTime * sampleRate); + ma_uint64 endFrame; + if (endTime == -1) + ma_decoder_get_length_in_pcm_frames(decoder, &endFrame); + else + endFrame = (ma_uint64)(endTime * sampleRate); + + ma_uint64 totalFrames = endFrame - startFrame; + ma_uint64 stepFrames = totalFrames / numSamplesNeeded; + + // Move decoder to start frame + ma_result result = ma_decoder_seek_to_pcm_frame(decoder, startFrame); + if (result != MA_SUCCESS) + { + printf("Failed to seek to start time.\n"); + ma_decoder_uninit(decoder); + return failedToSeekPcm; + } + + // Allocate temporary memory for all frames between startTime and endTime + float *tempBuffer = (float *)malloc(stepFrames * channels * sizeof(float)); + // Read all PCM data between startFrame and endFrame + int id = 0; + for (int i = 0; i < totalFrames; i += stepFrames, id++) + { + ma_uint64 framesRead; + result = ma_decoder_read_pcm_frames(decoder, tempBuffer, stepFrames, &framesRead); + if (result != MA_SUCCESS && result != MA_AT_END) + { + printf("Failed to read PCM frames.\n"); + ma_decoder_uninit(decoder); + if (result != MA_AT_END) + return failedToReadPcmFrames; + } + + if (framesRead == 0) + break; + // Inside [tempBuffer] there are now all the samples between the values ​​of a stepFrame + if (average) + { + double average = 0; + for (int j = 0; j < framesRead; j++) + { + average += fabsf(tempBuffer[j]); + } + pSamples[id] = sqrtf(average / ((float)framesRead / channels)); + } + else + pSamples[id] = tempBuffer[0]; + } + free(tempBuffer); + return readSamplesNoError; + } + + ReadSamplesErrors readSamples( + const char *filePath, + const unsigned char *buffer, + unsigned long dataSize, + float startTime, + float endTime, + unsigned long numSamplesNeeded, + bool average, + float *pSamples) + { + // Clear memory + memset(pSamples, 0, numSamplesNeeded * sizeof(float)); + + ma_decoder decoder; + ma_result result; + // Init the decoder with file or memory + if (filePath != NULL) + result = ma_decoder_init_file(filePath, NULL, &decoder); + else + result = ma_decoder_init_memory(buffer, dataSize, NULL, &decoder); + + if (result != MA_SUCCESS) + { + printf("Failed to initialize decoder.\n"); + return noBackend; + } + + ma_uint32 sampleRate; + ma_uint32 channels; + ma_format format; + // Get audio [sampleRate] and [channels] + result = ma_data_source_get_data_format(&decoder, &format, &channels, &sampleRate, NULL, 0); + if (result != MA_SUCCESS) + { + printf("Failed to retrieve decoder data format."); + ma_decoder_uninit(&decoder); + return failedToGetDataFormat; + } + // Re-init decoder forcing ma_format_f32 + ma_decoder_config config = ma_decoder_config_init(ma_format_f32, channels, sampleRate); + if (filePath != NULL) + result = ma_decoder_init_file(filePath, &config, &decoder); + else + result = ma_decoder_init_memory(buffer, dataSize, &config, &decoder); + + if (result != MA_SUCCESS) + { + printf("Failed to initialize decoder forcing f32.\n"); + return noBackend; + } + + ReadSamplesErrors ret = readSamplesFromDecoder(&decoder, startTime, endTime, numSamplesNeeded, average, pSamples); + ma_decoder_uninit(&decoder); + return ret; + } +}; \ No newline at end of file diff --git a/src/waveform/waveform.h b/src/waveform/waveform.h new file mode 100644 index 00000000..6c636271 --- /dev/null +++ b/src/waveform/waveform.h @@ -0,0 +1,18 @@ +#ifndef WAVEFORM_H +#define WAVEFORM_H + +#include "../enums.h" + +namespace Waveform { + ReadSamplesErrors readSamples( + const char *filePath, + const unsigned char *buffer, + unsigned long dataSize, + float startTime, + float endTime, + unsigned long numSamplesNeeded, + bool average, + float *pSamples); +} + +#endif // WAVEFORM_H \ No newline at end of file diff --git a/web/compile_wasm.sh b/web/compile_wasm.sh index 3581f4bb..f360dcb3 100755 --- a/web/compile_wasm.sh +++ b/web/compile_wasm.sh @@ -2,7 +2,7 @@ set -euo pipefail rm -f libflutter_soloud_plugin.* -rm -r build +rm -rf build mkdir build cd build @@ -25,11 +25,13 @@ cd build # -msimd128 for sse3 https://emscripten.org/docs/porting/simd.html # -std=c++17 -## Compiling with "-O2" or "-O3" doesn't work - em++ \ --I ../../src -I ../../src/filters -I ../../src/synth -I ../../src/soloud/include \ --I ../../src/soloud/src -I ../../src/soloud/include \ +-I ../../src/soloud/include \ +-I ../../src/soloud/src \ +-I ../../src/soloud/include \ +-I ../../src \ +-I ../../src/filters \ +-I ../../src/synth \ ../../src/soloud/src/core/*.c* \ ../../src/soloud/src/filter/*.c* \ ../../src/soloud/src/backend/miniaudio/*.c* \ @@ -42,6 +44,7 @@ em++ \ ../../src/analyzer.cpp \ ../../src/synth/basic_wave.cpp \ ../../src/filters/*.cpp \ +../../src/waveform/*.cpp \ -O3 -D WITH_MINIAUDIO \ -msimd128 -msse3 \ -s "EXPORTED_RUNTIME_METHODS=['ccall','cwrap']" \ diff --git a/web/libflutter_soloud_plugin.js b/web/libflutter_soloud_plugin.js index d9665dc3..fc5f1c74 100644 --- a/web/libflutter_soloud_plugin.js +++ b/web/libflutter_soloud_plugin.js @@ -1 +1 @@ -var Module=typeof Module!="undefined"?Module:{};var ENVIRONMENT_IS_WEB=typeof window=="object";var ENVIRONMENT_IS_WORKER=typeof importScripts=="function";var ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string";if(ENVIRONMENT_IS_NODE){}var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary;if(ENVIRONMENT_IS_NODE){var fs=require("fs");var nodePath=require("path");scriptDirectory=__dirname+"/";read_=(filename,binary)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);return fs.readFileSync(filename,binary?undefined:"utf8")};readBinary=filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}return ret};readAsync=(filename,onload,onerror,binary=true)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);fs.readFile(filename,binary?undefined:"utf8",(err,data)=>{if(err)onerror(err);else onload(binary?data.buffer:data)})};if(!Module["thisProgram"]&&process.argv.length>1){thisProgram=process.argv[1].replace(/\\/g,"/")}arguments_=process.argv.slice(2);if(typeof module!="undefined"){module["exports"]=Module}process.on("uncaughtException",ex=>{if(ex!=="unwind"&&!(ex instanceof ExitStatus)&&!(ex.context instanceof ExitStatus)){throw ex}});quit_=(status,toThrow)=>{process.exitCode=status;throw toThrow}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.startsWith("blob:")){scriptDirectory=""}else{scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}{read_=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=(url,onload,onerror)=>{if(isFileURI(url)){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null);return}fetch(url,{credentials:"same-origin"}).then(response=>{if(response.ok){return response.arrayBuffer()}return Promise.reject(new Error(response.status+" : "+response.url))}).then(onload,onerror)}}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.error.bind(console);Object.assign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];function getSafeHeapType(bytes,isFloat){switch(bytes){case 1:return"i8";case 2:return"i16";case 4:return isFloat?"float":"i32";case 8:return isFloat?"double":"i64";default:abort(`getSafeHeapType() invalid bytes=${bytes}`)}}function SAFE_HEAP_STORE(dest,value,bytes,isFloat){if(dest<=0)abort(`segmentation fault storing ${bytes} bytes to address ${dest}`);if(dest%bytes!==0)abort(`alignment error storing to address ${dest}, which was expected to be aligned to a multiple of ${bytes}`);if(runtimeInitialized){var brk=_sbrk(0);if(dest+bytes>brk)abort(`segmentation fault, exceeded the top of the available dynamic heap when storing ${bytes} bytes to address ${dest}. DYNAMICTOP=${brk}`);if(brk<_emscripten_stack_get_base())abort(`brk >= _emscripten_stack_get_base() (brk=${brk}, _emscripten_stack_get_base()=${_emscripten_stack_get_base()})`);if(brk>wasmMemory.buffer.byteLength)abort(`brk <= wasmMemory.buffer.byteLength (brk=${brk}, wasmMemory.buffer.byteLength=${wasmMemory.buffer.byteLength})`)}setValue_safe(dest,value,getSafeHeapType(bytes,isFloat));return value}function SAFE_HEAP_STORE_D(dest,value,bytes){return SAFE_HEAP_STORE(dest,value,bytes,true)}function SAFE_HEAP_LOAD(dest,bytes,unsigned,isFloat){if(dest<=0)abort(`segmentation fault loading ${bytes} bytes from address ${dest}`);if(dest%bytes!==0)abort(`alignment error loading from address ${dest}, which was expected to be aligned to a multiple of ${bytes}`);if(runtimeInitialized){var brk=_sbrk(0);if(dest+bytes>brk)abort(`segmentation fault, exceeded the top of the available dynamic heap when loading ${bytes} bytes from address ${dest}. DYNAMICTOP=${brk}`);if(brk<_emscripten_stack_get_base())abort(`brk >= _emscripten_stack_get_base() (brk=${brk}, _emscripten_stack_get_base()=${_emscripten_stack_get_base()})`);if(brk>wasmMemory.buffer.byteLength)abort(`brk <= wasmMemory.buffer.byteLength (brk=${brk}, wasmMemory.buffer.byteLength=${wasmMemory.buffer.byteLength})`)}var type=getSafeHeapType(bytes,isFloat);var ret=getValue_safe(dest,type);if(unsigned)ret=unSign(ret,parseInt(type.substr(1),10));return ret}function SAFE_HEAP_LOAD_D(dest,bytes,unsigned){return SAFE_HEAP_LOAD(dest,bytes,unsigned,true)}function segfault(){abort("segmentation fault")}function alignfault(){abort("alignment fault")}var wasmMemory;var ABORT=false;var EXITSTATUS;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateMemoryViews(){var b=wasmMemory.buffer;Module["HEAP8"]=HEAP8=new Int8Array(b);Module["HEAP16"]=HEAP16=new Int16Array(b);Module["HEAPU8"]=HEAPU8=new Uint8Array(b);Module["HEAPU16"]=HEAPU16=new Uint16Array(b);Module["HEAP32"]=HEAP32=new Int32Array(b);Module["HEAPU32"]=HEAPU32=new Uint32Array(b);Module["HEAPF32"]=HEAPF32=new Float32Array(b);Module["HEAPF64"]=HEAPF64=new Float64Array(b)}var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();FS.ignorePermissions=false;TTY.init();callRuntimeCallbacks(__ATINIT__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;Module["monitorRunDependencies"]?.(runDependencies)}function removeRunDependency(id){runDependencies--;Module["monitorRunDependencies"]?.(runDependencies);if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){Module["onAbort"]?.(what);what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);throw e}var dataURIPrefix="data:application/octet-stream;base64,";var isDataURI=filename=>filename.startsWith(dataURIPrefix);var isFileURI=filename=>filename.startsWith("file://");function findWasmBinary(){var f="libflutter_soloud_plugin.wasm";if(!isDataURI(f)){return locateFile(f)}return f}var wasmBinaryFile;function getBinarySync(file){if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw"both async and sync fetching of the wasm failed"}function getBinaryPromise(binaryFile){if(!wasmBinary){return new Promise((resolve,reject)=>{readAsync(binaryFile,response=>resolve(new Uint8Array(response)),error=>{try{resolve(getBinarySync(binaryFile))}catch(e){reject(e)}})})}return Promise.resolve().then(()=>getBinarySync(binaryFile))}function instantiateArrayBuffer(binaryFile,imports,receiver){return getBinaryPromise(binaryFile).then(binary=>WebAssembly.instantiate(binary,imports)).then(receiver,reason=>{err(`failed to asynchronously prepare wasm: ${reason}`);abort(reason)})}function instantiateAsync(binary,binaryFile,imports,callback){if(!binary&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(binaryFile)&&!isFileURI(binaryFile)&&!ENVIRONMENT_IS_NODE&&typeof fetch=="function"){return fetch(binaryFile,{credentials:"same-origin"}).then(response=>{var result=WebAssembly.instantiateStreaming(response,imports);return result.then(callback,function(reason){err(`wasm streaming compile failed: ${reason}`);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(binaryFile,imports,callback)})})}return instantiateArrayBuffer(binaryFile,imports,callback)}function getWasmImports(){return{a:wasmImports}}function createWasm(){var info=getWasmImports();function receiveInstance(instance,module){wasmExports=instance.exports;wasmMemory=wasmExports["q"];updateMemoryViews();addOnInit(wasmExports["r"]);removeRunDependency("wasm-instantiate");return wasmExports}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}if(Module["instantiateWasm"]){try{return Module["instantiateWasm"](info,receiveInstance)}catch(e){err(`Module.instantiateWasm callback failed with error: ${e}`);return false}}if(!wasmBinaryFile)wasmBinaryFile=findWasmBinary();instantiateAsync(wasmBinary,wasmBinaryFile,info,receiveInstantiationResult);return{}}var tempDouble;var tempI64;var ASM_CONSTS={71120:($0,$1,$2,$3,$4)=>{if(typeof window==="undefined"||(window.AudioContext||window.webkitAudioContext)===undefined){return 0}if(typeof window.miniaudio==="undefined"){window.miniaudio={referenceCount:0};window.miniaudio.device_type={};window.miniaudio.device_type.playback=$0;window.miniaudio.device_type.capture=$1;window.miniaudio.device_type.duplex=$2;window.miniaudio.device_state={};window.miniaudio.device_state.stopped=$3;window.miniaudio.device_state.started=$4;let miniaudio=window.miniaudio;miniaudio.devices=[];miniaudio.track_device=function(device){for(var iDevice=0;iDevice0){if(miniaudio.devices[miniaudio.devices.length-1]==null){miniaudio.devices.pop()}else{break}}};miniaudio.untrack_device=function(device){for(var iDevice=0;iDevice{_ma_device__on_notification_unlocked(device.pDevice)},error=>{console.error("Failed to resume audiocontext",error)})}}miniaudio.unlock_event_types.map(function(event_type){document.removeEventListener(event_type,miniaudio.unlock,true)})};miniaudio.unlock_event_types.map(function(event_type){document.addEventListener(event_type,miniaudio.unlock,true)})}window.miniaudio.referenceCount+=1;return 1},73298:()=>{if(typeof window.miniaudio!=="undefined"){miniaudio.unlock_event_types.map(function(event_type){document.removeEventListener(event_type,miniaudio.unlock,true)});window.miniaudio.referenceCount-=1;if(window.miniaudio.referenceCount===0){delete window.miniaudio}}},73588:()=>navigator.mediaDevices!==undefined&&navigator.mediaDevices.getUserMedia!==undefined,73692:()=>{try{var temp=new(window.AudioContext||window.webkitAudioContext);var sampleRate=temp.sampleRate;temp.close();return sampleRate}catch(e){return 0}},73863:($0,$1,$2,$3,$4,$5)=>{var deviceType=$0;var channels=$1;var sampleRate=$2;var bufferSize=$3;var pIntermediaryBuffer=$4;var pDevice=$5;if(typeof window.miniaudio==="undefined"){return-1}var device={};var audioContextOptions={};if(deviceType==window.miniaudio.device_type.playback&&sampleRate!=0){audioContextOptions.sampleRate=sampleRate}device.webaudio=new(window.AudioContext||window.webkitAudioContext)(audioContextOptions);device.webaudio.suspend();device.state=window.miniaudio.device_state.stopped;var channelCountIn=0;var channelCountOut=channels;if(deviceType!=window.miniaudio.device_type.playback){channelCountIn=channels}device.scriptNode=device.webaudio.createScriptProcessor(bufferSize,channelCountIn,channelCountOut);device.scriptNode.onaudioprocess=function(e){if(device.intermediaryBufferView==null||device.intermediaryBufferView.length==0){device.intermediaryBufferView=new Float32Array(HEAPF32.buffer,pIntermediaryBuffer,bufferSize*channels)}if(deviceType==window.miniaudio.device_type.capture||deviceType==window.miniaudio.device_type.duplex){for(var iChannel=0;iChannelwindow.miniaudio.get_device_by_index($0).webaudio.sampleRate,76813:$0=>{var device=window.miniaudio.get_device_by_index($0);if(device.scriptNode!==undefined){device.scriptNode.onaudioprocess=function(e){};device.scriptNode.disconnect();device.scriptNode=undefined}if(device.streamNode!==undefined){device.streamNode.disconnect();device.streamNode=undefined}device.webaudio.close();device.webaudio=undefined;device.pDevice=undefined},77213:$0=>{window.miniaudio.untrack_device_by_index($0)},77263:$0=>{var device=window.miniaudio.get_device_by_index($0);device.webaudio.resume();device.state=window.miniaudio.device_state.started},77402:$0=>{var device=window.miniaudio.get_device_by_index($0);device.webaudio.suspend();device.state=window.miniaudio.device_state.stopped},77542:()=>{if(!Module.wasmWorker){var workerUri="assets/packages/flutter_soloud/web/worker.dart.js";console.log("EM_ASM creating web worker!");Module.wasmWorker=new Worker(workerUri)}else{console.log("EM_ASM web worker already created!")}},77790:($0,$1)=>{if(Module.wasmWorker){console.log("EM_ASM posting message "+UTF8ToString($0)+" with value "+$1);Module.wasmWorker.postMessage(JSON.stringify({message:UTF8ToString($0),value:$1}))}else{console.error("Worker not found.")}}};function ExitStatus(status){this.name="ExitStatus";this.message=`Program terminated with exit(${status})`;this.status=status}Module["ExitStatus"]=ExitStatus;var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};Module["callRuntimeCallbacks"]=callRuntimeCallbacks;function getValue(ptr,type="i8"){if(type.endsWith("*"))type="*";switch(type){case"i1":return SAFE_HEAP_LOAD(ptr,1,0);case"i8":return SAFE_HEAP_LOAD(ptr,1,0);case"i16":return SAFE_HEAP_LOAD((ptr>>1)*2,2,0);case"i32":return SAFE_HEAP_LOAD((ptr>>2)*4,4,0);case"i64":abort("to do getValue(i64) use WASM_BIGINT");case"float":return SAFE_HEAP_LOAD_D((ptr>>2)*4,4,0);case"double":return SAFE_HEAP_LOAD_D((ptr>>3)*8,8,0);case"*":return SAFE_HEAP_LOAD((ptr>>2)*4,4,1);default:abort(`invalid type for getValue: ${type}`)}}Module["getValue"]=getValue;function getValue_safe(ptr,type="i8"){if(type.endsWith("*"))type="*";switch(type){case"i1":return HEAP8[ptr];case"i8":return HEAP8[ptr];case"i16":return HEAP16[ptr>>1];case"i32":return HEAP32[ptr>>2];case"i64":abort("to do getValue(i64) use WASM_BIGINT");case"float":return HEAPF32[ptr>>2];case"double":return HEAPF64[ptr>>3];case"*":return HEAPU32[ptr>>2];default:abort(`invalid type for getValue: ${type}`)}}Module["getValue_safe"]=getValue_safe;var noExitRuntime=Module["noExitRuntime"]||true;Module["noExitRuntime"]=noExitRuntime;function setValue(ptr,value,type="i8"){if(type.endsWith("*"))type="*";switch(type){case"i1":SAFE_HEAP_STORE(ptr,value,1);break;case"i8":SAFE_HEAP_STORE(ptr,value,1);break;case"i16":SAFE_HEAP_STORE((ptr>>1)*2,value,2);break;case"i32":SAFE_HEAP_STORE((ptr>>2)*4,value,4);break;case"i64":abort("to do setValue(i64) use WASM_BIGINT");case"float":SAFE_HEAP_STORE_D((ptr>>2)*4,value,4);break;case"double":SAFE_HEAP_STORE_D((ptr>>3)*8,value,8);break;case"*":SAFE_HEAP_STORE((ptr>>2)*4,value,4);break;default:abort(`invalid type for setValue: ${type}`)}}Module["setValue"]=setValue;function setValue_safe(ptr,value,type="i8"){if(type.endsWith("*"))type="*";switch(type){case"i1":HEAP8[ptr]=value;break;case"i8":HEAP8[ptr]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":abort("to do setValue(i64) use WASM_BIGINT");case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;case"*":HEAPU32[ptr>>2]=value;break;default:abort(`invalid type for setValue: ${type}`)}}Module["setValue_safe"]=setValue_safe;var stackRestore=val=>__emscripten_stack_restore(val);Module["stackRestore"]=stackRestore;var stackSave=()=>_emscripten_stack_get_current();Module["stackSave"]=stackSave;var unSign=(value,bits)=>{if(value>=0){return value}return bits<=32?2*Math.abs(1<{var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str="";while(idx>10,56320|ch&1023)}}return str};Module["UTF8ArrayToString"]=UTF8ArrayToString;var UTF8ToString=(ptr,maxBytesToRead)=>ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):"";Module["UTF8ToString"]=UTF8ToString;var ___assert_fail=(condition,filename,line,func)=>{abort(`Assertion failed: ${UTF8ToString(condition)}, at: `+[filename?UTF8ToString(filename):"unknown filename",line,func?UTF8ToString(func):"unknown function"])};Module["___assert_fail"]=___assert_fail;class ExceptionInfo{constructor(excPtr){this.excPtr=excPtr;this.ptr=excPtr-24}set_type(type){SAFE_HEAP_STORE((this.ptr+4>>2)*4,type,4)}get_type(){return SAFE_HEAP_LOAD((this.ptr+4>>2)*4,4,1)}set_destructor(destructor){SAFE_HEAP_STORE((this.ptr+8>>2)*4,destructor,4)}get_destructor(){return SAFE_HEAP_LOAD((this.ptr+8>>2)*4,4,1)}set_caught(caught){caught=caught?1:0;SAFE_HEAP_STORE(this.ptr+12,caught,1)}get_caught(){return SAFE_HEAP_LOAD(this.ptr+12,1,0)!=0}set_rethrown(rethrown){rethrown=rethrown?1:0;SAFE_HEAP_STORE(this.ptr+13,rethrown,1)}get_rethrown(){return SAFE_HEAP_LOAD(this.ptr+13,1,0)!=0}init(type,destructor){this.set_adjusted_ptr(0);this.set_type(type);this.set_destructor(destructor)}set_adjusted_ptr(adjustedPtr){SAFE_HEAP_STORE((this.ptr+16>>2)*4,adjustedPtr,4)}get_adjusted_ptr(){return SAFE_HEAP_LOAD((this.ptr+16>>2)*4,4,1)}get_exception_ptr(){var isPointer=___cxa_is_pointer_type(this.get_type());if(isPointer){return SAFE_HEAP_LOAD((this.excPtr>>2)*4,4,1)}var adjusted=this.get_adjusted_ptr();if(adjusted!==0)return adjusted;return this.excPtr}}Module["ExceptionInfo"]=ExceptionInfo;var exceptionLast=0;Module["exceptionLast"]=exceptionLast;var uncaughtExceptionCount=0;Module["uncaughtExceptionCount"]=uncaughtExceptionCount;var ___cxa_throw=(ptr,type,destructor)=>{var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw exceptionLast};Module["___cxa_throw"]=___cxa_throw;function syscallGetVarargI(){var ret=SAFE_HEAP_LOAD((+SYSCALLS.varargs>>2)*4,4,0);SYSCALLS.varargs+=4;return ret}Module["syscallGetVarargI"]=syscallGetVarargI;var syscallGetVarargP=syscallGetVarargI;Module["syscallGetVarargP"]=syscallGetVarargP;var PATH={isAbs:path=>path.charAt(0)==="/",splitPath:filename=>{var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:(parts,allowAboveRoot)=>{var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:path=>{var isAbsolute=PATH.isAbs(path),trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(p=>!!p),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:path=>{var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:path=>{if(path==="/")return"/";path=PATH.normalize(path);path=path.replace(/\/$/,"");var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},join:(...paths)=>PATH.normalize(paths.join("/")),join2:(l,r)=>PATH.normalize(l+"/"+r)};Module["PATH"]=PATH;var initRandomFill=()=>{if(typeof crypto=="object"&&typeof crypto["getRandomValues"]=="function"){return view=>crypto.getRandomValues(view)}else if(ENVIRONMENT_IS_NODE){try{var crypto_module=require("crypto");var randomFillSync=crypto_module["randomFillSync"];if(randomFillSync){return view=>crypto_module["randomFillSync"](view)}var randomBytes=crypto_module["randomBytes"];return view=>(view.set(randomBytes(view.byteLength)),view)}catch(e){}}abort("initRandomDevice")};Module["initRandomFill"]=initRandomFill;var randomFill=view=>(randomFill=initRandomFill())(view);Module["randomFill"]=randomFill;var PATH_FS={resolve:(...args)=>{var resolvedPath="",resolvedAbsolute=false;for(var i=args.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?args[i]:FS.cwd();if(typeof path!="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=PATH.isAbs(path)}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(p=>!!p),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:(from,to)=>{from=PATH_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i{var len=0;for(var i=0;i=55296&&c<=57343){len+=4;++i}else{len+=3}}return len};Module["lengthBytesUTF8"]=lengthBytesUTF8;var stringToUTF8Array=(str,heap,outIdx,maxBytesToWrite)=>{if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx};Module["stringToUTF8Array"]=stringToUTF8Array;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;var FS_stdin_getChar=()=>{if(!FS_stdin_getChar_buffer.length){var result=null;if(ENVIRONMENT_IS_NODE){var BUFSIZE=256;var buf=Buffer.alloc(BUFSIZE);var bytesRead=0;var fd=process.stdin.fd;try{bytesRead=fs.readSync(fd,buf,0,BUFSIZE)}catch(e){if(e.toString().includes("EOF"))bytesRead=0;else throw e}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else{}if(!result){return null}FS_stdin_getChar_buffer=intArrayFromString(result,true)}return FS_stdin_getChar_buffer.shift()};Module["FS_stdin_getChar"]=FS_stdin_getChar;var TTY={ttys:[],init(){},shutdown(){},register(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)},stream_ops:{open(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(43)}stream.tty=tty;stream.seekable=false},close(stream){stream.tty.ops.fsync(stream.tty)},fsync(stream){stream.tty.ops.fsync(stream.tty)},read(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(60)}var bytesRead=0;for(var i=0;i0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}},ioctl_tcgets(tty){return{c_iflag:25856,c_oflag:5,c_cflag:191,c_lflag:35387,c_cc:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}},ioctl_tcsets(tty,optional_actions,data){return 0},ioctl_tiocgwinsz(tty){return[24,80]}},default_tty1_ops:{put_char(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},fsync(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};Module["TTY"]=TTY;var zeroMemory=(address,size)=>{HEAPU8.fill(0,address,address+size);return address};Module["zeroMemory"]=zeroMemory;var alignMemory=(size,alignment)=>Math.ceil(size/alignment)*alignment;Module["alignMemory"]=alignMemory;var mmapAlloc=size=>{abort()};Module["mmapAlloc"]=mmapAlloc;var MEMFS={ops_table:null,mount(mount){return MEMFS.createNode(null,"/",16384|511,0)},createNode(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}MEMFS.ops_table||={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}};var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node;parent.timestamp=node.timestamp}return node},getFileDataAsTypedArray(node){if(!node.contents)return new Uint8Array(0);if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)},expandFileStorage(node,newCapacity){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity>>0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0)},resizeFileStorage(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0}else{var oldContents=node.contents;node.contents=new Uint8Array(newSize);if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize}},node_ops:{getattr(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr},setattr(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}},lookup(parent,name){throw FS.genericErrors[44]},mknod(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)},rename(old_node,new_dir,new_name){if(FS.isDir(old_node.mode)){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){for(var i in new_node.contents){throw new FS.ErrnoError(55)}}}delete old_node.parent.contents[old_node.name];old_node.parent.timestamp=Date.now();old_node.name=new_name;new_dir.contents[new_name]=old_node;new_dir.timestamp=old_node.parent.timestamp},unlink(parent,name){delete parent.contents[name];parent.timestamp=Date.now()},rmdir(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(55)}delete parent.contents[name];parent.timestamp=Date.now()},readdir(node){var entries=[".",".."];for(var key of Object.keys(node.contents)){entries.push(key)}return entries},symlink(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node},readlink(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(28)}return node.link}},stream_ops:{read(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length{var dep=!noRunDep?getUniqueRunDependency(`al ${url}`):"";readAsync(url,arrayBuffer=>{onload(new Uint8Array(arrayBuffer));if(dep)removeRunDependency(dep)},event=>{if(onerror){onerror()}else{throw`Loading data file "${url}" failed.`}});if(dep)addRunDependency(dep)};Module["asyncLoad"]=asyncLoad;var FS_createDataFile=(parent,name,fileData,canRead,canWrite,canOwn)=>{FS.createDataFile(parent,name,fileData,canRead,canWrite,canOwn)};Module["FS_createDataFile"]=FS_createDataFile;var preloadPlugins=Module["preloadPlugins"]||[];Module["preloadPlugins"]=preloadPlugins;var FS_handledByPreloadPlugin=(byteArray,fullname,finish,onerror)=>{if(typeof Browser!="undefined")Browser.init();var handled=false;preloadPlugins.forEach(plugin=>{if(handled)return;if(plugin["canHandle"](fullname)){plugin["handle"](byteArray,fullname,finish,onerror);handled=true}});return handled};Module["FS_handledByPreloadPlugin"]=FS_handledByPreloadPlugin;var FS_createPreloadedFile=(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish)=>{var fullname=name?PATH_FS.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency(`cp ${fullname}`);function processData(byteArray){function finish(byteArray){preFinish?.();if(!dontCreateFile){FS_createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}onload?.();removeRunDependency(dep)}if(FS_handledByPreloadPlugin(byteArray,fullname,finish,()=>{onerror?.();removeRunDependency(dep)})){return}finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){asyncLoad(url,processData,onerror)}else{processData(url)}};Module["FS_createPreloadedFile"]=FS_createPreloadedFile;var FS_modeStringToFlags=str=>{var flagModes={r:0,"r+":2,w:512|64|1,"w+":512|64|2,a:1024|64|1,"a+":1024|64|2};var flags=flagModes[str];if(typeof flags=="undefined"){throw new Error(`Unknown file open mode: ${str}`)}return flags};Module["FS_modeStringToFlags"]=FS_modeStringToFlags;var FS_getMode=(canRead,canWrite)=>{var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode};Module["FS_getMode"]=FS_getMode;var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,ErrnoError:class{constructor(errno){this.name="ErrnoError";this.errno=errno}},genericErrors:{},filesystems:null,syncFSRequests:0,FSStream:class{constructor(){this.shared={}}get object(){return this.node}set object(val){this.node=val}get isRead(){return(this.flags&2097155)!==1}get isWrite(){return(this.flags&2097155)!==0}get isAppend(){return this.flags&1024}get flags(){return this.shared.flags}set flags(val){this.shared.flags=val}get position(){return this.shared.position}set position(val){this.shared.position=val}},FSNode:class{constructor(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev;this.readMode=292|73;this.writeMode=146}get read(){return(this.mode&this.readMode)===this.readMode}set read(val){val?this.mode|=this.readMode:this.mode&=~this.readMode}get write(){return(this.mode&this.writeMode)===this.writeMode}set write(val){val?this.mode|=this.writeMode:this.mode&=~this.writeMode}get isFolder(){return FS.isDir(this.mode)}get isDevice(){return FS.isChrdev(this.mode)}},lookupPath(path,opts={}){path=PATH_FS.resolve(path);if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};opts=Object.assign(defaults,opts);if(opts.recurse_count>8){throw new FS.ErrnoError(32)}var parts=path.split("/").filter(p=>!!p);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(32)}}}}return{path:current_path,node:current}},getPath(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?`${mount}/${path}`:mount+path}path=path?`${node.name}/${path}`:node.name;node=node.parent}},hashName(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length},hashAddNode(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode(parent,name){var errCode=FS.mayLookup(parent);if(errCode){throw new FS.ErrnoError(errCode)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode(parent,name,mode,rdev){var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode(node){FS.hashRemoveNode(node)},isRoot(node){return node===node.parent},isMountpoint(node){return!!node.mounted},isFile(mode){return(mode&61440)===32768},isDir(mode){return(mode&61440)===16384},isLink(mode){return(mode&61440)===40960},isChrdev(mode){return(mode&61440)===8192},isBlkdev(mode){return(mode&61440)===24576},isFIFO(mode){return(mode&61440)===4096},isSocket(mode){return(mode&49152)===49152},flagsToPermissionString(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions(node,perms){if(FS.ignorePermissions){return 0}if(perms.includes("r")&&!(node.mode&292)){return 2}else if(perms.includes("w")&&!(node.mode&146)){return 2}else if(perms.includes("x")&&!(node.mode&73)){return 2}return 0},mayLookup(dir){if(!FS.isDir(dir.mode))return 54;var errCode=FS.nodePermissions(dir,"x");if(errCode)return errCode;if(!dir.node_ops.lookup)return 2;return 0},mayCreate(dir,name){try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var errCode=FS.nodePermissions(dir,"wx");if(errCode){return errCode}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen(node,flags){if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd(){for(var fd=0;fd<=FS.MAX_OPEN_FDS;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStreamChecked(fd){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}return stream},getStream:fd=>FS.streams[fd],createStream(stream,fd=-1){stream=Object.assign(new FS.FSStream,stream);if(fd==-1){fd=FS.nextfd()}stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream(fd){FS.streams[fd]=null},dupStream(origStream,fd=-1){var stream=FS.createStream(origStream,fd);stream.stream_ops?.dup?.(stream);return stream},chrdev_stream_ops:{open(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;stream.stream_ops.open?.(stream)},llseek(){throw new FS.ErrnoError(70)}},major:dev=>dev>>8,minor:dev=>dev&255,makedev:(ma,mi)=>ma<<8|mi,registerDevice(dev,ops){FS.devices[dev]={stream_ops:ops}},getDevice:dev=>FS.devices[dev],getMounts(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push(...m.mounts)}return mounts},syncfs(populate,callback){if(typeof populate=="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){err(`warning: ${FS.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`)}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(errCode){FS.syncFSRequests--;return callback(errCode)}function done(errCode){if(errCode){if(!done.errored){done.errored=true;return doCallback(errCode)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(mount=>{if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(hash=>{var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.includes(current.mount)){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup(parent,name){return parent.node_ops.lookup(parent,name)},mknod(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(28)}var errCode=FS.mayCreate(parent,name);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},create(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree(path,mode){var dirs=path.split("/");var d="";for(var i=0;iFS.currentPath,chdir(path){var lookup=FS.lookupPath(path,{follow:true});if(lookup.node===null){throw new FS.ErrnoError(44)}if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(54)}var errCode=FS.nodePermissions(lookup.node,"x");if(errCode){throw new FS.ErrnoError(errCode)}FS.currentPath=lookup.path},createDefaultDirectories(){FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")},createDefaultDevices(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:()=>0,write:(stream,buffer,offset,length,pos)=>length});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var randomBuffer=new Uint8Array(1024),randomLeft=0;var randomByte=()=>{if(randomLeft===0){randomLeft=randomFill(randomBuffer).byteLength}return randomBuffer[--randomLeft]};FS.createDevice("/dev","random",randomByte);FS.createDevice("/dev","urandom",randomByte);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")},createSpecialDirectories(){FS.mkdir("/proc");var proc_self=FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount(){var node=FS.createNode(proc_self,"fd",16384|511,73);node.node_ops={lookup(parent,name){var fd=+name;var stream=FS.getStreamChecked(fd);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>stream.path}};ret.parent=ret;return ret}};return node}},{},"/proc/self/fd")},createStandardStreams(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin",0);var stdout=FS.open("/dev/stdout",1);var stderr=FS.open("/dev/stderr",1)},staticInit(){[44].forEach(code=>{FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack=""});FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={MEMFS:MEMFS}},init(input,output,error){FS.init.initialized=true;Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()},quit(){FS.init.initialized=false;for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]}setDataGetter(getter){this.getter=getter}cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(from,to)=>{if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}return intArrayFromString(xhr.responseText||"",true)};var lazyArray=this;lazyArray.setDataGetter(chunkNum=>{var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]=="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]=="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;out("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true}get length(){if(!this.lengthKnown){this.cacheLength()}return this._length}get chunkSize(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}if(typeof XMLHttpRequest!="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(key=>{var fn=node.stream_ops[key];stream_ops[key]=(...args)=>{FS.forceLoadFile(node);return fn(...args)}});function writeChunks(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i{FS.forceLoadFile(node);return writeChunks(stream,buffer,offset,length,position)};stream_ops.mmap=(stream,length,position,prot,flags)=>{FS.forceLoadFile(node);var ptr=mmapAlloc(length);if(!ptr){throw new FS.ErrnoError(48)}writeChunks(stream,HEAP8,ptr,length,position);return{ptr:ptr,allocated:true}};node.stream_ops=stream_ops;return node}};Module["FS"]=FS;var SYSCALLS={DEFAULT_POLLMASK:5,calculateAt(dirfd,path,allowEmpty){if(PATH.isAbs(path)){return path}var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=SYSCALLS.getStreamFromFD(dirfd);dir=dirstream.path}if(path.length==0){if(!allowEmpty){throw new FS.ErrnoError(44)}return dir}return PATH.join2(dir,path)},doStat(func,path,buf){var stat=func(path);SAFE_HEAP_STORE((buf>>2)*4,stat.dev,4);SAFE_HEAP_STORE((buf+4>>2)*4,stat.mode,4);SAFE_HEAP_STORE((buf+8>>2)*4,stat.nlink,4);SAFE_HEAP_STORE((buf+12>>2)*4,stat.uid,4);SAFE_HEAP_STORE((buf+16>>2)*4,stat.gid,4);SAFE_HEAP_STORE((buf+20>>2)*4,stat.rdev,4);tempI64=[stat.size>>>0,(tempDouble=stat.size,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE((buf+24>>2)*4,tempI64[0],4),SAFE_HEAP_STORE((buf+28>>2)*4,tempI64[1],4);SAFE_HEAP_STORE((buf+32>>2)*4,4096,4);SAFE_HEAP_STORE((buf+36>>2)*4,stat.blocks,4);var atime=stat.atime.getTime();var mtime=stat.mtime.getTime();var ctime=stat.ctime.getTime();tempI64=[Math.floor(atime/1e3)>>>0,(tempDouble=Math.floor(atime/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE((buf+40>>2)*4,tempI64[0],4),SAFE_HEAP_STORE((buf+44>>2)*4,tempI64[1],4);SAFE_HEAP_STORE((buf+48>>2)*4,atime%1e3*1e3,4);tempI64=[Math.floor(mtime/1e3)>>>0,(tempDouble=Math.floor(mtime/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE((buf+56>>2)*4,tempI64[0],4),SAFE_HEAP_STORE((buf+60>>2)*4,tempI64[1],4);SAFE_HEAP_STORE((buf+64>>2)*4,mtime%1e3*1e3,4);tempI64=[Math.floor(ctime/1e3)>>>0,(tempDouble=Math.floor(ctime/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE((buf+72>>2)*4,tempI64[0],4),SAFE_HEAP_STORE((buf+76>>2)*4,tempI64[1],4);SAFE_HEAP_STORE((buf+80>>2)*4,ctime%1e3*1e3,4);tempI64=[stat.ino>>>0,(tempDouble=stat.ino,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE((buf+88>>2)*4,tempI64[0],4),SAFE_HEAP_STORE((buf+92>>2)*4,tempI64[1],4);return 0},doMsync(addr,stream,len,flags,offset){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}if(flags&2){return 0}var buffer=HEAPU8.slice(addr,addr+len);FS.msync(stream,buffer,offset,len,flags)},getStreamFromFD(fd){var stream=FS.getStreamChecked(fd);return stream},varargs:undefined,getStr(ptr){var ret=UTF8ToString(ptr);return ret}};Module["SYSCALLS"]=SYSCALLS;function ___syscall_fcntl64(fd,cmd,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(cmd){case 0:{var arg=syscallGetVarargI();if(arg<0){return-28}while(FS.streams[arg]){arg++}var newStream;newStream=FS.dupStream(stream,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=syscallGetVarargI();stream.flags|=arg;return 0}case 12:{var arg=syscallGetVarargP();var offset=0;SAFE_HEAP_STORE((arg+offset>>1)*2,2,2);return 0}case 13:case 14:return 0}return-28}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}Module["___syscall_fcntl64"]=___syscall_fcntl64;function ___syscall_ioctl(fd,op,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(op){case 21509:{if(!stream.tty)return-59;return 0}case 21505:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tcgets){var termios=stream.tty.ops.ioctl_tcgets(stream);var argp=syscallGetVarargP();SAFE_HEAP_STORE((argp>>2)*4,termios.c_iflag||0,4);SAFE_HEAP_STORE((argp+4>>2)*4,termios.c_oflag||0,4);SAFE_HEAP_STORE((argp+8>>2)*4,termios.c_cflag||0,4);SAFE_HEAP_STORE((argp+12>>2)*4,termios.c_lflag||0,4);for(var i=0;i<32;i++){SAFE_HEAP_STORE(argp+i+17,termios.c_cc[i]||0,1)}return 0}return 0}case 21510:case 21511:case 21512:{if(!stream.tty)return-59;return 0}case 21506:case 21507:case 21508:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tcsets){var argp=syscallGetVarargP();var c_iflag=SAFE_HEAP_LOAD((argp>>2)*4,4,0);var c_oflag=SAFE_HEAP_LOAD((argp+4>>2)*4,4,0);var c_cflag=SAFE_HEAP_LOAD((argp+8>>2)*4,4,0);var c_lflag=SAFE_HEAP_LOAD((argp+12>>2)*4,4,0);var c_cc=[];for(var i=0;i<32;i++){c_cc.push(SAFE_HEAP_LOAD(argp+i+17,1,0))}return stream.tty.ops.ioctl_tcsets(stream.tty,op,{c_iflag:c_iflag,c_oflag:c_oflag,c_cflag:c_cflag,c_lflag:c_lflag,c_cc:c_cc})}return 0}case 21519:{if(!stream.tty)return-59;var argp=syscallGetVarargP();SAFE_HEAP_STORE((argp>>2)*4,0,4);return 0}case 21520:{if(!stream.tty)return-59;return-28}case 21531:{var argp=syscallGetVarargP();return FS.ioctl(stream,op,argp)}case 21523:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tiocgwinsz){var winsize=stream.tty.ops.ioctl_tiocgwinsz(stream.tty);var argp=syscallGetVarargP();SAFE_HEAP_STORE((argp>>1)*2,winsize[0],2);SAFE_HEAP_STORE((argp+2>>1)*2,winsize[1],2)}return 0}case 21524:{if(!stream.tty)return-59;return 0}case 21515:{if(!stream.tty)return-59;return 0}default:return-28}}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}Module["___syscall_ioctl"]=___syscall_ioctl;function ___syscall_openat(dirfd,path,flags,varargs){SYSCALLS.varargs=varargs;try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);var mode=varargs?syscallGetVarargI():0;return FS.open(path,flags,mode).fd}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}Module["___syscall_openat"]=___syscall_openat;var __abort_js=()=>{abort("")};Module["__abort_js"]=__abort_js;var __emscripten_memcpy_js=(dest,src,num)=>HEAPU8.copyWithin(dest,src,src+num);Module["__emscripten_memcpy_js"]=__emscripten_memcpy_js;var readEmAsmArgsArray=[];Module["readEmAsmArgsArray"]=readEmAsmArgsArray;var readEmAsmArgs=(sigPtr,buf)=>{readEmAsmArgsArray.length=0;var ch;while(ch=SAFE_HEAP_LOAD(sigPtr++,1,1)){var wide=ch!=105;wide&=ch!=112;buf+=wide&&buf%8?4:0;readEmAsmArgsArray.push(ch==112?SAFE_HEAP_LOAD((buf>>2)*4,4,1):ch==105?SAFE_HEAP_LOAD((buf>>2)*4,4,0):SAFE_HEAP_LOAD_D((buf>>3)*8,8,0));buf+=wide?8:4}return readEmAsmArgsArray};Module["readEmAsmArgs"]=readEmAsmArgs;var runEmAsmFunction=(code,sigPtr,argbuf)=>{var args=readEmAsmArgs(sigPtr,argbuf);return ASM_CONSTS[code](...args)};Module["runEmAsmFunction"]=runEmAsmFunction;var _emscripten_asm_const_int=(code,sigPtr,argbuf)=>runEmAsmFunction(code,sigPtr,argbuf);Module["_emscripten_asm_const_int"]=_emscripten_asm_const_int;var getHeapMax=()=>2147483648;Module["getHeapMax"]=getHeapMax;var growMemory=size=>{var b=wasmMemory.buffer;var pages=(size-b.byteLength+65535)/65536;try{wasmMemory.grow(pages);updateMemoryViews();return 1}catch(e){}};Module["growMemory"]=growMemory;var _emscripten_resize_heap=requestedSize=>{var oldSize=HEAPU8.length;requestedSize>>>=0;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}var alignUp=(x,multiple)=>x+(multiple-x%multiple)%multiple;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=growMemory(newSize);if(replacement){return true}}return false};Module["_emscripten_resize_heap"]=_emscripten_resize_heap;function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}Module["_fd_close"]=_fd_close;var doReadv=(stream,iov,iovcnt,offset)=>{var ret=0;for(var i=0;i>2)*4,4,1);var len=SAFE_HEAP_LOAD((iov+4>>2)*4,4,1);iov+=8;var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2)*4,num,4);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}Module["_fd_read"]=_fd_read;var convertI32PairToI53Checked=(lo,hi)=>hi+2097152>>>0<4194305-!!lo?(lo>>>0)+hi*4294967296:NaN;Module["convertI32PairToI53Checked"]=convertI32PairToI53Checked;function _fd_seek(fd,offset_low,offset_high,whence,newOffset){var offset=convertI32PairToI53Checked(offset_low,offset_high);try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);FS.llseek(stream,offset,whence);tempI64=[stream.position>>>0,(tempDouble=stream.position,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE((newOffset>>2)*4,tempI64[0],4),SAFE_HEAP_STORE((newOffset+4>>2)*4,tempI64[1],4);if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}Module["_fd_seek"]=_fd_seek;var doWritev=(stream,iov,iovcnt,offset)=>{var ret=0;for(var i=0;i>2)*4,4,1);var len=SAFE_HEAP_LOAD((iov+4>>2)*4,4,1);iov+=8;var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(typeof offset!="undefined"){offset+=curr}}return ret};Module["doWritev"]=doWritev;function _fd_write(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=doWritev(stream,iov,iovcnt);SAFE_HEAP_STORE((pnum>>2)*4,num,4);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}Module["_fd_write"]=_fd_write;var _getentropy=(buffer,size)=>{randomFill(HEAPU8.subarray(buffer,buffer+size));return 0};Module["_getentropy"]=_getentropy;var getCFunc=ident=>{var func=Module["_"+ident];return func};Module["getCFunc"]=getCFunc;var writeArrayToMemory=(array,buffer)=>{HEAP8.set(array,buffer)};Module["writeArrayToMemory"]=writeArrayToMemory;var stringToUTF8=(str,outPtr,maxBytesToWrite)=>stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite);Module["stringToUTF8"]=stringToUTF8;var stackAlloc=sz=>__emscripten_stack_alloc(sz);Module["stackAlloc"]=stackAlloc;var stringToUTF8OnStack=str=>{var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8(str,ret,size);return ret};Module["stringToUTF8OnStack"]=stringToUTF8OnStack;var ccall=(ident,returnType,argTypes,args,opts)=>{var toC={string:str=>{var ret=0;if(str!==null&&str!==undefined&&str!==0){ret=stringToUTF8OnStack(str)}return ret},array:arr=>{var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string"){return UTF8ToString(ret)}if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i{var numericArgs=!argTypes||argTypes.every(type=>type==="number"||type==="boolean");var numericRet=returnType!=="string";if(numericRet&&numericArgs&&!opts){return getCFunc(ident)}return(...args)=>ccall(ident,returnType,argTypes,args,opts)};Module["cwrap"]=cwrap;FS.createPreloadedFile=FS_createPreloadedFile;FS.staticInit();var wasmImports={a:___assert_fail,h:___cxa_throw,g:___syscall_fcntl64,j:___syscall_ioctl,k:___syscall_openat,o:__abort_js,l:__emscripten_memcpy_js,c:alignfault,d:_emscripten_asm_const_int,p:_emscripten_resize_heap,e:_fd_close,i:_fd_read,m:_fd_seek,f:_fd_write,n:_getentropy,b:segfault};var wasmExports=createWasm();var ___wasm_call_ctors=()=>(___wasm_call_ctors=wasmExports["r"])();var _malloc=Module["_malloc"]=a0=>(_malloc=Module["_malloc"]=wasmExports["t"])(a0);var _free=Module["_free"]=a0=>(_free=Module["_free"]=wasmExports["u"])(a0);var _ma_device__on_notification_unlocked=Module["_ma_device__on_notification_unlocked"]=a0=>(_ma_device__on_notification_unlocked=Module["_ma_device__on_notification_unlocked"]=wasmExports["v"])(a0);var _ma_malloc_emscripten=Module["_ma_malloc_emscripten"]=(a0,a1)=>(_ma_malloc_emscripten=Module["_ma_malloc_emscripten"]=wasmExports["w"])(a0,a1);var _ma_free_emscripten=Module["_ma_free_emscripten"]=(a0,a1)=>(_ma_free_emscripten=Module["_ma_free_emscripten"]=wasmExports["x"])(a0,a1);var _ma_device_process_pcm_frames_capture__webaudio=Module["_ma_device_process_pcm_frames_capture__webaudio"]=(a0,a1,a2)=>(_ma_device_process_pcm_frames_capture__webaudio=Module["_ma_device_process_pcm_frames_capture__webaudio"]=wasmExports["y"])(a0,a1,a2);var _ma_device_process_pcm_frames_playback__webaudio=Module["_ma_device_process_pcm_frames_playback__webaudio"]=(a0,a1,a2)=>(_ma_device_process_pcm_frames_playback__webaudio=Module["_ma_device_process_pcm_frames_playback__webaudio"]=wasmExports["z"])(a0,a1,a2);var _createWorkerInWasm=Module["_createWorkerInWasm"]=()=>(_createWorkerInWasm=Module["_createWorkerInWasm"]=wasmExports["A"])();var _sendToWorker=Module["_sendToWorker"]=(a0,a1)=>(_sendToWorker=Module["_sendToWorker"]=wasmExports["B"])(a0,a1);var _nativeFree=Module["_nativeFree"]=a0=>(_nativeFree=Module["_nativeFree"]=wasmExports["C"])(a0);var _voiceEndedCallback=Module["_voiceEndedCallback"]=a0=>(_voiceEndedCallback=Module["_voiceEndedCallback"]=wasmExports["D"])(a0);var _setDartEventCallback=Module["_setDartEventCallback"]=(a0,a1,a2)=>(_setDartEventCallback=Module["_setDartEventCallback"]=wasmExports["E"])(a0,a1,a2);var _initEngine=Module["_initEngine"]=(a0,a1,a2)=>(_initEngine=Module["_initEngine"]=wasmExports["F"])(a0,a1,a2);var _dispose=Module["_dispose"]=()=>(_dispose=Module["_dispose"]=wasmExports["G"])();var _isInited=Module["_isInited"]=()=>(_isInited=Module["_isInited"]=wasmExports["H"])();var _loadFile=Module["_loadFile"]=(a0,a1)=>(_loadFile=Module["_loadFile"]=wasmExports["I"])(a0,a1);var _loadMem=Module["_loadMem"]=(a0,a1,a2,a3,a4)=>(_loadMem=Module["_loadMem"]=wasmExports["J"])(a0,a1,a2,a3,a4);var _loadWaveform=Module["_loadWaveform"]=(a0,a1,a2,a3,a4)=>(_loadWaveform=Module["_loadWaveform"]=wasmExports["K"])(a0,a1,a2,a3,a4);var _setWaveformScale=Module["_setWaveformScale"]=(a0,a1)=>(_setWaveformScale=Module["_setWaveformScale"]=wasmExports["L"])(a0,a1);var _setWaveformDetune=Module["_setWaveformDetune"]=(a0,a1)=>(_setWaveformDetune=Module["_setWaveformDetune"]=wasmExports["M"])(a0,a1);var _setWaveformFreq=Module["_setWaveformFreq"]=(a0,a1)=>(_setWaveformFreq=Module["_setWaveformFreq"]=wasmExports["N"])(a0,a1);var _setSuperWave=Module["_setSuperWave"]=(a0,a1)=>(_setSuperWave=Module["_setSuperWave"]=wasmExports["O"])(a0,a1);var _setWaveform=Module["_setWaveform"]=(a0,a1)=>(_setWaveform=Module["_setWaveform"]=wasmExports["P"])(a0,a1);var _speechText=Module["_speechText"]=(a0,a1)=>(_speechText=Module["_speechText"]=wasmExports["Q"])(a0,a1);var _pauseSwitch=Module["_pauseSwitch"]=a0=>(_pauseSwitch=Module["_pauseSwitch"]=wasmExports["R"])(a0);var _setPause=Module["_setPause"]=(a0,a1)=>(_setPause=Module["_setPause"]=wasmExports["S"])(a0,a1);var _getPause=Module["_getPause"]=a0=>(_getPause=Module["_getPause"]=wasmExports["T"])(a0);var _setRelativePlaySpeed=Module["_setRelativePlaySpeed"]=(a0,a1)=>(_setRelativePlaySpeed=Module["_setRelativePlaySpeed"]=wasmExports["U"])(a0,a1);var _getRelativePlaySpeed=Module["_getRelativePlaySpeed"]=a0=>(_getRelativePlaySpeed=Module["_getRelativePlaySpeed"]=wasmExports["V"])(a0);var _play=Module["_play"]=(a0,a1,a2,a3,a4,a5,a6)=>(_play=Module["_play"]=wasmExports["W"])(a0,a1,a2,a3,a4,a5,a6);var _stop=Module["_stop"]=a0=>(_stop=Module["_stop"]=wasmExports["X"])(a0);var _disposeSound=Module["_disposeSound"]=a0=>(_disposeSound=Module["_disposeSound"]=wasmExports["Y"])(a0);var _disposeAllSound=Module["_disposeAllSound"]=()=>(_disposeAllSound=Module["_disposeAllSound"]=wasmExports["Z"])();var _getLooping=Module["_getLooping"]=a0=>(_getLooping=Module["_getLooping"]=wasmExports["_"])(a0);var _setLooping=Module["_setLooping"]=(a0,a1)=>(_setLooping=Module["_setLooping"]=wasmExports["$"])(a0,a1);var _getLoopPoint=Module["_getLoopPoint"]=a0=>(_getLoopPoint=Module["_getLoopPoint"]=wasmExports["aa"])(a0);var _setLoopPoint=Module["_setLoopPoint"]=(a0,a1)=>(_setLoopPoint=Module["_setLoopPoint"]=wasmExports["ba"])(a0,a1);var _setVisualizationEnabled=Module["_setVisualizationEnabled"]=a0=>(_setVisualizationEnabled=Module["_setVisualizationEnabled"]=wasmExports["ca"])(a0);var _getVisualizationEnabled=Module["_getVisualizationEnabled"]=()=>(_getVisualizationEnabled=Module["_getVisualizationEnabled"]=wasmExports["da"])();var _getFft=Module["_getFft"]=a0=>(_getFft=Module["_getFft"]=wasmExports["ea"])(a0);var _getWave=Module["_getWave"]=a0=>(_getWave=Module["_getWave"]=wasmExports["fa"])(a0);var _setFftSmoothing=Module["_setFftSmoothing"]=a0=>(_setFftSmoothing=Module["_setFftSmoothing"]=wasmExports["ga"])(a0);var _getAudioTexture=Module["_getAudioTexture"]=a0=>(_getAudioTexture=Module["_getAudioTexture"]=wasmExports["ha"])(a0);var _getAudioTexture2D=Module["_getAudioTexture2D"]=a0=>(_getAudioTexture2D=Module["_getAudioTexture2D"]=wasmExports["ia"])(a0);var _getTextureValue=Module["_getTextureValue"]=(a0,a1)=>(_getTextureValue=Module["_getTextureValue"]=wasmExports["ja"])(a0,a1);var _getLength=Module["_getLength"]=a0=>(_getLength=Module["_getLength"]=wasmExports["ka"])(a0);var _seek=Module["_seek"]=(a0,a1)=>(_seek=Module["_seek"]=wasmExports["la"])(a0,a1);var _getPosition=Module["_getPosition"]=a0=>(_getPosition=Module["_getPosition"]=wasmExports["ma"])(a0);var _getGlobalVolume=Module["_getGlobalVolume"]=()=>(_getGlobalVolume=Module["_getGlobalVolume"]=wasmExports["na"])();var _setGlobalVolume=Module["_setGlobalVolume"]=a0=>(_setGlobalVolume=Module["_setGlobalVolume"]=wasmExports["oa"])(a0);var _getVolume=Module["_getVolume"]=a0=>(_getVolume=Module["_getVolume"]=wasmExports["pa"])(a0);var _setVolume=Module["_setVolume"]=(a0,a1)=>(_setVolume=Module["_setVolume"]=wasmExports["qa"])(a0,a1);var _getPan=Module["_getPan"]=a0=>(_getPan=Module["_getPan"]=wasmExports["ra"])(a0);var _setPan=Module["_setPan"]=(a0,a1)=>(_setPan=Module["_setPan"]=wasmExports["sa"])(a0,a1);var _setPanAbsolute=Module["_setPanAbsolute"]=(a0,a1,a2)=>(_setPanAbsolute=Module["_setPanAbsolute"]=wasmExports["ta"])(a0,a1,a2);var _getIsValidVoiceHandle=Module["_getIsValidVoiceHandle"]=a0=>(_getIsValidVoiceHandle=Module["_getIsValidVoiceHandle"]=wasmExports["ua"])(a0);var _getActiveVoiceCount=Module["_getActiveVoiceCount"]=()=>(_getActiveVoiceCount=Module["_getActiveVoiceCount"]=wasmExports["va"])();var _countAudioSource=Module["_countAudioSource"]=a0=>(_countAudioSource=Module["_countAudioSource"]=wasmExports["wa"])(a0);var _getVoiceCount=Module["_getVoiceCount"]=()=>(_getVoiceCount=Module["_getVoiceCount"]=wasmExports["xa"])();var _getProtectVoice=Module["_getProtectVoice"]=a0=>(_getProtectVoice=Module["_getProtectVoice"]=wasmExports["ya"])(a0);var _setProtectVoice=Module["_setProtectVoice"]=(a0,a1)=>(_setProtectVoice=Module["_setProtectVoice"]=wasmExports["za"])(a0,a1);var _getMaxActiveVoiceCount=Module["_getMaxActiveVoiceCount"]=()=>(_getMaxActiveVoiceCount=Module["_getMaxActiveVoiceCount"]=wasmExports["Aa"])();var _setMaxActiveVoiceCount=Module["_setMaxActiveVoiceCount"]=a0=>(_setMaxActiveVoiceCount=Module["_setMaxActiveVoiceCount"]=wasmExports["Ba"])(a0);var _createVoiceGroup=Module["_createVoiceGroup"]=()=>(_createVoiceGroup=Module["_createVoiceGroup"]=wasmExports["Ca"])();var _destroyVoiceGroup=Module["_destroyVoiceGroup"]=a0=>(_destroyVoiceGroup=Module["_destroyVoiceGroup"]=wasmExports["Da"])(a0);var _addVoiceToGroup=Module["_addVoiceToGroup"]=(a0,a1)=>(_addVoiceToGroup=Module["_addVoiceToGroup"]=wasmExports["Ea"])(a0,a1);var _isVoiceGroup=Module["_isVoiceGroup"]=a0=>(_isVoiceGroup=Module["_isVoiceGroup"]=wasmExports["Fa"])(a0);var _isVoiceGroupEmpty=Module["_isVoiceGroupEmpty"]=a0=>(_isVoiceGroupEmpty=Module["_isVoiceGroupEmpty"]=wasmExports["Ga"])(a0);var _fadeGlobalVolume=Module["_fadeGlobalVolume"]=(a0,a1)=>(_fadeGlobalVolume=Module["_fadeGlobalVolume"]=wasmExports["Ha"])(a0,a1);var _fadeVolume=Module["_fadeVolume"]=(a0,a1,a2)=>(_fadeVolume=Module["_fadeVolume"]=wasmExports["Ia"])(a0,a1,a2);var _fadePan=Module["_fadePan"]=(a0,a1,a2)=>(_fadePan=Module["_fadePan"]=wasmExports["Ja"])(a0,a1,a2);var _fadeRelativePlaySpeed=Module["_fadeRelativePlaySpeed"]=(a0,a1,a2)=>(_fadeRelativePlaySpeed=Module["_fadeRelativePlaySpeed"]=wasmExports["Ka"])(a0,a1,a2);var _schedulePause=Module["_schedulePause"]=(a0,a1)=>(_schedulePause=Module["_schedulePause"]=wasmExports["La"])(a0,a1);var _scheduleStop=Module["_scheduleStop"]=(a0,a1)=>(_scheduleStop=Module["_scheduleStop"]=wasmExports["Ma"])(a0,a1);var _oscillateVolume=Module["_oscillateVolume"]=(a0,a1,a2,a3)=>(_oscillateVolume=Module["_oscillateVolume"]=wasmExports["Na"])(a0,a1,a2,a3);var _oscillatePan=Module["_oscillatePan"]=(a0,a1,a2,a3)=>(_oscillatePan=Module["_oscillatePan"]=wasmExports["Oa"])(a0,a1,a2,a3);var _oscillateRelativePlaySpeed=Module["_oscillateRelativePlaySpeed"]=(a0,a1,a2,a3)=>(_oscillateRelativePlaySpeed=Module["_oscillateRelativePlaySpeed"]=wasmExports["Pa"])(a0,a1,a2,a3);var _oscillateGlobalVolume=Module["_oscillateGlobalVolume"]=(a0,a1,a2)=>(_oscillateGlobalVolume=Module["_oscillateGlobalVolume"]=wasmExports["Qa"])(a0,a1,a2);var _isFilterActive=Module["_isFilterActive"]=(a0,a1,a2)=>(_isFilterActive=Module["_isFilterActive"]=wasmExports["Ra"])(a0,a1,a2);var _getFilterParamNames=Module["_getFilterParamNames"]=(a0,a1,a2)=>(_getFilterParamNames=Module["_getFilterParamNames"]=wasmExports["Sa"])(a0,a1,a2);var _addFilter=Module["_addFilter"]=(a0,a1)=>(_addFilter=Module["_addFilter"]=wasmExports["Ta"])(a0,a1);var _removeFilter=Module["_removeFilter"]=(a0,a1)=>(_removeFilter=Module["_removeFilter"]=wasmExports["Ua"])(a0,a1);var _setFilterParams=Module["_setFilterParams"]=(a0,a1,a2,a3)=>(_setFilterParams=Module["_setFilterParams"]=wasmExports["Va"])(a0,a1,a2,a3);var _getFilterParams=Module["_getFilterParams"]=(a0,a1,a2,a3)=>(_getFilterParams=Module["_getFilterParams"]=wasmExports["Wa"])(a0,a1,a2,a3);var _fadeFilterParameter=Module["_fadeFilterParameter"]=(a0,a1,a2,a3,a4)=>(_fadeFilterParameter=Module["_fadeFilterParameter"]=wasmExports["Xa"])(a0,a1,a2,a3,a4);var _oscillateFilterParameter=Module["_oscillateFilterParameter"]=(a0,a1,a2,a3,a4,a5)=>(_oscillateFilterParameter=Module["_oscillateFilterParameter"]=wasmExports["Ya"])(a0,a1,a2,a3,a4,a5);var _play3d=Module["_play3d"]=(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)=>(_play3d=Module["_play3d"]=wasmExports["Za"])(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11);var _set3dSoundSpeed=Module["_set3dSoundSpeed"]=a0=>(_set3dSoundSpeed=Module["_set3dSoundSpeed"]=wasmExports["_a"])(a0);var _get3dSoundSpeed=Module["_get3dSoundSpeed"]=()=>(_get3dSoundSpeed=Module["_get3dSoundSpeed"]=wasmExports["$a"])();var _set3dListenerParameters=Module["_set3dListenerParameters"]=(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)=>(_set3dListenerParameters=Module["_set3dListenerParameters"]=wasmExports["ab"])(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11);var _set3dListenerPosition=Module["_set3dListenerPosition"]=(a0,a1,a2)=>(_set3dListenerPosition=Module["_set3dListenerPosition"]=wasmExports["bb"])(a0,a1,a2);var _set3dListenerAt=Module["_set3dListenerAt"]=(a0,a1,a2)=>(_set3dListenerAt=Module["_set3dListenerAt"]=wasmExports["cb"])(a0,a1,a2);var _set3dListenerUp=Module["_set3dListenerUp"]=(a0,a1,a2)=>(_set3dListenerUp=Module["_set3dListenerUp"]=wasmExports["db"])(a0,a1,a2);var _set3dListenerVelocity=Module["_set3dListenerVelocity"]=(a0,a1,a2)=>(_set3dListenerVelocity=Module["_set3dListenerVelocity"]=wasmExports["eb"])(a0,a1,a2);var _set3dSourceParameters=Module["_set3dSourceParameters"]=(a0,a1,a2,a3,a4,a5,a6)=>(_set3dSourceParameters=Module["_set3dSourceParameters"]=wasmExports["fb"])(a0,a1,a2,a3,a4,a5,a6);var _set3dSourcePosition=Module["_set3dSourcePosition"]=(a0,a1,a2,a3)=>(_set3dSourcePosition=Module["_set3dSourcePosition"]=wasmExports["gb"])(a0,a1,a2,a3);var _set3dSourceVelocity=Module["_set3dSourceVelocity"]=(a0,a1,a2,a3)=>(_set3dSourceVelocity=Module["_set3dSourceVelocity"]=wasmExports["hb"])(a0,a1,a2,a3);var _set3dSourceMinMaxDistance=Module["_set3dSourceMinMaxDistance"]=(a0,a1,a2)=>(_set3dSourceMinMaxDistance=Module["_set3dSourceMinMaxDistance"]=wasmExports["ib"])(a0,a1,a2);var _set3dSourceAttenuation=Module["_set3dSourceAttenuation"]=(a0,a1,a2)=>(_set3dSourceAttenuation=Module["_set3dSourceAttenuation"]=wasmExports["jb"])(a0,a1,a2);var _set3dSourceDopplerFactor=Module["_set3dSourceDopplerFactor"]=(a0,a1)=>(_set3dSourceDopplerFactor=Module["_set3dSourceDopplerFactor"]=wasmExports["kb"])(a0,a1);var _emscripten_get_sbrk_ptr=()=>(_emscripten_get_sbrk_ptr=wasmExports["lb"])();var _sbrk=a0=>(_sbrk=wasmExports["mb"])(a0);var _emscripten_stack_get_base=()=>(_emscripten_stack_get_base=wasmExports["nb"])();var __emscripten_stack_restore=a0=>(__emscripten_stack_restore=wasmExports["ob"])(a0);var __emscripten_stack_alloc=a0=>(__emscripten_stack_alloc=wasmExports["pb"])(a0);var _emscripten_stack_get_current=()=>(_emscripten_stack_get_current=wasmExports["qb"])();var ___cxa_is_pointer_type=a0=>(___cxa_is_pointer_type=wasmExports["rb"])(a0);var dynCall_iiiji=Module["dynCall_iiiji"]=(a0,a1,a2,a3,a4,a5)=>(dynCall_iiiji=Module["dynCall_iiiji"]=wasmExports["sb"])(a0,a1,a2,a3,a4,a5);var dynCall_jii=Module["dynCall_jii"]=(a0,a1,a2)=>(dynCall_jii=Module["dynCall_jii"]=wasmExports["tb"])(a0,a1,a2);var dynCall_jiji=Module["dynCall_jiji"]=(a0,a1,a2,a3,a4)=>(dynCall_jiji=Module["dynCall_jiji"]=wasmExports["ub"])(a0,a1,a2,a3,a4);Module["ccall"]=ccall;Module["cwrap"]=cwrap;var calledRun;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(){if(runDependencies>0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run(); +var Module=typeof Module!="undefined"?Module:{};var ENVIRONMENT_IS_WEB=typeof window=="object";var ENVIRONMENT_IS_WORKER=typeof importScripts=="function";var ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string";if(ENVIRONMENT_IS_NODE){}var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary;if(ENVIRONMENT_IS_NODE){var fs=require("fs");var nodePath=require("path");scriptDirectory=__dirname+"/";read_=(filename,binary)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);return fs.readFileSync(filename,binary?undefined:"utf8")};readBinary=filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}return ret};readAsync=(filename,onload,onerror,binary=true)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);fs.readFile(filename,binary?undefined:"utf8",(err,data)=>{if(err)onerror(err);else onload(binary?data.buffer:data)})};if(!Module["thisProgram"]&&process.argv.length>1){thisProgram=process.argv[1].replace(/\\/g,"/")}arguments_=process.argv.slice(2);if(typeof module!="undefined"){module["exports"]=Module}process.on("uncaughtException",ex=>{if(ex!=="unwind"&&!(ex instanceof ExitStatus)&&!(ex.context instanceof ExitStatus)){throw ex}});quit_=(status,toThrow)=>{process.exitCode=status;throw toThrow}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.startsWith("blob:")){scriptDirectory=""}else{scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}{read_=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=(url,onload,onerror)=>{if(isFileURI(url)){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null);return}fetch(url,{credentials:"same-origin"}).then(response=>{if(response.ok){return response.arrayBuffer()}return Promise.reject(new Error(response.status+" : "+response.url))}).then(onload,onerror)}}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.error.bind(console);Object.assign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];function getSafeHeapType(bytes,isFloat){switch(bytes){case 1:return"i8";case 2:return"i16";case 4:return isFloat?"float":"i32";case 8:return isFloat?"double":"i64";default:abort(`getSafeHeapType() invalid bytes=${bytes}`)}}function SAFE_HEAP_STORE(dest,value,bytes,isFloat){if(dest<=0)abort(`segmentation fault storing ${bytes} bytes to address ${dest}`);if(dest%bytes!==0)abort(`alignment error storing to address ${dest}, which was expected to be aligned to a multiple of ${bytes}`);if(runtimeInitialized){var brk=_sbrk(0);if(dest+bytes>brk)abort(`segmentation fault, exceeded the top of the available dynamic heap when storing ${bytes} bytes to address ${dest}. DYNAMICTOP=${brk}`);if(brk<_emscripten_stack_get_base())abort(`brk >= _emscripten_stack_get_base() (brk=${brk}, _emscripten_stack_get_base()=${_emscripten_stack_get_base()})`);if(brk>wasmMemory.buffer.byteLength)abort(`brk <= wasmMemory.buffer.byteLength (brk=${brk}, wasmMemory.buffer.byteLength=${wasmMemory.buffer.byteLength})`)}setValue_safe(dest,value,getSafeHeapType(bytes,isFloat));return value}function SAFE_HEAP_STORE_D(dest,value,bytes){return SAFE_HEAP_STORE(dest,value,bytes,true)}function SAFE_HEAP_LOAD(dest,bytes,unsigned,isFloat){if(dest<=0)abort(`segmentation fault loading ${bytes} bytes from address ${dest}`);if(dest%bytes!==0)abort(`alignment error loading from address ${dest}, which was expected to be aligned to a multiple of ${bytes}`);if(runtimeInitialized){var brk=_sbrk(0);if(dest+bytes>brk)abort(`segmentation fault, exceeded the top of the available dynamic heap when loading ${bytes} bytes from address ${dest}. DYNAMICTOP=${brk}`);if(brk<_emscripten_stack_get_base())abort(`brk >= _emscripten_stack_get_base() (brk=${brk}, _emscripten_stack_get_base()=${_emscripten_stack_get_base()})`);if(brk>wasmMemory.buffer.byteLength)abort(`brk <= wasmMemory.buffer.byteLength (brk=${brk}, wasmMemory.buffer.byteLength=${wasmMemory.buffer.byteLength})`)}var type=getSafeHeapType(bytes,isFloat);var ret=getValue_safe(dest,type);if(unsigned)ret=unSign(ret,parseInt(type.substr(1),10));return ret}function SAFE_HEAP_LOAD_D(dest,bytes,unsigned){return SAFE_HEAP_LOAD(dest,bytes,unsigned,true)}function segfault(){abort("segmentation fault")}function alignfault(){abort("alignment fault")}var wasmMemory;var ABORT=false;var EXITSTATUS;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateMemoryViews(){var b=wasmMemory.buffer;Module["HEAP8"]=HEAP8=new Int8Array(b);Module["HEAP16"]=HEAP16=new Int16Array(b);Module["HEAPU8"]=HEAPU8=new Uint8Array(b);Module["HEAPU16"]=HEAPU16=new Uint16Array(b);Module["HEAP32"]=HEAP32=new Int32Array(b);Module["HEAPU32"]=HEAPU32=new Uint32Array(b);Module["HEAPF32"]=HEAPF32=new Float32Array(b);Module["HEAPF64"]=HEAPF64=new Float64Array(b)}var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();FS.ignorePermissions=false;TTY.init();callRuntimeCallbacks(__ATINIT__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;Module["monitorRunDependencies"]?.(runDependencies)}function removeRunDependency(id){runDependencies--;Module["monitorRunDependencies"]?.(runDependencies);if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){Module["onAbort"]?.(what);what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);throw e}var dataURIPrefix="data:application/octet-stream;base64,";var isDataURI=filename=>filename.startsWith(dataURIPrefix);var isFileURI=filename=>filename.startsWith("file://");function findWasmBinary(){var f="libflutter_soloud_plugin.wasm";if(!isDataURI(f)){return locateFile(f)}return f}var wasmBinaryFile;function getBinarySync(file){if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw"both async and sync fetching of the wasm failed"}function getBinaryPromise(binaryFile){if(!wasmBinary){return new Promise((resolve,reject)=>{readAsync(binaryFile,response=>resolve(new Uint8Array(response)),error=>{try{resolve(getBinarySync(binaryFile))}catch(e){reject(e)}})})}return Promise.resolve().then(()=>getBinarySync(binaryFile))}function instantiateArrayBuffer(binaryFile,imports,receiver){return getBinaryPromise(binaryFile).then(binary=>WebAssembly.instantiate(binary,imports)).then(receiver,reason=>{err(`failed to asynchronously prepare wasm: ${reason}`);abort(reason)})}function instantiateAsync(binary,binaryFile,imports,callback){if(!binary&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(binaryFile)&&!isFileURI(binaryFile)&&!ENVIRONMENT_IS_NODE&&typeof fetch=="function"){return fetch(binaryFile,{credentials:"same-origin"}).then(response=>{var result=WebAssembly.instantiateStreaming(response,imports);return result.then(callback,function(reason){err(`wasm streaming compile failed: ${reason}`);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(binaryFile,imports,callback)})})}return instantiateArrayBuffer(binaryFile,imports,callback)}function getWasmImports(){return{a:wasmImports}}function createWasm(){var info=getWasmImports();function receiveInstance(instance,module){wasmExports=instance.exports;wasmMemory=wasmExports["q"];updateMemoryViews();addOnInit(wasmExports["r"]);removeRunDependency("wasm-instantiate");return wasmExports}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}if(Module["instantiateWasm"]){try{return Module["instantiateWasm"](info,receiveInstance)}catch(e){err(`Module.instantiateWasm callback failed with error: ${e}`);return false}}if(!wasmBinaryFile)wasmBinaryFile=findWasmBinary();instantiateAsync(wasmBinary,wasmBinaryFile,info,receiveInstantiationResult);return{}}var tempDouble;var tempI64;var ASM_CONSTS={86752:($0,$1,$2,$3,$4)=>{if(typeof window==="undefined"||(window.AudioContext||window.webkitAudioContext)===undefined){return 0}if(typeof window.miniaudio==="undefined"){window.miniaudio={referenceCount:0};window.miniaudio.device_type={};window.miniaudio.device_type.playback=$0;window.miniaudio.device_type.capture=$1;window.miniaudio.device_type.duplex=$2;window.miniaudio.device_state={};window.miniaudio.device_state.stopped=$3;window.miniaudio.device_state.started=$4;let miniaudio=window.miniaudio;miniaudio.devices=[];miniaudio.track_device=function(device){for(var iDevice=0;iDevice0){if(miniaudio.devices[miniaudio.devices.length-1]==null){miniaudio.devices.pop()}else{break}}};miniaudio.untrack_device=function(device){for(var iDevice=0;iDevice{_ma_device__on_notification_unlocked(device.pDevice)},error=>{console.error("Failed to resume audiocontext",error)})}}miniaudio.unlock_event_types.map(function(event_type){document.removeEventListener(event_type,miniaudio.unlock,true)})};miniaudio.unlock_event_types.map(function(event_type){document.addEventListener(event_type,miniaudio.unlock,true)})}window.miniaudio.referenceCount+=1;return 1},88930:()=>{if(typeof window.miniaudio!=="undefined"){miniaudio.unlock_event_types.map(function(event_type){document.removeEventListener(event_type,miniaudio.unlock,true)});window.miniaudio.referenceCount-=1;if(window.miniaudio.referenceCount===0){delete window.miniaudio}}},89220:()=>navigator.mediaDevices!==undefined&&navigator.mediaDevices.getUserMedia!==undefined,89324:()=>{try{var temp=new(window.AudioContext||window.webkitAudioContext);var sampleRate=temp.sampleRate;temp.close();return sampleRate}catch(e){return 0}},89495:($0,$1,$2,$3,$4,$5)=>{var deviceType=$0;var channels=$1;var sampleRate=$2;var bufferSize=$3;var pIntermediaryBuffer=$4;var pDevice=$5;if(typeof window.miniaudio==="undefined"){return-1}var device={};var audioContextOptions={};if(deviceType==window.miniaudio.device_type.playback&&sampleRate!=0){audioContextOptions.sampleRate=sampleRate}device.webaudio=new(window.AudioContext||window.webkitAudioContext)(audioContextOptions);device.webaudio.suspend();device.state=window.miniaudio.device_state.stopped;var channelCountIn=0;var channelCountOut=channels;if(deviceType!=window.miniaudio.device_type.playback){channelCountIn=channels}device.scriptNode=device.webaudio.createScriptProcessor(bufferSize,channelCountIn,channelCountOut);device.scriptNode.onaudioprocess=function(e){if(device.intermediaryBufferView==null||device.intermediaryBufferView.length==0){device.intermediaryBufferView=new Float32Array(HEAPF32.buffer,pIntermediaryBuffer,bufferSize*channels)}if(deviceType==window.miniaudio.device_type.capture||deviceType==window.miniaudio.device_type.duplex){for(var iChannel=0;iChannelwindow.miniaudio.get_device_by_index($0).webaudio.sampleRate,92445:$0=>{var device=window.miniaudio.get_device_by_index($0);if(device.scriptNode!==undefined){device.scriptNode.onaudioprocess=function(e){};device.scriptNode.disconnect();device.scriptNode=undefined}if(device.streamNode!==undefined){device.streamNode.disconnect();device.streamNode=undefined}device.webaudio.close();device.webaudio=undefined;device.pDevice=undefined},92845:$0=>{window.miniaudio.untrack_device_by_index($0)},92895:$0=>{var device=window.miniaudio.get_device_by_index($0);device.webaudio.resume();device.state=window.miniaudio.device_state.started},93034:$0=>{var device=window.miniaudio.get_device_by_index($0);device.webaudio.suspend();device.state=window.miniaudio.device_state.stopped},93174:()=>{if(!Module.wasmWorker){var workerUri="assets/packages/flutter_soloud/web/worker.dart.js";console.log("EM_ASM creating web worker!");Module.wasmWorker=new Worker(workerUri)}else{console.log("EM_ASM web worker already created!")}},93422:($0,$1)=>{if(Module.wasmWorker){console.log("EM_ASM posting message "+UTF8ToString($0)+" with value "+$1);Module.wasmWorker.postMessage(JSON.stringify({message:UTF8ToString($0),value:$1}))}else{console.error("Worker not found.")}}};function ExitStatus(status){this.name="ExitStatus";this.message=`Program terminated with exit(${status})`;this.status=status}Module["ExitStatus"]=ExitStatus;var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};Module["callRuntimeCallbacks"]=callRuntimeCallbacks;function getValue(ptr,type="i8"){if(type.endsWith("*"))type="*";switch(type){case"i1":return SAFE_HEAP_LOAD(ptr,1,0);case"i8":return SAFE_HEAP_LOAD(ptr,1,0);case"i16":return SAFE_HEAP_LOAD((ptr>>1)*2,2,0);case"i32":return SAFE_HEAP_LOAD((ptr>>2)*4,4,0);case"i64":abort("to do getValue(i64) use WASM_BIGINT");case"float":return SAFE_HEAP_LOAD_D((ptr>>2)*4,4,0);case"double":return SAFE_HEAP_LOAD_D((ptr>>3)*8,8,0);case"*":return SAFE_HEAP_LOAD((ptr>>2)*4,4,1);default:abort(`invalid type for getValue: ${type}`)}}Module["getValue"]=getValue;function getValue_safe(ptr,type="i8"){if(type.endsWith("*"))type="*";switch(type){case"i1":return HEAP8[ptr];case"i8":return HEAP8[ptr];case"i16":return HEAP16[ptr>>1];case"i32":return HEAP32[ptr>>2];case"i64":abort("to do getValue(i64) use WASM_BIGINT");case"float":return HEAPF32[ptr>>2];case"double":return HEAPF64[ptr>>3];case"*":return HEAPU32[ptr>>2];default:abort(`invalid type for getValue: ${type}`)}}Module["getValue_safe"]=getValue_safe;var noExitRuntime=Module["noExitRuntime"]||true;Module["noExitRuntime"]=noExitRuntime;function setValue(ptr,value,type="i8"){if(type.endsWith("*"))type="*";switch(type){case"i1":SAFE_HEAP_STORE(ptr,value,1);break;case"i8":SAFE_HEAP_STORE(ptr,value,1);break;case"i16":SAFE_HEAP_STORE((ptr>>1)*2,value,2);break;case"i32":SAFE_HEAP_STORE((ptr>>2)*4,value,4);break;case"i64":abort("to do setValue(i64) use WASM_BIGINT");case"float":SAFE_HEAP_STORE_D((ptr>>2)*4,value,4);break;case"double":SAFE_HEAP_STORE_D((ptr>>3)*8,value,8);break;case"*":SAFE_HEAP_STORE((ptr>>2)*4,value,4);break;default:abort(`invalid type for setValue: ${type}`)}}Module["setValue"]=setValue;function setValue_safe(ptr,value,type="i8"){if(type.endsWith("*"))type="*";switch(type){case"i1":HEAP8[ptr]=value;break;case"i8":HEAP8[ptr]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":abort("to do setValue(i64) use WASM_BIGINT");case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;case"*":HEAPU32[ptr>>2]=value;break;default:abort(`invalid type for setValue: ${type}`)}}Module["setValue_safe"]=setValue_safe;var stackRestore=val=>__emscripten_stack_restore(val);Module["stackRestore"]=stackRestore;var stackSave=()=>_emscripten_stack_get_current();Module["stackSave"]=stackSave;var unSign=(value,bits)=>{if(value>=0){return value}return bits<=32?2*Math.abs(1<{var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str="";while(idx>10,56320|ch&1023)}}return str};Module["UTF8ArrayToString"]=UTF8ArrayToString;var UTF8ToString=(ptr,maxBytesToRead)=>ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):"";Module["UTF8ToString"]=UTF8ToString;var ___assert_fail=(condition,filename,line,func)=>{abort(`Assertion failed: ${UTF8ToString(condition)}, at: `+[filename?UTF8ToString(filename):"unknown filename",line,func?UTF8ToString(func):"unknown function"])};Module["___assert_fail"]=___assert_fail;class ExceptionInfo{constructor(excPtr){this.excPtr=excPtr;this.ptr=excPtr-24}set_type(type){SAFE_HEAP_STORE((this.ptr+4>>2)*4,type,4)}get_type(){return SAFE_HEAP_LOAD((this.ptr+4>>2)*4,4,1)}set_destructor(destructor){SAFE_HEAP_STORE((this.ptr+8>>2)*4,destructor,4)}get_destructor(){return SAFE_HEAP_LOAD((this.ptr+8>>2)*4,4,1)}set_caught(caught){caught=caught?1:0;SAFE_HEAP_STORE(this.ptr+12,caught,1)}get_caught(){return SAFE_HEAP_LOAD(this.ptr+12,1,0)!=0}set_rethrown(rethrown){rethrown=rethrown?1:0;SAFE_HEAP_STORE(this.ptr+13,rethrown,1)}get_rethrown(){return SAFE_HEAP_LOAD(this.ptr+13,1,0)!=0}init(type,destructor){this.set_adjusted_ptr(0);this.set_type(type);this.set_destructor(destructor)}set_adjusted_ptr(adjustedPtr){SAFE_HEAP_STORE((this.ptr+16>>2)*4,adjustedPtr,4)}get_adjusted_ptr(){return SAFE_HEAP_LOAD((this.ptr+16>>2)*4,4,1)}get_exception_ptr(){var isPointer=___cxa_is_pointer_type(this.get_type());if(isPointer){return SAFE_HEAP_LOAD((this.excPtr>>2)*4,4,1)}var adjusted=this.get_adjusted_ptr();if(adjusted!==0)return adjusted;return this.excPtr}}Module["ExceptionInfo"]=ExceptionInfo;var exceptionLast=0;Module["exceptionLast"]=exceptionLast;var uncaughtExceptionCount=0;Module["uncaughtExceptionCount"]=uncaughtExceptionCount;var ___cxa_throw=(ptr,type,destructor)=>{var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw exceptionLast};Module["___cxa_throw"]=___cxa_throw;function syscallGetVarargI(){var ret=SAFE_HEAP_LOAD((+SYSCALLS.varargs>>2)*4,4,0);SYSCALLS.varargs+=4;return ret}Module["syscallGetVarargI"]=syscallGetVarargI;var syscallGetVarargP=syscallGetVarargI;Module["syscallGetVarargP"]=syscallGetVarargP;var PATH={isAbs:path=>path.charAt(0)==="/",splitPath:filename=>{var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:(parts,allowAboveRoot)=>{var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:path=>{var isAbsolute=PATH.isAbs(path),trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(p=>!!p),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:path=>{var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:path=>{if(path==="/")return"/";path=PATH.normalize(path);path=path.replace(/\/$/,"");var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},join:(...paths)=>PATH.normalize(paths.join("/")),join2:(l,r)=>PATH.normalize(l+"/"+r)};Module["PATH"]=PATH;var initRandomFill=()=>{if(typeof crypto=="object"&&typeof crypto["getRandomValues"]=="function"){return view=>crypto.getRandomValues(view)}else if(ENVIRONMENT_IS_NODE){try{var crypto_module=require("crypto");var randomFillSync=crypto_module["randomFillSync"];if(randomFillSync){return view=>crypto_module["randomFillSync"](view)}var randomBytes=crypto_module["randomBytes"];return view=>(view.set(randomBytes(view.byteLength)),view)}catch(e){}}abort("initRandomDevice")};Module["initRandomFill"]=initRandomFill;var randomFill=view=>(randomFill=initRandomFill())(view);Module["randomFill"]=randomFill;var PATH_FS={resolve:(...args)=>{var resolvedPath="",resolvedAbsolute=false;for(var i=args.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?args[i]:FS.cwd();if(typeof path!="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=PATH.isAbs(path)}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(p=>!!p),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:(from,to)=>{from=PATH_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i{var len=0;for(var i=0;i=55296&&c<=57343){len+=4;++i}else{len+=3}}return len};Module["lengthBytesUTF8"]=lengthBytesUTF8;var stringToUTF8Array=(str,heap,outIdx,maxBytesToWrite)=>{if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx};Module["stringToUTF8Array"]=stringToUTF8Array;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;var FS_stdin_getChar=()=>{if(!FS_stdin_getChar_buffer.length){var result=null;if(ENVIRONMENT_IS_NODE){var BUFSIZE=256;var buf=Buffer.alloc(BUFSIZE);var bytesRead=0;var fd=process.stdin.fd;try{bytesRead=fs.readSync(fd,buf,0,BUFSIZE)}catch(e){if(e.toString().includes("EOF"))bytesRead=0;else throw e}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else{}if(!result){return null}FS_stdin_getChar_buffer=intArrayFromString(result,true)}return FS_stdin_getChar_buffer.shift()};Module["FS_stdin_getChar"]=FS_stdin_getChar;var TTY={ttys:[],init(){},shutdown(){},register(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)},stream_ops:{open(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(43)}stream.tty=tty;stream.seekable=false},close(stream){stream.tty.ops.fsync(stream.tty)},fsync(stream){stream.tty.ops.fsync(stream.tty)},read(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(60)}var bytesRead=0;for(var i=0;i0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}},ioctl_tcgets(tty){return{c_iflag:25856,c_oflag:5,c_cflag:191,c_lflag:35387,c_cc:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}},ioctl_tcsets(tty,optional_actions,data){return 0},ioctl_tiocgwinsz(tty){return[24,80]}},default_tty1_ops:{put_char(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},fsync(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};Module["TTY"]=TTY;var zeroMemory=(address,size)=>{HEAPU8.fill(0,address,address+size);return address};Module["zeroMemory"]=zeroMemory;var alignMemory=(size,alignment)=>Math.ceil(size/alignment)*alignment;Module["alignMemory"]=alignMemory;var mmapAlloc=size=>{abort()};Module["mmapAlloc"]=mmapAlloc;var MEMFS={ops_table:null,mount(mount){return MEMFS.createNode(null,"/",16384|511,0)},createNode(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}MEMFS.ops_table||={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}};var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node;parent.timestamp=node.timestamp}return node},getFileDataAsTypedArray(node){if(!node.contents)return new Uint8Array(0);if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)},expandFileStorage(node,newCapacity){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity>>0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0)},resizeFileStorage(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0}else{var oldContents=node.contents;node.contents=new Uint8Array(newSize);if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize}},node_ops:{getattr(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr},setattr(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}},lookup(parent,name){throw FS.genericErrors[44]},mknod(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)},rename(old_node,new_dir,new_name){if(FS.isDir(old_node.mode)){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){for(var i in new_node.contents){throw new FS.ErrnoError(55)}}}delete old_node.parent.contents[old_node.name];old_node.parent.timestamp=Date.now();old_node.name=new_name;new_dir.contents[new_name]=old_node;new_dir.timestamp=old_node.parent.timestamp},unlink(parent,name){delete parent.contents[name];parent.timestamp=Date.now()},rmdir(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(55)}delete parent.contents[name];parent.timestamp=Date.now()},readdir(node){var entries=[".",".."];for(var key of Object.keys(node.contents)){entries.push(key)}return entries},symlink(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node},readlink(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(28)}return node.link}},stream_ops:{read(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length{var dep=!noRunDep?getUniqueRunDependency(`al ${url}`):"";readAsync(url,arrayBuffer=>{onload(new Uint8Array(arrayBuffer));if(dep)removeRunDependency(dep)},event=>{if(onerror){onerror()}else{throw`Loading data file "${url}" failed.`}});if(dep)addRunDependency(dep)};Module["asyncLoad"]=asyncLoad;var FS_createDataFile=(parent,name,fileData,canRead,canWrite,canOwn)=>{FS.createDataFile(parent,name,fileData,canRead,canWrite,canOwn)};Module["FS_createDataFile"]=FS_createDataFile;var preloadPlugins=Module["preloadPlugins"]||[];Module["preloadPlugins"]=preloadPlugins;var FS_handledByPreloadPlugin=(byteArray,fullname,finish,onerror)=>{if(typeof Browser!="undefined")Browser.init();var handled=false;preloadPlugins.forEach(plugin=>{if(handled)return;if(plugin["canHandle"](fullname)){plugin["handle"](byteArray,fullname,finish,onerror);handled=true}});return handled};Module["FS_handledByPreloadPlugin"]=FS_handledByPreloadPlugin;var FS_createPreloadedFile=(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish)=>{var fullname=name?PATH_FS.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency(`cp ${fullname}`);function processData(byteArray){function finish(byteArray){preFinish?.();if(!dontCreateFile){FS_createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}onload?.();removeRunDependency(dep)}if(FS_handledByPreloadPlugin(byteArray,fullname,finish,()=>{onerror?.();removeRunDependency(dep)})){return}finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){asyncLoad(url,processData,onerror)}else{processData(url)}};Module["FS_createPreloadedFile"]=FS_createPreloadedFile;var FS_modeStringToFlags=str=>{var flagModes={r:0,"r+":2,w:512|64|1,"w+":512|64|2,a:1024|64|1,"a+":1024|64|2};var flags=flagModes[str];if(typeof flags=="undefined"){throw new Error(`Unknown file open mode: ${str}`)}return flags};Module["FS_modeStringToFlags"]=FS_modeStringToFlags;var FS_getMode=(canRead,canWrite)=>{var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode};Module["FS_getMode"]=FS_getMode;var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,ErrnoError:class{constructor(errno){this.name="ErrnoError";this.errno=errno}},genericErrors:{},filesystems:null,syncFSRequests:0,FSStream:class{constructor(){this.shared={}}get object(){return this.node}set object(val){this.node=val}get isRead(){return(this.flags&2097155)!==1}get isWrite(){return(this.flags&2097155)!==0}get isAppend(){return this.flags&1024}get flags(){return this.shared.flags}set flags(val){this.shared.flags=val}get position(){return this.shared.position}set position(val){this.shared.position=val}},FSNode:class{constructor(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev;this.readMode=292|73;this.writeMode=146}get read(){return(this.mode&this.readMode)===this.readMode}set read(val){val?this.mode|=this.readMode:this.mode&=~this.readMode}get write(){return(this.mode&this.writeMode)===this.writeMode}set write(val){val?this.mode|=this.writeMode:this.mode&=~this.writeMode}get isFolder(){return FS.isDir(this.mode)}get isDevice(){return FS.isChrdev(this.mode)}},lookupPath(path,opts={}){path=PATH_FS.resolve(path);if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};opts=Object.assign(defaults,opts);if(opts.recurse_count>8){throw new FS.ErrnoError(32)}var parts=path.split("/").filter(p=>!!p);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(32)}}}}return{path:current_path,node:current}},getPath(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?`${mount}/${path}`:mount+path}path=path?`${node.name}/${path}`:node.name;node=node.parent}},hashName(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length},hashAddNode(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode(parent,name){var errCode=FS.mayLookup(parent);if(errCode){throw new FS.ErrnoError(errCode)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode(parent,name,mode,rdev){var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode(node){FS.hashRemoveNode(node)},isRoot(node){return node===node.parent},isMountpoint(node){return!!node.mounted},isFile(mode){return(mode&61440)===32768},isDir(mode){return(mode&61440)===16384},isLink(mode){return(mode&61440)===40960},isChrdev(mode){return(mode&61440)===8192},isBlkdev(mode){return(mode&61440)===24576},isFIFO(mode){return(mode&61440)===4096},isSocket(mode){return(mode&49152)===49152},flagsToPermissionString(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions(node,perms){if(FS.ignorePermissions){return 0}if(perms.includes("r")&&!(node.mode&292)){return 2}else if(perms.includes("w")&&!(node.mode&146)){return 2}else if(perms.includes("x")&&!(node.mode&73)){return 2}return 0},mayLookup(dir){if(!FS.isDir(dir.mode))return 54;var errCode=FS.nodePermissions(dir,"x");if(errCode)return errCode;if(!dir.node_ops.lookup)return 2;return 0},mayCreate(dir,name){try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var errCode=FS.nodePermissions(dir,"wx");if(errCode){return errCode}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen(node,flags){if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd(){for(var fd=0;fd<=FS.MAX_OPEN_FDS;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStreamChecked(fd){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}return stream},getStream:fd=>FS.streams[fd],createStream(stream,fd=-1){stream=Object.assign(new FS.FSStream,stream);if(fd==-1){fd=FS.nextfd()}stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream(fd){FS.streams[fd]=null},dupStream(origStream,fd=-1){var stream=FS.createStream(origStream,fd);stream.stream_ops?.dup?.(stream);return stream},chrdev_stream_ops:{open(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;stream.stream_ops.open?.(stream)},llseek(){throw new FS.ErrnoError(70)}},major:dev=>dev>>8,minor:dev=>dev&255,makedev:(ma,mi)=>ma<<8|mi,registerDevice(dev,ops){FS.devices[dev]={stream_ops:ops}},getDevice:dev=>FS.devices[dev],getMounts(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push(...m.mounts)}return mounts},syncfs(populate,callback){if(typeof populate=="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){err(`warning: ${FS.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`)}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(errCode){FS.syncFSRequests--;return callback(errCode)}function done(errCode){if(errCode){if(!done.errored){done.errored=true;return doCallback(errCode)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(mount=>{if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(hash=>{var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.includes(current.mount)){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup(parent,name){return parent.node_ops.lookup(parent,name)},mknod(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(28)}var errCode=FS.mayCreate(parent,name);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},create(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree(path,mode){var dirs=path.split("/");var d="";for(var i=0;iFS.currentPath,chdir(path){var lookup=FS.lookupPath(path,{follow:true});if(lookup.node===null){throw new FS.ErrnoError(44)}if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(54)}var errCode=FS.nodePermissions(lookup.node,"x");if(errCode){throw new FS.ErrnoError(errCode)}FS.currentPath=lookup.path},createDefaultDirectories(){FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")},createDefaultDevices(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:()=>0,write:(stream,buffer,offset,length,pos)=>length});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var randomBuffer=new Uint8Array(1024),randomLeft=0;var randomByte=()=>{if(randomLeft===0){randomLeft=randomFill(randomBuffer).byteLength}return randomBuffer[--randomLeft]};FS.createDevice("/dev","random",randomByte);FS.createDevice("/dev","urandom",randomByte);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")},createSpecialDirectories(){FS.mkdir("/proc");var proc_self=FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount(){var node=FS.createNode(proc_self,"fd",16384|511,73);node.node_ops={lookup(parent,name){var fd=+name;var stream=FS.getStreamChecked(fd);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>stream.path}};ret.parent=ret;return ret}};return node}},{},"/proc/self/fd")},createStandardStreams(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin",0);var stdout=FS.open("/dev/stdout",1);var stderr=FS.open("/dev/stderr",1)},staticInit(){[44].forEach(code=>{FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack=""});FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={MEMFS:MEMFS}},init(input,output,error){FS.init.initialized=true;Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()},quit(){FS.init.initialized=false;for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]}setDataGetter(getter){this.getter=getter}cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(from,to)=>{if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}return intArrayFromString(xhr.responseText||"",true)};var lazyArray=this;lazyArray.setDataGetter(chunkNum=>{var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]=="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]=="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;out("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true}get length(){if(!this.lengthKnown){this.cacheLength()}return this._length}get chunkSize(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}if(typeof XMLHttpRequest!="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(key=>{var fn=node.stream_ops[key];stream_ops[key]=(...args)=>{FS.forceLoadFile(node);return fn(...args)}});function writeChunks(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i{FS.forceLoadFile(node);return writeChunks(stream,buffer,offset,length,position)};stream_ops.mmap=(stream,length,position,prot,flags)=>{FS.forceLoadFile(node);var ptr=mmapAlloc(length);if(!ptr){throw new FS.ErrnoError(48)}writeChunks(stream,HEAP8,ptr,length,position);return{ptr:ptr,allocated:true}};node.stream_ops=stream_ops;return node}};Module["FS"]=FS;var SYSCALLS={DEFAULT_POLLMASK:5,calculateAt(dirfd,path,allowEmpty){if(PATH.isAbs(path)){return path}var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=SYSCALLS.getStreamFromFD(dirfd);dir=dirstream.path}if(path.length==0){if(!allowEmpty){throw new FS.ErrnoError(44)}return dir}return PATH.join2(dir,path)},doStat(func,path,buf){var stat=func(path);SAFE_HEAP_STORE((buf>>2)*4,stat.dev,4);SAFE_HEAP_STORE((buf+4>>2)*4,stat.mode,4);SAFE_HEAP_STORE((buf+8>>2)*4,stat.nlink,4);SAFE_HEAP_STORE((buf+12>>2)*4,stat.uid,4);SAFE_HEAP_STORE((buf+16>>2)*4,stat.gid,4);SAFE_HEAP_STORE((buf+20>>2)*4,stat.rdev,4);tempI64=[stat.size>>>0,(tempDouble=stat.size,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE((buf+24>>2)*4,tempI64[0],4),SAFE_HEAP_STORE((buf+28>>2)*4,tempI64[1],4);SAFE_HEAP_STORE((buf+32>>2)*4,4096,4);SAFE_HEAP_STORE((buf+36>>2)*4,stat.blocks,4);var atime=stat.atime.getTime();var mtime=stat.mtime.getTime();var ctime=stat.ctime.getTime();tempI64=[Math.floor(atime/1e3)>>>0,(tempDouble=Math.floor(atime/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE((buf+40>>2)*4,tempI64[0],4),SAFE_HEAP_STORE((buf+44>>2)*4,tempI64[1],4);SAFE_HEAP_STORE((buf+48>>2)*4,atime%1e3*1e3,4);tempI64=[Math.floor(mtime/1e3)>>>0,(tempDouble=Math.floor(mtime/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE((buf+56>>2)*4,tempI64[0],4),SAFE_HEAP_STORE((buf+60>>2)*4,tempI64[1],4);SAFE_HEAP_STORE((buf+64>>2)*4,mtime%1e3*1e3,4);tempI64=[Math.floor(ctime/1e3)>>>0,(tempDouble=Math.floor(ctime/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE((buf+72>>2)*4,tempI64[0],4),SAFE_HEAP_STORE((buf+76>>2)*4,tempI64[1],4);SAFE_HEAP_STORE((buf+80>>2)*4,ctime%1e3*1e3,4);tempI64=[stat.ino>>>0,(tempDouble=stat.ino,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE((buf+88>>2)*4,tempI64[0],4),SAFE_HEAP_STORE((buf+92>>2)*4,tempI64[1],4);return 0},doMsync(addr,stream,len,flags,offset){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}if(flags&2){return 0}var buffer=HEAPU8.slice(addr,addr+len);FS.msync(stream,buffer,offset,len,flags)},getStreamFromFD(fd){var stream=FS.getStreamChecked(fd);return stream},varargs:undefined,getStr(ptr){var ret=UTF8ToString(ptr);return ret}};Module["SYSCALLS"]=SYSCALLS;function ___syscall_fcntl64(fd,cmd,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(cmd){case 0:{var arg=syscallGetVarargI();if(arg<0){return-28}while(FS.streams[arg]){arg++}var newStream;newStream=FS.dupStream(stream,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=syscallGetVarargI();stream.flags|=arg;return 0}case 12:{var arg=syscallGetVarargP();var offset=0;SAFE_HEAP_STORE((arg+offset>>1)*2,2,2);return 0}case 13:case 14:return 0}return-28}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}Module["___syscall_fcntl64"]=___syscall_fcntl64;function ___syscall_ioctl(fd,op,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(op){case 21509:{if(!stream.tty)return-59;return 0}case 21505:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tcgets){var termios=stream.tty.ops.ioctl_tcgets(stream);var argp=syscallGetVarargP();SAFE_HEAP_STORE((argp>>2)*4,termios.c_iflag||0,4);SAFE_HEAP_STORE((argp+4>>2)*4,termios.c_oflag||0,4);SAFE_HEAP_STORE((argp+8>>2)*4,termios.c_cflag||0,4);SAFE_HEAP_STORE((argp+12>>2)*4,termios.c_lflag||0,4);for(var i=0;i<32;i++){SAFE_HEAP_STORE(argp+i+17,termios.c_cc[i]||0,1)}return 0}return 0}case 21510:case 21511:case 21512:{if(!stream.tty)return-59;return 0}case 21506:case 21507:case 21508:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tcsets){var argp=syscallGetVarargP();var c_iflag=SAFE_HEAP_LOAD((argp>>2)*4,4,0);var c_oflag=SAFE_HEAP_LOAD((argp+4>>2)*4,4,0);var c_cflag=SAFE_HEAP_LOAD((argp+8>>2)*4,4,0);var c_lflag=SAFE_HEAP_LOAD((argp+12>>2)*4,4,0);var c_cc=[];for(var i=0;i<32;i++){c_cc.push(SAFE_HEAP_LOAD(argp+i+17,1,0))}return stream.tty.ops.ioctl_tcsets(stream.tty,op,{c_iflag:c_iflag,c_oflag:c_oflag,c_cflag:c_cflag,c_lflag:c_lflag,c_cc:c_cc})}return 0}case 21519:{if(!stream.tty)return-59;var argp=syscallGetVarargP();SAFE_HEAP_STORE((argp>>2)*4,0,4);return 0}case 21520:{if(!stream.tty)return-59;return-28}case 21531:{var argp=syscallGetVarargP();return FS.ioctl(stream,op,argp)}case 21523:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tiocgwinsz){var winsize=stream.tty.ops.ioctl_tiocgwinsz(stream.tty);var argp=syscallGetVarargP();SAFE_HEAP_STORE((argp>>1)*2,winsize[0],2);SAFE_HEAP_STORE((argp+2>>1)*2,winsize[1],2)}return 0}case 21524:{if(!stream.tty)return-59;return 0}case 21515:{if(!stream.tty)return-59;return 0}default:return-28}}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}Module["___syscall_ioctl"]=___syscall_ioctl;function ___syscall_openat(dirfd,path,flags,varargs){SYSCALLS.varargs=varargs;try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);var mode=varargs?syscallGetVarargI():0;return FS.open(path,flags,mode).fd}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}Module["___syscall_openat"]=___syscall_openat;var __abort_js=()=>{abort("")};Module["__abort_js"]=__abort_js;var __emscripten_memcpy_js=(dest,src,num)=>HEAPU8.copyWithin(dest,src,src+num);Module["__emscripten_memcpy_js"]=__emscripten_memcpy_js;var readEmAsmArgsArray=[];Module["readEmAsmArgsArray"]=readEmAsmArgsArray;var readEmAsmArgs=(sigPtr,buf)=>{readEmAsmArgsArray.length=0;var ch;while(ch=SAFE_HEAP_LOAD(sigPtr++,1,1)){var wide=ch!=105;wide&=ch!=112;buf+=wide&&buf%8?4:0;readEmAsmArgsArray.push(ch==112?SAFE_HEAP_LOAD((buf>>2)*4,4,1):ch==105?SAFE_HEAP_LOAD((buf>>2)*4,4,0):SAFE_HEAP_LOAD_D((buf>>3)*8,8,0));buf+=wide?8:4}return readEmAsmArgsArray};Module["readEmAsmArgs"]=readEmAsmArgs;var runEmAsmFunction=(code,sigPtr,argbuf)=>{var args=readEmAsmArgs(sigPtr,argbuf);return ASM_CONSTS[code](...args)};Module["runEmAsmFunction"]=runEmAsmFunction;var _emscripten_asm_const_int=(code,sigPtr,argbuf)=>runEmAsmFunction(code,sigPtr,argbuf);Module["_emscripten_asm_const_int"]=_emscripten_asm_const_int;var getHeapMax=()=>2147483648;Module["getHeapMax"]=getHeapMax;var growMemory=size=>{var b=wasmMemory.buffer;var pages=(size-b.byteLength+65535)/65536;try{wasmMemory.grow(pages);updateMemoryViews();return 1}catch(e){}};Module["growMemory"]=growMemory;var _emscripten_resize_heap=requestedSize=>{var oldSize=HEAPU8.length;requestedSize>>>=0;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}var alignUp=(x,multiple)=>x+(multiple-x%multiple)%multiple;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=growMemory(newSize);if(replacement){return true}}return false};Module["_emscripten_resize_heap"]=_emscripten_resize_heap;function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}Module["_fd_close"]=_fd_close;var doReadv=(stream,iov,iovcnt,offset)=>{var ret=0;for(var i=0;i>2)*4,4,1);var len=SAFE_HEAP_LOAD((iov+4>>2)*4,4,1);iov+=8;var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2)*4,num,4);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}Module["_fd_read"]=_fd_read;var convertI32PairToI53Checked=(lo,hi)=>hi+2097152>>>0<4194305-!!lo?(lo>>>0)+hi*4294967296:NaN;Module["convertI32PairToI53Checked"]=convertI32PairToI53Checked;function _fd_seek(fd,offset_low,offset_high,whence,newOffset){var offset=convertI32PairToI53Checked(offset_low,offset_high);try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);FS.llseek(stream,offset,whence);tempI64=[stream.position>>>0,(tempDouble=stream.position,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],SAFE_HEAP_STORE((newOffset>>2)*4,tempI64[0],4),SAFE_HEAP_STORE((newOffset+4>>2)*4,tempI64[1],4);if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}Module["_fd_seek"]=_fd_seek;var doWritev=(stream,iov,iovcnt,offset)=>{var ret=0;for(var i=0;i>2)*4,4,1);var len=SAFE_HEAP_LOAD((iov+4>>2)*4,4,1);iov+=8;var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(typeof offset!="undefined"){offset+=curr}}return ret};Module["doWritev"]=doWritev;function _fd_write(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=doWritev(stream,iov,iovcnt);SAFE_HEAP_STORE((pnum>>2)*4,num,4);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}Module["_fd_write"]=_fd_write;var _getentropy=(buffer,size)=>{randomFill(HEAPU8.subarray(buffer,buffer+size));return 0};Module["_getentropy"]=_getentropy;var getCFunc=ident=>{var func=Module["_"+ident];return func};Module["getCFunc"]=getCFunc;var writeArrayToMemory=(array,buffer)=>{HEAP8.set(array,buffer)};Module["writeArrayToMemory"]=writeArrayToMemory;var stringToUTF8=(str,outPtr,maxBytesToWrite)=>stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite);Module["stringToUTF8"]=stringToUTF8;var stackAlloc=sz=>__emscripten_stack_alloc(sz);Module["stackAlloc"]=stackAlloc;var stringToUTF8OnStack=str=>{var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8(str,ret,size);return ret};Module["stringToUTF8OnStack"]=stringToUTF8OnStack;var ccall=(ident,returnType,argTypes,args,opts)=>{var toC={string:str=>{var ret=0;if(str!==null&&str!==undefined&&str!==0){ret=stringToUTF8OnStack(str)}return ret},array:arr=>{var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string"){return UTF8ToString(ret)}if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i{var numericArgs=!argTypes||argTypes.every(type=>type==="number"||type==="boolean");var numericRet=returnType!=="string";if(numericRet&&numericArgs&&!opts){return getCFunc(ident)}return(...args)=>ccall(ident,returnType,argTypes,args,opts)};Module["cwrap"]=cwrap;FS.createPreloadedFile=FS_createPreloadedFile;FS.staticInit();var wasmImports={a:___assert_fail,h:___cxa_throw,g:___syscall_fcntl64,j:___syscall_ioctl,k:___syscall_openat,o:__abort_js,l:__emscripten_memcpy_js,c:alignfault,d:_emscripten_asm_const_int,p:_emscripten_resize_heap,e:_fd_close,i:_fd_read,m:_fd_seek,f:_fd_write,n:_getentropy,b:segfault};var wasmExports=createWasm();var ___wasm_call_ctors=()=>(___wasm_call_ctors=wasmExports["r"])();var _malloc=Module["_malloc"]=a0=>(_malloc=Module["_malloc"]=wasmExports["t"])(a0);var _free=Module["_free"]=a0=>(_free=Module["_free"]=wasmExports["u"])(a0);var _ma_device__on_notification_unlocked=Module["_ma_device__on_notification_unlocked"]=a0=>(_ma_device__on_notification_unlocked=Module["_ma_device__on_notification_unlocked"]=wasmExports["v"])(a0);var _ma_malloc_emscripten=Module["_ma_malloc_emscripten"]=(a0,a1)=>(_ma_malloc_emscripten=Module["_ma_malloc_emscripten"]=wasmExports["w"])(a0,a1);var _ma_free_emscripten=Module["_ma_free_emscripten"]=(a0,a1)=>(_ma_free_emscripten=Module["_ma_free_emscripten"]=wasmExports["x"])(a0,a1);var _ma_device_process_pcm_frames_capture__webaudio=Module["_ma_device_process_pcm_frames_capture__webaudio"]=(a0,a1,a2)=>(_ma_device_process_pcm_frames_capture__webaudio=Module["_ma_device_process_pcm_frames_capture__webaudio"]=wasmExports["y"])(a0,a1,a2);var _ma_device_process_pcm_frames_playback__webaudio=Module["_ma_device_process_pcm_frames_playback__webaudio"]=(a0,a1,a2)=>(_ma_device_process_pcm_frames_playback__webaudio=Module["_ma_device_process_pcm_frames_playback__webaudio"]=wasmExports["z"])(a0,a1,a2);var _createWorkerInWasm=Module["_createWorkerInWasm"]=()=>(_createWorkerInWasm=Module["_createWorkerInWasm"]=wasmExports["A"])();var _sendToWorker=Module["_sendToWorker"]=(a0,a1)=>(_sendToWorker=Module["_sendToWorker"]=wasmExports["B"])(a0,a1);var _nativeFree=Module["_nativeFree"]=a0=>(_nativeFree=Module["_nativeFree"]=wasmExports["C"])(a0);var _voiceEndedCallback=Module["_voiceEndedCallback"]=a0=>(_voiceEndedCallback=Module["_voiceEndedCallback"]=wasmExports["D"])(a0);var _setDartEventCallback=Module["_setDartEventCallback"]=(a0,a1,a2)=>(_setDartEventCallback=Module["_setDartEventCallback"]=wasmExports["E"])(a0,a1,a2);var _initEngine=Module["_initEngine"]=(a0,a1,a2)=>(_initEngine=Module["_initEngine"]=wasmExports["F"])(a0,a1,a2);var _dispose=Module["_dispose"]=()=>(_dispose=Module["_dispose"]=wasmExports["G"])();var _isInited=Module["_isInited"]=()=>(_isInited=Module["_isInited"]=wasmExports["H"])();var _loadFile=Module["_loadFile"]=(a0,a1)=>(_loadFile=Module["_loadFile"]=wasmExports["I"])(a0,a1);var _loadMem=Module["_loadMem"]=(a0,a1,a2,a3,a4)=>(_loadMem=Module["_loadMem"]=wasmExports["J"])(a0,a1,a2,a3,a4);var _loadWaveform=Module["_loadWaveform"]=(a0,a1,a2,a3,a4)=>(_loadWaveform=Module["_loadWaveform"]=wasmExports["K"])(a0,a1,a2,a3,a4);var _setWaveformScale=Module["_setWaveformScale"]=(a0,a1)=>(_setWaveformScale=Module["_setWaveformScale"]=wasmExports["L"])(a0,a1);var _setWaveformDetune=Module["_setWaveformDetune"]=(a0,a1)=>(_setWaveformDetune=Module["_setWaveformDetune"]=wasmExports["M"])(a0,a1);var _setWaveformFreq=Module["_setWaveformFreq"]=(a0,a1)=>(_setWaveformFreq=Module["_setWaveformFreq"]=wasmExports["N"])(a0,a1);var _setSuperWave=Module["_setSuperWave"]=(a0,a1)=>(_setSuperWave=Module["_setSuperWave"]=wasmExports["O"])(a0,a1);var _setWaveform=Module["_setWaveform"]=(a0,a1)=>(_setWaveform=Module["_setWaveform"]=wasmExports["P"])(a0,a1);var _speechText=Module["_speechText"]=(a0,a1)=>(_speechText=Module["_speechText"]=wasmExports["Q"])(a0,a1);var _pauseSwitch=Module["_pauseSwitch"]=a0=>(_pauseSwitch=Module["_pauseSwitch"]=wasmExports["R"])(a0);var _setPause=Module["_setPause"]=(a0,a1)=>(_setPause=Module["_setPause"]=wasmExports["S"])(a0,a1);var _getPause=Module["_getPause"]=a0=>(_getPause=Module["_getPause"]=wasmExports["T"])(a0);var _setRelativePlaySpeed=Module["_setRelativePlaySpeed"]=(a0,a1)=>(_setRelativePlaySpeed=Module["_setRelativePlaySpeed"]=wasmExports["U"])(a0,a1);var _getRelativePlaySpeed=Module["_getRelativePlaySpeed"]=a0=>(_getRelativePlaySpeed=Module["_getRelativePlaySpeed"]=wasmExports["V"])(a0);var _play=Module["_play"]=(a0,a1,a2,a3,a4,a5,a6)=>(_play=Module["_play"]=wasmExports["W"])(a0,a1,a2,a3,a4,a5,a6);var _stop=Module["_stop"]=a0=>(_stop=Module["_stop"]=wasmExports["X"])(a0);var _disposeSound=Module["_disposeSound"]=a0=>(_disposeSound=Module["_disposeSound"]=wasmExports["Y"])(a0);var _disposeAllSound=Module["_disposeAllSound"]=()=>(_disposeAllSound=Module["_disposeAllSound"]=wasmExports["Z"])();var _getLooping=Module["_getLooping"]=a0=>(_getLooping=Module["_getLooping"]=wasmExports["_"])(a0);var _setLooping=Module["_setLooping"]=(a0,a1)=>(_setLooping=Module["_setLooping"]=wasmExports["$"])(a0,a1);var _getLoopPoint=Module["_getLoopPoint"]=a0=>(_getLoopPoint=Module["_getLoopPoint"]=wasmExports["aa"])(a0);var _setLoopPoint=Module["_setLoopPoint"]=(a0,a1)=>(_setLoopPoint=Module["_setLoopPoint"]=wasmExports["ba"])(a0,a1);var _setVisualizationEnabled=Module["_setVisualizationEnabled"]=a0=>(_setVisualizationEnabled=Module["_setVisualizationEnabled"]=wasmExports["ca"])(a0);var _getVisualizationEnabled=Module["_getVisualizationEnabled"]=()=>(_getVisualizationEnabled=Module["_getVisualizationEnabled"]=wasmExports["da"])();var _getFft=Module["_getFft"]=a0=>(_getFft=Module["_getFft"]=wasmExports["ea"])(a0);var _getWave=Module["_getWave"]=a0=>(_getWave=Module["_getWave"]=wasmExports["fa"])(a0);var _setFftSmoothing=Module["_setFftSmoothing"]=a0=>(_setFftSmoothing=Module["_setFftSmoothing"]=wasmExports["ga"])(a0);var _getAudioTexture=Module["_getAudioTexture"]=a0=>(_getAudioTexture=Module["_getAudioTexture"]=wasmExports["ha"])(a0);var _getAudioTexture2D=Module["_getAudioTexture2D"]=a0=>(_getAudioTexture2D=Module["_getAudioTexture2D"]=wasmExports["ia"])(a0);var _getTextureValue=Module["_getTextureValue"]=(a0,a1)=>(_getTextureValue=Module["_getTextureValue"]=wasmExports["ja"])(a0,a1);var _getLength=Module["_getLength"]=a0=>(_getLength=Module["_getLength"]=wasmExports["ka"])(a0);var _seek=Module["_seek"]=(a0,a1)=>(_seek=Module["_seek"]=wasmExports["la"])(a0,a1);var _getPosition=Module["_getPosition"]=a0=>(_getPosition=Module["_getPosition"]=wasmExports["ma"])(a0);var _getGlobalVolume=Module["_getGlobalVolume"]=()=>(_getGlobalVolume=Module["_getGlobalVolume"]=wasmExports["na"])();var _setGlobalVolume=Module["_setGlobalVolume"]=a0=>(_setGlobalVolume=Module["_setGlobalVolume"]=wasmExports["oa"])(a0);var _getVolume=Module["_getVolume"]=a0=>(_getVolume=Module["_getVolume"]=wasmExports["pa"])(a0);var _setVolume=Module["_setVolume"]=(a0,a1)=>(_setVolume=Module["_setVolume"]=wasmExports["qa"])(a0,a1);var _getPan=Module["_getPan"]=a0=>(_getPan=Module["_getPan"]=wasmExports["ra"])(a0);var _setPan=Module["_setPan"]=(a0,a1)=>(_setPan=Module["_setPan"]=wasmExports["sa"])(a0,a1);var _setPanAbsolute=Module["_setPanAbsolute"]=(a0,a1,a2)=>(_setPanAbsolute=Module["_setPanAbsolute"]=wasmExports["ta"])(a0,a1,a2);var _getIsValidVoiceHandle=Module["_getIsValidVoiceHandle"]=a0=>(_getIsValidVoiceHandle=Module["_getIsValidVoiceHandle"]=wasmExports["ua"])(a0);var _getActiveVoiceCount=Module["_getActiveVoiceCount"]=()=>(_getActiveVoiceCount=Module["_getActiveVoiceCount"]=wasmExports["va"])();var _countAudioSource=Module["_countAudioSource"]=a0=>(_countAudioSource=Module["_countAudioSource"]=wasmExports["wa"])(a0);var _getVoiceCount=Module["_getVoiceCount"]=()=>(_getVoiceCount=Module["_getVoiceCount"]=wasmExports["xa"])();var _getProtectVoice=Module["_getProtectVoice"]=a0=>(_getProtectVoice=Module["_getProtectVoice"]=wasmExports["ya"])(a0);var _setProtectVoice=Module["_setProtectVoice"]=(a0,a1)=>(_setProtectVoice=Module["_setProtectVoice"]=wasmExports["za"])(a0,a1);var _getMaxActiveVoiceCount=Module["_getMaxActiveVoiceCount"]=()=>(_getMaxActiveVoiceCount=Module["_getMaxActiveVoiceCount"]=wasmExports["Aa"])();var _setMaxActiveVoiceCount=Module["_setMaxActiveVoiceCount"]=a0=>(_setMaxActiveVoiceCount=Module["_setMaxActiveVoiceCount"]=wasmExports["Ba"])(a0);var _createVoiceGroup=Module["_createVoiceGroup"]=()=>(_createVoiceGroup=Module["_createVoiceGroup"]=wasmExports["Ca"])();var _destroyVoiceGroup=Module["_destroyVoiceGroup"]=a0=>(_destroyVoiceGroup=Module["_destroyVoiceGroup"]=wasmExports["Da"])(a0);var _addVoiceToGroup=Module["_addVoiceToGroup"]=(a0,a1)=>(_addVoiceToGroup=Module["_addVoiceToGroup"]=wasmExports["Ea"])(a0,a1);var _isVoiceGroup=Module["_isVoiceGroup"]=a0=>(_isVoiceGroup=Module["_isVoiceGroup"]=wasmExports["Fa"])(a0);var _isVoiceGroupEmpty=Module["_isVoiceGroupEmpty"]=a0=>(_isVoiceGroupEmpty=Module["_isVoiceGroupEmpty"]=wasmExports["Ga"])(a0);var _fadeGlobalVolume=Module["_fadeGlobalVolume"]=(a0,a1)=>(_fadeGlobalVolume=Module["_fadeGlobalVolume"]=wasmExports["Ha"])(a0,a1);var _fadeVolume=Module["_fadeVolume"]=(a0,a1,a2)=>(_fadeVolume=Module["_fadeVolume"]=wasmExports["Ia"])(a0,a1,a2);var _fadePan=Module["_fadePan"]=(a0,a1,a2)=>(_fadePan=Module["_fadePan"]=wasmExports["Ja"])(a0,a1,a2);var _fadeRelativePlaySpeed=Module["_fadeRelativePlaySpeed"]=(a0,a1,a2)=>(_fadeRelativePlaySpeed=Module["_fadeRelativePlaySpeed"]=wasmExports["Ka"])(a0,a1,a2);var _schedulePause=Module["_schedulePause"]=(a0,a1)=>(_schedulePause=Module["_schedulePause"]=wasmExports["La"])(a0,a1);var _scheduleStop=Module["_scheduleStop"]=(a0,a1)=>(_scheduleStop=Module["_scheduleStop"]=wasmExports["Ma"])(a0,a1);var _oscillateVolume=Module["_oscillateVolume"]=(a0,a1,a2,a3)=>(_oscillateVolume=Module["_oscillateVolume"]=wasmExports["Na"])(a0,a1,a2,a3);var _oscillatePan=Module["_oscillatePan"]=(a0,a1,a2,a3)=>(_oscillatePan=Module["_oscillatePan"]=wasmExports["Oa"])(a0,a1,a2,a3);var _oscillateRelativePlaySpeed=Module["_oscillateRelativePlaySpeed"]=(a0,a1,a2,a3)=>(_oscillateRelativePlaySpeed=Module["_oscillateRelativePlaySpeed"]=wasmExports["Pa"])(a0,a1,a2,a3);var _oscillateGlobalVolume=Module["_oscillateGlobalVolume"]=(a0,a1,a2)=>(_oscillateGlobalVolume=Module["_oscillateGlobalVolume"]=wasmExports["Qa"])(a0,a1,a2);var _isFilterActive=Module["_isFilterActive"]=(a0,a1,a2)=>(_isFilterActive=Module["_isFilterActive"]=wasmExports["Ra"])(a0,a1,a2);var _getFilterParamNames=Module["_getFilterParamNames"]=(a0,a1,a2)=>(_getFilterParamNames=Module["_getFilterParamNames"]=wasmExports["Sa"])(a0,a1,a2);var _addFilter=Module["_addFilter"]=(a0,a1)=>(_addFilter=Module["_addFilter"]=wasmExports["Ta"])(a0,a1);var _removeFilter=Module["_removeFilter"]=(a0,a1)=>(_removeFilter=Module["_removeFilter"]=wasmExports["Ua"])(a0,a1);var _setFilterParams=Module["_setFilterParams"]=(a0,a1,a2,a3)=>(_setFilterParams=Module["_setFilterParams"]=wasmExports["Va"])(a0,a1,a2,a3);var _getFilterParams=Module["_getFilterParams"]=(a0,a1,a2,a3)=>(_getFilterParams=Module["_getFilterParams"]=wasmExports["Wa"])(a0,a1,a2,a3);var _fadeFilterParameter=Module["_fadeFilterParameter"]=(a0,a1,a2,a3,a4)=>(_fadeFilterParameter=Module["_fadeFilterParameter"]=wasmExports["Xa"])(a0,a1,a2,a3,a4);var _oscillateFilterParameter=Module["_oscillateFilterParameter"]=(a0,a1,a2,a3,a4,a5)=>(_oscillateFilterParameter=Module["_oscillateFilterParameter"]=wasmExports["Ya"])(a0,a1,a2,a3,a4,a5);var _play3d=Module["_play3d"]=(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)=>(_play3d=Module["_play3d"]=wasmExports["Za"])(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11);var _set3dSoundSpeed=Module["_set3dSoundSpeed"]=a0=>(_set3dSoundSpeed=Module["_set3dSoundSpeed"]=wasmExports["_a"])(a0);var _get3dSoundSpeed=Module["_get3dSoundSpeed"]=()=>(_get3dSoundSpeed=Module["_get3dSoundSpeed"]=wasmExports["$a"])();var _set3dListenerParameters=Module["_set3dListenerParameters"]=(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)=>(_set3dListenerParameters=Module["_set3dListenerParameters"]=wasmExports["ab"])(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11);var _set3dListenerPosition=Module["_set3dListenerPosition"]=(a0,a1,a2)=>(_set3dListenerPosition=Module["_set3dListenerPosition"]=wasmExports["bb"])(a0,a1,a2);var _set3dListenerAt=Module["_set3dListenerAt"]=(a0,a1,a2)=>(_set3dListenerAt=Module["_set3dListenerAt"]=wasmExports["cb"])(a0,a1,a2);var _set3dListenerUp=Module["_set3dListenerUp"]=(a0,a1,a2)=>(_set3dListenerUp=Module["_set3dListenerUp"]=wasmExports["db"])(a0,a1,a2);var _set3dListenerVelocity=Module["_set3dListenerVelocity"]=(a0,a1,a2)=>(_set3dListenerVelocity=Module["_set3dListenerVelocity"]=wasmExports["eb"])(a0,a1,a2);var _set3dSourceParameters=Module["_set3dSourceParameters"]=(a0,a1,a2,a3,a4,a5,a6)=>(_set3dSourceParameters=Module["_set3dSourceParameters"]=wasmExports["fb"])(a0,a1,a2,a3,a4,a5,a6);var _set3dSourcePosition=Module["_set3dSourcePosition"]=(a0,a1,a2,a3)=>(_set3dSourcePosition=Module["_set3dSourcePosition"]=wasmExports["gb"])(a0,a1,a2,a3);var _set3dSourceVelocity=Module["_set3dSourceVelocity"]=(a0,a1,a2,a3)=>(_set3dSourceVelocity=Module["_set3dSourceVelocity"]=wasmExports["hb"])(a0,a1,a2,a3);var _set3dSourceMinMaxDistance=Module["_set3dSourceMinMaxDistance"]=(a0,a1,a2)=>(_set3dSourceMinMaxDistance=Module["_set3dSourceMinMaxDistance"]=wasmExports["ib"])(a0,a1,a2);var _set3dSourceAttenuation=Module["_set3dSourceAttenuation"]=(a0,a1,a2)=>(_set3dSourceAttenuation=Module["_set3dSourceAttenuation"]=wasmExports["jb"])(a0,a1,a2);var _set3dSourceDopplerFactor=Module["_set3dSourceDopplerFactor"]=(a0,a1)=>(_set3dSourceDopplerFactor=Module["_set3dSourceDopplerFactor"]=wasmExports["kb"])(a0,a1);var _readSamplesFromFile=Module["_readSamplesFromFile"]=(a0,a1,a2,a3,a4,a5)=>(_readSamplesFromFile=Module["_readSamplesFromFile"]=wasmExports["lb"])(a0,a1,a2,a3,a4,a5);var _readSamplesFromMem=Module["_readSamplesFromMem"]=(a0,a1,a2,a3,a4,a5,a6)=>(_readSamplesFromMem=Module["_readSamplesFromMem"]=wasmExports["mb"])(a0,a1,a2,a3,a4,a5,a6);var _emscripten_get_sbrk_ptr=()=>(_emscripten_get_sbrk_ptr=wasmExports["nb"])();var _sbrk=a0=>(_sbrk=wasmExports["ob"])(a0);var _emscripten_stack_get_base=()=>(_emscripten_stack_get_base=wasmExports["pb"])();var __emscripten_stack_restore=a0=>(__emscripten_stack_restore=wasmExports["qb"])(a0);var __emscripten_stack_alloc=a0=>(__emscripten_stack_alloc=wasmExports["rb"])(a0);var _emscripten_stack_get_current=()=>(_emscripten_stack_get_current=wasmExports["sb"])();var ___cxa_is_pointer_type=a0=>(___cxa_is_pointer_type=wasmExports["tb"])(a0);var dynCall_iiji=Module["dynCall_iiji"]=(a0,a1,a2,a3,a4)=>(dynCall_iiji=Module["dynCall_iiji"]=wasmExports["ub"])(a0,a1,a2,a3,a4);var dynCall_iiiji=Module["dynCall_iiiji"]=(a0,a1,a2,a3,a4,a5)=>(dynCall_iiiji=Module["dynCall_iiiji"]=wasmExports["vb"])(a0,a1,a2,a3,a4,a5);var dynCall_jii=Module["dynCall_jii"]=(a0,a1,a2)=>(dynCall_jii=Module["dynCall_jii"]=wasmExports["wb"])(a0,a1,a2);var dynCall_iij=Module["dynCall_iij"]=(a0,a1,a2,a3)=>(dynCall_iij=Module["dynCall_iij"]=wasmExports["xb"])(a0,a1,a2,a3);var dynCall_jiji=Module["dynCall_jiji"]=(a0,a1,a2,a3,a4)=>(dynCall_jiji=Module["dynCall_jiji"]=wasmExports["yb"])(a0,a1,a2,a3,a4);Module["ccall"]=ccall;Module["cwrap"]=cwrap;var calledRun;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(){if(runDependencies>0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run(); diff --git a/web/libflutter_soloud_plugin.wasm b/web/libflutter_soloud_plugin.wasm index ce5863dc..de4b7509 100755 Binary files a/web/libflutter_soloud_plugin.wasm and b/web/libflutter_soloud_plugin.wasm differ diff --git a/web/worker.dart b/web/worker.dart index f83292ee..da64f980 100644 --- a/web/worker.dart +++ b/web/worker.dart @@ -65,9 +65,7 @@ void main() async { final parseMap = jsonDecode(data) as Map; // ignore: avoid_print print('Received $data PARSED TO $parseMap\n'); - if (parseMap['message'] == 'voiceEndedCallback') { - worker.sendMessage(data); - } + worker.sendMessage(data); } catch (e) { // ignore: avoid_print print("Received data from WASM worker but it's not a String!\n"); diff --git a/web/worker.dart.js b/web/worker.dart.js index 944346f9..db8c6313 100644 --- a/web/worker.dart.js +++ b/web/worker.dart.js @@ -22,7 +22,7 @@ a[c]=function(){if(a[b]===s){a[b]=d()}a[c]=function(){return this[b]} return a[b]}}function lazyFinal(a,b,c,d){var s=a a[b]=s a[c]=function(){if(a[b]===s){var r=d() -if(a[b]!==s){A.hJ(b)}a[b]=r}var q=a[b] +if(a[b]!==s){A.hg(b)}a[b]=r}var q=a[b] a[c]=function(){return q} return q}}function makeConstList(a){a.immutable$list=Array a.fixed$length=Array @@ -30,10 +30,10 @@ return a}function convertToFastObject(a){function t(){}t.prototype=a new t() return a}function convertAllToFastObject(a){for(var s=0;s>>0===b&&b").A(d).i("ar<1,2>")) -return new A.a1(a,b,c.i("@<0>").A(d).i("a1<1,2>"))}, -aA:function aA(a){this.a=a}, -e:function e(){}, +eJ(a,b,c,d){if(t.V.b(a))return new A.ai(a,b,c.i("@<0>").u(d).i("ai<1,2>")) +return new A.V(a,b,c.i("@<0>").u(d).i("V<1,2>"))}, +aq:function aq(a){this.a=a}, +d:function d(){}, C:function C(){}, -a9:function a9(a,b,c){var _=this +a2:function a2(a,b,c){var _=this _.a=a _.b=b _.c=0 _.d=null _.$ti=c}, -a1:function a1(a,b,c){this.a=a +V:function V(a,b,c){this.a=a this.b=b this.$ti=c}, -ar:function ar(a,b,c){this.a=a +ai:function ai(a,b,c){this.a=a this.b=b this.$ti=c}, -bp:function bp(a,b,c){var _=this +bd:function bd(a,b,c){var _=this _.a=null _.b=a _.c=b _.$ti=c}, -G:function G(a,b,c){this.a=a +E:function E(a,b,c){this.a=a this.b=b this.$ti=c}, -at:function at(){}, -T:function T(a){this.a=a}, -eD(a){var s=v.mangledGlobalNames[a] +ak:function ak(){}, +ef(a){var s=v.mangledGlobalNames[a] if(s!=null)return s return"minified:"+a}, -hB(a,b){var s +hO(a,b){var s if(b!=null){s=b.x if(s!=null)return s}return t.p.b(a)}, n(a){var s @@ -179,158 +175,117 @@ if(typeof a=="string")return a if(typeof a=="number"){if(a!==0)return""+a}else if(!0===a)return"true" else if(!1===a)return"false" else if(a==null)return"null" -s=J.bb(a) +s=J.aZ(a) return s}, -aH(a){var s,r=$.dW -if(r==null)r=$.dW=Symbol("identityHashCode") +ay(a){var s,r=$.dt +if(r==null)r=$.dt=Symbol("identityHashCode") s=a[r] if(s==null){s=Math.random()*0x3fffffff|0 a[r]=s}return s}, -cl(a){return A.f9(a)}, -f9(a){var s,r,q,p -if(a instanceof A.d)return A.v(A.am(a),null) -s=J.M(a) -if(s===B.u||s===B.x||t.o.b(a)){r=B.d(a) +c0(a){return A.eK(a)}, +eK(a){var s,r,q,p +if(a instanceof A.e)return A.t(A.af(a),null) +s=J.Z(a) +if(s===B.o||s===B.u||t.o.b(a)){r=B.c(a) if(r!=="Object"&&r!=="")return r q=a.constructor if(typeof q=="function"){p=q.name -if(typeof p=="string"&&p!=="Object"&&p!=="")return p}}return A.v(A.am(a),null)}, -fc(a){if(typeof a=="number"||A.d4(a))return J.bb(a) +if(typeof p=="string"&&p!=="Object"&&p!=="")return p}}return A.t(A.af(a),null)}, +eM(a){if(typeof a=="number"||A.cJ(a))return J.aZ(a) if(typeof a=="string")return JSON.stringify(a) -if(a instanceof A.a_)return a.h(0) -return"Instance of '"+A.cl(a)+"'"}, -S(a,b,c){var s,r,q={} -q.a=0 -s=[] -r=[] -q.a=b.length -B.b.a2(s,b) -q.b="" -if(c!=null&&c.a!==0)c.t(0,new A.ck(q,r,s)) -return J.eS(a,new A.cb(B.A,0,s,r,0))}, -fa(a,b,c){var s,r,q -if(Array.isArray(b))s=c==null||c.a===0 -else s=!1 -if(s){r=b.length -if(r===0){if(!!a.$0)return a.$0()}else if(r===1){if(!!a.$1)return a.$1(b[0])}else if(r===2){if(!!a.$2)return a.$2(b[0],b[1])}else if(r===3){if(!!a.$3)return a.$3(b[0],b[1],b[2])}else if(r===4){if(!!a.$4)return a.$4(b[0],b[1],b[2],b[3])}else if(r===5)if(!!a.$5)return a.$5(b[0],b[1],b[2],b[3],b[4]) -q=a[""+"$"+r] -if(q!=null)return q.apply(a,b)}return A.f8(a,b,c)}, -f8(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g=Array.isArray(b)?b:A.dq(b,t.z),f=g.length,e=a.$R -if(fn)return A.S(a,g,null) -if(fe)return A.S(a,g,c) -if(g===b)g=A.dq(g,t.z) -l=Object.keys(q) -if(c==null)for(r=l.length,k=0;k=s)return A.dS(b,s,a,r) -return new A.aI(null,null,!0,b,r,"Value not in range")}, -b(a){return A.ex(new Error(),a)}, -ex(a,b){var s -if(b==null)b=new A.I() +return A.K(s)}, +A(a,b){if(a==null)J.cX(a) +throw A.b(A.e5(a,b))}, +e5(a,b){var s,r="index" +if(!A.dW(b))return new A.B(!0,b,r,null) +s=J.cX(a) +if(b<0||b>=s)return A.dq(b,s,a,r) +return new A.az(null,null,!0,b,r,"Value not in range")}, +b(a){return A.e9(new Error(),a)}, +e9(a,b){var s +if(b==null)b=new A.G() a.dartException=b -s=A.hK +s=A.hh if("defineProperty" in Object){Object.defineProperty(a,"message",{get:s}) a.name=""}else a.toString=s return a}, -hK(){return J.bb(this.dartException)}, -ba(a){throw A.b(a)}, -eB(a,b){throw A.ex(b,a)}, -dI(a){throw A.b(A.a0(a))}, -J(a){var s,r,q,p,o,n -a=A.hI(a.replace(String({}),"$receiver$")) +hh(){return J.aZ(this.dartException)}, +aY(a){throw A.b(a)}, +ed(a,b){throw A.e9(b,a)}, +hf(a){throw A.b(A.ah(a))}, +H(a){var s,r,q,p,o,n +a=A.he(a.replace(String({}),"$receiver$")) s=a.match(/\\\$[a-zA-Z]+\\\$/g) -if(s==null)s=A.W([],t.s) +if(s==null)s=A.aW([],t.s) r=s.indexOf("\\$arguments\\$") q=s.indexOf("\\$argumentsExpr\\$") p=s.indexOf("\\$expr\\$") o=s.indexOf("\\$method\\$") n=s.indexOf("\\$receiver\\$") -return new A.cq(a.replace(new RegExp("\\\\\\$arguments\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$argumentsExpr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$expr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$method\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$receiver\\\\\\$","g"),"((?:x|[^x])*)"),r,q,p,o,n)}, -cr(a){return function($expr$){var $argumentsExpr$="$arguments$" +return new A.c5(a.replace(new RegExp("\\\\\\$arguments\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$argumentsExpr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$expr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$method\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$receiver\\\\\\$","g"),"((?:x|[^x])*)"),r,q,p,o,n)}, +c6(a){return function($expr$){var $argumentsExpr$="$arguments$" try{$expr$.$method$($argumentsExpr$)}catch(s){return s.message}}(a)}, -e0(a){return function($expr$){try{$expr$.$method$}catch(s){return s.message}}(a)}, -dp(a,b){var s=b==null,r=s?null:b.method -return new A.bn(a,r,s?null:b.receiver)}, -O(a){if(a==null)return new A.cj(a) -if(a instanceof A.as)return A.Z(a,a.a) +dz(a){return function($expr$){try{$expr$.$method$}catch(s){return s.message}}(a)}, +d0(a,b){var s=b==null,r=s?null:b.method +return new A.bb(a,r,s?null:b.receiver)}, +M(a){if(a==null)return new A.c_(a) +if(a instanceof A.aj)return A.T(a,a.a) if(typeof a!=="object")return a -if("dartException" in a)return A.Z(a,a.dartException) -return A.hi(a)}, -Z(a,b){if(t.Q.b(b))if(b.$thrownJsError==null)b.$thrownJsError=a +if("dartException" in a)return A.T(a,a.dartException) +return A.fR(a)}, +T(a,b){if(t.Q.b(b))if(b.$thrownJsError==null)b.$thrownJsError=a return b}, -hi(a){var s,r,q,p,o,n,m,l,k,j,i,h,g +fR(a){var s,r,q,p,o,n,m,l,k,j,i,h,g if(!("message" in a))return a s=a.message if("number" in a&&typeof a.number=="number"){r=a.number q=r&65535 -if((B.v.aS(r,16)&8191)===10)switch(q){case 438:return A.Z(a,A.dp(A.n(s)+" (Error "+q+")",null)) +if((B.q.aI(r,16)&8191)===10)switch(q){case 438:return A.T(a,A.d0(A.n(s)+" (Error "+q+")",null)) case 445:case 5007:A.n(s) -return A.Z(a,new A.aG())}}if(a instanceof TypeError){p=$.eE() -o=$.eF() -n=$.eG() -m=$.eH() -l=$.eK() -k=$.eL() -j=$.eJ() -$.eI() -i=$.eN() -h=$.eM() -g=p.u(s) -if(g!=null)return A.Z(a,A.dp(s,g)) -else{g=o.u(s) +return A.T(a,new A.ax())}}if(a instanceof TypeError){p=$.eg() +o=$.eh() +n=$.ei() +m=$.ej() +l=$.em() +k=$.en() +j=$.el() +$.ek() +i=$.ep() +h=$.eo() +g=p.t(s) +if(g!=null)return A.T(a,A.d0(s,g)) +else{g=o.t(s) if(g!=null){g.method="call" -return A.Z(a,A.dp(s,g))}else if(n.u(s)!=null||m.u(s)!=null||l.u(s)!=null||k.u(s)!=null||j.u(s)!=null||m.u(s)!=null||i.u(s)!=null||h.u(s)!=null)return A.Z(a,new A.aG())}return A.Z(a,new A.bE(typeof s=="string"?s:""))}if(a instanceof RangeError){if(typeof s=="string"&&s.indexOf("call stack")!==-1)return new A.aJ() +return A.T(a,A.d0(s,g))}else if(n.t(s)!=null||m.t(s)!=null||l.t(s)!=null||k.t(s)!=null||j.t(s)!=null||m.t(s)!=null||i.t(s)!=null||h.t(s)!=null)return A.T(a,new A.ax())}return A.T(a,new A.bs(typeof s=="string"?s:""))}if(a instanceof RangeError){if(typeof s=="string"&&s.indexOf("call stack")!==-1)return new A.aA() s=function(b){try{return String(b)}catch(f){}return null}(a) -return A.Z(a,new A.P(!1,null,null,typeof s=="string"?s.replace(/^RangeError:\s*/,""):s))}if(typeof InternalError=="function"&&a instanceof InternalError)if(typeof s=="string"&&s==="too much recursion")return new A.aJ() +return A.T(a,new A.B(!1,null,null,typeof s=="string"?s.replace(/^RangeError:\s*/,""):s))}if(typeof InternalError=="function"&&a instanceof InternalError)if(typeof s=="string"&&s==="too much recursion")return new A.aA() return a}, -Y(a){var s -if(a instanceof A.as)return a.b -if(a==null)return new A.b_(a) +K(a){var s +if(a instanceof A.aj)return a.b +if(a==null)return new A.aN(a) s=a.$cachedTrace if(s!=null)return s -s=new A.b_(a) +s=new A.aN(a) if(typeof a==="object")a.$cachedTrace=s return s}, -dG(a){if(a==null)return J.dj(a) -if(typeof a=="object")return A.aH(a) -return J.dj(a)}, -fV(a,b,c,d,e,f){switch(b){case 0:return a.$0() +de(a){if(a==null)return J.di(a) +if(typeof a=="object")return A.ay(a) +return J.di(a)}, +ft(a,b,c,d,e,f){switch(b){case 0:return a.$0() case 1:return a.$1(c) case 2:return a.$2(c,d) case 3:return a.$3(c,d,e) -case 4:return a.$4(c,d,e,f)}throw A.b(new A.cC("Unsupported number of arguments for wrapped closure"))}, -d9(a,b){var s=a.$identity +case 4:return a.$4(c,d,e,f)}throw A.b(new A.ch("Unsupported number of arguments for wrapped closure"))}, +cO(a,b){var s=a.$identity if(!!s)return s -s=A.hr(a,b) +s=A.fZ(a,b) a.$identity=s return s}, -hr(a,b){var s +fZ(a,b){var s switch(b){case 0:s=a.$0 break case 1:s=a.$1 @@ -342,10 +297,10 @@ break case 4:s=a.$4 break default:s=null}if(s!=null)return s.bind(a) -return function(c,d,e){return function(f,g,h,i){return e(c,d,f,g,h,i)}}(a,b,A.fV)}, -f_(a2){var s,r,q,p,o,n,m,l,k,j,i=a2.co,h=a2.iS,g=a2.iI,f=a2.nDA,e=a2.aI,d=a2.fs,c=a2.cs,b=d[0],a=c[0],a0=i[b],a1=a2.fT +return function(c,d,e){return function(f,g,h,i){return e(c,d,f,g,h,i)}}(a,b,A.ft)}, +eB(a2){var s,r,q,p,o,n,m,l,k,j,i=a2.co,h=a2.iS,g=a2.iI,f=a2.nDA,e=a2.aI,d=a2.fs,c=a2.cs,b=d[0],a=c[0],a0=i[b],a1=a2.fT a1.toString -s=h?Object.create(new A.cm().constructor.prototype):Object.create(new A.an(null,null).constructor.prototype) +s=h?Object.create(new A.c1().constructor.prototype):Object.create(new A.ag(null,null).constructor.prototype) s.$initialize=s.constructor r=h?function static_tear_off(){this.$initialize()}:function tear_off(a3,a4){this.$initialize(a3,a4)} s.constructor=r @@ -353,24 +308,24 @@ r.prototype=s s.$_name=b s.$_target=a0 q=!h -if(q)p=A.dR(b,a0,g,f) +if(q)p=A.dp(b,a0,g,f) else{s.$static_name=b -p=a0}s.$S=A.eW(a1,h,g) +p=a0}s.$S=A.ex(a1,h,g) s[a]=p for(o=p,n=1;n>>0!==a||a>=c)throw A.b(A.dz(b,a))}, -bq:function bq(){}, -aE:function aE(){}, -br:function br(){}, -aa:function aa(){}, -aC:function aC(){}, -aD:function aD(){}, -bs:function bs(){}, -bt:function bt(){}, -bu:function bu(){}, -bv:function bv(){}, -bw:function bw(){}, -bx:function bx(){}, -by:function by(){}, -aF:function aF(){}, -bz:function bz(){}, -aV:function aV(){}, -aW:function aW(){}, -aX:function aX(){}, -aY:function aY(){}, -dX(a,b){var s=b.c -return s==null?b.c=A.dv(a,b.x,!0):s}, -dr(a,b){var s=b.c -return s==null?b.c=A.b4(a,"a7",[b.x]):s}, -dY(a){var s=a.w -if(s===6||s===7||s===8)return A.dY(a.x) +cQ:function cQ(a){this.a=a}, +cR:function cR(a){this.a=a}, +cS:function cS(a){this.a=a}, +X(a,b,c){if(a>>>0!==a||a>=c)throw A.b(A.e5(b,a))}, +be:function be(){}, +av:function av(){}, +bf:function bf(){}, +a3:function a3(){}, +at:function at(){}, +au:function au(){}, +bg:function bg(){}, +bh:function bh(){}, +bi:function bi(){}, +bj:function bj(){}, +bk:function bk(){}, +bl:function bl(){}, +bm:function bm(){}, +aw:function aw(){}, +bn:function bn(){}, +aI:function aI(){}, +aJ:function aJ(){}, +aK:function aK(){}, +aL:function aL(){}, +du(a,b){var s=b.c +return s==null?b.c=A.d4(a,b.x,!0):s}, +d1(a,b){var s=b.c +return s==null?b.c=A.aS(a,"a0",[b.x]):s}, +dv(a){var s=a.w +if(s===6||s===7||s===8)return A.dv(a.x) return s===12||s===13}, -fe(a){return a.as}, -dA(a){return A.bU(v.typeUniverse,a,!1)}, -X(a1,a2,a3,a4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=a2.w +eO(a){return a.as}, +e6(a){return A.bH(v.typeUniverse,a,!1)}, +S(a1,a2,a3,a4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=a2.w switch(a0){case 5:case 1:case 2:case 3:case 4:return a2 case 6:s=a2.x -r=A.X(a1,s,a3,a4) +r=A.S(a1,s,a3,a4) if(r===s)return a2 -return A.ef(a1,r,!0) +return A.dP(a1,r,!0) case 7:s=a2.x -r=A.X(a1,s,a3,a4) +r=A.S(a1,s,a3,a4) if(r===s)return a2 -return A.dv(a1,r,!0) +return A.d4(a1,r,!0) case 8:s=a2.x -r=A.X(a1,s,a3,a4) +r=A.S(a1,s,a3,a4) if(r===s)return a2 -return A.ed(a1,r,!0) +return A.dN(a1,r,!0) case 9:q=a2.y -p=A.ak(a1,q,a3,a4) +p=A.ad(a1,q,a3,a4) if(p===q)return a2 -return A.b4(a1,a2.x,p) +return A.aS(a1,a2.x,p) case 10:o=a2.x -n=A.X(a1,o,a3,a4) +n=A.S(a1,o,a3,a4) m=a2.y -l=A.ak(a1,m,a3,a4) +l=A.ad(a1,m,a3,a4) if(n===o&&l===m)return a2 -return A.dt(a1,n,l) +return A.d2(a1,n,l) case 11:k=a2.x j=a2.y -i=A.ak(a1,j,a3,a4) +i=A.ad(a1,j,a3,a4) if(i===j)return a2 -return A.ee(a1,k,i) +return A.dO(a1,k,i) case 12:h=a2.x -g=A.X(a1,h,a3,a4) +g=A.S(a1,h,a3,a4) f=a2.y -e=A.hf(a1,f,a3,a4) +e=A.fO(a1,f,a3,a4) if(g===h&&e===f)return a2 -return A.ec(a1,g,e) +return A.dM(a1,g,e) case 13:d=a2.y a4+=d.length -c=A.ak(a1,d,a3,a4) +c=A.ad(a1,d,a3,a4) o=a2.x -n=A.X(a1,o,a3,a4) +n=A.S(a1,o,a3,a4) if(c===d&&n===o)return a2 -return A.du(a1,n,c,!0) +return A.d3(a1,n,c,!0) case 14:b=a2.x if(b=0)p+=" "+r[q];++q}return p+"})"}, -ek(a4,a5,a6){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3=", " +dU(a4,a5,a6){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2=", ",a3=null if(a6!=null){s=a6.length -if(a5==null){a5=A.W([],t.s) -r=null}else r=a5.length -q=a5.length -for(p=s;p>0;--p)a5.push("T"+(q+p)) -for(o=t.X,n=t._,m="<",l="",p=0;p=0))return A.B(a5,j) -m=B.h.au(m+l,a5[j]) -i=a6[p] -h=i.w -if(!(h===2||h===3||h===4||h===5||i===o))k=i===n -else k=!0 -if(!k)m+=" extends "+A.v(i,a5)}m+=">"}else{m="" -r=null}o=a4.x -g=a4.y -f=g.a -e=f.length -d=g.b -c=d.length -b=g.c -a=b.length -a0=A.v(o,a5) -for(a1="",a2="",p=0;p0){a1+=a2+"[" -for(a2="",p=0;p0){a1+=a2+"{" -for(a2="",p=0;p "+a0}, -v(a,b){var s,r,q,p,o,n,m,l=a.w +if(a5==null)a5=A.aW([],t.s) +else a3=a5.length +r=a5.length +for(q=s;q>0;--q)a5.push("T"+(r+q)) +for(p=t.X,o=t._,n="<",m="",q=0;q=0))return A.A(a5,k) +n=B.r.ak(n+m,a5[k]) +j=a6[q] +i=j.w +if(!(i===2||i===3||i===4||i===5||j===p))l=j===o +else l=!0 +if(!l)n+=" extends "+A.t(j,a5)}n+=">"}else n="" +p=a4.x +h=a4.y +g=h.a +f=g.length +e=h.b +d=e.length +c=h.c +b=c.length +a=A.t(p,a5) +for(a0="",a1="",q=0;q0){a0+=a1+"[" +for(a1="",q=0;q0){a0+=a1+"{" +for(a1="",q=0;q "+a}, +t(a,b){var s,r,q,p,o,n,m,l=a.w if(l===5)return"erased" if(l===2)return"dynamic" if(l===3)return"void" if(l===1)return"Never" if(l===4)return"any" -if(l===6)return A.v(a.x,b) +if(l===6)return A.t(a.x,b) if(l===7){s=a.x -r=A.v(s,b) +r=A.t(s,b) q=s.w -return(q===12||q===13?"("+r+")":r)+"?"}if(l===8)return"FutureOr<"+A.v(a.x,b)+">" -if(l===9){p=A.hh(a.x) +return(q===12||q===13?"("+r+")":r)+"?"}if(l===8)return"FutureOr<"+A.t(a.x,b)+">" +if(l===9){p=A.fQ(a.x) o=a.y -return o.length>0?p+("<"+A.er(o,b)+">"):p}if(l===11)return A.h9(a,b) -if(l===12)return A.ek(a,b,null) -if(l===13)return A.ek(a.x,b,a.y) +return o.length>0?p+("<"+A.e0(o,b)+">"):p}if(l===11)return A.fI(a,b) +if(l===12)return A.dU(a,b,null) +if(l===13)return A.dU(a.x,b,a.y) if(l===14){n=a.x m=b.length n=m-1-n -if(!(n>=0&&n=0&&n0)p+="<"+A.b3(c)+">" +aS(a,b,c){var s,r,q,p=b +if(c.length>0)p+="<"+A.aR(c)+">" s=a.eC.get(p) if(s!=null)return s -r=new A.z(null,null) +r=new A.x(null,null) r.w=9 r.x=b r.y=c if(c.length>0)r.c=c[0] r.as=p -q=A.K(a,r) +q=A.I(a,r) a.eC.set(p,q) return q}, -dt(a,b,c){var s,r,q,p,o,n +d2(a,b,c){var s,r,q,p,o,n if(b.w===10){s=b.x r=b.y.concat(c)}else{r=c -s=b}q=s.as+(";<"+A.b3(r)+">") +s=b}q=s.as+(";<"+A.aR(r)+">") p=a.eC.get(q) if(p!=null)return p -o=new A.z(null,null) +o=new A.x(null,null) o.w=10 o.x=s o.y=r o.as=q -n=A.K(a,o) +n=A.I(a,o) a.eC.set(q,n) return n}, -ee(a,b,c){var s,r,q="+"+(b+"("+A.b3(c)+")"),p=a.eC.get(q) +dO(a,b,c){var s,r,q="+"+(b+"("+A.aR(c)+")"),p=a.eC.get(q) if(p!=null)return p -s=new A.z(null,null) +s=new A.x(null,null) s.w=11 s.x=b s.y=c s.as=q -r=A.K(a,s) +r=A.I(a,s) a.eC.set(q,r) return r}, -ec(a,b,c){var s,r,q,p,o,n=b.as,m=c.a,l=m.length,k=c.b,j=k.length,i=c.c,h=i.length,g="("+A.b3(m) +dM(a,b,c){var s,r,q,p,o,n=b.as,m=c.a,l=m.length,k=c.b,j=k.length,i=c.c,h=i.length,g="("+A.aR(m) if(j>0){s=l>0?",":"" -g+=s+"["+A.b3(k)+"]"}if(h>0){s=l>0?",":"" -g+=s+"{"+A.fv(i)+"}"}r=n+(g+")") +g+=s+"["+A.aR(k)+"]"}if(h>0){s=l>0?",":"" +g+=s+"{"+A.f4(i)+"}"}r=n+(g+")") q=a.eC.get(r) if(q!=null)return q -p=new A.z(null,null) +p=new A.x(null,null) p.w=12 p.x=b p.y=c p.as=r -o=A.K(a,p) +o=A.I(a,p) a.eC.set(r,o) return o}, -du(a,b,c,d){var s,r=b.as+("<"+A.b3(c)+">"),q=a.eC.get(r) +d3(a,b,c,d){var s,r=b.as+("<"+A.aR(c)+">"),q=a.eC.get(r) if(q!=null)return q -s=A.fx(a,b,c,r,d) +s=A.f6(a,b,c,r,d) a.eC.set(r,s) return s}, -fx(a,b,c,d,e){var s,r,q,p,o,n,m,l +f6(a,b,c,d,e){var s,r,q,p,o,n,m,l if(e){s=c.length -r=A.d_(s) +r=A.cE(s) for(q=0,p=0;p0){n=A.X(a,b,r,0) -m=A.ak(a,c,r,0) -return A.du(a,n,m,c!==m)}}l=new A.z(null,null) +if(o.w===1){r[p]=o;++q}}if(q>0){n=A.S(a,b,r,0) +m=A.ad(a,c,r,0) +return A.d3(a,n,m,c!==m)}}l=new A.x(null,null) l.w=13 l.x=b l.y=c l.as=d -return A.K(a,l)}, -e8(a,b,c,d){return{u:a,e:b,r:c,s:[],p:0,n:d}}, -ea(a){var s,r,q,p,o,n,m,l=a.r,k=a.s +return A.I(a,l)}, +dI(a,b,c,d){return{u:a,e:b,r:c,s:[],p:0,n:d}}, +dK(a){var s,r,q,p,o,n,m,l=a.r,k=a.s for(s=l.length,r=0;r=48&&q<=57)r=A.fo(r+1,q,l,k) -else if((((q|32)>>>0)-97&65535)<26||q===95||q===36||q===124)r=A.e9(a,r,l,k,!1) -else if(q===46)r=A.e9(a,r,l,k,!0) +if(q>=48&&q<=57)r=A.eY(r+1,q,l,k) +else if((((q|32)>>>0)-97&65535)<26||q===95||q===36||q===124)r=A.dJ(a,r,l,k,!1) +else if(q===46)r=A.dJ(a,r,l,k,!0) else{++r switch(q){case 44:break case 58:k.push(!1) break case 33:k.push(!0) break -case 59:k.push(A.V(a.u,a.e,k.pop())) +case 59:k.push(A.Q(a.u,a.e,k.pop())) break -case 94:k.push(A.fA(a.u,k.pop())) +case 94:k.push(A.f9(a.u,k.pop())) break -case 35:k.push(A.b5(a.u,5,"#")) +case 35:k.push(A.aT(a.u,5,"#")) break -case 64:k.push(A.b5(a.u,2,"@")) +case 64:k.push(A.aT(a.u,2,"@")) break -case 126:k.push(A.b5(a.u,3,"~")) +case 126:k.push(A.aT(a.u,3,"~")) break case 60:k.push(a.p) a.p=k.length break -case 62:A.fq(a,k) +case 62:A.f_(a,k) break -case 38:A.fp(a,k) +case 38:A.eZ(a,k) break case 42:p=a.u -k.push(A.ef(p,A.V(p,a.e,k.pop()),a.n)) +k.push(A.dP(p,A.Q(p,a.e,k.pop()),a.n)) break case 63:p=a.u -k.push(A.dv(p,A.V(p,a.e,k.pop()),a.n)) +k.push(A.d4(p,A.Q(p,a.e,k.pop()),a.n)) break case 47:p=a.u -k.push(A.ed(p,A.V(p,a.e,k.pop()),a.n)) +k.push(A.dN(p,A.Q(p,a.e,k.pop()),a.n)) break case 40:k.push(-3) k.push(a.p) a.p=k.length break -case 41:A.fn(a,k) +case 41:A.eX(a,k) break case 91:k.push(a.p) a.p=k.length break case 93:o=k.splice(a.p) -A.eb(a.u,a.e,o) +A.dL(a.u,a.e,o) a.p=k.pop() k.push(o) k.push(-1) @@ -1107,7 +1023,7 @@ case 123:k.push(a.p) a.p=k.length break case 125:o=k.splice(a.p) -A.fs(a.u,a.e,o) +A.f1(a.u,a.e,o) a.p=k.pop() k.push(o) k.push(-2) @@ -1120,13 +1036,13 @@ a.p=k.length r=n+1 break default:throw"Bad character "+q}}}m=k.pop() -return A.V(a.u,a.e,m)}, -fo(a,b,c,d){var s,r,q=b-48 +return A.Q(a.u,a.e,m)}, +eY(a,b,c,d){var s,r,q=b-48 for(s=c.length;a=48&&r<=57))break q=q*10+(r-48)}d.push(q) return a}, -e9(a,b,c,d,e){var s,r,q,p,o,n,m=b+1 +dJ(a,b,c,d,e){var s,r,q,p,o,n,m=b+1 for(s=c.length;m>>0)-97&65535)<26||r===95||r===36||r===124))q=r>=48&&r<=57 @@ -1135,60 +1051,55 @@ if(!q)break}}p=c.substring(b,m) if(e){s=a.u o=a.e if(o.w===10)o=o.x -n=A.fF(s,o.x)[p] -if(n==null)A.ba('No "'+p+'" in "'+A.fe(o)+'"') -d.push(A.cZ(s,o,n))}else d.push(p) +n=A.fe(s,o.x)[p] +if(n==null)A.aY('No "'+p+'" in "'+A.eO(o)+'"') +d.push(A.cD(s,o,n))}else d.push(p) return m}, -fq(a,b){var s,r=a.u,q=A.e7(a,b),p=b.pop() -if(typeof p=="string")b.push(A.b4(r,p,q)) -else{s=A.V(r,a.e,p) -switch(s.w){case 12:b.push(A.du(r,s,q,a.n)) +f_(a,b){var s,r=a.u,q=A.dH(a,b),p=b.pop() +if(typeof p=="string")b.push(A.aS(r,p,q)) +else{s=A.Q(r,a.e,p) +switch(s.w){case 12:b.push(A.d3(r,s,q,a.n)) break -default:b.push(A.dt(r,s,q)) +default:b.push(A.d2(r,s,q)) break}}}, -fn(a,b){var s,r,q,p,o,n=null,m=a.u,l=b.pop() -if(typeof l=="number")switch(l){case-1:s=b.pop() -r=n +eX(a,b){var s,r,q,p=a.u,o=b.pop(),n=null,m=null +if(typeof o=="number")switch(o){case-1:n=b.pop() break -case-2:r=b.pop() -s=n +case-2:m=b.pop() break -default:b.push(l) -r=n -s=r -break}else{b.push(l) -r=n -s=r}q=A.e7(a,b) -l=b.pop() -switch(l){case-3:l=b.pop() -if(s==null)s=m.sEA -if(r==null)r=m.sEA -p=A.V(m,a.e,l) -o=new A.bM() -o.a=q -o.b=s -o.c=r -b.push(A.ec(m,p,o)) +default:b.push(o) +break}else b.push(o) +s=A.dH(a,b) +o=b.pop() +switch(o){case-3:o=b.pop() +if(n==null)n=p.sEA +if(m==null)m=p.sEA +r=A.Q(p,a.e,o) +q=new A.bA() +q.a=s +q.b=n +q.c=m +b.push(A.dM(p,r,q)) return -case-4:b.push(A.ee(m,b.pop(),q)) +case-4:b.push(A.dO(p,b.pop(),s)) return -default:throw A.b(A.bd("Unexpected state under `()`: "+A.n(l)))}}, -fp(a,b){var s=b.pop() -if(0===s){b.push(A.b5(a.u,1,"0&")) -return}if(1===s){b.push(A.b5(a.u,4,"1&")) -return}throw A.b(A.bd("Unexpected extended operation "+A.n(s)))}, -e7(a,b){var s=b.splice(a.p) -A.eb(a.u,a.e,s) +default:throw A.b(A.b1("Unexpected state under `()`: "+A.n(o)))}}, +eZ(a,b){var s=b.pop() +if(0===s){b.push(A.aT(a.u,1,"0&")) +return}if(1===s){b.push(A.aT(a.u,4,"1&")) +return}throw A.b(A.b1("Unexpected extended operation "+A.n(s)))}, +dH(a,b){var s=b.splice(a.p) +A.dL(a.u,a.e,s) a.p=b.pop() return s}, -V(a,b,c){if(typeof c=="string")return A.b4(a,c,a.sEA) +Q(a,b,c){if(typeof c=="string")return A.aS(a,c,a.sEA) else if(typeof c=="number"){b.toString -return A.fr(a,b,c)}else return c}, -eb(a,b,c){var s,r=c.length -for(s=0;s0?new Array(q):v.typeUniverse.sEA -for(o=0;o0?new Array(a):v.typeUniverse.sEA}, -z:function z(a,b){var _=this +cE(a){return a>0?new Array(a):v.typeUniverse.sEA}, +x:function x(a,b){var _=this _.a=a _.b=b _.r=_.f=_.d=_.c=null _.w=0 _.as=_.Q=_.z=_.y=_.x=null}, -bM:function bM(){this.c=this.b=this.a=null}, -cY:function cY(a){this.a=a}, -bL:function bL(){}, -b2:function b2(a){this.a=a}, -fg(){var s,r,q={} -if(self.scheduleImmediate!=null)return A.hl() +bA:function bA(){this.c=this.b=this.a=null}, +cC:function cC(a){this.a=a}, +bz:function bz(){}, +aQ:function aQ(a){this.a=a}, +eQ(){var s,r,q={} +if(self.scheduleImmediate!=null)return A.fT() if(self.MutationObserver!=null&&self.document!=null){s=self.document.createElement("div") r=self.document.createElement("span") q.a=null -new self.MutationObserver(A.d9(new A.cz(q),1)).observe(s,{childList:true}) -return new A.cy(q,s,r)}else if(self.setImmediate!=null)return A.hm() -return A.hn()}, -fh(a){self.scheduleImmediate(A.d9(new A.cA(a),0))}, -fi(a){self.setImmediate(A.d9(new A.cB(a),0))}, -fj(a){A.ft(0,a)}, -ft(a,b){var s=new A.cW() -s.aA(a,b) +new self.MutationObserver(A.cO(new A.ce(q),1)).observe(s,{childList:true}) +return new A.cd(q,s,r)}else if(self.setImmediate!=null)return A.fU() +return A.fV()}, +eR(a){self.scheduleImmediate(A.cO(new A.cf(a),0))}, +eS(a){self.setImmediate(A.cO(new A.cg(a),0))}, +eT(a){A.f2(0,a)}, +f2(a,b){var s=new A.cA() +s.ao(a,b) return s}, -h5(a){return new A.bG(new A.o($.j,a.i("o<0>")),a.i("bG<0>"))}, -fK(a,b){a.$2(0,null) +fE(a){return new A.bu(new A.o($.i,a.i("o<0>")),a.i("bu<0>"))}, +fj(a,b){a.$2(0,null) b.b=!0 return b.a}, -ie(a,b){A.fL(a,b)}, -fJ(a,b){var s,r=a==null?b.$ti.c.a(a):a -if(!b.b)b.a.aa(r) +hN(a,b){A.fk(a,b)}, +fi(a,b){var s,r=a==null?b.$ti.c.a(a):a +if(!b.b)b.a.a5(r) else{s=b.a -if(b.$ti.i("a7<1>").b(r))s.ac(r) -else s.S(r)}}, -fI(a,b){var s=A.O(a),r=A.Y(a),q=b.a -if(b.b)q.D(s,r) -else q.aC(s,r)}, -fL(a,b){var s,r,q=new A.d1(b),p=new A.d2(b) -if(a instanceof A.o)a.al(q,p,t.z) +if(b.$ti.i("a0<1>").b(r))s.a7(r) +else s.P(r)}}, +fh(a,b){var s=A.M(a),r=A.K(a),q=b.a +if(b.b)q.A(s,r) +else q.O(s,r)}, +fk(a,b){var s,r,q=new A.cG(b),p=new A.cH(b) +if(a instanceof A.o)a.af(q,p,t.z) else{s=t.z -if(a instanceof A.o)a.a6(q,p,s) -else{r=new A.o($.j,t.h) +if(a instanceof A.o)a.a1(q,p,s) +else{r=new A.o($.i,t.d) r.a=8 r.c=a -r.al(q,p,s)}}}, -hj(a){var s=function(b,c){return function(d,e){while(true){try{b(d,e) +r.af(q,p,s)}}}, +fS(a){var s=function(b,c){return function(d,e){while(true){try{b(d,e) break}catch(r){e=r d=c}}}}(a,1) -return $.j.a4(new A.d6(s))}, -c2(a,b){var s=A.d8(a,"error",t.K) -return new A.be(s,b==null?A.eT(a):b)}, -eT(a){var s -if(t.Q.b(a)){s=a.gO() -if(s!=null)return s}return B.t}, -e4(a,b){var s,r +return $.i.a_(new A.cL(s))}, +bM(a,b){var s=A.cN(a,"error",t.K) +return new A.b2(s,b==null?A.eu(a):b)}, +eu(a){var s +if(t.Q.b(a)){s=a.gL() +if(s!=null)return s}return B.n}, +dE(a,b){var s,r for(;s=a.a,(s&4)!==0;)a=a.c -s|=b.a&1 +if(a===b){b.O(new A.B(!0,a,null,"Cannot complete a future with itself"),A.dw()) +return}s|=b.a&1 a.a=s -if((s&24)!==0){r=b.K() -b.I(a) -A.ah(b,r)}else{r=b.c -b.aj(a) -a.a0(r)}}, -fl(a,b){var s,r,q={},p=q.a=a +if((s&24)!==0){r=b.G() +b.E(a) +A.aa(b,r)}else{r=b.c +b.ad(a) +a.X(r)}}, +eV(a,b){var s,r,q={},p=q.a=a for(;s=p.a,(s&4)!==0;){p=p.c -q.a=p}if((s&24)===0){r=b.c -b.aj(p) -q.a.a0(r) -return}if((s&16)===0&&b.c==null){b.I(p) +q.a=p}if(p===b){b.O(new A.B(!0,p,null,"Cannot complete a future with itself"),A.dw()) +return}if((s&24)===0){r=b.c +b.ad(p) +q.a.X(r) +return}if((s&16)===0&&b.c==null){b.E(p) return}b.a^=2 -A.aj(null,null,b.b,new A.cG(q,b))}, -ah(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g={},f=g.a=a +A.ac(null,null,b.b,new A.cl(q,b))}, +aa(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g={},f=g.a=a for(;!0;){s={} r=f.a q=(r&16)===0 p=!q if(b==null){if(p&&(r&1)===0){f=f.c -A.bY(f.a,f.b)}return}s.a=b +A.bK(f.a,f.b)}return}s.a=b o=b.a for(f=b;o!=null;f=o,o=n){f.a=null -A.ah(g.a,f) +A.aa(g.a,f) s.a=o n=o.a}r=g.a m=r.c @@ -1411,116 +1320,116 @@ l=(l&1)!==0||(l&15)===8}else l=!0 if(l){k=f.b.b if(p){r=r.b===k r=!(r||r)}else r=!1 -if(r){A.bY(m.a,m.b) -return}j=$.j -if(j!==k)$.j=k +if(r){A.bK(m.a,m.b) +return}j=$.i +if(j!==k)$.i=k else j=null f=f.c -if((f&15)===8)new A.cN(s,g,p).$0() -else if(q){if((f&1)!==0)new A.cM(s,m).$0()}else if((f&2)!==0)new A.cL(g,s).$0() -if(j!=null)$.j=j +if((f&15)===8)new A.cs(s,g,p).$0() +else if(q){if((f&1)!==0)new A.cr(s,m).$0()}else if((f&2)!==0)new A.cq(g,s).$0() +if(j!=null)$.i=j f=s.c if(f instanceof A.o){r=s.a.$ti -r=r.i("a7<2>").b(f)||!r.y[1].b(f)}else r=!1 +r=r.i("a0<2>").b(f)||!r.y[1].b(f)}else r=!1 if(r){i=s.a.b if((f.a&24)!==0){h=i.c i.c=null -b=i.L(h) +b=i.H(h) i.a=f.a&30|i.a&1 i.c=f.c g.a=f -continue}else A.e4(f,i) +continue}else A.dE(f,i) return}}i=s.a.b h=i.c i.c=null -b=i.L(h) +b=i.H(h) f=s.b r=s.c if(!f){i.a=8 i.c=r}else{i.a=i.a&1|16 i.c=r}g.a=i f=i}}, -ha(a,b){if(t.C.b(a))return b.a4(a) +fJ(a,b){if(t.C.b(a))return b.a_(a) if(t.v.b(a))return a -throw A.b(A.dM(a,"onError",u.c))}, -h6(){var s,r -for(s=$.ai;s!=null;s=$.ai){$.b8=null +throw A.b(A.dj(a,"onError",u.c))}, +fF(){var s,r +for(s=$.ab;s!=null;s=$.ab){$.aV=null r=s.b -$.ai=r -if(r==null)$.b7=null +$.ab=r +if(r==null)$.aU=null s.a.$0()}}, -hd(){$.dx=!0 -try{A.h6()}finally{$.b8=null -$.dx=!1 -if($.ai!=null)$.dK().$1(A.eu())}}, -es(a){var s=new A.bH(a),r=$.b7 -if(r==null){$.ai=$.b7=s -if(!$.dx)$.dK().$1(A.eu())}else $.b7=r.b=s}, -hc(a){var s,r,q,p=$.ai -if(p==null){A.es(a) -$.b8=$.b7 -return}s=new A.bH(a) -r=$.b8 +fM(){$.d6=!0 +try{A.fF()}finally{$.aV=null +$.d6=!1 +if($.ab!=null)$.dh().$1(A.e3())}}, +e1(a){var s=new A.bv(a),r=$.aU +if(r==null){$.ab=$.aU=s +if(!$.d6)$.dh().$1(A.e3())}else $.aU=r.b=s}, +fL(a){var s,r,q,p=$.ab +if(p==null){A.e1(a) +$.aV=$.aU +return}s=new A.bv(a) +r=$.aV if(r==null){s.b=p -$.ai=$.b8=s}else{q=r.b +$.ab=$.aV=s}else{q=r.b s.b=q -$.b8=r.b=s -if(q==null)$.b7=s}}, -dH(a){var s=null,r=$.j -if(B.a===r){A.aj(s,s,B.a,a) -return}A.aj(s,s,r,r.am(a))}, -hO(a){A.d8(a,"stream",t.K) -return new A.bS()}, -bZ(a){return}, -fk(a,b,c,d,e){var s=$.j,r=e?1:0,q=c!=null?32:0 -A.e2(s,c) -return new A.ae(a,b,s,r|q)}, -e2(a,b){if(b==null)b=A.ho() -if(t.j.b(b))return a.a4(b) +$.aV=r.b=s +if(q==null)$.aU=s}}, +df(a){var s=null,r=$.i +if(B.a===r){A.ac(s,s,B.a,a) +return}A.ac(s,s,r,r.ah(a))}, +hm(a){A.cN(a,"stream",t.K) +return new A.bF()}, +bL(a){return}, +eU(a,b,c,d,e){var s=$.i,r=e?1:0,q=c!=null?32:0 +A.dC(s,c) +return new A.a7(a,b,s,r|q)}, +dC(a,b){if(b==null)b=A.fW() +if(t.h.b(b))return a.a_(b) if(t.u.b(b))return b -throw A.b(A.c1("handleError callback must take either an Object (the error), or both an Object (the error) and a StackTrace.",null))}, -h7(a,b){A.bY(a,b)}, -bY(a,b){A.hc(new A.d5(a,b))}, -ep(a,b,c,d){var s,r=$.j +throw A.b(A.b_("handleError callback must take either an Object (the error), or both an Object (the error) and a StackTrace.",null))}, +fG(a,b){A.bK(a,b)}, +bK(a,b){A.fL(new A.cK(a,b))}, +dZ(a,b,c,d){var s,r=$.i if(r===c)return d.$0() -$.j=c +$.i=c s=r try{r=d.$0() -return r}finally{$.j=s}}, -eq(a,b,c,d,e){var s,r=$.j +return r}finally{$.i=s}}, +e_(a,b,c,d,e){var s,r=$.i if(r===c)return d.$1(e) -$.j=c +$.i=c s=r try{r=d.$1(e) -return r}finally{$.j=s}}, -hb(a,b,c,d,e,f){var s,r=$.j +return r}finally{$.i=s}}, +fK(a,b,c,d,e,f){var s,r=$.i if(r===c)return d.$2(e,f) -$.j=c +$.i=c s=r try{r=d.$2(e,f) -return r}finally{$.j=s}}, -aj(a,b,c,d){if(B.a!==c)d=c.am(d) -A.es(d)}, -cz:function cz(a){this.a=a}, -cy:function cy(a,b,c){this.a=a +return r}finally{$.i=s}}, +ac(a,b,c,d){if(B.a!==c)d=c.ah(d) +A.e1(d)}, +ce:function ce(a){this.a=a}, +cd:function cd(a,b,c){this.a=a this.b=b this.c=c}, -cA:function cA(a){this.a=a}, -cB:function cB(a){this.a=a}, -cW:function cW(){}, -cX:function cX(a,b){this.a=a +cf:function cf(a){this.a=a}, +cg:function cg(a){this.a=a}, +cA:function cA(){}, +cB:function cB(a,b){this.a=a this.b=b}, -bG:function bG(a,b){this.a=a +bu:function bu(a,b){this.a=a this.b=!1 this.$ti=b}, -d1:function d1(a){this.a=a}, -d2:function d2(a){this.a=a}, -d6:function d6(a){this.a=a}, -be:function be(a,b){this.a=a +cG:function cG(a){this.a=a}, +cH:function cH(a){this.a=a}, +cL:function cL(a){this.a=a}, +b2:function b2(a,b){this.a=a this.b=b}, -aO:function aO(a,b){this.a=a +aC:function aC(a,b){this.a=a this.$ti=b}, -aP:function aP(a,b,c,d){var _=this +aD:function aD(a,b,c,d){var _=this _.ay=0 _.CW=_.ch=null _.w=a @@ -1528,16 +1437,16 @@ _.a=b _.d=c _.e=d _.r=null}, -ad:function ad(){}, -b1:function b1(a,b,c){var _=this +a6:function a6(){}, +aP:function aP(a,b,c){var _=this _.a=a _.b=b _.c=0 _.e=_.d=null _.$ti=c}, -cV:function cV(a,b){this.a=a +cz:function cz(a,b){this.a=a this.b=b}, -ag:function ag(a,b,c,d,e){var _=this +a9:function a9(a,b,c,d,e){var _=this _.a=null _.b=a _.c=b @@ -1549,512 +1458,407 @@ _.a=0 _.b=a _.c=null _.$ti=b}, -cD:function cD(a,b){this.a=a +ci:function ci(a,b){this.a=a this.b=b}, -cK:function cK(a,b){this.a=a +cp:function cp(a,b){this.a=a this.b=b}, -cH:function cH(a){this.a=a}, -cI:function cI(a){this.a=a}, -cJ:function cJ(a,b,c){this.a=a +cm:function cm(a){this.a=a}, +cn:function cn(a){this.a=a}, +co:function co(a,b,c){this.a=a this.b=b this.c=c}, -cG:function cG(a,b){this.a=a +cl:function cl(a,b){this.a=a this.b=b}, -cF:function cF(a,b){this.a=a +ck:function ck(a,b){this.a=a this.b=b}, -cE:function cE(a,b,c){this.a=a +cj:function cj(a,b,c){this.a=a this.b=b this.c=c}, -cN:function cN(a,b,c){this.a=a +cs:function cs(a,b,c){this.a=a this.b=b this.c=c}, -cO:function cO(a){this.a=a}, -cM:function cM(a,b){this.a=a +ct:function ct(a){this.a=a}, +cr:function cr(a,b){this.a=a this.b=b}, -cL:function cL(a,b){this.a=a +cq:function cq(a,b){this.a=a this.b=b}, -bH:function bH(a){this.a=a +bv:function bv(a){this.a=a this.b=null}, -ab:function ab(){}, -cn:function cn(a,b){this.a=a +a4:function a4(){}, +c2:function c2(a,b){this.a=a this.b=b}, -co:function co(a,b){this.a=a +c3:function c3(a,b){this.a=a this.b=b}, -bR:function bR(){}, -cU:function cU(a){this.a=a}, -bI:function bI(){}, -ac:function ac(a,b,c,d){var _=this +bE:function bE(){}, +cy:function cy(a){this.a=a}, +bw:function bw(){}, +a5:function a5(a,b,c,d){var _=this _.a=null _.b=0 _.d=a _.e=b _.f=c _.$ti=d}, -U:function U(a,b){this.a=a +P:function P(a,b){this.a=a this.$ti=b}, -ae:function ae(a,b,c,d){var _=this +a7:function a7(a,b,c,d){var _=this _.w=a _.a=b _.d=c _.e=d _.r=null}, -a2:function a2(){}, -b0:function b0(){}, -bK:function bK(){}, -af:function af(a){this.b=a +W:function W(){}, +aO:function aO(){}, +by:function by(){}, +a8:function a8(a){this.b=a this.a=null}, -aZ:function aZ(){this.a=0 +aM:function aM(){this.a=0 this.c=this.b=null}, -cQ:function cQ(a,b){this.a=a +cv:function cv(a,b){this.a=a this.b=b}, -aQ:function aQ(a){this.a=1 +aE:function aE(a){this.a=1 this.b=a this.c=null}, -bS:function bS(){}, -d0:function d0(){}, -d5:function d5(a,b){this.a=a +bF:function bF(){}, +cF:function cF(){}, +cK:function cK(a,b){this.a=a this.b=b}, -cS:function cS(){}, -cT:function cT(a,b){this.a=a +cw:function cw(){}, +cx:function cx(a,b){this.a=a this.b=b}, -e5(a,b){var s=a[b] +dF(a,b){var s=a[b] return s===a?null:s}, -e6(a,b,c){if(c==null)a[b]=a +dG(a,b,c){if(c==null)a[b]=a else a[b]=c}, -fm(){var s=Object.create(null) -A.e6(s,"",s) +eW(){var s=Object.create(null) +A.dG(s,"",s) delete s[""] return s}, -cg(a){var s,r={} -if(A.dD(a))return"{...}" -s=new A.aK("") -try{$.x.push(a) +eI(a){var s,r={} +if(A.db(a))return"{...}" +s=new A.bq("") +try{$.w.push(a) s.a+="{" r.a=!0 -a.t(0,new A.ch(r,s)) -s.a+="}"}finally{if(0>=$.x.length)return A.B($.x,-1) -$.x.pop()}r=s.a +a.I(0,new A.bZ(r,s)) +s.a+="}"}finally{if(0>=$.w.length)return A.A($.w,-1) +$.w.pop()}r=s.a return r.charCodeAt(0)==0?r:r}, -aR:function aR(){}, -aT:function aT(a){var _=this +aF:function aF(){}, +aH:function aH(a){var _=this _.a=0 _.e=_.d=_.c=_.b=null _.$ti=a}, -aS:function aS(a,b){this.a=a +aG:function aG(a,b){this.a=a this.$ti=b}, -bN:function bN(a,b,c){var _=this +bB:function bB(a,b,c){var _=this _.a=a _.b=b _.c=0 _.d=null _.$ti=c}, -i:function i(){}, +h:function h(){}, y:function y(){}, -ch:function ch(a,b){this.a=a +bZ:function bZ(a,b){this.a=a this.b=b}, -bV:function bV(){}, -aB:function aB(){}, -aN:function aN(){}, -b6:function b6(){}, -h8(a,b){var s,r,q,p=null -try{p=JSON.parse(a)}catch(r){s=A.O(r) +fH(a,b){var s,r,q,p=null +try{p=JSON.parse(a)}catch(r){s=A.M(r) q=String(s) -throw A.b(new A.c7(q))}q=A.d3(p) +throw A.b(new A.bS(q))}q=A.cI(p) return q}, -d3(a){var s +cI(a){var s if(a==null)return null if(typeof a!="object")return a -if(!Array.isArray(a))return new A.bO(a,Object.create(null)) -for(s=0;s4294967295)A.ba(A.fd(a,0,4294967295,"length",null)) -s=J.dU(A.W(new Array(a),c.i("r<0>"))) -if(a!==0&&b!=null)for(r=s.length,q=0;q")) -s=A.W([],b.i("r<0>")) -for(r=J.dk(a);r.l();)s.push(r.gm()) +eH(a,b,c){var s +if(a>4294967295)A.aY(A.eN(a,0,4294967295,"length",null)) +s=J.ds(A.aW(new Array(a),c.i("u<0>"))) return s}, -e_(a,b,c){var s=J.dk(b) +dy(a,b,c){var s=J.er(b) if(!s.l())return a if(c.length===0){do a+=A.n(s.gm()) while(s.l())}else{a+=A.n(s.gm()) for(;s.l();)a=a+c+A.n(s.gm())}return a}, -dV(a,b){return new A.bA(a,b.gb_(),b.gb1(),b.gb0())}, -a6(a){if(typeof a=="number"||A.d4(a)||a==null)return J.bb(a) +dw(){return A.K(new Error())}, +bP(a){if(typeof a=="number"||A.cJ(a)||a==null)return J.aZ(a) if(typeof a=="string")return JSON.stringify(a) -return A.fc(a)}, -f1(a,b){A.d8(a,"error",t.K) -A.d8(b,"stackTrace",t.l) -A.f0(a,b)}, -bd(a){return new A.bc(a)}, -c1(a,b){return new A.P(!1,null,b,a)}, -dM(a,b,c){return new A.P(!0,a,b,c)}, -fd(a,b,c,d,e){return new A.aI(b,c,!0,a,d,"Invalid value")}, -dS(a,b,c,d){return new A.bi(b,!0,a,d,"Index out of range")}, -ds(a){return new A.bF(a)}, -e1(a){return new A.bD(a)}, -dZ(a){return new A.H(a)}, -a0(a){return new A.bg(a)}, -f2(a,b,c){var s,r -if(A.dD(a)){if(b==="("&&c===")")return"(...)" -return b+"..."+c}s=A.W([],t.s) -$.x.push(a) -try{A.h4(a,s)}finally{if(0>=$.x.length)return A.B($.x,-1) -$.x.pop()}r=A.e_(b,s,", ")+c +return A.eM(a)}, +eD(a,b){A.cN(a,"error",t.K) +A.cN(b,"stackTrace",t.l) +A.eC(a,b)}, +b1(a){return new A.b0(a)}, +b_(a,b){return new A.B(!1,null,b,a)}, +dj(a,b,c){return new A.B(!0,a,b,c)}, +eN(a,b,c,d,e){return new A.az(b,c,!0,a,d,"Invalid value")}, +dq(a,b,c,d){return new A.b6(b,!0,a,d,"Index out of range")}, +dB(a){return new A.bt(a)}, +dA(a){return new A.br(a)}, +dx(a){return new A.F(a)}, +ah(a){return new A.b4(a)}, +eE(a,b,c){var s,r +if(A.db(a)){if(b==="("&&c===")")return"(...)" +return b+"..."+c}s=A.aW([],t.s) +$.w.push(a) +try{A.fD(a,s)}finally{if(0>=$.w.length)return A.A($.w,-1) +$.w.pop()}r=A.dy(b,s,", ")+c return r.charCodeAt(0)==0?r:r}, -dT(a,b,c){var s,r -if(A.dD(a))return b+"..."+c -s=new A.aK(b) -$.x.push(a) +dr(a,b,c){var s,r +if(A.db(a))return b+"..."+c +s=new A.bq(b) +$.w.push(a) try{r=s -r.a=A.e_(r.a,a,", ")}finally{if(0>=$.x.length)return A.B($.x,-1) -$.x.pop()}s.a+=c +r.a=A.dy(r.a,a,", ")}finally{if(0>=$.w.length)return A.A($.w,-1) +$.w.pop()}s.a+=c r=s.a return r.charCodeAt(0)==0?r:r}, -h4(a,b){var s,r,q,p,o,n,m,l=a.gq(a),k=0,j=0 +fD(a,b){var s,r,q,p,o,n,m,l=a.gp(a),k=0,j=0 while(!0){if(!(k<80||j<3))break if(!l.l())return s=A.n(l.gm()) b.push(s) k+=s.length+2;++j}if(!l.l()){if(j<=5)return -if(0>=b.length)return A.B(b,-1) +if(0>=b.length)return A.A(b,-1) r=b.pop() -if(0>=b.length)return A.B(b,-1) +if(0>=b.length)return A.A(b,-1) q=b.pop()}else{p=l.gm();++j if(!l.l()){if(j<=4){b.push(A.n(p)) return}r=A.n(p) -if(0>=b.length)return A.B(b,-1) +if(0>=b.length)return A.A(b,-1) q=b.pop() k+=r.length+2}else{o=l.gm();++j for(;l.l();p=o,o=n){n=l.gm();++j if(j>100){while(!0){if(!(k>75&&j>3))break -if(0>=b.length)return A.B(b,-1) +if(0>=b.length)return A.A(b,-1) k-=b.pop().length+2;--j}b.push("...") return}}q=A.n(p) r=A.n(o) k+=r.length+q.length+4}}if(j>b.length+2){k+=5 m="..."}else m=null while(!0){if(!(k>80&&b.length>3))break -if(0>=b.length)return A.B(b,-1) +if(0>=b.length)return A.A(b,-1) k-=b.pop().length+2 if(m==null){k+=5 m="..."}}if(m!=null)b.push(m) b.push(q) b.push(r)}, -ez(a){A.hH(a)}, -ci:function ci(a,b){this.a=a -this.b=b}, -h:function h(){}, -bc:function bc(a){this.a=a}, -I:function I(){}, -P:function P(a,b,c,d){var _=this +eb(a){A.hd(a)}, +j:function j(){}, +b0:function b0(a){this.a=a}, +G:function G(){}, +B:function B(a,b,c,d){var _=this _.a=a _.b=b _.c=c _.d=d}, -aI:function aI(a,b,c,d,e,f){var _=this +az:function az(a,b,c,d,e,f){var _=this _.e=a _.f=b _.a=c _.b=d _.c=e _.d=f}, -bi:function bi(a,b,c,d,e){var _=this +b6:function b6(a,b,c,d,e){var _=this _.f=a _.a=b _.b=c _.c=d _.d=e}, -bA:function bA(a,b,c,d){var _=this -_.a=a -_.b=b -_.c=c -_.d=d}, -bF:function bF(a){this.a=a}, -bD:function bD(a){this.a=a}, -H:function H(a){this.a=a}, -bg:function bg(a){this.a=a}, -aJ:function aJ(){}, -cC:function cC(a){this.a=a}, -c7:function c7(a){this.a=a}, +bt:function bt(a){this.a=a}, +br:function br(a){this.a=a}, +F:function F(a){this.a=a}, +b4:function b4(a){this.a=a}, +aA:function aA(){}, +ch:function ch(a){this.a=a}, +bS:function bS(a){this.a=a}, c:function c(){}, p:function p(){}, -d:function d(){}, -bT:function bT(){}, -aK:function aK(a){this.a=a}, -fN(a){var s,r=a.$dart_jsFunction -if(r!=null)return r -s=function(b,c){return function(){return b(c,Array.prototype.slice.apply(arguments))}}(A.fM,a) -s[$.dJ()]=a -a.$dart_jsFunction=s -return s}, -fM(a,b){return A.fa(a,b,null)}, -hk(a){if(typeof a=="function")return a -else return A.fN(a)}, -eo(a){return a==null||A.d4(a)||typeof a=="number"||typeof a=="string"||t.U.b(a)||t.G.b(a)||t.e.b(a)||t.O.b(a)||t.E.b(a)||t.k.b(a)||t.w.b(a)||t.D.b(a)||t.q.b(a)||t.J.b(a)||t.Y.b(a)}, -hD(a){if(A.eo(a))return a -return new A.dg(new A.aT(t.M)).$1(a)}, -dg:function dg(a){this.a=a}, -hq(a,b,c,d,e){var s=e.i("b1<0>"),r=new A.b1(null,null,s) -a[b]=t.g.a(A.hk(new A.d7(r,c,d))) -return new A.aO(r,s.i("aO<1>"))}, -ff(){var s=new A.cw() -s.az() +e:function e(){}, +bG:function bG(){}, +bq:function bq(a){this.a=a}, +fl(a,b,c){if(c>=1)return a.$1(b) +return a.$0()}, +dY(a){return a==null||A.cJ(a)||typeof a=="number"||typeof a=="string"||t.U.b(a)||t.E.b(a)||t.e.b(a)||t.O.b(a)||t.D.b(a)||t.k.b(a)||t.w.b(a)||t.B.b(a)||t.q.b(a)||t.J.b(a)||t.Y.b(a)}, +h9(a){if(A.dY(a))return a +return new A.cU(new A.aH(t.F)).$1(a)}, +cU:function cU(a){this.a=a}, +fY(a,b,c,d,e){var s,r=e.i("aP<0>"),q=new A.aP(null,null,r),p=new A.cM(q,c,d) +if(typeof p=="function")A.aY(A.b_("Attempting to rewrap a JS function.",null)) +s=function(f,g){return function(h){return f(g,h,arguments.length)}}(A.fl,p) +s[$.dg()]=p +a[b]=s +return new A.aC(q,r.i("aC<1>"))}, +eP(){var s=new A.cb() +s.an() return s}, -dE(){var s=0,r=A.h5(t.n),q,p -var $async$dE=A.hj(function(a,b){if(a===1)return A.fI(b,r) -while(true)switch(s){case 0:q=A.ff() +dc(){var s=0,r=A.fE(t.n),q,p +var $async$dc=A.fS(function(a,b){if(a===1)return A.fh(b,r) +while(true)switch(s){case 0:q=A.eP() p=q.a -p===$&&A.eC() -new A.U(p,A.D(p).i("U<1>")).aY(new A.dh(q)) -return A.fJ(null,r)}}) -return A.fK($async$dE,r)}, -d7:function d7(a,b,c){this.a=a +p===$&&A.ee() +new A.P(p,A.R(p).i("P<1>")).aP(new A.cV(q)) +return A.fi(null,r)}}) +return A.fj($async$dc,r)}, +cM:function cM(a,b,c){this.a=a this.b=b this.c=c}, -cw:function cw(){this.a=$}, -cx:function cx(a){this.a=a}, -dh:function dh(a){this.a=a}, -hH(a){if(typeof dartPrint=="function"){dartPrint(a) +cb:function cb(){this.a=$}, +cc:function cc(a){this.a=a}, +cV:function cV(a){this.a=a}, +hd(a){if(typeof dartPrint=="function"){dartPrint(a) return}if(typeof console=="object"&&typeof console.log!="undefined"){console.log(a) return}if(typeof print=="function"){print(a) return}throw"Unable to print message: "+String(a)}, -hJ(a){A.eB(new A.aA("Field '"+a+"' has been assigned during initialization."),new Error())}, -eC(){A.eB(new A.aA("Field '' has not been initialized."),new Error())}, -f3(a,b,c,d,e,f){var s +hg(a){A.ed(new A.aq("Field '"+a+"' has been assigned during initialization."),new Error())}, +ee(){A.ed(new A.aq("Field '' has not been initialized."),new Error())}, +eF(a,b,c,d,e,f){var s if(c==null)return a[b]() else{s=a[b](c) return s}}},B={} var w=[A,J,B] var $={} -A.dn.prototype={} -J.bj.prototype={ -C(a,b){return a===b}, -gp(a){return A.aH(a)}, -h(a){return"Instance of '"+A.cl(a)+"'"}, -aq(a,b){throw A.b(A.dV(a,b))}, -gn(a){return A.a4(A.dw(this))}} -J.bk.prototype={ +A.d_.prototype={} +J.b7.prototype={ +D(a,b){return a===b}, +gq(a){return A.ay(a)}, +h(a){return"Instance of '"+A.c0(a)+"'"}, +gk(a){return A.Y(A.d5(this))}} +J.b8.prototype={ h(a){return String(a)}, -gp(a){return a?519018:218159}, -gn(a){return A.a4(t.y)}, +gq(a){return a?519018:218159}, +gk(a){return A.Y(t.y)}, $if:1} -J.av.prototype={ -C(a,b){return null==b}, +J.am.prototype={ +D(a,b){return null==b}, h(a){return"null"}, -gp(a){return 0}, +gq(a){return 0}, $if:1, $ip:1} -J.ax.prototype={$im:1} -J.R.prototype={ -gp(a){return 0}, +J.ao.prototype={$im:1} +J.O.prototype={ +gq(a){return 0}, h(a){return String(a)}} -J.bB.prototype={} -J.aM.prototype={} -J.Q.prototype={ -h(a){var s=a[$.dJ()] -if(s==null)return this.av(a) -return"JavaScript function for "+J.bb(s)}} -J.aw.prototype={ -gp(a){return 0}, +J.bo.prototype={} +J.aB.prototype={} +J.N.prototype={ +h(a){var s=a[$.dg()] +if(s==null)return this.al(a) +return"JavaScript function for "+J.aZ(s)}} +J.an.prototype={ +gq(a){return 0}, h(a){return String(a)}} -J.ay.prototype={ -gp(a){return 0}, +J.ap.prototype={ +gq(a){return 0}, h(a){return String(a)}} -J.r.prototype={ -F(a,b){if(!!a.fixed$length)A.ba(A.ds("add")) -a.push(b)}, -a2(a,b){var s -if(!!a.fixed$length)A.ba(A.ds("addAll")) -if(Array.isArray(b)){this.aB(a,b) -return}for(s=J.dk(b);s.l();)a.push(s.gm())}, -aB(a,b){var s,r=b.length -if(r===0)return -if(a===b)throw A.b(A.a0(a)) -for(s=0;s").A(c).i("G<1,2>"))}, -B(a,b){if(!(b").u(c).i("E<1,2>"))}, +v(a,b){if(!(b"))}, -gp(a){return A.aH(a)}, +h(a){return A.dr(a,"[","]")}, +gp(a){return new J.a_(a,a.length,A.bI(a).i("a_<1>"))}, +gq(a){return A.ay(a)}, gj(a){return a.length}, -k(a,b){if(!(b>=0&&b=p){r.d=null return!1}r.d=q[s] r.c=s+1 return!0}} -J.bm.prototype={ +J.ba.prototype={ h(a){if(a===0&&1/a<0)return"-0.0" else return""+a}, -gp(a){var s,r,q,p,o=a|0 +gq(a){var s,r,q,p,o=a|0 if(a===o)return o&536870911 s=Math.abs(a) r=Math.log(s)/0.6931471805599453|0 q=Math.pow(2,r) p=s<1?s/q:q/s return((p*9007199254740992|0)+(p*3542243181176521|0))*599197+r*1259&536870911}, -aS(a,b){var s -if(a>0)s=this.aR(a,b) +aI(a,b){var s +if(a>0)s=this.aH(a,b) else{s=b>31?31:b s=a>>s>>>0}return s}, -aR(a,b){return b>31?0:a>>>b}, -gn(a){return A.a4(t.H)}, +aH(a,b){return b>31?0:a>>>b}, +gk(a){return A.Y(t.H)}, $il:1} -J.au.prototype={ -gn(a){return A.a4(t.S)}, +J.al.prototype={ +gk(a){return A.Y(t.S)}, $if:1, $ia:1} -J.bl.prototype={ -gn(a){return A.a4(t.i)}, +J.b9.prototype={ +gk(a){return A.Y(t.i)}, $if:1} -J.a8.prototype={ -au(a,b){return a+b}, +J.a1.prototype={ +ak(a,b){return a+b}, h(a){return a}, -gp(a){var s,r,q +gq(a){var s,r,q for(s=a.length,r=0,q=0;q>6}r=r+((r&67108863)<<3)&536870911 r^=r>>11 return r+((r&16383)<<15)&536870911}, -gn(a){return A.a4(t.N)}, +gk(a){return A.Y(t.N)}, gj(a){return a.length}, $if:1, -$iq:1} -A.aA.prototype={ +$ir:1} +A.aq.prototype={ h(a){return"LateInitializationError: "+this.a}} -A.e.prototype={} +A.d.prototype={} A.C.prototype={ -gq(a){var s=this -return new A.a9(s,s.gj(s),A.D(s).i("a9"))}, -M(a,b,c){return new A.G(this,b,A.D(this).i("@").A(c).i("G<1,2>"))}} -A.a9.prototype={ +gp(a){var s=this +return new A.a2(s,s.gj(s),A.R(s).i("a2"))}, +J(a,b,c){return new A.E(this,b,A.R(this).i("@").u(c).i("E<1,2>"))}} +A.a2.prototype={ gm(){var s=this.d return s==null?this.$ti.c.a(s):s}, -l(){var s,r=this,q=r.a,p=J.c_(q),o=p.gj(q) -if(r.b!==o)throw A.b(A.a0(q)) +l(){var s,r=this,q=r.a,p=J.e7(q),o=p.gj(q) +if(r.b!==o)throw A.b(A.ah(q)) s=r.c if(s>=o){r.d=null -return!1}r.d=p.B(q,s);++r.c +return!1}r.d=p.v(q,s);++r.c return!0}} -A.a1.prototype={ -gq(a){var s=this.a,r=A.D(this) -return new A.bp(s.gq(s),this.b,r.i("@<1>").A(r.y[1]).i("bp<1,2>"))}, +A.V.prototype={ +gp(a){var s=this.a +return new A.bd(s.gp(s),this.b,A.R(this).i("bd<1,2>"))}, gj(a){var s=this.a return s.gj(s)}} -A.ar.prototype={$ie:1} -A.bp.prototype={ +A.ai.prototype={$id:1} +A.bd.prototype={ l(){var s=this,r=s.b if(r.l()){s.a=s.c.$1(r.gm()) return!0}s.a=null return!1}, gm(){var s=this.a return s==null?this.$ti.y[1].a(s):s}} -A.G.prototype={ -gj(a){return J.c0(this.a)}, -B(a,b){return this.b.$1(J.eP(this.a,b))}} -A.at.prototype={} -A.T.prototype={ -gp(a){var s=this._hashCode -if(s!=null)return s -s=664597*B.h.gp(this.a)&536870911 -this._hashCode=s -return s}, -h(a){return'Symbol("'+this.a+'")'}, -C(a,b){if(b==null)return!1 -return b instanceof A.T&&this.a===b.a}, -$iaL:1} -A.ap.prototype={} -A.ao.prototype={ -h(a){return A.cg(this)}, -$iu:1} -A.aq.prototype={ -gj(a){return this.b.length}, -gag(){var s=this.$keys -if(s==null){s=Object.keys(this.a) -this.$keys=s}return s}, -G(a){if(typeof a!="string")return!1 -if("__proto__"===a)return!1 -return this.a.hasOwnProperty(a)}, -k(a,b){if(!this.G(b))return null -return this.b[this.a[b]]}, -t(a,b){var s,r,q=this.gag(),p=this.b -for(s=q.length,r=0;r"))}} -A.aU.prototype={ -gj(a){return this.a.length}, -gq(a){var s=this.a -return new A.bQ(s,s.length,this.$ti.i("bQ<1>"))}} -A.bQ.prototype={ -gm(){var s=this.d -return s==null?this.$ti.c.a(s):s}, -l(){var s=this,r=s.c -if(r>=s.b){s.d=null -return!1}s.d=s.a[r] -s.c=r+1 -return!0}} -A.cb.prototype={ -gb_(){var s=this.a -if(s instanceof A.T)return s -return this.a=new A.T(s)}, -gb1(){var s,r,q,p,o,n=this -if(n.c===1)return B.i -s=n.d -r=J.c_(s) -q=r.gj(s)-J.c0(n.e)-n.f -if(q===0)return B.i -p=[] -for(o=0;o>>0}, -h(a){return"Closure '"+this.$_name+"' of "+("Instance of '"+A.cl(this.a)+"'")}} -A.bJ.prototype={ +gq(a){return(A.de(this.a)^A.ay(this.$_target))>>>0}, +h(a){return"Closure '"+this.$_name+"' of "+("Instance of '"+A.c0(this.a)+"'")}} +A.bx.prototype={ h(a){return"Reading static variable '"+this.a+"' during its initialization"}} -A.bC.prototype={ +A.bp.prototype={ h(a){return"RuntimeError: "+this.a}} -A.cR.prototype={} -A.az.prototype={ -gj(a){return this.a}, -gv(){return new A.F(this,A.D(this).i("F<1>"))}, -G(a){var s=this.b -if(s==null)return!1 -return s[a]!=null}, -k(a,b){var s,r,q,p,o=null -if(typeof b=="string"){s=this.b -if(s==null)return o -r=s[b] -q=r==null?o:r.b -return q}else if(typeof b=="number"&&(b&0x3fffffff)===b){p=this.c -if(p==null)return o -r=p[b] -q=r==null?o:r.b -return q}else return this.aX(b)}, -aX(a){var s,r,q=this.d -if(q==null)return null -s=q[this.an(a)] -r=this.ao(s,a) -if(r<0)return null -return s[r].b}, -H(a,b,c){var s,r,q,p,o,n,m=this -if(typeof b=="string"){s=m.b -m.a8(s==null?m.b=m.X():s,b,c)}else if(typeof b=="number"&&(b&0x3fffffff)===b){r=m.c -m.a8(r==null?m.c=m.X():r,b,c)}else{q=m.d -if(q==null)q=m.d=m.X() -p=m.an(b) -o=q[p] -if(o==null)q[p]=[m.Y(b,c)] -else{n=m.ao(o,b) -if(n>=0)o[n].b=c -else o.push(m.Y(b,c))}}}, -t(a,b){var s=this,r=s.e,q=s.r -for(;r!=null;){b.$2(r.a,r.b) -if(q!==s.r)throw A.b(A.a0(s)) -r=r.c}}, -a8(a,b,c){var s=a[b] -if(s==null)a[b]=this.Y(b,c) -else s.b=c}, -Y(a,b){var s=this,r=new A.cf(a,b) -if(s.e==null)s.e=s.f=r -else s.f=s.f.c=r;++s.a -s.r=s.r+1&1073741823 -return r}, -an(a){return J.dj(a)&1073741823}, -ao(a,b){var s,r -if(a==null)return-1 -s=a.length -for(r=0;r"]=s -delete s[""] -return s}} -A.cf.prototype={} -A.F.prototype={ +A.ar.prototype={ gj(a){return this.a.a}, -gq(a){var s=this.a,r=new A.bo(s,s.r) +gp(a){var s=this.a,r=new A.bc(s,s.r) r.c=s.e return r}} -A.bo.prototype={ +A.bc.prototype={ gm(){return this.d}, l(){var s,r=this,q=r.a -if(r.b!==q.r)throw A.b(A.a0(q)) +if(r.b!==q.r)throw A.b(A.ah(q)) s=r.c if(s==null){r.d=null return!1}else{r.d=s.a r.c=s.c return!0}}} -A.dc.prototype={ +A.cQ.prototype={ $1(a){return this.a(a)}, -$S:7} -A.dd.prototype={ +$S:6} +A.cR.prototype={ $2(a,b){return this.a(a,b)}, -$S:8} -A.de.prototype={ +$S:7} +A.cS.prototype={ $1(a){return this.a(a)}, -$S:9} -A.bq.prototype={ -gn(a){return B.B}, +$S:8} +A.be.prototype={ +gk(a){return B.w}, $if:1, -$idl:1} -A.aE.prototype={} -A.br.prototype={ -gn(a){return B.C}, +$icY:1} +A.av.prototype={} +A.bf.prototype={ +gk(a){return B.x}, $if:1, -$idm:1} -A.aa.prototype={ +$icZ:1} +A.a3.prototype={ gj(a){return a.length}, -$iw:1} -A.aC.prototype={ -k(a,b){A.a3(b,a,a.length) +$iv:1} +A.at.prototype={ +n(a,b){A.X(b,a,a.length) return a[b]}, -$ie:1, +$id:1, $ic:1} -A.aD.prototype={$ie:1,$ic:1} -A.bs.prototype={ -gn(a){return B.D}, +A.au.prototype={$id:1,$ic:1} +A.bg.prototype={ +gk(a){return B.y}, $if:1, -$ic5:1} -A.bt.prototype={ -gn(a){return B.E}, +$ibQ:1} +A.bh.prototype={ +gk(a){return B.z}, $if:1, -$ic6:1} -A.bu.prototype={ -gn(a){return B.F}, -k(a,b){A.a3(b,a,a.length) +$ibR:1} +A.bi.prototype={ +gk(a){return B.A}, +n(a,b){A.X(b,a,a.length) return a[b]}, $if:1, -$ic8:1} -A.bv.prototype={ -gn(a){return B.G}, -k(a,b){A.a3(b,a,a.length) +$ibT:1} +A.bj.prototype={ +gk(a){return B.B}, +n(a,b){A.X(b,a,a.length) return a[b]}, $if:1, -$ic9:1} -A.bw.prototype={ -gn(a){return B.H}, -k(a,b){A.a3(b,a,a.length) +$ibU:1} +A.bk.prototype={ +gk(a){return B.C}, +n(a,b){A.X(b,a,a.length) return a[b]}, $if:1, -$ica:1} -A.bx.prototype={ -gn(a){return B.I}, -k(a,b){A.a3(b,a,a.length) +$ibV:1} +A.bl.prototype={ +gk(a){return B.D}, +n(a,b){A.X(b,a,a.length) return a[b]}, $if:1, -$ics:1} -A.by.prototype={ -gn(a){return B.J}, -k(a,b){A.a3(b,a,a.length) +$ic7:1} +A.bm.prototype={ +gk(a){return B.E}, +n(a,b){A.X(b,a,a.length) return a[b]}, $if:1, -$ict:1} -A.aF.prototype={ -gn(a){return B.K}, +$ic8:1} +A.aw.prototype={ +gk(a){return B.F}, gj(a){return a.length}, -k(a,b){A.a3(b,a,a.length) +n(a,b){A.X(b,a,a.length) return a[b]}, $if:1, -$icu:1} -A.bz.prototype={ -gn(a){return B.L}, +$ic9:1} +A.bn.prototype={ +gk(a){return B.G}, gj(a){return a.length}, -k(a,b){A.a3(b,a,a.length) +n(a,b){A.X(b,a,a.length) return a[b]}, $if:1, -$icv:1} -A.aV.prototype={} -A.aW.prototype={} -A.aX.prototype={} -A.aY.prototype={} -A.z.prototype={ -i(a){return A.cZ(v.typeUniverse,this,a)}, -A(a){return A.fD(v.typeUniverse,this,a)}} -A.bM.prototype={} -A.cY.prototype={ -h(a){return A.v(this.a,null)}} -A.bL.prototype={ +$ica:1} +A.aI.prototype={} +A.aJ.prototype={} +A.aK.prototype={} +A.aL.prototype={} +A.x.prototype={ +i(a){return A.cD(v.typeUniverse,this,a)}, +u(a){return A.fc(v.typeUniverse,this,a)}} +A.bA.prototype={} +A.cC.prototype={ +h(a){return A.t(this.a,null)}} +A.bz.prototype={ h(a){return this.a}} -A.b2.prototype={$iI:1} -A.cz.prototype={ +A.aQ.prototype={$iG:1} +A.ce.prototype={ $1(a){var s=this.a,r=s.a s.a=null r.$0()}, $S:2} -A.cy.prototype={ +A.cd.prototype={ $1(a){var s,r this.a.a=a s=this.b r=this.c s.firstChild?s.removeChild(r):s.appendChild(r)}, -$S:10} -A.cA.prototype={ +$S:9} +A.cf.prototype={ $0(){this.a.$0()}, $S:3} -A.cB.prototype={ +A.cg.prototype={ $0(){this.a.$0()}, $S:3} -A.cW.prototype={ -aA(a,b){if(self.setTimeout!=null)self.setTimeout(A.d9(new A.cX(this,b),0),a) -else throw A.b(A.ds("`setTimeout()` not found."))}} -A.cX.prototype={ +A.cA.prototype={ +ao(a,b){if(self.setTimeout!=null)self.setTimeout(A.cO(new A.cB(this,b),0),a) +else throw A.b(A.dB("`setTimeout()` not found."))}} +A.cB.prototype={ $0(){this.b.$0()}, $S:0} -A.bG.prototype={} -A.d1.prototype={ +A.bu.prototype={} +A.cG.prototype={ $1(a){return this.a.$2(0,a)}, $S:4} -A.d2.prototype={ -$2(a,b){this.a.$2(1,new A.as(a,b))}, -$S:11} -A.d6.prototype={ +A.cH.prototype={ +$2(a,b){this.a.$2(1,new A.aj(a,b))}, +$S:10} +A.cL.prototype={ $2(a,b){this.a(a,b)}, -$S:12} -A.be.prototype={ +$S:11} +A.b2.prototype={ h(a){return A.n(this.a)}, -$ih:1, -gO(){return this.b}} -A.aO.prototype={} -A.aP.prototype={ -Z(){}, -a_(){}} -A.ad.prototype={ -gW(){return this.c<4}, -ak(a,b,c,d){var s,r,q,p,o,n=this -if((n.c&4)!==0){s=new A.aQ($.j) -A.dH(s.gaL()) +$ij:1, +gL(){return this.b}} +A.aC.prototype={} +A.aD.prototype={ +V(){}, +W(){}} +A.a6.prototype={ +gU(){return this.c<4}, +ae(a,b,c,d){var s,r,q,p,o,n=this +if((n.c&4)!==0){s=new A.aE($.i) +A.df(s.gaB()) if(c!=null)s.c=c -return s}s=$.j +return s}s=$.i r=d?1:0 q=b!=null?32:0 -A.e2(s,b) -p=new A.aP(n,a,s,r|q) +A.dC(s,b) +p=new A.aD(n,a,s,r|q) p.CW=p p.ch=p p.ay=n.c&1 @@ -2340,14 +2086,14 @@ p.ch=null p.CW=o if(o==null)n.d=p else o.ch=p -if(n.d===p)A.bZ(n.a) +if(n.d===p)A.bL(n.a) return p}, -ah(a){}, -ai(a){}, -P(){if((this.c&4)!==0)return new A.H("Cannot add new events after calling close") -return new A.H("Cannot add new events while doing an addStream")}, -aJ(a){var s,r,q,p,o=this,n=o.c -if((n&2)!==0)throw A.b(A.dZ(u.g)) +ab(a){}, +ac(a){}, +M(){if((this.c&4)!==0)return new A.F("Cannot add new events after calling close") +return new A.F("Cannot add new events while doing an addStream")}, +az(a){var s,r,q,p,o=this,n=o.c +if((n&2)!==0)throw A.b(A.dx(u.g)) s=o.d if(s==null)return r=n&1 @@ -2365,55 +2111,55 @@ else q.CW=p s.CW=s s.ch=s}s.ay=n&4294967293 s=q}else s=s.ch}o.c&=4294967293 -if(o.d==null)o.ab()}, -ab(){if((this.c&4)!==0)if(null.gbd())null.aa(null) -A.bZ(this.b)}} -A.b1.prototype={ -gW(){return A.ad.prototype.gW.call(this)&&(this.c&2)===0}, -P(){if((this.c&2)!==0)return new A.H(u.g) -return this.aw()}, -E(a){var s=this,r=s.d +if(o.d==null)o.a6()}, +a6(){if((this.c&4)!==0)if(null.gb1())null.a5(null) +A.bL(this.b)}} +A.aP.prototype={ +gU(){return A.a6.prototype.gU.call(this)&&(this.c&2)===0}, +M(){if((this.c&2)!==0)return new A.F(u.g) +return this.am()}, +B(a){var s=this,r=s.d if(r==null)return if(r===s.e){s.c|=2 -r.a7(a) +r.a3(a) s.c&=4294967293 -if(s.d==null)s.ab() -return}s.aJ(new A.cV(s,a))}} -A.cV.prototype={ -$1(a){a.a7(this.b)}, -$S(){return this.a.$ti.i("~(a2<1>)")}} -A.ag.prototype={ -aZ(a){if((this.c&15)!==6)return!0 -return this.b.b.a5(this.d,a.a)}, -aW(a){var s,r=this.e,q=null,p=a.a,o=this.b.b -if(t.C.b(r))q=o.b6(r,p,a.b) -else q=o.a5(r,p) +if(s.d==null)s.a6() +return}s.az(new A.cz(s,a))}} +A.cz.prototype={ +$1(a){a.a3(this.b)}, +$S(){return this.a.$ti.i("~(W<1>)")}} +A.a9.prototype={ +aQ(a){if((this.c&15)!==6)return!0 +return this.b.b.a0(this.d,a.a)}, +aO(a){var s,r=this.e,q=null,p=a.a,o=this.b.b +if(t.C.b(r))q=o.aV(r,p,a.b) +else q=o.a0(r,p) try{p=q -return p}catch(s){if(t.d.b(A.O(s))){if((this.c&1)!==0)throw A.b(A.c1("The error handler of Future.then must return a value of the returned future's type","onError")) -throw A.b(A.c1("The error handler of Future.catchError must return a value of the future's type","onError"))}else throw s}}} +return p}catch(s){if(t.c.b(A.M(s))){if((this.c&1)!==0)throw A.b(A.b_("The error handler of Future.then must return a value of the returned future's type","onError")) +throw A.b(A.b_("The error handler of Future.catchError must return a value of the future's type","onError"))}else throw s}}} A.o.prototype={ -aj(a){this.a=this.a&1|4 +ad(a){this.a=this.a&1|4 this.c=a}, -a6(a,b,c){var s,r,q=$.j -if(q===B.a){if(b!=null&&!t.C.b(b)&&!t.v.b(b))throw A.b(A.dM(b,"onError",u.c))}else if(b!=null)b=A.ha(b,q) +a1(a,b,c){var s,r,q=$.i +if(q===B.a){if(b!=null&&!t.C.b(b)&&!t.v.b(b))throw A.b(A.dj(b,"onError",u.c))}else if(b!=null)b=A.fJ(b,q) s=new A.o(q,c.i("o<0>")) r=b==null?1:3 -this.R(new A.ag(s,r,a,b,this.$ti.i("@<1>").A(c).i("ag<1,2>"))) +this.N(new A.a9(s,r,a,b,this.$ti.i("@<1>").u(c).i("a9<1,2>"))) return s}, -bb(a,b){return this.a6(a,null,b)}, -al(a,b,c){var s=new A.o($.j,c.i("o<0>")) -this.R(new A.ag(s,19,a,b,this.$ti.i("@<1>").A(c).i("ag<1,2>"))) +b_(a,b){return this.a1(a,null,b)}, +af(a,b,c){var s=new A.o($.i,c.i("o<0>")) +this.N(new A.a9(s,19,a,b,this.$ti.i("@<1>").u(c).i("a9<1,2>"))) return s}, -aP(a){this.a=this.a&1|16 +aF(a){this.a=this.a&1|16 this.c=a}, -I(a){this.a=a.a&30|this.a&1 +E(a){this.a=a.a&30|this.a&1 this.c=a.c}, -R(a){var s=this,r=s.a +N(a){var s=this,r=s.a if(r<=3){a.a=s.c s.c=a}else{if((r&4)!==0){r=s.c -if((r.a&24)===0){r.R(a) -return}s.I(r)}A.aj(null,null,s.b,new A.cD(s,a))}}, -a0(a){var s,r,q,p,o,n=this,m={} +if((r.a&24)===0){r.N(a) +return}s.E(r)}A.ac(null,null,s.b,new A.ci(s,a))}}, +X(a){var s,r,q,p,o,n=this,m={} m.a=a if(a==null)return s=n.a @@ -2422,218 +2168,217 @@ n.c=a if(r!=null){q=a.a for(p=a;q!=null;p=q,q=o)o=q.a p.a=r}}else{if((s&4)!==0){s=n.c -if((s.a&24)===0){s.a0(a) -return}n.I(s)}m.a=n.L(a) -A.aj(null,null,n.b,new A.cK(m,n))}}, -K(){var s=this.c +if((s.a&24)===0){s.X(a) +return}n.E(s)}m.a=n.H(a) +A.ac(null,null,n.b,new A.cp(m,n))}}, +G(){var s=this.c this.c=null -return this.L(s)}, -L(a){var s,r,q +return this.H(s)}, +H(a){var s,r,q for(s=a,r=null;s!=null;r=s,s=q){q=s.a s.a=r}return r}, -aF(a){var s,r,q,p=this +ar(a){var s,r,q,p=this p.a^=2 -try{a.a6(new A.cH(p),new A.cI(p),t.P)}catch(q){s=A.O(q) -r=A.Y(q) -A.dH(new A.cJ(p,s,r))}}, -S(a){var s=this,r=s.K() +try{a.a1(new A.cm(p),new A.cn(p),t.P)}catch(q){s=A.M(q) +r=A.K(q) +A.df(new A.co(p,s,r))}}, +P(a){var s=this,r=s.G() s.a=8 s.c=a -A.ah(s,r)}, -D(a,b){var s=this.K() -this.aP(A.c2(a,b)) -A.ah(this,s)}, -aa(a){if(this.$ti.i("a7<1>").b(a)){this.ac(a) -return}this.aD(a)}, -aD(a){this.a^=2 -A.aj(null,null,this.b,new A.cF(this,a))}, -ac(a){if(this.$ti.b(a)){A.fl(a,this) -return}this.aF(a)}, -aC(a,b){this.a^=2 -A.aj(null,null,this.b,new A.cE(this,a,b))}, -$ia7:1} -A.cD.prototype={ -$0(){A.ah(this.a,this.b)}, +A.aa(s,r)}, +A(a,b){var s=this.G() +this.aF(A.bM(a,b)) +A.aa(this,s)}, +a5(a){if(this.$ti.i("a0<1>").b(a)){this.a7(a) +return}this.ap(a)}, +ap(a){this.a^=2 +A.ac(null,null,this.b,new A.ck(this,a))}, +a7(a){if(this.$ti.b(a)){A.eV(a,this) +return}this.ar(a)}, +O(a,b){this.a^=2 +A.ac(null,null,this.b,new A.cj(this,a,b))}, +$ia0:1} +A.ci.prototype={ +$0(){A.aa(this.a,this.b)}, $S:0} -A.cK.prototype={ -$0(){A.ah(this.b,this.a.a)}, +A.cp.prototype={ +$0(){A.aa(this.b,this.a.a)}, $S:0} -A.cH.prototype={ +A.cm.prototype={ $1(a){var s,r,q,p=this.a p.a^=2 -try{p.S(p.$ti.c.a(a))}catch(q){s=A.O(q) -r=A.Y(q) -p.D(s,r)}}, +try{p.P(p.$ti.c.a(a))}catch(q){s=A.M(q) +r=A.K(q) +p.A(s,r)}}, $S:2} -A.cI.prototype={ -$2(a,b){this.a.D(a,b)}, -$S:13} -A.cJ.prototype={ -$0(){this.a.D(this.b,this.c)}, +A.cn.prototype={ +$2(a,b){this.a.A(a,b)}, +$S:12} +A.co.prototype={ +$0(){this.a.A(this.b,this.c)}, $S:0} -A.cG.prototype={ -$0(){A.e4(this.a.a,this.b)}, +A.cl.prototype={ +$0(){A.dE(this.a.a,this.b)}, $S:0} -A.cF.prototype={ -$0(){this.a.S(this.b)}, +A.ck.prototype={ +$0(){this.a.P(this.b)}, $S:0} -A.cE.prototype={ -$0(){this.a.D(this.b,this.c)}, +A.cj.prototype={ +$0(){this.a.A(this.b,this.c)}, $S:0} -A.cN.prototype={ +A.cs.prototype={ $0(){var s,r,q,p,o,n,m=this,l=null try{q=m.a.a -l=q.b.b.b4(q.d)}catch(p){s=A.O(p) -r=A.Y(p) +l=q.b.b.aT(q.d)}catch(p){s=A.M(p) +r=A.K(p) q=m.c&&m.b.a.c.a===s o=m.a if(q)o.c=m.b.a.c -else o.c=A.c2(s,r) +else o.c=A.bM(s,r) o.b=!0 return}if(l instanceof A.o&&(l.a&24)!==0){if((l.a&16)!==0){q=m.a q.c=l.c q.b=!0}return}if(l instanceof A.o){n=m.b.a q=m.a -q.c=l.bb(new A.cO(n),t.z) +q.c=l.b_(new A.ct(n),t.z) q.b=!1}}, $S:0} -A.cO.prototype={ +A.ct.prototype={ $1(a){return this.a}, -$S:14} -A.cM.prototype={ +$S:13} +A.cr.prototype={ $0(){var s,r,q,p,o try{q=this.a p=q.a -q.c=p.b.b.a5(p.d,this.b)}catch(o){s=A.O(o) -r=A.Y(o) +q.c=p.b.b.a0(p.d,this.b)}catch(o){s=A.M(o) +r=A.K(o) q=this.a -q.c=A.c2(s,r) +q.c=A.bM(s,r) q.b=!0}}, $S:0} -A.cL.prototype={ +A.cq.prototype={ $0(){var s,r,q,p,o,n,m=this try{s=m.a.a.c p=m.b -if(p.a.aZ(s)&&p.a.e!=null){p.c=p.a.aW(s) -p.b=!1}}catch(o){r=A.O(o) -q=A.Y(o) +if(p.a.aQ(s)&&p.a.e!=null){p.c=p.a.aO(s) +p.b=!1}}catch(o){r=A.M(o) +q=A.K(o) p=m.a.a.c n=m.b if(p.a===r)n.c=p -else n.c=A.c2(r,q) +else n.c=A.bM(r,q) n.b=!0}}, $S:0} -A.bH.prototype={} -A.ab.prototype={ -gj(a){var s={},r=new A.o($.j,t.a) +A.bv.prototype={} +A.a4.prototype={ +gj(a){var s={},r=new A.o($.i,t.a) s.a=0 -this.ap(new A.cn(s,this),!0,new A.co(s,r),r.gaG()) +this.ai(new A.c2(s,this),!0,new A.c3(s,r),r.gau()) return r}} -A.cn.prototype={ +A.c2.prototype={ $1(a){++this.a.a}, -$S(){return A.D(this.b).i("~(1)")}} -A.co.prototype={ -$0(){var s=this.b,r=this.a.a,q=s.K() +$S(){return A.R(this.b).i("~(1)")}} +A.c3.prototype={ +$0(){var s=this.b,r=this.a.a,q=s.G() s.a=8 s.c=r -A.ah(s,q)}, +A.aa(s,q)}, $S:0} -A.bR.prototype={ -gaN(){if((this.b&8)===0)return this.a -return this.a.ga1()}, -aI(){var s,r=this +A.bE.prototype={ +gaD(){if((this.b&8)===0)return this.a +return this.a.gY()}, +aw(){var s,r=this if((r.b&8)===0){s=r.a -return s==null?r.a=new A.aZ():s}s=r.a.ga1() +return s==null?r.a=new A.aM():s}s=r.a.gY() return s}, -gaT(){var s=this.a -return(this.b&8)!==0?s.ga1():s}, -aE(){if((this.b&4)!==0)return new A.H("Cannot add event after closing") -return new A.H("Cannot add event while adding a stream")}, -ak(a,b,c,d){var s,r,q,p,o=this -if((o.b&3)!==0)throw A.b(A.dZ("Stream has already been listened to.")) -s=A.fk(o,a,b,c,d) -r=o.gaN() +gaJ(){var s=this.a +return(this.b&8)!==0?s.gY():s}, +aq(){if((this.b&4)!==0)return new A.F("Cannot add event after closing") +return new A.F("Cannot add event while adding a stream")}, +ae(a,b,c,d){var s,r,q,p,o=this +if((o.b&3)!==0)throw A.b(A.dx("Stream has already been listened to.")) +s=A.eU(o,a,b,c,d) +r=o.gaD() q=o.b|=1 if((q&8)!==0){p=o.a -p.sa1(s) -p.b3()}else o.a=s -s.aQ(r) +p.sY(s) +p.aS()}else o.a=s +s.aG(r) q=s.e s.e=q|64 -new A.cU(o).$0() +new A.cy(o).$0() s.e&=4294967231 -s.ad((q&4)!==0) +s.a8((q&4)!==0) return s}, -ah(a){if((this.b&8)!==0)this.a.be() -A.bZ(this.e)}, -ai(a){if((this.b&8)!==0)this.a.b3() -A.bZ(this.f)}} -A.cU.prototype={ -$0(){A.bZ(this.a.d)}, +ab(a){if((this.b&8)!==0)this.a.b2() +A.bL(this.e)}, +ac(a){if((this.b&8)!==0)this.a.aS() +A.bL(this.f)}} +A.cy.prototype={ +$0(){A.bL(this.a.d)}, $S:0} -A.bI.prototype={ -E(a){this.gaT().a9(new A.af(a))}} -A.ac.prototype={} -A.U.prototype={ -gp(a){return(A.aH(this.a)^892482866)>>>0}, -C(a,b){if(b==null)return!1 +A.bw.prototype={ +B(a){this.gaJ().a4(new A.a8(a))}} +A.a5.prototype={} +A.P.prototype={ +gq(a){return(A.ay(this.a)^892482866)>>>0}, +D(a,b){if(b==null)return!1 if(this===b)return!0 -return b instanceof A.U&&b.a===this.a}} -A.ae.prototype={ -Z(){this.w.ah(this)}, -a_(){this.w.ai(this)}} -A.a2.prototype={ -aQ(a){if(a==null)return +return b instanceof A.P&&b.a===this.a}} +A.a7.prototype={ +V(){this.w.ab(this)}, +W(){this.w.ac(this)}} +A.W.prototype={ +aG(a){if(a==null)return this.r=a if(a.c!=null){this.e|=128 -a.N(this)}}, -a7(a){var s=this.e +a.K(this)}}, +a3(a){var s=this.e if((s&8)!==0)return -if(s<64)this.E(a) -else this.a9(new A.af(a))}, -Z(){}, -a_(){}, -a9(a){var s,r=this,q=r.r -if(q==null)q=r.r=new A.aZ() -q.F(0,a) +if(s<64)this.B(a) +else this.a4(new A.a8(a))}, +V(){}, +W(){}, +a4(a){var s,r=this,q=r.r +if(q==null)q=r.r=new A.aM() +q.ag(0,a) s=r.e if((s&128)===0){s|=128 r.e=s -if(s<256)q.N(r)}}, -E(a){var s=this,r=s.e +if(s<256)q.K(r)}}, +B(a){var s=this,r=s.e s.e=r|64 -s.d.ba(s.a,a) +s.d.aZ(s.a,a) s.e&=4294967231 -s.ad((r&4)!==0)}, -ad(a){var s,r,q=this,p=q.e +s.a8((r&4)!==0)}, +a8(a){var s,r,q=this,p=q.e if((p&128)!==0&&q.r.c==null){p=q.e=p&4294967167 +s=!1 if((p&4)!==0)if(p<256){s=q.r s=s==null?null:s.c==null -s=s!==!1}else s=!1 -else s=!1 -if(s){p&=4294967291 +s=s!==!1}if(s){p&=4294967291 q.e=p}}for(;!0;a=r){if((p&8)!==0){q.r=null return}r=(p&4)!==0 if(a===r)break q.e=p^64 -if(r)q.Z() -else q.a_() -p=q.e&=4294967231}if((p&128)!==0&&p<256)q.r.N(q)}} -A.b0.prototype={ -ap(a,b,c,d){return this.a.ak(a,d,c,b===!0)}, -aY(a){return this.ap(a,null,null,null)}} -A.bK.prototype={} -A.af.prototype={} -A.aZ.prototype={ -N(a){var s=this,r=s.a +if(r)q.V() +else q.W() +p=q.e&=4294967231}if((p&128)!==0&&p<256)q.r.K(q)}} +A.aO.prototype={ +ai(a,b,c,d){return this.a.ae(a,d,c,b===!0)}, +aP(a){return this.ai(a,null,null,null)}} +A.by.prototype={} +A.a8.prototype={} +A.aM.prototype={ +K(a){var s=this,r=s.a if(r===1)return if(r>=1){s.a=1 -return}A.dH(new A.cQ(s,a)) +return}A.df(new A.cv(s,a)) s.a=1}, -F(a,b){var s=this,r=s.c +ag(a,b){var s=this,r=s.c if(r==null)s.b=s.c=b else s.c=r.a=b}} -A.cQ.prototype={ +A.cv.prototype={ $0(){var s,r,q=this.a,p=q.a q.a=0 if(p===3)return @@ -2641,135 +2386,135 @@ s=q.b r=s.a q.b=r if(r==null)q.c=null -this.b.E(s.b)}, +this.b.B(s.b)}, $S:0} -A.aQ.prototype={ -aM(){var s,r=this,q=r.a-1 +A.aE.prototype={ +aC(){var s,r=this,q=r.a-1 if(q===0){r.a=-1 s=r.c if(s!=null){r.c=null -r.b.ar(s)}}else r.a=q}} -A.bS.prototype={} -A.d0.prototype={} -A.d5.prototype={ -$0(){A.f1(this.a,this.b)}, +r.b.aj(s)}}else r.a=q}} +A.bF.prototype={} +A.cF.prototype={} +A.cK.prototype={ +$0(){A.eD(this.a,this.b)}, $S:0} -A.cS.prototype={ -ar(a){var s,r,q -try{if(B.a===$.j){a.$0() -return}A.ep(null,null,this,a)}catch(q){s=A.O(q) -r=A.Y(q) -A.bY(s,r)}}, -b9(a,b){var s,r,q -try{if(B.a===$.j){a.$1(b) -return}A.eq(null,null,this,a,b)}catch(q){s=A.O(q) -r=A.Y(q) -A.bY(s,r)}}, -ba(a,b){return this.b9(a,b,t.z)}, -am(a){return new A.cT(this,a)}, -b5(a){if($.j===B.a)return a.$0() -return A.ep(null,null,this,a)}, -b4(a){return this.b5(a,t.z)}, -b8(a,b){if($.j===B.a)return a.$1(b) -return A.eq(null,null,this,a,b)}, -a5(a,b){var s=t.z -return this.b8(a,b,s,s)}, -b7(a,b,c){if($.j===B.a)return a.$2(b,c) -return A.hb(null,null,this,a,b,c)}, -b6(a,b,c){var s=t.z -return this.b7(a,b,c,s,s,s)}, -b2(a){return a}, -a4(a){var s=t.z -return this.b2(a,s,s,s)}} -A.cT.prototype={ -$0(){return this.a.ar(this.b)}, +A.cw.prototype={ +aj(a){var s,r,q +try{if(B.a===$.i){a.$0() +return}A.dZ(null,null,this,a)}catch(q){s=A.M(q) +r=A.K(q) +A.bK(s,r)}}, +aY(a,b){var s,r,q +try{if(B.a===$.i){a.$1(b) +return}A.e_(null,null,this,a,b)}catch(q){s=A.M(q) +r=A.K(q) +A.bK(s,r)}}, +aZ(a,b){return this.aY(a,b,t.z)}, +ah(a){return new A.cx(this,a)}, +aU(a){if($.i===B.a)return a.$0() +return A.dZ(null,null,this,a)}, +aT(a){return this.aU(a,t.z)}, +aX(a,b){if($.i===B.a)return a.$1(b) +return A.e_(null,null,this,a,b)}, +a0(a,b){var s=t.z +return this.aX(a,b,s,s)}, +aW(a,b,c){if($.i===B.a)return a.$2(b,c) +return A.fK(null,null,this,a,b,c)}, +aV(a,b,c){var s=t.z +return this.aW(a,b,c,s,s,s)}, +aR(a){return a}, +a_(a){var s=t.z +return this.aR(a,s,s,s)}} +A.cx.prototype={ +$0(){return this.a.aj(this.b)}, $S:0} -A.aR.prototype={ +A.aF.prototype={ gj(a){return this.a}, -gv(){return new A.aS(this,this.$ti.i("aS<1>"))}, -G(a){var s,r +gC(){return new A.aG(this,this.$ti.i("aG<1>"))}, +aL(a){var s,r if(typeof a=="string"&&a!=="__proto__"){s=this.b return s==null?!1:s[a]!=null}else if(typeof a=="number"&&(a&1073741823)===a){r=this.c -return r==null?!1:r[a]!=null}else return this.aH(a)}, -aH(a){var s=this.d +return r==null?!1:r[a]!=null}else return this.av(a)}, +av(a){var s=this.d if(s==null)return!1 -return this.V(this.af(s,a),a)>=0}, -k(a,b){var s,r,q +return this.T(this.aa(s,a),a)>=0}, +n(a,b){var s,r,q if(typeof b=="string"&&b!=="__proto__"){s=this.b -r=s==null?null:A.e5(s,b) +r=s==null?null:A.dF(s,b) return r}else if(typeof b=="number"&&(b&1073741823)===b){q=this.c -r=q==null?null:A.e5(q,b) -return r}else return this.aK(b)}, -aK(a){var s,r,q=this.d +r=q==null?null:A.dF(q,b) +return r}else return this.aA(b)}, +aA(a){var s,r,q=this.d if(q==null)return null -s=this.af(q,a) -r=this.V(s,a) +s=this.aa(q,a) +r=this.T(s,a) return r<0?null:s[r+1]}, -H(a,b,c){var s,r,q,p=this,o=p.d -if(o==null)o=p.d=A.fm() -s=A.dG(b)&1073741823 +a2(a,b,c){var s,r,q,p=this,o=p.d +if(o==null)o=p.d=A.eW() +s=A.de(b)&1073741823 r=o[s] -if(r==null){A.e6(o,s,[b,c]);++p.a -p.e=null}else{q=p.V(r,b) +if(r==null){A.dG(o,s,[b,c]);++p.a +p.e=null}else{q=p.T(r,b) if(q>=0)r[q+1]=c else{r.push(b,c);++p.a p.e=null}}}, -t(a,b){var s,r,q,p,o,n=this,m=n.ae() +I(a,b){var s,r,q,p,o,n=this,m=n.a9() for(s=m.length,r=n.$ti.y[1],q=0;q"))}} -A.bN.prototype={ +gp(a){var s=this.a +return new A.bB(s,s.a9(),this.$ti.i("bB<1>"))}} +A.bB.prototype={ gm(){var s=this.d return s==null?this.$ti.c.a(s):s}, l(){var s=this,r=s.b,q=s.c,p=s.a -if(r!==p.e)throw A.b(A.a0(p)) +if(r!==p.e)throw A.b(A.ah(p)) else if(q>=r.length){s.d=null return!1}else{s.d=r[q] s.c=q+1 return!0}}} -A.i.prototype={ -gq(a){return new A.a9(a,this.gj(a),A.am(a).i("a9"))}, -B(a,b){return this.k(a,b)}, -M(a,b,c){return new A.G(a,b,A.am(a).i("@").A(c).i("G<1,2>"))}, -h(a){return A.dT(a,"[","]")}} +A.h.prototype={ +gp(a){return new A.a2(a,this.gj(a),A.af(a).i("a2"))}, +v(a,b){return this.n(a,b)}, +J(a,b,c){return new A.E(a,b,A.af(a).i("@").u(c).i("E<1,2>"))}, +h(a){return A.dr(a,"[","]")}} A.y.prototype={ -t(a,b){var s,r,q,p -for(s=this.gv(),s=s.gq(s),r=A.D(this).i("y.V");s.l();){q=s.gm() -p=this.k(0,q) +I(a,b){var s,r,q,p +for(s=this.gC(),s=s.gp(s),r=A.R(this).i("y.V");s.l();){q=s.gm() +p=this.n(0,q) b.$2(q,p==null?r.a(p):p)}}, -gj(a){var s=this.gv() +gj(a){var s=this.gC() return s.gj(s)}, -h(a){return A.cg(this)}, -$iu:1} -A.ch.prototype={ +h(a){return A.eI(this)}, +$ias:1} +A.bZ.prototype={ $2(a,b){var s,r=this.a if(!r.a)this.b.a+=", " r.a=!1 @@ -2779,271 +2524,232 @@ s=r.a+=s r.a=s+": " s=A.n(b) r.a+=s}, -$S:15} -A.bV.prototype={} -A.aB.prototype={ -k(a,b){return this.a.k(0,b)}, -t(a,b){this.a.t(0,b)}, -gj(a){return this.a.a}, -gv(){var s=this.a -return new A.F(s,s.$ti.i("F<1>"))}, -h(a){return A.cg(this.a)}, -$iu:1} -A.aN.prototype={} -A.b6.prototype={} -A.bO.prototype={ -k(a,b){var s,r=this.b -if(r==null)return this.c.k(0,b) +$S:14} +A.bC.prototype={ +n(a,b){var s,r=this.b +if(r==null)return this.c.n(0,b) else if(typeof b!="string")return null else{s=r[b] -return typeof s=="undefined"?this.aO(b):s}}, -gj(a){return this.b==null?this.c.a:this.J().length}, -gv(){if(this.b==null){var s=this.c -return new A.F(s,A.D(s).i("F<1>"))}return new A.bP(this)}, -t(a,b){var s,r,q,p,o=this -if(o.b==null)return o.c.t(0,b) -s=o.J() +return typeof s=="undefined"?this.aE(b):s}}, +gj(a){return this.b==null?this.c.a:this.F().length}, +gC(){if(this.b==null){var s=this.c +return new A.ar(s,s.$ti.i("ar<1>"))}return new A.bD(this)}, +I(a,b){var s,r,q,p,o=this +if(o.b==null)return o.c.I(0,b) +s=o.F() for(r=0;r"))}return s}} -A.bf.prototype={} -A.bh.prototype={} -A.cd.prototype={ -aU(a,b){var s=A.h8(a,this.gaV().a) +gp(a){var s=this.a +if(s.b==null){s=s.gC() +s=s.gp(s)}else{s=s.F() +s=new J.a_(s,s.length,A.bI(s).i("a_<1>"))}return s}} +A.b3.prototype={} +A.b5.prototype={} +A.bX.prototype={ +aM(a,b){var s=A.fH(a,this.gaN().a) return s}, -gaV(){return B.y}} -A.ce.prototype={} -A.ci.prototype={ -$2(a,b){var s=this.b,r=this.a,q=s.a+=r.a -q+=a.a -s.a=q -s.a=q+": " -q=A.a6(b) -s.a+=q -r.a=", "}, -$S:16} -A.h.prototype={ -gO(){return A.fb(this)}} -A.bc.prototype={ +gaN(){return B.v}} +A.bY.prototype={} +A.j.prototype={ +gL(){return A.eL(this)}} +A.b0.prototype={ h(a){var s=this.a -if(s!=null)return"Assertion failed: "+A.a6(s) +if(s!=null)return"Assertion failed: "+A.bP(s) return"Assertion failed"}} -A.I.prototype={} -A.P.prototype={ -gU(){return"Invalid argument"+(!this.a?"(s)":"")}, -gT(){return""}, -h(a){var s=this,r=s.c,q=r==null?"":" ("+r+")",p=s.d,o=p==null?"":": "+p,n=s.gU()+q+o +A.G.prototype={} +A.B.prototype={ +gS(){return"Invalid argument"+(!this.a?"(s)":"")}, +gR(){return""}, +h(a){var s=this,r=s.c,q=r==null?"":" ("+r+")",p=s.d,o=p==null?"":": "+p,n=s.gS()+q+o if(!s.a)return n -return n+s.gT()+": "+A.a6(s.ga3())}, -ga3(){return this.b}} -A.aI.prototype={ -ga3(){return this.b}, -gU(){return"RangeError"}, -gT(){var s,r=this.e,q=this.f +return n+s.gR()+": "+A.bP(s.gZ())}, +gZ(){return this.b}} +A.az.prototype={ +gZ(){return this.b}, +gS(){return"RangeError"}, +gR(){var s,r=this.e,q=this.f if(r==null)s=q!=null?": Not less than or equal to "+A.n(q):"" else if(q==null)s=": Not greater than or equal to "+A.n(r) else if(q>r)s=": Not in inclusive range "+A.n(r)+".."+A.n(q) else s=q=4)A.ba(q.aE()) -if((s&1)!==0)q.E(r) -else if((s&3)===0)q.aI().F(0,new A.af(r))}, -$S:19} -A.dh.prototype={ +if(s>=4)A.aY(q.aq()) +if((s&1)!==0)q.B(r) +else if((s&3)===0)q.aw().ag(0,new A.a8(r))}, +$S:17} +A.cV.prototype={ $1(a){var s,r,q,p=null -if(typeof a=="string")try{s=t.f.a(B.r.aU(a,p)) -A.ez("Received "+a+" PARSED TO "+A.n(s)+"\n") -if(J.dL(J.eO(s,"message"),"voiceEndedCallback")){r=t.m.a(self) -A.f3(r,"postMessage",A.hD(a),p,p,p)}}catch(q){A.ez("Received data from WASM worker but it's not a String!\n")}}, -$S:4};(function aliases(){var s=J.R.prototype -s.av=s.h -s=A.ad.prototype -s.aw=s.P})();(function installTearOffs(){var s=hunkHelpers._static_1,r=hunkHelpers._static_0,q=hunkHelpers._static_2,p=hunkHelpers._instance_2u,o=hunkHelpers._instance_0u -s(A,"hl","fh",1) -s(A,"hm","fi",1) -s(A,"hn","fj",1) -r(A,"eu","hd",0) -q(A,"ho","h7",5) -p(A.o.prototype,"gaG","D",5) -o(A.aQ.prototype,"gaL","aM",0)})();(function inheritance(){var s=hunkHelpers.mixin,r=hunkHelpers.inherit,q=hunkHelpers.inheritMany -r(A.d,null) -q(A.d,[A.dn,J.bj,J.a5,A.h,A.c,A.a9,A.bp,A.at,A.T,A.aB,A.ao,A.bQ,A.cb,A.a_,A.cq,A.cj,A.as,A.b_,A.cR,A.y,A.cf,A.bo,A.z,A.bM,A.cY,A.cW,A.bG,A.be,A.ab,A.a2,A.ad,A.ag,A.o,A.bH,A.bR,A.bI,A.bK,A.aZ,A.aQ,A.bS,A.d0,A.bN,A.i,A.bV,A.bf,A.bh,A.aJ,A.cC,A.c7,A.p,A.bT,A.aK,A.cw]) -q(J.bj,[J.bk,J.av,J.ax,J.aw,J.ay,J.bm,J.a8]) -q(J.ax,[J.R,J.r,A.bq,A.aE]) -q(J.R,[J.bB,J.aM,J.Q]) -r(J.cc,J.r) -q(J.bm,[J.au,J.bl]) -q(A.h,[A.aA,A.I,A.bn,A.bE,A.bJ,A.bC,A.bL,A.bc,A.P,A.bA,A.bF,A.bD,A.H,A.bg]) -q(A.c,[A.e,A.a1,A.aU]) -q(A.e,[A.C,A.F,A.aS]) -r(A.ar,A.a1) -q(A.C,[A.G,A.bP]) -r(A.b6,A.aB) -r(A.aN,A.b6) -r(A.ap,A.aN) -r(A.aq,A.ao) -q(A.a_,[A.c4,A.c3,A.cp,A.dc,A.de,A.cz,A.cy,A.d1,A.cV,A.cH,A.cO,A.cn,A.dg,A.d7,A.cx,A.dh]) -q(A.c4,[A.ck,A.dd,A.d2,A.d6,A.cI,A.ch,A.ci]) -r(A.aG,A.I) -q(A.cp,[A.cm,A.an]) -q(A.y,[A.az,A.aR,A.bO]) -q(A.aE,[A.br,A.aa]) -q(A.aa,[A.aV,A.aX]) -r(A.aW,A.aV) -r(A.aC,A.aW) -r(A.aY,A.aX) -r(A.aD,A.aY) -q(A.aC,[A.bs,A.bt]) -q(A.aD,[A.bu,A.bv,A.bw,A.bx,A.by,A.aF,A.bz]) -r(A.b2,A.bL) -q(A.c3,[A.cA,A.cB,A.cX,A.cD,A.cK,A.cJ,A.cG,A.cF,A.cE,A.cN,A.cM,A.cL,A.co,A.cU,A.cQ,A.d5,A.cT]) -r(A.b0,A.ab) -r(A.U,A.b0) -r(A.aO,A.U) -r(A.ae,A.a2) -r(A.aP,A.ae) -r(A.b1,A.ad) -r(A.ac,A.bR) -r(A.af,A.bK) -r(A.cS,A.d0) -r(A.aT,A.aR) -r(A.cd,A.bf) -r(A.ce,A.bh) -q(A.P,[A.aI,A.bi]) -s(A.aV,A.i) -s(A.aW,A.at) -s(A.aX,A.i) -s(A.aY,A.at) -s(A.ac,A.bI) -s(A.b6,A.bV)})() -var v={typeUniverse:{eC:new Map(),tR:{},eT:{},tPV:{},sEA:[]},mangledGlobalNames:{a:"int",l:"double",hG:"num",q:"String",hp:"bool",p:"Null",f4:"List",d:"Object",u:"Map"},mangledNames:{},types:["~()","~(~())","p(@)","p()","~(@)","~(d,A)","~(q,@)","@(@)","@(@,q)","@(q)","p(~())","p(@,A)","~(a,@)","p(d,A)","o<@>(@)","~(d?,d?)","~(aL,@)","d?(d?)","~(d)","p(m)"],interceptorsByTag:null,leafTags:null,arrayRti:Symbol("$ti")} -A.fC(v.typeUniverse,JSON.parse('{"bB":"R","aM":"R","Q":"R","bk":{"f":[]},"av":{"p":[],"f":[]},"ax":{"m":[]},"R":{"m":[]},"r":{"e":["1"],"m":[],"c":["1"]},"cc":{"r":["1"],"e":["1"],"m":[],"c":["1"]},"bm":{"l":[]},"au":{"l":[],"a":[],"f":[]},"bl":{"l":[],"f":[]},"a8":{"q":[],"f":[]},"aA":{"h":[]},"e":{"c":["1"]},"C":{"e":["1"],"c":["1"]},"a1":{"c":["2"],"c.E":"2"},"ar":{"a1":["1","2"],"e":["2"],"c":["2"],"c.E":"2"},"G":{"C":["2"],"e":["2"],"c":["2"],"c.E":"2","C.E":"2"},"T":{"aL":[]},"ap":{"u":["1","2"]},"ao":{"u":["1","2"]},"aq":{"u":["1","2"]},"aU":{"c":["1"],"c.E":"1"},"aG":{"I":[],"h":[]},"bn":{"h":[]},"bE":{"h":[]},"b_":{"A":[]},"bJ":{"h":[]},"bC":{"h":[]},"az":{"y":["1","2"],"u":["1","2"],"y.V":"2"},"F":{"e":["1"],"c":["1"],"c.E":"1"},"bq":{"m":[],"dl":[],"f":[]},"aE":{"m":[]},"br":{"dm":[],"m":[],"f":[]},"aa":{"w":["1"],"m":[]},"aC":{"i":["l"],"w":["l"],"e":["l"],"m":[],"c":["l"]},"aD":{"i":["a"],"w":["a"],"e":["a"],"m":[],"c":["a"]},"bs":{"i":["l"],"c5":[],"w":["l"],"e":["l"],"m":[],"c":["l"],"f":[],"i.E":"l"},"bt":{"i":["l"],"c6":[],"w":["l"],"e":["l"],"m":[],"c":["l"],"f":[],"i.E":"l"},"bu":{"i":["a"],"c8":[],"w":["a"],"e":["a"],"m":[],"c":["a"],"f":[],"i.E":"a"},"bv":{"i":["a"],"c9":[],"w":["a"],"e":["a"],"m":[],"c":["a"],"f":[],"i.E":"a"},"bw":{"i":["a"],"ca":[],"w":["a"],"e":["a"],"m":[],"c":["a"],"f":[],"i.E":"a"},"bx":{"i":["a"],"cs":[],"w":["a"],"e":["a"],"m":[],"c":["a"],"f":[],"i.E":"a"},"by":{"i":["a"],"ct":[],"w":["a"],"e":["a"],"m":[],"c":["a"],"f":[],"i.E":"a"},"aF":{"i":["a"],"cu":[],"w":["a"],"e":["a"],"m":[],"c":["a"],"f":[],"i.E":"a"},"bz":{"i":["a"],"cv":[],"w":["a"],"e":["a"],"m":[],"c":["a"],"f":[],"i.E":"a"},"bL":{"h":[]},"b2":{"I":[],"h":[]},"o":{"a7":["1"]},"be":{"h":[]},"aO":{"U":["1"],"ab":["1"]},"aP":{"a2":["1"]},"b1":{"ad":["1"]},"ac":{"bR":["1"]},"U":{"ab":["1"]},"ae":{"a2":["1"]},"b0":{"ab":["1"]},"aR":{"y":["1","2"],"u":["1","2"]},"aT":{"aR":["1","2"],"y":["1","2"],"u":["1","2"],"y.V":"2"},"aS":{"e":["1"],"c":["1"],"c.E":"1"},"y":{"u":["1","2"]},"aB":{"u":["1","2"]},"aN":{"u":["1","2"]},"bO":{"y":["q","@"],"u":["q","@"],"y.V":"@"},"bP":{"C":["q"],"e":["q"],"c":["q"],"c.E":"q","C.E":"q"},"bc":{"h":[]},"I":{"h":[]},"P":{"h":[]},"aI":{"h":[]},"bi":{"h":[]},"bA":{"h":[]},"bF":{"h":[]},"bD":{"h":[]},"H":{"h":[]},"bg":{"h":[]},"aJ":{"h":[]},"bT":{"A":[]},"ca":{"e":["a"],"c":["a"]},"cv":{"e":["a"],"c":["a"]},"cu":{"e":["a"],"c":["a"]},"c8":{"e":["a"],"c":["a"]},"cs":{"e":["a"],"c":["a"]},"c9":{"e":["a"],"c":["a"]},"ct":{"e":["a"],"c":["a"]},"c5":{"e":["l"],"c":["l"]},"c6":{"e":["l"],"c":["l"]}}')) -A.fB(v.typeUniverse,JSON.parse('{"e":1,"at":1,"ao":2,"bo":1,"aa":1,"a2":1,"aP":1,"bI":1,"ae":1,"b0":1,"bK":1,"af":1,"aZ":1,"aQ":1,"bS":1,"bV":2,"aB":2,"aN":2,"b6":2,"bf":2,"bh":2}')) +if(typeof a=="string")try{s=t.f.a(B.m.aM(a,p)) +A.eb("Received "+a+" PARSED TO "+A.n(s)+"\n") +r=t.m.a(self) +A.eF(r,"postMessage",A.h9(a),p,p,p)}catch(q){A.eb("Received data from WASM worker but it's not a String!\n")}}, +$S:4};(function aliases(){var s=J.O.prototype +s.al=s.h +s=A.a6.prototype +s.am=s.M})();(function installTearOffs(){var s=hunkHelpers._static_1,r=hunkHelpers._static_0,q=hunkHelpers._static_2,p=hunkHelpers._instance_2u,o=hunkHelpers._instance_0u +s(A,"fT","eR",1) +s(A,"fU","eS",1) +s(A,"fV","eT",1) +r(A,"e3","fM",0) +q(A,"fW","fG",5) +p(A.o.prototype,"gau","A",5) +o(A.aE.prototype,"gaB","aC",0)})();(function inheritance(){var s=hunkHelpers.mixin,r=hunkHelpers.inherit,q=hunkHelpers.inheritMany +r(A.e,null) +q(A.e,[A.d_,J.b7,J.a_,A.j,A.c,A.a2,A.bd,A.ak,A.c5,A.c_,A.aj,A.aN,A.U,A.bc,A.x,A.bA,A.cC,A.cA,A.bu,A.b2,A.a4,A.W,A.a6,A.a9,A.o,A.bv,A.bE,A.bw,A.by,A.aM,A.aE,A.bF,A.cF,A.y,A.bB,A.h,A.b3,A.b5,A.aA,A.ch,A.bS,A.p,A.bG,A.bq,A.cb]) +q(J.b7,[J.b8,J.am,J.ao,J.an,J.ap,J.ba,J.a1]) +q(J.ao,[J.O,J.u,A.be,A.av]) +q(J.O,[J.bo,J.aB,J.N]) +r(J.bW,J.u) +q(J.ba,[J.al,J.b9]) +q(A.j,[A.aq,A.G,A.bb,A.bs,A.bx,A.bp,A.bz,A.b0,A.B,A.bt,A.br,A.F,A.b4]) +q(A.c,[A.d,A.V]) +q(A.d,[A.C,A.ar,A.aG]) +r(A.ai,A.V) +q(A.C,[A.E,A.bD]) +r(A.ax,A.G) +q(A.U,[A.bN,A.bO,A.c4,A.cQ,A.cS,A.ce,A.cd,A.cG,A.cz,A.cm,A.ct,A.c2,A.cU,A.cM,A.cc,A.cV]) +q(A.c4,[A.c1,A.ag]) +q(A.bO,[A.cR,A.cH,A.cL,A.cn,A.bZ]) +q(A.av,[A.bf,A.a3]) +q(A.a3,[A.aI,A.aK]) +r(A.aJ,A.aI) +r(A.at,A.aJ) +r(A.aL,A.aK) +r(A.au,A.aL) +q(A.at,[A.bg,A.bh]) +q(A.au,[A.bi,A.bj,A.bk,A.bl,A.bm,A.aw,A.bn]) +r(A.aQ,A.bz) +q(A.bN,[A.cf,A.cg,A.cB,A.ci,A.cp,A.co,A.cl,A.ck,A.cj,A.cs,A.cr,A.cq,A.c3,A.cy,A.cv,A.cK,A.cx]) +r(A.aO,A.a4) +r(A.P,A.aO) +r(A.aC,A.P) +r(A.a7,A.W) +r(A.aD,A.a7) +r(A.aP,A.a6) +r(A.a5,A.bE) +r(A.a8,A.by) +r(A.cw,A.cF) +q(A.y,[A.aF,A.bC]) +r(A.aH,A.aF) +r(A.bX,A.b3) +r(A.bY,A.b5) +q(A.B,[A.az,A.b6]) +s(A.aI,A.h) +s(A.aJ,A.ak) +s(A.aK,A.h) +s(A.aL,A.ak) +s(A.a5,A.bw)})() +var v={typeUniverse:{eC:new Map(),tR:{},eT:{},tPV:{},sEA:[]},mangledGlobalNames:{a:"int",l:"double",hc:"num",r:"String",fX:"bool",p:"Null",eG:"List",e:"Object",as:"Map"},mangledNames:{},types:["~()","~(~())","p(@)","p()","~(@)","~(e,z)","@(@)","@(@,r)","@(r)","p(~())","p(@,z)","~(a,@)","p(e,z)","o<@>(@)","~(e?,e?)","e?(e?)","~(e)","p(m)"],interceptorsByTag:null,leafTags:null,arrayRti:Symbol("$ti")} +A.fb(v.typeUniverse,JSON.parse('{"bo":"O","aB":"O","N":"O","b8":{"f":[]},"am":{"p":[],"f":[]},"ao":{"m":[]},"O":{"m":[]},"u":{"d":["1"],"m":[],"c":["1"]},"bW":{"u":["1"],"d":["1"],"m":[],"c":["1"]},"ba":{"l":[]},"al":{"l":[],"a":[],"f":[]},"b9":{"l":[],"f":[]},"a1":{"r":[],"f":[]},"aq":{"j":[]},"d":{"c":["1"]},"C":{"d":["1"],"c":["1"]},"V":{"c":["2"],"c.E":"2"},"ai":{"V":["1","2"],"d":["2"],"c":["2"],"c.E":"2"},"E":{"C":["2"],"d":["2"],"c":["2"],"c.E":"2","C.E":"2"},"ax":{"G":[],"j":[]},"bb":{"j":[]},"bs":{"j":[]},"aN":{"z":[]},"bx":{"j":[]},"bp":{"j":[]},"ar":{"d":["1"],"c":["1"],"c.E":"1"},"be":{"m":[],"cY":[],"f":[]},"av":{"m":[]},"bf":{"cZ":[],"m":[],"f":[]},"a3":{"v":["1"],"m":[]},"at":{"h":["l"],"v":["l"],"d":["l"],"m":[],"c":["l"]},"au":{"h":["a"],"v":["a"],"d":["a"],"m":[],"c":["a"]},"bg":{"bQ":[],"h":["l"],"v":["l"],"d":["l"],"m":[],"c":["l"],"f":[],"h.E":"l"},"bh":{"bR":[],"h":["l"],"v":["l"],"d":["l"],"m":[],"c":["l"],"f":[],"h.E":"l"},"bi":{"bT":[],"h":["a"],"v":["a"],"d":["a"],"m":[],"c":["a"],"f":[],"h.E":"a"},"bj":{"bU":[],"h":["a"],"v":["a"],"d":["a"],"m":[],"c":["a"],"f":[],"h.E":"a"},"bk":{"bV":[],"h":["a"],"v":["a"],"d":["a"],"m":[],"c":["a"],"f":[],"h.E":"a"},"bl":{"c7":[],"h":["a"],"v":["a"],"d":["a"],"m":[],"c":["a"],"f":[],"h.E":"a"},"bm":{"c8":[],"h":["a"],"v":["a"],"d":["a"],"m":[],"c":["a"],"f":[],"h.E":"a"},"aw":{"c9":[],"h":["a"],"v":["a"],"d":["a"],"m":[],"c":["a"],"f":[],"h.E":"a"},"bn":{"ca":[],"h":["a"],"v":["a"],"d":["a"],"m":[],"c":["a"],"f":[],"h.E":"a"},"bz":{"j":[]},"aQ":{"G":[],"j":[]},"o":{"a0":["1"]},"b2":{"j":[]},"aC":{"P":["1"],"a4":["1"]},"aD":{"W":["1"]},"aP":{"a6":["1"]},"a5":{"bE":["1"]},"P":{"a4":["1"]},"a7":{"W":["1"]},"aO":{"a4":["1"]},"aF":{"y":["1","2"],"as":["1","2"]},"aH":{"aF":["1","2"],"y":["1","2"],"as":["1","2"],"y.V":"2"},"aG":{"d":["1"],"c":["1"],"c.E":"1"},"y":{"as":["1","2"]},"bC":{"y":["r","@"],"as":["r","@"],"y.V":"@"},"bD":{"C":["r"],"d":["r"],"c":["r"],"c.E":"r","C.E":"r"},"b0":{"j":[]},"G":{"j":[]},"B":{"j":[]},"az":{"j":[]},"b6":{"j":[]},"bt":{"j":[]},"br":{"j":[]},"F":{"j":[]},"b4":{"j":[]},"aA":{"j":[]},"bG":{"z":[]},"bV":{"d":["a"],"c":["a"]},"ca":{"d":["a"],"c":["a"]},"c9":{"d":["a"],"c":["a"]},"bT":{"d":["a"],"c":["a"]},"c7":{"d":["a"],"c":["a"]},"bU":{"d":["a"],"c":["a"]},"c8":{"d":["a"],"c":["a"]},"bQ":{"d":["l"],"c":["l"]},"bR":{"d":["l"],"c":["l"]}}')) +A.fa(v.typeUniverse,JSON.parse('{"d":1,"ak":1,"bc":1,"a3":1,"W":1,"aD":1,"bw":1,"a7":1,"aO":1,"by":1,"a8":1,"aM":1,"aE":1,"bF":1,"b3":2,"b5":2}')) var u={g:"Cannot fire new event. Controller is already firing an event",c:"Error handler must accept one Object or one Object and a StackTrace as arguments, and return a value of the returned future's type"} -var t=(function rtii(){var s=A.dA -return{J:s("dl"),Y:s("dm"),Z:s("ap"),V:s("e<@>"),Q:s("h"),D:s("c5"),q:s("c6"),c:s("hM"),O:s("c8"),k:s("c9"),U:s("ca"),x:s("c"),s:s("r"),b:s("r<@>"),T:s("av"),m:s("m"),g:s("Q"),p:s("w<@>"),B:s("az"),f:s("u<@,@>"),F:s("u"),P:s("p"),K:s("d"),L:s("hN"),l:s("A"),N:s("q"),R:s("f"),d:s("I"),E:s("cs"),w:s("ct"),e:s("cu"),G:s("cv"),o:s("aM"),I:s("ac<@>"),h:s("o<@>"),a:s("o"),M:s("aT"),y:s("hp"),i:s("l"),z:s("@"),v:s("@(d)"),C:s("@(d,A)"),S:s("a"),A:s("0&*"),_:s("d*"),W:s("a7

?"),X:s("d?"),H:s("hG"),n:s("~"),u:s("~(d)"),j:s("~(d,A)")}})();(function constants(){var s=hunkHelpers.makeConstList -B.u=J.bj.prototype -B.b=J.r.prototype -B.v=J.au.prototype -B.h=J.a8.prototype -B.w=J.Q.prototype -B.x=J.ax.prototype -B.k=J.bB.prototype -B.c=J.aM.prototype -B.d=function getTagFallback(o) { +var t=(function rtii(){var s=A.e6 +return{J:s("cY"),Y:s("cZ"),V:s("d<@>"),Q:s("j"),B:s("bQ"),q:s("bR"),Z:s("hk"),O:s("bT"),k:s("bU"),U:s("bV"),x:s("c"),s:s("u"),b:s("u<@>"),T:s("am"),m:s("m"),g:s("N"),p:s("v<@>"),f:s("as<@,@>"),P:s("p"),K:s("e"),L:s("hl"),l:s("z"),N:s("r"),R:s("f"),c:s("G"),D:s("c7"),w:s("c8"),e:s("c9"),E:s("ca"),o:s("aB"),I:s("a5<@>"),d:s("o<@>"),a:s("o"),F:s("aH"),y:s("fX"),i:s("l"),z:s("@"),v:s("@(e)"),C:s("@(e,z)"),S:s("a"),A:s("0&*"),_:s("e*"),W:s("a0

?"),X:s("e?"),H:s("hc"),n:s("~"),u:s("~(e)"),h:s("~(e,z)")}})();(function constants(){B.o=J.b7.prototype +B.p=J.u.prototype +B.q=J.al.prototype +B.r=J.a1.prototype +B.t=J.N.prototype +B.u=J.ao.prototype +B.e=J.bo.prototype +B.b=J.aB.prototype +B.c=function getTagFallback(o) { var s = Object.prototype.toString.call(o); return s.substring(8, s.length - 1); } -B.l=function() { +B.f=function() { var toStringFunction = Object.prototype.toString; function getTag(o) { var s = toStringFunction.call(o); @@ -3075,7 +2781,7 @@ B.l=function() { prototypeForTag: prototypeForTag, discriminator: discriminator }; } -B.q=function(getTagFallback) { +B.l=function(getTagFallback) { return function(hooks) { if (typeof navigator != "object") return hooks; var userAgent = navigator.userAgent; @@ -3090,11 +2796,11 @@ B.q=function(getTagFallback) { hooks.getTag = getTagFallback; }; } -B.m=function(hooks) { +B.h=function(hooks) { if (typeof dartExperimentalFixupGetTag != "function") return hooks; hooks.getTag = dartExperimentalFixupGetTag(hooks.getTag); } -B.p=function(hooks) { +B.k=function(hooks) { if (typeof navigator != "object") return hooks; var userAgent = navigator.userAgent; if (typeof userAgent != "string") return hooks; @@ -3113,7 +2819,7 @@ B.p=function(hooks) { } hooks.getTag = getTagFirefox; } -B.o=function(hooks) { +B.j=function(hooks) { if (typeof navigator != "object") return hooks; var userAgent = navigator.userAgent; if (typeof userAgent != "string") return hooks; @@ -3144,7 +2850,7 @@ B.o=function(hooks) { hooks.getTag = getTagIE; hooks.prototypeForTag = prototypeForTagIE; } -B.n=function(hooks) { +B.i=function(hooks) { var getTag = hooks.getTag; var prototypeForTag = hooks.prototypeForTag; function getTagFixed(o) { @@ -3162,59 +2868,54 @@ B.n=function(hooks) { hooks.getTag = getTagFixed; hooks.prototypeForTag = prototypeForTagFixed; } -B.e=function(hooks) { return hooks; } +B.d=function(hooks) { return hooks; } -B.r=new A.cd() -B.f=new A.cR() -B.a=new A.cS() -B.t=new A.bT() -B.y=new A.ce(null) -B.i=A.W(s([]),t.b) -B.z={} -B.j=new A.aq(B.z,[],A.dA("aq")) -B.A=new A.T("call") -B.B=A.E("dl") -B.C=A.E("dm") -B.D=A.E("c5") -B.E=A.E("c6") -B.F=A.E("c8") -B.G=A.E("c9") -B.H=A.E("ca") -B.I=A.E("cs") -B.J=A.E("ct") -B.K=A.E("cu") -B.L=A.E("cv")})();(function staticFields(){$.cP=null -$.x=A.W([],A.dA("r")) -$.dW=null -$.dP=null -$.dO=null -$.ew=null -$.et=null -$.eA=null +B.m=new A.bX() +B.a=new A.cw() +B.n=new A.bG() +B.v=new A.bY(null) +B.w=A.D("cY") +B.x=A.D("cZ") +B.y=A.D("bQ") +B.z=A.D("bR") +B.A=A.D("bT") +B.B=A.D("bU") +B.C=A.D("bV") +B.D=A.D("c7") +B.E=A.D("c8") +B.F=A.D("c9") +B.G=A.D("ca")})();(function staticFields(){$.cu=null +$.w=A.aW([],A.e6("u")) +$.dt=null +$.dm=null +$.dl=null +$.e8=null +$.e2=null +$.ec=null +$.cP=null +$.cT=null $.da=null -$.df=null -$.dC=null -$.ai=null -$.b7=null -$.b8=null -$.dx=!1 -$.j=B.a})();(function lazyInitializers(){var s=hunkHelpers.lazyFinal -s($,"hL","dJ",()=>A.ht("_$dart_dartClosure")) -s($,"hP","eE",()=>A.J(A.cr({ +$.ab=null +$.aU=null +$.aV=null +$.d6=!1 +$.i=B.a})();(function lazyInitializers(){var s=hunkHelpers.lazyFinal +s($,"hj","dg",()=>A.h0("_$dart_dartClosure")) +s($,"hn","eg",()=>A.H(A.c6({ toString:function(){return"$receiver$"}}))) -s($,"hQ","eF",()=>A.J(A.cr({$method$:null, +s($,"ho","eh",()=>A.H(A.c6({$method$:null, toString:function(){return"$receiver$"}}))) -s($,"hR","eG",()=>A.J(A.cr(null))) -s($,"hS","eH",()=>A.J(function(){var $argumentsExpr$="$arguments$" +s($,"hp","ei",()=>A.H(A.c6(null))) +s($,"hq","ej",()=>A.H(function(){var $argumentsExpr$="$arguments$" try{null.$method$($argumentsExpr$)}catch(r){return r.message}}())) -s($,"hV","eK",()=>A.J(A.cr(void 0))) -s($,"hW","eL",()=>A.J(function(){var $argumentsExpr$="$arguments$" +s($,"ht","em",()=>A.H(A.c6(void 0))) +s($,"hu","en",()=>A.H(function(){var $argumentsExpr$="$arguments$" try{(void 0).$method$($argumentsExpr$)}catch(r){return r.message}}())) -s($,"hU","eJ",()=>A.J(A.e0(null))) -s($,"hT","eI",()=>A.J(function(){try{null.$method$}catch(r){return r.message}}())) -s($,"hY","eN",()=>A.J(A.e0(void 0))) -s($,"hX","eM",()=>A.J(function(){try{(void 0).$method$}catch(r){return r.message}}())) -s($,"hZ","dK",()=>A.fg())})();(function nativeSupport(){!function(){var s=function(a){var m={} +s($,"hs","el",()=>A.H(A.dz(null))) +s($,"hr","ek",()=>A.H(function(){try{null.$method$}catch(r){return r.message}}())) +s($,"hw","ep",()=>A.H(A.dz(void 0))) +s($,"hv","eo",()=>A.H(function(){try{(void 0).$method$}catch(r){return r.message}}())) +s($,"hx","dh",()=>A.eQ())})();(function nativeSupport(){!function(){var s=function(a){var m={} m[a]=1 return Object.keys(hunkHelpers.convertToFastObject(m))[0]} v.getIsolateTag=function(a){return s("___dart_"+a+v.isolateTag)} @@ -3225,15 +2926,15 @@ for(var o=0;;o++){var n=s(p+"_"+o+"_") if(!(n in q)){q[n]=1 v.isolateTag=n break}}v.dispatchPropertyName=v.getIsolateTag("dispatch_record")}() -hunkHelpers.setOrUpdateInterceptorsByTag({ArrayBuffer:A.bq,ArrayBufferView:A.aE,DataView:A.br,Float32Array:A.bs,Float64Array:A.bt,Int16Array:A.bu,Int32Array:A.bv,Int8Array:A.bw,Uint16Array:A.bx,Uint32Array:A.by,Uint8ClampedArray:A.aF,CanvasPixelArray:A.aF,Uint8Array:A.bz}) +hunkHelpers.setOrUpdateInterceptorsByTag({ArrayBuffer:A.be,ArrayBufferView:A.av,DataView:A.bf,Float32Array:A.bg,Float64Array:A.bh,Int16Array:A.bi,Int32Array:A.bj,Int8Array:A.bk,Uint16Array:A.bl,Uint32Array:A.bm,Uint8ClampedArray:A.aw,CanvasPixelArray:A.aw,Uint8Array:A.bn}) hunkHelpers.setOrUpdateLeafTags({ArrayBuffer:true,ArrayBufferView:false,DataView:true,Float32Array:true,Float64Array:true,Int16Array:true,Int32Array:true,Int8Array:true,Uint16Array:true,Uint32Array:true,Uint8ClampedArray:true,CanvasPixelArray:true,Uint8Array:false}) -A.aa.$nativeSuperclassTag="ArrayBufferView" -A.aV.$nativeSuperclassTag="ArrayBufferView" -A.aW.$nativeSuperclassTag="ArrayBufferView" -A.aC.$nativeSuperclassTag="ArrayBufferView" -A.aX.$nativeSuperclassTag="ArrayBufferView" -A.aY.$nativeSuperclassTag="ArrayBufferView" -A.aD.$nativeSuperclassTag="ArrayBufferView"})() +A.a3.$nativeSuperclassTag="ArrayBufferView" +A.aI.$nativeSuperclassTag="ArrayBufferView" +A.aJ.$nativeSuperclassTag="ArrayBufferView" +A.at.$nativeSuperclassTag="ArrayBufferView" +A.aK.$nativeSuperclassTag="ArrayBufferView" +A.aL.$nativeSuperclassTag="ArrayBufferView" +A.au.$nativeSuperclassTag="ArrayBufferView"})() Function.prototype.$1=function(a){return this(a)} Function.prototype.$0=function(){return this()} Function.prototype.$2=function(a,b){return this(a,b)} @@ -3245,6 +2946,6 @@ convertToFastObject($);(function(a){if(typeof document==="undefined"){a(null) return}if(typeof document.currentScript!="undefined"){a(document.currentScript) return}var s=document.scripts function onLoad(b){for(var q=0;q