Skip to content

Assert failure '!CREATE_CHECK_STRING(bSmallObjectHeapPtr || bLargeObjectHeapPtr)' #111922

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
amanasifkhalid opened this issue Jan 28, 2025 · 20 comments · Fixed by #114974
Open
Assignees
Labels
area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI blocking-clean-ci-optional Blocking optional rolling runs
Milestone

Comments

@amanasifkhalid
Copy link
Member

amanasifkhalid commented Jan 28, 2025

Hit in libraries-pgo. Example run (console log). cc @dotnet/jit-contrib

Known Issue Error Message

Fill the error message using step by step known issues guidance.

{
  "ErrorMessage": "!CREATE_CHECK_STRING(bSmallObjectHeapPtr || bLargeObjectHeapPtr)",
  "ErrorPattern": "",
  "BuildRetry": false,
  "ExcludeConsoleLog": false
}

Known issue validation

Build: 🔎 https://dev.azure.com/dnceng-public/public/_build/results?buildId=954772
Error message validated: [!CREATE_CHECK_STRING(bSmallObjectHeapPtr || bLargeObjectHeapPtr)]
Result validation: ✅ Known issue matched with the provided build.
Validation performed at: 2/18/2025 8:42:54 AM UTC

Report

Build Definition Test Pull Request
1000009 dotnet/runtime System.Runtime.Intrinsics.Tests.WorkItemExecution #114018
998600 dotnet/runtime System.Data.Common.Tests.WorkItemExecution #113976
981297 dotnet/runtime System.Collections.Tests.WorkItemExecution #113559
978160 dotnet/runtime System.Formats.Cbor.Tests.WorkItemExecution #111004
977356 dotnet/runtime System.Collections.Concurrent.Tests.WorkItemExecution #110472
977021 dotnet/runtime Microsoft.CSharp.Tests.WorkItemExecution #113376
974452 dotnet/runtime System.Text.Json.Tests.WorkItemExecution #113301
972783 dotnet/runtime System.Collections.Tests.WorkItemExecution #112937
971757 dotnet/runtime System.Text.RegularExpressions.Tests.WorkItemExecution #111636

Summary

24-Hour Hit Count 7-Day Hit Count 1-Month Count
1 2 9
@amanasifkhalid amanasifkhalid added area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI blocking-clean-ci-optional Blocking optional rolling runs labels Jan 28, 2025
@amanasifkhalid amanasifkhalid added this to the 10.0.0 milestone Jan 28, 2025
Copy link
Contributor

Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch
See info in area-owners.md if you want to be subscribed.

@JulieLeeMSFT
Copy link
Member

@AndyAyersMS, PTAL.

@AndyAyersMS
Copy link
Member

Seems like this happened before #111937, so likely something else. Unfortunately, the log is gone already. Will close and hope we get a repro later.

@AndyAyersMS
Copy link
Member

@AndyAyersMS AndyAyersMS reopened this Feb 13, 2025
@jakobbotsch jakobbotsch added Known Build Error Use this to report build issues in the .NET Helix tab blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' labels Feb 18, 2025
@amanasifkhalid amanasifkhalid removed the blocking-clean-ci-optional Blocking optional rolling runs label Feb 18, 2025
@AndyAyersMS
Copy link
Member

This is a very generic GC failure message and the various repros above seem to be quite diverse. So could be more than one underlying issue.

@AndyAyersMS
Copy link
Member

Dump from example run -- linux arm64 is not very useful?

Can't get very far with either lldb or dotnet-dump.

Going to see if I can get a local repro.

@AndyAyersMS
Copy link
Member

Looked at failure in 961085 -- crash dump is not useful. Can't repro locally yet.

@AndyAyersMS
Copy link
Member

@tommcdon am I being dumb or is linux crashdump debugging not working well? I can't get anywhere with the dump in the helix item just above, lldb's sos is unable to find the runtime.

eg

 lldb-15 --core /home/andya/bugs/r111922/runfo/workitems/System.Collections.Immutable.Tests/coredump.19.dmp /home/andya/bugs/r111922/runfo/dotnet -o 'setclrpath /home/andya/bugs/r111922/runfo/shared/Microsoft.NETCore.App/10.0.0' -o 'setsymbolserver -directory /home/andya/bugs/r111922/runfo/shared/Microsoft.NETCore.App/10.0.0'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'lldb.embedded_interpreter'
SOS_HOSTING: Failed to find runtime directory
Unrecognized command 'setsymbolserver' because managed hosting failed or was disabled. See sethostruntime command for details.
(lldb) target create "/home/andya/bugs/r111922/runfo/dotnet" --core "/home/andya/bugs/r111922/runfo/workitems/System.Collections.Immutable.Tests/coredump.19.dmp"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
NameError: name 'run_one_line' is not defined
Traceback (most recent call last):
  File "<string>", line 1, in <module>
NameError: name 'run_one_line' is not defined
Traceback (most recent call last):
  File "<string>", line 1, in <module>
NameError: name 'run_one_line' is not defined
Traceback (most recent call last):
  File "<string>", line 1, in <module>
NameError: name 'run_one_line' is not defined
Traceback (most recent call last):
  File "<string>", line 1, in <module>
NameError: name 'run_one_line' is not defined
Core file '/home/andya/bugs/r111922/runfo/workitems/System.Collections.Immutable.Tests/coredump.19.dmp' (x86_64) was loaded.
(lldb) setclrpath /home/andya/bugs/r111922/runfo/shared/Microsoft.NETCore.App/10.0.0
Failed to find runtime module (libcoreclr.so), 0x80004005
Extension commands need it in order to have something to do.
For more information see https://go.microsoft.com/fwlink/?linkid=2135652
SetClrPath /home/andya/bugs/r111922/runfo/shared/Microsoft.NETCore.App/10.0.0  failed
(lldb) sosstatus
Target OS: Linux Platform: 8664 Context size: 04d0

@JulieLeeMSFT
Copy link
Member

@tommcdon, Andy is waiting for your answer.

@tommcdon am I being dumb or is linux crashdump debugging not working well? I can't get anywhere with the dump in the helix item just above, lldb's sos is unable to find the runtime.

@JulieLeeMSFT JulieLeeMSFT removed the blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' label Mar 14, 2025
@AndyAyersMS
Copy link
Member

Seems to have stopped happening, so will close.

@BruceForstall
Copy link
Contributor

DOTNET_EnableCrashReport=1
DOTNET_TieredCompilation=0
DOTNET_DbgMiniDumpName=/home/helixbot/dotnetbuild/dumps/coredump.%d.dmp
DOTNET_JitStressRegs=2
DOTNET_DbgEnableMiniDump=1
+ ./RunTests.sh --runtime-path /datadisks/disk1/work/A95C095A/p
========================= Begin custom configuration settings ==============================
export __IsXUnitLogCheckerSupported=1
export XUNIT_HIDE_PASSING_OUTPUT_DIAGNOSTICS=1
========================== End custom configuration settings ===============================
----- start Sun Apr 13 10:18:25 AM UTC 2025 =============== To repro directly: =====================================================
pushd .
/datadisks/disk1/work/A95C095A/p/dotnet exec --runtimeconfig System.Text.RegularExpressions.Tests.runtimeconfig.json --depsfile System.Text.RegularExpressions.Tests.deps.json xunit.console.dll System.Text.RegularExpressions.Tests.dll -xml testResults.xml -nologo -nocolor -notrait category=IgnoreForCI -notrait category=OuterLoop -notrait category=failing 
popd
===========================================================================================================
/datadisks/disk1/work/A95C095A/w/ACD809E2/e /datadisks/disk1/work/A95C095A/w/ACD809E2/e
  Discovering: System.Text.RegularExpressions.Tests (method display = ClassAndMethod, method display options = None)
  Discovered:  System.Text.RegularExpressions.Tests (found 344 of 375 test cases)
  Starting:    System.Text.RegularExpressions.Tests (parallel test collections = on [2 threads], stop on fail = off)

Assert failure(PID 30183 [0x000075e7], Thread: 30493 [0x771d]): !CREATE_CHECK_STRING(bSmallObjectHeapPtr || bLargeObjectHeapPtr)
    File: /__w/1/s/src/coreclr/vm/object.cpp:574
    Image: /datadisks/disk1/work/A95C095A/p/dotnet

[createdump] Gathering state for process 30183 dotnet
[createdump] Crashing thread 771d signal 6 (0006)
[createdump] Writing crash report to file /home/helixbot/dotnetbuild/dumps/coredump.30183.dmp.crashreport.json
[createdump] Crash report successfully written
[createdump] Writing minidump with heap to file /home/helixbot/dotnetbuild/dumps/coredump.30183.dmp
[createdump] Written 1842909184 bytes (449929 pages) to core file
[createdump] Target process is alive
[createdump] Dump successfully written in 18004ms
waitpid() returned successfully (wstatus 00000000) WEXITSTATUS 0 WTERMSIG 0

Failed in pipeline runtime-coreclr libraries-jitstressregs, leg net10.0-linux-Release-x64-jitstressregs2-Ubuntu.2204.Amd64.Open, test System.Text.RegularExpressions.Tests Work Item:

https://dev.azure.com/dnceng-public/public/_build/results?buildId=1014770&view=ms.vss-test-web.build-test-results-tab&runId=27147822&paneView=debug&resultId=215139

@BruceForstall BruceForstall reopened this Apr 14, 2025
@BruceForstall BruceForstall added blocking-clean-ci-optional Blocking optional rolling runs and removed Known Build Error Use this to report build issues in the .NET Helix tab labels Apr 14, 2025
@AndyAyersMS
Copy link
Member

This is a very generic assert, so the recent failure may not be the same issue we were trying to track down before. Let me see if the downloaded bits will repro the latest problem.

@AndyAyersMS
Copy link
Member

No luck yet. Have now run this ~200 times. Will let it go overnight.

@AndyAyersMS
Copy link
Member

Overnight run is closing in on 600 more attempts with no repro.

Going to look at the dump but lately I have had no luck with any sort of linux crash dump.

@BruceForstall
Copy link
Contributor

@AndyAyersMS I found a Fuzzlyn test case that reliably hits this assert (win-x64). The Fuzzlyn reducer failed to reduce it to something smaller.

Build a release version of the test (dotnet build -c Release), then run with:

set DOTNET_TieredCompilation=0
set DOTNET_GCStress=C
// Generated by Fuzzlyn v2.5 on 2025-04-22 21:25:06
// Run on X64 Windows
// Seed: 14579290594680949749-vectort,vector128,vector256,vector512,x86aes,x86avx,x86avx2,x86avx512bw,x86avx512bwvl,x86avx512cd,x86avx512cdvl,x86avx512dq,x86avx512dqvl,x86avx512f,x86avx512fvl,x86avx512fx64,x86avx512vbmi,x86avx512vbmivl,x86bmi1,x86bmi1x64,x86bmi2,x86bmi2x64,x86fma,x86lzcnt,x86lzcntx64,x86pclmulqdq,x86popcnt,x86popcntx64,x86sse,x86ssex64,x86sse2,x86sse2x64,x86sse3,x86sse41,x86sse41x64,x86sse42,x86sse42x64,x86ssse3,x86x86base
using System;
using System.Numerics;
using System.Runtime.Intrinsics;
using System.Runtime.Intrinsics.X86;

public struct S0
{
    public long F0;
    public int F1;
    public ushort F2;
    public uint F3;
    public long F4;
    public bool F5;
    public int F6;
    public short F7;
    public bool F8;
    public S0(long f0, int f1, ushort f2, uint f3, long f4, bool f5, int f6, short f7, bool f8)
    {
        F0 = f0;
        F1 = f1;
        F2 = f2;
        F3 = f3;
        F4 = f4;
        F5 = f5;
        F6 = f6;
        F7 = f7;
        F8 = f8;
    }

    public uint M3(uint arg0, S1 arg1)
    {
        uint var0 = 2450562332U;
        arg1 = new S1((ushort)13580, (byte)255, false, -2, (ushort)1, (short)-25777, false, 399722183U, new C1(4032009623U, new S0(1L, 423783699, (ushort)5876, 4294967294U, 0L, true, 1, (short)-32768, false), Vector.Create<short>((short)(short)1), (short)-11979, -2147483647, 9223372036854775807L));
        if (arg1.F2)
        {
            if (arg1.F8.F1.F8)
            {
                this = new S0(-5275557998398120488L, 1, (ushort)44690, 387178277U, -8443572339591012438L, false, 2147483646, (short)32767, false);
                try
                {
                    Program.s_1 = Vector256.Create<sbyte>((sbyte)(sbyte)126);
                }
                finally
                {
                    long[, ] var1 = new long[, ]
                    {
                        {
                            -8300860702660541227L,
                            1L,
                            10L,
                            8320486722912181921L,
                            -4861678957376159982L,
                            -6231787371054706001L
                        },
                        {
                            1L,
                            0L,
                            -2983068428530748896L,
                            8260272916876062867L,
                            2L,
                            9223372036854775807L
                        },
                        {
                            -5401379804935071059L,
                            6734870187598461706L,
                            -9223372036854775807L,
                            7443314940659594067L,
                            4692060279249722864L,
                            -7552826750328597821L
                        },
                        {
                            0L,
                            -2741360524929237308L,
                            5683134981643508536L,
                            2L,
                            0L,
                            -2L
                        }
                    };
                }
            }
            else
            {
                byte[] var2 = new byte[]
                {
                    (byte)1,
                    (byte)1,
                    (byte)254,
                    (byte)1
                };
                ref bool[][] var3 = ref Program.s_3;
            }

            byte var4 = arg1.F1++;
            long var5 = arg1.F8.F1.F4;
            this = arg1.F8.F1;
        }
        else
        {
            Avx512BW.Abs((Vector512<short>)Vector512.Create<short>((short)(short)13659));
            Avx512F.ConvertToVector512UInt64((Vector128<ushort>)Vector128.CreateScalar((ushort)(ushort)10));
            long var6 = arg1.F8.F1.F0;
            arg1.F8.F1.F7 += (short)32766;
        }

        C1 var7 = arg1.F8;
        this.F0 %= (long)(var7.F5 | 1);
        return 1128204968U;
    }

    public Vector512<byte> M6(ref long arg0)
    {
        Vector128<ushort> var0 = Vector128.Create((ushort)(ushort)1, (ushort)(ushort)42054, (ushort)(ushort)1, (ushort)(ushort)1, (ushort)(ushort)54988, (ushort)(ushort)56829, (ushort)(ushort)10, (ushort)(ushort)2961);
        return Vector512.Create<byte>((byte)(byte)254);
    }

