on master help sign in
1467 files changed+16274−23517
since splitsnapshots
unifiedsplit
.cargo/config.toml+5 .github/workflows/build.yml+194−40 .gitignore+14−3 .vscode/settings.json+1 AGENTS.md+119 AUDIT-DEEP.md+230 AUDIT-FFI-PHONEMIC-APPLE.md+470 AUDIT-FRESH.md+385 AUDIT-NEW.md+816 CLAUDE.md+1 Cargo.lock+2378 Cargo.toml+54 Justfile+49 PROTOCOL-REVIEW.md+416 PROTOCOL.md+429−342 README.md+43−3 apple/SkrepkaApp/Core.swift+98 apple/SkrepkaApp/Effects.swift+428 apple/SkrepkaApp/Forms.swift+198 apple/SkrepkaApp/Info-iOS.plist+49 apple/SkrepkaApp/PhotoPicker.swift+90 apple/SkrepkaApp/QRView.swift+149 apple/SkrepkaApp/SkrepkaApp.swift+166 apple/SkrepkaApp/Views.swift+390 apple/project.yml+71 client/ApiClient.fs−134 client/App.fs−615 client/Crypto.fs−83 client/MauiProgram.fs−16 client/Phonemic.fs−110 client/Platforms/Android/AndroidManifest.xml−6 client/Platforms/Android/MainActivity.fs−17 client/Platforms/Android/MainApplication.fs−10 client/Platforms/Android/Resources/values/colors.xml−6 client/Platforms/MacCatalyst/AppDelegate.fs−10 client/Platforms/MacCatalyst/Info.plist−35 client/Platforms/MacCatalyst/Program.fs−9 client/Platforms/Tizen/Main.fs−16 client/Platforms/Tizen/tizen-manifest.xml−15 client/Platforms/Windows/App.fs−9 client/Platforms/Windows/Main.fs−9 client/Platforms/Windows/Package.appxmanifest−43 client/Platforms/Windows/app.manifest−15 client/Platforms/iOS/AppDelegate.fs−10 client/Platforms/iOS/Info.plist−37 client/Platforms/iOS/Program.fs−9 client/Properties/launchSettings.json−8 client/Resources/AppIcon/appicon.svg−4 client/Resources/AppIcon/appiconfg.svg−8 client/Resources/Fonts/OpenSans-Regular.ttf client/Resources/Fonts/OpenSans-Semibold.ttf client/Resources/Images/dotnet_bot.svg−93 client/Resources/Raw/AboutAssets.txt−15 client/Resources/Splash/splash.svg−8 client/Skrepka.fsproj−67 client/Skrepka.sln−28 client/Store.fs−111 client/bin/Debug/net10.0-ios/iossimulator-arm64/AOTCompileInputs.cache−1 client/bin/Debug/net10.0-ios/iossimulator-arm64/AOTCompileInputs.cache.uptodate−1 client/bin/Debug/net10.0-ios/iossimulator-arm64/Fabulous.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/LinkerInputs.cache−1 client/bin/Debug/net10.0-ios/iossimulator-arm64/LinkerInputs.cache.xml−1 client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.CSharp.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Configuration.Abstractions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Configuration.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.DependencyInjection.Abstractions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.DependencyInjection.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Diagnostics.Abstractions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.FileProviders.Abstractions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Hosting.Abstractions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Logging.Abstractions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Logging.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Options.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Primitives.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Maui.Controls.Compatibility.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Maui.Controls.Xaml.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Maui.Essentials.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Maui.Graphics.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Maui.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.VisualBasic.Core.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.VisualBasic.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Win32.Primitives.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Win32.Registry.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/NativeLink.cache−1 client/bin/Debug/net10.0-ios/iossimulator-arm64/NativeLink.cache.uptodate−1 client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/AboutAssets.txt−15 client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Assets.car client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Fabulous.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Info.plist client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/MauiSplash.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/MauiSplash.storyboardc/Info.plist client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/MauiSplash.storyboardc/UIViewController-01J-lp-oVM.nib client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.CSharp.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.Configuration.Abstractions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.Configuration.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.DependencyInjection.Abstractions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.DependencyInjection.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.Diagnostics.Abstractions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.FileProviders.Abstractions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.Hosting.Abstractions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.Logging.Abstractions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.Logging.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.Options.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.Primitives.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Maui.Controls.Compatibility.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Maui.Controls.Xaml.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Maui.Essentials.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Maui.Graphics.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Maui.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.VisualBasic.Core.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.VisualBasic.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Win32.Primitives.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Win32.Registry.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/MonoTouchDebugConfiguration.txt−2 client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/OpenSans-Regular.ttf client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/OpenSans-Semibold.ttf client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/PkgInfo−1 client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Settings.bundle/Root.plist client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Skrepka.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Skrepka.pdb client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Sodium.Core.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.AppContext.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Buffers.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Collections.Concurrent.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Collections.Immutable.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Collections.NonGeneric.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Collections.Specialized.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Collections.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ComponentModel.Annotations.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ComponentModel.DataAnnotations.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ComponentModel.EventBasedAsync.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ComponentModel.Primitives.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ComponentModel.TypeConverter.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ComponentModel.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Configuration.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Console.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Core.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Data.Common.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Data.DataSetExtensions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Data.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.Contracts.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.Debug.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.DiagnosticSource.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.FileVersionInfo.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.Process.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.StackTrace.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.TextWriterTraceListener.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.Tools.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.TraceSource.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.Tracing.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Drawing.Primitives.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Drawing.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Dynamic.Runtime.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Formats.Asn1.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Formats.Tar.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Globalization.Calendars.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Globalization.Extensions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Globalization.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.Compression.Brotli.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.Compression.FileSystem.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.Compression.ZipFile.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.Compression.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.FileSystem.AccessControl.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.FileSystem.DriveInfo.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.FileSystem.Primitives.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.FileSystem.Watcher.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.FileSystem.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.IsolatedStorage.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.MemoryMappedFiles.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.Pipelines.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.Pipes.AccessControl.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.Pipes.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.UnmanagedMemoryStream.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Linq.AsyncEnumerable.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Linq.Expressions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Linq.Parallel.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Linq.Queryable.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Linq.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Memory.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.Http.Json.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.Http.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.HttpListener.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.Mail.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.NameResolution.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.NetworkInformation.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.Ping.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.Primitives.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.Quic.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.Requests.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.Security.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.ServerSentEvents.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.ServicePoint.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.Sockets.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.WebClient.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.WebHeaderCollection.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.WebProxy.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.WebSockets.Client.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.WebSockets.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Numerics.Vectors.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Numerics.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ObjectModel.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Private.CoreLib.aotdata.arm64 client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Private.DataContractSerialization.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Private.Uri.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Private.Xml.Linq.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Reflection.DispatchProxy.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Reflection.Emit.ILGeneration.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Reflection.Emit.Lightweight.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Reflection.Emit.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Reflection.Extensions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Reflection.Metadata.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Reflection.Primitives.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Reflection.TypeExtensions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Reflection.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Resources.Reader.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Resources.ResourceManager.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Resources.Writer.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.CompilerServices.Unsafe.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.CompilerServices.VisualC.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Extensions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Handles.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.InteropServices.JavaScript.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.InteropServices.RuntimeInformation.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.InteropServices.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Intrinsics.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Loader.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Numerics.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Serialization.Formatters.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Serialization.Json.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Serialization.Primitives.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Serialization.Xml.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Serialization.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.AccessControl.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Claims.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Cryptography.Algorithms.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Cryptography.Cng.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Cryptography.Csp.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Cryptography.Encoding.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Cryptography.OpenSsl.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Cryptography.Primitives.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Cryptography.X509Certificates.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Cryptography.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Principal.Windows.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Principal.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.SecureString.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ServiceModel.Web.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ServiceProcess.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Text.Encoding.CodePages.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Text.Encoding.Extensions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Text.Encoding.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Text.Encodings.Web.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Text.Json.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Text.RegularExpressions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.AccessControl.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.Channels.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.Overlapped.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.Tasks.Dataflow.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.Tasks.Extensions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.Tasks.Parallel.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.Tasks.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.Thread.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.ThreadPool.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.Timer.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Transactions.Local.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Transactions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ValueTuple.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Web.HttpUtility.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Web.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Windows.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Xml.Linq.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Xml.ReaderWriter.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Xml.Serialization.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Xml.XDocument.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Xml.XPath.XDocument.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Xml.XPath.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Xml.XmlDocument.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Xml.XmlSerializer.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Xml.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/WindowsBase.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/_CodeSignature/CodeResources−3153 client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/appicon60x60@2x.png client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/appicon76x76@2x~ipad.png client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ar/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ca/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/cs/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/cs/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/da/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/de/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/de/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/dotnet_bot.png client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/dotnet_bot@2x.png client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/dotnet_bot@3x.png client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/el/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/es/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/es/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/fi/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/fr/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/fr/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/he/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/hi/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/hr/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/hu/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/id/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/it/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/it/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ja/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ja/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ko/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ko/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Globalization.Native.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.IO.Compression.Native.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Native.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Net.Security.Native.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Security.Cryptography.Native.Apple.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-debugger.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-diagnostics_tracing.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-hot_reload.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-marshal-ilgen.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libxamarin-dotnet-debug.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ms/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/mscorlib.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/nb/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/netstandard.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/nl/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/pl/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/pl/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/pt-BR/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/pt-BR/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/pt/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ro/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ru/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ru/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/runtimeconfig.bin−1 client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/sk/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D.png client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D@2x.png client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D@3x.png client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/sv/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/th/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/tr/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/tr/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/uk/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/vi/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/xml/microsoft_maui_essentials_fileprovider_file_paths.xml−6 client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/zh-HK/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/zh-Hans/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/zh-Hans/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/zh-Hant/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/zh-Hant/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.pdb client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.runtimeconfig.json−43 client/bin/Debug/net10.0-ios/iossimulator-arm64/Sodium.Core.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.AppContext.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Buffers.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Collections.Concurrent.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Collections.Immutable.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Collections.NonGeneric.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Collections.Specialized.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Collections.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ComponentModel.Annotations.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ComponentModel.DataAnnotations.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ComponentModel.EventBasedAsync.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ComponentModel.Primitives.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ComponentModel.TypeConverter.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ComponentModel.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Configuration.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Console.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Core.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Data.Common.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Data.DataSetExtensions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Data.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.Contracts.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.Debug.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.DiagnosticSource.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.FileVersionInfo.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.Process.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.StackTrace.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.TextWriterTraceListener.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.Tools.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.TraceSource.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.Tracing.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Drawing.Primitives.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Drawing.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Dynamic.Runtime.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Formats.Asn1.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Formats.Tar.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Globalization.Calendars.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Globalization.Extensions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Globalization.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Compression.Brotli.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Compression.FileSystem.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Compression.ZipFile.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Compression.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.FileSystem.AccessControl.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.FileSystem.DriveInfo.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.FileSystem.Primitives.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.FileSystem.Watcher.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.FileSystem.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.IsolatedStorage.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.MemoryMappedFiles.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Pipelines.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Pipes.AccessControl.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Pipes.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.UnmanagedMemoryStream.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Linq.AsyncEnumerable.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Linq.Expressions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Linq.Parallel.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Linq.Queryable.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Linq.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Memory.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Http.Json.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Http.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.HttpListener.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Mail.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.NameResolution.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.NetworkInformation.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Ping.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Primitives.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Quic.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Requests.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Security.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.ServerSentEvents.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.ServicePoint.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Sockets.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.WebClient.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.WebHeaderCollection.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.WebProxy.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.WebSockets.Client.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.WebSockets.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Numerics.Vectors.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Numerics.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ObjectModel.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Private.DataContractSerialization.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Private.Uri.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Private.Xml.Linq.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.DispatchProxy.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.Emit.ILGeneration.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.Emit.Lightweight.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.Emit.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.Extensions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.Metadata.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.Primitives.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.TypeExtensions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Resources.Reader.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Resources.ResourceManager.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Resources.Writer.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.CompilerServices.Unsafe.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.CompilerServices.VisualC.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Extensions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Handles.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.InteropServices.JavaScript.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.InteropServices.RuntimeInformation.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.InteropServices.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Intrinsics.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Loader.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Numerics.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Serialization.Formatters.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Serialization.Json.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Serialization.Primitives.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Serialization.Xml.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Serialization.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.AccessControl.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Claims.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.Algorithms.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.Cng.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.Csp.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.Encoding.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.OpenSsl.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.Primitives.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.X509Certificates.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Principal.Windows.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Principal.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.SecureString.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ServiceModel.Web.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ServiceProcess.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Text.Encoding.CodePages.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Text.Encoding.Extensions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Text.Encoding.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Text.Encodings.Web.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Text.Json.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Text.RegularExpressions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.AccessControl.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Channels.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Overlapped.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Tasks.Dataflow.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Tasks.Extensions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Tasks.Parallel.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Tasks.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Thread.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.ThreadPool.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Timer.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Transactions.Local.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Transactions.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ValueTuple.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Web.HttpUtility.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Web.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Windows.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.Linq.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.ReaderWriter.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.Serialization.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.XDocument.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.XPath.XDocument.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.XPath.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.XmlDocument.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.XmlSerializer.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/System.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/WindowsBase.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/ar/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/ca/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/codesign-bundle.items−18 client/bin/Debug/net10.0-ios/iossimulator-arm64/codesign.items−4 client/bin/Debug/net10.0-ios/iossimulator-arm64/cs/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/cs/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/da/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/de/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/de/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/el/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/es/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/es/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/fi/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/fr/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/fr/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/he/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/hi/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/hr/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/hu/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/id/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/it/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/it/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/ja/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/ja/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/ko/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/ko/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Globalization.Native.a client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Globalization.Native.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.IO.Compression.Native.a client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.IO.Compression.Native.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Native.a client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Native.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Net.Security.Native.a client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Net.Security.Native.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Security.Cryptography.Native.Apple.a client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Security.Cryptography.Native.Apple.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/libbrotlicommon.a client/bin/Debug/net10.0-ios/iossimulator-arm64/libbrotlidec.a client/bin/Debug/net10.0-ios/iossimulator-arm64/libextension-dotnet.a client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-debugger-stub-static.a client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-debugger.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-diagnostics_tracing-stub-static.a client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-diagnostics_tracing.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-hot_reload-static.a client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-hot_reload-stub-static.a client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-hot_reload.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-marshal-ilgen-static.a client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-marshal-ilgen-stub-static.a client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-marshal-ilgen.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/libxamarin-dotnet-debug.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/libxamarin-dotnet.dylib client/bin/Debug/net10.0-ios/iossimulator-arm64/ms/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/mscorlib.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/nb/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/netstandard.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/nl/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/pl/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/pl/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/postprocessing.items−17 client/bin/Debug/net10.0-ios/iossimulator-arm64/pt-BR/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/pt-BR/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/pt/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/ro/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/ru/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/ru/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/sk/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/sv/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/th/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/tr/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/tr/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/uk/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/vi/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/zh-HK/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/zh-Hans/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/zh-Hans/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/zh-Hant/FSharp.Core.resources.dll client/bin/Debug/net10.0-ios/iossimulator-arm64/zh-Hant/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/AOTCompileInputs.cache−1 client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/AOTCompileInputs.cache.uptodate−1 client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Fabulous.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/LinkerInputs.cache−1 client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/LinkerInputs.cache.xml−1 client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.CSharp.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Configuration.Abstractions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Configuration.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.DependencyInjection.Abstractions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.DependencyInjection.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Diagnostics.Abstractions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.FileProviders.Abstractions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Hosting.Abstractions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Logging.Abstractions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Logging.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Options.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Primitives.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Maui.Controls.Compatibility.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Maui.Controls.Xaml.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Maui.Essentials.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Maui.Graphics.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Maui.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.VisualBasic.Core.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.VisualBasic.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Win32.Primitives.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Win32.Registry.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/NativeLink.cache−1 client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/NativeLink.cache.uptodate−1 client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Info.plist client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Fabulous.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.CSharp.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Configuration.Abstractions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Configuration.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.DependencyInjection.Abstractions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.DependencyInjection.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Diagnostics.Abstractions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.FileProviders.Abstractions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Hosting.Abstractions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Logging.Abstractions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Logging.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Options.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Primitives.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Maui.Controls.Compatibility.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Maui.Controls.Xaml.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Maui.Essentials.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Maui.Graphics.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Maui.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.VisualBasic.Core.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.VisualBasic.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Win32.Primitives.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Win32.Registry.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Skrepka.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Skrepka.pdb client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Sodium.Core.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.AppContext.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Buffers.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Collections.Concurrent.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Collections.Immutable.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Collections.NonGeneric.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Collections.Specialized.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Collections.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ComponentModel.Annotations.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ComponentModel.DataAnnotations.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ComponentModel.EventBasedAsync.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ComponentModel.Primitives.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ComponentModel.TypeConverter.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ComponentModel.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Configuration.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Console.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Core.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Data.Common.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Data.DataSetExtensions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Data.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.Contracts.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.Debug.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.DiagnosticSource.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.FileVersionInfo.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.Process.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.StackTrace.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.TextWriterTraceListener.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.Tools.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.TraceSource.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.Tracing.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Drawing.Primitives.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Drawing.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Dynamic.Runtime.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Formats.Asn1.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Formats.Tar.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Globalization.Calendars.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Globalization.Extensions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Globalization.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.Compression.Brotli.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.Compression.FileSystem.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.Compression.ZipFile.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.Compression.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.FileSystem.AccessControl.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.FileSystem.DriveInfo.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.FileSystem.Primitives.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.FileSystem.Watcher.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.FileSystem.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.IsolatedStorage.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.MemoryMappedFiles.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.Pipelines.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.Pipes.AccessControl.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.Pipes.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.UnmanagedMemoryStream.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Linq.AsyncEnumerable.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Linq.Expressions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Linq.Parallel.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Linq.Queryable.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Linq.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Memory.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.Http.Json.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.Http.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.HttpListener.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.Mail.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.NameResolution.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.NetworkInformation.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.Ping.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.Primitives.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.Quic.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.Requests.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.Security.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.ServerSentEvents.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.ServicePoint.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.Sockets.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.WebClient.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.WebHeaderCollection.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.WebProxy.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.WebSockets.Client.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.WebSockets.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Numerics.Vectors.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Numerics.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ObjectModel.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Private.CoreLib.aotdata.arm64 client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Private.DataContractSerialization.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Private.Uri.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Private.Xml.Linq.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Reflection.DispatchProxy.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Reflection.Emit.ILGeneration.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Reflection.Emit.Lightweight.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Reflection.Emit.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Reflection.Extensions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Reflection.Metadata.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Reflection.Primitives.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Reflection.TypeExtensions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Reflection.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Resources.Reader.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Resources.ResourceManager.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Resources.Writer.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.CompilerServices.Unsafe.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.CompilerServices.VisualC.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Extensions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Handles.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.InteropServices.JavaScript.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.InteropServices.RuntimeInformation.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.InteropServices.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Intrinsics.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Loader.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Numerics.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Serialization.Formatters.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Serialization.Json.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Serialization.Primitives.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Serialization.Xml.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Serialization.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.AccessControl.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Claims.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.Algorithms.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.Cng.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.Csp.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.Encoding.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.OpenSsl.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.Primitives.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.X509Certificates.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Principal.Windows.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Principal.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.SecureString.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ServiceModel.Web.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ServiceProcess.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Text.Encoding.CodePages.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Text.Encoding.Extensions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Text.Encoding.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Text.Encodings.Web.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Text.Json.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Text.RegularExpressions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.AccessControl.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.Channels.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.Overlapped.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.Tasks.Dataflow.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.Tasks.Extensions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.Tasks.Parallel.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.Tasks.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.Thread.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.ThreadPool.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.Timer.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Transactions.Local.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Transactions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ValueTuple.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Web.HttpUtility.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Web.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Windows.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Xml.Linq.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Xml.ReaderWriter.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Xml.Serialization.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Xml.XDocument.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Xml.XPath.XDocument.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Xml.XPath.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Xml.XmlDocument.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Xml.XmlSerializer.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Xml.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/WindowsBase.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ar/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ca/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/cs/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/cs/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/da/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/de/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/de/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/el/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/es/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/es/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/fi/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/fr/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/fr/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/he/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/hi/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/hr/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/hu/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/id/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/it/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/it/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ja/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ja/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ko/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ko/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ms/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/mscorlib.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/nb/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/netstandard.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/nl/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/pl/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/pl/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/pt-BR/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/pt-BR/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/pt/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ro/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ru/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ru/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/runtimeconfig.bin−1 client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/sk/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/sv/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/th/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/tr/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/tr/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/uk/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/vi/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/zh-HK/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/zh-Hans/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/zh-Hans/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/zh-Hant/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/zh-Hant/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/PkgInfo−1 client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Resources/AboutAssets.txt−15 client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Resources/Assets.car client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Resources/MonoTouchDebugConfiguration.txt−2 client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Resources/OpenSans-Regular.ttf client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Resources/OpenSans-Semibold.ttf client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Resources/appicon.icns client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Resources/dotnet_bot.png client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Resources/dotnet_bot@2x.png client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Resources/dotnet_bot@3x.png client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/_CodeSignature/CodeResources−1967 client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.pdb client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.runtimeconfig.json−43 client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Sodium.Core.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.AppContext.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Buffers.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Collections.Concurrent.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Collections.Immutable.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Collections.NonGeneric.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Collections.Specialized.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Collections.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ComponentModel.Annotations.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ComponentModel.DataAnnotations.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ComponentModel.EventBasedAsync.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ComponentModel.Primitives.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ComponentModel.TypeConverter.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ComponentModel.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Configuration.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Console.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Core.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Data.Common.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Data.DataSetExtensions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Data.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.Contracts.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.Debug.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.DiagnosticSource.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.FileVersionInfo.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.Process.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.StackTrace.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.TextWriterTraceListener.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.Tools.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.TraceSource.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.Tracing.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Drawing.Primitives.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Drawing.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Dynamic.Runtime.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Formats.Asn1.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Formats.Tar.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Globalization.Calendars.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Globalization.Extensions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Globalization.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Compression.Brotli.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Compression.FileSystem.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Compression.ZipFile.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Compression.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.FileSystem.AccessControl.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.FileSystem.DriveInfo.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.FileSystem.Primitives.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.FileSystem.Watcher.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.FileSystem.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.IsolatedStorage.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.MemoryMappedFiles.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Pipelines.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Pipes.AccessControl.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Pipes.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.UnmanagedMemoryStream.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Linq.AsyncEnumerable.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Linq.Expressions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Linq.Parallel.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Linq.Queryable.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Linq.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Memory.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Http.Json.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Http.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.HttpListener.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Mail.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.NameResolution.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.NetworkInformation.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Ping.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Primitives.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Quic.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Requests.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Security.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.ServerSentEvents.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.ServicePoint.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Sockets.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.WebClient.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.WebHeaderCollection.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.WebProxy.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.WebSockets.Client.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.WebSockets.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Numerics.Vectors.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Numerics.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ObjectModel.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Private.DataContractSerialization.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Private.Uri.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Private.Xml.Linq.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.DispatchProxy.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.Emit.ILGeneration.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.Emit.Lightweight.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.Emit.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.Extensions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.Metadata.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.Primitives.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.TypeExtensions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Resources.Reader.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Resources.ResourceManager.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Resources.Writer.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.CompilerServices.Unsafe.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.CompilerServices.VisualC.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Extensions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Handles.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.InteropServices.JavaScript.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.InteropServices.RuntimeInformation.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.InteropServices.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Intrinsics.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Loader.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Numerics.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Serialization.Formatters.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Serialization.Json.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Serialization.Primitives.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Serialization.Xml.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Serialization.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.AccessControl.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Claims.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.Algorithms.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.Cng.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.Csp.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.Encoding.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.OpenSsl.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.Primitives.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.X509Certificates.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Principal.Windows.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Principal.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.SecureString.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ServiceModel.Web.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ServiceProcess.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Text.Encoding.CodePages.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Text.Encoding.Extensions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Text.Encoding.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Text.Encodings.Web.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Text.Json.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Text.RegularExpressions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.AccessControl.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Channels.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Overlapped.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Tasks.Dataflow.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Tasks.Extensions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Tasks.Parallel.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Tasks.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Thread.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.ThreadPool.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Timer.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Transactions.Local.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Transactions.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ValueTuple.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Web.HttpUtility.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Web.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Windows.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.Linq.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.ReaderWriter.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.Serialization.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.XDocument.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.XPath.XDocument.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.XPath.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.XmlDocument.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.XmlSerializer.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/WindowsBase.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ar/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ca/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/codesign-bundle.items−18 client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/codesign.items−4 client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/cs/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/cs/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/da/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/de/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/de/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/el/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/es/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/es/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/fi/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/fr/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/fr/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/he/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/hi/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/hr/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/hu/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/id/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/it/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/it/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ja/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ja/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ko/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ko/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Globalization.Native.a client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Globalization.Native.dylib client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.IO.Compression.Native.a client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.IO.Compression.Native.dylib client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Native.a client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Native.dylib client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Net.Security.Native.a client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Net.Security.Native.dylib client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Security.Cryptography.Native.Apple.a client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Security.Cryptography.Native.Apple.dylib client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libbrotlicommon.a client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libbrotlidec.a client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-debugger-stub-static.a client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-diagnostics_tracing-stub-static.a client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-hot_reload-static.a client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-hot_reload-stub-static.a client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-marshal-ilgen-static.a client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-marshal-ilgen-stub-static.a client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libxamarin-dotnet-debug.dylib client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libxamarin-dotnet.dylib client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ms/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/mscorlib.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/nb/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/netstandard.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/nl/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/pl/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/pl/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/postprocessing.items−17 client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/pt-BR/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/pt-BR/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/pt/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ro/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ru/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ru/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/sk/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/sv/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/th/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/tr/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/tr/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/uk/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/vi/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/zh-HK/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/zh-Hans/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/zh-Hans/Microsoft.Maui.Controls.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/zh-Hant/FSharp.Core.resources.dll client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/zh-Hant/Microsoft.Maui.Controls.resources.dll client/native/iossimulator-arm64/libsodium.a client/obj/Debug/net10.0-ios/iossimulator-arm64/.NETCoreApp,Version=v10.0.AssemblyAttributes.fs−3 client/obj/Debug/net10.0-ios/iossimulator-arm64/AppManifest.plist client/obj/Debug/net10.0-ios/iossimulator-arm64/Entitlements-Simulated.xcent−12 client/obj/Debug/net10.0-ios/iossimulator-arm64/Entitlements-Simulated.xcent.der−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/Entitlements.xcent−5 client/obj/Debug/net10.0-ios/iossimulator-arm64/ILLink.Substitutions.xml−15 client/obj/Debug/net10.0-ios/iossimulator-arm64/PublishOutputs.42f28df682.txt−259 client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.AssemblyInfo.fs−19 client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.AssemblyInfoInputs.cache−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.fsproj.AssemblyReference.cache client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.fsproj.CoreCompileInputs.cache−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.fsproj.FileListAbsolute.txt−336 client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.fsproj.Up2Date client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.genruntimeconfig.cache−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.pdb client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.sourcelink.json−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/_CompileAppManifest.inputs−23 client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/_BundleResourceWithLogicalName.items−17 client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/_PartialAppManifest.items−6 client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/asset-manifest.plist−16 client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/bundle/Assets.car client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/bundle/appicon60x60@2x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/bundle/appicon76x76@2x~ipad.png client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/Contents.json−93 client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon20x20@2x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon20x20@3x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon29x29@2x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon29x29@3x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon40x40@2x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon40x40@3x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon60x60@2x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon60x60@3x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon76x76@2x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon83.5x83.5@2x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appiconItunesArtwork.png client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/partial-info.plist−31 client/obj/Debug/net10.0-ios/iossimulator-arm64/aot-compiler-path-10.0.105.txt−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/Skrepka.app/.stampfile−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Globalization.Native.dylib−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.IO.Compression.Native.dylib−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Native.dylib−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Net.Security.Native.dylib−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Security.Cryptography.Native.Apple.dylib−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-debugger.dylib−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-diagnostics_tracing.dylib−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-hot_reload.dylib−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-marshal-ilgen.dylib−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmonosgen-2.0.dylib−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libxamarin-dotnet-debug.dylib−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/coremlc/_BundleResourceWithLogicalName.items−4 client/obj/Debug/net10.0-ios/iossimulator-arm64/coremlc/_PartialAppManifest.items−4 client/obj/Debug/net10.0-ios/iossimulator-arm64/custom-linker-options.txt−231 client/obj/Debug/net10.0-ios/iossimulator-arm64/ibtool-manifests/MauiSplash.storyboardc−12 client/obj/Debug/net10.0-ios/iossimulator-arm64/ibtool/MauiSplash.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib client/obj/Debug/net10.0-ios/iossimulator-arm64/ibtool/MauiSplash.storyboardc/Info.plist client/obj/Debug/net10.0-ios/iossimulator-arm64/ibtool/MauiSplash.storyboardc/UIViewController-01J-lp-oVM.nib client/obj/Debug/net10.0-ios/iossimulator-arm64/ibtool/_BundleResourceWithLogicalName.items−23 client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/Link.semaphore client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/Microsoft.Maui.Controls.Compatibility.pdb client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/Microsoft.Maui.Controls.Xaml.pdb client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/Microsoft.Maui.Controls.pdb client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/Microsoft.Maui.Essentials.pdb client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/Microsoft.Maui.Graphics.pdb client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/Microsoft.Maui.pdb client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ar/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ca/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/cs/FSharp.Core.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/cs/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/da/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/de/FSharp.Core.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/de/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/el/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/es/FSharp.Core.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/es/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/fi/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/fr/FSharp.Core.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/fr/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/he/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/hi/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/hr/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/hu/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/id/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/it/FSharp.Core.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/it/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ja/FSharp.Core.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ja/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ko/FSharp.Core.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ko/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ms/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/nb/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/nl/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/pl/FSharp.Core.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/pl/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/pt-BR/FSharp.Core.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/pt-BR/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/pt/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ro/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ru/FSharp.Core.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ru/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/sk/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/sv/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/th/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/tr/FSharp.Core.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/tr/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/uk/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/vi/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/zh-HK/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/zh-Hans/FSharp.Core.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/zh-Hans/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/zh-Hant/FSharp.Core.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/zh-Hant/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-cache/main.arm64.mm−88 client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/ReferenceNativeSymbol.items−1373 client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/_AssembliesToAOT.items−15 client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/_AssemblyLinkerFlags.items−9 client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/_BindingLibraryFrameworks.items−4 client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/_BindingLibraryLinkWith.items−4 client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/_DynamicLibraryToPublish.items−4 client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/_FrameworkToPublish.items−4 client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/_LinkerFrameworks.items−419 client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/_MainFile.items−9 client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/_MainLinkWith.items−6 client/obj/Debug/net10.0-ios/iossimulator-arm64/mauifont.inputs−2 client/obj/Debug/net10.0-ios/iossimulator-arm64/mauifont.stamp client/obj/Debug/net10.0-ios/iossimulator-arm64/mauiimage.inputs−2 client/obj/Debug/net10.0-ios/iossimulator-arm64/mauiimage.outputs−15 client/obj/Debug/net10.0-ios/iossimulator-arm64/mauiimage.stamp client/obj/Debug/net10.0-ios/iossimulator-arm64/mauisplash.inputs−1 client/obj/Debug/net10.0-ios/iossimulator-arm64/mauisplash.stamp client/obj/Debug/net10.0-ios/iossimulator-arm64/mtouch-symbols.list−456 client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/aot-output/arm64/System.Private.CoreLib.aotdata client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/aot-output/arm64/System.Private.CoreLib.dll.o client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libSystem.Globalization.Native.dylib client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libSystem.IO.Compression.Native.dylib client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libSystem.Native.dylib client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libSystem.Net.Security.Native.dylib client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libSystem.Security.Cryptography.Native.Apple.dylib client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libmono-component-debugger.dylib client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libmono-component-diagnostics_tracing.dylib client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libmono-component-hot_reload.dylib client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libmono-component-marshal-ilgen.dylib client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libxamarin-dotnet-debug.dylib client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/main.arm64.o client/obj/Debug/net10.0-ios/iossimulator-arm64/partialappmanifest/_PartialAppManifests.items−4 client/obj/Debug/net10.0-ios/iossimulator-arm64/ref/Skrepka.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/refint/Skrepka.dll client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/f/MauiInfo.plist−12 client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/f/OpenSans-Regular.ttf client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/f/OpenSans-Semibold.ttf client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/Contents.json−93 client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon20x20@2x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon20x20@3x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon29x29@2x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon29x29@3x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon40x40@2x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon40x40@3x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon60x60@2x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon60x60@3x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon76x76@2x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon83.5x83.5@2x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appiconItunesArtwork.png client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/dotnet_bot.png client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/dotnet_bot@2x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/dotnet_bot@3x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/MauiInfo.plist−9 client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/MauiSplash.storyboard−38 client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D.png client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D@2x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D@3x.png client/obj/Debug/net10.0-ios/iossimulator-arm64/runtimeconfig.bin−1 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/.NETCoreApp,Version=v10.0.AssemblyAttributes.fs−3 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/AppManifest.plist client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Entitlements.xcent−5 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/ILLink.Substitutions.xml−15 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/PublishOutputs.efd59590f0.txt−248 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.AssemblyInfo.fs−19 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.AssemblyInfoInputs.cache−1 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.fsproj.AssemblyReference.cache client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.fsproj.CoreCompileInputs.cache−1 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.fsproj.FileListAbsolute.txt−325 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.fsproj.Up2Date client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.genruntimeconfig.cache−1 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.pdb client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.sourcelink.json−1 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/_CompileAppManifest.inputs−22 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/_BundleResourceWithLogicalName.items−13 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/_PartialAppManifest.items−6 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/asset-manifest.plist−15 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/bundle/Assets.car client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/bundle/appicon.icns client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/Contents.json−93 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon20x20@2x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon20x20@3x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon29x29@2x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon29x29@3x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon40x40@2x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon40x40@3x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon60x60@2x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon60x60@3x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon76x76@2x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon83.5x83.5@2x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appiconItunesArtwork.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/partial-info.plist−10 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/aot-compiler-path-10.0.105.txt−1 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/codesign/Skrepka.app/.stampfile−1 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/coremlc/_BundleResourceWithLogicalName.items−4 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/coremlc/_PartialAppManifest.items−4 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/custom-linker-options.txt−238 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/Link.semaphore client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/Microsoft.Maui.Controls.Compatibility.pdb client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/Microsoft.Maui.Controls.Xaml.pdb client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/Microsoft.Maui.Controls.pdb client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/Microsoft.Maui.Essentials.pdb client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/Microsoft.Maui.Graphics.pdb client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/Microsoft.Maui.pdb client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ar/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ca/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/cs/FSharp.Core.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/cs/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/da/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/de/FSharp.Core.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/de/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/el/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/es/FSharp.Core.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/es/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/fi/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/fr/FSharp.Core.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/fr/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/he/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/hi/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/hr/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/hu/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/id/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/it/FSharp.Core.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/it/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ja/FSharp.Core.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ja/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ko/FSharp.Core.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ko/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ms/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/nb/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/nl/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/pl/FSharp.Core.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/pl/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/pt-BR/FSharp.Core.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/pt-BR/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/pt/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ro/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ru/FSharp.Core.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ru/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/sk/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/sv/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/th/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/tr/FSharp.Core.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/tr/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/uk/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/vi/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/zh-HK/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/zh-Hans/FSharp.Core.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/zh-Hans/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/zh-Hant/FSharp.Core.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/zh-Hant/Microsoft.Maui.Controls.resources.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-cache/main.arm64.mm−95 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/ReferenceNativeSymbol.items−2474 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/_AssembliesToAOT.items−15 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/_AssemblyLinkerFlags.items−9 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/_BindingLibraryFrameworks.items−4 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/_BindingLibraryLinkWith.items−4 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/_DynamicLibraryToPublish.items−4 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/_FrameworkToPublish.items−4 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/_LinkerFrameworks.items−407 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/_MainFile.items−9 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/_MainLinkWith.items−6 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauifont.inputs−2 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauifont.stamp client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauiimage.inputs−2 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauiimage.outputs−15 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauiimage.stamp client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauisplash.inputs−1 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauisplash.stamp client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mtouch-symbols.list−823 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/nativelibraries/aot-output/arm64/System.Private.CoreLib.aotdata client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/nativelibraries/aot-output/arm64/System.Private.CoreLib.dll.o client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/nativelibraries/main.arm64.o client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/partialappmanifest/_PartialAppManifests.items−4 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/ref/Skrepka.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/refint/Skrepka.dll client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/f/MauiInfo.plist−12 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/f/OpenSans-Regular.ttf client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/f/OpenSans-Semibold.ttf client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/Contents.json−93 client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon20x20@2x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon20x20@3x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon29x29@2x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon29x29@3x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon40x40@2x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon40x40@3x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon60x60@2x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon60x60@3x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon76x76@2x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon83.5x83.5@2x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appiconItunesArtwork.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/dotnet_bot.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/dotnet_bot@2x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/dotnet_bot@3x.png client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/runtimeconfig.bin−1 client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/Skrepka.assets.cache client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/Skrepka.fsproj.AssemblyReference.cache client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/FSharp.Core.stamp client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Fabulous.MauiControls.stamp client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Fabulous.stamp client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Extensions.Configuration.Abstractions.stamp client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Extensions.Configuration.stamp client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Extensions.DependencyInjection.Abstractions.stamp client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Extensions.DependencyInjection.stamp client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Extensions.Logging.Abstractions.stamp client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Extensions.Logging.stamp client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Extensions.Options.stamp client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Extensions.Primitives.stamp client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Maui.Controls.Compatibility.stamp client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Maui.Controls.Xaml.stamp client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Maui.Controls.stamp client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Maui.Essentials.stamp client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Maui.Graphics.stamp client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Maui.stamp client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Sodium.Core.stamp client/obj/Skrepka.fsproj.nuget.dgspec.json−727 client/obj/Skrepka.fsproj.nuget.g.props−43 client/obj/Skrepka.fsproj.nuget.g.targets−17 client/obj/project.assets.json−5671 client/obj/project.nuget.cache−36 client/run-ios.sh−31 client/run-mac.sh−5 core/Cargo.toml+60 core/boltffi.toml+24 core/src/app.rs+5027 core/src/bin/codegen.rs+41 core/src/crypto.rs+894 core/src/ffi.rs+96 core/src/lib.rs+10 core/src/model.rs+255 core/src/phonemic.rs+289 core/src/protocol.rs+355 install.sh+186−14 server.knot+1785−983 server.o skrepka.service+9−1
.cargo/config.tomlnew file+5
@@ -0,0 +1,5 @@
1+# Pin the iOS/macOS deployment targets so the C deps (zstd-sys) and rustc agree
2+# on the minimum OS version — otherwise the linker errors on a version mismatch.
3+[env]
4+IPHONEOS_DEPLOYMENT_TARGET = "17.0"
5+MACOSX_DEPLOYMENT_TARGET = "11.0"
.github/workflows/build.yml+194−40
@@ -5,10 +5,66 @@ on:
55 branches: [master]
66 pull_request:
77
8−env:
9− CARGO_TERM_COLOR: always
10−
118jobs:
9+ core:
10+ name: Core (test + clippy)
11+ runs-on: ubuntu-latest
12+ steps:
13+ - uses: actions/checkout@v4
14+
15+ - uses: dtolnay/rust-toolchain@stable
16+ with:
17+ components: clippy
18+
19+ - uses: Swatinem/rust-cache@v2
20+
21+ - name: Test
22+ run: cargo test -p skrepka_core
23+
24+ - name: Clippy
25+ run: cargo clippy -p skrepka_core --all-targets -- -D warnings
26+
27+ # The codegen bin (src/bin/codegen.rs) is behind the `codegen` feature, so
28+ # the default clippy run never compiles it — a typegen break would only
29+ # surface at `just generate` time.
30+ - name: Clippy (codegen feature)
31+ run: cargo clippy -p skrepka_core --features codegen -- -D warnings
32+
33+ ios:
34+ name: iOS shell
35+ runs-on: macos-14
36+ steps:
37+ - uses: actions/checkout@v4
38+
39+ - uses: dtolnay/rust-toolchain@stable
40+ with:
41+ targets: aarch64-apple-ios,aarch64-apple-ios-sim,x86_64-apple-ios
42+
43+ - uses: Swatinem/rust-cache@v2
44+
45+ - uses: extractions/setup-just@v2
46+
47+ - name: Install tooling
48+ run: |
49+ cargo install boltffi_cli
50+ brew install xcodegen
51+
52+ # typegen + pack + project: regenerates the Swift types, builds the core
53+ # xcframework, and emits the xcodeproj the build step below compiles.
54+ - name: Generate
55+ run: just generate
56+
57+ # -skipPackagePluginValidation matches the Justfile's `build` recipe: the
58+ # generated SPM packages carry plugins, which xcodebuild otherwise blocks
59+ # on with an interactive trust prompt.
60+ - name: Build app
61+ run: |
62+ xcodebuild -project apple/SkrepkaApp.xcodeproj \
63+ -scheme SkrepkaApp-iOS \
64+ -destination 'generic/platform=iOS Simulator' \
65+ -skipPackagePluginValidation \
66+ build
67+
1268 build:
1369 strategy:
1470 fail-fast: false
@@ -16,48 +72,31 @@ jobs:
1672 include:
1773 - runner: ubuntu-latest
1874 name: linux-x86_64
19− musl-target: x86_64-unknown-linux-musl
75+ knot-platform: linux-x86_64
2076 - runner: ubuntu-24.04-arm
2177 name: linux-arm64
22− musl-target: aarch64-unknown-linux-musl
23− - runner: macos-latest
78+ knot-platform: linux-aarch64
79+ # macos-14 is the oldest GA arm64 image; the iOS job above already runs on
80+ # it. (`macos-26` is not a provisioned runner label — a job requesting it
81+ # queues until it times out rather than failing fast.)
82+ - runner: macos-14
2483 name: macos-arm64
25− - runner: macos-13
26− name: macos-x86_64
84+ knot-platform: macos-aarch64
2785 runs-on: ${{ matrix.runner }}
2886 steps:
2987 - uses: actions/checkout@v4
3088
31− - uses: actions/checkout@v4
32− with:
33− repository: ilyakooo0/knot
34− path: knot
35−
36− - uses: dtolnay/rust-toolchain@stable
37−
38− - name: Install musl toolchain
39− if: runner.os == 'Linux'
89+ - name: Download knot compiler
4090 run: |
41− sudo apt-get update
42− sudo apt-get install -y musl-tools
43− rustup target add ${{ matrix.musl-target }}
91+ version="2026.6.26.1947"
92+ tarball="knot-${version}-${{ matrix.knot-platform }}.tar.gz"
93+ curl -fsSL "https://github.com/ilyakooo0/knot/releases/download/${version}/${tarball}" \
94+ | tar xz
95+ mv "knot-${version}-${{ matrix.knot-platform }}" knot-dist
4496
45− - uses: actions/cache@v4
46− with:
47− path: |
48− ~/.cargo/registry
49− ~/.cargo/git
50− knot/target
51− key: ${{ matrix.name }}-cargo-${{ hashFiles('knot/Cargo.lock') }}
52−
53− - name: Build knotc
54− working-directory: knot
55− run: cargo build --release -p knot-compiler
56−
57− - name: Build musl runtime
97+ - name: Install musl toolchain
5898 if: runner.os == 'Linux'
59− working-directory: knot
60− run: cargo build --release -p knot-runtime --target ${{ matrix.musl-target }}
99+ run: sudo apt-get update && sudo apt-get install -y musl-tools
61100
62101 - name: Compile server (Linux static)
63102 if: runner.os == 'Linux'
@@ -65,23 +104,116 @@ jobs:
65104 printf '#!/bin/sh\nexec musl-gcc -static "$@"\n' > /tmp/static-cc
66105 chmod +x /tmp/static-cc
67106 CC=/tmp/static-cc \
68− KNOT_RUNTIME_LIB=${{ github.workspace }}/knot/target/${{ matrix.musl-target }}/release/libknot_runtime.a \
69− ./knot/target/release/knotc build server.knot
107+ KNOT_RUNTIME_LIB=${{ github.workspace }}/knot-dist/libknot_runtime.a \
108+ ./knot-dist/knot build server.knot
70109
71110 - name: Compile server (macOS)
72111 if: runner.os == 'macOS'
73− run: ./knot/target/release/knotc build server.knot
112+ run: ./knot-dist/knot build server.knot
74113
75114 - name: Verify binary
76115 run: file server
77116
117+ # The Linux release binary is what install.sh drops onto a bare host, so it
118+ # has to carry its own libc. A dynamically-linked build would still pass every
119+ # other step here and only fail on the operator's machine, at startup.
120+ - name: Verify static linking (Linux)
121+ if: runner.os == 'Linux'
122+ run: |
123+ file server | grep -q "statically linked" || {
124+ echo "::error::release binary is not statically linked"
125+ file server
126+ exit 1
127+ }
128+
129+ # End-to-end smoke test: the compile steps above only prove the server
130+ # typechecks, never that it serves. This boots the real binary and asserts the
131+ # status code of every route, so a regression that breaks auth, validation, or
132+ # the federation gate fails CI instead of shipping.
133+ #
134+ # The server binds 0.0.0.0:8080 and cannot be moved: the Knot runtime accepts
135+ # but ignores --<name>=<value> constant overrides at startup (they only apply
136+ # at `knot build` time), so --listenPort/--bindHost would be silently inert.
137+ # Everything below therefore runs against the compiled-in default port, and
138+ # against the compiled-in default federationEnabled=False.
139+ - name: Smoke test
140+ run: |
141+ set -euo pipefail
142+ ./server > /tmp/server.log 2>&1 &
143+ SERVER_PID=$!
144+ trap 'kill "$SERVER_PID" 2>/dev/null || true' EXIT
145+
146+ # Wait for the listener rather than sleeping a fixed amount.
147+ for i in $(seq 1 30); do
148+ if curl -sf -o /dev/null "http://127.0.0.1:8080/" 2>/dev/null \
149+ || curl -s -o /dev/null "http://127.0.0.1:8080/"; then
150+ break
151+ fi
152+ if ! kill -0 "$SERVER_PID" 2>/dev/null; then
153+ echo "::error::server exited during startup"; cat /tmp/server.log; exit 1
154+ fi
155+ sleep 1
156+ done
157+
158+ PK=$(printf '0%.0s' $(seq 1 64)) # 64 hex chars: a well-formed pubkey
159+ SIG=$(printf '0%.0s' $(seq 1 128)) # 128 hex chars: a well-formed signature
160+ BLOB=$(printf 'ab%.0s' $(seq 1 200)) # 400 hex chars: over the 346-char floor
161+
162+ # $1 = expected status, $2 = label, rest = curl args
163+ expect() {
164+ want="$1"; label="$2"; shift 2
165+ got=$(curl -s -o /tmp/body -w '%{http_code}' --max-time 10 "$@")
166+ if [ "$got" != "$want" ]; then
167+ echo "::error::${label}: expected HTTP ${want}, got ${got}"
168+ cat /tmp/body; echo; cat /tmp/server.log
169+ exit 1
170+ fi
171+ echo "ok ${label} -> ${got}"
172+ }
173+ J='Content-Type: application/json'
174+
175+ expect 200 "auth/challenge (valid pubkey)" \
176+ -X POST http://127.0.0.1:8080/auth/challenge -H "$J" -d "{\"pubkey\":\"$PK\"}"
177+ grep -q '"challenge"' /tmp/body || { echo "::error::no challenge in body"; exit 1; }
178+
179+ expect 400 "auth/challenge (malformed pubkey rejected)" \
180+ -X POST http://127.0.0.1:8080/auth/challenge -H "$J" -d '{"pubkey":"zz"}'
181+
182+ expect 401 "auth/verify (bad signature)" \
183+ -X POST http://127.0.0.1:8080/auth/verify -H "$J" \
184+ -d "{\"pubkey\":\"$PK\",\"challenge\":\"x\",\"signature\":\"$SIG\",\"revokeOthers\":false}"
185+
186+ expect 401 "poll (unauthenticated)" \
187+ -X POST http://127.0.0.1:8080/poll -H "$J" -H 'Authorization: Bearer nope' -d '{"cursor":0}'
188+
189+ expect 401 "messages (unauthenticated)" \
190+ -X POST http://127.0.0.1:8080/messages -H "$J" -H 'Authorization: Bearer nope' \
191+ -d "{\"messages\":[{\"to\":\"$PK\",\"encryptedBlob\":\"$BLOB\"}]}"
192+
193+ # federationEnabled defaults to False, so both peer endpoints must refuse.
194+ expect 403 "federation/gossip (federation disabled by default)" \
195+ -X POST http://127.0.0.1:8080/federation/gossip -H "$J" \
196+ -d '{"events":[],"fromServer":"relay.example.com"}'
197+
198+ expect 403 "federation/forward (federation disabled by default)" \
199+ -X POST http://127.0.0.1:8080/federation/forward -H "$J" \
200+ -d "{\"toKey\":\"$PK\",\"encryptedBlob\":\"$BLOB\"}"
201+
202+ # Below the 346-hex-char (173-byte) minimum envelope: rejected by BlobHex
203+ # at the route boundary, before the federation gate.
204+ expect 400 "federation/forward (undersized blob rejected)" \
205+ -X POST http://127.0.0.1:8080/federation/forward -H "$J" \
206+ -d "{\"toKey\":\"$PK\",\"encryptedBlob\":\"abcd\"}"
207+
208+ echo "smoke test passed"
209+
78210 - uses: actions/upload-artifact@v4
79211 with:
80212 name: server-${{ matrix.name }}
81213 path: server
82214
83215 release:
84− needs: build
216+ needs: [core, ios, build]
85217 if: github.ref == 'refs/heads/master' && github.event_name == 'push'
86218 runs-on: ubuntu-latest
87219 permissions:
@@ -93,9 +225,17 @@ jobs:
93225 with:
94226 path: repo
95227
228+ # Commit timestamp to the second, plus the short SHA. Minute resolution
229+ # alone collides when two commits land in the same minute (a rebase-push,
230+ # or a merge right after a direct push), and a duplicate tag makes the
231+ # release step fail — or worse, silently overwrite the previous release's
232+ # assets. The SHA makes the tag unique even at identical timestamps.
96233 - name: Generate version
97234 id: version
98− run: echo "tag=$(git -C repo log -1 --format='%cd' --date='format:%Y.%m.%d.%H%M')" >> "$GITHUB_OUTPUT"
235+ run: |
236+ ts=$(git -C repo log -1 --format='%cd' --date='format:%Y.%m.%d.%H%M%S')
237+ sha=$(git -C repo rev-parse --short=7 HEAD)
238+ echo "tag=${ts}-${sha}" >> "$GITHUB_OUTPUT"
99239
100240 - name: Prepare release assets
101241 run: |
@@ -107,6 +247,20 @@ jobs:
107247 done
108248 chmod +x server-*
109249
250+ # Publish a SHA-256 beside each binary. install.sh downloads
251+ # "<asset>.sha256" and refuses to install a binary that does not match it,
252+ # so this is the integrity link between what CI built and what lands on an
253+ # operator's host as root. Hashing the *final* asset names (rather than the
254+ # in-artifact "server") means a downloaded pair also verifies with a plain
255+ # `sha256sum -c server-linux-x86_64.sha256`.
256+ #
257+ # The glob is expanded before the loop body runs, so `bin` only ever
258+ # iterates the binaries, never the .sha256 files being created.
259+ for bin in server-*; do
260+ sha256sum "$bin" > "${bin}.sha256"
261+ done
262+ ls -l server-*
263+
110264 - uses: softprops/action-gh-release@v2
111265 with:
112266 tag_name: ${{ steps.version.outputs.tag }}
.gitignore+14−3
@@ -4,6 +4,17 @@ server
44*.db-journal
55*.db-wal
66*.db-shm
7−.fake
8−client/bin
9−client/obj
7+.DS_Store
8+.claude/
9+
10+# Rust core
11+/target
12+
13+# iOS shell (xcodegen project + boltffi/typegen output + build products are generated)
14+apple/SkrepkaApp.xcodeproj
15+apple/build
16+apple/generated
17+apple/DerivedData
18+# xcodegen writes both of these from project.yml — edit that, not these.
19+apple/SkrepkaApp/Info-iOS.plist
20+apple/SkrepkaApp/SkrepkaApp.entitlements
.vscode/settings.json+1
@@ -1,2 +1,3 @@
11{
2+ "editor.formatOnSave": true
23}
AGENTS.mdnew file+119
@@ -0,0 +1,119 @@
1+# CLAUDE.md
2+
3+Decentralized, end-to-end encrypted messenger. No accounts, no home servers — identity is an Ed25519 keypair. Messages route over plain HTTP through any relay in an open federated mesh.
4+
5+`PROTOCOL.md` is the normative spec (v0.1 draft) and should be read before touching crypto, the wire format, or the server. The relay sees only the recipient pubkey and an opaque blob; the sender's identity and signature live *inside* the AEAD ciphertext, so a server never learns who sent a message.
6+
7+## Tech Stack
8+
9+- **Shared core:** Rust (edition 2021, `rust-version` 1.90) built on [Crux](https://redbadger.github.io/crux/) — `crux_core` (MVU), `crux_http`, `crux_kv`, `crux_time`. All business logic lives here: identity, auth, the long-poll loop, the outbox, contacts, profiles, message ingest.
10+- **FFI:** `boltffi` exports `CoreFFI` (`core/src/ffi.rs`) as a bincode bridge; `facet` drives Swift type generation from the core's `Event` / `ViewModel` / `Effect` types.
11+- **Apple shell:** Swift + SwiftUI, **iOS 17+ only** (`include_macos = false` in `core/boltffi.toml`). The shell is a thin effect executor — it performs HTTP, key-value, and timer effects and renders the `ViewModel`. It contains no business logic.
12+- **Crypto:** `ed25519-dalek` + `x25519-dalek` + `curve25519-dalek`, `chacha20poly1305` (XChaCha20-Poly1305), `hkdf` + `sha2` (HKDF-SHA256), `zstd` (plaintext compression). **No libsodium** — `core/src/crypto.rs` hand-reimplements libsodium's `crypto_sign_ed25519_{pk,sk}_to_curve25519` so blobs stay wire-compatible with any spec-following client.
13+- **Server:** `server.knot`, written in [Knot](https://github.com/ilyakooo0/knot) — a custom functional language compiled to a native binary. Its runtime transparently persists every `*ref` to SQLite, so all server state (`*sessions`, `*messages`, `*presence`, …) survives restarts despite reading like in-memory lists.
14+- **Persistence (client):** `crux_kv` — JSON blobs under the keys `settings`, `profile`, `contacts`, `cursor`, `outbox`, `seen_ids`, and `messages:<peer_hex>`. The Swift shell backs this with one file per key under Application Support. The 64-byte Ed25519 secret key lives in the iOS Keychain, never in kv.
15+
16+## Project Layout
17+
18+```
19+core/ Rust shared core (crate `skrepka_core`)
20+ src/app.rs Crux App: Event / Model / ViewModel / Effect + update(). The whole state machine.
21+ src/model.rs Persisted state types (Settings, OwnProfile, Contact, StoredMessage, OutboxItem)
22+ and the flat ViewModel the shell renders.
23+ src/crypto.rs Identity, encrypt/decrypt, ed25519→x25519 derivation, auth-challenge signing.
24+ src/protocol.rs Plaintext payload (de)serialization (text / delivery.ack / profile) + Envelope.
25+ src/phonemic.rs Urbit-style @p syllable encoding of pubkeys; try_parse_pubkey accepts @p or hex.
26+ src/ffi.rs boltffi surface: update / resolve / view over bincode bytes.
27+ src/bin/codegen.rs Emits Swift bindings via facet typegen (feature `codegen`).
28+ boltffi.toml Apple packaging config (iOS 17 target, module `SkrepkaShared`).
29+
30+apple/
31+ project.yml xcodegen spec → SkrepkaApp.xcodeproj (bundle lol.skrepka.SkrepkaApp-iOS).
32+ SkrepkaApp/SkrepkaApp.swift @main entry point.
33+ SkrepkaApp/Core.swift Drives the core: serializes events in, dispatches effects out, resolves them back.
34+ SkrepkaApp/Effects.swift Effect handlers — Http (URLSession, 70s timeout), Time, KvStore (file per key),
35+ Keychain (loads or generates the 64-byte identity key).
36+ SkrepkaApp/Views.swift RootView, ConversationsView, ChatView, MessageBubble, Avatar.
37+ SkrepkaApp/Forms.swift AddContactView, SettingsView, EditProfileView.
38+ SkrepkaApp/QRView.swift QR generation + AVFoundation camera scanner.
39+ SkrepkaApp/PhotoPicker.swift PHPicker → downscaled 256px JPEG as base64.
40+ generated/ gitignored — Shared/ (xcframework + SPM package) and App/Skrepka (Swift types).
41+
42+server.knot The entire relay: config, types, routes, auth, poll, send, federation, background loops.
43+servers.json Public relay list (flat JSON array of URLs). A static suggestion, not a directory.
44+install.sh Linux deploy: downloads the release binary, writes a systemd unit, configures Caddy + TLS.
45+skrepka.service Reference systemd unit (install.sh writes its own, with --http-max-body-bytes=42M).
46+Justfile All build/run recipes.
47+.cargo/config.toml Pins IPHONEOS/MACOSX deployment targets (see Gotchas).
48+.github/workflows/build.yml CI: tests + clippy on the core, builds the iOS shell, compiles server.knot on
49+ linux-x86_64 / linux-arm64 / macos-arm64, cuts a release.
50+PROTOCOL.md Wire protocol specification.
51+PROTOCOL-REVIEW.md Audit of spec-vs-implementation gaps, cross-checked against the Rust core.
52+```
53+
54+## Build & Run
55+
56+One-time setup:
57+
58+```sh
59+rustup target add aarch64-apple-ios aarch64-apple-ios-sim x86_64-apple-ios
60+cargo install boltffi_cli
61+brew install xcodegen
62+```
63+
64+Recipes (`just <name>`; `just` alone runs `test`):
65+
66+```sh
67+just test # cargo test -p skrepka_core (crypto, protocol, @p, state machine)
68+just typegen # regenerate Swift types into apple/generated/App
69+just pack # build the core xcframework + Swift package into apple/generated/Shared
70+just project # xcodegen generate → apple/SkrepkaApp.xcodeproj
71+just generate # typegen + pack + project — run this after any core type change
72+just build SIM_ID=<udid> # xcodebuild for a booted simulator
73+just run SIM_ID=<udid> # install + launch on that simulator
74+just server # wipe server.db* and run the local ./server binary
75+```
76+
77+`just server` expects a **prebuilt `./server`** binary; there is no local recipe that compiles it. To build it you need the Knot compiler (`knot build server.knot`), which CI downloads from `ilyakooo0/knot` releases — on Linux it links statically against musl. `server` and `*.db*` are gitignored.
78+
79+Deploying a relay:
80+
81+```sh
82+curl -fsSL https://raw.githubusercontent.com/ilyakooo0/skrepka/master/install.sh | sudo DOMAIN=relay.example.com sh
83+```
84+
85+Every top-level scalar constant in `server.knot` is overridable at startup as `--name=value` (e.g. `--serverHost=relay.example.com`, `--federationEnabled=False`, `--trustForwardedFor=False`); `--help` lists them all.
86+
87+## Architecture
88+
89+The core is a pure MVU state machine. `Skrepka::update(Event, &mut Model) -> Command<Effect, Event>` is the only place state changes; `Skrepka::view(&Model) -> ViewModel` is the only thing the shell reads. The shell never decides anything — it turns `Effect`s into platform calls and resolves the results back in.
90+
91+Two kinds of `Event` variants, and the distinction matters:
92+
93+- **Shell-facing** (`IdentityLoaded`, `SendText`, `OpenChat`, `AddContact`, …) — cross the FFI, so they appear in the generated Swift `Event` enum.
94+- **Internal** (`LoadedContacts`, `PollResult`, `SendResult`, …) — carry non-FFI-safe payloads (`crux_http::Result`, `KeyValueError`) and are marked `#[serde(skip)] #[facet(skip)] #[facet(opaque)]` so they never reach Swift. Adding a new internal event means adding those attributes too, or typegen breaks.
95+
96+The `ViewModel` is deliberately flat and stringly-typed (`page: String`, `conn_status: String`) so the Swift side switches on plain strings rather than needing generated enums for UI state.
97+
98+Runtime flow: `IdentityLoaded` (from the Keychain, at boot) fans out six kv loads → `LoadedSettings` triggers `Connect` → `Authenticate` (challenge/verify, signature bound to the server's bare hostname under the `skrepka-auth-v1:` tag) → on a token, `Poll` (server long-polls ~25 s, client re-polls immediately) and `StartFlush` (drains the outbox one message at a time, encrypting at send time). Failures back off via `crux_time` — 3 s doubling to a 30 s cap.
99+
100+## Code Conventions
101+
102+- **Rust:** standard `rustfmt`; the code is written clippy-clean (note the targeted `#[allow]`s in `app.rs` / `ffi.rs`). Doc comments (`//!`, `///`) carry the design rationale and cite `PROTOCOL.md` sections — keep that habit; it's how the crypto stays auditable against the spec.
103+- **Swift:** SwiftUI, no business logic. `Core.swift` uses `try!` on bincode round-trips deliberately (a serialization mismatch is a build-time bug, not a runtime condition) with `swiftlint:disable` comments marking each.
104+- **Knot:** `server.knot` is written for clarity over performance — every collection is a flat list, every scan is O(n). The header comment says so explicitly. Its dense comments encode security reasoning (SSRF deny-list, rate-limit key choice, replay/dedup invariants); read them before changing behavior.
105+- Anything on the wire is **lowercase hex**; anything shown to a human can be **@p** (`ridler-binzod-…`). `try_parse_pubkey` accepts both.
106+
107+## Version Control
108+
109+Convention is **jj** (jujutsu), not git — but note the working copy is currently a **plain git checkout with no `.jj/`**. Run `jj git init --colocate` before using jj commands here.
110+
111+When reading diffs, pass `--git` to `jj diff` / `jj show` — the configured formatter is difftastic, whose ANSI output is meant for terminals, not models.
112+
113+## Gotchas
114+
115+- **Regenerate after core type changes.** Touching `Event`, `ViewModel`, or `Effect` without running `just generate` leaves the Swift side compiling against stale types.
116+- **`.cargo/config.toml` is load-bearing.** It pins `IPHONEOS_DEPLOYMENT_TARGET=17.0` / `MACOSX_DEPLOYMENT_TARGET=11.0` so `zstd-sys` (a C dep) and rustc agree on the minimum OS version. Without it the linker fails on a version mismatch.
117+- **Body-size cap on the relay.** `--http-max-body-bytes` must exceed `maxBlobLen` (40 MiB hex) plus the JSON envelope, or the runtime's default 16 MiB cap rejects a max-size blob with a bare `413` before the handler's `400 invalid_message` check runs. `install.sh` sets `42M`.
118+- **Refined types don't validate inside lists.** Knot's route-boundary checks only fire on top-level scalar body fields, so `handleSendMessages` and `handleRecvGossip` re-validate nested `to` / `pubkey` / `encryptedBlob` by hand. Preserve those checks.
119+- **Federation is unauthenticated by design.** `/federation/*` endpoints accept any caller; abuse is bounded by the SSRF deny-list, the `no_presence` gate, and per-IP rate limits — not by peer authentication. `PROTOCOL.md` §10 enumerates what that does and doesn't protect.
AUDIT-DEEP.mdnew file+230
@@ -0,0 +1,230 @@
1+# Skrepka Deep Audit — app.rs & model.rs (2026-07-16)
2+
3+**Scope:** Deep audit of `core/src/app.rs` and `core/src/model.rs`, cross-referenced against PROTOCOL.md §4, §6, §9, §10 and existing audits (AUDIT-NEW.md, AUDIT-FRESH.md, PROTOCOL-REVIEW.md). Findings below are **not** documented in any prior audit.
4+
5+**Legend:** 🔴 critical · 🟠 high · 🟡 medium · 🔵 low · ⚪ info
6+
7+---
8+
9+## 1. State Machine — Poll Loop / Cursor / Budget
10+
11+### 🟡 D1. `events_stored` doesn't count successfully-decrypted-but-non-stored events — livelock on budget exhaustion
12+
13+**Type:** State machine bug (livelock)
14+**File:** `core/src/app.rs:2127, 2188-2200, 2248-2293, 2316, 2342-2349`
15+
16+The `events_stored` counter drives the cursor-restore decision on budget/count exhaustion (lines 2145-2147, 2163-2165): if `events_stored == 0`, the cursor is restored to `prev_cursor`, and the relay re-serves the same page on the next poll.
17+
18+`events_stored` is only incremented for:
19+- Text messages that **pass** dedup (line 2264 — inside `if !id_set.contains`)
20+- All `delivery.ack` payloads (line 2316)
21+- Profiles that **pass** staleness (line 2348 — inside `if ts >= c.last_profile_ts`)
22+
23+It is **NOT** incremented for:
24+- **Duplicate text messages** (line 2248: the `if !id_set.contains` block is not entered)
25+- **Stale profiles** (line 2342: the `if ts >=` block is not entered)
26+- **Profiles from strangers** (line 2327: `continue` before any increment)
27+- **Self-messages** (line 2188: `continue` before any increment)
28+- **Blocked-sender messages** (line 2198: `continue` before any increment)
29+
30+All of these are **successfully decrypted** — they consume the full AEAD decrypt cost and the per-blob byte budget — but they don't increment `events_stored`. If a poll page consists entirely of such events and the byte budget is exhausted mid-page, `events_stored == 0`, the cursor is restored, and the client re-polls with the old cursor. The relay re-serves the same page. **Livelock.**
31+
32+**Attack scenario:**
33+1. Client receives 4 large blobs (each ~20 MiB decoded, total ~80 MiB > 64 MiB budget).
34+2. First encounter: all 4 are new text messages. `events_stored = 3` (budget exhausted on 4th). Cursor kept at `page.cursor`. Relay deletes events. No issue.
35+3. **Hostile relay re-serves the same 4 blobs** (it kept copies despite cursor advance). All 4 are now duplicates. Budget exhausted on 4th blob. `events_stored == 0`. Cursor restored to `prev_cursor`.
36+4. Client re-polls with `prev_cursor`. Relay re-serves same 4 blobs. Go to 3. **Permanent livelock** — the client can never advance past this page, wasting bandwidth and battery on every cycle.
37+
38+The same pattern applies to a page of large stale profile blobs, large profile-from-stranger blobs, or large self-message echoes — all decrypt successfully, all are dropped, none increment `events_stored`.
39+
40+**Note:** AUDIT-FRESH.md N9 identified the budget-exhaustion livelock for the case where blobs **fail decryption** (events_stored == 0, hostile junk). The fix applied (keep cursor if `events_stored > 0`) addresses that case. But the **duplicate/stale/stranger/self/blocked** cases are different: the blobs ARE decryptable, the client DID process them (and doesn't need them again), but `events_stored` doesn't reflect this. This is a new variant of the N9 livelock that the existing fix does not cover.
41+
42+**Suggested fix:** Increment `events_stored` after successful decryption and parse, regardless of whether the event is stored:
43+```rust
44+let Ok(dec) = crate::crypto::decrypt(&id, &blob) else { continue; };
45+let Some(parsed) = protocol::parse_payload(&dec.plaintext) else { continue; };
46+events_stored += 1; // successfully decrypted — cursor can advance past this
47+```
48+This ensures the cursor is kept whenever at least one event was successfully processed (even if it was a duplicate/stale/stranger), breaking the livelock. The unprocessed tail (budget exhaustion) is still lost, but that's the accepted N9 tradeoff.
49+
50+---
51+
52+### 🔵 D2. `SetServerUrl` resets `send_retries` but not `poll_retries` — new relay inherits stale poll backoff
53+
54+**Type:** State machine bug (stale state on relay switch)
55+**File:** `core/src/app.rs:960`
56+
57+When switching relays, `SetServerUrl` resets `send_retries = 0` (line 960) and `flush_paused_until = 0` (line 959), with the comment: "The old relay's rate limit was the old relay's opinion. A new one is entitled to take our sends immediately."
58+
59+The same logic applies to `poll_retries` — it's the old relay's poll failure count — but it is **not reset**. If the old relay was failing (e.g., 5xx storm), `poll_retries` could be at 4 (backoff = 30s). The first poll to the new relay fails (e.g., transient network issue), and `backoff_poll` uses `backoff_ms(5) = 30s` instead of starting at 3s. The new relay's poll loop is penalized for the old relay's failures.
60+
61+**Attack scenario:** No attack needed — this triggers on any relay switch after a period of poll failures. The user switches to a healthy relay but experiences unnecessarily long poll backoffs.
62+
63+**Suggested fix:** Add `model.poll_retries = 0;` alongside `model.send_retries = 0;` at line 960.
64+
65+---
66+
67+## 2. State Machine — Outbox / Flush
68+
69+### 🔵 D3. `SendResult` pops outbox items even when `kv_load_failed` is set — duplicate sends on relaunch
70+
71+**Type:** State machine bug (write guard gap)
72+**File:** `core/src/app.rs:1547-1560, 1728-1733`
73+
74+If `kv_load_failed` is set (by a `LoadedMessages` failure) while a send is in flight, `SendResult` still pops the batch from `model.outbox` (line 1557-1559) on a 200 or 400. The subsequent `persist_outbox` (line 1560) calls `refuse_write`, which checks `kv_load_failed` and refuses the write. The items are removed from the in-memory outbox but **not from the on-disk outbox**.
75+
76+On relaunch, the outbox is re-loaded from disk — the popped items are still there. They are re-sent:
77+- For a **200** (relay accepted): duplicate sends. The recipient's dedup handles it, but the sender wastes bandwidth and the recipient sees duplicate delivery attempts.
78+- For a **400** (relay rejected): the items are re-sent and re-rejected, burning retry budget.
79+
80+**Timeline:**
81+1. Startup loads complete. `Connect` → `Authenticate` → `VerifyResult` → `Poll` + `StartFlush`.
82+2. `StartFlush` sends a batch. `flushing = true`, `in_flight` is set.
83+3. `LoadedMessages` for some peer fails. `kv_load_failed = true`.
84+4. `SendResult` arrives (200). `flushing` cleared, batch popped (line 1557-1559). `persist_outbox` refused (line 1729-1730).
85+5. On relaunch: outbox loaded from disk. Items re-sent.
86+
87+**Note:** The window is narrow — `LoadedMessages` is a lazy load triggered by `LoadedContacts`, and `StartFlush` fires from `VerifyResult` which also fires after startup loads. But the ordering is: startup loads → `Connect` → `Authenticate` → `VerifyResult` → `StartFlush` + `Poll` → `LoadedMessages` (lazy). So the send can be in flight when `LoadedMessages` fails.
88+
89+**Suggested fix:** Check `kv_load_failed` before popping in `SendResult`. If set, don't pop — leave items in the outbox for relaunch to handle:
90+```rust
91+if ((200..300).contains(&status) || status == 400) && !model.kv_load_failed {
92+ // pop and persist
93+}
94+```
95+Alternatively, don't pop if `persist_outbox` was refused (check the return of `refuse_write`).
96+
97+---
98+
99+## 3. Model / Persistence
100+
101+### 🔵 D4. `now_ms()` returns 0 on system clock failure — outbox TTL disabled
102+
103+**Type:** Robustness gap
104+**File:** `core/src/app.rs:580-585`
105+
106+```rust
107+fn now_ms() -> i64 {
108+ SystemTime::now()
109+ .duration_since(UNIX_EPOCH)
110+ .map(|d| d.as_millis() as i64)
111+ .unwrap_or(0)
112+}
113+```
114+
115+If the system clock is before `UNIX_EPOCH` (misconfigured device, RTK bug, NTP step), `now_ms()` returns 0. Consequences:
116+
117+- **Outbox TTL disabled:** `first_attempt` is stamped as 0 (line 1990-1993). `OutboxItem::is_expired` checks `first_attempt > 0` (line 170) — 0 means "never attempted," so the TTL never applies. Stuck items are retried forever (only the retry counter bounds them, which at 10 retries with slow backoff could take days).
118+- **`flush_paused_until` bypassed:** `now_ms() < flush_paused_until` → `0 < 0` → false. Flushing proceeds immediately, ignoring a relay's `Retry-After`.
119+- **`last_ack_ts` / `last_profile_ts` clamped to 0:** `ts.min(now)` → `ts.min(0)` → 0 (if ts is positive). All future acks/profiles pass the staleness check (any ts >= 0). Dedup is weakened.
120+
121+**Attack scenario:** No attack — this is a device misconfiguration. But on iOS, a clock that briefly reads as pre-epoch during boot could trigger this transiently.
122+
123+**Suggested fix:** Use `UNIX_EPOCH` as the floor instead of 0:
124+```rust
125+fn now_ms() -> i64 {
126+ SystemTime::now()
127+ .duration_since(UNIX_EPOCH)
128+ .map(|d| d.as_millis() as i64)
129+ .unwrap_or(1) // 1, not 0 — 0 is a valid "never attempted" sentinel
130+}
131+```
132+Or better: propagate the error and have callers handle clock failure explicitly.
133+
134+---
135+
136+### 🔵 D5. `LoadedMessages` merge doesn't update `seen_ids` — weakened dedup after `seen_ids` load failure
137+
138+**Type:** Dedup gap
139+**File:** `core/src/app.rs:815-856`
140+
141+The `LoadedMessages` handler merges on-disk messages into the in-memory conversation (union by ID, re-sort, trim). But it does **not** add the on-disk message IDs to `model.seen_ids`.
142+
143+When `seen_ids` loads successfully from kv at startup, this is fine — the on-disk IDs are already in the set. But when `seen_ids` **fails to load** (line 807-811, non-fatal), the set is empty. The `ingest_poll` seeding at line 2244-2246 seeds from the conversation:
144+```rust
145+if id_set.is_empty() {
146+ id_set.extend(convo.iter().map(|m| m.id.clone()));
147+}
148+```
149+
150+If a poll arrives **before** `LoadedMessages` for a peer, the conversation is empty (not loaded yet). The seeding adds no IDs. The poll's messages are stored and their IDs are added to the set. Later, `LoadedMessages` arrives and merges the on-disk messages — but their IDs are **never** added to `seen_ids` (the merge doesn't touch `seen_ids`, and the seeding only runs when `id_set.is_empty()`, which is no longer true after the poll).
151+
152+**Result:** On-disk message IDs are missing from `seen_ids`. Future replays of those on-disk messages pass the dedup check (line 2248) and are re-inserted into the conversation. The `LoadedMessages` merge filters duplicates by ID (line 830), so the conversation doesn't grow unboundedly — but each replay is processed (decrypted, inserted, acked) before the merge catches it.
153+
154+**Attack scenario:**
155+1. `seen_ids` kv load fails (device locked, file corruption).
156+2. `LoadedContacts` triggers `LoadedMessages` for peer P.
157+3. A poll arrives before `LoadedMessages` for P. P's conversation is empty. `seen_ids[P]` is seeded as empty.
158+4. Poll stores new messages, adds their IDs to `seen_ids[P]`.
159+5. `LoadedMessages` for P arrives. On-disk messages are merged into the conversation. Their IDs are NOT added to `seen_ids[P]`.
160+6. A replay of an on-disk message arrives. Its ID is not in `seen_ids[P]`. It passes dedup. It's inserted and acked.
161+
162+**Impact:** Weakened dedup — replays of on-disk messages are re-processed (decrypted, stored, acked). No permanent data corruption (the merge prevents duplicate conversation entries), but the recipient sends spurious delivery acks for old messages, and the sender receives false "delivered" confirmations.
163+
164+**Suggested fix:** In the `LoadedMessages` merge, add the on-disk message IDs to `seen_ids`:
165+```rust
166+if let Some(id_set) = model.seen_ids.get_mut(&peer) {
167+ id_set.extend(list.iter().map(|m| m.id.clone()));
168+}
169+```
170+
171+---
172+
173+## 4. Protocol Deviations
174+
175+### ⚪ D6. `ingest_poll` doesn't send profile to stranger on first contact — protocol "SHOULD" not followed
176+
177+**Type:** Protocol deviation (UX)
178+**File:** `core/src/app.rs:2221-2230, 2400-2412`
179+
180+PROTOCOL.md §4: "Clients SHOULD send a `profile` message to a contact on first interaction and whenever the user updates their name, bio, or photo."
181+
182+When a stranger sends us a text, `ingest_poll` auto-creates a contact (line 2225-2229) and queues a `delivery.ack` (line 2400-2412). But it does **not** queue a `profile` broadcast back to the stranger. The stranger's client has our pubkey (they sent us a message) but no profile — they see our truncated @p but not our display name or avatar.
183+
184+`send_text` handles this correctly: on first contact (line 1858-1873), it queues a profile broadcast after the text. But `ingest_poll` doesn't.
185+
186+**Impact:** Minor UX issue — a stranger who initiates conversation doesn't see our profile until we manually send them a text or update our profile. Not a security vulnerability.
187+
188+**Suggested fix:** After auto-creating a contact in `ingest_poll`, queue a profile broadcast:
189+```rust
190+if !known {
191+ // ... auto-create contact ...
192+ let profile = Payload::Profile { /* ... */ };
193+ model.outbox.push_back(OutboxItem::profile(
194+ sender.clone(),
195+ Arc::new(protocol::serialize_payload(&profile, ts)),
196+ ));
197+ outbox_dirty = true;
198+}
199+```
200+
201+---
202+
203+## Summary of New Findings
204+
205+| # | Severity | Type | Title |
206+|---|----------|------|-------|
207+| D1 | 🟡 medium | Livelock | `events_stored` doesn't count decrypted-but-non-stored events — livelock on budget exhaustion |
208+| D2 | 🔵 low | Stale state | `SetServerUrl` doesn't reset `poll_retries` — new relay inherits old poll backoff |
209+| D3 | 🔵 low | Write guard gap | `SendResult` pops items when `kv_load_failed` — duplicate sends on relaunch |
210+| D4 | 🔵 low | Robustness | `now_ms()` returns 0 on clock failure — outbox TTL disabled |
211+| D5 | 🔵 low | Dedup gap | `LoadedMessages` merge doesn't update `seen_ids` — weakened dedup after load failure |
212+| D6 | ⚪ info | Protocol deviation | `ingest_poll` doesn't send profile to stranger on first contact |
213+
214+**Medium (1):** D1
215+**Low (4):** D2, D3, D4, D5
216+**Info (1):** D6
217+
218+---
219+
220+## Priorities
221+
222+1. **D1 (medium):** Fix `events_stored` to count all successfully decrypted events. This closes a livelock variant that the N9 fix doesn't cover — a hostile relay can permanently wedge the client by re-serving large duplicate/stale/stranger blobs.
223+
224+2. **D2 (low):** Add `model.poll_retries = 0;` to `SetServerUrl`. One-line fix, prevents stale backoff on relay switch.
225+
226+3. **D5 (low):** Update `seen_ids` in the `LoadedMessages` merge. Closes a dedup gap when `seen_ids` kv load fails.
227+
228+4. **D3 (low):** Guard `SendResult` pop with `kv_load_failed` check. Prevents duplicate sends on relaunch.
229+
230+5. **D4 (low):** Change `unwrap_or(0)` to `unwrap_or(1)` in `now_ms()`. Prevents TTL disablement on clock failure.
AUDIT-FFI-PHONEMIC-APPLE.mdnew file+470
@@ -0,0 +1,470 @@
1+# Skrepka Security Audit — FFI, Phonemic, Apple Shell (2026-07-16)
2+
3+**Scope:** Deep audit of `core/src/ffi.rs`, `core/src/phonemic.rs`, and all Apple shell files (`apple/SkrepkaApp/*.swift`). Cross-referenced against `PROTOCOL.md`, `AGENTS.md`, `AUDIT-NEW.md`, and `AUDIT-FRESH.md`. Findings below are **not** in prior audits.
4+
5+**Legend:** 🔴 critical · 🟠 high · 🟡 medium · 🔵 low · ⚪ info
6+
7+---
8+
9+## 1. FFI Boundary
10+
11+### 🟠 F1. `try!` in Core.swift crashes on empty bytes from `guard` — FFI panic safety is a lie
12+
13+**Type:** FFI boundary / panic safety
14+**Files:** `core/src/ffi.rs:42-44` (`guard`), `apple/SkrepkaApp/Core.swift:30,38,49,60,66,74,81`
15+
16+The `guard` function in `ffi.rs` catches panics with `catch_unwind` and returns an empty `Vec<u8>`. The module doc (lines 4-9) claims: *"the shell already tolerates an empty effect list (it just does nothing) and an empty view (it renders the previous one), so a bug degrades into a stalled UI rather than a corrupted process."*
17+
18+This is false. Every bincode deserialization in `Core.swift` uses `try!`:
19+
20+```swift
21+// Core.swift:30 (init)
22+self.view = try! .bincodeDeserialize(input: [UInt8](core.view()))
23+
24+// Core.swift:38 (update)
25+let effects = [UInt8](core.update(data: Data(try! event.bincodeSerialize())))
26+
27+// Core.swift:49 (dispatch)
28+let requests = try! Requests.bincodeDeserialize(input: effects).value
29+
30+// Core.swift:60 (render)
31+self.view = try! .bincodeDeserialize(input: [UInt8](core.view()))
32+```
33+
34+If `core.view()` or `core.update()` returns empty bytes (from a caught panic), `try! .bincodeDeserialize(input: [])` throws, and `try!` produces a fatal error — **crashing the app**, not degrading gracefully. The `init` case is the worst: there is no "previous view" to render, so the very first `core.view()` call would crash the app on launch if the core panics.
35+
36+**Attack scenario:** Any input that causes a panic inside `App::update` or `Skrepka::view` — an unforeseen edge case, a dependency bug, or an integer overflow in debug mode — would crash the app instantly via `try!` rather than degrading to a stalled UI as the FFI docs claim. On iOS, this is a clean crash with no data corruption, but it's a denial-of-service: the user can't use the app at all.
37+
38+**Exploitable in practice:** Requires triggering a panic in the Rust core. The core code is careful with `unwrap_or` / `unwrap_or_default`, but panics from dependencies (e.g., `serde_json` on malformed input, `zstd` on a crafted frame) or array indexing bugs are possible. A hostile relay crafting specific poll responses could potentially trigger a panic in the decrypt path.
39+
40+**Suggested fix:** Replace `try!` with `try?` or a `do/catch` block that logs the error and skips the deserialization. For `init`, provide a default empty `ViewModel` if `core.view()` returns empty bytes. Alternatively, have `guard` return a sentinel (e.g., a single zero byte) that the Swift side can detect as "panic occurred" and handle gracefully.
41+
42+---
43+
44+### 🟡 F2. `AssertUnwindSafe` is unsound — Model is read after a panic
45+
46+**Type:** FFI boundary / memory safety
47+**Files:** `core/src/ffi.rs:39-44` (`guard` + `AssertUnwindSafe`)
48+
49+The `guard` function uses `AssertUnwindSafe(f)` to bypass the `UnwindSafe` requirement. The doc comment (lines 39-41) justifies this: *"AssertUnwindSafe is sound here because a poisoned Bridge is never read again for correctness: the worst case is a dropped effect batch, and the next event starts a fresh update."*
50+
51+This is incorrect. The `Bridge` holds the `Core`, which holds the `Model`. `App::update` takes `&mut Model` and mutates it in place. If a panic occurs **mid-update** (after some model mutations but before the function returns), the `Model` is left in a partially-mutated, inconsistent state. The `catch_unwind` catches the panic, returns empty bytes, but the `Model` stays corrupted. The **next** `update` call operates on this corrupted model.
52+
53+The comment's claim that "the next event starts a fresh update" is misleading — a fresh update on a corrupted model is not fresh. The model's invariants (e.g., `contacts` is consistent with `messages`, `cursor` is valid, `outbox` items are well-formed) may be violated.
54+
55+**Attack scenario:** A panic mid-update corrupts the model. The next `update` call sees the corrupted state and may:
56+- Write corrupted state to kv (persisting the corruption across launches)
57+- Crash on a subsequent update (if the corruption violates an invariant checked by `update`)
58+- Produce incorrect behavior (e.g., sending messages to the wrong recipient)
59+
60+**Exploitable in practice:** Requires triggering a panic mid-update, which is the same bar as F1. The corruption is silent — the user sees a stalled UI (if F1 doesn't crash first), but the next interaction operates on corrupted state.
61+
62+**Suggested fix:** After a caught panic, reset the `Model` to a known-good state (e.g., re-load from kv) or mark the `Bridge` as poisoned and refuse further operations. Alternatively, snapshot the `Model` before `update` and restore it on panic. This is expensive but correct. At minimum, document that a panic may corrupt the model and recommend the shell re-initialize the core after a caught panic.
63+
64+---
65+
66+### 🔵 F3. `resolve` accepts arbitrary `EffectId` — no validation against pending effects
67+
68+**Type:** FFI boundary / input validation
69+**Files:** `core/src/ffi.rs:70-78` (`resolve`)
70+
71+The `resolve` method accepts any `u32` as an effect ID and any `&[u8]` as the resolution data. The `Bridge::resolve` call would fail with `Err` if the effect ID is unknown, which `guard` converts to an empty Vec. But the empty Vec would crash the Swift side via `try!` (see F1).
72+
73+More importantly, if the Swift side has a bug that resolves the same effect ID twice (e.g., from a race between a timer callback and a `.clear` call), the second resolution would produce effects for a non-existent or already-resolved effect. The `Bridge::resolve` would return `Err`, which becomes empty bytes, which crashes via `try!`.
74+
75+**Attack scenario:** Not directly exploitable by an attacker — the effect IDs are generated by the core and passed to the shell. But a shell bug (e.g., a race condition in timer handling) could trigger a double-resolve, crashing the app.
76+
77+**Suggested fix:** The shell should track which effect IDs are pending and guard against double-resolve. The FFI should return a distinguishable error for "unknown effect ID" vs "serialization failure" so the shell can handle it gracefully.
78+
79+---
80+
81+## 2. Phonemic
82+
83+### 🔵 P1. `to_ob` / `from_ob` round-trip asymmetry for empty input
84+
85+**Type:** Correctness asymmetry
86+**Files:** `core/src/phonemic.rs:98-109` (`to_ob`), `core/src/phonemic.rs:113-132` (`from_ob`)
87+
88+`to_ob(&[])` returns `Some(String::new())` (empty string), but `from_ob("")` returns `None` (because `split('-').filter(|p| !p.is_empty()).collect()` yields an empty Vec, which triggers `parts.is_empty() => None`).
89+
90+This means `to_ob` produces a string that `from_ob` can't decode. The round-trip property is broken for empty input.
91+
92+**Impact:** No caller passes empty bytes to `to_ob` for pubkey purposes (keys are always 32 bytes). The asymmetry is documented in the test `odd_length_input_has_no_spelling` (line 210). Harmless in practice.
93+
94+**Suggested fix:** Either make `to_ob(&[])` return `None` (consistent with odd-length rejection) or make `from_ob("")` return `Some(vec![])` (consistent with the encoding). The former is safer — an empty encoding is meaningless.
95+
96+---
97+
98+### 🔵 P2. `try_parse_pubkey` hex path lowercases redundantly — no bug, but misleading
99+
100+**Type:** Code clarity
101+**Files:** `core/src/phonemic.rs:154`
102+
103+`hex::decode(trimmed.to_lowercase())` — the `hex` crate's `decode` accepts both uppercase and lowercase hex digits. The `to_lowercase()` is redundant for the hex path. It doesn't cause a bug (the output of `valid_pubkey_hex` is always lowercase via `hex::encode`), but it suggests the case matters when it doesn't.
104+
105+**Suggested fix:** Remove the `to_lowercase()` or add a comment explaining it's for consistency, not correctness.
106+
107+---
108+
109+### ⚪ P3. No @p/hex collision for 32-byte pubkeys — confirmed safe
110+
111+**Type:** Correctness verification
112+**Files:** `core/src/phonemic.rs:148-158` (`try_parse_pubkey`)
113+
114+A 64-char hex string has no hyphens, so `from_ob` sees one part of 64 chars, fails the `part.len() != 6` check, returns `None`. The hex path then decodes it. No collision.
115+
116+A valid @p for a 32-byte key is 16 syllables (111 chars with hyphens). `hex::decode` fails on hyphens. No collision.
117+
118+A 6-char hex string (e.g., "abcdef") that happens to be a valid @p syllable: `from_ob` decodes it to 2 bytes, `valid_pubkey_hex` rejects (not 32 bytes). `hex::decode` gives 3 bytes, also rejected. No collision.
119+
120+**Verdict:** Safe. The @p-first ordering in `try_parse_pubkey` is correct.
121+
122+---
123+
124+### ⚪ P4. `from_ob` multibyte handling is correct — confirmed safe
125+
126+**Type:** Correctness verification
127+**Files:** `core/src/phonemic.rs:113-132`
128+
129+`to_lowercase()` is applied before `split('-')`. For non-ASCII input, `to_lowercase()` may change byte lengths, but the `part.len() != 6 || !part.is_ascii()` check on each part catches any non-ASCII characters that survive lowercasing. The test `multibyte_input_is_rejected_not_panicked_on` (line 279) confirms this.
130+
131+The `part[0..3]` and `part[3..6]` slices are safe because `part.len() == 6` and `part.is_ascii()` (ASCII = 1 byte per char, so byte indices == char indices).
132+
133+**Verdict:** Safe. No panic on multibyte input.
134+
135+---
136+
137+## 3. Apple Shell — HTTP Handling
138+
139+### 🟡 A1. `Http.perform` doesn't validate URL scheme — `file://` requests would be honored
140+
141+**Type:** Defense-in-depth gap
142+**Files:** `apple/SkrepkaApp/Effects.swift:104-106`
143+
144+```swift
145+guard let url = URL(string: req.url) else {
146+ return .err(.url(req.url))
147+}
148+var request = URLRequest(url: url)
149+```
150+
151+The shell accepts any URL scheme. `URLSession.data(for:)` handles `file://` URLs by reading local files. The core's `normalize_server_url` only accepts `http`/`https`, but if a bug in the core (or a future change) produces a `file://` or `data:` URL, the shell would honor it without question.
152+
153+**Attack scenario:** Not directly exploitable — the server URL is user-configured and validated by `normalize_server_url`. But if a bug in URL construction (e.g., `format!("{}/poll", model.settings.server_url)` where `server_url` is somehow `file:///etc/passwd`) reaches the shell, a local file could be read and its contents returned to the core as an HTTP response body. The core would try to parse it as JSON, fail, and treat it as an empty page.
154+
155+**Exploitable in practice:** Requires a core bug that produces a non-http URL. `normalize_server_url` prevents this for the server URL, but there's no belt-and-suspenders check in the shell.
156+
157+**Suggested fix:** Add a scheme check in `Http.perform`:
158+```swift
159+guard url.scheme == "http" || url.scheme == "https" else {
160+ return .err(.url(req.url))
161+}
162+```
163+
164+---
165+
166+### 🟡 A2. `HttpSessionDelegate` cancels same-host redirects — may break legitimate HTTPS upgrades
167+
168+**Type:** Protocol conformance / usability
169+**Files:** `apple/SkrepkaApp/Effects.swift:45-53`
170+
171+The redirect delegate cancels **all** redirects, including same-host redirects. A relay that redirects from `http://relay:80` to `https://relay:443` (a legitimate TLS upgrade) would have its redirect cancelled. The client would see the 3xx response and treat it as a failure.
172+
173+The protocol says "plain HTTP, served over TLS in production" (§5), and `normalize_server_url` accepts both `http` and `https`. So a relay that serves HTTP on port 80 and redirects to HTTPS on port 443 would be broken by this client.
174+
175+**Attack scenario:** Not an attack — a usability issue. A relay operator who sets up an HTTP-to-HTTPS redirect would find that Skrepka clients can't connect.
176+
177+**Exploitable in practice:** Depends on relay configuration. The `install.sh` deploys Caddy with TLS, so production relays serve HTTPS directly (no redirect). But a relay misconfigured to redirect would be unreachable.
178+
179+**Suggested fix:** Allow same-host redirects (compare the redirect target's host against the original request's host). Only cancel cross-host redirects, which are the token-exfiltration vector. Or, since the protocol says no redirects, document that relays must not redirect.
180+
181+---
182+
183+### 🔵 A3. `UInt16(clamping:)` silently truncates status codes > 65535
184+
185+**Type:** Input validation
186+**Files:** `apple/SkrepkaApp/Effects.swift:120`
187+
188+```swift
189+status: UInt16(clamping: http?.statusCode ?? 0),
190+```
191+
192+HTTP status codes are 3-digit integers (100-599), so this is fine in practice. But `UInt16(clamping:)` would clamp any value > 65535 to 65535, which is a valid `UInt16` but not a valid HTTP status. The core checks `status >= 200 && status < 300` for success, so 65535 would be treated as failure. No security issue.
193+
194+**Verdict:** Safe. HTTP status codes are bounded by the protocol.
195+
196+---
197+
198+### ⚪ A4. URLSession configuration is correct — confirmed safe
199+
200+**Type:** Implementation review
201+**Files:** `apple/SkrepkaApp/Effects.swift:91-101`
202+
203+The session configuration is:
204+- `ephemeral` — no cookies, no cache, no persistent storage ✓
205+- `httpCookieAcceptPolicy = .never` ✓
206+- `httpShouldSetCookies = false` ✓
207+- `httpCookieStorage = nil` ✓
208+- `urlCache = nil` ✓
209+- `requestCachePolicy = .reloadIgnoringLocalAndRemoteCacheData` ✓
210+- `timeoutIntervalForRequest = 70` — matches the server's ~25s long-poll ✓
211+- `tlsMinimumSupportedProtocolVersion = .TLSv12` ✓
212+
213+No sensitive data in logs. The `error.localizedDescription` in the catch block returns user-friendly strings like "The network connection was lost" — no relay-specific info beyond what the user already configured.
214+
215+**Verdict:** Safe. Good defense-in-depth.
216+
217+---
218+
219+### ⚪ A5. Response size limiting is correct — confirmed safe
220+
221+**Type:** Implementation review
222+**Files:** `apple/SkrepkaApp/Effects.swift:31-79`
223+
224+The `HttpSessionDelegate` tracks per-task byte counts in a thread-safe `NSLock`-guarded dictionary. When a task's accumulated body exceeds `maxResponseBytes` (64 MiB), the task is cancelled. The `didCompleteWithError` callback cleans up the dictionary entry. Every task eventually completes (success, failure, or cancel), so no dictionary leak.
225+
226+The 64 MiB cap matches the core's `MAX_POLL_RESPONSE_BYTES` (also 64 MiB). The shell's cap fires before the core's (the shell cancels the task mid-stream, the core never sees the full body), which is the correct ordering — the shell's cap prevents OOM before the core's check runs.
227+
228+**Verdict:** Safe. Well-designed.
229+
230+---
231+
232+## 4. Apple Shell — Keychain & KV Persistence
233+
234+### ⚪ A6. Keychain storage is correct — confirmed safe
235+
236+**Type:** Implementation review
237+**Files:** `apple/SkrepkaApp/Effects.swift:320-415`
238+
239+- `kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly` — key never rides backup ✓
240+- `SecItemUpdate` first, then `SecItemAdd` if not found — no delete-then-add window ✓
241+- `errSecItemNotFound` is the only status that triggers key generation ✓
242+- 64-byte key length is validated on load ✓
243+- `loadOrCreateIdentity` is called only on the main actor (singleton `Core.shared`), so no race ✓
244+
245+The `store` function's update-then-add sequence has a theoretical race (between `SecItemUpdate` returning `errSecItemNotFound` and `SecItemAdd`, another thread could add the item), but `bootIdentity` is only called on the `@MainActor` singleton, so there's no concurrency.
246+
247+**Verdict:** Safe. Good practice.
248+
249+---
250+
251+### ⚪ A7. KV persistence is correct — confirmed safe
252+
253+**Type:** Implementation review
254+**Files:** `apple/SkrepkaApp/Effects.swift:195-316`
255+
256+- Serial queue — all operations serialized ✓
257+- Atomic writes with `.completeFileProtectionUnlessOpen` ✓
258+- `isExcludedFromBackup = true` — plaintext history not in iCloud backup ✓
259+- Percent-encoding with `.alphanumerics` — injective key→filename mapping, no path traversal ✓
260+- Legacy migration runs before any read (same serial queue) ✓
261+- Missing file = empty key (`.none`), not an error — correct distinction from read failure ✓
262+
263+**Verdict:** Safe. Well-designed.
264+
265+---
266+
267+## 5. Apple Shell — Photo Picker & QR Scanning
268+
269+### 🔵 A8. `PhotoPicker` last-resort quality doesn't check size cap
270+
271+**Type:** Logic bug / UX
272+**Files:** `apple/SkrepkaApp/PhotoPicker.swift:80-81`
273+
274+```swift
275+// Last resort: the smallest quality that still produces something.
276+return image.jpegData(compressionQuality: 0.1)?.base64EncodedString()
277+```
278+
279+The loop (lines 71-79) reduces quality until the base64 fits within 64 KiB (`maxBase64Len`). But the last-resort return on line 81 doesn't check if the result fits. If a 256px JPEG at q0.1 still exceeds 64 KiB (possible for high-frequency noise images), the core's `SaveProfile` rejects it with "photo too large" and the user has no recourse.
280+
281+**Attack scenario:** A user picks a photo that, even at 256px and q0.1, produces > 64 KiB of base64. The profile save fails with no way to proceed. Not a security issue — a UX dead end.
282+
283+**Exploitable in practice:** Very unlikely for real photos (256px JPEG at q0.1 is typically 5-15 KiB). But a synthetic image (e.g., pure noise) could exceed the cap.
284+
285+**Suggested fix:** If the last-resort still exceeds the cap, return `nil` (triggering `onCancel`) or downscale further (e.g., 128px). Or document that the user should pick a different photo.
286+
287+---
288+
289+### 🔵 A9. `scannedKeyPayload` is business logic in the shell — portability concern
290+
291+**Type:** Protocol conformance / architecture
292+**Files:** `apple/SkrepkaApp/QRView.swift:24-35`
293+
294+`scannedKeyPayload` parses QR code content: strips URL schemes (`skrepka://`, `https://`, `http://`), extracts the last path component, and trims whitespace. This is parsing logic that determines what input the core receives.
295+
296+`AGENTS.md` says: *"The shell never decides anything — it turns Effects into platform calls and resolves the results back in."* This function decides how to interpret a QR code, which is arguably a business decision.
297+
298+An Android client would need to reimplement this logic. If the parsing differs (e.g., one client strips `skrepka://` and another doesn't), the same QR code would produce different inputs to the core.
299+
300+**Attack scenario:** Not a security vulnerability — the core's `try_parse_pubkey` validates the result regardless. But a portability bug: a QR code with a `skrepka://` prefix would work on iOS (stripped by `scannedKeyPayload`) but fail on an Android client that doesn't strip the scheme.
301+
302+**Suggested fix:** Move `scannedKeyPayload` into the core (e.g., `try_parse_pubkey_from_qr` or add scheme-stripping to `try_parse_pubkey`). The shell should pass the raw QR content to the core.
303+
304+---
305+
306+### 🔵 A10. `QRScannerView` doesn't check camera permission
307+
308+**Type:** UX gap
309+**Files:** `apple/SkrepkaApp/QRView.swift:75-80`
310+
311+`ScannerVC.viewDidLoad` calls `AVCaptureDevice.default(for: .video)`, which returns `nil` if camera permission hasn't been granted (or has been denied). The `guard` fails silently, and the scanner shows a black screen with no error message or permission prompt.
312+
313+**Attack scenario:** Not a security issue. A user who denied camera permission can't scan QR codes and sees a black screen with no explanation.
314+
315+**Suggested fix:** Check `AVCaptureDevice.authorizationStatus(for: .video)` and request permission if not determined. Show an error message if denied.
316+
317+---
318+
319+### ⚪ A11. `QRScannerView` camera lifecycle is correct — confirmed safe
320+
321+**Type:** Implementation review
322+**Files:** `apple/SkrepkaApp/QRView.swift:101-114`
323+
324+`startRunning()` and `stopRunning()` are dispatched to a background queue (`DispatchQueue.global(qos: .userInitiated)`) to avoid blocking the main thread. The `done` flag in `Coordinator` prevents multiple `onScan` callbacks. The camera session is properly stopped in `viewWillDisappear`.
325+
326+**Verdict:** Safe.
327+
328+---
329+
330+## 6. Apple Shell — Logic Leakage & Protocol Conformance
331+
332+### 🟡 A12. `BackgroundRefresh` polls `core.view` in a tight loop — main actor contention
333+
334+**Type:** Performance / architecture
335+**Files:** `apple/SkrepkaApp/SkrepkaApp.swift:156-163`
336+
337+The `settle` function polls `core.view` every 200ms, reading the `@Published` `ViewModel` on the main actor. While the overhead per poll is minimal (reading a published property), this runs for up to 25 seconds during a background refresh. If the core is processing a large poll response (which also runs on the main actor via `resolve`), the 200ms polls interleave with core processing.
338+
339+More importantly, `core.view` is a `@Published` property backed by `ViewModel`, which is a value type. Each read copies the entire `ViewModel` (including `contacts: Vec<ContactVM>` and `messages: Vec<MessageVM>`). For a user with 500 contacts and 1000 messages, each poll copies ~1 MB of data. Over 25 seconds at 200ms intervals, that's 125 copies = ~125 MB of transient allocations.
340+
341+**Attack scenario:** Not an attack — a performance issue. A user with many contacts and active conversations would experience increased memory pressure during background refresh.
342+
343+**Suggested fix:** Use a Combine subscription (`core.$view.sink`) instead of polling, or have the core expose a lightweight "status changed" flag that the shell can check without copying the full `ViewModel`.
344+
345+---
346+
347+### 🔵 A13. `Core.swift` `dispatch` silently drops effects if `try!` crashes — no recovery
348+
349+**Type:** Error handling
350+**Files:** `apple/SkrepkaApp/Core.swift:47-53`
351+
352+```swift
353+private func dispatch(_ effects: [UInt8]) {
354+ // swiftlint:disable:next force_try
355+ let requests = try! Requests.bincodeDeserialize(input: effects).value
356+ for request in requests {
357+ process(request)
358+ }
359+}
360+```
361+
362+If `effects` is valid bincode but contains an effect variant the Swift side doesn't know about (e.g., after a core update that adds a new effect without regenerating Swift types), `try!` would crash. The AGENTS.md warns about this: *"Touching Event, ViewModel, or Effect without running just generate leaves the Swift side compiling against stale types."*
363+
364+But there's no runtime recovery. The crash is immediate and unrecoverable. A safer approach would be to catch the deserialization error, log it, and skip the unknown effect — the core would see the effect as unresolved and its watchdog would handle it.
365+
366+**Suggested fix:** Replace `try!` with `try?` and log the error. Unknown effects are dropped; the core's watchdog handles the missing resolution.
367+
368+---
369+
370+### ⚪ A14. `Time.handle` timer lifecycle is correct — confirmed safe
371+
372+**Type:** Implementation review
373+**Files:** `apple/SkrepkaApp/Effects.swift:147-191`
374+
375+The `timers` dictionary is on the `@MainActor`. The `schedule` function removes the old work item before inserting a new one. The `DispatchWorkItem`'s callback runs on the main queue (via `MainActor.assumeIsolated`), so there's no interleaving between `schedule` and the callback. The `.clear` case removes and cancels the work item.
376+
377+No race condition: all operations are on the main actor / main queue, which is single-threaded.
378+
379+**Verdict:** Safe.
380+
381+---
382+
383+### ⚪ A15. `SkrepkaApp.swift` background refresh is correct — confirmed safe
384+
385+**Type:** Implementation review
386+**Files:** `apple/SkrepkaApp/SkrepkaApp.swift:64-164`
387+
388+- `isProtectedDataAvailable` guard prevents running while locked ✓
389+- `settle` polling respects `Task.isCancelled` and deadline ✓
390+- `setTaskCompleted(success: !Task.isCancelled)` correctly reports failure on cancellation ✓
391+- `schedule()` is called before `run()` — next refresh is always queued ✓
392+- `Core.shared` is only accessed after the `isProtectedDataAvailable` guard ✓
393+
394+**Verdict:** Safe. Well-designed.
395+
396+---
397+
398+## 7. Protocol & AGENTS.md Conformance
399+
400+### 🔵 A16. AGENTS.md says "five kv loads" but core does six — `seen_ids` added
401+
402+**Type:** Documentation drift
403+**Files:** `AGENTS.md:98` ("fans out five kv loads"), `core/src/app.rs:719-726` (six loads)
404+
405+AGENTS.md line 98 says: *"IdentityLoaded fans out five kv loads → LoadedSettings triggers Connect"*. But the core actually fans out **six** kv loads: `settings`, `profile`, `contacts`, `cursor`, `outbox`, and `seen_ids` (line 725: `KeyValue::get(K_SEEN_IDS)`). The `STARTUP_LOADS` constant is 6 (line 312).
406+
407+**Impact:** Documentation drift, not a bug. A developer reading AGENTS.md would expect five loads and be confused by the sixth.
408+
409+**Suggested fix:** Update AGENTS.md to say "six kv loads" and include `seen_ids` in the list.
410+
411+---
412+
413+### 🔵 A17. AGENTS.md lists kv keys without `seen_ids` — stale documentation
414+
415+**Type:** Documentation drift
416+**Files:** `AGENTS.md:14` ("keys `settings`, `profile`, `contacts`, `cursor`, `outbox`, and `messages:<peer_hex>`")
417+
418+The `seen_ids` key is not listed in AGENTS.md's kv key list. It was added as part of the dedup fix (AUDIT-NEW.md Q18) but the documentation wasn't updated.
419+
420+**Suggested fix:** Add `seen_ids` to the kv key list in AGENTS.md.
421+
422+---
423+
424+## Summary of New Findings
425+
426+| # | Severity | Type | Title |
427+|---|----------|------|-------|
428+| F1 | 🟠 high | FFI/panic | `try!` in Core.swift crashes on empty bytes from `guard` — FFI panic safety claim is false |
429+| F2 | 🟡 medium | FFI/memory | `AssertUnwindSafe` is unsound — Model is read after a panic, corruption persists |
430+| F3 | 🔵 low | FFI/input | `resolve` accepts arbitrary EffectId — double-resolve crashes via `try!` |
431+| P1 | 🔵 low | Correctness | `to_ob`/`from_ob` round-trip asymmetry for empty input |
432+| P2 | 🔵 low | Clarity | `try_parse_pubkey` hex path lowercases redundantly |
433+| P3 | ⚪ info | Safe | No @p/hex collision for 32-byte pubkeys — confirmed |
434+| P4 | ⚪ info | Safe | `from_ob` multibyte handling is correct — confirmed |
435+| A1 | 🟡 medium | HTTP/defense | `Http.perform` doesn't validate URL scheme — `file://` would be honored |
436+| A2 | 🟡 medium | HTTP/protocol | Redirect delegate cancels same-host redirects — breaks HTTPS upgrades |
437+| A3 | 🔵 low | HTTP/input | `UInt16(clamping:)` silently truncates status codes > 65535 |
438+| A4 | ⚪ info | Safe | URLSession configuration is correct |
439+| A5 | ⚪ info | Safe | Response size limiting is correct |
440+| A6 | ⚪ info | Safe | Keychain storage is correct |
441+| A7 | ⚪ info | Safe | KV persistence is correct |
442+| A8 | 🔵 low | Photo/UX | `PhotoPicker` last-resort quality doesn't check size cap |
443+| A9 | 🔵 low | Architecture | `scannedKeyPayload` is business logic in the shell — portability concern |
444+| A10 | 🔵 low | QR/UX | `QRScannerView` doesn't check camera permission |
445+| A11 | ⚪ info | Safe | QR scanner camera lifecycle is correct |
446+| A12 | 🟡 medium | Performance | `BackgroundRefresh` polls `core.view` — copies full ViewModel every 200ms |
447+| A13 | 🔵 low | Error handling | `Core.swift` `dispatch` crashes on unknown effect — no recovery |
448+| A14 | ⚪ info | Safe | Timer lifecycle is correct |
449+| A15 | ⚪ info | Safe | Background refresh is correct |
450+| A16 | 🔵 low | Docs | AGENTS.md says "five kv loads" but core does six |
451+| A17 | 🔵 low | Docs | AGENTS.md kv key list missing `seen_ids` |
452+
453+**High (1):** F1
454+**Medium (4):** F2, A1, A2, A12
455+**Low (8):** F3, P1, P2, A3, A8, A9, A10, A13, A16, A17
456+**Info (8):** P3, P4, A4, A5, A6, A7, A11, A14, A15
457+
458+---
459+
460+## Priorities
461+
462+1. **F1 (high):** Replace `try!` in Core.swift with graceful error handling. The FFI's panic safety design is undermined by `try!` — a caught panic crashes the app instead of degrading. This is the most impactful finding because it turns every potential core panic into an immediate app crash.
463+
464+2. **F2 (medium):** Address `AssertUnwindSafe` soundness. After a caught panic, the Model may be corrupted. At minimum, document the risk and consider resetting the Model from kv on panic recovery.
465+
466+3. **A1 (medium):** Add URL scheme validation in `Http.perform`. Defense-in-depth against a core bug producing non-http URLs.
467+
468+4. **A2 (medium):** Allow same-host redirects or document that relays must not redirect. The current all-redirects-cancelled policy breaks legitimate HTTPS upgrades.
469+
470+5. **A12 (medium):** Replace `settle`'s polling with a Combine subscription to avoid copying the full ViewModel every 200ms during background refresh.
AUDIT-FRESH.mdnew file+385
@@ -0,0 +1,385 @@
1+# Skrepka Security Audit — Fresh Pass (2026-07-15)
2+
3+**Scope:** Exhaustive multi-pass audit of PROTOCOL.md, server.knot, core/src/ (app.rs,
4+crypto.rs, protocol.rs, model.rs, phonemic.rs, ffi.rs), apple/SkrepkaApp/ (Effects.swift,
5+Core.swift, Views.swift, Forms.swift), install.sh. Findings below are **not** in
6+PROTOCOL-REVIEW.md or AUDIT-NEW.md, or are new angles on previously-noted areas.
7+
8+**Legend:** 🔴 critical · 🟠 high · 🟡 medium · 🔵 low · ⚪ info
9+
10+---
11+
12+## 1. Cryptographic Protocol
13+
14+### 🔴 N1. No AAD on AEAD — envelope `to` field is unauthenticated, enabling silent targeted censorship by any relay
15+
16+**Type:** Design gap (protocol + crypto.rs)
17+**Files:** `core/src/crypto.rs:384-387` (encrypt), `core/src/crypto.rs:434-438` (decrypt)
18+
19+AUDIT-NEW.md Q2 notes this but downgrades the impact to "equivalent to message loss, which is
20+an accepted limitation." That understates it. The real issue is **silent, targeted message loss
21+with zero detectability**:
22+
23+A relay holding a victim's messages can swap the `to` field on a *specific* message (from a
24+sender the relay wants to censor), while leaving other messages intact. The recipient never
25+sees the message and gets no error. The `delivery.ack` system doesn't help because the recipient
26+never received the message to ack it, and the sender's UI shows the message as "sent"
27+indefinitely — which is the same behavior as "the recipient is offline" or "the recipient read
28+it but hasn't acked yet." There is **no way for either party to distinguish "the relay ate
29+Alice's message" from "Alice didn't send anything" or "Bob is just slow to ack."**
30+
31+This is worse than the generic "relay can drop messages" case. Dropping is *eventually*
32+detectable — the sender sees their message stuck at "sent" and can investigate. But `to`-swapping
33+moves the message to a *different recipient's* mailbox, where it's undecryptable and gets
34+silently dropped on poll. The original recipient's cursor is unaffected (no events), so the
35+next poll is normal. The censorship is invisible.
36+
37+**Attack scenario:**
38+1. Alice sends a message to Bob via relay R.
39+2. R swaps `to` from Bob's pubkey to Charlie's.
40+3. Message stored under Charlie's mailbox. Charlie can't decrypt (wrong key), drops silently.
41+4. Bob polls, gets nothing. Normal poll, no error.
42+5. Alice's UI shows "sent" — same as if Bob were merely offline.
43+6. No delivery.ack ever comes. Alice can't tell if Bob received it or not.
44+
45+The relay can do this selectively — censor messages from specific senders, or suppress specific
46+content patterns (inferred from blob size), while delivering everything else normally. The
47+censorship is undetectable because the sender sees the same "sent" status they'd see for any
48+offline recipient, and the recipient sees nothing unusual.
49+
50+**Suggested fix:** Include `version_byte || ephemeral_public || nonce || recipient_ed25519_public`
51+as AAD in the AEAD. The `to` field must match `recipient_ed25519_public` in the AAD. A relay
52+swapping `to` causes the wrong recipient to fail AEAD decryption (before signature check), and
53+the blob is dropped before cursor advancement. The *original* recipient's message stays in the
54+mailbox. Wire-format change (v0x02).
55+
56+### ⚪ N2. HKDF info string and wire version byte are independent constants
57+
58+**Type:** Code hygiene (crypto.rs)
59+**Files:** `core/src/crypto.rs:28` (`HKDF_INFO = b"skrepka-v1"`), `crypto.rs:33` (`WIRE_VERSION = 1`)
60+
61+The spec says "A future revision that changes the crypto primitives should bump both the version
62+byte and the HKDF `info` string together." But there's no code-level binding between them. A
63+developer bumping `WIRE_VERSION` to `2` could forget to update `HKDF_INFO`, causing two different
64+crypto versions to derive keys with the same KDF label.
65+
66+**Suggested fix:** Derive the info string from the version byte or add a compile-time assertion
67+linking them.
68+
69+---
70+
71+## 2. Server Implementation
72+
73+### 🟡 N3. `appendMessage` dedup scan is O(n) — identical-blob replay amplifies to O(n × batch_size)
74+
75+**Type:** Implementation concern / DoS amplification (server.knot)
76+**Files:** `server.knot:919-937`
77+
78+AUDIT-NEW.md Q7 notes the O(n) dedup scan. The amplification is worse than described for
79+identical-blob replay: a batch of 100 identical blobs to the same recipient does 100 × O(|messages|)
80+scans. With |messages| = 10,000, that's 1M comparisons per request. At 60 requests/min, that's
81+60M comparisons/min. Each comparison is a string equality on 64-char hex pubkeys + 346+ char
82+hex blobs.
83+
84+**Attack:** An attacker authenticates (free keypair) and sends batches of 100 identical
85+min-size blobs to one recipient. Each request is ~35 KB but triggers 1M comparisons. Bounded
86+by the 60/min rate limit, but the CPU amplification is ~1000x per request.
87+
88+**Suggested fix:** Index `*messages` by `(toKey, encryptedBlob)` or use a hash-based dedup set.
89+
90+### 🟡 N4. `capForwards` eviction is non-deterministic when retry counts are equal
91+
92+**Type:** Implementation bug (server.knot)
93+**Files:** `server.knot:515-522` (`capForwards`)
94+
95+AUDIT-NEW.md Q9 notes this. The sort by `retries` only (no secondary sort key) means when many
96+entries share `retries: 0`, the sort is unstable and any retries-0 entry can be dropped —
97+including a fresh forward for a healthy peer that would have succeeded on the first try.
98+
99+**Impact:** Delivery delay, not permanent loss (the message stays in `*messages` and can be
100+re-forwarded on the next presence announce). But it's a real availability issue under
101+federation abuse.
102+
103+**Suggested fix:** Sort by `(retries, encryptedBlob)` for determinism, or skip entries for
104+peers in backoff before capping.
105+
106+### 🟡 N5. `handleRecvGossip` `fromServer` not verified against connecting peer's address
107+
108+**Type:** Design gap (server.knot)
109+**Files:** `server.knot:1533-1578`
110+
111+AUDIT-NEW.md Q29 notes this. The `fromServer` field is self-asserted and used to route forwarded
112+messages. An attacker can claim any `fromServer` hostname. The server writes presence rows with
113+that hostname and forwards queued messages there. This is the root cause of the gossip-redirect
114+attack and is already documented, but the spec's §10 should state more prominently that **the
115+server has no mechanism to verify that the connecting peer is who it claims to be**.
116+
117+The `fromServer` field is a `ServerName` (format-validated), but format validation only checks
118+length, lowercase, and no trailing dot — it does not verify the peer controls that hostname.
119+
120+**Suggested fix:** Document more prominently. Real fix needs reverse-DNS verification or peer
121+authentication (signed gossip).
122+
123+### 🔵 N6. `genToken` generates one hex digit per `randomInt 16` call — entropy waste
124+
125+**Type:** Implementation concern (server.knot)
126+**Files:** `server.knot:532-537`
127+
128+AUDIT-NEW.md Q10 notes the CSPRNG dependency. Additionally, generating one hex digit at a time
129+is inefficient — each `randomInt 16` call should produce at least 4 bits, but if the runtime's
130+`randomInt` draws from a wider source (e.g., 32-bit `getrandom`), it wastes 28 bits per call.
131+48 calls × 28 wasted bits = 1344 bits wasted per token. Not a security issue (entropy is
132+abundant) but inefficient.
133+
134+**Verdict:** Info.
135+
136+---
137+
138+## 3. Client Core Logic
139+
140+### 🟡 N7. `seen_ids` dedup set is unbounded — grows without limit per peer
141+
142+**Type:** Implementation concern (app.rs)
143+**Files:** `core/src/app.rs:325` (`seen_ids: BTreeMap<String, HashSet<String>>`)
144+
145+The `seen_ids` map (Q18 fix) is persisted to kv and loaded at startup. It's a `BTreeMap<String,
146+HashSet<String>>` — one entry per peer, each a set of message IDs. The set is never trimmed.
147+Over time, a peer who sends thousands of messages accumulates thousands of IDs. The kv blob
148+(`seen_ids`) grows without bound.
149+
150+With `MAX_ID_LEN` = 128 chars and UUIDs = 36 chars, 1000 messages per peer (the conversation cap)
151+= 36 KB per peer. With 500 contacts (`MAX_CONTACTS`), that's 18 MB. The `seen_ids` kv blob is
152+rewritten in full on every conversation touch (line 2316), so a large set makes every message
153+receipt slower. On iOS, a 18 MB JSON blob written to Application Support on every incoming
154+message is a real performance issue.
155+
156+**Suggested fix:** Cap the `seen_ids` set per peer (e.g., keep the last 2000 IDs) and trim
157+periodically. Or use a time-based expiry. Or a Bloom filter with a fixed size.
158+
159+### 🟡 N8. `ingest_poll` advances cursor before processing events — crash between advance and persist loses messages
160+
161+**Type:** Implementation concern (app.rs)
162+**Files:** `core/src/app.rs:2024-2089`
163+
164+The cursor is advanced to `page.cursor` on line 2038 (before the event loop), and restored to
165+`prev_cursor` on budget exhaustion (line 2086) or event count overflow (line 2069). The cursor
166+is persisted to kv AFTER `ingest_poll` returns (line 1369), via a `KeyValue::set` effect. This
167+means the cursor write only happens after the event loop completes successfully.
168+
169+However, there's a crash window: if the app crashes between `model.cursor = clamped_cursor`
170+(line 2038) and the cursor persist effect (line 1369), the in-memory cursor is advanced but
171+the persisted cursor is still `prev_cursor`. On relaunch, the client sends `prev_cursor` to
172+the relay, which re-serves the events. No message loss — the persisted cursor is the safe one.
173+
174+**Verdict:** Safe. The cursor is only authoritative when persisted, and the persist happens
175+after `ingest_poll` completes. A crash during `ingest_poll` loses no data because the persisted
176+cursor hasn't changed. Info.
177+
178+### 🟡 N9. `ingest_poll` budget exhaustion drops remaining events — client is stuck if the relay always serves an oversized page
179+
180+**Type:** Implementation concern (app.rs)
181+**Files:** `core/src/app.rs:2054-2089`
182+
183+When the `MAX_POLL_TOTAL_BYTES` budget is exhausted mid-page, the loop breaks, the cursor is
184+restored to `prev_cursor`, and an error is set. The next poll sends `prev_cursor` again, and
185+the relay re-serves the same events. If the page always exceeds the budget (e.g., the relay
186+serves 50 large blobs and the budget only covers 10), the client is stuck: poll, process 10,
187+drop 40, re-poll, relay serves the same 50, process the same 10 (deduped, fast), drop 40, etc.
188+
189+The dedup makes re-processing fast (already-seen IDs are O(1) drops), but the client never
190+advances past the oversized page. The relay's events are served in `receivedAt` order, so the
191+same 50 events come back every time. The cursor never moves. The client is stuck in a loop.
192+
193+This is a **livelock**: the client polls, processes some events, but can never ack them. The
194+relay keeps serving the same page. The client's error message ("relay sent an oversized poll
195+page") is set but may not be visible in the UI.
196+
197+**Attack scenario:** A malicious relay serves a page of 50 blobs, each just under `MAX_BLOB_LEN`
198+(42 MiB). The total page is ~2 GiB, far exceeding the 64 MiB budget. The client processes a few,
199+drops the rest, and is stuck. Or more subtly: the relay serves 50 blobs that are each ~1.3 MiB
200+(total ~65 MiB, just over the 64 MiB budget). The client processes 49, drops 1, and is stuck
201+because the cursor never advances past the 50th event.
202+
203+**Suggested fix:** When the budget is exhausted, advance the cursor to the last *successfully
204+processed* event's `receivedAt` (not `page.cursor` and not `prev_cursor`). This acks the
205+processed events and lets the client move forward, dropping only the unprocessed tail. The
206+relay re-serves only the unprocessed events on the next poll. This changes the behavior from
207+"all-or-nothing cursor advance" to "partial ack."
208+
209+### 🟡 N10. Profile `ts` staleness check uses `>=` — equal-timestamp replay is a no-op, but the check is per-contact, not per-field
210+
211+**Type:** Implementation concern (app.rs)
212+**Files:** `core/src/app.rs:2174-2179` (approximate)
213+
214+AUDIT-NEW.md Q19 analyzes this and concludes it's safe because the attacker can't modify the
215+content without breaking the signature. I agree — the `>=` is correct and a same-`ts` replay
216+is a true no-op (same ciphertext, same signature, same content). Info.
217+
218+---
219+
220+## 4. Wire Format / Parsing
221+
222+### 🟡 N11. `protocol.rs` `parse_payload` does not validate `ts` is positive — negative `ts` clamped to 0 is harmless but surprising
223+
224+**Type:** Implementation concern (protocol.rs)
225+**Files:** `core/src/protocol.rs:100`
226+
227+AUDIT-NEW.md Q24 notes this. A `ts` of 0 or negative is clamped to `max(0, ...)` in `ingest_poll`.
228+A message with `ts = 0` is inserted at the earliest chronological position and trimmed first.
229+This is harmless. Info.
230+
231+### 🟡 N12. `delivery.ack` parsing accepts non-string entries in `ack_ids` — filtered silently, no length check on individual IDs after filtering
232+
233+**Type:** Implementation concern (protocol.rs)
234+**Files:** `core/src/protocol.rs:116-126`
235+
236+AUDIT-NEW.md Q26 notes this. The double-check (raw count + post-filter count) is correct.
237+Non-string entries are filtered. Individual ID length is checked (`ack_ids.iter().any(|id|
238+id.len() > MAX_ID_LEN)`). This is correct. Info.
239+
240+---
241+
242+## 5. Federation
243+
244+### 🟠 N13. Gossip amplification: 100 online events trigger 100 mailbox scans + forward staging — O(100 × |messages|) per request
245+
246+**Type:** Design gap (server.knot)
247+**Files:** `server.knot:1544-1578` (`handleRecvGossip`)
248+
249+AUDIT-NEW.md Q27 notes this. A single gossip request with 100 `online` events for 100 different
250+keys triggers `forwardQueuedToServer` for each key, which scans the entire mailbox. With
251+|messages| = 10,000, that's 100 × 10,000 = 1M comparisons per request. At 60/min per IP, that's
252+60M comparisons/min. An attacker with 10 IPs can do 600M comparisons/min.
253+
254+Additionally, each `forwardQueuedToServer` call stages forward entries, which consume
255+`maxForwardsPerServer` slots and trigger HTTP POSTs to the attacker's server. The attacker
256+receives copies of the victim's ciphertext.
257+
258+**Suggested fix:** Limit the number of newly-online keys per gossip batch that trigger forwards
259+(e.g., cap at 10). Or batch the mailbox scan across all newly-online keys in one pass.
260+
261+### 🟡 N14. `offline` gossip events don't cancel pending forwards — wasted retries for up to 80 minutes
262+
263+**Type:** Design gap (server.knot)
264+**Files:** `server.knot:1535-1541`
265+
266+AUDIT-NEW.md Q28 notes this. When an `offline` event is received, pending forwards to that server
267+are not cancelled. They retry for up to `retryBackoffMax × maxForwardRetries` = 8 min × 10 = 80
268+minutes, wasting `maxForwardsPerServer` slots and generating failed HTTP requests.
269+
270+If the offline event was spoofed, the forwards continue — and if the key is actually still
271+online at that server, the forward succeeds on retry. The impact is minimal.
272+
273+**Suggested fix:** When processing an `offline` event, optionally drop pending forwards to that
274+server for the offline key. But this could cause message loss if the offline event is spoofed.
275+Better to leave as-is and document.
276+
277+---
278+
279+## 6. Deployment / install.sh
280+
281+### 🟡 N15. `install.sh` downloads binary over HTTPS but checksum is best-effort — missing checksum silently proceeds
282+
283+**Type:** Deployment concern (install.sh)
284+**Files:** `install.sh:150-181`
285+
286+The checksum verification is best-effort: if the `.sha256` file doesn't exist (line 162 fails),
287+the script warns and proceeds. If `sha256sum`/`shasum` is not available, it warns and proceeds.
288+A checksum that exists but doesn't match is fatal (line 169-174) — correct.
289+
290+The concern: a compromised release asset without a published `.sha256` file (e.g., a pre-checksum
291+release, or a supply-chain attack that removes the checksum file) would be installed without
292+verification. The script trusts GitHub's HTTPS, but HTTPS authenticates the CDN, not the
293+artifact. A compromised GitHub release would sail through.
294+
295+**Suggested fix:** Make the checksum mandatory for all new installs. Keep the best-effort
296+behavior only for upgrades from pre-checksum releases, with a prominent warning.
297+
298+### ⚪ N16. `install.sh` DOMAIN validation rejects uppercase but the Caddyfile interpolation is safe
299+
300+**Type:** Deployment review (install.sh)
301+**Files:** `install.sh:34-45`
302+
303+DOMAIN is lowercased and stripped of scheme/path/port before interpolation into the Caddyfile
304+and systemd unit. The validation rejects anything outside `[a-z0-9.-]`. This prevents config
305+injection (a stray quote or semicolon in the Caddyfile). Good.
306+
307+**Verdict:** Safe. Info.
308+
309+---
310+
311+## 7. Apple Shell
312+
313+### ⚪ N17. URLSession redirect cancellation is correct — bearer token exfiltration via 302 is prevented
314+
315+**Type:** Implementation review (Effects.swift)
316+**Files:** `apple/SkrepkaApp/Effects.swift:8-30`
317+
318+The `NoRedirectDelegate` cancels all HTTP redirects. This prevents a hostile relay from
319+answering `/poll` or `/messages` with a 302 to an attacker-controlled host, which would replay
320+the `Authorization: Bearer` header to the redirect target. The delegate returns `nil`, which
321+hands the 3xx response to the caller as a non-2xx status. The core treats it as a failed
322+request. Correct.
323+
324+**Verdict:** Safe. Good defense.
325+
326+### ⚪ N18. Keychain uses `kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly` — key never rides backup
327+
328+**Type:** Implementation review (Effects.swift)
329+**Files:** `apple/SkrepkaApp/Effects.swift:352`
330+
331+The identity key is stored with `ThisDeviceOnly` accessibility, meaning it never enters iCloud
332+or iTunes backups. The key is accessible after first unlock (not only when unlocked), so
333+background polling works. This is the correct accessibility class for a messaging identity key.
334+
335+**Verdict:** Safe. Good practice.
336+
337+---
338+
339+## Summary of New Findings
340+
341+| # | Severity | Type | Title |
342+|---|----------|------|-------|
343+| N1 | 🔴 critical | Design gap | No AAD — `to` field unauthenticated, silent targeted censorship |
344+| N2 | ⚪ info | Code hygiene | HKDF info and wire version byte are independent constants |
345+| N3 | 🟡 medium | DoS | appendMessage dedup O(n) — identical-blob replay amplifies to O(n × batch) |
346+| N4 | 🟡 medium | Impl bug | capForwards non-deterministic eviction when retry counts equal |
347+| N5 | 🟡 medium | Design gap | fromServer not verified against connecting peer address |
348+| N6 | 🔵 low | Info | genToken entropy waste (one digit per call) |
349+| N7 | 🟡 medium | Impl concern | seen_ids dedup set unbounded — grows without limit |
350+| N8 | ⚪ info | Safe | Cursor crash window — persisted cursor is safe |
351+| N9 | 🟡 medium | Impl concern | Budget exhaustion livelock — client stuck if relay always serves oversized page |
352+| N10 | ⚪ info | Safe | Profile ts >= replay is a no-op |
353+| N11 | ⚪ info | Safe | Negative ts clamped to 0 is harmless |
354+| N12 | ⚪ info | Safe | ack_ids non-string filtering is correct |
355+| N13 | 🟠 high | Design gap | Gossip amplification 100x — O(100 × |messages|) per request |
356+| N14 | 🟡 medium | Design gap | Offline events don't cancel pending forwards |
357+| N15 | 🟡 medium | Deploy | install.sh checksum is best-effort — missing checksum silently proceeds |
358+| N16 | ⚪ info | Safe | install.sh DOMAIN validation is correct |
359+| N17 | ⚪ info | Safe | Redirect cancellation prevents token exfiltration |
360+| N18 | ⚪ info | Safe | Keychain ThisDeviceOnly is correct |
361+
362+**Critical (1):** N1
363+**High (1):** N13
364+**Medium (6):** N3, N4, N5, N7, N9, N14, N15
365+**Low (1):** N6
366+**Info (7):** N2, N8, N10, N11, N12, N16, N17, N18
367+
368+---
369+
370+## Priorities
371+
372+1. **N1 (critical):** Add AAD to AEAD. This is the most impactful finding — it enables
373+ undetectable censorship by any relay. Requires wire-format change (v0x02).
374+
375+2. **N13 (high):** Document or limit gossip amplification. A single request triggers 100
376+ mailbox scans. Cap newly-online keys that trigger forwards per batch.
377+
378+3. **N9 (medium):** Fix budget exhaustion livelock. Advance cursor to last processed event
379+ instead of restoring to pre-page cursor. This prevents a malicious relay from permanently
380+ wedging the client with oversized poll pages.
381+
382+4. **N7 (medium):** Bound `seen_ids` set. An unbounded dedup set that's rewritten on every
383+ message receipt will degrade performance over time.
384+
385+5. **N3 (medium):** Index `*messages` for dedup. The O(n) scan is a CPU amplification vector.
AUDIT-NEW.mdnew file+816
@@ -0,0 +1,816 @@
1+# Skrepka Security Audit — New Findings (2026-07-15)
2+
3+**Scope:** Exhaustive multi-pass audit of PROTOCOL.md, server.knot, and core/src/ (app.rs, crypto.rs, protocol.rs, model.rs, phonemic.rs, ffi.rs). Findings below are **not** documented in PROTOCOL-REVIEW.md.
4+
5+**Legend:** 🔴 critical · 🟠 high · 🟡 medium · 🔵 low · ⚪ info
6+
7+---
8+
9+## 1. Cryptographic Protocol Weaknesses
10+
11+### 🔴 Q1. HKDF salt omits sender identity — KCI/UKS not prevented by construction
12+
13+**Type:** Design gap (protocol + crypto.rs)
14+**Files:** `core/src/crypto.rs:276-290` (`derive_key`), PROTOCOL.md §3 step 3
15+
16+The HKDF salt is `ephemeral_public || recipient_x25519_public` — both public values, neither identifying the sender. The encryption key is derived entirely from the ephemeral X25519 exchange and the recipient's public key. While the Ed25519 signature inside the AEAD binds the sender, the *key derivation* itself has no sender contribution.
17+
18+This means anyone who knows the recipient's private key can compute the same shared secret from a captured ephemeral public key — there's no sender contribution to the KDF. The signature is the only thing binding the sender, and it's verified *after* AEAD decryption. An attacker who obtains the recipient's private key can decrypt all captured blobs (already noted as "no forward secrecy" in §10), but additionally, because the KDF has no sender binding, an attacker can *replace* the sender identity and signature inside a captured ciphertext by re-encrypting with the same ephemeral key — wait, no, they can't re-encrypt without the shared key. However, if the attacker *has* the recipient's private key, they can decrypt, strip the original sender, forge a new inner buffer with their own sender key + signature over the same `recipient || compressed_len || compressed || padding`, re-encrypt with the derived key, and re-send. The recipient sees a valid message from a different sender. This is a *key compromise impersonation (KCI)* vector: compromising the recipient's key lets an attacker re-attribute captured messages.
19+
20+**Attack scenario:** An attacker records ciphertext between Alice and Bob. Later they compromise Bob's private key. They decrypt the blobs, replace Alice's identity with Mallory's (signing under Mallory's key), re-encrypt, and deliver to Bob. Bob sees messages apparently from Mallory.
21+
22+**Exploitable in practice:** Requires recipient key compromise, which the protocol already considers catastrophic. The KCI vector is an *additional* consequence of that compromise, not a standalone attack. Still, including the sender's public key in the HKDF salt or info would close it by construction.
23+
24+**Suggested fix:** Include `sender_ed25519_public` in the HKDF salt or info: `salt = ephemeral_public || recipient_x25519_public || sender_ed25519_public`. Since the sender pubkey is inside the AEAD, a decryptor already has it before verification, but the key derivation would need it — so the sender pubkey would need to be *outside* the AEAD (as associated data or in the blob header), which changes the wire format. Alternatively, accept this as a documented limitation of v0.1 (the signature already prevents forgery without key compromise).
25+
26+### 🟡 Q2. No associated data (AAD) on AEAD — ciphertext is malleable across contexts
27+
28+**Type:** Design gap (protocol + crypto.rs)
29+**Files:** `core/src/crypto.rs:384-387` (encrypt), `core/src/crypto.rs:434-438` (decrypt)
30+
31+XChaCha20-Poly1305 is used with **no associated data**: `cipher.encrypt(nonce, inner)` and `cipher.decrypt(nonce, ciphertext)`. The version byte, ephemeral public key, and nonce are all in the clear and not authenticated. An attacker who can modify the blob in transit (a malicious relay, or a network attacker without TLS) can flip the version byte or corrupt the ephemeral key without any AEAD failure — the AEAD only protects the ciphertext body.
32+
33+While corrupting these fields will cause decryption/verification to fail downstream (wrong key derivation, wrong version), there's no *cryptographic binding* between the outer envelope fields and the inner ciphertext. A relay could, for example, swap the ephemeral public key from one blob with that of another (keeping the same nonce + ciphertext), and the recipient would get a decryption failure rather than an authentication failure — a distinction that matters for error handling and oracle analysis.
34+
35+More importantly, the `to` field in the envelope is **not** authenticated by the AEAD. A relay can change the `to` field on a stored message, redirecting it to a different recipient. That recipient can't decrypt it (wrong key), but the *original* recipient's message is now gone from the mailbox. This is a denial-of-service vector that doesn't require breaking encryption.
36+
37+**Attack scenario:** A malicious relay swaps the `to` field on Alice's message to Bob, replacing it with Charlie's pubkey. Bob never receives the message. Charlie receives garbage (can't decrypt). Neither side gets an error from the protocol.
38+
39+**Exploitable in practice:** Yes — any relay can do this. However, a relay can already drop messages, so this is equivalent in impact to message loss, which is an accepted limitation.
40+
41+**Suggested fix:** Include `version_byte || ephemeral_public || nonce` as AAD in the AEAD. For the envelope-level `to` field, consider including `recipient_ed25519_public` as AAD (it's already in the signed inner buffer, but AAD would make the envelope integrity-checked too). This is a wire-format change (v0x02).
42+
43+### 🟡 Q3. compressed_len field is attacker-controllable and trusted for slicing
44+
45+**Type:** Implementation concern (crypto.rs)
46+**Files:** `core/src/crypto.rs:449-459`
47+
48+During decryption, `compressed_len` is read from the AEAD-decrypted inner buffer and used to slice the `compressed` region: `let compressed = &inner[100..100 + compressed_len]`. The AEAD protects the integrity of the inner buffer, so this field is authenticated — but only *after* decryption. The check `100 + compressed_len > inner.len()` prevents an out-of-bounds read, but a `compressed_len` that points into the padding region (i.e., `compressed_len < actual_compressed_data_len`) would silently feed truncated zstd data to the decompressor, which would fail. Conversely, `compressed_len > actual_compressed_len` would include padding bytes in the zstd frame, which the decompressor might or might not reject.
49+
50+Since the signature is over `recipient_pub || compressed_len_bytes || compressed || padding`, the signed region includes the `compressed_len` field. A tampered `compressed_len` would break the signature. So this is actually well-protected. The concern is that the signature is verified *after* the `compressed_len` is already used for slicing — but since the slice is only used for decompression *after* signature verification (`crypto.rs:472`), this is safe.
51+
52+**Verdict:** Not a bug after careful analysis — the signature covers `compressed_len` and the decompression happens after verification. Downgraded to info.
53+
54+### ⚪ Q4. zstd decompression bomb window before content-size cap
55+
56+**Type:** Implementation defense-in-depth (crypto.rs)
57+**Files:** `core/src/crypto.rs:303-322`
58+
59+The decompressor caps `window_log_max(21)` (2 MiB window) and output at `MAX_PLAINTEXT_LEN + 1` (1 MiB + 1 byte). This is solid. However, a crafted zstd frame with a small window but very long output (many small blocks) could still cause significant CPU consumption before the 1 MiB + 1 byte limit triggers. The `take(MAX_PLAINTEXT_LEN + 1)` read will read one byte past the cap, forcing a full decompression attempt up to that point. This is bounded at ~1 MiB of output, so CPU is bounded too. This is fine.
60+
61+### 🟡 Q5. CRIME/BREACH surface is wider than documented for profile messages
62+
63+**Type:** Spec gap / design weakness (PROTOCOL.md §3)
64+**Files:** PROTOCOL.md §3, §4; `core/src/protocol.rs:73-91`
65+
66+The spec warns about CRIME/BREACH but says "an attacker cannot make the client re-encrypt a chosen variant of a secret on demand." However, `profile` messages compress `display_name`, `bio`, and `photo` together in one zstd frame. If an attacker can influence part of the profile (e.g., the user sets their display name based on something an attacker controls, like a contact's name echoed back), and the profile is broadcast to contacts, the compressed size could leak information. The attacker would need to:
67+
68+1. Influence part of the plaintext that is compressed alongside a secret
69+2. Observe the resulting blob size (which is bucket-padded, so only the bucket boundary leaks)
70+
71+The padding buckets (256, 512, 1024, ...) are coarse enough that the leak is minimal in practice. But the spec's claim that "an attacker cannot make the client re-encrypt a chosen variant of a secret on demand" is too strong: if an attacker sends messages that cause the user to change their display name or bio (e.g., "change your name to match mine"), the re-broadcast compresses attacker-influenced text alongside the user's photo (which is base64 and thus high-entropy/incompressible). The photo being base64 limits the CRIME surface since it's already nearly random.
72+
73+**Exploitable in practice:** Very unlikely given bucket padding and the difficulty of controlling what text gets compressed alongside secrets.
74+
75+**Suggested fix:** Clarify in the spec that the CRIME/BREACH surface extends to profile broadcasts (where attacker-influenced text and user-controlled secrets are compressed together), not just text messages.
76+
77+---
78+
79+## 2. Server Implementation Bugs
80+
81+### 🟠 Q6. `ackPolledMessages` is called before `doPoll` — races with concurrent sends to the same mailbox
82+
83+**Type:** Implementation bug (server.knot)
84+**Files:** `server.knot:1258-1287` (`handlePoll`), `server.knot:1343-1351` (`ackPolledMessages`)
85+
86+In `handlePoll`, the cursor-ack (`ackPolledMessages`) runs inside the setup atomic block, *before* `doPoll` collects events. If a concurrent `/messages` request arrives between the ack and the collect, the new message is appended with a fresh `receivedAt` that is strictly greater than the acked cursor — so it will be picked up by `doPoll`'s collect. This is actually correct behavior.
87+
88+However, there's a subtler issue: the cursor is clamped to `max(0 (min (max t curSeq) cursor))` before the ack. If the client sends a cursor that is *ahead* of `curSeq` (e.g., from a different relay), the clamp to `max t curSeq` could *lower* the cursor, which means `ackPolledMessages` acks less than the client intended. But this is intentional (the comment explains it).
89+
90+After deeper analysis, the ordering here is actually correct — the ack happens first (deleting old messages), then the collect picks up what's left that's newer than the cursor. The race with concurrent sends is handled by STM: the new message gets a fresh `receivedAt > cursor`, so it's picked up.
91+
92+**Verdict:** Not a bug after careful analysis. Downgraded to info.
93+
94+### 🟡 Q7. `appendMessage` dedup is O(n) per message — quadratic under burst
95+
96+**Type:** Implementation performance issue (server.knot)
97+**Files:** `server.knot:919-937` (`appendMessage`)
98+
99+`appendMessage` checks `any (\\m -> m.toKey == toKey && m.encryptedBlob == encryptedBlob) msgs` — a full scan of `*messages` — on every call. For a batch of 100 messages to different recipients, this is 100 × |messages| comparisons. With `maxMessagesPerRecipient = 10000` and many recipients, this can be tens of thousands of comparisons per message. Under sustained throughput this is quadratic.
100+
101+This is documented in the file header ("Everything is intentionally O(n) over flat lists; performance is sacrificed for clarity"), so it's a known design choice, not a security finding per se. But it creates a **DoS amplification** vector: an authenticated sender can send 100 messages per request (up to 60 requests/min = 6000/min), each triggering a full scan of the mailbox. With 10,000 messages per recipient and many recipients, each scan is O(total_messages), making the CPU cost per request proportional to the entire mailbox size.
102+
103+**Attack scenario:** An attacker authenticates (free — just generate a keypair) and sends 100-message batches of junk to many recipients. Each message in the batch triggers a full `*messages` scan for dedup. With a large mailbox, this can consume significant CPU per request.
104+
105+**Exploitable in practice:** Bounded by rate limits (60/min per IP) and the fact that the attacker must be authenticated. The CPU amplification is real but modest.
106+
107+**Suggested fix:** Index `*messages` by `(toKey, encryptedBlob)` or use a hash-based dedup set.
108+
109+### 🟠 Q8. `maxMessagesPerRecipient` eviction destroys genuine mail under flood
110+
111+**Type:** Design gap (server.knot)
112+**Files:** `server.knot:156-182`, `server.knot:926-937`
113+
114+This is documented in the code comments as a "trade, not a fix," but it constitutes a real attack: an authenticated sender (pubkeys are free to mint) can flood a recipient's mailbox with 10,000 junk messages, pushing out all genuine undelivered messages. The recipient's client only sees junk. The comment says "at least the newest messages always land" — but the newest messages are the *attacker's junk*, not the genuine messages that were already queued.
115+
116+The `MAX_POLL_TOTAL_BYTES` client-side budget (64 MiB) means the client processes a bounded amount per poll, but the server has already destroyed the genuine messages by eviction. The client never sees them.
117+
118+**Attack scenario:**
119+1. Victim is offline for a day. Attacker sends 10,000 messages to victim's pubkey.
120+2. Each message is a valid encrypted blob (attacker generates a keypair and encrypts real messages to the victim — they don't need to be decryptable by the victim, just valid blobs).
121+3. Victim comes online, polls, and gets a page of junk. Their genuine messages were evicted.
122+
123+**Exploitable in practice:** Yes — the attacker needs to be authenticated (free) and send 10,000 messages. At 60 requests/min × 100 messages = 6,000/min, this takes ~2 minutes. The rate limit is per-IP, so the attacker needs multiple IPs or time.
124+
125+**Suggested fix:** This is an accepted design tradeoff in the current implementation. A real fix requires per-sender quotas or pricing. Document it in PROTOCOL.md §10 as a DoS vector, not just a capacity concern.
126+
127+### 🟡 Q9. `capForwards` evicts by retry count, not by age — fresh forwards can be dropped
128+
129+**Type:** Implementation bug (server.knot)
130+**Files:** `server.knot:515-522` (`capForwards`), `server.knot:109-110` (`maxForwardsTotal`)
131+
132+`capForwards` keeps the lowest-retry entries (`take maxForwardsTotal (sortBy (\\f -> f.retries) fwds)`). When the outbox exceeds `maxForwardsTotal = 50000`, the *highest-retry* entries are dropped. The comment says these are "closest to `maxForwardRetries` (about to be abandoned anyway)."
133+
134+But there's a subtle issue: a fresh forward (retries: 0) for a *healthy* peer could be dropped if the outbox is full of fresh forwards (all retries: 0) for *failing* peers. The sort is by `retries` only, not by `retries` then by age or destination health. When many entries share `retries: 0`, the `sortBy` is unstable (Knot's sort may not be stable), so *any* retries-0 entry could be dropped — including one for a healthy peer that would have succeeded on the first try.
135+
136+**Attack scenario:** An attacker floods the forwards outbox by gossipping many fake "online" events, causing `forwardQueuedToServer` to stage forwards for many fake servers. Each fails and increments retries. When `maxForwardsTotal` is reached, genuine forwards for healthy peers may be evicted alongside the junk.
137+
138+**Exploitable in practice:** Requires federation to be enabled and the attacker to be able to reach `/federation/gossip`. The genuine forward would be re-staged on the next presence announce, so the impact is a delivery delay, not permanent loss.
139+
140+**Suggested fix:** Sort by `(retries, age)` or skip entries for peers in backoff before capping.
141+
142+### 🟡 Q10. `genToken` entropy is 4 bits per call — collision-resistant but timing-leaky
143+
144+**Type:** Implementation concern (server.knot)
145+**Files:** `server.knot:532-537`
146+
147+`genToken` generates one hex character per recursive call, drawing from `randomInt 16`. Each call to `randomInt` produces 4 bits. For 48 chars (192 bits), this is 48 calls to `randomInt`. The concern is that `randomInt` on the Knot runtime may not be a CSPRNG — the function signature is `IO {random}` which suggests a runtime-provided random source, but the implementation is not visible here.
148+
149+If `randomInt` uses a non-cryptographic PRNG (e.g., a LCG), the 192-bit tokens would be predictable. The auth challenge tokens and session tokens both use `genToken`. If predictable, an attacker could predict future session tokens after observing some.
150+
151+**Exploitable in practice:** Depends on the Knot runtime's `randomInt` implementation, which is not in this codebase. If it uses `/dev/urandom` or equivalent, this is fine. If it uses a userspace PRNG seeded from a low-entropy source, this is critical.
152+
153+**Suggested fix:** Verify that the Knot runtime's `randomInt` uses a CSPRNG. Document the assumption.
154+
155+### 🟡 Q11. `handleVerifyAuth` challenge lookup is O(n) — timing varies with challenge pool size
156+
157+**Type:** Implementation concern (server.knot)
158+**Files:** `server.knot:1210-1214`
159+
160+The challenge verification does `any (\\c -> same c && c.expiresAt > t && matchIp clientIp c.ip) ch` — a linear scan of `*challenges`. With `maxChallenges = 10000`, this is up to 10,000 comparisons per verify. The timing varies with the position of the matching challenge in the list, which could be observable.
161+
162+Combined with the already-documented token comparison timing side-channel (finding B), this adds another timing channel: the time to find the matching challenge leaks its position in the list, which leaks when it was inserted (roughly when the `/auth/challenge` was called).
163+
164+**Exploitable in practice:** Very low impact — the challenge is consumed immediately after verification, and the timing difference is small relative to network jitter.
165+
166+**Suggested fix:** Index challenges by `(pubkey, challenge)` for O(1) lookup.
167+
168+### 🟡 Q12. `handleVerifyAuth` computes signature verification outside atomic — TOCTOU on challenge
169+
170+**Type:** Implementation gap (server.knot)
171+**Files:** `server.knot:1196-1214`
172+
173+The `sigValid` computation is done outside the atomic block (line 1204-1209), but the challenge lookup is inside the atomic (line 1213). Between computing `sigValid` and the atomic block, the challenge could be consumed by a concurrent `/auth/verify` with the same challenge. But the atomic block re-checks: `any (\\c -> same c && ... && c.expiresAt > t && matchIp clientIp c.ip) ch && sigValid`. The `sigValid` is pre-computed, so the check is: challenge exists AND signature is valid. If the challenge is consumed between the pre-compute and the atomic, the `any` returns false, and the verify fails. This is safe — no TOCTOU.
174+
175+But there's a subtler issue: the `clientIp` for the challenge (set at `/auth/challenge` time) and the `clientIp` for the verify (set at `/auth/verify` time) must match (`matchIp clientIp c.ip`). If the client's IP changes between challenge and verify (mobile network change), the verify fails. This is documented as expected behavior. But if `trustForwardedFor` is true and the client can spoof `X-Forwarded-For`, they could set a different IP on the challenge and verify requests — but they'd need to match, so they'd just set the same spoofed IP on both. This is already documented (finding 8).
176+
177+**Verdict:** Not a new bug. The pre-compute is safe because the atomic block re-validates the challenge's existence.
178+
179+### 🟠 Q13. `revokeOthers` race — concurrent sessions for same pubkey can race on revoke
180+
181+**Type:** Implementation bug (server.knot)
182+**Files:** `server.knot:1219-1231`
183+
184+When `revokeOthers: true`, the handler does:
185+```
186+let pruned = if revokeOthers
187+then filter (\\s -> s.pubkey != pubkey) ses
188+else capPerKey ses pubkey maxSessionsPerKey
189+```
190+
191+This drops *all* other sessions for this pubkey. But if a concurrent `/auth/verify` for the same pubkey is in flight (without `revokeOthers`), it could install a new session between the `filter` and the `union`:
192+
193+1. Verify A (revokeOthers=true) reads `*sessions`, filters out all pubkey sessions → `pruned`
194+2. Verify B (revokeOthers=false) reads `*sessions` (still has the old sessions), adds a new one → commits
195+3. Verify A commits `pruned + newSession` → Verify B's session is lost
196+
197+But wait — both are inside `atomic` blocks, and STM guarantees serializability. If Verify A's atomic block retries after Verify B commits, Verify A re-reads `*sessions` (now including B's session) and re-applies the filter — so B's session would be dropped. This is actually the *intended* behavior of `revokeOthers`: it should drop all other sessions. The "race" is really just STM serializing correctly.
198+
199+**Verdict:** Not a bug. STM handles this correctly. Downgraded to info.
200+
201+### 🟡 Q14. `pruneExpired` presence offline gossip may miss peers that expired in a prior sweep
202+
203+**Type:** Implementation concern (server.knot)
204+**Files:** `server.knot:1614-1633` (`backgroundPrune`)
205+
206+The prune loop snapshots peers *before* the sweep (`prePeers`) and unions with *post-sweep* peers. But `pruneExpired` returns only locally-expired keys that have no other live local session. If a key expired in a *previous* sweep (and was already removed from `*presence`), the current sweep has nothing to return for it. The offline gossip for that key was already sent in the previous sweep. This is correct — each key gets exactly one offline event.
207+
208+**Verdict:** Not a bug. The pre/post union handles the edge case correctly.
209+
210+### 🟡 Q15. `forwardQueuedToServer` budget check reads `*forwards` count but doesn't reserve atomically
211+
212+**Type:** Implementation concern (server.knot)
213+**Files:** `server.knot:1140-1151`
214+
215+`forwardQueuedToServer` computes `budget = max 0 (maxForwardsPerServer - existing)` where `existing = countWhere (\\f -> f.toServer == server) fwds`, then takes `take budget` candidates and unions them into `*forwards`. The whole thing is inside one `atomic` block, so it's serializable — two concurrent calls would serialize, and the second would see the first's additions. This is correct.
216+
217+**Verdict:** Not a bug. STM handles concurrency correctly.
218+
219+---
220+
221+## 3. Client Core Logic Bugs
222+
223+### 🟠 Q16. `ingest_poll` cursor clamping uses `now_ms() + 60_000` — relay can advance cursor beyond actual messages
224+
225+**Type:** Implementation concern (app.rs)
226+**Files:** `core/src/app.rs:1967-1975`
227+
228+The cursor is clamped to `page.cursor.min(now_ms().saturating_add(60_000))`. If a hostile relay sends `cursor = now_ms() + 59_000`, the client accepts it, writes it to disk, and the next poll sends this cursor to the relay. If the client later switches to a *different* relay, the cursor is reset to 0 (line 868) — so this is per-relay and not cross-relay. But on the *same* relay, a hostile relay can send an artificially high cursor, causing the client to ack (delete) all messages up to that cursor on the next poll — even messages the client hasn't seen yet.
229+
230+Wait — the cursor is what the *client* sends to the *server*. The server uses it to ack (delete) messages ≤ cursor. If a relay sends a high cursor in the poll response, the client adopts it and sends it back on the next poll. The relay then deletes everything ≤ that cursor. If there were messages the client never received (because the relay withheld them), they're now permanently lost.
231+
232+But the relay already controls what messages it sends to the client — it could simply withhold messages and never show them. The cursor doesn't give the relay any new power it doesn't already have. The relay can always just not send events. So this is not a new attack vector.
233+
234+However, there's a subtler issue: the cursor is persisted to disk. If the relay sends a high cursor and the client adopts it, then the client reconnects to the same relay after a network interruption, the cursor is still high. Any messages that arrived at the relay during the interruption (with `receivedAt` ≤ the poisoned cursor) are automatically acked and deleted.
235+
236+**Attack scenario:** A malicious relay sends `cursor = now_ms() + 59000` in an empty poll response. The client adopts it and persists it. Later, legitimate messages arrive at the relay with `receivedAt` values below the poisoned cursor. The client's next poll sends the poisoned cursor, and the relay deletes those messages.
237+
238+But wait — the relay assigns `receivedAt` using its own monotonic sequence. If the relay is malicious, it can just not deliver messages. If it's honest but was briefly compromised, the poisoned cursor could cause message loss after recovery. This is a real concern for the "briefly compromised relay" scenario.
239+
240+**Exploitable in practice:** A compromised relay can cause permanent message loss for messages that arrive during the compromise window. The 60-second clamp limits the window, but the cursor persists across reconnections.
241+
242+**Suggested fix:** Only adopt the cursor if the poll response contained events. If `events` is empty and `cursor > model.cursor`, don't advance the cursor — the relay has nothing to tell us, and a cursor advance from an empty page is suspicious.
243+
244+### 🟡 Q17. Delivery ack staleness check uses `ts` not `last_ack_ts` watermark for ordering — race with clock skew
245+
246+**Type:** Implementation concern (app.rs)
247+**Files:** `core/src/app.rs:2116-2134`
248+
249+The ack staleness check compares `ts < c.last_ack_ts`. If two acks arrive in the same poll page from the same sender, with `ts_A = 100` and `ts_B = 200`, and `last_ack_ts = 50`:
250+- Ack A (ts=100): not stale (100 >= 50), applies, sets `last_ack_ts = min(100, now)`
251+- Ack B (ts=200): not stale (200 >= 100), applies, sets `last_ack_ts = min(200, now)`
252+
253+This is correct. But if the page order is reversed (B before A), and `last_ack_ts = 50`:
254+- Ack B (ts=200): not stale, applies, sets `last_ack_ts = min(200, now)`
255+- Ack A (ts=100): stale (100 < min(200, now)), dropped!
256+
257+This means an older ack in the same page as a newer one is dropped if it's processed after the newer one. Since the events are processed in page order (not sorted), a relay could reorder events to cause an older ack to be dropped. The impact is minimal — the older ack would have acked fewer or the same messages.
258+
259+**Exploitable in practice:** A malicious relay could reorder events to suppress a specific ack, but it could also just drop the event entirely. Low impact.
260+
261+**Suggested fix:** Process acks in `ts` order within a page, or collect all acks from a sender and apply the highest-ts one.
262+
263+### 🟡 Q18. `seen_ids` dedup set is built lazily from conversation — misses messages trimmed by `MAX_MESSAGES_PER_PEER`
264+
265+**Type:** Implementation bug (app.rs)
266+**Files:** `core/src/app.rs:2086-2092`
267+
268+The dedup set is built from the current conversation: `convo.iter().map(|m| m.id.clone()).collect()`. But `trim_history` may have aged out older messages (keeping only the most recent 1000). A replayed message whose `id` matches an aged-out message would pass the dedup check and be re-inserted into the conversation. The message would appear as a new message (with its original `ts`), potentially at the top of the conversation list if `ts` is high.
269+
270+**Attack scenario:** An attacker captures a message blob (by being a relay, or by gossip redirect), waits until the recipient's conversation has been trimmed past that message (1000+ messages later), then replays the blob. The dedup check misses it (the `id` is no longer in the trimmed conversation), and the message is re-inserted. The message appears as a new old-dated message.
271+
272+**Exploitable in practice:** Requires the attacker to have captured the blob and to wait for 1000+ messages. The replayed message would be inserted at its original `ts` position, so it wouldn't appear at the bottom of the chat — it would appear in its chronological position. The user might not notice. The impact is minimal — it's an old message reappearing, not new content.
273+
274+**Suggested fix:** Maintain a persistent dedup set (not derived from the trimmed conversation), or store the set of seen IDs separately from the message history.
275+
276+### 🟡 Q19. Profile `ts` staleness check uses `>=` — equal-timestamp replay overwrites with identical content (harmless) but also overwrites with *different* content if sender crafts it
277+
278+**Type:** Implementation concern (app.rs)
279+**Files:** `core/src/app.rs:2174-2179`
280+
281+The profile staleness check uses `ts >= c.last_profile_ts`, meaning a replayed profile at the *same* `ts` is accepted. The comment says "a replayed profile at the same `ts` overwrites with identical content, which is a no-op in practice." But this assumes the replayed blob has the same content. An attacker who captures a profile blob can modify the *inner* content (display_name, bio, photo) and re-encrypt it with the same `ts` — but they'd need to sign it, and they can only sign with their own key. The recipient would see it coming from the same sender (the original profile sender), but the signature would be from the original sender's key... wait, no. The attacker can't re-sign with the original sender's key unless they have it.
282+
283+Actually, the attacker *replays the exact same blob* — same ciphertext, same inner content, same signature. The `ts` is the same, and the content is the same. So it's truly a no-op. The attacker can't modify the content without breaking the signature. This is safe.
284+
285+**Verdict:** Not a bug. The `>=` is correct and the replay is a true no-op.
286+
287+### 🟡 Q20. `flush_next` batch-building skips items for different recipients — outbox may have interleaved items stuck behind a large batch
288+
289+**Type:** Implementation concern (app.rs)
290+**Files:** `core/src/app.rs:1818-1853`
291+
292+The batch stops at the first recipient change (`if recipient.as_ref().is_some_and(|r| r != &item.recipient) { break }`). If the outbox has items for recipient A followed by items for recipient B, and A's batch is being built, B's items wait. This is by design (FIFO fairness). But if A's send fails repeatedly, B's items are stuck behind A's retries. The `retry_batch` function charges retries and eventually drops A's items (after `MAX_OUTBOX_RETRIES` or `OUTBOX_TTL_MS`), unblocking B.
293+
294+This is correct behavior, not a bug. The FIFO ordering ensures fairness at the cost of head-of-line blocking, which is the right tradeoff for a messaging app (you don't want a failed send to one peer to reorder sends to another).
295+
296+**Verdict:** Not a bug. Downgraded to info.
297+
298+### 🟡 Q21. `encrypt_for` uses `OsRng` — no deterministic test path, but also no RNG failure handling
299+
300+**Type:** Implementation concern (app.rs)
301+**Files:** `core/src/app.rs:2227-2231`
302+
303+`encrypt_for` uses `let mut rng = rand_core::OsRng;` and passes it to `crypto::encrypt`. If `OsRng` fails (e.g., the OS entropy pool is exhausted on a freshly booted device), `rng.fill_bytes` would panic or return an error. `crypto::encrypt` calls `rng.fill_bytes` in multiple places (`eph_priv`, `padding`, `nonce`), and these would propagate the error up as `CryptoError::Encrypt` (since `fill_bytes` on `OsRng` infallibly fills — it uses `/dev/urandom` which never blocks on modern systems).
304+
305+**Verdict:** `OsRng` is infallible on iOS/macOS (it uses `SecRandomCopyBytes` which always succeeds). Not a bug.
306+
307+---
308+
309+## 4. Wire Format / Parsing Issues
310+
311+### 🟠 Q22. `isValidHex` uses `chars` (set semantics) — deduplication hides length-based attacks
312+
313+**Type:** Implementation bug (server.knot)
314+**Files:** `server.knot:542-545`
315+
316+```knot
317+isValidHex = \s ->
318+ let n = length s in
319+ n > 0 && n / 2 * 2 == n && all (\c -> contains c "0123456789abcdef") (chars s)
320+```
321+
322+`chars s` returns the **distinct** character set (relations dedupe). So for a string like `"aaaa"`, `chars` returns `{"a"}`, and the `all` check passes. The `length` check (`n / 2 * 2 == n`) ensures even length. But `chars` deduplication means the `all` check is O(distinct chars) not O(string length), which is a performance optimization, not a correctness issue — the set membership test covers all characters.
323+
324+This is actually correct: if all *distinct* characters are in the hex alphabet, then all characters are in the hex alphabet. The dedup just makes it faster.
325+
326+**Verdict:** Not a bug. The set semantics are correct for membership checking.
327+
328+### 🟡 Q23. `PubkeyHex` type accepts non-curve-point 32-byte hex values at the route boundary
329+
330+**Type:** Implementation gap (server.knot)
331+**Files:** `server.knot:322` (`type PubkeyHex = Text where isValidExactHex 64`)
332+
333+The `PubkeyHex` type only checks that the string is 64 lowercase hex characters — it doesn't verify the decoded bytes form a valid Ed25519 public key (a valid curve point). The client's `try_parse_pubkey` (`phonemic.rs:140-144`) does check this via `VerifyingKey::from_bytes`, but the server accepts any 64-hex-char string as a valid `PubkeyHex`.
334+
335+This means a client can send a message to a `to` address that is 32 bytes of hex but not a valid Ed25519 public key. The server stores and forwards the blob. The "recipient" can never decrypt it because `ed25519_pk_to_x25519` would fail on the invalid key. The blob sits in the mailbox until TTL expiry, consuming storage.
336+
337+**Attack scenario:** An attacker sends 100 messages per batch to invalid pubkeys. Each is stored for 30 days. With 60 requests/min × 100 = 6000/min, after 1 hour that's 360,000 junk messages. Each counts against `maxMessagesPerRecipient` for the target — but the target is a non-existent key, so nobody is affected. The real concern is storage consumption: 360,000 × minBlobLen bytes = ~62 MB per hour per attacker IP.
338+
339+**Exploitable in practice:** The rate limit (60/min per IP) bounds the rate. The 30-day TTL bounds the total. `maxMessagesPerRecipient = 10000` per non-existent key limits per-key. The total storage impact is bounded.
340+
341+**Suggested fix:** The server could optionally validate that `to` is a valid curve point, but this adds CPU cost and the spec doesn't require it (the server can't decrypt anyway). Document as accepted.
342+
343+### 🟡 Q24. `parse_payload` `ts` field defaults to 0 when missing — allows pre-epoch ordering manipulation
344+
345+**Type:** Implementation concern (protocol.rs)
346+**Files:** `core/src/protocol.rs:100`
347+
348+`let ts = v.get("ts").and_then(|t| t.as_i64()).unwrap_or(0);`
349+
350+If a peer omits the `ts` field (or sets it to a non-integer), it defaults to 0. In `ingest_poll`, `ts` is clamped: `parsed.ts.max(0).min(now.saturating_add(MAX_FUTURE_SKEW_MS))`. A `ts` of 0 passes the `max(0)` check and is used as-is. A message with `ts = 0` would be inserted at position 0 in the conversation (earliest), and `trim_history` would age it out first. This is harmless.
351+
352+But a peer could set `ts` to a very large negative number (e.g., `i64::MIN`), which would be clamped to 0. Same result. Or a peer could set `ts` to a float (e.g., `1.5`), which `as_i64()` returns `None` for, defaulting to 0. All of these are harmless because the clamping handles them.
353+
354+**Verdict:** Not a bug. The clamping in `ingest_poll` handles all edge cases.
355+
356+### 🟡 Q25. JSON parsing of poll response uses `unwrap_or_default()` — malformed JSON silently produces empty page
357+
358+**Type:** Implementation concern (app.rs)
359+**Files:** `core/src/app.rs:1309`
360+
361+`let parsed: PollResp = serde_json::from_slice(&bytes).unwrap_or_default();`
362+
363+If the relay sends malformed JSON (or a valid JSON with wrong types), this silently defaults to an empty `PollResp` (empty events, cursor 0). The cursor of 0 would be adopted (clamped), and the next poll would re-fetch from the beginning — re-receiving all messages the client has already seen. The client's dedup (by `id` for text, by `ts` for acks and profiles) would handle the duplicates, but it wastes bandwidth and CPU.
364+
365+A hostile relay could exploit this by sending malformed JSON instead of a real response, forcing the client to re-poll from cursor 0 repeatedly. But the client would just re-process old messages (all deduped) and eventually get the real cursor from a subsequent response. The impact is wasted bandwidth, not data loss.
366+
367+**Suggested fix:** If JSON parsing fails, don't adopt the cursor and back off instead of treating it as an empty page.
368+
369+### 🟡 Q26. `delivery.ack` ack_ids filtering silently drops non-string entries — count vs. filtered count mismatch
370+
371+**Type:** Implementation concern (protocol.rs)
372+**Files:** `core/src/protocol.rs:116-126`
373+
374+The ack_ids parsing filters non-string entries: `raw.iter().filter_map(|x| x.as_str().map(str::to_string)).collect()`. The raw count check (`raw.len() > MAX_ACK_IDS`) happens before filtering, but the post-filter check (`ack_ids.len() > MAX_ACK_IDS`) also happens. However, between the two checks, a peer could pack an array with `MAX_ACK_IDS` entries, some of which are non-strings (e.g., numbers). The raw check passes (`MAX_ACK_IDS` entries), the filter drops some, and the post-check passes (fewer than `MAX_ACK_IDS` strings). This is correct — the filtered count is what matters.
375+
376+But there's a subtlety: a peer could pack `MAX_ACK_IDS + 1` raw entries, all non-strings. The raw check fails (`MAX_ACK_IDS + 1 > MAX_ACK_IDS`), and the payload is dropped. But if the peer packs `MAX_ACK_IDS` raw entries, all non-strings, the raw check passes, the filter drops all of them, and `ack_ids` is empty. The empty ack is then sent to the sender, who processes it (marking nothing as delivered). This is harmless.
377+
378+**Verdict:** Not a bug. The double-check handles this correctly.
379+
380+---
381+
382+## 5. Federation Protocol Issues
383+
384+### 🟠 Q27. Gossip amplification — single `online` event triggers forward of *all* queued messages for a key
385+
386+**Type:** Design gap (server.knot)
387+**Files:** `server.knot:1522-1556` (`handleRecvGossip`)
388+
389+When a `online` event arrives for a key, `forwardQueuedToServer` sweeps the entire mailbox for messages to that key and stages them for forwarding. An attacker can send a single gossip request with 100 `online` events for 100 different keys, each triggering a full mailbox scan and forward staging. This is O(100 × |messages|) per request.
390+
391+More importantly, the attacker can repeatedly send `online` events for the same key. Each time, `forwardQueuedToServer` checks `notYetForwarded` and `notYetDelivered` to avoid duplicates, so re-sending the same event is a no-op for already-forwarded messages. But if the forward failed (404 from the attacker's own server, which doesn't actually have the key online), the forward entry stays in `*forwards` with `retries: 0`. A re-announce doesn't re-stage it (it's already in `*forwards`), but `retryPendingForwards` will retry it on the next sweep.
392+
393+The amplification is: one gossip request (100 events) → 100 mailbox scans + potentially 100 forward entries. Each forward entry triggers an HTTP POST to the `fromServer`. If the `fromServer` is the attacker, they receive 100 forwarded blobs — each a copy of the victim's ciphertext. This is the same as the documented gossip-redirect attack (#2), but the amplification factor (100 events per request) is not documented.
394+
395+**Exploitable in practice:** Same as finding #2, but with 100× amplification per request. The rate limit (60/min per IP) bounds the rate to 6,000 redirected keys per minute per IP.
396+
397+**Suggested fix:** Document the amplification factor. Consider limiting the number of newly-online keys per gossip batch that trigger forwards.
398+
399+### 🟡 Q28. Federation `offline` events don't trigger cleanup of pending forwards
400+
401+**Type:** Design gap (server.knot)
402+**Files:** `server.knot:1535-1541`
403+
404+When an `offline` event is received, the presence row for that `(pubkey, fromServer)` is removed, but pending forwards to that server are *not* cancelled. The forwards stay in `*forwards` and will be retried by `retryPendingForwards` until they either succeed (unlikely — the key is offline at that server), fail 10 times, or the message TTL expires.
405+
406+If the offline event was legitimate (the key actually went offline at that server), the forwards will waste retry attempts for up to `retryBackoffMax × maxForwardRetries` = 8 min × 10 = 80 minutes. During that time, the forwards occupy slots in `maxForwardsPerServer` and `maxForwardsTotal`.
407+
408+If the offline event was spoofed by an attacker (to clear a presence row), the forwards are still retried — and if the key is actually still online at that server, the forward succeeds on retry (the `no_presence` gate would pass because the key has a local session). But the presence row was removed, so `hasLocalPresence` at the peer would fail... wait, the presence row is on *our* side. The peer's presence is independent. The forward goes to the peer, and the peer checks its own local presence. If the key is still online at the peer, the forward succeeds. If not, it gets 404 and is retried.
409+
410+**Exploitable in practice:** An attacker can send fake `offline` events to clear presence rows, but the forwards continue independently. The impact is minimal — presence rows and forwards are decoupled.
411+
412+**Suggested fix:** When processing an `offline` event, optionally drop pending forwards to that server for the offline key (they'll never succeed if the key is truly offline there). But this could cause message loss if the offline event is spoofed. Better to leave as-is.
413+
414+### 🟡 Q29. `fromServer` in gossip events is not verified against the connecting peer's actual address
415+
416+**Type:** Design gap (server.knot)
417+**Files:** `server.knot:1511-1556` (`handleRecvGossip`)
418+
419+The `fromServer` field is a `ServerName` (validated for format), but it's not verified against the actual IP address of the connecting peer. An attacker can connect from IP `1.2.3.4` and claim `fromServer: "legit-relay.example.com"`. The server writes presence rows with `server: "legit-relay.example.com"` and forwards queued messages there. This is the same as the documented gossip-redirect attack (#2), but with a twist: the attacker can claim to *be* a legitimate relay, poisoning the presence table with the legitimate relay's hostname.
420+
421+When the *real* `legit-relay.example.com` later gossips, its events update the presence rows. But the attacker's rows may still be present (different `expiresAt`), and the server has multiple presence rows for the same key on different servers — which is by design. The attacker's row points to `legit-relay.example.com`, so forwards go to the legitimate relay, which doesn't have the key online — and returns 404. The legitimate relay gets junk forward requests.
422+
423+**Exploitable in practice:** This is a variant of the documented gossip-redirect, but with the attacker impersonating a legitimate relay. The legitimate relay receives spurious forward requests (bounded by `forwardRateLimit`).
424+
425+**Suggested fix:** Verify that the connecting peer's IP resolves to the claimed `fromServer` hostname (reverse DNS + forward DNS). This is the standard check for SMTP-like protocols. Blocked on `fetch` not exposing DNS.
426+
427+---
428+
429+## 6. Rate Limiting / DoS Vectors
430+
431+### 🟠 Q30. `/auth/challenge` has no per-pubkey rate limit beyond `maxChallengesPerKey = 5`
432+
433+**Type:** Design gap (server.knot)
434+**Files:** `server.knot:1166-1188` (`handleChallenge`)
435+
436+The challenge pool is globally capped at `maxChallenges = 10000` and per-key at `maxChallengesPerKey = 5`, with per-IP rate limiting at `authRateLimit = 60/min`. An attacker with many IPs (or behind a proxy with XFF spoofing when `trustForwardedFor = true`) can fill the challenge pool with challenges for random pubkeys. Each challenge is 60 seconds, and the pool LRU-evicts. But 10,000 challenges × 60 seconds means the pool is always full, and legitimate challenges are evicted.
437+
438+The comment says this is handled by LRU eviction: "an abandoned challenge may be dropped before its 60 s window elapses, which costs the affected client one retry." So the attacker can cause clients to retry their challenge/verify flow, adding latency but not blocking authentication.
439+
440+**Exploitable in practice:** With XFF spoofing (finding 8), the attacker gets unlimited rate-limit buckets. 60/min per IP × many IPs = thousands of challenges per minute. The pool (10,000) fills in ~3 minutes. After that, legitimate challenges are evicted, and clients must retry. This is a soft DoS — authentication still works but with extra latency.
441+
442+**Suggested fix:** Add a global rate on challenge creation (not just per-IP). Or cap the challenge creation rate per second regardless of source.
443+
444+### 🟡 Q31. `/messages` batch of 100 × 40 MiB would be rejected by body cap, but the rate limit counts requests not messages
445+
446+**Type:** Design gap (server.knot)
447+**Files:** `server.knot:233-234` (`sendRateLimit`), `server.knot:454` (`sendLimit`)
448+
449+The send rate limit is 60 requests/min per IP. Each request can carry up to 100 messages (bounded by the body cap). So the effective message rate is 60 × (body_cap / avg_blob_size) per minute. With a 42 MiB body cap and 42 KiB blobs, that's ~1000 messages per request × 60 = 60,000 messages/min. With 173-byte minimum blobs, it's ~251,000 messages/min per IP.
450+
451+This is documented in the code comment ("the effective message ceiling is higher"), but it means the per-IP rate limit is much less protective than it appears. An attacker with 10 IPs can send millions of messages per minute.
452+
453+**Exploitable in practice:** Bounded by the body cap (42 MiB) and the rate limit (60/min). The total data rate per IP is ~42 MiB × 60 = 2.5 GiB/min, which is significant.
454+
455+**Suggested fix:** Consider a per-message rate limit in addition to the per-request rate limit. Or reduce `maxBatchSize` for unauthenticated senders (but all senders are "authenticated" — they just have free keypairs).
456+
457+### 🟡 Q32. `maxSessions = 10000` LRU eviction is Sybil-floodable — documented but not in PROTOCOL.md §10
458+
459+**Type:** Design gap (server.knot)
460+**Files:** `server.knot:117-126`
461+
462+The code comment documents this: "global LRU eviction is Sybil-floodable: an attacker with enough IPs can evict live users' sessions." But it's not mentioned in PROTOCOL.md §10 as a DoS vector. An attacker with enough IPs can:
463+1. Generate 10,000 keypairs
464+2. Authenticate each one (60/min per IP, so ~167 IPs needed for one batch)
465+3. Fill the session pool
466+4. Legitimate users' sessions are evicted (they get 401 and must re-authenticate)
467+
468+This is a soft DoS — users re-authenticate automatically. But it adds latency and load.
469+
470+**Suggested fix:** Document in PROTOCOL.md §10. Consider per-IP session caps (rejected in the code comment as "collapses without XFF, punishes carrier-NAT") or a global session creation rate limit.
471+
472+### 🟡 Q33. `maxPresence = 100000` — gossip can fill presence table with fake keys
473+
474+**Type:** Design gap (server.knot)
475+**Files:** `server.knot:139-155`
476+
477+An attacker can send gossip with 100 fake `online` events per request (60/min per IP). Each event adds a presence row. With `maxPresencePerServer = 5000` per peer, a single attacker IP can add 5000 rows. With `maxPresence = 100000` globally, it takes 20 distinct attacker hostnames to fill the pool. Once full, legitimate presence rows are evicted by `capList` (LRU by `expiresAt`).
478+
479+Since gossip rows have `onlineGossipTtl = 90 min` and local rows have `sessionExpiry = 60 min`, local rows are evicted first (they expire sooner). The code handles this by exempting local rows from the cap:
480+
481+```
482+let localRows = filter (\\p -> isLocalServer p.server) merged
483+let remoteRows = filter (\\p -> not isLocalServer p.server) merged
484+*presence = union localRows (capList (capPerServer remoteRows from maxPresencePerServer) maxPresence)
485+```
486+
487+So local rows are always kept, and only remote (gossiped) rows are capped. An attacker can fill the remote pool, but local users' presence is never evicted. The impact is that legitimate *remote* presence (from honest peers) is evicted, causing forwards to those peers to fail.
488+
489+**Exploitable in practice:** Requires federation to be enabled and many distinct attacker hostnames (each passing `isBadServerName`). Bounded by `maxPresencePerServer = 5000` per hostname.
490+
491+**Suggested fix:** Document in PROTOCOL.md §10. Consider a per-request limit on newly-added presence rows (currently capped at `maxGossipEvents = 100` per request, which is already a bound).
492+
493+---
494+
495+## 7. Authentication / Session Management
496+
497+### 🟠 Q34. Session token is not bound to the pubkey — token theft grants full impersonation
498+
499+**Type:** Design gap (server.knot)
500+**Files:** `server.knot:356` (`type Session = {token: Text, pubkey: PubkeyHex, expiresAt: Timestamp, ip: Text}`)
501+
502+The session token is a bearer token — anyone who has it can use it. It's bound to `(pubkey, ip, expiry)`, but the `pubkey` binding is only used for *authorization* (e.g., rejecting self-sends), not for *authenticating the request*. The `authedPubkey` function looks up the token and returns the associated pubkey — it doesn't verify that the requester is the same entity that originally authenticated.
503+
504+If an attacker steals a bearer token (e.g., from a compromised proxy's access log), they can use it from the same IP (or any IP if `trustForwardedFor = false` or IP binding is disabled) to poll the victim's mailbox and send messages as the victim.
505+
506+The IP binding (`matchIp`) is the only thing preventing token replay from a different IP. But:
507+- If `trustForwardedFor = false`, IP binding is disabled (empty IP → wildcard).
508+- If the attacker is behind the same NAT/proxy as the victim, they share the IP.
509+- The token is sent in `Authorization: Bearer ***` over HTTP (TLS in production), so it's only protected by TLS.
510+
511+**Attack scenario:** A compromised proxy logs the `Authorization` header. The attacker uses the token from the same IP (or any IP if XFF is off) to poll the victim's mailbox and read their (encrypted) messages. The attacker can also send messages as the victim.
512+
513+**Exploitable in practice:** Requires token theft (compromised proxy, log exposure, or MITM without TLS). The E2E encryption means the attacker can't read message content, but they can send messages as the victim (the server doesn't verify the sender's identity on `/messages` — it only uses the bearer token's pubkey for self-send rejection).
514+
515+**Suggested fix:** This is inherent to bearer-token auth. The spec should document that a stolen bearer token grants full impersonation (modulo IP binding) until it expires (1 hour). Consider shorter token lifetimes or per-request signing.
516+
517+### 🟡 Q35. `revokeOthers: true` doesn't revoke challenges — stale challenge can be used to create a new session after revocation
518+
519+**Type:** Implementation gap (server.knot)
520+**Files:** `server.knot:1217-1221`
521+
522+When `revokeOthers: true`, the handler drops all other sessions for the pubkey, but it does *not* drop outstanding challenges for the pubkey. A challenge issued before the `revokeOthers` call is still valid for 60 seconds. An attacker who captured a challenge (e.g., by observing the `/auth/challenge` response) can still complete the `/auth/verify` flow and get a new session — after the `revokeOthers` call.
523+
524+But wait — the `/auth/verify` handler also checks the challenge's IP binding (`matchIp clientIp c.ip`). If the attacker is on a different IP, the verify fails. If they're on the same IP (NAT/proxy), it succeeds. And the new session is *not* revoked by the `revokeOthers` call (it was made after the call).
525+
526+**Attack scenario:**
527+1. Alice requests a challenge (IP 1.2.3.4)
528+2. Attacker captures the challenge response (from a compromised proxy)
529+3. Alice calls `/auth/verify` with `revokeOthers: true` (to log out other devices)
530+4. Attacker uses the captured challenge to call `/auth/verify` from IP 1.2.3.4 (same NAT)
531+5. Attacker gets a new session — not revoked by step 3
532+
533+**Exploitable in practice:** Requires the attacker to be on the same IP as the victim and to have captured the challenge. The 60-second challenge expiry limits the window.
534+
535+**Suggested fix:** When `revokeOthers: true`, also drop outstanding challenges for the pubkey.
536+
537+### 🟡 Q36. Challenge IP binding uses `clientIpOf` which reads XFF — same spoofing surface as session IP binding
538+
539+**Type:** Implementation gap (server.knot)
540+**Files:** `server.knot:1180-1188` (`handleChallenge`), `server.knot:781-784` (`clientIpOf`)
541+
542+The challenge's `ip` is set to `clientIpOf xForwardedFor`, which is the last XFF hop when `trustForwardedFor` is true. If the attacker can spoof XFF (finding 8), they can set any IP on the challenge, and then use the same spoofed IP on the verify — bypassing the IP binding entirely.
543+
544+This is the same XFF spoofing issue already documented (finding 8), but it applies to the challenge IP binding as well. The challenge IP binding is supposed to prevent a challenge obtained by a relay from being used by a different client — but with XFF spoofing, this protection is nullified.
545+
546+**Verdict:** Same as finding 8. Not a new issue, but the challenge IP binding is an additional affected surface.
547+
548+### 🟡 Q37. No rate limit on `/auth/verify` failures — unlimited signature verification attempts
549+
550+**Type:** Design gap (server.knot)
551+**Files:** `server.knot:475` (`authLimit = 60/min`)
552+
553+The `/auth/verify` route shares the `authLimit` (60/min per IP) with `/auth/challenge`. An attacker can attempt 60 signature verifications per minute per IP. Each verification is an Ed25519 signature check, which is relatively expensive (~0.1ms). 60/min = ~0.01 CPU-seconds/min — negligible.
554+
555+But the attacker doesn't need to *succeed* at verification to cause work. Each `/auth/verify` call triggers:
556+1. Hex decode of pubkey (32 bytes) and signature (64 bytes)
557+2. Ed25519 signature verification (expensive: ~0.1ms)
558+3. Linear scan of `*challenges` (up to 10,000 entries)
559+
560+The challenge scan only happens if the signature is valid (short-circuit), so a failed signature still costs the Ed25519 verification. With 60/min per IP and many IPs, the attacker can cause non-trivial CPU load.
561+
562+**Exploitable in practice:** Bounded by rate limits. The Ed25519 verification is fast. Not a practical DoS vector.
563+
564+**Suggested fix:** Consider returning 401 immediately if no matching challenge exists (before verifying the signature), to save the expensive verification when the challenge is invalid. Currently the order is: check challenge exists AND signature valid, with `sigValid` pre-computed. If the challenge doesn't exist, the `any` short-circuits and `sigValid` is never used — but `sigValid` was already computed outside the atomic. So the CPU cost is paid regardless. Move the signature verification inside the atomic block, after the challenge existence check, to short-circuit on missing challenges.
565+
566+Wait, actually looking at the code more carefully:
567+
568+```knot
569+let sigValid = case bytesFromHex pubkey of ... -- computed OUTSIDE atomic
570+result <- atomic (do
571+ ...
572+ let valid = any (\\c -> same c && ...) ch && sigValid -- sigValid used here
573+```
574+
575+`sigValid` is pre-computed, so the Ed25519 verification happens on every `/auth/verify` call regardless of whether a matching challenge exists. This is a CPU waste. If the challenge doesn't exist, the `any` returns false and `sigValid` is irrelevant — but the CPU was already spent.
576+
577+**Suggested fix:** Move the signature verification inside the atomic block, after the challenge existence check. Or compute it lazily (only if the challenge exists).
578+
579+### 🟡 Q38. `handleVerifyAuth` logs session eviction count but not the attacker — no audit trail for Sybil floods
580+
581+**Type:** Implementation gap (server.knot)
582+**Files:** `server.knot:1240`
583+
584+The handler logs `logWarn ("session pool full: evicted N session(s)...")` but doesn't log the pubkey or IP of the request that caused the eviction. An operator investigating a Sybil flood would see warnings but not know which pubkeys or IPs are responsible. This makes it hard to block the attacker.
585+
586+**Suggested fix:** Include the requesting pubkey and IP in the log message.
587+
588+---
589+
590+## 8. Spec Gaps
591+
592+### 🟡 Q39. Spec doesn't specify behavior for empty `encryptedBlob`
593+
594+**Type:** Spec gap (PROTOCOL.md §4)
595+**Files:** PROTOCOL.md §4 (Envelope), `server.knot:319-320` (`isValidBlobHex`)
596+
597+The spec says `encryptedBlob` is "Hex-encoded blob from §3" but doesn't say what happens if it's empty or shorter than `minBlobLen`. The server enforces `isValidBlobHex` (min 346 chars = 173 bytes), but the spec doesn't mention this minimum. An independent implementation might accept shorter blobs and store garbage.
598+
599+**Suggested fix:** Add the minimum blob length to PROTOCOL.md §4 or §5.
600+
601+### 🟡 Q40. Spec doesn't specify JSON encoding requirements (UTF-8, key ordering, whitespace)
602+
603+**Type:** Spec gap (PROTOCOL.md §4, §5)
604+**Files:** PROTOCOL.md §4, §5
605+
606+The spec shows JSON examples but doesn't specify:
607+- Whether keys must be in a specific order (the server uses `GossipEvent` with `eventType` and `pubkey` — order matters for some JSON parsers)
608+- Whether whitespace is allowed in the JSON (a client could send pretty-printed JSON)
609+- Whether UTF-8 is required (JSON spec allows UTF-16/UTF-32, but the server likely only handles UTF-8)
610+- Whether duplicate keys are allowed (JSON allows them, but behavior is undefined)
611+
612+These could cause implementation divergence. For example, a client that sends `{"encryptedBlob": "...", "to": "..."}` (keys reversed) would work with most JSON parsers but might confuse a strict implementation.
613+
614+**Suggested fix:** Specify that all JSON is UTF-8, keys are unordered, whitespace is allowed, and duplicate keys are undefined behavior (last one wins).
615+
616+### 🟡 Q41. Spec doesn't specify what `cursor: 0` means vs absent cursor
617+
618+**Type:** Spec gap (PROTOCOL.md §6)
619+**Files:** PROTOCOL.md §6 (`POST /poll`)
620+
621+The spec says `cursor` is "the maximum `receivedAt` value the client has already seen (`0` on first poll)." But what if the client sends `cursor: -1` or omits the field? The server's `handlePoll` clamps to `max 0 (...)`, so negative cursors become 0. But the spec doesn't say this.
622+
623+**Suggested fix:** Specify that cursor must be ≥ 0, and that 0 means "first poll" (no messages acked).
624+
625+### 🟡 Q42. Spec doesn't specify `to` field validation requirements
626+
627+**Type:** Spec gap (PROTOCOL.md §4, §6)
628+**Files:** PROTOCOL.md §4 (Envelope), PROTOCOL.md §6 (`POST /messages`)
629+
630+The spec says `to` is "Recipient's Ed25519 public key (64 lowercase hex)" but doesn't say:
631+- Must it be a valid Ed25519 public key (a valid curve point)?
632+- Is the server required to validate it?
633+- What happens if it's the sender's own key? (The server rejects this as `self_send`, but the spec doesn't say the server should check this — it's an implementation detail)
634+
635+**Suggested fix:** Specify that `to` must be 64 lowercase hex chars (the server validates format only), and that the server rejects self-sends with `400 self_send`.
636+
637+### 🟡 Q43. Spec doesn't specify the format of `challenge` in auth
638+
639+**Type:** Spec gap (PROTOCOL.md §6)
640+**Files:** PROTOCOL.md §6 (Authentication)
641+
642+The spec says the challenge is "a random challenge string" but doesn't specify:
643+- Its length or entropy
644+- Its format (hex? base64? raw text?)
645+- Whether it must be unique per challenge request
646+
647+The server uses `genToken 48` (48 hex chars, 192 bits). The client signs it as part of the auth message. If an independent implementation uses a shorter challenge (e.g., 8 chars), it would be brute-forceable.
648+
649+**Suggested fix:** Specify minimum challenge length (e.g., 32 hex chars / 128 bits) and format (lowercase hex).
650+
651+### ⚪ Q44. Spec doesn't specify `revokeOthers` semantics precisely
652+
653+**Type:** Spec gap (PROTOCOL.md §6)
654+**Files:** PROTOCOL.md §6 (Authentication step 3)
655+
656+The spec says `revokeOthers: true` "invalidates every other live session for this pubkey" but doesn't specify:
657+- Whether it also invalidates challenges (it doesn't — see Q35)
658+- Whether the revocation is immediate or eventual (it's immediate within the atomic block)
659+- What happens to in-flight requests using a revoked session (they get 401 on the next request)
660+
661+**Suggested fix:** Clarify that only sessions (not challenges) are revoked, revocation is immediate, and revoked sessions get 401 on their next request.
662+
663+---
664+
665+## 9. Privacy / Metadata Leaks
666+
667+### 🟠 Q45. Blob size reveals message type to the server
668+
669+**Type:** Privacy leak (protocol + design)
670+**Files:** PROTOCOL.md §3 (Length Padding), `core/src/protocol.rs:60-91`
671+
672+The padding buckets (256, 512, 1024, ...) obscure the exact compressed size, but the bucket boundaries still leak information about the message type:
673+- A `delivery.ack` with a single ID is tiny (~50 bytes JSON) → compresses to ~40 bytes → inner buffer ~233 bytes → blob ~233 + 16 (AEAD) = 249 → rounds to 256 bucket
674+- A `text` message with a short body is ~100 bytes JSON → compresses to ~80 bytes → inner buffer ~273 bytes → blob ~289 → rounds to 512 bucket
675+- A `profile` with a 64 KiB photo → compresses poorly (base64 is high-entropy) → inner buffer ~65 KiB → rounds to 65536 bucket
676+
677+So the server can distinguish:
678+- A `delivery.ack` (256 bucket) from a `text` (512 bucket) from a `profile` with photo (65536 bucket)
679+- A short text (512) from a long text (1024+)
680+
681+This is a metadata leak beyond what's documented. The spec says "message length is only ever obscured *upward*" and "blob size still distinguishes a one-word reply from a pasted document" — but it doesn't mention that blob size reveals the *message type* (text vs ack vs profile).
682+
683+**Attack scenario:** A relay observes that Alice sends Bob a 256-bucket blob → it's a delivery.ack (Alice received Bob's message). Then Alice sends a 65536-bucket blob → it's a profile update. The relay learns the *pattern* of communication (who acks whom, who updates their profile) without decrypting anything.
684+
685+**Exploitable in practice:** The bucket boundaries are coarse but sufficient to distinguish message types. This is a real metadata leak for a "metadata-privacy-focused messenger."
686+
687+**Suggested fix:** Use a single minimum padding bucket (e.g., always pad to at least 1024 bytes) to make all small messages indistinguishable. Or add random padding within the bucket to add noise. Or pad all messages to the same size (expensive but maximally private).
688+
689+### 🟡 Q46. `receivedAt` timing reveals sender-recipient correlation to the relay
690+
691+**Type:** Privacy leak (server.knot)
692+**Files:** `server.knot:919-925` (`appendMessage`)
693+
694+The server assigns `receivedAt` at message arrival time. If Alice sends a message to Bob via relay R, R records the arrival time. If Bob polls R shortly after, R records the poll time. The correlation between arrival and poll times reveals that Bob was online and received the message — even though the server doesn't know who sent it.
695+
696+This is inherent to the relay model (the server must see the recipient and timing), and is documented in §10 ("Recipient metadata exposure"). But the spec understates the leak: it says "servers see the recipient pubkey and arrival time" — it doesn't mention that the server can correlate arrival and poll times to infer delivery.
697+
698+**Suggested fix:** Document in §10 that the relay can infer delivery by correlating message arrival with recipient poll times.
699+
700+### 🟡 Q47. Poll cursor reveals the recipient's last-seen position to the relay
701+
702+**Type:** Privacy leak (server.knot)
703+**Files:** `server.knot:432-433` (cursor), `server.knot:1265-1275` (cursor clamping)
704+
705+The client sends its cursor (last-seen `receivedAt`) on every poll. This tells the relay exactly how far behind the recipient is — how many messages they haven't read yet. A relay can use this to:
706+- Determine if the recipient is actively reading (cursor advances each poll) or just polling (cursor stays the same)
707+- Estimate the recipient's reading speed (how fast the cursor advances)
708+- Detect when the recipient switches devices (cursor jumps backward)
709+
710+This is inherent to the long-poll model but not documented in §10.
711+
712+**Suggested fix:** Document in §10 that the cursor reveals the recipient's reading progress to the relay.
713+
714+---
715+
716+## 10. TOFU and Key Management
717+
718+### 🟠 Q48. No key change detection — TOFU silently accepts key changes without warning
719+
720+**Type:** Design gap (protocol + app.rs)
721+**Files:** PROTOCOL.md §2 (Trust Model), `core/src/app.rs:2043-2045` (sender check)
722+
723+The spec says "the first time a client encounters a public key, it is accepted and cached" and "Warn users when a contact's public key changes (TOFU violation)." But the implementation doesn't have a mechanism for key changes — because the protocol has no key rotation (§11 is future work).
724+
725+However, there's a subtler issue: the sender's identity is *inside* the AEAD ciphertext. If an attacker sends a message to Bob encrypted to Bob's key, signing with Mallory's key, Bob's client will:
726+1. Decrypt the blob (it's encrypted to Bob's key, so it decrypts successfully)
727+2. Recover the sender's pubkey (Mallory's)
728+3. Check if Mallory is in Bob's contacts
729+4. If not, auto-create a contact for Mallory and display the message
730+
731+This is by design (anyone can send you a message). But if the attacker can somehow get Bob to add Mallory's key as a contact (e.g., by social engineering), and then later send messages that appear to come from Mallory, there's no mechanism to detect that "Mallory" has changed keys — because the key IS the identity.
732+
733+The real TOFU weakness is: if Bob adds Alice's key, and Alice's key is later compromised, an attacker with Alice's key can send messages that appear to come from Alice. There's no way for Bob to detect this without out-of-band verification. The spec acknowledges this ("TOFU only" in §10), but the implementation doesn't provide a UI for out-of-band verification (comparing @p syllables).
734+
735+**Exploitable in practice:** This is the fundamental TOFU weakness, already acknowledged in the spec. The implementation gap is the lack of a verification UI, but that's a product feature, not a protocol bug.
736+
737+**Suggested fix:** Add a UI for fingerprint verification (showing @p syllables for comparison) and a warning when a new contact's key hasn't been verified.
738+
739+### 🟡 Q49. `Identity::from_secret_bytes` validates the keypair but doesn't check for weak keys
740+
741+**Type:** Implementation gap (crypto.rs)
742+**Files:** `core/src/crypto.rs:150-166`
743+
744+`from_secret_bytes` re-derives the public key from the seed and checks it matches. But it doesn't check for weak Ed25519 keys (e.g., keys where the X25519 derived key is a low-order point). The `x25519` function checks for all-zero shared secrets (low-order point detection), but this only fires during encryption/decryption, not at key load time.
745+
746+If the user's Ed25519 key happens to produce an X25519 public key that is a low-order point, every encryption to them would fail with `InvalidEphemeralKey` (because `x25519(eph_priv, recip_x)` would return all-zero). The user would be unable to receive messages but wouldn't know why.
747+
748+The probability of this is negligible (low-order points are extremely rare on Curve25519), but the code doesn't check for it at key generation time.
749+
750+**Suggested fix:** Check `x25519_public` is not a low-order point at key generation/load time. Report an error if it is.
751+
752+### 🟡 Q50. No mechanism to revoke or invalidate a compromised identity key
753+
754+**Type:** Design gap (PROTOCOL.md §11)
755+**Files:** PROTOCOL.md §11 (Future Extensions — Key Rotation)
756+
757+The spec acknowledges this in §11 (future work): "a user who loses or wants to retire a key has no in-protocol way to say so." There's no key revocation, no key rotation, and no mechanism to tell contacts that a key is compromised.
758+
759+If a user's key is stolen, the attacker can:
760+1. Decrypt all captured messages (no forward secrecy)
761+2. Send messages as the user (no revocation)
762+3. Poll the user's mailbox (if they know the server)
763+4. Receive messages intended for the user (if they redirect presence)
764+
765+The only defense is out-of-band communication ("my key was compromised, don't talk to the old key anymore"), which requires every contact to manually re-add the new key.
766+
767+**Suggested fix:** This is acknowledged as future work. Document the impact more prominently in §10: a stolen identity key is a full takeover with no in-protocol recovery.
768+
769+---
770+
771+## Summary of New Findings
772+
773+| # | Severity | Type | Title |
774+|---|----------|------|-------|
775+| Q1 | 🟡 medium | Design gap | HKDF salt omits sender identity — KCI vector |
776+| Q2 | 🟡 medium | Design gap | No AAD on AEAD — envelope fields unauthenticated |
777+| Q5 | 🟡 medium | Spec gap | CRIME/BREACH surface wider than documented for profiles |
778+| Q7 | 🟡 medium | Perf/DoS | appendMessage dedup O(n) — CPU amplification |
779+| Q8 | 🟠 high | Design gap | maxMessagesPerRecipient eviction destroys genuine mail |
780+| Q9 | 🟡 medium | Impl bug | capForwards evicts by retry count only, not destination health |
781+| Q10 | 🟡 medium | Impl concern | genToken entropy depends on Knot runtime CSPRNG |
782+| Q11 | 🟡 medium | Impl concern | Challenge lookup O(n) — timing varies with pool size |
783+| Q16 | 🟠 high | Impl concern | Cursor clamping allows relay to poison cursor → message loss |
784+| Q17 | 🟡 medium | Impl concern | Ack staleness check affected by page ordering |
785+| Q18 | 🟡 medium | Impl bug | seen_ids dedup misses trimmed messages → replay after 1000 msgs |
786+| Q23 | 🟡 medium | Impl gap | PubkeyHex accepts non-curve-point keys at route boundary |
787+| Q25 | 🟡 medium | Impl concern | Malformed poll JSON silently produces empty page |
788+| Q27 | 🟠 high | Design gap | Gossip amplification: 100 online events = 100 mailbox scans + forwards |
789+| Q28 | 🟡 medium | Design gap | Offline events don't cancel pending forwards |
790+| Q29 | 🟡 medium | Design gap | fromServer not verified against connecting peer's address |
791+| Q30 | 🟠 high | Design gap | /auth/challenge pool floodable — soft DoS via XFF spoofing |
792+| Q31 | 🟡 medium | Design gap | Rate limit counts requests not messages — effective rate much higher |
793+| Q32 | 🟡 medium | Design gap | maxSessions Sybil-floodable (documented in code, not in spec) |
794+| Q33 | 🟡 medium | Design gap | maxPresence fillable with fake keys (documented in code, not in spec) |
795+| Q34 | 🟠 high | Design gap | Session token not bound to pubkey — theft = full impersonation |
796+| Q35 | 🟡 medium | Impl gap | revokeOthers doesn't revoke challenges |
797+| Q37 | 🟡 medium | Design gap | Signature verification CPU wasted on missing challenges |
798+| Q38 | 🟡 medium | Impl gap | No audit trail (pubkey/IP) for Sybil eviction |
799+| Q39 | 🟡 medium | Spec gap | Spec doesn't specify min blob length |
800+| Q40 | 🟡 medium | Spec gap | Spec doesn't specify JSON encoding requirements |
801+| Q41 | 🟡 medium | Spec gap | Spec doesn't specify cursor validation |
802+| Q42 | 🟡 medium | Spec gap | Spec doesn't specify `to` field validation |
803+| Q43 | 🟡 medium | Spec gap | Spec doesn't specify challenge format/entropy |
804+| Q44 | ⚪ info | Spec gap | Spec doesn't specify revokeOthers semantics precisely |
805+| Q45 | 🟠 high | Privacy leak | Blob size reveals message type (ack vs text vs profile) to relay |
806+| Q46 | 🟡 medium | Privacy leak | receivedAt timing reveals delivery correlation |
807+| Q47 | 🟡 medium | Privacy leak | Poll cursor reveals reading progress to relay |
808+| Q48 | 🟠 high | Design gap | No key change detection — TOFU has no verification UI |
809+| Q49 | 🟡 medium | Impl gap | No weak key check at identity load time |
810+| Q50 | 🟡 medium | Design gap | No identity key revocation mechanism (acknowledged future work) |
811+
812+**High-severity findings (7):** Q8, Q16, Q27, Q30, Q34, Q45, Q48
813+**Medium-severity findings (24):** Q1, Q2, Q5, Q7, Q9, Q10, Q11, Q17, Q18, Q23, Q25, Q28, Q29, Q31, Q32, Q33, Q35, Q37, Q38, Q39, Q40, Q41, Q42, Q43, Q46, Q47, Q49, Q50
814+**Info (1):** Q44
815+
816+Note: Several findings marked as "not a bug" during analysis were downgraded to info or omitted from the final table. The table includes only findings that represent genuine new issues.
CLAUDE.mdnew file+1
@@ -0,0 +1 @@
1+AGENTS.md
Cargo.locknew file+2378
@@ -0,0 +1,2378 @@
1+# This file is automatically @generated by Cargo.
2+# It is not intended for manual editing.
3+version = 4
4+
5+[[package]]
6+name = "aead"
7+version = "0.5.2"
8+source = "registry+https://github.com/rust-lang/crates.io-index"
9+checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0"
10+dependencies = [
11+ "crypto-common",
12+ "generic-array",
13+]
14+
15+[[package]]
16+name = "aho-corasick"
17+version = "1.1.4"
18+source = "registry+https://github.com/rust-lang/crates.io-index"
19+checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301"
20+dependencies = [
21+ "memchr",
22+]
23+
24+[[package]]
25+name = "allocator-api2"
26+version = "0.2.21"
27+source = "registry+https://github.com/rust-lang/crates.io-index"
28+checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923"
29+
30+[[package]]
31+name = "android_system_properties"
32+version = "0.1.5"
33+source = "registry+https://github.com/rust-lang/crates.io-index"
34+checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
35+dependencies = [
36+ "libc",
37+]
38+
39+[[package]]
40+name = "anstream"
41+version = "1.0.0"
42+source = "registry+https://github.com/rust-lang/crates.io-index"
43+checksum = "824a212faf96e9acacdbd09febd34438f8f711fb84e09a8916013cd7815ca28d"
44+dependencies = [
45+ "anstyle",
46+ "anstyle-parse",
47+ "anstyle-query",
48+ "anstyle-wincon",
49+ "colorchoice",
50+ "is_terminal_polyfill",
51+ "utf8parse",
52+]
53+
54+[[package]]
55+name = "anstyle"
56+version = "1.0.14"
57+source = "registry+https://github.com/rust-lang/crates.io-index"
58+checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000"
59+
60+[[package]]
61+name = "anstyle-parse"
62+version = "1.0.0"
63+source = "registry+https://github.com/rust-lang/crates.io-index"
64+checksum = "52ce7f38b242319f7cabaa6813055467063ecdc9d355bbb4ce0c68908cd8130e"
65+dependencies = [
66+ "utf8parse",
67+]
68+
69+[[package]]
70+name = "anstyle-query"
71+version = "1.1.5"
72+source = "registry+https://github.com/rust-lang/crates.io-index"
73+checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc"
74+dependencies = [
75+ "windows-sys",
76+]
77+
78+[[package]]
79+name = "anstyle-wincon"
80+version = "3.0.11"
81+source = "registry+https://github.com/rust-lang/crates.io-index"
82+checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d"
83+dependencies = [
84+ "anstyle",
85+ "once_cell_polyfill",
86+ "windows-sys",
87+]
88+
89+[[package]]
90+name = "anyhow"
91+version = "1.0.102"
92+source = "registry+https://github.com/rust-lang/crates.io-index"
93+checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c"
94+
95+[[package]]
96+name = "async-channel"
97+version = "1.9.0"
98+source = "registry+https://github.com/rust-lang/crates.io-index"
99+checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35"
100+dependencies = [
101+ "concurrent-queue",
102+ "event-listener",
103+ "futures-core",
104+]
105+
106+[[package]]
107+name = "async-trait"
108+version = "0.1.89"
109+source = "registry+https://github.com/rust-lang/crates.io-index"
110+checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb"
111+dependencies = [
112+ "proc-macro2",
113+ "quote",
114+ "syn 2.0.118",
115+]
116+
117+[[package]]
118+name = "autocfg"
119+version = "1.5.1"
120+source = "registry+https://github.com/rust-lang/crates.io-index"
121+checksum = "f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53"
122+
123+[[package]]
124+name = "base64"
125+version = "0.22.1"
126+source = "registry+https://github.com/rust-lang/crates.io-index"
127+checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
128+
129+[[package]]
130+name = "base64ct"
131+version = "1.8.3"
132+source = "registry+https://github.com/rust-lang/crates.io-index"
133+checksum = "2af50177e190e07a26ab74f8b1efbfe2ef87da2116221318cb1c2e82baf7de06"
134+
135+[[package]]
136+name = "bincode"
137+version = "1.3.3"
138+source = "registry+https://github.com/rust-lang/crates.io-index"
139+checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad"
140+dependencies = [
141+ "serde",
142+]
143+
144+[[package]]
145+name = "bitflags"
146+version = "2.13.0"
147+source = "registry+https://github.com/rust-lang/crates.io-index"
148+checksum = "b4388bee8683e3d04af747c73422af53102d2bd24d9eadb6cbc100baef4b43f8"
149+
150+[[package]]
151+name = "block-buffer"
152+version = "0.10.4"
153+source = "registry+https://github.com/rust-lang/crates.io-index"
154+checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
155+dependencies = [
156+ "generic-array",
157+]
158+
159+[[package]]
160+name = "boltffi"
161+version = "0.26.1"
162+source = "registry+https://github.com/rust-lang/crates.io-index"
163+checksum = "0d616d59232b93cbb4200fe03171e2c894d27dbee441c92649500bfe9fe66468"
164+dependencies = [
165+ "boltffi_core",
166+ "boltffi_macros",
167+]
168+
169+[[package]]
170+name = "boltffi_ast"
171+version = "0.26.1"
172+source = "registry+https://github.com/rust-lang/crates.io-index"
173+checksum = "79f01d34d075e93e96374eda34928558b88a5287b532fe0eb508400c802a2abc"
174+dependencies = [
175+ "serde",
176+]
177+
178+[[package]]
179+name = "boltffi_binding"
180+version = "0.26.1"
181+source = "registry+https://github.com/rust-lang/crates.io-index"
182+checksum = "9efa5fe74d4642e9152f52cc99facb0fc52836458c6ba6779b7eae1c33ab4a92"
183+dependencies = [
184+ "boltffi_ast",
185+ "serde",
186+]
187+
188+[[package]]
189+name = "boltffi_core"
190+version = "0.26.1"
191+source = "registry+https://github.com/rust-lang/crates.io-index"
192+checksum = "06964032c9ae4aa7d395c24cb80985d5e63c392cd6ff20f3ca61bb29a9594191"
193+dependencies = [
194+ "boltffi_macros",
195+ "url",
196+ "uuid",
197+]
198+
199+[[package]]
200+name = "boltffi_ffi_rules"
201+version = "0.26.1"
202+source = "registry+https://github.com/rust-lang/crates.io-index"
203+checksum = "070dd06ea89725dc39eb9f96d1ce6fc6822a805d6fec6c7257971f656772abc1"
204+dependencies = [
205+ "serde",
206+ "serde_json",
207+ "syn 2.0.118",
208+ "walkdir",
209+]
210+
211+[[package]]
212+name = "boltffi_macros"
213+version = "0.26.1"
214+source = "registry+https://github.com/rust-lang/crates.io-index"
215+checksum = "92bbe601ce130101d1b6b71ecd6789da4535e94154efcd5df5945090194f74be"
216+dependencies = [
217+ "boltffi_ast",
218+ "boltffi_binding",
219+ "boltffi_ffi_rules",
220+ "proc-macro2",
221+ "quote",
222+ "syn 2.0.118",
223+]
224+
225+[[package]]
226+name = "bumpalo"
227+version = "3.20.3"
228+source = "registry+https://github.com/rust-lang/crates.io-index"
229+checksum = "72f5acc6cb2ba439de613abc23857ec3d78374d8ed5ac84e9d11336e87da8649"
230+
231+[[package]]
232+name = "byteorder"
233+version = "1.5.0"
234+source = "registry+https://github.com/rust-lang/crates.io-index"
235+checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
236+
237+[[package]]
238+name = "cc"
239+version = "1.2.65"
240+source = "registry+https://github.com/rust-lang/crates.io-index"
241+checksum = "e228eec9be7c17ccb640b59b36a5cd805ea2a564a4c5e162c2f659fea30d3b96"
242+dependencies = [
243+ "find-msvc-tools",
244+ "jobserver",
245+ "libc",
246+ "shlex",
247+]
248+
249+[[package]]
250+name = "cfb"
251+version = "0.7.3"
252+source = "registry+https://github.com/rust-lang/crates.io-index"
253+checksum = "d38f2da7a0a2c4ccf0065be06397cc26a81f4e528be095826eee9d4adbb8c60f"
254+dependencies = [
255+ "byteorder",
256+ "fnv",
257+ "uuid",
258+]
259+
260+[[package]]
261+name = "cfg-if"
262+version = "1.0.4"
263+source = "registry+https://github.com/rust-lang/crates.io-index"
264+checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
265+
266+[[package]]
267+name = "chacha20"
268+version = "0.9.1"
269+source = "registry+https://github.com/rust-lang/crates.io-index"
270+checksum = "c3613f74bd2eac03dad61bd53dbe620703d4371614fe0bc3b9f04dd36fe4e818"
271+dependencies = [
272+ "cfg-if",
273+ "cipher",
274+ "cpufeatures",
275+]
276+
277+[[package]]
278+name = "chacha20poly1305"
279+version = "0.10.1"
280+source = "registry+https://github.com/rust-lang/crates.io-index"
281+checksum = "10cd79432192d1c0f4e1a0fef9527696cc039165d729fb41b3f4f4f354c2dc35"
282+dependencies = [
283+ "aead",
284+ "chacha20",
285+ "cipher",
286+ "poly1305",
287+ "zeroize",
288+]
289+
290+[[package]]
291+name = "chrono"
292+version = "0.4.45"
293+source = "registry+https://github.com/rust-lang/crates.io-index"
294+checksum = "1aa79e62e7697b8e29b513a68abacf485adcd1fe8284a4316c5ae868e6633327"
295+dependencies = [
296+ "iana-time-zone",
297+ "num-traits",
298+ "windows-link",
299+]
300+
301+[[package]]
302+name = "cipher"
303+version = "0.4.4"
304+source = "registry+https://github.com/rust-lang/crates.io-index"
305+checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad"
306+dependencies = [
307+ "crypto-common",
308+ "inout",
309+ "zeroize",
310+]
311+
312+[[package]]
313+name = "clap"
314+version = "4.6.1"
315+source = "registry+https://github.com/rust-lang/crates.io-index"
316+checksum = "1ddb117e43bbf7dacf0a4190fef4d345b9bad68dfc649cb349e7d17d28428e51"
317+dependencies = [
318+ "clap_builder",
319+ "clap_derive",
320+]
321+
322+[[package]]
323+name = "clap_builder"
324+version = "4.6.0"
325+source = "registry+https://github.com/rust-lang/crates.io-index"
326+checksum = "714a53001bf66416adb0e2ef5ac857140e7dc3a0c48fb28b2f10762fc4b5069f"
327+dependencies = [
328+ "anstream",
329+ "anstyle",
330+ "clap_lex",
331+ "strsim",
332+]
333+
334+[[package]]
335+name = "clap_derive"
336+version = "4.6.1"
337+source = "registry+https://github.com/rust-lang/crates.io-index"
338+checksum = "f2ce8604710f6733aa641a2b3731eaa1e8b3d9973d5e3565da11800813f997a9"
339+dependencies = [
340+ "heck",
341+ "proc-macro2",
342+ "quote",
343+ "syn 2.0.118",
344+]
345+
346+[[package]]
347+name = "clap_lex"
348+version = "1.1.0"
349+source = "registry+https://github.com/rust-lang/crates.io-index"
350+checksum = "c8d4a3bb8b1e0c1050499d1815f5ab16d04f0959b233085fb31653fbfc9d98f9"
351+
352+[[package]]
353+name = "colorchoice"
354+version = "1.0.5"
355+source = "registry+https://github.com/rust-lang/crates.io-index"
356+checksum = "1d07550c9036bf2ae0c684c4297d503f838287c83c53686d05370d0e139ae570"
357+
358+[[package]]
359+name = "concurrent-queue"
360+version = "2.5.0"
361+source = "registry+https://github.com/rust-lang/crates.io-index"
362+checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973"
363+dependencies = [
364+ "crossbeam-utils",
365+]
366+
367+[[package]]
368+name = "const-fnv1a-hash"
369+version = "1.1.0"
370+source = "registry+https://github.com/rust-lang/crates.io-index"
371+checksum = "32b13ea120a812beba79e34316b3942a857c86ec1593cb34f27bb28272ce2cca"
372+
373+[[package]]
374+name = "const-oid"
375+version = "0.9.6"
376+source = "registry+https://github.com/rust-lang/crates.io-index"
377+checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8"
378+
379+[[package]]
380+name = "core-foundation-sys"
381+version = "0.8.7"
382+source = "registry+https://github.com/rust-lang/crates.io-index"
383+checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
384+
385+[[package]]
386+name = "cpufeatures"
387+version = "0.2.17"
388+source = "registry+https://github.com/rust-lang/crates.io-index"
389+checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280"
390+dependencies = [
391+ "libc",
392+]
393+
394+[[package]]
395+name = "crossbeam-channel"
396+version = "0.5.15"
397+source = "registry+https://github.com/rust-lang/crates.io-index"
398+checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2"
399+dependencies = [
400+ "crossbeam-utils",
401+]
402+
403+[[package]]
404+name = "crossbeam-utils"
405+version = "0.8.21"
406+source = "registry+https://github.com/rust-lang/crates.io-index"
407+checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28"
408+
409+[[package]]
410+name = "crux_core"
411+version = "0.19.0"
412+source = "registry+https://github.com/rust-lang/crates.io-index"
413+checksum = "159720bb44c1a09e0089459217c8ea6c71a78d868c5bf55d5b41f8781e92af7a"
414+dependencies = [
415+ "anyhow",
416+ "bincode",
417+ "crossbeam-channel",
418+ "crux_macros",
419+ "facet 0.44.5",
420+ "facet_generate",
421+ "futures",
422+ "log",
423+ "serde",
424+ "serde_json",
425+ "slab",
426+ "thiserror",
427+]
428+
429+[[package]]
430+name = "crux_http"
431+version = "0.18.0"
432+source = "registry+https://github.com/rust-lang/crates.io-index"
433+checksum = "ef762ab0e77caf6f0fc22ec06491e83967039fe88f3916ec3c8f83b3c52f7e73"
434+dependencies = [
435+ "anyhow",
436+ "async-trait",
437+ "crux_core",
438+ "derive_builder",
439+ "encoding_rs",
440+ "facet 0.44.5",
441+ "facet-generate-attrs",
442+ "futures-util",
443+ "http-types-red-badger-temporary-fork",
444+ "pin-project-lite",
445+ "serde",
446+ "serde_bytes",
447+ "serde_json",
448+ "serde_qs 1.1.2",
449+ "thiserror",
450+ "url",
451+ "web-sys",
452+]
453+
454+[[package]]
455+name = "crux_kv"
456+version = "0.13.0"
457+source = "registry+https://github.com/rust-lang/crates.io-index"
458+checksum = "9ab7d27f05bfbd679c18c5c45a5c15619adf21cf9895a0436728fd3e6a88d783"
459+dependencies = [
460+ "anyhow",
461+ "crux_core",
462+ "facet 0.44.5",
463+ "serde",
464+ "serde_bytes",
465+ "thiserror",
466+]
467+
468+[[package]]
469+name = "crux_macros"
470+version = "0.10.0"
471+source = "registry+https://github.com/rust-lang/crates.io-index"
472+checksum = "952c0b238735c79e917b908c140c7c5f6f6921924ebee21171203fe5fb5fc3f3"
473+dependencies = [
474+ "darling 0.23.0",
475+ "heck",
476+ "proc-macro-error",
477+ "proc-macro2",
478+ "quote",
479+ "syn 2.0.118",
480+]
481+
482+[[package]]
483+name = "crux_time"
484+version = "0.17.0"
485+source = "registry+https://github.com/rust-lang/crates.io-index"
486+checksum = "a2dda3b405568dc1e0fc7a46cc913e6324e918c66fd7cd19d64cc28759d71a58"
487+dependencies = [
488+ "crux_core",
489+ "facet 0.44.5",
490+ "futures",
491+ "serde",
492+ "thiserror",
493+]
494+
495+[[package]]
496+name = "crypto-common"
497+version = "0.1.7"
498+source = "registry+https://github.com/rust-lang/crates.io-index"
499+checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a"
500+dependencies = [
501+ "generic-array",
502+ "rand_core 0.6.4",
503+ "typenum",
504+]
505+
506+[[package]]
507+name = "curve25519-dalek"
508+version = "4.1.3"
509+source = "registry+https://github.com/rust-lang/crates.io-index"
510+checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be"
511+dependencies = [
512+ "cfg-if",
513+ "cpufeatures",
514+ "curve25519-dalek-derive",
515+ "digest",
516+ "fiat-crypto",
517+ "rustc_version",
518+ "subtle",
519+ "zeroize",
520+]
521+
522+[[package]]
523+name = "curve25519-dalek-derive"
524+version = "0.1.1"
525+source = "registry+https://github.com/rust-lang/crates.io-index"
526+checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3"
527+dependencies = [
528+ "proc-macro2",
529+ "quote",
530+ "syn 2.0.118",
531+]
532+
533+[[package]]
534+name = "darling"
535+version = "0.20.11"
536+source = "registry+https://github.com/rust-lang/crates.io-index"
537+checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee"
538+dependencies = [
539+ "darling_core 0.20.11",
540+ "darling_macro 0.20.11",
541+]
542+
543+[[package]]
544+name = "darling"
545+version = "0.23.0"
546+source = "registry+https://github.com/rust-lang/crates.io-index"
547+checksum = "25ae13da2f202d56bd7f91c25fba009e7717a1e4a1cc98a76d844b65ae912e9d"
548+dependencies = [
549+ "darling_core 0.23.0",
550+ "darling_macro 0.23.0",
551+]
552+
553+[[package]]
554+name = "darling_core"
555+version = "0.20.11"
556+source = "registry+https://github.com/rust-lang/crates.io-index"
557+checksum = "0d00b9596d185e565c2207a0b01f8bd1a135483d02d9b7b0a54b11da8d53412e"
558+dependencies = [
559+ "fnv",
560+ "ident_case",
561+ "proc-macro2",
562+ "quote",
563+ "strsim",
564+ "syn 2.0.118",
565+]
566+
567+[[package]]
568+name = "darling_core"
569+version = "0.23.0"
570+source = "registry+https://github.com/rust-lang/crates.io-index"
571+checksum = "9865a50f7c335f53564bb694ef660825eb8610e0a53d3e11bf1b0d3df31e03b0"
572+dependencies = [
573+ "ident_case",
574+ "proc-macro2",
575+ "quote",
576+ "strsim",
577+ "syn 2.0.118",
578+]
579+
580+[[package]]
581+name = "darling_macro"
582+version = "0.20.11"
583+source = "registry+https://github.com/rust-lang/crates.io-index"
584+checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead"
585+dependencies = [
586+ "darling_core 0.20.11",
587+ "quote",
588+ "syn 2.0.118",
589+]
590+
591+[[package]]
592+name = "darling_macro"
593+version = "0.23.0"
594+source = "registry+https://github.com/rust-lang/crates.io-index"
595+checksum = "ac3984ec7bd6cfa798e62b4a642426a5be0e68f9401cfc2a01e3fa9ea2fcdb8d"
596+dependencies = [
597+ "darling_core 0.23.0",
598+ "quote",
599+ "syn 2.0.118",
600+]
601+
602+[[package]]
603+name = "der"
604+version = "0.7.10"
605+source = "registry+https://github.com/rust-lang/crates.io-index"
606+checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb"
607+dependencies = [
608+ "const-oid",
609+ "zeroize",
610+]
611+
612+[[package]]
613+name = "derive_builder"
614+version = "0.20.2"
615+source = "registry+https://github.com/rust-lang/crates.io-index"
616+checksum = "507dfb09ea8b7fa618fcf76e953f4f5e192547945816d5358edffe39f6f94947"
617+dependencies = [
618+ "derive_builder_macro",
619+]
620+
621+[[package]]
622+name = "derive_builder_core"
623+version = "0.20.2"
624+source = "registry+https://github.com/rust-lang/crates.io-index"
625+checksum = "2d5bcf7b024d6835cfb3d473887cd966994907effbe9227e8c8219824d06c4e8"
626+dependencies = [
627+ "darling 0.20.11",
628+ "proc-macro2",
629+ "quote",
630+ "syn 2.0.118",
631+]
632+
633+[[package]]
634+name = "derive_builder_macro"
635+version = "0.20.2"
636+source = "registry+https://github.com/rust-lang/crates.io-index"
637+checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c"
638+dependencies = [
639+ "derive_builder_core",
640+ "syn 2.0.118",
641+]
642+
643+[[package]]
644+name = "digest"
645+version = "0.10.7"
646+source = "registry+https://github.com/rust-lang/crates.io-index"
647+checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
648+dependencies = [
649+ "block-buffer",
650+ "crypto-common",
651+ "subtle",
652+]
653+
654+[[package]]
655+name = "displaydoc"
656+version = "0.2.6"
657+source = "registry+https://github.com/rust-lang/crates.io-index"
658+checksum = "1ac70aa55017e108007fbaf5aa0f54b021c98f92ff8af59d42eda9da96e3dd4f"
659+dependencies = [
660+ "proc-macro2",
661+ "quote",
662+ "syn 2.0.118",
663+]
664+
665+[[package]]
666+name = "ed25519"
667+version = "2.2.3"
668+source = "registry+https://github.com/rust-lang/crates.io-index"
669+checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53"
670+dependencies = [
671+ "pkcs8",
672+ "signature",
673+]
674+
675+[[package]]
676+name = "ed25519-dalek"
677+version = "2.2.0"
678+source = "registry+https://github.com/rust-lang/crates.io-index"
679+checksum = "70e796c081cee67dc755e1a36a0a172b897fab85fc3f6bc48307991f64e4eca9"
680+dependencies = [
681+ "curve25519-dalek",
682+ "ed25519",
683+ "rand_core 0.6.4",
684+ "serde",
685+ "sha2",
686+ "subtle",
687+ "zeroize",
688+]
689+
690+[[package]]
691+name = "encoding_rs"
692+version = "0.8.35"
693+source = "registry+https://github.com/rust-lang/crates.io-index"
694+checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3"
695+dependencies = [
696+ "cfg-if",
697+]
698+
699+[[package]]
700+name = "env_logger"
701+version = "0.10.2"
702+source = "registry+https://github.com/rust-lang/crates.io-index"
703+checksum = "4cd405aab171cb85d6735e5c8d9db038c17d3ca007a4d2c25f337935c3d90580"
704+dependencies = [
705+ "humantime",
706+ "is-terminal",
707+ "log",
708+ "regex",
709+ "termcolor",
710+]
711+
712+[[package]]
713+name = "equivalent"
714+version = "1.0.2"
715+source = "registry+https://github.com/rust-lang/crates.io-index"
716+checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f"
717+
718+[[package]]
719+name = "event-listener"
720+version = "2.5.3"
721+source = "registry+https://github.com/rust-lang/crates.io-index"
722+checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
723+
724+[[package]]
725+name = "facet"
726+version = "0.31.8"
727+source = "registry+https://github.com/rust-lang/crates.io-index"
728+checksum = "4d643309d7c46d073b6c51e29901ed9bc3d858dc09aa21f5b32b424491e1bbef"
729+dependencies = [
730+ "facet-core 0.31.8",
731+ "facet-macros 0.31.8",
732+ "static_assertions",
733+]
734+
735+[[package]]
736+name = "facet"
737+version = "0.44.5"
738+source = "registry+https://github.com/rust-lang/crates.io-index"
739+checksum = "c78066af2cc259674a54fef24323f6081ae54a5f3a3fb53b995af7a867041c81"
740+dependencies = [
741+ "autocfg",
742+ "facet-core 0.44.4",
743+ "facet-macros 0.44.4",
744+]
745+
746+[[package]]
747+name = "facet-core"
748+version = "0.31.8"
749+source = "registry+https://github.com/rust-lang/crates.io-index"
750+checksum = "ac27076d75388bffb6c5e5118078dcbb46f2090b35256c45372ff1c1910b1aaf"
751+dependencies = [
752+ "bitflags",
753+ "impls",
754+]
755+
756+[[package]]
757+name = "facet-core"
758+version = "0.44.4"
759+source = "registry+https://github.com/rust-lang/crates.io-index"
760+checksum = "04625a816bc27bb757b5f62ec17a228b90c08631f579ee0b36eccd6c426df207"
761+dependencies = [
762+ "autocfg",
763+ "chrono",
764+ "const-fnv1a-hash",
765+ "iddqd",
766+ "impls",
767+]
768+
769+[[package]]
770+name = "facet-generate-attrs"
771+version = "0.17.0"
772+source = "registry+https://github.com/rust-lang/crates.io-index"
773+checksum = "3b430b495d59ffcf07dabe103a796d8d3ba809d12bb25a5960b605883835b3de"
774+dependencies = [
775+ "facet 0.44.5",
776+]
777+
778+[[package]]
779+name = "facet-macro-parse"
780+version = "0.44.4"
781+source = "registry+https://github.com/rust-lang/crates.io-index"
782+checksum = "a288cd230608b4d7e89b307f85be2029f265e27dcdc565a2ae5358d0c4e53f57"
783+dependencies = [
784+ "facet-macro-types",
785+ "proc-macro2",
786+ "quote",
787+]
788+
789+[[package]]
790+name = "facet-macro-types"
791+version = "0.44.4"
792+source = "registry+https://github.com/rust-lang/crates.io-index"
793+checksum = "9c805b7f1ad4bba14e1dba5c67ef810bf9eef2373364fe3916af1d08a5411296"
794+dependencies = [
795+ "proc-macro2",
796+ "quote",
797+ "unsynn",
798+]
799+
800+[[package]]
801+name = "facet-macros"
802+version = "0.31.8"
803+source = "registry+https://github.com/rust-lang/crates.io-index"
804+checksum = "391fcf43b68a76ba4a494710629a7b6fb430345a5623a6a87f7c263bfadb1643"
805+dependencies = [
806+ "facet-core 0.31.8",
807+ "facet-macros-emit",
808+]
809+
810+[[package]]
811+name = "facet-macros"
812+version = "0.44.4"
813+source = "registry+https://github.com/rust-lang/crates.io-index"
814+checksum = "e0cc46a94a2725e82f2c0095bac16665057c24d7f4f11169a7a879dbcba81d8f"
815+dependencies = [
816+ "facet-macros-impl",
817+]
818+
819+[[package]]
820+name = "facet-macros-emit"
821+version = "0.31.8"
822+source = "registry+https://github.com/rust-lang/crates.io-index"
823+checksum = "e81e536ccafa7d5ef71822c9a67a28a0b29fe0170eaf2d134c36854a3d56ee9a"
824+dependencies = [
825+ "facet-macros-parse",
826+ "quote",
827+]
828+
829+[[package]]
830+name = "facet-macros-impl"
831+version = "0.44.4"
832+source = "registry+https://github.com/rust-lang/crates.io-index"
833+checksum = "1af13fd5dfa728cc48418cf33cbcfc0d5cfdbaaf22a3d0f5229da4b1e5669fa5"
834+dependencies = [
835+ "facet-macro-parse",
836+ "facet-macro-types",
837+ "proc-macro2",
838+ "quote",
839+ "strsim",
840+ "unsynn",
841+]
842+
843+[[package]]
844+name = "facet-macros-parse"
845+version = "0.31.8"
846+source = "registry+https://github.com/rust-lang/crates.io-index"
847+checksum = "8da5d4ded1874033bdef5000712d80d28feefe2abb48bb6f31b6fe59b7e9792f"
848+dependencies = [
849+ "proc-macro2",
850+ "quote",
851+ "unsynn",
852+]
853+
854+[[package]]
855+name = "facet_generate"
856+version = "0.17.1"
857+source = "registry+https://github.com/rust-lang/crates.io-index"
858+checksum = "831d4a105b7e0abce52910f544ffa2698064b1d4864d381672137f804548a45a"
859+dependencies = [
860+ "derive_builder",
861+ "facet 0.44.5",
862+ "facet-generate-attrs",
863+ "heck",
864+ "include_dir",
865+ "indent",
866+ "indoc",
867+ "regex",
868+ "serde",
869+ "serde_json",
870+ "textwrap",
871+ "thiserror",
872+]
873+
874+[[package]]
875+name = "fastrand"
876+version = "2.4.1"
877+source = "registry+https://github.com/rust-lang/crates.io-index"
878+checksum = "9f1f227452a390804cdb637b74a86990f2a7d7ba4b7d5693aac9b4dd6defd8d6"
879+
880+[[package]]
881+name = "fiat-crypto"
882+version = "0.2.9"
883+source = "registry+https://github.com/rust-lang/crates.io-index"
884+checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d"
885+
886+[[package]]
887+name = "find-msvc-tools"
888+version = "0.1.9"
889+source = "registry+https://github.com/rust-lang/crates.io-index"
890+checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582"
891+
892+[[package]]
893+name = "fnv"
894+version = "1.0.7"
895+source = "registry+https://github.com/rust-lang/crates.io-index"
896+checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
897+
898+[[package]]
899+name = "foldhash"
900+version = "0.2.0"
901+source = "registry+https://github.com/rust-lang/crates.io-index"
902+checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb"
903+
904+[[package]]
905+name = "form_urlencoded"
906+version = "1.2.2"
907+source = "registry+https://github.com/rust-lang/crates.io-index"
908+checksum = "cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf"
909+dependencies = [
910+ "percent-encoding",
911+]
912+
913+[[package]]
914+name = "futures"
915+version = "0.3.32"
916+source = "registry+https://github.com/rust-lang/crates.io-index"
917+checksum = "8b147ee9d1f6d097cef9ce628cd2ee62288d963e16fb287bd9286455b241382d"
918+dependencies = [
919+ "futures-channel",
920+ "futures-core",
921+ "futures-executor",
922+ "futures-io",
923+ "futures-sink",
924+ "futures-task",
925+ "futures-util",
926+]
927+
928+[[package]]
929+name = "futures-channel"
930+version = "0.3.32"
931+source = "registry+https://github.com/rust-lang/crates.io-index"
932+checksum = "07bbe89c50d7a535e539b8c17bc0b49bdb77747034daa8087407d655f3f7cc1d"
933+dependencies = [
934+ "futures-core",
935+ "futures-sink",
936+]
937+
938+[[package]]
939+name = "futures-core"
940+version = "0.3.32"
941+source = "registry+https://github.com/rust-lang/crates.io-index"
942+checksum = "7e3450815272ef58cec6d564423f6e755e25379b217b0bc688e295ba24df6b1d"
943+
944+[[package]]
945+name = "futures-executor"
946+version = "0.3.32"
947+source = "registry+https://github.com/rust-lang/crates.io-index"
948+checksum = "baf29c38818342a3b26b5b923639e7b1f4a61fc5e76102d4b1981c6dc7a7579d"
949+dependencies = [
950+ "futures-core",
951+ "futures-task",
952+ "futures-util",
953+]
954+
955+[[package]]
956+name = "futures-io"
957+version = "0.3.32"
958+source = "registry+https://github.com/rust-lang/crates.io-index"
959+checksum = "cecba35d7ad927e23624b22ad55235f2239cfa44fd10428eecbeba6d6a717718"
960+
961+[[package]]
962+name = "futures-lite"
963+version = "2.6.1"
964+source = "registry+https://github.com/rust-lang/crates.io-index"
965+checksum = "f78e10609fe0e0b3f4157ffab1876319b5b0db102a2c60dc4626306dc46b44ad"
966+dependencies = [
967+ "fastrand",
968+ "futures-core",
969+ "futures-io",
970+ "parking",
971+ "pin-project-lite",
972+]
973+
974+[[package]]
975+name = "futures-macro"
976+version = "0.3.32"
977+source = "registry+https://github.com/rust-lang/crates.io-index"
978+checksum = "e835b70203e41293343137df5c0664546da5745f82ec9b84d40be8336958447b"
979+dependencies = [
980+ "proc-macro2",
981+ "quote",
982+ "syn 2.0.118",
983+]
984+
985+[[package]]
986+name = "futures-sink"
987+version = "0.3.32"
988+source = "registry+https://github.com/rust-lang/crates.io-index"
989+checksum = "c39754e157331b013978ec91992bde1ac089843443c49cbc7f46150b0fad0893"
990+
991+[[package]]
992+name = "futures-task"
993+version = "0.3.32"
994+source = "registry+https://github.com/rust-lang/crates.io-index"
995+checksum = "037711b3d59c33004d3856fbdc83b99d4ff37a24768fa1be9ce3538a1cde4393"
996+
997+[[package]]
998+name = "futures-util"
999+version = "0.3.32"
1000+source = "registry+https://github.com/rust-lang/crates.io-index"
1001+checksum = "389ca41296e6190b48053de0321d02a77f32f8a5d2461dd38762c0593805c6d6"
1002+dependencies = [
1003+ "futures-channel",
1004+ "futures-core",
1005+ "futures-io",
1006+ "futures-macro",
1007+ "futures-sink",
1008+ "futures-task",
1009+ "memchr",
1010+ "pin-project-lite",
1011+ "slab",
1012+]
1013+
1014+[[package]]
1015+name = "generic-array"
1016+version = "0.14.7"
1017+source = "registry+https://github.com/rust-lang/crates.io-index"
1018+checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
1019+dependencies = [
1020+ "typenum",
1021+ "version_check",
1022+]
1023+
1024+[[package]]
1025+name = "getrandom"
1026+version = "0.2.17"
1027+source = "registry+https://github.com/rust-lang/crates.io-index"
1028+checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0"
1029+dependencies = [
1030+ "cfg-if",
1031+ "libc",
1032+ "wasi",
1033+]
1034+
1035+[[package]]
1036+name = "getrandom"
1037+version = "0.3.4"
1038+source = "registry+https://github.com/rust-lang/crates.io-index"
1039+checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd"
1040+dependencies = [
1041+ "cfg-if",
1042+ "libc",
1043+ "r-efi 5.3.0",
1044+ "wasip2",
1045+]
1046+
1047+[[package]]
1048+name = "getrandom"
1049+version = "0.4.3"
1050+source = "registry+https://github.com/rust-lang/crates.io-index"
1051+checksum = "300e883d756b2e4ec94e02791f39b04b522276138852cfc41d9fb7e904106099"
1052+dependencies = [
1053+ "cfg-if",
1054+ "libc",
1055+ "r-efi 6.0.0",
1056+]
1057+
1058+[[package]]
1059+name = "hashbrown"
1060+version = "0.16.1"
1061+source = "registry+https://github.com/rust-lang/crates.io-index"
1062+checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100"
1063+dependencies = [
1064+ "allocator-api2",
1065+]
1066+
1067+[[package]]
1068+name = "heck"
1069+version = "0.5.0"
1070+source = "registry+https://github.com/rust-lang/crates.io-index"
1071+checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
1072+
1073+[[package]]
1074+name = "hermit-abi"
1075+version = "0.5.2"
1076+source = "registry+https://github.com/rust-lang/crates.io-index"
1077+checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c"
1078+
1079+[[package]]
1080+name = "hex"
1081+version = "0.4.3"
1082+source = "registry+https://github.com/rust-lang/crates.io-index"
1083+checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
1084+
1085+[[package]]
1086+name = "hkdf"
1087+version = "0.12.4"
1088+source = "registry+https://github.com/rust-lang/crates.io-index"
1089+checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7"
1090+dependencies = [
1091+ "hmac",
1092+]
1093+
1094+[[package]]
1095+name = "hmac"
1096+version = "0.12.1"
1097+source = "registry+https://github.com/rust-lang/crates.io-index"
1098+checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e"
1099+dependencies = [
1100+ "digest",
1101+]
1102+
1103+[[package]]
1104+name = "http-types-red-badger-temporary-fork"
1105+version = "6.0.0"
1106+source = "registry+https://github.com/rust-lang/crates.io-index"
1107+checksum = "3042c4259fc659f9fa8aea1d71c4ae4201c58a0adddd3406910aed0870c68382"
1108+dependencies = [
1109+ "anyhow",
1110+ "async-channel",
1111+ "base64",
1112+ "facet 0.31.8",
1113+ "futures-lite",
1114+ "infer",
1115+ "pin-project-lite",
1116+ "rand",
1117+ "serde",
1118+ "serde_json",
1119+ "serde_qs 0.15.0",
1120+ "serde_urlencoded",
1121+ "url",
1122+]
1123+
1124+[[package]]
1125+name = "humantime"
1126+version = "2.3.0"
1127+source = "registry+https://github.com/rust-lang/crates.io-index"
1128+checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424"
1129+
1130+[[package]]
1131+name = "iana-time-zone"
1132+version = "0.1.65"
1133+source = "registry+https://github.com/rust-lang/crates.io-index"
1134+checksum = "e31bc9ad994ba00e440a8aa5c9ef0ec67d5cb5e5cb0cc7f8b744a35b389cc470"
1135+dependencies = [
1136+ "android_system_properties",
1137+ "core-foundation-sys",
1138+ "iana-time-zone-haiku",
1139+ "js-sys",
1140+ "log",
1141+ "wasm-bindgen",
1142+ "windows-core",
1143+]
1144+
1145+[[package]]
1146+name = "iana-time-zone-haiku"
1147+version = "0.1.2"
1148+source = "registry+https://github.com/rust-lang/crates.io-index"
1149+checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f"
1150+dependencies = [
1151+ "cc",
1152+]
1153+
1154+[[package]]
1155+name = "icu_collections"
1156+version = "2.2.0"
1157+source = "registry+https://github.com/rust-lang/crates.io-index"
1158+checksum = "2984d1cd16c883d7935b9e07e44071dca8d917fd52ecc02c04d5fa0b5a3f191c"
1159+dependencies = [
1160+ "displaydoc",
1161+ "potential_utf",
1162+ "utf8_iter",
1163+ "yoke",
1164+ "zerofrom",
1165+ "zerovec",
1166+]
1167+
1168+[[package]]
1169+name = "icu_locale_core"
1170+version = "2.2.0"
1171+source = "registry+https://github.com/rust-lang/crates.io-index"
1172+checksum = "92219b62b3e2b4d88ac5119f8904c10f8f61bf7e95b640d25ba3075e6cac2c29"
1173+dependencies = [
1174+ "displaydoc",
1175+ "litemap",
1176+ "tinystr",
1177+ "writeable",
1178+ "zerovec",
1179+]
1180+
1181+[[package]]
1182+name = "icu_normalizer"
1183+version = "2.2.0"
1184+source = "registry+https://github.com/rust-lang/crates.io-index"
1185+checksum = "c56e5ee99d6e3d33bd91c5d85458b6005a22140021cc324cea84dd0e72cff3b4"
1186+dependencies = [
1187+ "icu_collections",
1188+ "icu_normalizer_data",
1189+ "icu_properties",
1190+ "icu_provider",
1191+ "smallvec",
1192+ "zerovec",
1193+]
1194+
1195+[[package]]
1196+name = "icu_normalizer_data"
1197+version = "2.2.0"
1198+source = "registry+https://github.com/rust-lang/crates.io-index"
1199+checksum = "da3be0ae77ea334f4da67c12f149704f19f81d1adf7c51cf482943e84a2bad38"
1200+
1201+[[package]]
1202+name = "icu_properties"
1203+version = "2.2.0"
1204+source = "registry+https://github.com/rust-lang/crates.io-index"
1205+checksum = "bee3b67d0ea5c2cca5003417989af8996f8604e34fb9ddf96208a033901e70de"
1206+dependencies = [
1207+ "icu_collections",
1208+ "icu_locale_core",
1209+ "icu_properties_data",
1210+ "icu_provider",
1211+ "zerotrie",
1212+ "zerovec",
1213+]
1214+
1215+[[package]]
1216+name = "icu_properties_data"
1217+version = "2.2.0"
1218+source = "registry+https://github.com/rust-lang/crates.io-index"
1219+checksum = "8e2bbb201e0c04f7b4b3e14382af113e17ba4f63e2c9d2ee626b720cbce54a14"
1220+
1221+[[package]]
1222+name = "icu_provider"
1223+version = "2.2.0"
1224+source = "registry+https://github.com/rust-lang/crates.io-index"
1225+checksum = "139c4cf31c8b5f33d7e199446eff9c1e02decfc2f0eec2c8d71f65befa45b421"
1226+dependencies = [
1227+ "displaydoc",
1228+ "icu_locale_core",
1229+ "writeable",
1230+ "yoke",
1231+ "zerofrom",
1232+ "zerotrie",
1233+ "zerovec",
1234+]
1235+
1236+[[package]]
1237+name = "iddqd"
1238+version = "0.3.18"
1239+source = "registry+https://github.com/rust-lang/crates.io-index"
1240+checksum = "616230c7d641ef971a3a5bfcc654c6b7524ab9c9fb665693c6a397dba9a14aca"
1241+dependencies = [
1242+ "allocator-api2",
1243+ "equivalent",
1244+ "foldhash",
1245+ "hashbrown",
1246+ "rustc-hash",
1247+]
1248+
1249+[[package]]
1250+name = "ident_case"
1251+version = "1.0.1"
1252+source = "registry+https://github.com/rust-lang/crates.io-index"
1253+checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
1254+
1255+[[package]]
1256+name = "idna"
1257+version = "1.1.0"
1258+source = "registry+https://github.com/rust-lang/crates.io-index"
1259+checksum = "3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de"
1260+dependencies = [
1261+ "idna_adapter",
1262+ "smallvec",
1263+ "utf8_iter",
1264+]
1265+
1266+[[package]]
1267+name = "idna_adapter"
1268+version = "1.2.2"
1269+source = "registry+https://github.com/rust-lang/crates.io-index"
1270+checksum = "cb68373c0d6620ef8105e855e7745e18b0d00d3bdb07fb532e434244cdb9a714"
1271+dependencies = [
1272+ "icu_normalizer",
1273+ "icu_properties",
1274+]
1275+
1276+[[package]]
1277+name = "impls"
1278+version = "1.0.3"
1279+source = "registry+https://github.com/rust-lang/crates.io-index"
1280+checksum = "7a46645bbd70538861a90d0f26c31537cdf1e44aae99a794fb75a664b70951bc"
1281+
1282+[[package]]
1283+name = "include_dir"
1284+version = "0.7.4"
1285+source = "registry+https://github.com/rust-lang/crates.io-index"
1286+checksum = "923d117408f1e49d914f1a379a309cffe4f18c05cf4e3d12e613a15fc81bd0dd"
1287+dependencies = [
1288+ "include_dir_macros",
1289+]
1290+
1291+[[package]]
1292+name = "include_dir_macros"
1293+version = "0.7.4"
1294+source = "registry+https://github.com/rust-lang/crates.io-index"
1295+checksum = "7cab85a7ed0bd5f0e76d93846e0147172bed2e2d3f859bcc33a8d9699cad1a75"
1296+dependencies = [
1297+ "proc-macro2",
1298+ "quote",
1299+]
1300+
1301+[[package]]
1302+name = "indent"
1303+version = "0.1.1"
1304+source = "registry+https://github.com/rust-lang/crates.io-index"
1305+checksum = "d9f1a0777d972970f204fdf8ef319f1f4f8459131636d7e3c96c5d59570d0fa6"
1306+
1307+[[package]]
1308+name = "indoc"
1309+version = "2.0.7"
1310+source = "registry+https://github.com/rust-lang/crates.io-index"
1311+checksum = "79cf5c93f93228cf8efb3ba362535fb11199ac548a09ce117c9b1adc3030d706"
1312+dependencies = [
1313+ "rustversion",
1314+]
1315+
1316+[[package]]
1317+name = "infer"
1318+version = "0.19.0"
1319+source = "registry+https://github.com/rust-lang/crates.io-index"
1320+checksum = "a588916bfdfd92e71cacef98a63d9b1f0d74d6599980d11894290e7ddefffcf7"
1321+dependencies = [
1322+ "cfb",
1323+]
1324+
1325+[[package]]
1326+name = "inout"
1327+version = "0.1.4"
1328+source = "registry+https://github.com/rust-lang/crates.io-index"
1329+checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01"
1330+dependencies = [
1331+ "generic-array",
1332+]
1333+
1334+[[package]]
1335+name = "is-terminal"
1336+version = "0.4.17"
1337+source = "registry+https://github.com/rust-lang/crates.io-index"
1338+checksum = "3640c1c38b8e4e43584d8df18be5fc6b0aa314ce6ebf51b53313d4306cca8e46"
1339+dependencies = [
1340+ "hermit-abi",
1341+ "libc",
1342+ "windows-sys",
1343+]
1344+
1345+[[package]]
1346+name = "is_terminal_polyfill"
1347+version = "1.70.2"
1348+source = "registry+https://github.com/rust-lang/crates.io-index"
1349+checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695"
1350+
1351+[[package]]
1352+name = "itoa"
1353+version = "1.0.18"
1354+source = "registry+https://github.com/rust-lang/crates.io-index"
1355+checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682"
1356+
1357+[[package]]
1358+name = "jobserver"
1359+version = "0.1.34"
1360+source = "registry+https://github.com/rust-lang/crates.io-index"
1361+checksum = "9afb3de4395d6b3e67a780b6de64b51c978ecf11cb9a462c66be7d4ca9039d33"
1362+dependencies = [
1363+ "getrandom 0.3.4",
1364+ "libc",
1365+]
1366+
1367+[[package]]
1368+name = "js-sys"
1369+version = "0.3.103"
1370+source = "registry+https://github.com/rust-lang/crates.io-index"
1371+checksum = "53b44bfcdb3f8d5837a46dae1ca9660a837176eee74a28b229bc626816589102"
1372+dependencies = [
1373+ "cfg-if",
1374+ "futures-util",
1375+ "wasm-bindgen",
1376+]
1377+
1378+[[package]]
1379+name = "libc"
1380+version = "0.2.186"
1381+source = "registry+https://github.com/rust-lang/crates.io-index"
1382+checksum = "68ab91017fe16c622486840e4c83c9a37afeff978bd239b5293d61ece587de66"
1383+
1384+[[package]]
1385+name = "litemap"
1386+version = "0.8.2"
1387+source = "registry+https://github.com/rust-lang/crates.io-index"
1388+checksum = "92daf443525c4cce67b150400bc2316076100ce0b3686209eb8cf3c31612e6f0"
1389+
1390+[[package]]
1391+name = "log"
1392+version = "0.4.33"
1393+source = "registry+https://github.com/rust-lang/crates.io-index"
1394+checksum = "0ceec5bc11778974d1bcb055b18002eba7f4b3518b6a0081b3af5f21666da9ad"
1395+
1396+[[package]]
1397+name = "memchr"
1398+version = "2.8.2"
1399+source = "registry+https://github.com/rust-lang/crates.io-index"
1400+checksum = "88904434abc2901f197fe8cc55f0445e7ded921dba5911dad2e2b39b48e663c4"
1401+
1402+[[package]]
1403+name = "mutants"
1404+version = "0.0.3"
1405+source = "registry+https://github.com/rust-lang/crates.io-index"
1406+checksum = "bc0287524726960e07b119cebd01678f852f147742ae0d925e6a520dca956126"
1407+
1408+[[package]]
1409+name = "num-traits"
1410+version = "0.2.19"
1411+source = "registry+https://github.com/rust-lang/crates.io-index"
1412+checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
1413+dependencies = [
1414+ "autocfg",
1415+]
1416+
1417+[[package]]
1418+name = "once_cell"
1419+version = "1.21.4"
1420+source = "registry+https://github.com/rust-lang/crates.io-index"
1421+checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50"
1422+
1423+[[package]]
1424+name = "once_cell_polyfill"
1425+version = "1.70.2"
1426+source = "registry+https://github.com/rust-lang/crates.io-index"
1427+checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe"
1428+
1429+[[package]]
1430+name = "opaque-debug"
1431+version = "0.3.1"
1432+source = "registry+https://github.com/rust-lang/crates.io-index"
1433+checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381"
1434+
1435+[[package]]
1436+name = "parking"
1437+version = "2.2.1"
1438+source = "registry+https://github.com/rust-lang/crates.io-index"
1439+checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba"
1440+
1441+[[package]]
1442+name = "percent-encoding"
1443+version = "2.3.2"
1444+source = "registry+https://github.com/rust-lang/crates.io-index"
1445+checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220"
1446+
1447+[[package]]
1448+name = "pin-project-lite"
1449+version = "0.2.17"
1450+source = "registry+https://github.com/rust-lang/crates.io-index"
1451+checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd"
1452+
1453+[[package]]
1454+name = "pkcs8"
1455+version = "0.10.2"
1456+source = "registry+https://github.com/rust-lang/crates.io-index"
1457+checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7"
1458+dependencies = [
1459+ "der",
1460+ "spki",
1461+]
1462+
1463+[[package]]
1464+name = "pkg-config"
1465+version = "0.3.33"
1466+source = "registry+https://github.com/rust-lang/crates.io-index"
1467+checksum = "19f132c84eca552bf34cab8ec81f1c1dcc229b811638f9d283dceabe58c5569e"
1468+
1469+[[package]]
1470+name = "poly1305"
1471+version = "0.8.0"
1472+source = "registry+https://github.com/rust-lang/crates.io-index"
1473+checksum = "8159bd90725d2df49889a078b54f4f79e87f1f8a8444194cdca81d38f5393abf"
1474+dependencies = [
1475+ "cpufeatures",
1476+ "opaque-debug",
1477+ "universal-hash",
1478+]
1479+
1480+[[package]]
1481+name = "potential_utf"
1482+version = "0.1.5"
1483+source = "registry+https://github.com/rust-lang/crates.io-index"
1484+checksum = "0103b1cef7ec0cf76490e969665504990193874ea05c85ff9bab8b911d0a0564"
1485+dependencies = [
1486+ "zerovec",
1487+]
1488+
1489+[[package]]
1490+name = "ppv-lite86"
1491+version = "0.2.21"
1492+source = "registry+https://github.com/rust-lang/crates.io-index"
1493+checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9"
1494+dependencies = [
1495+ "zerocopy",
1496+]
1497+
1498+[[package]]
1499+name = "pretty_env_logger"
1500+version = "0.5.0"
1501+source = "registry+https://github.com/rust-lang/crates.io-index"
1502+checksum = "865724d4dbe39d9f3dd3b52b88d859d66bcb2d6a0acfd5ea68a65fb66d4bdc1c"
1503+dependencies = [
1504+ "env_logger",
1505+ "log",
1506+]
1507+
1508+[[package]]
1509+name = "proc-macro-error"
1510+version = "1.0.4"
1511+source = "registry+https://github.com/rust-lang/crates.io-index"
1512+checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
1513+dependencies = [
1514+ "proc-macro-error-attr",
1515+ "proc-macro2",
1516+ "quote",
1517+ "syn 1.0.109",
1518+ "version_check",
1519+]
1520+
1521+[[package]]
1522+name = "proc-macro-error-attr"
1523+version = "1.0.4"
1524+source = "registry+https://github.com/rust-lang/crates.io-index"
1525+checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
1526+dependencies = [
1527+ "proc-macro2",
1528+ "quote",
1529+ "version_check",
1530+]
1531+
1532+[[package]]
1533+name = "proc-macro2"
1534+version = "1.0.106"
1535+source = "registry+https://github.com/rust-lang/crates.io-index"
1536+checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934"
1537+dependencies = [
1538+ "unicode-ident",
1539+]
1540+
1541+[[package]]
1542+name = "quote"
1543+version = "1.0.46"
1544+source = "registry+https://github.com/rust-lang/crates.io-index"
1545+checksum = "dfbc457d0c7a0759a614551b11a6409e5951f6c7537be1f1b7682b9ae9230368"
1546+dependencies = [
1547+ "proc-macro2",
1548+]
1549+
1550+[[package]]
1551+name = "r-efi"
1552+version = "5.3.0"
1553+source = "registry+https://github.com/rust-lang/crates.io-index"
1554+checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f"
1555+
1556+[[package]]
1557+name = "r-efi"
1558+version = "6.0.0"
1559+source = "registry+https://github.com/rust-lang/crates.io-index"
1560+checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf"
1561+
1562+[[package]]
1563+name = "rand"
1564+version = "0.9.4"
1565+source = "registry+https://github.com/rust-lang/crates.io-index"
1566+checksum = "44c5af06bb1b7d3216d91932aed5265164bf384dc89cd6ba05cf59a35f5f76ea"
1567+dependencies = [
1568+ "rand_chacha 0.9.0",
1569+ "rand_core 0.9.5",
1570+]
1571+
1572+[[package]]
1573+name = "rand_chacha"
1574+version = "0.3.1"
1575+source = "registry+https://github.com/rust-lang/crates.io-index"
1576+checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
1577+dependencies = [
1578+ "ppv-lite86",
1579+ "rand_core 0.6.4",
1580+]
1581+
1582+[[package]]
1583+name = "rand_chacha"
1584+version = "0.9.0"
1585+source = "registry+https://github.com/rust-lang/crates.io-index"
1586+checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb"
1587+dependencies = [
1588+ "ppv-lite86",
1589+ "rand_core 0.9.5",
1590+]
1591+
1592+[[package]]
1593+name = "rand_core"
1594+version = "0.6.4"
1595+source = "registry+https://github.com/rust-lang/crates.io-index"
1596+checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
1597+dependencies = [
1598+ "getrandom 0.2.17",
1599+]
1600+
1601+[[package]]
1602+name = "rand_core"
1603+version = "0.9.5"
1604+source = "registry+https://github.com/rust-lang/crates.io-index"
1605+checksum = "76afc826de14238e6e8c374ddcc1fa19e374fd8dd986b0d2af0d02377261d83c"
1606+dependencies = [
1607+ "getrandom 0.3.4",
1608+]
1609+
1610+[[package]]
1611+name = "regex"
1612+version = "1.12.4"
1613+source = "registry+https://github.com/rust-lang/crates.io-index"
1614+checksum = "f1292b7759ae1cb9ec195452d1390a074f0cd8541ab7a5a8c31cd6db45d4a6ba"
1615+dependencies = [
1616+ "aho-corasick",
1617+ "memchr",
1618+ "regex-automata",
1619+ "regex-syntax",
1620+]
1621+
1622+[[package]]
1623+name = "regex-automata"
1624+version = "0.4.14"
1625+source = "registry+https://github.com/rust-lang/crates.io-index"
1626+checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f"
1627+dependencies = [
1628+ "aho-corasick",
1629+ "memchr",
1630+ "regex-syntax",
1631+]
1632+
1633+[[package]]
1634+name = "regex-syntax"
1635+version = "0.8.11"
1636+source = "registry+https://github.com/rust-lang/crates.io-index"
1637+checksum = "d6f6ff9a378485b298a5286656da665ba74413d36db0979633275d2e708145d4"
1638+
1639+[[package]]
1640+name = "rustc-hash"
1641+version = "2.1.2"
1642+source = "registry+https://github.com/rust-lang/crates.io-index"
1643+checksum = "94300abf3f1ae2e2b8ffb7b58043de3d399c73fa6f4b73826402a5c457614dbe"
1644+
1645+[[package]]
1646+name = "rustc_version"
1647+version = "0.4.1"
1648+source = "registry+https://github.com/rust-lang/crates.io-index"
1649+checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92"
1650+dependencies = [
1651+ "semver",
1652+]
1653+
1654+[[package]]
1655+name = "rustversion"
1656+version = "1.0.22"
1657+source = "registry+https://github.com/rust-lang/crates.io-index"
1658+checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d"
1659+
1660+[[package]]
1661+name = "ryu"
1662+version = "1.0.23"
1663+source = "registry+https://github.com/rust-lang/crates.io-index"
1664+checksum = "9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f"
1665+
1666+[[package]]
1667+name = "same-file"
1668+version = "1.0.6"
1669+source = "registry+https://github.com/rust-lang/crates.io-index"
1670+checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
1671+dependencies = [
1672+ "winapi-util",
1673+]
1674+
1675+[[package]]
1676+name = "semver"
1677+version = "1.0.28"
1678+source = "registry+https://github.com/rust-lang/crates.io-index"
1679+checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd"
1680+
1681+[[package]]
1682+name = "serde"
1683+version = "1.0.228"
1684+source = "registry+https://github.com/rust-lang/crates.io-index"
1685+checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e"
1686+dependencies = [
1687+ "serde_core",
1688+ "serde_derive",
1689+]
1690+
1691+[[package]]
1692+name = "serde_bytes"
1693+version = "0.11.19"
1694+source = "registry+https://github.com/rust-lang/crates.io-index"
1695+checksum = "a5d440709e79d88e51ac01c4b72fc6cb7314017bb7da9eeff678aa94c10e3ea8"
1696+dependencies = [
1697+ "serde",
1698+ "serde_core",
1699+]
1700+
1701+[[package]]
1702+name = "serde_core"
1703+version = "1.0.228"
1704+source = "registry+https://github.com/rust-lang/crates.io-index"
1705+checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad"
1706+dependencies = [
1707+ "serde_derive",
1708+]
1709+
1710+[[package]]
1711+name = "serde_derive"
1712+version = "1.0.228"
1713+source = "registry+https://github.com/rust-lang/crates.io-index"
1714+checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79"
1715+dependencies = [
1716+ "proc-macro2",
1717+ "quote",
1718+ "syn 2.0.118",
1719+]
1720+
1721+[[package]]
1722+name = "serde_json"
1723+version = "1.0.150"
1724+source = "registry+https://github.com/rust-lang/crates.io-index"
1725+checksum = "e8014e44b4736ed0538adeecded0fce2a272f22dc9578a7eb6b2d9993c74cfb9"
1726+dependencies = [
1727+ "itoa",
1728+ "memchr",
1729+ "serde",
1730+ "serde_core",
1731+ "zmij",
1732+]
1733+
1734+[[package]]
1735+name = "serde_qs"
1736+version = "0.15.0"
1737+source = "registry+https://github.com/rust-lang/crates.io-index"
1738+checksum = "f3faaf9e727533a19351a43cc5a8de957372163c7d35cc48c90b75cdda13c352"
1739+dependencies = [
1740+ "percent-encoding",
1741+ "serde",
1742+ "thiserror",
1743+]
1744+
1745+[[package]]
1746+name = "serde_qs"
1747+version = "1.1.2"
1748+source = "registry+https://github.com/rust-lang/crates.io-index"
1749+checksum = "67d525c8ff68aa99e5818302259bdd02d86d0303710616f39c0f44846ff6d332"
1750+dependencies = [
1751+ "itoa",
1752+ "percent-encoding",
1753+ "ryu",
1754+ "serde",
1755+]
1756+
1757+[[package]]
1758+name = "serde_urlencoded"
1759+version = "0.7.1"
1760+source = "registry+https://github.com/rust-lang/crates.io-index"
1761+checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd"
1762+dependencies = [
1763+ "form_urlencoded",
1764+ "itoa",
1765+ "ryu",
1766+ "serde",
1767+]
1768+
1769+[[package]]
1770+name = "sha2"
1771+version = "0.10.9"
1772+source = "registry+https://github.com/rust-lang/crates.io-index"
1773+checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283"
1774+dependencies = [
1775+ "cfg-if",
1776+ "cpufeatures",
1777+ "digest",
1778+]
1779+
1780+[[package]]
1781+name = "shlex"
1782+version = "2.0.1"
1783+source = "registry+https://github.com/rust-lang/crates.io-index"
1784+checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba"
1785+
1786+[[package]]
1787+name = "signature"
1788+version = "2.2.0"
1789+source = "registry+https://github.com/rust-lang/crates.io-index"
1790+checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de"
1791+dependencies = [
1792+ "rand_core 0.6.4",
1793+]
1794+
1795+[[package]]
1796+name = "skrepka_core"
1797+version = "0.1.0"
1798+dependencies = [
1799+ "anyhow",
1800+ "base64",
1801+ "boltffi",
1802+ "chacha20poly1305",
1803+ "clap",
1804+ "crux_core",
1805+ "crux_http",
1806+ "crux_kv",
1807+ "crux_time",
1808+ "curve25519-dalek",
1809+ "ed25519-dalek",
1810+ "facet 0.44.5",
1811+ "hex",
1812+ "hkdf",
1813+ "log",
1814+ "pretty_env_logger",
1815+ "rand_chacha 0.3.1",
1816+ "rand_core 0.6.4",
1817+ "serde",
1818+ "serde_json",
1819+ "sha2",
1820+ "url",
1821+ "uuid",
1822+ "x25519-dalek",
1823+ "zeroize",
1824+ "zstd",
1825+]
1826+
1827+[[package]]
1828+name = "slab"
1829+version = "0.4.12"
1830+source = "registry+https://github.com/rust-lang/crates.io-index"
1831+checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5"
1832+
1833+[[package]]
1834+name = "smallvec"
1835+version = "1.15.2"
1836+source = "registry+https://github.com/rust-lang/crates.io-index"
1837+checksum = "8ed6a63f02c8539c91a8685a86f4099661ba3da017932f6ebbea6de3f0fa7c90"
1838+
1839+[[package]]
1840+name = "smawk"
1841+version = "0.3.3"
1842+source = "registry+https://github.com/rust-lang/crates.io-index"
1843+checksum = "e8e2fb0f499abb4d162f2bedad68f5ef91a1682b5a03596ddb67efd37768d100"
1844+
1845+[[package]]
1846+name = "spki"
1847+version = "0.7.3"
1848+source = "registry+https://github.com/rust-lang/crates.io-index"
1849+checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d"
1850+dependencies = [
1851+ "base64ct",
1852+ "der",
1853+]
1854+
1855+[[package]]
1856+name = "stable_deref_trait"
1857+version = "1.2.1"
1858+source = "registry+https://github.com/rust-lang/crates.io-index"
1859+checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596"
1860+
1861+[[package]]
1862+name = "static_assertions"
1863+version = "1.1.0"
1864+source = "registry+https://github.com/rust-lang/crates.io-index"
1865+checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
1866+
1867+[[package]]
1868+name = "strsim"
1869+version = "0.11.1"
1870+source = "registry+https://github.com/rust-lang/crates.io-index"
1871+checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
1872+
1873+[[package]]
1874+name = "subtle"
1875+version = "2.6.1"
1876+source = "registry+https://github.com/rust-lang/crates.io-index"
1877+checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292"
1878+
1879+[[package]]
1880+name = "syn"
1881+version = "1.0.109"
1882+source = "registry+https://github.com/rust-lang/crates.io-index"
1883+checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
1884+dependencies = [
1885+ "proc-macro2",
1886+ "unicode-ident",
1887+]
1888+
1889+[[package]]
1890+name = "syn"
1891+version = "2.0.118"
1892+source = "registry+https://github.com/rust-lang/crates.io-index"
1893+checksum = "1b9ae57f904213ebb649ce6895b8a66c66f0203b9319718f69a5612a065b1422"
1894+dependencies = [
1895+ "proc-macro2",
1896+ "quote",
1897+ "unicode-ident",
1898+]
1899+
1900+[[package]]
1901+name = "synstructure"
1902+version = "0.13.2"
1903+source = "registry+https://github.com/rust-lang/crates.io-index"
1904+checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2"
1905+dependencies = [
1906+ "proc-macro2",
1907+ "quote",
1908+ "syn 2.0.118",
1909+]
1910+
1911+[[package]]
1912+name = "termcolor"
1913+version = "1.4.1"
1914+source = "registry+https://github.com/rust-lang/crates.io-index"
1915+checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755"
1916+dependencies = [
1917+ "winapi-util",
1918+]
1919+
1920+[[package]]
1921+name = "textwrap"
1922+version = "0.16.2"
1923+source = "registry+https://github.com/rust-lang/crates.io-index"
1924+checksum = "c13547615a44dc9c452a8a534638acdf07120d4b6847c8178705da06306a3057"
1925+dependencies = [
1926+ "smawk",
1927+ "unicode-linebreak",
1928+ "unicode-width",
1929+]
1930+
1931+[[package]]
1932+name = "thiserror"
1933+version = "2.0.18"
1934+source = "registry+https://github.com/rust-lang/crates.io-index"
1935+checksum = "4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4"
1936+dependencies = [
1937+ "thiserror-impl",
1938+]
1939+
1940+[[package]]
1941+name = "thiserror-impl"
1942+version = "2.0.18"
1943+source = "registry+https://github.com/rust-lang/crates.io-index"
1944+checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5"
1945+dependencies = [
1946+ "proc-macro2",
1947+ "quote",
1948+ "syn 2.0.118",
1949+]
1950+
1951+[[package]]
1952+name = "tinystr"
1953+version = "0.8.3"
1954+source = "registry+https://github.com/rust-lang/crates.io-index"
1955+checksum = "c8323304221c2a851516f22236c5722a72eaa19749016521d6dff0824447d96d"
1956+dependencies = [
1957+ "displaydoc",
1958+ "zerovec",
1959+]
1960+
1961+[[package]]
1962+name = "typenum"
1963+version = "1.20.1"
1964+source = "registry+https://github.com/rust-lang/crates.io-index"
1965+checksum = "b6f5e870be6c3b371b77fe0ee0bafb859fa4964b4404c27de1d380043c4dda20"
1966+
1967+[[package]]
1968+name = "unicode-ident"
1969+version = "1.0.24"
1970+source = "registry+https://github.com/rust-lang/crates.io-index"
1971+checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75"
1972+
1973+[[package]]
1974+name = "unicode-linebreak"
1975+version = "0.1.5"
1976+source = "registry+https://github.com/rust-lang/crates.io-index"
1977+checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f"
1978+
1979+[[package]]
1980+name = "unicode-width"
1981+version = "0.2.2"
1982+source = "registry+https://github.com/rust-lang/crates.io-index"
1983+checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254"
1984+
1985+[[package]]
1986+name = "universal-hash"
1987+version = "0.5.1"
1988+source = "registry+https://github.com/rust-lang/crates.io-index"
1989+checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea"
1990+dependencies = [
1991+ "crypto-common",
1992+ "subtle",
1993+]
1994+
1995+[[package]]
1996+name = "unsynn"
1997+version = "0.3.0"
1998+source = "registry+https://github.com/rust-lang/crates.io-index"
1999+checksum = "501a7adf1a4bd9951501e5c66621e972ef8874d787628b7f90e64f936ef7ec0a"
2000+dependencies = [
2001+ "mutants",
2002+ "proc-macro2",
2003+ "rustc-hash",
2004+]
2005+
2006+[[package]]
2007+name = "url"
2008+version = "2.5.8"
2009+source = "registry+https://github.com/rust-lang/crates.io-index"
2010+checksum = "ff67a8a4397373c3ef660812acab3268222035010ab8680ec4215f38ba3d0eed"
2011+dependencies = [
2012+ "form_urlencoded",
2013+ "idna",
2014+ "percent-encoding",
2015+ "serde",
2016+ "serde_derive",
2017+]
2018+
2019+[[package]]
2020+name = "utf8_iter"
2021+version = "1.0.4"
2022+source = "registry+https://github.com/rust-lang/crates.io-index"
2023+checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be"
2024+
2025+[[package]]
2026+name = "utf8parse"
2027+version = "0.2.2"
2028+source = "registry+https://github.com/rust-lang/crates.io-index"
2029+checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
2030+
2031+[[package]]
2032+name = "uuid"
2033+version = "1.23.4"
2034+source = "registry+https://github.com/rust-lang/crates.io-index"
2035+checksum = "bf80a72845275afea99e7f2b434723d3bc7e38470fcd1c7ed39a599c73319a53"
2036+dependencies = [
2037+ "getrandom 0.4.3",
2038+ "js-sys",
2039+ "wasm-bindgen",
2040+]
2041+
2042+[[package]]
2043+name = "version_check"
2044+version = "0.9.5"
2045+source = "registry+https://github.com/rust-lang/crates.io-index"
2046+checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
2047+
2048+[[package]]
2049+name = "walkdir"
2050+version = "2.5.0"
2051+source = "registry+https://github.com/rust-lang/crates.io-index"
2052+checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
2053+dependencies = [
2054+ "same-file",
2055+ "winapi-util",
2056+]
2057+
2058+[[package]]
2059+name = "wasi"
2060+version = "0.11.1+wasi-snapshot-preview1"
2061+source = "registry+https://github.com/rust-lang/crates.io-index"
2062+checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b"
2063+
2064+[[package]]
2065+name = "wasip2"
2066+version = "1.0.4+wasi-0.2.12"
2067+source = "registry+https://github.com/rust-lang/crates.io-index"
2068+checksum = "b67efb37e106e55ce722a510d6b5f9c17f083e5fc79afc2badeb12cc313d9487"
2069+dependencies = [
2070+ "wit-bindgen",
2071+]
2072+
2073+[[package]]
2074+name = "wasm-bindgen"
2075+version = "0.2.126"
2076+source = "registry+https://github.com/rust-lang/crates.io-index"
2077+checksum = "4b067c0c11094aef6b7a801c1e34a26affafdf3d051dba08456b868789aaf9a4"
2078+dependencies = [
2079+ "cfg-if",
2080+ "once_cell",
2081+ "rustversion",
2082+ "wasm-bindgen-macro",
2083+ "wasm-bindgen-shared",
2084+]
2085+
2086+[[package]]
2087+name = "wasm-bindgen-macro"
2088+version = "0.2.126"
2089+source = "registry+https://github.com/rust-lang/crates.io-index"
2090+checksum = "167ce5e579f6bcf889c4f7175a8a5a585de84e8ff93976ce393efa5f2837aab1"
2091+dependencies = [
2092+ "quote",
2093+ "wasm-bindgen-macro-support",
2094+]
2095+
2096+[[package]]
2097+name = "wasm-bindgen-macro-support"
2098+version = "0.2.126"
2099+source = "registry+https://github.com/rust-lang/crates.io-index"
2100+checksum = "f3997c7839262f4ef12cf90b818d6340c18e80f263f1a94bf157d0ec4420380e"
2101+dependencies = [
2102+ "bumpalo",
2103+ "proc-macro2",
2104+ "quote",
2105+ "syn 2.0.118",
2106+ "wasm-bindgen-shared",
2107+]
2108+
2109+[[package]]
2110+name = "wasm-bindgen-shared"
2111+version = "0.2.126"
2112+source = "registry+https://github.com/rust-lang/crates.io-index"
2113+checksum = "dc1b4cb0cc549fcf58d7dfc081778139b3d283a081644e833e84682ad71cea24"
2114+dependencies = [
2115+ "unicode-ident",
2116+]
2117+
2118+[[package]]
2119+name = "web-sys"
2120+version = "0.3.103"
2121+source = "registry+https://github.com/rust-lang/crates.io-index"
2122+checksum = "8622dcb61c0bcc9fffa6938bed81210af2da9a7e4a1a834b2e37a59b6dfb6141"
2123+dependencies = [
2124+ "js-sys",
2125+ "wasm-bindgen",
2126+]
2127+
2128+[[package]]
2129+name = "winapi-util"
2130+version = "0.1.11"
2131+source = "registry+https://github.com/rust-lang/crates.io-index"
2132+checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22"
2133+dependencies = [
2134+ "windows-sys",
2135+]
2136+
2137+[[package]]
2138+name = "windows-core"
2139+version = "0.62.2"
2140+source = "registry+https://github.com/rust-lang/crates.io-index"
2141+checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb"
2142+dependencies = [
2143+ "windows-implement",
2144+ "windows-interface",
2145+ "windows-link",
2146+ "windows-result",
2147+ "windows-strings",
2148+]
2149+
2150+[[package]]
2151+name = "windows-implement"
2152+version = "0.60.2"
2153+source = "registry+https://github.com/rust-lang/crates.io-index"
2154+checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf"
2155+dependencies = [
2156+ "proc-macro2",
2157+ "quote",
2158+ "syn 2.0.118",
2159+]
2160+
2161+[[package]]
2162+name = "windows-interface"
2163+version = "0.59.3"
2164+source = "registry+https://github.com/rust-lang/crates.io-index"
2165+checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358"
2166+dependencies = [
2167+ "proc-macro2",
2168+ "quote",
2169+ "syn 2.0.118",
2170+]
2171+
2172+[[package]]
2173+name = "windows-link"
2174+version = "0.2.1"
2175+source = "registry+https://github.com/rust-lang/crates.io-index"
2176+checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5"
2177+
2178+[[package]]
2179+name = "windows-result"
2180+version = "0.4.1"
2181+source = "registry+https://github.com/rust-lang/crates.io-index"
2182+checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5"
2183+dependencies = [
2184+ "windows-link",
2185+]
2186+
2187+[[package]]
2188+name = "windows-strings"
2189+version = "0.5.1"
2190+source = "registry+https://github.com/rust-lang/crates.io-index"
2191+checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091"
2192+dependencies = [
2193+ "windows-link",
2194+]
2195+
2196+[[package]]
2197+name = "windows-sys"
2198+version = "0.61.2"
2199+source = "registry+https://github.com/rust-lang/crates.io-index"
2200+checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc"
2201+dependencies = [
2202+ "windows-link",
2203+]
2204+
2205+[[package]]
2206+name = "wit-bindgen"
2207+version = "0.57.1"
2208+source = "registry+https://github.com/rust-lang/crates.io-index"
2209+checksum = "1ebf944e87a7c253233ad6766e082e3cd714b5d03812acc24c318f549614536e"
2210+
2211+[[package]]
2212+name = "writeable"
2213+version = "0.6.3"
2214+source = "registry+https://github.com/rust-lang/crates.io-index"
2215+checksum = "1ffae5123b2d3fc086436f8834ae3ab053a283cfac8fe0a0b8eaae044768a4c4"
2216+
2217+[[package]]
2218+name = "x25519-dalek"
2219+version = "2.0.1"
2220+source = "registry+https://github.com/rust-lang/crates.io-index"
2221+checksum = "c7e468321c81fb07fa7f4c636c3972b9100f0346e5b6a9f2bd0603a52f7ed277"
2222+dependencies = [
2223+ "curve25519-dalek",
2224+ "rand_core 0.6.4",
2225+ "serde",
2226+ "zeroize",
2227+]
2228+
2229+[[package]]
2230+name = "yoke"
2231+version = "0.8.3"
2232+source = "registry+https://github.com/rust-lang/crates.io-index"
2233+checksum = "709fe23a0424b6a435d82152b1bd3fdfb0833487d5fa90d05d42762a9891fef5"
2234+dependencies = [
2235+ "stable_deref_trait",
2236+ "yoke-derive",
2237+ "zerofrom",
2238+]
2239+
2240+[[package]]
2241+name = "yoke-derive"
2242+version = "0.8.2"
2243+source = "registry+https://github.com/rust-lang/crates.io-index"
2244+checksum = "de844c262c8848816172cef550288e7dc6c7b7814b4ee56b3e1553f275f1858e"
2245+dependencies = [
2246+ "proc-macro2",
2247+ "quote",
2248+ "syn 2.0.118",
2249+ "synstructure",
2250+]
2251+
2252+[[package]]
2253+name = "zerocopy"
2254+version = "0.8.52"
2255+source = "registry+https://github.com/rust-lang/crates.io-index"
2256+checksum = "ce1022995ff5ff5d841ad7d994facc23098cd40152f2c1d11cd607c6f530653f"
2257+dependencies = [
2258+ "zerocopy-derive",
2259+]
2260+
2261+[[package]]
2262+name = "zerocopy-derive"
2263+version = "0.8.52"
2264+source = "registry+https://github.com/rust-lang/crates.io-index"
2265+checksum = "1ae7f38b72ec2a254e2b87ef277cf2cd4fb97cbebf944faa6f33354da0867930"
2266+dependencies = [
2267+ "proc-macro2",
2268+ "quote",
2269+ "syn 2.0.118",
2270+]
2271+
2272+[[package]]
2273+name = "zerofrom"
2274+version = "0.1.8"
2275+source = "registry+https://github.com/rust-lang/crates.io-index"
2276+checksum = "0ec05a11813ea801ff6d75110ad09cd0824ddba17dfe17128ea0d5f68e6c5272"
2277+dependencies = [
2278+ "zerofrom-derive",
2279+]
2280+
2281+[[package]]
2282+name = "zerofrom-derive"
2283+version = "0.1.7"
2284+source = "registry+https://github.com/rust-lang/crates.io-index"
2285+checksum = "11532158c46691caf0f2593ea8358fed6bbf68a0315e80aae9bd41fbade684a1"
2286+dependencies = [
2287+ "proc-macro2",
2288+ "quote",
2289+ "syn 2.0.118",
2290+ "synstructure",
2291+]
2292+
2293+[[package]]
2294+name = "zeroize"
2295+version = "1.9.0"
2296+source = "registry+https://github.com/rust-lang/crates.io-index"
2297+checksum = "e13c156562582aa81c60cb29407084cdb54c4164760106ab78e6c5b0858cf64e"
2298+dependencies = [
2299+ "zeroize_derive",
2300+]
2301+
2302+[[package]]
2303+name = "zeroize_derive"
2304+version = "1.5.0"
2305+source = "registry+https://github.com/rust-lang/crates.io-index"
2306+checksum = "3c50655cbb0fe3fc43170059e702f1ce5e19b84cec58dc87b037a09935c2f328"
2307+dependencies = [
2308+ "proc-macro2",
2309+ "quote",
2310+ "syn 2.0.118",
2311+]
2312+
2313+[[package]]
2314+name = "zerotrie"
2315+version = "0.2.4"
2316+source = "registry+https://github.com/rust-lang/crates.io-index"
2317+checksum = "0f9152d31db0792fa83f70fb2f83148effb5c1f5b8c7686c3459e361d9bc20bf"
2318+dependencies = [
2319+ "displaydoc",
2320+ "yoke",
2321+ "zerofrom",
2322+]
2323+
2324+[[package]]
2325+name = "zerovec"
2326+version = "0.11.6"
2327+source = "registry+https://github.com/rust-lang/crates.io-index"
2328+checksum = "90f911cbc359ab6af17377d242225f4d75119aec87ea711a880987b18cd7b239"
2329+dependencies = [
2330+ "yoke",
2331+ "zerofrom",
2332+ "zerovec-derive",
2333+]
2334+
2335+[[package]]
2336+name = "zerovec-derive"
2337+version = "0.11.3"
2338+source = "registry+https://github.com/rust-lang/crates.io-index"
2339+checksum = "625dc425cab0dca6dc3c3319506e6593dcb08a9f387ea3b284dbd52a92c40555"
2340+dependencies = [
2341+ "proc-macro2",
2342+ "quote",
2343+ "syn 2.0.118",
2344+]
2345+
2346+[[package]]
2347+name = "zmij"
2348+version = "1.0.21"
2349+source = "registry+https://github.com/rust-lang/crates.io-index"
2350+checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa"
2351+
2352+[[package]]
2353+name = "zstd"
2354+version = "0.13.3"
2355+source = "registry+https://github.com/rust-lang/crates.io-index"
2356+checksum = "e91ee311a569c327171651566e07972200e76fcfe2242a4fa446149a3881c08a"
2357+dependencies = [
2358+ "zstd-safe",
2359+]
2360+
2361+[[package]]
2362+name = "zstd-safe"
2363+version = "7.2.4"
2364+source = "registry+https://github.com/rust-lang/crates.io-index"
2365+checksum = "8f49c4d5f0abb602a93fb8736af2a4f4dd9512e36f7f570d66e65ff867ed3b9d"
2366+dependencies = [
2367+ "zstd-sys",
2368+]
2369+
2370+[[package]]
2371+name = "zstd-sys"
2372+version = "2.0.16+zstd.1.5.7"
2373+source = "registry+https://github.com/rust-lang/crates.io-index"
2374+checksum = "91e19ebc2adc8f83e43039e79776e3fda8ca919132d68a1fed6a5faca2683748"
2375+dependencies = [
2376+ "cc",
2377+ "pkg-config",
2378+]
Cargo.tomlnew file+54
@@ -0,0 +1,54 @@
1+[workspace]
2+members = ["core"]
3+resolver = "2"
4+
5+# The curve arithmetic is ~100x slower unoptimized, and the tests do real
6+# signing and real X25519 — a poll page of a thousand messages is minutes of
7+# debug-mode scalar mults. Optimizing just these crates keeps `cargo test` in
8+# seconds while everything we actually debug stays at opt-level 0.
9+[profile.dev.package.curve25519-dalek]
10+opt-level = 3
11+[profile.dev.package.ed25519-dalek]
12+opt-level = 3
13+[profile.dev.package.x25519-dalek]
14+opt-level = 3
15+[profile.dev.package.zstd-sys]
16+opt-level = 3
17+
18+[workspace.package]
19+edition = "2021"
20+rust-version = "1.90"
21+license = "MIT"
22+repository = "https://github.com/ilyakooo0/skrepka"
23+
24+[workspace.dependencies]
25+crux_core = "0.19"
26+crux_http = "0.18"
27+crux_kv = "0.13"
28+crux_time = "0.17"
29+boltffi = "0.26"
30+facet = { version = "=0.44", features = ["chrono"] }
31+serde = { version = "1.0", features = ["derive", "rc"] }
32+serde_json = "1.0"
33+
34+# crypto
35+ed25519-dalek = { version = "2", features = ["rand_core"] }
36+x25519-dalek = { version = "2", features = ["static_secrets"] }
37+curve25519-dalek = "4"
38+chacha20poly1305 = "0.10"
39+hkdf = "0.12"
40+sha2 = "0.10"
41+zstd = "0.13"
42+rand_core = { version = "0.6", features = ["getrandom"] }
43+rand_chacha = "0.3"
44+uuid = { version = "1", features = ["v4"] }
45+hex = "0.4"
46+base64 = "0.22"
47+zeroize = { version = "1", features = ["derive"] }
48+url = "2"
49+
50+# codegen bin
51+anyhow = "1.0"
52+clap = { version = "4", features = ["derive"] }
53+log = "0.4"
54+pretty_env_logger = "0.5"
Justfilenew file+49
@@ -0,0 +1,49 @@
1+# Skrepka iOS client (Rust core + Crux + SwiftUI shell)
2+#
3+# One-time setup:
4+# rustup target add aarch64-apple-ios aarch64-apple-ios-sim x86_64-apple-ios
5+# cargo install boltffi_cli
6+# brew install xcodegen
7+
8+sim_id := env_var_or_default("SIM_ID", "")
9+bundle := "lol.skrepka.SkrepkaApp-iOS"
10+
11+default: test
12+
13+# Run the Rust core test suite (crypto, protocol, @p, state machine).
14+test:
15+ cargo test -p skrepka_core
16+
17+# Generate the Swift type bindings from the core.
18+typegen:
19+ cargo run -q -p skrepka_core --bin codegen --features codegen -- \
20+ --language swift --output-dir apple/generated/App
21+
22+# Build the core for Apple and package the xcframework + Swift package.
23+pack:
24+ cd core && boltffi pack apple
25+
26+# Generate the Xcode project from project.yml.
27+project:
28+ cd apple && xcodegen generate
29+
30+# Full regeneration: types, xcframework, Xcode project.
31+generate: typegen pack project
32+
33+# Build the iOS app for a booted simulator (set SIM_ID, or pass a destination).
34+build sim=sim_id:
35+ @test -n "{{sim}}" || ( echo "error: no simulator. Set SIM_ID=<udid> or run: just build <udid>"; echo " list booted devices with: xcrun simctl list devices booted"; exit 1 )
36+ cd apple && xcodebuild -project SkrepkaApp.xcodeproj -scheme SkrepkaApp-iOS \
37+ -destination 'platform=iOS Simulator,id={{sim}}' \
38+ -derivedDataPath build -skipPackagePluginValidation build
39+
40+# Build, then install + launch on a booted simulator.
41+run sim=sim_id: (build sim)
42+ cd apple && xcrun simctl install {{sim}} \
43+ build/Build/Products/Debug-iphonesimulator/SkrepkaApp-iOS.app
44+ xcrun simctl launch {{sim}} {{bundle}}
45+
46+# Run a local relay server for testing (resets the disposable relay db first).
47+server:
48+ rm -f server.db server.db-wal server.db-shm
49+ ./server
PROTOCOL-REVIEW.mdnew file+416
@@ -0,0 +1,416 @@
1+# PROTOCOL.md Review — Holes vs. Implementation
2+
3+**Date:** 2026-06-20 (revised 2026-07-11 against the Rust core)
4+**Scope:** Cross-check of gaps found in `PROTOCOL.md` against the actual code
5+(`server.knot`, `core/` — the Rust/Crux shared core). Each item records whether
6+the implementation already handles it, partially handles it, or leaves it open.
7+
8+> The original review was written against the F# client, which has since been
9+> replaced by the Rust core in `core/` (logic) plus a logic-free SwiftUI shell in
10+> `apple/`. Citations below point at the Rust code; findings that the rewrite
11+> closed are marked as such.
12+
13+Legend: ✅ fixed · 🟡 partial / mitigated · ❌ open · ⚪ not-a-bug (spec wording only)
14+
15+---
16+
17+## ✅ 1. Auth challenge is not bound to the server (session relay) — fixed
18+
19+**Severity: high — fixed.**
20+
21+The client signed the bare challenge string and the server verified the bare
22+challenge string. Nothing bound the signed material to a server identity, so a
23+relay could forward another server's challenge and replay the signature.
24+
25+**Attack (historical):** a malicious/relay server the client connects to fetched
26+a challenge for the client's pubkey from a legit server A, handed it to the
27+client, collected the signature, and replayed it to A's `/auth/verify` —
28+obtaining a session **as the client** on A (could `/poll` the client's mailbox
29+and send as them). The challenge's IP-binding (`matchIp`) did not help, because
30+the relay server was the client-of-record to A throughout.
31+
32+**Fix (applied):** the client now signs
33+`"skrepka-auth-v1:" + server_host + ":" + challenge` where `server_host` is the
34+bare lowercased hostname it dialed (`Identity::sign_challenge`,
35+`core/src/crypto.rs`; the tag is `AUTH_TAG`), and the server verifies against
36+`"skrepka-auth-v1:" ++ beforeColon serverHost ++ ":" ++ challenge` using its own
37+configured `serverHost` (`server.knot` `handleVerifyAuth`). The `skrepka-auth-v1:`
38+prefix is a domain-separation tag so an auth signature can never be confused with
39+a message signature (which is over `recipientPub || compressed`). Breaking change:
40+client and server must be upgraded together.
41+
42+Operational corollary: a relay's `serverHost` **must** be the public hostname
43+clients dial, or every signature fails to verify. It defaults to `"localhost"`,
44+so `install.sh` passes `--serverHost=${DOMAIN}` in the systemd unit it writes.
45+
46+---
47+
48+## ❌ 2. Gossip presence spoofing redirects a victim's mail to the attacker
49+
50+**Severity: high — open (consequence of open federation).**
51+
52+`/federation/gossip` is unauthenticated. On a newly-`online` event the origin
53+forwards the recipient's queued messages **to the announcing `fromServer`**
54+(`handleRecvGossip` → `forwardQueuedToServer pk fromServer`, `server.knot`).
55+
56+**Attack:** a hostile peer announces `{eventType:"online", pubkey:<victim>,
57+fromServer:<attacker>}`. The origin forwards all of the victim's queued
58+ciphertext to the attacker, who harvests ciphertext copies + recipient/timing/size
59+metadata. The receiver-side "recipient must be locally online" gate is checked by
60+the attacker's own server, so it is not a real gate.
61+
62+**Existing partial defense:** the `isBadServerName` SSRF deny-list blocks
63+internal targets, and gossip is rate-limited per peer IP. Neither authenticates
64+the peer, and the deny-list is purely lexical — a public-looking hostname under
65+attacker DNS control still passes (documented at `isBadServerName`).
66+
67+`PROTOCOL.md` §10 understates this as "a hostile server can observe gossip" — it
68+can actively **redirect delivery**. At minimum the spec should say so; a real fix
69+needs signed/authenticated presence or peer allow-listing.
70+
71+---
72+
73+## ✅ 3. Replay protection is narrower than §10 claims — closed in the Rust core
74+
75+**Severity: medium — fixed.**
76+
77+§10 claimed "Replay protection"; the underlying mechanism is the
78+recipient-bound signature, which stops replay to a *different* recipient, not
79+re-delivery of the same blob to the same recipient. Per-type status, all in
80+`ingest_poll` (`core/src/app.rs`):
81+
82+- `text` — ✅ deduplicated by `id` before it is appended to a conversation.
83+- `delivery.ack` — ✅ harmless: it only flips `Sent → Delivered`, idempotent.
84+- `profile` — ✅ **fixed** (was open in the F# client): each `Contact` carries
85+ `last_profile_ts` (`core/src/model.rs`), and an incoming `profile` whose `ts`
86+ predates it is dropped instead of applied, so a replayed *older* profile can no
87+ longer roll a contact's name/bio/photo back.
88+
89+`PROTOCOL.md` §4 and §10 have been updated to say the reference client enforces
90+the staleness check. §10's replay wording should still be read as "replay against
91+a *different* recipient" — re-delivery to the same recipient is prevented by the
92+per-type guards above, not by the crypto.
93+
94+---
95+
96+## 🟡 4. Open `/federation/forward` allows mailbox injection
97+
98+**Severity: medium — mitigated, not closed.**
99+
100+Any host can POST a blob for any locally-online `toKey`; the endpoint is
101+unauthenticated.
102+
103+- Mitigations present: per-IP rate limit (`forwardRateLimit`, `server.knot`),
104+ the SSRF filter on origins, and the `no_presence` gate.
105+- Residual: junk blobs still reach an online recipient's poll stream; the spec
106+ never says what a client does with an undecryptable blob. The core drops it
107+ silently — `crypto::decrypt` returning `Err` just `continue`s the ingest loop
108+ (`ingest_poll`, `core/src/app.rs`). Worth documenting as an accepted,
109+ rate-limited spam surface.
110+
111+---
112+
113+## ⚪ 5. `receivedAt` "millisecond timestamp" vs "monotonic" — wording only
114+
115+**Not a bug.** `appendMessage` assigns `seqTs = max t (currentSeq seqRows + 1)`
116+(`server.knot`), which is **strictly monotonic**, so no two messages share a
117+`receivedAt` and the `cursor >= receivedAt` implicit-ack cannot drop an unseen
118+message. The spec just describes the same value as both a "millisecond timestamp"
119+and "monotonic," which reads as ambiguous. Recommend: describe it as "a
120+monotonic sequence seeded from millisecond wall-clock; treat as an opaque
121+checkpoint, not a clock."
122+
123+---
124+
125+## ✅ 6. Total request-body cap — fixed in deployment, undocumented in spec
126+
127+The per-blob cap is `maxBlobLen` (40 MiB hex) enforced by the `BlobHex` type, and
128+a batch is capped at `maxBatchSize = 100` (`server.knot`). The naive reading
129+"100 × 40 MiB = 4 GiB request" is **prevented** by a runtime body cap set in
130+deployment:
131+
132+- `install.sh` — `ExecStart=… --http-max-body-bytes=42M` caps the *entire*
133+ request body (chosen just above `maxBlobLen` + envelope; the runtime default is
134+ 16 MiB, which would reject a legitimate max-size blob with a bare 413).
135+
136+So a batch can carry one max-size blob or many small ones, but total ≤ 42 MiB.
137+`PROTOCOL.md` §5 should state this total-body cap (and that operators must keep
138+`--http-max-body-bytes` > `maxBlobLen`).
139+
140+---
141+
142+## ✅ 7. No crypto / wire-format version negotiation — fixed
143+
144+**Severity: low — fixed.**
145+
146+`HKDF_INFO = "skrepka-v1"` is hardcoded (`core/src/crypto.rs`), and the plaintext payload carries no version field. The wire format now carries a leading version byte (`WIRE_VERSION = 0x01`, `core/src/crypto.rs`): `encrypt` prepends it, and `decrypt` reads and checks it before any other processing, returning `CryptoError::Decrypt` on mismatch. `MIN_BLOB_LEN` includes the extra byte (169 bytes). "Ignore unknown `type`" (`protocol::parse_payload`) gives payload-type agility; the version byte gives the same for the wire format, AEAD, KDF, and curve choices. A future revision that changes crypto primitives should bump both the version byte and the HKDF `info` string.
147+
148+---
149+
150+## ⚪ 8. X-Forwarded-For trust is spoofable without a proxy — by design
151+
152+`trustForwardedFor = True` by default (`server.knot`); the session/rate-limit IP
153+is the last XFF hop (`pickClientIp`), and `matchIp` treats an empty bound IP as a
154+wildcard. This is correct **behind a trusted proxy** (the `install.sh` topology,
155+Caddy in front) but spoofable when the server is directly exposed — a client could
156+forge the header to mint fresh rate-limit buckets. The flag and its
157+`--trustForwardedFor=False` override exist; the spec presents IP-binding as a
158+protection without the proxy caveat. Recommend documenting it.
159+
160+---
161+
162+## Minor / noted
163+
164+- The SSRF deny-list (`isBadServerName`) is **lexical only**: it filters the
165+ hostname string, never the address it resolves to, so an attacker-controlled
166+ name that resolves to a private IP passes. Closing it requires resolve-then-pin,
167+ which the runtime's `fetch` does not expose. Documented in place.
168+- HKDF salt is `ephemeral_pub || recipient_x25519_pub` (both public), binds no
169+ sender — fine for confidentiality, no KCI/UKS guarantee beyond the signature.
170+- Presence TTL (90 min, `onlineGossipTtl`) outlives the 1 h session, so location
171+ metadata and stale forwards can persist ~90 min after disconnect.
172+- `/auth/challenge` is unauthenticated; fillable by anyone but capped
173+ (`maxChallenges = 10000`, `maxChallengesPerKey = 5`) and rate-limited per
174+ client IP. It is deliberately **not** limited per submitted pubkey: keypairs are
175+ free, so a pubkey-keyed bucket refills on every rotation (Sybil), and it would
176+ also let an attacker exhaust a victim's login budget.
177+
178+---
179+
180+## 🟡 9. Federation retry loop can starve the prune sweep
181+
182+**Severity: low — design tradeoff, not a code bug.**
183+
184+`backgroundRetryForwards` runs `retryPendingForwards` inline (not via `fork`),
185+so a sweep that hits many slow or timing-out peers blocks until every
186+`fetch` in the batch resolves. Each `fetch` has no explicit timeout — the
187+runtime's HTTP client holds the connection — so a sweep over N unreachable
188+peers can take N × (TCP connect timeout) before returning. During that time
189+`backgroundPrune` (on its own `fork`) is free to run, but its writes to
190+`*messages` and `*forwardFailures` conflict with `retryPendingForwards`'s
191+`atomic` blocks, so `pruneExpired`'s atomic retries lose to the retry loop
192+and are effectively starved: expired messages, sessions, and challenges
193+pile up until the retry sweep finishes.
194+
195+In practice this only matters under federation with many dead peers and a
196+low `retryBackoffMax` — the `shouldRetryServer` gate skips peers in backoff,
197+so after one failed sweep most peers are gated out of the next one. The
198+first sweep after a network partition is the worst case.
199+
200+**No fix applied.** The deliberate design (inline, not forked) prevents two
201+concurrent `retryPendingForwards` from seeing the same `*forwards` snapshot
202+and double-counting `recordFailure`. Forking it would reintroduce that race.
203+A real fix would either (a) give `fetch` a deadline and bound the sweep
204+time, or (b) run `retryPendingForwards` in a transaction that yields
205+`*messages`/`*forwardFailures` to `pruneExpired` between per-peer batches.
206+Both need runtime support the current `fetch` does not expose.
207+
208+---
209+
210+## Suggested follow-ups
211+
212+1. **Spec edits (safe, no behavior change):** fold #2, #4, #6, #8 caveats into
213+ `PROTOCOL.md` (§6 auth, §7 federation, §5 size, §10 security). #3's spec text
214+ is already updated.
215+2. **Code fixes:** #1 (bind challenge to server) and #3 (profile `ts` staleness
216+ guard) are **done**.
217+3. #2 and #4 are inherent to open, unauthenticated federation — decide whether to
218+ document-as-accepted or add peer authentication.
219+4. **#9** is a design tradeoff; document as accepted until `fetch` supports a
220+ deadline.
221+
222+---
223+
224+## Findings blocked on runtime/protocol support (2026-07-13 audit)
225+
226+These findings are documented here for tracking. Each is blocked on a capability
227+the current runtime or protocol does not expose, so no code fix is possible
228+today.
229+
230+### ❌ A. `now_ms()` impurity breaks MVU replayability
231+
232+**Severity: medium — blocked on `crux_time` refactor.**
233+
234+`now_ms()` reads the system clock from inside `update()` (app.rs:427), which is
235+supposed to be a pure function of `(Event, Model)`. This affects `SendText`,
236+`SaveProfile`, `ingest_poll`, `flush_next` (first_attempt stamping), and ack
237+timestamping. The state machine cannot be replayed deterministically, and tests
238+cannot pin "now".
239+
240+The fix is to take the time as a `crux_time` effect and feed it back as an
241+event — but every timestamped path would become a two-step round-trip through
242+the shell. A TODO comment is in place at the call site. This refactor is worth
243+doing but is not a drive-by fix.
244+
245+### ❌ B. Token comparison timing side-channel
246+
247+**Severity: medium — blocked on Knot runtime.**
248+
249+`s.token == token` is plain string equality, which short-circuits on the first
250+differing byte (server.knot:761). An attacker who can time the response learns
251+how many leading characters of a guess were correct. Bounded by the 192-bit
252+token and per-IP rate limit. The correct fix is a `constantTimeEquals` primitive
253+in the Knot runtime. Documented in PROTOCOL.md §6 and in-code comments.
254+
255+### ❌ C. Open federation — gossip redirect & forward injection
256+
257+**Severity: high — accepted v0.1 limitation, blocked on peer authentication.**
258+
259+Both `/federation/*` endpoints are unauthenticated. An attacker can redirect a
260+victim's queued ciphertext or inject blobs into an online recipient's mailbox.
261+Fully documented in PROTOCOL-REVIEW.md #2, #4 and PROTOCOL.md §10. The fix
262+requires signed presence gossip and authenticated forward requests, which needs
263+a key-to-home-server binding the protocol does not yet define.
264+
265+### ❌ D. SSRF deny-list is lexical only
266+
267+**Severity: medium — blocked on `fetch` exposing DNS resolution.**
268+
269+`isBadServerName` inspects the hostname string, never the resolved address.
270+DNS-rebinding TOCTOU bypasses it. The fix needs resolve-then-pin (fuse DNS
271+resolution with connection), which `fetch` does not expose. Documented in
272+PROTOCOL-REVIEW.md and in-code comments at `isBadServerName`.
273+
274+### ❌ E. Federation retry sweep can starve the prune sweep
275+
276+**Severity: low — design tradeoff, blocked on `fetch` deadline support.**
277+
278+`backgroundRetryForwards` runs inline, so a sweep over many unreachable peers
279+blocks until every `fetch` resolves. The prune sweep's writes conflict with the
280+retry loop's atomic blocks. A fix needs either a `fetch` deadline or a
281+transaction that yields between per-peer batches, neither of which the current
282+`fetch` supports. Documented in PROTOCOL-REVIEW.md #9.
283+
284+---
285+
286+## Fixed in third-pass audit (2026-07-13)
287+
288+### ✅ F. Cursor advanced before budget check — message loss on oversized poll page
289+
290+**Severity: high — fixed.**
291+
292+`ingest_poll` advanced `model.cursor` to `page.cursor` before the event loop.
293+If the `MAX_POLL_TOTAL_BYTES` budget was exhausted mid-page, the loop broke
294+but the cursor stayed at `page.cursor`. The next poll acked the whole page to
295+the relay, which deleted every event the client never processed — permanent
296+message loss. A relay serving 4+ large blobs (each up to 20 MiB) in a single
297+50-event page was enough to trigger this.
298+
299+**Fix:** Save the pre-page cursor and restore it when the budget is exhausted.
300+
301+### ✅ G. `send_text` did not check if peer is blocked
302+
303+**Severity: medium — fixed.**
304+
305+Blocking was documented as cutting a peer off in both directions, and the
306+ingest side correctly dropped blocked peers' messages. But `send_text` had no
307+block check, so a user could keep sending messages to a blocked contact. The
308+Swift `ChatView` composer was also not disabled for blocked peers.
309+
310+**Fix:** `send_text` now refuses with an error when the active peer is blocked.
311+The Swift composer disables both the text field and the send button when
312+`activePeerBlocked` is true.
313+
314+### ✅ H. `compressed` and `signed` intermediates not zeroized in `crypto::encrypt`
315+
316+**Severity: low — fixed.**
317+
318+The `inner` buffer was correctly `Zeroize`d after encryption, but the
319+`compressed` (compressed plaintext) and `signed` (signature input containing
320+recipient_pub + compressed + padding) intermediates were plain `Vec<u8>`s
321+that retained sensitive data in freed memory. Both are now `Zeroizing<Vec<u8>>`.
322+
323+### ✅ I. PROTOCOL.md §10 "No cryptographic agility" contradicted §3
324+
325+**Severity: spec only — fixed.**
326+
327+The §10 risk table said "The wire format has no version field" but §3 had
328+been updated to describe a version byte (`0x01`) and a "Cryptographic
329+Versioning" section. The table entry now accurately reflects the version
330+byte's existence and its limitations.
331+
332+### ✅ J. PROTOCOL.md §4 "Blocking" didn't match implementation
333+
334+**Severity: spec only — fixed.**
335+
336+The spec said blocked senders' messages "are still received and decrypted but
337+are not displayed." The implementation drops them after decryption (the sender
338+identity is inside the AEAD ciphertext, so decryption is necessary to learn who
339+the message is from). The spec now accurately describes the implementation:
340+messages are decrypted to recover the sender identity, then dropped without
341+storage, display, or ack, and blocking is bidirectional.
342+
343+---
344+
345+## Fixed in sixth-pass audit (2026-07-13)
346+
347+### ✅ K. No send-side body length check — silent message loss
348+
349+**Severity: medium — fixed.**
350+
351+`send_text` did not check `body.len()` against `protocol::MAX_BODY_LEN`. The
352+recipient's `parse_payload` enforces the cap and silently drops oversized text,
353+so a user who pastes a very long message would see it stored locally, sent to
354+the relay, and marked "sent" — but it would never arrive, never get acked, and
355+the sender would see it stuck as "sent" forever with no error.
356+
357+**Fix:** `send_text` now refuses with `"message too long"` before queueing.
358+
359+### ✅ L. No profile field length checks in SaveProfile — silent broadcast failure
360+
361+**Severity: medium — fixed.**
362+
363+`SaveProfile` broadcast `display_name`, `bio`, and `photo` without checking
364+against `MAX_DISPLAY_NAME_LEN` (128 chars), `MAX_BIO_LEN` (1024 chars), or
365+`MAX_PHOTO_LEN` (64 KiB). Every recipient's `parse_payload` would silently drop
366+the oversized profile, creating a divergence between what the sender sees and
367+what contacts see.
368+
369+**Fix:** All three fields are validated before the profile is saved or broadcast.
370+
371+### ✅ M. `Decrypted` plaintext not zeroized
372+
373+**Severity: low — fixed.**
374+
375+The `inner` buffer and `signed` intermediate were carefully `Zeroizing<Vec<u8>>`,
376+but the output `Decrypted { plaintext: Vec<u8> }` escaped the zeroization
377+boundary. The decrypted message content sat in freed memory until the allocator
378+reused that page. `plaintext` is now `Zeroizing<Vec<u8>>`.
379+
380+### ✅ N. No send watchdog — stuck `flushing` guard
381+
382+**Severity: low — fixed.**
383+
384+The poll loop had a watchdog (`POLL_WATCHDOG_MS`) that recovered from a dropped
385+HTTP effect, but the send loop had no equivalent. If `SendResult` never came
386+back (a cancelled task, a backgrounded app, a bug), `flushing` stayed `true`
387+forever and the outbox was permanently stuck. A `FlushWatchdog` event (armed
388+alongside the send, same pattern as the poll watchdog) now releases the guard
389+and retries the flush after `FLUSH_WATCHDOG_MS` (90 s).
390+
391+### ✅ O. No nickname length check in AddContact
392+
393+**Severity: very low — fixed.**
394+
395+The `nickname` in `AddContact` was stored without any length bound. A user could
396+set a megabyte-long nickname, bloating the contacts kv blob (rewritten in full on
397+every change). `nickname.len()` is now checked against `MAX_DISPLAY_NAME_LEN`.
398+
399+---
400+
401+## Fixed in seventh-pass audit (2026-07-14)
402+
403+### ✅ P. `encrypt`'s `inner` buffer not zeroized on AEAD failure
404+
405+**Severity: low — fixed.**
406+
407+The `inner` buffer in `crypto::encrypt` (sender pubkey || signature ||
408+compressed_len || compressed || padding) was a plain `Vec<u8>`. It was
409+explicitly `zeroize()`d on the success path, but if `cipher.encrypt()`
410+returned `Err`, the `?` operator returned early and `inner` was dropped
411+without zeroization — the sender's identity, signature, and compressed
412+plaintext remained in freed memory. Every other sensitive intermediate in
413+`encrypt` (`compressed`, `signed`, `padding`, `eph_priv`, `raw_secret`,
414+`key`) was already `Zeroizing`; `inner` was the sole exception. Now
415+`Zeroizing<Vec<u8>>`, matching the pattern established for `decrypt`'s
416+`inner` and `signed` in the fourth-pass audit.
PROTOCOL.md+429−342
@@ -1,6 +1,6 @@
11# Skrepka Protocol Specification
22
3−**Version:** 0.1 (Draft)
3+**Version:** 0.2 (Draft)
44
55---
66
@@ -12,15 +12,15 @@ Skrepka is a decentralized, end-to-end encrypted messaging protocol. It has no u
1212
1313- **No accounts.** A user's identity is their cryptographic keypair. No registration, no passwords, no servers storing credentials.
1414- **No home server.** Users connect to any server in the mesh and can switch freely. Servers are disposable relays.
15−- **End-to-end encryption.** Servers see only envelope metadata. Message content is opaque.
15+- **End-to-end encryption.** Servers see only routing metadata. Message content — including the sender's identity — is opaque to the server.
1616- **Open federation.** Any server can join the mesh. Operators may optionally blocklist specific peers.
17−- **Ephemeral.** All messages expire after 30 days — on servers and on devices. No permanent history.
17+- **Ephemeral.** Server mailboxes expire after 30 days. No permanent server-side history.
1818- **Simplicity.** Plain HTTP transport, no session negotiation, no ratchets.
1919
2020### Non-Goals
2121
2222- Forward secrecy (per-message ephemeral keys provide partial protection, but no ratchet)
23−- Metadata privacy (servers see sender, recipient, and timestamp)
23+- Recipient metadata privacy (servers see the recipient and timestamps; the sender is not visible to servers)
2424- Durable message storage (servers queue temporarily, not permanently)
2525- Peer-to-peer delivery (at least one server must be reachable)
2626
@@ -38,32 +38,37 @@ Each device generates its own independent keypair and is treated as a separate i
3838
3939### Key Format
4040
41−Public keys are encoded as **base64url** (RFC 4648 §5, no padding).
41+Public keys, signatures, and encrypted blobs are encoded as **lowercase hexadecimal** on the wire and in storage. An Ed25519 public key is 32 bytes (64 hex chars); a signature is 64 bytes (128 hex chars).
4242
43−### Identity URI
43+### Sharing an Identity
4444
45−```
46−skrepka://<base64url(ed25519_pubkey)>@<server_host>
47−```
45+Identities are shared out-of-band as plain text or QR codes. The client displays public keys in two forms:
4846
49−Example:
47+- **Hex** — 64 lowercase hex characters (the canonical wire form).
48+- **@p (phonetic)** — the public key rendered as Urbit-style syllables, hyphen-joined with no leading prefix (e.g. `ridler-binzod-marbud-...`). Easier for humans to read and verify by voice. The client accepts either form when adding a contact.
5049
51−```
52−skrepka://dGhpcyBpcyBhIHRlc3Q@relay.example.com
53−```
50+#### @p Encoding
51+
52+@p is a display encoding only — it never appears on the wire and carries no information the hex form does not. It is specified here so an independent client renders the *same* syllables, since users compare them aloud to verify keys: a client with a divergent table would show a different name for the same identity and defeat out-of-band verification.
53+
54+The 32-byte key is encoded **byte-pair by byte-pair, most-significant first**. Each pair `(hi, lo)` becomes one four-letter word `PREFIX[hi] ++ SUFFIX[lo]`, and the 16 words are joined with `-`. Both tables hold 256 three-letter syllables each and are **identical to Urbit's** (`po.hoon`); the reference copies live in [`core/src/phonemic.rs`](core/src/phonemic.rs). Neither table contains duplicates, so decoding is an unambiguous reverse lookup, and a 32-byte key always yields exactly 16 words.
5455
55−The URI contains everything needed to reach someone:
56+Worked example — the key beginning `0x00 0x00 0x01 0x01 ...`:
5657
57−- **Public key** — who they are
58−- **Server host** — a server where they were last seen or any known relay
58+| byte pair | prefix | suffix | word |
59+|-----------|--------|--------|----------|
60+| `00 00` | `doz` | `zod` | `dozzod` |
61+| `01 01` | `mar` | `nec` | `marnec` |
5962
60−Since there is no home server, the server component is a hint, not an authority. The recipient may be connected to a different server by the time a message is sent. The gossip layer resolves current location.
63+Note the prefix at index **124** is **`nis`** (…`ran`, `nis`, `wol`, `mis`…), matching `po.hoon`; it is not `nic`, which is a common transcription error.
6164
62−Identity URIs are designed to be shared out-of-band: copied as text, embedded in links, or scanned as QR codes.
65+Clients accept either form when adding a contact; hex remains canonical everywhere else.
66+
67+Servers are addressed separately. A client stores a single server URL (e.g. `https://relay.example.com`) in local settings; this is purely a transport choice and has nothing to do with identity. Two users on different servers can still talk via federation.
6368
6469### Trust Model
6570
66−**Trust-on-First-Use (TOFU).** The first time a client encounters a public key, it is accepted and cached. Optional out-of-band verification (e.g., comparing fingerprints in person) is supported but not required by the protocol.
71+**Trust-on-First-Use (TOFU).** The first time a client encounters a public key, it is accepted and cached. Optional out-of-band verification (e.g., comparing fingerprints or @p syllables in person) is supported but not required by the protocol.
6772
6873### Contacts
6974
@@ -81,61 +86,123 @@ There is no global directory. Users assign local nicknames to public keys on the
8186| Key agreement | X25519 |
8287| Key derivation | HKDF-SHA256 |
8388| Symmetric cipher | XChaCha20-Poly1305 |
89+| Compression | zstd (pre-encryption) |
8490
8591### Per-Message Encryption
8692
8793Each message is independently encrypted. There are no sessions, no ratchet, and no state between sender and recipient.
8894
95+The wire-visible "envelope" carries only the recipient and the opaque blob. The sender's public key and signature are placed **inside** the AEAD ciphertext, so the server learns nothing about who sent a given message. The signature is bound to the recipient's public key, preventing a captured ciphertext from being replayed against a different recipient.
96+
8997**Encryption flow:**
9098
91991. Generate an ephemeral X25519 keypair:
92100 ```
93101 ephemeral_private, ephemeral_public = x25519_generate()
94102 ```
95−2. Compute the raw shared secret using the ephemeral private key and the recipient's long-term X25519 public key:
103+2. Derive the recipient's X25519 public key from their Ed25519 public key, and compute the raw shared secret:
96104 ```
105+ recipient_x25519_public = ed25519_pk_to_curve25519(recipient_ed25519_public)
97106 raw_secret = x25519(ephemeral_private, recipient_x25519_public)
98107 ```
99−3. Derive the encryption key using HKDF-SHA256:
108+3. Derive the symmetric encryption key using HKDF-SHA256:
100109 ```
101110 key = hkdf_sha256(
102− ikm = raw_secret,
111+ ikm = raw_secret,
103112 salt = ephemeral_public || recipient_x25519_public,
104− info = "skrepka-v1",
113+ info = "skrepka-v2",
105114 len = 32
106115 )
107116 ```
108−4. Generate a random 24-byte nonce:
117+4. zstd-compress the plaintext payload (see §4):
118+ ```
119+ compressed = zstd(plaintext_bytes) // standard zstd frame (embeds content size)
120+ ```
121+5. Sign a domain-separation tag, the recipient pubkey, and the compressed plaintext with padding. The `"skrepka-msg-v2:"` prefix is a domain-separation tag distinguishing message signatures from auth-challenge signatures (which begin with `"skrepka-auth-v1:"`, §6), so a signature produced in one context can never validate in the other. Binding the signature to the recipient prevents the same blob from being replayed against another recipient:
122+ ```
123+ compressed_len = uint32_be(len(compressed))
124+ padding = random_bytes(target_blob_size - unpadded_blob_size)
125+ signature = ed25519_sign(sender_ed25519_private,
126+ "skrepka-msg-v2:" || recipient_ed25519_public || compressed_len || compressed || padding)
109127 ```
110− nonce = random_bytes(24)
128+6. Build the inner buffer that will be encrypted:
111129 ```
112−5. Encrypt the plaintext message:
130+ inner = sender_ed25519_public || signature || compressed_len || compressed || padding
113131 ```
114− ciphertext = xchacha20_poly1305_encrypt(key, nonce, plaintext)
132+7. Generate a random 24-byte nonce and AEAD-encrypt the inner buffer with
133+ associated data binding the envelope header and recipient identity:
115134 ```
116−6. Sign the ciphertext with the sender's Ed25519 private key:
135+ nonce = random_bytes(24)
136+ aad = version_byte || ephemeral_public || nonce || recipient_ed25519_public
137+ ciphertext = xchacha20_poly1305_encrypt(key, nonce, inner, aad)
117138 ```
118− signature = ed25519_sign(sender_ed25519_private, ciphertext)
139+ The AAD authenticates every cleartext field a relay can see (version,
140+ ephemeral public key, nonce) and the recipient's Ed25519 public key.
141+ A relay that swaps the envelope `to` field to a different recipient causes
142+ AEAD decryption to fail at the wrong recipient — the blob is dropped before
143+ any cursor advance, and the original recipient's message stays in the
144+ mailbox. Without AAD, a relay could silently misdeliver messages by
145+ swapping `to`, making the censorship undetectable to both sender and
146+ recipient.
147+8. Emit the on-wire blob:
119148 ```
149+ blob = version_byte || ephemeral_public || nonce || ciphertext
150+ ```
151+ where `version_byte` is `0x02` (see *Cryptographic Versioning* below).
120152
121153**Decryption flow:**
122154
123−1. Verify the signature against the sender's Ed25519 public key.
124−2. Compute the raw shared secret using the recipient's long-term X25519 private key and the ephemeral public key from the message.
125−3. Derive the encryption key using HKDF-SHA256 with the same parameters.
126−4. Decrypt the ciphertext using the derived key and nonce.
155+1. Read the leading version byte (reject the blob if it is not recognized). Split the rest: 32-byte `ephemeral_public`, 24-byte `nonce`, remainder is `ciphertext`.
156+2. Derive the recipient's X25519 private key from the recipient's Ed25519 private key, compute the raw shared secret with `ephemeral_public`, and HKDF-derive the same `key`.
157+3. Reconstruct the AAD: `version_byte || ephemeral_public || nonce || recipient_ed25519_public`. AEAD-decrypt the ciphertext with this AAD to recover the inner buffer.
158+4. Split: 32-byte `sender_ed25519_public`, 64-byte `signature`, 4-byte `compressed_len` (big-endian u32), then `compressed_len` bytes of `compressed` (the remainder is padding).
159+5. Verify the signature over `"skrepka-msg-v2:" || recipient_ed25519_public || inner[96..]` (i.e. the domain-separation tag followed by `compressed_len || compressed || padding`) using `sender_ed25519_public`. Reject the message on failure.
160+6. zstd-decompress the `compressed` bytes (only the `compressed_len`-length slice, not the trailing padding) to recover the plaintext payload.
127161
128162### Encrypted Blob Format
129163
164+On the wire (cleartext, server-visible):
165+
166+```
167+version (1 byte, currently 0x02)
168+ephemeral_x25519_pubkey (32 bytes)
169+nonce (24 bytes)
170+ciphertext (variable, includes 16-byte AEAD tag)
171+```
172+
173+After AEAD decryption, the inner buffer is:
174+
130175```
131−ephemeral_x25519_pubkey (32 bytes)
132−nonce (24 bytes)
133−ciphertext (variable)
134−sender_ed25519_pubkey (32 bytes)
135−signature (64 bytes)
176+sender_ed25519_pubkey (32 bytes)
177+signature (64 bytes)
178+compressed_len (4 bytes, big-endian u32)
179+compressed_plaintext (variable, zstd; exactly compressed_len bytes)
180+padding (variable, random)
136181```
137182
138−Total overhead: 152 bytes per message.
183+The sender's pubkey and signature are inside the AEAD ciphertext: the server never sees them, and only the intended recipient can recover the sender's identity. The `compressed_len` field tells the recipient exactly where the zstd frame ends, so trailing padding bytes are never fed to the decompressor. The minimum blob size is `1 + 32 + 24 + 32 + 64 + 4 + 16 = 173` bytes (346 hex chars). A relay rejects any blob shorter than this with `400 invalid_message`, since it cannot possibly carry a valid envelope.
184+
185+### Length Padding
186+
187+Blob sizes are padded to fixed boundaries so the on-wire length does not reveal the exact compressed (and thus plaintext) size to relays and network observers. The padding is added *inside* the AEAD ciphertext (after the compressed data, before encryption), so the server only sees the padded size.
188+
189+The bucket boundaries are:
190+
191+```
192+256, 512, 1024, 2048, 4096, 8192, 16384, 32768, 65536
193+```
194+
195+A blob is rounded up to the smallest bucket ≥ its unpadded size. Above 65536 bytes, the blob is rounded up to the next multiple of 65536. The padding bytes are randomly generated per message, so two encryptions of the same plaintext produce the same blob size (same bucket) but different blob contents. The on-wire blob is therefore `173 + len(compressed) + len(padding)` bytes, and that padded size is all a relay or network observer sees.
196+
197+> **Compression before encryption leaks plaintext structure.** The payload is zstd-compressed *then* encrypted (steps 4–7), so the ciphertext length is a function of how *compressible* the plaintext was, not just how long it was. XChaCha20-Poly1305 is a stream cipher with no padding: without length padding the blob would be exactly `173 + len(compressed)` bytes, and that number would be visible to every relay and network observer. Version 0x02 adds length padding (see *Length Padding* above), which buckets blob sizes to fixed boundaries so the exact compressed size is hidden.
198+>
199+> Two consequences. First, message length is only ever obscured *upward*: a long but repetitive message can produce a smaller blob than a short random-looking one, and blob size still distinguishes a one-word reply from a pasted document. Second — the more serious one — where an attacker can influence part of the plaintext that is compressed together with a secret, the compressed size reveals whether the two share structure. That is the CRIME/BREACH pattern, and it is a real (if narrow) concern for a format that compresses attacker-influenceable text alongside sensitive text in one frame.
200+>
201+> Skrepka accepts the remaining risk: payloads are small, each message is compressed independently (no cross-message compression context), and there is no adaptive-guessing oracle in the protocol — an attacker cannot make the client re-encrypt a chosen variant of a secret on demand. Implementations must **not** add one (e.g. by compressing several messages, or attacker-supplied and user-supplied text, into a shared frame). Length padding (version 0x02) obscures the exact compressed size by bucketing blob lengths, but does not eliminate the CRIME/BREACH side channel within a single bucket — it only makes the granularity coarser.
202+
203+### Cryptographic Versioning
204+
205+The wire format carries a leading **version byte** (currently `0x02`) on every encrypted blob. A recipient that sees a version it does not recognise MUST reject the blob without attempting further processing (no AEAD decrypt, no key derivation, no decompression) — the reference client returns a decryption error and drops the blob. This ensures a future revision can introduce a new AEAD, KDF, or curve by bumping this byte without risk of misinterpreting an unknown format. Version 0x02 adds AEAD associated data (AAD): the cleartext header `version_byte || ephemeral_public || nonce` and the recipient's Ed25519 public key are authenticated alongside the ciphertext, so a relay that tampers with any envelope field — including swapping the `to` recipient — causes AEAD decryption to fail rather than silently misdelivering the blob. The HKDF `info` string is the fixed constant `"skrepka-v2"` for version 0x02. The unknown-`type` rule (§4) gives forward compatibility for *payload* types; the version byte gives the same for the wire format, AEAD, KDF, and curve choices. A future revision that changes the crypto primitives should bump both the version byte and the HKDF `info` string together — the reference implementation derives the info string from the version to ensure they cannot drift (see `crypto.rs`).
139206
140207---
141208
@@ -143,124 +210,153 @@ Total overhead: 152 bytes per message.
143210
144211### Envelope
145212
146−The envelope is what servers see. It is transmitted in cleartext (not encrypted) so servers can route messages.
213+The envelope is what servers see. It carries only the recipient and the opaque encrypted blob — there is **no `from` field**. The sender's identity is recoverable only by the recipient, from inside the decrypted blob.
147214
148215```json
149216{
150− "to": "<base64url(recipient_ed25519_pubkey)>",
151− "from": "<base64url(sender_ed25519_pubkey)>",
152− "encrypted_blob": "<base64url(encrypted_blob)>",
153− "timestamp": 1679000000
217+ "to": "<hex(recipient_ed25519_pubkey)>",
218+ "encryptedBlob": "<hex(encrypted_blob)>"
154219}
155220```
156221
157−| Field | Type | Description |
158−|------------------|--------|--------------------------------------------------|
159−| `to` | string | Recipient's Ed25519 public key (base64url) |
160−| `from` | string | Sender's Ed25519 public key (base64url) |
161−| `encrypted_blob` | string | The encrypted blob from §3 (base64url) |
162−| `timestamp` | number | Unix timestamp (seconds) when the message was sent |
222+| Field | Type | Description |
223+|-----------------|--------|--------------------------------------------------|
224+| `to` | string | Recipient's Ed25519 public key — exactly 64 lowercase hex chars. The server validates the **format** only (length and charset); it does not verify the decoded bytes form a valid Ed25519 curve point. |
225+| `encryptedBlob` | string | Hex-encoded blob from §3. Must be at least 346 hex chars (173 bytes); the server rejects shorter blobs with `400 invalid_message`. |
163226
164−Servers route based on `to` and `from`. They never inspect `encrypted_blob`.
227+Servers route based on `to`. They cannot inspect `encryptedBlob` and they do not know the sender. The `to` field is format-validated only — the server does not check that it represents a valid Ed25519 curve point, so blobs addressed to non-existent keys are stored and forwarded normally (the intended recipient simply cannot decrypt them). A message whose `to` matches the authenticated sender's own pubkey is rejected with `400 self_send` (§6, *POST /messages*).
165228
166229### Plaintext Payload
167230
168−After decryption, the plaintext is a JSON object with a `type` field:
231+After decryption (and zstd decompression), the plaintext is a UTF-8 JSON object with a `type` field:
169232
170233```json
171234{
172235 "type": "<message_type>",
173− "id": "<unique_message_id>",
174− "timestamp": 1679000000,
236+ "ts": 1679000000000,
175237 ...
176238}
177239```
178240
179−The `id` field is a client-generated UUID v4. Clients MUST deduplicate incoming messages by `id` — the same message may arrive more than once due to presence fan-out (see §7).
180−
181−Clients MUST silently ignore message types they do not recognize. This allows newer clients to introduce new types without breaking older ones.
241+- `type` and `ts` are present on every payload. `ts` is the sender's wall-clock at send time, in **milliseconds** since the Unix epoch.
242+- `id` is a client-generated unique ID (e.g. UUID v4) carried by `text` messages only. Clients deduplicate incoming `text` messages by `id`. `delivery.ack` and `profile` payloads do not carry an `id`.
243+- Clients MUST silently drop message types they do not recognize — no error is surfaced to the sender, and the blob is treated as if it were not there. This allows newer clients to introduce new types without breaking older ones.
182244
183245### Message Types
184246
185−| Type | Description | Additional Fields |
186−|-------------------|------------------------------------------|-------------------------------------------------|
187−| `text` | A text message | `body` (string) |
188−| `media` | An inline media attachment | `media_type` (MIME), `filename`, `data` (base64)|
189−| `group.invite` | Invite to a group (see §8) | `group_id`, `group_name`, `members` |
190−| `group.leave` | Leave a group | `group_id` |
191−| `group.update` | Update group metadata | `group_id`, `group_name`, `members` |
192−| `delivery.ack` | Delivery acknowledgement | `ack_ids` (array of message IDs) |
193−| `read` | Read receipt | `read_ids` (array of message IDs) |
194−| `profile` | Share display name and/or photo | `display_name` (string), `photo` (base64, optional) |
247+The current implementation defines three plaintext message types:
248+
249+| Type | Description | Additional Fields |
250+|-----------------|------------------------------------------|------------------------------------------------|
251+| `text` | A text message | `body` (string) |
252+| `delivery.ack` | Sender-side delivery confirmation | `ack_ids` (array of message IDs) |
253+| `profile` | Share display name, bio, and/or photo | `display_name`, `bio` (strings), `photo` (base64-encoded image, optional) |
254+
255+Future message types (media attachments, read receipts, group messages) are not part of this revision.
256+
257+### Payload Size Limits
258+
259+A decrypted payload is attacker-controlled: a peer can put any value in any field. The reference client enforces the following caps and silently drops a payload that exceeds any of them (treated identically to an unknown type). An independent client SHOULD enforce the same caps, or it risks storing, rendering, and re-transmitting unbounded attacker-supplied data.
260+
261+| Field | Cap | Rationale |
262+|-------------------|-------------|--------------------------------------------------------|
263+| `text.body` | 64 KiB | A text body is never legitimately this long. |
264+| `text.id` | 128 chars | IDs are UUIDs; 128 chars is generous. |
265+| `profile.display_name` | 128 chars (Unicode) | A display name is not a bio. |
266+| `profile.bio` | 1024 chars (Unicode) | Enough for a paragraph. |
267+| `profile.photo` | 64 KiB (base64) | A 256px JPEG is ~10-30 KiB; 64 KiB is headroom. |
268+| `delivery.ack.ack_ids` | 1024 entries | Bounds the O(n·m) scan a peer can dictate. |
195269
196−Media files are embedded inline in the encrypted payload as base64-encoded `data`. There is no separate media hosting or upload endpoint.
270+The caps on `display_name` and `bio` are measured in Unicode characters (not bytes), so a multi-byte emoji costs the same as an ASCII letter. A payload sitting exactly at the cap is accepted; the bound is inclusive.
197271
198272### Profiles
199273
200−Users can share a display name and photo with contacts by sending a `profile` message. This is sent as a regular encrypted message — servers never see profile data.
274+Users share a display name, bio, and photo with contacts by sending a `profile` message. This is a regular encrypted message — servers never see profile data.
201275
202276```json
203277{
204278 "type": "profile",
205− "id": "msg_456",
206− "timestamp": 1679000000,
279+ "ts": 1679000000000,
207280 "display_name": "Alice",
281+ "bio": "writing things",
208282 "photo": "<base64(jpeg_data)>"
209283}
210284```
211285
212−Clients SHOULD send a `profile` message to a contact on first interaction and whenever the user updates their name or photo. The recipient's client caches the profile locally. The `photo` field is optional and MAY be omitted to update only the display name.
286+Clients SHOULD send a `profile` message to a contact on first interaction and whenever the user updates their name, bio, or photo. The recipient's client caches the profile locally. `photo` is optional and MAY be omitted.
287+
288+Because `profile` messages carry no `id`, they are not deduplicated, and a captured `profile` blob can be replayed to the same recipient (see §10, *Same-recipient replay*). To prevent an old profile from clobbering a newer one, clients SHOULD ignore an incoming `profile` whose `ts` is older than the `ts` of the last profile already stored for that contact. **The reference client enforces this**: it records the `ts` of the most recent profile accepted per contact and drops any incoming `profile` that predates it, so a replayed stale profile cannot roll a contact's cached name, bio, or photo back. A client that skipped the check would be vulnerable to exactly that rollback.
289+
290+### Delivery Acks
291+
292+When a recipient successfully decrypts an incoming `text` message, the recipient's client SHOULD send a `delivery.ack` message back to the sender:
293+
294+```json
295+{
296+ "type": "delivery.ack",
297+ "ack_ids": ["msg_123", "msg_124"],
298+ "ts": 1679000000000
299+}
300+```
301+
302+This is the only delivery-confirmation channel in the protocol: the server itself does **not** report delivery status to senders. See §9 for the full flow.
213303
214304### Blocking
215305
216−Blocking is client-side only. A blocked sender's messages are still received and decrypted but are not displayed to the user. The protocol does not provide a mechanism to tell a server to reject messages from a specific pubkey.
306+Blocking is client-side only. A blocked sender's messages are decrypted to recover the sender identity (which lives inside the AEAD ciphertext, §3), then dropped without storage, display, or ack — the reference client does not store, display, or ack them. Decryption is necessary because the sender identity is inside the AEAD ciphertext; the decrypted content is never persisted or shown. The protocol does not provide a mechanism to tell a server to reject messages from a specific pubkey. Blocking also cuts the peer off in the other direction: the reference client refuses to send new messages to a blocked contact and drops any queued outgoing messages (including delivery acks) for them when the block is applied.
217307
218308---
219309
220310## 5. Transport
221311
222−All communication uses **plain HTTP**.
312+All communication uses **plain HTTP**, served over TLS in production.
223313
224314| Direction | Mechanism |
225315|--------------------|----------------------|
226316| Client → Server | HTTP POST |
227−| Server → Client | Long polling |
317+| Server → Client | Long polling (POST) |
228318| Server → Server | HTTP POST |
229319
230320**Why HTTP + long polling:**
231321- No special protocols. Works through proxies, load balancers, and CDNs.
232−- Long polling provides near-real-time delivery over plain HTTP request/response cycles.
322+- Long polling provides near-real-time delivery over plain request/response cycles.
233323- No persistent connections, no WebSocket upgrade, no gRPC toolchain, no raw TCP.
234324
235325### Server Discovery
236326
237−New clients discover servers via a well-known URL:
238−
239−```
240−https://skrepka.org/servers.json
241−```
242−
243−The response is a JSON array of server hostnames:
327+Skrepka has no central directory. Clients are configured with a single server URL (stored locally) and stay on it until the user changes it. The repository ships a `servers.json` file listing public relays as a convenience:
244328
245329```json
246−{
247− "servers": [
248− { "host": "relay1.example.com", "region": "eu" },
249− { "host": "relay2.example.com", "region": "us" },
250− { "host": "relay3.example.com", "region": "ap" }
251− ]
252−}
330+[
331+ "https://1.skrepka.lol",
332+ "https://2.skrepka.lol",
333+ "https://3.skrepka.lol"
334+]
253335```
254336
255−The client picks a server from the list (e.g., by latency or region preference) and connects. This list is a bootstrap mechanism only — once connected, the client may learn about other servers through the mesh.
337+This file is a static suggestion, not a federation directory. Federation between servers is configured server-side, independently of any client-facing list: a relay reaches the mesh by being given **seed peers** (`--seedPeers=host1,host2`), which it gossips to unconditionally until presence gossip teaches it the rest of the mesh. A relay with no seeds and no inbound gossip stays isolated — clients on it can still message each other, but not users on other relays. See §7 for the bootstrap mechanism.
256338
257339### Content Type
258340
259−All request and response bodies use `application/json`.
341+All request and response bodies use `application/json`. The following encoding rules apply to every JSON body (request and response):
342+
343+- **Encoding:** UTF-8. Implementations MUST NOT use UTF-16 or UTF-32.
344+- **Key ordering:** Object keys are unordered. A sender may emit them in any order; a receiver MUST NOT depend on key ordering for correctness.
345+- **Whitespace:** Inter-token whitespace (spaces, tabs, newlines) is allowed and does not affect semantics. Pretty-printed JSON is valid.
346+- **Duplicate keys:** If an object contains the same key more than once, behavior is undefined. Implementations SHOULD avoid producing duplicates and MAY reject or retain only the first value for a repeated key.
347+
348+### Federation Transport
349+
350+Servers contact peers over `https://<peer-host>`. Federation traffic carries no bearer tokens — federation endpoints are open to any caller, with abuse-related defenses (SSRF egress filtering, presence-gated forwarding, per-peer linear backoff) handled internally. Those defenses bound abuse; they do **not** authenticate the peer, and an unauthenticated caller can both redirect a victim's queued mail (via `/federation/gossip`) and inject blobs into an online recipient's mailbox (via `/federation/forward`). Both are accepted limitations of v0.1 — see §7 for the endpoints and §10 for the security analysis.
260351
261352### Message Size Limit
262353
263−The maximum size of an encrypted blob is **20 MB**. Servers MUST reject messages exceeding this limit. This applies to the entire encrypted payload, including inline media.
354+The on-wire `encryptedBlob` (hex) is capped at **40 MiB** (about 20 MiB of binary payload). A blob over the cap is rejected at validation as a malformed message (`400`), not with `413`.
355+
356+Two limits apply to a `/messages` request, independently of the per-blob cap:
357+
358+- **Batch count** — at most 100 messages per request (`413 batch_too_large`).
359+- **Total request body** — the runtime enforces a single HTTP body-size cap (`--http-max-body-bytes`, returning `413` with no JSON error code). Operators **must** set this above `maxBlobLen` plus the JSON envelope — the reference deployment uses `42M` — otherwise the runtime's default 16 MiB cap would reject a maximum-size blob before the per-blob `400` check is reached. Because this caps the whole body, a batch cannot smuggle 100 × 40 MiB: the total payload across all messages in one request is bounded by this cap.
264360
265361---
266362
@@ -273,189 +369,134 @@ When a client connects, it proves ownership of its keypair:
2733691. Client sends its public key:
274370 ```
275371 POST /auth/challenge
276− { "pubkey": "<base64url(ed25519_pubkey)>" }
372+ { "pubkey": "<hex(ed25519_pubkey)>" }
277373 ```
278374
279−2. Server responds with a random challenge (valid for 60 seconds):
375+2. Server responds with a random challenge string (valid for 60 s):
280376 ```json
281− { "challenge": "<base64url(random_32_bytes)>" }
377+ { "challenge": "<random_hex>", "expiresAt": 1679003660000 }
282378 ```
379+ The challenge is a lowercase hex string of at least 32 chars (128 bits of entropy). The reference server uses 48 hex chars (192 bits). The challenge MUST be unique per challenge request and consumed on first use (verified).
283380
284−3. Client signs the challenge and sends it back:
381+3. Client signs the **UTF-8 bytes of `"skrepka-auth-v1:" + server_host + ":" + challenge`** with its Ed25519 private key and submits. `server_host` is the bare lowercased hostname of the server the client dialed (no scheme, no port, no trailing dot). For IPv6 literals, the host must include square brackets (e.g. `[::1]`), matching the URL host syntax — the server's `serverHost` configuration must also include brackets for IPv6. The `skrepka-auth-v1:` prefix is a domain-separation tag distinguishing auth signatures from message signatures (which begin with `"skrepka-msg-v2:"` and sign `recipientPub ++ compressed`, §3):
285382 ```
286383 POST /auth/verify
287384 {
288− "pubkey": "<base64url(ed25519_pubkey)>",
289− "challenge": "<base64url(challenge)>",
290− "signature": "<base64url(ed25519_sign(private_key, challenge))>"
385+ "pubkey": "<hex(ed25519_pubkey)>",
386+ "challenge": "<random_hex>",
387+ "signature": "<hex(ed25519_sign(private_key, utf8(\"skrepka-auth-v1:\" + server_host + \":\" + challenge)))>",
388+ "revokeOthers": false
291389 }
292390 ```
391+ The server verifies against its own configured hostname (`serverHost`, port stripped). Binding the signature to the target host prevents a malicious or relay server from forwarding a challenge it obtained from a *different* server and replaying the client's signature there to impersonate the client (§10, *Unauthenticated session relay*).
392+ Setting `revokeOthers: true` invalidates every other live session for this pubkey (useful for "log out other devices"). Revocation is **immediate** (within the atomic block that processes the verify) and a revoked session receives `401 unauthorized` on its next request. Note that `revokeOthers` revokes **sessions only**, not outstanding challenges — a challenge issued before the `revokeOthers` call remains valid for its 60-second window. (The reference implementation has been fixed to also drop outstanding challenges for the pubkey on `revokeOthers: true`; independent implementations SHOULD do the same.)
293393
2943944. Server verifies the signature. On success, returns a session token valid for **1 hour**:
295395 ```json
296− { "token": "<session_token>", "expires_at": 1679003600 }
396+ { "token": "<session_token>", "expiresAt": 1679003600000 }
297397 ```
298398
299−The session token is included in all subsequent requests as a bearer token:
399+The session token is included in subsequent authenticated requests as a bearer token:
300400```
301401Authorization: Bearer <session_token>
302402```
303403
304−When a token expires, the server responds with `401`. The client re-authenticates by repeating the challenge-response flow. Servers SHOULD broadcast an `offline` gossip event only if the client does not re-authenticate within a grace period (e.g., 60 seconds).
404+When the server trusts proxy headers (`trustForwardedFor`, on by default), sessions are bound to the client's source IP — the last `X-Forwarded-For` hop. A later request from a different IP is rejected as `unauthorized`. If proxy-header trust is disabled, or no `X-Forwarded-For` header is present, the session is not IP-bound and this check is skipped.
305405
306−### Endpoints
406+> **IP binding and mobile clients.** IP binding means a session does not survive a change of source address. In the reference deployment (Caddy in front, `trustForwardedFor` on) a phone that moves between Wi-Fi and cellular — or is NAT-rebound by its carrier — comes back on a new IP, so its next `/poll` or `/messages` gets `401 unauthorized` even though the token has not expired. This is expected: a client MUST treat `401` on any authenticated request as "re-run challenge/verify", not as a fatal error, and retry the request with the fresh token. The cost is one extra round trip per network change; the benefit is that a stolen bearer token is not usable from another network. Operators who prefer sessions that roam can run with `--trustForwardedFor=False`, which leaves sessions un-bound (the check is skipped when no trusted IP is available).
307407
308−#### `POST /auth/challenge` — Request auth challenge
408+When a token expires, the server responds with `401`. The client re-authenticates by repeating the challenge-response flow.
309409
310−**Request:**
311−```json
312−{ "pubkey": "<base64url(ed25519_pubkey)>" }
313−```
410+> **Channel binding.** The signed payload includes the target server's hostname under the `skrepka-auth-v1:` domain-separation tag (step 3). Because the client binds to the host it actually dialed and the server verifies against its own `serverHost`, a relay server cannot forward a challenge it obtained from a *different* server and replay the resulting signature to impersonate the client there: the client's signature commits to the relay's hostname, not the victim server's, so verification at the victim fails. This binding is a **breaking change** — client and server must agree on the signed payload. The host comparison is on the bare hostname only (port and scheme excluded), so the same identity authenticates regardless of the port a server listens on.
314411
315−**Response:**
316−```json
317−{ "challenge": "<base64url(random_32_bytes)>" }
318−```
319−
320−#### `POST /auth/verify` — Complete auth
321−
322−**Request:**
323−```json
324−{
325− "pubkey": "<base64url(ed25519_pubkey)>",
326− "challenge": "<base64url(challenge)>",
327− "signature": "<base64url(signature)>"
328−}
329−```
330−
331−**Response:**
332−```json
333−{ "token": "<session_token>", "expires_at": 1679003600 }
334−```
412+A successful `/auth/verify` also installs the pubkey in the local presence table and broadcasts an `online` gossip event to known peers (§7).
335413
336414### Error Responses
337415
338−All endpoints return errors in a consistent format:
416+Errors return a non-2xx HTTP status with a body of:
339417
340418```json
341−{
342− "error": "<error_code>",
343− "message": "<human-readable description>"
344−}
419+{ "error": "<code>" }
345420```
346421
347−| HTTP Status | Error Code | Meaning |
348−|-------------|----------------------|--------------------------------------|
349−| 400 | `bad_request` | Malformed request body |
350−| 401 | `unauthorized` | Missing, invalid, or expired token |
351−| 403 | `challenge_expired` | Auth challenge has expired (>60s) |
352−| 404 | `not_found` | Unknown pubkey or resource |
353−| 413 | `payload_too_large` | Encrypted blob exceeds 20 MB |
354−| 429 | `rate_limited` | Too many requests |
355−| 500 | `internal_error` | Server error |
422+| HTTP Status | Error Code | Meaning |
423+|-------------|-----------------------|--------------------------------------|
424+| 400 | `self_send` | A message in `/messages` is addressed to the sender |
425+| 400 | `invalid_message` | A message in `/messages` has a malformed `to` or oversized/invalid `encryptedBlob` |
426+| 400 | `invalid_request` | Malformed federation request: `fromServer` equals this server, fails the SSRF deny-list, or the event count exceeds the cap |
427+| 401 | `invalid` | `/auth/verify` failed (bad signature, or an expired/wrong-IP challenge) |
428+| 401 | `unauthorized` | `/poll` or `/messages` with a missing, invalid, or expired token, or a request from a different IP |
429+| 403 | `federation_disabled` | A `/federation/*` endpoint was called while federation is disabled |
430+| 404 | `no_presence` | Federated forward arrived for a recipient with no live local session |
431+| 413 | `batch_too_large` | A `/messages` batch exceeds the 100-message cap. A bare `413` with no JSON body (the runtime's HTTP body-size cap, `--http-max-body-bytes`) is also possible when the total request body exceeds the operator-configured limit; clients MUST treat a bodyless `413` the same as `batch_too_large` for retry purposes. Operators **must** set `--http-max-body-bytes` above `maxBlobLen` plus the JSON envelope (the reference deployment uses `42M`), otherwise the runtime's default 16 MiB cap rejects a maximum-size blob before the per-blob `400` check is reached. |
432+| 429 | (HTTP only) | Per-route rate limit exceeded |
433+| 503 | `capacity` | Server-side resource cap reached |
434+
435+> **Timing side-channel on token comparison (known gap).** The reference server compares the presented bearer token against each stored session token with plain string equality, which short-circuits on the first differing byte and so leaks, through response timing, how long a correct prefix an attacker guessed. The 192-bit token and the per-IP rate limit on `/poll` and `/messages` bound the attack — a blind guess is infeasible, and the sample count needed to resolve a per-byte timing difference across a network is large — but they do not eliminate it. A constant-time comparison is the correct fix; the reference implementation is blocked on the absence of such a primitive in its runtime. Implementations on platforms that offer one (`crypto_verify`, `subtle`, `hmac.compare_digest`, …) SHOULD use it.
356436
357−#### `GET /poll` — Long poll for new events
437+### `POST /poll` — Long poll for new events
358438
359−The client makes a blocking GET request. The server holds the connection open until new events are available or a timeout is reached.
439+The client makes a blocking POST. The server holds the connection open until new events are available or the long-poll timeout (25 s) elapses.
360440
361441**Headers:** `Authorization: Bearer <token>`
362442
363−**Query parameters:**
443+**Request:**
444+```json
445+{ "cursor": 0 }
446+```
364447
365−| Parameter | Type | Description |
366−|--------------|--------|--------------------------------------------------|
367−| `timeout` | number | Max seconds to wait (default: 30, max: 60) |
368−| `after` | string | Cursor from the previous poll response (optional) |
448+`cursor` is the maximum `receivedAt` value the client has already seen. It MUST be a non-negative integer. `0` means "first poll" — no messages have been acked, so the server returns all pending events. Negative cursors are clamped to `0` by the server.
369449
370450**Response:**
371451```json
372452{
373453 "events": [
374− {
375− "type": "message",
376− "data": { "to": "...", "from": "...", "encrypted_blob": "...", "timestamp": 1679000000 },
377− "id": "evt_001"
378− },
379− {
380− "type": "ack",
381− "data": { "message_ids": ["msg_abc123"] },
382− "id": "evt_002"
383− }
454+ { "encryptedBlob": "<hex>" }
384455 ],
385− "cursor": "evt_002"
456+ "cursor": 1679000000123
386457}
387458```
388459
389−- If events are available immediately, the server responds right away.
390−- If no events are available, the server holds the connection until one arrives or `timeout` expires.
391−- On timeout with no events, the server returns `{ "events": [], "cursor": "..." }`.
392−- The client should immediately issue the next poll after receiving a response.
393−
394−**Event types:**
395−
396−| Type | Data |
397−|------------|-------------------------------------|
398−| `message` | Envelope JSON (see §4) |
399−| `ack` | `{ "message_ids": ["id1", "id2"] }`|
460+- `cursor` is a server-side **strictly-monotonic sequence**, seeded from the wall-clock millisecond at assignment but bumped to `previous + 1` whenever messages arrive within the same millisecond. Two messages therefore never share a `receivedAt`, so advancing the cursor past one message can never silently drop another. Treat it as an opaque checkpoint, not a clock.
461+- The server clamps the supplied cursor to `max(0, min(max(t, curSeq), cursor))`, where `t` is the current wall-clock millisecond and `curSeq` is the last assigned sequence — note the ceiling is `max(t, curSeq)`, not just `curSeq`, so under idle the clamp allows acking up to the current wall-clock, while under sustained bursts (where the sequence has run ahead of the clock) it still refuses to ack beyond what has actually been issued.
462+- Advancing past a message acts as an **implicit ack**: when the next poll arrives with a `cursor` greater than or equal to a stored message's `receivedAt`, the server drops the stored message **and any pending federation forwards for it**.
463+- If events are available immediately, the server responds right away. Otherwise it parks the connection on a row-level wait against the mailbox and returns when a new matching message lands or after 25 s, whichever comes first.
464+- An empty page (`events: []`) is returned on timeout, with the cursor echoed back.
465+- A single response is capped at 50 events; the client should poll again immediately after receiving any response.
400466
401−#### `POST /messages` — Send a message
467+### `POST /messages` — Send messages
402468
403469**Headers:** `Authorization: Bearer <token>`
404470
471+Sends are **batched** and all-or-nothing. Up to 100 messages per request:
472+
405473**Request:**
406474```json
407475{
408− "to": "<base64url(recipient_ed25519_pubkey)>",
409− "encrypted_blob": "<base64url(encrypted_blob)>",
410− "timestamp": 1679000000
476+ "messages": [
477+ { "to": "<hex(recipient_pubkey)>", "encryptedBlob": "<hex>" }
478+ ]
411479}
412480```
413481
414−The server fills in `from` from the authenticated session.
415−
416482**Response:**
417−```json
418−{
419− "status": "delivered" | "queued",
420− "message_id": "<server_assigned_id>"
421−}
422−```
483+- `200 {}` on success — every message in the batch has been enqueued for delivery (locally, via federation, or both).
484+- `400 { "error": "self_send" }` if any message targets the authenticated pubkey.
485+- `401 / 429 / 503` per the table above.
423486
424−- `delivered` — recipient is online, message was forwarded.
425−- `queued` — recipient is offline, message is queued for later delivery.
487+The server learns the sender from the bearer token, uses it only to reject self-sends and to enforce per-session rate limits, and does **not** persist the sender alongside the stored message.
426488
427−#### `POST /messages/ack` — Acknowledge receipt
489+Whether a recipient is currently reachable, offline, or known via federation is internal to the server. The sender's UI learns "they got it" only via a returning `delivery.ack` (§4) from the recipient — there is no server-issued delivery status.
428490
429−**Headers:** `Authorization: Bearer <token>`
491+There is **no `/messages/ack` endpoint**: poll cursor advance is the only acknowledgement signal a recipient sends to the server.
430492
431−**Request:**
432−```json
433−{ "message_ids": ["id1", "id2"] }
434−```
493+### Endpoints Not Present
435494
436−**Response:**
437−```json
438−{ "ok": true }
439−```
440−
441−The server deletes acknowledged messages from its queue and forwards the ACK to the sender's server.
442−
443−#### `GET /lookup/:pubkey` — Look up a user's presence
444−
445−**Response (online):**
446−```json
447−{
448− "online": true,
449− "server": "other-server.example.com"
450−}
451−```
495+The following endpoints exist in earlier drafts of this spec but are **not** implemented:
452496
453−**Response (offline):**
454−```json
455−{
456− "online": false
457−}
458−```
497+- `POST /messages/ack` — replaced by implicit ack on poll cursor advance.
498+- `GET /lookup/:pubkey` — presence information is internal; clients have no way to query it.
499+- `POST /federation/ack` — federation cleanup is driven by the receiving peer's poll-ack, not a back-channel.
459500
460501---
461502
@@ -463,141 +504,107 @@ The server deletes acknowledged messages from its queue and forwards the ACK to
463504
464505### Mesh Formation
465506
466−Federation is open. A server joins the mesh by connecting to one or more known peers. No approval is required.
467−
468−Server operators configure a list of initial peers. When a server starts, it announces itself to its peers, which propagate the announcement. Over time, each server builds a view of the full mesh.
507+Federation is open and **off by default** (`federationEnabled = False`); an operator opts in explicitly. There is no central registry.
469508
470−Operators may maintain an optional **blocklist** of server hostnames or IPs to refuse connections from.
509+A server joins the mesh in two steps:
471510
472−### Gossip (Presence Announcements)
511+1. **Identity.** It is configured with its own public hostname (`serverHost`). This is the name it puts in the `fromServer` field of every gossip it sends, and the name peers must be able to resolve to reach it. It must pass the deny-list below, so the default `localhost` cannot federate.
512+2. **Bootstrap.** It is configured with one or more **seed peers** (`seedPeers`, a comma-separated host list). These are gossiped to unconditionally, alongside any peers already known from presence.
473513
474−When a user connects to or disconnects from a server, the server broadcasts a presence update to all known peers:
514+Seeding is what makes the mesh formable at all. A relay otherwise learns of a peer *only* by receiving gossip from it — presence rows remember the server that announced each key — so two fresh relays that have never heard of each other both begin with an empty gossip target set and neither ever speaks first. Seeding **one** side of a pair is sufficient: the first gossip carries `fromServer`, so the seed learns of the sender and gossips back from then on. Seed peers are gossip *targets* only; they are not written into the presence table (a presence row is keyed by the pubkey it announces, and a seed is just a hostname), so a seed that never answers costs nothing but a periodic failed request under the standard per-peer backoff.
475515
476−**Online:**
477−```json
478−{
479− "type": "online",
480− "pubkey": "<base64url(ed25519_pubkey)>",
481− "server": "this-server.example.com",
482− "timestamp": 1679000000,
483− "ttl": 3600
484−}
516+```sh
517+# relay A, seeded with relay B — B needs no seed of its own to reach A
518+skrepka-server --serverHost=a.example.com --federationEnabled=true --seedPeers=b.example.com
485519```
486520
487−**Offline:**
488−```json
489−{
490− "type": "offline",
491− "pubkey": "<base64url(ed25519_pubkey)>",
492− "server": "this-server.example.com",
493− "timestamp": 1679000000
494−}
495−```
521+> **Implementation note (reference server).** `serverHost`, `federationEnabled` and `seedPeers` are configuration, and the reference relay exposes them as `--name=value` settings. As of Knot `2026.6.26.1947` the runtime *accepts but silently ignores* these flags at startup — they currently take effect only when passed to `knot build` — so a relay configured purely on the command line will run with the compiled-in defaults (`localhost`, federation off, no seeds) and quietly fail to federate. Verify with the startup log, which prints the federation state and seed list it actually loaded.
496522
497−Each server maintains a **presence table** — a mapping of public keys to a **set of servers** where they are currently connected. A single pubkey may appear at multiple servers simultaneously (e.g., multiple devices with different keypairs connecting independently, or stale gossip). Presence entries expire after `ttl` seconds if not refreshed.
523+Operators may apply an inbound blocklist; outbound federation is filtered through a built-in **SSRF deny-list** that rejects:
498524
499−Gossip messages are forwarded to peers with a decrementing hop counter to prevent infinite propagation.
525+- `localhost`, and the `.localhost`, `.local`, `.internal`, `.arpa`, `.onion` suffixes
526+- Private and special-use IPv4 ranges: `0/8`, `10/8`, `100.64/10` (CGNAT), `127.0.0.0/8`, `169.254/16` (link-local), `172.16/12`, `192.0.2/24` and `203.0.113/24` (TEST-NET), `192.168/16`, `198.18/15` (benchmarking), and everything from `224/4` upward (multicast + reserved)
527+- Obfuscated IPv4 literals: bare integer/"dword" form (e.g. `2130706433`), `0x`-prefixed hex, and dotted forms with a leading-zero (octal) octet (e.g. `0177.0.0.1`)
528+- IPv6 literals — any host containing more than one `:` (covering `::`, `::1`, link-local, ULA, and global addresses) and any bracketed `[…]` form
529+- The empty string, and any host beginning with `.` or `:`
530+- Anything containing characters outside `[a-z0-9-.:]`
500531
501−### Gossip Endpoint
532+This applies both to outbound `fetch` calls and to the `fromServer` field on inbound federation requests.
502533
503−```
504−POST /federation/gossip
505−```
534+### Gossip (Presence Announcements)
535+
536+When a user authenticates or polls, the server marks them locally online and broadcasts an `online` event. When a session expires or the polled presence row times out, an `offline` event is sent.
537+
538+**Event format (one entry per pubkey):**
506539
507−**Request:**
508540```json
509−{
510− "events": [
511− { "type": "online", "pubkey": "...", "server": "...", "timestamp": ..., "ttl": ... },
512− { "type": "offline", "pubkey": "...", "server": "...", "timestamp": ... }
513− ],
514− "hops_remaining": 3
515−}
541+{ "eventType": "online", "pubkey": "<hex>" }
542+{ "eventType": "offline", "pubkey": "<hex>" }
516543```
517544
518−### Message Forwarding
545+Events carry no timestamp, no server name, and no TTL on the wire. Each receiver anchors a local TTL (90 minutes by default) at the moment of receipt; the originating server is taken from the transport-level `fromServer` field, not the event body.
519546
520−When a server receives a message for a recipient, it checks the presence table. If the pubkey appears at multiple servers, the message is forwarded to **all** of them. This ensures delivery even with stale gossip or multi-server presence.
547+Gossip is **single-hop**: when a server receives a gossip batch, it updates its presence table and (for newly-online keys) forwards any locally-queued messages to the originator, but it does **not** propagate the events to its own peers. There is no hop counter.
521548
522−```
523−POST /federation/forward
524−```
549+A server may hold multiple presence rows for the same pubkey — one per peer that has reported the pubkey online — to handle multi-device or in-flight handoff between servers.
550+
551+### `POST /federation/gossip` — Ingest peer presence events
525552
526553**Request:**
527554```json
528555{
529− "to": "<base64url(recipient_ed25519_pubkey)>",
530− "from": "<base64url(sender_ed25519_pubkey)>",
531− "encrypted_blob": "<base64url(encrypted_blob)>",
532− "timestamp": 1679000000,
533− "origin_server": "sender-server.example.com",
534− "message_id": "<id>"
556+ "events": [
557+ { "eventType": "online", "pubkey": "<hex>" },
558+ { "eventType": "offline", "pubkey": "<hex>" }
559+ ],
560+ "fromServer": "peer.example.com"
535561}
536562```
537563
538−The receiving server delivers the message to the connected client on its next poll.
539−
540−### ACK Forwarding
564+- Up to 100 events per request.
565+- Rejected with `400 invalid_request` if `fromServer` equals this server's identity, fails the SSRF deny-list, or the event count exceeds the cap.
566+- `online` events for keys not previously seen at `fromServer` trigger an immediate forward sweep: any locally-queued messages addressed to those keys are scheduled for `/federation/forward`.
541567
542−When a recipient ACKs a message, the ACK is forwarded back to the origin server so it can delete the queued blob:
568+> **Unauthenticated — and this endpoint steers delivery.** `/federation/gossip` accepts any caller, and the `fromServer` field is self-asserted. Because an `online` event causes the receiving server to forward that pubkey's queued mail to `fromServer`, anyone who can reach a relay can *redirect* a victim's inbound ciphertext to a host of their choosing by announcing `{ "eventType": "online", "pubkey": <victim>, "fromServer": <attacker-host> }`. See §10, *Open federation — gossip redirect*.
543569
544−```
545−POST /federation/ack
546−```
570+### `POST /federation/forward` — Receive a federated message
547571
548572**Request:**
549573```json
550574{
551− "message_ids": ["id1", "id2"],
552− "origin_server": "sender-server.example.com"
575+ "toKey": "<hex(recipient_pubkey)>",
576+ "encryptedBlob": "<hex>"
553577}
554578```
555579
556−---
580+There is no `from`, no origin-server hint, and no sender timestamp — the receiving server simply records the blob for the recipient.
557581
558−## 8. Group Messaging
582+The receiver **requires the recipient to be currently locally online** (i.e. have an unexpired local presence row). If not, it returns `404 no_presence` and the origin retries (see below) or holds the message in its own mailbox.
559583
560−Groups are a **client-side concept**. Servers are entirely unaware of groups — they see only individual messages between pairs of public keys.
584+> **Unauthenticated — mailbox injection is possible.** `/federation/forward` accepts any caller: there is no bearer token, no peer signature, and nothing ties the request to a server the receiver actually federates with. Any host that can reach a relay can therefore inject arbitrary blobs into the mailbox of any recipient who is currently locally online. The only bounds are the per-source-IP rate limit on the route (`forwardLimit`), the SSRF deny-list (which constrains where a relay will *send*, not who may call it), and the `no_presence` gate (which limits injection to online recipients). Injected junk is undecryptable, so a client drops it silently on ingest — but it still occupies the recipient's poll stream and the relay's mailbox until the cursor advances past it. This is an accepted limitation of v0.1; see §10, *Open federation — forward injection*. Peer authentication is the intended fix.
561585
562−### Group Structure
586+### Forward Retries
563587
564−A group is defined locally on each member's device:
588+Forwards that fail (network error or `no_presence`) remain queued at the origin and are retried by a background loop:
565589
566−```json
567−{
568− "group_id": "<random_uuid>",
569− "group_name": "Weekend Plans",
570− "members": [
571− "<base64url(pubkey_alice)>",
572− "<base64url(pubkey_bob)>",
573− "<base64url(pubkey_carol)>"
574− ]
575−}
576−```
590+- Linear per-peer backoff: `retryBackoffBase × failures`, capped at `retryBackoffMax` (defaults: base 30 s, cap 8 min).
591+- Up to `maxForwardRetries` attempts (default 10), then the forward is dropped.
592+- Per-peer failure counters age out after 24 h, after which the next attempt is treated as fresh.
593+- A single successful call to a peer clears its failure counter (no half-open state).
577594
578−### Sending to a Group
595+When the recipient finally polls a server holding their mail (local or federated), the implicit ack on cursor advance flushes the stored blob and prunes any remaining outbound forwards for it.
579596
580−When a user sends a message to a group, the client **fans out** — it encrypts and sends the message individually to each group member. Each fan-out message includes the `group_id` in the plaintext payload so the recipient's client can display it in the correct conversation:
581−
582−```json
583−{
584− "type": "text",
585− "id": "msg_123",
586− "timestamp": 1679000000,
587− "group_id": "550e8400-e29b-41d4-a716-446655440000",
588− "body": "See you Saturday!"
589−}
590−```
597+### What's NOT Federated
591598
592−From the server's perspective, a group message of N members is N separate 1:1 messages.
599+- **Message ack roundtrips.** There is no `/federation/ack`; the origin server learns "the message landed" by observing that its outbound forward succeeded and that no other forwards for the same blob remain pending.
600+- **Multi-hop gossip.** Each server only sees the presence events of peers it directly federates with.
601+- **Cross-server presence queries.** Servers do not ask each other "is this key online?" — they wait for a gossip update.
593602
594−### Membership Management
603+---
595604
596−- **Invite:** Send a `group.invite` message to the new member containing the group ID, name, and member list.
597−- **Leave:** Send a `group.leave` message to all remaining members.
598−- **Update:** Send a `group.update` message to all members when the name or membership changes.
605+## 8. Group Messaging
599606
600−All membership operations are performed by the client. There is no server-side group state, no group admin role enforced by the protocol, and no consensus mechanism. Clients trust the membership updates they receive from other members.
607+Group messaging is **not implemented** in the current version. Future revisions may add it as a client-side concept (encrypting one message per group member, with a shared `group_id` in the plaintext payload). Servers would remain entirely unaware of groups.
601608
602609---
603610
@@ -605,43 +612,51 @@ All membership operations are performed by the client. There is no server-side g
605612
606613### Queuing
607614
608−When a server receives a message for a recipient who is not currently online (not in the presence table), the **sender's server queues** the encrypted blob.
615+When a server accepts a message via `/messages`, it always writes the blob to its **local mailbox** under a fresh monotonic `receivedAt`. In parallel, if the recipient is known (via gossip) to be online at one or more remote servers, a federation `forward` is queued and attempted asynchronously per server.
609616
610−The sender's server continues to listen to gossip. When a presence announcement indicates the recipient is online at some server, the sender's server forwards the queued message to that server.
617+If the recipient is not online anywhere, the message simply stays in the local mailbox until either:
611618
612−### TTL
619+- The recipient connects to this server and polls (and acks via cursor advance), or
620+- An `online` gossip event arrives naming a server where the recipient is now reachable, at which point the queued message is forwarded there.
613621
614−All messages have a **30-day TTL**, enforced in two places:
622+### TTL
615623
616−- **Server-side:** Queued messages are deleted 30 days after their timestamp. Servers are temporary relays, not long-term storage.
617−- **Client-side:** Clients MUST delete messages from local storage 30 days after their timestamp. There is no permanent message history.
624+All messages have a **30-day TTL**, enforced server-side: queued messages are deleted 30 days after their `receivedAt`. Servers are temporary relays, not long-term storage. Clients SHOULD also age out local message history.
618625
619626### Delivery Flow
620627
621628```
6226291. Alice sends a message to Bob (offline).
623−2. Alice's server queues the encrypted blob.
624− Returns: { "status": "queued" }
630+2. Alice's server appends the encrypted blob to its local mailbox.
631+ Returns: 200 {}
625632
6266333. ...time passes...
627634
628−4. Bob connects to Server C.
629−5. Server C gossips: ONLINE { bob_pubkey, server_c }
630−6. Alice's server sees the gossip, forwards the queued message to Server C.
631−7. Server C delivers to Bob on his next poll.
632−8. Bob's client sends ACK to Server C.
633−9. Server C forwards ACK to Alice's server.
634−10. Alice's server deletes the blob.
635−11. Next time Alice connects, she receives delivery confirmation.
635+4. Bob connects to Server C; Server C marks Bob locally online and gossips
636+ { eventType: "online", pubkey: bob } to its peers.
637+5. Alice's server receives the gossip and queues a /federation/forward to Server C.
638+6. Server C accepts the forward (Bob is locally online) and appends to Bob's mailbox.
639+7. Bob's client polls Server C, receives the event, advances its cursor.
640+8. Cursor advance acts as an implicit ack: Server C deletes the stored blob and
641+ the corresponding pending forward (so the chain does not double-deliver).
642+9. Bob's client sends an encrypted `delivery.ack` message back to Alice.
643+10. When Alice next polls and decrypts that, her UI marks her message delivered.
636644```
637645
638−Alice does not need to stay online. Her server handles delivery independently.
646+Note: Alice does not need to stay online for steps 4–9. Her server handles federation independently.
639647
640648### Failure Modes
641649
642650- If the sender's server goes down before delivering, queued messages are **lost**. This is an accepted tradeoff — servers are disposable.
643−- If the recipient never comes back online within 30 days, the message is deleted.
644−- The sender sees `queued` status until ACK is received, at which point it becomes `delivered`.
651+- If forwarding to a peer fails repeatedly, the forward is dropped after `maxForwardRetries`; the message remains in the origin's mailbox and will only be delivered if the recipient ever polls the origin directly.
652+- If the recipient never comes back online within 30 days, the message is deleted by the server-side TTL.
653+- The sender's UI sees no delivery status until a `delivery.ack` is received from the recipient.
654+
655+### Message Ordering
656+
657+Message ordering is **best-effort** and guaranteed only within a single server. Each server assigns every message a strictly-monotonic `receivedAt` sequence (unique per message, never colliding even under bursts within one millisecond), which provides total ordering for that server's mailbox; the `cursor` returned by `/poll` reflects this sequence.
658+
659+Across federated servers, messages may arrive out of order due to network latency, retry delays, or differing reception times. Clients SHOULD use the sender-provided `ts` field (from the decrypted plaintext payload, §4) for display ordering and treat `cursor` as a polling checkpoint only, not a global ordering guarantee.
645660
646661---
647662
@@ -649,32 +664,104 @@ Alice does not need to stay online. Her server handles delivery independently.
649664
650665### Threat Model
651666
652−Skrepka protects message **content** from servers and network observers. It does not attempt to hide **metadata**.
667+Skrepka protects message **content and sender identity** from servers and network observers. It does not attempt to hide the recipient.
653668
654669### What Is Protected
655670
656−| Property | Mechanism |
657−|-----------------------|----------------------------------------------|
658−| Message confidentiality | E2E encryption (X25519 + HKDF-SHA256 + XChaCha20-Poly1305) |
659−| Sender authenticity | Ed25519 signature on every message |
660−| Replay protection | Unique nonce per message |
661−| Key compromise (partial) | Ephemeral keys per message — past messages whose blobs were already discarded cannot be decrypted even if the recipient's long-term key is compromised |
671+| Property | Mechanism |
672+|---------------------------|------------------------------------------------------------|
673+| Message confidentiality | E2E encryption (X25519 + HKDF-SHA256 + XChaCha20-Poly1305) |
674+| Sender authenticity | Ed25519 signature on every message |
675+| Sender anonymity vs. server | Sender pubkey is inside the AEAD ciphertext — servers see the recipient but not the sender |
676+| Replay protection (cross-recipient) | Unique nonce per message; signature binds the recipient pubkey, so a captured blob cannot be replayed against a *different* recipient. This does **not** stop re-delivery of the same blob to the *same* recipient — see *Same-recipient replay* below |
677+| Deletion-dependent recovery (**not** post-compromise security) | Each message uses a fresh ephemeral X25519 key, so there is no shared long-term session secret to steal. But this buys **nothing cryptographic** against a later key compromise: the recipient's long-term key still opens *any* blob an attacker has kept a copy of. The only thing protecting an old message is that the ciphertext no longer exists — relays delete on ack/TTL, and clients delete on request. That is a *deletion* property, not a *forward secrecy* property, and it fails completely against anyone who recorded the traffic. See *No forward secrecy* below, which is the same fact stated as a risk. |
662678
663679### What Is NOT Protected
664680
665−| Risk | Details |
666−|------------------------------|-----------------------------------------------------|
667−| **No forward secrecy** | If a message blob is captured *and* the recipient's long-term X25519 key is later compromised, that specific message can be decrypted. No ratchet means no post-compromise recovery. |
668−| **Metadata exposure** | Servers see `{to, from, timestamp}` in the envelope. They know who is talking to whom and when. Message size is also visible. |
669−| **Presence gossip leaks location** | All servers in the mesh learn which server a user is connected to. |
670−| **No durable delivery** | If the sender's server goes down, queued messages are lost. |
671−| **No server authentication** | Servers are not authenticated to each other by default. A malicious server could join the mesh and observe gossip. |
672−| **Group membership visible to members** | Group member lists are shared in plaintext among members. A compromised member reveals the full group. |
681+| Risk | Details |
682+|-----------------------------------|-----------------------------------------------------|
683+| **No forward secrecy** | A captured blob plus a later compromise of the recipient's long-term key **is enough to decrypt that message** — the per-message ephemeral key is the *sender's*, and the recipient's half of the exchange is their long-term identity key, which never rotates. So an adversary who records ciphertext today (a network observer, or any relay it passed through) and obtains the recipient's key at any point in the future can read everything it recorded. There is no ratchet, so there is also no post-compromise recovery: once the key leaks, future messages are readable too until the user rotates identity. Do not read the per-message ephemeral keys as forward secrecy; they are not. **Additionally**, because the HKDF salt (`ephemeral_public ‖ recipient_x25519_public`) omits the sender's identity, compromising the recipient's private key also enables a *key-compromise impersonation (KCI)* vector: the attacker can decrypt a captured blob, replace the sender identity and signature inside the inner buffer with their own, re-encrypt with the same derived key, and re-deliver. The recipient sees a valid message apparently from a different sender. Including the sender pubkey in the HKDF salt or info would close this by construction, but requires a wire-format change. The signature already prevents forgery *without* key compromise, so KCI is an additional consequence of an already-catastrophic key leak, not a standalone attack. |
684+| **No AAD on AEAD — envelope fields unauthenticated** (v0.1, fixed in v0.2) | In v0.1, XChaCha20-Poly1305 was called with no associated data. The envelope's `to` field was not authenticated by the AEAD — a relay could swap `to` to a different recipient's pubkey, silently misdelivering and censoring messages with zero detectability. **v0.2 fixes this**: the AAD includes `version_byte ‖ ephemeral_public ‖ nonce ‖ recipient_ed25519_public`, binding the envelope to the ciphertext. A `to`-swap now causes AEAD failure at the wrong recipient, and the original recipient's message stays in the mailbox. |
685+| **Recipient metadata exposure** | Servers see the recipient pubkey and arrival time of every message, plus the rough size of each blob. They do **not** see the sender. **The relay can also infer delivery** by correlating a message's arrival time with the recipient's subsequent poll time — the gap between the two reveals whether the recipient was online and actively reading. |
686+| **Blob size reveals message type** | The length-padding buckets (§3, *Length Padding*) are coarse enough that a relay can distinguish payload types: a `delivery.ack` with a single ID (~233 bytes) falls in the 256-byte bucket, a short `text` message falls in the 512-byte bucket, and a `profile` with a photo falls in the 65536-byte bucket. A relay observing the bucket pattern learns who acks whom and who updates their profile — without decrypting anything. Finer-grained padding (e.g., a single minimum bucket for all small messages) would reduce this leak. |
687+| **Poll cursor reveals reading progress** | The client sends its cursor (last-seen `receivedAt`) on every poll, telling the relay exactly how far behind the recipient is. A relay can determine whether the recipient is actively reading (cursor advances each poll) or just polling (cursor stays the same), estimate reading speed, and detect device switches (cursor jumps backward). This is inherent to the long-poll model. |
688+| **CRIME/BREACH surface on profiles** | The CRIME/BREACH side channel (§3, *Length Padding*) extends beyond text messages to `profile` broadcasts: `display_name`, `bio`, and `photo` are compressed together in one zstd frame. If an attacker can influence part of the profile text (e.g., the user sets their display name based on something the attacker controls), the compressed size could leak information about the user's other profile fields. The risk is low in practice — the base64-encoded photo is high-entropy and nearly incompressible, and bucket padding coarsens the granularity — but the spec's claim that "an attacker cannot make the client re-encrypt a chosen variant of a secret on demand" is too strong for profile broadcasts. |
689+| **Presence gossip leaks location** | Federated peers learn which server a user is currently connected to. A presence row is anchored for up to 90 min (`onlineGossipTtl`), which outlives the 1 h session, so location metadata — and forwards aimed at the user — can linger for up to ~90 min after the user disconnects. |
690+| **No durable delivery** | If the sender's server goes down or all forward retries fail, messages may be lost. |
691+| **Mailbox eviction under flood (DoS)** | The per-recipient mailbox cap (`maxMessagesPerRecipient`, default 10 000) evicts the oldest messages when the cap is reached. An authenticated attacker (pubkeys are free to mint) can flood a victim's mailbox with junk, pushing out genuine undelivered messages. The victim's client only sees junk; the genuine messages are permanently destroyed. At 60 requests/min × 100 messages = 6 000/min, the attacker fills the cap in ~2 minutes (per IP; multiple IPs are faster). This is an accepted design tradeoff of v0.1 — a real fix requires per-sender quotas or pricing. |
692+| **Unbounded mailbox storage** | The per-recipient mailbox cap (`maxMessagesPerRecipient`) bounds each recipient but not the count of distinct recipient keys. An attacker can fill the server's disk by sending messages to many distinct invalid pubkeys, bounded only by the 30-day TTL and rate limits. The reference server now enforces a global `maxMessagesTotal` cap (default 1 000 000) that evicts the globally-oldest rows on overflow, symmetric with the other state refs. |
693+| **CPU amplification via dedup scan** | `appendMessage` performs an O(n) full-scan dedup check on every message (§6). Under a burst of 100-message batches, each message triggers a scan of the entire mailbox. With large mailboxes this is quadratic and amplifies CPU cost per request. Bounded by rate limits (60/min per IP) and the fact that the attacker must be authenticated, but the amplification is real. |
694+| **Clock forward-jump pins the sequence counter** | The `receivedAt` sequence counter is a forward-only ratchet: `max(wall_clock, previous + 1)`. A single NTP forward-jump (server migration, misconfiguration) pins the counter at the jumped value, delaying all TTL pruning until real time catches up. Backward jumps are safe (the counter dominates). |
695+| **Challenge pool floodable (soft DoS)** | The challenge pool is globally capped at `maxChallenges` (default 10 000) with per-IP rate limiting. An attacker with many IPs — or behind a proxy with XFF spoofing when `trustForwardedFor = true` — can fill the pool with challenges for random pubkeys, causing legitimate challenges to be LRU-evicted. Authentication still works but with extra latency (clients retry). This is a soft DoS. |
696+| **Rate limit counts requests, not messages** | The per-IP send rate limit (60/min) counts requests, and each request can carry up to 100 messages. The effective message rate is therefore 60 × 100 = 6 000 messages/min per IP (bounded by the body-size cap), much higher than the per-request limit suggests. An attacker with multiple IPs can send millions of messages per minute. |
697+| **Session pool Sybil-floodable** | The global session pool (`maxSessions`, default 10 000) uses LRU eviction. An attacker with enough IPs can generate thousands of keypairs, authenticate each one, and fill the pool — evicting legitimate users' sessions. Users re-authenticate automatically (they get `401` and retry), so this is a soft DoS adding latency and load. Per-IP session caps were considered and rejected because they collapse behind carrier-grade NAT. |
698+| **Presence table fillable with fake keys** | The presence table (`maxPresence`, default 100 000) can be filled with fake keys via gossip (100 events per request, 60/min per IP). Local rows are exempt from the cap, so local users' presence is never evicted, but legitimate *remote* presence (from honest peers) can be evicted, causing forwards to those peers to fail. Requires federation to be enabled. |
699+| **Gossip amplification** | A single `/federation/gossip` request with 100 `online` events triggers up to 100 mailbox scans and forward-staging operations. The reference server caps the number of newly-online keys that trigger forward sweeps per batch (`maxNewlyOnlineForwards`, default 10), limiting the amplification to 10× per request. An attacker can still send 100 online events per request, but only 10 trigger forward sweeps; the remaining keys are written to `*presence` without a forward sweep. Bounded by the per-IP rate limit (60/min). |
700+| **`fromServer` not verified** | The `fromServer` field in gossip events is self-asserted and not verified against the connecting peer's actual network address — the server has **no mechanism** to verify that the connecting peer is who it claims to be. An attacker can claim `fromServer: "legit-relay.example.com"` from any IP, poisoning the presence table with the legitimate relay's hostname. Forwards go to the legitimate relay (which doesn't have the key online → 404), causing spurious forward requests. This is a variant of the gossip-redirect attack; the intended fix is reverse-DNS verification of the connecting peer, which requires runtime DNS support not currently available. |
701+| **No identity revocation** | There is no in-protocol mechanism to revoke or invalidate a compromised identity key. A stolen key allows full takeover: decrypt all captured messages, send messages as the user, poll their mailbox, and receive their messages via presence redirect. The only defense is out-of-band communication. See §11 (Future Extensions — Key Rotation) for the intended direction. |
702+| **Unauthenticated session relay** (mitigated) | The auth signature is bound to the target server's hostname under a domain-separation tag (§6), so a malicious/relay server can no longer forward another server's challenge and replay the resulting signature to impersonate the client elsewhere. Residual caveat: the binding is to the hostname the client dialed, so it assumes the client reaches each server under its true `serverHost` (DNS/TLS integrity). |
703+| **Same-recipient replay** | Nothing stops a captured blob from being re-delivered to its original recipient. The damage is bounded per payload type: `text` is deduplicated by `id` (the reference client maintains a persistent `seen_ids` set that survives `trim_history`), `delivery.ack` is idempotent, and `profile` is guarded by the per-contact `ts` staleness check of §4. |
704+| **Open federation — gossip redirect** | `/federation/gossip` is unauthenticated; an attacker announces the victim online at a host it controls and origin relays forward the victim's queued ciphertext there. **Active users are also affected**: even when the recipient is locally online and actively polling, a forged remote presence row causes each new incoming message to be duplicated to the attacker's server — the victim receives everything normally but the attacker silently collects ciphertext metadata for the live inbound stream. See *Open federation* below. |
705+| **Open federation — forward injection** | `/federation/forward` is unauthenticated; any host can inject arbitrary blobs into a currently-online recipient's mailbox. See *Open federation* below. |
706+| **Bearer token theft = full impersonation** | Sessions are bearer-token-based: anyone who obtains the token can use it. The token is bound to `(pubkey, ip, expiry)`, but the `pubkey` binding is for authorization (self-send rejection), not for authenticating the request. If an attacker steals a bearer token (e.g., from a compromised proxy's access log), they can poll the victim's mailbox and send messages as the victim — modulo IP binding. Token expiry (1 hour) is the only automatic recovery. Consider shorter token lifetimes or per-request signing. |
707+| **Token entropy depends on runtime CSPRNG** | Session and challenge tokens are generated by the server's runtime random source. Implementations SHOULD verify that their RNG is cryptographically secure (e.g., backed by `/dev/urandom` or an OS-provided CSPRNG). |
708+| **Non-curve-point `to` keys accepted** | The server validates that `to` is 64 lowercase hex chars but does not check that the decoded bytes form a valid Ed25519 curve point. Blobs addressed to non-existent keys are stored and forwarded normally, consuming storage until TTL expiry. |
709+| **No crypto rotation performed** | The wire format carries a version byte (§3, *Cryptographic Versioning*) and a fixed HKDF `info` (`"skrepka-v2"`), so a future revision *can* introduce new AEAD/KDF/curve choices by bumping both. Version 0x02 added AEAD associated data (AAD) to bind envelope fields to the ciphertext. No further rotation has been performed. |
710+| **TOFU only — no verification UI** | A first-time public key is trusted on encounter; users must compare fingerprints out-of-band (e.g., @p syllables in person) to detect MITM at first contact. The reference client does not yet provide a UI for this out-of-band verification. Independent clients SHOULD implement such a UI. |
711+
712+### Open Federation (accepted limitation of v0.1)
713+
714+Every `/federation/*` endpoint accepts **any caller**. There is no bearer token, no peer signature, and no allow-list: a relay cannot tell a genuine peer from an arbitrary host on the internet. Two concrete attacks follow, and it is worth stating them precisely, because "a hostile server can observe gossip" understates both.
715+
716+**1. Gossip redirect — actively rerouting a victim's mail.** The `fromServer` field on `/federation/gossip` is self-asserted, and an `online` event for a previously-unseen key makes the receiving relay sweep its mailbox and forward that key's queued messages to `fromServer` (§7). So an attacker does not have to wait and watch. It posts:
717+
718+```json
719+{ "events": [ { "eventType": "online", "pubkey": "<victim>" } ],
720+ "fromServer": "attacker.example.com" }
721+```
722+
723+to every relay it can reach. Each relay holding mail for the victim now forwards that ciphertext to the attacker's host. The receiver-side "recipient must be locally online" gate does not help — that check runs on the *attacker's* server, which the attacker controls. Message **content** stays protected by E2E encryption, but the attacker harvests ciphertext copies and recipient/timing/size metadata — a real leak for a metadata-privacy-focused messenger.
724+
725+**2. Forward injection — spam into an online recipient's mailbox.** `/federation/forward` is unauthenticated, so any host can inject arbitrary blobs into the mailbox of any recipient who is currently locally online. Injected junk is undecryptable, so a client drops it silently on ingest — but it occupies the recipient's poll stream and the relay's mailbox until the cursor advances past it. The only bounds are the per-source-IP rate limit (`forwardLimit`), the SSRF deny-list (which constrains where a relay will *send*, not who may call it), and the `no_presence` gate (which limits injection to online recipients).
726+
727+**3. Forward cancellation — deleting queued mail-in-flight.** The offline-event forward cancellation (§7) **widens** the unauthenticated-gossip blast radius from writing presence to **deleting queued forwards** — an attacker claiming `fromServer: X` can cancel pending forwards to any real relay X by announcing an `offline` event for the relevant key, so mail queued for delivery to X is dropped from the origin's outbox (the message itself stays in `*messages` and is re-forwarded if the key reappears on another peer, so this delays rather than destroys delivery).
728+
729+**Mitigation path.** Both attacks are accepted limitations of v0.1's unauthenticated federation. The intended fix is peer authentication — signed presence gossip and authenticated forward requests — or an explicit peer allow-list gate before `forwardQueuedToServer`. Until then, operators who federate only with trusted peers (or not at all) are unaffected.
673730
674731### Recommendations for Implementers
675732
676733- Store private keys in platform-secure storage (Keychain, Keystore, etc.).
677734- Warn users when a contact's public key changes (TOFU violation).
678735- Consider pinning server TLS certificates for additional transport security.
679−- Implement rate limiting on server endpoints to mitigate spam.
680−- Servers SHOULD delete message blobs immediately after successful delivery and ACK.
736+- Federate only with peers operated by trusted operators if presence metadata is sensitive.
737+- Servers SHOULD delete message blobs as soon as the implicit ack (cursor advance) lands.
738+
739+---
740+
741+## 11. Future Extensions
742+
743+Nothing in this section is implemented or normative in v0.1. It records the shape the extension is expected to take, so that clients avoid design choices that would foreclose it.
744+
745+### Key Rotation
746+
747+Identity in Skrepka *is* the Ed25519 keypair (§2), so today a user who loses or wants to retire a key has no in-protocol way to say so: they have to re-share a new key out-of-band, and every contact must re-add them by hand. Worse, because contacts are TOFU (§2, *Trust Model*), a contact who simply receives a message from an unfamiliar key cannot distinguish "my peer rotated" from "someone is impersonating my peer".
748+
749+A future revision may add a `key_rotation` message type (§4) that lets a user signal the change in-band:
750+
751+```json
752+{
753+ "type": "key_rotation",
754+ "new_pubkey": "<hex(new_ed25519_pubkey)>",
755+ "ts": 1679000000000
756+}
757+```
758+
759+The message is a normal plaintext payload: encrypted to each contact and, per §4, signed by the **old** key — which is exactly the point. Only the holder of the retiring key can announce its successor, so the announcement carries the same authority as any other message from that identity, and a recipient who already trusts the old key can extend that trust to the new one without a fresh out-of-band fingerprint check. Recipients would update the contact entry in place: replace the stored pubkey with `new_pubkey`, keep the existing display name, avatar, and message history, and retain the old key only as a *former identity* so that already-received messages still verify.
760+
761+Open questions a full specification must settle:
762+
763+- **Proof of possession of the new key.** A signature by the old key alone proves the *announcement* is authentic, not that the announcer holds the new secret. A cross-signature (the payload additionally signed by the new key, over both pubkeys) closes that gap and should be considered mandatory.
764+- **Ordering and replay.** Rotations must be totally ordered per identity, or a replayed old `key_rotation` could roll a contact back to a superseded key. The per-contact `ts` staleness rule of §4 is the obvious mechanism, and it inherits that rule's weakness (§10, *Same-recipient replay*) — a monotonic rotation counter is likely the safer construction.
765+- **Contacts who miss the announcement.** A contact offline past the 30-day TTL (§9) never receives the rotation and is left holding a dead key. Re-announcing on reconnect, or letting a client ask a peer to re-send its current identity, would need to be specified.
766+- **Revocation vs. rotation.** These are different operations. Rotation says "use this key from now on" and assumes the old key is still under the owner's control; revocation says "the old key is compromised — distrust it", and an attacker holding the compromised key can forge exactly the rotation message that would hijack the identity. A rotation announcement therefore MUST NOT be treated as a compromise recovery mechanism. Recovering from a stolen key needs a separate design (an offline recovery key, or out-of-band re-verification) and is out of scope here.
767+- **No retroactive protection.** Rotating does not protect past traffic. Messages already sent to the old key remain decryptable by whoever holds it, exactly as §10, *No forward secrecy* describes.
README.md+43−3
@@ -1,11 +1,51 @@
11# Skrepka
22
3−Decentralized, end-to-end encrypted messaging with no accounts and no home servers. See [PROTOCOL.md](PROTOCOL.md) for the full specification.
3+Decentralized, end-to-end encrypted messaging with no accounts and no home servers. Identity is an Ed25519 keypair; messages route over plain HTTP through any relay in an open federated mesh. A relay only ever sees the recipient's public key and an opaque blob — the sender's identity and signature live *inside* the AEAD ciphertext, so a server never learns who sent a message.
44
5−## Install the relay server
5+See [PROTOCOL.md](PROTOCOL.md) for the full specification.
6+
7+## What's here
8+
9+| Path | What it is |
10+| --- | --- |
11+| `core/` | The shared core (Rust, [Crux](https://redbadger.github.io/crux/)). All business logic: identity, crypto, auth, the long-poll loop, the outbox, contacts, profiles, message ingest. |
12+| `apple/` | The iOS client (Swift + SwiftUI, iOS 17+). A thin shell: it executes HTTP/key-value/timer effects and renders the view model. No business logic. |
13+| `server.knot` | The relay server, written in [Knot](https://github.com/ilyakooo0/knot) and compiled to a native binary. |
14+| `servers.json` | A public relay list. A static suggestion, not a directory. |
15+
16+Crypto is X25519 + XChaCha20-Poly1305 with HKDF-SHA256, signed with Ed25519 — see `core/src/crypto.rs`, which is written to be auditable against the spec.
17+
18+## Build the client
19+
20+One-time setup:
21+
22+```sh
23+rustup target add aarch64-apple-ios aarch64-apple-ios-sim x86_64-apple-ios
24+cargo install boltffi_cli
25+brew install xcodegen
26+```
27+
28+Then (`just` alone runs `test`):
29+
30+```sh
31+just test # run the core test suite
32+just generate # regenerate Swift types, xcframework, and the Xcode project
33+just build SIM_ID=<udid> # build for a booted simulator
34+just run SIM_ID=<udid> # install + launch on that simulator
35+```
36+
37+Run `just generate` after any change to the core's `Event`, `ViewModel`, or `Effect` types — otherwise the Swift side compiles against stale generated types.
38+
39+## Run a relay
40+
41+To install one on a Linux host, with a systemd service and [Caddy](https://caddyserver.com) as a reverse proxy with automatic TLS:
642
743```sh
844curl -fsSL https://raw.githubusercontent.com/ilyakooo0/skrepka/master/install.sh | sudo DOMAIN=skrepka.example.com sh
945```
1046
11−This installs the server binary, sets up a systemd service, and configures [Caddy](https://caddyserver.com) as a reverse proxy with automatic TLS. Re-running the same command will update the binary and restart the service.
47+Re-running the same command updates the binary and restarts the service.
48+
49+Every top-level constant in `server.knot` is overridable at startup as `--name=value` (`--serverHost=`, `--federationEnabled=False`, `--trustForwardedFor=False`, …); run the binary with `--help` for the full list. `--serverHost` must be the public hostname clients use to reach the relay: it is the federation identity, and clients bind their auth signature to it.
50+
51+To run a relay locally you need a prebuilt `./server` binary (`knot build server.knot`, or grab a release asset); then `just server` resets the disposable database and starts it.
apple/SkrepkaApp/Core.swiftnew file+98
@@ -0,0 +1,98 @@
1+import Foundation
2+import Skrepka
3+import SkrepkaShared
4+
5+/// Drives the Rust core: serializes events in, deserializes effects out, performs
6+/// each effect (HTTP, key-value, timer, render) and resolves it back into the core.
7+@MainActor
8+final class Core: ObservableObject {
9+ /// One core per process, reachable outside the view tree.
10+ ///
11+ /// `SkrepkaApp` holds this in a `@StateObject`, but the background-refresh handler runs
12+ /// with no view installed — and a `@StateObject` read from there hands back a *fresh*
13+ /// instance every time. That would mean a second `CoreFFI` with its own identity, its own
14+ /// kv state and its own poll loop, writing over the real one's files and rendering into
15+ /// nothing. The state machine is a singleton in fact; make it one in the type.
16+ static let shared = Core()
17+
18+ @Published var view: ViewModel
19+
20+ /// A Keychain failure never reaches the core — without an identity there is no
21+ /// `IdentityLoaded` event to carry it — so the shell holds it. `RootView` shows this
22+ /// instead of spinning on a progress view forever.
23+ @Published private(set) var identityError: String?
24+
25+ private let core = CoreFFI()
26+ private let store = KvStore()
27+
28+ private init() {
29+ // The FFI's guard returns empty bytes when the core panics; force-try
30+ // on empty bytes crashes the app. Fall back to a default ViewModel instead.
31+ self.view = (try? ViewModel.bincodeDeserialize(input: [UInt8](core.view()))) ?? ViewModel()
32+ bootIdentity()
33+ }
34+
35+ // MARK: - Event/effect loop
36+
37+ func update(_ event: Event) {
38+ guard let eventData = try? event.bincodeSerialize() else { return }
39+ let effects = [UInt8](core.update(data: Data(eventData)))
40+ dispatch(effects)
41+ }
42+
43+ private func resolve(_ id: UInt32, _ output: [UInt8]) {
44+ let effects = [UInt8](core.resolve(id: id, data: Data(output)))
45+ dispatch(effects)
46+ }
47+
48+ private func dispatch(_ effects: [UInt8]) {
49+ guard let requests = try? Requests.bincodeDeserialize(input: effects).value else { return }
50+ for request in requests {
51+ process(request)
52+ }
53+ }
54+
55+ private func process(_ request: Request) {
56+ let id = request.id
57+ switch request.effect {
58+ case .render:
59+ self.view = (try? ViewModel.bincodeDeserialize(input: [UInt8](core.view()))) ?? self.view
60+
61+ case .http(let req):
62+ Task { [weak self] in
63+ let result = await Http.perform(req)
64+ guard let output = try? result.bincodeSerialize() else { return }
65+ self?.resolve(id, output)
66+ }
67+
68+ case .keyValue(let op):
69+ // The file I/O runs on the store's own serial queue; hop the result back to
70+ // the main actor, because the core is single-threaded and `.render` publishes.
71+ store.handle(op) { [weak self] result in
72+ guard let output = try? result.bincodeSerialize() else { return }
73+ Task { @MainActor in self?.resolve(id, output) }
74+ }
75+
76+ case .time(let req):
77+ Time.handle(req) { [weak self] response in
78+ guard let output = try? response.bincodeSerialize() else { return }
79+ self?.resolve(id, output)
80+ }
81+ }
82+ }
83+
84+ // MARK: - Identity
85+
86+ /// Loads the identity key, or reports why it could not. Safe to call again — that is
87+ /// what the retry affordance on the error screen does, and the common failure (the
88+ /// device has not been unlocked since boot) resolves on its own.
89+ func bootIdentity() {
90+ switch Keychain.loadOrCreateIdentity() {
91+ case .success(let key):
92+ identityError = nil
93+ update(.identityLoaded([UInt8](key)))
94+ case .failure(let error):
95+ identityError = error.message
96+ }
97+ }
98+}
apple/SkrepkaApp/Effects.swiftnew file+428
@@ -0,0 +1,428 @@
1+import CryptoKit
2+import Foundation
3+import Security
4+import Skrepka
5+
6+// MARK: - HTTP
7+
8+/// Hard cap on any HTTP response body we will buffer. A hostile relay
9+/// can answer any endpoint with a multi-gigabyte body; without this cap
10+/// `URLSession.data(for:)` would OOM the app before the core's own
11+/// `MAX_POLL_RESPONSE_BYTES` check (which runs on the wrong side of the
12+/// FFI boundary to prevent the allocation) ever fires.
13+private let maxResponseBytes = 64 * 1024 * 1024 // 64 MiB
14+
15+/// The one session delegate, handling two defenses against an untrusted relay.
16+///
17+/// **Redirect cancellation.** URLSession replays the original request's headers onto a
18+/// redirect target, including `Authorization: Bearer <session_token>`. A hostile (or
19+/// compromised) relay could answer `/poll` or `/messages` with a 302 to a host it chooses
20+/// and harvest the bearer token from the request we would dutifully re-send there. Sessions
21+/// are bound to a single relay by design (§6), so a cross-host redirect is never legitimate
22+/// — refusing it costs nothing and closes the token-exfiltration path. Same-host redirects
23+/// (e.g. HTTP → HTTPS upgrade on the same host) are allowed; the Authorization header stays
24+/// within the relay's own host. Returning `nil` from the completion handler does not error
25+/// the task: it stops the redirect and hands the 3xx response itself back to the caller,
26+/// which the core sees as a non-2xx status and treats as a failed request.
27+///
28+/// **Response size limiting.** As body chunks arrive we accumulate the byte count per task
29+/// and cancel the task the moment it crosses `maxResponseBytes`, so a multi-gigabyte body
30+/// never fully materializes in memory. Cancelling surfaces to the caller as a `URLError`
31+/// with code `.cancelled`, which `Http.perform` maps to a transport error.
32+private final class HttpSessionDelegate: NSObject, URLSessionTaskDelegate, URLSessionDataDelegate {
33+ let maxResponseBytes: Int
34+
35+ /// Per-task accumulated byte counts. The delegate is shared across every concurrent
36+ /// request, so a single shared counter would conflate their bodies — key by task instead.
37+ /// Guarded by `lock` because delegate callbacks arrive on the session's own (non-main)
38+ /// queue and may interleave across tasks.
39+ private var taskSizes: [URLSessionTask: Int] = [:]
40+ private let lock = NSLock()
41+
42+ init(maxResponseBytes: Int) {
43+ self.maxResponseBytes = maxResponseBytes
44+ }
45+
46+ func urlSession(
47+ _ session: URLSession,
48+ task: URLSessionTask,
49+ willPerformHTTPRedirection response: HTTPURLResponse,
50+ newRequest request: URLRequest,
51+ completionHandler: @escaping (URLRequest?) -> Void
52+ ) {
53+ // Allow same-host redirects (e.g. HTTP → HTTPS upgrade on the same host).
54+ // Cancel cross-host redirects — a hostile relay could redirect to an
55+ // attacker-controlled host and harvest the Authorization header.
56+ if let originalURL = task.currentRequest?.url,
57+ let redirectHost = request.url?.host?.lowercased(),
58+ let originalHost = originalURL.host?.lowercased(),
59+ redirectHost == originalHost {
60+ completionHandler(request)
61+ } else {
62+ completionHandler(nil)
63+ }
64+ }
65+
66+ func urlSession(
67+ _ session: URLSession,
68+ dataTask: URLSessionDataTask,
69+ didReceive data: Data
70+ ) {
71+ lock.lock()
72+ let total = (taskSizes[dataTask] ?? 0) + data.count
73+ taskSizes[dataTask] = total
74+ let exceeded = total > maxResponseBytes
75+ lock.unlock()
76+ if exceeded {
77+ dataTask.cancel()
78+ }
79+ }
80+
81+ func urlSession(
82+ _ session: URLSession,
83+ task: URLSessionTask,
84+ didCompleteWithError error: Error?
85+ ) {
86+ lock.lock()
87+ taskSizes.removeValue(forKey: task)
88+ lock.unlock()
89+ }
90+}
91+
92+enum Http {
93+ /// Strongly held by `session` for the app's lifetime — the session is never invalidated,
94+ /// so the delegate is never released. That is the intended shape here, not a leak.
95+ private static let httpDelegate = HttpSessionDelegate(maxResponseBytes: maxResponseBytes)
96+
97+ /// A private, ephemeral session. `URLSession.shared` would hand every relay a
98+ /// persistent cookie jar and an on-disk response cache — a relay is untrusted
99+ /// infrastructure and must not be able to pin a stable identifier on the client
100+ /// or leave polled ciphertext lying around on disk. It would also follow redirects,
101+ /// which is what `HttpSessionDelegate` is here to prevent.
102+ private static let session: URLSession = {
103+ let config = URLSessionConfiguration.ephemeral
104+ config.httpCookieAcceptPolicy = .never
105+ config.httpShouldSetCookies = false
106+ config.httpCookieStorage = nil
107+ config.urlCache = nil
108+ config.requestCachePolicy = .reloadIgnoringLocalAndRemoteCacheData
109+ config.timeoutIntervalForRequest = 70 // server long-polls for ~25s
110+ config.tlsMinimumSupportedProtocolVersion = .TLSv12
111+ return URLSession(configuration: config, delegate: httpDelegate, delegateQueue: nil)
112+ }()
113+
114+ static func perform(_ req: HttpRequest) async -> HttpResult {
115+ guard let url = URL(string: req.url),
116+ let scheme = url.scheme,
117+ scheme == "http" || scheme == "https" else {
118+ return .err(.url(req.url))
119+ }
120+ var request = URLRequest(url: url)
121+ request.httpMethod = req.method
122+ request.timeoutInterval = 70 // server long-polls for ~25s
123+ for header in req.headers {
124+ request.setValue(header.value, forHTTPHeaderField: header.name)
125+ }
126+ if !req.body.isEmpty {
127+ request.httpBody = Data(req.body)
128+ }
129+ do {
130+ let (data, response) = try await session.data(for: request)
131+ let http = response as? HTTPURLResponse
132+ return .ok(HttpResponse(
133+ status: UInt16(clamping: http?.statusCode ?? 0),
134+ headers: headers(of: http),
135+ body: [UInt8](data)
136+ ))
137+ } catch let error as URLError where error.code == .cancelled {
138+ // The size-limit delegate cancels the task when the body exceeds the cap.
139+ // Treat it as a transport error so the core backs off and retries.
140+ return .err(.io("response body exceeded \(maxResponseBytes) bytes"))
141+ } catch let error as URLError where error.code == .timedOut {
142+ return .err(.timeout)
143+ } catch {
144+ return .err(.io(error.localizedDescription))
145+ }
146+ }
147+
148+ /// HTTP header names are case-insensitive; the core matches them lowercased.
149+ private static func headers(of response: HTTPURLResponse?) -> [HttpHeader] {
150+ guard let response else { return [] }
151+ return response.allHeaderFields.compactMap { (name, value) -> HttpHeader? in
152+ guard let name = name as? String, let value = value as? String else { return nil }
153+ return HttpHeader(name: name.lowercased(), value: value)
154+ }
155+ }
156+}
157+
158+// MARK: - Timer
159+
160+@MainActor
161+enum Time {
162+ /// Live timers, so `.clear` can actually cancel one. Resolving a crux effect twice
163+ /// (once from `.clear`, once from the work item that was never cancelled) traps in
164+ /// the core, so a dangling work item is a latent crash, not just wasted work.
165+ private static var timers: [TimerId: DispatchWorkItem] = [:]
166+
167+ static func handle(_ req: TimeRequest, resolve: @MainActor @escaping (TimeResponse) -> Void) {
168+ switch req {
169+ case .now:
170+ let now = Date().timeIntervalSince1970
171+ let seconds = UInt64(now)
172+ let nanos = UInt32((now - Double(seconds)) * 1_000_000_000)
173+ resolve(.now(instant: Instant(seconds: seconds, nanos: nanos)))
174+ case .notifyAfter(let id, let duration):
175+ let seconds = Double(duration.nanos) / 1_000_000_000
176+ schedule(id, after: seconds) { resolve(.durationElapsed(id: id)) }
177+ case .notifyAt(let id, let instant):
178+ let target = Date(timeIntervalSince1970: Double(instant.seconds)
179+ + Double(instant.nanos) / 1_000_000_000)
180+ schedule(id, after: max(0, target.timeIntervalSinceNow)) {
181+ resolve(.instantArrived(id: id))
182+ }
183+ case .clear(let id):
184+ timers.removeValue(forKey: id)?.cancel()
185+ resolve(.cleared(id: id))
186+ }
187+ }
188+
189+ private static func schedule(
190+ _ id: TimerId,
191+ after seconds: TimeInterval,
192+ fire: @MainActor @escaping () -> Void
193+ ) {
194+ timers.removeValue(forKey: id)?.cancel() // a reused id supersedes the old timer
195+ let work = DispatchWorkItem {
196+ MainActor.assumeIsolated {
197+ timers.removeValue(forKey: id)
198+ fire()
199+ }
200+ }
201+ timers[id] = work
202+ DispatchQueue.main.asyncAfter(deadline: .now() + seconds, execute: work)
203+ }
204+}
205+
206+// MARK: - Key-value store (one file per key under Application Support)
207+
208+final class KvStore {
209+ private let dir: URL
210+ /// Serial: the core issues overlapping reads and writes to the same key, and the
211+ /// file for a key is the only copy of that state. Off the main actor, because
212+ /// `messages:<peer>` grows without bound and a write of it must not stutter the UI.
213+ private let queue = DispatchQueue(label: "lol.skrepka.kv")
214+
215+ init() {
216+ let base = FileManager.default.urls(for: .applicationSupportDirectory, in: .userDomainMask)[0]
217+ var url = base.appendingPathComponent("skrepka/kv", isDirectory: true)
218+ try? FileManager.default.createDirectory(
219+ at: url,
220+ withIntermediateDirectories: true,
221+ attributes: [.protectionKey: FileProtectionType.completeUnlessOpen]
222+ )
223+ // Plaintext message history: it must not ride along in an iCloud/iTunes backup,
224+ // which is not covered by the device passcode the way the Keychain item is.
225+ var values = URLResourceValues()
226+ values.isExcludedFromBackup = true
227+ try? url.setResourceValues(values)
228+ dir = url
229+
230+ // Ordered ahead of every operation: `handle` runs on the same serial queue, so
231+ // the rename is done before the first read can look for a file under the new name.
232+ queue.async { [self] in migrateLegacyNames() }
233+ }
234+
235+ /// Rename the files an older build wrote, which substituted `_` for `:`.
236+ ///
237+ /// `messages:<peer>` lived in `messages_<peer>`; `fileURL(forKey:)` now percent-encodes,
238+ /// so it looks for `messages%3A<peer>` and finds nothing. Without this, an upgrade opens
239+ /// every conversation empty — and the first new message writes a fresh file, orphaning
240+ /// the old one (plaintext history) on disk forever. The other five keys are alphanumeric,
241+ /// so their names are unchanged and they need no migration.
242+ private func migrateLegacyNames() {
243+ let fm = FileManager.default
244+ guard let names = try? fm.contentsOfDirectory(atPath: dir.path) else { return }
245+ for name in names where name.hasPrefix("messages_") {
246+ let peer = String(name.dropFirst("messages_".count))
247+ let destination = fileURL(forKey: "messages:\(peer)")
248+ guard !fm.fileExists(atPath: destination.path) else { continue }
249+ try? fm.moveItem(at: dir.appendingPathComponent(name), to: destination)
250+ }
251+ }
252+
253+ /// Runs the operation on the serial queue and resolves from there. The core does not
254+ /// care which thread resolves an effect — `Core` hops the result back to the main
255+ /// actor before it touches the state machine.
256+ func handle(_ op: KeyValueOperation, completion: @escaping (KeyValueResult) -> Void) {
257+ queue.async { [self] in completion(perform(op)) }
258+ }
259+
260+ private func perform(_ op: KeyValueOperation) -> KeyValueResult {
261+ switch op {
262+ case .get(let key):
263+ switch read(key) {
264+ case .success(let value): return .ok(response: .get(value: value))
265+ case .failure(let error): return .err(error: .io(message: error.localizedDescription))
266+ }
267+
268+ case .set(let key, let value):
269+ do {
270+ // Atomic: a crash mid-write must not leave a truncated messages:<peer>.
271+ try Data(value).write(
272+ to: fileURL(forKey: key),
273+ options: [.atomic, .completeFileProtectionUnlessOpen]
274+ )
275+ // The core discards `previous`, so reading the old value back would
276+ // double the cost of every write to buy nothing.
277+ return .ok(response: .set(previous: .none))
278+ } catch {
279+ return .err(error: .io(message: error.localizedDescription))
280+ }
281+
282+ case .delete(let key):
283+ switch read(key) {
284+ case .failure(let error):
285+ return .err(error: .io(message: error.localizedDescription))
286+ case .success(let previous):
287+ let url = fileURL(forKey: key)
288+ do {
289+ if FileManager.default.fileExists(atPath: url.path) {
290+ try FileManager.default.removeItem(at: url)
291+ }
292+ return .ok(response: .delete(previous: previous))
293+ } catch {
294+ return .err(error: .io(message: error.localizedDescription))
295+ }
296+ }
297+
298+ case .exists(let key):
299+ let present = FileManager.default.fileExists(atPath: fileURL(forKey: key).path)
300+ return .ok(response: .exists(isPresent: present))
301+
302+ case .listKeys:
303+ // Never used by the core. Reporting success with no keys would read as
304+ // "the store is empty" — say so honestly instead.
305+ return .err(error: .io(message: "listKeys is not implemented"))
306+ }
307+ }
308+
309+ /// A missing file is an empty key; anything else is a real failure. Collapsing the
310+ /// two would let a transient read error look like "no contacts yet", and the next
311+ /// save would write that emptiness back over the real store.
312+ private func read(_ key: String) -> Result<Value, Error> {
313+ let url = fileURL(forKey: key)
314+ guard FileManager.default.fileExists(atPath: url.path) else { return .success(.none) }
315+ do {
316+ return .success(.bytes([UInt8](try Data(contentsOf: url))))
317+ } catch {
318+ return .failure(error)
319+ }
320+ }
321+
322+ /// Percent-encoding, so the key → filename mapping is injective. Substituting `_`
323+ /// for both `:` and `/` would collide `messages:ab` with `messages/ab`, and two
324+ /// peers' histories would land in the same file.
325+ private func fileURL(forKey key: String) -> URL {
326+ let encoded = key.addingPercentEncoding(withAllowedCharacters: .alphanumerics) ?? key
327+ return dir.appendingPathComponent(encoded)
328+ }
329+}
330+
331+// MARK: - Keychain identity (64-byte libsodium-form Ed25519 secret key)
332+
333+enum Keychain {
334+ private static let service = "lol.skrepka.identity"
335+ private static let account = "identity"
336+
337+ /// `Result`'s failure type has to be an `Error`, and `OSStatus` is a bare `Int32`.
338+ struct Status: Error { let code: OSStatus }
339+
340+ enum IdentityError: Error {
341+ /// The item may well exist — we just could not read it (e.g. the device has not
342+ /// been unlocked since boot). Never generate a replacement on this path.
343+ case unreadable(OSStatus)
344+ case corrupt(Int)
345+ case notStored(OSStatus)
346+
347+ var message: String {
348+ switch self {
349+ case .unreadable(let status):
350+ return "Could not read the identity key from the Keychain (\(status)). "
351+ + "Unlock the device and try again."
352+ case .corrupt(let count):
353+ return "The stored identity key is \(count) bytes, not 64. "
354+ + "Reinstalling the app will create a new identity — the old one is unrecoverable."
355+ case .notStored(let status):
356+ return "Could not save the new identity key to the Keychain (\(status))."
357+ }
358+ }
359+ }
360+
361+ /// Load the stored 64-byte key, or — only when the Keychain positively reports that
362+ /// no item exists — generate and persist a fresh one.
363+ static func loadOrCreateIdentity() -> Result<Data, IdentityError> {
364+ switch load() {
365+ case .failure(let status):
366+ return .failure(.unreadable(status.code))
367+
368+ case .success(.some(let existing)):
369+ guard existing.count == 64 else { return .failure(.corrupt(existing.count)) }
370+ return .success(existing)
371+
372+ case .success(.none):
373+ // Generate a valid Ed25519 keypair; sk64 = seed(32) || pub(32).
374+ let priv = Curve25519.Signing.PrivateKey()
375+ var key = Data()
376+ key.append(priv.rawRepresentation) // 32-byte seed
377+ key.append(priv.publicKey.rawRepresentation) // 32-byte public key
378+ if let status = store(key) { return .failure(.notStored(status)) }
379+ return .success(key)
380+ }
381+ }
382+
383+ /// `errSecItemNotFound` is the only status that means "no identity yet". Every other
384+ /// failure leaves the question open, and the caller must not answer it by minting a
385+ /// new keypair — that would overwrite an identity we merely failed to read.
386+ private static func load() -> Result<Data?, Status> {
387+ let query: [String: Any] = [
388+ kSecClass as String: kSecClassGenericPassword,
389+ kSecAttrService as String: service,
390+ kSecAttrAccount as String: account,
391+ kSecReturnData as String: true,
392+ kSecMatchLimit as String: kSecMatchLimitOne,
393+ ]
394+ var item: CFTypeRef?
395+ let status = SecItemCopyMatching(query as CFDictionary, &item)
396+ switch status {
397+ case errSecSuccess: return .success(item as? Data)
398+ case errSecItemNotFound: return .success(nil)
399+ default: return .failure(Status(code: status))
400+ }
401+ }
402+
403+ /// Update in place, adding only if nothing is there. Delete-then-add would open a
404+ /// window where a crash (or a kill) leaves no key at all, and the next launch would
405+ /// silently mint a *new* identity — losing the old one, and with it every contact's
406+ /// idea of who we are.
407+ ///
408+ /// Returns `nil` on success, or the failing `OSStatus`.
409+ private static func store(_ data: Data) -> OSStatus? {
410+ let query: [String: Any] = [
411+ kSecClass as String: kSecClassGenericPassword,
412+ kSecAttrService as String: service,
413+ kSecAttrAccount as String: account,
414+ ]
415+ let attributes: [String: Any] = [
416+ kSecValueData as String: data,
417+ // ThisDeviceOnly: the identity key must never ride along in a device backup.
418+ kSecAttrAccessible as String: kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly,
419+ ]
420+
421+ let updated = SecItemUpdate(query as CFDictionary, attributes as CFDictionary)
422+ if updated == errSecSuccess { return nil }
423+ guard updated == errSecItemNotFound else { return updated }
424+
425+ let added = SecItemAdd(query.merging(attributes) { current, _ in current } as CFDictionary, nil)
426+ return added == errSecSuccess ? nil : added
427+ }
428+}
apple/SkrepkaApp/Forms.swiftnew file+198
@@ -0,0 +1,198 @@
1+import ImageIO
2+import Skrepka
3+import SwiftUI
4+import UIKit
5+
6+/// Decode an avatar, bounded to `maxPixel` on its long edge.
7+///
8+/// A contact's `photo` is whatever bytes a peer put in a `profile` payload, and nothing
9+/// upstream bounds the image's *decoded* size — only the blob's. `UIImage(data:)` would
10+/// honour whatever dimensions the header claims, so a few KB of base64 declaring
11+/// 30000x30000 costs ~3.6 GB of bitmap and the app is jetsammed. ImageIO decodes straight
12+/// to the thumbnail size, so the cost is capped no matter what the source claims to be.
13+///
14+/// 512 covers the largest avatar we draw (88pt at @3x) with headroom; our own photos come
15+/// out of `PhotoPicker` at 256, and a thumbnail is never upscaled past the source.
16+func decodeImage(_ base64: String, maxPixel: Int = 512) -> UIImage? {
17+ guard !base64.isEmpty, let data = Data(base64Encoded: base64) else { return nil }
18+ let options: [CFString: Any] = [
19+ kCGImageSourceCreateThumbnailFromImageAlways: true,
20+ kCGImageSourceCreateThumbnailWithTransform: true,
21+ kCGImageSourceThumbnailMaxPixelSize: maxPixel,
22+ ]
23+ guard let source = CGImageSourceCreateWithData(data as CFData, nil),
24+ let thumb = CGImageSourceCreateThumbnailAtIndex(source, 0, options as CFDictionary)
25+ else { return nil }
26+ return UIImage(cgImage: thumb)
27+}
28+
29+struct AddContactView: View {
30+ @ObservedObject var core: Core
31+ @State private var input = ""
32+ @State private var nickname = ""
33+ @State private var scanning = false
34+
35+ var body: some View {
36+ NavigationStack {
37+ Form {
38+ Section("Public key") {
39+ TextField("@p syllables or hex", text: $input, axis: .vertical)
40+ .autocorrectionDisabled()
41+ .textInputAutocapitalization(.never)
42+ Button { scanning = true } label: {
43+ Label("Scan QR code", systemImage: "qrcode.viewfinder")
44+ }
45+ }
46+ Section("Nickname (optional)") {
47+ TextField("e.g. Alice", text: $nickname)
48+ }
49+ if !core.view.error.isEmpty {
50+ Text(core.view.error).foregroundColor(.red)
51+ }
52+ }
53+ .navigationTitle("Add contact")
54+ .toolbar {
55+ ToolbarItem(placement: .cancellationAction) {
56+ Button("Cancel") { core.update(.showConversations) }
57+ }
58+ ToolbarItem(placement: .confirmationAction) {
59+ Button("Add") {
60+ core.update(.addContact(input: input, nickname: nickname))
61+ }.disabled(input.isEmpty)
62+ }
63+ }
64+ .sheet(isPresented: $scanning) {
65+ QRScannerView { code in
66+ input = scannedKeyPayload(code)
67+ scanning = false
68+ }
69+ }
70+ }
71+ }
72+}
73+
74+struct SettingsView: View {
75+ @ObservedObject var core: Core
76+ @State private var serverUrl = ""
77+ @State private var copied = false
78+
79+ var body: some View {
80+ NavigationStack {
81+ Form {
82+ Section("Your identity") {
83+ HStack {
84+ Avatar(base64: core.view.profile.photo, name: core.view.profile.displayName)
85+ VStack(alignment: .leading) {
86+ Text(core.view.profile.displayName.isEmpty
87+ ? "No name" : core.view.profile.displayName).font(.headline)
88+ Text(core.view.connStatus.capitalized)
89+ .font(.caption).foregroundColor(.secondary)
90+ }
91+ }
92+ if let qr = qrImage(core.view.myPubkeyHex) {
93+ Image(uiImage: qr).interpolation(.none).resizable().scaledToFit()
94+ .frame(maxWidth: 200).frame(maxWidth: .infinity)
95+ }
96+ Text(core.view.myPubkeyOb).font(.system(.footnote, design: .monospaced))
97+ .textSelection(.enabled)
98+ Button {
99+ // Expire the pasteboard item: a public key is not a secret, but it
100+ // is an identifier, and every app on the device can read the board.
101+ UIPasteboard.general.setItems(
102+ [[UIPasteboard.typeAutomatic: core.view.myPubkeyHex]],
103+ options: [.expirationDate: Date().addingTimeInterval(60)]
104+ )
105+ copied = true
106+ DispatchQueue.main.asyncAfter(deadline: .now() + 2) { copied = false }
107+ } label: {
108+ Label(copied ? "Copied!" : "Copy key", systemImage: "doc.on.doc")
109+ }
110+ Button { core.update(.showEditProfile) } label: {
111+ Label("Edit profile", systemImage: "pencil")
112+ }
113+ }
114+ Section("Server") {
115+ TextField("https://relay.example.com", text: $serverUrl)
116+ .autocorrectionDisabled().textInputAutocapitalization(.never)
117+ Button("Save & reconnect") {
118+ core.update(.setServerUrl(serverUrl))
119+ }.disabled(serverUrl.isEmpty || serverUrl == core.view.serverUrl)
120+ // A rejected URL sets `error` in the core and leaves the page open;
121+ // without this the Save button just does nothing, forever.
122+ if !core.view.error.isEmpty {
123+ Text(core.view.error).foregroundColor(.red)
124+ }
125+ }
126+ }
127+ .navigationTitle("Settings")
128+ .toolbar {
129+ ToolbarItem(placement: .cancellationAction) {
130+ Button("Done") { core.update(.showConversations) }
131+ }
132+ }
133+ .onAppear { serverUrl = core.view.serverUrl }
134+ }
135+ }
136+}
137+
138+struct EditProfileView: View {
139+ @ObservedObject var core: Core
140+ @State private var name = ""
141+ @State private var bio = ""
142+ @State private var photo: String?
143+ @State private var picking = false
144+
145+ var body: some View {
146+ NavigationStack {
147+ Form {
148+ Section {
149+ HStack {
150+ Spacer()
151+ Button { picking = true } label: {
152+ Avatar(base64: photo ?? "", name: name, size: 88)
153+ }
154+ Spacer()
155+ }
156+ Button("Choose photo") { picking = true }
157+ .frame(maxWidth: .infinity)
158+ }
159+ Section("Name") { TextField("Display name", text: $name) }
160+ Section("Bio") { TextField("About you", text: $bio, axis: .vertical) }
161+ // SaveProfile sets model.error on validation failures ("display name
162+ // too long", "bio too long", "photo too large") but leaves the page
163+ // open. Without displaying it the user taps Save, nothing happens, and
164+ // they have no idea why.
165+ if !core.view.error.isEmpty {
166+ Section {
167+ Text(core.view.error).foregroundColor(.red)
168+ }
169+ }
170+ }
171+ .navigationTitle("Edit profile")
172+ .toolbar {
173+ ToolbarItem(placement: .cancellationAction) {
174+ Button("Cancel") { core.update(.showConversations) }
175+ }
176+ ToolbarItem(placement: .confirmationAction) {
177+ Button("Save") {
178+ core.update(.saveProfile(displayName: name, bio: bio, photo: photo))
179+ }
180+ }
181+ }
182+ .sheet(isPresented: $picking) {
183+ PhotoPicker(
184+ onPick: { base64 in
185+ photo = base64
186+ picking = false
187+ },
188+ onCancel: { picking = false }
189+ )
190+ }
191+ .onAppear {
192+ name = core.view.profile.displayName
193+ bio = core.view.profile.bio
194+ photo = core.view.profile.photo.isEmpty ? nil : core.view.profile.photo
195+ }
196+ }
197+ }
198+}
apple/SkrepkaApp/Info-iOS.plistnew file+49
@@ -0,0 +1,49 @@
1+<?xml version="1.0" encoding="UTF-8"?>
2+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3+<plist version="1.0">
4+<dict>
5+ <key>CFBundleDevelopmentRegion</key>
6+ <string>$(DEVELOPMENT_LANGUAGE)</string>
7+ <key>CFBundleDisplayName</key>
8+ <string>Skrepka</string>
9+ <key>CFBundleExecutable</key>
10+ <string>$(EXECUTABLE_NAME)</string>
11+ <key>CFBundleIdentifier</key>
12+ <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
13+ <key>CFBundleInfoDictionaryVersion</key>
14+ <string>6.0</string>
15+ <key>CFBundleName</key>
16+ <string>$(PRODUCT_NAME)</string>
17+ <key>CFBundlePackageType</key>
18+ <string>APPL</string>
19+ <key>CFBundleShortVersionString</key>
20+ <string>1.0</string>
21+ <key>CFBundleVersion</key>
22+ <string>1</string>
23+ <key>NSAppTransportSecurity</key>
24+ <dict>
25+ <key>NSAllowsLocalNetworking</key>
26+ <true/>
27+ <key>NSExceptionDomains</key>
28+ <dict>
29+ <key>localhost</key>
30+ <dict>
31+ <key>NSExceptionAllowsInsecureHTTPLoads</key>
32+ <true/>
33+ <key>NSIncludesSubdomains</key>
34+ <true/>
35+ </dict>
36+ </dict>
37+ </dict>
38+ <key>NSCameraUsageDescription</key>
39+ <string>Scan a contact's QR code to add them.</string>
40+ <key>NSPhotoLibraryUsageDescription</key>
41+ <string>Choose a photo for your profile.</string>
42+ <key>UILaunchScreen</key>
43+ <dict/>
44+ <key>UISupportedInterfaceOrientations</key>
45+ <array>
46+ <string>UIInterfaceOrientationPortrait</string>
47+ </array>
48+</dict>
49+</plist>
apple/SkrepkaApp/PhotoPicker.swiftnew file+90
@@ -0,0 +1,90 @@
1+import ImageIO
2+import PhotosUI
3+import SwiftUI
4+import UIKit
5+import UniformTypeIdentifiers
6+
7+/// Presents the system photo picker; returns a 256px JPEG as base64.
8+struct PhotoPicker: UIViewControllerRepresentable {
9+ let onPick: (String) -> Void
10+ var onCancel: () -> Void = {}
11+
12+ func makeCoordinator() -> Coordinator { Coordinator(onPick: onPick, onCancel: onCancel) }
13+
14+ func makeUIViewController(context: Context) -> PHPickerViewController {
15+ var config = PHPickerConfiguration()
16+ config.filter = .images
17+ config.selectionLimit = 1
18+ let picker = PHPickerViewController(configuration: config)
19+ picker.delegate = context.coordinator
20+ return picker
21+ }
22+
23+ func updateUIViewController(_ uiViewController: PHPickerViewController, context: Context) {}
24+
25+ final class Coordinator: NSObject, PHPickerViewControllerDelegate {
26+ let onPick: (String) -> Void
27+ let onCancel: () -> Void
28+
29+ init(onPick: @escaping (String) -> Void, onCancel: @escaping () -> Void) {
30+ self.onPick = onPick
31+ self.onCancel = onCancel
32+ }
33+
34+ func picker(_ picker: PHPickerViewController, didFinishPicking results: [PHPickerResult]) {
35+ // Empty results means the user cancelled. Dismissal belongs to the caller's
36+ // `isPresented` binding — dismissing the controller behind SwiftUI's back
37+ // leaves the binding true, and the sheet never opens again.
38+ guard let provider = results.first?.itemProvider,
39+ provider.hasItemConformingToTypeIdentifier(UTType.image.identifier) else {
40+ DispatchQueue.main.async { self.onCancel() }
41+ return
42+ }
43+ _ = provider.loadFileRepresentation(forTypeIdentifier: UTType.image.identifier) { url, _ in
44+ // The temp file is deleted the moment this callback returns: decode inline.
45+ let base64 = url.flatMap { Self.thumbnailBase64(at: $0) }
46+ DispatchQueue.main.async {
47+ if let base64 { self.onPick(base64) } else { self.onCancel() }
48+ }
49+ }
50+ }
51+
52+ /// Downsample through ImageIO, which decodes straight to the target size. Loading
53+ /// a `UIImage` first would materialize the full bitmap — ~190 MB for a 48-megapixel
54+ /// shot — to then throw all but 256px of it away.
55+ static func thumbnailBase64(at url: URL) -> String? {
56+ let options: [CFString: Any] = [
57+ kCGImageSourceCreateThumbnailFromImageAlways: true,
58+ kCGImageSourceCreateThumbnailWithTransform: true, // honour the EXIF orientation
59+ kCGImageSourceShouldCacheImmediately: true,
60+ kCGImageSourceThumbnailMaxPixelSize: 256, // pixels, not points: no @2x/@3x inflation
61+ ]
62+ guard let source = CGImageSourceCreateWithURL(url as CFURL, nil),
63+ let thumb = CGImageSourceCreateThumbnailAtIndex(source, 0, options as CFDictionary)
64+ else { return nil }
65+ let image = UIImage(cgImage: thumb)
66+ // Reduce quality until the base64 fits within the protocol cap (MAX_PHOTO_LEN,
67+ // 64 KiB). A high-detail 256px frame can exceed the cap even at q0.7; without
68+ // this loop `SaveProfile` rejects the whole profile with no recourse for the user.
69+ let maxBase64Len = 64 * 1024
70+ var quality: CGFloat = 0.7
71+ while quality > 0.1 {
72+ if let jpegData = image.jpegData(compressionQuality: quality) {
73+ let base64 = jpegData.base64EncodedString()
74+ if base64.count <= maxBase64Len {
75+ return base64
76+ }
77+ }
78+ quality -= 0.1
79+ }
80+ // Last resort: the smallest quality that still produces something.
81+ // If even this exceeds the cap, return nil so onCancel fires rather
82+ // than sending an oversized payload the core will reject.
83+ let lastResort = image.jpegData(compressionQuality: 0.1)?.base64EncodedString()
84+ if let result = lastResort, result.count <= maxBase64Len {
85+ return result
86+ }
87+ return nil
88+ }
89+ }
90+}
apple/SkrepkaApp/QRView.swiftnew file+149
@@ -0,0 +1,149 @@
1+import AVFoundation
2+import CoreImage.CIFilterBuiltins
3+import SwiftUI
4+import UIKit
5+
6+/// Rendering context for QR generation. Building a CIContext is expensive (it spins up a
7+/// GPU/CPU render pipeline) and `qrImage` is called from inside a SwiftUI `body`.
8+private let ciContext = CIContext()
9+
10+/// Generate a QR code image from a string.
11+func qrImage(_ string: String) -> UIImage? {
12+ let context = ciContext
13+ let filter = CIFilter.qrCodeGenerator()
14+ filter.message = Data(string.utf8)
15+ guard let output = filter.outputImage else { return nil }
16+ let scaled = output.transformed(by: CGAffineTransform(scaleX: 8, y: 8))
17+ guard let cg = context.createCGImage(scaled, from: scaled.extent) else { return nil }
18+ return UIImage(cgImage: cg)
19+}
20+
21+/// A QR code carries whatever its author put there. Strip a leading scheme so a share
22+/// link (`skrepka:<key>`, `https://…/<key>`) yields the bare key the core will accept,
23+/// and so the pubkey field never silently fills with an unrelated URL.
24+// NOTE: This URL scheme stripping is arguably business logic that belongs in
25+// the core (see AGENTS.md). It is kept here for now because moving it requires
26+// an FFI change. The core's `try_parse_pubkey` validates the result regardless.
27+func scannedKeyPayload(_ raw: String) -> String {
28+ var value = raw.trimmingCharacters(in: .whitespacesAndNewlines)
29+ let schemes = ["skrepka://", "skrepka:", "https://", "http://"]
30+ if let scheme = schemes.first(where: { value.lowercased().hasPrefix($0) }) {
31+ value = String(value.dropFirst(scheme.count))
32+ // What remains of a link is host/path#key — the key is the last component.
33+ if let key = value.split(whereSeparator: { "/#?".contains($0) }).last {
34+ value = String(key)
35+ }
36+ }
37+ return value.trimmingCharacters(in: .whitespacesAndNewlines)
38+}
39+
40+/// A camera-backed QR scanner. Calls `onScan` with the decoded payload once.
41+struct QRScannerView: UIViewControllerRepresentable {
42+ let onScan: (String) -> Void
43+
44+ func makeCoordinator() -> Coordinator { Coordinator(onScan: onScan) }
45+
46+ func makeUIViewController(context: Context) -> ScannerVC {
47+ let vc = ScannerVC()
48+ vc.coordinator = context.coordinator
49+ return vc
50+ }
51+
52+ func updateUIViewController(_ uiViewController: ScannerVC, context: Context) {}
53+
54+ final class Coordinator: NSObject, AVCaptureMetadataOutputObjectsDelegate {
55+ let onScan: (String) -> Void
56+ private var done = false
57+ init(onScan: @escaping (String) -> Void) { self.onScan = onScan }
58+
59+ func metadataOutput(
60+ _ output: AVCaptureMetadataOutput,
61+ didOutput metadataObjects: [AVMetadataObject],
62+ from connection: AVCaptureConnection
63+ ) {
64+ guard !done,
65+ let obj = metadataObjects.first as? AVMetadataMachineReadableCodeObject,
66+ let value = obj.stringValue else { return }
67+ done = true
68+ DispatchQueue.main.async { self.onScan(value) }
69+ }
70+ }
71+}
72+
73+final class ScannerVC: UIViewController {
74+ weak var coordinator: QRScannerView.Coordinator?
75+ private let session = AVCaptureSession()
76+ private var previewLayer: AVCaptureVideoPreviewLayer?
77+
78+ override func viewDidLoad() {
79+ super.viewDidLoad()
80+ view.backgroundColor = .black
81+
82+ let status = AVCaptureDevice.authorizationStatus(for: .video)
83+ switch status {
84+ case .authorized:
85+ startSession()
86+ case .notDetermined:
87+ AVCaptureDevice.requestAccess(for: .video) { [weak self] granted in
88+ DispatchQueue.main.async {
89+ if granted { self?.startSession() }
90+ else { self?.showPermissionDenied() }
91+ }
92+ }
93+ default:
94+ showPermissionDenied()
95+ }
96+ }
97+
98+ private func startSession() {
99+ guard let device = AVCaptureDevice.default(for: .video),
100+ let input = try? AVCaptureDeviceInput(device: device),
101+ session.canAddInput(input) else { return }
102+ session.addInput(input)
103+
104+ let output = AVCaptureMetadataOutput()
105+ guard session.canAddOutput(output) else { return }
106+ session.addOutput(output)
107+ output.setMetadataObjectsDelegate(coordinator, queue: .main)
108+ output.metadataObjectTypes = [.qr]
109+
110+ let preview = AVCaptureVideoPreviewLayer(session: session)
111+ preview.frame = view.layer.bounds
112+ preview.videoGravity = .resizeAspectFill
113+ view.layer.addSublayer(preview)
114+ previewLayer = preview
115+ }
116+
117+ private func showPermissionDenied() {
118+ let label = UILabel()
119+ label.text = "Camera permission required"
120+ label.textAlignment = .center
121+ label.textColor = .secondaryLabel
122+ view.addSubview(label)
123+ label.translatesAutoresizingMaskIntoConstraints = false
124+ NSLayoutConstraint.activate([
125+ label.centerXAnchor.constraint(equalTo: view.centerXAnchor),
126+ label.centerYAnchor.constraint(equalTo: view.centerYAnchor),
127+ ])
128+ }
129+
130+ override func viewDidLayoutSubviews() {
131+ super.viewDidLayoutSubviews()
132+ previewLayer?.frame = view.bounds
133+ }
134+
135+ override func viewWillAppear(_ animated: Bool) {
136+ super.viewWillAppear(animated)
137+ if !session.isRunning && !session.inputs.isEmpty {
138+ DispatchQueue.global(qos: .userInitiated).async { self.session.startRunning() }
139+ }
140+ }
141+
142+ override func viewWillDisappear(_ animated: Bool) {
143+ super.viewWillDisappear(animated)
144+ // Both start and stop block until the camera pipeline settles — never on main.
145+ if session.isRunning {
146+ DispatchQueue.global(qos: .userInitiated).async { self.session.stopRunning() }
147+ }
148+ }
149+}
apple/SkrepkaApp/SkrepkaApp.swiftnew file+166
@@ -0,0 +1,166 @@
1+import BackgroundTasks
2+import SwiftUI
3+import UIKit
4+
5+@main
6+struct SkrepkaApp: App {
7+ /// Must stay in step with `BGTaskSchedulerPermittedIdentifiers` in `project.yml`.
8+ /// An identifier the Info.plist does not list is refused by `submit` — quietly, and
9+ /// forever: the task simply never runs, and nothing at runtime says why.
10+ static let refreshTaskId = "lol.skrepka.SkrepkaApp.fetch"
11+
12+ @StateObject private var core = Core.shared
13+ @Environment(\.scenePhase) private var scenePhase
14+
15+ init() {
16+ // Launch handlers must all be registered before the app finishes launching, so this
17+ // cannot wait for a view to appear. The handler is called on a background queue;
18+ // `BackgroundRefresh` hops to the main actor, where the core lives.
19+ BGTaskScheduler.shared.register(
20+ forTaskWithIdentifier: Self.refreshTaskId,
21+ using: nil
22+ ) { task in
23+ guard let task = task as? BGAppRefreshTask else {
24+ task.setTaskCompleted(success: false)
25+ return
26+ }
27+ BackgroundRefresh.handle(task)
28+ }
29+ }
30+
31+ var body: some Scene {
32+ WindowGroup {
33+ RootView(core: core)
34+ .onChange(of: scenePhase) { _, phase in
35+ switch phase {
36+ case .active:
37+ // Backgrounding kills the long-poll socket and the app stops running,
38+ // so on return the core would otherwise sit out its whole backoff
39+ // (up to 30s) before noticing. Reconnect immediately instead.
40+ guard core.view.hasIdentity else { return }
41+ core.update(.connect)
42+ case .background:
43+ // Ask for a refresh pass on the way out — that is the only window in
44+ // which a pending request is any use, and the system replaces the
45+ // previous request for this identifier rather than queueing another.
46+ BackgroundRefresh.schedule()
47+ default:
48+ break
49+ }
50+ }
51+ }
52+ }
53+}
54+
55+/// Opportunistic catch-up while the app is backgrounded.
56+///
57+/// This does **not** keep the poll loop alive — iOS grants no such thing to a non-VoIP app.
58+/// `BGAppRefreshTask` wakes us for a few tens of seconds at times the system chooses from the
59+/// user's launch habits (`earliestBeginDate` is a floor, not a schedule: a pass may be hours
60+/// late, or never come at all if the app was force-quit), and suspends us again as soon as we
61+/// report completion. So this drains whatever the relay is already holding, on the system's
62+/// terms. Prompt delivery would need a push, and the protocol has no APNs surface at all.
63+@MainActor
64+enum BackgroundRefresh {
65+ /// The system coalesces and defers as it sees fit; asking for less does not make it come
66+ /// sooner, it only tells the scheduler we have nothing useful to do before then.
67+ private static let earliestBegin: TimeInterval = 30 * 60
68+
69+ /// The grant is around 30s, and an app that habitually burns all of it — or worse, gets
70+ /// expired — is scheduled less often. Leave headroom.
71+ private static let budget: TimeInterval = 25
72+
73+ /// How long to hold the poll open once we are online. The relay answers a poll at once
74+ /// when it is holding mail and otherwise long-polls ~25s, so a few seconds of silence
75+ /// already *is* the answer "nothing waiting" — there is nothing to be gained by waiting
76+ /// out the long poll, and the budget is better left unspent.
77+ private static let idleGrace: TimeInterval = 5
78+
79+ static func schedule() {
80+ let request = BGAppRefreshTaskRequest(identifier: SkrepkaApp.refreshTaskId)
81+ request.earliestBeginDate = Date(timeIntervalSinceNow: earliestBegin)
82+ // Throws on `.notPermitted` (the identifier is missing from the Info.plist — a
83+ // packaging bug, see `SkrepkaApp.refreshTaskId`) and on `.tooManyPendingTaskRequests`.
84+ // Neither is actionable from here, and neither is worth failing a scene transition.
85+ try? BGTaskScheduler.shared.submit(request)
86+ }
87+
88+ nonisolated static func handle(_ task: BGAppRefreshTask) {
89+ let work = Task { @MainActor in await run(task) }
90+ // Expiry only *cancels*; `run` owns the single `setTaskCompleted` call.
91+ // The handler is assigned immediately after Task creation — the window
92+ // where the task is alive but unhandled is one assignment, and the system
93+ // does not expire a task in its first few milliseconds.
94+ task.expirationHandler = { work.cancel() }
95+ }
96+
97+ private static func run(_ task: BGAppRefreshTask) async {
98+ // Before anything that can fail or be cut short: we still want the next pass.
99+ schedule()
100+
101+ // Every kv file is written `completeUnlessOpen`, so while the device is
102+ // locked an *existing* one cannot be opened and every read fails. The
103+ // core now distinguishes a failed read from an absent key (`parse_kv`
104+ // returns `Err` vs `Ok(None)`), so it surfaces a storage error instead
105+ // of silently loading an empty model. But the guard is still the right
106+ // call: a locked device means the core would come up with errors on
107+ // every key, no contacts, and no history — and even if it doesn't
108+ // overwrite, it would poll into an empty conversation list and ack
109+ // messages the user can't see. Locked means we must not run at all.
110+ guard UIApplication.shared.isProtectedDataAvailable else {
111+ task.setTaskCompleted(success: false)
112+ return
113+ }
114+
115+ let deadline = Date(timeIntervalSinceNow: budget)
116+ let core = Core.shared
117+
118+ // Reading `Core.shared` is what boots the core when the system launched us straight
119+ // into the background. Startup is asynchronous — the identity, then five kv loads —
120+ // and the core fires its own `Connect` once the settings land. It must be left to do
121+ // that: nudging it beforehand would authenticate against the *default* relay, because
122+ // the configured URL has not been read off disk yet.
123+ guard await settle(by: deadline, until: { core.view.hasIdentity }) else {
124+ task.setTaskCompleted(success: false)
125+ return
126+ }
127+
128+ // Still offline once startup has had its chance: either the core is idle, or it was
129+ // suspended part-way through a backoff whose timer will not come due for another 30s.
130+ // A `Connect` collapses that wait. (It is a no-op when the core already believes it
131+ // is online — there, a stale poll is the watchdog's problem, not ours.)
132+ let startupDeadline = min(deadline, Date(timeIntervalSinceNow: 3))
133+ let connecting = await settle(by: startupDeadline, until: {
134+ core.view.connStatus != "offline"
135+ })
136+ if !connecting {
137+ core.update(.connect)
138+ }
139+
140+ // Online is the token in hand and the poll issued. Anything the relay was holding
141+ // comes back on that first page.
142+ guard await settle(by: deadline, until: { core.view.connStatus == "online" }) else {
143+ task.setTaskCompleted(success: false)
144+ return
145+ }
146+ try? await Task.sleep(for: .seconds(idleGrace))
147+
148+ task.setTaskCompleted(success: !Task.isCancelled)
149+ }
150+
151+ /// Waits for a condition on the view, or for the deadline (or expiry) to overtake it.
152+ ///
153+ /// The core has nothing to await — it publishes a `ViewModel` and that is the whole of
154+ /// its output — so the shell watches that. A 500ms tick across the handful of transitions
155+ /// this cares about is cheaper than threading a Combine subscription through an actor hop.
156+ /// The previous 200ms interval was unnecessarily aggressive for a background task with a
157+ /// 25s budget that only cares about a few state transitions.
158+ private static func settle(by deadline: Date, until condition: () -> Bool) async -> Bool {
159+ while !condition() {
160+ guard !Task.isCancelled, Date() < deadline else { return false }
161+ // Cancellation makes this throw at once; the guard above is what breaks the loop.
162+ try? await Task.sleep(for: .milliseconds(500))
163+ }
164+ return true
165+ }
166+}
apple/SkrepkaApp/Views.swiftnew file+390
@@ -0,0 +1,390 @@
1+import Skrepka
2+import SwiftUI
3+import UIKit
4+
5+let accent = Color(red: 98 / 255, green: 54 / 255, blue: 1.0)
6+
7+/// Hoisted out of `body`: a DateFormatter costs real work to build, and these are read
8+/// once per message bubble on every render.
9+private let timeFormatter: DateFormatter = {
10+ let fmt = DateFormatter()
11+ fmt.timeStyle = .short // locale-aware: 24h or AM/PM, as the user has it set
12+ return fmt
13+}()
14+
15+private let dateFormatter: DateFormatter = {
16+ let fmt = DateFormatter()
17+ fmt.dateStyle = .short
18+ return fmt
19+}()
20+
21+func formatTime(_ ms: Int64) -> String {
22+ timeFormatter.string(from: Date(timeIntervalSince1970: Double(ms) / 1000))
23+}
24+
25+/// Conversation-list stamp: the time for today, the date for anything older.
26+func formatStamp(_ ms: Int64) -> String {
27+ let date = Date(timeIntervalSince1970: Double(ms) / 1000)
28+ return Calendar.current.isDateInToday(date)
29+ ? timeFormatter.string(from: date)
30+ : dateFormatter.string(from: date)
31+}
32+
33+struct RootView: View {
34+ @ObservedObject var core: Core
35+
36+ var body: some View {
37+ Group {
38+ if !core.view.hasIdentity {
39+ identity
40+ } else {
41+ switch core.view.page {
42+ case "chat": ChatView(core: core)
43+ case "add_contact": AddContactView(core: core)
44+ case "settings": SettingsView(core: core)
45+ case "edit_profile": EditProfileView(core: core)
46+ default: ConversationsView(core: core)
47+ }
48+ }
49+ }
50+ }
51+
52+ /// Without an identity there is no app. If loading one failed, say so — a spinner
53+ /// that never resolves is the worst possible way to report a Keychain error.
54+ @ViewBuilder private var identity: some View {
55+ let error = core.identityError ?? (core.view.error.isEmpty ? nil : core.view.error)
56+ if let error {
57+ VStack(spacing: 12) {
58+ Image(systemName: "exclamationmark.triangle")
59+ .font(.largeTitle).foregroundColor(.orange)
60+ Text("Identity unavailable").font(.headline)
61+ Text(error)
62+ .font(.footnote).foregroundColor(.secondary)
63+ .multilineTextAlignment(.center)
64+ Button("Try again") { core.bootIdentity() }
65+ .buttonStyle(.borderedProminent).tint(accent)
66+ }
67+ .padding(32)
68+ } else {
69+ ProgressView("Generating identity…")
70+ }
71+ }
72+}
73+
74+struct ConnDot: View {
75+ let status: String
76+ var color: Color {
77+ switch status {
78+ case "online": return .green
79+ case "connecting": return .orange
80+ default: return .gray
81+ }
82+ }
83+ var body: some View {
84+ HStack(spacing: 5) {
85+ Circle().fill(color).frame(width: 8, height: 8)
86+ Text(status.capitalized).font(.caption).foregroundColor(.secondary)
87+ }
88+ .fixedSize()
89+ }
90+}
91+
92+/// Decoded avatars, keyed by their base64 source. A contact's photo is attacker-supplied
93+/// bytes off the wire; decoding it synchronously inside `body` hands any peer a way to
94+/// stall the main thread on every single render.
95+private let avatarCache: NSCache<NSString, UIImage> = {
96+ let cache = NSCache<NSString, UIImage>()
97+ cache.countLimit = 128
98+ return cache
99+}()
100+
101+struct Avatar: View {
102+ let base64: String
103+ let name: String
104+ var size: CGFloat = 44
105+ @State private var image: UIImage?
106+
107+ var body: some View {
108+ Group {
109+ if let image {
110+ Image(uiImage: image).resizable().scaledToFill()
111+ .frame(width: size, height: size).clipShape(Circle())
112+ } else {
113+ ZStack {
114+ Circle().fill(accent.opacity(0.15))
115+ Text(initials(name)).font(.system(size: size * 0.4, weight: .semibold))
116+ .foregroundColor(accent)
117+ }.frame(width: size, height: size)
118+ }
119+ }
120+ .task(id: base64) { await load() }
121+ }
122+
123+ private func load() async {
124+ guard !base64.isEmpty else {
125+ image = nil
126+ return
127+ }
128+ let key = base64 as NSString
129+ if let cached = avatarCache.object(forKey: key) {
130+ image = cached
131+ return
132+ }
133+ let source = base64
134+ let decoded = await Task.detached(priority: .userInitiated) { decodeImage(source) }.value
135+ guard !Task.isCancelled else { return }
136+ if let decoded { avatarCache.setObject(decoded, forKey: key) }
137+ image = decoded
138+ }
139+}
140+
141+func initials(_ name: String) -> String {
142+ let parts = name.split(separator: " ")
143+ let chars = parts.prefix(2).compactMap { $0.first }
144+ return chars.isEmpty ? "?" : String(chars).uppercased()
145+}
146+
147+/// Toggles `Contact::blocked` in the core. Blocked peers stay in the contact list —
148+/// listed apart — so the block is always reversible from the UI.
149+struct BlockToggle: View {
150+ @ObservedObject var core: Core
151+ let peer: String
152+ let blocked: Bool
153+
154+ var body: some View {
155+ Button(role: blocked ? nil : .destructive) {
156+ core.update(.setBlocked(peer: peer, blocked: !blocked))
157+ } label: {
158+ Label(blocked ? "Unblock" : "Block",
159+ systemImage: blocked ? "hand.raised.slash" : "hand.raised")
160+ }
161+ }
162+}
163+
164+/// Permanently removes a contact, their conversation history, and any queued
165+/// outbox items for them. Unlike blocking (which silences but keeps the entry),
166+/// deletion is irreversible — so a confirmation prompt gates the action.
167+struct DeleteContactButton: View {
168+ @ObservedObject var core: Core
169+ let peer: String
170+
171+ @State private var confirming = false
172+
173+ var body: some View {
174+ Button(role: .destructive) {
175+ confirming = true
176+ } label: {
177+ Label("Delete contact", systemImage: "trash")
178+ }
179+ .confirmationDialog(
180+ "Delete this contact? Their message history will be removed and cannot be recovered.",
181+ isPresented: $confirming,
182+ titleVisibility: .visible
183+ ) {
184+ Button("Delete", role: .destructive) {
185+ core.update(.deleteContact(peer: peer))
186+ }
187+ Button("Cancel", role: .cancel) {}
188+ }
189+ }
190+}
191+
192+struct ConversationsView: View {
193+ @ObservedObject var core: Core
194+
195+ var visible: [ContactVM] { core.view.contacts.filter { !$0.blocked } }
196+ var blocked: [ContactVM] { core.view.contacts.filter { $0.blocked } }
197+
198+ var body: some View {
199+ NavigationStack {
200+ Group {
201+ if core.view.contacts.isEmpty {
202+ ContentUnavailableView(
203+ "No conversations",
204+ systemImage: "bubble.left.and.bubble.right",
205+ description: Text("Tap + to add a contact by their key or QR code.")
206+ )
207+ } else {
208+ List {
209+ ForEach(visible, id: \.pubkey) { row($0) }
210+ if !blocked.isEmpty {
211+ Section("Blocked") {
212+ ForEach(blocked, id: \.pubkey) { row($0).opacity(0.5) }
213+ }
214+ }
215+ }
216+ }
217+ }
218+ .navigationTitle("Skrepka")
219+ .toolbar {
220+ ToolbarItem(placement: .topBarLeading) { ConnDot(status: core.view.connStatus) }
221+ ToolbarItem(placement: .topBarTrailing) {
222+ Button { core.update(.showAddContact) } label: { Image(systemName: "plus") }
223+ }
224+ ToolbarItem(placement: .topBarTrailing) {
225+ Button { core.update(.showSettings) } label: { Image(systemName: "gearshape") }
226+ }
227+ }
228+ }
229+ }
230+
231+ private func row(_ contact: ContactVM) -> some View {
232+ Button { core.update(.openChat(contact.pubkey)) } label: {
233+ HStack(spacing: 12) {
234+ Avatar(base64: contact.photo, name: contact.name)
235+ VStack(alignment: .leading, spacing: 2) {
236+ Text(contact.name).font(.headline).foregroundColor(.primary)
237+ Text(contact.lastMessage.isEmpty ? contact.ob : contact.lastMessage)
238+ .font(.subheadline).foregroundColor(.secondary).lineLimit(1)
239+ }
240+ Spacer()
241+ if contact.lastTs > 0 {
242+ Text(formatStamp(contact.lastTs))
243+ .font(.caption).foregroundColor(.secondary)
244+ }
245+ }
246+ }
247+ .contextMenu {
248+ BlockToggle(core: core, peer: contact.pubkey, blocked: contact.blocked)
249+ DeleteContactButton(core: core, peer: contact.pubkey)
250+ }
251+ }
252+}
253+
254+struct ChatView: View {
255+ @ObservedObject var core: Core
256+ @State private var draft = ""
257+
258+ var body: some View {
259+ VStack(spacing: 0) {
260+ messages
261+ composer
262+ }
263+ .safeAreaInset(edge: .top) { header }
264+ }
265+
266+ /// The open chat's contact row. The core only fills in `photo` for this one peer,
267+ /// and only while their chat is up — a base64 avatar is far too big to clone into
268+ /// every contact on every render — so the header is the one place it can be shown.
269+ private var peer: ContactVM? {
270+ core.view.contacts.first { $0.pubkey == core.view.activePeer }
271+ }
272+
273+ private var header: some View {
274+ HStack(spacing: 12) {
275+ Button { core.update(.back) } label: { Image(systemName: "chevron.left") }
276+ Avatar(base64: peer?.photo ?? "", name: core.view.activePeerName, size: 32)
277+ VStack(alignment: .leading, spacing: 1) {
278+ Text(core.view.activePeerName).font(.headline)
279+ Text(core.view.activePeerOb).font(.caption2).foregroundColor(.secondary).lineLimit(1)
280+ }
281+ Spacer()
282+ if core.view.activePeerBlocked {
283+ Text("Blocked").font(.caption).foregroundColor(.secondary)
284+ }
285+ Menu {
286+ BlockToggle(
287+ core: core,
288+ peer: core.view.activePeer,
289+ blocked: core.view.activePeerBlocked
290+ )
291+ DeleteContactButton(core: core, peer: core.view.activePeer)
292+ } label: {
293+ Image(systemName: "ellipsis.circle")
294+ }
295+ }
296+ .padding(.horizontal).padding(.vertical, 8)
297+ .background(.bar)
298+ }
299+
300+ private var messages: some View {
301+ ScrollViewReader { proxy in
302+ ScrollView {
303+ LazyVStack(spacing: 8) {
304+ ForEach(core.view.messages, id: \.id) { msg in
305+ MessageBubble(msg: msg).id(msg.id)
306+ }
307+ }.padding()
308+ }
309+ .onAppear {
310+ // A chat opens at its newest message, not its oldest.
311+ if let last = core.view.messages.last {
312+ withAnimation(nil) { proxy.scrollTo(last.id, anchor: .bottom) }
313+ }
314+ }
315+ .onChange(of: core.view.messages.count) {
316+ if let last = core.view.messages.last { proxy.scrollTo(last.id, anchor: .bottom) }
317+ }
318+ }
319+ }
320+
321+ private var composer: some View {
322+ VStack(spacing: 0) {
323+ // Errors from send_text ("message too long", "contact list is full",
324+ // "gave up sending …", "invalid key") are set on model.error and rendered
325+ // into view.error, but without this the chat page swallowed them — the
326+ // user tapped send, it failed, and they saw nothing.
327+ if !core.view.error.isEmpty {
328+ Text(core.view.error)
329+ .font(.caption)
330+ .foregroundColor(.red)
331+ .frame(maxWidth: .infinity, alignment: .leading)
332+ .padding(.horizontal)
333+ .padding(.top, 4)
334+ }
335+ HStack(spacing: 8) {
336+ TextField("Message", text: $draft, axis: .vertical)
337+ .textFieldStyle(.roundedBorder)
338+ .lineLimit(1...4)
339+ .disabled(core.view.activePeerBlocked)
340+ Button {
341+ let text = draft.trimmingCharacters(in: .whitespacesAndNewlines)
342+ guard !text.isEmpty else { return }
343+ core.update(.composeChanged(text))
344+ core.update(.sendText)
345+ // Only clear the local draft when the core actually accepted the
346+ // message. send_text refuses (and sets error) on a blocked peer,
347+ // an oversized body, or a full contact list — and it preserves
348+ // model.compose on those paths so the user's text is not lost.
349+ // Clearing draft unconditionally wiped it from the UI even though
350+ // the core kept it, so the failure was both invisible and
351+ // destructive: the text was gone with no explanation.
352+ if core.view.error.isEmpty {
353+ draft = ""
354+ }
355+ } label: {
356+ Image(systemName: "arrow.up.circle.fill").font(.title)
357+ }
358+ .disabled(draft.trimmingCharacters(in: .whitespacesAndNewlines).isEmpty
359+ || core.view.activePeerBlocked)
360+ }
361+ }
362+ .padding(.horizontal).padding(.vertical, 8)
363+ .background(.bar)
364+ }
365+}
366+
367+struct MessageBubble: View {
368+ let msg: MessageVM
369+ var body: some View {
370+ HStack {
371+ if msg.outgoing { Spacer(minLength: 40) }
372+ VStack(alignment: msg.outgoing ? .trailing : .leading, spacing: 2) {
373+ Text(msg.body)
374+ .foregroundColor(msg.outgoing ? .white : .primary)
375+ HStack(spacing: 4) {
376+ Text(formatTime(msg.ts)).font(.caption2)
377+ .foregroundColor(msg.outgoing ? .white.opacity(0.7) : .secondary)
378+ if msg.outgoing {
379+ Image(systemName: msg.delivered ? "checkmark.circle.fill" : "checkmark")
380+ .font(.caption2).foregroundColor(.white.opacity(0.8))
381+ }
382+ }
383+ }
384+ .padding(.horizontal, 12).padding(.vertical, 8)
385+ .background(msg.outgoing ? accent : Color(.systemGray5))
386+ .clipShape(RoundedRectangle(cornerRadius: 16))
387+ if !msg.outgoing { Spacer(minLength: 40) }
388+ }
389+ }
390+}
apple/project.ymlnew file+71
@@ -0,0 +1,71 @@
1+name: SkrepkaApp
2+packages:
3+ Shared:
4+ path: ./generated/Shared
5+ App:
6+ path: ./generated/App/Skrepka
7+options:
8+ bundleIdPrefix: lol.skrepka
9+ deploymentTarget:
10+ iOS: "17.0"
11+attributes:
12+ BuildIndependentTargetsInParallel: true
13+
14+targets:
15+ SkrepkaApp-iOS:
16+ type: application
17+ platform: iOS
18+ deploymentTarget: "17.0"
19+ sources:
20+ - path: SkrepkaApp
21+ excludes:
22+ - "Info-*.plist"
23+ - "*.entitlements"
24+ settings:
25+ base:
26+ # iPhone only: the app declares portrait-only, which iPadOS rejects for an iPad
27+ # build (it requires landscape too). Rather than pretend to support a form factor
28+ # the layout was never designed for, don't claim it.
29+ TARGETED_DEVICE_FAMILY: "1"
30+ entitlements:
31+ path: SkrepkaApp/SkrepkaApp.entitlements
32+ properties:
33+ # Plaintext message history sits in Application Support. Default every file the
34+ # app creates to Complete protection, so it is unreadable while the device is
35+ # locked — the KV store then opts into UnlessOpen for the files it holds open.
36+ com.apple.developer.default-data-protection: NSFileProtectionComplete
37+ info:
38+ path: SkrepkaApp/Info-iOS.plist
39+ properties:
40+ CFBundleDisplayName: Skrepka
41+ UILaunchScreen: {}
42+ UISupportedInterfaceOrientations:
43+ - UIInterfaceOrientationPortrait
44+ NSCameraUsageDescription: Scan a contact's QR code to add them.
45+ NSPhotoLibraryUsageDescription: Choose a photo for your profile.
46+ # Opportunistic catch-up polls while backgrounded (BGAppRefreshTask). `fetch` is the
47+ # mode BGAppRefreshTask runs under; `processing` is for long deferrable work and is
48+ # not what this is. The scheduler refuses — silently — any identifier not listed in
49+ # BGTaskSchedulerPermittedIdentifiers, so it must match `SkrepkaApp.refreshTaskId`.
50+ UIBackgroundModes:
51+ - fetch
52+ BGTaskSchedulerPermittedIdentifiers:
53+ - lol.skrepka.SkrepkaApp.fetch
54+ # Declared so App Store Connect stops asking on every upload.
55+ ITSAppUsesNonExemptEncryption: false
56+ # Relays must be reachable over TLS. The only cleartext exception is a
57+ # locally-run `just server`, for development.
58+ NSAppTransportSecurity:
59+ NSAllowsLocalNetworking: true
60+ NSExceptionDomains:
61+ localhost:
62+ NSExceptionAllowsInsecureHTTPLoads: true
63+ NSIncludesSubdomains: true
64+ dependencies:
65+ - package: Shared
66+ product: SkrepkaShared
67+ - package: App
68+ product: Skrepka
69+ scheme:
70+ management:
71+ shared: true
client/ApiClient.fsdeleted−134
@@ -1,134 +0,0 @@
1−namespace Skrepka
2−
3−open System
4−open System.Net.Http
5−open System.Text
6−open System.Text.Json
7−open System.Text.Json.Serialization
8−open System.Threading.Tasks
9−
10−module ApiClient =
11−
12− [<CLIMutable>]
13− type EventPayload = { EncryptedBlob: string; Timestamp: int64 }
14−
15− [<JsonConverter(typeof<EventTypeConverter>)>]
16− type EventType = Message | Ack | UnknownEvent of string
17− and private EventTypeConverter() =
18− inherit JsonConverter<EventType>()
19− override _.Read(reader, _, _) =
20− match reader.GetString() with
21− | "message" -> Message
22− | "ack" -> Ack
23− | s -> UnknownEvent s
24− override _.Write(writer, value, _) =
25− writer.WriteStringValue(
26− match value with
27− | Message -> "message"
28− | Ack -> "ack"
29− | UnknownEvent s -> s)
30−
31− [<CLIMutable>]
32− type PollEvent = { Id: string; EventType: EventType; Payload: EventPayload }
33−
34− [<JsonConverter(typeof<MessageStatusConverter>)>]
35− type MessageStatus = Delivered | Federated | Queued | Rejected | Unauthorized | UnknownStatus of string
36− and private MessageStatusConverter() =
37− inherit JsonConverter<MessageStatus>()
38− override _.Read(reader, _, _) =
39− match reader.GetString() with
40− | "delivered" -> Delivered
41− | "federated" -> Federated
42− | "queued" -> Queued
43− | "rejected" -> Rejected
44− | "unauthorized" -> Unauthorized
45− | s -> UnknownStatus s
46− override _.Write(writer, value, _) =
47− writer.WriteStringValue(
48− match value with
49− | Delivered -> "delivered"
50− | Federated -> "federated"
51− | Queued -> "queued"
52− | Rejected -> "rejected"
53− | Unauthorized -> "unauthorized"
54− | UnknownStatus s -> s)
55−
56− [<CLIMutable>]
57− type private SendResult = { Status: MessageStatus }
58−
59− [<CLIMutable>]
60− type PollResponse = { Cursor: int64; Events: PollEvent array }
61−
62− [<CLIMutable>]
63− type private ChallengeResponse = { challenge: string }
64−
65− [<CLIMutable>]
66− type private VerifyResponse = { token: string }
67−
68− /// Awaits a Task without converting TaskCanceledException to F# async
69− /// cancellation (which bypasses try...with). Re-raises it as a regular exception.
70− let private awaitTask (t: Task<'T>) : Async<'T> =
71− Async.FromContinuations(fun (ok, err, _cancel) ->
72− t.ContinueWith(fun (t: Task<'T>) ->
73− if t.IsFaulted then err t.Exception.InnerException
74− elif t.IsCanceled then err (TimeoutException("Request timed out"))
75− else ok t.Result)
76− |> ignore)
77−
78− let private jsonOpts =
79− JsonSerializerOptions(PropertyNameCaseInsensitive = true, NumberHandling = JsonNumberHandling.AllowReadingFromString)
80−
81− let private client =
82− let c = new HttpClient()
83− c.Timeout <- TimeSpan.FromSeconds(60.)
84− c
85−
86− let private pollClient =
87− let c = new HttpClient()
88− c.Timeout <- TimeSpan.FromSeconds(120.)
89− c
90−
91− let private sendRequest (httpClient: HttpClient) (url: string) (body: string) (token: string option) =
92− async {
93− use request = new HttpRequestMessage(HttpMethod.Post, url)
94− request.Content <- new StringContent(body, Encoding.UTF8, "application/json")
95− token |> Option.iter (fun t -> request.Headers.Add("Authorization", $"Bearer {t}"))
96− use! response = httpClient.SendAsync(request) |> awaitTask
97− let! text = response.Content.ReadAsStringAsync() |> awaitTask
98− use doc = JsonDocument.Parse(text)
99− match doc.RootElement.TryGetProperty("error") with
100− | true, err -> return failwith $"{url}: {err.GetString()}"
101− | _ -> return text
102− }
103−
104− let private postJson<'T> httpClient url body token =
105− async {
106− let! text = sendRequest httpClient url body token
107− return JsonSerializer.Deserialize<'T>(text, jsonOpts)
108− }
109−
110− let authenticate (serverUrl: string) (identity: Crypto.Identity) =
111− async {
112− let body = JsonSerializer.Serialize({| pubkey = identity.PubKeyHex |})
113− let! resp = postJson<ChallengeResponse> client $"{serverUrl}/auth/challenge" body None
114− let sigHex = Crypto.signChallenge identity.PrivKey resp.challenge
115− let body = JsonSerializer.Serialize({| pubkey = identity.PubKeyHex; challenge = resp.challenge; signature = sigHex |})
116− let! resp = postJson<VerifyResponse> client $"{serverUrl}/auth/verify" body None
117− if String.IsNullOrEmpty(resp.token) then failwith "Authentication rejected by server"
118− return resp.token
119− }
120−
121− let sendMessage (serverUrl: string) (token: string) (toHex: string) (blobHex: string) (timestamp: int64) =
122− let body = JsonSerializer.Serialize({| ``to`` = toHex; encryptedBlob = blobHex; timestamp = timestamp |})
123− async {
124− let! result = postJson<SendResult> client $"{serverUrl}/messages" body (Some token)
125− return result.Status
126− }
127−
128− let poll (serverUrl: string) (token: string) (cursor: int64) =
129− let body = JsonSerializer.Serialize({| cursor = cursor; timeout = 30000 |})
130− postJson<PollResponse> pollClient $"{serverUrl}/poll" body (Some token)
131−
132− let ackMessages (serverUrl: string) (token: string) (messageIds: string list) =
133− let body = JsonSerializer.Serialize({| messageIds = messageIds |})
134− sendRequest client $"{serverUrl}/messages/ack" body (Some token) |> Async.Ignore
client/App.fsdeleted−615
@@ -1,615 +0,0 @@
1−namespace Skrepka
2−
3−open System
4−open System.Text.Json
5−open System.Text.Json.Serialization
6−open Fabulous
7−open Fabulous.Maui
8−open Microsoft.Maui.Graphics
9−
10−open type Fabulous.Maui.View
11−
12−module App =
13−
14− open Store
15− open Crypto
16− open ApiClient
17−
18− // ── Domain Types ──
19−
20− [<JsonConverter(typeof<EnvelopeTypeConverter>)>]
21− type private EnvelopeType = Text | UnknownEnvelope of string
22− and private EnvelopeTypeConverter() =
23− inherit JsonConverter<EnvelopeType>()
24− override _.Read(reader, _, _) =
25− match reader.GetString() with
26− | "text" -> Text
27− | s -> UnknownEnvelope s
28− override _.Write(writer, value, _) =
29− writer.WriteStringValue(
30− match value with
31− | Text -> "text"
32− | UnknownEnvelope s -> s)
33−
34− [<CLIMutable>]
35− type private TextEnvelope =
36− { [<JsonPropertyName("type")>] Type: EnvelopeType
37− [<JsonPropertyName("id")>] Id: string
38− [<JsonPropertyName("body")>] Body: string }
39−
40− type Page =
41− | Setup
42− | Conversations
43− | Chat of pubkey: string
44− | AddContact
45− | Settings
46−
47− type Session = { Url: string; Token: string; Identity: Identity }
48−
49− type ConnStatus =
50− | Offline
51− | Connecting
52− | Online of token: string
53−
54− type AuthState =
55− | NoIdentity
56− | Identified of identity: Identity * conn: ConnStatus
57−
58− type IncomingMessage = { SenderPubkey: string; Message: ChatMessage }
59−
60− type PollReceived = { Events: int; Messages: int; Errors: int; FirstError: string option }
61−
62− type PollStatus =
63− | Idle
64− | Polling
65− | Received of PollReceived
66− | PollError of string
67−
68− // ── Model ──
69−
70− type Model =
71− { Page: Page
72− Auth: AuthState
73− ServerUrl: string
74− Contacts: Contact list
75− PollStatus: PollStatus
76− Messages: Map<string, ChatMessage list>
77− Error: string option
78− PollCursor: int64
79− Compose: string
80− ContactPubkey: string
81− ContactNickname: string }
82−
83− // ── Msg ──
84−
85− type StateLoadResult =
86− | IdentityAndData of Identity * Data
87− | IdentityOnly of Identity
88− | NothingSaved
89−
90− type Msg =
91− | SetPage of Page
92− | SetCompose of string
93− | SetContactPubkey of string
94− | SetContactNickname of string
95− | GenIdentity
96− | IdentityReady of Identity
97− | SetServerUrl of string
98− | DoConnect
99− | AuthOk of string
100− | AuthErr of string
101− | DoDisconnect
102− | DoSend
103− | SendFailed of string
104− | DoSaveContact
105− | PollResult of messages: IncomingMessage list * status: PollStatus * cursor: int64
106− | CopyPubKey
107− | DismissError
108− | StateLoaded of StateLoadResult
109−
110− // ── CmdMsg ──
111−
112− type CmdMsg =
113− | CmdGenIdentity
114− | CmdConnect of url: string * identity: Identity
115− | CmdSend of session: Session * recipientHex: string * text: string * messageId: string
116− | CmdPoll of session: Session * cursor: int64
117− | CmdCopyToClipboard of string
118− | CmdLoadState
119− | CmdSaveIdentity of Identity
120− | CmdSaveData of Data
121−
122− // ── Helpers ──
123−
124− let private hexToOb (hex: string) =
125− Crypto.fromHex hex |> Phonemic.toOb
126−
127− let private truncOb (ob: string) =
128− let parts = ob.Split('-')
129−
130− if parts.Length <= 4 then
131− ob
132− else
133− $"{parts.[0]}-{parts.[1]}..{parts.[parts.Length - 2]}-{parts.[parts.Length - 1]}"
134−
135− let private truncKey (hex: string) = hexToOb hex |> truncOb
136−
137− let private tryParsePubkey (input: string) =
138− let input = input.Trim()
139− Phonemic.fromOb input
140− |> Option.orElseWith (fun () -> Crypto.tryFromHex input)
141− |> Option.filter (fun bytes -> bytes.Length = 32)
142−
143− let private contactName (contacts: Contact list) (pk: string) =
144− contacts
145− |> List.tryFind (fun c -> c.Pubkey = pk)
146− |> Option.map _.Nickname
147− |> Option.defaultValue (truncKey pk)
148−
149− let private messagesFor (pk: string) (messages: Map<string, ChatMessage list>) =
150− messages |> Map.tryFind pk |> Option.defaultValue []
151−
152− let private appendMessage (pk: string) (msg: ChatMessage) (messages: Map<string, ChatMessage list>) =
153− let existing = messagesFor pk messages
154− if existing |> List.exists (fun m -> m.Id = msg.Id) then messages
155− else Map.add pk (existing @ [ msg ]) messages
156−
157− let private addContactIfNew (contact: Contact) (contacts: Contact list) =
158− if contacts |> List.exists (fun c -> c.Pubkey = contact.Pubkey) then contacts
159− else contacts @ [ contact ]
160−
161− let private upsertContact (contact: Contact) (contacts: Contact list) =
162− match contacts |> List.tryFindIndex (fun c -> c.Pubkey = contact.Pubkey) with
163− | Some i -> contacts |> List.updateAt i contact
164− | None -> contacts @ [ contact ]
165−
166− let private trySession model =
167− match model.Auth with
168− | Identified(id, Online token) -> Some { Url = model.ServerUrl; Token = token; Identity = id }
169− | _ -> None
170−
171− let private setConn status model =
172− match model.Auth with
173− | Identified(id, _) -> { model with Auth = Identified(id, status) }
174− | NoIdentity -> model
175−
176− let private saveCmdMsg model =
177− CmdSaveData { Contacts = model.Contacts; Messages = model.Messages; ServerUrl = Some model.ServerUrl; PollCursor = model.PollCursor }
178−
179− let private connStatusLabel = function
180− | NoIdentity | Identified(_, Offline) -> "OFFLINE"
181− | Identified(_, Connecting) -> "CONNECTING"
182− | Identified(_, Online _) -> "ONLINE"
183−
184− // ── Init ──
185−
186− let init () =
187− { Page = Setup
188− Auth = NoIdentity
189− ServerUrl = "http://localhost:8080"
190− PollStatus = Idle
191− Contacts = []
192− Messages = Map.empty
193− Error = None
194− PollCursor = 0L
195− Compose = ""
196− ContactPubkey = ""
197− ContactNickname = "" },
198− [ CmdLoadState ]
199−
200− // ── Update ──
201−
202− let update msg model =
203− match msg with
204− | SetPage(Chat pk) ->
205− { model with Page = Chat pk; Compose = "" }, []
206− | SetPage AddContact ->
207− { model with Page = AddContact; ContactPubkey = ""; ContactNickname = "" }, []
208− | SetPage page -> { model with Page = page }, []
209−
210− | SetCompose text -> { model with Compose = text }, []
211− | SetContactPubkey pk -> { model with ContactPubkey = pk }, []
212− | SetContactNickname nn -> { model with ContactNickname = nn }, []
213−
214− | GenIdentity -> model, [ CmdGenIdentity ]
215−
216− | IdentityReady identity ->
217− { model with Auth = Identified(identity, Offline); Page = Settings },
218− [ CmdSaveIdentity identity ]
219−
220− | SetServerUrl url -> { model with ServerUrl = url }, []
221−
222− | DoConnect ->
223− match model.Auth with
224− | Identified(id, _) ->
225− model |> setConn Connecting, [ CmdConnect(model.ServerUrl, id) ]
226− | NoIdentity -> { model with Error = Some "No identity generated" }, []
227−
228− | AuthOk token ->
229− match model.Auth with
230− | Identified(id, Connecting) ->
231− let session = { Url = model.ServerUrl; Token = token; Identity = id }
232− { model with Auth = Identified(id, Online token); Page = Conversations; Error = None },
233− [ CmdPoll(session, model.PollCursor) ]
234− | _ -> model, []
235−
236− | AuthErr err -> { setConn Offline model with Error = Some err }, []
237−
238− | DoDisconnect -> model |> setConn Offline, []
239−
240− | DoSend ->
241− match model.Page, trySession model with
242− | Chat pk, Some session when model.Compose <> "" ->
243− let id = Guid.NewGuid().ToString()
244− let outMsg =
245− { Id = id
246− Body = model.Compose
247− Timestamp = DateTimeOffset.UtcNow
248− IsOutgoing = true }
249−
250− let model' =
251− { model with
252− Compose = ""
253− Messages = model.Messages |> appendMessage pk outMsg }
254−
255− model', [ CmdSend(session, pk, model.Compose, id); saveCmdMsg model' ]
256− | _ -> model, []
257−
258− | SendFailed err -> { model with Error = Some err }, []
259−
260− | PollResult(incoming, status, newCursor) ->
261− let model' =
262− incoming
263− |> List.fold
264− (fun (m: Model) msg ->
265− { m with
266− Contacts = m.Contacts |> addContactIfNew { Pubkey = msg.SenderPubkey; Nickname = truncKey msg.SenderPubkey }
267− Messages = m.Messages |> appendMessage msg.SenderPubkey msg.Message })
268− { model with PollStatus = status; PollCursor = newCursor }
269−
270− model',
271− [ match trySession model' with
272− | Some session -> CmdPoll(session, model'.PollCursor)
273− | None -> ()
274− if not incoming.IsEmpty then saveCmdMsg model' ]
275−
276− | DoSaveContact ->
277− if model.ContactPubkey <> "" && model.ContactNickname <> "" then
278− match tryParsePubkey model.ContactPubkey with
279− | Some bytes ->
280− let contact: Contact = { Pubkey = Crypto.toHex bytes; Nickname = model.ContactNickname }
281−
282− let model' =
283− { model with
284− Contacts = model.Contacts |> upsertContact contact
285− Page = Conversations }
286−
287− model', [ saveCmdMsg model' ]
288− | None -> { model with Error = Some "Invalid public key" }, []
289− else
290− model, []
291−
292− | CopyPubKey ->
293− match model.Auth with
294− | Identified(id, _) -> model, [ CmdCopyToClipboard(hexToOb id.PubKeyHex) ]
295− | NoIdentity -> model, []
296−
297− | DismissError -> { model with Error = None }, []
298−
299− | StateLoaded(IdentityAndData(identity, data)) ->
300− let model' =
301− { model with
302− Auth = Identified(identity, Connecting)
303− Contacts = data.Contacts
304− Messages = data.Messages
305− ServerUrl = data.ServerUrl |> Option.defaultValue model.ServerUrl
306− PollCursor = data.PollCursor
307− Page = Conversations }
308− model', [ CmdConnect(model'.ServerUrl, identity) ]
309− | StateLoaded(IdentityOnly identity) ->
310− { model with Auth = Identified(identity, Offline); Page = Settings }, []
311− | StateLoaded NothingSaved -> model, []
312−
313− // ── mapCmd ──
314−
315− let private asyncCmd (op: Async<Msg>) : Cmd<Msg> =
316− Cmd.ofEffect (fun dispatch ->
317− async {
318− let! msg = op
319− dispatch msg
320− }
321− |> Async.Start)
322−
323− let private decryptEvent (privKey: byte[]) (payload: EventPayload) =
324− try
325− let blob = Crypto.fromHex payload.EncryptedBlob
326−
327− match Crypto.decrypt privKey blob with
328− | Some(plaintext, senderHex) ->
329− let envelope = JsonSerializer.Deserialize<TextEnvelope>(plaintext)
330−
331− match envelope.Type with
332− | Text ->
333− Ok { SenderPubkey = senderHex
334− Message =
335− { Id = envelope.Id
336− Body = envelope.Body
337− Timestamp = DateTimeOffset.FromUnixTimeSeconds(payload.Timestamp)
338− IsOutgoing = false } }
339− | UnknownEnvelope t -> Error $"unknown envelope type: {t}"
340− | None -> Error "decrypt failed"
341− with ex ->
342− Error $"parse: {ex.Message}"
343−
344− let mapCmd cmdMsg =
345− match cmdMsg with
346− | CmdGenIdentity ->
347− Cmd.ofEffect (fun dispatch -> dispatch (IdentityReady(Crypto.generateIdentity ())))
348−
349− | CmdConnect(url, identity) ->
350− asyncCmd (async {
351− try
352− let! token = authenticate url identity
353− return AuthOk token
354− with ex ->
355− return AuthErr ex.Message
356− })
357−
358− | CmdSend(session, recipientHex, text, messageId) ->
359− Cmd.ofEffect (fun dispatch ->
360− async {
361− try
362− let recipPub = Crypto.fromHex recipientHex
363− let ts = DateTimeOffset.UtcNow.ToUnixTimeSeconds()
364− let payload = JsonSerializer.Serialize<TextEnvelope>({ Type = Text; Id = messageId; Body = text })
365− let blob = Crypto.encrypt session.Identity.PrivKey recipPub payload
366− let! status = sendMessage session.Url session.Token recipientHex (Crypto.toHex blob) ts
367−
368− match status with
369− | Delivered | Federated | Queued -> ()
370− | Rejected -> dispatch (SendFailed "Message rejected by server")
371− | Unauthorized -> dispatch (SendFailed "Not authorized to deliver message")
372− | UnknownStatus s -> dispatch (SendFailed $"Unexpected status: {s}")
373− with ex ->
374− dispatch (SendFailed $"Send failed: {ex.Message}")
375− }
376− |> Async.Start)
377−
378− | CmdPoll(session, cursor) ->
379− asyncCmd (async {
380− try
381− let! response = poll session.Url session.Token cursor
382− let ackIds = response.Events |> Array.map _.Id |> Array.toList
383−
384− let messages, errors =
385− Array.foldBack
386− (fun (evt: PollEvent) (msgs, errs) ->
387− match evt.EventType with
388− | Message ->
389− match decryptEvent session.Identity.PrivKey evt.Payload with
390− | Ok msg -> (msg :: msgs, errs)
391− | Error err -> (msgs, err :: errs)
392− | Ack | UnknownEvent _ -> (msgs, errs))
393− response.Events
394− ([], [])
395−
396− if not ackIds.IsEmpty then
397− do! ackMessages session.Url session.Token ackIds
398−
399− let status = Received { Events = response.Events.Length; Messages = messages.Length; Errors = errors.Length; FirstError = List.tryHead errors }
400− return PollResult(messages, status, response.Cursor)
401− with
402− | :? TimeoutException ->
403− return PollResult([], Polling, cursor)
404− | ex ->
405− do! Async.Sleep 3000
406− return PollResult([], PollError ex.Message, cursor)
407− })
408−
409− | CmdCopyToClipboard text ->
410− Cmd.ofEffect (fun _ ->
411− Microsoft.Maui.ApplicationModel.DataTransfer.Clipboard.Default.SetTextAsync(text)
412− |> ignore)
413−
414− | CmdLoadState ->
415− asyncCmd (async {
416− match! Store.loadIdentity () with
417− | Some id ->
418− return StateLoaded(
419− match Store.loadData () with
420− | Some data -> IdentityAndData(id, data)
421− | None -> IdentityOnly id)
422− | None -> return StateLoaded NothingSaved
423− })
424−
425− | CmdSaveIdentity identity ->
426− Cmd.ofEffect (fun _ -> Store.saveIdentity identity |> Async.Start)
427−
428− | CmdSaveData data ->
429− Cmd.ofEffect (fun _ -> Store.saveData data)
430−
431− // ── View ──
432−
433− let private formatPollStatus = function
434− | Idle -> ""
435− | Polling -> "polling..."
436− | Received r ->
437− $"evts:{r.Events} msgs:{r.Messages} errs:{r.Errors}"
438− + (match r.FirstError with Some e -> $" [{e}]" | None -> "")
439− | PollError msg -> $"poll error: {msg}"
440−
441− let private viewErrorBanner (error: string option) =
442− VStack(spacing = 4.) {
443− match error with
444− | Some err ->
445− Label(err).textColor(Colors.Red).font(size = 12.)
446− Button("Dismiss", DismissError)
447− | None -> ()
448− }
449−
450− let private viewSetup () =
451− ContentPage(
452− (VStack(spacing = 24.) {
453− Label("Skrepka")
454− .font(size = 32.)
455− .centerTextHorizontal()
456−
457− Label("End-to-end encrypted messaging")
458− .font(size = 16.)
459− .centerTextHorizontal()
460−
461− Button("Generate Identity", GenIdentity)
462− .centerHorizontal()
463− })
464− .padding(30.)
465− .centerVertical()
466− )
467−
468− let private viewSettings model =
469− ContentPage(
470− ScrollView(
471− (VStack(spacing = 16.) {
472− Label("Settings")
473− .font(size = 24.)
474− .centerTextHorizontal()
475−
476− match model.Auth with
477− | Identified(id, conn) ->
478− Label("Your Public Key:")
479−
480− Label(truncOb (hexToOb id.PubKeyHex))
481− .font(size = 14.)
482−
483− Button("Copy Public Key", CopyPubKey)
484−
485− Label("Server:")
486−
487− match conn with
488− | Online _ -> Label(model.ServerUrl).font(size = 14.)
489− | _ -> Entry(model.ServerUrl, SetServerUrl)
490−
491− viewErrorBanner model.Error
492−
493− match conn with
494− | Offline -> Button("Connect", DoConnect)
495− | Connecting -> Label("Connecting...").centerTextHorizontal()
496− | Online _ ->
497− Button("Disconnect", DoDisconnect)
498− Button("Go to Conversations", SetPage Conversations)
499− | NoIdentity -> ()
500− })
501− .padding(20.)
502− )
503− )
504−
505− let private viewConversations model =
506− ContentPage(
507− ScrollView(
508− (VStack(spacing = 8.) {
509− HStack(spacing = 8.) {
510− Label("Conversations")
511− .font(size = 24.)
512−
513− Button("+", SetPage AddContact)
514− Button("Settings", SetPage Settings)
515− }
516−
517− Label($"{connStatusLabel model.Auth} | {formatPollStatus model.PollStatus}")
518− .font(size = 10.)
519− .textColor(Colors.DimGray)
520−
521− viewErrorBanner model.Error
522−
523− if model.Contacts.IsEmpty then
524− Label("No contacts yet. Tap + to add one.")
525− .centerTextHorizontal()
526− .textColor(Colors.Gray)
527−
528− for c in model.Contacts do
529− let preview =
530− messagesFor c.Pubkey model.Messages
531− |> List.tryLast
532− |> Option.map (fun m -> if m.Body.Length > 40 then m.Body.[..39] + "..." else m.Body)
533− |> Option.defaultValue ""
534−
535− Button($"{c.Nickname}\n{preview}", SetPage(Chat c.Pubkey))
536− })
537− .padding(20.)
538− )
539− )
540−
541− let private viewChat model pk =
542− let name = contactName model.Contacts pk
543− let msgs = messagesFor pk model.Messages
544−
545− ContentPage(
546− (VStack(spacing = 8.) {
547− HStack(spacing = 8.) {
548− Button("< Back", SetPage Conversations)
549−
550− Label(name)
551− .font(size = 20.)
552− .centerTextHorizontal()
553− }
554−
555− viewErrorBanner model.Error
556−
557− if msgs.IsEmpty then
558− Label("No messages yet")
559− .padding(8.)
560− .font(size = 14.)
561− else
562− for m in msgs do
563− Label(if m.IsOutgoing then $"You: {m.Body}" else m.Body)
564− .padding(8.)
565− .font(size = 14.)
566−
567− HStack(spacing = 8.) {
568− Entry(model.Compose, SetCompose)
569− .placeholder("Message...")
570−
571− Button("Send", DoSend)
572− }
573− })
574− .padding(12.)
575− )
576−
577− let private viewAddContact model =
578− ContentPage(
579− (VStack(spacing = 16.) {
580− HStack(spacing = 8.) {
581− Button("< Back", SetPage Conversations)
582−
583− Label("Add Contact")
584− .font(size = 20.)
585− }
586−
587− viewErrorBanner model.Error
588−
589− Label("Public Key:")
590− Entry(model.ContactPubkey, SetContactPubkey)
591− .placeholder("sampel-palnet-...")
592−
593− Label("Nickname:")
594− Entry(model.ContactNickname, SetContactNickname)
595−
596− Button("Save Contact", DoSaveContact)
597− .centerHorizontal()
598− })
599− .padding(20.)
600− )
601−
602− let view model =
603− let page =
604− match model.Page with
605− | Setup -> viewSetup ()
606− | Settings -> viewSettings model
607− | Conversations -> viewConversations model
608− | Chat pk -> viewChat model pk
609− | AddContact -> viewAddContact model
610−
611− Application() { Window(page) }
612−
613− let program =
614− Program.statefulWithCmdMsg init update mapCmd
615− |> Program.withView view
client/Crypto.fsdeleted−83
@@ -1,83 +0,0 @@
1−namespace Skrepka
2−
3−open System
4−open System.Text
5−open System.Security.Cryptography
6−open Sodium
7−
8−module Crypto =
9−
10− type Identity = { PrivKey: byte[]; PubKeyHex: string }
11−
12− let toHex (bytes: byte[]) : string =
13− Convert.ToHexString(bytes).ToLowerInvariant()
14−
15− let fromHex (hex: string) : byte[] =
16− Convert.FromHexString(hex)
17−
18− let tryFromHex (hex: string) : byte[] option =
19− try Some(Convert.FromHexString(hex))
20− with :? FormatException -> None
21−
22− let identityFromPrivKey (privKey: byte[]) : Identity =
23− { PrivKey = privKey; PubKeyHex = toHex privKey.[32..63] }
24−
25− let generateIdentity () : Identity =
26− PublicKeyAuth.GenerateKeyPair().PrivateKey |> identityFromPrivKey
27−
28− let signChallenge (privKey: byte[]) (challenge: string) : string =
29− let message = Encoding.UTF8.GetBytes(challenge)
30− PublicKeyAuth.SignDetached(message, privKey) |> toHex
31−
32− let private deriveKey ephPub recipientX25519Pub rawSecret =
33− let salt = Array.append ephPub recipientX25519Pub
34− let info = Encoding.UTF8.GetBytes("skrepka-v1")
35− HKDF.DeriveKey(HashAlgorithmName.SHA256, rawSecret, 32, salt, info)
36−
37− // Blob layout: [ephPub(32) | nonce(24) | ciphertext | senderPub(32) | signature(64)]
38− let private ephPubLen = 32
39− let private nonceLen = 24
40− let private pubLen = 32
41− let private sigLen = 64
42− let private headerLen = ephPubLen + nonceLen
43− let private trailerLen = pubLen + sigLen
44− let private minBlobLen = headerLen + 16 + trailerLen // 16 = AEAD tag
45−
46− let encrypt (senderPrivKey: byte[]) (recipientEd25519Pub: byte[]) (plaintext: string) : byte[] =
47− let senderPubKey = senderPrivKey.[32..63]
48− let ephKp = PublicKeyBox.GenerateKeyPair()
49− let recipientX25519Pub =
50− PublicKeyAuth.ConvertEd25519PublicKeyToCurve25519PublicKey(recipientEd25519Pub)
51− let rawSecret = ScalarMult.Mult(ephKp.PrivateKey, recipientX25519Pub)
52− let key = deriveKey ephKp.PublicKey recipientX25519Pub rawSecret
53− let nonce = SodiumCore.GetRandomBytes(24)
54− let ptBytes = Encoding.UTF8.GetBytes(plaintext)
55− let ciphertext = SecretAeadXChaCha20Poly1305.Encrypt(ptBytes, nonce, key)
56− let signature = PublicKeyAuth.SignDetached(ciphertext, senderPrivKey)
57− Array.concat [| ephKp.PublicKey; nonce; ciphertext; senderPubKey; signature |]
58−
59− let decrypt (recipientPrivKey: byte[]) (blob: byte[]) : (string * string) option =
60− if blob.Length < minBlobLen then
61− None
62− else
63− try
64− let ephPub = blob.[.. ephPubLen - 1]
65− let nonce = blob.[ephPubLen .. headerLen - 1]
66− let ciphertext = blob.[headerLen .. blob.Length - trailerLen - 1]
67− let senderPub = blob.[blob.Length - trailerLen .. blob.Length - sigLen - 1]
68− let signature = blob.[blob.Length - sigLen ..]
69−
70− if not (PublicKeyAuth.VerifyDetached(signature, ciphertext, senderPub)) then
71− None
72− else
73− let recipientX25519Priv =
74− PublicKeyAuth.ConvertEd25519SecretKeyToCurve25519SecretKey(recipientPrivKey)
75− let rawSecret = ScalarMult.Mult(recipientX25519Priv, ephPub)
76− let recipientEd25519Pub = recipientPrivKey.[32..63]
77− let recipientX25519Pub =
78− PublicKeyAuth.ConvertEd25519PublicKeyToCurve25519PublicKey(recipientEd25519Pub)
79− let key = deriveKey ephPub recipientX25519Pub rawSecret
80− let plaintext = SecretAeadXChaCha20Poly1305.Decrypt(ciphertext, nonce, key)
81− Some(Encoding.UTF8.GetString(plaintext), toHex senderPub)
82− with _ ->
83− None
client/MauiProgram.fsdeleted−16
@@ -1,16 +0,0 @@
1−namespace Skrepka
2−
3−open Microsoft.Maui.Hosting
4−open Fabulous.Maui
5−
6−type MauiProgram =
7− static member CreateMauiApp() =
8− MauiApp
9− .CreateBuilder()
10− .UseFabulousApp(App.program)
11− .ConfigureFonts(fun fonts ->
12− fonts
13− .AddFont("OpenSans-Regular.ttf", "OpenSansRegular")
14− .AddFont("OpenSans-Semibold.ttf", "OpenSansSemibold")
15− |> ignore)
16− .Build()
client/Phonemic.fsdeleted−110
@@ -1,110 +0,0 @@
1−namespace Skrepka
2−
3−open System
4−
5−module Phonemic =
6−
7− // Urbit @p syllable tables (256 prefixes, 256 suffixes)
8− // Each byte pair encodes as prefix[hi] + suffix[lo]
9−
10− let private prefixes =
11− [| "doz"; "mar"; "bin"; "wan"; "sam"; "lit"; "sig"; "hid"
12− "fid"; "lis"; "sog"; "dir"; "wac"; "sab"; "wis"; "sib"
13− "rig"; "sol"; "dop"; "mod"; "fog"; "lid"; "hop"; "dar"
14− "dor"; "lor"; "hod"; "fol"; "rin"; "tog"; "sil"; "mir"
15− "hol"; "pas"; "lac"; "rov"; "liv"; "dal"; "sat"; "lib"
16− "tab"; "han"; "tic"; "pid"; "tor"; "bol"; "fos"; "dot"
17− "los"; "dil"; "for"; "pil"; "ram"; "tir"; "win"; "tad"
18− "bic"; "dif"; "roc"; "wid"; "bis"; "das"; "mid"; "lop"
19− "ril"; "nar"; "dap"; "mol"; "san"; "loc"; "nov"; "sit"
20− "nid"; "tip"; "sic"; "rop"; "wit"; "nat"; "pan"; "min"
21− "rit"; "pod"; "mot"; "tam"; "tol"; "sav"; "pos"; "nap"
22− "nop"; "som"; "fin"; "fon"; "ban"; "mor"; "wor"; "sip"
23− "ron"; "nor"; "bot"; "wic"; "soc"; "wat"; "dol"; "mag"
24− "pic"; "dav"; "bid"; "bal"; "tim"; "tas"; "mal"; "lig"
25− "siv"; "tag"; "pad"; "sal"; "div"; "dac"; "tan"; "sid"
26− "fab"; "tar"; "mon"; "ran"; "nis"; "wol"; "mis"; "pal"
27− "las"; "dis"; "map"; "rab"; "tob"; "rol"; "lat"; "lon"
28− "nod"; "nav"; "fig"; "nom"; "nib"; "pag"; "sop"; "ral"
29− "bil"; "had"; "doc"; "rid"; "moc"; "pac"; "rav"; "rip"
30− "fal"; "tod"; "til"; "tin"; "hap"; "mic"; "fan"; "pat"
31− "tac"; "lab"; "mog"; "sim"; "son"; "pin"; "lom"; "ric"
32− "tap"; "fir"; "has"; "bos"; "bat"; "poc"; "hac"; "tid"
33− "hav"; "sap"; "lin"; "dib"; "hos"; "dab"; "bit"; "bar"
34− "rac"; "par"; "lod"; "dos"; "bor"; "toc"; "hil"; "mac"
35− "tom"; "dig"; "fil"; "fas"; "mit"; "hob"; "har"; "mig"
36− "hin"; "rad"; "mas"; "hal"; "rag"; "lag"; "fad"; "top"
37− "mop"; "hab"; "nil"; "nos"; "mil"; "fop"; "fam"; "dat"
38− "nol"; "din"; "hat"; "nac"; "ris"; "fot"; "rib"; "hoc"
39− "nim"; "lar"; "fit"; "wal"; "rap"; "sar"; "nal"; "mos"
40− "lan"; "don"; "dan"; "lad"; "dov"; "riv"; "bac"; "pol"
41− "lap"; "tal"; "pit"; "nam"; "bon"; "ros"; "ton"; "fod"
42− "pon"; "sov"; "noc"; "sor"; "lav"; "mat"; "mip"; "fip" |]
43−
44− let private suffixes =
45− [| "zod"; "nec"; "bud"; "wes"; "sev"; "per"; "sut"; "let"
46− "ful"; "pen"; "syt"; "dur"; "wep"; "ser"; "wyl"; "sun"
47− "ryp"; "syx"; "dyr"; "nup"; "heb"; "peg"; "lup"; "dep"
48− "dys"; "put"; "lug"; "hec"; "ryt"; "tyv"; "syd"; "nex"
49− "lun"; "mep"; "lut"; "sep"; "pes"; "del"; "sul"; "ped"
50− "tem"; "led"; "tul"; "met"; "wen"; "byn"; "hex"; "feb"
51− "pyl"; "dul"; "het"; "mev"; "rut"; "tyl"; "wyd"; "tep"
52− "bes"; "dex"; "sef"; "wyc"; "bur"; "der"; "nep"; "pur"
53− "rys"; "reb"; "den"; "nut"; "sub"; "pet"; "rul"; "syn"
54− "reg"; "tyd"; "sup"; "sem"; "wyn"; "rec"; "meg"; "net"
55− "sec"; "mul"; "nym"; "tev"; "web"; "sum"; "mut"; "nyx"
56− "rex"; "teb"; "fus"; "hep"; "ben"; "mus"; "wyx"; "sym"
57− "sel"; "ruc"; "dec"; "wex"; "syr"; "wet"; "dyl"; "myn"
58− "mes"; "det"; "bet"; "bel"; "tux"; "tug"; "myr"; "pel"
59− "syp"; "ter"; "meb"; "set"; "dut"; "deg"; "tex"; "sur"
60− "fel"; "tud"; "nux"; "rux"; "ren"; "wyt"; "nub"; "med"
61− "lyt"; "dus"; "neb"; "rum"; "tyn"; "seg"; "lyx"; "pun"
62− "res"; "red"; "fun"; "rev"; "ref"; "mec"; "ted"; "rus"
63− "bex"; "leb"; "dux"; "ryn"; "num"; "pyx"; "ryg"; "ryx"
64− "fep"; "tyr"; "tus"; "tyc"; "leg"; "nem"; "fer"; "mer"
65− "ten"; "lus"; "nus"; "syl"; "tec"; "mex"; "pub"; "rym"
66− "tuc"; "fyl"; "lep"; "deb"; "ber"; "mug"; "hut"; "tun"
67− "byl"; "sud"; "pem"; "dev"; "lur"; "def"; "bus"; "bep"
68− "run"; "mel"; "pex"; "dyt"; "byt"; "typ"; "lev"; "myl"
69− "wed"; "duc"; "fur"; "fex"; "nul"; "luc"; "len"; "ner"
70− "lex"; "rup"; "ned"; "lec"; "ryd"; "lyd"; "fen"; "wel"
71− "nyd"; "hus"; "rel"; "rud"; "nes"; "hes"; "fet"; "des"
72− "ret"; "dun"; "ler"; "nyr"; "seb"; "hul"; "ryl"; "lud"
73− "rem"; "lys"; "fyn"; "wer"; "ryc"; "sug"; "nys"; "nyl"
74− "lyn"; "dyn"; "dem"; "lux"; "fed"; "sed"; "bec"; "mun"
75− "lyr"; "tes"; "mud"; "nyt"; "byr"; "sen"; "weg"; "fyr"
76− "mur"; "tel"; "rep"; "teg"; "pec"; "nel"; "nev"; "fes" |]
77−
78− let private prefixMap =
79− prefixes |> Array.mapi (fun i s -> s, byte i) |> Map.ofArray
80−
81− let private suffixMap =
82− suffixes |> Array.mapi (fun i s -> s, byte i) |> Map.ofArray
83−
84− let toOb (bytes: byte[]) : string =
85− bytes
86− |> Array.chunkBySize 2
87− |> Array.map (fun pair -> $"{prefixes.[int pair.[0]]}{suffixes.[int pair.[1]]}")
88− |> String.concat "-"
89−
90− let fromOb (s: string) : byte[] option =
91− let pairs = s.Split('-', StringSplitOptions.RemoveEmptyEntries)
92−
93− if pairs.Length = 0 then
94− None
95− else
96−
97− let decoded =
98− pairs
99− |> Array.choose (fun sp ->
100− if sp.Length = 6 then
101− match Map.tryFind sp.[0..2] prefixMap, Map.tryFind sp.[3..5] suffixMap with
102− | Some hi, Some lo -> Some(hi, lo)
103− | _ -> None
104− else
105− None)
106−
107− if decoded.Length = pairs.Length then
108− decoded |> Array.collect (fun (hi, lo) -> [| hi; lo |]) |> Some
109− else
110− None
client/Platforms/Android/AndroidManifest.xmldeleted−6
@@ -1,6 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<manifest xmlns:android="http://schemas.android.com/apk/res/android">
3− <application android:allowBackup="true" android:icon="@mipmap/appicon" android:roundIcon="@mipmap/appicon_round" android:supportsRtl="true"></application>
4− <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
5− <uses-permission android:name="android.permission.INTERNET" />
6−</manifest>
client/Platforms/Android/MainActivity.fsdeleted−17
@@ -1,17 +0,0 @@
1−namespace Skrepka
2−
3−open Android.App
4−open Android.Content.PM
5−open Microsoft.Maui
6−
7−[<Activity(Theme = "@style/Maui.SplashTheme",
8− MainLauncher = true,
9− ConfigurationChanges =
10− (ConfigChanges.ScreenSize
11− ||| ConfigChanges.Orientation
12− ||| ConfigChanges.UiMode
13− ||| ConfigChanges.ScreenLayout
14− ||| ConfigChanges.SmallestScreenSize
15− ||| ConfigChanges.Density))>]
16−type MainActivity() =
17− inherit MauiAppCompatActivity()
client/Platforms/Android/MainApplication.fsdeleted−10
@@ -1,10 +0,0 @@
1−namespace Skrepka
2−
3−open Android.App
4−open Microsoft.Maui
5−
6−[<Application>]
7−type MainApplication(handle, ownership) =
8− inherit MauiApplication(handle, ownership)
9−
10− override _.CreateMauiApp() = MauiProgram.CreateMauiApp()
client/Platforms/Android/Resources/values/colors.xmldeleted−6
@@ -1,6 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<resources>
3− <color name="colorPrimary">#512BD4</color>
4− <color name="colorPrimaryDark">#2B0B98</color>
5− <color name="colorAccent">#2B0B98</color>
6−</resources>
client/Platforms/MacCatalyst/AppDelegate.fsdeleted−10
@@ -1,10 +0,0 @@
1−namespace Skrepka
2−
3−open Foundation
4−open Microsoft.Maui
5−
6−[<Register("AppDelegate")>]
7−type AppDelegate() =
8− inherit MauiUIApplicationDelegate()
9−
10− override this.CreateMauiApp() = MauiProgram.CreateMauiApp()
client/Platforms/MacCatalyst/Info.plistdeleted−35
@@ -1,35 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8"?>
2−<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3−<plist version="1.0">
4−<dict>
5− <key>UIDeviceFamily</key>
6− <array>
7− <integer>1</integer>
8− <integer>2</integer>
9− </array>
10− <key>UIRequiredDeviceCapabilities</key>
11− <array>
12− <string>arm64</string>
13− </array>
14− <key>UISupportedInterfaceOrientations</key>
15− <array>
16− <string>UIInterfaceOrientationPortrait</string>
17− <string>UIInterfaceOrientationLandscapeLeft</string>
18− <string>UIInterfaceOrientationLandscapeRight</string>
19− </array>
20− <key>UISupportedInterfaceOrientations~ipad</key>
21− <array>
22− <string>UIInterfaceOrientationPortrait</string>
23− <string>UIInterfaceOrientationPortraitUpsideDown</string>
24− <string>UIInterfaceOrientationLandscapeLeft</string>
25− <string>UIInterfaceOrientationLandscapeRight</string>
26− </array>
27− <key>XSAppIconAssets</key>
28− <string>Assets.xcassets/appicon.appiconset</string>
29− <key>NSAppTransportSecurity</key>
30− <dict>
31− <key>NSAllowsLocalNetworking</key>
32− <true/>
33− </dict>
34−</dict>
35−</plist>
client/Platforms/MacCatalyst/Program.fsdeleted−9
@@ -1,9 +0,0 @@
1−namespace Skrepka
2−
3−open UIKit
4−
5−module Program =
6− [<EntryPoint>]
7− let main args =
8− UIApplication.Main(args, null, typeof<AppDelegate>)
9− 0
client/Platforms/Tizen/Main.fsdeleted−16
@@ -1,16 +0,0 @@
1−namespace Skrepka
2−
3−open System
4−open Microsoft.Maui
5−open Microsoft.Maui.Hosting
6−
7−type Program() =
8− inherit MauiApplication()
9−
10− override this.CreateMauiApp() = MauiProgram.CreateMauiApp()
11−
12−module Program =
13− [<EntryPoint>]
14− let main args =
15− let app = Program()
16− app.Run(args)
client/Platforms/Tizen/tizen-manifest.xmldeleted−15
@@ -1,15 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<manifest package="com.companyname.HelloWorld" version="1.0.0" api-version="7" xmlns="http://tizen.org/ns/packages">
3− <profile name="common" />
4− <ui-application appid="com.companyname.HelloWorld" exec="HelloWorld.dll" multiple="false" nodisplay="false" taskmanage="true" type="dotnet" launch_mode="single">
5− <label>HelloWorld</label>
6− <icon>appicon.xhigh.png</icon>
7− <metadata key="http://tizen.org/metadata/prefer_dotnet_aot" value="true" />
8− </ui-application>
9− <shortcut-list />
10− <privileges>
11− <privilege>http://tizen.org/privilege/internet</privilege>
12− </privileges>
13− <dependencies />
14− <provides-appdefined-privileges />
15−</manifest>
client/Platforms/Windows/App.fsdeleted−9
@@ -1,9 +0,0 @@
1−namespace Skrepka.WinUI
2−
3−/// <summary>
4−/// Provides application-specific behavior to supplement the default Application class.
5−/// </summary>
6−type App() =
7− inherit FSharp.Maui.WinUICompat.App()
8−
9− override this.CreateMauiApp() = Skrepka.MauiProgram.CreateMauiApp()
client/Platforms/Windows/Main.fsdeleted−9
@@ -1,9 +0,0 @@
1−namespace Skrepka.WinUI
2−
3−open System
4−
5−module Program =
6− [<EntryPoint; STAThread>]
7− let main args =
8− do FSharp.Maui.WinUICompat.Program.Main(args, typeof<Skrepka.WinUI.App>)
9− 0
client/Platforms/Windows/Package.appxmanifestdeleted−43
@@ -1,43 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Package
3− xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
4− xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
5− xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
6− IgnorableNamespaces="uap rescap">
7−
8− <Identity Name="maui-package-name-placeholder" Publisher="CN=User Name" Version="0.0.0.0" />
9−
10− <Properties>
11− <DisplayName>$placeholder$</DisplayName>
12− <PublisherDisplayName>User Name</PublisherDisplayName>
13− <Logo>$placeholder$.png</Logo>
14− </Properties>
15−
16− <Dependencies>
17− <TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.17763.0" MaxVersionTested="10.0.19041.0" />
18− <TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.17763.0" MaxVersionTested="10.0.19041.0" />
19− </Dependencies>
20−
21− <Resources>
22− <Resource Language="x-generate" />
23− </Resources>
24−
25− <Applications>
26− <Application Id="App" Executable="$targetnametoken$.exe" EntryPoint="$targetentrypoint$">
27− <uap:VisualElements
28− DisplayName="$placeholder$"
29− Description="$placeholder$"
30− Square150x150Logo="$placeholder$.png"
31− Square44x44Logo="$placeholder$.png"
32− BackgroundColor="transparent">
33− <uap:DefaultTile Square71x71Logo="$placeholder$.png" Wide310x150Logo="$placeholder$.png" Square310x310Logo="$placeholder$.png" />
34− <uap:SplashScreen Image="$placeholder$.png" />
35− </uap:VisualElements>
36− </Application>
37− </Applications>
38−
39− <Capabilities>
40− <rescap:Capability Name="runFullTrust" />
41− </Capabilities>
42−
43−</Package>
client/Platforms/Windows/app.manifestdeleted−15
@@ -1,15 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
3− <assemblyIdentity version="1.0.0.0" name="HelloWorld.WinUI.app"/>
4−
5− <application xmlns="urn:schemas-microsoft-com:asm.v3">
6− <windowsSettings>
7− <!-- The combination of below two tags have the following effect:
8− 1) Per-Monitor for >= Windows 10 Anniversary Update
9− 2) System < Windows 10 Anniversary Update
10− -->
11− <dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true/PM</dpiAware>
12− <dpiAwareness xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">PerMonitorV2, PerMonitor</dpiAwareness>
13− </windowsSettings>
14− </application>
15−</assembly>
client/Platforms/iOS/AppDelegate.fsdeleted−10
@@ -1,10 +0,0 @@
1−namespace Skrepka
2−
3−open Foundation
4−open Microsoft.Maui
5−
6−[<Register("AppDelegate")>]
7−type AppDelegate() =
8− inherit MauiUIApplicationDelegate()
9−
10− override _.CreateMauiApp() = MauiProgram.CreateMauiApp()
client/Platforms/iOS/Info.plistdeleted−37
@@ -1,37 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8"?>
2−<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3−<plist version="1.0">
4−<dict>
5− <key>LSRequiresIPhoneOS</key>
6− <true/>
7− <key>UIDeviceFamily</key>
8− <array>
9− <integer>1</integer>
10− <integer>2</integer>
11− </array>
12− <key>UIRequiredDeviceCapabilities</key>
13− <array>
14− <string>arm64</string>
15− </array>
16− <key>UISupportedInterfaceOrientations</key>
17− <array>
18− <string>UIInterfaceOrientationPortrait</string>
19− <string>UIInterfaceOrientationLandscapeLeft</string>
20− <string>UIInterfaceOrientationLandscapeRight</string>
21− </array>
22− <key>UISupportedInterfaceOrientations~ipad</key>
23− <array>
24− <string>UIInterfaceOrientationPortrait</string>
25− <string>UIInterfaceOrientationPortraitUpsideDown</string>
26− <string>UIInterfaceOrientationLandscapeLeft</string>
27− <string>UIInterfaceOrientationLandscapeRight</string>
28− </array>
29− <key>XSAppIconAssets</key>
30− <string>Assets.xcassets/appicon.appiconset</string>
31− <key>NSAppTransportSecurity</key>
32− <dict>
33− <key>NSAllowsLocalNetworking</key>
34− <true/>
35− </dict>
36−</dict>
37−</plist>
client/Platforms/iOS/Program.fsdeleted−9
@@ -1,9 +0,0 @@
1−namespace Skrepka
2−
3−open UIKit
4−
5−module Program =
6− [<EntryPoint>]
7− let main args =
8− UIApplication.Main(args, null, typeof<AppDelegate>)
9− 0
client/Properties/launchSettings.jsondeleted−8
@@ -1,8 +0,0 @@
1−{
2− "profiles": {
3− "Windows Machine": {
4− "commandName": "MsixPackage",
5− "nativeDebugging": false
6− }
7− }
8−}
client/Resources/AppIcon/appicon.svgdeleted−4
@@ -1,4 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2−<svg width="456" height="456" viewBox="0 0 456 456" version="1.1" xmlns="http://www.w3.org/2000/svg">
3− <rect x="0" y="0" width="456" height="456" fill="#512BD4" />
4−</svg>
client/Resources/AppIcon/appiconfg.svgdeleted−8
@@ -1,8 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2−<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3−<svg width="456" height="456" viewBox="0 0 456 456" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
4− <path d="m 105.50037,281.60863 c -2.70293,0 -5.00091,-0.90042 -6.893127,-2.70209 -1.892214,-1.84778 -2.837901,-4.04181 -2.837901,-6.58209 0,-2.58722 0.945687,-4.80389 2.837901,-6.65167 1.892217,-1.84778 4.190197,-2.77167 6.893127,-2.77167 2.74819,0 5.06798,0.92389 6.96019,2.77167 1.93749,1.84778 2.90581,4.06445 2.90581,6.65167 0,2.54028 -0.96832,4.73431 -2.90581,6.58209 -1.89221,1.80167 -4.212,2.70209 -6.96019,2.70209 z" style="fill:#ffffff;fill-rule:nonzero;stroke-width:0.838376" />
5− <path d="M 213.56111,280.08446 H 195.99044 L 149.69953,207.0544 c -1.17121,-1.84778 -2.14037,-3.76515 -2.90581,-5.75126 h -0.40578 c 0.36051,2.12528 0.54076,6.67515 0.54076,13.6496 v 65.13172 h -15.54349 v -99.36009 h 18.71925 l 44.7374,71.29798 c 1.89222,2.95695 3.1087,4.98917 3.64945,6.09751 h 0.26996 c -0.45021,-2.6325 -0.67573,-7.09015 -0.67573,-13.37293 v -64.02256 h 15.47557 z" style="fill:#ffffff;fill-rule:nonzero;stroke-width:0.838376" />
6− <path d="m 289.25134,280.08446 h -54.40052 v -99.36009 h 52.23835 v 13.99669 h -36.15411 v 28.13085 h 33.31621 v 13.9271 h -33.31621 v 29.37835 h 38.31628 z" style="fill:#ffffff;fill-rule:nonzero;stroke-width:0.838376" />
7− <path d="M 366.56466,194.72106 H 338.7222 v 85.3634 h -16.08423 v -85.3634 h -27.77455 v -13.99669 h 71.70124 z" style="fill:#ffffff;fill-rule:nonzero;stroke-width:0.838376" />
8−</svg>
client/Resources/Fonts/OpenSans-Regular.ttfdeleted

Binary file not shown.

client/Resources/Fonts/OpenSans-Semibold.ttfdeleted

Binary file not shown.

client/Resources/Images/dotnet_bot.svgdeleted−93
@@ -1,93 +0,0 @@
1−<svg width="419" height="519" viewBox="0 0 419 519" fill="none" xmlns="http://www.w3.org/2000/svg">
2−<path d="M284.432 247.568L284.004 221.881C316.359 221.335 340.356 211.735 355.308 193.336C382.408 159.996 372.893 108.183 372.786 107.659L398.013 102.831C398.505 105.432 409.797 167.017 375.237 209.53C355.276 234.093 324.719 246.894 284.432 247.568Z" fill="#8A6FE8"/>
3−<path d="M331.954 109.36L361.826 134.245C367.145 138.676 375.055 137.959 379.497 132.639C383.928 127.32 383.211 119.41 377.891 114.969L348.019 90.0842C342.7 85.6531 334.79 86.3702 330.348 91.6896C325.917 97.0197 326.634 104.929 331.954 109.36Z" fill="#8A6FE8"/>
4−<path d="M407.175 118.062L417.92 94.2263C420.735 87.858 417.856 80.4087 411.488 77.5831C405.12 74.7682 397.67 77.6473 394.845 84.0156L383.831 108.461L407.175 118.062Z" fill="#8A6FE8"/>
5−<path d="M401.363 105.175L401.234 69.117C401.181 62.1493 395.498 56.541 388.53 56.5945C381.562 56.648 375.954 62.3313 376.007 69.2989L376.018 96.11L401.363 105.175Z" fill="#8A6FE8"/>
6−<path d="M386.453 109.071L378.137 73.9548C376.543 67.169 369.757 62.9628 362.971 64.5575C356.185 66.1523 351.979 72.938 353.574 79.7237L362.04 115.482L386.453 109.071Z" fill="#8A6FE8"/>
7−<path d="M381.776 142.261C396.359 142.261 408.181 130.44 408.181 115.857C408.181 101.274 396.359 89.4527 381.776 89.4527C367.194 89.4527 355.372 101.274 355.372 115.857C355.372 130.44 367.194 142.261 381.776 142.261Z" fill="url(#paint0_radial)"/>
8−<path d="M248.267 406.979C248.513 384.727 245.345 339.561 222.376 301.736L199.922 315.372C220.76 349.675 222.323 389.715 221.841 407.182C221.798 408.627 235.263 409.933 248.267 406.979Z" fill="url(#paint1_linear)"/>
9−<path d="M221.841 406.936L242.637 406.84L262.052 518.065L220.311 518.258C217.132 518.269 214.724 515.711 214.938 512.532L221.841 406.936Z" fill="#522CD5"/>
10−<path d="M306.566 488.814C310.173 491.661 310.109 495.782 309.831 500.127L308.964 513.452C308.803 515.839 306.727 517.798 304.34 517.809L260.832 518.012C258.125 518.023 256.08 515.839 256.262 513.142L256.551 499.335C256.883 494.315 255.192 492.474 251.307 487.744C244.649 479.663 224.967 435.62 226.84 406.925L248.256 406.829C249.691 423.858 272.167 461.682 306.566 488.814Z" fill="url(#paint2_linear)"/>
11−<path d="M309.82 500.127C310.023 497.088 310.077 494.176 308.889 491.715L254.635 491.961C256.134 494.166 256.765 496.092 256.562 499.314L256.273 513.121C256.091 515.828 258.146 518.012 260.843 517.99L304.34 517.798C306.727 517.787 308.803 515.828 308.964 513.442L309.82 500.127Z" fill="url(#paint3_radial)"/>
12−<path d="M133.552 407.471C133.103 385.22 135.864 340.021 158.49 301.993L181.073 315.425C160.545 349.921 159.346 389.972 159.989 407.428C160.042 408.884 146.578 410.318 133.552 407.471Z" fill="url(#paint4_linear)"/>
13−<path d="M110.798 497.152C110.765 494.187 111.204 491.575 112.457 487.23C131.882 434.132 133.52 407.364 133.52 407.364L159.999 407.246C159.999 407.246 161.819 433.512 181.716 486.427C183.289 490.195 183.471 493.641 183.674 496.831L183.792 513.816C183.803 516.374 181.716 518.483 179.158 518.494L177.873 518.504L116.781 518.782L115.496 518.793C112.927 518.804 110.83 516.728 110.819 514.159L110.798 497.152Z" fill="url(#paint5_linear)"/>
14−<path d="M110.798 497.152C110.798 496.67 110.808 496.199 110.83 495.739C110.969 494.262 111.643 492.603 114.875 492.582L180.207 492.282C182.561 492.367 183.343 494.176 183.589 495.311C183.621 495.814 183.664 496.328 183.696 496.82L183.813 513.806C183.824 515.411 183.011 516.824 181.769 517.669C181.031 518.172 180.132 518.472 179.179 518.483L177.895 518.494L116.802 518.772L115.528 518.782C114.244 518.793 113.077 518.269 112.232 517.434C111.386 516.599 110.862 515.432 110.851 514.148L110.798 497.152Z" fill="url(#paint6_radial)"/>
15−<path d="M314.979 246.348C324.162 210.407 318.008 181.777 318.008 181.777L326.452 181.734L326.656 181.574C314.262 115.75 256.326 66.0987 186.949 66.4198C108.796 66.773 45.7233 130.424 46.0765 208.577C46.4297 286.731 110.08 349.803 188.234 349.45C249.905 349.172 302.178 309.474 321.304 254.343C321.872 251.999 321.797 247.804 314.979 246.348Z" fill="url(#paint7_radial)"/>
16−<path d="M310.237 279.035L65.877 280.148C71.3998 289.428 77.95 298.012 85.3672 305.761L290.972 304.829C298.336 297.005 304.8 288.368 310.237 279.035Z" fill="#D8CFF7"/>
17−<path d="M235.062 312.794L280.924 312.585L280.74 272.021L234.877 272.23L235.062 312.794Z" fill="#512BD4"/>
18−<path d="M243.001 297.626C242.691 297.626 242.434 297.53 242.22 297.327C242.006 297.123 241.899 296.866 241.899 296.588C241.899 296.299 242.006 296.042 242.22 295.839C242.434 295.625 242.691 295.528 243.001 295.528C243.312 295.528 243.568 295.635 243.782 295.839C243.996 296.042 244.114 296.299 244.114 296.588C244.114 296.877 244.007 297.123 243.793 297.327C243.568 297.519 243.312 297.626 243.001 297.626Z" fill="white"/>
19−<path d="M255.192 297.434H253.212L247.967 289.203C247.839 289 247.721 288.775 247.636 288.55H247.593C247.636 288.786 247.657 289.299 247.657 290.091L247.668 297.444H245.912L245.891 286.228H247.999L253.062 294.265C253.276 294.597 253.415 294.833 253.479 294.95H253.511C253.458 294.651 253.437 294.148 253.437 293.441L253.426 286.217H255.17L255.192 297.434Z" fill="white"/>
20−<path d="M263.733 297.412L257.589 297.423L257.568 286.206L263.465 286.195V287.779L259.387 287.79L259.398 290.969L263.155 290.958V292.532L259.398 292.542L259.409 295.86L263.733 295.85V297.412Z" fill="white"/>
21−<path d="M272.445 287.758L269.298 287.769L269.32 297.401H267.5L267.479 287.769L264.343 287.779V286.195L272.434 286.174L272.445 287.758Z" fill="white"/>
22−<path d="M315.279 246.337C324.355 210.836 318.457 182.483 318.308 181.798L171.484 182.462C171.484 182.462 162.226 181.563 162.268 190.018C162.311 198.463 162.761 222.341 162.878 248.746C162.9 254.172 167.363 256.773 170.863 256.751C170.874 256.751 311.618 252.213 315.279 246.337Z" fill="url(#paint8_radial)"/>
23−<path d="M227.685 246.798C227.685 246.798 250.183 228.827 254.571 225.499C258.959 222.17 262.812 221.977 266.869 225.445C270.925 228.913 293.616 246.498 293.616 246.498L227.685 246.798Z" fill="#A08BE8"/>
24−<path d="M320.748 256.141C320.748 256.141 324.943 248.414 315.279 246.348C315.289 246.305 170.927 246.894 170.927 246.894C167.566 246.905 163.232 244.925 162.846 241.671C162.857 244.004 162.878 246.369 162.889 248.756C162.91 253.68 166.582 256.27 169.878 256.698C170.21 256.73 170.542 256.773 170.874 256.773L180.742 256.73L320.748 256.141Z" fill="#512BD4"/>
25−<path d="M206.4 233.214C212.511 233.095 217.302 224.667 217.102 214.39C216.901 204.112 211.785 195.878 205.674 195.997C199.563 196.116 194.772 204.544 194.973 214.821C195.173 225.099 200.289 233.333 206.4 233.214Z" fill="#512BD4"/>
26−<path d="M306.249 214.267C306.356 203.989 301.488 195.605 295.377 195.541C289.266 195.478 284.225 203.758 284.118 214.037C284.011 224.315 288.878 232.699 294.99 232.763C301.101 232.826 306.142 224.545 306.249 214.267Z" fill="#512BD4"/>
27−<path d="M205.905 205.291C208.152 203.022 211.192 202.016 214.157 202.262C215.912 205.495 217.014 209.733 217.111 214.389C217.164 217.3 216.811 220.04 216.158 222.513C212.669 223.519 208.752 222.662 205.979 219.922C201.912 215.909 201.88 209.348 205.905 205.291Z" fill="#8065E0"/>
28−<path d="M294.996 204.285C297.255 202.016 300.294 200.999 303.259 201.256C305.164 204.628 306.309 209.209 306.256 214.239C306.224 216.808 305.892 219.259 305.303 221.485C301.793 222.523 297.843 221.678 295.061 218.916C291.004 214.892 290.972 208.342 294.996 204.285Z" fill="#8065E0"/>
29−<path d="M11.6342 357.017C10.9171 354.716 -5.72611 300.141 21.3204 258.903C36.9468 235.078 63.3083 221.035 99.6664 217.15L102.449 243.276C74.3431 246.273 54.4676 256.345 43.3579 273.202C23.0971 303.941 36.5722 348.733 36.7113 349.183L11.6342 357.017Z" fill="url(#paint9_linear)"/>
30−<path d="M95.1498 252.802C109.502 252.802 121.137 241.167 121.137 226.815C121.137 212.463 109.502 200.828 95.1498 200.828C80.7976 200.828 69.1628 212.463 69.1628 226.815C69.1628 241.167 80.7976 252.802 95.1498 252.802Z" fill="url(#paint10_radial)"/>
31−<path d="M72.0098 334.434L33.4683 329.307C26.597 328.397 20.2929 333.214 19.3725 340.085C18.4627 346.956 23.279 353.26 30.1504 354.181L68.6919 359.308C75.5632 360.217 81.8673 355.401 82.7878 348.53C83.6975 341.658 78.8705 335.344 72.0098 334.434Z" fill="#8A6FE8"/>
32−<path d="M3.73535 367.185L7.35297 393.076C8.36975 399.968 14.7702 404.731 21.6629 403.725C28.5556 402.708 33.3185 396.308 32.3124 389.415L28.5984 362.861L3.73535 367.185Z" fill="#8A6FE8"/>
33−<path d="M15.5194 374.988L34.849 405.427C38.6058 411.292 46.4082 413.005 52.2735 409.248C58.1387 405.491 59.8512 397.689 56.0945 391.823L41.7953 369.144L15.5194 374.988Z" fill="#8A6FE8"/>
34−<path d="M26.0511 363.739L51.8026 389.019C56.7688 393.911 64.7532 393.846 69.6445 388.88C74.5358 383.914 74.4715 375.929 69.516 371.038L43.2937 345.297L26.0511 363.739Z" fill="#8A6FE8"/>
35−<path d="M26.4043 381.912C40.987 381.912 52.8086 370.091 52.8086 355.508C52.8086 340.925 40.987 329.104 26.4043 329.104C11.8216 329.104 0 340.925 0 355.508C0 370.091 11.8216 381.912 26.4043 381.912Z" fill="url(#paint11_radial)"/>
36−<path d="M184.73 63.6308L157.819 66.5892L158.561 38.5412L177.888 36.4178L184.73 63.6308Z" fill="#8A6FE8"/>
37−<path d="M170.018 41.647C180.455 39.521 187.193 29.3363 185.067 18.8988C182.941 8.46126 172.757 1.72345 162.319 3.84944C151.882 5.97543 145.144 16.1601 147.27 26.5976C149.396 37.0351 159.58 43.773 170.018 41.647Z" fill="#D8CFF7"/>
38−<path d="M196.885 79.385C198.102 79.2464 198.948 78.091 198.684 76.8997C195.851 64.2818 183.923 55.5375 170.773 56.9926C157.622 58.4371 147.886 69.5735 147.865 82.4995C147.863 83.7232 148.949 84.6597 150.168 84.5316L196.885 79.385Z" fill="url(#paint12_radial)"/>
39−<defs>
40−<radialGradient id="paint0_radial" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(382.004 103.457) scale(26.4058)">
41−<stop stop-color="#8065E0"/>
42−<stop offset="1" stop-color="#512BD4"/>
43−</radialGradient>
44−<linearGradient id="paint1_linear" x1="214.439" y1="303.482" x2="236.702" y2="409.505" gradientUnits="userSpaceOnUse">
45−<stop stop-color="#522CD5"/>
46−<stop offset="0.4397" stop-color="#8A6FE8"/>
47−</linearGradient>
48−<linearGradient id="paint2_linear" x1="231.673" y1="404.144" x2="297.805" y2="522.048" gradientUnits="userSpaceOnUse">
49−<stop stop-color="#522CD5"/>
50−<stop offset="0.4397" stop-color="#8A6FE8"/>
51−</linearGradient>
52−<radialGradient id="paint3_radial" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(280.957 469.555) rotate(-0.260742) scale(45.8326)">
53−<stop offset="0.034" stop-color="#522CD5"/>
54−<stop offset="0.9955" stop-color="#8A6FE8"/>
55−</radialGradient>
56−<linearGradient id="paint4_linear" x1="166.061" y1="303.491" x2="144.763" y2="409.709" gradientUnits="userSpaceOnUse">
57−<stop stop-color="#522CD5"/>
58−<stop offset="0.4397" stop-color="#8A6FE8"/>
59−</linearGradient>
60−<linearGradient id="paint5_linear" x1="146.739" y1="407.302" x2="147.246" y2="518.627" gradientUnits="userSpaceOnUse">
61−<stop stop-color="#522CD5"/>
62−<stop offset="0.4397" stop-color="#8A6FE8"/>
63−</linearGradient>
64−<radialGradient id="paint6_radial" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(148.63 470.023) rotate(179.739) scale(50.2476)">
65−<stop offset="0.034" stop-color="#522CD5"/>
66−<stop offset="0.9955" stop-color="#8A6FE8"/>
67−</radialGradient>
68−<radialGradient id="paint7_radial" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(219.219 153.929) rotate(179.739) scale(140.935)">
69−<stop offset="0.4744" stop-color="#A08BE8"/>
70−<stop offset="0.8618" stop-color="#8065E0"/>
71−</radialGradient>
72−<radialGradient id="paint8_radial" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(314.861 158.738) rotate(179.739) scale(146.053)">
73−<stop offset="0.0933" stop-color="#E1DFDD"/>
74−<stop offset="0.6573" stop-color="white"/>
75−</radialGradient>
76−<linearGradient id="paint9_linear" x1="54.1846" y1="217.159" x2="54.1846" y2="357.022" gradientUnits="userSpaceOnUse">
77−<stop offset="0.3344" stop-color="#9780E6"/>
78−<stop offset="0.8488" stop-color="#8A6FE8"/>
79−</linearGradient>
80−<radialGradient id="paint10_radial" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(90.3494 218.071) rotate(-0.260742) scale(25.9924)">
81−<stop stop-color="#8065E0"/>
82−<stop offset="1" stop-color="#512BD4"/>
83−</radialGradient>
84−<radialGradient id="paint11_radial" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(25.805 345.043) scale(26.4106)">
85−<stop stop-color="#8065E0"/>
86−<stop offset="1" stop-color="#512BD4"/>
87−</radialGradient>
88−<radialGradient id="paint12_radial" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(169.113 67.3662) rotate(-32.2025) scale(21.0773)">
89−<stop stop-color="#8065E0"/>
90−<stop offset="1" stop-color="#512BD4"/>
91−</radialGradient>
92−</defs>
93−</svg>
client/Resources/Raw/AboutAssets.txtdeleted−15
@@ -1,15 +0,0 @@
1−Any raw assets you want to be deployed with your application can be placed in
2−this directory (and child directories). Deployment of the asset to your application
3−is automatically handled by the following `MauiAsset` Build Action within your `.csproj`.
4−
5− <MauiAsset Include="Resources\Raw\**" LogicalName="%(RecursiveDir)%(Filename)%(Extension)" />
6−
7−These files will be deployed with you package and will be accessible using Essentials:
8−
9− async Task LoadMauiAsset()
10− {
11− using var stream = await FileSystem.OpenAppPackageFileAsync("AboutAssets.txt");
12− using var reader = new StreamReader(stream);
13−
14− var contents = reader.ReadToEnd();
15− }
client/Resources/Splash/splash.svgdeleted−8
@@ -1,8 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2−<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3−<svg width="456" height="456" viewBox="0 0 456 456" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
4− <path d="m 105.50037,281.60863 c -2.70293,0 -5.00091,-0.90042 -6.893127,-2.70209 -1.892214,-1.84778 -2.837901,-4.04181 -2.837901,-6.58209 0,-2.58722 0.945687,-4.80389 2.837901,-6.65167 1.892217,-1.84778 4.190197,-2.77167 6.893127,-2.77167 2.74819,0 5.06798,0.92389 6.96019,2.77167 1.93749,1.84778 2.90581,4.06445 2.90581,6.65167 0,2.54028 -0.96832,4.73431 -2.90581,6.58209 -1.89221,1.80167 -4.212,2.70209 -6.96019,2.70209 z" style="fill:#ffffff;fill-rule:nonzero;stroke-width:0.838376" />
5− <path d="M 213.56111,280.08446 H 195.99044 L 149.69953,207.0544 c -1.17121,-1.84778 -2.14037,-3.76515 -2.90581,-5.75126 h -0.40578 c 0.36051,2.12528 0.54076,6.67515 0.54076,13.6496 v 65.13172 h -15.54349 v -99.36009 h 18.71925 l 44.7374,71.29798 c 1.89222,2.95695 3.1087,4.98917 3.64945,6.09751 h 0.26996 c -0.45021,-2.6325 -0.67573,-7.09015 -0.67573,-13.37293 v -64.02256 h 15.47557 z" style="fill:#ffffff;fill-rule:nonzero;stroke-width:0.838376" />
6− <path d="m 289.25134,280.08446 h -54.40052 v -99.36009 h 52.23835 v 13.99669 h -36.15411 v 28.13085 h 33.31621 v 13.9271 h -33.31621 v 29.37835 h 38.31628 z" style="fill:#ffffff;fill-rule:nonzero;stroke-width:0.838376" />
7− <path d="M 366.56466,194.72106 H 338.7222 v 85.3634 h -16.08423 v -85.3634 h -27.77455 v -13.99669 h 71.70124 z" style="fill:#ffffff;fill-rule:nonzero;stroke-width:0.838376" />
8−</svg>
client/Skrepka.fsprojdeleted−67
@@ -1,67 +0,0 @@
1−<Project Sdk="Microsoft.NET.Sdk">
2−
3− <PropertyGroup>
4− <TargetFrameworks>net10.0-maccatalyst;net10.0-ios</TargetFrameworks>
5− <OutputType>Exe</OutputType>
6− <RootNamespace>Skrepka</RootNamespace>
7− <UseMaui>true</UseMaui>
8− <SingleProject>true</SingleProject>
9− <EnableDefaultItems>false</EnableDefaultItems>
10− <DisableImplicitFSharpCoreReference>true</DisableImplicitFSharpCoreReference>
11−
12− <ApplicationTitle>Skrepka</ApplicationTitle>
13− <ApplicationId>com.skrepka.client</ApplicationId>
14− <ApplicationIdGuid>387564D6-02F6-4861-887C-CB527912117B</ApplicationIdGuid>
15− <ApplicationDisplayVersion>1.0</ApplicationDisplayVersion>
16− <ApplicationVersion>1</ApplicationVersion>
17−
18− <SupportedOSPlatformVersion Condition="$(TargetPlatformIdentifier) == 'maccatalyst'">15.0</SupportedOSPlatformVersion>
19− <SupportedOSPlatformVersion Condition="$(TargetPlatformIdentifier) == 'ios'">15.0</SupportedOSPlatformVersion>
20− <ValidateXcodeVersion>false</ValidateXcodeVersion>
21− </PropertyGroup>
22−
23− <ItemGroup>
24− <Compile Include="Crypto.fs" />
25− <Compile Include="ApiClient.fs" />
26− <Compile Include="Phonemic.fs" />
27− <Compile Include="Store.fs" />
28− <Compile Include="App.fs" />
29− <Compile Include="MauiProgram.fs" />
30− </ItemGroup>
31−
32− <ItemGroup>
33− <MauiIcon Include="Resources\AppIcon\appicon.svg" ForegroundFile="Resources\AppIcon\appiconfg.svg" Color="#512BD4" />
34− <MauiFont Include="Resources\Fonts\*" />
35− <MauiImage Include="Resources\Images\*" />
36− <MauiAsset Include="Resources\Raw\*" LogicalName="%(RecursiveDir)%(Filename)%(Extension)" />
37− <MauiSplashScreen Include="Resources\Splash\splash.svg" Color="#512BD4" BaseSize="128,128" />
38− </ItemGroup>
39−
40− <ItemGroup Condition="$(TargetPlatformIdentifier) == 'ios'">
41− <None Include="$(iOSProjectFolder)Info.plist" LogicalName="Info.plist" />
42− <Compile Include="$(iOSProjectFolder)AppDelegate.fs" />
43− <Compile Include="$(iOSProjectFolder)Program.fs" />
44− </ItemGroup>
45−
46− <ItemGroup Condition="$(TargetPlatformIdentifier) == 'ios' And $(RuntimeIdentifier.StartsWith('iossimulator'))">
47− <NativeReference Include="native/iossimulator-arm64/libsodium.a">
48− <Kind>Static</Kind>
49− <ForceLoad>true</ForceLoad>
50− </NativeReference>
51− </ItemGroup>
52−
53− <ItemGroup Condition="$(TargetPlatformIdentifier) == 'maccatalyst'">
54− <None Include="$(MacCatalystProjectFolder)Info.plist" LogicalName="Info.plist" />
55− <Compile Include="$(MacCatalystProjectFolder)AppDelegate.fs" />
56− <Compile Include="$(MacCatalystProjectFolder)Program.fs" />
57− </ItemGroup>
58−
59− <ItemGroup>
60− <PackageReference Include="Fabulous.MauiControls" Version="9.0.0-pre9" />
61− <PackageReference Include="Microsoft.Maui.Controls" Version="10.0.0" />
62− <PackageReference Include="LiteDB" Version="5.0.21" />
63− <PackageReference Include="Sodium.Core" Version="1.4.0" />
64− <PackageReference Include="FSharp.Core" Version="9.0.100" />
65− </ItemGroup>
66−
67−</Project>
client/Skrepka.slndeleted−28
@@ -1,28 +0,0 @@
1−
2−Microsoft Visual Studio Solution File, Format Version 12.00
3−# Visual Studio Version 17
4−VisualStudioVersion = 17.0.31611.283
5−MinimumVisualStudioVersion = 10.0.40219.1
6−EndProject
7−Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "Skrepka", "Skrepka.fsproj", "{7242255B-8844-46E3-8185-AA02876BD3B5}"
8−EndProject
9−Global
10− GlobalSection(SolutionConfigurationPlatforms) = preSolution
11− Debug|Any CPU = Debug|Any CPU
12− Release|Any CPU = Release|Any CPU
13− EndGlobalSection
14− GlobalSection(ProjectConfigurationPlatforms) = postSolution
15− {7242255B-8844-46E3-8185-AA02876BD3B5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
16− {7242255B-8844-46E3-8185-AA02876BD3B5}.Debug|Any CPU.Build.0 = Debug|Any CPU
17− {7242255B-8844-46E3-8185-AA02876BD3B5}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
18− {7242255B-8844-46E3-8185-AA02876BD3B5}.Release|Any CPU.ActiveCfg = Release|Any CPU
19− {7242255B-8844-46E3-8185-AA02876BD3B5}.Release|Any CPU.Build.0 = Release|Any CPU
20− {7242255B-8844-46E3-8185-AA02876BD3B5}.Release|Any CPU.Deploy.0 = Release|Any CPU
21− EndGlobalSection
22− GlobalSection(SolutionProperties) = preSolution
23− HideSolutionNode = FALSE
24− EndGlobalSection
25− GlobalSection(ExtensibilityGlobals) = postSolution
26− SolutionGuid = {61F7FB11-1E47-470C-91E2-47F8143E1572}
27− EndGlobalSection
28−EndGlobal
client/Store.fsdeleted−111
@@ -1,111 +0,0 @@
1−namespace Skrepka
2−
3−open System
4−open System.IO
5−open LiteDB
6−open Microsoft.Maui.Storage
7−
8−module Store =
9−
10− [<CLIMutable>]
11− type Contact =
12− { [<BsonId>] Pubkey: string
13− Nickname: string }
14−
15− type ChatMessage =
16− { Id: string
17− Body: string
18− Timestamp: DateTimeOffset
19− IsOutgoing: bool }
20−
21− type Data =
22− { Contacts: Contact list
23− Messages: Map<string, ChatMessage list>
24− ServerUrl: string option
25− PollCursor: int64 }
26−
27− [<CLIMutable>]
28− type private MessageDoc =
29− { [<BsonId>] Id: string
30− ConversationId: string
31− Body: string
32− TimestampUnix: int64
33− IsOutgoing: bool }
34−
35− [<CLIMutable>]
36− type private SettingsDoc =
37− { [<BsonId>] Id: string
38− ServerUrl: string
39− PollCursor: int64 }
40−
41− let private toChatMessage (d: MessageDoc) : ChatMessage =
42− { Id = d.Id; Body = d.Body; Timestamp = DateTimeOffset.FromUnixTimeSeconds d.TimestampUnix; IsOutgoing = d.IsOutgoing }
43−
44− let private toMessageDoc convId (m: ChatMessage) : MessageDoc =
45− { Id = m.Id; ConversationId = convId; Body = m.Body; TimestampUnix = m.Timestamp.ToUnixTimeSeconds(); IsOutgoing = m.IsOutgoing }
46−
47− let private openDb () =
48− new LiteDatabase(Path.Combine(FileSystem.AppDataDirectory, "skrepka.db"))
49−
50− let loadIdentity () =
51− async {
52− let! privKeyB64 =
53− SecureStorage.Default.GetAsync("identity_privkey")
54− |> Async.AwaitTask
55−
56− return
57− privKeyB64
58− |> Option.ofObj
59− |> Option.map (Convert.FromBase64String >> Crypto.identityFromPrivKey)
60− }
61−
62− let saveIdentity (identity: Crypto.Identity) =
63− SecureStorage.Default.SetAsync("identity_privkey", Convert.ToBase64String identity.PrivKey)
64− |> Async.AwaitTask
65−
66− let loadData () : Data option =
67− try
68− use db = openDb ()
69− let settings = db.GetCollection<SettingsDoc>("settings").FindById(BsonValue "settings")
70−
71− settings
72− |> Option.ofObj
73− |> Option.map (fun settings ->
74− let contacts = db.GetCollection<Contact>("contacts").FindAll() |> Seq.toList
75−
76− let messages =
77− db.GetCollection<MessageDoc>("messages").FindAll()
78− |> Seq.groupBy _.ConversationId
79− |> Seq.map (fun (convId, docs) ->
80− convId, docs |> Seq.map toChatMessage |> Seq.sortBy _.Timestamp |> Seq.toList)
81− |> Map.ofSeq
82−
83− { Contacts = contacts
84− Messages = messages
85− ServerUrl = settings.ServerUrl |> Option.ofObj |> Option.filter ((<>) "")
86− PollCursor = settings.PollCursor })
87− with _ ->
88− None
89−
90− let saveData (data: Data) =
91− try
92− use db = openDb ()
93− let contacts = db.GetCollection<Contact>("contacts")
94− let messages = db.GetCollection<MessageDoc>("messages")
95− let settings = db.GetCollection<SettingsDoc>("settings")
96−
97− for c in data.Contacts do
98− contacts.Upsert c |> ignore
99−
100− data.Messages
101− |> Map.iter (fun convId msgs ->
102− for m in msgs do
103− messages.Upsert(toMessageDoc convId m) |> ignore)
104−
105− settings.Upsert
106− { Id = "settings"
107− ServerUrl = data.ServerUrl |> Option.defaultValue ""
108− PollCursor = data.PollCursor }
109− |> ignore
110− with _ ->
111− ()
client/bin/Debug/net10.0-ios/iossimulator-arm64/AOTCompileInputs.cachedeleted−1
@@ -1 +0,0 @@
1−2dc7d54257f88f55238ae3dd488b86a29819275026e426e504fc2e76c58f9b0e
client/bin/Debug/net10.0-ios/iossimulator-arm64/AOTCompileInputs.cache.uptodatedeleted−1
@@ -1 +0,0 @@
1−2dc7d54257f88f55238ae3dd488b86a29819275026e426e504fc2e76c58f9b0e
client/bin/Debug/net10.0-ios/iossimulator-arm64/Fabulous.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/LinkerInputs.cachedeleted−1
@@ -1 +0,0 @@
1−4b20ff30b6dda425ba0bd6c8c5296abd3d6fb56648d27303759fa157bd74a6fc
client/bin/Debug/net10.0-ios/iossimulator-arm64/LinkerInputs.cache.xmldeleted−1
@@ -1 +0,0 @@
1−<linker/>
client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.CSharp.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Configuration.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Configuration.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.DependencyInjection.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.DependencyInjection.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Diagnostics.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.FileProviders.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Hosting.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Logging.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Logging.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Options.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Maui.Controls.Compatibility.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Maui.Controls.Xaml.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Maui.Essentials.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Maui.Graphics.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Maui.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.VisualBasic.Core.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.VisualBasic.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Win32.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Win32.Registry.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/NativeLink.cachedeleted−1
@@ -1 +0,0 @@
1−18817d9d08d50bba520965dfac0867ba8babc6a933a93799b968f9caa495b121
client/bin/Debug/net10.0-ios/iossimulator-arm64/NativeLink.cache.uptodatedeleted−1
@@ -1 +0,0 @@
1−18817d9d08d50bba520965dfac0867ba8babc6a933a93799b968f9caa495b121
client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/AboutAssets.txtdeleted−15
@@ -1,15 +0,0 @@
1−Any raw assets you want to be deployed with your application can be placed in
2−this directory (and child directories). Deployment of the asset to your application
3−is automatically handled by the following `MauiAsset` Build Action within your `.csproj`.
4−
5− <MauiAsset Include="Resources\Raw\**" LogicalName="%(RecursiveDir)%(Filename)%(Extension)" />
6−
7−These files will be deployed with you package and will be accessible using Essentials:
8−
9− async Task LoadMauiAsset()
10− {
11− using var stream = await FileSystem.OpenAppPackageFileAsync("AboutAssets.txt");
12− using var reader = new StreamReader(stream);
13−
14− var contents = reader.ReadToEnd();
15− }
client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Assets.cardeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Fabulous.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Info.plistdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/MauiSplash.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/MauiSplash.storyboardc/Info.plistdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/MauiSplash.storyboardc/UIViewController-01J-lp-oVM.nibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.CSharp.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.Configuration.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.Configuration.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.DependencyInjection.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.DependencyInjection.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.Diagnostics.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.FileProviders.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.Hosting.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.Logging.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.Logging.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.Options.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Extensions.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Maui.Controls.Compatibility.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Maui.Controls.Xaml.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Maui.Essentials.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Maui.Graphics.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Maui.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.VisualBasic.Core.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.VisualBasic.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Win32.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Microsoft.Win32.Registry.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/MonoTouchDebugConfiguration.txtdeleted−2
@@ -1,2 +0,0 @@
1−IP: 127.0.0.1
2−Port: 10000
client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/OpenSans-Regular.ttfdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/OpenSans-Semibold.ttfdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/PkgInfodeleted−1
@@ -1 +0,0 @@
1−APPL????
client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Settings.bundle/Root.plistdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Skrepka.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Skrepka.pdbdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Sodium.Core.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.AppContext.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Buffers.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Collections.Concurrent.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Collections.Immutable.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Collections.NonGeneric.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Collections.Specialized.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Collections.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ComponentModel.Annotations.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ComponentModel.DataAnnotations.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ComponentModel.EventBasedAsync.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ComponentModel.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ComponentModel.TypeConverter.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ComponentModel.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Configuration.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Console.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Core.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Data.Common.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Data.DataSetExtensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Data.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.Contracts.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.Debug.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.DiagnosticSource.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.FileVersionInfo.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.Process.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.StackTrace.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.TextWriterTraceListener.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.Tools.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.TraceSource.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Diagnostics.Tracing.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Drawing.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Drawing.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Dynamic.Runtime.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Formats.Asn1.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Formats.Tar.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Globalization.Calendars.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Globalization.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Globalization.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.Compression.Brotli.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.Compression.FileSystem.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.Compression.ZipFile.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.Compression.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.FileSystem.AccessControl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.FileSystem.DriveInfo.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.FileSystem.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.FileSystem.Watcher.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.FileSystem.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.IsolatedStorage.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.MemoryMappedFiles.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.Pipelines.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.Pipes.AccessControl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.Pipes.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.UnmanagedMemoryStream.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.IO.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Linq.AsyncEnumerable.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Linq.Expressions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Linq.Parallel.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Linq.Queryable.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Linq.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Memory.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.Http.Json.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.Http.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.HttpListener.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.Mail.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.NameResolution.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.NetworkInformation.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.Ping.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.Quic.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.Requests.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.Security.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.ServerSentEvents.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.ServicePoint.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.Sockets.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.WebClient.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.WebHeaderCollection.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.WebProxy.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.WebSockets.Client.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.WebSockets.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Net.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Numerics.Vectors.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Numerics.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ObjectModel.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Private.CoreLib.aotdata.arm64deleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Private.DataContractSerialization.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Private.Uri.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Private.Xml.Linq.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Reflection.DispatchProxy.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Reflection.Emit.ILGeneration.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Reflection.Emit.Lightweight.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Reflection.Emit.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Reflection.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Reflection.Metadata.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Reflection.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Reflection.TypeExtensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Reflection.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Resources.Reader.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Resources.ResourceManager.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Resources.Writer.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.CompilerServices.Unsafe.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.CompilerServices.VisualC.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Handles.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.InteropServices.JavaScript.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.InteropServices.RuntimeInformation.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.InteropServices.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Intrinsics.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Loader.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Numerics.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Serialization.Formatters.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Serialization.Json.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Serialization.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Serialization.Xml.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.Serialization.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Runtime.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.AccessControl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Claims.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Cryptography.Algorithms.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Cryptography.Cng.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Cryptography.Csp.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Cryptography.Encoding.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Cryptography.OpenSsl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Cryptography.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Cryptography.X509Certificates.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Cryptography.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Principal.Windows.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.Principal.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.SecureString.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Security.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ServiceModel.Web.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ServiceProcess.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Text.Encoding.CodePages.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Text.Encoding.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Text.Encoding.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Text.Encodings.Web.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Text.Json.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Text.RegularExpressions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.AccessControl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.Channels.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.Overlapped.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.Tasks.Dataflow.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.Tasks.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.Tasks.Parallel.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.Tasks.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.Thread.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.ThreadPool.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.Timer.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Threading.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Transactions.Local.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Transactions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.ValueTuple.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Web.HttpUtility.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Web.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Windows.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Xml.Linq.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Xml.ReaderWriter.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Xml.Serialization.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Xml.XDocument.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Xml.XPath.XDocument.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Xml.XPath.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Xml.XmlDocument.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Xml.XmlSerializer.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.Xml.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/System.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/WindowsBase.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/_CodeSignature/CodeResourcesdeleted−3153
@@ -1,3153 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8"?>
2−<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3−<plist version="1.0">
4−<dict>
5− <key>files</key>
6− <dict>
7− <key>AboutAssets.txt</key>
8− <data>
9− MEt7GErfS6fHNEi3JiInA2rNG0U=
10− </data>
11− <key>Assets.car</key>
12− <data>
13− 4pe2l624ypGN91PB+cKIl4IKes8=
14− </data>
15− <key>FSharp.Core.dll</key>
16− <data>
17− lby5g4NM5Lqz6gxYBJgL38dXlCo=
18− </data>
19− <key>Fabulous.MauiControls.dll</key>
20− <data>
21− lczbpufokc8lDGxSoaEMzvpulW0=
22− </data>
23− <key>Fabulous.dll</key>
24− <data>
25− d9DPd7lCcDTq7cHo18STpClwPaA=
26− </data>
27− <key>Info.plist</key>
28− <data>
29− m96ofwll7AgsnmJ6k8Mhg6rEh+k=
30− </data>
31− <key>LiteDB.dll</key>
32− <data>
33− vxA0uDp+BuUEE5Xf1wcoVCW/EYs=
34− </data>
35− <key>MauiInfo.plist</key>
36− <data>
37− iEtuUGCV6JM3gxS/pO33swhmpp8=
38− </data>
39− <key>MauiSplash.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib</key>
40− <data>
41− Y78DTyz7+rkuDbhphGJe+YK2rLQ=
42− </data>
43− <key>MauiSplash.storyboardc/Info.plist</key>
44− <data>
45− n2t8gsDpfE6XkhG31p7IQJRxTxU=
46− </data>
47− <key>MauiSplash.storyboardc/UIViewController-01J-lp-oVM.nib</key>
48− <data>
49− ZVgM1+KwZcZnwhgaI0F7Bt1ba2c=
50− </data>
51− <key>Microsoft.CSharp.dll</key>
52− <data>
53− HDMFOVHiik90nY6oIWK0SMYAoE8=
54− </data>
55− <key>Microsoft.Extensions.Configuration.Abstractions.dll</key>
56− <data>
57− rP2VSgXuRqOx2fiUk7xmJdqD2Mk=
58− </data>
59− <key>Microsoft.Extensions.Configuration.dll</key>
60− <data>
61− sGX3TpeZinhi5dxH03o32sjO03c=
62− </data>
63− <key>Microsoft.Extensions.DependencyInjection.Abstractions.dll</key>
64− <data>
65− iPHmd0lkx7/fBYGQ18YcDsSh/a4=
66− </data>
67− <key>Microsoft.Extensions.DependencyInjection.dll</key>
68− <data>
69− r8wXjVQWsEFetOpJfNe021irolo=
70− </data>
71− <key>Microsoft.Extensions.Diagnostics.Abstractions.dll</key>
72− <data>
73− eqfKbcqHtv60Q1Mqv442h+RDmWc=
74− </data>
75− <key>Microsoft.Extensions.FileProviders.Abstractions.dll</key>
76− <data>
77− nJGhgpwYrhzJhLNBb+YS+HqyMOM=
78− </data>
79− <key>Microsoft.Extensions.Hosting.Abstractions.dll</key>
80− <data>
81− FaOfiXmiYbUxuuZX5eBDi06tCwE=
82− </data>
83− <key>Microsoft.Extensions.Logging.Abstractions.dll</key>
84− <data>
85− JYlUV55yz2VAuCHi2BGvAyNzA5k=
86− </data>
87− <key>Microsoft.Extensions.Logging.dll</key>
88− <data>
89− sxeVeM3uC5RmrfbPJhiEXfkGUTc=
90− </data>
91− <key>Microsoft.Extensions.Options.dll</key>
92− <data>
93− +TBw3WdIDXnh03flKv5KSujgaZc=
94− </data>
95− <key>Microsoft.Extensions.Primitives.dll</key>
96− <data>
97− kMM/hdnZfPgRglvw4lsJkVeF69s=
98− </data>
99− <key>Microsoft.Maui.Controls.Compatibility.dll</key>
100− <data>
101− GE/ngNWX/9GHiq4rQfzbzIj3LTI=
102− </data>
103− <key>Microsoft.Maui.Controls.Xaml.dll</key>
104− <data>
105− 74W9IQrV+Dh+RVwI41KckPDyV5M=
106− </data>
107− <key>Microsoft.Maui.Controls.dll</key>
108− <data>
109− EvX/ttZ72kelopstVqg8Hu7q530=
110− </data>
111− <key>Microsoft.Maui.Essentials.dll</key>
112− <data>
113− eCmBT70zrxYegj00oY4KkULYIfc=
114− </data>
115− <key>Microsoft.Maui.Graphics.dll</key>
116− <data>
117− H9sz4EMxXHouXw4VJFLJCPNGQOg=
118− </data>
119− <key>Microsoft.Maui.dll</key>
120− <data>
121− zd3rqTzd89F/rZqL+YfzmOA4Lpc=
122− </data>
123− <key>Microsoft.VisualBasic.Core.dll</key>
124− <data>
125− m6/UFNQxpzQje68EsvGDxhjfnmc=
126− </data>
127− <key>Microsoft.VisualBasic.dll</key>
128− <data>
129− QT0jt2eWQH1F/CiOaAlJz569Vrc=
130− </data>
131− <key>Microsoft.Win32.Primitives.dll</key>
132− <data>
133− w3Kcv2L4H0vIzS13ETTYqJU0p9U=
134− </data>
135− <key>Microsoft.Win32.Registry.dll</key>
136− <data>
137− UU9MwkDVUSMlNC0gY2H8u5TgOms=
138− </data>
139− <key>Microsoft.iOS.dll</key>
140− <data>
141− YY3NLXUMRtOZXeL2Le1aZbS8ylA=
142− </data>
143− <key>Microsoft.iOS.pdb</key>
144− <data>
145− YY9ytVw/v9eImIdU2r32fF1iSq8=
146− </data>
147− <key>MonoTouchDebugConfiguration.txt</key>
148− <data>
149− HlmAtjuZZYt4rOfUtxY3eRZ7cWA=
150− </data>
151− <key>OpenSans-Regular.ttf</key>
152− <data>
153− k0VrKWxe4lE1lZAdUrUCb52Nc28=
154− </data>
155− <key>OpenSans-Semibold.ttf</key>
156− <data>
157− Ldx6GkMB6FCGINTgIY7znxt1Mx8=
158− </data>
159− <key>PkgInfo</key>
160− <data>
161− n57qDP4tZfLD1rCS43W0B4LQjzE=
162− </data>
163− <key>Settings.bundle/Root.plist</key>
164− <data>
165− nrVMGKClE6pvxn6IcBgG4it6i0A=
166− </data>
167− <key>Skrepka.dll</key>
168− <data>
169− gaFYhy31V7Yzc0za1Sj1puG03t0=
170− </data>
171− <key>Skrepka.pdb</key>
172− <data>
173− CJPccXCHHBmb+U3gBGs9lyyHKkw=
174− </data>
175− <key>Sodium.Core.dll</key>
176− <data>
177− 0ESBdeY9d7dNbZDYXcSKbzN3OII=
178− </data>
179− <key>System.AppContext.dll</key>
180− <data>
181− nFq+FA67rsooqefzmsUZNeTeQ2s=
182− </data>
183− <key>System.Buffers.dll</key>
184− <data>
185− gE6F8IQu4MmGHaMSMEeIHPTwYHs=
186− </data>
187− <key>System.Collections.Concurrent.dll</key>
188− <data>
189− t6BXpNBHXftgYj95IcLcDdR1nmc=
190− </data>
191− <key>System.Collections.Immutable.dll</key>
192− <data>
193− ZNLx1npHvoWtx0su+kEPn8mq7rA=
194− </data>
195− <key>System.Collections.NonGeneric.dll</key>
196− <data>
197− Ohqq8jQgpGA9yy5UjeJGRl3V4tg=
198− </data>
199− <key>System.Collections.Specialized.dll</key>
200− <data>
201− ApsrWef53wSaUB8KQOYU2TEmgHw=
202− </data>
203− <key>System.Collections.dll</key>
204− <data>
205− xyMDK6ON8Vzfpz+IhdwUfDxrQFQ=
206− </data>
207− <key>System.ComponentModel.Annotations.dll</key>
208− <data>
209− lQV+ZepzRzmBqxHvW3Lze2jCs8k=
210− </data>
211− <key>System.ComponentModel.DataAnnotations.dll</key>
212− <data>
213− tC9tOoJc6DGexTvdmXQkZbDHiU4=
214− </data>
215− <key>System.ComponentModel.EventBasedAsync.dll</key>
216− <data>
217− Q0v09rDgnP8ndNte1GkgzGDROeQ=
218− </data>
219− <key>System.ComponentModel.Primitives.dll</key>
220− <data>
221− mQf6uIJZYzlDPchDd5A6Uq6Ydwg=
222− </data>
223− <key>System.ComponentModel.TypeConverter.dll</key>
224− <data>
225− 6JQc5jH1itlXd1tITjiZDXp2buA=
226− </data>
227− <key>System.ComponentModel.dll</key>
228− <data>
229− 8pK3hsnZVEFNPqI9PDWnrr2JozU=
230− </data>
231− <key>System.Configuration.dll</key>
232− <data>
233− uuZwGLWmTIdfy3ROovlOk23jSos=
234− </data>
235− <key>System.Console.dll</key>
236− <data>
237− CoNTLoSmjLJ7XSF5Vzq/W2K9rLI=
238− </data>
239− <key>System.Core.dll</key>
240− <data>
241− 9Zw3JhIQwi3eo0CrLOlXZE08cIM=
242− </data>
243− <key>System.Data.Common.dll</key>
244− <data>
245− N5k6yjFRjQJkJfb0+QsQQvOGH/k=
246− </data>
247− <key>System.Data.DataSetExtensions.dll</key>
248− <data>
249− +8nITobX06Og0Mn1X5Prca2HnHc=
250− </data>
251− <key>System.Data.dll</key>
252− <data>
253− eClIWujEYcg1lR8SU0ZAD5w3e5U=
254− </data>
255− <key>System.Diagnostics.Contracts.dll</key>
256− <data>
257− 8/OHFH7y59Of4xoCjEDew2phgiU=
258− </data>
259− <key>System.Diagnostics.Debug.dll</key>
260− <data>
261− eSud3IjISvXV+tB6IW2JGNENFo0=
262− </data>
263− <key>System.Diagnostics.DiagnosticSource.dll</key>
264− <data>
265− OQXNVHFEvRImFTEXmiJIRccgPcE=
266− </data>
267− <key>System.Diagnostics.FileVersionInfo.dll</key>
268− <data>
269− 9lgfpq68jc4bKk27GdSfA9Ayk68=
270− </data>
271− <key>System.Diagnostics.Process.dll</key>
272− <data>
273− RSsAFxy4P3EtxrBGTapye0F+H60=
274− </data>
275− <key>System.Diagnostics.StackTrace.dll</key>
276− <data>
277− WOxlHU6UVcLRBOv4hMBP6MmdCFY=
278− </data>
279− <key>System.Diagnostics.TextWriterTraceListener.dll</key>
280− <data>
281− Q4mk5UTCo1ckUGINy0tXLr1/lVg=
282− </data>
283− <key>System.Diagnostics.Tools.dll</key>
284− <data>
285− dx36dG2i4mRVi1b4D2FkpOdlRbA=
286− </data>
287− <key>System.Diagnostics.TraceSource.dll</key>
288− <data>
289− dCfYtfDt0i+Nr0wdeUMA2Pa+J20=
290− </data>
291− <key>System.Diagnostics.Tracing.dll</key>
292− <data>
293− f1yOo2zc+FM++6hBkqht1f9AG2M=
294− </data>
295− <key>System.Drawing.Primitives.dll</key>
296− <data>
297− Q52XJ9YE0fPdiLZChYw8P8/q6ZI=
298− </data>
299− <key>System.Drawing.dll</key>
300− <data>
301− gOaO/Fi++HwZXSXCktrzr26Zakg=
302− </data>
303− <key>System.Dynamic.Runtime.dll</key>
304− <data>
305− Bp6n6GnCzmoGVHIgB9hl+mg1xQc=
306− </data>
307− <key>System.Formats.Asn1.dll</key>
308− <data>
309− XuHd2/dCnZnvN2B+IgdoIM4xqN0=
310− </data>
311− <key>System.Formats.Tar.dll</key>
312− <data>
313− n8Jb0xD/p6FwFDoIISmar54mYzE=
314− </data>
315− <key>System.Globalization.Calendars.dll</key>
316− <data>
317− xaax0YhkuYnlddML3r+FrbZ2sug=
318− </data>
319− <key>System.Globalization.Extensions.dll</key>
320− <data>
321− Xa13cr92Enr5uqgcpXMJmkQzr6g=
322− </data>
323− <key>System.Globalization.dll</key>
324− <data>
325− kTxvlGDpm4ExkIfYJbpQ1nkRkxI=
326− </data>
327− <key>System.IO.Compression.Brotli.dll</key>
328− <data>
329− K357POBX8vVhpOUF0FBj4qIHeKk=
330− </data>
331− <key>System.IO.Compression.FileSystem.dll</key>
332− <data>
333− ldGtYpbb8lrFBgTkE/9gMiJVoU4=
334− </data>
335− <key>System.IO.Compression.ZipFile.dll</key>
336− <data>
337− QzlnwN5npFJpDl4eENQA5c01ZK8=
338− </data>
339− <key>System.IO.Compression.dll</key>
340− <data>
341− AWKZN3RoW5nYEm06kFMRIRRrM5I=
342− </data>
343− <key>System.IO.FileSystem.AccessControl.dll</key>
344− <data>
345− 28Lq4WcorkCw6bT4V/QRw6vfImc=
346− </data>
347− <key>System.IO.FileSystem.DriveInfo.dll</key>
348− <data>
349− /Ts+oKS1+uAhCJViQVF4jmp0Lcs=
350− </data>
351− <key>System.IO.FileSystem.Primitives.dll</key>
352− <data>
353− XHuBFVwk/CjAuAg3SbYuudHb7kM=
354− </data>
355− <key>System.IO.FileSystem.Watcher.dll</key>
356− <data>
357− p98RJonMbvS1E42EV1dAdvBuYP8=
358− </data>
359− <key>System.IO.FileSystem.dll</key>
360− <data>
361− 1dV/puZt0WRtRsX8aSlHSXCwFtg=
362− </data>
363− <key>System.IO.IsolatedStorage.dll</key>
364− <data>
365− GxFYdpK/0QdS3Qy2ysfsAUOxOns=
366− </data>
367− <key>System.IO.MemoryMappedFiles.dll</key>
368− <data>
369− c6EGzMevjUJgqFocn9LBGC39vjk=
370− </data>
371− <key>System.IO.Pipelines.dll</key>
372− <data>
373− p/sI2tANOsHTFAHn0a0uizif9as=
374− </data>
375− <key>System.IO.Pipes.AccessControl.dll</key>
376− <data>
377− w7uCG6lpvTKVAdsHzphMXu1TDCM=
378− </data>
379− <key>System.IO.Pipes.dll</key>
380− <data>
381− 8uTNaY8FI2lPuCJ/wFPthtNdOdY=
382− </data>
383− <key>System.IO.UnmanagedMemoryStream.dll</key>
384− <data>
385− oRQOtKqnishGhUnHpTzh2rclW7M=
386− </data>
387− <key>System.IO.dll</key>
388− <data>
389− BlHaZm7QsQpuCfHb+DH3CbjDcXE=
390− </data>
391− <key>System.Linq.AsyncEnumerable.dll</key>
392− <data>
393− n/BRT4LzciR4+NppsuAV04PYdMs=
394− </data>
395− <key>System.Linq.Expressions.dll</key>
396− <data>
397− 1jlMQwtj4N0j6HtZT7HRGbt1ioA=
398− </data>
399− <key>System.Linq.Parallel.dll</key>
400− <data>
401− tkoJL1O/GQmDs2/Di+zcs+NrD/M=
402− </data>
403− <key>System.Linq.Queryable.dll</key>
404− <data>
405− Lg7mEQ6ADCS8ga4J1mgM2HO1pso=
406− </data>
407− <key>System.Linq.dll</key>
408− <data>
409− EPgcHN8Xn6x0iePQ1GI2A0RxDKk=
410− </data>
411− <key>System.Memory.dll</key>
412− <data>
413− c8OcyqU2ujOxkuHi9fFR+WSXrMA=
414− </data>
415− <key>System.Net.Http.Json.dll</key>
416− <data>
417− UmG5CPMjQ8nF9/aIyuQNI/ho86E=
418− </data>
419− <key>System.Net.Http.dll</key>
420− <data>
421− ZhC01B8cQ+ci6Hb109wpmRAgcf4=
422− </data>
423− <key>System.Net.HttpListener.dll</key>
424− <data>
425− dBLXL9rYsA+0HC+9BZSm1m8JT2w=
426− </data>
427− <key>System.Net.Mail.dll</key>
428− <data>
429− RBc8no9Sk3GlR17TASI3f6QliGc=
430− </data>
431− <key>System.Net.NameResolution.dll</key>
432− <data>
433− IbIkN0Qr9Miz6tsalA5270JAVb4=
434− </data>
435− <key>System.Net.NetworkInformation.dll</key>
436− <data>
437− F84qcVtQRiPpIl9hG1/m91q4kwc=
438− </data>
439− <key>System.Net.Ping.dll</key>
440− <data>
441− 7Lp5sSIObWnkjCJLGtO5030wM5M=
442− </data>
443− <key>System.Net.Primitives.dll</key>
444− <data>
445− /WwOYa2mDEANRaK2TUXzUE0rZ2Y=
446− </data>
447− <key>System.Net.Quic.dll</key>
448− <data>
449− gYnWNy4xq2R4px44JDY8POJ1eWg=
450− </data>
451− <key>System.Net.Requests.dll</key>
452− <data>
453− cvkqMGfIFD1tdT1IVXLDs6ceOSI=
454− </data>
455− <key>System.Net.Security.dll</key>
456− <data>
457− owN3Ngk93ExxDBIpbNKyYgHdiFU=
458− </data>
459− <key>System.Net.ServerSentEvents.dll</key>
460− <data>
461− XsLNiilhCgZHRC411lLWKMO1xBo=
462− </data>
463− <key>System.Net.ServicePoint.dll</key>
464− <data>
465− 6gASPLW4FBhAnRr3fTlUF7Y6QFo=
466− </data>
467− <key>System.Net.Sockets.dll</key>
468− <data>
469− Ttdq1+aSNwZ51M3NU3UBjI0oKjs=
470− </data>
471− <key>System.Net.WebClient.dll</key>
472− <data>
473− pYSDmMRaqsl4n7hnnG/fiM8nWt8=
474− </data>
475− <key>System.Net.WebHeaderCollection.dll</key>
476− <data>
477− 3YC+0dhpEY6S3mYCzD2s5yF5lTY=
478− </data>
479− <key>System.Net.WebProxy.dll</key>
480− <data>
481− fansTJnXVO9kdaEYskm2bjPV1WY=
482− </data>
483− <key>System.Net.WebSockets.Client.dll</key>
484− <data>
485− JboM0yu2XTLIKQ6OWRCg573qJj8=
486− </data>
487− <key>System.Net.WebSockets.dll</key>
488− <data>
489− NEJ+iy5vz9Rdpu5O0VIQasJlBQc=
490− </data>
491− <key>System.Net.dll</key>
492− <data>
493− YpDbNtPFvsobWijhmdoS3BWX4Gg=
494− </data>
495− <key>System.Numerics.Vectors.dll</key>
496− <data>
497− OQF5KcvzKoUdcn3LBH4oKmhoS2Y=
498− </data>
499− <key>System.Numerics.dll</key>
500− <data>
501− shbVeUoPusZRnlHsb5bd6HYjtZk=
502− </data>
503− <key>System.ObjectModel.dll</key>
504− <data>
505− +6juuwS062YZkYUEmwlEmWDQshI=
506− </data>
507− <key>System.Private.CoreLib.aotdata.arm64</key>
508− <data>
509− 3ywd9CwbMj1zET77AmjySp57O9M=
510− </data>
511− <key>System.Private.CoreLib.dll</key>
512− <data>
513− zDp74qytKE8nEaTFF79BsranR8I=
514− </data>
515− <key>System.Private.DataContractSerialization.dll</key>
516− <data>
517− R7KIE0AI99wEDUdzDUoWt0idKM8=
518− </data>
519− <key>System.Private.Uri.dll</key>
520− <data>
521− sB3P7iaDxcpJwf3Kbux0pkdbusI=
522− </data>
523− <key>System.Private.Xml.Linq.dll</key>
524− <data>
525− L1vv4njhnNB0I2JGVS+Jht61pDw=
526− </data>
527− <key>System.Private.Xml.dll</key>
528− <data>
529− N2ynNHbVjpkkxyq8nV8KwCdKLFU=
530− </data>
531− <key>System.Reflection.DispatchProxy.dll</key>
532− <data>
533− PLwhbqCc1yxil5YskmB3YRk+jmw=
534− </data>
535− <key>System.Reflection.Emit.ILGeneration.dll</key>
536− <data>
537− xoTCW5fJxPLUd3UUelnDcDHB5lU=
538− </data>
539− <key>System.Reflection.Emit.Lightweight.dll</key>
540− <data>
541− FGwlfswJwQgO//tjQWthEC+gPa4=
542− </data>
543− <key>System.Reflection.Emit.dll</key>
544− <data>
545− mw9uXNNA7dXtUL/OwiopFSOg1z8=
546− </data>
547− <key>System.Reflection.Extensions.dll</key>
548− <data>
549− 6drN7Gw/y8qEH+8TA+WAxQQSoSA=
550− </data>
551− <key>System.Reflection.Metadata.dll</key>
552− <data>
553− 84MBRY9K7O1nYtKIQ05O6eCqZjQ=
554− </data>
555− <key>System.Reflection.Primitives.dll</key>
556− <data>
557− eBbCmiJ6kl8bgj2UqN1OwKOYZqI=
558− </data>
559− <key>System.Reflection.TypeExtensions.dll</key>
560− <data>
561− IW8dU7u1uY9CtYQKJvB/P6J7zUQ=
562− </data>
563− <key>System.Reflection.dll</key>
564− <data>
565− MeReVlAvwvena3jzzO0tfT744r0=
566− </data>
567− <key>System.Resources.Reader.dll</key>
568− <data>
569− 9pZK9Rqjcemo0CLEB2G9XzThCMc=
570− </data>
571− <key>System.Resources.ResourceManager.dll</key>
572− <data>
573− rMOOfRsTxxVgBiN7IwEeVWZwqbE=
574− </data>
575− <key>System.Resources.Writer.dll</key>
576− <data>
577− S+kC0O+0qdpE+CuTmMi8G264Xec=
578− </data>
579− <key>System.Runtime.CompilerServices.Unsafe.dll</key>
580− <data>
581− YpeTy0IWU4QjG4OJCT8aMFmL1ko=
582− </data>
583− <key>System.Runtime.CompilerServices.VisualC.dll</key>
584− <data>
585− ng3i7x1YjNHihGWqxTyZP0z3N5c=
586− </data>
587− <key>System.Runtime.Extensions.dll</key>
588− <data>
589− QuOg4WekUeNg6yWWEEfT8bmAdfM=
590− </data>
591− <key>System.Runtime.Handles.dll</key>
592− <data>
593− nohckYBS7Xqf+OmbIUCJtW9Mxnc=
594− </data>
595− <key>System.Runtime.InteropServices.JavaScript.dll</key>
596− <data>
597− xnNnHRWi9tfDJgf4RLYgJmr3V+E=
598− </data>
599− <key>System.Runtime.InteropServices.RuntimeInformation.dll</key>
600− <data>
601− EM2rJmHKEMb761+HrIaKn4vQi04=
602− </data>
603− <key>System.Runtime.InteropServices.dll</key>
604− <data>
605− As553557iWYcAlcEZISObFLceRM=
606− </data>
607− <key>System.Runtime.Intrinsics.dll</key>
608− <data>
609− 7I3ib1MQm5BkHdFSZj5g/p4njWs=
610− </data>
611− <key>System.Runtime.Loader.dll</key>
612− <data>
613− PZ9ikx0PGVUFLtft0sXWAPRuklU=
614− </data>
615− <key>System.Runtime.Numerics.dll</key>
616− <data>
617− hU6RHIPb0qWfZf5RLJ5jZT8V1ho=
618− </data>
619− <key>System.Runtime.Serialization.Formatters.dll</key>
620− <data>
621− WvcDo4gIwYjBNSu24jqZO9woCjM=
622− </data>
623− <key>System.Runtime.Serialization.Json.dll</key>
624− <data>
625− WF/lFMjhGZ5a8Xjx/48dFH+/YSU=
626− </data>
627− <key>System.Runtime.Serialization.Primitives.dll</key>
628− <data>
629− gx35ks0ipX8ZWm7D03EH5AQW1F4=
630− </data>
631− <key>System.Runtime.Serialization.Xml.dll</key>
632− <data>
633− FXHBwsbBVAqC4Z+eGIfLKV/T3g0=
634− </data>
635− <key>System.Runtime.Serialization.dll</key>
636− <data>
637− ZKZMxcjwUSAQa4ZP2UDP4+e7yJ0=
638− </data>
639− <key>System.Runtime.dll</key>
640− <data>
641− Q+zta20LZUQuVFqPVycrtF7s5EU=
642− </data>
643− <key>System.Security.AccessControl.dll</key>
644− <data>
645− DNbZxTfg1R1K1N2qK1hXoM3bMpI=
646− </data>
647− <key>System.Security.Claims.dll</key>
648− <data>
649− gvHlt0w+HiZCQlCnT3QbG7dkKM0=
650− </data>
651− <key>System.Security.Cryptography.Algorithms.dll</key>
652− <data>
653− cBm9Djih9zuuwTOwnoerIDGasoo=
654− </data>
655− <key>System.Security.Cryptography.Cng.dll</key>
656− <data>
657− bh5IIzoHS/pDstLVb+1Vn8vXj70=
658− </data>
659− <key>System.Security.Cryptography.Csp.dll</key>
660− <data>
661− mdMj+2/X1BMtx2Z3/LbId2l+UUI=
662− </data>
663− <key>System.Security.Cryptography.Encoding.dll</key>
664− <data>
665− byb6aquXsF4O82fvMtfOuju7aXM=
666− </data>
667− <key>System.Security.Cryptography.OpenSsl.dll</key>
668− <data>
669− Cuo71k17XZs35osGqv+Ua2WFcQs=
670− </data>
671− <key>System.Security.Cryptography.Primitives.dll</key>
672− <data>
673− AuNskwSSQ9ldx4Nswp2/PEwnHlk=
674− </data>
675− <key>System.Security.Cryptography.X509Certificates.dll</key>
676− <data>
677− bm73IRbcg2oVj18aA2UnQCKMb3U=
678− </data>
679− <key>System.Security.Cryptography.dll</key>
680− <data>
681− NNbcmUWern4JqYa3jwQDp341DE8=
682− </data>
683− <key>System.Security.Principal.Windows.dll</key>
684− <data>
685− i68p5YZYxurLcZZOzsAMVe8rANk=
686− </data>
687− <key>System.Security.Principal.dll</key>
688− <data>
689− EJXWgBHfSXyzZEWIgC4dcUj6fB4=
690− </data>
691− <key>System.Security.SecureString.dll</key>
692− <data>
693− HhPkIK3EQRrDBZQ1BJwA0nxN6pM=
694− </data>
695− <key>System.Security.dll</key>
696− <data>
697− p8rQAnTKLKuSFzhSr3N4rSNEiMk=
698− </data>
699− <key>System.ServiceModel.Web.dll</key>
700− <data>
701− 2KuoiERWbtbtJwDEhy8V5OSrIvQ=
702− </data>
703− <key>System.ServiceProcess.dll</key>
704− <data>
705− wEoOcXgiv+CHJ0eNFRvYx4J7ARo=
706− </data>
707− <key>System.Text.Encoding.CodePages.dll</key>
708− <data>
709− Mp98f82e7KsIYJoNhCnEaxkYBa8=
710− </data>
711− <key>System.Text.Encoding.Extensions.dll</key>
712− <data>
713− PsvVarLWvh8vzqveOqF+iw0t/14=
714− </data>
715− <key>System.Text.Encoding.dll</key>
716− <data>
717− blaBgWBvTzeb/iRXa8PPurWCWTA=
718− </data>
719− <key>System.Text.Encodings.Web.dll</key>
720− <data>
721− SqEJIt+nz4GLCZPNoMjAHKfQx/4=
722− </data>
723− <key>System.Text.Json.dll</key>
724− <data>
725− oZ0p5Ba36pdpG6+644wdyLUdLy4=
726− </data>
727− <key>System.Text.RegularExpressions.dll</key>
728− <data>
729− kpRmiEpBh0c7LjWHm0x9tqDNd0c=
730− </data>
731− <key>System.Threading.AccessControl.dll</key>
732− <data>
733− Utwfeuy5ttko/1JxdikepvXdmqc=
734− </data>
735− <key>System.Threading.Channels.dll</key>
736− <data>
737− kgAcugHgBHrg02ncRFg+Kjjkl28=
738− </data>
739− <key>System.Threading.Overlapped.dll</key>
740− <data>
741− 7txtajyC9ON1yOQff67gZPhKIvg=
742− </data>
743− <key>System.Threading.Tasks.Dataflow.dll</key>
744− <data>
745− riZyPvgYL4kVeW6ImDGSUHSoDn8=
746− </data>
747− <key>System.Threading.Tasks.Extensions.dll</key>
748− <data>
749− iC8cszbZZmXVcW80wUfaRDb0u+s=
750− </data>
751− <key>System.Threading.Tasks.Parallel.dll</key>
752− <data>
753− ekAqTquDqziDlUfiOuiFVurRKyA=
754− </data>
755− <key>System.Threading.Tasks.dll</key>
756− <data>
757− PvT1Ri2lwPKd/31iQVcRNC1qHog=
758− </data>
759− <key>System.Threading.Thread.dll</key>
760− <data>
761− OP6beWifQ8DpJL+r5/pfP8RBFbk=
762− </data>
763− <key>System.Threading.ThreadPool.dll</key>
764− <data>
765− F2+R+t8Ty9lG4o1Cm2wHgKq0lsw=
766− </data>
767− <key>System.Threading.Timer.dll</key>
768− <data>
769− D6oMvIJTJkyDo4hycJKoQxzouWo=
770− </data>
771− <key>System.Threading.dll</key>
772− <data>
773− m5k1ZLYm6evja4FcPFOIfbeIWyc=
774− </data>
775− <key>System.Transactions.Local.dll</key>
776− <data>
777− Et/vcSI/xr3+8Gq9zHX/485q9VQ=
778− </data>
779− <key>System.Transactions.dll</key>
780− <data>
781− 5F2cai9fsNmpQzkdnL1KIgO734c=
782− </data>
783− <key>System.ValueTuple.dll</key>
784− <data>
785− WrQ/jPK6soukbKB5zhn0ud3u74c=
786− </data>
787− <key>System.Web.HttpUtility.dll</key>
788− <data>
789− Q5j+KnA7b9Cck42+wVpxxZ8+PVo=
790− </data>
791− <key>System.Web.dll</key>
792− <data>
793− zjjxjcGA6lCy1gaz4Ly54Pkv0Yc=
794− </data>
795− <key>System.Windows.dll</key>
796− <data>
797− abdkeXzbPFCrqCw0BSJNfe06dgU=
798− </data>
799− <key>System.Xml.Linq.dll</key>
800− <data>
801− LuN8jaIml8sPOb/elzOLocApz94=
802− </data>
803− <key>System.Xml.ReaderWriter.dll</key>
804− <data>
805− ugFH/HjrOK2cBKl6v/gS77b+bbo=
806− </data>
807− <key>System.Xml.Serialization.dll</key>
808− <data>
809− WcOcXSFTbDJuQBAw8QOvV3/fJ2Y=
810− </data>
811− <key>System.Xml.XDocument.dll</key>
812− <data>
813− I2TQ6IlDDNL8jdBk6IO5qrqW7H0=
814− </data>
815− <key>System.Xml.XPath.XDocument.dll</key>
816− <data>
817− bpuo4BAWiUIRWA2oGdcqYpWT1AA=
818− </data>
819− <key>System.Xml.XPath.dll</key>
820− <data>
821− eKMDQliyhd0CE1wYbBM6GdASIQA=
822− </data>
823− <key>System.Xml.XmlDocument.dll</key>
824− <data>
825− IrkIR4pbvsJeaEMbyhzXGva5YsE=
826− </data>
827− <key>System.Xml.XmlSerializer.dll</key>
828− <data>
829− +JfFGml1B+osZ5VkLpQV0GoW6qc=
830− </data>
831− <key>System.Xml.dll</key>
832− <data>
833− 4y5FUA8fxE2vxIGbf4ZZkyUMTSY=
834− </data>
835− <key>System.dll</key>
836− <data>
837− 1YtMOavXJ5MDSKMuPJAIbxhHZL4=
838− </data>
839− <key>WindowsBase.dll</key>
840− <data>
841− K14fQ7tERW2T2NzCWBeWjY6tWv4=
842− </data>
843− <key>appicon60x60@2x.png</key>
844− <data>
845− t4umfOZFumJ7QmzKhGEnyAcUk+s=
846− </data>
847− <key>appicon76x76@2x~ipad.png</key>
848− <data>
849− DWMNKrxV/bN2DZXE4IIeRSflUEM=
850− </data>
851− <key>ar/Microsoft.Maui.Controls.resources.dll</key>
852− <data>
853− Egsi4QlxUZ1hb4+31r89mEqGYhE=
854− </data>
855− <key>ca/Microsoft.Maui.Controls.resources.dll</key>
856− <data>
857− 4mM/eWaTWG/pdH+dUHvXxvMAZ5Y=
858− </data>
859− <key>cs/FSharp.Core.resources.dll</key>
860− <data>
861− bmX8Mw2Whdg0OI/TJVz5Cw9kru8=
862− </data>
863− <key>cs/Microsoft.Maui.Controls.resources.dll</key>
864− <data>
865− +0fEtutKqLtAiF3QB6IU82UEokA=
866− </data>
867− <key>da/Microsoft.Maui.Controls.resources.dll</key>
868− <data>
869− rbMrDko1cl9vTgBpEs1DYoXA4+0=
870− </data>
871− <key>de/FSharp.Core.resources.dll</key>
872− <data>
873− qCfWtCM1xICmIeWar2r27Tzo+6M=
874− </data>
875− <key>de/Microsoft.Maui.Controls.resources.dll</key>
876− <data>
877− mMbmq6FvHgoAWr1ZG6y++VkmOU0=
878− </data>
879− <key>dotnet_bot.png</key>
880− <data>
881− pV4EgFY2vvoKqovCvw+8K53Enig=
882− </data>
883− <key>dotnet_bot@2x.png</key>
884− <data>
885− S8msgxuld34wnkDYjnCuD9Hd6gM=
886− </data>
887− <key>dotnet_bot@3x.png</key>
888− <data>
889− 0MNKQFxkmotyH6NbFxiImCoXedE=
890− </data>
891− <key>el/Microsoft.Maui.Controls.resources.dll</key>
892− <data>
893− lmMr1JHISjl9B4kZGOx/mtCY5SA=
894− </data>
895− <key>es/FSharp.Core.resources.dll</key>
896− <data>
897− LPyhaJ+t6Ve6eaMpBGdazuXsii0=
898− </data>
899− <key>es/Microsoft.Maui.Controls.resources.dll</key>
900− <data>
901− up6/yHdGQhGatFY3P0YW1iQZzTc=
902− </data>
903− <key>fi/Microsoft.Maui.Controls.resources.dll</key>
904− <data>
905− 9brZScVn/38V8CKlSJvdNerGQ6k=
906− </data>
907− <key>fr/FSharp.Core.resources.dll</key>
908− <data>
909− 17Gh8tZLC9LdF8wYK5fTVM1RkgY=
910− </data>
911− <key>fr/Microsoft.Maui.Controls.resources.dll</key>
912− <data>
913− z8P86AzK5cIGdCAp3JaA84Kkb4I=
914− </data>
915− <key>he/Microsoft.Maui.Controls.resources.dll</key>
916− <data>
917− 8WDybu+M99lXMNPdaodV7/TNNtI=
918− </data>
919− <key>hi/Microsoft.Maui.Controls.resources.dll</key>
920− <data>
921− ru5r+N/SEp24ibJamiYq49d9R+E=
922− </data>
923− <key>hr/Microsoft.Maui.Controls.resources.dll</key>
924− <data>
925− 8QNf0xjIJdFM9SNQt0/fbyklTqo=
926− </data>
927− <key>hu/Microsoft.Maui.Controls.resources.dll</key>
928− <data>
929− WxzZd3r6fU0p4e/pF7Wvv+BNK8A=
930− </data>
931− <key>id/Microsoft.Maui.Controls.resources.dll</key>
932− <data>
933− 5tlIKTaYDCGtWlJwbj2+LJZj7ZM=
934− </data>
935− <key>it/FSharp.Core.resources.dll</key>
936− <data>
937− zsj5mAunXrwp/8fJGJ6LtsQoTOU=
938− </data>
939− <key>it/Microsoft.Maui.Controls.resources.dll</key>
940− <data>
941− 4ReMqfWAQN3QfcRBG/LZ9DEY7Us=
942− </data>
943− <key>ja/FSharp.Core.resources.dll</key>
944− <data>
945− TaH7p1VYHl8LbWNsTzQaWXN41Vw=
946− </data>
947− <key>ja/Microsoft.Maui.Controls.resources.dll</key>
948− <data>
949− OynWnkrcryAggiOc38M0CxCblpg=
950− </data>
951− <key>ko/FSharp.Core.resources.dll</key>
952− <data>
953− BvcNoWaDlVqcj8CkluZKpacxfjU=
954− </data>
955− <key>ko/Microsoft.Maui.Controls.resources.dll</key>
956− <data>
957− Hq4PHig6xjB/lOCARM5HKpp37IQ=
958− </data>
959− <key>libSystem.Globalization.Native.dylib</key>
960− <data>
961− d1XLfhHV2ZW+GNF1cv35HmCMPg0=
962− </data>
963− <key>libSystem.IO.Compression.Native.dylib</key>
964− <data>
965− Y1uC22xd3rBZQGwYVOBeFN4wPlU=
966− </data>
967− <key>libSystem.Native.dylib</key>
968− <data>
969− wQsGzu/BLeFTKJmgIJ53IAKmkdQ=
970− </data>
971− <key>libSystem.Net.Security.Native.dylib</key>
972− <data>
973− A1/PBJdooTrliL/t4R/vBoVjewE=
974− </data>
975− <key>libSystem.Security.Cryptography.Native.Apple.dylib</key>
976− <data>
977− Th58NNYsMLjrzzosTx/Fu+iRW3w=
978− </data>
979− <key>libmono-component-debugger.dylib</key>
980− <data>
981− csIg8j2WVfC2B46I1i3k5YysG4I=
982− </data>
983− <key>libmono-component-diagnostics_tracing.dylib</key>
984− <data>
985− jUe8LBE81hU7Rzz6G+xOahgk3Vc=
986− </data>
987− <key>libmono-component-hot_reload.dylib</key>
988− <data>
989− Q5IHXpvHBUvF+71G9TUoCQkMz8U=
990− </data>
991− <key>libmono-component-marshal-ilgen.dylib</key>
992− <data>
993− 86HNsMtTKFQK71WqOQjTHFPtn0k=
994− </data>
995− <key>libmonosgen-2.0.dylib</key>
996− <data>
997− T9sS0WdxPDJCIB/pVzWIgmh3Z5w=
998− </data>
999− <key>libxamarin-dotnet-debug.dylib</key>
1000− <data>
1001− +U+qKtS8jzMtNv3+KAiQJGwr1oE=
1002− </data>
1003− <key>ms/Microsoft.Maui.Controls.resources.dll</key>
1004− <data>
1005− p/geLjympOEkZTwxKAY6vvScb/o=
1006− </data>
1007− <key>mscorlib.dll</key>
1008− <data>
1009− AD53cziIygtn6Iq6+QXUDra/ZxY=
1010− </data>
1011− <key>nb/Microsoft.Maui.Controls.resources.dll</key>
1012− <data>
1013− Jy6PJLE5Yj71ZxFoJVq6OW4kdhE=
1014− </data>
1015− <key>netstandard.dll</key>
1016− <data>
1017− k203s6B5l7kymyEvqpFFXyn/Hog=
1018− </data>
1019− <key>nl/Microsoft.Maui.Controls.resources.dll</key>
1020− <data>
1021− 2WgCkHO4g9Y2+1DkDRoFB/yBvKo=
1022− </data>
1023− <key>pl/FSharp.Core.resources.dll</key>
1024− <data>
1025− PYUJJuWqoKGSwPaU/pet3t7pUZM=
1026− </data>
1027− <key>pl/Microsoft.Maui.Controls.resources.dll</key>
1028− <data>
1029− dBr19RSQuGg2KGu/xvOD1G/iH7g=
1030− </data>
1031− <key>pt-BR/FSharp.Core.resources.dll</key>
1032− <data>
1033− x966gPgI5d2ZlsZThlZVOdlsXTs=
1034− </data>
1035− <key>pt-BR/Microsoft.Maui.Controls.resources.dll</key>
1036− <data>
1037− 5w7/BI5DBL0YqkSCcuWYU5Qq/5o=
1038− </data>
1039− <key>pt/Microsoft.Maui.Controls.resources.dll</key>
1040− <data>
1041− dYHSBKtQVj4DevMvp4ugl9l/CE8=
1042− </data>
1043− <key>ro/Microsoft.Maui.Controls.resources.dll</key>
1044− <data>
1045− n+vNCOtNQR3TPEiG78XCg4gBn6M=
1046− </data>
1047− <key>ru/FSharp.Core.resources.dll</key>
1048− <data>
1049− z2HZ+v7QTfbYUMTg2x7/Ken7gfk=
1050− </data>
1051− <key>ru/Microsoft.Maui.Controls.resources.dll</key>
1052− <data>
1053− ffWfJGcbSgBVy6LDn5EYbZLcBr4=
1054− </data>
1055− <key>runtimeconfig.bin</key>
1056− <data>
1057− fGnMTvGt8lJOsiLu40LTsCCmEO8=
1058− </data>
1059− <key>sk/Microsoft.Maui.Controls.resources.dll</key>
1060− <data>
1061− pVKyyZ+iDXcX5bUH536sDlVP4K0=
1062− </data>
1063− <key>splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D.png</key>
1064− <data>
1065− e6LlBMI9b91XaCSQDhDOglC5cA8=
1066− </data>
1067− <key>splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D@2x.png</key>
1068− <data>
1069− gr+pgKyzNNxtcT1JaZIj7N80Fxc=
1070− </data>
1071− <key>splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D@3x.png</key>
1072− <data>
1073− V9uL2U0a2H/Rg28AStjUugC+RP4=
1074− </data>
1075− <key>sv/Microsoft.Maui.Controls.resources.dll</key>
1076− <data>
1077− KIIRGm9b+YeO6CEaJx46QOmxwug=
1078− </data>
1079− <key>th/Microsoft.Maui.Controls.resources.dll</key>
1080− <data>
1081− S7WwHlSwWfjwU6BQ3psac3RVO5U=
1082− </data>
1083− <key>tr/FSharp.Core.resources.dll</key>
1084− <data>
1085− U6BYs4pp99AVVUMp1L2o3AxSFvA=
1086− </data>
1087− <key>tr/Microsoft.Maui.Controls.resources.dll</key>
1088− <data>
1089− bwvQNCTApL9f1aCbg20IwIIcxkU=
1090− </data>
1091− <key>uk/Microsoft.Maui.Controls.resources.dll</key>
1092− <data>
1093− E8fmyjuWLmDWTcAW/zC09DMmyoc=
1094− </data>
1095− <key>vi/Microsoft.Maui.Controls.resources.dll</key>
1096− <data>
1097− A5d5EFfl1qaNpaKqKLyCd8fsYho=
1098− </data>
1099− <key>xml/microsoft_maui_essentials_fileprovider_file_paths.xml</key>
1100− <data>
1101− 0ZugOR08oYUyn+ivNzk266eEOoY=
1102− </data>
1103− <key>zh-HK/Microsoft.Maui.Controls.resources.dll</key>
1104− <data>
1105− +1ISlp21cPDy9r50S6uTXyPLjcc=
1106− </data>
1107− <key>zh-Hans/FSharp.Core.resources.dll</key>
1108− <data>
1109− JtqqK2n23MtVF3iswi8VvJIEwEg=
1110− </data>
1111− <key>zh-Hans/Microsoft.Maui.Controls.resources.dll</key>
1112− <data>
1113− zyEVxB3SXKHrzK3bQdF9EOxuEsI=
1114− </data>
1115− <key>zh-Hant/FSharp.Core.resources.dll</key>
1116− <data>
1117− bz6QUKo/SpU7gvXBPGl8rHBvqUg=
1118− </data>
1119− <key>zh-Hant/Microsoft.Maui.Controls.resources.dll</key>
1120− <data>
1121− 2455YsHKLJb2iIkRdM5UdfQ9eMY=
1122− </data>
1123− </dict>
1124− <key>files2</key>
1125− <dict>
1126− <key>AboutAssets.txt</key>
1127− <dict>
1128− <key>hash2</key>
1129− <data>
1130− t4We5YMjGmD/FdBmcXlXrw2x8ZFYFpbHMqMJYtbO1ZY=
1131− </data>
1132− </dict>
1133− <key>Assets.car</key>
1134− <dict>
1135− <key>hash2</key>
1136− <data>
1137− symrwVyFw7N7G+KK0oRFbfHckXkinEtZIkUB+2MmhCQ=
1138− </data>
1139− </dict>
1140− <key>FSharp.Core.dll</key>
1141− <dict>
1142− <key>hash2</key>
1143− <data>
1144− deIR455zlHf3M2Pdjv6Ro/px5HUznTuOOzoV3uiFE9M=
1145− </data>
1146− </dict>
1147− <key>Fabulous.MauiControls.dll</key>
1148− <dict>
1149− <key>hash2</key>
1150− <data>
1151− wQC1QzDiO0hkLzc4jm1dxxZwTbS50Wll7bX+UiPAvfs=
1152− </data>
1153− </dict>
1154− <key>Fabulous.dll</key>
1155− <dict>
1156− <key>hash2</key>
1157− <data>
1158− qpZJG5sHLu7WLZdd3Hp9GLV8v5gqy7cr5m0iSkYjBXc=
1159− </data>
1160− </dict>
1161− <key>LiteDB.dll</key>
1162− <dict>
1163− <key>hash2</key>
1164− <data>
1165− rjGsapNUkhe56LgUl9HugxZYrebfnh7iDyg48i3l4hg=
1166− </data>
1167− </dict>
1168− <key>MauiInfo.plist</key>
1169− <dict>
1170− <key>hash2</key>
1171− <data>
1172− tx0KXqEC+DvcCGyogQTEQWHcCWJYYqH24NtPwhpQEjo=
1173− </data>
1174− </dict>
1175− <key>MauiSplash.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib</key>
1176− <dict>
1177− <key>hash2</key>
1178− <data>
1179− PD0GUDDeE5JffNIPVoucOIHmED6dLPnIxI/a9Oh8ADc=
1180− </data>
1181− </dict>
1182− <key>MauiSplash.storyboardc/Info.plist</key>
1183− <dict>
1184− <key>hash2</key>
1185− <data>
1186− HyVdXMU7Ux4/KalAao30mpWOK/lEPT4gvYN09wf31cg=
1187− </data>
1188− </dict>
1189− <key>MauiSplash.storyboardc/UIViewController-01J-lp-oVM.nib</key>
1190− <dict>
1191− <key>hash2</key>
1192− <data>
1193− VPNjf2cf66XxnoLsT0p/tEi7PPwPsYDwiapXH8jwU+I=
1194− </data>
1195− </dict>
1196− <key>Microsoft.CSharp.dll</key>
1197− <dict>
1198− <key>hash2</key>
1199− <data>
1200− tzQi1YlupHxyeGs6yR4GjGv11plhhUE4vzaYcsH87TI=
1201− </data>
1202− </dict>
1203− <key>Microsoft.Extensions.Configuration.Abstractions.dll</key>
1204− <dict>
1205− <key>hash2</key>
1206− <data>
1207− Xe9o4cfZwfz1YVO7Zp4A2Ewa4Xs1+wnFqMz5PpuTTT4=
1208− </data>
1209− </dict>
1210− <key>Microsoft.Extensions.Configuration.dll</key>
1211− <dict>
1212− <key>hash2</key>
1213− <data>
1214− lMOYEIT3E6Ua09JmFFFU0kaPWcTNPivegpQb+E6X+1U=
1215− </data>
1216− </dict>
1217− <key>Microsoft.Extensions.DependencyInjection.Abstractions.dll</key>
1218− <dict>
1219− <key>hash2</key>
1220− <data>
1221− fJfERj/g/BHR8i9NFgsr0iiJga3x3icXpv8/uZPd8pQ=
1222− </data>
1223− </dict>
1224− <key>Microsoft.Extensions.DependencyInjection.dll</key>
1225− <dict>
1226− <key>hash2</key>
1227− <data>
1228− 1kalzKXoEWrka0NxUpcIP6ijjbY26rYOZu7vNQ10zV0=
1229− </data>
1230− </dict>
1231− <key>Microsoft.Extensions.Diagnostics.Abstractions.dll</key>
1232− <dict>
1233− <key>hash2</key>
1234− <data>
1235− lwK4c3AJu19slDz3o7pcCZHH5OtYqelS1Ug1u1lv5WM=
1236− </data>
1237− </dict>
1238− <key>Microsoft.Extensions.FileProviders.Abstractions.dll</key>
1239− <dict>
1240− <key>hash2</key>
1241− <data>
1242− fuk1qt2K/i9zHWVe9UR57WIG5tKqUr/RiJzfFwsPk5k=
1243− </data>
1244− </dict>
1245− <key>Microsoft.Extensions.Hosting.Abstractions.dll</key>
1246− <dict>
1247− <key>hash2</key>
1248− <data>
1249− iaRCil0P7t3lqgVlUJufTGGJ79yviIzRwsP5eeMszXw=
1250− </data>
1251− </dict>
1252− <key>Microsoft.Extensions.Logging.Abstractions.dll</key>
1253− <dict>
1254− <key>hash2</key>
1255− <data>
1256− p2pzW2Pm7zsL9B/5JCPL0WEDuJUugwYUCpvWUDRgNNw=
1257− </data>
1258− </dict>
1259− <key>Microsoft.Extensions.Logging.dll</key>
1260− <dict>
1261− <key>hash2</key>
1262− <data>
1263− LANHJavZCv4woUJuZHfLBpO8eRcOHf2zzvcUbilqH3E=
1264− </data>
1265− </dict>
1266− <key>Microsoft.Extensions.Options.dll</key>
1267− <dict>
1268− <key>hash2</key>
1269− <data>
1270− WASNcQzyqI096nyTPQsUCEZNWqQkXvc209R+bfa6TbM=
1271− </data>
1272− </dict>
1273− <key>Microsoft.Extensions.Primitives.dll</key>
1274− <dict>
1275− <key>hash2</key>
1276− <data>
1277− aq+Sk0P9AkFdbLXZA4FsLxyDGxlL/noVeJh5CT0Pprc=
1278− </data>
1279− </dict>
1280− <key>Microsoft.Maui.Controls.Compatibility.dll</key>
1281− <dict>
1282− <key>hash2</key>
1283− <data>
1284− m8LdWfNjcHKIOJTxffS43qPeI9ChJaTeBByxH+TII8k=
1285− </data>
1286− </dict>
1287− <key>Microsoft.Maui.Controls.Xaml.dll</key>
1288− <dict>
1289− <key>hash2</key>
1290− <data>
1291− phDYkpZMseK+qFQ3gtPa4BlOo7fm6qhiY59MK/J99E4=
1292− </data>
1293− </dict>
1294− <key>Microsoft.Maui.Controls.dll</key>
1295− <dict>
1296− <key>hash2</key>
1297− <data>
1298− XTN9jEjAuvDOILVm5P1Ox21FNTeyQ6WbHFs6fSX6jyA=
1299− </data>
1300− </dict>
1301− <key>Microsoft.Maui.Essentials.dll</key>
1302− <dict>
1303− <key>hash2</key>
1304− <data>
1305− BiM2qhE46b6pq94+faoPV6tUPR3/PqtiMp8EKPwFddE=
1306− </data>
1307− </dict>
1308− <key>Microsoft.Maui.Graphics.dll</key>
1309− <dict>
1310− <key>hash2</key>
1311− <data>
1312− j3Le2jD6x10l6YrZOEawj7pcYIjdaw1cJEkaIrdncd8=
1313− </data>
1314− </dict>
1315− <key>Microsoft.Maui.dll</key>
1316− <dict>
1317− <key>hash2</key>
1318− <data>
1319− ySJPCmUPILYijXFaOmzx5PCbZYd6klmTiUsO/RzL7zI=
1320− </data>
1321− </dict>
1322− <key>Microsoft.VisualBasic.Core.dll</key>
1323− <dict>
1324− <key>hash2</key>
1325− <data>
1326− JcslkRhUTHHI91H8aqid4JG7y0mkvK34Tw8i5Yu5Yh8=
1327− </data>
1328− </dict>
1329− <key>Microsoft.VisualBasic.dll</key>
1330− <dict>
1331− <key>hash2</key>
1332− <data>
1333− AVC8+1LbpNBzN0YE+x4WB88vypp0DIpXZ+XJuHvd3S8=
1334− </data>
1335− </dict>
1336− <key>Microsoft.Win32.Primitives.dll</key>
1337− <dict>
1338− <key>hash2</key>
1339− <data>
1340− Bgj75QGmvm1mZ9BoBIOiRSlK/P1dJKkTO35DeQEu9Fg=
1341− </data>
1342− </dict>
1343− <key>Microsoft.Win32.Registry.dll</key>
1344− <dict>
1345− <key>hash2</key>
1346− <data>
1347− HgvYPrvk1egTlyyrsXV65foiRaZutXcOBv/EuWq7gz8=
1348− </data>
1349− </dict>
1350− <key>Microsoft.iOS.dll</key>
1351− <dict>
1352− <key>hash2</key>
1353− <data>
1354− zQsSTy+cOeOodBxFxaQypQCvmo3VoLu/i+gaR4axQuw=
1355− </data>
1356− </dict>
1357− <key>Microsoft.iOS.pdb</key>
1358− <dict>
1359− <key>hash2</key>
1360− <data>
1361− DRrq3WAqvAVyODGhessnLqugEBm66lW2BWaiUy6khQY=
1362− </data>
1363− </dict>
1364− <key>MonoTouchDebugConfiguration.txt</key>
1365− <dict>
1366− <key>hash2</key>
1367− <data>
1368− n/NMp5DkQGppkjpBoyoV1mhEK36L/cuHFrOabOQafS0=
1369− </data>
1370− </dict>
1371− <key>OpenSans-Regular.ttf</key>
1372− <dict>
1373− <key>hash2</key>
1374− <data>
1375− tl7OHN/D52BMpjI4R9aX8VQoF1XFO1od+lZMHvU3xIs=
1376− </data>
1377− </dict>
1378− <key>OpenSans-Semibold.ttf</key>
1379− <dict>
1380− <key>hash2</key>
1381− <data>
1382− Wj0G8EOuLoTef+HODHHGoGAMoKmXCxRPdZP25iMe+5Y=
1383− </data>
1384− </dict>
1385− <key>Settings.bundle/Root.plist</key>
1386− <dict>
1387− <key>hash2</key>
1388− <data>
1389− zi1Y0A+tVNNfppRDjT3LpbeC+xDRJTirIvMQJ0HkgMQ=
1390− </data>
1391− </dict>
1392− <key>Skrepka.dll</key>
1393− <dict>
1394− <key>hash2</key>
1395− <data>
1396− /REP/HoHjlxEG4EILkQsxLRTzNPyUb0OPrgeH7X+ysg=
1397− </data>
1398− </dict>
1399− <key>Skrepka.pdb</key>
1400− <dict>
1401− <key>hash2</key>
1402− <data>
1403− ZbgMQL3trkYdSHBJ4m83nCenAnLY6W3xoI3w1+2M1xc=
1404− </data>
1405− </dict>
1406− <key>Sodium.Core.dll</key>
1407− <dict>
1408− <key>hash2</key>
1409− <data>
1410− RNPMQUxm2JZPDg93lNcqcS4h0BHtIM+k4C+EiRkl8y0=
1411− </data>
1412− </dict>
1413− <key>System.AppContext.dll</key>
1414− <dict>
1415− <key>hash2</key>
1416− <data>
1417− yv9NWvdPOwWbIdEFlpSDqNfZ6xrbok3gf/mtsUoIz0k=
1418− </data>
1419− </dict>
1420− <key>System.Buffers.dll</key>
1421− <dict>
1422− <key>hash2</key>
1423− <data>
1424− pxAvarAz2JD0qd4V1nLQGMQ+EGUqG5yIV8IeOgN1wQ8=
1425− </data>
1426− </dict>
1427− <key>System.Collections.Concurrent.dll</key>
1428− <dict>
1429− <key>hash2</key>
1430− <data>
1431− S/HhqycbRPsiWJzwZPQT03i1XEvUHpPwDEJD+43yBTs=
1432− </data>
1433− </dict>
1434− <key>System.Collections.Immutable.dll</key>
1435− <dict>
1436− <key>hash2</key>
1437− <data>
1438− q1M3w3CFnz9KZlaEd+iFztk9RYy02edp73XnhD1Toyk=
1439− </data>
1440− </dict>
1441− <key>System.Collections.NonGeneric.dll</key>
1442− <dict>
1443− <key>hash2</key>
1444− <data>
1445− m/E1MWphwM3uQG3JPkYmNCjiQwxOzvvratF68PCEQPQ=
1446− </data>
1447− </dict>
1448− <key>System.Collections.Specialized.dll</key>
1449− <dict>
1450− <key>hash2</key>
1451− <data>
1452− C0nZLsFZ0C/TiG7U735D5c8zjLz4FeAx3AJN9a9rKXI=
1453− </data>
1454− </dict>
1455− <key>System.Collections.dll</key>
1456− <dict>
1457− <key>hash2</key>
1458− <data>
1459− rV6X98NLN3BmM7beE3KZV+Gf//JSEvc/LBsle0/F/Lo=
1460− </data>
1461− </dict>
1462− <key>System.ComponentModel.Annotations.dll</key>
1463− <dict>
1464− <key>hash2</key>
1465− <data>
1466− RG+8vnxRr5Azqyy2k5H5+4Hye0yauOQLYNj2d3mk0Wg=
1467− </data>
1468− </dict>
1469− <key>System.ComponentModel.DataAnnotations.dll</key>
1470− <dict>
1471− <key>hash2</key>
1472− <data>
1473− 8Q/NxQBsRaOBPzo7lvem50PNBsobWDtjov/rTEVslHs=
1474− </data>
1475− </dict>
1476− <key>System.ComponentModel.EventBasedAsync.dll</key>
1477− <dict>
1478− <key>hash2</key>
1479− <data>
1480− gWPuE0wv9TH4TtN1Od4kNxANFpOHsmVEiRTYBbPKTc0=
1481− </data>
1482− </dict>
1483− <key>System.ComponentModel.Primitives.dll</key>
1484− <dict>
1485− <key>hash2</key>
1486− <data>
1487− 5Yw28UYp5QjgHYFcsRhXADZ8wc+zGlhuX7iNPyxcEOU=
1488− </data>
1489− </dict>
1490− <key>System.ComponentModel.TypeConverter.dll</key>
1491− <dict>
1492− <key>hash2</key>
1493− <data>
1494− PRxjPM5hMbZmp4AUBqmg8c7zDgzgQxzPHuVmDAWCEAA=
1495− </data>
1496− </dict>
1497− <key>System.ComponentModel.dll</key>
1498− <dict>
1499− <key>hash2</key>
1500− <data>
1501− Kh1J7FFVrBNdWYMS3YRK6zCfEk1a0gbVOnV+1B3MukA=
1502− </data>
1503− </dict>
1504− <key>System.Configuration.dll</key>
1505− <dict>
1506− <key>hash2</key>
1507− <data>
1508− Gd/2RnmJGcat8095WmcEkNbQVS4EIBtKpWcCJA9voxk=
1509− </data>
1510− </dict>
1511− <key>System.Console.dll</key>
1512− <dict>
1513− <key>hash2</key>
1514− <data>
1515− 9TZoxKtHE/xU08L/fq5us/3g7Ox02XrXojKqh69sD34=
1516− </data>
1517− </dict>
1518− <key>System.Core.dll</key>
1519− <dict>
1520− <key>hash2</key>
1521− <data>
1522− kqVE9np/aR1sWzi0r6pw/jAyYuPERDj7p9YcYmIpnt4=
1523− </data>
1524− </dict>
1525− <key>System.Data.Common.dll</key>
1526− <dict>
1527− <key>hash2</key>
1528− <data>
1529− +CANzKJEcoD2upozDLvmTmsqSqMWkyWb/IYBGvE5yXc=
1530− </data>
1531− </dict>
1532− <key>System.Data.DataSetExtensions.dll</key>
1533− <dict>
1534− <key>hash2</key>
1535− <data>
1536− V/nQZeOcRl4dWfqxAv2Zk7f5R8iW2+g54hdIfvbluN0=
1537− </data>
1538− </dict>
1539− <key>System.Data.dll</key>
1540− <dict>
1541− <key>hash2</key>
1542− <data>
1543− HdbuuvHTP8Mw5598qUyuoOLwLRoc0mTyOtva1Z+rPjw=
1544− </data>
1545− </dict>
1546− <key>System.Diagnostics.Contracts.dll</key>
1547− <dict>
1548− <key>hash2</key>
1549− <data>
1550− LkqhR4hq84aqdVB6xERxaYGEmc6Y9v80491wC+ZPSkQ=
1551− </data>
1552− </dict>
1553− <key>System.Diagnostics.Debug.dll</key>
1554− <dict>
1555− <key>hash2</key>
1556− <data>
1557− zi2ZHGOGxUC8AsBlNPyxWetxqPXXft3T/CdPVVt632k=
1558− </data>
1559− </dict>
1560− <key>System.Diagnostics.DiagnosticSource.dll</key>
1561− <dict>
1562− <key>hash2</key>
1563− <data>
1564− 9JAL3RUqOUW29K1PryFiA0PvPZztG6petqGQaMk/JuQ=
1565− </data>
1566− </dict>
1567− <key>System.Diagnostics.FileVersionInfo.dll</key>
1568− <dict>
1569− <key>hash2</key>
1570− <data>
1571− H2SRgmGj6sp41dz93ck8Qt3PkMMEUN+SBHKbJFlWUWs=
1572− </data>
1573− </dict>
1574− <key>System.Diagnostics.Process.dll</key>
1575− <dict>
1576− <key>hash2</key>
1577− <data>
1578− ir+JISTP/YGYAA3RxNHofJ3f+lAoYfc9GMVqIRvKtgA=
1579− </data>
1580− </dict>
1581− <key>System.Diagnostics.StackTrace.dll</key>
1582− <dict>
1583− <key>hash2</key>
1584− <data>
1585− YqPxhM8sEv2cL1OQNLBn3KWP1MJEkGT1QrrcZt8O6X8=
1586− </data>
1587− </dict>
1588− <key>System.Diagnostics.TextWriterTraceListener.dll</key>
1589− <dict>
1590− <key>hash2</key>
1591− <data>
1592− 5G3embx9DSSx8wv+8kfOKZMyHC8HujlR61XPYyYhRaU=
1593− </data>
1594− </dict>
1595− <key>System.Diagnostics.Tools.dll</key>
1596− <dict>
1597− <key>hash2</key>
1598− <data>
1599− I2U9U6TAcwIZ7lSS1PFl+1W+OmHj8ybqUUm0VlI8wJ4=
1600− </data>
1601− </dict>
1602− <key>System.Diagnostics.TraceSource.dll</key>
1603− <dict>
1604− <key>hash2</key>
1605− <data>
1606− tF/EKIeNfmHX/jh55wm+/UjSz6Wb8/KUsh91oP2E8AI=
1607− </data>
1608− </dict>
1609− <key>System.Diagnostics.Tracing.dll</key>
1610− <dict>
1611− <key>hash2</key>
1612− <data>
1613− 6KXgQ65npATl5WtCqp/r0OWJC/1aQ3zXNTdDACC00aU=
1614− </data>
1615− </dict>
1616− <key>System.Drawing.Primitives.dll</key>
1617− <dict>
1618− <key>hash2</key>
1619− <data>
1620− zJRjsdosy6o2bRMqQI7L/gPRcrtAbnjcvihkxJvY92s=
1621− </data>
1622− </dict>
1623− <key>System.Drawing.dll</key>
1624− <dict>
1625− <key>hash2</key>
1626− <data>
1627− aMPyqw58pX4gek03x/26+RuWC8DB9csvM3B1orzVSTU=
1628− </data>
1629− </dict>
1630− <key>System.Dynamic.Runtime.dll</key>
1631− <dict>
1632− <key>hash2</key>
1633− <data>
1634− 1Z57S6NnbfNpnCg7s3BknGKEqPS+gAgsoWOLaFn1XmA=
1635− </data>
1636− </dict>
1637− <key>System.Formats.Asn1.dll</key>
1638− <dict>
1639− <key>hash2</key>
1640− <data>
1641− wzZpSyna+L/i5W+f3H1cF2YfaUA2GCrIFJMeePgWJss=
1642− </data>
1643− </dict>
1644− <key>System.Formats.Tar.dll</key>
1645− <dict>
1646− <key>hash2</key>
1647− <data>
1648− fovonUis6oiJM7xL7Yv4xGSy3rv73MXyDDl7ck9htHo=
1649− </data>
1650− </dict>
1651− <key>System.Globalization.Calendars.dll</key>
1652− <dict>
1653− <key>hash2</key>
1654− <data>
1655− laRFEbl+xK5fLg8PL8dEZACmKwMMCxVbPAqyjjl3yGc=
1656− </data>
1657− </dict>
1658− <key>System.Globalization.Extensions.dll</key>
1659− <dict>
1660− <key>hash2</key>
1661− <data>
1662− QOwZnXNx7reY+Uvx6pz6adYp97EWE/wfyHxzE3R/Nik=
1663− </data>
1664− </dict>
1665− <key>System.Globalization.dll</key>
1666− <dict>
1667− <key>hash2</key>
1668− <data>
1669− BgG4mH+PW3277pN/9iVtCDa+BD7CcU3PJdo/z3Vg7GU=
1670− </data>
1671− </dict>
1672− <key>System.IO.Compression.Brotli.dll</key>
1673− <dict>
1674− <key>hash2</key>
1675− <data>
1676− n9A1o4UlktmR0t+m9T2i1DCVZNV99McQQIcg2rfq0ak=
1677− </data>
1678− </dict>
1679− <key>System.IO.Compression.FileSystem.dll</key>
1680− <dict>
1681− <key>hash2</key>
1682− <data>
1683− Yk5hbtI+f1Vb1KUSAuL5uQ7Dna7TnDy5ubEYJpcQlWw=
1684− </data>
1685− </dict>
1686− <key>System.IO.Compression.ZipFile.dll</key>
1687− <dict>
1688− <key>hash2</key>
1689− <data>
1690− TuSppcRxZ5rH5WheHXPNc5QA6ScJFILh7qgf2ht3dEU=
1691− </data>
1692− </dict>
1693− <key>System.IO.Compression.dll</key>
1694− <dict>
1695− <key>hash2</key>
1696− <data>
1697− XmGnmY1KvlDbuVU/Q9gY/pASnzLZejffRaymrjFhPzc=
1698− </data>
1699− </dict>
1700− <key>System.IO.FileSystem.AccessControl.dll</key>
1701− <dict>
1702− <key>hash2</key>
1703− <data>
1704− xYqZ650cFc7XBxzOQ1K+VeB+pAJgA58hHe/WOvAiQak=
1705− </data>
1706− </dict>
1707− <key>System.IO.FileSystem.DriveInfo.dll</key>
1708− <dict>
1709− <key>hash2</key>
1710− <data>
1711− 6yhYN+W28UJ7k+lyBpGzdUTdxDXvj9IDyw3Nnj1kVqo=
1712− </data>
1713− </dict>
1714− <key>System.IO.FileSystem.Primitives.dll</key>
1715− <dict>
1716− <key>hash2</key>
1717− <data>
1718− bfwGHQxysOGQTcDc0wUI05LdsyoLIz5CzurMDmPJwy4=
1719− </data>
1720− </dict>
1721− <key>System.IO.FileSystem.Watcher.dll</key>
1722− <dict>
1723− <key>hash2</key>
1724− <data>
1725− dLVvmjO8tMQEqbTOwF4rHogKTvqHWQmvLKz+b7XrBNA=
1726− </data>
1727− </dict>
1728− <key>System.IO.FileSystem.dll</key>
1729− <dict>
1730− <key>hash2</key>
1731− <data>
1732− eav41uATrlPZz8GzVkOlLPKaJpWNhzAf5Y8MxmaVFuY=
1733− </data>
1734− </dict>
1735− <key>System.IO.IsolatedStorage.dll</key>
1736− <dict>
1737− <key>hash2</key>
1738− <data>
1739− H0stZc/tA8hA4lu0Jk14GM4KBWIxXHQlUdDHGxGZ6/w=
1740− </data>
1741− </dict>
1742− <key>System.IO.MemoryMappedFiles.dll</key>
1743− <dict>
1744− <key>hash2</key>
1745− <data>
1746− G/KghzGcc2Q/+Gg5xKNnLbbFXUafNRNB/7Dyihq+9X0=
1747− </data>
1748− </dict>
1749− <key>System.IO.Pipelines.dll</key>
1750− <dict>
1751− <key>hash2</key>
1752− <data>
1753− aa/JwB7Ee36OUncymILqvbmC0xCsyakOvFdm1//cZb0=
1754− </data>
1755− </dict>
1756− <key>System.IO.Pipes.AccessControl.dll</key>
1757− <dict>
1758− <key>hash2</key>
1759− <data>
1760− 8cHxDGnQXiWkbpmghQkjSEdh+qh98K++Ted0E6c6J14=
1761− </data>
1762− </dict>
1763− <key>System.IO.Pipes.dll</key>
1764− <dict>
1765− <key>hash2</key>
1766− <data>
1767− fjlVHYWfqBe2+M37IXq++xmPmYT6PD7NtPOz5bXeShs=
1768− </data>
1769− </dict>
1770− <key>System.IO.UnmanagedMemoryStream.dll</key>
1771− <dict>
1772− <key>hash2</key>
1773− <data>
1774− qMRpNfo4FqLJCG/OWDFSbippboOatKpgk5eXwpnxFmA=
1775− </data>
1776− </dict>
1777− <key>System.IO.dll</key>
1778− <dict>
1779− <key>hash2</key>
1780− <data>
1781− C8H/wb9bNsYqLEmg/+Bgmj2L+VFQwdkdEVar2R5hVKs=
1782− </data>
1783− </dict>
1784− <key>System.Linq.AsyncEnumerable.dll</key>
1785− <dict>
1786− <key>hash2</key>
1787− <data>
1788− 210pvDHioFj3FKPJVk5ylgg4sj+oKrZYt2CS6dijefU=
1789− </data>
1790− </dict>
1791− <key>System.Linq.Expressions.dll</key>
1792− <dict>
1793− <key>hash2</key>
1794− <data>
1795− 6X7Ynuv7g77GI0lcJ52fTCcNAir70HM64sKQH8iULn0=
1796− </data>
1797− </dict>
1798− <key>System.Linq.Parallel.dll</key>
1799− <dict>
1800− <key>hash2</key>
1801− <data>
1802− FNpOs+1rKW2i0cP2jpA4rcWS2QZfr4quNuWylaCRV8c=
1803− </data>
1804− </dict>
1805− <key>System.Linq.Queryable.dll</key>
1806− <dict>
1807− <key>hash2</key>
1808− <data>
1809− b30MBotYrJ+ocpMw2353HqWKAP5GGABWhZjITYb/2VI=
1810− </data>
1811− </dict>
1812− <key>System.Linq.dll</key>
1813− <dict>
1814− <key>hash2</key>
1815− <data>
1816− er42z2k738K1VOaLdFgMflHCRkQdn+AM9WQEs6TAZm4=
1817− </data>
1818− </dict>
1819− <key>System.Memory.dll</key>
1820− <dict>
1821− <key>hash2</key>
1822− <data>
1823− kCLBLdI8+n1joJtmPYp0sqfwCX5s7ZQkTtYgRgWK+iU=
1824− </data>
1825− </dict>
1826− <key>System.Net.Http.Json.dll</key>
1827− <dict>
1828− <key>hash2</key>
1829− <data>
1830− KSnAL4kAcvJrxpVdjwBDRN6hBmJp8mVepTKhMPpUWHA=
1831− </data>
1832− </dict>
1833− <key>System.Net.Http.dll</key>
1834− <dict>
1835− <key>hash2</key>
1836− <data>
1837− Cv36YOGIHNjfaphQIRx8ztKSLTHqUcSVQtuOK9bCxIc=
1838− </data>
1839− </dict>
1840− <key>System.Net.HttpListener.dll</key>
1841− <dict>
1842− <key>hash2</key>
1843− <data>
1844− dqv+n8d8Er0/zFDkGW670oPuM2eOyW/AShm+vQsLI30=
1845− </data>
1846− </dict>
1847− <key>System.Net.Mail.dll</key>
1848− <dict>
1849− <key>hash2</key>
1850− <data>
1851− ACjC51dlwXpt/ZGfo+08+br0Q6Ejsb82ZlNQZ52K8sY=
1852− </data>
1853− </dict>
1854− <key>System.Net.NameResolution.dll</key>
1855− <dict>
1856− <key>hash2</key>
1857− <data>
1858− 5gM7ETo8zKyeZkBNjYJ1HyirkClVIOGAve77ICW3NiA=
1859− </data>
1860− </dict>
1861− <key>System.Net.NetworkInformation.dll</key>
1862− <dict>
1863− <key>hash2</key>
1864− <data>
1865− /j+ibzgh+f1A3WzwF+sHfq7CJ12kWAgcXyAyGhCMcRU=
1866− </data>
1867− </dict>
1868− <key>System.Net.Ping.dll</key>
1869− <dict>
1870− <key>hash2</key>
1871− <data>
1872− HSCQqOqJWQom9nnxllXhS1UB5ViBWUM3Hryo8xAAOsc=
1873− </data>
1874− </dict>
1875− <key>System.Net.Primitives.dll</key>
1876− <dict>
1877− <key>hash2</key>
1878− <data>
1879− PtZ+A/Yr92jR5WX5QbdCG9Gblvjc7RxtXDHtl9VETCM=
1880− </data>
1881− </dict>
1882− <key>System.Net.Quic.dll</key>
1883− <dict>
1884− <key>hash2</key>
1885− <data>
1886− 4Pa5RmYzlszzAQOFCbYXSXC1WbZWI/Rit1VU2v84O9Q=
1887− </data>
1888− </dict>
1889− <key>System.Net.Requests.dll</key>
1890− <dict>
1891− <key>hash2</key>
1892− <data>
1893− ceBA6mds5SGiqJEu29JNVYr/8sBm/bdI37PBL6EpbvU=
1894− </data>
1895− </dict>
1896− <key>System.Net.Security.dll</key>
1897− <dict>
1898− <key>hash2</key>
1899− <data>
1900− uXAmDgOmNHiMdQUJa5FqjEufaeKiPFk/bKtXqMG5YRQ=
1901− </data>
1902− </dict>
1903− <key>System.Net.ServerSentEvents.dll</key>
1904− <dict>
1905− <key>hash2</key>
1906− <data>
1907− mpgRwocaNUTSvgZKlkANWjKcrNvbq9YJftKzcrp0yI4=
1908− </data>
1909− </dict>
1910− <key>System.Net.ServicePoint.dll</key>
1911− <dict>
1912− <key>hash2</key>
1913− <data>
1914− GA7PCf0u9vE3h98XI9q3BBqG/neaSMjMuFp/aT4UHYE=
1915− </data>
1916− </dict>
1917− <key>System.Net.Sockets.dll</key>
1918− <dict>
1919− <key>hash2</key>
1920− <data>
1921− mveg9BN6ow4GGvQi99X9jpiiuwkpQFCEnbWUbXPG8T0=
1922− </data>
1923− </dict>
1924− <key>System.Net.WebClient.dll</key>
1925− <dict>
1926− <key>hash2</key>
1927− <data>
1928− Cw46adJ0cgmSub/h47nR6eCB0XiTOXW8lHeczU965WA=
1929− </data>
1930− </dict>
1931− <key>System.Net.WebHeaderCollection.dll</key>
1932− <dict>
1933− <key>hash2</key>
1934− <data>
1935− sMSf0a4UhYII27GiYz5mme3zlDT98V26KwmJ2QGNmsc=
1936− </data>
1937− </dict>
1938− <key>System.Net.WebProxy.dll</key>
1939− <dict>
1940− <key>hash2</key>
1941− <data>
1942− fMYjuGfz4kiIqUESJqgLyJaMFPXrCz6zP6qz1+hVKX0=
1943− </data>
1944− </dict>
1945− <key>System.Net.WebSockets.Client.dll</key>
1946− <dict>
1947− <key>hash2</key>
1948− <data>
1949− NVV9Td2dHZJ9x5orE7hpnBFcWinsVzZy17TGnSDjEI0=
1950− </data>
1951− </dict>
1952− <key>System.Net.WebSockets.dll</key>
1953− <dict>
1954− <key>hash2</key>
1955− <data>
1956− nAQLjmKSXuMQ8XUj88pKB+8LIDZi9Oaq3s8i/9HzT3Q=
1957− </data>
1958− </dict>
1959− <key>System.Net.dll</key>
1960− <dict>
1961− <key>hash2</key>
1962− <data>
1963− KPa7I71YouZAkQZbwhQG62VGhZFM0NbI/7YOB2sHxrI=
1964− </data>
1965− </dict>
1966− <key>System.Numerics.Vectors.dll</key>
1967− <dict>
1968− <key>hash2</key>
1969− <data>
1970− wifNKY+Gqo91lcdJsp+6GSNMyFd2ikKB4BuZT9oLZzQ=
1971− </data>
1972− </dict>
1973− <key>System.Numerics.dll</key>
1974− <dict>
1975− <key>hash2</key>
1976− <data>
1977− qDZAWD4tZsXp1zop6dOfzHphL34v8zDpd9eb37f05fc=
1978− </data>
1979− </dict>
1980− <key>System.ObjectModel.dll</key>
1981− <dict>
1982− <key>hash2</key>
1983− <data>
1984− e0zgf0+0lKIphpfz7WVcWkjejJ7dL6Xj++FDD7NfhHs=
1985− </data>
1986− </dict>
1987− <key>System.Private.CoreLib.aotdata.arm64</key>
1988− <dict>
1989− <key>hash2</key>
1990− <data>
1991− 6nY37HCSmxlocVgYa31Evf9wViQyQsHsngpB0P3HJnc=
1992− </data>
1993− </dict>
1994− <key>System.Private.CoreLib.dll</key>
1995− <dict>
1996− <key>hash2</key>
1997− <data>
1998− uFCvsaQ72MA03xELtPOB1oTTWYBAwUJ/paMlzVeMNWg=
1999− </data>
2000− </dict>
2001− <key>System.Private.DataContractSerialization.dll</key>
2002− <dict>
2003− <key>hash2</key>
2004− <data>
2005− FDwwIV8UtgDDaWhH3E8fcneAFg0MfwABP0H6NvimAz4=
2006− </data>
2007− </dict>
2008− <key>System.Private.Uri.dll</key>
2009− <dict>
2010− <key>hash2</key>
2011− <data>
2012− GvYzH/ABONvRsiimkWfpU3vvGCJ8VgEZnbVGRNicynU=
2013− </data>
2014− </dict>
2015− <key>System.Private.Xml.Linq.dll</key>
2016− <dict>
2017− <key>hash2</key>
2018− <data>
2019− 0gF2HDhjmBxMJSuLCWBLeuZJuiWquj/gaBMHlLsf9FM=
2020− </data>
2021− </dict>
2022− <key>System.Private.Xml.dll</key>
2023− <dict>
2024− <key>hash2</key>
2025− <data>
2026− Pk0jVACpagyXQVmza2RHu/ZqL2pyXL5dX5L9yN5qXw4=
2027− </data>
2028− </dict>
2029− <key>System.Reflection.DispatchProxy.dll</key>
2030− <dict>
2031− <key>hash2</key>
2032− <data>
2033− xE2hXHj8W+6V3MJdtWJVuuw4knvZRBg34ywq2V1qusM=
2034− </data>
2035− </dict>
2036− <key>System.Reflection.Emit.ILGeneration.dll</key>
2037− <dict>
2038− <key>hash2</key>
2039− <data>
2040− Ij6GFOnQvHDaPYYSTi8TJHTqzLbtPy7R+2C1vTRqVs8=
2041− </data>
2042− </dict>
2043− <key>System.Reflection.Emit.Lightweight.dll</key>
2044− <dict>
2045− <key>hash2</key>
2046− <data>
2047− MjAaNnxc9yDg/+tyYRrxMl+jIKiS2UnVHSZPm1FOcZA=
2048− </data>
2049− </dict>
2050− <key>System.Reflection.Emit.dll</key>
2051− <dict>
2052− <key>hash2</key>
2053− <data>
2054− fo1IcXzN7Pu09+zsT/z3FSnYisnKObHuq0URp2jOK7Y=
2055− </data>
2056− </dict>
2057− <key>System.Reflection.Extensions.dll</key>
2058− <dict>
2059− <key>hash2</key>
2060− <data>
2061− ekWzW64nm81Ok3YBW0IOYz8UhK8nD1MlXv1yFKfiZq4=
2062− </data>
2063− </dict>
2064− <key>System.Reflection.Metadata.dll</key>
2065− <dict>
2066− <key>hash2</key>
2067− <data>
2068− CYbepmvP9O6kyjemjZRiBle5f1493HRLvmzh6ZMnNMo=
2069− </data>
2070− </dict>
2071− <key>System.Reflection.Primitives.dll</key>
2072− <dict>
2073− <key>hash2</key>
2074− <data>
2075− pTIwO9ms1iZHCFtp+9CQ+DMGrf5Hdu27YxK4+85yENk=
2076− </data>
2077− </dict>
2078− <key>System.Reflection.TypeExtensions.dll</key>
2079− <dict>
2080− <key>hash2</key>
2081− <data>
2082− 4op2Hr+E/7wTjFAuM/U+MnubRw4fdf/+f4uG7qM7DhA=
2083− </data>
2084− </dict>
2085− <key>System.Reflection.dll</key>
2086− <dict>
2087− <key>hash2</key>
2088− <data>
2089− cKml0bEYOMVsSCYtEmryPLGd3WVoLVDBpJjaOVbw33Y=
2090− </data>
2091− </dict>
2092− <key>System.Resources.Reader.dll</key>
2093− <dict>
2094− <key>hash2</key>
2095− <data>
2096− 1KPGRl8ten7PUw6a/KgBSqzUFfqKcfuhMi8/5o6d7nw=
2097− </data>
2098− </dict>
2099− <key>System.Resources.ResourceManager.dll</key>
2100− <dict>
2101− <key>hash2</key>
2102− <data>
2103− TwFPeQvEe9rWTHkgEMGKfXcs+b8XFVlxQNiAqMhTSoQ=
2104− </data>
2105− </dict>
2106− <key>System.Resources.Writer.dll</key>
2107− <dict>
2108− <key>hash2</key>
2109− <data>
2110− LYgYevsL1du6j/tPTxbElChTudlf/ivlxB891v3wS0w=
2111− </data>
2112− </dict>
2113− <key>System.Runtime.CompilerServices.Unsafe.dll</key>
2114− <dict>
2115− <key>hash2</key>
2116− <data>
2117− NjPWEnMPp+lVz+DW2D7Y8Vwl0/VMvGupieluMcJ/F/M=
2118− </data>
2119− </dict>
2120− <key>System.Runtime.CompilerServices.VisualC.dll</key>
2121− <dict>
2122− <key>hash2</key>
2123− <data>
2124− CeoQdAi1JRKRJr97nUChP7xv4XzobcV1azajQd9T6Vo=
2125− </data>
2126− </dict>
2127− <key>System.Runtime.Extensions.dll</key>
2128− <dict>
2129− <key>hash2</key>
2130− <data>
2131− INO3hjFP709Nlpqom8qh+GoXcEXABcD5SIc1KiXXHpU=
2132− </data>
2133− </dict>
2134− <key>System.Runtime.Handles.dll</key>
2135− <dict>
2136− <key>hash2</key>
2137− <data>
2138− v4Do7bIpyelqCrLMoy7wjMmmfywgvK55iLKmLpv99eI=
2139− </data>
2140− </dict>
2141− <key>System.Runtime.InteropServices.JavaScript.dll</key>
2142− <dict>
2143− <key>hash2</key>
2144− <data>
2145− EEcH1JoxenV5QGLP7UUTqNOKqEGHUvI6fal52vxwoK0=
2146− </data>
2147− </dict>
2148− <key>System.Runtime.InteropServices.RuntimeInformation.dll</key>
2149− <dict>
2150− <key>hash2</key>
2151− <data>
2152− uM4EJTiQU3Ky38z47Y6oLRittBXI7Lv8rtjAwjIdjh4=
2153− </data>
2154− </dict>
2155− <key>System.Runtime.InteropServices.dll</key>
2156− <dict>
2157− <key>hash2</key>
2158− <data>
2159− CD4WhFbn32xGboPwvtGo3mT9K6S3mOmWlbv3OTEqNFI=
2160− </data>
2161− </dict>
2162− <key>System.Runtime.Intrinsics.dll</key>
2163− <dict>
2164− <key>hash2</key>
2165− <data>
2166− yT83IY+iM9UIzWVv6y7FVoXloot76AIyhmBPQUqFoh4=
2167− </data>
2168− </dict>
2169− <key>System.Runtime.Loader.dll</key>
2170− <dict>
2171− <key>hash2</key>
2172− <data>
2173− t1XsmHuUPH+E1FK/5cog2Zkh/ktASGy8j/elXBvfNMw=
2174− </data>
2175− </dict>
2176− <key>System.Runtime.Numerics.dll</key>
2177− <dict>
2178− <key>hash2</key>
2179− <data>
2180− Wr41zLcQFklg+UvX+itNtwVPCuTG+n/gjKGKGHbOnVM=
2181− </data>
2182− </dict>
2183− <key>System.Runtime.Serialization.Formatters.dll</key>
2184− <dict>
2185− <key>hash2</key>
2186− <data>
2187− 5/4zVqtJmPu0yPHBwmd3rOFDMSptKON9w9WzafkPnQc=
2188− </data>
2189− </dict>
2190− <key>System.Runtime.Serialization.Json.dll</key>
2191− <dict>
2192− <key>hash2</key>
2193− <data>
2194− jLVaqS2hdsx5TrvXpm6G6k7qu02ETghDIoIjNopbE68=
2195− </data>
2196− </dict>
2197− <key>System.Runtime.Serialization.Primitives.dll</key>
2198− <dict>
2199− <key>hash2</key>
2200− <data>
2201− dNBVP/0Qb2qlNVF+eA5BbPiaPXBsox9BDaoLWGkBRnA=
2202− </data>
2203− </dict>
2204− <key>System.Runtime.Serialization.Xml.dll</key>
2205− <dict>
2206− <key>hash2</key>
2207− <data>
2208− BTw+Q3INWSLUgRV4On/sefaIWLeIcIWBWLzfZeH+hfg=
2209− </data>
2210− </dict>
2211− <key>System.Runtime.Serialization.dll</key>
2212− <dict>
2213− <key>hash2</key>
2214− <data>
2215− nIm2+mfIv3Y6fA9HTdqAbE1YipKynmUGnXkhktz74Og=
2216− </data>
2217− </dict>
2218− <key>System.Runtime.dll</key>
2219− <dict>
2220− <key>hash2</key>
2221− <data>
2222− wSfMEax10Vv7jIfVkLr6ZcO4xJbl3+Q6pZT/0OxD9C0=
2223− </data>
2224− </dict>
2225− <key>System.Security.AccessControl.dll</key>
2226− <dict>
2227− <key>hash2</key>
2228− <data>
2229− U4W4xrY3fvtH5OFcM9QnXVmvlNZ4qQ2dXvaeSi8SZvE=
2230− </data>
2231− </dict>
2232− <key>System.Security.Claims.dll</key>
2233− <dict>
2234− <key>hash2</key>
2235− <data>
2236− FUALQbjHQuBQ8syJfALKyPO5HB2AbGbANRk/e7kwlno=
2237− </data>
2238− </dict>
2239− <key>System.Security.Cryptography.Algorithms.dll</key>
2240− <dict>
2241− <key>hash2</key>
2242− <data>
2243− k5k2K4XOd40lWlVVMuUC3PJzIqMzUGemjcQxP7/+xjY=
2244− </data>
2245− </dict>
2246− <key>System.Security.Cryptography.Cng.dll</key>
2247− <dict>
2248− <key>hash2</key>
2249− <data>
2250− tUE4JnYkcWXWOcVeBrqmYU0SgrExxkae9r4dbIMfsbY=
2251− </data>
2252− </dict>
2253− <key>System.Security.Cryptography.Csp.dll</key>
2254− <dict>
2255− <key>hash2</key>
2256− <data>
2257− ql5zhKu6C+EBSmp+Fljw1nKBvs/24vSD+Xbso9Wa2oM=
2258− </data>
2259− </dict>
2260− <key>System.Security.Cryptography.Encoding.dll</key>
2261− <dict>
2262− <key>hash2</key>
2263− <data>
2264− hhFvPVQKVsL7YMs95TnSgH32FA8BhwlWw/trSZ4Jdxk=
2265− </data>
2266− </dict>
2267− <key>System.Security.Cryptography.OpenSsl.dll</key>
2268− <dict>
2269− <key>hash2</key>
2270− <data>
2271− LPbgiEuq19hS8egr+3weptW24NC7p5WFAciGYiJuXNg=
2272− </data>
2273− </dict>
2274− <key>System.Security.Cryptography.Primitives.dll</key>
2275− <dict>
2276− <key>hash2</key>
2277− <data>
2278− S+BUZkU+g2yU3dieZGMU3VZ7oNgM5/jkaWzeiU6sl/o=
2279− </data>
2280− </dict>
2281− <key>System.Security.Cryptography.X509Certificates.dll</key>
2282− <dict>
2283− <key>hash2</key>
2284− <data>
2285− P3qljKsZqo43IzqteNkBdNwR1YLjDc0bLMmGsE1rers=
2286− </data>
2287− </dict>
2288− <key>System.Security.Cryptography.dll</key>
2289− <dict>
2290− <key>hash2</key>
2291− <data>
2292− VxnL7PrhMi6tV8tuFVgWVb4vHfiGNZPm2tsAbGlBLdk=
2293− </data>
2294− </dict>
2295− <key>System.Security.Principal.Windows.dll</key>
2296− <dict>
2297− <key>hash2</key>
2298− <data>
2299− 5wEuAk5QTdst0DufYLj5L+yqxPaN2RgD5Nidhl+mFHo=
2300− </data>
2301− </dict>
2302− <key>System.Security.Principal.dll</key>
2303− <dict>
2304− <key>hash2</key>
2305− <data>
2306− Y5jIWUDlcht5rhh4OWxEqhjk1HPdDwnZBK7BJZAUzmc=
2307− </data>
2308− </dict>
2309− <key>System.Security.SecureString.dll</key>
2310− <dict>
2311− <key>hash2</key>
2312− <data>
2313− o9kIUPZrvml2TTnxOwzFNEu+fk5ttfHjAq6BH7Ii2CM=
2314− </data>
2315− </dict>
2316− <key>System.Security.dll</key>
2317− <dict>
2318− <key>hash2</key>
2319− <data>
2320− TazSNad9tcWBe2SGqXBahYyi7mTZ0ZVhhsAnPdmRBVo=
2321− </data>
2322− </dict>
2323− <key>System.ServiceModel.Web.dll</key>
2324− <dict>
2325− <key>hash2</key>
2326− <data>
2327− QHYOYq39BdZRXrUA3rESvFUcVdO0oYieh5UWlshO8QQ=
2328− </data>
2329− </dict>
2330− <key>System.ServiceProcess.dll</key>
2331− <dict>
2332− <key>hash2</key>
2333− <data>
2334− KQZyfBgFkd9IkYkiwAhBFnzyvM4xmT6FnNzTB64DXlg=
2335− </data>
2336− </dict>
2337− <key>System.Text.Encoding.CodePages.dll</key>
2338− <dict>
2339− <key>hash2</key>
2340− <data>
2341− FYHi2Hbg5uGLQ98193xda9oRKGxILBYewVtbStUIa7s=
2342− </data>
2343− </dict>
2344− <key>System.Text.Encoding.Extensions.dll</key>
2345− <dict>
2346− <key>hash2</key>
2347− <data>
2348− e6cTiARBCTH1zi+Ec8EMGaHVxK2IbMLBNDV7CiSSbKA=
2349− </data>
2350− </dict>
2351− <key>System.Text.Encoding.dll</key>
2352− <dict>
2353− <key>hash2</key>
2354− <data>
2355− V53rUMXYQkQu3fgOPYrSUJqs7rDxr9AiCSjM3WOFXr0=
2356− </data>
2357− </dict>
2358− <key>System.Text.Encodings.Web.dll</key>
2359− <dict>
2360− <key>hash2</key>
2361− <data>
2362− Rt3Ty1nJww7CWgcYBJIG3rzPHY/A+zyc2V/gNFW8jrg=
2363− </data>
2364− </dict>
2365− <key>System.Text.Json.dll</key>
2366− <dict>
2367− <key>hash2</key>
2368− <data>
2369− jVFtNRhW8ye069tAOcNfxsP7Jl8qK5EUYL9m5tpQkJ8=
2370− </data>
2371− </dict>
2372− <key>System.Text.RegularExpressions.dll</key>
2373− <dict>
2374− <key>hash2</key>
2375− <data>
2376− 00R7ZXji5jzegHBxzFaxQpP8tQ7vVBxzADtLhsn4hOg=
2377− </data>
2378− </dict>
2379− <key>System.Threading.AccessControl.dll</key>
2380− <dict>
2381− <key>hash2</key>
2382− <data>
2383− s1oa76chgc/OZn43WdkUIky6yf7z8JTvQ7b7iXJ28KQ=
2384− </data>
2385− </dict>
2386− <key>System.Threading.Channels.dll</key>
2387− <dict>
2388− <key>hash2</key>
2389− <data>
2390− T405Uy3UcB3BdYboWt6Ww1iEecAOVVejpOTsL2KCuZs=
2391− </data>
2392− </dict>
2393− <key>System.Threading.Overlapped.dll</key>
2394− <dict>
2395− <key>hash2</key>
2396− <data>
2397− CvI/LtxljOTCiHHSBUURfi1stevkoZkf10ircsuAq1o=
2398− </data>
2399− </dict>
2400− <key>System.Threading.Tasks.Dataflow.dll</key>
2401− <dict>
2402− <key>hash2</key>
2403− <data>
2404− hFmrrLRDG4Kut09Q8szYmCJt58oQKNIS+CHrUNQXVMM=
2405− </data>
2406− </dict>
2407− <key>System.Threading.Tasks.Extensions.dll</key>
2408− <dict>
2409− <key>hash2</key>
2410− <data>
2411− zBmtBU7XoRlNR7Ky2WG2fUPjBoYQsIU1teRiQ8Eii/Q=
2412− </data>
2413− </dict>
2414− <key>System.Threading.Tasks.Parallel.dll</key>
2415− <dict>
2416− <key>hash2</key>
2417− <data>
2418− d10VpMta6mE+mRHzdajucbZUUGa+nTqAb5mh3te2x2M=
2419− </data>
2420− </dict>
2421− <key>System.Threading.Tasks.dll</key>
2422− <dict>
2423− <key>hash2</key>
2424− <data>
2425− nXTSGztfXvUeTrdlzcghKv+k622XAdV31J+RzRBAYQ4=
2426− </data>
2427− </dict>
2428− <key>System.Threading.Thread.dll</key>
2429− <dict>
2430− <key>hash2</key>
2431− <data>
2432− yRiMrgEz+xrPHg3o5eEVnTvovz4kc5zjPNFbnY5cJ08=
2433− </data>
2434− </dict>
2435− <key>System.Threading.ThreadPool.dll</key>
2436− <dict>
2437− <key>hash2</key>
2438− <data>
2439− /OdSM6ed/EhZInp3ZaWeKxBKM6BhZBV/R52Fh9984xc=
2440− </data>
2441− </dict>
2442− <key>System.Threading.Timer.dll</key>
2443− <dict>
2444− <key>hash2</key>
2445− <data>
2446− 4gV5DFlFhQ5k4acz29g5LTeZCpuhNaHdtZZSP/UAwJ8=
2447− </data>
2448− </dict>
2449− <key>System.Threading.dll</key>
2450− <dict>
2451− <key>hash2</key>
2452− <data>
2453− if6wnfRu6s8497RZ5LExoul/w3hbdmuwnX37a/972sE=
2454− </data>
2455− </dict>
2456− <key>System.Transactions.Local.dll</key>
2457− <dict>
2458− <key>hash2</key>
2459− <data>
2460− 8n/ZVmc5CWk5jwEmfhH5eZ+wgAqKRIrM8+Q8r18DK8c=
2461− </data>
2462− </dict>
2463− <key>System.Transactions.dll</key>
2464− <dict>
2465− <key>hash2</key>
2466− <data>
2467− oEroI7zw7xQTNKqCSrLTepOKJ7pDhnRkU3oHfFblR+U=
2468− </data>
2469− </dict>
2470− <key>System.ValueTuple.dll</key>
2471− <dict>
2472− <key>hash2</key>
2473− <data>
2474− 3zL1boi8LJI7ztigbcFvALmFES9c6JT06rgbS1vRrw0=
2475− </data>
2476− </dict>
2477− <key>System.Web.HttpUtility.dll</key>
2478− <dict>
2479− <key>hash2</key>
2480− <data>
2481− zL0PqLHcS2C17MmbqvvpRGQq5SFN72AjsxgzyCWulos=
2482− </data>
2483− </dict>
2484− <key>System.Web.dll</key>
2485− <dict>
2486− <key>hash2</key>
2487− <data>
2488− U+lRnsXA8fepCYfmajcgerwZmm2aKPqHpLXNnR23o54=
2489− </data>
2490− </dict>
2491− <key>System.Windows.dll</key>
2492− <dict>
2493− <key>hash2</key>
2494− <data>
2495− E43tMR9ZMcxiogFcZdQvLHuuxiEcnQf0qfaM6Lzt0Zw=
2496− </data>
2497− </dict>
2498− <key>System.Xml.Linq.dll</key>
2499− <dict>
2500− <key>hash2</key>
2501− <data>
2502− LVE4Twcn8fBXlXk8GYftT6ppQsg0YSHhUYAu5VduNp0=
2503− </data>
2504− </dict>
2505− <key>System.Xml.ReaderWriter.dll</key>
2506− <dict>
2507− <key>hash2</key>
2508− <data>
2509− VVDgrstlvSONAqNbCx6eRaXL9yTmlXsOnIH7vg9iQJI=
2510− </data>
2511− </dict>
2512− <key>System.Xml.Serialization.dll</key>
2513− <dict>
2514− <key>hash2</key>
2515− <data>
2516− HRDhZkbXKMeZ+zNpCWlMFUFwoqWcT1uxiD0x1xfigZU=
2517− </data>
2518− </dict>
2519− <key>System.Xml.XDocument.dll</key>
2520− <dict>
2521− <key>hash2</key>
2522− <data>
2523− C4qpXeZafd9hLKW20As9jv4jTdVQi517n5YU3cGuhdM=
2524− </data>
2525− </dict>
2526− <key>System.Xml.XPath.XDocument.dll</key>
2527− <dict>
2528− <key>hash2</key>
2529− <data>
2530− wTIBeq9mLx7WksUXfft3AZuCi5A+jjJmCOKiHFFlmEk=
2531− </data>
2532− </dict>
2533− <key>System.Xml.XPath.dll</key>
2534− <dict>
2535− <key>hash2</key>
2536− <data>
2537− AslcV8fe6SkS/9RpBCkwiRgk0Vcu6zWzXQahqquztTw=
2538− </data>
2539− </dict>
2540− <key>System.Xml.XmlDocument.dll</key>
2541− <dict>
2542− <key>hash2</key>
2543− <data>
2544− F2+5e/Y5/UxETdi/lUlB9DYx+7cA7SAosc9RxKpn72c=
2545− </data>
2546− </dict>
2547− <key>System.Xml.XmlSerializer.dll</key>
2548− <dict>
2549− <key>hash2</key>
2550− <data>
2551− 7KHiKvW9t8Sg/wGd0min4ODutq3vS9/zkflBKHDfDZU=
2552− </data>
2553− </dict>
2554− <key>System.Xml.dll</key>
2555− <dict>
2556− <key>hash2</key>
2557− <data>
2558− z3W40n/OtIOIhKDNhZ4pOFS4lxCqCkbESMx/xDnBC3c=
2559− </data>
2560− </dict>
2561− <key>System.dll</key>
2562− <dict>
2563− <key>hash2</key>
2564− <data>
2565− 5e2vFkNAb/l4C6qo2Srb9vMKCIE3cf/kB2db/K3vXqk=
2566− </data>
2567− </dict>
2568− <key>WindowsBase.dll</key>
2569− <dict>
2570− <key>hash2</key>
2571− <data>
2572− 5b5QVbBCzsXqtCjpAZ0+0KvuHkc5wXMaAee7PK8cL34=
2573− </data>
2574− </dict>
2575− <key>appicon60x60@2x.png</key>
2576− <dict>
2577− <key>hash2</key>
2578− <data>
2579− BVwdas5bRZ6MRI591V+nnhG4tlScHZgO+REraaP+2mw=
2580− </data>
2581− </dict>
2582− <key>appicon76x76@2x~ipad.png</key>
2583− <dict>
2584− <key>hash2</key>
2585− <data>
2586− +qXcBrRB1S2uCBkXBJMcvDN7zD/xF3IhRUfUyZiz4ek=
2587− </data>
2588− </dict>
2589− <key>ar/Microsoft.Maui.Controls.resources.dll</key>
2590− <dict>
2591− <key>hash2</key>
2592− <data>
2593− emToJWm83/fCpZmCHV+HeFOksBb6ucUuF0ldIYFBn2I=
2594− </data>
2595− </dict>
2596− <key>ca/Microsoft.Maui.Controls.resources.dll</key>
2597− <dict>
2598− <key>hash2</key>
2599− <data>
2600− DFPj1tjdH8h+9VBekDZFKj5ag52KAxLOBoymKkrcE9A=
2601− </data>
2602− </dict>
2603− <key>cs/FSharp.Core.resources.dll</key>
2604− <dict>
2605− <key>hash2</key>
2606− <data>
2607− VkqaHJrNVb4fVHa3wi3FGw7ubxslTY+cMGU7Sv+xPwM=
2608− </data>
2609− </dict>
2610− <key>cs/Microsoft.Maui.Controls.resources.dll</key>
2611− <dict>
2612− <key>hash2</key>
2613− <data>
2614− eQEHuvyDz6bhem/2PaNndWoSxJRcEfPxIJRhBFB+Tlc=
2615− </data>
2616− </dict>
2617− <key>da/Microsoft.Maui.Controls.resources.dll</key>
2618− <dict>
2619− <key>hash2</key>
2620− <data>
2621− AXbWGLvb++eB8Ml/L0tsLIXvrTvFltkjX4l4o1xSoLQ=
2622− </data>
2623− </dict>
2624− <key>de/FSharp.Core.resources.dll</key>
2625− <dict>
2626− <key>hash2</key>
2627− <data>
2628− zdTNYDN/qTtbFPhTXtI/BVyoU4W9Vvqa6EiCJoYzFg0=
2629− </data>
2630− </dict>
2631− <key>de/Microsoft.Maui.Controls.resources.dll</key>
2632− <dict>
2633− <key>hash2</key>
2634− <data>
2635− tUmIAH/mjYuwIszLUM7XIcofMnQbXh3AdESOhHGHUpo=
2636− </data>
2637− </dict>
2638− <key>dotnet_bot.png</key>
2639− <dict>
2640− <key>hash2</key>
2641− <data>
2642− w448RaO4b/5+lHSwNcjzEA9gdDOUT+GBdg1oPaZXNEU=
2643− </data>
2644− </dict>
2645− <key>dotnet_bot@2x.png</key>
2646− <dict>
2647− <key>hash2</key>
2648− <data>
2649− 4PYg5dxRfjL+aOhgJhoJeUhYmIykccvobditHOyHh2Q=
2650− </data>
2651− </dict>
2652− <key>dotnet_bot@3x.png</key>
2653− <dict>
2654− <key>hash2</key>
2655− <data>
2656− /SFENCPPsp1Yo7TyezWGBYqhyOLp2UYMcmcjN7dKg2I=
2657− </data>
2658− </dict>
2659− <key>el/Microsoft.Maui.Controls.resources.dll</key>
2660− <dict>
2661− <key>hash2</key>
2662− <data>
2663− 5rMLL9a8jD9ZeH6iICPqfak33GQ49b/NvnEmVEGc49A=
2664− </data>
2665− </dict>
2666− <key>es/FSharp.Core.resources.dll</key>
2667− <dict>
2668− <key>hash2</key>
2669− <data>
2670− ofqwMwuZCa1sGUcukCNbnzUGI6qbay+ONdjkIUFAhxg=
2671− </data>
2672− </dict>
2673− <key>es/Microsoft.Maui.Controls.resources.dll</key>
2674− <dict>
2675− <key>hash2</key>
2676− <data>
2677− hUPeoEYzz/eU+8IouEHE4QJBVxkeynFBHNmuxHRMFkk=
2678− </data>
2679− </dict>
2680− <key>fi/Microsoft.Maui.Controls.resources.dll</key>
2681− <dict>
2682− <key>hash2</key>
2683− <data>
2684− Ybesxhwql984F3/vxDM9lnzy9es4U5s1G2eahhgEzvM=
2685− </data>
2686− </dict>
2687− <key>fr/FSharp.Core.resources.dll</key>
2688− <dict>
2689− <key>hash2</key>
2690− <data>
2691− 2OIvixmGkOWf+iX9NarMEQMdSfMqebTlpH5/lGugdRU=
2692− </data>
2693− </dict>
2694− <key>fr/Microsoft.Maui.Controls.resources.dll</key>
2695− <dict>
2696− <key>hash2</key>
2697− <data>
2698− iOpuXHt45cfwThk4AypfrS9lloCsjiOtBY+cUO10+O0=
2699− </data>
2700− </dict>
2701− <key>he/Microsoft.Maui.Controls.resources.dll</key>
2702− <dict>
2703− <key>hash2</key>
2704− <data>
2705− QejF7/BYOiea8s9BPCs7JhwIGT+oT9TlUh3k1FvMrFU=
2706− </data>
2707− </dict>
2708− <key>hi/Microsoft.Maui.Controls.resources.dll</key>
2709− <dict>
2710− <key>hash2</key>
2711− <data>
2712− drcOA+yliiSTbS81l9+neqq89D8IlARAszarpHHB4bg=
2713− </data>
2714− </dict>
2715− <key>hr/Microsoft.Maui.Controls.resources.dll</key>
2716− <dict>
2717− <key>hash2</key>
2718− <data>
2719− uA5YM0/wXhoruIjMcepV5ZojStXqJL2gQyX0DIAfqKI=
2720− </data>
2721− </dict>
2722− <key>hu/Microsoft.Maui.Controls.resources.dll</key>
2723− <dict>
2724− <key>hash2</key>
2725− <data>
2726− Yit/hctbX7+a60iWubu91/YkqhILaPjV+xIGHI5szGw=
2727− </data>
2728− </dict>
2729− <key>id/Microsoft.Maui.Controls.resources.dll</key>
2730− <dict>
2731− <key>hash2</key>
2732− <data>
2733− vjzTLT6zvhyFtYvdKcDDgaXYMfxt4ISd+Py8cEW0ggg=
2734− </data>
2735− </dict>
2736− <key>it/FSharp.Core.resources.dll</key>
2737− <dict>
2738− <key>hash2</key>
2739− <data>
2740− C9xXG8jRo1WmJsgY7SYC8WZGibK95p2umRNGGtzsvJY=
2741− </data>
2742− </dict>
2743− <key>it/Microsoft.Maui.Controls.resources.dll</key>
2744− <dict>
2745− <key>hash2</key>
2746− <data>
2747− xOWwoPQCBXrzvD3UBBbmrCBOu513unC0h2GwNbQj6gs=
2748− </data>
2749− </dict>
2750− <key>ja/FSharp.Core.resources.dll</key>
2751− <dict>
2752− <key>hash2</key>
2753− <data>
2754− vZSg2scpJMaacFae5SII8/LfdZTB1R+gauUzbntH4YA=
2755− </data>
2756− </dict>
2757− <key>ja/Microsoft.Maui.Controls.resources.dll</key>
2758− <dict>
2759− <key>hash2</key>
2760− <data>
2761− XKjQ7JaN1fkqoEjYyvbomFVloeMl0uGz/jvNazxHz3w=
2762− </data>
2763− </dict>
2764− <key>ko/FSharp.Core.resources.dll</key>
2765− <dict>
2766− <key>hash2</key>
2767− <data>
2768− /S9K08mWH/zBnC09UZSsr/aXdV8QYUNHp9MRKgaszjU=
2769− </data>
2770− </dict>
2771− <key>ko/Microsoft.Maui.Controls.resources.dll</key>
2772− <dict>
2773− <key>hash2</key>
2774− <data>
2775− 9lHc7HN3sLde+gLqwPOfmRkiAp0QAjz8p0/QRbdE1r0=
2776− </data>
2777− </dict>
2778− <key>libSystem.Globalization.Native.dylib</key>
2779− <dict>
2780− <key>hash2</key>
2781− <data>
2782− +WJBfEv03NiH6nQxs03VYBlLM108RMqf+IRBjXZIYs0=
2783− </data>
2784− </dict>
2785− <key>libSystem.IO.Compression.Native.dylib</key>
2786− <dict>
2787− <key>hash2</key>
2788− <data>
2789− 225Ab1y9yw21ixhcxic0VRfnHijmTkkJ7Nrldf8D6UA=
2790− </data>
2791− </dict>
2792− <key>libSystem.Native.dylib</key>
2793− <dict>
2794− <key>hash2</key>
2795− <data>
2796− arXGzJjaD9m1KD+gMAdquYv0/lkSq22bGZJkCH+X5Eg=
2797− </data>
2798− </dict>
2799− <key>libSystem.Net.Security.Native.dylib</key>
2800− <dict>
2801− <key>hash2</key>
2802− <data>
2803− b5gnjSVzftz+e1M2hQK9ktD9m1Tcz3mlBd5QTQg4khA=
2804− </data>
2805− </dict>
2806− <key>libSystem.Security.Cryptography.Native.Apple.dylib</key>
2807− <dict>
2808− <key>hash2</key>
2809− <data>
2810− dpo7D5heIGmxMVsuEjhkBa9lCkl6V//Grc3q6BlIl80=
2811− </data>
2812− </dict>
2813− <key>libmono-component-debugger.dylib</key>
2814− <dict>
2815− <key>hash2</key>
2816− <data>
2817− CfnKf6DEi4t8LYpXrb8H7HW0oB0sm+F/W3KgzGHhqRo=
2818− </data>
2819− </dict>
2820− <key>libmono-component-diagnostics_tracing.dylib</key>
2821− <dict>
2822− <key>hash2</key>
2823− <data>
2824− eboUmIwacLoMUGq/NyKJxR6ZC/34RUqKsrPsJxvC4k0=
2825− </data>
2826− </dict>
2827− <key>libmono-component-hot_reload.dylib</key>
2828− <dict>
2829− <key>hash2</key>
2830− <data>
2831− JWm7HHR1RK1gyK37V40TNipSH7CCCyXEnBTmIzAkYp4=
2832− </data>
2833− </dict>
2834− <key>libmono-component-marshal-ilgen.dylib</key>
2835− <dict>
2836− <key>hash2</key>
2837− <data>
2838− C8AxTKs13Gj5x0DrT6KgmXjDPohIsxdZzOuJNl1lcyI=
2839− </data>
2840− </dict>
2841− <key>libmonosgen-2.0.dylib</key>
2842− <dict>
2843− <key>hash2</key>
2844− <data>
2845− 9kf4GnjEfJHoYBgQdCvRpb63DOQNSlwzhWJMSxT9P8I=
2846− </data>
2847− </dict>
2848− <key>libxamarin-dotnet-debug.dylib</key>
2849− <dict>
2850− <key>hash2</key>
2851− <data>
2852− H4aIQr3gsjS1qdct9VwRDLEFvFOYoMnRQ/vD7hGbCXw=
2853− </data>
2854− </dict>
2855− <key>ms/Microsoft.Maui.Controls.resources.dll</key>
2856− <dict>
2857− <key>hash2</key>
2858− <data>
2859− FlklCLtZAIL8mdQYOgqbXkShBlp00rNKK0JJprjfnYU=
2860− </data>
2861− </dict>
2862− <key>mscorlib.dll</key>
2863− <dict>
2864− <key>hash2</key>
2865− <data>
2866− OEGoOh5MNjI8EsLsuacLnBkVGJleWWbM5twdKlIMWLA=
2867− </data>
2868− </dict>
2869− <key>nb/Microsoft.Maui.Controls.resources.dll</key>
2870− <dict>
2871− <key>hash2</key>
2872− <data>
2873− ZaU6GhF2t+bftxchr7pPXEIUitzBv7FEpvF0xF8wIN4=
2874− </data>
2875− </dict>
2876− <key>netstandard.dll</key>
2877− <dict>
2878− <key>hash2</key>
2879− <data>
2880− kOukjxlzP3If/R0+N/MZoLel2IiA1guKAVtmSjFnqEs=
2881− </data>
2882− </dict>
2883− <key>nl/Microsoft.Maui.Controls.resources.dll</key>
2884− <dict>
2885− <key>hash2</key>
2886− <data>
2887− 5iN21Zs+NZg/EIHtxrS0wBJVJFn/B5fMdmlXGC7U8Rk=
2888− </data>
2889− </dict>
2890− <key>pl/FSharp.Core.resources.dll</key>
2891− <dict>
2892− <key>hash2</key>
2893− <data>
2894− IsRxIzI0XoS4JseW/FSc2ZW5qtHMJYWsrAwJYm3Xxuk=
2895− </data>
2896− </dict>
2897− <key>pl/Microsoft.Maui.Controls.resources.dll</key>
2898− <dict>
2899− <key>hash2</key>
2900− <data>
2901− 1NerY/ZqyZKx/DoQqBoR1E/M4xal/ZhlmzYN2nL2z80=
2902− </data>
2903− </dict>
2904− <key>pt-BR/FSharp.Core.resources.dll</key>
2905− <dict>
2906− <key>hash2</key>
2907− <data>
2908− KnCEVXAEcQMOVT4OnQvgEb/fQi2jKS+HtQn+7MfKTkQ=
2909− </data>
2910− </dict>
2911− <key>pt-BR/Microsoft.Maui.Controls.resources.dll</key>
2912− <dict>
2913− <key>hash2</key>
2914− <data>
2915− 3u+H2pdXytE5+3v7kK1k/N8ByQC7BbgoLirMIi5iQWY=
2916− </data>
2917− </dict>
2918− <key>pt/Microsoft.Maui.Controls.resources.dll</key>
2919− <dict>
2920− <key>hash2</key>
2921− <data>
2922− xiavIGkmqAuFvAy7DozeabJOy50rR2DxVd8Bov/iGBc=
2923− </data>
2924− </dict>
2925− <key>ro/Microsoft.Maui.Controls.resources.dll</key>
2926− <dict>
2927− <key>hash2</key>
2928− <data>
2929− SOgexsrLzRNXlI/4vWgoDLhhMWop4l2EPZBrqmdaoQ4=
2930− </data>
2931− </dict>
2932− <key>ru/FSharp.Core.resources.dll</key>
2933− <dict>
2934− <key>hash2</key>
2935− <data>
2936− CP1dcW14PWxQx+vGWxkGeA9uI6yin1QwTQEzD5XI1bg=
2937− </data>
2938− </dict>
2939− <key>ru/Microsoft.Maui.Controls.resources.dll</key>
2940− <dict>
2941− <key>hash2</key>
2942− <data>
2943− l1FX9HgPPnIUsXl15r2ZlIPCLlrr2kBI6KHADruye5g=
2944− </data>
2945− </dict>
2946− <key>runtimeconfig.bin</key>
2947− <dict>
2948− <key>hash2</key>
2949− <data>
2950− /AVw5gJwPJnYK5roVnWKdvS9SvdnWVEKw2qoE+K9ESY=
2951− </data>
2952− </dict>
2953− <key>sk/Microsoft.Maui.Controls.resources.dll</key>
2954− <dict>
2955− <key>hash2</key>
2956− <data>
2957− lPaFF5x58kFQRtGM207mNoko2YTlMXwK7bj5Ub7xN3I=
2958− </data>
2959− </dict>
2960− <key>splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D.png</key>
2961− <dict>
2962− <key>hash2</key>
2963− <data>
2964− Dpf6ieSaphEudmfGWM4o56pf3pK2gzcp9vYU5dZF9S0=
2965− </data>
2966− </dict>
2967− <key>splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D@2x.png</key>
2968− <dict>
2969− <key>hash2</key>
2970− <data>
2971− YMCf+Kl7v6nI7SmNKxsD3oxz8b7W8NbOK9pl/268poY=
2972− </data>
2973− </dict>
2974− <key>splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D@3x.png</key>
2975− <dict>
2976− <key>hash2</key>
2977− <data>
2978− TR5wkKzih6lYQ3pqkvy+F+ZIOuoGZ1uEfeG93l0BSfE=
2979− </data>
2980− </dict>
2981− <key>sv/Microsoft.Maui.Controls.resources.dll</key>
2982− <dict>
2983− <key>hash2</key>
2984− <data>
2985− i7OIlfMh3e2NCIoS9L6yrClJ/wvgAsgJNyt8mnGasWA=
2986− </data>
2987− </dict>
2988− <key>th/Microsoft.Maui.Controls.resources.dll</key>
2989− <dict>
2990− <key>hash2</key>
2991− <data>
2992− mWtkwmiZj+peoftd3TpP63UQt7fWbsJeL5j/fn+xgRE=
2993− </data>
2994− </dict>
2995− <key>tr/FSharp.Core.resources.dll</key>
2996− <dict>
2997− <key>hash2</key>
2998− <data>
2999− 8zZ7jRFk/XKiJI18J0uXb2RYQc4Y4wfeOUe8uBK9Hjc=
3000− </data>
3001− </dict>
3002− <key>tr/Microsoft.Maui.Controls.resources.dll</key>
3003− <dict>
3004− <key>hash2</key>
3005− <data>
3006− 5g1eEp49EItEO9rV8860z3ICZ70CKi7wG+kqilFGP3E=
3007− </data>
3008− </dict>
3009− <key>uk/Microsoft.Maui.Controls.resources.dll</key>
3010− <dict>
3011− <key>hash2</key>
3012− <data>
3013− pABGPb+gGluQ4+stoSVyvInd1XimgAvusXl7U8SXGsE=
3014− </data>
3015− </dict>
3016− <key>vi/Microsoft.Maui.Controls.resources.dll</key>
3017− <dict>
3018− <key>hash2</key>
3019− <data>
3020− MofCe7Mp2A3jJOQ7tiCdgQd2KoKz8pJ7iQCIHgTGY+A=
3021− </data>
3022− </dict>
3023− <key>xml/microsoft_maui_essentials_fileprovider_file_paths.xml</key>
3024− <dict>
3025− <key>hash2</key>
3026− <data>
3027− W4mBx+OWozujR6fIlOuqppzspq5DXmkX1Oo5zBuPD6Q=
3028− </data>
3029− </dict>
3030− <key>zh-HK/Microsoft.Maui.Controls.resources.dll</key>
3031− <dict>
3032− <key>hash2</key>
3033− <data>
3034− QVTBdSdYmu/8RnKl+GvDYwd7np7Ao16hSD3Jv1nKiwA=
3035− </data>
3036− </dict>
3037− <key>zh-Hans/FSharp.Core.resources.dll</key>
3038− <dict>
3039− <key>hash2</key>
3040− <data>
3041− +ALffgi5kZSiUOnRG2r17eqNY98Ko2u+FAohaeIniKU=
3042− </data>
3043− </dict>
3044− <key>zh-Hans/Microsoft.Maui.Controls.resources.dll</key>
3045− <dict>
3046− <key>hash2</key>
3047− <data>
3048− O+yZ+kwD/O/AybKdt+0ypL3m184R/N/6LpuqBPxP774=
3049− </data>
3050− </dict>
3051− <key>zh-Hant/FSharp.Core.resources.dll</key>
3052− <dict>
3053− <key>hash2</key>
3054− <data>
3055− FkNrHqBt3ImqRKRLM8DK5cTDjzUxExgbDuTrtyegNyM=
3056− </data>
3057− </dict>
3058− <key>zh-Hant/Microsoft.Maui.Controls.resources.dll</key>
3059− <dict>
3060− <key>hash2</key>
3061− <data>
3062− VbM9e2KRtDEWNkJ7TxbbZeXGVTl3+E1ZId4tAE3EzZY=
3063− </data>
3064− </dict>
3065− </dict>
3066− <key>rules</key>
3067− <dict>
3068− <key>^.*</key>
3069− <true/>
3070− <key>^.*\.lproj/</key>
3071− <dict>
3072− <key>optional</key>
3073− <true/>
3074− <key>weight</key>
3075− <real>1000</real>
3076− </dict>
3077− <key>^.*\.lproj/locversion.plist$</key>
3078− <dict>
3079− <key>omit</key>
3080− <true/>
3081− <key>weight</key>
3082− <real>1100</real>
3083− </dict>
3084− <key>^Base\.lproj/</key>
3085− <dict>
3086− <key>weight</key>
3087− <real>1010</real>
3088− </dict>
3089− <key>^version.plist$</key>
3090− <true/>
3091− </dict>
3092− <key>rules2</key>
3093− <dict>
3094− <key>.*\.dSYM($|/)</key>
3095− <dict>
3096− <key>weight</key>
3097− <real>11</real>
3098− </dict>
3099− <key>^(.*/)?\.DS_Store$</key>
3100− <dict>
3101− <key>omit</key>
3102− <true/>
3103− <key>weight</key>
3104− <real>2000</real>
3105− </dict>
3106− <key>^.*</key>
3107− <true/>
3108− <key>^.*\.lproj/</key>
3109− <dict>
3110− <key>optional</key>
3111− <true/>
3112− <key>weight</key>
3113− <real>1000</real>
3114− </dict>
3115− <key>^.*\.lproj/locversion.plist$</key>
3116− <dict>
3117− <key>omit</key>
3118− <true/>
3119− <key>weight</key>
3120− <real>1100</real>
3121− </dict>
3122− <key>^Base\.lproj/</key>
3123− <dict>
3124− <key>weight</key>
3125− <real>1010</real>
3126− </dict>
3127− <key>^Info\.plist$</key>
3128− <dict>
3129− <key>omit</key>
3130− <true/>
3131− <key>weight</key>
3132− <real>20</real>
3133− </dict>
3134− <key>^PkgInfo$</key>
3135− <dict>
3136− <key>omit</key>
3137− <true/>
3138− <key>weight</key>
3139− <real>20</real>
3140− </dict>
3141− <key>^embedded\.provisionprofile$</key>
3142− <dict>
3143− <key>weight</key>
3144− <real>20</real>
3145− </dict>
3146− <key>^version\.plist$</key>
3147− <dict>
3148− <key>weight</key>
3149− <real>20</real>
3150− </dict>
3151− </dict>
3152−</dict>
3153−</plist>
client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/appicon60x60@2x.pngdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/appicon76x76@2x~ipad.pngdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ar/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ca/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/cs/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/cs/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/da/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/de/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/de/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/dotnet_bot.pngdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/dotnet_bot@2x.pngdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/dotnet_bot@3x.pngdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/el/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/es/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/es/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/fi/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/fr/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/fr/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/he/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/hi/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/hr/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/hu/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/id/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/it/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/it/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ja/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ja/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ko/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ko/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Globalization.Native.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.IO.Compression.Native.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Native.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Net.Security.Native.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Security.Cryptography.Native.Apple.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-debugger.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-diagnostics_tracing.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-hot_reload.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-marshal-ilgen.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libxamarin-dotnet-debug.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ms/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/mscorlib.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/nb/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/netstandard.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/nl/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/pl/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/pl/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/pt-BR/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/pt-BR/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/pt/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ro/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ru/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/ru/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/runtimeconfig.bindeleted−1
@@ -1 +0,0 @@
1−MMicrosoft.Extensions.DependencyInjection.VerifyOpenGenericServiceTrimmabilitytruefSystem.ComponentModel.TypeConverter.EnableUnsafeBinaryFormatterInDesigntimeLicenseContextSerializationfalseCSystem.ComponentModel.TypeDescriptor.IsComObjectDescriptorSupportedfalse'System.Diagnostics.Debugger.IsSupportedtrueSystem.Globalization.InvariantfalseSystem.Globalization.Hybridtrue&System.Linq.Enumerable.IsSizeOptimizedtrue$System.Net.Http.UseNativeHttpHandlertrue*System.Net.SocketsHttpHandler.Http3Supportfalse4System.Reflection.NullabilityInfoContext.IsSupportedfalse9System.Resources.ResourceManager.AllowCustomResourceTypesfalse&System.Resources.UseSystemResourceKeysfalse<System.Runtime.InteropServices.BuiltInComInterop.IsSupportedfalseJSystem.Runtime.InteropServices.EnableConsumingManagedCodeFromNativeHostingfalse9System.Runtime.InteropServices.EnableCppCLIHostActivationfalseESystem.Runtime.Serialization.EnableUnsafeBinaryFormatterSerializationfalse&System.StartupHookProvider.IsSupportedfalse-System.Text.Encoding.EnableUnsafeUTF7Encodingfalse<System.Text.Json.JsonSerializer.IsReflectionEnabledByDefaulttrue-System.Threading.Thread.EnableAutoreleasePooltrue>Microsoft.Maui.RuntimeFeature.IsIVisualAssemblyScanningEnabledfalse=Microsoft.Maui.RuntimeFeature.AreBindingInterceptorsSupportedtrue
client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/sk/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D.pngdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D@2x.pngdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D@3x.pngdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/sv/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/th/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/tr/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/tr/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/uk/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/vi/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/xml/microsoft_maui_essentials_fileprovider_file_paths.xmldeleted−6
@@ -1,6 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8" ?>
2−<paths>
3− <external-path name="external_files" path="." />
4− <cache-path name="internal_cache" path="." />
5− <external-cache-path name="external_cache" path="." />
6−</paths>
client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/zh-HK/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/zh-Hans/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/zh-Hans/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/zh-Hant/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/zh-Hant/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.pdbdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.runtimeconfig.jsondeleted−43
@@ -1,43 +0,0 @@
1−{
2− "runtimeOptions": {
3− "tfm": "net10.0",
4− "includedFrameworks": [
5− {
6− "name": "Microsoft.NETCore.App",
7− "version": "10.0.5"
8− },
9− {
10− "name": "Microsoft.iOS",
11− "version": "26.2.10217"
12− },
13− {
14− "name": "Microsoft.iOS.Runtimes",
15− "version": "26.2.10217"
16− }
17− ],
18− "configProperties": {
19− "Microsoft.Extensions.DependencyInjection.VerifyOpenGenericServiceTrimmability": true,
20− "System.ComponentModel.TypeConverter.EnableUnsafeBinaryFormatterInDesigntimeLicenseContextSerialization": false,
21− "System.ComponentModel.TypeDescriptor.IsComObjectDescriptorSupported": false,
22− "System.Diagnostics.Debugger.IsSupported": true,
23− "System.Globalization.Invariant": false,
24− "System.Globalization.Hybrid": true,
25− "System.Linq.Enumerable.IsSizeOptimized": true,
26− "System.Net.Http.UseNativeHttpHandler": true,
27− "System.Net.SocketsHttpHandler.Http3Support": false,
28− "System.Reflection.NullabilityInfoContext.IsSupported": false,
29− "System.Resources.ResourceManager.AllowCustomResourceTypes": false,
30− "System.Resources.UseSystemResourceKeys": false,
31− "System.Runtime.InteropServices.BuiltInComInterop.IsSupported": false,
32− "System.Runtime.InteropServices.EnableConsumingManagedCodeFromNativeHosting": false,
33− "System.Runtime.InteropServices.EnableCppCLIHostActivation": false,
34− "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false,
35− "System.StartupHookProvider.IsSupported": false,
36− "System.Text.Encoding.EnableUnsafeUTF7Encoding": false,
37− "System.Text.Json.JsonSerializer.IsReflectionEnabledByDefault": true,
38− "System.Threading.Thread.EnableAutoreleasePool": true,
39− "Microsoft.Maui.RuntimeFeature.IsIVisualAssemblyScanningEnabled": false,
40− "Microsoft.Maui.RuntimeFeature.AreBindingInterceptorsSupported": true
41− }
42− }
43−}
client/bin/Debug/net10.0-ios/iossimulator-arm64/Sodium.Core.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.AppContext.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Buffers.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Collections.Concurrent.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Collections.Immutable.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Collections.NonGeneric.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Collections.Specialized.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Collections.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ComponentModel.Annotations.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ComponentModel.DataAnnotations.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ComponentModel.EventBasedAsync.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ComponentModel.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ComponentModel.TypeConverter.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ComponentModel.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Configuration.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Console.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Core.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Data.Common.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Data.DataSetExtensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Data.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.Contracts.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.Debug.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.DiagnosticSource.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.FileVersionInfo.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.Process.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.StackTrace.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.TextWriterTraceListener.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.Tools.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.TraceSource.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.Tracing.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Drawing.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Drawing.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Dynamic.Runtime.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Formats.Asn1.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Formats.Tar.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Globalization.Calendars.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Globalization.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Globalization.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Compression.Brotli.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Compression.FileSystem.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Compression.ZipFile.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Compression.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.FileSystem.AccessControl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.FileSystem.DriveInfo.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.FileSystem.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.FileSystem.Watcher.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.FileSystem.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.IsolatedStorage.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.MemoryMappedFiles.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Pipelines.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Pipes.AccessControl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Pipes.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.UnmanagedMemoryStream.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Linq.AsyncEnumerable.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Linq.Expressions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Linq.Parallel.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Linq.Queryable.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Linq.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Memory.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Http.Json.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Http.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.HttpListener.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Mail.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.NameResolution.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.NetworkInformation.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Ping.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Quic.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Requests.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Security.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.ServerSentEvents.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.ServicePoint.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Sockets.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.WebClient.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.WebHeaderCollection.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.WebProxy.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.WebSockets.Client.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.WebSockets.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Numerics.Vectors.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Numerics.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ObjectModel.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Private.DataContractSerialization.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Private.Uri.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Private.Xml.Linq.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.DispatchProxy.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.Emit.ILGeneration.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.Emit.Lightweight.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.Emit.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.Metadata.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.TypeExtensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Resources.Reader.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Resources.ResourceManager.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Resources.Writer.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.CompilerServices.Unsafe.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.CompilerServices.VisualC.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Handles.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.InteropServices.JavaScript.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.InteropServices.RuntimeInformation.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.InteropServices.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Intrinsics.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Loader.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Numerics.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Serialization.Formatters.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Serialization.Json.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Serialization.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Serialization.Xml.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Serialization.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.AccessControl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Claims.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.Algorithms.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.Cng.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.Csp.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.Encoding.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.OpenSsl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.X509Certificates.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Principal.Windows.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Principal.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.SecureString.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ServiceModel.Web.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ServiceProcess.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Text.Encoding.CodePages.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Text.Encoding.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Text.Encoding.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Text.Encodings.Web.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Text.Json.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Text.RegularExpressions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.AccessControl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Channels.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Overlapped.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Tasks.Dataflow.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Tasks.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Tasks.Parallel.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Tasks.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Thread.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.ThreadPool.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Timer.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Transactions.Local.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Transactions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ValueTuple.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Web.HttpUtility.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Web.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Windows.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.Linq.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.ReaderWriter.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.Serialization.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.XDocument.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.XPath.XDocument.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.XPath.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.XmlDocument.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.XmlSerializer.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/System.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/WindowsBase.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/ar/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/ca/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/codesign-bundle.itemsdeleted−18
@@ -1,18 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup>
4− <_CodesignBundle Include="Skrepka.app">
5− <EnableCodeSigning>true</EnableCodeSigning>
6− <CodesignSigningKey>-</CodesignSigningKey>
7− <CodesignEntitlements>/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/Entitlements.xcent</CodesignEntitlements>
8− <CodesignUseSecureTimestamp></CodesignUseSecureTimestamp>
9− <CodesignAllocate>/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate</CodesignAllocate>
10− <CodesignExtraArgs></CodesignExtraArgs>
11− <CodesignResourceRules></CodesignResourceRules>
12− <CodesignDisableTimestamp>true</CodesignDisableTimestamp>
13− <CodesignKeychain></CodesignKeychain>
14− <CodesignUseHardenedRuntime></CodesignUseHardenedRuntime>
15− <SourceProjectPath>/Users/iko/Developer/skrepka/client</SourceProjectPath>
16− </_CodesignBundle>
17− </ItemGroup>
18−</Project>
client/bin/Debug/net10.0-ios/iossimulator-arm64/codesign.itemsdeleted−4
@@ -1,4 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup />
4−</Project>
client/bin/Debug/net10.0-ios/iossimulator-arm64/cs/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/cs/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/da/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/de/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/de/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/el/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/es/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/es/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/fi/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/fr/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/fr/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/he/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/hi/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/hr/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/hu/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/id/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/it/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/it/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/ja/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/ja/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/ko/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/ko/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Globalization.Native.adeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Globalization.Native.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.IO.Compression.Native.adeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.IO.Compression.Native.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Native.adeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Native.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Net.Security.Native.adeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Net.Security.Native.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Security.Cryptography.Native.Apple.adeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Security.Cryptography.Native.Apple.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libbrotlicommon.adeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libbrotlidec.adeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libextension-dotnet.adeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-debugger-stub-static.adeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-debugger.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-diagnostics_tracing-stub-static.adeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-diagnostics_tracing.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-hot_reload-static.adeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-hot_reload-stub-static.adeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-hot_reload.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-marshal-ilgen-static.adeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-marshal-ilgen-stub-static.adeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-marshal-ilgen.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libxamarin-dotnet-debug.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/libxamarin-dotnet.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/ms/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/mscorlib.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/nb/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/netstandard.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/nl/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/pl/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/pl/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/postprocessing.itemsdeleted−17
@@ -1,17 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup>
4− <_PostProcessingItem Include="Skrepka.app/Skrepka">
5− <IsAppExtension>false</IsAppExtension>
6− <BCSymbolMapName>Skrepka.bcsymbolmap</BCSymbolMapName>
7− <NoDSymUtil>true</NoDSymUtil>
8− <dSYMSourcePathExists>false</dSYMSourcePathExists>
9− <NoSymbolStrip>true</NoSymbolStrip>
10− <dSYMInfoPlistRelativePath>Skrepka.app.dSYM\Contents\Info.plist</dSYMInfoPlistRelativePath>
11− <SymbolFile>/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/mtouch-symbols.list</SymbolFile>
12− <DSymName>Skrepka.app.dSYM</DSymName>
13− <SourceProjectPath>/Users/iko/Developer/skrepka/client</SourceProjectPath>
14− <IsXPCService></IsXPCService>
15− </_PostProcessingItem>
16− </ItemGroup>
17−</Project>
client/bin/Debug/net10.0-ios/iossimulator-arm64/pt-BR/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/pt-BR/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/pt/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/ro/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/ru/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/ru/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/sk/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/sv/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/th/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/tr/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/tr/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/uk/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/vi/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/zh-HK/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/zh-Hans/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/zh-Hans/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/zh-Hant/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-ios/iossimulator-arm64/zh-Hant/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/AOTCompileInputs.cachedeleted−1
@@ -1 +0,0 @@
1−bbc08e4e6fbaa83fc2bb6ac9199e612800e286403c2b2fc8245e204ea0eedecc
client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/AOTCompileInputs.cache.uptodatedeleted−1
@@ -1 +0,0 @@
1−bbc08e4e6fbaa83fc2bb6ac9199e612800e286403c2b2fc8245e204ea0eedecc
client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Fabulous.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/LinkerInputs.cachedeleted−1
@@ -1 +0,0 @@
1−48bfbc087cc203084c6b3174c7944b803760dd3635f495c1170bf4b319ae3464
client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/LinkerInputs.cache.xmldeleted−1
@@ -1 +0,0 @@
1−<linker/>
client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.CSharp.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Configuration.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Configuration.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.DependencyInjection.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.DependencyInjection.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Diagnostics.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.FileProviders.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Hosting.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Logging.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Logging.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Options.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Maui.Controls.Compatibility.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Maui.Controls.Xaml.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Maui.Essentials.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Maui.Graphics.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Maui.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.VisualBasic.Core.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.VisualBasic.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Win32.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Win32.Registry.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/NativeLink.cachedeleted−1
@@ -1 +0,0 @@
1−12e8ce10c5be9e5289c58b8051e2bffc33b57e85c27f5e6cada36a811eac4be4
client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/NativeLink.cache.uptodatedeleted−1
@@ -1 +0,0 @@
1−12e8ce10c5be9e5289c58b8051e2bffc33b57e85c27f5e6cada36a811eac4be4
client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Info.plistdeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Fabulous.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.CSharp.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Configuration.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Configuration.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.DependencyInjection.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.DependencyInjection.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Diagnostics.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.FileProviders.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Hosting.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Logging.Abstractions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Logging.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Options.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Maui.Controls.Compatibility.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Maui.Controls.Xaml.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Maui.Essentials.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Maui.Graphics.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Maui.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.VisualBasic.Core.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.VisualBasic.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Win32.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Microsoft.Win32.Registry.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Skrepka.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Skrepka.pdbdeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/Sodium.Core.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.AppContext.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Buffers.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Collections.Concurrent.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Collections.Immutable.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Collections.NonGeneric.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Collections.Specialized.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Collections.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ComponentModel.Annotations.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ComponentModel.DataAnnotations.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ComponentModel.EventBasedAsync.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ComponentModel.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ComponentModel.TypeConverter.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ComponentModel.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Configuration.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Console.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Core.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Data.Common.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Data.DataSetExtensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Data.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.Contracts.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.Debug.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.DiagnosticSource.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.FileVersionInfo.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.Process.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.StackTrace.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.TextWriterTraceListener.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.Tools.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.TraceSource.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Diagnostics.Tracing.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Drawing.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Drawing.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Dynamic.Runtime.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Formats.Asn1.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Formats.Tar.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Globalization.Calendars.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Globalization.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Globalization.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.Compression.Brotli.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.Compression.FileSystem.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.Compression.ZipFile.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.Compression.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.FileSystem.AccessControl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.FileSystem.DriveInfo.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.FileSystem.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.FileSystem.Watcher.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.FileSystem.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.IsolatedStorage.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.MemoryMappedFiles.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.Pipelines.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.Pipes.AccessControl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.Pipes.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.UnmanagedMemoryStream.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.IO.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Linq.AsyncEnumerable.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Linq.Expressions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Linq.Parallel.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Linq.Queryable.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Linq.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Memory.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.Http.Json.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.Http.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.HttpListener.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.Mail.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.NameResolution.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.NetworkInformation.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.Ping.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.Quic.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.Requests.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.Security.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.ServerSentEvents.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.ServicePoint.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.Sockets.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.WebClient.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.WebHeaderCollection.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.WebProxy.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.WebSockets.Client.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.WebSockets.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Net.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Numerics.Vectors.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Numerics.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ObjectModel.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Private.CoreLib.aotdata.arm64deleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Private.DataContractSerialization.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Private.Uri.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Private.Xml.Linq.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Reflection.DispatchProxy.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Reflection.Emit.ILGeneration.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Reflection.Emit.Lightweight.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Reflection.Emit.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Reflection.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Reflection.Metadata.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Reflection.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Reflection.TypeExtensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Reflection.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Resources.Reader.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Resources.ResourceManager.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Resources.Writer.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.CompilerServices.Unsafe.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.CompilerServices.VisualC.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Handles.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.InteropServices.JavaScript.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.InteropServices.RuntimeInformation.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.InteropServices.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Intrinsics.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Loader.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Numerics.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Serialization.Formatters.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Serialization.Json.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Serialization.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Serialization.Xml.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.Serialization.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Runtime.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.AccessControl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Claims.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.Algorithms.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.Cng.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.Csp.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.Encoding.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.OpenSsl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.X509Certificates.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Principal.Windows.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.Principal.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.SecureString.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Security.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ServiceModel.Web.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ServiceProcess.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Text.Encoding.CodePages.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Text.Encoding.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Text.Encoding.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Text.Encodings.Web.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Text.Json.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Text.RegularExpressions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.AccessControl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.Channels.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.Overlapped.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.Tasks.Dataflow.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.Tasks.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.Tasks.Parallel.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.Tasks.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.Thread.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.ThreadPool.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.Timer.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Threading.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Transactions.Local.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Transactions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.ValueTuple.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Web.HttpUtility.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Web.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Windows.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Xml.Linq.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Xml.ReaderWriter.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Xml.Serialization.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Xml.XDocument.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Xml.XPath.XDocument.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Xml.XPath.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Xml.XmlDocument.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Xml.XmlSerializer.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.Xml.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/System.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/WindowsBase.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ar/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ca/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/cs/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/cs/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/da/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/de/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/de/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/el/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/es/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/es/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/fi/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/fr/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/fr/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/he/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/hi/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/hr/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/hu/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/id/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/it/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/it/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ja/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ja/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ko/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ko/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ms/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/mscorlib.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/nb/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/netstandard.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/nl/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/pl/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/pl/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/pt-BR/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/pt-BR/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/pt/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ro/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ru/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/ru/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/runtimeconfig.bindeleted−1
@@ -1 +0,0 @@
1−MMicrosoft.Extensions.DependencyInjection.VerifyOpenGenericServiceTrimmabilitytruefSystem.ComponentModel.TypeConverter.EnableUnsafeBinaryFormatterInDesigntimeLicenseContextSerializationfalseCSystem.ComponentModel.TypeDescriptor.IsComObjectDescriptorSupportedfalse'System.Diagnostics.Debugger.IsSupportedtrueSystem.Globalization.InvariantfalseSystem.Globalization.Hybridtrue&System.Linq.Enumerable.IsSizeOptimizedtrue$System.Net.Http.UseNativeHttpHandlertrue*System.Net.SocketsHttpHandler.Http3Supportfalse4System.Reflection.NullabilityInfoContext.IsSupportedfalse9System.Resources.ResourceManager.AllowCustomResourceTypesfalse&System.Resources.UseSystemResourceKeysfalse<System.Runtime.InteropServices.BuiltInComInterop.IsSupportedfalseJSystem.Runtime.InteropServices.EnableConsumingManagedCodeFromNativeHostingfalse9System.Runtime.InteropServices.EnableCppCLIHostActivationfalseESystem.Runtime.Serialization.EnableUnsafeBinaryFormatterSerializationfalse&System.StartupHookProvider.IsSupportedfalse-System.Text.Encoding.EnableUnsafeUTF7Encodingfalse<System.Text.Json.JsonSerializer.IsReflectionEnabledByDefaulttrue-System.Threading.Thread.EnableAutoreleasePooltrue>Microsoft.Maui.RuntimeFeature.IsIVisualAssemblyScanningEnabledfalse=Microsoft.Maui.RuntimeFeature.AreBindingInterceptorsSupportedtrue
client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/sk/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/sv/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/th/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/tr/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/tr/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/uk/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/vi/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/zh-HK/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/zh-Hans/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/zh-Hans/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/zh-Hant/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/MonoBundle/zh-Hant/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/PkgInfodeleted−1
@@ -1 +0,0 @@
1−APPL????
client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Resources/AboutAssets.txtdeleted−15
@@ -1,15 +0,0 @@
1−Any raw assets you want to be deployed with your application can be placed in
2−this directory (and child directories). Deployment of the asset to your application
3−is automatically handled by the following `MauiAsset` Build Action within your `.csproj`.
4−
5− <MauiAsset Include="Resources\Raw\**" LogicalName="%(RecursiveDir)%(Filename)%(Extension)" />
6−
7−These files will be deployed with you package and will be accessible using Essentials:
8−
9− async Task LoadMauiAsset()
10− {
11− using var stream = await FileSystem.OpenAppPackageFileAsync("AboutAssets.txt");
12− using var reader = new StreamReader(stream);
13−
14− var contents = reader.ReadToEnd();
15− }
client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Resources/Assets.cardeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Resources/MonoTouchDebugConfiguration.txtdeleted−2
@@ -1,2 +0,0 @@
1−USB Debugging: 1
2−Port: 10000
client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Resources/OpenSans-Regular.ttfdeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Resources/OpenSans-Semibold.ttfdeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Resources/appicon.icnsdeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Resources/dotnet_bot.pngdeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Resources/dotnet_bot@2x.pngdeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Resources/dotnet_bot@3x.pngdeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/_CodeSignature/CodeResourcesdeleted−1967
@@ -1,1967 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8"?>
2−<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3−<plist version="1.0">
4−<dict>
5− <key>files</key>
6− <dict>
7− <key>Resources/AboutAssets.txt</key>
8− <data>
9− MEt7GErfS6fHNEi3JiInA2rNG0U=
10− </data>
11− <key>Resources/Assets.car</key>
12− <data>
13− c3wF+z6XtMjJ+O5rJymqsoYbzDg=
14− </data>
15− <key>Resources/MauiInfo.plist</key>
16− <data>
17− iEtuUGCV6JM3gxS/pO33swhmpp8=
18− </data>
19− <key>Resources/MonoTouchDebugConfiguration.txt</key>
20− <data>
21− oowkf1sL6T19nanXUObgmuayWqM=
22− </data>
23− <key>Resources/OpenSans-Regular.ttf</key>
24− <data>
25− k0VrKWxe4lE1lZAdUrUCb52Nc28=
26− </data>
27− <key>Resources/OpenSans-Semibold.ttf</key>
28− <data>
29− Ldx6GkMB6FCGINTgIY7znxt1Mx8=
30− </data>
31− <key>Resources/appicon.icns</key>
32− <data>
33− MpxHfDYfBIXik0uFDpIO5NLt/9Y=
34− </data>
35− <key>Resources/dotnet_bot.png</key>
36− <data>
37− pV4EgFY2vvoKqovCvw+8K53Enig=
38− </data>
39− <key>Resources/dotnet_bot@2x.png</key>
40− <data>
41− S8msgxuld34wnkDYjnCuD9Hd6gM=
42− </data>
43− <key>Resources/dotnet_bot@3x.png</key>
44− <data>
45− 0MNKQFxkmotyH6NbFxiImCoXedE=
46− </data>
47− <key>Resources/xml/microsoft_maui_essentials_fileprovider_file_paths.xml</key>
48− <data>
49− 0ZugOR08oYUyn+ivNzk266eEOoY=
50− </data>
51− </dict>
52− <key>files2</key>
53− <dict>
54− <key>MonoBundle/FSharp.Core.dll</key>
55− <dict>
56− <key>hash2</key>
57− <data>
58− deIR455zlHf3M2Pdjv6Ro/px5HUznTuOOzoV3uiFE9M=
59− </data>
60− </dict>
61− <key>MonoBundle/Fabulous.MauiControls.dll</key>
62− <dict>
63− <key>hash2</key>
64− <data>
65− wQC1QzDiO0hkLzc4jm1dxxZwTbS50Wll7bX+UiPAvfs=
66− </data>
67− </dict>
68− <key>MonoBundle/Fabulous.dll</key>
69− <dict>
70− <key>hash2</key>
71− <data>
72− qpZJG5sHLu7WLZdd3Hp9GLV8v5gqy7cr5m0iSkYjBXc=
73− </data>
74− </dict>
75− <key>MonoBundle/LiteDB.dll</key>
76− <dict>
77− <key>hash2</key>
78− <data>
79− rjGsapNUkhe56LgUl9HugxZYrebfnh7iDyg48i3l4hg=
80− </data>
81− </dict>
82− <key>MonoBundle/Microsoft.CSharp.dll</key>
83− <dict>
84− <key>hash2</key>
85− <data>
86− 0QRtFo5AtX9reBfSb+fDL5NrC9QLmC65PVqpfULP5T8=
87− </data>
88− </dict>
89− <key>MonoBundle/Microsoft.Extensions.Configuration.Abstractions.dll</key>
90− <dict>
91− <key>hash2</key>
92− <data>
93− Xe9o4cfZwfz1YVO7Zp4A2Ewa4Xs1+wnFqMz5PpuTTT4=
94− </data>
95− </dict>
96− <key>MonoBundle/Microsoft.Extensions.Configuration.dll</key>
97− <dict>
98− <key>hash2</key>
99− <data>
100− lMOYEIT3E6Ua09JmFFFU0kaPWcTNPivegpQb+E6X+1U=
101− </data>
102− </dict>
103− <key>MonoBundle/Microsoft.Extensions.DependencyInjection.Abstractions.dll</key>
104− <dict>
105− <key>hash2</key>
106− <data>
107− fJfERj/g/BHR8i9NFgsr0iiJga3x3icXpv8/uZPd8pQ=
108− </data>
109− </dict>
110− <key>MonoBundle/Microsoft.Extensions.DependencyInjection.dll</key>
111− <dict>
112− <key>hash2</key>
113− <data>
114− 1kalzKXoEWrka0NxUpcIP6ijjbY26rYOZu7vNQ10zV0=
115− </data>
116− </dict>
117− <key>MonoBundle/Microsoft.Extensions.Diagnostics.Abstractions.dll</key>
118− <dict>
119− <key>hash2</key>
120− <data>
121− lwK4c3AJu19slDz3o7pcCZHH5OtYqelS1Ug1u1lv5WM=
122− </data>
123− </dict>
124− <key>MonoBundle/Microsoft.Extensions.FileProviders.Abstractions.dll</key>
125− <dict>
126− <key>hash2</key>
127− <data>
128− fuk1qt2K/i9zHWVe9UR57WIG5tKqUr/RiJzfFwsPk5k=
129− </data>
130− </dict>
131− <key>MonoBundle/Microsoft.Extensions.Hosting.Abstractions.dll</key>
132− <dict>
133− <key>hash2</key>
134− <data>
135− iaRCil0P7t3lqgVlUJufTGGJ79yviIzRwsP5eeMszXw=
136− </data>
137− </dict>
138− <key>MonoBundle/Microsoft.Extensions.Logging.Abstractions.dll</key>
139− <dict>
140− <key>hash2</key>
141− <data>
142− p2pzW2Pm7zsL9B/5JCPL0WEDuJUugwYUCpvWUDRgNNw=
143− </data>
144− </dict>
145− <key>MonoBundle/Microsoft.Extensions.Logging.dll</key>
146− <dict>
147− <key>hash2</key>
148− <data>
149− LANHJavZCv4woUJuZHfLBpO8eRcOHf2zzvcUbilqH3E=
150− </data>
151− </dict>
152− <key>MonoBundle/Microsoft.Extensions.Options.dll</key>
153− <dict>
154− <key>hash2</key>
155− <data>
156− WASNcQzyqI096nyTPQsUCEZNWqQkXvc209R+bfa6TbM=
157− </data>
158− </dict>
159− <key>MonoBundle/Microsoft.Extensions.Primitives.dll</key>
160− <dict>
161− <key>hash2</key>
162− <data>
163− aq+Sk0P9AkFdbLXZA4FsLxyDGxlL/noVeJh5CT0Pprc=
164− </data>
165− </dict>
166− <key>MonoBundle/Microsoft.MacCatalyst.dll</key>
167− <dict>
168− <key>hash2</key>
169− <data>
170− lDRxwJMv8pH/W1HcXA7BXCM0pA8X0nhRggdCFdMMrjM=
171− </data>
172− </dict>
173− <key>MonoBundle/Microsoft.MacCatalyst.pdb</key>
174− <dict>
175− <key>hash2</key>
176− <data>
177− Zz3XkT8dOlB9T3Au5+48abuCtCB5wGEnWvwXO8F3Sxg=
178− </data>
179− </dict>
180− <key>MonoBundle/Microsoft.Maui.Controls.Compatibility.dll</key>
181− <dict>
182− <key>hash2</key>
183− <data>
184− 3qKumiCGrNzUb4W1krymmhTh07j87K1pdt+y6+bKDak=
185− </data>
186− </dict>
187− <key>MonoBundle/Microsoft.Maui.Controls.Xaml.dll</key>
188− <dict>
189− <key>hash2</key>
190− <data>
191− gIFknSS7dp1P0nuEVxTAV6k2RqiAHRp2FM7Dzmhq2Lw=
192− </data>
193− </dict>
194− <key>MonoBundle/Microsoft.Maui.Controls.dll</key>
195− <dict>
196− <key>hash2</key>
197− <data>
198− 5j2SrMpt2mqpv4Ji0pQcx8JQ5IORAqEgJe7Aos7yIik=
199− </data>
200− </dict>
201− <key>MonoBundle/Microsoft.Maui.Essentials.dll</key>
202− <dict>
203− <key>hash2</key>
204− <data>
205− FZtMxHNDeFo0wmfa1KBIYRtD/b/f6Ir57iujguNuxuQ=
206− </data>
207− </dict>
208− <key>MonoBundle/Microsoft.Maui.Graphics.dll</key>
209− <dict>
210− <key>hash2</key>
211− <data>
212− GF5UGA77iSZNamuzIBIj++Wqu1m3FrIWxvYJzkIXqWw=
213− </data>
214− </dict>
215− <key>MonoBundle/Microsoft.Maui.dll</key>
216− <dict>
217− <key>hash2</key>
218− <data>
219− OaRtj9OXkrwrEjJQ5wfbYZztDjIM3XsedhJC3tHqtnM=
220− </data>
221− </dict>
222− <key>MonoBundle/Microsoft.VisualBasic.Core.dll</key>
223− <dict>
224− <key>hash2</key>
225− <data>
226− DlW/FGBLwsfpLcZY62ajKXIVU0Pqk+F8WgKFjv25ecQ=
227− </data>
228− </dict>
229− <key>MonoBundle/Microsoft.VisualBasic.dll</key>
230− <dict>
231− <key>hash2</key>
232− <data>
233− mOw8mzBMLBzaMdj54jgzepe0N/irol1vdAHV6XnCojM=
234− </data>
235− </dict>
236− <key>MonoBundle/Microsoft.Win32.Primitives.dll</key>
237− <dict>
238− <key>hash2</key>
239− <data>
240− OHaIKcnM/yE1M6yfsPAF2uH8GL6GUe95tmoJ9Keprdo=
241− </data>
242− </dict>
243− <key>MonoBundle/Microsoft.Win32.Registry.dll</key>
244− <dict>
245− <key>hash2</key>
246− <data>
247− mA+PWvJXnNKsZK31WyxM9hDDwc7aZdnRPj+W6M1Zj1Y=
248− </data>
249− </dict>
250− <key>MonoBundle/Skrepka.dll</key>
251− <dict>
252− <key>hash2</key>
253− <data>
254− ZDY0RMPXDKaTDBgy9myo16G9HTQ00CFMBnGOxyxo8IQ=
255− </data>
256− </dict>
257− <key>MonoBundle/Skrepka.pdb</key>
258− <dict>
259− <key>hash2</key>
260− <data>
261− sA8vqaz6By9kGWnIhXN4vmv2saJVvZVG4L5qa8GAqxE=
262− </data>
263− </dict>
264− <key>MonoBundle/Sodium.Core.dll</key>
265− <dict>
266− <key>hash2</key>
267− <data>
268− rkpXdeIeWaRrKJpZpk/TrvM5APkv+4sCF5tC3ucKfwE=
269− </data>
270− </dict>
271− <key>MonoBundle/System.AppContext.dll</key>
272− <dict>
273− <key>hash2</key>
274− <data>
275− lCX1s4c9+okzQjWV2BFFeERFVs7mIsLvCUYSlAKxtpA=
276− </data>
277− </dict>
278− <key>MonoBundle/System.Buffers.dll</key>
279− <dict>
280− <key>hash2</key>
281− <data>
282− /7ncQ0802JdlvxHvv3aDMAfBR+mu1okGqsH0w/KCobI=
283− </data>
284− </dict>
285− <key>MonoBundle/System.Collections.Concurrent.dll</key>
286− <dict>
287− <key>hash2</key>
288− <data>
289− sQBDROfJ00/PelnyKPVvXBcNFQw7t7PejLeosnaogiQ=
290− </data>
291− </dict>
292− <key>MonoBundle/System.Collections.Immutable.dll</key>
293− <dict>
294− <key>hash2</key>
295− <data>
296− Wlk5MbWF8YYLvhog3i5O0X4io7PCZV8glMtbnThSnfM=
297− </data>
298− </dict>
299− <key>MonoBundle/System.Collections.NonGeneric.dll</key>
300− <dict>
301− <key>hash2</key>
302− <data>
303− LJr7BKir10eZ/gsV4z+Eed3pgfHzaxR9S1vjovCogIw=
304− </data>
305− </dict>
306− <key>MonoBundle/System.Collections.Specialized.dll</key>
307− <dict>
308− <key>hash2</key>
309− <data>
310− xgM1hJESHanKI2AaGhpt/8dZ/tUjrYvQxNwnHLoZjkw=
311− </data>
312− </dict>
313− <key>MonoBundle/System.Collections.dll</key>
314− <dict>
315− <key>hash2</key>
316− <data>
317− Y3N4SydSO6/rwYeAySOoOk2DEigwS6VhKimPdCE4dsM=
318− </data>
319− </dict>
320− <key>MonoBundle/System.ComponentModel.Annotations.dll</key>
321− <dict>
322− <key>hash2</key>
323− <data>
324− ocD27at7H3qQqR+A19NmiTVTjYRshtow1aPEZ9v8gHE=
325− </data>
326− </dict>
327− <key>MonoBundle/System.ComponentModel.DataAnnotations.dll</key>
328− <dict>
329− <key>hash2</key>
330− <data>
331− liPo13CF1Wxhgsf3IzMdJhL7cXxYPl9lx+wtWJqzvOY=
332− </data>
333− </dict>
334− <key>MonoBundle/System.ComponentModel.EventBasedAsync.dll</key>
335− <dict>
336− <key>hash2</key>
337− <data>
338− T+YiegMJ/Av3wNx6k+kcpmRnGMgqpOzD3qOqWHiK7yk=
339− </data>
340− </dict>
341− <key>MonoBundle/System.ComponentModel.Primitives.dll</key>
342− <dict>
343− <key>hash2</key>
344− <data>
345− bCqlnRmvg/ASebFAcqI/Ykux8Q9/DtHOpsu1EtEyE0o=
346− </data>
347− </dict>
348− <key>MonoBundle/System.ComponentModel.TypeConverter.dll</key>
349− <dict>
350− <key>hash2</key>
351− <data>
352− AUkwhsNPBI/2+aEHK3oD16qB6FpQ1lTJcQaaSzzwyuE=
353− </data>
354− </dict>
355− <key>MonoBundle/System.ComponentModel.dll</key>
356− <dict>
357− <key>hash2</key>
358− <data>
359− gNGKsE8ZiDBvmlD0MuWouUf5uXElihOtJbtcJ/aeNPM=
360− </data>
361− </dict>
362− <key>MonoBundle/System.Configuration.dll</key>
363− <dict>
364− <key>hash2</key>
365− <data>
366− OtU0yjKJv30+1VP2pwBhRE1asgmupwNiQPhMuuz2EdE=
367− </data>
368− </dict>
369− <key>MonoBundle/System.Console.dll</key>
370− <dict>
371− <key>hash2</key>
372− <data>
373− dcQDApMb3053tAqBSvNBThKPD8nZjQ0+ZkB7vCiB4Ws=
374− </data>
375− </dict>
376− <key>MonoBundle/System.Core.dll</key>
377− <dict>
378− <key>hash2</key>
379− <data>
380− +9f1Q4EDEA8xY9e1yc6YfaBvqx22FENlbU46rTK4De4=
381− </data>
382− </dict>
383− <key>MonoBundle/System.Data.Common.dll</key>
384− <dict>
385− <key>hash2</key>
386− <data>
387− TPp/2Hrzs6BPfHhVzc8RU8phag/hGHATtrS0Tnbxqsc=
388− </data>
389− </dict>
390− <key>MonoBundle/System.Data.DataSetExtensions.dll</key>
391− <dict>
392− <key>hash2</key>
393− <data>
394− 8XYR6+qoCiYlwfYtHp/cLbPAvBKiRPC2Ztyk4O2K3VE=
395− </data>
396− </dict>
397− <key>MonoBundle/System.Data.dll</key>
398− <dict>
399− <key>hash2</key>
400− <data>
401− BOgJV6wt4liPBTikQ9MXeCBJT3rvmoBljBg5Sc6nCOQ=
402− </data>
403− </dict>
404− <key>MonoBundle/System.Diagnostics.Contracts.dll</key>
405− <dict>
406− <key>hash2</key>
407− <data>
408− v0CqHLAiZ43Z+ipes1ixqTp+MS/OoeSpqpG8wbJfpK4=
409− </data>
410− </dict>
411− <key>MonoBundle/System.Diagnostics.Debug.dll</key>
412− <dict>
413− <key>hash2</key>
414− <data>
415− ydBd6QXz+09TFAuPd61gooix+z9R1/COYxUSnP6YADM=
416− </data>
417− </dict>
418− <key>MonoBundle/System.Diagnostics.DiagnosticSource.dll</key>
419− <dict>
420− <key>hash2</key>
421− <data>
422− G0U4nr9RZdSEcgZJKV1v2xZk7ErNj4Pu7Af2gRjlZU0=
423− </data>
424− </dict>
425− <key>MonoBundle/System.Diagnostics.FileVersionInfo.dll</key>
426− <dict>
427− <key>hash2</key>
428− <data>
429− el5n2Bx0cfl+gombuJU6xq0xdvLH7VJctHuVVl2J4/o=
430− </data>
431− </dict>
432− <key>MonoBundle/System.Diagnostics.Process.dll</key>
433− <dict>
434− <key>hash2</key>
435− <data>
436− qbzUZ8Pu0BSoH3RBSUx0SgZuAuBoEE9TVbqISBT/6sQ=
437− </data>
438− </dict>
439− <key>MonoBundle/System.Diagnostics.StackTrace.dll</key>
440− <dict>
441− <key>hash2</key>
442− <data>
443− HmFHDjBontcuOJSXVtXbIvShNJ0Kr2Rlo6gb3KyCwzo=
444− </data>
445− </dict>
446− <key>MonoBundle/System.Diagnostics.TextWriterTraceListener.dll</key>
447− <dict>
448− <key>hash2</key>
449− <data>
450− XHsDxJvT0A+8QgUjzWBDEnSntyRihRCkwGMtlM+5kuQ=
451− </data>
452− </dict>
453− <key>MonoBundle/System.Diagnostics.Tools.dll</key>
454− <dict>
455− <key>hash2</key>
456− <data>
457− OJbrhHW89js/XXVaau+8X3Jlgd4UYnTzYHKaCklnArE=
458− </data>
459− </dict>
460− <key>MonoBundle/System.Diagnostics.TraceSource.dll</key>
461− <dict>
462− <key>hash2</key>
463− <data>
464− JKeVZnMTBvm2uJYvzb83Gu+fQi9kdWK1N6J1HqhwTVA=
465− </data>
466− </dict>
467− <key>MonoBundle/System.Diagnostics.Tracing.dll</key>
468− <dict>
469− <key>hash2</key>
470− <data>
471− XTYYVUcciYJHF3XwIwsySQ+b8iv3dWI4FndXi9jIGBc=
472− </data>
473− </dict>
474− <key>MonoBundle/System.Drawing.Primitives.dll</key>
475− <dict>
476− <key>hash2</key>
477− <data>
478− 7TEh39a5dqWEU7RLiH5h2FsI1YKHCYInnYTWRHuQam4=
479− </data>
480− </dict>
481− <key>MonoBundle/System.Drawing.dll</key>
482− <dict>
483− <key>hash2</key>
484− <data>
485− G5oXXHY9mlNdRbNa620Rs8XGdMzHf8N0iBUV1xq8340=
486− </data>
487− </dict>
488− <key>MonoBundle/System.Dynamic.Runtime.dll</key>
489− <dict>
490− <key>hash2</key>
491− <data>
492− isZEzV6rBJfE3tmeHdJbYwJiSmvZmRo6SLzyI2QX+qQ=
493− </data>
494− </dict>
495− <key>MonoBundle/System.Formats.Asn1.dll</key>
496− <dict>
497− <key>hash2</key>
498− <data>
499− PF7+2QSjyOaB1i6c+K2jz653nc3WO2KPoRM0Xs/SooA=
500− </data>
501− </dict>
502− <key>MonoBundle/System.Formats.Tar.dll</key>
503− <dict>
504− <key>hash2</key>
505− <data>
506− E9lY/Zj2PEwdINQ/paYx97ljLdBIfpbsv1h+2rvKLLc=
507− </data>
508− </dict>
509− <key>MonoBundle/System.Globalization.Calendars.dll</key>
510− <dict>
511− <key>hash2</key>
512− <data>
513− 21vfVhXM7EGIKkL8KkMyiwLaTFM7LX3EZfvFL97/+sw=
514− </data>
515− </dict>
516− <key>MonoBundle/System.Globalization.Extensions.dll</key>
517− <dict>
518− <key>hash2</key>
519− <data>
520− JQspmMY7xqQBcGwF//dRF+DNb+Tvrq7+f1/+kLFe+1Q=
521− </data>
522− </dict>
523− <key>MonoBundle/System.Globalization.dll</key>
524− <dict>
525− <key>hash2</key>
526− <data>
527− JBW7Geb4869qREiWh1/vYlupNqM4ynvgMWtFYhjPN5s=
528− </data>
529− </dict>
530− <key>MonoBundle/System.IO.Compression.Brotli.dll</key>
531− <dict>
532− <key>hash2</key>
533− <data>
534− uL4pDmWXfxCfyecLqXZ2oDqXP1wx/zMfvXw+LNZkyCU=
535− </data>
536− </dict>
537− <key>MonoBundle/System.IO.Compression.FileSystem.dll</key>
538− <dict>
539− <key>hash2</key>
540− <data>
541− i3KPiT1rt/KFJt8ZG0KR1LFKN9ufEi3JtW7qktM1KmE=
542− </data>
543− </dict>
544− <key>MonoBundle/System.IO.Compression.ZipFile.dll</key>
545− <dict>
546− <key>hash2</key>
547− <data>
548− 0l0iK/1MtXSPXZkkodYvVb3axUKzIbW8fH9D+Xq+xwI=
549− </data>
550− </dict>
551− <key>MonoBundle/System.IO.Compression.dll</key>
552− <dict>
553− <key>hash2</key>
554− <data>
555− rPWcw9EE1yZsWKl4a53dO9CT7hLKaeFU4EhCRmeUTLk=
556− </data>
557− </dict>
558− <key>MonoBundle/System.IO.FileSystem.AccessControl.dll</key>
559− <dict>
560− <key>hash2</key>
561− <data>
562− OaJvCTU+ENGX3VH+eBr4d9s42w4VYuq9YAyVwJFAWqc=
563− </data>
564− </dict>
565− <key>MonoBundle/System.IO.FileSystem.DriveInfo.dll</key>
566− <dict>
567− <key>hash2</key>
568− <data>
569− 04/Wd/5AZSG5Pio+o5PrPVzL5hop5AqBSiV/qX5I3FM=
570− </data>
571− </dict>
572− <key>MonoBundle/System.IO.FileSystem.Primitives.dll</key>
573− <dict>
574− <key>hash2</key>
575− <data>
576− /cMkaEBZXQs8eEpuy3csRHuFesDjCYzKA+uK5XbFhyI=
577− </data>
578− </dict>
579− <key>MonoBundle/System.IO.FileSystem.Watcher.dll</key>
580− <dict>
581− <key>hash2</key>
582− <data>
583− tenayQiKW9JCTBGef9PO/pWF0135M+41GH8hbMRuCUg=
584− </data>
585− </dict>
586− <key>MonoBundle/System.IO.FileSystem.dll</key>
587− <dict>
588− <key>hash2</key>
589− <data>
590− LRDyIwfakkArkb54UNLtTMbaA8HwQ3EW6WSZQqYl04k=
591− </data>
592− </dict>
593− <key>MonoBundle/System.IO.IsolatedStorage.dll</key>
594− <dict>
595− <key>hash2</key>
596− <data>
597− eg3Xa8CfdMlxEtKL+WILxg57oI5gY3ATLC2U5zjLUlw=
598− </data>
599− </dict>
600− <key>MonoBundle/System.IO.MemoryMappedFiles.dll</key>
601− <dict>
602− <key>hash2</key>
603− <data>
604− l2fCr6G7XG7GCP/1LIJbOhvUFUE/e1+t1yuAqxE+qUo=
605− </data>
606− </dict>
607− <key>MonoBundle/System.IO.Pipelines.dll</key>
608− <dict>
609− <key>hash2</key>
610− <data>
611− TDMMkE72Pd+TrNhuw9Z3SqKzT4BSHLnA34kyJkDuezE=
612− </data>
613− </dict>
614− <key>MonoBundle/System.IO.Pipes.AccessControl.dll</key>
615− <dict>
616− <key>hash2</key>
617− <data>
618− HHY8YG+NdP9hQl4xKIU0PviYA7bhbMUhm/dXnYav7Ak=
619− </data>
620− </dict>
621− <key>MonoBundle/System.IO.Pipes.dll</key>
622− <dict>
623− <key>hash2</key>
624− <data>
625− 0xv5A8Iqlw6bZXTxxrvGSKUndz+9NzdOdtQFKs5rbQ0=
626− </data>
627− </dict>
628− <key>MonoBundle/System.IO.UnmanagedMemoryStream.dll</key>
629− <dict>
630− <key>hash2</key>
631− <data>
632− tyq7aBmwTzHPHPhP08ZouN3G0c9bEHnqmvTuRT4t39U=
633− </data>
634− </dict>
635− <key>MonoBundle/System.IO.dll</key>
636− <dict>
637− <key>hash2</key>
638− <data>
639− lkUD0QI1Ny9Q/i32lRAfSG8i5rnb/2DWaB8EtQbkAYw=
640− </data>
641− </dict>
642− <key>MonoBundle/System.Linq.AsyncEnumerable.dll</key>
643− <dict>
644− <key>hash2</key>
645− <data>
646− ggcE/MLWhSqIIt56yo1btp6z9TZwdzGBTKhM5bshETI=
647− </data>
648− </dict>
649− <key>MonoBundle/System.Linq.Expressions.dll</key>
650− <dict>
651− <key>hash2</key>
652− <data>
653− kD61b4hff0Ro0tVgoyKQql65sKEzn3Q7Rkoa+9mLyb8=
654− </data>
655− </dict>
656− <key>MonoBundle/System.Linq.Parallel.dll</key>
657− <dict>
658− <key>hash2</key>
659− <data>
660− skaEURFexhAW8NEaZPk+WKLu/dP/UEq3Y8FylNWttv0=
661− </data>
662− </dict>
663− <key>MonoBundle/System.Linq.Queryable.dll</key>
664− <dict>
665− <key>hash2</key>
666− <data>
667− afekDdUfJFtT5Twf9vzcgrylvQ/B5QF2hwC3rRGgbEQ=
668− </data>
669− </dict>
670− <key>MonoBundle/System.Linq.dll</key>
671− <dict>
672− <key>hash2</key>
673− <data>
674− t0YGLNlHx2UX8baKNQH2YvCvRgEuevrTV+qqFymjsUQ=
675− </data>
676− </dict>
677− <key>MonoBundle/System.Memory.dll</key>
678− <dict>
679− <key>hash2</key>
680− <data>
681− rSKH1M/iMLy9Myj6AvxJJ7FP8j2ZK2dojDfckOLCS4c=
682− </data>
683− </dict>
684− <key>MonoBundle/System.Net.Http.Json.dll</key>
685− <dict>
686− <key>hash2</key>
687− <data>
688− IFteg1fIA/V/02/BRcK6zPiAu5D8ACd20KZkLb0FvME=
689− </data>
690− </dict>
691− <key>MonoBundle/System.Net.Http.dll</key>
692− <dict>
693− <key>hash2</key>
694− <data>
695− apFV1YMV3tgnRPIXOdYKUZsDZ1cy32rlwFROqFpbldc=
696− </data>
697− </dict>
698− <key>MonoBundle/System.Net.HttpListener.dll</key>
699− <dict>
700− <key>hash2</key>
701− <data>
702− L/0jUdJVhRQTLwOMuhAAU9EcaK/NsTrrFwDc5O8u1GQ=
703− </data>
704− </dict>
705− <key>MonoBundle/System.Net.Mail.dll</key>
706− <dict>
707− <key>hash2</key>
708− <data>
709− ynXL5wTbDKMTuoaP4f0jyyXu5VYH8t/21PTYSKX5X20=
710− </data>
711− </dict>
712− <key>MonoBundle/System.Net.NameResolution.dll</key>
713− <dict>
714− <key>hash2</key>
715− <data>
716− n8M75mCHVWkbiBD6IkS6hK/XHMc4C0wLBe5Fb0KKurk=
717− </data>
718− </dict>
719− <key>MonoBundle/System.Net.NetworkInformation.dll</key>
720− <dict>
721− <key>hash2</key>
722− <data>
723− o30aRChZKORuF/MALn/x4EHZrNEikV909tfYr+xVk1k=
724− </data>
725− </dict>
726− <key>MonoBundle/System.Net.Ping.dll</key>
727− <dict>
728− <key>hash2</key>
729− <data>
730− 1Wzq0PcFeh0A2n/0WQzDt6UsfM2G1JN5oN/2REXzFaE=
731− </data>
732− </dict>
733− <key>MonoBundle/System.Net.Primitives.dll</key>
734− <dict>
735− <key>hash2</key>
736− <data>
737− sb/hvvjTqXR5E1dPGI5CRQRxortZGMltUj6O75HSAKY=
738− </data>
739− </dict>
740− <key>MonoBundle/System.Net.Quic.dll</key>
741− <dict>
742− <key>hash2</key>
743− <data>
744− M7ThJzlax7P87nwzRh3noP6AAs4/fuZZZds37dP1BjI=
745− </data>
746− </dict>
747− <key>MonoBundle/System.Net.Requests.dll</key>
748− <dict>
749− <key>hash2</key>
750− <data>
751− ZZ7cZ0aejFWs36Bf9WNfYuPrEsgWb+3WvInfcHPlw7k=
752− </data>
753− </dict>
754− <key>MonoBundle/System.Net.Security.dll</key>
755− <dict>
756− <key>hash2</key>
757− <data>
758− 84H5DGMvfDeA8K1AgWndkFFkX/BgPmRhwQQ/D+B86OQ=
759− </data>
760− </dict>
761− <key>MonoBundle/System.Net.ServerSentEvents.dll</key>
762− <dict>
763− <key>hash2</key>
764− <data>
765− GhccwLQZtL0NVTBYaL1SRNqKWuzEXmU0M7RnSBXNnbs=
766− </data>
767− </dict>
768− <key>MonoBundle/System.Net.ServicePoint.dll</key>
769− <dict>
770− <key>hash2</key>
771− <data>
772− QxwMMQ/rRwR+lY/rOkCFi6tKakhPGz4hZXSHefqHPaw=
773− </data>
774− </dict>
775− <key>MonoBundle/System.Net.Sockets.dll</key>
776− <dict>
777− <key>hash2</key>
778− <data>
779− YflOhTJHI17DtH/jLFJL0VdMyOuO+BhJPuKbvJ9gM3k=
780− </data>
781− </dict>
782− <key>MonoBundle/System.Net.WebClient.dll</key>
783− <dict>
784− <key>hash2</key>
785− <data>
786− +h7qG/BK1UTKpwTrP2PZZBN2itD+L63r1UV0GsE/GD4=
787− </data>
788− </dict>
789− <key>MonoBundle/System.Net.WebHeaderCollection.dll</key>
790− <dict>
791− <key>hash2</key>
792− <data>
793− VAbb5pHxW/9heJyI70b0y5o4az6u/t9LcKkXvtLEZdo=
794− </data>
795− </dict>
796− <key>MonoBundle/System.Net.WebProxy.dll</key>
797− <dict>
798− <key>hash2</key>
799− <data>
800− /sECBP/xpBnD2seFe3/l0PEf9K9LBPNHjvLp+3isLwg=
801− </data>
802− </dict>
803− <key>MonoBundle/System.Net.WebSockets.Client.dll</key>
804− <dict>
805− <key>hash2</key>
806− <data>
807− 2LqmFDDllHj54kuDwyjx4Bn9/TWh2CzYQDUD5WcA5eM=
808− </data>
809− </dict>
810− <key>MonoBundle/System.Net.WebSockets.dll</key>
811− <dict>
812− <key>hash2</key>
813− <data>
814− nFoUamo/I6pT2zFBoqO2ebLeM4BCLqIj99kcUhL4b18=
815− </data>
816− </dict>
817− <key>MonoBundle/System.Net.dll</key>
818− <dict>
819− <key>hash2</key>
820− <data>
821− uhKk+c05sdzsm4PQZ1zSB+GVsD9z1RQXI9p0AIC3KCw=
822− </data>
823− </dict>
824− <key>MonoBundle/System.Numerics.Vectors.dll</key>
825− <dict>
826− <key>hash2</key>
827− <data>
828− RVWMT5EpbuNhP5VOqDMRLZz8sqlcvGFIrLjbO6JPSQI=
829− </data>
830− </dict>
831− <key>MonoBundle/System.Numerics.dll</key>
832− <dict>
833− <key>hash2</key>
834− <data>
835− rS87O0oTPW8bx4pme9z1XkKIUy5E3czzGL7P48kG5LE=
836− </data>
837− </dict>
838− <key>MonoBundle/System.ObjectModel.dll</key>
839− <dict>
840− <key>hash2</key>
841− <data>
842− t8x4GXXQEFK1P9lTUlsmroNM8JX87JjSrEXispX9lx4=
843− </data>
844− </dict>
845− <key>MonoBundle/System.Private.CoreLib.aotdata.arm64</key>
846− <dict>
847− <key>hash2</key>
848− <data>
849− iWjgnzEGlyCTKyYk4hYcO7h0Kq6oL5Wh5T38nibiyhc=
850− </data>
851− </dict>
852− <key>MonoBundle/System.Private.CoreLib.dll</key>
853− <dict>
854− <key>hash2</key>
855− <data>
856− Yog22g1Fd5Q3GppRwHfIcOdacwYG45FxRN7LTnVjzAU=
857− </data>
858− </dict>
859− <key>MonoBundle/System.Private.DataContractSerialization.dll</key>
860− <dict>
861− <key>hash2</key>
862− <data>
863− rQwQWJm3NHqkFTF2y1tIJxHNuOfRFisc6CTeleNxdZ8=
864− </data>
865− </dict>
866− <key>MonoBundle/System.Private.Uri.dll</key>
867− <dict>
868− <key>hash2</key>
869− <data>
870− EQWicr6lfuFpEApMPw+ANl8NkbB6BZbOcw3ThBaHYHM=
871− </data>
872− </dict>
873− <key>MonoBundle/System.Private.Xml.Linq.dll</key>
874− <dict>
875− <key>hash2</key>
876− <data>
877− rUHCMDIfZI/0Bf0y3ohmuN4D16+AlPtC/i4TQsWn2ZU=
878− </data>
879− </dict>
880− <key>MonoBundle/System.Private.Xml.dll</key>
881− <dict>
882− <key>hash2</key>
883− <data>
884− 0X/kzcJMW/Tb14/l62yWR9MRbjE1dwe/8VB5qvDutrI=
885− </data>
886− </dict>
887− <key>MonoBundle/System.Reflection.DispatchProxy.dll</key>
888− <dict>
889− <key>hash2</key>
890− <data>
891− 5KPPfnks4SZ2UvuPD5wK2NJ3N0W85qHgqzjvTXlSobw=
892− </data>
893− </dict>
894− <key>MonoBundle/System.Reflection.Emit.ILGeneration.dll</key>
895− <dict>
896− <key>hash2</key>
897− <data>
898− +CcPrJySNrxq7vle8EvbZXliECNpllUger7oFcDVr1Q=
899− </data>
900− </dict>
901− <key>MonoBundle/System.Reflection.Emit.Lightweight.dll</key>
902− <dict>
903− <key>hash2</key>
904− <data>
905− t7rbXaB+yy85VPNuz1B/s8dGnij4nnvh0U01zvVvQT4=
906− </data>
907− </dict>
908− <key>MonoBundle/System.Reflection.Emit.dll</key>
909− <dict>
910− <key>hash2</key>
911− <data>
912− ktndAjgh+WfFhg8Xjh12dvKKFooPs3vWbD1TbIu3exk=
913− </data>
914− </dict>
915− <key>MonoBundle/System.Reflection.Extensions.dll</key>
916− <dict>
917− <key>hash2</key>
918− <data>
919− LmmyrZ5E+ro2FS4z8KXJS65rYNHSpi3/CLpsJrVcXMo=
920− </data>
921− </dict>
922− <key>MonoBundle/System.Reflection.Metadata.dll</key>
923− <dict>
924− <key>hash2</key>
925− <data>
926− K8gfJyNGGACVk4CcUYXvnRvrIshNOSkIg+tCzg30NUI=
927− </data>
928− </dict>
929− <key>MonoBundle/System.Reflection.Primitives.dll</key>
930− <dict>
931− <key>hash2</key>
932− <data>
933− 8cIHulpQN58qMEKIR7HW4iE/V2V29KOBBbzJcdmtKVU=
934− </data>
935− </dict>
936− <key>MonoBundle/System.Reflection.TypeExtensions.dll</key>
937− <dict>
938− <key>hash2</key>
939− <data>
940− G9mSjpQoO3kuO8NYgy+xJ0jMASfxUjjHKsJCWAoJ+VY=
941− </data>
942− </dict>
943− <key>MonoBundle/System.Reflection.dll</key>
944− <dict>
945− <key>hash2</key>
946− <data>
947− gzj3gXUSySImKDrg0HGqDNL6XZks/XO0iS/iTObWHoI=
948− </data>
949− </dict>
950− <key>MonoBundle/System.Resources.Reader.dll</key>
951− <dict>
952− <key>hash2</key>
953− <data>
954− An1Rp0e34Sfdy9j2saJOd8VwPRsdhaJf+OiRTEaZ1O4=
955− </data>
956− </dict>
957− <key>MonoBundle/System.Resources.ResourceManager.dll</key>
958− <dict>
959− <key>hash2</key>
960− <data>
961− GyC1JFjGII7N9iBh9Ly5Up9QJoytrgc2G+25IsvHGF8=
962− </data>
963− </dict>
964− <key>MonoBundle/System.Resources.Writer.dll</key>
965− <dict>
966− <key>hash2</key>
967− <data>
968− wkspxZml9V0z8zoPedg6wxjkIPty0b6OEzpygxb2bCU=
969− </data>
970− </dict>
971− <key>MonoBundle/System.Runtime.CompilerServices.Unsafe.dll</key>
972− <dict>
973− <key>hash2</key>
974− <data>
975− /hsX6H5+yGF92KmazuCjBwLxod9K/LXhMFoCQ3QPftY=
976− </data>
977− </dict>
978− <key>MonoBundle/System.Runtime.CompilerServices.VisualC.dll</key>
979− <dict>
980− <key>hash2</key>
981− <data>
982− vp/ge+Tu1eVCDxhIkHxTKU55m58MN6k+SBTdPESklUc=
983− </data>
984− </dict>
985− <key>MonoBundle/System.Runtime.Extensions.dll</key>
986− <dict>
987− <key>hash2</key>
988− <data>
989− OYsC3HNi8S8D8b/HANORJHPNkXNRV1YhcfN0865YDvg=
990− </data>
991− </dict>
992− <key>MonoBundle/System.Runtime.Handles.dll</key>
993− <dict>
994− <key>hash2</key>
995− <data>
996− pzDsqtOfbX1G13ISmQ9Ub8oZmHun8hnPT5dcKorGXL8=
997− </data>
998− </dict>
999− <key>MonoBundle/System.Runtime.InteropServices.JavaScript.dll</key>
1000− <dict>
1001− <key>hash2</key>
1002− <data>
1003− yYsjIbJmGZhc+VzM3P3tXRaINdHrPPNqdvFYnqJLZdM=
1004− </data>
1005− </dict>
1006− <key>MonoBundle/System.Runtime.InteropServices.RuntimeInformation.dll</key>
1007− <dict>
1008− <key>hash2</key>
1009− <data>
1010− a+JhGl94z+0SJdMEL9ClOyRl9WZn6mWAuoFwFnSjVSk=
1011− </data>
1012− </dict>
1013− <key>MonoBundle/System.Runtime.InteropServices.dll</key>
1014− <dict>
1015− <key>hash2</key>
1016− <data>
1017− KNwldhZAJon1SVlGcf8PWihyhrVTbkz2qYVNuLM5Qvo=
1018− </data>
1019− </dict>
1020− <key>MonoBundle/System.Runtime.Intrinsics.dll</key>
1021− <dict>
1022− <key>hash2</key>
1023− <data>
1024− ZaISvjpAEMK5Ob0btxTH8+jBw++wkFhSwRKOvqLM1ME=
1025− </data>
1026− </dict>
1027− <key>MonoBundle/System.Runtime.Loader.dll</key>
1028− <dict>
1029− <key>hash2</key>
1030− <data>
1031− i4RaU0e43R2sAoyd7kBzK2DykjExv6MiEiOApv4K9tg=
1032− </data>
1033− </dict>
1034− <key>MonoBundle/System.Runtime.Numerics.dll</key>
1035− <dict>
1036− <key>hash2</key>
1037− <data>
1038− RKNPtDmCdal5RYJbcvSPnG5/kZ1JMJIB84YAN1ytgTc=
1039− </data>
1040− </dict>
1041− <key>MonoBundle/System.Runtime.Serialization.Formatters.dll</key>
1042− <dict>
1043− <key>hash2</key>
1044− <data>
1045− F46LSSeCFEKDUFu9UMGHjC9lEiaQHegTtUtSnVHA9hc=
1046− </data>
1047− </dict>
1048− <key>MonoBundle/System.Runtime.Serialization.Json.dll</key>
1049− <dict>
1050− <key>hash2</key>
1051− <data>
1052− aq371RXuym+H2thADUK2iLSrtybXt2eT/pxkVNj37Qw=
1053− </data>
1054− </dict>
1055− <key>MonoBundle/System.Runtime.Serialization.Primitives.dll</key>
1056− <dict>
1057− <key>hash2</key>
1058− <data>
1059− Z2QUJC+SUsmQ3GhpUbLUJ4v+BTvixXkMbix1kHJxDLo=
1060− </data>
1061− </dict>
1062− <key>MonoBundle/System.Runtime.Serialization.Xml.dll</key>
1063− <dict>
1064− <key>hash2</key>
1065− <data>
1066− WI+gKBP6hAx2cBW3fGfV7bwI4/t3jjTERkhHbCpLM4E=
1067− </data>
1068− </dict>
1069− <key>MonoBundle/System.Runtime.Serialization.dll</key>
1070− <dict>
1071− <key>hash2</key>
1072− <data>
1073− mx6fLUq/1lKO2+6TrRmrnJBJhoK30txaRiM0oPRdmKc=
1074− </data>
1075− </dict>
1076− <key>MonoBundle/System.Runtime.dll</key>
1077− <dict>
1078− <key>hash2</key>
1079− <data>
1080− S1wKC9NkfJELprjbWF1jrPvXLGQgww+sBMO+A+YwcKo=
1081− </data>
1082− </dict>
1083− <key>MonoBundle/System.Security.AccessControl.dll</key>
1084− <dict>
1085− <key>hash2</key>
1086− <data>
1087− 0yp4mRHOXhFNOvWOZC8w3kOfedFA61SOiSXjLqNEGik=
1088− </data>
1089− </dict>
1090− <key>MonoBundle/System.Security.Claims.dll</key>
1091− <dict>
1092− <key>hash2</key>
1093− <data>
1094− tJGG6N9SG2FAA0olqn8wpu2fhTwxJghmJIlkGj8slX0=
1095− </data>
1096− </dict>
1097− <key>MonoBundle/System.Security.Cryptography.Algorithms.dll</key>
1098− <dict>
1099− <key>hash2</key>
1100− <data>
1101− kcZNS/DdmizBqJOjZcCwq+z3+Zgc3dGaMkxJIf/2bgs=
1102− </data>
1103− </dict>
1104− <key>MonoBundle/System.Security.Cryptography.Cng.dll</key>
1105− <dict>
1106− <key>hash2</key>
1107− <data>
1108− fOaRuWJWsctHNE4V1oBGMfkieB/Jd5EoLNsdCyjfO1Y=
1109− </data>
1110− </dict>
1111− <key>MonoBundle/System.Security.Cryptography.Csp.dll</key>
1112− <dict>
1113− <key>hash2</key>
1114− <data>
1115− 3OF8XXYHaGf2mvqpHNz3bJJfFFs56DH2274uqjKh2V8=
1116− </data>
1117− </dict>
1118− <key>MonoBundle/System.Security.Cryptography.Encoding.dll</key>
1119− <dict>
1120− <key>hash2</key>
1121− <data>
1122− /+wGXUeIDXTskeM4mFCvOUPjMCNcbC7zJaGbgjaL56s=
1123− </data>
1124− </dict>
1125− <key>MonoBundle/System.Security.Cryptography.OpenSsl.dll</key>
1126− <dict>
1127− <key>hash2</key>
1128− <data>
1129− uPzJKNWwtqjfcVC2sZiw6wMgBQHxlv1rzqoIAHIGDoo=
1130− </data>
1131− </dict>
1132− <key>MonoBundle/System.Security.Cryptography.Primitives.dll</key>
1133− <dict>
1134− <key>hash2</key>
1135− <data>
1136− zwI59wj/iUQbLCh7cq12PB2QRis25rySKfXZB5zmbvs=
1137− </data>
1138− </dict>
1139− <key>MonoBundle/System.Security.Cryptography.X509Certificates.dll</key>
1140− <dict>
1141− <key>hash2</key>
1142− <data>
1143− ksBKyKd9KkpzwLGkbwGkD24DieU8/SxY9lhpEbaQC/w=
1144− </data>
1145− </dict>
1146− <key>MonoBundle/System.Security.Cryptography.dll</key>
1147− <dict>
1148− <key>hash2</key>
1149− <data>
1150− Nd6130C+ulc1Y84VNEtClX3imaoflWPEefEw9Rf14pI=
1151− </data>
1152− </dict>
1153− <key>MonoBundle/System.Security.Principal.Windows.dll</key>
1154− <dict>
1155− <key>hash2</key>
1156− <data>
1157− MZB7H9Fu4h11V1zG5p+g3oE/TpMbsF2lUZNgg1NjAWc=
1158− </data>
1159− </dict>
1160− <key>MonoBundle/System.Security.Principal.dll</key>
1161− <dict>
1162− <key>hash2</key>
1163− <data>
1164− 5+3LZjo9qMfovE1FkakcuKAA0NQK/5LjvuEbCfiEzeE=
1165− </data>
1166− </dict>
1167− <key>MonoBundle/System.Security.SecureString.dll</key>
1168− <dict>
1169− <key>hash2</key>
1170− <data>
1171− uelNb0LYxkzoChohZwvXjoAFDUdQ5yrYyVzvO5lW49g=
1172− </data>
1173− </dict>
1174− <key>MonoBundle/System.Security.dll</key>
1175− <dict>
1176− <key>hash2</key>
1177− <data>
1178− QeUHxP0WEAykdZmLijXRor/Ys8CbnOdipI4ByatRHpc=
1179− </data>
1180− </dict>
1181− <key>MonoBundle/System.ServiceModel.Web.dll</key>
1182− <dict>
1183− <key>hash2</key>
1184− <data>
1185− /i2WuFo0YYCzrBdWH68kPLu5+agiMev/Z4LUCPdWdbI=
1186− </data>
1187− </dict>
1188− <key>MonoBundle/System.ServiceProcess.dll</key>
1189− <dict>
1190− <key>hash2</key>
1191− <data>
1192− 5tLiIygDWo4cGQWoUv5donHUIjO/IbhSLRmTHSQnD3k=
1193− </data>
1194− </dict>
1195− <key>MonoBundle/System.Text.Encoding.CodePages.dll</key>
1196− <dict>
1197− <key>hash2</key>
1198− <data>
1199− G+V1feWX0WcNOsTO4hBvhspoNIyOy1UAPXRcV50DDK8=
1200− </data>
1201− </dict>
1202− <key>MonoBundle/System.Text.Encoding.Extensions.dll</key>
1203− <dict>
1204− <key>hash2</key>
1205− <data>
1206− FyM/8LDuyXBmU375xusFKBaXmBb+wVL30OF3vaELOM8=
1207− </data>
1208− </dict>
1209− <key>MonoBundle/System.Text.Encoding.dll</key>
1210− <dict>
1211− <key>hash2</key>
1212− <data>
1213− KKFJZPhkM08PKfYWiuY/WdJpKj6rCwX9S+hwf1nDFa8=
1214− </data>
1215− </dict>
1216− <key>MonoBundle/System.Text.Encodings.Web.dll</key>
1217− <dict>
1218− <key>hash2</key>
1219− <data>
1220− 80k3xwWJTJ+zhaQx+1taiBKEYyCHKdLD0RaKaagNqCI=
1221− </data>
1222− </dict>
1223− <key>MonoBundle/System.Text.Json.dll</key>
1224− <dict>
1225− <key>hash2</key>
1226− <data>
1227− 3gJDLaaX7ioLIWewMZYIfQnHCU07XNWUAA1qFLHGEms=
1228− </data>
1229− </dict>
1230− <key>MonoBundle/System.Text.RegularExpressions.dll</key>
1231− <dict>
1232− <key>hash2</key>
1233− <data>
1234− R/hPHZsn0KXQpVTo1Cq8BnQcZfBLba+bKswfEcMcZSk=
1235− </data>
1236− </dict>
1237− <key>MonoBundle/System.Threading.AccessControl.dll</key>
1238− <dict>
1239− <key>hash2</key>
1240− <data>
1241− VSRfQmXXHEzlX0Y1Y7RDqsdpP3ZHXuo4k3daTfGoRrw=
1242− </data>
1243− </dict>
1244− <key>MonoBundle/System.Threading.Channels.dll</key>
1245− <dict>
1246− <key>hash2</key>
1247− <data>
1248− BwB8whabCCLiIeycG2a5NpEFW4gjJWZBioilX50UojM=
1249− </data>
1250− </dict>
1251− <key>MonoBundle/System.Threading.Overlapped.dll</key>
1252− <dict>
1253− <key>hash2</key>
1254− <data>
1255− jNt1SAmziKqEzkp4/8dgdBGpZRWAyLSU23PpJEvE+kE=
1256− </data>
1257− </dict>
1258− <key>MonoBundle/System.Threading.Tasks.Dataflow.dll</key>
1259− <dict>
1260− <key>hash2</key>
1261− <data>
1262− nX89vHdV8zy02qIZ+KJjH/SeItBBsODt56C8sy83s3M=
1263− </data>
1264− </dict>
1265− <key>MonoBundle/System.Threading.Tasks.Extensions.dll</key>
1266− <dict>
1267− <key>hash2</key>
1268− <data>
1269− lbquINWlGwdzUMOEEUYl75FVwqk75tjWpYf91O/EyVc=
1270− </data>
1271− </dict>
1272− <key>MonoBundle/System.Threading.Tasks.Parallel.dll</key>
1273− <dict>
1274− <key>hash2</key>
1275− <data>
1276− sRSphJYodHA9kV4DYo24rPSpFgjyWPZnenjKm9SUhKc=
1277− </data>
1278− </dict>
1279− <key>MonoBundle/System.Threading.Tasks.dll</key>
1280− <dict>
1281− <key>hash2</key>
1282− <data>
1283− aPIG1V13LbQgeT3cI59P15l9bicXpl3OmrIx2hdBxpM=
1284− </data>
1285− </dict>
1286− <key>MonoBundle/System.Threading.Thread.dll</key>
1287− <dict>
1288− <key>hash2</key>
1289− <data>
1290− FxazsK9o4gP3U53MqpV1nkUwy6BbyRh3C7WJL2gJM3o=
1291− </data>
1292− </dict>
1293− <key>MonoBundle/System.Threading.ThreadPool.dll</key>
1294− <dict>
1295− <key>hash2</key>
1296− <data>
1297− 78LjZzWgvpBiz7uUHmaK7njuqH2pLZNRPGFsEMH9hLw=
1298− </data>
1299− </dict>
1300− <key>MonoBundle/System.Threading.Timer.dll</key>
1301− <dict>
1302− <key>hash2</key>
1303− <data>
1304− EYMmmbKOfXKVyf42Pz0UtcSTuC2AlViLpGsX1Mr0/M0=
1305− </data>
1306− </dict>
1307− <key>MonoBundle/System.Threading.dll</key>
1308− <dict>
1309− <key>hash2</key>
1310− <data>
1311− ICYrTOE6XN9xc9rdf9aNVVw7x/Xjiern4thN8TtL98I=
1312− </data>
1313− </dict>
1314− <key>MonoBundle/System.Transactions.Local.dll</key>
1315− <dict>
1316− <key>hash2</key>
1317− <data>
1318− PHz+fNabdPagIQW0lYzcIdJ0C6wpIFdJeM6OMxr3oTM=
1319− </data>
1320− </dict>
1321− <key>MonoBundle/System.Transactions.dll</key>
1322− <dict>
1323− <key>hash2</key>
1324− <data>
1325− 3vfdVIr9Ya3Owr+JX26uf9arKTa8xvQYASUGPGsF07s=
1326− </data>
1327− </dict>
1328− <key>MonoBundle/System.ValueTuple.dll</key>
1329− <dict>
1330− <key>hash2</key>
1331− <data>
1332− 9DTAsZLHkHtwUmer1AbcN1N/PBWFCQDMSIxHUgk1KcA=
1333− </data>
1334− </dict>
1335− <key>MonoBundle/System.Web.HttpUtility.dll</key>
1336− <dict>
1337− <key>hash2</key>
1338− <data>
1339− eDCH0nRnsU6GvSDo9Bfm8dXrwd7+u6cJ6/BAtg4Jmxo=
1340− </data>
1341− </dict>
1342− <key>MonoBundle/System.Web.dll</key>
1343− <dict>
1344− <key>hash2</key>
1345− <data>
1346− gTIZ0Mg7+G40Xfxhkiygi9gOXObxxCme2lRrmPKQams=
1347− </data>
1348− </dict>
1349− <key>MonoBundle/System.Windows.dll</key>
1350− <dict>
1351− <key>hash2</key>
1352− <data>
1353− dr1AxxcoKdHJEBiRdZFhqkHq8HIYTlsBW/G05b9f0NY=
1354− </data>
1355− </dict>
1356− <key>MonoBundle/System.Xml.Linq.dll</key>
1357− <dict>
1358− <key>hash2</key>
1359− <data>
1360− we3YmOqoy7NRJWaF1uR+BqP3FmVmPYNGD3Bc7HWsLJU=
1361− </data>
1362− </dict>
1363− <key>MonoBundle/System.Xml.ReaderWriter.dll</key>
1364− <dict>
1365− <key>hash2</key>
1366− <data>
1367− dytzSHDBp1k3FRI2GOYm2HcILUDmzQLMBQexoqbkI00=
1368− </data>
1369− </dict>
1370− <key>MonoBundle/System.Xml.Serialization.dll</key>
1371− <dict>
1372− <key>hash2</key>
1373− <data>
1374− IpH5/ius/6SsVcQKqhRmphfL2GLD5hZEcMpXHegBLNY=
1375− </data>
1376− </dict>
1377− <key>MonoBundle/System.Xml.XDocument.dll</key>
1378− <dict>
1379− <key>hash2</key>
1380− <data>
1381− hsPA8fQhr9hBjmcASTF7JfQojF26IJ1mUcT4TNGYQEY=
1382− </data>
1383− </dict>
1384− <key>MonoBundle/System.Xml.XPath.XDocument.dll</key>
1385− <dict>
1386− <key>hash2</key>
1387− <data>
1388− fkDKGbFtL7HCdfDZulgHsE0UGMBqTsIfnjRZIAfS284=
1389− </data>
1390− </dict>
1391− <key>MonoBundle/System.Xml.XPath.dll</key>
1392− <dict>
1393− <key>hash2</key>
1394− <data>
1395− j5tM2LjbxY1maj3i8f/8sOJY0ct0y3k2B7p6sH+dsjw=
1396− </data>
1397− </dict>
1398− <key>MonoBundle/System.Xml.XmlDocument.dll</key>
1399− <dict>
1400− <key>hash2</key>
1401− <data>
1402− xo2SZrULa9cCS/5X9ddHfjcXoVUO3VcOpMlUJrfgBUU=
1403− </data>
1404− </dict>
1405− <key>MonoBundle/System.Xml.XmlSerializer.dll</key>
1406− <dict>
1407− <key>hash2</key>
1408− <data>
1409− gn1VlIdfPVZc67/zlt/9iGKKBUHqX1LmqgGGsidrjr4=
1410− </data>
1411− </dict>
1412− <key>MonoBundle/System.Xml.dll</key>
1413− <dict>
1414− <key>hash2</key>
1415− <data>
1416− 718XDtT9awFmPW0h+nxiv3qDopJmV/dPQ0CjtMgiDBk=
1417− </data>
1418− </dict>
1419− <key>MonoBundle/System.dll</key>
1420− <dict>
1421− <key>hash2</key>
1422− <data>
1423− XmFPcfu6jBkeRqaAnSOBRG+aurwmtXljsHa0sGaGWGQ=
1424− </data>
1425− </dict>
1426− <key>MonoBundle/WindowsBase.dll</key>
1427− <dict>
1428− <key>hash2</key>
1429− <data>
1430− YmkHtfQ9Oufap/2IPBLR4m3bA+MNO7WTbew+eTCDebI=
1431− </data>
1432− </dict>
1433− <key>MonoBundle/ar/Microsoft.Maui.Controls.resources.dll</key>
1434− <dict>
1435− <key>hash2</key>
1436− <data>
1437− emToJWm83/fCpZmCHV+HeFOksBb6ucUuF0ldIYFBn2I=
1438− </data>
1439− </dict>
1440− <key>MonoBundle/ca/Microsoft.Maui.Controls.resources.dll</key>
1441− <dict>
1442− <key>hash2</key>
1443− <data>
1444− DFPj1tjdH8h+9VBekDZFKj5ag52KAxLOBoymKkrcE9A=
1445− </data>
1446− </dict>
1447− <key>MonoBundle/cs/FSharp.Core.resources.dll</key>
1448− <dict>
1449− <key>hash2</key>
1450− <data>
1451− VkqaHJrNVb4fVHa3wi3FGw7ubxslTY+cMGU7Sv+xPwM=
1452− </data>
1453− </dict>
1454− <key>MonoBundle/cs/Microsoft.Maui.Controls.resources.dll</key>
1455− <dict>
1456− <key>hash2</key>
1457− <data>
1458− eQEHuvyDz6bhem/2PaNndWoSxJRcEfPxIJRhBFB+Tlc=
1459− </data>
1460− </dict>
1461− <key>MonoBundle/da/Microsoft.Maui.Controls.resources.dll</key>
1462− <dict>
1463− <key>hash2</key>
1464− <data>
1465− AXbWGLvb++eB8Ml/L0tsLIXvrTvFltkjX4l4o1xSoLQ=
1466− </data>
1467− </dict>
1468− <key>MonoBundle/de/FSharp.Core.resources.dll</key>
1469− <dict>
1470− <key>hash2</key>
1471− <data>
1472− zdTNYDN/qTtbFPhTXtI/BVyoU4W9Vvqa6EiCJoYzFg0=
1473− </data>
1474− </dict>
1475− <key>MonoBundle/de/Microsoft.Maui.Controls.resources.dll</key>
1476− <dict>
1477− <key>hash2</key>
1478− <data>
1479− tUmIAH/mjYuwIszLUM7XIcofMnQbXh3AdESOhHGHUpo=
1480− </data>
1481− </dict>
1482− <key>MonoBundle/el/Microsoft.Maui.Controls.resources.dll</key>
1483− <dict>
1484− <key>hash2</key>
1485− <data>
1486− 5rMLL9a8jD9ZeH6iICPqfak33GQ49b/NvnEmVEGc49A=
1487− </data>
1488− </dict>
1489− <key>MonoBundle/es/FSharp.Core.resources.dll</key>
1490− <dict>
1491− <key>hash2</key>
1492− <data>
1493− ofqwMwuZCa1sGUcukCNbnzUGI6qbay+ONdjkIUFAhxg=
1494− </data>
1495− </dict>
1496− <key>MonoBundle/es/Microsoft.Maui.Controls.resources.dll</key>
1497− <dict>
1498− <key>hash2</key>
1499− <data>
1500− hUPeoEYzz/eU+8IouEHE4QJBVxkeynFBHNmuxHRMFkk=
1501− </data>
1502− </dict>
1503− <key>MonoBundle/fi/Microsoft.Maui.Controls.resources.dll</key>
1504− <dict>
1505− <key>hash2</key>
1506− <data>
1507− Ybesxhwql984F3/vxDM9lnzy9es4U5s1G2eahhgEzvM=
1508− </data>
1509− </dict>
1510− <key>MonoBundle/fr/FSharp.Core.resources.dll</key>
1511− <dict>
1512− <key>hash2</key>
1513− <data>
1514− 2OIvixmGkOWf+iX9NarMEQMdSfMqebTlpH5/lGugdRU=
1515− </data>
1516− </dict>
1517− <key>MonoBundle/fr/Microsoft.Maui.Controls.resources.dll</key>
1518− <dict>
1519− <key>hash2</key>
1520− <data>
1521− iOpuXHt45cfwThk4AypfrS9lloCsjiOtBY+cUO10+O0=
1522− </data>
1523− </dict>
1524− <key>MonoBundle/he/Microsoft.Maui.Controls.resources.dll</key>
1525− <dict>
1526− <key>hash2</key>
1527− <data>
1528− QejF7/BYOiea8s9BPCs7JhwIGT+oT9TlUh3k1FvMrFU=
1529− </data>
1530− </dict>
1531− <key>MonoBundle/hi/Microsoft.Maui.Controls.resources.dll</key>
1532− <dict>
1533− <key>hash2</key>
1534− <data>
1535− drcOA+yliiSTbS81l9+neqq89D8IlARAszarpHHB4bg=
1536− </data>
1537− </dict>
1538− <key>MonoBundle/hr/Microsoft.Maui.Controls.resources.dll</key>
1539− <dict>
1540− <key>hash2</key>
1541− <data>
1542− uA5YM0/wXhoruIjMcepV5ZojStXqJL2gQyX0DIAfqKI=
1543− </data>
1544− </dict>
1545− <key>MonoBundle/hu/Microsoft.Maui.Controls.resources.dll</key>
1546− <dict>
1547− <key>hash2</key>
1548− <data>
1549− Yit/hctbX7+a60iWubu91/YkqhILaPjV+xIGHI5szGw=
1550− </data>
1551− </dict>
1552− <key>MonoBundle/id/Microsoft.Maui.Controls.resources.dll</key>
1553− <dict>
1554− <key>hash2</key>
1555− <data>
1556− vjzTLT6zvhyFtYvdKcDDgaXYMfxt4ISd+Py8cEW0ggg=
1557− </data>
1558− </dict>
1559− <key>MonoBundle/it/FSharp.Core.resources.dll</key>
1560− <dict>
1561− <key>hash2</key>
1562− <data>
1563− C9xXG8jRo1WmJsgY7SYC8WZGibK95p2umRNGGtzsvJY=
1564− </data>
1565− </dict>
1566− <key>MonoBundle/it/Microsoft.Maui.Controls.resources.dll</key>
1567− <dict>
1568− <key>hash2</key>
1569− <data>
1570− xOWwoPQCBXrzvD3UBBbmrCBOu513unC0h2GwNbQj6gs=
1571− </data>
1572− </dict>
1573− <key>MonoBundle/ja/FSharp.Core.resources.dll</key>
1574− <dict>
1575− <key>hash2</key>
1576− <data>
1577− vZSg2scpJMaacFae5SII8/LfdZTB1R+gauUzbntH4YA=
1578− </data>
1579− </dict>
1580− <key>MonoBundle/ja/Microsoft.Maui.Controls.resources.dll</key>
1581− <dict>
1582− <key>hash2</key>
1583− <data>
1584− XKjQ7JaN1fkqoEjYyvbomFVloeMl0uGz/jvNazxHz3w=
1585− </data>
1586− </dict>
1587− <key>MonoBundle/ko/FSharp.Core.resources.dll</key>
1588− <dict>
1589− <key>hash2</key>
1590− <data>
1591− /S9K08mWH/zBnC09UZSsr/aXdV8QYUNHp9MRKgaszjU=
1592− </data>
1593− </dict>
1594− <key>MonoBundle/ko/Microsoft.Maui.Controls.resources.dll</key>
1595− <dict>
1596− <key>hash2</key>
1597− <data>
1598− 9lHc7HN3sLde+gLqwPOfmRkiAp0QAjz8p0/QRbdE1r0=
1599− </data>
1600− </dict>
1601− <key>MonoBundle/ms/Microsoft.Maui.Controls.resources.dll</key>
1602− <dict>
1603− <key>hash2</key>
1604− <data>
1605− FlklCLtZAIL8mdQYOgqbXkShBlp00rNKK0JJprjfnYU=
1606− </data>
1607− </dict>
1608− <key>MonoBundle/mscorlib.dll</key>
1609− <dict>
1610− <key>hash2</key>
1611− <data>
1612− LuWFATOeiipdMdmDGdI2VDizYuF8rhyahtezrjb5gTc=
1613− </data>
1614− </dict>
1615− <key>MonoBundle/nb/Microsoft.Maui.Controls.resources.dll</key>
1616− <dict>
1617− <key>hash2</key>
1618− <data>
1619− ZaU6GhF2t+bftxchr7pPXEIUitzBv7FEpvF0xF8wIN4=
1620− </data>
1621− </dict>
1622− <key>MonoBundle/netstandard.dll</key>
1623− <dict>
1624− <key>hash2</key>
1625− <data>
1626− CUZuGQydy/zOO56/7NqKaxShCiNqWxKbmmYSHZNTXUA=
1627− </data>
1628− </dict>
1629− <key>MonoBundle/nl/Microsoft.Maui.Controls.resources.dll</key>
1630− <dict>
1631− <key>hash2</key>
1632− <data>
1633− 5iN21Zs+NZg/EIHtxrS0wBJVJFn/B5fMdmlXGC7U8Rk=
1634− </data>
1635− </dict>
1636− <key>MonoBundle/pl/FSharp.Core.resources.dll</key>
1637− <dict>
1638− <key>hash2</key>
1639− <data>
1640− IsRxIzI0XoS4JseW/FSc2ZW5qtHMJYWsrAwJYm3Xxuk=
1641− </data>
1642− </dict>
1643− <key>MonoBundle/pl/Microsoft.Maui.Controls.resources.dll</key>
1644− <dict>
1645− <key>hash2</key>
1646− <data>
1647− 1NerY/ZqyZKx/DoQqBoR1E/M4xal/ZhlmzYN2nL2z80=
1648− </data>
1649− </dict>
1650− <key>MonoBundle/pt-BR/FSharp.Core.resources.dll</key>
1651− <dict>
1652− <key>hash2</key>
1653− <data>
1654− KnCEVXAEcQMOVT4OnQvgEb/fQi2jKS+HtQn+7MfKTkQ=
1655− </data>
1656− </dict>
1657− <key>MonoBundle/pt-BR/Microsoft.Maui.Controls.resources.dll</key>
1658− <dict>
1659− <key>hash2</key>
1660− <data>
1661− 3u+H2pdXytE5+3v7kK1k/N8ByQC7BbgoLirMIi5iQWY=
1662− </data>
1663− </dict>
1664− <key>MonoBundle/pt/Microsoft.Maui.Controls.resources.dll</key>
1665− <dict>
1666− <key>hash2</key>
1667− <data>
1668− xiavIGkmqAuFvAy7DozeabJOy50rR2DxVd8Bov/iGBc=
1669− </data>
1670− </dict>
1671− <key>MonoBundle/ro/Microsoft.Maui.Controls.resources.dll</key>
1672− <dict>
1673− <key>hash2</key>
1674− <data>
1675− SOgexsrLzRNXlI/4vWgoDLhhMWop4l2EPZBrqmdaoQ4=
1676− </data>
1677− </dict>
1678− <key>MonoBundle/ru/FSharp.Core.resources.dll</key>
1679− <dict>
1680− <key>hash2</key>
1681− <data>
1682− CP1dcW14PWxQx+vGWxkGeA9uI6yin1QwTQEzD5XI1bg=
1683− </data>
1684− </dict>
1685− <key>MonoBundle/ru/Microsoft.Maui.Controls.resources.dll</key>
1686− <dict>
1687− <key>hash2</key>
1688− <data>
1689− l1FX9HgPPnIUsXl15r2ZlIPCLlrr2kBI6KHADruye5g=
1690− </data>
1691− </dict>
1692− <key>MonoBundle/runtimeconfig.bin</key>
1693− <dict>
1694− <key>hash2</key>
1695− <data>
1696− /AVw5gJwPJnYK5roVnWKdvS9SvdnWVEKw2qoE+K9ESY=
1697− </data>
1698− </dict>
1699− <key>MonoBundle/sk/Microsoft.Maui.Controls.resources.dll</key>
1700− <dict>
1701− <key>hash2</key>
1702− <data>
1703− lPaFF5x58kFQRtGM207mNoko2YTlMXwK7bj5Ub7xN3I=
1704− </data>
1705− </dict>
1706− <key>MonoBundle/sv/Microsoft.Maui.Controls.resources.dll</key>
1707− <dict>
1708− <key>hash2</key>
1709− <data>
1710− i7OIlfMh3e2NCIoS9L6yrClJ/wvgAsgJNyt8mnGasWA=
1711− </data>
1712− </dict>
1713− <key>MonoBundle/th/Microsoft.Maui.Controls.resources.dll</key>
1714− <dict>
1715− <key>hash2</key>
1716− <data>
1717− mWtkwmiZj+peoftd3TpP63UQt7fWbsJeL5j/fn+xgRE=
1718− </data>
1719− </dict>
1720− <key>MonoBundle/tr/FSharp.Core.resources.dll</key>
1721− <dict>
1722− <key>hash2</key>
1723− <data>
1724− 8zZ7jRFk/XKiJI18J0uXb2RYQc4Y4wfeOUe8uBK9Hjc=
1725− </data>
1726− </dict>
1727− <key>MonoBundle/tr/Microsoft.Maui.Controls.resources.dll</key>
1728− <dict>
1729− <key>hash2</key>
1730− <data>
1731− 5g1eEp49EItEO9rV8860z3ICZ70CKi7wG+kqilFGP3E=
1732− </data>
1733− </dict>
1734− <key>MonoBundle/uk/Microsoft.Maui.Controls.resources.dll</key>
1735− <dict>
1736− <key>hash2</key>
1737− <data>
1738− pABGPb+gGluQ4+stoSVyvInd1XimgAvusXl7U8SXGsE=
1739− </data>
1740− </dict>
1741− <key>MonoBundle/vi/Microsoft.Maui.Controls.resources.dll</key>
1742− <dict>
1743− <key>hash2</key>
1744− <data>
1745− MofCe7Mp2A3jJOQ7tiCdgQd2KoKz8pJ7iQCIHgTGY+A=
1746− </data>
1747− </dict>
1748− <key>MonoBundle/zh-HK/Microsoft.Maui.Controls.resources.dll</key>
1749− <dict>
1750− <key>hash2</key>
1751− <data>
1752− QVTBdSdYmu/8RnKl+GvDYwd7np7Ao16hSD3Jv1nKiwA=
1753− </data>
1754− </dict>
1755− <key>MonoBundle/zh-Hans/FSharp.Core.resources.dll</key>
1756− <dict>
1757− <key>hash2</key>
1758− <data>
1759− +ALffgi5kZSiUOnRG2r17eqNY98Ko2u+FAohaeIniKU=
1760− </data>
1761− </dict>
1762− <key>MonoBundle/zh-Hans/Microsoft.Maui.Controls.resources.dll</key>
1763− <dict>
1764− <key>hash2</key>
1765− <data>
1766− O+yZ+kwD/O/AybKdt+0ypL3m184R/N/6LpuqBPxP774=
1767− </data>
1768− </dict>
1769− <key>MonoBundle/zh-Hant/FSharp.Core.resources.dll</key>
1770− <dict>
1771− <key>hash2</key>
1772− <data>
1773− FkNrHqBt3ImqRKRLM8DK5cTDjzUxExgbDuTrtyegNyM=
1774− </data>
1775− </dict>
1776− <key>MonoBundle/zh-Hant/Microsoft.Maui.Controls.resources.dll</key>
1777− <dict>
1778− <key>hash2</key>
1779− <data>
1780− VbM9e2KRtDEWNkJ7TxbbZeXGVTl3+E1ZId4tAE3EzZY=
1781− </data>
1782− </dict>
1783− <key>Resources/AboutAssets.txt</key>
1784− <dict>
1785− <key>hash2</key>
1786− <data>
1787− t4We5YMjGmD/FdBmcXlXrw2x8ZFYFpbHMqMJYtbO1ZY=
1788− </data>
1789− </dict>
1790− <key>Resources/Assets.car</key>
1791− <dict>
1792− <key>hash2</key>
1793− <data>
1794− HfYxSjf/+d0hBTO933j7O0S+icn+eoL8QQEDzydpDZM=
1795− </data>
1796− </dict>
1797− <key>Resources/MauiInfo.plist</key>
1798− <dict>
1799− <key>hash2</key>
1800− <data>
1801− tx0KXqEC+DvcCGyogQTEQWHcCWJYYqH24NtPwhpQEjo=
1802− </data>
1803− </dict>
1804− <key>Resources/MonoTouchDebugConfiguration.txt</key>
1805− <dict>
1806− <key>hash2</key>
1807− <data>
1808− RS51BO98d+zhJWK1abJOyD5jB4nYJnWJPtL2DZyA/zw=
1809− </data>
1810− </dict>
1811− <key>Resources/OpenSans-Regular.ttf</key>
1812− <dict>
1813− <key>hash2</key>
1814− <data>
1815− tl7OHN/D52BMpjI4R9aX8VQoF1XFO1od+lZMHvU3xIs=
1816− </data>
1817− </dict>
1818− <key>Resources/OpenSans-Semibold.ttf</key>
1819− <dict>
1820− <key>hash2</key>
1821− <data>
1822− Wj0G8EOuLoTef+HODHHGoGAMoKmXCxRPdZP25iMe+5Y=
1823− </data>
1824− </dict>
1825− <key>Resources/appicon.icns</key>
1826− <dict>
1827− <key>hash2</key>
1828− <data>
1829− 62G9rft1kp+00mHbpp5l5+SsO5lPoGjgBat+3xXTQVw=
1830− </data>
1831− </dict>
1832− <key>Resources/dotnet_bot.png</key>
1833− <dict>
1834− <key>hash2</key>
1835− <data>
1836− w448RaO4b/5+lHSwNcjzEA9gdDOUT+GBdg1oPaZXNEU=
1837− </data>
1838− </dict>
1839− <key>Resources/dotnet_bot@2x.png</key>
1840− <dict>
1841− <key>hash2</key>
1842− <data>
1843− 4PYg5dxRfjL+aOhgJhoJeUhYmIykccvobditHOyHh2Q=
1844− </data>
1845− </dict>
1846− <key>Resources/dotnet_bot@3x.png</key>
1847− <dict>
1848− <key>hash2</key>
1849− <data>
1850− /SFENCPPsp1Yo7TyezWGBYqhyOLp2UYMcmcjN7dKg2I=
1851− </data>
1852− </dict>
1853− <key>Resources/xml/microsoft_maui_essentials_fileprovider_file_paths.xml</key>
1854− <dict>
1855− <key>hash2</key>
1856− <data>
1857− W4mBx+OWozujR6fIlOuqppzspq5DXmkX1Oo5zBuPD6Q=
1858− </data>
1859− </dict>
1860− </dict>
1861− <key>rules</key>
1862− <dict>
1863− <key>^Resources/</key>
1864− <true/>
1865− <key>^Resources/.*\.lproj/</key>
1866− <dict>
1867− <key>optional</key>
1868− <true/>
1869− <key>weight</key>
1870− <real>1000</real>
1871− </dict>
1872− <key>^Resources/.*\.lproj/locversion.plist$</key>
1873− <dict>
1874− <key>omit</key>
1875− <true/>
1876− <key>weight</key>
1877− <real>1100</real>
1878− </dict>
1879− <key>^Resources/Base\.lproj/</key>
1880− <dict>
1881− <key>weight</key>
1882− <real>1010</real>
1883− </dict>
1884− <key>^version.plist$</key>
1885− <true/>
1886− </dict>
1887− <key>rules2</key>
1888− <dict>
1889− <key>.*\.dSYM($|/)</key>
1890− <dict>
1891− <key>weight</key>
1892− <real>11</real>
1893− </dict>
1894− <key>^(.*/)?\.DS_Store$</key>
1895− <dict>
1896− <key>omit</key>
1897− <true/>
1898− <key>weight</key>
1899− <real>2000</real>
1900− </dict>
1901− <key>^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/</key>
1902− <dict>
1903− <key>nested</key>
1904− <true/>
1905− <key>weight</key>
1906− <real>10</real>
1907− </dict>
1908− <key>^.*</key>
1909− <true/>
1910− <key>^Info\.plist$</key>
1911− <dict>
1912− <key>omit</key>
1913− <true/>
1914− <key>weight</key>
1915− <real>20</real>
1916− </dict>
1917− <key>^PkgInfo$</key>
1918− <dict>
1919− <key>omit</key>
1920− <true/>
1921− <key>weight</key>
1922− <real>20</real>
1923− </dict>
1924− <key>^Resources/</key>
1925− <dict>
1926− <key>weight</key>
1927− <real>20</real>
1928− </dict>
1929− <key>^Resources/.*\.lproj/</key>
1930− <dict>
1931− <key>optional</key>
1932− <true/>
1933− <key>weight</key>
1934− <real>1000</real>
1935− </dict>
1936− <key>^Resources/.*\.lproj/locversion.plist$</key>
1937− <dict>
1938− <key>omit</key>
1939− <true/>
1940− <key>weight</key>
1941− <real>1100</real>
1942− </dict>
1943− <key>^Resources/Base\.lproj/</key>
1944− <dict>
1945− <key>weight</key>
1946− <real>1010</real>
1947− </dict>
1948− <key>^[^/]+$</key>
1949− <dict>
1950− <key>nested</key>
1951− <true/>
1952− <key>weight</key>
1953− <real>10</real>
1954− </dict>
1955− <key>^embedded\.provisionprofile$</key>
1956− <dict>
1957− <key>weight</key>
1958− <real>20</real>
1959− </dict>
1960− <key>^version\.plist$</key>
1961− <dict>
1962− <key>weight</key>
1963− <real>20</real>
1964− </dict>
1965− </dict>
1966−</dict>
1967−</plist>
client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.pdbdeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.runtimeconfig.jsondeleted−43
@@ -1,43 +0,0 @@
1−{
2− "runtimeOptions": {
3− "tfm": "net10.0",
4− "includedFrameworks": [
5− {
6− "name": "Microsoft.NETCore.App",
7− "version": "10.0.5"
8− },
9− {
10− "name": "Microsoft.MacCatalyst",
11− "version": "26.2.10217"
12− },
13− {
14− "name": "Microsoft.MacCatalyst.Runtimes",
15− "version": "26.2.10217"
16− }
17− ],
18− "configProperties": {
19− "Microsoft.Extensions.DependencyInjection.VerifyOpenGenericServiceTrimmability": true,
20− "System.ComponentModel.TypeConverter.EnableUnsafeBinaryFormatterInDesigntimeLicenseContextSerialization": false,
21− "System.ComponentModel.TypeDescriptor.IsComObjectDescriptorSupported": false,
22− "System.Diagnostics.Debugger.IsSupported": true,
23− "System.Globalization.Invariant": false,
24− "System.Globalization.Hybrid": true,
25− "System.Linq.Enumerable.IsSizeOptimized": true,
26− "System.Net.Http.UseNativeHttpHandler": true,
27− "System.Net.SocketsHttpHandler.Http3Support": false,
28− "System.Reflection.NullabilityInfoContext.IsSupported": false,
29− "System.Resources.ResourceManager.AllowCustomResourceTypes": false,
30− "System.Resources.UseSystemResourceKeys": false,
31− "System.Runtime.InteropServices.BuiltInComInterop.IsSupported": false,
32− "System.Runtime.InteropServices.EnableConsumingManagedCodeFromNativeHosting": false,
33− "System.Runtime.InteropServices.EnableCppCLIHostActivation": false,
34− "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false,
35− "System.StartupHookProvider.IsSupported": false,
36− "System.Text.Encoding.EnableUnsafeUTF7Encoding": false,
37− "System.Text.Json.JsonSerializer.IsReflectionEnabledByDefault": true,
38− "System.Threading.Thread.EnableAutoreleasePool": true,
39− "Microsoft.Maui.RuntimeFeature.IsIVisualAssemblyScanningEnabled": false,
40− "Microsoft.Maui.RuntimeFeature.AreBindingInterceptorsSupported": true
41− }
42− }
43−}
client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Sodium.Core.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.AppContext.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Buffers.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Collections.Concurrent.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Collections.Immutable.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Collections.NonGeneric.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Collections.Specialized.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Collections.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ComponentModel.Annotations.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ComponentModel.DataAnnotations.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ComponentModel.EventBasedAsync.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ComponentModel.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ComponentModel.TypeConverter.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ComponentModel.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Configuration.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Console.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Core.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Data.Common.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Data.DataSetExtensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Data.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.Contracts.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.Debug.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.DiagnosticSource.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.FileVersionInfo.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.Process.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.StackTrace.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.TextWriterTraceListener.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.Tools.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.TraceSource.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.Tracing.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Drawing.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Drawing.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Dynamic.Runtime.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Formats.Asn1.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Formats.Tar.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Globalization.Calendars.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Globalization.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Globalization.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Compression.Brotli.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Compression.FileSystem.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Compression.ZipFile.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Compression.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.FileSystem.AccessControl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.FileSystem.DriveInfo.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.FileSystem.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.FileSystem.Watcher.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.FileSystem.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.IsolatedStorage.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.MemoryMappedFiles.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Pipelines.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Pipes.AccessControl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Pipes.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.UnmanagedMemoryStream.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Linq.AsyncEnumerable.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Linq.Expressions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Linq.Parallel.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Linq.Queryable.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Linq.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Memory.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Http.Json.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Http.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.HttpListener.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Mail.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.NameResolution.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.NetworkInformation.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Ping.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Quic.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Requests.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Security.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.ServerSentEvents.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.ServicePoint.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Sockets.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.WebClient.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.WebHeaderCollection.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.WebProxy.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.WebSockets.Client.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.WebSockets.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Numerics.Vectors.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Numerics.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ObjectModel.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Private.DataContractSerialization.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Private.Uri.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Private.Xml.Linq.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.DispatchProxy.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.Emit.ILGeneration.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.Emit.Lightweight.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.Emit.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.Metadata.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.TypeExtensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Resources.Reader.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Resources.ResourceManager.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Resources.Writer.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.CompilerServices.Unsafe.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.CompilerServices.VisualC.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Handles.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.InteropServices.JavaScript.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.InteropServices.RuntimeInformation.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.InteropServices.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Intrinsics.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Loader.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Numerics.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Serialization.Formatters.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Serialization.Json.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Serialization.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Serialization.Xml.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Serialization.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.AccessControl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Claims.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.Algorithms.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.Cng.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.Csp.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.Encoding.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.OpenSsl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.Primitives.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.X509Certificates.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Principal.Windows.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Principal.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.SecureString.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ServiceModel.Web.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ServiceProcess.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Text.Encoding.CodePages.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Text.Encoding.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Text.Encoding.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Text.Encodings.Web.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Text.Json.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Text.RegularExpressions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.AccessControl.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Channels.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Overlapped.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Tasks.Dataflow.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Tasks.Extensions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Tasks.Parallel.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Tasks.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Thread.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.ThreadPool.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Timer.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Transactions.Local.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Transactions.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ValueTuple.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Web.HttpUtility.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Web.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Windows.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.Linq.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.ReaderWriter.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.Serialization.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.XDocument.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.XPath.XDocument.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.XPath.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.XmlDocument.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.XmlSerializer.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/WindowsBase.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ar/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ca/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/codesign-bundle.itemsdeleted−18
@@ -1,18 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup>
4− <_CodesignBundle Include="Skrepka.app">
5− <EnableCodeSigning>true</EnableCodeSigning>
6− <CodesignSigningKey>-</CodesignSigningKey>
7− <CodesignEntitlements>/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Entitlements.xcent</CodesignEntitlements>
8− <CodesignUseSecureTimestamp></CodesignUseSecureTimestamp>
9− <CodesignAllocate>/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate</CodesignAllocate>
10− <CodesignExtraArgs></CodesignExtraArgs>
11− <CodesignResourceRules></CodesignResourceRules>
12− <CodesignDisableTimestamp>true</CodesignDisableTimestamp>
13− <CodesignKeychain></CodesignKeychain>
14− <CodesignUseHardenedRuntime></CodesignUseHardenedRuntime>
15− <SourceProjectPath>/Users/iko/Developer/skrepka/client</SourceProjectPath>
16− </_CodesignBundle>
17− </ItemGroup>
18−</Project>
client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/codesign.itemsdeleted−4
@@ -1,4 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup />
4−</Project>
client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/cs/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/cs/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/da/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/de/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/de/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/el/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/es/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/es/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/fi/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/fr/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/fr/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/he/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/hi/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/hr/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/hu/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/id/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/it/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/it/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ja/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ja/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ko/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ko/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Globalization.Native.adeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Globalization.Native.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.IO.Compression.Native.adeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.IO.Compression.Native.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Native.adeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Native.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Net.Security.Native.adeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Net.Security.Native.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Security.Cryptography.Native.Apple.adeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Security.Cryptography.Native.Apple.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libbrotlicommon.adeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libbrotlidec.adeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-debugger-stub-static.adeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-diagnostics_tracing-stub-static.adeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-hot_reload-static.adeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-hot_reload-stub-static.adeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-marshal-ilgen-static.adeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-marshal-ilgen-stub-static.adeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libxamarin-dotnet-debug.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libxamarin-dotnet.dylibdeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ms/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/mscorlib.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/nb/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/netstandard.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/nl/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/pl/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/pl/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/postprocessing.itemsdeleted−17
@@ -1,17 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup>
4− <_PostProcessingItem Include="Skrepka.app/Contents/MacOS/Skrepka">
5− <IsAppExtension>false</IsAppExtension>
6− <BCSymbolMapName>Skrepka.bcsymbolmap</BCSymbolMapName>
7− <NoDSymUtil>true</NoDSymUtil>
8− <dSYMSourcePathExists>false</dSYMSourcePathExists>
9− <NoSymbolStrip>true</NoSymbolStrip>
10− <dSYMInfoPlistRelativePath>Skrepka.app.dSYM\Contents\Info.plist</dSYMInfoPlistRelativePath>
11− <SymbolFile>/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mtouch-symbols.list</SymbolFile>
12− <DSymName>Skrepka.app.dSYM</DSymName>
13− <SourceProjectPath>/Users/iko/Developer/skrepka/client</SourceProjectPath>
14− <IsXPCService></IsXPCService>
15− </_PostProcessingItem>
16− </ItemGroup>
17−</Project>
client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/pt-BR/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/pt-BR/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/pt/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ro/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ru/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ru/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/sk/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/sv/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/th/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/tr/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/tr/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/uk/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/vi/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/zh-HK/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/zh-Hans/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/zh-Hans/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/zh-Hant/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/zh-Hant/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/native/iossimulator-arm64/libsodium.adeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/.NETCoreApp,Version=v10.0.AssemblyAttributes.fsdeleted−3
@@ -1,3 +0,0 @@
1−namespace Microsoft.BuildSettings
2− [<System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v10.0", FrameworkDisplayName=".NET 10.0")>]
3− do ()
client/obj/Debug/net10.0-ios/iossimulator-arm64/AppManifest.plistdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/Entitlements-Simulated.xcentdeleted−12
@@ -1,12 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8"?>
2−<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3−<plist version="1.0">
4−<dict>
5− <key>application-identifier</key>
6− <string>com.skrepka.client</string>
7− <key>keychain-access-groups</key>
8− <array>
9− <string>com.skrepka.client</string>
10− </array>
11−</dict>
12−</plist>
client/obj/Debug/net10.0-ios/iossimulator-arm64/Entitlements-Simulated.xcent.derdeleted−1
@@ -1 +0,0 @@
1−pc�^0, application-identifier com.skrepka.client0. keychain-access-groups0 com.skrepka.client
client/obj/Debug/net10.0-ios/iossimulator-arm64/Entitlements.xcentdeleted−5
@@ -1,5 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8"?>
2−<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3−<plist version="1.0">
4−<dict/>
5−</plist>
client/obj/Debug/net10.0-ios/iossimulator-arm64/ILLink.Substitutions.xmldeleted−15
@@ -1,15 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<linker>
3− <assembly fullname="Skrepka">
4− <resource name="FSharpSignatureData.Skrepka" action="remove"></resource>
5− <resource name="FSharpSignatureCompressedData.Skrepka" action="remove"></resource>
6− <resource name="FSharpSignatureDataB.Skrepka" action="remove"></resource>
7− <resource name="FSharpSignatureCompressedDataB.Skrepka" action="remove"></resource>
8− <resource name="FSharpOptimizationData.Skrepka" action="remove"></resource>
9− <resource name="FSharpOptimizationCompressedData.Skrepka" action="remove"></resource>
10− <resource name="FSharpOptimizationDataB.Skrepka" action="remove"></resource>
11− <resource name="FSharpOptimizationCompressedDataB.Skrepka" action="remove"></resource>
12− <resource name="FSharpOptimizationInfo.Skrepka" action="remove"></resource>
13− <resource name="FSharpSignatureInfo.Skrepka" action="remove"></resource>
14− </assembly>
15−</linker>
client/obj/Debug/net10.0-ios/iossimulator-arm64/PublishOutputs.42f28df682.txtdeleted−259
@@ -1,259 +0,0 @@
1−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/cs/FSharp.Core.resources.dll
2−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/de/FSharp.Core.resources.dll
3−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/es/FSharp.Core.resources.dll
4−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/fr/FSharp.Core.resources.dll
5−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/it/FSharp.Core.resources.dll
6−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/ja/FSharp.Core.resources.dll
7−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/ko/FSharp.Core.resources.dll
8−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/pl/FSharp.Core.resources.dll
9−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/pt-BR/FSharp.Core.resources.dll
10−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/ru/FSharp.Core.resources.dll
11−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/tr/FSharp.Core.resources.dll
12−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/zh-Hans/FSharp.Core.resources.dll
13−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/zh-Hant/FSharp.Core.resources.dll
14−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/ar/Microsoft.Maui.Controls.resources.dll
15−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/ca/Microsoft.Maui.Controls.resources.dll
16−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/cs/Microsoft.Maui.Controls.resources.dll
17−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/da/Microsoft.Maui.Controls.resources.dll
18−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/de/Microsoft.Maui.Controls.resources.dll
19−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/el/Microsoft.Maui.Controls.resources.dll
20−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/es/Microsoft.Maui.Controls.resources.dll
21−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/fi/Microsoft.Maui.Controls.resources.dll
22−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/fr/Microsoft.Maui.Controls.resources.dll
23−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/he/Microsoft.Maui.Controls.resources.dll
24−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/hi/Microsoft.Maui.Controls.resources.dll
25−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/hr/Microsoft.Maui.Controls.resources.dll
26−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/hu/Microsoft.Maui.Controls.resources.dll
27−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/id/Microsoft.Maui.Controls.resources.dll
28−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/it/Microsoft.Maui.Controls.resources.dll
29−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/ja/Microsoft.Maui.Controls.resources.dll
30−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/ko/Microsoft.Maui.Controls.resources.dll
31−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/ms/Microsoft.Maui.Controls.resources.dll
32−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/nb/Microsoft.Maui.Controls.resources.dll
33−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/nl/Microsoft.Maui.Controls.resources.dll
34−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/pl/Microsoft.Maui.Controls.resources.dll
35−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/pt-BR/Microsoft.Maui.Controls.resources.dll
36−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/pt/Microsoft.Maui.Controls.resources.dll
37−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/ro/Microsoft.Maui.Controls.resources.dll
38−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/ru/Microsoft.Maui.Controls.resources.dll
39−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/sk/Microsoft.Maui.Controls.resources.dll
40−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/sv/Microsoft.Maui.Controls.resources.dll
41−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/th/Microsoft.Maui.Controls.resources.dll
42−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/tr/Microsoft.Maui.Controls.resources.dll
43−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/uk/Microsoft.Maui.Controls.resources.dll
44−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/vi/Microsoft.Maui.Controls.resources.dll
45−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/zh-HK/Microsoft.Maui.Controls.resources.dll
46−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/zh-Hans/Microsoft.Maui.Controls.resources.dll
47−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/zh-Hant/Microsoft.Maui.Controls.resources.dll
48−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/runtimeconfig.bin
49−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Fabulous.dll
50−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Fabulous.MauiControls.dll
51−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/FSharp.Core.dll
52−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/LiteDB.dll
53−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Extensions.Configuration.dll
54−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Extensions.Configuration.Abstractions.dll
55−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Extensions.DependencyInjection.dll
56−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Extensions.DependencyInjection.Abstractions.dll
57−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Extensions.Diagnostics.Abstractions.dll
58−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Extensions.FileProviders.Abstractions.dll
59−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Extensions.Hosting.Abstractions.dll
60−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Extensions.Logging.dll
61−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Extensions.Logging.Abstractions.dll
62−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Extensions.Options.dll
63−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Extensions.Primitives.dll
64−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Maui.Controls.Compatibility.dll
65−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Maui.Controls.dll
66−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Maui.Controls.Xaml.dll
67−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Maui.dll
68−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Maui.Essentials.dll
69−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Maui.Graphics.dll
70−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Sodium.Core.dll
71−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Skrepka.dll
72−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.CSharp.dll
73−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.VisualBasic.Core.dll
74−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.VisualBasic.dll
75−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Win32.Primitives.dll
76−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.Win32.Registry.dll
77−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.AppContext.dll
78−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Buffers.dll
79−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Collections.Concurrent.dll
80−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Collections.Immutable.dll
81−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Collections.NonGeneric.dll
82−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Collections.Specialized.dll
83−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Collections.dll
84−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.ComponentModel.Annotations.dll
85−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.ComponentModel.DataAnnotations.dll
86−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.ComponentModel.EventBasedAsync.dll
87−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.ComponentModel.Primitives.dll
88−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.ComponentModel.TypeConverter.dll
89−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.ComponentModel.dll
90−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Configuration.dll
91−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Console.dll
92−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Core.dll
93−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Data.Common.dll
94−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Data.DataSetExtensions.dll
95−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Data.dll
96−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Diagnostics.Contracts.dll
97−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Diagnostics.Debug.dll
98−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Diagnostics.DiagnosticSource.dll
99−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Diagnostics.FileVersionInfo.dll
100−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Diagnostics.Process.dll
101−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Diagnostics.StackTrace.dll
102−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Diagnostics.TextWriterTraceListener.dll
103−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Diagnostics.Tools.dll
104−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Diagnostics.TraceSource.dll
105−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Diagnostics.Tracing.dll
106−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Drawing.Primitives.dll
107−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Drawing.dll
108−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Dynamic.Runtime.dll
109−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Formats.Asn1.dll
110−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Formats.Tar.dll
111−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Globalization.Calendars.dll
112−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Globalization.Extensions.dll
113−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Globalization.dll
114−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.IO.Compression.Brotli.dll
115−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.IO.Compression.FileSystem.dll
116−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.IO.Compression.ZipFile.dll
117−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.IO.Compression.dll
118−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.IO.FileSystem.AccessControl.dll
119−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.IO.FileSystem.DriveInfo.dll
120−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.IO.FileSystem.Primitives.dll
121−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.IO.FileSystem.Watcher.dll
122−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.IO.FileSystem.dll
123−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.IO.IsolatedStorage.dll
124−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.IO.MemoryMappedFiles.dll
125−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.IO.Pipelines.dll
126−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.IO.Pipes.AccessControl.dll
127−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.IO.Pipes.dll
128−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.IO.UnmanagedMemoryStream.dll
129−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.IO.dll
130−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Linq.AsyncEnumerable.dll
131−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Linq.Expressions.dll
132−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Linq.Parallel.dll
133−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Linq.Queryable.dll
134−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Linq.dll
135−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Memory.dll
136−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.Http.Json.dll
137−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.Http.dll
138−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.HttpListener.dll
139−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.Mail.dll
140−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.NameResolution.dll
141−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.NetworkInformation.dll
142−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.Ping.dll
143−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.Primitives.dll
144−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.Quic.dll
145−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.Requests.dll
146−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.Security.dll
147−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.ServerSentEvents.dll
148−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.ServicePoint.dll
149−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.Sockets.dll
150−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.WebClient.dll
151−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.WebHeaderCollection.dll
152−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.WebProxy.dll
153−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.WebSockets.Client.dll
154−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.WebSockets.dll
155−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Net.dll
156−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Numerics.Vectors.dll
157−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Numerics.dll
158−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.ObjectModel.dll
159−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Private.DataContractSerialization.dll
160−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Private.Uri.dll
161−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Private.Xml.Linq.dll
162−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Private.Xml.dll
163−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Reflection.DispatchProxy.dll
164−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Reflection.Emit.ILGeneration.dll
165−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Reflection.Emit.Lightweight.dll
166−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Reflection.Emit.dll
167−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Reflection.Extensions.dll
168−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Reflection.Metadata.dll
169−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Reflection.Primitives.dll
170−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Reflection.TypeExtensions.dll
171−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Reflection.dll
172−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Resources.Reader.dll
173−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Resources.ResourceManager.dll
174−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Resources.Writer.dll
175−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Runtime.CompilerServices.Unsafe.dll
176−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Runtime.CompilerServices.VisualC.dll
177−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Runtime.Extensions.dll
178−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Runtime.Handles.dll
179−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Runtime.InteropServices.JavaScript.dll
180−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Runtime.InteropServices.RuntimeInformation.dll
181−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Runtime.InteropServices.dll
182−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Runtime.Intrinsics.dll
183−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Runtime.Loader.dll
184−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Runtime.Numerics.dll
185−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Runtime.Serialization.Formatters.dll
186−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Runtime.Serialization.Json.dll
187−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Runtime.Serialization.Primitives.dll
188−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Runtime.Serialization.Xml.dll
189−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Runtime.Serialization.dll
190−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Runtime.dll
191−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Security.AccessControl.dll
192−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Security.Claims.dll
193−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Security.Cryptography.Algorithms.dll
194−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Security.Cryptography.Cng.dll
195−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Security.Cryptography.Csp.dll
196−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Security.Cryptography.Encoding.dll
197−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Security.Cryptography.OpenSsl.dll
198−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Security.Cryptography.Primitives.dll
199−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Security.Cryptography.X509Certificates.dll
200−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Security.Cryptography.dll
201−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Security.Principal.Windows.dll
202−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Security.Principal.dll
203−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Security.SecureString.dll
204−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Security.dll
205−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.ServiceModel.Web.dll
206−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.ServiceProcess.dll
207−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Text.Encoding.CodePages.dll
208−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Text.Encoding.Extensions.dll
209−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Text.Encoding.dll
210−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Text.Encodings.Web.dll
211−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Text.Json.dll
212−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Text.RegularExpressions.dll
213−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Threading.AccessControl.dll
214−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Threading.Channels.dll
215−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Threading.Overlapped.dll
216−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Threading.Tasks.Dataflow.dll
217−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Threading.Tasks.Extensions.dll
218−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Threading.Tasks.Parallel.dll
219−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Threading.Tasks.dll
220−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Threading.Thread.dll
221−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Threading.ThreadPool.dll
222−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Threading.Timer.dll
223−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Threading.dll
224−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Transactions.Local.dll
225−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Transactions.dll
226−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.ValueTuple.dll
227−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Web.HttpUtility.dll
228−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Web.dll
229−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Windows.dll
230−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Xml.Linq.dll
231−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Xml.ReaderWriter.dll
232−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Xml.Serialization.dll
233−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Xml.XDocument.dll
234−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Xml.XPath.XDocument.dll
235−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Xml.XPath.dll
236−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Xml.XmlDocument.dll
237−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Xml.XmlSerializer.dll
238−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Xml.dll
239−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.dll
240−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/WindowsBase.dll
241−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/mscorlib.dll
242−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/netstandard.dll
243−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Private.CoreLib.dll
244−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.iOS.dll
245−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Skrepka.pdb
246−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/Microsoft.iOS.pdb
247−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/libSystem.Globalization.Native.dylib
248−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/libSystem.IO.Compression.Native.dylib
249−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/libSystem.Native.dylib
250−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/libSystem.Net.Security.Native.dylib
251−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/libSystem.Security.Cryptography.Native.Apple.dylib
252−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/libmono-component-debugger.dylib
253−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/libmono-component-diagnostics_tracing.dylib
254−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/libmono-component-hot_reload.dylib
255−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/libmono-component-marshal-ilgen.dylib
256−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/libmonosgen-2.0.dylib
257−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/libxamarin-dotnet-debug.dylib
258−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app/System.Private.CoreLib.aotdata.arm64
259−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/publish/../Skrepka.app///Skrepka
client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.AssemblyInfo.fsdeleted−19
@@ -1,19 +0,0 @@
1−// <auto-generated>
2−// Generated by the FSharp WriteCodeFragment class.
3−// </auto-generated>
4−namespace FSharp
5−
6−open System
7−open System.Reflection
8−
9−
10−[<assembly: System.Reflection.AssemblyCompanyAttribute("Skrepka")>]
11−[<assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")>]
12−[<assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")>]
13−[<assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0+a5a5e7c5bac92a6f1d566920ab29663bfc3aad5f")>]
14−[<assembly: System.Reflection.AssemblyProductAttribute("Skrepka")>]
15−[<assembly: System.Reflection.AssemblyTitleAttribute("Skrepka")>]
16−[<assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")>]
17−[<assembly: System.Runtime.Versioning.TargetPlatformAttribute("iOS26.2")>]
18−[<assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("iOS26.2")>]
19−do()
client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.AssemblyInfoInputs.cachedeleted−1
@@ -1 +0,0 @@
1−3de6148967a5feacb10209c6b84280448e0d8b2682259d470ffc1bcb59c62da5
client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.fsproj.AssemblyReference.cachedeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.fsproj.CoreCompileInputs.cachedeleted−1
@@ -1 +0,0 @@
1−0182c29e4e78ed8ffdff7ee936a192ffc3599905f475905b18569649ce05748a
client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.fsproj.FileListAbsolute.txtdeleted−336
@@ -1,336 +0,0 @@
1−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.runtimeconfig.json
2−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.dll
3−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.pdb
4−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Fabulous.dll
5−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Fabulous.MauiControls.dll
6−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/FSharp.Core.dll
7−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Configuration.dll
8−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Configuration.Abstractions.dll
9−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.DependencyInjection.dll
10−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.DependencyInjection.Abstractions.dll
11−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Diagnostics.Abstractions.dll
12−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.FileProviders.Abstractions.dll
13−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Hosting.Abstractions.dll
14−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Logging.dll
15−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Logging.Abstractions.dll
16−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Options.dll
17−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Extensions.Primitives.dll
18−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Maui.Controls.Compatibility.dll
19−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Maui.Controls.dll
20−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Maui.Controls.Xaml.dll
21−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Maui.dll
22−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Maui.Essentials.dll
23−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Maui.Graphics.dll
24−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Sodium.Core.dll
25−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/cs/FSharp.Core.resources.dll
26−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/de/FSharp.Core.resources.dll
27−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/es/FSharp.Core.resources.dll
28−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/fr/FSharp.Core.resources.dll
29−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/it/FSharp.Core.resources.dll
30−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/ja/FSharp.Core.resources.dll
31−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/ko/FSharp.Core.resources.dll
32−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/pl/FSharp.Core.resources.dll
33−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/pt-BR/FSharp.Core.resources.dll
34−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/ru/FSharp.Core.resources.dll
35−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/tr/FSharp.Core.resources.dll
36−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/zh-Hans/FSharp.Core.resources.dll
37−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/zh-Hant/FSharp.Core.resources.dll
38−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/ar/Microsoft.Maui.Controls.resources.dll
39−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/ca/Microsoft.Maui.Controls.resources.dll
40−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/cs/Microsoft.Maui.Controls.resources.dll
41−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/da/Microsoft.Maui.Controls.resources.dll
42−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/de/Microsoft.Maui.Controls.resources.dll
43−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/el/Microsoft.Maui.Controls.resources.dll
44−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/es/Microsoft.Maui.Controls.resources.dll
45−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/fi/Microsoft.Maui.Controls.resources.dll
46−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/fr/Microsoft.Maui.Controls.resources.dll
47−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/he/Microsoft.Maui.Controls.resources.dll
48−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/hi/Microsoft.Maui.Controls.resources.dll
49−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/hr/Microsoft.Maui.Controls.resources.dll
50−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/hu/Microsoft.Maui.Controls.resources.dll
51−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/id/Microsoft.Maui.Controls.resources.dll
52−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/it/Microsoft.Maui.Controls.resources.dll
53−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/ja/Microsoft.Maui.Controls.resources.dll
54−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/ko/Microsoft.Maui.Controls.resources.dll
55−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/ms/Microsoft.Maui.Controls.resources.dll
56−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/nb/Microsoft.Maui.Controls.resources.dll
57−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/nl/Microsoft.Maui.Controls.resources.dll
58−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/pl/Microsoft.Maui.Controls.resources.dll
59−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/pt-BR/Microsoft.Maui.Controls.resources.dll
60−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/pt/Microsoft.Maui.Controls.resources.dll
61−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/ro/Microsoft.Maui.Controls.resources.dll
62−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/ru/Microsoft.Maui.Controls.resources.dll
63−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/sk/Microsoft.Maui.Controls.resources.dll
64−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/sv/Microsoft.Maui.Controls.resources.dll
65−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/th/Microsoft.Maui.Controls.resources.dll
66−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/tr/Microsoft.Maui.Controls.resources.dll
67−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/uk/Microsoft.Maui.Controls.resources.dll
68−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/vi/Microsoft.Maui.Controls.resources.dll
69−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/zh-HK/Microsoft.Maui.Controls.resources.dll
70−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/zh-Hans/Microsoft.Maui.Controls.resources.dll
71−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/zh-Hant/Microsoft.Maui.Controls.resources.dll
72−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libsodium.a
73−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.CSharp.dll
74−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.VisualBasic.Core.dll
75−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.VisualBasic.dll
76−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Win32.Primitives.dll
77−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.Win32.Registry.dll
78−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.AppContext.dll
79−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Buffers.dll
80−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Collections.Concurrent.dll
81−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Collections.Immutable.dll
82−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Collections.NonGeneric.dll
83−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Collections.Specialized.dll
84−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Collections.dll
85−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ComponentModel.Annotations.dll
86−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ComponentModel.DataAnnotations.dll
87−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ComponentModel.EventBasedAsync.dll
88−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ComponentModel.Primitives.dll
89−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ComponentModel.TypeConverter.dll
90−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ComponentModel.dll
91−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Configuration.dll
92−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Console.dll
93−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Core.dll
94−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Data.Common.dll
95−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Data.DataSetExtensions.dll
96−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Data.dll
97−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.Contracts.dll
98−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.Debug.dll
99−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.DiagnosticSource.dll
100−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.FileVersionInfo.dll
101−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.Process.dll
102−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.StackTrace.dll
103−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.TextWriterTraceListener.dll
104−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.Tools.dll
105−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.TraceSource.dll
106−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Diagnostics.Tracing.dll
107−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Drawing.Primitives.dll
108−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Drawing.dll
109−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Dynamic.Runtime.dll
110−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Formats.Asn1.dll
111−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Formats.Tar.dll
112−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Globalization.Calendars.dll
113−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Globalization.Extensions.dll
114−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Globalization.dll
115−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Compression.Brotli.dll
116−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Compression.FileSystem.dll
117−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Compression.ZipFile.dll
118−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Compression.dll
119−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.FileSystem.AccessControl.dll
120−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.FileSystem.DriveInfo.dll
121−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.FileSystem.Primitives.dll
122−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.FileSystem.Watcher.dll
123−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.FileSystem.dll
124−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.IsolatedStorage.dll
125−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.MemoryMappedFiles.dll
126−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Pipelines.dll
127−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Pipes.AccessControl.dll
128−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.Pipes.dll
129−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.UnmanagedMemoryStream.dll
130−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.IO.dll
131−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Linq.AsyncEnumerable.dll
132−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Linq.Expressions.dll
133−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Linq.Parallel.dll
134−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Linq.Queryable.dll
135−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Linq.dll
136−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Memory.dll
137−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Http.Json.dll
138−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Http.dll
139−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.HttpListener.dll
140−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Mail.dll
141−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.NameResolution.dll
142−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.NetworkInformation.dll
143−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Ping.dll
144−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Primitives.dll
145−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Quic.dll
146−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Requests.dll
147−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Security.dll
148−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.ServerSentEvents.dll
149−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.ServicePoint.dll
150−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.Sockets.dll
151−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.WebClient.dll
152−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.WebHeaderCollection.dll
153−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.WebProxy.dll
154−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.WebSockets.Client.dll
155−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.WebSockets.dll
156−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Net.dll
157−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Numerics.Vectors.dll
158−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Numerics.dll
159−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ObjectModel.dll
160−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Private.DataContractSerialization.dll
161−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Private.Uri.dll
162−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Private.Xml.Linq.dll
163−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Private.Xml.dll
164−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.DispatchProxy.dll
165−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.Emit.ILGeneration.dll
166−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.Emit.Lightweight.dll
167−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.Emit.dll
168−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.Extensions.dll
169−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.Metadata.dll
170−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.Primitives.dll
171−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.TypeExtensions.dll
172−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Reflection.dll
173−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Resources.Reader.dll
174−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Resources.ResourceManager.dll
175−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Resources.Writer.dll
176−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.CompilerServices.Unsafe.dll
177−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.CompilerServices.VisualC.dll
178−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Extensions.dll
179−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Handles.dll
180−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.InteropServices.JavaScript.dll
181−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.InteropServices.RuntimeInformation.dll
182−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.InteropServices.dll
183−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Intrinsics.dll
184−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Loader.dll
185−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Numerics.dll
186−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Serialization.Formatters.dll
187−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Serialization.Json.dll
188−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Serialization.Primitives.dll
189−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Serialization.Xml.dll
190−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.Serialization.dll
191−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Runtime.dll
192−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.AccessControl.dll
193−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Claims.dll
194−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.Algorithms.dll
195−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.Cng.dll
196−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.Csp.dll
197−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.Encoding.dll
198−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.OpenSsl.dll
199−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.Primitives.dll
200−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.X509Certificates.dll
201−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Cryptography.dll
202−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Principal.Windows.dll
203−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.Principal.dll
204−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.SecureString.dll
205−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Security.dll
206−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ServiceModel.Web.dll
207−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ServiceProcess.dll
208−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Text.Encoding.CodePages.dll
209−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Text.Encoding.Extensions.dll
210−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Text.Encoding.dll
211−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Text.Encodings.Web.dll
212−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Text.Json.dll
213−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Text.RegularExpressions.dll
214−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.AccessControl.dll
215−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Channels.dll
216−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Overlapped.dll
217−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Tasks.Dataflow.dll
218−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Tasks.Extensions.dll
219−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Tasks.Parallel.dll
220−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Tasks.dll
221−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Thread.dll
222−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.ThreadPool.dll
223−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.Timer.dll
224−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Threading.dll
225−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Transactions.Local.dll
226−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Transactions.dll
227−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.ValueTuple.dll
228−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Web.HttpUtility.dll
229−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Web.dll
230−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Windows.dll
231−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.Linq.dll
232−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.ReaderWriter.dll
233−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.Serialization.dll
234−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.XDocument.dll
235−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.XPath.XDocument.dll
236−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.XPath.dll
237−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.XmlDocument.dll
238−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.XmlSerializer.dll
239−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Xml.dll
240−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.dll
241−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/WindowsBase.dll
242−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/mscorlib.dll
243−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/netstandard.dll
244−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.iOS.dll
245−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/System.Private.CoreLib.dll
246−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Globalization.Native.a
247−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Globalization.Native.dylib
248−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.IO.Compression.Native.a
249−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.IO.Compression.Native.dylib
250−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Native.a
251−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Native.dylib
252−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Net.Security.Native.a
253−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Net.Security.Native.dylib
254−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Security.Cryptography.Native.Apple.a
255−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libSystem.Security.Cryptography.Native.Apple.dylib
256−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libbrotlicommon.a
257−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libbrotlidec.a
258−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libbrotlienc.a
259−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-debugger-static.a
260−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-debugger-stub-static.a
261−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-debugger.dylib
262−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-diagnostics_tracing-static.a
263−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-diagnostics_tracing-stub-static.a
264−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-diagnostics_tracing.dylib
265−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-hot_reload-static.a
266−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-hot_reload-stub-static.a
267−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-hot_reload.dylib
268−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-marshal-ilgen-static.a
269−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-marshal-ilgen-stub-static.a
270−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libmono-component-marshal-ilgen.dylib
271−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libmonosgen-2.0.a
272−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libmonosgen-2.0.dylib
273−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Microsoft.iOS.registrar.a
274−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libextension-dotnet.a
275−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libxamarin-dotnet-debug.a
276−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libxamarin-dotnet-debug.dylib
277−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libxamarin-dotnet-nativeaot-debug.a
278−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libxamarin-dotnet-nativeaot.a
279−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libxamarin-dotnet.a
280−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/libxamarin-dotnet.dylib
281−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.fsproj.AssemblyReference.cache
282−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/partialappmanifest/_PartialAppManifests.items
283−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/mauiimage.inputs
284−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/mauifont.inputs
285−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/mauisplash.inputs
286−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/MauiInfo.plist
287−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/MauiSplash.storyboard
288−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D.png
289−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D@2x.png
290−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D@3x.png
291−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/mauisplash.stamp
292−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/dotnet_bot@3x.png
293−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/dotnet_bot@2x.png
294−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/dotnet_bot.png
295−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appiconItunesArtwork.png
296−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon83.5x83.5@2x.png
297−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon76x76@2x.png
298−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon60x60@3x.png
299−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon60x60@2x.png
300−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon40x40@3x.png
301−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon40x40@2x.png
302−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon29x29@3x.png
303−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon29x29@2x.png
304−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon20x20@3x.png
305−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon20x20@2x.png
306−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/Contents.json
307−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/mauiimage.stamp
308−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/mauiimage.outputs
309−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/f/MauiInfo.plist
310−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/mauifont.stamp
311−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/f/OpenSans-Regular.ttf
312−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/f/OpenSans-Semibold.ttf
313−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/_CompileAppManifest.inputs
314−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/_PartialAppManifest.items
315−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/_BundleResourceWithLogicalName.items
316−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/_ProcessedImageAssetsPath.items
317−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/ibtool/_BundleResourceWithLogicalName.items
318−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/ibtool/_ProcessedInterfaceDefinitionsPath.items
319−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/copySceneKitAssets/_ProcessedSceneKitAssetsPath.items
320−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/collada/_ProcessedColladaAssetsPath.items
321−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/atlas/_ProcessedTextureAtlasesPath.items
322−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/coremlc/_PartialAppManifest.items
323−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/coremlc/_BundleResourceWithLogicalName.items
324−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/_ProcessedBundleResourcesPath.items
325−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/_ProcessedContentPath.items
326−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.AssemblyInfoInputs.cache
327−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.AssemblyInfo.fs
328−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.fsproj.CoreCompileInputs.cache
329−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.sourcelink.json
330−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.fsproj.Up2Date
331−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.dll
332−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/refint/Skrepka.dll
333−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.pdb
334−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.genruntimeconfig.cache
335−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/ref/Skrepka.dll
336−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/LiteDB.dll
client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.fsproj.Up2Datedeleted

No changes to the content.

client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.genruntimeconfig.cachedeleted−1
@@ -1 +0,0 @@
1−a8f0baa87a6d49ceed14310e7dd4c2ffd470fc4aa7c13a6ca8a368f32ebf0d6b
client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.pdbdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/Skrepka.sourcelink.jsondeleted−1
@@ -1 +0,0 @@
1−{"documents":{"/Users/iko/Developer/skrepka/*":"https://raw.githubusercontent.com/ilyakooo0/skrepka/a5a5e7c5bac92a6f1d566920ab29663bfc3aad5f/*"}}
client/obj/Debug/net10.0-ios/iossimulator-arm64/_CompileAppManifest.inputsdeleted−23
@@ -1,23 +0,0 @@
1−AppBundleName=Skrepka
2−ApplicationDisplayVersion=1.0
3−ApplicationId=com.skrepka.client
4−ApplicationTitle=Skrepka
5−ApplicationVersion=1
6−AppManifest=Platforms/iOS/Info.plist
7−CompiledAppManifest=obj/Debug/net10.0-ios/iossimulator-arm64/AppManifest.plist
8−DefaultSdkVersion=26.2
9−FontFilesToRegister=
10−GenerateApplicationManifest=true
11−IsAppExtension=false
12−MinSupportedOSPlatformVersion=12.2
13−PartialAppManifests=obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/MauiInfo.plist
14−obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/f/MauiInfo.plist
15−ProjectDir=/Users/iko/Developer/skrepka/client
16−ResourcePrefix=Platforms/iOS/Resources
17−ResourceRules=
18−SdkIsSimulator=True
19−SdkVersion=26.2
20−SupportedOSPlatformVersion=26.2
21−TargetArchitectures=ARM64
22−TargetFrameworkMoniker=.NETCoreApp,Version=v10.0,Profile=ios
23−Validate=true
client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/_BundleResourceWithLogicalName.itemsdeleted−17
@@ -1,17 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup>
4− <_BundleResourceWithLogicalName Include="obj/Debug/net10.0-ios/iossimulator-arm64/actool/bundle/Assets.car">
5− <Optimize>false</Optimize>
6− <LogicalName>Assets.car</LogicalName>
7− </_BundleResourceWithLogicalName>
8− <_BundleResourceWithLogicalName Include="obj/Debug/net10.0-ios/iossimulator-arm64/actool/bundle/appicon60x60@2x.png">
9− <Optimize>false</Optimize>
10− <LogicalName>appicon60x60@2x.png</LogicalName>
11− </_BundleResourceWithLogicalName>
12− <_BundleResourceWithLogicalName Include="obj/Debug/net10.0-ios/iossimulator-arm64/actool/bundle/appicon76x76@2x~ipad.png">
13− <Optimize>false</Optimize>
14− <LogicalName>appicon76x76@2x~ipad.png</LogicalName>
15− </_BundleResourceWithLogicalName>
16− </ItemGroup>
17−</Project>
client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/_PartialAppManifest.itemsdeleted−6
@@ -1,6 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup>
4− <_PostCompilePartialAppManifest Include="obj/Debug/net10.0-ios/iossimulator-arm64/actool/partial-info.plist" />
5− </ItemGroup>
6−</Project>
client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/asset-manifest.plistdeleted−16
@@ -1,16 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8"?>
2−<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3−<plist version="1.0">
4−<dict>
5− <key>com.apple.actool.compilation-results</key>
6− <dict>
7− <key>output-files</key>
8− <array>
9− <string>/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/bundle/Assets.car</string>
10− <string>/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/bundle/appicon60x60@2x.png</string>
11− <string>/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/bundle/appicon76x76@2x~ipad.png</string>
12− <string>/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/partial-info.plist</string>
13− </array>
14− </dict>
15−</dict>
16−</plist>
client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/bundle/Assets.cardeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/bundle/appicon60x60@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/bundle/appicon76x76@2x~ipad.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/Contents.jsondeleted−93
@@ -1,93 +0,0 @@
1−{
2− "images": [
3− {
4− "idiom": "iphone",
5− "size": "20x20",
6− "scale": "2x",
7− "filename": "appicon20x20@2x.png"
8− },
9− {
10− "idiom": "ipad",
11− "size": "20x20",
12− "scale": "2x",
13− "filename": "appicon20x20@2x.png"
14− },
15− {
16− "idiom": "iphone",
17− "size": "20x20",
18− "scale": "3x",
19− "filename": "appicon20x20@3x.png"
20− },
21− {
22− "idiom": "iphone",
23− "size": "29x29",
24− "scale": "2x",
25− "filename": "appicon29x29@2x.png"
26− },
27− {
28− "idiom": "ipad",
29− "size": "29x29",
30− "scale": "2x",
31− "filename": "appicon29x29@2x.png"
32− },
33− {
34− "idiom": "iphone",
35− "size": "29x29",
36− "scale": "3x",
37− "filename": "appicon29x29@3x.png"
38− },
39− {
40− "idiom": "iphone",
41− "size": "40x40",
42− "scale": "2x",
43− "filename": "appicon40x40@2x.png"
44− },
45− {
46− "idiom": "ipad",
47− "size": "40x40",
48− "scale": "2x",
49− "filename": "appicon40x40@2x.png"
50− },
51− {
52− "idiom": "iphone",
53− "size": "40x40",
54− "scale": "3x",
55− "filename": "appicon40x40@3x.png"
56− },
57− {
58− "idiom": "iphone",
59− "size": "60x60",
60− "scale": "2x",
61− "filename": "appicon60x60@2x.png"
62− },
63− {
64− "idiom": "iphone",
65− "size": "60x60",
66− "scale": "3x",
67− "filename": "appicon60x60@3x.png"
68− },
69− {
70− "idiom": "ipad",
71− "size": "76x76",
72− "scale": "2x",
73− "filename": "appicon76x76@2x.png"
74− },
75− {
76− "idiom": "ipad",
77− "size": "83.5x83.5",
78− "scale": "2x",
79− "filename": "appicon83.5x83.5@2x.png"
80− },
81− {
82− "idiom": "ios-marketing",
83− "size": "1024x1024",
84− "scale": "1x",
85− "filename": "appiconItunesArtwork.png"
86− }
87− ],
88− "properties": {},
89− "info": {
90− "version": 1,
91− "author": "xcode"
92− }
93−}
client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon20x20@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon20x20@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon29x29@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon29x29@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon40x40@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon40x40@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon60x60@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon60x60@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon76x76@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon83.5x83.5@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appiconItunesArtwork.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/actool/partial-info.plistdeleted−31
@@ -1,31 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8"?>
2−<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3−<plist version="1.0">
4−<dict>
5− <key>CFBundleIcons</key>
6− <dict>
7− <key>CFBundlePrimaryIcon</key>
8− <dict>
9− <key>CFBundleIconFiles</key>
10− <array>
11− <string>appicon60x60</string>
12− </array>
13− <key>CFBundleIconName</key>
14− <string>appicon</string>
15− </dict>
16− </dict>
17− <key>CFBundleIcons~ipad</key>
18− <dict>
19− <key>CFBundlePrimaryIcon</key>
20− <dict>
21− <key>CFBundleIconFiles</key>
22− <array>
23− <string>appicon60x60</string>
24− <string>appicon76x76</string>
25− </array>
26− <key>CFBundleIconName</key>
27− <string>appicon</string>
28− </dict>
29− </dict>
30−</dict>
31−</plist>
client/obj/Debug/net10.0-ios/iossimulator-arm64/aot-compiler-path-10.0.105.txtdeleted−1
@@ -1 +0,0 @@
1−/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.iossimulator-arm64/10.0.5/Sdk/../tools/mono-aot-cross
client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/Skrepka.app/.stampfiledeleted−1
@@ -1 +0,0 @@
1−-v --force --timestamp=none --sign - --entitlements /Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/Entitlements.xcent /Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app
client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Globalization.Native.dylibdeleted−1
@@ -1 +0,0 @@
1−-v --force --timestamp=none --sign - /Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Globalization.Native.dylib
client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.IO.Compression.Native.dylibdeleted−1
@@ -1 +0,0 @@
1−-v --force --timestamp=none --sign - /Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.IO.Compression.Native.dylib
client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Native.dylibdeleted−1
@@ -1 +0,0 @@
1−-v --force --timestamp=none --sign - /Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Native.dylib
client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Net.Security.Native.dylibdeleted−1
@@ -1 +0,0 @@
1−-v --force --timestamp=none --sign - /Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Net.Security.Native.dylib
client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Security.Cryptography.Native.Apple.dylibdeleted−1
@@ -1 +0,0 @@
1−-v --force --timestamp=none --sign - /Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libSystem.Security.Cryptography.Native.Apple.dylib
client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-debugger.dylibdeleted−1
@@ -1 +0,0 @@
1−-v --force --timestamp=none --sign - /Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-debugger.dylib
client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-diagnostics_tracing.dylibdeleted−1
@@ -1 +0,0 @@
1−-v --force --timestamp=none --sign - /Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-diagnostics_tracing.dylib
client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-hot_reload.dylibdeleted−1
@@ -1 +0,0 @@
1−-v --force --timestamp=none --sign - /Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-hot_reload.dylib
client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-marshal-ilgen.dylibdeleted−1
@@ -1 +0,0 @@
1−-v --force --timestamp=none --sign - /Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmono-component-marshal-ilgen.dylib
client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmonosgen-2.0.dylibdeleted−1
@@ -1 +0,0 @@
1−-v --force --timestamp=none --sign - /Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libmonosgen-2.0.dylib
client/obj/Debug/net10.0-ios/iossimulator-arm64/codesign/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libxamarin-dotnet-debug.dylibdeleted−1
@@ -1 +0,0 @@
1−-v --force --timestamp=none --sign - /Users/iko/Developer/skrepka/client/bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/libxamarin-dotnet-debug.dylib
client/obj/Debug/net10.0-ios/iossimulator-arm64/coremlc/_BundleResourceWithLogicalName.itemsdeleted−4
@@ -1,4 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup />
4−</Project>
client/obj/Debug/net10.0-ios/iossimulator-arm64/coremlc/_PartialAppManifest.itemsdeleted−4
@@ -1,4 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup />
4−</Project>
client/obj/Debug/net10.0-ios/iossimulator-arm64/custom-linker-options.txtdeleted−231
@@ -1,231 +0,0 @@
1−AreAnyAssembliesTrimmed=false
2− AssemblyName=Skrepka.dll
3−
4− AOTCompiler=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.iossimulator-arm64/10.0.5/Sdk/../tools/mono-aot-cross
5− AOTOutputDirectory=obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/aot-output/
6− DedupAssembly=
7− AppBundleManifestPath=bin/Debug/net10.0-ios/iossimulator-arm64/Skrepka.app/Info.plist
8− CacheDirectory=/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-cache
9−
10− Debug=true
11− DeploymentTarget=26.2
12−
13− EnableSGenConc=false
14−
15− FrameworkAssembly=Microsoft.CSharp
16−FrameworkAssembly=Microsoft.VisualBasic.Core
17−FrameworkAssembly=Microsoft.VisualBasic
18−FrameworkAssembly=Microsoft.Win32.Primitives
19−FrameworkAssembly=Microsoft.Win32.Registry
20−FrameworkAssembly=System.AppContext
21−FrameworkAssembly=System.Buffers
22−FrameworkAssembly=System.Collections.Concurrent
23−FrameworkAssembly=System.Collections.Immutable
24−FrameworkAssembly=System.Collections.NonGeneric
25−FrameworkAssembly=System.Collections.Specialized
26−FrameworkAssembly=System.Collections
27−FrameworkAssembly=System.ComponentModel.Annotations
28−FrameworkAssembly=System.ComponentModel.DataAnnotations
29−FrameworkAssembly=System.ComponentModel.EventBasedAsync
30−FrameworkAssembly=System.ComponentModel.Primitives
31−FrameworkAssembly=System.ComponentModel.TypeConverter
32−FrameworkAssembly=System.ComponentModel
33−FrameworkAssembly=System.Configuration
34−FrameworkAssembly=System.Console
35−FrameworkAssembly=System.Core
36−FrameworkAssembly=System.Data.Common
37−FrameworkAssembly=System.Data.DataSetExtensions
38−FrameworkAssembly=System.Data
39−FrameworkAssembly=System.Diagnostics.Contracts
40−FrameworkAssembly=System.Diagnostics.Debug
41−FrameworkAssembly=System.Diagnostics.DiagnosticSource
42−FrameworkAssembly=System.Diagnostics.FileVersionInfo
43−FrameworkAssembly=System.Diagnostics.Process
44−FrameworkAssembly=System.Diagnostics.StackTrace
45−FrameworkAssembly=System.Diagnostics.TextWriterTraceListener
46−FrameworkAssembly=System.Diagnostics.Tools
47−FrameworkAssembly=System.Diagnostics.TraceSource
48−FrameworkAssembly=System.Diagnostics.Tracing
49−FrameworkAssembly=System.Drawing.Primitives
50−FrameworkAssembly=System.Drawing
51−FrameworkAssembly=System.Dynamic.Runtime
52−FrameworkAssembly=System.Formats.Asn1
53−FrameworkAssembly=System.Formats.Tar
54−FrameworkAssembly=System.Globalization.Calendars
55−FrameworkAssembly=System.Globalization.Extensions
56−FrameworkAssembly=System.Globalization
57−FrameworkAssembly=System.IO.Compression.Brotli
58−FrameworkAssembly=System.IO.Compression.FileSystem
59−FrameworkAssembly=System.IO.Compression.ZipFile
60−FrameworkAssembly=System.IO.Compression
61−FrameworkAssembly=System.IO.FileSystem.AccessControl
62−FrameworkAssembly=System.IO.FileSystem.DriveInfo
63−FrameworkAssembly=System.IO.FileSystem.Primitives
64−FrameworkAssembly=System.IO.FileSystem.Watcher
65−FrameworkAssembly=System.IO.FileSystem
66−FrameworkAssembly=System.IO.IsolatedStorage
67−FrameworkAssembly=System.IO.MemoryMappedFiles
68−FrameworkAssembly=System.IO.Pipelines
69−FrameworkAssembly=System.IO.Pipes.AccessControl
70−FrameworkAssembly=System.IO.Pipes
71−FrameworkAssembly=System.IO.UnmanagedMemoryStream
72−FrameworkAssembly=System.IO
73−FrameworkAssembly=System.Linq.AsyncEnumerable
74−FrameworkAssembly=System.Linq.Expressions
75−FrameworkAssembly=System.Linq.Parallel
76−FrameworkAssembly=System.Linq.Queryable
77−FrameworkAssembly=System.Linq
78−FrameworkAssembly=System.Memory
79−FrameworkAssembly=System.Net.Http.Json
80−FrameworkAssembly=System.Net.Http
81−FrameworkAssembly=System.Net.HttpListener
82−FrameworkAssembly=System.Net.Mail
83−FrameworkAssembly=System.Net.NameResolution
84−FrameworkAssembly=System.Net.NetworkInformation
85−FrameworkAssembly=System.Net.Ping
86−FrameworkAssembly=System.Net.Primitives
87−FrameworkAssembly=System.Net.Quic
88−FrameworkAssembly=System.Net.Requests
89−FrameworkAssembly=System.Net.Security
90−FrameworkAssembly=System.Net.ServerSentEvents
91−FrameworkAssembly=System.Net.ServicePoint
92−FrameworkAssembly=System.Net.Sockets
93−FrameworkAssembly=System.Net.WebClient
94−FrameworkAssembly=System.Net.WebHeaderCollection
95−FrameworkAssembly=System.Net.WebProxy
96−FrameworkAssembly=System.Net.WebSockets.Client
97−FrameworkAssembly=System.Net.WebSockets
98−FrameworkAssembly=System.Net
99−FrameworkAssembly=System.Numerics.Vectors
100−FrameworkAssembly=System.Numerics
101−FrameworkAssembly=System.ObjectModel
102−FrameworkAssembly=System.Private.DataContractSerialization
103−FrameworkAssembly=System.Private.Uri
104−FrameworkAssembly=System.Private.Xml.Linq
105−FrameworkAssembly=System.Private.Xml
106−FrameworkAssembly=System.Reflection.DispatchProxy
107−FrameworkAssembly=System.Reflection.Emit.ILGeneration
108−FrameworkAssembly=System.Reflection.Emit.Lightweight
109−FrameworkAssembly=System.Reflection.Emit
110−FrameworkAssembly=System.Reflection.Extensions
111−FrameworkAssembly=System.Reflection.Metadata
112−FrameworkAssembly=System.Reflection.Primitives
113−FrameworkAssembly=System.Reflection.TypeExtensions
114−FrameworkAssembly=System.Reflection
115−FrameworkAssembly=System.Resources.Reader
116−FrameworkAssembly=System.Resources.ResourceManager
117−FrameworkAssembly=System.Resources.Writer
118−FrameworkAssembly=System.Runtime.CompilerServices.Unsafe
119−FrameworkAssembly=System.Runtime.CompilerServices.VisualC
120−FrameworkAssembly=System.Runtime.Extensions
121−FrameworkAssembly=System.Runtime.Handles
122−FrameworkAssembly=System.Runtime.InteropServices.JavaScript
123−FrameworkAssembly=System.Runtime.InteropServices.RuntimeInformation
124−FrameworkAssembly=System.Runtime.InteropServices
125−FrameworkAssembly=System.Runtime.Intrinsics
126−FrameworkAssembly=System.Runtime.Loader
127−FrameworkAssembly=System.Runtime.Numerics
128−FrameworkAssembly=System.Runtime.Serialization.Formatters
129−FrameworkAssembly=System.Runtime.Serialization.Json
130−FrameworkAssembly=System.Runtime.Serialization.Primitives
131−FrameworkAssembly=System.Runtime.Serialization.Xml
132−FrameworkAssembly=System.Runtime.Serialization
133−FrameworkAssembly=System.Runtime
134−FrameworkAssembly=System.Security.AccessControl
135−FrameworkAssembly=System.Security.Claims
136−FrameworkAssembly=System.Security.Cryptography.Algorithms
137−FrameworkAssembly=System.Security.Cryptography.Cng
138−FrameworkAssembly=System.Security.Cryptography.Csp
139−FrameworkAssembly=System.Security.Cryptography.Encoding
140−FrameworkAssembly=System.Security.Cryptography.OpenSsl
141−FrameworkAssembly=System.Security.Cryptography.Primitives
142−FrameworkAssembly=System.Security.Cryptography.X509Certificates
143−FrameworkAssembly=System.Security.Cryptography
144−FrameworkAssembly=System.Security.Principal.Windows
145−FrameworkAssembly=System.Security.Principal
146−FrameworkAssembly=System.Security.SecureString
147−FrameworkAssembly=System.Security
148−FrameworkAssembly=System.ServiceModel.Web
149−FrameworkAssembly=System.ServiceProcess
150−FrameworkAssembly=System.Text.Encoding.CodePages
151−FrameworkAssembly=System.Text.Encoding.Extensions
152−FrameworkAssembly=System.Text.Encoding
153−FrameworkAssembly=System.Text.Encodings.Web
154−FrameworkAssembly=System.Text.Json
155−FrameworkAssembly=System.Text.RegularExpressions
156−FrameworkAssembly=System.Threading.AccessControl
157−FrameworkAssembly=System.Threading.Channels
158−FrameworkAssembly=System.Threading.Overlapped
159−FrameworkAssembly=System.Threading.Tasks.Dataflow
160−FrameworkAssembly=System.Threading.Tasks.Extensions
161−FrameworkAssembly=System.Threading.Tasks.Parallel
162−FrameworkAssembly=System.Threading.Tasks
163−FrameworkAssembly=System.Threading.Thread
164−FrameworkAssembly=System.Threading.ThreadPool
165−FrameworkAssembly=System.Threading.Timer
166−FrameworkAssembly=System.Threading
167−FrameworkAssembly=System.Transactions.Local
168−FrameworkAssembly=System.Transactions
169−FrameworkAssembly=System.ValueTuple
170−FrameworkAssembly=System.Web.HttpUtility
171−FrameworkAssembly=System.Web
172−FrameworkAssembly=System.Windows
173−FrameworkAssembly=System.Xml.Linq
174−FrameworkAssembly=System.Xml.ReaderWriter
175−FrameworkAssembly=System.Xml.Serialization
176−FrameworkAssembly=System.Xml.XDocument
177−FrameworkAssembly=System.Xml.XPath.XDocument
178−FrameworkAssembly=System.Xml.XPath
179−FrameworkAssembly=System.Xml.XmlDocument
180−FrameworkAssembly=System.Xml.XmlSerializer
181−FrameworkAssembly=System.Xml
182−FrameworkAssembly=System
183−FrameworkAssembly=WindowsBase
184−FrameworkAssembly=mscorlib
185−FrameworkAssembly=netstandard
186−FrameworkAssembly=System.Private.CoreLib
187− Interpreter=all
188− IntermediateLinkDir=obj/Debug/net10.0-ios/iossimulator-arm64/linked/
189− InvariantGlobalization=false
190− HybridGlobalization=true
191− ItemsDirectory=/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items
192− IsAppExtension=false
193− IsSimulatorBuild=True
194− LibMonoLinkMode=dylib
195− LibXamarinLinkMode=dylib
196− MarshalManagedExceptionMode=
197− MarshalObjectiveCExceptionMode=
198− MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64/10.0.5/runtimes/iossimulator-arm64/native/libSystem.Globalization.Native.dylib
199−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64/10.0.5/runtimes/iossimulator-arm64/native/libSystem.IO.Compression.Native.dylib
200−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64/10.0.5/runtimes/iossimulator-arm64/native/libSystem.Native.dylib
201−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64/10.0.5/runtimes/iossimulator-arm64/native/libSystem.Net.Security.Native.dylib
202−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64/10.0.5/runtimes/iossimulator-arm64/native/libSystem.Security.Cryptography.Native.Apple.dylib
203−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64/10.0.5/runtimes/iossimulator-arm64/native/libmono-component-debugger.dylib
204−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64/10.0.5/runtimes/iossimulator-arm64/native/libmono-component-diagnostics_tracing.dylib
205−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64/10.0.5/runtimes/iossimulator-arm64/native/libmono-component-hot_reload.dylib
206−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64/10.0.5/runtimes/iossimulator-arm64/native/libmono-component-marshal-ilgen.dylib
207−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64/10.0.5/runtimes/iossimulator-arm64/native/libmonosgen-2.0.dylib
208− MtouchFloat32=
209− NoWarn=
210− Optimize=
211− PartialStaticRegistrarLibrary=/Users/iko/.dotnet/packs/Microsoft.iOS.Runtime.iossimulator-arm64.net10.0_26.2/26.2.10217/runtimes/iossimulator-arm64/native/Microsoft.iOS.registrar.a
212− Platform=iOS
213− PlatformAssembly=Microsoft.iOS.dll
214− RelativeAppBundlePath=../Skrepka.app/
215− Registrar=partial-static
216−
217− RequireLinkWithAttributeForObjectiveCClassSearch=
218− RequirePInvokeWrappers=
219− RuntimeConfigurationFile=runtimeconfig.bin
220− SdkDevPath=/Applications/Xcode.app/Contents/Developer
221− SdkRootDirectory=/Users/iko/.dotnet/packs/Microsoft.iOS.Sdk.net10.0_26.2/26.2.10217/
222− SdkVersion=26.2
223− SkipMarkingNSObjectsInUserAssemblies=
224− TargetArchitectures=ARM64
225− TargetFramework=.NETCoreApp,Version=v10.0,Profile=ios
226− UseLlvm=
227− Verbosity=
228− Warn=
229− WarnAsError=
230− XamarinNativeLibraryDirectory=/Users/iko/.dotnet/packs/Microsoft.iOS.Runtime.iossimulator-arm64.net10.0_26.2/26.2.10217/runtimes/iossimulator-arm64/native/
231− XamarinRuntime=MonoVM
client/obj/Debug/net10.0-ios/iossimulator-arm64/ibtool-manifests/MauiSplash.storyboardcdeleted−12
@@ -1,12 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8"?>
2−<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3−<plist version="1.0">
4−<dict>
5− <key>com.apple.ibtool.document.errors</key>
6− <dict/>
7− <key>com.apple.ibtool.document.notices</key>
8− <dict/>
9− <key>com.apple.ibtool.document.warnings</key>
10− <dict/>
11−</dict>
12−</plist>
client/obj/Debug/net10.0-ios/iossimulator-arm64/ibtool/MauiSplash.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nibdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/ibtool/MauiSplash.storyboardc/Info.plistdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/ibtool/MauiSplash.storyboardc/UIViewController-01J-lp-oVM.nibdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/ibtool/_BundleResourceWithLogicalName.itemsdeleted−23
@@ -1,23 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup>
4− <_BundleResourceWithLogicalName Include="obj/Debug/net10.0-ios/iossimulator-arm64/ibtool/MauiSplash.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib">
5− <Optimize>false</Optimize>
6− <InterfaceDefinition>obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/MauiSplash.storyboard</InterfaceDefinition>
7− <LogicalName>MauiSplash.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib</LogicalName>
8− <OriginalItemSpec>obj/Debug/net10.0-ios/iossimulator-arm64/ibtool/MauiSplash.storyboardc</OriginalItemSpec>
9− </_BundleResourceWithLogicalName>
10− <_BundleResourceWithLogicalName Include="obj/Debug/net10.0-ios/iossimulator-arm64/ibtool/MauiSplash.storyboardc/UIViewController-01J-lp-oVM.nib">
11− <Optimize>false</Optimize>
12− <InterfaceDefinition>obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/MauiSplash.storyboard</InterfaceDefinition>
13− <LogicalName>MauiSplash.storyboardc/UIViewController-01J-lp-oVM.nib</LogicalName>
14− <OriginalItemSpec>obj/Debug/net10.0-ios/iossimulator-arm64/ibtool/MauiSplash.storyboardc</OriginalItemSpec>
15− </_BundleResourceWithLogicalName>
16− <_BundleResourceWithLogicalName Include="obj/Debug/net10.0-ios/iossimulator-arm64/ibtool/MauiSplash.storyboardc/Info.plist">
17− <Optimize>false</Optimize>
18− <InterfaceDefinition>obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/MauiSplash.storyboard</InterfaceDefinition>
19− <LogicalName>MauiSplash.storyboardc/Info.plist</LogicalName>
20− <OriginalItemSpec>obj/Debug/net10.0-ios/iossimulator-arm64/ibtool/MauiSplash.storyboardc</OriginalItemSpec>
21− </_BundleResourceWithLogicalName>
22− </ItemGroup>
23−</Project>
client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/Link.semaphoredeleted

No changes to the content.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/Microsoft.Maui.Controls.Compatibility.pdbdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/Microsoft.Maui.Controls.Xaml.pdbdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/Microsoft.Maui.Controls.pdbdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/Microsoft.Maui.Essentials.pdbdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/Microsoft.Maui.Graphics.pdbdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/Microsoft.Maui.pdbdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ar/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ca/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/cs/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/cs/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/da/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/de/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/de/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/el/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/es/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/es/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/fi/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/fr/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/fr/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/he/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/hi/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/hr/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/hu/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/id/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/it/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/it/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ja/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ja/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ko/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ko/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ms/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/nb/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/nl/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/pl/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/pl/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/pt-BR/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/pt-BR/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/pt/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ro/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ru/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/ru/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/sk/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/sv/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/th/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/tr/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/tr/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/uk/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/vi/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/zh-HK/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/zh-Hans/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/zh-Hans/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/zh-Hant/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linked/zh-Hant/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-cache/main.arm64.mmdeleted−88
@@ -1,88 +0,0 @@
1−#include <stdlib.h>
2−
3−static void xamarin_initialize_dotnet ()
4−{
5− setenv ("DOTNET_MODIFIABLE_ASSEMBLIES", "debug", 1);
6−}
7−
8−extern "C" void xamarin_initialize_dotnet();
9−extern "C" void xamarin_create_classes_Microsoft_iOS();
10−
11−static void xamarin_invoke_registration_methods ()
12−{
13− xamarin_initialize_dotnet();
14− xamarin_create_classes_Microsoft_iOS();
15−}
16−
17−#include "xamarin/xamarin.h"
18−
19−extern void *mono_aot_module_System_Private_CoreLib_info;
20−
21−void xamarin_register_modules_impl ()
22−{
23− mono_aot_register_module (mono_aot_module_System_Private_CoreLib_info);
24−
25−}
26−
27−void xamarin_register_assemblies_impl ()
28−{
29− GCHandle exception_gchandle = INVALID_GCHANDLE;
30−
31−}
32−
33−extern "C" { void mono_ee_interp_init (const char *); }
34−extern "C" { void mono_icall_table_init (void); }
35−extern "C" { void mono_marshal_ilgen_init (void); }
36−extern "C" { void mono_method_builder_ilgen_init (void); }
37−extern "C" { void mono_sgen_mono_ilgen_init (void); }
38−static const char *xamarin_runtime_libraries_array[] = {
39− "libSystem.Globalization.Native",
40− "libSystem.IO.Compression.Native",
41− "libSystem.Native",
42− "libSystem.Net.Security.Native",
43− "libSystem.Security.Cryptography.Native.Apple",
44− "libmono-component-debugger",
45− "libmono-component-diagnostics_tracing",
46− "libmono-component-hot_reload",
47− "libmono-component-marshal-ilgen",
48− "libmonosgen-2.0",
49− NULL
50−};
51−void xamarin_setup_impl ()
52−{
53− mono_icall_table_init ();
54− mono_marshal_ilgen_init ();
55− mono_method_builder_ilgen_init ();
56− mono_sgen_mono_ilgen_init ();
57− mono_jit_set_aot_mode (MONO_AOT_MODE_INTERP);
58− xamarin_invoke_registration_methods ();
59− xamarin_libmono_native_link_mode = XamarinNativeLinkModeDynamicLibrary;
60− xamarin_runtime_libraries = xamarin_runtime_libraries_array;
61− xamarin_gc_pump = FALSE;
62− xamarin_init_mono_debug = TRUE;
63− xamarin_executable_name = "Skrepka.dll";
64− mono_use_llvm = FALSE;
65− xamarin_log_level = 0;
66− xamarin_arch_name = "arm64";
67− xamarin_marshal_objectivec_exception_mode = MarshalObjectiveCExceptionModeThrowManagedException;
68− xamarin_debug_mode = TRUE;
69− setenv ("MONO_GC_PARAMS", "nursery-size=512k,major=marksweep", 1);
70− xamarin_supports_dynamic_registration = TRUE;
71− xamarin_runtime_configuration_name = "runtimeconfig.bin";
72−}
73−
74−int main (int argc, char **argv)
75−{
76− NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
77− int rv = xamarin_main (argc, argv, XamarinLaunchModeApp);
78− [pool drain];
79− return rv;
80−}
81−
82−void xamarin_initialize_callbacks () __attribute__ ((constructor));
83−void xamarin_initialize_callbacks ()
84−{
85− xamarin_setup = xamarin_setup_impl;
86− xamarin_register_assemblies = xamarin_register_assemblies_impl;
87− xamarin_register_modules = xamarin_register_modules_impl;
88−}
client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/ReferenceNativeSymbol.itemsdeleted−1373
@@ -1,1373 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup>
4− <ReferenceNativeSymbol Include="_crypto_aead_aes256gcm_decrypt">
5− <SymbolType>Function</SymbolType>
6− </ReferenceNativeSymbol>
7− <ReferenceNativeSymbol Include="_crypto_aead_aes256gcm_encrypt">
8− <SymbolType>Function</SymbolType>
9− </ReferenceNativeSymbol>
10− <ReferenceNativeSymbol Include="_crypto_aead_aes256gcm_is_available">
11− <SymbolType>Function</SymbolType>
12− </ReferenceNativeSymbol>
13− <ReferenceNativeSymbol Include="_crypto_aead_chacha20poly1305_decrypt">
14− <SymbolType>Function</SymbolType>
15− </ReferenceNativeSymbol>
16− <ReferenceNativeSymbol Include="_crypto_aead_chacha20poly1305_encrypt">
17− <SymbolType>Function</SymbolType>
18− </ReferenceNativeSymbol>
19− <ReferenceNativeSymbol Include="_crypto_aead_chacha20poly1305_ietf_decrypt">
20− <SymbolType>Function</SymbolType>
21− </ReferenceNativeSymbol>
22− <ReferenceNativeSymbol Include="_crypto_aead_chacha20poly1305_ietf_encrypt">
23− <SymbolType>Function</SymbolType>
24− </ReferenceNativeSymbol>
25− <ReferenceNativeSymbol Include="_crypto_aead_xchacha20poly1305_ietf_decrypt">
26− <SymbolType>Function</SymbolType>
27− </ReferenceNativeSymbol>
28− <ReferenceNativeSymbol Include="_crypto_aead_xchacha20poly1305_ietf_encrypt">
29− <SymbolType>Function</SymbolType>
30− </ReferenceNativeSymbol>
31− <ReferenceNativeSymbol Include="_crypto_auth_hmacsha256">
32− <SymbolType>Function</SymbolType>
33− </ReferenceNativeSymbol>
34− <ReferenceNativeSymbol Include="_crypto_auth_hmacsha256_verify">
35− <SymbolType>Function</SymbolType>
36− </ReferenceNativeSymbol>
37− <ReferenceNativeSymbol Include="_crypto_auth_hmacsha512">
38− <SymbolType>Function</SymbolType>
39− </ReferenceNativeSymbol>
40− <ReferenceNativeSymbol Include="_crypto_auth_hmacsha512_verify">
41− <SymbolType>Function</SymbolType>
42− </ReferenceNativeSymbol>
43− <ReferenceNativeSymbol Include="_crypto_auth_hmacsha512256">
44− <SymbolType>Function</SymbolType>
45− </ReferenceNativeSymbol>
46− <ReferenceNativeSymbol Include="_crypto_auth_hmacsha512256_verify">
47− <SymbolType>Function</SymbolType>
48− </ReferenceNativeSymbol>
49− <ReferenceNativeSymbol Include="_crypto_box_curve25519xsalsa20poly1305_keypair">
50− <SymbolType>Function</SymbolType>
51− </ReferenceNativeSymbol>
52− <ReferenceNativeSymbol Include="_crypto_box_curve25519xsalsa20poly1305_seed_keypair">
53− <SymbolType>Function</SymbolType>
54− </ReferenceNativeSymbol>
55− <ReferenceNativeSymbol Include="_crypto_box_detached">
56− <SymbolType>Function</SymbolType>
57− </ReferenceNativeSymbol>
58− <ReferenceNativeSymbol Include="_crypto_box_easy">
59− <SymbolType>Function</SymbolType>
60− </ReferenceNativeSymbol>
61− <ReferenceNativeSymbol Include="_crypto_box_open_detached">
62− <SymbolType>Function</SymbolType>
63− </ReferenceNativeSymbol>
64− <ReferenceNativeSymbol Include="_crypto_box_open_easy">
65− <SymbolType>Function</SymbolType>
66− </ReferenceNativeSymbol>
67− <ReferenceNativeSymbol Include="_crypto_box_seal">
68− <SymbolType>Function</SymbolType>
69− </ReferenceNativeSymbol>
70− <ReferenceNativeSymbol Include="_crypto_box_seal_open">
71− <SymbolType>Function</SymbolType>
72− </ReferenceNativeSymbol>
73− <ReferenceNativeSymbol Include="_sodium_init">
74− <SymbolType>Function</SymbolType>
75− </ReferenceNativeSymbol>
76− <ReferenceNativeSymbol Include="_sodium_set_misuse_handler">
77− <SymbolType>Function</SymbolType>
78− </ReferenceNativeSymbol>
79− <ReferenceNativeSymbol Include="_crypto_generichash_blake2b">
80− <SymbolType>Function</SymbolType>
81− </ReferenceNativeSymbol>
82− <ReferenceNativeSymbol Include="_crypto_generichash_blake2b_final">
83− <SymbolType>Function</SymbolType>
84− </ReferenceNativeSymbol>
85− <ReferenceNativeSymbol Include="_crypto_generichash_blake2b_init">
86− <SymbolType>Function</SymbolType>
87− </ReferenceNativeSymbol>
88− <ReferenceNativeSymbol Include="_crypto_generichash_blake2b_salt_personal">
89− <SymbolType>Function</SymbolType>
90− </ReferenceNativeSymbol>
91− <ReferenceNativeSymbol Include="_crypto_generichash_blake2b_update">
92− <SymbolType>Function</SymbolType>
93− </ReferenceNativeSymbol>
94− <ReferenceNativeSymbol Include="_crypto_hash_sha256">
95− <SymbolType>Function</SymbolType>
96− </ReferenceNativeSymbol>
97− <ReferenceNativeSymbol Include="_crypto_hash_sha512">
98− <SymbolType>Function</SymbolType>
99− </ReferenceNativeSymbol>
100− <ReferenceNativeSymbol Include="_crypto_onetimeauth_poly1305">
101− <SymbolType>Function</SymbolType>
102− </ReferenceNativeSymbol>
103− <ReferenceNativeSymbol Include="_crypto_onetimeauth_poly1305_verify">
104− <SymbolType>Function</SymbolType>
105− </ReferenceNativeSymbol>
106− <ReferenceNativeSymbol Include="_crypto_pwhash">
107− <SymbolType>Function</SymbolType>
108− </ReferenceNativeSymbol>
109− <ReferenceNativeSymbol Include="_crypto_pwhash_str">
110− <SymbolType>Function</SymbolType>
111− </ReferenceNativeSymbol>
112− <ReferenceNativeSymbol Include="_crypto_pwhash_str_needs_rehash">
113− <SymbolType>Function</SymbolType>
114− </ReferenceNativeSymbol>
115− <ReferenceNativeSymbol Include="_crypto_pwhash_str_verify">
116− <SymbolType>Function</SymbolType>
117− </ReferenceNativeSymbol>
118− <ReferenceNativeSymbol Include="_crypto_pwhash_scryptsalsa208sha256">
119− <SymbolType>Function</SymbolType>
120− </ReferenceNativeSymbol>
121− <ReferenceNativeSymbol Include="_crypto_pwhash_scryptsalsa208sha256_str">
122− <SymbolType>Function</SymbolType>
123− </ReferenceNativeSymbol>
124− <ReferenceNativeSymbol Include="_crypto_pwhash_scryptsalsa208sha256_str_needs_rehash">
125− <SymbolType>Function</SymbolType>
126− </ReferenceNativeSymbol>
127− <ReferenceNativeSymbol Include="_crypto_pwhash_scryptsalsa208sha256_str_verify">
128− <SymbolType>Function</SymbolType>
129− </ReferenceNativeSymbol>
130− <ReferenceNativeSymbol Include="_randombytes_buf">
131− <SymbolType>Function</SymbolType>
132− </ReferenceNativeSymbol>
133− <ReferenceNativeSymbol Include="_randombytes_uniform">
134− <SymbolType>Function</SymbolType>
135− </ReferenceNativeSymbol>
136− <ReferenceNativeSymbol Include="_crypto_scalarmult_curve25519">
137− <SymbolType>Function</SymbolType>
138− </ReferenceNativeSymbol>
139− <ReferenceNativeSymbol Include="_crypto_scalarmult_curve25519_base">
140− <SymbolType>Function</SymbolType>
141− </ReferenceNativeSymbol>
142− <ReferenceNativeSymbol Include="_crypto_secretbox_detached">
143− <SymbolType>Function</SymbolType>
144− </ReferenceNativeSymbol>
145− <ReferenceNativeSymbol Include="_crypto_secretbox_easy">
146− <SymbolType>Function</SymbolType>
147− </ReferenceNativeSymbol>
148− <ReferenceNativeSymbol Include="_crypto_secretbox_open_detached">
149− <SymbolType>Function</SymbolType>
150− </ReferenceNativeSymbol>
151− <ReferenceNativeSymbol Include="_crypto_secretbox_open_easy">
152− <SymbolType>Function</SymbolType>
153− </ReferenceNativeSymbol>
154− <ReferenceNativeSymbol Include="_crypto_shorthash_siphash24">
155− <SymbolType>Function</SymbolType>
156− </ReferenceNativeSymbol>
157− <ReferenceNativeSymbol Include="_crypto_sign_ed25519">
158− <SymbolType>Function</SymbolType>
159− </ReferenceNativeSymbol>
160− <ReferenceNativeSymbol Include="_crypto_sign_ed25519_detached">
161− <SymbolType>Function</SymbolType>
162− </ReferenceNativeSymbol>
163− <ReferenceNativeSymbol Include="_crypto_sign_ed25519_keypair">
164− <SymbolType>Function</SymbolType>
165− </ReferenceNativeSymbol>
166− <ReferenceNativeSymbol Include="_crypto_sign_ed25519_open">
167− <SymbolType>Function</SymbolType>
168− </ReferenceNativeSymbol>
169− <ReferenceNativeSymbol Include="_crypto_sign_ed25519_pk_to_curve25519">
170− <SymbolType>Function</SymbolType>
171− </ReferenceNativeSymbol>
172− <ReferenceNativeSymbol Include="_crypto_sign_ed25519_seed_keypair">
173− <SymbolType>Function</SymbolType>
174− </ReferenceNativeSymbol>
175− <ReferenceNativeSymbol Include="_crypto_sign_ed25519_sk_to_curve25519">
176− <SymbolType>Function</SymbolType>
177− </ReferenceNativeSymbol>
178− <ReferenceNativeSymbol Include="_crypto_sign_ed25519_sk_to_pk">
179− <SymbolType>Function</SymbolType>
180− </ReferenceNativeSymbol>
181− <ReferenceNativeSymbol Include="_crypto_sign_ed25519_sk_to_seed">
182− <SymbolType>Function</SymbolType>
183− </ReferenceNativeSymbol>
184− <ReferenceNativeSymbol Include="_crypto_sign_ed25519_verify_detached">
185− <SymbolType>Function</SymbolType>
186− </ReferenceNativeSymbol>
187− <ReferenceNativeSymbol Include="_crypto_stream_chacha20_xor">
188− <SymbolType>Function</SymbolType>
189− </ReferenceNativeSymbol>
190− <ReferenceNativeSymbol Include="_crypto_stream_chacha20_ietf_xor">
191− <SymbolType>Function</SymbolType>
192− </ReferenceNativeSymbol>
193− <ReferenceNativeSymbol Include="_crypto_stream_xchacha20_xor">
194− <SymbolType>Function</SymbolType>
195− </ReferenceNativeSymbol>
196− <ReferenceNativeSymbol Include="_crypto_stream_xsalsa20_xor">
197− <SymbolType>Function</SymbolType>
198− </ReferenceNativeSymbol>
199− <ReferenceNativeSymbol Include="_sodium_base642bin">
200− <SymbolType>Function</SymbolType>
201− </ReferenceNativeSymbol>
202− <ReferenceNativeSymbol Include="_sodium_base64_encoded_len">
203− <SymbolType>Function</SymbolType>
204− </ReferenceNativeSymbol>
205− <ReferenceNativeSymbol Include="_sodium_bin2base64">
206− <SymbolType>Function</SymbolType>
207− </ReferenceNativeSymbol>
208− <ReferenceNativeSymbol Include="_sodium_compare">
209− <SymbolType>Function</SymbolType>
210− </ReferenceNativeSymbol>
211− <ReferenceNativeSymbol Include="_sodium_increment">
212− <SymbolType>Function</SymbolType>
213− </ReferenceNativeSymbol>
214− <ReferenceNativeSymbol Include="_sodium_library_version_major">
215− <SymbolType>Function</SymbolType>
216− </ReferenceNativeSymbol>
217− <ReferenceNativeSymbol Include="_sodium_library_version_minor">
218− <SymbolType>Function</SymbolType>
219− </ReferenceNativeSymbol>
220− <ReferenceNativeSymbol Include="_sodium_version_string">
221− <SymbolType>Function</SymbolType>
222− </ReferenceNativeSymbol>
223− <ReferenceNativeSymbol Include="_xamarin_CGPoint__VNNormalizedFaceBoundingBoxPointForLandmarkPoint_Vector2_CGRect_nuint_nuint_string">
224− <SymbolType>Function</SymbolType>
225− </ReferenceNativeSymbol>
226− <ReferenceNativeSymbol Include="_xamarin_CGPoint__VNImagePointForFaceLandmarkPoint_Vector2_CGRect_nuint_nuint_string">
227− <SymbolType>Function</SymbolType>
228− </ReferenceNativeSymbol>
229− <ReferenceNativeSymbol Include="_OBJC_CLASS_$_XamarinSwiftFunctions">
230− <SymbolType>ObjectiveCClass</SymbolType>
231− </ReferenceNativeSymbol>
232− <ReferenceNativeSymbol Include="_xamarin_UIApplicationMain">
233− <SymbolType>Function</SymbolType>
234− </ReferenceNativeSymbol>
235− <ReferenceNativeSymbol Include="_xamarin_os_log">
236− <SymbolType>Function</SymbolType>
237− </ReferenceNativeSymbol>
238− <ReferenceNativeSymbol Include="_xamarin_release_managed_ref">
239− <SymbolType>Function</SymbolType>
240− </ReferenceNativeSymbol>
241− <ReferenceNativeSymbol Include="_xamarin_set_gchandle_with_flags_safe">
242− <SymbolType>Function</SymbolType>
243− </ReferenceNativeSymbol>
244− <ReferenceNativeSymbol Include="_xamarin_localized_string_format">
245− <SymbolType>Function</SymbolType>
246− </ReferenceNativeSymbol>
247− <ReferenceNativeSymbol Include="_xamarin_localized_string_format_1">
248− <SymbolType>Function</SymbolType>
249− </ReferenceNativeSymbol>
250− <ReferenceNativeSymbol Include="_xamarin_localized_string_format_2">
251− <SymbolType>Function</SymbolType>
252− </ReferenceNativeSymbol>
253− <ReferenceNativeSymbol Include="_xamarin_localized_string_format_3">
254− <SymbolType>Function</SymbolType>
255− </ReferenceNativeSymbol>
256− <ReferenceNativeSymbol Include="_xamarin_localized_string_format_4">
257− <SymbolType>Function</SymbolType>
258− </ReferenceNativeSymbol>
259− <ReferenceNativeSymbol Include="_xamarin_localized_string_format_5">
260− <SymbolType>Function</SymbolType>
261− </ReferenceNativeSymbol>
262− <ReferenceNativeSymbol Include="_xamarin_localized_string_format_6">
263− <SymbolType>Function</SymbolType>
264− </ReferenceNativeSymbol>
265− <ReferenceNativeSymbol Include="_xamarin_localized_string_format_7">
266− <SymbolType>Function</SymbolType>
267− </ReferenceNativeSymbol>
268− <ReferenceNativeSymbol Include="_xamarin_localized_string_format_8">
269− <SymbolType>Function</SymbolType>
270− </ReferenceNativeSymbol>
271− <ReferenceNativeSymbol Include="_xamarin_localized_string_format_9">
272− <SymbolType>Function</SymbolType>
273− </ReferenceNativeSymbol>
274− <ReferenceNativeSymbol Include="_xamarin_init_nsthread">
275− <SymbolType>Function</SymbolType>
276− </ReferenceNativeSymbol>
277− <ReferenceNativeSymbol Include="_xamarin_locate_assembly_resource">
278− <SymbolType>Function</SymbolType>
279− </ReferenceNativeSymbol>
280− <ReferenceNativeSymbol Include="_xamarin_switch_gchandle">
281− <SymbolType>Function</SymbolType>
282− </ReferenceNativeSymbol>
283− <ReferenceNativeSymbol Include="_xamarin_mono_object_retain">
284− <SymbolType>Function</SymbolType>
285− </ReferenceNativeSymbol>
286− <ReferenceNativeSymbol Include="_xamarin_find_protocol_wrapper_type">
287− <SymbolType>Function</SymbolType>
288− </ReferenceNativeSymbol>
289− <ReferenceNativeSymbol Include="_xamarin_is_user_type">
290− <SymbolType>Function</SymbolType>
291− </ReferenceNativeSymbol>
292− <ReferenceNativeSymbol Include="_xamarin_log">
293− <SymbolType>Function</SymbolType>
294− </ReferenceNativeSymbol>
295− <ReferenceNativeSymbol Include="_xamarin_release_block_on_main_thread">
296− <SymbolType>Function</SymbolType>
297− </ReferenceNativeSymbol>
298− <ReferenceNativeSymbol Include="_xamarin_get_original_working_directory_path">
299− <SymbolType>Function</SymbolType>
300− </ReferenceNativeSymbol>
301− <ReferenceNativeSymbol Include="_xamarin_get_runtime_arch">
302− <SymbolType>Function</SymbolType>
303− </ReferenceNativeSymbol>
304− <ReferenceNativeSymbol Include="_xamarin_start_wwan">
305− <SymbolType>Function</SymbolType>
306− </ReferenceNativeSymbol>
307− <ReferenceNativeSymbol Include="_xamarin_get_block_descriptor">
308− <SymbolType>Function</SymbolType>
309− </ReferenceNativeSymbol>
310− <ReferenceNativeSymbol Include="_xamarin_is_object_valid">
311− <SymbolType>Function</SymbolType>
312− </ReferenceNativeSymbol>
313− <ReferenceNativeSymbol Include="_xamarin_free">
314− <SymbolType>Function</SymbolType>
315− </ReferenceNativeSymbol>
316− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSend">
317− <SymbolType>Function</SymbolType>
318− </ReferenceNativeSymbol>
319− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSendSuper">
320− <SymbolType>Function</SymbolType>
321− </ReferenceNativeSymbol>
322− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSend_stret">
323− <SymbolType>Function</SymbolType>
324− </ReferenceNativeSymbol>
325− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSendSuper_stret">
326− <SymbolType>Function</SymbolType>
327− </ReferenceNativeSymbol>
328− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NMatrix4">
329− <SymbolType>Function</SymbolType>
330− </ReferenceNativeSymbol>
331− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NMatrix4">
332− <SymbolType>Function</SymbolType>
333− </ReferenceNativeSymbol>
334− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_NMatrix4">
335− <SymbolType>Function</SymbolType>
336− </ReferenceNativeSymbol>
337− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_NMatrix4">
338− <SymbolType>Function</SymbolType>
339− </ReferenceNativeSymbol>
340− <ReferenceNativeSymbol Include="_xamarin_simd__NVector3_objc_msgSend">
341− <SymbolType>Function</SymbolType>
342− </ReferenceNativeSymbol>
343− <ReferenceNativeSymbol Include="_xamarin_simd__NVector3_objc_msgSendSuper">
344− <SymbolType>Function</SymbolType>
345− </ReferenceNativeSymbol>
346− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix3_objc_msgSend">
347− <SymbolType>Function</SymbolType>
348− </ReferenceNativeSymbol>
349− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix3_objc_msgSendSuper">
350− <SymbolType>Function</SymbolType>
351− </ReferenceNativeSymbol>
352− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix3_objc_msgSend_stret">
353− <SymbolType>Function</SymbolType>
354− </ReferenceNativeSymbol>
355− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix3_objc_msgSendSuper_stret">
356− <SymbolType>Function</SymbolType>
357− </ReferenceNativeSymbol>
358− <ReferenceNativeSymbol Include="_xamarin_simd__CGPoint_objc_msgSend_NVector3_IntPtr_CGSize">
359− <SymbolType>Function</SymbolType>
360− </ReferenceNativeSymbol>
361− <ReferenceNativeSymbol Include="_xamarin_simd__CGPoint_objc_msgSendSuper_NVector3_IntPtr_CGSize">
362− <SymbolType>Function</SymbolType>
363− </ReferenceNativeSymbol>
364− <ReferenceNativeSymbol Include="_xamarin_simd__NVector3_objc_msgSend_CGPoint_NMatrix4_IntPtr_CGSize">
365− <SymbolType>Function</SymbolType>
366− </ReferenceNativeSymbol>
367− <ReferenceNativeSymbol Include="_xamarin_simd__NVector3_objc_msgSendSuper_CGPoint_NMatrix4_IntPtr_CGSize">
368− <SymbolType>Function</SymbolType>
369− </ReferenceNativeSymbol>
370− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSend_IntPtr_CGSize_nfloat_nfloat">
371− <SymbolType>Function</SymbolType>
372− </ReferenceNativeSymbol>
373− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSendSuper_IntPtr_CGSize_nfloat_nfloat">
374− <SymbolType>Function</SymbolType>
375− </ReferenceNativeSymbol>
376− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSend_stret_IntPtr_CGSize_nfloat_nfloat">
377− <SymbolType>Function</SymbolType>
378− </ReferenceNativeSymbol>
379− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSendSuper_stret_IntPtr_CGSize_nfloat_nfloat">
380− <SymbolType>Function</SymbolType>
381− </ReferenceNativeSymbol>
382− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSend_IntPtr">
383− <SymbolType>Function</SymbolType>
384− </ReferenceNativeSymbol>
385− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSendSuper_IntPtr">
386− <SymbolType>Function</SymbolType>
387− </ReferenceNativeSymbol>
388− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSend_stret_IntPtr">
389− <SymbolType>Function</SymbolType>
390− </ReferenceNativeSymbol>
391− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSendSuper_stret_IntPtr">
392− <SymbolType>Function</SymbolType>
393− </ReferenceNativeSymbol>
394− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NMatrix4_NVector3">
395− <SymbolType>Function</SymbolType>
396− </ReferenceNativeSymbol>
397− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NMatrix4_NVector3">
398− <SymbolType>Function</SymbolType>
399− </ReferenceNativeSymbol>
400− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_NMatrix4_NVector3">
401− <SymbolType>Function</SymbolType>
402− </ReferenceNativeSymbol>
403− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_NMatrix4_NVector3">
404− <SymbolType>Function</SymbolType>
405− </ReferenceNativeSymbol>
406− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NVector3_NVector3_IntPtr_IntPtr">
407− <SymbolType>Function</SymbolType>
408− </ReferenceNativeSymbol>
409− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NVector3_NVector3_IntPtr_IntPtr">
410− <SymbolType>Function</SymbolType>
411− </ReferenceNativeSymbol>
412− <ReferenceNativeSymbol Include="_xamarin_simd__NVector3_objc_msgSend_CGPoint_NMatrix4">
413− <SymbolType>Function</SymbolType>
414− </ReferenceNativeSymbol>
415− <ReferenceNativeSymbol Include="_xamarin_simd__NVector3_objc_msgSendSuper_CGPoint_NMatrix4">
416− <SymbolType>Function</SymbolType>
417− </ReferenceNativeSymbol>
418− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NMatrix4">
419− <SymbolType>Function</SymbolType>
420− </ReferenceNativeSymbol>
421− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NMatrix4">
422− <SymbolType>Function</SymbolType>
423− </ReferenceNativeSymbol>
424− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NMatrix4_NVector3_NVector3_NativeHandle">
425− <SymbolType>Function</SymbolType>
426− </ReferenceNativeSymbol>
427− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NMatrix4_NVector3_NVector3_NativeHandle">
428− <SymbolType>Function</SymbolType>
429− </ReferenceNativeSymbol>
430− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NVector3_NativeHandle">
431− <SymbolType>Function</SymbolType>
432− </ReferenceNativeSymbol>
433− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NVector3_NativeHandle">
434− <SymbolType>Function</SymbolType>
435− </ReferenceNativeSymbol>
436− <ReferenceNativeSymbol Include="_xamarin_simd__Vector2_objc_msgSend_NativeHandle">
437− <SymbolType>Function</SymbolType>
438− </ReferenceNativeSymbol>
439− <ReferenceNativeSymbol Include="_xamarin_simd__Vector2_objc_msgSendSuper_NativeHandle">
440− <SymbolType>Function</SymbolType>
441− </ReferenceNativeSymbol>
442− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSend_NativeHandle">
443− <SymbolType>Function</SymbolType>
444− </ReferenceNativeSymbol>
445− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSendSuper_NativeHandle">
446− <SymbolType>Function</SymbolType>
447− </ReferenceNativeSymbol>
448− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSend_stret_NativeHandle">
449− <SymbolType>Function</SymbolType>
450− </ReferenceNativeSymbol>
451− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSendSuper_stret_NativeHandle">
452− <SymbolType>Function</SymbolType>
453− </ReferenceNativeSymbol>
454− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4x3_objc_msgSend">
455− <SymbolType>Function</SymbolType>
456− </ReferenceNativeSymbol>
457− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4x3_objc_msgSendSuper">
458− <SymbolType>Function</SymbolType>
459− </ReferenceNativeSymbol>
460− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4x3_objc_msgSend_stret">
461− <SymbolType>Function</SymbolType>
462− </ReferenceNativeSymbol>
463− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4x3_objc_msgSendSuper_stret">
464− <SymbolType>Function</SymbolType>
465− </ReferenceNativeSymbol>
466− <ReferenceNativeSymbol Include="_xamarin_NativeHandle_objc_msgSend_NativeHandle_exception">
467− <SymbolType>Function</SymbolType>
468− </ReferenceNativeSymbol>
469− <ReferenceNativeSymbol Include="_xamarin_NativeHandle_objc_msgSendSuper_NativeHandle_exception">
470− <SymbolType>Function</SymbolType>
471− </ReferenceNativeSymbol>
472− <ReferenceNativeSymbol Include="_xamarin_NativeHandle_objc_msgSend_NativeHandle_NativeHandle_UIntPtr_exception">
473− <SymbolType>Function</SymbolType>
474− </ReferenceNativeSymbol>
475− <ReferenceNativeSymbol Include="_xamarin_NativeHandle_objc_msgSendSuper_NativeHandle_NativeHandle_UIntPtr_exception">
476− <SymbolType>Function</SymbolType>
477− </ReferenceNativeSymbol>
478− <ReferenceNativeSymbol Include="_xamarin_NativeHandle_objc_msgSend_NativeHandle_IntPtr_IntPtr_IntPtr_UIntPtr_exception">
479− <SymbolType>Function</SymbolType>
480− </ReferenceNativeSymbol>
481− <ReferenceNativeSymbol Include="_xamarin_NativeHandle_objc_msgSendSuper_NativeHandle_IntPtr_IntPtr_IntPtr_UIntPtr_exception">
482− <SymbolType>Function</SymbolType>
483− </ReferenceNativeSymbol>
484− <ReferenceNativeSymbol Include="_xamarin_NativeHandle_objc_msgSend_NativeHandle_UIntPtr_IntPtr_UIntPtr_exception">
485− <SymbolType>Function</SymbolType>
486− </ReferenceNativeSymbol>
487− <ReferenceNativeSymbol Include="_xamarin_NativeHandle_objc_msgSendSuper_NativeHandle_UIntPtr_IntPtr_UIntPtr_exception">
488− <SymbolType>Function</SymbolType>
489− </ReferenceNativeSymbol>
490− <ReferenceNativeSymbol Include="_xamarin_simd__Vector2_objc_msgSend">
491− <SymbolType>Function</SymbolType>
492− </ReferenceNativeSymbol>
493− <ReferenceNativeSymbol Include="_xamarin_simd__Vector2_objc_msgSendSuper">
494− <SymbolType>Function</SymbolType>
495− </ReferenceNativeSymbol>
496− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_Vector2">
497− <SymbolType>Function</SymbolType>
498− </ReferenceNativeSymbol>
499− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_Vector2">
500− <SymbolType>Function</SymbolType>
501− </ReferenceNativeSymbol>
502− <ReferenceNativeSymbol Include="_xamarin_simd__Vector3_objc_msgSend">
503− <SymbolType>Function</SymbolType>
504− </ReferenceNativeSymbol>
505− <ReferenceNativeSymbol Include="_xamarin_simd__Vector3_objc_msgSendSuper">
506− <SymbolType>Function</SymbolType>
507− </ReferenceNativeSymbol>
508− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_Vector3">
509− <SymbolType>Function</SymbolType>
510− </ReferenceNativeSymbol>
511− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_Vector3">
512− <SymbolType>Function</SymbolType>
513− </ReferenceNativeSymbol>
514− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NMatrix3">
515− <SymbolType>Function</SymbolType>
516− </ReferenceNativeSymbol>
517− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NMatrix3">
518− <SymbolType>Function</SymbolType>
519− </ReferenceNativeSymbol>
520− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_Vector2">
521− <SymbolType>Function</SymbolType>
522− </ReferenceNativeSymbol>
523− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_Vector2">
524− <SymbolType>Function</SymbolType>
525− </ReferenceNativeSymbol>
526− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_Vector3">
527− <SymbolType>Function</SymbolType>
528− </ReferenceNativeSymbol>
529− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_Vector3">
530− <SymbolType>Function</SymbolType>
531− </ReferenceNativeSymbol>
532− <ReferenceNativeSymbol Include="_xamarin_simd__NVector2i_objc_msgSend">
533− <SymbolType>Function</SymbolType>
534− </ReferenceNativeSymbol>
535− <ReferenceNativeSymbol Include="_xamarin_simd__NVector2i_objc_msgSendSuper">
536− <SymbolType>Function</SymbolType>
537− </ReferenceNativeSymbol>
538− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NVector2i_int_int_bool">
539− <SymbolType>Function</SymbolType>
540− </ReferenceNativeSymbol>
541− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NVector2i_int_int_bool">
542− <SymbolType>Function</SymbolType>
543− </ReferenceNativeSymbol>
544− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NVector2i_int_int_bool_NativeHandle">
545− <SymbolType>Function</SymbolType>
546− </ReferenceNativeSymbol>
547− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NVector2i_int_int_bool_NativeHandle">
548− <SymbolType>Function</SymbolType>
549− </ReferenceNativeSymbol>
550− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSend_NVector2i">
551− <SymbolType>Function</SymbolType>
552− </ReferenceNativeSymbol>
553− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSendSuper_NVector2i">
554− <SymbolType>Function</SymbolType>
555− </ReferenceNativeSymbol>
556− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NVector2i">
557− <SymbolType>Function</SymbolType>
558− </ReferenceNativeSymbol>
559− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NVector2i">
560− <SymbolType>Function</SymbolType>
561− </ReferenceNativeSymbol>
562− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_float_Vector2_Vector2_NativeHandle">
563− <SymbolType>Function</SymbolType>
564− </ReferenceNativeSymbol>
565− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_float_Vector2_Vector2_NativeHandle">
566− <SymbolType>Function</SymbolType>
567− </ReferenceNativeSymbol>
568− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_float_Vector2_Vector2">
569− <SymbolType>Function</SymbolType>
570− </ReferenceNativeSymbol>
571− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_float_Vector2_Vector2">
572− <SymbolType>Function</SymbolType>
573− </ReferenceNativeSymbol>
574− <ReferenceNativeSymbol Include="_xamarin_simd__GKTriangle_objc_msgSend_UIntPtr">
575− <SymbolType>Function</SymbolType>
576− </ReferenceNativeSymbol>
577− <ReferenceNativeSymbol Include="_xamarin_simd__GKTriangle_objc_msgSendSuper_UIntPtr">
578− <SymbolType>Function</SymbolType>
579− </ReferenceNativeSymbol>
580− <ReferenceNativeSymbol Include="_xamarin_simd__GKTriangle_objc_msgSend_stret_UIntPtr">
581− <SymbolType>Function</SymbolType>
582− </ReferenceNativeSymbol>
583− <ReferenceNativeSymbol Include="_xamarin_simd__GKTriangle_objc_msgSendSuper_stret_UIntPtr">
584− <SymbolType>Function</SymbolType>
585− </ReferenceNativeSymbol>
586− <ReferenceNativeSymbol Include="_xamarin_simd__float_objc_msgSend_Vector2">
587− <SymbolType>Function</SymbolType>
588− </ReferenceNativeSymbol>
589− <ReferenceNativeSymbol Include="_xamarin_simd__float_objc_msgSendSuper_Vector2">
590− <SymbolType>Function</SymbolType>
591− </ReferenceNativeSymbol>
592− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NVector3d">
593− <SymbolType>Function</SymbolType>
594− </ReferenceNativeSymbol>
595− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NVector3d">
596− <SymbolType>Function</SymbolType>
597− </ReferenceNativeSymbol>
598− <ReferenceNativeSymbol Include="_xamarin_simd__NVector2d_objc_msgSend">
599− <SymbolType>Function</SymbolType>
600− </ReferenceNativeSymbol>
601− <ReferenceNativeSymbol Include="_xamarin_simd__NVector2d_objc_msgSendSuper">
602− <SymbolType>Function</SymbolType>
603− </ReferenceNativeSymbol>
604− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_NVector2d_NVector2d_NVector2i_bool">
605− <SymbolType>Function</SymbolType>
606− </ReferenceNativeSymbol>
607− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_NVector2d_NVector2d_NVector2i_bool">
608− <SymbolType>Function</SymbolType>
609− </ReferenceNativeSymbol>
610− <ReferenceNativeSymbol Include="_xamarin_simd__float_objc_msgSend_NVector2i">
611− <SymbolType>Function</SymbolType>
612− </ReferenceNativeSymbol>
613− <ReferenceNativeSymbol Include="_xamarin_simd__float_objc_msgSendSuper_NVector2i">
614− <SymbolType>Function</SymbolType>
615− </ReferenceNativeSymbol>
616− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_float_NVector2i">
617− <SymbolType>Function</SymbolType>
618− </ReferenceNativeSymbol>
619− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_float_NVector2i">
620− <SymbolType>Function</SymbolType>
621− </ReferenceNativeSymbol>
622− <ReferenceNativeSymbol Include="_xamarin_simd__GKBox_objc_msgSend">
623− <SymbolType>Function</SymbolType>
624− </ReferenceNativeSymbol>
625− <ReferenceNativeSymbol Include="_xamarin_simd__GKBox_objc_msgSendSuper">
626− <SymbolType>Function</SymbolType>
627− </ReferenceNativeSymbol>
628− <ReferenceNativeSymbol Include="_xamarin_simd__GKBox_objc_msgSend_stret">
629− <SymbolType>Function</SymbolType>
630− </ReferenceNativeSymbol>
631− <ReferenceNativeSymbol Include="_xamarin_simd__GKBox_objc_msgSendSuper_stret">
632− <SymbolType>Function</SymbolType>
633− </ReferenceNativeSymbol>
634− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_GKBox_float">
635− <SymbolType>Function</SymbolType>
636− </ReferenceNativeSymbol>
637− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_GKBox_float">
638− <SymbolType>Function</SymbolType>
639− </ReferenceNativeSymbol>
640− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_Vector3">
641− <SymbolType>Function</SymbolType>
642− </ReferenceNativeSymbol>
643− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_Vector3">
644− <SymbolType>Function</SymbolType>
645− </ReferenceNativeSymbol>
646− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_GKBox">
647− <SymbolType>Function</SymbolType>
648− </ReferenceNativeSymbol>
649− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_GKBox">
650− <SymbolType>Function</SymbolType>
651− </ReferenceNativeSymbol>
652− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_GKBox">
653− <SymbolType>Function</SymbolType>
654− </ReferenceNativeSymbol>
655− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_GKBox">
656− <SymbolType>Function</SymbolType>
657− </ReferenceNativeSymbol>
658− <ReferenceNativeSymbol Include="_xamarin_simd__Vector2_objc_msgSend_UIntPtr">
659− <SymbolType>Function</SymbolType>
660− </ReferenceNativeSymbol>
661− <ReferenceNativeSymbol Include="_xamarin_simd__Vector2_objc_msgSendSuper_UIntPtr">
662− <SymbolType>Function</SymbolType>
663− </ReferenceNativeSymbol>
664− <ReferenceNativeSymbol Include="_xamarin_simd__Vector3_objc_msgSend_UIntPtr">
665− <SymbolType>Function</SymbolType>
666− </ReferenceNativeSymbol>
667− <ReferenceNativeSymbol Include="_xamarin_simd__Vector3_objc_msgSendSuper_UIntPtr">
668− <SymbolType>Function</SymbolType>
669− </ReferenceNativeSymbol>
670− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_GKQuad_float">
671− <SymbolType>Function</SymbolType>
672− </ReferenceNativeSymbol>
673− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_GKQuad_float">
674− <SymbolType>Function</SymbolType>
675− </ReferenceNativeSymbol>
676− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_Vector2_exception">
677− <SymbolType>Function</SymbolType>
678− </ReferenceNativeSymbol>
679− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_Vector2_exception">
680− <SymbolType>Function</SymbolType>
681− </ReferenceNativeSymbol>
682− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_GKQuad">
683− <SymbolType>Function</SymbolType>
684− </ReferenceNativeSymbol>
685− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_GKQuad">
686− <SymbolType>Function</SymbolType>
687− </ReferenceNativeSymbol>
688− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_GKQuad">
689− <SymbolType>Function</SymbolType>
690− </ReferenceNativeSymbol>
691− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_GKQuad">
692− <SymbolType>Function</SymbolType>
693− </ReferenceNativeSymbol>
694− <ReferenceNativeSymbol Include="_xamarin_simd__GKQuad_objc_msgSend">
695− <SymbolType>Function</SymbolType>
696− </ReferenceNativeSymbol>
697− <ReferenceNativeSymbol Include="_xamarin_simd__GKQuad_objc_msgSendSuper">
698− <SymbolType>Function</SymbolType>
699− </ReferenceNativeSymbol>
700− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NativeHandle_Vector2_Vector2_IntPtr">
701− <SymbolType>Function</SymbolType>
702− </ReferenceNativeSymbol>
703− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NativeHandle_Vector2_Vector2_IntPtr">
704− <SymbolType>Function</SymbolType>
705− </ReferenceNativeSymbol>
706− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NativeHandle_Vector2_Vector2">
707− <SymbolType>Function</SymbolType>
708− </ReferenceNativeSymbol>
709− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NativeHandle_Vector2_Vector2">
710− <SymbolType>Function</SymbolType>
711− </ReferenceNativeSymbol>
712− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_Vector2_Vector2_exception">
713− <SymbolType>Function</SymbolType>
714− </ReferenceNativeSymbol>
715− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_Vector2_Vector2_exception">
716− <SymbolType>Function</SymbolType>
717− </ReferenceNativeSymbol>
718− <ReferenceNativeSymbol Include="_xamarin_simd__MPSAxisAlignedBoundingBox_objc_msgSend">
719− <SymbolType>Function</SymbolType>
720− </ReferenceNativeSymbol>
721− <ReferenceNativeSymbol Include="_xamarin_simd__MPSAxisAlignedBoundingBox_objc_msgSendSuper">
722− <SymbolType>Function</SymbolType>
723− </ReferenceNativeSymbol>
724− <ReferenceNativeSymbol Include="_xamarin_simd__MPSAxisAlignedBoundingBox_objc_msgSend_stret">
725− <SymbolType>Function</SymbolType>
726− </ReferenceNativeSymbol>
727− <ReferenceNativeSymbol Include="_xamarin_simd__MPSAxisAlignedBoundingBox_objc_msgSendSuper_stret">
728− <SymbolType>Function</SymbolType>
729− </ReferenceNativeSymbol>
730− <ReferenceNativeSymbol Include="_xamarin_simd__MPSImageHistogramInfo_objc_msgSend">
731− <SymbolType>Function</SymbolType>
732− </ReferenceNativeSymbol>
733− <ReferenceNativeSymbol Include="_xamarin_simd__MPSImageHistogramInfo_objc_msgSendSuper">
734− <SymbolType>Function</SymbolType>
735− </ReferenceNativeSymbol>
736− <ReferenceNativeSymbol Include="_xamarin_simd__MPSImageHistogramInfo_objc_msgSend_stret">
737− <SymbolType>Function</SymbolType>
738− </ReferenceNativeSymbol>
739− <ReferenceNativeSymbol Include="_xamarin_simd__MPSImageHistogramInfo_objc_msgSendSuper_stret">
740− <SymbolType>Function</SymbolType>
741− </ReferenceNativeSymbol>
742− <ReferenceNativeSymbol Include="_xamarin_simd__Vector4_objc_msgSend">
743− <SymbolType>Function</SymbolType>
744− </ReferenceNativeSymbol>
745− <ReferenceNativeSymbol Include="_xamarin_simd__Vector4_objc_msgSendSuper">
746− <SymbolType>Function</SymbolType>
747− </ReferenceNativeSymbol>
748− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_Vector4">
749− <SymbolType>Function</SymbolType>
750− </ReferenceNativeSymbol>
751− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_Vector4">
752− <SymbolType>Function</SymbolType>
753− </ReferenceNativeSymbol>
754− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_ref_MPSImageHistogramInfo">
755− <SymbolType>Function</SymbolType>
756− </ReferenceNativeSymbol>
757− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_ref_MPSImageHistogramInfo">
758− <SymbolType>Function</SymbolType>
759− </ReferenceNativeSymbol>
760− <ReferenceNativeSymbol Include="_xamarin_simd__NVector16b_objc_msgSend">
761− <SymbolType>Function</SymbolType>
762− </ReferenceNativeSymbol>
763− <ReferenceNativeSymbol Include="_xamarin_simd__NVector16b_objc_msgSendSuper">
764− <SymbolType>Function</SymbolType>
765− </ReferenceNativeSymbol>
766− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NMatrix4_Double">
767− <SymbolType>Function</SymbolType>
768− </ReferenceNativeSymbol>
769− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NMatrix4_Double">
770− <SymbolType>Function</SymbolType>
771− </ReferenceNativeSymbol>
772− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NMatrix4d_Double">
773− <SymbolType>Function</SymbolType>
774− </ReferenceNativeSymbol>
775− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NMatrix4d_Double">
776− <SymbolType>Function</SymbolType>
777− </ReferenceNativeSymbol>
778− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSend_Double">
779− <SymbolType>Function</SymbolType>
780− </ReferenceNativeSymbol>
781− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSendSuper_Double">
782− <SymbolType>Function</SymbolType>
783− </ReferenceNativeSymbol>
784− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSend_stret_Double">
785− <SymbolType>Function</SymbolType>
786− </ReferenceNativeSymbol>
787− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSendSuper_stret_Double">
788− <SymbolType>Function</SymbolType>
789− </ReferenceNativeSymbol>
790− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4d_objc_msgSend_Double">
791− <SymbolType>Function</SymbolType>
792− </ReferenceNativeSymbol>
793− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4d_objc_msgSendSuper_Double">
794− <SymbolType>Function</SymbolType>
795− </ReferenceNativeSymbol>
796− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4d_objc_msgSend_stret_Double">
797− <SymbolType>Function</SymbolType>
798− </ReferenceNativeSymbol>
799− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4d_objc_msgSendSuper_stret_Double">
800− <SymbolType>Function</SymbolType>
801− </ReferenceNativeSymbol>
802− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_Quaternion_Double">
803− <SymbolType>Function</SymbolType>
804− </ReferenceNativeSymbol>
805− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_Quaternion_Double">
806− <SymbolType>Function</SymbolType>
807− </ReferenceNativeSymbol>
808− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NQuaterniond_Double">
809− <SymbolType>Function</SymbolType>
810− </ReferenceNativeSymbol>
811− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NQuaterniond_Double">
812− <SymbolType>Function</SymbolType>
813− </ReferenceNativeSymbol>
814− <ReferenceNativeSymbol Include="_xamarin_simd__Quaternion_objc_msgSend_Double">
815− <SymbolType>Function</SymbolType>
816− </ReferenceNativeSymbol>
817− <ReferenceNativeSymbol Include="_xamarin_simd__Quaternion_objc_msgSendSuper_Double">
818− <SymbolType>Function</SymbolType>
819− </ReferenceNativeSymbol>
820− <ReferenceNativeSymbol Include="_xamarin_simd__NQuaterniond_objc_msgSend_Double">
821− <SymbolType>Function</SymbolType>
822− </ReferenceNativeSymbol>
823− <ReferenceNativeSymbol Include="_xamarin_simd__NQuaterniond_objc_msgSendSuper_Double">
824− <SymbolType>Function</SymbolType>
825− </ReferenceNativeSymbol>
826− <ReferenceNativeSymbol Include="_xamarin_simd__NQuaterniond_objc_msgSend_stret_Double">
827− <SymbolType>Function</SymbolType>
828− </ReferenceNativeSymbol>
829− <ReferenceNativeSymbol Include="_xamarin_simd__NQuaterniond_objc_msgSendSuper_stret_Double">
830− <SymbolType>Function</SymbolType>
831− </ReferenceNativeSymbol>
832− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_Vector2_Double">
833− <SymbolType>Function</SymbolType>
834− </ReferenceNativeSymbol>
835− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_Vector2_Double">
836− <SymbolType>Function</SymbolType>
837− </ReferenceNativeSymbol>
838− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NVector2d_Double">
839− <SymbolType>Function</SymbolType>
840− </ReferenceNativeSymbol>
841− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NVector2d_Double">
842− <SymbolType>Function</SymbolType>
843− </ReferenceNativeSymbol>
844− <ReferenceNativeSymbol Include="_xamarin_simd__Vector2_objc_msgSend_Double">
845− <SymbolType>Function</SymbolType>
846− </ReferenceNativeSymbol>
847− <ReferenceNativeSymbol Include="_xamarin_simd__Vector2_objc_msgSendSuper_Double">
848− <SymbolType>Function</SymbolType>
849− </ReferenceNativeSymbol>
850− <ReferenceNativeSymbol Include="_xamarin_simd__NVector2d_objc_msgSend_Double">
851− <SymbolType>Function</SymbolType>
852− </ReferenceNativeSymbol>
853− <ReferenceNativeSymbol Include="_xamarin_simd__NVector2d_objc_msgSendSuper_Double">
854− <SymbolType>Function</SymbolType>
855− </ReferenceNativeSymbol>
856− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NVector3_Double">
857− <SymbolType>Function</SymbolType>
858− </ReferenceNativeSymbol>
859− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NVector3_Double">
860− <SymbolType>Function</SymbolType>
861− </ReferenceNativeSymbol>
862− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NVector3d_Double">
863− <SymbolType>Function</SymbolType>
864− </ReferenceNativeSymbol>
865− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NVector3d_Double">
866− <SymbolType>Function</SymbolType>
867− </ReferenceNativeSymbol>
868− <ReferenceNativeSymbol Include="_xamarin_simd__NVector3_objc_msgSend_Double">
869− <SymbolType>Function</SymbolType>
870− </ReferenceNativeSymbol>
871− <ReferenceNativeSymbol Include="_xamarin_simd__NVector3_objc_msgSendSuper_Double">
872− <SymbolType>Function</SymbolType>
873− </ReferenceNativeSymbol>
874− <ReferenceNativeSymbol Include="_xamarin_simd__NVector3d_objc_msgSend_Double">
875− <SymbolType>Function</SymbolType>
876− </ReferenceNativeSymbol>
877− <ReferenceNativeSymbol Include="_xamarin_simd__NVector3d_objc_msgSendSuper_Double">
878− <SymbolType>Function</SymbolType>
879− </ReferenceNativeSymbol>
880− <ReferenceNativeSymbol Include="_xamarin_simd__NVector3d_objc_msgSend_stret_Double">
881− <SymbolType>Function</SymbolType>
882− </ReferenceNativeSymbol>
883− <ReferenceNativeSymbol Include="_xamarin_simd__NVector3d_objc_msgSendSuper_stret_Double">
884− <SymbolType>Function</SymbolType>
885− </ReferenceNativeSymbol>
886− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_Vector4_Double">
887− <SymbolType>Function</SymbolType>
888− </ReferenceNativeSymbol>
889− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_Vector4_Double">
890− <SymbolType>Function</SymbolType>
891− </ReferenceNativeSymbol>
892− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NVector4d_Double">
893− <SymbolType>Function</SymbolType>
894− </ReferenceNativeSymbol>
895− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NVector4d_Double">
896− <SymbolType>Function</SymbolType>
897− </ReferenceNativeSymbol>
898− <ReferenceNativeSymbol Include="_xamarin_simd__Vector4_objc_msgSend_Double">
899− <SymbolType>Function</SymbolType>
900− </ReferenceNativeSymbol>
901− <ReferenceNativeSymbol Include="_xamarin_simd__Vector4_objc_msgSendSuper_Double">
902− <SymbolType>Function</SymbolType>
903− </ReferenceNativeSymbol>
904− <ReferenceNativeSymbol Include="_xamarin_simd__NVector4d_objc_msgSend_Double">
905− <SymbolType>Function</SymbolType>
906− </ReferenceNativeSymbol>
907− <ReferenceNativeSymbol Include="_xamarin_simd__NVector4d_objc_msgSendSuper_Double">
908− <SymbolType>Function</SymbolType>
909− </ReferenceNativeSymbol>
910− <ReferenceNativeSymbol Include="_xamarin_simd__NVector4d_objc_msgSend_stret_Double">
911− <SymbolType>Function</SymbolType>
912− </ReferenceNativeSymbol>
913− <ReferenceNativeSymbol Include="_xamarin_simd__NVector4d_objc_msgSendSuper_stret_Double">
914− <SymbolType>Function</SymbolType>
915− </ReferenceNativeSymbol>
916− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4d_objc_msgSend">
917− <SymbolType>Function</SymbolType>
918− </ReferenceNativeSymbol>
919− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4d_objc_msgSendSuper">
920− <SymbolType>Function</SymbolType>
921− </ReferenceNativeSymbol>
922− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4d_objc_msgSend_stret">
923− <SymbolType>Function</SymbolType>
924− </ReferenceNativeSymbol>
925− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4d_objc_msgSendSuper_stret">
926− <SymbolType>Function</SymbolType>
927− </ReferenceNativeSymbol>
928− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NMatrix4d">
929− <SymbolType>Function</SymbolType>
930− </ReferenceNativeSymbol>
931− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NMatrix4d">
932− <SymbolType>Function</SymbolType>
933− </ReferenceNativeSymbol>
934− <ReferenceNativeSymbol Include="_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSend">
935− <SymbolType>Function</SymbolType>
936− </ReferenceNativeSymbol>
937− <ReferenceNativeSymbol Include="_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSendSuper">
938− <SymbolType>Function</SymbolType>
939− </ReferenceNativeSymbol>
940− <ReferenceNativeSymbol Include="_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSend_stret">
941− <SymbolType>Function</SymbolType>
942− </ReferenceNativeSymbol>
943− <ReferenceNativeSymbol Include="_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSendSuper_stret">
944− <SymbolType>Function</SymbolType>
945− </ReferenceNativeSymbol>
946− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NVector3">
947− <SymbolType>Function</SymbolType>
948− </ReferenceNativeSymbol>
949− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NVector3">
950− <SymbolType>Function</SymbolType>
951− </ReferenceNativeSymbol>
952− <ReferenceNativeSymbol Include="_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSend_Double">
953− <SymbolType>Function</SymbolType>
954− </ReferenceNativeSymbol>
955− <ReferenceNativeSymbol Include="_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSendSuper_Double">
956− <SymbolType>Function</SymbolType>
957− </ReferenceNativeSymbol>
958− <ReferenceNativeSymbol Include="_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSend_stret_Double">
959− <SymbolType>Function</SymbolType>
960− </ReferenceNativeSymbol>
961− <ReferenceNativeSymbol Include="_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSendSuper_stret_Double">
962− <SymbolType>Function</SymbolType>
963− </ReferenceNativeSymbol>
964− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_MDLAxisAlignedBoundingBox_bool">
965− <SymbolType>Function</SymbolType>
966− </ReferenceNativeSymbol>
967− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_MDLAxisAlignedBoundingBox_bool">
968− <SymbolType>Function</SymbolType>
969− </ReferenceNativeSymbol>
970− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_Vector3_Vector3">
971− <SymbolType>Function</SymbolType>
972− </ReferenceNativeSymbol>
973− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_Vector3_Vector3">
974− <SymbolType>Function</SymbolType>
975− </ReferenceNativeSymbol>
976− <ReferenceNativeSymbol Include="_xamarin_simd__Vector3_objc_msgSend_NVector2i_NVector2i">
977− <SymbolType>Function</SymbolType>
978− </ReferenceNativeSymbol>
979− <ReferenceNativeSymbol Include="_xamarin_simd__Vector3_objc_msgSendSuper_NVector2i_NVector2i">
980− <SymbolType>Function</SymbolType>
981− </ReferenceNativeSymbol>
982− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_bool_NativeHandle_NVector2i_IntPtr_UIntPtr_IntPtr_bool">
983− <SymbolType>Function</SymbolType>
984− </ReferenceNativeSymbol>
985− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_bool_NativeHandle_NVector2i_IntPtr_UIntPtr_IntPtr_bool">
986− <SymbolType>Function</SymbolType>
987− </ReferenceNativeSymbol>
988− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_float_NativeHandle_NVector2i_int_IntPtr_NativeHandle_NativeHandle">
989− <SymbolType>Function</SymbolType>
990− </ReferenceNativeSymbol>
991− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_float_NativeHandle_NVector2i_int_IntPtr_NativeHandle_NativeHandle">
992− <SymbolType>Function</SymbolType>
993− </ReferenceNativeSymbol>
994− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_float_float_NativeHandle_NVector2i">
995− <SymbolType>Function</SymbolType>
996− </ReferenceNativeSymbol>
997− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_float_float_NativeHandle_NVector2i">
998− <SymbolType>Function</SymbolType>
999− </ReferenceNativeSymbol>
1000− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_NativeHandle_NativeHandle_NVector2i">
1001− <SymbolType>Function</SymbolType>
1002− </ReferenceNativeSymbol>
1003− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_NativeHandle_NativeHandle_NVector2i">
1004− <SymbolType>Function</SymbolType>
1005− </ReferenceNativeSymbol>
1006− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_Vector3_NativeHandle">
1007− <SymbolType>Function</SymbolType>
1008− </ReferenceNativeSymbol>
1009− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_Vector3_NativeHandle">
1010− <SymbolType>Function</SymbolType>
1011− </ReferenceNativeSymbol>
1012− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_UIntPtr_Vector2">
1013− <SymbolType>Function</SymbolType>
1014− </ReferenceNativeSymbol>
1015− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_UIntPtr_Vector2">
1016− <SymbolType>Function</SymbolType>
1017− </ReferenceNativeSymbol>
1018− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_UIntPtr_Vector3">
1019− <SymbolType>Function</SymbolType>
1020− </ReferenceNativeSymbol>
1021− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_UIntPtr_Vector3">
1022− <SymbolType>Function</SymbolType>
1023− </ReferenceNativeSymbol>
1024− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_UIntPtr_Vector4">
1025− <SymbolType>Function</SymbolType>
1026− </ReferenceNativeSymbol>
1027− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_UIntPtr_Vector4">
1028− <SymbolType>Function</SymbolType>
1029− </ReferenceNativeSymbol>
1030− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_UIntPtr_NMatrix4">
1031− <SymbolType>Function</SymbolType>
1032− </ReferenceNativeSymbol>
1033− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_UIntPtr_NMatrix4">
1034− <SymbolType>Function</SymbolType>
1035− </ReferenceNativeSymbol>
1036− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSend_Vector3_NVector3i_bool_IntPtr_NativeHandle">
1037− <SymbolType>Function</SymbolType>
1038− </ReferenceNativeSymbol>
1039− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSendSuper_Vector3_NVector3i_bool_IntPtr_NativeHandle">
1040− <SymbolType>Function</SymbolType>
1041− </ReferenceNativeSymbol>
1042− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSend_Vector3_NVector2i_bool_IntPtr_NativeHandle">
1043− <SymbolType>Function</SymbolType>
1044− </ReferenceNativeSymbol>
1045− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSendSuper_Vector3_NVector2i_bool_IntPtr_NativeHandle">
1046− <SymbolType>Function</SymbolType>
1047− </ReferenceNativeSymbol>
1048− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSend_Vector3_NVector2i_bool_bool_IntPtr_NativeHandle">
1049− <SymbolType>Function</SymbolType>
1050− </ReferenceNativeSymbol>
1051− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSendSuper_Vector3_NVector2i_bool_bool_IntPtr_NativeHandle">
1052− <SymbolType>Function</SymbolType>
1053− </ReferenceNativeSymbol>
1054− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSend_Vector3_NVector2i_bool_bool_bool_IntPtr_NativeHandle">
1055− <SymbolType>Function</SymbolType>
1056− </ReferenceNativeSymbol>
1057− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSendSuper_Vector3_NVector2i_bool_bool_bool_IntPtr_NativeHandle">
1058− <SymbolType>Function</SymbolType>
1059− </ReferenceNativeSymbol>
1060− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSend_Vector3_NVector2i_int_bool_IntPtr_NativeHandle">
1061− <SymbolType>Function</SymbolType>
1062− </ReferenceNativeSymbol>
1063− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSendSuper_Vector3_NVector2i_int_bool_IntPtr_NativeHandle">
1064− <SymbolType>Function</SymbolType>
1065− </ReferenceNativeSymbol>
1066− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSend_Vector3_NVector2i_IntPtr_NativeHandle">
1067− <SymbolType>Function</SymbolType>
1068− </ReferenceNativeSymbol>
1069− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSendSuper_Vector3_NVector2i_IntPtr_NativeHandle">
1070− <SymbolType>Function</SymbolType>
1071− </ReferenceNativeSymbol>
1072− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSend_Vector3_bool_IntPtr_NativeHandle">
1073− <SymbolType>Function</SymbolType>
1074− </ReferenceNativeSymbol>
1075− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSendSuper_Vector3_bool_IntPtr_NativeHandle">
1076− <SymbolType>Function</SymbolType>
1077− </ReferenceNativeSymbol>
1078− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSend_NativeHandle_int_UInt32_NativeHandle">
1079− <SymbolType>Function</SymbolType>
1080− </ReferenceNativeSymbol>
1081− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSendSuper_NativeHandle_int_UInt32_NativeHandle">
1082− <SymbolType>Function</SymbolType>
1083− </ReferenceNativeSymbol>
1084− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_Vector3_NVector3i_IntPtr_bool_NativeHandle">
1085− <SymbolType>Function</SymbolType>
1086− </ReferenceNativeSymbol>
1087− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_Vector3_NVector3i_IntPtr_bool_NativeHandle">
1088− <SymbolType>Function</SymbolType>
1089− </ReferenceNativeSymbol>
1090− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_Vector2_NVector2i_IntPtr_NativeHandle">
1091− <SymbolType>Function</SymbolType>
1092− </ReferenceNativeSymbol>
1093− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_Vector2_NVector2i_IntPtr_NativeHandle">
1094− <SymbolType>Function</SymbolType>
1095− </ReferenceNativeSymbol>
1096− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_Vector3_UIntPtr_UIntPtr_IntPtr_bool_bool_NativeHandle">
1097− <SymbolType>Function</SymbolType>
1098− </ReferenceNativeSymbol>
1099− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_Vector3_UIntPtr_UIntPtr_IntPtr_bool_bool_NativeHandle">
1100− <SymbolType>Function</SymbolType>
1101− </ReferenceNativeSymbol>
1102− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_float_Vector2_UIntPtr_UIntPtr_IntPtr_bool_NativeHandle">
1103− <SymbolType>Function</SymbolType>
1104− </ReferenceNativeSymbol>
1105− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_float_Vector2_UIntPtr_UIntPtr_IntPtr_bool_NativeHandle">
1106− <SymbolType>Function</SymbolType>
1107− </ReferenceNativeSymbol>
1108− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_float_Vector2_UIntPtr_UIntPtr_UIntPtr_IntPtr_bool_NativeHandle">
1109− <SymbolType>Function</SymbolType>
1110− </ReferenceNativeSymbol>
1111− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_float_Vector2_UIntPtr_UIntPtr_UIntPtr_IntPtr_bool_NativeHandle">
1112− <SymbolType>Function</SymbolType>
1113− </ReferenceNativeSymbol>
1114− <ReferenceNativeSymbol Include="_xamarin_simd__bool_objc_msgSend_NVector2i_IntPtr_float_NativeHandle_NativeHandle_NativeHandle">
1115− <SymbolType>Function</SymbolType>
1116− </ReferenceNativeSymbol>
1117− <ReferenceNativeSymbol Include="_xamarin_simd__bool_objc_msgSendSuper_NVector2i_IntPtr_float_NativeHandle_NativeHandle_NativeHandle">
1118− <SymbolType>Function</SymbolType>
1119− </ReferenceNativeSymbol>
1120− <ReferenceNativeSymbol Include="_xamarin_simd__bool_objc_msgSend_NVector2i_NativeHandle_NativeHandle_NativeHandle_NativeHandle">
1121− <SymbolType>Function</SymbolType>
1122− </ReferenceNativeSymbol>
1123− <ReferenceNativeSymbol Include="_xamarin_simd__bool_objc_msgSendSuper_NVector2i_NativeHandle_NativeHandle_NativeHandle_NativeHandle">
1124− <SymbolType>Function</SymbolType>
1125− </ReferenceNativeSymbol>
1126− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSend_float_NativeHandle_NVector2i_IntPtr">
1127− <SymbolType>Function</SymbolType>
1128− </ReferenceNativeSymbol>
1129− <ReferenceNativeSymbol Include="_xamarin_simd__IntPtr_objc_msgSendSuper_float_NativeHandle_NVector2i_IntPtr">
1130− <SymbolType>Function</SymbolType>
1131− </ReferenceNativeSymbol>
1132− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_float_NativeHandle_NVector2i_int_IntPtr_bool">
1133− <SymbolType>Function</SymbolType>
1134− </ReferenceNativeSymbol>
1135− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_float_NativeHandle_NVector2i_int_IntPtr_bool">
1136− <SymbolType>Function</SymbolType>
1137− </ReferenceNativeSymbol>
1138− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_IntPtr_NVector2i_float_float_float_float">
1139− <SymbolType>Function</SymbolType>
1140− </ReferenceNativeSymbol>
1141− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_IntPtr_NVector2i_float_float_float_float">
1142− <SymbolType>Function</SymbolType>
1143− </ReferenceNativeSymbol>
1144− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_IntPtr_NVector2i_float_float_float_float_float">
1145− <SymbolType>Function</SymbolType>
1146− </ReferenceNativeSymbol>
1147− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_IntPtr_NVector2i_float_float_float_float_float">
1148− <SymbolType>Function</SymbolType>
1149− </ReferenceNativeSymbol>
1150− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_NativeHandle_NVector2i">
1151− <SymbolType>Function</SymbolType>
1152− </ReferenceNativeSymbol>
1153− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_NativeHandle_NVector2i">
1154− <SymbolType>Function</SymbolType>
1155− </ReferenceNativeSymbol>
1156− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_NativeHandle_NVector2i_float">
1157− <SymbolType>Function</SymbolType>
1158− </ReferenceNativeSymbol>
1159− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_NativeHandle_NVector2i_float">
1160− <SymbolType>Function</SymbolType>
1161− </ReferenceNativeSymbol>
1162− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NMatrix4_bool">
1163− <SymbolType>Function</SymbolType>
1164− </ReferenceNativeSymbol>
1165− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NMatrix4_bool">
1166− <SymbolType>Function</SymbolType>
1167− </ReferenceNativeSymbol>
1168− <ReferenceNativeSymbol Include="_xamarin_simd__Vector3_objc_msgSend_Double">
1169− <SymbolType>Function</SymbolType>
1170− </ReferenceNativeSymbol>
1171− <ReferenceNativeSymbol Include="_xamarin_simd__Vector3_objc_msgSendSuper_Double">
1172− <SymbolType>Function</SymbolType>
1173− </ReferenceNativeSymbol>
1174− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_Vector3_Double">
1175− <SymbolType>Function</SymbolType>
1176− </ReferenceNativeSymbol>
1177− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_Vector3_Double">
1178− <SymbolType>Function</SymbolType>
1179− </ReferenceNativeSymbol>
1180− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSend_NativeHandle_Double">
1181− <SymbolType>Function</SymbolType>
1182− </ReferenceNativeSymbol>
1183− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSendSuper_NativeHandle_Double">
1184− <SymbolType>Function</SymbolType>
1185− </ReferenceNativeSymbol>
1186− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSend_stret_NativeHandle_Double">
1187− <SymbolType>Function</SymbolType>
1188− </ReferenceNativeSymbol>
1189− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix4_objc_msgSendSuper_stret_NativeHandle_Double">
1190− <SymbolType>Function</SymbolType>
1191− </ReferenceNativeSymbol>
1192− <ReferenceNativeSymbol Include="_xamarin_simd__MDLVoxelIndexExtent_objc_msgSend">
1193− <SymbolType>Function</SymbolType>
1194− </ReferenceNativeSymbol>
1195− <ReferenceNativeSymbol Include="_xamarin_simd__MDLVoxelIndexExtent_objc_msgSendSuper">
1196− <SymbolType>Function</SymbolType>
1197− </ReferenceNativeSymbol>
1198− <ReferenceNativeSymbol Include="_xamarin_simd__MDLVoxelIndexExtent_objc_msgSend_stret">
1199− <SymbolType>Function</SymbolType>
1200− </ReferenceNativeSymbol>
1201− <ReferenceNativeSymbol Include="_xamarin_simd__MDLVoxelIndexExtent_objc_msgSendSuper_stret">
1202− <SymbolType>Function</SymbolType>
1203− </ReferenceNativeSymbol>
1204− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_MDLAxisAlignedBoundingBox_float">
1205− <SymbolType>Function</SymbolType>
1206− </ReferenceNativeSymbol>
1207− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_MDLAxisAlignedBoundingBox_float">
1208− <SymbolType>Function</SymbolType>
1209− </ReferenceNativeSymbol>
1210− <ReferenceNativeSymbol Include="_xamarin_simd__bool_objc_msgSend_NVector4i_bool_bool_bool_bool">
1211− <SymbolType>Function</SymbolType>
1212− </ReferenceNativeSymbol>
1213− <ReferenceNativeSymbol Include="_xamarin_simd__bool_objc_msgSendSuper_NVector4i_bool_bool_bool_bool">
1214− <SymbolType>Function</SymbolType>
1215− </ReferenceNativeSymbol>
1216− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NVector4i">
1217− <SymbolType>Function</SymbolType>
1218− </ReferenceNativeSymbol>
1219− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NVector4i">
1220− <SymbolType>Function</SymbolType>
1221− </ReferenceNativeSymbol>
1222− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_MDLVoxelIndexExtent">
1223− <SymbolType>Function</SymbolType>
1224− </ReferenceNativeSymbol>
1225− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_MDLVoxelIndexExtent">
1226− <SymbolType>Function</SymbolType>
1227− </ReferenceNativeSymbol>
1228− <ReferenceNativeSymbol Include="_xamarin_simd__NVector4i_objc_msgSend_Vector3">
1229− <SymbolType>Function</SymbolType>
1230− </ReferenceNativeSymbol>
1231− <ReferenceNativeSymbol Include="_xamarin_simd__NVector4i_objc_msgSendSuper_Vector3">
1232− <SymbolType>Function</SymbolType>
1233− </ReferenceNativeSymbol>
1234− <ReferenceNativeSymbol Include="_xamarin_simd__Vector3_objc_msgSend_NVector4i">
1235− <SymbolType>Function</SymbolType>
1236− </ReferenceNativeSymbol>
1237− <ReferenceNativeSymbol Include="_xamarin_simd__Vector3_objc_msgSendSuper_NVector4i">
1238− <SymbolType>Function</SymbolType>
1239− </ReferenceNativeSymbol>
1240− <ReferenceNativeSymbol Include="_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSend_NVector4i">
1241− <SymbolType>Function</SymbolType>
1242− </ReferenceNativeSymbol>
1243− <ReferenceNativeSymbol Include="_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSendSuper_NVector4i">
1244− <SymbolType>Function</SymbolType>
1245− </ReferenceNativeSymbol>
1246− <ReferenceNativeSymbol Include="_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSend_stret_NVector4i">
1247− <SymbolType>Function</SymbolType>
1248− </ReferenceNativeSymbol>
1249− <ReferenceNativeSymbol Include="_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSendSuper_stret_NVector4i">
1250− <SymbolType>Function</SymbolType>
1251− </ReferenceNativeSymbol>
1252− <ReferenceNativeSymbol Include="_xamarin_simd__NVector3d_objc_msgSend">
1253− <SymbolType>Function</SymbolType>
1254− </ReferenceNativeSymbol>
1255− <ReferenceNativeSymbol Include="_xamarin_simd__NVector3d_objc_msgSendSuper">
1256− <SymbolType>Function</SymbolType>
1257− </ReferenceNativeSymbol>
1258− <ReferenceNativeSymbol Include="_xamarin_simd__NVector3d_objc_msgSend_stret">
1259− <SymbolType>Function</SymbolType>
1260− </ReferenceNativeSymbol>
1261− <ReferenceNativeSymbol Include="_xamarin_simd__NVector3d_objc_msgSendSuper_stret">
1262− <SymbolType>Function</SymbolType>
1263− </ReferenceNativeSymbol>
1264− <ReferenceNativeSymbol Include="_xamarin_simd__Quaternion_objc_msgSend">
1265− <SymbolType>Function</SymbolType>
1266− </ReferenceNativeSymbol>
1267− <ReferenceNativeSymbol Include="_xamarin_simd__Quaternion_objc_msgSendSuper">
1268− <SymbolType>Function</SymbolType>
1269− </ReferenceNativeSymbol>
1270− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_Quaternion_NativeHandle">
1271− <SymbolType>Function</SymbolType>
1272− </ReferenceNativeSymbol>
1273− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_Quaternion_NativeHandle">
1274− <SymbolType>Function</SymbolType>
1275− </ReferenceNativeSymbol>
1276− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_Quaternion">
1277− <SymbolType>Function</SymbolType>
1278− </ReferenceNativeSymbol>
1279− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_Quaternion">
1280− <SymbolType>Function</SymbolType>
1281− </ReferenceNativeSymbol>
1282− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NVector2d_NativeHandle">
1283− <SymbolType>Function</SymbolType>
1284− </ReferenceNativeSymbol>
1285− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NVector2d_NativeHandle">
1286− <SymbolType>Function</SymbolType>
1287− </ReferenceNativeSymbol>
1288− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NVector2d">
1289− <SymbolType>Function</SymbolType>
1290− </ReferenceNativeSymbol>
1291− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NVector2d">
1292− <SymbolType>Function</SymbolType>
1293− </ReferenceNativeSymbol>
1294− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NVector2d_IntPtr">
1295− <SymbolType>Function</SymbolType>
1296− </ReferenceNativeSymbol>
1297− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NVector2d_IntPtr">
1298− <SymbolType>Function</SymbolType>
1299− </ReferenceNativeSymbol>
1300− <ReferenceNativeSymbol Include="_xamarin_simd__Vector3_objc_msgSend_Vector3">
1301− <SymbolType>Function</SymbolType>
1302− </ReferenceNativeSymbol>
1303− <ReferenceNativeSymbol Include="_xamarin_simd__Vector3_objc_msgSendSuper_Vector3">
1304− <SymbolType>Function</SymbolType>
1305− </ReferenceNativeSymbol>
1306− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_Vector4">
1307− <SymbolType>Function</SymbolType>
1308− </ReferenceNativeSymbol>
1309− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_Vector4">
1310− <SymbolType>Function</SymbolType>
1311− </ReferenceNativeSymbol>
1312− <ReferenceNativeSymbol Include="_xamarin_vector_float3__Vector4_objc_msgSend">
1313− <SymbolType>Function</SymbolType>
1314− </ReferenceNativeSymbol>
1315− <ReferenceNativeSymbol Include="_xamarin_vector_float3__Vector4_objc_msgSendSuper">
1316− <SymbolType>Function</SymbolType>
1317− </ReferenceNativeSymbol>
1318− <ReferenceNativeSymbol Include="_xamarin_vector_float3__void_objc_msgSend_Vector4">
1319− <SymbolType>Function</SymbolType>
1320− </ReferenceNativeSymbol>
1321− <ReferenceNativeSymbol Include="_xamarin_vector_float3__void_objc_msgSendSuper_Vector4">
1322− <SymbolType>Function</SymbolType>
1323− </ReferenceNativeSymbol>
1324− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_Quaternion">
1325− <SymbolType>Function</SymbolType>
1326− </ReferenceNativeSymbol>
1327− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_Quaternion">
1328− <SymbolType>Function</SymbolType>
1329− </ReferenceNativeSymbol>
1330− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix2_objc_msgSend">
1331− <SymbolType>Function</SymbolType>
1332− </ReferenceNativeSymbol>
1333− <ReferenceNativeSymbol Include="_xamarin_simd__NMatrix2_objc_msgSendSuper">
1334− <SymbolType>Function</SymbolType>
1335− </ReferenceNativeSymbol>
1336− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSend_NMatrix2">
1337− <SymbolType>Function</SymbolType>
1338− </ReferenceNativeSymbol>
1339− <ReferenceNativeSymbol Include="_xamarin_simd__void_objc_msgSendSuper_NMatrix2">
1340− <SymbolType>Function</SymbolType>
1341− </ReferenceNativeSymbol>
1342− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_Vector2">
1343− <SymbolType>Function</SymbolType>
1344− </ReferenceNativeSymbol>
1345− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_Vector2">
1346− <SymbolType>Function</SymbolType>
1347− </ReferenceNativeSymbol>
1348− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_Vector4">
1349− <SymbolType>Function</SymbolType>
1350− </ReferenceNativeSymbol>
1351− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_Vector4">
1352− <SymbolType>Function</SymbolType>
1353− </ReferenceNativeSymbol>
1354− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_NMatrix2">
1355− <SymbolType>Function</SymbolType>
1356− </ReferenceNativeSymbol>
1357− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_NMatrix2">
1358− <SymbolType>Function</SymbolType>
1359− </ReferenceNativeSymbol>
1360− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_NMatrix3">
1361− <SymbolType>Function</SymbolType>
1362− </ReferenceNativeSymbol>
1363− <ReferenceNativeSymbol Include="_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_NMatrix3">
1364− <SymbolType>Function</SymbolType>
1365− </ReferenceNativeSymbol>
1366− <ReferenceNativeSymbol Include="_xamarin_simd__Vector2_objc_msgSend_IntPtr">
1367− <SymbolType>Function</SymbolType>
1368− </ReferenceNativeSymbol>
1369− <ReferenceNativeSymbol Include="_xamarin_simd__Vector2_objc_msgSendSuper_IntPtr">
1370− <SymbolType>Function</SymbolType>
1371− </ReferenceNativeSymbol>
1372− </ItemGroup>
1373−</Project>
client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/_AssembliesToAOT.itemsdeleted−15
@@ -1,15 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup>
4− <_AssembliesToAOT Include="obj/Debug/net10.0-ios/iossimulator-arm64/linked/System.Private.CoreLib.dll">
5− <Arguments>--aot=mtriple=arm64-ios data-outfile=obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/aot-output/arm64/System.Private.CoreLib.aotdata static asmonly interp readonly-value=ObjCRuntime.Runtime.Arch=i4/1 dwarfdebug no-direct-calls outfile=obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/aot-output/arm64/System.Private.CoreLib.dll.s</Arguments>
6− <ProcessArguments>--debug</ProcessArguments>
7− <Abi>ARM64</Abi>
8− <Arch>arm64</Arch>
9− <AOTData>obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/aot-output/arm64/System.Private.CoreLib.aotdata</AOTData>
10− <AOTAssembly>obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/aot-output/arm64/System.Private.CoreLib.dll.s</AOTAssembly>
11− <LLVMFile></LLVMFile>
12− <ObjectFile>obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/aot-output/arm64/System.Private.CoreLib.dll.o</ObjectFile>
13− </_AssembliesToAOT>
14− </ItemGroup>
15−</Project>
client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/_AssemblyLinkerFlags.itemsdeleted−9
@@ -1,9 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup>
4− <_AssemblyLinkerFlags Include="-lcompression">
5− <Assembly>Microsoft.iOS</Assembly>
6− </_AssemblyLinkerFlags>
7− <_AssemblyLinkerFlags Include="-dead_strip" />
8− </ItemGroup>
9−</Project>
client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/_BindingLibraryFrameworks.itemsdeleted−4
@@ -1,4 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup />
4−</Project>
client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/_BindingLibraryLinkWith.itemsdeleted−4
@@ -1,4 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup />
4−</Project>
client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/_DynamicLibraryToPublish.itemsdeleted−4
@@ -1,4 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup />
4−</Project>
client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/_FrameworkToPublish.itemsdeleted−4
@@ -1,4 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup />
4−</Project>
client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/_LinkerFrameworks.itemsdeleted−419
@@ -1,419 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup>
4− <_LinkerFrameworks Include="Accelerate">
5− <IsWeak>false</IsWeak>
6− </_LinkerFrameworks>
7− <_LinkerFrameworks Include="Accessibility">
8− <IsWeak>false</IsWeak>
9− </_LinkerFrameworks>
10− <_LinkerFrameworks Include="AccessorySetupKit">
11− <IsWeak>false</IsWeak>
12− </_LinkerFrameworks>
13− <_LinkerFrameworks Include="Accounts">
14− <IsWeak>false</IsWeak>
15− </_LinkerFrameworks>
16− <_LinkerFrameworks Include="AddressBook">
17− <IsWeak>false</IsWeak>
18− </_LinkerFrameworks>
19− <_LinkerFrameworks Include="AddressBookUI">
20− <IsWeak>false</IsWeak>
21− </_LinkerFrameworks>
22− <_LinkerFrameworks Include="AdServices">
23− <IsWeak>false</IsWeak>
24− </_LinkerFrameworks>
25− <_LinkerFrameworks Include="AdSupport">
26− <IsWeak>false</IsWeak>
27− </_LinkerFrameworks>
28− <_LinkerFrameworks Include="AppClip">
29− <IsWeak>false</IsWeak>
30− </_LinkerFrameworks>
31− <_LinkerFrameworks Include="AppTrackingTransparency">
32− <IsWeak>false</IsWeak>
33− </_LinkerFrameworks>
34− <_LinkerFrameworks Include="ARKit">
35− <IsWeak>false</IsWeak>
36− </_LinkerFrameworks>
37− <_LinkerFrameworks Include="AudioToolbox">
38− <IsWeak>false</IsWeak>
39− </_LinkerFrameworks>
40− <_LinkerFrameworks Include="AuthenticationServices">
41− <IsWeak>false</IsWeak>
42− </_LinkerFrameworks>
43− <_LinkerFrameworks Include="AutomaticAssessmentConfiguration">
44− <IsWeak>false</IsWeak>
45− </_LinkerFrameworks>
46− <_LinkerFrameworks Include="AVFoundation">
47− <IsWeak>false</IsWeak>
48− </_LinkerFrameworks>
49− <_LinkerFrameworks Include="AVKit">
50− <IsWeak>false</IsWeak>
51− </_LinkerFrameworks>
52− <_LinkerFrameworks Include="AVRouting">
53− <IsWeak>false</IsWeak>
54− </_LinkerFrameworks>
55− <_LinkerFrameworks Include="BackgroundAssets">
56− <IsWeak>false</IsWeak>
57− </_LinkerFrameworks>
58− <_LinkerFrameworks Include="BackgroundTasks">
59− <IsWeak>false</IsWeak>
60− </_LinkerFrameworks>
61− <_LinkerFrameworks Include="BrowserEngineCore">
62− <IsWeak>false</IsWeak>
63− </_LinkerFrameworks>
64− <_LinkerFrameworks Include="BrowserEngineKit">
65− <IsWeak>false</IsWeak>
66− </_LinkerFrameworks>
67− <_LinkerFrameworks Include="BusinessChat">
68− <IsWeak>false</IsWeak>
69− </_LinkerFrameworks>
70− <_LinkerFrameworks Include="CallKit">
71− <IsWeak>false</IsWeak>
72− </_LinkerFrameworks>
73− <_LinkerFrameworks Include="CarPlay">
74− <IsWeak>false</IsWeak>
75− </_LinkerFrameworks>
76− <_LinkerFrameworks Include="CFNetwork">
77− <IsWeak>false</IsWeak>
78− </_LinkerFrameworks>
79− <_LinkerFrameworks Include="ClassKit">
80− <IsWeak>false</IsWeak>
81− </_LinkerFrameworks>
82− <_LinkerFrameworks Include="CloudKit">
83− <IsWeak>false</IsWeak>
84− </_LinkerFrameworks>
85− <_LinkerFrameworks Include="Contacts">
86− <IsWeak>false</IsWeak>
87− </_LinkerFrameworks>
88− <_LinkerFrameworks Include="ContactsUI">
89− <IsWeak>false</IsWeak>
90− </_LinkerFrameworks>
91− <_LinkerFrameworks Include="CoreAudioKit">
92− <IsWeak>false</IsWeak>
93− </_LinkerFrameworks>
94− <_LinkerFrameworks Include="CoreBluetooth">
95− <IsWeak>false</IsWeak>
96− </_LinkerFrameworks>
97− <_LinkerFrameworks Include="CoreData">
98− <IsWeak>false</IsWeak>
99− </_LinkerFrameworks>
100− <_LinkerFrameworks Include="CoreFoundation">
101− <IsWeak>false</IsWeak>
102− </_LinkerFrameworks>
103− <_LinkerFrameworks Include="CoreGraphics">
104− <IsWeak>false</IsWeak>
105− </_LinkerFrameworks>
106− <_LinkerFrameworks Include="CoreHaptics">
107− <IsWeak>false</IsWeak>
108− </_LinkerFrameworks>
109− <_LinkerFrameworks Include="CoreImage">
110− <IsWeak>false</IsWeak>
111− </_LinkerFrameworks>
112− <_LinkerFrameworks Include="CoreLocation">
113− <IsWeak>false</IsWeak>
114− </_LinkerFrameworks>
115− <_LinkerFrameworks Include="CoreLocationUI">
116− <IsWeak>false</IsWeak>
117− </_LinkerFrameworks>
118− <_LinkerFrameworks Include="CoreMedia">
119− <IsWeak>false</IsWeak>
120− </_LinkerFrameworks>
121− <_LinkerFrameworks Include="CoreMIDI">
122− <IsWeak>false</IsWeak>
123− </_LinkerFrameworks>
124− <_LinkerFrameworks Include="CoreML">
125− <IsWeak>false</IsWeak>
126− </_LinkerFrameworks>
127− <_LinkerFrameworks Include="CoreMotion">
128− <IsWeak>false</IsWeak>
129− </_LinkerFrameworks>
130− <_LinkerFrameworks Include="CoreSpotlight">
131− <IsWeak>false</IsWeak>
132− </_LinkerFrameworks>
133− <_LinkerFrameworks Include="CoreTelephony">
134− <IsWeak>false</IsWeak>
135− </_LinkerFrameworks>
136− <_LinkerFrameworks Include="CoreText">
137− <IsWeak>false</IsWeak>
138− </_LinkerFrameworks>
139− <_LinkerFrameworks Include="CoreVideo">
140− <IsWeak>false</IsWeak>
141− </_LinkerFrameworks>
142− <_LinkerFrameworks Include="CryptoTokenKit">
143− <IsWeak>false</IsWeak>
144− </_LinkerFrameworks>
145− <_LinkerFrameworks Include="DataDetection">
146− <IsWeak>false</IsWeak>
147− </_LinkerFrameworks>
148− <_LinkerFrameworks Include="DeviceCheck">
149− <IsWeak>false</IsWeak>
150− </_LinkerFrameworks>
151− <_LinkerFrameworks Include="DeviceDiscoveryExtension">
152− <IsWeak>false</IsWeak>
153− </_LinkerFrameworks>
154− <_LinkerFrameworks Include="DeviceDiscoveryUI">
155− <IsWeak>false</IsWeak>
156− </_LinkerFrameworks>
157− <_LinkerFrameworks Include="EventKit">
158− <IsWeak>false</IsWeak>
159− </_LinkerFrameworks>
160− <_LinkerFrameworks Include="EventKitUI">
161− <IsWeak>false</IsWeak>
162− </_LinkerFrameworks>
163− <_LinkerFrameworks Include="ExtensionKit">
164− <IsWeak>false</IsWeak>
165− </_LinkerFrameworks>
166− <_LinkerFrameworks Include="ExternalAccessory">
167− <IsWeak>false</IsWeak>
168− </_LinkerFrameworks>
169− <_LinkerFrameworks Include="FileProvider">
170− <IsWeak>false</IsWeak>
171− </_LinkerFrameworks>
172− <_LinkerFrameworks Include="FileProviderUI">
173− <IsWeak>false</IsWeak>
174− </_LinkerFrameworks>
175− <_LinkerFrameworks Include="Foundation">
176− <IsWeak>false</IsWeak>
177− </_LinkerFrameworks>
178− <_LinkerFrameworks Include="GameController">
179− <IsWeak>false</IsWeak>
180− </_LinkerFrameworks>
181− <_LinkerFrameworks Include="GameKit">
182− <IsWeak>false</IsWeak>
183− </_LinkerFrameworks>
184− <_LinkerFrameworks Include="GameplayKit">
185− <IsWeak>false</IsWeak>
186− </_LinkerFrameworks>
187− <_LinkerFrameworks Include="GameSave">
188− <IsWeak>false</IsWeak>
189− </_LinkerFrameworks>
190− <_LinkerFrameworks Include="GLKit">
191− <IsWeak>false</IsWeak>
192− </_LinkerFrameworks>
193− <_LinkerFrameworks Include="HealthKit">
194− <IsWeak>false</IsWeak>
195− </_LinkerFrameworks>
196− <_LinkerFrameworks Include="HealthKitUI">
197− <IsWeak>false</IsWeak>
198− </_LinkerFrameworks>
199− <_LinkerFrameworks Include="HomeKit">
200− <IsWeak>false</IsWeak>
201− </_LinkerFrameworks>
202− <_LinkerFrameworks Include="IdentityLookup">
203− <IsWeak>false</IsWeak>
204− </_LinkerFrameworks>
205− <_LinkerFrameworks Include="IdentityLookupUI">
206− <IsWeak>false</IsWeak>
207− </_LinkerFrameworks>
208− <_LinkerFrameworks Include="ImageIO">
209− <IsWeak>false</IsWeak>
210− </_LinkerFrameworks>
211− <_LinkerFrameworks Include="Intents">
212− <IsWeak>false</IsWeak>
213− </_LinkerFrameworks>
214− <_LinkerFrameworks Include="IntentsUI">
215− <IsWeak>false</IsWeak>
216− </_LinkerFrameworks>
217− <_LinkerFrameworks Include="JavaScriptCore">
218− <IsWeak>false</IsWeak>
219− </_LinkerFrameworks>
220− <_LinkerFrameworks Include="LinkPresentation">
221− <IsWeak>false</IsWeak>
222− </_LinkerFrameworks>
223− <_LinkerFrameworks Include="LocalAuthentication">
224− <IsWeak>false</IsWeak>
225− </_LinkerFrameworks>
226− <_LinkerFrameworks Include="MapKit">
227− <IsWeak>false</IsWeak>
228− </_LinkerFrameworks>
229− <_LinkerFrameworks Include="MediaAccessibility">
230− <IsWeak>false</IsWeak>
231− </_LinkerFrameworks>
232− <_LinkerFrameworks Include="MediaPlayer">
233− <IsWeak>false</IsWeak>
234− </_LinkerFrameworks>
235− <_LinkerFrameworks Include="MediaToolbox">
236− <IsWeak>false</IsWeak>
237− </_LinkerFrameworks>
238− <_LinkerFrameworks Include="Messages">
239− <IsWeak>false</IsWeak>
240− </_LinkerFrameworks>
241− <_LinkerFrameworks Include="MessageUI">
242− <IsWeak>false</IsWeak>
243− </_LinkerFrameworks>
244− <_LinkerFrameworks Include="Metal">
245− <IsWeak>false</IsWeak>
246− </_LinkerFrameworks>
247− <_LinkerFrameworks Include="MetalKit">
248− <IsWeak>false</IsWeak>
249− </_LinkerFrameworks>
250− <_LinkerFrameworks Include="MetalPerformanceShaders">
251− <IsWeak>false</IsWeak>
252− </_LinkerFrameworks>
253− <_LinkerFrameworks Include="MetalPerformanceShadersGraph">
254− <IsWeak>false</IsWeak>
255− </_LinkerFrameworks>
256− <_LinkerFrameworks Include="MetricKit">
257− <IsWeak>false</IsWeak>
258− </_LinkerFrameworks>
259− <_LinkerFrameworks Include="MobileCoreServices">
260− <IsWeak>false</IsWeak>
261− </_LinkerFrameworks>
262− <_LinkerFrameworks Include="ModelIO">
263− <IsWeak>false</IsWeak>
264− </_LinkerFrameworks>
265− <_LinkerFrameworks Include="MultipeerConnectivity">
266− <IsWeak>false</IsWeak>
267− </_LinkerFrameworks>
268− <_LinkerFrameworks Include="NaturalLanguage">
269− <IsWeak>false</IsWeak>
270− </_LinkerFrameworks>
271− <_LinkerFrameworks Include="NearbyInteraction">
272− <IsWeak>false</IsWeak>
273− </_LinkerFrameworks>
274− <_LinkerFrameworks Include="Network">
275− <IsWeak>false</IsWeak>
276− </_LinkerFrameworks>
277− <_LinkerFrameworks Include="NetworkExtension">
278− <IsWeak>false</IsWeak>
279− </_LinkerFrameworks>
280− <_LinkerFrameworks Include="NotificationCenter">
281− <IsWeak>false</IsWeak>
282− </_LinkerFrameworks>
283− <_LinkerFrameworks Include="OpenGLES">
284− <IsWeak>false</IsWeak>
285− </_LinkerFrameworks>
286− <_LinkerFrameworks Include="OSLog">
287− <IsWeak>false</IsWeak>
288− </_LinkerFrameworks>
289− <_LinkerFrameworks Include="PassKit">
290− <IsWeak>false</IsWeak>
291− </_LinkerFrameworks>
292− <_LinkerFrameworks Include="PDFKit">
293− <IsWeak>false</IsWeak>
294− </_LinkerFrameworks>
295− <_LinkerFrameworks Include="PencilKit">
296− <IsWeak>false</IsWeak>
297− </_LinkerFrameworks>
298− <_LinkerFrameworks Include="Photos">
299− <IsWeak>false</IsWeak>
300− </_LinkerFrameworks>
301− <_LinkerFrameworks Include="PhotosUI">
302− <IsWeak>false</IsWeak>
303− </_LinkerFrameworks>
304− <_LinkerFrameworks Include="PushKit">
305− <IsWeak>false</IsWeak>
306− </_LinkerFrameworks>
307− <_LinkerFrameworks Include="PushToTalk">
308− <IsWeak>false</IsWeak>
309− </_LinkerFrameworks>
310− <_LinkerFrameworks Include="QuartzCore">
311− <IsWeak>false</IsWeak>
312− </_LinkerFrameworks>
313− <_LinkerFrameworks Include="QuickLook">
314− <IsWeak>false</IsWeak>
315− </_LinkerFrameworks>
316− <_LinkerFrameworks Include="QuickLookThumbnailing">
317− <IsWeak>false</IsWeak>
318− </_LinkerFrameworks>
319− <_LinkerFrameworks Include="ReplayKit">
320− <IsWeak>false</IsWeak>
321− </_LinkerFrameworks>
322− <_LinkerFrameworks Include="SafariServices">
323− <IsWeak>false</IsWeak>
324− </_LinkerFrameworks>
325− <_LinkerFrameworks Include="SafetyKit">
326− <IsWeak>false</IsWeak>
327− </_LinkerFrameworks>
328− <_LinkerFrameworks Include="SceneKit">
329− <IsWeak>false</IsWeak>
330− </_LinkerFrameworks>
331− <_LinkerFrameworks Include="ScreenTime">
332− <IsWeak>false</IsWeak>
333− </_LinkerFrameworks>
334− <_LinkerFrameworks Include="Security">
335− <IsWeak>false</IsWeak>
336− </_LinkerFrameworks>
337− <_LinkerFrameworks Include="SecurityUI">
338− <IsWeak>false</IsWeak>
339− </_LinkerFrameworks>
340− <_LinkerFrameworks Include="SensitiveContentAnalysis">
341− <IsWeak>false</IsWeak>
342− </_LinkerFrameworks>
343− <_LinkerFrameworks Include="SharedWithYou">
344− <IsWeak>false</IsWeak>
345− </_LinkerFrameworks>
346− <_LinkerFrameworks Include="SharedWithYouCore">
347− <IsWeak>false</IsWeak>
348− </_LinkerFrameworks>
349− <_LinkerFrameworks Include="ShazamKit">
350− <IsWeak>false</IsWeak>
351− </_LinkerFrameworks>
352− <_LinkerFrameworks Include="Social">
353− <IsWeak>false</IsWeak>
354− </_LinkerFrameworks>
355− <_LinkerFrameworks Include="SoundAnalysis">
356− <IsWeak>false</IsWeak>
357− </_LinkerFrameworks>
358− <_LinkerFrameworks Include="Speech">
359− <IsWeak>false</IsWeak>
360− </_LinkerFrameworks>
361− <_LinkerFrameworks Include="SpriteKit">
362− <IsWeak>false</IsWeak>
363− </_LinkerFrameworks>
364− <_LinkerFrameworks Include="StoreKit">
365− <IsWeak>false</IsWeak>
366− </_LinkerFrameworks>
367− <_LinkerFrameworks Include="Symbols">
368− <IsWeak>false</IsWeak>
369− </_LinkerFrameworks>
370− <_LinkerFrameworks Include="SystemConfiguration">
371− <IsWeak>false</IsWeak>
372− </_LinkerFrameworks>
373− <_LinkerFrameworks Include="TouchController">
374− <IsWeak>false</IsWeak>
375− </_LinkerFrameworks>
376− <_LinkerFrameworks Include="Twitter">
377− <IsWeak>false</IsWeak>
378− </_LinkerFrameworks>
379− <_LinkerFrameworks Include="UIKit">
380− <IsWeak>false</IsWeak>
381− </_LinkerFrameworks>
382− <_LinkerFrameworks Include="UniformTypeIdentifiers">
383− <IsWeak>false</IsWeak>
384− </_LinkerFrameworks>
385− <_LinkerFrameworks Include="UserNotifications">
386− <IsWeak>false</IsWeak>
387− </_LinkerFrameworks>
388− <_LinkerFrameworks Include="UserNotificationsUI">
389− <IsWeak>false</IsWeak>
390− </_LinkerFrameworks>
391− <_LinkerFrameworks Include="VideoSubscriberAccount">
392− <IsWeak>false</IsWeak>
393− </_LinkerFrameworks>
394− <_LinkerFrameworks Include="VideoToolbox">
395− <IsWeak>false</IsWeak>
396− </_LinkerFrameworks>
397− <_LinkerFrameworks Include="Vision">
398− <IsWeak>false</IsWeak>
399− </_LinkerFrameworks>
400− <_LinkerFrameworks Include="VisionKit">
401− <IsWeak>false</IsWeak>
402− </_LinkerFrameworks>
403− <_LinkerFrameworks Include="WatchConnectivity">
404− <IsWeak>false</IsWeak>
405− </_LinkerFrameworks>
406− <_LinkerFrameworks Include="WebKit">
407− <IsWeak>false</IsWeak>
408− </_LinkerFrameworks>
409− <_LinkerFrameworks Include="CoreNFC">
410− <IsWeak>true</IsWeak>
411− </_LinkerFrameworks>
412− <_LinkerFrameworks Include="SensorKit">
413− <IsWeak>true</IsWeak>
414− </_LinkerFrameworks>
415− <_LinkerFrameworks Include="GSS">
416− <IsWeak>false</IsWeak>
417− </_LinkerFrameworks>
418− </ItemGroup>
419−</Project>
client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/_MainFile.itemsdeleted−9
@@ -1,9 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup>
4− <_MainFile Include="/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-cache/main.arm64.mm">
5− <Arch>arm64</Arch>
6− <Arguments>-DDEBUG</Arguments>
7− </_MainFile>
8− </ItemGroup>
9−</Project>
client/obj/Debug/net10.0-ios/iossimulator-arm64/linker-items/_MainLinkWith.itemsdeleted−6
@@ -1,6 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup>
4− <_MainLinkWith Include="/Users/iko/.dotnet/packs/Microsoft.iOS.Runtime.iossimulator-arm64.net10.0_26.2/26.2.10217/runtimes/iossimulator-arm64/native/Microsoft.iOS.registrar.a" />
5− </ItemGroup>
6−</Project>
client/obj/Debug/net10.0-ios/iossimulator-arm64/mauifont.inputsdeleted−2
@@ -1,2 +0,0 @@
1−File=Resources/Fonts/OpenSans-Regular.ttf;Link=;Alias=
2−File=Resources/Fonts/OpenSans-Semibold.ttf;Link=;Alias=
client/obj/Debug/net10.0-ios/iossimulator-arm64/mauifont.stampdeleted

No changes to the content.

client/obj/Debug/net10.0-ios/iossimulator-arm64/mauiimage.inputsdeleted−2
@@ -1,2 +0,0 @@
1−File=Resources/Images/dotnet_bot.svg;Link=;BaseSize=;Resize=;TintColor=;Color=;IsAppIcon=;ForegroundScale=;ForegroundFile=
2−File=Resources/AppIcon/appicon.svg;Link=;BaseSize=;Resize=;TintColor=;Color=#512BD4;IsAppIcon=True;ForegroundScale=;ForegroundFile=Resources/AppIcon/appiconfg.svg
client/obj/Debug/net10.0-ios/iossimulator-arm64/mauiimage.outputsdeleted−15
@@ -1,15 +0,0 @@
1−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/dotnet_bot@3x.png
2−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/dotnet_bot@2x.png
3−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/dotnet_bot.png
4−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appiconItunesArtwork.png
5−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon83.5x83.5@2x.png
6−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon76x76@2x.png
7−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon60x60@3x.png
8−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon60x60@2x.png
9−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon40x40@3x.png
10−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon40x40@2x.png
11−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon29x29@3x.png
12−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon29x29@2x.png
13−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon20x20@3x.png
14−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon20x20@2x.png
15−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/Contents.json
client/obj/Debug/net10.0-ios/iossimulator-arm64/mauiimage.stampdeleted

No changes to the content.

client/obj/Debug/net10.0-ios/iossimulator-arm64/mauisplash.inputsdeleted−1
@@ -1 +0,0 @@
1−File=Resources/Splash/splash.svg;Link=;BaseSize=128,128;Resize=;TintColor=;Color=#512BD4;ForegroundScale=;FileHash=11E4E0C7FD765CACC93CF43F00575E7A2974E476691A5A1720B14CDB865AD71D
client/obj/Debug/net10.0-ios/iossimulator-arm64/mauisplash.stampdeleted

No changes to the content.

client/obj/Debug/net10.0-ios/iossimulator-arm64/mtouch-symbols.listdeleted−456
@@ -1,456 +0,0 @@
1−_crypto_aead_aes256gcm_decrypt
2−_crypto_aead_aes256gcm_encrypt
3−_crypto_aead_aes256gcm_is_available
4−_crypto_aead_chacha20poly1305_decrypt
5−_crypto_aead_chacha20poly1305_encrypt
6−_crypto_aead_chacha20poly1305_ietf_decrypt
7−_crypto_aead_chacha20poly1305_ietf_encrypt
8−_crypto_aead_xchacha20poly1305_ietf_decrypt
9−_crypto_aead_xchacha20poly1305_ietf_encrypt
10−_crypto_auth_hmacsha256
11−_crypto_auth_hmacsha256_verify
12−_crypto_auth_hmacsha512
13−_crypto_auth_hmacsha512_verify
14−_crypto_auth_hmacsha512256
15−_crypto_auth_hmacsha512256_verify
16−_crypto_box_curve25519xsalsa20poly1305_keypair
17−_crypto_box_curve25519xsalsa20poly1305_seed_keypair
18−_crypto_box_detached
19−_crypto_box_easy
20−_crypto_box_open_detached
21−_crypto_box_open_easy
22−_crypto_box_seal
23−_crypto_box_seal_open
24−_sodium_init
25−_sodium_set_misuse_handler
26−_crypto_generichash_blake2b
27−_crypto_generichash_blake2b_final
28−_crypto_generichash_blake2b_init
29−_crypto_generichash_blake2b_salt_personal
30−_crypto_generichash_blake2b_update
31−_crypto_hash_sha256
32−_crypto_hash_sha512
33−_crypto_onetimeauth_poly1305
34−_crypto_onetimeauth_poly1305_verify
35−_crypto_pwhash
36−_crypto_pwhash_str
37−_crypto_pwhash_str_needs_rehash
38−_crypto_pwhash_str_verify
39−_crypto_pwhash_scryptsalsa208sha256
40−_crypto_pwhash_scryptsalsa208sha256_str
41−_crypto_pwhash_scryptsalsa208sha256_str_needs_rehash
42−_crypto_pwhash_scryptsalsa208sha256_str_verify
43−_randombytes_buf
44−_randombytes_uniform
45−_crypto_scalarmult_curve25519
46−_crypto_scalarmult_curve25519_base
47−_crypto_secretbox_detached
48−_crypto_secretbox_easy
49−_crypto_secretbox_open_detached
50−_crypto_secretbox_open_easy
51−_crypto_shorthash_siphash24
52−_crypto_sign_ed25519
53−_crypto_sign_ed25519_detached
54−_crypto_sign_ed25519_keypair
55−_crypto_sign_ed25519_open
56−_crypto_sign_ed25519_pk_to_curve25519
57−_crypto_sign_ed25519_seed_keypair
58−_crypto_sign_ed25519_sk_to_curve25519
59−_crypto_sign_ed25519_sk_to_pk
60−_crypto_sign_ed25519_sk_to_seed
61−_crypto_sign_ed25519_verify_detached
62−_crypto_stream_chacha20_xor
63−_crypto_stream_chacha20_ietf_xor
64−_crypto_stream_xchacha20_xor
65−_crypto_stream_xsalsa20_xor
66−_sodium_base642bin
67−_sodium_base64_encoded_len
68−_sodium_bin2base64
69−_sodium_compare
70−_sodium_increment
71−_sodium_library_version_major
72−_sodium_library_version_minor
73−_sodium_version_string
74−_xamarin_CGPoint__VNNormalizedFaceBoundingBoxPointForLandmarkPoint_Vector2_CGRect_nuint_nuint_string
75−_xamarin_CGPoint__VNImagePointForFaceLandmarkPoint_Vector2_CGRect_nuint_nuint_string
76−_OBJC_CLASS_$_XamarinSwiftFunctions
77−_xamarin_UIApplicationMain
78−_xamarin_os_log
79−_xamarin_release_managed_ref
80−_xamarin_set_gchandle_with_flags_safe
81−_xamarin_localized_string_format
82−_xamarin_localized_string_format_1
83−_xamarin_localized_string_format_2
84−_xamarin_localized_string_format_3
85−_xamarin_localized_string_format_4
86−_xamarin_localized_string_format_5
87−_xamarin_localized_string_format_6
88−_xamarin_localized_string_format_7
89−_xamarin_localized_string_format_8
90−_xamarin_localized_string_format_9
91−_xamarin_init_nsthread
92−_xamarin_locate_assembly_resource
93−_xamarin_switch_gchandle
94−_xamarin_mono_object_retain
95−_xamarin_find_protocol_wrapper_type
96−_xamarin_is_user_type
97−_xamarin_log
98−_xamarin_release_block_on_main_thread
99−_xamarin_get_original_working_directory_path
100−_xamarin_get_runtime_arch
101−_xamarin_start_wwan
102−_xamarin_get_block_descriptor
103−_xamarin_is_object_valid
104−_xamarin_free
105−_xamarin_simd__NMatrix4_objc_msgSend
106−_xamarin_simd__NMatrix4_objc_msgSendSuper
107−_xamarin_simd__NMatrix4_objc_msgSend_stret
108−_xamarin_simd__NMatrix4_objc_msgSendSuper_stret
109−_xamarin_simd__NativeHandle_objc_msgSend_NMatrix4
110−_xamarin_simd__NativeHandle_objc_msgSendSuper_NMatrix4
111−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_NMatrix4
112−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_NMatrix4
113−_xamarin_simd__NVector3_objc_msgSend
114−_xamarin_simd__NVector3_objc_msgSendSuper
115−_xamarin_simd__NMatrix3_objc_msgSend
116−_xamarin_simd__NMatrix3_objc_msgSendSuper
117−_xamarin_simd__NMatrix3_objc_msgSend_stret
118−_xamarin_simd__NMatrix3_objc_msgSendSuper_stret
119−_xamarin_simd__CGPoint_objc_msgSend_NVector3_IntPtr_CGSize
120−_xamarin_simd__CGPoint_objc_msgSendSuper_NVector3_IntPtr_CGSize
121−_xamarin_simd__NVector3_objc_msgSend_CGPoint_NMatrix4_IntPtr_CGSize
122−_xamarin_simd__NVector3_objc_msgSendSuper_CGPoint_NMatrix4_IntPtr_CGSize
123−_xamarin_simd__NMatrix4_objc_msgSend_IntPtr_CGSize_nfloat_nfloat
124−_xamarin_simd__NMatrix4_objc_msgSendSuper_IntPtr_CGSize_nfloat_nfloat
125−_xamarin_simd__NMatrix4_objc_msgSend_stret_IntPtr_CGSize_nfloat_nfloat
126−_xamarin_simd__NMatrix4_objc_msgSendSuper_stret_IntPtr_CGSize_nfloat_nfloat
127−_xamarin_simd__NMatrix4_objc_msgSend_IntPtr
128−_xamarin_simd__NMatrix4_objc_msgSendSuper_IntPtr
129−_xamarin_simd__NMatrix4_objc_msgSend_stret_IntPtr
130−_xamarin_simd__NMatrix4_objc_msgSendSuper_stret_IntPtr
131−_xamarin_simd__NativeHandle_objc_msgSend_NMatrix4_NVector3
132−_xamarin_simd__NativeHandle_objc_msgSendSuper_NMatrix4_NVector3
133−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_NMatrix4_NVector3
134−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_NMatrix4_NVector3
135−_xamarin_simd__NativeHandle_objc_msgSend_NVector3_NVector3_IntPtr_IntPtr
136−_xamarin_simd__NativeHandle_objc_msgSendSuper_NVector3_NVector3_IntPtr_IntPtr
137−_xamarin_simd__NVector3_objc_msgSend_CGPoint_NMatrix4
138−_xamarin_simd__NVector3_objc_msgSendSuper_CGPoint_NMatrix4
139−_xamarin_simd__void_objc_msgSend_NMatrix4
140−_xamarin_simd__void_objc_msgSendSuper_NMatrix4
141−_xamarin_simd__void_objc_msgSend_NMatrix4_NVector3_NVector3_NativeHandle
142−_xamarin_simd__void_objc_msgSendSuper_NMatrix4_NVector3_NVector3_NativeHandle
143−_xamarin_simd__void_objc_msgSend_NVector3_NativeHandle
144−_xamarin_simd__void_objc_msgSendSuper_NVector3_NativeHandle
145−_xamarin_simd__Vector2_objc_msgSend_NativeHandle
146−_xamarin_simd__Vector2_objc_msgSendSuper_NativeHandle
147−_xamarin_simd__NMatrix4_objc_msgSend_NativeHandle
148−_xamarin_simd__NMatrix4_objc_msgSendSuper_NativeHandle
149−_xamarin_simd__NMatrix4_objc_msgSend_stret_NativeHandle
150−_xamarin_simd__NMatrix4_objc_msgSendSuper_stret_NativeHandle
151−_xamarin_simd__NMatrix4x3_objc_msgSend
152−_xamarin_simd__NMatrix4x3_objc_msgSendSuper
153−_xamarin_simd__NMatrix4x3_objc_msgSend_stret
154−_xamarin_simd__NMatrix4x3_objc_msgSendSuper_stret
155−_xamarin_NativeHandle_objc_msgSend_NativeHandle_exception
156−_xamarin_NativeHandle_objc_msgSendSuper_NativeHandle_exception
157−_xamarin_NativeHandle_objc_msgSend_NativeHandle_NativeHandle_UIntPtr_exception
158−_xamarin_NativeHandle_objc_msgSendSuper_NativeHandle_NativeHandle_UIntPtr_exception
159−_xamarin_NativeHandle_objc_msgSend_NativeHandle_IntPtr_IntPtr_IntPtr_UIntPtr_exception
160−_xamarin_NativeHandle_objc_msgSendSuper_NativeHandle_IntPtr_IntPtr_IntPtr_UIntPtr_exception
161−_xamarin_NativeHandle_objc_msgSend_NativeHandle_UIntPtr_IntPtr_UIntPtr_exception
162−_xamarin_NativeHandle_objc_msgSendSuper_NativeHandle_UIntPtr_IntPtr_UIntPtr_exception
163−_xamarin_simd__Vector2_objc_msgSend
164−_xamarin_simd__Vector2_objc_msgSendSuper
165−_xamarin_simd__void_objc_msgSend_Vector2
166−_xamarin_simd__void_objc_msgSendSuper_Vector2
167−_xamarin_simd__Vector3_objc_msgSend
168−_xamarin_simd__Vector3_objc_msgSendSuper
169−_xamarin_simd__void_objc_msgSend_Vector3
170−_xamarin_simd__void_objc_msgSendSuper_Vector3
171−_xamarin_simd__void_objc_msgSend_NMatrix3
172−_xamarin_simd__void_objc_msgSendSuper_NMatrix3
173−_xamarin_simd__NativeHandle_objc_msgSend_Vector2
174−_xamarin_simd__NativeHandle_objc_msgSendSuper_Vector2
175−_xamarin_simd__NativeHandle_objc_msgSend_Vector3
176−_xamarin_simd__NativeHandle_objc_msgSendSuper_Vector3
177−_xamarin_simd__NVector2i_objc_msgSend
178−_xamarin_simd__NVector2i_objc_msgSendSuper
179−_xamarin_simd__NativeHandle_objc_msgSend_NVector2i_int_int_bool
180−_xamarin_simd__NativeHandle_objc_msgSendSuper_NVector2i_int_int_bool
181−_xamarin_simd__NativeHandle_objc_msgSend_NVector2i_int_int_bool_NativeHandle
182−_xamarin_simd__NativeHandle_objc_msgSendSuper_NVector2i_int_int_bool_NativeHandle
183−_xamarin_simd__IntPtr_objc_msgSend_NVector2i
184−_xamarin_simd__IntPtr_objc_msgSendSuper_NVector2i
185−_xamarin_simd__NativeHandle_objc_msgSend_NVector2i
186−_xamarin_simd__NativeHandle_objc_msgSendSuper_NVector2i
187−_xamarin_simd__NativeHandle_objc_msgSend_float_Vector2_Vector2_NativeHandle
188−_xamarin_simd__NativeHandle_objc_msgSendSuper_float_Vector2_Vector2_NativeHandle
189−_xamarin_simd__NativeHandle_objc_msgSend_float_Vector2_Vector2
190−_xamarin_simd__NativeHandle_objc_msgSendSuper_float_Vector2_Vector2
191−_xamarin_simd__GKTriangle_objc_msgSend_UIntPtr
192−_xamarin_simd__GKTriangle_objc_msgSendSuper_UIntPtr
193−_xamarin_simd__GKTriangle_objc_msgSend_stret_UIntPtr
194−_xamarin_simd__GKTriangle_objc_msgSendSuper_stret_UIntPtr
195−_xamarin_simd__float_objc_msgSend_Vector2
196−_xamarin_simd__float_objc_msgSendSuper_Vector2
197−_xamarin_simd__void_objc_msgSend_NVector3d
198−_xamarin_simd__void_objc_msgSendSuper_NVector3d
199−_xamarin_simd__NVector2d_objc_msgSend
200−_xamarin_simd__NVector2d_objc_msgSendSuper
201−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_NVector2d_NVector2d_NVector2i_bool
202−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_NVector2d_NVector2d_NVector2i_bool
203−_xamarin_simd__float_objc_msgSend_NVector2i
204−_xamarin_simd__float_objc_msgSendSuper_NVector2i
205−_xamarin_simd__void_objc_msgSend_float_NVector2i
206−_xamarin_simd__void_objc_msgSendSuper_float_NVector2i
207−_xamarin_simd__GKBox_objc_msgSend
208−_xamarin_simd__GKBox_objc_msgSendSuper
209−_xamarin_simd__GKBox_objc_msgSend_stret
210−_xamarin_simd__GKBox_objc_msgSendSuper_stret
211−_xamarin_simd__NativeHandle_objc_msgSend_GKBox_float
212−_xamarin_simd__NativeHandle_objc_msgSendSuper_GKBox_float
213−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_Vector3
214−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_Vector3
215−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_GKBox
216−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_GKBox
217−_xamarin_simd__NativeHandle_objc_msgSend_GKBox
218−_xamarin_simd__NativeHandle_objc_msgSendSuper_GKBox
219−_xamarin_simd__Vector2_objc_msgSend_UIntPtr
220−_xamarin_simd__Vector2_objc_msgSendSuper_UIntPtr
221−_xamarin_simd__Vector3_objc_msgSend_UIntPtr
222−_xamarin_simd__Vector3_objc_msgSendSuper_UIntPtr
223−_xamarin_simd__NativeHandle_objc_msgSend_GKQuad_float
224−_xamarin_simd__NativeHandle_objc_msgSendSuper_GKQuad_float
225−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_Vector2_exception
226−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_Vector2_exception
227−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_GKQuad
228−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_GKQuad
229−_xamarin_simd__NativeHandle_objc_msgSend_GKQuad
230−_xamarin_simd__NativeHandle_objc_msgSendSuper_GKQuad
231−_xamarin_simd__GKQuad_objc_msgSend
232−_xamarin_simd__GKQuad_objc_msgSendSuper
233−_xamarin_simd__void_objc_msgSend_NativeHandle_Vector2_Vector2_IntPtr
234−_xamarin_simd__void_objc_msgSendSuper_NativeHandle_Vector2_Vector2_IntPtr
235−_xamarin_simd__void_objc_msgSend_NativeHandle_Vector2_Vector2
236−_xamarin_simd__void_objc_msgSendSuper_NativeHandle_Vector2_Vector2
237−_xamarin_simd__NativeHandle_objc_msgSend_Vector2_Vector2_exception
238−_xamarin_simd__NativeHandle_objc_msgSendSuper_Vector2_Vector2_exception
239−_xamarin_simd__MPSAxisAlignedBoundingBox_objc_msgSend
240−_xamarin_simd__MPSAxisAlignedBoundingBox_objc_msgSendSuper
241−_xamarin_simd__MPSAxisAlignedBoundingBox_objc_msgSend_stret
242−_xamarin_simd__MPSAxisAlignedBoundingBox_objc_msgSendSuper_stret
243−_xamarin_simd__MPSImageHistogramInfo_objc_msgSend
244−_xamarin_simd__MPSImageHistogramInfo_objc_msgSendSuper
245−_xamarin_simd__MPSImageHistogramInfo_objc_msgSend_stret
246−_xamarin_simd__MPSImageHistogramInfo_objc_msgSendSuper_stret
247−_xamarin_simd__Vector4_objc_msgSend
248−_xamarin_simd__Vector4_objc_msgSendSuper
249−_xamarin_simd__void_objc_msgSend_Vector4
250−_xamarin_simd__void_objc_msgSendSuper_Vector4
251−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_ref_MPSImageHistogramInfo
252−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_ref_MPSImageHistogramInfo
253−_xamarin_simd__NVector16b_objc_msgSend
254−_xamarin_simd__NVector16b_objc_msgSendSuper
255−_xamarin_simd__void_objc_msgSend_NMatrix4_Double
256−_xamarin_simd__void_objc_msgSendSuper_NMatrix4_Double
257−_xamarin_simd__void_objc_msgSend_NMatrix4d_Double
258−_xamarin_simd__void_objc_msgSendSuper_NMatrix4d_Double
259−_xamarin_simd__NMatrix4_objc_msgSend_Double
260−_xamarin_simd__NMatrix4_objc_msgSendSuper_Double
261−_xamarin_simd__NMatrix4_objc_msgSend_stret_Double
262−_xamarin_simd__NMatrix4_objc_msgSendSuper_stret_Double
263−_xamarin_simd__NMatrix4d_objc_msgSend_Double
264−_xamarin_simd__NMatrix4d_objc_msgSendSuper_Double
265−_xamarin_simd__NMatrix4d_objc_msgSend_stret_Double
266−_xamarin_simd__NMatrix4d_objc_msgSendSuper_stret_Double
267−_xamarin_simd__void_objc_msgSend_Quaternion_Double
268−_xamarin_simd__void_objc_msgSendSuper_Quaternion_Double
269−_xamarin_simd__void_objc_msgSend_NQuaterniond_Double
270−_xamarin_simd__void_objc_msgSendSuper_NQuaterniond_Double
271−_xamarin_simd__Quaternion_objc_msgSend_Double
272−_xamarin_simd__Quaternion_objc_msgSendSuper_Double
273−_xamarin_simd__NQuaterniond_objc_msgSend_Double
274−_xamarin_simd__NQuaterniond_objc_msgSendSuper_Double
275−_xamarin_simd__NQuaterniond_objc_msgSend_stret_Double
276−_xamarin_simd__NQuaterniond_objc_msgSendSuper_stret_Double
277−_xamarin_simd__void_objc_msgSend_Vector2_Double
278−_xamarin_simd__void_objc_msgSendSuper_Vector2_Double
279−_xamarin_simd__void_objc_msgSend_NVector2d_Double
280−_xamarin_simd__void_objc_msgSendSuper_NVector2d_Double
281−_xamarin_simd__Vector2_objc_msgSend_Double
282−_xamarin_simd__Vector2_objc_msgSendSuper_Double
283−_xamarin_simd__NVector2d_objc_msgSend_Double
284−_xamarin_simd__NVector2d_objc_msgSendSuper_Double
285−_xamarin_simd__void_objc_msgSend_NVector3_Double
286−_xamarin_simd__void_objc_msgSendSuper_NVector3_Double
287−_xamarin_simd__void_objc_msgSend_NVector3d_Double
288−_xamarin_simd__void_objc_msgSendSuper_NVector3d_Double
289−_xamarin_simd__NVector3_objc_msgSend_Double
290−_xamarin_simd__NVector3_objc_msgSendSuper_Double
291−_xamarin_simd__NVector3d_objc_msgSend_Double
292−_xamarin_simd__NVector3d_objc_msgSendSuper_Double
293−_xamarin_simd__NVector3d_objc_msgSend_stret_Double
294−_xamarin_simd__NVector3d_objc_msgSendSuper_stret_Double
295−_xamarin_simd__void_objc_msgSend_Vector4_Double
296−_xamarin_simd__void_objc_msgSendSuper_Vector4_Double
297−_xamarin_simd__void_objc_msgSend_NVector4d_Double
298−_xamarin_simd__void_objc_msgSendSuper_NVector4d_Double
299−_xamarin_simd__Vector4_objc_msgSend_Double
300−_xamarin_simd__Vector4_objc_msgSendSuper_Double
301−_xamarin_simd__NVector4d_objc_msgSend_Double
302−_xamarin_simd__NVector4d_objc_msgSendSuper_Double
303−_xamarin_simd__NVector4d_objc_msgSend_stret_Double
304−_xamarin_simd__NVector4d_objc_msgSendSuper_stret_Double
305−_xamarin_simd__NMatrix4d_objc_msgSend
306−_xamarin_simd__NMatrix4d_objc_msgSendSuper
307−_xamarin_simd__NMatrix4d_objc_msgSend_stret
308−_xamarin_simd__NMatrix4d_objc_msgSendSuper_stret
309−_xamarin_simd__void_objc_msgSend_NMatrix4d
310−_xamarin_simd__void_objc_msgSendSuper_NMatrix4d
311−_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSend
312−_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSendSuper
313−_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSend_stret
314−_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSendSuper_stret
315−_xamarin_simd__void_objc_msgSend_NVector3
316−_xamarin_simd__void_objc_msgSendSuper_NVector3
317−_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSend_Double
318−_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSendSuper_Double
319−_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSend_stret_Double
320−_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSendSuper_stret_Double
321−_xamarin_simd__void_objc_msgSend_MDLAxisAlignedBoundingBox_bool
322−_xamarin_simd__void_objc_msgSendSuper_MDLAxisAlignedBoundingBox_bool
323−_xamarin_simd__void_objc_msgSend_Vector3_Vector3
324−_xamarin_simd__void_objc_msgSendSuper_Vector3_Vector3
325−_xamarin_simd__Vector3_objc_msgSend_NVector2i_NVector2i
326−_xamarin_simd__Vector3_objc_msgSendSuper_NVector2i_NVector2i
327−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_bool_NativeHandle_NVector2i_IntPtr_UIntPtr_IntPtr_bool
328−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_bool_NativeHandle_NVector2i_IntPtr_UIntPtr_IntPtr_bool
329−_xamarin_simd__NativeHandle_objc_msgSend_float_NativeHandle_NVector2i_int_IntPtr_NativeHandle_NativeHandle
330−_xamarin_simd__NativeHandle_objc_msgSendSuper_float_NativeHandle_NVector2i_int_IntPtr_NativeHandle_NativeHandle
331−_xamarin_simd__NativeHandle_objc_msgSend_float_float_NativeHandle_NVector2i
332−_xamarin_simd__NativeHandle_objc_msgSendSuper_float_float_NativeHandle_NVector2i
333−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_NativeHandle_NativeHandle_NVector2i
334−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_NativeHandle_NativeHandle_NVector2i
335−_xamarin_simd__NativeHandle_objc_msgSend_Vector3_NativeHandle
336−_xamarin_simd__NativeHandle_objc_msgSendSuper_Vector3_NativeHandle
337−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_UIntPtr_Vector2
338−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_UIntPtr_Vector2
339−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_UIntPtr_Vector3
340−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_UIntPtr_Vector3
341−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_UIntPtr_Vector4
342−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_UIntPtr_Vector4
343−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_UIntPtr_NMatrix4
344−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_UIntPtr_NMatrix4
345−_xamarin_simd__IntPtr_objc_msgSend_Vector3_NVector3i_bool_IntPtr_NativeHandle
346−_xamarin_simd__IntPtr_objc_msgSendSuper_Vector3_NVector3i_bool_IntPtr_NativeHandle
347−_xamarin_simd__IntPtr_objc_msgSend_Vector3_NVector2i_bool_IntPtr_NativeHandle
348−_xamarin_simd__IntPtr_objc_msgSendSuper_Vector3_NVector2i_bool_IntPtr_NativeHandle
349−_xamarin_simd__IntPtr_objc_msgSend_Vector3_NVector2i_bool_bool_IntPtr_NativeHandle
350−_xamarin_simd__IntPtr_objc_msgSendSuper_Vector3_NVector2i_bool_bool_IntPtr_NativeHandle
351−_xamarin_simd__IntPtr_objc_msgSend_Vector3_NVector2i_bool_bool_bool_IntPtr_NativeHandle
352−_xamarin_simd__IntPtr_objc_msgSendSuper_Vector3_NVector2i_bool_bool_bool_IntPtr_NativeHandle
353−_xamarin_simd__IntPtr_objc_msgSend_Vector3_NVector2i_int_bool_IntPtr_NativeHandle
354−_xamarin_simd__IntPtr_objc_msgSendSuper_Vector3_NVector2i_int_bool_IntPtr_NativeHandle
355−_xamarin_simd__IntPtr_objc_msgSend_Vector3_NVector2i_IntPtr_NativeHandle
356−_xamarin_simd__IntPtr_objc_msgSendSuper_Vector3_NVector2i_IntPtr_NativeHandle
357−_xamarin_simd__IntPtr_objc_msgSend_Vector3_bool_IntPtr_NativeHandle
358−_xamarin_simd__IntPtr_objc_msgSendSuper_Vector3_bool_IntPtr_NativeHandle
359−_xamarin_simd__IntPtr_objc_msgSend_NativeHandle_int_UInt32_NativeHandle
360−_xamarin_simd__IntPtr_objc_msgSendSuper_NativeHandle_int_UInt32_NativeHandle
361−_xamarin_simd__NativeHandle_objc_msgSend_Vector3_NVector3i_IntPtr_bool_NativeHandle
362−_xamarin_simd__NativeHandle_objc_msgSendSuper_Vector3_NVector3i_IntPtr_bool_NativeHandle
363−_xamarin_simd__NativeHandle_objc_msgSend_Vector2_NVector2i_IntPtr_NativeHandle
364−_xamarin_simd__NativeHandle_objc_msgSendSuper_Vector2_NVector2i_IntPtr_NativeHandle
365−_xamarin_simd__NativeHandle_objc_msgSend_Vector3_UIntPtr_UIntPtr_IntPtr_bool_bool_NativeHandle
366−_xamarin_simd__NativeHandle_objc_msgSendSuper_Vector3_UIntPtr_UIntPtr_IntPtr_bool_bool_NativeHandle
367−_xamarin_simd__NativeHandle_objc_msgSend_float_Vector2_UIntPtr_UIntPtr_IntPtr_bool_NativeHandle
368−_xamarin_simd__NativeHandle_objc_msgSendSuper_float_Vector2_UIntPtr_UIntPtr_IntPtr_bool_NativeHandle
369−_xamarin_simd__NativeHandle_objc_msgSend_float_Vector2_UIntPtr_UIntPtr_UIntPtr_IntPtr_bool_NativeHandle
370−_xamarin_simd__NativeHandle_objc_msgSendSuper_float_Vector2_UIntPtr_UIntPtr_UIntPtr_IntPtr_bool_NativeHandle
371−_xamarin_simd__bool_objc_msgSend_NVector2i_IntPtr_float_NativeHandle_NativeHandle_NativeHandle
372−_xamarin_simd__bool_objc_msgSendSuper_NVector2i_IntPtr_float_NativeHandle_NativeHandle_NativeHandle
373−_xamarin_simd__bool_objc_msgSend_NVector2i_NativeHandle_NativeHandle_NativeHandle_NativeHandle
374−_xamarin_simd__bool_objc_msgSendSuper_NVector2i_NativeHandle_NativeHandle_NativeHandle_NativeHandle
375−_xamarin_simd__IntPtr_objc_msgSend_float_NativeHandle_NVector2i_IntPtr
376−_xamarin_simd__IntPtr_objc_msgSendSuper_float_NativeHandle_NVector2i_IntPtr
377−_xamarin_simd__NativeHandle_objc_msgSend_float_NativeHandle_NVector2i_int_IntPtr_bool
378−_xamarin_simd__NativeHandle_objc_msgSendSuper_float_NativeHandle_NVector2i_int_IntPtr_bool
379−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_IntPtr_NVector2i_float_float_float_float
380−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_IntPtr_NVector2i_float_float_float_float
381−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_IntPtr_NVector2i_float_float_float_float_float
382−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_IntPtr_NVector2i_float_float_float_float_float
383−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_NativeHandle_NVector2i
384−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_NativeHandle_NVector2i
385−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_NativeHandle_NVector2i_float
386−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_NativeHandle_NVector2i_float
387−_xamarin_simd__NativeHandle_objc_msgSend_NMatrix4_bool
388−_xamarin_simd__NativeHandle_objc_msgSendSuper_NMatrix4_bool
389−_xamarin_simd__Vector3_objc_msgSend_Double
390−_xamarin_simd__Vector3_objc_msgSendSuper_Double
391−_xamarin_simd__void_objc_msgSend_Vector3_Double
392−_xamarin_simd__void_objc_msgSendSuper_Vector3_Double
393−_xamarin_simd__NMatrix4_objc_msgSend_NativeHandle_Double
394−_xamarin_simd__NMatrix4_objc_msgSendSuper_NativeHandle_Double
395−_xamarin_simd__NMatrix4_objc_msgSend_stret_NativeHandle_Double
396−_xamarin_simd__NMatrix4_objc_msgSendSuper_stret_NativeHandle_Double
397−_xamarin_simd__MDLVoxelIndexExtent_objc_msgSend
398−_xamarin_simd__MDLVoxelIndexExtent_objc_msgSendSuper
399−_xamarin_simd__MDLVoxelIndexExtent_objc_msgSend_stret
400−_xamarin_simd__MDLVoxelIndexExtent_objc_msgSendSuper_stret
401−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_MDLAxisAlignedBoundingBox_float
402−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_MDLAxisAlignedBoundingBox_float
403−_xamarin_simd__bool_objc_msgSend_NVector4i_bool_bool_bool_bool
404−_xamarin_simd__bool_objc_msgSendSuper_NVector4i_bool_bool_bool_bool
405−_xamarin_simd__void_objc_msgSend_NVector4i
406−_xamarin_simd__void_objc_msgSendSuper_NVector4i
407−_xamarin_simd__NativeHandle_objc_msgSend_MDLVoxelIndexExtent
408−_xamarin_simd__NativeHandle_objc_msgSendSuper_MDLVoxelIndexExtent
409−_xamarin_simd__NVector4i_objc_msgSend_Vector3
410−_xamarin_simd__NVector4i_objc_msgSendSuper_Vector3
411−_xamarin_simd__Vector3_objc_msgSend_NVector4i
412−_xamarin_simd__Vector3_objc_msgSendSuper_NVector4i
413−_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSend_NVector4i
414−_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSendSuper_NVector4i
415−_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSend_stret_NVector4i
416−_xamarin_simd__MDLAxisAlignedBoundingBox_objc_msgSendSuper_stret_NVector4i
417−_xamarin_simd__NVector3d_objc_msgSend
418−_xamarin_simd__NVector3d_objc_msgSendSuper
419−_xamarin_simd__NVector3d_objc_msgSend_stret
420−_xamarin_simd__NVector3d_objc_msgSendSuper_stret
421−_xamarin_simd__Quaternion_objc_msgSend
422−_xamarin_simd__Quaternion_objc_msgSendSuper
423−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_Quaternion_NativeHandle
424−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_Quaternion_NativeHandle
425−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_Quaternion
426−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_Quaternion
427−_xamarin_simd__NativeHandle_objc_msgSend_NVector2d_NativeHandle
428−_xamarin_simd__NativeHandle_objc_msgSendSuper_NVector2d_NativeHandle
429−_xamarin_simd__void_objc_msgSend_NVector2d
430−_xamarin_simd__void_objc_msgSendSuper_NVector2d
431−_xamarin_simd__NativeHandle_objc_msgSend_NVector2d_IntPtr
432−_xamarin_simd__NativeHandle_objc_msgSendSuper_NVector2d_IntPtr
433−_xamarin_simd__Vector3_objc_msgSend_Vector3
434−_xamarin_simd__Vector3_objc_msgSendSuper_Vector3
435−_xamarin_simd__NativeHandle_objc_msgSend_Vector4
436−_xamarin_simd__NativeHandle_objc_msgSendSuper_Vector4
437−_xamarin_vector_float3__Vector4_objc_msgSend
438−_xamarin_vector_float3__Vector4_objc_msgSendSuper
439−_xamarin_vector_float3__void_objc_msgSend_Vector4
440−_xamarin_vector_float3__void_objc_msgSendSuper_Vector4
441−_xamarin_simd__void_objc_msgSend_Quaternion
442−_xamarin_simd__void_objc_msgSendSuper_Quaternion
443−_xamarin_simd__NMatrix2_objc_msgSend
444−_xamarin_simd__NMatrix2_objc_msgSendSuper
445−_xamarin_simd__void_objc_msgSend_NMatrix2
446−_xamarin_simd__void_objc_msgSendSuper_NMatrix2
447−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_Vector2
448−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_Vector2
449−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_Vector4
450−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_Vector4
451−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_NMatrix2
452−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_NMatrix2
453−_xamarin_simd__NativeHandle_objc_msgSend_NativeHandle_NMatrix3
454−_xamarin_simd__NativeHandle_objc_msgSendSuper_NativeHandle_NMatrix3
455−_xamarin_simd__Vector2_objc_msgSend_IntPtr
456−_xamarin_simd__Vector2_objc_msgSendSuper_IntPtr
client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/aot-output/arm64/System.Private.CoreLib.aotdatadeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/aot-output/arm64/System.Private.CoreLib.dll.odeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libSystem.Globalization.Native.dylibdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libSystem.IO.Compression.Native.dylibdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libSystem.Native.dylibdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libSystem.Net.Security.Native.dylibdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libSystem.Security.Cryptography.Native.Apple.dylibdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libmono-component-debugger.dylibdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libmono-component-diagnostics_tracing.dylibdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libmono-component-hot_reload.dylibdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libmono-component-marshal-ilgen.dylibdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/libxamarin-dotnet-debug.dylibdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/nativelibraries/main.arm64.odeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/partialappmanifest/_PartialAppManifests.itemsdeleted−4
@@ -1,4 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup />
4−</Project>
client/obj/Debug/net10.0-ios/iossimulator-arm64/ref/Skrepka.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/refint/Skrepka.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/f/MauiInfo.plistdeleted−12
@@ -1,12 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8"?>
2−<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3−<plist version="1.0">
4−<dict>
5− <key>UIAppFonts</key>
6− <array>
7− <string>OpenSans-Regular.ttf</string>
8− <string>OpenSans-Semibold.ttf</string>
9− </array>
10−
11−</dict>
12−</plist>
client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/f/OpenSans-Regular.ttfdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/f/OpenSans-Semibold.ttfdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/Contents.jsondeleted−93
@@ -1,93 +0,0 @@
1−{
2− "images": [
3− {
4− "idiom": "iphone",
5− "size": "20x20",
6− "scale": "2x",
7− "filename": "appicon20x20@2x.png"
8− },
9− {
10− "idiom": "ipad",
11− "size": "20x20",
12− "scale": "2x",
13− "filename": "appicon20x20@2x.png"
14− },
15− {
16− "idiom": "iphone",
17− "size": "20x20",
18− "scale": "3x",
19− "filename": "appicon20x20@3x.png"
20− },
21− {
22− "idiom": "iphone",
23− "size": "29x29",
24− "scale": "2x",
25− "filename": "appicon29x29@2x.png"
26− },
27− {
28− "idiom": "ipad",
29− "size": "29x29",
30− "scale": "2x",
31− "filename": "appicon29x29@2x.png"
32− },
33− {
34− "idiom": "iphone",
35− "size": "29x29",
36− "scale": "3x",
37− "filename": "appicon29x29@3x.png"
38− },
39− {
40− "idiom": "iphone",
41− "size": "40x40",
42− "scale": "2x",
43− "filename": "appicon40x40@2x.png"
44− },
45− {
46− "idiom": "ipad",
47− "size": "40x40",
48− "scale": "2x",
49− "filename": "appicon40x40@2x.png"
50− },
51− {
52− "idiom": "iphone",
53− "size": "40x40",
54− "scale": "3x",
55− "filename": "appicon40x40@3x.png"
56− },
57− {
58− "idiom": "iphone",
59− "size": "60x60",
60− "scale": "2x",
61− "filename": "appicon60x60@2x.png"
62− },
63− {
64− "idiom": "iphone",
65− "size": "60x60",
66− "scale": "3x",
67− "filename": "appicon60x60@3x.png"
68− },
69− {
70− "idiom": "ipad",
71− "size": "76x76",
72− "scale": "2x",
73− "filename": "appicon76x76@2x.png"
74− },
75− {
76− "idiom": "ipad",
77− "size": "83.5x83.5",
78− "scale": "2x",
79− "filename": "appicon83.5x83.5@2x.png"
80− },
81− {
82− "idiom": "ios-marketing",
83− "size": "1024x1024",
84− "scale": "1x",
85− "filename": "appiconItunesArtwork.png"
86− }
87− ],
88− "properties": {},
89− "info": {
90− "version": 1,
91− "author": "xcode"
92− }
93−}
client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon20x20@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon20x20@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon29x29@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon29x29@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon40x40@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon40x40@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon60x60@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon60x60@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon76x76@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon83.5x83.5@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appiconItunesArtwork.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/dotnet_bot.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/dotnet_bot@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/r/dotnet_bot@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/MauiInfo.plistdeleted−9
@@ -1,9 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8"?>
2−<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3−<plist version="1.0">
4−<dict>
5− <key>UILaunchStoryboardName</key>
6− <string>MauiSplash</string>
7−
8−</dict>
9−</plist>
client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/MauiSplash.storyboarddeleted−38
@@ -1,38 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8"?>
2−<!--This file was auto-generated by .NET MAUI.-->
3−<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="17701" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
4− <device id="retina6_1" orientation="portrait" appearance="light"/>
5− <dependencies>
6− <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="17703"/>
7− <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
8− </dependencies>
9− <scenes>
10− <!--View Controller-->
11− <scene sceneID="EHf-IW-A2E">
12− <objects>
13− <viewController id="01J-lp-oVM" sceneMemberID="viewController">
14− <layoutGuides>
15− <viewControllerLayoutGuide type="top" id="Llm-lL-Icb"/>
16− <viewControllerLayoutGuide type="bottom" id="xb3-aO-Qok"/>
17− </layoutGuides>
18− <view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
19− <rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
20− <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
21− <subviews>
22− <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="center" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" image="splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D.png" translatesAutoresizingMaskIntoConstraints="NO" id="aT4-1l-d9a">
23− <rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
24− <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
25− </imageView>
26− </subviews>
27− <color key="backgroundColor" red="0.31764707" green="0.16862746" blue="0.83137256" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
28− </view>
29− </viewController>
30− <placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
31− </objects>
32− <point key="canvasLocation" x="53" y="375"/>
33− </scene>
34− </scenes>
35− <resources>
36− <image name="splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D.png" />
37− </resources>
38−</document>
client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/resizetizer/sp/splash_7CF9AE42DA2017EC6621B726A870D40F01970097ED8F3D99ABBC1EC8470F119D@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-ios/iossimulator-arm64/runtimeconfig.bindeleted−1
@@ -1 +0,0 @@
1−MMicrosoft.Extensions.DependencyInjection.VerifyOpenGenericServiceTrimmabilitytruefSystem.ComponentModel.TypeConverter.EnableUnsafeBinaryFormatterInDesigntimeLicenseContextSerializationfalseCSystem.ComponentModel.TypeDescriptor.IsComObjectDescriptorSupportedfalse'System.Diagnostics.Debugger.IsSupportedtrueSystem.Globalization.InvariantfalseSystem.Globalization.Hybridtrue&System.Linq.Enumerable.IsSizeOptimizedtrue$System.Net.Http.UseNativeHttpHandlertrue*System.Net.SocketsHttpHandler.Http3Supportfalse4System.Reflection.NullabilityInfoContext.IsSupportedfalse9System.Resources.ResourceManager.AllowCustomResourceTypesfalse&System.Resources.UseSystemResourceKeysfalse<System.Runtime.InteropServices.BuiltInComInterop.IsSupportedfalseJSystem.Runtime.InteropServices.EnableConsumingManagedCodeFromNativeHostingfalse9System.Runtime.InteropServices.EnableCppCLIHostActivationfalseESystem.Runtime.Serialization.EnableUnsafeBinaryFormatterSerializationfalse&System.StartupHookProvider.IsSupportedfalse-System.Text.Encoding.EnableUnsafeUTF7Encodingfalse<System.Text.Json.JsonSerializer.IsReflectionEnabledByDefaulttrue-System.Threading.Thread.EnableAutoreleasePooltrue>Microsoft.Maui.RuntimeFeature.IsIVisualAssemblyScanningEnabledfalse=Microsoft.Maui.RuntimeFeature.AreBindingInterceptorsSupportedtrue
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/.NETCoreApp,Version=v10.0.AssemblyAttributes.fsdeleted−3
@@ -1,3 +0,0 @@
1−namespace Microsoft.BuildSettings
2− [<System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v10.0", FrameworkDisplayName=".NET 10.0")>]
3− do ()
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/AppManifest.plistdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Entitlements.xcentdeleted−5
@@ -1,5 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8"?>
2−<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3−<plist version="1.0">
4−<dict/>
5−</plist>
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/ILLink.Substitutions.xmldeleted−15
@@ -1,15 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<linker>
3− <assembly fullname="Skrepka">
4− <resource name="FSharpSignatureData.Skrepka" action="remove"></resource>
5− <resource name="FSharpSignatureCompressedData.Skrepka" action="remove"></resource>
6− <resource name="FSharpSignatureDataB.Skrepka" action="remove"></resource>
7− <resource name="FSharpSignatureCompressedDataB.Skrepka" action="remove"></resource>
8− <resource name="FSharpOptimizationData.Skrepka" action="remove"></resource>
9− <resource name="FSharpOptimizationCompressedData.Skrepka" action="remove"></resource>
10− <resource name="FSharpOptimizationDataB.Skrepka" action="remove"></resource>
11− <resource name="FSharpOptimizationCompressedDataB.Skrepka" action="remove"></resource>
12− <resource name="FSharpOptimizationInfo.Skrepka" action="remove"></resource>
13− <resource name="FSharpSignatureInfo.Skrepka" action="remove"></resource>
14− </assembly>
15−</linker>
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/PublishOutputs.efd59590f0.txtdeleted−248
@@ -1,248 +0,0 @@
1−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/cs/FSharp.Core.resources.dll
2−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/de/FSharp.Core.resources.dll
3−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/es/FSharp.Core.resources.dll
4−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/fr/FSharp.Core.resources.dll
5−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/it/FSharp.Core.resources.dll
6−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/ja/FSharp.Core.resources.dll
7−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/ko/FSharp.Core.resources.dll
8−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/pl/FSharp.Core.resources.dll
9−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/pt-BR/FSharp.Core.resources.dll
10−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/ru/FSharp.Core.resources.dll
11−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/tr/FSharp.Core.resources.dll
12−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/zh-Hans/FSharp.Core.resources.dll
13−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/zh-Hant/FSharp.Core.resources.dll
14−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/ar/Microsoft.Maui.Controls.resources.dll
15−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/ca/Microsoft.Maui.Controls.resources.dll
16−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/cs/Microsoft.Maui.Controls.resources.dll
17−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/da/Microsoft.Maui.Controls.resources.dll
18−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/de/Microsoft.Maui.Controls.resources.dll
19−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/el/Microsoft.Maui.Controls.resources.dll
20−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/es/Microsoft.Maui.Controls.resources.dll
21−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/fi/Microsoft.Maui.Controls.resources.dll
22−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/fr/Microsoft.Maui.Controls.resources.dll
23−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/he/Microsoft.Maui.Controls.resources.dll
24−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/hi/Microsoft.Maui.Controls.resources.dll
25−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/hr/Microsoft.Maui.Controls.resources.dll
26−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/hu/Microsoft.Maui.Controls.resources.dll
27−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/id/Microsoft.Maui.Controls.resources.dll
28−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/it/Microsoft.Maui.Controls.resources.dll
29−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/ja/Microsoft.Maui.Controls.resources.dll
30−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/ko/Microsoft.Maui.Controls.resources.dll
31−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/ms/Microsoft.Maui.Controls.resources.dll
32−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/nb/Microsoft.Maui.Controls.resources.dll
33−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/nl/Microsoft.Maui.Controls.resources.dll
34−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/pl/Microsoft.Maui.Controls.resources.dll
35−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/pt-BR/Microsoft.Maui.Controls.resources.dll
36−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/pt/Microsoft.Maui.Controls.resources.dll
37−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/ro/Microsoft.Maui.Controls.resources.dll
38−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/ru/Microsoft.Maui.Controls.resources.dll
39−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/sk/Microsoft.Maui.Controls.resources.dll
40−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/sv/Microsoft.Maui.Controls.resources.dll
41−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/th/Microsoft.Maui.Controls.resources.dll
42−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/tr/Microsoft.Maui.Controls.resources.dll
43−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/uk/Microsoft.Maui.Controls.resources.dll
44−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/vi/Microsoft.Maui.Controls.resources.dll
45−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/zh-HK/Microsoft.Maui.Controls.resources.dll
46−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/zh-Hans/Microsoft.Maui.Controls.resources.dll
47−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/zh-Hant/Microsoft.Maui.Controls.resources.dll
48−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/runtimeconfig.bin
49−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Fabulous.dll
50−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Fabulous.MauiControls.dll
51−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/FSharp.Core.dll
52−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/LiteDB.dll
53−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Configuration.dll
54−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Configuration.Abstractions.dll
55−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.DependencyInjection.dll
56−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.DependencyInjection.Abstractions.dll
57−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Diagnostics.Abstractions.dll
58−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.FileProviders.Abstractions.dll
59−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Hosting.Abstractions.dll
60−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Logging.dll
61−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Logging.Abstractions.dll
62−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Options.dll
63−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Extensions.Primitives.dll
64−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Maui.Controls.Compatibility.dll
65−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Maui.Controls.dll
66−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Maui.Controls.Xaml.dll
67−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Maui.dll
68−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Maui.Essentials.dll
69−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Maui.Graphics.dll
70−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Sodium.Core.dll
71−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Skrepka.dll
72−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.CSharp.dll
73−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.VisualBasic.Core.dll
74−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.VisualBasic.dll
75−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Win32.Primitives.dll
76−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.Win32.Registry.dll
77−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.AppContext.dll
78−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Buffers.dll
79−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Collections.Concurrent.dll
80−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Collections.Immutable.dll
81−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Collections.NonGeneric.dll
82−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Collections.Specialized.dll
83−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Collections.dll
84−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.ComponentModel.Annotations.dll
85−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.ComponentModel.DataAnnotations.dll
86−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.ComponentModel.EventBasedAsync.dll
87−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.ComponentModel.Primitives.dll
88−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.ComponentModel.TypeConverter.dll
89−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.ComponentModel.dll
90−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Configuration.dll
91−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Console.dll
92−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Core.dll
93−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Data.Common.dll
94−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Data.DataSetExtensions.dll
95−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Data.dll
96−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Diagnostics.Contracts.dll
97−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Diagnostics.Debug.dll
98−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Diagnostics.DiagnosticSource.dll
99−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Diagnostics.FileVersionInfo.dll
100−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Diagnostics.Process.dll
101−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Diagnostics.StackTrace.dll
102−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Diagnostics.TextWriterTraceListener.dll
103−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Diagnostics.Tools.dll
104−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Diagnostics.TraceSource.dll
105−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Diagnostics.Tracing.dll
106−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Drawing.Primitives.dll
107−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Drawing.dll
108−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Dynamic.Runtime.dll
109−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Formats.Asn1.dll
110−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Formats.Tar.dll
111−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Globalization.Calendars.dll
112−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Globalization.Extensions.dll
113−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Globalization.dll
114−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.IO.Compression.Brotli.dll
115−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.IO.Compression.FileSystem.dll
116−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.IO.Compression.ZipFile.dll
117−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.IO.Compression.dll
118−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.IO.FileSystem.AccessControl.dll
119−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.IO.FileSystem.DriveInfo.dll
120−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.IO.FileSystem.Primitives.dll
121−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.IO.FileSystem.Watcher.dll
122−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.IO.FileSystem.dll
123−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.IO.IsolatedStorage.dll
124−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.IO.MemoryMappedFiles.dll
125−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.IO.Pipelines.dll
126−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.IO.Pipes.AccessControl.dll
127−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.IO.Pipes.dll
128−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.IO.UnmanagedMemoryStream.dll
129−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.IO.dll
130−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Linq.AsyncEnumerable.dll
131−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Linq.Expressions.dll
132−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Linq.Parallel.dll
133−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Linq.Queryable.dll
134−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Linq.dll
135−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Memory.dll
136−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.Http.Json.dll
137−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.Http.dll
138−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.HttpListener.dll
139−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.Mail.dll
140−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.NameResolution.dll
141−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.NetworkInformation.dll
142−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.Ping.dll
143−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.Primitives.dll
144−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.Quic.dll
145−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.Requests.dll
146−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.Security.dll
147−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.ServerSentEvents.dll
148−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.ServicePoint.dll
149−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.Sockets.dll
150−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.WebClient.dll
151−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.WebHeaderCollection.dll
152−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.WebProxy.dll
153−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.WebSockets.Client.dll
154−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.WebSockets.dll
155−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Net.dll
156−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Numerics.Vectors.dll
157−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Numerics.dll
158−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.ObjectModel.dll
159−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Private.DataContractSerialization.dll
160−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Private.Uri.dll
161−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Private.Xml.Linq.dll
162−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Private.Xml.dll
163−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Reflection.DispatchProxy.dll
164−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Reflection.Emit.ILGeneration.dll
165−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Reflection.Emit.Lightweight.dll
166−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Reflection.Emit.dll
167−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Reflection.Extensions.dll
168−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Reflection.Metadata.dll
169−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Reflection.Primitives.dll
170−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Reflection.TypeExtensions.dll
171−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Reflection.dll
172−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Resources.Reader.dll
173−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Resources.ResourceManager.dll
174−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Resources.Writer.dll
175−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Runtime.CompilerServices.Unsafe.dll
176−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Runtime.CompilerServices.VisualC.dll
177−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Runtime.Extensions.dll
178−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Runtime.Handles.dll
179−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Runtime.InteropServices.JavaScript.dll
180−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Runtime.InteropServices.RuntimeInformation.dll
181−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Runtime.InteropServices.dll
182−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Runtime.Intrinsics.dll
183−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Runtime.Loader.dll
184−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Runtime.Numerics.dll
185−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Runtime.Serialization.Formatters.dll
186−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Runtime.Serialization.Json.dll
187−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Runtime.Serialization.Primitives.dll
188−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Runtime.Serialization.Xml.dll
189−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Runtime.Serialization.dll
190−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Runtime.dll
191−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Security.AccessControl.dll
192−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Security.Claims.dll
193−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.Algorithms.dll
194−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.Cng.dll
195−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.Csp.dll
196−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.Encoding.dll
197−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.OpenSsl.dll
198−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.Primitives.dll
199−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.X509Certificates.dll
200−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Security.Cryptography.dll
201−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Security.Principal.Windows.dll
202−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Security.Principal.dll
203−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Security.SecureString.dll
204−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Security.dll
205−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.ServiceModel.Web.dll
206−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.ServiceProcess.dll
207−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Text.Encoding.CodePages.dll
208−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Text.Encoding.Extensions.dll
209−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Text.Encoding.dll
210−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Text.Encodings.Web.dll
211−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Text.Json.dll
212−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Text.RegularExpressions.dll
213−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Threading.AccessControl.dll
214−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Threading.Channels.dll
215−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Threading.Overlapped.dll
216−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Threading.Tasks.Dataflow.dll
217−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Threading.Tasks.Extensions.dll
218−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Threading.Tasks.Parallel.dll
219−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Threading.Tasks.dll
220−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Threading.Thread.dll
221−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Threading.ThreadPool.dll
222−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Threading.Timer.dll
223−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Threading.dll
224−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Transactions.Local.dll
225−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Transactions.dll
226−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.ValueTuple.dll
227−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Web.HttpUtility.dll
228−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Web.dll
229−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Windows.dll
230−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Xml.Linq.dll
231−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Xml.ReaderWriter.dll
232−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Xml.Serialization.dll
233−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Xml.XDocument.dll
234−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Xml.XPath.XDocument.dll
235−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Xml.XPath.dll
236−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Xml.XmlDocument.dll
237−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Xml.XmlSerializer.dll
238−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Xml.dll
239−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.dll
240−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/WindowsBase.dll
241−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/mscorlib.dll
242−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/netstandard.dll
243−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Private.CoreLib.dll
244−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.MacCatalyst.dll
245−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Skrepka.pdb
246−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/Microsoft.MacCatalyst.pdb
247−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MonoBundle/System.Private.CoreLib.aotdata.arm64
248−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/publish/../Skrepka.app/Contents/MacOS//Skrepka
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.AssemblyInfo.fsdeleted−19
@@ -1,19 +0,0 @@
1−// <auto-generated>
2−// Generated by the FSharp WriteCodeFragment class.
3−// </auto-generated>
4−namespace FSharp
5−
6−open System
7−open System.Reflection
8−
9−
10−[<assembly: System.Reflection.AssemblyCompanyAttribute("Skrepka")>]
11−[<assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")>]
12−[<assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")>]
13−[<assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0+d854ebf639ac29bd51a1d44c5399687b837f58fc")>]
14−[<assembly: System.Reflection.AssemblyProductAttribute("Skrepka")>]
15−[<assembly: System.Reflection.AssemblyTitleAttribute("Skrepka")>]
16−[<assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")>]
17−[<assembly: System.Runtime.Versioning.TargetPlatformAttribute("MacCatalyst26.2")>]
18−[<assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("MacCatalyst26.2")>]
19−do()
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.AssemblyInfoInputs.cachedeleted−1
@@ -1 +0,0 @@
1−b52bc94b6f6cb2bd6b5ac284a29c07d1c93f8dcad7b50bfe9a5014f20c640ed2
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.fsproj.AssemblyReference.cachedeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.fsproj.CoreCompileInputs.cachedeleted−1
@@ -1 +0,0 @@
1−e72de62331c5600bbb3125cfe2f57f32602258ae53f7d082ac6aaf123c600e47
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.fsproj.FileListAbsolute.txtdeleted−325
@@ -1,325 +0,0 @@
1−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.fsproj.AssemblyReference.cache
2−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/partialappmanifest/_PartialAppManifests.items
3−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauiimage.inputs
4−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauifont.inputs
5−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauisplash.inputs
6−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauisplash.stamp
7−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/dotnet_bot@3x.png
8−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/dotnet_bot@2x.png
9−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/dotnet_bot.png
10−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appiconItunesArtwork.png
11−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon83.5x83.5@2x.png
12−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon76x76@2x.png
13−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon60x60@3x.png
14−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon60x60@2x.png
15−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon40x40@3x.png
16−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon40x40@2x.png
17−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon29x29@3x.png
18−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon29x29@2x.png
19−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon20x20@3x.png
20−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon20x20@2x.png
21−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/Contents.json
22−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauiimage.stamp
23−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauiimage.outputs
24−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/f/MauiInfo.plist
25−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauifont.stamp
26−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/f/OpenSans-Regular.ttf
27−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/f/OpenSans-Semibold.ttf
28−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/_CompileAppManifest.inputs
29−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/_PartialAppManifest.items
30−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/_BundleResourceWithLogicalName.items
31−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/_ProcessedImageAssetsPath.items
32−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/ibtool/_ProcessedInterfaceDefinitionsPath.items
33−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/copySceneKitAssets/_ProcessedSceneKitAssetsPath.items
34−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/collada/_ProcessedColladaAssetsPath.items
35−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/atlas/_ProcessedTextureAtlasesPath.items
36−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/coremlc/_PartialAppManifest.items
37−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/coremlc/_BundleResourceWithLogicalName.items
38−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/_ProcessedBundleResourcesPath.items
39−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/_ProcessedContentPath.items
40−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.AssemblyInfoInputs.cache
41−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.AssemblyInfo.fs
42−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.fsproj.CoreCompileInputs.cache
43−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.sourcelink.json
44−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.runtimeconfig.json
45−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.dll
46−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.pdb
47−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Fabulous.dll
48−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Fabulous.MauiControls.dll
49−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/FSharp.Core.dll
50−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Configuration.dll
51−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Configuration.Abstractions.dll
52−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.DependencyInjection.dll
53−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.DependencyInjection.Abstractions.dll
54−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Diagnostics.Abstractions.dll
55−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.FileProviders.Abstractions.dll
56−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Hosting.Abstractions.dll
57−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Logging.dll
58−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Logging.Abstractions.dll
59−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Options.dll
60−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Extensions.Primitives.dll
61−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Maui.Controls.Compatibility.dll
62−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Maui.Controls.dll
63−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Maui.Controls.Xaml.dll
64−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Maui.dll
65−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Maui.Essentials.dll
66−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Maui.Graphics.dll
67−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Sodium.Core.dll
68−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/cs/FSharp.Core.resources.dll
69−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/de/FSharp.Core.resources.dll
70−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/es/FSharp.Core.resources.dll
71−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/fr/FSharp.Core.resources.dll
72−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/it/FSharp.Core.resources.dll
73−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ja/FSharp.Core.resources.dll
74−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ko/FSharp.Core.resources.dll
75−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/pl/FSharp.Core.resources.dll
76−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/pt-BR/FSharp.Core.resources.dll
77−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ru/FSharp.Core.resources.dll
78−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/tr/FSharp.Core.resources.dll
79−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/zh-Hans/FSharp.Core.resources.dll
80−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/zh-Hant/FSharp.Core.resources.dll
81−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ar/Microsoft.Maui.Controls.resources.dll
82−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ca/Microsoft.Maui.Controls.resources.dll
83−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/cs/Microsoft.Maui.Controls.resources.dll
84−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/da/Microsoft.Maui.Controls.resources.dll
85−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/de/Microsoft.Maui.Controls.resources.dll
86−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/el/Microsoft.Maui.Controls.resources.dll
87−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/es/Microsoft.Maui.Controls.resources.dll
88−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/fi/Microsoft.Maui.Controls.resources.dll
89−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/fr/Microsoft.Maui.Controls.resources.dll
90−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/he/Microsoft.Maui.Controls.resources.dll
91−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/hi/Microsoft.Maui.Controls.resources.dll
92−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/hr/Microsoft.Maui.Controls.resources.dll
93−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/hu/Microsoft.Maui.Controls.resources.dll
94−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/id/Microsoft.Maui.Controls.resources.dll
95−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/it/Microsoft.Maui.Controls.resources.dll
96−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ja/Microsoft.Maui.Controls.resources.dll
97−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ko/Microsoft.Maui.Controls.resources.dll
98−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ms/Microsoft.Maui.Controls.resources.dll
99−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/nb/Microsoft.Maui.Controls.resources.dll
100−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/nl/Microsoft.Maui.Controls.resources.dll
101−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/pl/Microsoft.Maui.Controls.resources.dll
102−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/pt-BR/Microsoft.Maui.Controls.resources.dll
103−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/pt/Microsoft.Maui.Controls.resources.dll
104−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ro/Microsoft.Maui.Controls.resources.dll
105−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/ru/Microsoft.Maui.Controls.resources.dll
106−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/sk/Microsoft.Maui.Controls.resources.dll
107−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/sv/Microsoft.Maui.Controls.resources.dll
108−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/th/Microsoft.Maui.Controls.resources.dll
109−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/tr/Microsoft.Maui.Controls.resources.dll
110−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/uk/Microsoft.Maui.Controls.resources.dll
111−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/vi/Microsoft.Maui.Controls.resources.dll
112−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/zh-HK/Microsoft.Maui.Controls.resources.dll
113−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/zh-Hans/Microsoft.Maui.Controls.resources.dll
114−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/zh-Hant/Microsoft.Maui.Controls.resources.dll
115−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libsodium.a
116−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.CSharp.dll
117−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.VisualBasic.Core.dll
118−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.VisualBasic.dll
119−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Win32.Primitives.dll
120−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.Win32.Registry.dll
121−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.AppContext.dll
122−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Buffers.dll
123−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Collections.Concurrent.dll
124−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Collections.Immutable.dll
125−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Collections.NonGeneric.dll
126−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Collections.Specialized.dll
127−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Collections.dll
128−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ComponentModel.Annotations.dll
129−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ComponentModel.DataAnnotations.dll
130−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ComponentModel.EventBasedAsync.dll
131−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ComponentModel.Primitives.dll
132−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ComponentModel.TypeConverter.dll
133−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ComponentModel.dll
134−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Configuration.dll
135−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Console.dll
136−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Core.dll
137−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Data.Common.dll
138−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Data.DataSetExtensions.dll
139−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Data.dll
140−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.Contracts.dll
141−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.Debug.dll
142−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.DiagnosticSource.dll
143−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.FileVersionInfo.dll
144−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.Process.dll
145−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.StackTrace.dll
146−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.TextWriterTraceListener.dll
147−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.Tools.dll
148−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.TraceSource.dll
149−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Diagnostics.Tracing.dll
150−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Drawing.Primitives.dll
151−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Drawing.dll
152−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Dynamic.Runtime.dll
153−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Formats.Asn1.dll
154−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Formats.Tar.dll
155−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Globalization.Calendars.dll
156−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Globalization.Extensions.dll
157−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Globalization.dll
158−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Compression.Brotli.dll
159−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Compression.FileSystem.dll
160−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Compression.ZipFile.dll
161−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Compression.dll
162−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.FileSystem.AccessControl.dll
163−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.FileSystem.DriveInfo.dll
164−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.FileSystem.Primitives.dll
165−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.FileSystem.Watcher.dll
166−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.FileSystem.dll
167−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.IsolatedStorage.dll
168−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.MemoryMappedFiles.dll
169−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Pipelines.dll
170−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Pipes.AccessControl.dll
171−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.Pipes.dll
172−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.UnmanagedMemoryStream.dll
173−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.IO.dll
174−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Linq.AsyncEnumerable.dll
175−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Linq.Expressions.dll
176−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Linq.Parallel.dll
177−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Linq.Queryable.dll
178−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Linq.dll
179−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Memory.dll
180−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Http.Json.dll
181−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Http.dll
182−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.HttpListener.dll
183−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Mail.dll
184−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.NameResolution.dll
185−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.NetworkInformation.dll
186−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Ping.dll
187−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Primitives.dll
188−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Quic.dll
189−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Requests.dll
190−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Security.dll
191−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.ServerSentEvents.dll
192−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.ServicePoint.dll
193−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.Sockets.dll
194−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.WebClient.dll
195−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.WebHeaderCollection.dll
196−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.WebProxy.dll
197−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.WebSockets.Client.dll
198−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.WebSockets.dll
199−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Net.dll
200−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Numerics.Vectors.dll
201−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Numerics.dll
202−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ObjectModel.dll
203−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Private.DataContractSerialization.dll
204−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Private.Uri.dll
205−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Private.Xml.Linq.dll
206−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Private.Xml.dll
207−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.DispatchProxy.dll
208−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.Emit.ILGeneration.dll
209−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.Emit.Lightweight.dll
210−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.Emit.dll
211−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.Extensions.dll
212−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.Metadata.dll
213−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.Primitives.dll
214−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.TypeExtensions.dll
215−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Reflection.dll
216−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Resources.Reader.dll
217−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Resources.ResourceManager.dll
218−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Resources.Writer.dll
219−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.CompilerServices.Unsafe.dll
220−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.CompilerServices.VisualC.dll
221−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Extensions.dll
222−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Handles.dll
223−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.InteropServices.JavaScript.dll
224−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.InteropServices.RuntimeInformation.dll
225−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.InteropServices.dll
226−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Intrinsics.dll
227−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Loader.dll
228−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Numerics.dll
229−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Serialization.Formatters.dll
230−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Serialization.Json.dll
231−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Serialization.Primitives.dll
232−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Serialization.Xml.dll
233−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.Serialization.dll
234−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Runtime.dll
235−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.AccessControl.dll
236−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Claims.dll
237−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.Algorithms.dll
238−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.Cng.dll
239−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.Csp.dll
240−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.Encoding.dll
241−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.OpenSsl.dll
242−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.Primitives.dll
243−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.X509Certificates.dll
244−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Cryptography.dll
245−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Principal.Windows.dll
246−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.Principal.dll
247−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.SecureString.dll
248−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Security.dll
249−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ServiceModel.Web.dll
250−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ServiceProcess.dll
251−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Text.Encoding.CodePages.dll
252−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Text.Encoding.Extensions.dll
253−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Text.Encoding.dll
254−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Text.Encodings.Web.dll
255−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Text.Json.dll
256−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Text.RegularExpressions.dll
257−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.AccessControl.dll
258−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Channels.dll
259−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Overlapped.dll
260−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Tasks.Dataflow.dll
261−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Tasks.Extensions.dll
262−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Tasks.Parallel.dll
263−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Tasks.dll
264−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Thread.dll
265−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.ThreadPool.dll
266−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.Timer.dll
267−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Threading.dll
268−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Transactions.Local.dll
269−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Transactions.dll
270−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.ValueTuple.dll
271−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Web.HttpUtility.dll
272−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Web.dll
273−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Windows.dll
274−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.Linq.dll
275−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.ReaderWriter.dll
276−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.Serialization.dll
277−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.XDocument.dll
278−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.XPath.XDocument.dll
279−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.XPath.dll
280−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.XmlDocument.dll
281−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.XmlSerializer.dll
282−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Xml.dll
283−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.dll
284−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/WindowsBase.dll
285−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/mscorlib.dll
286−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/netstandard.dll
287−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.MacCatalyst.dll
288−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/System.Private.CoreLib.dll
289−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Globalization.Native.a
290−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Globalization.Native.dylib
291−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.IO.Compression.Native.a
292−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.IO.Compression.Native.dylib
293−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Native.a
294−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Native.dylib
295−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Net.Security.Native.a
296−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Net.Security.Native.dylib
297−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Security.Cryptography.Native.Apple.a
298−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libSystem.Security.Cryptography.Native.Apple.dylib
299−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libbrotlicommon.a
300−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libbrotlidec.a
301−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libbrotlienc.a
302−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-debugger-static.a
303−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-debugger-stub-static.a
304−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-diagnostics_tracing-static.a
305−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-diagnostics_tracing-stub-static.a
306−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-hot_reload-static.a
307−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-hot_reload-stub-static.a
308−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-marshal-ilgen-static.a
309−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmono-component-marshal-ilgen-stub-static.a
310−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmonosgen-2.0.a
311−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libmonosgen-2.0.dylib
312−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Microsoft.MacCatalyst.registrar.a
313−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libxamarin-dotnet-debug.a
314−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libxamarin-dotnet-debug.dylib
315−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libxamarin-dotnet-nativeaot-debug.a
316−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libxamarin-dotnet-nativeaot.a
317−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libxamarin-dotnet.a
318−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/libxamarin-dotnet.dylib
319−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.fsproj.Up2Date
320−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.dll
321−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/refint/Skrepka.dll
322−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.pdb
323−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.genruntimeconfig.cache
324−/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/ref/Skrepka.dll
325−/Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/LiteDB.dll
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.fsproj.Up2Datedeleted

No changes to the content.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.genruntimeconfig.cachedeleted−1
@@ -1 +0,0 @@
1−549a72ca9c6740ebffb05b4f4ddbc7fd4a93406919d3e05c4a01e43c720b52de
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.pdbdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.sourcelink.jsondeleted−1
@@ -1 +0,0 @@
1−{"documents":{"/Users/iko/Developer/skrepka/*":"https://raw.githubusercontent.com/ilyakooo0/skrepka/d854ebf639ac29bd51a1d44c5399687b837f58fc/*"}}
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/_CompileAppManifest.inputsdeleted−22
@@ -1,22 +0,0 @@
1−AppBundleName=Skrepka
2−ApplicationDisplayVersion=1.0
3−ApplicationId=com.skrepka.client
4−ApplicationTitle=Skrepka
5−ApplicationVersion=1
6−AppManifest=Platforms/MacCatalyst/Info.plist
7−CompiledAppManifest=obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/AppManifest.plist
8−DefaultSdkVersion=26.2
9−FontFilesToRegister=
10−GenerateApplicationManifest=true
11−IsAppExtension=false
12−MinSupportedOSPlatformVersion=15.0
13−PartialAppManifests=obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/f/MauiInfo.plist
14−ProjectDir=/Users/iko/Developer/skrepka/client
15−ResourcePrefix=Platforms/MacCatalyst/Resources
16−ResourceRules=
17−SdkIsSimulator=False
18−SdkVersion=26.2
19−SupportedOSPlatformVersion=26.2
20−TargetArchitectures=ARM64
21−TargetFrameworkMoniker=.NETCoreApp,Version=v10.0,Profile=maccatalyst
22−Validate=true
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/_BundleResourceWithLogicalName.itemsdeleted−13
@@ -1,13 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup>
4− <_BundleResourceWithLogicalName Include="obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/bundle/Assets.car">
5− <Optimize>false</Optimize>
6− <LogicalName>Assets.car</LogicalName>
7− </_BundleResourceWithLogicalName>
8− <_BundleResourceWithLogicalName Include="obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/bundle/appicon.icns">
9− <Optimize>false</Optimize>
10− <LogicalName>appicon.icns</LogicalName>
11− </_BundleResourceWithLogicalName>
12− </ItemGroup>
13−</Project>
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/_PartialAppManifest.itemsdeleted−6
@@ -1,6 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup>
4− <_PostCompilePartialAppManifest Include="obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/partial-info.plist" />
5− </ItemGroup>
6−</Project>
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/asset-manifest.plistdeleted−15
@@ -1,15 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8"?>
2−<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3−<plist version="1.0">
4−<dict>
5− <key>com.apple.actool.compilation-results</key>
6− <dict>
7− <key>output-files</key>
8− <array>
9− <string>/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/bundle/Assets.car</string>
10− <string>/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/bundle/appicon.icns</string>
11− <string>/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/partial-info.plist</string>
12− </array>
13− </dict>
14−</dict>
15−</plist>
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/bundle/Assets.cardeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/bundle/appicon.icnsdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/Contents.jsondeleted−93
@@ -1,93 +0,0 @@
1−{
2− "images": [
3− {
4− "idiom": "iphone",
5− "size": "20x20",
6− "scale": "2x",
7− "filename": "appicon20x20@2x.png"
8− },
9− {
10− "idiom": "ipad",
11− "size": "20x20",
12− "scale": "2x",
13− "filename": "appicon20x20@2x.png"
14− },
15− {
16− "idiom": "iphone",
17− "size": "20x20",
18− "scale": "3x",
19− "filename": "appicon20x20@3x.png"
20− },
21− {
22− "idiom": "iphone",
23− "size": "29x29",
24− "scale": "2x",
25− "filename": "appicon29x29@2x.png"
26− },
27− {
28− "idiom": "ipad",
29− "size": "29x29",
30− "scale": "2x",
31− "filename": "appicon29x29@2x.png"
32− },
33− {
34− "idiom": "iphone",
35− "size": "29x29",
36− "scale": "3x",
37− "filename": "appicon29x29@3x.png"
38− },
39− {
40− "idiom": "iphone",
41− "size": "40x40",
42− "scale": "2x",
43− "filename": "appicon40x40@2x.png"
44− },
45− {
46− "idiom": "ipad",
47− "size": "40x40",
48− "scale": "2x",
49− "filename": "appicon40x40@2x.png"
50− },
51− {
52− "idiom": "iphone",
53− "size": "40x40",
54− "scale": "3x",
55− "filename": "appicon40x40@3x.png"
56− },
57− {
58− "idiom": "iphone",
59− "size": "60x60",
60− "scale": "2x",
61− "filename": "appicon60x60@2x.png"
62− },
63− {
64− "idiom": "iphone",
65− "size": "60x60",
66− "scale": "3x",
67− "filename": "appicon60x60@3x.png"
68− },
69− {
70− "idiom": "ipad",
71− "size": "76x76",
72− "scale": "2x",
73− "filename": "appicon76x76@2x.png"
74− },
75− {
76− "idiom": "ipad",
77− "size": "83.5x83.5",
78− "scale": "2x",
79− "filename": "appicon83.5x83.5@2x.png"
80− },
81− {
82− "idiom": "ios-marketing",
83− "size": "1024x1024",
84− "scale": "1x",
85− "filename": "appiconItunesArtwork.png"
86− }
87− ],
88− "properties": {},
89− "info": {
90− "version": 1,
91− "author": "xcode"
92− }
93−}
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon20x20@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon20x20@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon29x29@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon29x29@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon40x40@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon40x40@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon60x60@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon60x60@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon76x76@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appicon83.5x83.5@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/cloned-assets/Assets.xcassets/appicon.appiconset/appiconItunesArtwork.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/actool/partial-info.plistdeleted−10
@@ -1,10 +0,0 @@
1−<?xml version="1.0" encoding="UTF-8"?>
2−<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3−<plist version="1.0">
4−<dict>
5− <key>CFBundleIconFile</key>
6− <string>appicon</string>
7− <key>CFBundleIconName</key>
8− <string>appicon</string>
9−</dict>
10−</plist>
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/aot-compiler-path-10.0.105.txtdeleted−1
@@ -1 +0,0 @@
1−/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.maccatalyst-arm64/10.0.5/Sdk/../tools/mono-aot-cross
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/codesign/Skrepka.app/.stampfiledeleted−1
@@ -1 +0,0 @@
1−-v --force --timestamp=none --sign - --entitlements /Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/Entitlements.xcent /Users/iko/Developer/skrepka/client/bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/coremlc/_BundleResourceWithLogicalName.itemsdeleted−4
@@ -1,4 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup />
4−</Project>
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/coremlc/_PartialAppManifest.itemsdeleted−4
@@ -1,4 +0,0 @@
1−<?xml version="1.0" encoding="utf-8"?>
2−<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3− <ItemGroup />
4−</Project>
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/custom-linker-options.txtdeleted−238
@@ -1,238 +0,0 @@
1−AreAnyAssembliesTrimmed=false
2− AssemblyName=Skrepka.dll
3−
4− AOTCompiler=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.AOT.osx-arm64.Cross.maccatalyst-arm64/10.0.5/Sdk/../tools/mono-aot-cross
5− AOTOutputDirectory=obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/nativelibraries/aot-output/
6− DedupAssembly=
7− AppBundleManifestPath=bin/Debug/net10.0-maccatalyst/maccatalyst-arm64/Skrepka.app/Contents/Info.plist
8− CacheDirectory=/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-cache
9−
10− Debug=true
11− DeploymentTarget=26.2
12−
13− EnableSGenConc=false
14−
15− FrameworkAssembly=Microsoft.CSharp
16−FrameworkAssembly=Microsoft.VisualBasic.Core
17−FrameworkAssembly=Microsoft.VisualBasic
18−FrameworkAssembly=Microsoft.Win32.Primitives
19−FrameworkAssembly=Microsoft.Win32.Registry
20−FrameworkAssembly=System.AppContext
21−FrameworkAssembly=System.Buffers
22−FrameworkAssembly=System.Collections.Concurrent
23−FrameworkAssembly=System.Collections.Immutable
24−FrameworkAssembly=System.Collections.NonGeneric
25−FrameworkAssembly=System.Collections.Specialized
26−FrameworkAssembly=System.Collections
27−FrameworkAssembly=System.ComponentModel.Annotations
28−FrameworkAssembly=System.ComponentModel.DataAnnotations
29−FrameworkAssembly=System.ComponentModel.EventBasedAsync
30−FrameworkAssembly=System.ComponentModel.Primitives
31−FrameworkAssembly=System.ComponentModel.TypeConverter
32−FrameworkAssembly=System.ComponentModel
33−FrameworkAssembly=System.Configuration
34−FrameworkAssembly=System.Console
35−FrameworkAssembly=System.Core
36−FrameworkAssembly=System.Data.Common
37−FrameworkAssembly=System.Data.DataSetExtensions
38−FrameworkAssembly=System.Data
39−FrameworkAssembly=System.Diagnostics.Contracts
40−FrameworkAssembly=System.Diagnostics.Debug
41−FrameworkAssembly=System.Diagnostics.DiagnosticSource
42−FrameworkAssembly=System.Diagnostics.FileVersionInfo
43−FrameworkAssembly=System.Diagnostics.Process
44−FrameworkAssembly=System.Diagnostics.StackTrace
45−FrameworkAssembly=System.Diagnostics.TextWriterTraceListener
46−FrameworkAssembly=System.Diagnostics.Tools
47−FrameworkAssembly=System.Diagnostics.TraceSource
48−FrameworkAssembly=System.Diagnostics.Tracing
49−FrameworkAssembly=System.Drawing.Primitives
50−FrameworkAssembly=System.Drawing
51−FrameworkAssembly=System.Dynamic.Runtime
52−FrameworkAssembly=System.Formats.Asn1
53−FrameworkAssembly=System.Formats.Tar
54−FrameworkAssembly=System.Globalization.Calendars
55−FrameworkAssembly=System.Globalization.Extensions
56−FrameworkAssembly=System.Globalization
57−FrameworkAssembly=System.IO.Compression.Brotli
58−FrameworkAssembly=System.IO.Compression.FileSystem
59−FrameworkAssembly=System.IO.Compression.ZipFile
60−FrameworkAssembly=System.IO.Compression
61−FrameworkAssembly=System.IO.FileSystem.AccessControl
62−FrameworkAssembly=System.IO.FileSystem.DriveInfo
63−FrameworkAssembly=System.IO.FileSystem.Primitives
64−FrameworkAssembly=System.IO.FileSystem.Watcher
65−FrameworkAssembly=System.IO.FileSystem
66−FrameworkAssembly=System.IO.IsolatedStorage
67−FrameworkAssembly=System.IO.MemoryMappedFiles
68−FrameworkAssembly=System.IO.Pipelines
69−FrameworkAssembly=System.IO.Pipes.AccessControl
70−FrameworkAssembly=System.IO.Pipes
71−FrameworkAssembly=System.IO.UnmanagedMemoryStream
72−FrameworkAssembly=System.IO
73−FrameworkAssembly=System.Linq.AsyncEnumerable
74−FrameworkAssembly=System.Linq.Expressions
75−FrameworkAssembly=System.Linq.Parallel
76−FrameworkAssembly=System.Linq.Queryable
77−FrameworkAssembly=System.Linq
78−FrameworkAssembly=System.Memory
79−FrameworkAssembly=System.Net.Http.Json
80−FrameworkAssembly=System.Net.Http
81−FrameworkAssembly=System.Net.HttpListener
82−FrameworkAssembly=System.Net.Mail
83−FrameworkAssembly=System.Net.NameResolution
84−FrameworkAssembly=System.Net.NetworkInformation
85−FrameworkAssembly=System.Net.Ping
86−FrameworkAssembly=System.Net.Primitives
87−FrameworkAssembly=System.Net.Quic
88−FrameworkAssembly=System.Net.Requests
89−FrameworkAssembly=System.Net.Security
90−FrameworkAssembly=System.Net.ServerSentEvents
91−FrameworkAssembly=System.Net.ServicePoint
92−FrameworkAssembly=System.Net.Sockets
93−FrameworkAssembly=System.Net.WebClient
94−FrameworkAssembly=System.Net.WebHeaderCollection
95−FrameworkAssembly=System.Net.WebProxy
96−FrameworkAssembly=System.Net.WebSockets.Client
97−FrameworkAssembly=System.Net.WebSockets
98−FrameworkAssembly=System.Net
99−FrameworkAssembly=System.Numerics.Vectors
100−FrameworkAssembly=System.Numerics
101−FrameworkAssembly=System.ObjectModel
102−FrameworkAssembly=System.Private.DataContractSerialization
103−FrameworkAssembly=System.Private.Uri
104−FrameworkAssembly=System.Private.Xml.Linq
105−FrameworkAssembly=System.Private.Xml
106−FrameworkAssembly=System.Reflection.DispatchProxy
107−FrameworkAssembly=System.Reflection.Emit.ILGeneration
108−FrameworkAssembly=System.Reflection.Emit.Lightweight
109−FrameworkAssembly=System.Reflection.Emit
110−FrameworkAssembly=System.Reflection.Extensions
111−FrameworkAssembly=System.Reflection.Metadata
112−FrameworkAssembly=System.Reflection.Primitives
113−FrameworkAssembly=System.Reflection.TypeExtensions
114−FrameworkAssembly=System.Reflection
115−FrameworkAssembly=System.Resources.Reader
116−FrameworkAssembly=System.Resources.ResourceManager
117−FrameworkAssembly=System.Resources.Writer
118−FrameworkAssembly=System.Runtime.CompilerServices.Unsafe
119−FrameworkAssembly=System.Runtime.CompilerServices.VisualC
120−FrameworkAssembly=System.Runtime.Extensions
121−FrameworkAssembly=System.Runtime.Handles
122−FrameworkAssembly=System.Runtime.InteropServices.JavaScript
123−FrameworkAssembly=System.Runtime.InteropServices.RuntimeInformation
124−FrameworkAssembly=System.Runtime.InteropServices
125−FrameworkAssembly=System.Runtime.Intrinsics
126−FrameworkAssembly=System.Runtime.Loader
127−FrameworkAssembly=System.Runtime.Numerics
128−FrameworkAssembly=System.Runtime.Serialization.Formatters
129−FrameworkAssembly=System.Runtime.Serialization.Json
130−FrameworkAssembly=System.Runtime.Serialization.Primitives
131−FrameworkAssembly=System.Runtime.Serialization.Xml
132−FrameworkAssembly=System.Runtime.Serialization
133−FrameworkAssembly=System.Runtime
134−FrameworkAssembly=System.Security.AccessControl
135−FrameworkAssembly=System.Security.Claims
136−FrameworkAssembly=System.Security.Cryptography.Algorithms
137−FrameworkAssembly=System.Security.Cryptography.Cng
138−FrameworkAssembly=System.Security.Cryptography.Csp
139−FrameworkAssembly=System.Security.Cryptography.Encoding
140−FrameworkAssembly=System.Security.Cryptography.OpenSsl
141−FrameworkAssembly=System.Security.Cryptography.Primitives
142−FrameworkAssembly=System.Security.Cryptography.X509Certificates
143−FrameworkAssembly=System.Security.Cryptography
144−FrameworkAssembly=System.Security.Principal.Windows
145−FrameworkAssembly=System.Security.Principal
146−FrameworkAssembly=System.Security.SecureString
147−FrameworkAssembly=System.Security
148−FrameworkAssembly=System.ServiceModel.Web
149−FrameworkAssembly=System.ServiceProcess
150−FrameworkAssembly=System.Text.Encoding.CodePages
151−FrameworkAssembly=System.Text.Encoding.Extensions
152−FrameworkAssembly=System.Text.Encoding
153−FrameworkAssembly=System.Text.Encodings.Web
154−FrameworkAssembly=System.Text.Json
155−FrameworkAssembly=System.Text.RegularExpressions
156−FrameworkAssembly=System.Threading.AccessControl
157−FrameworkAssembly=System.Threading.Channels
158−FrameworkAssembly=System.Threading.Overlapped
159−FrameworkAssembly=System.Threading.Tasks.Dataflow
160−FrameworkAssembly=System.Threading.Tasks.Extensions
161−FrameworkAssembly=System.Threading.Tasks.Parallel
162−FrameworkAssembly=System.Threading.Tasks
163−FrameworkAssembly=System.Threading.Thread
164−FrameworkAssembly=System.Threading.ThreadPool
165−FrameworkAssembly=System.Threading.Timer
166−FrameworkAssembly=System.Threading
167−FrameworkAssembly=System.Transactions.Local
168−FrameworkAssembly=System.Transactions
169−FrameworkAssembly=System.ValueTuple
170−FrameworkAssembly=System.Web.HttpUtility
171−FrameworkAssembly=System.Web
172−FrameworkAssembly=System.Windows
173−FrameworkAssembly=System.Xml.Linq
174−FrameworkAssembly=System.Xml.ReaderWriter
175−FrameworkAssembly=System.Xml.Serialization
176−FrameworkAssembly=System.Xml.XDocument
177−FrameworkAssembly=System.Xml.XPath.XDocument
178−FrameworkAssembly=System.Xml.XPath
179−FrameworkAssembly=System.Xml.XmlDocument
180−FrameworkAssembly=System.Xml.XmlSerializer
181−FrameworkAssembly=System.Xml
182−FrameworkAssembly=System
183−FrameworkAssembly=WindowsBase
184−FrameworkAssembly=mscorlib
185−FrameworkAssembly=netstandard
186−FrameworkAssembly=System.Private.CoreLib
187− Interpreter=all
188− IntermediateLinkDir=obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/
189− InvariantGlobalization=false
190− HybridGlobalization=true
191− ItemsDirectory=/Users/iko/Developer/skrepka/client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items
192− IsAppExtension=false
193− IsSimulatorBuild=False
194− LibMonoLinkMode=static
195− LibXamarinLinkMode=static
196− MarshalManagedExceptionMode=
197− MarshalObjectiveCExceptionMode=
198− MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/10.0.5/runtimes/maccatalyst-arm64/native/libSystem.Globalization.Native.a
199−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/10.0.5/runtimes/maccatalyst-arm64/native/libSystem.IO.Compression.Native.a
200−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/10.0.5/runtimes/maccatalyst-arm64/native/libSystem.Native.a
201−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/10.0.5/runtimes/maccatalyst-arm64/native/libSystem.Net.Security.Native.a
202−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/10.0.5/runtimes/maccatalyst-arm64/native/libSystem.Security.Cryptography.Native.Apple.a
203−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/10.0.5/runtimes/maccatalyst-arm64/native/libbrotlicommon.a
204−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/10.0.5/runtimes/maccatalyst-arm64/native/libbrotlidec.a
205−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/10.0.5/runtimes/maccatalyst-arm64/native/libbrotlienc.a
206−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/10.0.5/runtimes/maccatalyst-arm64/native/libmono-component-debugger-static.a
207−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/10.0.5/runtimes/maccatalyst-arm64/native/libmono-component-diagnostics_tracing-stub-static.a
208−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/10.0.5/runtimes/maccatalyst-arm64/native/libmono-component-hot_reload-static.a
209−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/10.0.5/runtimes/maccatalyst-arm64/native/libmono-component-marshal-ilgen-static.a
210−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/10.0.5/runtimes/maccatalyst-arm64/native/libmonosgen-2.0.a
211−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/10.0.5/runtimes/maccatalyst-arm64/native/libmono-component-debugger-static.a
212−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/10.0.5/runtimes/maccatalyst-arm64/native/libmono-component-hot_reload-static.a
213−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/10.0.5/runtimes/maccatalyst-arm64/native/libmono-component-marshal-ilgen-static.a
214−MonoLibrary=/Users/iko/.dotnet/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/10.0.5/runtimes/maccatalyst-arm64/native/libmono-component-diagnostics_tracing-stub-static.a
215− MtouchFloat32=
216− NoWarn=
217− Optimize=
218− PartialStaticRegistrarLibrary=/Users/iko/.dotnet/packs/Microsoft.MacCatalyst.Runtime.maccatalyst-arm64.net10.0_26.2/26.2.10217/runtimes/maccatalyst-arm64/native/Microsoft.MacCatalyst.registrar.a
219− Platform=MacCatalyst
220− PlatformAssembly=Microsoft.MacCatalyst.dll
221− RelativeAppBundlePath=../Skrepka.app/
222− Registrar=partial-static
223−
224− RequireLinkWithAttributeForObjectiveCClassSearch=
225− RequirePInvokeWrappers=
226− RuntimeConfigurationFile=runtimeconfig.bin
227− SdkDevPath=/Applications/Xcode.app/Contents/Developer
228− SdkRootDirectory=/Users/iko/.dotnet/packs/Microsoft.MacCatalyst.Sdk.net10.0_26.2/26.2.10217/
229− SdkVersion=26.2
230− SkipMarkingNSObjectsInUserAssemblies=
231− TargetArchitectures=ARM64
232− TargetFramework=.NETCoreApp,Version=v10.0,Profile=maccatalyst
233− UseLlvm=
234− Verbosity=
235− Warn=
236− WarnAsError=
237− XamarinNativeLibraryDirectory=/Users/iko/.dotnet/packs/Microsoft.MacCatalyst.Runtime.maccatalyst-arm64.net10.0_26.2/26.2.10217/runtimes/maccatalyst-arm64/native/
238− XamarinRuntime=MonoVM
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/Link.semaphoredeleted

No changes to the content.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/Microsoft.Maui.Controls.Compatibility.pdbdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/Microsoft.Maui.Controls.Xaml.pdbdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/Microsoft.Maui.Controls.pdbdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/Microsoft.Maui.Essentials.pdbdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/Microsoft.Maui.Graphics.pdbdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/Microsoft.Maui.pdbdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ar/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ca/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/cs/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/cs/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/da/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/de/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/de/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/el/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/es/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/es/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/fi/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/fr/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/fr/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/he/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/hi/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/hr/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/hu/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/id/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/it/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/it/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ja/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ja/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ko/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ko/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ms/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/nb/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/nl/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/pl/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/pl/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/pt-BR/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/pt-BR/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/pt/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ro/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ru/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/ru/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/sk/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/sv/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/th/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/tr/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/tr/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/uk/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/vi/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/zh-HK/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/zh-Hans/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/zh-Hans/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/zh-Hant/FSharp.Core.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linked/zh-Hant/Microsoft.Maui.Controls.resources.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-cache/main.arm64.mmdeleted−95
@@ -1,95 +0,0 @@
1−#include <stdlib.h>
2−
3−static void xamarin_initialize_dotnet ()
4−{
5− setenv ("DOTNET_MODIFIABLE_ASSEMBLIES", "debug", 1);
6−}
7−
8−extern "C" void xamarin_initialize_dotnet();
9−extern "C" void xamarin_create_classes_Microsoft_MacCatalyst();
10−
11−static void xamarin_invoke_registration_methods ()
12−{
13− xamarin_initialize_dotnet();
14− xamarin_create_classes_Microsoft_MacCatalyst();
15−}
16−
17−#include "xamarin/xamarin.h"
18−
19−extern void *mono_aot_module_System_Private_CoreLib_info;
20−
21−void xamarin_register_modules_impl ()
22−{
23− mono_aot_register_module (mono_aot_module_System_Private_CoreLib_info);
24−
25−}
26−
27−void xamarin_register_assemblies_impl ()
28−{
29− GCHandle exception_gchandle = INVALID_GCHANDLE;
30−
31−}
32−
33−extern "C" { void mono_ee_interp_init (const char *); }
34−extern "C" { void mono_icall_table_init (void); }
35−extern "C" { void mono_marshal_ilgen_init (void); }
36−extern "C" { void mono_method_builder_ilgen_init (void); }
37−extern "C" { void mono_sgen_mono_ilgen_init (void); }
38−static const char *xamarin_runtime_libraries_array[] = {
39− "libSystem.Globalization.Native",
40− "libSystem.IO.Compression.Native",
41− "libSystem.Native",
42− "libSystem.Net.Security.Native",
43− "libSystem.Security.Cryptography.Native.Apple",
44− "libbrotlicommon",
45− "libbrotlidec",
46− "libbrotlienc",
47− "libmono-component-debugger-static",
48− "libmono-component-diagnostics_tracing-stub-static",
49− "libmono-component-hot_reload-static",
50− "libmono-component-marshal-ilgen-static",
51− "libmonosgen-2.0",
52− "libmono-component-debugger-static",
53− "libmono-component-hot_reload-static",
54− "libmono-component-marshal-ilgen-static",
55− "libmono-component-diagnostics_tracing-stub-static",
56− NULL
57−};
58−void xamarin_setup_impl ()
59−{
60− mono_icall_table_init ();
61− mono_marshal_ilgen_init ();
62− mono_method_builder_ilgen_init ();
63− mono_sgen_mono_ilgen_init ();
64− mono_jit_set_aot_mode (MONO_AOT_MODE_INTERP);
65− xamarin_invoke_registration_methods ();
66− xamarin_libmono_native_link_mode = XamarinNativeLinkModeStaticObject;
67− xamarin_runtime_libraries = xamarin_runtime_libraries_array;
68− xamarin_gc_pump = FALSE;
69− xamarin_init_mono_debug = TRUE;
70− xamarin_executable_name = "Skrepka.dll";
71− mono_use_llvm = FALSE;
72− xamarin_log_level = 0;
73− xamarin_arch_name = "arm64";
74− xamarin_marshal_objectivec_exception_mode = MarshalObjectiveCExceptionModeThrowManagedException;
75− xamarin_debug_mode = TRUE;
76− setenv ("MONO_GC_PARAMS", "major=marksweep", 1);
77− xamarin_supports_dynamic_registration = TRUE;
78− xamarin_runtime_configuration_name = "runtimeconfig.bin";
79−}
80−
81−int main (int argc, char **argv)
82−{
83− NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
84− int rv = xamarin_main (argc, argv, XamarinLaunchModeApp);
85− [pool drain];
86− return rv;
87−}
88−
89−void xamarin_initialize_callbacks () __attribute__ ((constructor));
90−void xamarin_initialize_callbacks ()
91−{
92− xamarin_setup = xamarin_setup_impl;
93− xamarin_register_assemblies = xamarin_register_assemblies_impl;
94− xamarin_register_modules = xamarin_register_modules_impl;
95−}
client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/ReferenceNativeSymbol.itemsdeleted−2474

This diff is too big to show here.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/_AssembliesToAOT.itemsdeleted−15

This diff is too big to show here.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/_AssemblyLinkerFlags.itemsdeleted−9

This diff is too big to show here.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/_BindingLibraryFrameworks.itemsdeleted−4

This diff is too big to show here.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/_BindingLibraryLinkWith.itemsdeleted−4

This diff is too big to show here.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/_DynamicLibraryToPublish.itemsdeleted−4

This diff is too big to show here.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/_FrameworkToPublish.itemsdeleted−4

This diff is too big to show here.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/_LinkerFrameworks.itemsdeleted−407

This diff is too big to show here.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/_MainFile.itemsdeleted−9

This diff is too big to show here.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/linker-items/_MainLinkWith.itemsdeleted−6

This diff is too big to show here.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauifont.inputsdeleted−2

This diff is too big to show here.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauifont.stampdeleted

No changes to the content.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauiimage.inputsdeleted−2

This diff is too big to show here.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauiimage.outputsdeleted−15

This diff is too big to show here.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauiimage.stampdeleted

No changes to the content.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauisplash.inputsdeleted−1

This diff is too big to show here.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mauisplash.stampdeleted

No changes to the content.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/mtouch-symbols.listdeleted−823

This diff is too big to show here.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/nativelibraries/aot-output/arm64/System.Private.CoreLib.aotdatadeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/nativelibraries/aot-output/arm64/System.Private.CoreLib.dll.odeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/nativelibraries/main.arm64.odeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/partialappmanifest/_PartialAppManifests.itemsdeleted−4

This diff is too big to show here.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/ref/Skrepka.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/refint/Skrepka.dlldeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/f/MauiInfo.plistdeleted−12

This diff is too big to show here.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/f/OpenSans-Regular.ttfdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/f/OpenSans-Semibold.ttfdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/Contents.jsondeleted−93

This diff is too big to show here.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon20x20@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon20x20@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon29x29@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon29x29@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon40x40@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon40x40@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon60x60@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon60x60@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon76x76@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appicon83.5x83.5@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/Assets.xcassets/appicon.appiconset/appiconItunesArtwork.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/dotnet_bot.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/dotnet_bot@2x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/resizetizer/r/dotnet_bot@3x.pngdeleted

Binary file not shown.

client/obj/Debug/net10.0-maccatalyst/maccatalyst-arm64/runtimeconfig.bindeleted−1

This diff is too big to show here.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/Skrepka.assets.cachedeleted

Binary file not shown.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/Skrepka.fsproj.AssemblyReference.cachedeleted

Binary file not shown.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/FSharp.Core.stampdeleted

No changes to the content.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Fabulous.MauiControls.stampdeleted

No changes to the content.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Fabulous.stampdeleted

No changes to the content.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Extensions.Configuration.Abstractions.stampdeleted

No changes to the content.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Extensions.Configuration.stampdeleted

No changes to the content.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Extensions.DependencyInjection.Abstractions.stampdeleted

No changes to the content.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Extensions.DependencyInjection.stampdeleted

No changes to the content.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Extensions.Logging.Abstractions.stampdeleted

No changes to the content.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Extensions.Logging.stampdeleted

No changes to the content.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Extensions.Options.stampdeleted

No changes to the content.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Extensions.Primitives.stampdeleted

No changes to the content.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Maui.Controls.Compatibility.stampdeleted

No changes to the content.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Maui.Controls.Xaml.stampdeleted

No changes to the content.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Maui.Controls.stampdeleted

No changes to the content.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Maui.Essentials.stampdeleted

No changes to the content.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Maui.Graphics.stampdeleted

No changes to the content.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Microsoft.Maui.stampdeleted

No changes to the content.

client/obj/Debug/net9.0-maccatalyst/maccatalyst-arm64/resourcestamps/Sodium.Core.stampdeleted

No changes to the content.

client/obj/Skrepka.fsproj.nuget.dgspec.jsondeleted−727

This diff is too big to show here.

client/obj/Skrepka.fsproj.nuget.g.propsdeleted−43

This diff is too big to show here.

client/obj/Skrepka.fsproj.nuget.g.targetsdeleted−17

This diff is too big to show here.

client/obj/project.assets.jsondeleted−5671

This diff is too big to show here.

client/obj/project.nuget.cachedeleted−36

This diff is too big to show here.

client/run-ios.shdeleted−31

This diff is too big to show here.

client/run-mac.shdeleted−5

This diff is too big to show here.

core/Cargo.tomlnew file+60

This diff is too big to show here.

core/boltffi.tomlnew file+24

This diff is too big to show here.

core/src/app.rsnew file+5027

This diff is too big to show here.

core/src/bin/codegen.rsnew file+41

This diff is too big to show here.

core/src/crypto.rsnew file+894

This diff is too big to show here.

core/src/ffi.rsnew file+96

This diff is too big to show here.

core/src/lib.rsnew file+10

This diff is too big to show here.

core/src/model.rsnew file+255

This diff is too big to show here.

core/src/phonemic.rsnew file+289

This diff is too big to show here.

core/src/protocol.rsnew file+355

This diff is too big to show here.

install.sh+186−14

This diff is too big to show here.

server.knot+1785−983

This diff is too big to show here.

server.onew file

Binary file not shown.

skrepka.service+9−1

This diff is too big to show here.