    public Vector256<int> M10(Vector512<byte>[, ] arg0, uint arg1)
    {
        this.F3 = 2840940857U;
        arg0 = new Vector512<byte>[, ]
        {
            {
                Vector512.Create<byte>((byte)(byte)190),
                Vector512.CreateScalar((byte)(byte)62),
                Vector512.Create<byte>((byte)(byte)18),
                Vector512.Create((byte)(byte)0, (byte)(byte)0, (byte)(byte)0, (byte)(byte)164, (byte)(byte)238, (byte)(byte)163, (byte)(byte)175, (byte)(byte)1, (byte)(byte)1, (byte)(byte)0, (byte)(byte)141, (byte)(byte)254, (byte)(byte)1, (byte)(byte)252, (byte)(byte)10, (byte)(byte)184, (byte)(byte)1, (byte)(byte)0, (byte)(byte)251, (byte)(byte)0, (byte)(byte)255, (byte)(byte)0, (byte)(byte)113, (byte)(byte)66, (byte)(byte)32, (byte)(byte)0, (byte)(byte)254, (byte)(byte)72, (byte)(byte)10, (byte)(byte)1, (byte)(byte)0, (byte)(byte)139, (byte)(byte)35, (byte)(byte)237, (byte)(byte)0, (byte)(byte)202, (byte)(byte)0, (byte)(byte)237, (byte)(byte)225, (byte)(byte)255, (byte)(byte)127, (byte)(byte)0, (byte)(byte)2, (byte)(byte)158, (byte)(byte)6, (byte)(byte)10, (byte)(byte)255, (byte)(byte)169, (byte)(byte)36, (byte)(byte)1, (byte)(byte)0, (byte)(byte)110, (byte)(byte)254, (byte)(byte)255, (byte)(byte)22, (byte)(byte)233, (byte)(byte)234, (byte)(byte)255, (byte)(byte)217, (byte)(byte)51, (byte)(byte)254, (byte)(byte)0, (byte)(byte)1, (byte)(byte)177),
                Vector512.Create<byte>((byte)(byte)254)
            },
            {
                Vector512.CreateScalar((byte)(byte)149),
                Vector512.Create<byte>((byte)(byte)254),
                Vector512.Create<byte>((byte)(byte)233),
                Vector512.Create<byte>((byte)(byte)0),
                Vector512.Create<byte>((byte)(byte)254)
            },
            {
                Vector512.CreateScalar((byte)(byte)176),
                Vector512.Create<byte>((byte)(byte)142),
                Vector512.Create<byte>((byte)(byte)106),
                Vector512.Create<byte>((byte)(byte)254),
                Vector512.Create((byte)(byte)226, (byte)(byte)148, (byte)(byte)238, (byte)(byte)142, (byte)(byte)158, (byte)(byte)1, (byte)(byte)1, (byte)(byte)1, (byte)(byte)0, (byte)(byte)243, (byte)(byte)255, (byte)(byte)1, (byte)(byte)1, (byte)(byte)158, (byte)(byte)1, (byte)(byte)201, (byte)(byte)0, (byte)(byte)1, (byte)(byte)0, (byte)(byte)218, (byte)(byte)117, (byte)(byte)197, (byte)(byte)51, (byte)(byte)255, (byte)(byte)136, (byte)(byte)1, (byte)(byte)0, (byte)(byte)251, (byte)(byte)0, (byte)(byte)0, (byte)(byte)254, (byte)(byte)1, (byte)(byte)1, (byte)(byte)191, (byte)(byte)255, (byte)(byte)0, (byte)(byte)48, (byte)(byte)209, (byte)(byte)21, (byte)(byte)0, (byte)(byte)1, (byte)(byte)189, (byte)(byte)20, (byte)(byte)254, (byte)(byte)254, (byte)(byte)2, (byte)(byte)0, (byte)(byte)255, (byte)(byte)0, (byte)(byte)0, (byte)(byte)121, (byte)(byte)116, (byte)(byte)251, (byte)(byte)10, (byte)(byte)89, (byte)(byte)246, (byte)(byte)250, (byte)(byte)1, (byte)(byte)255, (byte)(byte)254, (byte)(byte)254, (byte)(byte)0, (byte)(byte)18, (byte)(byte)179)
            },
            {
                Vector512.CreateScalar((byte)(byte)1),
                Vector512.CreateScalar((byte)(byte)1),
                Vector512.Create<byte>((byte)(byte)246),
                Vector512.Create<byte>((byte)(byte)102),
                Vector512.CreateScalar((byte)(byte)0)
            },
            {
                Vector512.Create<byte>((byte)(byte)0),
                Vector512.Create((byte)(byte)6, (byte)(byte)0, (byte)(byte)24, (byte)(byte)1, (byte)(byte)1, (byte)(byte)18, (byte)(byte)1, (byte)(byte)254, (byte)(byte)255, (byte)(byte)221, (byte)(byte)181, (byte)(byte)10, (byte)(byte)0, (byte)(byte)1, (byte)(byte)255, (byte)(byte)254, (byte)(byte)254, (byte)(byte)206, (byte)(byte)1, (byte)(byte)183, (byte)(byte)0, (byte)(byte)153, (byte)(byte)255, (byte)(byte)254, (byte)(byte)186, (byte)(byte)219, (byte)(byte)1, (byte)(byte)255, (byte)(byte)63, (byte)(byte)43, (byte)(byte)140, (byte)(byte)130, (byte)(byte)176, (byte)(byte)0, (byte)(byte)98, (byte)(byte)96, (byte)(byte)255, (byte)(byte)169, (byte)(byte)10, (byte)(byte)39, (byte)(byte)255, (byte)(byte)29, (byte)(byte)151, (byte)(byte)186, (byte)(byte)0, (byte)(byte)0, (byte)(byte)9, (byte)(byte)165, (byte)(byte)0, (byte)(byte)152, (byte)(byte)254, (byte)(byte)10, (byte)(byte)254, (byte)(byte)195, (byte)(byte)254, (byte)(byte)0, (byte)(byte)255, (byte)(byte)51, (byte)(byte)10, (byte)(byte)0, (byte)(byte)0, (byte)(byte)1, (byte)(byte)158, (byte)(byte)255),
                Vector512.Create((byte)(byte)255, (byte)(byte)234, (byte)(byte)43, (byte)(byte)1, (byte)(byte)189, (byte)(byte)0, (byte)(byte)2, (byte)(byte)0, (byte)(byte)0, (byte)(byte)242, (byte)(byte)1, (byte)(byte)255, (byte)(byte)1, (byte)(byte)1, (byte)(byte)1, (byte)(byte)215, (byte)(byte)1, (byte)(byte)1, (byte)(byte)232, (byte)(byte)0, (byte)(byte)236, (byte)(byte)0, (byte)(byte)2, (byte)(byte)139, (byte)(byte)1, (byte)(byte)223, (byte)(byte)106, (byte)(byte)199, (byte)(byte)205, (byte)(byte)1, (byte)(byte)57, (byte)(byte)0, (byte)(byte)2, (byte)(byte)255, (byte)(byte)216, (byte)(byte)73, (byte)(byte)153, (byte)(byte)166, (byte)(byte)0, (byte)(byte)167, (byte)(byte)4, (byte)(byte)176, (byte)(byte)255, (byte)(byte)1, (byte)(byte)254, (byte)(byte)10, (byte)(byte)162, (byte)(byte)210, (byte)(byte)1, (byte)(byte)192, (byte)(byte)64, (byte)(byte)255, (byte)(byte)2, (byte)(byte)208, (byte)(byte)1, (byte)(byte)241, (byte)(byte)0, (byte)(byte)254, (byte)(byte)149, (byte)(byte)1, (byte)(byte)255, (byte)(byte)0, (byte)(byte)255, (byte)(byte)0),
                Vector512.Create((byte)(byte)159, (byte)(byte)213, (byte)(byte)255, (byte)(byte)32, (byte)(byte)132, (byte)(byte)120, (byte)(byte)254, (byte)(byte)158, (byte)(byte)255, (byte)(byte)177, (byte)(byte)1, (byte)(byte)4, (byte)(byte)255, (byte)(byte)0, (byte)(byte)95, (byte)(byte)0, (byte)(byte)230, (byte)(byte)199, (byte)(byte)32, (byte)(byte)0, (byte)(byte)254, (byte)(byte)91, (byte)(byte)1, (byte)(byte)118, (byte)(byte)99, (byte)(byte)79, (byte)(byte)1, (byte)(byte)1, (byte)(byte)255, (byte)(byte)174, (byte)(byte)2, (byte)(byte)118, (byte)(byte)0, (byte)(byte)254, (byte)(byte)252, (byte)(byte)1, (byte)(byte)157, (byte)(byte)1, (byte)(byte)19, (byte)(byte)0, (byte)(byte)255, (byte)(byte)0, (byte)(byte)255, (byte)(byte)1, (byte)(byte)1, (byte)(byte)58, (byte)(byte)1, (byte)(byte)138, (byte)(byte)0, (byte)(byte)121, (byte)(byte)255, (byte)(byte)43, (byte)(byte)98, (byte)(byte)1, (byte)(byte)1, (byte)(byte)0, (byte)(byte)12, (byte)(byte)12, (byte)(byte)0, (byte)(byte)247, (byte)(byte)73, (byte)(byte)195, (byte)(byte)50, (byte)(byte)207),
                Vector512.Create((byte)(byte)212, (byte)(byte)210, (byte)(byte)21, (byte)(byte)85, (byte)(byte)3, (byte)(byte)240, (byte)(byte)1, (byte)(byte)254, (byte)(byte)255, (byte)(byte)78, (byte)(byte)109, (byte)(byte)1, (byte)(byte)89, (byte)(byte)138, (byte)(byte)254, (byte)(byte)229, (byte)(byte)231, (byte)(byte)1, (byte)(byte)254, (byte)(byte)10, (byte)(byte)1, (byte)(byte)255, (byte)(byte)84, (byte)(byte)1, (byte)(byte)92, (byte)(byte)1, (byte)(byte)0, (byte)(byte)214, (byte)(byte)10, (byte)(byte)79, (byte)(byte)162, (byte)(byte)1, (byte)(byte)1, (byte)(byte)56, (byte)(byte)92, (byte)(byte)254, (byte)(byte)1, (byte)(byte)1, (byte)(byte)152, (byte)(byte)72, (byte)(byte)67, (byte)(byte)255, (byte)(byte)185, (byte)(byte)10, (byte)(byte)80, (byte)(byte)255, (byte)(byte)255, (byte)(byte)254, (byte)(byte)2, (byte)(byte)0, (byte)(byte)255, (byte)(byte)250, (byte)(byte)211, (byte)(byte)234, (byte)(byte)0, (byte)(byte)255, (byte)(byte)10, (byte)(byte)1, (byte)(byte)0, (byte)(byte)255, (byte)(byte)243, (byte)(byte)10, (byte)(byte)1, (byte)(byte)102)
            },
            {
                Vector512.Create<byte>((byte)(byte)31),
                Vector512.CreateScalar((byte)(byte)0),
                Vector512.Create<byte>((byte)(byte)50),
                Vector512.Create<byte>((byte)(byte)235),
                Vector512.CreateScalar((byte)(byte)41)
            },
            {
                Vector512.Create<byte>((byte)(byte)1),
                Vector512.Create<byte>((byte)(byte)1),
                Vector512.CreateScalar((byte)(byte)64),
                Vector512.CreateScalar((byte)(byte)170),
                Vector512.Create((byte)(byte)1, (byte)(byte)1, (byte)(byte)180, (byte)(byte)1, (byte)(byte)235, (byte)(byte)50, (byte)(byte)68, (byte)(byte)32, (byte)(byte)100, (byte)(byte)12, (byte)(byte)255, (byte)(byte)209, (byte)(byte)177, (byte)(byte)34, (byte)(byte)1, (byte)(byte)0, (byte)(byte)165, (byte)(byte)114, (byte)(byte)254, (byte)(byte)1, (byte)(byte)133, (byte)(byte)47, (byte)(byte)189, (byte)(byte)223, (byte)(byte)0, (byte)(byte)191, (byte)(byte)1, (byte)(byte)0, (byte)(byte)0, (byte)(byte)1, (byte)(byte)14, (byte)(byte)0, (byte)(byte)5, (byte)(byte)121, (byte)(byte)108, (byte)(byte)0, (byte)(byte)0, (byte)(byte)10, (byte)(byte)67, (byte)(byte)97, (byte)(byte)133, (byte)(byte)255, (byte)(byte)1, (byte)(byte)24, (byte)(byte)10, (byte)(byte)47, (byte)(byte)202, (byte)(byte)123, (byte)(byte)19, (byte)(byte)44, (byte)(byte)165, (byte)(byte)227, (byte)(byte)225, (byte)(byte)0, (byte)(byte)254, (byte)(byte)236, (byte)(byte)28, (byte)(byte)0, (byte)(byte)0, (byte)(byte)78, (byte)(byte)254, (byte)(byte)119, (byte)(byte)0, (byte)(byte)2)
            },
            {
                Vector512.Create<byte>((byte)(byte)0),
                Vector512.CreateScalar((byte)(byte)0),
                Vector512.Create<byte>((byte)(byte)1),
                Vector512.CreateScalar((byte)(byte)1),
                Vector512.Create<byte>((byte)(byte)74)
            },
            {
                Vector512.Create<byte>((byte)(byte)253),
                Vector512.Create<byte>((byte)(byte)255),
                Vector512.Create<byte>((byte)(byte)229),
                Vector512.CreateScalar((byte)(byte)153),
                Vector512.Create<byte>((byte)(byte)121)
            }
        };
        return Vector256.CreateScalar((int)636502951);
    }
}

public class C0
{
    public bool F0;
    public Vector256<sbyte> F1;
    public S0 F2;
    public uint F3;
    public int F4;
    public S0 F5;
    public long F6;
    public C0(bool f0, Vector256<sbyte> f1, S0 f2, uint f3, int f4, S0 f5, long f6)
    {
        F0 = f0;
        F1 = f1;
        F2 = f2;
        F3 = f3;
        F4 = f4;
        F5 = f5;
        F6 = f6;
    }

    public Vector256<uint> M16(Vector512<int> arg0)
    {
        Sse42.Crc32((uint)Program.s_14.F3, (uint)this.F3--);
        return Vector256.Create<uint>((uint)this.F3);
    }
}

public class C1
{
    public uint F0;
    public S0 F1;
    public Vector<short> F2;
    public short F3;
    public int F4;
    public long F5;
    public C1(uint f0, S0 f1, Vector<short> f2, short f3, int f4, long f5)
    {
        F0 = f0;
        F1 = f1;
        F2 = f2;
        F3 = f3;
        F4 = f4;
        F5 = f5;
    }

    public sbyte M1(byte[][] arg0, Vector<sbyte> arg1)
    {
        if (Sse41.TestZ((Vector128<ushort>)Vector128.CreateScalar((ushort)(ushort)0), (Vector128<ushort>)Vector128.CreateScalar((ushort)(ushort)18872)))
        {
            {
                {
                    Program.s_1 = Program.s_1;
                    this.F1 = this.F1;
                }

                arg1 = Vector128.CreateScalar((sbyte)(sbyte)64).AsVector();
            }

            arg1 = arg1;
            this.F4 = this.F1.F6;
            Program.s_2 = Program.M2();
        }
        else
        {
            this.F1.F0 = Sse41.X64.Extract((Vector128<long>)Avx512F.VL.CompareGreaterThanOrEqual((Vector128<long>)Vector128.CreateScalar((long)this.F5), (Vector128<long>)Vector128.CreateScalar((long)Program.s_14.F2.F0--)), (byte)(byte)43);
        }

        return (sbyte)Bmi1.X64.BitFieldExtract((ulong)(ulong)Program.M2(), (byte)arg0[0][0], (byte)(byte)(Program.s_9[0] + (byte)90));
    }

    public sbyte M7(bool arg0)
    {
        Program.s_10 = (short)-32768;
        return (sbyte)(+(sbyte)Bmi1.X64.ExtractLowestSetBit((ulong)0UL));
    }
}

public struct S1
{
    public ushort F0;
    public byte F1;
    public bool F2;
    public int F3;
    public ushort F4;
    public short F5;
    public bool F6;
    public uint F7;
    public C1 F8;
    public S1(ushort f0, byte f1, bool f2, int f3, ushort f4, short f5, bool f6, uint f7, C1 f8)
    {
        F0 = f0;
        F1 = f1;
        F2 = f2;
        F3 = f3;
        F4 = f4;
        F5 = f5;
        F6 = f6;
        F7 = f7;
        F8 = f8;
    }
}

public class C2
{
    public uint F0;
    public S1 F1;
    public Vector128<uint> F2;
    public uint F3;
    public sbyte F4;
    public uint F5;
    public short F6;
    public C2(uint f0, S1 f1, Vector128<uint> f2, uint f3, sbyte f4, uint f5, short f6)
    {
        F0 = f0;
        F1 = f1;
        F2 = f2;
        F3 = f3;
        F4 = f4;
        F5 = f5;
        F6 = f6;
    }
}

public class Program
{
    public static Vector256<sbyte> s_1 = Vector256.CreateScalar((sbyte)(sbyte)117);
    public static uint s_2 = 1296855976U;
    public static bool[][] s_3 = new bool[][]
    {
        new bool[]
        {
            false,
            false,
            true
        },
        new bool[]
        {
            false,
            true,
            true,
            true,
            false
        },
        new bool[]
        {
            false,
            true,
            true,
            false,
            false,
            false
        },
        new bool[]
        {
            false,
            true
        },
        new bool[]
        {
            false
        },
        new bool[]
        {
            false
        },
        new bool[]
        {
            true
        },
        new bool[]
        {
            true,
            false,
            false,
            true,
            false,
            false,
            false
        },
        new bool[]
        {
            false
        },
        new bool[]
        {
            false
        }
    };
    public static Vector512<short>[][] s_4 = new Vector512<short>[][]
    {
        new Vector512<short>[]
        {
            Vector512.Create<short>((short)(short)20661),
            Vector512.CreateScalar((short)(short)-32767),
            Vector512.Create((short)(short)1, (short)(short)-13505, (short)(short)0, (short)(short)26490, (short)(short)7561, (short)(short)22500, (short)(short)-32767, (short)(short)0, (short)(short)32164, (short)(short)1, (short)(short)23136, (short)(short)0, (short)(short)32767, (short)(short)17678, (short)(short)2, (short)(short)28729, (short)(short)-32767, (short)(short)-11172, (short)(short)0, (short)(short)32766, (short)(short)-9630, (short)(short)-10, (short)(short)26993, (short)(short)-15221, (short)(short)-18825, (short)(short)-32767, (short)(short)29023, (short)(short)32766, (short)(short)23608, (short)(short)19945, (short)(short)-32767, (short)(short)-10),
            Vector512.Create<short>((short)(short)-10)
        },
        new Vector512<short>[]
        {
            Vector512.CreateScalar((short)(short)28573)
        },
        new Vector512<short>[]
        {
            Vector512.Create<short>((short)(short)1),
            Vector512.Create((short)(short)-32767, (short)(short)22955, (short)(short)-32768, (short)(short)-15988, (short)(short)16036, (short)(short)32766, (short)(short)26266, (short)(short)-2469, (short)(short)-8273, (short)(short)-12095, (short)(short)21898, (short)(short)2446, (short)(short)32767, (short)(short)-1, (short)(short)0, (short)(short)10, (short)(short)-3285, (short)(short)32767, (short)(short)32767, (short)(short)11744, (short)(short)-10, (short)(short)0, (short)(short)0, (short)(short)-18842, (short)(short)-32767, (short)(short)23300, (short)(short)32767, (short)(short)-24174, (short)(short)-8576, (short)(short)32766, (short)(short)32767, (short)(short)32767),
            Vector512.Create<short>((short)(short)-17267)
        },
        new Vector512<short>[]
        {
            Vector512.Create<short>((short)(short)1),
            Vector512.Create<short>((short)(short)-2),
            Vector512.CreateScalar((short)(short)24518),
            Vector512.CreateScalar((short)(short)-17608)
        }
    };
    public static int s_5 = 0;
    public static long s_6 = -9223372036854775807L;
    public static Vector128<ushort> s_7 = Vector128.Create((ushort)(ushort)0, (ushort)(ushort)42524, (ushort)(ushort)19443, (ushort)(ushort)0, (ushort)(ushort)0, (ushort)(ushort)10, (ushort)(ushort)16935, (ushort)(ushort)58312);
    public static S0 s_8 = new S0(-9223372036854775807L, -1775214913, (ushort)44792, 4294967295U, 0L, true, 200621034, (short)0, true);
    public static sbyte[] s_9 = new sbyte[]
    {
        (sbyte)-128,
        (sbyte)0,
        (sbyte)-8,
        (sbyte)0,
        (sbyte)127
    };
    public static short s_10 = (short)32766;
    public static Vector256<short> s_11 = Vector256.Create<short>((short)(short)32767);
    public static Vector128<uint>[] s_12 = new Vector128<uint>[]
    {
        Vector128.CreateScalar((uint)2819982797U),
        Vector128.Create<uint>((uint)1U),
        Vector128.CreateScalar((uint)1U),
        Vector128.Create<uint>((uint)0U),
        Vector128.Create<uint>((uint)1425854077U),
        Vector128.Create<uint>((uint)4294967295U),
        Vector128.Create<uint>((uint)3076864824U)
    };
    public static bool s_13 = true;
    public static C0 s_14 = new C0(false, Vector256.Create<sbyte>((sbyte)(sbyte)1), new S0(-8776894118047254886L, 2104521989, (ushort)0, 1030698979U, -2176096072924154087L, false, -521962353, (short)-31248, true), 1U, 1, new S0(147482582842864387L, -2147483647, (ushort)3811, 299404797U, 7750084326435983018L, false, 10, (short)1, false), 1L);
    public static short s_15 = (short)-11960;
    public static int[,, ] s_16 = new int[,, ]
    {
        {
            {
                0
            },
            {
                -1994019874
            },
            {
                1
            },
            {
                265477261
            },
            {
                -10
            },
            {
                -2147483648
            },
            {
                2147483646
            },
            {
                1
            },
            {
                2147483647
            }
        },
        {
            {
                -1
            },
            {
                10
            },
            {
                1642969003
            },
            {
                -305078847
            },
            {
                1
            },
            {
                -721305091
            },
            {
                1687923278
            },
            {
                -2147483648
            },
            {
                2147483647
            }
        },
        {
            {
                1154231121
            },
            {
                2147483646
            },
            {
                -1776830570
            },
            {
                0
            },
            {
                333708571
            },
            {
                -1748762990
            },
            {
                2147483646
            },
            {
                -982528955
            },
            {
                1
            }
        },
        {
            {
                -1951541345
            },
            {
                2147483647
            },
            {
                -1345243792
            },
            {
                1
            },
            {
                2147483646
            },
            {
                -62172755
            },
            {
                -2147483647
            },
            {
                -1
            },
            {
                802262351
            }
        },
        {
            {
                2147483646
            },
            {
                0
            },
            {
                -2147483647
            },
            {
                1243899279
            },
            {
                914968107
            },
            {
                166650474
            },
            {
                -1
            },
            {
                1655761930
            },
            {
                -2147483648
            }
        },
        {
            {
                -1160724988
            },
            {
                -1429029718
            },
            {
                1
            },
            {
                -2
            },
            {
                1728738497
            },
            {
                1735181491
            },
            {
                1511936309
            },
            {
                -2147483647
            },
            {
                -2147483647
            }
        },
        {
            {
                10
            },
            {
                -1
            },
            {
                0
            },
            {
                -2
            },
            {
                91501165
            },
            {
                0
            },
            {
                93114060
            },
            {
                -1420949079
            },
            {
                973098759
            }
        },
        {
            {
                -2147483648
            },
            {
                2147483646
            },
            {
                2
            },
            {
                1
            },
            {
                1
            },
            {
                -803381144
            },
            {
                0
            },
            {
                -1567940237
            },
            {
                2147483647
            }
        },
        {
            {
                0
            },
            {
                -2
            },
            {
                -2065988837
            },
            {
                0
            },
            {
                55828765
            },
            {
                2147483646
            },
            {
                2147483647
            },
            {
                1656470382
            },
            {
                -2
            }
        },
        {
            {
                -200184717
            },
            {
                -2147483648
            },
            {
                1
            },
            {
                675159708
            },
            {
                10
            },
            {
                1010003127
            },
            {
                -2147483648
            },
            {
                0
            },
            {
                116290667
            }
        }
    };
    public static S1 s_17 = new S1((ushort)1, (byte)0, true, 1965922530, (ushort)65535, (short)1, false, 2371211253U, new C1(1U, new S0(-9223372036854775807L, 10, (ushort)0, 3013041573U, -3572466672928762731L, true, 1213889859, (short)15450, false), Vector.Create<short>((short)(short)1), (short)0, 2147483647, 10L));
    public static ulong s_18 = 10UL;
    public static C0 s_19 = new C0(false, Vector256.Create<sbyte>((sbyte)(sbyte)0), new S0(8209936022082607600L, 1, (ushort)4649, 3618076370U, 6614025611187185101L, true, 2, (short)-1, true), 3285736264U, 204630173, new S0(6425273599759189122L, 2147483647, (ushort)0, 4294967295U, 2599277495160494438L, true, 73882194, (short)5956, true), 0L);
    public static Vector128<sbyte> s_20 = Vector128.CreateScalar((sbyte)(sbyte)126);
    public static Vector128<short> s_21 = Vector128.Create<short>((short)(short)0);
    public static S1[, ][][, ] s_22 = new S1[, ][][, ]
    {
        {
            new S1[][, ]
            {
                new S1[, ]
                {
                    {
                        new S1((ushort)28140, (byte)61, false, -2147483648, (ushort)54706, (short)-1, false, 3351992985U, new C1(1U, new S0(9223372036854775806L, -554601288, (ushort)10, 1281520777U, -6807350815520179298L, false, -2147483648, (short)-27128, true), Vector.Create<short>((short)(short)-29172), (short)9692, 0, -6139313005128160661L))
                    }
                }
            }
        }
    };
    public static S1[] s_23 = new S1[]
    {
        new S1((ushort)64061, (byte)1, false, -10, (ushort)4109, (short)1243, true, 3253908997U, new C1(1464440687U, new S0(1L, 2147483646, (ushort)0, 4294967295U, -10L, false, -10, (short)-30568, false), Vector128.CreateScalar((short)(short)-7271).AsVector(), (short)27325, 0, 1L)),
        new S1((ushort)1, (byte)0, true, -2147483648, (ushort)13247, (short)8025, true, 3385163975U, new C1(3515976055U, new S0(-9223372036854775808L, 1, (ushort)65534, 3049440350U, 2500265974738559565L, false, 852513367, (short)32767, true), Vector.Create<short>((short)(short)-7996), (short)-32768, -284980695, -1486994524566094981L)),
        new S1((ushort)1, (byte)255, true, -10, (ushort)0, (short)-7488, false, 0U, new C1(0U, new S0(-7813499442486587153L, 1117858675, (ushort)63146, 1109445994U, -9223372036854775808L, false, -1907647163, (short)-10, true), Vector.Create<short>((short)(short)-5216), (short)1, 142321249, 9223372036854775806L))
    };
    public static int s_24 = -1084323377;
    public static void Main()
    {
        M0();
    }

    public static void M0()
    {
        try
        {
            if (Sse41.TestZ((Vector128<uint>)Vector128.Create<uint>((uint)4294967295U), (Vector128<uint>)Vector128.CreateScalar((uint)1873431249U)))
            {
                s_1 = Vector256.CreateScalar((sbyte)(sbyte)((sbyte)((sbyte)(-new C1(3533532194U, new S0(9223372036854775807L, 10, (ushort)10, 3456137959U, -2L, true, -311225506, (short)17022, false), Vector.Create<short>((short)(short)26892), (short)1, 7270435, 1L).M1(new byte[][] { new byte[] { (byte)2, (byte)206, (byte)107, (byte)144, (byte)132 }, new byte[] { (byte)213, (byte)0, (byte)254, (byte)158, (byte)1, (byte)125 }, new byte[] { (byte)255, (byte)10, (byte)254, (byte)10 }, new byte[] { (byte)33, (byte)136, (byte)116, (byte)136, (byte)54 }, new byte[] { (byte)223, (byte)1, (byte)211, (byte)254, (byte)0, (byte)1 }, new byte[] { (byte)1, (byte)0, (byte)110, (byte)31, (byte)16, (byte)61, (byte)0 }, new byte[] { (byte)254, (byte)121, (byte)145, (byte)1, (byte)34 }, new byte[] { (byte)113 }, new byte[] { (byte)254, (byte)1, (byte)1, (byte)189, (byte)254 }, new byte[] { (byte)254, (byte)254, (byte)254, (byte)4 } }, Vector128.CreateScalar((sbyte)(sbyte)127).AsVector())) / (uint)(s_19.F2.F3 | 1)) % (int)((int)new C1(3880303277U, new S0(0L, 1, (ushort)65535, 1U, 5831786556974725941L, false, -862666750, (short)-1379, true), Vector128.CreateScalar((short)(short)32766).AsVector(), (short)10539, -2, 0L).M1(new byte[][] { new byte[] { (byte)10, (byte)0, (byte)126, (byte)255, (byte)0, (byte)255, (byte)204, (byte)251, (byte)114 }, new byte[] { (byte)133, (byte)176, (byte)62, (byte)159 }, new byte[] { (byte)160, (byte)57 }, new byte[] { (byte)1, (byte)255, (byte)233, (byte)42 }, new byte[] { (byte)254, (byte)241, (byte)87, (byte)30 }, new byte[] { (byte)0, (byte)131 }, new byte[] { (byte)0, (byte)2, (byte)217, (byte)115 }, new byte[] { (byte)1, (byte)0, (byte)1, (byte)0, (byte)219, (byte)150 }, new byte[] { (byte)243, (byte)103, (byte)223, (byte)130, (byte)255, (byte)0, (byte)46 } }, Vector.Create<sbyte>((sbyte)(sbyte)-26)) | 1)));
                s_19.F2.F0 = -3063697631331527850L;
                Vector128<long> var0 = Vector128.Create<long>((long)0L);
            }
            else
            {
                return;
            }
        }
        finally
        {
            s_17.F8.F1.F2 = (ushort)M2();
            s_17.F8 = s_17.F8;
        }

        short var1 = (short)Avx2.MoveMask((Vector256<sbyte>)Vector256.Create((sbyte)(sbyte)57, (sbyte)(sbyte)127, (sbyte)(sbyte)14, (sbyte)(sbyte)1, (sbyte)(sbyte)0, (sbyte)(sbyte)60, (sbyte)(sbyte)-101, (sbyte)(sbyte)127, (sbyte)(sbyte)-61, (sbyte)(sbyte)-128, (sbyte)(sbyte)2, (sbyte)(sbyte)-86, (sbyte)(sbyte)-128, (sbyte)(sbyte)1, (sbyte)(sbyte)-104, (sbyte)(sbyte)0, (sbyte)(sbyte)6, (sbyte)(sbyte)-1, (sbyte)(sbyte)-55, (sbyte)(sbyte)1, (sbyte)(sbyte)126, (sbyte)(sbyte)1, (sbyte)(sbyte)-84, (sbyte)(sbyte)-27, (sbyte)(sbyte)105, (sbyte)(sbyte)127, (sbyte)(sbyte)62, (sbyte)(sbyte)1, (sbyte)(sbyte)2, (sbyte)(sbyte)127, (sbyte)(sbyte)-10, (sbyte)(sbyte)0));
        for (int var2 = -101050; var2 < -101000; var2++)
        {
            ref S1[, ][][, ] var3 = ref s_22;
            byte var4 = (byte)Sse42.Crc32((uint)(uint)(-var3[0, 0][0][0, 0].F8.F0), (ushort)s_8.F2);
            long var5 = s_19.F2.F4;
        }

        if (s_8.F5)
        {
            {
                if (!!!((long)((byte)176 | s_22[0, 0][0][0, 0].F8.F1.F1--) > s_17.F8.F1.F3))
                {
                    var1 = var1;
                    {
                        s_22[0, 0][0][0, 0].F8.F1.F6 = -(-s_19.F2.F1++);
                    }

                    var1 ^= s_22[0, 0][0][0, 0].F8.F1.F7;
                    s_22[0, 0][0][0, 0] = new S1((ushort)0, (byte)0, false, 10, (ushort)57899, (short)0, true, 3685468063U, new C1(3214333986U, new S0(2L, 1642760077, (ushort)65534, 3728145215U, -10L, false, 2, (short)723, true), Vector128.CreateScalar((short)(short)-16917).AsVector(), (short)10, 78437081, 8323118832755393223L));
                    var1 = (short)-32768;
                    s_17.F8.F1 = new S0(-7063860644698716375L, 0, (ushort)65534, 1996848896U, 10L, true, 1980065366, (short)-32767, false);
                    Vector512<ulong> var6 = Avx512F.ShiftRightLogical((Vector512<ulong>)Vector512.Create<ulong>((ulong)6136354808227412711UL), (byte)(byte)68);
                }
                else
                {
                    s_14.F2.F7 = var1--;
                    var1 = (short)-19798;
                    s_17.F8 = new C1(4294967294U, new S0(-8973160804447464223L, -1572458528, (ushort)10, 4153032516U, -6351300487957554800L, true, 0, (short)-32767, false), Vector128.CreateScalar((short)(short)-12698).AsVector(), (short)-5957, -2147483648, -8614356266481776967L);
                    s_23 = new S1[]
                    {
                        new S1((ushort)53711, (byte)1, false, 1473655897, (ushort)28092, (short)32767, false, 3602313397U, new C1(3565438129U, new S0(6813582323047670521L, 1172553316, (ushort)0, 4294967294U, -1L, false, -1, (short)-6378, false), Vector.Create<short>((short)(short)-13248), (short)2, 1, -1396694470827572214L)),
                        new S1((ushort)30017, (byte)10, false, 1, (ushort)3525, (short)4216, false, 3629229011U, new C1(4163685029U, new S0(9223372036854775807L, -1, (ushort)10, 4097661994U, 5914665458608856985L, false, 0, (short)0, true), Vector.Create<short>((short)(short)32766), (short)10, 0, -9045063165812479061L)),
                        new S1((ushort)62766, (byte)0, true, -1, (ushort)1, (short)29412, false, 1U, new C1(1U, new S0(-10L, 0, (ushort)19405, 2123113412U, -9223372036854775808L, false, 1, (short)32767, false), Vector128.CreateScalar((short)(short)10).AsVector(), (short)-10, -712477901, -6019159571540554715L)),
                        new S1((ushort)30160, (byte)255, true, 2147483647, (ushort)64629, (short)32766, true, 2U, new C1(1U, new S0(-8577987350278643202L, 1329722983, (ushort)1, 4294967294U, 2L, false, -773887499, (short)20628, true), Vector128.CreateScalar((short)(short)-26879).AsVector(), (short)1, 1471717904, -10L)),
                        new S1((ushort)65534, (byte)48, true, 1, (ushort)20943, (short)1, true, 4294967294U, new C1(4294967294U, new S0(-9223372036854775808L, -1539339932, (ushort)31597, 0U, 9223372036854775806L, false, 1549471419, (short)-27337, false), Vector.Create<short>((short)(short)0), (short)-32767, 1505400806, 254700237502364617L)),
                        new S1((ushort)1, (byte)255, true, 1, (ushort)40945, (short)-26298, false, 3010070705U, new C1(3525853573U, new S0(1L, -2053825026, (ushort)40095, 748282220U, -769408775162339257L, true, -2140258332, (short)14833, true), Vector.Create<short>((short)(short)-21748), (short)647, -2, -10L)),
                        new S1((ushort)65535, (byte)1, true, -2147483648, (ushort)23897, (short)1, true, 0U, new C1(1U, new S0(9223372036854775806L, -606270587, (ushort)45337, 2619294522U, 5850940676464626428L, true, -1177587697, (short)22774, false), Vector128.CreateScalar((short)(short)-21230).AsVector(), (short)1, 1239364599, 0L))
                    };
                    if (s_19.F5.F8)
                    {
                        M4(Vector.Create<byte>((byte)(byte)Sse41.Extract((Vector128<int>)Vector128.CreateScalar((int)2147483647), (byte)(byte)16)));
                    }
                }

                try
                {
                    new C0(false, Vector256.Create<sbyte>((sbyte)(sbyte)-55), new S0(3898190010962515635L, 0, (ushort)47388, 3698914932U, 784671182438141375L, false, 2147483646, (short)1, false), 2U, 1, new S0(0L, 0, (ushort)21731, 3491855715U, -7767005198797803215L, false, 199112431, (short)-2946, false), 2624218337012229748L).M16(Vector512.Create<int>((int)s_23[0].F3--));
                }
                finally
                {
                    M11(ref s_22[0, 0][0][0, 0].F8, new S1((ushort)57902, (byte)14, true, -1, (ushort)19966, (short)15481, true, 1U, new C1(843169122U, new S0(-421037745048294011L, 0, (ushort)0, 1U, 5934754593568039520L, true, 1427489841, (short)32766, true), Vector.Create<short>((short)(short)-14753), (short)7197, 2015042135, 9223372036854775807L)), Vector512.CreateScalar((ulong)(ulong)(s_23[0].F7 + ((byte)1 ^ (-s_14.F6)))));
                }
            }

            Vector256<int> var7 = new S0(1L, -1787700895, (ushort)23505, 1U, 2L, false, 109221964, (short)-8839, true).M10(new Vector512<byte>[, ] { { Vector512.CreateScalar((byte)(byte)0), Vector512.CreateScalar((byte)(byte)241), Vector512.Create<byte>((byte)(byte)1), Vector512.CreateScalar((byte)(byte)255) }, { Vector512.Create<byte>((byte)(byte)130), Vector512.Create<byte>((byte)(byte)62), Vector512.Create((byte)(byte)156, (byte)(byte)90, (byte)(byte)2, (byte)(byte)1, (byte)(byte)57, (byte)(byte)1, (byte)(byte)26, (byte)(byte)1, (byte)(byte)58, (byte)(byte)86, (byte)(byte)195, (byte)(byte)1, (byte)(byte)1, (byte)(byte)1, (byte)(byte)1, (byte)(byte)0, (byte)(byte)0, (byte)(byte)36, (byte)(byte)70, (byte)(byte)92, (byte)(byte)94, (byte)(byte)255, (byte)(byte)2, (byte)(byte)217, (byte)(byte)66, (byte)(byte)125, (byte)(byte)158, (byte)(byte)36, (byte)(byte)33, (byte)(byte)0, (byte)(byte)0, (byte)(byte)255, (byte)(byte)255, (byte)(byte)254, (byte)(byte)254, (byte)(byte)143, (byte)(byte)89, (byte)(byte)1, (byte)(byte)0, (byte)(byte)45, (byte)(byte)198, (byte)(byte)254, (byte)(byte)224, (byte)(byte)88, (byte)(byte)40, (byte)(byte)20, (byte)(byte)254, (byte)(byte)28, (byte)(byte)0, (byte)(byte)255, (byte)(byte)0, (byte)(byte)0, (byte)(byte)254, (byte)(byte)220, (byte)(byte)21, (byte)(byte)1, (byte)(byte)255, (byte)(byte)193, (byte)(byte)1, (byte)(byte)170, (byte)(byte)59, (byte)(byte)254, (byte)(byte)10, (byte)(byte)200), Vector512.CreateScalar((byte)(byte)44) }, { Vector512.Create<byte>((byte)(byte)122), Vector512.Create((byte)(byte)255, (byte)(byte)0, (byte)(byte)1, (byte)(byte)0, (byte)(byte)152, (byte)(byte)0, (byte)(byte)165, (byte)(byte)19, (byte)(byte)1, (byte)(byte)250, (byte)(byte)60, (byte)(byte)0, (byte)(byte)254, (byte)(byte)219, (byte)(byte)254, (byte)(byte)1, (byte)(byte)0, (byte)(byte)0, (byte)(byte)194, (byte)(byte)163, (byte)(byte)230, (byte)(byte)201, (byte)(byte)1, (byte)(byte)255, (byte)(byte)0, (byte)(byte)30, (byte)(byte)201, (byte)(byte)254, (byte)(byte)254, (byte)(byte)10, (byte)(byte)0, (byte)(byte)202, (byte)(byte)2, (byte)(byte)56, (byte)(byte)1, (byte)(byte)2, (byte)(byte)94, (byte)(byte)81, (byte)(byte)122, (byte)(byte)0, (byte)(byte)2, (byte)(byte)97, (byte)(byte)0, (byte)(byte)1, (byte)(byte)1, (byte)(byte)1, (byte)(byte)1, (byte)(byte)184, (byte)(byte)1, (byte)(byte)179, (byte)(byte)178, (byte)(byte)0, (byte)(byte)240, (byte)(byte)255, (byte)(byte)0, (byte)(byte)1, (byte)(byte)1, (byte)(byte)224, (byte)(byte)254, (byte)(byte)9, (byte)(byte)125, (byte)(byte)0, (byte)(byte)0, (byte)(byte)153), Vector512.CreateScalar((byte)(byte)206), Vector512.Create<byte>((byte)(byte)55) }, { Vector512.CreateScalar((byte)(byte)1), Vector512.CreateScalar((byte)(byte)254), Vector512.Create<byte>((byte)(byte)255), Vector512.Create((byte)(byte)0, (byte)(byte)1, (byte)(byte)1, (byte)(byte)10, (byte)(byte)178, (byte)(byte)135, (byte)(byte)0, (byte)(byte)254, (byte)(byte)1, (byte)(byte)128, (byte)(byte)0, (byte)(byte)2, (byte)(byte)254, (byte)(byte)10, (byte)(byte)254, (byte)(byte)219, (byte)(byte)46, (byte)(byte)97, (byte)(byte)0, (byte)(byte)0, (byte)(byte)182, (byte)(byte)1, (byte)(byte)254, (byte)(byte)97, (byte)(byte)193, (byte)(byte)0, (byte)(byte)30, (byte)(byte)1, (byte)(byte)177, (byte)(byte)209, (byte)(byte)24, (byte)(byte)255, (byte)(byte)191, (byte)(byte)220, (byte)(byte)1, (byte)(byte)209, (byte)(byte)1, (byte)(byte)75, (byte)(byte)173, (byte)(byte)255, (byte)(byte)0, (byte)(byte)187, (byte)(byte)254, (byte)(byte)0, (byte)(byte)0, (byte)(byte)179, (byte)(byte)78, (byte)(byte)1, (byte)(byte)162, (byte)(byte)254, (byte)(byte)65, (byte)(byte)220, (byte)(byte)0, (byte)(byte)177, (byte)(byte)28, (byte)(byte)1, (byte)(byte)253, (byte)(byte)101, (byte)(byte)181, (byte)(byte)182, (byte)(byte)155, (byte)(byte)10, (byte)(byte)67, (byte)(byte)255) } }, (uint)((byte)(-4496251471626716079L / (ushort)((ushort)(+s_14.F2.F2++) | 1)) % (short)(var1 | 1)));
        }

        for (int var8 = -101050; var8 < -101000; var8++)
        {
            s_16[0, 0, 0] = (int)Bmi1.X64.ResetLowestSetBit((ulong)s_18--);
        }

        Avx512F.ExtractVector256((Vector512<int>)Vector512.Create<int>((int)(int)M12(new C2(2U, new S1((ushort)1, (byte)193, true, 2147483646, (ushort)56522, (short)32766, false, 3739904806U, new C1(4294967295U, new S0(3714593473326438046L, -424358164, (ushort)65535, 2982499306U, 1L, false, -2147483648, (short)-29293, false), Vector.Create<short>((short)(short)-20218), (short)-2, 1959692564, -4278154390137671554L)), Vector128.CreateScalar((uint)0U), 1U, (sbyte)3, 10U, (short)-9685), 9223372036854775806L)), (byte)(byte)223);
        s_24--;
    }

    public static uint M2()
    {
        s_2 = new S0(-7148433297411265345L, -2147483648, (ushort)47021, 0U, -659362885499248558L, false, -990748358, (short)1, true).M3(4294967295U, new S1((ushort)37363, (byte)1, false, -10, (ushort)65534, (short)5030, true, 0U, new C1(0U, new S0(9223372036854775807L, -2147483648, (ushort)65535, 0U, -2881034935379011590L, true, -674616876, (short)21663, false), Vector128.CreateScalar((short)(short)-12166).AsVector(), (short)-32768, 0, -9223372036854775808L)));
        Vector256<uint> var0 = Vector256.CreateScalar((uint)3703032732U);
        var0 = var0;
        if (s_3[0][0])
        {
            var0 = var0;
            new S0(-1L, 2074760797, (ushort)11178, 1U, 324029682198870492L, true, 0, (short)32767, false).M3((uint)(-s_2), new S1((ushort)54757, (byte)131, true, -2091261672, (ushort)20339, (short)-2, false, 1U, new C1(2396854766U, new S0(0L, -1058453121, (ushort)8829, 2545897777U, 0L, true, 1709852414, (short)1, false), Vector.Create<short>((short)(short)32767), (short)-31448, 1, 4281206838012810930L)));
        }

        Vector512<byte> var1 = Vector512.CreateScalar((byte)(byte)91);
        {
            if (Avx.TestNotZAndNotC((Vector256<ushort>)Vector256.CreateScalar((ushort)M4(M5(ref s_5, new S1((ushort)39155, (byte)0, true, -1844684937, (ushort)1, (short)-20233, false, 2412031333U, new C1(0U, new S0(-10L, -2147483648, (ushort)65535, 4294967295U, -10L, false, -1588237977, (short)-19885, true), Vector.Create<short>((short)(short)-10874), (short)22157, 1515711782, 2138580220325029845L)), new S1[] { new S1((ushort)40645, (byte)0, true, 0, (ushort)2, (short)-32767, false, 0U, new C1(1U, new S0(8339486520100485432L, -2147483648, (ushort)1, 1064090559U, 4110739846053790291L, false, 847015887, (short)-32768, true), Vector.Create<short>((short)(short)13984), (short)-10, 264372522, 8770652430063117442L)) }, (byte)21, ref s_6))), (Vector256<ushort>)Vector256.Create<ushort>((ushort)(ushort)12405)))
            {
                var1 = new S0(10L, 86662965, (ushort)1, 1U, 9065558984850036655L, true, 2147483646, (short)-32767, false).M6(ref s_6);
                Vector128<uint>[, ][][][] var2 = new Vector128<uint>[, ][][][]
                {
                    {
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)4294967295U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create((uint)1U, (uint)4294967294U, (uint)2408295831U, (uint)2078773789U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)1U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)2667676671U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)1U)
                                }
                            }
                        },
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)1841647527U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)2748685525U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)4294967294U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)2U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)294563447U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)2761359910U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)2527342527U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)2097072166U)
                                }
                            }
                        },
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)1U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)2100816745U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)930007937U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)1U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)2874504606U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)2U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)733215784U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)0U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)1U)
                                }
                            }
                        },
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)1514173038U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)1901010632U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)0U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)3973262440U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create((uint)2U, (uint)0U, (uint)2218226198U, (uint)1838326952U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)2368512193U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)4034400614U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)3500751244U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)3717099002U)
                                }
                            }
                        }
                    },
                    {
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.Create((uint)0U, (uint)1U, (uint)3760538731U, (uint)1U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)4294967294U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)0U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create((uint)0U, (uint)1642439984U, (uint)3969163509U, (uint)1554771358U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)1776419355U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)0U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)1U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create((uint)4294967295U, (uint)1758359332U, (uint)4294967295U, (uint)0U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)287892698U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)0U)
                                }
                            }
                        },
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)272529293U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)252472390U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)4294967295U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)498021094U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)408221860U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)3575437086U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)0U)
                                }
                            }
                        },
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)687184664U)
                                }
                            }
                        },
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)241680117U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)0U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)4294967295U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)2239930752U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create((uint)4294967295U, (uint)1U, (uint)1290161919U, (uint)4294967295U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)10U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)4294967295U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)448004611U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)1806052337U)
                                }
                            }
                        }
                    },
                    {
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)4294967294U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create((uint)436436313U, (uint)10U, (uint)4231279988U, (uint)2516619086U)
                                }
                            }
                        },
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)1U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)2208887756U)
                                }
                            }
                        },
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)2461188334U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)4294967294U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)4294967294U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)3263103242U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)1U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create((uint)1657397479U, (uint)2815114955U, (uint)2352621775U, (uint)0U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create((uint)1U, (uint)364981465U, (uint)2665933292U, (uint)1U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)1U)
                                }
                            }
                        },
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)3299582428U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)1U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)0U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create((uint)1U, (uint)1U, (uint)1U, (uint)651976819U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)3783179425U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)1276710586U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)2705998852U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)4294967294U)
                                }
                            }
                        }
                    },
                    {
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)3268868798U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)10U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)1165368712U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)2U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)3260318561U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create((uint)16552596U, (uint)1U, (uint)4072677491U, (uint)0U)
                                }
                            }
                        },
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)0U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)1555197945U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)3439766865U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)0U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create((uint)3025580616U, (uint)2514347937U, (uint)732237045U, (uint)21234055U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)1782927782U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)826563800U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)1U)
                                }
                            }
                        },
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.Create((uint)4294967294U, (uint)0U, (uint)2634041839U, (uint)3635574964U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create((uint)4294967295U, (uint)1U, (uint)1906298324U, (uint)10U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)1668186178U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)3524185057U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)4294967294U)
                                }
                            }
                        },
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)1510385640U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)3712386109U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)0U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)1073665953U)
                                }
                            }
                        }
                    },
                    {
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)2628404841U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create((uint)10U, (uint)4270214352U, (uint)1U, (uint)687561713U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)4294967294U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)821130769U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)677948266U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create((uint)0U, (uint)1561092368U, (uint)2836723580U, (uint)979390742U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)181924554U)
                                }
                            }
                        },
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)3947831984U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)0U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)4294967294U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)4294967295U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)817913003U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)4294967294U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)998280092U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)4049491187U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)1060654547U)
                                }
                            }
                        },
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)1U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)4294967294U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)3951724543U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)491901220U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)0U)
                                }
                            }
                        },
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.Create((uint)1U, (uint)1393613487U, (uint)1780234498U, (uint)58106046U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)1U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)2246670185U)
                                }
                            }
                        }
                    },
                    {
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)1U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)3207451834U)
                                }
                            }
                        },
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)1450458323U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)0U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)1694654692U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)628293620U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)1578340149U)
                                }
                            }
                        },
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.Create((uint)0U, (uint)4294967295U, (uint)0U, (uint)1716356390U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)1U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)4294967295U)
                                },
                                new Vector128<uint>[]
                                {
                                    Vector128.Create<uint>((uint)3693070781U)
                                }
                            }
                        },
                        new Vector128<uint>[][][]
                        {
                            new Vector128<uint>[][]
                            {
                                new Vector128<uint>[]
                                {
                                    Vector128.CreateScalar((uint)690380304U)
                                }
                            }
                        }
                    }
                };
                var2[0, 0] = var2[0, 0];
                var2[0, 0] = var2[0, 0];
                {
                    s_1 = Vector256.CreateScalar((sbyte)(sbyte)127);
                    int var3 = (int)(s_2 / (short)((short)((int)M4(Vector128.CreateScalar((byte)(byte)254).AsVector()) % (uint)(s_2++ | 1)) | 1));
                    Avx2.Subtract((Vector256<long>)Vector256.Create<long>((long)0L), (Vector256<long>)Avx512F.VL.CompareLessThanOrEqual((Vector256<long>)Vector256.Create<long>((long)Sse41.X64.Extract((Vector128<long>)Vector128.CreateScalar((long)0L), (byte)(byte)73)), (Vector256<long>)Vector256.CreateScalar((long)4840142419935947126L)));
                    new S0(5556458225203224284L, -2072704361, (ushort)0, 960055230U, 0L, true, -1208748932, (short)32746, false).M3(new S0(9223372036854775807L, 0, (ushort)1, 779983493U, 3578004657939659348L, true, 1, (short)-26333, false).M3(4294967295U, new S1((ushort)65534, (byte)60, true, 1, (ushort)0, (short)0, true, 2545235060U, new C1(4294967295U, new S0(0L, -1309604274, (ushort)1, 171636290U, -5812265581177000466L, true, -2, (short)1, false), Vector128.CreateScalar((short)(short)2).AsVector(), (short)27383, 0, -9223372036854775808L))), new S1((ushort)0, (byte)245, false, 0, (ushort)39671, (short)-32768, false, 1869071960U, new C1(1569752930U, new S0(1225195071477197742L, 0, (ushort)0, 4294967294U, -5596902114010182054L, true, -1490538184, (short)-32768, false), Vector128.CreateScalar((short)(short)32766).AsVector(), (short)-32767, -202658593, -6832499983203055782L)));
                    bool[][][] var4 = new bool[][][]
                    {
                        new bool[][]
                        {
                            new bool[]
                            {
                                true,
                                true,
                                false
                            },
                            new bool[]
                            {
                                false,
                                true,
                                false,
                                true
                            },
                            new bool[]
                            {
                                false,
                                false,
                                true,
                                false,
                                true
                            },
                            new bool[]
                            {
                                true,
                                false,
                                false
                            },
                            new bool[]
                            {
                                true,
                                true,
                                true
                            },
                            new bool[]
                            {
                                false,
                                false,
                                true,
                                false,
                                true
                            },
                            new bool[]
                            {
                                false,
                                false
                            },
                            new bool[]
                            {
                                false,
                                false,
                                false,
                                false
                            },
                            new bool[]
                            {
                                false,
                                true,
                                false,
                                false,
                                true
                            }
                        },
                        new bool[][]
                        {
                            new bool[]
                            {
                                true,
                                true
                            },
                            new bool[]
                            {
                                false
                            },
                            new bool[]
                            {
                                false,
                                true
                            },
                            new bool[]
                            {
                                false,
                                false
                            }
                        },
                        new bool[][]
                        {
                            new bool[]
                            {
                                true,
                                false,
                                true,
                                true,
                                false
                            },
                            new bool[]
                            {
                                false,
                                true
                            },
                            new bool[]
                            {
                                false,
                                true,
                                false,
                                true,
                                false
                            },
                            new bool[]
                            {
                                true,
                                false,
                                false,
                                true,
                                false
                            },
                            new bool[]
                            {
                                false,
                                false
                            },
                            new bool[]
                            {
                                false,
                                false
                            },
                            new bool[]
                            {
                                true,
                                false,
                                false,
                                false
                            },
                            new bool[]
                            {
                                true,
                                true,
                                true,
                                false,
                                true
                            },
                            new bool[]
                            {
                                true,
                                false,
                                true,
                                true,
                                true
                            }
                        },
                        new bool[][]
                        {
                            new bool[]
                            {
                                false
                            },
                            new bool[]
                            {
                                false
                            },
                            new bool[]
                            {
                                false,
                                false,
                                true,
                                true
                            },
                            new bool[]
                            {
                                true
                            },
                            new bool[]
                            {
                                true,
                                false,
                                false,
                                false,
                                true
                            },
                            new bool[]
                            {
                                false,
                                false,
                                false
                            }
                        }
                    };
                    var3 = var3++;
                    var3 = 1636180253;
                    Avx512BW.SumAbsoluteDifferencesInBlock32((Vector512<byte>)var1, (Vector512<byte>)Vector512.CreateScalar((byte)(byte)0), (byte)(byte)140);
                    var2[0, 0][0][0] = var2[0, 0][0][0];
                    var1 = var1;
                    new S0(1L, 2147483647, (ushort)65535, 2727503310U, -10L, true, 2147483646, (short)10049, true).M6(ref s_6);
                    s_4[0] = new Vector512<short>[]
                    {
                        Vector512.CreateScalar((short)(short)-32767),
                        Vector512.CreateScalar((short)(short)17756),
                        Vector512.CreateScalar((short)(short)0),
                        Vector512.Create<short>((short)(short)0),
                        Vector512.Create<short>((short)(short)0),
                        Vector512.CreateScalar((short)(short)1)
                    };
                    var4 = var4;
                    if (-7624953935299828483L <= (ushort)new S0(-10L, 995681560, (ushort)65534, 0U, 7831994783602634569L, false, 0, (short)31731, false).M3(2020002388U, new S1((ushort)1, (byte)232, false, -1, (ushort)2, (short)180, true, 2484301894U, new C1(58090013U, new S0(-2359568337344154255L, 1867960086, (ushort)1, 2U, 2L, false, -2147483647, (short)-1, false), Vector128.CreateScalar((short)(short)-32768).AsVector(), (short)1, 0, -9223372036854775807L))))
                    {
                        if (var4[0][0][0])
                        {
                            if (var4[0][0][0])
                            {
                                int[] var5 = new int[]
                                {
                                    620125957,
                                    885032837,
                                    2,
                                    2109389981,
                                    277431219,
                                    1,
                                    -544941740,
                                    0,
                                    0,
                                    2
                                };
                                var4[0] = var4[0];
                                Vector128<int> var6 = Vector128.CreateScalar((int)1);
                            }

                            bool[] var7 = new bool[]
                            {
                                true,
                                true,
                                false,
                                false,
                                false,
                                true,
                                true,
                                false
                            };
                            var2[0, 0][0][0] = var2[0, 0][0][0];
                        }
                    }
                    else
                    {
                        ref Vector512<byte> var8 = ref var1;
                        s_3[0][0] = var4[0][0][0];
                    }

                    if (var4[0][0][0])
                    {
                        ref Vector128<ushort> var9 = ref s_7;
                        var2[0, 0][0] = var2[0, 0][0];
                        s_8 = new S0(8182631498719110163L, 1, (ushort)28601, 3138247396U, -9223372036854775808L, false, -1958635068, (short)-24265, false);
                        try
                        {
                            var2 = var2;
                            var9 = Vector128.CreateScalar((ushort)s_8.F2);
                            var4[0][0] = var4[0][0];
                            var3 /= (int)((int)s_8.M3(4294967295U, new S1(s_8.F2, (byte)3, var4[0][0][0], var3, (ushort)Bmi1.ExtractLowestSetBit((uint)s_2), s_8.F7, var4[0][0][0], 3524720070U, new C1(792032946U, new S0(-7981091641513461999L, -289320016, (ushort)25500, 1U, 3792428352534767134L, true, 555920823, (short)0, false), Vector.Create<short>((short)(short)30108), (short)-3836, 1730037513, -2449435974608065897L))) | 1);
                        }
                        finally
                        {
                            var3 = var3;
                            try
                            {
                                s_9 = s_9;
                            }
                            finally
                            {
                                var0 = var0;
                            }

                            s_3[0][0] = s_8.F5;
                            Vector512<uint>[][] var10 = new Vector512<uint>[][]
                            {
                                new Vector512<uint>[]
                                {
                                    Vector512.CreateScalar((uint)0U),
                                    Vector512.Create<uint>((uint)1879645593U),
                                    Vector512.CreateScalar((uint)303958285U),
                                    Vector512.Create<uint>((uint)488424289U),
                                    Vector512.Create<uint>((uint)0U),
                                    Vector512.Create<uint>((uint)1722894419U)
                                },
                                new Vector512<uint>[]
                                {
                                    Vector512.Create<uint>((uint)0U),
                                    Vector512.CreateScalar((uint)0U),
                                    Vector512.CreateScalar((uint)0U),
                                    Vector512.Create<uint>((uint)2U),
                                    Vector512.CreateScalar((uint)1495257757U),
                                    Vector512.CreateScalar((uint)2943472673U),
                                    Vector512.Create<uint>((uint)1517508013U),
                                    Vector512.Create<uint>((uint)0U),
                                    Vector512.CreateScalar((uint)3293845477U)
                                },
                                new Vector512<uint>[]
                                {
                                    Vector512.Create<uint>((uint)1852122040U),
                                    Vector512.Create<uint>((uint)1U),
                                    Vector512.CreateScalar((uint)0U),
                                    Vector512.Create<uint>((uint)2U),
                                    Vector512.CreateScalar((uint)2681932921U),
                                    Vector512.Create<uint>((uint)1166454768U),
                                    Vector512.Create<uint>((uint)4294967294U),
                                    Vector512.CreateScalar((uint)0U)
                                },
                                new Vector512<uint>[]
                                {
                                    Vector512.Create<uint>((uint)1U),
                                    Vector512.Create<uint>((uint)1U),
                                    Vector512.Create((uint)0U, (uint)2236777370U, (uint)2880839594U, (uint)3669849843U, (uint)1U, (uint)4177753183U, (uint)4294967294U, (uint)3980157722U, (uint)1108966492U, (uint)2372006492U, (uint)0U, (uint)1U, (uint)4148828989U, (uint)1694244964U, (uint)4294967295U, (uint)0U),
                                    Vector512.Create<uint>((uint)1684631521U)
                                },
                                new Vector512<uint>[]
                                {
                                    Vector512.CreateScalar((uint)4294967294U),
                                    Vector512.Create<uint>((uint)4294967295U),
                                    Vector512.Create<uint>((uint)1U),
                                    Vector512.CreateScalar((uint)3901376057U),
                                    Vector512.Create<uint>((uint)0U),
                                    Vector512.Create<uint>((uint)1286667825U),
                                    Vector512.Create<uint>((uint)584484995U),
                                    Vector512.Create<uint>((uint)2U),
                                    Vector512.CreateScalar((uint)2956084943U),
                                    Vector512.CreateScalar((uint)591794878U)
                                },
                                new Vector512<uint>[]
                                {
                                    Vector512.CreateScalar((uint)1U),
                                    Vector512.Create<uint>((uint)1089010424U),
                                    Vector512.CreateScalar((uint)10U),
                                    Vector512.Create<uint>((uint)184083323U),
                                    Vector512.Create((uint)1657919683U, (uint)1012305246U, (uint)1U, (uint)4294967295U, (uint)0U, (uint)3110656004U, (uint)0U, (uint)4294967294U, (uint)4294967294U, (uint)2476120182U, (uint)4294967295U, (uint)1581387184U, (uint)2223027187U, (uint)0U, (uint)2U, (uint)2057424123U),
                                    Vector512.CreateScalar((uint)4294967295U),
                                    Vector512.CreateScalar((uint)4294967294U)
                                },
                                new Vector512<uint>[]
                                {
                                    Vector512.Create<uint>((uint)3834255485U),
                                    Vector512.Create<uint>((uint)4166511853U),
                                    Vector512.CreateScalar((uint)1191592780U)
                                },
                                new Vector512<uint>[]
                                {
                                    Vector512.Create<uint>((uint)4294967294U),
                                    Vector512.Create<uint>((uint)4152752713U),
                                    Vector512.CreateScalar((uint)3369319136U),
                                    Vector512.Create((uint)1U, (uint)1U, (uint)3642144122U, (uint)1U, (uint)4294967294U, (uint)4294967295U, (uint)0U, (uint)769571785U, (uint)1U, (uint)1U, (uint)0U, (uint)1U, (uint)1U, (uint)1475656151U, (uint)0U, (uint)1U),
                                    Vector512.Create<uint>((uint)1U),
                                    Vector512.Create<uint>((uint)4294967294U)
                                }
                            };
                        }

                        Vector128<uint>[] var11 = var2[0, 0][0][0];
                        new S0(-864066010042521250L, -375808603, (ushort)38839, 1305148308U, 9223372036854775806L, false, 2147483646, (short)32767, true).M3(s_8.F3, new S1((ushort)1, (byte)1, false, 2, (ushort)14593, (short)-19828, true, 410493410U, new C1(1959591041U, new S0(-9223372036854775807L, 1575780402, (ushort)29452, 4115348464U, 9223372036854775807L, true, 448055396, (short)-12433, false), Vector.Create<short>((short)(short)32766), (short)-32767, -2147483647, -10L)));
                        return s_8.F3++;
                    }

                    var4 = new bool[][][]
                    {
                        new bool[][]
                        {
                            new bool[]
                            {
                                false,
                                false,
                                false
                            },
                            new bool[]
                            {
                                true,
                                false
                            },
                            new bool[]
                            {
                                true,
                                false,
                                false
                            }
                        },
                        new bool[][]
                        {
                            new bool[]
                            {
                                true
                            },
                            new bool[]
                            {
                                true
                            }
                        },
                        new bool[][]
                        {
                            new bool[]
                            {
                                true
                            },
                            new bool[]
                            {
                                true,
                                true
                            },
                            new bool[]
                            {
                                true,
                                false
                            }
                        }
                    };
                    var4[0][0] = var4[0][0];
                    s_3[0][0] = s_8.F8;
                }

            }
            else
            {
                if (!(new C1(3162929919U, new S0(8743874668408515112L, 614413842, (ushort)62720, 1372087080U, 7803737453452551812L, false, -2147483648, (short)-32767, false), Vector128.CreateScalar((short)(short)0).AsVector(), (short)-1790, -1671363213, -2L).M7(false) <= s_8.F4))
                {
                    s_8.M3(Bmi2.ParallelBitExtract((uint)new S0(-1986675236958631708L, -665222448, (ushort)0, 2U, -5210438598430974022L, true, 2047059282, (short)-30590, true).M3(2106807719U, new S1((ushort)31479, (byte)1, false, 10, (ushort)49632, (short)14931, true, 1875430480U, new C1(2U, new S0(2542374027600944527L, 1363005170, (ushort)10, 2389718336U, 8689966550803902458L, true, 1925739461, (short)10, true), Vector.Create<short>((short)(short)32767), (short)15357, -356864633, 4305925928349972129L))), (uint)(uint)new C1(3404285324U, new S0(7319151254761223064L, 2147483647, (ushort)65535, 209568100U, -9223372036854775808L, false, 1, (short)-14866, true), Vector.Create<short>((short)(short)2), (short)32766, -2, 0L).M7(Sse41.TestZ((Vector128<short>)Vector128.CreateScalar((short)(short)-26315), (Vector128<short>)Vector128.CreateScalar((short)(short)-13404)))), new S1((ushort)2, (byte)36, true, 10, (ushort)0, (short)-32768, true, 3449615172U, new C1(0U, new S0(-9223372036854775807L, -2147483647, (ushort)65535, 1780284474U, 0L, false, -2, (short)10, false), Vector128.CreateScalar((short)(short)15905).AsVector(), (short)-446, -2147483648, 1L)));
                    var1 = Vector512.Create<byte>((byte)(byte)98);
                    short var12 = (short)13598;
                    var12 = (short)s_8.M3(s_8.F3--, new S1((ushort)10, (byte)240, true, 1797359645, (ushort)1, (short)-8234, false, 4294967294U, new C1(1636425573U, new S0(1L, -447629318, (ushort)0, 3183055132U, -4059231611843269403L, false, 331739943, (short)-32767, false), Vector128.CreateScalar((short)(short)2).AsVector(), (short)-19265, 730733197, 763845338007596998L)));
                    Avx512BW.ShiftLeftLogical128BitLane((Vector512<sbyte>)Vector512.CreateScalar((sbyte)s_9[0]++), (byte)(byte)166);
                }
            }
        }

        var1 = var1;
        var1 = Vector512.Create<byte>((byte)(byte)1);
        if (!s_8.F5)
        {
            var1 = Vector512.CreateScalar((byte)(byte)1);
        }
        else
        {
            var1 = Vector512.CreateScalar((byte)(byte)((short)29555 * (byte)s_8.M3(0U, new S1((ushort)0, (byte)183, true, 1774593351, (ushort)59672, (short)6280, false, 997749054U, new C1(1U, new S0(-5361544289840221936L, 1296874724, (ushort)27864, 2861048687U, 271716269208889012L, true, 650182649, (short)-29318, false), Vector.Create<short>((short)(short)32766), (short)0, 0, 4263351298919784062L)))));
        }

        for (int var13 = -101050; var13 < -101000; var13++)
        {
            var1 = var1;
            if (!(false && Avx.TestZ((Vector256<uint>)Vector256.Create<uint>((uint)3698375151U), (Vector256<uint>)var0)))
            {
                {
                    var1 = Vector512.CreateScalar((byte)(byte)255);
                }

                s_2 = 2186649251U;
            }

            new S0(3745898044117301677L, 2147483646, (ushort)64727, 0U, -1167315545032563783L, false, 0, (short)-32767, false).M3(1169404762U, new S1((ushort)31590, (byte)1, true, -2115339579, (ushort)8131, (short)0, true, 1U, new C1(4294967294U, new S0(-2138098688591537824L, -2147483647, (ushort)0, 4294967294U, -9223372036854775807L, true, 0, (short)2734, false), Vector.Create<short>((short)(short)-32768), (short)-7371, -25908688, -1915701850254284449L)));
            if (s_8.F8)
            {
                var0 = Vector256.CreateScalar((uint)0U);
                if (!M8())
                {
                    Vector256<ushort> var14 = M15(Vector128.CreateScalar((byte)(byte)0));
                }

                var0 = var0;
            }

            var0 = var0;
            try
            {
                short var15 = (short)5767;
            }
            finally
            {
                Vector512<ushort> var16 = Vector512.Create<ushort>((ushort)s_19.F5.F2);
                if (s_3[0][0])
                {
                    byte var17 = s_17.F1;
                }

                var1 = Avx512BW.ShiftLeftLogical128BitLane((Vector512<byte>)var1, (byte)(byte)208);
            }

            ref uint var18 = ref s_17.F8.F1.F3;
        }

        try
        {
            try
            {
                var1 = Vector512.CreateScalar((byte)(byte)Sse2.ConvertToInt32((Vector128<int>)Vector128.CreateScalar((int)0)));
            }
            finally
            {
                for (int var19 = -101050; var19 < -101000; var19++)
                {
                    s_8 = new S0(-7800622607672792009L, 1, (ushort)16426, 1741756099U, 1L, true, 0, (short)-30355, false);
                    var0 = Vector256.Create<uint>((uint)0U);
                    uint var20 = 0U;
                }

                var0 = new C0(true, Vector256.Create<sbyte>((sbyte)(sbyte)127), new S0(-3898363108192781494L, -1001421190, (ushort)2, 1U, 1L, false, -1333599971, (short)19131, true), 0U, 2, new S0(8548764415254922984L, -1294637386, (ushort)65535, 2127141284U, -7332752416015473099L, true, 10, (short)1, false), 6068660383359644537L).M16(Vector512.Create<int>((int)934642455));
                ref Vector128<short> var21 = ref s_21;
            }

            var1 = Avx512BW.AlignRight((Vector512<byte>)var1, (Vector512<byte>)var1, (byte)(byte)53);
        }
        finally
        {
            try
            {
                S0 var22 = new S0(1L, 2147483647, (ushort)63345, 1826639281U, 2470392340266945427L, false, -2147483648, (short)-19891, false);
            }
            finally
            {
                var1 = Vector512.Create<byte>((byte)s_17.F1);
                byte[] var23 = new byte[]
                {
                    (byte)1
                };
                {
                    ref Vector512<short> var24 = ref s_4[0][0];
                    if (s_9[0] >= s_14.F2.F3)
                    {
                        if (!(false || Sse41.TestNotZAndNotC((Vector128<ulong>)Vector128.Create<ulong>((ulong)s_18++), (Vector128<ulong>)Vector128.CreateScalar((ulong)6236793830536846338UL))))
                        {
                            uint var25 = (uint)(var23[0]-- | (ulong)s_17.F8.M7(false));
                            s_19.F5.F3 = new S0(7299230725467679143L, -2147483648, (ushort)56717, 4294967295U, 2L, false, 2147483646, (short)32767, true).M3(var25--, s_17);
                            var25 = (uint)(s_14.F6++ ^ (sbyte)1);
                            ref byte[] var26 = ref var23;
                        }

                        S0 var27 = new S0(-10L, 0, (ushort)1288, 10U, 0L, true, 0, (short)-2, false);
                    }

                }

            }

            if ((uint)Bmi1.X64.GetMaskUpToLowestSetBit((ulong)s_18++) > s_9[0]++)
            {
                {
                    s_4 = M17(new C0[][] { new C0[] { new C0(true, Vector256.Create((sbyte)(sbyte)-9, (sbyte)(sbyte)1, (sbyte)(sbyte)0, (sbyte)(sbyte)127, (sbyte)(sbyte)1, (sbyte)(sbyte)-127, (sbyte)(sbyte)-117, (sbyte)(sbyte)1, (sbyte)(sbyte)124, (sbyte)(sbyte)59, (sbyte)(sbyte)127, (sbyte)(sbyte)-127, (sbyte)(sbyte)1, (sbyte)(sbyte)-34, (sbyte)(sbyte)-12, (sbyte)(sbyte)126, (sbyte)(sbyte)-27, (sbyte)(sbyte)0, (sbyte)(sbyte)-1, (sbyte)(sbyte)-10, (sbyte)(sbyte)1, (sbyte)(sbyte)43, (sbyte)(sbyte)0, (sbyte)(sbyte)-59, (sbyte)(sbyte)-86, (sbyte)(sbyte)-73, (sbyte)(sbyte)70, (sbyte)(sbyte)127, (sbyte)(sbyte)10, (sbyte)(sbyte)-21, (sbyte)(sbyte)-50, (sbyte)(sbyte)0), new S0(-6141614490101283475L, 1, (ushort)12712, 4044004887U, -9223372036854775807L, false, -2013912364, (short)-20643, false), 1U, 0, new S0(2325089462913184005L, -2147483648, (ushort)28179, 1599509812U, -5077505002672369080L, false, -9771083, (short)-8816, true), 8309921133997390836L) } });
                }
            }

            Vector512<byte> var28 = var1;
        }

        return s_2++;
    }

    public static ushort M4(Vector<byte> arg0)
    {
        arg0 = arg0;
        ref Vector512<short>[][] var0 = ref s_4;
        return (ushort)0;
    }

    public static Vector<byte> M5(ref int arg0, S1 arg1, S1[] arg2, byte arg3, ref long arg4)
    {
        C1 var0 = new C1(0U, new S0(0L, 1, (ushort)65534, 1218164575U, 1L, false, -541155380, (short)-8305, true), Vector.Create<short>((short)(short)-15943), (short)-3311, -1875425150, 1060804998798674123L);
        arg1.F8.F1.F6 = arg1.F8.F4;
        return Vector128.CreateScalar((byte)(byte)254).AsVector();
    }

    public static bool M8()
    {
        Avx512Vbmi.MultiShift((Vector512<sbyte>)Avx512BW.Min((Vector512<sbyte>)Vector512.Create<sbyte>((sbyte)s_9[0]), (Vector512<sbyte>)Vector512.CreateScalar((sbyte)(sbyte)Sse2.ConvertToInt32((Vector128<int>)Avx512F.VL.RotateLeft((Vector128<int>)Vector128.CreateScalar((int)-2147483647), (byte)(byte)219)))), (Vector512<long>)Vector512.CreateScalar((long)2654014933058008848L));
        try
        {
            ref Vector256<short> var0 = ref s_11;
        }
        finally
        {
            s_9[0] = s_9[0]--;
            s_3 = new bool[][]
            {
                new bool[]
                {
                    true
                },
                new bool[]
                {
                    true
                },
                new bool[]
                {
                    false
                }
            };
            if (s_3[0][0])
            {
                s_3[0][0] = Sse41.TestC((Vector128<long>)Vector128.CreateScalar((long)-9223372036854775808L), (Vector128<long>)Sse41.BlendVariable((Vector128<long>)Vector128.CreateScalar((long)s_8.F4), (Vector128<long>)Vector128.Create<long>((long)s_8.F0), (Vector128<long>)Vector128.Create((long)s_6, (long)s_8.F0)));
                M9((ushort)0, new C0(true, Vector256.Create<sbyte>((sbyte)(sbyte)0), new S0(-2968017975180938610L, 585300278, (ushort)23720, 510253446U, 0L, false, 0, (short)7067, true), 1284180878U, 2, new S0(3146104405144261937L, -2, (ushort)0, 0U, 1L, false, -510151274, (short)-5357, true), -9223372036854775807L), ref s_17);
                for (int var1 = -101050; var1 < -101000; var1++)
                {
                    s_3[0][0] = s_14.F5.F8;
                    try
                    {
                        s_14.F2.F4 = s_17.F8.F1.F4++;
                    }
                    finally
                    {
                        s_17.F2 = true;
                        s_14.F0 = s_8.F5;
                    }

                }

                try
                {
                    s_8.F6 = -1098954951;
                }
                finally
                {
                    s_8.F0 = 1369869547366147695L;
                }

                s_17.F8 = new C1(3357528162U, new S0(-1068296245851073424L, 1, (ushort)65535, 4294967294U, 2572787031062234552L, true, 2147483647, (short)-29170, true), Vector.Create<short>((short)(short)(+(short)(-s_17.F5))), s_8.F7, M11(ref s_17.F8, new S1((ushort)0, (byte)0, false, -2147483648, (ushort)14483, (short)32766, false, 1U, new C1(10U, new S0(7639050716828490742L, 1770815321, (ushort)1, 1013226588U, 8789372404579249770L, true, 1, (short)2, true), Vector.Create<short>((short)(short)32767), (short)32767, -10, 9223372036854775807L)), Vector512.Create<ulong>((ulong)16695568436921114783UL)), 1L);
                M13();
                if (M9((ushort)1, new C0(true, Vector256.Create<sbyte>((sbyte)(sbyte)20), new S0(9223372036854775806L, 0, (ushort)56038, 4294967295U, -1006011149024435802L, false, 2, (short)26404, false), 4294967295U, 2, new S0(245868798473216544L, -2147483647, (ushort)65535, 1180347930U, 7883307192043241848L, true, 425898344, (short)-23908, true), 10L), ref s_17))
                {
                    s_14.F1 = Vector256.CreateScalar((sbyte)(sbyte)0);
                    M13();
                }

                for (int var2 = -101050; var2 < -101000; var2++)
                {
                    Vector512<long> var3 = Vector512.CreateScalar((long)-9223372036854775808L);
                    s_14.F5.F6 = -1430278918;
                    s_19 = new C0(false, Vector256.Create((sbyte)(sbyte)0, (sbyte)(sbyte)30, (sbyte)(sbyte)-128, (sbyte)(sbyte)0, (sbyte)(sbyte)1, (sbyte)(sbyte)63, (sbyte)(sbyte)-16, (sbyte)(sbyte)-120, (sbyte)(sbyte)-99, (sbyte)(sbyte)46, (sbyte)(sbyte)55, (sbyte)(sbyte)-1, (sbyte)(sbyte)-96, (sbyte)(sbyte)2, (sbyte)(sbyte)0, (sbyte)(sbyte)126, (sbyte)(sbyte)42, (sbyte)(sbyte)0, (sbyte)(sbyte)1, (sbyte)(sbyte)-78, (sbyte)(sbyte)-1, (sbyte)(sbyte)-41, (sbyte)(sbyte)113, (sbyte)(sbyte)61, (sbyte)(sbyte)1, (sbyte)(sbyte)115, (sbyte)(sbyte)126, (sbyte)(sbyte)-90, (sbyte)(sbyte)1, (sbyte)(sbyte)0, (sbyte)(sbyte)-2, (sbyte)(sbyte)-19), new S0(-525983303939091574L, -2147483647, (ushort)2172, 3792502090U, -3184458683898494359L, true, 337285522, (short)0, false), 4294967294U, 0, new S0(3950208406264166648L, 433022299, (ushort)34173, 854856643U, -9223372036854775807L, false, -2147483647, (short)-13889, true), 2L);
                    ushort var4 = (ushort)25221;
                    var4 = var4;
                    var3 = var3;
                    var4 = (ushort)60811;
                }
            }
        }

        M11(ref s_17.F8, new S1((ushort)Bmi1.BitFieldExtract((uint)4294967294U, (byte)(byte)(-(byte)Sse42.Crc32((uint)1U, (ushort)(ushort)Bmi1.BitFieldExtract((uint)s_2, (byte)s_17.F1, (byte)(byte)61))), (byte)s_17.F1), s_17.F1++, true, s_19.F2.F6--, (ushort)(s_8.F0++ & -7021117446657090807L), s_19.F5.F7--, true, 1U, s_17.F8), Vector512.CreateScalar((ulong)12849500791620933962UL));
        return false;
    }

    public static bool M9(ushort arg0, C0 arg1, ref S1 arg2)
    {
        ref Vector128<uint>[] var0 = ref s_12;
        {
            s_13 = s_8.F8;
            uint var1 = arg1.F5.F3++;
        }

        Avx2.ShiftRightArithmeticVariable((Vector128<int>)Vector128.Create<int>((int)arg1.F5.F6), (Vector128<uint>)s_12[0]);
        if (arg1.F2.F5)
        {
            ref C0 var2 = ref s_14;
            s_15 = arg2.F8.F3;
            Avx512F.VL.Shuffle2x128((Vector256<int>)Vector256.CreateScalar((int)-1), (Vector256<int>)new S0(1L, 2147483646, (ushort)39755, 0U, -2L, true, 2147483646, (short)13042, false).M10(new Vector512<byte>[, ] { { Vector512.Create<byte>((byte)(byte)218), Vector512.CreateScalar((byte)(byte)1) }, { Vector512.CreateScalar((byte)(byte)226), Vector512.CreateScalar((byte)(byte)0) }, { Vector512.Create<byte>((byte)(byte)35), Vector512.CreateScalar((byte)(byte)191) }, { Vector512.Create<byte>((byte)(byte)95), Vector512.CreateScalar((byte)(byte)77) }, { Vector512.Create<byte>((byte)(byte)255), Vector512.CreateScalar((byte)(byte)10) }, { Vector512.Create<byte>((byte)(byte)254), Vector512.CreateScalar((byte)(byte)120) }, { Vector512.CreateScalar((byte)(byte)79), Vector512.CreateScalar((byte)(byte)184) } }, arg1.F3--), (byte)(byte)107);
            arg1.F2.F4 = -arg1.F2.F4--;
        }
        else
        {
            if (arg1.F2.F8)
            {
                arg1.F2.F2 = arg1.F2.F2;
                arg2.F5 = arg1.F2.F7;
                s_14.F2.F1 = Avx2.MoveMask((Vector256<sbyte>)arg1.F1);
                arg1.F2.M10(new Vector512<byte>[, ] { { Vector512.Create<byte>((byte)(byte)255), Vector512.CreateScalar((byte)(byte)63), Vector512.CreateScalar((byte)(byte)210), Vector512.CreateScalar((byte)(byte)0), Vector512.CreateScalar((byte)(byte)0), Vector512.CreateScalar((byte)(byte)50), Vector512.Create((byte)(byte)254, (byte)(byte)0, (byte)(byte)0, (byte)(byte)18, (byte)(byte)0, (byte)(byte)59, (byte)(byte)24, (byte)(byte)6, (byte)(byte)218, (byte)(byte)0, (byte)(byte)8, (byte)(byte)110, (byte)(byte)1, (byte)(byte)0, (byte)(byte)254, (byte)(byte)0, (byte)(byte)0, (byte)(byte)0, (byte)(byte)216, (byte)(byte)0, (byte)(byte)109, (byte)(byte)1, (byte)(byte)253, (byte)(byte)254, (byte)(byte)175, (byte)(byte)1, (byte)(byte)138, (byte)(byte)0, (byte)(byte)255, (byte)(byte)232, (byte)(byte)73, (byte)(byte)1, (byte)(byte)14, (byte)(byte)255, (byte)(byte)254, (byte)(byte)1, (byte)(byte)0, (byte)(byte)64, (byte)(byte)107, (byte)(byte)161, (byte)(byte)1, (byte)(byte)141, (byte)(byte)1, (byte)(byte)122, (byte)(byte)0, (byte)(byte)0, (byte)(byte)1, (byte)(byte)0, (byte)(byte)254, (byte)(byte)19, (byte)(byte)232, (byte)(byte)85, (byte)(byte)1, (byte)(byte)160, (byte)(byte)1, (byte)(byte)1, (byte)(byte)205, (byte)(byte)160, (byte)(byte)43, (byte)(byte)252, (byte)(byte)18, (byte)(byte)254, (byte)(byte)139, (byte)(byte)10) }, { Vector512.Create<byte>((byte)(byte)131), Vector512.Create<byte>((byte)(byte)181), Vector512.CreateScalar((byte)(byte)93), Vector512.CreateScalar((byte)(byte)1), Vector512.Create<byte>((byte)(byte)143), Vector512.CreateScalar((byte)(byte)0), Vector512.Create<byte>((byte)(byte)2) }, { Vector512.CreateScalar((byte)(byte)254), Vector512.CreateScalar((byte)(byte)1), Vector512.Create<byte>((byte)(byte)43), Vector512.Create<byte>((byte)(byte)74), Vector512.Create<byte>((byte)(byte)197), Vector512.CreateScalar((byte)(byte)0), Vector512.Create<byte>((byte)(byte)0) }, { Vector512.CreateScalar((byte)(byte)246), Vector512.Create<byte>((byte)(byte)200), Vector512.Create((byte)(byte)172, (byte)(byte)10, (byte)(byte)1, (byte)(byte)255, (byte)(byte)123, (byte)(byte)0, (byte)(byte)254, (byte)(byte)255, (byte)(byte)120, (byte)(byte)230, (byte)(byte)1, (byte)(byte)201, (byte)(byte)1, (byte)(byte)255, (byte)(byte)250, (byte)(byte)1, (byte)(byte)105, (byte)(byte)0, (byte)(byte)0, (byte)(byte)2, (byte)(byte)0, (byte)(byte)254, (byte)(byte)10, (byte)(byte)15, (byte)(byte)114, (byte)(byte)109, (byte)(byte)0, (byte)(byte)151, (byte)(byte)254, (byte)(byte)25, (byte)(byte)175, (byte)(byte)127, (byte)(byte)80, (byte)(byte)122, (byte)(byte)10, (byte)(byte)67, (byte)(byte)255, (byte)(byte)0, (byte)(byte)134, (byte)(byte)179, (byte)(byte)0, (byte)(byte)1, (byte)(byte)16, (byte)(byte)190, (byte)(byte)141, (byte)(byte)255, (byte)(byte)254, (byte)(byte)254, (byte)(byte)177, (byte)(byte)0, (byte)(byte)0, (byte)(byte)254, (byte)(byte)2, (byte)(byte)0, (byte)(byte)0, (byte)(byte)177, (byte)(byte)152, (byte)(byte)196, (byte)(byte)28, (byte)(byte)220, (byte)(byte)1, (byte)(byte)57, (byte)(byte)0, (byte)(byte)4), Vector512.Create<byte>((byte)(byte)58), Vector512.Create<byte>((byte)(byte)107), Vector512.CreateScalar((byte)(byte)10), Vector512.CreateScalar((byte)(byte)209) }, { Vector512.CreateScalar((byte)(byte)255), Vector512.Create<byte>((byte)(byte)255), Vector512.Create<byte>((byte)(byte)0), Vector512.CreateScalar((byte)(byte)79), Vector512.CreateScalar((byte)(byte)1), Vector512.Create<byte>((byte)(byte)26), Vector512.CreateScalar((byte)(byte)255) }, { Vector512.CreateScalar((byte)(byte)254), Vector512.CreateScalar((byte)(byte)1), Vector512.CreateScalar((byte)(byte)1), Vector512.CreateScalar((byte)(byte)3), Vector512.CreateScalar((byte)(byte)254), Vector512.Create<byte>((byte)(byte)254), Vector512.CreateScalar((byte)(byte)192) } }, arg2.F8.F1.F3++);
                arg1.F5.F2 = s_14.F2.F2;
                Vector256<int>[] var3 = new Vector256<int>[]
                {
                    Vector256.CreateScalar((int)0),
                    Vector256.Create<int>((int)-1173160855),
                    Vector256.CreateScalar((int)-233675321),
                    Vector256.Create<int>((int)-2147483648)
                };
                arg2.F8.F1.F6 = 1757727935;
            }

            ushort[][, ] var4 = new ushort[][, ]
            {
                new ushort[, ]
                {
                    {
                        (ushort)25431,
                        (ushort)1,
                        (ushort)0
                    },
                    {
                        (ushort)65535,
                        (ushort)41688,
                        (ushort)9396
                    },
                    {
                        (ushort)0,
                        (ushort)33545,
                        (ushort)65534
                    }
                },
                new ushort[, ]
                {
                    {
                        (ushort)43178,
                        (ushort)65534,
                        (ushort)0
                    },
                    {
                        (ushort)65534,
                        (ushort)11693,
                        (ushort)65535
                    },
                    {
                        (ushort)2,
                        (ushort)43575,
                        (ushort)1
                    },
                    {
                        (ushort)1,
                        (ushort)6971,
                        (ushort)53251
                    },
                    {
                        (ushort)26270,
                        (ushort)1,
                        (ushort)3999
                    }
                },
                new ushort[, ]
                {
                    {
                        (ushort)0,
                        (ushort)65241,
                        (ushort)0
                    },
                    {
                        (ushort)55363,
                        (ushort)1,
                        (ushort)0
                    }
                },
                new ushort[, ]
                {
                    {
                        (ushort)28313,
                        (ushort)31078,
                        (ushort)65351
                    }
                },
                new ushort[, ]
                {
                    {
                        (ushort)63358,
                        (ushort)65535,
                        (ushort)65534
                    },
                    {
                        (ushort)1,
                        (ushort)25956,
                        (ushort)1
                    },
                    {
                        (ushort)65535,
                        (ushort)38565,
                        (ushort)58540
                    }
                },
                new ushort[, ]
                {
                    {
                        (ushort)8285,
                        (ushort)65052,
                        (ushort)13824
                    },
                    {
                        (ushort)12292,
                        (ushort)65534,
                        (ushort)34548
                    },
                    {
                        (ushort)1,
                        (ushort)58122,
                        (ushort)30712
                    }
                },
                new ushort[, ]
                {
                    {
                        (ushort)12514,
                        (ushort)1,
                        (ushort)65535
                    }
                }
            };
            arg2.F0 = (ushort)26735;
            s_14.F2.M10(new Vector512<byte>[, ] { { Vector512.Create<byte>((byte)(byte)1), Vector512.Create<byte>((byte)(byte)80), Vector512.Create((byte)(byte)214, (byte)(byte)150, (byte)(byte)175, (byte)(byte)129, (byte)(byte)1, (byte)(byte)49, (byte)(byte)222, (byte)(byte)254, (byte)(byte)0, (byte)(byte)170, (byte)(byte)255, (byte)(byte)206, (byte)(byte)1, (byte)(byte)1, (byte)(byte)10, (byte)(byte)1, (byte)(byte)254, (byte)(byte)179, (byte)(byte)0, (byte)(byte)254, (byte)(byte)1, (byte)(byte)254, (byte)(byte)163, (byte)(byte)21, (byte)(byte)254, (byte)(byte)10, (byte)(byte)54, (byte)(byte)76, (byte)(byte)0, (byte)(byte)93, (byte)(byte)1, (byte)(byte)180, (byte)(byte)254, (byte)(byte)47, (byte)(byte)0, (byte)(byte)10, (byte)(byte)255, (byte)(byte)255, (byte)(byte)0, (byte)(byte)215, (byte)(byte)0, (byte)(byte)81, (byte)(byte)2, (byte)(byte)242, (byte)(byte)1, (byte)(byte)143, (byte)(byte)239, (byte)(byte)2, (byte)(byte)1, (byte)(byte)10, (byte)(byte)1, (byte)(byte)254, (byte)(byte)219, (byte)(byte)248, (byte)(byte)254, (byte)(byte)235, (byte)(byte)77, (byte)(byte)2, (byte)(byte)255, (byte)(byte)10, (byte)(byte)69, (byte)(byte)0, (byte)(byte)0, (byte)(byte)1), Vector512.CreateScalar((byte)(byte)2) }, { Vector512.Create<byte>((byte)(byte)0), Vector512.CreateScalar((byte)(byte)254), Vector512.CreateScalar((byte)(byte)88), Vector512.CreateScalar((byte)(byte)231) } }, s_8.F3);
        }

        try
        {
            s_14.F5.F2 = arg2.F4--;
        }
        finally
        {
            s_16 = new int[,, ]
            {
                {
                    {
                        1,
                        858225153,
                        0,
                        1,
                        237881810,
                        2147483646
                    },
                    {
                        2147483646,
                        -1724036842,
                        -705061162,
                        -1999165263,
                        2,
                        0
                    },
                    {
                        -2147483648,
                        -2147483647,
                        -509251667,
                        0,
                        -404980764,
                        0
                    },
                    {
                        2147483647,
                        0,
                        -2147483647,
                        1220698682,
                        2,
                        -2063451947
                    },
                    {
                        1648314560,
                        2147483646,
                        291833814,
                        -1650898531,
                        -1720552955,
                        -2147483648
                    },
                    {
                        -1824243281,
                        2147483647,
                        2147483647,
                        -1872546031,
                        163805499,
                        2
                    },
                    {
                        776231461,
                        0,
                        -2147483647,
                        2147483646,
                        -2147483648,
                        -2147483648
                    }
                },
                {
                    {
                        -1804434476,
                        -2147483648,
                        1349853118,
                        0,
                        -1830902085,
                        0
                    },
                    {
                        -1090892605,
                        2,
                        1,
                        0,
                        10,
                        0
                    },
                    {
                        1508399790,
                        -2147483648,
                        190151894,
                        1,
                        0,
                        -1452721054
                    },
                    {
                        -898886796,
                        -10,
                        -2147483647,
                        -564150026,
                        -1582559172,
                        1504983401
                    },
                    {
                        -1283526855,
                        2147483646,
                        -1639396908,
                        2147483647,
                        1,
                        -736222816
                    },
                    {
                        -887811030,
                        0,
                        -916756207,
                        -2,
                        1,
                        -1
                    },
                    {
                        -437666733,
                        2147483647,
                        -2147483648,
                        10,
                        -609750217,
                        1
                    }
                },
                {
                    {
                        1,
                        0,
                        -1442918253,
                        1,
                        -2061260186,
                        -1898853602
                    },
                    {
                        -2147483647,
                        -2147483647,
                        -934562740,
                        -1531229311,
                        2147483647,
                        -2147483647
                    },
                    {
                        2147483647,
                        2147483646,
                        -496855969,
                        1,
                        -1914605855,
                        -375908913
                    },
                    {
                        1905554412,
                        941972261,
                        -1,
                        1509933512,
                        -2147483648,
                        -867592078
                    },
                    {
                        930338627,
                        -797344845,
                        0,
                        1855877129,
                        -2147483647,
                        2147483646
                    },
                    {
                        157816077,
                        -1796908614,
                        1461690831,
                        1,
                        -1873338720,
                        1776778471
                    },
                    {
                        -1156797373,
                        -2147483648,
                        2147483647,
                        1,
                        1076769091,
                        1278720122
                    }
                }
            };
        }

        sbyte var5 = (sbyte)32;
        return s_14.F5.F4 > (byte)211;
    }

    public static int M11(ref C1 arg0, S1 arg1, Vector512<ulong> arg2)
    {
        for (int var0 = -101050; var0 < -101000; var0++)
        {
            Avx512F.VL.PermuteVar2x64x2((Vector128<ulong>)Vector128.CreateScalar((ulong)~(ulong)Bmi1.AndNot((uint)arg0.F1.F3, (uint)4294967294U)), (Vector128<ulong>)Vector128.CreateScalar((ulong)8002879007676411199UL), (Vector128<ulong>)Vector128.Create<ulong>((ulong)Bmi2.X64.ZeroHighBits((ulong)M12(new C2(420357044U, new S1((ushort)0, (byte)255, false, 10, (ushort)60155, (short)3367, true, 1119452463U, new C1(1U, new S0(7273626745664266580L, -948802575, (ushort)10, 0U, 0L, true, 0, (short)0, true), Vector.Create<short>((short)(short)11929), (short)-31003, 492047472, -10L)), Vector128.Create<uint>((uint)0U), 4294967295U, (sbyte)114, 2U, (short)1), 0L), (ulong)1UL)));
        }

        arg1.F8.F4 = 2147483647;
        Vector512<uint> var1 = Vector512.CreateScalar((uint)M14(ref arg0.F1.F2, s_9[0]));
        arg1.F8.F1.F4 = 6143222299957363787L;
        return s_17.F8.F1.F6;
    }

    public static ulong M12(C2 arg0, long arg1)
    {
        {
            {
                for (int var0 = -101050; var0 < -101000; var0++)
                {
                    ushort var1 = arg0.F1.F0--;
                    Avx512F.AndNot((Vector512<byte>)Vector512.Create<byte>((byte)(byte)10), (Vector512<byte>)Avx512BW.Abs((Vector512<sbyte>)Vector512.Create<sbyte>((sbyte)arg0.F4)));
                    arg0.F1.F7 = 0U;
                    try
                    {
                        arg0.F1.F8.F0 = 662751343U;
                        s_14.F2.F4 = arg0.F1.F8.F1.F0--;
                    }
                    finally
                    {
                        C2[] var2 = new C2[]
                        {
                            new C2(0U, new S1((ushort)9291, (byte)174, false, -472092460, (ushort)1, (short)-23812, true, 1448174080U, new C1(0U, new S0(1L, -1524813109, (ushort)10392, 1231573287U, -9223372036854775807L, false, -1065418273, (short)-2, false), Vector128.CreateScalar((short)(short)-9126).AsVector(), (short)-9495, -1, 9223372036854775806L)), Vector128.CreateScalar((uint)1U), 1U, (sbyte)-128, 1U, (short)1),
                            new C2(3944184570U, new S1((ushort)37627, (byte)11, true, 2147483646, (ushort)6080, (short)1, false, 4294967295U, new C1(289388108U, new S0(-1L, 1, (ushort)25225, 0U, -9223372036854775808L, false, 0, (short)4690, false), Vector.Create<short>((short)(short)0), (short)13753, 1870542121, 9223372036854775807L)), Vector128.CreateScalar((uint)0U), 4294967295U, (sbyte)126, 1746263356U, (short)32767),
                            new C2(2517782887U, new S1((ushort)65534, (byte)10, false, -1168676522, (ushort)10, (short)0, false, 4294967295U, new C1(4294967295U, new S0(-2L, 1, (ushort)20173, 4294967295U, 0L, true, 2147483647, (short)10, true), Vector.Create<short>((short)(short)0), (short)32767, 0, -3992768603768862794L)), Vector128.CreateScalar((uint)2109590020U), 3983231469U, (sbyte)9, 4008176804U, (short)15832),
                            new C2(2U, new S1((ushort)0, (byte)255, true, 0, (ushort)2, (short)-11320, false, 286755528U, new C1(3148604862U, new S0(-1847842069347521959L, 1, (ushort)0, 872445806U, -8594936064017716435L, false, 1953554267, (short)-7600, false), Vector.Create<short>((short)(short)32766), (short)21484, 0, 0L)), Vector128.Create<uint>((uint)0U), 0U, (sbyte)126, 0U, (short)0),
                            new C2(3304463255U, new S1((ushort)1, (byte)218, true, -1278890028, (ushort)0, (short)10057, true, 4007040402U, new C1(236242464U, new S0(2150929526068264860L, -483752477, (ushort)1, 2644304006U, 5629192364915346058L, false, 429780897, (short)21968, false), Vector128.CreateScalar((short)(short)0).AsVector(), (short)-19071, -1971111796, 0L)), Vector128.CreateScalar((uint)4255618910U), 1U, (sbyte)126, 3940845497U, (short)16558)
                        };
                    }

                }

                arg0.F1.F3 = arg0.F1.F8.F4--;
                Vector512<short> var3 = Vector512.Create<short>((short)arg0.F6);
                S0[][] var4 = M13();
                arg0.F1.F8.F1.F0 = 9223372036854775806L;
                s_17.F8.F1.F3 = 3178753022U;
                s_16[0, 0, 0] ^= var4[0][0].F1;
                M13();
                {
                    var4[0][0].F0 = -1L;
                    Sse41.MultiplyLow((Vector128<uint>)arg0.F2, (Vector128<uint>)arg0.F2);
                }

                s_8.F2 = arg0.F1.F0++;
                {
                    arg0.F1.F8.F2 = Vector128.CreateScalar((short)(short)-2).AsVector();
                    arg0.F1.F8.F2 = arg0.F1.F8.F2;
                    for (int var5 = -101050; var5 < -101000; var5++)
                    {
                        var4[0][0].F2 = (ushort)1;
                        if (s_17.F8.F1.F8)
                        {
                            var4[0][0] = s_8;
                            arg0.F5 = (uint)(arg0.F1.F8.F5++ * s_8.F2);
                        }

                        arg0.F1.F8.F1.F5 = Sse41.TestZ((Vector128<sbyte>)Vector128.CreateScalar((sbyte)(sbyte)-20), (Vector128<sbyte>)Vector128.Create<sbyte>((sbyte)(sbyte)-14));
                        C2 var6 = arg0;
                    }

                    arg0.F1.F6 = false;
                    s_17.F8.F5 = arg0.F1.F8.F5++;
                    if (arg0.F1.F8.F1.F5)
                    {
                        s_18 = s_18;
                        Vector<uint> var7 = Vector128.CreateScalar((uint)1U).AsVector();
                        arg0.F4 = arg0.F4;
                    }

                    ref C2 var8 = ref arg0;
                    s_14.F2.F5 ^= !Avx.TestZ((Vector256<sbyte>)Vector256.Create<sbyte>((sbyte)(sbyte)126), (Vector256<sbyte>)Vector256.CreateScalar((sbyte)(sbyte)0));
                    S0 var9 = s_14.F2;
                    var8.F1.F8.F1.F5 = arg0.F1.F6;
                    M13();
                    Sse42.X64.Crc32((ulong)1UL, (ulong)10956882289157750563UL);
                }

                arg0.F1.F8.F1.F0 = arg0.F1.F8.F5;
                arg0.F1.F8.F5 = arg0.F1.F8.F1.F4;
                {
                    M13();
                    arg0.F1 = new S1((ushort)1, (byte)221, false, 2147483647, (ushort)26186, (short)30703, false, 1036247198U, new C1(3324265478U, new S0(-9047991730837634252L, -1135923724, (ushort)1, 4294967294U, 0L, false, 1555048758, (short)-10, false), Vector.Create<short>((short)(short)-24074), (short)-25129, -488980104, 3749309165057065889L));
                    Vector256<sbyte> var10 = Vector256.CreateScalar((sbyte)(sbyte)0);
                }

                Vector512<long> var11 = Vector512.Create<long>((long)-(long)(arg0.F3 % (ushort)(arg0.F1.F8.F1.F2 | 1)));
            }
        }

        uint var12 = Bmi1.ExtractLowestSetBit((uint)arg0.F0);
        C0 var13 = new C0(false, Vector256.CreateScalar((sbyte)(sbyte)-128), new S0(9223372036854775807L, -2147483647, (ushort)25366, 3456932495U, 8257587457295534697L, false, 2, (short)10, false), 488875935U, 1, new S0(0L, -64392456, (ushort)65534, 849029001U, -9223372036854775808L, false, -2057396678, (short)-8729, true), 7900495992882833117L);
        arg0.F1.F8 = new C1(2394284286U, new S0(2595014033338645213L, 0, (ushort)0, 1122310766U, -6658182408659044755L, false, 1125712917, (short)-13517, true), Vector.Create<short>((short)(short)8119), (short)13794, 0, 9223372036854775807L);
        return s_18;
    }

    public static S0[][] M13()
    {
        {
            {
                for (int var0 = -101050; var0 < -101000; var0++)
                {
                    s_17.F3 = var0;
                }

                try
                {
                    s_17.F7 = s_17.F7--;
                }
                finally
                {
                    s_1 = Avx2.AndNot((Vector256<sbyte>)Vector256.CreateScalar((sbyte)(sbyte)-37), (Vector256<sbyte>)s_14.F1);
                    s_17.F3 = (int)(s_14.F2.F4 >> (ushort)1191);
                }
            }

            if (!!Avx.TestZ((Vector256<sbyte>)Avx512F.ExtractVector256((Vector512<sbyte>)Vector512.CreateScalar((sbyte)(sbyte)6), (byte)(byte)185), (Vector256<sbyte>)Vector256.Create((sbyte)(sbyte)1, (sbyte)(sbyte)126, (sbyte)(sbyte)0, (sbyte)(sbyte)-25, (sbyte)(sbyte)-128, (sbyte)(sbyte)1, (sbyte)(sbyte)10, (sbyte)(sbyte)112, (sbyte)(sbyte)59, (sbyte)(sbyte)90, (sbyte)(sbyte)47, (sbyte)(sbyte)15, (sbyte)(sbyte)-15, (sbyte)(sbyte)-13, (sbyte)(sbyte)2, (sbyte)(sbyte)62, (sbyte)(sbyte)84, (sbyte)(sbyte)127, (sbyte)(sbyte)-128, (sbyte)(sbyte)-59, (sbyte)(sbyte)-128, (sbyte)(sbyte)1, (sbyte)(sbyte)10, (sbyte)(sbyte)-127, (sbyte)(sbyte)-114, (sbyte)(sbyte)41, (sbyte)(sbyte)117, (sbyte)(sbyte)4, (sbyte)(sbyte)126, (sbyte)(sbyte)1, (sbyte)(sbyte)43, (sbyte)(sbyte)127)))
            {
                s_14 = new C0(false, Vector256.CreateScalar((sbyte)(sbyte)116), new S0(-2922848236542651621L, -1460100379, (ushort)5278, 1U, 9223372036854775807L, false, -1, (short)-32767, true), 4294967295U, 219335169, new S0(1L, 1, (ushort)25761, 241797710U, -1070471393558988351L, false, 1515449143, (short)27520, false), -9223372036854775808L);
            }
            else
            {
                s_8.F8 = false;
                s_11 = Avx2.Max((Vector256<short>)Vector256.CreateScalar((short)(short)-1), (Vector256<short>)Vector256.CreateScalar((short)(short)32767));
                s_8.F8 = (ushort)0 <= (uint)(-s_17.F8.F0++);
                S1 var1 = new S1((ushort)1, (byte)0, false, 10, (ushort)31293, (short)18825, true, 2345786617U, new C1(711426524U, new S0(1L, -1, (ushort)65535, 0U, -4166794097782179722L, true, 2147483646, (short)7789, true), Vector128.CreateScalar((short)(short)-32767).AsVector(), (short)-1233, -1, -1552319910999986347L));
                C2 var2 = new C2(1440932691U, new S1((ushort)27455, (byte)255, true, 1, (ushort)52991, (short)111, false, 3389772317U, new C1(3919958651U, new S0(-10L, -1, (ushort)1, 1U, -6644775001784128074L, true, 547296756, (short)17191, false), Vector.Create<short>((short)(short)32767), (short)-24091, 2147483647, -2710662015641437719L)), Vector128.CreateScalar((uint)0U), 0U, (sbyte)0, 2974603610U, (short)0);
            }

            s_17.F8 = new C1(3687745411U, new S0(-2518885681434223624L, 1996228460, (ushort)44737, 4294967295U, 9223372036854775807L, true, -2147483647, (short)-32505, false), Vector.Create<short>((short)(short)-28038), (short)0, 1660873839, 0L);
            s_17.F8.F2 = s_17.F8.F2;
            {
                {
                    s_12[0] = Vector128.Create<uint>((uint)0U);
                    s_8.F4 = (long)Bmi1.ResetLowestSetBit((uint)(uint)(-Bmi1.ResetLowestSetBit((uint)1U)));
                    int var3 = s_16[0, 0, 0]--;
                    s_2 = 2446373369U;
                }
            }

            Sse2.LoadFence();
        }

        return new S0[][]
        {
            new S0[]
            {
                new S0(-4320292869815630067L, 1, (ushort)8432, 3964709186U, 0L, true, 1, (short)13485, false)
            },
            new S0[]
            {
                new S0(924854239607273964L, 1209698037, (ushort)1, 3201196829U, -5550302910289749072L, true, -1557857369, (short)4052, false)
            },
            new S0[]
            {
                new S0(-6997194105864673671L, -2147483647, (ushort)1, 2U, -3030408553436221076L, false, 1693829656, (short)32766, false)
            },
            new S0[]
            {
                new S0(6455994095637387484L, 635990684, (ushort)13293, 3321325764U, 9223372036854775807L, true, 2083863525, (short)32736, true)
            },
            new S0[]
            {
                new S0(-9223372036854775808L, 865521356, (ushort)0, 2629529746U, 8723344683906980529L, false, -518584264, (short)29837, false)
            },
            new S0[]
            {
                new S0(-6300954418693048282L, -882244009, (ushort)11679, 3581732831U, 1L, true, -1733129990, (short)-6287, true)
            },
            new S0[]
            {
                new S0(9223372036854775806L, 2, (ushort)59671, 1442986112U, -2L, true, 2147483646, (short)-32768, false)
            }
        };
    }

    public static uint M14(ref ushort arg0, sbyte arg1)
    {
        arg0 = arg0;
        return 3607987069U;
    }

    public static Vector256<ushort> M15(Vector128<byte> arg0)
    {
        arg0 = arg0;
        ref Vector128<sbyte> var0 = ref s_20;
        return Vector256.CreateScalar((ushort)(ushort)((sbyte)Sse41.X64.Extract((Vector128<long>)Vector128.CreateScalar((long)-5688995996502768792L), (byte)(byte)251) % (ushort)((ushort)35174 | 1)));
    }

    public static Vector512<short>[][] M17(C0[][] arg0)
    {
        arg0[0][0].F1 = arg0[0][0].F1;
        return new Vector512<short>[][]
        {
            new Vector512<short>[]
            {
                Vector512.CreateScalar((short)(short)8934),
                Vector512.CreateScalar((short)(short)-1),
                Vector512.Create<short>((short)(short)-2),
                Vector512.Create<short>((short)(short)-20086)
            },
            new Vector512<short>[]
            {
                Vector512.Create<short>((short)(short)1),
                Vector512.Create((short)(short)1, (short)(short)24186, (short)(short)32093, (short)(short)1, (short)(short)12929, (short)(short)-27969, (short)(short)28166, (short)(short)-19825, (short)(short)-7665, (short)(short)1, (short)(short)32767, (short)(short)0, (short)(short)32767, (short)(short)-12924, (short)(short)19910, (short)(short)-17975, (short)(short)25459, (short)(short)-31465, (short)(short)32767, (short)(short)-10147, (short)(short)1, (short)(short)-26254, (short)(short)2833, (short)(short)1, (short)(short)19625, (short)(short)1, (short)(short)-32767, (short)(short)20868, (short)(short)1, (short)(short)0, (short)(short)32767, (short)(short)-30008)
            },
            new Vector512<short>[]
            {
                Vector512.Create<short>((short)(short)9204),
                Vector512.CreateScalar((short)(short)4655)
            },
            new Vector512<short>[]
            {
                Vector512.Create<short>((short)(short)0),
                Vector512.Create<short>((short)(short)32766),
                Vector512.CreateScalar((short)(short)1),
                Vector512.CreateScalar((short)(short)0)
            },
            new Vector512<short>[]
            {
                Vector512.CreateScalar((short)(short)-26246)
            },
            new Vector512<short>[]
            {
                Vector512.CreateScalar((short)(short)32767),
                Vector512.Create<short>((short)(short)32766),
                Vector512.CreateScalar((short)(short)3971)
            },
            new Vector512<short>[]
            {
                Vector512.CreateScalar((short)(short)-1),
                Vector512.Create<short>((short)(short)32766),
                Vector512.CreateScalar((short)(short)32766)
            },
            new Vector512<short>[]
            {
                Vector512.CreateScalar((short)(short)8492),
                Vector512.CreateScalar((short)(short)-9568),
                Vector512.CreateScalar((short)(short)12550)
            },
            new Vector512<short>[]
            {
                Vector512.CreateScalar((short)(short)18487)
            }
        };
    }
}

@AndyAyersMS
Copy link
Member

@BruceForstall thanks, this should help.

@AndyAyersMS
Copy link
Member

AndyAyersMS commented Apr 23, 2025

The latest repro is stack allocation related. We fail to properly retype a storeind in S0.M3.

I already had reworked this bit of code in my prototyping of general field-wise analysis, and picking up that change fixes the issue.

AndyAyersMS added a commit to AndyAyersMS/runtime that referenced this issue Apr 23, 2025
Retype GT_STOREIND based on the store address, not the store data, since
we need to know if we are retyping fields, and only know that when
propagating from the local that forms the store address.

Fixes dotnet#111922.
@AndyAyersMS
Copy link
Member

The latest repro is stack allocation related. We fail to properly retype a storeind in S0.M3.

I already had reworked this bit of code in my prototyping of general field-wise analysis, and picking up that change fixes the issue.

After looking at this some more, there is another problem -- for byref args the caller owns the GC reporting. So we can't retype the fields, and so we can't stack allocate any of the referents.

AndyAyersMS added a commit to AndyAyersMS/runtime that referenced this issue Apr 23, 2025
Two fixes:
* we can't retype gc struct params, as their GC info is reported by the caller.
Instead we must mark them as escaping.
* when retyping GT_STOREIND we should always use the stored data's new type

Fixes dotnet#111922.
@amanasifkhalid
Copy link
Member Author

This was hit again in #115734. CI link.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI blocking-clean-ci-optional Blocking optional rolling runs
Projects
None yet
6 participants